From eaeccd996396ae5bd3ced7a011aea1544ed88985 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 15 Jan 2026 19:08:26 +0100 Subject: [PATCH 01/32] chore: adjust installation.md --- docs/getting-started/installation.md | 39 +++++++++++++++++----------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index 6ca9e43..1268de5 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Install Anaphora with Docker or Docker Compose. Quick setup guide for automated Kibana and Grafana report generation. -keywords: [Anaphora installation, Docker setup, Kibana reporting tool, Grafana reporting tool, automated reports installation] +keywords: [ Anaphora installation, Docker setup, Kibana reporting tool, Grafana reporting tool, automated reports installation ] --- # Installation Guide @@ -11,7 +11,6 @@ Get Anaphora up and running in your environment. ## Requirements - Docker and Docker Compose (recommended) -- Or: Java 17+ runtime environment - Network access to your Kibana/Grafana instances ## Quick Start with Docker @@ -21,23 +20,27 @@ The fastest way to get started is using Docker: ```bash docker run -p 3000:3000 \ -e PUBLIC_URL=http://localhost:3000 \ - -e ADMIN_USERNAME=admin \ - -e ADMIN_PASSWORD=admin \ - -d beshu-tech/anaphora + -e DB_ENCRYPTION_KEY=your-encryption-key \ + -d beshultd/anaphora ``` Then open [http://localhost:3000](http://localhost:3000) in your browser and log in with `admin` / `admin`. ### Environment Variables -| Variable | Description | Example | -|----------|-------------|---------| -| `PUBLIC_URL` | External URL where Anaphora is accessible | `http://anaphora.example.com:3000` | -| `ADMIN_USERNAME` | Initial admin username | `admin` | -| `ADMIN_PASSWORD` | Initial admin password | `your-secure-password` | +| Variable | Description | Required | Example | +|---------------------|-------------------------------------------------|-------------|------------------------------------| +| `PUBLIC_URL` | External URL where Anaphora is accessible | Yes | `http://anaphora.example.com:3000` | +| `DB_ENCRYPTION_KEY` | Key used to encrypt the DB. | Recommended | `your-encryption-key` | +| `ADMIN_USERNAME` | Initial admin username | No | `admin` | +| `ADMIN_PASSWORD` | Initial admin password | No | `your-secure-password` | +| `ACTIVATION_KEY` | License / activation key for Anaphora | No | `xxxx-xxxx-xxxx-xxxx` | +| `DEBUG` | Enable debug logging | No | `false` | +| `WORKER_COUNT` | Number of concurrent Puppeteer worker instances | No | `2` | :::tip Production Deployment -For production, use a strong password and set `PUBLIC_URL` to your actual external URL (this is used for callback URLs in SSO configurations). +For production, use a strong `DB_ENCRYPTION_KEY` and set `PUBLIC_URL` to your actual external URL (this is used for +callback URLs in SSO configurations). ::: ### Docker Compose @@ -48,23 +51,29 @@ For production deployments, use Docker Compose with persistent storage: version: '3.8' services: anaphora: - image: beshu-tech/anaphora + image: beshultd/anaphora ports: - "3000:3000" volumes: - - anaphora-data:/data + - anaphora-storage:/usr/src/app/storage + - anaphora-content:/usr/src/app/content environment: - PUBLIC_URL=https://anaphora.example.com + - DB_ENCRYPTION_KEY=${DB_ENCRYPTION_KEY} - ADMIN_USERNAME=admin - ADMIN_PASSWORD=${ADMIN_PASSWORD} - ACTIVATION_KEY=${ACTIVATION_KEY} + - DEBUG=false + - WORKER_COUNT=2 volumes: - anaphora-data: + anaphora-storage: + anaphora-content: ``` :::tip 🎁 Get a Free Trial Key -The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it)** — instant activation, no credit card required. +The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it) +** — instant activation, no credit card required. ::: ## Need Help? From 943e02de874567c56d5698cc1c18ce48010b2ce6 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 15 Jan 2026 19:28:36 +0100 Subject: [PATCH 02/32] chore: adjust features.md --- docs/getting-started/features.md | 87 ++++++++++++++++++-------------- 1 file changed, 48 insertions(+), 39 deletions(-) diff --git a/docs/getting-started/features.md b/docs/getting-started/features.md index c119cc5..9b86fc7 100644 --- a/docs/getting-started/features.md +++ b/docs/getting-started/features.md @@ -1,12 +1,13 @@ --- sidebar_position: 3 description: Compare Anaphora Free, PRO, and Enterprise editions. See what's included in each tier and choose the right plan for your reporting needs. -keywords: [Anaphora features, free edition, pro license, enterprise edition, activation key, feature comparison, pricing tiers] +keywords: [ Anaphora features, free edition, pro license, enterprise edition, activation key, feature comparison, pricing tiers ] --- # Features & Editions -Choose the edition that fits your needs. All editions include the **full reporting engine** — higher tiers unlock team features and integrations. +Choose the edition that fits your needs. All editions include the **full reporting engine** — higher tiers unlock team +features and integrations. :::info 🚀 Ready to try PRO or Enterprise? **[Get a free trial key →](https://portal.anaphora.it)** — No credit card required. Instant activation. @@ -17,13 +18,16 @@ Choose the edition that fits your needs. All editions include the **full reporti **Perfect for evaluation and personal projects** :::tip What you get + - ✅ Up to **2 scheduled jobs** - ✅ Kibana, Grafana, and generic web capture - ✅ PDF report composer with custom layouts -- ✅ Email (SMTP), Mailgun, Slack, and Webhook delivery +- ✅ Email (SMTP) delivery - ✅ Notification throttling and retry policies - ✅ Local user authentication -::: +- ✅ **Self-Monitoring API** — health endpoints for external systems +- ✅ **AI Analysis** — LLM-powered summaries and anomaly detection + ::: **Best for:** Trying Anaphora, personal dashboards, small-scale reporting @@ -34,11 +38,12 @@ Choose the edition that fits your needs. All editions include the **full reporti **For production teams who need unlimited jobs and AI** :::tip Everything in Free, plus + - ✅ **Unlimited jobs** — no restrictions +- ✅ **Additional Delivery** - Mailgun, Slack, Webhook, and S3 - ✅ **Spaces** — organize jobs into isolated workspaces -- ✅ **AI Analysis** — LLM-powered summaries and anomaly detection - ✅ **Priority support** — faster response times -::: + ::: **Best for:** Production workloads, growing teams, AI-enhanced reports @@ -49,11 +54,11 @@ Choose the edition that fits your needs. All editions include the **full reporti **For organizations requiring SSO and compliance** :::tip Everything in PRO, plus + - ✅ **LDAP / Active Directory** — enterprise directory auth - ✅ **SAML SSO** — Okta, Azure AD, OneLogin, etc. - ✅ **OpenID Connect** — Google, Auth0, Keycloak, etc. -- ✅ **S3 Archiving** — compliance-ready report storage -- ✅ **Self-Monitoring API** — health endpoints for external systems + ::: **Best for:** Corporate SSO requirements, compliance, large-scale deployments @@ -62,36 +67,40 @@ Choose the edition that fits your needs. All editions include the **full reporti ## Feature Comparison -| Feature | 🆓 Free | ⭐ PRO | 🏢 Enterprise | -|---------|:-------:|:------:|:-------------:| -| **Jobs** | 2 | ∞ Unlimited | ∞ Unlimited | -| | | | | -| **Capture** | | | | -| Kibana Connector | ✅ | ✅ | ✅ | -| Grafana Connector | ✅ | ✅ | ✅ | -| Generic Web Capture | ✅ | ✅ | ✅ | -| PDF Composer | ✅ | ✅ | ✅ | -| | | | | -| **Delivery** | | | | -| Email (SMTP) | ✅ | ✅ | ✅ | -| Mailgun | ✅ | ✅ | ✅ | -| Slack | ✅ | ✅ | ✅ | -| Webhook | ✅ | ✅ | ✅ | -| S3 Archiving | ❌ | ❌ | ✅ | -| | | | | -| **Team & Organization** | | | | -| Spaces (Multi-tenancy) | ❌ | ✅ | ✅ | -| AI Analysis | ❌ | ✅ | ✅ | -| | | | | -| **Authentication** | | | | -| Local Users | ✅ | ✅ | ✅ | -| LDAP / Active Directory | ❌ | ❌ | ✅ | -| SAML SSO | ❌ | ❌ | ✅ | -| OpenID Connect | ❌ | ❌ | ✅ | -| | | | | -| **Operations** | | | | -| Self-Monitoring API | ❌ | ❌ | ✅ | -| Priority Support | ❌ | ✅ | ✅ | +| Feature | 🆓 Free | ⭐ PRO | 🏢 Enterprise | +|-------------------------|:-------:|:-----------:|:-------------:| +| **Jobs** | 2 | ∞ Unlimited | ∞ Unlimited | +| **Delivery Interfaces** | 2 | ∞ Unlimited | ∞ Unlimited | +| | | | | +| **Capture** | | | | +| Capture Actions | 3 | ∞ Unlimited | ∞ Unlimited | +| Kibana Connector | ✅ | ✅ | ✅ | +| Grafana Connector | ✅ | ✅ | ✅ | +| Generic Web Capture | ✅ | ✅ | ✅ | +| PDF Composer | ✅ | ✅ | ✅ | +| | | | | +| **Delivery** | | | | +| Email (SMTP) | ✅ | ✅ | ✅ | +| Mailgun | ❌ | ✅ | ✅ | +| Slack | ❌ | ✅ | ✅ | +| Webhook | ❌ | ✅ | ✅ | +| S3 Archiving | ❌ | ✅ | ✅ | +| | | | | +| **Team & Organization** | | | | +| AI Analysis | ✅ | ✅ | ✅ | +| Job Templates | ✅ | ✅ | ✅ | +| Advanced Job Templates | ❌ | ✅ | ✅ | +| Spaces (Multi-tenancy) | ❌ | ✅ | ✅ | +| | | | | +| **Authentication** | | | | +| Local Users | ✅ | ✅ | ✅ | +| LDAP / Active Directory | ❌ | ❌ | ✅ | +| SAML SSO | ❌ | ❌ | ✅ | +| OpenID Connect | ❌ | ❌ | ✅ | +| | | | | +| **Operations** | | | | +| Self-Monitoring API | ✅ | ✅ | ✅ | +| Priority Support | ❌ | ✅ | ✅ | ## Activation Keys @@ -131,7 +140,7 @@ docker run -p 3000:3000 \ - Instant delivery — no waiting - Full access to all features - No credit card required -::: + ::: ## Need Help? From c9c2f13465e9b01b4398d2c75d3ea28f5b207757 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Fri, 16 Jan 2026 14:06:39 +0100 Subject: [PATCH 03/32] chore: remove redundant env configuration. --- docs/getting-started/configuration.md | 46 ++++++--------------------- docs/getting-started/features.md | 2 ++ 2 files changed, 11 insertions(+), 37 deletions(-) diff --git a/docs/getting-started/configuration.md b/docs/getting-started/configuration.md index a35ba65..569c2b8 100644 --- a/docs/getting-started/configuration.md +++ b/docs/getting-started/configuration.md @@ -1,53 +1,25 @@ --- sidebar_position: 2 description: Configure Anaphora with environment variables for production deployments. PUBLIC_URL, admin credentials, and license setup. -keywords: [Anaphora configuration, environment variables, PUBLIC_URL, setup guide, production deployment] +keywords: [ Anaphora configuration, environment variables, PUBLIC_URL, setup guide, production deployment ] --- # Configuration Guide -Configure Anaphora for your environment and requirements. - -## Environment Variables - -Anaphora is configured via environment variables: - -| Variable | Description | Required | -|----------|-------------|----------| -| `PUBLIC_URL` | External URL where Anaphora is accessible | Yes (production) | -| `ADMIN_USERNAME` | Initial admin username | No (default: `admin`) | -| `ADMIN_PASSWORD` | Initial admin password | No (prompted on first login) | -| `ACTIVATION_KEY` | PRO/Enterprise activation key | No | -| `ANAPHORA_DATA_DIR` | Data storage path | No (default: `/data`) | - -### PUBLIC_URL - -The `PUBLIC_URL` environment variable defines the external URL where Anaphora is accessible. This is **required for production deployments** and used for: - -- SSO callback URLs (SAML, OIDC) -- Links in email notifications -- Webhook response URLs - -```bash -# Example: Production deployment -PUBLIC_URL=https://anaphora.company.com - -# Example: Local development (optional) -PUBLIC_URL=http://localhost:3000 -``` - -:::warning Required for SSO -If you're using SAML or OIDC authentication, `PUBLIC_URL` must be set correctly. The callback URLs registered with your identity provider must match this value. -::: +After installing Anaphora and setting it up with Environment variables, you can further configure it in the admin UI. ## Initial Setup On first launch: 1. Navigate to `PUBLIC_URL` in your browser -2. Log in with admin credentials (set via environment variables or prompted) -3. Configure your license if using PRO/Enterprise features -4. Create your first job +2. Create the initial admin user (if not set via env vars) +3. Log in with your admin credentials +4. Go to **Settings** → **System** to review and adjust global settings +5. Configure your license if using PRO/Enterprise features +6. Create your first job + + ## Next Steps diff --git a/docs/getting-started/features.md b/docs/getting-started/features.md index 9b86fc7..842a6cf 100644 --- a/docs/getting-started/features.md +++ b/docs/getting-started/features.md @@ -58,6 +58,7 @@ features and integrations. - ✅ **LDAP / Active Directory** — enterprise directory auth - ✅ **SAML SSO** — Okta, Azure AD, OneLogin, etc. - ✅ **OpenID Connect** — Google, Auth0, Keycloak, etc. +- ✅ **Branding** — Customization of login screen ::: @@ -91,6 +92,7 @@ features and integrations. | Job Templates | ✅ | ✅ | ✅ | | Advanced Job Templates | ❌ | ✅ | ✅ | | Spaces (Multi-tenancy) | ❌ | ✅ | ✅ | +| Branding | ❌ | ❌ | ✅ | | | | | | | **Authentication** | | | | | Local Users | ✅ | ✅ | ✅ | From 92fdd9bccd2442a536a1309eba7b8a8e1805f14f Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Fri, 16 Jan 2026 14:23:33 +0100 Subject: [PATCH 04/32] chore: adjust kibana dashboard example --- docs/basic-examples/kibana-dashboard-report.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/basic-examples/kibana-dashboard-report.md b/docs/basic-examples/kibana-dashboard-report.md index b7a7611..c649e53 100644 --- a/docs/basic-examples/kibana-dashboard-report.md +++ b/docs/basic-examples/kibana-dashboard-report.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Step-by-step tutorial to create a scheduled Kibana dashboard PDF report with email delivery in Anaphora. -keywords: [Kibana report tutorial, scheduled dashboard, PDF email, Anaphora example, dashboard automation] +keywords: [ Kibana report tutorial, scheduled dashboard, PDF email, Anaphora example, dashboard automation ] --- # Kibana Dashboard Report @@ -32,24 +32,24 @@ Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM ``` https://your-kibana.example.com/app/dashboards#/view/abc123 ``` -3. Choose authentication method (Basic or saved profile) +3. Choose authentication method: **ReadonlyREST** 4. Set time range: "Last 24 hours" ### 4. Configure Composition -1. Select a report template or use default -2. Preview the layout -3. Add header/footer if needed +1. Drag the captured dashboard snapshot into the layout +2. Add additional text blocks if needed +3. Adjust the layout for optimal viewing ### 5. Set Up Delivery -1. Select **Email** as delivery interface +1. Select **Email** as delivery interface (needs to be configured first in **Delivery Interfaces**) 2. Add recipient email addresses -3. Set subject line: `Daily Dashboard Report - {{date}}` +3. Set subject line: `Daily Dashboard Report` ### 6. Test and Save -1. Click **Test** to run the job immediately +1. Use the test to send a sample report to your email 2. Verify the email arrives correctly 3. **Save** the job From 52290882716136e58328b0db59b365435ece56c5 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Mon, 19 Jan 2026 15:41:13 +0100 Subject: [PATCH 05/32] chore: improve job general page --- docs/jobs/general.md | 121 +++++++++++++------------------------------ docs/jobs/index.md | 2 +- 2 files changed, 37 insertions(+), 86 deletions(-) diff --git a/docs/jobs/general.md b/docs/jobs/general.md index cfa93b3..7cae684 100644 --- a/docs/jobs/general.md +++ b/docs/jobs/general.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Configure job scheduling, notification throttling, retry policies, and data retention settings in Anaphora. -keywords: [job scheduling, CRON, notification throttling, retry policy, housekeeping, data retention] +keywords: [ job scheduling, CRON, notification throttling, retry policy, housekeeping, data retention ] --- # General Settings @@ -10,44 +10,38 @@ The General tab defines how often a job runs, how noisy it is allowed to be, and ## Configuration Fields -| Field | Description | Required | -|-------|-------------|----------| -| Name | Job identifier shown in lists and reports | Yes | -| Description | Notes about the job's purpose | No | -| Frequency | How often to run (simple or CRON) | Yes | -| Max Notify Frequency | Minimum time between notifications | No | -| Retry Policy | Behavior on capture failures | No | -| Housekeeping | Automatic cleanup of old runs/reports | No | +| Field | Description | Required | +|----------------------|-------------------------------------------|----------| +| Name | Job identifier shown in lists and reports | Yes | +| Description | Notes about the job's purpose | No | +| Frequency | How often to run (simple or CRON) | Yes | +| Max Notify Frequency | Minimum time between notifications | No | +| Retry Policy | Behavior on capture failures | No | +| Housekeeping | Automatic cleanup of old runs/reports | No | ## Scheduling ### Simple Frequency -Set how often the job should run using natural intervals: - -| Interval | Example Use Case | -|----------|------------------| -| Every X minutes | High-frequency alerting (5-10 min) | -| Every X hours | Regular status checks | -| Every X days | Daily reports | -| Every X weeks | Weekly summaries | +Set how often the job should run using natural intervals. ### Advanced (CRON) Toggle **Advanced** to use CRON expressions for precise scheduling: -| CRON Expression | Description | -|-----------------|-------------| -| `0 9 * * *` | Every day at 9:00 AM | -| `0 */2 * * *` | Every 2 hours | -| `0 9 * * 1-5` | Weekdays at 9:00 AM | -| `0 0 1 * *` | First day of every month | -| `*/10 * * * *` | Every 10 minutes | -| `0 9,17 * * *` | At 9:00 AM and 5:00 PM | +| CRON Expression | Description | +|-----------------|--------------------------| +| `0 9 * * *` | Every day at 9:00 AM | +| `0 */2 * * *` | Every 2 hours | +| `0 9 * * 1-5` | Weekdays at 9:00 AM | +| `0 0 1 * *` | First day of every month | +| `*/10 * * * *` | Every 10 minutes | +| `0 9,17 * * *` | At 9:00 AM and 5:00 PM | ## Notification Throttling -**Max Notify Frequency** controls the maximum notification rate regardless of how often the job runs. This is especially important for high-frequency alerting jobs. +**Max Notify Frequency** controls the maximum notification rate regardless of how often the job runs. This is especially +important for high-frequency alerting jobs. ### Why Throttling Matters @@ -78,81 +72,38 @@ flowchart TD ### Example Configuration -| Job Frequency | Throttling | Result | -|---------------|------------|--------| -| Every 5 minutes | 3 hours | Max 8 notifications/day | -| Every 10 minutes | 1 hour | Max 24 notifications/day | -| Every hour | 6 hours | Max 4 notifications/day | -| Daily | None | 1 notification/day | +| Job Frequency | Throttling | Result | +|------------------|------------|--------------------------| +| Every 5 minutes | 3 hours | Max 8 notifications/day | +| Every 10 minutes | 1 hour | Max 24 notifications/day | +| Every hour | 6 hours | Max 4 notifications/day | +| Daily | None | 1 notification/day | :::tip Alerting Pattern High-frequency sampling + throttling creates an alerting-style workflow: + - Job runs every 5 minutes to detect issues quickly - Throttling prevents notification fatigue - Recipients get timely alerts without spam -::: + ::: ## Retry Policy -Configure how Anaphora handles failed captures: - -| Setting | Description | -|---------|-------------| -| **Retry Count** | Number of retry attempts before giving up | -| **Retry Delay** | Wait time between retries | -| **Suspend on Failure** | Disable job after X consecutive failures | - -### Example: Resilient Configuration - -``` -Retry Count: 3 -Retry Delay: 30 seconds -Suspend After: 5 consecutive failures -``` - -This configuration: -1. Retries a failed capture up to 3 times -2. Waits 30 seconds between attempts -3. Suspends the job if 5 runs in a row fail (prevents endless failures) - -### Failure Notifications - -When failures occur: -- Admin receives notification based on retry/suspend settings -- Failed runs are logged with error details -- Job can be manually re-enabled after fixing issues +Enable retries to retry failed runs automatically after failures. +When enabled, set how many times the run should be retried before giving up. ## Housekeeping (Data Retention) -Control automatic deletion of old data to manage storage: - -| Setting | Description | Example | -|---------|-------------|---------| -| **Run History** | How long to keep execution logs | 30 days | -| **Reports** | How long to keep generated PDFs | 90 days | -| **Artifacts** | How long to keep captures/snapshots | 7 days | - -### Retention Strategies - -| Job Type | Recommended Retention | -|----------|----------------------| -| Alerting (high-frequency) | Short: 7-14 days | -| Daily reports | Medium: 30-60 days | -| Compliance reports | Long: 1+ year | -| Development/testing | Minimal: 1-7 days | +Enable run expire time to automatically delete old runs and reports after a specified period. +This helps manage storage usage over time. :::warning Storage Impact High-frequency jobs generate more data. Without housekeeping: + - 10-minute job = 144 runs/day = 4,320 runs/month - Each run may include snapshots and reports - Storage can grow rapidly without retention limits -::: - -### Per-Job vs Global Housekeeping - -- **Per-Job**: Configure in the General tab for job-specific retention -- **Global**: Set system-wide defaults in Administration settings -- Per-job settings override global defaults + ::: ## Best Practices @@ -170,7 +121,7 @@ Housekeeping: 90 days ```yaml Frequency: Every 5-10 minutes Throttling: 1-3 hours (balance speed vs. noise) -Retry: 2 attempts (fail fast) +Retry: Job runs often enough; retries usually not needed Housekeeping: 14 days (less storage needed) ``` @@ -180,7 +131,7 @@ Housekeeping: 14 days (less storage needed) Frequency: Weekly or monthly Throttling: None Retry: 5 attempts (ensure success) -Housekeeping: 365+ days (or use S3 archiving) +Housekeeping: Never ``` ## Next Steps diff --git a/docs/jobs/index.md b/docs/jobs/index.md index 0295eca..5cebfa2 100644 --- a/docs/jobs/index.md +++ b/docs/jobs/index.md @@ -84,7 +84,7 @@ Capture Dashboard -> Send to AI -> Receive Analysis -> Include in Report - **Visual Analysis** - Pass screenshots to AI models to evaluate dashboard content - **Text Summaries** - AI generates human-readable summaries of complex data - **Anomaly Detection** - AI identifies unusual patterns or concerning trends -- **DeepSeek Compatible** - Works with any AI provider using the DeepSeek API format +- **OpenAI Compatible** - Works with any AI provider using the OpenAI API format ## Visual Composer From 4793a434a6c8870f32e4b0e44ca5363892c77253 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Mon, 19 Jan 2026 16:06:38 +0100 Subject: [PATCH 06/32] chore: improve capture page --- docs/jobs/capture.md | 123 +++++++++++++++++++------------------------ 1 file changed, 54 insertions(+), 69 deletions(-) diff --git a/docs/jobs/capture.md b/docs/jobs/capture.md index 549c191..1f4827e 100644 --- a/docs/jobs/capture.md +++ b/docs/jobs/capture.md @@ -1,29 +1,31 @@ --- sidebar_position: 2 description: Configure Anaphora capture settings - Kibana, Grafana, and generic web connectors with authentication and advanced multi-step workflows. -keywords: [Kibana capture, Grafana capture, headless browser, web scraping, dashboard capture, authentication] +keywords: [ Kibana capture, Grafana capture, headless browser, web scraping, dashboard capture, authentication ] --- # Capture Configuration -The Capture tab defines what data to collect and how. Anaphora's headless Chrome-based connector can navigate, authenticate, and capture any web application. +The Capture tab defines what data to collect and how. Anaphora's headless Chrome-based connector can navigate, +authenticate, and capture any web application. ## Capture Modes ### Basic Mode Simple single-URL capture: + 1. Select a connector (Kibana, Grafana, Generic URL) 2. Enter the URL -3. Configure authentication -4. Set time range (for dashboards) -5. Capture +3. Configure authentication (if needed) +4. Capture Best for: Quick dashboard snapshots, simple reports. ### Advanced Mode Multi-step browser automation: + 1. Chain multiple navigation and capture actions 2. Extract data into variables 3. Evaluate conditions @@ -35,19 +37,20 @@ Toggle **Advanced** to switch modes. ### Kibana Connector -When you paste a Kibana URL, Anaphora automatically recognizes it and provides Kibana-specific options. +Use the Kibana connector to use Anaphora's built-in support for Kibana pages. **Supported Page Types:** + - Dashboards - Canvas workpads - Discover views +**Authentication:** +Login to Kibana using the ReadonlyREST login access. + **Time Range Configuration:** -| Option | Description | -|--------|-------------| -| Absolute | Specific date/time range | -| Relative | "Last 24 hours", "Last 7 days", etc. | -| Dashboard default | Use time range saved in dashboard | +Either set the time range in the Kibana UI before copying the URL, or set it in Anaphora using a similar syntax to +Kibana's time picker. **Capture Options:** | Mode | Description | @@ -56,48 +59,36 @@ When you paste a Kibana URL, Anaphora automatically recognizes it and provides K | **Per visualization** | Separate snapshot for each panel | :::tip Per-Visualization Capture -Capturing each visualization separately gives you more control in the Composer — arrange panels in custom layouts, exclude certain visualizations, or combine with other content. +Capturing each visualization separately gives you more control in the Composer — arrange panels in custom layouts, +exclude certain visualizations, or combine with other content. ::: -**Authentication Methods:** - -| Method | Description | -|--------|-------------| -| None | Public dashboards | -| ReadonlyREST login | Username/password with ReadonlyREST | -| Enterprise login | SSO with tenancy support | -| API key | For headless access | - ### Grafana Connector -Captures Grafana dashboards via the Grafana API. +Use the Grafana connector to use Anaphora's built-in support for Grafana pages. -**Configuration:** -| Field | Description | -|-------|-------------| -| URL | Grafana dashboard URL | -| API Key | Service account token | -| Time Range | Override dashboard time settings | -| Kiosk Mode | Cleaner capture without UI chrome | +**Authentication:** +Login with a Grafana user. Works for Grafana Cloud and self-hosted Grafana instances. **Capture Options:** + - Full dashboard capture - Panel-level capture (similar to Kibana per-visualization) ### Generic Web Connector -For any authenticated web application — if a human can reach it, Anaphora can capture it. +For any web page — if a human can reach it, Anaphora can capture it. **Use Cases:** + - Internal tools and dashboards - SaaS applications - Custom web applications -- Pages requiring complex login flows **Authentication:** -- Form-based login (username/password) -- SSO redirect flows -- Multi-factor authentication (with manual setup) + +- Natively supports Basic Auth headers +- Use Advanced mode to script login flows ## Advanced Capture Workflows @@ -107,36 +98,36 @@ Advanced mode enables multi-step browser automation for complex scenarios. ```mermaid flowchart LR - A["Navigate to URL"] --> B["Authenticate (if needed)"] + A["Navigate to URL"]] B --> C["Interact (click, type)"] C --> D["Capture (snapshot to var)"] ``` ### Browser Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Navigate** | Go to a URL | Open dashboard | -| **Click** | Click an element | Expand menu, select filter | -| **Type** | Enter text | Search box, form field | +| Action | Description | Example | +|----------------------|------------------|----------------------------| +| **Navigate** | Go to a URL | Open dashboard | +| **Click** | Click an element | Expand menu, select filter | +| **Type** | Enter text | Search box, form field | | **Wait for visible** | Wait for element | Dashboard loading complete | -| **Wait** | Pause execution | Allow animations to finish | -| **Reload** | Refresh page | Clear cached state | +| **Wait** | Pause execution | Allow animations to finish | +| **Reload** | Refresh page | Clear cached state | ### Data Extraction Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Capture value** | Extract text into variable | Error count, status text | -| **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | -| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | +| Action | Description | Example | +|----------------------|--------------------------------|--------------------------| +| **Capture value** | Extract text into variable | Error count, status text | +| **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | +| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | ### Control Flow Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Conditional block** | If/else logic | Only notify if errors > 0 | -| **Break** | Stop without sending | Skip report if threshold not met | +| Action | Description | Example | +|-----------------------|----------------------|----------------------------------| +| **Conditional block** | If/else logic | Only notify if errors > 0 | +| **Break** | Stop without sending | Skip report if threshold not met | ### Example: Multi-Source Report @@ -161,13 +152,11 @@ Only send notification when error threshold is exceeded: ``` 1. Navigate → Error Dashboard -2. Capture value → $error_count (from error counter element) -3. Calculate → $threshold = 100 -4. Conditional block: - - If $error_count > $threshold: - - Capture snapshot → $alert_screenshot - - Else: +2. Capture value → error_count (from error counter element) +3. Conditional block: + - If error_count < 100: - Break (no notification sent) +4. Capture snapshot → error_dashboard ``` ## Authentication Best Practices @@ -175,20 +164,14 @@ Only send notification when error threshold is exceeded: ### Service Accounts For production jobs: + - Create dedicated service accounts with read-only access -- Use API keys where available (more stable than login flows) - Store credentials securely in Anaphora's encrypted database -### Handling SSO - -For complex SSO flows: -1. Use Advanced mode to manually navigate the login process -2. Add Wait actions between authentication steps -3. Test thoroughly — SSO flows can be timing-sensitive - ### Kibana with ReadonlyREST Anaphora has first-class support for ReadonlyREST authentication: + - Simple username/password login - Tenancy selection for multi-tenant Kibana - Enterprise SSO integration @@ -198,20 +181,21 @@ Anaphora has first-class support for ReadonlyREST authentication: ### Stable Captures For reliable automation: + - Use stable dashboard URLs (avoid temporary/session-based URLs) - Prefer consistent layouts — dynamic dashboards may produce varying results -- Add explicit Wait actions after navigation -- Use element-specific captures rather than full-page when possible +- Add wait actions when necessary to ensure content is fully loaded +- If possible use element-specific captures rather than full-page when possible ### Handling Failures - Configure retry policies in General tab -- Use Wait for visible before captures - Test captures manually before scheduling ## Testing Click **Test capture** to: + 1. Run the capture workflow immediately 2. Preview all captured snapshots 3. Verify authentication works @@ -219,7 +203,8 @@ Click **Test capture** to: 5. Debug any issues :::tip Debug Workflow -Use Test frequently while building Advanced workflows. Each action's result is visible, making it easy to identify where issues occur. +Use Test frequently while building Advanced workflows. Each action's result is visible, making it easy to identify where +issues occur. ::: ## Next Steps From 4cdad313ba7b518d00a7666eaff1fa304018fb24 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Mon, 19 Jan 2026 19:14:59 +0100 Subject: [PATCH 07/32] chore: adjust composer page --- docs/jobs/composer.md | 256 ++++-------------------------------------- 1 file changed, 22 insertions(+), 234 deletions(-) diff --git a/docs/jobs/composer.md b/docs/jobs/composer.md index 29da1ee..8bada95 100644 --- a/docs/jobs/composer.md +++ b/docs/jobs/composer.md @@ -1,253 +1,41 @@ --- sidebar_position: 3 description: Design professional PDF reports with Anaphora's block-based composer - layouts, branding, snapshots, and AI-generated content. -keywords: [PDF report builder, report composer, branded reports, PDF layout, report template] +keywords: [ PDF report builder, report composer, branded reports, PDF layout, report template ] --- # Composer - Report Builder -The Composer tab is where captured content becomes a professional report. Using a block-based editor, you can create branded PDFs with custom layouts, text, images, and snapshots. - -## Overview - -After capture, the Composer assembles your content into a deliverable format: - -```mermaid -flowchart TB - subgraph page["Report Page"] - header["**Header**
Logo | Title | Date"] - snapshots["**Snapshots**
$dashboard_a | $dashboard_b"] - ai["**AI Analysis**
$ai_summary"] - footer["**Footer**
Page 1 of 2"] - - header --> snapshots --> ai --> footer - end -``` +The Composer tab is where captured content becomes a professional report. Using a block-based editor, you can create +branded PDFs with custom layouts, text, images, and snapshots. ## Block Types -### Content Blocks - -| Block | Description | -|-------|-------------| -| **Snapshot** | Insert captured screenshot (from variable) | -| **Text** | Headings, paragraphs, metadata | -| **Image** | Logos, icons, decorative images | -| **AI Content** | AI-generated analysis or summary | - -### Layout Blocks - -| Block | Description | -|-------|-------------| -| **Columns** | Multi-column layouts (2, 3, or custom) | -| **Divider** | Horizontal line separator | -| **Spacer** | Vertical whitespace | -| **Page Break** | Force new page | - -### Structure Blocks - -| Block | Description | -|-------|-------------| -| **Header** | Repeating page header | -| **Footer** | Repeating page footer | -| **Container** | Grouping with background/border | - -## Block Editor - -### Adding Blocks - -1. Click **+ Add Block** or use the block palette -2. Select block type -3. Configure block properties -4. Drag to reposition - -### Block Properties - -Each block has configurable properties: - -**Text Block Properties:** -| Property | Options | -|----------|---------| -| Content | Text with variable support | -| Heading Level | H1, H2, H3, paragraph | -| Alignment | Left, center, right | -| Font Size | Custom or preset sizes | -| Color | Text color picker | - -**Snapshot Block Properties:** -| Property | Options | -|----------|---------| -| Variable | Select from captured snapshots | -| Size | Width/height or auto | -| Border | None, thin, medium | -| Caption | Optional text below image | - -**Container Properties:** -| Property | Options | -|----------|---------| -| Background | Color or image | -| Padding | Inner spacing | -| Border | Style, color, radius | -| Opacity | Transparency level | - -## Branding & Styling - -### Global Styles - -Set default styles for the entire report: - -| Setting | Description | -|---------|-------------| -| **Page Size** | A4, Letter, or custom dimensions | -| **Margins** | Top, bottom, left, right spacing | -| **Font Family** | Default typeface | -| **Colors** | Primary, secondary, accent colors | - -### Branded Reports - -Create professional branded reports: - -1. **Logo placement** — Header, footer, or watermark -2. **Color scheme** — Match corporate brand colors -3. **Typography** — Use brand-approved fonts -4. **Backgrounds** — Subtle patterns or gradients - -### Example: Corporate Template - -``` -Header: -├── Logo (left) -├── Report Title (center) -└── Date (right) - -Body: -├── Executive Summary (text) -├── Dashboard Snapshot (full width) -├── Two-Column Layout: -│ ├── Metrics Panel (left) -│ └── Trend Chart (right) -└── AI Analysis (text) - -Footer: -├── Company Name (left) -├── Page Number (center) -└── Confidentiality Notice (right) -``` - -## Template Variables - -Insert dynamic content using variables: - -### System Variables - -| Variable | Description | Example Output | -|----------|-------------|----------------| -| `{{date}}` | Report date | "January 15, 2025" | -| `{{time}}` | Report time | "09:30 AM" | -| `{{datetime}}` | Full timestamp | "2025-01-15 09:30:00" | -| `{{job_name}}` | Job name | "Daily Dashboard Report" | -| `{{job_id}}` | Job identifier | "job-123abc" | - -### Captured Variables - -Variables from the Capture workflow: - -| Syntax | Description | -|--------|-------------| -| `{{$snapshot_name}}` | Insert captured snapshot | -| `{{$value_name}}` | Insert captured text value | -| `{{$calculated}}` | Insert calculated result | - -### AI Variables - -When using AI providers: - -| Variable | Description | -|----------|-------------| -| `{{$ai_summary}}` | AI-generated summary | -| `{{$ai_analysis}}` | AI analysis of captured data | - -## Multi-Page Reports - -### Page Management - -- **Add Page** — Create additional pages -- **Page Order** — Drag pages to reorder -- **Page Break** — Force content to next page -- **Continuous** — Let content flow naturally - -### Page-Specific Content - -Each page can have: -- Different layouts -- Unique content blocks -- Shared headers/footers (optional) - -## Output Formats - -| Format | Use Case | Notes | -|--------|----------|-------| -| **PDF** | Email attachments, archival | Most common, best quality | -| **PNG** | Slack, chat apps | Single image, limited pages | -| **JPEG** | Smaller file size | Compressed, some quality loss | -| **HTML** | Web viewing | Interactive, larger file | - -## Templates - -### Saving Templates - -Save your composition as a reusable template: - -1. Design your report layout -2. Click **Save as Template** -3. Name and categorize -4. Reuse across jobs - -### Template Library - -- **Default templates** — Pre-built layouts -- **Custom templates** — Your saved designs -- **Shared templates** — Available within your Space - -## Preview & Testing - -### Preview Mode - -Click **Preview** to see the final rendered report: -- Actual PDF rendering -- Variable substitution -- Page breaks and layout -- Real captured content (if available) - -### Test Run - -For complete validation: -1. Run a test capture from Capture tab -2. Switch to Composer -3. Preview with actual data -4. Adjust layout as needed - -## Best Practices +### Capture Blocks -### Layout Tips +| Block | Description | +|---------------|-----------------------------------------------| +| **Snapshots** | All captured screenshots | +| **Variables** | Captured texts, calculated values, AI results | -- Use consistent margins and spacing -- Keep important content above the fold on page 1 -- Use page breaks to control pagination -- Test with different data volumes +### Component Blocks -### Performance +| Block | Description | +|-------------|----------------------------------------------------| +| **Text** | Add any text to the report. Can contain variables. | +| **Image** | Upload static images like logos | +| **Divider** | Horizontal line separator | +| **Spacer** | Vertical whitespace | -- Optimize image sizes before upload -- Limit complex layouts on high-frequency jobs -- Use appropriate output format for delivery channel +## Layout -### Accessibility +The report layout is built using a hierarchical structure of pages, rows, and cells. -- Use sufficient color contrast -- Include alt text for images -- Maintain readable font sizes -- Use clear heading hierarchy +| Structure | Description | +|-----------|---------------------------------------------------------------| +| **Page** | Pages reflect PDF pagination. Every page consists of rows. | +| **Row** | Rows split pages horizontally into sections. | +| **Cell** | Cells hold blocks within rows. Up to 3 cells can fit per row. | ## Next Steps From 28029fcc1826daecf3d4fa162a57cbbe7bc76305 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Mon, 19 Jan 2026 19:46:44 +0100 Subject: [PATCH 08/32] chore: adjust job delivery page --- docs/jobs/delivery.md | 247 ++++++++---------------------------------- 1 file changed, 43 insertions(+), 204 deletions(-) diff --git a/docs/jobs/delivery.md b/docs/jobs/delivery.md index ef278e9..1161124 100644 --- a/docs/jobs/delivery.md +++ b/docs/jobs/delivery.md @@ -1,12 +1,13 @@ --- sidebar_position: 4 description: Configure report delivery - email, Slack, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. -keywords: [report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution] +keywords: [ report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution ] --- # Delivery Configuration -The Delivery tab configures where and how reports are sent. Anaphora supports multi-channel delivery with conditional routing. +The Delivery tab configures where and how reports are sent. Anaphora supports multi-channel delivery via email, +webhooks, and S3 archiving. ## Overview @@ -18,7 +19,6 @@ flowchart LR subgraph channels["Delivery Channels"] email["Email"] - slack["Slack"] s3["S3"] webhook["Webhook"] end @@ -28,24 +28,23 @@ flowchart LR ## Delivery Interfaces -Delivery Interfaces are reusable destination configurations. Configure them once in Settings, then select them in any job. +Delivery Interfaces are reusable destination configurations. Configure them once in Settings, then select them in any +job. ### Available Types -| Interface | Best For | Features | -|-----------|----------|----------| -| **SMTP** | Corporate email | SSL/TLS, attachments | -| **Mailgun** | High-volume email | API-based, reliable | -| **Slack** | Team notifications | Channels, threads, images | -| **Webhook** | Integrations | Custom payloads, any endpoint | -| **S3** | Archival, compliance | Historical records, versioning | +| Interface | Best For | Features | +|-------------|----------------------|--------------------------------| +| **SMTP** | Corporate email | SSL/TLS, attachments | +| **Mailgun** | Transactional email | High volume, tracking | +| **Webhook** | Integrations | Custom payloads, any endpoint | +| **S3** | Archival, compliance | Historical records, versioning | ### Reusability You can configure multiple interfaces of each type: - Different SMTP servers for different teams -- Multiple Slack workspaces - Separate S3 buckets for different retention periods - Various webhooks for different integrations @@ -55,139 +54,49 @@ S3 is particularly valuable for historical archives and compliance workflows. ### Use Cases -| Scenario | Benefit | -|----------|---------| -| **Historical reference** | "What did this dashboard look like on date X?" | -| **Compliance evidence** | Immutable records for audit requirements | -| **Long-term retention** | Store reports beyond housekeeping limits | -| **Cross-system integration** | Other tools can access archived reports | - -### Configuration - -| Setting | Description | -|---------|-------------| -| Bucket | S3 bucket name | -| Region | AWS region | -| Path prefix | Folder structure for organization | -| Credentials | AWS access key or IAM role | - -### Organization Strategy - -Structure your S3 archive for easy retrieval: - -``` -s3://company-reports/ -├── anaphora/ -│ ├── daily-dashboards/ -│ │ ├── 2025/ -│ │ │ ├── 01/ -│ │ │ │ ├── 2025-01-15-dashboard.pdf -│ │ │ │ └── 2025-01-16-dashboard.pdf -│ ├── compliance-reports/ -│ │ └── ... -│ └── alerts/ -│ └── ... -``` +| Scenario | Benefit | +|------------------------------|------------------------------------------------| +| **Historical reference** | "What did this dashboard look like on date X?" | +| **Compliance evidence** | Immutable records for audit requirements | +| **Long-term retention** | Store reports beyond housekeeping limits | +| **Cross-system integration** | Other tools can access archived reports | ## Email Delivery -### SMTP Configuration - -| Setting | Description | -|---------|-------------| -| Host | SMTP server address | -| Port | Usually 587 (TLS) or 465 (SSL) | -| Security | None, SSL, or StartTLS | -| Authentication | Username/password | +Anaphora supports sending reports via SMTP or Mailgun. ### Email Options -| Field | Description | Supports Variables | -|-------|-------------|-------------------| -| From | Sender address | No | -| To | Recipients (comma-separated) | Yes | -| CC/BCC | Additional recipients | Yes | -| Subject | Email subject line | Yes | -| Body | Message content | Yes | -| Attachment | Include PDF report | - | - -### Example Subject Lines - -``` -Daily Dashboard Report - {{date}} -[ALERT] Error threshold exceeded - {{$error_count}} errors -Weekly Summary: {{job_name}} -``` - -## Slack Delivery - -### Slack Configuration - -| Setting | Description | -|---------|-------------| -| Workspace | Connected Slack workspace | -| Channel | Default destination channel | -| Thread | Reply to thread (optional) | - -### Message Options +| Field | Description | +|------------------|------------------------------------------------| +| Attachments | Whether to attach the PDF report to the email. | +| Message template | Customizable email body with variables. | +| Recipients | List of email addresses to send the report to. | -| Field | Description | -|-------|-------------| -| Channel | Override default channel | -| Message | Text message (supports Slack formatting) | -| Image | Embed report as image | -| PDF | Upload PDF as file | - -### Slack Formatting - -Use Slack's mrkdwn formatting: - -``` -*Daily Report* for {{date}} - -Dashboard shows {{$metric_count}} active users. - -See attached PDF for full details. -``` +:::tip Recipients +Recipient email addresses can be either marked as single user or as group address. Emails sent to single user addresses +will include a snooze and unsubscribe link in the footer. Group addresses will not include these links. +::: ## Webhook Delivery +Webhooks enable custom integrations with any HTTP endpoint. + ### Webhook Configuration -| Setting | Description | -|---------|-------------| -| URL | Endpoint to receive report | -| Method | POST (default) or PUT | -| Headers | Custom headers (auth, content-type) | -| Payload format | JSON, form-data, or raw | - -### Payload Structure - -Webhook payloads include: - -```json -{ - "job_name": "Daily Dashboard Report", - "job_id": "job-123abc", - "run_id": "run-456def", - "timestamp": "2025-01-15T09:30:00Z", - "status": "success", - "report_url": "https://anaphora.example.com/reports/...", - "variables": { - "$error_count": 42, - "$status": "warning" - } -} -``` +| Field | Description | +|--------------------|-----------------------------------------------------------------------------------------------| +| Message template | Customizable message body with variables. | +| JSON body template | Define the JSON payload with variables. Only available when enabled in the Webhook interface. | ### Webhook Use Cases -| Integration | Description | -|-------------|-------------| -| **Ticketing systems** | Create tickets for alerts | -| **Chat platforms** | Custom integrations beyond Slack | -| **Data pipelines** | Feed report data to analytics | -| **Custom dashboards** | Update external status pages | +| Integration | Description | +|-----------------------|----------------------------------------| +| **Ticketing systems** | Create tickets for alerts | +| **Chat platforms** | Create messages in collaboration tools | +| **Data pipelines** | Feed report data to analytics | +| **Custom dashboards** | Update external status pages | ## Multi-Channel Delivery @@ -208,88 +117,18 @@ Delivery 2: Email (stakeholder distribution) Delivery 3: S3 (permanent archive) ``` -## Conditional Delivery - -Combine with Advanced Capture to route reports based on conditions. - -### Routing by Severity - -``` -If $error_count > 100: - → Deliver to #critical-alerts (Slack) - → Deliver to oncall@company.com (Email) -Else if $error_count > 10: - → Deliver to #team-alerts (Slack) -Else: - → Archive only (S3) -``` - -### Routing by Content - -``` -If $region == "EMEA": - → Deliver to emea-team@company.com -Else if $region == "APAC": - → Deliver to apac-team@company.com -``` - -## Delivery Failure Handling - -### Retry Behavior - -If delivery fails: -1. Anaphora retries based on job retry policy -2. Failed deliveries are logged -3. Admin notification on persistent failures - ### Partial Success With multi-channel delivery: + - Each channel is attempted independently - Partial success (some channels succeed, others fail) is logged -- Successful deliveries are not re-attempted on retry ## Testing Delivery -### Test Run - -1. Click **Test** on the job -2. Run captures and compose -3. Deliver to configured channels -4. Verify receipt and formatting - -### Delivery Log - -Check delivery status in the Run log: -- Success/failure per channel -- Error messages for failures -- Timing information - -## Best Practices - -### Email - -- Use distribution lists for team delivery -- Test subject lines with variables -- Consider time zones for delivery timing - -### Slack - -- Use dedicated channels for automated reports -- Include context in messages (what, when, why) -- Consider thread replies for high-frequency alerts - -### S3 - -- Implement lifecycle policies in AWS for old files -- Use consistent naming conventions -- Enable versioning for compliance requirements - -### Webhooks - -- Implement retry/idempotency on receiving end -- Use authentication headers for security -- Log incoming webhooks for debugging +Every delivery config includes a **Test** button. Use it to verify configuration before saving the job. +All steps during the capture and delivery process are logged for troubleshooting. +Use debug mode to also receive a video of the capture process. ## Next Steps From 96b6e8516d52f506fe4716057470634f0fb58e8e Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Mon, 19 Jan 2026 20:04:13 +0100 Subject: [PATCH 09/32] chore: adjust data retention pages --- docs/data-retention/index.md | 112 ++------------------------------- docs/data-retention/reports.md | 28 ++------- docs/data-retention/runs.md | 33 +++------- 3 files changed, 18 insertions(+), 155 deletions(-) diff --git a/docs/data-retention/index.md b/docs/data-retention/index.md index 7e4b986..37877a0 100644 --- a/docs/data-retention/index.md +++ b/docs/data-retention/index.md @@ -1,12 +1,13 @@ --- sidebar_position: 7 description: Manage Anaphora data retention - configure storage policies for report history, captured data, and audit logs. Automatic housekeeping and cleanup. -keywords: [data retention, report storage, audit logs, retention policy, storage management, housekeeping] +keywords: [ data retention, report storage, audit logs, retention policy, storage management, housekeeping ] --- # Data Retention - Report History & Storage Management -Anaphora stores captured data and generated reports for reference and auditing purposes. This section covers how data is stored, managed, and automatically cleaned up. +Anaphora stores captured data and generated reports for reference and auditing purposes. This section covers how data is +stored, managed, and automatically cleaned up. ## Overview @@ -15,113 +16,10 @@ The Data Retention section provides access to: - **Runs** - Execution history of your jobs, including successful captures, failures, and delivery status - **Reports** - Generated report documents and archives -## Data Types - -| Type | Description | Storage Impact | -|------|-------------|----------------| -| **Captures** | Raw screenshots and extracted data | High | -| **Reports** | Generated PDF and image documents | High | -| **Run History** | Execution logs and status records | Medium | -| **Variables** | Extracted values from capture workflows | Low | -| **Audit Logs** | User actions and system events | Low | - ## Housekeeping & Automatic Cleanup -Anaphora includes automatic housekeeping to manage storage usage over time. - -### Retention Rules - -Configure rules to automatically delete old data: - -```mermaid -flowchart LR - d1["Day 1"] --> d15["Day 15"] --> d30["Day 30"] --> d31["Day 31"] - d31 --> deleted["Deleted"] - - style d31 fill:#ff6b6b - style deleted fill:#ff6b6b -``` - -*Example: Keep only the last 30 days of reports* - -### Configuration Options - -| Setting | Description | Example | -|---------|-------------|---------| -| **Time-based** | Delete data older than X days | Keep last 30 days | -| **Count-based** | Keep only the last X reports | Keep last 100 reports | -| **Size-based** | Delete when storage exceeds limit | Max 10 GB per space | -| **Per-job rules** | Different retention per job type | Critical jobs: 90 days | - -### Housekeeping Schedule - -- Automatic cleanup runs on a configurable schedule -- Default: Daily at midnight (configurable) -- Manual trigger available for immediate cleanup -- Dry-run mode to preview what will be deleted - -## Storage Management - -### Per-Space Isolation - -Each Space maintains its own storage quota and retention policies: - -- Independent retention rules per space -- Storage usage tracking per space -- Alerts when approaching quota limits - -### Storage Metrics - -Monitor storage usage through: - -- Dashboard widgets showing current usage -- Historical trends of storage growth -- Breakdown by data type (captures, reports, logs) -- Projections based on current growth rate - -## Data Lifecycle - -```mermaid -flowchart LR - capture["Capture
Fresh data"] - store["Store
Active access"] - archive["Archive
Aged storage"] - delete["Delete
Expired cleanup"] - - capture --> store --> archive --> delete -``` - -1. **Capture** - New data is captured and stored -2. **Active** - Data is readily available for viewing and export -3. **Archive** - Older data may be compressed or moved to cold storage -4. **Cleanup** - Data exceeding retention policy is permanently deleted - -## Compliance Considerations - -For regulated environments: - -- **Audit trails** - Maintain logs of who accessed what data and when -- **Immutable logs** - System events cannot be modified or deleted -- **Export before delete** - Option to export data before automatic cleanup -- **Legal hold** - Suspend deletion for specific data sets - -## Best Practices - -### Recommended Retention Policies - -| Data Type | Recommended Retention | -|-----------|----------------------| -| Production reports | 90 days | -| Development/test reports | 7-14 days | -| Audit logs | 1 year | -| Run history | 30 days | - -### Storage Optimization - -- Use element-level capture instead of full-page when possible -- Configure appropriate image quality/compression -- Archive important reports externally before cleanup -- Review and adjust retention policies quarterly +Anaphora includes automatic housekeeping to manage storage usage over time. You can configure retention policies for +runs and reports in the job settings. ## Next Steps diff --git a/docs/data-retention/reports.md b/docs/data-retention/reports.md index 1582c3f..cd78305 100644 --- a/docs/data-retention/reports.md +++ b/docs/data-retention/reports.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Access and manage generated reports in Anaphora. Browse report history, configure retention, and download captured data. -keywords: [reports, report storage, report retention, PDF reports, captured data, Anaphora reports] +keywords: [ reports, report storage, report retention, PDF reports, captured data, Anaphora reports ] --- # Reports @@ -12,21 +12,8 @@ The Reports section provides access to all generated report documents and their ## Overview -Reports are the final output of your capture jobs. Each report contains: - -- Captured screenshots -- Extracted data and variables -- Applied templates and formatting -- Delivery timestamps and status - -## Report Types - -| Type | Description | -|------|-------------| -| Screenshot Report | Visual capture of target content | -| Data Report | Extracted values and metrics | -| Composite Report | Combined screenshots and data | -| Template Report | Formatted using custom templates | +Reports are the final output of your capture jobs. A report is a PDF document assembled from captured screenshots, +extracted data, and formatted content. ## Viewing Reports @@ -34,12 +21,9 @@ Access reports through: - **Run history** - View report from specific execution - **Report browser** - Browse all generated reports -- **Search** - Find reports by date, job, or content ## Report Storage -Reports are stored according to your retention policy settings. Configure: - -- **Retention period** - How long to keep reports -- **Storage location** - Local or cloud storage options -- **Archival rules** - Automatic archival of old reports +Most importantly, reports are delivered to configured destinations (email, Slack, S3, webhooks). +However, Anaphora also stores copies of generated reports for reference. +In the job configuration, you can set how long reports are retained. diff --git a/docs/data-retention/runs.md b/docs/data-retention/runs.md index c33c1cd..6cd1239 100644 --- a/docs/data-retention/runs.md +++ b/docs/data-retention/runs.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: View and debug job execution history in Anaphora. Track run statuses, identify failures, and review captured content. -keywords: [job runs, execution history, run status, debugging, job monitoring, Anaphora runs] +keywords: [ job runs, execution history, run status, debugging, job monitoring, Anaphora runs ] --- # Runs @@ -21,28 +21,9 @@ Every time a job executes, a **run** record is created. This allows you to: ## Run Statuses -| Status | Description | -|--------|-------------| -| Success | Job completed and report delivered | -| Partial | Some actions succeeded, others failed | -| Failed | Job execution failed | -| Skipped | Conditions not met, no report sent | - -## Viewing Run Details - -Select any run to view: - -- Execution timestamp -- Job configuration at time of run -- Captured screenshots and data -- Delivery status and logs -- Error messages (if any) - -## Debugging Failed Runs - -When a run fails, check: - -1. **Run logs** - Detailed execution trace -2. **Screenshots** - Visual state at failure point -3. **Network errors** - Connection or timeout issues -4. **Selector changes** - Target page structure may have changed +| Status | Description | +|-----------------|-----------------------------------------------------------------------| +| Success | Job completed and report delivered | +| Delivery issues | The report was created but could not be delivered to all destinations | +| Failed | Job execution failed | +| Skipped | Conditions not met, no report sent | From e2d68829e0bab40278d373c174c6d3dbd2573a77 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 07:43:02 +0100 Subject: [PATCH 10/32] chore: change delivery interface page --- docs/delivery-interfaces/index.md | 74 +++++-------------------------- 1 file changed, 11 insertions(+), 63 deletions(-) diff --git a/docs/delivery-interfaces/index.md b/docs/delivery-interfaces/index.md index cb0bd8d..b024abb 100644 --- a/docs/delivery-interfaces/index.md +++ b/docs/delivery-interfaces/index.md @@ -1,46 +1,26 @@ --- sidebar_position: 5 description: Configure Anaphora delivery channels - send reports via SMTP email, Mailgun, Slack, webhooks, or S3 archiving. PDF export and multi-channel distribution. -keywords: [email reports, Slack reports, webhook delivery, SMTP configuration, Mailgun integration, S3 archiving, PDF export, report distribution] +keywords: [ email reports, Slack reports, webhook delivery, SMTP configuration, Mailgun integration, S3 archiving, PDF export, report distribution ] --- # Delivery Interfaces - Email, Slack, S3 & Webhook -Delivery Interfaces define how reports reach your recipients. Once a report is generated, Anaphora handles distribution through multiple channels simultaneously. +Delivery Interfaces define how reports reach your recipients. Once a report is generated, Anaphora handles distribution +through multiple channels simultaneously. ## Available Interfaces -| Interface | Description | Best For | -|-----------|-------------|----------| -| [SMTP](/delivery-interfaces/smtp) | Direct email via SMTP server | Corporate email systems | -| [Mailgun](/delivery-interfaces/mailgun) | Email via Mailgun API | High-volume delivery | -| [Slack](/delivery-interfaces/slack) | Slack workspace integration | Team notifications | -| [S3](/delivery-interfaces/s3) | S3-compatible object storage | Archiving & compliance | -| [WebHook](/delivery-interfaces/webhook) | Custom HTTP endpoints | Integrations & automation | - -## Output Formats - -Reports can be delivered in multiple formats: - -| Format | Description | Use Case | -|--------|-------------|----------| -| **PDF** | Portable document format | Formal reports, archiving, printing | -| **PNG/JPEG** | Image formats | Quick previews, Slack thumbnails | -| **HTML** | Web format | Interactive viewing, email body | -| **Raw data** | JSON payload | Webhook integrations, further processing | - -## PDF Export - -Generate professional PDF reports directly from Anaphora: - -- **View in browser** - Preview reports before delivery -- **Download** - Manual PDF export from the Reports section -- **Email attachment** - Automatically attach PDFs to email delivery -- **Custom styling** - Branded headers, footers, and page layouts +| Interface | Description | Best For | +|-----------------------------------------|------------------------------|---------------------------| +| [SMTP](/delivery-interfaces/smtp) | Direct email via SMTP server | Corporate email systems | +| [Mailgun](/delivery-interfaces/mailgun) | Email via Mailgun API | High-volume delivery | +| [S3](/delivery-interfaces/s3) | S3-compatible object storage | Archiving & compliance | +| [WebHook](/delivery-interfaces/webhook) | Custom HTTP endpoints | Integrations & automation | ## Configuration -1. Navigate to **Settings** > **Delivery Interfaces** +1. Navigate to **Delivery Interfaces** 2. Click **Add Interface** 3. Select type and configure credentials 4. Test the connection @@ -51,39 +31,7 @@ Generate professional PDF reports directly from Anaphora: Once configured, interfaces appear in the job's **Delivery** tab: - Select one or multiple delivery channels -- Configure per-channel settings (recipients, subject lines, etc.) -- Set delivery conditions (always, on success, on failure) - -## Multiple Interfaces - -You can configure multiple interfaces of the same type: - -| Scenario | Configuration | -|----------|---------------| -| **Different teams** | Separate Slack channels per team | -| **Backup delivery** | Primary SMTP + fallback Mailgun | -| **Regional separation** | Different email servers per region | -| **Integration variety** | Multiple webhooks for different systems | - -## Delivery Flow - -```mermaid -flowchart LR - report["Report Generated"] - - subgraph interfaces["Delivery Interfaces"] - email["Email"] - slack["Slack"] - s3["S3"] - webhook["Webhook"] - end - - report --> interfaces - email --> recipients["Recipients"] - slack --> channels["Channels"] - s3 --> bucket["S3 Bucket"] - webhook --> endpoints["Endpoints"] -``` +- Configure per-channel settings (recipients, notification body, etc.) ## Next Steps From a460d56f1bb1f26b127f6078379bbf5a75772190 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 09:35:31 +0100 Subject: [PATCH 11/32] chore: adjust delivery interface pages --- docs/delivery-interfaces/mailgun.md | 29 +++---- docs/delivery-interfaces/s3.md | 126 +++++----------------------- docs/delivery-interfaces/slack.md | 47 ++++------- docs/delivery-interfaces/smtp.md | 28 +++---- docs/delivery-interfaces/webhook.md | 80 ++++++++---------- 5 files changed, 94 insertions(+), 216 deletions(-) diff --git a/docs/delivery-interfaces/mailgun.md b/docs/delivery-interfaces/mailgun.md index db47b06..908efc6 100644 --- a/docs/delivery-interfaces/mailgun.md +++ b/docs/delivery-interfaces/mailgun.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Configure Mailgun API integration for reliable email delivery with built-in analytics and better deliverability. -keywords: [Mailgun integration, email API, transactional email, Anaphora Mailgun, email delivery] +keywords: [ Mailgun integration, email API, transactional email, Anaphora Mailgun, email delivery ] --- # Mailgun @@ -14,18 +14,17 @@ Send reports via the Mailgun email API. - No SMTP server to manage - Better deliverability tracking -- Built-in analytics +- Easy setup - Higher sending limits ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| API Key | Mailgun API key | Yes | -| Domain | Your Mailgun domain | Yes | -| From Address | Sender email | Yes | -| Region | US or EU | Yes | +| Field | Description | Required | +|-----------------|-------------------------------------------------------------------------|----------| +| Name | Interface identifier | Yes | +| Sender email | Use your MailGun domain with any name e.g. myname@my-mailgun-domain.com | Yes | +| Sender name | Use any name that should be displayed as sender | No | +| Mailgun API key | API authentication | Yes | ## Setup Steps @@ -34,20 +33,12 @@ Send reports via the Mailgun email API. 1. Log in to Mailgun 2. Navigate to **Settings** > **API Keys** 3. Copy your Private API Key -4. Note your sending domain - -### 2. Configure in Anaphora - -1. Go to **Settings** > **Delivery Interfaces** -2. Add new **Mailgun** interface -3. Enter API key and domain -4. Select region (US or EU) -5. Set from address -6. Test and save +4. Note your Mailgun sender domain (to use in sender email) ## Domain Verification Ensure your Mailgun domain is verified for best deliverability: + - Add DNS records as instructed by Mailgun - Verify SPF and DKIM are configured diff --git a/docs/delivery-interfaces/s3.md b/docs/delivery-interfaces/s3.md index 0986330..ad2c4ad 100644 --- a/docs/delivery-interfaces/s3.md +++ b/docs/delivery-interfaces/s3.md @@ -1,34 +1,34 @@ --- sidebar_position: 5 description: Archive reports to S3 object storage - AWS S3, MinIO, and S3-compatible storage for compliance and historical records. -keywords: [S3 archiving, AWS S3, MinIO, object storage, report archive, compliance storage] +keywords: [ S3 archiving, AWS S3, MinIO, object storage, report archive, compliance storage ] --- # S3 Object Storage + Archive reports to S3-compatible object storage for long-term retention, compliance, and historical reference. ![S3 Object Storage delivery interface configuration showing access key, secret key, region, bucket name, and custom endpoint fields](images/s3.png) ## Use Cases -| Scenario | Benefit | -|----------|---------| -| **Compliance archiving** | Immutable records for audit requirements | +| Scenario | Benefit | +|--------------------------|------------------------------------------------| +| **Compliance archiving** | Immutable records for audit requirements | | **Historical reference** | "What did this dashboard look like on date X?" | -| **Long-term retention** | Store beyond housekeeping limits | -| **Cross-system access** | Other tools can retrieve archived reports | +| **Long-term retention** | Store beyond housekeeping limits | +| **Cross-system access** | Other tools can retrieve archived reports | ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| **Name** | Interface identifier | Yes | -| **Type** | S3 Object Storage | Yes | -| **Access key ID** | AWS access key or S3-compatible credentials | Yes | -| **Secret access key** | AWS secret key (stored encrypted) | Yes | -| **Region** | AWS region (e.g., `eu-west-1`) | Yes | -| **Bucket name** | Target S3 bucket | Yes | -| **Custom endpoint** | For S3-compatible storage (MinIO, etc.) | No | +| Field | Description | Required | +|-----------------------|---------------------------------------------|----------| +| **Name** | Interface identifier | Yes | +| **Access key ID** | AWS access key or S3-compatible credentials | Yes | +| **Secret access key** | AWS secret key (stored encrypted) | Yes | +| **Region** | AWS region (e.g., `eu-west-1`) | Yes | +| **Bucket name** | Target S3 bucket | Yes | +| **Custom endpoint** | For S3-compatible storage (MinIO, etc.) | No | ## Provider Configurations @@ -72,38 +72,6 @@ Bucket name: your-bucket Custom endpoint: https://s3.us-west-002.backblazeb2.com ``` -## Path Organization - -Reports are stored with a configurable path structure. Configure the path prefix in the job's Delivery settings: - -``` -s3://my-reports-bucket/ -├── anaphora/ -│ ├── daily-dashboards/ -│ │ ├── 2025/ -│ │ │ ├── 01/ -│ │ │ │ ├── 2025-01-15-dashboard.pdf -│ │ │ │ └── 2025-01-16-dashboard.pdf -│ ├── compliance-reports/ -│ │ └── ... -│ └── alerts/ -│ └── ... -``` - -### Path Variables - -Use variables in the path prefix for automatic organization: - -| Variable | Description | Example | -|----------|-------------|---------| -| `{{year}}` | 4-digit year | `2025` | -| `{{month}}` | 2-digit month | `01` | -| `{{day}}` | 2-digit day | `15` | -| `{{job_name}}` | Job identifier | `daily-dashboard` | -| `{{date}}` | Full date | `2025-01-15` | - -**Example path prefix:** `anaphora/{{job_name}}/{{year}}/{{month}}/` - ## IAM Permissions For AWS S3, the IAM user/role needs these permissions: @@ -132,55 +100,21 @@ For AWS S3, the IAM user/role needs these permissions: For write-only archiving, you can remove `s3:GetObject` permission. ::: -## Lifecycle Policies - -Configure S3 lifecycle policies for automatic management: - -| Policy | Description | -|--------|-------------| -| **Transition to Glacier** | Move old reports to cheaper storage | -| **Expiration** | Auto-delete after retention period | -| **Versioning** | Keep multiple versions for compliance | - -### Example Lifecycle Rule (AWS) - -```json -{ - "Rules": [ - { - "ID": "ArchiveOldReports", - "Status": "Enabled", - "Filter": { "Prefix": "anaphora/" }, - "Transitions": [ - { - "Days": 90, - "StorageClass": "GLACIER" - } - ], - "Expiration": { - "Days": 365 - } - } - ] -} -``` - ## Testing 1. Configure the S3 interface with your credentials 2. Click **Test** 3. Verify a test file appears in your bucket -4. Check the file path matches your expectations ## Troubleshooting -| Issue | Solution | -|-------|----------| -| Access Denied | Verify IAM permissions, check bucket policy | -| Invalid credentials | Double-check access key and secret | -| Bucket not found | Verify bucket name and region match | -| Connection timeout | Check custom endpoint URL, verify network access | -| SSL certificate error | For self-signed certs, configure trust settings | +| Issue | Solution | +|-----------------------|--------------------------------------------------| +| Access Denied | Verify IAM permissions, check bucket policy | +| Invalid credentials | Double-check access key and secret | +| Bucket not found | Verify bucket name and region match | +| Connection timeout | Check custom endpoint URL, verify network access | +| SSL certificate error | For self-signed certs, configure trust settings | ## Best Practices @@ -189,18 +123,4 @@ Configure S3 lifecycle policies for automatic management: - Use dedicated IAM credentials with minimal permissions - Enable bucket versioning for compliance requirements - Consider enabling server-side encryption (SSE-S3 or SSE-KMS) -- Restrict bucket access with bucket policies - -### Organization - -- Use consistent path prefixes across jobs -- Include date components for easy browsing -- Separate compliance reports from operational reports -- Document your bucket structure - -### Cost Management - -- Configure lifecycle policies to transition old data to Glacier -- Set expiration for non-critical reports -- Monitor bucket size and request costs -- Consider S3 Intelligent-Tiering for variable access patterns +- Restrict bucket access with bucket policies \ No newline at end of file diff --git a/docs/delivery-interfaces/slack.md b/docs/delivery-interfaces/slack.md index 6ebe680..d4b4e70 100644 --- a/docs/delivery-interfaces/slack.md +++ b/docs/delivery-interfaces/slack.md @@ -1,20 +1,12 @@ --- sidebar_position: 3 description: Configure Slack webhook integration to deliver Anaphora reports directly to Slack channels with rich formatting. -keywords: [Slack integration, webhook delivery, Slack notifications, report delivery, Anaphora Slack] +keywords: [ Slack integration, webhook delivery, Slack notifications, report delivery, Anaphora Slack ] --- # Slack -Deliver reports directly to Slack channels. - -## Configuration - -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| Webhook URL | Slack Incoming Webhook | Yes | -| Default Channel | Fallback channel | No | +Deliver reports directly to Slack channels. Use the webhook delivery interface to send Slack messages. ## Setup Steps @@ -35,27 +27,16 @@ Deliver reports directly to Slack channels. ### 3. Configure in Anaphora -1. Go to **Settings** > **Delivery Interfaces** -2. Add new **Slack** interface +1. Go to **Delivery Interfaces** +2. Add new **Webhook** interface 3. Paste the Webhook URL -4. Test and save - -## Message Formatting - -Reports sent to Slack include: -- Report title as header -- Thumbnail preview (if image) -- Download link for full PDF -- Key metrics (if extracted) - -## Multiple Channels - -Create separate interfaces for different channels, or override the channel per-job. - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Webhook invalid | Regenerate webhook URL | -| Channel not found | Verify channel exists and bot has access | -| Message too large | Reduce captured content size | +4. Add the ```Authorization``` header with value ```Bearer xoxb-your-slack-bot-token``` +5. Set the method to **POST** and body type to **JSON** +6. Add the JSON body: +```json +{ + "channel": "#your-channel", + "text": "$MESSAGE" +} +``` +7. Test and save diff --git a/docs/delivery-interfaces/smtp.md b/docs/delivery-interfaces/smtp.md index 2cddaf2..72ac868 100644 --- a/docs/delivery-interfaces/smtp.md +++ b/docs/delivery-interfaces/smtp.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Configure SMTP email delivery for Anaphora reports. Supports SSL, STARTTLS, and common providers like Gmail and Office 365. -keywords: [SMTP configuration, email delivery, SSL email, Gmail SMTP, Office 365 SMTP, Anaphora email] +keywords: [ SMTP configuration, email delivery, SSL email, Gmail SMTP, Office 365 SMTP, Anaphora email ] --- # SMTP @@ -12,15 +12,15 @@ Send reports via your own SMTP email server. Supports SSL, STARTLS, plain ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| Host | SMTP server hostname | Yes | -| Port | SMTP port (25, 465, 587) | Yes | -| Username | SMTP authentication user | Usually | -| Password | SMTP authentication password | Usually | -| From Address | Sender email address | Yes | -| TLS/SSL | Encryption mode | Recommended | +| Field | Description | Required | +|--------------|------------------------------|-------------| +| Name | Interface identifier | Yes | +| Host | SMTP server hostname | Yes | +| Port | SMTP port (25, 465, 587) | Yes | +| Username | SMTP authentication user | Usually | +| Password | SMTP authentication password | Usually | +| From Address | Sender email address | Yes | +| TLS/SSL | Encryption mode | Recommended | ## Common Configurations @@ -61,8 +61,8 @@ TLS: STARTTLS ## Troubleshooting -| Issue | Solution | -|-------|----------| -| Connection refused | Check firewall, verify port | +| Issue | Solution | +|-----------------------|-----------------------------------------| +| Connection refused | Check firewall, verify port | | Authentication failed | Verify credentials, check app passwords | -| TLS error | Try different TLS mode | +| TLS error | Try different TLS mode | diff --git a/docs/delivery-interfaces/webhook.md b/docs/delivery-interfaces/webhook.md index f4e6fdb..28a2b28 100644 --- a/docs/delivery-interfaces/webhook.md +++ b/docs/delivery-interfaces/webhook.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 description: Configure webhook delivery to send Anaphora reports to custom HTTP endpoints. Integrate with any system via JSON payloads. -keywords: [webhook integration, HTTP delivery, API integration, custom notifications, automation, Anaphora webhook] +keywords: [ webhook integration, HTTP delivery, API integration, custom notifications, automation, Anaphora webhook ] --- # WebHook @@ -19,67 +19,53 @@ Send reports to custom HTTP endpoints for integration with any system. ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| URL | Endpoint URL | Yes | -| Method | HTTP method (POST/PUT) | Yes | -| Headers | Custom headers | No | -| Authentication | Basic/Bearer/None | No | +| Field | Description | Required | +|-----------|-------------------------|----------| +| Name | Interface identifier | Yes | +| URL | Endpoint URL | Yes | +| Method | HTTP method (POST/PUT) | Yes | +| Headers | Custom headers | No | +| Body type | JSON, form-data | Yes | +| JSON Body | Custom payload template | No | +| Form Data | Key-value pairs | No | ## Payload Format -Anaphora sends a JSON payload: +### JSON Template + +Define a JSON structure that works with your endpoint. Use the ```$MESSAGE``` variable as placeholder for the report +content. This variable will be replaced with the custom text that you define in the job's delivery settings. + +Example: ```json { - "job_name": "Daily Report", - "job_id": "abc123", - "timestamp": "2026-01-15T09:00:00Z", - "status": "success", - "report_url": "https://anaphora.example.com/reports/xyz", - "variables": { - "error_count": 42, - "alert_triggered": true - }, - "attachments": [ - { - "type": "pdf", - "url": "https://anaphora.example.com/files/report.pdf" - } - ] + "title": "Anaphora Report", + "content": "$MESSAGE" } ``` -## Custom Headers +### Form Data -Add headers for authentication or routing: +Send key-value pairs as form data. Use the ```$MESSAGE``` variable for the report content. + +Example: ``` -Authorization: Bearer your-token -X-Custom-Header: value -Content-Type: application/json +report_title=Anaphora Report +report_content=$MESSAGE ``` -## Authentication Options +### JSON in Job Delivery -| Type | Configuration | -|------|---------------| -| None | No authentication | -| Basic | Username and password | -| Bearer | Token in Authorization header | -| Custom | Via custom headers | +In this case the entire body is defined in the job's delivery settings. -## Testing - -1. Use a tool like [webhook.site](https://webhook.site) for testing -2. Configure the test URL in Anaphora -3. Send a test payload -4. Verify the payload structure meets your needs +## Custom Headers -## Error Handling +Add headers for authentication or routing: -Anaphora retries failed webhook deliveries: -- 3 retry attempts -- Exponential backoff -- Failures logged in job history +``` +Authorization: Bearer your-token +X-Custom-Header: value +Content-Type: application/json +``` From 7fcba74d7fbfe7d1e2808ea6124acee8753c4ebc Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 19:38:38 +0100 Subject: [PATCH 12/32] chore: improve spaces and authentication --- docs/administration/authentication/index.md | 128 ++++------- docs/administration/images/space-selector.png | Bin 0 -> 4937 bytes docs/administration/index.md | 136 ++---------- docs/administration/spaces.md | 202 ++++-------------- 4 files changed, 99 insertions(+), 367 deletions(-) create mode 100644 docs/administration/images/space-selector.png diff --git a/docs/administration/authentication/index.md b/docs/administration/authentication/index.md index 496c14b..96c0703 100644 --- a/docs/administration/authentication/index.md +++ b/docs/administration/authentication/index.md @@ -1,114 +1,64 @@ --- sidebar_position: 1 description: Configure Anaphora authentication - local users, LDAP, SAML SSO, OpenID Connect, and session management. -keywords: [authentication, LDAP, SAML, SSO, OpenID Connect, OIDC, session management, RBAC] +keywords: [ authentication, LDAP, SAML, SSO, OpenID Connect, OIDC, session management, RBAC ] --- # Authentication -Configure user authentication and access control for Anaphora. The platform supports enterprise-standard authentication methods for secure access. +Configure user authentication and access control for Anaphora. The platform supports enterprise-standard authentication +methods for secure access. ## Authentication Methods -| Method | Description | Best For | -|--------|-------------|----------| -| [Local](/administration/authentication/local) | Built-in username/password | Small teams, testing | -| [LDAP](/administration/authentication/ldap) | Active Directory integration | Enterprise Windows environments | -| [SAML](/administration/authentication/saml) | Single Sign-On via SAML 2.0 | Okta, Azure AD, OneLogin | -| [OIDC](/administration/authentication/oidc) | OpenID Connect providers | Google, Auth0, Keycloak | +| Method | Description | Best For | +|-----------------------------------------------|------------------------------|---------------------------------| +| [Local](/administration/authentication/local) | Built-in username/password | Small teams, testing | +| [LDAP](/administration/authentication/ldap) | Active Directory integration | Enterprise Windows environments | +| [SAML](/administration/authentication/saml) | Single Sign-On via SAML 2.0 | Okta, Azure AD, OneLogin | +| [OIDC](/administration/authentication/oidc) | OpenID Connect providers | Google, Auth0, Keycloak | ## Roles and Permissions Anaphora uses role-based access control (RBAC). -### Built-in Roles +### User types -| Role | Permissions | -|------|-------------| -| **Admin** | Full access: users, settings, all Spaces | -| **Editor** | Create and edit jobs, run reports | -| **Viewer** | View reports and job status only | +Anaphora has two main user types: System users and normal users. System users will have global access and can manage the +Anaphora instance. While normal users will be assigned to specific spaces with permissions scoped to those spaces. -### Permission Details - -| Permission | Admin | Editor | Viewer | -|------------|-------|--------|--------| -| View reports | Yes | Yes | Yes | -| Create jobs | Yes | Yes | No | -| Edit jobs | Yes | Yes | No | -| Delete jobs | Yes | No | No | -| Manage delivery interfaces | Yes | Yes | No | -| Manage users | Yes | No | No | -| Manage Spaces | Yes | No | No | -| System settings | Yes | No | No | - -### Custom Roles - -Create custom roles with specific permissions: - -1. Go to **Settings** > **Roles** -2. Click **Create Role** -3. Select permissions to include -4. Save and assign to users - -## Session Management - -Administrators have visibility and control over user sessions. - -### Active Sessions - -View all active user sessions: - -| Information | Description | -|-------------|-------------| -| User | Logged-in user | -| IP Address | Client IP | -| Login Time | When session started | -| Last Activity | Most recent action | -| Device/Browser | Client information | +| User Type | Description | Methods | +|-----------------|--------------------------------------------|---------| +| **System user** | Full global access, manage system settings | Local | +| **Normal user** | Access and manage resources within spaces | All | -### Session Controls +### Space Permissions -| Action | Description | -|--------|-------------| -| **View sessions** | See all active sessions | -| **Force logout** | Terminate specific session | -| **Logout all** | Terminate all sessions for a user | +Users are assigned permissions within specific spaces: -### Session Policies +| Permission | Description | +|---------------|------------------------------------| +| **Admin** | Full access within assigned spaces | +| **ReadWrite** | Create and edit jobs, run reports | +| **Readonly** | View reports and job status only | -Configure session behavior: - -| Setting | Description | -|---------|-------------| -| Session timeout | Auto-logout after inactivity | -| Maximum sessions | Limit concurrent sessions per user | -| Remember me duration | Extended session lifetime | - -### Security Events - -Audit log captures authentication events: - -- Login success/failure -- Logout events -- Password changes -- Session terminations -- Permission changes - -## Best Practices - -### Security - -- Use SSO when available for centralized access control -- Require strong passwords for local accounts -- Review active sessions regularly -- Set appropriate session timeouts - -### Enterprise Integration +### Permission Details -- Use dedicated service accounts for LDAP binding -- Map groups to roles for automated permission management -- Test authentication changes in staging first +| Rights | System User | Space Admin | Space ReadWrite | Space Readonly | +|----------------------------|-------------|-------------|-----------------|----------------| +| View reports | Yes | Yes | Yes | Yes | +| View runs | Yes | Yes | Yes | Yes | +| Manage jobs | Yes | Yes | Yes | No | +| Manage delivery interfaces | Yes | Yes | No | No | +| Manage AI providers | Yes | Yes | No | No | +| Manage users | Yes | No | No | No | +| Manage spaces | Yes | No | No | No | +| Global settings | Yes | No | No | No | + +### Add User Permissions + +See the [Spaces](/administration/spaces) documentation for details on assigning users to spaces with specific +permissions. ## Next Steps diff --git a/docs/administration/images/space-selector.png b/docs/administration/images/space-selector.png new file mode 100644 index 0000000000000000000000000000000000000000..6e49cc19e6bfb30937279c4ee6d9ffcf4558a6d2 GIT binary patch literal 4937 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 literal 0 HcmV?d00001 diff --git a/docs/administration/index.md b/docs/administration/index.md index a93efe5..af87732 100644 --- a/docs/administration/index.md +++ b/docs/administration/index.md @@ -1,138 +1,28 @@ --- sidebar_position: 6 description: Anaphora administration guide - configure authentication (LDAP, SAML, SSO), manage multi-tenant spaces, monitor system health, and backup data. -keywords: [Anaphora admin, LDAP authentication, SAML SSO, multi-tenant reporting, system monitoring, backup, RBAC] +keywords: [ Anaphora admin, LDAP authentication, SAML SSO, multi-tenant reporting, system monitoring, backup, RBAC ] --- # Administration - Security, Multi-Tenancy & Operations -Manage Anaphora's security, multi-tenancy, monitoring, and backups. This section covers enterprise features for managing users, permissions, and system health. +Manage Anaphora's security, multi-tenancy, monitoring, and backups. This section covers enterprise features for managing +users, permissions, and system health. ## Topics -| Topic | Description | -|-------|-------------| -| [Authentication](/administration/authentication/) | User authentication and access control | -| [Spaces](/administration/spaces) | Multi-tenant workspace management | -| [AI Providers](/administration/ai-providers) | Configure AI for intelligent analysis | -| [Self Monitoring](/administration/self-monitoring) | System health and metrics | -| [Backup](/administration/backup) | Data backup and recovery | +| Topic | Description | +|----------------------------------------------------|----------------------------------------| +| [Authentication](/administration/authentication/) | User authentication and access control | +| [Spaces](/administration/spaces) | Multi-tenant workspace management | +| [AI Providers](/administration/ai-providers) | Configure AI for intelligent analysis | +| [Self Monitoring](/administration/self-monitoring) | System health and metrics | +| [Backup](/administration/backup) | Data backup and recovery | -## Spaces: Multi-Tenant Isolation +## System User -Anaphora uses a **Spaces** concept to manage multi-tenancy and permissions effectively. - -### Shared-Nothing Architecture - -Spaces act as isolated containers with complete separation: - -```mermaid -flowchart TB - subgraph anaphora["Anaphora"] - subgraph spaceA["Space A"] - a1["Jobs"] - a2["Reports"] - a3["Delivery"] - a4["Users"] - end - subgraph spaceB["Space B"] - b1["Jobs"] - b2["Reports"] - b3["Delivery"] - b4["Users"] - end - subgraph spaceC["Space C"] - c1["Jobs"] - c2["Reports"] - c3["Delivery"] - c4["Users"] - end - end -``` - -- **Complete isolation** - Jobs, Delivery Interfaces, AI Providers, and reports cannot be shared between spaces -- **Copy support** - Items can be copied between spaces when needed -- **Independent configuration** - Each space has its own settings and retention policies - -### Use Cases for Spaces - -| Scenario | Implementation | -|----------|----------------| -| **Team separation** | Each team gets their own space with dedicated jobs | -| **Client isolation** | MSPs create separate spaces per client | -| **Environment separation** | Dev, staging, and production spaces | -| **Department boundaries** | Finance, Engineering, Marketing each have isolated spaces | - -## Role-Based Access Control (RBAC) - -Anaphora provides granular permissions through roles. - -### Permission Levels - -| Level | Capabilities | -|-------|-------------| -| **Read-only** | View jobs, reports, and settings | -| **Read-write** | Create and modify jobs, run reports | -| **Admin** | Full control including user management and space settings | - -### Assignment Options - -Permissions can be assigned to: - -- **Individual users** - Direct permission grants -- **Groups** - Permissions inherited by all group members -- **Roles** - Reusable permission sets - -## Authentication Methods - -Anaphora supports enterprise-standard authentication: - -| Method | Description | -|--------|-------------| -| [Local](/administration/authentication/local) | Built-in username/password authentication | -| [LDAP](/administration/authentication/ldap) | Active Directory and other LDAP directories | -| [SAML](/administration/authentication/saml) | SSO with Okta, Azure AD, OneLogin, etc. | -| [OIDC](/administration/authentication/oidc) | OAuth 2.0 / OpenID Connect providers | - -### Session Management - -Administrators can: - -- View all active sessions -- Force logout of specific users -- Set session timeout policies -- Monitor login history - -## System Monitoring - -Monitor Anaphora's health and performance: - -### Health Endpoint - -A dedicated endpoint for monitoring tools (Prometheus, Nagios, etc.): - -- System status and uptime -- Job execution statistics -- Error rates and failures -- Resource utilization - -### Alerting - -Configure alerts when: - -- Job execution error rates become too high -- System resources are constrained -- Authentication failures spike -- Delivery channels fail - -## Backup & Recovery - -Protect your Anaphora configuration and data: - -- **Full system backup** - Export all jobs, settings, and configurations -- **Scheduled backups** - Automate regular backup creation -- **Point-in-time recovery** - Restore to a specific backup -- **Migration support** - Move between Anaphora instances +The first user created during setup is the system administrator with full privileges. Only system admins can access and +manage the global settings. ## Next Steps diff --git a/docs/administration/spaces.md b/docs/administration/spaces.md index 95cdb55..2b27b8d 100644 --- a/docs/administration/spaces.md +++ b/docs/administration/spaces.md @@ -1,12 +1,13 @@ --- sidebar_position: 2 description: Configure Anaphora Spaces for multi-tenant isolation - separate jobs, reports, and permissions by team or project. -keywords: [multi-tenancy, Spaces, workspace isolation, team separation, RBAC] +keywords: [ multi-tenancy, Spaces, workspace isolation, team separation, RBAC ] --- # Spaces -Spaces provide multi-tenant workspace isolation in Anaphora. They act as "share-nothing" containers that completely separate resources between teams, projects, or tenants. +Spaces provide multi-tenant workspace isolation in Anaphora. They act as "share-nothing" containers that completely +separate resources between teams, projects, or tenants. ![](images/spaces.png) @@ -27,19 +28,16 @@ flowchart TB a1["15 Jobs"] a2["3 Delivery Interfaces"] a3["5 Users"] - a4["AI Provider"] end subgraph spaceB["Space B (Team Beta)"] b1["8 Jobs"] b2["2 Delivery Interfaces"] b3["3 Users"] - b4["AI Provider"] end subgraph spaceC["Space C (Clients)"] c1["50 Jobs"] c2["5 Delivery Interfaces"] c3["10 Users"] - c4["No AI"] end end ``` @@ -48,209 +46,103 @@ flowchart TB Users can belong to multiple Spaces with different roles. ::: -## Share-Nothing Architecture - -Spaces enforce complete isolation: - -| Isolated | Not Shared | -|----------|------------| -| Jobs | Jobs cannot access other Spaces' resources | -| Delivery Interfaces | Each Space configures its own | -| AI Providers | Per-Space AI configuration | -| Reports | Only visible within the Space | -| Run History | Isolated execution logs | -| Templates | Report templates per Space | - ### Copying Between Spaces While resources cannot be shared, they can be copied: -1. Export job configuration from Space A -2. Import into Space B -3. Reconfigure Space-specific settings (delivery, credentials) - -## Creating Spaces - -1. Navigate to **Settings** > **Spaces** -2. Click **Create Space** -3. Enter name and description -4. Configure default settings -5. Save +1. In the jobs list, select the jobs to copy to another Space +2. Click **Copy to Space** +3. Choose target Space +4. If applicable, select to copy associated delivery interfaces -### Space Settings +The same process applies to delivery interfaces. -| Setting | Description | -|---------|-------------| -| **Name** | Unique identifier for the Space | -| **Description** | Purpose/team using this Space | -| **Default Space** | Set as default for new users | -| **Retention Override** | Custom housekeeping rules | - -## User Assignment +## Creating Spaces -Assign users to Spaces with specific roles: +1. Navigate to **Settings** > **System Settings** > **Permissions** +2. Click **Add Space** +3. Enter the name of the Space ### Assignment Process -1. Open Space settings -2. Go to **Members** tab -3. Click **Add Member** -4. Select user or group -5. Assign role (Admin, Editor, Viewer) -6. Save +1. Click **Add Permission** +2. Select user or role +3. Assign permission (Admin, ReadWrite, Readonly) + +:::tip User Roles +Users can have roles assigned to them. These roles can then be assigned to Spaces for easier management. So it is not +necessary to assign each user individually. +::: ### Multi-Space Users -Users can belong to multiple Spaces: +Users can belong to multiple Spaces, by direct assignment or via roles: ``` User: alice@company.com -├── Space: Engineering → Role: Admin -├── Space: Marketing → Role: Viewer -└── Space: DevOps → Role: Editor -``` - -### Group-Based Assignment - -Assign entire groups to Spaces: - -``` -Group: Engineering Team -└── Space: Engineering → Role: Editor - -All members of "Engineering Team" get Editor access to Engineering Space +├── Space: Engineering → Permission: Admin +└── Space: Marketing → Permission: Readonly +Role: DevOps Team +└── Space: DevOps → Permission: ReadWrite ``` ## Switching Spaces -Users with access to multiple Spaces see a Space selector in the navigation. +You can switch between Spaces using the Space selector in the sidebar. -### Current Space Indicator +![space-selector.png](images/space-selector.png) -- Shows active Space name in header -- All operations apply to current Space -- Jobs, reports, settings are Space-specific - -### Quick Switch - -- Click Space selector -- Choose from available Spaces -- View updates immediately +All resources you create or manage will be scoped to the selected Space. ## Use Cases ### Team Separation -| Space | Purpose | -|-------|---------| +| Space | Purpose | +|-------------|--------------------------------------| | Engineering | Technical dashboards, system metrics | -| Marketing | Campaign dashboards, analytics | -| Executive | Summary reports, KPIs | -| DevOps | Infrastructure monitoring, alerts | +| Marketing | Campaign dashboards, analytics | +| Executive | Summary reports, KPIs | +| DevOps | Infrastructure monitoring, alerts | ### Client Isolation (MSP) For managed service providers: -| Space | Client | -|-------|--------| -| Client-Acme | Acme Corp reports | -| Client-Beta | Beta Inc reports | +| Space | Client | +|--------------|-------------------| +| Client-Acme | Acme Corp reports | +| Client-Beta | Beta Inc reports | | Client-Gamma | Gamma Ltd reports | Each client's data is completely isolated. ### Environment Separation -| Space | Environment | -|-------|-------------| -| Production | Live dashboards, real alerts | -| Staging | Test jobs, validation | -| Development | Experimental configurations | - -## Space-Level Settings - -Each Space can override global settings: - -### Retention Policies - -Configure per-Space housekeeping: - -| Setting | Global | Space Override | -|---------|--------|----------------| -| Report retention | 90 days | 365 days (compliance) | -| Run history | 30 days | 7 days (dev Space) | - -### Default Configurations - -Set Space-specific defaults: - -- Default delivery interface -- Default templates -- Default capture settings +| Space | Environment | +|-------------|------------------------------| +| Production | Live dashboards, real alerts | +| Staging | Test jobs, validation | +| Development | Experimental configurations | ## Administration -### Space Admins - -Space Admins can: - -- Manage jobs within their Space -- Configure Space-specific delivery interfaces -- View all reports in the Space -- Manage Space membership - -Space Admins cannot: - -- Access other Spaces (unless assigned) -- Modify global settings -- Create new Spaces - -### System Admins - -System Admins can: +Only system administrators can create and manage Spaces. Space admins can only manage resources within their assigned +Spaces. -- Create and delete Spaces -- Access all Spaces -- Manage global settings -- Override Space configurations +See [Authentication](authentication/index.md) for details on user roles and permissions. ## Best Practices -### Naming Conventions - -Use clear, consistent naming: - -``` -Good: Engineering, Marketing, Client-Acme -Bad: Space1, Test, Temp -``` - ### Permission Principle Assign minimal required permissions: -- Most users: Viewer (report access only) -- Job creators: Editor +- Most users: Space Readonly +- Job creators: Space ReadWrite - Team leads: Space Admin - IT/Operations: System Admin -### Regular Review - -- Audit Space membership quarterly -- Remove inactive users -- Review job configurations -- Check retention policies - -### Documentation - -Document each Space's purpose: - -- What team/project uses it -- What dashboards are captured -- Who receives reports -- Retention requirements - ## Next Steps - [Self Monitoring](./self-monitoring) - Monitor system health From ac5458a88c4f27b18e91e2fcf984b591f06f877e Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 19:52:22 +0100 Subject: [PATCH 13/32] chore: improve self monitoring --- docs/administration/self-monitoring.md | 137 ++++++++----------------- 1 file changed, 40 insertions(+), 97 deletions(-) diff --git a/docs/administration/self-monitoring.md b/docs/administration/self-monitoring.md index 08c2696..4d3fe67 100644 --- a/docs/administration/self-monitoring.md +++ b/docs/administration/self-monitoring.md @@ -1,92 +1,34 @@ --- sidebar_position: 3 description: Monitor Anaphora health, performance, and job metrics. Configure alerts, access logs, and integrate with Prometheus. -keywords: [self monitoring, health check, Prometheus, metrics, job monitoring, performance, Anaphora monitoring] +keywords: [ self monitoring, health check, Prometheus, metrics, job monitoring, performance, Anaphora monitoring ] --- # Self Monitoring -Monitor Anaphora's health, performance, and operational metrics. +Monitor Anaphora's health, job and delivery success. ![](images/self-monitoring.png) -## Dashboard -Access the monitoring dashboard at **Settings** > **Monitoring**. +## Health Monitoring -## Key Metrics +Access the monitoring settings at **Settings** > **Application** > **Health Monitoring**. -### System Health +### Setup Health Alerts -| Metric | Description | -|--------|-------------| -| Uptime | Time since last restart | -| Memory | Current memory usage | -| CPU | Processor utilization | -| Disk | Storage consumption | +Configure email alerts when the system detects changes in job health status. -### Job Metrics - -| Metric | Description | -|--------|-------------| -| Jobs Active | Currently running jobs | -| Jobs Scheduled | Total scheduled jobs | -| Success Rate | Percentage of successful runs | -| Avg Duration | Average job execution time | - -### Delivery Metrics - -| Metric | Description | -|--------|-------------| -| Deliveries/Hour | Reports sent per hour | -| Delivery Success | Successful delivery rate | -| Queue Depth | Pending deliveries | - -## Alerts - -Configure alerts for system issues: - -1. Go to **Monitoring** > **Alerts** -2. Set thresholds for key metrics -3. Configure notification channel -4. Enable the alert - -### Recommended Alerts - -- Job failure rate > 10% -- Memory usage > 85% -- Disk usage > 90% -- Delivery queue > 100 - -## Logs - -Access system logs: -- Application logs -- Job execution logs -- Error logs -- Audit logs - -### Log Levels - -| Level | Description | -|-------|-------------| -| ERROR | Failures requiring attention | -| WARN | Potential issues | -| INFO | Normal operations | -| DEBUG | Detailed troubleshooting | - -## Prometheus Endpoint - -Export metrics to Prometheus: - -``` -GET /metrics -``` +1. Enable **Health Alerts**. +2. Select a delivery interface and recipient email. +3. Set **Health Check Frequency**: how often to check job health. +4. Set **Maximum Notification Frequency**: minimum time between alerts (Optional). +5. Click **Save**. ## Health API Query Anaphora's health status programmatically: ``` -GET /api/health +GET /guest/api/health ``` ### Response Format @@ -94,20 +36,6 @@ GET /api/health ```json { "jobs": [ - { - "id": "533aeb70-efcc-43cc-8953-78f9c8fdc728", - "name": "Kibana Dashboard Snapshot", - "description": "Takes a snapshot of a dashboard", - "cron": "5 4 * * *", - "healthStatus": "green", - "recentRuns": [ - { "runAt": "2026-01-15T04:05:00.050Z", "state": "success" }, - { "runAt": "2026-01-14T04:05:00.040Z", "state": "success" }, - { "runAt": "2026-01-13T04:05:00.043Z", "state": "success" }, - { "runAt": "2026-01-12T04:05:00.049Z", "state": "success" }, - { "runAt": "2026-01-11T04:05:00.044Z", "state": "success" } - ] - }, { "id": "79cf54b6-df32-4b09-84f4-708ecc72b7bc", "name": "Kibana Dashboard Snapshot", @@ -115,11 +43,26 @@ GET /api/health "cron": "5 4 * * *", "healthStatus": "green", "recentRuns": [ - { "runAt": "2026-01-15T04:05:00.041Z", "state": "success" }, - { "runAt": "2026-01-14T04:05:00.051Z", "state": "success" }, - { "runAt": "2026-01-13T04:05:00.034Z", "state": "success" }, - { "runAt": "2026-01-12T04:05:00.040Z", "state": "success" }, - { "runAt": "2026-01-11T04:05:00.034Z", "state": "success" } + { + "runAt": "2026-01-15T04:05:00.041Z", + "state": "success" + }, + { + "runAt": "2026-01-14T04:05:00.051Z", + "state": "success" + }, + { + "runAt": "2026-01-13T04:05:00.034Z", + "state": "success" + }, + { + "runAt": "2026-01-12T04:05:00.040Z", + "state": "success" + }, + { + "runAt": "2026-01-11T04:05:00.034Z", + "state": "success" + } ] } ], @@ -128,9 +71,9 @@ GET /api/health "id": "4d5fba03-561e-4503-bf4d-c41817133aca", "name": "My Delivery Interface", "type": "webhook", - "healthStatus": "gray", + "healthStatus": "green", "summary24Hours": { - "totalCount": 0, + "totalCount": 11, "errorCount": 0, "errors": [] } @@ -141,12 +84,12 @@ GET /api/health ### Health Status Values -| Status | Meaning | -|--------|---------| -| **green** | All recent runs successful | -| **yellow** | Some recent failures | -| **red** | Most recent runs failed | -| **gray** | No recent activity | +| Status | Meaning | +|------------|----------------------------| +| **green** | All recent runs successful | +| **yellow** | Some recent failures | +| **red** | All recent runs failed | +| **gray** | No recent activity | ## Next Steps From 7d1378c5b2c28f9593c997d0cbfd974d5a7c4081 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 20:21:39 +0100 Subject: [PATCH 14/32] chore: improve backup page --- docs/administration/backup.md | 93 ++++++++++++++++------------------- 1 file changed, 43 insertions(+), 50 deletions(-) diff --git a/docs/administration/backup.md b/docs/administration/backup.md index ebcb341..f00d687 100644 --- a/docs/administration/backup.md +++ b/docs/administration/backup.md @@ -1,87 +1,80 @@ --- sidebar_position: 4 description: Back up Anaphora configuration, jobs, and reports. Schedule automatic backups and restore from backup files. -keywords: [Anaphora backup, configuration backup, disaster recovery, data protection, scheduled backup] +keywords: [ Anaphora backup, configuration backup, disaster recovery, data protection, scheduled backup ] --- # Backup -Protect your Anaphora configuration and data with regular backups. +Protect your Anaphora configuration and data with backups. There are three ways to back up your Anaphora instance: -## What to Back Up +1. **UI Export** - Use the UI to create and download backup files. +2. **API Export** - Use the API to programmatically export data. +3. **Docker Volume Backup** - For Docker deployments, back up the data volume directly. -| Component | Description | Priority | -|-----------|-------------|----------| -| Configuration | Jobs, templates, settings | Critical | -| Reports | Generated report files | Important | -| Database | User data, history | Critical | -| Credentials | Encrypted secrets | Critical | +:::tip +**UI Export** and **API Export** will only back up the configuration and data stored within Anaphora. +Report files are not included in these backups. So having a docker volume backup is recommended for complete data +protection. +::: -## Backup Methods +## UI Backup -### Built-in Backup +1. Access the **Settings** > **Data**. +2. Click **Export to file** to download a backup of the current configuration and data. +3. Store the backup file securely. -1. Navigate to **Settings** > **Backup** -2. Click **Create Backup** -3. Download the backup file -4. Store securely +### UI Import -### Scheduled Backups +1. Go to **Settings** > **Data** +2. Click **Import from file** +3. Upload the backup file -Configure automatic backups: - -| Setting | Description | -|---------|-------------| -| Frequency | Daily, weekly, monthly | -| Retention | Number of backups to keep | -| Location | Local or remote storage | -| Encryption | Encrypt backup files | - -### Docker Volume Backup +## Docker Volume Backup For Docker deployments, back up the data volume: ```bash docker run --rm \ - -v anaphora-data:/data \ + -v anaphora-content:/data/content \ + -v anaphora-storage:/data/storage \ -v $(pwd):/backup \ alpine tar czf /backup/anaphora-backup.tar.gz /data ``` -## Restore - -### From UI - -1. Go to **Settings** > **Backup** -2. Click **Restore** -3. Upload backup file -4. Confirm restoration - -### From Command Line +### Docker Volume Import ```bash docker run --rm \ - -v anaphora-data:/data \ + -v anaphora-content:/content \ + -v anaphora-storage:/storage \ -v $(pwd):/backup \ alpine tar xzf /backup/anaphora-backup.tar.gz -C / ``` -## Best Practices +## API Backup + +**Authentication**: Use basic auth headers with a system user. + +Get the backup via the following endpoint: + +``` +GET /guest/api/export +``` + +**Response**: A downloadable backup file in `.ana` format. -- Back up before upgrades -- Test restores regularly -- Store backups off-site -- Encrypt sensitive backups -- Document recovery procedures +### API Import -## Disaster Recovery +**Authentication**: Use basic auth headers with a system user. -Plan for disaster recovery: +Upload the backup file via the following endpoint: + +``` +POST /guest/api/import +``` -1. Identify critical data -2. Define recovery objectives (RTO/RPO) -3. Document procedures -4. Test recovery regularly +**Request Body**: `.ana` backup file as binary data. ## Next Steps From b5a47a0460d35c124ecacecb444502979812f79e Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 20 Jan 2026 20:58:39 +0100 Subject: [PATCH 15/32] chore: adjust ai providers page --- docs/administration/ai-providers.md | 284 +++------------------------- 1 file changed, 31 insertions(+), 253 deletions(-) diff --git a/docs/administration/ai-providers.md b/docs/administration/ai-providers.md index 041324e..f3c8259 100644 --- a/docs/administration/ai-providers.md +++ b/docs/administration/ai-providers.md @@ -1,12 +1,13 @@ --- sidebar_position: 3 description: Configure AI providers in Anaphora for intelligent report analysis - GPT-5.2, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, and self-hosted options. -keywords: [AI providers, GPT-5, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, vLLM, LLM integration, AI analysis] +keywords: [ AI providers, GPT-5, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, vLLM, LLM integration, AI analysis ] --- # AI Providers -Configure AI providers to enable intelligent analysis, content generation, and anomaly detection in your reports. Anaphora supports any provider implementing the OpenAI-compatible API specification. +Configure AI providers to enable intelligent analysis, content generation, and anomaly detection in your reports. +Anaphora supports any provider implementing the OpenAI-compatible API specification. ## Overview @@ -32,196 +33,25 @@ flowchart LR api -- "Analysis result" --> job ``` -## OpenAI-Compatible API - -Anaphora works with any provider implementing the OpenAI API specification. This includes: - -| Provider | Description | Self-Hosted | -|----------|-------------|-------------| -| **OpenAI** | GPT-5.2, GPT-5.1 models | No | -| **Anthropic** | Claude Opus 4.5, Sonnet 4.5, Haiku 4.5 | No | -| **xAI** | Grok 4, Grok 3 models | No | -| **Azure OpenAI** | Microsoft-hosted OpenAI models | No | -| **DeepSeek** | DeepSeek-V3.2, cost-effective reasoning | No | -| **vLLM** | Self-hosted open-source models | Yes | -| **Ollama** | Local model runner | Yes | -| **LM Studio** | Desktop model runner | Yes | - ## Configuration ### Adding a Provider -1. Navigate to **Settings** > **AI Providers** +1. Navigate to **AI Providers** 2. Click **Add Provider** 3. Configure the connection: -| Field | Description | Example | -|-------|-------------|---------| -| **Name** | Identifier for this provider | `Production GPT-5` | -| **API Endpoint** | OpenAI-compatible base URL | `https://api.openai.com/v1` | -| **API Key** | Authentication token | `sk-...` (stored encrypted) | -| **Default Model** | Model to use if not specified | `gpt-5.2` | +| Field | Description | Example | +|--------------|-------------------------------------------------------|--------------------------------| +| **Name** | Identifier for this provider | `Production GPT-5` | +| **Provider** | Type of AI provider | `OpenAI`, `DeepSeek`, `Custom` | +| **Endpoint** | OpenAI-compatible base URL (Only for custom provider) | `https://api.openai.com/v1` | +| **API Key** | Authentication token | `sk-...` (stored encrypted) | +| **Model** | Model to use. Needs API key to fetch suggestions. | `gpt-5.2` | 4. Test the connection 5. Save -### Multiple Providers - -Configure multiple providers for different use cases: - -``` -Provider: DeepSeek-V3 -├── Endpoint: https://api.deepseek.com/v1 -├── Model: deepseek-v3.2 -└── Use for: Complex analysis, reasoning tasks - -Provider: vLLM-Qwen -├── Endpoint: http://vllm.internal:8000/v1 -├── Model: Qwen3-32B-Instruct -└── Use for: High-volume processing, cost control - -Provider: OpenAI-GPT5 -├── Endpoint: https://api.openai.com/v1 -├── Model: gpt-5.2 -└── Use for: Critical reports, best quality - -Provider: Anthropic-Claude -├── Endpoint: https://api.anthropic.com/v1 -├── Model: claude-sonnet-4.5 -└── Use for: Coding analysis, agentic tasks -``` - -### Multiple Models per Provider - -Each provider can expose multiple models: - -| Provider | Available Models | -|----------|-----------------| -| OpenAI | `gpt-5.2`, `gpt-5.2-codex`, `gpt-5.1` | -| Anthropic | `claude-opus-4.5`, `claude-sonnet-4.5`, `claude-haiku-4.5` | -| xAI | `grok-4`, `grok-4-heavy`, `grok-3`, `grok-3-mini` | -| DeepSeek | `deepseek-v3.2`, `deepseek-r1` | -| vLLM | Depends on deployed models (Qwen3, Llama 4, etc.) | - -## Provider Types - -### DeepSeek - -Cost-effective models with strong reasoning capabilities. DeepSeek-V3.2 integrates thinking directly into tool-use. - -**Configuration:** -``` -Name: DeepSeek -Endpoint: https://api.deepseek.com/v1 -API Key: sk-xxxxx -Default Model: deepseek-v3.2 -``` - -**Available Models:** -- `deepseek-v3.2` — Latest flagship, thinking + tool-use integration -- `deepseek-v3.1` — Hybrid model combining V3 and R1 strengths -- `deepseek-r1` — Advanced reasoning, complex analysis - -### vLLM (Self-Hosted) - -Run open-source models on your infrastructure for data privacy and cost control. - -**Configuration:** -``` -Name: vLLM Internal -Endpoint: http://vllm-server.internal:8000/v1 -API Key: (optional, depends on deployment) -Default Model: Qwen3-32B-Instruct -``` - -**Popular Models for vLLM:** -- `Qwen3-32B-Instruct` — Strong general purpose, 128K context -- `Qwen3-235B-A22B` — Massive MoE model (22B active params) -- `Llama-4-Maverick` — Meta's multimodal MoE (17B active, 400B total) -- `Llama-4-Scout` — 10M context window (17B active, 109B total) -- `Qwen3-Coder-480B` — State-of-the-art coding (35B active) - -**Benefits:** -- Complete data privacy — data never leaves your infrastructure -- No per-token costs after initial setup -- Customizable model selection -- Low latency for internal networks - -### OpenAI - -Direct integration with OpenAI's API. GPT-5.2 is the current flagship with Instant, Thinking, and Pro variants. - -**Configuration:** -``` -Name: OpenAI -Endpoint: https://api.openai.com/v1 -API Key: sk-proj-xxxxx -Default Model: gpt-5.2 -``` - -**Available Models:** -- `gpt-5.2` — Latest flagship, best for coding and agentic tasks -- `gpt-5.2-codex` — Optimized for agentic coding workflows -- `gpt-5.1` — Previous generation (Instant and Thinking variants) - -### Anthropic Claude - -State-of-the-art models for coding, agents, and complex reasoning. Claude 4.5 series offers excellent cost-performance. - -**Configuration:** -``` -Name: Anthropic -Endpoint: https://api.anthropic.com/v1 -API Key: sk-ant-xxxxx -Default Model: claude-sonnet-4.5 -``` - -**Available Models:** -- `claude-opus-4.5` — Flagship, long-horizon autonomous tasks ($5/$25 per M tokens) -- `claude-sonnet-4.5` — Best balance of quality and cost ($3/$15 per M tokens) -- `claude-haiku-4.5` — Fast and efficient ($1/$5 per M tokens) - -### xAI Grok - -Strong reasoning models with real-time knowledge. Grok 4 is the latest flagship with 1M token context. - -**Configuration:** -``` -Name: xAI Grok -Endpoint: https://api.x.ai/v1 -API Key: xai-xxxxx -Default Model: grok-4 -``` - -**Available Models:** -- `grok-4` — Latest flagship, strong reasoning and tool use -- `grok-4-heavy` — Maximum capability variant -- `grok-3` — Previous generation, good cost-performance balance -- `grok-3-mini` — Fast responses, lower cost - -### Azure OpenAI - -Enterprise deployment through Microsoft Azure. - -**Configuration:** -``` -Name: Azure OpenAI -Endpoint: https://your-resource.openai.azure.com -API Key: xxxxx -Default Model: gpt-5 (deployment name) -``` - -## Space-Level Configuration - -AI Providers are configured per Space for isolation: - -| Space | AI Provider | Use Case | -|-------|-------------|----------| -| Production | OpenAI GPT-5.2 | Critical reports, highest quality | -| Development | vLLM Qwen3 | Testing, iteration | -| Client-Acme | DeepSeek V3.2 | Cost-effective analysis | -| Client-Beta | Claude Sonnet 4.5 | Balanced quality and cost | - ### Provider Inheritance - Each Space can have its own AI provider configuration @@ -230,25 +60,29 @@ AI Providers are configured per Space for isolation: ## Using AI in Jobs -### Composer Integration +### Job Capture Integration -Add AI-generated content blocks in the Composer: +Use AI actions in the job actions: -1. Add an **AI Analysis** block -2. Select the analysis type: - - **Summary** — Condense captured data - - **Trends** — Identify patterns over time - - **Anomalies** — Highlight unusual values - - **Custom** — Provide your own prompt +1. Edit or create a job +2. Navigate to the **Capture** tab +3. Enable advanced mode to use actions. +4. Add **AI** action +5. Configure: -3. Configure the prompt (for custom analysis) -4. Preview the output +| Field | Description | +|---------------|-----------------------------------------| +| Variable Name | Name of the variable to store AI output | +| Provider | Select the AI provider to use | +| Prompt | Define the prompt with instructions | +| Output type | Text, HTML, Number | +| Context | Choose what to include as context | ### Example: Dashboard Summary ``` -Block: AI Analysis -Type: Summary +Context: Dashboard snapshot showing system performance metrics +Type: Text Prompt: "Summarize the key metrics from this dashboard, highlighting any values that exceed normal ranges." @@ -261,70 +95,14 @@ Output: "System performance remains stable with 99.8% uptime. ### Example: Anomaly Detection ``` -Block: AI Analysis -Type: Anomaly Detection Context: Error rate visualization captured from Kibana +Type: Number +Prompt: "Identify any anomalies in the error rate data. Respond with 0 if none found. Return 1 if anomalies are detected." -Output: "⚠️ Anomaly detected: Error rate spiked to 4.2% between - 09:15-09:45 UTC, significantly above the 0.5% baseline. - This correlates with the deployment at 09:12 UTC visible - in the deployment timeline panel." +Output: 0 ``` -## Best Practices - -### Provider Selection - -| Use Case | Recommended Provider | -|----------|---------------------| -| **Security-sensitive data** | Self-hosted vLLM (Qwen3, Llama 4) | -| **Cost-sensitive high volume** | DeepSeek V3.2 or vLLM | -| **Best quality analysis** | OpenAI GPT-5.2 or Claude Opus 4.5 | -| **Coding and agentic tasks** | Claude Sonnet 4.5 or GPT-5.2-Codex | -| **Compliance requirements** | Azure OpenAI or self-hosted | - -### Prompt Engineering - -For consistent results: - -- Be specific about the desired output format -- Provide context about what the data represents -- Specify the audience (technical vs. executive) -- Include examples of good output when possible - -### Cost Management - -- Use appropriate models for each task (don't use Opus 4.5 for simple summaries — use Haiku 4.5) -- Set token limits for responses -- Monitor usage through provider dashboards -- Consider self-hosted options for high-volume use cases (Qwen3, Llama 4) - -### Reliability - -- Configure fallback providers for critical jobs -- Test AI features in development Spaces first -- Set reasonable timeout values -- Handle AI failures gracefully (jobs should complete even if AI fails) - -## Troubleshooting - -### Connection Issues - -| Issue | Solution | -|-------|----------| -| Connection timeout | Check endpoint URL, verify network access | -| 401 Unauthorized | Verify API key is correct and active | -| 429 Rate Limited | Reduce request frequency, upgrade plan | -| Model not found | Check model name matches provider's offerings | - -### Quality Issues - -| Issue | Solution | -|-------|----------| -| Poor analysis quality | Improve prompts, try different model | -| Inconsistent outputs | Add more specific instructions | -| Missing context | Ensure captured data is included | -| Hallucinations | Use more constrained prompts | +Use the output to add a condition in your job workflow for alerting. ## Next Steps From 90c7b0879f4040486e97706a134b530e2c3520ea Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 15:27:23 +0100 Subject: [PATCH 16/32] chore: adjust local auth page --- docs/administration/authentication/local.md | 122 +++++--------------- 1 file changed, 32 insertions(+), 90 deletions(-) diff --git a/docs/administration/authentication/local.md b/docs/administration/authentication/local.md index 6e077d1..76cf78c 100644 --- a/docs/administration/authentication/local.md +++ b/docs/administration/authentication/local.md @@ -1,19 +1,20 @@ --- sidebar_position: 1 description: Configure local authentication with Anaphora's built-in user database for username and password login. -keywords: [local authentication, user management, password policy, built-in users] +keywords: [ local authentication, user management, password policy, built-in users ] --- # Local Authentication + ![](images/local.png) -Default authentication using Anaphora's built-in user database. Ideal for small teams, testing environments, or deployments without enterprise identity providers. +Default authentication using Anaphora's built-in user database. Ideal for small teams, testing environments, or +deployments without enterprise identity providers. ## Overview Local authentication provides: - **Built-in user database** — No external dependencies -- **Password policies** — Configurable security requirements - **User management UI** — Easy administration - **Quick setup** — Works out of the box @@ -21,114 +22,55 @@ Local authentication provides: ### Adding Users -1. Navigate to **Settings** > **Users** -2. Click **Add User** +1. Navigate to **Settings** > **System Settings** > **Auth** > **Local** +2. Click **Add New User** 3. Enter username, email, and password -4. Assign roles and Space memberships -5. Save +4. Assign roles +5. Choose user type: Normal user or system user +6. Save ### User Properties -| Field | Description | Required | -|-------|-------------|----------| -| Username | Unique login identifier | Yes | -| Email | User email address | Yes | -| Display Name | Friendly name shown in UI | No | -| Password | Initial password | Yes | -| System Role | Access level for system settings | Yes | -| Roles | Assigned permissions | Yes | -| Spaces | Space memberships | No | +| Field | Description | Required | +|-------------|---------------------------------|----------| +| Username | Unique login identifier | Yes | +| Password | Initial password | Yes | +| Roles | Assigned permission groups | No | +| System Role | User or system user designation | Yes | ### System Role The **System Role** controls access to system-wide settings: -| Role | Description | -|------|-------------| -| **user** | Normal user, cannot access system settings | -| **system** | Can access and modify system settings | +| Role | Description | +|------------|--------------------------------------------------------------------------------| +| **user** | Normal user, cannot access system settings | +| **system** | Can access and modify system settings. Has automatically access to all spaces. | :::note -System settings include authentication configuration, AI providers, backup settings, and other global options. Most users should have the `user` role. +System settings include authentication configuration, space configuration, backup settings, and other global options. +Most users should have the `user` role. ::: -### Editing Users - -1. Go to **Settings** > **Users** -2. Click on the user to edit -3. Update properties as needed -4. Save changes +### Managing Local Users -### Removing Users - -1. Go to **Settings** > **Users** -2. Select the user to remove -3. Click **Delete** -4. Confirm deletion +All local users will be managed by the system user alone. Users cannot modify their own accounts. +System users can change the password or add roles to existing users. The system user can also delete the local users. :::warning Deleting a user removes their access immediately. Jobs created by the user will remain. ::: -## Password Policy - -Configure password requirements for local users: - -| Setting | Description | Recommended | -|---------|-------------|-------------| -| Minimum length | Required character count | 12+ characters | -| Complexity | Uppercase, lowercase, numbers, symbols | Enable all | -| Expiration | Force password change after X days | 90 days | -| History | Prevent reuse of recent passwords | Last 5 passwords | - -### Configuring Password Policy - -1. Go to **Settings** > **Security** -2. Navigate to **Password Policy** -3. Set requirements -4. Save - -### Password Change - -Users can change their own password: - -1. Click user menu (top right) -2. Select **Change Password** -3. Enter current and new password -4. Confirm - -Administrators can reset passwords: - -1. Go to **Settings** > **Users** -2. Select the user -3. Click **Reset Password** -4. Send reset link or set temporary password - ## When to Use Local Auth -| Scenario | Recommendation | -|----------|----------------| -| Small team (under 10 users) | Local auth is sufficient | -| Testing/development | Local auth for simplicity | -| No corporate IdP available | Local auth as primary method | -| Enterprise environment | Consider LDAP, SAML, or OIDC | -| Compliance requirements | Use enterprise SSO | - -## Best Practices - -- Use strong, unique passwords -- Enable password complexity requirements -- Set reasonable expiration periods -- Review user list regularly -- Remove inactive accounts promptly - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Forgot password | Admin can reset via Settings > Users | -| Account locked | Admin unlocks via Settings > Users | -| Login fails | Verify username and password case sensitivity | +| Scenario | Recommendation | +|-----------------------------|------------------------------| +| Small team (under 10 users) | Local auth is sufficient | +| Testing/development | Local auth for simplicity | +| No corporate IdP available | Local auth as primary method | +| System user | Local is required | +| Enterprise environment | Consider LDAP, SAML, or OIDC | +| Compliance requirements | Use enterprise SSO | ## Next Steps From c6d340705ce3412d72546c2bcb507b71872539c4 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 16:04:10 +0100 Subject: [PATCH 17/32] chore: improve ldap page --- docs/administration/authentication/ldap.md | 163 +++++---------------- 1 file changed, 36 insertions(+), 127 deletions(-) diff --git a/docs/administration/authentication/ldap.md b/docs/administration/authentication/ldap.md index c9c4d79..ae65e03 100644 --- a/docs/administration/authentication/ldap.md +++ b/docs/administration/authentication/ldap.md @@ -1,13 +1,15 @@ --- sidebar_position: 2 description: Configure LDAP and Active Directory authentication for Anaphora enterprise deployments. -keywords: [LDAP, Active Directory, AD, directory integration, enterprise authentication] +keywords: [ LDAP, Active Directory, AD, directory integration, enterprise authentication ] --- # LDAP / Active Directory -Connect to your enterprise directory for centralized user management. Supports Microsoft Active Directory, OpenLDAP, and other LDAP-compliant directories. +Connect to your enterprise directory for centralized user management. Supports Microsoft Active Directory, OpenLDAP, and +other LDAP-compliant directories. ![](images/ldap.png) + ## Overview LDAP integration provides: @@ -19,85 +21,40 @@ LDAP integration provides: ## Configuration -Navigate to **Settings** > **Authentication** > **LDAP** to configure. - -### Connection Settings - -| Field | Description | Example | -|-------|-------------|---------| -| Server URL | LDAP server address | `ldaps://ldap.company.com:636` | -| Base DN | Search base for users | `dc=company,dc=com` | -| Bind DN | Service account for queries | `cn=anaphora,ou=service,dc=company,dc=com` | -| Bind Password | Service account password | (stored encrypted) | -| Connection Timeout | Max connection wait time | `10` seconds | -| Read Timeout | Max response wait time | `30` seconds | - -### User Search Settings - -| Field | Description | Example | -|-------|-------------|---------| -| User Base DN | Where to search for users | `ou=users,dc=company,dc=com` | -| User Filter | LDAP query for users | `(&(objectClass=user)(sAMAccountName={0}))` | -| Username Attribute | Attribute for login | `sAMAccountName` | - -### Group Settings (Optional) - -| Field | Description | Example | -|-------|-------------|---------| -| Group Base DN | Where to search for groups | `ou=groups,dc=company,dc=com` | -| Group Filter | Query for user's groups | `(&(objectClass=group)(member={0}))` | -| Group Name Attribute | Attribute for group name | `cn` | - -## Attribute Mapping - -Map LDAP attributes to Anaphora user properties: - -| Anaphora Field | Active Directory | OpenLDAP | -|----------------|------------------|----------| -| Username | `sAMAccountName` | `uid` | -| Email | `mail` | `mail` | -| Display Name | `displayName` | `cn` | -| Groups | `memberOf` | `memberOf` | - -### Mapping Configuration - -``` -Username Attribute: sAMAccountName -Email Attribute: mail -Display Name Attribute: displayName -Group Membership Attribute: memberOf -``` - -## Group-Based Roles - -Map LDAP groups to Anaphora roles for automatic permission assignment. - -### Example Mappings - -``` -LDAP Group: CN=Anaphora-Admins,OU=Groups,DC=company,DC=com - → Anaphora Role: Admin - -LDAP Group: CN=Anaphora-Editors,OU=Groups,DC=company,DC=com - → Anaphora Role: Editor +Navigate to **Settings** > **System Settings** > **Auth** > **LDAP** to configure. + +| Field | Description | Example | Required | +|---------------------|--------------------------------|----------------------------------------|----------| +| URL | LDAP server address | `ldap://ldap.forumsys.com:389` | Yes | +| Bind DN | Service account for binding | `cn=read-only-admin,dc=example,dc=com` | Yes | +| Bind credentials | Service account password | (stored securely) | Yes | +| Search base | Base DN for user search | `dc=example,dc=com` | Yes | +| Search filter | LDAP filter for user lookup | `uid={{username}}` | Yes | +| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | +| Group search filter | LDAP filter for groups | `(member={{cn}})` | No | +| Group name property | Attribute for group name | `cn` | No | +| Reject unauthorized | Enforce TLS certificate checks | `false` (unchecked) | No | +| CA | Certificate authority | base64-encoded PEM | No | +| Key | Client private key | base64-encoded PEM | No | +| Certificate | Client certificate | base64-encoded PEM | No | + +### Group to Role Mapping + +Use the group search to retrieve LDAP groups and map them to Anaphora roles. +In the **group search filter**, use `{{}}` placeholders to reference attributes from the login user. +Use the **Group name property** to specify which attribute will be used as the mapped role name. -LDAP Group: CN=Anaphora-Viewers,OU=Groups,DC=company,DC=com - → Anaphora Role: Viewer -``` - -### Space Membership +### SSL/TLS Configuration -Map groups to Space access: +For secure connections use LDAPS (port 636): -``` -LDAP Group: CN=Team-Alpha,OU=Teams,DC=company,DC=com - → Space: Alpha Team Reports - → Role: Editor +| Protocol | Port | Security | +|----------|------|-------------------------------| +| LDAP | 389 | Unencrypted (not recommended) | +| LDAPS | 636 | SSL/TLS encrypted | +| StartTLS | 389 | Upgraded to TLS | -LDAP Group: CN=Team-Beta,OU=Teams,DC=company,DC=com - → Space: Beta Team Reports - → Role: Viewer -``` +Provide CA, Key, and Certificate fields for TLS client authentication if required by your LDAP server. ## Active Directory Specifics @@ -110,60 +67,12 @@ Create a dedicated service account for Anaphora: 3. Grant "Read all user information" permission 4. No need for admin privileges -### Common User Filters - -| Scenario | Filter | -|----------|--------| -| All users | `(&(objectClass=user)(sAMAccountName={0}))` | -| Enabled users only | `(&(objectClass=user)(sAMAccountName={0})(!(userAccountControl:1.2.840.113556.1.4.803:=2)))` | -| Specific OU | `(&(objectClass=user)(sAMAccountName={0})(memberOf=CN=Anaphora-Users,OU=Groups,DC=company,DC=com))` | - -### SSL/TLS Configuration - -Always use LDAPS (port 636) for secure connections: - -| Protocol | Port | Security | -|----------|------|----------| -| LDAP | 389 | Unencrypted (not recommended) | -| LDAPS | 636 | SSL/TLS encrypted | -| StartTLS | 389 | Upgraded to TLS | - -## Testing - -### Test Connection - -1. Click **Test Connection** to verify server connectivity -2. Verify "Connection successful" message -3. Check bind credentials are working - -### Test User Search - -1. Enter a known username -2. Click **Test User Search** -3. Verify user attributes are returned correctly - -### Test Authentication - -1. Enter test username and password -2. Click **Test Login** -3. Verify authentication succeeds and groups are retrieved - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Connection refused | Check server URL and port, verify firewall rules | -| Bind failed | Verify bind DN and password, check account is not locked | -| User not found | Check base DN and user filter, verify user exists | -| Groups not mapped | Verify group filter and group DN, check membership attribute | -| SSL certificate error | Import CA certificate or use trusted certificate | - ### Debug Mode Enable LDAP debug logging: -1. Go to **Settings** > **System** > **Logging** -2. Set LDAP log level to DEBUG +1. Go to **Settings** > **System Settings** > **General** > **General** +2. Set **Log Level** to `debug` 3. Reproduce the issue 4. Review logs for detailed LDAP communication From 3b33184f36c48e3f02394c1b22afaf5eff2328a4 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 19:42:43 +0100 Subject: [PATCH 18/32] chore: improve example pages --- docs/basic-examples/index.md | 14 +++--- docs/basic-examples/kibana-alert.md | 43 +++++++++---------- .../basic-examples/kibana-dashboard-report.md | 11 ++--- 3 files changed, 32 insertions(+), 36 deletions(-) diff --git a/docs/basic-examples/index.md b/docs/basic-examples/index.md index 266bbff..5f797f4 100644 --- a/docs/basic-examples/index.md +++ b/docs/basic-examples/index.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Step-by-step Anaphora tutorials for Kibana PDF reports, Grafana dashboard scheduling, and conditional alerts. Practical examples with complete configurations. -keywords: [Kibana PDF report, Grafana scheduled report, dashboard alert, Elasticsearch report, tutorial] +keywords: [ Kibana PDF report, Grafana scheduled report, dashboard alert, Elasticsearch report, tutorial ] --- # Basic Examples - Kibana & Grafana Report Tutorials @@ -10,12 +10,12 @@ Learn Anaphora through practical examples. Each example walks you through creati ## Available Examples -| Example | Description | -|---------|-------------| -| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | -| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | -| [Conditional Report](./basic-examples/conditional-report) | Reports that only send when criteria match | -| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | +| Example | Description | +|-----------------------------------------------------------------------|------------------------------------------------------| +| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | +| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | +| [Conditional Report](./basic-examples/conditional-report) | Reports that only send when criteria match | +| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | ## Prerequisites diff --git a/docs/basic-examples/kibana-alert.md b/docs/basic-examples/kibana-alert.md index b098b3b..0190bfd 100644 --- a/docs/basic-examples/kibana-alert.md +++ b/docs/basic-examples/kibana-alert.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Create conditional Kibana alerts with Slack notifications when error thresholds are exceeded using Anaphora. -keywords: [Kibana alert, conditional notification, Slack alert, error threshold, Anaphora alerting] +keywords: [ Kibana alert, conditional notification, Slack alert, error threshold, Anaphora alerting ] --- # Kibana Alert @@ -10,11 +10,12 @@ Create an alert that notifies you when specific conditions are met in your Kiban ## Goal -Send a Slack notification when the error count in your logs exceeds 100 in the last hour. +Send a notification when the error count in your logs exceeds 100 in the last hour. ## Concept In Anaphora, **an alert is a conditional report**. You create alerts by: + 1. Capturing data from Kibana 2. Evaluating conditions 3. Only delivering the report when conditions are met @@ -23,36 +24,33 @@ In Anaphora, **an alert is a conditional report**. You create alerts by: ### 1. Create a New Job -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Error Rate Alert" +1. Navigate to **Jobs** +2. Click **Create New Job** ### 2. Configure General Settings - **Frequency**: Every 5 minutes (`*/5 * * * *`) -- **Throttling**: 1 hour (avoid notification fatigue) +- **Max notify frequency**: 3 hours (avoid notification fatigue) :::tip Why Throttling? -Even if errors persist every 5 minutes, you'll only get one notification per hour. +Even if errors persist every 5 minutes, you'll only get one notification in 3 hours. ::: -### 3. Set Up Advanced Capture - -1. Toggle **Advanced** mode on -2. Add actions: +### 3. Set Up Capture -``` -Navigate → Kibana Discover (filtered for errors, last 1 hour) -Wait for visible → .euiDataGrid__content -Capture value → [data-test-subj="discoverQueryHits"] → $errorCount -Conditional block → $errorCount > 100: - └── Capture snapshot → Dashboard screenshot -``` +1. Select **Kibana** as the connector +2. Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` +3. Choose authentication method: **ReadonlyREST** and add credentials +4. Check **Deliver report only if conditions are met** +5. Set Hits to be greater than `100` ### 4. Configure Delivery -1. Select **Slack** as delivery interface -2. Choose the alert channel -3. Message: `Alert: {{$errorCount}} errors in the last hour` +1. Select a delivery interface +2. Modify the body: `Alert: {{kibanaDiscoverHits}} errors in the last hour` ### 5. Test and Save @@ -62,8 +60,9 @@ Conditional block → $errorCount > 100: ## Result -You'll receive Slack alerts only when error count exceeds your threshold, with at most one notification per hour. +You'll receive alerts only when error count exceeds your threshold, with at most one notification per hour. ## Next Steps -- [Conditional Report](./conditional-report) - More complex conditions +- [Conditional Report](./conditional-report) - Need to also take a dashboard screenshot when the condition is met? See + how to use actions for conditional reports. diff --git a/docs/basic-examples/kibana-dashboard-report.md b/docs/basic-examples/kibana-dashboard-report.md index c649e53..2f1b29d 100644 --- a/docs/basic-examples/kibana-dashboard-report.md +++ b/docs/basic-examples/kibana-dashboard-report.md @@ -18,21 +18,19 @@ Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM 1. Navigate to **Jobs** in the sidebar 2. Click **Create New Job** -3. Enter a name: "Daily Dashboard Report" ### 2. Configure General Settings - **Frequency**: Daily at 9:00 AM (or use CRON: `0 9 * * *`) -- **Description**: "Morning dashboard snapshot for the team" ### 3. Set Up Capture 1. Select **Kibana** as the connector 2. Enter your dashboard URL: - ``` - https://your-kibana.example.com/app/dashboards#/view/abc123 - ``` -3. Choose authentication method: **ReadonlyREST** + ``` + https://your-kibana.example.com/app/dashboards#/view/abc123 + ``` +3. Choose authentication method: **ReadonlyREST** and add credentials 4. Set time range: "Last 24 hours" ### 4. Configure Composition @@ -45,7 +43,6 @@ Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM 1. Select **Email** as delivery interface (needs to be configured first in **Delivery Interfaces**) 2. Add recipient email addresses -3. Set subject line: `Daily Dashboard Report` ### 6. Test and Save From 6ffba3ddb0d37b374455f30f85663e11339b1e95 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 21:42:00 +0100 Subject: [PATCH 19/32] chore: improve grafana page --- docs/advanced-examples/index.md | 12 ++++---- ...tical-alert.md => kibana-anomaly-alert.md} | 2 +- .../advanced-examples/mixed-sources-report.md | 4 --- .../grafana-dashboard-report.md | 30 +++++++------------ docs/basic-examples/kibana-alert.md | 8 +++-- 5 files changed, 22 insertions(+), 34 deletions(-) rename docs/advanced-examples/{kibana-statistical-alert.md => kibana-anomaly-alert.md} (98%) diff --git a/docs/advanced-examples/index.md b/docs/advanced-examples/index.md index c6ec4d7..3b1f9fd 100644 --- a/docs/advanced-examples/index.md +++ b/docs/advanced-examples/index.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Advanced Anaphora examples - multi-source reports, statistical alerts, AI-powered news collation, and branded PDF reports for enterprise use. -keywords: [advanced Kibana reports, multi-source dashboards, statistical alerts, branded reports, AI report generation] +keywords: [ advanced Kibana reports, multi-source dashboards, statistical alerts, branded reports, AI report generation ] --- # Advanced Examples - Enterprise Reporting Scenarios @@ -10,12 +10,12 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|---------|-------------| +| Example | Description | +|------------------------------------------------------------------|-----------------------------------------------------| | [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Statistical Alert](./advanced-examples/kibana-statistical-alert) | Alerts based on statistical analysis | -| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | -| [Branded Reports](./advanced-examples/branded-reports) | Professional reports with custom branding | +| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | +| [Branded Reports](./advanced-examples/branded-reports) | Professional reports with custom branding | ## Prerequisites diff --git a/docs/advanced-examples/kibana-statistical-alert.md b/docs/advanced-examples/kibana-anomaly-alert.md similarity index 98% rename from docs/advanced-examples/kibana-statistical-alert.md rename to docs/advanced-examples/kibana-anomaly-alert.md index 5d7a6f1..00e8afc 100644 --- a/docs/advanced-examples/kibana-statistical-alert.md +++ b/docs/advanced-examples/kibana-anomaly-alert.md @@ -4,7 +4,7 @@ description: Create sophisticated Kibana alerts based on statistical analysis an keywords: [statistical alert, trend detection, Kibana analytics, anomaly detection, Anaphora statistics] --- -# Kibana Statistical Alert +# Kibana Anomaly Alert Create alerts based on statistical analysis and trend detection. diff --git a/docs/advanced-examples/mixed-sources-report.md b/docs/advanced-examples/mixed-sources-report.md index cfa37d8..1a6f083 100644 --- a/docs/advanced-examples/mixed-sources-report.md +++ b/docs/advanced-examples/mixed-sources-report.md @@ -64,7 +64,3 @@ Send the combined report to your executive team. - Use consistent time ranges across sources - Consider adding summary text between sections - Test each source individually before combining - -## Next Steps - -- [Kibana Statistical Alert](./kibana-statistical-alert) - Advanced alerting diff --git a/docs/basic-examples/grafana-dashboard-report.md b/docs/basic-examples/grafana-dashboard-report.md index 1a9cd9c..9301e4c 100644 --- a/docs/basic-examples/grafana-dashboard-report.md +++ b/docs/basic-examples/grafana-dashboard-report.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 description: Capture and deliver scheduled Grafana dashboard reports with Anaphora for infrastructure monitoring. -keywords: [Grafana report, dashboard capture, infrastructure monitoring, scheduled report, Anaphora Grafana] +keywords: [ Grafana report, dashboard capture, infrastructure monitoring, scheduled report, Anaphora Grafana ] --- # Grafana Dashboard Report @@ -16,46 +16,36 @@ Send a daily infrastructure health report from Grafana to your ops team. ### 1. Create a New Job -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Infrastructure Health Report" +1. Navigate to **Jobs** +2. Click **Create New Job** ### 2. Configure General Settings - **Frequency**: Daily at 7:00 AM -- **Description**: "Daily infrastructure metrics from Grafana" ### 3. Set Up Capture -1. Select **Grafana** as the connector (or Generic URL) +1. Select **Grafana** as the connector 2. Enter your Grafana dashboard URL: - ``` - https://grafana.example.com/d/abc123/infrastructure?orgId=1 - ``` -3. Configure authentication (API key or basic auth) -4. Set time range parameters in the URL if needed + ``` + https://grafana.example.com/d/abc123/infrastructure?orgId=1 + ``` +3. Set **Authentication** to `Grafana` and add credentials ### 4. Configure Composition 1. Choose how to arrange captured panels -2. Select PDF or image output format -3. Add custom header with date/time +2. Add texts or headers as needed ### 5. Set Up Delivery 1. Choose delivery interface (Email, Slack, etc.) 2. Configure recipients -3. Set appropriate subject/message ### 6. Test and Save Verify the capture looks correct and save. -## Tips for Grafana - -- Use the `kiosk=tv` URL parameter for cleaner captures -- Set explicit time ranges in URL for consistent reports -- Consider capturing individual panels for more control - ## Next Steps -- [Advanced Examples](../advanced-examples/) - Complex multi-source reports +- [Advanced Examples](../advanced-examples/) - Unlock more complex report scenarios diff --git a/docs/basic-examples/kibana-alert.md b/docs/basic-examples/kibana-alert.md index 0190bfd..562d1a6 100644 --- a/docs/basic-examples/kibana-alert.md +++ b/docs/basic-examples/kibana-alert.md @@ -40,9 +40,9 @@ Even if errors persist every 5 minutes, you'll only get one notification in 3 ho 1. Select **Kibana** as the connector 2. Enter your Kibana discover URL: - ``` - https://kibana.example.com/app/discover#/view/your-view-id - ``` + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` 3. Choose authentication method: **ReadonlyREST** and add credentials 4. Check **Deliver report only if conditions are met** 5. Set Hits to be greater than `100` @@ -66,3 +66,5 @@ You'll receive alerts only when error count exceeds your threshold, with at most - [Conditional Report](./conditional-report) - Need to also take a dashboard screenshot when the condition is met? See how to use actions for conditional reports. +- [Kibana Anomaly Alert](../advanced-examples/kibana-anomaly-alert.md) - Need to compare current events to previous + events for anomaly detection? See this example for triggering alerts when events deviate from normal patterns. From 530dd7d5ab185a2b46c4ecbf8ca2b78fd02b8a6e Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 22:10:25 +0100 Subject: [PATCH 20/32] chore: improve conditional report --- docs/basic-examples/conditional-report.md | 159 +++++++--------------- docs/basic-examples/kibana-alert.md | 16 ++- 2 files changed, 57 insertions(+), 118 deletions(-) diff --git a/docs/basic-examples/conditional-report.md b/docs/basic-examples/conditional-report.md index 58a3e28..8dd20de 100644 --- a/docs/basic-examples/conditional-report.md +++ b/docs/basic-examples/conditional-report.md @@ -1,137 +1,70 @@ --- sidebar_position: 3 description: Create intelligent alerts that trigger when conditions are met, with AI-powered root cause analysis and detailed PDF reports. -keywords: [Anaphora alerts, conditional alerting, AI root cause analysis, multi-system monitoring, intelligent notifications] +keywords: [ Anaphora alerts, conditional alerting, AI root cause analysis, multi-system monitoring, intelligent notifications ] --- -# Intelligent Alerting +# Conditional Report -Create alerts that monitor your systems and notify you only when specific conditions are met — with AI-powered analysis to help identify root causes. +Create reports that will only be built and delivered when specific conditions are met. -## The Alerting Concept +## Goal -In Anaphora, **an alert is a conditional report**. Instead of sending notifications blindly, Anaphora: +In this example, we will check the Kibana discover page for error logs. Then we will capture a snapshot of a dashboard. +The report with the captured dashboard will only be delivered if the number of errors exceeds a defined threshold. -1. **Captures** data from one or more systems (dashboards, metrics, logs) -2. **Evaluates** conditions based on extracted values -3. **Analyzes** the situation using AI (optional) -4. **Delivers** a detailed PDF with context, not just a notification +## Steps -The result: operators receive actionable intelligence, not just "something is wrong." +### 1. Create a new job -## Why PDF Alerts? +1. Navigate to **Jobs** +2. Click **Create New Job** -Traditional alerting tools send a message: *"Error rate exceeded 5%"* +### 2. Configure General Settings -Anaphora sends a **complete situation report**: -- Screenshots of affected dashboards at the moment of the issue -- Extracted metrics and values that triggered the alert -- AI-generated analysis suggesting possible root causes -- Historical context from multiple data sources +- **Frequency**: Every hour +- **Max Notify Frequency**: 12 hours -## Use Cases +### 3. Set Up Capture -| Scenario | What Anaphora Captures | AI Analysis | -|----------|------------------------|-------------| -| Error spike | Error dashboard + log samples | "Error pattern suggests database connection timeout" | -| Performance degradation | APM metrics + infrastructure stats | "CPU spike correlates with deployment at 14:32" | -| Security anomaly | Auth logs + network traffic | "Unusual login pattern from new geographic region" | -| Business threshold | Revenue dashboard + inventory | "Sales drop coincides with payment gateway errors" | +1. Enable **Advanced** mode to build a conditional workflow +2. In the preexisting **Navigate**-action: + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials +3. Add a **Capture value** action to extract the number of error logs: + - Set the **variable name** to something like `error_count` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +4. Add a **Conditional block** to check if the error count is smaller than the threshold: + - Choose **Variable**: `error_count` + - Set **Condition operation** to `Lesser than` + - Set **Condition value** to `100` +5. Inside the conditional block, add a **Break** action to stop execution if the condition is met (i.e., error count is + below threshold) +6. Add another **Navigate** action + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/dashboards#/view/your-dashboard-id + ``` + - Ensure that **Take Snapshot** is checked and set the configuration properly -## Example: Multi-System Alert +### 4. Compose the Report -Monitor your stack and get intelligent alerts when things go wrong. +1. Add the captured snapshot +2. If desired, add a text block with the `{{error_count}}` variable to show the number of errors +3. Add headers and other text as needed -### 1. Create the Alert Job +### 5. Set Up Delivery -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Infrastructure Health Alert" -3. Set frequency: Every 5 minutes (`*/5 * * * *`) -4. Set throttling: 1 hour (avoid notification fatigue) - -### 2. Configure Multi-System Capture - -Toggle **Advanced** mode and build a workflow that checks multiple sources: - -``` -Navigate → Grafana infrastructure dashboard -Capture value → CPU usage element → $cpuUsage -Capture value → Error rate element → $errorRate -Capture snapshot → Dashboard overview - -Navigate → Kibana error logs -Capture value → Error count (last 5 min) → $recentErrors -Capture snapshot → Error log view - -Conditional block → $cpuUsage > 80 OR $errorRate > 5 OR $recentErrors > 100: - ├── AI Analysis → "Analyze these metrics and screenshots..." - └── (Continue to Compose/Deliver) -Break → (If all conditions are healthy, stop here) -``` - -### 3. Add AI Analysis - -In the capture workflow, add an **AI Analysis** action: - -``` -Prompt: "Analyze the captured dashboards and metrics: -- CPU: {{$cpuUsage}}% -- Error rate: {{$errorRate}}% -- Recent errors: {{$recentErrors}} - -Based on the visual data and these metrics, identify: -1. The most likely root cause -2. Which systems are affected -3. Recommended immediate actions" -``` - -The AI examines both the **screenshots** and the **extracted values** to provide contextual analysis. - -### 4. Compose the Alert Report - -Design a PDF that gives operators everything they need: - -- **Header**: Alert timestamp and severity -- **AI Summary**: Root cause analysis and recommendations -- **Dashboard Screenshots**: Visual state at time of alert -- **Raw Metrics**: Extracted values that triggered the alert -- **Context**: Links to relevant dashboards for further investigation - -### 5. Configure Delivery - -Send alerts to the right people: -- **Email**: On-call team with PDF attachment -- **Slack**: Alert channel with summary and PDF link -- **Webhook**: Integrate with PagerDuty, Opsgenie, or custom systems - -## How It Works - -```mermaid -flowchart LR - capture["Capture
Multi-system data"] - condition["Evaluate
Check thresholds"] - ai["AI Analysis
Root cause reasoning"] - compose["Compose
Build PDF report"] - deliver["Deliver
Notify operators"] - - capture --> condition - condition -->|"Thresholds exceeded"| ai - condition -->|"All healthy"| stop["Stop
No notification"] - ai --> compose --> deliver -``` - -The **Break** action stops execution when conditions are healthy. No alert fatigue — only actionable notifications. - -## Best Practices - -- **Combine sources**: Capture from multiple systems for complete context -- **Use throttling**: Prevent notification storms during ongoing incidents -- **Include raw data**: AI analysis is helpful, but operators need the numbers too -- **Set clear thresholds**: Start conservative, tune based on real incidents -- **Test the workflow**: Use the Test button to verify conditions trigger correctly +1. Select **Email** as delivery interface (needs to be configured first in **Delivery Interfaces**) +2. Add recipient email addresses ## Next Steps - [Grafana Dashboard Report](./grafana-dashboard-report) - Add Grafana to your monitoring - [AI Analysis](../advanced-examples/ai-news-collation) - More AI-powered workflows -- [Notification Throttling](../jobs/general#notification-throttling) - Control alert frequency diff --git a/docs/basic-examples/kibana-alert.md b/docs/basic-examples/kibana-alert.md index 562d1a6..8975a9d 100644 --- a/docs/basic-examples/kibana-alert.md +++ b/docs/basic-examples/kibana-alert.md @@ -40,19 +40,25 @@ Even if errors persist every 5 minutes, you'll only get one notification in 3 ho 1. Select **Kibana** as the connector 2. Enter your Kibana discover URL: - ``` - https://kibana.example.com/app/discover#/view/your-view-id - ``` + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` 3. Choose authentication method: **ReadonlyREST** and add credentials 4. Check **Deliver report only if conditions are met** 5. Set Hits to be greater than `100` -### 4. Configure Delivery +### 4. Compose the Alert Report + +1. Add a text block +2. Edit the text and include `{{kibanaDiscoverHits}}` to show the number of errors +3. Add headers and other text as needed + +### 5. Configure Delivery 1. Select a delivery interface 2. Modify the body: `Alert: {{kibanaDiscoverHits}} errors in the last hour` -### 5. Test and Save +### 6. Test and Save 1. **Test** the job to verify the workflow 2. Check that conditions evaluate correctly From e858398fda4951b22811eea13d39192bbe848c13 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 22:13:37 +0100 Subject: [PATCH 21/32] chore: improve advanced examples page --- docs/advanced-examples/ai-news-collation.md | 4 -- docs/advanced-examples/branded-reports.md | 80 --------------------- docs/advanced-examples/index.md | 1 - 3 files changed, 85 deletions(-) delete mode 100644 docs/advanced-examples/branded-reports.md diff --git a/docs/advanced-examples/ai-news-collation.md b/docs/advanced-examples/ai-news-collation.md index e534564..40a70e6 100644 --- a/docs/advanced-examples/ai-news-collation.md +++ b/docs/advanced-examples/ai-news-collation.md @@ -66,7 +66,3 @@ Send to subscribers via email with a clean, readable format. - Filter out duplicates across sources - Set appropriate content length limits - Include source attribution - -## Next Steps - -- [Branded Reports](./branded-reports) - Professional report styling diff --git a/docs/advanced-examples/branded-reports.md b/docs/advanced-examples/branded-reports.md deleted file mode 100644 index 152d627..0000000 --- a/docs/advanced-examples/branded-reports.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -sidebar_position: 4 -description: Create professional branded reports with custom logos, colors, and templates for external stakeholders. -keywords: [branded reports, custom templates, professional PDF, white-label reports, Anaphora branding] ---- - -# Branded Reports - -Create professional, branded reports for external stakeholders. - -## Goal - -Generate polished reports with your company's branding for client delivery. - -## Use Cases - -- Client-facing SLA reports -- Partner performance summaries -- Board presentations -- Compliance documentation - -## Branding Elements - -### Logo and Colors - -Configure your brand assets in Settings: -- Company logo (header/footer) -- Primary and secondary colors -- Font preferences - -### Report Templates - -Create custom templates that include: -- Branded header with logo -- Consistent color scheme -- Professional typography -- Branded footer with contact info - -## Steps - -### 1. Set Up Brand Assets - -1. Navigate to **Settings** > **Branding** -2. Upload your logo -3. Configure color palette -4. Set default fonts - -### 2. Create a Branded Template - -1. Go to **Templates** > **Create New** -2. Design your layout with brand elements -3. Add placeholder sections for dynamic content -4. Save as "Client Report Template" - -### 3. Create the Job - -1. Create a new job for client reporting -2. Configure capture for relevant metrics -3. Select your branded template in Composition -4. Add dynamic fields: client name, date range, etc. - -### 4. Configure Professional Delivery - -- Use PDF format for attachments -- Include personalized email body -- Consider adding cover page - -## Template Variables - -Use variables for personalization: - -| Variable | Description | -|----------|-------------| -| `{{client_name}}` | Client company name | -| `{{report_period}}` | Date range | -| `{{generated_date}}` | Report generation date | - -## Next Steps - -- [Jobs](../jobs/) - Deep dive into job configuration diff --git a/docs/advanced-examples/index.md b/docs/advanced-examples/index.md index 3b1f9fd..78f055a 100644 --- a/docs/advanced-examples/index.md +++ b/docs/advanced-examples/index.md @@ -15,7 +15,6 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. | [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | | [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | | [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | -| [Branded Reports](./advanced-examples/branded-reports) | Professional reports with custom branding | ## Prerequisites From 6b71bcc47571347f530dd8b9c5697d574383c061 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 22:21:23 +0100 Subject: [PATCH 22/32] chore: improve mixed sources report --- .../advanced-examples/mixed-sources-report.md | 86 ++++++++++--------- sidebars.ts | 3 +- .../version-stable-sidebars.json | 1 - 3 files changed, 47 insertions(+), 43 deletions(-) diff --git a/docs/advanced-examples/mixed-sources-report.md b/docs/advanced-examples/mixed-sources-report.md index 1a6f083..026b3eb 100644 --- a/docs/advanced-examples/mixed-sources-report.md +++ b/docs/advanced-examples/mixed-sources-report.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Combine data from multiple sources like Kibana and Grafana into a single unified report using Anaphora. -keywords: [multi-source report, combined dashboard, Kibana Grafana, unified report, Anaphora advanced] +keywords: [ multi-source report, combined dashboard, Kibana Grafana, unified report, Anaphora advanced ] --- # Mixed Sources Report @@ -11,6 +11,7 @@ Create reports that combine data from multiple sources into a single deliverable ## Goal Generate a weekly executive report combining: + - Kibana: Application metrics dashboard - Grafana: Infrastructure health - Web page: Service status page @@ -25,42 +26,47 @@ Generate a weekly executive report combining: ### 1. Create a New Job -Name it: "Weekly Executive Summary" - -### 2. Configure Advanced Capture - -Build a multi-source workflow: - -``` -# Source 1: Kibana Application Metrics -Navigate → Kibana dashboard URL -Wait for visible → .dashboard-container -Capture snapshot → $appMetrics - -# Source 2: Grafana Infrastructure -Navigate → Grafana dashboard URL -Wait for visible → .react-grid-layout -Capture snapshot → $infraMetrics - -# Source 3: Status Page -Navigate → https://status.example.com -Capture snapshot → $statusPage -``` - -### 3. Configure Composition - -Arrange the three captures in your report template: -1. Header with date and title -2. Application metrics section -3. Infrastructure metrics section -4. Status page summary - -### 4. Deliver - -Send the combined report to your executive team. - -## Tips - -- Use consistent time ranges across sources -- Consider adding summary text between sections -- Test each source individually before combining +1. Navigate to **Jobs** +2. Click **Create New Job** + +### 2. Configure General Settings + +- **Frequency**: Weekly on Mondays at 8:00 AM + +### 3. Set Up Advanced Capture + +1. Enable **Advanced** mode to build a multi-capture workflow +2. Edit the preexisting **Navigate**-action: + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/dashboards#/view/application-metrics + ``` + - Choose authentication method: **ReadonlyREST** and add credentials + - Ensure **Take Snapshot** is checked +3. Add a second **Navigate** action: + - Select **Grafana** as the connector + - Enter your Grafana dashboard URL: + ``` + https://grafana.example.com/d/xyz789/infrastructure-health?orgId=1 + ``` + - Set **Authentication** to `Grafana` and add credentials + - Ensure **Take Snapshot** is checked +4. Add a third **Navigate** action: + - Select **Web Page** as the connector + - Enter your service status page URL: + ``` + https://status.example.com + ``` + - No authentication needed + - Ensure **Take Snapshot** is checked + +### 4. Configure Composition + +1. Add all three captured snapshots to the report +2. Arrange them in the desired order +3. Add headers and explanatory text as needed + +### 4. Configure Delivery + +- Add delivery interface and configure recipients diff --git a/sidebars.ts b/sidebars.ts index 8838111..adb166b 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -38,9 +38,8 @@ const sidebars: SidebarsConfig = { }, items: [ 'advanced-examples/mixed-sources-report', - 'advanced-examples/kibana-statistical-alert', + 'advanced-examples/kibana-anomaly-alert', 'advanced-examples/ai-news-collation', - 'advanced-examples/branded-reports', ], }, { diff --git a/versioned_sidebars/version-stable-sidebars.json b/versioned_sidebars/version-stable-sidebars.json index 50594a3..59620e0 100644 --- a/versioned_sidebars/version-stable-sidebars.json +++ b/versioned_sidebars/version-stable-sidebars.json @@ -38,7 +38,6 @@ "advanced-examples/mixed-sources-report", "advanced-examples/kibana-statistical-alert", "advanced-examples/ai-news-collation", - "advanced-examples/branded-reports" ] }, { From 9dddfa9dacd10bd08275e172dcf548135a989e53 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 22:28:32 +0100 Subject: [PATCH 23/32] chore: improve ai news collation --- docs/advanced-examples/ai-news-collation.md | 54 +++++++-------------- 1 file changed, 17 insertions(+), 37 deletions(-) diff --git a/docs/advanced-examples/ai-news-collation.md b/docs/advanced-examples/ai-news-collation.md index 40a70e6..8a2ae47 100644 --- a/docs/advanced-examples/ai-news-collation.md +++ b/docs/advanced-examples/ai-news-collation.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Use AI to aggregate, summarize, and deliver curated content from multiple sources with Anaphora. -keywords: [AI summarization, news aggregation, content curation, LLM reports, Anaphora AI] +keywords: [ AI summarization, news aggregation, content curation, LLM reports, Anaphora AI ] --- # AI News Collation @@ -23,46 +23,26 @@ Create a daily digest that collects articles from multiple sources and provides ### 1. Create the Job -Name it: "Daily Industry Digest" +1. Navigate to **Jobs** +2. Click **Create New Job** -### 2. Configure Multi-Source Capture +### 2. Configure Capture -``` -# Source 1: Tech news site -Navigate → https://news.example.com/industry -Capture value → .article-titles → $headlines1 - -# Source 2: Blog aggregator -Navigate → https://blogs.example.com/feed -Capture value → .post-summaries → $headlines2 - -# Source 3: Reddit/HN -Navigate → https://reddit.com/r/industry -Capture value → .post-titles → $headlines3 -``` - -### 3. AI Processing - -Configure AI summarization in the composition phase: -- Combine captured content -- Generate executive summary -- Highlight key trends -- Create actionable insights +1. Enable **Advanced** mode +2. Add multiple **Navigate** actions for each source: + - Ensure that **Take Snapshot** is checked +3. Add **AI** action to process captured content + - Set prompt to: + ``` + Summarize the following articles into an executive summary, highlighting key trends and actionable insights + ``` + - Ensure that all context is included ### 4. Compose the Digest -Structure your report: -1. AI-generated executive summary -2. Top stories by category -3. Trending topics -4. Full article links - -### 5. Deliver - -Send to subscribers via email with a clean, readable format. +1. Include the AI-generated summary +2. Add other text blocks as needed -## Tips +### 5. Configure Delivery -- Filter out duplicates across sources -- Set appropriate content length limits -- Include source attribution +- Add delivery interface and configure recipients From 11f942018b47bd08c453bf3a183ab86f14c80bf6 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Wed, 21 Jan 2026 22:35:30 +0100 Subject: [PATCH 24/32] chore: kibana anomaly --- .../advanced-examples/kibana-anomaly-alert.md | 84 ++++++++++--------- 1 file changed, 43 insertions(+), 41 deletions(-) diff --git a/docs/advanced-examples/kibana-anomaly-alert.md b/docs/advanced-examples/kibana-anomaly-alert.md index 00e8afc..e2bb01b 100644 --- a/docs/advanced-examples/kibana-anomaly-alert.md +++ b/docs/advanced-examples/kibana-anomaly-alert.md @@ -1,16 +1,16 @@ --- sidebar_position: 2 description: Create sophisticated Kibana alerts based on statistical analysis and trend detection with Anaphora. -keywords: [statistical alert, trend detection, Kibana analytics, anomaly detection, Anaphora statistics] +keywords: [ statistical alert, trend detection, Kibana analytics, anomaly detection, Anaphora statistics ] --- # Kibana Anomaly Alert -Create alerts based on statistical analysis and trend detection. +Create alerts based on deviation from previous data. ## Goal -Alert when metrics deviate significantly from their normal baseline. +Alert when metrics deviate significantly from the previous time window. ## Use Cases @@ -22,44 +22,46 @@ Alert when metrics deviate significantly from their normal baseline. ### 1. Create the Job -Name it: "Response Time Anomaly Alert" - -### 2. Configure Advanced Capture - -``` -# Capture current value -Navigate → Kibana dashboard with avg response time -Capture value → [data-test-subj="avgResponseTime"] → $current - -# Capture baseline (you might get this from a saved search) -Navigate → Kibana baseline metrics -Capture value → [data-test-subj="baselineAvg"] → $baseline - -# Calculate deviation -Calculate → (($current - $baseline) / $baseline) * 100 → $deviation - -# Alert if deviation exceeds threshold -Conditional block → $deviation > 50: - ├── Capture snapshot → Full dashboard - └── Continue to delivery -Break -``` - -### 3. Configure Delivery - -- **Channel**: Slack or PagerDuty webhook -- **Message**: `Response time anomaly: {{$current}}ms ({{$deviation}}% above baseline)` - -### 4. Set Throttling - -Set appropriate throttling to avoid alert fatigue during prolonged incidents. - -## Advanced: Rolling Averages - -For more sophisticated analysis, consider: -- Capturing multiple time periods -- Calculating standard deviation -- Using percentile-based thresholds +1. Navigate to **Jobs** +2. Click **Create New Job** + +### 2. Configure General Settings + +- **Frequency**: Every 15 minutes +- **Max Notify Frequency**: 3 hours + +### 3. Configure Advanced Capture + +1. Enable **Advanced** mode +2. In the preexisting **Navigate**-action: + - select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials + - Set time range to 30 minutes to 15 minutes ago +3. Add a **Capture value** action to extract the metric to monitor: + - Set the **variable name** to something like `previous_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +4. Add another **Navigate** action to get the current value: + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Ensure time range is set to last 15 minutes +5. Add another **Capture value** action to extract the current metric: + - Set the **variable name** to something like `current_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +6. Add a **Calculate** action to compute the percentage change: + - Set **Operation** to `Percentage Change` + +### 4. Configure Delivery + +- Add delivery interface and configure recipients ## Next Steps From 35f423638792d3fb39cfb1c2b0dacb8d1c2e9edb Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 21:35:28 +0100 Subject: [PATCH 25/32] chore: improve kibana anomaly detection page --- .../advanced-examples/kibana-anomaly-alert.md | 52 ++++++++++++------- docs/basic-examples/index.md | 12 ++--- docs/basic-examples/kibana-alert.md | 2 +- ...report.md => kibana-conditional-report.md} | 45 +++++++++------- .../basic-examples/kibana-dashboard-report.md | 11 ++-- sidebars.ts | 2 +- 6 files changed, 73 insertions(+), 51 deletions(-) rename docs/basic-examples/{conditional-report.md => kibana-conditional-report.md} (63%) diff --git a/docs/advanced-examples/kibana-anomaly-alert.md b/docs/advanced-examples/kibana-anomaly-alert.md index e2bb01b..5434b5c 100644 --- a/docs/advanced-examples/kibana-anomaly-alert.md +++ b/docs/advanced-examples/kibana-anomaly-alert.md @@ -8,6 +8,11 @@ keywords: [ statistical alert, trend detection, Kibana analytics, anomaly detect Create alerts based on deviation from previous data. +:::tip Kibana Anomaly Detection Template +The **Kibana Anomaly Alert** Template demonstrates this example for the Kibana demo instance. You can use it as a +starting point for your own anomaly detection jobs. +::: + ## Goal Alert when metrics deviate significantly from the previous time window. @@ -34,30 +39,37 @@ Alert when metrics deviate significantly from the previous time window. 1. Enable **Advanced** mode 2. In the preexisting **Navigate**-action: - - select **Kibana** as the connector - - Enter your Kibana dashboard URL: - ``` - https://kibana.example.com/app/discover#/view/your-view-id - ``` - - Choose authentication method: **ReadonlyREST** and add credentials - - Set time range to 30 minutes to 15 minutes ago + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials + - Set time range to 30 minutes to 15 minutes ago 3. Add a **Capture value** action to extract the metric to monitor: - - Set the **variable name** to something like `previous_value` - - Set **capture template** to `Kibana discover hits` - - Set **Variable type** to `Number` + - Set the **variable name** to something like `previous_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` 4. Add another **Navigate** action to get the current value: - - Select **Kibana** as the connector - - Enter your Kibana dashboard URL: - ``` - https://kibana.example.com/app/discover#/view/your-view-id - ``` - - Ensure time range is set to last 15 minutes + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Set time range to last 15 minutes 5. Add another **Capture value** action to extract the current metric: - - Set the **variable name** to something like `current_value` - - Set **capture template** to `Kibana discover hits` - - Set **Variable type** to `Number` + - Set the **variable name** to something like `current_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` 6. Add a **Calculate** action to compute the percentage change: - - Set **Operation** to `Percentage Change` + - Set **Variable name** to something like `percent_change` + - Set **Operation** to `round(abs((current_value - previous_value) / previous_value) * 100)` +7. Add a **Conditional block** to check if the percentage change is below the threshold: + - Choose **Variable**: `percent_change` + - Set **Condition operation** to `Lesser than` + - Set **Condition value** to `20` (for 20% change) +8. Inside the conditional block, add a **Break** action to stop execution if the condition is met (i.e., change is below + threshold) ### 4. Configure Delivery diff --git a/docs/basic-examples/index.md b/docs/basic-examples/index.md index 5f797f4..95f8571 100644 --- a/docs/basic-examples/index.md +++ b/docs/basic-examples/index.md @@ -10,12 +10,12 @@ Learn Anaphora through practical examples. Each example walks you through creati ## Available Examples -| Example | Description | -|-----------------------------------------------------------------------|------------------------------------------------------| -| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | -| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | -| [Conditional Report](./basic-examples/conditional-report) | Reports that only send when criteria match | -| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | +| Example | Description | +|-------------------------------------------------------------------------|------------------------------------------------------| +| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | +| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | +| [Kibana Conditional Report](./basic-examples/kibana-conditional-report) | Reports that only send when criteria match | +| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | ## Prerequisites diff --git a/docs/basic-examples/kibana-alert.md b/docs/basic-examples/kibana-alert.md index 8975a9d..ba195e3 100644 --- a/docs/basic-examples/kibana-alert.md +++ b/docs/basic-examples/kibana-alert.md @@ -70,7 +70,7 @@ You'll receive alerts only when error count exceeds your threshold, with at most ## Next Steps -- [Conditional Report](./conditional-report) - Need to also take a dashboard screenshot when the condition is met? See +- [Kibana Conditional Report](./kibana-conditional-report) - Need to also take a dashboard screenshot when the condition is met? See how to use actions for conditional reports. - [Kibana Anomaly Alert](../advanced-examples/kibana-anomaly-alert.md) - Need to compare current events to previous events for anomaly detection? See this example for triggering alerts when events deviate from normal patterns. diff --git a/docs/basic-examples/conditional-report.md b/docs/basic-examples/kibana-conditional-report.md similarity index 63% rename from docs/basic-examples/conditional-report.md rename to docs/basic-examples/kibana-conditional-report.md index 8dd20de..5c2e403 100644 --- a/docs/basic-examples/conditional-report.md +++ b/docs/basic-examples/kibana-conditional-report.md @@ -4,10 +4,15 @@ description: Create intelligent alerts that trigger when conditions are met, wit keywords: [ Anaphora alerts, conditional alerting, AI root cause analysis, multi-system monitoring, intelligent notifications ] --- -# Conditional Report +# Kibana Conditional Report Create reports that will only be built and delivered when specific conditions are met. +:::tip Kibana Conditional Snapshot Template +The **Kibana Conditional Snapshot** Template demonstrates this example for the Kibana demo instance. You can +use it as a starting point for your own conditional reporting jobs. +::: + ## Goal In this example, we will check the Kibana discover page for error logs. Then we will capture a snapshot of a dashboard. @@ -29,29 +34,29 @@ The report with the captured dashboard will only be delivered if the number of e 1. Enable **Advanced** mode to build a conditional workflow 2. In the preexisting **Navigate**-action: - - select **Kibana** as the connector - - Enter your Kibana discover URL: - ``` - https://kibana.example.com/app/discover#/view/your-view-id - ``` - - Choose authentication method: **ReadonlyREST** and add credentials + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials 3. Add a **Capture value** action to extract the number of error logs: - - Set the **variable name** to something like `error_count` - - Set **capture template** to `Kibana discover hits` - - Set **Variable type** to `Number` + - Set the **variable name** to something like `error_count` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` 4. Add a **Conditional block** to check if the error count is smaller than the threshold: - - Choose **Variable**: `error_count` - - Set **Condition operation** to `Lesser than` - - Set **Condition value** to `100` + - Choose **Variable**: `error_count` + - Set **Condition operation** to `Lesser than` + - Set **Condition value** to `100` 5. Inside the conditional block, add a **Break** action to stop execution if the condition is met (i.e., error count is - below threshold) + below threshold) 6. Add another **Navigate** action - - Select **Kibana** as the connector - - Enter your Kibana dashboard URL: - ``` - https://kibana.example.com/app/dashboards#/view/your-dashboard-id - ``` - - Ensure that **Take Snapshot** is checked and set the configuration properly + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/dashboards#/view/your-dashboard-id + ``` + - Ensure that **Take Snapshot** is checked and set the configuration properly ### 4. Compose the Report diff --git a/docs/basic-examples/kibana-dashboard-report.md b/docs/basic-examples/kibana-dashboard-report.md index 2f1b29d..4cbc17e 100644 --- a/docs/basic-examples/kibana-dashboard-report.md +++ b/docs/basic-examples/kibana-dashboard-report.md @@ -8,6 +8,11 @@ keywords: [ Kibana report tutorial, scheduled dashboard, PDF email, Anaphora exa Create a scheduled report that captures your Kibana dashboard and delivers it via email. +:::tip Kibana Dashboard Snapshot Template +The **Kibana Dashboard Snapshot** Template demonstrates this example for the Kibana demo instance. You can use it as a +starting point for your own dashboard reporting jobs. +::: + ## Goal Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM. @@ -27,9 +32,9 @@ Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM 1. Select **Kibana** as the connector 2. Enter your dashboard URL: - ``` - https://your-kibana.example.com/app/dashboards#/view/abc123 - ``` + ``` + https://your-kibana.example.com/app/dashboards#/view/abc123 + ``` 3. Choose authentication method: **ReadonlyREST** and add credentials 4. Set time range: "Last 24 hours" diff --git a/sidebars.ts b/sidebars.ts index adb166b..a452c43 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -25,7 +25,7 @@ const sidebars: SidebarsConfig = { items: [ 'basic-examples/kibana-dashboard-report', 'basic-examples/kibana-alert', - 'basic-examples/conditional-report', + 'basic-examples/kibana-conditional-report', 'basic-examples/grafana-dashboard-report', ], }, From 67949c6c1de8ac568534427cc831f9087c284d8a Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 21:37:34 +0100 Subject: [PATCH 26/32] revert: changes on version stable --- versioned_sidebars/version-stable-sidebars.json | 1 + 1 file changed, 1 insertion(+) diff --git a/versioned_sidebars/version-stable-sidebars.json b/versioned_sidebars/version-stable-sidebars.json index 59620e0..50594a3 100644 --- a/versioned_sidebars/version-stable-sidebars.json +++ b/versioned_sidebars/version-stable-sidebars.json @@ -38,6 +38,7 @@ "advanced-examples/mixed-sources-report", "advanced-examples/kibana-statistical-alert", "advanced-examples/ai-news-collation", + "advanced-examples/branded-reports" ] }, { From 706001302564f004c964de9bb30f88e2cf8e35d7 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 21:53:19 +0100 Subject: [PATCH 27/32] feat: extend changelog --- docs/changelog.md | 113 ++++------------------------------------------ 1 file changed, 8 insertions(+), 105 deletions(-) diff --git a/docs/changelog.md b/docs/changelog.md index de94fdd..74fc1d2 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,7 +1,7 @@ --- sidebar_position: 8 description: Anaphora release notes and changelog. New features, enhancements, bug fixes, and security updates for Kibana/Grafana report automation. -keywords: [Anaphora changelog, release notes, new features, updates, version history] +keywords: [ Anaphora changelog, release notes, new features, updates, version history ] --- # Changelog - Anaphora Release Notes @@ -15,115 +15,18 @@ All notable changes to Anaphora are documented here. - 🧐 **Enhancement** - Improvements to existing features - 🐞 **Fix** - Bug fixes ---- - -## [Unreleased] - -### 🚀 New Feature: Documentation restructure - -
-Complete reorganization of documentation structure - -The documentation has been restructured for better navigation and discoverability: -- New "Basic Examples" and "Advanced Examples" sections -- Dedicated "Jobs" section with detailed component documentation -- Expanded "Delivery Interfaces" with per-interface guides -- New "Administration" section for security and operations -- Added changelog page +## [0.9.0] - 2026-01-15 -
- ---- - -## [1.0.0] - 2024-12-01 - -### 🚀 New Feature: Kibana dashboard capture - -
-Automated screenshot capture from Kibana dashboards - -Anaphora can now capture screenshots from Kibana dashboards, Canvas workpads, and Discover pages. Features include: -- Automatic detection of Kibana page types -- Time range configuration -- Multiple authentication methods -- Full page or viewport capture modes - -
- -### 🚀 New Feature: Grafana support +### 🚀 New Feature: Grafana Connector
Capture and report on Grafana dashboards -Full support for Grafana dashboard capture: -- API key authentication -- Panel-level capture -- Time range parameter support -- Kiosk mode for cleaner captures - -
- -### 🚀 New Feature: Conditional alerts - -
-Send reports only when conditions are met - -Create alerts that only trigger when specific criteria match: -- Extract values from pages into variables -- Perform calculations on captured data -- Conditional execution blocks -- Break action to skip report delivery - -
- -### 🚀 New Feature: Multi-channel delivery - -
-Deliver reports via email, Slack, or webhooks - -Multiple delivery options: -- SMTP email with attachment support -- Mailgun API integration -- Slack workspace integration with rich formatting -- Webhook delivery for custom integrations - -
- -### 🚀 New Feature: Multi-tenant spaces - -
-Isolate jobs and reports by team or project - -Workspace isolation for enterprise deployments: -- Separate jobs and reports per space -- Role-based access control -- Independent retention policies -- User assignment to multiple spaces - -
- -### 🚀 New Feature: Authentication providers - -
-Support for LDAP, SAML, and local authentication - -Enterprise authentication options: -- Local username/password authentication -- LDAP/Active Directory integration -- SAML 2.0 SSO (Okta, Azure AD, OneLogin) -- Role mapping from identity providers - -
- -### 🚀 New Feature: Report templates and branding - -
-Custom branded reports for professional delivery +With the new Grafana connector, Anaphora supports an out-of-the-box experience for capturing Grafana dashboards. +Features include: -Brand your reports: -- Custom logo placement -- Color scheme configuration -- Template variables for personalization -- PDF and image output formats +- Configurable authentication using the Grafana credentials +- Capture entire dashboards with automatic waiting for panels to load +- Capture individual panels for granular reporting
From 1148d0e8dbf63e89881e0658b48850f7a2286ce2 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 22:29:53 +0100 Subject: [PATCH 28/32] chore: upgrade stable version --- .../administration/ai-providers.md | 284 ++---------------- .../administration/authentication/index.md | 128 +++----- .../administration/authentication/ldap.md | 163 +++------- .../administration/authentication/local.md | 122 ++------ .../version-stable/administration/backup.md | 93 +++--- .../administration/images/space-selector.png | Bin 0 -> 4937 bytes .../version-stable/administration/index.md | 136 +-------- .../administration/self-monitoring.md | 137 +++------ .../version-stable/administration/spaces.md | 204 +++---------- .../advanced-examples/ai-news-collation.md | 58 ++-- .../advanced-examples/branded-reports.md | 80 ----- .../version-stable/advanced-examples/index.md | 11 +- .../advanced-examples/kibana-anomaly-alert.md | 80 +++++ .../kibana-statistical-alert.md | 66 ---- .../advanced-examples/mixed-sources-report.md | 90 +++--- .../basic-examples/conditional-report.md | 137 --------- .../grafana-dashboard-report.md | 30 +- .../version-stable/basic-examples/index.md | 14 +- .../basic-examples/kibana-alert.md | 53 ++-- .../kibana-conditional-report.md | 75 +++++ .../basic-examples/kibana-dashboard-report.md | 28 +- versioned_docs/version-stable/changelog.md | 113 +------ .../version-stable/data-retention/index.md | 112 +------ .../version-stable/data-retention/reports.md | 28 +- .../version-stable/data-retention/runs.md | 33 +- .../delivery-interfaces/index.md | 74 +---- .../delivery-interfaces/mailgun.md | 29 +- .../version-stable/delivery-interfaces/s3.md | 129 ++------ .../delivery-interfaces/slack.md | 47 +-- .../delivery-interfaces/smtp.md | 28 +- .../delivery-interfaces/webhook.md | 80 ++--- .../getting-started/configuration.md | 46 +-- .../getting-started/features.md | 98 +++--- .../getting-started/images/activationkey.png | Bin 0 -> 1112809 bytes .../getting-started/installation.md | 39 ++- versioned_docs/version-stable/jobs/capture.md | 123 ++++---- .../version-stable/jobs/composer.md | 256 ++-------------- .../version-stable/jobs/delivery.md | 247 +++------------ versioned_docs/version-stable/jobs/general.md | 121 +++----- versioned_docs/version-stable/jobs/index.md | 2 +- .../version-stable-sidebars.json | 7 +- 41 files changed, 949 insertions(+), 2652 deletions(-) create mode 100644 versioned_docs/version-stable/administration/images/space-selector.png delete mode 100644 versioned_docs/version-stable/advanced-examples/branded-reports.md create mode 100644 versioned_docs/version-stable/advanced-examples/kibana-anomaly-alert.md delete mode 100644 versioned_docs/version-stable/advanced-examples/kibana-statistical-alert.md delete mode 100644 versioned_docs/version-stable/basic-examples/conditional-report.md create mode 100644 versioned_docs/version-stable/basic-examples/kibana-conditional-report.md create mode 100644 versioned_docs/version-stable/getting-started/images/activationkey.png diff --git a/versioned_docs/version-stable/administration/ai-providers.md b/versioned_docs/version-stable/administration/ai-providers.md index 041324e..f3c8259 100644 --- a/versioned_docs/version-stable/administration/ai-providers.md +++ b/versioned_docs/version-stable/administration/ai-providers.md @@ -1,12 +1,13 @@ --- sidebar_position: 3 description: Configure AI providers in Anaphora for intelligent report analysis - GPT-5.2, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, and self-hosted options. -keywords: [AI providers, GPT-5, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, vLLM, LLM integration, AI analysis] +keywords: [ AI providers, GPT-5, Claude 4.5, Grok 4, DeepSeek V3, Qwen3, Llama 4, vLLM, LLM integration, AI analysis ] --- # AI Providers -Configure AI providers to enable intelligent analysis, content generation, and anomaly detection in your reports. Anaphora supports any provider implementing the OpenAI-compatible API specification. +Configure AI providers to enable intelligent analysis, content generation, and anomaly detection in your reports. +Anaphora supports any provider implementing the OpenAI-compatible API specification. ## Overview @@ -32,196 +33,25 @@ flowchart LR api -- "Analysis result" --> job ``` -## OpenAI-Compatible API - -Anaphora works with any provider implementing the OpenAI API specification. This includes: - -| Provider | Description | Self-Hosted | -|----------|-------------|-------------| -| **OpenAI** | GPT-5.2, GPT-5.1 models | No | -| **Anthropic** | Claude Opus 4.5, Sonnet 4.5, Haiku 4.5 | No | -| **xAI** | Grok 4, Grok 3 models | No | -| **Azure OpenAI** | Microsoft-hosted OpenAI models | No | -| **DeepSeek** | DeepSeek-V3.2, cost-effective reasoning | No | -| **vLLM** | Self-hosted open-source models | Yes | -| **Ollama** | Local model runner | Yes | -| **LM Studio** | Desktop model runner | Yes | - ## Configuration ### Adding a Provider -1. Navigate to **Settings** > **AI Providers** +1. Navigate to **AI Providers** 2. Click **Add Provider** 3. Configure the connection: -| Field | Description | Example | -|-------|-------------|---------| -| **Name** | Identifier for this provider | `Production GPT-5` | -| **API Endpoint** | OpenAI-compatible base URL | `https://api.openai.com/v1` | -| **API Key** | Authentication token | `sk-...` (stored encrypted) | -| **Default Model** | Model to use if not specified | `gpt-5.2` | +| Field | Description | Example | +|--------------|-------------------------------------------------------|--------------------------------| +| **Name** | Identifier for this provider | `Production GPT-5` | +| **Provider** | Type of AI provider | `OpenAI`, `DeepSeek`, `Custom` | +| **Endpoint** | OpenAI-compatible base URL (Only for custom provider) | `https://api.openai.com/v1` | +| **API Key** | Authentication token | `sk-...` (stored encrypted) | +| **Model** | Model to use. Needs API key to fetch suggestions. | `gpt-5.2` | 4. Test the connection 5. Save -### Multiple Providers - -Configure multiple providers for different use cases: - -``` -Provider: DeepSeek-V3 -├── Endpoint: https://api.deepseek.com/v1 -├── Model: deepseek-v3.2 -└── Use for: Complex analysis, reasoning tasks - -Provider: vLLM-Qwen -├── Endpoint: http://vllm.internal:8000/v1 -├── Model: Qwen3-32B-Instruct -└── Use for: High-volume processing, cost control - -Provider: OpenAI-GPT5 -├── Endpoint: https://api.openai.com/v1 -├── Model: gpt-5.2 -└── Use for: Critical reports, best quality - -Provider: Anthropic-Claude -├── Endpoint: https://api.anthropic.com/v1 -├── Model: claude-sonnet-4.5 -└── Use for: Coding analysis, agentic tasks -``` - -### Multiple Models per Provider - -Each provider can expose multiple models: - -| Provider | Available Models | -|----------|-----------------| -| OpenAI | `gpt-5.2`, `gpt-5.2-codex`, `gpt-5.1` | -| Anthropic | `claude-opus-4.5`, `claude-sonnet-4.5`, `claude-haiku-4.5` | -| xAI | `grok-4`, `grok-4-heavy`, `grok-3`, `grok-3-mini` | -| DeepSeek | `deepseek-v3.2`, `deepseek-r1` | -| vLLM | Depends on deployed models (Qwen3, Llama 4, etc.) | - -## Provider Types - -### DeepSeek - -Cost-effective models with strong reasoning capabilities. DeepSeek-V3.2 integrates thinking directly into tool-use. - -**Configuration:** -``` -Name: DeepSeek -Endpoint: https://api.deepseek.com/v1 -API Key: sk-xxxxx -Default Model: deepseek-v3.2 -``` - -**Available Models:** -- `deepseek-v3.2` — Latest flagship, thinking + tool-use integration -- `deepseek-v3.1` — Hybrid model combining V3 and R1 strengths -- `deepseek-r1` — Advanced reasoning, complex analysis - -### vLLM (Self-Hosted) - -Run open-source models on your infrastructure for data privacy and cost control. - -**Configuration:** -``` -Name: vLLM Internal -Endpoint: http://vllm-server.internal:8000/v1 -API Key: (optional, depends on deployment) -Default Model: Qwen3-32B-Instruct -``` - -**Popular Models for vLLM:** -- `Qwen3-32B-Instruct` — Strong general purpose, 128K context -- `Qwen3-235B-A22B` — Massive MoE model (22B active params) -- `Llama-4-Maverick` — Meta's multimodal MoE (17B active, 400B total) -- `Llama-4-Scout` — 10M context window (17B active, 109B total) -- `Qwen3-Coder-480B` — State-of-the-art coding (35B active) - -**Benefits:** -- Complete data privacy — data never leaves your infrastructure -- No per-token costs after initial setup -- Customizable model selection -- Low latency for internal networks - -### OpenAI - -Direct integration with OpenAI's API. GPT-5.2 is the current flagship with Instant, Thinking, and Pro variants. - -**Configuration:** -``` -Name: OpenAI -Endpoint: https://api.openai.com/v1 -API Key: sk-proj-xxxxx -Default Model: gpt-5.2 -``` - -**Available Models:** -- `gpt-5.2` — Latest flagship, best for coding and agentic tasks -- `gpt-5.2-codex` — Optimized for agentic coding workflows -- `gpt-5.1` — Previous generation (Instant and Thinking variants) - -### Anthropic Claude - -State-of-the-art models for coding, agents, and complex reasoning. Claude 4.5 series offers excellent cost-performance. - -**Configuration:** -``` -Name: Anthropic -Endpoint: https://api.anthropic.com/v1 -API Key: sk-ant-xxxxx -Default Model: claude-sonnet-4.5 -``` - -**Available Models:** -- `claude-opus-4.5` — Flagship, long-horizon autonomous tasks ($5/$25 per M tokens) -- `claude-sonnet-4.5` — Best balance of quality and cost ($3/$15 per M tokens) -- `claude-haiku-4.5` — Fast and efficient ($1/$5 per M tokens) - -### xAI Grok - -Strong reasoning models with real-time knowledge. Grok 4 is the latest flagship with 1M token context. - -**Configuration:** -``` -Name: xAI Grok -Endpoint: https://api.x.ai/v1 -API Key: xai-xxxxx -Default Model: grok-4 -``` - -**Available Models:** -- `grok-4` — Latest flagship, strong reasoning and tool use -- `grok-4-heavy` — Maximum capability variant -- `grok-3` — Previous generation, good cost-performance balance -- `grok-3-mini` — Fast responses, lower cost - -### Azure OpenAI - -Enterprise deployment through Microsoft Azure. - -**Configuration:** -``` -Name: Azure OpenAI -Endpoint: https://your-resource.openai.azure.com -API Key: xxxxx -Default Model: gpt-5 (deployment name) -``` - -## Space-Level Configuration - -AI Providers are configured per Space for isolation: - -| Space | AI Provider | Use Case | -|-------|-------------|----------| -| Production | OpenAI GPT-5.2 | Critical reports, highest quality | -| Development | vLLM Qwen3 | Testing, iteration | -| Client-Acme | DeepSeek V3.2 | Cost-effective analysis | -| Client-Beta | Claude Sonnet 4.5 | Balanced quality and cost | - ### Provider Inheritance - Each Space can have its own AI provider configuration @@ -230,25 +60,29 @@ AI Providers are configured per Space for isolation: ## Using AI in Jobs -### Composer Integration +### Job Capture Integration -Add AI-generated content blocks in the Composer: +Use AI actions in the job actions: -1. Add an **AI Analysis** block -2. Select the analysis type: - - **Summary** — Condense captured data - - **Trends** — Identify patterns over time - - **Anomalies** — Highlight unusual values - - **Custom** — Provide your own prompt +1. Edit or create a job +2. Navigate to the **Capture** tab +3. Enable advanced mode to use actions. +4. Add **AI** action +5. Configure: -3. Configure the prompt (for custom analysis) -4. Preview the output +| Field | Description | +|---------------|-----------------------------------------| +| Variable Name | Name of the variable to store AI output | +| Provider | Select the AI provider to use | +| Prompt | Define the prompt with instructions | +| Output type | Text, HTML, Number | +| Context | Choose what to include as context | ### Example: Dashboard Summary ``` -Block: AI Analysis -Type: Summary +Context: Dashboard snapshot showing system performance metrics +Type: Text Prompt: "Summarize the key metrics from this dashboard, highlighting any values that exceed normal ranges." @@ -261,70 +95,14 @@ Output: "System performance remains stable with 99.8% uptime. ### Example: Anomaly Detection ``` -Block: AI Analysis -Type: Anomaly Detection Context: Error rate visualization captured from Kibana +Type: Number +Prompt: "Identify any anomalies in the error rate data. Respond with 0 if none found. Return 1 if anomalies are detected." -Output: "⚠️ Anomaly detected: Error rate spiked to 4.2% between - 09:15-09:45 UTC, significantly above the 0.5% baseline. - This correlates with the deployment at 09:12 UTC visible - in the deployment timeline panel." +Output: 0 ``` -## Best Practices - -### Provider Selection - -| Use Case | Recommended Provider | -|----------|---------------------| -| **Security-sensitive data** | Self-hosted vLLM (Qwen3, Llama 4) | -| **Cost-sensitive high volume** | DeepSeek V3.2 or vLLM | -| **Best quality analysis** | OpenAI GPT-5.2 or Claude Opus 4.5 | -| **Coding and agentic tasks** | Claude Sonnet 4.5 or GPT-5.2-Codex | -| **Compliance requirements** | Azure OpenAI or self-hosted | - -### Prompt Engineering - -For consistent results: - -- Be specific about the desired output format -- Provide context about what the data represents -- Specify the audience (technical vs. executive) -- Include examples of good output when possible - -### Cost Management - -- Use appropriate models for each task (don't use Opus 4.5 for simple summaries — use Haiku 4.5) -- Set token limits for responses -- Monitor usage through provider dashboards -- Consider self-hosted options for high-volume use cases (Qwen3, Llama 4) - -### Reliability - -- Configure fallback providers for critical jobs -- Test AI features in development Spaces first -- Set reasonable timeout values -- Handle AI failures gracefully (jobs should complete even if AI fails) - -## Troubleshooting - -### Connection Issues - -| Issue | Solution | -|-------|----------| -| Connection timeout | Check endpoint URL, verify network access | -| 401 Unauthorized | Verify API key is correct and active | -| 429 Rate Limited | Reduce request frequency, upgrade plan | -| Model not found | Check model name matches provider's offerings | - -### Quality Issues - -| Issue | Solution | -|-------|----------| -| Poor analysis quality | Improve prompts, try different model | -| Inconsistent outputs | Add more specific instructions | -| Missing context | Ensure captured data is included | -| Hallucinations | Use more constrained prompts | +Use the output to add a condition in your job workflow for alerting. ## Next Steps diff --git a/versioned_docs/version-stable/administration/authentication/index.md b/versioned_docs/version-stable/administration/authentication/index.md index 496c14b..96c0703 100644 --- a/versioned_docs/version-stable/administration/authentication/index.md +++ b/versioned_docs/version-stable/administration/authentication/index.md @@ -1,114 +1,64 @@ --- sidebar_position: 1 description: Configure Anaphora authentication - local users, LDAP, SAML SSO, OpenID Connect, and session management. -keywords: [authentication, LDAP, SAML, SSO, OpenID Connect, OIDC, session management, RBAC] +keywords: [ authentication, LDAP, SAML, SSO, OpenID Connect, OIDC, session management, RBAC ] --- # Authentication -Configure user authentication and access control for Anaphora. The platform supports enterprise-standard authentication methods for secure access. +Configure user authentication and access control for Anaphora. The platform supports enterprise-standard authentication +methods for secure access. ## Authentication Methods -| Method | Description | Best For | -|--------|-------------|----------| -| [Local](/administration/authentication/local) | Built-in username/password | Small teams, testing | -| [LDAP](/administration/authentication/ldap) | Active Directory integration | Enterprise Windows environments | -| [SAML](/administration/authentication/saml) | Single Sign-On via SAML 2.0 | Okta, Azure AD, OneLogin | -| [OIDC](/administration/authentication/oidc) | OpenID Connect providers | Google, Auth0, Keycloak | +| Method | Description | Best For | +|-----------------------------------------------|------------------------------|---------------------------------| +| [Local](/administration/authentication/local) | Built-in username/password | Small teams, testing | +| [LDAP](/administration/authentication/ldap) | Active Directory integration | Enterprise Windows environments | +| [SAML](/administration/authentication/saml) | Single Sign-On via SAML 2.0 | Okta, Azure AD, OneLogin | +| [OIDC](/administration/authentication/oidc) | OpenID Connect providers | Google, Auth0, Keycloak | ## Roles and Permissions Anaphora uses role-based access control (RBAC). -### Built-in Roles +### User types -| Role | Permissions | -|------|-------------| -| **Admin** | Full access: users, settings, all Spaces | -| **Editor** | Create and edit jobs, run reports | -| **Viewer** | View reports and job status only | +Anaphora has two main user types: System users and normal users. System users will have global access and can manage the +Anaphora instance. While normal users will be assigned to specific spaces with permissions scoped to those spaces. -### Permission Details - -| Permission | Admin | Editor | Viewer | -|------------|-------|--------|--------| -| View reports | Yes | Yes | Yes | -| Create jobs | Yes | Yes | No | -| Edit jobs | Yes | Yes | No | -| Delete jobs | Yes | No | No | -| Manage delivery interfaces | Yes | Yes | No | -| Manage users | Yes | No | No | -| Manage Spaces | Yes | No | No | -| System settings | Yes | No | No | - -### Custom Roles - -Create custom roles with specific permissions: - -1. Go to **Settings** > **Roles** -2. Click **Create Role** -3. Select permissions to include -4. Save and assign to users - -## Session Management - -Administrators have visibility and control over user sessions. - -### Active Sessions - -View all active user sessions: - -| Information | Description | -|-------------|-------------| -| User | Logged-in user | -| IP Address | Client IP | -| Login Time | When session started | -| Last Activity | Most recent action | -| Device/Browser | Client information | +| User Type | Description | Methods | +|-----------------|--------------------------------------------|---------| +| **System user** | Full global access, manage system settings | Local | +| **Normal user** | Access and manage resources within spaces | All | -### Session Controls +### Space Permissions -| Action | Description | -|--------|-------------| -| **View sessions** | See all active sessions | -| **Force logout** | Terminate specific session | -| **Logout all** | Terminate all sessions for a user | +Users are assigned permissions within specific spaces: -### Session Policies +| Permission | Description | +|---------------|------------------------------------| +| **Admin** | Full access within assigned spaces | +| **ReadWrite** | Create and edit jobs, run reports | +| **Readonly** | View reports and job status only | -Configure session behavior: - -| Setting | Description | -|---------|-------------| -| Session timeout | Auto-logout after inactivity | -| Maximum sessions | Limit concurrent sessions per user | -| Remember me duration | Extended session lifetime | - -### Security Events - -Audit log captures authentication events: - -- Login success/failure -- Logout events -- Password changes -- Session terminations -- Permission changes - -## Best Practices - -### Security - -- Use SSO when available for centralized access control -- Require strong passwords for local accounts -- Review active sessions regularly -- Set appropriate session timeouts - -### Enterprise Integration +### Permission Details -- Use dedicated service accounts for LDAP binding -- Map groups to roles for automated permission management -- Test authentication changes in staging first +| Rights | System User | Space Admin | Space ReadWrite | Space Readonly | +|----------------------------|-------------|-------------|-----------------|----------------| +| View reports | Yes | Yes | Yes | Yes | +| View runs | Yes | Yes | Yes | Yes | +| Manage jobs | Yes | Yes | Yes | No | +| Manage delivery interfaces | Yes | Yes | No | No | +| Manage AI providers | Yes | Yes | No | No | +| Manage users | Yes | No | No | No | +| Manage spaces | Yes | No | No | No | +| Global settings | Yes | No | No | No | + +### Add User Permissions + +See the [Spaces](/administration/spaces) documentation for details on assigning users to spaces with specific +permissions. ## Next Steps diff --git a/versioned_docs/version-stable/administration/authentication/ldap.md b/versioned_docs/version-stable/administration/authentication/ldap.md index 53b8635..ae65e03 100644 --- a/versioned_docs/version-stable/administration/authentication/ldap.md +++ b/versioned_docs/version-stable/administration/authentication/ldap.md @@ -1,12 +1,14 @@ --- sidebar_position: 2 description: Configure LDAP and Active Directory authentication for Anaphora enterprise deployments. -keywords: [LDAP, Active Directory, AD, directory integration, enterprise authentication] +keywords: [ LDAP, Active Directory, AD, directory integration, enterprise authentication ] --- # LDAP / Active Directory -Connect to your enterprise directory for centralized user management. Supports Microsoft Active Directory, OpenLDAP, and other LDAP-compliant directories. +Connect to your enterprise directory for centralized user management. Supports Microsoft Active Directory, OpenLDAP, and +other LDAP-compliant directories. +![](images/ldap.png) ## Overview @@ -19,85 +21,40 @@ LDAP integration provides: ## Configuration -Navigate to **Settings** > **Authentication** > **LDAP** to configure. +Navigate to **Settings** > **System Settings** > **Auth** > **LDAP** to configure. + +| Field | Description | Example | Required | +|---------------------|--------------------------------|----------------------------------------|----------| +| URL | LDAP server address | `ldap://ldap.forumsys.com:389` | Yes | +| Bind DN | Service account for binding | `cn=read-only-admin,dc=example,dc=com` | Yes | +| Bind credentials | Service account password | (stored securely) | Yes | +| Search base | Base DN for user search | `dc=example,dc=com` | Yes | +| Search filter | LDAP filter for user lookup | `uid={{username}}` | Yes | +| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | +| Group search filter | LDAP filter for groups | `(member={{cn}})` | No | +| Group name property | Attribute for group name | `cn` | No | +| Reject unauthorized | Enforce TLS certificate checks | `false` (unchecked) | No | +| CA | Certificate authority | base64-encoded PEM | No | +| Key | Client private key | base64-encoded PEM | No | +| Certificate | Client certificate | base64-encoded PEM | No | + +### Group to Role Mapping + +Use the group search to retrieve LDAP groups and map them to Anaphora roles. +In the **group search filter**, use `{{}}` placeholders to reference attributes from the login user. +Use the **Group name property** to specify which attribute will be used as the mapped role name. -### Connection Settings - -| Field | Description | Example | -|-------|-------------|---------| -| Server URL | LDAP server address | `ldaps://ldap.company.com:636` | -| Base DN | Search base for users | `dc=company,dc=com` | -| Bind DN | Service account for queries | `cn=anaphora,ou=service,dc=company,dc=com` | -| Bind Password | Service account password | (stored encrypted) | -| Connection Timeout | Max connection wait time | `10` seconds | -| Read Timeout | Max response wait time | `30` seconds | - -### User Search Settings - -| Field | Description | Example | -|-------|-------------|---------| -| User Base DN | Where to search for users | `ou=users,dc=company,dc=com` | -| User Filter | LDAP query for users | `(&(objectClass=user)(sAMAccountName={0}))` | -| Username Attribute | Attribute for login | `sAMAccountName` | - -### Group Settings (Optional) - -| Field | Description | Example | -|-------|-------------|---------| -| Group Base DN | Where to search for groups | `ou=groups,dc=company,dc=com` | -| Group Filter | Query for user's groups | `(&(objectClass=group)(member={0}))` | -| Group Name Attribute | Attribute for group name | `cn` | - -## Attribute Mapping - -Map LDAP attributes to Anaphora user properties: - -| Anaphora Field | Active Directory | OpenLDAP | -|----------------|------------------|----------| -| Username | `sAMAccountName` | `uid` | -| Email | `mail` | `mail` | -| Display Name | `displayName` | `cn` | -| Groups | `memberOf` | `memberOf` | - -### Mapping Configuration - -``` -Username Attribute: sAMAccountName -Email Attribute: mail -Display Name Attribute: displayName -Group Membership Attribute: memberOf -``` - -## Group-Based Roles - -Map LDAP groups to Anaphora roles for automatic permission assignment. - -### Example Mappings - -``` -LDAP Group: CN=Anaphora-Admins,OU=Groups,DC=company,DC=com - → Anaphora Role: Admin - -LDAP Group: CN=Anaphora-Editors,OU=Groups,DC=company,DC=com - → Anaphora Role: Editor - -LDAP Group: CN=Anaphora-Viewers,OU=Groups,DC=company,DC=com - → Anaphora Role: Viewer -``` - -### Space Membership +### SSL/TLS Configuration -Map groups to Space access: +For secure connections use LDAPS (port 636): -``` -LDAP Group: CN=Team-Alpha,OU=Teams,DC=company,DC=com - → Space: Alpha Team Reports - → Role: Editor +| Protocol | Port | Security | +|----------|------|-------------------------------| +| LDAP | 389 | Unencrypted (not recommended) | +| LDAPS | 636 | SSL/TLS encrypted | +| StartTLS | 389 | Upgraded to TLS | -LDAP Group: CN=Team-Beta,OU=Teams,DC=company,DC=com - → Space: Beta Team Reports - → Role: Viewer -``` +Provide CA, Key, and Certificate fields for TLS client authentication if required by your LDAP server. ## Active Directory Specifics @@ -110,60 +67,12 @@ Create a dedicated service account for Anaphora: 3. Grant "Read all user information" permission 4. No need for admin privileges -### Common User Filters - -| Scenario | Filter | -|----------|--------| -| All users | `(&(objectClass=user)(sAMAccountName={0}))` | -| Enabled users only | `(&(objectClass=user)(sAMAccountName={0})(!(userAccountControl:1.2.840.113556.1.4.803:=2)))` | -| Specific OU | `(&(objectClass=user)(sAMAccountName={0})(memberOf=CN=Anaphora-Users,OU=Groups,DC=company,DC=com))` | - -### SSL/TLS Configuration - -Always use LDAPS (port 636) for secure connections: - -| Protocol | Port | Security | -|----------|------|----------| -| LDAP | 389 | Unencrypted (not recommended) | -| LDAPS | 636 | SSL/TLS encrypted | -| StartTLS | 389 | Upgraded to TLS | - -## Testing - -### Test Connection - -1. Click **Test Connection** to verify server connectivity -2. Verify "Connection successful" message -3. Check bind credentials are working - -### Test User Search - -1. Enter a known username -2. Click **Test User Search** -3. Verify user attributes are returned correctly - -### Test Authentication - -1. Enter test username and password -2. Click **Test Login** -3. Verify authentication succeeds and groups are retrieved - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Connection refused | Check server URL and port, verify firewall rules | -| Bind failed | Verify bind DN and password, check account is not locked | -| User not found | Check base DN and user filter, verify user exists | -| Groups not mapped | Verify group filter and group DN, check membership attribute | -| SSL certificate error | Import CA certificate or use trusted certificate | - ### Debug Mode Enable LDAP debug logging: -1. Go to **Settings** > **System** > **Logging** -2. Set LDAP log level to DEBUG +1. Go to **Settings** > **System Settings** > **General** > **General** +2. Set **Log Level** to `debug` 3. Reproduce the issue 4. Review logs for detailed LDAP communication diff --git a/versioned_docs/version-stable/administration/authentication/local.md b/versioned_docs/version-stable/administration/authentication/local.md index 6e077d1..76cf78c 100644 --- a/versioned_docs/version-stable/administration/authentication/local.md +++ b/versioned_docs/version-stable/administration/authentication/local.md @@ -1,19 +1,20 @@ --- sidebar_position: 1 description: Configure local authentication with Anaphora's built-in user database for username and password login. -keywords: [local authentication, user management, password policy, built-in users] +keywords: [ local authentication, user management, password policy, built-in users ] --- # Local Authentication + ![](images/local.png) -Default authentication using Anaphora's built-in user database. Ideal for small teams, testing environments, or deployments without enterprise identity providers. +Default authentication using Anaphora's built-in user database. Ideal for small teams, testing environments, or +deployments without enterprise identity providers. ## Overview Local authentication provides: - **Built-in user database** — No external dependencies -- **Password policies** — Configurable security requirements - **User management UI** — Easy administration - **Quick setup** — Works out of the box @@ -21,114 +22,55 @@ Local authentication provides: ### Adding Users -1. Navigate to **Settings** > **Users** -2. Click **Add User** +1. Navigate to **Settings** > **System Settings** > **Auth** > **Local** +2. Click **Add New User** 3. Enter username, email, and password -4. Assign roles and Space memberships -5. Save +4. Assign roles +5. Choose user type: Normal user or system user +6. Save ### User Properties -| Field | Description | Required | -|-------|-------------|----------| -| Username | Unique login identifier | Yes | -| Email | User email address | Yes | -| Display Name | Friendly name shown in UI | No | -| Password | Initial password | Yes | -| System Role | Access level for system settings | Yes | -| Roles | Assigned permissions | Yes | -| Spaces | Space memberships | No | +| Field | Description | Required | +|-------------|---------------------------------|----------| +| Username | Unique login identifier | Yes | +| Password | Initial password | Yes | +| Roles | Assigned permission groups | No | +| System Role | User or system user designation | Yes | ### System Role The **System Role** controls access to system-wide settings: -| Role | Description | -|------|-------------| -| **user** | Normal user, cannot access system settings | -| **system** | Can access and modify system settings | +| Role | Description | +|------------|--------------------------------------------------------------------------------| +| **user** | Normal user, cannot access system settings | +| **system** | Can access and modify system settings. Has automatically access to all spaces. | :::note -System settings include authentication configuration, AI providers, backup settings, and other global options. Most users should have the `user` role. +System settings include authentication configuration, space configuration, backup settings, and other global options. +Most users should have the `user` role. ::: -### Editing Users - -1. Go to **Settings** > **Users** -2. Click on the user to edit -3. Update properties as needed -4. Save changes +### Managing Local Users -### Removing Users - -1. Go to **Settings** > **Users** -2. Select the user to remove -3. Click **Delete** -4. Confirm deletion +All local users will be managed by the system user alone. Users cannot modify their own accounts. +System users can change the password or add roles to existing users. The system user can also delete the local users. :::warning Deleting a user removes their access immediately. Jobs created by the user will remain. ::: -## Password Policy - -Configure password requirements for local users: - -| Setting | Description | Recommended | -|---------|-------------|-------------| -| Minimum length | Required character count | 12+ characters | -| Complexity | Uppercase, lowercase, numbers, symbols | Enable all | -| Expiration | Force password change after X days | 90 days | -| History | Prevent reuse of recent passwords | Last 5 passwords | - -### Configuring Password Policy - -1. Go to **Settings** > **Security** -2. Navigate to **Password Policy** -3. Set requirements -4. Save - -### Password Change - -Users can change their own password: - -1. Click user menu (top right) -2. Select **Change Password** -3. Enter current and new password -4. Confirm - -Administrators can reset passwords: - -1. Go to **Settings** > **Users** -2. Select the user -3. Click **Reset Password** -4. Send reset link or set temporary password - ## When to Use Local Auth -| Scenario | Recommendation | -|----------|----------------| -| Small team (under 10 users) | Local auth is sufficient | -| Testing/development | Local auth for simplicity | -| No corporate IdP available | Local auth as primary method | -| Enterprise environment | Consider LDAP, SAML, or OIDC | -| Compliance requirements | Use enterprise SSO | - -## Best Practices - -- Use strong, unique passwords -- Enable password complexity requirements -- Set reasonable expiration periods -- Review user list regularly -- Remove inactive accounts promptly - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Forgot password | Admin can reset via Settings > Users | -| Account locked | Admin unlocks via Settings > Users | -| Login fails | Verify username and password case sensitivity | +| Scenario | Recommendation | +|-----------------------------|------------------------------| +| Small team (under 10 users) | Local auth is sufficient | +| Testing/development | Local auth for simplicity | +| No corporate IdP available | Local auth as primary method | +| System user | Local is required | +| Enterprise environment | Consider LDAP, SAML, or OIDC | +| Compliance requirements | Use enterprise SSO | ## Next Steps diff --git a/versioned_docs/version-stable/administration/backup.md b/versioned_docs/version-stable/administration/backup.md index ebcb341..f00d687 100644 --- a/versioned_docs/version-stable/administration/backup.md +++ b/versioned_docs/version-stable/administration/backup.md @@ -1,87 +1,80 @@ --- sidebar_position: 4 description: Back up Anaphora configuration, jobs, and reports. Schedule automatic backups and restore from backup files. -keywords: [Anaphora backup, configuration backup, disaster recovery, data protection, scheduled backup] +keywords: [ Anaphora backup, configuration backup, disaster recovery, data protection, scheduled backup ] --- # Backup -Protect your Anaphora configuration and data with regular backups. +Protect your Anaphora configuration and data with backups. There are three ways to back up your Anaphora instance: -## What to Back Up +1. **UI Export** - Use the UI to create and download backup files. +2. **API Export** - Use the API to programmatically export data. +3. **Docker Volume Backup** - For Docker deployments, back up the data volume directly. -| Component | Description | Priority | -|-----------|-------------|----------| -| Configuration | Jobs, templates, settings | Critical | -| Reports | Generated report files | Important | -| Database | User data, history | Critical | -| Credentials | Encrypted secrets | Critical | +:::tip +**UI Export** and **API Export** will only back up the configuration and data stored within Anaphora. +Report files are not included in these backups. So having a docker volume backup is recommended for complete data +protection. +::: -## Backup Methods +## UI Backup -### Built-in Backup +1. Access the **Settings** > **Data**. +2. Click **Export to file** to download a backup of the current configuration and data. +3. Store the backup file securely. -1. Navigate to **Settings** > **Backup** -2. Click **Create Backup** -3. Download the backup file -4. Store securely +### UI Import -### Scheduled Backups +1. Go to **Settings** > **Data** +2. Click **Import from file** +3. Upload the backup file -Configure automatic backups: - -| Setting | Description | -|---------|-------------| -| Frequency | Daily, weekly, monthly | -| Retention | Number of backups to keep | -| Location | Local or remote storage | -| Encryption | Encrypt backup files | - -### Docker Volume Backup +## Docker Volume Backup For Docker deployments, back up the data volume: ```bash docker run --rm \ - -v anaphora-data:/data \ + -v anaphora-content:/data/content \ + -v anaphora-storage:/data/storage \ -v $(pwd):/backup \ alpine tar czf /backup/anaphora-backup.tar.gz /data ``` -## Restore - -### From UI - -1. Go to **Settings** > **Backup** -2. Click **Restore** -3. Upload backup file -4. Confirm restoration - -### From Command Line +### Docker Volume Import ```bash docker run --rm \ - -v anaphora-data:/data \ + -v anaphora-content:/content \ + -v anaphora-storage:/storage \ -v $(pwd):/backup \ alpine tar xzf /backup/anaphora-backup.tar.gz -C / ``` -## Best Practices +## API Backup + +**Authentication**: Use basic auth headers with a system user. + +Get the backup via the following endpoint: + +``` +GET /guest/api/export +``` + +**Response**: A downloadable backup file in `.ana` format. -- Back up before upgrades -- Test restores regularly -- Store backups off-site -- Encrypt sensitive backups -- Document recovery procedures +### API Import -## Disaster Recovery +**Authentication**: Use basic auth headers with a system user. -Plan for disaster recovery: +Upload the backup file via the following endpoint: + +``` +POST /guest/api/import +``` -1. Identify critical data -2. Define recovery objectives (RTO/RPO) -3. Document procedures -4. Test recovery regularly +**Request Body**: `.ana` backup file as binary data. ## Next Steps diff --git a/versioned_docs/version-stable/administration/images/space-selector.png b/versioned_docs/version-stable/administration/images/space-selector.png new file mode 100644 index 0000000000000000000000000000000000000000..6e49cc19e6bfb30937279c4ee6d9ffcf4558a6d2 GIT binary patch literal 4937 zcmcgwX*d+z+aDne*^4k4Yov_I7BLMYBYWzRJtahz$CiwcT_Q_aGZRTETWAJj#!j+~ zErnsozOQ43Vf@vHp69);|Mh-*-!JDn=UnH$&wc;y-?`6yPMn#E{xP5k5C8xiGeE$v z0{~2thy7yqqlc{^#D@m}5a2a{!)^rHFOROqi?!vnt>dAMvsX}oXciwfiC$(Hn4^KD z=F85<&G!Uk@`~dN6)YzNe-NDZmJNtdZ*V^uKG@Luvs(@+e0S*YP7cu7kIcy` zr+bceoQ^c_1hzX0(P4I>E(OjX2;>ha)bd#0(%k4;qb9kK@d>{`{OcyQXm;ilt(-Xw z`Bf0`TG;{+)@Q^7xOR~hAlLPOGZAKh_vuPV(_Cq+lN|>58!=@F!Xhz7OkMl^$Q5UA z4h`(IqISBg+9JDTdDF+uR zqvOpl$A@v{QzuG~mVPJVVgwdD&;C{8bS5L4~I}vzsapbr#ON@+9oMu!8u}_BG$Mu4LIPc}&Vb{JHGz zc~>FuqsVqKVY`xUeMhuua))sqOJii&95{7&9BmuNU`Vas3_aK1Jv(n@4 zzB02s4#uohWv3Hyx|{)`TJ7NB)___(8)<@U>*KDr(o81Kexv$MX5rSdYc|(wY&icK z3Ox8Re(S^L0+zClTrn%_4j_taI00G3XtU^}&}D|C%BZIX$lGwS;fcegi|-*-78BmZ zyKNyoMVfbX#$#MaEvDfq)~e9JQLU68-3&GDK4XE7G#lhJM@7k{XnY%KBSDGvTe*M7 zIdS98(0Q=N?hBh5>xvvx#p=@w`MaZ-o^Y*nVz;=;av=20a5{di zarr^WMzRfk+?w1L#C$XMa;Af2bm~XTql-7Ro_CqjJIilU0RFM>!PXAq53t`O3?4%W z@A$o37;`e%Tv5-2M45%+t+7;qWm{gv+}Et2!45sxz|3B*Zb4a7uoq$`Dj2Xc>^XN_ zkI22_nE5W+B|F_Di=wq@Qv=MRsG$Njn^ZYhddhb_>?lu{0zPo=M{KUFQT-9;s`lOX z6Ub1l8Q~AA3N9pulIsan!0Zj7>6sB|JoPxMdFW74qCBZv>Sp$Y-Bqh_rMV$wYw=ZF z^`s(U?S{8@zOjm*UEK3W6${B%J#O$;j}hN!U_07KO&V9kT_65}>W3piXsYgnkElc1 z{Oa*Smze0L3#P}2+V~~Z`H{JP2{4aNtI!KtrVT^gH6Jqeb+7SF9HrKwI=x!G0 z(~NLQK}@Ku^asaT#@b^L+~?Iyo~7>a#H$+IGj=Fv7*rGRLW;M^4;;T1Np{sZ*?a}($*#jeUu_HTBoUN1BCJ1KCK` ziwz5(VbZ>uLHo(WlV-3=Mk`YV;m3h9O*)9C1!ng{PRW>oFK`p4Zu&b+KE{maoX<&t-WOIqSx{VfmWZt}`RR}5}<|KhzS zJV>LQHkQPay@c4z z-6S=gSD&dMiEh6s`$M8eP1=ul$3D68+alRL=!;5wipU4$V^3-VHX%hV0`)%W3pFH4 z^-|hL@`@n@w1;WjHj*(u;QMcQ}%?KEs0^vmnHTcc(QLU4lR3t;KSK*i-5HSg|r+Q}ED5S&y4eJ3n# zdZchNr3HF2m@+t?NCaW|#u7dplRSBS7qVJKansxwQov_${x!hb$+Fz3`@DSMvK9W( zWO1`ch^W$xdeHE1ZfPicX1wH-lvw zhY|DiT8pFJ(=r08uxG>#-)zcjp_aCwN$GmpG1LYbY~a=v#w}TP$==_IsYk-f2QOhR z1aG81-I7+TNd`)e9+hhp)VNThCf&-~Te+dk(FZun#4_* z%Zv-kjCYCkgUM#=4+o`hWo`Qew4hU2l`dKQC?KJC*Me!ZfS}|nDbxj>ID0;&H%5-4 zKBiY@8}-ARiBbll9OyD*J2{m{cSP$I?*d17x1+NnO-)kGM5u8g09=y1(HClT@a;&$ z)V20PP8q1YNhx~P+;jd^~%P|>Le|KK23mUdsOas&qG-} zEJ=NQBS$kh4%dtG+Qpcf2wy9_l>c)ZKQ(rY`K^%hEXmXl_h7_U801$MOp&4HkZS7B zo@X_hI$c^)_0UwD%k5@Z?Hl)M%)GUA2(G@w1sIDkE2`a%uhL$kY&F4nGJ|x_;Je`- z7JZA%7aIh54Y@vF#b-EFy>0fE7g8)7Gc8@#Y~VespZLZ=^S0UrRylrEM^kAobQbtp zR5VIpp^ILWKN7tf4=-c7*d%xx-c<44<+=bob3Ar6@}}0gA^QRkCvR**?n&nq`FddE z=~MP^XFV3e5viDx%6$5{JGILUnOIeJ{mC@;87i#ai~NT z)!Z?;c5$$ur)UlD>Up1R=qV3W*Ro{ok%aUl6n_!$CAqWbQeUKeBw_d2C?8-7;XEgHzfn+!1Y%a= zXy?k2GNwTo3k`J%WZGig-@fEM9-P!Kp`<1D@@6N)YaVy;0svwCX~YGa%Hh@^Hh@y% z*JLM*>*oXtH{iC|OR4q;y>6n5AV9tP8U2)@yl<+5nm?G>7|Wrg-t>d-c-*eb=?=6f zqXoZ*{*I)?Febw9^W6SgC}!Xs|JTT^)z`ZG7qo+e0UUOzNqvhy$E^3tb|->qxrOdA zme7wPWB&1RRHddHiP9B%A3cg5_9S~jADst^Smnz~NFThkrlEq1u}?V8l0k4}?Smpl zFUI5c2+VIGZRGtK_YTZC=h#2iYK-e5PLLH+95ZTXBM=Mx+8dv_`kj&w7Cdru?Rg*1 zD82%^MVPtr%Zb30bM^%FQ{|6UqXHgO=K4ryp0hs0A%go$96#Z^R6I*!D3Q%v-9;L9 z9Mcqe9kx{rH&d=$1~(>d)YZ4KKC9c#Vj0A||Kp+zNN!`8$hl*d(n1t!|M{Kbv8CF3 zMK*R<>jnHVSGa3Xlm%#4YeHYTnyUHFZfSc;3c<@UwukjmzpZ_Y$3Dlv2%I?~d`=fT zbA9t_sGpD%1soU+n~HfDQjP2YaSy7%UWjI8UMgz-ly_eIYE9c@X(0$bV|FQ}^F%S` z(-_RK?+u4(c%AX813lO3$5`E9LnMb&xE%LWj)=Jx7f&f5im~e`tiq8OB5H?oPduKw zE|sA4>}kT8f8b9!%V3G}y)xl`;J@;DOjZQJ+WT7Q0x*mtLQZAsI_#oq?3TOVRiaRW zXu1EjKcqQlkb!_8OrqCxKat!+CHLK}4gm-|x%(v#i4Zty?vp4t)>;L=u=>VAJ9v+@ zRAsQ#{V(*$73-yxbMQwHqX$;O-}}%;cw^`ioKn3$s_0g@XxiK ztjguk!LcE}nbZ=Ky28Wnv?B*-nf5s^}dg`LiAICszMDBLU27$4YoH5SY zFM`4CdDy6E5&N}m?m_S?r}Hqu@7JHGsK!Q*Jbj*kbH=^;vz^8`T4)0g;*f=gP!2?JaJimCpVKvv2M=ME)^{Dne#-nJ1+YlaY?4h*~mTq?n6E? z%PpN}`oa27kUo{QrCMhQ90`#4ug4P*_V=H)0KnvLq|-b)4{r0-=MOV@PNdQtOqes^ zBL~xdeU|7?nn%LKekY0yojF5j`M-zpWN%+&;z$ltn5>mVX0C5Ohegk+T~zi6-5qBE zSd*5LR`3f^z6X@wguZrR0UMXYF6hj*N*hVcaw2yp>$HfzYR9U`21gMm5V8o>x!Q~u z^2!pLA!`a4?%Uh#pUHZ($p86JcSUGJkBl?&H(#s#m)xynL7*=!dae(NX9wZYxXIa& z*+lU{3g`~-3hX(Wk%OFmMXk{+Ct_gMtE3#Qc|vv|q!JH4(r_& z8^XLA@U7bVGO`r})zq%#kbE7@VqUWdX$oIBqG@aQfPfX;pIPM*4K_VP`0|sww>^DF zY`eB`?IOL)gW9(8WoQ7Ix(u;OH#_M$`3$-Dgi&3{$s?}Vp2UH*%)z!rsO~SL#6Z5Q z!r`lqfkhE$7-Whc`h4jUN!9{z?NV^-+nBo%oKo!Q_tYE3YFuSwdP4R}u&SL?X-oPZ z9k#WfN0wvEgthg9989aAH^m>9Zi_iR|D>PjQf9KMPM>&58Uw#*1aCO10bkSn59qxx zLB{0)>geHZcTI$`%?)X7Zn>|hepuj6>!{Tg(k1xql-mQcYJM1pO<^o5>ZYhku22&} z*Y#cesdSBkvhVrKiU-zg=6jnxi=Ul=^>`(AY5K^I)U3MLNyikPPg6=Ql^_Ib{CyiC z?-7zisgRt?X#70ZogbmW(zs>->NjCAcY_vZ9PuvYf&|ieLI)IjwPMYQGT%gFgH(e; z3+#e$^Aa~Z_GPe{G(v*8Ys5=spO03QVZn=lEQ?=+k;upIG!;p#Kn$<&xhy_6L^Wv?ePBq=i`w$ literal 0 HcmV?d00001 diff --git a/versioned_docs/version-stable/administration/index.md b/versioned_docs/version-stable/administration/index.md index a93efe5..af87732 100644 --- a/versioned_docs/version-stable/administration/index.md +++ b/versioned_docs/version-stable/administration/index.md @@ -1,138 +1,28 @@ --- sidebar_position: 6 description: Anaphora administration guide - configure authentication (LDAP, SAML, SSO), manage multi-tenant spaces, monitor system health, and backup data. -keywords: [Anaphora admin, LDAP authentication, SAML SSO, multi-tenant reporting, system monitoring, backup, RBAC] +keywords: [ Anaphora admin, LDAP authentication, SAML SSO, multi-tenant reporting, system monitoring, backup, RBAC ] --- # Administration - Security, Multi-Tenancy & Operations -Manage Anaphora's security, multi-tenancy, monitoring, and backups. This section covers enterprise features for managing users, permissions, and system health. +Manage Anaphora's security, multi-tenancy, monitoring, and backups. This section covers enterprise features for managing +users, permissions, and system health. ## Topics -| Topic | Description | -|-------|-------------| -| [Authentication](/administration/authentication/) | User authentication and access control | -| [Spaces](/administration/spaces) | Multi-tenant workspace management | -| [AI Providers](/administration/ai-providers) | Configure AI for intelligent analysis | -| [Self Monitoring](/administration/self-monitoring) | System health and metrics | -| [Backup](/administration/backup) | Data backup and recovery | +| Topic | Description | +|----------------------------------------------------|----------------------------------------| +| [Authentication](/administration/authentication/) | User authentication and access control | +| [Spaces](/administration/spaces) | Multi-tenant workspace management | +| [AI Providers](/administration/ai-providers) | Configure AI for intelligent analysis | +| [Self Monitoring](/administration/self-monitoring) | System health and metrics | +| [Backup](/administration/backup) | Data backup and recovery | -## Spaces: Multi-Tenant Isolation +## System User -Anaphora uses a **Spaces** concept to manage multi-tenancy and permissions effectively. - -### Shared-Nothing Architecture - -Spaces act as isolated containers with complete separation: - -```mermaid -flowchart TB - subgraph anaphora["Anaphora"] - subgraph spaceA["Space A"] - a1["Jobs"] - a2["Reports"] - a3["Delivery"] - a4["Users"] - end - subgraph spaceB["Space B"] - b1["Jobs"] - b2["Reports"] - b3["Delivery"] - b4["Users"] - end - subgraph spaceC["Space C"] - c1["Jobs"] - c2["Reports"] - c3["Delivery"] - c4["Users"] - end - end -``` - -- **Complete isolation** - Jobs, Delivery Interfaces, AI Providers, and reports cannot be shared between spaces -- **Copy support** - Items can be copied between spaces when needed -- **Independent configuration** - Each space has its own settings and retention policies - -### Use Cases for Spaces - -| Scenario | Implementation | -|----------|----------------| -| **Team separation** | Each team gets their own space with dedicated jobs | -| **Client isolation** | MSPs create separate spaces per client | -| **Environment separation** | Dev, staging, and production spaces | -| **Department boundaries** | Finance, Engineering, Marketing each have isolated spaces | - -## Role-Based Access Control (RBAC) - -Anaphora provides granular permissions through roles. - -### Permission Levels - -| Level | Capabilities | -|-------|-------------| -| **Read-only** | View jobs, reports, and settings | -| **Read-write** | Create and modify jobs, run reports | -| **Admin** | Full control including user management and space settings | - -### Assignment Options - -Permissions can be assigned to: - -- **Individual users** - Direct permission grants -- **Groups** - Permissions inherited by all group members -- **Roles** - Reusable permission sets - -## Authentication Methods - -Anaphora supports enterprise-standard authentication: - -| Method | Description | -|--------|-------------| -| [Local](/administration/authentication/local) | Built-in username/password authentication | -| [LDAP](/administration/authentication/ldap) | Active Directory and other LDAP directories | -| [SAML](/administration/authentication/saml) | SSO with Okta, Azure AD, OneLogin, etc. | -| [OIDC](/administration/authentication/oidc) | OAuth 2.0 / OpenID Connect providers | - -### Session Management - -Administrators can: - -- View all active sessions -- Force logout of specific users -- Set session timeout policies -- Monitor login history - -## System Monitoring - -Monitor Anaphora's health and performance: - -### Health Endpoint - -A dedicated endpoint for monitoring tools (Prometheus, Nagios, etc.): - -- System status and uptime -- Job execution statistics -- Error rates and failures -- Resource utilization - -### Alerting - -Configure alerts when: - -- Job execution error rates become too high -- System resources are constrained -- Authentication failures spike -- Delivery channels fail - -## Backup & Recovery - -Protect your Anaphora configuration and data: - -- **Full system backup** - Export all jobs, settings, and configurations -- **Scheduled backups** - Automate regular backup creation -- **Point-in-time recovery** - Restore to a specific backup -- **Migration support** - Move between Anaphora instances +The first user created during setup is the system administrator with full privileges. Only system admins can access and +manage the global settings. ## Next Steps diff --git a/versioned_docs/version-stable/administration/self-monitoring.md b/versioned_docs/version-stable/administration/self-monitoring.md index 08c2696..4d3fe67 100644 --- a/versioned_docs/version-stable/administration/self-monitoring.md +++ b/versioned_docs/version-stable/administration/self-monitoring.md @@ -1,92 +1,34 @@ --- sidebar_position: 3 description: Monitor Anaphora health, performance, and job metrics. Configure alerts, access logs, and integrate with Prometheus. -keywords: [self monitoring, health check, Prometheus, metrics, job monitoring, performance, Anaphora monitoring] +keywords: [ self monitoring, health check, Prometheus, metrics, job monitoring, performance, Anaphora monitoring ] --- # Self Monitoring -Monitor Anaphora's health, performance, and operational metrics. +Monitor Anaphora's health, job and delivery success. ![](images/self-monitoring.png) -## Dashboard -Access the monitoring dashboard at **Settings** > **Monitoring**. +## Health Monitoring -## Key Metrics +Access the monitoring settings at **Settings** > **Application** > **Health Monitoring**. -### System Health +### Setup Health Alerts -| Metric | Description | -|--------|-------------| -| Uptime | Time since last restart | -| Memory | Current memory usage | -| CPU | Processor utilization | -| Disk | Storage consumption | +Configure email alerts when the system detects changes in job health status. -### Job Metrics - -| Metric | Description | -|--------|-------------| -| Jobs Active | Currently running jobs | -| Jobs Scheduled | Total scheduled jobs | -| Success Rate | Percentage of successful runs | -| Avg Duration | Average job execution time | - -### Delivery Metrics - -| Metric | Description | -|--------|-------------| -| Deliveries/Hour | Reports sent per hour | -| Delivery Success | Successful delivery rate | -| Queue Depth | Pending deliveries | - -## Alerts - -Configure alerts for system issues: - -1. Go to **Monitoring** > **Alerts** -2. Set thresholds for key metrics -3. Configure notification channel -4. Enable the alert - -### Recommended Alerts - -- Job failure rate > 10% -- Memory usage > 85% -- Disk usage > 90% -- Delivery queue > 100 - -## Logs - -Access system logs: -- Application logs -- Job execution logs -- Error logs -- Audit logs - -### Log Levels - -| Level | Description | -|-------|-------------| -| ERROR | Failures requiring attention | -| WARN | Potential issues | -| INFO | Normal operations | -| DEBUG | Detailed troubleshooting | - -## Prometheus Endpoint - -Export metrics to Prometheus: - -``` -GET /metrics -``` +1. Enable **Health Alerts**. +2. Select a delivery interface and recipient email. +3. Set **Health Check Frequency**: how often to check job health. +4. Set **Maximum Notification Frequency**: minimum time between alerts (Optional). +5. Click **Save**. ## Health API Query Anaphora's health status programmatically: ``` -GET /api/health +GET /guest/api/health ``` ### Response Format @@ -94,20 +36,6 @@ GET /api/health ```json { "jobs": [ - { - "id": "533aeb70-efcc-43cc-8953-78f9c8fdc728", - "name": "Kibana Dashboard Snapshot", - "description": "Takes a snapshot of a dashboard", - "cron": "5 4 * * *", - "healthStatus": "green", - "recentRuns": [ - { "runAt": "2026-01-15T04:05:00.050Z", "state": "success" }, - { "runAt": "2026-01-14T04:05:00.040Z", "state": "success" }, - { "runAt": "2026-01-13T04:05:00.043Z", "state": "success" }, - { "runAt": "2026-01-12T04:05:00.049Z", "state": "success" }, - { "runAt": "2026-01-11T04:05:00.044Z", "state": "success" } - ] - }, { "id": "79cf54b6-df32-4b09-84f4-708ecc72b7bc", "name": "Kibana Dashboard Snapshot", @@ -115,11 +43,26 @@ GET /api/health "cron": "5 4 * * *", "healthStatus": "green", "recentRuns": [ - { "runAt": "2026-01-15T04:05:00.041Z", "state": "success" }, - { "runAt": "2026-01-14T04:05:00.051Z", "state": "success" }, - { "runAt": "2026-01-13T04:05:00.034Z", "state": "success" }, - { "runAt": "2026-01-12T04:05:00.040Z", "state": "success" }, - { "runAt": "2026-01-11T04:05:00.034Z", "state": "success" } + { + "runAt": "2026-01-15T04:05:00.041Z", + "state": "success" + }, + { + "runAt": "2026-01-14T04:05:00.051Z", + "state": "success" + }, + { + "runAt": "2026-01-13T04:05:00.034Z", + "state": "success" + }, + { + "runAt": "2026-01-12T04:05:00.040Z", + "state": "success" + }, + { + "runAt": "2026-01-11T04:05:00.034Z", + "state": "success" + } ] } ], @@ -128,9 +71,9 @@ GET /api/health "id": "4d5fba03-561e-4503-bf4d-c41817133aca", "name": "My Delivery Interface", "type": "webhook", - "healthStatus": "gray", + "healthStatus": "green", "summary24Hours": { - "totalCount": 0, + "totalCount": 11, "errorCount": 0, "errors": [] } @@ -141,12 +84,12 @@ GET /api/health ### Health Status Values -| Status | Meaning | -|--------|---------| -| **green** | All recent runs successful | -| **yellow** | Some recent failures | -| **red** | Most recent runs failed | -| **gray** | No recent activity | +| Status | Meaning | +|------------|----------------------------| +| **green** | All recent runs successful | +| **yellow** | Some recent failures | +| **red** | All recent runs failed | +| **gray** | No recent activity | ## Next Steps diff --git a/versioned_docs/version-stable/administration/spaces.md b/versioned_docs/version-stable/administration/spaces.md index 087e7f9..2b27b8d 100644 --- a/versioned_docs/version-stable/administration/spaces.md +++ b/versioned_docs/version-stable/administration/spaces.md @@ -1,12 +1,15 @@ --- sidebar_position: 2 description: Configure Anaphora Spaces for multi-tenant isolation - separate jobs, reports, and permissions by team or project. -keywords: [multi-tenancy, Spaces, workspace isolation, team separation, RBAC] +keywords: [ multi-tenancy, Spaces, workspace isolation, team separation, RBAC ] --- # Spaces -Spaces provide multi-tenant workspace isolation in Anaphora. They act as "share-nothing" containers that completely separate resources between teams, projects, or tenants. +Spaces provide multi-tenant workspace isolation in Anaphora. They act as "share-nothing" containers that completely +separate resources between teams, projects, or tenants. + +![](images/spaces.png) ## Overview @@ -25,19 +28,16 @@ flowchart TB a1["15 Jobs"] a2["3 Delivery Interfaces"] a3["5 Users"] - a4["AI Provider"] end subgraph spaceB["Space B (Team Beta)"] b1["8 Jobs"] b2["2 Delivery Interfaces"] b3["3 Users"] - b4["AI Provider"] end subgraph spaceC["Space C (Clients)"] c1["50 Jobs"] c2["5 Delivery Interfaces"] c3["10 Users"] - c4["No AI"] end end ``` @@ -46,209 +46,103 @@ flowchart TB Users can belong to multiple Spaces with different roles. ::: -## Share-Nothing Architecture - -Spaces enforce complete isolation: - -| Isolated | Not Shared | -|----------|------------| -| Jobs | Jobs cannot access other Spaces' resources | -| Delivery Interfaces | Each Space configures its own | -| AI Providers | Per-Space AI configuration | -| Reports | Only visible within the Space | -| Run History | Isolated execution logs | -| Templates | Report templates per Space | - ### Copying Between Spaces While resources cannot be shared, they can be copied: -1. Export job configuration from Space A -2. Import into Space B -3. Reconfigure Space-specific settings (delivery, credentials) - -## Creating Spaces +1. In the jobs list, select the jobs to copy to another Space +2. Click **Copy to Space** +3. Choose target Space +4. If applicable, select to copy associated delivery interfaces -1. Navigate to **Settings** > **Spaces** -2. Click **Create Space** -3. Enter name and description -4. Configure default settings -5. Save +The same process applies to delivery interfaces. -### Space Settings - -| Setting | Description | -|---------|-------------| -| **Name** | Unique identifier for the Space | -| **Description** | Purpose/team using this Space | -| **Default Space** | Set as default for new users | -| **Retention Override** | Custom housekeeping rules | - -## User Assignment +## Creating Spaces -Assign users to Spaces with specific roles: +1. Navigate to **Settings** > **System Settings** > **Permissions** +2. Click **Add Space** +3. Enter the name of the Space ### Assignment Process -1. Open Space settings -2. Go to **Members** tab -3. Click **Add Member** -4. Select user or group -5. Assign role (Admin, Editor, Viewer) -6. Save +1. Click **Add Permission** +2. Select user or role +3. Assign permission (Admin, ReadWrite, Readonly) + +:::tip User Roles +Users can have roles assigned to them. These roles can then be assigned to Spaces for easier management. So it is not +necessary to assign each user individually. +::: ### Multi-Space Users -Users can belong to multiple Spaces: +Users can belong to multiple Spaces, by direct assignment or via roles: ``` User: alice@company.com -├── Space: Engineering → Role: Admin -├── Space: Marketing → Role: Viewer -└── Space: DevOps → Role: Editor -``` - -### Group-Based Assignment - -Assign entire groups to Spaces: - -``` -Group: Engineering Team -└── Space: Engineering → Role: Editor - -All members of "Engineering Team" get Editor access to Engineering Space +├── Space: Engineering → Permission: Admin +└── Space: Marketing → Permission: Readonly +Role: DevOps Team +└── Space: DevOps → Permission: ReadWrite ``` ## Switching Spaces -Users with access to multiple Spaces see a Space selector in the navigation. +You can switch between Spaces using the Space selector in the sidebar. -### Current Space Indicator +![space-selector.png](images/space-selector.png) -- Shows active Space name in header -- All operations apply to current Space -- Jobs, reports, settings are Space-specific - -### Quick Switch - -- Click Space selector -- Choose from available Spaces -- View updates immediately +All resources you create or manage will be scoped to the selected Space. ## Use Cases ### Team Separation -| Space | Purpose | -|-------|---------| +| Space | Purpose | +|-------------|--------------------------------------| | Engineering | Technical dashboards, system metrics | -| Marketing | Campaign dashboards, analytics | -| Executive | Summary reports, KPIs | -| DevOps | Infrastructure monitoring, alerts | +| Marketing | Campaign dashboards, analytics | +| Executive | Summary reports, KPIs | +| DevOps | Infrastructure monitoring, alerts | ### Client Isolation (MSP) For managed service providers: -| Space | Client | -|-------|--------| -| Client-Acme | Acme Corp reports | -| Client-Beta | Beta Inc reports | +| Space | Client | +|--------------|-------------------| +| Client-Acme | Acme Corp reports | +| Client-Beta | Beta Inc reports | | Client-Gamma | Gamma Ltd reports | Each client's data is completely isolated. ### Environment Separation -| Space | Environment | -|-------|-------------| -| Production | Live dashboards, real alerts | -| Staging | Test jobs, validation | -| Development | Experimental configurations | - -## Space-Level Settings - -Each Space can override global settings: - -### Retention Policies - -Configure per-Space housekeeping: - -| Setting | Global | Space Override | -|---------|--------|----------------| -| Report retention | 90 days | 365 days (compliance) | -| Run history | 30 days | 7 days (dev Space) | - -### Default Configurations - -Set Space-specific defaults: - -- Default delivery interface -- Default templates -- Default capture settings +| Space | Environment | +|-------------|------------------------------| +| Production | Live dashboards, real alerts | +| Staging | Test jobs, validation | +| Development | Experimental configurations | ## Administration -### Space Admins - -Space Admins can: - -- Manage jobs within their Space -- Configure Space-specific delivery interfaces -- View all reports in the Space -- Manage Space membership - -Space Admins cannot: - -- Access other Spaces (unless assigned) -- Modify global settings -- Create new Spaces - -### System Admins - -System Admins can: +Only system administrators can create and manage Spaces. Space admins can only manage resources within their assigned +Spaces. -- Create and delete Spaces -- Access all Spaces -- Manage global settings -- Override Space configurations +See [Authentication](authentication/index.md) for details on user roles and permissions. ## Best Practices -### Naming Conventions - -Use clear, consistent naming: - -``` -Good: Engineering, Marketing, Client-Acme -Bad: Space1, Test, Temp -``` - ### Permission Principle Assign minimal required permissions: -- Most users: Viewer (report access only) -- Job creators: Editor +- Most users: Space Readonly +- Job creators: Space ReadWrite - Team leads: Space Admin - IT/Operations: System Admin -### Regular Review - -- Audit Space membership quarterly -- Remove inactive users -- Review job configurations -- Check retention policies - -### Documentation - -Document each Space's purpose: - -- What team/project uses it -- What dashboards are captured -- Who receives reports -- Retention requirements - ## Next Steps - [Self Monitoring](./self-monitoring) - Monitor system health diff --git a/versioned_docs/version-stable/advanced-examples/ai-news-collation.md b/versioned_docs/version-stable/advanced-examples/ai-news-collation.md index e534564..8a2ae47 100644 --- a/versioned_docs/version-stable/advanced-examples/ai-news-collation.md +++ b/versioned_docs/version-stable/advanced-examples/ai-news-collation.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Use AI to aggregate, summarize, and deliver curated content from multiple sources with Anaphora. -keywords: [AI summarization, news aggregation, content curation, LLM reports, Anaphora AI] +keywords: [ AI summarization, news aggregation, content curation, LLM reports, Anaphora AI ] --- # AI News Collation @@ -23,50 +23,26 @@ Create a daily digest that collects articles from multiple sources and provides ### 1. Create the Job -Name it: "Daily Industry Digest" +1. Navigate to **Jobs** +2. Click **Create New Job** -### 2. Configure Multi-Source Capture +### 2. Configure Capture -``` -# Source 1: Tech news site -Navigate → https://news.example.com/industry -Capture value → .article-titles → $headlines1 - -# Source 2: Blog aggregator -Navigate → https://blogs.example.com/feed -Capture value → .post-summaries → $headlines2 - -# Source 3: Reddit/HN -Navigate → https://reddit.com/r/industry -Capture value → .post-titles → $headlines3 -``` - -### 3. AI Processing - -Configure AI summarization in the composition phase: -- Combine captured content -- Generate executive summary -- Highlight key trends -- Create actionable insights +1. Enable **Advanced** mode +2. Add multiple **Navigate** actions for each source: + - Ensure that **Take Snapshot** is checked +3. Add **AI** action to process captured content + - Set prompt to: + ``` + Summarize the following articles into an executive summary, highlighting key trends and actionable insights + ``` + - Ensure that all context is included ### 4. Compose the Digest -Structure your report: -1. AI-generated executive summary -2. Top stories by category -3. Trending topics -4. Full article links - -### 5. Deliver - -Send to subscribers via email with a clean, readable format. - -## Tips - -- Filter out duplicates across sources -- Set appropriate content length limits -- Include source attribution +1. Include the AI-generated summary +2. Add other text blocks as needed -## Next Steps +### 5. Configure Delivery -- [Branded Reports](./branded-reports) - Professional report styling +- Add delivery interface and configure recipients diff --git a/versioned_docs/version-stable/advanced-examples/branded-reports.md b/versioned_docs/version-stable/advanced-examples/branded-reports.md deleted file mode 100644 index 152d627..0000000 --- a/versioned_docs/version-stable/advanced-examples/branded-reports.md +++ /dev/null @@ -1,80 +0,0 @@ ---- -sidebar_position: 4 -description: Create professional branded reports with custom logos, colors, and templates for external stakeholders. -keywords: [branded reports, custom templates, professional PDF, white-label reports, Anaphora branding] ---- - -# Branded Reports - -Create professional, branded reports for external stakeholders. - -## Goal - -Generate polished reports with your company's branding for client delivery. - -## Use Cases - -- Client-facing SLA reports -- Partner performance summaries -- Board presentations -- Compliance documentation - -## Branding Elements - -### Logo and Colors - -Configure your brand assets in Settings: -- Company logo (header/footer) -- Primary and secondary colors -- Font preferences - -### Report Templates - -Create custom templates that include: -- Branded header with logo -- Consistent color scheme -- Professional typography -- Branded footer with contact info - -## Steps - -### 1. Set Up Brand Assets - -1. Navigate to **Settings** > **Branding** -2. Upload your logo -3. Configure color palette -4. Set default fonts - -### 2. Create a Branded Template - -1. Go to **Templates** > **Create New** -2. Design your layout with brand elements -3. Add placeholder sections for dynamic content -4. Save as "Client Report Template" - -### 3. Create the Job - -1. Create a new job for client reporting -2. Configure capture for relevant metrics -3. Select your branded template in Composition -4. Add dynamic fields: client name, date range, etc. - -### 4. Configure Professional Delivery - -- Use PDF format for attachments -- Include personalized email body -- Consider adding cover page - -## Template Variables - -Use variables for personalization: - -| Variable | Description | -|----------|-------------| -| `{{client_name}}` | Client company name | -| `{{report_period}}` | Date range | -| `{{generated_date}}` | Report generation date | - -## Next Steps - -- [Jobs](../jobs/) - Deep dive into job configuration diff --git a/versioned_docs/version-stable/advanced-examples/index.md b/versioned_docs/version-stable/advanced-examples/index.md index c6ec4d7..78f055a 100644 --- a/versioned_docs/version-stable/advanced-examples/index.md +++ b/versioned_docs/version-stable/advanced-examples/index.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Advanced Anaphora examples - multi-source reports, statistical alerts, AI-powered news collation, and branded PDF reports for enterprise use. -keywords: [advanced Kibana reports, multi-source dashboards, statistical alerts, branded reports, AI report generation] +keywords: [ advanced Kibana reports, multi-source dashboards, statistical alerts, branded reports, AI report generation ] --- # Advanced Examples - Enterprise Reporting Scenarios @@ -10,12 +10,11 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|---------|-------------| +| Example | Description | +|------------------------------------------------------------------|-----------------------------------------------------| | [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Statistical Alert](./advanced-examples/kibana-statistical-alert) | Alerts based on statistical analysis | -| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | -| [Branded Reports](./advanced-examples/branded-reports) | Professional reports with custom branding | +| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | ## Prerequisites diff --git a/versioned_docs/version-stable/advanced-examples/kibana-anomaly-alert.md b/versioned_docs/version-stable/advanced-examples/kibana-anomaly-alert.md new file mode 100644 index 0000000..5434b5c --- /dev/null +++ b/versioned_docs/version-stable/advanced-examples/kibana-anomaly-alert.md @@ -0,0 +1,80 @@ +--- +sidebar_position: 2 +description: Create sophisticated Kibana alerts based on statistical analysis and trend detection with Anaphora. +keywords: [ statistical alert, trend detection, Kibana analytics, anomaly detection, Anaphora statistics ] +--- + +# Kibana Anomaly Alert + +Create alerts based on deviation from previous data. + +:::tip Kibana Anomaly Detection Template +The **Kibana Anomaly Alert** Template demonstrates this example for the Kibana demo instance. You can use it as a +starting point for your own anomaly detection jobs. +::: + +## Goal + +Alert when metrics deviate significantly from the previous time window. + +## Use Cases + +- Anomaly detection for response times +- Traffic spike alerts +- Resource utilization warnings + +## Steps + +### 1. Create the Job + +1. Navigate to **Jobs** +2. Click **Create New Job** + +### 2. Configure General Settings + +- **Frequency**: Every 15 minutes +- **Max Notify Frequency**: 3 hours + +### 3. Configure Advanced Capture + +1. Enable **Advanced** mode +2. In the preexisting **Navigate**-action: + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials + - Set time range to 30 minutes to 15 minutes ago +3. Add a **Capture value** action to extract the metric to monitor: + - Set the **variable name** to something like `previous_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +4. Add another **Navigate** action to get the current value: + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Set time range to last 15 minutes +5. Add another **Capture value** action to extract the current metric: + - Set the **variable name** to something like `current_value` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +6. Add a **Calculate** action to compute the percentage change: + - Set **Variable name** to something like `percent_change` + - Set **Operation** to `round(abs((current_value - previous_value) / previous_value) * 100)` +7. Add a **Conditional block** to check if the percentage change is below the threshold: + - Choose **Variable**: `percent_change` + - Set **Condition operation** to `Lesser than` + - Set **Condition value** to `20` (for 20% change) +8. Inside the conditional block, add a **Break** action to stop execution if the condition is met (i.e., change is below + threshold) + +### 4. Configure Delivery + +- Add delivery interface and configure recipients + +## Next Steps + +- [AI News Collation](./ai-news-collation) - AI-powered content processing diff --git a/versioned_docs/version-stable/advanced-examples/kibana-statistical-alert.md b/versioned_docs/version-stable/advanced-examples/kibana-statistical-alert.md deleted file mode 100644 index 5d7a6f1..0000000 --- a/versioned_docs/version-stable/advanced-examples/kibana-statistical-alert.md +++ /dev/null @@ -1,66 +0,0 @@ ---- -sidebar_position: 2 -description: Create sophisticated Kibana alerts based on statistical analysis and trend detection with Anaphora. -keywords: [statistical alert, trend detection, Kibana analytics, anomaly detection, Anaphora statistics] ---- - -# Kibana Statistical Alert - -Create alerts based on statistical analysis and trend detection. - -## Goal - -Alert when metrics deviate significantly from their normal baseline. - -## Use Cases - -- Anomaly detection for response times -- Traffic spike alerts -- Resource utilization warnings - -## Steps - -### 1. Create the Job - -Name it: "Response Time Anomaly Alert" - -### 2. Configure Advanced Capture - -``` -# Capture current value -Navigate → Kibana dashboard with avg response time -Capture value → [data-test-subj="avgResponseTime"] → $current - -# Capture baseline (you might get this from a saved search) -Navigate → Kibana baseline metrics -Capture value → [data-test-subj="baselineAvg"] → $baseline - -# Calculate deviation -Calculate → (($current - $baseline) / $baseline) * 100 → $deviation - -# Alert if deviation exceeds threshold -Conditional block → $deviation > 50: - ├── Capture snapshot → Full dashboard - └── Continue to delivery -Break -``` - -### 3. Configure Delivery - -- **Channel**: Slack or PagerDuty webhook -- **Message**: `Response time anomaly: {{$current}}ms ({{$deviation}}% above baseline)` - -### 4. Set Throttling - -Set appropriate throttling to avoid alert fatigue during prolonged incidents. - -## Advanced: Rolling Averages - -For more sophisticated analysis, consider: -- Capturing multiple time periods -- Calculating standard deviation -- Using percentile-based thresholds - -## Next Steps - -- [AI News Collation](./ai-news-collation) - AI-powered content processing diff --git a/versioned_docs/version-stable/advanced-examples/mixed-sources-report.md b/versioned_docs/version-stable/advanced-examples/mixed-sources-report.md index cfa37d8..026b3eb 100644 --- a/versioned_docs/version-stable/advanced-examples/mixed-sources-report.md +++ b/versioned_docs/version-stable/advanced-examples/mixed-sources-report.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Combine data from multiple sources like Kibana and Grafana into a single unified report using Anaphora. -keywords: [multi-source report, combined dashboard, Kibana Grafana, unified report, Anaphora advanced] +keywords: [ multi-source report, combined dashboard, Kibana Grafana, unified report, Anaphora advanced ] --- # Mixed Sources Report @@ -11,6 +11,7 @@ Create reports that combine data from multiple sources into a single deliverable ## Goal Generate a weekly executive report combining: + - Kibana: Application metrics dashboard - Grafana: Infrastructure health - Web page: Service status page @@ -25,46 +26,47 @@ Generate a weekly executive report combining: ### 1. Create a New Job -Name it: "Weekly Executive Summary" - -### 2. Configure Advanced Capture - -Build a multi-source workflow: - -``` -# Source 1: Kibana Application Metrics -Navigate → Kibana dashboard URL -Wait for visible → .dashboard-container -Capture snapshot → $appMetrics - -# Source 2: Grafana Infrastructure -Navigate → Grafana dashboard URL -Wait for visible → .react-grid-layout -Capture snapshot → $infraMetrics - -# Source 3: Status Page -Navigate → https://status.example.com -Capture snapshot → $statusPage -``` - -### 3. Configure Composition - -Arrange the three captures in your report template: -1. Header with date and title -2. Application metrics section -3. Infrastructure metrics section -4. Status page summary - -### 4. Deliver - -Send the combined report to your executive team. - -## Tips - -- Use consistent time ranges across sources -- Consider adding summary text between sections -- Test each source individually before combining - -## Next Steps - -- [Kibana Statistical Alert](./kibana-statistical-alert) - Advanced alerting +1. Navigate to **Jobs** +2. Click **Create New Job** + +### 2. Configure General Settings + +- **Frequency**: Weekly on Mondays at 8:00 AM + +### 3. Set Up Advanced Capture + +1. Enable **Advanced** mode to build a multi-capture workflow +2. Edit the preexisting **Navigate**-action: + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/dashboards#/view/application-metrics + ``` + - Choose authentication method: **ReadonlyREST** and add credentials + - Ensure **Take Snapshot** is checked +3. Add a second **Navigate** action: + - Select **Grafana** as the connector + - Enter your Grafana dashboard URL: + ``` + https://grafana.example.com/d/xyz789/infrastructure-health?orgId=1 + ``` + - Set **Authentication** to `Grafana` and add credentials + - Ensure **Take Snapshot** is checked +4. Add a third **Navigate** action: + - Select **Web Page** as the connector + - Enter your service status page URL: + ``` + https://status.example.com + ``` + - No authentication needed + - Ensure **Take Snapshot** is checked + +### 4. Configure Composition + +1. Add all three captured snapshots to the report +2. Arrange them in the desired order +3. Add headers and explanatory text as needed + +### 4. Configure Delivery + +- Add delivery interface and configure recipients diff --git a/versioned_docs/version-stable/basic-examples/conditional-report.md b/versioned_docs/version-stable/basic-examples/conditional-report.md deleted file mode 100644 index 58a3e28..0000000 --- a/versioned_docs/version-stable/basic-examples/conditional-report.md +++ /dev/null @@ -1,137 +0,0 @@ ---- -sidebar_position: 3 -description: Create intelligent alerts that trigger when conditions are met, with AI-powered root cause analysis and detailed PDF reports. -keywords: [Anaphora alerts, conditional alerting, AI root cause analysis, multi-system monitoring, intelligent notifications] ---- - -# Intelligent Alerting - -Create alerts that monitor your systems and notify you only when specific conditions are met — with AI-powered analysis to help identify root causes. - -## The Alerting Concept - -In Anaphora, **an alert is a conditional report**. Instead of sending notifications blindly, Anaphora: - -1. **Captures** data from one or more systems (dashboards, metrics, logs) -2. **Evaluates** conditions based on extracted values -3. **Analyzes** the situation using AI (optional) -4. **Delivers** a detailed PDF with context, not just a notification - -The result: operators receive actionable intelligence, not just "something is wrong." - -## Why PDF Alerts? - -Traditional alerting tools send a message: *"Error rate exceeded 5%"* - -Anaphora sends a **complete situation report**: -- Screenshots of affected dashboards at the moment of the issue -- Extracted metrics and values that triggered the alert -- AI-generated analysis suggesting possible root causes -- Historical context from multiple data sources - -## Use Cases - -| Scenario | What Anaphora Captures | AI Analysis | -|----------|------------------------|-------------| -| Error spike | Error dashboard + log samples | "Error pattern suggests database connection timeout" | -| Performance degradation | APM metrics + infrastructure stats | "CPU spike correlates with deployment at 14:32" | -| Security anomaly | Auth logs + network traffic | "Unusual login pattern from new geographic region" | -| Business threshold | Revenue dashboard + inventory | "Sales drop coincides with payment gateway errors" | - -## Example: Multi-System Alert - -Monitor your stack and get intelligent alerts when things go wrong. - -### 1. Create the Alert Job - -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Infrastructure Health Alert" -3. Set frequency: Every 5 minutes (`*/5 * * * *`) -4. Set throttling: 1 hour (avoid notification fatigue) - -### 2. Configure Multi-System Capture - -Toggle **Advanced** mode and build a workflow that checks multiple sources: - -``` -Navigate → Grafana infrastructure dashboard -Capture value → CPU usage element → $cpuUsage -Capture value → Error rate element → $errorRate -Capture snapshot → Dashboard overview - -Navigate → Kibana error logs -Capture value → Error count (last 5 min) → $recentErrors -Capture snapshot → Error log view - -Conditional block → $cpuUsage > 80 OR $errorRate > 5 OR $recentErrors > 100: - ├── AI Analysis → "Analyze these metrics and screenshots..." - └── (Continue to Compose/Deliver) -Break → (If all conditions are healthy, stop here) -``` - -### 3. Add AI Analysis - -In the capture workflow, add an **AI Analysis** action: - -``` -Prompt: "Analyze the captured dashboards and metrics: -- CPU: {{$cpuUsage}}% -- Error rate: {{$errorRate}}% -- Recent errors: {{$recentErrors}} - -Based on the visual data and these metrics, identify: -1. The most likely root cause -2. Which systems are affected -3. Recommended immediate actions" -``` - -The AI examines both the **screenshots** and the **extracted values** to provide contextual analysis. - -### 4. Compose the Alert Report - -Design a PDF that gives operators everything they need: - -- **Header**: Alert timestamp and severity -- **AI Summary**: Root cause analysis and recommendations -- **Dashboard Screenshots**: Visual state at time of alert -- **Raw Metrics**: Extracted values that triggered the alert -- **Context**: Links to relevant dashboards for further investigation - -### 5. Configure Delivery - -Send alerts to the right people: -- **Email**: On-call team with PDF attachment -- **Slack**: Alert channel with summary and PDF link -- **Webhook**: Integrate with PagerDuty, Opsgenie, or custom systems - -## How It Works - -```mermaid -flowchart LR - capture["Capture
Multi-system data"] - condition["Evaluate
Check thresholds"] - ai["AI Analysis
Root cause reasoning"] - compose["Compose
Build PDF report"] - deliver["Deliver
Notify operators"] - - capture --> condition - condition -->|"Thresholds exceeded"| ai - condition -->|"All healthy"| stop["Stop
No notification"] - ai --> compose --> deliver -``` - -The **Break** action stops execution when conditions are healthy. No alert fatigue — only actionable notifications. - -## Best Practices - -- **Combine sources**: Capture from multiple systems for complete context -- **Use throttling**: Prevent notification storms during ongoing incidents -- **Include raw data**: AI analysis is helpful, but operators need the numbers too -- **Set clear thresholds**: Start conservative, tune based on real incidents -- **Test the workflow**: Use the Test button to verify conditions trigger correctly - -## Next Steps - -- [Grafana Dashboard Report](./grafana-dashboard-report) - Add Grafana to your monitoring -- [AI Analysis](../advanced-examples/ai-news-collation) - More AI-powered workflows -- [Notification Throttling](../jobs/general#notification-throttling) - Control alert frequency diff --git a/versioned_docs/version-stable/basic-examples/grafana-dashboard-report.md b/versioned_docs/version-stable/basic-examples/grafana-dashboard-report.md index 1a9cd9c..9301e4c 100644 --- a/versioned_docs/version-stable/basic-examples/grafana-dashboard-report.md +++ b/versioned_docs/version-stable/basic-examples/grafana-dashboard-report.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 description: Capture and deliver scheduled Grafana dashboard reports with Anaphora for infrastructure monitoring. -keywords: [Grafana report, dashboard capture, infrastructure monitoring, scheduled report, Anaphora Grafana] +keywords: [ Grafana report, dashboard capture, infrastructure monitoring, scheduled report, Anaphora Grafana ] --- # Grafana Dashboard Report @@ -16,46 +16,36 @@ Send a daily infrastructure health report from Grafana to your ops team. ### 1. Create a New Job -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Infrastructure Health Report" +1. Navigate to **Jobs** +2. Click **Create New Job** ### 2. Configure General Settings - **Frequency**: Daily at 7:00 AM -- **Description**: "Daily infrastructure metrics from Grafana" ### 3. Set Up Capture -1. Select **Grafana** as the connector (or Generic URL) +1. Select **Grafana** as the connector 2. Enter your Grafana dashboard URL: - ``` - https://grafana.example.com/d/abc123/infrastructure?orgId=1 - ``` -3. Configure authentication (API key or basic auth) -4. Set time range parameters in the URL if needed + ``` + https://grafana.example.com/d/abc123/infrastructure?orgId=1 + ``` +3. Set **Authentication** to `Grafana` and add credentials ### 4. Configure Composition 1. Choose how to arrange captured panels -2. Select PDF or image output format -3. Add custom header with date/time +2. Add texts or headers as needed ### 5. Set Up Delivery 1. Choose delivery interface (Email, Slack, etc.) 2. Configure recipients -3. Set appropriate subject/message ### 6. Test and Save Verify the capture looks correct and save. -## Tips for Grafana - -- Use the `kiosk=tv` URL parameter for cleaner captures -- Set explicit time ranges in URL for consistent reports -- Consider capturing individual panels for more control - ## Next Steps -- [Advanced Examples](../advanced-examples/) - Complex multi-source reports +- [Advanced Examples](../advanced-examples/) - Unlock more complex report scenarios diff --git a/versioned_docs/version-stable/basic-examples/index.md b/versioned_docs/version-stable/basic-examples/index.md index 266bbff..95f8571 100644 --- a/versioned_docs/version-stable/basic-examples/index.md +++ b/versioned_docs/version-stable/basic-examples/index.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Step-by-step Anaphora tutorials for Kibana PDF reports, Grafana dashboard scheduling, and conditional alerts. Practical examples with complete configurations. -keywords: [Kibana PDF report, Grafana scheduled report, dashboard alert, Elasticsearch report, tutorial] +keywords: [ Kibana PDF report, Grafana scheduled report, dashboard alert, Elasticsearch report, tutorial ] --- # Basic Examples - Kibana & Grafana Report Tutorials @@ -10,12 +10,12 @@ Learn Anaphora through practical examples. Each example walks you through creati ## Available Examples -| Example | Description | -|---------|-------------| -| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | -| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | -| [Conditional Report](./basic-examples/conditional-report) | Reports that only send when criteria match | -| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | +| Example | Description | +|-------------------------------------------------------------------------|------------------------------------------------------| +| [Kibana Dashboard Report](./basic-examples/kibana-dashboard-report) | Schedule a daily PDF report of your Kibana dashboard | +| [Kibana Alert](./basic-examples/kibana-alert) | Send notifications when conditions are met | +| [Kibana Conditional Report](./basic-examples/kibana-conditional-report) | Reports that only send when criteria match | +| [Grafana Dashboard Report](./basic-examples/grafana-dashboard-report) | Capture and deliver Grafana dashboards | ## Prerequisites diff --git a/versioned_docs/version-stable/basic-examples/kibana-alert.md b/versioned_docs/version-stable/basic-examples/kibana-alert.md index b098b3b..ba195e3 100644 --- a/versioned_docs/version-stable/basic-examples/kibana-alert.md +++ b/versioned_docs/version-stable/basic-examples/kibana-alert.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Create conditional Kibana alerts with Slack notifications when error thresholds are exceeded using Anaphora. -keywords: [Kibana alert, conditional notification, Slack alert, error threshold, Anaphora alerting] +keywords: [ Kibana alert, conditional notification, Slack alert, error threshold, Anaphora alerting ] --- # Kibana Alert @@ -10,11 +10,12 @@ Create an alert that notifies you when specific conditions are met in your Kiban ## Goal -Send a Slack notification when the error count in your logs exceeds 100 in the last hour. +Send a notification when the error count in your logs exceeds 100 in the last hour. ## Concept In Anaphora, **an alert is a conditional report**. You create alerts by: + 1. Capturing data from Kibana 2. Evaluating conditions 3. Only delivering the report when conditions are met @@ -23,38 +24,41 @@ In Anaphora, **an alert is a conditional report**. You create alerts by: ### 1. Create a New Job -1. Navigate to **Jobs** > **Create New Job** -2. Name it: "Error Rate Alert" +1. Navigate to **Jobs** +2. Click **Create New Job** ### 2. Configure General Settings - **Frequency**: Every 5 minutes (`*/5 * * * *`) -- **Throttling**: 1 hour (avoid notification fatigue) +- **Max notify frequency**: 3 hours (avoid notification fatigue) :::tip Why Throttling? -Even if errors persist every 5 minutes, you'll only get one notification per hour. +Even if errors persist every 5 minutes, you'll only get one notification in 3 hours. ::: -### 3. Set Up Advanced Capture +### 3. Set Up Capture + +1. Select **Kibana** as the connector +2. Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` +3. Choose authentication method: **ReadonlyREST** and add credentials +4. Check **Deliver report only if conditions are met** +5. Set Hits to be greater than `100` -1. Toggle **Advanced** mode on -2. Add actions: +### 4. Compose the Alert Report -``` -Navigate → Kibana Discover (filtered for errors, last 1 hour) -Wait for visible → .euiDataGrid__content -Capture value → [data-test-subj="discoverQueryHits"] → $errorCount -Conditional block → $errorCount > 100: - └── Capture snapshot → Dashboard screenshot -``` +1. Add a text block +2. Edit the text and include `{{kibanaDiscoverHits}}` to show the number of errors +3. Add headers and other text as needed -### 4. Configure Delivery +### 5. Configure Delivery -1. Select **Slack** as delivery interface -2. Choose the alert channel -3. Message: `Alert: {{$errorCount}} errors in the last hour` +1. Select a delivery interface +2. Modify the body: `Alert: {{kibanaDiscoverHits}} errors in the last hour` -### 5. Test and Save +### 6. Test and Save 1. **Test** the job to verify the workflow 2. Check that conditions evaluate correctly @@ -62,8 +66,11 @@ Conditional block → $errorCount > 100: ## Result -You'll receive Slack alerts only when error count exceeds your threshold, with at most one notification per hour. +You'll receive alerts only when error count exceeds your threshold, with at most one notification per hour. ## Next Steps -- [Conditional Report](./conditional-report) - More complex conditions +- [Kibana Conditional Report](./kibana-conditional-report) - Need to also take a dashboard screenshot when the condition is met? See + how to use actions for conditional reports. +- [Kibana Anomaly Alert](../advanced-examples/kibana-anomaly-alert.md) - Need to compare current events to previous + events for anomaly detection? See this example for triggering alerts when events deviate from normal patterns. diff --git a/versioned_docs/version-stable/basic-examples/kibana-conditional-report.md b/versioned_docs/version-stable/basic-examples/kibana-conditional-report.md new file mode 100644 index 0000000..5c2e403 --- /dev/null +++ b/versioned_docs/version-stable/basic-examples/kibana-conditional-report.md @@ -0,0 +1,75 @@ +--- +sidebar_position: 3 +description: Create intelligent alerts that trigger when conditions are met, with AI-powered root cause analysis and detailed PDF reports. +keywords: [ Anaphora alerts, conditional alerting, AI root cause analysis, multi-system monitoring, intelligent notifications ] +--- + +# Kibana Conditional Report + +Create reports that will only be built and delivered when specific conditions are met. + +:::tip Kibana Conditional Snapshot Template +The **Kibana Conditional Snapshot** Template demonstrates this example for the Kibana demo instance. You can +use it as a starting point for your own conditional reporting jobs. +::: + +## Goal + +In this example, we will check the Kibana discover page for error logs. Then we will capture a snapshot of a dashboard. +The report with the captured dashboard will only be delivered if the number of errors exceeds a defined threshold. + +## Steps + +### 1. Create a new job + +1. Navigate to **Jobs** +2. Click **Create New Job** + +### 2. Configure General Settings + +- **Frequency**: Every hour +- **Max Notify Frequency**: 12 hours + +### 3. Set Up Capture + +1. Enable **Advanced** mode to build a conditional workflow +2. In the preexisting **Navigate**-action: + - select **Kibana** as the connector + - Enter your Kibana discover URL: + ``` + https://kibana.example.com/app/discover#/view/your-view-id + ``` + - Choose authentication method: **ReadonlyREST** and add credentials +3. Add a **Capture value** action to extract the number of error logs: + - Set the **variable name** to something like `error_count` + - Set **capture template** to `Kibana discover hits` + - Set **Variable type** to `Number` +4. Add a **Conditional block** to check if the error count is smaller than the threshold: + - Choose **Variable**: `error_count` + - Set **Condition operation** to `Lesser than` + - Set **Condition value** to `100` +5. Inside the conditional block, add a **Break** action to stop execution if the condition is met (i.e., error count is + below threshold) +6. Add another **Navigate** action + - Select **Kibana** as the connector + - Enter your Kibana dashboard URL: + ``` + https://kibana.example.com/app/dashboards#/view/your-dashboard-id + ``` + - Ensure that **Take Snapshot** is checked and set the configuration properly + +### 4. Compose the Report + +1. Add the captured snapshot +2. If desired, add a text block with the `{{error_count}}` variable to show the number of errors +3. Add headers and other text as needed + +### 5. Set Up Delivery + +1. Select **Email** as delivery interface (needs to be configured first in **Delivery Interfaces**) +2. Add recipient email addresses + +## Next Steps + +- [Grafana Dashboard Report](./grafana-dashboard-report) - Add Grafana to your monitoring +- [AI Analysis](../advanced-examples/ai-news-collation) - More AI-powered workflows diff --git a/versioned_docs/version-stable/basic-examples/kibana-dashboard-report.md b/versioned_docs/version-stable/basic-examples/kibana-dashboard-report.md index b7a7611..4cbc17e 100644 --- a/versioned_docs/version-stable/basic-examples/kibana-dashboard-report.md +++ b/versioned_docs/version-stable/basic-examples/kibana-dashboard-report.md @@ -1,13 +1,18 @@ --- sidebar_position: 1 description: Step-by-step tutorial to create a scheduled Kibana dashboard PDF report with email delivery in Anaphora. -keywords: [Kibana report tutorial, scheduled dashboard, PDF email, Anaphora example, dashboard automation] +keywords: [ Kibana report tutorial, scheduled dashboard, PDF email, Anaphora example, dashboard automation ] --- # Kibana Dashboard Report Create a scheduled report that captures your Kibana dashboard and delivers it via email. +:::tip Kibana Dashboard Snapshot Template +The **Kibana Dashboard Snapshot** Template demonstrates this example for the Kibana demo instance. You can use it as a +starting point for your own dashboard reporting jobs. +::: + ## Goal Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM. @@ -18,38 +23,35 @@ Send a daily PDF report of a Kibana dashboard to your team every morning at 9 AM 1. Navigate to **Jobs** in the sidebar 2. Click **Create New Job** -3. Enter a name: "Daily Dashboard Report" ### 2. Configure General Settings - **Frequency**: Daily at 9:00 AM (or use CRON: `0 9 * * *`) -- **Description**: "Morning dashboard snapshot for the team" ### 3. Set Up Capture 1. Select **Kibana** as the connector 2. Enter your dashboard URL: - ``` - https://your-kibana.example.com/app/dashboards#/view/abc123 - ``` -3. Choose authentication method (Basic or saved profile) + ``` + https://your-kibana.example.com/app/dashboards#/view/abc123 + ``` +3. Choose authentication method: **ReadonlyREST** and add credentials 4. Set time range: "Last 24 hours" ### 4. Configure Composition -1. Select a report template or use default -2. Preview the layout -3. Add header/footer if needed +1. Drag the captured dashboard snapshot into the layout +2. Add additional text blocks if needed +3. Adjust the layout for optimal viewing ### 5. Set Up Delivery -1. Select **Email** as delivery interface +1. Select **Email** as delivery interface (needs to be configured first in **Delivery Interfaces**) 2. Add recipient email addresses -3. Set subject line: `Daily Dashboard Report - {{date}}` ### 6. Test and Save -1. Click **Test** to run the job immediately +1. Use the test to send a sample report to your email 2. Verify the email arrives correctly 3. **Save** the job diff --git a/versioned_docs/version-stable/changelog.md b/versioned_docs/version-stable/changelog.md index de94fdd..74fc1d2 100644 --- a/versioned_docs/version-stable/changelog.md +++ b/versioned_docs/version-stable/changelog.md @@ -1,7 +1,7 @@ --- sidebar_position: 8 description: Anaphora release notes and changelog. New features, enhancements, bug fixes, and security updates for Kibana/Grafana report automation. -keywords: [Anaphora changelog, release notes, new features, updates, version history] +keywords: [ Anaphora changelog, release notes, new features, updates, version history ] --- # Changelog - Anaphora Release Notes @@ -15,115 +15,18 @@ All notable changes to Anaphora are documented here. - 🧐 **Enhancement** - Improvements to existing features - 🐞 **Fix** - Bug fixes ---- - -## [Unreleased] - -### 🚀 New Feature: Documentation restructure - -
-Complete reorganization of documentation structure - -The documentation has been restructured for better navigation and discoverability: -- New "Basic Examples" and "Advanced Examples" sections -- Dedicated "Jobs" section with detailed component documentation -- Expanded "Delivery Interfaces" with per-interface guides -- New "Administration" section for security and operations -- Added changelog page +## [0.9.0] - 2026-01-15 -
- ---- - -## [1.0.0] - 2024-12-01 - -### 🚀 New Feature: Kibana dashboard capture - -
-Automated screenshot capture from Kibana dashboards - -Anaphora can now capture screenshots from Kibana dashboards, Canvas workpads, and Discover pages. Features include: -- Automatic detection of Kibana page types -- Time range configuration -- Multiple authentication methods -- Full page or viewport capture modes - -
- -### 🚀 New Feature: Grafana support +### 🚀 New Feature: Grafana Connector
Capture and report on Grafana dashboards -Full support for Grafana dashboard capture: -- API key authentication -- Panel-level capture -- Time range parameter support -- Kiosk mode for cleaner captures - -
- -### 🚀 New Feature: Conditional alerts - -
-Send reports only when conditions are met - -Create alerts that only trigger when specific criteria match: -- Extract values from pages into variables -- Perform calculations on captured data -- Conditional execution blocks -- Break action to skip report delivery - -
- -### 🚀 New Feature: Multi-channel delivery - -
-Deliver reports via email, Slack, or webhooks - -Multiple delivery options: -- SMTP email with attachment support -- Mailgun API integration -- Slack workspace integration with rich formatting -- Webhook delivery for custom integrations - -
- -### 🚀 New Feature: Multi-tenant spaces - -
-Isolate jobs and reports by team or project - -Workspace isolation for enterprise deployments: -- Separate jobs and reports per space -- Role-based access control -- Independent retention policies -- User assignment to multiple spaces - -
- -### 🚀 New Feature: Authentication providers - -
-Support for LDAP, SAML, and local authentication - -Enterprise authentication options: -- Local username/password authentication -- LDAP/Active Directory integration -- SAML 2.0 SSO (Okta, Azure AD, OneLogin) -- Role mapping from identity providers - -
- -### 🚀 New Feature: Report templates and branding - -
-Custom branded reports for professional delivery +With the new Grafana connector, Anaphora supports an out-of-the-box experience for capturing Grafana dashboards. +Features include: -Brand your reports: -- Custom logo placement -- Color scheme configuration -- Template variables for personalization -- PDF and image output formats +- Configurable authentication using the Grafana credentials +- Capture entire dashboards with automatic waiting for panels to load +- Capture individual panels for granular reporting
diff --git a/versioned_docs/version-stable/data-retention/index.md b/versioned_docs/version-stable/data-retention/index.md index 7e4b986..37877a0 100644 --- a/versioned_docs/version-stable/data-retention/index.md +++ b/versioned_docs/version-stable/data-retention/index.md @@ -1,12 +1,13 @@ --- sidebar_position: 7 description: Manage Anaphora data retention - configure storage policies for report history, captured data, and audit logs. Automatic housekeeping and cleanup. -keywords: [data retention, report storage, audit logs, retention policy, storage management, housekeeping] +keywords: [ data retention, report storage, audit logs, retention policy, storage management, housekeeping ] --- # Data Retention - Report History & Storage Management -Anaphora stores captured data and generated reports for reference and auditing purposes. This section covers how data is stored, managed, and automatically cleaned up. +Anaphora stores captured data and generated reports for reference and auditing purposes. This section covers how data is +stored, managed, and automatically cleaned up. ## Overview @@ -15,113 +16,10 @@ The Data Retention section provides access to: - **Runs** - Execution history of your jobs, including successful captures, failures, and delivery status - **Reports** - Generated report documents and archives -## Data Types - -| Type | Description | Storage Impact | -|------|-------------|----------------| -| **Captures** | Raw screenshots and extracted data | High | -| **Reports** | Generated PDF and image documents | High | -| **Run History** | Execution logs and status records | Medium | -| **Variables** | Extracted values from capture workflows | Low | -| **Audit Logs** | User actions and system events | Low | - ## Housekeeping & Automatic Cleanup -Anaphora includes automatic housekeeping to manage storage usage over time. - -### Retention Rules - -Configure rules to automatically delete old data: - -```mermaid -flowchart LR - d1["Day 1"] --> d15["Day 15"] --> d30["Day 30"] --> d31["Day 31"] - d31 --> deleted["Deleted"] - - style d31 fill:#ff6b6b - style deleted fill:#ff6b6b -``` - -*Example: Keep only the last 30 days of reports* - -### Configuration Options - -| Setting | Description | Example | -|---------|-------------|---------| -| **Time-based** | Delete data older than X days | Keep last 30 days | -| **Count-based** | Keep only the last X reports | Keep last 100 reports | -| **Size-based** | Delete when storage exceeds limit | Max 10 GB per space | -| **Per-job rules** | Different retention per job type | Critical jobs: 90 days | - -### Housekeeping Schedule - -- Automatic cleanup runs on a configurable schedule -- Default: Daily at midnight (configurable) -- Manual trigger available for immediate cleanup -- Dry-run mode to preview what will be deleted - -## Storage Management - -### Per-Space Isolation - -Each Space maintains its own storage quota and retention policies: - -- Independent retention rules per space -- Storage usage tracking per space -- Alerts when approaching quota limits - -### Storage Metrics - -Monitor storage usage through: - -- Dashboard widgets showing current usage -- Historical trends of storage growth -- Breakdown by data type (captures, reports, logs) -- Projections based on current growth rate - -## Data Lifecycle - -```mermaid -flowchart LR - capture["Capture
Fresh data"] - store["Store
Active access"] - archive["Archive
Aged storage"] - delete["Delete
Expired cleanup"] - - capture --> store --> archive --> delete -``` - -1. **Capture** - New data is captured and stored -2. **Active** - Data is readily available for viewing and export -3. **Archive** - Older data may be compressed or moved to cold storage -4. **Cleanup** - Data exceeding retention policy is permanently deleted - -## Compliance Considerations - -For regulated environments: - -- **Audit trails** - Maintain logs of who accessed what data and when -- **Immutable logs** - System events cannot be modified or deleted -- **Export before delete** - Option to export data before automatic cleanup -- **Legal hold** - Suspend deletion for specific data sets - -## Best Practices - -### Recommended Retention Policies - -| Data Type | Recommended Retention | -|-----------|----------------------| -| Production reports | 90 days | -| Development/test reports | 7-14 days | -| Audit logs | 1 year | -| Run history | 30 days | - -### Storage Optimization - -- Use element-level capture instead of full-page when possible -- Configure appropriate image quality/compression -- Archive important reports externally before cleanup -- Review and adjust retention policies quarterly +Anaphora includes automatic housekeeping to manage storage usage over time. You can configure retention policies for +runs and reports in the job settings. ## Next Steps diff --git a/versioned_docs/version-stable/data-retention/reports.md b/versioned_docs/version-stable/data-retention/reports.md index 1582c3f..cd78305 100644 --- a/versioned_docs/version-stable/data-retention/reports.md +++ b/versioned_docs/version-stable/data-retention/reports.md @@ -1,7 +1,7 @@ --- sidebar_position: 3 description: Access and manage generated reports in Anaphora. Browse report history, configure retention, and download captured data. -keywords: [reports, report storage, report retention, PDF reports, captured data, Anaphora reports] +keywords: [ reports, report storage, report retention, PDF reports, captured data, Anaphora reports ] --- # Reports @@ -12,21 +12,8 @@ The Reports section provides access to all generated report documents and their ## Overview -Reports are the final output of your capture jobs. Each report contains: - -- Captured screenshots -- Extracted data and variables -- Applied templates and formatting -- Delivery timestamps and status - -## Report Types - -| Type | Description | -|------|-------------| -| Screenshot Report | Visual capture of target content | -| Data Report | Extracted values and metrics | -| Composite Report | Combined screenshots and data | -| Template Report | Formatted using custom templates | +Reports are the final output of your capture jobs. A report is a PDF document assembled from captured screenshots, +extracted data, and formatted content. ## Viewing Reports @@ -34,12 +21,9 @@ Access reports through: - **Run history** - View report from specific execution - **Report browser** - Browse all generated reports -- **Search** - Find reports by date, job, or content ## Report Storage -Reports are stored according to your retention policy settings. Configure: - -- **Retention period** - How long to keep reports -- **Storage location** - Local or cloud storage options -- **Archival rules** - Automatic archival of old reports +Most importantly, reports are delivered to configured destinations (email, Slack, S3, webhooks). +However, Anaphora also stores copies of generated reports for reference. +In the job configuration, you can set how long reports are retained. diff --git a/versioned_docs/version-stable/data-retention/runs.md b/versioned_docs/version-stable/data-retention/runs.md index c33c1cd..6cd1239 100644 --- a/versioned_docs/version-stable/data-retention/runs.md +++ b/versioned_docs/version-stable/data-retention/runs.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: View and debug job execution history in Anaphora. Track run statuses, identify failures, and review captured content. -keywords: [job runs, execution history, run status, debugging, job monitoring, Anaphora runs] +keywords: [ job runs, execution history, run status, debugging, job monitoring, Anaphora runs ] --- # Runs @@ -21,28 +21,9 @@ Every time a job executes, a **run** record is created. This allows you to: ## Run Statuses -| Status | Description | -|--------|-------------| -| Success | Job completed and report delivered | -| Partial | Some actions succeeded, others failed | -| Failed | Job execution failed | -| Skipped | Conditions not met, no report sent | - -## Viewing Run Details - -Select any run to view: - -- Execution timestamp -- Job configuration at time of run -- Captured screenshots and data -- Delivery status and logs -- Error messages (if any) - -## Debugging Failed Runs - -When a run fails, check: - -1. **Run logs** - Detailed execution trace -2. **Screenshots** - Visual state at failure point -3. **Network errors** - Connection or timeout issues -4. **Selector changes** - Target page structure may have changed +| Status | Description | +|-----------------|-----------------------------------------------------------------------| +| Success | Job completed and report delivered | +| Delivery issues | The report was created but could not be delivered to all destinations | +| Failed | Job execution failed | +| Skipped | Conditions not met, no report sent | diff --git a/versioned_docs/version-stable/delivery-interfaces/index.md b/versioned_docs/version-stable/delivery-interfaces/index.md index cb0bd8d..b024abb 100644 --- a/versioned_docs/version-stable/delivery-interfaces/index.md +++ b/versioned_docs/version-stable/delivery-interfaces/index.md @@ -1,46 +1,26 @@ --- sidebar_position: 5 description: Configure Anaphora delivery channels - send reports via SMTP email, Mailgun, Slack, webhooks, or S3 archiving. PDF export and multi-channel distribution. -keywords: [email reports, Slack reports, webhook delivery, SMTP configuration, Mailgun integration, S3 archiving, PDF export, report distribution] +keywords: [ email reports, Slack reports, webhook delivery, SMTP configuration, Mailgun integration, S3 archiving, PDF export, report distribution ] --- # Delivery Interfaces - Email, Slack, S3 & Webhook -Delivery Interfaces define how reports reach your recipients. Once a report is generated, Anaphora handles distribution through multiple channels simultaneously. +Delivery Interfaces define how reports reach your recipients. Once a report is generated, Anaphora handles distribution +through multiple channels simultaneously. ## Available Interfaces -| Interface | Description | Best For | -|-----------|-------------|----------| -| [SMTP](/delivery-interfaces/smtp) | Direct email via SMTP server | Corporate email systems | -| [Mailgun](/delivery-interfaces/mailgun) | Email via Mailgun API | High-volume delivery | -| [Slack](/delivery-interfaces/slack) | Slack workspace integration | Team notifications | -| [S3](/delivery-interfaces/s3) | S3-compatible object storage | Archiving & compliance | -| [WebHook](/delivery-interfaces/webhook) | Custom HTTP endpoints | Integrations & automation | - -## Output Formats - -Reports can be delivered in multiple formats: - -| Format | Description | Use Case | -|--------|-------------|----------| -| **PDF** | Portable document format | Formal reports, archiving, printing | -| **PNG/JPEG** | Image formats | Quick previews, Slack thumbnails | -| **HTML** | Web format | Interactive viewing, email body | -| **Raw data** | JSON payload | Webhook integrations, further processing | - -## PDF Export - -Generate professional PDF reports directly from Anaphora: - -- **View in browser** - Preview reports before delivery -- **Download** - Manual PDF export from the Reports section -- **Email attachment** - Automatically attach PDFs to email delivery -- **Custom styling** - Branded headers, footers, and page layouts +| Interface | Description | Best For | +|-----------------------------------------|------------------------------|---------------------------| +| [SMTP](/delivery-interfaces/smtp) | Direct email via SMTP server | Corporate email systems | +| [Mailgun](/delivery-interfaces/mailgun) | Email via Mailgun API | High-volume delivery | +| [S3](/delivery-interfaces/s3) | S3-compatible object storage | Archiving & compliance | +| [WebHook](/delivery-interfaces/webhook) | Custom HTTP endpoints | Integrations & automation | ## Configuration -1. Navigate to **Settings** > **Delivery Interfaces** +1. Navigate to **Delivery Interfaces** 2. Click **Add Interface** 3. Select type and configure credentials 4. Test the connection @@ -51,39 +31,7 @@ Generate professional PDF reports directly from Anaphora: Once configured, interfaces appear in the job's **Delivery** tab: - Select one or multiple delivery channels -- Configure per-channel settings (recipients, subject lines, etc.) -- Set delivery conditions (always, on success, on failure) - -## Multiple Interfaces - -You can configure multiple interfaces of the same type: - -| Scenario | Configuration | -|----------|---------------| -| **Different teams** | Separate Slack channels per team | -| **Backup delivery** | Primary SMTP + fallback Mailgun | -| **Regional separation** | Different email servers per region | -| **Integration variety** | Multiple webhooks for different systems | - -## Delivery Flow - -```mermaid -flowchart LR - report["Report Generated"] - - subgraph interfaces["Delivery Interfaces"] - email["Email"] - slack["Slack"] - s3["S3"] - webhook["Webhook"] - end - - report --> interfaces - email --> recipients["Recipients"] - slack --> channels["Channels"] - s3 --> bucket["S3 Bucket"] - webhook --> endpoints["Endpoints"] -``` +- Configure per-channel settings (recipients, notification body, etc.) ## Next Steps diff --git a/versioned_docs/version-stable/delivery-interfaces/mailgun.md b/versioned_docs/version-stable/delivery-interfaces/mailgun.md index db47b06..908efc6 100644 --- a/versioned_docs/version-stable/delivery-interfaces/mailgun.md +++ b/versioned_docs/version-stable/delivery-interfaces/mailgun.md @@ -1,7 +1,7 @@ --- sidebar_position: 2 description: Configure Mailgun API integration for reliable email delivery with built-in analytics and better deliverability. -keywords: [Mailgun integration, email API, transactional email, Anaphora Mailgun, email delivery] +keywords: [ Mailgun integration, email API, transactional email, Anaphora Mailgun, email delivery ] --- # Mailgun @@ -14,18 +14,17 @@ Send reports via the Mailgun email API. - No SMTP server to manage - Better deliverability tracking -- Built-in analytics +- Easy setup - Higher sending limits ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| API Key | Mailgun API key | Yes | -| Domain | Your Mailgun domain | Yes | -| From Address | Sender email | Yes | -| Region | US or EU | Yes | +| Field | Description | Required | +|-----------------|-------------------------------------------------------------------------|----------| +| Name | Interface identifier | Yes | +| Sender email | Use your MailGun domain with any name e.g. myname@my-mailgun-domain.com | Yes | +| Sender name | Use any name that should be displayed as sender | No | +| Mailgun API key | API authentication | Yes | ## Setup Steps @@ -34,20 +33,12 @@ Send reports via the Mailgun email API. 1. Log in to Mailgun 2. Navigate to **Settings** > **API Keys** 3. Copy your Private API Key -4. Note your sending domain - -### 2. Configure in Anaphora - -1. Go to **Settings** > **Delivery Interfaces** -2. Add new **Mailgun** interface -3. Enter API key and domain -4. Select region (US or EU) -5. Set from address -6. Test and save +4. Note your Mailgun sender domain (to use in sender email) ## Domain Verification Ensure your Mailgun domain is verified for best deliverability: + - Add DNS records as instructed by Mailgun - Verify SPF and DKIM are configured diff --git a/versioned_docs/version-stable/delivery-interfaces/s3.md b/versioned_docs/version-stable/delivery-interfaces/s3.md index b47001f..ad2c4ad 100644 --- a/versioned_docs/version-stable/delivery-interfaces/s3.md +++ b/versioned_docs/version-stable/delivery-interfaces/s3.md @@ -1,33 +1,34 @@ --- sidebar_position: 5 description: Archive reports to S3 object storage - AWS S3, MinIO, and S3-compatible storage for compliance and historical records. -keywords: [S3 archiving, AWS S3, MinIO, object storage, report archive, compliance storage] +keywords: [ S3 archiving, AWS S3, MinIO, object storage, report archive, compliance storage ] --- # S3 Object Storage -![S3 Object Storage delivery interface configuration showing access key, secret key, region, bucket name, and custom endpoint fields](images/s3.png) + Archive reports to S3-compatible object storage for long-term retention, compliance, and historical reference. +![S3 Object Storage delivery interface configuration showing access key, secret key, region, bucket name, and custom endpoint fields](images/s3.png) + ## Use Cases -| Scenario | Benefit | -|----------|---------| -| **Compliance archiving** | Immutable records for audit requirements | +| Scenario | Benefit | +|--------------------------|------------------------------------------------| +| **Compliance archiving** | Immutable records for audit requirements | | **Historical reference** | "What did this dashboard look like on date X?" | -| **Long-term retention** | Store beyond housekeeping limits | -| **Cross-system access** | Other tools can retrieve archived reports | +| **Long-term retention** | Store beyond housekeeping limits | +| **Cross-system access** | Other tools can retrieve archived reports | ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| **Name** | Interface identifier | Yes | -| **Type** | S3 Object Storage | Yes | -| **Access key ID** | AWS access key or S3-compatible credentials | Yes | -| **Secret access key** | AWS secret key (stored encrypted) | Yes | -| **Region** | AWS region (e.g., `eu-west-1`) | Yes | -| **Bucket name** | Target S3 bucket | Yes | -| **Custom endpoint** | For S3-compatible storage (MinIO, etc.) | No | +| Field | Description | Required | +|-----------------------|---------------------------------------------|----------| +| **Name** | Interface identifier | Yes | +| **Access key ID** | AWS access key or S3-compatible credentials | Yes | +| **Secret access key** | AWS secret key (stored encrypted) | Yes | +| **Region** | AWS region (e.g., `eu-west-1`) | Yes | +| **Bucket name** | Target S3 bucket | Yes | +| **Custom endpoint** | For S3-compatible storage (MinIO, etc.) | No | ## Provider Configurations @@ -71,38 +72,6 @@ Bucket name: your-bucket Custom endpoint: https://s3.us-west-002.backblazeb2.com ``` -## Path Organization - -Reports are stored with a configurable path structure. Configure the path prefix in the job's Delivery settings: - -``` -s3://my-reports-bucket/ -├── anaphora/ -│ ├── daily-dashboards/ -│ │ ├── 2025/ -│ │ │ ├── 01/ -│ │ │ │ ├── 2025-01-15-dashboard.pdf -│ │ │ │ └── 2025-01-16-dashboard.pdf -│ ├── compliance-reports/ -│ │ └── ... -│ └── alerts/ -│ └── ... -``` - -### Path Variables - -Use variables in the path prefix for automatic organization: - -| Variable | Description | Example | -|----------|-------------|---------| -| `{{year}}` | 4-digit year | `2025` | -| `{{month}}` | 2-digit month | `01` | -| `{{day}}` | 2-digit day | `15` | -| `{{job_name}}` | Job identifier | `daily-dashboard` | -| `{{date}}` | Full date | `2025-01-15` | - -**Example path prefix:** `anaphora/{{job_name}}/{{year}}/{{month}}/` - ## IAM Permissions For AWS S3, the IAM user/role needs these permissions: @@ -131,55 +100,21 @@ For AWS S3, the IAM user/role needs these permissions: For write-only archiving, you can remove `s3:GetObject` permission. ::: -## Lifecycle Policies - -Configure S3 lifecycle policies for automatic management: - -| Policy | Description | -|--------|-------------| -| **Transition to Glacier** | Move old reports to cheaper storage | -| **Expiration** | Auto-delete after retention period | -| **Versioning** | Keep multiple versions for compliance | - -### Example Lifecycle Rule (AWS) - -```json -{ - "Rules": [ - { - "ID": "ArchiveOldReports", - "Status": "Enabled", - "Filter": { "Prefix": "anaphora/" }, - "Transitions": [ - { - "Days": 90, - "StorageClass": "GLACIER" - } - ], - "Expiration": { - "Days": 365 - } - } - ] -} -``` - ## Testing 1. Configure the S3 interface with your credentials 2. Click **Test** 3. Verify a test file appears in your bucket -4. Check the file path matches your expectations ## Troubleshooting -| Issue | Solution | -|-------|----------| -| Access Denied | Verify IAM permissions, check bucket policy | -| Invalid credentials | Double-check access key and secret | -| Bucket not found | Verify bucket name and region match | -| Connection timeout | Check custom endpoint URL, verify network access | -| SSL certificate error | For self-signed certs, configure trust settings | +| Issue | Solution | +|-----------------------|--------------------------------------------------| +| Access Denied | Verify IAM permissions, check bucket policy | +| Invalid credentials | Double-check access key and secret | +| Bucket not found | Verify bucket name and region match | +| Connection timeout | Check custom endpoint URL, verify network access | +| SSL certificate error | For self-signed certs, configure trust settings | ## Best Practices @@ -188,18 +123,4 @@ Configure S3 lifecycle policies for automatic management: - Use dedicated IAM credentials with minimal permissions - Enable bucket versioning for compliance requirements - Consider enabling server-side encryption (SSE-S3 or SSE-KMS) -- Restrict bucket access with bucket policies - -### Organization - -- Use consistent path prefixes across jobs -- Include date components for easy browsing -- Separate compliance reports from operational reports -- Document your bucket structure - -### Cost Management - -- Configure lifecycle policies to transition old data to Glacier -- Set expiration for non-critical reports -- Monitor bucket size and request costs -- Consider S3 Intelligent-Tiering for variable access patterns +- Restrict bucket access with bucket policies \ No newline at end of file diff --git a/versioned_docs/version-stable/delivery-interfaces/slack.md b/versioned_docs/version-stable/delivery-interfaces/slack.md index 6ebe680..d4b4e70 100644 --- a/versioned_docs/version-stable/delivery-interfaces/slack.md +++ b/versioned_docs/version-stable/delivery-interfaces/slack.md @@ -1,20 +1,12 @@ --- sidebar_position: 3 description: Configure Slack webhook integration to deliver Anaphora reports directly to Slack channels with rich formatting. -keywords: [Slack integration, webhook delivery, Slack notifications, report delivery, Anaphora Slack] +keywords: [ Slack integration, webhook delivery, Slack notifications, report delivery, Anaphora Slack ] --- # Slack -Deliver reports directly to Slack channels. - -## Configuration - -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| Webhook URL | Slack Incoming Webhook | Yes | -| Default Channel | Fallback channel | No | +Deliver reports directly to Slack channels. Use the webhook delivery interface to send Slack messages. ## Setup Steps @@ -35,27 +27,16 @@ Deliver reports directly to Slack channels. ### 3. Configure in Anaphora -1. Go to **Settings** > **Delivery Interfaces** -2. Add new **Slack** interface +1. Go to **Delivery Interfaces** +2. Add new **Webhook** interface 3. Paste the Webhook URL -4. Test and save - -## Message Formatting - -Reports sent to Slack include: -- Report title as header -- Thumbnail preview (if image) -- Download link for full PDF -- Key metrics (if extracted) - -## Multiple Channels - -Create separate interfaces for different channels, or override the channel per-job. - -## Troubleshooting - -| Issue | Solution | -|-------|----------| -| Webhook invalid | Regenerate webhook URL | -| Channel not found | Verify channel exists and bot has access | -| Message too large | Reduce captured content size | +4. Add the ```Authorization``` header with value ```Bearer xoxb-your-slack-bot-token``` +5. Set the method to **POST** and body type to **JSON** +6. Add the JSON body: +```json +{ + "channel": "#your-channel", + "text": "$MESSAGE" +} +``` +7. Test and save diff --git a/versioned_docs/version-stable/delivery-interfaces/smtp.md b/versioned_docs/version-stable/delivery-interfaces/smtp.md index 2cddaf2..72ac868 100644 --- a/versioned_docs/version-stable/delivery-interfaces/smtp.md +++ b/versioned_docs/version-stable/delivery-interfaces/smtp.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Configure SMTP email delivery for Anaphora reports. Supports SSL, STARTTLS, and common providers like Gmail and Office 365. -keywords: [SMTP configuration, email delivery, SSL email, Gmail SMTP, Office 365 SMTP, Anaphora email] +keywords: [ SMTP configuration, email delivery, SSL email, Gmail SMTP, Office 365 SMTP, Anaphora email ] --- # SMTP @@ -12,15 +12,15 @@ Send reports via your own SMTP email server. Supports SSL, STARTLS, plain ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| Host | SMTP server hostname | Yes | -| Port | SMTP port (25, 465, 587) | Yes | -| Username | SMTP authentication user | Usually | -| Password | SMTP authentication password | Usually | -| From Address | Sender email address | Yes | -| TLS/SSL | Encryption mode | Recommended | +| Field | Description | Required | +|--------------|------------------------------|-------------| +| Name | Interface identifier | Yes | +| Host | SMTP server hostname | Yes | +| Port | SMTP port (25, 465, 587) | Yes | +| Username | SMTP authentication user | Usually | +| Password | SMTP authentication password | Usually | +| From Address | Sender email address | Yes | +| TLS/SSL | Encryption mode | Recommended | ## Common Configurations @@ -61,8 +61,8 @@ TLS: STARTTLS ## Troubleshooting -| Issue | Solution | -|-------|----------| -| Connection refused | Check firewall, verify port | +| Issue | Solution | +|-----------------------|-----------------------------------------| +| Connection refused | Check firewall, verify port | | Authentication failed | Verify credentials, check app passwords | -| TLS error | Try different TLS mode | +| TLS error | Try different TLS mode | diff --git a/versioned_docs/version-stable/delivery-interfaces/webhook.md b/versioned_docs/version-stable/delivery-interfaces/webhook.md index f4e6fdb..28a2b28 100644 --- a/versioned_docs/version-stable/delivery-interfaces/webhook.md +++ b/versioned_docs/version-stable/delivery-interfaces/webhook.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 description: Configure webhook delivery to send Anaphora reports to custom HTTP endpoints. Integrate with any system via JSON payloads. -keywords: [webhook integration, HTTP delivery, API integration, custom notifications, automation, Anaphora webhook] +keywords: [ webhook integration, HTTP delivery, API integration, custom notifications, automation, Anaphora webhook ] --- # WebHook @@ -19,67 +19,53 @@ Send reports to custom HTTP endpoints for integration with any system. ## Configuration -| Field | Description | Required | -|-------|-------------|----------| -| Name | Interface identifier | Yes | -| URL | Endpoint URL | Yes | -| Method | HTTP method (POST/PUT) | Yes | -| Headers | Custom headers | No | -| Authentication | Basic/Bearer/None | No | +| Field | Description | Required | +|-----------|-------------------------|----------| +| Name | Interface identifier | Yes | +| URL | Endpoint URL | Yes | +| Method | HTTP method (POST/PUT) | Yes | +| Headers | Custom headers | No | +| Body type | JSON, form-data | Yes | +| JSON Body | Custom payload template | No | +| Form Data | Key-value pairs | No | ## Payload Format -Anaphora sends a JSON payload: +### JSON Template + +Define a JSON structure that works with your endpoint. Use the ```$MESSAGE``` variable as placeholder for the report +content. This variable will be replaced with the custom text that you define in the job's delivery settings. + +Example: ```json { - "job_name": "Daily Report", - "job_id": "abc123", - "timestamp": "2026-01-15T09:00:00Z", - "status": "success", - "report_url": "https://anaphora.example.com/reports/xyz", - "variables": { - "error_count": 42, - "alert_triggered": true - }, - "attachments": [ - { - "type": "pdf", - "url": "https://anaphora.example.com/files/report.pdf" - } - ] + "title": "Anaphora Report", + "content": "$MESSAGE" } ``` -## Custom Headers +### Form Data -Add headers for authentication or routing: +Send key-value pairs as form data. Use the ```$MESSAGE``` variable for the report content. + +Example: ``` -Authorization: Bearer your-token -X-Custom-Header: value -Content-Type: application/json +report_title=Anaphora Report +report_content=$MESSAGE ``` -## Authentication Options +### JSON in Job Delivery -| Type | Configuration | -|------|---------------| -| None | No authentication | -| Basic | Username and password | -| Bearer | Token in Authorization header | -| Custom | Via custom headers | +In this case the entire body is defined in the job's delivery settings. -## Testing - -1. Use a tool like [webhook.site](https://webhook.site) for testing -2. Configure the test URL in Anaphora -3. Send a test payload -4. Verify the payload structure meets your needs +## Custom Headers -## Error Handling +Add headers for authentication or routing: -Anaphora retries failed webhook deliveries: -- 3 retry attempts -- Exponential backoff -- Failures logged in job history +``` +Authorization: Bearer your-token +X-Custom-Header: value +Content-Type: application/json +``` diff --git a/versioned_docs/version-stable/getting-started/configuration.md b/versioned_docs/version-stable/getting-started/configuration.md index a35ba65..569c2b8 100644 --- a/versioned_docs/version-stable/getting-started/configuration.md +++ b/versioned_docs/version-stable/getting-started/configuration.md @@ -1,53 +1,25 @@ --- sidebar_position: 2 description: Configure Anaphora with environment variables for production deployments. PUBLIC_URL, admin credentials, and license setup. -keywords: [Anaphora configuration, environment variables, PUBLIC_URL, setup guide, production deployment] +keywords: [ Anaphora configuration, environment variables, PUBLIC_URL, setup guide, production deployment ] --- # Configuration Guide -Configure Anaphora for your environment and requirements. - -## Environment Variables - -Anaphora is configured via environment variables: - -| Variable | Description | Required | -|----------|-------------|----------| -| `PUBLIC_URL` | External URL where Anaphora is accessible | Yes (production) | -| `ADMIN_USERNAME` | Initial admin username | No (default: `admin`) | -| `ADMIN_PASSWORD` | Initial admin password | No (prompted on first login) | -| `ACTIVATION_KEY` | PRO/Enterprise activation key | No | -| `ANAPHORA_DATA_DIR` | Data storage path | No (default: `/data`) | - -### PUBLIC_URL - -The `PUBLIC_URL` environment variable defines the external URL where Anaphora is accessible. This is **required for production deployments** and used for: - -- SSO callback URLs (SAML, OIDC) -- Links in email notifications -- Webhook response URLs - -```bash -# Example: Production deployment -PUBLIC_URL=https://anaphora.company.com - -# Example: Local development (optional) -PUBLIC_URL=http://localhost:3000 -``` - -:::warning Required for SSO -If you're using SAML or OIDC authentication, `PUBLIC_URL` must be set correctly. The callback URLs registered with your identity provider must match this value. -::: +After installing Anaphora and setting it up with Environment variables, you can further configure it in the admin UI. ## Initial Setup On first launch: 1. Navigate to `PUBLIC_URL` in your browser -2. Log in with admin credentials (set via environment variables or prompted) -3. Configure your license if using PRO/Enterprise features -4. Create your first job +2. Create the initial admin user (if not set via env vars) +3. Log in with your admin credentials +4. Go to **Settings** → **System** to review and adjust global settings +5. Configure your license if using PRO/Enterprise features +6. Create your first job + + ## Next Steps diff --git a/versioned_docs/version-stable/getting-started/features.md b/versioned_docs/version-stable/getting-started/features.md index e9f0676..842a6cf 100644 --- a/versioned_docs/version-stable/getting-started/features.md +++ b/versioned_docs/version-stable/getting-started/features.md @@ -1,12 +1,13 @@ --- sidebar_position: 3 description: Compare Anaphora Free, PRO, and Enterprise editions. See what's included in each tier and choose the right plan for your reporting needs. -keywords: [Anaphora features, free edition, pro license, enterprise edition, activation key, feature comparison, pricing tiers] +keywords: [ Anaphora features, free edition, pro license, enterprise edition, activation key, feature comparison, pricing tiers ] --- # Features & Editions -Choose the edition that fits your needs. All editions include the **full reporting engine** — higher tiers unlock team features and integrations. +Choose the edition that fits your needs. All editions include the **full reporting engine** — higher tiers unlock team +features and integrations. :::info 🚀 Ready to try PRO or Enterprise? **[Get a free trial key →](https://portal.anaphora.it)** — No credit card required. Instant activation. @@ -17,13 +18,16 @@ Choose the edition that fits your needs. All editions include the **full reporti **Perfect for evaluation and personal projects** :::tip What you get + - ✅ Up to **2 scheduled jobs** - ✅ Kibana, Grafana, and generic web capture - ✅ PDF report composer with custom layouts -- ✅ Email (SMTP), Mailgun, Slack, and Webhook delivery +- ✅ Email (SMTP) delivery - ✅ Notification throttling and retry policies - ✅ Local user authentication -::: +- ✅ **Self-Monitoring API** — health endpoints for external systems +- ✅ **AI Analysis** — LLM-powered summaries and anomaly detection + ::: **Best for:** Trying Anaphora, personal dashboards, small-scale reporting @@ -34,11 +38,12 @@ Choose the edition that fits your needs. All editions include the **full reporti **For production teams who need unlimited jobs and AI** :::tip Everything in Free, plus + - ✅ **Unlimited jobs** — no restrictions +- ✅ **Additional Delivery** - Mailgun, Slack, Webhook, and S3 - ✅ **Spaces** — organize jobs into isolated workspaces -- ✅ **AI Analysis** — LLM-powered summaries and anomaly detection - ✅ **Priority support** — faster response times -::: + ::: **Best for:** Production workloads, growing teams, AI-enhanced reports @@ -49,11 +54,12 @@ Choose the edition that fits your needs. All editions include the **full reporti **For organizations requiring SSO and compliance** :::tip Everything in PRO, plus + - ✅ **LDAP / Active Directory** — enterprise directory auth - ✅ **SAML SSO** — Okta, Azure AD, OneLogin, etc. - ✅ **OpenID Connect** — Google, Auth0, Keycloak, etc. -- ✅ **S3 Archiving** — compliance-ready report storage -- ✅ **Self-Monitoring API** — health endpoints for external systems +- ✅ **Branding** — Customization of login screen + ::: **Best for:** Corporate SSO requirements, compliance, large-scale deployments @@ -62,36 +68,41 @@ Choose the edition that fits your needs. All editions include the **full reporti ## Feature Comparison -| Feature | 🆓 Free | ⭐ PRO | 🏢 Enterprise | -|---------|:-------:|:------:|:-------------:| -| **Jobs** | 2 | ∞ Unlimited | ∞ Unlimited | -| | | | | -| **Capture** | | | | -| Kibana Connector | ✅ | ✅ | ✅ | -| Grafana Connector | ✅ | ✅ | ✅ | -| Generic Web Capture | ✅ | ✅ | ✅ | -| PDF Composer | ✅ | ✅ | ✅ | -| | | | | -| **Delivery** | | | | -| Email (SMTP) | ✅ | ✅ | ✅ | -| Mailgun | ✅ | ✅ | ✅ | -| Slack | ✅ | ✅ | ✅ | -| Webhook | ✅ | ✅ | ✅ | -| S3 Archiving | ❌ | ❌ | ✅ | -| | | | | -| **Team & Organization** | | | | -| Spaces (Multi-tenancy) | ❌ | ✅ | ✅ | -| AI Analysis | ❌ | ✅ | ✅ | -| | | | | -| **Authentication** | | | | -| Local Users | ✅ | ✅ | ✅ | -| LDAP / Active Directory | ❌ | ❌ | ✅ | -| SAML SSO | ❌ | ❌ | ✅ | -| OpenID Connect | ❌ | ❌ | ✅ | -| | | | | -| **Operations** | | | | -| Self-Monitoring API | ❌ | ❌ | ✅ | -| Priority Support | ❌ | ✅ | ✅ | +| Feature | 🆓 Free | ⭐ PRO | 🏢 Enterprise | +|-------------------------|:-------:|:-----------:|:-------------:| +| **Jobs** | 2 | ∞ Unlimited | ∞ Unlimited | +| **Delivery Interfaces** | 2 | ∞ Unlimited | ∞ Unlimited | +| | | | | +| **Capture** | | | | +| Capture Actions | 3 | ∞ Unlimited | ∞ Unlimited | +| Kibana Connector | ✅ | ✅ | ✅ | +| Grafana Connector | ✅ | ✅ | ✅ | +| Generic Web Capture | ✅ | ✅ | ✅ | +| PDF Composer | ✅ | ✅ | ✅ | +| | | | | +| **Delivery** | | | | +| Email (SMTP) | ✅ | ✅ | ✅ | +| Mailgun | ❌ | ✅ | ✅ | +| Slack | ❌ | ✅ | ✅ | +| Webhook | ❌ | ✅ | ✅ | +| S3 Archiving | ❌ | ✅ | ✅ | +| | | | | +| **Team & Organization** | | | | +| AI Analysis | ✅ | ✅ | ✅ | +| Job Templates | ✅ | ✅ | ✅ | +| Advanced Job Templates | ❌ | ✅ | ✅ | +| Spaces (Multi-tenancy) | ❌ | ✅ | ✅ | +| Branding | ❌ | ❌ | ✅ | +| | | | | +| **Authentication** | | | | +| Local Users | ✅ | ✅ | ✅ | +| LDAP / Active Directory | ❌ | ❌ | ✅ | +| SAML SSO | ❌ | ❌ | ✅ | +| OpenID Connect | ❌ | ❌ | ✅ | +| | | | | +| **Operations** | | | | +| Self-Monitoring API | ✅ | ✅ | ✅ | +| Priority Support | ❌ | ✅ | ✅ | ## Activation Keys @@ -110,9 +121,12 @@ docker run -p 3000:3000 \ **Option 2: Admin UI** -1. Go to **Settings** → **License** -2. Enter your activation key -3. Click **Activate** +1. Go to **Settings** → **System** → **Activation Key** +2. Click on Load another +3. Enter your activation key +4. Click **Activate** + +![](images/activationkey.png) ### Key Benefits @@ -128,7 +142,7 @@ docker run -p 3000:3000 \ - Instant delivery — no waiting - Full access to all features - No credit card required -::: + ::: ## Need Help? diff --git a/versioned_docs/version-stable/getting-started/images/activationkey.png b/versioned_docs/version-stable/getting-started/images/activationkey.png new file mode 100644 index 0000000000000000000000000000000000000000..b97f9c5f28199c6cad613eddfac10555e1119b84 GIT binary patch literal 1112809 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¬(An$Hde*PzKlzV&n?U}ayBexM^~%#wy+!^hy{pT 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¿qj(TTkmPfTsvh*FUZDrm8#PXl|8+yvKI}jwv8I1p*)6a zrgY!@-zf5(M_)W1oM#e5o|U(eW?^e6e#lxWCHuRM|31E6HK2#oaFOWR;p% z!t$r?72j-qRT6_qE3C&Kr?l6z9c1%XeyAN%Cu7P<-AQrv=xmUUyVaI>6XZZun>c zeJpsXebxmcgSRz%^P3KxRcbXS?4xxO>j5LoM#y2R0&szwDoi^fkKh!A(9!0!qhD#u z6eTzNOm9otI{ zJmyvMf#jF6uGV+%-kwlO5xd5Qh*C&E%~=U@xDkUg7eFr-pu$?T4@xB?8b! z?kn6?)jQ*lH}NYAsBX`2yq|0Bkqqe@S`%F6X#mW3C|QA1<_=|!6_79Blld8b_VgJi z1t&fEJ`6qp*uh!()$weq%jNP3t^0LoFRe^O{((zV>0DelF0tDw#XIMpr0mm0$**Oz z{O>giPP&&N|3IhO%h`QYVCfA{>}cmwC0Pf%J`(4LvS@2 zt0=IHNAf_8Onq1dgI_=3DUqR~99E*UgP2*I)ahIN`PApnB0WAb>|b0+NyvQ_?6wM} z*=x`7p7)3O>FV~3&r!Pi&iTFkiU13vDM4~k)~9sp-G3Rh=4Q^DH=j3A|ky82mzI*(nNY!X#&!FOX#5pNN9l&dM}}u5JKLt zXU=}l?3p<;>%8at{yJ;1SV>l%1fKi8fA#uZS7niGM4-LJv|?k+Z0=BTx6O(&(crAU zjpW<+;}-t)6Kt)?BYa=zTD|7HrvjNg7E++5y@-NhGfF8{)UMLZ;mP_)=?B)`rr*3L z@3mV}CfUaIfLRP%Dt@!bGr9~_(oN+}?aF`hV{)e~Z(FKIU0&gR*5=bDz^9$aYyg=y z<`|7B6uZ}c--p5HNcvbJR=iIwxy^W5VoypS>pIF#KLcMV7GQ%7J+F^AA&2u#ejWPq zTa89(n=&I;nT3|^{Sxuw588M*ZpCzXVb~pQxMaJYH-U%tKC@04WKR~clNy(_scbWJ zPpPl_(AC0i31*mVUBc8AyUb-X&R(3zkY`8_b&hFO6hQ3p`d0c4Zx+{UAo#qy(pv-D ze0O>doMO%%?({MD*SGah7&-0%1wM(=qb~Fqdym}JJ_93kL3~@|OSk$Vid$)J2|HF- zD=)lYO^zGi9KjGDJf^qbMk?hgk@WPM@F>RHg=>(=Ysm;JX zUYau^PTT1AL#pY=u9GwA2V8M~%oUcT1$|xo1jnu89z{n(cdTh;-^5qT577^R zm)`E|k}Z#7>RBz5cC8XKRzzD95x2bpj+FlaJR!(X2gM;nmUt;*0Azw)e-TjOY_$AGl_qM5cfl}3) zY@d3kdn9>TTUV_YhU6HmL{42z0jYi!A-|qF$_6rouGEzsDivx89*u@rwl_>PTe`#7 zb~AU#W&CuW4X3^N4n>cKr(ePpt}Sb0uc@D+I76sC)fU0O#>U3Oetd8)J>KN|bNQTRw+S*v$rU0Qq1 zak%eUjW+*I!bUz*#U<_UTuyfrmt>=sJzra|RlXC->dkJ+%CDU zob?fuhGEM%Q7C}>?r4sL-arkz?@Fl5KF#qSczt@KgSZszfOQxhScvI~dO$$R_XVBq0S zvE)4yBG$cG>Y^?4cwNQopX@N5L#b(7AmpgzRVyn5CnQlB zIB^>>c+9Bc5lq(dRf29$ed}y4Il9!#+MDb#YNMp$j9k*D5D?A#z0N#@AMvzNos5J| zP`@r@IcALWF1VZx7*(DTK^%RJD8df{WoXfbPZzpSrVFS&bXM9?6-udKxSKMee!af% z0S9J%dcoBGHZdK(K_w(FY|kq@WQZEAuacJJc-`E&PVwqET{GW8*nYN>z@@*NB#;fg z;PfV6Q}O1`-7G|^=vd-pb7WU_by|RaRMh9@KL0O?Vh%33)Uf339!*=mOP3K*8)X2oG)UV&zskJ7&Ov?=nRF(9EqNowXIqz>2t01}YKFLJ}b+hsx4L>d|L8CyOI5)UFwKR$sNeGb3o3{;?Mx&I%KWx&dSc zsn-_0mRK%NJGh#DmipT zQ*AyhN$AqPkfx;@;sX+%tKrxwBOMzmG+y#8lM@cK$i`H{sSruTSr5kS3%iCz* z@g*QNcP1VUlb7Y&T7AA?+r*`mZOJ^Et8>99K@*58J>Qz4ZTFnB*H}?M{DKjfkuS+; z_i2g&-6P~u(3W0yOeAdfUQG;tMNgqhboGXaT{;=@Bg9`eBSLv3qr2QdW>6BKmFem> zprn6RQyT1f^oiPkFt;(>T z3Ats#J*x+9FgS>3ut_Ht*q`NIqSqaPnHUx4+k37#I)^QBkZvRWmP|AK*-Z@gotl$G ztI_~QbrlvoK3;5(mV%`3G0TRYLUQeM;2JU6T|v?JtF-6+3hx+>&XBq5kImXT1yyi+sd4*I!P@3wAOxz@3DZ zpbX(>MeMW(FB4EjsSH9OIK8)~->`sed$8;-w&*io@*@BRC{*OAIzFgsV+~lEFlOx^ z*GI;rd1vQ0s~GP<#`3Fl;`NEYWzL`_C<$<%^WktsI$G9F%}8Kd8eoZxk*rToTQ2a< zykwV;K(pKQamL8Ng^_d6gkPY2^ewB_AOVn-p?z3M`3E)j++qPnJZCJNH5+D z*-~2FbSc?0FHAt`X^%=|aM&mV;WO%^nsG&^BWv7FRmHM2Ry{i}P2W2xQo=F`^Pqx$ z<~0pgOoqrxw^?MrI!4Kncb~G{F8pftMl~;D3)uG3vk(b3I(#2lG=@~)cxqkLTD0sO zrZ1Mo+2oO5lPB^Ej{(p?#?ZGyzeZ^IWwgcgU^BkvqbNYK6cFFeU6a+o)|$}{kGg5! zsVZ9j8p_mse|eQH^g@zCVREwLZi73uwWU>P1|)UVJLktBz`T>rW5?_fB103D85+>N z-tKXUc((K5_^xZqJ>UoxLCH0$ zO-SBx-yNIJa0x$5t1pH`_Ir+_JE%TX) zwESz=OGxx}l1zmfBCkM@+WoPoC70->!17m$Je>AmW*Q;X3CtFFO5}Nc4bks;TfwNhgJI!zcb3EmXW2fn(FmhCKz?6j_cjU&6XvMbO`RJ5hH(fzZpMX`4SG4CYiFzcj zr5(-k*HTb5UL;b}bimG+hbHk@*NY0GT0JI^C!Zc}y0|?G28el`&Xsurd#_S=IhK1Q z$ywwfKigLh6HnF^3NIv1K|?My(7dS*FxnAP`L>Iix@^U+*Q>|Xo6$IdjhDSCmTup* zhNjENSvE$_l(eQuErl3ABAt*(`!RE|g}<=#TY&m5JnFHgb%h)?1$Tc!&Kjg@fn5E6U|-$4Aow?l)*WSG+WJcW=m@?lKqv;q|Or zHYi-4@F4dV~wTP^C9rm z-sI}kcPaIxsydBW26jk~x4VI_Y(2bKRgMYZ^;nttcF6BDj;m6q_C`-@HU-73VVB%^ zkN<*2Tf1duk#d}`A#k{ILaL~sVF`OuHg3GrT~1N!2&V#rBK3aQg#`(aJBYvOF_yFr<5soP{>pXFIAiwWSwW_&v?(r)rI`;{IR@)Y7u% zChov8Q&iA)lc1e8Te_2v78|318Y43_ycsidn&|y9RYuJDj-@Bu*K%Pd_R}|;4C5Fx zX@ruz^{i%1Ll^VCF^Aw}*A&^7z~G}IsIQPN+g#4H2htK<8d|sk($h7iu=VfL)bvtd z^2gCmgr^6e4%8|h&8jMu8X3Bs>9UGqSqjz$=PCh{CNh?v4)U8slXLB2=RjWS{@xj) zm<<2-QN2a0b|YxCwv`t3Y#h)Pe1Et|*e^#a@qu8N+o#KA<~$A+TBEB>BWegS$oJ2_ zUh}{?YoB?^w2_7DutPzPOD5SSOIH=lgcNQfa-Qr4hh3#^+nTCWM6<9C#mH>lUQs2m zv_Uq{>tnX`5N6Jrr5hOY%_&}vxz%;?Mh&^)+2?cGl{kgomrtv!hv60GSP}Nj-mQ*f zLF@Yy$#K$~G3{x#c1=9^{0e7Nj^$$k;#YjJxq*Wlm5|L$2t;*1$k|e*l7gYi%hlb| zT?mrSuf} zD|Y7Xbb&HcaE9TT&HA11O+)+<7b1S39Wm;u%N))#!j5)dq>A*yH9}nC7;B!mBkj}z z#mAUfecqSk?fH7HQF1a1JxiXWjn?Zk;*r#ID*Us}q{EyCV_l;X!yT+dWBKLyvhQgI zP_{hpblQqx`AYRg;fkggr^{^JI>epxdYKK9K;HURx9kXx?zW~rnT6Al9-zQZ%la^8mTSX{F&K|7};<+9k=>9{XJunQ_7A;wtd2F>ZCng zua3AHV=wkvq^HJ0o$}qKBDc{|<%Xy1Oo+0}SiQrnpXJok&*IvF^V1^mOge+?&5XjG zQ=Ch;;qgY)ZRjlgXp4VH$xHrd?&GEbzt_Z!!3t5df(?_y;AQ7Hk!IV3_ek`;h>zP` z6Lc>-zaPrF`Ewj%<;)j#!$$TDBQij&>+!@~NO*Gzf=62A*ubyorrRfyfy1(zP=Ub9 z0#IwJx(wbv&7k^%C5P+2*#p#=Z4?w${K9B35-nmQdM>0B+1*b`5blk|@Oc-Fh}VnF zZl7n9XN{fK59UBs#9g@gR4rCW_B_p8f8c~i)uS(h<(SBlqdQDyPoTp zH=9?^6vOHDS(+gB&`i>aA-F2pC~K9EenJ9i={NP69G$r{U})Z3%9O;CmqX_kF#ZXx zWHqz@IGXej_4>Nu2&;4M@NpJv=QZ8B)`;p7VQjiEV~l{q);Gmmt>`Fu#3S%G*Z7MO z?;-MbArDwpW#)q4W9zph%Qo$0w}jVMlVs=g>wg7RLA3__(e)L*GvfxMf`_ZAUf=5M z-HNLY*W$}!aj#dLM{K-4Q+ru6FvfseBT}?Y-0qtUQh(A>8~{!c@=b*3Lbi(gBw|GO zJ41G!5{lBdTKVh@i>@I&8WGEZF0ER=<&Dh!0g!P3 z!nzH+ZAx}M{Wi=#^}S|1CWKnZ%dKv?mZ@K>Z`aFt_TZT3?!J9MID0&SHl3fWKO{+n zH?0C39}lujMGq9C&%3S;QS@)gwR_=}Ni%T@QUD;{aiN34Pb>AtJ#6K0Vmtqh=AQw@ zf9Zh}KmSH8srEwy!Pw|J@8se7*!BGLMZAplmyWw^VfZN?x0Jv={FFLh@?8$*XI~uj zfNFccZna$K8nM@_YQ-lXv*k8T9?gke&ziu`Vak}X4`cwRKQV5e_qRlIc`pglBdA6A zoU06tx0<|GH0h_OugyP>VcL|(hs`9nO*5pb&Nj`TiJ{$h{r)KKNP~vjKG1p-;mXl- z9+ZqRpFPDuU3rkvt4UL*5fkN+K5a^nxiI|A&FczM%8RD1Dih?>dCC@5Cw!OE8!Udp z7;g>;!-`DLhQ=|?1#((T1))Pk;LXodWxvm%GH!S;$)obdY$Y~47PvP9|8tL}Vd`N+ zRZCSRy7}w807$GPL617{N$thEI<|?}SmN{fZ>-b$Hs#+MwcJ z8i+qDXSf!yo7;lU%&sG1+--=hCk*cc@`XpmGi~kBr7X{kSYi;r zj4b^^H$G9%y^XXLj6knqa=$6s$45IPdSwEF(^hldx?VLjfT*t0_l^C=FRbXRU-X-3;Up+U%C8B4wmA zI!n-vg;g~-Cx=n8#siwc;F1tio-|QWoz~chMeil28mhtk*1Phynup+^}w89v+Cir z$q0{){>!~XwRhet z%W|~ zsn*Wvx_&H36cn11Qk9l86iU%UWxqdi%<#hmft@Y17s70c$^cmZJ4p&d$XCs;{bmez zzbhe@9i5Z(D{|FW9nK3>J3BPVh;JV{s;kOt)6Tdus&DzdR|3#!} zEdIJJY%@1_)Ofd}*n>@hS7%r~j~E@}lnX{P^^0o6ZI9A8o7d6Phr?`rMAo*f0HQUs zK3Kew*GJfOdM2f!%P5s;w{gY`Z?9mmXAu2Dh|2A#0Sdp&pT^=TPqlcQ#+*^VQ@VJg zz6Jh59O%f}!~0U|PG;5jyN+ib_-y!djsflhDe#s;Cw#@e^S9^8$0x;Th}bb5d4mqF zxcl2CMfeE{BP=@VY)9$H=hUvl*Ri-6j{Pe1o#fKw!hK2y?=TRD5Y<&wtebpCQ{c9S z;l%HntqzFL#?3S+&D5Hd&`H3dGe?;@Oqt7Q|Cs<%34Lp38$I(`!yx?05yNi6Qlu zLUb1ka6d~#@vRUp^7urpokYW;7{7_F&{BLVyV=4(WKtPB9I7;3GVd%Ya{W_d_vV?Q zdkwP{Yga5^CUvNQc=>!kSQdU1FYXRmuXytMTblT~VTgEr$Lkk^9p<2v3epusi3y4a zC(da4eNi>w$kFtTPSb7jleTiWG^U6T&>?C~wE;V3d}!@4X za*T3C)PfBCSom0H5Vj(nT$OOiAr3Cg0eY4-7%_62ZXc@%84LU7Xtr89XumJ$6_=I& zJfrN9JR`UkEN|*ztM`1!t6*?AOqeP;F}B2ShyAD0G)uOsU?Hx0rj`AQ{2~v>5dxcv|8(@ zR`!}aUo|Imh23(BXK1G)HJhCJO!`a4{C|JTvYkJmA|_ELR(-!#s5Yoz)B1&s!2^8&9~I-zP@odlI}9BTUR@xM6P0x`cKBz#m8X_0 z&4&y8Y(MsEhU*W{&M<1gCZ8@W;JV~sCljSKs}M@}7fRj&kkJ&8jgV7qoz&KjNA*P9 z`Z&s!LJMqPU^(nxeu7S_?E>S`e);nhN(ftE<49cla@eAM&FsW!R)Ap9;z{Yk4C#pz z_jw*E^CP;N=|=ePdI+agM`E@#=|2ttVyR!&yr-2gl^*5O;hb-aZdUB&!5?HO@5z22B`DQ*)sFxz&cX;-Yk;RMU3b|hOR4QdupRKNS51))x6E%7mTe_koV$&`{lmkTA8S{y`b#Wr?Mk0ca{dn)F z<>V+o0ArCXea0_|pny^=bGmyP|A2 zpoM_^51c3qLAFheC|e45ThdMxN$WsT+(}pjf6G0hBfu@-;4s#cQUz{myIZfH*0QcW z)htU2tCr1JI;jj2ZIP562t_=|V9Oi-XmliPb>7{)pU(xA{klk5g|55hKV8w=ejY zE}SNeEhrBYV-D2n20r($HvFV(qr3i>3o$8YFt)t{$`lQnU0)kzJ7uTdO9wginE15u zIO0J&p_;scJkBFh7%K*_aKJUbRGN(s+qK)xx|_A@I$RnC|G>HZ;qKT{&;0Zt7m#}n z=OiZp1?kv}oi$$>Ubhhoa`zmbLmGf;WM} z?|!hik$NOT-g4k#p^Y zIvV!bq#PvH+U;H-lGs44?8M7?1t<&oR3Da7Sxm(5CZ)B9_;c=8q1;jIP!qCNqtXfX z`k(zYC%qvcr7gl6-;S7^cBSQtV~8i1=*E*IatOAiYrpIy@AbBo@`Tzb8MsfPXE9rA{A=Z$~(9BrZ?o2t2&&xm`6s5Sw2RDe?64uzc2GD#oO z5EjT73ztOuk+?ybsG!8En#i*=UDMa4*|C?OFjUp^m;u%2tc5!5fg2hee`=BZ<>}tJ zQ^(v0>EpsJZUUG_QRJ863DTR1_xSB`p?7f_m636XF-uLtK z(?0(Fp#8I5dj$hK8HZbsdG>_u?>1f$*IQQH;zJw-99TXL?icNCnzBiD`RA6At>BDs z0b;1UU{Hyo?S+SMz5beYHf4_y3|h2FJ3Abl7bM)Xzwf)g??IXH(;?q+fXo)e<>BMv z+(dieJwXk4zAwt-gdQlK5`HMSov5!vmonq_JdV2{$1eMnvzw8@8Nk08Q*t0?q0QioARoL(p43Z-GSTXM-Gg-zb=d+qP%Y^d@s(zN}X z=${*9f7%p#bZ;qK&p@k$Xa925kEGvVj&FVc#R>3Z zkhSo$22}sod*h!QyMMZ!{?jG9S131r*GcR4A5qf(_yc0{UB<=rZ7Q9;Ki$;-!KXti zH)(c;o5jEWo2&BQc-yKg)w3_iUK-hv|L@krnC`9cF9;nf;2-&y|Cxm;>b>yd?Xfao z@&(|(I*|WQYh$K#Vy=|f7#{td>HbIMi2uf71T-k~Q}FA=x;Ihv|IRl5@4e@L568c| ze*b$o{_Vr`zlY-wm;J9E{Qu)QCUaLV@O@q7qZ+O{93;-N9qxU_mvqs(2h*~TYIkTp z|9>)te;elf%}1H(UZwb6rDt~A4Di`VH4oI-kyIOFJxXYfJ9r2j zfbUKhx>EzUtMTi{$IUn<#6cR)noQcp-3s}^9nAYS54`poH)xG@kEroTBRlq*Vm9VN z5c06M&6zkEg z!8obV)+D|5cpqF?J8EFPyOpcv0U?d@;$#q;-FR1u=n#p+?z%%g5B_SJ%<@jcLqmq~`3-lzVG}yK``E^|1gQf#yr9U)^ ze_+4FeE;@2t@WE%RIi@DaO=Wg-_AH}*bly+q$Ka^J^|bBu9MM*^)CFZUmtVbGbL7b zni7-C_k5?i6F&QI-k;xFACHMGG>Jmcr**q51=93yJ5=$3YdrN#R~sFfex^l9JB%hP zA0_}6UQEyL?h+G%8@}9I$lT7>(dJg8)t#|yJUh2B)x4Cg8J9^azNB_F4E>lsu%f_IyRcTkkRvAA_vjb5jpIg6?8m#RU$`FAe?R~9j3CwZ zxBu1CY^qZs@{S`Vyo|iS=$Ado&rV}>&Qj!`|K^(0Z+=5M3>SdGNki z4fC?$nc@5}u{xk=zm*|nxA;p6I`l(I&O;S>xYdP@>N098SORge>`Ybp8RQD2ty zp#`tPch1W%Jy)&5UJQ3o^gY;!^!)0~!>;He%Z~B8$-f9>tiqlpPN}77 zDR4RaL3uXQ1X^1NEFpA@uaodPY(UZOB&F@8l;N3@?QGQ&sO%4vhb2&7-f-zvNW&*g z0*N4F8kMD!aIG%sbD^Bmq?!BUgwMWtF$zDHUY?o2y5;aSeBGZcxb4Gs_Gr@KFy&MgwhC~JGz*at~2mysfRF%bi$X0 z!v{JAsTR&tvC267Jls0zW!-giY5jP8$)EGcj01$Rktaw3w_V!jY7oa-p_xueBnLcJL_jDt-_h{VXl7ATlOL*PF4)3C+{LE)gu<vFD+-u+2iaO-!# zeY;unHP_z_f~WLNCl^Qa)XV2n0^wyL#N&A8H5?KUrYt3RIb37zi!o&4Kezx2z-mzF zM6tr@9D^evg9;skIfsiz{yYy&tQFJW?*V*M?t8C0Qt;e(Tv4qo zvREv+x;OGtsE5~d5b>{V5a2*o*TP%l)FH z6`mcL%6^cqQwhqudglV!zmPR*BX+Co{ZC6=tu*xRl9(<#SqS^|0fi#kYPp2g9r#}a`L z;Aj1Ks-~toVoM&MW*MjO59##Cj>xZ&uD^91!~@BVA>}3l23N ztvgI$LCm+tJNx4>$BMbtPc1&R)TX|KITY`rkrLqhVDE`pe#-Uu=*4k}*KHyn{kX-$ z`TXoW_0?(6Cic-P2bo>lf~;e`6k-odaoe-TdYau63^9$7)2LmzK^mFQ`JTr^f1|&f z<=TSqdylMM2HmsDq`q^Cg!_!A2z?R0(XOW!OBTT8Wolo96R7|$>cb8c(c&YMqCvma z0e<@lbTvFSlv3}v^xC{EvH0xGS=zkS6s%8SJ*(`Q#Jx62L)S@=))KlA$C@!c=p=LV_)pPP+-m_!9#y74&+E26+rQuquh4&M{1 z%nsb1fA9_8vhyyfK(jwvONW7*1wNkqtl0AC=T0(joX1*Ly#u_41OuukRXQl-E7+!; zdYpRYg5gb0iI+|_^B;K$w{RlEkSGqHo#LISU=E!LQX_nm>iDN`-}vZ~HmD*?EzKl0 z*2HZ}9OX8b>wZfpssF1wAH|eAeLEj|Lyk*3RZ5&RPu{PQaz3gu=`QeWuXpZ`-LYQx zf}HVB0oR~eX&KtWw6|aOyhnuVTB=3hAN528xAO%?C?cfnM{1Om4qLX2g{?G4%WG}T zW5$<%AdUW|d;jAmEz+J^zsZB4dBxPgcS>_Q-Zk^!xZyP2EO=>k%LOh`7S4y$ z(d$Pq(z5f$+=szSA&?`B!yYIi3NGk&f-_P#0=pX|D#H(Lw9)I7{R%$Vh1Oc>Jehq! zT1&Ovf!3Y|LzbAT9S=9Gn<>`0c&YHv++;(9S+hs6e_@I=NM^`c=uuez8KSi*(kjl5qs_TuL9FQb}qBinL6xspRpr5_=J$n zK#wF<40Wr54pQMvZCLo(;I;TQpA%cq@PYfW+vCfsD4n_reW>-{3_t`EAND=Z(F7!*%$5$!29F+MTiSjsrm5RB`$m&;c|iODcu5{ z;mg*Y$?v)a5nQVWp&ovK1@ERxvoY`P(%toMSc5`cEviXMu>~%W52_T!5?!5pJT2N4 zVe5i>bv_j;76ae)Mohi3_2%ms+nG7!1m~M(+T87VM)2d_1zf)vsBDJ|wDXJ#3wlq( zsB(@CDVan@;upX0i*L`6c3CSkyj=G)wz=N=xbWZ{ZvdqgSV0wQ>ftewZc6Ty*xWWK zc+-D6@xrFlt5?2vrIa|@dfx}{TvdzfO^89j_9M`vms$G}-}fK01=FFL!_}YbF0@I8 zn`Tb7M`ojI!jjPQ`B-$KJ8QVoqVvqB28V$SdYe^D-{!Yh56l$#pRJmCD!yWsF4Jt4 z_3F1Q4(N#Dn`LiI3st3K3!eF^_mj=rp6muGl0U3-n3*p#@1L*3{N`==!!&7*yQ^`D zuc*S0k^ANaBriR1hxgi&FkXK@BZArHvyAdPOe%h&00%1p6Q&|K-%}H7Ymn8)PyVem z>i6Ah_S={GDi)88$T9WFBM#06G!lcmM!T9;}%b)R)jFfP_pnh-EmG2(X`kGF6 z;ng3L-s|=I9GW`uN-&Q^1*pUBiq2)4*Fq|+kIqH;5GYFRw<$_r>s=ic zKK`vCOxZMmIx!-3x3|t7tbC0>#H=34<#b3dmi;NiQAdxFB(Fbzt@LGgrvjqXhH>!o zfV|)Fk(BHF&t+h$Z=aW;o|zqq603h&kZ|ug_+dezSc(-XS7-O@AYMjciY>P%#^Iry zz~hYNLKz^8{?ivfN_0EC@V3{K{<~7)dAEQQ!*@Qbbp0ENNSAeIMJ9t?0lEPGzNV$r zhCerh%4Dzg$W{raozt<$7E7*SkpTN}a1yF@oo2pAXWP0rv{%k%bU?$)=%BjPI>XsA zEp0C#YOAFr#%5_NW~t-4P=Ad!2tB0|+^g)Q^Twj5-WLEV=d*M=dgQo}*%)cJq6*R( z;*^x`PE_XYPVw@snMxGeE|^rY+~u{}_|mw94q-eCc$lfi0ZBA01gGucv3^w7Qbs|F zW{PgJPS5LKf=xH>t-vg|z){<}BAl;nt$|d{76ujK>B6&{JED?Ui*nrcyx{<_uLq{T zG%ci@`uAP&uQPGk$}2^fs^2Q&DD1yW-$F!x58uXb{o1FvL53mNVqbu?fIi{%f4?EIC%@{HOd=RWZK7Zie`CW z;q6*+j`fM{%%=Z-;ZWDoSqH9g?ZTXbrP0eM8Gv-qgLel-<|_S*>X#=plDx=f|W0VKJh@jLl0&uh+h zA>iu;6A|6aY>9`UO1yefg`Kw3YmkNh>MeiiZ1`JJqO8ofsWv z8R@kIsaq*P`$rU)skw0Bke*pm)-?7KhlH$YVhi*FLVC(~xz3H}Sjl}hheCw$Gvqk+ z&4d1Xut&jZ7g=NzRespGu{A<}M9>7CwO?Szu_P-VEZsC;c`P-s5cq4dQI{W}`FyBy zOo#Os&UM_YShnexsE>K{+Yi!H?~FFucinEMGlK5=D+{TGTjX&xsvW-SJ3Aa>#zV)w zRV3N`Ib+w-40ZYJ%oKOfLnSa3H5D`4`PzO^ zIBE&q+7~|UleZG)zdk!RGkO5My~qb!v9LvX>$i%rjzrk(W@%SY!0H;2%dq?Iki9k)%6H8}^$XqkfiooKH}2A4 z?~PxLW#U&mDuY~$Vf*8rlgbiT*MhSHU0-HW%yDa1*y-NIo>b4x&Gx7+^h}pghNI6y zPnl=qk(A}(fLs4=uZCo{E)9wYp9WOuPE(M?d2EL*6<2wz9fmE{LMM_83n#AVY$PBV zjwI!A6Z~AxJHMv8qLez>G{~TSN|@lHK-!&X zcY1^hWr=wisHlG4&@dnSX|KhCPQl|WDRSktK@P=ve8e@X%}wy;tz-Sfl<2pj83wjT zQpv2G;YF>N_`+FTe_j|0N34ZAu}2m=BP+f)}-!uhc4v?JqHHkzZ?s>0dt$QLmu%%9_2q^^IG zYK)NJq@;2k%-YNf^88Y+?XiW=;&v^KgvWk?#O0W;c62fU5+`D+IAqvl6B|g2Xsgp( zlY1;ucf^?GUpe_E)bZQ3eKfFrw?LEtr(4iRj1)VeRulRyog*S`JcSpFVZ8`D$WV~U z`bFPjnzfIC_c2k`l3A@(jFu9;uAh(lLe$#6-DGGB*U%I-xkmHWZA4I@9|1hVl&JrR zI7{c?ZLxvAa2vtA|>cipC;{fKkJhn094Jl{S;lJNjAjnbhiWIq6l) zdQ+mEy|pIZF>c$qSqQJP=pKdWOxJEcFt2qta8>9Exp@-}vS&YK6JJ~mE77H4o{#cE zF^d`slV_MNx=mCo)m7Y^GOhD;)z7Uvqmlh^-qkahiQ~5}2k;ZGI*LQCwWIm2sOd%9 z>Do-wl(AA4K4v91CkFpl!y#8V(m&ncdYr8+;x^JF=f0XB7}a^L_UFUnM!Kpiwvf6D z#I7E*|MG0I<)&rxtO>!xy-6p$62OnMD5gxl*ZIG*w*MWzSFs0|lJjo%hUgV+ZTx2$ zsp6!~%rRDT&wtU*#B}G}qBDP${rD4UkAHEx&2|0XI9AYuL!dR*ug$5sCwA4hKn+#Rq_9@_uVsp_YIf1sFL{o^)k zTAhyJ@|?+6U!*W3F7D@V`rW^O@m<#vqLp2{4qYsSHCX^)K`HAR<&8*oMC$#-N?}3< zY_28Qsnb+6l%9`d=O6>!aJh~eu|>*-ZXA4Mj=QqiZE3Yy8TKbq z4>-_^V+&zf6s&KOY$$ia1y_46roeQCP4%p@xf?{qEkJqv{=)8&VQff>i9*BpnfsOd z`6eR^lx2%gN$n@qK)7wH+_A%;$9yZ5V7~Z{N}aku2a4)|Ab&B5STy5@O!94DDGS>P z51`xc)o&ItgzA4ZueR0M3S6mVHwD8tW|ElsWAiC_uxx-zI&bgLxRsxaKDDdLF{I_~ zt2S!|3-6^0KD;i=jTa>qHku>jg5xDJw%4K;VV$w-+hv4b1Fco!Y%d&~4$Snd)B}mX zA8l%L{>DI-J0Ik>Jgw+Cqojyht#0}=l^--7ae1xj5Xlm8!nfcMmI`%8gL`^`frMvxVczf0d4Puc&)R zj8G`QzxOS2xq?HWf&On?rlc`ITjZQ69F{}VUU8Li6W{B1Vb z?C?0QlndIpjaLxpcyX~chx-IaRGZ1g#m|JzF%#aLWJrnoM}q#9<}jQ#r({o5s|g{P z=$oTcxD`rWXPlFqYmr^WrSKzAWj}BRo7(yq6Wna<{lV@j zVJ@UlWgN%Dq&tn(<>NT;$rdmK<>j>DGC6z*aTvpqQI}xNw*0}l(x4NV<+$BX%bMv? zZBOgA5oX|A*`Ybg!oH{}Sejy8KA5s^8&Q^-QrUQosz~ayYlVLc*0sjxS*AOO2nDX^ zK7$(?mL2GA?I3G_atB@Lp}#3o+jF80j{!A#5c@y0N}p^oLz4CpNUDc_Q#f74_#k2| zio++FFLKlx&!VqgI1iI?&v=kMOQ%Wsj=9q*D-%L%hI|jMx3*?KP)-XP;^3{lKl9db z{jGcybqSz95Ak}B0%LP$bE`O-oQFKmjb@KXZ8${n1>enFH<+rXU(OYp@@UNgHcXUu zxUupl*_u>IXm_u?Z&9QeKFlNr(|uZb#z{(U`uz2Spw3Ce*9NSvL1c!DF|L=(&HQEa zptmv@YqpN8cu6*N_zbjv1)}Wn?QgiD;qwc-4ofAL(|CPx<)uwK?~H@G4&S$shude< zNQ2ipo0kIX2mH_=dFb3a<~MF-xMl+LluW&$Tq#fK~SRaaS?T zZV(}(%kzc~`PDHkULU;0ju<(0l8RvJAnmb6S2}cLOt(Vio8_0qJAU8pN_jO%**y!? z0RZSN9gqTgM#c|8+6$`lS?;e0C-P`zfkzJl?ELTA{+6$Lj<9?EaubN%$M+ z1$*~$k=UdH>mcUZ>n{jWyYX|Y()J)f>4Lfdiy}VXWJ8bD$JB+K{#=l=j{)?69sMS5 z9=SKj9%vUe(IN;8E6f5;yN{kK|Ye*`bSkZS``I@=IW1(kG zR=tXh2ba^mWG>qXPBTwI`W!G?2T3CVX}?T5=Z@w+Y!g>kNKN}B0FZVJn$VT82z;zU z{2DK=ZP}vWGvT+)y9y)?vlY}eSQ_Ey9Zon&;*Tj0k50tv>J!Li&uh~fG^{V=_7A}u z4UYMpAz!MaoG2JvJA(F9zsy*Vn!W8)d-M!lOX+~VVNuq*`Q7)KLw*MIz|`S8A;gvR z^l5klAM#*@;uYtbF&y{D`omFRihtmyp19Aqy6X+Iq|jf7S>V~tC)v4>%-92R9>%TM z;Gj~9d1uf?bxK>)2(iro9ho#2H$ik~|2?6sI9p9ersMXmpeGE#^w!y#L@ledjm(|{ z4fD^>`8o^XhS^68F2%v()a%HPoO{pjPt`=o@836{+O9KPf8$vTIV_^e#2)=*lQ9hR z4^qZzAh-Ml{vyJ{@fTm*@s71f`kD)*yJ_rOCUs(eRK2-rc)Z~pJKHIpTQ>2|OZ7(I z=8^?8yC8O`RC(*$Bo00A)fKhW7d>1* zW3JiE$HUMbbHy3H{akup)qNFjJ$noP&1m{w6c2#p0btTItE*}n75HC8g7x)9aICGF0)S_0ZBY>0?x$^>umViFav_iUsZX zy(WSooA0brChi6J2$NsWRo>&9K<+S7SlcWBWAeiO5c)8Q=Ksa6A@b{A}=wq+JM*5E&7r8)x_2& zC62QKItG%~K5muwAZykYy&#(i|KUSw4B&-qcsj z8ePl%S;?;({(cM8hX`lrZDn3%iLlE? zI0+BL7%7Xnu}TSnLH*BDm*~$_+a?5GQ9mt0lVZqyS}QKg1DhwNQ?{+*)7-t=tob6= zXwsN@2+lsvn`q`T!A&bwmQm{4U(n!bYxdu)WXSl!{`w#;222fJ6h%eA<;)ChOms(tXHvX>%s;J2L9STt<* zslTL3#XZ(8r!2@lsf&KlU*9jSOP@ZQ7^h1h^}945|6v;LjN$<25xqj(lnDCbdYW_N z#nbV`A4gd^-`9#Wm%78Uq%t64mh4f&7RYVwh3b9kmaoplTLyll2efSib3A#pVCP91GUH7?o z;dU?&al68%zuIQ+bC;EZllE)Ib;W(z ze{Tiut&Va7gWSeSthk2C^c|iaX&Vp5vLqHN(5xDVc}T@J=dohb`nmQb{k2V6W9hiu zVK}%AhVQu9^YnE6)mwSr_DbFopJeo?uH!aKN@RY1qKdJ{SW3>ISeCD#b%*@#3?*6n zC+k{8O-8}+Ugb|FG@*>h6o@^ed7{=a^7UHYwII)vueT`{&byPh%_;p|DOxoxzg|=U zC}F9cr4@X7sb=Q`tV>b9t}|^I^fr9vYxB+IIPqvT38JVk_g*?O46*Bt$`d|xE>f`i zmij232WM&Rc0p;qWL~!6{Jq=0vG3;aHFf@dn+2O5qX_%6hqv3ND6w()K16tczHu;v z(yb<2D1kn0>*Y|sZnp#TeON9~TXi+OK9sjLOFv0{UyrANPera)5eLvdn#whxtb+X9 z?DY40MXXkYKHch7C+86~8Q<>Fh6kk*%I0pPv`&JoHBN_OT2NWpYPB&mqZLWB)zk-} zK$zN!a4{KCjv3N5_plbhxT$ugV=4bqNM{z=jnCkrs)q(ZGBD*2C@{);r3u_a|& z*t~T{idZmAQ)K#&vCO79(|6v8Ow*Ku+=^jC!n(fLXy1h`hU!UU?#&OeZ1u6lZH4ot z%z>KrDC}3H^1>j$l~NkKJ{jI5QO%y&4)R)1ISl)*92r!=P(U1`P!^#wk>mIX>DBQ_ zc8S=Pj}@8v2|8ZS@XeWSS(jC(beJUP^Qj@ho7!`erj(F6XLUAHpuLJIEJ&=<3ifq^ zCCCXgAupfGw>aKf)WeLt9<*AG_BAJ$UI}`8ck(GPfWi9MxXzofna|>(4p<)v-=_)q zOK7ZFU{xWmD8?~3GyvOGdb@PRU7rBnNKZ{MTxa1Ku@v9Az~FwnG`!}>JgTJ)BZhvH z@rn&MW1v3+wM`wuU@K z%SdJ5Pj2XW_Gx^c5nR!hrT(M4{)KhESX!@3LZ)Du$D4>8L^#RPf2OqI}(vl-@54HSEQtQi#R9_Yn|)*nL!L$POJi}xC}-x+WWYoH7&=^>b( z6AayIeH>=Iz7}qXVU}Dyd@r;muV`?Dv(bb?WW({2!=PCVHw>aX-L$Zl@?88=8?J2~ zg6J;Wjf`U46OY?qmdPAMSA@Q^o0xegX2~F@uE(nF{fT6!5~@nGVE$~g{i4BJz$#wh zPuON8SV=h<@#Ffb5g!2yK>C3Ka$-WlsPl10dwmlH;2$3juO1q)`1{}JnCTWxak3;3 zm{5ZuNc;B<)uVWp20e91=FK{oCicblcBFKIJBcfM;u@yHBD6MGlAyz*yvK+P6H~3( zXwd-G=P0;AT3QPTVr~yJ9dNjy1PIK9;T<^+dQ88}Zc;(lzr5evD`d9!9G!kF0b3}e z^vQz!E!-qewF0zL0}`u5an;LD>NKZM?xBZckzWA%&fQE6?e{xafW6l(gSo8;P=x<@ ze)I4qUhRl^_r^xv_v`4SD{{$x3H4ma&qaj%HSC(o45;AgY0cLxK>+LuIt`wBMKj9P z=E;;g+oV88scFrt=hSrGFLWjNV)9es+J{qmI=MgLv@v6N?k>dw&pk`Qjl&-X>{SVR z6bgA9Cl$(OPCc~FzBa+pTP^XTL^oC1>H~t+N)ctHFISU(IK_2&oqtBxw8B3~pIjSI z@pF7KK`qc*SjQlmZ(ig?ulhsrZO>a}wO=UN;k;^hpG)z!yziMetje z`*pY?rGpNLfCA8FJp?Wh*E>CoG@PE^emHcToGPiGs+G9cb8WV4Mz;(}nP5{=hwRF; zk{G&U|3-025xj&$_P2gd)f(yRXUiyA!WVKES;uKV+qld$o3E(Q-k8Wuz}#FYj)~(N zwf0}z-DTcv7Fo`7B7I3%+3Ayh$e^)5NKJ;K6nK9+iMAdvZD8Uf2CP;AVr-Bf3bThD z07Sk7E82P|Bz<`P=G_E-UZ98O{RRnD@5aW)j5rWaWxH;RxEqmXDSEFh$$u7S+oA0J zr2Fl$+4`G}7Db0``|Q()wZr|C##>6j@xx!KO}9AuK4wXq2ijKNQfm?`z$Y?^vr)D z?3Q2}ZviP0 z7&NH>`0_IPpm}qt_2$WFcsu7NiMPD|Z<^~6&5M*;N}Jur;`SJ~LT3Mo`j4{F^n8BZ zW@O+Q#=_Xt7E*!fg%n98q&fk9LQaAlCjExAJxnwczI?n7J%tm;X{sphr61dQQLb;* zMN(cs6I%VkYh4VAx;y;b*mBerWh3ak77HTwbPL6)B!=c!Tduw+qx9}9rCMj*J?cIs z1D0(H_2*)!cri$C!#RmyWJqbX`J4{tRPSy6R>GJ$v|rtQV{0YOyDt@JK%s2Mp;UIu z&hzJf?}eN-hs9Fc_v$f0ubFSV>d^6Q(JqD1TGAQWB`4Ir(=aWBz2la5K7_(I2a9}k zd;R?7^SM~yh6PPQuAe2YYqi{^3VFklGeG>l^TE7t3IPRQ(utQ;>{%x7yI+BcSMFtQ z28va@ob64q0R?-A37YqVAH2^wS}(FO_wC?<*gkr(m#*q$gd-Iy_(*oRiDxCGW>ZN; zy6rN2F26h%^3It0AMHX;ce&TTm$fuZBSK+nv$Ti~6&FZg;S+Vz=12>2J1Irg;gA7c zFVO5w)YQ`*YsUaTT7hYn{(;ucv=Jk?^FZUP< zSAh|HrS_O@iUM*`!7Fnh!KYVg6Lor26$CFejXZ7B=dvf#{+Q7v4Ymu^T;P`MT*aQk zjE80+%SPshM8&yG{q}lt8)bl4#pI+>apwx^ua%8%vP22hh`f zs4Pt+TVU}{av;(kU#Hq`)|+Nb$1&5S^$jR0fci-#{@P-zg!SRCG4t4ylGDF*$BaKD z>Sp2Q{=IruJC~=nLZjzsz3kkY<2>OL$^|{QtX9|{QyFVMWdXAlTDgI?>8B05Mg0Zj z#6-zoywB5pMX$X(bwhs3G@K8X53-kC`QTX=ZBS~Du=xq;Vvwf+gnPrfsFZx!t}a1Y z-_~x)upl|aN!{r_?k_cE7ym!tw7*Z4#>X)&6L5Q}#<)1LW|4}yZ=d;G;%{$2z!OtT6WE1p@(VW%HaHIY~sH5U@dq}$?-Pe)HCa}{4T7ZsQt7HRC^xtH(Y=BbF}*`yZ|le)vf~^EK;Rur>ekilny<}6j@zN+TU+uk$R$PXqLnON zLNeX_UvP&*VuAS>icQmB9CZkIVyHi)VhYIPb6;=voZ{*^&G8=iT%`1(;%OGfS2|}C zPtkfRWDc8_*bU~y3>Qftinp#S&!l36yskK92_q@yq=$<(G)oCTVla8jQk78Ooj zq7UQnH&D3!+PatZ8!V?43X`|J0=_v!NpsiPT2BR#OFN(ePV;@i`vCGOaSq2D{biaA zRJm*)c51oqac$P6!yl?yK7Jgde5ka8T~BfWWnC%09RZ}~Z4WA5=J81ipm;4M8yEfq zcKIDc$HsBEm=oGUdU~WHog~6Y2sEhdVl14?(n3d5bC~nlrGnj<$Fo zetNT9({--pD{kRMptj5z2xioJD}>WwD#p7jTwf2m`FW&(uc7GFEin}RLQi|%LMum< zkR4^=PSX8TJv$j?FHiv^u5;fNxDq?tqEpyx>r4xU02(8@R}I4Ll0S95EqnSH9@{Q< zv52fDoYxhJ+1`wJDKVVSX!%`j>cr1P@su@(mhVm6=bOmpaQnmtJlBn{g?9-%8dPH! z2m1RjU_NhNs0=z{{z;dv>e9WR>GDYN_sfaIA7DpPkJ>I-unji!lhMzK{Asx8T?hYn z<9BSI=h+$PHe*%TS*EgAAI9E0yurp;d_hJf-nl`{7v%c4y85+d@y8oDhHn!K)cH2e z1?SCJz9K~DJb#dK+1gD^zOP3uh%#rSzWa82ai}N9TBFg9b7wZdUZjt(IY-9BR~Kon z;GyW1VHx=j`E`gu`aeriYJ#s%Re|^${BHUPgX$@S)}mv11qbLf*_7u8WKMt{;cLUe`7*nWpOW4}Aqo!ds-kDt zH)$pt%{kHh?Zqy9=jB1;e+GpAe}GUW=FRfgNCC+<@yO*S5szL_^54eTK=nRURdkc5d zL-%UB8shAiIY8|n?H9dn3&8>tVN9HVg&%B6P1COVj*)LL5JrzIDWFYHBU`0{##7-w zb#u5CoUt6j~UJYq)T z%dQD_YL?>qtV&UE{cR|48QCY80gvdq1FB=;^^ zZFb1&(2bAHc4+$Jd$5i!udP_j^8sv!qd1bYVdYxdpus^*l=gUxH~#r)`i~C{^NX#U zh9eudd_U}hGl!ij88j!9MzBPG#ldT}bIi6~uTXWd5+&}0GWo&TB>mMQ*9Ds<4vzt8 zIluAZqh~=naV>cO)b+sDIJlzE!_)x1kVo9!1Thuc-^@v87uBkM#3BED3Uyat4Rf^@DiNTd^jHjurNp;y?xK}K*MYEJ&}Rk?H*S?l z(-ZCN%{xv&f>2g%$K_daDa1DpT$`T>4F{00zC9NzmRFxcey8u46T_P+BFRGqe>AaQ z;o3Z_?M{1D5>p}e-#1{8=#^Oci6pN9#qr3BhDiuKl(#a9nX9%+mT0UnHEH909w#Dn zYt_58fqe1K*t?cmo;n*XtBE`>mL~Rtl>o#}r14glYj`czl88zEiSih_fIIVUOG4&p zsdzT|8R-dRzCSJ{ek9Vmo*`!a9IqZAu=49vo)B3lYl2zZlKT3WfaI}$9oA{)Mfhe3 zz39|E{diC1w->lFq_lC{-$AEm_FfX*Jny{|UAG=lQPOz$ zrT$#Yp!RWLxSJP3ri6urQH3R{Zs=O|Do>697#cerb;p*`?2W^mZog{q+3Q1ht0i6* zuV@Wyz1JUvz~YVU%@On`ZVIYl-&+t)MOaNZY25oNIP~bqkQCf(4aatMlu7O78S(VD^M8r5+-nRoi5_eg|_;S~qd>5_tKO=~^0{|?V3$4={co^8a; zw5}%~W&SdH%t_qsBA*5@$VIA4E*z(aWgvl2f(14?%|k#c)2BD4Q21q0qIS~JB~{kC z>B&q{RHW)!ECe=gqT6)|rP6p0_-c9lbHSb|JGHeT$*&dj_&d^Ev27xNl*4Z(N@5Noo6H>8Z+{>)N#?v;Ud<aD3Hy49za+)X)5Z>sHR^F1SG|Ebfl z!Q4a5oO0G2UPTI1Q8Z&J9=wlMmB1P=PxWv9YMy$+>EEZg4hk^Ef3;XkiX{Y~AS}-m z=5`8tVIa_ODW=Q0_A<+%fO8&`LkEr+tO?!MJ}U2mAh}FMQ3Ew|-<$2s4;}E>AVRm; zF?3nt8%y&lKGiJ#5|tckpvvAPfFWs{I zUXy9`uC?|-idDUG#+nB&m%r{;xK7F!n)O>n&AeG&%Di5A_H;harF+2AMU$tfHhDtI zwwR9v(jq6eZuP_FwLjInOmDbQU*Fp?Bb&_=_>ohBr|agzDYiSc;GZU{y47P}-wY46 zcjZ~0!QC}+j||?%7W4^j`xxrWjdpw9y{I4E+vXP<%c7X@gnGPIrcWE3-I8jtY4h}u zWI?)5HQh_JPVG|LSh9G?^cOSGh_Uut(VkSl0h`Oo;8MMvn1BhGbYEGlu;2eS(Wzn` zXyJZx&~0SEr>oaNqZN-V$OV}d&wzvzt?fNpJZv9b$VDM$r}yTYETb|SqB#1awCP3p zkNh@i@!j5~g(q+AD+8>@qxu*Zy9>>s4PZ-dP}THF({;w?IG|;ge0Y+L@kVHZ8t@vI zH0MBeI>$hI5~p?!-LgS?VkvrOM^1zl0U`Bb!e+WP83pzY6>t73^+>GMX+PGCdslTM zVmzQjH}dar+Jk-TDqDNAIzOYrn052&5Tm>DWEJs@Ow$Ci+W|D{qDr3DUTG#Tm&H}( z=Nt|mvx~u@)EaMM)>F)xtoR3*yVlLNK|Q-;Fq{GM2IEG8FrV%OoX^^8JM3l^Cx2aQ zEB)@W7OuMhit{m;=auN_4vJHuI`sVd*3{EYzMHqZhbDUi`yH4`k!8E5 zaitOAKfO0#A|()2-Bo?jk>Qc#lg|=Uzy_~=_EbI~o3WIxkyxxj_TlPA&``2a+p(B& zX=LY_{d}?1l3$E}8#|uPHVE;q&TfY&J5$$)l$!k$&CRf9nc~yFt#Vgvkmr@H|ZUXQo3+Joo@0?&ySPFf%uMVkd zhF{j>e7g>`QiSa0KO&3jb7hN}4;Ma)4WqL=cZ2DSTwm_|s84W5q8`VxFm;Cq$t6+i zwo!T1m}k8lR%}&nqn{@0dSAcCsjsKZ;m9>N*3a9C#(PBx@I_NiK5E;h652!8KD+t0Gu-TY`$B0zFA^dIee{dk(T z!-#{_3&wfs!c6){pNDqT8gyp~7pvO{IpKeDtS$fVLT|X-UPvG#Cp=F*N!UKF# zoc@*^G?XIA?y6($@Ljj=AT{yKRyeXXp{bT*TuC_lBJWQl(Cw+GDWx9{ zHv5kTJO7@JTAw`cVu6lejoO^LkLr*&4GdELHa`2lHI1>lmu!rdq)0bK|8m7`PA1Po=gB{Pe))OJ3-BERx-l z?fUJUeOetGqO!zIjIMyWQVo87ks5cp4e=j&dEne(i*Sk1$F~l29w#J8sZJ&kS6?Fx zb~EN3R2&e2Lvi}QdZQx(bLYCWj_tk^6sOnx+q2cU{Xd+KqE?t|>g`4tU3OGC)RT{zs9+4T@7nH50eex~|y5eU_fO z%w8%MLeWt=TdB~HCYSYXb9P}Wb>G%LP>-Ql z=;SnXY9s}|5vhaQDsMbzeRiMKE}9Acizxl{d`qC$o^rJMD%AL4x^GX)JPkt8SGacA zqA&|HYMkCtbhO&1^(Ba{J^j>I)2yh!TDHdL3#A!H%T6g}5KZeS-l=Qxs)XJbE-WQm zcVE}@-w(6~r-h&>8d-X_-q>ighno~qjD?l;q4DkC(aQbsXC6nlB78rgzul#VVt|hr;C%KF_uWVAkannOK<#W>O z)*Fy%cDWm_Hg5sGt#it#($p+6LMF%NP?&z)pJO4&vT@9!=x{0;PcIHDimL8pRIRXH5}TT6WBLk+^hJ zs%xOK!T6!jrf)Z>@?_QJ7*XOU3>a+6!pvI~X$O=q(oOoAHa4%sQV!K&=80w6S0{M9 zE63VjR0bS-P+83azTx)p`Rl)5Ay4+}(5i89l<@&-P3>ea&dtnk|EE>8M3{jCM!(HX z4EJ_@e+-iEzXzYoYMQgCL}Jz-^j0@HTQwO@jav2y48rJwur)*i z;p^-eZa{8Qu&!$p(XyMV)b=4Or@|78>Qp5WPLH!slYDw69uG9`hMKJjiowkb>l}(3 zb5&*Zpq5d!#xz8{U+m~GuUXK^lEPMyzpGwAP{NhU3DT8IrK?KVq1659ngzdE8Y6#Z zeS8PXj!9HCKK_(__^Fmj?%ta1=JwZ_DE^jg<>~%=N9_QUujowcaZak-%Ero3?@qVu z+ZIZkDt0&wb-A|`^P^|>f-f7~_rlF0&0CHm-Sz>&eLr%?X3fGA93lBvV zW(NDRjF!gjSTh zjj4X_1m9V2={Sd9OHWV#k`}}HBQPaOZO7L&y{6KVU=25U@ATpeqPdhL;W2;&HjPYK z-&g=h`f;Sz0#8}@Hn!N2)yWi5gpnepGVS#<}dGB^g}Ec@%i?PtwD>%l8eNvTjwqX%^I z2B<`5$8&B$HSh(FC7jM1Kj^nGNTl%=tbS)HEl%Xp!7b3FcBb6e4RiXrl z%)Z``uzQuvdepeQ_0l<>61u%czJ=cHZpgt>M)4IErfWH_gsCeodz34mr&)@u{Wc`L zWoq6c8An4GlTMUix2$AzWDbKvE4;{`eRUh*mQ&zYkJf+jPiR}~O#*y~b5#l@kqp}b z2XGMr=kj(BR%<<1!u_Qnhq?eKZKU`h?EFctM0y96SB$M@YtSOBW@E9j=;|sH_ z>+DUbT4gwUJKN-48k$5ioIa~!qBFR4dp_92@3yFZ_VJ%_nZoq;3!GN*D?Zypi*4Zm zJxz^)Nj&#(;a`7-&XcM_gQz+)T2s;VU8JGP_4q;PwKF@$zbc=9AFiF>UDhD3^kxl~ zb?9uZHj&7Y$)7NZ)2Nl_z&`(oWq1RC&%UpK)AA!{ez{tdT|zMDjPK(HLdc;DY(muE zl64uq6$28)f?vF2R&o-P1Xrp|6>>s?jw5Ksg3|YkJ90N+xS#=RjwrrpTKJ7P={pn3 z)6jg2qdtDb`q$We8-my(#&O11fMe(V>?J!5+q-9@nBCrcLT5f=Cq;j!%SvzzDMB~| z-h&q3WK#ZXDnfguOi*G$%DkC}y?a~V~eMG7yLvNin;dV7FNJin!e8p(s;^#*TJ zc;~!b47`#YzR*-~<+{)@$AmW;;F<-0l~lZd;*=Qjdv-BXCCAlo2CN91Te{XB^};ER zmC7pghHYe8tJ1+;ODtH`wA%S8v61R*lzFFei@v2E;C>FZlCy?|Rcg0#TXH^#V<7~i z)ePm&Z3$dSW-8awz3%^%@xlb)DBb+Bi7irv=0(7X_fDJuTUo_S7dp)YN3!U3dk+6O5S-2{cbJ5< zZ6s`oU1hTxNbrM)y>7cPfb7rT?o-kw#eE$QKm z?kz&zbN_Y*%5d3VPk)_-cPk^XBU@^>7jVn|M`ytGK(W&>2-OippMs=S#q^!cJ~ubL zt#i8d*~_4W}u?ZszAxhA?w(D8xj0`Z=RsUP{c} zb=iR5$lL!4fT}j+;I7@ab$7j{EwPaC6&^@ebBNKTru_FFFi##XGT_(8o^ZqYTt0FV z3*{W={*}xUd%;GtF0F}b4ssB!uBxY@FNOO%Ru?__)T99*O-h@o5F=k=f$=m}YdT^7 zAnlu49?Xng011*aCB?hs_RL%JqM^j$?7txfTQYOHJ@?)%C@EWX7;9w1Cm8LOxY>Ub zlQQCs4|XNyPrjom-%T$pOh}R*;UqO|-Dn%ty-r09mKsfBjCt34qt8i?8w@%TmEEcK zuDutLiBIA4Gz7nE3OkaG+l8ajVf&iQWeH_^p@wKD-)@GRvR$TR*S_FxhhOJJ!8IN7 zwN-$A`2b36_iCX~Vofj5zh_peZYFW*DTEaBhy(W)8P8Cuwcne6m+XfLu;OP5c(tpA z3@v+msbMK+nKIBt*5aAGZh+I>chQzrNKztuZB)w;3s;r*YRyN6X`L5?za6m#y2)YuwVBe5 z9Ao%L>MTkcpmfcap3sIUAQ%#e(6;Ongg>42eOySE@d#Mavrb#<41iaBtt%a7sO&AG zjj(KldNf?`a%|IHy8Ba$>n8R3Aj*7F+_x)~RwDb6`u&wFH-3HWuv%b2w}zZ^cyk4h z8)ETUm6(e8Y)zx=?f!615SA$^nY+|9$YQK)6FWtk#(pVnXW0=DH`YMQZ(l}REZqH-AUYWKkheN!r0@&DT9&nZ>LdCcr0(n$KShHf<)s(gP8O#b$>(Ha~bYp zkocXKVj>n5-&?9`64h$D-?3YE=#V~Cw3!5>efR#^zE(tle!BkHD60?MvyL=O81YxP zVK`;-EJk9)!14EChQf=rI=`~D(UQlzDEV3MsIiKo$roZctc{9Lk{i9LI5OSoo%EP0IaMNo60(WJ~AHz2x%PTU;7C>yS4J zwJF>FgdXHXFVM^*-nCLC`z+F zkGtWtZ;IC6;h8+^uPr@4Hk?6+BIouaINU1h)n(NI27I&I;T!T!(g#~>6DGCO6WG=9 zg*b3hx@^HbTXP8G)bF}OiUa3nk8(!(?vZRT+{;Of{IC8Y4F7LYqYe!8oa8>R(R26AB z{x)LYoAX_a@jD)h6CCb(baJnI^j%9%k`9tNEki^K=|S>Tsm z)Y8}PF}zADqNi+sz%1T61$zmP{BNyJv$?NFXn99`QNq?+`v*C`5WMLJ6~?868+`fj z`?k1ZGD3A>BrcYL3l7cVW$X~L_b|L%93W`xM+>R=A)vYg{dSzb5zR?m;cPq;m`qjK z-SIP}(k$BdyEL=h@A@frH969skb;f|Ed7eMXpKpH)2hgko@>}5X{Cv(^65M( zzEAkyY`oQfah)rn`$~EP+zA3qj1&=%<53XZ)VC&vN9B7q29#Mq+%XOlVL-;CDs1L^)gHPqWO&T8zoqv*DV)w4PWtq z#i-07srYixdfS)yy3az5@3?dq@Hy*_14>5wL{;7-abXN>w2jNGce{t+6f%`JI5m}n>&o)g=AbWoUlbDRWwFtOC8z80H9AN1J&R}jr2 z{{L6wpPe^Eb_)s!qg@%*R2tcf1nM#?b`u$u@D>OXnz$2rUwRJ7WJ5Ii?b|LbBG zYpbBm<2y{swh{u5?o5ArCY;x1JQR^r!73bMb+(VSiC&1YYd6CZz^=mj!RVY(R5AIw zjR;qjsRdf{-0>FrJU>&p*Zk@6;jVYU6#I-wkHOVc!3X+h*toC$78bZ@*-Q_-#LD_J z1t)fa==(D@$AzCu>TLLH1}$x?(X*`wN7dzu~~ z)u-0TQ!e#S=j3K_lB*ne1LN~|8m&$|Sl@`;d9tOP_J0_AuW&Z}`0pDvs#Z&D)T~*p zQKM!EKULJKYN--Yqo}=NCq_%v9;L*dReQJgYEZ;#ZDI?85Hlj~^uDh9x}N9Yxu5?* zP8=o&KHty#^M1XWSFWuD2V3m~9I<72i1v+bPxdEZJ`fl2Q+ucF{j7m67AJi8&39)7cJPH&ekCYu5e~T}!qY>~ z>iv<>J&ii*MGdd;bgTjcLEdSMj^TTWHuxfyj+Vv!vrV_%WrkppKJSmNU!;m=7Sm5a zSlgOXEI%ACjMPBA)kRv7DSH-Gdp#1s33dABUPPFpHE3F6L4Li$bSJXZ_njp{!jgDX zywDFW7`i~yYua||adi7q&J*6+VtpInx%lpAoAt#2h-3e4clM7Qv9saVf8e`rjVMB# zoOB74rp+khIFAZ+X1o?#esbH7Q5oxGqX%Ac? z6;h)xqQRmz`8)6;?4-(3eSaSQED%4i|6kbw9nwK7X9;{cCJ8V}L(PbEv>1Se9Je`x zk9|ek3qY3$TB;Ld8c|s*wV&i@Qu|WKuiT%r{?z(qYi-P~1KA1J$mCiWMj9`hZqlf->Pz zM0bBMwhMe{OP^Qb{K?Dq=HxblhJ7_O@Zg3aIt^l2?*Lw4B&O!OC}~5drERXyjK?+3 z2tcAh0;V5NZ4-mpKjn)z>miqKNU~4dA>M7#?&w#Fxl_ND(=qUxm3_Q&IYV7$DwrCmoQw336*`1=XtWIM zhY((_=uKLQWK(n~DkJPdPgyfQ8(=lj8e_nt+-Sh)HLo6i&e>c;+ets;pdb8Yczsu^ zkUfaPod9I7;bA_^o5}=jNF=d5&p%_5Z6vI*{%azTBV?7Sj=x1SPvcW%ZNABS4Y z!rV@`(K^!SJ$EA_nl^q!y(0)-s}#kFO;xY!`->lH^kG4uAV%*oTD(r&=#uAXYXR*2Pby2}6yv(PP$`QlvEID^R#9BypJasK%@f-daI z!ZTo`6xGYxvp!RRTT3P$k$RAY&$M`nh7s!w zD6?}6Du}vSU%3C4xh;VI;q0G?8pJ*ZNnnq*m@pobm-}Fu4m;Q!#QowoSN-cI#Vh^B z@0-e{x^dmNiL>y=e1Yn1Z>Z_4gM7!sU5AzhoSJHp>ev0TJN0!es)IP{;}uOWF1eFb z;{P5bo&N$`5ysNvDa(^J<_orDdwv6r-wOPh=+7TGYy18p#Ut`lz>jS!;os^+!4*F2 zZfBTZ!ij92)bap3<)cW8y2seCmcV)~%X9UOb6aDT;r|%Vg4gPfRc-^$3T8veF~?uZ zTe9cTz?naihePjvRHc6I{24~#6aq~ZWs}wy5Mmye>-f}B;n;1JVBB>x-fcG>L%Pu4!_O?=}YtCZ`%L-k#5p;`YR8( zkw2KoiDJaWGyUji`vprf*l*qs)fVGULd4w7VwKGBb+!&E$?QLtdJRnWDvC(HN+H~Z zlUR(^BRO(H%+MASCY=Aw3f;IyJR-a~x6TYR@8XLUtuby8bd4H>6rk=(AB+mr&hl&GK;jGnZV~><6|4IkMEq$n2oroK2xrm+5e~8XeNB}y#*TaVJa~t zMST978$d!2a41wPOr`##~q|2_g~2fU~Q!m}^tH#dAEi@**T(WMRV<1UG5 z3U|!+dwz6Gl+S3zE?0rXRW6L=8KdOEueT+(6mb`YJVNJuP(A59UHps}yhezI9Y}gs*L}F&Wu<9Q?{)mwbW=^YYnbH9g=K}G z{t@Rh%8MSRKvhAH%eEE+_lF5KIY*kg#S6Iy%p*4t&?)4QaXYlgq&3)P>x#D8l>|1pbM z^+!B=L?{5_3&g_hn6@RDqLaP;wQCwT z@o#P{&ix#6{orhwNE*&_TIw!`A(TN$;s1OO{vxtEQG`fqnrG%&LCsof-}4O=CUW>A zk#xmum|2VKxyg-7LO+)_VZ_b4g=P4UDl_@)hwhGXQENF2kA?5*qW>FHpDOtKcvvdY z`Eg(Gzeu64fizc6j&cWlcM0f2%=~&Dq6E^ishRV>{8y^mr5$acV{IuE2dGEp2Ce4x zOn;DA4KS7r?h^=pYYs26(qYB)f2L`QthnDCCb2pLJ7c=Kx1+z~=Mwok%IoUi$_Vgu z$A%+1HuPUxNrp)mjsPq7CmNl0wXmAK!=bGR%eFNeW6OnKAhPfOi>RjBGYTuxK z)TS|F6Qblml>B8(jD`~JA_bTckroVK5~#a#10%mNmGh!#4J-cDdMC7m|W zlijI#J^T7f7BrGNvO!v;Q%eynCxP$|8NyU)cQx%qD{`Y1yJtvTGpuD=cWW)?bm-a{ z@8hSjtwRsvy(|v-tL2XX#VY5kESUxxM?pFB-F4Bi_Di5tM z^{0hKk1#AcqG=Aq!uy5@7{h4C33GwL+<%)3zNjpgjj^g+IF$IW`-!tC_Q}2u zzO;p(Ss*42o=q@W_bo9RLweW=BB=i+mH}FxamU){8-&Vzr_e9<*Y<-pNsP~RsPre-76+U$o&Fk~ z3Ih1`tJWP<*6vnCXZ_h+aC)TdrHhMGnIh9NE@5?2@uL*kaFMrkiNj_GyM{`dG$S@% z=>Uw4sM_HeD!m_^D1O$}?Nt_&l9#tAgX}DPs59n)nwb5LYCL{ByLjSow2Kzo%6(Bbrdsp=|vx8o@|?(AKcq zStRT%(s@wnfb+(#$VDlbQBEgkCZyPHW+JmD>MeLHH^;9F%6gT|u&R5$mecrfErTmT zz%zuJkQYf95Qg;+T`ZoquM(61Sm%0f*r-kU(jW&o8r&!6zxNS1yW*53s(BTC)t`f< zZx{8#x@YRFD#e`FY&0RfR>?TO^KOXw*$#~{X(j3sW6z^%jx>1j&o_XoUvm;@agEl| zaA=ZXFpg7UbeZHqi#<1EgqILsSoJMBUDf4WI^+N0wddrJcUgvM&TkC|{%#vKlx6Q} zn|q#ikUzSvgp=|tml)aVFYN}(#M=NzO>UU4wt6i37D?iiyz z*aMi>;;Z3)6PPCZ31=_=y=gpPRGCaxZhy?Aq-baao1GmfF;-qyQp1^Z-boPmZUOU( z*Y`FOl3|C2wZl$Y(K})i_U)FRq17A&ticU9g4N$d4!F@1gzLWIA4EtU_QoCb-66n6 z0vD70Ef8G6M$>ln9TyAxNY%UkCNWYAZIPZ#z*PFXgNw(NzIOf+`+19m4f)OU7c5g2 zj+a&Z?y3C$d`~YB$6qj+YIpa`dfI<2LHTy$Bj3^V`0+v?n1G{x+D{$HaPd+fwfZfu zp3`o9;*HSqtj}6(VMcIFO9;%xMf4+d6ZfTJ^ z^;UsPqg_GZpU#-CV~LqcCmg$JsEZw3X+jBULHW6glNGJ-`0a`We$ln|jCs!Y{#<%CpQr>7c8o;0!J6Ncd5& z$Q-k)P|5V$KhF!Ym(9@<9nX2;tv0>rZjnktV6_DLDn3$?^?wGPyn))&b_2?pyCol5kt zcIwmX9h1`ww+dwj3QH%1p+%54eQq}N8*e)|E?NJ(PJ5K9hNkK`o-x&(RSM$Wv|I=j z>N0cpZa>WoKCuiWWo4V?4X3xnBV}nSAbUYVtn&)311aI@Y2U$ybYuO&8sIx= zR#OWWG9Ho-{x0$pn&Z)Y=L^%$&7Z-`zh3LBu4P}#uEjqk2-fgAWSg~A`a2G8yu+mq zqzzy6So$Y6culQ67}sSLkNc?6y(k&inb;|#PC=;rx+bBjIBTgIA(Yoh7}iv!MH8vx|M5vt#)WHkU9v-LzhQUN<^8v+^_ND5lsNhdyM&SXzM# z-TO7l+}nFsTcV@Jxg~0bq1hBFQ~@`RZlnJ{|6p(%Yx%}KN{yvUiv(~ICFi2>zZ6G5 zaYt~r$Ny@vw4=XO(BqSk#QpDd){P`=a@8qgVL&*J8Ap-3Y^ZYoqy6`r0kf0HG z71NPQQZ) z6#a1V*@G@{>zz@JILcmHbeH|%N>i>ztsuJ*XV@=FFx?9QI@>DZBDrBbOW~7Z%6D`b z-M-|&+1rIw@p^^qf11j*Zf5Wa?sk@n_ighzC2=l^pVMDg7-uxo=Y!$5v)jpj+L{R2aFdMZqvS{0jrG81jnf9F zeFKw^0Aq$ZqaoSLB5mK*FOP0R{lXBouM>Eo!rVBHQ>tq>l1BEc{6yXwbcZV~fp9N? z4biAG`>vZKb=(wY2P~-m^n-OjYK4i_`derb|Apz0N&Mm@TQJ*@ zHCtRW@cU2KrE#9_LN@9cwS6!8c&x!SxXzFCTy~fr3ZRaS!g$3+CF#sURCBoHg=@j3 z9cu<{%s`OKwP1XC5Z*8&iCVh zRi7|?@~l&Y(|syZ4n~N5il+j~U5Ao-ao@_QPy6`@6FhlFY*|l4qJ_$7foxEO-6jjS zU|(M38WoY3Q`h$(t;2aFx! zbgK=NRkIvWg>aX3lHRWnh@!%#_u7*PI0%M|Q?dHxYXwBr)wY3RY$n%A@zpo2(klUlC zbXMFgwLpHt!}>8+{L%U@y%# zL!Yxn59(JeQC%{{yE^l$7}1=sa$=2VzNjBQGo6<3WZ6KfN8IOD{86ao1?U<)Ki*F;Dvfb9Ysa~A6W!&_w+omp3?5@_P7;T>eieTLK8$5^ zAS}G5x19&fzeX_Dbl5U6990Yg3Qw9;=CUJm&BsL@^CVqnB7B2wXYhc2SQp&lLv^bB zh@(ap+T=pgdv=<12}f?6STQRSa-}zD5_gPnrh7*ryTXz?aUb}JsVnkJ?z5*|kAUCi zoi8=CW?n&KeLJ_Ea52Omd!P`HKQhd+2QeM$h%??GH@}I$M$l_2&vOFaW6K*eY0epb zjy`n}*xt0q$!CT%&dK$n_UzNsyTbtv`y|55`%-4mmh>feYOb5XO4b98=RC3J1J3`g zWHlpr-7b9AtZu{lI|3pOO2n0AG^4jBjW6QEH^e3?eC2X%;AeTq^Etph6^8Ut5jn`s zB^hPDD5YRNY1`I&Onb}V%f&^N+QB|+-NP&ocv>l(WM%pqIHq%Us1g&6(E3qa-ryk! z++f>YN~5opcQ=X?%hG+Kg~ zWYEF6r*Rk@AGjAl`^{_gLXDV2G^9DY*R_v#n>sF1t#!_xp;Eo&PmZ;r8>Qm?JC!OW zYpp!ZN1zFUsJ89{Ko{2Z_xf0t4VeP^@+^Pg?k!m*-e@O>k#LN6Nt@u`7^vMOQ%xM^gvcytEiZ4e+_{Z<3+^>E_4+lkXR2CiZ zdpZirNWM`>XWz%K$tsv+-q090)6q_KxOm1sv*0n!kY1Cc_nSLA6CjzS@mD0>6Us$| zihtfzD|dC79-Fb+me2I;TM_lyrhGUw^VMQ)>CwtZ9*1CTl61+_!^WO{N^fa}3VM4t zF0pv^mVo-(Kyha8kx#wYW~9fl-YJoInOJ@?-@K7ohjb8@0Cc>p^BWr&)?_PxpzI*8 zIa}MOKjU*jc(uuM_vM)F0-hmJt);X-|3-hmW9XG=374fK+n6QY@|#9mN0DZ+&w`5? z5)Prlb4^Vq^bWoN2e&lWxC4@SfN}Ycgvpiomfxzbd4~90qr7Ba;aNRZGWmbHJ)w#+ znXPpOC`(pq?Y2&H#uNX87lHl?VPxEvQ40f8y#~8g2*#B@R>4mlJOh);@QP*k8m1mK z#o%}HjOw3iHC4BJF&d}E=K?-<)p}y-je6c=cL>2!5NO)G%2Y0j3nXW3t;#vrE(xkt zINDkBbn_7GGRMBvnLdBDS?PehQPN87qrm(bnicR{{W7z)Swz@m2OK1d2sx{6gDG@; zkx;tmjyPN@Fa*e$sqdhKLURQDlLdCU!#aEN`B|5qk30(5U-|m&kDp{5Q9PRRQqyQN z`&??0OK-I4`A{^xu~%^I&j#joZs&Ea)5;&1anHrO0q30p@qHAOaNVC-Qi;`meWBNq zS93mciqU)aKVs7O-m&;UorRhds9NiegEg!^g)oo{Q`Az~UuXAb4SCTqcg)=-uNB%E zHr>j}O2$v7@gg#WX`SlZkNpch>IZaLO0@N+v(U6IH%F%? z58&a=Pk_X0(qxn#w9kioOCbyA@`|_C1P`97P`o;@;43@nFTChcgDpAUyIvdI>l?d$ z&o4=1pcJ1>i(lhhOh!$L@QzCUSZliJGD=0$O6irauHV$Fv9f$$O-ntGqD)57!P+{% z|MnY(i95Snyczj)O0>2AJ+#L^Om}*HrL~-L8bMXFajCvZpOO6GSLOBV6IuWrJVSs) zRU(VhM{0_xh|o?2pBwJ>O@Fdzsdnw9mu40Hwd{o$ZcM%$d6dgyd#DS>zgYJAjjKL1 zZd2u+;kS?TsC`V&HgcoUE}klY@!FvVa`Y2nM;SWK7688XGkNGKYcj%is`BM5M^PQc zM8n7ZwO5zhJ(8=}FT7ht&^t{bODP@-y40+CaGmhSZHMyb4RzT|+RBd-m*rgQFnT#u zh>dPB3aLnPm0sXUCr1uB=fIvVpNpl<2sWXdY^2&asY!5^KHNDHnHMefjMJ7WcqY}T zp37w486>i4%at=`mBKw1Idhj~>_aQLLUmh`RWZd8(yv=??W=m~jH_ywUZ@gPQOVWo z_~hBXQ*|;)S{(>mp?%Y0fYaDxxv+S&MK~lyK%N%l^CI_XI1zJ6g7vhZ3l6+1y`?>} z24sLjyE0j|Wjp~jyFrkX(@p5!=5IG8Ir{#vUK*ce&V-a+#02QLL0wU`ZSA@o@tUxmfgJU1jGJV;M>m3noYRPYxcmj2*c2f4vGPgp4!#1n)eL1LWYkPsH?`h@m*R*?%R+Zw&r=v+)KqEg<+8GL zw3}BRtNwIr&umx8oL0m!dM#s&Rdei*1m>7w;(FFKN=MH{EC8m1>Z((!xRR~=N}Z0k z(VR+H^*{0Qwz^^Mn_97LEcd3o2V5J_VF;BW9;z3vXvx5^6Ghi1bD=5%i}Wc;Acjs5 zTe%h7X|I;u|KKXN%8;$U&R2Ouckvdz(=}D^&rDS+O3Bh{JpC^lClLF7=bUkCIXt8d zN89xlcmN8)7JD|fsIN_Jr-k0WueNg(o-)C6nUp)iw!cEd!8y(5llNHp<(yH+OnJs0 z^dXbh<$!?4u{;1n%B6Ba(&~$zTK zO)W?b^yk_|^$NwaN_ufG9_c;qmn);|0AnH@L2#-F>En3e@SDr9wuqNtVv}O?zzT2z z?N$ukgB(-M09F;|-qUkYpXot{UCt#Hn~I_dOszOLQ8E6IQ_zxe;)@Y9T<-kdHtZo8 zG?(QfR05-PcXan{$lgD}s_5XmWg2j1j9@}Aq$}v#?$m*f)&Y$KrjM_K(RD+pk45hn z3}A^Z?r6WW%tTxjxI+J1@o>039rl=k+Qja2A&hYmTmoCM&3{Vwg52By1ry9)4p4y? zZ$qvKFx8)%Z8Qgf%wS)4>_p_2yv4MFOKgD14PKYEu)tZqCWO_doFJn=2)Mk~uXrny zSrY%p4q769`J}3}ovD`w;!he1g7O~z=A!HD<5Hf!0||Fq&1hFre$NL)M{PP#w1x}8 zgW8R7Wz9VMZ`*W__o#Dd)Mv#{&rR1pSA;zTPF9`Q zyL=S8Ame(d-XDY03yQq^r-S&$Fw{mpRK9%~!20^g1<6BYP`lmVy@5aNC{f(R$iSPx z%}UIyBVtjRB7MhHbmd`>&l7tkx*@F4d!&zQk~pvb;np;P9TQ!a=g6 z%e(lSeeLgPS0I6vYy#75bCKxRnvc0sD3(*i;zK8IE$aLfEWKLMcJ1JE2>koSjdw2b zBb`mt$E6Cd?iu^+Tj9s;0<*|Knczjv@b!4!;95o4U;p7(QfizjX}uo~4*#;$gcC%E z2c$mjFYrpHFhb6gq9xx;v;f z_4>Nn^J)F$GT+TM^-Vp?Y__OYGG3ERFNlI?L2`LiF*oLPZ;sdVZYTw}=9gBtPn4T9 zy#Dz=PlETAQV6a1e7fHfn@&@PmB01fOu(%Vjt*noYgz9EA7OA~S3Y@>aBHnYBie&- zywb!JCW7dRCS69HMle+KPdf0|b7RvHC4YRMla?;MpB)FEuz_l<5J-?@+DF}YMQ%M0 z{%)?9$eLP6k7afo&Tq7S*_35_iXH5(78gmQx^Ml0Wh6C9KP8K;Zy@P}X?t??y#`xq zU-Y=z}PPKO8wF8B{%#gJ0s&&!*h7pdJf>u)Mqc=0D>}bXAQv3a668!{pv}Rf?>Vps!>47NPb%H>(Gz3iyReO zasl~5GsosDa^?(_>U7z+duN0`F=q)q>5Sdw)7XAh;)M9R$}#$Mg)2R>O6u=dk)MuS z)uLfs17DR!{Uk!NQbN`Mj7y(@YwERpxvLa^&&g=r({7sW&|bXHEZ=obb<2sBL_leu z(9XUcSsGa6mQ;g@d8-2vR8z=5U;E>P3PBUZZ-wDvz`d9ze_Jy-LrlM(8g=l5V^`-lm1V~9ZE|{05r#$2u0T!3n z*aqlXXSEXmZ%uV*8_;xuzndeFm|Gch%PDc%VUJnI?)l|q)!eP7&6dfb2)cJNaHcsq zHo+Ca{cNeOI|}^BfEtjzj@H4OVR#f1973T58!x>x=eMR5a+wfjIGTjZWs!K?a{u-7 zglS4%IhOW+Gr%-hsjs+LjLAvg%oCJm6OL1f+w3o^;n*KXB*;KZ1vLRYG+RuG;pO2L z-y+L-MiOxE0um1O(uUu@Z)VsICoX?n@Y?xRO8rHXtx@2T&u&_7q)vR5;NemugRs;R zW*!H%dxqhs?T;dX!M0Ucd7sB@!`*O+llwc_+h#dVupu1&?ffHQh@-jU3H{#hO$E8@ zY3f8dZnP59fQP8vYfeQb9bWI}EnYqqyB)byS4A6F&MTgPfl2R+^h1p)r}G|MWqYp2 z7i5XyBStpJpR==dN!ZUb&e^0t4ng{6UfB#C_cs6AlIPk#@#7NjTaaHQ-*2AgIaz38 zINID%oC-3XY$>_e@93C*CYMa|WBX>&>z@vVPoGoz9PA8zob`E^4oGgAt?F@86(&}@ zA?$YJ%0zbH!!mav$Gr9|@s&PxFb5sjA*k@6JJ8OCK{b{_R_g+M(ExrZouCwDkBDE> zxoA@{TNd&2MNysMHdGoISAc-nnORQCN~eO9bqd-s5VvAX)qUQF2tq{I`d8Wzct{ zZaAq%YFHmRc-&&D`}0qBehxJtMC!P!g?ry+=hVXZobeZIJtz27;hgbtoW$j2HpN6< zr(Z1GpyE=7B!HxkpkvJ#(#ri1p#uCrEC6*uGG$~8=%bL1uBvPl^f5#`^<|qf5-#T^ zu7gKPy3F21_U*m9Kn{EC|HJM(LMp9mQJ=NRZ-5!dn;lyQ6 zQ_VB3F~|Mw@VSV4ag`f@ikVV)70t@6_$dD>^x6eek#f#$?k0FW>D7PjdpJ&>yZU-K zs8M9Xx5QZE)L!q&=?Ag&6wF*pM|zV2s|gOwPnGq)ojCxgN#u zY`L!+y*(6ab(s#*7{%#C7D5g1-%D%hf=8ErXfrcrrw(Z7?cMNnLvJOr^{WwpWsfX{ zix&au=;DWHsh?#7f6UX7EMw+6M-)Z|AfDvh>h+qNzZE@B;0B57TNH1yZx3KtyS4o; zkNs*|fJd@O8FJi4-|Jgi_1;f>&=rOgR1H~N!BuScI^m#Of9k{$l_Z6pw76ZE$7>Xo zg?@XdNEw}B<9{^atYpV{JDPFrU&i=1*|md;ZUhh~M7k>meMbZhA~uqu-;PD1_u@3T0;Gbt9j zpfqDiE`o_~S~GLWjDi#R5u1e}rJ78APX~SPtu+B{nk<>u_7>oy87cbud)i1v@_kBu zI?CTmg{@Pn$=r6#TBmhL{F@6!ShCIKsAPwh`fsxqi{B7c<@1W8HD(1vu;61f)6JKg z{_6X)J~;qEo_3}*w@<2m^kgX8x#pD&K7DncRolTma|caH=A{VYE_Cg3D{~CYiLSDA zQAjQY5GrEGWJBK%T(zQ#K$k-1Aa8SyAcMJrU@Znw9EbaEdg<>LJe5+h`1c*)EGpcV zj$v6@yYWTiabTu1Lk|N(^K3<7%?ZK4a?;yihK~hmpOb`ixxD)!tvQzI@qUA59J=R# z9{WMS;__)3=0f3e7@8<9om!hYWxtvk^g$$WeV!`iR{>?P-Gmbyb9YAn;+t5yRlJ~9 zGw=qW@9Mc0g&8ggWWT7KYTv3K{A9u?LDt=1G^aE!szKu0AkHVt%r|?%#;|@}O?L|0 zwd`hp8Y2|u>$HIMG((ML*0~(!w^6!iXQLlPBA$+r`6Mv}A1NRA?ax94tI%eqS$a8- zcl3e`3uP<|;%j<;#B|tx$@=m{jJzkG%>no<;%~UUD9kLCP})TIr}iVvn=Af(yHBb8 zOOCTrrb@;RZqYsxu&FarY@-bj{~gwRIvNf5yE^x+IVOGW4|@)j#-a}9uFqquG9z!7 z1V;L+Tx`18QDTx~@1{70Lj;A!l|92Me=jS~pS82ncIh5>aT2$3V#ej0g%lZF0N3P? z;Ud}=#!ZD_n|RysX4iG@o=z3NDbk*rV7DuXPLtBgN%_l~>FN9j=KZp=IPLKGas4Qh zy-T359bj%8ReF|$l|tkep=R|Ki-!lBX|l%3qK8V^^s&#|@Z}3fHc!VC=Z@*G$QTHF zZ%^(g5Ojjsr+iDs^X%3YM>f6!#=`*qP-0Tx;l8{|Q6HnyDAnlK zVfK=T+a*0N!2ZXo?08@DMzQnWcL4_6em7u#ojD7=8vEk)0}(Z4q_Qaa_`5CpLrIsX z;*ucuyC&4xvlSP`d-ZHR*=1Ebbgj&W!93LHT$Rlat&?^<6o#u$VkMiuvoP4x{i)!# zKm1B~0*nkq?)@dw1=S8YFPls$-|c^JbIA$Ef25NMTMuYvUp1cWV1<}mhEjI*TT8t5wt)sEq~SLPr z>j9yL^e)UOk_v^hA@x{jM{xpD_}@*S7px;#PWK1A0fHt(D6|y^;`tg5dr#xUn8Ata zRR^UzrhnB1ai9hUnAfZa#)XEjaK^k3TYiC?@%agJ15r0c@ZUnA!_jo+W*=j%d#rb+Ef zH`MPi0kCScOK0m~;<^AuDCO^I?ry~{2|8XPHd41!+j3CtHcF3K&|SO!>+cqi0S!pT zt@~?PP5a!ltg@Z}L2@)*Gi|EkEixF@@w=O`rx=Pc3}XE8Qi(3`ujIMN+`$m($O;4z z#@CU~Qfs6`rYNBO)?xc;kcyv2;zfHS z!FygpT{>5L%{!GF*@1hG|Hw8eo#w|g=}*St3tJeX=uOLnKYTZ3<3)VnBu7x%Gc{Ze zVIU`lVV>DR==!rquP9~8#3Fvf#9ZKz@_l2?GU?A z=}n|m+1wy+ALktbgrNbgS6SWFb;bKT$(UniYQ?Hpt;0NX{Q zo0J+dSN~TL!VX;edI#>m(%&bJ%Uqto-akt%sshS z3_11%MO zZK0N+9Ep&rq&z?wPX{-GaW$Inw1E6j7cpb4Y_VO}?4>RwoyYV$@fJ}ib4i+{luqV? zd<>#S+NKAsUc1m1p3|wrmsFiD2D;^iF5FbvY}NpCLs!+u-*TxspZrq*yqNlT-<4m5 z-ma!Qk{JOQW0%c23}aT2yo4p1Xx<^$&995DgRTF&nmlIQICRD&dHLgb(i}eL*3lNj zfq$>puv7T6u(?4)E0P=x@P$QkLd#GFp(JF}L|)%n?MADEfLR#W&Jx1`1#n&yvCCX0 z`%_X`F9pdP0@2RMd1`85#mP}iDzC1LQRn#WYiE&95xGVKqiCl%r5IvVT6Ad|`Rn)Hv+{5!%u_J#*+deAwYh8NaP+1{5lLf2uORkZjmbUM~qmRN>oHe&Q#9mlKB) zyG*2`T!e`elZ+WUF5ubu!$o=U@s^ozm;!2rTH+(l# zdieT`F7?0uR-gy3Rv$=&R(3}X15&N%gGk`ER~w;0_m8?ql=oZfVtifZ&w&551@TMg ze@($4%*_ia#&OdL)@%qlL4I$tkw>MCrQGo|uyU$a{>%RJZR@7@{w63rXyo=ds$I`8 zbf&P=Pdtm%TWYq?q8Q{aop3#gwu!v(7a4XtLBuUGsp6ktZnw70{BZQDbGblHzxC6q zJNTt<*R*76vx)PlmWA9^wVN5&M#M9X)Zh*@*)mZUTz#TrsVD3UyGB)OPg~f4mzd^_ zUuklWC0%D{2s0sQ?2cN~yUU6rSs(Tnm<{-VrYc$~5K1WpO*PDGt z5T|(i1(~zySI|p@YZ;9O%9?(uLEB{Eu8Z?ryMQo7PgczfzhWY7W)s5okJDu3L(dni zT%VdvGrdeWUh+nNygRzq{c7{EuC=F?6pb3|)YBLEMfMPI8A&*gKjHrLcY1W4PftR+ zrf8;BJaY*EX-U4qb)xy9*Yk4~!IhXcTBS5#_ zzUKQ)_OSANN2AnmHN$?V*~C`Wg*r{MlaCfOb8%#H*u1`Mg_YTFKxW=n3UACucCck! zT2y4nn~!n(0g9@OJbrCIR~Ikf>rx!S=mGl-uW+bts@QwvYuBQwB6Uu6FS^0CfaR{J zXq-^Z_3nK3oykhnbh+7SP>@6UHt^5$tAhX8J=?#><#RRnI5jpMnne(uHO@u%zYk=B zs1KCUKSgrU%aObip@c9^K_0qFl?zPWV9RXbH#Z@Q$AIKVUu+wLs4Y1xQl==sO@?~- zU%t+w(i^s2nsPqrIelC|$j3$KGA9RuC_Xf=2#4ItkzV@aMd8=~F=U3`fZK$ZFnhRa z7V5j|7tdzfNT>J3jd^dNRn0G|lwz22Tj!4lT7Y|Oe=|FmleOu!ujb_jX_*oq_D#|~ugEcy^jEgLx68~mz&=l6#(r$izGq|Xzv1AJuhKO| zA>UG83jU3wJEO-xV?Dp_931B4XEG;f_r=34(?wXrq0~7Hg_$`Jrg0em2*D?ko{)UX zMAZzb#MtMC3}~VL4Bk@`uA+`GNj(=UPZ2d?GG%|M!(F)pFGbBhQ+#gUNCl3X1v!>x zzft|ugV6P~(dgG%&~mAHh=ESY0g_dBUS=Q6A5iF^QrZY}=`j8T!ap2aUQs*awfagQ zr5z)l;h8H5GE#U4uw1zlD2tRMMS~sZBFs*Li=(uv8Be%QmnuOniiF9MyG*q}crLM& za4W4vRd-7^E&hlXD0FO=tA-60b}r^Y`_6L88kw2~n;P&ZD|U~N7?7zD zLFPkatm-b1C>l*9uo0yILe&SslCiypw8xKgwoHV7^$bwBpKbUDf2_kNN3IRGK8Fpf z2>Dt1F8J7CQuM&#q?f0ovEo^Nmi=E{>Lo*yvzN0nh^|+h**Vu?+-=hasvShKqgQDj z18%tt12-KdkNWBwpg-hafyZTLE0V?j3~wy&-0zI}#gzD=U7M zbDXG$hn&oAl*FzWrTQXDni)H`-0|u&@lKULi^XKSO*lkm#N{&dUqvu1PXuOj%f@Ax z*A6-_|2t4G$cCfAvxAuM#tF-{1`qoY?5pWbqma~r5wWzXqdK1OLujx`@#M8r3k?l# zxX!2nUJ~KfUVT6v-)|Qee6}{q^dr}iqIu|X!l^{9rf_U1;%FwJ0wb^F*wd{V#I)Ml z7`tCU$PI#iw_o)@=JgF2PY#a^E6UErM%sRM6(qehduxt3nNcj4LzN(pUw3{m!y8kr}CI4MjHlK#oC>=>a{`Zu% zj$O7xpzq9R!uG+c`*_17O~)8*TioMnhM=$YQWzTE-|Wa@96UA|-_;~TTyCoghy6mF z6@Q>vRa0@Mhffx@;;GLIowH6GAL}2`a2rjc z|H;Pb-vZO(HnV-+>D}CXOkB87(naAa)l8b)4&Gjst`%uX$Kh3WEAL=rh1~*o-`H{{*;@UA$+ZpC>+UgxA zXnAeUqH9t+6L#{`Co!c(5?}jGQIx2BnptOaQ}sEuXUmkK#gFfToFWG1`~!Z&vzxm7 zZkApf8gDGZ>JqKeFbwL+eF8IArS>_4gEk}Rm6>bz%38uC>eBt9H&{!nUw7rd7S!mj zTido9v|f%G%?ehJRtY?P{E#0#gc2E6F7+3$++C=X^meeRbHpwGUFm~h#7#n=qsi$> zw6v(COR)d>U&W~}9_7kALlf{pQ$ty{CrNEoJY;iil1Jy7bQK?BR4y{9j3AWy)|#iU z9X{3#wszol({2Z<`@#3#M4(g4Mw}AZ&(S#XqkwKesk3!U)A?9@lRR$aTF;91j}FXAbcT#! zUGo(6+vPkPCAWBq`u{uI{y#fZg|Yif z=3n`eA6B*2Qo3A!f1CZmsGe0p9ho$$l(JWQ=zmf6-qCFT@!z+t_G;}}L0h|O@1m&H zezirFv^85JYQ&5fRaKjonz6N2Td5g)me`xvf*>|Y#2vr;-1oWvxvz6w|2obg$;s#Q zdB0xI$MeCwBxGQ)60t^2dQaXDvA{U_1o1a#miT2qN~3>tU^-t%d4f|n&nZj$4JyK< zZv`X;`v56%_V@dZ{}dBc{7jn3B6^JvJ)c=Go~%L`>~A7B4+GyVv>=nvB1<=N@FVfT zG>I?Xdnj0GHL)5z@1ilKOs@C-XYGCxpEU)A&s?TUxeh$@soI53 zDrGvulc$`+5bSfyn^5c+OsYX;h`Liz#qWXE&}=ZD2EWNe+BDW12o4+(rFy}7y!;D3 zI}of&j!jX~H|6!Bbe`Y4`cb=V?7rhPx>3ZxrCFcqaePt^ZN4tG^)X;NhEMvsU07#n z+4#*yPh@JuIE! zk2>Byp38Or`_e;qCA?vusBF8x|8*%xlZ}l{WLaoO@*8oTt)Tyh?l0fHzNTu8lBwy^ zq2Cs8K)O=neqA8DT4-tuNfb5a!zb~IIW@ImB~sY2kPvQQ5lo55fnL&c+Y2;I%KggJ zsBsf*Q7R%c|90?md?7UpLR&C2A=%93_ZavoG|(Pi8;+)e=DL}EnpkeAI(C?sb9JBH ze|i$z*dtvQTKZhtW>O4HE(H#C%$TkQ1+DUQ5h{zZ8FnFoE^pnpNV4sA+?x)%tC(r$ zt3$U*0j}Rs)13*Jf8OKzPiMIK6bL}^oG-%`nY*Dp?}-1xd2Wy)X6P`@nrv(8YRcs;*^FyHo8V&X_ox z{lr8QWE54m?MzM>KN7m%CG{>}+^=YNs!&1&LBYF^Pm9u+^r25j3?J1>mc!D9K%Tl( zteB+C3UM2)nc7#&^|Jn%8t(>VleHKJ;YD)r>L;^<2M}`8-3vb6xrVSuHt!0Dh@;S% z!C7F2;Y;H}sq>LQI&{FMBmI5pujB5Ey^}oE%RA}5o|s1KWSdWTR%IduNfOv91J z>6}l*`0R(0?6D%zqP{HJ_or%igX;Z-SU(5^qkj%P`xiQN&Aam3x8Vb0+h8MgoS3Zp>=Ox=nfAVhhpd2cEPukK2`_#1bOYAU$)m# zH*qZKKH5!CW}%VkVOnR0rgel-5ltO)roZBd~>O7*L5K2H? zUF2qE^mF;9<#teKLo63w5uTmZnQ{bJUoT#^(& z+wP*~!v{G&yPmZ?&U>LMc;$>q+pcc8o5-a)QNe)<7g*zqvuTq9cd?8sWF%DibTBC1 z3}8x<4DIs1Wx8tbqVS<~$9+IX#d=<^!V@?5_VU$bMt1ed$&kjM=JEl4Gx*6%KtlEx(*P><;=_MR^YL8}wIWq}t=5{X+p$7q-O&BB;BvtJ1d5%elUc+f#7GFKX-z204|FnknQ7Aj9 z_F4|{^@ie*mwUd^Kv8W*_i7q@=H}(GTZdd44rKEukpfIkhNSF=7o|vS>Fw1t?}GAr zm*y%|3>72fOaihwxA38d&+4*Qu3=QR7Jp648cIB{y;>8~R9?fqywm!}xVM98HC-=z zujy!L14tNvTCr-+9z6;cng5^mZh*I+E&MnhWWsSV;ru;HwqB|ATHu-5RZVoC2Iv3N zp9_|5)ZYV~By)I2aNavG^GMMkS1_g(}X8+Lj!LH zyf1JqUd-_&Q#*%kAnF5Mt{;73f~WfIynFwu8i++s$Zf0Ck4yh89((}YoXWT0coNs# zSyG1Z{#hq2r+Bl~_x?JDh@V|Lm;wCZT%rGtIJSewAg8i!CaJ;IJ~oSm!&b+}+)fLw zWSYHd6?EfX!9F9;6=0VxxT9m-wXL{vZewjDg`M}!+_YBhgUuAz^oAMU=*5b(?UTi@ z*lfnu$nux*4))Qp+H`g=IeML@zdsErK2NK)oJmWMH2$}w`lI%$U9-bT?U)c*9;|jQ zo$st}T6>uF{e!E5y-}9ErKbikWIrVCb%KB{9F_Ay`7-(1H>}6;=%gAV&B5>S0+@Q1 zenHPyV7HbGdZb|PbRe)O7KR)y>N_}9Oh1HPWLz6%GXnRU>w0^Lip%GViiVH7RlP#4 zf4okdN@qKjHEjP<{AZG+nQdeMAM%QmN(i>Ov`vIE0XO-JOi97j{5@Vx821mNq3)A* zN()#2oHWdj|Lz3d`&&u6MgxzH4+_~Diiod;&Snka;}CML!HNbJj&FG%mHhly7@wk$ zpB)*geBf5M@FM7u!=MdB^OC3_ed>op<;Sx_2b$QBgO?K1^FE9}hRO(qRW!;i%3{Mz z`>)>fbfioi{zeb#U+_I9z94l0Gc~N&|L`oAKZ5c;xPCb&Zg9ufi*GswL5(eI^&eLA zHD2;FfFX5ZC+!=@9!qG2AV)w{*~|Jo^l@|0MU^9>U62)+9+yYoGa@Cq;*eMwEK3kX-K0wCi_K?C2^<`m& zZMdRW7p28v!v$ai=fGTS4Dpd!k{)dvd3t2Z{<7@5(+zHcmBRkb8nBym8WPq`1*lh$ z=F5zjmv{2Ozm>;}VZra4{#KTZ^yP|oSXd`#Lic7g+NHlxob{2=V&Tdj`BQVXyLWs7 zN!^kR;761rc>l`(EF_-D&Ja+yx(|FW?%LkaN31AbhTvLk$hsNN`X7=OKg#lEK-1X- zNTQJ?BZNg1_4ikkZ#*ZaL}Z6{>000wAIy6f!gOe`>s>qAJkR;J|4&%n+?yEF=YkPS zf^E@@%7J1MT2>YLz8zsclwARlX!Y_CKqD)ys0*>2h0On(5oe9j6XKPH{onUKw*DVx zf>HZ&J`3U52;bT8y@{z~6WCX1HFWMESm5$dU6VWDD!v=5X`T~|M}Wu0b4;pgLRM8O zK0M1f57S(uK~S>O+*U~mam20&;yiACE+{8UqzGt#I$W5eMI*kh`o6bHOThsZ)?yEz zJ!W3IOR`%vASI4`+jy*aQEdA6U8JoU$1qIQN{ z$r&&=2!Bf5QxWiQU9ip(xnp=O5T(uje!)U>4z9v#N_9bJ1%;Sq|BB?ZW1IQMc5C>T zx@c8~IUn0dwv9pKr|dt$395!>_&>&<9x4*DvYv^ATjD9z4;W0d_3eCCVRi~6L$d?e ztPx6ndveJJEtBxyB}L&XeZ1B`)m04Li+?4L`4`a{NoJc1Pro)~X8X`Gi{1(9NhraH}QzS#@WJoHqy z>49R)%Tcd0-{NLi9;DGO@ig~`yDcNzX{5@Ij4gSk zIf^)1iwD})-jiTSGsB~T%0qO5LL-^77JT+<{8Ph-tEiUxJGm2AjL|jaASAo7huBB3LFgZGS}kdq5%4|? z{FPIVc6Q6?O978G(zSAFPN#lApg^++zj^k$L-VsDb7qV~2=s@*r9oi$W@o2v+l3`g zIv=ZQT6<3EX9jcBsU4O@{!u1Zc{4AtMx86dqrcaewAt7FOlUokJ~>LtC&5}p@09O2 z%(NgrQK_|j(#~!08#3Wk=mVFJqeWju3vaoW#)VIiPPAbg2cq|O;GpkX{^8w|NQkgv zc3b4E=}ta;%X!vjDoOKC{08=pR&^~1!+8qC ztxqke1ho_TRs`6uX)5mfhu>N?XK(ASXsj3FLsj zsRl_3t25b+jr&kag}oybh6Cz0X^!2V+ain zQ|G#<{lB$Hi8F?q7C;|8uTv|h2mA2ttXTV{j|+*<@Z;&5=_Zu}_@U`~l{VAK9in2F zZ|&^Se}`)T-KxXwXz4qRcCadMEA+!lPs7C_r&*`IGNM#d?yVHUb2f(F5}@}4F99XwUb)b1?v!(l7p3> zJ9#*KD=JzWPNX|Sf;qh)jov4EgK~&ckf~Kw%?yjTapaoE&knc*ZHNLYtcdk5%;xN& zA^qa{=$bChV=E0;nAMXVq>yxEc2DiwTesY>0i*(pw%EX`$V8m5=p2vm7B;u%?ZlQx z%;K-spVr(_>(KyHYQEDwNdCW~GKrVomgS5CokxlG>b4eCeVy1?>B0K4nAPfn^eNo-Cbh2hPxU`R2VHtZ!u{hC~uK1E7Rvf!(7a-**tes^WuZr%|)H>k)y1c7@6 zW!fD4R@H;3ShqAaR(D6jz!*5AAgl4Wwkn^5(~(*q37Ec)_6x>Fce48tMXXSwJRBr{ zE#9&Mn`*lpN?Se=yu-&btawL>V;Al5wx?K18!l%;4q?9Gc=li8E|y1{(skyY@5Ha? z5%51l6G|un^+Ade?Bc5{(VehP3ezf=<1CXlVKuJFNN%%$O812Z)?sTPY!KODZ}g-x zYlZjvgn3Z1W6JeOE+C2H!D$`RMi3^XdJ)q=QM!V>(<-14l-X=Soo)26?JA8#DXDUv z(v0lQ>@%cCV?Sq0k}M=mT&BCjLU3J4HC)U!{exPl$&z9P9gSa{lh4vSs*14xHNy>8<_j~~yjd?1$popCo#ACLFOS%Rg(5^18AB#>E zwQMwFjZV|6m_MT_F zQVi7PP!-==>$$Hf1?b)*qStR=j1`)5jWG)n z)X*nu@Hq%S*RrQs93zFuZM=(Tj3=*h;Ws%YZEgh-!jZ(;ECc4P#luP5N`4{Bkh$BjPuyF0(nS8&Ok0 zD5O|c_@Mv8SB)c{COU(Qf&05hg0OKfkJ27BNNe%zV&#XPL)B-E($^cHIC;vVO%Z;V z-?-DB|FjHhI7MJ}OfCL?tJBkWl`e)#9(QJu>4!mOZo+pk+9KTlQ+D4?6F zQsRvkPI*DU?bvDl;4(ODXUBt1GU^mE>fBYsT)}(6_t{ma*`@EG_uQR)!l$dgCzQ4< z;Ws$0U}lO?K16eckOqm~s4Ih*{^1T+an|gs%RTY*vu0dYVgcy+bRWrg)qO|~fM7&e zgnCrH&{VaCixg{O*W^S@6&X8Nw>7}~OczR~bO;(fx`{qvvk!9OHaLZy=YzBTTa z;liY(6{^#61giV;#H_)tF4;7TWhx-OL>g?p{m6>r^QMAT-E{BKdH2y6a@Sa-QCC%?DaB=3h(&q2PhPN!y z+V>CgVQQYn-h~Tr?7oHV3}3XrtILbbz{y-gyxzqarUHq#b?6}O3xOiw;H?w1T11qYsk?w7)|L+E z|0u>HXD$`fpJhAgdRJ_qpjP6{$Ka z&vszE+M&UPC}su`TpN^JLasfFpkp3)Y~J}8!cN+f^lbaJz{w5QGB)9+P4+wFOg%Ep zPmYP%%aqo=AXIm1Mrb{cW=yX zvoNn2g{T+ko3`}i5A>+%z8Z*rfA{^DYb6m*80E_17O|F#-KoI#-s7HAes4k{mRH@X zWyt5fXeo5ya5JacUfDDCfXv%4%lod-NwlQk=JDv8-w83QjKjFCVwlvSavA#Bo{?0M zaM;N*69*}BjiLMzDSnHNOQ)`$4C{~Et>ajXF=`kQ(+JTJsp#-Ck8kb{Qu!8ramR>p z4}L{pJzf;i)^w9>Chzm|nbOd!SJt^&Vrx{ij-sl*ZZ_Q_eS79 z8X4a1bJ>+sjju!JA;&_;{Z$lhEPaM1xyK54cgd|Kz&F!FmOg}7#PRNri=+OgFifF@ zt;_lDPdpdv3u)++!O5qpD3|S<*T++J(}hm5em;)oBNSg9!xXODXKnCu-Xoe(WBp5{ zz@dHaX}>-{O+#<=idtoim%S$lwc%b1( zww4p{O~lJXliOe5*;$3lPoVd=ELq#_E187e&t=`CHQ~FuQa&qsq6R;rO^9BZjOaLq zk~yCT!gJ2UluHS5I=#1Web-5uX zwoomwE2om9p4LtcghnEM(i?y4CtQU7N&+$~=ACdaLM+*$ioK$FL-Zfb=VI*i?f(;M1`jn`r*E?BKQ z+(sbq-i*blw;N)19UmL)VXFB#?#Kl7cVRoW(572=Ra&#F%~55#f!6{vL|W&Xsy-I4 zz@*+`QQ_4H&{6rfSK+0_LvTEr1DD<8Jc`H8NGQmKYE%|36$ft@KN_{*`U?PgN_aw; z=@09i-t)ixje6@l)A7{ni#8$J{*4{86|X`IKiyTK$?DHucK_A*!4%g-;ef{)Y`qtQ zeE6KNG@Dx?vZIYpnzpN2Ik^-N4>h%<4;QqzB?AUOA#?Z|vVzHZT5GWxn*F9ZB1mF3 z@aB2)n|<@%HE*p9XU&Dp#@e6zsQ$8To`p_2H{6_3qEb%8+6=bYe1UP!O${@oCUmKy z;GPLA=CflZUP#pG6qR1$zoLsImP{_oT<+mV7#E$zaVh65RtVH*DBed+elbDz=nhh{ zslze)6RFB_&lMhaRUNZ=-mzHS!>;s9u{q7TxvqyJpcH~s>JB}04UwG(C3uOt{gcO7 zc^Xed{`|KeOjIs6=0t;cuele)3>TJ|trjNTlBY`il9%1F3*pJ#?KH#4Gi^F7a6AaUhs>?%(g)}dh4Aul zm^)Qn66Vd9bPKg$InX>$clt%v>eQ~dGx`(&C_D}DFRStG*-1Eg%{?VYR<=}$xG0aN zJId1FCoM{>V$xZk`J`6<$;>t5zghTl=(m>*Cf$Jrh}y2Hp9OLD2q)+E)`()Kd!DtVDT_sUya!qa1fG7;lHlxu_T5WZ{LHlr^wB1wxnXWS$OX*|ck5ZB(?8s(@bYIs zU91$9%KH1S(t*}(126wLZpNi{kWN2m|EMHyyC?DLZ_e=gZ#h#Yl_vh7skFg%J-T!Y zJAF4g@|?4#oM=5dUXHFXnoWJrpj;#S@cpRJEIBp4;==Cc0gy`F=7h(5I58T^SHc}> zMi12|<8I<*t4|g7_nR6>7Js+VtaxMvXVN9}Q9&1$3)P`VzgWuHYZKGPoq7*jDA1{P z5822*7+8Gj>+H*w6BoBpX1;$MP@^Y``eL*0lJ?mm&B4>>H*qr<-?v?Mj`1AYaZ=cN zTTN$w^-s=>F3pOQt>T9Jm&Xzsl`?Aq6aBXaw+;R})p>>{ym1?bWgQ&84n%F86640V zX!ef6snI?42URb_uD;|{(aBmmL1{8M1Opi4Z@fh62Cn8HoaWBaC%zLLZ{uH6^_K;4a5MrZeSA_FcZBcIT~X54Yu@WsU5{wG z%Y?BYv7<_LwD$TSh2(wczP!To1tb%OKg9Sl*pHJs)x3}z$ca$7|2b;tu8!C+Z!9I7 zXz8nb{SGZbuIxKz*`Zi~b}qE`e=gV~ustPmrD__Fi0BpuvUOBlCk;ZZln(bH>X{^ZSy|bq&YI{9x!Eca?6|zM|2;@Xoa?eq|KOdObXtCW>y%8|T6?xpsTnug&XvtyQnF!_^{v<^P&8_5rwri_djAC{`KAhzcW}CJs*3+m)hE(Uh;KNxAbgWW%xyTfLe}Vfp&o_eC4y z+5K);esYsxjH$Zp7cXvh9q>z}i3&zg)a+*@9xGgutqls!mi<9D{@~bJ-Ja;1Hptv=coj~UR<{)8gn}b6 z_BzDfblkW&qJ7M3ws7D1>Af2d;o;zWck`_B%@VIuXsX3Kn4V*-i&ZAT&^mIR7NI{RB=v=u`#TRcItIP(wm_ln+$b>s|Q79xGqoF2|JJ?)}*DP2OKXB?x)iJFa~>Ej~m z@HL>-c>$i-r>Ip_lNijbYF0bkob6Bd|8xOl#g~?&+hvr;vJcGWyZ~u0+z)B!g{lsm?V+$={r4AyEQXf zKJ!&lDOWx~G(ooZeWpO?qr|8WDj6rW2>V3B=q;s!rauFTKIiYEd2u{8yspC8IEGC9 z3x-7-)RYV^XHPqrJaFuk2NUtTk_P**Wt!eITJ)XKr;{E_&4~kzol!Fdhxts|0f9kf zH&vDDNWTatY@DcTLQ8&R)kT^AlMMT4w>JY{oy2*!WvF6S%(g*;0*GJK{K^FT#}>e)SaJHV`x=Z$khuip_FC{|QX@)-0@9waWrKdC6_4N%{1o`%bgF%DJVb%D^WX?3!ymC^6+QIWArDsx{Eru+R9b z_fHm1G0NbXFUwDk|B+gOQs0n`Y z$tA<$?9~K%_Q2Edi(+#W??ld2lZUeyhf)P+n7vsyG#K#d@vNCvwFMYH8??@Ye3y-6 zCV#4AEHC}Iera%^lCzy4Nu4f@KbgwdL0&CRyAf<;m;Sl1>y2*tCuU+x;OAblebaNl zA%qCWo*~ObaVk?9RIyZi*3B>|ICg`%+xs^FV6D5n+`|vzhpK>c$}?L!T@(B%0na(HV~N8!&jImO4ihi1J+kbmPmQPLLuEQi4|-3ZpN&0MbLHl z({x{uxr9eW>BYtwl(Q)VFJnYpK76zp7I`(*P^Hdm(D=K!>~|dB3^g&nKl<%y&_a`g z_0gIff_CBAGTBw<#!}ax_T0?{!U^JV=2I8nCf!Bm=*Z!*=`FzQ)X?GggRkQ(~+s{{egalXsZ(h;_ znMN@=&Om)MI2BgwQD=L%nUYPCQW`iM|xYOf@kwrWBAhrDdmX?xyZYTMj!F&wG!Y`YY8z6`oNS z{hD*X9X3lrO;f>2>{{BCzB-gPy1bt7?uNF(THc6*rc4a&!?sBX#A)%>nNc(NBEyKe zz+OKKevtuJ1|%mBg(b+!(e}$xCO315@buK$vEIJ}g z+b;a(d@M0(1-hzPB18mM^G;P4IKem6K0Kr;Sx1$2G&$|l%-7PiZl7n6HFP%*NJ2Z- z<+dp04Xw*&B(8bmTH0b%u~?C#d+0gmR(Fe#03~{)DTG>xz5yxx-CO+lp6QRkZt=!f z$*OL%%acey^*a@>xagvZhS_vOL4EI!jO0~^*J_9^+vZ(2koY-cyJ5&S^s@Zw54x%E zQBl@+!}(7W5maEoNBW@!it`>Fxghw7T({u^;{4$3ivRI!8~J5li-Z3ZnptlOa8a?o z)+%Ls&2RUU$#l5FTX-6;=7?{%9unp^aQ(! zzM1~sTg1)Qhc>%9He+)29RE)Iun#n)Rzb7UyO>76Q!!5HxkoqWsu@qr2$=jqS#mf% zCn&Y#>XB+yoFgM*Np6@u!w5Rp>a-?p@Hn?TJ0E^^p?S60j=X*`KFf6~b6N_3t3=^O zr@)jZn(nLX;N4sCL$1GE)?-dS%_XLJJ^xdC1<*P5m-4xP04tTl9%){?>N&2^n)t}8 zC*3}fug~6%h_Y{EYVzZX@AA|v0Cvh7lR-L z7*Y2Whl*ZfMHDawzF=p}^?GkYN(ow~Jk+%6H&C?&DrwD@8f#C$K z4Sz)-PHgTgbmTH%qnVN@@Kl)W&z0R$Wg#~AH!io!3EM(*ZH}CpgliX#LtK0IA5zBd zZ(p^~E(E|?d>i{!7hsG$a>R*1)x@fKcEL?7qp085pWC%+L>Fw{XQ7N!F8&3Z03O{9 zCbgOA5>{S-A?Ci;b=GBp= zv}a$cOl={|=Z6+vP+(E`z-g&dBbNN|Tkw-O9W-f1KhbA1Qo2VhYYI+~owAHMB_dl* zipxx-r(a^Pwk_Zm{P@!&v7d+HOx>zAp8Zy(>yH}yNbg`r^ygII4Z^W(u4OzN)I~y+A{|&oL4M7!+SSyV6so%v#YraBykId}qH|y>Z!CG{jeVjdt%(9OEy$qO!qG zywnG60nhX!)u|(h;9TS>`jI+gzA(@!q3l3s*pXQ6>GjC#4K}EzwJt5{EOaB)HQJXh zh`j;(tvsl(H;z(ydLzipy-dXh1DUK-t!@9itp1p%W^jL1V39cC@8S?^#NP~-0+yx7 z-ltO}aHS_-{tSwIo7~jXy@_W$sf>sGz8EjoIQg{yM0vl6`dun2?|?q;r`@i`3H0oy z(&RN57cWok_!C02o|Giw{MbFELgHOgrHVRz@UcB99~5_nQ~|)Aw%m+XGqV?hEa+iZjJDS& zxEp4GgoUQp1qMW_5y5fGwWWFwZc%^Pgg9;FrR?7_hIAN9)9A*WG~B+5!1*La!gf^R zrJtwaBt+hJ5*H$ZyR=>*}9SbV3q|(pcZ(i&|>e?q8@2$%jD{tBGtmKnhIx) z8h6RIwn*|MhLkewMn1%@ApF7yf{?D94`DtOzM~?eEZ0yrb2z zy1xe)O%g1)#&2V)EW&!uL5T}4wHImmUR0kcfNlQ^;6tPD zR8;q@uN#rX%aE+>IJ2ga5cFJXC2Z6ieDA)Z6Sm?W7Or{-f6=wKH9*XTnoHdA#4ViN z+N^F$;1goYF85i_%zGm6*R^4ew9JGf!apkt@;Y{vxq?@P?z%H ztyG(r=gjV|m4S37+z9KLOrMQ{A%oyL!PfThXm?&E=1}w89?iId(@o*Tt8W%|PG6@O zcOKa8Gia!>sWf>khkZAexJwsZ@$U>$a4LwtIhJAG+5bm;96qeEYEC zF1w`Pd1Wzo)TtgjBY5MaLNSm$l3D=LR8zW_oL}m{CgfUhFvRKS2v`&NT=lzs>tJrW zr!0v_!G*X-&G4y|=`@#R+%{+WU(k84Rc^{yoDDIqsWxtnk7@pY9`cB-K{x(mxhc`w z?Jg5$PB}z#>cPnt8y{9GcAMF0nsck+b-cBEeIW&!?(xlpJD<1WRQK-q(EP^+_|_&% zwnnjkL(Q6vhKyK8vZ4_LFf$12Jy71-UZ}`PGWIxiLwJQ%{h{P&lOc=X4Kt&le5^Dc zM`XQ&dsUEVCvA1q=OX724l+4P7DEGezdO#)Lb$MbW_yf)sE1XzxXCq=TLEp$G}#B2 z6JfMuDHL~e8v`)9t+}U^6G@6~>*tTCD8}1#Dlz~*elyP>F>j4fd=_&bQ%-hhd(C>> z$5`P(k|vsg6*73NIjo~ekxTRH)*681xnPpugU~0=Nu=-k>5P+P#CoI3&cS&|=Tdd= zRyyoYhLbUohTG?l6D0Waq+jN~Qzdb^ciFAl=8Xw++Ah+dW9-m8Ol-Wo(aSolx4Bop znaxUX1-(jpJXihng#bX_u>W=)%8*DL0WT+jw`RJ43Ll%btsyT=Nkm%w+!aMk58U6Q^DI@&Fd7dO)W6;F_(EXZ_O93$7&$Q!cqCmcRQH!*-$ExACB1im+%3YWsy?-eyYcxM>Jc;v{10V?A~;$Y0}| z&@OgrzN8Vjr@^~S+mj!mZI^fIX1|w?@+wXC5pdj5 z)WBF=r|vhdQJ4UI+un~FW29|Jzt2!-nsY(cZzDYFTlcK{KUFvGt@2&wDmv>&_IPNqqR%^kWKwI zmS$8a4li;1P;vEZV9=vrg~oJztNw#2X*emj0pUgY1*^?j(+;{(0Z{OB4p|mY=2j`~ z_XVU3JXAf&%&tdJlh_+vVt#DWdOUChAihocDpjd^n3v1)T^(y%Ri#5jHL)e`r?<7$ z!_iucX8v|YUQHiF^IaKWDH4UiY=m-tvvRTuhCJSr_ag`28@uUx1wSeRbO&@#^8mkld z>0UWincVLxJ6t%AIM1%_0IfaV(k(5F_ZN@BJ$}eDrVDq zv_$oPCb%*96rtD#e6DEIyj-Nzs0pQg}J~m0jJgQk1QY)`|`5B za#UL!PndX$(1JV`v_9vNmx`uAr`0gYBbn2Onj;Cnm*tu;Y|`KKna(c6wm{yM(%A6s z3&t<8LiuY|*^#Y1O=JwcasHYOhb+UikhvpfZ)fuP3$8ygQ(m+I`B?#`vb|8^vTON) zx1d)~_|@p%{xf^=tzV#OA?vk|Fs)!Vlp}}c=d35SC5w)i{*#LL9T@ebF1{Xrkqk|B z!J2HIdk^)KH@xF@GTZW(RJHg0j$E>;T1)$R&cGV$0(`6JW!k;n|14rkw|O5p6O}s z%8go-GkP69LhY$VbyvuvsHOOo`p3a;q!FH3xT1Xr9PDhz0pjB(XW0V;J zRc%@YR%3hvP=k(zHcoTr65U*$pJ8`U-yy+rFbO#dif`Y#mc{eS)_P(!yR_Tvijw6>Jo&=mrW@`W@tjt}UIDB$L1a{=^o@5~|-E9f<*gN&WjRSE19D3(=U768?s( z_HL8J2Uz3ffs0Ljt?s+Y0@45pM0Dr8R~S583zzg37`yNb___1U8pShF|XgYc&9qJ!$^CeM>r7@ zh`y;&f7Fh@IC?9FzTp?QI{%%7k?g@;nojLhvFza5`paxwzv&Y0%%n_85tY^i_HKs# zj>xajz+QNwaslgF*|()i5^Ik319}_^fvhOWnq`rQf=kQ%24%@i6!&AE@<_)0 zc&5r+9mK~bwZro^D}J@wZ1h&eUl@v(L+OZu+?x&5^}Z)}8NS_@U2aY!~VjJNBatf|(5f zq58;!Su2ui3P|W8BVHT$fVCnjC9H5*(LbgvsdkoBKfAh-Pq|V!wpG4OEezR9rO~GI zx^zirm+tjfwU54Gl{UiUWCdSY?i4rIQ+Ybbl6%tnA{mx%0JXn+2H{CW8HJ*S>{)coPIwM z+3wfXTwHf0Xd792?>~Il_z0(vZ=Am$?}P z+f>`kY(Z?XHx{v)e7-d)}H9G@bV`Iple0FelwJ-b&#aHRi#!u2c zw{(Z=6~0J9oZ(^f6na($!%UO=v>6xyyVs|ojUk>5ti~b+17YAp7s(e`xf*O`b!_Wdp+=oJ-DsL)vUy_6tj_DRPRvu^AKiggNs`J3m z>9%6|xx6Y>(3{dSd*k}pFvt(ooWA?#3F(hxbaz-n-5(bUfS4sA848+R08FUE{b|^H$Fr;^>L4@Nx7ZkqSNGA^;Y*%3PALG&E#cF*u4}Pc z)fWm@L>sK(;a9glJVM(+kClDXLh7on$LL_53hiOd$ZcFB_RQjKwAVzhm*UE`4{klA zbqtn&x4f`YuR0&yZZcS#5WB?nO84cSVNm^nlP}1 z^HEU|R~perHQ z-LK<%?5G*x`ZD`+k~DP6gWQ_3Ty^|gDo#re=vW|A4^p)3^TW0sJmGZkd)_Ji$Knam$l?d5+Q+N9Z%II4iIR$Vf?+xlEpt;`+VE=z z8EK1Ur#e>(h4E&0Mn!xi5U?~)F+07W=}Zw~J}a0|;O!Fg;#>5ax^7O{$}G3TGtzN5 zn)=p&Ge4aAW_v#QkeP{5^~{^!wy85NTH}%-6=n7Xq3pg0A;hmQD! zLNxKgD`;a_)#l%NBh8)EBc1$iwUzh_tO4Snk2gM+$VXbusM*1zxkPX2?h zD5h!Y&iSHph-TS+(R@kxMoe++$SHgKo8!3eT#^-ONZ|$G>oBym*!a;V_8BRFxK@lp z8K-kv!jp-_sL`9{qwjy;V45kSNS-eA=WFMMHEZCZG%7*${)$e8>Dkct z?Kn#F@e<71?Cc`huG?Y=YFd9cs68PM;O6OVg~3@djjKSKm0|Km@P%5@hpZ9|VW3(B zOxv@<{dT+A>cfl<3i4fOX7xahf*x&y#Fyu4M#cbTeRa8Bn*; zewtQEK@dg;K<%+hnKrjZ9ba7{gOkU z649H;NSuMpX_CB}PEA_>iR9isSS%U+K#OJBa(yv9puYj+T=hT;zpbh>GLQ!%#`gK=$|P%h zS9%vsDWSczF1L2+vhhMtjXJwqFF7kp?OS{5k_b2;Ki;8AVTkjKk}?l=m%8ZL)tHi; z*f1V|yTOv`o-N<}zF%*@_P*(DNXSb#a8Od$b4(RIs;xCOk&sjub#EiUPj*UQhfzCQ z7Ao?>cCA;%z5t&T_HjdShy&Et8ZQ~hLo9{_y$2 zs@aw15USt4*Si1W&~MU)e_soE$nU@JMd5{}sVAj@PsH-I8tkmd{bMWF7YUgT3^ucr z8%X^wf+!O*qC(%iy0lv&BzRN?Rja=YK)w3Jj5K`}*3{0+p*7mdCY>lvOS6cb^=&S3OeN9;h-KNsI1jx z9*UZ=afmPfEesi31Ok9tm!-e5yiqJ_wQs!2EqY^K zexzn7?u#6$+_XXdo^w}ae@;aeiQYig9-X`?bWrxAt$oQa8^Y@c=Z;~ZTMi&YQelDf%h$06YX$Vb+)q(pnChy8E;j!MJx8v zEBB0CfIQIu+{WF z9V_omF>e9(v7TP&LD@K-yFc^+k(l-*!vat=-G>;ed84$EW7qPS!*AVgp0a=vV*X0O z_%$$5ZQdic!!A4|)Qv|Wp!tsx+bY<~ce(-0`{1kcmPKjYMPACdUI4PLI(9}-liiz$ z?r)ufk=sl;ptg@NdX^3|%VxFVOaQ!7=@K#Y+IDl$mI!VKUBwSRSff%fhCCItZp!y| zI1SmMf<(QZz-)NYMn96I2&!YzJ?KMaA(PliJ>G!&zh`Drl zk9hiqbF7TEhJsEwS)R|iJ=_5H+B3hr@QrU#J^`(cx&CZJ%mh_iZyV_w66-{k~|& zWqKIh&NGZDn<$E8$#;}oVb@%-CfSy&8X@ntP96zNl|32iV7d9t+ta~Ow4~(mS4B?y zP8ER>z{~!I0@A?Pq8LbigVi9KPKrgI-w0xMakoiasEd$$O!Sq3*=s{*gb5c?a`b8A zY6_xCJCzcMwq{nYbIyu`&`RK7y++2i3q@PPN=%4To!~VG-+% zvwtwJ3iU-q&V5``&MO;_^myz2;n9?suXG}_C+0!@S62Kf%t7_ii^Rz=ZM8jiRCkrv z+#1irnk^>cQ|7ju1#>@8v&Hk|pNPn=5j~Z?li?k}Ry|=*9qd-MJY!MD#*v*fN+Y^s zU@iKQ;?qyI{gORHp#@p)gVsYQ>afd;M1eMURFGm0&-p=D4yr`VZwX9YZjmuigbugY zL9_-_A8D$ZO_QF-_kXvDv{}V(6l*{EswkqRq&76j_Bbc!I$xp;R2jB785p=&1L9tT~v);Hdbu7EYEjG0^=P` z0h~WWxvEA?JTGgLG>TGWTpTS5s})FMymBM^Eogcm%&(p}U$j^zg>BYWj2MB+n&Hi= z#4^G-WeCV8m8UaZ)vBe<_9d*~wyX57U`M1URU1HD(OSB%({GGupH_@K*6&T2)}XmZ zr$A3LB^<3B>leVQ6({w(Bb_4d>PuQoGatQ=Y_rQyVM`RwGL==%>)7?7Tmsta5n-o% zgN7`Oq0=(+X1#(yJ2t5XU8Z@3`?~4CvEO{0<7Q1Je{`);dNsE4D73BUEzsF|RJa4iqM6ZFA)5CNsAi0g)B4Bj zlSc_gFZ7Bs(g<>ppr=Jdvyx)Y#6S*OqfDOi)q?C}1&vgF0CjCrn!hVQBAwzbP0P%3 z5ox|4LMo5drVnYfzAV-%G?ldN;}XvWi2S)az~ZPZk3yD>l^R*gEP_Et?)&uutw!b1 zHcBMrD}>fS8e>(3_R`$KRWu6_Zn+V9?Y3wgAC%vvRKqGI#TP%bT)PrTfN8o1HZ zLioi_&u09bE}Z@xNIKAe==xJhqDfKsgW@Pv(2F2B4|Nve($S0b5$_=CM&2lKsjPnUPxz89 zYTbHfZ8h94ysG7sMfl)dZAkGZ-0Fl{K}kbMX%Ukcx%`%I$6nrgyU`OBlLCF3QK1h# z-}l2CU~_)RJ37xVbfz$)Zq(O!v0eiT4&6;y-w=?l7nB(xDm2J&Ykn%oy;~u)zpYQE z{o2Hp)K{y51u2U?W(t(au@<6GkY7t0g&0n_O0IAW^smB~A~8gTdf%DTWn9E)%Ay}| zvAS=H>o#@NYTSI~g;e1eoAogI$YSe^BjH|(j?EaU?blwd>03$ADnwrZhEULbK{lhkNpVAtlPuILxTFSPy~8eNo>n9+r~?SC6Xo ziCFu~dJjPYvRV!LFR^FgkH zdRU7X6{Us0{cz}!z6Ab?W6Oe4Rq^E(<&e*-Kk_UblrF0kk<8+n-|0vMLCx?5O>^P^;wp8%HLn4W&ikOlsZX$>6q+|9QJ{<7bzUC--QPm=A;2|=+weh zxq7t-O}lhw*=Z9}Me(CLCp(ovR}{?CuEc>+$+l8w?+wE8@cUCFr1O{+s$|FIQ&6oI zX+~d6pyga%#M7#;avI{fld^W4w?NOIw;7f9rZ3ywj#}Td6c+8M$!zK+)p!|>d6J?v zI)(K&-%qg{v_5e20iG6jHqX~sj!S1|7)92;r5K|(UJH=&DGo}PfP;NS4GaTBxCj2% zY~@c6CZ(r*y%;|xkGMek6O(s(Ft*)y!`x9-9HGImnc(N#rW4{F!E6`$WdN zom}={@L2~a8?P^+1SrPvw!A01U^b!g53GJkmKunCTBke9EbTF$=}jusV+{Y(rai&kDtSdQ|x(6THWNen6q+0^|F3h;Cw8gb4#^T8@OwmPk4!Y4! zKY^)|)~2o1ou>L4U%Z17J@SfOc#u~*@_RNND*X*NnoGOmi`Tu~%MEPfN!J79H|h-9 zGWQ_TGgP*FXBmlwLBp~q3&8`3svC7aX^|4Ro6+mft(fOE9s#%yBq64VuhVDs=Ramt z=$4-7`W4BE*C`Bm#^_%+gd?U4kq-dGZex0v6arGr{IduP#3vR`l@%Wc4i-pBoQ$@T zTUbGuh*kWyl9)Rpqhd8RvdsY0WAB8qzp@rjy;39gZmUX0^Z|#dS51Lo?B(S z*l2B3hG{OlN|A!}u_cQdBJXzAnd7in>A^Vge6;wq4e}A9WWsT?>m80V$ai7v-cokJ1>{-Z($^Tkt+6n z3mqKV@XV2-8_Z{Kn4-UxNaSR!mriXoqgJ7?!}aO6bQYRA=knM`PG0OWZhcBNhCbjj zBPGVz`xBO)KlVzMUuz-k;ryUUSX&jW z=MMLs4JwdGfFEReFz{+GOB(Q|Dd)YbQzoMhVTIxwyB?-5McrR|Q0N6y5O*+b`xO~k zC=;Zu;BW&1d8N-0{*^wwt_DrWt5uSy9Y8!LU6gWf$Ns(naGo^jz_un%oh|#sk42@% z$6a<-{Jbm7@yk@O;L_kyy|Ly5P$Kus()%uTbbB9N^x~=O)_!`dpKG!u9tyQf3$)1Z zgUIm9+S<<-`{1H-O%SgMGJ2JZ9M$?3Ymx+`Sx>j`UH&cUD4Fb(8r(1Z^Y~d z*nJ`j;7;|G#psN6i#+b5ia_yAU)8Y@*!&{5o6tAV8pFm{b8|NyIjcW^R4q^{#iU02 zTC>R7BapAt)emCje70LwP`)+OA0UUzyeqrXp(qiBp<=iYeLyN$>yKTD4@8)r9mf=` z0*G%$t!5-mO{}DZ2D&&wBv&+h6AadDy*X`^NQ{zO)g#hq*J9iR^OeZCY7Xx*uALkuQ!S zy9!!K4vzquCQ4?3ybvIa8X}aE=I0ia9mE`v>Yp=tcAj1xKCFG+;qm2^If9{83&QGq zLQoO%Sxg}5B34;6P-jJ)j1mD36)?73bV$dG;7~obqgjb@k^+WFSUyAvqQ9XctED@T zRm2e{*cZRB%1i-+w(H`X_gp%7Rm4MZ&PwWBF9AYK=>CP4MK zobq#D9)pwxk@ln{ixZ?eo;^ZZx45{w@qsjPr1nS}L#hki0k{SYJ%s8bKkb z59?RAztpR$W-wWbplX&4!M;_S?K-%ZM@Cll+?>*6=!YiyOLveH5btPQnBqZ&Cs z#mxi;4B85cgVMT|DLQMKxMO7Du9O*)(|qD3aF9s!lO(v2Uch21fwjF8a-+{a2iMRc z_rayduU~qXn{heQeYDPZl$bHsLVU|_6e(ou-Iyr{zVKBFTuC)E4vuLnB;91rsAb^% zWqDzydb5{DELpybcA;-pawe6RN49+dA}4E0q+SwqNGXBCCz8;#>QZGAdsekxRnS}s z$hB_Ze-Qx8JA*;-+6jn!DD1pZBfge!z--LSb!}29<`|R#4VM{?3&q#4!vZ?!s+_>Z z54y$FPR&wib0kVXK_`DPUdB~e9AwsnU*T@AfMdm{dW~%yONFE8zBAq+j&}>(3}T~G zl3HhW_%n*+uNk3wFJSSj>ghwFovEe5W9OI&sD>QNK|%wtv}W={TOqOQLuCgOd0PcM zLVa8Q2zgr+9biISxK?-|Lc@%-NzVx<4Ei-=7HeRwvy`C_Rs(K~xT~?iTxlW}F^FKF zyAeL-Gxy-}*wt*fn~t|MK%ccvYb`3ND`dp#Fk(ANB%i(qY21axEbVq)+j7^^*qLnY zfW?P8xF;ECiU!zvJq^*9vewWuL^Q9q1J{bj4}H~zqi;y%*=#OG=77u$v@h#a92jEn zkoHBXzm?+5>DRvrZO-&!&&3(fiZlp(I@FmM=eJOh2U!v*ho(@OGzx4AhVhy%I?bcN zyts87{=<5N9P7BHjd@>*>J}oe?1ZyGU|!Rp2vLAV#X5lpu9kS?T6l2Bpy5vE&^Bg_6eFg@hMG7g zIWJ#E7=U?Rs_6+vnO7V^wy10YH0D}paUE@Hv?0g(wF|;y!gE8`@6lDQJ8)5Hpf3DH ze0&#uRuPdQf8e5Bq00N+jJCH+i{2Qcs3-NsQ&~}XzrLY-SR^h&eVZ2!u5)}0PN>RX z+li*tt1eEo2uo{K8B)krB&J#3HSode&n`oVxhSm-EDxVJn(MEM=|;<9K0(hyK}nSL zoFxmLCJb=USv9`2?iA`WF$KNJC8v5DwVdukD=Z{iQf6>S{t_s#5b;QJZQuvG*gPO) zq_KEKEND%v{*@nm^iQIao!4>@)0kTT1s1Jo+T|86f>{Pq&0uz~BFAKKpxO`6rH1V7 z?mX?+F=V2?)9XQ;ClZAlA4GR99{L?0R#$NZ?qNsf5km!R;>N~b7}0jVe3boBu}1_y z8QPZ86%*DF8PC{-ekJvAx#o46cmEA3$l5P4KSxeZb-{o3d|4gg00m- zU}^>?!nN^wJnBMhoR9MT&wcVxJY+}~1DGDfc*GsjG_&H4)B!9~#Fi>%IdZZo zm!yQeCATAWP9qDpm4z7hbI+zcYPk%)YOc+b7+lArG{OPSDdt2P!j4NMDfVz&0Mw-A z;xYm(XT98=Z~|;Y6dl?lHTBe+@aXC%7yps+v*DM+Qh8vtf#mw?a7EaJ(5OFVHcL8; zifNBAQ9aLBF7nWAf+`t2*y*w1T$)BI{jy;iqh_0p)=@DVsL`k$ zqYq8w6rU6fIEG@F$cuWXKlc6R`BAlQy#O|@hB>pc!z?&zeP3rjoljE*^*Ccf`$WK^ z*p|lB8AQvLF2Eb_SoAuU+b%YlyG=l|e3!o;YKd%{5$PzfrPmGmR&d5vIAf;F)Y^O4 z=g9%@sEd++1ZlTwy_Pyp2D7nXA25Gzv%%~i&1*s&S0GO~;_Q}4yZ(&P=-wE|W}YIq zh61J??Scl$%epHWcqgl+0eBg&#fY@Plm(X#%(g^^cEGFE;g?w|f=hX4OPM8IC&VDn zN_6d*+EdOMk?#u|>&y^7@aM!*H*+w2(W*YcU`BHgq2^(4zCa%9R=VUu@C*g6Uc;)= zxJ`n9ZpOPubd%H~yX$XNo?k;;AH(JxRhV+es+1l3hD37>W>M((;pa zReVNY7ApHOx>fNtMp9QhgJj#4nI`nQjU(RkdDyhXRpUR2b9J>U2Hfz@JNl9Y`FTUpajuqUDATgHGqfhwil-bFU6)s-V*D3qR zd)aIFBWsW;8OV#qwyddFf)b+?FP@Aof8_lK-Ayv1`V^c7YxQj= zec5m$;PSHp?k%TZqDfy0F@IiMzh0l-8Oy{tcEX!i!t0rP zXyAq$PxC5#34MU!V#>Gs9~&(L;PpxvqMe_kcRNTtnW!?-GeX+F>)`OL*NjgzvNYFe zLSfUw+T%;*_ZAK%rRYK1Trmep)Y*7guZFaW*WvOFdpN-B_xkonW;%?@TTnzv3L!$4 zQm3!9iYF+qkwC|N8&sZYS2!<5U!#v=Hr*0MX_J$b)f82+#Qk32nV(Ka6^>0KDSv(TK&EYY}vjgy)*nb|M_v}Xg+ITS&%i_drs!Y zEk3~Pfs5ktNzi^i8v!h1>5x*$lpH$Wi$7t%e>zyu^3G)E|BD5{_u*~pvm>qNE^R&$+5OyGy6&;m?ohsW{I+Hffda33 zg^Y$;V--Llc`uU`CyZoh8@E+3)4^Dza5(OQlwMt z13~vPy%^D7NZkYcmkRx6@*>L_1`9XzCHFmqO?T)VloC_q#~TBXow&6Je-5Yw3oikLr8*`|V+J8~Fi)_T9I=6<6`aR6KeN6vzqM~@pi+= zUAElYe$B}5Mt7>I4(S{WK31wabI*BnTaERP-6G_TSPVk}KvZTTkcNI6vw>v$LYtz{ zs}X6_EgsL~hjxjZqzfc5cOxG=UTsNhe*3!swr(GpC=f+RrOt}$$lZC)aQt#Gc!`iL zaG(YsdMGtCkGU#B&^lQi>iPbVt5Efvf%s&LQl=2)VeQ7R(id49HwCe1ciU%+B~P}M zE;XA?Ig-l^y!zBh?;SS9raeoplKX05t$E9mLtnJ#t^tD)k+>~OMvT?itRT{jz3Yys znuYsAPI>Jfl5(QrTAIKdbAP~H*jr%hbpsQfk+p|*P;|vY0q$`|QPjqF)goEw=Th8w z+2=JMjIhs-?W&XEnj3FsDTK$2y^#02Syzxx2cxdxd!9dfym{9B1H1WWF20rTw3n=2 zdJgea#-Y*_8W{ABq>4Hd`&!#}LH%+MYGt?vjrH$2fyCZ+@-wPVdlYcr%l#Co1lP!+ zfL92oCAy;l_Md(xYED z?>ZvhbWeRIygwLT_Js3(tr(dJg9pk#f2PW*y@PkINfcu+bO6}R1=T^d-vJ9h@**l7 zXYz$SI=MSFf1Q{G@hyoIm5D&wZDH|x6Gg_9>b>Y@jr&wpqv?U=VZH$$1O0_1DD8Xh zZ;$0K#kFrS_It3hCc`A_8OI_76{k17qJ?-zdI({R)t-<|=~xIpZn;*X{swvT?L_Ji z-zeGU%?(Fu`#$VkizhjsY&|8meo{=huWmrGC^l?13DunkxQ}Soa8rzpFer*Ja1UQ{ zKhT#`B|nodQ?Hcw+-eJ_EIipaloVi7ZMp5(&%1?XW!+Vf=2WnJ}?y9)F(f553QXZh9-~YA@J+(D;}I+Y_+$h<5u9 zSzTXzN);z~Avb~p4h4x5AY+a?9bFu@0dlr7#UX&P& ziMij|@`lH<1}H6+LVnYJM!*dIx^uB7dT~p}ImYIzA-ZGJFowDPmXqIHbLBW<)^Dk| zVGpm@Wa?90cQL@i&O@u%?pO4oIpB1=%!_uPEYNy1Koej$sWjYkki}1mAl?l{Mt(Y+pXKJ@(15--n)dq7%iJBP?T5*&YVTw!Fu{0|h|%lJe_Kmbd_mQ~mMFlZ1RG*V6|%%iNp$zW(S z{bjLTjUPx@drg)Ca0}*FLrDdGr=~bYs~0lL&C|w~2DUkO>+^fQ{$yFX1j6gpxIj{E zS?$cgp-9wM?*#*1-pEilQ^Mb0$e*4|g*>EuIjN||cs<+F73l0e^hMB5An@={ZTiR{ zyHgM_;@*&zwy!FDllW-h=)PFF|Jp9t`yTTrK}mQv6FOF1_a^nGhN{xV+BKEi3F^xK zXg^^edF1fEN(6_wj8Y4hT^uN04EbZgLRs`eNt00Ui81zKu|3~qe)oN!j%2fm7!FaW z4HXoV`DgHjkcZ`>pQSTzjlb7Dib?7`XQ7AY3*z5Zka(3pddQ2LR~jP&5K2Ar`ut&= z)jwEbyHw4aILFM5Y3~(=;;*__m+33T=$2Mzi&s>Z2ePi(9zUpTK0fZ0ovZ-<{_gm@ zOMqQ6NICy|MC;D%5<>hd!hz|d{z$Wxf&&L0%Y;W~TP}jH)SYy;;^Swu8ibq`Go{Iu zI#;TwL{zJEVJc7Fc)ie^?h>;lx^25!S5XzS&T1bu>kkvIwxi{cc&gXP2(#Sqw#mK5 z3|k?m2+TQN(luM1`Nr(Ye?ZP&)(F=|+TXz#|*@J{gVpnp@ zvl$zqLGc!9t&h2*1|o{ojfC4Ol(_R)2}7Pz_rveY4_FJU19%)yzF-ONYM9Q*a0SGD z*(v7RZLyg(&spZILG_<_J&J7PpXop*jR2T1~HLqX}lU5-D*<} zd5LxDa2)iC7jFIO(#t7&WD!1A#6%yE%(W7Rrj;5gr!VLXHJx~yI&I_rOrOBV^{_hR zD>?8U#y%|(6P?N?(4K`iGozS9*n9AmguH8~i9~s{8P|(b`L($+S$1JOcbp0zE530 zJyXd{5f(4A7SF2>P7M!zlaGu)fsuQ=*^Qj5SeELnEAEgXdqsvaz49?@hcj-_XRBec z+n*F%dQjyy@E(&W@gav%!|y#?<;xjebzS0}CugFE;~9f0gR!2%9tLr2$iZ)s&Pk!m-#T?y3m4tb8I1CUTjn$eqFXh;;ITeh%#RbcVR2 z3F1yhdsoM^rJo6#&Kw@rqxjWwvH=mt>#`*>NIMwXqeFKjcoZab5Om*woRho)(4lJ< zbd>mX5PRx=o0oh)xcn*-u^yo!A~BZ>sZ=AxIv&i`p7=tev@EX>G{;D%OW)w546CJl zNBj^L#oov?o#FHGsp(Z0_gNf-ZCn!uMyW*{BNo(BOX^dsRNdXth;1De@#Ti1S{jo! zf2EiTt%3__>Zkm{cUB3?H`dYEB?;vfe|oxlKd#rFde@w?hX%}Gv%k^iL!dfq{3VOv zx*W#$^b$f|EhR$r>;^?bN3C&o!FIkt8}7I_<8=^ePtUL&Ay+l zyc_am`ch5Sr&rQMxjonUvHJqc{=D-EGakmT`^RS9@|xI)o@z)|PH#9z?h`ETY*U^c z_G$kiTT$tNV^PR+<+YYMk3a%42VHWa-JGPOaYU0sw&j4|Da+@c3Zwg7kM%!wtL}Fx z02M9N_p@FMidMOv#~Z~JMLFwNe$=xSrQU0^Y(?JOyE#Q}IGexl0BbpDWm$RG2`?#k z@#8%|TIJmZKw;1&ZQR$0H`6zyR4Se%KS`6t)Y6`)Y{NA#@fc(@Tm5Q;hT`caC?VgE zaakhK_p)}Jvdulk&`*GR~aOp9^@FYIrPMQv`{1k9N>(Q9u zlW4c;=)ddfDd`&_NHj=zJ4su_Q~>SD=V&*1eB#9x!mI3p#(G|i|WTW)9y&180N z4p5RY1=Mf8mg}u4hx&kFW@z{U_cKCGCHS+Vc2bJD2Ev4z){#Sf#N$(J77#N=4K3r&LUGcspuo7}5Ka8#osp zX7({Q0%5rRD$Z>^sj4AWjIZ)Snb);Z%YkzNp!4IlowGQrWY#jN-`bBOkCX5t;YR|A zZ)dS7U?30Xxep+}JO(1q>g{{o)O&a+ATN#h{Z~5fOITHGc~y*whAnl-7tphHQS0!xcbq0yXehv%j_A~ z`t~n+o0bn?VZIlMCc^_|-*UF0mpBG?G&~k4KmYODMpazhWjkb?^9IEsxl5XOeXwJ} z+F8+=(f%vtkU@1uf^n-Q%dIqHnqA$0QKq2lg}TcnUzGVDv9?WAOLk3=IFu1y8E=V^3_tdCD2Px zG6;V0R?|AwyNJXL4tlL=kH~d%YtP$s;#(91N>oNjmb`E%3Ty1R2VQWnx=YN+CA8;c zxH&x)B6r^Fnp$`oSjwrP4*c+hG{iy7A`+g;2szkPMAi@N!D+w#6++!1$AdPrpP1X= z8;>{ESY~2)Y#=h)-yE$GLfW=VFEHIOtc|K{5YnwL7pr%0>v=`s)*j5_4UM+D2ZHhU z&j@XpS3*S3h?C)*2db*7V_sI&c(85v2-3l^aw1Ao^rNZ5{@}wFe+Jw5fp`oC9oLc* zQv*%v)7WwDRekl#wWwMcry9o)v+dXF7jF3UFCt0*b;(}-=;6obUV@t69 zVB6G;l`*eOz}T4yc@18Kn|WVsuJpE9jQT&?Nd9%G%6?|QMW2JiHcpi^0^;Fm=~3s6 zgX(xZm{xUD7pnYezNJtb-ZXCMaQED98`L_wV+xdahj;AI952)RBE?lzNQ_Ru%4;D&-P-(=l&8>!7_y>YK z3goIX=4np-Rf?#De#Gt(0rbOFi>}5R|BD8I|GFe66TAa5k8@768355qK|xc81VbKN z*nN>lar(l0z|zI{yEL`&!87$4Bg=nL8}`30Xoy2%lzNBOygM#_)%C}2r$RsYV9*1C21{*DB)w=?W=qLf!jz9Ewhq3gT zGop1O_8$)xOx9d!sI28>22P1cm6W5_wrrsk{Au6*N4PrQ z#biAZ?W#2u@?ZYv=eSp!j)S&PkT?E`xpJblmx13&sY;&CL4?*t)W%=U@(5)XRRAt$ z4G~x*q;Gz6@ddvu`NcAP;<0`x`0x;VfBz)=e6&_Y0KUi;-@wF| z@``2|)6cmay4`9+P_#B}t_1aYRGds7cF7PRSNCpccQ@@Z^}ujw%MPmx>z@)EvWxoe zwI{6W*&pS5AM*LNN#|dLRCPmsD#xXp;B^q)}Da({#vm^QwBRVM7; z?H#{)@cpIUTD7%-M+Cmirz3Z{K=)&;kw$^~TxRHiyYBCWi&FD{x9;)Od@PlGD9{*6 z=u4KjLi&K;Yi@5%rEq9OFtp&=!jZpGxS|iQNDA2~9!u0{$V2c~TGO{i8lkBC9qqGY z)VyfebI^Gtw+B|2(F*wRM6TB*Fu}3t@^ij0@n1 zq;1;lM3~g_I$&!&w4UTN$e$Vfk-a27w)%E9M-lEu=UIPA!fC|TgiYh#yxFe97V-R$ z7deC}&sJE;bft4P&9{N3se>@#*s!)eTV4=n)~GBfi9y_+r_2(xiJ-yR?qitV<=DTw zX~IomX8kX-x$FcVPiHLXceeBiiD)LL zznQ*uLS)A9)Pr3`i1qF`33bp&O?kNi59Tstkm(c5xLZI|Opk<@q z-niVY2J1kA2FKR6XKR4cJ2hw;%bLK6#Z(Y^Wx>?s->=yJyRGZKVUxJzh3^+dXJpju zpN6RG{9DtezTaZiRde#)`8twHTpCF=!F10hS$?D)A3||7h|8%zz~uPo+qnbY=Qg_@ zy{GO{eRRhZ6(;>Y{x`bycMIEJKP^ht;C*{12C}|H~IG4EZZ`gXG<0 zEB>t``M>4)-#z(uB3Q25?#jj`wSOo0zuw>cx6bY5kMK00I=lGy|9A2zd$u!Fzq<3r z|1Zb-ugvH_`-bXUJc$o}LY@QuJGK0GOZPt&QqzZ>p*pUY5%O;qnE#dl{`SoSM|UJ{ zNciyWKh*U9i?{vH!kPMB{+KowhsE+soX@6`6$2y+JzO|_}dHr!aO!zmO10f`YtHt?ol_N zJInJ2p3d|tH2V9y5A(c79@|+8FRtV_FLZzZj#W}RyL;Ph3LA+lMvWy4s2;o8?j~z! zU%XkcL)xdhS4rWj=v_kj{-5L$IEUArUqySLx0m<1qTpR5vMrXENbCb)RSk?U+Iyna z<7}881Y7}C1=moLFschFe4+0!KP-;iQ z19{)%CagaFv2*W^mq{rsDd-@aZ_=;mA%ZcD#Qse8IPef}Sj21!cH%|AJtA7Gx@2!g z5)b=I9oJ3zc-yLWp|I!_n($*HD@vnKows-2i39lbcwGoRY;k~ZDFHX;J7_~>_VYek zrp_z!P2u@@z)K%eHH&Wp=+&|lpXah_h`{k>I*XST}oBi^;X6@+&2s3QrzZy6dQM!wM< zHMa=7;jd?X5|r?HNDsKuFdf7T2m3gGX4R~m38J5Y#6g=J%1#KiRr7>O6yHs6#05tV zjsQFTq0qjU3&;4Z_D`2UI}DSbd+%Ge*IDzzu%1?e;PYsWM> zJer1n>zCgJY%&&h%Y{imET}t(2I`FISo0B&R@c)TNnNm9s9JQ`ev7hao@fCOFLw?! z(wNUKiLN+v(XHj|;f#8%x`Dm&!bMIopKDuI&njJ#Xwu7r8~fu&u$OQgofT9j9}JZA7NZ zcaZHyT>^NRx&Y9oC>#ygPWA3|>u4?uB=n^ZL^2TDoW+zN9z_4}SE+~3&dy4)zf1WbSI+K| zwEll6d+(?u;5TlxOtZ4I($qpFv(z$o;Regf%#}IIy(>{t%!yc;TJAk^U|CwZcP`LW z+p9=4Q=r|3IooyOOIa?y{c$+tdw2kG4Bf> zZT=B0;o<>S^8HHjcm6N4q29co>-|MgG&Y96wlscFKk6v8dWyv^e7oXu>GQ{35R&=o zcyP0ClQ-%GxaiJt7;M=X(C3Pw}i!)xpk@L5=CH$$D8{fM+rE2p5*)L*3&OMJXjnuE&_Z_|t?_C^ee=S`E zO(FjBXVHGuWSr@)li13&$K(syiZZtHw)UTXKf=aBzYsq*+T9i(WlrKy7;8i@m3|*P zF_9Kxh&qpZ!ki23|5K3u%NkMqfR)wf47Hq3Mshd0VDaGqOVPn`{Pdylre~pz=dPqs z#W8iExB2{%vC3X;P&VutRtfX6{i=D1!~|=(M1fi&+JFD#Wv_&C`wKQFc$dz(mh)~( zC56;cQg3M}IeOFUBy+^AjhK{VMU2|NFUryf=gpYT-H*qhyT8^Zuug*J?ccjCn9c!H z*Cb)T@l6O0(P)OT7{We{RC#T6io4@~fYUg1D z_pbR)aT4}(e2-f42l|U1xZ)$T*MLHhAu@UzH!VJ4amtiZ`pQ3z=3UNna?qs?;b_^; z7$c;a4pYXM0BXJ-%XlTS0ju!j?)3AFi$$EjWaJ2i4$zl~nM}K9r}7^iVg6StE~fr3 z$Fu)=bY{M-l7nUXB=KA&==cQ7oqcAs#m2f;s{mXF-f)~fzuoUl3}rzKGDhph({%ZE zBoztFQU*gVXd=HWt>%|uM^>_eIREuDHGL3PWwj(SKgjNWP2iM(d-DbRqHewkuJ=dx zLU%Bq6)v5*_^{kWe>n6cT*)y#IS(*NKOn-U_voQdJz z4Hfcx*<`&9XMUl-oZ{EtOq*^q^UBk&@YSf4ZF@p7yw}S6D}d=61U(|mOPzWyBdHX) z9E$uo#>DK>_|Tid-OR3Q(iO|5a<&ho#Z8<5rJ}9A%-+Dm?J2bn z;nL_oO>S-kq4$WR2FU$)8|et0!AYH34m!fv-K-puH>&l)_`27%KM}Y7gI=FtLCoDq zwiu{m(21yjRjv0x6nWO9M0KRn3zNy4xBu%BZliha>ec5l`|V<=NlEoGvu?XP9432{ z@ZOEcSr?`RDBl``HeV1qWv+JgIV$DZzjq;>e;Kfp;qApGeg3DbyVdkNSuylFK^yiK zJs+h~qacyo?PC)(U-sfokX#UZ<@|^>ncnQ?auDTe5$5ylP4>Ft$rPvM?8&OH636-=h%%uYGGxf z)Tc)KP?t4Qxrdr+u$J}$%p4m?trAlzQK|N(hb4gP@pymho#9q*;o}%?-GhmFnP{3IOQ#m|22GCl>iGW_Uj9EZI^5S&W{P4B2N1>*W0Fn4AO5F> z$}aFmeIGkfQ8zRAO$DZ%$f^%xg6SMtnc9sk9QE|GT#X}qmYxRtpsS4&)5q$b!KfM9 z1cZV=3$N-a#fryx7QN4EYCC-zWzx5mLK;4@-WJ*u?K*1UOq)#0G-2dQpOk3k=3w|y zgPqtOC3C+n*IzvfJbdEa&M#gx$FlXW@6i~-7njUCQddW{ndwLbL86al8RPJvDBI?U^UxWRH+#-VJ*Z)#HA9JvB>RvM;8coS0XE#hgtlKWmxD3SFj9f357S< z9~aX?>Ghx9u2DJ>xLigWjmn&ymjeedBeU@7zJ$~%HQ;`;o+_!iWc!x=Nx$O9fy|wQ z;Qjr`+g+tLcW)jYb}v>IA(OxCHTtimV0w4k>t1Wx#49t)*qRS34S8oB7Of)mW60<3 z1+(hf&AiX|9scK?;{OT^{Xbv7aqX)5*c|*`2QOiQW5%j8e48)mw~vp?6muXLkwjFG z?=oM}xO-GJyFR?T`VvVUGSpw^O-{mOKAdhBVND8qcj(C+4c4eeTz^YWbtu~3h*y6B zGa_Q%?`<}55rsa)R=qCz?qp&*Myk%!267}iC2)28L4Lghw`B50UR<5Y3<0lI_XccK zvJd!d>I`tRs^)tzr>Iq-o{xNB2{mxQ{Tjso>r{;$p{!#iI(kRv|G#@gb8n9D!G_9> zFGi@W{M|8tO{F{CJNQ1j-wQ~@_$jucmQ`hO3{k zz9TNDB)C9H`Vc=5$cXe9Mkn1DdTZijy>FH**ln5(o|qfO&ro<2FE+Ht(iK^41 z6CKmMcHB*JN%OGXh7&N<@Yiul`C=^^6`~UW%d2{jq{df!STTqca?Jh_{-e16)gs_6 zax6Ub_w75g&-b9xvoFxEzEU`g^7hOe$>=qQpG&h9O&HSwy(dVJnTILHD3EJ0gFqb6 zq?{Zb&|Go&QishjcTAYh(Db4fn~pro8SuyGXM|f?ZT+H&Rk#au z77msC8<%zwMoH+a{^;;FtE%2Ifu+?^e?^U=8J5GCC`uYEy`nb}Q)5*ByH0E0q3BM+ z7->!u((%)e>^4M+g7v;i;Cc~8-P?Ue(eLn2Ac|Lub!T^^52GDQ#ZH*t!prDhj`vtO zDAj7Uk0+?1>dHEt(H;nEr0zk!k%ep~Xx9%BfSyOtxz!p`)129~T z4{LAwI>$1K^_xQu^B^e?FKfrP-e1otlqfuuDl{g(S}34VM|ajo_ZM^5e%P(n9ahs- zLr{x`zPp&b`3hp7!mDYzizsDsU$CdO8x+3vTWDCX6LLxZ;Q4o?(ht6^P7H14&SG29 zz#ReVsIErP6(Ax4uY%chepjDa4wA(!!?CBnF{N-H&B z!>%LF^vA6#B5c7Dq1kRQD%FBsh~58LI`$4;ys7rQlatBni;UQk1muC1sKLdBehGB} zN(fVP2H9?rxRlr{%v_@~J2!s6YS4dO&S$h(S+!0T{s%*1*6Z5p{b~PNjHC`^v*82) zroUUwqMqsLPK-X-s4e37^X73(Z~>4usj_<$n8=t3;sW1z+5Wfq4DM%EEW418jk(hF zrtxt-IpgFbuFetVWuMpV-VL-VJM6a_bGwatw)f{m$1l0Ovx~ciB_jT8Ws0M|9ZBhM zW_thvfS@nk>UT$?<}YXp^y7wL79JU@mf7H=a$3fu0D0{yQkS!98(ukfCx*GOP3_~u z%qj61JvZ{(r;;&S(i>a(HiAou$bWV2{*4c~)OMaS6-mcrZB2Q51U>uiO#zB?E!S@7 zzrDt-g!}n!3td3nV8Rc?f1k4D>Rb={G`KRJH_ZJ}=8AT)R($Q^X=l$q-Yy&}P}=Pj zGAg+MqZ;FxKt=XMf;J2qDyX|vsa`1z^ytVtl=59RL^BPvdO-w7?f}6dN|V}D`ye1~ zv59jmsPcFBYoLSW`m44p5(3O#(b*GR&dc9z%0)3slMMXO`o{gH32ps|4z|Lcz2%OR zymJ#(-^T$cuxUF2r3OEHDZgSGYM{XL~ zr^tOP*^O_aw*#{^;APUGS8lw{_?K6-0sSD|`Xnu*xhi7bXg52YxjxUUX3lLYDn|Oq zI6blsHKmA=R&;jV=<-g1YGuLMfFQ5$mc|gUsTBvkaA%ZgNCG6aGk#;XZ+O^2t=Iea zq5DjZ%PRJYqEe_e|1fIbaiqs}VaD`Hp>n9|cmgq9j52{$=uXCcCPgDZOts-Fc#(o$ zI9tOBopwztkUDrWESN|sK7zE$47M_u#HNw0-iE|o$=n`9Al9)+4;rs}`N zdKz8h4p!g`BD5=Mz7@c=5myh1Q8i^I849|R7Un$ z|I^lTTnCqycrni@7K^h*=lsf4+~O-qzX7RjBK-zqp%}r|D8V9Tk6Om=)r9K$VL0km z^b4Pa!McUF#q+*rj{0)iqbs`9Csx<1ne&2s+qjlx9N|z-pzC4&h{cx*luTb)`1lMj_@95C( z;KptX&2abNpZi)#tJm&uuI`sdyQwL&Er%UaM=5r$$Z?+x;w%@_Xs27j?dpDOTtW8l2Jf1`!Uujaxx zbw_|1Q>Yaph==e&Mz_p8ZwKbzqSS7gi2d@Mt_s+dP+I?C8`v+HzQnwP-2Tjl6lTQy zSbJHxr=(w*H@8}N8EVccLX7w&`Za_wgD9$$du55c4j2VK zE}YjEtD|@(QQyGYLN+nl>j#=Z;4f>` zdRB46e=;N>*1ltKpTtLCUyv^vAg*vz=SvJ6f9L6fJ7$Rs5@RZagDV*2!n0nIjOSvG z#sRnpNR#nhZ!6Eg85z%?oNijj^d^X`G+M_mwL~ekCaR6P z>vT$&upue{0YOzlT{s)?G^l#>FGm^^6Lc^y4zZCt zo?7J7B2mfKdivPK^z8yzfJ<5g(}M#tzNkO4yZ!+X&X$qQ`C;~!Oc;$tCrXKsLZI{p zBKds4rkmyJUzs{1%sPuL>x0uqrlEm{y$nh`%UgsqX~Y|IFeR1su%2`+nN5Ht03nV0 z!Fw`xk=a$d_NZ=mxxR&Gd=wO9qNDf~PZ6$0xhM{YU+Th*`u{{^me{0y8Y^3F{WI5! zi9R-WB%QUi`e3(U{&`x4zLkubTwnb&lcG?+qHAgMOi)57<#)VCcxdnZ#p;#04;)g< zA0!h)gWrj7o&NhQv!;!CWKyq6zc<)s`!~}gln@lzg5;f3I~ePAV;VHTJRMJOwe%~2 z-oL%H{Hu-QJig`L)9OK7j=jtmaa6u`S7Ow50l1KSYON)xbIrGVD_1Ak(uG9#dSobc3$;-C+~(}!CU*I zP)s}Jw*oS#>+Rtg%m7rpwGm`O+9f?>GlRBX?j@&XSzNO-psm8N%WtUKoc}OhGT=6* zY_hlZF)*V!+H~s8Z_=@h;?7cyJ(J@@t{%{DePgUXty$lbZkE^t17xqX?s&&ll8=mSrkra`xbj&8 z@}gx~Gk%9x`q4dXESVhs?xS5up=+^pjX@N=BlM>;CD(v%Pb!o4{{dXT2kbIQa3uOu9TYmQ0)RiF zZL8>B>yx_$(Ye<4;I}6Fd(X7Yy{3;OOEAFFZv{a*)5m%%e#<?SchT7W{|)V*(v zJm$}4C(4WU8Y;$pyA+McM#T6X@k}=eXK2M<-wGz?a|23^7l&vM&8yTk%nLr&R|BJH zSqn7z9>r`x_-pI!AFr9_RztZp9*g>5`X|!x?Ko;m?mx`riL25Kr#vO?NQng3vmN+U z=buf*(jtR@z=L%b{!7}O);1bdg$B|AC|Dsx%Ja9*9Vyc zc~-l>^-Olxs(y4dSp{^>? zDo8B^mIKzG0%V1f$X@oc=sqRt+ck;)b!W)Im|kwm5TO{qMN=Kp7#?P-^iK@Sp_f zKcM=f$Fgl&^_gX26Z>$}OBt+X{fdG4-((^xVfFq(>gtuPJ`9O?!~$Olv$QcpenH}@ zefdnrBkbcV1C;0I$*H^RDVDxlPOES6!P8{ty)H3;KTiJz*5a*2mp6HnNHz9af}u0I zU+sgSA%_)+pWsRY8}uF~oE_=e!#Ps1&pP%&Hp%@rNLI>rsp>Q>;TNPIMcO3{BNF7s zfPwcox9sxH`feL{cyhrMrHvuVc3jkp)c%nKF^d0W-IIx7F-ef^_ktN$eO~`GW#fZJ z%le3V%Gv$26-Tq&ud4svaikfUQWK?}#tU5&kXB5#vnREmPcJSZTZ-_CFo3<+(O>o2 z8ZA~7=?2Ae5awtfsOPw=yH799fmkxh4d*?yO$@iyU7f-t|XN9N4Ed!9`**|#*_e45FY z4p`BS48B$oqn;Jn0${1Tg?pqP%0>vJ<_3 zoLVYtRm2%RI33U2RCpebTj1Wgp3?nI@t#WJkomD;rbn5z*P^mpe-e!iW=A_(8(VJ1 zWnI#GbJcfPx9{1F+pNmASC^mn#az8xdg{$Dqpi8TLv&ydJace3)asUuw(o};rnOk~ z+v9KF2CTPVeR@_t?K&*&p#V$VtxH_t>C2{LK4zOTZo*utY(Hkbdz6+uD@A>DXP#rg z#vwB>D3cJb;Q8JO*B3CH+p|h!lV|h;=>~jtVlmq9e$U(m9e4-sduOQ4Jx1;pT-RS? zEkAw5kex&Ak>uV_mz=4*Y&o`1NkVPc)L|*Ogm*5Jl6QEZBgx)Ahd(iFP}^>yu?;Hd zlio3<+AE?K73}Z-@%o$H`DBeb-1)9MSnZmi%1hXfN3gYVI8?lRZB$%L7QB+Edv;Z2d+3uG)MY`02ZBKaNSJC@gB98$b{tH@$U*TrGjqTP>g&V$yq3v@Gq)wd^TYd+ z=J0?yYvp)8$miJLL8?FXvgo?CweZUkyS-8p#Z#D>XW_Q;r3b?-+Me_laTQT{d^XH+ z)f3`YCzIelfT5_XmKdE><3Cttmzce_IdSbnG-5$y%692_#BVU-JtCrB24Kt=-a`>Y zK375nLi(K}^B%1vL|5*{U$qHeE|<-xezss1#9qz{{nE$|fFY93eTpT0+a@kN0DrU^zXZ_TFfDE8G38;_4pk9_wD+xfAn9f_z0}uzFbreVbhM%$U z&fiK#u|W{@PzY_d5Vf&1Tjn?M`u%&v4XF+mL`BTB#@s za8<}@8VB7Fe#Yc*ivwY_m59#-^fIcTI}4>I}(d69G2 z3Ks|3IZ|kEP}SBW)JAAM*N6sa`!8Tae~`itXD)aCQD?nt`#<63X@_+Y^vz_NCVn)j z;N>7Kh^X1!Np+0azQ-$&I$_5D5w(?Jj@A*Ps@TUI9hWr(pZ{B(+E_9thuV%bt@vZC zQngp3W>;cDOXzD;Ai06P#;|0u)irob1;1C>(ShVc?nv9WT?1#OPm4aebv5b9)elZd z&vNXhC8eJ~cbdK;o_amz3`>sP4BKg*Q-*a}{0XT^CQ<#DBMl-C!-+^;f0Sr=MP@~2 zJt{z{wbwb~?MNBQxmyXcO|R~G3x-S5w>dm_BGv_J#PIt_?dfB9S(z?mF@E-W+e*-slcOKY(+?P8lLKqLeltvzZw=7VX<* z|HW-P)(~mtkLYY|d0;;_vs^4%ej(hd(|OZvTCK!cNn~w-v{Tcn52%rQ%M6zyTqB-p z?C!^p#)y@LyA;*$;p!qKm+Ubm**miW^eo8QfU-Hn)Aq5?2vDg#sD)>HYl?Iqv>dps z0etPzb*1g{qf^V1tnfsi2^&$l1x>=h)*|_vwJq=IL1nbv*$%Y~30p>@N*Un%HQdWH$Ut~z2 zrcecu9_mW+m%YZ{E)D**soOC z8!FZKLZ=^iR@Grh4P@UJEF6m>I}4`MLJ>*J6U9Zkv`FvL1yhQ*?7Q_?KFEgm;hUHH z#qc6rO*ca`rRr_;s=q~(2t#BvyLChBx%?I9h-QOT!M$KE**3=IHtYP{1)()Ns341W z-CtAHTsX~|D8Gz)dkM9<6nMC_Z{J8XT)kCUJ8_OG69;?&>qL`29ADugPx9}i77fu(GQsDIHL$Nxx)!a&%!_ z5g+&E&OMhAwsI-tX2Yq=`oh2eR@TwYW)snRD(mGYe?YgLgm_n96}{|uWEZR-7To0+ z(bf2<>S#nOc)4~o*hxfOiIN=|`O{QlnM^#uZ+`XB`dV*SZF_-e#vq$y`B4^=t3KRo z@jCMf8zv`T_)Qu<`sn@Wk-FW)=jYWsqaQIPvbpHhCAqh{R1`JiY#T$L>2mR6HvWUk zLlwf%sycpp_l*zJO=^LV-eRTY=zCS@00Pab3assp2<``zc$L%3;j}1q8}Vt3`p}H zuLhfyKwuC2m{;QD8{+zLJ&m=2)*;{Dk;KUMXz^*|1x>N8fS=rlUTPU_Im#`5fjgRk z*s8L9FH}Ewspuu( zV$PY$**x)0=G5&kF_T+lsQkp4j7+N_zf}Ic%#e8&jpq*}u!xkrliC{dbk7&er;CoH zKQK{|fVT@-HgA}0^GjR4@boTmUu9CQ>4 zNPpBw=fA81AI{{Akr2R{7q`(`shgJgXi!+l*z29xo*8DZj$iB4NbNFqikKAUpYqqpt=gdT(hLI=~k)&8UPBvzfi4ydA1_SQ`U ztj3)piqO_|gQMEg_2ndI!}f&UVZA_tYdnj91wVyB({YhTWfTbr3rLS{?58wY^{{Ybhvn zSM)K>X@co!1DnH{;ZutupLj?e_B)xc@>X}g$sT?RMpRVx*qv2Mo!_jP#ToiGZPw7% z{YWD@YDj0TX`AVd_c4(IQPZ=o5zQyJH)Bp6CIo&1!nc)2Z!73DoT28I_X49F)Dsz94!z^sdU~&KuB; zv}^QLeZao#fxn}nYs9?JSK7FS8EqYnVs~PGQM|$_ZWH>X8=@t#ki&ThxN!Jkyo_&+Ueaw`~4eO&+c@J z@&4&4g`HxSKy!T`pYeM!{&r(OrJ`*^Jzi4Ui8Q8t`5#-jC-GpjYsnl_qW`B<0WLJ| zei(vr5d=+!mw2?_SpAS+u$=bx7A*quh@2IE#GKv+*yU7|h1&0wb5Ha+iLF!JNsp|_ z#}9*m-@R$={Ec5YJAqxn7|J^SaNVBk_Gxs0xog{21`*-xA_7cOX>@=53P@?Qoq{o` z=b8ONp2h!!j}Zo03VW~dkGVTK?SOM zJ+%%~ebH4tOS3dDf37CRpx&4uWxYl1GQ6!Mt-5HivQUy06xqO-@C+Tc{@*Nl!3|s| zSrtQT7rSq9ShG8m^D`=&qozLb3`(DI$|8m%BEGD;c8GAVebh_=xU zDIP&8u)4H_grSzflabjlkI?t>XE#53tIlR1Hsy`)C@*OHgR;&Eeo#AXw~o!M1}L=T zk&cg(Bg!4M-$bc3Xt*m0kpPo+6XU)?UseUNccSKu0Zt+OSHgP@5c#-BJ$?;_=XoKY zA6z7bo;O)skH1>bnu-}-jY152PAKfmDz3WPL1;m1k8n>KTWr+=VrUmq``P{9#h1)z zdfRB>KP0=5jwy_)gfJaw1aRVGfKaK2rfrjoob*!dy~Q^fx}2YZd1QPvzUxNoqz~e! zQhZREZ+xEbV2c2?J-wR`yRiHMt_f;r{CwNb|F92A1x zEb}cc$XM2zTY9R$%+HLdRNmT0u zMy%K3SkvS~s>9@wtqOq=-u5LbbV4IP;VL@5BJu+vPcrROIyYtkucp5>db0iFj<+R1g40&+CCH-pXEz3e2_H9f#C&==DtNE926cPect7n-Sb-GDRHg*2US)5 z%R*E-=z{!hsiT}nnZ{DKfAsUgPZeT62QH8PEoPFBeKimxX48GE1dC}KJC4>IB3t!o?wDp|bezjo#JR&@ns&PGe}15sG})>+u_AM6kp zt$WyqprJ5Jluyqd#mb5ve9ap{Y#pPXuLo@m1)TfS*sN@XSL=_@+$5xAcO8e!fzq-x z$y#-zRV9K*c(YzhYW9SC?_KB%Bl*kk#jGhjsa|^mdUwt&OGw zYn4=y3Da)@4?FLi&HiMjX4^RlNzCdbE=;jG>+BfnoWCMSjKzToVEt4s#JK(;R zLxi675|WW!bg>jO>9{dgwnq)JMDV2TSVG&LuLa$$oz)<%yuVTSBgkLNkXpQv;sb(h zSM71QdA8Ud%0%flCexZ#ec~{f{h*n%F#Ea0^lvI7yolo#afYINZ31H$FT0%-bZil& z(SF&!{A(wvn~>(d{Js}UkXUiD+ezqgy&{cEDN-6}As?6RR5sANwq%bY^mFUr{&)Z$Dp2xCauIwp4IWAP(_@AR?Im3v zG4z?=Zkx2V_!ItlAuBTd{Te+gaGSp{Z_;||+-y8rfNnkY4T8;<_W5vbLRKurQOyzT zu;70fuTy?`8z2Mnw*TZzmE~hUYnNxgC9F?tzdWhXe=^X1;YFPQ9q-;I7Eo5!YzmJ; zEUV>r2NQY1U5|;Ks4V6C4r{&m&D<_Rm4nb2epq}C{>>j@(Kd08~LU^({*)bGe}A4D_Vh&`*iGhnJAzL%+8>7Z|w3Ud)o zN>iawWQ5euPMhNqy%-XA#K0xTETh_jw~e?RN|fB!^oR9AN| zzIGb++c@SukC`}@8SOY2eQEG!=2O}?oD|H-AZB(Q6n68{)L7lZxvVf*o+|PC#;3NJ z0;ZDsyVn6pby{b9n`*zE`>y!lLhn&lg~_J{*mpXI)#isiFT01=;0vz(Uqv*d?x3Mx zjL7dH!M6yjlA>XMc;4NVGuWAnRKw6ZF_UMiyS>fYm?5;mlyyAQ<)SvETE*O1Vs z2FJcLv*Au<{UI>7fYN}XGaq8?-%;XR%X%`#Hxr}bhk6?mtOh~PUeDle_>H2v6L_I z6!9m9L)q`NW4~8na9OFLqT*-jm^|SxQMZ!h#N=K)#C}ctq<8C-(fO6gyfY7WHN;4S zbN3647lM}+g=W;jH+x<~HfDfkcqX4(H^(z-^89nfI<0W226d892B}h#P5(^S5uL0h z`&NfMA1wI0<|#(lSlxR2q^rrN^_v}Xfr<^Og16RoLmnU;46oIVU5l_;?KYeKskL8z zZ`$PdsZN3(^}*7mk2mwzWR3dTcqxM04&k5l`tB)z&Cu1MUDVl_L~@@G3|63aGnk>k z#4$f6(qG2(%29JM0gfL79ERSWRS3O1Hn+cANwj6}$zvAz96MKb`i;T=2=&A~u8H7$ zRx_&*jVbgWxTpw9d|5BJ_R>cufvv3UBYP}=4emO+ZV1%KU0QI_FtW+IR1h4>S!@ow zsyzLv=zHf;u<{GrYyKLZ!*yfX-%Lu*Hnya9%n!eQq?w##*0fbsfwML#x&P_ zZfA-Ya)AGH8J)kW*YiQijSMqW{bhM;r6KNziJqNl1f1~2Y}@~2GD}J|a^!e&iXvjo za()i(PjBSFf~%qFQNcFtIpy5Z^I|P_=yw9;^YN4f9RA36idO;0|2!tLyN4@~++@xf zbC_XEtT{rxyQ8kb*#^kZj9{Fgs$#*GWrTvcoU>|w0Brkje3e3JG*XD}b3jTJnr6B@ zor_=QF~7@)WclojxP-B>S_2@b>$Hp7UYIX*!#73bWgnmybcs8_*rub^LGcat>zFK# zfJ|)fT*7lu(vR){~vouNjucB{|?iHl}Zk~03PIS4*_Oh{$g`d;BOiXWT^obJ4;Z<<* z`d@YE`^425Ec;3mqE6Dp?G~P&Iw^}>P6Cq(1Jhh^k7=j7aIAm}nzN6VW?`= zA1QmdXA*42B|kWOerH&q3-3*@fer%%<=u!uI0fKeSV!!bq)MEMxk9H{WH64lJ8F%m zrGcQGjrzshzLjr3tTsO}D+>fWhLLq-oBggY_<1zb>QAc_XDB7h~q~fBMfq4JjVN(U5Y!|>L zFS?}eUb+o?RCV3GY3yj@d&C7H%I$s5X30`94ftYN^94nLsi>+Q=*`%h_*>pF2m2Hg zI};QvHFVMx?Fdzd59%sZ_%wM(FPdvuky-6Sph7>gM-X;*=-<;kZu?1cJyw-#Jvy)J z=N1Zo48r&CE{oGiIeveFn@cjLM`d7MHj-BfBFZ08@|E*d$QCExDuE!2O*in|Y5zeh z$kr_vMZbW$cpBwMf@%(KGFd)N?|Sh*N|or_>vDJv9E4af+VNFz2)K^zOCxjDXh+u< zSTLYp0v?8rUAA0EZhx%T$R0Dn^I4Kp`AMaNu6K7vSLC`kd?}i8%L`kXFHZ@8y#>LP z2e~I=YCDo$3DJ;Tz-H-2cIR3b|ITBE$Mq5{j?+CFsNH3D7lot+(Yj!yXr`3NxRbl< zbctc5TjVut82cMBjjj1min~W|eHT3?)NI~nbjw!mV)pX;-A5yr5g*gzQ0L*x$5Ue= z2M{KUHBBc}wKj=XU^vAwtS2BdawJ)>L(uCSs#dEvX5xT0fsAdQd;fXS&w{ezHJ`IB`{V~!F_o^zUB#0U@pobrhh7`2XvKia5z?G8OFvbk?~J>PZf>bQxUjVb?@`LNR2Ztrg#2;bKwM6B64+Z(sc{K_>;)=$ zPSGXpXUfFDtR_2>46ftAfR3t_sOp(SRkGV?c<;u!u=N8iLuS9yIa=bpA5dVJJl$l& zWRVqZv_~v1%OE<?g#4F5^}>LD{RFw6d~fY>3zCFH+H!2icP0qW`(;;$he zK0Twv^F@5Rxr;#m;+D3Wo_Z4xs)H@pR%Dq30E}U*UzbMKg}u-e{wwb z8~R9gdPzRD_Jdqnuw~KH2k!k$@Hv%*C+*WEnVW?}3dost?}r*;Wjr0?h0pG=a-`h6 zA0(0~aHgjGuKwsey=~7)RgtQDJeEc4;g@2g;_Q@8{+r?>kIaKV2qVarUo$?GWO}{8 z{VMKo(tr4BN5_`$_Hx@`=3cqUogaN277?!K9i0nhAMOC|UHWiSyt!!ZI@`w04Uti$ zXI-ZOTpu@|3#XI1_@q4lIyD__p>_4gSZJHJL1!nQ$tWm{;D|ECjj?Y1aQIN}w;xA5 zzJiz+{WmS&9nTO0`mrbgn#zZJFJ6NwHil;wKLi|G7McJRmTbOj1DwSA9~t#|Vke{B z`0{IeoLQwuZ#^5V`euZDr>e2}BOK(N6BsZf3~ro+<{M=FNa36=G)DZ2$+X(M(eFM# z2vBYmon{>FE13VlV@LTI4b$Ggb7upm+s&J5+dWmfl&e{ z@L{&F8RvXHewm`|UMU?VgdK|*MzyEbH4C!UtuCLQa7flryMSpQQ~GWVFEQZq;*?EL z+hzw9G(MQEQaz>=ZU`OO{dA7B4RYwXu$)g^-aFD)Ix&RwW?*nQ?xS5cKcmoW`lPsG zyEOFsc7q^h7yRTx73tER^E{uLbMg^;Gc8)Xh;DxF%VzC+P7reJb{?i#82>XkYqpPP&rah$Obd+xXBN{(%E{ z5ka;M=pVxc^M56$>o&Bg?udy|3YbY+dt*5q__V4+%4^cV5_A4dFX%U(|D=Y@-Nt^> zZ}qox-`q??Qw}!g72tP9^x9ORIq?&zd>8Y`VWXJC-R{H9lhX6eOIu3h5Wch~X~^2_ zIXhw1Ys@0NsS~m#Rr3g9C$jbcnXL~O1$uq3X?@fTTaEqZ%es7JDjpc4fNBqEG2|*Z zpWNIoo7!)F_dj)6%!)p72q_Zof#>2=h$>1_Og{ef=fI|t`6eFd#c zY|&`}qB;JeshT~Go$GRRWLwojwVgHeWYpX{1jnI=rP)mXXh;=XMZ?{i&};;x#1u~)E?`FCxfk{++# z)3BX39A`LXb zWB`e+b8EOs&VMSt!qY7!3&DhTd^LL`S^$~>wfXBDpUe*2?0z$$Z@0f7nc49wpPM2p z*9qIwDXn_6Gs8+zu-mu$jne}ml0cs_`z{=&gRhHrxaTW*z=Xh_4^-&oUvlo?wS#at1A=AL%23) zF1GX1E4L71KP##4v=$cpO6Mf7BgVC{=V+4vXZD>Z)^lR`1%}PSE3%9};tDGIqITH` zAq@wdUP*_0mL^9d`s>PLM*YN77YPxsUmb>J} zVN1I8UTN~(y4kGy)$Y+6)U?>r0ykN}WBw>z(munIS~s}1YJ#yx$6-W?R`F+^43%LfE##F zGWk5HrN^cN(z!B^8YEg}+SdFNIysTG>LXMedK@#W7EzBD3tF;`%Dl^y--ai)|MH`? z75+T0c=ps9G}wb*QCjGK6B7|<`Q=fByM4Nh;#7;K(kwNsgvux9a2FpcPMKL!!2CKjkdG9VsV-2z@ zK1R6ctn=Ky!O%LzI-)S-?EoM<~8-; z^0t()lkKO3!fJVzcfL1hf4yN@4L^vKS;!_waIVA)y;2zJMMonsppmp^r&3FJvR?fkl%0z^(~bZC>z0&g9SAur zsSr7&=Da0Ia;j9694G2_Sj^cDNi646cW77uXuwC2x^?n_m&*uXwR3L5>IyfSi`qgxI01oX3hQGaD#crMNdOd-(iLBSzvKe?! z+j9Rb@o@veI)YE0@=VyV>X0n1Lbv;Nl0Y4*q_(dcNJ8n||5@60p3tCPcLvj7he5p2 zb22BvmK7k)1Lk_Es*e)gjN6qTHS6!(Fqyhjv~-dzQpS(z`|R(drwG9RRd}duzWwGX zF*Aubsps*xk{^FWf{s~WDLwsWvN(<+Xds>LdO(wP-rP&C>R)z#A|2!Z z&e^-lFZtP zw}UUn$}_lY$F)gh-Ukfgm3G^A#Zl6SeU60E^RmH$E(p!k2Yt9CBR`pB!9N&r&Eq2Z zhcZ{TRvF*1i2&d`BYU3Ft9q`9SOnhgo+mF|%AWOZ$sqLnlJhM!9b@LRfhfg*IQ6B- z;3mka5M){3lZ={P-YdZP+0D*tvf$jlGktFSd8izF_{rj-9g@VOw9nu5%=x+59S)$J zwTxCdXeof84EPs-ifDlbwmgZ*gRO}|)1&p*sjy52j;$OPiCU~AUoQ_V&zf$9bUDod zJhT#)@bF7Ho_4o@yr<)%KcpKz7@~^CjcrgPwd5|pljn#In$t?GdBbjuA8%qoM#fI8 zlKaMX&2VxW!#RSQFk+6ea5ehg=AJ}FJG~8$T&k!&(tN?K^=2^k$Obg06Ss7H_h)iM zc_cppG5u>~Z2_UW4LniYZg6>>p@i#-+_@B+MWuZJ#tsn~wRrobj+BfY7`#PfJfK`0 z9H%f~iF!fOb;>JSE_cZoP~s8VG6tTnaDk|y?*qRW9V3}Iy#iQ0jn3%>Cw0{R8QGj~ zuZ^QIVr_4cdwH`_?G026@vJ32sMwl}`qv9dlL9mI`5NGvi)fj#&t!(Lyv4yWmT#7> zv;1}=#wbNHXZ8s9Ib|^{8lj#qeR){o^m?b5PrgrlrQ~{c=ddHO}i%ucGQx+ziY>}E`!G=}DvRz*tovabQz zUECWVNN?*>qQW);dguXJ)?Kfr*5HBq_^!;r7@y7p<$(T!fZ4snRk+7znaHHx4Lbr>Rq}M1MLFikG zx0NR*3TE{kF(tmCvX^y2q_zuW9>*2hiL#nhrl4KxfCu_G`)c|!Qt#T%{{Uv5d^8}m zcG(t`X5=s>%Vle8>t9A^$&H5V7+@@dg07u;?>AV>sOu+I&ZLb%lLu3%R zJtPtyX@3m5`QXW zdt1h+5?wiC%iT~M(B5txZj}+7LDt4NQ*PMp9js0BAy0mEHeAdbk*b&=$H5%QdaoQ7 zCo)irQebD|++fR)otWyK+dy zxzhi(cDDOnGhNXciECk$gqDvp^Pjcox@LM)ytzcP(Hp6M=|`VZ{cw+wr?o7I6!TQ; zWeq=zj*Clfd~|oKFfXL}s)o!7SDus(ku!)9sX;B)nj{ z5Vla&auvp84hKcYsj%)AR~=0%VIJJMD?KNE9wh&IdZq*_`di}IdzN%+viPyU1gp+l z+7iYr;@NPjuN9nHVncHLFXebw{PYBVi$T5h(i@#F8%WvJDKQsf^y z+!&%kH=&Z{+&47hW;|}xSu=gIe)`psF@%JRP5ZUXxO9(0y5G}2qvQg!pAcu&ofc|` z1)_uUSS-{Z)VS#tK!JwjDGPS&)H}AEn3;p_J3~*3*irajl8slbB5u&-k*S5++%T~H zN4>OUMpM{$_*MWTxx%iP&w}i-I;OHaE-d9a9E#_FFH1qfvm%BrWOaHImn|G?s6FGL z1g6WI?qt6$1wG)o=6lNvTW%mpT6?9y`2?ly1?n*m?8bd}v+>e3<9#aQ6_nlD4O)~}Bty;;)Wou4fc?|6LMe*L* zUg?1&s8f>y$oq;Fy6v9X)S6zSSZv7~_!LUCsO@si`Cb-nwDHFXLub!e5pH#pc(wP- zL^B=K_QtYyD%=|y**Gd~>~ilIgc@-Y9e;ees1^dwz@=^4E=ALu&Zqjd!G;b8YuGb$ zYS~OjyEc&Pk&MsRU#!g0v^>qVpt6Bk&Qc{euO;O5Ww@ZY6(WHtSJg-H*(0*`qr=kY zJq7RQiwBvGme30>^hV`H@cG7biS@ZFQ3$G z_d`K1dd7t8w445qrzaRMp?VyfDTcsO+E}tsH81l^cJcF;_KP?CPKi^i(Nx7_GewXg zYkq`XY3(P}9%2Qpuq_6ZouN9dp&Bc-{Y~)aYZ6lZJDvT^2tEhfH78xmS`psG0CHCu zQ|)1r+rsJkTQTf=8vArTmOnbz0yma`;S0XMJWl0yN0ubDNB9ibGsW?U-vcX+{yvk{ zwsv}MF~@-BfOIGYhb!?0J`}{3e_c}VID8Pu!A`GAB`w(oxcQ%l6pfd+;Ce?JLKu3f?owi&bb(l_v2vGN_7ZLKzeP}iP z=_)5x>gOmaUO(yhqwfN&8*{+@0e^wCj^*3SXRlj^R=aeDGbLX&vf|hBSn|^^gv{7@rw?2ADfJOuQ zXqy@G9X6Xbs>^%nKT*7ZOA*K&%UiK%a+sY1-^j_2kr!?3s;ZYONG}@pk?P|TN zI=(;b_GXOH^1oz8VbO2~zggN-MwT$#HEaS_TG^XgPZ`FnSr~?H>KARL-zse;Y;1-O zdFHT4+lMx;Z%)#%mGUG2-Mn8H)JEunExaj<#`+UImJE5?f^m-1CFQ2HdY0T(+x}}J ze^#??tPU|Ar0^a-6D?J<)q$8o4G1h-9@;?wCHM;0xHICiF>t-^m|pjx1Ts>;TTXBv z{jb7lk+_#^}XklP*e^_~HTmf|9ToKk{4RdELX*FW2?V zv{j|s{?F0#u<=XDD|w{a@ZIj>m(`jlu(PUU$|Ohh?L*0cCA+&Re_exXDL4L5LVW6* z%v~3^r&vkCHld$7pGod+uXBqzx3KtY7vXUU0V}BN#LuMRgZs=(v^r$PB*scE&bI(3 zI&rI{7avP@1m~x&P{}%lcY)V|P+_O%$+~kdx6d= z^K2mJPY5B_y3CTgLQ)+L#DKfGC-Fb7zPNm9{IIiW?)FWE-T`4ONV ztGb)#bEb6r?^2|NV4+tJW^t@)pc11OYF#avD^Q2T^$L6POrpjb?rVV9NOP>1lZZEn z@Eihc0^FSUeWKU5WSmuQENjsQ#xehATkmOiW;E-UG&2aHV8kg<4NIzCA>^C09|2#; zD@#$a3Ts_kzke)#H z$UFjeExS_LxFclI6#XnG)8gTp67MCy1gKq~+_Tbgb?0Nza@arC$w3{#)&57@7kZbz zYLCK(lb=I^Jq-gJHkD3PVL*Grlv~CWZ`ON7bIi^iZ!1y)poT5ShmivMqQczl44V2oxV)G9Pt)`*plv@ znB%`Vs6{@#@v#Y1?vOW9s#D|)aQ(iN{j_u83xRnSUuHRgC8^}}U1$l~`a&ZlUt_1@ zc?pYGwrjYy%O4=UfvVK8HZG!;U3>}H8sgDiQNzwIn}eH%QbKYfem;H$@vseS&n`9_ zwJ6&~8seBgJbS8YEw&ks{0N^w(ndMIC$~%N=)91jbl+sui%X8*9%^lFBe2?r7jV?K zb`ELsIEy6e3~cR1zc5&5&HsYth?%+T#}fV0$L3yg;i@&wH_=*GV=^=S3qzeYBaoEM z#SI~IqjSw;kL5rvo9u~S%BK9x4vD$_S9?<-4HX*w8T7(K8pPL$Pp%N?e*QG%tOGhTA6WcQllVp0&OAzK+5;Mt1 z+1xDuwhUA@=LTg|kpI z1P>9ES7_r%Nc0c48`Hb1zZGt-#ufc1jnJN&$Q1MPl~{XVucEN=)cvY2`?N+b%B^1z zMZT8UCqJn%XlIo7vZP39Jem^c*|@*e@lI3paLm4FhpDMN6}9LvQH3Vs2eM{bv}3tG zf88b3ehD?hiP|T8>^}qxwYUotRT`0r`13e4+>(6aNf9q|3mk1CnsHD4Q(_of_!fNI zXDvkdj%c3G@4G5*G~3-l@}ZWoEV(S(DVyxtQ#AYLkNAhFHN-m;MJj%hs^9PN%>dW6 z9$X`h-$FSqSRI@?b))uJlby$$wF><0^>P7xX)!c-_5Wu9e4bhGB}bTOwHIC2z@=W- z0M%Ix)}oefh(3{QX*SiSf63EBqIMiww%oEU(UoiVtk4j2OFmrRDPaPTO`Rv*P`%D@#W}C<;Jl1wTIdUXUy+(s=3I_ ztG6;2qe5G9pU|u;5Hbzgy(TA&6}>Ox@;P_F_WKR7QaH-y!k8x4i7+*>BsXho)O|g2 zBilFi$f(*)Os)7C&N)M28c$M<$YUCF-vE%Q!5oM1cO8RXde);~m~KraOXg}Cq*Nc4jdU8&`-|#*@^x(pS`d`-eC>^<*XEQ0t)vyM z@9bWQ&dd^9Gr70@$7O#WWFsZ5mS1#{tA zEkH*JKv%B`9pmj4mR5^<+{aWVrnIKe7-K=@bAaMGUiNWVfJL1by`hjNIi9L}qs){a zs35I9q7f!k>{{bDwU0F+mGx7$GcIWZ98((pwQQqlCxNL}TE9`+u=@9RvrS^@dQL^> zw1v| zVDvZ7&V#?dokx>dRm&%m5$cl*eV7G>FqJY3NT z#3)F&@{GxvOWv!enSWLr=u`EqUc*|yhLxJ&I=R0tOoi_Vgl1pc@ee8{vPX-rDk&_X zS0^=^-wAMZTaCjp?!^&NJ}Tc!-(xDMfL{2GdA8N=)bFH4bwr7w8~T`s4o8hA#2Rtk>lYzg{0V z-A%1&`8<1{tuyql*BJ&e0Jb^6%VW4hq6us1JX9^AP$&l8#H2 zs0PHpB$oDsjH!hGyr9(%jSH5bb^FHM0)FkCFW5H}=5+7=r+u9HiR1h03-=aHy@9idicZc2qvZWM_$Qyi;K2|2Gv|VHGp#vpkZ?eZ=mK8@t{WC zOZP`+U7{oQJsF897W`LC@LnhqQV=*lRWArUPvWA<$*CLV(e{VX0VnhfIEM`U#4f)> zzuA;>LHMgNY#SbUjmRo*XEykgjyaCMT`it<<6zz0DxFW$7VE7IKTfuNXAj`qjK67` z_3=-+RJS|Ips+d4}I$LM0xqWkPMsAZuXV{<=xu*zP-3@D7q%4G>t29#%C#RBmIxgon1yH!j zJfVRK>+xHCBe9IE-3Eb$`91Qdc9)??ehx;tcx|`tq2bP31A4e_J@{fD>vkb?~1v!)5F_WHb1l96~vgEIXlLi zBHqO=beqY_vY5l;)AyEnG5Y+m`#JHz zc7sm+b4jBqRlgxWSv_5z#@@YC2Zy|RwJ=C_E5DSm!}H9yT)V_Hrj@dn8mNw3zt9*U z&5|_dU*qqspMx%qJ5akIrM8W;buFWF(Q) zL#DzOs)Hoa@jG1HZXLH4&B36bh5Mc)Of-8s%jOEac~c9t;jZy?mo-`VPI7O(-}i&E ze>AXO@l7`6&>BdF`Nm~=Z=oa1zx6!Ht7jmTcw{+l;^aGJhj`8P2u{dKy>GA~O#AiD z59Hz4=WFkaRXIoT*S4so3~Azx%X|g~G7*S9+Lx-=y8A7fGms?qQ=ik$Uzi@J9CfT?~Kew5sQ z&?!ojo1jO_enN)XQBTuI&hyI;5gCT^63mn3^Fnk1k^SAT8DR|tKiUiix5F+PZ#~id z50Jg9zB&|oCQaHf=B~%UFHCml4h6Uy8u4N%O`l?lGTmK&zWwLJ_;QXqTZUX>3;)^F z3Et6^p=&vthAfUv7`(A=e&yUeHi7K0Z=4Z_WhNSCH9WDB<$h`19jQ1{DZvW1i%lV#kgLp z%{YdT^T}FOd7lqi?is%**%RkA1E<}PN~sN8&T#d?7Paa9E? zI$Y#Eymg!IOUx?^yy0Kj63kLqliYe^#V%mjM^-?4b)S)?LcIHwJ1sihRE|*e5HO{_ zY;`s!!8Aq@nxZWhBij|w;eH8}|(&*VX9;m>S9QF1lpc3+TnB0Dpwzg}iS-`vV-#ct+n%``? zKiLl#@(y#2Cf=lwhxKU~`qIeLN4VI9Wt|OWP#oGANK2R-3t~&wAcjvQa4*O@bB>O* ziV^0|<1q}4!j_Y$H@2sCPY%IXZ2A~if)7Dv+XmNd##X3eWPKnY3XF;Rr*%_sG~~T_ z&GAAj!=_tZ<#rbh_+9N8JVjD!Uz${8b)t-M1 zWR0w99hY~d&3i-fp*}e)@MU5Aii=2%>lJZ~z3?#pYDN{ zMb68PMsJ+~>8G3e^laY>Zl!l0ccSWKXOQMjOty>2$NK4Ea6y4Lux@y(g+*6hE|zS< zPcpA*$?cZ%^r$#MW?14MInFmU8BuyNXQ!Wt9R~6h~9&i{F`IV%2?lZ zZS(DI?U6s@(yfB}m9>>)o8Pdi7Ly>!9WaOID6xXr(uCQT=zyUIMO!=v^2|w`CmPDYWMoifE2a^r2#Q zS`md*C6{BH@9t1f$`siyEVBFUvxbh*&O_zry*r=vmJJ~BS`PY#ZHEBZNA7l7FPfCz z5=Mz>a@s4zUh2E8;|ey4^i)8Vkhdb=OCdD~G39{%ijR^q%xSd-5?@SCRI^hdZH~9F zL9$BzN$@yQhaRkwdc||AUd{ z|13Atcg}n`W9olfR42SpLabL3twNPfdnMIg78hK2t9hywxWfoe%*(~=-AtwIv9Z_l z1#y#hJzfO+XP(e$xm~1rT+kM1{^O!mYFuKBh)G;_qw%8PDgV1YIaP8>?u{6c`r;Tr zDe?2Qc#UZD%aKLU&xj}HU{G*j;?82`&Vq{XeChaCvgFOm*iJD>U}CODLD0AgzRHar zr&jt*Hgf5>A;xiea-sA5LIHny-e99NG*qvUu*AO?mRN0n#@tqJ%Z%Occ&-f3`*XLr zb%D_+yW{%p+cmhKT(|{f>G`e5+&rh~ILpHjkiN=&BZW8e4C@LJBQ?Yo*n)NH4y6Hu zTz#5-b@;;ixyJYbDnHJ?G0!)gyJ!v>n|fSy4M#papbTDI+>jk&_)i9nR41aRmU(;l zW#cy;2b*()X|nE6ByL$}C#1IW7U3)L?lfL?ygSsgkLdIVlCe=YM04%w+uUf!m6tsb zZf#|9PBJSy-sV>1wEcF&o@BzJR~1|-;;8}GNn_pnTzHwS6CG@pmg_6~0NQq&4MGEW zLz!oN*D~mp!g_t6^b4-ZbaUYe?dd&*B=+UQo~+zASxvcAUQ<$*jMpEd8Vw32CiuIm zEVXa5rD*(qz@N`WAeU~1ZWI3YAA7>suonQiXexUEzr`CNOo2q+pL8yE>NTJhR}X91 zh5mtmf2TvN_x|*GN0*6Y4}{&aWNZ5p1tl!DF%m!SFhXm}T-t9=qkeKP)bozYmDV;R zPW3$Y`4=(o&T?K_|NTUFyQz+K7q@pl-Qkt(){nl~Iv&_Iv7OsW;x}^RkJDCtz-BxjrwbTcIR;)u<7-Fd7}i6-qnwc0>vFaCxZDqzB5j$kkF*pI%e#? zPykI+b%8~l&&q7rdWetjJEt6ex@jd$DtU|3zdMXp_&G)h= zDAQ+HHgNra=DtV)qR4l1!{<|nlDik;FDy&zq;$Xe4n0-i=NXQ7X6MbDQbHbfd3^?- z4zU8Soka9oBKo-~Q+Hm1M$i8++CAi`dUNfBO8G&)HE@+pD^OqCdsSew- z?o4&-3jgz}c$eR|JHgwiB_MHm$3}`4&D{oN#)Yd46@@R;PIal?S&IMYn)kuBVjPwJ zN+udS^)8T-s9RH;Mp{0kYZUe?@zqraimhA1SrA$+?Ov#tjul}hn6Qw-WZdWof5kFb zyF2mEs}_my)MR|dsrC&DebXx%LzOVp5n;L1rg-Oore?kDz{ZRZhdE}aAZtpHK~8f9 zJ=bx8E{z0CUXv&Vjg&f*Ysouz%idRNzJmRO&PXCD0OO2C%qk!-T3h zX1fJI!7a*C#sA&WC74F9#uB_}B=h9d=!8IG&{S~jNw-0LlMD{5cE47iY@*Ca@&Qve z_mG4o0=l^`O#oV3MuL2jxd&NqlT~&S06CO~P4PHiu904H*IDFDyR_w-QrRf=mLVkt z=9^PE)@B;YhU!f$pSSg?kp^eFNgf^jet>m{O%)OL&Wxpi978R0X2ZE>$OS25LeDu8 zU^!6WWEN`83-rG?wj$O8hY``FS+@>Qqjgu{pRLZ*Hi{0c z!^4*_kuCYGl;JK}o}319JxmCAvoB&dGqdiBZZi&qoVrTYN4I7>z3$v9Lj5UvEcZy6 zoToM)MF*2_6O?BkDPR-1VczP77*(<-tMGgFdae#4o3PnL_kEP_2;B_piG4GK>OG7{ zoWO?v5K`!$O}KiP{40c|42pV;b0}hjJVLX2*3NB?DC}}NG@Xz5{EZ3)mY#%m&=xx# z@Y#A2xT?ds%x_0sz7pSdRAx*`F;%HGy^piEOR$!uv)-$^4(X{;Q>im@b?+vz8KKuM ztOc{^b3*ap3p^~W5VuWa)G-r;Tnthoj#_fEX|=mfy8*!M!NVZWCz~GxJ_%S&X0QND zN7k%aM~W?A$?UD~9mX2y-rPj21JxbufFGniBp*gCjT+P)tQ*j&6l=Z)zIxTBbUaz7 zi8~{RzkNr@BGiSs9^Soqp-#CQ&~k(sRjRGLD-uZUOx@V093E9jWlf7fz8i~uaQZfl zTU2UHamdQXOvF%ryhnr=ONmu2WcUp3CTe3twfNRa^WZQvAvn}}HzdGj<+{R4Yx@Xv zI$7W|22U>0%^6L^07wfDGwCUR1DFW2!7QQLGJ8BrJQXZsZOUZ7zT0RT8EF@Ugq5f3 zeX*WQAN79zU{^#Cx)C-IHUEjI`JaV98prOWXschm|ND!yP4mv6KtC!YdjH<*d}*81 z4QbVBi;7I$T9x`g@vqs?p)c-IW|g7KXdn&F$*BPyEVVQGGJR_%1w^#_o`3A#@gdYn zu|}@Vz-Eswc_OAG{klH(nu5UZP@_9JZGHUh^-BcRm`Z=ku`Xb5 z=w{gA)L4**MAjc$0_crG@L4I=d8P2DN7?DQ8s{BKhKMom9sTMGe2Zff2fW(fgKmu) zwc9Xn-s~;+_yu|(1Jl%9Om`B!;&v@JRBz8N_9SCE@4Lb~RriPcI>GEFT;PaPh%b^N zOU`V2{1GQkjJpFZ@_A=dN57cYBfsv9pk&yNI$_D zFmtV_k{e_PO=^Es?+P8+3ui8t_gYGUKFFSwpnv5>=Coo1XKt=eF?z}dXuF)`-DemK zlhiqVx`ON$1?JDm&Zo}a;dKDk@y&$?xNmA3=IS3HxFwt7?Dr@Z{7~N#raQGN&r4SN z-LWmLn}~YQ{Pj{}x+TxxZds%@M5?$a9Wq1bh>|XS{1zE@YkVr0wH+INO3g&NkxjcgObq8so2)4iyOEv&MuJpCs&Yx$h#2I_rp1wen+=9bI6R*goweZ0KSfR{cl zwDsUz^*qcvgq>3S>oS`ENQ&ffo~{TqN|VhUO(*rBNrC40d9TUmLZr9+!QDX}+{=uV zMg>h;aq3{OX77Nx*8xoSNSADzF*si1U;`M&F!rGU6H__LWQW@x%Do%f@Zw823tJr^ zi&cIe%Npsb6&%YM*5uK@*GekpJ}9379ub{zBkF57nZH$vLwrv0dhp_~2DO)H~o-Cp=?d7=iW zV=~az2SZpvTKS;m)*t`eG*i=|tGL@mz%@OK2wk^J{&{Y0OxhCV=*b+zMTQoa3i`0k0zpi!EV z_I;esXjnqqE&Q3y3=F00Z_{^*mA`muWO=HL-_eRg7Ze&jE-j|C{#;m$(eF2{@80Dq z1VgrmAd><6arRvc9|djc@Q`2+WM;Rru5EB@bM7q{i!wMXvNl6l8gxFn^DfOBuI^ja z8}woU5P|z(EE};WG7Aj1K=YNke@j_~G?<{5Q3rrgE`ZfEp+`q549W7tTgRcGUk`_y zM8u#5^)|(i&o*p-zYq{l_@snwdD;7~an^QBO;(Z@!&_U-!E33Pu#Y99ROJFnDkLslOlw%kjd*MV zRPeb#q!@g1X-|T;FClSbDwV@GO;WELnn4*P*u5)W`T4KvkAWqg=Ad{>D?P0qr?R6O zs&uD6NQ{5lHp!8Mwj75Y!h?Kx5qskl$m1<&Ol{dtB7zjFE}KL>WQW zkv?0xxc(tpRA#2&OpZqL?T^1{F1x&vy-(INOp@DXVwG^dl?7X(3<(3euqyu3NupS) z67Yp!bkKPBx$Z0?S}1N5A?X$Ji&ekUgMokr zS?}+Y!K`i_$5dq_$;I&}%aMxawYtB4yz7lP*15+ItjW62&T@wl?(PT9Ldegn68+!Z zq073%#(2)V$X-g7-aoI{=eHX?pGhIU;PWgkxAgCpMMXOdLVIwb=^FydUSsGO|1fqr z9@pXCIeRp@^~ju6!1dshmD=}@^94l2P#>t2{3o~|Ju7Wt(Rkri+ve2 zk<}y7jN7&xk0(_7&Q&{xl^qjolW&uFnF5(g^u4|fz^tu%+KvdQETnwFm|twD^LN7bypRpX$n6~ z?D!9#Yf{*mkelV{h%a`b^^Baep$y*64ED!B>#J*aZY z9*g!;?PbU&aNBpq8+ieJzH0kJF)|#Oju24N7D8tj@?r9CgN?X)MPTuNyU<^*;n@tsefJIVQ$x`RuK`Zk)Yz1YJv=f$%F43Q2F!A8-nP zQ*~ZpB24-4TYfl^qHMva$PM2RGyK#yCDj9ZLitO7dyj*A1$PrO#Ubj}=!f?wJKWF^ zEUD*C;rHfFa+z17IDLWF%Xg#TTkic?_?n1%I4N~bBz*bfUp^g~P2x$3mh;2v^QX?D zWpPUkH>Ji=y+p`PpW7wXU@k!##QJQD{4#nKsJa=2jd&Y4woUtpSUge8`FFC@9Kz92 z_^G#Z!P4Ou+BH!(xcu-Sn)n-6u{NFXV4EU>+R^+~VSlA2cRh#S9c56c@XDC#^$dW* zgdlntyz}Vf$z;a0n!S_G3hKscg*;$WNg#2#JDD%WeBd)Kc#o$z+yb*;fK+|~>4uxN%Q^5>vvx>aq1;D_IVwF{vO?un z&Bq5b87+Fk&T#|@klG2jwP<(KoEbA?_MWhrrN!N^EjniR;nBA^5BGi1vTRnpr}F-6 z)1-v z-Zd|?JJe4vE@O3ycbboeIs=`7vbVmZE#n z9FoobhA$IXdpG8$JKEy)TU?fZRdZg!!IX9)1a%CM1pp%y#=KvlY6f;D_*rsZF_FQl@$rE}xY>OzN}g%B)Dt z*+>mujv}0aXrBk$_bR?KKtRk9EB`lNFGLFSs9yH%pX*Sx%}K={^S*K)(?J&pYz>}O zJqVix<|Sk3chn%TN047a|DBb)(URMMq^lX?lqiy3L_T+&tLwUAUZA6Gm0 zzc{=S^s-_U=^jq0i#eKQ9qOJc@`edt##nJ7U^B6JU!S?(?4@tez*?Gc%nbFB}8t<^&??+s>>~n45w|TB8=rWzN2nJcj&SCI)ISZWST~ zc@CeMk_4yDlmt=Sl(8$j26@okxHQ`_~*LcbROq;&8aj_Ii%;*)>! z%U|3_{Fm6^|64uD{e3_}ee}wL+`VUuz9*)7>t0J-Q(b&3dR=KusA3}BU@$`lkY{v=GA>>N`U{5ZVU*%BY|1WaxYgJmxU&Y4^gfYDoRMG5m+DAMTICGfW0_ zeK{)OX^97ywr+scVx*MwhXlKV4x_>*i?Z5(6c75uXhKa5&$qLghK4Kou#TNhTbpO; zpe;&B*Ly_!`v=K1i9z%;JK<9Q0?=8>f4Y~7o+~@alXA%DfzL?C+a`=$mW@ThBe7>eFsnJRMwXOC9 zFHrLQ6l^f*VPb7BYdo&#ocrWa=q#FxPW2%E&I1or;nukXfLuy33PM0sWpko0O~fXZSpuIFa)mCIyIyH$6%sHef_jP^ zg6kg$({uf4&-8_Ie(J~xtUfmJM-Y7(1pXXUR%8-=4(jjYcd7id{&c#+BW$^H#o!Z; zi@qF=*=Y_An0xVJT9adgKhxGbsrlHzcLtcdn` zY-9gv_^QGINL$Tn)8^C`H5xnbPXa2;<%QM?{y>$1^mL!&S>JWdS5pCKD`%wDYfLcS zNnfA*c#I(g zf49A`kS7I4u-ZZ0?`yT!y8z!crHyg#YaMn3V5w?fF_-F^gfeX$=LPa~$F6K~ea3il z(^Aks_?|3u(9QYf+yhOgdx0R25TcCN6~_x|n?H8eU3ROhpDwKGdIOteewyc=p$GJl zkm+^RQrz-^#S7gWBk$T{_=KgY$cSX>Z1@i8bc=D_gEfl;q=3Uk-T??FmyVDHfIKqM|EL#V90xuKoW5i5O?B+}ZaQs`dCiA8AoI!zMffnZd z@c~GbGC7q@QtgATymEt8)zvb-6&d@2$n#!pkHddz%9Tmv=n0gv3<^EJs6*{t`(|w7 zUawd&=UAoo-&Sj`ltU_a9(?;0YJImT?-5o_GD%gmGWPmij>Et|*VUrc_s|26P3%EO z)i~j+aNIa(v>>#zI_@=id&#!enkcFzK~!m}ylZ*9_%E~QT^|1{f%o;{o!3BLpTX~o zdGQbZzR{cS{_yA)ps*^LyH${_s!cT;c$53F_Gg03h$W=xibUzf`^^-S6n7a|)zXm% z5+K!YuQlt$ElhI%D%~4C9QWj;Nya{|p_2?)bj1A9%PfD1WVQQI`OJG)415~cFk!4< zc@7;%EXthqTGJOyX^&IC{q>{5Uy!f!vXVK%XBL%rj|VN5y7y5cNhz~V(MUyyC&8mn z9m~RcyvK-_rN!b^oW82uWqudmk2G=PE%j-!4`Q9oC3G(a1Su#*-wjM$MF?y~FqG?Z zeFc3nads&ehKlM23O2>IW5?vZ=$!ir@rwr>?>BnG#buJ0UcY*V`m=Wljh+a#*ZVTP zw#U1n*FK8#?O&P7T|73`ffy$lb>N5I(U-R}TTcTybxVcVB+1F-b>uO!YVm!!oW#4K zcS3DKTxpqu1A9wF?(^v1{0-&}(4j$~e~h1^_N|J_SKgQBMKI@V1QMd0lAIR5fC78a z-SXJQRflZJ2#HX%;21UOkS)JfD}`2LM-K_GP>AA1APBMvhm0JJF3k#o;IBW79`04F z5A=wj95NIe(8iy`nlGN%y(Tg$=F^k|OCY^_#kCc<`h4LpnJFYCk!e_`@aQcwvhRUd zmy}hn?q~v%S)iK! z%$+Vk_^cV=uiMQmTCBahDb{~WuYq_kRW8JeH5O>85HILeHFqKDMq)*OD6QSxit zuhfgR?4;mv$+e_8q%)dIb%9#ab)>5peFapgNR@#MNvNYEa@@9C1RzzXTjR3c8K0H z)a=KMTKp0PoBSlNJ~xo*4%B~5suB0)A9iUxTzM+LjMsC}ZjJe2psLrvyMS<3%4lFA z#ri#>!!Ph0vIHJuhe!wl09#8*>{f-1^5C+!F0xfwl&~xp zu%T=`-3zF&bLD2}aXSbz*7h6Ud-?q&LK$Cgd*NXWH9BN6$i7N9Kzmm)OAR8X!!<(; zFzTB)<4r39N;~`#{Sz&qzhX-m5oO)KT47eR9A(ux+Zk+g0tv4H&+c+Pz2Jesx0BBn zruYs?K1qS2#$w#7z!5&L44m4Eb#z608DLem=)qGde`rTa{69^`aVm_sv>ti z#4js+LjVS9Lj+5l63vkY&+ZH+eeD!2K>u{3K*vPEPfygF@%e%m8+lpue)F|Aisgez7YJySxHT$_@YH=4G^LC5s!`K*y5&DGQVn+P_ zz`~m!_UP&>lQ#tNjQ$^c?-|xqx2+9J6A&Q^N|6!)1$;z`NQVTe zD$+zL(up(;gx-6LbPyDf4hl+>jvyq|&^t&#C3Hd$5FmsAUwp5<&wlpa@80K}?>pbW z^Dozxm6f^X9BYm-$GFFR-#XV0&WUDc6IM zw1!z=-EsllsFx$^hybCf| zxXV?BKm4nBpIY&x6M4>0byz|+ca(7L62C$V8a`g?=jzEgZ4hB^p)erR=*EcL#_b>e zK`vRpRb15sz9_!)EwW(eWZ4qJM5Bk&lljT!P=2isMjQstsGxF7P>{Y`ZLV6-3pqUf zR;Hx)sV+Uw=R~qvvrX5tWdvY_m>tavO(|ga6cP<;CX>-az_zvwY4$& z6HCRNe><8q(B3q_aUQob)nuj-zpNE+&6^K^rk_M~2eI45)hEknZd-v_?IdQ*vwJd5 zb~K!o@oFwbj5oX?`psrEw|6>LE|p$Ey=2Mvs(6yvFZlYE`vngD9Z{cE3we!=!P-TX zsP|V&OxqT&@C)Hmz-pNP&XzRo861g~1L4AIJetwn7JUf{-Jx7PlZ9_U=Jo2}*|U}i zt({v;f$WIIHbZi0#u$751xM!9)i*cK2J1}wPVrtZ{P;DI4zsirwx{8s(UnW49ma^3 zZCoVKFSo?{Q|2&=CGCq!1zzdDb@Eg0WIfER3M|!mYV9?+tb}?IPa61+ zYh9W4PLZ8^tJrS!nhd(!Tz*a(aXd|bOaRKVA)riCj0PnHKG@fe@?|OBxc$y9S#p(5 zRRiiNSLIm$Vz920$yHE8&epAD-;z*d@#5B(YF;=`#)6n_<4i5n2ho5S4yjjf;Ea-_ zJ|~EPKLIGmd6&nBpCqVpoei1J&lB&|_0D6`h64f~T(%ukEIndpp9dn`f3)f(!~GRq zT=bh-pF->PE@xZQY%Jz1VmEs#JQ8p6u+$&jmrYB{WHc-<@FM>DU|wwpX`w7jmiG33 z%Vqm)#?qYdj;-}QQX=wa8)^7+QT8;dXs=u_gWw0LxP`EzPp1WIZf(RkzAPD9G{NT& z)ng;5U}RUUb{gM=gOnxMNjWE~>R>4lIL)F?Wui@BI*S?VP)=2SUyU@2edu5-wIg z^L$|z3MY^m$OYU(O}pbSw$maj9Wa&DehY`7^EvbK@(VFb9f*RU4YV&I1zJaExlY{4szt>K6fIA3#mWK!upM(su#HLemDJ<2_jfnzUZ zhXHb+TZ==Yn}Ty81IBD^YT0x0yRH1PX|%`|cstsT8giN{{BzP>(egsoV?8@Sj(4{*%lwX zh&FUf@2xKwTE4$B5XH!~t(tutpd$bhmu-|lJ~Etr+;w!h@z?tFPQ1rX5Q$Hh6Q5u) zb#>*xiCp4hr;G+R{TeoTb&3O=Ra`yy$JUO301Tmr_g)N=HW1oHYw_Du2B3xNB!jqtTFT(Kdu6oUH zUca7EOcxam)o%WfR8m`;g6Ox6sz~vRvkX+8`9kSTx6kR@7qvLWqb1~RG;l9UoDC|D zvdPNQMtOyNa-C7oen|_`Je$cJKey$A=B-A^&&0|nEuYwRN7%lFhFGga7%ZYr9lLoU zu%o+nb!pOtw}foIOutm2gg0cZ3%=m^LbUu0Yz0atMTKde_ z@?Ztk`lg2g1lw+_Oq*nsk@Vm-4KB`@>NzXXp^dDd9d#mF80_)GvA#CW{WtacdjLz( zKzd+%^p;D56Vo%cbi=OhDJ56`|J2Z zQe6Pr_Z4MG+GKQWcfpEVJceDJe;+ddK=_ei9q1Q>+i1%c!zeS-m8@C6*d8D+NCVMA zd-WF^#a+UL#mU5hltLXfiox2X&{w)DE z=5ny;MMe`5r#31-oSC-Q_4lAS4+PoH&Ni}q5={*~zJ9T-iN80k{;f7P{AQn#B^O^iJhh}Xfj<@zM+Glj{h5-C?YurL9Mbz@aE52AVrs7Tjm76^A3hF5_cfI^uIri>! zm6hSLN<}*`62kDJ!0}nwGj)A!{|n!KdN0Iv7H*Si&HMJ*q&|Kr96BW*oAeP~Iec^Q z{vjMoxt8pg2{Hp`Sfv7`o;svol?O#dN&E6kUmDdeN(Xfg^RR7zfShKHN z3x3e6py6UrS*AuqY(dV+hFuIG5srz${=gg!dc8Yxy}cB>EK6Y9WHnK>7HQ>rf6&eq zQ5OvuJzZUIIDkrz2=4e%)-At}rQRb~0)vF>^2(gGLI*18F>~z%O1GOtS^x0Bh+Mtp zCunwXV_MWs21XGJ!3mbPrUU0JNCW67n9HyBpRackw`b`Lm(}|fAJk~{`ux_hKbUB^ z9KbhefriVCuz(A7maf68*oP{(9~1hw3rXf0IWe0uK{YG^QXcuVNIzbH+jIP)G~M(S zVgcKvSa^sEeZqs97E&~OpFRlKXG1;;&m(WLsM2eEeRBEGN{bosi==RxdG1259HOQQBS>xi)IV_<4?0O zy9?J4R~v36h*SEc#XJE7Fgr#|1#>TGZJ{a69>BcYIeTkw9aWe(wv~%%2=0y?CJI#_ zH2#75Fn#y=QGZyhgUv*~|zh zbmoNPJ+d*6I^i5;cDa#~JKrczC>s;MsxNxo!bgSQA?~FGTjYtJwjH6_0_?j?4JDjL z&cvPEL{5O4G066={C@3?1us{8-Y*FO+%es0yQvt8Y9l;n!LDC(_L5r-p)7hESN5AE z*#^w)L)N|DzD#n8_IEDOk^qF?{NWswz#bJ_wj9B52;Q+<{()vaD;=!g;YMltQ+#Vr zJx#4l2iXaqZkhG1Sf2?{d2QtlBk$%|W(tlZw0qp!QvAM#wWE(s38oYMYE{0@e-%rU%dBG^R$6AQ>dxdjo$GiwDsX`{AQs4W*?)PPGvLJrbIZgyNmL1uWjCA zk35GSqdh>Qu842N^+ZMTjk+U*v8`?Q>WuokLhrEpGy8YU^RdQf+3_t*op7;xgWZKDrU=&FS9yaDop;dYF-3BMEH!bNC(VPAI7_= z+h|_Ay>pYjCEc@a9s-RD&X^#wPx z)NF7sbo^`+ki$|*Z}&b2ed;(8E-(6(58Qor%(T}2PT0L8!3fP3wI_>e^I^5lmj;>c z)B9&HV8b70!b>MSV~|~;!_yI61jfMgI=hL(37`)LKNCx`6kSIwW|LDAvR)cj+rLNL zBt8c5t9&c{k@QMtC7(em@2vAYzG0)1cTQ6v^H&-J`{~z-tiYJ+5nKI+{c4?usklPMnh8DGPQ5ZH8Y&mVi@>Dq_jZGndw9V za@E7ii^MIvI_7YOb!<#L7pU{&_0dh}jvuragN~?#i-#)4oH)2SN6Oc=e~--|1eDzo zEp;JrTb0@l#wLtt%$5)oH>8$j{c0EqJBp6+JK4w{4PeA}-5a4~g&M=@JGZ83>hd;+ z)hlk_|Iq%h<~H#%@oujz1(>L+NTAstM#-=RIAEwBJv}y^=H?8bhirU&M3C4Rp)lSt ziRXQVH_J+71dX@KL;%MRK9-I5C|o|vEqw``dNkuX*gDg%xk`&QXV?Ek;Dh=F&dHo%RT(Vws;T!j7 zNSq{!j+9u}X-6ElrT3d3>;L6ohYin!;>xmM;v!v5GRy8MAwgmo<*h!e*m#WOtXj@} zWhZnj-iwh?z~67b?i?u{Ab!FQingfI6WklcV!FE`fnw$rz_@U5hli8ty7jT)dNFa`=snZ?-SOt8}Yz&a=DGtSu@);alBm^5NXb z%g;qtWjz!08;_SCsx#iQn6H|tU+J?a3L4&+1XukQPUHBAc>FkJNSt_$y@k%FKxgj#mFyIq3}x^%hgADkCO`+|b$7%Z zG8lCceSv%DAt~aBqbirhG%@PcWtlup^jjZsVN2~}_J_*ZmeD|6a9ti~gL#h^0a4*$ z-<3W}Oxjs=eJF1D0TUwacK&M~+ljCv+tdz?KQ+*fOjzn;r4#K!bR8+-mc?n|5 z4BN7y(A#XQvGvh7mS@%3`7R+-^@(}Pn688J-VCA7Aj3LjxSAYXzDbpCuIT>swqyR` zj6rKCKdVs^y81HpWgC{*h%Xlf_0GpI8Mh2kLZtk|)MTMek_CEvqMR|;F+1^IDbk%4 zukA~3`m;t7#A0%cyU*_#nRa9LnKwftteTF_lZAB)RBp}`UuEbq>h9uGhW4N`-mKkZ z-R9*)Bp?|lY=y#TifSCDZ!n;Z+%>*w6p_glN}jgoi?WtmfoFXck)*f1DZBD4C&rk2C~Ce zKU&y6w!fG2`L3nYqe~;O(`DE@m-A<7_VmEQ<}q`e$+Svra#P+n^R}*Z&AXtv$$om1 zhc#Dc{2yLY?w8~kgUq15YMZ=J2>P{d?sXq$c-tc!S_5|HRSIpyYOur5`CGnANjY(q z(Xyg2K&j)x{;tOw`vUa>&7QEoJadk*fBY9OK0QOcVXO(+mubx`MmNh()v}8Wt-^JeYokT=<@%M*25^UUf%X@VD6-SY&wAr)~N=cUcbAM0GJf; zPw6mnCu>!tNTJs}j2(@$PPrCt9OFtpu^=tu`}P@#1xUeTwzU}QM=Egwe@y}pH zI;7x$l#N&h92+WbL>tW#9C9 z68_^i>C0Y-Xq?gPBnc1ZJh!xSA8Ba?P$FxPJR*5nxE_gAb z*vhpYQVUeMoNzn3eMPWz^K6;KWfa{pFXRMgaahLcWwU>N2caHY58(8 z{pGEX#HoSk9I}7lGrYm7pMS1vU(}>Iocjy;bsCMQV_G7OJnA0gn*A-&?w~^A3D+s` zGlhK5SV;tM&TI7FI*NlrnDRH=+q9`Ekc&4(Z%O6n#QMCd#wb}1aZVqVy?@oE9_4ds z5`^v8mkN+*ZK&ZzCla!n^zzNF^LyZq&!4(i9^0ZKP8G6wMF9aFsXGoEM7y8^JDXTY zpep7y_mug5vEfz4bp1T($z`jc&_(zog3tnouSB7wX6#!Mk48q`c57r!^;f$QVbMuQ zERgi>K4wB#4}`4V%Xrv-wGy)Fadk<&{G#BFyfD|u$v4c26UW&t+L@+^z)u}NBS9gU zoixpnpvl6DA#!1@&6*SS1lqO_Fu9GSm>a`J1$?U3Qw9*-{ev;Hgse#McZ^OL(z5ir zEh9KTXP%fU{#uGHYWpaTPL^!Z7i`ex9yk?UEZItuT+YNx zVzo`$64-T+WZ?KyoiE4IAQy70Br6k+-JxxA&iF);(g*#1iduI1MA7;~Ro$B$A7-R9 zf=qiM1O=0U8L3c}f%;X=hSZ1PxU6}v1%tJwpM&=UH{8U7l3Q~)s2uw6+aItis~U+> z_kPOy_H2Ne+0`h|V-xru$GrJZ4o&~Z=ZKBaRa}aR_$BQ6!fNlA7sia$wmPx2aaQ`P zGl;>RPM3`AjhlVNny05uZGOoJ$WUhlZMDA7YVm|EhV~VUkFjpokKgJThAEx3!tWp< z95DmNkGn!gZDSgZ6gooXXFy${9IUj}6(uvu_N( zI&ba-Y_7&t*48ia+HVXScV>kqp1 z2lP)eEa|+fWb7d3ZbP4$K-OHsig+Yg2LG{8GK22vd7jiDV^%d@6c;Y3ERrc zd5ggekRkFbu{A2?cL6&N|yb#_1muec^qSXdJ(Dj!~7q??vb!?@u zR3VayDNlZBVk~K)?87uEjuh@fY0@4Q(T`uC)*3!FRxr&H)fG^%=d7v!Ed&)IPSH|h zyk?(bq@;!H^1dI`Lg}_vQn%EtsaWwbV8mindRTyC?DIFh{O!3+aydMpb9vm243kUQ z5t?Z;80b4fXT-@F$@J!XuWhMb$QZx=9p3%KdEHIy%{6o32WOwNOByrgdNs zl@Fb%tyR#3MZWN05iIY^Vk-!pQb%*9{`n7`{cZIXX*r(91Q5HVoOJx8{Fmq2nT9Y6 zo8CiSzkL};A(S!k<}?=tgRpI3Q1L-eW{l2nKI2;gaR)WEFJN4=omH@0|5>NtD5xT>RJ0y0rG%hsw( z#$6$w^Y~JUGJ6WnQX|7mOc#>ih_IbdR}&729TO-y4ImhY>Mw?tkp_&OY&XXGNKT4P zbdWgH8$=4WtrcGGH#D&nSZnfRPWYj||8(-yuU~H(q?%w*pP_l)Sr2c9RMGiD@peN9vC9Wy^Wl ziQ@5Yr9AS}7h1#6aCisKQggX5_ARzcJ$g5-&p819J9V!B4L{c_BtIA>2LWQb><;$h zT{4yKFLzM~xH9dJv3>=08Wg#vp6>E#joBk)5KFpV z?(Hc~KE!kOAEpKE42zNKXB1*V=g4W%*_N+t5PQd|9S&fjD4*!$Jv;|>*7rTD!6+Zz zlhNP7<7l=}Njk{iu*9wz!pq_p$eCwxL~iCaT8^msL14`H~~ z9%Ws@*lD+IhdwLUlNR2g354Ww&rTB5N}@bbDtG9}3Go<2^m^iR6gs1U8!3Nx*)?Dq zd)W2zm)NWqA7#jD4wlNKxxDzD#5l%zq1A!9h((o2zMSPV!*Xo^Z2+~L_!k=mm7KH! z>6g-I+N|{3xZ~@s8~vE{f{B?NI-hnBfgg#SAG6w)De_D}y8b%;-MGH8ZpEXjSi2xo zHGhca0?(dah5+}+*M~kc{91*q?h$^yIZY7H9QuHh=v_XfBZAp?zKxU1ZqJvkGubxt z>T+VXUnWcjE;r>p!6OM$$mA~XbKB1|p0KWTWhNidpI+!2d5~gu>_@#@F=AW1H%3sT z4Em4&#rvr$T7>EEd+%@O;aj|39)I)g%I8{Ke4bVJP?4bAd?a-@4-D9|Dz!mq9b3mP z%h%yDg#2zCKR=&xb-(6`$V$GnA9IlOLiZv1lRmQNsm=2HICyPa%&X?P8NbqZs~BeN z4GJo}{KLtroBuAU`PVaHtQ(~;+OqOVP*9NZMmyh4R>@AjX(MOm7&StCCsFu`mADW? zaB<9`Y>t}Tlvf5V-i?bS55~9zwB!1Kj9JJfH)Og9L zXP)DrmLc8fb(^&;>tVHJZ0DG;kzlJW1VUj zUu*Tu)YodIlBacBQ~s_VrKT$!tZeSiFB;P~92Zav>V=yK-;JRO9Ox}FN4tqIbPhA7 z50|_Rk6+BwW)^l}n+q#T8QI`+&yP2{N9g8HxFQQ_eYvQnF$l4`6LXP%ZAoG!0@@t~ z?KaB5>BKKgb`P3R_atn0gz7_kl_h%f%B%qX=a3(pE7)26b{dklRXG;B4(T>pG>$UV zQqal14tC@EqI%~Y0cM|o;1*FKxT1|S6TPfZ5xCxw$j$nuG8d7qGt7jeVJ6Q17@rVM z{E+!`9y|w(GlFk8x3G;|{*IP3Yq<43QS^Qe54r*4}G0(Z}=3+%HyQc3= z2P$)xuLxp;w_+FkhxnY=)CEXs2Yr$8P&EBktiG_l=pTo9yy!^A|(&Sql?y

z8?~l+4%)4i6((jJTw0)5c|&Vb^Ttv$qXl^@$M@P&8IiT_rXKL<{SKq73@vhd=tQcH zAImp=Vc~MugG{!@9Ys&80xhOzY;|y&0L3~xr|%DP5=%T2;(B5f@LmLIU#4eFNBQ8~ z{=zaOur#Wtk=>d{f1)jv86_Qc{Lg&-%gK7grJgx%*DBbwn?@L1? zEF>SHDa;&n=3pC1)o(j|2h6qiA|~UHZO1TBiIm zIfApYo90-c0zKkcES*G*7s9GG;D%D5=8X*5Xa|`sRe)X=Ax4UyK z*|Lg(?P#q4ah*0EF}qAixhf~5T;=p7#;^L_}gz zaGEmw{8Be8B=e{OLmgEPZ9!ZLYygn&5RnWUyQmqyEm!Bj>bcFHFGHH~&MQ6SY>(xr# zw{a1Yq{y~VF)3Eh@j|1ETIv2ntPDnLS->OX%+`68#p|L`az3}yvDLJDIy##R}v%m z8PG6QpOMey|E5#ND%r@CweEGNA+~ECyrD6#P?yKrpc{zJRy(;Y9G0D;rC5thf99hr zx)K=xA5HEI9ghm6_T1yJ2)n#nWfZL@pTc(F5CL4$WA&snNk$qR`0lpGGXCPXlEy0+ zl9N*BU%em~$5Uyn$l9pd&BCTCTc0?mD(=w#s&K#+3v#Y#C}LF=g_UmViR`zedbZg0 z=KJp^rplq;-@%g4hIZ}QYDDz!wwY*HQc%qk{_ngH>eLpwX};2(2;0*2eZfV5ALC8%QF|ep z&O%*a+Mrq$v=OC4pTu?XYn=>Nr9$)t;=kn(5-SC7eL0*m6=GqnY?6vHjbLGw# z4dSLp9|YW9`^dGXYAZ#`V$86%@E%22^U9ruDVognlbD>wLr$U2uO>m=${f&fO<8o4 zv23R1ukK6qXV*oKZKM3rp^EeYB_PubX@U!=pRPFHy!UnI*~aHo*Tf9Bo!iVgbJ0%F zIA%GuGo8SVj%?!Gee+PxV$*z{L0%UoM;D>zqDRGCLBZSM2*zK06YF7X ztCs`Be3L8G@CgHie5$(E?{l}Uy0BsMZr!Rpq%i-DjJR|xS=dfLmPT*TepAJheb(Z# zOn7F0$!Ztc{uQ>3)if#3SpLf-?MQ0v8%q{Y-w_sg(xZEnzCc>CIJId!-ulKe`TfQ; z;dtf{vHM*&R8Pb}8Q@RlHA@ryRv z#N@z|ktSX!&#u&MX++rll!TvRv(p!N2yD9xFoMET+jXKNI%zn0AyeWhAFM_Pb#<+H zu%5tuZc7}KKPZ&yd+lZ~nLd=uXc%SuWFJQUBD;c3A$U8V*(@D zwqnV-uNoBDw9oA7B63h;LrRMYjK2lubj>P?WjCSfz10Y zI3@_%iDItNkfk1KUb+K&2=g7wcyu)3s6F zr@l1F18_j!vAv&&W6Zzf%3~7ytag7gP~B?{rSV{{9{a0w zPzdgiz0W~inWti!FrQj;hLZ#p=<^4~-7Ptuy&4!*PBM5DKro@cxhHMIFO8{erRJ95 zK^WiR1g>zsh`+MJcoX8R0wNkLT4$2uPS1|>=r?s-!mObP9v4(ppY9XkbkRCMK9 zf75Ql8T1zm5QOF|+B`iTQ-@dM9G*}Eon~T5ASHnGUa{*Ii=W=m1D2o437=SUtYRvo z$lxr>^AlxRjY-_#aJHpUuodTNxg8MS4uWppSZm!b*%up9mL{H?W+z%E;QS8C2myFK zY)Aqx7#0TSm5SO4MTW7gg#S_oPJ25Bq-Y#LZy+?j8`zX|(VZV30HLUia>>GPzJ=V^ zMg8LWy#$#_5H2MRlrc2H!fo?hGW(AtijySnz$6@t_w`qjdLnYxw7YqBB8N9a9RNr^1r+4_?lTLbOws za41yeCSDMD{IxDm=L6Ro&mipX{#rPv>*#6X+c-$~h4wYBX7kfZ|JZ{*^)}Jtz2{*D zBtPNxpYab6=0l}ee{>v{^`fIeDcl})&z-9GiWwY?E`|RT{(c{f|6FhR`Ks)z z^;k8{agB6gvhvUkMA$ROYubu>=j%R-xaaz>F*I8~n8I?psv+_Y_^lG+H;Em(yW__^ zC!gS+R~p+hr8F)G)Se~`yke`IxDAev04>sIM1u8LV_!MOJl-US%mu=|8UXj}JJKEn zd%B<3Sh~4l+CvR%jPck0sBDReFsDxIuvQB7op-b=>y~)RJ+Te9)&gHBDBfuO^jv!r z(=E%KBM@|Zf4qc^v%<=d7>d*D?eH4DNxHS`#$+P+L>>_ZCGG{Z@BO?D((Z z%(Ct_*_19RF7T^brooc^9Ce=pQD`bz{-Y?%e=!dv#a<1k3b?nRgumS#|4S~bxJqB} zK%MnPf#O~O!J>Qgr99AyGe6t&I5{!SQhA2DC!>YFDnxphnd`n~V1Lj&Nqc)Fj4=}Z zeuu)R!lQ-)vGUD8A1zEAGT4)p7w!EppzlPu;gbk3sk?1g3-V8AR9uZgvvey5>16pw zGCbyUi7lJ(K30$byW(tI+I*rH;mP3X>x~t8RE>$l zVXpi;(k6>h3j+rulPzJcQ^~+%95<-dpbWlk^10xd57ukm>Oyz0`N_%2O|kMdwgJ5T z{G+jKHMVOuIn5&*hZHCAyp}Cj{dRWQ#9+U6X6uU3ebFkYb(FQ3+J~vp5@? z?<%NO>Pe2J9(M>?o{;s%Gb(&v2-AsMrIFVI5<_&E$oRL}J{SL4>(~&sg7_GleD(}E z$-ye4?Xjy^rVCR_Rm2Iiy>A;VYOlUu@pNE`p1xo;OrdvzqPM|jbZR^_hks2-P$jX&FfhP4%T3|B!Rv+gq2dxj40IX=q@n>pPLj1va zk4w-8Q+Y*L%gU5UVUAhs(f0=p^~pJ}HnjydsH#W2sa#83nT0#Uu=CGT{jpOyRCv)s zuCm@fpPH+6+CRb?E9g%o06(v-)0@%pY`(~6+EB&>$=*brtD8H|Y5v&E61}=pH8wfT zmQ02(j94U!EECv}RQ*}<^;a*$J+%8BBi}Z}Jto}PE7Bgw6EVn%=ZUS%+6^OYO7R4b zo}Z5i{G(r9k*B8QY0+`B=Mu-(5rM;`hy?xWYDNaVzD87x?Q0ybyDPpE4Vk+nrW7PI z-p~Ip7xMpdq}!t7Qt%dY{83ldWG0kCo+h*D3aj=CAkU?xuc?2k;kFp@DJg*f71On^ z4CUOhy34Ky7t|1INDvhDHC>`k?abceJ9x-WVCPU`*V}^rYoa`4TCldjMyd$f~()Rt&g@gCx3O{e}M!~^OA=xU!!37-x>B# z=GlQF8q0({>~zA|t?x-IuNT)gp= z`p@?zj~tR5j0}&}`gW`KzZR>+1}k}adA*l%d~TfBuWZB2kisa$PVuz*ktNq98P~-J ze3zo6FYXGo+JW}c9S%08qCo98{$ze3QQE=l_B__LR_&4aF*04_O&R2uFGEMWs$LiO zk)`y`0ev1Kliy5#n0rh-`)xc9YvZ3CMn61Et=+gFNWRgmHOuVjIe=*TU7JS@hAmWD zX~${*VHZk@WU#?x!MylCJmf#D)L*Y>pQNVy!!nPX;mv}hRdaLmO?ymd&%!kR55bT^ zYC3~iD{jqq!nb0aefU4ckYybAH2-$n5SK?}J7QoH5x(DSdVBBE?Yi1mlZ7Q;5OQS} zNQ9|IfatHBp@vvQwrjg4ff@jv*;4`NwE=Zvu=ul6ds5@K`O z4hzTU{B6;76V4?l#AqBn1qPuoc6%tY(mSZUW8Q6}q)V37L_xW!aYY_fos%uSd$8!} z`rLh=+Xwdd2nzwa5HcaC*N3yiEw5NkM<3TeG9Lc3Wrjp)&W?Z9cUVBhEp7G*yKio9 zAC_&T=E?uIAT+ikie+`f*eRiCcUg?`68bT7VoS#jCE%cxjEvDa+;?G0Jfmq^+G+0h z|CnJ*J{C*!e#yOL9guN(4!u!^yqA+P%VpSG8w8X*K#?Fy(}ipWpDNSsQKtsf<|?oM zU+m)<CoS-V5+pknwrA!g@iW_KR1h+v|t~x1p6i!^^sVvyeY+VE_ElQu*?0 zC4XR@OkRI^6*K!AB|Kx3Sz?EY@)Y^O|8{wrJvAS@;FnW!=E4iPXkMAk>R%tK9!O9wD$kyE`OWYKi^x)j*dMS!%_b3kN>gZ{>L9J z#FD!?7W#9G|2vNHzfv0|PeaykFJSledGUX3JN@rWT&%=zD3wH5as2=Mz1<_pQ<63J z^7Fr1>;IU%|Mmr9gXEP24_+*m`)~jBKb`Yo4)T4I4@9xXA9@Jh-peODz? z?08n#-cY7&ay*ZGwl;Yk&Om;8wQE~j+WG=I+7fny50a-2@i*erZ-`x{n_V|EORn1X zD$*C!Nv-pitMAg&Np_7&7Faqs9j`XDKO{$D$$3(#`n%@2_l_zm8K2ELk3P2JGp>w)<;d9#!E9%Xe01 z^Z26x!cMFE{9=zD-~kWKNaQnBL#D>9wfC8<_yO&) zB5kc|+rh_SVS;xt$qs!7Sx1bkML$HmMn9B~{|YGY-zwjFbGF!{pZ+6?YdAnARkq47 zmw%6J$PNZNI`3tx1qZSvC9>o^{@DBxbUjPfuh8k}sCiws;@DlzQ{njWOtd*aOM#;Z zM7AC8psx=*h~o?-3XU~RH9Kr&PJIsQ+`Z?Fvm}1s#As=_%6~A6RiD3qE{1hbhk>nM zX9(%3a*O%Q$9lc4MjU))w&%_dje=`^e~ttHl@;El;CUB-9nK@2+jMXs;#cn`1yiGB zDR^3RGVC@xOO2~h4RyuRWH@;s_Juj}F8K&qC0_T}Q^h~-;(vJ&?6t|^`LaLBfYO8B zU1#gj*j`5O@gC<0y}Lz|vlV?l*qiWRy3!7YaPSbwa+JtL`0X~-=jbnw-_n27OzjNp zwc(NV6&A(GJTrV}0Pyr$k!}#h_EjxAwuaWYyIA;qYFW^6>IoqhjjfKcfu06)_G`p5 z76#BVeF!<1L-Asf3Hez}w~png8M;|1!DMA&?^;+WW&U zI?=h^*(9--V@nUu$-96rXH+INe)~2S%ON466QXhbDk7@ zEm3MZe^r^1#X;e#?s278c#A&|$c2EL+gs=hZ7P2)^(7%e(eIDSf3rcFDv)0SvNY)T zd+~IaW)Zd%y=36+&op1R;L}AC>R7_3wdXVpKDre^=aP{%zU$lItGKE&v~esD*Py5Z+V#$`^!drOlPsa zEa#43&M~=7tt4e^%3Th8D?_?@`)9K#w~VupBC(^;eJEi|hl-ZTK<9A#8s*-~;KLF_ z5z&~d*~FJm$gTD4y;_5$bCDyDeiFYlpXB5?W+%jNDdnRNZ<*y`_=ONpP7T6xBI zz06_#dznMuyE_guO+F6fBj@UGWPg`Uix)o=WR=hwMmr`5KI*|^3la*+RI*jn2af0p z-T-_7kX!nGGj-PPySd+z7+QzFyey_`9Q2>30hbXkCyMc8bqt~X{r$L?Vhim6u&Ght zJWGyHYb*5%l3Y{0wXb;CFvP97l~)Q0KX<m%i?vy z>b}wIXyGzcZm(evB&YP*wPVcBd)3uvfNjt~T+v{Dy>wmZhdUyj$KZwe8DnP2godtF z+v_`j{<$}8jb+%QJ!%d*F3nT&Pp1f>>Iq17ZORJiylU3^fvr{cr-ymToo#&HPwyUPV9{XXGxrD3RZ;G0%WPGJ79pWAu# zS28SztEtMl?R2~|>$1}O&cRZl-zj+KVGs!uWht_R>DYf<6PsR~n zu5#Ux7gYOYtEh3CW=W}Dd7HUlh)oT~3A?;=)5Yaa(1W>htLj@4YdINyJ9DWme$#n` zu4+crjmbb%>)AmMTh7QYV-egqxYO>jVk-3!9ZsL9BL~Sk+Cke&<#hiKC#5w?MAhg< zcn=*j_x+~dFmHJ5L9T)iwmK!m^I&Cz8$jS01cID9{BE3eIV}kVybGHFov!Ju?{|Zw zfc&a*5g80qp?hs~eP_L572NmOSoaJmJOL{>X^Mz41*f;FBJ@Lv`%+VqAyThnH0GCr z<$hllC#x^D91Ljy-%*5+Uv=z43`o*F-!5eCjzMe7`b{b}dvJj6bk!-x_6ZjnuN`>s zTL-77WWeFb>2qNff7gF!=H@pyNdcmD=`|L2PxQoHDFS$52B20k7yuK56kGsq$) zM^cYK@@8|%@Zi1WWJaroh6ddhp*Z&R(}m!rRdOAmY3Kb~hgXcnB8|;N20Mbn4CbY> zOJ>^64L=%CR6u@rSizR8rzGS&HuWE`=Niq}zs}F@dFfdYNWuHAedCMlw;T$-&L@MJ zzf+x18xN|Tj-KT;^xfpP{r(h|tpqig`sVID_1)Pv&}}4jZ0jtKA+5F&$~Oxi4|RT3 z{TLO$zCQHZ0Y*8naJTYY)n-CM&Lkd;uoM zO9?JdY|nXlsPHS)KydQW_OvM}@v(D%W(s`O87@4KBUe$5FmdhbZpX;;hU{q`H19NN z7gkhA4dg0R*Z5APb8s&oUa59QNmBM7P?j<>L;)8d#jn>O9FNy$SmkBrNPS3>9;|@2 zY2Ui5l*^;;J$UVd%{Cst_%m*V{A;M`SciCDeDgnFb$A!x(h#)YNj+F*{hXaq9QpJC z1E0-Zq?G$q!@azLsy`w}JAI6QWlO!x0@o`In352t>rTsE~j3z0#tQTsn2>TeK;-gTl3vYzth8K--BXiD7 z#R)k-O1tHt3Zd0IE;Rb{z(@s(^Uhz9>ts!z-KKeai~TI?AiCk-4&AtE+Qc4Ls*_ir z^!_J6CSIAUNh0XiTOpyf6jkRrFgS#GaJi>W6m7iX-tqnQk7P7?6mb2s?dglDDhC|` zkt|0hi5WzME@&*c;!ez|wlCX#rGL92ESh+R?C81sGvo@9h{!&Spc>s)+CUpG_+ymqyYh zEZ@AvACox~U8EPx_3O+3CItQ;&@Nn0kDQ70`p(~uw^TxHEMPx}4~V97X{*az;V}qexE210 zpJbkRY>eJqpE}$e9u6-0E-Q}|O}&b^eSd;@+m{kc#Sk`_4K*l#zD-XzJN*|%oe^=5L)N>4E*f~xZ{$4`@UkB`o z%@r$4ODB^LqaWE#@FjNn*Y6Kc+tY5}te|{9fZXw|&>Oc64JjNj?2}S5L&8HWzQ1?^ zQ>DXX-tbglv1^*F_i<(z(&6R3rB)eIUFG!Wi}|`fG|-q~5lt?3V6bj-6+2AcL~3d> zdA_<*kbdX?Jh^`jLI3}|DrtF9Ue=b@%SY(<8R8MMO4R_&@t~r=!%F|U%=$ApPA-nI zE@fg(n+eTYX^;$o!7M4(jaokHWi5lC9~(a_NmxlE0bgP~X66N?L!1mzFsGSfiwO>> zQe80A6QSUv$fFDwNB%xFQ%py1%!x8F=l803-Et4~wp8@R{%!HCK+4zgWQn?owNM0| zn=_&$#>C8=4;<<~1MC^*+^Nsine0wN+%KyR%~J_d#O&(g(Feh}>=+8qosa$4XOibe zHsYSbbXDW}^@I5&S>mr$kqjEi+4|h_avyl0u+*)2e%8py(bQuRgS(;vXujPI-D+ zCHYGlAKU%US^M8G6}EhGy~H*{Nmh_}=c za#p^M8+~oZDfENL-8P-!SBI{+NQS_^1tG>0EX;KzbPgBEjpubvoIRa?-S+b7ye4rx z6e;u7y84!N_0F}GRT(v+TeY|9@e=}mp+iU46P!KR6MnL1R{KGU&KMD7*3tEK8mmCC zr|3>9TQ@E%anxfkJ-cd}MhEUErxqUhm-5?_a>-|#p`mG!1RshZ_rjK7YR?s{*l?3V z^9nz`@}wVo2oN944WFBhqOi^RtM9E#L*xE$_8RRjIfIm2j zaGm@KvxwiWpUaP73&Fg9qy-0ZW-ZyLD+?%j=;#bfBkSQFa6f0*iK$HrNK^Wr{;zOS zH%^241IB*i7m((8I=uGb#T<&w9MSSwOkJ&aQwp7c;un`-^P!2zs!w} z$S6Zb?ayf7s#)L(`!*8HMgP1PJ5QssJJBq%jq+Wf^IDRBla~hSk*;=j%7)0D{CWG+ z#RL^!Bl<(m;})WyF`HcI=B$7-$)I2E`JB%jNDvwHKL^wJG>SHY8(@_@iXXmj7{|x$+-6nLgylVVTJdFUqt*N}h)${WD7y1k} zy8~@iIkHgwByh`ZI@0QoXP6&(a=L)d9WMFgou-qZ^+~Qj7?E4Yr5bd=5|JMshUoKs z>h-;pqJ(dW^-E2s!S>9FHs7ABW#=3N5FJd~h92mwv%_is)t?-Uk5T>kcNLJogUFDN zkX?`gv$u-x#zRH*G?fZGZ^vspAF91$rY*yq>Vym_>$d@!)USUuqJAAYgVx`a#0}ru ztavzX?c>W}fWiBporLPmld{Le9`E*Ny{0%`SE$QZeHnpg7(~}PI5!-((B-p}logQt zA%|D{h6_n{Q5-7g4cxg9C4HfJWsnF(ix{0d?$vRC&*^?!Tc-w1{zToq)4lK*A5}t; z(2&xcy4ozj_k6K0v=+=wF-gC}I}yrv`V+mStCPetK#5KWLEs*YpO5;wjJBdGIaYQKsB$G#ew<oE*s6S~mfY;Fp6JEkLJ&(X3+>T_xySIm{U%t^k+#W>r4cHT zM+w^;RP4|$+vS{xe+>APagJx5ED&r+@^ zlmZ%EZtAqm^CAg8;eCE~TEfI91#~I^7HpXumhkqzIf_!5pt)xGE{U|@ zzZ@+WM0%x}wXfWd=b9AUSMJ`|Aw_GRt;OLR^E4;Zj+avn(;L=Z*D8iST7$~JW_a5- z`|r--S`za2N_R`3jLojNKPQ)tpQi>JHWqxb1Lj210n=Oj(Jdh>K~(#{MK;uUgBg{Q zhf;P6GmfcT zXP=-{xMo}>0auWzU^B0@Q>zLQv-9CPF$wN- zgF(SQyu#lbu5kIOE6X&*z}xxwG19$MDCdDZm~UL{Md(ntg}1(4U9T)P2nG|H88bH-^Gf71Y*7N)2wR zEdZhrjamMpbnkWzbeOBxFwZvf^Qm9?%;Wn>fA+EzDzA6x;PjDIJo%x6Ps_aLWuPA+ z-pgi+dC(oLjoz@*XOdfj`z(&h5q47kVAkdMEWGBP)Y%jQ+Hkokfj`;j1w7}p zkR}AS-nPgV&1Z~*$bA|t?vQcf{rrNA#@)&8dj=sNlUoI^c^ zYcFdGv%{r7AS7V7C1eFDkj`B-kJ0Z=#fBHZu)%Yn)qmJ3xGg8-qy}=7MYgA8l0la$ zi`MRDh9GSUXZumW?;kL9uGJC@g9!8LunpCgM|~YqZwAdT@wQ8g&@JP_UVZ;;T1o>m zY%zI^`jTJ62hp@MoI)_KdUtDSxM_Kz$WZ_PI}TYrqndGDn7h_y?l!~5ZU zHeQb6z_L7i6A!*b`De|LPdJ{TT}YJqR8XF6?(2;mnvS$@lTh+(CE4hJdMM*gN(yq} z;k-k2P~X>4^Ih(P_XeEb7Q{Sl$&IP~T#vt<=KKw{;2s){2T|mZ3v^&^0k>%Dc5QG#I31TJY&6on@>&a5c;UofjarTKP1+23dt7cE zywk?3T?t%qUnXLRqDk1__VVsuZB9oMto>GeY4CK2k3dL)`=u3!+@vo(4=F?#6kOO? z#d!~(>hQLPSG)%{crs(iOL&?mu*KIRZ}jCeuvHw}G0H2cQd=A=CpwOl?9j=9-UiI3E?Assz(D^@$Vf$vx-d`lS)vXPR z*Z&|=H$uxL6wsC@tCw|yNGaPA$=I-`93mC}flfO&()vLUtM|fEE}M#_0UjB;=06lJ zA#aL=9zwS$HOOi(q9AsA+*;Xhn*5&Eh;Q#1Yh$j?Og$K-?x=)~QUiN62R8zY4y*h& zTn??KltaXiG<3|gAPKn>*OZ3*_p*@t99?Q={8E@0!|xVS4{wrpX?LF=GT}|0fR^JF zXuox&2fDb{xNNC4E^fa-Po1BK9{r@_k~{Vrv}yJ zS=jau<|hKscZ`Aa96kEBF}Zjytg#5zPO8=kS1QnXeyYL6H21sq>0so{n$9FizrH69 zxXAVO2r@<_S^g8(IK&*@^%*dA^QTX@c=%GJ2$rkau+%VQ2lsLFd`{DPPBo7@i=m76 z);1(SG~{IG{DD9EB+}bwsq-VLbC0y@)jO}w%unC{JKs<3EOq`QKVOCpz+P&0qWscL_|Spxbvjmu#vygN&VKzq1fL=c`f zHVj5|GCgPKUJj`~Fh(`kl65`grbJyIFmu|zMc+8TfKZ^Hs(SdOa-UxY^B&?%4)2}z z>9wAYp#rptWfj57kbtMoy}Lp^ZNwOF>5w@LSDrDBYlq>5lpH@UVertj+#tz)%4#s- z+l%87EK@U?pDodv=^vE)R{t>uxpWLvuC1CNz4V}yh&8u-$&hT@?5!2J&LkxcjLLiq zx-kUS?+s>O6)8S0*_8bP-J}(iyOAMollf=is=n?qiM$u{?}??-6S-;5&ct5{g`cpa|Re^=yl_d4>N}PyO51@I*GgfH!s@p`j$TG!VrtI-FxFVD zdG_N+c(Sk}3qZ++>}vE8iG(zhZJwpnya9iI&!*Qtxe#YQ7=XfMX34@vLVR)awe_7EH2S$) z)Vi57e2M>tXU?+Q%i9eWnT4Nh3&|%?wAh8kS1Dge9DTbmj+O||@0ryVnBPX66A;BkqdnF?lqPB#%FG0fvX zld?lrmMe-VHQm=q&I4Y(p4GWS!S#!Cjb87hl}RmC?h^agpGJKze{jI(;SS&ySWT#J}W| z$;vtzb7VBD*jahg+%Tx)4rK(hXt(2nxor(rXy+C67qq#cj!qierWuv>i2C}6pAbk`GBH6(T?gQSMo=8SG?pto~ zLtgX!xlj~ZCtEQ{1^2emo*S{d?{!1Yyj(270TF)ezVrS7_9g#uDSR zD?wQ6YJg?ki0OsbTr}k9($2&^@+M+(AkrrCY!eeXi6lRO;tMylXc>n~?q}q+N6)}j83du` z6PYMAOs_rP>i{C0aW!lf_^^=YjWy(=@}P*xhwRG}))J+xHgO=g_oq z4wivn>w31?`D79QvJ2Z&Fq-$pD154WjqB_PdR}`_Uo(p3Tyczx)6Ervp*}7?k&RMHg5`Ad{^)9 z;M5q>%+@u3=!ZeMvId{Z1h((QT-7|>DlT6{(>AQ9Plkt<|k zaIuYTrcNpIXgQi%1iN^}qhMe5WRu)#n^;xdI9&bFfJ+aE=!Sg&U|P>STj~S0Cia_J zpX$QyQ?$)6dhdaOmsGpzeVj7rM67}ao(K({=m1r6PY+(gDSrNHlD9WKI!<#sLi<+le64}>$3kJ<;t$gJ0L49!c&b3PuGKykX&UA-7)&;uPDQ~%awg0@4^Wl6Bg zN7u*M0|QIk;^#BY$};<_g!y}!z7oWpej@KL!)XvW-RWVU;Z>A(KSHi-qNpjlpIM3z0x9jnt)S^_2;qRU zEYq)gxYd5W>Ema!xWd;C-E;_>M|p+$Zcx$x3LUrhe@C1Tmt29np7Fwi%Y`=tjIbAqiuQX&pwkb4ohP^_C=7I?O$D&n zvKK8S-WJ;v%baleh`*8>4xqUlug~+OE9JbZn^z3Y&*d96%k^${$17MMA|sLq>mW!K zzDbko5VXYsohUI_R@ata0wr+H)2;RMo+Q&BtV*olJ#O^U2YEyOYW$mE1R^MuUC$(c zngr$Eadqd#bmuERw;k0{m24YsI?S2h+~XPisgf2m2ylfTezuiR(WMXr8Us(X>bJL2 z!W%^8+#6 zF5Vqgqv!4dAggs_`ai-fd99`-8l|?X?D=kOm4mRGK(B(Wv$L}@X_)Wxt$W;G)_dSqql>!*sR76%GFR!P9_v_{2zjc+(aP;_mF}Byx0`48!{|6QPd+;%oqTJt))Q3c?Jaoame;489WLE~gmEGe zeyw(;X)k1zzsE|7KlD4a0R0m(z0DP%dI{+J;rLEmC6L(4jdmjaL@Xr1xdmxZdxpW6 zl-qx}`i4vWmKRbLM`kLXcn-80}LZ8g=E24RgEjVd8(*sny&w$&J{erJNA z#{Gj)|snBKgh5=QMG+WeQ!ssjDR9Wb3 zI-)pvScYhNWjVFlKn!bnKR@6O2<3Y(a0(E<|Jg)bf)Xp_a2BJA+g1q6pAU}cN0oFj z<_Oqs?N_%Dd`70m#72C+4FZq|J!eLQ4^buEZ-pxnFo?=i{@kPwANcgn#he+eQ@WwS zRyd;_os>BhnFwcAJPSV%N&Nc0+r$sLWE`&s#^LlZ{!-jVe%=+ zZ`fF^d6)`;!EE_!ogsK%li_}G@P!92&HUIOJyjvf3c&YA5bS%M zQ4I=F#OK%Z&B>{)0aQZ@5bQVLwUktEhQDuQvgC;-{Rrvc^7#H5>;|R?=aY+2_?>X) z_iJUs2Rhm`!$~*50BeCE#i3{9W7m}hnZt66@1MW`{uUreU?R}G<%elbom5;B%LE5Q zkX9uK9%cQzOqLb!pg^o4Wys&41@fmi2maZyEj!FJfDg#!*q#w(<7O|Dm=fba)?ll; zxlMb{tgz2w3|Grwo|rrZkYR zrt-w$dG+zCnxFO9?9m^v1@5_?iC*mu%X}R-FqJGVHN*RP8mb$rm*4*Vwm0K%s&~QX zs}+Ag{A^^SelfoUSoB9f z@^Hg4$8;M#R%JUeK4*O5zb-~fKC&Z=gx7kaKbhT+ioVfue!7d1O@7t#rBqOAr-WC! zXaHQn`evl|qj8z+!IRgL@kI0UVr6Y!L`n@a4r;mExl8qdA@UvReurA<-(Qb*H@;)*mmi&#=hxFRk|HsTTlSV4 zfA_9Hr~a<13}7Y^n0&|{Z7aJAkEfnU6wU4GO~oO6?1}}Uy`o4av!+53q||3eqWM2U zEXGu2=Y64uK6`M6TnwPpAU|!&$vV^jDG07kzA>$56Q?0M7D#)at=bkDHnZkIZFYE|_P@yzdWR zJqKaRCHz=oRY^;bP}#53l{b}-vBML;&Yr(Wa^DiPVQ-xD2jnJcQ!wr9HlO6V5NmF_ zXvWr5%R|aRukA3$@B=f8YY{sMRb0drwl-OI15WUBPvXz&xRIcpx_j1OSEq)B4Y83S zHYweH1X+7v3K=ZvXFS;?!Pt}$)ry#1-wo(ys-L1KO1v?iksjIKdLOES>DhWQ$Wn2~YxAYS@w6wb<4=2LO zGrmU?^=Id#Q1k=KAMU`=geT`Np`_5gWHpz4v5J*w7L^ku{GQ(jM4E8di&cOsD+-At zx{i!UHC5S={X4AA2O4H1D!_?#0U^rDoMKKO8Ix zYiaR*5~vc4S^p^&1L5g^=(jzWa{{V5do^I`P!%=sTZeH;D~a(NFrHfhya9f%6UUi` z1^@Ht(@-YGqAI|GKAcsDRjH2b@KybRsJsg^WTzG^R_BX*{>Ivs)tlc$qxk3G=VC%T zM@uqIZi4P2JSsPKjwM2{ws|R0$@{t{hJKqR?sP8((%9`8l?;Eg z@~cj4Nd+D?;nwx6wf3WgY}fK%g(rGs;{YxCN35BTodG`d!_Q@&K8|`zfB9xktu49x zS4b*9(`bAx*dCvUxEV>E!n49>wiIu7MbP6vfTP{Z53S<@IIC`}`)XE_2f+u_mF11) zdQ|~*avQ&>0I@RXi&AF-`mcZfVm*Aqq{g*a4-MJ0tWUCg^BeMG##@hl(#GrO)q2B) zuEd`Qj^^SNtb$J!rbcfSA=hFs`9b9}dK+4k)lLJt8Mbg3=6HpAoV9S+@aG4PORPUS zfcAFwmOBgao*eH*U_%&j=CJweh$3Y6_X`X8^$RSbES3{l2H68`k#gL`v}+N;*(J4G-gH6;!zxi2g90SFHzg zp1y{3vcE)3tzG2OqA;-K|10M965GD4L%3hZ#-{Cg;Od|N4gN0d$`UaWsFF#8igygA z@wyuU?^+}S25A$NIW6{E3%LH*SpAa zK-V6$bF!ub37pEM{&9h~NyWEjuEL4Y3JJtv)6ooMUxcV<=xUa;V)tdnCq|Hs-|UPf ze6>4?%BS5{I<^M6^0!ZD96k5s91!p_NYINKTz=5bFBC87!?hFg2zDv~D;~jc20PjQ zA=2ghwJo;coQ$iu=F_=Q_uuy+w^S>#(o%PjGPacyf4M1)go5?#2j$<32RG)MaiPO~ zq4{*;L#;9qf#0z(qrM1a)=~iTRWL%kj-BPY##;rif#p(SQSb4d5L0Yy5U{vwsnUu)ymL|T(kGeXc{Flv{+#hEgJ z4E7)g-ERQ96yc|nD7b9W>{}=_IH!gaJ`g~{kbyuj@`{&=N{^ZI+;Z4W-^F^p6PV;} zlXW1wDd9rQIT(U`uvRwZWx0F2LN*%6!{l2+o4-3ErIajILjMsJX%-yHeOv7h%h})- zRP_{(D_@#%P+~RH1jlC{2jB6t(-F5ZDJXTP&+_k*T%{kLe9g0j3pe|f9k#kh4^BvY z2}qte3|j2mH)nwlG8}YVrH#HEJQ~Yt9zR&V&oO9s^)OZG#SrEKU!X5e;@vh2flz_&nV70&p@ShGv^#8DPZcNX$?=RuBoaI?$iQH}d%VvYZKI5+9@ zsu$mx83&_?(XJLwO20@QZ@}j{QTd+LGv0bhBp#(yv-<`<#pU~6g{}y~y3AI?qw>`3 z`qdCQzpXWKBgpl}c2jpvz&9N&BaTOb3@n$UW;xVm+?D)F{JK=7;=hT!$_&2pl)$zv zG|`v1oAblXb!JX2=4o5_R~QE&OQuwdOOaIGcT4lEsq&6{?{dH6-fL`am&XBl2IWCc zB-wN`(j$FZDo>3O%M>o|tOM+d^hjF`^#+nSl>Ka*nkpW?486@5*tBOghd zUcU*D0up!>Wlo>O8qb=_XA;TZsxF-rcIh{-fI(*^y<#KVehNgpp8gMuq=5Pj!%i1^ zR@M-HKoN874$H#Tw(Bcc|9h)C@MXR0Q4aJxx2MAGfbT^j4g~s3#5;3xS%30Ni!rkC zeG&vcjUM21FO$S!P^c9n6H7}=c617aPF-X1Q4P~=p~b+cl9K$&65cItCPu*K@&gO@ zJ7G5u)jnL}!m7$Y2xUcwJB+RAMdi*IB3X(eg&M^>C{sX(TJ(%^#0c!XmSV3s+7!3l z=e(gBB+6zlFe6I6bKtC8gmPgNa2z%^WLDweU4C@0JXH?%HgPjH!$rxlG>J4&Esj--r$41UYgK?H({5t^^UInpn!x&z!z2QXeQIP)~}W z>s)yLTgam+R~c#*8D>r{ah0~?8Xm-QCj<@zdtz2aq;eWSbqmUKht{C;mn# zkq%y2O5QGdD?-jIKa=)u1HPwu2`3PZOgCbZTEk%#oZF85GPd5JR}~9l{r9Y|`LN{L z8Ld*25)~*7_5^`|)m+xCbcOu-t2UJ%uOCJoe_}cENrNRE;O`wioqOLu%sw$Jx960I zDS*IA`Bcj;b6TX<9Z_mf(VX%_!O1FkCPI#1E1S7-Kc2e{5MP=>u;)W_(%IFU9S zei7?FsGqmjDbbGI3BqOF5smX3cIpy`Gc(H1Bk=5}50HDguee$?6!9Yl!LOo?KjEOw z_2Fl2IzftZMt(9r8ZJN_oy!`i^PnFSZ`oUFyD!rfoYl9-F^u*9&V;{1nBN@bagY>6 z1a;)@ch@=bQx4)KSBzvGUSn8Ss-FLKiNHhYx@tyZ0Nr3hzJJb$9toX^S&*4Y0(vL- zEfiT{ei&GS~5CUn$&vYWZXLVV~(2=0|4__GQCMB4e0K-$B3rY7+zyIotR8q}=<|_7eEv zD&z4)RKs&^iy=R+!13+f`%99X)00sF?}Vu4=$0HKXV(XQ1bA%}n>FA{d+Gcf(JV>> z$b$`RjUc=H^Jf}G{kI(!OWsa$tf<=5Cuy<5NjTfmu_`@cBAXINn(G*jQ7`?cGS~1} zhQz~>GJV~pZtG+zU>wCt$!}&-TA*7Jsn#uN-adAoyaLRvzQ=s~eDnd^h!6)#x8iH; ztU+S#l_VKi;RH}dX=emus(Nx_WwW4sz+Ly(TGVSNg0td}jlMb`;*vRij0NsPgsD1z z+8wMJA|8HLcN@esv~6-iD=LCz++XuyNicWVR^r#?N7xOpPTsZ6R1t%o;LlQ2%4|x* z)j6j}JW7H_fx|!aEJ&x%V-G;5>m%#KFpjcl@}8OAXr9-wW4%zSJO?CT|J{m9Xp{8s zcdW4`ExB<_z%~`NVTWJG-lj{8mdg!;c|T!DK05CsuByF2T%bN_7iAA58u+ z^87UK$qIZ5djT)!DH;2u995^{E_UFooW3VkY9Ay4Ndst-ejs5bquQ)iW`sSsK>vWQ zC3@}cH#>c_z_%~=rqsAxq-NgOdV&zFbOO31+p!FBDT%JjuVXJSDY_SL@u(CI6*AW2*G4d0bVHzN$A>SIS)cb@Le2TkzJ zNt|k(lm0+YP1sd9ev5@@T#Fwky9+6tK$gzP*Y$us?JWoH63i2ob$1Gtt9r^wO&{Q5 zS|u(cBN7eTo}@YH*LYbn=zR>Ijjg(hS<)LUGkO{ z8vCcm?({ihiwrLup!|1o2mQHgK5~<0jf)03eYXcQi}pZMC>chyW4=Rp#DzmyJ@7NE zmEQjJ!s%|ySt}Dh_QbR#Xs2EzWS$z-gObm@>X2J$N5j}ex@cJ>lNxTTus~!u+MBaq z1@3_Z=ELc*bvI%6PQZBbHeqJ>Y*w!82MEf)OI&5J&EK(qSQzfi=ZBGNzu@9##PdbS zZgxNJoC8DFG$v7c$nhL5PKN_8Lkumu$=a`(R`B3%Jmee)LB%o7SB$CLI_vd`K3kHb zaDQf%P8?AMoQfM5v5Sd@OlHWS0!c^fWr#sWWNRkjl@~!L^gxG@Wgh&O?NS|?D96gM zBOKoIuUf3qt~#w6mM@i=nIfeiXZuMQQXjr_%Y@Xj#Rwev2Pu-)>6|dC(;xolh+*Ob z{)y(}a!X^)509fB8P@;V26a0;*$|8wIp&24P)TF_RFTzR_vfe^OAK@6C9UN{UIeSu zD-s9Iw1RvAf0F*hW=^W{dhIO-WI6qbmhmysh`FTiLxvpYteR_O@Z;uP6rr4;@VaTV zmj?Yef5%6D-xWJvU0&NUQwVxYKU}7nBOEo9*Q(TIupc96Mj*X49sV@N)0q8|k}1KYIV;w_gkqd)KP;PRWu}>bdCK z+AQBH66X1-h=Q=TS3A_(^~t@VECtmp?R8Z}hWlg()KH)82DWWwUydYQY?D#v9H)Pd z0|w7uMXzS64(q+n)i(X8NV{}F@Ks*>vFe_(C*G)mk6q_^%@A$eWj=3+H@7lzi(pusSYG$lF8F%Vl)x}e@ zE+oj!WkwHmUYq!JHT=nwzfFdppq7I!5GS6$S$|~IJvrpXs*Cz{Fv&fmG-I{&(dK-` z*YIML@x26E@XZZbE#6`sQHyEjjr-Tj`HMAU6F%hN>Dz7nggv@gdc4!D0~)6W*axMW z4<660%XQlqQm`wje&~&$q{n>{e-jH_;5{}n?97T~dysUW1^#ml;>W7pifU7?soD}h zy;!==b{`tDt7CZ62Y{J?1w6cv#;9Is$P3u6T?xQ4i;XH&v_cp zL&TF=`-iKV=NxTf5hE7%;_IT+4s)v9Ht|(aNdmFTBUB+9Mx=P+RfwqXlGQ{S(X_(% zFzZMfByH=}T9)=?I7OuJX-kZV`20XXl-D)W6?m7Vy6tNJor>EgtQ+h|$H9twM1*H-npSLUqee(rl_p*TZZS^%QR=r7_=`-DEagSCUh0|!{S+vNXH<-4I zHWLwZx)1Jo_XP(c=I#&X4opSy|@ONmW4(Z?(OyA13N_B$Q6b^{TY<1JTTYx@WzbMU9f z3HC zBf2>s)0(AXz6OFe4@$`%LX^zf3g*@?zo6&V7<%5zPK8&@Sbts+qqq4FFbE$w~p|t zsR-QIYwEt-lgNjr;a`=MDoxw0>he|ZZw@^VKiFEFn0?0BX!ug1MtGY!VzJ60M9>R9 z2%(B{h&;)ZpU7(FqznRVZaO%>jGC~%=KG6saKLhS^p}WjrkWk95Fn_Nduif#;?*kL zX}cb#ltJW9bl;Ylo&9pG=^|H`hE5FYL&QB9o7(KDstx5I{^Grr{M)ewkixzE=>qW= zAa+L8cm{jY9vh?D%bH^&3y!nS2wLmOs);dPVX{DiVNs!bwe#TffRiD5U4d56J?~Bz zH7k6jQEQD^7@uN|J#XY<%VR^2c1Tw|@4HB1aapLVZRH0i6ViMDz^YM3lay2IrYGZ& z5--XhC}?7f0N=Jbx{jExbnhM{SH)MWGTUG6EuFfI7tB6_2Z>7$<)cQ6uA#Ted2Rmh z>h^!f%+LQ#MgRGYe4JP(qvDyh%2P#t(vqs^{os<$YWae#Y?#CeeSo}^I;XV-a6)n^R zq{o_>7dO(=v6c+i3bZ5IY8bP{T9X{`(#N` zz;@8FKLw)H&{6SOAz#smmhs*Ecv{C(ig=&Sj?o`t;VOmBt3%<}(RdJJiMVC0IOD-b zC7dXuP9=GEpX`4qE>M9LU{ZG)euufF?#0Qsy!!kZ__KT_c$YU3JC04I#pnD3I@6Q5|?rOFS9x0b)^ z6)J|I?S1a#VJGg%H-wq&drCzLk-ZjYCvMvUhG=}`%Eepz|JLI8*~RQ&XxS9mu;fpF zd<_kD4gJE7r2XGo0N7N-GP&DEZ7q(>^jZC0I~GFumEX4Msjgg@$v|hMef~$9J5WQF z+%kX28+Qrhn&7vFj^yX5vhvy1?+xGevDivisdJzqJvR0eMM~R9XQ>cIpNumQ<2mnv zsURXT?C6B+GPeeDZ{L&1^!Ku8dCPOnfR?0}PYvVcTHN?u^uh#@6o|1&@EK!yQmt`% z%nJv9wfVs>VOjObk`nd+dEVMqhy z-t|tb(kWK_q~s~v@?Zmqp!>uDfp zou#MRuGKNa=B-ndS<}S(x})J?M;8ro+958DD-a1A>C8JWPbIlF#KTlAgNAK1*DPzd z-8kJOeFfLR9$PdnoqMb+p9gUjGsiomJGvZGPzajtlbZ!jsP-2rHf6G^UR2O|!P%=`UCB@%A zM2Cl^@v#(44xm1I)1NKmFoBvwF(kJ<+ex_Mk-cn!S+zx zfSe3)DyA*{0n_pAO-MO_l6_03f=MOQ6F_V=QUf-h~J?=39G zNe!yMTxGq)e-}lKwXb6Maur3*eyu>6e9n8WekA~X1PYIwh-nH@7+Tb=s8vn`jQK4P z=VbfU&tsl2-9KX#9FErS_xcVW8V@|Yr;IYmM|dvDIAo(aNxTa%%izy83RaQIEp5&5 z)Lo(5yGiA6+lz_MkfSH;pr>lm=?KTzzPy$6i;VFGsnSRz4rAS0e!%@`!(s1r1$C%3t`WTJAq{_w@fPsmta9w(& zX(y9&jw*tfH}kp00+$x~0^l_Hjzl5Fra8~?8`m)L3+}V!Hi+&{lpWtCBOZc1{~vqr z8P(Lf_InE=pmYmGN+>EQfq)=IARsL&BDhp~6QqfB=@6tx2_P!c2~ALtCcSr1TId}@ z4J5j%eArgB-2736;4se8I$48_q_ZVAA2d{HNF-=~3!PE*=yNn>-t} z27Q0}4VCNIVjb8@sSw|r)@*ByZ#ed`qtchXEwT!ijN2`#rCO}^SqZP>x&7*H33fZW zr|E*9IMM!jjkdFQPxjLIM^MsTmn$+ej&@Qn-&zjQeCBwZl@%>8a|=vKgnKDY1T}gUQ}*9vhI7wRQl$q*b<(NRDrxe;;5g!ZM``IWeqlyUd~DG^vzxW0=I%%%1cUE z&)aQZn0yxC9IAhiSV@y*nZj#Ij5!D@>1MZmffed7qaTnq=CFJvee51n2N@a8H%>%F z+YNvFNf+2al_pNu5!j!J=S$gd3 zRQ*o>lPXMkZo4{tORBoed24t(=9uJeW2R-gSSxptN;9&x(P04_&On!ji-{GvE0Lus zn|Ci3QgOw3y9MAOCFNK6!VS2p^Y+xbras(Etc|S`u+g&%?mQc~Zh<|lJse1M%)6IZ z=AePDskj2bu!Ol~C*91drRuH7*9PUmfewg;aF#*2!ecXYmN!;;3ho~FkfimYl zX|C83<0Oa5*@QI-wEVG)_i9LN{}!aaV*-?ylW_2VrtJS)>2!LS3PHo`QVonv+S;f! zJzCXut@%n@%50}VT+YzH7-17>3};y_F5UnJx+b&^(?Sz(Z7Nm#sFb4+OqbfoeLI1W zc7A1PWG$%c{s=~j#Iq6vfN`_MO3aZ$3@=S$~f?Vu3kAY63PHbt)w}>6r>SPqO9UV}KJ& zeFlB-KJ8;1@Nn))XHNYdBxSEY=>b56GAmuNRt~f`@4-x6nB0N7+oA*}n$2rY8X%Q- z$qniH31MU!j_*{^T8#H28_&(U4k;4Sa&S@~&|@x4^PzD2EYk`a7D4));inUX)4s9X z>81c)UY?0p$BIYk;@e{WQ49sK8peCPywx?o+3t=_jW z?;^=+y(YP{SS zqPV;yxwL#kI=K79d69CIR9Pe!BnLG?5(~9Yq0`OtJbA>Hi2rqKa$p*1Y)-?+k+bck zbtGeiwS(Lp_8ymR8Gn7;L;6!Pq+1*+4M)u+z zxHxP3GiNHeMPC?F!}rTHuCq0qO^^|OJYzu$UHOIU{DTSouac>MKy3o1nPm>iYW322 zVwxJXg%|b{b~s&46k0BpeHhsO`k`2?`jUNuq%&ow2TaWS z2`d9=gT~oM>sO_1XW8}-Eq@OFtz=sm?S@?h{A!^N6)8;l6nuXEA<@C%zimsfmh9S4;_TO4TpSTk^<$H+fX6oeSJgcCI$ywO7%M}WMS(}MRI14Na@ z$F-@ZTH=`{Tm}vIt8PhZb%)&i3VZrPXG4i=@?}k=uS|}*!T6ho2r0e?+270&rYx-j zCHBM1px}ALx`9Y3N&RAw4<11S5IJqrP1_{~m;R;*Ef@tKLl#lew7qAPg2)Zr*OB~A#I%iyp7{rNqU z)cHgV$%^$38;h((h}UZ$cGzMUmi$E{cVhT0$;LW&$+RLyjq&~zJEn`f8_|_(d+lM8 z=l#pXP%k9;_5@OP7eJh80Tp=27A5mwv=jyy#<9{PhwIv6;JVB)2|VXsYYoL6vK-C- zYV8TZ-uWtQz4R*untNBmZFTT*isLqo@|FQ6K;I1rEZeqXL(We-xSj^vc;ta*6MZpj zzIur%@P)DPyC@8oW&YQ_!}r#12kR=PrE_~%7wvw3>zvn4#TdF^pWUXkUmMT+3{D40 z169}s@wtyNU*!T*Xp|#?;Z)$AIKK1hNYg-V+K~1(Oa?6KzK;cVr}$2)|1v(U#CwW3 zn&xXb&ec9<4x7K4aQ;cB+glHCC==*YP;QWl3_5?0u&WX~6mqz{T>oq+rd6Oj+B0B| zeZ`KRVt=`h8^Rkcy`q273`0I`t6lRz(rR#7(yc$(Q}(5kb;o+qmqx%Memi6*naz8X zuj4j59muI=LM!U=$vzzqs|ALJ&R&3AA2PuddTH#2&9B!C_A_84 z0caBpFKGhn)VH6glh}Hp2>;GqYPr4ZxY|{uNVFK;eP-K&h`!#cOb4_@6C(>p)wbEf zFO-1nwVHz(@y}FTXFkn{(6K#;h~=~jMfflG^0A2F>_r}&jKKKECiKrgDv1Q}BQ0ni z&ru^jzj3}8eMKC^=$>%(VdDl+#btR`6fVwR84jtFp<8<^lv{=*lM>ml2g*?q!Tfjt zfA_qRt%!fTvC*NLWUTN-*xr(6-rKxbXDFWNJb2lBCk3JZOzSATXkP4KQvp`%GTK-! z=%-9p(0sf)&=p_BYoqo9rmxnk>r0PPx$-0a*IJ95{dmcmBZ6>%)JE;{Z@}n(ShqB7 z3#4lh-}?|c?|ry->#+!KD>?8!LkF8ezy7t(ynyTDKFdA=VyI3fRFB5i+6c(lv-U9(LV_7 z{MF6SbqOy!u@t&7KAH2Yq;`1b=T@0CRByA1$!;qjSmuWuT3ywPWBz62I)039e8!vGzdKHE2KJXP+2pSfd8T)1bu z8GJS(t>seS51-xdc1nnGyO&#^)>rawan61ItQX9`I`sG#?eLzwu~z4bC*P8d_e#u& zxmoKm4Z}~181eGu{>qh(&ZX>5R-^aVG}%G&azwk;g*UddpY2y>1>t=Ib2Yz*B?mar z@_zG1`%Hg0@mtm$g5}}_y!}@`$8JV0t-a`BETPR|d9vuKMtkw3N?&q9IPH=^XP!Lr zPxB+xmvS1HRiB#Io;#HdVkcZCC3*CC1x3D2 zSNq1aWcRG~=^8sKKH62jv@5w=YNX}*n;lG)=;hW{xx}3qlDRpII-lpyT<(BND zXNcqcs?{7L6aZqqNoT^c%~z7mfH2h<+wKctGl^?0D2XmR8P;c1*dXA2k9+$=3EU93MsA84Lxl!W5T{SV9a<-7G7@#P_OY)fiHTGFAUD-k%`|jp$tm;Q`&XG>Mx+i0LyeQspYzmEZZk+;I&AwmdVrq7s_0k@1 z5?$SYsKxs8OKd1~Hombk&Q*o4&)MqXbKjwJgahO4lMbooaj3-uyy3f7ttVkzW$MF& zNY{0oM#>PlaBJMIAbAH+Pp{*Pf0OMb)dTtyRK1^Fr?;k=c7iNGcK4g@VjlANRtEoe zq-Rj{!hTJ%{#GqvDTjI4LxeGEv90*sVd*8utT%i@D2c;#$tzT&h;6Kqq=ftHDBf?B zM^y^JHJkza(|(64nf_vQ3$vkjQO0W!lp-W}taBh=Ai{KwgCjuR{V~dK7FpxteSKN4 zCbjsMdyREkhylQ4wYlxNY-UjX%)%%kIx9Feab|1TGwtP_i6lwk%>-t-qQ`6|__0e6 z*7fm9x%H{yg2dV-JB`~%xcL=5fQr3|OuiHfIGrAR)E}?5Azxi-{aoNSHht2nJUeR* zs8xWiFH*7gb%%6&WGPmScJvK-1}H_SeuRmE5}|JQf%)C%FWSEhI*+t|kjOQ+ul)n& zVgetp1j>0F;b%*FsMWOHJrkgxEj-S%o|0jwqg!j1_6&%+z4U^o(;gVYn_^8gv=29VDV ze9T1=4Jk!L6ns9QH^GxF zoX?5LmSCDEO9@atC%X7&oI?Frnxu7=kEcRV^Kye<_eGVBNg--t_%MKr=dtl5@--W% zIZlE(e0TURx?&}gbFY!^xDBguP%GlWJ0Ko5)MKZR?D$0yPIZ{0ggS^9H@c+H^xTjj zn8E~B-vV^TSZL<@{=kV)Mvd5o?YcL`vB&#E&`-QhprB0e!NPkD(d(ujKBDN;p3xw5 zp!ves2$tetZ*MDgkPXORWY|G?FuK!4YdxOOGRFw+{evDA5A`EnuY2t1VAjXD6iiOx zykFasB|#2ka%r3Cl3?v4FUFcqZ}YPtjU!j(+i+k~p$R4iV`NmnKNr4betq9h3vT*J z7W;C}*7(l>DR*Z`ys1in2fjVafTbv!_G3%WjPu9W_a2`$bQ*Y<#tre&4l5o{4^#=I z?^ec!TRr$iAIwh$Uyq0Z6kEet(jyLc+auktnrztc-AT7BDEOg_8{_LhQywu(paE38 zYFn7A+1F~NL;dcY`WtMJ{xvyI-t{+T%PF+!j1e=__zM&(;u)~d!TDPhWW zZ@R1WZ%@s{NqY4MOZqHzF|S5#e7oML&#FIasIOLUlnJ42$v3HnMnt44Q2GU;Y5Uk( z(@z2IHbksb+rk7>yWfebw0iz(#OXZGMj@T6N;37XBO8*}I@D96`lfSPMejQ1n~W6J zQVHoJPx&XaD!T_0jXCIdsV5>WOu<*g>m+`7IfL)BIQnPCa&4VyWSL>$*}``JjN!do?Smtih>wEainlazSh`UWaW=@# zoy4+CK7ulRU86Z8_+7vwY+q4>O6_Zhy2j(*gl|CT&?`(?N)RQB@Hk7*@aqDNsdnZ1 zL@E3GC*Ji=tcS@7@S_obh46+P z^Sk+M8JY-{H+PsHuQCOxu*C2^7wBpBKn#AFpR9CE6s;~peQ}(9uog#Rp1#!ST)JFf z<#APAo?e5>Rc*m&^TklS_xHz=HM4h)-hlf2jVuUZ{JoBJjW1Z{A49wFFw*-H1gtW) zl|$z#6%j~mI{8&v0{1Qa4Qin)=uLwd>B(Fu8iTy*DK&77_)YOBGkblq%-(R9dnv;l zjCTU$51&mBOHDQQRTVP2g?01g)p`wab(`EtFE9gU-z1wO2(7h#+=km)5`IrsCrz!F zZY_=9ESSBZ_7Xk$xbv%t!VFsC^KDo(W0BbW(Mz$_GGN%&2?u@2c$z@5#LHS#xi{@I z(B+9ryZxyuM`Ew9Y_+Dvqfk|E`a%GFh~~@VA+u57hJ=q}&_RD#lR{1plX{eFFv-Va zDSBKsS}!}ak*~l%9ve@lO-~lu^rd%I#ki_`Rq;4xIz<~a)>@-Lc^hUvvLUVPTjSfB zGsvU7YK7#T$t}q1QpQy~)XFl1H(aF1jUUKT7uz&TxM}OMCQ~O|?>YDY?wIQncu-e+ z*dMO(>2qR!WY!dIB7@@y|x zt8BWqh*R?X4xZa(*1Iu4w+x55j+S{E{EG_(*+u(qCG9_q&o+{4jK zXLp0|lEz|9y0MRME;oa~#6qj7Ha#x02MITwm3!XoPCKn%vK<(<2V%*->8k}P{nLCZ zDh)h$S`zbXZ%lc0Mi5+noasJ;4}$RTT`j0fai}CGcpjw9p9$g2*T1-)l6>^ORcP2@ z)c1ZkbvxyS=1?XLT;2MTq}|f?tH;}F!S`Kzw|?|Buh2vt0ZqaBqUP*hc86L&3vv}h zRqHiTH^sYaJ#~nt^_yg0yC-tn`|B$qv9X`ArUvg#49eu)Ib;sfAJknp;bm8Jc$vT* z&VWSndKVd2?`66X0;%DtzkinGvZfi$MCTuWi+ z32Tcf(AhWMJ?mAs-LK)r<^tV|orTdpnvHt*UPAeB#KcGBuxAUch&mIy&FLmer>c$O z2dlD&H*Ch}n*7`Y2(PY{8*5qgg8fE75SfjTJj_tQt7#jM@)bLl3*mStf*788a(BHe3Xqy>nwF?8;Nhn*IT_@8!gh`H%i8^$9_c1 zSaA(Y#C_jySslv#W$Zwd^NoP#lohYEh}5xA@AqEPHHyYEEZtI_DscwPf-9@J1sg8( zH+L&hvgas##o0dyZnY>~-myRmbe*u=w|u)XC5Hnj@+){x;pp8A>j$+}^Pn!{A=w~# zQ_tCuHAVUADhVP_z2!5m)gMV6=2zq|+&4BL$j^-RG+jSBkpE&YjBY*=t9n@f_kzyPuTtiQv5`Gr{}c0C3sq?77trhOF$HGcZ|m{7pa!5u#aW!M)AZn|xXBWqCX0D3wG{W<=D?Y9{R(1J6wv8a?LPa{g0; zt5VD_gZmJke4nWzXo-b}hXJR*-Srn*oih4b;)t#TJgbP=#zQB@8%3P*jaN;c#7R2) zu9??CXkrpN3F~enjkIlfXN#n(vjupusakqAb4|=)Oy`RBH;!mrdPQ-WJj%|a-+z(R zB(kid<>U(6BRD39*X8=NL<|M?*#qhXc1-Eb+xLx&a){H*(k(<4l~Y>r8RoO0=G(#n zP2GH(?a~I8u=&=v0A76Q3>RbAvhOH9@(lOGG7s%>&389D7Ov6b(^ZScBI8iheq|Fk?NtSKZXfry;5?ln+OtNAZWI_B;I2COY}j?SP`Oi`}&80 z(F@gIv{CjGj8|AWX6kgK zz!~S9TXlww*YcC#sPC-;1|Wco6w6;jb^_YE;gJGU zRHxdgNdf(M)PB?%R%YW5`A-Sy-s@?M_*Akbo4a1G;99!I!8SKkuLXV;)&H=i8j(YI zrkY915dNCw(;AN^Pu|Uryd6PeAW^rqEbm4^{nqvMMpHAS%!N;D>YAX7ra5^u@BlH^ zXHXirR~fr~&gG+4-zSHDm0{!z5hPRFJ&Cp&X@|**o;X3QBwy0XFQ z0j8|aZi747mu|zGYeQt$S2nyFieG=fJAy(7y^!P3_~_FqQvTfkOF4ktZfrMeedHS^ z)%>a{_-wWU_67D-T#2{Cm$Hlk)K^DY8;I*AR}oxAL#7~fR(W1q#v)6@BWD@yr~?Vi`<+4qdn zRv5V+SQdpJEcYPG!@k5$jgJLzruh}CJK567Jt_fdBARK`lx&RF5Rt$U01mVbe7w#T zHa%23CXaczw?0`asIa@0J@Ad$usjT3ZQrxToa#}--k6Wu-%T!`X0IM?e~aP!V$Jck zk45{Wx0hWz(^QI5*zq+0c*0^hPw{LX4a$~Z()RZ_%U^0txUY4E3l-|A4AFM2N8XGT z#nDRX6zl+M(Jhq1mM;}N>@&we)4Xtf~)F=Ch*FGwaFX76#_CVJXzK z7^7M#dxX1a+{h=Zho}UPq-=7A@(h{mfr;5|oujE1U_Tg6aPumnBvp#261oH~=)V*o zRkDY3$k#8#fcF*0%?Lp*j>XtrW~}3Ml?bGw@Y&X<8YhZyNwYz(jU;{BzQ6-7qx^^v zu1IdhPp9)^TLT#fJjI{&w>*A3exB|I*e5yJV-?cl)X`1;@55IAxyq+hPBp5(`;YEj z?3utT6)RbZ=c_y63j&~@as|>IRDCkaqH|2_&SCn+R+fFHx2XGs{BrAHEpOt!wLJg9 z79ieaX#Qvi-2Qeh<;2GsKCn79u!)CqZ)L`j1366|Mn0QA1tpkd-bcb)JKQ#HVrBA-OLd3OV^wPl+(2B_sz5&_l_Nd!RmXFj58lRyvZ>N2l z3-5|+!;UNS!lm@$N0=9yFZ&QzvIjb1gtzvsQp`ZOE1>PegO z&=cG2l0<^25l2M)ckfH7B!dZP!xhwA6AhGa0yU5SGB|sZ+yDiai zk$Z*ao2c74^#%Fc?)U4(S~>)juNWhf+eTVDekrhEV@s0sc>|I=!rB=Z)l$(8i>~Hu zo6!REt&Eab>-iUFhScd>tOHxt+XvoT7G!f1-VX%RrVI4)NO(WVX9(!;6M(6`W=|vj z*muyLwoO*D2t(Fq^e2|JUr5yYuU|j}hbL zFDLr?r{?5dc*}3TWV%BlZg0=U4osC#CAH$$c%t0OJjCGRMc)q!pQ%{%1+ot`23FZe zc(XJl$vZ25U zp9C=A`f>2qK5KZ?%zVk|JGb1jL`qIOLyy8dEA{KG;T8_TXS?wFo7kX}zM4PB zy6$Bn39vSlLPyoKH7!Foniqc_@9CoKjp1n?QKsCEn3uAv$!ac@0}5 zC5Nu5pWBk!MEFo5=LzM;Dl{*N^S+m#0$Y8WX}ET>{DJ)z=J*Jse~O9IH;AA+f$RQ+ zmT#30jhfLy91|qs3iX)K*6>)oPa0BfNpne(wf#h_Er-=4Vu31sx1UZ&wnGHmv?oy- zvL}q@*|6K)yXtB*G*j#_Rn-+D`>CG5(njxV!&#U1+nl#bAXTYeP8qwuV?W`cZkC~d z^Ng^GF)pX+@Vq)_L;J2A)@yn2_UVcel{WfvI4`F;R-ENy{Ljb*mItea^S0K59y?VG zD`qt<{hV@_tLy7a-Tl_ucmj@?y0?F74$d%Ot zf7wTLWY+}AWJpI}ASqY>d~E}i zcB*Li9pBE(7FpCzzNuxw?Wf3N-tx|*(3+U|wKhr0jLW#M#rba7;C|TP?h#~@VTMua zRn1{hS*4uP)|lH*Q%&oYCpL|B=!@9JXXG6TIro_vj{f0*g5t1DBb9b>vXxJzqj+s_d)l*E=l>e#R@zH zt0ntQPi@+5!KI6A-AVBK_tiCF+)=Iau0pkyw@r-RkWIPkl<>y?HkV;m2Q<44p$+F| zZLJdt*zkF(@P_HpKe{>s0;XkvU#c-j@v$zNY<_)v@6e=q!!waytA-_X$pI37F9^)>op~ZK=E)9v8tK%7PlYobE?FH7icf+`_+>sbwo{E=NrA zv60}n4DM2!REOhJzmcCSbI?+)RG;6PL-IXTd%zIJ|Eh=WAt_8UQ_T~0S;jnsVT6S> z1<8iGI~sPuk}og|szy5dn27M^&oVBtd9`Ec-F-0}jCw zZr1LSAm=W<&u9+Qp#$nWw6*YQyID1nExLJK^0f z-Nft4%m{Z4eQYPeP)$hZHi?L-IfCv+Gfs>Y(HfW$^>dM}~G>P%u>aMvjb(!|0YZ=_g5G#LEoioIbntmKiU9}|vIK10N zkk&!6_Ugj#8BGYKM|{#%8+%xpfFl+oIp)R)oZ_x3Rp!GfeP7;$P^VozDpN+#?IiT+ zM`7NU{J|+wmM*NM^Hew7W!%{TeTSjlncTS)-RK%J7$TuP!SN4 zdNw&K32hl!J5`scUEZu z+b(g*Ob>NT;G44e-5` z+Ld@_6vUJxV3^qkbbF8_O3x`}&(P=NQ?-$!reD%C+Q|GFqQ9$dQ2y+3X+;~#)|#sZ z`G-mG?Z7xFyW~x(#S`tP>G8w0_hNnqRYzHN18a2FOH=E112ZT&kM)NIHDq;zU1A5g zANH-zhFs$-e5VE2!4|zovJ{+E!1B&Ad2i2LAuk3vW==R%L5?nIP z8?E*BEq?8CuT;i<%Dh^TkGQ>dkA?+1vZ6=YySx3&@#qwfuuk5?V{9TOf{nQ?dvDs= zE0CY%;;>C0>1V|-M=xt1AZq2 zFHkV(_rV-agFl%|n^L8=sEz*IJ8||_R|~MtE1goSp>pQkBXFA!o!DqrPWt<-w#f!f z@dtE-(RS!=5tvBo(5-v_>y77HE1PK-+X8FtqKWq_% zMo*AS3;aarp!cG9Ir^?wGqE*74qO|k#d-LjAgg#I*B}|mYxx?+Gg=3&HUdBay1@E# zBmz%R2}ZMf@xM^pZ^!Cfrc|vE2vv>KI&Qoez-tjw1wTH-Xw`2D*S}{2x>U?DDc#fp zs(E6~(#$i>=lxZv4k5>zkV@nI`y6s59R30ABIT3saTeu-fU>b-Yinm{ptfoa(t7FC zDiIjm3MmiTy_p3tCFbS27`lvo_BOidm|l%AvfjL-O$6Y_X|8pA3|@SxR*iJ-q3!Gi zUD8JLzEf@^i!LY9hODK_zHfIMlDt?c?7vET6^_zc@;O+Nt9OPCw?@$+sK(>ohaL3* z$ZE6VwSuy18*RE%+Zp@W*9tTbWW@S0?i2QvAU(je*<5?t*7DIAB11-xW!eQ|1qa~e z;*<+_eZoK??mCGh_290wp)p5O7`L9SkD7-l&$&0gR-{Xc>Bk3M9!^!qh7( zBfBmY+Lc{xV_^INjod3?TYd8tjvzLiO;dZgux z3K7>UOdVbY6hRYRu0XK$qI10y1J-MtBzb~+nzyJkrn>rQ7dj^93Z(`RKM+j4BfonGmXUn+LviQ>`=^I~J3NZNrHSQGJ&gMPq=0ykB-qQ7j=LDR<_DA0 zX@p`q2elZKiZu#tMm7{yh8Be%emoD!~dZxyIkTQnc-fUY}j>xZb)TGD*j zJ}^x?9pii5A2;o%uML$7%o&YjHg!B(Bqf)*H}u1zyDEYO|2B2BELpZXg3n~SUNN|n zFWsSZogsQV)NIcH>>$Q(qSqkhIF_=zrZBdY)v=%!M*G$tQzWd%%~W(Wjwrbx$&;)e zfi%80=TA_h(vhR|fmKRVEvzZmTTO-DEtjBlRxmUQP`d=EQ4)3PN~Ho1VJ^Mzs`_Ci z&-ONIHJ>IY>U}h8O|<*|CHd5B0If`a0k{qrCj{eUDRqo6URPlN+3I3>7r#Vj^!Gj! zx1?dB3y1`KK_~8(d+Nk5*v+*z`VHR zg90SL(4DxpMjt?4)>AdpzT8B4?uq1gi#zX+4w)7#+`#fm)$X{J(UtV-?=_8hljy4#cSsxPvx#@8%EIZ(yKlRDWntU=C^Zqfn7A#dUB70OQH0A zenOeAZX%nT^2;b2rXulb88!+Y%q3wjzL(FjqbHi8_Ls~i?`d>^F}yiIkRP%7So85A z2L)%kc!%f#-%a84=GCLc+vW;-0%e(gYpLPPMbi#rYHLy_%8N4K3tVPFaf+%4FGR=k zkti?|OcVHscWJsy_xR_w{Fk#R?H@8YWYV#v698^0TlK>V6$q^_8l_lx;jr z6{+}M&`&854;$5C5Wf~^%zn`yJojirc;}mLflJU$N{W*$!12wxEq}TgUZAnwKsD#Uqp*+NlLKZVt6ryQ%X`*$WxqUH8y*)*tD$ zKQBm6^jmc{U<r^km9u{`29{yxguM6bVpm;VOlk{t3FUxdPDJX)&eujn9n9FvCB%ePm2R0od< zy-dW9Fs<_fnb`flc}3j4?^S#J1~5Fj$o;5|i@uYh{_OmwwR?r2Ob0(z^`7bsgfg#P z`N6cIfLVpx;p~4IV;qZrtkBZ(|2W>%t)I^Dy<0A;!;1B^Jm4e*_91AmF=~FehD0}! z1z5P`8zS*6Ef^3MA@9C)tPZBehg+L0ld9vHs5m{smXF?Kr$l^t1uOIeT1d9rU;1R3 zhhqka|xW!#O+%hwx69VGUsf2ZDkP35gQGwp-x4pdUDS{v`o??Ozn zyx=p>y*zhaRsSUaXFWPPsqeB{4P9u9W(;`3l5^|)yQfJa*;m)ur+c6RH2NdZ!s|$bET8|B=Nwx)bqA4GEtfdeWLc|ME zYqh-GUX;Te^t{6O?OFDbPVnO%Wu@7EI-46C59(-PEW3T6wLzdnOxwUBG4kuzd&mgD zFpUw`T`C~lQ4N)_>Jln<^U5!aKpXEsM!w*zpv$zd@!*5vJtjqx6Y-=D>k(?bHgYbUMYAX2mhjOu?#P7I=6kNx zmg>-D@o#12k9=|to+u8q50!0J?#i_dwY<5oRbf6UK~vZ%FQ+^ZIcK<_VG!Ja^B$?* z%%4EW#)=vnh}=9>&M14AlAOz;Fz>3k-^lbG!67apzWTkw|2iFE=Oln?htzdM&XlA% z**sxf(Qlz75KYO8rb{k*>~nQHvBZ^u#6&tj6XX0ylQ7dU1B z9kB^H=q(3}HoNYel$oG_1^pAMeKEzQt({Ol;ZQ9Cc~1aNNXe|S$W;dG{+%T+C9?c6 zu%o07?s4NhVMJiWOWf#AN>QhLxKjOYWoz7G3X|{5>6McV999bluNNe9c5D^KxSn2Q z1BswGhrX7S_r+UxpSaXX;CYX+j3{UVmObtX_WStu4k_aHtEWu9xJbE;yCO=MeMEgoBw+F16qbhGbFf>fTju?B*wx z9iuvISAE%sPa@4>S+=o?EY^8yRH5|TT-9bw8m^EkF`6r*#y$;T)t0nk#yf<767S}= z8V#8yJ55T3Ys>*kR++Ob4Z;J1sf}x3bmUG^r(E@buIev^o@20vc3>J}!Il*g7$fyP z!>=>qloRcA82*pOH(x;uF!R3C9Z)z|od~3~ontB1dTvErhSlar!0eZSG*UX~op)05 z+5ZyenVmXIsy{}v^_!9jY}AF+c_ImH0W$w;hn=pYVrJyqR(<)ieyhB+)G}@2;C}Ev z#oRS_{Gyr1Kn<@8SiLKLpFvJmVA(SJiMzHMDcC8=9~bs0uW@5%#1uDq5aaL2#}N3m z|CQxnmEgD2;uS ze9V3_E>AY=-AU@|sV~F9e=@USepw?s}@r zmPStdu@uUdW<~$XX@9IEDfH$th&~H>YxRd;1ihjesp<81JWbEw1^;x1Ovrq=d}U9P z&JuHnP<5L0jWB37XjC()EJgz39N}VimWfCs;6L7?mo>${E@Gd*_{s4LDQp`oqm+2x zo5)ZkR&)6*{Hs>{$g;#LEoiknz*Jl6!56x9>u3IOad9!7g)j%@{4&R`jX+hT9DmciH08QC~gc zEfSJX{|K+qkeyOs`hhCj8`+xaG$p&3J9CY9BvE8&`OaN<6GFkRQkY%Gh2$i?mAy>8 z?L*++my*EfVyQRHNxQEc8un(D#{hOKT7Yp$hLq&o&CfGAVHk90tdEDfs}HF;-o(`` zqpTOzSC724M6=P%ZnrP(w!G?b`rwgc8;wPfJpLYIN4t$&J?saK|MQInns)G7Mnus7jBia57A>IEFRZ_n_bv)b=Kydul!kl;{ zeH4(h6%Up+m-A5f`UckG4L>DB!5esUZP%!WAbxDz<7=w0Unk({{YS_Tw{O#XMw}O6 zm0^dQ)^*_M8&Ec3X;)E9tgDw?I?1?a2zQXrwYZL0jkhCp>j%J{>9USO2E{(=;r!ZEhK!q`r+);|MlDt*h&UOe_OR-_Naf7 z#Luk5PO%K;lt(MomjO5$XI?X5${VWAYDR`W$78$FfnutaYRqlnOoPc%yeYZo5HwXA z`P8|(MOE3JaW?IM@u{|PKi-QUF5rILFX)CuQWQ|0Zr%9o2BcD zM;f=WDL*2m#mwh+v2}5L)R1EqD*uj5d6e((;T8Jv482)%4IO980Wzl8mM0(cR^nJ> zOJbhMp-XsMn0yWrS$7$#Qg`}D{)=Gm@q(aYJWynba+8X#VhwEw(9WCC z3$7~G7R3DkBL61{`tlMRyOTqyc)K>M>oqchZx>Qe!O`p|zC`WI1$qgj&zoGLbo?bQ zaGZvr=ARA&t?@gHcTDAqqdXco;w5wMeLKHgd{pAjb0JRJ$GvLlZOF>5$7Gy(#F}Ah z#?!bm+-OXS??&tPJ|yL#VVT?7-QJvaF1sG38cApB9{J^k*Y0Yx&aBFl z{4S8alnDEo&-9F|;j{%W^1eX8%UUgNdZkF61=Bp-#EQh4Oir~l3X-nWrs=kZ%3V*N zMl6Vv>Pj+_3>OO)!hm7P;%-G`cA$`){&8S+_oMHjizxct%0M>uWzH7kjsoYe$=Kbp z8zNh0X~Nkr+FcdiysZmVZ-I;p?c0J`6ng3Ha}6aSF1=j_FJ1Wpfj??v@!yLTZ!f%{ z0J|Rb-QX5#)}MAIm#%L6mgAC%=I=gduOZMt_R-kjx+nc|v^R1_^_#DJI!H%xgCUef zAT+xV@HaH7Q14x zrYKeiivb-Zf35oD(ov~6?vl0CLH<(h^*bitftpeP`Ctf@T^g!+etcqLfE+~g_>izW zkk8b@M#IEo{^mf2I{j7W$N!e9|0O^6%AK6f_VuKDJFCBh`vG}*b{HH#KZwe`ut!Bp zN6iIwxxy{uR4DkfM)!A@<#!{Q|7@>pcn!EP6;t;Q>+wKk_e$i)-97(jpZ?P$rGjYb zdE{jnKu~#Z1#d|P?%R@pB??SP{yi-3HC2x!;El6Rs95}MFY#ZkBBdx=0JeWK0;C9K z;JA4uf?G}sM7w+If9pwn`-l{V|e^e87IEn2~QwclYL;~D9 zp8-?Wt`L*s@A<1rlzD*DqW;pwZk7M|Wr-1|DE%0JdpiPGi(WFI@w72T=kF0<|G4G; z<*E78Yo0`R;>x0{ea`(`x!Rwtu;1PyW(~mg0O3Uo|Ks!Wuhzu>{!&h&%-X5`qTBD? z{_;DPH-JJgRms1hy5ZdKZ5)4kQh)Pr4V6m3MpW6WG5qMSKP%KpK+r*fqZIysd1wFo z`TeIOU@1?GuF4R7*uS|8|LH&f{n}x70`^Fn8oF=)<~{uTBfa~lBmBL<|9PGLy}s{P9sHl4rvJZoaQtzx2e!zaHEgQA{jd(##!3A$h=IM3uWjw@S%&ME zyat4xL>Q>$4=-86K-YAXEA@^zKe9X#Am+DX+4}SOQ;}r(Orn(lem4uXM>tWr* z$b=lmxebZ(>8Ztzk3jbtJjR>HQY=%@U0d>k@C`?vGZ(d$DE{PI>IxQ^+){<@D&amL_I!)v&3$$Pga|LME=^DA#t^_t=+OFG~${OA{L&QP2t=Jnnm ze)QK}rN0;G-wX6FTTOp2(7$)kziu)8y@US!i2tir)8CKyzhlt9EV%nS2K_q*{i`yX zfWMQZzmufDY%%?v#s8hf|9MT~KU-#hmzn-9GyP>%w!h0ve|edyw|wPRA>}!t)Ytzv z-?Gmp$vDrI>@6mm)OyD_`WeG!_6hT|qeT|84FRWTm-{kie?$wU`5%+h95HpzmV47E zU?RU}4hS?RGc%1rw)L~|{nZ{gvFAVD^=50KNE+ER+$!;g5K!$7@6UwYi(zOR?o9P54>Xl{_`u46!H4_t-q9aPwtqJz)_sP=OfZOEUXLnD=$WRK~yX!)%NdH~&=_glT& zuVFmE%n8}~HIn^~{5jU-vS`(E`ej#QG$qI=V5-_9Ofyj`Bs<0X2E&UYm&J~Yy&xGU zvweVaa(<~R{sRyF`KH%=pYrLrGnA2!BrD|=UU!4Z7=t|!(A~+MpcLXe~g`H zR8#Br?xjePE=rLS5ETnmxE0;cR4L$XxGoxP3)cq|9M9l^Z1al+18kcHRy6s%H#NeL%F4e`F! znN;C1)2Jqb08_>>Iq`?m4y#{VfKV6|(IHWv*9sR5<9UnP2N1kE`+8D2pEVOD+jv}zOB}O&e-~}%m%<`Q+ zr)m{SjiyGZCz!BN&f=DFh!C)pdF9m)qMG%$-fjzV&#LftnwqeoOJEdY)a3_>-!j3y ziN&m*TN@i1x*RNMST!d z7|2uwf}U+K=ivhwB_em3@Be*d|3 zI$8)%8%{yqp;ec;;xu4y^C5JjD0<8ktgX%P%<8EoVbwVv2&~f+P38h}VW;?@-`mE6OBU7rX=WI(p_DvlZ?-;H|<3!zVXSOwr;B|~;=an?r)0p~n zVYL4LI&J>M_1fZY3ZwEc;DEdI}DBfpZdI_t!iD$Ls3JU>#B#oBX9bn-WiU)Bym8b5Xg+ zscaLB@38xwEDwAPhSOiKX|)^!3(W=*jxg%FjbSrJjkuF{EQ$+}cm>4ttLb{BMk;aA z*(jbyMY5YiMa=;S87{=(Z^waCkiCHSf4F)3-T`rHQ8rv}gnJ;HBIv*OPC{{eqC%zd zXd=~)Gy|Ih{C%uUyO=!&=5EKd_ZL#4wHcTd8}XJ-s(~B+VR*;Cfp`f><#!Kx_lI=6Ai}@vf_$%JkE|X;;n}_ya&rSwm>J)|18bqTM2#43!MdyF#CLWU1 z(3eFSDL!Up&;L5Jr;xx2qt>q%vo$SXmCgU~dWSvZ1%}iv(jy(@v%Srfg_;-u9vwNn zJ`&@*t`f}vz=`^{+r5T<^4K{Eshn(iNt@c&bTt$d`9EU4wZ4&|_}er48h>#YAwg`?pad<|uQ%iKJa zTQsW?aArY_AR~QQQ_eow%#R8Mx6T8?P)4Q;Vsdw{`b|_i+X2QYw7}A=S{r!~Cd2l6 z)a&aG6-emXXvkCgd1g-GyS{>FPvVxBQ#}kAYyiSRVfTJe^Y0d0CH8|y>y~eLusp@v zdED&?d3)UpjCK^_rgJH8Vz<|q*4wm1LXm|YZTg;GQ#*8_8=z~UFd@f;y)hsW%y;q1 zSUT!b2+97bz=fjxPHH0uL<31kjI>4dx9#HE`FEaxZ_;Tds{A)ZRPY}XfoD9xv%fCw z8@<1AUN310guK=?9})6%d3>O(WuI+1CS@=;n(d0A(-G*zFin_BTEW}fogf+PwvjNq zo_Y>DXrmbZ=b&ul?HJCO1w1O^umAecX^+3RsRg)4bdW--(Cy2o9_%Fd-Jr8?3&kNh zEN`!~au+Tc?9lem>n)CG*I;g`G=+`s_3ee}!JH$_QB)M0@!b<21jW+)Dp7!UcC;=i z&8lmh&GXo@!OsoYoR>sVNmvkZ8;f<%V%$(GS#G_oYAuHWD6$L;)F*7+mbAQW1p+WS zJU6RGbF{Dh7(BH8!{=W4MZ534*V7{E1$#Z%eT^E$ATNH-$_20VDb$NWRC^)*J1w44 zar7F&*it!a_&vLBqKF-?c-nan%iVSa+{ypvb^GJLRH5{YwgH|dE@z;C52TtZ)YbRb znM&j-ZG0Bqkf_M4cRthj4UfNSIudeo2LIi z-_&UKh*h8$5;9V}N|ms+J({Zd-iezTQ%bATvaqo52i7Fpavr8mNJn}eC(GNT5J$fd zk-&yP%zGdbDxGN;ZU&4vzC&Y9Y)sV=D!2V_Yn}X(M6lB^g2{@`j~lkBe;P9U`=>Om z5tZ=VIKY>>Q=>~AvB*+iO0hsG1pdRlNvEVGsvNiwz8M`a-dh+Xg!w0pe9lgx2}VI^d}P zI(Pl$GQ}|?;L3Qp%$dXpW-f#1C6VO8B&FlqLZxxETraA{^E-?s+Kcpz-G`!|p`k`A z$)?M`xD`5D*egx%_J5SnL#b~!ej*zc!P|YGPo!^xAn@Q?;KDK7k8sb|auBbiSa>vj znP5ZH4k5UfrW15Srf~=5iSOXgMOtFmd=mG8D<@akL5YSGp6Fe`*9VyS|Eq=qs=bW* z+pyyda5r&~f34^}yh|j&3=}<-vQG#GlBr5atdNR~bZVa{<RaARAL6gB$rwfjeFIFu`B9@slJa9f$P!~e<)x>tw1J~J9H1o*S_LC z1~a{1FK&>b7O}5i3hmx|Wnng^$INlzTyYa|;&sx&ZbM+ns$^v7c+wBtZK6e-orcT# z9Gn2^_-@1Q*Cj8}tRk;(;5uxX2*0JL_F7G2v5AvJT!fUQkk3)c)4VnsBD*&#;KJ`Q z6;-C4)NmchH;h+f7DqQqUSaz|8sP%#wmpKvM}6mD?9uylD85z&8Vf@U-HdH45G~-uppp`5e7rlE0xDC-NK+< ziT8RvUa2(m2G~dg>(VQIACI-L3u#?tp9n(R1f&k4Gmy_Bk6A4a0{IxR(XZhm?4GN7(c zcFZuK`v0A8htd~a0m|QD^TMb#_18O@eYvvyhCv-6cOYjc<~zRHqZc5HHOe?#T~twSZ);TYgQ&d52jN>9d+S>DhHC zowNi%vj5x!@rwnKz^^AdqD8rEPyZJcnv-3a@Xt$9x=wCOU0<%X=)Lhk$BA6?@4!X2 zvncWmEy#;=w)ZH6DWj@^g7p>u%@^a0-)MD5qOrrpBR&6E&&Nffm*=kP++#e<1Bus` zbB|n_eHdDht#wn|ls=ZRsEb?B_ljHxxxqY-tF=BBf8pAkBE2P}itBkDr%3k04BJbm zAB;ToFUT$x?0yLjchz8tIy?3fR>=jHLO3iroMq~`&Xp0$g;hGMSorir7u@zGkUQ{_ zr59hROZcRuOzzL69OF#t)Wl4!1|L*C}gjgXzbBv3UQ^kK}|i~n<1bNF8WrvtYMt^TOnW{fZ!e>D$zpCD@YG}QWnxMBXINuH+~A>V zC=VsXYz58!xAsbg4%Is^gPJ9^abu&v1n8iY96wv$t4|tS9^DhtSr^9S>B+oO-`Y!Z z$>P*-x;^oCKv_o`JVxH2@&-j?uuQnnjCrI|y1T?zKMV6%vRZ-5TFWN?>6qSb%eg~= zF8MH`y;@!0j4;mBVE^FP-q0$|sj`Q>=&4W4$?zSJ9rGjez&_NM zrXS_ZYOX&&DXQ8Guqup!-$VSw9UO`H0iTdk7{5A3%4b09PDEf1;_M~XbJJ5|?2it| zNIq6Vu;t{~8H&B}nPMf=Ots6#cw9eu3rq?vM*vaO&nS3r*8fWdE! z!scU5N6*I0SovO#LbS= zz{6j~U(&y09Af=8d`5=H|6(So#{;f#y0~j;_p8{Yxq6^I*x-Kk^XwGue~F=WH6L2I zbG53_A2aT-utUFdUpQ*zf+x`XscD&Wcq}dP=mhQc>luql#gwp=@N~_`l}2J*&QF9j za6kZ>>s&5`>U{HsRVCYH2;r7&5^+x3GnRYva+2j)Fu?Tv?nv*3`@x-asgSf^5~3Nk z$&v&eiO*y6{SIUOK_f}C)=YUnSbHGCQQP-ZnLAHnh)B!fqMV#drVtNmrVs(k#rVB^ zn$21M!xer9@jSFG4}fWa8f&F*?VbZU3oOsi;o|Mg+m=p!a96#rpor?WwTpvCboWU z^d4mHNE>moo79{}-!N=%SruQ=SdL9R@3yDn#j-++nIi7`yLr0E* z=55N>O&f#m>e3RPspZsU0b_)7S86IA z=0K->b47(77DE7WM)nkZ&xRqWh`%SrMi+uNDZ};3yP^*))#8>~1@1q9WBN<#)HUe# zrfN);C%eJzN2dLqbyi)+KPv;k6Un1T&t{KM9z7U1vBDW!lCf|w{WIX5y=SpdcUKfP zcxpex{#uFpb>SNa9GzZ~)!#Gfj6k9$R=!Us42Zl$ySRIGGy2_HXVb8%x+6C>0Nlqi z^c=(PBKTvjY*G@0VD^VX^54Q-X>+ufJvuV~lVrzx^Cnb7YIQUn{<&GfaYW#eLg;I+ z*|C0q=J0Gi6h1J5z1=lHZ~k=Y7oZn%;HZJufeSyi$9|`F>iGq ze!dUwXnG{U6HF$l*F6wbhfBR0N2(Xcygv}(aPr)J{-dm$- zz2R(wvBrmQ&Q>D9P4gh-Z)_E4)G-5dTbRFmk>NHHuLBhxh9C6FT^wn!Ie}++SUOF9 z%*J!6PoOgVv&xF3Ic0VVKBft6er31ptML$)S1%6I5^k}*8@$CYt3`|t*=Par+EvSr z%+0p?JASww^T}(m;!g?L|1Lf~pV3E-ve=!iyrgm0=v@Q!EceAr!)9~jD|7dAXpr{D znMn<-ycaKDx>uVtD>8R&E4a&>bv-F6fq(FEl6jPtBAxp3(u7&nj%JoB%Bu>%zS6fv zwwkJB<=(v08AR_N`M$wCIcXCUAGhq7K5TRq9@*3d+=Oz{;uSQ0T_a#9V+Z)dU90V? zcX^1w-9VUup}Q|d80Tn9{@*h%XDOm=r=L27ka;%S#pp|#i01VXa{C_NK#$^I)xP-k z_u?IZcBW^Qe`CE}Hb#rJY>>E@)q5YQPNjLP>G(3DS*QBruZ`jSN`^t*OE|xOWQMDA zn@!xjQ+cmnvb-yn(5g`CT-jF~U>g~<-J}v#&srWQq*A<$l~{E9bsV6%(J+*2u7|`B zzPXNjeYH%E5tE~{N<<@LgNhs$16H!7V(huD_$>dv7jgeLKo2tX9>GW@-Ad;goq~+v zT=u!*N+SEzX37zsM?Z+MYfJ=9w=OZR+T*S5LxQKGl#8D_@e}XG2{P`faRIH$IHBL4NCjJ}4%zO{F`}Mg#$MiIu z>J>RngI5+ZzcE^;lX2m);F8AO`?unan8{)Uzwe%wmu7pbf4_-1#ogGcQX}napDJHm z6}wdLB3NO$Tr`2R4=8fDsR^{myi5xa}VVpjMjQgtoYD!g{mOA6*}!#I%7*B z0|X5zg_4?QFw9FVj&y#q8;S9_Hc@XD<+hmCC7&9mtLpwFBm|%Oj*j2GVYB*NxGaU0 zqKSJs5vA=khAV3=$@a_gC>0**xOq?%dYZx)af=&{X?7J54h?(j`D2(bjSDzYj?z!> ztwtPG|7up~27hHXn^%$QuD{GFb4UGAb7M~>Z-j!Jr*5%L)n;-AJo+*Px}WyzxK%C9 z@sIs%7g|5NsH4{&HVDZ0&0t+j@y33wPQr`rv z7$V59U6~6!@35uL55}q-J!;+XzVdrB>g>W=T8KxrK~Y}zx@a~&H@lt&p#fb|9KU{N ztYAv`Q5zH2J%mV{_yJJ*w9nnf(~tJYoyfg8%+=4}mhEI`p$3vz-S8+Tandv%WnrO~ zaB4Kt{<3bYFb}gqazf4$YT#IPGp7h2FFN0m0T_2j0S0otLvMLepYQR`|5c;Cx&^Wv zdZ85-Yf=5(^Ek_Y4*#>vpE+V7-}v>IKa8@+0kdBTabiC*6ji^%E^<>UP-t!7VGL$b*42C z^@cIoG&w`={Q4|q?Pi_?H1G1z-P$$%`}OX^j=wQd*%{)9q`_ee(4bw1 zEi(_A`lMB_iIrdWwi$DA;K(8VyEMrajii5%z3Qg@x;c*wE;nU}o91*6SBx-ZE+^pD@PRhyDe zp}XQemb6-70bf>F!#=u}>rlTIw4B?!H%ueS>xZ?7sQXn~yvT^hHTE9;ZU-v*%#%Jx z7Et+SBm>4b@6$eapCn5+_^o{v=<|LKvTh4-t2887!w;9{fbsT2s2z^7b#;Sc<>in* zbYnD@G`;kda+yKS_Rg;>hiWj>BW4pOLAy-O@Bzd@yX1h^zCP3WYkWZy55gy>SThpT zeWhwN4ewIDTNGi8_hPuz)O9~_Dupd|+ zrzMS6aCdqE>$3OgmcqCr;gLWB}fI_|4j`sm@^74JXi9_8I(+4s8S<{cN`r*j)s-_P}BW zpN{t60zk9@z{}Z9i&s5B~WBi!&X(-?pa< zptZKB1JA{spzIB`sa9w3TLE= zwGCflQ`60(=J*iBxJs~;_1;R7%=P^^LRzEPYYnF51zS3Fd`IRnvh>wq*UriyCR%#3 zI_9>Q#oGQ`q*p4xrJ5{Y^_kf1tq)`bi_4bssrZ1d&O4Vn+e05!CEKZBqOr320P9A`) zeW}>g+fTHhrrpv6aKX6~+1bkZz1=}Mj)GH5Nm_e|<5k2J1*E-@6X|GHf$XkH(lAu| zd4Dnqc3x#fFO`?^o6YF;NDe}}|Efo%Q9v;t*j{Kwukw(_E&d)Rx3;-3e27`p40C1r z3&@f_>5e>TmNe>?4{OL&@YI_z>HP){5Z!uac&h1<$;97U8vFT)6~5oCXk%)>Zuj<> zg;VG@W>Bykhrc&z8jA3>{p9w2n+jM#*jzXjYVTBpOryX=cfuO1?H{?CZ`Asz(V3xg zK;*ud0qpZ9(&Kt&vS>%LOB1Sol@w{04~lomk{R<%I|1<5X8~6H@%8kGO%vK47n9l zz3=)!WffU)U*fgFiqP$m+vzUn!^fr8zq%IRL(*E!pZdXvmOqaUp*l_Wvir6f!Iq0h z9mfVjP`#`S_PZ^!jEw8+Uo5$*)8QTRh0pBNRpW}|B3$I88Q#jR7)fKy2?VnlQbDt? zsqT1O)w1JEtw^==jqP4NF*xS&i%EqS<*!nbdH~682k9A9V zHp=TQR;4fo=Mu84G6bL?y*rz~?|N{=B?+^sos8ZhDbx-Oo7ki?39sZK;kkc^j=ejy z220t~K&^C^m+=DfQZvJ_yUEG{kJ*E_WBJLPISr{vCwW+g9}_+W+#X_{iZc!w==`%M zGckR)TFI8BqQbH$c`;O}KTou`#!Lz_guR0FmVe`xj3mR}ZxxN1tc;st*6c6fGQ_73 zN@kh{K-!DW&fQ2a%}@r?s5E} zNt;IDTQ58Xl%D%1gMA;HA1C)`KNmwRjo2vj%QK_t*k0;oJUC8Pn&($P&k+tNE#+to;1c`L8>Vni7olEbenV0XvdgN>w6c&LDTPwMcx-Ydz$L6Y~5G{&L?q;z5A<*`N{9rf+()yanzgs)3| z&kjoAWWDj`JZ7%&&MA(xW3*L1EBnC9TAsx2R>PdEp0SLZElH!A&I8{nK@Pkbtk8iI z?`C^&+-XL-0y?v`_X|V$#>QIlu(v1;#>{a(_5!zFWv>sm)wIO%r+4j#)^=qc_rMjAoT?ZHq-O!UtVs<|V zMknetcxx>B>!{B?#I}8@{tn(_UH-K`uYM%|(lgc4loO}3rY+PbYs!RcbIIEFmU$sM z@<2S#5PR_nOgSpB98TtgIyyG2F4Qf$;VfG`z6R^(%KS!Ge_{HaRFl5FN-D6wn;uA* zyvik)kc915*tDD`t@77a#4q}&xYsr9?&dKJmTnu92v(*LW%k~d^z~KaI?!W&%W=r~ zXmR6iS0#2nwJ9YU+zS6?d+n9Pqy?Xp>hd6Sa?%jTN=VOm>n0RRD@?~#UydZ9?@jm}?svjmQRr-2$U?+V$STZW%Rs-i#R|S^4Jkc2O4)ehw z$_A~ITHhemeYGt-ATa#n6y0GBe7)u|cWmD|yURL%$u{oj{7W1v3V5ZQ%jmMZwtTt0 zJ^iKGmI!p}cFhfWyNSIpOZ5*2dw?b7Acc-HGXZ<=uqc-}U(r@kimV zj4544vUFEb78)jO;@VrUEDdbZbFxV))31$ZwZ-q~`ftCtIeK2-?d1zbrPz=MlK$2c zd{t{QSsFbWpWz04N8Unvw1KO)=D|ZEAOK%WDNDWvHTKi*S3&=`X zzxU&4qQ;nD(t`KbV&pPs2XKMgn0p9D{_f5njowfgvXLV zu)Y34otVO)kwUY%jG!%61bHZTcX2agwax$N2nR829sMEEsz+W+0_e`?bbhz$g$KW4 zb~~o^#;epOpYWlgEFG^Lp_LasL)0EZn}HG6FwK79U+UtPD|Du35+iw>ebzetaN!J; zYlsSw-^QAvi_Su@&NmA@&ZK;a01k~UKh*z83uH%2Z+1%=6Q}tAwTf5=l2`>6VpPD0RXo0Y4>qQVBq=& z`70oF)=wtVNG(SeaKsT|*u@>Dz`N8U76w5_t)NIizna@3L!oPRWwQ8}TOV1`SC*~& z9MO;=9lJ{ohf_ORAAPCF|+&$;=+e6T7Ep;}6D;mgXo2NZ=$(-mw;xL3#0eJvRzExdh<2c5{LFPH+P)VZ1kUPFzK^cx%7!VlC)k7WRl!6Dt@fMf*r!^VT7 zE69Uo~o-TCGx4%62k0b`P>}V8;2+Bbo49Uc!y@?{3gjuAzDU zLwm;RBxq|SPQ7B6F92b(;VydN7P#=Cu2-le@{OW05q($2PZgzw3^GW6s4dJt(% z#Gu_(k8zW${k?kR0;vPHfR016wNcv+%Di4s4g?gPX7kxD@}lD(wo-V23hliy^R9Bo z`en;Ib`7}?Q-o!inpEabh$47S9y}N4vl0uCthXpD&@M*K;dN#+1!fWQU({{c&oD5j zu@fqa%@iCXRc5RO{k*dpaUWcbKm#8CS-xVxD|QMfQc7}M^&QVPiYxwA`v#}WrhQGv zpD~^#8;_KVjH|VmY|WvOx=-hL%YBu*faM9jXw>eV5xo2B>l`$^nz6oiU6R24>WbX2 zT~@uN77%7A%u{&K%f$Q)!V7AwlO37;V_$0hx2x3nm7E(9&&GBFq$Rdq>YEm`|NS&6 z2#HyVI$|L%g==ocsT4N!7#({Z^Ms?*%~3fUjw(zAX&{cJaGO= zPll$tAWz@7Y1VgVO(ho%#8Sg}T)qU4KBrG{!2VF$ObPA;Cuol8m3C2>yR)r;^Fg1o zOq@>%1C8a%wg0%#=Xl&G`^C;5yuGCZ%TtLs%RRLu@HazSEnai7MG-_@(K9ysB<4}o zm&C$qLV4m_-#b$wTAgmstqi0wmgEcjo9-sWr{pO>GRW)Ri0_nxk@tpj4*F!xwrK+T z<{sz|naNnU=ZNLj^$KZWifT0X=N!Zms@kVe+`k7}X%9Bo6@hUYR>#27v^3CP%DG=I z3m6D}jrPmLIF-iSOXTP&WyJx55_ zDA1txTbp!}1b zpq$*kjM_(r8=jY@EQzfIUyb|=O1q+Zy@<3Vm-FNifZPq@lQKN(h^Xhc$g|S@`>wshP^&60G3V4hCLMzfRiULsayQses%#!mnc}Aq-c|=3DEV-sU|`}5y0Ssokn~?f zk%Y6|Yv-c(C<#7HOhfrnhc(7qgTZLHHWq^}_71crP*T9wB4gJK(WIdi?NeQ-UDXm# zuzk?FbaR?y^K$Z=1^al-#F3t3%PmAe{ShU~=Q729SkVwy@h9Q&ARy)@?eVR(?gMfV z>-IH~ZEg_A^409~Uypz_gN>4p#MvVEOcy*#bnZwTA3i)LpWT-HNW#$S?p^-RM9_yh zQpWi{L;hRy`#+^8{UY7e{i0299xjJIY>K&3#D_sW&Goc2mjz zS^iG6(x%aLoG*eZS@YImKb~I|9VaT7W0>-J`F5-uw${OQ>>S9jdFT09!-$P+v?@6n*pZ&qugEjpJz6EujsZ!F$=+b z#a6(yM*p5%ojHpT&)+zMyeYeCc1GUC1#QzeOLEdsBgsZIrJOtCqQkK+wbvzguxSXxy%6)@X zIMx;RT2}~@dAjrY>$9auKvcHW$Z&aOu#TP`HxQZ{j1HGtjzTbaOc}^6_f3 zgX+HidQbHr=Evsf#~bVOrguQA?j{rQVM+p?bM_$0n6sT5(Ic)zSYiBM$xo%n=Q*b| zrw3~$U(@rsHap743<+L|4v+ZbVi_BqG3B;sKkm{Lr7fFE>PU_osw&1MrgrU%=}nq&*p{ z9s9X)+XhhmZW3V=sm$WO;mhomk2RUf-AC?0)NC$$$TpXV2Jf^Q^ zuT4JC0@?pD1^7X~Z8iRCSh{rPAQSp1BNrF>A0U+lWkq~;##QC} zV@=!dmPP`qr6E9hGCudCF6nziuaDlrCw>!wrejmnI^y)}7_z9*wDHq1z#Ma|9_DyJ z8>~Aap0S;X+6m=W@3BWlcM~A7w#HX6yzc%bXjk z-LW45=@dUES+uhQ!Zb%O9Q9r3y+JBDAP^UhjN8`q5G1sVU z8VFoD`%W(SXP+W=)_?AGUuKx|-pcKm`8PdZ*vyWrbwoixK?Rg!x!GYF1yV6 z^>b5{CM>1N6WDFY3AGped_7l!`|c_7zc&At*QU{Cm_b8`2r$~sP!tlE+A?^M{K?i` zP+(Ds;6we;pk(abSIq8pcIaZeu783vtNl`fnD~wRb(Z0;BC}Xr6A=m``{K4wqc0pb zjz?)-+B9amn9n|3=6 zzXNmKm(Zz<-IHK?D%OHgu83vi?Y8x+0{MQ=*wbuW$*qJI>2Pl;AP)6S>t8$juYON@ z?4(M{*U+SUs`GUi{J9x2>A0qQ^$>8tHAoy@!fR%k2Lq}ZVGk5pV};~kacIc}d z@$Mxm5bx2LboVK%{UBnZ*>Y~DUSn@`0RIYzeJ?I2c`$17a%P?nJKF)`O zS~zo9FyoB@n$a@TLqaO_I}Xh+ApXFQGT>JR!l4v}Ba$=xO198@_PqsD=QEZbAABfP zaJ#S7ER`&0)kIY=e1Oe#Bitn5DkV3~i}a3>DVRO!-pj+S7xQ?bg}5}#DV55Y5 zUojBi*KKT&7j{<+tGy4iiw-W--?BinM5awp;#29=z7zYT5|Dc0HG+GfCcEpk~)u330^WV7U z9o^7zx%>O$RqBlmcE+ao-W|CYeY4!Z+VJ*xl;hFuGpPT%xp09;?C7_MzYoi;nDE`k z$YRehT}#O=d|-4s_C*kIWN}6|v)JQM z8h|~^L-Cv=!BJsWOD~m2iQ38P{5pkdT8TB+n9T~bbrNq|vFPwT-f&VU>|)Rg`&Z8C z8hzT7eNfLNQj@+Z8}VXE@la{d?_4o3G5fS_iomUR`E2Q_X(jg%ZaN`!$vo6>Ke0Sa z_5@!Q`H{6=lVf75_p0Pj*y!-mazMrT;(fCBmfo=2@9vdiM;&6-8CV$gjnUN-Rx&=# zMuE#KTF*#`ETU^s@>x;A+msMpN zDKPe%J?J_%;%I!yo3YA#2+Jrbz|={*RGDnqRC29%#W%Vmaq2pSOJ(Y#VXHs(y9s9% zb0H>d)EKH9D765aw7sgX@H{!iKE#)sA+aq2JZ^l(H%n8{KNM~vl6fi~kRW6Eo?6N+ zSpKwC8m6W$m8A=BuNp6T$<$oa-g2>16K)vC_%9;c6|neBD^@uItZK+*a!nCOfo)mr z{rVy9+xiCf&Ii)$vv!_+)q-95Z;r#lsh7d3Gs^^vhIJ4NJ}81n z6&s<9ohc@77#ZA2D!jq}+xd3*$p&ON6uj<$?ZTy6h9tJiM=i#-_#wm%w~$9UX~f`WIN%#K$B$`Dpg(X>g^Wf(R>pxm z+7wS*^W164lJnk5+k3jfWY=CgXE&Mv3mEtmaei-AB#^LFa=$*5m!s~dhX2o5#kE7c zjg_VS-@IO@LN)R9`=2n<_u@4We_Foz_f7lyX{fDO*rg2D^C&w&IDc3CmpL{G!E^n& zIlcarNRASZ{;+R`XPVDsl*>$gVswHjcb{@jl)gqLQl zx*_iwiJ`qC0tR8u*{ZvCd-k2DND1rhr`zRS()_-@-pod+cCB3Tq z@unW*!4Ku7y~dnPXM6g@WZ!3{mxT=xVu}y^Yo#LNeGZzAj)I#yzuJn!1U=T!@V~@9 zj;hW61e@Nt3PY~lvsvIAj;&VHzC$0k*H+%=;bU8V)YxDHUHrPu9S4QhKOg!DZ#{0C z{wJXLDKJG3DZamDbHk)qAAOm8L9}+REdoYFQnp-G^Yj~l8v7bBS4~KyR?qk)4f5W_ z_2M#3g5@FS!a6V=S4~Z%v1QlNs?c^ib<9XQu`NnKp%}pH$76}Ww zW&MQz=XN`=U#pQm%K8lm%27aUDsviFFo+k4_^S+Az9SUhFzr)l4lG(8KE2?7>cPZE z!lM~Za1gLUHW*M-kMVl-ym_HUs@dX#v=kwXS(K&VS&@qh8!Tc!1pnSfzZqYQB(K$P zV%=Xt{Ir9CF8X(*N3f3JxSwRiXr0gc zzU%%?P3);mY9LSNrA))xib9F*Sp|Ai%LaQh#@{Zd_slrEXX|p$tr>cXVBF5AtZE z0uxQ!YuaxBI2PX*813B1A#l&&C8eA__2mU$i740`SeK$NAoq&~fBbA=X6HuP3P=7@yHf69YbBeB@k+#UYe1i{EXV?D7#yJ}F9hM@W>-KW z^QH-`&!CVJynzrIZtCCORr|*pi~58d{z+V<#<%LK=GZ-x;lBYc@I5Xt!8UIDSa0R^ z>5Y+u@*VZM)kd*pn(SBl#*y!Mnjvc<5-aw59k~d2{h-f{!DYDFG&t_BG>Jow4j<9r zw>UuF{0-YR^d)ey`bB^~W?OgpUwe_y$N6mlL`6%B;jqqC1h$NQ&G?w9$iM{Y2$KqV zaMVy?-aL%MAV9PxoM(^HXe6*|33V}-nH>GodZZ!0zwFb=L01=Qy@}YBE=s#xz=?k@ z>Dc+su78+3(=U>U6Qs+VR9vf+G;(8xA8y;2r!6=zdnJuU5{2|14M5?9>}_FfInww5 z*VpbFD7T0LwT55wf1M4-ySeG1v}LZNN&9E`pKzjAC*m4aP-=tTbHzszXLBZ-Piz~1 zwux{|JO(YG%(4FBPF>&L+U@=1aTdHCv&pF^$SuYRZ>iLq;Ea*L&vP?e5C)&!eyQ_x z%_P@aiE8-=o$~)21)0pO+6N&wF_>9UO$uz>KE(u^rAJ!hZ0C<^Op z6=aJk&NVlJ!<{3iS(M5+QIF28>8!lld3pRHfTiV2nD4Sg`@_4b7#}Nwh6e8nZmYd8 zCX8h#pKrM>1DEmGyMcTDpC^+s#Fi3?b#II0jP=iT54*Shdjh>1o;15I!iqhrWpS-v z_6Itbss_BjuDMnhWUFf>QS)wj>}#$&B%I0+l1}ewBQA@%W_NF_y=D}2=H2@IFgX$E zCE*>K^M>Oa>W>KWuo+1qGn0MuKnX(HFU3fufW330y0I6gp}pqFRb3Cw4x?J(Hxp6xV2KaN}H>D*Um_u;7i} ztnuOsx92C_xbn41DTMD*bphOF8zw;k@2lHT;7x(byK0jLkdCTsA8G2>W9x#4rd)^$ zDL5wMp`F^EbK(~gZ=&Axf#y#!zN1cCQ1@o1#vxP!T8fF-@5-^((sGHmD@O@-WKdnaMK1hzV)1|V_A1{21;aDveD`8Ws3HjB_qukse0=Vm zT2iDv9<+qDYQA+NHxmz#Hf9tB+JQE;-`Y`&{67s8QEFOqSYC}KDqon*Ts(8i zx`JS+dgW}NBSnqm6E^`sWt!&J9r(}51pGTqtzzrS0PfbAmC0rUhEuIE)+2u5w+WW#nEBkC z%OO}Be%uB?OvpE_e6cSwX#3tB@A*|UOwSTZHJG~cp!!QHo4{UJ!=6RP(w`|3+<75O zRp(tiL@=hIA(mdLSSw2nZ-DARVMBy@lQdfe5uVU6Kf;E2zBX6C%-J+JF`akOQ6t5|gPo8+5Z+F(6BvM{JO zmwK~|^`3wI)844}0fb_G>QSSuX|+6)b~_x+B(qjg``fqeQihJ_E(2`Taf;Ko;pFwo zbg2%Tl-vCju!S+(Pm>!9bBu&&2+ka|sX`g|wy>POE#d+_5Zlb4Czg^wQQR z`1r?~B=o6(dP-HCBPzBDl;mayE{#LdEVF3Y?1XUISemZ&a_Q2}{s3>?*C>bru5z+; zuTWlLJV3v^5%TcfX-!$5aS)%2jL+^8RzB$W2HNAj{L5c-?_?}ZrXymPEflTmo}o84 z0=CpD*AQH@tC}??3Px9Eq0%})qpU&;*V3P%phLInc~^1PQ(DJ%b9j7L0hc)k2{-`K zkL547=bGu4{^=fRHUT392f`FZYn;9+d>N67i53KGL39l2_c#+Z@ zrDG<(tGV_@->#W&ImJnCHoL+a)tW>eucQIqHw*dXWh-SDn-$ps zDiqg3l!M7AZJ=5(E*DG7F1m6nmdWuG=+i=0{k4W?PfKoijcb2>+7F3BT#MpT=-)eF z<~Vf>dvAD=&4rQb+Kqwe8#gLUiuDz?{gJ45jm4=o?o~C=lE(bIpK2th(doqW;e5Y5 z{O{s_xBcC1A|t;Cdbw+?1!7=gGpt7lbYWlLT)y@$>bOS`nYR5d9U|~kaF#u#Zkm;a zTt7|PQKMxVw2cnFzq>$R0MdQ@X~gR!DVv{yK->J6Nl6;?l4(jk__7KTWXSX?MNj@A zJ7u+7b`bqWPu3wy(({^f46iD)XNOGw%Tb?C3zEZ&`o#gaBD2e;v^#v(eKPP*N}OFY zIbUh|>Bjl?WHUVZy>KVqHdE#>=LA|_zx!q@T(fS^*m=#4yC*jwy2W#Ud3w+T)IT&! z+6p{EqQQ#R3n5Y=???!cfMhzo0k4!L&(x+G{4tKLHw}$APA@?of2JdO3~N>0ynZVE zGA{3wq}HZ?rQfN6<5GbihYHGCgfo!;fYpGiw6l~Hr^_=uGd)9yUA}vOC?n6cDw8Z= zxg+^RC>KnBS5?_N7xx>_O%LG40?%Kt$($1K>C5Prusq?H4FtBtd}D`jxEy}t$MAH$ z(ECSNLKYF5{}=!77@egvsk+NwUTi@mp%gG-{$p_Fv0m?cP5F+rTeg!LX?Ioq%pW$j ze_t7gk6aT`%XQQu)}Qo_rQxk|H<_*O=Wd$GW!VroRB`7KKi|Oh9#9`Nte8#NXF4k3 zt+3yA126AcJr9J`4gBtxL#LCDNfiNzZGAtR2J@*uwGQZ3OK+^H8+IH<`z(ZD zS!By+=cBkEuEOKVJGmcuU1$l5Wo#ivLIieIZegkAc9Ne~{Xon3o=xOz4Z&o-zcfIo zXu3?0Q@*$RW@%RTa8}aD8CtExs?#0zJLS z*!cAN(Ys*C?z~h~b{>f-XB7sW4S?2-(;U47s8;7SZnz|z?185oQyLziALDcNAkTGLh%qn^^m5y*pmu_j4)X z8oY#xXT=*ire1Yj8+|S}$md4XeFa^o2Ex1JRaI>6)N%(nhER}+`(96?0-i5h{LHWq zYGk^rHY-SlM9GUoOtD%0R45eqwc?Mdsi>6NKMYJ`ThQh|Nmkgnpp(Vb*hvtNWgO)& zhF3yl288;4;xmJtx5okf7<_BIj#8@V5qU_-rUFGkIN1`=nK}9LBr`Oy-=Mo159HL} z-4DP)0>lm#G9~iFly;gaH$_E1?g>Iz3J?dphx5C*e%a=OLNGCL&;Fo^U5~_PDg$<+ zyLp$mMoUc6MlBrJ<7tBXtyE2&PDonJGMD+*lNWWio#vgFmIVx&QpWgyY<@AJh1p!l zZ`d14noM>ZfA~SI=EO3PfRbuC7B<>4LMbKSUkuj1oW@x3gcJVMKxk)mMQpYzKgQCD zp5I$9QcWUBO@saSXg5XsbrQFuOtF7mqXzam zNOBtnxL*MEx{pSqFePF1%fC&gzdLbU0F3!q>eq-`W5wIeCew1Vt|wy{50~wB44lRK z){?hB=lhVAN%%HQ|644zi;Wgt*rFdNBRdBJY-c>-k!`sCVoQ7goX6IS9 zuj>noqGm>>h>ME4Bkmc{Uuz#nZ3Ly$A z?_7mqmTFSm1}?WWfW9-)7z-(9&D{zeqj6X$sX*N)(`#JxmUtKa8+**!OLT0Bh_E4pn~)9H;xQmz9VydkRqpTwZT+ zW3GNwcBLh?!`_{deH3K;UAO}!y4?0=i>T4eK78fkt_KJ<*x3Q^&ib{Nj(<`)2VK*K zd}jEyrZ)24o;Ko(SmOH2VxC`L`FsYFtCh(;dCkj4-P|O|>ubVf_Y(E!Pl`|`nF6QN zPtqj094mpB9KV@y@fL#uPM9^HxA{YD0?Rt>zHQ^lEgg4x;(NssaJ+}(EFGYGQ4GZ* zRHll=063&(O9574RFxYQZm$>sMyh4;^Mu;fyi=$Dqc2OcQG%ZFQeU-hVJ}!@SiDnW zCV4VNB7tlX5IX)gK6E$jK=%vlxHk6JcP7i^?3`JQGRO zK7(ckvtu?p>4y+^C9KH7O}oSXJO`4#tG|B@dsb6vn63iC_vb2W*E!wnZ4eQidU+n@ zz1#Lc^Ge4Y&igwJG&GKyNK@Xlu#h{yiq2#}7MtqTgy!BNv|zF~QzUX0RDM__<_B#~ zKf&-0e!*B#4jdy>@Y!R>-P#-`U{Gl`KCmSwO#rWv7mnRhDvJ zOZ{_y?oR-WMf9S!*0GtR`=^th{M>m85SnQN;huY+kpnuNEpOqL$+|5A6U0p!?J1kjT?MD&%+iyiLh1D9et>XJ8>lLkcJ*1 zNIgVyCqy$P9<*1HotMLbvwcn+l$6O2e5v_oyt zpDtH;+OWvAO+!+9doO)dn-ICPet|Xohy=?h11_BYqJC|9x%zd#!O0U+90MfEvmQc( zwo5PP3pVC~xlxW>i}I+lz-Q-&(C*wDlta|Ctzrj`qnAf(0N&Zx>2vPD0_oRrS^q}d zN#@yiWL$J?*|X&z^=|1VHy>owwGDcIc=ao0y|svam}EH~_UBtjESz=eerqw?LTRzM zoD5t^WMh7@l+K_u=qUm?0BS$PK$a9 zw_L}&+F3q!!niLpD0fh*VS<;16rdepMUfL3ui9F<-cje!cUYfd+Tz~wb?JmhVU*X~ zX&1FKPb982X5MwZ*FmWz<$9v~PtW>u6_ z5cKEs^9zBy-2!bujn5(NIN{O5^`zUjHJo<->$egO5; z9u~BVCi`kE7W%b^90#&|612q&hHgz=8p+!3)EcnGl=Rd%gfi9eZ2)$hJtM_~^z9EX z1;t_aXh8T5vA~ZMw`q%tl4v6MXoRU*mRHMuhHQ|O8;moj#KZjHDmNccvm=13KF3Nt z3_69LPe=Idz&JvpKMDMq2g}mPHrpHHumAQrclNZ=bSGyOJGft;1a@!p3OKyD5Za3+c-BeBN13-x>b z-+X19aRTI7sQZl9RN6rdEa6D`E?{HjSa>Eln7O1UQr^#~ds6HiAY>w(GvSfHjyLhN z7QWW(!&^7B-Lt4xo>itaQj0i_zAV&=+h5mfYWq5KKYJaOY?euZL6GBM9QB6)3PtX{ z4#3N8^3mWjR7;J>Htl5F5;rq-Hne45N33%o5PrXs>SkPPXRJ5v zZdrel2Y^-S78N?4XObo~n>`GHNJe~v`}@Z}uPl#6va{G5g(lYA(kfPJ#wIfFe}!*J zWPXHrlKO5!eKV*-H%6(JNfcQC{0TNqED#ej4;UBRtAR>QdzIRuZ7lF-sSs95bS#8{RrV*|-e=q=%aM!q(=o|(p)3v|C(3Ok>T&Ax>xYo9qoagB-Shsah@lS&fpS6sIigc7i2so z89=+PP7;3lBoJVT0+>enbtU(Go)Gcw`j`)+G z^WNsWKP8lW96#v~&(*U(1mDf=gwI6j5VpisWBH}s%iHpp_Gv?t+JI6-H(Jy#TXEMVRW1u zlT{GTm@6F}H|K)v{8Rp2Mfi^oUZ55n%)6!0JMBk1!p~UdUH`uMM(7r;6Q6lh_KnaP znlejyZqQYxm4`b36{mx&mD9K#JT+Z4#O2!^b4csP=OQN%8^aX*TnnTop*Z{$ZE0zE zD-v~$7a|b)#=R^sFwQ?EGlrhg;n#2!Di2nF0%kRlEw6Hq2qC-fSep8m zu4sQyfKFanpC?q|x)F5nYX{03}5gTwF|z0|}=9EDJ}^b{TXjJp~3hMDC`MA{qhDp8eI=Uw;9xp`=v8710^pVrSPD>I2OkvC%a7ClL4} z(9<6}_nMEDwS~oK_2F6IF^Gjzl2)5R zyKh&@bNej#3m^Z^>U)H7fzKC2NAI7uMOrKI%@n+)yQ-@#y?sjua+c}t(}V2wCY%g{ z`6V)%f-_~jelu|=K8q+^WUz0EQwemw5ZfOGh(>B|7tNGO6d4dK$AYq@xPQ(^28Lo) zeH+m&YKu`9`K-hb3d%gY`UkEufOf+Cv}YUe0v0EHR>N`YlM86zEN90Wo|(^~jw~+5 zXzws6ahobi-0J-#A;rD(P5{!rDA%^gwZ$ru!Wzq?aCHlZp~NWPU+?bd^j$}khL2-- zb+q{wR9dYylfxCuADd3pOI2)4|K55PWq}EvK9T#;c2l#TPG7W676zks#%W#!WbxI+ zuZY&E@gJ?QLfgC;CeCP9w=r&f^C^B70z>S%$+`(2#Q%;9$fs0g>5QWT{(Dbt`>?BN zl0LLt%cyGmd>Y)zx$1;qZCD(6Myuy4sFQ|*;ODILkIe> zkpvud*&Vmd$_Oo?xxL_&53+O3A779dsILIsVG`cYlW8bi%h00rScv@!@@DRRF2V#- zn`0(_4hm0Zu?Cj!aMT=ep#l_vn!B^Sx_V#tnlJB57CpG&B0;*NZM;|Dv*SK|1r;gga*eaS*c2>~!BOpZ9T62I^Y22z4h@b<*~2 z6Z(VeWH5z!QPcYB*TJ?8(pbJN;ZvceU7?V`XY|WoW~OqJ>eiC*Of4>0zKQq9x`{aX zuR<+tBoE$G#;KFzJxW4~bWckMsMl3(QUf)d2NrF>4!LySOn!EeGk2Oc<>p-J(}n(K zQhf})m=BQ@fi?rQNq2yKJWGOi3d%~LTgu%g63k!J7f|l)nAaFk`O`WrIV~h6T|;}y zEB!E?(>lFv+ML6u59T5HBfo%kO;*2=4t)Xdl)A?ZIe)A;ld6l9PRx2~lhQd9bBZR9 zm14db@u&-;&Dvz{AQbzAYhNn#(>Sq=U|#fjW8ox0C5jjoRI90)DwxjtfIy#O8Fa!Li+q>6Vhg!+4UFyq_2DmXh)VDEz12xm6|i! zS5@T(w}ypA>D&mBU~iW5g9Th{mFmXc{Jgj%7fA-7Lnle~(2M(0l0T zZ*p6Ej`E|2VMrLeFn+4Wy-h#~6IHSOVg_xQ@hYtXaN&7;q#WI==gKu1KL{k1C4}#? zGjo_Qo)ca$NqwJTYout~pI*^F90(#pfPR%=bA~6RRN#Tyat%;#d@W)1nINes?8oxI zydTf+D}0)!7qsPuRMPVSckg*(djmyTDQfrn6^4}<_HDWHPsRJoA$?6{`=l-a%)i8;7>6BEZok-d;r7QVJ z$mrhGcU$K%9tMxiNeFl&iu%&=$$fuFen#C(OY_qfj}L*fM9RW?a8RaAw&LPD#FqC? z_#BQF^CivWk9*)1ai@(GaYd@4xLE2}vD{Hma_`NrohftPODpR{&M#~%`Dsd?8nS-G zshwRR1=Bsq#}aYy9jX?wciTEKS#jLcP4v-&lm^mUzQ{ZA58umPrKy3u>4$kM+q$f= z0+3b`@{ulrp8aaXMV>1*S_+a{sbE1D3^}tX=R0{u`~Yz*$aLFq)#_C546F0sN`~w_ zvKAc>EfbsijvoD1Uzaeg!=m@fC#g42U4&EufhD4%3Q%BPBGWdvkz?YN1L%iX-tE`q zk3m~ZJL7}X>a@26cvJmvpHr5EkR!QJsyjU7nMO zZj)+r6OU`?@eJFE2r?c2RWV^c!DP(Y=^z~W53~~U!hWl$+yCSpYP6p1{pVp z!fm+BXBN21yCZQs*<2C}u?txCUEb^j;)4%@>(@IoF8(1Z)~0--fL|{E(^TJKH4U2< zvY`=VX_6iHBfTTou#+7S`x$=;_I&I5*4`j_1v+J&9z500KdLiIDVlOmcM~8V2f5W> z7wh>lJ4~OTiXYr&x3XhdYdO-V2iuw^MM)&C3KhpIN@?r8(7CaOIFhjLNm%++#o$8_ zOA0Z9o8w+jO3c{GcSdO}3R#Ics=0teR>nUbvfCaNd8@=|SXq^uCYtI|C%u=>=CU77 z{~1SoIBjQ^6a&wljt&slnN79b{j4SG+bW%~DPR?-?W2{;Bf-DeE{g=i@*Nmx@@&$c znL6cJ%j1MqW)eJWZzg3qUcoa~h*?nz8d>xmyu-vJYYMbxAoHo^%jxd@kJkNbic{l` zSHq5mxv>^F`ha(b_B@?gmT5!uMXD8Y_{?7ia_&Y?#6&MOODEs)xs-fOCpn8<(!fU4 zre(e4#u~CCm`%*bM5_o|bO>4-7I=I{TdG-^MO-;3yV9-!!IG0fTQJ+;r{kM`#|Uih z!J8S(ywH@CbO6be6rtwv>ZCNR90E?rzi{5lft?}o(|#{oYu~4}N(%8u$QajRm!>!K zGvsc>9tfgP6yZ^`Sc&531W3fn2Ieq~>Mbn;+6HBl^l z)SE0W<`!eSk~CGLn6bFb^6;L(=#sq0{_)R`IrFJ#GaB1=N*LX8-{Wx?vXx$gZL=nn zNTJ#M4>4}g#AUGsaiEmH^fT!A0c!*kpIUn`0dBp}e1TPT?7N6*hk}x2{`%|0be(^! z+y7qz$+^3i=A80C8m_E{p@lR(LU|tG+f?@y0Y+*^m4g3c#!2AJK69z!@tjfR{jw|2 zi|Cpc*WX3gRm3~zChQ&095(8&F2-*&J?kfFLVmPP@G$yFFb* z#THDXaZ??Z{hheF3?hlxQ~G2_j=*%bE-h))h5x&Y8L2v`F8K<)Tpk zb~AL7)~)zT*&{M;hAsMZmXPQoE0FI{S2C&Pc6ATkVVe|IN3~awumVlb8Td8VqTxdy zez-fP>j;yZHdz%b5`eX#l$~%aO5o}`cOCv7>&d^YJ`x}5YS47imk`&~p`;vAfFuBEt#rHqlnN&zh zq!YPB`H3BBw@osFzqm4ugSi=UcWT3*pv)ca*!C`!EP!QgBY0O3qIJUcdl}msZsQ4> zjBGKxPp8 zN5sP>o=o4h!V&tvv{HAA;;@r(f!LgRAZubuFl241#jCbDLl|we>Wrhue+QbI_SL|- zeX-^h-|fdfD2GamAFTQH3q4d-!$Z9w?wh1%aZ`F7L?t(GxEP~l}LdQ&OYPx9r>?zS>9t2P@ z7xR}?IdpX>M4EOJOTT1y`FG)BlPZtoS`vj7LcI15au!aGr4Z1TbF5#KALD*eGJtg@ zl<(@81?D+FB|es!zEsjg1VWY8ckgyI(N44n2Sc_r`ZC-U;%RQ(e1{>Sw`=|OWEwH= zFFn&RD-n2dU^KIvr2K)$QCZisVQ(}(=!bS&hiElfXB|L4zC>2MUMLcUBrya>W~=RJ zSj%ovxo63Dt#31uJq|u4wXJXgjcEt#dLw}kvTOr;Y#WYAQ0JblH8!<5tf6hjCNt)yRpmxS<29fgz^-LsJhPI@ig9fj_kjy zkA4DuM!#Lr#r@u_{Q2uNFnbb4I%^`?Yg1!#`9ywCtASk~vimXa%lB>I8nJ?~(Nq2I zCSfgt!%3ZWxFxshkWcD=iQBYX7ja!ehUj8Bu<4*y|=7r1qUxOnfJ0u&zp9uTm1pnDlgJEgBm``e}4sLStk zm@LQ8w&g^|b+9lTL^fc|`N+4Al^=bzt?Ox0vaMNj93HJy7mT0sDn+xQ-=|)R$=Sj) zRCG4ulFEG6g)H2_tM(%WA2FXP+lIdnFbJ6prc%D;q!Dll0+MD1oz=z|#XNLZU(a^z z2K;+%%irC$-Wq^XICeEJB!1P5I+TOAyE}hLhxq)y9cIoSx&%l^(?k7gekedIQEZpU z^(rZ(x|69xw3k$sXGzCaiX7Uz*M9=L+0Pg<`OuhDxUs1z6-9EMR_aqJ-dO)zY2X67 zeX+dy6JuC#T@rdRqQl;IS4zd;MrdcXs#wz0c`7^+Ap z82XO(2YyR-9cbh}Z33d#lz)+#YZXWmnEZ;|f?pTIKl|e(HWA;4Pj}_p-B{z$SAHK` zW{xBWYNvugZUXi=`oLeJ#wsR0;ygCJhzgJa>t4x{-nJjmK`zzEdY%TK*^M6Fzi(P0 zNPryn`I@9M=y$^UYi*KW?w9Tx4rUL%S_&<+bR{k7f4x4ujE7Rf5y* zaDNQ)(dzfKK3P)`7b%VG`lx!Hqp*x`I#QPHqME`_&X_c#3Ent$XUA^uED% zZGWw4@+>VpN&y2xnC>K{q~v&|hYIe4^rF(?idN_HVBfHGqtifGR{mZN&5$i_O3Ym; zaZQ!mXHt#FT0uvVjS^^(r8DfgyD}$*o!qK=np&Z_Z^NNuw(|Nq&wVeRs zPL>M`T*Bw|_GSii_NN~&x`0W96 z^#I}JCt8tl+_4BfwwPP1}{~EZuP7ob!Im?^yH_1f+pYqOQ`sTuCluCSzMc<;1 zX+^(2quRdAlh`xoPLVJJL}cdG&71y$tUFU z;=;Qn`a+Nclb!n9bG4}N-C^bqp%S#&2o+5q)4Xf%qInf4(r({8DWE3L1C_DB9+!DY zd}JW^l4GnmGSq3}&;F>4_zPMnsskZ-kW#vyeo$2T-LaT364UIFDReVwed0~&MN-hJ zGeA-rp0=sc#E}^7UM&uZ%Qp=!Ds0_;-zP>G63bP75gYbGsPw7Qeq&dLEA7`)(k9|E z8*rGb?1~#s5;4-QsdJLhnTUf2v~kRQpwJ-UPOw^LYXv;z!q`7GqWo8XgP2$@s5cP- zetshEE}=Nxjym*d&7@cW>anx0-tO1m(apYF3w40N)8qFVsa`O77Bbi2?@HCvyQ$L< z6Y!~N_NY@P50J#QomA`r(sDhcWc*$7Ft!G?;`XCWf7SXr$*BE;ry1WW6|@sCbmxqM z{a*-vG|S!n_Si@S&~_IjI3G6v$gW(^CR6>1UHGIE9m$Jk;#$1idFNN1v6fn0LOzm^ zUk@`Oq}6`kA~Cw1>g`+mT}U7a1*0F0JJ4K-ROKO3LeR7#$1o`_^}Q!b{sT0(@p*bI z5->R9JoGn7^(cvzqqTmUkV5yG5o;vKG|(fj>>_G4W$4P$4ll@&;6p#>&ZoU$Q`hyD zYK=XA75!@>^^TiS@}yX@nLj@d{4pq&rCzJdEf;0uM>55Hu@>z&+muq$OcJIgv2wXd zT!y=%?o6Q2+!{tzISKB;D_FlRSpQo;He`XB+@KTNhz4jyGKn~zMKGM8Iw7^<0#GFN zUnh!AT%3xv>;7)u#%t88#n+zMu_V}3^~&d%R-nA$CXoTkfEcTt;Vj}^ll!@Uxc1Y% z5fu)m4p=AU=@H)Je!U*nc(FA8#KgS@{G&c`G;N{Q>>GVY{p*Ij^w`nlm#DHJ45`jH znTjIAKL7S2myUPo&bUo^Q>YB04IW({(Vn6;`zkBM-e4P$bYbo;yD+_d9p!HTtvPB3 zQWrl>Bx4FD9k2M1tdiJ>C130ayZ3AT==Ftq$dyb#3rDsFpI2k$emdZ?16)g;31+)3 z(uy(Qf)+9=%stX_jXwBNqCxWLsOl={ZJ$xqTM}L- zNzt#3A#hjsQ!J$x;J^c=3)J=mZ&zA#twTr7MM!@Hd=yNLm~xgN#y9s6Ra*Utj@ z-*LwiimBT^<~RzRh@aw;O{1xG4>RuYP=7CM!@W;y>z@{pm!xD~j0H=Tv^Zyc+sPwZf`1VbnP{xC-pppEc(fy7U@_v;}1_CHMm2W05~Bm6`Wv znBpEW-EW_6rZw(qao}{%F{X&3k-fh2F8dxuhIeUBaH(^uBm=s6zZDGhroy26@wQgTrvauFcx|9DhiA+tvc4paO-7fidWshJyu+^$wWqD zJc0ylNy^y&fHU(Nx3&))9bb@dwymIr?uZD4-XNu}J~HO7?H8-D~Xa zs)cb((i`u=Gu&L7WBqGVXbG9+9}exE*Y0yHg>(7*p|2KY&kp^GkC44`r*WYJ{^9!` zoKdLf=8?R>TK}#aCQD$JGnN62kQd+8!-cP0?mVCyz%M|kEr$8j zXsr#1@7Gf={wRzDIT27Cts*khx_iNo87@DEN^_de@ixx}&TCrif7h%qn*6ynrcLZAWK&lr5}cZTw>*PU|w~# zl^icO$BvJ9^tUdZHYDT}9jA1axD7d32{v@m7RTI(Cm&81efRgPun9A7ux&uSf>>9( ztdiTPq3!dFWNS~!`$zaFKxLR)RQAjj_m!Dco`8y&>eW6xFV3#yF6<@i4sS&AQHKwn zDsUKg`l`-dRWSvz4Jp;DEmRA(cvLVrswx|q2~bGT)(Qb_@C*AlWaDfp#&%XV@0-vN zCu=?5oG0dhLw8oXu&Xob75a@wAcT7M_4Ox;QN()+&Jz`a`y9*pjdJfQGQsJ~&&W-5 zqy!t=e1t%*Xo(0Vgh9uHo4$CNz#gSb&R)%7u3-ujKjMy(*Ut&*6MH)PgO zp1NWgt+BnwUcTdVby=s>XP7KNmdfs`qVFrV>5gx!2h!b{4futYNVr1zp_gIbrywwY z>&K7c)te7qzK?U?eFQETbn)Ym4LGxhZ z>iCvu<=;;oO2go0VM;7Mh>oSKQ{wA_iBq9eh$iTv+h@vBpOiJ$TReyB(L6p0laW`K z4sOA92vX}Ag6<~Y_W9P*@lUr$vI9zvEvb&L(~gKyckYjND@;4OFWXM_MjiAyX3Xx@ z>`~N?N(;qG0GUdjxd-XfrwQ_G@Jy zG|>+5ysWDYoYzE{%70Keew&&{EN;PH}Cx!+R1tG*p$NBnEd(CEybsuxP6QA2Cj_#)ZF%kX@!S-rO_$&Qx$$p6gCkZcwTsud^&;?Wty^p79>w@Z|e#!IqZ z8wO)#7OLk5Ag&ATg3sCS+Ufok{tJYQw~>N>0VzRS=sCKlF2r|CeA=lqGG`Bi05A;b z`t-9@X8*67n}2`*y7HR>w5kJ0*rrHvMG}4o8{+;)JAo#)LT54V@5Tg^!5p*A3xoBDz zeiB=o-s`S$qe|9-dTvv6<`HR zHA2>&Rrvi62H~z&GZ`V`iP4Auy#ZC0Bq_Uli*2XRe2f460lmr(yrZ@P5%vFQWd3LW zFFTcVRku9)W9xq~ZvU`N{B5RPByF}9BUjGYi~lE|G|&qyBQoymhS2}TxfDSQyd&|~ zbWi^W6Y-4UwzC0DVQDq{MRos+bE%D_I%2Cl_upPj&K~KzKS&$Gl<%m?84q&S%J@%a zZMFsJ9l<6-|H<$CcSrh@A@J3-aZ+6W=Xoaot!idK9C$|@4;@v`9-gyi_L+ahu3@QvaX+^snmk|Htan zzb!rT-&g?ug-ZO>vpFCm@gi93{N1`>LUrR6u>RQ&g;N=woimo^w25Ndv8tkG<7}Z+| zt4?hEr~T5`F4yffH8q>x00fHeuR*^CCV+nf6vRnamxHd)j{%4+*BGlhDqmA|On$o< zU8?4N6#A?5*Y1L0ydqtmJ~1gTbt@ z%%u5&6hl`)VR}SYz~ckCMV%MZ8cPAfPP2yE%m{g5B8(%5N;3`)C76+)^Ht?_E~V!N zrv&QlvuQZrO3SC1X4%Ql*gBT0`cF@hE-%l!JXM!tN*SAe)?X#CyWy0PZWgk2o>R{4 z2B(6T@WynV%(*YarCskiSR?4Uu0DjZ4Nh;QIT3Tz;v(8286riD;5S$)((-k(GDESz zCDynH!s@M#S;*+zz;ZD<^D6q6k z))%mrRQb{`eEeE20RpDSgl-JxS*h>r{0$p!hnPnWP=4+772lU)=G4PdZo;p4EP>|j z=ENW6?U*lN4|f-pSm(Cpj1J-Fq`9J69)pA!;#400xTxg(TN+RQwk%&NTxxQXqWfXz zkEt%$c?*vVV+WR0n+3Q{9_)6p-@Uoi><)|aQXNh%p4>MEnD`;g(HQgZn53|4MeiN8 z<@vM~Y~76J%npMrUL%H2fp$#D_hz7vNio}SB#MNBf|7639YYlle}6WGVC?jZl- zc**8umDo-lZPYB&Ud~vFmS*5mMpX!ikh}*L2{utb=c^7Jf4M{Na{QGK(8P*v5$b*xvWqh zIf=h+#rDuh27P1K2WHO-br8lsY#w{#R`c6f8+YD%s5y>eW{I1#e}S^9fo!eew{*CQ z&?_a%TomceM+2%1ZvmrNgjm3;roGXF=It(}gYvRh-G8_M?5dHEh~}*D_@OK z;Qvq1J~6I#vGD#~H*@)~n0gwCoy%)xt-A-Ia?VYJgEGJYMiT4DDvj!lJN5W&H^}${ z@CVxU(PB+}Lb?awug0+2*9|+}J6)+z&gr^0vEzJt;5;07nH8T304|T-&mO(Mo99ux z+n=pWdCrTQX8siSkVau)FOTi6lr)udUn*N`(23V9$VJL!a9uRI8Sbpe)Y{{C?IZ|U z(IVvaG=63Z&vqNFucbp2!zV@G)UoO1fU18Ga^6hB3xnLvjFbsKt1l9# zg;ZssFKL_`v)838(g*`|*ZiFy&_GKa5a=TBkA;WEms(MD_o`jAfA4wq<3O_fU6^YB zDPg3PFLuR=OJ>o)n0_el0&~}*?3Jzu>W>42nzuzt>vuJP+;b%+Q-DHP(Xb%%T$CPP zs1tD8q(GcU=BD^5AfdfzcCx_QHc{y+{%(~dc9WTMQN<~`juaeqtX1AO!=(YxfdqlB zqNDc?qXV8gO^9q~P z-aXgtaS%I~ZucG79CoI+17)U}B&knzKHU|ppTFo#Lw7}Zrz9ocF^+?cPCNKE!583q z1Gb2oc(L{2)s$-0@m&<64d6Vsg-}utJqiL?;u=T*e2^9iE>n*L9Zo-QhVo3&1X2$Pg-c3=J6~mL|@!_u)W{$25X>Rhl0O?MDK?N z+>WOpm;@_Cu>|*;sL{^Jb5kZG-$^i+cC=s**JQo~c3GK^e`T8@vC|8<)~zL{p;$s0G8*alCU8re%WbAu&9sS;9RJ#3wnjX- z5PI&25W3yS88`Xe8qqy_hvrMu@p4+*5oWOsyE;7V%#~3{JBvCFAQt9lYBarhN*}f8 zI-K{I4j{vqu>RV(U?--9a5gaBNSJ*F-5C2A$Z;b(lP<&E|E(8~jFa(gxx;vqI zM(=pKfoC|ykF!s_wr2u%t1d62LWhW3V|4HBlJegJJ_a~W0u{01I(evXw}soGLvX+JHziZ2b=e6xCkZ|gvL=Tggi&?+)TqK%BO zC6(cRSWc!=moD2u`vePRUS}3)-G9*oZMNX*6VP{E;D&xf4<<+LXDGb3QdWGFZY&Kz zH1)PXBgy*}8^fyE-`39yh>`dd7C_RX0A6BUmK+a|KIenmtvIb}_QpEkpIBslxWTdy zpCmF{F{m7YR#|k@SfD`*E#0|Ogxb=sFUF!Z$&#u_d*dFkV#d5}yulmfs z_J;kz!Ng;{kt;L2MR~1ga!^S<;LTLT`}fciq~~hiF2YC8rp6fFk_c}@`6%Gh{1L|q zr(3reAlskFWY z?tQFlf@{2M!mJch3BU1a(e8IrXN^2x^L8F+VK43W=7UKW+D9pnpulQU zL@X)3>1|({i~xuB@_g)tpp&j3&VJzXw01kVkM?@H@qHx_(fuBcKuWsjsNw4U>@=rZ zLD<#H&LVa|5w1CI5ks;!y(!JtWhW&tLh40);EG?~&Z z!rQw!r-IqaO)M)L2I{=z0wJfXSw#Eu6m!l8cw2xh+Zpd0ip6t-VKnsV(B=6)!D~TQFSM{+|;Y`JDMyc7=O6!TxIt2@P4D&u44Rl8rMw<4G7?s3jZr%Vs+0XJ^-Px zRn4cUpO!V-LE~-0BUY^@&euJg`_+Db`>?8$4u5ipR6SBTF|=7H!fR*zO=+6G-w4-S zt~|GPILh1`ZGs)Dx#nOx?)8zZM-KXOs~5j%@@qdr;D1nm*lPRq$z}Pl z_Ys;nuq+++aOg5juKJx54GQ{~C^K&}qbeIsTue3JwhOx%!$-f~x`dUy^B{4jjZK=1 z{0}2uRXe``1vhVdsu8EY;ZOgcbk6^0+u{11$~A$84=?zk=E?kg_78y0r@3Ztm#HdS zt)@H@?+%{-Qome&hy=*FdWT(8t4TNME_(W&&#h(9@lbBBbpG(w6)ZMLf$_UGQC65& z`8&@wh-DoN9#v-_`CBaBu_aQ0Es0fKmWRt-d?M_>BmZRTZD!Tz)@RRP2WBTgp+Gvm z%j)?L_0DD=zCrG11o{MVuaH?&c)Kh+2XhDUPsLU%z>}tEIHytwLD!aXs`G!z!NL?X z=uZ|oZxINhU4fwfL%{mc%I|#bjKALG-Snpf@bSr|=GB{8-rJekH{DQAGof~-r)Mn= z7LZsazUY{?nOjY6(x9>5wEu>?=~ikPMWPvOIgJ7WqT>{-ZCV&rAPQ27G*N9h;^f76 zc5{vJLU_B||4|_JB)`n0KL5Gj(K0}GQ5n;)1rE#+UkOzRfwOq+`pZ^`{CMdAVFseTgM&rRb$V$$k+(igRUXqLI+dhwoU zA5j%ao4;=rthnK=A9N@}v@{+22_oB$GPY|R#@_n59g-2<*vB+CP~DfKcPC%`FLk_6 z%z;GUXn1|=9&m|BuYMH>o&!ewP|$H|QCcwYCJseQW@ukSxtyxW7jBRLtPf>$T<17F z#qZznmrX+}puxJgA+=e@KPqO`xS0zI1d z?um;VW#lDg7W^{-vL#+6mQqZdHD{66S=JM4olMgv&#f;le{S*Zh=;9mLcd1>y~_TB z<}VHFTobL&nvwYC3iq}Cnqdp~KAtTrC75?DY557 z_-|0H;g9B<9oElJfvH_lUu(l$_u3y6aHvr`QvEv>u9=_M3&6xNv$qdMK7wrT0fC71 z6O+MAzj1r~v3+h{c}zk2DRVk9mQVr$=pV1V=Ahl@QJ z&R}Xk^T|m+^N7?8WPeB`qYC^bEkokx(PXhbZa1`V9ycC5=|Pn@u77tWHt(KoW1tPciz$R=s_ z@7NfohBikgG~|8Kkv&Tv!+U7QvPR9epQ$@PRgBVR4eNFuO$VeG$Xh9b@AvVgrVhYQ zAf>=c{nq8}v>-2mWQ!u!Z7ndjqJ27;HHyYp8s^dCbySw(ju&>XXtSSZl1n&K8<_UqL z`gYGsKoVQPD@PM=tA*8(s&~ceP}zFzP`WJ&>nX>zn%1!tC0m>73;(=qOkE1J^@0#e z%q%oF&$=8vb?M*_S9fF4kzLzLs|WCl=q|+Zz*~@d4vkf$W1wHc$)~~Y;H+t-9QNsm zrqxb-m%2Y}!wQOd20o7(TO08a&R@Q08Cg8J6z)1^TT2}nLguYszLZ_7>Vr%0WAm21 zB~M-Y>ZNBIB|rlMX1l@XfS13TK)mSBWBEXni*LMkCJ;eI1`|Mxhg+#N2Pb-^qSZ1} zC>9lMz3iOlXK{Job>UsSP|q4U zuFW(eqYw6dCVq&&#n6x~>tV-?q^PooOw~B(%T3l11=r)&mcKrOa<4?MqC^mBH;>cf z#B7L8V9T~3Qp^3hM$6+(pS7RNktYgq^YR;=P3A!P{;_v{!m(v$Oaje-fJXDKi?h-N zx#W$V?Uv+z>(^^bq_G2KYm2v!IRf`N;?YV2R@(m?s|4mJ&%Y@0i7!AfLrZ;pFlvGK zr5eh)0PlTj3*6t-cA@$?S|T!_KJ#tfweZ}-?kA{_B4UxPv%T~)=X!Fv=6@W6cOj!yQ{s^(2o*~*B-k1}GB z7u%YHFtkj&qfU|)csmQ3E&fzH_y&z|ScM;U-&364d+eVo+YB$P(AZ(YccCNXLbff6 z>gjV4h5!qVRWNNfc==9Jz3|nB#8zz2z`vA(ITYuDB{lw|#4&U+dy;g!6BlJ-am<#I>g)c(##t-cSVVR-zG>~_$SbKe>;bP5d(C~t zwUaOqh*(}w1oY8fTn*_TE-zTC0^p^AUE;*(F%@xWP8)*ZAuh~WK4d4yt-VE?6Qk)FdasYNi*br zM79{~Y%o?mIs$gNx+D|{`NZLDN?H{4 zQ;AXPKO(N1gH6vDYP^Z7n-9oBa%<+hPFzHoVRl_}l9@|CsJPaDG!Ekx*@T_I8H|Wm z3Lo?;vkdCPCCR{ZR`S0Vt6EHDD6JtFO4P)5yL^(_E?15EugcaB>@B*m$0FNFco|UP zB+7Bk0BxTX$~J2;!%EdHREMvT9U0Gg+g`*s>Cs=ne(d;GVF&yRH;!QkhDhMQ35wu3 zqA458riUvoPIyyb`HUF`6P*WNQz8k`4>DPHQ z2vbr5avAY8B^Ej^(B#4nqzOrAv1xc7h$nRf*M2cECu*H}4JiIB;55ZxPYsiCvl`Cd zw?Czz>E@MVB}q1)?qOV@9~5_dOZ_fR@D>x>*Nk)(brqv#g^(<~%BRQ-I4i57q`9^2 zdqFQXh#fAL_J(%zX_zbLdS7ta#Ad@*x`b?si8?10#wD`(-!0!G&W{=H_SwoDeyyH2 z_lcKYpsJ}9J9p4eyUwPn*FT|dvUN2z3g(fZ#~dm63!l`}LrLd*jnc#69o`7cdaq9Y;^t7%c{HCe4w;9MmsRWlDgDo_+pAKH4?I+OKIsVX#J{%UhnSs zw$te?=w1X6Au$=CE@}f2-uG^{#_xU|P~nt=e)hb;DN5coYn<ITYxyTxwQ&`xSS|nt8&8Ufx!^YErku|olid2SqNBv~ zJepH{#>0JY2LSr@!GXPhr4no}C|!46{>k;pBuLd%#IF0qO2^b|TN8?xtIS4T%=ivZ zB~4CVIn8&cQx!b^6YTxyI%!-|@)lOmMaJjB- zkKFvsO)M#LG#sZJV@J1=m-n$hwtstf!^v^_s&A2Nn$Pko7J93$B#Uq-9w-j3V&kja z8(9oI%K*yYAMXmdKGHu`vKvf`XYWE|UeC^V`ai_$B_$$hD$v6S#(^$>CYtTeV6?OB z8-`Qs?P;ZcjNuH;GJs@J66~48;I;aa<-l}7WL3fRd_T3Ukc;ND_Gkl)OmM(lat(BC zTxcU!m8}+9T!tk0QNd85^+yKy{RB+u#QLDF`PmVk8dIU9ZK6k%K(tr8upf^`_6FTC z3ZY)Ym!};y5LoYGpOHB$1_3hM(Q{Os2_lCE%T>i?kU))*zFcClVkt*H{IOSnmBp@q z4&59J_VWGK%qw%fGTkvz+VMRbplXBGTbXsxd)*4%J2k)v zDnJZ0reWT4ZvRPT+<;=&dIPbjZ!#VFtj^e}z`h4)>5Uzgdy2ddtM7(>BN>e++^?hL zu9Mt_SGK|*{u}nDs5^8Do=&y3c;sUENw*HU8&_>sRF`G%Th}-^fMARSiVy)Av310_ zPt6Iuwo+*=O6pJQl*4+L!iR%)d&3C!kwz``w63;nXUSYT$Rnz*$B;Ah~~JteRT3vh^eTI^P=_#RBIR zJHWt(*?Adv>JqVn^tk2uoZ$Zo0Q^6W;LVo*_#$0tMZa>g@ONCAlWB^Tl5Gh-`(t)Oqp9?M2@S%7TMl#60t8l{>|1d6iB_bXE0n|B?dKfxoaEgR>(UY`mz+6zC&UmFxaT}^F$w=0kItA=yx#H zy>Yq7FnQU?|6y#8^}z%=0^2gV!DHIe1_D)DXofqJa0?EioF4klPEj*)M0P8jF6=Vk zbYFh6y10pjpqXi#ZI5#xWBHVmuBw;*M!AzRyoHxpYoIW>&ku4wjzIXLHZsj=3TQT@`@nS2_b6-s&cX>o%$41*Hn$`wF1hu!xY-JoRmALflsi)8wGICL_F=8hk@tzT(L5_>|-V_t+fklFK?FJ5{uMx^^Q$FvN-QIoLmV^8=r_n$Q9tSE=P-q z!%{J?$EZY~?hJR^Q@S6U4Ajw;A^JZ*HV;N8%1iGtFTTf@cf7C%vQ2J>aiawVQ zl`h53x*&b2xzA4fh>EgFB2~;3MYgDW*N_qkS|T`C zln#oB&sZ!U2&!N8MOCmsCj$DWcOT>r=Sbtq*fnQ}zZjP?fMdV&6d7CNC2nU2!6&xp zGfHEfPQ~-b_Vh*SNq`;_->sqGX-Cv6K?+V?-cBjz6-sM6&0GrO0lrz0QO3fV#7jg{ z6YI)PLY~u0rd{1xBIneIfz;7|iqXh3?0^P>bd!AFt=3FbWH=^~I}!?i5C~GI?L@h& zt&LCybEBQW#<;=_5ZuqqOgG_KZTRrP;>8n=AO4D=h%>Xd{Ig%;cWOqBHd7aytXKmM zf;nE#poo%$VQSU}Kc0B?FHQ8b)J-BOxh@M?*#ku4MD^GM+lc!KeUw>%*s9WsHG8f# zuFJmI@Zxz-bgSHSvVRe(WkVv9tWOmGqF1^O5+$|K^0Rc~FM_PL72k?rbc~#ae8Yw; zP7`Ysw^xCfcZUCZQjWbH1{r#1ibQt5{{99l7_)k2y)k8vBw{a$toc2f8Uk6}dmq(~ zWD~(jpAoH>l^6~-+c6@f${i@JSOP0YtO>akf$BZ_q806+%SwcB62dZ9G(f2s=GiwO z41(N-O=e@7y@t`1LSFuZVm;9lYJ_$5&8E|PP$eRu)$t-pT0e*Hf|8?6WYonY2|WRa z4|IVtZykHipa0L~LY-MB$CJ(^OwWU9QfaWWk}xzDk75 z*I~xQangqLm96wcF*v#wWey71j>nr74`~6? zy%+s0ggw$Ple3d^mrJx!(nN&fNksB&NVC#Me*+-1F#Q|PZ=A2qAod1Al&#D7z=yGyp^JcjDdjo7}<5rYEKS!kTG{r|;U_(9!fV8jAu}vzkCmc~q?d04H zFLsVZ^%s&HZpHs*YGl;BtIT}p5L{@D=PYw!hRXVEtV;yB876`8{eO^uQZeXH{=YJM zc1OSU$M5LB);A1CT%N6mJqhKm1syLH&a>oB>N-1kGAUmLe#$uY;g4J3dOub~@GdP* z1x}dK<;%Y_g$EdhI19##l`v3zI;rOcznt#=jQvA->i%0*<=y2uu+m34x()t5W@kyH zq_~6rnYC!{Ob)Q0Bfe{D&y2=kA|`ODV^o;RiL-8$^rv!@X6iT8G$vMzxA`UDWHFbt zdNkH)q(MC`+f!R*#_#E|{n+o=Eab*S%>Hq5hqL=(v_Qw{G{HJ&>^ST0hl)TQq^Nm@ zYQUD1i7loVLX|tRLXms1?8icA^nbYmh<|3utp8r9H+B2(y28yK-$C!&%N8GpT)aYK z7a46ASmgY-%!c5e2^^;xM+`k@qe4<$=1_Iy{VnMT5AS(-PidUnpQk4Mp`1;ib83M# zb2iW+iFD|~Q6%KQmdzNuZF2D^?OS%Esn9yAc?zZ9Vd~SNzDeHt$5cA>51v0;n~f$f z-OToKW?X68*nMb=8N(0m^k}A6Kazztg&#uHoj7$42tVv2vMs-wb(RNrUWk}W1PH`M zB*)2Z7y6n@+vDe5);(Zd9Lv2OcLAlbV&usR!&oaCvDnK`9bY51#NWHdt*&M33hu~$ z!GAe-i(AdsoSjdNROwVF)~u*l68Eo8sl(j{r{z`M!ECUNt7E7$KWezAC%=2>e-%$5>^xtB^!QOghRLV0LdObXbvf z6%WX;z`8I7-q_z#HIQN;84zVZBCxM1+?6o*t(?yy=zx~E!U`NR?34_ztsq=7-d zKfL(3&2BFwS@X{1-V=%kw{G7g{`a}^4^F-Rtv@|zZbV8)jA;bZ25~28M8s2YKQdU> z&G_=vO?`Rc8r}7M{7KQvqnMxV9W+WUyz!dvcE5J2QpQFM_7WmmHEa^za^D2KyqUnQ z|C3#nKJp8#DNgnAA0p++B8!-F2R%;o;GWPJOg0@))teDkPoO@MwaVDxrY-WQqr{1R zM1nwb!V1rQYE9j$c=z!5 z`WnoR#g%VXNC^i;dBQL58(L4)4r+p_2%D$j&KmLw@79=CiV@Qqn@(75A~<&SE=lvS zMpBTLVa?0-^i@Heh}&yGLBbg+xtw67_SN+5+?3Uta*e79?vRX)i# z@7+J}&eRShe4I@7ZdqZI4AiFunV@P%jH2`CW)fDCC>J_BZw@D{>dGvI%y4{4+~Fzp zj$DN{sRYzudz3ESK$szER8t4qv**<^YeJn{4%}0n1D~+f)DVql(t$)UxbOb`rL|-8 zY3f{vXJ=Lacoa=9W-0Ad9RoFAVZ8;7oH|ZyWeV`(TDrLI1DX#20qXatmPVwm3#%qk zWt7c1B^QmW=tLd4qJ4nU)V}v=muU{%DJ*V|c$?^{V_NBFIE41zaw02g(Cvw7RCWF7 zarVkzR~#4{2qsZpG_qZ`sgsB^Ga2X{kbJ$ngB4=VJ^MXCh;h`Op}fFlox&?8 zdc3WiCNcWe$T*Og=A`por1u$9m;0nl_Sj*P^#`?Yu{n~ZKzUi7F-qjjX72|Uy4S0C znCuyyr714u3`M-n>e$sDH| zVMEKlzC4#c)fq1mHX7SYzpb#uH6@6&y&Ok*1ytW9Nbs>JU4Fm26|U%QnRh(u+_$>B`OoJ+3o=od_WVl{(8e z`@^9KEVQnDVSGB-4cG;Od~>^J4_#qdER6aqMWxJ5?-UvPHI#xy)O>iLvGCGz@amq` zK7~84`=+#ri^g+}l4i2XTMi6hLT5>_ui;ww%_cpxeP5VcM%~MMGFP1bDnXUi=a?YX zaXyV126CqLBhE=vWR#2~5fMfmw!IEen4; z7{;l-COmDwU}Rt~a(8(K&P?mGc#g>6XsS|ask`%dQuSL-(mW7(I?vqXZnn9J5^;R> zf__2Pbz)IU8Kz?d`4^&GCH^>cXmR(sKw{RBrH0p+4 zI?>8$b6Bw2Qq!Iow=9+aiA?O!5x$${CyJB*@9$@HSsrXOyDSeW5d6+-@{Y1z6yj0( z{WEq(AFh8V4U_9X#jfm2D4-S1q7*^)bF5IB)~lf(-7gyt7CoYh<-FjW73x>@u_MQI zaT+pq68Ruz+KWCES$PgjH_RN!qTf32dbRo6pD@N_{U(uD1$iaV9dJmpgnYj=gQAdn zrL=(Xp4ys>$!dohSqQOy5$p@EfQ_m21TZNId8<34@>oy7y*f*}B>GhUaW-Q}%`7ny zyV9i*b<%Uw-%T54Q|?%rBcnNPUX8gqFWwWTfUJk^SCQ8}i}-<_+3g{%S8L7Tun+bB z-2yiSPB3`kPXAC*$^QFO)oPh5?~k#ser_1iX3Xe6=<~a1 zhbnABdf&zBnMYy6znU?f5*V5@G|o5d$^JcQzXdL}-n5@)aPYK3#fIHJf26(hx@+ah z*9LpBa4u0hr@i#}G^;BD7QS(a%XPRcVC8;Y`LI1(s)lmgxb)O7HpJ6^$})UnWTG>O zUiB||=bkt5b$Oz&&l!X`lSeasBkvjtUgkW^Wu#>q-5=iGZ?<=B#cwLR<@o7|VB`3^ z+gg8}HgU9UB!{xcc*QvzKLE#bSu34y3_U3>bd$&Y3xvcpWmS6$S+*CsnP_g z;R%@iG4I}2yuS6n#`=xN*=}E1$SDcGO7`LMBr@n0%(hIr4ya2(gy60?Z$LDO3UX^5 zGdOnx`m*Q6^N*Mi-Ri76(+K<%!oFghe!d@Nny=0#JFWS?KrJ}m-TbU}AT{iY(qeui zL+IFi+S$zYGXp^gAlzEq^hG6t)UNn@$Km z_<_*ox_fRm$knVicp84+qUKlZ=;Ipo?W(u@zGL}EhaGx4t>V0$)=onoo z+n_s$TnA(NcNn^@_$?Q#O1+$T>gx1{hQwf3Hk$fhr(CLKMyw20?j3Vbk2Q165D)2G zp;4L@@%x}wE33VG$0zL)3jV2ZP~0c;e*^L+u5g!fjUdG0beW&7Vwdbiu6^)sLcp@X zl#}70^&T?y3=oUoRm_k^zg|Q0^e-t5YF)4(H_;C3Kiw#B<+Y5IO8e~J55yYpZ58?v zoGqa5?{aKUr})$Pv=zDN3@j?RoD*s97D@w0W{LxHk9$wozaV_t8NurgE%MUu<2)>% z((L-dA-dT<5w~D+Nk~ExAaEzT$)^ zT!M+IK%m--A)=yp?#m$1Dct!q@)`8;xf`$e7_rPUixILe0V_%@;&y1KAu}7L*L*u1 zfA(~gyw1xY-boN#B9P$3^Zu1$g6UIZ!vsB8q5j_o;*FK>M~K9ok~rwDHAsB_2eFDS{f8RGF zq`LRe;jJ8=F*azI?smGB%@FZT>N)P7(VTJ0NH^L*^}Zio4Z|+{o*P8!SfS!ck*@Z> z5qbToEV%siclti3M8GN+M^WN&je}H(GxPr#Ma!UxO*OW9el>40xPzL>+V)8}&Ys6S zd~6S^akE4@NGBk8Ubg3ryobhp;cSb$vX$06K$qATFIF;9CS6dm#S0b=Bi!`rFa+UB zR=2lrH(`Wnm^SSR`2^er7rA*5DgwzVC%+3tykP1M5h@~YLuo0{@-Kb!P-8(UgS?R( z*zfYXX2enT{fDIA4URCbw}qXrZp|qx>JxA@vjZYXNW!y^>>jNl2B?l88p-;@}jh{m_kQ2Lb<%0@aXB{6=Bg4zif@8{Zj3W90gmC z(4Y5S7eavC_c^0$xn}>?iCEkCTMs~+>hkvl@XxkCu`V55$2v}4@KEs1yuK^9`9m%T zdyS!wQLY#CkZC;+4>$||-qI<3axwwJ35?DTpGGVzno!(0Ln7@!%jq>7(335%L}F$m*PwgMSb&`K;O>jhV%%P~Ehhp{tCY2B%#!7j(533zvqi%E z;)J!*li1;%*`7LR?PC21)2aWQVN|E?_eYsZ@<1uV{^E+W*~vmW5$lzI#nf)+xwY-b(oXrpzQ7^T zfU`&b;jQEmLdzo=V3q&3g5YmoqnmhD0aZeOKCo4`NzT|}N*G9&_o4F_v*X!+{I?WNm7pi_@Y9WmmklO!xT4- zYp}6}BQnR4zTZ$IjjhGy(QdxV_cF{Mf_4GuX?qjKr6V5YqdPAS(+^*ms=an6a2_UR z%?J3~e;a)NZ1obzWvY1jkZ`MFV7X;B4}RsPoXKJ%4fuXnz@il!;%LEib~%z*yxox6 zlS?KRy34*QsJb$yPPOR)>{alJ5?FGA#BMo z>I)?MPdO^yIaaCTeUjj*x~-1@1#~{=`XUEl&HOStmVCVR=I5wKoNf#EP=8X*>WYi8 zEydVlduS1q{%?cGF)E1jBnC3_=a zO45)ItU`C+;IXHgSy+nXfxJ5wl&uYJw#U|(V%$I;>`|4M4txNxH)F*8Xqce(FQb`- z<}*O)u!J$n106w1a#H{pG8UTw(#oE;Kdg`)$I!X8;@Lb(&zo8BHrnUZZ+7k69&h*} z#_BcRc0btz&q=U|Rcw6Djx0nH{3a#F@)&0oOuMi4{W>|IxirgMQFD)25QIG!IG%^> zbsu7N<8<_7SysLDmuO=w&uy4rdWCiyRqi1bx zT6SfnqoeN(;%*6NXBegZ8`sw@Q#_2+9mg(0sU({gT2m_tc%tPTM=@~PP`mR3J$%yA z>2Y&q*Vxshim->y$6pflqf(fHPuO>?UhuL3(Cdo(y|+bS7CjWOU6{9x|n?z8;u4=Y+th5>r_QV z_(8CpPLmSk8$Mwx=Q`MQQsfe%36G_{bozD>xC?0t5P7rz?jqTP{2ZnXWIcfjk1rd0 z(jE`(?2jzXV_$c&{sXhZ(r(%-epABM%dC05oSnz}WoHmXMSK(;Z-gm}Ka3_zeuEGp ziY;~=fyTZyV)#1(JoNvk%FDHQ(-in6L@vY<;H4oI|A&i-Vwz%9L)@G<_bhssEAX9o zgwr5(L@4a!U`(sY0 zDK0vW?R;*Pob~#IbRnS(qC;JUrVVTfZ@k6NC{rJEBbwXqaiXStf>9|=#ZXmD+4^6pv#b5E%{o2JiO^Mo#3fA+BVc7kBC@8hEP zS)RAw16$rAYqbBeu(qIR_QGo~<6en}-e}n@x_p9?q%YK>}2s>}S9GPa+=DtGbq@W)Y@tM`yyJ9ZsQUJ0=#7 z?V5+?u`_B{JpDV>QatR(UDyupS-X~#$WJ7Ltd?c36<@a(9_k72{>z&;cfc42SS117 zvg*!Sg}VE(-8vS3%Rjzsvfc;CfQyt~HlFvR!`Nzdm7-z(zgjodhb6Wrd94eP2W~(0 z%L4)U*Q{X^8`4HkRI--u=5lQ7iLhZljGY=7%6A9MSeYIt3sv2R_FjJN6ZG#?s!DyZ z@?UkP*2kZ$H%$lzWRR?q*BgMIv< zWyla{J3CBn1{lUh3Mgz18_2E~t+_fs*!i}&v5 z9SV#2%Q?e(@o4ha*JkRIh8(<|7ku7U7cQMCfQvF@EYc=s-Lx==_CD~qay zL1kWKlP`x-xS%vq@-ALOp2cRydl2q%@;qof?J|}QJnw;a zgPO#9;n=RxyCSz4K>s%j;IL(uY6Su)0Wg4B=yTrR*_s#Yzp@QUjVKs++~Ozds`_?b zbl7Z--O$m*KVr;L-tv>ZSJh~-RFOJ(CN#~4`eR(pgQ3EdF3GrCMO3l?ydJ~7tHxpH zNt|l{YaUo~6x$UqRBjsLqn-;{xee#b%jWhHp`j-3FtcWT&exf*#*&lYTteR{X7*~m zw{&6{pRsK=pMDcowH4E3x)S=DW?(v@FrPh&JQw(N!VVDN7%;zhMk^&cF0%JGzktNg z`Z*s&SG{Rv{kuAeO9N*n6WvWNLfyx9OddNSpXEUHB3EDFCZBCp+4Qc|h?4YRlWXZ&|_fEOmxYb{Zd-PEe zn&Rac#H{q5$DKFBPXejrO-XuA6*_*%JUJZLNVTd)$n?rkM^Rbcl6JFX5y9TVZP&N3 z*LC{raJj{x=Lck^Us6v9iy%43@@TdTPAQ+c<-KyUtNyKHdn<2``%w2!pM}7(iVS~jiKlm zVmxoF&SRxPsIp>^qw^lhp9cckLw6M1_n3)VmInO9sMxHe?Fc>X(!E2w-X?NbeUX2* z1%49-=52aNh;q+$UZdvEulKS2-rT8Y^=y-0g^fuIC8h=Gkv1805La7)tpF-}^LHfu zK}JfxEC;NRzUH*xA;YW>vExiOp!kQ@jC1z zM)}_=BrP3Imk|w|%lO>`xut$`AH|4|$#uqjeD({WxS_VPjJM3Cu~H^*_0QQDqz_3u zZUmg#iM>6wTX0*Yo743@)ZR@DSZ6t-L(-jYyHM>nn$0E)@@?Gk8d#r}v#=?5JKcoNWX*!z z{{;9on`=CHZ?b?07^N$ZnAG{-wYrZVIPEn7Q3m2AaI&1f$S_jtycI&HQ`j?q*GiT*czX<9!$KMBlr*GS_)eD>!a{|3ZpOXW z?FU@()3=968;A`b{}G04Kk8SFfDD){yq&F(8l{02(0F|rnNQ>4nCbd+a@-{ey|hr+ z{de6y$esS&Y*!x{^UJ@Q$@U22iPCERSnkYNU8x&@8>TcWqqW9e<03$8#}Q`fG9|tMTzB~kE z#D0pK&l?1LeSTKQ56SZ%g@QWhEmbpwn>KT2VAY_-^sDP4zIQJEn2Zvly~gY3Q2kz% z#coFGN6~(ST}Qo5KsehuSf;I4CtCJ2GR|x~nhNSd1+`=#KGueg3Zmin<*dWCe)`L$ zphh2h-17qoQ(qDvqUuu%&ln*)acNk%Pp61|P?Z$3iU{aWobrp2J-O|)zMk%jf59~D zpZS9OS&m!5s5#J5D8pov^WY$M_vK=>5+qnQ6dhKtcz&0?;$iT2x;{>TciG}Uag8%s zMT3mDi&!F|VaCf$`m;0RyK?lBMm_SZOJq{2edB0g#wN1{ws*wuiuK#Scm*HS_YAv| zCl-J@`n{TGeD8vn-eZ9OPK%AO{dZm;fUi%ilzSVvs7Nez&|TIw>}2kM{6u`>B6uT0 zKP9QyCvCm7KfiSurMLkBUYvJ~r(p%_|^k64jX}kPqVLBV5fed z87Qh@R0|b>9r9j(XLKfSLbYGWlC$>JcI2Bjz4IG`Sye{A-xpI$;u^XdyY-##u0Gu} z^Y=F~D5F>&2v*jqG&$aLD>=ayyq{QXEh;{p5gv})x%@GoQ+vjqOo(iV_&C+E(fP1afq;ct1~ejq0aa9uX38n+`xGe zc~-?Lf>$p;x`O_N`FM66g{=l>`t7qRQ+%zmpsoL|E(i%@d}sIq0Wys5{2671uK5*Y=kW37R< zn`6fH&o+)oHbS!Jn59A~eC8Hn7WpCl%})p-bsEcXKh#5zhN5b$jYd^ybH4zsb10k zoyVpG@%~1x{$}xEB=1a!YRSSFN&Qf}%Yl{)O+YY2R^Lrzi7D4lW#ri$`u>PXr_!>t zTc(f2Zt{rF+~TT)DyGq1bw9GxCObI#Yflo_q#pA8g91}(gT;wiouwS~0ZRmI+>*iO zuw|qZn%ba~wS3DhD^16Voa8XpuRl>&u`yO`jxLsV$|w8ad?WxNJOKS-PqCbckkN=< zGlm;YHwrvH?e`-C)vj=gSz3)TFf@@5HHf15mqgUU^ASJg;>BV_TDq;?s>)+|36e-n(7LMhpdHh6>`oQN@w4@>p4f^J~hQUQB!MG z2VyjmycTf2la|n_pbnYRV&XBfZ;UP^Z53E2tgA0rQXXT`D)wm>~ zuxA_f8*zxLnZ;V`n%NFm)UQ6W(QJiw3xr*2_sG}LGpDFLQ|3xli)b(18Z;2EW|4b` ziDWW#DDbM2S-{HtVy^K%IuvQa?%dCMw{BOGEPr`00`5}ydTuE1YDtwt4E4IF*?7nvt!MFcad|A#)`3Fg!HlSy!OxulS*MIV2Z6O=!eT4>}EO$kf z(CNxo`qy=t|Bts-QN!EWWrpCbEm<=_F zR|5Zs7M}lEH+?iy<4iod7tOPxDHz`pUJ;bUFQ)qDBwzohD4YLr zNb6j9yi4ii`YGQRKugC%q8ak80C&%X*oa}lH=uDViFHNJhSkRUWDPx!n*og^V@02T zOK{?!erHi*lJLi^hs}`hVaIiZ4Q05OOx{jDG&Fr z(cU!Wc9OnMQO^sdW0!B6O1lznXKB{4MRdkIC687{9VlHQd=brO%TYV2{>?g%D^^X? zSi!6DiIlC!zZo@K5|5*5X1aUO{VK=(rw#)1n(b22)9^#qpLE;bTz5X$wud;snoRy7 zZ;-_pqK_qdwLvV2DCFgdq_bx@ji{HWx?jzqy%K(U^(N_z`bbRH&reN>(EUk?Vf(rw z!Jn^iG%BEWhDhQ{Dg^^P&_f=Em2j)8uMA{wR@MC~yHji->mcoU40Q1`$@;Gx?WxA* z`2rbDYIQRUI2+SctLaxDFw^g{S>Kdon{yACPzvXOJRtnB1FqD^4Amn}%05VM72Z-? z1QZA$5?f+abpYL+)!D1Buvg|i{qGEQ zx9K{da!&~A$0-exJ3W7S`Z4%xWYro&%x%h+9muyi{6EH4%_y(Q8};NE5s%=Lg+4+* zV3=KDj9t=k_@22Evgl>y1ozrFr9Hjz+iw?kcuC{$t!Hbggb#4>r+Z|qil)g)$3^w* zFmlHvpUL*^M)$PhZ*A%$RnnF}TFU z)AWGDF?CLp*F`0!tnVNxGKP6jlY{T2;evFcmD^ zV|Hg7P^pKfIV^wbl6C4opG>I0z`wj>Sl#~SfbQOw|F)9xR{>hZZ9X6@V`8=LB>#pJ z$vi^5mHIl&98~Kzn)5+Ku93i_zE=2o9zRXuVk|XQps}We-{i^H;`8WH|6AG*?r0eg zlCly`50}B0HS_i9-`w9))p(G6K1vX9^k7sflpmHasS19b_lToZcEQU<;fqq`gVR#A zrKoz!cl(M|L&56R=2Stb>BuiJezlg%R;gNFC-;JvkL{=;awwRnj4L9KOlr);?`R-* znPmvJ{)UzHFw<0VwVA0*DS|D*h0!v~sBr(5+0sQtUn+$kA`NG`t|Dl2L`S223kvyG zm1>9X-W!HICuuOE6T0~}5enlY4+_{O$)jmosW)YSvG;Uc{VIL(PW)YRcHhiBM@8;6 zLEVXO=XyY9VAWukA(piItnk771BvWEmO4d?Mjf9)C+xUGtLeA}Tif?7b)Q<#zRL zbD6KtXZ2B5TZNix6u)_PFXBx2=7hp`4Z}JjZ;CBPykz8d*-3sL=OO9B8-2WaMXBqZ zi{lqkWv5R{WkEBLerooca)zyGgJvLgyxw@6(ucb|9`7!{|DkLIGWs~Kgj&ZDj;~B5 zA6|B*$EFj*3H|l?V!>J+zw8MtxB_W&FGFjiIw?N-MJn-9vCa7I17qR>XEr=lAlE6^1>%WgNRI18#A=lI7*6 zO-k$O)7y_5T``Dr>`UErJ-%>LyaKMgy9RfZ##lVPelzSw84vp9WvH>og!PAWQv7># zRgCKsS*4F6+JRtmeh5&|$Tf#ifxXY}8v^&Eg3bPk!)JrMR62UIE#Buf>bq}SO8E%f^ z57s<<8;X-IX%!+q#3G9f#Fcs3mDiAC;5{Xo$N79wX&h@U z1C{}_mTbqAhE8mI0sOJ>EB#S_xc9DmRVVDaYEa#e&Npp}SNa&9Dn{0j76-SGrIR!E zvaP9%zS-$GT!36QisCLp8)wBk<+dJytM3(klb#;s+1KoKqhFXDXD-Y*v!#MyN5eUe z+#!njG~4g7ITdLG(!|f4(iSC<$N${GWnP(1rl9-nZhYzD9qEFfCOkp z^Xb@6=)p?IIamdvdvevifY@pnz4z)2dncfSuRpM3#Fhz-%-VaLcN7!z`TQ&*A_CXW zTK=DSk2_glnnUFOIz9bASFcSHs~}2w-Tk>>6lc?0jz~g<2ua1n2rhlK(nOWZ#6YfV zc6RkQDT69pk{q3E%c^%1pHHP$u1c-T_Bsy5(s?Ic=#Oj9+JFP@w=SDRcsYR+A`pQMqOI7miJ zTJe{+<=6(~#x=9pzjXiiD4CEi%?^rZ4SvE*^R7f|VRs6J{4k%a_wv{4xfXEQs&1Sl zzi{D38jzTj-ro!9_qyo6DNZ^^Dw>h{0R66VhTu3jcj7?wQyLpRZmuN<7sKQtf&b`z z+ob4x)wBO>&ePoxf^>qat9Ex|*X?lXo{6ejo?LB*0Gh33VLLzNIz7l!03)%0NU%M-|~}hVQ$X zL@fLg_IHoQ#a^pD*Nc@c$z^7w?ftUvb)a{WzMmC<+etdh2M&J+8~>1VnsNri_n9_0 zLQBG++ZIan=cL!QU&2AdAehVP1oPU=S>{w-igPBh|3_}qft%WNe+KYPn83vNK7)rw1Fe{}D z&{oS${~CQ2(5%w_P;}E#axoEaSj@cqMm?71!zMNxHZAd9s~q zhImZ92jwWb`O`VGId@(-FFKpVd|jqZNYvt`I6e><0TNAR+pbCKO+~Zu?KCiy^I3?1 zTQ0uw`)G$fbvnNH*V*VGqi))%W&Yc#z}4MBxC38Zcw}r&;HK~0KWb~)mwL>4wUzHMml06ODJ!BT;-us^Oz9|m&1AEM>kl=b=3cEd3J=cqtwXnBGC=K99ylm} zZ?Ix+-*XSay1^(xb4#EgOv*I(;`y<-jPT8>)>>)SFI6~8mf6Z&xt_NL2k;p2zK>zz zLqOd4NlKSWXRy{JL`A?q-?Ci&@cNaZ1U{RP^C2v)3Hp&Y@w;q&w-)hEU~`NNQ|*T= zmzA0wnu}_IHKw08h&I|P8UQ4fO{i|?AJvo&vejtj*aYkNz+7^g2i=j24Hd?81sQBT zOx0#Ky~7~5xB$hBtW^xn;z5yAS(Zl@7@w9mtME5zQG#C zK&i;DXjs7c^I%#iW5lphNVCRzaAtSWG@+IojS>E(_||Hy|26WtE5JtT5U!lt%?DGIYu>sx zdPw%ph)SO$1le$3-Cyauv_qUt7omrPAHL9uA-`sZ?>oMCrrLxV{h|Ho^=!Pew>)9 z9m+F#C|SEzUlp&sJtcdbagX&GBw9?h&?EoWI@vMsE}{S3)QumubhLJ4mrC_2%NhWO z+O#ef9m;pMk@v`XpRcr}=*$AKVq_0GhvoU`HY(=;kr&HD=YE!Rz4*ab06Tj1(S(Nw zXu8`L5we%S({La1`9kJ_y(zQP-j8i!!?gyRRmugiP2pa@02`A>NFNU~^ItmnD@&t= zF=$$e-uV3h;;#bl(|~NxD(i7eGlj%@d@~E!3)?O(m^D7pmNxfk^!W`Jeh^dKIL;Bc zDp{pyxFFX;Pour=pR2FYDx=y9$jNV{$CCG5tk$>MGCU-1B7VfP$?;>q?{bw5eMVDZ zuOi0(HFHkKX|_#l!UlLa%rK;HUAE)NaE@wMaB3>-O>+zu46D(TYX5-2$2|8goj`7@ ztCy{qP@v&<;)~)~(zes+JDbDkZ;PH|@7uwYieb^lvOEj;$}$gb zS@!h+=g4c1{jCMds;5xPTAfx@Kz7cUqG+VIfKry#xC`xx>64q0RSv_xR%k;s5AWbr z(EFQj2SXle4dFu?)^!Ygo8&j{0|yagJ=`7Exoq%(E$1@(s_Y>K&8%vNn;O;O>Vrc% zt#mR%|NY)pPX4x?CH<`J$TUXISs%%ET2GEGR_TrsinylfAU$Icy28SwiYiUXus6(| zmvzlUb-BZ^w|Ns+j-uNHmW>*wF3j}yZ>Ee`#0m!TBx$i7_IzCQ1=0%wMq}t&+3D(= z`8I#ZG`I{qwEJ&DsxXn_rhaAGR%?IiyaU_L8-It5Rs7v6Zea+VMx?hN6GAK|oS^#W z&&~$qs?CpyAZTw@Z2Aut@=M={i%^KjR-N@Ue(+-nJ&~5frytOtXU}}~4{Q9==$S4o z=Q3cUhUl|n>&=a;%M9eGrC;U65Ll{8MNhisMC|^CuZ{BgY(zxpcce^*A3r`%v?+U6 z@adx$|N9!(-!RcAb^I5O1Vx(Rzc}6uwsg|)L`|;de?J{cC6-vR6%@}sD9qrQ}z&^c0GCBtR0QLzc%cFKt)3flSz@}WYar-ru7_~7u&C2n8ZUyOyO zQ5#=@hb#MQ>+uo(BZm_+u4-vq9E|}yJ3D^5%RK$;TAsXU!0lVCS66ju&lNSY&248g zgX%j4TEvD1aDf3dlRzww11bH!=YV-L0Mof@2|$`nH^H=F_Z>%S`E!$-po(ST3+*fJlMtP;6c)qy517l@8f!f`W zz0ZO1xUj7QIng`xY9**3{kgyjdObS?n_xek%lTf%&ED=*?u}d9KY`$3Y zWbMIj-v2XoDUNXqdXVe8-*js6%85&`x;XY?sapv5hx>%opeKs;B)y_~?b+vcA)>yA zD8?Pus)*alFL(U`OPjjekL4+H?~8#Vs{`=0{b@}>R()|mwB6EPq{LjFaQOO;u93^W z@R{Sk$u2p68UXF7eC#=@#r0|0`&=d2t_2l-k!Rh%fLpk+xb%v7@s?dU*R3u0zlTCh z=as#rAA>D|L9cXJgvdGcA_M$ZX>*G&HT9a&AQom@0?4r#M0bGsad5SIm0y39!KRV; zk!_O~j7?@%s|DVzS4PBo&d7O_a?9p8`O!>jw4++>j5Cy8#Q~Ndw{`Gb>IZz5kF6rWB6Fx)EQsur*uvoV9@>M;NmfVi06Hb4jmAgnKV?_WIOjhz zv|FBRd2-j~CUpH2!u0OLr6%FUi$a!y9N8+`6V^5%5~;wx-&m0r5XW71b@qMEw+|2! zi1NAHwMSJ{Z>FbI#`TI0%m7qLOAK69mjYy;z2jp@y6F-HSM}>6y+Xe`smx>iDh+tQ zM>^)R3ZPZ^g=77Lq+6j^Y`#kAFeNz>BWKEPTKSemTT-E8fqYXnhcn~Gp32NnjgYse zLE}JXX;DA>57#pj4-&+*e%~ul?SeA?Dg02RdEtsOsp_1kcwk=QvaoCHmOrjQ(7-2O zq}}%G7e|COqCq}}+wv;Dok>?TQqb_>+To@WfPu_HKQ$|NYu=uIejmazPnCX~o4X-U z<9n4)kXhw(zfzFy#QOS=T<;aXgq)+Y(5-(~n30F4(XlGkxHCljL}Y2tabGKQs{(EL zy42+1s;ywQOl4$Rxh7rC`7!M4e!th$Q-4en=UH)yp7dkf_1hYf;1DI=WpiTF0zb=b zxFaUw-aq@m@U>mV46)g$`ic_Iuh|qF0Qlkgp92xP%{hJ)id#KHaDuKtR_c!nRY1Kq zYxePKWjaAVWd;1j=C3~^`y5Zk+38{{h4D2aO2{LB_PD+|KHoBX@bQ@NZOw-$pMvcv z-4!_t+}7ArR%MM(SUoU9H1ToLZ6 z4`A7#ih92A$bT|)e|&iC@!GY3&5o?X$>{PL>#dijQ~g^lQ&j$mU+D9XbjJ};X-~j2 zmaWHm3?u&S-V4_w-+dzveU4Byy{3z{&bTB{w!X((B-KFQuJ>&^=ueGfgkX#>2>P~9 z#X_#?-IB0Zy$~v=%Rfled%TqY5OSGg{+?+XmeX{V-QFBm`6bKu1ORHej}Quy1jbm-Zb2(8wKxSo`h4q8=6^+y#Cc-M>}A3flTE;Z(-} zw4S;f#kBYYL+=dZZGWBQG1gy4$J)rbI-s3R-F}sjR=QTBuOodln=01p7ey3NaargP zrDec75+o*35w7DAcYgf)vY&%YaDXyVNe~jbSRT1oaX+PFCva0EN|ZMOOUCihP;QgX zqFvUhp+r((+?WN--6RF~9hyut#l{|UIPXPUC`cen83G99>%Wbue{6sxI(c-EMBV7CBGDwc##BHUqJk8pwDtka==lL&>zR z$MNM|ZdmQW$oa&Uxnw>b{Y1|BQYsZV2^AIm=P@YD$4E}&+*JT4Ud|xpKg)8>)}IHB z-FeM8Y+RH*qC81NG{!it8z-5_+lpyV7-P(9bL#>D!#xfkCBhSAqU$cgZxfd7u`jj? zIy;?1UYYIrk>$E9B`4>q)xJ7?clQ1s-LQrZF@j+rZcC)be_HQ2fW|h(Wr0_`OW?tA zimRESpO-}e6PPt?tCVo~at{v|OSVTwJ%N%obEF;JYD^hp@x zb!-pr>E_Q|?^wqRW}l4J77=Tn-6zlb!#gZTpfi5foAX@q>0?3f9q0%7o0=C**7r4o z<}B!K*FW|;tTS5awY=rnKK=q7wLzEWBCsS42*UIMihU7w-#4eKKRRORkH*$Y!!cS) zG5M9B8x65bI zA=Ejn=)>y0z2|}-Rd@Q|8tl5n8K=o#w}Ib9OH?~&zQ5gTJe#l^;N!_uBB1)29lZXV zPjSAc>e5N~)9r2LN9d-`?Z=5*XUI{B_|Ka$4hlwDTA~mE(xcDuP1}l**g*?4hH7Vf zR@t1)ql1~Nf402*xZ8w<^m>vdt<+XDWIvkIK37m=S~6c-dw_@D(2UrmW}y|7A$r6V zr6m10U~`3StASqKj9v;jLB$w0{~`$QC}&Yrwq`45q^wt0+4%|*oTY15%@hjF?3c)_ z>z9P=iDtA-fjmlDlTAZ`Y!j3{DKdv5jE8#H(oN0cXu+kc5wf+m><9>L1$Pe-n5o8O z0KY0ZE1z&}MR%Rc4tHL{#bbw^_CW2d^_;JA%>uvG->ziVhsz!`(FrkpO~Rc_l+R*S z9={leyhg46+8%N1yUK=M!to!W@Ben}T46B&gnLsQm3BC!S4uH`RRqhOzj+Y7(%XUd zE%RU&_7=FAdBd?qzMODc<FXPnu)wD1G&H@Jf>+h=Etf%J z-GbS0h7Zm3Q4?7g3pdbl=?Vbv7Wn*eMHcOaCDiR|{2TEFc8xLmAJI|lS~$hL?M z3}7R&t9bu5N6UOkUMGwP<@LXDN~p=dH`JR>QS6X* zd8vY)@rV+`n}uro6WfbNoNZsRsC>3fI)=(Ygy!e?7c1pf!#RoQRy>D3ow#NZ>aFoN zjdhd1QWiZulF9y7yLSyw21wr7nopc&_R;iICSBa!rRYdh9Mpk9&oC#ke>Uo`kK)2} zcDRXWMu-a+|IC=n=bEplC0b2_P_HY}f9JRVN|m*ed&g z&a>lAs-qT+sHNzi^c;^%Rh*&W*3Nlk9;ME4k7VjH8@-cbX#M5Z%P~w>M~z- z8P$wB7RRI#LHP+yq ze9*s08|SarT2koum^c51RkZ9k`(Qtd3fMQH33jrwr+HC|(ITw2fe+Ls9RKw|02>_e z%=jd$1oP7afJcWkx_0WBc2aHmEiedy}_dwt=C2+Yd~P85lv= zT0f-sn*iZDP7A1_S%(^xVORvS44MVL^qZM|cft@wXqZYXBfx zBvGFRdX%-bd%m}=F0(nIB8B0|T%@&(eUp<1bR(bxhtL&h#)ai@j#otMMGDr^Vq}kV zGz&+-N8xL=Catorb^*sI%eJZg;0OE{JeLcg8k;WSdZB;g#~bFKyTwr&xs$aDc`c1_ zoLntx1y?A;YyWf>EAgJBKj1j>m3den_IB_l8fbXFa$z3a5s4HqUAj7osyr4jdi&wh zS?@yy`2vM8)y7u=QU%1GGijHLtnk5 z7{<+}a9$r>xlY%Ji~r#}e97$YBDUR>?8}E$^oDMj41!$`FQ5OQ->+GSn@dk$DhE% zgz!xXhVh3>xR}K6VIaH#ajAV4Ie4N&*PfD;SWHtZ-@Yfm$>aj|e95R)p_hml^$=t` z>JQeGPCb;~Jekt2@ISy49);%>Wi9Y-z0#%YeNPzJ61P1>yZWHTs?>26^EAihNL_{e z!dI<@&+)QttCkBSl(mn0{X8J{;g6%PH&s>z|00Uz-8U8O;} z_-+U&j{}ALF%s=tb_QGU{_oSK__u_{gFx!3#p(Mzw*O7F;0@rPyEJNC_x=K9X8tz$ zHE2xZQCu0S7Re0wy<8wwO8k^ASJJ<#$zLVQPmDRKsSGGdLHtn#xw7P3$noS_kz%B) z%DQ}KBGpTFy}Jp$pBlR~Xnrd4k*Wryp6s;z3NPR!RWVtLqZ#Tg~H7KcH$Kl_ba7kLfGbm=i{~8_c_JUzGaiSluvtE*wfAbiDL03okR*wMdV{ zAJXibhke%;Tf)sYlz-&SZeCAR-}U~o)RWNxSYUqbc|=^U&|Uw9xa@*Mmf%~ze47Ma zJ2pc-FWdMwf+;#V{wo{=&xEBx@d}{NT4Ppo&Jy6Ub~suJ&p>c^N8DluZ6aZ$Q+yKE zOA$OB#+xaC>lbU+$@bn%w@fil_(w7c_~rLk7i(W6osR>6v^~C@(eN0*mpx=RWE-9o z@W~un3rDRgT5$&W)jwS$1y`=0UP+g+pi}I!(H{KLbxq9b_)%a}V0OozG3FDHokG(4 zuMed;-JRPx7$ps5bpKjaGk3@?9pspC+&b;f&i$seT5up7xKHK+MH)_*fg-u04OK@?5EvRWDwvkgwK8$f>Kq>?5*g!aH|HX_z0 z$6BfIHrsnxN&~&eo@ZB z_o(podvYFm!K*MeO?bd_HyKrv7lZmz{l5nr3wWifoT-5D7vYwk176Y-FL_3?b`ppc zIy-m@dTW<)CqYS&&U%z86xUs}`%RU8@wfSOF z%@Z)k-?c_^cZKLj7zr-;E5v(jByaz~mVR+Q{+y3$rB2+fca>bOy{!umNg2=@KoAxB zIwMi?t-kRucf4|;D^dZ}{y@aNAkOIIi|$6}GzQ)EEACHm3GqCsp}*1X=t>^qTbuoH zeK{x%XZUg9(P&={8;om0%V71npy}n(>peTxzA}q2LMXLLa?gXoV_}FIODW)V-!GF4!5c;*l_8! zhFUUi$_ex$k}m&a4kar3Jl1HvO-EhHoRCA_+E^fU0eu9zWuZOPNTgC}#~k$cNlCf?#EFZOl! zqvv2%JiY@)*j9!uYnam2L!cP3aZQ;4+wx4yYg@zT=H3ek-WdJeayw$04t=oBXj}^+ z0MZj4e7QO3Yz#fMJ=?h0`I~GNz+Kc;`2The+G3!qs(-_tc>cY^-z&gu++J?Y6(Y$9 z5!mrv!Wyj!r{K;_y}Gp!7sAlr=bOP4lEwUy5J%b*zJA*T!hktxKK{Y;b$pxTH@)1b zZ6XPduJ@4KIGry2QLtO?n)c7JjfMa8$T(iD9(KclM!(wrKY@M!cUJU2biY|mLas_x zlH}1zE!-h94U+}5l1rJ?KkXC?{2H}Ya5aK?8kMO8x?Z_wE<|%%;>xcrYp?;dv&%{h*`US=l!~$MTHqCj+ zHTZ+FbCZF2I^4=rkSUD>N8`GaqEVFZpE!;2O~)yhT3YF_I<&xUjIR*y{lVBL8&v>t%ETrMQ-8EDJ(iR;Y!HzXj2j=pn307&^wNK?baCR6T#2qX z?oPoRJH(}bPEL(-Sa%uM)srHcdWM|R6$N|_3=!GrneIxpZb0-lq;n$z z+Mwg}=I|ykxb>tBxJ4qh8$Y;cy9JjiFKFXFD-V{6{+kc4!l5$G(s*=pb>rsd#phnw zYTjRn9uYqd2KP${T&AIO_zVNLo(rC>)q>tjtljWyR3fC`9XE1R&#{#QI-l9laOIg2 zRn=)~{Dv5*-`ZPhE->rJeQpwMuvJ+9T)JS+9CwLU;GgALeK9l`Ih4(m}J?1FGQ?~m{jE#v1f{~qY<3Q?(FaVT-mkz)^K<#6A87%JowrP0bB`S^u)u@(* zwL1^_LqH~>f6yt4L~e5CNGOfh;h;|%;{<3$T|$61|@|K@=RHDiQAEr9pgw};#s zPh)3H(4S*qm7=>YOC7dyMKr`sCQiuMxZ@Vk>i06RvG@~WEX`U!aD3$QOZ!b%I)xO? zTEP|9Db{%ETI)i$t<$oXyz^h+_)dwIeWNled($0H{QRu-dyDcTp|KFsdXEb4ThJuWQZ9>MNdOE zI{uz~TAWl#=My7Vyj?wdmq<3{Fm-|x>r(KUXm2Eye>AR65A_iDy&)TcC9hO zFkJ*{hslw?i+z#!eVZX`;8C;E09;b5DB?Zm|6>8T?6^p=HyN7j7WOuR?wKU+pxP7j zuEUqnO3#lP(wWRT=glmxxa!E53oq^=hHB9NFxpSvR$-@8p} zspMEgcvFbthU5PF3r<%FX{yn+HUlD3p!&5)5F94MjYv(~#K>m0Oo|>|0tVXmz@vPk zLe3Jw!?`gSbCFE+pDp|_n=UWS(L%Xu?K-rIY`xLq3H?vZ`rp}EL~gQYujLvnwM?Tg0`+3KG3$de*l@=C^A+DiCa$?g=er*Se~wk^VT zX8li0KAi3r+m5gun0R}lB%eri@;@lQFRe@Ej23q&+TXJr*iUjMsdk|X#4eSTEHS`X zkB|Pe{E;DCF-V%{<$3b6k-i^-wpgM60ZVoz-!3&BfW+4DVTt>(L}#~NTG4>`k&lEr z6ld@VSGuqlb?)^Dv8khz;Fx;%C}6cty`*7Yj%i<`?EK`){BwlGW0J#R)@QianX)Pd zhQtx^F1Hg`fH@IV9zCXi8#(*C$&+m0R?^cmHART_uJb zMb1sgqE3q|KX8pa#GNXd&9Ee00h?8awF@Shkf5MM)E@H8y^&6b(i@ei&i~7~aV69TM#)ghXkaWa zEdQkSvqn6$mdA5!HpgRiRs(TjWTZ_Qe*_<@#c2){CO+SMA~~xi8Nyr^y3=_4^z$k8 zQ{q#((|Pw7a2G!z3EmF;9j^+D=M>t@v>Rtvl9A_?5sFBD&yBs1e_5!mTDg~@rEyQ# zGBCNxYAA7+SneF4`L4l|BJZ^ZDuA3@(#B~{+k%kZ!*5IkHqC|lH7%t#-gY``xEDfN z-j3Vd#UByH?h>Z~ORe7Sxk{g);$qtWrq)i$v~XxC7~U^+YY@;U(ZBq6nsX|6O0`e-`VD_VTGSg&;u&+^Rw}M6 zZThXqb)%`XT)&(EEv56>dYAo7-J*9(M&htJc2`Dx#Lt3Up!J~J=a8ssytlX4;rLU- zBI;j>7qaT2%0?N((%o?rf@@FjJWhzvs_U~oPRd4XKj&z#M;IquPpQK$H4|%^21NV@ zD5Owt(T!`d3YU}RjwP7+?74e3yVi{PT)-I-RAQ&LoY@2&19tubuX=lD+QW~*Ka~&D zg~-NEgOa!h+`h;*1;+2YfVEd&Je~m$vWG>_*ur+jklAaFCToT#Ex;l?%;FSUW6$H7 zXXzAT0#yRg;bv;Qy$CX&yws6l+2V9ByaJ@%sV-YwwpEy3sVm$FS!p(TSiw-J1}Ii~ z=uc6STL!LQTA*c$^9`=NPC^8|eQ347T^TEns&50L;$x;;C)9%pX>+gZFRclS7rhgpaaxEg;(!cT0JB8(9FL*{Sf30su|);^g2!wf$_ z|9xtRcz;6geXV{^*jTB^f(-pdL^Xr=2^}Uo? z4%ALLTWSVbx3K_*{w~M+a`7ZvOgW}uk+=yvk7s`GZJEL`;H9X>Fe+kSEmbVMUStLb zJ3ZEmng}|{7R+d}$xP$s^*KpQtLU@abZCH~8G!b^c64};d$o7(H#*EG8bPyu$<=Od z%h)FI&BRpThYwQZhZs6XAJ9odo86Qsb%QfwqZ2EvZY$ILnjY$tt~X1`G}h%G6@TG; z{2aouS>|g&@lbbx8HmKcOsYaaf8sLrUL#9&qrZeal2tqwk4KhpYC~$?h)pLZb)}*RFEPY#zYa*Q9|7l zU?Heyvibg|*aaBYJbv8jB;_auHgg#JH-fRCWQJbk8#UJWcjUin((-Y#Js#vq z@({Y?&hV=SVFgq5NFYo~To)J;%;!q7>X(2vt>ws-NO$Zta2ZvI5~UNq)_S~_MF15Z z7tfb}QbS9U@bGJzKo`y9Kh72DR9RM*YNYq;m>o?yy_<|ZOby)n^f?^jc*=F?C++Y1e>(^vlrXfAhDvN@WhmnRV$a#WLan)Z z7@36jQKirPFWD(lt~ExN)~aVRH=fV788I6psWAWRzbqL`#jx{7Y3uxhG;`F$w47%O zwsUYia2{q5BntuU{wn$yj-#PIW$x00ped|CanpF~Ir7za+Hw%n=15BF*Q04ipBL1V zAY(exOed0+tn10A{_<}_8HH*JG$j+ksg9`5UV6_Es6~-&w)@BIaEzx9Nr$n={7-)E zpy#>c0vAjA;sef`{g(XHCw1ylJ8$lnO+pKy<47Xr3$+`OE$fXJdPtbk4<3}=-`Vf|$Q zn}MxWcqfGXL9Y0~r&wc6fZagO#*+TR!xxUZU|XjW@F-l;S$%?brahTYI@?t-T()5O z9v0w;kjQ#!qCRL+WzomA(l3HqSS74s@6Tt9>daxmPme*TE^E_0a*vOv88;&DM0@Av z#OQ7s$=TKe@7cIT|JI)~D<`EHvFy0teJ$Le&Y8*ZQinDWeLwrC)fK@wU=u{br|`7= zy6vr0Y>y(dF3C{XBasua0&B(MS8;0IuT{q>iJ!qM%ZH2slkFSrbN77JYSin`I7QlC zFDwM{l{lEhJ9&n~=zc_!myO)*6Y zRlAWO#j`y&F@wQ7hx8L_G9#;JTd;}t4Zv3)bax?;S*+w-f;}8W$EF|iy(99^l^c@^ zsS$60IUtI7d%Bpc@LY)C)ZIS5EZFV0?0S6+=feE!!Oz4f1~T$qeU~To5z#gP zA}jxjFw3ql>ibS~Pr_d~Ymr@Bm%hM_DbMegsV&>+1bfJ+uK7AI&W!~e50nluv>31G zF1LY}DKJ|VEH9(==6JLEZp0{zy=M4hw548Ooh{-`G}(TAZ9g&tS42SL!(P1yX01iA zlkJ_#8TEY!x&SYwZED|KJdGY{^2Fa4aQytI^9F83Jdwn(Q(!|H1aR)8_B)6*p=i zsmR+}S-EhC81!+DxrIfZNwn*qIy6T3CVLO`wq*>z&N&n*G@&~Xs_&1Y=mBT>n!}m~ z(uQmLL6qr z#y|obX`>>Gh^Wzh{F}HL5}eNF9jW&-Jf0Lxs|_H5WufkxC1b;y8Wi};J*4hayoGU}E zQ&ukY5|1w2U_RqJ(gILJX{lqUHdVZHq;j8wszKzxjlX$P#is>rzjz_2lxY5}V%;-8 zwjAJ=teDL4LV2D>3z0Wo&t}GM5%cf;M6)C=37FMg-IlVQRy~Tm3PMfbRBZ1Xp?JkH zes-slQ`O2u@~?0CCKB;^I@ObTXh6N}69VAjWURCg1YHN4MH|van1Y= zLvF5&iIM4G=}BS%V1Y0&ld%D^H|dR{{PkGtMdD#BUPa;1u;@{`g!fj=S`x5Y5;Crm zFv|8^>}4D%z_lpB>_q-~oRCvJ$OpbpwZ*gc?P|z2)m>5{-XM;SB-tWLf-NcSRh#>e zkZ|X%c6WnGo1HF2F7Hieb&uqv=q8wn?~K$WJBoI$x`}{7{5x#?f|?L`tR1;n#dr50 z2isbt6)MJJ(*M%bjiC?-NrY95f)VoF934XLj#Wr2ye2qIdIwF-A3!tpU0?H z89CKO)|-Q{QiOBM?`Bl>NXcIgNgbd47M@blw!0c7P`*VFC0&_Y-ua!;a3X3<4B2{S zs9W_rIwm>&Y>}nLW04O1N?;Ns$(?Y~yjNaIpZrIFbnGhPVj$?*UlzvV4Pc{gBxm0j z{S1qQKz*DOXYWVB?g7RntwHg*@-BltfmOzM zo1k1QXz2_P?+^z7&%$q6*_~3i^)eaG^lPt!5GA{R?p0knpgg2B@O8NzEw7RP+|k!@fV^?^&@`2E4q=T$QtfP( z*kM9fa_1Z(+n4AGB`ZvOz1ZLrd+8+lqU6;kh_Dw^t3)TX09T`-s*lgwX2Y7kBjHtm zb34&y-E9%((5EyUmmSybC6YTOC7-BqZd)ZPc5df+2*%Gh`v_5z?Gfd`k*FR_5t}?m z%6^-IF#S3?sT0F8PBt!RdAS8S=HeGl;jMHXMwM4Q#J?dkZbxSiP= zY?9K|Qvh;(3WITZK_QD|Nc`^Rbk!FP+7X?QX}9I~Xe=72d67dfA%+F*?~n-XB9_kT zcjIp4&X%P9ttf5BE+s1GFIf-m3h%cC`F4qliW0gulCp#L)p7SX7~Bpv+L*_-kqls@=z$HcPUJj4H?>^;NT ze&7H9cUvuL#A;BhsF<~)My=YTv1-?*R@JT%B{o4&MNz9(?M+LqTB#j-&sa4h_6UCI z_c;FdKmX&nZoKa0R<83ppXd2}KK4$*x-VSi)MW!TY^$ke<&X|_Q+2U8@UYOVc8#1~ zo00rwcC$!pDQ4O`XIbU0_q5bF@$3V8d3wbe(5& z+rL4yhlw(dC=t^wlYAdEH#>Xi%en}_iqXu<%{pJ|%sO1YzjU8{z36o)xyMfO{7?pQ zCND}Y7(DXoTYd~fOO*S7#%}`1|8_J$Lt2Op@=hQx(*EmtyCrydg~y@v6NXH^LFP+syHyX2|MJN<<6P*< z^w5IlGwR%=LR8b+hlZ1Gg=0J-n{t2G@0uGK#N6eIhxfX_YB<>@fxR{)a_ax`Oae~v zX!yomq(<4RAmPfdP1hprLzGb%@%F*ftUAJR7LeoXRzdOKDOWMq2Inj;G3!xLnY*K5 zl3{hW%2ygqDzbtU>;gm|t1g3Uh@0w?-QIyn(ehu#a}gauQiWwm#hKvz3*UwUSvxEv zNL|;3;>Vu~(~%VIis?Z?q-N5Ewe*VT3EO?a0!BA}UW*CG*jDySLYQk;(&?v5RT=F- zVqRdx6Eht{Y>c>|j3bDDe#s){gEs1KXR*M^<@=5((W2DTn#0HL(SDk9su$s48?kMP z6Yo%90{k?}KWbrOC(5M*V>gr^*=)t9a8aoFJ1f*r{=&g-_xJfd^M+0?l~|+a)NR`z z;nXT?8Yh^}i)-JB$iB1Yj19j_G!;fQG^>J{;jbq%V-+H`N} zJEHCih(%T_fMi4oU1^q{qAL8OWyjfyus6*T$R(Ie=T!b##xQ7M!#^tH9r3|Tw_p6R zH=$RB{X6p4DWmZ7EQ8>DR)4lkMx!t}M$7)VJW1d?vHj=Cf~Q=rR?0^3(z9rW8-pZ= zb3u=?H-gIMulHv(yy_1#%sMGw(Dny(Wqr`8G++2M$`fXh!0q1oABxYsI>wJT&g^Xj zY4wchmS4}2Qf-}NnM}%~w(Guo&oNNsf=9dzG zEgqJ`jeMO&hgU`vA-FsoTScD#Ypq_{!!Krt-Z8;>?Mg=mN*d9U{zmg2va`r_(dVtC zM-o%zc~&KJs3yila_=%jovr6e60s{RO!jL2s*QkP8PXpm8aWH(V-)Oz!y&}G`;5v^ z#V(>eJEM`fVL;U|!Iy=E8OG~6x+|I`R^ijNi)bvZ4I5JS1W~Oz;|V*F?DB(=PPpdB z+uuP(BT~eD7p>YkvpjuWb)8Iyj_#6l3O(QqI6<0(g<5oD#aCY0E0ZVTET{~t zdNi<&7A0g}PK!ccPh`8(+DvaRDPQ^^H>GIZ$m5z>EbqwniB36HBf|H3?6brk^uq}+ zP;zPPf#~apclEM-d;xm?r-&-|R}$a&kw;LR=(znX-R##zxe;x`>EE|CLbIbY+|P7b zkas!j%X|>0tJ``zlU8k-AKM%vytAh05=E+>&;+b-KMve|o&7TV)l!u~rKWKiT*mI# zW&C!v7qjcubEZwfOF!gyQ>PymQ9?Yh;h&pAj{9pJQ!Lr^gnZ*hjt^G0J(+KL2Yx;> ztQbkz#76W{ifV0{6xE47CehnxZn;Gs-Du-l!fr}0F&uRqb&eUt>7t>q^wV5CRdFTr zb#tWyQo~|D%I98l;(8_!6Y4PLo1&23pC;ZJb6Ryy{^di0-K@&x%K1m;Yc5QVLm`$0 z)XcC7Yn{X2$;twEykhW|^_~Cq&>0h?rgp9Y6?H4yZv3){dh!`S$-;L|MqddGCTcr% zf9(~TN5#>w60Djls_!c6(F_Z>Ctxx!-o%yVE5#Owi&fAQEiaJ zXW-OjfyAgDfKj}1sDQjmR}jQIoc6A0A44MapO*Wpmu(?GTiAeRmo=^c@u*+7UL~x% zgBa3WkfC!Eo!C%wzF_&Pp0X&?q&QQf7|WSHuCJdv!t&u~4o=GRB!Ea(-P*;p)j%w316US)D$e{y5%2okU+{7#g( zkU8z#s>48o=r9W$8V~66s3zNumtBcaE8ZnFMo40xY7vL-oOHFXF-Q(XK6xBSnOapU zwO(t`23(0B2iq=(knr~;esQ!h@(;eela2|zy=p|U4gNEhjj709j+m;by6QCF5d%_M z9eU8&JVfdtNWKc;XKYXS4rM^pW7)5j`w_UeyK*M&Pn`}w!xDuxvykF<+lpun&Ajww zQZAlPPyM|jPGMS)DeJ>u|8P&Er1Cc|d0Dz`#hdxbFPLp2i#7#w2UlU2$L)fL>7q7U zqXiNu2hP8@QH0K9PywJxY&>@UgJm)$vKyh+LJeXH&0c)E4{ za@)?Tz*>T>BMzxz;2=%s8_tnFPbZ#SeS);<;_VySekOTZ{bF+ky3m)AOoE*hHZGsP zoet+VyoN1;?i}|Gs)XyW|0M0xS8REjXNJWjP;8#;J#wX7uX^?C>o1X?aSjhx1lXo; zFC5ebTt7WA3Gq~HtJP1w-Of8v!iIhh;?bJq1sL*@!AAv4wv}S)ul|nqZT3z0+{6Su zWWCs65p%~hs~J*+)PC#Kl-7Jg$Bv>5uHE6bUXVZCM2(FKL9Ha5!lb-bdN< zj?8Ci6zhsI=yG%qs2bw4u2%O-@tl@Vo`?Y!$*6xr4Pm-*@Q>oIdbp|gy5{OvVZQ_O z=ib(9I^Hn;<*Wl$SH||a}5mwLv{E0U{%U{Z^zqpA3bnhHjScnT32acDFg2T zPn^mR#bb2Wu_6=TS#QOp3CAbqyRS3)5!=VLPP&(iCF<{0#X8izACcR%hmCC(9EVJY zRex$f@;GB%h-3iXDY6~U(_Hv7)JMcBG|lF(*dU>QF~VZ={`Dz&g1vTD8?>#{sPv1_ z58LLW!+wFy&C&*eERA$}vGDX9ac~4aiV+oWg&4!rscyJ2mT{_ItGQQG-?3`|q>r^V z8CJXT&PQEKt(`?-x{k^+<0+tj|*sQ%Djk)x#*l3YL zrPOy_oOjo!9Ct;zP^J%6$~4DtnLcR%)8nJ&`^sn-O{=EgP{dc8TH@ zL7L{e6Yiap*_XObY#L5Fa$Y`vv#f-xwm*jMohI>*(}lY~TJ6Xc8j^2DNxWa(Pcrv6 ziLoyZw8AptDs9)W%;DW3!U$a%q^{*>z1|VqoL9(nIJ!AjFbba(|5`6`iv?ocGZk2fM8F9 z?>*iAc4lLWPusDsf>qV>H3K1b)71+5lYOxOn<*3N^R&5Ep@#)|9*k+mw4cv0J97uH zW1dAx-u$eux8?W$krqUZaJlQn9IWiq!T9litv~p-LL*3x56+!NKo`Q*<*y3h-xxt{`C-66o9=2Hr9cxNq>X07W8g}%CU_~vpvktDOtDV-uUnqt#?TN87MASN$ z^{xbH`T)vB`T%mk`i!+CwEbt>_1ZhsVc_LaWHn}EJdfN|4Lau)G1?I|(`!GJYkqm2mPgp_#M8{e$y#}}Pzg5G?U z-C0pH=Y}|Gpg!EcG>!#ZIPhqJre6{3*I>)`*ir83LqMyI?O8-R^$KKx`v+Mau^Sv$ ztjRv$*iWGrXAmp{RZnN|3K2=e#S9MF2%Y_r#z( zwFkQ2xH*}DdrU18vumXYE(t1i z!F+Tff&~MqPhXij=o%BSHH;dd$qn)*ESc9cQFXFni@r7$?2ug!tzHtKhn1v&B8aCZls_uTqFPW=M-Uf_B9eokN7hBw znOwi(g%~%v;&o7JV$KZ6X;N4{j{9;Z1?3hlX*Kr1^E=tiYT0wjpW>DSbSWOB)P0a+@Zh=F^ch8^vRC+N zlL6z3X=%kUb2q_tdz??(wJvR)pVlF+gleO6K0qsh^_oErwr%4w- z2QSVS!bA2iwXIK>Nf&B0$6(l8gCs=hrc`<2x{$J?>L?MBh@L7lPII+5Uzx8Bp1 zHN!@VrAvUwb4IC2Ws~AB`>1in0VnT1k>QM0E#y-t`PNdP8QQbkCpk>zYRx4}aqB35 z@TDq2=!yuCF_n!{cZei{cCGS*kQ+)puSAN?1wKG|(w2Ll@(1Ii=k6^7rw+b{3hq!H z7jK?yigNb8cZNsMu|{;kL5$oQ>N4_*oZEFKD#^jhG@aXk$m2qaDi#;IncV*x=qg=Y z6SFKJ@SfFtuG?mE^$lF!_U)I^J3d{#Niiv14lP}_yQ!~!5zfIGGJD>fX z*qY05IL>{2rIaClFupx*$?__)=Q>2my6xuA-2h;h?_V{x594DsHOKSYNt1he z#!IlLp&?j5Dn{Ic7p z!#s9`cy?|BE$y3N<8*?8q>n&>phqOqA9hOwr$Kg8+4_$6N{w}7|H`(WL<9d02k_Rz z|BJZ&nPoGo6a%0b*2UOBY#1Y17+V zcnLhC*&Z9uu=xD=@F(=E!iy?TdyQDy#iq~!8s*d2f%YT1RgWx* zXcQ@5O}A0YqBvY=EiYc?>uPty&+`FoCq^0@`5^>Jls$sPNxGAE)q>GPm^_qZ)rby@ zFuGo>{p+0{uyGM`p8|@Jo2T>;hHm(e~$k$`*f7qV!Xgg)- z?BT=y2{Duo3ai)Bn1lYTmePgzFpRTv{jIsY?C+1kHJet848w*=*DYbN`+=(qz^(j+ z%?lRghV_>JuDx;BxsxHtI_YLZYf9tAda>=f2OUY`hpo{<1OX(@!j5a1LU;L~bj!g9H%E57gRX4&eW}Hxmp_PzfRqg5ciPa3@}* zzNeOi%zN}dYsqy0oeH+c6ALlUN4_MxL!aoCD$;{ty|J$0rjF`J)z+g4a~DWtNPFMe z^#m5*tAIo1%Y*I;5ffGe&#(bp2;vl4vky9cyVZY$?{!!mQc{Qf%QRnappXUm>VsdV z0`7&`Lp;zjAl}a8k5~qBrJwoSpdb%Gn~)q)MSi-PD&+I!kWXtO=Y4?E*T^v~MR!5l z_IpE+Cjn~-Du;^PeRTdIl-TG)rN)XJ%OD{HH2^91`k1wMjcuCIQ*XCrp` zQO82<(tVFkKp+&jQLs-l2{0PB{JA#`zR_5iKuJz*$i148$E4!_(nOU(ap|R0E(FcF zo=}zgw3j>>GP)*t3CaGKJzO?mJUWX4wuYz_Z<}-V}4?3=^;&0a**jp;W0_Q zj|K#objA86uq1U~9Bpn!RZv`W+BZy{+`BClJI$tulMJgAEe}*yQ3I zjF8Lh0HEUn>x?0$>)?=kINR5*VVx4AN^L|61ebycU+sv$SIhpnbhfA4rIkZa0PQTz zDCDC?;GGyQ3n4i=gQ{;gzdzkXUiQcX5wsMc+RSN;W`kn0RYvgjD9)^&0MI&s6@1Ms zPdTs8F!k4D+BUW|#ILu5LTA5tYQ9q(ah@EtR(j1?hJmMB;vW+vTTwNy=*DSh-))mP z)16r*fG+*}-c{eMGsNA52J%(ulx^18C)sz{zK^gN_dG29BC8~Obx40(ls>MD6wT)( zxJ)8JzRVByGb2sE;(FC}B71uz>v_=u*taFUPL#b!yhrsn@qw@IBv-#6NGesExj`8k zrZK+Sn*Z_J8I?=kua0xx*-|*?NxqJmRhi%@!6jUaT%Dk^Vsw`Xw(>dJC_IzLGj>w& z5KbTux0t>-+S9mpIf``2oR`grSPqEmU}jICd@xo{#Zyhf-SIw5mj~_ly*NL( zuC+?jdXJ2|1tb<5wnp^L$Z|y{%84@D#(t=HcNSLNH$)d6>zh&|=l+C|pb?IuC}H=# z%M2X~Aw1Ie_V90n5WxGsFj=Y@t_3h%8@8BdYTpXlN?C<#B?+V#DgJvWo%U8ar1eb4hnvQ z@LoeJaXWwc9e-b_C(=xPHLsK>S9(;)Y(3jg<>D?l@>kt)Xfn?d&nllHmAoo09jpXZ zUSxb07&9K{{Kdh)0yo1JNAysv^hP_r70XV%r$0$a`P$o)KC%?1pbDor&N1xPk4bGV z!)?A;+~|IBykZ?7@HQDn|AJkH&)h8@JrFmTBsZ$|(I4B9G?ZG1c}EhxN4*|;8Sel~ zr;AK5m_4Jv@6K-P64iHgSNb7pl}J8hbBP_)J2{oe`egqOfKh;=|1cp|O!hN*^yB_cI~_&`fNYIl2_V2Ueti zz;E$FWpGz@n+v_9g+I0%>W`GXpY_pKpnEzl{D5wXZP$)(&?waX(bf|)_z!4>^}wI@ z>6i~G^s9o%Q$)CLWw2zH2Gs7iz#`|wV?rVGr;x0xC;*DiG{!!n#+@Rg^iQ}{URQ(Q zAp+L{x2Rvq+7V=P?xH=D+VMa>gEF7#H?gQK(ciQ1p0T}{c}RZnR3m>ieFu6$+?-R@?5@m;;B~~lAKbk1QbAIgKkBP zuw|?UWR+|u$_2(ra{db-tFB`ddTLu^m$3OL{V)Hlw%gnkR(9)JNT!}B!1hT%B^64FN>BuXdOUhZVS(bfP zQiM#pcchOTy#udv5IaXHR9J0{xigE1t(#7pGD_@84dtiu-?_ zDMP(ojkoaJ zDbuV^(2Mny&0ceevK^Y1kQ!_iG)(+}&K<`1V zL9{}_4=L#r{d(_#)P#s12G2PBZ*ksD zP`llb;jrYWO98jpC68?1A+b1@uMpUUAhKp>Lz7IUf zkL_Kq3rremyGU>AwS}t{CTY!@_7Nt6DNhd5gqikq@}7dN5|}z117)seP#fMXU*LdL zB4XWH=UFavhbvsoF_C)};+MbB(L2g1If<0dLQo(10u9P!vas>E}6iP?WXB{GP#G5?WO^@#^1(^Ok0f!}%~3W=D%Bsq4SlxJY%lj{ zn`Pw_%dzKi@2-(Xo7S(tV-5_IV)K4GUosq|^A|2^kot4OP-i_fy z>Xl~EUhnqXceGt>q#ua`C#wnp@;yg*2j?^Ci?zf?ew|86GVNPBS`W-Gubol$c&X3* zR8z}xQrP%r7WfLSBZuj>C`1sgYz*Q@6rX2$hh3Ui`jb87ub&q!;YBRKS!^S~Wh-wC z41HU_Eq$vHoP1myQRUP9BkAT?hS=t5QZs}t)p3-zN>aE<$GhZJfM$noSTg)1K?R}= z$+NrRP03~LLm(RO zquQLuDtcEptU$pTUb4i?IwDLAeepvzwe3d@_=Q}cPdFY!o;cc+{xvjSmifgq`6+cgZ zIsY6t_2`T<+1&fN()e6YPybmK=dIzb(YK|X!(fNY1F@tj9!c6_z9)>?p!ONjb@mup zsi$!Q++}7eM>N<8;qE-M0m=*DeXm%wn-t7`YO*%zOfpIH@Vb49xB8{q4`o}R&~)O? z2aWrg9tzCA6FmZ2M|+Gl-oL5VpV#+(&^b+cT6R&Q(w8`K+59RVH^-I!;USF~VuQYxeDy2{)!+7E(I2z63Id1O%S6JGobYV;9BA_mhZ9epjmcbUTd9li%42eCrQ5S1=l$*c`#taAySu%moANW` zMm}pq=;Be<+1lp&#VBNxe%6_<9T#4!9iWJL)7`|HMgNtaFgcb)4P|kAVzGG!SfeN5 z_ymBD;h!W`Rs%h?#HesA>@>y#XKkLb^3|!L7bPkcxZ3*Wr7?2Z*UUyrQ|5M5;QBSJ z5X*_DSzbU9_RuU9uKqQ`frga2&uxe)2}?y8@cw4zfhCe!3#$>>Gk_>ZDk2`%R{2@>9G^wzsu zx?8fsGCOWTVAh9St7 z?pXxVJgBe#b*{Kw7U7Ypa@Ko=c4@PyVx?WryesD~8@brbwv%BN>!e^oSWGxI^vq;WbpL1uFCiRLaFHq~YvnWP{_hGq zb@qSMx)gVWE|Q2fh)B|WJM$GlX2Mb7#6fUuYFU)g*WPF%5z1ac$H-n`$hab6;4L%g zy>L{ugU}tS9AOyi;afB*HQB|$|BZ&D;87Lu+O)SlA0|hiFO|rWBt}pSx9oj&nCxV$+?Zod!P56^>&Z=6 zZ`iwS!WBhRE|w%>bP!$IRod>LL?6M{I@p%T2O{_s2G0=!1yD1uASQ)%kTsW&2YO{^ zsX;GQ{J3TF)0G%gt00;Aaiiwi@#4DiY4eaQ50nEK#4`H*$IqXer(cfUtNy#g$aQa= zdseBBa6MdDehwm$@2~Tv@n?b#twRc>QwP-u*MOy}iQ-H?qb_sQJ+CjmZr?T7vmIFS zU{qp#&h^iA4U0$`IQK(YhdIf0&Wifsba3#EO_);V(;LB3+d9H|Lf+}$$)fk$Qi-&h zlpACGLl{nyTjTtnO7&TTA7~kk?Ni8}C(^D7UEjmz<8(P42pb}OPbP>Wd&|#XEsmM% zzd8{4M=k+Yn#N>nB16h zz@44MgzMmvT$6C#cB3lNNy_$;qkNm`0|tN0NpB(;&M z;#k$FcW7?6BG!!oi=koKZHQBan@KHA(vMJ_#Toj%u(7sPdF7p`SoCJ0&n`F)C$8U? z{oPDxN|md7Xq70XHhc8l;EeW68uOhayYSea#4BwHt;D&7U-shoMVY7#^=7XTw!I&I zB3U14M6FGLPknVe-kmdk?xAtNfibxjUA;{?oK9#`8f=#@c%;MA!8$53kK7+4Ne+ak z#BsF}Szu}np;TgjEBVd$wc&~eQ&vv1 zr4U)iQU%Vso$UFZ1pZMPCkYiFCHqcKj|q|7YLCBKDAs43m8}9DAI-2=ugcE zLF4;m);$VkYQ>3={4IRs9pndv?^53kP}kUhhS{$Wd8et2#|>xT3bHB}bd2BL6-#nQ zD=<auP$5KcCP$mUVn*LW zaYlu1Y@{8L&u@m~X}asX558Ux(6KGD9;S6a*s6raEklFBHWHWbk@N_KzC~7HQJaCz zcDiJtQB^^tmeegJCy>}W0|^%1vMf`-r0b8MbVY_BI_Z7t>+9F69l%?`)F@H}^kM*f zZ`EizIX2YSZn?1>Ul0C7HY5-ZB0~F+;SB&eUT7bf%Z4Aw^$d($m!btn*!o9c(>BSF zmW=1YziZNbylt&Wr=I(MGN3!Cp!%+3uEt=qVJ!nDw?*_e(37t*psqt5!{l0)7apSG zq}X+siwv7LgSl-JH;2%vsWnk1`>fJQBRN&rcT<`=AC&?J>5@;=TQ%f1emEA+as)v5 zj1)|!zl%nm+Kca{3Voeb0P4)<$b_8>D%&7>&(nowf%Ox7ZXX8dG|v8{dWx?uWLN!V zR}~X8kMgg7K#hYvkrpWB71h_cm+Ungc%Pzibe{PCvH;eXSmCtSTzmAu3)MjN^SbzB=!9|xROK;7 zP0g?&TSMd%)`<|~v zz6!PCAut&2}J4bZv<87#lMvyQL8OR$pDRKhCT`p6*_Mp1jF`%^)=utTKq7b%S zc<9p4@U-f!Fty`LMWl`$cV0E$ac zA-b3LgpMr`^i38Y``^<3=@!zk`i*}%;zguoYLwex5;3SK!P{t=@FdAiQ;)r6H%I~Y zVLx4@lr53JBEB|W0NkBm4b+dh)znz%PHY{@X?JP+j5%q70>6O-j zRK9pPoj1fF+?YMjWmNh4vhvn%F>~+#6c2=EYLZ5rACS7|AGhNLNfh^-?IZ+$`6srG zQ!Dm{+QRLM|KOKGhJ~&P6Gdi>V~ERiy!$#7Gw!gXl^9o|RkQz3a!X6xWwA|>32y$z zCu%e9JQ~+?r~M_|FD;4TLd!yJ-f^xW`}|}gbvc?M6?eO^biJUMJ&;SABys5Rs<6s!4Z0ZLMliv*-AP(Ku zE$SJs1b-HCb{V)zk+ThOAb|lxK{;zCs|@eF-x~Qn-_=o zaoCPFoj}zq>j_rb17nro8=$TmJIFo^{iA%$FMwH zc0Sw9lwXGYK(uqxr-)VkDCfT24^j3rR+$UCXMoVSaGhDU@Uy6NUbfLqn*GEb-VU~~ z*8Tf{*mbY4s>g9YOd}&+A0p4Z z)`ed71T54$^`>Uu}tA*Q%3mRaF8PH@8_&Cm8$9`XpmY@yrlr6eL|k-Nyy{Wp}h zMfccbZXJ7jU+6S5rNm{oj0n?~WA|V6m0hx9*B>jQUT(}dFOc=T*ymOAGwk#d?8->U zcV6}rSiWvfgiq;P+o2WlSrVYjHU`~={Z24u>-}XvyQKLkMzoaqbHs?{_?S<$_$(&O~r0i0aqFo7_#mv`Jym~Bpv^U#L$>Cf* zXosH^%~Qf*L1P?fNsGPJLd++kdTS>YU7nFl#YEt1}fVr-xd=ZMI&? z!1UEqiUzwX(ILbWE6=Yos{t4=#a;0CWv0hAWQ$sEB1hy2)nl%=r>>g|layZZPi_1= z&QJak=sn;317ED$7u5KuA*!K)AI3Dq)`b{XbqFQ~5h`@N;Eme}i|Yx#q|LNoEcHpT4ApED`I(G3ZEIiu97Ha{HDB;?7w z_2A>-&OZ(6Nb~sL^!l(#eUZt4!8T-*Ityc@ch{#`jQRcQ0vdHak1A-py=p_DGMWj| z#v!YC1jjQn^2uhx+=1?<4PSCTuVGXS{KwM7_v(z z;G~4b-mKCq9+Dr&`1CaiNjt=M*xSt69);-D$?F#)-X+gr@4OL{m8xVpc{94a0e@WQ zKaJkP_zQ0Rb4FFF8YTc!20#aE|I5H)K$=W373Jl?1yz3_`ZB5YGB0U=%qZq2MakPh zZ5gG50u@;Op!350|yG^4CXFvEU=N(9x%t8hMYwMqz+!D zoi%C{n&k|xnvMCi9%Ztc{1--4HB7dW09q7Kz8Ph~4wX;JSGX-_f&)pukrik~%RH2Y zYW?}hdI?D(VS|L-A*61$)E4Ogl|#to8zQTSu^?*Ev<71l&?y_v ze)N%~4(s2y!ZcfU*2Y2$=P^O#E9{AHD528WF6tJ?b)Qj-ezXs64Xgr=$eyr$@N;77 zE4Fk}`aE1Uj=0U@dfV_wai7-QmsN|1H+ri>n!1pJs-~3pu8ATHQdDBAm6e7R@I}vCeu7|pVFmOw`6)AUgWFC_+LFhP@ItPv)_c2}Cyvq0 z<)`<6?$e&pA2CW6bRhrX`WGu~5ekE|9?; zbAHvs9=|3Ut)y-(|5j)be%P3z7U%5j3>6~SCS^NaHfqjBU6=DV#C|xGDBFF5GY9}> zL6mLLF9I~`#PacSuuIWg#WJmR1b#(0=Q@|k>JGzYkG1rs`7EP1nPOF}(PLH>oo^O= zt`qL-ACs=M0=9LHxn9!4@QZ04vWhq-W5E?j#^dl%*)@)i4U3Cpi{6;gD)^lMYDrst zhMQ4Ld&uzu>}pRUz^&YHBL=$+R;e}E6L2qToh-BHz6#OLbLw8=-bqTsFMRRF>}+KV zDXQKc3fz9aPg5s%5G5iEvdk5Xd4l_^BHOn|>(4DVq5NyPUp%;#D2FWZ8|B;?$KbJ9 z9pTyHM_0_ymvcE;`D|5bCZ15Id}+Ewandi%5>u@aT9?>{eHvccH%` z_gSB)w^F%iP2$2%jE49WMIf-|*X)dBYosho%WJ+NwJj&S=WX_TANlMqj|GhtJDan< zDTT(f*N~p#Sx|?7{|K*=*xy!I!g1qPqe1*K7g1 za9Dw2l#i(qchl_>fG5Udxjr`)kV-CM-U$0m)wU*Z@%pWXuTrSwA6PQWHX$^+Nw`xB z`09L}q5dFvHu1_r@7I)pH>w~D7=wSU9;z@Y;e29d#kaSfmsGB4Nh{=QnOW0rOuPfI z=mxxLDfK@?6K$HkYXZJH4m^TBx~&zrSkH0D=S{)N&#a!Ap1$Mw_4m&H`j;2Ml-~Sj z$(1d)9gb1k^Q6h$P5O3i+?sW5mG4y@fA+DFJf?Xz`d_K;#E?b6*V*UT+@aBmWs9_g zFa3HCXyK2rA!B~-Z|Ya451CzhO~O9GZ&SDg{`&A!iEXQu3wAhL3>{Y@ntbDoTKv3z z;n#bPLR_17oQ}y8uxchICcw=pDvvQk7L-gz75yAI0w41xo0fg;OWWDRj7&om&@BmP z+2By^N0OM!k|nW(FK=uB$mh+RwtPnZc16$0t^NNTv0>Dq7D)M5gHm9Mb!2aJMN;kr)x5GCOUCG0kDF@TM>S^{$C(>f9R^%)jFwcrq<O{Z@I7Qj6L$f#J*#mL^SM6?1=fS(U#$h(%CiocRrL~mx@F`-_NJZ^P)vM zoWEj>xuF(oHH;j5j{YM=LDHt?YIJT^dTm#oO7eVvI>(*sdSEI!LNjW)Iwkp(=}LrO zqI{GkqvV4%BCo<>s_}UN_=FVO6WwPNBhxVOcauJTtde3fe7kMS@GIr!YId{}TUJW% zv(+COyu3NXKeNiQ+tBDvsgqcL*SF1{c`a+M+DU>yM0y3WaAHo#+xFC_eNU%q)L84Sf44w< zDO4THE)T|P4_A{aCC}JIWFr|1$5HVx|smOR3 zrdHcvMa2hI`kFf3*JX}dlc`7~tg=P(N`4n?{|ttzH$X0*fpIq0-0OE_qexaBj0uam zKN}6bq9_1U#t=gW8vudZnOH&t2pWX9i+1N5fjY z7;xA;afkw3V?q`t4cSg30Pq7#srD}G!!Y3~TK3ywm2Od@z}#4Vb4*Oz;QT9S-uy^mXSlES z>Aw+@B&D<1I=zA5lfC&ElUa*%Vb=8XLzCKwkK1HhowDRIiLME!cGugOfUsWikQzm% zD3RAb^hd9=8wlB*lj23IqufPo+TL7*Hnsi;Z?M``#M@bAl~TLdLCcPgN(dY#Kl9cyJJy)2*rk`PvYA? zXj2gaz1?>bT38E@W6Jlf%xV-H$2lc-0$7F-F6+gkM;6`@D!AC+Oz!p34sil(dBxFF zdIhofNht2I;*>IChD!$;;-(+5o=^%Y4-B5Y$^D+o(h$ztM(2Bu2Yr)?=FL=5xw|8P%2g zd!=6#?R&BN$}7LK!~fgh&9dLop}}IhU-9_&P6_8VS0#FP*?d9&S1N2ZPMTa;fR2Yh zb_ZUN7b+`LvibLEgn`XgG*bd6Y`^khKD$*I(Qd#QpnqKFo@W&Dv5yw=uL#_|=K46V zK(F#Uo+U{Ln7+JRd&Ban`uslBr~1$xFFV8^zHM&B==%Tij4*7DWbq1P8WGT*$twCt zajo<7^I_EalmGJH14J~}+V8HPSY3S7-VJd!mgjD(%7^XgWY88PbcafJpbdk#Bp~qS z$wDc|@A(`NUE1Qp1T7*#%1~Xc;=H8wnCGUP<|N7c%E~j}b~~caU1z!5)|Xs_WY{X! zoHp{E!oW&rS>>WmY1_lL4+&X8*iuonmP8Jz(u|D`U|;3^3__vQquISixPEWNzv*0?pI`s+kalK){{)y$+al@@2T!Pp54Th}JI0gc z^Bg2#L#A&=FmD#rz`aNPI?Rr-YHz z2x;FhaCZ_L>MY$$Vdb**!15jJ`#-)>;%=XibSVd&_;QnP!LD~s@5 ztmHBsDiSf}d$WTW|N;RXp`~KW*;x+ zYln4TnGUUqxm!2W?)L_!hPOw4q>uk|q$jni7YQDg`XlZ5RK_2~zoz3Q-t}x$v$>aL zKc-qhs>gna&i2zs>oR&MggKn@!5PgMbKA)}L}CS+jti%bNpFumyW8#0#@NS%!X{~D z<@}#-Eu%Lz@S_!@MZ>kPv9D?nKDE29GlLg#E8HRAEzK8*_l&3DhMaWvHf%K7 z3BdFnWTjl`7499#pxE~LJZ[o4s0w1V~8k6Djd846TAg%N&vG;vwVUBfqKUPbE} zvk2_!mU*{zwG?l>xmb31sUgZ_SX-I%{IQLjPqS8TAV(s(j~lJSJY&c4+P_K&ZwGli zuVJB@Un>_iPx~AkV62JOu5evE^13V-I$mVYrQ+R0N^h7m+12Vz!ku`kNlVe;wBbXj zGqwNOO)OH}H34rgx>JDvlrioSE|^lfHner_1KNXU_>FOGDc&*mQ+!>;U69v=h&Z#}d3nHzaM*Ry8pxUv zO!-{mx}LbUsl~hF&s}s~v){o7O(INF^Lyu5F%f3<+)6$7ag+~mnAv(n*`IOFZ9?mP zTz1*o?Uj=T^;I^RWF%R$S~QLSH;1NETyP!ud^`sz^xB(~NuECck=A4MUsWdBoMY)? zX^M)9X8!34K%mljyPH=tC6p-cOvFSU+js$nqxa0ffFd71KF8@MI}GAaF<}d(NOgaB z_h4v;9QT;Kjq;TTGQ^I?N29qy^xkD)T4no=cZZWK>@Vef2d|wZ}&2)&vp@Q9Twh2cpw_NX5pnaXUQ6aL?c&k66ZG-7m;*gpJ>m`(K$*5eimGR=niHQW zN2=1~6(T5*$I;gzz`gsolpSAdi1~wZxb^A!>L74kek^wFGZ$XgUE2ag*uzGFmMahY z#$U~8u!CYtmD|5EWl-#iNiC{UuUmk(=M^Qd4Ta2ua%~aYt#G@&HS-k$-znd@|H&;n zU*v(!ZCeF2l>|W!KJT-#RE2gH2z%VgJczUXu_2`WiDj63YWqFyyIO$^04y)6_gZ6- zXBacf|NRD=d2eZQQ~<6cJYUg$B@IN}!{+-U6F|sqh#Cs*+~SU~TZMSv0>ep{zjNo% zk!#md#(O3MBiD7NZ$7=wi&*Z(2%5lGE6iLwa79-bJLwPZhLApTPrhsy zN`swb22AtbIA+^YToP0MK^YGasyN%2o%~xxn)1dz;>|@2Ch|P0*1<5dhLqsVD3=Te zi}+5wS3KZC8gxt(N*_OtGcw+X@ix3UF=|&G8m$0d?*M@di3L~pfvBwzo1|OvpdR$< z+$(4ig^QucZ3zxYmz*T-o#<_e8Ik@rCZdRkp5UEnfhLx7H;0@}6bwz{CiPG22XD_d zIENB!yfYFS`aMaQpidDVUF>IsBASflF?+HVG9Z<9%^^N7L5G`Cw!F)cxyO0b8}!~m zL;xHg4hq@oG=os+DZdczPfHvHvdDO20A7w$Ik_KU(FUoloP%4FT%sBBa%%COp{*Z} z;dOTRX8K|A0n%G_C1sP+-BPXJM=|x9vpe!-=bAVOQpkvW&ZfUndLwN<)_jgqD3<(U zUlU(Ag%%(u-w;n=i5wonEV7KDXlGS$WK{nPcbxL=;<+2>7o#{j_@+b?tmqbkIPYm zL_A*FM_XwgaobM=kI?la|3Wd}4xt@i{h4A9ap`qO-xRz}zyF%)YtEF8hx_%Lfu_Xj zsiww+ECBzm#|8bF-DV^i{iZAEkkOyoic$64{c4`=A-sz4=KAA=t?Vi$38G$fq?tUm z?IuUS4TeX*i%z#^IJ2z^Lze3kb=FD8^V4OIU1BMzm!a+?Cb&K*Zol1UUgC|gHQz;_=TFLz40T8!T| zT!edz1oCE479hAL&(i<1*WV$SiK>5$3+~bOdz|sZxF*e*whSeTdsngcb01!yf0Y*F zFETaV;y=&+pAlWfnnC^zpc%$TwM&}D{AWXtS16lZ@_`@xN?eUR9@kDJL3LxFJu7nU z2*WrYR^4k)$J67jcsdGz0Mbu;wZgS}@$LrxacA10Hpp2{rOlqD zJEB*P2b^B9^)94blO0Kl!I+jPXM6LNdf#PUTOxVB@sy@TlIZAsBzhRf4{LY%1lckf z*zoB}XpgtQq`M0)@fJflHoTO7km9vr0jfYB!#8FOz|q6?-(=gwv83PL>EK{IuPQ4mvr;2mohN>tR7AIuquoE7mfRkY&0I8nTa;%zI{+Qq zpvgd@$+uXubLg?>{O5?XV``?CXE}+ll&c!rT>p2oEuHJwx;aSDlsDo?vQKwc9tBkf z<50j59Z^7^P+;<{qV-Ryw%c`TL=kp!x2Vdy$Tbi2twkGr)9_GMDHnrH%%5UZ)4h30 zc%8XwTiO7BZ@eccG0T@G8JE1OyF~0T3{gdK?sN-_#entY$Ct}rqZK|=pY{5R( zn-9tS$@}A5GMpGb)r2nk%_o|TZ^H^6CnFr)J*XS&-ckj@uG7-s!zfIZNOi|R77;b{ z=Uf?4;>bf!4)nZm+#Ygpt(s~r>1BizS`e3QS$S4tD9gJ?vrBwu`2xz5p=YFq)c3A{ zwQ8a}{5wH{!NX*sVMl<^v-~wd9~7~&PPdV54a)J_U=Z~_&;L^vT06_x6XnlMDRs_t z+s(XK>pQJA3?B!a`=b`8?FPzU=KT@0K7nR%)IFbdIV+*CaOGx!l;+QZ#c&{H8-wg( z!!!Id<@u^SW*6EsPg$5|C#iaLEz*4E+!)asBzh@Zi%m=Q-7Bttf9XDUb&&4?9ENFh zIzW7u(`tjk>(N+fqIqb&(!+q(@8ntcQ)`2H2Tpkkd{tN;txdZKZtpj(JelY=An|n| zg9w}s(NAo{-8gB zFKJuQk-CCgw3y8<@ZymT?ezP8A|4>id%@wSZIQIMiCyH*~%0)uzaIRZPjvw z<1;PAGMkH2+@@6N2aHIf+S{i#6F=VsVEgSDJ&f)M#RyBS4i4t3=bVUG*>hM?Se?3A zC`pvoiwUVrZEm-^WPN}+A`6r2ka~+?9x%D45d$bCq=DtW#aMF+ZNu=2sqi=K^`%V4 z;5AIT)em{JTi{VgZxSIUeUq!*OW!?qyC%iMa1qQY;I`0}=^)Y~xR`74LpH4}*HCZU zE{F6}(rM302m{EV3mL4}h2m*BoWmP`?6ww;ICE8x&xT2LLoxlqTb2E_Ri1z2y0y1j z%(bqUke58p87cY4C;Mo=rn1?T`{0rN8~yZ=`C!`t{x$MV9MJ zS50xeJVPk^jhf3C+D%=*Rim)b9hA}Dn4DD~577D8XuQ!UGCRutsXsa5q2!9o_Ddwn zohA|PIhQC;530!1X-XBF7o%4=<#Jp>BU||lCpMV>oakm|V$)EMJaM~e!M9@>(EErBW%HQN;eo%6KF93QNttS|krLW_X3NMS z7U9+s%ahWOzkTeOS`|)X$0P5r@p^bPWrPwN5;L&BUqV^rUBrVhxd0-u&;cs7T~fwV zYX=jLo(v)$xt4#fYf?^ZOm`nY-pF64HYM4lfs#@~vrd>^VHaWG`IXO^{C)01DP0rf zUZM0SBnt>uO|lOM7WJREeFmkvJ-t+D0ix8Us1E0f-i`1#PcpY=?~JC?ptz=p)#gpe zlH6Pql67sS-iQ@1bsE#F=+`lOHh9=y_3ifM0@$LPzrH&Im1ao|6P4Ss$9u{y<gjsZUgii2cIT^HA|0rzacuy2Y_LCkC!9L^aIz7;Dp!B#pAxz64{4F>)a^Gc zdJrU<4(D&~*r2QyU|Pjxa`EmV2;owCKlA=Lp8hw;gcVK_Da=@Lc8{RiAVBq3hLkLe zyOFentYcoS*8N%47M%ztuTJW0AJ!7(_OKzmZ*uc1H`v}gjXL0AgN}^pip(*L`!q3Z zJM(SFqTW-4s>zX|G8=hAP?&ENU%B$m4xY zbf=tM#9qr3gx8;G2TDW$Jl`2{cNWUNEpa~rkdMw`Zn)LmaBkg{SkzJ6%I^j zZjto*gulv0Rxgs;m|FYq4r z>N$TEUC2Uv?MC05C*_&mkrvq-+Wn7*3P(FhirTczp8EH#`aj;;iA3!KLuxyeNT&fv zWi_wn--gcJ7=-l{ItUTRNb=aGBpu=!!W9;x2UoSpSla_)jsNn#0x#9VR)Ld&C(xJkn~5ktE5xuJs&l0*1UKtEL1*t=LKn2 z!<&{)V#bAz{fRFWbCC0-j&vwDY?Z^)-QJ!S0MkxC7>!thn3x!}lcX~~0J%D>A;gIn zO!mHBFy6aATl)4DX*89UX62>r?dkqx0wvwi$!XWPn8*D(4?1y!i=lv@mvT|`ovb!^ zt%Hxxo(Hm@YuXcpdbbYkU7-bQwYu19dnCXUTTt12#omwkk_8{X8c*guuo|xndH^60 zA1W;7S82@C8Rt3p;^?Io6jaTajdcFoCnWQ~h6R5mfH|M|n~k9V=WSQWWLN@>wVwCa zm!r%R2EIsHn26-+qUn65fV^ICJ~V}hj5!=?aAYCjhRJ_CUqxA_T1A0!rRO)6$-`Bc zModc=#2I6^Y6{h0?DEK!Eyom&O83pRX=cIgV#{^+x)K>!F2tPa0Ey$qUu52;0opYm z21T>iir3bbV*yUAkIT4R+w?JfVMYZG2jTGrk>^_TveOSv%~HB~Sh@q7s{0_QS&}VP zE|Umpzy#H3aO&HD^}>ge(@sKa7vvwy8dit(72xh|WuXaM&J!pl7kIBPV_wt@BAe(! zUXsP>Xr^9oq2`sS`wHP46_a-Ycbmg?P|$>1C4e7Fz;ZBCdSQ=rM>3&-bg35pJHIcs zDlY#mM@Aj8gZXlQ^089r`P_*F==hkR!jz~%&sk!Hpd*4X4e&uJ;iLTzbxyW?9MpBZ zo`rv>o6W|DC9!1vK6LYUo#B5Jo4>B7KTHCFamwYIDVgrzrWc;^YvLPnP63;4naDXE zZ%=5Flb9`H6Xm7U$9_=@NF+OZ%p9BcFP!?j1%mAtqFhz z3UUk#IL;=QFBa4nI0WG+G+&1gyOi}s9nOS2to-#E*=Vm&E)P37FuhV)Oa)WFy4tC; zcxw|(9HGURh##33mpmPypFWxBFRsD)t9K;du<@*5r|ZwKQl%8n(h72waH&At0ze5m z91`%djZ1DQf9b*CpP|nyPI?l1$6}_}m+_n*M%Qv3RqM^EXX%lzT52!8h%^LUd(D2B zVQosIbY{M~gGIhzP>%)Vq(B~fk0D=QKkLI%F*?8*jin}xb6<=)Kqqz-I3CXCL+7PY zpfuhbEyOvUtY)av(u8NsQp=<#7f7YV;s*buzQSiVGSGX1j`@fi$Ys(-W#f%{3%mV3 z2l7&1^x^`7pj_)m?+@Z8=3^*D&r^gu2KQ2!jSGeVZ#Qsk`CuPSfd%>wBlOt_Cof{eWaNdD07c_7riNP`zf z5|io8AQH#!#)G>HIo0d>2}djC6MYcQJT4Z7Bc5-{?7PJevvF#0{FdYU&kgvJOvDx% z*vHR{itl6Ep>mR)4g>2Md6SU^n3V|yD+MQZqyU04K9|i-EhGTEW(q%)eNd>?_;_g+ z*J$3~8!y8pEXWYrZp9_Lw~zq;b@=<4(o6Zhi4=@4@0Lk_;!=aP?8+j)?bX4I=_BMy zEo5b8CIOAK+=KXk^%+R%}sQ*vY9x)0o{iy5c-Pr)CY!uJ6s(PK7 z5_Ghuu~$3Unp!wHjv!@L61`UHC(`YUmqu=3$N)1c+7g@y!K+zO!DzmezTwM=%hN0z?)?>LOfWtU5QT+=r@Jvx!t^KFHWcv`)MG$EU{B_QAWA322Br;t4$9gpge>63>=-hLuNy~Y~XO=0bg4^G=;|IC(Bl96l~(%As$!exeL zJfzFyDTU>)5A^lL;!hvzN>00(Btk?dkwVOy;cuLXJP7B)_otlR)1@89OYh6G$n}SD zCAuRBV>tDk$mF?8@%J$DWrTxlGfm)c+Y{wdCPd~VzeV@$At*eaVV+zhR#z3@V(+)0 zRs06sSQZie(Qnej5>Ycj)Onuiz$Ub zYgLq}OG#`4j#ctGv-=p(Oc%YwdbOA@GfV-aiw!SmQ>PpTe|n!UBUkttHKM+}&{DYY zodsbV+~AgY9Mulx4*`-Iy!ofcdwbrCKTM7#%0X2x`~1+Q2zaE8Cuv7U-tQ_GXv%@eVKY9XSbJ#FPq|8@YL`{Y<#!GVSaxbFt9u_;j%@J z9$+>a9UKTvlPDa8L&$d&O}$}nM^NcJ@mqjC=Af68M2FArgCeTn6?SJ5ovG4S}xKh{NBOJl1K zNM`fZPgGgqv(ZaiSW0hcr~_6#?}4k2_rT#9bKpVUp@NEYgR{X2^VDx=8)bKmR33LD z^+a4lyfid(robc}Z)VG-cIL9BN~Wq)zkhQy|K7ZXzbhx}+f>lC9?E#eijI=q8bDWO zVvlWZK{IbS%bfOv1;6uFg|&22V!$>t@3~?zqJ1u4u{vs;{-Wn~SbJu=SX*4I;r9@V zO}%@#RDV2Kew6Xk;ltXYw+Naq^HNeiFp*9MSI5Tcr*GhQEv?~`%v!Un=2|b{F2IA7 zqsm$8@4n=J=aYl{J9R(T1XGry=_4U6d#ogYBGby_8a*@#6sD4HxZXKIVJJk|!Ui@A z3E8&OA03bQp=b-zo;wG1rhDZprqEX&Ksp*gTApXx0*pdM!~pp$iC!bVKqfVwN+vlv z4nR@$6dPDrkk$*iyv_$nK0npfx;yWQN$rXgQxEgGsHl|L{BPa7 zzWw24yHZZtiZi)gf21-SD-#qF_aK^SE!q-2L-i(ckqYHF57+9+d>xJDYBgP%tNRvH zOK~npB)h}@AfCl^Gr*y;g=Q>`nL2}_T%k}(T>s;_NFJZ(!8D6EIGyEp9czR+eiE89 zDTyt}A>ePl)PMgg&9E!^JH8P<|AcLWL%Si8u`X9nQ!ZDJ)7F`ZaYMVgd~zB^4877& z?=Kvo=VsHgJ%b0?5m)JUu^``Sd>GB*&{yYl*q2+ZYq`KHeERu+V>162;r%b|D`PdX zYBpc>h4G;N%|3djOhtRu*9bkr+gFR2PAO|uG{o#KCO*6oKlem`a4xT8D7W4vsvb#& z;bf#5jU{ImNTUBon4-O6_Xv5{^-gPw97!`2T7>9rw9r6mPi6=J^^Puc= zzgZ0Z0AKB!&vn&}78Vy%+cX;V6reGN!c&={rX)dye%HgDY2pKgHRJfj?zl7$k0>CM z$6euOqbKDoQme(D8#3raCPk<6qIoVV2nrl&Atg?*KpV-meX8X@Vk9w_Ir^JcVE z(egFlTlJjLzHRwu82I(VIaFE85H-62|(w?p|X?A72+aQZyTWMl&l$>v~UVEZ- z$oj>vQ!IMV<9NPJ>sJA>)GG$9fySTBd8h{-A6e40c+1caR^9sIN>aw><2vnrSOQ6mm06 zOyRaE>QeJDK8wrPNS*N{zLgzD{%~3lM#Jeytj2g$tV{wI5tJdO`33SoTa-o7p{BSF zJ)3UukYHUYk@oLdd{iwdWPGY`_4;c~O%rhtlgs+hcE{4x)OyI~ zd~P68Gq4LxpD&MjxYv!S)c82_FHnBEAxKb(6w*CD9+LLSSYCMbbbOUo+ww?`TvylA z;#4Gh+HUgHI-O5^GGcKwUj+&WChig+S$BXISrlMBooY!7i5HlbZ;0O8-k3PweTVWJ zB6YT3o^DO#p{9K+OwxAeK^ZE2%w+t{8V2UO-ayY2U+f}by|p@iGa+-XbK=IX<*=#- z+C&*o#PGBd?yNXPLOF~HNzYhoX>kW6S}p-n8`$#PNj+3^9#_;fGp$Q5WJl)DK+|{j zz*ZEDp7Z%Q(>@Ji*TTC4GMfPk z_#_<%z2--rIfF3|sFSb^mXzgwY;7c!YFKg5N@daexhtC7rYC;UVXk5fVIXbgK{?fk zUk$~kB8mXY&o(=W+*dm+R(}M=qKpr9IXjce@VOZZtG79My6Ijd>gOn`$?2Iv29F!I zA2b?Ir>Aom2R>&6WJptZ;1K!j>E%0b_0y&7J)-lZa=t%#L_}B3^M0%34FwHidcfvl#B#`!y5caM?Roc-CYpXIG=M7kTMJrgcZ>?@Q{c`SOKbUtpBT5?wkYhY` zE#KvN;^=8IHGUn^nnb5vlmRx*yR+Xb7>c9bSy>6YdCzwvbue_-U@-(6Ix>*wcsN(c z<9<`uHrtL&8;4rhC8M6ee!)a9l}L@AXa{GE#|6=ZCSnYu?>{+ zaxs2LEn6qih>m#j&`HqT{5nVD3EO*f&ip5U)2kJSEjb~PmXnoEjx%)P4?fTxmt()J z;oy4|4kdq)cQc^LelGLUZ6I};vYj?t_a9+_f7X8Cxx%d$YZANKI)n#BcLIb_pcqAc zq3uzk_QGH*ORcfC8>=PMEFLcaQ=B;%+J#`#A09@bD3t_H>j^$T&}Pg!0tKRi)`AJaUvTq^NHIj zD~rQ3748WeFpA#6_XvE3L_tAFe^7M5>5ktylWF(uti!L@TVGr}^qcv1COW`h1O4CnFrC<8HG zTh#HkqTZ~fzBoy#>X%{DhIZ#SJVA6SezA3obZn$(Y(YCgG3w{I01PxDvJ5*U_Gmd& zyyZ@KLPFeVT1jPw(rR_fleT?t@0#Y)!o7+zCzVyLm8z_E>yDGQ6s`^^K(=}h&cI({ z&0IMauQWe7ij_glYv`pv{TL{0x09c?14+`NHza_|vUi)id9}jYURWV}O;VHq&LlCl zGDmM&#x=vZ4Vo$KmN^zCFqt@blkooiIVURE+ib}R)qpf1r~qe0-fQ}o_$>kK!^MRo z?u`PV)c5q>JW4F7-q!Pb9QaKZrK@XGwH@e(nxfKYrRMM4p~RrlFF1piY+5vFX|qF* zQ4gAKZudpYYKEG%Zuu6gmCE$1l`;~)2AmrA0yZ}EINUZ3bma;wJUw3vJmM&;3~vT1 zRTni&{9+yCmGobZIjJYCNR*tdh_PM)k{Xy>p0Jmu3wf*ha66h>m?lv1sB0`4+L(wP zezD_sE~((rrq+1|M;Wxw@-Z-oYCC~G{*DYQp{YHhHDt@-j+6-d%I9!f6doQqTtq@0 zk9wy*4D3UtpW>v~saAdCa0WYEkfGMN-Wiiy{VZ3O&c1+$WArIqCp+vt?OPN^&8D57 zLsRhZ>>YVUVi&w0)9NxsBj?PQST(Mn4&c&#ux(&vI+595QLq0~e=zzZx%fQ2H49G? zeCHRoaK@$O!z-|`fDeB2^kZ7TKfc)Z7ETj)bOOkKzlq_ZrD$U$>L@tx?tahu$LiY@8n zq&)BFRR!kMDeJmK8J5Tw$5j%;&93N{NJI#|xxNm1I6NTCD{E7TG+*a#X3}x4o=8n9 zLqRZ*tV$fpd3~X{%KhlEuqpf_yX*Mks>Vx8OxM80;E&9(PsSn5$Vi^i-B&d^b%OFO zN!aas$bG(m|1xqdpT}k6<>e*3(Kb_w@9{#3Ir*fP&PJu&p+9ZHdqYJwO*S-!Awt;g z;MzY0_4OD;-akhCS31|T5f;N(SnGnE*gdvgRBe1<9%o7uCG|EQsvHq&i463Z0!6g; z*I`~k2r4IxYhQQWBv!|J*3oP8r^#7k?NuT53hWr+*x~|*k(gPJA#i5!j zOA2&7$nknyC?PD?S2fL4U#t9+xAh+mi7&oL=j%&jRsVEr+j;Q^U(qZit^{)_JAi|# zGodx;=q;B&HP2879?JNf&(+8`>-bXol|Nh)DiQE?!S69-Ol@vMhydA_aS_H&V$^t# z*J%}TVY9OVWG*P<)HaXBI#x+pJa^$NhtRTa0x~ZNXEo{~UJd{4tktL1)=fz1&g@}D z%&%YPr)uR0)fH-0nj(%#5Pe5#Loxp@V4*^_{f(FF=0aKZO{X5}PtrGBeM^oL+zsF9 zS8BD(8!vx0frm#N1biM&XG(S?SzX!%mFYFUxN=DUSet*xJ25_-*q89WT5rXy>HK`G zS@Hp&x#onwjHrU|^Uc#`RVB*f;O7YSIbA0ldKbOtuFC9JUEq!zaD!x@Up2-Ae&3+kV?;elGMOK159n7cQtoC*<*VC!2 zkyU?aIfOt4!jU--EBRbi9O@5Exgzfjz&9PbQWbi16teIlDWwF%VNu-C)9rt%i2uV` zcty=fiJTsqo)NRzBnOoC(drXrHQ^2`8&dcH8+Lz>7?PhUM=+~36SWUMfo~qUpPa08 zIFva)`pLV5C9p@6L^qYOY@a9QEI~S>dvexGe+dz72UAVl>@?dyeBp84iTxN`>Wyt9 zdvE|oezjrQZ13SLD|>6P+Df}3z$2T;phb%!A<;h(I8~p~vXf1p-Ff#w?03;C7WTIY*@! z@YEyP4GUj(eEeHxXq;MXZSxp;5n7*M@)P89+Ejm|W=X;kI-8%dp%+RuF*bx+t-v6u ze-|MUbvZoVcAwu~tmbsIfD0i-fg$3XB9o@GbZYM4{AcU(|J>+NMp%+;z8->Yk1*i! zA{EhIERs4kMoQ-~t*5^4{t>rKHZxZu_Oi$6WK3lkH&>^#v*So-XJ^y9n^^6h$SYQw zLA4Tg^JzUR$e*OEH*a2+j9tYnNAEwB%!I!TlC~eZ250lX%75?Y>(D zZpt1UdtmnYGkrDCP|mq(?fL;lZ|{2b6%LDBdzJ9JpkPr}q&5LuUc4B>^5zFApY~z7 za)HZ*g$1{iH@GOAqzpo9mnB3k*Cf$B1p8}~(^!uOe{MYH7G@~fv~H>~LbP+j-bI^S zz#H~8-}2ww-o>|A3<-Xw`%Lm24s+*Jb_4cA?8$*W6^k!&9uRA=SgX=#uH}Zk6kixF zuCCTp=j8mLeuZL* zj#E0{_FRcGvN80}H@p9_Rl4;U?AQX_8XufEjA49TW6N6dtTnZ;{Qyby<%tI+5-Am2 zgK-d6n2zEmVVQJ`H!c0ow=n~TLa$5qOe?)Ayl_{Lc{LePp7fkAKZfB9=N!nZwU`Bh zOTDgT4i$Z~EnsIC1hjiL2Y}Jwa2eev;8JFian{mruAwOSJ$u0v1Y4E(B=OaU)+!$e zP^D^6;CWIP=~kz?(v7>~mJoIh`605v&ky!9Lz0bUCOsDaq7}h|Ejo=a_O^5~ueYUc*4Ioj&&T7u2>~nVb8)9Gdv+ae9uDuZ}mDaQKDVSQAtK z!d+`dhB{3S*qM@d=IIVrGLhg*?LS<#NrMNe?+J9Z^SbWd|4^&qe;t1zXo<*bXa2K%kDO_DlAoE(5-Fj0+U-ly}#+3r+Q@`whRD*BHsxO&mDKNcZGuz~0=SB&Z8 z_+dQT5prr^_~(zG99EA6J3K%?L8W+dM#hNiqG8ld8He_@TC{<}uqi($8mJ(5-N_H%H!hMHhlC}S)6{-dNtmGyt=lOpLqhQU<@Y(-MT-Lv2hy59DT<9wE zxw@@aO~i-n900&-f>cXxH`CM)9w^a#RCzs$onHqb4kZKih<+OaLJbu2#BqH6H5$G& zrcLIjiUkP1W5>zwf&8X?X{c^yt7jMZ^A-LAC9kNG@wzx*WzYMN&e~;aFU5=B=Qd|p z0-u;5#!Bl0xh;VI_P2nkiRo15-F6tvd>vdzLv5X83jMflDF0ocx{R@CgXcTHy|7B`90S9v9`IKO@+@|#`a;>_3dU%pW7o?=+LYm@;VDMdu;_s$>mHM?JpWBejKy) zV{Mtc-sKgwi`~C&xs$8lutZfRRBg2?lYa60A`mB;SDsn7?_5>qHGgS6IXsDrlU}Jd zKY3+pb%?hX$Rq2_Uh#z?E{yF@Ty^Zv6=bi_cR25d3$6~gpTSR6wWgDfI%_Ff^ExG* z(s|3!Kn-eqt&zS~lv*RT!@x?^Z}b_`GuUtKAr z^gC5eB(yGX8={+Kum`caXzQN%i(R|w(H(?dmjE!nHmY|WB z*C^(Hl@t&Nw^@zz{@tL*F{R2O1+K=ovLx`T_QF}WwjPsT7EcXpZLk;uYOEOE^XR`& z=cvEvoZ8I{t`uDJPFvwVShY60rgx^5yv0rV3aP0Y`PU{HEG!L!ot>)dPF`M_;6?4v zC@dzPV*Y=U=>NnH|FZi$*=cZ&2k_Zlz{%z-!8{r(E3KJx z>6*=NCKIq4S8bqROw&DT_wz~-t#oVL?em>GgRwd{Y=D5l+NeOUvpZ$0%bD|aPC)0n z+!<4lsdu6Npl-2goZ|Cr~HQwB^* z6u;{0YwMI~8U_CL+;;Cx;g64Cwr8*x#4REc{2d3*^Munz4C)%wj?`%HnTqkCAaC#O zirebNAY7skXOk3TF`c1Egef7u8IbjtbQeu>C_z)*tnu~r!Y3h#3!KoCFK_NNF9@}# z8Ic%o4uVI7)XEIukPNb%fY>WEb`FS%qDi@LLk!F@ys8jD4CUqV`7=s>GVzJ;hRzKo z^YWk(v_t=;k+Jd6t~9Q=taU|gz4KtXC!*o=1|^U@XAkr*3}nP%jdO&kQ(|;@*^muP zPftBoKrJODf+eM2cBc1>YMmScU>3zppXa_6infJ$m|JTY0OJ`kIcGnx=x6SB zrM@kZ7#+oL=j68cQ2Pqv_VjRfG2rZlerJ{v4_xE3DZqQQkQ*Tm9n2_0!RZW|lftsA zy717})}EwnF=E-~`OrFEE3}q9uBCqCs&>)6iSkBS1R+?_Iw)W4^@X02l01Fja8+w7 zEp05n)+_eI1|P z=>tjXL{iR7@6@F5=|Br!fbkIH=J5UWD(gnrbTs{jmwqh0-lg~>Q^!bS)|Mn)QWBp% za=4`rE5^g0Ttc2P%}}kc{}bTQrN`2h>F(;!gFepUL+1rnq(_8v?Vedp6$yO}6y>t_ z_d(pBh;T};SI0=#sri}mN3HJb5$x&=kaFT=l^UHFVh;jlTloE&kbwA`6oae1R^BHC zWlSujJbLjs+qj4&(w5J1C+>qT1T*Uf4)Ro-e`V2_9!BEkwO7g0FSQETT_Q3&6*B+= zk#F%I7e^Qpj$5t+R;F^VKEjY9NLl5Ec0OWXNkb>16t_%?`mN zNQr-k8+c;pAmA5frVJhBJYcNus7dla7xDiS3G~Gm^nr;kFE1xU9kZ)0&$r=rv0i!jLGJH+RAr*IZEepq zOETvSW8pkj*~EQ-4zBYq0|WV{Ib1E(hM9iE)+QzxyPqt)wug}OD162-gr+gkK_#Jf2>W?6<$H0vG&)zxal@Tw2|tMVcjyIQ)sMYUOrEu z)y89|=wIg!VIh0I>_*7oX^WjJ#`XtiR<=N?7{^)RASXPkGwsN9h&|mCYh5 zPeVZN-N2QdU1J&ZQb4$4% zLU_I8w^73gTaT*8e$?14+!jh@Pd3r-%*;=JnYM1mW+Uhm7KY6=U?YZG-osMuaND^( z&|CRJd7dHnxEow;;x~tB2wa{ehY!5iIUh^gj*U3%`MhwzucX#aR{2YN>m=iE0?IIO z&_a0*4yU7JkNc&y*|pptzl&wAwL2NLdW#e&u(LqU0R@#%kT9a{Z%_5^x^dgd9336W z`Hg2vl&bZ55SlK=xdyzQGvSp|oG|sSpo5AONjy%wbnj0Ki;9bp)0HcY;h=||JlJ{yE%8knAaR$H$>hf04S^n8C?n+guuA)R>-P_xukVR(Qc@)Z z_8D%gg|Xj~cwWkL*lt3b9ly}f#Hq9$C@Bp4xIqb{zn^!$MjtJ)4ZTO`M>-k<%JLCc z-r-@+WQKN#PNFmjm0N|CDnK@TR#@j8vCw;XJFV7!YD^1zx+QBu*%Z_te zcKegR8H2DtNUYsL>-@P3aVt-&?ktE;JD>@GWNp~d@2a=4?){JVHCQ&FZT!G|l_G=58M^mNPngk>}gy_xPUgY#3&zrpV1_|1_;zg}MxqSxwR5!!S8_WPv(KI+dWtI`LXG>etf&1w%7^taPS!hk;(5;(-iUn1FGW zSdClvfrYM+|Mk%bt4ph<|792oN`D97&P~-OTSeufUWl;4(Lp@xAoPpxeq43cx4C8& z6Ov=7qx;EtUvUz%C322P%OX3QOy^LW4uyuMzhkpMTgC7YsL%iUN=-~RlU{@|0a^a@ z09I2^t=wU$l2~$eZH6kI9%%ER@&IeDCIrUOdL|UD`YUpHfwoq*t`L5mv%|rc{ozls z)hz34q~oGKw;F#_ecQsak8jkrLfa5374!uJpmETOV{^7cIpThl!a19at`Robr-uA| zVXv!F9dS=j&s(09j=M7a0aXtK`rh?)m(nhOtv2bDF}?5fnUX3GKM zfIv#xRNqxilTh9sSc-Y2TSn3xYuDyVBwbNw@G^dXad&sO&GXlci;xulxq;o3$v5== z*o}-xHl#gmFaoX1%ytvKkBetp13fjY?g&GEzVlSFGP(uWmF`S9tU^()B*Qt_`t%zbPn(qTl(A_M!j46i+7E6`Sj?=fshxQWakjYk)NNyq z*_U@wGT#3l$eay6R;&Ku95pdaa8FJq>#Vj`X_Sx-=zM57aTjY2b{{Ai7vlGCbOx_7 zq|vL>^p%En@4*GF*=^1I$O)s|-Z2`f&v5@eH6h%5Sgx%r;J2l0-e8*!;WZ)Ke&QBDnP4O!wiD?>_KJ4#0+^Iw7o%76zl)WSHB! z*<6}eQmttx%g0Tkv~bsTD)haEjU-zzMI7s+n?mv;ZBKEU{nm_O>b6eZ`7f z4NDQ)%GC;~n1*}st;dC*X0_gt2d`1oDs}zy^&Vpm8aZ_x_F)k+|854AKOLq;d($Ogi}RHnoOh+h zCmFGZRX6hohvy|^c4#im$4iotz6%kKJbCMIqbK;g99q}sBL@XVmR&Z+o?gC+&2>3s z>ST<(iIdY?>dLK8zS3~UR?Ce{w-o6rT}CE)r(H~Ooth|S6pYaw8@r~vm}DV$U5KP_ zTjul#*$D^O}klYkhRB(6e>ywe~ zH7wX}Ug4_etgfuAbUCGs8OemLq=uqoYMLC|w;zO|&Et)?q1?DRRd}=;u&?dh&U>_n zy1UA(cYo|uy-%p{_{c5m4xMVzQ-f%M;WXQ?;ZD`H26g|XsC93C!WA$FL&vO6%z}Ep zd2ezcP56cnNLhbRnm`^^ddXs_XgHPp560dytjYI}1C<lJACd>@hA~;Z`5G-dZJRs5L?#d&ccd)`VI~hSm>{~m&J)r!jP>tsMmsbW#gHp}?ZU*mkrksKok6R@kMjC!XO8Eq_acnx84x_MaRZ!PHsU;5oT3jS}2(T14=b_^o(5Vx`uH=2uNNkBz zQB*2e*{s@0eS++Qh6KRRej?|W&QU=)9Z!Pe$BAK^rwb~hG#PNl#EM^7`i5@$D=q#_5@}#Yfr?|kl%c7XbsmLyC&D= zj>C{uW;1F=*VoiqRtvVPPbPqwrq8}7RSZ5%X?sel>vkJis+w0nEzRG#g>t}_??W#> z_0|3MkC>kL#b(dQ5hzn;CE;n`Dpwd8PpMOY=#j4PXqR%P_9&kGrD>wkTrVOIPC zWMiHd{#f4(l5P8zrrx+JMv>Ehc*SsgvJ5ng%q%u}AEVYywG>G7R7aZI%PcgjyIA1U)1EWCr2;@939F(-!_)HU#|<49ftSohej>h0Mq14^%@|Hys0N66Uad z8f?C*+FKjFgMd2dQjpl6eVS4A%6jrL@V_P0$NnD*sW}kboq-bCBu_g2R5(m`EMXVm zY4u9F(eIH+y#@rB*4yp%UFEj>nbJ##iMcT$9hZ4F(s-vHH`2!XbaXOTvaGFa2=&e0 z4zhVXmtylCUvT+pCS|t6^Txe4ls=Zc7`=|}=cJus`(y4%GlGteF=<#0sHdD0{$ujz zAFSRv`@`1|k5e|R{3^Y}w^%4MJ86GI(h}Ldc_E)sf~$#ss%)HOeEb#5Q(_dOZ$9ZeEtI zYoNgJ93`>(G+<5M{IUaI`r;k^HRGt7n zP^^F95J9T33FN;MY-l*5HaRfw$tBZksH{k{C~NMoZ8QpQlj=(RBcLEEED#VfSk}01 z^G|7nFXEkU@kl(frzOExdwDz8JbLKyYJGT^X7Z5zq;iPGI_t>st#eu-Q8r3EEJwDYJd7YB{sUxu0RVIq0LhR2|7QxojdUPgkcQ@|%Y1_beE;@HquK4;GxLN+hidOozI7+n@2MKJaH^WSRga*x^)&H|x8-Ny6vyAER*8ut#dFJPCm zlvAJj71DUJKs>>4yrQSfhBBkF{p{~CS;Vah?BmZi}4n+?~gQK#7kSk zN$@)jTFR5tUelK$Lb80O#I15#dcPC3Dw)Qom{k$l>HVZ=VagL&`YZ#E4oD=4Q;O4! zo9yf6IVRJDwgxL)P~UF*EsHYs9R^39Qy<@DU?Sod1?1&Mv5dk%={K;53tz{ZHC>GJ zv16YaaC6ZImuo!=S8jDKT(+bzhqrH)kwaF4SJ&lDn!*&%Eb6C*@g#LO&( zf;o6$WsVLGDa53K2wRYd`Bi&IMuu6CFB82lW&35?MQuG(-Y};ec#y*Jo!iE)Y=+fd zQ2ti8;~vNx)Xg7*zKOvSe<{>H4Y4$!%yG6xP(ZuUs*ldF$|n9ZKF|VIn=`OSz9CHn zoRQmtvVC}3yF4$Gz;MU0`Ih73SnKnTYVMUKhT&z~>n+ic42kdQ+qSVP>>f3g@r&0Z zmhL;M&5ySCR><9q_{Lc~>(ifTQ9YWJ?ei}!Qfcs)ZJ*6>d=1&sa&5R0%L~Q%x(~!p z_UCi;teqvYfxov*~Ieu9t6H({{CHNtyvM8O%X{UW=1xa?|Zs%%B-_|6+Y0}J7MiE z!xN>Ur_GK(z@A+ARq7O;us^}Xz25!IZhmU-^iIx)49V$M9IHIv?(143mj>-u&pUYM zdQ;7k$`YQ%5@%9bfmgadKNL-;-ih3uCW5e_s~tx7p?gMa-vk)}QO2Dof9}y#3u;>J zZrxjs<`G)jh}_@RV4evYz6u{3`&%kqu1Orfd5!M1F8pr{jyaIdXUM^ni6*vF z#s(zOf^YlW=mk4EmW{U_G9o*jA$7e_fN<5q-8tbn-gi znq0lbLKu?$PrhnXCiBswM-hsI1DOWttIBYLZ{z?3|Ke#)Z6B@V9J@bmk5>D4`I`)3 z@CP}m&}pr_y1G{j#5DANV)T#juZ9#>=|tA{CoRt<;GlNGS$MHL*dz9m&%qaC&ZHy5n5Iw{$_H+Ipw%Hf8(z) zIjbO6Y3|De^BCKY+kbzi;99Q<9Ujyh?6SjarrmFhcIN62W(q5mFr>I*fi=Z9&TXVd zxi(OeM#hUvw1O}ZYg#^+r4c&Na;lLt>X9GS*~L+;4EFc;k6pEh$QYr%c$0b{{{hMb zSnf;OXs=@2DQZtd)H37vA0hUqkBJ}Py&3W4*H4v%$v*=HZ%uNHTcPIJteqO_+5q(M zcv?DkZftDDRnS+Yk7Ypo1T>yP7x0m>%HslKXQf=~!hGZW(o@#ApN^7}(o1Yo@F(kT zzZzr&nVOdEUt>?@ zHF+!}k%?4vC*7Ep@$+>56p&2e?7j3nxbh+S_sJZ`q!&ZTuAA`8-kt&7{LXM;2FWFO zk<4(FM_@GN7P3GNdu{h7pTugFUEx!-_o`Pxi5a5+W@{&zOIr8)1SH@oR>@E46|G~O zuXj!90RqW_l`?=Tq%TeV5UUhX^EHeSFll-)QKlGchD5`DM@$>Ur zKS*93D{`7DOd%}ii%Tl$NB!?=Cq&{|PL29If3D><9rhHNV*vOnkse+~em0-6_diG(Kf(!>?osiqSvv)4 zjvsPvINKB{qR&*Q$?sk}#(`}VLZ{*T;zYr zi*g=3*plWPH9kSVB>#J_ey1hg;CML)Pba7Gf9*0p52?5-adE!_f;gbCBdf_Xj5wSj zbw!FC_i}Tuaf4LG^M=V%d40$*na#U_nP#Tp_rCgra(KtU8fUzHgMEW^qfzgdcchF$ zq2jtlj6!5(zBfq;_f?JkFC+G9uRh>d{o#c9 z5s~P4YG4I$WrOQ)zkTFjPJt;?R{qE^yTFIs+D%;vnVeEoYvS<5+&x{ zyS|#;#*WhMo&MY}AnS8or>-%chMNZ=@=1bYPh1kUPrHLYL$8Hs2U{-|04I&gz9$1N zsl>f%;Dfa$3a`ZZTAt+e=Y5guDl=KZ6WXClhsEXbl%7YDckvSIfB#7Kn=GE^J2u$; zG;XkOHYVnt&m>SRlekxd8AvgDS;+Yoy@ah>O747cZ}xD}$cJJHD!VE%dsIPk=9vpFg7O9^E=kPhrDj3Svd| zPnor6Wi4ua45@uH|G{+!LG-OvnTY%UF-LpxlNJwCtwZPjhiLE-uT=tXQONW9~0ZJk$q1%48dVWF0@H)b#UL(aB; zaJLb^!P{_IBFeu+ZgcbBu<}sQjcv_*@`!lqTw96#`?zOiZ-VD-h&W3+ZYyD-N1Mo( z5}fDdnl)>To0Q0QiL<$HsO;H6iiNF5Sc=iCjLLx=+UVN~z?$}D(20}e zB|nFezxsL3ZzB{68vkn0lPt~41#&Q5Ekr|T+K(b5k2{_BrW;rqZ3^0t4QF7*pY_Nl zFTAY3UxkuvPRvgN0MVYhB;IB^^a#j9*O%d4^$CiH^tAC|h~qyc#hE{u6H5k)-$JhhE%@s9hUv!P<2?>lWO!HK;0Pj(pRXt7nM?J~P|I5YrL{|x>iw}rwW*&(4hGhQuKM%c zfTl6*DEn!F)#M`yiA@)EGK*qH(noz6=1dFpOybj4>(!Y3kkoOaR{*izmz`skl!({j zJ(PJx42tS){q;)%{=5ByBCx-tw3H2T5T_T_Bfcz;HWyC+wMWq84OV*0g?MCWcs_gNQ}F3Zp)E6N=e?Rz_%!DTV3Dr!fEiEAui0m{DtjabELUbj z4RgEY{E`unmX;=U*;1VCynB&qUkS?(6fkVe)JlyZs7x;PIyWFJFLz`cuf7ERf{7Y^ zki`hP7g^F8%}~kZ=bW=-gUq@eu)N8Hn7>&^qrbl9zVL3?F7RzbaJ>ek$o;9iH^ha{ z4d_ig<>g5H<$-N_xnD28aJ_QE8NAJ}4?Nju()##EDvR*Bbvzv{o)0?6{w8HCram#S zrS2OC!AfOL?fu3ebLedqTc+4kQd%o0!1PYrJ_~<^sUj3%Kr3ao?rbZuu45%$JjJ=8 z*tFQ6JB=u_9;!TuOu(b&F0SU#@GMbHq+tEsRI6 zz@+?wc=!9Fulo4ozDB$Ct@)usseKV}H%{Y@v%bIwer-O|tki~um3mR}ayCZr;+7Wq zYMGie|92Zh0uNHYHJfY67%CJxd+%%ek59fZL6){)Qr2CLr9DY5-pY)2qUah_OzMP8 zvQv;1O6m!o9;W;~YhtVt^J2N)Y-J+(U|@@6PRzEutWHbfR`aiA)%`yY7@5nJCYX&L z%k^c~vk*Kgael7FxA5{FF8!Z(cjd)$cHbXKXW**I0JofiZVGGmcFv_-X#_rLaKh?E-a-NkcXK!t2XfPLE>i1D6Fpnoe z>9Yh{`MXlVnfmC5}5iRoOIwj1+RL1}&BPN*K(t1w}w>^>$<-`)_@ zR~-ul9&xx)H~HjdjoJ}|tv3IUL%#}7<#nZ|Xsx~oSS^7!)O$NTg8UcS=N@FCTv^vG zQ{YJ%9$DL>waURoT)Mp0EdCd>{RP@!*Zi_%JCFm5jPTXl6D3H&Fu|hB!*~Z`X(7gT zc=?gwwBB}0hDLHGzMkzod$6w*?J*M*U?;hy!*=Nuvp=f2rz@b4ja2mtZ|U=DdLf(; zQ_ZqI0t9#GxUW!4jp~l;^^3Bu$%!RRY9VkOGL;s3_QG2qoJ4Z+7RHm!-!u$ee06%C z5glhEdw-vmee&vua8xculj9!IfR~DO-dT~>_81* z(=IV()wF>bO-!}DGJcDx_Cce^Uje7Lo#(_kCEdl;lN3CJQ{?<|THld+WGTK$jIK9c zrKxk4lEU9sBrD7iuo=+|rhi;6)>sAkA;(J_FL?h|jxdWv9a2_b(Cq#Z$MBUBEo>6d z&185>A}TFpW9!=oS6AnfJ%-`6wFpXu6vps5Ep6IoLn#a(Ho^Wx&q~qbOR7pJZ;k`i z&0!*;Bxa3rF#k?MTqtX6woyk7y-J?XbIV7hC#{xt_x5Nt^z% ztiqH}e_d0)0Lja-|C5v{)KI%EOw*NprB)dc=i1UXO3?%I2#_bHM!5dXZ-8$uO}zm= z59oH$w`?_vr*K&k30q~ETvZLzyEVDw8l9ps(Fgqm^8NBOHS`BBBTAC|xnamH-&MOV zsfkEwL-ux6gubiR@;ecPy+H7*WMQ$T-yaHZwq_qa&6-GFBun8z3dXX1o_Oca_f3P;}K@MbI!6~X4p&B{bZzfdkJFE^gP?ap8kyYX=+bBab=Dbhu<={ zMSZJQIA2<$0a%6GR;o_xL(V!ATdLjH`(2%Qo!;l>FJh1kCD^|F)l7~@h08>ms!To< zBS<}+lmS!prUPr0>1{rT8(vqyRLksTJfmg5ifcSFR4CH!Rh1JgzbR!w#<;ee7O=C_ zXvZnMm3UP!&`Tmd(?NHBOc*WH=+x+?b_kwNv> zdelcj7TSgr(b7g2%$S>CzhG%1sj3lqQ?sZv(6tj&i?Vk zF0kmh`Q*-4_)axr%&D3U4MTi?n*>H)z!9OLv-FI$ge9OavB6^set+K}osmEkUk65Q zyD`NhA!%HAwj6QaA3(Uvch8ZAD4wy-7t$_9Y>)V+7*(TeX{KT+Z{> zMGP3j=58K53fNXib#eck!sE0K^(A%JGuvjleAbcfcDp>OS6ffx>^anQ6B*Za`3w>% z0s9d2*kqFi2JBHQA~-rbdWT#&!m^sic-GX5Vg^sf*ZXi2kylSx3q7d2%dEV^@gsZ2 znuHRT)AkKj4C(pksdwvu?LpQz)vHt|SW3Y1lPsbPEw4}`0Zd(n&@fvD@2##n0nJK9 z8=qbkEe1sGs+fJ1tjWT`gdbaz6`n-0;K}%pl!|>4S!*vJWZ_3zow`x$yUF(9sZ&qF0M8hT}vmJI*?XR+O z0Ww>5H4MHZPMTPQ85XItgb3|1^vC$2BJ@P8U%_g%l(jApF(P-R9{iPmSCe&B+T0zn z?I0G|Rr-0hmML_IHaLp3Iiihdt+{%CYoBcI`Z@@|*25w5%)LzX}s1--erqo2<#;<=5M9 zmSQG6t6P6TDo0u$yKX#&!HO-JuNS%>!e0OhQEn3(w{UyhJi6)Nbu?2zCS=Khu~QIO4$ zPp>$+1On!lrLQ)?_=1z3Gl@~Ztf4Q0yRT;eLQ{ro%KE^mu3fpwLW7>HR zqOt%=j~yxxw*GtqlZOQ@U?yZgi^WYy07E~~zW1yzT2)Reqf#o`TTQ!4b0TBE1mG9` ztnx}cy>spAOTd=aG&rsc`%u0%B1qSu?zx7Qa!*pYJfjPJ=@zt1Pq z0?gG-9(oih6lz2#=Ufp#cQUUpwD#hj3GxGrO~pZ%Ll;_3G=#7qjqE8U$miy>gr-qy zESM0&B2Cg+7xZN;_T{2(!lv~8Pt!rY0_sKz8f-|z$E0{NePd0ChWA<#l8ei)4c(hK z6n@7KZg~DoIGJ^N}A>W5F2H7uB}1KUfVV4t>3-Pj6gv8)}T*kSRi5$)=} zx0PYJ6jV z4}Su7cU5de=lWZrQ91cwgxU}AQLzBR)OC<^zqXaITN!ZfK3!?8Dccwky!!Zfr)v0S zEM36$#Ue=i2Ye!vi;1|Vpd{cw+E%u{m!(U#9LBf%@>mq%mxY7RHKkmaLN3w4SLnL% z0VH7>*+&csUppEQ23>xgCH4liFZrm-mv{K0Q;?Tdt`DB3zr!9AgS3sjcV~DKj~(0-)5P&0N6Q?i<1s(>F&v?6lT%l8qj=H@4nPykSh7}J~9bh$2^K};?_R12lD zwMHyMQi%lMI|?D9?r^yCKM_KT!a4nPldngTl!-ouO$oE_zjzVGHYUWc|AR{Fdhz-q zm|A$TCD4Cl_usQ=r@jjn{$BR0Z1WB(eu71=BL;MSCZwyJ?n2aphOT#l6u{aXuZ|b5 z35zPv*-(y~V+z;D3Il(C8igOTCnRJ0bOKiBm5{ryv4<@edo;TzYbiQWiKDoGua6ex z_v_a$_iF+Ukkdh(+>j3_BfjGG(^(gg_IdiGDzQym77~2v=DU`x5oWsDt7ddx1rGoa zl3Jo2TaRU0>1R^pvz~NJ$6Z}b=;=gOj)2a(2Sj@uw)tDHwp-a|9d=AXZ z&Hf_Y+^Zsh%bu54xYppNKzmz+U+c+F7m6N9nRmqdRnl-vQZak5T}d>UBnDruF5g|d zB*vl(49npVJJVIr0Pj&X#y(hb9e3Yv#`XUraolF#{^(7- z0d)LhnJ8zI5qTMWjSDuDKL`cI1$VPJo*1;^|13R-sp9#uGrvcnV3i;xvUZ40?zd2oo=8$`<45$)rM{d}eIPzS}bq@$BItLJ=VO2nV zWFXnwU==BX3Iv~I?B2(dZzAp`w$ZS;6FEb4mQe zEtrB`84{pOwr>@d6PqK>Rd;Qh=3WM8Yisp@g+^cfB1)If!xhfLML^2$f)2tV(M&I=is``0^;q!@CKIAJ1=YawfX6~&erSmSL0Zu{H3 zOzT4B{i)ul@;8FWhh4Nn9|`I5`W>1PZ^q)%5;a&C5l~c%fvi4E*q&pYBPQcpAglvK z8$W3kZJvSa%O$a*d$dfoyFsXKDo^+*B0@B*B2r2)Fh%O4XyU0PDN)Ys;y0e%kr^Hz z2gQ$RicTgDBx77Qu7eL5gYQg<6sttn?Z45o4oZ3;x|gpa;(O2z=pj?n0@ZbI7)^<8 z&=6%O$b(nuUmY*vE_Q5lebrk|f0ad^(;>yptPlnB80cK0<>WJstar^j*1|M3kEG?Z zaxYgHTa*5!YRB15+%Z{}nPDOP3isD%a)S)ZX+IK95gz3yoDtUt)4Cp;+_yMrs?q`$ z((UI6!|`LSXF@J)_Rh09Q@)ZRM<;)n*B?`^apqT|)|H=vtVRzKbZ^)_b@ zIoVew5=#&)a(XXi$CJyIIKI9 zMfZ*Or!C@zF3)-tfT4<0@<+8zqfQ>)~vHymPZn8xm#ItJZLfo7cU!7#< z-xmf|W_LS@v01NrE&W2~t#hwxYMXa|T)^mK{b}&DgpBP9kC>hNmeSsr`0X-K;0N0q znCF!h3rE9PiL{ohzb*v*2jc&k7L^TV*F&J98x{j2{u_#;cY_ytz?A+Zwf~y4X+0o& zp_@3H#q)%#$1Sy(=08rg^9-IJYLHvMnL_2oL4|>Kj5AN$2d1m6;W3`LNxj6E`Pv1_971VlcHae;wKAfL&bhkO`4;07Q z$dcXx>gO0U6`cf0l%&ykWIuH~xzj1E?!OTrv4)H8xnW# zk0v=fFuGYon)693Osa``ugkP85*D8jJ~xn8+f7kAh#Xm7yl7sevHaC%z6w04KwpV` z_)DE7HHhknloAN!(3?djWT&+^-CQWCYhU{J^tzEly6@KF#m@fa{8urtLoI7IDNk&J z-fO!;9%bi_>fo9{IV)02g?MmmixT9Emb|2lh2@*-p9?3Y?;>jkUP841Db4P}ry9Xn z4U49N%lp5kM{T#gSB$y1uO`Tl%51b}akFsI z5%!peAdMZyvHpB`hlWKt@rSd+ZlqPA|ETmR{ZA2b1nK9Vo+Y|}@*L(DIet@#b6bgt zs9L_)@N^$5qfehHZ1`|bp<_$;_3Izu38i&K^p4)l5ODRM`9FqV5Ue+DcC7tu{;9I% zC3$A))gV^Bp=6rNtKLTW&c$-asA(^HUWOhV#~5BC)z2pgrE-J zGm8Ihlxrt<_3N;RF$jxxyXx3vLEl5Dx$(94eXwfvUGBBmKL__PA~vKLH4G4wb(F=q z7+-|uifq_@SF!eFR$EPkysOZYv12_AirXfRFPmr~v6ADHvrh;Vi%Mb;AW^G_<~*g37m zY{#|GCho2G;-U$^vbak-r|(X?z2X$cK1}Xp8k9mxd*pqGKO5yewDS9nhWp>SMaF{2 zc*vF9(vb@5Hk{s4x!~ERITSme#dC|bXEY5ep-{zOtC;j~E}prs^j<2U-f)k{y)0fY ztD1O^o|WZiD)ljgQc>4wfFNt1@(A%eS@UcEDku z?I2c!_x+5Ph6gQD8jt$I%ok>z_Dilfk4@E`{Co3ET-dD*ico2m5xs z=vh0=FmOlK^cm5syrte!WQ1j5!6ixc4<9M9d44#gDaOB~p`DT#Km6cWO&=K1+07>} zexbDlmbQ$+cP@16ZW|o%D6}L(5hhMeMY~L8C9S`t8i2uczJ-Ya(O1X0r!oDvhZnD+ zBzKY{PdUs=xgh)lsAsshghXjW86CCj!rak@OnF@$etJq(Y?IMDQPV0yfyIsf-3zWygUOV z7#bzQeZW162ysXbKMZ$I0!$}~Cd;YRj_~&v-Rf2{n(OcW^i>w4{LR-4YaEQsys;bZ zWWyFkSa-p4NGD`A=OvCM2o!YK#*sC3r~INOz~<{BfQ7agFbzD<07D}kb_=8ONVNM+ zv=qqX7rR1#%uFJN_;}c+m+nqFY|*oFt@t^3r{LYMe>X)obnuxPq-0l`cOt^vq9^TI z{z5G*Yd-E5JCwS(TOU2mDW9ztt+a?P-*o)|mG7jqsIoK47ItNIV$&g>wWDd{s9fLN zdiF>m#w>f!Ow^D}s%k_qW#uKv&Iq7}JdBH_86V&zax^BAQo*v6B#8;qqe6u^y ziK$iokB_r-cvFmLl&l5IP>RR0!i&9WrIL4Gys$lXNR?aIg01n+U>!q2sTX89kg?cg*@`np* z4+?_+g2Xdn9?J2lG>v`YVKO_9@V^ zDqtO=yrcMGUfghXa%yn`Dc_m-SZX4xl0J=iy3dCmeBKlA6G>+Ok6-fY!@?Nqu!8yY zuK}~h_#bGl%cTo8CfpymQz|E^R+h{$gDU?WWhwqxU{ASR3|Ei&ud*hJ*87Hb(;EeI z#GvyFnB%A%YMJem|2s!LSq=!AI7~Z?g1TWl>`sq;r(*2Fcwp(G5dlk2=f~z1k^twO z;TM3d9%F@R0vS3*!3!FU?caztX0aZu=id8;@xaKq+u*?gJ6nU-YCR(^OziYOmedvA zL&qi7KFE*TT)lMy(ZfYrV>eWqM}-+ezXS>h^OFIqIRevtWp}NOdy%J54i`Ru5PyOl zr-x6w0NnHu|i*?#~YzykHX6-zNPo zOO|l_-Yk2|1!b>xmlC7>$4F(H!I6 z3AAV&cPo^~P~M{Z0w+8Ae5D(he}!OV^{~Z@`&o6fJ)3L-HNV+WgO>Nf)Z1ceVtBDk zMOYfVRIHbX{AU)f0^iSmiF>cEi_MO6k5*!ilZ3y4CPIVa1B=UMz??J1f)G#Az`~X| znyH^JPv=WDPj5o|LwOqR=~Q!|RdvS<}qcQxAv>$%jHkGN=*f>rO(GN2H}jmU^)}b5&;F_&tBs zc96yw1|Np6s``l37pwoNL$;7GkK$NOa*j^+36EhW)vt*WY)YnX<9|Nc<~ugoJu48f zT1%CWmiYK1()=O5sKx6pB<+?EO zTQWXYp9(JBe7f5KZ1B3*2LRu88bJ0-lq`JJb;+vBneCu``MpCD&EL@oOHkv-szN&1 z!UUDk;~hDa^hAocWo-?yEUIc%MlJ7@F03VH;J*h#4`r( zKElR5kRshfpAfk7>GYrX1Yu7(ybpJ9w*z@tBmSEI*agqvt#Z=(RBL|M3Y?qfiP zM`Op}wXh~(%%VS^DJntrZL zNIB(+8)e^-m=s;0j?vh4@M#s2qA>!+?M@eGI)K9f0Qkfz!N%N{m3w9HbJMYMC&jHI z2^EbjVxK?WVR_tW?lIMM0=YhfK-U9uUY0*Hd+y>mjwZrsZu4k5QWxiO6QSwR)F6gm zLlZ;Y4&A!l-JUU5D4&RVTQ|BXG5xGgC~#KbNRb@?OO|D3T>d~0MK3pH^KmeuEBWu9 zypc7RS2QGd(VD22o4KB9M?AVmNNmZrGme=Q%(`l$%T6jGa6_hylAaWuiVNv{Yqf_G z9mD1g8?L&{nGWU0a@I~n4SYb_duHHd^{lP@an@}njW)VQ>o?n(vmE}i$soWft%fDI zT;b|4F?u^ok9&;AGlG>h_$UP#q4?e>ceHi%zqR7)6iM%B-+tuPCejA{-a<_M_yiY2 z-S*+s;;IW+PX3MiX*JF6P*aYSY|Z&=ntYEpf4$26X4Qhbd<<5#H}0-{15 zz{VT&Q=Jk>VwIP&t62bBu0UeR8RDE72i)0;pAV(&>!$LavdX>7%5|2D7rU;z*lX-T zua}&eE5PgC{f-)u%<|Vw;K|NFmeseU`3sfx;i1U!n#HTrT9pG%9L3>{7$4tqRpDt0 zM2J52?7uRRt%mLu3{oG(_=QQ-Xb?X)z7xS$entlqCz$D2?ImkC7kWz^nc^Lr8P`6%7Rz%k6Vx zve0=u{is0ZV`I9LjjK~)2jfk2Hxf-x{(()*)Z8H{l&GFDX<8R_VGfobLierFQ1F~V zQylC-xm^~+^@+XQ`L=_zK1HE(n{<9dhrj7{BBb9q)Ctekxmor{hK{cf;Ibw}b9D+F z%I&K=ixmi)&xIXY&wias&XofOk1>n?a7BpsBU|nCL6mkXOHC3NYpv>us8mWbZv*eB zZC|Ml))$M%T&SYe6|!TF7KTlY!j4Le{NbCK`^&S@4MW~5^%YmqaL*S=Ppb!vb|{~QzA3@&eMA!l&gnZ z17fAcZ6S7X!S$Vc6R`D>BRX-DFXX3Fpl{g04sH*Y{ZX9{lg)2{LtSmS+D1s#2B}4!-Ud7m z`{q{Au5?SoVy*2?Mx_w33GF!>N!SDl;2v1g&9410V%x3evRks{P7Blr6fFgI7F>?# zKF2Kv2UCry>eGR#o_>}mr*RjYTwYRVO`_3&fXAqK+mb=iDx~35-I;bB=gCWNNCjNq zbG7$|-O`gPryEfWOs27wq)R{^gr-T+kGH^umwnz}!r#9DAY77J(V9T-@@R3VXf6iS zH+bVm$sbq5;UY|lUe_B7xYS8ipYS1Ufx4*2)!H&q|`gJVbdJ>Gv| zBiASdrH_zgu873Uk>4?Vb4ckerCj!`n97DzPBho{mu7KxBT z?e<0pSqP7CIg;(Zm9{_1%SQPBBQpraPMgCRYA+>?srICrFJqoLW3+-&g;S8&(eLp6uw$7CJ5^7RY+9z}efkw-o$FA55-2|)><24g zs9_9p%1FC+-$4mG7&gDq_|G{*%h}Rz&=n6|i|3b<`E@*e&0-W8l$)sPKeCtjtrJetMgF2KEFx$G@()IgkXB{=S}!DRI$p%x z?fYsJN*z+fhM}_l-Q%#s(Vn{>xbLqbWs^N>jRlw#4tMr=GO=pj%Nxd3%LHb+F}C!Q z>CMc~uv29(EBw9wy8rT20Z#^7Hy-~-@^p`B?Lv()voQ1%TLmbefibkm0mzsUTMuc_ zG_rhWs1;sg^W#l`qU1T7Z}~We)3W^^vKD=X%8ZNe1m;86LQRxiMs;8s9=OFp_X5VOzbs|)P%6C2~)SjoRho8CvKOY77AwR zw59vPSMTk1WIkpQ*|)ju(Y7462O)^fSsQ~>5>@}9Ihm~k&@zkEtG8;>FDp_oY%r2~ zCgIWlc9;mM=bWpONKy4WB13`gE|=Xdh*&E62Fh8@`hTsWoo68lF9187(jQEr_qiTK z_)~RDZ}f>kMH5BeGwF1m2Co};*S`E?xzOvQ<$F*Y?t9n$1#H*Fg4)vR7S>b6HgA3u#{#y<#Mgy|Fmd;3;+ zv5>vi5mBEJ7e`Zo0??{MemGK9j@P|Rokg@YaiPi*ZAT0i+UTy9_+ihr;cVP_7PZik zBtJBld(MI=JXXPW?SWb@=J%s&HvIcHq-by^)pw+Szv?}v+#$!S2bSMUhj^QRqdRun za2=!=k#MAiMYTSeDwuU?m5T#RnbXw(WUQr8wyq)V87er|caW0hdeRf=l%*mZSh_NwS6&XHuW!}#7ONGQg9##+=Tv?NOU58qzu$7vk*V33CyZcuHpSHNfkZ4Qt=_Tji;Edaya_K(($1O?*a$GvAFzxdg1T^mK&*0;6po_o`ki12ME~Xjzoa;$|)mJ9Jt@0W?3K!%jcAC7misK4i&R&tkxT*lpjl zG^mSKw4sAVwuA)4-9rp`aT`&Qm@L2c1kSdfV8F4wpPH7#s4v3a`BL0dvhkS52BOXhbk`ww~1|=F}$lXUlnKA{# zSQ0EkH2$2-DMUyQx+6^dI%SPEa<7c(0%@BQu3FkiA7NSPyukO-Tj4%?v5Pc1w$;4FT)PqDFfl z+|9`uk0PXi@=a*J{w2So{JkRak~K{%t5`d=l)cW;7lD~9{3kMtm(YUqgY1Xefg4Gx z*`w-kWwo3mcw$X)vz^(Nwe@O*dZ61_cVFCgQcME}nQ!)jt^xM8I-J4C?0rA>MRRci zhSMugVJg9RV=lq@g`}rnK}?Hk@E6eXkADBNWT-Tm%9(}u2$v^$6h=HD520x^roYyO zt0r00podX)le3N|`V9MGGAN##8(_Bo0_@3V=J4{9Bi?I~KM>JET%bV4VmJKVUE2iP z-jKQSd^Y&P#}OG+%m8zX)*)yznX%Gsq{m#Huvt8T^nRLZr-4%2ha<^t@escuerln$ zaBUB^Ne=##&qIPD73xlR7A^E1r#dLjr*@u@LtkZc$^_nN?BSn$vmHm`WM5gnox{_j z@qcjkUQta4P`0-XQIIAeC?x_aARQ(2M5!tzDk?>KKvX)R6M}&BF4Ck#ilEXvp-Kno zASCo2g7lg~LcTcPx)1lxT6bpdLmu*$vex;Zv(G-i-3-%{&SAO^>6d(VZ7WDGFK+2= zkI}=XcVL@upo}=go=>rohBbZJD(=b_1k`(#bjjX591&ddlwau$sa1@4lZO=I^o)OJ zojsaqO-MkjKB`fn$K>l(WUh0SvfG&F9c8yYRe0{QoaY3I^PxVDv2mELi|6q3dDV92 z9KfMikgAJQNK%a0F3oZ>&U_eJK0$ge3o5$>77IRj%Q$rgTeYW=cmzI_e@4yS8cx^n zJzHo)VF9lANM4S0(X=Qk{Z@&@fk?WqZLPt=f`)>bU#Y`!j&ndxSe=IK2o@)Od@d8p z9LAhe3y%d!JN=6EZI5jZ-5#mI0ijGv+P^N=KSFjhV^qTNF8Sh{T;ep-Fd@A{!R5Yi zg8cF=&kyATyp1D5UF;ivIC6GJmbi zu=9-a?4GbPaM+BQYL9sI2zAKV#oi@sBPg|brY4zqp}w!Kk6ULx+tfx~IG(X-fr6Tf zjp)&7$ydSt?H^IJw87tt&OJmCxUFo54a*e!6MxVHKb40B+b`<3w0mY#G4JaVMG|F# z_7^(|55PJ8J@i_KLJGsBiq1dRNU!47y}wEP5b}MX`nc*|>rIUGA$#UmCuuwKQd!8V zgXyC0=5;7*biS+rSL1cB@&r$?wsLEhtfB(_EN$z4wf}NL?;*{SEZlX5=2q2Hros6_ z-BP2T3WEyx;aZBgC+-fb@WZoBZK3;oq+nhgJz0eQ63E8KOl^%F>EPC6JsdIHX6s>||JlOLgT2)b<}cqZ!DYUZ2n zRmX_vL;s)~BbS+{GEQ}kc}=50dLBG7+Fwh0;`DC4QHE?|o%(yuH#}$<2Cc*~eWlbP7qeKVe`j1#6pfRKtSMXbt72bP zb(4)#??!>Xh;*NOT`u~$orwF8)ZTb*Hh=q&X}hpD-G1G$F(<%OdlL7$ibb)U|g+kZ8$SIMm&Y%=pL z9nkcIo$&Inw_W9f#)))`Rgdg=>8xVqXpM=$@U7X4~@!sUC32_aEbJHutGZNz`w>9;gN0@$h z^UJ*YI&G>h2>IL38+rbkX}3bJ$LD~O%RtN<_k{C42}7v~Qu{9Y?#(ep7`4Cc9zE(j z!)P3rDdcr4FSE<4?}i0j8{EPFl;1-wr6>z`wlPPP-Kk%=Z0!wX#9&3YGe+qqK-T3Z zyGNw#1LSx5dMn^Zpql&}wKire;qrjA{u7+onBtDQuvPeMXXqaPV3jiTLQU!ikCj!^ zL+%occxBvrSNK6MU#1qd4*7tquHXUk`tq<;gN2;mrPqJ^*Zv@Vv+OHe?~_j2n(%YV zS$v-K)5;_BTtzXs#Ii1$hFmuLhrL0)=|}Lu(e={rTqJd~b;CpB%9J}C6cJhv(%ci_ zpC|r%QK`XhSs5FExw_xkyhpJ?;P3m8$Nwo7cH7Bz6`v)i`-Q#++to7b&c2UNe?4t8 zcd9PCQ}tPw5whO#>s+fxUZ&5!h2_1oJCSm&wEf<{Mey?zFt|2^3kXIKo8(4v%;}qtEF+lNHuf}D* z)-;wip5NVRA#UdQdUS}He@_aZh0860a+(XP+<;U6(XIUs*SO3;*U{E@baos;Mst*H zudvxk7w%gDup72sm$_MayO^(T&S_4XQqzXucceSs#oOQcWH}(&qj2yPVx!LQ`G!Q@ zoF!I@Yx~F(?y>KX8QB*Byrz>M9i`J{ZbqLm69_z09`4^QE^BFgNlN4rcbO~ZLXY^x zHisJ9k2d8In&)hEtP|qT1hOjMagcU#{TNU!Y&{p@g-G>*4hk3V+)n!WvqY)jB%|4o zsB!pX`|t05;g+E<9$A~u#aAP4Li65svEP?9L?`O%9qPkOzBP<~w?J``uVuSAZ zi_P2vK-TW9WuH^-d=mMwKg85Z^Gzgym-CDu>8p2dBJE@FJ%6ehphEY1>`_0L)NXh) zXz?;cq_f-QnUS^yXYQ!u$~(x3=-<1UMSCpD3iT)M!X!u>&bzoaZGKc>{W3~q`vosV ze!Vv5DI&-pGaP@q9xeC^60>hE1F$#?1{S}?_$ZmNEBfAjk)@>R8QBtj^ab6Rj}xKv zXTWzfEmX#b?g&AOA2R%je(dBPuJ0!*Jr@j~`zUA#{bOUU^O)y&EuuQ>sRsSx z+t{w>gtz<>sEb{PCV{d~7R8lg=AWB#r=><6FgUJn7n&da6l9^;UGY9JWZ0dIEXZn& z3K*I5UU?Yn@)f<=Q!T9n-aH@c{p^gf0U7G=GBUnB-LfiEFf`R|4g+>bw3nF;hkoXBEPAztXB?s6ZV@|I_*=-rWqyczH-ETxp%$Y zjO_=a)4qOVePl@vH9SA$zYU}F+EbEUR9|d2tb`$sYo?vVYJhZ?XW8coSXT2MAOg6S z!aE5_W1a+ndrw0T1-V%!kvZ>c%04d$bbrW%+m%pP3NT+%?{x=AF4{j5?g^MxoMDC7 zoIj}?0yT6z?OXsUBV#VP-AAPhpSH5J2G1*2G{~%smm)kwUz98}E3Z;xx4Rz9i!EtK z#uH@_`FFUzNAJ**NN3Tt!bcIvE*e;ePepPD(TX_=|w$RSBmYA)t0_-w>wq-=+t@%ZKgScrToLV;CHju zz}0N`c&iU?nZOss%H5^NMem{FK2xvf_LG;KS9+w|#?<-uY(>ySn1@lFm*REzgg4ER1{2f-sr@oY^*|^ z{Wo66Q7=U*?q^S!5BW}1Mk4;GR7f;WHeEm=3Br;{-TPj}cixQKAFp(|$#XYvdz6aF z7VZQN%Rug2qfW^+?95cgPbWyZG0!1WRh%~&3? z?3&*U!NvKVb@p!Od4dEbUZ1^c*h2>yQJx?10SbVc5cuZkx+g<>*qN7xW-r~d{ex;< zi_%SXw2y2lcZW`B>y)h=KpVB1XgV2W0`b~ z(aPLlLd4Pe>m%TLYp3x3$tFegg~SPt2p=nlMs&kG)$d|1V)K&2y>nC#VefRs%|=IwbG)l1wKJmc7C@g`i!&DFMW!q?ol_%YgD2|h=%aUi<1{h=lB9+A83CS8fL>? za=-9@f6L5vwo{#fhx75>!Dk$@FBbB4+YLfFB1Gpj7+yFmJT3bcFWd<`a_2Y^LA5`z=RlRSsT*& zb!S^7e2VxbYUkjiAj~E691oo#fl2ghUzh1tPp{VH5dX=yW?ZXp*X|Yd8kT>fS(tje zXE-riVH__-^Pk7RI*n_ZHpb?jsp_0JifrY$qLnqc2o6ba4d=yOZ;kg#h|Y}VW<02Y`6#kIY9|ch*}l!;)XEdOsh^PA_Ed?d zUsfM9&8>|9o)z#t4<@(P+zFwbu}{8-2MP<8s{S&gh>)`wt z{JZqM^{AACEicrY^#st}{5}@%w*d}bF!@FfCFYoRz=(Z)h;s+mA4rH>?BL(|H_s0` zl>I$oO%M5aTvXkdwWL>HTiZ{KIr7Lof59z2TH@|<0+=74N6&Aqsu~|488r8n?zQBl zA|<=&wL`B5&-fQeCpfP}T}>odBK;vlQ#I@DKJ)Ep#!$!2pma5uQWpzB7f4q1sSY_= z_cPP>{?&7v^5B$dD1FVVsVeZYhuYCx4)?)qq)EImimkF4ZXanq@bfxP+kGl=O zpjlrT9IyGRNPfd)GKEe5_sotDk>Gm{FV-T7`5xrd5VOneIl@4;$-{s{d)&Ee!k z`RU;^2Ss3qs@*3ga!L#Q&GEv1wz*JRj%`C88ew$7qL*>y0r2a{%bHgkPd1}fid%^f zHXZ|Wns_S)88H@zA0+E8YPt8mq00E*kKM3*o9hH5?yU-+Z*|@_i76Sk_eAz~U|(!F zVTSJ+jbBh-E1D#J{P$XMLuCaB0!ncr0Ig=A$<)W0zt3zmk|)^RJnW_L*Crlg<5AZu zkHB4Spi)l#1EU}l=lP@6~f6|U@ZlG49Q%7TAM#y!6lcnX! zt$6;uXU))3k@AjMm_IEy-iKl~gZ zENmon02C&p5vucPm0U;x>~dODxqtcB8dZwjK-NqK-{jZLxr>ceQCrt8I;}mN(``oF zdK!I`2XrZaB6do5@yQ(^kA5+r2Tgj&yL^HXH>pOj_O0HF@ONj3ooK|GChoWaRJh-^ ztbpnOq95*E-)m9Fw{FO+H5RN%JMO$Y7>DyatUu5z7u^fk%mSVgf^dNuv4f;+_8O~1 zG2ZBOKwDDSzr&!;fHoG;6z{B=Gs^J6{QD>KgT#{4P2Sn?tQtpuuokHtyRx%qrSt;?|i%D|lN33=#(E(rb3I{R)r# z17JDl4M1VXn@q&k^e$Y;~dLtd+{30#rI^KPIV+WlarpYRd3sM24a z6PftV+I3~p<%W)MrP#JOkOrP29ch~2{O65`7VmxRA+Be;=^Q8;=?pc+-tEG zxYO$-VCWinzdOut|8SJb8hW}Ts`UpZ6?_cl3uNaFRMzTdhs$PCXwN50?m+5Jz_w%- zb%)vvqr_P7H-ANL{g)4{|Lt+M$$plOlOfz8^kq2kg=v}qN0Dg9D?)E}DDMOL~y^FIaP>d&=ijQa569&)ixT5g&QgnkvW>;tb7GFp!B5Gz}4n{9vGv z3y{its#$)WpJO90{CAfL&*QE~<&oChop&RnIpy*nVT{ZfUd5n3T823*tcKBXjChM$ z^4-k~W{>6=7S(v^kc-hPuY~F`csYcBRGt()eD*zsX;7W4q}`n5nFvQ7_<)-yz$4nY35^rJ)*(a-+u1`g^!N5SMP( zW7;&RywjNR#p7edxx*U)(DG$WcTwzwH=8&?vXj_Khh%8kd!Gfpb&*hh4TNFg85RJw zn{u#y5%%NWwj1WffuKv4nO5mJbkay%~ z6Law75%S(m+LToKHax?=+r?mfM0XGLEf&3^uHC6e;>}sMX*DOBpnr8G=yJ3tzSDDo z7OY^EmPNO1CLLiz5o@s z^Of_!9zc-|};-ao{Jxrq9v3~q20(TYZeCjUY^I>Sy3{VVO*H-pnY3%fLd-aI9 zg^(PrE$p~&qUODP9w$0C`Auf!B2=k5kBZnDVhcAPWmkL;-x(?;5S4*i1@A5TU*Yia zv6RNuLuFsC*>;wIP0f^*Dff7%@$yMU#YW*XfD4QCQsf4`JU90pqF5){-4woi_)DfD z`w@AylIVO(%V^$+ew?T_9mZ=6w@D!-=={0@*|kfISlsk9Kq30j_24n#gTm!3yfMBt zeKWVVOWuM{sCTjsCceLgiDSX-!<%Ei;y0Zu)Wl#s6XfBuf>7HzT&EZk9m6Phk}V^lf`N zBa?eo_MY~F3bDlzJ>lENl?^l)?oLjj+p5FdSw&^eZeCax+3~Bp)FWPg!HVTX$IXPo z*IvE%GKEhZZ~CsyMV~0Ar8j=?-wkuH)ums*3uabNhky^#hCci3IijShnP4-FELdHZ z$rRIR(=eB>+T?J|-F%ziW`({QC|bwoYt-TBjhHzBH^qvLmJWJ+ZYaUk%)0`W#d7t4 zaM6D$u3wG7!4h*jP79lx>8e6!5}G2ifmsT7c>~T>%e& z-FnDoKC_%KKRoo(W?-@UBY^={G53K!Gw`}G0ReEfn}0DcH`)7?&cFfb+L0A8d@{CC;zB@A?kC z5YR9D$NqH<1WBn|t4UDdY$ivMJ)&_UP094TTf4TUuqC1qGF=If7H+HU74WCy3-1o} zmgnAHmJ{GA6%zoD&z1XNxNlwG3yv%_pyEGXCwDm2D;@?w8kZUjv=?mD7GkMQ3Tba9 z)<*vulgR&8*#C_!^r0V^^dh-9hebc%5G#9{_q}dxOqBysr{DT5h+DIiVLx9)(*fv# z6H8xH&DL#w+T+)G54a;rP>)pK&HrHY^GtU&;d!_>4GW&)`aEN)ao~=qEO{?3z!dvw zNvHD>EQ%1FYpL}t{#;6Y8%?WWE*@Gtd8rLE;IKRRcn+M`gGmhMrxLp7t(HHY6Qfa` zOP*Qg{d#gX$vUfsb%dAmj|h36KTFj5_KBrz2Xd!p0^S=t(-S^}Yo%SciTr$izx3&o z1j#D{dS}@v@1s7Mu0@Q-_TaTWqZ&97f2H!IBTDY-UJ;di9{$HEzZZX$z&!cO{s4@! zX^*gvW=bp%Lf0epTIB6K9|ET}HYG}TI|FPgH3k#nn9gj@`jNEq;gLSo`;Z1+Gsx+` zb8a00lSt-C3p2~q4VI;zn&;fQXiS-)F=Bu`@MATGFTfVxeG~4i@7||%j&5tKT4#+_ z*TiQx2Kcx`TXM?_jOIzqJZJ|#BV6I~w5^l}D1~t#r*++@9cww^)r%Vhg^-?IfFSol zB9Im#+JE>ke~I4gTY8UGMXKI7DgltX%dctCFA^NmbVv#_c|vW_n-D;F$n=r zN4((MDZ6^j3=sR1%D~o(JoB{&$cmPiptmjLnyp@Njmfgi3V6E40BN6zv0;|)3MOj| z-mlq{+Tz%5$WKlfBDcLTrxPRnE*Q}~D2DYNwxEUl&=w>c`mj|nUMY+{+iZ!`;x_&3 z+c4A*d-bV4YSFvnC;Qf<_TyfRA0%>+h1S9iRGI~YoAYbNnqpCTW_&^`1K#ZSSdn6A zPNAZm{BZE$eUI+pVHWe%hT}&-hc6J8);`h)WK6NMEPALeU1|UIZWZG9mlv^n_2{M& za(K#7l-?To6%B>R0amAss)K(%J?YQhz?C26$mNrxwtq8XB2C|mTRgGAitKznaUaGy zkhBMT8F@Pmh-#N4_wPgd%Q=;7#Ze*T^Yg+=17?M-Ne+MI8fsj^04EuOvPs&Bk0&-A zo)4~ae>z__rWB_KlAyl6EeypxmB5>OICiOg7YcZ@{B{dXP$S-JHr(qgH3swuRRpr? zPu#U;Y$`w&k`%ua2l>MI(^{C!4&O!wGo9)IkBvbJxQ*Y2V~vcOhj)InyLApGDi1;nae*NQunY zee}w~=`a1-C;J|Jevbzh%bg=etHC7${`z>pfIJF8YPFvjM^P_te8aa+W}z|uyV12P z3Z9U3h{d*lHu+Mm{#>o(+@Y_gMlRmOtQk1nfW6Cy*fxNXveoUmGKdu;>S z@T5RsGEJ=IHWHdX@o-;RvArgN_gqBjQt~oKx&2<=aWTBsRL*}yxcNawIMR*siR#x@ zAH(KOpMPkpZ!RYncWS0>InBy_$}(ExI!RprpEb_^zbsU&_26055=)4fhpTp9mG#}u zG>`JeHWs8KM{R@^r|5!#bg>BIyTV6WEeu-G$eiK~gWc>$Jvt9ZellGky)>=)Y4qpK zwGc&7bJrK*@1p?*jdRNJvZ;ta~f?U5_ru`U1f{`w)>_;hVixm~>sDZCoWVuN4G<|tr?$1vB z(4v9swUgQVX|-)YSxe=WMc(Oe2C=)LdRg~V)ubCyU1BT#yMI^&4N}{aRr?b-`F_gd zzERti_KjDvEn_o>?N39CM}=TN9skVuuW2hTd@HtoNBRwjv05;Z4QH{HPoP&MfZSZO zbobiK$qSisGG4D23$SMz8m zy08aRen%zM&|Q@h?q~f=>23dMPkd&CSTUtMd-uS)FSDnwcbFQ5TFQSL zLpg04ZD^3j0oRM~h4Ju!oB5gzI=bHbc}g^yaI#dv%%%oAqx8$9K<$h`kUiuYNLk4) zILMx6REW)-2s`5!)mX5EWb4fURV#6(Z6%2{tLeYH$4H!N{H5RF%p*duAl43bc{=Ww zb>wzLHtkD~$4W%8xml(25&sh2rT=hv)JD%+a7iDIg!b6EcIQ)na4-9wZeq4gE-?$h ztI`#q>9p=Pvwgii1G_@H?q#5j=)NOQ48r%mCL0B3JTbiwb`4?f5ygGvKHoyf)!QqW z$Iai(TyEcmq^wtO@U8F9H2&&haVxkt_51SQ#$Sq{aTIHMe%z)HbL&twmTukzyjC^e zWpBv`km*FCw6tO`GiG}reY-Y}Gh+!1(fQ@XOVO@$n_83m8jZ-1{6Dlo$NBz^uW{5LMAYf@) zonTa*)mt6g%Y^x)kPBAY(geD5$89OlIEaRwRnc@}_wl5v_HHF>80od!eQnu;c7_R? zZ9Xl-gWR{3KS*J4?Wu)_q6d}`Ybd-wUVmkZ^a#-I?B7fa zzis?eb3OCNQ1upkVz9cT-EdsK!)+B41_eSX@tAm#Hc8XqcWy@9q{ z-t^L+=YovhZApX5N^6{ew}Ys`#zoFZ-hJZDxUQ~BuC$wLyG<+2G%h)~>RW-aeU+=g z0VBVJQyBwG$zEEP1G`gNyHeapYe!;vv(;4}MM3Y@cbPr_)ZX+q>bfwv`GL9h$6TYE zLw3sWl8vTMJlo^iF$4bKHKG9dPL}SG=Cu{p*>7X!(^`a%TvV$+=Uj=L)Rr1nvp~&V z^t9h^MMSG74NIOMYYHu=`sEKrqvQAj6VC>&E58+PzjDI+pBl^mhCFV$d`YCgr>p)) zE5~!u-B*V+Nukpu(&yjG!njjr>aUQd(9{%1N{&?L1BOSYi836sBDdZnnPoaRGIpk1 zIm&(Z?eJs$zbh~=+|?FZ>IS+G z-~2RHJvr;aH~&jgq{j)F2a%UJapv&7&dR9qX`(NwTuHF><{sCiwPlC@I zuZuyv8>y5X3x*`z`7|HF@PdS~+nOoO_zo^jUAgswS$KQ_RAN!ivFF-iFk;CzHtUay z<5Ck!6u%x1g@yi zo-yAcm4p7?Aic&I+VYt2DW%co`-XC+{jwZIuko6FBP(AMx@o%_W`n={WMxqaG|GMz zx&OIfCfmaI?Q(&zqNXq>GK;nf{6^uEoa+t~I1z%CtBae4Q6#LKBd9An^4UZiEc=-v233F=!Rqq~k z{^wbUN7_KW$wP(J#D(|8Ow&Dmiu)&+Zcq(uKn~q+U73W6Q86cBr}u6mLkz-Id$%yZ zd97bhoOAiyK4Je+ajSOk3(CHFrOV+Hob^i4q{Y!s!{VymezTdY)9RZMgG$;KMSL@M zkNB}l`)TRHiIpd}r+U8is`w_!uxz~5#~Kbv*z0toJ_8Sx@qU6x${aqmuU)CM{T`sR z`4yXg^|rwBmz=~S6l!PLnedg>9E0)(r&MJZz*7hzg0PMIzK_tvJXU~Bu>zX@+wABv zt!Er{H3Oup)Sq0i0TKgQ;9qB)Lt;+saf}uOwY{;WPX%A6A4qt)4z;r2qI(5=EvCJ< z<3^HDHY(h=UoowBJhkZhHGTC&4}56Lw-J^t_ZimhDPJpPtezI&CV8r`@gDT1lo$k> zRNpk{cLB7{l-4apCgI=iu>rVdFv+GR$GOD8XC=@B%7FZQ;{h$cwW{OH!S5N|7>ypb z;%1S)#dm*1=6G;NLV$ap4^cN*FO3q3Uev&1aZStIAe}DLwQ7gYlJRzjXXD^YpH5D( z`N(*`q@|xkmd+N@nX0{t*sc`lmX2&!uczr3d~c~xrQV7^flUZN`_qz7Mrf3=aX#yh z3RV)oSd3psv282+KJlNZ@jH5!9>4V|BNQxMuyWspc_MwmvDAObpy=QWj77siD6!+k zat-VtP2#{R4QAajL-nh84Jyqi&mWXn_8m2zoHSfK=O27(ratJO{NE^r|HmHDQjGO! zYIfb-5I(CX&qCE|>ZNbZS8F>?3o@^9z$Y(c|I%oEWcDK80)l@2UDhtzv%h=@deDmv zF85U2sZZu;N$nf<+Ny>kISu}Wwn{2YbAQ$wi9Fz3{Pmbhs7>e!HFf_jTChnTm7+YK zbTM(B@GK6>NEWV3T$^c|s%eth`v9iXfSrt#+@`Z6NrU$dAH8*AAZ){sC!d)bx@tvd z-qhpb)n>=^m5UvQolkW4Y>G?EDv3T3{G!`=0Y_vGk<2SRS|j^<#^>gk9D?0%r2m0Tq_x#wxnl>%XQi{rBIw_hi z8>k6)`3?q}O&<-*O?$@9{JW~%$$$+i=7yw~7iN3wN&OAl_(5D3ZU&->{cBOj}h_op`VzOiu1))wR7cIjKa6SN%S9 zo1Mu`r3<@#3Uiv*DdFk!>2c3goVl9Cylmn-044+qohCvCyBOEjBT_jicvN+8`@%`d z{W~pi%-$1+MLXghp54yZ%~FuEe0I2afLefxo|*o8XoIO~I&4U_mhf8%L zn-y~j3LV`lKMFi3wE3mg_}*IC#wPyjLKIH$5Zxwcb=CI-I3$@Suq|3uF)u%>GO~(G54!gDo3K6E4F~8*~fjad7Kx% zLtNoF<@ri=&y#R%l^m7Tliy;c?j!}2JZ!?)F3InHH^ga=$5Wt-WOW`A>DltZNonU2 zy_8HM-!1BNjp(8tx!p@=5M6_&{Z1vY;EXu^KX^*YLOz6h0&&ZKJ}FN6R{AwABsvYh zH@=^yt@`(w?Lkupj`sX{XxxJB?(PZ9Aj0t*Gwq+yCjwG3e^`W~SRA7jt`O6PO#MMu zPLGxH6^mi!dzV+H{&M?ez%0Cb05*CuhqLBubJHFdYUl!+9|pX>HA4KaeFp!j3G+I8 zfy3eor=`fvXD*7h@wY+*L~$>~H~a^cvHq53UfGd|Y2w1e*0iAZdTwQvXukHsV{8sa z4#s0&`L~gY4@j5h1*CfK#{}7g6i4QBOnU!J&v}^l_K9-(oq_Cp0o3BNgws*f1k9jJ z?vI!1aRxq8fiu4qvIx|5{Joo3d${x6yB{ku-+pld3NeT2*|76hy({naf_7&Ey)Rop zx015}OJ45)8_nh;*L=K{QU|yqQI0El0cBy|3Pv^8*0szT466-|6hdAqJ8vDm-k7Xk z^I)Zn@Ekv>oxJQ95>_yvz~#nV6FJjwtn9h4{y`lQ8Lax6_)mY#LaaQlo!orDywaLq zJ(imv98CSj1vD5I()M&>Hvrx`*<;(wppaUxHalm6 zLC!;X&yhux|`WIR}-x~Ruh_u`flP&0Z#N*vHcTd0M zK$Tec=JGc^)xl54>Gd^PDKfjY?v9Fo?$kL(?kG~0vNPv1Jf~d-Sa)<*t@+g*bEcb} zyCcL?NH_hrLMGVK@v{ ze-0HNG@Wh`lA0H*2OA+RBzHixWE7iqVBLoq#y#`?UvYlk6E#z1m#OxGI`&_ITA!Io z$YM>)yILKfHEBSLny}l>#ECv_WMT@mEnG}=JoX3u&)b5pLM~q~iL^b%j9;_DxVX?5 zo=G`_idRHWA4VR>=fu;-h3#+7$Z1!O&m#OsE8E#iw;hkwwiF^+Rb5B(cMUv|THus^ z`a4r%?_WOpX5=FPJ3d2Vn4!g&BLW~nc}JDof3S)57*BnRExFz2mmHY0R@@xCf)iq3?&^yG zhnTI1TA-3(XBk7k1H2a-UvB}gAw3D>u$a^Iz)Q?gOLOdf4CqE0Jd<5lY=BTH5!2E-`K}}aNar?}iAz<4i**zx_HMy`B z;hv>tGse&NYDNpWcxkK@zAE-@Hvy167Rj$laq1~?IE4bZEa0x9C59S5GRu2Dst{Jl zM)VH7ovAi%V|wyi{{R(X%o6ENTZ#R>h{u8VsFq_kv-w9`VW3G>*&IE{~wGE?uR&7B8Fm zAB}e-yE@{=j)b&hKXVTvcf}meMhE~u{q>stGle|o>-k;8r}Vh?qjvpzZ_>ZZW*yV? z4e(?UV9S!x;1qUQs)TPW!eh-vhp2?xSZ|%4JFcl9s_}Pv?N;x{)2l3;?eyB8w!Ti= z!v(AoCWjE7YxNr?Vqn>4YZvHM!$5Pb0>4U)*;QzeT}ht^?#&-n`#h(Zi=m`SijV?l0qVP+grWI#g9(SD7{Pk(qXq+lvDU68+hzazBMICP(ou%HE=lxw- z;O1X`r`hLm2^d)Gfvgn>DTQ~6nLk?!13>o9KVG`t_z!_m+(>X#`cR~Z>*kr;4b7zW zG+t{FG=whSM8gKw^(WXTFe3_J-^+43yo1tsV%F`ef**g~8CkTC$hkJ+9A5S5UC3G;0)jnI;W;KW2gbKy_{Wmv{B zx?1A?3L00`cz0u5v2p4vMK?bV zXdy?Nh<2KI@jSEw^k%l}%U@cE{fwgT;oA`l{2=D97tOR;5n2^n#WoqI-)TrVrM1H| zgXOa`npY6xh2|c-g@kV=J4A088J^?6d);%j_&=fU)VFB38J%0)Q zmhy-{*f#`|z^e$Zp<_WVGIDKbfHt?B1N?doad_H&*Im-fgUXd=FyFUA?2QIM{SKI3 z-uDr*B00a5G{7Nkwp03ZhU&v>}@f;THtMPm79Eh4Oy2D|XsPqB#Bg1?WH`o%50JIO`MzHTfN%r3ub>fR82>w%{Cxcbh9O zBP7QUp2081p+e%JP!W>B;onp>ea&Y;RhsdLLtivi_L{Ls)lZ~nQnSBv)?#n!_y`fq192$vO;}9BQN-Y*d|3V+>c)uRsL9`fteKN!g4PY=>|DtEQTPqsI zAJ3*7%CzZd{v>;c15gsj+Jv3WAA6oFU6oVilLX(#0;b>akRkV}1pZ2^dcFXR z^})_fgSurCVz)CE0!h?ns^tWMi&cuw>|H3Y8E?72&BPpBb}a<8z{LrAZj$KgB7g1ssMVbjJk14g#nqWSuW2)1sKEM zQFGUfpbWp+4Rd80Dw_gZ&*tAdj1N=E)%}*mtsYNSV>)u>2iI;?3UBFco6xE7hh?n7tOmQksj$xqd+XBT%lkh zjXG%_X#K3;;Q{1$)ww-&y!^vril_>I1vrH0?v_N6SbT>3CwS|O1WXO=Axl<;t1Jqb z(Mq&Lp^kc3UB3rUoI6X&X2i~eO+Cpy8vMGL5aWCBP?;WKx?QJ_s)8O4O-G#pxYER| z&xUmzeh%gYnn};Xnz%}f(S}3QX~n|Py7WlXj2C(Ar+7z8g_b%nyH^p|W0Yd*_IN!u zmiCA4NbR+S@mHm9tvAji?)7Y zB6D@EXne&TK*4Eyt=QXGZIS+E9jyK94+l$6|CU}e6JcWBg^-&R7MkGGDl1Ri zea(E%`rXt{2dPI;mnggyk`f>qy|%;)g(=HrZ9_ZpDN?tmz{_?yMb*b&mA%^`1QqEN-l&_Fz|0j z=BQj_FT&lEP-Dd;=LwnqGOtR?COfwf>cM`q9_TGHt(%d+mmP+&0Jl%GF}wdx#MU0N z_&!B-`?$+Pe){htx-AU-+&HLv4vvrHC$G#lF9b0%AjprGT$M{sYMWEE9nLRiUcoqd z#|D_L`3ERuiqy3V7{#;Abv{KAIU;yUCJ$9f6D>=P!RTy_ED1mzsQSAqq zr~xSty_%_|`2w1^s+ukhQ^-4aJs0XEsQ4N46(u__+Y6+Nl!l7KlNsgz$t}l!bTq%t z3dLJj|C_gz!6%bLzwgM?WdKJ>4wXO7Rf|5qP*A7+up~&hQy@~6GaLsX7Jcs@d++eJ z?1#x-g`UU143FQ~i_n+^84iPgbVtcfH-bTG{#)tv$QYX2l$)ESOWm8)%7SG)$<+BB{cmF)swI8c$d$c@t<;Q|i;P5m%O3zjeDJw76+Ju7mdM@4=lvJe56ld$Wac;rr-#2=KwBq5^)=(LYZ-0QHqf5~ z4A9Q3tZQ$Cbj?1$uM|mB-FA%=+sc7Sya9>L7^Ie-Ny{1&BTRee^hChb+%E+*vm`Jz z?k)cK0=3Zx9w<2REY8OXYG4Tm(98d*HT1~X8>a)A5+kJ;t!DeUvc9n&3zp)?%znrE z!taZwk4d#ZPJR}a+@<^MlBWYaH(3U{4fRi`6l}-6oTehcVz^@=?!zs?*8EkJ)dLsEcyEpGB+qiE0%L7h{mlm-=T{Pp*InI7B^66*3H4sg?j z!#@8KWNPm^aQXr8(EA}%U4vr?aJNjRkr#6z(2zgvKFwtRJAh`JQwG+Ly=%IY-6Hx1d&r zOW6H-g%zqDS(fgd_Pp5SMD7U!st5Os2W7D5+b!VP8E1e?47wG81OFd;?-|xqx2+97 zDvE-D3J3@i5djee0STSRLsJp3Qbam}N|WAFM5H$Xl@1~TB27R_D2en?Ls2?}n$TMU zDJ0=r?0w!-_TJ~)XTR6^`Th%BE17G|Ip&!c-QP;3OM2+TqLtq?Qxi;64Y zI+@WDTpP{OJJT&si=+sS$Z9F7RcCzQ+B{?wFpzl1wQHlc`c^xswQ6pB=43_DXh);z z>O0UY_y?<|M2lRr2tK(Z3;UK~`?0HbK;+AidKB^ojzfUQ@{lLGmaDw7Kp^3DUQM(6Vnrpc8a0N`_~g<&>+zqxJ++S+A(` zoE7z{9Du#j`)Jvru()Fy{gb=yY*I1D{5<81#65sAwA9d7`!yX*-49WX1v4TzE|Ir| z%MOtRU{f3W>Pa-x3)j8s^FeDjr+aiiF@=>Cf@nf?|q{q8$|o7TVoIq5T4 zN1qMF^IdZOexJOyq|na%B^@bC+QUD-o-z!&cdIP?u$+#S2NQinHpF*syY$f6D4S0}P^lGe0ob(RRtZ!pqz;w4k7#6iNs;bki;P$5xwPXxc@E zxtC#>7@_GOoSzl(vpR9nIj>J5*bqFnQsN%xEtf>j3(N^vm58u={2CJKPJt`2R)~CN zCmD#O&W>YDvLflxRx8TFn1*#DP+QuSWlFOE3w zvV=Wu@qPCUY*?E)Irht;g1bJfEjVjdaqcq3p?Y3t*opdUu9|k3ym;2Kee5^vs(+j> zz0ZmGg{y5|K1Qd#r#UcyGpyiGJr}2pf!-Y&NYqYSd^1(Qu~WA8CEa`Gixs#tE|R_N zlP83kYbHHAf18%KLUF?4IE zz4RaJB8)Lxcs&KmA;UdoXfd^9i8{}dfSqX1o{wb8!%9_Rmsk+x>q4%)GGROFqlveV zi#rFo_63Q|CSBx4YSBxp!ZhhJb)UQZnpqo~_LJ2?$Fd~0lj)bBR9SxFecOt96QRfVbT?{(Sa1!6Ut567W03&ZLGnvh5j0QS|jR^#}nd!1iUAs^lTCg z*K1OD3MVe!D4Ax}QtbTlT)E`j=ANZ@iOdj%bDg$hx%U_e_Zw|FElfEruXX)y5r3ow zo<)(WZ(CD^|KX~B+{iP|E1_sfE@PU#0+p!uQ>FI$F9}F8WofZurDv2~xb2g?rN$t_ zGykE-X~7CiCe-{*wbNEYOx-Pz=7UiGF!vwtOxQ&q<2u*@*BElPc* zS*mJHt!@Ca_nJFnzR;z9_xx&DczU9F_)*&14_h6dnL%CIyW_8V>03^jW+u(hrE{Hh zn?tIMR=&7VMmmz{Xn!05P2i}Tt;VnqJ!GT>uS^)pN_>G-g+O4R7mrfS70V^G!{*iC z{LQ*h{w>FCEjUjZL@oT9oqc+}2giAyteh}qbV&|8k$q{<(Zi-4zs@*?G!%MMA?okS z-gvL*A}jMuC{%n>bWWMf=#hl9*pz&Kg|kA38*K0@!e7eN=x_zgH(2Bfj$!nco`=J_ zk$PBh%3|=lYl6?*@bBrvH9$yi3#nFfKFqJ<3l&Hc1|D5tY47Sk)+-KvXe=!&!^uDYEqsrc$^6> z`&RRN5Wn?a!bI|1EonfXT{_e2OSp`VuR?HSshZj19AHQF9we3@y!!H5&;5XTw0`^j zHjT!pH@UU^0^+rLz$>mV@^1Edxyd6IN6*bK*FrvJUODeyH8;x@8jJtNZ_t=F2L!fo zd< zLh+(9V^@opuC4EN0GT0eZ9(HCJaQ$9UB8PGFi|qo!QDEC0MqqGK$W3fUfDV@N|HPE z^PFI+|7^664Nn-U3E=4bE%OKy0@n!ux^O#WFoy8fIpwgQ&9id4nXY zf_1~3NRZ-;X_Y8rrRGb72#e1oF}fZ%U}7`E zUw!AYUIEeVvaL?tWM}xhDEkK4A=mSS;t2Q#8D6?btOnXDo)IlSv3d{y=uC}(5Lk2e zXLIvKJ4@$XNw-l3xYGLV&Ve>)nC*9Dt)<%c^>V|T+saNy7-K~W+O~+amB3mBE98w~ z&@#e;Kw)!wXHq}QE7pF>e9Q63*nt)%aX4#@geTD>?QX4$x94z$-KIbQz*=XU)V7v~ z)^-IxJ}P$MsBI00Iq5jqYhq_8X*1k)OUrWm!EmGIK2Uw_*ri*=huREz=JIRyf=PDR z0V`%y=`%ggaE++RAsY`nqMW$kki{S5yDYCdO+^ZSN8@j^zt$* z*U(OCMr=YmKwbi+FX6!FDgtRgjou}Czawu}yTaP!Gu`tGDgpy8Y@Fpz9GqNgQpm9O zTnpfg8;Z(&<$P`Ij5_H(k)lv_3kC0Ela7V*pr_6VElwX~wPsm~Fb@f)3;IT0sn_t+ zVw=#R;qh;!o?F)?AQ$a&_(0sC7gNyS`u9(Ze4l(C-oD{aC9B$=Wb>!HI^{vmLT&M;6fS{6RJ7mWL$2`8p z!AUu)>-xkbE$y>fHBt-g0{JubHVZd=i%!JKY=3Fr)+OIx$^oxi zMe!N=HF5g@Of~5u;7+6nVq+?ip8@{hVsp>I*3(0zEs?`c;^75r%k4Xxe3g0RTJ`_D40MtA0c0sN-8sPl06X_^F z)ud>>;c|F?Z^L!?Z9~=fT*x+mQ;guB_KE~y29PDLB6a}X9&fJqOMEm7{=Hvl<~Ws) z6LhV~E^-NOPv_UfwX#+Teddlht?X-}K5!cqb#h4%Ck_5=z(ClX7_t}BvkkOmQN7fa zyH6&ek=gr!G*B$kclmhw-Q!*{8Yy2!|8Gj!4F6!^(fdo1BE*L+oTqN=k8hOUp-+y2 zB5iq{o>hEpk~VU@$KuAF_ou3kX367sOSG!5cVv-0!IAqsJ1+`HbVQPR&O};6ODR^3 z$$v_y1n(;okyxT=T<9)O>xUwOXX^G@u!{%o+FZPNDWQ$YKHL~Y$f-F416M& z8#Y}W%4ft{6TQ)4jHzR%Y8|<~!q>-nutQKIOZ+)C z-Zxh|Ll!2K`<2s>JTF+ecJD$CP-VP=KWu_Znos$7#nVTwfPz@H&(g99TG|?3m}A0K z`dKl#i``rr&)Z8zB9TT*Blq_02s|>)w`S_MC~^URDsEc4lBVeCf}*C4V$hW87!G>u zMg8r*Fd`{hh@x22bXCK>Xg|IE$W>nKToSfT#%euGWx55j6-AnIl3c>+D(b-n<0xW+ z;IH4)vKqD6*tR|^r9()fr=SA#=|fsa7o2N%cl4=aZ7UtYmIE#{1P}=3W8^-Zz3#tf zbI!-ZUQzf$zy-@@DW3%uL9xYb(~HbmD~B73 z7x%1@6y_wV*1pIo5^W&a3VLasMk!%?=lQ%WqrV?|-7|9GqJ+}j*?kmqr<5;Cnl)E+ zo4YE|i_9uBFY<6}?z%rDzAcZH?(A{TKU?VvVS1dx9`I*e3uu@Llv7=C?}(cTx3Nud zY87L;o?m$*d2;D`rn9YF9>0hyamg!rpI4M;smtY*MK%PE39-Peb$_tz*rPZyQ!OL7 zXVoo&*|Vg%e)!B1V#Ek|GHHV*8HtTCnsO?ED73-Rb22?{ktDw5f`nSU}5EBZAj zNQY-_zRUW>JRJI6BB%Kh%An*{*492gCL%q8}TqaY#lKth`a3GT%VpZ2-l9P zU#b5YxDA__6E*>B_H&Q$vx_;tFI;Ngd6hUm_6Xo*VSGsUls2YaV%-`vrBtkQ2QMkY zZk(m|E2vRLgw*~1uPEOB9=>ej3HLk6ByTosIgu_x zx?A|fW9vAjX;o9ijGZuV)xBI0UC0B3SpfpnePiG=TuV|}nxKw*-LLl|K9$CIrHdl_ zBq4rU(%(NiE$Fp$tB$;5H``VpDzz8w#ZU3#^mn=ZejbSw{xvr!$o#1Uf8L%N5AO;D z+&_Ddg~ZV#Db1EA0iR8!;ggid;o(5^`#f8D|GC1L9{u)L4I@q#&tOS0rFa|8b+++zq8;^B>MP9No7OM;wBc3JkZ;fijvr)|g|Dl-RJEUN z^?`*IIWE0dh)2N)sIPlDt4B0Q^FW_uE9yEiYaf~-WpS#mMM3$9`uPMT^9e%cEK={1 z$z8+q=xeO``gYU5_{pwryS?|9(4QnHRT& zf{bpnS~lK`_KgvG0~>tEG`o6Hl@f-Dj7ts{Yq1(w+9+v^yT zWVV|9ypHtimA!6A%~v?--vhWzrLEX!-3I4@d|guw)2c^>sIi^E-4(|zO4)BY&fhs{ z!>R~2G;H_r^cXJF`PCL~VB>LdN5A@Wj&nF7jF`8NzRoAg{CGb6v@NeyZ&mBOpxZuL zB1=T~5`jRVuxQ+yg6tx&lsIHPX+`C*#NopbEYy(2RTU_8`5$vV{d<(^Rg>ta8m-fo zk=J-HU76Z^;GDa-d=SKLRgYApl^p&*TmVrI(m!uLvg-8 zsj0E-yDgsZ%NHJe$-mI$a6(6$a-WnNj^X#ack9a^`tI>DJdu4o1;6JmUwZ7Ee^19f z$%n1I-uatxa`COs&|5ljY$M&nrjb@#d4I4<+HWvHLy(4DjPu_i=$jg*w&IUeMcnlKfkcXsq$0kb=pGyc5#1MP2rq(m>h zE^~hBeyt%-%P-pz94}aRP1_^J)?NnC92BqCIleZq=4C(8hqSv%&f(W}*^tH^uU?|k zD6yzML1Mc^#y#u8zEt%Aby|~gy>rq1`qnAlb4?K?#TR{a^LeN$O;N7PgU4Vvsh<)@ z${*ZqV~#4L=bnrR43g~w=64M`*G5Y06z97?#{X$>)C)g%8_LGhlL47S z8pb)R3>|c0Hq#eZd1fNuNKPCn8dfey6yf4e;8T{oy3?XUJC-G;a<;*^r2~DDvB~#J zPQ07v{Qx7E#XO{$E|=0T8@(9r)R6y>&Y@-v& zeBSrUts`*&7o`B~S!s9?MHB2Y!E?`Or#g0H1cXZ$vOYkK@hOEDcqOWR1TqiJFAun$ z9u{-cwY=U~0u?ysO@o@2`e(fouox&kedkrcNJHR@}2|j;Qbu4EPzh8QgIiij8$X6`wdlYIN<; zxtov`)xoOiHJJE-YV3a~<71Zt#|Qo(3AzX~V=7$GE5jgM0z5@bqLbq%p`CGl{jy+d z6u4cyJ=_9wqI|~rgPWTtY-^GoLJ1|NKSdhJs099NJT>TConn+0@}n z63~Od!S)H2`g%4m>mRo`rUip(j!DiJsPCxLCPkw9 zWKrin2`zWoZF7ZQO(>T9%gKkBq~EA>m(~}i@yM3<so5YRW+Tu%G<;$ zFz*o?O+)8XU=Of|FV|a+O&hOP3YZ+8LJEcJ8QNF5Hix=PFNISYk}ZezhA<9(i>wq!i9Z zNq-H&?Ker(R936?KqPzgh^pTO6Rs#(p+rv_;WdR0DZv_3cWi8;!i<<>A-GHTOk zxHYTywBBv5eE>(&iG-Mc!J z6u9O*rLJI=`{x>4as;+*7p;Ht$EhR(`-N&EM*q>Y-xgH1P&kKNZx8uKnj{gl+L$; zlCy;VTotjC3xWmWvgp&Ytcu7mN+j#bNn~bn6n-|3OD=9|ny(ZJo`jUw8D_iTgG=XC zX%ec?+TI#ES`GeNJ)k@!Sg7dt?WmnVrWLgTGC#y+ultmO zTP6@TOXqu!yq;+RT_kh(fBQ}e>Sgyo%ml(?qJL-^U4Gz&uRm;gRQv$?Visxi!-QUp zNXzb)IBMS}XXGgtdQsx&V<0z$FlBqNgETC^e_S`x>S1>tBJJD(rDeH42vmqsU<;G3 znSN6)JK+dqz|DeUIc|Yt_BfAye{{hCrI9F!lq`8Poj6W&URFW#(_hL? zqX4%?Yish##cI(yfG&~UikLdQ3e=8lNFH^dpUY%Og+@mvP9>4;AoenF}<{D!n>o$ z3-t_v=@=Q74nQ{r-r9TAlEr)&I7o=u*e?J+CY*kXVtDTdo~)$K$U zv<_7MeW_E8Kr^Cm+1aZP1C+vrzatFruk@Wi@b4koj00vMH$tW~G)T!|wU;3L94CG?33ZVHfz)gOTz96oTJ*DfLQP5dGO1hRz+2^DVcgx z_;>#O?&ZT%0quCGe^5`Ei{;N_&L;!$@>ymcwOsJcU>(OF1jhw`aL8hpRMiplT~FCkCXs#%&0KI0#4#>Fb}tWCmYsCFB?xb!oky%6`chnp z?)gj-f?rm#$@H3X&~U0afT=BLaAkB?<~C|DPcBK(TgY89==y0FSIQ2X8xXwH|MV#g z{A#~ zR>mt_-4}_y1eZ=(v9WX#hQ?6v4SrPxfaioiLCg*uqn*-fr69>a0Ddn7nG=ZGWzEY^ zCc1+nrZ55vv5r|VpRGEDQm=@$1^}Io^B+u`dgRqYwvF72ShtB#UE^~4#k5SH+gRdc zB*-idhno1fm4M&3;fCin78>@%heBty+dgn(ILMp z|H{2A{{@l7yL0(nC$|L;L9*|Gvw|*L7Y|xMum8hg^`mBy)8$kV7kRF^#fR}#vsYUQ zZI6`XwR@#*Ri3uo`gmCP=zyfDcah}W<$L$FbARfTMIkRA%hX!3>#e;0@Oj!B$)j?& zPJfWyx}L-{@so&gJygn(K)cge*HoB28*o%*vxPMsb2w8Y&PF9ED|;oHRWHqU@q@ux zwsdQUyREyicu3ghSJO!7(i^5r@1^1TWq35Vu(eY&YyGCyM*A&QB}o+%rP%WLu#$69 zJ~L0~&57sZb-C)^n=JF1kDY~(~}jD}p7@X^dq&(gx*Eb)qR zd(F%EVRLKdLR#r<^w`gIx4zh-X(K~BT6V@~o7Pb37S~3HUVkz97AW4NO~KL<)wKtO zc()i)zFO)DQgw_*Q~d(u&#ZoR58H#8j6&@Qih<;IVQ zq^lSnWBWHIN)$D11&xQqCJAQrGfTXUAr$7KxWn%^7rb;5CaTYT*UQ=8M^Qj%xrFw< z7+h}c^VaXJg#O4{L1Ba}@twkPt2FWQAa23?$G`ba`Bxp{Qc3hPXdjV=F4cl}pmLA^ z?m!;I$R$KBLukNqtD$Vm`J~LoPJ31W;-0qECJSp#E2k|Y@*`mc1Q!Lhr;cH1c{$r` zH--_jI`vJ&yz6qqi!FH`HD|f_PiAe5~g|gX6Zj{mw!btg}gnhAF1Z$8;X@kE~z=nxJa$0<5Tk zcpVSfJe%o!CsChs;pkZ3X@8wkH#8lA zZ&!mAhkQM*%3ZYbGevjAWe8rB``o-b6(_REJFl(Vw#nAdEhA@J{oR3esI(1B_qbcf z5Q=I4SX9_CaO{?b04M#ytb)dqyA%l*m+~BT(uXYf42@9wx$eq2MEQ_y-BhWkr4}tx z#`6-co83o?#zwqH>69g$&*-AkV6dJ9@=~G8LvjZB;c&TA&49X-FOpwXjE|{+5}8|+ z+Pzsl+ALY;q|5wG6&VP<8gs;GyV|l7))F8zT&rtEKjoho-;?hZhvJIK$uPN`wc<%N z4BQnL2O-tL1i0w9aAeO5Rl@VT#1Qr~?No)TKda9azMKS@GG>HXK#f+I7#r{nD@LvG zI{n4~;<^~RcHg6M9RzJm+?aN=SynF!dwv{kt?C7XxqfwFFh=%j_i2p29Xgwt1FU`j zXONKjNzzen&)mB2`j!{m&JlaG=1Nrbz;rmk2eSYbw$fv*f7z+l5z5(jew!e_6}jnZ z=>Z}u%=z|cPVjdfnzn;`-BzvV$8C+QbE%&*hZYv>l2;SaVb>6!T)fyJGdZrM*i<<* zZDJ%4%%uo_13AMU6K|SaR+*1&Oi_=@@L0XqrPsSb80pPrsQs#T!i1fiu#)GabnQ%! zF9&P<$i{hG0(VOM4AJN-{fGz3nJN7d6i&vqMh=MAdz_6tTnT_OaWneR%3`6vpy#Xv zX|?mh>VcoQSpDNNag&dx+EJL-F@rX>(;w2ytIDPcDl%$E_aDn%bRh_Jv`PJfyJE3O zu*SlJ(@JKilgU~5MDJag<-dNXd=mZc$nwBBJGkCAU7t;X2OD@L z>a%dGF%G~NbPi(1np#K&-}Pka6`4Cl4;E>kSk=Gs(C7EEMKgKI>o-GWu7(swYO28q z0J70l^6aD6AdlkNYdSyJ*t39A^$$%qL(qj72e{7jOi~X2<^c%Yf2_DE^<%W1{F^rl zM&5zT53`=I`SV`mI9*i#^2wV@TM+-{*Uene_|M4)^aw&)mLzFX5u1n5krp~<( z$kfQ+;NkiWyWIJpW$r~q;^O;1m~^FNJxy4xDKTaW?4Enw$(@u#4-m(!7GyQ?OQl8F1)|xUOX%N=Hfh* zn9QRhN>B?SVd6!D)6&N@EZnrx^XH~&_Ur?zR!&StJ~Bt>fMztqcz?x5aQvZQ&=H&! z*di)?zwKePKL8~E@c9|N^z##m2CER>QJ~NhS|+PjU~n3|=XS!4%|%@y(QTXMmn7Pr zUVyA(RA+4wc)#HY6P9t6hPiQ)fcLXLPdy;+B@F1xOe$BIug13M$wq5zWsN?XeX^Ch ze?Z-0{C&agjM1IB?Kl)4q~>~JkbGPhzKQ9)MMy@X~b)rt?PZ6$%wKtq*C z;qXe0YJbty4vUHR9;Tr0sY_4l*EAyVtCP0em zNmMopadJ!B7YRfxC$<2lh^ul5!N0V1z0B)RbC04F-Upt@&L!&Cm5B;%5i(=F zdw-i)S%8Jj$s>2cZ#5_R=o74;>$dNceJ4yP`3PEmV-@`Z=oZ&f^$xd1k!M-$egg_X z&KWsXP34w)LsJS%wMJC=EPD5{S3>dqZTHv4JYOWCR^kYlxy-9;k{#fcsK-0vwy>EnT&4do z6bq1unAJ2jCw^Nh-1#gKooG>5Hy-FEyH@$l2z&?@3bpida*$n>*}8(-qI2%&BEbGD;W zR@6?9eaGK0L_KJ9CuIy{Q~bhOPFMd`qTQy^>=kqwOLfa#WhrD0< z;!=sig>KGmVf7T3D;tA~kku(J$kX=YyQ6L4bgoEY%-+21?0ou2-5qgirgS^54_%KX zD|3!Mo&*oaoF8?i?ZPo`F_jkHmTGg{3u)JP5&dq6z43~D^gV1~NBYz8*;(SRiDmw> z<^4?BY+_Gg?CI_K1BL*Bp#5jQ9#pF4hSpRdPmovi)ZxnBb8O0SUqPJgx%m(0ZO_RYhOJ$PH4lwMki$gq5G$kx=E?Ls;6Q z=U?AqJ_QvXw`!~QKYDCRG~|Bf#M`XgfK&}$$n3S6 zR0P;z@nNInRo+U;mMu9#)v4#dg+9XFGQo|PG4)K^N>}~TqP`Vv-~m8+ z#XE6_Dhrxhfy4W>0tz51Z2DE#`HmxPIC54%5?;Mz=>C<-m0)eKzohAe@ak~l?7vT0$mKW>FoGIh zF9I0c7!r(G$K6@TN|{N6goKQWHdjM}`PLdfA^CZ%rKg7ytg0;1Pz+nNQ@#-2(|i_0 z(#D zc53$_xaYP;?P3U@=TE7<>z4X$_9lK`{VS<`$JoF=r?jQvm!ohuNpIB0qvi2o`4l;X z`-x-Wy)ia@yTPp67_N4Hh(@={C-DGjuuhwwC2!K=G1PLp1lZPj`%e8%Cf5aa8I>BV z&)j$kH!;um{F)oq5M3`FX`OcJ1#QR5>i##efmRRIt(0_dOY)W@@7;ThIOEf?NXfmT zc1$2eY#1wUB{%9;lEuuA#fxXjTcL((@OIoY?>N&`Pv$`EXLHpNIz#hW3c<{J-?u#z zJL^1HlwiV(S;l};F{CQJ@>D};RE~c<7b9He2G<5PZ#p;bF^g)zC6gW74I0@JL9?w; zZi?aBk3v(TfaY=pRUN~&@1y(WUD8rYTpbt%`xc|b6B#>lnf~!X%KTw&id=JP`74!L zbl9xFQ?pm-#E#xnf67>F=xmk~xz;#1i*LV`FT{ku>BQN#uxvYz{ah!X+Gnnt12XEb zZh(^eWMJlQ)b3pyyo$^%c?{ZImeu&59 zb#S+Bmmq;;qrfx9ALghCI)#JSZ_?mE$ceV=mQ8C?)!4~))0Q@?s8+F@`>7b-PY?G0 zth~ZHJlfJL;iq%f4)`caES3GlMHe|~EiDo0md9lo;q7IAGI)O(wt>jmu$T6YS#Lgy zws(Y@CUC*XDO|1c$PmCGOdG1)5kL-grRU)_Ln9>GysuFO2UA~#W29-3zH`kF17(=f z^w8lJD7C~XJ+AlesI4lhj1s!2kYPI)E@Q1on+u+A#LqBe!2RcIXxW9EL$PHf&w0J- z)|2*YwyQ&YaXSV+_(Sb2&h!M1i@uEb7(N76LPb%cI;+VbFd)tZ7El(IThp&z+lcB8 z(r6#Tq(d=6*f##p6DIR^OvLUw%bn7d?_7JW);KbZRq>U?t#=p2;(4y6{yJ;s^Zu(! z`O3q5pSTrM!-4r0|eJZxjqcVlCc>hK42KhQ3oNeH|I6msS@pasT} z=rT-}j3<|zxaVDGX%eo#+D?7$x?N#4Vx!9squ#aWv*&wOV8uPg9c5%56-`dAn$zfY z+{=Vy?4|53JV`k&O_qhlx}d7%QL6f}QJQK4z3(UHCh~u*?TjS`ChaAAdKO1_Je5Es zji-shZmF7&NB2XqZFT2WC--3@E>8Pusc?MFk822FSVKasry+b;AN^o#?_(Cs(WAo; zo9v3ijghfG6k)eIMzDcqdm4NMzxI;qsqy8IV;IDC!w0=PCyAb`chOdyrxHxOD+CJ3 zH&nNeNXwVlpTY~OqhHO-1dqEAf50bQE6~Jv2ISmN$XHe>F`#p4mr$wMlcO%){+lp5 z%GB4%tj<+e8uvlet(}}DPzKlBuw7LQgF?^ob*%ACNF>{#!z{;7UAX!BkDxsM}1b0pS~ z@7nVaOK$6CY7afo+l~1o#ki=)+dvcQOo+;z|ePb280SC{lO9!SDK+RpyrG9^b3iCvaaS?Xr zwK@m`p_KVO@$vUQLgco;;2Me$SP^`&@%_qwCTr_re{ zdVMdENZow4+!gk`!uFZ*yH2w48xZv-af7+Ok+~H-=vJi2SSgC4GDo>nb{QLg?sE<& zf-Q>d2FdkdRU)hP*m(w;<1}dqn=-X*G&Vj}`fD@`ZoKocG54FqMh4X^jod@$d{6GA z8zyB{5{Q}p1vJm96@0@LwC@5rQcVuO-4KsMZ|_Y}>6~e`s)*tJv0;=kx*)){ETgiCx}Q>q`ayTs_g@wGs3 zacej}((u;UL-a%v6pP2gkus7?f$J{o2J3^!iMioAS9s=vihovzpHYMVMlTE-IIv(W zSF(-Ss1Y#tpJJZ3a-*wj?x_o4Yw#L)M{Bil@;S_BR;d1dDD=bKA;x;#&ivk0yBjEfEN0^ztY3buo9qJD{ZcI8N%e%UBdR*7>@DE9 z_w^FerWZcp3dZUQ#}^eZ9HwOe*~|a4V-FoZVtVr?;tw3uLgGK~*h7bt3T|o?{V=?_ zU%%nHcc{Q8jZH@TUUo5ha(CBzEMVMa*$uM#+qGiDL(&B@?n3hxSs!2V7Yk4O9miaP zF!G-@hjJ(=rE-lw<9!FACPE5Cuv7GV_8K>Sf80e?0f&j3vudfQKhF4aN+$tHizXxCZ8v8Lm<*F4ZBmIcs5;(r{V|>-Ebkud+ z&LvQ~PuXFtB5;l&DRmkSM7plTscqk4SO>2EhLI;tgrS>_+dw&u<4>cKzF30uxch|b z_};66stgyW@jgMj&&7o@ZmI~w{EQ>HI2bh(D4pf_;_gvP4z4%J*w}ka#_e#UIwOPl zmVFuQ%CRc#%?q2E?zMqaX^fXEaptPAwZk~`LyQS>@7|zg>7*sb-CbnGm1Eqc45j$6zZ?|PD;ANR#jYb5F5u)7bA?t2?>Z7iM`MZ1N zla|qN%TA{sFt_R#UAe;MF6Lt{W51^2e9~YrWO~UOUtt3uZ4Ym|le6b-J2qLV*xuag zu`(65&VV+Q${4F!m7Xsp2aIEV(&hs98gkL5^_h>Y0@cYyiscJ?%jyEOi(B2= zniJ;_8Vd;vZ%=a{%0Emapo@Nv?yWrj56$?uL;c@R@xOlPvkThQ5?ZTj=S`nG;lfzk z6*5vKGy@v3rkpim#O1s<>MCQbxUKoU_e1wkiG{gwk?DPtWDJ|Mq$j>xQvc)Cg2Gw* z)`+RA4UEPr`N}n03&P#ujWx!a(u?W_3j~?wkrCxy9OWLf4qGWMmHBvoEU+wn3|R81 z@(0*BmH@l%`R4SsPJOd}F9vPrSx>6MLWe|_T4kiIaa|e&0Y6}9US@l6WDiNAwnYaYhy2q#`xo>4%kc!*SfVTIopw-JHrN!ZXO57Ii)! zHUQkM!l(V!3hdB_(KAh5ofv-*8lUQP$IYmGAnfvukb?`o_5{TOEf_9y;x8Bef7T6J z^y}B~EF|x_KmXIs|DPZDtBr8*AJU`g>Bit^Yh#rQ2k~mNh5&EnSJO8~tKF4BqNeQF4%c~= zN6l2Th!@?-vI_vc&P^l`w(4wsB1>-CG446gH$$cJDNrXPwlU-HW^yn|*3-w+ zyEbU-eA1*k=1+k$gkOVn;rQFIu?SeX%YL+EPmhk zVJ7%nwa#z7f2tr)Zv?S;IrOHR9gs(VR9&yh3Ek9-6*AKj01lA?DH)?oHM8%;&y%P5 zF5Y~76U(xl3EO9olhWK!$knmRLKK3~06SO;Kz)E|J+aC@wA1~&A6SSQA(q|+Uk1JY z)@5^%Q$eRib>CMvthp>4kQJ)>tbRp9=CM)1K(R^PTamxj1JXA@!Am{9MgQ&G|JRH2 zV3g#;F3$-7iK5j3cOQrS!CaRl_{omXJULLs%{G=ZeTeBG*5yD-1h+)z+Y{W&_EP?c zzb?KtJH-NFjoVio*kd7WG?1qhJ-&JV$KLt3eW!lrRNuzwq~O0-!T(N4gY?Cw zt-#VB>Q?~u`={#hZ*y=km;dPDo9KhdF{#%72b=uA`O1I4q|*;h9AC7$;y*0*kB0j1 zzxR)X2!e|NmRPB4QrrK6ls|I;DbbI%OZ5NIQ2%s^{;M>MJHXjzH7OnQzagbQASI$; z-XiH=o1K67%Crx_rbE|SocrI9G6|4!|3OEc^gkTxUsDZ|)S*KRxOd%+kN*o&N&`|d za}#_m{%&LZ>u3M2v}_&{!codl>M_KG07(1E8_3A=CsFYB{f-gcM%{nCMu6Ks^yV81&_(kKE0=Il+!0pJU$2<`IeG`SVP}o| zTxU}V`_Y}iBj)G-nSOi%v5^{I!y%7;+5eN{Vv&3pusN^p?XF4vg*hvdSE_UQcVX99 zrBl~TbC~{N+6lZBg0Ztujo7R10!*Df7{dFXPx&J9CXRiPYkApUCSCJC9>2NI%YWnR zew9Vn-=93vQbA$D0bhacQS1vdVIb+i-Bn4z@;aD{s}hFkUm4xIfO8|J3ID4V{g17e zzb+ep@?jW&J9z7P41e#J)BpbrJXJYxN0KW4Kla``tm!OT7gj`_jACOHK>@K46%YmK zB@`745CsA0B2A=8FCi2~92=lCX$e?Bqy#C!5E4L?Dg}~UVg=Pk22^>IgHL~k1WtCoY6AAQD2*J; znEmr7+H>T-P0U-Pgj7kb;N&JLSWyI@LqUzM$1aF=M6og{b^>glDsOGpm>}&aYm#xZ z@ws@wM?@^E%4@((cYSns8l1D761#?~rhhC8o&UMeR=eJoAJ2;2_#g-`59C*9^LsuIB3yHdnvBt-_b#Ao5^KMjgq7~nq z11uk)JUP^c(1BgGva(7)>trCZR9iox{$j(AHQ6A9;`QiB`+UgT`?nzb=W`IVLnbkr zmuHfB743cHB!42)_l%%w?>T}WimGM;+jvhMvY8vpX3q@S?vm0Dtu|yH`>PfH`4s{0 zu!hmIg80@>{F#^kPj2IXtyTh)5mhE{+LU@S+Vk~9+}wJfc$&>@T^u)xI-r#1bD z+j?oJknAj?ZoHI^O~YydO2H5qlMjrsFJcl@%*{eL&BOr;8thp0zPL(9krUu>l|)MI zAdRyHT5T?uP?Pr)fjDS91e^OlqfT+8dZi=nFle zE>LIfLaUrBu$R=jm@Ov?eSw3hDg#W> z-nVth)7OSPJZ=3=zf5}A#<#p>EeW@huKWBm1VJw1>5z` z<3qkR^F_of_LvY`v{!-in{4AFV=~^^8UYj51W1q{bfa)nr}67AlgMMq4I4ahq*4fU zd3Fd}1z2fbkpr$e?w#m83MRl^#07j1krOC1IUrjE@%#DJzezHr=YFukEXt}6<>+X* zO3>wa6-PD2ORAh5Hr*8U zgY}m&0kqWJ5hGhFnHv0ZppmD*VhRN`bP326x) z_lsPc%4b~IlfLI@(l0JG?~e~6pX~UVgmwt(wQ%jo(paiq+QgUH$jA6zA6bG-&25tl zmiV*5|IOdo4GV#q!F#fAFA2s;EdXPAE8`YL$2)$V1r=7kx0j3rXd3~G=E_@Nb!|;P zrScA*XE7KMS@Lp(F9_;_3l+=!#u{HmN3y$0LLnYq@BBH;sx$y+5OX4hsQHDEm?a3O z98y@%w|ff<1FiG$v7O;TrqdS3?!J&vfYw1F39^Hb8+zWzf zG&h@dlMc$;S1;bwgY<<>596?2!!?-ocFMX5Gip$IRgZ@A;&jI?L`}Fy=Gg%ka-3KO zH6lB-xa%wkpY`fCoRoB(|6E*|eyjQ27C{vw`*<$PCjI-Uq4e5yTv~c`u7bF&c)&bY zFcAv8?{|0ht6*TKuI&E_17-&GJ`wJ^v>~kcFMZQ5zqrc$zq0`T7C3&{c|XRY(6YC8 zP%wF>w=VF@5a<>-dMNI*?Hl15md%6twlqc5W|rV;iW3RKpRlMz1j~#fXe(PVidr7~ zMD&nLX3OSX0HG`{k-{h6A=;E(L)<&?Nd*V>`%U*dI2hVm4(LS~9$_*qFQ^eC!T<5T;Zj zbX}SgC3+wLK`xRD?#xbvKj;S;)8-f26w?6TjFZhlj*%=TMGpYtp8~B>I)GC80`}EF z?`p}gV?UX*d0gNoMXe_A3ZgF5(sMTJ{E^WWPZSP~2GeMRcE{@HlZ${F(Nq8~_~MEj zs;10THj%4Ai#z1=A!Z?~+^s!B0!>gUBXK_5cuW6OStiW~7xv}5C_SjqlIsNDj+z^( zulDw~sgg!os$nk0KMPnRrA`y>EqG%ETeO+GsKCz2PP{$YnJXalPms~?W~U5iuGBcc zR-K4!JW4Qn4%{Nu3^&d8fYFCOIU6xyvJRK8^Nlximu&{}P*X-7?W{!&DG&3Kr2BCC zQ&$GklbQj@K<%uneC&19f~Z-8gy+wClE%pAUOw60HEg_`h!!Q_!3&LUVBtb>cjPp|#-tDVlI-)WzDIDQm@~iu> z!{s{mEwNjHIQW59h02$la&(6wfO)|StAr^0HVV1=PUe-ZGuT6d;N_`p{#Z_VvDeUM5CT;Lg>oqW5&B}9wChm%T&a~%N+b) z3Hv|UmH?uM1M(D#`MIWlM!~nEcN|~Lj^h>y7oMJ3#vhx#wbo^sN>`M8o2vTQiM|9+Je)iNXFvZ%IEIn&nni%|!cNiJz`YI-r zcFvnrac@t!|y80Om& zyXjL$kiTPBA20;5HY#crxFqog_*65_8ywsGbw|M%k28y6N-4Qq)=}hM8-aL#$8ig5 z*9u=PpZLI^f<{%xw;0R*2!omuFL5@&e9?L#0JfevikJOoFcMS#YlX~OY#zCH@QLTds_E#o# z>t_ba-HDx1Ul@W!{*anakrO|*j{HiKtQSdobvx8uYhMn5XIG_DqN7F@#+F0$=Y>gH z1aC)%T`rzAxV$b*Av^m=k}?zF=%KcFNiDkPlp`tC=*z_Xl{xJ~67A)ay_)1#%id%( zvj={4L}vmc=B=*N^bWtMk}yqxKM(qjCBO6jWO^CWM0I#?A2vRGVh-Zoku_r<+D^pq z#pN)UWaTDx50FHaJoIG!nuUc9sd{}76@K@^&#@-dPh=AOI|b)b_Q3e~-nSKM%%=kx zDxUNU+r&N7g>$+KVUioI<7T0ut-_1gXDb;SB)A=?6K@ARAOM+`J}own@LO;P160F* z7B#PU@3v;{RPtep_~D_X!KkqpYN@_(hHd`$eLjSHi`UZ56c@IHpyfsv zYf{g`zf3+mpl}-K8)4r&qPv+}gE#^gVoiD4?(=cPM}!U3gazOrpoXS$`*htVSL&MM z$|J{<0+dKbSSEObh14s{$w{$uzO~%tg|DK}o-2D6{AIUXz745g?Kbi1wEiZbuN3(U zip0do#>VukvI>{8rwkh}UVXrwhtaes)(y+~T54nSK*C;%77c<54boB=7;XK<$M7Tx^%4;GKQm!z^7Rz-^$+^_oaL3aGLBXpz&dN0Ow8#$J0kMLx*05mFjp zxi%nKN8^VPnUU^CAH8;?uGlHpFI$(pRX*0XgO579yn>Dp^ zjEC9=Bq(X<$=(IBPHBhmsrTWtr0{^52U~a0bvi<|&09PRAfjR}`yMW@11bK^Zae-` z<9Iq9jojb_Zp*7n=ck0<4xd!nAp59^*E1OC&NC^LVZ>&ZcfkS39~(uLb1cxGy!rC% z3V^_`8gzkN!JR|8knR)90JyYrhMvSJSW~rgIYceBCU682{X!aoH{F$38cN0&T}S4G zJN`16Ukv&R_CoSpT~{g;^cPh}q{@XCfE=WW_7as3lwP;2t!l!piNcGH!0jdyma~D^ z&PD;8fTXhC7w)F+XVk1tQDa3B2aSIKAk&G&!ybI!i}257GSC(t8U&<;TI zz_&|2Y`DP_^M&^vhJIL!*)H|LX;v_oROJE?26qEJJ!M`4WebyU6Z%rx%FV(pVbDEX zK`mXN^Qos#L+r1p>&WGW#NqRyNC#9B1L5gGxH6{`bmA6bE=qQ9^HaJ`0mBZpdMQ2= zIB}TOiOe>DzP(4@cLDlA*Zai{gE>KZAqz^$AJU+q$v%anE5g0Nlw04l-a;$l?TC2b zZH&+F7L#Nz%4 zTm59TcVUz4NlJ-?AjhqK8t#5sYjie?QqqI)bfdD-h#7D7ZlVTW`FG@67dkkI-QkHS zh=2Ae3Q)ngk}5n@T!u?5k@q8|JfcXz`%F}uWQvjq$57OoSep5r)J@?t`d?NxWO<;x z{MmuDkx0v8g6GgR*-Mx2a#v|cMT`}w*8S0{ot9(1q=qcfW6N4L`vVM)Vh53unlQ=T zFP@+kJOG}KXkDmb4^#G0-m9+_R&OmgcXR_2+%vfcDA3o_>`y;hvbK zKHF;s6V^Z00ZG$IAjGLxnuUGo4%6l?c2{;8Ny95#_Ope*&ermI3w2v|Cv#@7s2NXG z#wPfK34l>Jk-HGP2HW?MK%W)`n`#G{ei;YlfcxRP^$TbdTxGT{JX|0eYXyi%Q;XG~ z&lLNPaFb7&-}`<2F=X9o2uMRK1R&oP;HZ1&fWuuVDl`679ef|}Pi<8K^eC^0W`vIx zg&(OvhV*fC5EI~8%J2CWxqh7Oy+rS&?&i2~l|8M#9f3s?nPk<6QwBqna){NSB`ECTD=21C|V6H7O81z|dxQ^Us+Dn@Cw;FpH zUHw&RTUuI?KXNX}U=5U*f4mL?$id9(*QT%i0%RV93>7&?g!z>^ZCa%aE0$yKYx#2a zN+&<-Ot94U7XU4}ZNm9wVx%_OXUL|#tQsc!+vQGOa{u>CHB=nC`*Bw0lV9>ovu(1S z*MUCQUfziuWVos~>E=*?-IvvZx8>u&eWXBOl#2l9{~`jpa}5Zm^h&cRQYwQQ=}zTD zWUEr~^0w%r=|N0+ImrPYS$*#1r?UXsd39xH7b4&kbLAR5{pL?WL*&%kjiLV0IeJvs zY)g9l28xE5&5DV2%K|hk4blT2L6j~7*BRS4tbwM%bJ=wfLPMY&_sr->%Zn7Ww=HHY zUhCd1NG_`9&JACXvswoHuet=70voyx~7-ga1ojBeX#XbRDdo4X_Dd z=t0fVbtburm@-fcjMYhbEFJkdt})=HFjlmSaC%llO=cmMC7Ly})7kwI`!E)ekOlaV zff5Qscr$1z|9BwcY_O#%frU3Con049d^el~wSrxc!C*V-OyNmqjo|5ie@1bYB?ZkL z5KD`lA6p0JSEe*P-c4i)j-lZqh(XBGC>LCv3*=^qOmA7?P=KW?^usz(TzD7_iNT$Ln4VRgi zfxK+cg8Q3T^tes>Z6_f4c3l{6Va^b}%tJ_|Bs@OvRY1QVV0}-v`ZJApB@!J`fwhX~ ze8Go9aRE5fKfCC^pD9fsWzbU5{)?Rauj?5@+<*Bj5X@rVv9z6Nz|UsZ%!$Gp+BpE4 zE(jdRCZ2$15BKRH;JpMiyWuzyP)QbAx<<`lX!J^doN$>|17`@8a+}8@KpYKeF!oHb zqWjX4otDf}?4n}emHXOEb>gd>6@hJo<(oAG{s%9xr|jk<9N-XIH7u|u+6%eO_~b*cUt+JzJr#n02&nbgGcy+ z`!u$-1^8H2)Y3l|(knF?SL?JaIyJsZD z%AvsdXYOOE(^htV7coHChr%#}3C1>aa}B$RpXLRjd`xLVaBFv(VDQ+sB`s)&`cwPH zkeLR7Ccze%z;Q3@%JJVep#2W^3%T=utE)r*fNk(hb)cr#2Ixpn0yU=Tf+G>wYPh8) z;q(&VqYIrDgzL)7UM z*urw5@OUV|4ze!m6k8cgGB0ccjetKOG&Qf$UpPvEy4}ql+Cg#`y~dJn!y=q}aqsYU zA%Ji>-{Gmd5T`(y=}pc;zl#DDqXdvTE3rkQYj}rs7rNq{^U)ZNofh}|!S6UztdjnP z=`Q5!@z0CLyoXAi3QKK>yg;S**i9Gjt;&JC4iq1W-?K>kCk{0g?noPhyDzxyn~@N5+1#pcEi+5?ZQR zzZ(0l{OGzURQpE4m9v_oOBbIV=p6|%SOk5fz06q!0N&`rVmCC6vYJiN*x$n!%&-G* zy{u!ssx8+DeSJ2!52?2{mH=@uB!gJsyV>oy%=g*I>7rjAjVhb`a zLr$S(F~9`BJZ6*%h(LNRS{y@1A4wFMhUylUJHnWi)DErLB7IIrVu(>=GyCT-$+u12YqHj!BG?|xwsV#;iZ36P@xhTsQgr_VGh(1gBhZgEbW}Qcqh}z)X zM*!8iLpya(i0*n<3mQP4$w4}Ip>HYJeJ))N;`6uz_H0^Z(IDdbYWkPaFdeztD1hZD z$Xy8cXCZS9ANOgBUIp^oIUX>8{-fxLcku%6b_6CXarvZ<6L+x6PK_6)GYo2WH+ygp z1=Odffs`|_mrcUkMF~Q#pix0`HqDD61-?yZ8d|vrK!vs6}j1PndcnaSgXE@8|}5^7%HfCt}Ynzx_1| z|9Oi(Yj530H{GNwR}LPp0iuFLoN1_r6EikT^mYeYVO29B_MPYj!fBcYA3#;`_R|v@ zK7#6OG~XPuWG?8$spQ4ZitdEo)#hkkgW+Ney7PqB#T0CAN`;QZNW>EuVjn9Cd%$0D zK10GGMFh2^?MHQjmdYcK&x z)cW;_D0v7d*=^?8sp)fLyU4v$0gmJ=+ek_NTy3Ru2C|};ff+$7J0v@yj!NQn0?tk_ zokb!!YW|y;CrlJi2vsM)z6=o^M5=n*h)gyWc7J3#HhS&cHwT5Vf}}9WfwXgodF1j& zMZL3U0i3ga0#4jOoRw9j_n-^7y9X-BV%r2a^en85C8V`ysu6QSAAHX~v3V-?tC*sL zT?0!n+UDM^aG>y~5&1_)~1z;jl1X=(= zmHfmK@>I`o-^q*P> zk5qysTa}#? zkd;-kYopS@$ie|Y4PP^h8vbYUbmRfZ<>Eq-Wo?diu1;YIIJp*ZG7_DCR9ElNeu4~X z=LA&CM>sH%KnE6lC0aXXQaMF9*E}k|-A}-3IWdG6fkF?qI_%JL2b~UjL%H7|;tE)_ zN>S7qnYjvu!ftSl4nPZ#vi^uQYnUu#aN|*$o6v(>g47nRlJY*g0F25mewScmp78MdB|$hY@!%<78k z!2~h-NO>LSUWNnQC+W3c+PRmojO8k>){x52-^!m;jCcLmwkX;`fUA>r)a~KR|Gb>h zbyV=#4^w7Z-y#uJCkRm01TUcMi_ZRn=T;8|&k*p-=RSuax-jjYtD5A!?Z;^G_oNJ4 zD?Dq5z5b&mXY>^p%8bXt#pG|z zWt1*Zi;{YOIF|~vAiYFZkiieoU9dbHeaaMHG)jBAOyyWU=MMXXIY z(lUdWn}9hk29MOiRo#q?C=D6}>9#R33>y{WJ>3{7{59R>gbjxBRvY7n# zQv6Bfe5itS1O?kxqoK@jo__tqwRxm|slpJ*wDfo+F=CoK0+uTuKdV`XRoc> zQo2+=6#lV^l1dd>Uc8XS{vTzYY`p)%_>-=Pg8!4K^iR*3WC=J0-U0jdZKfG#@$wmJ z`GW5G>7lAx?bV*L1ur*yIgY-k`NBDfx;?XM|b0nx~t1m-_pf z8oz*n@({-`KW8FM0nG>@02pzH#LJr0};-8sc^-*xNr8v>vpMHW=NzyZ*IBdV5nQckEKa znPZoBqHN_-4 zJr{JIDXrmuL7cpD+(p-K{j+9R{c{iVwxTKX);FsxK>y^?yeRux`r)~^Mya68MwO(4 z&(AcOW}SSzTk;fanaNNV6$?~ht2pQGl(_kD;eGn`(F-i~u!TWc%Y!{xYM;};%h2+( zyw+aB;M!#6www^&}a9bF%mcVe!G2e)HMl9loMNaE^@9jcVUX4bJKxT`e}V08HJ97mu3Gpx^G#N z9r82QxbE!dIQni?b})svWy$YMyM%7Ut@Ht7)6U*3q)TMuC0UvNPo8XXsI*paU|9F7 zLv63!JhbVz8CHg|5uHli}lJIkE4)mUk4X=uDKS(9~nk-{BJ#r(8#C zG+aB1#9bo-2HOs)r7fYn&KSi@F_jBjtKgnheus3uZeiA*uC{;OYL&dzgabCoy52=l zPLVOWUt12$@u-luIh#K(?ch_rOke1dLnXJ9(P@I=B>QPv3AlrV@&)eivUar}rrLfM ziuJ)liqbDQQSe(_sq`RMYDN&M`?+*Bq*B}{L;?3c{asGsR8vb?$ShBDw4n+aN`Fps zFN@QGu~S|GorHZ;x5i5I(~lpu-LTK#&jnbIby=Yc2$?+5ezHvXKP z>+p2?2}fyfOFY2G++OV)gQnbg8%K*S4NnR82X3kk!V+XGP}dSPrXJGtGqDowxrG|Lw= zmMRfUXk~#sAiRg}t;z&kXAQpiux`Y=Vl>pd>A94>8zIXw5*Tul<~nb&qtG6DNWCJx zbOg7XcR{0Pah@cHI?1P^q|Wf!j(n4W@+ik7PhYolpPNtc05~BB;XC3`5i7Oaf$${( zl=0RIPNi^H@>^>;Z=uuHenyE>}e{w`z9x%Sz}+8RD`y<8cA zJi-e>L{ty5`?OknMw94%Fg8;$L5)*pu@SoXYn1$G)un^x4%nec2mu?{)b z#P^T1=LdCbK=j=o38LfB4}7&qrdV4oe~fQuJ^Pf&Yc5sfSZhqfb|@@+hKM`q2y_$P z;N)o>}NHaw*0qN&?*!sj7ii$bLR8O zL@E9llegt@>%xA|)|@1J*Y*A%L9;VBPTNxpM(Yz@b$!FC3C^pH&hjkkY! zCwq&RN={40QUX0OKBeS6FMeDg^J&t_H;x%4e`^0Yw|kJ2s^s4HTq*ebSb0aIYDz>8X+;~>GzicA>hX2XiQ4hL zD!FRdk5O=z`{Qj>YZac&T^QWq*~;f}kS769u3(gKxKMu`Jwzz6>ovaBX`#z+PHQ97 zFu-jbe!W(!?IHfl_6wj>M7vKpJAGs?t&|hiEe0xKzA#cPP4;KDF>{Q*LuS3Dv>A z*$L?A;ySCmhHl87m&5M%6dH%>E_n?AW~I?nv=8|zKo)wCBD`vp_J}pn(>wE6T~AGU=c!>b9xi;s7Sn*k}-E%3SK*e%`~!RxnH>$}_9lG=}% zPC=8-`Z|`7g*!73M`aI=Oi|_9R{We>iveWLkt7($p7m^8RPy*4d+)a<<kL>a0SdnsfQ#qnz05u^5Srml(?BuM`|NQZ%_SLb*cm>g> zghCntsa&Xoi%;6yzLKu)7tyqutMQ}4+iC#q>|X47xjTL_>S{MT`0%&;EHsl^S8u3N zL$Q=71dTPO_GlG|KRneWLAFx$DM4@FE$!pg)c0h!n+cLs;cYCg6YioMw@Xdch&~Pi zl1ekii)-B(Hcgmy_v^|rU-}z8{FR@4?P-ksK6#^^-8SNO=aCFmFuIKrvxS z=5AFauXx^R6&=A(r?z*?f`->?uk5SBUi;Dmx&i*Kg9Rm10*GDyyhLA)yl(tKM``qZfy*5#E4$TmqaE)g44UAH&+~ z+VlHMS7Hv1dO?(q@1YuP=E`0ejvW>K%~zl+YBO)MOrF(U4b&jTzSqK$oatyM?Y>x= zRgr_$E=di$$kB)V(sv!PO!IxE(0+KJs1U?lFRFP&Mi7Uy5047G@z25oDO=0kQ*M}C zk2DZ{MZxm*M1Shqsh*EnqB-6&w>-b(L;i$4>}fD+6n`R-$9BCHz${1tCm#}Xw2*~n zbPf{4T_=F4gu9w=wZPLM?!g#t>LEH$y4WkKEIrgIN+Z%MBw%=@?DkC7TJtK9J;Uhh z+Tt2_E~NJflc3oY;h#_`h&3WC(qaGu^A#Rp828zQgXb-8FNNa#r>%68B={A{JMx6q7MrXC01 z=*E@HyxJHnyB%n$Zp!5Ntsnlv#Lz%wf>-0Ziq&^tsU4oUDMttLCs@cpbr5XTNja{{ zn=(-GK0WYF`i0wGqCW{2c47#aj*lt~Ppx28Q7f0OxEa^}#M~D~0gid5XUg-Sash6} za?el>wTLxN)R93jtloqhxi7IlVT}GfZd>7c0Dj|o*RMto(iFa*IF-MTi-~7E@ir zoxx@_Ww&1tsUotv8#`XHP}O(zS0{~l7ELor)CB&zVp}Sc+?prbqgx4@tL59X)1p>@ zi7Nqa?H`(o;ZxLwd_IwHj-Pw)Htj_Urw_)CM$si9H%f35PZvt6DCX?h!OHw~4rCRo z@->oULImar+S$p*OWT599USZjVyHy(*WKU@zqFR$&^{CgRTa@I>pZZoeQI%NE(nW) zSn$&kHM5ewDB}7E6j%6MQY{bDSK0`>5A+QvKfcI9_C&3Jod^0i0Jfvgo66^`g|xBc zta@+rP<$4@1kJpweC3Ok6uc<{(HTfm&=_#Rfl2*kAqt+Z*4`FH20=G| zgMsxoU6>6z3y(vIIG z^vjXxfBWOU$JPm1Z$&1)e@zH<{QPfT`g8ZyPlsuM#ONjRiZ824SFPXb(}S5cQoD@K zKh#l6pC#T7ymBKZ_%bR@PPI72l~k!Cr#zw=p73IOB`oAic1+N3gkGN+s_T1+v5rJJ zHB_3;OgLH|eGpcVSLK7zaz6N50zdv)j^$X0v zaMrS?ZpQY=a2&k2Kt3&wbXp`#LccMH|mK|*Ms^ZSxglO#*zu!Q{0FfO5^ySffc zINuetB_{f}acc9#3s3vsaeiUN2X3A0(P+-9q+&vf55b-E@phm5vg3MmNR_IAaHa=>)WPmn;VR6u2@q2g@Q~?5MXLeX>TnSM_~*$&Es2 zUG#K{mB&mxeW9d#PR8D5(-Dbh7>#UP*3fR@^^yX4-Pr$c7QnYP6**T{b?===$CQG& zJ%dP0&HlU1Jwd7^wkLSeM2r>PQ^q{uhtQg;^s%>NXYNB_LtZ+FYWmfIGN4OWzc}vI+q7BuOl~xHSH}-ZLZyv5 z*doX6^0UUBj9HSO0^0ea#le4fuI`6{_H;VlVR_fj%^-9=`fjh_4V&zK|D0Pw3OZiP z``9iKdgdjBgXG)BXRDuTDZu20?x6YNmM(=&B8nGsg0-r=gQn03m}_Q4sdLqi$U|w5 z*3~?2tufee3&Zu41uTCtQ%POvC}+21ikJiJnyhSI!)Ux^_rL)?{QO!WH5WA`lQ5}y z0FVCB(^X{o|=;fY)7tgm=nui@CxjlmI|G)k*vas(+POUIa3t{|ugd@$T)g~5K4IK{|4t_g$ zpP5nuTgBP>rpydSigZgSxjTj#YDG3(w1r{ys`?CIHmx09m}{R@|d5hU6ji^guwTW>sPZ^x>S9w*y!%jp$*-(iW*hCN@a?PWi-+7Ou=({Sf?+U)1oHtSEOT@ZxWH zKZ?DXwZrMn%v7Ia>U&>}emWQC%kdGHka)RV;#1J+!@T%tt7g8{XU>W0l1Gh)==a8V zN3pRB&u9)WU5=gtlSnG1kfXI-VY&l9itT?sd-tZs*k|>H=lF!8JrnIax)6F)2350) zs9Br9=1YmXm%@pu4z^3`B|b*~)0sK3fd1v-)j8)+bvS!SaPdHxUBI_X%3jGv6Q_%ePgVFVhf5}V zeu(1IQ+{fxKns>8_!%~J2q!SJyqe*got zq-3hy9nG4$BOewvP^Qn=oT(&hzm?qXf`?oG>^%uY;JqYl2qWX!vkXDbdD`I&X znxxoaJRbfwPOI*iKERVac+fwa$y`)u&B{(W@$KTHvOGV`%K0Acy}Ph`_@mD4{xz%P zb|;wQLySYo8Mwz^Ge=+Em7n<1e&EQNWzs&g)wMfj&xEsT#kqrANBV3J;pxGOkmY8Qh1~h|8LPsbVowR}?JpT6!$mO+D zk&pdKoTgaWyP1au^u-^<2NuDRwG)m(}m}9sJS*F3s&NKkmbGSGGi^ ze<)53$64Q{jLm-^m`SJHDvr*YJ}fp(iw|4ZFOBO zv+?lykakPH1eL8+wOeldItoSo`9|myr(~`k?C9VwwTp600GJ{k=;dvjXD#@D#Ec$NdtonWn_mb~M@|R&Dy{+MF7=FqnQ_jn!7V<9-U+Lo3UnUiQXrL2=OiSm%C>%m5lRj@yJuwawQc*Cds~hj+vhJsKP6T&44eFY zeV)&zoc}8QX)kYOBjmz3wLw_qFl+k`J;v_o6N!WIa%90kmLwOml-Q@an^`}ajH z45U$g`3_o(_o8)6oV<55*xnG9+cmfN4AsoWFC|9IR!R4i-hL6c75A!Olvh~M=6hZu z32qdRP2_&=VBb)9IzsfBRh_L`Z&Xo!>?||u#~d8)`=Nl{eK?6uU5^=zWG$JMNX`<}TP@^qxB9sh;-Iy4(VVPb3@<|MQ!N7X(ONG%TL*6_-t@~ z!t>=L1NaM@PmlIyKl`?}rh(i}kO226uYI9NqTs(g1n*W}&rf5%FUZUAr%Sk&tI&qfyy27fy~F z5X-l$rBGeX@w3e=4YAv8Ju_pv307M;GEBN|dH)-%a*jSsYZ*(y@O45^ zZ~7vH0VfBiZ6jsckj5WMVk_tB5-%M4p^;hc+57A98rG;OP}e%-CbTv%U~Ts1(QYAL zw8KLwE4?q46&iMVl2e7JTiwvgOuUIbyAX!LTYg!Sc+J??{hq9erAi~BdW(HK02DE^ zh8XCa*3!%m9@;+rAYEL%+N#!rdR)L zq}*pSEAy#eCkFl6UaVDF-XxK*@809Ox!gI-uGo}6l7s(iba?y54j|0-bO-F+Wm@hc zzUHX+(53I(VB-aK`TEYU#&yKEn}7NvO(Vyv2$z=6ssUUN@`;XT2p^L>e>%LpW5HM9u;0f$RDD;UYgd9g!{l z&V8%HKB^@+|F>UzoFncSI7BhFh=jARcv@BMC`F2QR&@qhTIxwy^)S}Dd1#RxPx)gE z-xew6J&2N~&+c~d10B1J?v%0T&VicVEEI2_MSv!0H0sqL*Me%!*@e*^FdFXMHrhO@v!qEWj?Cw`sD8!>KsB?#D+bI#jmB z#Zd>+9Md?nH72K9ufDsEJ(d4d?t4}I{yTH`4nkC>GsR&#K%_Ne|Txp9Liug zUnMww8Hz{T)#0kM|JaH%>3Z?o7Kz0+GHP~F?~AN4cJz-b(I^O3;k9qA=yb@-7eJI_ zv#>QqH_OV)?ME{#MJ6~)w6!Y=BX_n&{@dskxV6Ldkm67P^}CyJ(KSwBelV>0fxBUY zvy%Vm#H_bY<*$C;A&$b_QUV6&IdC&evp1tr6l=0Z(`gS@Y0$H(>njP!2up{dWjrI# z*4jZ<%^~D{k;9K8B5n7MTWMty#J;O0d|8jca3>T!5_L~A`bv^%4#TpFHEVf+OH0qZ z$(JxB3#*%#9em*pfJjRy(o1O437ybFP)dLhIs_6D?qZ*F)HA;C9^JafxPR`y zHAb@Ln)5BseCwRaw?1Zdbw(m{l&%P+Lzr9o`I{fN4jeQ0unIk8bN~6yj(+KF>?6*> z`a_jMiRgh*w;EL0SH==j+TFZI@m$*TSZkpju!Ntiml>@!hmBQ?2Hk2VkP_9`IRhuv zBB$p0ux6uPobAiAA9;>+ry-ShC-NI(LY0hKxLjnsl>jB})vcu&*)w~2V%Nf{7hlW9Yf@RV zYmuUm*CKTDg1@b*e>s81Ry2UVzFYGg)Yawo!dBQfT}#eo#>~=QK^OIpneFN zLv?<&N9PX4?S9CLiEhHY8E6Akj= zA1@g-HOXHWlj4fDRE*@&%e~d~yoO^kw2VjOSdWtUON_fKZ8YUmbM z8QPP>a}1cCVrA?{t$O5uK6)WB!w>D#mhPPtos9R6>Ym+4mybP=^_h{RO$*Xf9{UjM zI$YxgVPs#nX^}h=zERBIQtG>*Qm$1wH>mlhy;$3}x1Mspc6_Z`$Fnbkd8D4;#W(0G zvbDzq5qyR{N%{nG!YI`hBrr%p&9N3Qyca=%?_y+KokX!;JeEe@m5UEMB^UXKKtIMP zYBU70aH->utDny(PSdMAP4E3R>(1S~*7u*qKj*qHs;tHPrQ?2fQnWU<7z<&TSmI=R zl|1gt^zqYnP1NJmPI({cVVhZf6BS6&Vta68a+Fc^);rs3(#5QPB7Yz^U$ zYIbKE3Uf;y4bCk&@w`6~$vrg`s^x(VU|(&L))Ou}g5U*^i)ZluV@5<}a(xs}DX98jI!3qk063*G@?{VJEkG~lhG;M$-xlg!FQJ?$+D zgK>#BdiO>u`UeL!TNT{UXP10FsZt3!C-%#^NSH>%@IRNn9O@w7b>Sj&YW}B>7E84$ zYgSg+{(RROAR-8})h|^Mf!e+H#C^oBd7#QMSzcyJZ(UJ&uj5?@a0_#9?zptJbx2`f z3G!fDh`PafkeD}o!*6vVE+@lmt1sgmWH0wQIqVPqfc#{D#IS7YJ6;#Z6c!=Fv}sjL zO%uJU1xrP%BQPDoT?AhZ*vh#7evkRj+9>f{OPvqMW)&aY)UDW{b)1BQf&e8g5i>p0 z7F3**{-HucQYfw^wi7Efg%;?l*{L`}7un{1)p=0H{Vx_x)Kl*GLUhD-D{@5J>5ztJ zbF}%9&%`PD6J^Du-hZ}hn!@4TTBtdf-jISLZF=JJ&!0G48URg}A(5ibhSN!=Ki$60 zC;ysHYwNRbtlrZ!n-bgp=?|v&c1u_WA;Vf_v)+OF{5v0YPy9i6511%pz`p&Y&sS;V zCQkF7vcEyFfeoFZ_r)E>4H?W-xHNyVsWhMYoQZm@KD}lTb z$2=5K^BVROr!S?SbzSzoyf;2{@bw>5%)+kI)j z_NmnOxtfbLlUmx&De@?%DqU;nQC~Q%p}>QpdzYrFswLEA=nf}~+Y-MxOaYuERokP( zAEd5FG19kmha&Pl47nO87lG_5MmnP`i1%F2Y~nFE8WZP-h-MJIil7~SIHBnucxrb$ z!p6Z;G1+VS?%`QqAWnR?90-7QKco9RVm6GSIbeC8u9`zi!eaAXfqln@2A`ftZqIwB zO~OKqNoStpmQGPkQ@v9J$(uMWz87=#FQ+ghiQ7=xE?}_XNW;seV-87-{aJ(PJ{fJr zj7*T+h-Bq-xSOo=mz~K@Zj7z595^}B^4fd5C7<)sKBU6;sR)MA%Pn1f@KP0*Vc{ou zz0r#FoKkg(;@TIaYQZ<=U~GrDRn1?{z;B0n{h9rXV(J9dpK=>e@*b-3y_>d!1(T%# zuPZ#)@cvT$Hfbb}yx}GT^l`50ijVYj73g>)E|&n|EC_jEa&<@nuX5iP+Aok3J)iAJ zw*YcZS~TgIn_k-}fA&o3a<5uZfzF)>4p1zdwB1*Tuf5OAPLCKici=h?*!Hy7-$w>> z9WTdjCK$vGdzFk|%((E`Q898-mOLDpt{y;YopQDq5of(s1j=pjLf1y^Xh>#&w^r;u zb_8}~`mLDOt?8cVEsx6kvkr>PmtQo))F`m@)2ntf$i$Bp`v4{unFJxzAI=%(jy!Vs zpf`U$dnC8Z%H`1JlZ7}^q<%gz1_|GZJ>8A0?>Wi+`Nd70W%NuF6ywMTz4zXKyG(|o z!jIzcppQqmt3k;<5+xl9sS2v%gH;p#rO06x`e&R2UG-|7OnTBe&9u$9*yvw{Yr&Xd z_;r!Ip{6Ui-kmt`>eAF+=zFL0q|F^glbE2u-hoJ4Ff=7q>r$;ybAq zqi>=XuaFXQaz71`lGefGiP7G?FW$84qNT27S9i_sbY=Y&0sGy&VZJG_T?o9*l5*i< z5kepkuU~zo&@C=Bw7$}2fFvxA@3-pXU#b*3HJ9vq#A}Rno9<&5N6ZMH>z#(} zJUjM63-n_gTa8AWaJ$DEs!*Fqa} zV}J~x?lMeC0bIg9I=&rb*EiGfY`Y}6GlzjDe==P0Jw|V%&<6pn3}KYbpU7|#Mzpm# z`)_sJf%gw;s)(_OgXGW@+pc*!hl;9lb)=Xx8`dGuB~q1`ohPqfm*BrG9ibz3g*o|1 zYkTLLe3|h9BzL=YcCpyax0PCLs;Xnfrh%f_Jng6rUCsCJU7$_yY2R*%_cmzwr%j);h84UKiR zvbGvPuRS10rZ$om5Hv&RlNX+VnWm>_$|&~5r3qtR{z>Y%R^t?q2Wm7QNV|c4_ku>Z zAXiNUq;p}Lg%EBXN3<~VRoG+`QY+tr`pM&$DQ~*7n_Tt!@HXvQ)Efh1Feuc`Q(iX zbSGBJ=34mU!!|dl{)*()2GS07X%NdnV9sH*2w>YnKi;+R%B02YZeifB+&0|EDX!J< zsK=DvwjQkEJh8VQ`_}NnU~jDXqD+O61!WZSEg=-Bmy}gxcj0R zlaB8W2LAfhdwCpr-VLj637ldlcJ=^^VM6!vR@E18y4ue14|$fUWf~~8=pdx+UNR&! z1_yoM?Pdh`S_mUI=UgV((pkX_?+dt$+(zAedZUK%_{Uc!e0IH=sk4GzHZ>-j?p078 z;>bXI#*GHF;gWN(3+-3>qjWa-_4}odb|*p>1@s6T*YqwjjFp;fjl_Zb7(|B3mnOU` z#Wr+;654()Oe>JlpN=F?)0<9?+{7e%`qscWsz2l&3ambw)82jo`kD8APnl40va=F}{Fj!* zf!r`BWjBZvc}ma`7aQ(K8c4_}th$qX$&W4pR`D*oOY4*|B6*7n;7{4k!CXJYm&wlS zSEabrrM7c5A3nSVB`<(|M!kA-&-&1g>a8TIOKx(?T(mPly~_Cf5<2wBa1d&E8TII3 z6AjTj-wAdk@}=UUCo*e~t@e#kzyaSD>g8p1Kl+rVUq${^G^(&j z@N?R(nfs>zTeVnPOD`d3TZ6HaBM+rMB#pY9WT{YBQP%G2c&u}27?V(=UmqPZ+T0OS zv}kI5mG9VcrO)uDt)#0|OhwOF;+@M^t~mJH>zTRq{M?XS)@40aC54@S~&0@zX4_wJQyDnHcUKv=-?~lX|)Otbp!lDRSGy``&rqlIK z80$gqdixbi-VZX5nVFeg>XtO+(DIWutZ}MNdckZ~*0E6>eY$lXs5r{)FroZvwF8qS z>TonqXk)rgix)AOGKrr`SYn zO>9R7PIaP~wEzlID-b$7t9LC7v1oYtGQTr2t1|&LFMJ2?X%>)cRH<@PDBTJclg{(# z>IJRZ)WTfNK_O^VjwnoEt(*Uv(#>E4dcwg2dL^Ktcfn)SeNUyc&p`#vY< z7t+zU=GiW0JfPL-pY`m~8LRfy7~M3T<5_lWrN%u*t^UDS1Bm*`FIFFv1YipD}_*SVEe2MuF zLlQ!JrbM`h6qdJwNHw*T>~W(exk{BKcA&*h)Q~%aMR9y{+!fag{o;g+ui4m4NQYLm zQReKDz$6|kD_j&wIRaA5=T$2|o!Pvz-=0m z!>TqB#1k}~xY^`KLyjbV9p9TR-Gc&y^|Yb};5Stpbw`=+B{-kHCLP%f*?FVyHhr=D zO9f9x)u%>=xO|gcp!cz*)2QO6Cn49b@i}AVX$K{~+-)VfWxkw7U?(PozyrOU2&D%&2#4=-{HrQ0Vp;MryPsUw6!DKnVb^Cv&;TL=7A zzVr98%?B3CNGz|6imc0B^#pp4mS3BjUyK8aH<+1Oolr==D*L1bC!tT(o@Ukhz9R@fE9r0HAVj7^p?7)a7ulnm6a&QgCW+z zo6m^ytTN&j{x#II)*@3K-Q-b8xr-3AXafB!SaMD#eR8^3Es(6`vWrpK34- zCi+*JnKfKz>R#exc{SN-_b5Hp$K0oMf{S3G!ELA0wFbnswuk!!TF&87bB5956v&cwWm18OQuO~w6N zJ8oN4Zw8BgsGu5L+0i*%JXKs~ zZZVOInK7Gna7_l<{7_Tp%=A2C_Y*2ZK1JiRwpbzfhk_d;m7eK$8#Zz5($Foxz-lZu z`_sM~skVdf50$etA^QD%taX;*3SlP}q}>%IoKZJ~Z-wW(mV>bk>>3XY&e~|_b?rndu!O2Uut`w-R9jy-a>c-x%$a#R zDW*C&Lgh@~QvHsMaFJcyn^WyLQNtx@oWY2lhkm6vWMRG+c^CQ`>*R)h8U|F5R@j^s zE=;mMsN}^N`Nz4Y0FWwr@a|EJAx70!Ks#25EL`$nU3nQOCm$${n zg>=}9AXF`9?>(@BUAR8D(;Pn_KgURjXcBrkj+%V7$UH(qQ4j{-jMa~&hDHeqm$n)0 z%pRs=b`uzhT0u*%Jxku@r+cDqCFff%#GCUJWAE=O*~P#z2-AY`u@06y<<}oDw@N~; z2^rg=1|FQt9bB?SUxwLx8TnS@q=CTAhvawL)=sN~UYxg$cKvo*;oAp9nE=D9kMfi= zMC(#*{qCCzbvsi5<_eNG9SAu3$;8%Mo|aRnH4IkG*R?Zg1MTyfFMkVTQIYK#;U9H2 z8myL9h6VTM-y_getHlmzwZD7QK3%Ro-j6kwlm8NebM%}gXc>P&f~sN2)(!r6h-X{P zqkE_dga8cYM0sR^rEtxt;~ZPKN*JTw7N@L-hF0FkIOWCdY(~A0gGkkF-C(=G(-M_@ zXV83ISZuxg24Lnpj^0Ifz6~4ZQKMduysdE@O>&6SFZQTr1jqAd8!PeV?o%Y+MXG9q zU4CwIpYP~|6YN?7PsXUV`%;UmRWD|~%KALxjYE2fdsl5} z-m9u*u)F2*veakf(iL8ZFFri`jFk@O26$ON7vlAuwJc)f*U3tChCv~?XHzpzkp5=m z&i0b%N9Yse2iA@fb0EEhUXxGn=`%}{MuKsmO&JuyLMHZ+doqkMy>vA2W$RS>osZ}* z=k8vYxXzz2nEUFvYjq^|3Fyb?NpP}2Ng{(rJ{I|cZDFVyom9zCFV| zY*?o2DwiBmmw_^Yato}TMkcC1ZD~9&qu*6Mgv4aL@!# zXIU5x@-K2vEp6Dy2TZ=NoB8^TLbtC>UrVH4C59>?@1#4v){iy={P-#)-vpaIKHhh3 zcTtw~)_d+9&(t6*G)59sc_Vf}Q#G9NT7LItc@Slx@=fIo^{y3QfqrqVgM+b=Uin-m#dcrU9c$I?TbHuy@Z~o= zdCngXZ9LB?ZO~H75q7iTMBij()bWAsu;=HlXCQadgK&HfkXwx?oIX~xxTH0-9FC zE&fp;_gmkHzBeFFOlar(c0JE(Zqo&pmbh3^FWta3N}mCu22TvS`HXEF>bpVU{09eW z^LpPu_N7fnJKz{JG@}Ftrz@e^8j?`au0-t{hROX}T4e}q>;umJ?o~kn@`#JwuKUuB zxq+zdp`k6{D4U9UJ-JG-@ja@WH!}nJMwq?t)6?qOI7p?RU7F-pv%V^I){fl(%Hw_e zX>?Gb(*;>|(EQ|zyKoBMbrBBd{diwKxvMfVsZ=+H!Bg>-vN9a6(t{eiWSyb?8E(e6 znm*;%3kp>8OK!47vEaH5b>amKOCd){^H29L-$y}k4HZR8!)`5|4IdYgGeqxmAJ$~9 zv%JR3i~tR;r7hQz@bx=VZedm-s2~?tS?65cE~~G(`5qdQt&!9Ut1HO?y+A7gP?LQ5 zUKkDCTxI#-hL30N($WyFeqoT(S20YoYJ=Qt?**hp?Kxdh3qxLVT`u)L5CV7ftv1O~ z+1Rwsyhpc;2^B?H7fj8$ill=6Cm0fezH9eU$&$>(jIz2M41O88F4^>?(&VR;kqK~n3Fl{sdZ+c36JWHyp zJFdO&tjkVOX{XPh1q}b4aqCEi9TWvOr4WaYW*3(i*%8Pc~MAIm)I?`1oh+ARR$uYgKN;CUPdq(#Aj&e&Gz)dC^ z+}bUpYCq?Rcv`&OuYj@k=9;zN-NM>^9YDwwp^xh|MJX&`cxuX(`oYVivf}Z==eS1hvxV zH_K4c&@-48VeB)p@7~YwOMHlSH~2kmNYRpZ4{sGDKB`kPs{zW%XwC8}s@E<4k zJrQ6WJ8D&1Q&g!Q!DbgNLC2?OvB3(hY;%bO^~qI)qswM!$``Xc`McTs7coG`vy(wH zP{FDxCdsF^CCHW@*w?IZ_OOd$#@(=^I>@z`N5U}bZbqdTzA0&=k3_)*go|@&x0i)B zBxJE^^YzntHT{4ECL38T#k%_SqI1)({7e!jMm&6NrNk^qVJ@~zo<|_A;;?3(gu%R6 zIved)5Xz-e4^=Tv9q@RYXkqvoB2B9L^vSKYQPC3dL7LextCxZf=un9n17qS0TF@`J zhi+vzG<(sv-Zto31o!46^?4a%21|~LmS41AbS=XCVf^7g;y7a%kixk+j6k@ln zn*a);f^Xh5kP`#Sk$`f1{Q|2zO{_L6Rtwhc=lE8KdiA-hK4-sKp59KsxI_@RfZHV+ z@7s3i+S{n-$!ixl`OnFs3dkCZ?S)&Ai&5agf>}aLNwg4)YmIA?x@BG9`}${ZCO~S|oKpJDeI-;~J!F zs#EG!m)thmSs8t?MQ?2R@98% z1-8&z4^$I|w5cfO&L8W;5;KtFd)p)c3+Q8zF04G^t-qg?15$gcCa?6iwmRhH%ZPR$ z)(t%!*gP4{BLa=Bf9B1ne_tHqtlZp`k(Z{b=IX3s;f7Ac{1qJk?d&)0{uVsW~ z&HaAY`)$);dr;+=GwC6quc@f|c7r$v7!tdAGVHTZ6lV+~*-+g1(``dAMgezP#`S)r zfB0F4EXofTxy>9*6_0XA^MkiV)msAaW2s253>`UikiimzS%$_V{qqmsOh0M2Ff|3L z8%w@Kc9Nkq6i)Vmy& z9qhkS7n=WE{&;I==W%qFpD$3Ee@~1z4~KHBDmRG3#aZ(DUUTgfIi_>Z|083}?OL z0#hoA#ZT9-Utj2rD=@y78=~Z-8q6l;^@%= zJOMveiyP43HEq;A{^R~ki`Q)8}Fb#dpGuzu98c}gP z`{`yerWWFfrq?eAD5RZ;xM^zXuIWjnHg&eu54w5tLiDY&eY?|HExP}RjTjdUR0Oq~ zB#Wy8CFTeH3sw#njP?nTJMCJj!rrpe@>@O!0$$xwL-01R|1*X}yD|Wv z(}Kvv%RtYLioc@N<<`dZ^$XO%-AiBO39Yy5w;`{hKmQ|qxUjd?wcfeF{cIlvlb*4o zO2gIzuGU+tPeAW*duyug3qn{nM;+jYP$B1fZM;A!dnJF93{6!@IT0-xl3|#vg{V&Ccm!ncc2gb|8o|= zPbE;tVJ{G*hB*390N}sB)_Whg_)r4D()>roLI17f`4f9}B#DXaT>l7;{-p!yX#l^R z6NMv~e@dobwgmrwF#Z1uO!>L}v$8H1upam|W{N!k;%bSP3%B6hDex^!$hn{Ge*Quy zTUuJ;#h;Adf}~FTngN=4_G;xU+-KZ))8Z&X=QW5a6p%Qj>&MytFpKyN!U3eI{mQt^ zx7aW_`_nES|Mip0+upCTfpFt_eHX9DV8Yy-Xbju6UxEKPtuq{vs@LB-OBQso4uuz# zQEnY<`I^ibar9^8?!9y7+_?tIRa_1o?R;iE!OHat8~?9-@{qp#exg*})KofAziy$6 zHC@KZ;jmlh2iZMKvdh0Y`=>AqTm!1rIX?N;S5kx}T!okMT)HghsmNck#2ntzq|=Z` zEofe~ra#F4_lo0FKTFH9vHxuD>2LiW7SJE0cy;UiSm*ey%tD`cce#SY{u|H!uP9ba zaY*MD*i{a_gg@DBv=84^NlQV1Xh&`Q6rBBaDHxkdMLVhuVO~Nk;T3*0)mduyz>KHd ze)=lFzp|H<3r+`PVq#8&D(WBb>&MV}%Wy&jbf%Dj7SWuX!NEVBd-@x{>c`0m2|RD# zzFjQK>#at8T`3z%z#jRvE&B}MYjm9)`itDO)0nBL5Y*`~y}iK4FG<+FT6qFTq;hU{ zb>J#4+?jS(Z`$h@HOv@tAwR0d2YP0M`2exXfA6!krDgPyX+Q6X=~b`AZm5`>e=xPM zsB{1bE+Zl`16;bT=tXX&YaQJ)%^-|i|On>SqQMx zmjE{BI7BSp&y18>GhSmL-#;1L@VG#95N9(VzR~ZbSq*N;X9{{uZldsH{JVFK zkh3A5pDa2Z+#HaRH2$*l>=}jIZlS{MhLfA=U#>Z|{9N7MGcCJIeO=pb#BNlW+`Sm{ z1e7}(?*CKa*+a9qOuxW&T+x9|af-@e4DCV@CAn8?O7 z1ivFDcK26wgI{$&?d+%p)xsKu)|Bj?n$YSz1{3xD8MZCbBLN^>f6Ehb>St5wy?2I( zN0s*@2=qaj>v(}E3TTZsH8)q87xx;s|1}-ec|@@(?hn*7$_N~bY&Ou5J$9(9>x9lz zu#8}op_7`NZ1qf7+Foz!|JsK9g-+#*4z#zon;9F|KCF-Y{N&Z0izwD*C7_On&J75L zAzq52`W&8#oBq#X{{0cevHW{AbVTpk#>VHBfenxG@m-jc#40}qJjRJ4;(Q)?C4HdB zG5@D>E5|}JlrXnBQ$e|bGe?iIu4pmHvV^~&+~fv$W@6>;$#(r`nE%&?oOsq4avnJ+f=E`i_Zjh7t9-IHZjxFw*g44?85A4Q+-5Mkdx)h z3=jC3^W*P)D&Mb$&Z_}6{xb4rn&87#pq@JCHK={Kb39Q!aNWa1hTS6ZS9~a-xP}o? z`gO;(=&G+6TP)B8CUer*-^UA%9^WlZU|0uw_PgkLT@o@peGjh3&38B&{%pDVmXy5D zmjFzExMO^Eww}P)U3!J!S~TH1Pe;%+MqioL(~;e{SuG7h|5_im@#BLUH+D2n18pK& zDQJ7fCUw+;2PAgKZ099AzT{OHM(S>oUmw_WJHRcQLekyPiY!pBekaELrh;?PN zsk&MhWQ6m`DFmH+C=PsOGtuWl%97<4_5arGzkcug9@U0>DgB*IU$_s%Q);8yrx?Smst%Yqy$KHx zhkiB_0KhjsRI^u9KZVdta-Rr&OWcg-vkA!yn(=uM6T*u6j z^DQ^TuKvj4tsM#rQ9t6&s44Bw7WzLiQJ=#9GgEhDgu$~u)0iJe0(AXVkCK-q+v#80 zF#dbq-v=t9WHgckUlAv6mF+cdefyiLfw8q?7UV4E=LY$=cfP;<@27mlgHozfQet#J zQs#fF!Owr?&jL&l)wcGgUy_EOSPB1DhS(Rtm>Jh&5~+V6!T+(G|H-KTg9^157=TpC zZI5BGe{f8Vy;22D^H*y>r_)dH=KBC;>3fOK%L1(bOug4%1M6JbQ}ebvjvRkT#UEud zP7}be3)5!*I=14U8CX>b7*pfzZN#scIln~IiB~{m8lGNd%l0#@{iWgl5@F-4LtC+J zp&eijW-gBE&}8!<-_GUPxCg?A7jmS9NnJZRYnOhIGu6As)+$}MKm-?SYsZ0 zh>T~B9Gs5vND3)`+kVaIF}UMyV%T7L>3d;c2`54fN}M{4>#ukI_Q~E3!IWD1a_}C} zQ$2#mI{oQ-*v4cyTb71bZwV1ZO)r7n)^ky@bvt#IM?oO!wFDnrv*p;AjBe>~_uu&I zUAl^FoA9Ap7xb1D6+ABOgXLNU&6FR(c1=@hUGv}(SsfqS=I;5@RNBxY1e$F5_&2e&OqRmrV8E1zAfo*J@`-aFZUdzWj^{|aIODlN2?}2dpZ9?h3?3k4oQhmG9)j^W-olkke zK#lezbsclG4T_?xkJFO9l`*N>nX4ghz6c;AA9km`zQZg*!^ zy&NwDu4$u@!!N(xg&2D?+ZAY_k!VFr^oE)UOr-FYGK1Gs}r88vQ-%`jc z&4Ps59(wtu_>noI7x6YOn4xfBL;jnWfc{0rTD}uHvHM9h82l0;^tAgj z@;$c#!AFlH;?5Bi7gy)^i~DpwQ*Rhqin9>4$YBhu2?Q1Yrm16E{x_FKcJy}0 z@s)Vho{?4ej?T`{3)3dooP2lf*n<&&>%-swJa*fE`eZjq=-lcjgn9DFu%I`i}9d=W3j~%G-kYTOHmefs?j=ZDPMd!aM|KEAg8K7vt zn1WtlkC>U*)N$H1dP|SN+j)q+mnZ%xT%~tYKt5D!)TK8~%(=`FHH>-D4L$F~*n8ep z*_m`7|1I|K^OwAk?@d8ykW6zMeb7_69c_6OcMJi4fIdz7#`|1*|B>@KZf8727ZcoO zQ7d;kIEZ2KKolH>rY++BJ1hOqy*Ifh{LPMag8&k~w?HKW>~5VMUY8Rh1Z%gh#$Wul z5`X?vmg_g2NaM41n>Tk6>YqExk!iv%GEYhd0t1B4|Bk!^TB6F`P1;XNCeNaGERQT~ z>mM1z>kAPE`B4kSir%l zhyh^KYT!}4*f*~Korl^sMoZVVbrzq79=4%Vopp9SEwzz9-0CieKMc_FrW0<^auf9O zX4kt#)|BJlC-Wb9{23+xnvxEe|M&%KOsr5J08{T0I75@`*eM95iaKfEi6v7brw;hH z=4lqAC$C9L9xs}-knv4>^tZnA{m-5Sd#y*N^Il0JI5 zN|x{tb9JFX+mKm&_bwc5hnZ5;~dK0uJpF%jV?~wR?w%;c8|Nc;xD(6PMjWeYNS=j`BmG-*-UgP`M&*&p{LeVC5KGKhyBHsPz5M z`Rf#@B=4oU$d4z*SXE`8@_obPV`uW8Q-trNRa@LuEOI-{I&kXmsLl6P`!Al@TS;1` z01HEJT=xS@jHCw z>iZv=#Y00aX=Y(#!Xkpd#czM;(OG37$G~}w?*kv3_1zDyblYWNKKnQ3`2%;GkI%09 zk(=MXtN5(q4#D z*BU5%_$}K1_?A{aFcyuW{)2z{j(@aN|BRDB3{pas?>B+^2ip79(l7#J)rHwu|Iw8G zwbXoP3g9Gdi>wQOOs+%6bn1Yyc-)`f{k|9fJ{w}yfNH@x-XHCk-yV!d2N;V|0Gjnr zP`?+r3SA&6Blh>T=bKs@Q_>!qg-v`G7XBxwF9F=vno-n$;zt?&%}M4O17k5%m3{c* z8|(p|sd5AHO6S-|-<{%L!kBMV`r*N!ffpF-856SqHy8GOA2=fifS6|-^fKRZopOrK zn~kx;$888)1p5Z~yYljoxwj!<4?ONd^|b~6RQ>Z4585mAyNf?P&Eua#t0@QW3JU2A zI37Sc9`5bK(>`X~s1vkCpJ+thPcoN(V zU^k4}0^%QhW-KrMHiXk%ZQWD+1Y!VJM_JYISE+PC=cAepQQ{zzai0W>aP~Ba<`|IQk8#own0} z3wW73b_3$LeBHUeiW=F%k>zd~()KEGdF7XHq~EoZznUz0@@0Q<{8PO($BC9-TIE>0=f^|XS-H%wex|3_&?+V&_IQ8L?}*cV&KT^?jS8r1S_;9vF$7K zJULQO5NGT`36-_Yav;LMG7Y2cLMiae&2S5oMzr_EuQhhKD4*sODf8>5Mv-B5Z34St zH9L0wE!<|??o`AjL^w^!5oNZ@W7ncH+aRsWo=Ml?CsaD0+CZNMuI=`9eX`KJh;cmk zjP@k3=RFSZ^#3iD{I|gAyxrS5oeVnXMQChW?hynlxoWoD8y%8gkb?!3t2`vWCask| zJ!a55U_?@Ed{B8Vxk~a$=X*5&By+y3C;wMg&`mb@>8DT5HxP<&a^yuiX05I>WTxbn zWq^75gdNG>q>* z-&8xQfIb)ttCb`3RCqmTtdUyr5o;i9>?kHbuX(3J*^brRLW$$OL`oaBr8}ioWRCOe zM~EdL@kf=bT)Dn#jwE*2xSmaseaGDdYD11*|F~Pb8RAu{nA;xZD>%wCYQS0)zOsoO zFtvvM;dD{JriAvfd7{{U$5eswJoCBF*cn2RcPb#RwZ#Nu2*>^nB zv>QHRYq|`^R=7&KSr9GwGuLz)Yr>DSUjGEY2CK-F-=#(<>A!m+Cc0u+g!I;6rO_m+ zFLi|PWAvp}o1WQkGK_EM<}zR1eq&}gUdoSgbK5jvr5YiBzLiJ54U3!R|JVU1+2)d>*+Gz}6SILSKUS z1>(cGdTZ|1+M^jALDVB6lj51GR@Yx`7|9HZRJ>k7eY9;Wu!TPT;021PR$-1*yQ$w% z{t)ct#7}gr5{7I9%*8>%r&y|8E^-!irKRCKlOUvFM3a!WrI*Zy&zrWD+@enL?YBAZ zmWJtKPz#fq5iVSGKRWM!-@=e9Jt`9Mvl~)1fkodE%M}WwG{y ztXiURvO9n_?cU3t=f5ga74s;9^EB|CQxEs=tV%vD@Bwo#$j16Fj~{VFJ~UIN>UKL? z+Lks9?m%fs7;o_X7m@QE= z$s`SD7xhkDG&{~MEZ26tb(t`2ThynOsTMeDlji@f{R3NjgE++6sk#2*zG=5|iVbFO z*wU1xwD}fE2WV~4LKe5(D=Ft`UNw%$5MlbL!Fs0uH1b2UgD+VwXpM7t_~dD`LK9bm;YNZ_M$og>d%;sB3NI_-@*g za+N19^6NG$Ui0iqrkm0ZQ;5%iD~i!tL3pY@fzikRJ?WC2x4~z++Vf|-@Z23 zv|su94jBfI!?B0DpM}}Hp&8$uw#Czm<400b+CU_w#+4l?c(X1f56iVV9kh=*%l~T z+z>hbvEs)7|KCUH30Io+aRg#r$vEQ>U^6s=*T#CgKBy_c`iA55vSLt?nASOleK0zj z`PUm)80yLEKFn%eCntANddxM5gPR*70w4W0HK{(KCHm}5WNMQ^S_uQnzCuQ7Gjr?B zf;zh$C>)Vc1P{K>Yxspslc}ARzg4Uf*v^T_->NuL2E*B)U4#O#+yW&BzCJ8%A}=HZ z#-;L(Jk)ks7NM^qce!i) zWC0&$?Pf(1qVwoD;@XwJPwyX0UVr;zEn6A#ezl#4G{-BUG;-Q z-`v_d9+5aRifFPy4BXy$u%AHl3Hi`}ry|+wJxMIVX&mxp_Z?_}Sv?I9RQb(^u$PQ+ zg;_RFvt%S$SvB*k=W*@f2V{UPTR?`RKt|N%V@*zE1&B<}eUPD+B>+jzj`OiY81HtO z>i9ZJsF$c?CTSB+^v@g?y`qjHk=fVQTFYJ3YL;H+5I$mrKS0Kii*8&*!jum#{IIpR zFx)dYXOS;#B=P+N4)rxud33F6FxS!kim8l0v&AcJ7~el%$QlGReOG83^Qs?(zvlKw zUY;+l(A+9lV~6Dv9WRNG#UnVE%#ZmH?=_||=O@!Yx463VfVtQAQovN?v=)VT zcqR4Lh@B!oiI^h}+f%OdB*LGbH6~|O!A`yhnaz@j%q+66{a0i?GJGg}Hb`>zN0&pZ znP<=^pQQVZdW=W}_ zdLGz8*>LpS=HQTHm4}x%fqY~e<5f&m{G~3z17-WRg^o(iJbyO_R*W6QJ1a-b#o#}H z4I9LpXvVcYt{Yf$kjkxY*wHvxp9f6knV_TF?p)0kmy>K>!U?UeAK^vE>)%!F3eubE z{Xguzc|6qX`#&C%l0uRsrgBP=RJN=mii%L#vW=isZ#n{3^#%b)>W4#5wxOI5F!7)`l(v^>wEhEHwaTnoYc7EE(U zKlvBXbT0MTZMwfBb9Pws5U2|{*K3@u?K*wmwfYL`ZF$XGX8X+kT!FcuGEUiIqy!x; zZjV$m8xfrWz9h>OGdnlcQ_R8V(B&g-z-DWw++dH+j=g2hHaOpsh$Q)b%Q27yml@FD z)W-;l=vQp1n(D4EXUs-wAHL3jPr{vBgETSujGWG*nni41#>a#f6*r!Uoa++uX4$2( z)%(qM5plK&r*I zLPdAGTZW4kZfr$ zi6>L>ZE`)!ay&X{+N?3Q^R~AZ4yyI;tmX@Ud(FLTn=8v+Ha2(lwp9TsI%W4xjnuTx zZQ~KIVP|UzQ*h^GLqQqO+-`&e-rfO;KEPHVo*Jqi<|3mWVt*w`X05Th*ryt1saCg` zoyWNOh$KUUlJO;BI3<2WLeagIgj@~fomQPSm)P>QO-0`a1r>h|L?98hNUccD1i)95 z4w2)ab7U5sLgtADVy5)&jV1j^u0Ys6FV ztrK+MrW;;)@C7mVIqV@8y=et;3MWY2#lmY5$B`0pU+CeHP1geq zCVG7QLTazY*o|8Z%iehc^B!&1O6F_roGoeK{k?}Qgb@+VEWumXR$7p>)Z-{W8_zf| zHs$vhYgNNNt7_wN_Bl$0?Js}(JucT=sKywIPQd%=cBqbw`&1HcN6sxNZD8rJMj1k9 zoqr?_Gkb#Ie;~xp|12}~a#FZbj!?kE&9(r-2Z20LyU2jz7iK^ty354|3Gni|V|r^- z&ajr!AW+Pqc}xz2m6E(8YcwQyY;R^N&>=zKYGYhU(Q-AdG9jG0@Q`<@g--JgRh~1> zK15|4JUeLLn_%^^;)dF5{?YPvvrTM}b^}}d3-ZQHu8~U+N=0OU8wsfcr zMgq%Jk7k{QdF=6a&Sou{(eO*sQiDBZ?eRosct~x+Eh-OqB%I8TMqBQqWusWj9Z?28 zEcCh`z1P(j97!s7NoBjVF4!gw8%_3)woiC_{<0blD-ORwz3CN`wsJEGmV8ynHGlld zG{CubTD$^a`0}%FUMfpMX2g@~2kQ+#Yn`-o^Yv13{+hefz2qcuB;@aBOy4?MLwQay zr|;dc%{^{W$Ca&VUI9LDCRsWa)rFLXYq&A>6AcTMX_ymN2S{`k!cw*a z6DODD6qo$HcsBq;{kzL7t3{u{Pd6+ro$a&B>CzSrP28lyB;n3I*8@~kVQBMdmRGED>p;B!ur_*O0^Kfk>cKf zoBb^$wX5W8sf!317l z648k&I4NDp5-kG)UoTaWnPIT}{v`2E_O-}WgMAtbN~e<|3AZQU%}o?cvG##4q@3te z1G81e&Lcz5ey&Jdk0G%gDY22xH*Cxd1dMe!Wf)rvzQ1=m@CHR3J=fZMieb zF8B)FWK3-BarH1#0z*#R6WMH> zy-JnHJo^!m#Ov3ZXxp2dbcDr1>c6c?fD*dMv2)pL!8r^G@Ni~}f)pro{JPda=k1|>_OkJ1NI&XZjt zKlvUfIzwTo6RKDDcQ#uiWSw@Vt@aKDL|5Ke+)E>>kzE6|-BUa|_(n^ZlH%$}f5{e@ z8&71(%|N|vqjC1v6*rtz60_pf%*Nn2lChKa?Q$1x0)kY zEPu{DjU9hpWb|-LcdCeDC-_P@gzPZy_jX94?=Kyhr!ItQj3j@-b!qkNZo=Tq(FIyb(x?ry>L$P4 zGk3;8PE?wkF!<~sh$z`X%IT(Ge^s1&V*z77TTbrMK6njdAn!(mu)51e{SGzTB#GGO z+O}TZd1|hS=V=24Qx&*IFSU5NP#7fg;4?x2rma!E8Hf8h9JaEj;!0mh^|m{lDGPZA z!}$YDT(*S5w@nE~>({(U+8wGKu`DWtR^=fBD;1_PSKRn0OYb*jBgCtasW9HwEK+9ot03LHlnOUl{0u_-npgW(zLl}BDbq-22et(8$>wm9 zFkyz6v?Ei&lh}$A?FPL>7v&-|PC1`Vu$N5A@B~4AP7-my9c)~;_^RpoR3~{me9`fO z)00JEqMe1bSR@Ae8i^G%F=rdG?E#Q=)j1;+77<$- zu4C74Ut54$%t0+xUxOyMlnJJE!hD><-yGB{rQW-;3wmo4aK|N7)&zxq(!u9xz45MB zAAC-%>BxuPmFXC-Yho$iv;qBqceHrVImdcpYw@zmoKqP0W+E6R0xv-^``accrL7LE zw&B;|>%ZZ6nOqF?zi@oxrO0f#33%!Cde$zcaJ6dL(r$&f+u@}U%de2xdzx3-6a7(y znwLcE-Xa-fzIZY6`uRAif&EfMf=MrCL*U zl~E$%&*7R&z}j-jO=KPH;V_$13Z5qtm*NbAv0hLh9aagw&n&4PzQt}{Uki8l^(`PW z27R8D!ps-%LAR068;_&FE76->FvSKIZo~};Z!p-rHc36uHe-$o#D*wNne?u>T=6(= z8dLh_yqZ~d^d9?jG*;6Nd?543`gMQrFR8eG$SILi!Bdqp4W2U$rqMswG!^(dQjJpH z|6kZVgTN&rS{?k855kK$^K*b!eZjodNz|d)8U^BD+XweAFA0b*g|vcQ;*MRrw&lES z@5RN=kpi~i$PlW{6H) z@vnfkXaRL+ZEr-{I_k;kox#~tThr`K_ zbKRv(m(HPY>T1m~hZv!&wF9&-ceJ~_VZ5Z=zJ!%lAyx@Q8n!+zFzwZ`C6ufTzYc|2 zB=Ii~B}j11gpSvo*Fn=3ZTkaABPT>_04+k$e0VL0;(z64a;sWxl2a0@X-+U1qA{I= zNv`a#aq%=o-oQ$K?;-oYEUY;w|JFS-*RM)(<7d!tXGd$(CFfBx1py%<}Pef7_2c>ZSq$XO8g%&TaPPZZw~I z#(l~opOT0J4OD?Cul6GIWLd!sx)|rUza!o!53?Y1(-G2%C(?aH!t-p5McaXI@K7zx z<)4GALKP^EOC~`>tFG_{fWI&}M^cWRHwINt@dr>`QmHEfp_YegxM{Ui>eO{4Wp>A+ zXg3n)56?8ypv-~u^E5)@>S%KU#(}iFUaZFCQpo5_F2X{drN7*EtVc$Z1s6@0x%1c( z#-&axVo@+-dYEzb1{Z}>tu%H+7xx{^9q$zQOlUJ@dvEKbi!lRo)Wy#3hbx!6$|=qf z5s0=e>`R;zOL~Edn`BwO7vHSh9Z&}M0*;uHF7AgO$X+Wg`oyfXpv+hc&RV&`Mtt3q ze4H;?2Cd>^W$W4-o>N`Xm*5t0Uw(+4QG*_! z*ZxX*4T2I{L+r+TZ41YLy~TVKFxRw24KwaOZQJQ}FFQc)Ia(EsA&tRY12x`)KwbPS z!Q`i#6uuGPDj%b#BWrKJO_BdLs3;uf-FMN!QsW_2BnULIBJdbkBL@O!sj(r*cD_~O z$8}jT#jSSdX`eIfElsOFEtt#h9XlafhYSn6-A!8-|Z(Hfd_C4wxDM<_* zei2So(A=|T7z^I79WnQmhbHt=fnw{oZKjNBu=H*gjJ}u7zo2kx z$=5Cbcc7q)<+_rrU@XV8N^sf23i90EeL{Jhe;HJHUMKkuS`o*(0DBYz^7Il|wNHL1 z)9kaXAlZrXA%=BQkSO13Uy(=UzQ$fNByi=vr-m|{>|B#siaL(`S!SI5QAIFl(zFpB za>B#aNcrZ^6^eBxayXS@OXsyYSF!n)R6jd&`>s05QuA<^+(Guv*wToeK_Y~S=KQfv{L}p5*izkuYP!n7OK z_Bc zR_tbS5*Ajn?eVJK{ncM3BiT<#LV76_hEz|f{?3?o&yTrYb4z%I7ZtPE98Ldw&gP0Cw zREq(PU;WjSByHV3%#wW~hu|wcx!7ydq0&4HqBQjS2JN%5@f@ynrF1~UrzD(z4l^j5 z$5vHL1^Fg;$(WQNgWWp_pBvQBRf{No9A>jw@c~>VV*L>jB|;rM@#bmli-T?)fGIO5 z=u9ttqZ7whR<3#?=rlm?E&O-`vGj0V(70+c1<>BX&-q!y%DZ|UX(~su!r;+sU@2EG z&D9%J=n%ps-q$zmp#5l^?_jc7C{|D==~(PMG!4RB=~DcWJzwQdc(Ntjhrs^4#vZ2yvQ)d zIjGiN;n6xAt}!KtG+^L>Nw-J>qu7!RtwsKag1crGR)UW}c^j5y$cf;%6#jLb6E98U zFewCWT*O{sMZpt2P|2A?md}~`v%1^9qJt0VZE%jm;@r%kr%v@ZsgAeam{;6@*ZQ2s zwZ)64-vM;!z#rA38-V$cfk^v*{_Umr0=TXwYSh!jrj z{`ymT9+l7)3}r?~A-W2g4%_G&87e9j3OuyZ@cQX$VhSL`04Av5JOMw3m1rTeCJ`4k zgDo53RNu;$^PQ#lY3AE}1gg(IN6R!g`YgL z+&;=_t!6jruUO4;C-D)@h#npfB!jtwOTNyiURy*#6dP+*Oze=?@uTk9B0Usm&LFOB z#gEQb*dgQf)Z)`i@8J(9I#ROWk9ZynneEj-@Q z9AbBiC=tis4r+H`UW%MnaEYqbB_wyV%~JLOUnBZ2lhYSMYR@J+WzoFmPHdQ~$Uj(j zD|rxZ+hrZYKcjF;8I_}&0_|(rFsGCX)L~q*=zYihk@6&&EQ9hE35z?637~ zeyU|EszBCxAim2@Buv)4T$d(u)(oxPOmsca-^5d`deOa|<_vS*kG4~6j-&JscD}E- z$vk4;QkCf=kgkT2Gu*Xyg&1Pjq$=x=?OzO-gXYsnRK^Fs{@~XkSu2ayL2`%_e>;qS zn-GU<$aqIoEGJ7Or0npE&~bi;fSjA^5isR6GHfI!F)T||2y`#R(=3OeIDS*CQMR@! z*oqG4j2zFiy|r|e8lv{9h`%1}%>cmUr+NboLRqLNG{a9L2<5>fflaxV4LQZrZW^HW z6&FR|Ih*B%LHf>S=DXk4Y*_U|JhO^FPxGiu)Ab5>QA?gy4^`n=3wDK)d~2_VuO_y6 zq4uBAe14uTP|V(73IpE|E9F$}=HFgIS42M+V1nACx$L`4SuM*;0JtRgDPip6lUiY9UsF2DpIOZJenW$C}AhKH^&1X!qe} zNU6GL0#NPOZMY+>(@>CcdVC427KFFEX}xeRIh^$wadj3VqE;Zmi_a_`_Z!EY=x;JY zsg}&wc7mS*+)i=|7BZtCr!2Q)Vz<}M?Zf;e%;MZT_dM$ws`2Q(0{7U_LS+*Zz-UgGF%RGYX8T$PYN!LZT>z9jTdKawA^?OW%-BGFDHY4Mf1Jjys1 z{YGR$!+-IfX2dK=LujowubTBxU>UcGAzxf>Cww;I{i3L*{hIP@F37-_p&ZX&4Cta7 z%}tY9&9-$Jth0bHMLkmG9NSB~pe>B)T?TxK9|+8xTWu|hB8syJq4DY-os^drAnLV7 zqQMasl_(schRUx@)9aUeN?Un0Q?Zz%;;Ieyoenb`@{-w(z3a6${dB>9KD3cdY^7tV zPGUXXK_q=-zRM)Hl;eQ%P6Jz2l7q-2XJ8oA$DaX@E zq8SY&wL=Q>Y-A!Vv#a`9aT%Z5FpIwT#ug+Vppfnq<62aLwtsC>+6szOaC=OKsFtZ} z3|eq8uf&44)BPTPR@~qm0oJ#X_0z~p9ht*<-gIxzZKji}?l6>DH~m726#N%@g-^#m z&&oMH-UgGo{YyD#pGRA4hXs17oK8mc-ES+ER;N2&7-d5&wuH{w2j1%|lP590vNDi%Yhap$AqE}${+rCMk9 zsL|xqyNQrpwR44gGd^ujCtuyKeIdzz>9#s%P@ford>`1nSxeFU$;5T@5(kz89$(Ff zJLP@c1PY8hOv`m%c3TmREGP_3hM_9@mQ)pWKr)peKP17?3d2?&f=+67!IqFrELLU8UIq8}V)=`%@DzF`E4>BAwF<3rW7Z#n|rI zxnE^^5&NSno+oWRdGR@FxWaJ(IOncy#hiY&*4#8u&vp>A|H->cp<6judSb&qw6=S+F4 zK!-PrGX6MgmrxVYFXSf^AI?p5QK4>jmd~Q_A#VfTZR_P2PH_pf8q^31QF;f|qjtDx zpJG_J&ARN!)R#v2o}LN>xdYMZJOgU~-sb-b<<}L9ajwph4exMowaC;-7cMGOa16TI zNGl~sw0B;7c2(at0q|EJ0F4v zsJ!cGZw}Q~lPqH2Zk#L;X3x6`H=nxrwyO>Xd;fDzZ@bW@)o&mM-Ke?&s z8^Rr!BjakA-8d7lDO{;xGgI*u{MN~-FLxSeIq77e>s#8f@%FZjF5?UB8I88gA7wfDT_z{fI5nj`j;>F(gpbIW zQt55tt$?;vnD60NpxU-sEK0ds9OT8{aJayQAX&vXF2a1&(`PiYEONE0fdt?V9Du zcPD;-UqAjwT|UQB(WIu3e`1rOhd9S+-1~a={;%Eth^|ZwaH`JO5GSo4-`npcy*hp& zjyvLddWZiz4ej3v!+VKykJ_uYNa`QhqysOfVICQFQHl2_PeFeBdIgE&9m>b81pk3e z7IJT`Qcne95}#DQX%Ve+|3+{YRdu#3yteQejgqf2uCO0_SgzG?Obcf)PmHK}Q?qCM z|JZ)pB?p!lWyo2{LGK5>9&Fp?1nYs4FK$ej_R9 z>U{Qjc_SmL()r!pggoESuCx7Q@xjL!UJTxa6C-QnvLQ;|) zui>pHfBX{XirMJ0QM-MJ>fAAfli17qe-IdiOKks5TnwX+rx5KYIEL*Y2{roNnND=_ zx0k;2U%1e296dgCZ~jNAHRSis*FN-sFMqIc%9I{>`y~`6_YUWzn)$8&@qEaU+66at z9$K@b=i*fU{Q0Cmw)=Mkx3x<5Hyth!+kL?)K*icgCLQbzQKCgwad#a0=68ZXsmj5J zT@(PZ0}GbKwHZ1f=m%BK;o%OY>R@f(-gw7=_0aa1DK6Cf2Z%J-oY5N}{(^1{Q zxkv7zId`nH9mKLAeE583-;X`c=5RMe?ttA_6>z5GVta0nRrS$#V2`}uRiu8pSJ36^ zZqDT9-CfzO74wZKO!B}Xe&pig{MkGDGbG31Ka3P_k zyUR8*>2zY9T7xdwF;y-UW`W+}S9&$=i1O8#h;_ z=ist&=QopT(Sz^Ff5Fpp04RD!qhB&Yk^h?|{v8>VTR9AE-Ei_e_Ac%)^F@PjH0zF? z`aUf;75(%fk)Gx1&qj%V@Skzc59iKCam;oa{7yOKmj)`IlS%`vC(#OjdhQPbqTl`H zcl=TKWb11a9rQluGSM4g`^R&$)55;J!h#HIB@9-AnFMI>hWU!hCuRTs=7lP1xqW+` z&Oj%V6Gquy@BCT#1a+1eRfal@({j)c{NPS;# zgAH5l16my}9ABBPRHrmF z|LwIpz*Ps&Q|#5wjw0(DXM9=sJJAQDvKv6r3njqzT_yV3)=92^#QeWw7D85Y+-)4< zg)<0kc6tIT=(u(8JFxG3!91EG=IB5Hr>j-SAK+OcsvKs<#2Ngdf~pFqC46s)ajqom zx4#WOdW^!p%<*4O-WU?}Z##f~upm=t&HLJ42d;fkY2?XJn~byz_^jrJD~COGZ%1}= zkK#v}15CZ1c{>RXyH@^^+c!AF^SZ++_J@?1p_ZQCSU~Nx_i${t4P6A^UlJd4+X4Oy z7E#esHu|IS&YAxtfzy%QVk>7Yl8Hku5Q9JAvg6;WeN?28L$yQ7HTTpe0b09RWl{QF zt+wY&{vbXn+{-QA=@pHL&Ys3T9+>Y*&|dGjV|VU(7uN2{KA^xRTtDzd#K#Ly#jdHfD9R|Npf@JQGma|^}h7OH? z&zI=@IqTlwt4*Wr7uutfTXa|pq1sZ4qMs0&V);Zb1GgCm4i0Ksp1E`Z_TkSxJ_}A> z*{Cc!SxclxByYWRpKd&7O-F6WW>=S%o-`b2Z~T(zZDjPt@R{_%TN6Wi~{Ak&_`zO}1*H*t<+hVIf9Y|t z82)%kGb0REe4sn_0>v!o!5_rab(cksi{)Rp&_Snm*WRaOM2nAYRQp^*Yvfj#Uql1r z_W_ZSWYH<`PZ29~m@9dWIn2Q}ItRJ` zI=KmNwoJXAt;uP8#eL8F)7-}W;?m5S`J;A>cbq%|e(me>Ur+VBb3LpZ`qDHn^4}&p z|IZNX#146vW2Z&t+1%S^g;$Qywo^I^{>iK_$bIWn>{XM6Z|5rg>z#XZ^RAS&vUdD3 z@%*pA;cuzWxog~XByZG(BQlGdsAWD8W-*U9<6r;skNF%WX(2C{qXXYjkf?x%Gey@4 z=+At;pYGu?5o+qz-|?-@;+>j{;>&_Gd)76|LL1C@v};YI8x7DZyZHZ7yBwpIzW?R| z_&2H^BXn-wkSwjDwlT{$HlC(2eeti=kZY@PSY5+r0TaeUrqlh<_~fu#A?~{m(*`$Q z#T@xDdHt(+cW8Ax?^LWecKN`+*}(sM+vi?z({o3$`19iga$q%@Mgq*Dmgx0P-?Nz& zgNa*Rm$3765@gH^3ZV=)F@uUch@9zZN#%}zJ+^lud}klLo>eE2dH#EzCbX%`d%%uQ zXP&iFGV)QCA~#JiF8(hE=}oj9>7L(7esqrknn6kFv+s)hrATzPgg=sBEkxO{kK8Ad zpzI@LN@4TV`%)7f_WS7L%@KcP-=HiVX8e=^zGBEf$FC&>o|gzMLD zx}cJPcSe{ak{>(I&z0g6?bxX*K`ZtA7Xa?QAHT=F{M8Eo+g|Hh_C_Jv8>X`U((=O} z$(iPwVwdd?(kJ5D%05=yHk6Yq zE3OJyrW^7Rt{&PKebddb)v+jH!LC>K03{!f_s;b?lY@CzRI!Upiu7*_d1+^5TbQ3O zFBd0A%3UAioe}NDQc)>VhDTq{*}J*9m6f4T(+|aE{ldgWFXckKN&KHLdi>Et2xseA>~eOBEL-B8ta{&9_Sr& zo}Nx`W_{s*c;Buvpy3p#k`~0fA^ncz{n7KqrM@HA1e2H4nAc9m`@xqN(A~S6M0PA) zi_**%s?5r>k{$ZGUhE-S=2dd#POYEYaOYcX=gV5;y5J(KzRDukBx=n7Zy9W&X7#-F z=W|U42Kni=SJN29V~L4n_uGABT}@vr?)>u|3F@YjGd9OQ`YVi#UZp?Eryr+4t}IJFBdk+L#c#SYh5@NA#x~{J#q5x!kK-SewiZMpsA8eczn^o?Y1J| z9(FVNp;$^Onl_Fdj$2ZVfx_J+jhdzti!_~`(xnH+2V8g(*P!Mluf5#e2Nkp#m(qOh z_bAJu0g_T5*(+$Oo?*uIedfYD1c%`SKA=FkZfWs(D<&13QiiM{KhdIZyu76!1Yd91 zi5PsZ%b~|&0<3OT3k^)i=IFpdvCI`O<_9fOW2Ltgtwi;h=g@2$W|@H9%2RZ=jyQx_h5IGl3XbUwe~gy7y+Hd9Q6VYNqvvZB0k{-mmpqP z%q5uGsUa2kiXocD-F=X)Nuw0KWvWq}2?Q z&&T*jM)pM?AB5kJkBaF^-oQwooGoUJuZ$j$3^@DZV_GhK}f1v+x;(dC{ zg?BwJn*U=&>wkNo|0~uy9?>l5wehTLP;+P4i0nmo8|4^7n!SS|$WGKBolk%3$)c61 z77~-srexy@(J6N0fkH;}<*`rG zL7z8#D)0ndyfv3DiS8_gM(mge!kqMD0l(^K9>4%$G%?esU7Dz}GEcW9iE{J9!I!E% zbA}Rhzj(a)n5^NeKHBWG)_f`y>KfXvZxD&6!06R!hjj6EmKGNHVNz0nug}-HIh>n` zFM+#shI;rwap1SLVcey)Oet|4I1rYs$v{Nue+vC-M?`b#+;2kn>aEXq=;rOIE zdRu?)YwHe?&DH6y<))4uNfpZCF4Nk(A7O^SI_l{~3}AXWW1O1POaez95y8eoLyDQo zZFGFeE18#oJW62~UMQZm__f>{i zq`N_NbZqo6fnCBr*>~o6yj&To$i<7n@Sraw5tK%?$>#a%j11@M z5PT%n?d1PZ%>QBZ%VJsVuMoByi+BqOAX_ubXbB@0KEiZAZAU7OVhb$h>2ddw*N z&COLo7dpID?6o*08LMXSm4A=SjmvU-{b&29%Z?jKM(fMx-fXR|QkS12ob`W-9>9z^ zy?OTOtF}{U#jnrWS{9>rLn}~4w{Dd94vh3V*)P|{4^{GtYFHH(=V0G{xtMwRNJ=5O zOhp4u_B+?;Q|X@T=0;wV5fjv!!Q<~=?P#|KtGIo>Utr%?Tv&L!q=Yz!Ec$beTRpwi z6%+Mm(zR<5_)p}+HtT!-EKJwMUroK1g&I%m zQ73h&!txa6NEewv+nC{uj40;X=dAqs^u^FpRGzbWe4wV2%D}avm{&u0ICi`8XrxW$ zee;_KIm?-5&g|9Lrlsn(??V1U6$V^_6UgJC=!)#iPO8!>MF&bta$j%5+!xNe}=_%-a?UW_{MF5223d97K!fI(a zx7gT_+A=B1e@8ejuB|abmrCC+_hp|kloO~0z9l5lBrcwfD=sK7mNb*@%cbM8s_(9=^~hO*d&yD>kpyMd#VHq@G{UF|FTlm-XehX%;6@p77e z&1IV5|HHh$)ylfD?R|X2rE+2{0b`~GHwF!`LytIm8DI3c0_s+nuQZ09fuC|Cf6_Us zDRoVm>27$`>?^_40e#ed*Am15xX@4Xmqvh)-zQ6{m@vK#o4u26m_QOVUsR&~c-S}bsT6OXDB9OS;qa#cY+Bh1PZRg}| zdKwMWk^%^F4i%f74$kv(%UGv!KtShPaaA-@p5=1wx~cj;&ipW#=Duv!mziyN&WA7iRDKj`C-2&Q^W)u< zQ}iAlCSZKEPp9(rA{nCx>;p(z4wfepNuS`uSWoQkp$h2x;PyI1i|$@D}`skez~wV-Za{2UmpqJK*QHvxCw7DY1Gt*;K*$;>pvSWv)%l z8V5?OY=<>?cjRbgqgI#{On_J^4sWq|wXd^vc(}lFf7{ru#Gnag_j&5tgQ9_B{h-j$ zUl^u-1bV+Vb91BpMf8fe+UtED*L{eEwSYi>fO?g~1bsvjfOn^is)tzilc|524o;+P zKS+L4f}R7=X&(BZFYq#Q0e=xg~e?M)i(_6xa#=%5eoTC}rhjSfDvpmXY- zz25`#s`su2IU4F-B$Jr1@-oSeaaJd(N<%uR8thl$-A2vIOJ>rzr@M60een%90{vS(Sg`B*~1qu66wRm zsG_@K3U*~OU5F7V?2bd7eF#g9J~18JAb>0N7pyiZ|B$cM>jH&p?Ta`8szK4>A{cY^9=RO_}8&}mk&S)tCpL}B! zX&PXU_ww)*3 zY=EG~r*x3p)l#ctFN^9~u&0Ery)s~z+s{i%qoajFfi-cLw&M_L$}W<4k41>d@ej|h zV^vjsUf;li=jIwZz$u`v*#KSKqjGDA@&_TPmu0-Ib$>uP$uIDx;T4s{uV6h~eNNLY zmw*A4{*_Nt??j*2pPn>M%Ys4fTC%H3k_R&GEibH;O{Uckd+J(^Q_iSs-d4~iwyzLH zcg2W7SDjX$!8E1H^M)4)OE-W@{TzreD{5nFKQK6xXZBU}`J+?9hR5ZxNZ$f9S|KPn z36>IkIP6^+s5f}FS>>Kv>sOy3gNTOZ^l9j(iq+V(-%c-zke#g{+S8&Qopk z2c-_om%EoqzwOf2wy_y0OGVMEB$6av_jaYJ*QG&b{Gw`ti;+67&5u&Bkn1Wvit{z3H!ne}dny{pl{$Z&>^PF|00|5n`1SE^t8z10$2+w zQ*h27i5TU7Bq*@)&|gE;o$NN$nwaR~4;>p2b%>RjQc=zbtB_L2I|5!U`dGjGJHGy<56(Ow%3a zYUGr*B?t@#?^gvp8nv*8VvALHhf9)gw&fnGXE17FPIwV_8fti8#Xn%eBG33i6n;Ie zc}{3ly_F@cEeak>h}77L%K`T2cx z3#}&KRw^vIb5b*q+`ce|(@G_jv?-j*AGAmlYI<*Tc=N_|dYTt%YG%X83hXx0{QjN} zmS^Kc^pXPz{fVl@0eT{|nTNt(%^$gaNjJ=)cygJtMhnp@( z9mQPY2))WY_e4n)5=EiZO;8ikbR|;$M8O{q$+}RPJeHTuT1s3U6n%X#1 zw9~}Dj*KXB3L|6>-t648Rde39_?Hb#{m@Gt^6+y7(jd{c02Q( zhTs#rz}n88JIQe78e-_v*LU0-27qZ#nFE^ppResy&~(GH<}eKc%cw-Lixu~#T@ut# z^Sw=g!k`IgsNY~ylRmy2P0y8m)$OuFEf||?^kRf&|EuNYdiG94s4K?HXb{B43pSi2 zl&aEbc0p&hDb%bcgIFPh&6OoM`E18s_X-i1q9Akll~G`}Dv`Y1!QqI3j`B8EEeJZp>Qr2{OjN z^vDa#)b5plQ3fMtu+&Y}{mNk`kk$(nyePR_cFTl)mlpAT^s{G!Zt4i=P&XAV|597@ z@P2VAB?a|~hr33*Vyi8}?m5$1i=)yqhK`P~yb+l!!|FK1W${?y)iGo|9h^4tfbgDgFy9mEtc zK*24-$I-ihKwAzD6vV_22yb5B8DtgW?$;Qp1PS4A@yWjabJ~!Z_2~<1&Uaz4XVM?hGTuPUzAfACzA|Bg0D>hN^bXHs$NI%xJb}y6A8aoV zQcJ)}kl<=N)V+o|7o5lC^SF`M$vS@5OET#KizvVO=rd_dIMEH%^K6AVkUIg(eX_Mr zjH@Dl7qdHq^~>I3)-c9?=XpxkDf{c9Z-14kq9BJix>lC!X*ASl=RG7{u5uhEaKtDV zAvv@g!YsA)@J{Vg*C6x#){r`;w0rHss6B*qRANAFbsE7KRq;(a z@U(xi>Oe#S|GCC~6X1aUQ?X0iFYZ~ixRf>Ky*mpIBWRQCSyhi_nDGe_uP6{(Q;~l{2+XH82w5)n1zrA(nk9(zi0ioi&=P zpbdUA@X>#M)ZH*s`9pMbGdt#Je-{$Xa=iog@EB7un}7E;Rj1(^bI$)yqV+_ZtSS9^ z^_yv+`xp(wa0~lv+sInE(s)YVKu?)*3)*!$MVX!~)21?hvuL*P z|3?~hP$B&EWPa5QW@}Bim+Ua8tTMEHpO4E+31NCmbdzrhL$iw@y-m{n3a%1x_|)cmu) zEvXMWn+L1vcb8oeO|n;|k7p!|*(#2h;>R(2JK-p#BRaU?;C(9XTq5tkkJA73sc}M> zqsu-F{&C8aUH)dv5pNQpD0i}=oxy7FDAb)w~03YkMlR z`h#j{`d&gh6K6OjNx!G}=S_gr_ncV1BGppH-5{pq#(2d|L)ljO*xg#vO}IPOK$UWb zvEF3nU7VZ&us3kkBV!#ri2B;HlgNVMViyOtZ9PO#UO_?L?bycdCHz7e7!mySYhqkY zdcJ&K%D_n+dm#|6)&9!f6!8H!rx%497&uR1H4VHI@6<{_R~Fq8)2_WEA(0dSo%(R1 zv!E`xwKGK{xHprRPEiW>&so_#~5z#*inRC(hI7y*zv z_z`0tJVXnD;0f^c$WPN3JB$D&mi8gnxajvf7%A7zge^*-A5r2hEti>srv@K1jYl&E z(sa4B4m<_XXl?_qTe6rRk2>yf^YXZ{78Z}6Ys??h-DSUhA|F%(jz@w@ICDfqU5Y5W zThME{*c{nlA+&8_ITqSA9)c6o=rZ5yf*kDI$dkXzc1G%Wi#?^F%X8)S3T#@k*AYwi z%8&K~L7KPGMQ=)WBA_lwNlCJ0r!&GrHTNE0JtAy(V8j<}OwXC5mSmbNTx+C3LY5U+ zbA0No=+)tC@J$6%-XRp7MKAmK(XspkSoZ}toV7s2&0?JtG}#~Hw{7Q@nNnvX&IKNO z`;tAWfEMe_Pbb$eeG@>xE#_?DHrTl=IDuh@4o=_yvJ3BdxkZ&c59=8A_^)Nih_V0m8Q~^4i;2I zKsq5HBAw8CNFpGjAY!8nK@{noB=i6Zh?LL+2_Y1vC!r;Q1d+Hk3+}GLv z&Oa_D%sHR=jAzvQ9^*7#zf1z%(0h82vSBi4z4u#I5ZClM$os4 ziZ@u;A~VPWnOxa9qA)lzVP@KReNux!Q0^gm#q!aZGITvz)-)pDAvGP2TEKdpudH`P z3F^{k-d%if@I^`ywGhDR8zvDPFa1s2`K5%nmlmGyFpB>3LcSuQUsEE*mijR5u+k`*fa5=~A%F^I$9 za5bQ5zrd;1hb|qFTVwF#yIWP*nAS|BslUX}$F-lO`1smHVsA!Gm>`nAvVOEYI68G9 zYWQo`)B_QZ0EofNo8l*R9WDF@Rc7dJUW%a&52qU^^uC;2$?(sCmq4_Sf}nD8O6uUk z<#fu0YwO8D(V)7<@c0njn^LN3Y97JCJ-El#57?`!=qQ*=$z~nU#%2h5&f^aA!{9aG zdEw?|q>K70AOvykAfI7y_zntOcMOoqqu_o)+Av@LH>Io7p{eA&I?MSJ@} z9I$3#uT zxq;N2maiK;Q7y0~0k%t$oE@TlZfP)xWmr$NH#JbGV zr%%_BZ}6i)6+xg;IIsLlX;rz$HKE-upgf7l5>p67?dgcuSn4Q&43!8z6yX*2D`55V zir=@SakF70U30UCMW(cwu(EPw*SwSv+;mV5-Jt6){Iyc#Dp}g}7u$%|n_L+TNv$<@qPYR8S99qR52xXPhf=Mo1avN81&y_fqTVj{`^Uci)L%<`c4-^9%v*h(J z-0hlxFwpXeddz3mMs@+m)NPJy!-6k-ddU7Az)GiTY(aYn_~NUkxbQ@3E}GSE1L*&nbNey7#Td7~C^-b)!Whp*t{hTPh!W zz+iA|H(Z00oKo^2%gW2i;xWWfy@^eC<($%xPp7yjtjV3VpG$+2oZeyrE7LGTwijJn z8QFuE{OWi~C?zC}l?3}VGWjm`PQ$!~TmmQrG>8-`)N)x~u2xb29iw)&;RqVDa8HA1 zZUIe+Yw4#OO5}ZCxY9OEuQ=x1kGr_bPD3S(J(eWNT9=~rMqxa36!1wucKakWO%D&DZ4GeokOkRB_r}CFjclnP=n73v-m#wb4RgU093e=FfgLKCN}thTw_V zpfL!>wugwa*49e6YlW;QJX+4Z8SqMcEhw`_3AQa7ZL~<6q))nqA4Ib@bO)fyhY&4w zRt59NU=F#D&6n%aT3TiWcaFS#Mw<2Ux2UZ0W3C!3uZasFH)`x_oq zTImny!4Y?<2iKQYJ+80UK$ywqJ!C&|+HH6)0Ff#ZCICT>YR-BWw-`m=UT!}ZWaO(LdFmapH!m&_#P}WrG1VM`{W?GQC+g3LHW&}#s?f~mEr)&dFIEx0oCuStQIP}i zbu;gg-7i{}BI;*KVKDs;{fl2-SG4E3;)jR#IGE6N2*-crH4cky0|o&~x1w z(c9t`(Gn;q&s_dPa(}M$G0~=uWovb;(s+v(vX? znVT{>@vaq&mCX+q$LW>kg+Mck)jvYaeuo9)9Tze~tctE<54;R=;l_e0P|lsxUzK({ z;cHqOORfz|Y80R~!;M&I~$tPgx*QEY?4 z$O8{l6k;=0!SLlV=RKG}C(`1a$wantRF+-n#4%>CA=FKQ&!4gzwV>j$6zt?_dvfI% z!1#HXK1dSzQ`wI;l9S}&06D$u+ox0|g0r`myE}?@uNCJn;~vdJG21uZADiS62xXNL zW|eq)sKvp4k4|;EXez5_y{>ao!PY)T^BoFy*(xoi9g36OC`V5Ox(_kCY0CPo1qyhq zGOlMCxV~<(%KVxL5>gzNE5fsxQZQj%>PcY9{>?6E!HJpce8+-op`K?B-_b{XR+Kgx zwSI7C>%$&Qw)NXUHxE;tb^oG~^y1u7?RA4JpVtuQ7GCJg*5ce^Y2xEpMuF}jHGLfi zsPW8l-^yK5-fsHfWq5LOWfkA4mj?t~7eAH9T6@7oTymeb?N>&=t&@_<35>a?Xx&k0 zDHC;S2eeqE<7RBfP#d0}aJyBu_(Jksz^*kh{*~>(a^7ris$B%woi(y?Yi#i}1hTXx zc4#%;mG_Dhnr$<}=%b^xthWm-|0W#aZFb{$=O2OjYLD2QwFJ%AOhl9i@{HS!4s6SH9r%lGDM@$;{-L)fn#vtY01 z#tWT+mc}2w1U$70TNKE$va*SHT|+a{Tl5}+-8+1%>p=5I_4PtFcGrlTtu?06M`i#B zbnly!?)uJ!`Yj@F`F_^AUXd{IiAcT~Ac+kvvoz(RRRw(iNcLZLl9)RjFZFX!v^&~b zuP*t9CS1Tt(@9TG&7om&=967qUbeEZro=~@cI2&1%J(1hslSwNMa!!m84N5l-Dkg* z%)9n=ciWxSrPJeP+a;B%_y#ob1S0xVh6Tv1w&rlzF-S{kc8PQ=zUzLFsbF_W?s*UD z>f{z^<&U7Od%~)BsS44>dJwy2%AHU{T|+`vwKbw;5puG@s#eAaFj9M$UOe)`#E7qb z=ol<^9!9g0^r^AethpI>FBQN#wX0!feR%77B zY8CxzPFm(3Z6~BYl>jA7i--t4Lp${Egy-&F!@fW3HO;LOwMgBaV4@9iIPIKr@79D< zmuB%6O8Q>LVBuyn*A0-rKZp(%$yd@{36nOZ|Q=* z>ux6DW?MS(!MF|Al9MjI7B5cIb~tA8G5kGk5KjQftFOM?@6y?(ck6K)l1wiCiqteO zX_@kIH`9q^G#>)sd3e@P9<`<7tqmy$qAy$YKF1}430bB;zOtbWL{_XZ1pMpn$dIyf zs%Vqv$?~QAhE2L^V_+}-=1y>gY zU;Q{YR2+2Gt^VCdM$2&?t}Xf2l=>4(*@tdlFlG0}Vn%w#8^zl;7l<2)POezB>ya%x zH<(FM-Rb@J7K;KWCTGl7f)dUN3w)SS>Sb9F<0fd;~HX@p0M;3 zjMHr6Ep6cZXmz8qoKQDOLCK`Cet~U{+285o!2{fR$s_L9h0+Ky!wEtahSOQdL=`4N zA!zzS+TJOx`KgWaMfej|lH=!V-L;2Zj4!G6Czf^7Jo+mh69*5F?SJ{ZyC)MgzNAdY zFT6Efug%Ur+o?*-N@=6ZOWZ)?&!&M;U0wHMTPB6$go_G~EyPjnai5r zrsm^4==ldn+gid`o?jf$RKAjhFXhzTQ{YD=aC9H(9|}nT?Bc3u+uimbjOxOOJriFV zvi-aF9az)yc=iQPw=<`~y*S|HN!3=3l22*;I_&iZzXF?H%h70RZ>{70?Y>)h^qHRX z@9ofP>^;G*`cb}ArASzMPf=*&NFqZi_~qY{*xULlPoHN|XKNxVr>ChK(MbXII_D-v zkUzS^zENGjXv^m=#FUNl}7JbLW-K6_H}t5-|$!#=Z*t|XX_SL5q~ z8-0K^sujvTSck1GNGg@p{e)G&2KEpBuD(e8!p$T4^3oL3nB-rHvT{aV7pW89Z1wA* ziHqaD_<5zpjMbTAhde?YTQHRrIA=labBi9Xnzl(t28)3>NP???CaVP zgM75C92`_){;a@&JfSCFPT^{r8ThD&NyJY4`f%>n1ez7eoNL}mKpLI5v~{A2SR)aL zyzh;Pd{<06v=li&>#^d?7;<|2%6BhN6kvV-TsSSY^=~HnuUbVSN}E*i69+L?f_N3) z@URjhQ4iIn|1kIXT%Tf?AbFEA^4G2(+iJ8u>KD1Xn%tdhE)J0n{kZ$hv+$PUwL&dg zBa4I;9W`)TF&4)pIih#1p=C~Y`HUqrasUGXK|#3I*4v1m-+`blZ*!Ve6+mexgmIM9 z`XgDZP`f_5ejy2g2w?u4%x2^q2wMcSta+|%Di~V%N{y1dj_&Ph)>Kz~%yGj59VUmu z@k3fE?T)@Fl5hr_tOFuNmL@E^@}cJVPfXi{*A>YE0T2133{R~ zXVzefKMp7KyrljRL+od2!~zu0b_y{C1g+Mf1;FRS+`;mh6nxtN4F0RZz)39anskC< z0_Ko@XB*bXF=w7rnI93C)8I>+xJ^Lx*&`q9oRDhaW`z)nML}yss z4>Ud#L-b@*XLA#S#s9izf8ES+9ezdT$fnMM_?k@-jCFQnCGguy_PpNwu|Xxzq9H_4 zQM1M$m5xpvoEG-%58%0Twn4)SY5m-?_K|yBxiexx$Sp)kN`1CE(j^T@$pnRv136_P z6nLpW$ucwZVL7j_#uGK=D{Ico<*#(%32sMw6?bB?3;ZKGvcd${w7Uqc>M;F14YCwZce6eQGL8z z_wsOuLA-+4#B?W@bPTFD|u53 zM#j74gS~^b(W=uRaZ(~_aaiqKT#J*Yh^N~+Eq&$4cAM2$b|@E;0hJejAV*B3I)>aA zxUv_W*CR{p9OFNW-&SY-?x_{c*=3zTio884p|=#{vVC@T)E%t`1r-JE>f0Un@HusSg(g~4$uk&dRa zkBo-)t@Zn@Dr=!Ln|IJx6X%$qI@5t1N1=n3HnvC}Lf?FlbwwkyFWZ|H1S46H@@8d&q&Pe+ps;8Y1TIM_U^NYoxhmt%*2jg9`>%i zbxXQ;NeIU)AMIpiFEA6lpayKGu!oX1>!0oIrdHaK?wuHT1*h0TdR5KK@*4fH&w(7j zeJC#B6@E*H6`{#3M+$R%{nA{2Hm+k?Pcidm`?oHTTwF>n0|SLY$~6)z{L};HaW= zK>c5DyDpSw+{p>5J!;kx+3gXHaHoX`EQs)V4v&l90<;J|qmOTL%pb@NE$zNA?Suk- zx)fAPn^0(r&p)btF#$&)B6Vln#nQ|#x>={GRnTe|Hg?K4_Vo8VaxjuZM7+Bne{5>h z*i6d^;M6?K-5sH2CA7O>HMA+79h<|#N#-(rzwBvl+FB|1 zhR3zxA@)1vPnFe`ht?*<=Q8j_qF22JVd82zz1d^G*o`_1uR3&EznL_EH&QdL4T(f0V)_^)hF;=&}laNV-Fu<+?}0neHP zgQ=1GNCG12C5b^G5Nfm|t?EUWEt&+hg6dtK#8;!{Al47cxY0^AE~~c8&cJPLas2&8 ztyKbZ)B?U28`Odpu4>~(P`j3nZf8RN=G5L#)UNuFNv`2Wk7cq_BXNj58T}5|G&v~1 z-=X?Dz4Jz<<4irRjgg%TI@V2;v0^zUoSnlSt9h6HkwDj~dI+Pcz?@?Xq|L`f#-R_@ zpf~o19Az!$nG6k%xE||zNRGwWG!z+a&LkCcu*?-e=?eqwjTwuz1Lbt5L)^WQTgZ>x zd>Xz$OKU!z)mxxjr;R!B^H&5r$}pccc7 z4Y_Nqa4FNHE!_dXeJ0+oOWg4pkN9dp2GyFk^+BqBmO1>64ly} zt7yjho1hm5{$fA=pR}TXE00D88KeEv7Ji9?ZJN=Gw&az|nw3X-1GpJdkB(m3vrD4r z2}XuBxr(s@J@cW&VGcmu-BdeE8?vqNX+ZVQn&>K*k?L0mAJQ&WVamy|DE8ZkUaxv) zhO9*I7j$nWvJ$6)rU`+q?bocL#{E*op@48wqG?~>oVl3!6V*?T_z*3ze1*j&BW-YC zC46&HR{X0kDf=`T0D!eH&8tgez(VkH2#A1N`2(AbgE4sRrV^ z{I;tbGg1>lMyRwCge00Hg}N@Xr{G&Q_8YPrpG|EZTG}(`0Zr2KnkAX6YjM96kX2QW zJ1(A^c=j77O~e+Q*ecC7d)X8#Hjo&vRqcZH8Z|Yl&wawmCnUc-{~C@h%aIk1i+Z%H zfrQ?WXK5oBl&@XOHe!b+-)zv+VT_GQblo62058@V@o!;qnv1r62dz9EzWS!6nV%Py zk%*g2L)3j>%sn3 zUBRfv*n&4&j4m~U%>0_NR*sqK?3MHrn2`$Vwxg^%i^$`dlE9v1`Qa}NGUh+9dbZ#7 zfA9bQ`KfX0H$`mum~?1NW0~O6iLkpLSGl4}-E|&QT;!4}9HR#K`K~4{IGJj#oCtIB zkD_SYL+5)VqF3CxAZWU_KWXL`NQl4XU>J?6zH5v?a1{rUJ{ow{B9yWpLJI<%Yju-x z_+{@pj1xLj6Vr{sFD@49Vxut)w#J#n)xqq$7dl^$Wu?pl`ejog4K9AEcghZoJ^5EJ zfH7yi_#e(Lk1q|M5j<5wD#(P&xTK5mp=MS9O&99cU$d8v{hA2~oJuJ&K~EoUZ0hF7{%Gbu_8Gtd*`J|XK2q65aj40*`ZXh{2v12kMN3s-jto9$6Dy zFJd!1P@QZdO)SX?Bm5?%>2Wi8m{|2r^Kc*jWCLL~_D@QtK}v z{`(vbqoe-^p16&bzPGOm4%>=J9NXg{5l?q#%&6vRO)^}dh&Q45Q4pToJpjvmu<6d%>nw#*U^eIZgOD|XLu0GDIF#s^{wsWb-; z)zw+7ADPHea@dL%(bTx|b8L2aNN|PK5-m~)44)P5!jbjUoX)^DT0|D(REXwJG#^h1 zjD|h(y|N31N!R#fHLAf7H$GS|<&kNFy1+$dM=ymHaltP@TwPmOvqW~DfdOWCddPfA ze9@ya+iF(hL_<~GqjYicrjvxX$|ga09L~)kT62+=$t$tR=8(8ZU9eE>7?i$sP_YEI zHKAFY`!K>)m>y4>j{_twTa7Upy5T%TuQQ^?#!rz4-6X}t_XalIeMRjkcZ!8Akb+3* z^f7^!eRqGkEkR70R^fHaU(!V-E4;Q=uwQA6uW$M2Qn(rw#3(l+xlX!)~%9xY4iH>Pq}we7pT-gfL%78!|Voy1hmLOp*LG3 z56IUTp&=w6ot9naoW79Qn=sZet4nfIUk%K7Pt7|KC1SV4a>f@p5C{oHAm6rR@S$+@ z23~SR4-R#L+ckJ(*IuwL!(ZH9zc=g&$0cFoXaNHYamcBV?L_16{=&G<-hpB}7r|~0 zF@Se4Ufx}e6U-N$#`qAEp75sfD!l{Sg!>DKQ0&wz$9glWLAOHS8(S?i@G@%GXt=_U zB*h98CZ9FJ$-P5iX>H5S?C4sc&YCjM`>o{D5|gx)E}Vz6 zx~7Kn8R|uy65uHrh&bwgalPj&*pkq;sRwz5$8dhMR?HZ(DO^)cN!iWe^mSoFmuJ*j z5_3gGL7w|kHcey@h2qp!J;y%m!w`Cxx{ov%+`*e3elb3OG8pCw!-Oe=wP5phOYpCL z`$gq*OF0SX{QA7t_3#di#@71}p|XQ-`|hnRA5<^7xxyh=jn%}Q3)YE9Q<3uU^c;gO zH$@|B%6;+BFgSiXViIAVU zwJO}dd@DdMLFlEth5zxBoek{V0$vU&_7G!&M5EJiOFfwgB=YHMFE%&#;1jqCr2MzY9$x#2Gqm_`;bEahhA(^E)An#dr zk^?2VkY;CD&cS`TRrvX#LI#I|_$7(fA9unUR9RQfOAZ&{zSPp8nu#&_4VlQz;Jc3L zYPbQf?U}a%wvAeC8ZLX`za%&NbP86FZx`VH-JEzwYm*p}TU?tsDjyS${=}6Loco(9 zbx}SJZW=z(6n^O)xJJore>O#}Cz-oD?{V|n0EHg{2iEW%slV`%y$INj1(j8+L6spD zQff0sVgPnrSU??>-9MCiZ-mpLzuSG;VYP?ZyqRSn{gV7~25f~?jNIxHJA%wg!D;Lv z=~Jyaz^)^AM!v`p8(pFHP3Jrf@&)v1o&APSHL221$sbv{x|0Y&WOTA$bsZt~12SkV z#BgH66<`!Rwv*B&bCxHELwTZAs1W;PNT(C~r;snz1rHkL$EQBh5cKvw;^n7*lb3@t zc6)~-%8xOPDyl8IL`fYx$K3g%z}jkGUWa@%t=t?!CT#7Pms?yNhuvqTT@*F~gxTS* zczA;zBD6xc;A0z6R4VQ1F`~xLjIKb_ucTW0)!UXRqha&&u*P0QEnq!|<6*SKfFLKKSxI4l zDdcv_n2<`%FYws#9MI#hia_d1Q2 z<+rjt$u~EYp91H_12()1Yk5uRnOTpxqI5^b*h|-IeMzY?8sA8Zd1aU6?g$AEGabLE zPD4FGu7$$>at-VWp0tdVG7jg~lz-;{qLyj2^}~H%y(C);Ocy`y90&)qPVk;OxNA?u z4nK)j`=h=qFBQv$WL(bxeA^omAA@DV_3T2*&`=_UY))b%xwhE9^aW@Wh_C->*?9*SbW)m^W2=8lRleh8pJOh!MQdln^b-wHZ=hr{8^V zaSjy>B4&sXm;<}Xr(V(qea=C(@zUOn#7U-!Y#W8$;rYU3m)#Fye&(It`9~_YYJn$$ zePH4i6y$pt1fNH~qr5Q8Ic#+I3WafNA{$1vUN+R=rSM{!vVJrXoBY-x^&;vKEpNYK z824Zc*RT={&jyVvz=^jOq?Cxp55mDK4w8ZJ&0#&6+lA-U%XUczFgcUa4Fs=9(83)9 zij8U*46M*+GKmzx#tYJr~CAfR-sdlVyc)`r1g*pz5I%28boiv+#X zOe-=sw&+pqXzrQl8yqA_sT$2fW{^dmm|`$tCz!r2ghvqM;gF_5%iEhvy+<@(!yS*D zl_?z@5&A4=Wje`woZy1Psd?O7*TI60oL;lK3J71Z=Wmj#QrE0(=xJVHFR<6Nsvh8@ z?>bw=*FNG}WiP>56=>whNQ#`i3btg}_R%{&7o|{flaszt2sKqT$R0pA!&WULyJ-vh zcI&i)LWhu$(D44t1PNpU?lw18M(q~TV9%ShcMBGISeD@0kk96s9q*Rf%n_I+VpmtY z@`4ONsG%ntV5!yBOm;?DaHH4b~~Z3D5)>X5&<7`CBLK{TaEPQ6sA!#1tAm zqArY0Pc~5P8R{i#C?30B!ZWR~sK)Qn96em-AnxqqGW?&=NK2eqzJ$z)F~2&+%U?%GjpUUD37PBb=t0`q?O9TnYv&ZTFUfGSG8V(7B3 z$Ejyok56%^wql)5_da)fk*ju~w!-qRyEmyuv(VuWCVS^ZtnA*D zbsL^@IPEk#IB`qq&aE92^iC~Km=|6xwS?Y`XV){~B%d5XLK-#mzr}Tpqau4)Hv_A_ zOwbS49~kTRTe2n!u!j5`f>N2^;#X{Py4r0Xvr&{1DD1ne^ghWb?6#u+w+oH?!`W+| zHB7X?x2$0^9tW}r8au;I+sQ+Yj7A>dUZ0p54_IG)h?&5g1Iw>_6l>x`)ZGFqcH}M~ zqMK8M`_|g86vlqX>-f&F80Oe*nTY1cNPZ(jLq$&w$s*nsfKVrxUy?k2 zeC6Y^Oj=!Ln=bV_EeOR!6%vh?jD06*CEbWZBF_@X8B*7U$A_*T;kt)9zpkmSx>yrk z({*0>3WY*hwfE!cRT_C3u~8n=C3UbN{)`qb8B{o4FA>;=IsyI?g;fBeqIwjrDAd99 zoRb7Hm^-RTcY`#da5)wnTAdc`I5Ufz#8>V9Ao@_P+|a(T-d)E&eJW$l&kjEaVHYI( z)e?1Ak=OBt^irU+T4M8h>Sz=18cCgsDux-B7@V^Aglq+}@&pTV;XS(e!0eT%7kGc% z=N*E7q^ABe3Z$xp@fhJCN+D9(V z_BwDe(yRm@Ssbj(2F*X*>MCrzM=NUIx#qGk`=K5C4%XH@v$FvxK-lw9ipYS#4&M`9 zZU|CrIWXX?r*{hoZrdmICixLNY}@Lgw;#{+;OBOgq=@=I!AL%71fI!cJ2jhsM#pvs z(+m?h6I0U4+iJDPJpvH51EY%;BJiUAL0zJCKpn;$kn`V;(BD0nKM$NoIc=4+=*4@L zQhB+71daOw+o5#+_?G{AlTi)sxgboQ@0Y(F$$wq_>jE0rcv@Rqzp&3XY~NVnZ~r&S z&9xP@e-pJIwL{had1sHi?QhWG>iviQ{sVFQ;;Sa!*sEMQEY^4H)~yd?D8P@xbVKjR zKA&gN(LihKR56K|`i%Ndoz?*(hyKhV{D-wS8gTmB!;Tn@oaNp#sv6$(@g#N-zYxk~ zv^odRkrsj=TRT04S2sKdoL(O*ABPzR#doxK2Oc|ithgYjLxK=^{1gL4j`2IQ{SlZ( zYJ2n%tAToMf7TGj51`H73iosMt9={fL*fkiY7v2(=#Ae$m|HtMUW`CiU)Ot8v$p0B zyDLkhYs1iD$HdbSCdbRXp%y_XCc9x-JSin%uCK3ev}dVQO!T;KB<;Uz?Z0iwU-$Dr zT^QZ?P3qos?>u(OTaSN@M!lv{Y+D;>f-$M++9$BTHkH9h3q2nA>ObA%PoH(-QV`Fh z4g(B-{$GCzS2KO+;UP1TGPm^@es+`F zYg;()-*@2x-#r@f>=IG>^Yg16X@`2?jz)ohCaeFb9)630w=*ASIHp30wDb1;)c(gJ zbE$(Pi_XX16Hfla0skM|c{Js>e0MJVu=-!TX=gd7g^<;5$Dn`uR+qGXYtm`wmOQ0D z(`>J`pRk2bas7~~OSs0*e7Jo`@vkR00xx93-gKcm8>Hnmq~iYI%QVU!*~3Qdb#-+` zEmj>rU#1;8i3$<i(cJK>~rt06&W)EHU``_?Y{>zgI50T?ckj=2u&i}JQ>7RWJcTQ6R zqNww$KO+VG(LFC=ek+hw{@c`l%G7ek#lDP-BQPR;Z~UXu{r!=vIQ2)O^b%2Kly#1i z#HZQqbo<{sjwdd0X0Xm;B4cj|{nLB@ZNvYnkpKGyPc-K|;$i!9|5?udcqxtQ94A6c zK<=>FjsO0@|NJ`JU#;5u?Gdw;GI#&cCjZ&Xu4;3pF{@YIHa+yuhxkvIGEU>?==Uw` z6Vbn$mH$t#-MN#47Fr!YWxQ=eod5X(!tuYGX#W3LNWXvJ4fq`MXZz9!Jb6i3d79&f zkIsJ2?O*V2@9gyF7y>yB2WWBI!4LT1*<>+s@%`}Bj_=>S=jP^CX`_?(oepe$ME)d1 z>zy0;fy(iBH=Ks%2oa+TlnKOWXGELIjFE)Q@u=At9fg3>AsR}lt#FkA?FOF2N_)Bka7QWP^vv%EM$}s z;?b#_qIpS3lH1(qu1}{T|L2wnlQN@=hq`K!)t&7}B$3(yK^9313lx<1a-0zY=Vfb~ z(b3%<$iu_qS57uDa~n`~2?|1SXtmzgBd`0UEsS!Sjo8@RpZwT*HHA*s^YSVYJAT}M zYbc}ni01j+3^<(PyXp({yiaDTeLv1bcAJnqTwK1xgQ`MDu8pw52BY_2o;i9F7T&zE z587C93|blolN;4|NApaiw$2=4(g+k90fq(`l{O}fTy?Gp9Id%a2-m9#ENW3wQK@x? zLxu(i2N^F8KCTNSSz8#FeUr7W{O~!>Oj@q*+~%ZJ zo#vPo;+v#|ce?+mD#)5#JgZCwBW$Up2+_r>0000W!FLNTaNzs3qoc|G?l8{af+PVX|iC0n-#=akX`O>9vycH0bt_Ix<9=!k>E^Pwgkp##@tet;LON$SD zxvl8XZ28{XtY6aX#qM;q89Cd!S*h1OZvfWNU#Y37n;M&R7@JPA1^T;R^pBSKm7}#$ zrWUxEtQNYKYXUc7!&nEh{{nZ({+`-1ZV zHE(*2Ei8>@eSLj5=cgPU9X*#PTZ%td4wRg#x3u3{ltIT(?k#+!A57lQ6?Gl}ir8Be zHrm&Br9r<)j>t*MFCe{tg~@&z65v!%x9)Z)$pK^3;>-d)WAEObG!Kc#KhbhJ)8qQ? zl#K!)B$_kDR#;|Hl~Dhy*|XKoz_5PB70uD5!P_ zscd0qH^Y#vG)zfpj02B+yL_%H>2hmlXQJ13ZvE;Vjz$Qpu^#vX;>1H6PNt%hcQqc* zR~CIh+#jR9`XLGiko6BeJ)qv;^E0Zs+gc}-xJ9oGaK}~?nVrryAsdGQ)oN1ZXJMzj z-FZC5_DVj$`c=NfrG<84eWl=doBDHZvh9F-D~8ka8=tL9YN>T5)M_Ap<4Ki)x-V-p zBu5)sdEThFJ!tpdcs4k$I8vPlh6zzs;zDkFJbzCK#QlLE)L3`8C;zjOlE~(KEpc<&qYfF-!Ckcn}9GpkUoj$FRy;XXMJN$|HqNeY9DW^9rRa%&r zvJkR7>5FpdJw^ZiDPGm!fX?rZOVeqMOG~9-3^_$sxDUpiYqHS<9#+ZHYVaH zZAAnHs}76tC&}B9ErKYsv(K4zb#~4J>r+#$Q)tx1|U5GLOChmZG)7?&fos?=&L`8 zr$--g@hou^oy>7dua6byf`%hJIL!<_AEp+NE*5^#1GpFTyOoOz7mrmq$MdWz09~!B zO&Tw$rJbP4Hq@;$yxk&2K-8IcIrpnwX8nJ~Bot?5osv6qt;8_#$7xQYQ7RMcWa3vL zFeIrJC_~;9NlK{B&vzt;^Gd!1YccemMRoddPI2&XfB%%!kG;CHBO@cwQ}6EbCrZDB zq7tRC#np^wyMqQ^?i90f@lDFeutj}-)c#rV*xa%E@hdH{^?m?A8ocf{*0A;F&6}Ph z<&G@Xdo`yu|ASi_eusxV21~nqfnV|u(hZ$Axr%V$PF;69R+~K2EQ~{5CI-z~6>tXy z1XRN|l1hg88nelUtTjVIF|d{}-IX?TiYp-X6E|O4hN{nK{YI-8Ih9A|tK(FwfoE5$ zl8=4I(oEg0-=b6VgnMiTli@Sdo$kk^Q{oFe&CC)2D9?IkJtpiNdFuvDP*}J|K5RK2 zBw13eVhj6f9#i7Oaa_n_U`jx|7OM)pR@Sz8=Guz}uu7eU9boE}q!yWmrlkrD@y-;! z*pIWukLC{+M4-+=Sn2VwQ4qf2D`X)rXY(^3-#lg5rv!k8)^pCg)`BqL3H(3BZwexu zaKTTl;l;Kh_kUmTj@`w{3Vbj>?}Z!$7hvEhp&xkAFM>o4{Yb**W*8dh!ErY9_4QZr zR4Vma)H0LFgyd>%0_%sE)*E#-H8|OevVPgIcY$-0SCUfRyqP^%7p?u_iS^{t_vd2e z%F2q0g7g#|F!=1xDuIpPmOh!6TXahCm8*K}D<1}c5=|*+zklH?IgewtpnY%2#hz?c zSy=*Tw5qpc(bm#vd?&NL0hWW-@;vS{bY{2j(2c!$@1yud7$g)3KbTo{nUDToTelZrfW;`$WnPwjub+v9WC#SpRm|k`=i53W4>ZgY~p|cQSw&`eXlr z1NTLD*_1uXj$-{7t)VW2HA25}gZOCfJR>zVp*f|jo}P!J8yD7wMn>i=(uxX-{6Mm@ zRfn9A-u3q24(;C7JI$ZSyN5os>P1oZ|_TtoJ&Ogh4=6brz0mGrfWx|ws(V*Q#jFbO7*hrKf200 z!U1P4DJuT_y7Kz~ax8j)gYd9`NYtvrl`Ert+4_Whvw~5M&qTNjwk>_A6Rf}vef;4CxFX~haNz6LuT$|$uloEoY2Vx1mkS8H;d5&F?4=$~^81w*Qa6Zk-`3Vv z=7}@@zz9nZ#B6HPQBlvrenMKMc64^GDPJ+^)kJ8KREmc$obSnjZn?DXW>2A7!GBANTSR^08bUGtoiQpy&E`_o0%JS#pA)V#YGRhq{a&# zpWHt(7Hrmx<`993k7tyeD0;Ck1G?SZL&XJw3hAF-ee{ES9z%rgqX`UO%LCmghLdEv zitV5cI0rXrlZ6kaS_Y2~k(~3>%o~PISDE)0Q9Qg#-1Afgl687o13-frt(Df5>9ADl z%|R@xVDWfuaTx*6l8~a}UV_E{N{KFDQbQgNd(x!W}{Kr%w-kaSBa`xFccv z4&V?&)G}Irpt9T4>llhk1Hozd>8WGT#pFBS)E_rMx}eiXYac-@Ax+)*ZnLS3?#rhY zzB-OvW3mbYH6oFug-0`mV~Q>ie7s}en5ub?a({n`y1rL;{n_Y|qX1#l#K!SO@^u#OWN3t5qd_$k1H5=Ht^+fx? zd44ykn!p!#7a6Y@%un6=^zLzn9tw*TqwniGHR7dPw1)MO*JJhP%4O*fWRgI%L-xu(YiF0 zR%2d91&Iz2H~XR*L({s{ zGehZO6djgJ5!F)qVwsMRf(c+L0!+e{htwXL@0+sL%tj!l45~EP`&F+tpv24>D7mG4 z+f-3=7nu)3z9Z469}m4B5q;M$n$&4foKPRU|0x zT6Ao)XSHx@pQfX-JzTk|3E_^lx$pT3Q04uRIXc5?q*V_KrRg+3YAX4%FcY@aql3lc z7ZyHiJEM8L`D0^jGSZn@Z*O|8Cd&Q}w>;^^K;hC3+R47B%zgDCKbH<^g6YccUy(Da%s)(!grt4+!+E&VQAp=@eyK8>UdPr#|F z)`Ab+F9Q(i^Yg2$DRdYs|xUb*nC88R$VIb8x}W;xgl)|% zSAM>DNB)uEq(#eRyEGpbiUK78(8c-rRnHV2a-?iDnlIuFf*E_EsxwzZ}$Naoj5M*QFa zmziAftC;2uFT5t+gZnr{-sX3llaP?0-0g8xQaWB-i_AolVe>E@;}aSx@1hMekuI2C+j=AJnzTjn8pIB* zHz4BgWx~8SKp%|92eq5Z-OuoPXlGE98atuOmeA>?AFWFmv7i&iM zOqgnW^$PAhT-10@-nt?%9Z(wx8bz$w-CYqdP(E23GzRTJQE)Y(SjQvB0!F}mq=NW@ zxH(jZ?m|+nN7fmj7q!cjtdaWg7YQ{MD4w1^G>w~bGj@F^KNr+7Kj^+$J*RU0(}qo5 zaBuo0X@k!LJ>I?0==bZyi=tozXQ>6x95Q_}&LVrO^#C0+tK5rrcb8iy0@4FPUr9zJ{}+fu2s}8590QF*ZSImU|cxc8-e2$$Rg6Rr5RyvP`zNZ@VcxU}33YwY-pP z{aQv!x-DBMyBZ>(KEBh9?}QtX@9gfI_Eo$2jV^Qw3Kk9I8(F4Dt=S=Wm{bXJ$kO4J z8gzn+qqdzrUEd&S^vx$dnXu4Hbz+ja7g1ZIs35yAZK8Qmz3;DlHK&OV6cMUMRh4MYLr&VIq?Zsp@h-8nvPHzDh&9cr>h1&!sp*0`Bvhc*!0tA%6& zzfiTY^fkWb6*5r82M*L+&x5$xi3{(MzK9(6`^;hJwCZMfq31Ll!l(6Fq51c%HO!j~ zc|wGA`ycOEk*&-m?p3qkX~q@-yiPi&89jXKUBTVY*Qo;ZjNuPYu)5SId;vMNueyN) z&|mb!Sh|$8@ZyBLInYEOP#~1g;^Kgfd(%{y8s&&^D!{pkWgyHTAVJZC^3Limx$TE> zGQ+URZ+q#jVkJz4p=z7U3pWZTE*j<1s6V7jz99^GjD>x<&>qCgVk`h$=<(SQ7PFGMdec91!cdV!6yumNa zcBJun6elO!n*UXKZ?mHsr9yL^;6#0m_@Hzls#|FmJs&N4k)0XW6}!3c zxNR?5e&GP;ZvzYao$uG042dX(JY^JhTfqxvQ}atQGy`ywhB_qbg37v|p?}F9Ne5-S z1>|L?E#^R;36wi(r*Nh@pm)7swdX0fo0zDWVzIJSu-z2UXZZs7{8hLY$u|!Fhzr-1 zro!}5*<)pBhPm$!PBonZiP=#L+dbs)!I?g`6Jc>+H|Y@NYq8w3`vchzU_I;k4-0Wq zTY-`Ty9Dy}j4FRXa-vq{Rg^|5f0QlX+sth6OVHm_TAQP9dDfg_{>$a8(DoU>xvsnAxyU74YqOngaV_n@3&INFWC8ND6Ms; zm?-A-y|sr-gbfOP6cmF%7uItw57El*#Mk)wi>Z=nk!=@&)!E7@g?np&$Q8{3L%_28 z%03);aZjUxw#yB82#q+8^2#b&RO!pnjov>y;FMbX$^+az###kjP9+;Pg zG~B^~W|(nr;Ds=1IR8$_Jt01g?d+&;Dc1PWr!?3^3%`U`Xk!`^%rCM?*JN&^Lz#Z? z7Ja`#YkFT|=wPx<+Pfi}dAdDyErjb&+cTg=HUjNY;6m1gKVX6reHOa+3`GYi%+H=q zzPTjNR%aCHvxsr-Op#=Ub(J$JEArA})^vR|gt6lUUwAhWkOg16%U}{ji3OH;du8r{ z_x6mCR>)w4<6b^zV;-aL;h>CX|6vqJOfGLn40R!NR42QS;;I%!uHGz-s5gdhT}OtP zw^;W2RQkx)jyU<9#gvaz;ox<-K21Tohg+TV;T^0YZRB~5Hm82{rxWp3HVD<8`?faL ze)J)8E7 z5`c}_K0IwndJL053z;8CG5pRla_t9%HJW$?pi=-=Y;$D*)0FoPP+l|7E_!Apj=DNI zz2@{bu7icntRT#|qo$=~R8!nVUrNOS8n2S!#^Dl_j zS)I=HICup-l-;2daqG^VsRS{#`PP|w)6j<-LYwht~Rp&U381+sL$+^oXQvI5%I~(#$%>DLE?p4NwlPD@6p5f{W*D5_d+3o zW~qe%l2uGeL`LeXnQv;aF(wmStIF?yB)L@z17GDB)Ve<3wtf)iJAQBM+BTw1vhH|R zk|d?~PHg~Xa$T+s!gYD+mA&!A7|r&A1EW7s?bfaIerse*bVSFw)fdY>_IT(vB4}nq({F&#~B&iJ$2EKofzei))g^A$~Fz5z$h*qr+0EQ-dTiJpF!}8+mJci2r zzSw+0eEhPAtyzXq+@U5igGde5vK78E#3qSvh0D*Ri9q9lwiJ>M$Rz)u9K+ky@#%_g zv2D9c2_1Btq){J+__?up?R3yykn&6O0+v{5k5Wu?5tW%|kg)4tM*1!S%rUR4F%&ePg4KI(0@m1 z|Ce0WRvnd{%IlqL*5#Vv2vIfU{37tce0Q1Mn{HfWETxB@N;jWcY?au13+Zss-p;;u zz8H^@UJAVi{y>G`ca$J5QNgW;+rJD!!aHGM3u>AIcP8M{Z^O11Ptyo!1c6Jz7OFJl z^}wq{_4>OaLAxvj-HkS63#*fdFZD2g4TH%x+Wi)BE!kE#0ul3rhWMvdlIK5{h-<%n z%zw@G$I{0ro(WYRA1(T#Q?dBYC(lB`IEmoJi&oE=Q!ZM}rAVh`^~CdFdaGVoGsK@w;5<%V>Omf%M#QC4)=ZivJmb;N#c)~lzg z)1j94p%3A7*a4GN+b$k5uHndkuLyYkL3(K;W3oZn@Fyn?4PjcXKu|cX$AmYz471)1 zDXoKwtn=BUpjy`Wg66_&y3q5Q3fX$hmW+jmcN}XyAZ$U-=AONbeqn#1CE6StynQw8 zfu2k;pY1SQ@*94b_b%dgidkQA-ffc0CJlpr zifr9|chWPjaF^|DFN+9>g zJ2bphW_iq8|IwEZLzR5d#K<#a0oGYnhH44o8X^|#gaS_xgLqVvK5_anSfHkls3JXgzZsZ63hy&TUC?-zGyX!N z%W_KEPT&maRna#PcMnlI@AmNqPR8)l<{QtSVV-)K2z>h01DOH=&wMklE?%WmHWUVY81eK>^QU4h7i)=Lz#Lf63Vx4z zGTPvI@x2nzyR6cpN$=&grOj#Tl*mz%sjHXU^RFo11}}Blv!VXTOu-VXY*QIo6-C8e z|IEeVO@c1*>Ud@ZbdJAvkT6thK2(N%F)@Fu|F*2>XED$DETum`3vdUyoS%Daz4j|r z66i71q@PJ^%qbFmQW|_B;bQ=L+(KmKWA|(iN^tnDAA2W>1etWt&uG<7NNJ} z5`uo00h3T15RaLB$txyex%yC3r}S9QSyAkuM@C^wRWNEr^C`pOC3BKrOrlNb`sx45 z0yuVzPNw_UCrKIay@Ho-1_x$oi}`v6t$-J|)|G=%2z0PVlrIxiVV3iR%4zQuub>?U zz=^7JwI9!Xt$bR2g}JU7K`vl4mgj$G_j)UKjU+)#K%J?scp{qddPnea<;!1f zNl{nh*m{)Y&hFoabvQaOuR}GJd^+vglPh<=*Xmx9ucHm$DbOs@w8YkqpF}54wB{jZ z)EW)ttEJ(1piq8?y5fiEHb0Cm!Bn5x_qo=c;LcNu_W4(R6U8a?3a|O%-SF_RN0N6s zhO&~QaCcd3)qtqSZ~0TxbtOCzm*=z`plxsO`FKe00*}xvL%B3~vBq+)ACT6Y+e*B# z&xbi;ewu%YS%M=P{!pygg)?ki(L<@2)P77dEaRWRqKCM!z*et;I`0Q8N?hSELmO@iye zW1zfDBh%eSG7Xs(Hz%zQ_GE+_DUU?bEnF=R%X4;#-ta|vc_>;SpM2>iGf1pVK4W*x zR!K?8Kf3mSk4<~?Y23ya&&%>~c=nydoT0H9or`uAa*aPLwBL9%oATV6(fRAwPL49% zU?JmLy69wmYx}BAPN$xJ0zj&SEeJ32&r5F0(nm?^g4yeS?2}vW!*z*GDol$^`$*LtGAsy{mXs8SGTi30TpSuVp{j^E~)9vuST? zh90z}m7@jSL@yb8!4KTt+1VA0WFEcT%zL9))7i0G7gR$DT^Q4RQ2c(*H?Erz5jEjr zrZ}lQ{OmY{xs0c8SdlNAeyEb{w8lM+!emH>*|(65NgG4+Mafx6WKV;ALqLc}e8bBh zSkv|W5Yk>*l$Ged-sz46QCiba3BZw+mog7;YG&R+j2nx5SpDp6wreZIo&}|5=IN6k zIqntWsQ&~6&weoYXFUFeGrzuK1DMAsY@va)fozd-cWF*xlTG14mx%X%xnxKf)35Ll zwVoOX0!z2dmHiuMYixs`lpw<9s+|lPVwT?xs12(T!Q7fDUZT;CHB|3 z)+UZ{g??7wx7o$Cfq@6v3iqglD@S9NQQWtE*VxJ&mB#qB%a;DYfvP_}7aJ+-9zdaN zgX*J1AVo^`MR}9tae7B$m?wX(K)t z!AEKM=bb4GWjnW|^&;`n=r%V@p)e#=p-jA)l73rxT04;(fCk<=4UKCS_9dzMuNDEz zdIcJl4$@)Jf^kV+HZ4Z6>{Sj9%m1Z}4iA!iKgt@==rM|2{$BvpuCT*VNzx^U3QhemBs8r-xTFdzP|eP0zFao&TcrL=5%PFQt~ed>Hft^b=&6$9a34_ z;pIvmL$!_L>Jp8mSj!d?d_j!1*1#3Idt0Q7`8Ya zJ#o87onN>&rKzQR?$Ix}Yu&dp8_<>E;+ee*8Ju?foJ+IVZ{z-JqZ${#X(rVh(bU|H zQ&!LO;%H?d)MTsBMa@P&&Ks}qO~Yvu3(C;?_Bq>zuFjq<_R)g4`OD+CD8Oi#(aXUmdSB7x`w4myMqPT zJxOxaPqb7_uG-1tBM&OStlnJ*5H%<`n{F6%5VZjH+etzs@94FYu+X%IfCV{H7!Oo% zj{Q}QzoJsv1DSx`pN?UnQ6a4k3M=9?o|VgKDlq@BUD(03GIy{keSE}6*|FuW)^%;) z@!mF7SVmP#FKt+JaBa)86p1B}1i@ONyXCC48{CUyR{-p7_G@!i4t`45Oa9fae%k=# z!h#lyQ*`AaROiDPe2ltaH31X!W3)RRf@gos4=TZ z=kTVU(I(;O@x-vHBW2^DlSIHad+z5CXX~KNr6xXHHYkl3qdMvDGE#g0{8k~YL)}{2 zPWoqAPg5?kdRUCagFAo();br7mUQ~sDG50+cgRTP9O4}h`Yq}knqy>H^tPP;gp%P; zxIdXsTz%1KH2?Cn_YeARN0QY3QNGmiOMQ_V?qO2K>Anj+8GK;`Jcwoc9Qjth;-wkW znp~R0F7@cfjGcUiOLn<%$O3Xpbdh-Uwgwi=I7bQybEYZ8LmZvRQi}{e_4RDjvctTP zfUFm5gTitQ<=~t!kh4xx^<6ZvV-fZEkRX)5#Qqf5L|&qXP}xU(qJZ_H4Q=_05Mk@# z*7JZq$%VkZuPOU=2DGmgAm-XY)a@#A~D5tFARU2NrBN!fcMR8trif}PRK5{_&`9JuPq38 zFORT7VYe|G9j9^^RK~(=c_-VNO=+zX%%8@m*nIw6SP!>^!NQIq!#=md4nO9Lj~AMV zMr`%N_9>?(F6TZ+#&?LM5Db2;PMVmQJcGLQBCLL}apzDj$ug#GRyd3q0sLu3IhZwO zb+x6QC%y628l;+$Oz`Slg*iAUd5|kR zZblehZ_}FM{EIQ_X3xKzvx?`w-~WPh>Objfd3r?X?4VC>?o<{?@9Gr)fa%Xid{JA1 zPwerC42YY9OtG|Y(J52}vhHr(JZMVS+MIJ+inO33VL_BeIm!LzDAJc31gDtZOwv;vD7 zWJ|z9pWJc{aSvmUSvT6zSd(#4p%<2KZ-NE9WiUO0&OFf-d1Jq~VbsG>PI+)`KdZos zc8-Edi?@oV_aF;}uY45Wme5_Z+|}5#;L*VOC95GSzg70}p&Ap&Vs3o~2S0^lEpnt%w9wQ?N zMZy=)PQR)cH80?F6pR2}^QNuYBmVGU45AdGOZfz>z3h`5izppd41h4kFT=PN^&{c# zAE}4E(kp$0MQYu0E?nkRQwRM+0@~}~DbG`n2u>S2tj8ChrH>6ywPAal3!<8cT%z{p z>dBT4K;`|`AK|*m)GU;3P3=U3zpcH{XA~;o#R3Ye?B0{II=tW+HRolb?5wfcek{ts z679tzERO+!DW#+U22*dP@Kh0KdFZTEvzR#KY z8a&zO^mVgl?gjJiwsjNNYOwHVt&qS;L$FvdhG2eikS!O@kZdD&nj!cPae2^w2Pb)pJ61Ev*51Aebrf26=iBF})S9d4X%Wk`$q+PT zNi#4En|a&U!O{|O>&>DjVGWGZVy{fHC5d{EfKt3FK0RSRp809n&|dvUYZL7U0Y4=^ zS|~Zy80%TR+;A}TT~6DOUHh>HKlwqaX+ILHY}om%F{4k1tr^^O+$52C&)=Kp*F~NR zkMX{yn|6aN-yWMLXUxE}D^>P`xY5=0H0XFQfZ{ISm&>Rb-4e2$hG#I_tSdsJ@X<)J zES5Hx9dlW3__K&Otr{j6ACwyD)Vo%w8kS)$tv}Xb!_RwN9p_ILA$9xxwlD_jyzJ6h ztvB|NI5gmU|K z6&XI}FFRJ|m^x7-H2PhhhuL(0ESh4jiW`j{h1SYBwqIl<(BF^N(_N|sY}L#%2Wn1N1F^4n{mutES4TNe||VC_m61v&qd_`wgkxCjWZ<5 zpS6rWK%o$g{n0D|gw@o;#5tjYD%qyaaws|edQhlI=T5PpOA^_~ckmB{NW1$)rorFe ze^`3cz;kY=jhjI%*`iI<5aG+_Sv!sj5|?Fqdbk{zlqoZxt2l1cCePka8Xz(XQvto~U%Lw5g2G-%MsFUPPiwwi-5 zwisBHveI5l7Aq(jvSF2DYTxSh#H3l5Q;Hx7hJJjr&$)+<*x(40jcUPc?)^J%(tE))$aJ3S`1WkBjcLLZe z(Yw1lupJlbLocXWv)du$*3h1mG=POz4M4PKRdFoRGZRqly2{QcMuyj$*+nvr#iZ0x z!YCmJ;QK3CuK3$=fljFyxn7Wvj05{?pF+f-N$IH(a-|SO%4W zp-6Z3sPwuXqqJ;fuJgCh1BW%w>@9-DFeseJ)r;`VIs!d7z@k7^3ZM0HPdb!Dn~1 zS3KA`^K0x1>;(Kz=y98*_vu(d2iNZh#LISVtKwfR+x=dE=QO~IF>RL)RMuhKa&?i>=OI2h@838C zE7OhU9kC9&v_vT*DewWkx5D{CzmXn=GAeg6-I!rtfgjl`EQ-f!VC<$D?IXOh!VDDE zOmVga+8;&$#d9}w`D2eFrpdWzKaGP;d6rs@{{&d8+runsYB*K#9)DGS*hU=U>FJ49 ze&CD#=TJT3ALj&~zTlOBULtM>y*8KPu-VQ_v&pEDRNG@aubwy&x!6Xt=D@S72GgO; zp<)zjgLt1`G_rH|^Zxhf(vw zEGd0Cy}u$V{Ve@Ojt1&VnoD>i1wm^NniSoZ`FV_C_O_Y;5{8v$&w<&p7OJF-Y63?n zcqyQjeo`}EL^#5{wl^XfaEOoZq^$}5TXb|@&MhrRy^u}r%aX{}-v_b--KI#4e6jWN zFE-#=##ST`yq=MMUuGFcsmgY!zV?sC&0!dFafm^P%F9Am#)vDILBilVuNMndSTIc9 z7S`MA&V{q*EoDOF?du28X1H;V_CDpWhw?|g!tDpXDu0QN*!g!ZIKx4&u#7ZF=fDw! zrmVi*J-#R-Q14EVCONcT3?N$}Ps<$AnEp(ZNpWlcU1?d}DU@Qfs3la+yNq%n8$)G9 z`o*wYmJ;q&>rT~+pTS?4AEG5T9F3@ZUVU}TrtBQ9(#k`#(OUbbY5VMC-(H4yU{yX^ z>0ArjG_Wt-IlXlfmpxO=Dg!sEI^vV!)IXuEUo6zLGpD$;st=F^c6`4xn(3eB2e;2a z9mV;pH!oh^)K3G&>lAMCW7DAchTLp8>>oL%ZT@xnU2#FzebPm^`@`PAr#E)>tB@D4<{s|iI|0n{7Ir`%V|0^ zE!2~+ocV|qtYE9)yOS{Vk!!2_k(_==X{22a=Z}HgI!P(R;Y_MR;d9H*@gmeU{DjVL zz{s257+^TOrlydX$pc0ET+T-O+rLN>Tg-{MrnsSdiucoN2ciwbbV@~}mw5E*@)7p{ zZ{FB$f?R_AYaK1_c#soc?C5x^l1HPy*LipWCBL8MLk{S8ibS@(ay1;H<&8}&_s}vCSj~&EHSCL#KVzk39f1lDfuE9+(q`b|L9?d|4gD1--^6h&iwteC1vsT3TN^3@RDbnmwb)fk@eRHuy%BmT9VrZPc&`CR0jof0Mz*Wh_6+HXhHnN~L847#N$^d=Ea5)%>j zW2JdMcF1`4m^T5_i;!^j&S%?CyUWb;n&3{4KP5>jviFS>kd5lfF^T7ug4lW#u9-Fb zGHlr#K!Q||MBJ1w-t+1?u{;@A+_!9h+cCW#Gel8fPMSe7mq)o6Gw1#?as7(IwJ*`HUo8p}3 z1_g)ue^mq23o3j3Z6|CTZ%J66etug7m2{{IUR>T z3PwFkv5cQ)?;`F{VI{2Vp8_wSw)liObN$GQ&2K>SL$z5&MU?r`4L09;B9U0f)`w7m zyo-g54Y$Jhy4%-F(CV0yrqbLbr6RVNLyz$iWiJ7&oxX9I3-pur(ssmd#@_CZR^`N> z%^!&VSn}A7Y?zZi3e9g)F3!l-=AgUwp0$gyv2lO8 z^}}3ksX_6t`*yxEOXS&IRW~GVs`JMWo*U}oX=g75!c=>{DBm?Q?9eG(`2Wt{^FX!@ zl9D#O6!fxZ7)w#}uC zjqbcb*t+R_Ws6_xe%mS=@2Uqn{cLMhP3zL*cYCZXDKD26`WPfi!Z|fymRcg6Hs8l9 zvDKrsXI7l%<`kUjR%)^`TlJk1+ty#KSP{z{wkG>t;UvHJ28u%s+$BVM2#JKOzZd$# zpLb!0=Nacr!~Ww1dnjB@=bp?Zk2yCDc7?}>9gQUeWXwD>oNViY2iky|*&4Ru0CQB0 zpaVuEKw4i$4N~WQRqoEYgUKcH!UKoBu|HW@YQ$strWfbLqJ+V=hice{pYlZJ0c-+O7`9w6B?Q)N(6f>A)MiY zwQJ?vVhDOwR^7aSRk?(CLe!36=wpFN2-}cm>!JOpt4r3F7P9HnU1c(NjK@l@JVvzt zMr5g%%XWI6REd)V_MTg=lZP#;avupf_{F6xrBZXqh4c!zn{C-0O|IQAFk7ttiuti* z<7f6B^huTCDkhlCj^E12y3!oI1(Urmfge~2OaAn!jw;$_hqZ@g&|Gge7_^{ZlWAa7 z(?A&u<6+h0f(J$@+`MyhQghJg7@cdJGfjYv8yAD5O1`kgPXUU7rBFhF(h#b;0vyij zc$kXGOi#C?Es+=+DxQpYBG;!%xwRC-zuC!jLUj_FLTGeDsTN+qN>=p+-&|D)ZhV$K zxmV4xM?xo@l0rPo4aGLM$Te?(MIRo<>@b^~FRoCSSXQ{TE%pG-eK-@bGx84uA>H2e zW$azTk2WxMBq3pkn`{d8KmiAH7m8!sj@e5^RrAMVMB>1*US$f>ri<$JVG|90d_-7! zacn}9t7$Q{_(dVZq4wHmEp>HwnEtW+_4`%p^w}7Gwy?qnhl^=5177o?bZ4yPNiaXl zR2e!;%D5Bhz^@xuOby|W6M*mg2M7Q0dOXww!WS!=0!;+ENWO^(bI@*#X#M`|vCTNa zjIq8v1JA~emveEQuWOi9-4NbsL&fcI`od%rBb4!$ZFBgW!*9!Cstx}#qfqJ|=0DQ8 z!$;R1hb!`cpW9w|)DsiS5#Q7VXycWn@0NuaH!E_E2$ZIya=kJ@WFx;UfSmNrPqMy+ z$?U}g#$T`56?$3aPPw0oFxs~9B>^0TgoLi1cyYf5^BFm?Ji|_n;Mb}&A$^WI3-hm) zZw@y{Ajd(chQ4$3WxL7FPOb%);;*TfS^n{ZT2|j;D)AH;pqykL2@g}{v6caG?KQ@A zx2no>Kw!{YTkUbzUgHL<_q9bu*S^;8`9B$R8GG0pET#eB6d?Gw=8)E}FZzs}H@N}QCXmiGAJT6J5w z(JyZv6CA69z$%l(!G}#Go^1iZV432%+ zG#WL!^(yK~^lGTmb!`KKQgXhT0mYdVgFSh!80g~SvPYQ8V}`ZhP-NG%IZI1^&D0f` zz=*ZQ^J!QHtoElK@?FhXV8Kp)&ufLUPP$uFRJu}TWSl0XGJiZe|Mu+}n((9%5d_DR z%ChLL)f6P8h=OeLICIS23YG5Q!Jl5e1S5>$O=nQKLdUT(WtNKt9&HY0BA-2dbE{NxWyRKwUf()~X(pX1{;92NJh4g2qX zj?kkDCD^;jJTw=m?b;4U|M`<^Gh?zC#>Vni*uYIohu24TMx^`5P%=M9e)9rgAxkSv zbJwTeg|nf>v0}Xqu!F&1uWA?tj+K^rTDc!M7juf1^m+20vnc2EwTT_?& zCkn(mFM;KWXbc{TU1Phv>>agp#&AyUfp}FPdNn)QV>i;PI-;DWwf@T10{p4}*N-YV zuKplHdE}LNbC6zQ#W0ABDzbLh9{-*c7+FK(M-2b^!vj4NrynOY@@t;>r{%S~hkFCy zx}>zbk34SIBjC?2cfhYMIlH2r0&uvU-$}01ukqAU<{Pa?)s!iXs2NObXruY!VWe}2UAm%a3rC_&OKD-ng+i|pZ?hInWKLTf+3Yi*hqLA>Pw zb)zC{Jk)?***jl~7VZ4HRcRIvQ-KcI+}zSP_Dc-8MMOl*_C^___hpJaHa}z?Y!{Xl zVB0dP5Axra>5REIG*c5bSF!=a1>o6vwDGK3{gB9vQ1YjOJEsjx4AMi!PBtYsv+ zmaRV>u&?NNY_`OxUjr;~5kvcrbcORVprI?}CKyTehZZgq<|QSc7$J|O3BR!nR~+zY zp5PzB!J%1B?Y;vw=+oHlmhQ-Q0G21yj{;&O82vgGDvsb?o36+DV18D9TWeh^SryPH z|0Jb+eC&KPL%}Bcp)z*mj)<+|hX*F1jF8{l%H>Dz?qMm}YPiy?fu)_?e zZY2lzYRjn=$;c@TeS4(rMMlDV=t zrnmUW-5ktRZTy8zP%*+^Ba#6ru`x z>!Vte>pPk2_Onv+XGKK(MP_`(p5+=C8>2ZF<#!KNOS<7VxOs-17fG3cd38oAKBjT5^bqK$bo)LoZ8;UVE_=*>w3txTRU znZ|=QQCKZo48w@I5=+iZFa2rY^rDgkY+mTVWi2yC6B9nTu0pDUFIW$qzOLNF@F(0{fet06Q2$7!C0I zYh=rR=O3&izsg;+p0c9zw%APHOli>~mSJ}9O){ndTuChqqNd-tukDAsw{Ls=(%t=; zAC>+mFR26XoCY>i+FRJ#NHXQwJ8An<-lnevJ76;cB3`cDnTAUT7O&h2%iEr=`qD%M zEV`S;VOEB~`0^+2*Rs)hii(P0_KA#M9}L^>jU51-IObUYtsy)68+6k1Fx-}N&p+9e zr+wu^Y0-`18`hT%u^o{#4BUU``-Q5}RF3HI*SMl@PXhu{##nSjz~-zWt!)Kue7vZ= z?KtphPQ@i52g1rXh0o=e8cE#A^#^T>Z$T4A=M#vMHZ~PoCwDSDwWevWw}5kM3a@AR zkGe`!K6(x*(Y={@zlI3tS3oLi9ZeX%n;0)Ceu8SB@w!`saAt6zCf)+C_?zte0`N9V z)$f0RZevsT&2sPbS&}_-e42`h*7$?8vp{<-Io`72}q&sL%Iqx+eKu zvp&cL{xY?=_#zi@Z~>61M6jQN?}wzP)J$=e82J_Q#}tSjjV5V#hmv zvRo~W?oc~BJ4^2n&ZT&yv1MEImtd!NlH%OUxhnzGWlOE=hAu8Coa;XOX9L+uLag(X zczOq0zGcr2N0E_}-r&p_ z8FE@^H`%LIDtFzM`GdVe=QLi`BQVXv!6Ryd?fV%mX;4D=jZdioq}kr@y3I{*+G1WJ zCrk>?`^Tu+r~f4RNY-x&G3-sd&6{h_NLk1%H~ptkzawtCS7)jPtogFXJSuem7QEoW z^5Uvj5VohWao4g{MkWPZ?j41C73yR4)5yBw?tybckj8ee?!S)dQEFZ7Xr?Co7pOKq z>g|~9@aR*SM;=OnQC6>~GI1sr7PJ4_Xw|T=fDxhb1~Gjmy1b}Y>rB)!%R(U@l0(I- zsn1c5%x|O)=GE=}3jBF-DTg=5 z&UM1i)((P>cUPQ3j(TLGwl!R3B=Br)kAI`H#M2XDDt#;Jw$~Bi@qQiMR*pYAQ_>^{ zHTrN7v~4lex_G4YYZ|}CN@%RG++&e#Q1)I`7L)l8sK6@3jAdzh;dZDICpIfyRAsor zv$TArbVEbUgCzLS%A8z|KnOr3n#UMJ#X9NU>#tC>IJ zetvLy)!Wvr;=7=b0KMawZw7p}A^!E8y@_>G)kgY{0O4K2&H{en;k&5zqG) z{U!|!gy1X>L0IzW_9M@TSL+H=V>MWFlbh##jj&DFrJCN+a`=LgG{EtC_W6?&OE3+g zv1eRq%Fs=IfyYW8!pmSOD2Gg^9D^vX*01@`a@Ym$@|eLc+(C`U+POA17C@2^STncf z8GV+Bp(Z34tvu2Y8eH+Vx{;N4ceR+1R;0bu0* z^#ux$o|UqoXyleWJwC3^V==!=cq8awpLN z%Uqy_AdCZI=<12sj$v2_Ogo7APBWdSHI zte?b-;c|te9V^T3@RpP_cpNuHBBr-Tpq?;$baUunr2S`E19pJ<9u8+qd3)U{wOUBN zxlu_*pbQm;0U}?rgR&rWUK7}0waVHQ(Sed!7ex=3ykN@ekOSnYsHhZDXzv&|-~v@~ znrlGzNGklKw>TL*!(VQwl9{pwMV< z)`SwY+obV$^CLOOBM0%7LS4;eTo6f$3w`YH@SKP^fOt8Cef}JDb#=Q{zf&8!(aCL| z6T)8(!!yjG<`CmBd_oj)B{v=%N=HA`un^CyxO&S~OtP-poDjO(u@}+@cN+#E} z+T0*byD;4T+^M3@6MwGX9G&cQ456)IAbZJ>raz7tG>2zhi|dG*ambxVIX8g3<*Bg| zHG+c4TP-<&FW0L}y$+lbwZuVzIJ0j7N_Da>wgM*_=RRfZ{E3sNGfmF7VFyb*sVSreO2R5F#Ns*$LewwY54V3*h0m;dxh9fy0mtO#GR*_a z(dZtHH|mPPcReLA28Z=g;u4Zqd(!}K7|eb83VKd)v>uwKMtX|hQp2wxC8Xx5L1H>H z;Vm0^2Y1%ASu%oAvh1L+mWsiH#d>{)U&wlGNu|3XIXO8Zi79@i2g4EQ+tuZA&Vs&i zTk85-O(LL&zWTvH0#oVDHx5zAl_1ycR^5&^DdNa>uX^a*;0Nu=QiJ(n{Nf}Q`wIbY z?vsbMsL}=r;wKNkKwZnUfn*qyYgyr3t2~fhmz=~|z$K5YbFeWYj;^G(M4K5NUKB)% zlqDvjM~DXPW*P!Vtt5y?MFG^ZplEE(?5m8D zxU;P9@jq~tHD|@P%$jOY8T0R0pkMp(0`O1F(u1N4H2o~~>sI(7rs+KYmBrH&TO;k( zOJOSwvor*a)^g=ETlK892iSsjEpdqu>l+$chc^OP3#5^-tu(wFI}|00=*c-oO?!yX zs(dv6+0Fs9cEor`h`0uW%P%APn*4uB3I3E_*ss|;U^2*k23lt%52*&OqwX^Gh}KDO zRyRofsa=vG`@htM{u*1G%ud)2`)aSS9QPl8^yAMs*ui%vk+W=1cA__S|690<#!=-L zD?>1AFV0>&HR)G7Ej&FT$0_%YFL?YQcI94}Jf<~2ip5mHWLzywZBBEPRKXmAbC|j} z2Vc9*;p+X1wY-I*u50MgvC+pd^=t0ZVEx*>Jh;Q5N8uWr)ZqFMog%;AsX~07Hx9yV zdNq^Q@{@a9oO1;OnV7;}fcm|nZz+Wg&{5KR^p#0c*h`1^G`fYR*c*?nLnV?aflFUg zTHOEi)eX`F3fSdcsqqU1t!(uA_`h^@j&ib3PGY%gIWOjxQQ$ZG@cpjMOk&tCiW=&P zIKDd7YkuJiTF`Ed37315IM$P7I+T3;dV6_+Gm!tvd2GdRT6J`t-@`V3k?L!iBO58YwFS z+f30!#=~{-T|OF`)Z!lSHQI!*#?EEv+8EM10>cG;le+PfC#kyV_bo`#c?50Z=G`Au z2aFxkK|AU_F`H&Pp1bjOk zS(M1yuFD#I&8PW{>c?a3dUK8cei4lM0}^_D+&oq9lC($whNa7=bskjQLlDk|-p(Rq z#tF;Ix^2GgVovsW!1>tRXmk|Z@O;5Y&3o5tQAPFBGMYi{9g8kS*Yr^EDhs8%sEvGf zdK1{z78(c1TE+dd3HPG}`1`%7xD>LP_;r$@tGSneuwC2(3lj9(Dskfaj_b~RCLVLN z8O@4&^O4tD-4nxL+r9xdPENYVw^meVr8mRo=2FN&SXfyu3FI+0+HxnCh(rz2pIy3f zAnMYTc;xvcQDl7O5rl4bR{j|L<9TXd(PHMmT6gEMfYsx)KR7sJeji~LMqYHKQC3S_ zQ$`kOw|z-3|Y zRCmvQBMvt?gtC>u-S(y27=$^Cw(lhWhn5A3%8Ie{H*d=O zQ7u2dd}pq23wE9sf8?U);yK=0psU+j@QPBLB(+ewbMCsd zp2fn&_SI9KAGnUVSdAno@3=%Q2s~b)3cl-vKOc_bpaX`b^9eJ^LI=tzxBJvjb6;E1 zH_eJ3JL0d67nOe!uLrrn1syoC0{sN#x>%i$V6nQ+R)-|qW*x_K)4rDi^Qi5ZGXS_H zQS|Dn;Ez#neIdbD1kBJC-di?B6Q-hCKdb7SIA+-KgE%lWu8F>k^x-Yk45n|psZp>Q zn%a?T#cUWULJWFRKK<34^7kdx{+@I&+5CSN_uPG+oM+*(p$at?E>f7tx>=> zmDgcq_s675YN`lo;0QJ4(dcX=zR=Lox93?Iy-c$VXKR|{k#E_)fZ!^|$J60x!xI9| z-Evm-G`}DW<$a<`>MJSY?gw~R)Is+Sub+<-#-RJw+p-az_S#gMpDY~anw!C|dGVoh zAC+K@+$e3AV!2+I#sP2X_uL4o>5nEFE@#DvJF#H~$;6zs6 z=h7+0Q>V>pN*>8_LbEx7?y~c_l#yFk+|fQ8$vXB~>qQZIiRKj*rs8JC6VGR=;hR+q zJFn(H-oA_rnzxIr4(m^iQ9r2X}jEuL>OmpYjNZ+Y9%6B$+#b^C>~dS zWDCmk#d;m#Mn0hLiLRi~GthxefcCXG3pB!;3puj41%-3@a5Z&Lsi3phx? zKK1N_yHRas%eut}OqvUrK0O>u=!z(1)t4m?*-R2+c={T-*kh-3uk(e>Kozp?t@pgO4 z^;y;`BA2>ebW2~|LQDg0k zAhdtQBn-2oCv>S}!jNh~{6M=2dKe3cOn31_OK3U5wp*dTjRcOH99gzIT<0}wKoONVORp|;MvX?KmaRoUZYOTS3OyV5dQ?}eMvK>x&S0JVsmq$!i zLv(a7hyIxII2t%m?7uuF3^9X_D?FW6tytl3HYGTjbxX@k;KiN<)82$Anfn;y#5VTD zu-7DrB2q>z?%E&TXZA?%8k!}(O-xGirFAYLAtNNlis!w1#XDTYDDV6h)e!0+TcKvT zd~}(_Uf^76R&*Z?U>&r*Cz=}FU zXugi3tbwm`Q%+Nk_0P1JrCOyGB+bh{1_NItLO1n7J(HAt)_w8Llofi3RBK*odAa{6 zz<3f<-HeL9Fy*L5jbXE2(J1V3SVx}Cqc=3X2TQY#*|d!nv3TwJiwgh!7%$*u^4s&{ zT>p;M{3qc4k6(Rf?31~a9s67&Xv>k=VjOY^k~%n?@#bBs@TXpPY+m1c7D*gFHof}< z_gcP&Od)S7gkNm6s1kC7&=v5xVU02($-jA~FR#nPKaU!#JqXXeaWzX7c3Mpqblg4G z3ws{(>0N!CsYY3(wkN3k%%!X@9IZb;-O<91KY_NjSekg`3dV$7oACMb{BiKMm7@uk zs|LwDC*CBx-aiUU=uMu~m+bIC95Iw+V{OVUt6F*_@1)4Sedq|>6-X+g) z2IAaC!YBH5z~$s*Q;FMk!qu#`X!L%^huDYm%7zB%YkK9NTb#aTS=5-KsqQQR>K?#* z7mgHK8B{buW~!2{9B-gV_&Ym4+57Mt6)Jrf63+fUXeAgWbG+a_aZzj;k+ret%Uw28 zcdvK0D=OX|{=n#ym?We$ zirS@A9XdtOF6GL-`0Aw;-Na3K!RaXjQy#ro=vw7&u+^kYaO@{y~Czhm~D zm$R=FV0>1KIDpbTxGXBhvDU&6Segf~(vaYj-2E{4c2?H_gc6;2H{)wV`_rd;RxWr( zkdV>_N)OtlPd;C1%<7Zxd^*KFq1O-9tCa`y%8lmE6S~&=lt~CmE+D)=+C03tYL^>w zd6sqcvp09xzZ~-OWkxV2T!`6`n&tTt^T7$agSfF~teHeb$*WpF`4Hx4d=t&freQ0a znUjTA9IIIb50(fq1B<*_s_3FL%|7KtSJmb;o`hcH!g9?Gb#DFT zdeBs4d8Z$RoH##0q5IMp^ub;&hUq+JgvQ#`*>1I>cAo7no(SG}jHF^<)CV3Om2@gH zmvRtq7<1H_5+C%s(ca^%rw@!wgu2uR6fhoM`uw;9+x!#3`ao0EB0ib7=(mX5B&QJu zmjw@}tlzvnu@Qn5?pI{rJ-nQ`2JteO=6&btLp;P8_`*Lq8Osmt!Z~50q1eVoEgPz33A)1XyzX6JF8CLh{7q}~ zX?LDG=V6rs9|%hA-q5GVX{aO&&ZljVrcQ~{7RF$BrWo0VO* zzEriky*AaX6KF8%av1eO$V@*X-5k*&-`~F01ogMeK21tyxLE8Hf+P z;ZOxp?Z1@?x&uzbefnM_ZmluB+l)IRbJeUb9LPG1VI5m*MgLB57^J|S?n0Eellj2QV%!vQ(8=dLkBcBtAO6ntH?8{d5kw?D*gpsb)u z$f4%K7m#`y?u96@p_O^G^NmAEk_;Z~E|%LoXLvE~#qS`&mY}O7+n?=fYpaG^{NR${ zt-kO#kAxOqsr!oQr}qQQzX_A8swjpMyb||Kx~&Tj-DOKh+!nfYTflx<4LGE`TtgiY zkUO{0<(?CL7*y(!!Mp9clEdoH5xO<8e0BDm=DsVb#)l5Z%A&ugjo@-tU@1Cu|J$2% z1!Jvc$HwscwubI${d3Z_p=3fRbGbt2hV@leBQQC3*2L6R{{|?8KIG-a*d;WZXb6S$ zf7#VMf#_`haL(~W*e!mcfS^Eo@CVE{(7<)4*HM&VYnD03vgmSzNid3WF2rYM7?AG~ z84;^mu$mh3z!8o;siZSlfJu()vY1%5MYFWDwDu?rv1~!2Q-kO}yjnH)p5k_qMg~;p z*w_tvpLdX}k<390$g=6z%_P!}%l%;jQt!jw(^emf0)pH7?}Fo*;ZM>RG!&LIoa|oB zNl82vGWm939^)gE#>p@~k=Fl(Qo9j#{^oTH3%@{OMMWpGNg?|t_oWy0{qN@)p5xW0 zZAbSo=@Dc>ylE$VXQ^sV+mhM7prCnEuLd_;*95QYbbInxd8axz^s8*?HF~`gzp--Q zbJfAUVk6fDNp9;2wz^Z)03v-{;20^u6Wzac>w9ADj}T(>BZ@s4;Gt?-j+QG04}z0Z ztEvMpP3Tf@k6V7`h;wgd zdiDEUVh2+(oEB+4OCPZi3Un)=swpdAB1qZb_jHow@KoI5M?DXH%<_1tvVr}i&$S3U zYA4=L(<;VT=3%D>y|VxI7BX|~QguK-ZnI{UX{_#8G4}A4#?IHwbPj5*F~!>2T74|k z<3q46F>^MuMRTF)0=jReLyht~%VC_cf3o6vc`v;iaBXU!$lCR~!P3czWJZ4w>rz#u z)TUKI-?k6_oaT!NMrEPvZH_H--gi9HPrQp_S>ZilncyKY@hd}6NaB?hfWXjWeHHm9 zNQV&oW5_KZckdE4z`;dILumUPe;|L*hkNM{zdWs$*7)S#_0$s}w|oX&jSTv(sP;(2 zE3;_joLT^YIBDGFpWs~K-Oxqrc7oo;$H&6I`qV_M^*S==OXq|7px^;ePmadrf=|Sk zT%M+@w?AibX$_VUb5ya}8CQk@4FQT|^D$G^dw)=9{o$DPl7QnP3?tSf1W-=5SHFBXBN z2O6zyh#*3NQ-U@CX_3}^|D47uF0GU+R%?4LxKe&11aGkwr_bsxY=HzDp z3_N1nzj9Mc&)-zEpYW821oDa+k)q24<~O)E!u$1>3F2Abo=&1ry6LQZ9U6XM`gZ_- z5+4eYx0L`S7(Fr>7@v8S!4UmCvR4IZg%shj1ejSp;AOcQD`jqc)rnEBr4A%Xp2BP_ zXxO2bVhjC@BK2Z5&!D&fWwnRGs366lNPxJJn~RHLBDa9?$FmojLJxh`KZVvr`xzR3 z<6EW?COS86N>1k!sv9Wr@krq{Td&^F&US!gyq{Z%62K^aD`UBpOu$OL?wUR zE2OH^f7|Y;u!vN{M-XwRjd;gci**vwA&vMdw{F7hk0!x43^}Q1cv&!#&)cgsRvOdJ zX?X&PSOzpqPrY6kZnj$v^+?|Nsu$7{+0-z7p*dQDZ|X{)_c%In*Ht9LLvwe1v({RR zLw2X)@cWh1cKn8W(@7Qyx=1sp_0mpFQO46IbLt*Dp7D)if_*+0ajyz17#$}ykA4zC zmz{V$bu^~$uDBK)OPZ|7puM>u#&)rHr)1C;A{A+4kJk zJ^;c%DPHPBJZEI!5i;f&C2&{Hp-H$S<0B={n}2M=-LbVc=M^bE?&C9u1)b9TtziZJN~JDOAurxkj5_ zI&#XUU$Inc5x&qp7|&F@F{no$ou9ukuQ#IX%dz!(H34{Lt#xuT37C+q4Lzj!=(X$m z+w5LH6T3&SGxLSJ2u&llx}*7Zu@?Q4Ov|~{RD${%YEfQL11^W!@*8K?MdwEiR_F4a z`G^z#BwPzs6OqlYk(%zJ7dFkK0Cifhtn5>q)Dsg#Mo6xboIi!E4$tM}N#t|xF)?Rm z?2QfYXOh%a1875U$qe_`5(i@LpM4+_#Vz}hvfHi{5NRHLdoto_eADgzlZ$9o;t0ME zq3?u^8Xg&0bn?O&-|7`A9ObgG#QS(;yqG4;TR*UvI2Xw8V5`rrjP!fh6W0dH%|lr|1~B2wPbYQ;aX$_s_TZ4!V4vLq*-z z)+5@1hL|^;ei)k~c_awGyVBs9j0wFs8abwf*kbkq2plfiZV^*2w}a~wzQkl{Z9NqL z_+;N7r(AxZzIW(ibWN8BYOnCa;2pqLLHItbcn&ymi&CT#MvSf z4`A#h)B{)ZpT6WW>9V?7!dZv0+XR$|~s~mHcI(_t;6q?w7oUviB+Lsm&gCSHH}*A+knk<@79E@C?{d z_q$A5pd!^G5Q1?E-2_NxKQ%BZ&5Oxlrl^om7K~LLu^JJ4dc9(4Jb+Y}&$M;?&LaUI zqESK{?AOv*{qJppbyxj~;u;!tj!z!{RKkUpB0h9|??rFF7DG@zP`9p~2Cd2s-%6ir zb!QHSZsC3kp%F9yC&nO4`i&zVxcoze;wC6c0cbvr5Yyd2QDRc~!B^*0jjmoj@tTN4 z{xqueVv+(iKFp2yr_;TMt9ofG<7BFa`#9kxOZzGtMT0Fe6&3p>zp}}kMdkV}8eqT} z3hZt&1U6!$GWSVqvKEX-6$n45RlalecjffQp-y)I-#pf&1p6%vExm*YLG~%*wQ2n# zSkLkAk|O|Az!{MKG&DOoiRb%m+)oUkn=U#%99vmiErQ%9+7qC?QM4$4PDNlYCFG#( z?>~v!v<%Gg+7PabH!JHwczC=@0Z4*GlJS;C;G;7&D0ZPoCK=ILM;{I#u+E{s&Mm#8 zMJibXzGTKyCieoE0V%ZDjfWzU(TE-K9{LKL-<$I-p11^Psny}wS#ZGm@R3+xM`B%Vl119Sd7pLZdLLgIU-eEIhTrP&`8+aCkl+N zLz*Xo=2BK`7Q51QBs>iWWH|(&hE}Ud4`)}u7pP-|OGyt`A)s5DA;Z#UR`c`CaK5J>C2 zRoZ>40_uL3SA}sa4b%(hRWyhPerF4q$<>vaE!<&xICqt-Uqq}i?|LrT6PHcsSNT&p86&RGW1POvSG$Yb|}&A_M9z+TsQx=t}~WR5O3~N z;R}AUXIOSuc7LF##@>8kCtxn@!x9%6cv;IQj5;H{x7WScW3b!`(OmsKyJdgbV(ntG z-KKpZJ?qFu?6hx{vxH9QT+8L=H9Y4|bN5_+g_J;-?02BwD^y)G4cpdmW2k2t4wR)aBRODe~HU=fB3@yGtR^h zq*G_1U3m+0U4>tX9wb`ws?fZUsfMTlv#=gHO5UX6Z>``~ZFHAA88j%{UO@OTto2A8 z`^4@?4AFD6ynjT!EPofB%%s~?MDq{pQeUGq-!U0qEd?QC@KLYNo7;0}e#Z&Gn*>Ek zM-h1Z#y-M~krMsPfZV2tnqaeo<4{m6hNO#BsWD>M3>qlQ;+m^ZG6`yByy!hwm2w=B~R zB6ZxBJT=*@#eQ)a#Hs zZnfP$DN}5X4ANl+JDE_H2poJp0b7o@+I+xx5Tu3_KkB-o6+qk!umZdweLQKvO#HL7 z>}83jQGks#TojGW%gbA}i>rbG>Qcs2*-ysAR**^bZbi-AuSX57Rc&c%Av$zt>9~HRXrkv-<6+qEPAw~T zh@G0WOSUk>u_Etr#(hJ3_(EfwQwg1UP~zla+4Ziv@t&SzO|2=KZ(GWjN0DYx=O(S4 z=_%aNQ)1f9!}G)kFF}0Ecqq(nRT;GsMkUzcL;1~qCHU7b3$R}B_EsaPf696(Fx!p7 zS=)@N^Tva&0&oRCfTYy9>%?;pB-oEjZfTLSpB1%S3; z{~l*&eKYf2;7N=IX>NBLmVnlN3A*lndfF|^Jw;75XR)AYrEt7vSrEN*msguYcgTK{ z1uAwHVPVr8%X~Hy*hZ&78kSZUeI!trl4!x@ilL1eCy~xknBTyKQgZRo+C{BiHb`ZH z0(Jr0+RW}QRj&QUbKrPUOo*4zAF-xo?vEacFX!ARaJ@vRy9G0s1BS2_D;wwCmuq+3 zncWuJiAh>aKH4|%;AO2ix43MLnW@;Vv5JC6Y`=ZYYYr)k6_%z)OuaDF)dH!gz?Ga% z)HmV62|#(tnPtY$B9!-5z0`lH1N*vy%ks8g0`K)mLcL5@4K4|9%69Saws$h# zmTiz$ugqsFE~cBJj`@ynj2NeX6+!-sgfUl@lw{9vdCV8ewGt(qLXLS#%r#_E?YPX|E`u{K8ugndjaD! z{P-3#Z(AK2ur%bDq&_q@@3;-<_QEBMP(|Lj3N2OQ%H-E8)HhFQ<1>yys5nJ}?8iKs zeQ}_S#sdBO9)3-?$Zv+(Z;GTe7OI5qM0ey(%_mpGgnszYTXtzq&H@x$&|EMr!L{Bp zdD(uE4temP+Y^biMC&S<*bE{p%L~ip4DP%^OYmc`ZBD_#Ki*ZW&>y*3rrR1mSsQYS zj@T#EXPl@mL|Pz;COVub^#ZL+2YXt&9pXu;`ARu#HwEaSJtJdY$O=tB09z$-!yj*g zke8|qV(EgB`v6tZwIYh@&rzqulV1J(3+_K+0V(yfoBOb=X(5&A?y-vm5rT5WsqGVv{0=B+5Uc1XN}{>0E!$ve9&Wx)?XkL#klku6B>KN79P^>7GS~wT9(ijBeIK}ctvY~0q=eLThVJQuIj$dG&hhwI?SjZN zc2lIam!G>$0TeMJ=2WASr0d4@RXVhrqk-SBX(vSrqSn<1SY6HdV`*dcB!9%sic3ObU(X*S6U7GJo=)hU<>rOXjHE`qtgbmAy zNn6%@&^mHnip*HltR2ai!UsIEBt&oUQ6P2rJXN-e+2)24DSv- zbhU;?+IGSVvC!=oIngedEW5IQv}6zKmwE%{joG#@9E8imwKi0k)P!_(W}os)FNgX9 zbw}DbEVV2y%b5Tb-SG2?UJ_RAy)^>D?mu9=DeS_t{DEhN87w?iTx?1v8{+O3w90&c ze;_0t)vqrM$KZTc|G4L9*>B0I>Ckq}L>}up1o#=KL=}cMjU#J9?vu9weSUfxsKeC54 zi20~~TlIXG#Nr#3?Z+KCKbWEu z@=aJ~0N;Cxf6*8u;@_b@FF| zk89&Yg7MfP&cKJmwTFEPn^vklEA%JP%Q4>Ao6y@FzL03lw__WA>fBer>Pxn>yYHmb ze8K4uB4CQ%vLCU8bk@aJ^~J|LT7$Lh&>p6j2wAv|=Z4j9JBH_!4(}jt3>vWv>9G*u z!6TUc|@vxT;(p!F{#dXWKdj!C%nz`x5ZcZAk=k>q>leIbHJb9ojzP=vYocJw%LA7HNjpn;?S}7`5xJI3F@cx2Y7_7U}0ry%(ufJum_t zG;B6|PUxc0pTTTc=(XDnR*mNv?k%ll$!0S3cfm&=nT~KWij#Mff3xc&|HH0;zzQ3T zSE9pJmT`NtHYjBc6^JS)~Z_@RKJ#VQ1mLMLGLAC}PM<4~L1bAXDsnj=>R zk(DGLaY34SB!Gmh@LGLgN7!nV4-dI8dZtu)`WI5`AEZ~a;+<%R<+C`f)x@5o%z?S< z1sUgA#2H%r@G>isjaQ~ zOBIC-AL<$Gk)5!YBV-;E0i)B_>5%2r50%G7APyFDZT6Bj;6y#vnd9I0?C4AaJl9Se zSJxclmGdInpN1pM)6Bp)%(!VvX+;$z6nu9p3|V(^vEl+fCf!!YWR%&n+I7E@a;Z2> zdnfU@j-)BI^wD|W1wqmFd!=aOsb|Tz>s2)R3R+H=soqbI(Cdd`Fqrzlk0#Ey3u&6s zw6@@ZDn;)FHsF&fy9&CQuem1h<8_4aq8~>_25nUW4d~eMJcCnAc?OY|C-kA)YKik7 zs-xVQ?;}vc2lyR*h~kQhe)gRik6;fg=;j%9hmHyEr2B(CF`ufNJR`;2D^|`?VW@!8 zJr&(}xYitT1o_B&Tn(P<^ATstAoO@pcN?mwd*lu#%hC_iBosnA^+OP+v|j7dyi>Fw^2>RC$8wWboYO6%xcnfGFbo&wyP zrIC0nps6CWSPIV#jgO5D-&MDw5m}L`Sscy9V951eld!fR3_**ap|G>bsdnq;M#us{v;C?a%TDmDlhTqc$6CYngnmCn6ed@McIJ|hv&}MVv zeQ1TdrwW2rkh0N|dxzhzru(0_o-`5+GHnAfkW&Jx?2uaPo0@7gLk>Ris zqqP-Q$D)loT1?u`O%yq1{uC)^da;rP+zP#XzR;)hW8YG9*KZyJ;K)LRqF={F{xn(0 znF?och&?K`EtBc0(wWlzRpxx{@vB4kt$ivW>9|!gra98KPZ_XYNmB#)$p;|Y0NH4& zp`mu^*y*>cU2Iu7iIFSX?q@piyGBP=9s8d8b_hRjn&wxZY#wXqV0r|5 zj=>R#6`RFy|Ndm4c`j-R+*QNIy0A(4hvE9Wf-U$%!LB5Q@cX< z%MBC?RSuZbK6$k9DDYpq&9Ee>gZslCMsPiv9wm-nS@Bj|_`K80M*Mis=`gvh6?^O3 z54RGD*o=%5fa5FH0s;viEEQe-6_L&|3ow(0E}*ik{?s$R@4GLUJW477I9e@21xcx? z2ci=a5|ViVGvXpZu6cAt1L2v13v9bpp^^|N_%FzQSdx*${rg?^@U_!SfQ03pxFgLl ze0#LL^V&_Rn1SwYN8*|&2M@?=xrTi4_{Af0=m!DgHGF(r_@9uG0|MdOsq+^uI665w zDJ_FXXF;ft;TZag~{bQ}NpK(eH z>*e(?P*b9MGR(@V>Z|D%?=MCumUcg1?jZG};-7oDF`#LLrJSjW0Hp5R>fGIn_kam8 z#M;_@|9+}JFn>n%djV#1PJoizvkjk~5be@`Wi?nDTyfmld9ri9#rW(j@m%l|309m8 z7+jh?E5+GwdKY^Rn@tj|@uz^UvUY;mxZGC>>qr0Vhg6`sn+@&m4=}uU@V~y`9~S@E zGcN0v@~Wy~7Z(?Ut5r*n*?>-?dM-(T%inrC?mw{eyL|J?PwKZKBO@o3bx)XHmQKTw z4r8%c$pRP@>Y6BYBR%9--O7ChV6IC{C{*&&{l$y_yWMA)1$fnm{f*;ho_D(%nHtkp z`T-Y0?i5dKYkP(23TY>GJ^hcrYWh$v7F+t0UrSqy4z175$&qJ8t&$D_gcP-BBw_I% zopc^S_Vl6YUnI!Nqk!H#>33*?(x0&40Midhu`DY%?KLlu)GoY|Rd_9y5`iBqx58pb>{LB$mgHefp zLJ{d70_m6Ep3MZ7wey$R+ka{S{atVS%bx&4A3tWd*7^4x|3BRAKRk4Yqujjn@+XyY z{)A%5f8?yc3*GW{oqrpFc3@+ zabk+UO3we}M*ph^VtE~?;%(2r<^3;y_P_f7e*PPz5D2DN#B#36UwHEue@6XvPosYh z%>V5(`$g~aua^`(1cC`S=ArlP7dheojg?>B@_#nU{@k+sw^%NE4MctX!6frP)oJ{>-&y_g zcPK_$eDc>-WtBLr&WLEMJ1_%Hch2&ZdewEvJ7Dc#wr6c#>gRjhUU5DFy{-MnLAzlBg_JN1TB2TWi-`~Cdl z4%e8exq3GFZVAQ+YC3){Gkk44G#{v%7D@}w;i2g**}CTNZ0YT6aDM zrRqLk-VcVlyZ1;aLo|G3F3J8%nBjl)*bBIR?pD5^=y@h;{72{0(F>t><5p97=+Fn6 zq=A64(Qqoc0Gl;@$DM2u*V1xRR8$Pl;^DV)4T%0`kh8R801fn!jlH;Wg%e@7UTcMV z!G*yT(malD$bK6d`ck?7!2a!zz}wSWA~$UR70D!weCEm(4t(*U=U#zI*{~;1xL(c8 zjbdv8w(~d7Aik&8ELFj39dbI8@rUh$mUUq1n(}e3{WHSlg_+~*#!xocu@JSeuprRE z=`Pj6OR%P^Fz)iAe@(+saQ5daC&Nu`_Cnr&dW{RzQorb#m-pV#z^Ee+VQ-(>c;`Y} zbn`ipXse4>)1gcRJH)Z13xp(RWPHRI+&eIuqV6{kt`~u&)HkX$Tdio_*?yoeBvnwI ze=*s5H>;8uzo}~ep9%H<@)e{4s6_opFk%%OojhHwYnGfSeyV=N^fDziaq=Ju?Lq=!~4-#imp%fi@M1K7&Fc$Ik zDB0cnpAGK+C=UPe;-dVYHE6L-e@bBMKDQa6dS{{66`PaOX_Ts>kaIDpSRMRTzNo&w zUZ7R$(R5M2#h|5~SEQFMu>&Ny&-@DPH1Q9T>OlE6ZF^wI#0Pm;Zsg0CFUeDDJbzK? z9kc<;8C7I+u3zbPXzLb=88Ru|$zS7dMyANjRFcHrT5f_SoK_ z(|~+Veo_Md)-)I<)*vnPyzz%fXSB`P)YQv=)R{7T4W-gLUGy&(qV?u1bD!-&q-X;c z4St*SO>}~Z-m;e9;^D<)44h9aiT+otzukKatANn)Flya>@XGgmZuLOTw}~Z!;Kag?1rI*4t4;$La8Sb7_1EeX7Z=Y?`eCtojQB|P%a`*S+$h!3@!%ky7?yOwdMv5H}jS^32Bl22Wq>x+S z9^i0!LC+q>jI%Su%Jd+u+aty4&YhlH!p|f`H@+id{rspyU%%%1QEBZ~RC~+_6arxs zAH!Cqe{PjWv0OVB1b2UNT06h{Q*{(=xI(zgIOrmgqD_oM)Lh)y4hm_1$o~V%xVsy~ z8XSaQAxWR;I>pr}P8+<&(3>SXv3ht z=rMgy zbox%Mx-moEtf{$aIaZlA$|p~B$JG)@+2g;oxc$e>^-r3a+MmtLU{a~%<4=dU!^0z% zsmce2ybu9a_pDyv{9%idw9SrXFKl*vPG`!-cjo5OL2zrE*IX3Vzf-KjMhBTffx2vq zr^0RxcNGsL2BRx|I3w&mwAs%U3Ww`pt&(wNk&8L|c*JYxyfFp&W%YO0Urq*#T{aN< zF1YJ`Y@8*+1EaClkmEHJ`FuhCMM~t~#_vDvb$)Sin8yjADkq+QC;(LD0WNcMbN^x@ zDLg#f>(SlzTQBw1-=mG@<73}jq9P~?&=hE(R>Ik`fjGtT?5Y;`e2jK10DhdCkz~Jk zu}>d0n0H^u3w=Y#T3x)93)W5e5}ijJ^eY?AQ*c$!Mf>C>y#Ka!i|Ryx*DXFM4*hfo zXhWHql`=t9EvfG$L?!s6hm~1%-QA{uIhpfHBz(X^i3gh2VC2dd=EmHy1kdH+}`2{*N+4Wg+m^ zabS5Ky??<}sS2ey5gjNZafcFU!iIL{nGfyPd`yb{zwb0L#b$T@dp19_Uft5 zz#Mqc7(C;>@R(3f)x8P(%r?8C)roFvYuzzjl-%OtFEAdRo-Q*qFc_N5Y+g!f&|CVF z*Q+$`$oiZvNjlfLXZ?YGR<`yKp(JB0Up*LRV&bqC*nUf2A6s77^jk!P*PVwK3vS~! zqF+bC9YQZYV`g6ewzW<*XHTGBvHWMps`P!BHTL7(#TP=2BIY(W_zFrg>fhN@05RQ} zIU_?ul$U+rngv+`aH}y&E_yp@D!OrV_xi?D+#EPbf?!zknBN1!~wB# zvZ5CDxjTMs%z-t|51Du97ajzMXKV_WED(yb94kFGF^1 zd+T#C%#8oJ2RH5RiF?j7Sr9RZ8vPG;mYMDCy8x@*QI~oX7Hfz3$iF{&=zT=Z89qKY zVaDWJQ~pBOgjB-Wl8hgRzM%wOLMpWUfbrn+N{R9TaRcJQs4>&XDbq=5_Ue|~X=a<= zP2#aNCn9Ub(Zk)ds0R>Xak+Qz1+Z*vexy8E`bMIY@*9fHrI&G>70S6(3I68pz59E6 zdzIz|_Zb-H%mOAHF=sw%O?lZ73s3H)Zq!av{rs}4$%@>67XtsIy!1C0I|Ko6vV63H zYt_EJt+({CUnC5vR00>`1(2MqLfA7l1sSztz`;#xiy&0wmitP|__+9SG_XKXgbP!W z2$poIOpK;<{ECDz;~EcK=8aax$308dpC@*lfjs_!k{mzRS^VMNk7rMIo~T?6@WOZ; z-ta24NLahMS4ui(`A%r)iVi&GM{#i5t2xw0)1CZGB28855GqcB-r2WH9u8ssSle1c zRPndg{4MB+NwfqsoeX7GH(kgAKyhdCkbc*%OPW~{i}U~fA1I#SDpn4o#xZ1T$v0yy(}MFT)a>8 z=uzdQgclQu$N`AxK!7EnVC+{0goPi<;(dI?_ZmntbV#dHhjT&8-dmw}1^MWE zR>zbjR8OkC_f)a3-wNr41=dvr{M4bFubS)Z9nH8jm0*`y1dH@x@y9oS^_I3Of;S$*g=KhlSgoFdP7W*J2cjh9W(CHZQs6x2#&Bo)Tgb7575xEE7^w%frI1s*#4hq>a(|o_A*8&3=-Fob6JDU{1#nU|#1H z==POl3OFggTeavH{sGYdW`mv&d&n1*{2SqCL;7OZ@1@Q(t``)Pwad1)&Fx)k9&_l^ zVHh2HSx*O4)*u**g(OjINy(V>4H*#Ha2qd5_fS?+@;1-Amz0=X_MUQiYS10-G6G8$ys^=!UWSu0$n^^f-faZROBzF_;SJ zA>0#(WrKUd_z@XlWtTaBLZ_Ing_utc3M-q>T(qbu0 zCUbeH#T;nhY6JN+wlsjLIL`!pREJ@g4Vb2jK!c{fJ*8~|P}r-(JnD}%@LLb$kk%G} zPeA1UY`9y-;|T(v|K`vdc+lyl9@x9_w6vR-S4kB9oXD$Y7w}l`sOwx!wazDd zA9rC!%4qq>NI7J*>;Y@ZAAVsTaIn~HIT$6Tb#D*Qy&={zcz#HG2H)vvYSP035RwuW z=322lI<=e8s=~By(*o+w^1yhF=V+WEu*%dBZiYf#{o_-D2VM`q&1^0pk=3SIp6#5} z#9KjP&DyNRMfasbHE#uO)~_71{(K4em!cvOwd-ale{)Ld#CNVFrGnCdIFZq%&&%HY zPtmHrO>p(&p^cB(0H5>qYxou7D1p!G<&nUE1_^R9d+0k84gTyy;IZ*Lg}{Sn+`l%nay z&HbVX4MCzm9EYu6D0A%583*NiG*Z`I>?3dVlW^JMP`?sU=c!tCeG#dG+S>L3_&gyu z_v;<;Pf$|_26;bQ?X#d>s&NMa&B`eI zc&gwQ&Z!ptZqA(N%N@2c&dJ_>$t-0yg0-=+fdyKB9BIZeU`YDm{L)JC6mU|f>$^!* zZw^^#qgwdxQoNJS#9uQ+wfrrt?Pj<0<)b-QzPlXyKzqCeY)abAN7IKv@#ckR)AsSM z4Al${l;cOlDppDZ)x|mnQ!_I&B|S;Ky-rWXd!la$NBOwtmR64}4htFpBLWYfrHazI zj!r^6OBcBV;M&%qhWrqDe>4Sm^8;2-y=Brx=+%mzzv& z*>hX3-!DBwwH%KhVo;YwqR%1UJx4_~Gyj?xpuhk$lv&|qyjSG#s(OgK3w+IM>ry*R zAi5cwoj>C4o?k#H?4T{xHUiuIVEndz*rSSMV57hX;IjI-S^#?1@zq&P?USIbhAa$K zp5}|WsyLg@0th(zQZ;jDz_-z`H$H0Ro@+05Sr_D&JZu5?ja7$I_D2hTxX2i+^r`LzY@<(?yM-wY!m_Vz1~g%MO3PazO9)zR{j9&Lr0No(+L zALR_^zc+(l&)MjB)s6c$FAq%nodut<%C)YI{vYPj|2nXW41U62`x1NqxUT>bIt5yq ziq>)mcv|9V614_zl${>%w@CBxVJmaL>>+PMEG-2f@tvKW{GHuRfRl~V`Ac_6>=k}> zPm%|VwMS{$k=g!kofw^R**kCHjE7yXkmfBZzU2uupNeH0<>5wlh#GP>IWj8JrXE^^ zD=aKoOmz1s#3}SYXlWE=G&JZaUA*WiXf6m5kpE!UAJSZoE&nVna{0k}8QQhIBfx)n zlp#^b{u4&>SWN=m9Oz+Sajonu@tEp0g^ zDDoaILrgF9SLz~8!%HOpl6k`?KOnq9?JQO1-48tvdSi>JijR%6(hY+9(PrFX4@`?A z`u&pJ&oN@5WhKG7K?yid*!0z%A8q@2ce6g62DTr!q#E4m#gv zcq)xLoKQNaF^#)Vz}-MwlvyK!H@D2o4|eAX8nG9=j}@ zkIR**XnlE+zxD7oQ^Bzjf%;KOe&d(8I#-7F07|=@?R-UkYpX!^AP)-lLV)Jumdo$= zl|Ge1Su6oYqY>LVp7oFIaBB0^o+6~;l=F(3DqR#UEVa`kg}zmw5^yvyljUis(Wp!Wkj zr60VG88cL>38c6v7ss5V`%=99m4{h(OHZ%GdA8IU4XnAuRC?Mz_}mmFdc@ole$ei* zfOZ}IA&00?`~R``o^eg3>)N;?Wl$_5gNi6%gF#djlp=kc8AO_b1gSw0A|)U-KuAKd z7eMJXs1)haLQMiHAT>w}1d^bXKtd8~LK2ev@<8(7DfV{}^E5h6C-s)LmMUMVM7%%>?eiM}GJRq8OTGhM}yV^Wn6Yt%& zIIe5D!MVsv_jmwfibhlU*6}=v(w(>k6$fP@X0U?rt>Y1q4k1psa=V}UV9l8Dp0UiI zrZ%>h*<6euP5L|LtfJY5W8f0=ZKD)J$RsfbI_h|O3ErRW=!(MqDrSZ|l)mw$L2nzA zi2eXV+-M96t%r58{29`!As!vuKPyqEA>W7P51?y(wRcY*;%)w6$~(DqZLp7X3~cUM z29f0?ErP4;4B~pZn6dw4ZfTEFckmd}CG$`U#^EykP22-FmWHmutIEDTzfx(0@eV?PzWs%rYK&{f5 za<`g79*bSU94&L4IBX2EhOl~o0NFj3wD^lYSL(r?C|0WUw94Z0sO8Z_UtYJ!40w(F zx;p?iO=}jPQG%}Z`oI79`1DmQ`@x|w{)2T_vDE-9FE

dR>xA;`P^u%69Hr)S=Xu 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

  • 8wzi`=To4SUL$w8$_2JfY(5?6s6yDhZYWGZCNtAnsd@kFKA2BE|Li}ymUhwE8hgt1ZMdwS z%e(mva7pWqRice}P6gogkC*o7(JY5p!utU8g_oU9q#X$nD+|Av?$n30=18JnV7etZ-hJFo|957wfTdxsQgs#oc zR9jG3sI+zlS*Q4q%BFv}Xn%IH_5kR}>Of9Tr?2H_FrF0f#1I%IG~<6Usd|UhHrh7v zS&!Dd`+{8qS*z@elY#w04W+cG;pbrLhjG++L$r1nHH7_o9OC!ks3jp#Ev2CHKvulY z)BpV_;&5P)pui5_=Pd2nW;`qRzg*y@a#VOJ4uTih+Hha7$ywG0&KX{(mSb&t9$|h* zidx=R%4-2>=L$5y25|nxsPCVth4CAAt#;EJs8ar{6T9Et6rTv>j`G7VUrFMrom=%Cnk^=gUXX_+jw=oztrW!pgqI z>}z=YnIZ$VZ{3Lz1t?V+7K_{z@=c3I?@J#H5?q= zXu5uPNp;o=bKp!-k>7K!@06n002bjc@!OfGQV_12bZIiO%5X|F0sQ=T{iagGc`esc zO>OjwoKfW0oRj&I7C(dHjlWMWy@Hx)U1K}I>4ADsa2YjhB%RK*(c-Z|Ue&tbJ0F*} z-Z`p301z85C2vA-U+#qs6qrq#f3LvMvqOrx6~W3DqRDmd4)k-l3;zH&R6~`hY2XF3 z0dB0LGq{$=Fs`kY+j{Vq-)KMk%x4j)cQS_@BW-bZSr5j|7ZCb0dlO6`uWAA+3XL^ej)k?eZ z!+RX;hO4{|uUwEl4|NJs+D4@S-Lr=>8}YL@G|fRP%*r4PY&8Cxb^`f|7wS6e&2?$+ z>Z#j&+9o$L-L@5dO0ZdtPw%`xLo(m(MZKYE$kBnun{L99Wd=6Qt6h-uaNsgNH(gmA zQ8R7!MQmT8Pud+rvHGMnPoqx=Hil2Hm3uw9>TP^GfrDXZoy4nc*T z197vB_&Up*IA4$zt>7+k!V9!Z?vHWZ@avQEGo?&Prcn|kefA?FMFDeQ+~#93eVwSR z&34iX3eIL9xf0pDQFkl2h(7P`Z8$jle@J`Fptjn#-8;cui)*1JxVr=>w3OmdTtbT# zcY+h-F3{pqoKPr*7Ax*nptu*8;K7~XuyfDs{rvZrz31J}`(@3V%$m%a$y&Lt^E{8^ zcjP*-7(-4~Sn$Nd7j2W;-yUdqyLR4T6J-DD{F88EspU}+mUi-pO}5Wv3X>&%_Nl^P z{G6(7Ly5Rt@62A^SNy+fEY?4v^N&Zb_Ir>2+e)pKj;Rh{b{$~r6iB-wKtcZE&w}~y+D}Ei*a{4XU5D%ku+h#WVAO{a zB9|C*?)<>{-?+H?NXy|X9m8SC@BYmXhe84$3LqeFkq5~YjJ0Q+IC<*UJWN8MbT#Y3 zi-i&BjV;|Mmh5YlXylV8Ya4}@X1*g0HxXUF@3JsFWsyv{W5@x7N} zF5JbGqEy3v6IZ|;w+a9!)RJN(UK~aI`OSj6m-Z(^NPS96m_)*HV#qq8(p7-WgU80E z&TevOl@y~QnB}&kMZqGG%X+X1^yU??1oIP+)A~liFc&l7jls)9sr(qVt+d<9n}J2( zd34OzbzySpsK#ipm-6-BoteF0Ps90MT-Y=|c8XL*?QYDCBFpyY3#HA3)D*F#m_*ql z&a~h$@qLW2A9psIn=*_K$bQ?UK14jio$nXL`UaJr?llswo5fviE3l1xTMTge!UjGGw)7(1TPa^0X{Hl&#%)H@bkn=M)K}{ z3=jQLcc}crMGMB$14O&Pyh-JhFuV$4g;1CS+yMG1WV?ZY>eSw&S%W^1e`+2psE6{L z&pVNe_PQ3PICX0LwW+dDLw?6Rc~tb?O@?4g2KK_VWaKCFZo(a;#!|V7z)02h{qA!- zg3+%GtOL-^+1MwKf@!{yDEO3_Qg1^Qr8LJlZrfSRf`IY$l=nBzX&3VCeb^R3hHbxQ zoE&i_2Ss3LW0Zw;yTXceiPBxDic1{&J`vNFUaXy5v~ZXCnOZ8NNjOc7-%NQj!YRbVv3++Wb>ye%)f4W=F~>$?3MlTnnwwVL*#^XLzUu6XkgJOzso+P5b>Qv3K0N zv!4RYd3Itr2TDa8mVsm?9R$mPg+sOkmfgWkPx0^TolRfX*q>4Nn+!|mmT6vn;`?of z_OI14tB5Bk?dPNUzZu|lS0`~V2UXP{z}p>&5=9k25H5xvlpULXCaVVbO$%m~n3dSh zM;&B6-(<_WbNA_PDJl)zsCeyPrQNaNROejR)__=*K?=lR!iEF;F-pC590H>;&#Te8 zx;zq$v1ISuy1bCnDa9B}y6X6T@P>Jm7@fA1C-=g<6UDdddCev=GI37{hNn>XYb$=% zh3i=fEc}|*aL~d~Ped!cm1%As-*x0e@Zn-B4;$;Nwg~fagIhyQe7SRvU)vWUtb;%1ooML?}VWu!acJ|YIl2DU@d1SybkMV@R1 zaJ-3ewO-HKX+)!5T&63P0!-P<+aLS`h=OM=3>?{=RkYrxy<@Km_K0U?mKAxc_^#6R z!(J+fQ<&U*GDbvEYYZK-ZRv?`#EHYwC+{DtKgz-?&XbnZ6m&LhmYTf3tJzbAVmd9O z<+$z;?~h zZC^xeFCE9`)V#`1fpadZsmQx=8sBt{2i>V7L_zd~m$M-M2H#|C<`Pm=KrV2Wpx|{SWlNYs$sIea{G3X|=s@ zz#LiWMpBOCyj=RktEbJ4E78F(`D~5s6DDm0`}4R|YuGBYW-3{n9a=L}i#YgrNlMr6 zzU!J9&MrmbZ5ST@edbQBjYQ`=Lr0H0@)hHlVYwOk#qOjGJ(zdZDSq-Polv86e!OIE za-~m1)mEWr;G#w25+gYx_ul92Qw7|-{Tvx6?JUQXZ{umj^xnyOFE5W(%K_hptclqo z&st{myum1YmHch@A{r-NtRO2UiwcPkIhrV}-ttb&e(MN$TAQ1QV4wR)=;rhVQ^xb* z4H?N4-)1QzZopHh<4n02a?8*nNURB+8kzAc@CAz&8oymJE}Owi#rIL-GZ1De{w7Aa=u z)}Z1;p~$aE?>4zp*Z>~>M`W9NV*tCq4@I)FHeK1M+Pbs51qJ{CBx-5=Xai5f>-N3} zmF68nmJL{~ke+eIJkD4LumM27`J!dAAb=E`;|I`WJZ@lMVEZ@$tN5w86f7M0IgzVM zpE?2OqUNs%-}@EcN}SrXXMY%3g#b_$7=u3{YbGh#M61$P?_?2Wr^DF2^$Xi<>`<>B zh=((eWk`Sxv~XA|Sz2*gXFC5=85NGUdZ`-7$()rl1{hw_J4dRZz%;AKBKn>gJ)2bb zY~n~KmTpe#paGbJKcs9Qkpq(rRnXJu$3d7OY~U$uPXghgcK)^bP#ExrKS+S{10^xN z?5y=?DfN{oF1_!{=<-!4fN%0VThLus)NO3#LwML1UURmb0zZ5v9feAC+;A^UA66zp z?gP=<`B;vjxAnqW`EahfVcG&2!lAY>mjCUC6c3^FqO%Vv=rV03VTHitD0GDXAAt{4)VKOZJ$71)q5vIDA zw{^1%WwHNBQqQ>OsGJ>uH&>;Xz2tKFl50@c!otD@_7?D)40Q#Zt3_uVXJYsHSsYab z|7w%F$wJKfPro|zJ>MR$MO9%H`vr_J1|VCZh}tTT`$#!=9i4i-6{~pWCC{L;kx@RA z*B{rtzfaQ1OjBF?MWITU0{*(9EERfZYrwD+@9@&|?Qm+0vdtHO5fqORxuHr*H1GEX zt7atsWs|XS2_$$k^+Wlew8nIvr--FOS3I1PucS-*pK-TIeIIunE9U7iPQ&*x$y$-Q z@$)j^QI9ea1adYUgLxy9M+ow1s%R?77_SlcZBx(!>Vtw`iFICz)9H+or}OWK6B9M* zPZEuTEOTEY<7vsgi;KiAvp2F@_eDl!t^D~7!RUgRcUBeP0-MdjMxAppkbWd)p#B=p z*)_c0w9Tq;XeS0o=|ArnuK|t;Wl`CJwi>z|} zaQ14BT}$pF<$!qZw)K4NbJbUWlXmcRe}Kl!U;k@@yGq~j-yh1R$uFZ?& zoE&ppZKrp#yM#g{vj$QVc5?kA??qEIFF}KoW*Ud=RICoBJ$1Wh! zvN!5WDg0hd@z?ftdpsM<$&@m|IXL(P)dkq72MwWhu zw>moSSpDbYDWA^Ozlx`0FH&ZVt`M<%1LFZJz||vcY%t%xvK#yq!TyzfnO$aVf3CV9 z!?opIhkCZVJH_UD)nNm&qOb&WSI{t!tt-=JVUVIDv~(3Fv_7(tg6qmCI3yr51+8j2 zVR>w($45fKB-C@H#pnwf&-WmY^Nfx_&g-f^S--WD-i=vfUfe}Oob#x&j}KA_*4amC z3(x_XA}KA@UrC|dC?$u-pb)Oz=AuP_*L-N;l$o-gKM>sCG zWGn-*4Av)Jiw{$RQY$U)O9b9OyxVI%M!UGsZ$th+gf#RBqj0UC<%BdN3yhmm5)c8q z+-bvRh62VLe6oJ**Lj)%9wuzTXMH`m(diYvPhwUOA?NI&HTAT3jHZ}l_;Y#v4>uX3 z!QxiOd6Mz~__F_=7iL@mI{@(vLxnS4iR1;YugykZ;y5$5s5>BN|8!|W)l7t3Ttx=E z>cdxsXTv``^D=Ug^;`b@iC+yuC9w#wQ-YOI(zo9Ox9+M6)$$1rp8pH)uzf6;$t)2# zUPnteUx>c%evSENlVXFYv4H9Gv$UgOI6OfMxH{$xvmV9gjf}}ZyONX|o;JLcxqtBh z<(wsuh5@W+UH9ENv!p3(EJS4@k=HUT@0rQn_I@B9rePL;6>ll)(2W9l&dJ&(bI&p* z4GNF__cdk#)gZXCZoMj;i)QZt^KS66CE(>4pp+@Tk$8g1~}h zz|Gu^X&S8$4piTx)pT8b=_WFzCnZK|`9LD1&lr z-7WwGX0n!Z(N&;ELc_mbE`?hQxw0>%Xe}%?$GY3J;IUb*Td>z!M3Ebh#Xxp4NEdZNTfVkbJ z(DJ#cx$Q&aFR|j-|ClHVav3NOU%6K4&KS$0l3hAx{)?|`|W?c9Hf^&-u^EK z0E;Zi-|Uva;~Q%KC;zR<2ASkBa0NhODS3R5BEmwl?2a)u6scZ+O{N(Gu{forwMJh#-&~dVWw6a}+B`blu;Wz}TWnW5d zB;mImz$@tPUwa#8>1SkT^q8~<`r?}FmE4`z6p^Zoq^1L^@jRDTf*di=FOKgWo@KG@ zT4kp*;7|{L6w9mF_2hnI==0M~j28zrU|>D~Wmx5~#A1|)3Ldkw+*`~LuRzRhW;xsmexJ= zgUrRv$``NAsoSQnP2%O z7VAY-oM0|Y^(ss2eK|*)NX01rY!1Rq1GSZT^_z1##yY=$NP>FQEk2=IJRvH>YWa)ZL2X^0 z!r{LkhrE9oaIH5ftfY+2uMaQ^TEei?0Z&vy)~qeNYzLNkkDtQ}e!6ZAN&H>@ZUE|} zGaAHCa?|l&a`K>haqUb62+JcJd5BHRIdt_!`|O#VU$b>!+-fOUH$#tV9xU5IHzs-a zb|MSw-yJbgEoB8$$t-QT(~DLRB6}(_!CJrWOpO(AGw7Y;OKqYu^SD_xE1p}+_y59x zfO2?ozo*D;bba{IA84AFmx+Rzo;)jlO;?uq)hzmYs6iN%-Ezz?{E;!K@^V&adPsQ; z*fEkVlTA)`S)8UQVS#YRu4jF%ejzyPAEC~a7?jFLINbYUSY@Ae%T{_#;t$WH$O+U> zymD(QMGa2jFI4$L{M%h3AM?ZYDUGWYIAoI0ckBmAm73fTamU1P%ZjQIK5>6|1Ih0{ zF@uzzBXDTr@we!GU8hMiyvEOiEWrDO19eCB7N-D}sspr!7^BsQW#dm8K<;|icGpg$ zij{qU?Ff%9FDTdz{}An{y=6TC)4V`h5t_Z9jEd~jOL}H-1W~SYh`KptLS)wO9Wfjz z1WWS>nmk1^CWWK%s2^hIY;J+5*x4i%s^e%8?UC1hMU~MPpU&J+s{yF}%G#LP_&kDH z%THKwYn8XfDZ7puy@;Y1(u8tu8xkeO8@F4XhfQS;^a&vupx*Ta-*vX$u&_rJ(6 z|6g@d|LZzYL0rI#MB;d&LvX^KM@dg3(Xsj27T=INV~6yJucUt6Tk3wvMEuI14sgcv za?KUrme$6**mXq12_@0D2zJqk0tU^50Mwy~TZ}A6!9Wf{9P9BXQtF+_BB*Haourg* zU5P$bpn1!O#8BNnbvo#I@9MADacO}3NFqA!Un*avZr5r;jPelA)u?$EmZ=9v^h#Dr zHc00+e2N;@`9>P8r!je9>mJh5UmIIO5Xh$nKt}UyAXt z-f51p^=cw!`x=>B?L8`$pVo)Zv;wdM?ql6x90OTF#&_Eyj(~eN%TcqNFil_#L9w9W zd%orNM@z3`Z4FDd?BmZ*Rw6EbR7ShMiobDWX;GfRyb9N995ZgkBt^Hq)CbD7+$851 z9`6w$Pxy>mX1AEFoGzlEGmwy0o3aCwzr()x4N=#hf(uyM?|KAM#5_Omr!MvmUTm5) zG>KJqFo;}*FN2cpi$+)g_xu?$MYT@L+4TiY zSLx@=9ySg^r_sH9#rQUPpT`m*SHEe9o`}1RSyK6U9Nyp9w|>Xvq>hJ%yEDprie9ZCTDR=x4@{+Bye zH}pBgZX_$KLN+HZMeY#-+t^+kEW!Jvd`8`0WiMD@Mot&tpG8ljc`GW~Q6@Fequh;# z{H}4tsQhDgZD`v!c2qlnF{iZh2-51Hf8H1JSl=3^PK?%nu+Hif^v=p%E!L_T4tHhN zrd`BC(Su`D+_d~7lP^N!mNLY7xV9xQ7gN%BvDy%g$A%)kM}Ry)2peJuqJsQ}i{g?* zI99Ye*by8)tSUto#4?D}!9*t|(V~fd47j=WF$fQUFm)YyqTOP3e%RvIlnl@e+0{b_ zF8ZDk-MV;DbP8t&S7TJ)byWvk8cg{|3b|R0kDWqw12)*#rux@GNvCOr{d6HNUp>oQ zmI9O^*Sj<7Z6e_8H5KdPns0A!N;oLJmCpWc=O4^x9jYKGiGIuDN(QC_{BWIJbMxo8 zT*+5}a*+o)u}(v^)K{m_7Yb9DxG0E6T=EazX&C0u$pet@m)h^2%c|2{tfJW2EXdMmeG*Kq3v6x)?i%ps+$($iW+I%hb0sj{FCFdi&VUsASTINpd=`wvt* zPVSKX(<%pz5UE)2nD9?nUUmLsQVR zpl_vSs6;eD6MzgrvWDzjg=co#a%^`E3bb4A36D<1cZTD>MCXjE@U!z@g8^qwO(2L=v2T$af3fotvlQ-Qrtg_iB;aYME%*7cfj z*3aV$I0H}dbJrBKI-(qN0HWTyUxYkyz9`9^wSI;LSu67M@Ko=`Il#a{HX}go!Xqjw zDjk;4H5urR*=OP}?y6Pz@W3@!fR=R=ixHadm2%oVSf`95xx5*E<|{jfB_MK{_1eN- z#!@U>FNaym|2!&tFrHSBKqX|WSsn$zpU1yKv*-dau?o?Tv6r5emxU*^KtUwH=SXO2 zXY}1w)OxT)sC(jpLOX;}l0S%e>;VS5;cw>hhm~e^MUqPVdQr)ECR1}{sku~UQm@OJ zt<2#s5nold9^0v7O>4X?zzXoejTiylE~3rV>ZAZ`<+dHdJke|fa9f6HMJ5M1VSA3q z5GhJ6ysQb8wJV%C*vIx| z9*G(dFlA>le=U{ylJz$nbwgugdpcMAA%N>#7BQ2wdfs*Z2U_pf4;sr<%0$MNt@+GX zpTTeHbXE$!5%1a3`aZ*%XV&oAg$JrNLuXqu8>xujSgAR45I>63W7ltl1 zyaQEBgbOt8a{l>80qY+O4Pf?rVmqd1lyZ5xUN)hJA{XhT`>FVCV-|JJV666Es7Q<@LB3aS3z5hkSwPGnZZx%TxKQh8swOXP zKk*l~ezz4R9hBGJ3_pDH(Gp`)5V9iQ@)45K&kTYzvzg279Eu<_y;6zC%e8N_>6elZ z{h)9^MVQi7ZuP1*`;gX_@E#6=$$hKJbB3gI?`2E&N7QRLV8v@)fo?WE1&P55>t(GJ++LS!zn9JYEKk5XQMw-1lMmV=Z^FpjaOKcjnU$9gbd)EH1veWW3B+ zV3P5vDhW7@L8}CB&gSo_+jViPVuRwH&Llj-oMf6|m5qUKVg!&*=-Fnw=DCO>8NTFJ zluz9ZbKIGfN=@qN*|^G)8az9B-~1dSd%|kqI6(8G|FrRLA+zs44>ob`!QU9@ygxcx z)$uq29U0cQw*Z~Pv!ksQ{`caA+@I@&g0U!B`-&Ol2Yw&s-|;AZv9Y*kYrywp%y-Ui zrjSi^_msYQQ!|?L!#g1sqheky%|~0tp2rdUV7(<)jzyaK1ui3-cJ#9iJCkr(v>Yjho&O-Td#})zgMIVi2d_?J(#(b# zr2krKUUch5Xgmqcf2$;Zm@xQonY*+$ND=Cg$?e$yIGc(nV4FMj=VBN|8^Q(LvHoNP zp-H?RWJ}u?surs!OVCF}QNMwd6wBwZ>sxHp+^^suW!vn*=j*M6Np6k*=(m#!7Ulr_ z-HWudqxye=SqWdu3dQ?8&v`Jf9wOJ%ERnpm*c0_VCL{a}qx|lGVw(s(99Q1i} zQSKYt0%*{41|~W)xHk1P8i6I!biI|eq~&8X@-)jGq|GSY->1q^o%LO#(u#aX7T{1G<=(nJ=^2m(rtJ$FH zC1cBX5@EfHWM<4?y)9kT|4ymVw}Yy#Yr}k{rjjG=lW;#VzwC+9ZL+KAxjimu{Zm!u z#H2FoojSm{T(1?~>^*D&G{O|V9(}wc9S*I<$^S0WHynk=`rs@X-NzomHs4?c_hn=Tm3CUVVKBqhf*7EpK&S_UzLYmv@t|7OkUskE| z-b+h+Zk1vmO8Wl7G24*eyXlaH$qz}OA-7wDkcZ?CL+L_Xmt^HcuyCvxY2Ra5bLuI< zBlKYLIWv>SgC$(H&vA*@E%Zg4J#WpQVp1&g9bOoGCFT1WfDT7r0=Ev>Zud(0g(k^W@l43=9iEXW$~H840~jjeop>?e08XdZ*9A=awj^?Xu)HIQynst7WVxbqfLE}0K{v%jGtr^_LlOD|# zJr-q|!IYrZ7eN<4qW^UEM}){PK`{~zl42FLl~nc(e~C0ozo_tN`y*NKm=2i*Z7Ty7 zkA>m>=8Y$NsDp)ku@XZS)56G+60==&FW^YbH1_D{vxheW?Uj_j81BWtcE$I#4S_6` z2Y#Qm>}=81A=CugJ~&bzgcXJ3kjA;R-^Uf#ZkLMubmo>7UrCMHv^7;;c+0nF*2mwCMS`EWZzZPpiiy8y88Nx-yNaI*nMu1F zhnsB(Xo#qzY)3Px%BJWz*MXHN%`9;~df^YhoboeU-!}>0-EPaGT?2Rj@_wr|`#Ba2 zgGd&%rKemyubBU9Q=TAz>%hAhh#(sM|IzBfK!LF$X)bkYFbufm? zaeeCZCG1s#O}3_12L9b1A8)F49H#q{)|b@kv?J`9@;o4q9VU!U^ATrdMO2(A5XfTs z`h8X)OT}1_$Of1sx4I^~hzErryEdXE5oEV&GEty7+Ch!^rcskZaQ$GenlIT-CG-SX zyJ|*MtMgr0fx8bh3j7t3&{&q~y0GCE+a=e2OM*ZpJdocK|EgB+lq4Y}+uz7+RDGp) zj&ANbER!-xE5{9&74$L({LS{JQ^V`HF|A(yG)=ILUz}1WNiXeHY_m9mQ|vhkDVrgr z5$GdFd7b}ZsCdZ$T<0^j80=rJ&B`OX-|Qnze@gY}M^c_MH4BtoLXe`fSc45kQl6LzkzTmd@hxgQg@SbB<7*AFaw?f%ov!P2sF#tjl!aHOmVL-VBo z@>79ao-JTBF5&E-&(tr`l9@PvF9Bh<^jp5*9+%lV;+5rT>*;qllht-wn1Yoge?gc5!UBRTmT~2(}ADy;yr%ug^#ww+yX3? z;uVgBb=zytKNqwGRZ^*#bY!XrMfTpJ^k2HRN$H)smDAVAjSKTp%yKQ!ukJcVm6Xj_ zVZs9*qzH?{%T&efZcMqGOIiXg&&RspdMs*x!7zEha#fSAzE{C70AH@p5F!fX(!_Zr zD;2>%!`1gQu3oi|EB29hD5=b9E@8_eGh=@#ec^1F=E9ccW)NgWH{Szj)HLa=RAx;8 zt;D5UF8(u0xTLBiKCk2r62b=tm~3w?*D-lRjweY?Rw|xWAw29W3`_e{lC``Tg+ICg z|ANgrDFNMy=3-P**NfHA_|TGxG7zp!i7U0_W9f}!o+j1D){o^oe}8aSPTZwbZ3 z&;OnK8wk~t!+VtAQJ4e9vTPPu{Sw$wx^$7lI&{tQA<3rRev(IV3sU%&5ml);Q;)(> z03JdbJ^r!59XT(5WH@MMW%Yj9BaY2C%bN>AwG8QP@xz@wrv;AQgs9{$^pRjI;QRtZ z-j8&u*dZsO=TyL6)+&o+sSKyVxISrflX-|@-zTRL_O8+pG|fH+vMd=wJ&pUbfxsz|N&yY{7U4m*H zHh*TL82f_Ipv%eCQoBBJ6pLrFC(F5lqT;StxR6wtH%@b|CjqYDE1F+hZmpTo4{>kD zT5BDrGh6Z)cH|XrTpCt!_DJ_UrCYadaEhUYBOdtLD^XR=mr-+~^sX4cEkCn+9ur;L zm7+O4w#a0q?s~6h<5P;5;>%~^5(!qt8S_^i_fx>>XU#QsMbonqb|azzv3CCUnoQ$! zV=GUUl98H=qsr(JV!XJk?QlzaV9e0=K|e`(n<$46iygi)dal52dbz^j2}SG1s4U+{ zjf@d6)N0W1e<;tEV`_c4VHh9EaGkv--TQ!Bh6@iq?kxWHP5F#N4#u=RUSyth0(smu ztc#Nleh(*M5*G#CCS4EE9?a^{y}PxUxK9~nT-i@=Q#sIuqFI-eX z?YZ7?FM%nV8D%P_!Mf6XR8whpU!fjJ?N4GQi|!fhC|z4GY-@rR!~?>-)1^il@oozP zqpMSb?+3m;64W4EbL%xXAG6-Y*Fx&9YQO89ZR-1i|K|W>Wqwlu9nIHlMPu@xh3@}k zj5~guYd#W`skj-tRHMHT<}R>MF|V^R{o=d`SWsYnqO>iRve6;+EaHjoi0VjCZq}Xm z2#eHZZh-4+R=*b-csNdPK8Ra7MFj{{@zL}r@fuIoR2CB>VQE40Q(L?K2o zm}u?&OLiPQ1Kj-M>=gxrBaVm^OFo<+k>YG1ipb;HNnZdw;P9GOlD_kU+Q?uyCT{PW z5~42I#bC*U&#Vt(LNI52A}l-ogWVb#gY5S62{oBI!+Uznxa%JpM7-93`Q_Hz_X$Ux zqJc)ne4Hqw>yQH#{|lKoCAQgr^610#a^n?ao|ES(!0>qb4REDaB!X_v|1yFv;xhIk z^yowl>w4J@h_+%s8(&A?r|k{Fn)%$z_p6ufO6om-dosS43CHOjtvoo9Uf67a_9~d+ z&{RQAiNbCDAa|a>ZT)WudF05kMpjmL@7+hR4&3fqz)uaxK~b>IKO0QJK7ZVuqM}KS zT0hGgQ!I3*j(XEznSed{!ATIjx0zB_wj^866yjtpcm>(o^_XY62W*KZwwg|)0%@IO z!5BQWqNW(P~2g`%5^5SvrUuu(H_U zM=36KYydWWjZcz7+hx{#`y317*8DyA@CSYvz8dfuJ+~^v|AeXUhH|akS}q+3wKX%TUOJ(MppnJKYkwVTN6OnZPogmdb@&$k7b)6y5u@fG z_OI(~1gmxypRCLqqyb05@>0KiQB9QJ#eJa@cSUp{V^dWkJPYA2Tq+(}SI-r;pGfIj zxHtpBzdjT(ubB1i6(!-lc&9&NGx%lGpSM2MTU=Rz!p39$W2}@>O1(D8kHKP=A4NAZ zI=D5;0EQq?uGMe%w)2TUjBan11_uTi?VP3Q74>}ej@q9jmp%y?v0Lk&wZ*DAZ4uCA zG*Ef`_IHL+K+zIyg=E9v+bawNyT>-RVeL$kB<$vBwT{BoLe{hKUVW=jYE}#0iuAN& zi%WwnC*E>hl;dlrtP{I4L44mill;sleyW{}A7$isq5gcA0prv@AU$SxGp!yO_{Q(+ zfypm7MfJb6S4QyljllUOccfMX(>=byWuew@bVS_3`_nw)#?cpa{Vv`Ezy;8U>^2FW zG`&BnW~95h0~ef^fa}7h$6p~~qYaT?or@5I-N4#t%bvQrd#0fBiHdh2DeH@AKczIw z1&$V|OPVKDO4Mzu#2Di@rrbPN-eQdnXUIu}wE4i7?wPZWIN^*e(d$nIL!8ue$CFPR z*-t^<_Sa6qx)-Bgl@1#3C=?8KVdDi-2=_#-$mtva?8mfGt*7U?R-@L}rCq06Mu`hd zO1+c=y*MNLG<~B+&*?bl6hVN+1FD4ZPRH1T6JC4gnu(+t71KJ29Unr+P*EelOdSgNcCH}j12uYU^}wMGXZPueo?z4j|U zpQ_~2lV4vt@rTGsM4^zPyLqenmml|&>tgp52R1>wzt9yFQoQ*200+YKq;1}dGwck1 z!e-NEw_kVK0bzJAbK&iIHhU*WcffX?7^s@DbxRPoFGDz1L}LHB4px_RpA@gEeyVWa zy*`)Scgd%-wH>gc;nzVFey~ty*VVtOkz*Rx;@y<;SlzbNeNM zK58kRak1T((7!upRuhIJk)B7q?&kLEJ4zES2ABG;Ufv3Rhl4CSqENQOyJAAd86P8X4w4v6mmdc|KaHDKUM=`8Ney%~Etvml)+JQ7kd3%O|BYt$`5O%Gi1{JTbF zH)Gr{ok>FrWj(N;Xe$8!uZPfJDoX{iP7JgV*bA$LQc5ge4I62EPBl;|Bot`jBzhz<5gV&x~>; z;X(zy8!Nwd+t0FDKQ9Eko0jg2@*FJJvKw@nW#gK8fQ9Z_CxN523p)2uScj%c;71MOHgIz}ioh4gGh;?C;}vU(Hf%!f z+*H;^^>S;6d}D;wC8nV*MJ>#Az^-9rwwi*zr0HKCte*wGvp*5zbAi(v zG^u?ula}={*7eS@)Ea8Y{FYf@!(14aG3A{0=S}KHqJMP9&mVfEo0o#xzE)T)NwlRm ztw+HUNFYjSO%ne_%W*#88G)zYihuCt{!Jus%ak2brF)c4tF8Vs`}cT@KaUMObr?VW zxo@T-YU6^U=IzMGGppm%1=ohB2J_7glQ2w!MVt4Z+8?soM@o#U-r%YgS_&f^ISQ|H3wnOu zhL$r8%g{YhT#>lkN%z3N6YWAYhOmgeAwt~k?K!*cXl@RsqNDueHsXg$2Cx0$qMr_= zexrj5<2_zP+jX-<5vU;d8r`}vldw$cPsFo*Kx+cv;no9{6j7JEhAI&D8&FUx9=-K* z<@to9;z_)^pCl_>6{#v1ocMs--!$zB;hcjA+%lP2hnXOHGQ8=**ZRof0?2* z#!v1@eLU~i+G=V>-EnobJj90F&zx@;#BbGofl=J-p-mxs9{Q+x=ZlM@^U;S3NE&hkWfmboEaQXY_;0Bwag}45a zhed17NUmYpXcY$6b)@AI#cRW(>Z#4Mxpdgq5@k~{ztfZk=3Wq=<-*4J{Da2a$ZFqA zGyBT@9^}@6X%@D#jvUgpK_%OIV_&yPo z@#$3Y*R!A<&*zn&?s4DOZd|rpwqBe02P|SCgYK+YhA9sdF1LDqF48~(b{F>bv*7;07Gm;IpjBuxmmGc@NDyaNumz)v}G>&46LM&zs(WJwEwiN?73i-ec04 z_E^2xs@+H<|F_FL{3`M72*thCWDz2yTeq2Czy=FA@a9o(9{wKtjb^Z(S^ zp0;6*2d8##M8Y3$M~g1okAi;KOmr{y%6tuE4p{$4BcaT43!h}Kq?ZZ0@jzJA=^Z5= zU2-l|G_4I3)AVjsX~=1YobW&%belNaOz&C|kLs=QTT>0!!T*U)) zTYO>iTlz1glcsw4p9tJR0pncI=Jh4Z9jg|ra)2s46u;qN!!smvw7_4t+e7nj$hiRC zSR3EXGc4LP(Wf`6Xn9f4TBYu>1(YKT3`%vZ@R8jyrsfPDJUkl-{mZqD1 z*oxU1FW3CB6xe%ou5#FNCVzVAcRo`L=}TM0Jqg;q!zR>pVvz>VrGu`HbB6iq@4l@! z3&s888M3gj{N?*gL~}bOB3#FHqW90n!#1YK4`9jU<5jQxCw%+qZ_u_g^SRRHN}WH! zr|T@pqpu%WxJovN+w@vj?g&pW3u`Z+tp|dBPlA>fT$=eVqh(5N<6oJMf*&^>A!_lm zr>|Xb``RTv3--t25BaCQv_t+#3F?@*4zk?t+FzH*eJ@&H zzBg=t&~H=uF89owD(LR{NzTqyLp(S&fMfTQ&UjlZYJTti+Gx>w?*5m%))1&ScXGUQ z{1Km_-2L0d!Fx58Ik~jmzb23n!+-Y#v<(`?`7(VdcmL7!XaU`AxAeL+Dy)O5hccEL;@7 zxxYneii8Z#x)W_A zSSZ@@*bN))7n(h~a?sg_k5Y{3wbHYMfXHe4I+QU!G5fA`(t0f>QFkjSa^P8t>Ee)} zUcUdQl=dPsKGbm{*n0Vpo@t0Lm%1*U1{UGP_-rJ%b2HP*UorHci`D44H0W(* z<4@%JxasU?gQ{=2<|Dt7<0Tz2uUwmGFbq4O3i|J72tbDIHg}kg+Bzo zQYR4vEqjg`8)aze*V-}K4% zkGn!1FJ(KGayQsc2}%g+>sbautURJpbwCsw{Sm}=N^AhwnGp?TWJ>o5`MG=lCn~=x zvM?svywOJOda}}!639|6h$6p2d$;oRIv1=`{MQR3NP znq@}zL$8NEc+$v(hGG;54rS|`YreW zgT40-hqK+<#+7-LL?TFn1S2GaNQe-f;YpE*77`_Di0IMFU`&)0go)^NBq4eW(ajK@ zFnVY7(T7on8N+vH@BO}ef8XBE^X}jAegFOTKaM$+!*#Fgy4PCQTIV`XUT5uJLaOd) z!Qf%mavGsRj@~Vb^FFV|@P!$2`X#3K; z2jvJH2X$b0;II0Q&VUpykuiB`aEQ}8f7y&>AL`(sgsyf9V(I{9c_rv<9>=)J`M~Fx zT53ES>-oU0-miTvH$Sz^w;h8_yTj{OTzk!Q^-1^mE+d^n&m|M~2YDZz9`cGwtwkm5 z&j#6EY%l#z$(?eBX;B-$3w*$8NI6j4 zmE~A>sWZ$hGZ8JXawecnl$pD2K8vg<@jQgL!g{dP(2ej))};rt%5>t8^D~m)7oxYb z=W9Hxx~WGbbUekt|BW*6e7&e_G1PobA-k%T#@an}2JSxW>*?9F=vOxiS>crukB;OZ z`pN+!*Mg_dnPAjD}-k#}z zi{mFu1(xC|*?^kiJ(}6fs0sp-x`rK|+iFF{So()wol`kgp($uH9@a-$ba>smmS(RxTYiji# zHaP>frE@jRkf&cx;gj@~hnhf4^AeCO2fM@=p>H{$_UY(;h z!BR^^r|eex3i7rs`@ zz!$BgWexUbl5<(G4>U!nZ6w7MDCxvv)IN)!9dtShh4pzjQcxVU9xNtczTk>v z2GTVyCqtHE=ST}?I#w>ljuTs#%i%jqGhBBlzq63}E~>r^-=5ZBu+~P#PILRW*Z=IG zL@v@kW9c|-*A7TwWVvbk0c>WoY3yk^%@zE}DA0LhVn{K)jO>}VZN%{X=DUxi(g-&+ z%MELl3-mz`1-SNP0_J3NS8IoqPxjcPi{|~n*H>{FK4nOWgU6|9Fv&kFmLn9!ckDJ) z?)eWDna4A(C~wxoVQ0kgb?*2=|LZRN68lA^)ZuaSqsRVUmihCy`2~Z6@;HL`xz4n+ zQus##X~OhQ^?)w~Ba`PQ%(s(<=lvUAITz|xy}06&95}v)T*ZwZSTwJK?p%+c#cRZ< z=#W&jgDrpmjR9@uZJM8Uet3Pz_+>l2x2wQbn}xoDii&qQU@-TkohWvIcBYnJPy=erp#t0QzW)E%C$|uW_o;SOKwG0 zKjre0^&OC<4rb3gx2!Q(@P@rzp#dS(;<+MIU)J@ER7Eb&&DxRZbac8+jq(s*lSQKz$Y(({v5|-p%&2W#{6}k8+uQa--$And5>tmKT_&M~k0XnS5bVR2(u`1wuQe{5HnJZ6|svN?*C;X2tiiBJ1Bzthmq_ z=$rT&ZTLlmy%OrUX+0D5799F2tE=i|Yw`n=^R1UV5fxI^>4ZAS-fYi019jteo)R6{)L`c7DU6Ol#fKV!8Pr>O>eLzN;NAx);H_ z9NeM4hK_Gl>><)VEA3g9ba|)+{yyFK9u$9NsN0|ss>T;12Y&JzVO@dP!~Hfd(|T&-lm z{c{a?L8jcS(3@IE7QaX8GR6@f=v*V2?JP6bj+ee2^u|PsRXx9(wiHY$U5DwGof3-C z-kW@KaCtMHh~1O;d}yV5B-Zd|jb2j!hH2^I!Ort}ULuz4x$1uWT0YF-vA8QAXu*wY zEI`916fkrzz5ja2RoU^(NN!&E<21ci$8hO4@^9R3r{6G&a$j-;uf;puQ%(Vs;x)ML zDN%@>vFOcGi5bv%^UIkZzrmXAAaUGm2O=B#R()@r*q-m}n*Elr-6Dez91$8f;o>Ma zb?>^hb(HOgERZ)Lm{7+<=_D-|tb>Nsr>uW)cd!i4_~9roPkZok)7B28YMkER(bL9< z(jchd<0yK7`p{((k2U`wG?B<2UG7@+TwaN`>_bkFIbncE6nTl9?@fkzoWHpiKCQ`{LyFLR~O?Z{@~aL7D6Q;M z2#6b`nPvBnoZ0w&jf0J^Cd1u)%Z)waC@zxxK&QW&DkhGQaDRP^N*C=%H03K&qWmnC zb3thC3@+D1FXi>eiJR44#$yg!-KW9iYdejJ7TI-mHzl||FD@)oB%ZN4Z9Os2hZLtT zmMXseFD?M|*xB{vq=XOKqxdvUjk30bIgOfjFWY06>6)^!J4V(5x^&cK%8e3mbjC9+ zh1~+@$%KULC_i<&S!SNa3yMekR;^@IEJ0E|G3ylikl3lk)Kj!W`_xV8;@j9&Ga{Sn z7_R2vt3RqjaI9Hw3%)h7ZzhW{sIsz2s}EMb>`7K4O+>FUcF=Hy-e6{Tf{@P57aZL` zNZyjAg|Jo=ru?ivrYcn-en>o$PMEjy*qL*I>V@7s&fO1q8+xvilx4P111G9cKJ6(! zYJ^FQ4(=qVgzXU)nBua;4@az!Uuy{H)sSzuYhYb@=BYx#(>#73eZUK;-?~B9cUO)$ zhcO8hGeE;h$80o>9E9Cc5{SMvI7H1v8W5B}TD^dNCq?nXYlSZkJm69GG}1f3ymrgXWWA4Xku@=6!z{YdMR91R5LpLy&z&uo&Q+oMeK zz5;Nde)xWP&x_@3{t-{Gmcqs9&gV3sTK`2><$gOF7rqRy-ew6yXBUARE{);hiw#YK zl5xw!jv7u1HC|kW@j5#SX;uzSS;2wtB=U5KYV=2hxlQS zb#HUF+K-*X0cOS#)O}$lPv!J znU@P?g0<*{;5$~}hcY-1Jw7huZdAhv=nmVBgE}CkykgDZ{>>6MVc4~<#LcTGtDLbg?P4+9}bz0kC4yQsrNo>3D$4R0NQmP zrXY6-S2opho149F^eO;Ja|9QMn_?Pz^R@W=D~m|V3{!xQ0A#KW&k=B$PUF9`g z{hKq5Zj^l#bT_BAZw?T9_O3dbmQ4!_g=Xt*peY+`x0T#vC)y~rS{7%#=H-G8mr4Hn zjo^0Gz(LB=njD9sE2=RJHDH9fM1J7h8HuqA7 z6{dK!E6Yh!-p(6eoI+^?BTJ6vA_?Dj8Df8$t#o zG&OI#O^Z;L#I6H1yNyQnwfj}ITP@Cu+lvzt{Pio5m3wR9@Q)*4e5dEUTqrq$iXcX# z!u*S`jb;4CW^3!>)3Q7R-3k19C;2cDd#GA?@puM&bjjR%r3v8h7aogi-45}~Oewp2 z;1EuER!9$vBZm;Am3L-X@!#&7Nv5J{qF>c+ML2hG=$@Il4~~5W?NF;C3GZH7c!M7h z*GMP!A_Js0l*GdxJQS!`4k*%`jK$zl&K-GbrKqVG%x@AUEmgWl)sjoA@=UFA?)WAW z4I=Ice|!k8GH=h2@E>j>J*;SIl8TWCs?EU(8#_5M61N++NEPUHC%OH-7Uuv-l7W4Z zT^+8q353!R+pWSKB5J zE|UUx_xz*}BgzvAdCCVl+G?YtAC9)dk3R&DEkhMK;le=$;IIcb zbz?z!Gmv$${Y-*SY^_de!p}8UWeVfLKISmCC_~NawKrPkb76o4WQjk$HidP#tSm7T z(OEviO1-|~ps$goJrd6m_5|!)hxdC`&(K980;a0dD}UzF>pxVVFf+|TdP5R3P(Q7qVL87kZq2SY7x(dn#YR`VQ|T>Q#I!%0Y#w{{yl zkN*i9c$m*}OYo3udSX;s4pk!YA+f$8JYF0d%+4%5!7HlptmV}UUG8@eXnto_x6lo- z+o~d~GN;_Z3;poCQgjW->zu-4UvhKRi82sNp4yIrkvw4Nl_yHq5xKtaNrNzY^GtThPSsky!R?&HN)oSXz7tJ-s#e^KKe@20d}3Z&HknE}HV4 z+k+?}b7c5nd@B+>{D}22rdwIKv)`&mSQQUXO)qRrJ$~BWFN7I8u#tyWf3(>Yn2uj< zI+zZ@4H$;T)^`mJ4b`e&8qTP>1HT_2#PnWuc)%$^&w#z`Rl)MaIWB2O+Y6k-n}CcWx-&f%7texPFddk;^U9qPN(S!KtW4AtV2cK5J zJQuzznbWC$)>iw?R{+|+VD;stKzjD&?o_L}N+zxJx)+{z=wLn(e9xV)b$U_AB`NaA z4F9gH+S>c^@tuD1X2Rf&{o4!7(K9TO{w+;v`Fs9mCJ(z)E#~@$^o_Sf^3@eoQ?+rh zXByKt<>)Ra3%D$4T<*9=;+St8d%SEl%sN{Lcits9Zo7b9f+J|Q#zNp|#5=DDJgBb7 zxI&pRi!Rud?+(C+s{DlhU{+JQCt5Nrb-^? zZb4W73Dy!;eF^JtyoJVf1LtXwS9quIfZq&yV-=2T6MQUgcMF1M-Ql^|*I26`%9UAyk4}#; zh$t-D2pu)5cWi%-H1eJ5^Cz?^k0`?;x5YxS@$R-xPFA1NbwQ!7r`NLf{5$kV#994;Dv_v=%k20rykv!C>%^wb@6mE zZP}gXi)#N^DU+yBbc;?ZE9(>6v@xM3exn0Sl_8(}o>M~{j#e=*Z(z+)6vqs26h&dY zZF=yYIw|gULY!)wyHSm5pNkHCj*ecr=_|ONfDG7JS+Pei_o5QPyEkF8A;i~n5}m&K zwej#ivFm2FH^z22iJ+KR<+&qaT5w^Wi4eM z6Jv1UpbgfO1$6xMV77RNMqT_SM&x;v;Fz`a1!Pa!* zKm&S0-J#6fcKv3NgkfQ|GQwJ3^~5(+2l~w&V_qEe9yeH~P>$g6Qe(c}Gf&e*o4hm6 zxiT?XGDdZliZHw?R5P)&kcVkP7-qv$VYzG+j4_^9$kd> zM-@GspD?#gTc`r?tmUmb_s)#CiNexU^!==AULq7n=|Ndv#41rVo`N~}b&mV^hD2p} z#0ia?YACAq*6`d6;hx3XM`-2{JW%0*V^!@uS^9naGcj7gavkgAvH@u=1xy+}t*DM}jAOK`dC75sE8!{OD5!$m{ z#d!IfB1U!PH!vlf$2tsKY4NKqX~Q`wtZ@Ae@V2Mc}-T;RjYM zvZBG_Mt7s@?e~-f^iMr+2I~*KNEcG&_FwE)AZS#y+DC%e4H#XDCCZz(N__d~rNyh} zKklGObx_7Ymz3HmBZ29r97gvG@2!|@U;>v zchEVao;cgIzOp%CcLh^oFCa?uivkVy>e;S?BF19$^+D|$kC|@ty=H#&6*j4T1H>+_ zKOVi4X?SZVXQ!T?w9wH1J=ll&v2#R27yz1S-R2+rb(c?dAa%h!&gEA~1%*GwcVX#^ z!2$C#J3zLR#khfinrE?>b(OeYx8K&>3m>-ETl>}t|CYXBn)Memb+t2t=LwCkclj|yan5E*yTTaNQdK5(lI1BH>y%tTD)_no z{1g3CJe&<6NtC6J_?;doYyzWjn_I`;C)s?MM>`|oaDXiP8-bos+g%C#) zcr0{G#eoY;j^@1P3i_jP{O(FC(RWvHmk-J-QvPJTP{%y-o%~GoYEgLXikSBCj`o~o z^W5Mv+KXD6d zH2rlH?8TE`h`#o~d*9)wI!-lQBD{;GGBv?hji=NZGrXdO4$WNid=~LrM`_irrn%!6 zyatVu+qGZ_=8!MShd{$J`ION?wJ$Nr?G;E}V)OX>uvs#_8*aDIyP05B&GKV<#9_R6 zVrVyA^ErlP5i{E%S~@r8x!Mn<&T$If_l9@Btu-UR2Aq;-WCVYTcirmbGQsMuhyEDk zQ+EK?V`X`_IiLL0Z9>!a@X#ZU>4T+i9F+V88X1ctbWlrcb1gwK211d6wGZl>?y@Cl z^N*`R$t6;dLhJqyxo!s3PXWGKHy)USVtAkv*>97sLR*i$W=pFIKwjNHqdg{lSFbM* z84h|6N@5r5;~Squ%RWKaKi`p95=2ub30ej%D@0K-qeoP?NxTWxO|vRYPAZs8jW_i&B2NROj|1wk$X!vbDwAfv92*JCyJlpu0orCoXUrbR5+iAK z#RFpd<+RD}PHru0Bq~(>zBPD20z{8FI^}%72)#JC{DbNIA?9cpx48F)v|yE83O5rC zmEP?G+Je#FZ-lmK%HU!QZUr1w;oVdON#6%WoF&&1G~TLY0Rl^S${@@YtX`}qSFwUk z>BXlY4j)TCCNq6ED0hzh7JBoXf)(A3{QYG+0cU`gXv0EX!(;P%QNVRlFaUWy%4qi* zfsB7WRZC8CaI0x2F=#L~+)^5RTgGsmVX|?RzA~^qzWv4TuZ4kT;I= z#!*cfjP&9qxVw{a#5fOF*)mX=s8v(@Sn3&bELv1~)3nmj$p83;T#*;T*k7&V>ezP@ zd*hs+anSaG*}4(|=A3j9sS$YxRaPqHII`Ksx!rFArM$Is9T>&7hTQX>gloqP7f6Wo zj438+c`AqfI8Wh9C4d2GB-9i;eqe0ug3}%`y9kNT?A{w5#ko&~9~z`Gv{rc!+gSJI zn74R0=jj)8L|@*7k&({+{TH{rttT~ubm}mLY0=0|B{1IstZU0_7q;@oLGZZ9utWej zr@`X>Ghm`bf0jZoXO!lhac($)qUp7WjPJVU*j;L3pi$8Fj^@Ij>N5OZldMO`e}y%~{w>tqFtO z^204St&@><2iV=3*IpsPYkef~WzBlIq6CA`?SolAOhpUHa{@(r^7%9r+984idm3ad z`g7^e2Rjtih>?sES#q*G?ag^h#~=L#7@jUfw=>d-u*=`5+g8*jUO+Ao7D{#)I)Sfb z!ePN-%#_WpV9}NWQUlj%lj!AoKgn&1cgt4yA5i6i2Jh<40cN8<^P`z8hM%KE@WH;s zKlOv_N3ZKJXgmR1@8VXJ@XiZ_LF9L=`Gll!9rf!YJA-S!Q;OFz!Dxa`lIP0FmB-*& z(G}R~7$pDx6SfJ1RLgf3r*|$1C#lBQojNbaJ{(n_5FzgL{v3n(O66B;Fbnz$7mDE1 zK{G~7G%ZmdC^Q@l@XLqXwh*H)BsHx}@rVXCgXGRk{GfSM-k3fh5}h@#f?&|u2DjCy zTSLWLRTj$)dzTmDy)$l?tOu9;(4oxi8Rl%?ztAUjnXydkeR^12TqtjFxRH}LAjT@^ zk}>~auNihm_=W)FBA2w(&F3a8Z6 z`j+CsK1L-Ut!Cb-HD9%N3{LlD9~Liqcd@mlqj@m&iTQRej%~!0czbtMvDMET2-Cuo ze4_p(AI}XV>$h&dy*i9Mtnbk5nri`f3eC;Qm(Rx*8ZP9OHkFi+1w{Q^wFW~Q8d%hy z_dK_W4~nH2!qd+ExWWIdb!)l{n*+%gVNABNI9$A*tUbblW?^}u<7M-5f!=!NF{Evz z^Hw-&Me!#^_C+B*bUx6H%GxSn(R8BAgdWn}b`*u#<2xB-sUsRJXSAGKm3UKL8H(bu zcDH4@u<>BiQEo`KcxRm{iMl9rd>xYNLkxLvP1u1Ypl<1Nct7}P3yiOw81-BpF%w5k zcYVK1^Qqe3@+YiBor{(*m{W>qq z8BzVsesiV*4G3D&Ks4y4F6(=qCvR@-zUV}g9NE*?`d&IImfK%jXSe=1II^dfn8Bj^ zM(D1E0?f-~AQU961C9099KQi45170?Q~x+s+HvB{_*6ot(t(>t+1+SB7ZsL6hJVM( z6;43zP=7bQ{dwYyio#XmWXP7#=|epAt<@8)?%w>*P(<@)C}b;l&YVc^q$f!7Urc?u7$LLC*id)_ksSc+r}EyL<$3&?d^kAu@ZR* z1yBBv&5@9h?naeoUCR7fdg9730*9s^xDwDx2V9X&4m_>dTuV@hKa-BNrQp~pzEQOt z{3`858;M>+3A_sADiiNwlRg=)^iQHdF+)lV=3?Hy%LpFp_T1 zmoB>GilM}v5ptNf#CBJX{X06=?(>APrjVAV?{retfD3Hn)4tie3T4YGTEHe#MEKt+Bykoh{(yb$Iakjk`YW?Qv+ zn_d~aRwxb&$8O)Q%5*lJsJvJ(Q51>A-#yBVoSX2uES}~RO8fzHL^_0voDSy{m-DJk zjmPN8u@cYkHhPj6S%j=4&*lYccKlOi;smHk! z`3SOX<#|iw*{|oz$;?WPQ&c*AG5c(Z!oeE~%)^^VG)Jweqy~8Q&q|3MG{IojcNkW46 zBHMzTpntO}CVC8mp_dcFk4`wKAPMynpNe zqUgdmU-z-~qO0O=WH07d`e5^P`WTIHA>&9-&?gh*7H!E#HG7$^jiNZ3_<;Mng4jF+ ze!r7osw9p#qD~PjN)IF=N#9-l{UvI}10tKSf%`L188p(O`e z{6oew9edT{)sg6Khu_ry*=$cSqGh-+_;m#{=+}+wz~zA*P#4q9MHMy!Y&I{`4|D0< z@0t3k! zt0yE1#iUU?^QHpNpUVp0Z_Fx7HfVbLna`@863#Z=0)oi#=OY=SFan3&CD9qk0SUW% zps!l8(y9!!i}0}}Sc4tWj5=YYm3+LdZlDXC%HEcGN*@WLEh{k$FOaGZ;qzVf#bb9BL zxjSSVw9XhPcjeuC2SvG{TecX5lO~0Wmx}tKmt8{3F}_YR(Vl5}>SyF(~YTUJ+@*~30k zzEWtRR45IE?MFNZJEGRvE0tsXioV{IsunWNJ?4u2S)W2P8#NGzb)$Cj=Q4Y4q$yF*Wt8Ym-J01JBY*w#Tc7{FQ<1s%$1JYZGMN|bC~00SYiyKC7a^U znLqjajb-}WrC;yw>`lLq|MdQP(y`d)Y7QduNGX_Di~)2=Sw;n;?`3gh#^9{~P4^1) zNzj7jfa}6B+;8?uXG=MD;jwAtRjuYcu-5y)y6Ic9QcTh(=S<6Gl&YGCo^>Qmpwuw0dwe;J-G07Vd zZ{V7yT(^A=8wnm1C2=OlJ%f+_#QPNr-%G`o+|C6dTgA_JTU zAHf_XV2gfJu0BP-sOAgI8g1602-~+6BgH!CF4MQ}BAK;_w_w)9l&I3hrymTj z%gVgidV4P>ycWFTe?l1=b)f`RJ5vf6J2zNsLi@KbecITitN{Z;WZ4%-umkp>ZeTT* z2;bNpu2H~qm?5_pQUIMTi6g|?p(x&zMQi`3-H|R_o7*px_Zt@NtkxNj5Rw}+dT$Lc zCD+}KjQ8EL9nodP2biK`TE~6}--&2buy|rWvr>)u_*M&_h9(OXQ#mL(aFmR~o;O2> zc`N$jPDVhguO<9LQ94#OuiV#Z{+=-NAn-(NB+BS&B7FT zbH5y?_2Sk0+oJR)l&%6_wb-rrL4@7U?KU2hLI@+PbW25Y!Cv#U9mCsieV6h~*&q8% z*B{lcYy)an?vBmVOiS77b5>Wfm^mOBB_$t4^Ar=S&!^i;?Kaq#nG%`}u;&BO!qGO3 zRVks{OCY##QeR)8}I5JlRa#}9)>^g%eWMi^aNPl7irk=di_0|?O z7Fp0Vk&NAK_nUjV=v&J<%zjb7(t1!2Qfv3z@<$3i;~3GtE@A?k;JjyG!4_%741i0;%}lzODmmJMqG26{0awT zS{UQ8b)*LuaZZvy<|*{k-ks>glk-lm6j5WgXG^{~Vsrt(iUZ4=6njk7h0?cJ%BorZ zS{7Kl;4K~gXk5KcHd};lYYst8RQJRUq*tTXWvWqQGoF9jt@(52S<-ETT~~h@ey8Xa zEt$HyKJ`D2*8i=8(rrnrkA7P5($se`(WW1B)H&P_NU6BLI@*}5**@X={cS++UCytg zrT7eP$rl-}bFIVZHNszZpWcMONZ^9%5}-=@zW$*64Ql;UFxx9WTEZI1; zwXrQquz!cCN4$*m->nI+^M&*5VIa93OAN+qEl|Wh%Amw;fo1Yf*uPyse-n~AD=}bD*exS{8+1uxW zOn^x~xl^AZ>(cEc;)(jKZ<^3A|I?$;s{t=ep!;Hfcj5o?6W4!E=zm`M|7Y(0KR)z7LFwNPj(-o6|N7H^qWpi-rvIc(|FG8iEs@5iViKU06r!`BtCoIwjsvI9SP7_EZ@4)~T23 znzt=+5hHde)a#3XR7m{CeVzWv#FdVCF)^9wT=4W9DiX8(yzvcZ{|eq9Yy2hUuDr*R&IOs5{=So|X7Mk6CPYCr(^B5tsrNU} zYGg~m07{NKo#QV7y^+dGzzn;)9Y8&8cXS9_&IK4$fod4pH~yve|7M_nZNorX!5-4_ z6-0fHkHEi?m)iu>G;Dw{t;dvWY*JX(hXbTRfn7g=B{)7Z)eayO$WaPfe`s%SuYQtK zOykSF2=%!ZBo?vgZ`csf_$FexR}HL*RovD%-Q)c7rBX{0V{B~Li#iZc zxB2^H-`&-!sqqy64!1A9FG?2U_ENmAOys&@G5>YLO5q3|xzAP#@ZIODao3j@lby9H zrraKmmD%Y{t#!nTZqMy3OX`jj%ROdZb3!2JZ~PS^*`pV@m*DeeFG9Me%ub2wxK3d> zb%DppQ}2+)^GCu{p1+dy{lVr-iUEZ!ZVZU;&usO#q)5ep4p+U^va?o-ZMnLg=hkCx zKv-XP_yx)ab($yY=T}NaaP@ktZl)G+YouFx7SDcSvNYkPr2<$UrAxA?ImA};uHELe z>hg3$uw0MpjcBHwXJZuzgfGDU#ew{8w|-JQqr|EuV;c*_(NOUwMugK#EkH(cgQ?BjYv!9Gto~OA2iQFA zv4c6JQXD{s*}W5uI+O(zY_jHdf%eN+=s`3#Q{=DJdauK}z4pqjx&B{s4S?QFidSpE zL(7k^!o{m^6ab*-phI3Q9TWe*c-f^y74wSWvO&n76>X;-&u(I}Q4t2se>2-3ysv*f z2V6aLphi}(vLa(6*wNu3Hveht7%Nx{v|$b#d}6nkZ)7*$_Q>n4ss6q9IFmvcV>})D~zSTEyv*e1a|KFCY zrIwzPBLa|%%SLcX2t>S-E|STCO;nc2Dl51>rj{4Wj1%kr?AWQ8p9CNW!=L{hhn;Q? zViFKaPkplJcTq>nMKQ05wC4`@v|Nj)ier3WNjQ1&Nnm(?x#!cK)QhzQkLAqxufG~& z)nU{bLAAby+l+J6w{9u{a*zNa+2gjT#szIpaO<5{M_~{3=PlZuj4Qt4QRb{Y&psxaTD8SXH=KwQz;qoWL|%1~6h2@ctRumC=&xo^AixWAslcYqpYGv$zE)y))m+lbz98he!llFW%!r50( z-dC#mIel>7=CejUz5Z#BvZ%a~)^bjtkJ1U3M#H?!M`diklJ;THR!c<)j)x}Sq2g52a zFU;7(Ath_SlU>_KomMq<&hnaL3rFc5x)-lo*gH6^`p8Lx1IcQZ0Ft5-D!`V0e++{_ ztR1_^vqJ&#^mde-`W?iRSyJ8B7|bA7J~OFrCMiV_6e@NM9j z1TWuL6ylZhk>!;ii8CzW8s0G3{|RXRZes)K8Fl^q0L3Hr)_Ubp2GwK18)1XUw@n8- zmt7SdNjeGfR&(x-?jDBjCc!_*Z8L%gzAmPxdF{0sPp={2ECnX5~1A*0}~VeW68?ujoimj|BzPoi?Rv6Y2~%K-?B_I>%K;0 zDp}GcJ?j+ zNr^IWNRx1XVXYg)w^p&%s`i&%E;X381ub&OYSRQHX1uTkVOcNAUmMG}QYH6#^`qA# zq=Te$t6(NcBR3_+*0}9l%0g4GjG@YzmJoJx;db8sUI5m-N-4uM@usz#qO(@;7b>*i zY%8$M-PB$!09P!+`x0pc6Zo!SANs)dUTeVDv6rdmi@|>kQ%FAsX>DUJ?BD{ch5jte z{Fh_O{f&wA;;wN}&%tu%9Tmku{4Yk^(>=IiSF6)Zj^Q*g{S{tmM??EamAz5-#SCVS zr+u*iDVJHm!Gamjk6s?(<9#b+migf<{u*pipd)2ld=9?T=51XO@SJneS^(-jBOlJxoFi`6M za&X*-R5O*jSYF<8^wvQCGQic5#u0*%gj}sWKBCOZN@v6i?7P}%JXI;4pHlKerndI- z*uLwnbe+?6a74bMJ~S}7fR_@9xClkR$ZJI`jPUty2JY;0Xg39TdDQ|_DJuJIY5@un z@7;|#PCE>vKLBSn9#CpX*;~h<*43Ia=<+}QRL)Z4UrceSCFkaCgHBi_w=Ra#%S#*X zhTKg+wsf?MV``P0kfF2*pi9~xZuoiKCh89s!v8Wu+;cKeQzG!B({>$c>Z0fF(P29v zYm<3W%rLIpag--|X-xyGOfo4uW!!gUdvR}VGK@&lTSD?j(z5xNKEsY z-P$qnkHm7Q;LbOYHC{;ik8DnymTd2ukSnNy8=?JS8Y+?yZU6r0+cpYiqZ;|8#P--N zf2*|nHiRjq<@;qymw_uo>Vs&ZtSjO1^H!$cJRV#z#0V*DDg8;X?jg{@6@LGOW5x0Q zv0njv%`w!EM4LA3iGv*>r$m|0ysp!`eD~4gip$38`S;_l#E*Paa%~Cqo=qG*Ym@Tx zB@cFE+i`Jpl-FL()VXZ@UoFZU|E>!2Q=_G#d(KS_64 zl^ArCHoribMOUOypdz3my#y9gq$`9T0wQ2Ru!2YlMS2OnlTcJd zN)`qLe?8|i_k&G_!jO|F;#(6v>Xxcz} zJ2EUJg#2cqW9`B>7UrR$5t~x>dGuDgZ(I~JuREg19kQS`tDOf@E_dx!61$CzV!!#K z#|vrw1iRD5k`eMf#jk7trBt<^9yB9xp8>GKyz&lP6rOAe3)&_=Al(H0ZeeL@n*utJ zxz*Q=NmX15rfio(L$2S9VgP^}t5guz^{)=&B1tma0x$X2NS`SyJ-qvQwD(0xOZsho zdnEs`8_d|cXvqGC+{zB-r@R(cuZ^Sb`eU>_)6>&)qQ^??n?@R&npP9k*ABog-(t); zA$n0cy$K@fznf}oaE7hcSe62=-}VA7=g1REF%dr+C$RS9$&-@o$_v}lW<>7Lv;CQJ zO{A4WEc-Mla*V?i6K)ZCQ~_jYpEA(hCt`~VZvZ0N{>rMV@as{}qe4F-F_=HL@aHdn zF02QZAlC4Ngun0f&u;@n;J^u)AC)peLOv@jFG zL^bcd=lu-d8F$l_heYlA6DNyk>;0cvWgz6wmMfp;I%nk zhNlu7(L4iaD>wMgB4c24YfBHF1%2^aQ=|v{l}M!`=`Bji$`4SU{p?LwEUKG_*;_(Z zDhx}jtA}D^wvM55vR^wSfO^h14q{4Zakh6(eKuizML)a?Mb*Rm5xI3oLnIgK%K^E z3zl=lm6et2b=%v|;fFH4t7Rx;UEJ_u=groL#lCb4h~+U?el1On<`LGmw^N?9{a4m11l!y;@vrF&9#G4m9J57D!1+N`K9l zpfIC{mmY$DeSc6|y14G8xRCDjxAQ2jLx;u&atupQs2Lku+xAhl#6yTE^82or4urGC zMMZ}u6R}B%-?aBJ?LUWzq$Dr#37gXfE1V6DS-J|4lIJ8V>*eYQES%Le7ZO3muN1Je36*90}eC@1cHX{qQXK$bo#YslmiwlAKjt%RvupU?OYXyQb(ROkX;_8r`^b`_hpx-&VPp4F?KAxgNbecdX zl+2V6#S9sVwH*bG5XNh|=>X$d8%0r}0^xZp+Yi+qFKt=2*&l9j z07ICn80>h|;=~i>ZXbiI^A77gME3e{aV8+z+|qLL#hGpmMOEc7{!+wlnGVlPD86(+ z-y?eOK65HW6TJVdr>AFoPZ!66p+3~o&&->WhA9c}F0GpYqT3v#A-1NMPNTy7Vyjp# zxZ9=|x2FPgb85o~>0vjbkH?F|gZ}vK3Q~UW34@K8V({B}ojqHhh7T6O@LMY^m9Ij_ zP_5L*?b+@97h_q%Ak{A2sXJQ;S`YP|w^%T80r(^KiILH?RtXq#s}zRaJXI5DTx_A> zifi34A_Oyf5pg0B!$X7pH>< z-xx;_i<7;Q*$0%uN?p-UuiDtyyfG$?O!`z!`l6?kWNnYS`kE32{5|m=tM4#h=<9VT zzV_L-PNbW!s01`NG%TzX+wsk}rRIYJoCXa8cmxchW7P6o%Nf9A_HPOwlVkj{lM2`T zzxPz6-J!UrzRzB#00D#Vre2GT1f?trvL&zrAK)WME?%^~dX z01UVqPRaLu(6(Puq5SjZ^_Ec)26W5Pe;-w3a6rV%(GQto7cvu@0y)WO-P zS-4V@x3Ct6!&MuKguFjQKF?Qc>V=+}5mBG*wk)wp31Cbh+g~>-EAnXn-qqc^)#^IF zB-8l_yCLvn!5uxKW@gMrrv0V1oy?HlNnfRNgP&>kLYB3j&~E9|>}pAO5xcwMUVtsC zUH&N4p%BG3(6zlfcylmZJH6U3aWqrbwhrZu4qZMI)%Ndg~6f3N7^ZSI&{CsoOy_WFN#F{hGZg$QIB% zRA2a(i~0)7mj^oG;nyQWw5<97Vm>#3SU||)JhGiVrAu_x)}q8tV5cgS=n?iU3|j@* znwY^dB(jb{2GirrEzQY}EFbQtJdP&(q5FO+S=zG~4)XM)uk{~i`xDvwC)sjzW#tvY z)&=>#;R{mazxY9n_r3JFbF~2M)x>J+0sE?_hllQE_45zQV9BpvPgdr3x5w9YYx0Y@ zb`vx0LPAm`wMkP|nAla`iNR|d3ieVO^8Bwqel!4xz90v%hTYp`ks;>hHE1dC*Ku5O zjk|XwmddOn0iDqKU?!(L+#Fg{3PEf2oUof^Ipf~Y2dQFTTv&|ZL9yL@$o#nI3^%Mm0Z?9iBi&j{&vdL4nh`hO&i;(<7pDc=JQvIDfu5_={@3ayI2W2@%@EOSK z)LZ%_+)1=4awBCWS;qQzT#mT3p!@fw=Q)AR^!l3G+Sp;mv1>IXm*N(zU5l$R|H@h1 zOGSxzO2JiR=S{3H1dbja9*${a8-g4sEyf-eEjYW8l7&QK*;nq=O>31u9l6o<`SWHZ z?8*{a@e^jM!M|g3De*AFB$|6!;HvFCGH`})oa@$+*I=eNv$3gE+W zupEmAPkGn1bVpE6p}mVO$_};Z`aUebdSH;c(jje8QqI^#(+E2Ns}X#>EL~mi1VqO$ zW-(}G%0;%+dt_kXH&UQ1H(##_bev4b)hj}&$Ys&|tXn-be^Fb}U+M<2z z`S(tY*UISq(8O=-w4=5ddkBUU*S!nVQ6|+6l(ZPDV4jzo~<_dfQ{3v^UmG z-Frgn%w4oYmzMTA1k=d_0=SyZcKs(STaaDT+S?nycW;$P3?=KU-$djw`Du~6um{`7 z;N6Q&x_%DW(UBn=lfb?u|7c1bj7o~LG&3^`KKf~g?l+hx)b6NEnxUeuP>*o4`E_t# zoB*n6M<|Wr8NnyHd`{_c@6SxmFwDdA4`#&7f+wBlj)N=P;UDd*SPcCWkeKrejDrwf};epuQ)NmRJWnEAVLo(mz zJSxLgH7W{@&^SIHj^pcunv$<|Z1!`tavU(wUo1(9kd~JA9%%oN^fFaJtiK@A*}@|5 zfPjU?Et_ceZ+tHjCp;Z9v2N7_C070_|H_V)_5u3KmVEO0V=`7e?T^MqzMC2u3)#zZ zan8bf(#(FzephsjY5H^$jS0HO89J?9ikzmqOQzg+D7#UL$-v6i6HPm0SOaCZ>+|wpheNW6 zI*x@J5KtZ02CFu9(#h&Y79E0(?D|D~MR9C$wm{BHZ@5L3m6;%hQ40Hao;-eRKvgCJ z6GNeaUplsLh`#eg#!Fmz+-?sT2lVl>p_tMJb2hGT`RT8 zH6T&<8%G=8v15}Ope2BR^0W=Cy@@$$0cGN1?s5R56#CGoUvH+WMdH@@*DP&T;*pM3 zHAus&*RRK$ABVima5XRpebZat+${3|yO7=b`#P~TD_&4Yu;g9!`>RHMn)tg{uNIk` zTgD}80sMhvR*PF!ylmI5PwLNIZXuCXuZ^4)baa}g5Nj!Km6R1#Za0cl!}1{Fe+zm! zkMXbOw>qN!VnC!<1$J;mm@1iT$%js6g2f1VZf4OE5S*UKjk1vJ`ScUA_B) zh6;8x=rg3NR-?%)IQY}%=BCWWix>BA+uGR5pbJ|SdE&{zIyhh8L#1uh+JdF_hTuu(L$a3t~+kuKZUuzlk{z5|p4q)h|C0Aq2^6af)uZ+eASnsv6$V| z`8l|EkP>h20S$S1`H#1UK19cIIGE&rQtuWP=LKEaq0&2gI*y=@*R>ierQUmUBZLDI zqbT=|J3M0XSr1yx#y3qAd=hv(OKok^yguhK>lD)9ncOpjMNwklA#j=r(uJ(9sj;VKAD=tSJ99Vq|r_ zjVZLTsiW%S(y^D}OII$mUP~lESTIYwf1H~?(H#%t0KE}h%~JDk>iuW`R56W`0YzW~ z=8Z+ZK-~SWE~YJxxLH~jl-1-y+vD*Z2ag^-Y8?^LHvSs3AvvkH^g+vLy}@-uv-5ie z^{SHrD{Ch^Gc+P5BIAl4=}O;8u-vGdULS(zZQ}js(Gh8dR}b_`zahvmZ=2oO(EO45 z0WopE^Pg;*ad~o#>Zk@xpm)#ZeFk38A#Lbm_6ZBSxiyP2Xt%)9k=Tg|91AO-wU0vv zaeK##P?(}=lFz<3xyL_GoiD_FB>hSdmiGffqh`Ak|DO-4Jm-Gi6GJ_yP*WL>cFF3| z;o;XmPGWwz#dIKOKwklG()d+|d{XmN$Gv;^#P{RlF!k<7=ayfc1L+3_1ezQ;>ap)Z zTH5i!yApqUAiJwf+_;x1DXMckKSCiO5{0&Jb{*vcfntz1%?8`Uo`b9aw!x_Z9nZ=O zG!+52#GLsuyPD5HI-ulT{q4%>1naUzkgy@`T|$)?`9g6)L3wrcbLRx>6wzOpf!W6Z z57{WIkBqCfq(H-9wdADlNyTR~ z<&Lo~xxBE7jf*V-d>gj|8Lryc4zjS8pUyYIRcVeTyvpB&@Z9T2N@~f9S9g!vB*qYC zYi*qZn`IGwvy;Wn#;%KglcBtcS>tU*;Kdj#C0;_u1*^Tl2}%0;h>Kohj^^g(wc+EN z?i;GuVF*qINY~}fze-B7ad61UeJXT$DNTLO=vVH|yC3e2q@4O6D(#^g$Mh<`PeHpRnnP57cS;Tiij9*5Iiicn+s@bapj?@To1uh(wtc=6(k{DIbhoes6X z%fiFR_T8A6m?Q)O+}MzG$AWql)Q1i4md)wLklU!EgOaDxy|y(nX}5z9fQJ#F*zgf* z`$@1#+xUC|(yTRtexLPNc-m0)EhFPAHHz3{f8-$l#q9r&NPHF3)&`5LYRmr5TYvhu zvS-={MqS>;W!AgKTWUk}ok%k?4xXfOEZ>lvj8tWId-lPaTaGQcxgXx9rgk)P>_8r6 zQ+Bqu#|rQCd4bJ^6)q@*f1I&H@TqtP%rblDYz^MEnVh&bN6pUuy?YzlnH&|RgI`%G z2QsU00#}BO;S7h2hx~rlvq#(nMbL@eWPdmuy{x37!tW~CM;d>uB%;UL-kb)Vv-)G* z6r`VhkM4EX7Kz!UQYh^-EiMm*k|=MJFvu(KJ0cGdMFqZtnVKD_^dPq^Q=>t4IUM#Q zXn!UwC@9DlEoz40H{)Bio!lmY63X5ty**0l9bgUrg=9oYpOYstiu^tlUuON&CHtof z^#ROcj*C$no0~sQCqH+a6>*@|balK%{mvQQhm2t(x$%*@x(Ptd>$a*d zKTZzLy1!5Ztr_VblRstnc`GtBgsdSgEm!yT#ft%$R3>(9ZV%w_op>ULas&i22YV*s zx(a;j`^A;nHWmvAMD#vwfYi{?AojlAec+_Dq*fDQi7LG@Gcj=(*SMMSlS!Va@sw4cbekXwc!Q3Q`2rN`bw5%;CTS|?8+&v2 zp1n@F1Gu72c{A_l-7_OcfhjD4Cdy-9&KQ-1(!;yEdaL3Cz+lmsSzXurrlzKK#;MAH ztwU*I<&}5QKy76?=-tB7T(1D|V#sEA;#p2%mg-)yAj-g-xyctysiU!ZYV8tMltzl%uu+7_4Z%4=0 ztKsW!KYzYTeS(3{05++8>;0xncWG6Q0+-j|LiFA?kvN{PI$7FOEWO=Z*MbjBRS#O* z|6cxh&$3e(P*GUTBq4lTh&xM>U{U%iXz~J=O&pL~waL4`788>**()nu#Q~adalJiO9#@_7 z4Al;Z6x1SgJ(Dk_-c+pl`3Z-{RbtABlKLJ{9SHw8S?Gop)*RChzpf&;f3lPHqd71S z&@^^SZ3!y8of)2mfZVzB$b}rqY@K4g2)otGrU9ojBV6hg9xy}W-Py3pAStQLf)l8A zd_zb>lE_NzYHORGQv+^ba#B6it~8(04PiOy?)QLGK*cd2PGMbVvD|;rWU|IHS$L;S z;8uXQM0|tCuoQj+UwlHd1Ai4@SF9gr1s1{Y!~ROx`s*02rWVRs;yexuO&p~$#wr9w z*d5S@C{pAPwuBrYrQAcN4^n4*{qv`uPiZQVZwaGyR0#+ z78mjr_mdLIftu6PGjV|r=+-Q4GQ`XliUm<2bW|BTpMSDPEoTDlS zvvEB_QD_yI8|Gl!6j#vTe1_Z?dW$z>azSjZC2VKc3y%dwsR`eVg0gP$ZYJEv z4=5+&?6as+h-uBDpn&7Uxn*S|z{&Ih;2=cpkfI-vXucLPtadrpIKl^?ZJtldn2VxP z*P2E`kmna#UjzTU~{y*^ENkO_0;-*=*i$%{s#wHXi|ofEWjOu!u9n*+fl z(xP4S&|mafq?>{Iu=9lN>iE#m?Jx}qGDXOD449+q1n5o6#-ih*Kb(Tull!k4EsnLI zp%8w4gJ|l~3{p#*L`73SV{NWnc{C01Z9DM@aF6*<06B@3m1-K5G+Bkw5YpY5p0>}z zS}F})Tx!sPx!k&W^QQMk_J^Gqx$rhRS`OB=v+Ezt#@xS84Fulvp2X9x>g&gp+Sm1c z?~~WF5Y&sgG(yFNA#SQUCK3W@!`2 z@POyqM$Vu5&+(Amv&j2cju!jN%cRxV@LC&F>{FkN)R&$v{@trE64n>lyjSVH<5=rj z{gnATr6hTL%-Ms@juq3bv4Zr2@O~7U-r$1wpHDhxE0~Z^sRjbUQw15J`YdejS*|m$ z2WDscS%-BMsNcVTAK$}~cV?qOV}qt(VciFB@2aRJ?I4Lj$-vN!d8F;+Mc4@Gg3V&o z`=_J69CMer6*Cv^O6cizIOBw@&t~Wy$6XQr!@i!gJE1g8Jt@i$OuAK?6PN{HKqF&g z{LB=99Aad(YPuLQ(d3KZyg+T_*V2};DCG)^ z@$qr7ckspZpo!*?trZt|UO$RTF&WnZ%}SSG`}-YL=~K_sUpm{T3yZyiZ!Zn_aS`Vy z40Az;{Rk~2Yp8k6sCqX(DVSI57Yp6`n)gH|{0vc5`OkOkABRobYyX!ogQevK{cBAm z2mDBUgGj&Gu6@-QP6;LPK7U`cYb63-)h-7?wI4la=N@-R_^paxF|lN z`ug{`Mq{2FO^H3$zk=q#N%!Yp(7F{7c;Nmzw7}pCE|GsRm9NfN(dG9n^bqSE4BA{xeO@>AAFkLpNIZ zzV-B3NNny+N*-D?_}jL8Jh;26!FA8f!4-+7H)7{OwuXj=OLa>9*Nlw1>$wdgh8#6; zoY_nvJ`D>NO@SS3w&jj(4~WC)*J1LEX+ntUQZY~f7pC;l=@EmO`*3bM1T5G|eH8*L zqr7{*_;_Kb4Fvo2`E$4IheT7IKk;t?0g2i@z|)^-YJ2_2F9L$UJ9<&4nF~d%j8f+u zC&pn3+z!%ykQ>%6AdTJ3QoDxF5!*SUF#_`-5shc>TwO=){GaxcuG2fgJ9j;OJ?nBh z6HMM*u@u`=Opit%eqwUv3GXK(u3G5_$#0cIcud9G_V&W5gN$`m^}BoZG@PZ}xRA(& zA+Kg*t!`gl`NW-+j11SeO2OBzTtP7uA#$=^6;&EC_3j(LQ>PG&1|=osapy$(6G^{% zMk^D3b@?F6{`he;`irdadA!MA^ zEiqaFBYvlFUg{x|>E0TgL8Wbl6DEBQ!0uL?RFce#Eo`C0J^2&8a~*N3h2n^60Mla? z6hwM3oTIe`)D=0i=u|=&0wj2gx7KtkBJKV!oWYI5Co)BmJDJM=I4{4rcYeR3bc<{H za7ksCYo%x%r8>f{;&+!f>4D+=_F~OkV3R`3I_h@U;U8F`(ss8*xpU_@IujC*C(>O% z*#kA1U5B=oz2x`M^Er@bmPi0kQN9%qycno`!ntBV2t$k%{KzSME1Ef~vtG%v>6;VoF3&Vn?`06b3ais0sz`*tG zpK$O>0gEupBKR(sTGC!9wjD$dOAX}|Hc}Sk&&@Ot8gZhDL7lp7)CEN%hz~=;A4xGltUcT zr6>$w6IYrrf;+u+ z1qHV<^k~&3SJzthP5)-h5ct)$wGU9?R}{S-_bZK6WeB*{D|e(l9{)mB{aw8LSoibF z0|6%bw!#2rNHRtS^&*0U8l$u4=7H%V&2OE5;Oye!dKTi8Bx}6Iljo4}1>vHU-}uL; zkIBx`@+s7kl9DGg!wrF%I`BP4OYt0HHNE>0;ZN6+=V8-6J;KM9m;%v1+xY+d*#GWg zYRdp=)y`~zg8l!C|K}8t-|zhEIsc33?7zB2`>*xVJIVuk-$wUiz<; z&VM0af9a*a?B@TPEd5{iLt+Tf>3?tm{QvWP{?es?>C*o-`Txtu`^(4s%g6gKypCVr z@|REYmrwG)rj!4#`y_w)A^)Dd{ZD%docAyD4m!BFU#o>buC^}lsNCIq01XHj1G>*- zWMz8+sD&31r<4Sg8p*8W{G7{B2JzU*Ap9QPZen1JM#$|Yj4UZP( z&1fNCwa5Te($eI_IDxD`Y%tG9X54VKY8Ap&GZ3GzO~-Z64FXl2scCanu0cOt^`18X z|P## zzv*pMSMOlDprBBimDTn~>+I$@#^JGEvGXbWj+Z1*B|+}b+B_`-jl1hw2r>_cSPXNZu_FAjG3nrT7#e7Q@>CC8DW{_% zK(U9c-?DF4!OGL03SG1@aE;B)d)HT4l?`N{pGiF14J+f>z4i)69#%$&qFl&T==Pac zPmb`f2dds%%4E=rx_@*d^>J`M@mihm48Jac2IXg`oi<`T2#7uMljCdO6MVUJbEEe9QdZE(XQryX5H-Xn{V zRWlhGJn<$*Mpd2{y~@o!%g)1Uw-DFvO+X#>_n*tv&cV1-zC4ke5b|yIk#%!bdYV8Q zNQ@ZLGc)quc;OO}uHX;-)(${cdYU8KGs8%0!U|&v313D>eQj&KHpWv&Cx8Y>S9IH2T_d9#+)tRf+lQIpb3(o$;r~zm)pjC07qVg}0 z0soMfhjH4QCq9vfjTP=Dz2db6;5T=ULVDMWBd;15#Ih$RkL?v*HM$~}4v#1*5f+a^ zp|pw%3oA-(>m~pus*kr;cP0tt4gTHX0!&5c<@W#=Tj4Cvw7rS4q7@9*!tLpo{@{Y5 zB7c$`K#S)jDf*lCtOrlOLN#0CRb%5Cpc9@`?TmN+s^s}&moK=#J$lCa_|}oE(4X$n zHB+E^w4G+f`Hv_6clrLG^D!&McYRh|TDqIQT?O|52Jr4|cFWm@hQ=-&`!=~+hxK7) zWwl&R@wY*rW9I1C$-vc^<(pXh`V!s@t`P`zSy@@~5+B~k?J@yh_2vqbsXL0cGx?(( zQdvbs#TCVmXup3gTdS0WO!cHsQ!ktOikG}E$7*4?0a=smui#r z{5cbd*)pc}4(Jn3srIz3av*nvF0dNs3^LJ3pt>no+ECavF)?v=DvoyyS*YqNZkkcu zS7y@P-Fxa`*!fwnC))A*0c4if+SCQ0@2tw!w?$S1g775*#?cMH2G5Eqq%1mr+Y>Fgr zzWQ4A(BtgD6Au2Ejx;U*w7CcKR{U1lMB^)0h|YP&RFxZkVPkk<6Ww7gvyUr_*II2C z`MnjszC7G#w3s&<^J;F;t;}q+;HiU22Jl zBS9IecfUSRQdG1mM!tNR?oWqxrG)v8g;Y|XqDZ69u*ml5PrjE6XDkz@@aOEnID>4h zyWg~gh!9*NbaC)*9z1@DuGaYB)?!XNRXQzES*^1ouZA$dVoDd=_I7e}J9Kevf4*8@ zim@RDRCA?WwSc~;64Re>Pb9?k1|-KVW=kPsrN@L?_35%LWiU!qZ^3KYAPr+)_l`PT za}4%dpLb{&|M__3ZN!v&sI9@|Zd1Z4(r-FZ&=Z_>@}RUsW8!A2f?EQh(#HW3IT>+r zH`hZ+OK<(Oatut)hNL$gzx7dLFeB&a0F=kxx$&f7nS#A%j-g7YNZu~)TGJANL&_tk zVl*W|g{3nkTk!6l&FSZ8yS_%qtba)R6$4V~>>5=BN`l@bQla02PCLDn1jin|mD}>* zs8A5>(&7<&qXDce6!TLLu_uCwnNo%3R%Q7wMDPg@|3M3`Nq{)7w75#)^ZJ8l20A(@ zfX^VLpdj?~Dfigfj5U!-6s!qK=4u7>#>n8{k#@HQtt~evohX3WvtLRx^Hpl9kgl%T znqn6Rhr-TwK-_#lV4zi1oPa5DCsv8`$>VlZcXzipz@KViWwo?;9=h)mb=jRzZh;uD zN2B4}1soS-ZEFEwOO2B+V!C z%A8M(LgMJCZ9a8$baebK$YUo&lVb|?u3B+_(|0PWsTwGSJu6cF-D844FN09V-trT(I;qvpu33t+({aiQz4VTqCrMYX~@H|aQ z>brFwqB~c{Sj!CR>>QoG*?1i2PkjJ6GO4T<=xtx>;^G$5COI_2F(`d0UwN3QV6D2k zn%D1b?EQ53xcYYm=ZkS$YdBoxRP$87Medp0TE98wR4_bhVPP?@?cmu-(QZKdH%aTZJ}pWQplI?_Un_u}?!Z+M)$lQgAM^n0ETYxSXt!(m?(#3hME&$h z_A#>N_X13}s43Whc8tx;_`n*>KUuiA@F2^+0$*f7$pI4M8X|>y{|TW9Nq7ZBAy%mf z!&Fk2)P&oWJ6GzHlal&~Z3mjQ1|j5`6chsYsPcBP&& z8n)>TY;0`o_pwndabB75Z}jrt7e23h9a#f)naq%KPe9H5or7nFq4J6S^@&2>iOVmaV6KLqZt8>jewHC#trNT%0Eme%g)(?ST((m(H zlXO)$$hX7#r4>9wnIwe`=h_c}HmXC$ZggJZT9Q6}a|J7HRoZWQ<3JEQU>=&{b*h9g2r#&3ugLjgX#J&V{-rU%=x(<$88B1EMeGKzt#G`1 z=l0I}?%g{F?x#zy=ToHmvuEGjCqw7L``EUjhwkBaTASL{JosZ?e=FQq?`oB_c*|NN zMEX*}7H-?W|L(+LW(vh*?h@;^dJDJGr>J(zB7_X_i%uTLer~DlC8)UssuNR~SKC*r zraLCbu>@**zEhmuOB}z=XVQF2e>K+;wFlsyqATuu%|E$c!NFZ<%x5(y%_062wB-5y zMvPO9>9BoUjT#uECc2VYSRq-RpHRGWqqVXw|Kfu&gNWqM_x(|z(DT!dskmai!|0>h z8`HcJ&HYS*9}(){Q<1H?$NDu*nOulSmI(AP0U42K^w_9<_9CSO>sy-7WKx}>8$T$E zlMXc{#!~G95(iI6aNG>*oSXZE>W?eH-m!^;j!;`s^% zPkrV&UIYd~x+SR?IaGBi8sV7)VdpplYVy2$w}K!& zS^acE50DlC=_8c z&_dfP3kUG+Tp!)rV+K9QC;MZ*nX;=H0`s)#Ugww4ESn>ldV>2dJ8c$HE@)a7Xi;c4 zF54|8zkCVnb3{&vH^$!1b2A`z-_VAjeP^Ds+gdMBLzV?329eQSnA>VElHuuR(Uwbg zhHN&U4`7Bk2BaO4i}PBH=~05Cy|;1jxe>zP9;=q)GsYVJt+7mK?T}J2-e@$1?eP~! zt4B;QO=*0P!)P4ay%)B@2G^zrRJHIEBbw!%q%17cFzp@NI~-n=`>`9Da2?Kw1Vxy; zv&Ni4%N5~wDH-$fRXFLIM{ARf7CCqe%olMXli0|JA(V##E1pP-+}@6#1y8$OX()y@ zsW<6TaU`9!7JAS-iA=;C%bhO!Rn<-e2HGs|*Hw={{hK9pl$hOEjJ-L4O)Uz4_8aV? z$`Xq;F)+@}l}2B-wq=1X&AjtJn~5ms`Uy*r;|>Q;KcdCku=f`( z=R6@*b=ZiofJ6>!JAehx766@M4B)*>o9{tdm^^4e?c_!JhEOdOuMUtOmGM;H@H1r+ zV^zGRI9YVxD%54Sr;uY2zMYjgVSI6VrL+Fr-Q+GXHG=nd#!j7RZQV?0cc2$mggLyZ z$-(W=yjbUR=OvX~5qU|#4+rl?W5yo8mi8KG*Y6^&8j;qfJ>^<W`0O$t{TpWpxg-q zNZ9nOBv(j1s&|^+!}3Ef8?>bXq3S@y{6+ZSS}4X|Ok2VH&CRH$P|!2RX0j<2pBxCl z{dv9%-W9roc<(H^-`qw`yk{jGAXl5T55n@bzjH|GGC3pTyBRt6(p1X{4D?L#SXmZG zZ14{>NMx!6`J~Y31O|#-DgW3Bjm0Q&^5(E5q{3HoPu6qY57F*f`SkvaN2wa~XVu(T z({EKy?G8HB@kv{ZHHSF6k%soMaOBbU7QuBuS4m2(xylu$@gfwJB>MuSEE0 z)7tv8J2A8w0{k<}+f!||6J|#oj zma+gcx@>*1(;_hN_(q(@0c05VM+y#oY^@H+VyHgQWQTq9Au^-}G$EM7uYvB~R%!>S zg%Ht1PO@!3FFr}~M4|+D3b$^63oq=1E64f2T?w}+vvVo7C{6RzYBa2?R*qXt!!SNT z9?I@#cFXw~xG?G0mUQOnJCp zfbqLiiz*I3-d>Dz9-FyTm9vlquydKr{`5^i`iZo4_ z@W*HhWu#Zn5cc{AW8z?PQu%^BVMAxi!11NBJ7YPCu{s(7 z!b^>VRhMsN<4eZsVCzxr-pgNd=Ry=IbUQ+0M&n*cUS8hEh|PJ?)Qkb%F^lPJPuWJo zQe(eTZTln@p#6FGIyu>vT)$Z1FYKud%MXKBL9iGwqgfLVXCKFtp33vbHC@8=-y1c; z^a$+{u2qt^^TDg5egoARIbn^4Y*WEMNUc`sr2LjJ(luNe8et!{%0?}~f{w{K950g= zR<|AiR*_Cho^A@7B%v9Xt@P*UjBWTHB1=v!aHT+#`0eFfM6S+MfL0@9i69^P(V;QG zx^lXb>nFJuARpRO#wb$j_A5O1libt4`CzRpJl9nW#LmaaW@l%<&;@gdnp)KQObfQ# zaX{}_%+%HfLWo}S;PF67$x~JHQas517T2hj@#x!cYi=m?i%SDMrd(MftR!B+FI?+4 zGR4O!HhCu=x@Lv%Z6GFvh3jksUGv!6KWj!R1&&-VEuJ0uB=bK1Bfq<-nj!1MnW<*g z{ds&>(@NYwLRJ@#p@XM@V{=E8{7Ek<)Yb34yO6LaschQG;){63UJQJO&$Z2%E5s0= z0JnVRGuoFfb}Kiwc0M=gQk0SZS`QQQE1G8|J5Qo2DC0cZ{Nf-y0HUwR5`%GBcJIKm~%DMMzaWUfM1tyG^b zRb<7+q$$a*_e&ApQcl>vGP~B83t2b=n~8nfa8XJP)H~DEjnuOTAwwJ;6i!LoDQmSJ z^*+*)|1Q4gaiepmvbu%;kQ=nG=BW^}j))(Lv%Zw0ZBvb!;k)hO;ZpW_Nhn!os(T_0Wa3N zj1Qn(TT>5OS$}pfpLC|FJySzaTdV?k3!a&L|4WhC>$ozd?xu;QI|K!MczOB}r|CsD!Vqmtk-NUU!X-?OZd_~H!O5I01A!8+h8txSg!hp4}|8! zt{3#u)AHOh+%m{6!86ZaPpFJTMKj3F-WjkRRj_zWHgzxPZi=j3z2DxNGqtKrwgG3) zqF7z4NX|4xbB&JZ_?k{1xqTKCcO^_+K`T3?!K{+6*yqB=?s_%8$>qeU#+SVW@R7-i4#q?o5dN)IP$ zEM}vPPje1mOd-Kk}GS-6u0!!`Jm+p&o;P5Dr_;w^lN3qGr*VlBc_Cp8R z*tplJc2W`4C;je?RjlSv&a*jN+nJqx!(}`tZv|h{r&^xSM=k{q+`WaC;Mx3k#MCMe zLn#{92khIY>S`|tn5@0;QRj%;DgnqnA98vpEK*{m;mQkaI;A9gJwAc@Ky>Q?CW4Nl zVtrM$Y;RKp*h_OV)7!6bh~B9sOGFkB0?u)4>iejHTB@Hu?nxBU6uch;FiiaLM#~)| z_@_>k_4b0c#Ik}`ZbiupW)2ixPu{YnRo2}+m z%9t)0A%Aao*z1vzqX2s$k~YhZ1+5+(wr+EHT_e&bo+&D^%MxY9xs*|qSpvieq-Bxw zhx;MU3ocvjnohZx00f>ivN}0)kfzgw_4jOsU+0IaF~OLYYLkLJ&HOB)u@aY%)cQ4l zL9P>xmW2+DrpxNYP8@`<+^#veVj4!WcaTGaC^V1oftJfrccxk3ltIK8Fp;Ghy{_Zg zH$^>6Xt1&DY;FQg;Xo#+wEj|y{np1J3e0C*}6z4;~ zlHcVXWA%)A!zW>Jz?S4Ue8oi2&JcM`^wXjp6HM5UX^Ukhk7Kvk-N3!~BdV3K{6YVN zv&k8cBh~=B#)HM&boHPI>-8&8*-PHph#Gi{^yyOnvZ9hrTH^j~Nbp!;0_B*_dW+wMFSrhr7|0!diN}fWIYj+?@2u zia1!q-$#qDnxMO24OokOoq(iH$xVbgVv_}(s3#i zf#Cz^w`B_PD-YSXp{DU8!!>!{+x|mZ(QX+>h$RK9Bc%}Ex|zV#*RPYqS`0FxKZ-gl z(@S);0zkAmPy|n(SsOG3PqIaRxHc1Wy$8VZ&$yp{?-Nv)r?<#y&oesU3u^ z>7#=RV5AUrJSr0^?r#Z(?yk?RQ|;~Tz3Z@d6MY0t0e8vo=1Pox;dM?uH(i*m|=+YA)UiL$+%B<62d zKNl`Es$n|YDjzvA{D<1Ej<8H>a zuIy#lajrGl5tSsp^VCW400?#UqB~|?YNIw`GsSJ|wmit!NV^L(EP$?M@dP(3Eb;v< z{+;O9#R3)(|67|lGI(4%X~J2?ORg%tX(W%Kk1-K;AgZvmK{CeC_CPjKi8g8B~I%V5o_nwql%^djEN=dhEG+qLaI-Lo!tCI+csIo44}!Jr*c2$;Hz zZ7Ie*VuxD2?c9!Lkl9v(o*8l?KqvZv*N(I%+xLtC^|>iWz#o5sGJ1Z|!_ku7q=HtF zC*oBgESk3D122(vy>DX{^jAu}dpfU|e@G~Fu}yZ!SOVb>-zXpaTK!|Z{?jrJ=nQe&*zG@m6gd|0j*4|ugJKJ$u+wQ|_~OO z!vj{K_Aq5Dq9EH(u*nSCu4_4jfVKq_Gs~}q*B|eSsihIqKO^1Q6}u^G6h^ zgjeC9_U4DsFM00ltc3sgNueSjJK@VIf2$5WK+6B!hgXomay#+^wKMAtr8%XEaa+q5 z%A`6`Q(Z&~q@mQ(#|&&t=FZCUhs??jq@C37z8KsZvyD8bE@To6VlmH!f)An@`auz_ z!Vkm(6n_>oY@4@A_Am5e{?HKHlS1Aq$_V0X8V_vpqUIy?!v8oDW2Q10=Y40roEov<&6V^i`(f~0C1?4aLoh?= zGSM?zrt!_W@N}PFMMZx)|KfX}dqdfhGlra<@thT|;F#ph(?xm6gvu++@oJ0Ay%qWG zCrKLxyQugZ7{JU~xdn{PzP|W%D6yNyAHCNgx=I=?9hzf35Hgri>r-P+ubjt>4JD0n z>=hBI{uPsU;miE}Yp3!DATa*O&!~vSg{gys!H6?M>ty&VNS4zaJhJAa^^g!s$R#XH zff40MP!#VnM3~BlZ=Qn7<{jKWB44aZ3JS(o%Y#Tywp^Oal|xmN^+I*sUJKrGeauBn zz*KiDdn;J9E5&WdlCy!E<23588(|u#(=5`+)*lLiA`w?1BB{-HpYiZiR{!Xm{FpkO z;faqd-YdFU)G2)(xej`hEuHqh*6GE=g!1b$%4~-{yeBR-8mK?L54z!qnM(Wd zmq;e0aodc?uHI8U@*Vw#5t0di!kvWXwCc|ldMJy8hx;6Pl8_t0nrF9(utgzF)M+c^ z312gtv#vhN6JJ?zqo;FvZB9vK$H#RRSkC6Td}6QI5;TQ_7Zdj2KYvcm_F^Jt?)bht zw*dQ~`>8k3)6M-DpRTA@AxiLP7CXMnPi$u`8eKEUg|>kHY#Gn(zvzlzr}DRThe9?v zxF<8jX%BfOyKfMFj_pbJqNxfByy59t4cFuct2r(3g9jwe?stVl4l}rFBjgunK1`h* z-S1CnlTHVE@XR*vn>K0ie*bI;t(lkY#Wbf&(54?+n-29 zrW!JRA$4BhYpjaVfolEhBns3d5M$Kt{&jdZBtO-)J z)r!AK+vAXdQzA-Rl2V?DQ4b;3LTI-0bzT>jaU3UKXfR$t1Ft)!y9(AZN;*28^v?RL zX(=g%5=xMOrJ>7JcLjy7axMq-7HzlnO4VQT)P<8BL@g2Iy*sYFkm=An7joVuvvfuD z9dWS~)C<+PqS9E!DKvbI$>v&T6o!enmuuzM_8r1xq@??crq4H|0ff}CeDUsVbFr(< zAiDo&hD{WT%ET}HYC=9&uEOo}^^k?h@1I4RLewu!)^{>VBLn~G)A~a#7u_Pza57U! z8}*Oh_{YOm6(BOlq15V)Q6;wcAOsD&F7je+@+q})R5^D8Q1%=Nmte|Jt!P@F+a}mi zI-{R7nx96JH1ds%vXoa2f5v zzMhyy2cV>QwNOlmd&#0P~QU@ez%w!??vN&$)=eO!D1P>+M4&QQ*D?Xcm^_6(F`tLeI7yf;Veuu z;KfCGO;x!Z%{+u$8xnh*vvkFh4Q^14l8jI1?yaAU`?Z|Oz z^T(8lU;>&^;^2eA^4xnmI(BJqlf-tKf%ny8g}~~Z)7Y2=(#Pc+8(^fc$(uJ@<}ct5 z!URs)lx}41 zF!*7X500-cy|7cx*|qsQA=7vtZ4$6PUS>B2?w7>>E;aGj50K>QMPDPY*9nNJb2**% zn;4<}$NoQJd|~H2bRUwb`2ph$!pUlZlt1 zXxJ3d%=+QcABkf|uH%E{vx9EnJIg@g9wugP7Zq`*I*c>t@)yY+A4~{(%WW|X+nS99 z1bz^hdDf&64C>Qy`RfH(HJnA2n$R(G5FMTv3l4R@9WRHM!GI0`KzU{l&V;mV>UN8GCLSW_LYKQ>+a<5yG;CWt=jg`W^OUV{swlZ@1bK8j zkjyNCL9S-PaoLUYHjSukoZ&!D6J}<*vfVQoly$=>=c>Qu1h;gS$Aaf?f_vE2dA9K| zv$B@x5~;K9-~cj%&ba)rjT%MMvm+*p6`*sW(PA~0>m|Zh0o7FK+dvnU&*t{-ZJ;T} z73MqNP;CYj8Nu`6m}V+U?D->{FMP4`Y`=2x=6SvWk356u=mtldSis(-+~&%eB_ru} zo4X{si_yrj#c^5?qwb6MiBDj5PUNt-SW)N0zQ-e0I*so^23%h6vjB*!dX%hxSrD+N&X z{M)!yVn}#*)1=;_F#ErM1yTqG@zO+cilt>Md(OKhHhVK7VBROk18~bwO*(mRx(`^&;A9E#^K^4h z_Mv$FafvJkL{mk@M_0@|rY=?B$;_%Wq7@)daEVCz;K2|Q?P+`M#qap8X z*F*|5&`||jX3ykp1mAY+`4~OL|6q|Lnf)f1P;-Vl_5<~W|9LyhnMPCOagsS-h1lf8 zcm$xvR^t7B39KZ{E~gv};-JffDAC&|piiHC(^$!0+bBFZIcRa-v-lkvb#R8*LOohCU1%^ zc0Dc}g@CAo)DvzX`X8$s?;Or)W=YNqX%|G->+=CwqpQuPMz5l9n6SsCJmtAhwIM~v z(;lANf9!%B&$J5$Nylq8tOd`?7)x5%?yb>~pTlutPd>N0B}2|MX>=E8LEY5L@&gQz_lGlJa&G135IK!`|%n zLHC37COkuXBbW4B$Zl!bK!nm-K}>4p4n>?}Za^LF@)a5aVYTc-zjFI zAvJ4fs{df#x#401$i+hoil%i|{V}k&`a9m46iBhAxIVzZ&=x)T7R%nZh3L=3`VHcQ z(942%o$I@Kcih@S+_86U#UW$qm0ra_8JXAFZ8F{eAge zj(TTjS`KQtT`d&I9j0+#+;6L)UZ@0@Stn3tiyj!70twFKfW+Vv`G`d$nf0Mm3+@Fb zgKRU=f9Uc-Mt{*Op!JKqTEvr
    @Ej0QhB^iXQ>nj2I9u)mQheqby)d4l=)i$tPd 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

      *SfLdZgR6RCgmy4kD#H+|p*mSzB4T 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

      scC4}m4Rsiw1s+pY(GWvjjmCep+l!Y^ryFm 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 Lhf9At_v`-yKM*@Y literal 0 HcmV?d00001 diff --git a/versioned_docs/version-stable/getting-started/installation.md b/versioned_docs/version-stable/getting-started/installation.md index 6ca9e43..1268de5 100644 --- a/versioned_docs/version-stable/getting-started/installation.md +++ b/versioned_docs/version-stable/getting-started/installation.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Install Anaphora with Docker or Docker Compose. Quick setup guide for automated Kibana and Grafana report generation. -keywords: [Anaphora installation, Docker setup, Kibana reporting tool, Grafana reporting tool, automated reports installation] +keywords: [ Anaphora installation, Docker setup, Kibana reporting tool, Grafana reporting tool, automated reports installation ] --- # Installation Guide @@ -11,7 +11,6 @@ Get Anaphora up and running in your environment. ## Requirements - Docker and Docker Compose (recommended) -- Or: Java 17+ runtime environment - Network access to your Kibana/Grafana instances ## Quick Start with Docker @@ -21,23 +20,27 @@ The fastest way to get started is using Docker: ```bash docker run -p 3000:3000 \ -e PUBLIC_URL=http://localhost:3000 \ - -e ADMIN_USERNAME=admin \ - -e ADMIN_PASSWORD=admin \ - -d beshu-tech/anaphora + -e DB_ENCRYPTION_KEY=your-encryption-key \ + -d beshultd/anaphora ``` Then open [http://localhost:3000](http://localhost:3000) in your browser and log in with `admin` / `admin`. ### Environment Variables -| Variable | Description | Example | -|----------|-------------|---------| -| `PUBLIC_URL` | External URL where Anaphora is accessible | `http://anaphora.example.com:3000` | -| `ADMIN_USERNAME` | Initial admin username | `admin` | -| `ADMIN_PASSWORD` | Initial admin password | `your-secure-password` | +| Variable | Description | Required | Example | +|---------------------|-------------------------------------------------|-------------|------------------------------------| +| `PUBLIC_URL` | External URL where Anaphora is accessible | Yes | `http://anaphora.example.com:3000` | +| `DB_ENCRYPTION_KEY` | Key used to encrypt the DB. | Recommended | `your-encryption-key` | +| `ADMIN_USERNAME` | Initial admin username | No | `admin` | +| `ADMIN_PASSWORD` | Initial admin password | No | `your-secure-password` | +| `ACTIVATION_KEY` | License / activation key for Anaphora | No | `xxxx-xxxx-xxxx-xxxx` | +| `DEBUG` | Enable debug logging | No | `false` | +| `WORKER_COUNT` | Number of concurrent Puppeteer worker instances | No | `2` | :::tip Production Deployment -For production, use a strong password and set `PUBLIC_URL` to your actual external URL (this is used for callback URLs in SSO configurations). +For production, use a strong `DB_ENCRYPTION_KEY` and set `PUBLIC_URL` to your actual external URL (this is used for +callback URLs in SSO configurations). ::: ### Docker Compose @@ -48,23 +51,29 @@ For production deployments, use Docker Compose with persistent storage: version: '3.8' services: anaphora: - image: beshu-tech/anaphora + image: beshultd/anaphora ports: - "3000:3000" volumes: - - anaphora-data:/data + - anaphora-storage:/usr/src/app/storage + - anaphora-content:/usr/src/app/content environment: - PUBLIC_URL=https://anaphora.example.com + - DB_ENCRYPTION_KEY=${DB_ENCRYPTION_KEY} - ADMIN_USERNAME=admin - ADMIN_PASSWORD=${ADMIN_PASSWORD} - ACTIVATION_KEY=${ACTIVATION_KEY} + - DEBUG=false + - WORKER_COUNT=2 volumes: - anaphora-data: + anaphora-storage: + anaphora-content: ``` :::tip 🎁 Get a Free Trial Key -The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it)** — instant activation, no credit card required. +The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it) +** — instant activation, no credit card required. ::: ## Need Help? diff --git a/versioned_docs/version-stable/jobs/capture.md b/versioned_docs/version-stable/jobs/capture.md index 549c191..1f4827e 100644 --- a/versioned_docs/version-stable/jobs/capture.md +++ b/versioned_docs/version-stable/jobs/capture.md @@ -1,29 +1,31 @@ --- sidebar_position: 2 description: Configure Anaphora capture settings - Kibana, Grafana, and generic web connectors with authentication and advanced multi-step workflows. -keywords: [Kibana capture, Grafana capture, headless browser, web scraping, dashboard capture, authentication] +keywords: [ Kibana capture, Grafana capture, headless browser, web scraping, dashboard capture, authentication ] --- # Capture Configuration -The Capture tab defines what data to collect and how. Anaphora's headless Chrome-based connector can navigate, authenticate, and capture any web application. +The Capture tab defines what data to collect and how. Anaphora's headless Chrome-based connector can navigate, +authenticate, and capture any web application. ## Capture Modes ### Basic Mode Simple single-URL capture: + 1. Select a connector (Kibana, Grafana, Generic URL) 2. Enter the URL -3. Configure authentication -4. Set time range (for dashboards) -5. Capture +3. Configure authentication (if needed) +4. Capture Best for: Quick dashboard snapshots, simple reports. ### Advanced Mode Multi-step browser automation: + 1. Chain multiple navigation and capture actions 2. Extract data into variables 3. Evaluate conditions @@ -35,19 +37,20 @@ Toggle **Advanced** to switch modes. ### Kibana Connector -When you paste a Kibana URL, Anaphora automatically recognizes it and provides Kibana-specific options. +Use the Kibana connector to use Anaphora's built-in support for Kibana pages. **Supported Page Types:** + - Dashboards - Canvas workpads - Discover views +**Authentication:** +Login to Kibana using the ReadonlyREST login access. + **Time Range Configuration:** -| Option | Description | -|--------|-------------| -| Absolute | Specific date/time range | -| Relative | "Last 24 hours", "Last 7 days", etc. | -| Dashboard default | Use time range saved in dashboard | +Either set the time range in the Kibana UI before copying the URL, or set it in Anaphora using a similar syntax to +Kibana's time picker. **Capture Options:** | Mode | Description | @@ -56,48 +59,36 @@ When you paste a Kibana URL, Anaphora automatically recognizes it and provides K | **Per visualization** | Separate snapshot for each panel | :::tip Per-Visualization Capture -Capturing each visualization separately gives you more control in the Composer — arrange panels in custom layouts, exclude certain visualizations, or combine with other content. +Capturing each visualization separately gives you more control in the Composer — arrange panels in custom layouts, +exclude certain visualizations, or combine with other content. ::: -**Authentication Methods:** - -| Method | Description | -|--------|-------------| -| None | Public dashboards | -| ReadonlyREST login | Username/password with ReadonlyREST | -| Enterprise login | SSO with tenancy support | -| API key | For headless access | - ### Grafana Connector -Captures Grafana dashboards via the Grafana API. +Use the Grafana connector to use Anaphora's built-in support for Grafana pages. -**Configuration:** -| Field | Description | -|-------|-------------| -| URL | Grafana dashboard URL | -| API Key | Service account token | -| Time Range | Override dashboard time settings | -| Kiosk Mode | Cleaner capture without UI chrome | +**Authentication:** +Login with a Grafana user. Works for Grafana Cloud and self-hosted Grafana instances. **Capture Options:** + - Full dashboard capture - Panel-level capture (similar to Kibana per-visualization) ### Generic Web Connector -For any authenticated web application — if a human can reach it, Anaphora can capture it. +For any web page — if a human can reach it, Anaphora can capture it. **Use Cases:** + - Internal tools and dashboards - SaaS applications - Custom web applications -- Pages requiring complex login flows **Authentication:** -- Form-based login (username/password) -- SSO redirect flows -- Multi-factor authentication (with manual setup) + +- Natively supports Basic Auth headers +- Use Advanced mode to script login flows ## Advanced Capture Workflows @@ -107,36 +98,36 @@ Advanced mode enables multi-step browser automation for complex scenarios. ```mermaid flowchart LR - A["Navigate to URL"] --> B["Authenticate (if needed)"] + A["Navigate to URL"]] B --> C["Interact (click, type)"] C --> D["Capture (snapshot to var)"] ``` ### Browser Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Navigate** | Go to a URL | Open dashboard | -| **Click** | Click an element | Expand menu, select filter | -| **Type** | Enter text | Search box, form field | +| Action | Description | Example | +|----------------------|------------------|----------------------------| +| **Navigate** | Go to a URL | Open dashboard | +| **Click** | Click an element | Expand menu, select filter | +| **Type** | Enter text | Search box, form field | | **Wait for visible** | Wait for element | Dashboard loading complete | -| **Wait** | Pause execution | Allow animations to finish | -| **Reload** | Refresh page | Clear cached state | +| **Wait** | Pause execution | Allow animations to finish | +| **Reload** | Refresh page | Clear cached state | ### Data Extraction Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Capture value** | Extract text into variable | Error count, status text | -| **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | -| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | +| Action | Description | Example | +|----------------------|--------------------------------|--------------------------| +| **Capture value** | Extract text into variable | Error count, status text | +| **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | +| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | ### Control Flow Actions -| Action | Description | Example | -|--------|-------------|---------| -| **Conditional block** | If/else logic | Only notify if errors > 0 | -| **Break** | Stop without sending | Skip report if threshold not met | +| Action | Description | Example | +|-----------------------|----------------------|----------------------------------| +| **Conditional block** | If/else logic | Only notify if errors > 0 | +| **Break** | Stop without sending | Skip report if threshold not met | ### Example: Multi-Source Report @@ -161,13 +152,11 @@ Only send notification when error threshold is exceeded: ``` 1. Navigate → Error Dashboard -2. Capture value → $error_count (from error counter element) -3. Calculate → $threshold = 100 -4. Conditional block: - - If $error_count > $threshold: - - Capture snapshot → $alert_screenshot - - Else: +2. Capture value → error_count (from error counter element) +3. Conditional block: + - If error_count < 100: - Break (no notification sent) +4. Capture snapshot → error_dashboard ``` ## Authentication Best Practices @@ -175,20 +164,14 @@ Only send notification when error threshold is exceeded: ### Service Accounts For production jobs: + - Create dedicated service accounts with read-only access -- Use API keys where available (more stable than login flows) - Store credentials securely in Anaphora's encrypted database -### Handling SSO - -For complex SSO flows: -1. Use Advanced mode to manually navigate the login process -2. Add Wait actions between authentication steps -3. Test thoroughly — SSO flows can be timing-sensitive - ### Kibana with ReadonlyREST Anaphora has first-class support for ReadonlyREST authentication: + - Simple username/password login - Tenancy selection for multi-tenant Kibana - Enterprise SSO integration @@ -198,20 +181,21 @@ Anaphora has first-class support for ReadonlyREST authentication: ### Stable Captures For reliable automation: + - Use stable dashboard URLs (avoid temporary/session-based URLs) - Prefer consistent layouts — dynamic dashboards may produce varying results -- Add explicit Wait actions after navigation -- Use element-specific captures rather than full-page when possible +- Add wait actions when necessary to ensure content is fully loaded +- If possible use element-specific captures rather than full-page when possible ### Handling Failures - Configure retry policies in General tab -- Use Wait for visible before captures - Test captures manually before scheduling ## Testing Click **Test capture** to: + 1. Run the capture workflow immediately 2. Preview all captured snapshots 3. Verify authentication works @@ -219,7 +203,8 @@ Click **Test capture** to: 5. Debug any issues :::tip Debug Workflow -Use Test frequently while building Advanced workflows. Each action's result is visible, making it easy to identify where issues occur. +Use Test frequently while building Advanced workflows. Each action's result is visible, making it easy to identify where +issues occur. ::: ## Next Steps diff --git a/versioned_docs/version-stable/jobs/composer.md b/versioned_docs/version-stable/jobs/composer.md index 29da1ee..8bada95 100644 --- a/versioned_docs/version-stable/jobs/composer.md +++ b/versioned_docs/version-stable/jobs/composer.md @@ -1,253 +1,41 @@ --- sidebar_position: 3 description: Design professional PDF reports with Anaphora's block-based composer - layouts, branding, snapshots, and AI-generated content. -keywords: [PDF report builder, report composer, branded reports, PDF layout, report template] +keywords: [ PDF report builder, report composer, branded reports, PDF layout, report template ] --- # Composer - Report Builder -The Composer tab is where captured content becomes a professional report. Using a block-based editor, you can create branded PDFs with custom layouts, text, images, and snapshots. - -## Overview - -After capture, the Composer assembles your content into a deliverable format: - -```mermaid -flowchart TB - subgraph page["Report Page"] - header["**Header**
      Logo | Title | Date"] - snapshots["**Snapshots**
      $dashboard_a | $dashboard_b"] - ai["**AI Analysis**
      $ai_summary"] - footer["**Footer**
      Page 1 of 2"] - - header --> snapshots --> ai --> footer - end -``` +The Composer tab is where captured content becomes a professional report. Using a block-based editor, you can create +branded PDFs with custom layouts, text, images, and snapshots. ## Block Types -### Content Blocks - -| Block | Description | -|-------|-------------| -| **Snapshot** | Insert captured screenshot (from variable) | -| **Text** | Headings, paragraphs, metadata | -| **Image** | Logos, icons, decorative images | -| **AI Content** | AI-generated analysis or summary | - -### Layout Blocks - -| Block | Description | -|-------|-------------| -| **Columns** | Multi-column layouts (2, 3, or custom) | -| **Divider** | Horizontal line separator | -| **Spacer** | Vertical whitespace | -| **Page Break** | Force new page | - -### Structure Blocks - -| Block | Description | -|-------|-------------| -| **Header** | Repeating page header | -| **Footer** | Repeating page footer | -| **Container** | Grouping with background/border | - -## Block Editor - -### Adding Blocks - -1. Click **+ Add Block** or use the block palette -2. Select block type -3. Configure block properties -4. Drag to reposition - -### Block Properties - -Each block has configurable properties: - -**Text Block Properties:** -| Property | Options | -|----------|---------| -| Content | Text with variable support | -| Heading Level | H1, H2, H3, paragraph | -| Alignment | Left, center, right | -| Font Size | Custom or preset sizes | -| Color | Text color picker | - -**Snapshot Block Properties:** -| Property | Options | -|----------|---------| -| Variable | Select from captured snapshots | -| Size | Width/height or auto | -| Border | None, thin, medium | -| Caption | Optional text below image | - -**Container Properties:** -| Property | Options | -|----------|---------| -| Background | Color or image | -| Padding | Inner spacing | -| Border | Style, color, radius | -| Opacity | Transparency level | - -## Branding & Styling - -### Global Styles - -Set default styles for the entire report: - -| Setting | Description | -|---------|-------------| -| **Page Size** | A4, Letter, or custom dimensions | -| **Margins** | Top, bottom, left, right spacing | -| **Font Family** | Default typeface | -| **Colors** | Primary, secondary, accent colors | - -### Branded Reports - -Create professional branded reports: - -1. **Logo placement** — Header, footer, or watermark -2. **Color scheme** — Match corporate brand colors -3. **Typography** — Use brand-approved fonts -4. **Backgrounds** — Subtle patterns or gradients - -### Example: Corporate Template - -``` -Header: -├── Logo (left) -├── Report Title (center) -└── Date (right) - -Body: -├── Executive Summary (text) -├── Dashboard Snapshot (full width) -├── Two-Column Layout: -│ ├── Metrics Panel (left) -│ └── Trend Chart (right) -└── AI Analysis (text) - -Footer: -├── Company Name (left) -├── Page Number (center) -└── Confidentiality Notice (right) -``` - -## Template Variables - -Insert dynamic content using variables: - -### System Variables - -| Variable | Description | Example Output | -|----------|-------------|----------------| -| `{{date}}` | Report date | "January 15, 2025" | -| `{{time}}` | Report time | "09:30 AM" | -| `{{datetime}}` | Full timestamp | "2025-01-15 09:30:00" | -| `{{job_name}}` | Job name | "Daily Dashboard Report" | -| `{{job_id}}` | Job identifier | "job-123abc" | - -### Captured Variables - -Variables from the Capture workflow: - -| Syntax | Description | -|--------|-------------| -| `{{$snapshot_name}}` | Insert captured snapshot | -| `{{$value_name}}` | Insert captured text value | -| `{{$calculated}}` | Insert calculated result | - -### AI Variables - -When using AI providers: - -| Variable | Description | -|----------|-------------| -| `{{$ai_summary}}` | AI-generated summary | -| `{{$ai_analysis}}` | AI analysis of captured data | - -## Multi-Page Reports - -### Page Management - -- **Add Page** — Create additional pages -- **Page Order** — Drag pages to reorder -- **Page Break** — Force content to next page -- **Continuous** — Let content flow naturally - -### Page-Specific Content - -Each page can have: -- Different layouts -- Unique content blocks -- Shared headers/footers (optional) - -## Output Formats - -| Format | Use Case | Notes | -|--------|----------|-------| -| **PDF** | Email attachments, archival | Most common, best quality | -| **PNG** | Slack, chat apps | Single image, limited pages | -| **JPEG** | Smaller file size | Compressed, some quality loss | -| **HTML** | Web viewing | Interactive, larger file | - -## Templates - -### Saving Templates - -Save your composition as a reusable template: - -1. Design your report layout -2. Click **Save as Template** -3. Name and categorize -4. Reuse across jobs - -### Template Library - -- **Default templates** — Pre-built layouts -- **Custom templates** — Your saved designs -- **Shared templates** — Available within your Space - -## Preview & Testing - -### Preview Mode - -Click **Preview** to see the final rendered report: -- Actual PDF rendering -- Variable substitution -- Page breaks and layout -- Real captured content (if available) - -### Test Run - -For complete validation: -1. Run a test capture from Capture tab -2. Switch to Composer -3. Preview with actual data -4. Adjust layout as needed - -## Best Practices +### Capture Blocks -### Layout Tips +| Block | Description | +|---------------|-----------------------------------------------| +| **Snapshots** | All captured screenshots | +| **Variables** | Captured texts, calculated values, AI results | -- Use consistent margins and spacing -- Keep important content above the fold on page 1 -- Use page breaks to control pagination -- Test with different data volumes +### Component Blocks -### Performance +| Block | Description | +|-------------|----------------------------------------------------| +| **Text** | Add any text to the report. Can contain variables. | +| **Image** | Upload static images like logos | +| **Divider** | Horizontal line separator | +| **Spacer** | Vertical whitespace | -- Optimize image sizes before upload -- Limit complex layouts on high-frequency jobs -- Use appropriate output format for delivery channel +## Layout -### Accessibility +The report layout is built using a hierarchical structure of pages, rows, and cells. -- Use sufficient color contrast -- Include alt text for images -- Maintain readable font sizes -- Use clear heading hierarchy +| Structure | Description | +|-----------|---------------------------------------------------------------| +| **Page** | Pages reflect PDF pagination. Every page consists of rows. | +| **Row** | Rows split pages horizontally into sections. | +| **Cell** | Cells hold blocks within rows. Up to 3 cells can fit per row. | ## Next Steps diff --git a/versioned_docs/version-stable/jobs/delivery.md b/versioned_docs/version-stable/jobs/delivery.md index ef278e9..1161124 100644 --- a/versioned_docs/version-stable/jobs/delivery.md +++ b/versioned_docs/version-stable/jobs/delivery.md @@ -1,12 +1,13 @@ --- sidebar_position: 4 description: Configure report delivery - email, Slack, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. -keywords: [report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution] +keywords: [ report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution ] --- # Delivery Configuration -The Delivery tab configures where and how reports are sent. Anaphora supports multi-channel delivery with conditional routing. +The Delivery tab configures where and how reports are sent. Anaphora supports multi-channel delivery via email, +webhooks, and S3 archiving. ## Overview @@ -18,7 +19,6 @@ flowchart LR subgraph channels["Delivery Channels"] email["Email"] - slack["Slack"] s3["S3"] webhook["Webhook"] end @@ -28,24 +28,23 @@ flowchart LR ## Delivery Interfaces -Delivery Interfaces are reusable destination configurations. Configure them once in Settings, then select them in any job. +Delivery Interfaces are reusable destination configurations. Configure them once in Settings, then select them in any +job. ### Available Types -| Interface | Best For | Features | -|-----------|----------|----------| -| **SMTP** | Corporate email | SSL/TLS, attachments | -| **Mailgun** | High-volume email | API-based, reliable | -| **Slack** | Team notifications | Channels, threads, images | -| **Webhook** | Integrations | Custom payloads, any endpoint | -| **S3** | Archival, compliance | Historical records, versioning | +| Interface | Best For | Features | +|-------------|----------------------|--------------------------------| +| **SMTP** | Corporate email | SSL/TLS, attachments | +| **Mailgun** | Transactional email | High volume, tracking | +| **Webhook** | Integrations | Custom payloads, any endpoint | +| **S3** | Archival, compliance | Historical records, versioning | ### Reusability You can configure multiple interfaces of each type: - Different SMTP servers for different teams -- Multiple Slack workspaces - Separate S3 buckets for different retention periods - Various webhooks for different integrations @@ -55,139 +54,49 @@ S3 is particularly valuable for historical archives and compliance workflows. ### Use Cases -| Scenario | Benefit | -|----------|---------| -| **Historical reference** | "What did this dashboard look like on date X?" | -| **Compliance evidence** | Immutable records for audit requirements | -| **Long-term retention** | Store reports beyond housekeeping limits | -| **Cross-system integration** | Other tools can access archived reports | - -### Configuration - -| Setting | Description | -|---------|-------------| -| Bucket | S3 bucket name | -| Region | AWS region | -| Path prefix | Folder structure for organization | -| Credentials | AWS access key or IAM role | - -### Organization Strategy - -Structure your S3 archive for easy retrieval: - -``` -s3://company-reports/ -├── anaphora/ -│ ├── daily-dashboards/ -│ │ ├── 2025/ -│ │ │ ├── 01/ -│ │ │ │ ├── 2025-01-15-dashboard.pdf -│ │ │ │ └── 2025-01-16-dashboard.pdf -│ ├── compliance-reports/ -│ │ └── ... -│ └── alerts/ -│ └── ... -``` +| Scenario | Benefit | +|------------------------------|------------------------------------------------| +| **Historical reference** | "What did this dashboard look like on date X?" | +| **Compliance evidence** | Immutable records for audit requirements | +| **Long-term retention** | Store reports beyond housekeeping limits | +| **Cross-system integration** | Other tools can access archived reports | ## Email Delivery -### SMTP Configuration - -| Setting | Description | -|---------|-------------| -| Host | SMTP server address | -| Port | Usually 587 (TLS) or 465 (SSL) | -| Security | None, SSL, or StartTLS | -| Authentication | Username/password | +Anaphora supports sending reports via SMTP or Mailgun. ### Email Options -| Field | Description | Supports Variables | -|-------|-------------|-------------------| -| From | Sender address | No | -| To | Recipients (comma-separated) | Yes | -| CC/BCC | Additional recipients | Yes | -| Subject | Email subject line | Yes | -| Body | Message content | Yes | -| Attachment | Include PDF report | - | - -### Example Subject Lines - -``` -Daily Dashboard Report - {{date}} -[ALERT] Error threshold exceeded - {{$error_count}} errors -Weekly Summary: {{job_name}} -``` - -## Slack Delivery - -### Slack Configuration - -| Setting | Description | -|---------|-------------| -| Workspace | Connected Slack workspace | -| Channel | Default destination channel | -| Thread | Reply to thread (optional) | - -### Message Options +| Field | Description | +|------------------|------------------------------------------------| +| Attachments | Whether to attach the PDF report to the email. | +| Message template | Customizable email body with variables. | +| Recipients | List of email addresses to send the report to. | -| Field | Description | -|-------|-------------| -| Channel | Override default channel | -| Message | Text message (supports Slack formatting) | -| Image | Embed report as image | -| PDF | Upload PDF as file | - -### Slack Formatting - -Use Slack's mrkdwn formatting: - -``` -*Daily Report* for {{date}} - -Dashboard shows {{$metric_count}} active users. - -See attached PDF for full details. -``` +:::tip Recipients +Recipient email addresses can be either marked as single user or as group address. Emails sent to single user addresses +will include a snooze and unsubscribe link in the footer. Group addresses will not include these links. +::: ## Webhook Delivery +Webhooks enable custom integrations with any HTTP endpoint. + ### Webhook Configuration -| Setting | Description | -|---------|-------------| -| URL | Endpoint to receive report | -| Method | POST (default) or PUT | -| Headers | Custom headers (auth, content-type) | -| Payload format | JSON, form-data, or raw | - -### Payload Structure - -Webhook payloads include: - -```json -{ - "job_name": "Daily Dashboard Report", - "job_id": "job-123abc", - "run_id": "run-456def", - "timestamp": "2025-01-15T09:30:00Z", - "status": "success", - "report_url": "https://anaphora.example.com/reports/...", - "variables": { - "$error_count": 42, - "$status": "warning" - } -} -``` +| Field | Description | +|--------------------|-----------------------------------------------------------------------------------------------| +| Message template | Customizable message body with variables. | +| JSON body template | Define the JSON payload with variables. Only available when enabled in the Webhook interface. | ### Webhook Use Cases -| Integration | Description | -|-------------|-------------| -| **Ticketing systems** | Create tickets for alerts | -| **Chat platforms** | Custom integrations beyond Slack | -| **Data pipelines** | Feed report data to analytics | -| **Custom dashboards** | Update external status pages | +| Integration | Description | +|-----------------------|----------------------------------------| +| **Ticketing systems** | Create tickets for alerts | +| **Chat platforms** | Create messages in collaboration tools | +| **Data pipelines** | Feed report data to analytics | +| **Custom dashboards** | Update external status pages | ## Multi-Channel Delivery @@ -208,88 +117,18 @@ Delivery 2: Email (stakeholder distribution) Delivery 3: S3 (permanent archive) ``` -## Conditional Delivery - -Combine with Advanced Capture to route reports based on conditions. - -### Routing by Severity - -``` -If $error_count > 100: - → Deliver to #critical-alerts (Slack) - → Deliver to oncall@company.com (Email) -Else if $error_count > 10: - → Deliver to #team-alerts (Slack) -Else: - → Archive only (S3) -``` - -### Routing by Content - -``` -If $region == "EMEA": - → Deliver to emea-team@company.com -Else if $region == "APAC": - → Deliver to apac-team@company.com -``` - -## Delivery Failure Handling - -### Retry Behavior - -If delivery fails: -1. Anaphora retries based on job retry policy -2. Failed deliveries are logged -3. Admin notification on persistent failures - ### Partial Success With multi-channel delivery: + - Each channel is attempted independently - Partial success (some channels succeed, others fail) is logged -- Successful deliveries are not re-attempted on retry ## Testing Delivery -### Test Run - -1. Click **Test** on the job -2. Run captures and compose -3. Deliver to configured channels -4. Verify receipt and formatting - -### Delivery Log - -Check delivery status in the Run log: -- Success/failure per channel -- Error messages for failures -- Timing information - -## Best Practices - -### Email - -- Use distribution lists for team delivery -- Test subject lines with variables -- Consider time zones for delivery timing - -### Slack - -- Use dedicated channels for automated reports -- Include context in messages (what, when, why) -- Consider thread replies for high-frequency alerts - -### S3 - -- Implement lifecycle policies in AWS for old files -- Use consistent naming conventions -- Enable versioning for compliance requirements - -### Webhooks - -- Implement retry/idempotency on receiving end -- Use authentication headers for security -- Log incoming webhooks for debugging +Every delivery config includes a **Test** button. Use it to verify configuration before saving the job. +All steps during the capture and delivery process are logged for troubleshooting. +Use debug mode to also receive a video of the capture process. ## Next Steps diff --git a/versioned_docs/version-stable/jobs/general.md b/versioned_docs/version-stable/jobs/general.md index cfa93b3..7cae684 100644 --- a/versioned_docs/version-stable/jobs/general.md +++ b/versioned_docs/version-stable/jobs/general.md @@ -1,7 +1,7 @@ --- sidebar_position: 1 description: Configure job scheduling, notification throttling, retry policies, and data retention settings in Anaphora. -keywords: [job scheduling, CRON, notification throttling, retry policy, housekeeping, data retention] +keywords: [ job scheduling, CRON, notification throttling, retry policy, housekeeping, data retention ] --- # General Settings @@ -10,44 +10,38 @@ The General tab defines how often a job runs, how noisy it is allowed to be, and ## Configuration Fields -| Field | Description | Required | -|-------|-------------|----------| -| Name | Job identifier shown in lists and reports | Yes | -| Description | Notes about the job's purpose | No | -| Frequency | How often to run (simple or CRON) | Yes | -| Max Notify Frequency | Minimum time between notifications | No | -| Retry Policy | Behavior on capture failures | No | -| Housekeeping | Automatic cleanup of old runs/reports | No | +| Field | Description | Required | +|----------------------|-------------------------------------------|----------| +| Name | Job identifier shown in lists and reports | Yes | +| Description | Notes about the job's purpose | No | +| Frequency | How often to run (simple or CRON) | Yes | +| Max Notify Frequency | Minimum time between notifications | No | +| Retry Policy | Behavior on capture failures | No | +| Housekeeping | Automatic cleanup of old runs/reports | No | ## Scheduling ### Simple Frequency -Set how often the job should run using natural intervals: - -| Interval | Example Use Case | -|----------|------------------| -| Every X minutes | High-frequency alerting (5-10 min) | -| Every X hours | Regular status checks | -| Every X days | Daily reports | -| Every X weeks | Weekly summaries | +Set how often the job should run using natural intervals. ### Advanced (CRON) Toggle **Advanced** to use CRON expressions for precise scheduling: -| CRON Expression | Description | -|-----------------|-------------| -| `0 9 * * *` | Every day at 9:00 AM | -| `0 */2 * * *` | Every 2 hours | -| `0 9 * * 1-5` | Weekdays at 9:00 AM | -| `0 0 1 * *` | First day of every month | -| `*/10 * * * *` | Every 10 minutes | -| `0 9,17 * * *` | At 9:00 AM and 5:00 PM | +| CRON Expression | Description | +|-----------------|--------------------------| +| `0 9 * * *` | Every day at 9:00 AM | +| `0 */2 * * *` | Every 2 hours | +| `0 9 * * 1-5` | Weekdays at 9:00 AM | +| `0 0 1 * *` | First day of every month | +| `*/10 * * * *` | Every 10 minutes | +| `0 9,17 * * *` | At 9:00 AM and 5:00 PM | ## Notification Throttling -**Max Notify Frequency** controls the maximum notification rate regardless of how often the job runs. This is especially important for high-frequency alerting jobs. +**Max Notify Frequency** controls the maximum notification rate regardless of how often the job runs. This is especially +important for high-frequency alerting jobs. ### Why Throttling Matters @@ -78,81 +72,38 @@ flowchart TD ### Example Configuration -| Job Frequency | Throttling | Result | -|---------------|------------|--------| -| Every 5 minutes | 3 hours | Max 8 notifications/day | -| Every 10 minutes | 1 hour | Max 24 notifications/day | -| Every hour | 6 hours | Max 4 notifications/day | -| Daily | None | 1 notification/day | +| Job Frequency | Throttling | Result | +|------------------|------------|--------------------------| +| Every 5 minutes | 3 hours | Max 8 notifications/day | +| Every 10 minutes | 1 hour | Max 24 notifications/day | +| Every hour | 6 hours | Max 4 notifications/day | +| Daily | None | 1 notification/day | :::tip Alerting Pattern High-frequency sampling + throttling creates an alerting-style workflow: + - Job runs every 5 minutes to detect issues quickly - Throttling prevents notification fatigue - Recipients get timely alerts without spam -::: + ::: ## Retry Policy -Configure how Anaphora handles failed captures: - -| Setting | Description | -|---------|-------------| -| **Retry Count** | Number of retry attempts before giving up | -| **Retry Delay** | Wait time between retries | -| **Suspend on Failure** | Disable job after X consecutive failures | - -### Example: Resilient Configuration - -``` -Retry Count: 3 -Retry Delay: 30 seconds -Suspend After: 5 consecutive failures -``` - -This configuration: -1. Retries a failed capture up to 3 times -2. Waits 30 seconds between attempts -3. Suspends the job if 5 runs in a row fail (prevents endless failures) - -### Failure Notifications - -When failures occur: -- Admin receives notification based on retry/suspend settings -- Failed runs are logged with error details -- Job can be manually re-enabled after fixing issues +Enable retries to retry failed runs automatically after failures. +When enabled, set how many times the run should be retried before giving up. ## Housekeeping (Data Retention) -Control automatic deletion of old data to manage storage: - -| Setting | Description | Example | -|---------|-------------|---------| -| **Run History** | How long to keep execution logs | 30 days | -| **Reports** | How long to keep generated PDFs | 90 days | -| **Artifacts** | How long to keep captures/snapshots | 7 days | - -### Retention Strategies - -| Job Type | Recommended Retention | -|----------|----------------------| -| Alerting (high-frequency) | Short: 7-14 days | -| Daily reports | Medium: 30-60 days | -| Compliance reports | Long: 1+ year | -| Development/testing | Minimal: 1-7 days | +Enable run expire time to automatically delete old runs and reports after a specified period. +This helps manage storage usage over time. :::warning Storage Impact High-frequency jobs generate more data. Without housekeeping: + - 10-minute job = 144 runs/day = 4,320 runs/month - Each run may include snapshots and reports - Storage can grow rapidly without retention limits -::: - -### Per-Job vs Global Housekeeping - -- **Per-Job**: Configure in the General tab for job-specific retention -- **Global**: Set system-wide defaults in Administration settings -- Per-job settings override global defaults + ::: ## Best Practices @@ -170,7 +121,7 @@ Housekeeping: 90 days ```yaml Frequency: Every 5-10 minutes Throttling: 1-3 hours (balance speed vs. noise) -Retry: 2 attempts (fail fast) +Retry: Job runs often enough; retries usually not needed Housekeeping: 14 days (less storage needed) ``` @@ -180,7 +131,7 @@ Housekeeping: 14 days (less storage needed) Frequency: Weekly or monthly Throttling: None Retry: 5 attempts (ensure success) -Housekeeping: 365+ days (or use S3 archiving) +Housekeeping: Never ``` ## Next Steps diff --git a/versioned_docs/version-stable/jobs/index.md b/versioned_docs/version-stable/jobs/index.md index 0295eca..5cebfa2 100644 --- a/versioned_docs/version-stable/jobs/index.md +++ b/versioned_docs/version-stable/jobs/index.md @@ -84,7 +84,7 @@ Capture Dashboard -> Send to AI -> Receive Analysis -> Include in Report - **Visual Analysis** - Pass screenshots to AI models to evaluate dashboard content - **Text Summaries** - AI generates human-readable summaries of complex data - **Anomaly Detection** - AI identifies unusual patterns or concerning trends -- **DeepSeek Compatible** - Works with any AI provider using the DeepSeek API format +- **OpenAI Compatible** - Works with any AI provider using the OpenAI API format ## Visual Composer diff --git a/versioned_sidebars/version-stable-sidebars.json b/versioned_sidebars/version-stable-sidebars.json index 50594a3..4b1ee49 100644 --- a/versioned_sidebars/version-stable-sidebars.json +++ b/versioned_sidebars/version-stable-sidebars.json @@ -23,7 +23,7 @@ "items": [ "basic-examples/kibana-dashboard-report", "basic-examples/kibana-alert", - "basic-examples/conditional-report", + "basic-examples/kibana-conditional-report", "basic-examples/grafana-dashboard-report" ] }, @@ -36,9 +36,8 @@ }, "items": [ "advanced-examples/mixed-sources-report", - "advanced-examples/kibana-statistical-alert", - "advanced-examples/ai-news-collation", - "advanced-examples/branded-reports" + "advanced-examples/kibana-anomaly-alert", + "advanced-examples/ai-news-collation" ] }, { From 544ea1df843cf99d60f92fb83387389571496fc6 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 23:09:00 +0100 Subject: [PATCH 29/32] chore: review findings --- docs/administration/authentication/ldap.md | 2 +- docs/advanced-examples/index.md | 10 +++++----- docs/getting-started/installation.md | 4 ++-- docs/jobs/capture.md | 11 +++++------ docs/jobs/delivery.md | 6 +++--- docs/jobs/general.md | 2 +- 6 files changed, 17 insertions(+), 18 deletions(-) diff --git a/docs/administration/authentication/ldap.md b/docs/administration/authentication/ldap.md index ae65e03..3ccc579 100644 --- a/docs/administration/authentication/ldap.md +++ b/docs/administration/authentication/ldap.md @@ -30,7 +30,7 @@ Navigate to **Settings** > **System Settings** > **Auth** > **LDAP** to configur | Bind credentials | Service account password | (stored securely) | Yes | | Search base | Base DN for user search | `dc=example,dc=com` | Yes | | Search filter | LDAP filter for user lookup | `uid={{username}}` | Yes | -| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | +| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | | Group search filter | LDAP filter for groups | `(member={{cn}})` | No | | Group name property | Attribute for group name | `cn` | No | | Reject unauthorized | Enforce TLS certificate checks | `false` (unchecked) | No | diff --git a/docs/advanced-examples/index.md b/docs/advanced-examples/index.md index 78f055a..60711f9 100644 --- a/docs/advanced-examples/index.md +++ b/docs/advanced-examples/index.md @@ -10,11 +10,11 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|------------------------------------------------------------------|-----------------------------------------------------| -| [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | -| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | +| Example | Description | +|------------------------------------------------|-----------------------------------------------------| +| [Mixed Sources Report](./mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | +| [Kibana Anomaly Alert](./kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./ai-news-collation) | Aggregate and summarize content with AI | ## Prerequisites diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index 1268de5..4f4b713 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -72,8 +72,8 @@ volumes: ``` :::tip 🎁 Get a Free Trial Key -The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it) -** — instant activation, no credit card required. +The `ACTIVATION_KEY` unlocks PRO or Enterprise features. +**[Request your free trial key →](https://portal.anaphora.it)** — instant activation, no credit card required. ::: ## Need Help? diff --git a/docs/jobs/capture.md b/docs/jobs/capture.md index 1f4827e..c0bb366 100644 --- a/docs/jobs/capture.md +++ b/docs/jobs/capture.md @@ -120,7 +120,7 @@ flowchart LR |----------------------|--------------------------------|--------------------------| | **Capture value** | Extract text into variable | Error count, status text | | **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | -| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | +| **Calculate** | Arithmetic on variables | `errors / total * 100` | ### Control Flow Actions @@ -135,16 +135,15 @@ Capture from multiple dashboards in one job: ``` 1. Navigate → Kibana Dashboard A -2. Capture snapshot → $dashboard_a +2. Capture snapshot → dashboard_a 3. Navigate → Grafana Dashboard B -4. Capture snapshot → $dashboard_b +4. Capture snapshot → dashboard_b 5. Navigate → Internal Tool 6. Click → "Generate Report" button -7. Wait for visible → Report table -8. Capture snapshot → $internal_report +7. Capture snapshot → internal_report ``` -Result: Three snapshots available in Composer as `$dashboard_a`, `$dashboard_b`, `$internal_report`. +Result: Three snapshots available in Composer as `dashboard_a`, `dashboard_b`, `internal_report`. ### Example: Conditional Alert diff --git a/docs/jobs/delivery.md b/docs/jobs/delivery.md index 1161124..3a8962a 100644 --- a/docs/jobs/delivery.md +++ b/docs/jobs/delivery.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 -description: Configure report delivery - email, Slack, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. -keywords: [ report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution ] +description: Configure report delivery - email, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. +keywords: [ report delivery, email reports, webhook, S3 archiving, report distribution ] --- # Delivery Configuration @@ -112,7 +112,7 @@ Send the same report to multiple destinations: ### Example: Alert with Archive ``` -Delivery 1: Slack (immediate notification) +Delivery 1: Webhook e.g. Slack (immediate notification) Delivery 2: Email (stakeholder distribution) Delivery 3: S3 (permanent archive) ``` diff --git a/docs/jobs/general.md b/docs/jobs/general.md index 7cae684..4db3145 100644 --- a/docs/jobs/general.md +++ b/docs/jobs/general.md @@ -103,7 +103,7 @@ High-frequency jobs generate more data. Without housekeeping: - 10-minute job = 144 runs/day = 4,320 runs/month - Each run may include snapshots and reports - Storage can grow rapidly without retention limits - ::: +::: ## Best Practices From 2650a9efc132ae8c49601bbe4960660959469722 Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 23:17:42 +0100 Subject: [PATCH 30/32] chore: improve slack webhook --- docs/delivery-interfaces/slack.md | 36 +++++++++++-------------------- 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/docs/delivery-interfaces/slack.md b/docs/delivery-interfaces/slack.md index d4b4e70..4b00de9 100644 --- a/docs/delivery-interfaces/slack.md +++ b/docs/delivery-interfaces/slack.md @@ -10,33 +10,21 @@ Deliver reports directly to Slack channels. Use the webhook delivery interface t ## Setup Steps -### 1. Create Slack App +### 1. Create Slack Webhook -1. Go to [api.slack.com/apps](https://api.slack.com/apps) -2. Click **Create New App** -3. Choose **From scratch** -4. Name it "Anaphora" and select workspace +1. Go to [Slack Docs](https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/) +2. Follow the instructions to create an **Incoming Webhook** -### 2. Enable Incoming Webhooks - -1. In app settings, go to **Incoming Webhooks** -2. Toggle **Activate Incoming Webhooks** on -3. Click **Add New Webhook to Workspace** -4. Select the default channel -5. Copy the Webhook URL - -### 3. Configure in Anaphora +### 2. Configure in Anaphora 1. Go to **Delivery Interfaces** 2. Add new **Webhook** interface 3. Paste the Webhook URL -4. Add the ```Authorization``` header with value ```Bearer xoxb-your-slack-bot-token``` -5. Set the method to **POST** and body type to **JSON** -6. Add the JSON body: -```json -{ - "channel": "#your-channel", - "text": "$MESSAGE" -} -``` -7. Test and save +4. Set the method to **POST** and body type to **JSON** +5. Add the JSON body: + ```json + { + "text": "Hello, world." + } + ``` +6. Test and save From abb87a6446229557a229adac0b15a1dd95b733cc Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 23:18:59 +0100 Subject: [PATCH 31/32] chore: update stable --- .../administration/authentication/ldap.md | 2 +- .../version-stable/advanced-examples/index.md | 10 +++--- .../delivery-interfaces/slack.md | 36 +++++++------------ .../getting-started/installation.md | 4 +-- versioned_docs/version-stable/jobs/capture.md | 11 +++--- .../version-stable/jobs/delivery.md | 6 ++-- versioned_docs/version-stable/jobs/general.md | 2 +- 7 files changed, 29 insertions(+), 42 deletions(-) diff --git a/versioned_docs/version-stable/administration/authentication/ldap.md b/versioned_docs/version-stable/administration/authentication/ldap.md index ae65e03..3ccc579 100644 --- a/versioned_docs/version-stable/administration/authentication/ldap.md +++ b/versioned_docs/version-stable/administration/authentication/ldap.md @@ -30,7 +30,7 @@ Navigate to **Settings** > **System Settings** > **Auth** > **LDAP** to configur | Bind credentials | Service account password | (stored securely) | Yes | | Search base | Base DN for user search | `dc=example,dc=com` | Yes | | Search filter | LDAP filter for user lookup | `uid={{username}}` | Yes | -| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | +| Group search base | Base DN for group search | `ou=groups,dc=example,dc=com` | No | | Group search filter | LDAP filter for groups | `(member={{cn}})` | No | | Group name property | Attribute for group name | `cn` | No | | Reject unauthorized | Enforce TLS certificate checks | `false` (unchecked) | No | diff --git a/versioned_docs/version-stable/advanced-examples/index.md b/versioned_docs/version-stable/advanced-examples/index.md index 78f055a..60711f9 100644 --- a/versioned_docs/version-stable/advanced-examples/index.md +++ b/versioned_docs/version-stable/advanced-examples/index.md @@ -10,11 +10,11 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|------------------------------------------------------------------|-----------------------------------------------------| -| [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | -| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | +| Example | Description | +|------------------------------------------------|-----------------------------------------------------| +| [Mixed Sources Report](./mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | +| [Kibana Anomaly Alert](./kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./ai-news-collation) | Aggregate and summarize content with AI | ## Prerequisites diff --git a/versioned_docs/version-stable/delivery-interfaces/slack.md b/versioned_docs/version-stable/delivery-interfaces/slack.md index d4b4e70..4b00de9 100644 --- a/versioned_docs/version-stable/delivery-interfaces/slack.md +++ b/versioned_docs/version-stable/delivery-interfaces/slack.md @@ -10,33 +10,21 @@ Deliver reports directly to Slack channels. Use the webhook delivery interface t ## Setup Steps -### 1. Create Slack App +### 1. Create Slack Webhook -1. Go to [api.slack.com/apps](https://api.slack.com/apps) -2. Click **Create New App** -3. Choose **From scratch** -4. Name it "Anaphora" and select workspace +1. Go to [Slack Docs](https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/) +2. Follow the instructions to create an **Incoming Webhook** -### 2. Enable Incoming Webhooks - -1. In app settings, go to **Incoming Webhooks** -2. Toggle **Activate Incoming Webhooks** on -3. Click **Add New Webhook to Workspace** -4. Select the default channel -5. Copy the Webhook URL - -### 3. Configure in Anaphora +### 2. Configure in Anaphora 1. Go to **Delivery Interfaces** 2. Add new **Webhook** interface 3. Paste the Webhook URL -4. Add the ```Authorization``` header with value ```Bearer xoxb-your-slack-bot-token``` -5. Set the method to **POST** and body type to **JSON** -6. Add the JSON body: -```json -{ - "channel": "#your-channel", - "text": "$MESSAGE" -} -``` -7. Test and save +4. Set the method to **POST** and body type to **JSON** +5. Add the JSON body: + ```json + { + "text": "Hello, world." + } + ``` +6. Test and save diff --git a/versioned_docs/version-stable/getting-started/installation.md b/versioned_docs/version-stable/getting-started/installation.md index 1268de5..4f4b713 100644 --- a/versioned_docs/version-stable/getting-started/installation.md +++ b/versioned_docs/version-stable/getting-started/installation.md @@ -72,8 +72,8 @@ volumes: ``` :::tip 🎁 Get a Free Trial Key -The `ACTIVATION_KEY` unlocks PRO or Enterprise features. **[Request your free trial key →](https://portal.anaphora.it) -** — instant activation, no credit card required. +The `ACTIVATION_KEY` unlocks PRO or Enterprise features. +**[Request your free trial key →](https://portal.anaphora.it)** — instant activation, no credit card required. ::: ## Need Help? diff --git a/versioned_docs/version-stable/jobs/capture.md b/versioned_docs/version-stable/jobs/capture.md index 1f4827e..c0bb366 100644 --- a/versioned_docs/version-stable/jobs/capture.md +++ b/versioned_docs/version-stable/jobs/capture.md @@ -120,7 +120,7 @@ flowchart LR |----------------------|--------------------------------|--------------------------| | **Capture value** | Extract text into variable | Error count, status text | | **Capture snapshot** | Screenshot element to variable | Chart, panel, full page | -| **Calculate** | Arithmetic on variables | `$errors / $total * 100` | +| **Calculate** | Arithmetic on variables | `errors / total * 100` | ### Control Flow Actions @@ -135,16 +135,15 @@ Capture from multiple dashboards in one job: ``` 1. Navigate → Kibana Dashboard A -2. Capture snapshot → $dashboard_a +2. Capture snapshot → dashboard_a 3. Navigate → Grafana Dashboard B -4. Capture snapshot → $dashboard_b +4. Capture snapshot → dashboard_b 5. Navigate → Internal Tool 6. Click → "Generate Report" button -7. Wait for visible → Report table -8. Capture snapshot → $internal_report +7. Capture snapshot → internal_report ``` -Result: Three snapshots available in Composer as `$dashboard_a`, `$dashboard_b`, `$internal_report`. +Result: Three snapshots available in Composer as `dashboard_a`, `dashboard_b`, `internal_report`. ### Example: Conditional Alert diff --git a/versioned_docs/version-stable/jobs/delivery.md b/versioned_docs/version-stable/jobs/delivery.md index 1161124..3a8962a 100644 --- a/versioned_docs/version-stable/jobs/delivery.md +++ b/versioned_docs/version-stable/jobs/delivery.md @@ -1,7 +1,7 @@ --- sidebar_position: 4 -description: Configure report delivery - email, Slack, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. -keywords: [ report delivery, email reports, Slack notifications, webhook, S3 archiving, report distribution ] +description: Configure report delivery - email, webhooks, and S3 archiving. Multi-channel distribution and conditional routing. +keywords: [ report delivery, email reports, webhook, S3 archiving, report distribution ] --- # Delivery Configuration @@ -112,7 +112,7 @@ Send the same report to multiple destinations: ### Example: Alert with Archive ``` -Delivery 1: Slack (immediate notification) +Delivery 1: Webhook e.g. Slack (immediate notification) Delivery 2: Email (stakeholder distribution) Delivery 3: S3 (permanent archive) ``` diff --git a/versioned_docs/version-stable/jobs/general.md b/versioned_docs/version-stable/jobs/general.md index 7cae684..4db3145 100644 --- a/versioned_docs/version-stable/jobs/general.md +++ b/versioned_docs/version-stable/jobs/general.md @@ -103,7 +103,7 @@ High-frequency jobs generate more data. Without housekeeping: - 10-minute job = 144 runs/day = 4,320 runs/month - Each run may include snapshots and reports - Storage can grow rapidly without retention limits - ::: +::: ## Best Practices From 6677453cce88ee0a94fc61fc807f3025fb8ee6fb Mon Sep 17 00:00:00 2001 From: paulbuehler Date: Thu, 22 Jan 2026 23:24:08 +0100 Subject: [PATCH 32/32] revert: links --- docs/advanced-examples/index.md | 10 +++++----- .../version-stable/advanced-examples/index.md | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/advanced-examples/index.md b/docs/advanced-examples/index.md index 60711f9..78f055a 100644 --- a/docs/advanced-examples/index.md +++ b/docs/advanced-examples/index.md @@ -10,11 +10,11 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|------------------------------------------------|-----------------------------------------------------| -| [Mixed Sources Report](./mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Anomaly Alert](./kibana-anomaly-alert) | Alerts based on anomaly analysis | -| [AI News Collation](./ai-news-collation) | Aggregate and summarize content with AI | +| Example | Description | +|------------------------------------------------------------------|-----------------------------------------------------| +| [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | +| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | ## Prerequisites diff --git a/versioned_docs/version-stable/advanced-examples/index.md b/versioned_docs/version-stable/advanced-examples/index.md index 60711f9..78f055a 100644 --- a/versioned_docs/version-stable/advanced-examples/index.md +++ b/versioned_docs/version-stable/advanced-examples/index.md @@ -10,11 +10,11 @@ Complex reporting scenarios demonstrating Anaphora's full capabilities. ## Available Examples -| Example | Description | -|------------------------------------------------|-----------------------------------------------------| -| [Mixed Sources Report](./mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | -| [Kibana Anomaly Alert](./kibana-anomaly-alert) | Alerts based on anomaly analysis | -| [AI News Collation](./ai-news-collation) | Aggregate and summarize content with AI | +| Example | Description | +|------------------------------------------------------------------|-----------------------------------------------------| +| [Mixed Sources Report](./advanced-examples/mixed-sources-report) | Combine data from multiple Kibana/Grafana instances | +| [Kibana Anomaly Alert](./advanced-examples/kibana-anomaly-alert) | Alerts based on anomaly analysis | +| [AI News Collation](./advanced-examples/ai-news-collation) | Aggregate and summarize content with AI | ## Prerequisites

      J}4;G)VdP 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