From f4e15b844f55158e3d9b477bfc4c91890323a40e Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 28 Nov 2025 11:29:19 +0100 Subject: [PATCH 01/28] Initial commit --- docs/book/getting-started/zenml-pro/README.md | 6 +- .../zenml-pro/air-gapped-deployment.md | 677 ++++++++++++++++++ .../zenml-pro/hybrid-deployment.md | 432 +++++++++++ .../zenml-pro/saas-deployment.md | 249 +++++++ docs/book/getting-started/zenml-pro/toc.md | 5 +- 5 files changed, 1365 insertions(+), 4 deletions(-) create mode 100644 docs/book/getting-started/zenml-pro/air-gapped-deployment.md create mode 100644 docs/book/getting-started/zenml-pro/hybrid-deployment.md create mode 100644 docs/book/getting-started/zenml-pro/saas-deployment.md diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index 0e16f4503cf..75d6fa9d28a 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -68,7 +68,7 @@ The ZenML-managed SaaS deployment provides the fastest path to production with z **Ideal for:** Teams that want to get started immediately without managing infrastructure, while keeping sensitive ML data in their own environment. -[Learn more about SaaS architecture →](../system-architectures.md#zenml-pro-saas-architecture) +[Learn more about SaaS deployment →](saas-deployment.md) ### Hybrid SaaS Deployment @@ -83,7 +83,7 @@ The Hybrid deployment balances control with convenience. The ZenML control plane **Ideal for:** Organizations with security or compliance requirements that mandate keeping metadata and credentials within their infrastructure, while benefiting from centralized user management. -[Learn more about Hybrid architecture →](../system-architectures.md#zenml-pro-hybrid-saas) +[Learn more about Hybrid deployment →](hybrid-deployment.md) ### Air-gapped Deployment @@ -94,7 +94,7 @@ The fully self-hosted, air-gapped deployment gives you complete control and data **Ideal for:** Organizations with the strictest security requirements, regulated industries, or environments that must operate without external network access. -[Learn more about self-hosted architecture →](../system-architectures.md#zenml-pro-self-hosted-architecture) | [Self-hosting setup guide →](self-hosted.md) +[Learn more about Air-gapped deployment →](air-gapped-deployment.md) ## Security & Compliance diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md new file mode 100644 index 00000000000..ac7d0f4bfe9 --- /dev/null +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md @@ -0,0 +1,677 @@ +--- +description: Learn about ZenML Pro Air-gapped deployment - complete control and data sovereignty for the strictest security requirements. +icon: shield-halved +--- + +# Air-gapped Deployment + +ZenML Pro Air-gapped deployment provides complete control and data sovereignty for organizations with the strictest security, compliance, or regulatory requirements. All ZenML components run entirely within your infrastructure with no external dependencies or internet connectivity required. + +{% hint style="info" %} +To learn more about Air-gapped deployment, [book a call](https://www.zenml.io/book-your-demo). +{% endhint %} + +## Overview + +In an air-gapped deployment, every component of ZenML Pro runs within your isolated network environment. This architecture is designed for organizations that must operate in completely disconnected environments or have regulatory requirements preventing any external communication. + +![ZenML Pro self-hosted deployment architecture](../../.gitbook/assets/cloud_architecture_scenario_2.png) + +## Architecture + +### What Runs Where + +| Component | Location | Purpose | +|-----------|----------|---------| +| **Pro Control Plane** | Your Infrastructure | Manages authentication, RBAC, and workspace coordination | +| **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | +| **Pro Metadata Store** | Your Infrastructure | Stores user management, RBAC, and organizational data | +| **Workspace Metadata Store** | Your Infrastructure | Stores pipeline runs, model metadata, and tracking information | +| **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | +| **Identity Provider** | Your Infrastructure | Handles authentication (OIDC/LDAP/SAML) | +| **Pro Dashboard** | Your Infrastructure | Web interface for all ZenML Pro features | +| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | + +### Complete Isolation + +```mermaid +flowchart TB + subgraph infra["Your Infrastructure (Air-gapped)"] + direction TB + + control_plane["ZenML Pro Control Plane
- Authentication & Authorization
- RBAC Management
- Workspace Coordination
- Pro Metadata Store"] + + subgraph workspaces[" "] + direction LR + ws1["Workspace 1
- Server
- Metadata
- Secrets"] + ws2["Workspace 2
- Server
- Metadata
- Secrets"] + wsn["...
- Server
- Metadata
- Secrets
"] + end + + compute["Your Compute & Storage Resources
- Kubernetes / VMs / Cloud
- Artifact Stores
- ML Data & Models"] + end + + control_plane --> ws1 + control_plane --> ws2 + control_plane --> wsn + ws1 --> compute + ws2 --> compute + wsn --> compute + + note[/"⚠️ No External Communication Required"/] + infra --- note +``` +``` + +{% hint style="success" %} +**Complete data sovereignty**: Zero data leaves your environment. All components, metadata, and ML artifacts remain within your infrastructure boundaries. +{% endhint %} + +### Data Flow + +1. **Code Execution**: You write code and run pipelines with your client SDK using Python +2. **Authentication & Token Acquisition**: + - Users authenticate via your internal identity provider (LDAP/AD/OIDC) + - The ZenML Pro control plane (running in your infrastructure) handles authentication and RBAC + - The ZenML client fetches short-lived tokens from your ZenML workspace for: + - Pushing Docker images to your container registry + - Communicating with your artifact store + - Submitting workloads to your orchestrator + - *Note: Your local Python environment needs the client libraries for your stack components* +3. **Authorization**: RBAC policies enforced by your control plane before token issuance +4. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator +5. **Orchestrator Execution**: In the orchestrator environment within your infrastructure: + - The Docker image is pulled from your container registry + - Within the pipeline/step entrypoint, the necessary code is pulled in + - A connection to your ZenML workspace is established + - The relevant pipeline/step code is executed +6. **Runtime Data Flow**: During execution (all within your infrastructure): + - Pipeline and step run metadata is logged to your ZenML workspace + - Logs are streamed to your log backend + - Artifacts are written to your artifact store + - Metadata pointing to these artifacts is persisted in your workspace +7. **Observability**: The ZenML Pro dashboard (running in your infrastructure) connects to your workspace and uses all persisted metadata to provide you with a complete observability plane + +**Key difference from other deployments**: All communication happens entirely within your infrastructure boundary with zero external dependencies or internet connectivity required. + +## Key Benefits + +### 🔒 Maximum Security & Control + +- **Complete air-gap**: No internet connectivity required for operation +- **Zero external dependencies**: All components self-contained +- **Custom security policies**: Full control over all security configurations +- **Network isolation**: Operates within your security perimeter +- **Audit compliance**: Complete logging and monitoring within your infrastructure + +### 🏛️ Regulatory Compliance + +- **Data residency**: All data stays within your jurisdiction +- **ITAR/EAR compliance**: Suitable for controlled data environments +- **HIPAA/GDPR ready**: Meet healthcare and privacy regulations +- **Government/Defense**: Suitable for classified environments +- **Financial services**: Meet banking and financial regulations + +### 🎯 Enterprise Control + +- **Custom identity provider**: Integrate with your LDAP/AD/OIDC +- **Infrastructure flexibility**: Deploy on any infrastructure (cloud, on-prem, edge) +- **Version control**: Control update schedules and versions +- **Backup strategy**: Implement your own backup and DR policies +- **Resource optimization**: Full control over resource allocation and costs + +### 🛡️ Certified & Documented + +- **SOC 2 Type II certified**: Enterprise-grade security controls +- **ISO 27001 certified**: International security management standards +- **Vulnerability Assessment Reports**: Available on request +- **Software Bill of Materials (SBOM)**: Complete dependency inventory +- **Architecture documentation**: Comprehensive deployment guides + +## Ideal Use Cases + +Air-gapped deployment is essential for: + +- **Government and defense** organizations with classified data requirements +- **Regulated industries** (healthcare, finance) with strict data residency requirements +- **Organizations in restricted regions** with limited or no internet connectivity +- **Research institutions** handling sensitive or proprietary research data +- **Critical infrastructure** operators requiring isolated systems +- **Companies with ITAR/EAR compliance** requirements +- **Enterprises with zero-trust policies** prohibiting external communication +- **Organizations requiring full control** over all aspects of their MLOps platform + +## Deployment Options + +### On-Premises Data Center + +Deploy on your own hardware: +- Physical servers or private cloud +- Complete infrastructure control +- Integration with existing systems +- Custom hardware configurations + +### Private Cloud (AWS, Azure, GCP) + +Deploy in isolated cloud VPC: +- No internet gateway +- Private networking only +- Use cloud-native services +- Leverage cloud scalability within your boundary + +### Hybrid Multi-Cloud + +Deploy across multiple environments: +- On-premises + private cloud +- Multi-region for DR +- Edge + datacenter hybrid +- Maintain complete isolation across all environments + +### Edge Deployments + +Deploy at edge locations: +- Manufacturing facilities +- Remote research stations +- Mobile/tactical deployments +- Disconnected field operations + +## Deployment Architecture + +### Architecture Diagram + +![Air-gapped deployment architecture](../../.gitbook/assets/air-gapped-architecture.png) + +The diagram above illustrates a complete air-gapped ZenML Pro deployment with all components running within your organization's VPC. This architecture ensures zero external communication while providing full enterprise MLOps capabilities. + +### Architecture Components + +**Client SDK** (top center): +The ZenML Python SDK runs on developer laptops, CI/CD systems, or notebooks. It communicates with all layers to: +- Authenticate users via your Identity Provider +- Submit pipeline runs to workspaces +- Push Docker images to your Container Registry +- Access the Organization Platform Layer components + +**Organization Platform Layer** (left, pink): +Your existing ML infrastructure components that ZenML integrates with: +- **Container Registry**: Store pipeline Docker images (AWS ECR, Dockerhub, Google Artifact Registry, Azure Container Registry) +- **Artifact Store**: Store ML artifacts, models, and datasets (S3, GCS, Azure Blob Storage, ADLS) +- **Code Repository**: Version control for pipeline code (GitHub Enterprise, GitLab, Bitbucket) +- **Orchestrator**: Execute pipeline workloads (Vertex AI, Sagemaker, AzureML, Kubernetes) + +**Infrastructure Layer** (top, cyan): +Core infrastructure services: +- **Identity Provider**: LDAP, Active Directory, or OIDC provider for user authentication +- **Load Balancer**: Distributes traffic to ZenML services for high availability + +**ZenML Control Plane** (center, blue): +The management layer running in Kubernetes: +- **ZenML FE**: React-based Pro dashboard for pipeline visualization and model management +- **ZenML Control Plane**: Coordinates workspaces, handles authentication/RBAC, manages organization settings + +**ZenML Application Plane** (center, purple): +Individual workspace servers running in Kubernetes: +- **Multiple Workspaces**: Isolated environments for different teams (DS Team 1, DS Team 2, etc.) +- Each workspace has its own server instance, metadata database, and secrets store +- Workspaces are orchestrated by the Control Plane but run independently + +**ZenML Storage Plane** (bottom, pink): +Persistent storage for ZenML services: +- **Secret Store**: Vault or cloud secrets manager for storing credentials securely +- **Database**: PostgreSQL or MySQL for storing workspace metadata, pipeline runs, and control plane data + +### Data Flow + +All arrows in the diagram represent communication flows that occur entirely within your VPC: +1. Client SDK authenticates with Identity Provider +2. Client SDK connects to ZenML Control Plane for workspace access +3. Control Plane manages and coordinates workspaces +4. Workspaces orchestrate pipeline execution on your Orchestrator +5. Pipelines write artifacts to your Artifact Store +6. Workspaces store metadata in the Database +7. All components access secrets from the Secret Store + +**Key Security Feature**: The entire system operates without any external internet connectivity. All Docker images, dependencies, and updates are transferred to your environment through secure offline channels. + +### High Availability Configuration + +For mission-critical deployments: +- **Active-active** control plane for zero downtime +- **Database replication** for metadata stores +- **Load balancers** for workspace servers +- **Backup sites** for disaster recovery +- **Monitoring and alerting** for all components + +## Setup Process + +### 1. Pre-requisites + +Before deployment, ensure you have: + +#### Infrastructure Requirements +- Kubernetes cluster (recommended) or VM infrastructure +- PostgreSQL database(s) for metadata storage +- Object storage or NFS for artifacts +- Load balancer for HA configurations +- Identity provider (LDAP/AD/OIDC) + +#### Network Requirements +- Internal DNS resolution +- SSL/TLS certificates (internal CA) +- Network connectivity between components +- Firewall rules for inter-component communication + +#### Resource Requirements +```yaml +# Minimum requirements +Control Plane: + CPU: 4 cores + Memory: 16GB RAM + Storage: 100GB + +Per Workspace: + CPU: 2 cores + Memory: 8GB RAM + Storage: 50GB + metadata + +Database: + CPU: 4 cores + Memory: 16GB RAM + Storage: 500GB (scalable) +``` + +### 2. Obtain ZenML Pro License + +[Contact us](https://www.zenml.io/book-your-demo) to: +- Discuss your requirements +- Obtain air-gapped deployment license +- Receive deployment packages +- Schedule deployment support + +### 3. Transfer Software Packages + +ZenML provides all required components: + +```bash +# Provided as offline bundle +zenml-pro-airgap-bundle/ +├── docker-images/ +│ ├── zenml-server.tar +│ ├── zenml-pro-control-plane.tar +│ ├── zenml-dashboard.tar +│ └── dependencies/ +├── helm-charts/ +│ ├── zenml-pro-control-plane/ +│ └── zenml-workspace/ +├── documentation/ +├── sbom/ +└── security-reports/ +``` + +Transfer this bundle to your air-gapped environment using: +- Physical media (USB, portable drives) +- Approved file transfer mechanisms +- Your organization's software intake process + +### 4. Load Docker Images + +```bash +# Load images into your container registry +docker load < docker-images/zenml-server.tar +docker load < docker-images/zenml-pro-control-plane.tar +docker load < docker-images/zenml-dashboard.tar + +# Tag for your internal registry +docker tag zenml-server your-registry.internal/zenml-server:latest +docker push your-registry.internal/zenml-server:latest +``` + +### 5. Deploy Control Plane + +```bash +# Deploy using Helm +helm install zenml-pro-control-plane ./helm-charts/zenml-pro-control-plane \ + --set database.host=postgres.internal \ + --set database.name=zenml_pro \ + --set identityProvider.type=oidc \ + --set identityProvider.url=https://auth.internal \ + --set license.key= +``` + +### 6. Configure Identity Provider + +Integrate with your existing authentication: + +```yaml +# OIDC Configuration +identityProvider: + type: oidc + issuerUrl: https://auth.internal + clientId: zenml-pro + clientSecret: + +# LDAP Configuration +identityProvider: + type: ldap + server: ldap://ldap.internal + baseDN: dc=company,dc=com + +# SAML Configuration +identityProvider: + type: saml + metadataUrl: https://idp.internal/metadata +``` + +### 7. Deploy Workspaces + +```bash +# Deploy workspace for each team +helm install workspace-team-a ./helm-charts/zenml-workspace \ + --set controlPlane.url=https://control-plane.internal \ + --set controlPlane.token= \ + --set database.host=postgres.internal \ + --set image.repository=your-registry.internal/zenml-server +``` + +### 8. Deploy Dashboard + +```bash +# Deploy Pro Dashboard +helm install zenml-dashboard ./helm-charts/zenml-dashboard \ + --set controlPlane.url=https://control-plane.internal \ + --set ingress.host=zenml.internal +``` + +### 9. Verify Deployment + +```bash +# Check all components +kubectl get pods -n zenml-pro + +# Verify control plane health +curl https://control-plane.internal/health + +# Verify workspace connectivity +curl https://workspace-team-a.internal/health + +# Test authentication +zenml connect --url https://zenml.internal +``` + +## Configuration Management + +### Database Configuration + +Each component requires PostgreSQL: + +```yaml +# Control Plane Database +controlPlane: + database: + host: postgres-cp.internal + port: 5432 + name: zenml_pro_control + user: zenml_cp + password: + sslMode: require + +# Workspace Database (per workspace) +workspace: + database: + host: postgres-ws.internal + port: 5432 + name: zenml_workspace_team_a + user: zenml_ws + password: + sslMode: require +``` + +### Secret Management + +Configure your secrets backend: + +```yaml +# AWS Secrets Manager (in VPC) +secretsStore: + type: aws + region: us-east-1 + endpoint: https://secretsmanager.vpc.internal + +# HashiCorp Vault +secretsStore: + type: vault + url: https://vault.internal + namespace: zenml + +# Kubernetes Secrets +secretsStore: + type: kubernetes + namespace: zenml-secrets +``` + +### Artifact Storage + +Configure artifact storage: + +```yaml +# S3-compatible (MinIO, Ceph) +artifactStore: + type: s3 + endpoint: https://s3.internal + bucket: zenml-artifacts + +# NFS +artifactStore: + type: nfs + server: nfs.internal + path: /mnt/zenml-artifacts + +# Azure Blob (in private network) +artifactStore: + type: azure + account: storageaccount + container: artifacts + endpoint: https://storage.internal +``` + +## Operations & Maintenance + +### Updates & Upgrades + +ZenML provides new versions as offline bundles: + +1. **Receive new bundle**: Via your approved transfer method +2. **Review release notes**: Included in bundle documentation +3. **Test in staging**: Deploy to test environment first +4. **Backup current state**: Database and configuration backups +5. **Apply updates**: Using Helm upgrade commands +6. **Verify functionality**: Run health checks and tests +7. **Monitor**: Watch for any issues post-upgrade + +### Backup Strategy + +Implement comprehensive backups: + +```bash +# Database backups (automated) +pg_dump -h postgres.internal zenml_pro_control > control-plane-backup.sql +pg_dump -h postgres.internal zenml_workspace_team_a > workspace-a-backup.sql + +# Configuration backups +kubectl get configmap -n zenml-pro -o yaml > configmaps-backup.yaml +kubectl get secret -n zenml-pro -o yaml > secrets-backup.yaml + +# Artifact store backups +# Implement per your storage solution +``` + +### Monitoring + +Set up comprehensive monitoring: + +```yaml +# Prometheus metrics +metrics: + enabled: true + endpoint: /metrics + scrapeInterval: 30s + +# Health checks +healthChecks: + - name: control-plane + url: https://control-plane.internal/health + interval: 60s + - name: workspace-team-a + url: https://workspace-team-a.internal/health + interval: 60s + +# Log aggregation +logging: + backend: elasticsearch + endpoint: https://elastic.internal +``` + +### Disaster Recovery + +Plan for disaster scenarios: + +1. **Database replication**: PostgreSQL streaming replication to backup site +2. **Artifact replication**: Sync artifact stores to DR location +3. **Configuration backup**: Version-controlled infrastructure as code +4. **Runbook**: Document DR procedures +5. **Regular testing**: Test DR procedures quarterly + +## Security Hardening + +### Network Security + +- **Network segmentation**: Isolate ZenML components in dedicated network segments +- **Firewall rules**: Restrict traffic to only required ports +- **TLS everywhere**: Encrypt all communication +- **Certificate management**: Use internal CA for certificate issuance + +### Access Control + +- **Principle of least privilege**: Grant minimal required permissions +- **MFA required**: Enforce multi-factor authentication +- **Service accounts**: Use dedicated accounts for automation +- **Audit logging**: Log all authentication and authorization events + +### Container Security + +- **Image scanning**: Scan all container images before deployment +- **Runtime security**: Monitor container behavior +- **Pod security policies**: Enforce security standards +- **Resource limits**: Prevent resource exhaustion attacks + +## Support & Documentation + +### What ZenML Provides + +- **Deployment packages**: Complete offline installation bundles +- **Documentation**: Comprehensive setup and operation guides +- **SBOM**: Full software bill of materials for compliance +- **Vulnerability reports**: Security assessment documentation +- **Architecture consultation**: Pre-deployment planning support +- **Deployment assistance**: Guidance during initial setup +- **Update packages**: New versions as offline bundles + +### What You Manage + +- **Infrastructure**: Hardware, networking, storage +- **Day-to-day operations**: Monitoring, backups, user management +- **Security policies**: Firewall rules, access controls +- **Compliance**: Audit logs, security assessments +- **Updates**: Applying new versions using provided bundles + +### Support Model + +Contact [cloud@zenml.io](mailto:cloud@zenml.io) for: +- Pre-sales architecture consultation +- Deployment planning and sizing +- Security documentation requests +- Offline support packages +- Update and upgrade assistance + +## Licensing + +Air-gapped deployments use node-locked licenses: +- **License key**: Tied to your infrastructure +- **Offline activation**: No internet required +- **Flexible sizing**: License based on usage +- **Annual renewals**: Receive new license keys securely + +## Security Documentation + +Available on request for compliance and security reviews: + +- ✅ **Vulnerability Assessment Reports**: Full security analysis +- ✅ **Software Bill of Materials (SBOM)**: Complete dependency list +- ✅ **Architecture security review**: Threat model and mitigations +- ✅ **Compliance mappings**: NIST, CIS, GDPR, HIPAA guidance +- ✅ **Security hardening guide**: Best practices for your deployment + +## Comparison with Other Deployments + +| Feature | SaaS | Hybrid SaaS | Air-gapped | +|---------|------|-------------|------------| +| Internet Required | Yes (metadata) | Yes (control plane) | **No** | +| Setup Time | Minutes | Hours/Days | Days/Weeks | +| Maintenance | Zero | Partial | **Full control** | +| Data Location | Mixed | Your infra | **100% yours** | +| User Management | ZenML | ZenML | **Your IDP** | +| Update Control | Automatic | Automatic CP | **You decide** | +| Customization | Limited | Moderate | **Complete** | +| Best For | Fast start | Balance | **Max security** | + +[Compare all deployment options →](README.md#deployment-scenarios-comparison) + +## Migration Path + +### From ZenML OSS to Air-gapped Pro + +1. **Plan migration**: Assess current usage and requirements +2. **Deploy Pro**: Set up air-gapped environment +3. **Migrate metadata**: Export from OSS, import to Pro +4. **Migrate pipelines**: Update connection configurations +5. **Train users**: On new Pro features +6. **Cutover**: Switch production traffic + +### From Other Pro Deployments + +If moving from SaaS or Hybrid to Air-gapped: +1. Export all metadata and artifacts +2. Transfer to air-gapped environment +3. Deploy air-gapped infrastructure +4. Import data +5. Reconfigure pipelines +6. Validate functionality + +ZenML support team assists with migration planning and execution. + +## Detailed Architecture Diagram + +
+ +Detailed Air-gapped Deployment Architecture + +ZenML Pro self-hosted deployment details + +
+ +## Related Resources + +- [System Architecture Overview](../system-architectures.md#zenml-pro-self-hosted-architecture) +- [Self-hosted Deployment Guide](self-hosted.md) +- [SaaS Deployment](saas-deployment.md) +- [Hybrid SaaS Deployment](hybrid-deployment.md) +- [Security & Compliance](README.md#security--compliance) + +## Get Started + +Ready to deploy ZenML Pro in an air-gapped environment? + +[Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } + +Have questions? [Contact us](mailto:cloud@zenml.io) for detailed deployment planning. diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md new file mode 100644 index 00000000000..a165710637e --- /dev/null +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -0,0 +1,432 @@ +--- +description: Learn about ZenML Pro Hybrid SaaS deployment - balancing control with convenience for enterprise MLOps. +icon: building-shield +--- + +# Hybrid SaaS Deployment + +ZenML Pro Hybrid SaaS offers the perfect balance between control and convenience. While ZenML manages user authentication and RBAC through a cloud-hosted control plane, all your data, metadata, and workspaces run securely within your own infrastructure. + +{% hint style="info" %} +To learn more about Hybrid SaaS deployment, [book a call](https://www.zenml.io/book-your-demo). +{% endhint %} + +## Overview + +The Hybrid deployment model is designed for organizations that need to keep sensitive data and metadata within their infrastructure boundaries while still benefiting from centralized user management and simplified operations. + +![ZenML Pro Hybrid SaaS deployment architecture](../../.gitbook/assets/cloud_architecture_scenario_1_2.png) + +## Architecture + +### What Runs Where + +| Component | Location | Purpose | +|-----------|----------|---------| +| **Pro Control Plane** | ZenML Infrastructure | Manages authentication, RBAC, and global workspace coordination | +| **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | +| **Metadata Store** | Your Infrastructure | Stores all pipeline runs, model metadata, and tracking information | +| **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | +| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | + +### Data Flow + +1. **Code Execution**: You write code and run pipelines with your client SDK using Python +2. **Authentication & Token Acquisition**: + - Users authenticate via ZenML-hosted control plane (SSO) + - The ZenML client fetches short-lived tokens from your ZenML workspace for: + - Pushing Docker images to your container registry (ECR, GCR, etc.) + - Communicating with your artifact store + - Submitting workloads to your orchestrator + - *Note: Your local Python environment needs the client libraries for your stack components* +3. **Authorization**: RBAC policies enforced by control plane before token issuance +4. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator +5. **Orchestrator Execution**: In the orchestrator environment within your infrastructure: + - The Docker image is pulled from your container registry + - Within the pipeline/step entrypoint, the necessary code is pulled in + - A connection to your ZenML workspace is established + - The relevant pipeline/step code is executed +6. **Runtime Data Flow**: During execution: + - Pipeline and step run metadata is logged to your ZenML workspace and persisted in your infrastructure + - Logs are streamed to your log backend (within your infrastructure) + - Artifacts are written to your artifact store (within your infrastructure) + - Metadata pointing to these artifacts is persisted in your workspace +7. **Observability**: The ZenML Pro dashboard connects to your workspace and uses all persisted metadata to provide you with a complete observability plane + +{% hint style="success" %} +**Complete data sovereignty**: All metadata, secrets, and ML artifacts remain within your infrastructure. Only authentication and authorization data flows to ZenML control plane. +{% endhint %} + +## Key Benefits + +### 🔒 Enhanced Security & Compliance + +- **Data sovereignty**: All metadata and artifacts stay within your infrastructure +- **Secret isolation**: Credentials never leave your environment +- **VPN/Firewall compatible**: Workspaces operate behind your security perimeter +- **Audit trails**: Complete logging within your infrastructure +- **SOC 2 & ISO 27001 certified**: Enterprise-grade security controls + +### 🎯 Centralized Governance + +- **Unified user management**: Single control plane for all workspaces +- **Consistent RBAC**: Centrally managed permissions across teams +- **SSO integration**: Connect with your identity provider once +- **Global visibility**: Platform teams see across all workspaces +- **Standardized policies**: Enforce organizational standards + +### ⚖️ Balanced Control + +- **Infrastructure control**: Full control over workspace configuration and resources +- **Reduced operational overhead**: ZenML manages the control plane +- **Customization freedom**: Configure workspaces to specific team needs +- **Network isolation**: Workspaces can be fully isolated per team/department +- **Cost optimization**: Pay only for what you use in your infrastructure + +### 🚀 Production Ready + +- **High availability**: Built-in redundancy for critical components +- **Automatic updates**: Control plane maintained by ZenML +- **Professional support**: Direct access to ZenML experts +- **Monitoring included**: Health checks and alerting configured + +## Ideal Use Cases + +Hybrid SaaS is perfect for: + +- **Regulated industries** (finance, healthcare, government) with strict data residency requirements +- **Organizations with centralized MLOps teams** managing multiple business units +- **Companies with existing VPN/firewall policies** that restrict inbound connections +- **Enterprises requiring audit trails** of all data access within their infrastructure +- **Teams needing customization** while maintaining centralized user management +- **Organizations with compliance requirements** mandating on-premises metadata storage + +## Architecture Details + +### Network Security + +#### Outbound-Only Connections +Workspaces initiate outbound-only connections to the control plane: +- No inbound connections required to your infrastructure +- Compatible with strict firewall policies +- Secure WebSocket communication for real-time updates +- Optional VPN tunnel support + +#### Multi-Workspace Isolation +Each workspace can be: +- Deployed in separate VPCs/networks +- Isolated per team or department +- Configured with different security policies +- Managed independently by different teams + +### Authentication & Authorization Flow + +```mermaid +graph LR + A[User] -->|1. Login| B[Control Plane
ZenML Infrastructure] + B -->|2. Auth Token| A + A -->|3. Access Workspace| C[Workspace
Your Infrastructure] + C -->|4. Validate Token| B + B -->|5. Authorization| C + C -->|6. Execute| D[Your Resources] +``` + +1. User authenticates with ZenML control plane (SSO) +2. Control plane issues authentication token +3. User accesses workspace with token +4. Workspace validates token with control plane +5. Control plane confirms authorization (RBAC) +6. Workspace executes operations on your infrastructure + +### Data Residency + +| Data Type | Storage Location | Purpose | +|-----------|-----------------|---------| +| User credentials | Control Plane | Authentication only | +| RBAC policies | Control Plane | Authorization decisions | +| Pipeline metadata | Your Infrastructure | Run history, metrics, parameters | +| Model metadata | Your Infrastructure | Model versions, stages, annotations | +| Artifacts | Your Infrastructure | Datasets, models, visualizations | +| Secrets | Your Infrastructure | Cloud credentials, API keys | +| Logs | Your Infrastructure | Step outputs, debug information | + +## Deployment Architecture + +### Single Organization, Multiple Workspaces + +```mermaid +graph TB + subgraph clients["Client Machines (Developer Laptops/CI)"] + C1[Data Scientist] + C2[ML Engineer] + C3[CI/CD Pipeline] + end + + subgraph zenml["ZenML Infrastructure"] + CP[Control Plane
- Authentication SSO
- RBAC Management
- Workspace Registry] + end + + subgraph customer["Your Infrastructure"] + subgraph ws1["Workspace 1 - Team A"] + W1[ZenML Server
Metadata DB
Secrets Store] + R1[Your Resources
Orchestrator
Artifact Store] + end + + subgraph ws2["Workspace 2 - Team B"] + W2[ZenML Server
Metadata DB
Secrets Store] + R2[Your Resources
Orchestrator
Artifact Store] + end + + subgraph wsn["Workspace N - Platform"] + WN[ZenML Server
Metadata DB
Secrets Store] + RN[Your Resources
Orchestrator
Artifact Store] + end + end + + C1 -->|1. Authenticate| CP + C2 -->|1. Authenticate| CP + C3 -->|1. Authenticate| CP + + CP -->|2. RBAC Token| C1 + CP -->|2. RBAC Token| C2 + CP -->|2. RBAC Token| C3 + + C1 -->|3. Run Pipeline| W1 + C2 -->|3. Run Pipeline| W2 + C3 -->|3. Run Pipeline| WN + + W1 -.->|Validate Token| CP + W2 -.->|Validate Token| CP + WN -.->|Validate Token| CP + + W1 -->|Execute| R1 + W2 -->|Execute| R2 + WN -->|Execute| RN + + style zenml fill:#e1f5ff + style customer fill:#f0f0f0 + style clients fill:#fff4e6 +``` + +**Connection Flow:** +1. **Clients authenticate** with ZenML Control Plane (SSO) - hosted by ZenML +2. **Control Plane issues** RBAC-validated tokens to clients +3. **Clients connect** to their assigned workspace(s) in your infrastructure +4. **Workspaces validate** tokens with Control Plane (outbound-only connection) +5. **Pipelines execute** on your infrastructure resources + +### Multi-Region Support + +Deploy workspaces across different regions while maintaining centralized control: +- Workspaces in US, EU, APAC regions +- Data residency compliance per region +- Centralized user management +- Consistent RBAC across regions + +## Setup Process + +### 1. Initial Configuration + +[Book a demo](https://www.zenml.io/book-your-demo) to get started. The ZenML team will: +- Set up your organization in the control plane +- Configure SSO integration +- Establish secure communication channels + +### 2. Workspace Deployment + +Deploy ZenML workspaces in your infrastructure. Workspaces can be deployed on: + +**Supported Deployment Backends:** +- **Kubernetes** (Recommended) - EKS, GKE, AKS, or self-managed clusters +- **AWS ECS** - Elastic Container Service +- **Container orchestration alternatives** - Other Kubernetes distributions + +**Requirements:** +- **Database**: MySQL or PostgreSQL database in your infrastructure +- **Network**: Egress access to `cloud.zenml.io` (for Control Plane communication) +- **Resources**: Compute resources for the ZenML server container + +**Deployment Tools:** +- **Kubernetes**: We provide officially supported Helm charts +- **Non-Kubernetes environments**: We recommend using infrastructure-as-code tools like Terraform, Pulumi, or CloudFormation to manage server lifecycle + +See the [self-hosted deployment guide](self-hosted.md) for detailed step-by-step instructions, infrastructure requirements, and configuration examples. + +### 3. Configure Infrastructure Access + +Once your workspace is deployed, configure access to your cloud resources using ZenML's infrastructure abstractions: + +**Stack Components**: Individual infrastructure elements that your pipelines need to run - orchestrators (Kubernetes, Airflow, etc.), artifact stores (S3, GCS, Azure Blob), container registries, experiment trackers, model deployers, and more. Each component type has multiple "flavors" supporting different technologies. + +**Stacks**: A stack is a named collection of components that define where and how your pipelines run. By combining different components into stacks, you can easily switch between environments (development, staging, production) or infrastructure providers without changing your pipeline code. + +**Service Connectors**: Service connectors provide secure, reusable authentication to cloud providers and services. Instead of managing credentials manually in each component, connectors handle authentication centrally and can be shared across your team with appropriate access controls. + +Learn more: +- [Stack Components Documentation](https://docs.zenml.io/stacks) - Available components and how to configure them +- [Stacks Documentation](https://docs.zenml.io/user-guide/production-guide/understand-stacks) - Complete guide to configuring and managing stacks +- [Service Connectors Documentation](https://docs.zenml.io/how-to/auth-management/service-connectors-guide) - How to set up authentication to cloud providers + +### 4. Set Up Users & Teams + +Manage users through the control plane: +- Invite team members via email +- Assign roles and permissions +- Create teams for different departments +- Configure workspace access + + +## Organizational Structure + +### Recommended Hierarchy + +```mermaid +graph TB + subgraph cp["Control Plane (ZenML Infrastructure)"] + ORG[Organization] + PT[Platform Team
Org Admins] + end + + subgraph infra["Your Infrastructure"] + subgraph ws1["DS Team 1 Workspace"] + W1[ZenML Server
Metadata DB] + T1[Team Members] + S1[Stacks
managed by Platform Team] + end + + subgraph ws2["DS Team 2 Workspace"] + W2[ZenML Server
Metadata DB] + T2[Team Members] + S2[Stacks
managed by Platform Team] + end + end + + ORG --> PT + PT -.->|Configure & Manage| S1 + PT -.->|Configure & Manage| S2 + PT -.->|Cross-workspace
Admin Access| W1 + PT -.->|Cross-workspace
Admin Access| W2 + + T1 -->|Use Stacks
Run Pipelines
Create Projects| W1 + T2 -->|Use Stacks
Run Pipelines
Create Projects| W2 + + style cp fill:#e1f5ff + style infra fill:#f0f0f0 + style PT fill:#ffd700 + style T1 fill:#98fb98 + style T2 fill:#98fb98 +``` + +**Access Model:** +- **Platform Team**: Organization admins with cross-workspace access. They configure and manage stacks, service connectors, and infrastructure across all workspaces +- **DS/ML Teams**: Limited workspace-level access. Can use pre-configured stacks to run pipelines, create projects, and manage workspace-level secrets, but cannot modify stack configurations or global settings +- **Workspace Isolation**: Each workspace runs independently in your infrastructure with its own ZenML server and metadata store + +## Cost Considerations + +### Infrastructure Costs +You control costs by managing: +- Compute resources (scale up/down as needed) +- Storage (artifact stores, databases) +- Networking (data transfer, load balancers) +- Backups and disaster recovery + +### ZenML Costs +ZenML provides: +- Control plane management (included) +- Professional support (included) +- Regular updates and security patches +- Usage-based pricing per workspace + +## Security Documentation + +For software deployed on customer infrastructure, ZenML provides: + +- **Vulnerability Assessment Reports**: Comprehensive security analysis available on request +- **Software Bill of Materials (SBOM)**: Complete dependency inventory for compliance +- **Compliance documentation**: Support for your security audits and certifications +- **Architecture review**: Security team consultation for deployment planning + +Contact [cloud@zenml.io](mailto:cloud@zenml.io) to request security documentation. + +## Monitoring & Maintenance + +### Control Plane (ZenML Managed) +- ✅ Automatic updates +- ✅ Security patches +- ✅ Uptime monitoring +- ✅ Backup and recovery + +### Workspaces (Your Responsibility) +- Database maintenance and backups +- Workspace version updates (with ZenML guidance) +- Infrastructure scaling +- Resource monitoring + +### Support Included +- Professional support with SLA +- Architecture consultation +- Migration assistance +- Security advisory updates + +## Comparison with Other Deployments + +| Feature | SaaS | Hybrid SaaS | Air-gapped | +|---------|------|-------------|------------| +| Setup Time | Minutes | Hours to Days | Days to Weeks | +| Metadata Location | ZenML Infra | Your Infra | Your Infra | +| Secret Management | ZenML or Yours | Your Infra | Your Infra | +| User Management | ZenML Managed | ZenML Managed | Self-Managed | +| Maintenance | Zero | Workspace Only | Full Stack | +| Control | Minimal | Moderate | Complete | +| Best For | Fast start | Security + Convenience | Strictest compliance | + +[Compare all deployment options →](README.md#deployment-scenarios-comparison) + +## Migration Paths + +### From ZenML OSS +1. Deploy a ZenML Pro-compatible workspace in your own infrastructure (you can start from your existing ZenML OSS workspace deployment). + - **Update your Docker image**: Replace the OSS ZenML server image with the latest Pro Hybrid image provided by ZenML. + - **Set required environment variables**: Add or update environment variables according to the ZenML Pro documentation (for example: `ZENML_PRO_CONTROL_PLANE_URL`, `ZENML_PRO_CONTROL_PLANE_CLIENT_ID`, secrets, and SSO configuration as instructed by ZenML). + - **Restart your deployment** to apply these changes. +2. Migrate users and teams +5. Run `zenml login` to authenticate via [cloud.zenml.io](https://cloud.zenml.io) and connect your SDK clients to the new workspace + +### From SaaS to Hybrid + +If you're interested in migrating from the ZenML Pro SaaS deployment to a Hybrid SaaS setup, we're here to help guide you through every step of the process. Because migration paths can vary depending on your organization’s size, data residency requirements, and current ZenML setup, we recommend discussing your plans with a ZenML solutions architect. + +**Next steps:** + +- [Book a migration consultation →](https://www.zenml.io/book-your-demo) +- Or email us at [cloud@zenml.io](mailto:cloud@zenml.io) + +Your ZenML representative will provide you with a tailored migration checklist, technical documentation, and direct support to ensure a smooth transition with minimal downtime. + + +### Between Workspaces + +A workspace deep copy feature for migrating pipelines and artifacts between workspaces is coming soon. + +## Detailed Architecture Diagram + +![ZenML Pro Hybrid SaaS detailed architecture](../../.gitbook/assets/cloud_architecture_scenario_1_2.png) + +## Related Resources + +- [System Architecture Overview](../system-architectures.md#zenml-pro-hybrid-saas) +- [SaaS Deployment](saas-deployment.md) +- [Air-gapped Deployment](air-gapped-deployment.md) +- [Self-hosted Deployment Guide](self-hosted.md) +- [Workspaces](workspaces.md) +- [Organizations](organization.md) + +## Get Started + +Ready to deploy ZenML Pro in Hybrid mode? + +[Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } + +Have questions? [Contact us](mailto:cloud@zenml.io) or check out our [documentation](https://docs.zenml.io). diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md new file mode 100644 index 00000000000..a6ff2e03e0c --- /dev/null +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -0,0 +1,249 @@ +--- +description: Learn about ZenML Pro SaaS deployment - the fastest way to get started with production-ready MLOps. +icon: cloud +--- + +# SaaS Deployment + +ZenML Pro SaaS is the fastest and easiest way to get started with enterprise-grade MLOps. With zero infrastructure setup required, you can be running production pipelines within minutes while maintaining full control over your data and compute resources. + +{% hint style="info" %} +To try ZenML Pro SaaS or to learn more, [book a call](https://www.zenml.io/book-your-demo). +{% endhint %} + +## Overview + +In a SaaS deployment, ZenML manages all server infrastructure while your sensitive data and compute resources remain in your own cloud environment. This architecture provides the fastest time-to-value while maintaining data sovereignty for your ML workloads. + +![ZenML Pro SaaS deployment architecture](../../.gitbook/assets/cloud_architecture_scenario_1.png) + +## Architecture + +### What Runs Where + +| Component | Location | Purpose | +|-----------|----------|---------| +| **ZenML Server** | ZenML Infrastructure | Manages pipeline orchestration and metadata | +| **Pro Control Plane** | ZenML Infrastructure | Handles authentication, RBAC, and workspace management | +| **Metadata Store** | ZenML Infrastructure | Stores pipeline runs, model metadata, and tracking information | +| **Secrets Store** | ZenML Infrastructure (default) | Stores credentials for accessing your infrastructure | +| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | + +### Data Flow + +1. **Code Execution**: You write code and run pipelines with your client SDK using Python +2. **Token Acquisition**: The ZenML client fetches short-lived tokens from the ZenML server for: + - Pushing Docker images to your container registry (ECR, GCR, etc.) + - Communicating with your artifact store + - Submitting workloads to your orchestrator + - *Note: Your local Python environment needs the client libraries for your stack components* +3. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator +4. **Orchestrator Execution**: In the orchestrator environment: + - The Docker image is pulled from your container registry + - Within the pipeline/step entrypoint, the necessary code is pulled in + - A connection to the ZenML server is established + - The relevant pipeline/step code is executed +5. **Runtime Data Flow**: During execution: + - Pipeline and step run metadata is logged to the ZenML workspace and persisted there + - Logs are streamed to your customer log backend + - Artifacts are written to your artifact store + - Metadata pointing to these artifacts is persisted in the ZenML workspace +6. **Observability**: The ZenML dashboard connects to the ZenML server and uses all persisted metadata to provide you with a complete observability plane + +{% hint style="success" %} +**Your ML data never leaves your infrastructure.** Only metadata about runs and pipelines is stored on ZenML infrastructure. +{% endhint %} + +## Key Benefits + +### ⚡ Fastest Setup +- **Minutes to production**: No infrastructure provisioning required for ZenML services +- **Low maintenance**: Updates and patches handled automatically +- **Instant scaling**: Infrastructure scales with your needs + +### 🛡️ Security & Compliance +- **SOC 2 Type II certified**: Enterprise-grade security controls +- **ISO 27001 certified**: International security management standards +- **Data sovereignty**: Your ML data stays in your infrastructure +- **Encrypted communications**: All data in transit is encrypted +- **Custom secret stores**: Optionally use your own secret management solution + +### 🚀 Production Ready from Day 1 +- **High availability**: Built-in redundancy and failover +- **Automatic backups**: Metadata backed up continuously +- **Monitoring included**: Health checks and alerting configured +- **Professional support**: Direct access to ZenML experts + +### 👥 Collaboration Features +- **Multi-user support**: Full team collaboration capabilities +- **SSO integration**: Connect with your identity provider +- **Role-based access control**: Granular permissions management +- **Workspaces & projects**: Organize teams and resources + +## Ideal Use Cases + +ZenML Pro SaaS is perfect for: + +- **Startups and scale-ups** that need production MLOps quickly without infrastructure overhead +- **Teams without dedicated DevOps** that want managed infrastructure and support +- **Organizations with existing cloud infrastructure** comfortable with SaaS tools +- **Teams prioritizing velocity** over complete infrastructure control +- **POC and pilot projects** that need to demonstrate value quickly + +## Secret Management Options + +### Default: ZenML-Managed Secrets Store + +By default, ZenML Pro SaaS stores your cloud credentials securely in our managed secrets store. This provides: +- Zero configuration required +- Automatic encryption at rest and in transit +- Access controls via RBAC +- Audit logging of secret access + +### Alternative: Customer-Managed Secrets Store + +For organizations with strict security requirements, you can configure ZenML to use your own secrets management solution: +- AWS Secrets Manager +- Google Cloud Secret Manager +- Azure Key Vault +- HashiCorp Vault + +![SaaS with customer secret store](../../.gitbook/assets/cloud_architecture_saas_detailed_2.png) + +This keeps all credentials within your infrastructure while still benefiting from managed ZenML services. + +## Network Architecture + +### Outbound-Only Communication + +ZenML Pro SaaS uses outbound-only connections from your infrastructure to ZenML services: +- No inbound connections required to your infrastructure +- Compatible with firewall and VPN restrictions +- Secure WebSocket connections for real-time updates + +### Artifact Store Access + +The ZenML dashboard requires read access to your artifact store to display: +- Pipeline visualizations +- Model comparison views +- Artifact lineage graphs +- Step logs and outputs + +You control this access by configuring appropriate cloud IAM permissions. + +## Getting Started + +### 1. Sign Up + +[Book a demo](https://www.zenml.io/book-your-demo) to get started with ZenML Pro SaaS. + +### 2. Connect Your Cloud + +Configure access to your cloud infrastructure: +- Set up an artifact store (S3, GCS, Azure Blob, etc.) +- Configure compute resources (AWS, GCP, Azure, or Kubernetes) +- Provide necessary credentials via secrets + +### 3. Create Your First Pipeline + +```python +from zenml import pipeline, step + +@step +def load_data() -> dict: + return {"data": [1, 2, 3, 4, 5]} + +@step +def train_model(data: dict) -> str: + return f"Model trained on {len(data['data'])} samples" + +@pipeline +def training_pipeline(): + data = load_data() + train_model(data) + +if __name__ == "__main__": + training_pipeline() +``` + +### 4. Monitor in Dashboard + +View your pipeline runs, artifacts, and models in the ZenML Pro dashboard with full observability. + +## Security Documentation + +For software deployed on customer infrastructure, ZenML provides: + +- **Vulnerability Assessment Reports**: Comprehensive security analysis available on request +- **Software Bill of Materials (SBOM)**: Complete dependency inventory for compliance +- **Compliance documentation**: Support for your security audits and certifications + +Contact [cloud@zenml.io](mailto:cloud@zenml.io) to request security documentation. + +## Pricing & Support + +ZenML Pro SaaS includes: +- Managed infrastructure and updates +- Professional support with SLA +- Regular security patches and updates +- Access to pro-exclusive features +- Usage-based pricing model + +[Contact us](https://www.zenml.io/book-your-demo) for pricing details and custom plans. + +## Comparison with Other Deployments + +| Feature | SaaS | Hybrid SaaS | Air-gapped | +|---------|------|-------------|------------| +| Setup Time | ⚡ Minutes | Hours | Days | +| Maintenance | Zero | Workspace only | Full stack | +| Infrastructure Control | Minimal | Moderate | Complete | +| Data Sovereignty | Metadata on ZenML | Full | Full | +| Best For | Fast time-to-value | Security requirements | Strictest compliance | + +[Compare all deployment options →](README.md#deployment-scenarios-comparison) + +## Migration Path + +Already running ZenML OSS? Migrating to SaaS is straightforward: + +1. **Export your data**: Use ZenML's migration tools +2. **Set up SaaS workspace**: Configure your cloud connections +3. **Import metadata**: Transfer existing pipeline history +4. **Update pipelines**: Point to your new ZenML server + +Need help with migration? Our support team can assist. + +## Detailed Architecture Diagrams + +
+ +Full SaaS Architecture with ZenML Secret Store + +ZenML Pro Full SaaS deployment with ZenML secret store + +
+ +
+ +SaaS Architecture with Customer Secret Store + +ZenML Pro Full SaaS deployment with customer secret store + +
+ +## Related Resources + +- [System Architecture Overview](../system-architectures.md#zenml-pro-saas-architecture) +- [Hybrid SaaS Deployment](hybrid-deployment.md) +- [Air-gapped Deployment](air-gapped-deployment.md) +- [Security & Compliance](README.md#security--compliance) + +## Get Started + +Ready to get started with ZenML Pro SaaS? + +[Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } + +Have questions? [Contact us](mailto:cloud@zenml.io) or check out our [documentation](https://docs.zenml.io). diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index 79f4ff07e21..86e45ae0afb 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -4,7 +4,10 @@ ## Deployments -* [Self-hosted deployment](self-hosted.md) +* [SaaS Deployment](saas-deployment.md) +* [Hybrid SaaS Deployment](hybrid-deployment.md) +* [Air-gapped Deployment](air-gapped-deployment.md) +* [Self-hosted deployment guide](self-hosted.md) ## Core Concepts From 2946cc17889fd4fbeb949f382112f04a288be540 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 28 Nov 2025 11:40:39 +0100 Subject: [PATCH 02/28] Fixed formatting --- docs/book/getting-started/zenml-pro/air-gapped-deployment.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md index ac7d0f4bfe9..76d98595307 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md @@ -62,7 +62,6 @@ flowchart TB note[/"⚠️ No External Communication Required"/] infra --- note ``` -``` {% hint style="success" %} **Complete data sovereignty**: Zero data leaves your environment. All components, metadata, and ML artifacts remain within your infrastructure boundaries. From 23a0759e700f81fcb2d4a9eb4453f4d94eb13c67 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 28 Nov 2025 12:20:59 +0100 Subject: [PATCH 03/28] Pruned away hallucinations --- .../zenml-pro/air-gapped-deployment.md | 287 ++---------------- 1 file changed, 24 insertions(+), 263 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md index 76d98595307..b7b6764b45e 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md @@ -242,9 +242,7 @@ For mission-critical deployments: - **Backup sites** for disaster recovery - **Monitoring and alerting** for all components -## Setup Process - -### 1. Pre-requisites +## Pre-requisites Before deployment, ensure you have: @@ -280,256 +278,20 @@ Database: Storage: 500GB (scalable) ``` -### 2. Obtain ZenML Pro License - -[Contact us](https://www.zenml.io/book-your-demo) to: -- Discuss your requirements -- Obtain air-gapped deployment license -- Receive deployment packages -- Schedule deployment support - -### 3. Transfer Software Packages - -ZenML provides all required components: - -```bash -# Provided as offline bundle -zenml-pro-airgap-bundle/ -├── docker-images/ -│ ├── zenml-server.tar -│ ├── zenml-pro-control-plane.tar -│ ├── zenml-dashboard.tar -│ └── dependencies/ -├── helm-charts/ -│ ├── zenml-pro-control-plane/ -│ └── zenml-workspace/ -├── documentation/ -├── sbom/ -└── security-reports/ -``` - -Transfer this bundle to your air-gapped environment using: -- Physical media (USB, portable drives) -- Approved file transfer mechanisms -- Your organization's software intake process - -### 4. Load Docker Images - -```bash -# Load images into your container registry -docker load < docker-images/zenml-server.tar -docker load < docker-images/zenml-pro-control-plane.tar -docker load < docker-images/zenml-dashboard.tar - -# Tag for your internal registry -docker tag zenml-server your-registry.internal/zenml-server:latest -docker push your-registry.internal/zenml-server:latest -``` - -### 5. Deploy Control Plane - -```bash -# Deploy using Helm -helm install zenml-pro-control-plane ./helm-charts/zenml-pro-control-plane \ - --set database.host=postgres.internal \ - --set database.name=zenml_pro \ - --set identityProvider.type=oidc \ - --set identityProvider.url=https://auth.internal \ - --set license.key= -``` - -### 6. Configure Identity Provider - -Integrate with your existing authentication: - -```yaml -# OIDC Configuration -identityProvider: - type: oidc - issuerUrl: https://auth.internal - clientId: zenml-pro - clientSecret: - -# LDAP Configuration -identityProvider: - type: ldap - server: ldap://ldap.internal - baseDN: dc=company,dc=com - -# SAML Configuration -identityProvider: - type: saml - metadataUrl: https://idp.internal/metadata -``` - -### 7. Deploy Workspaces - -```bash -# Deploy workspace for each team -helm install workspace-team-a ./helm-charts/zenml-workspace \ - --set controlPlane.url=https://control-plane.internal \ - --set controlPlane.token= \ - --set database.host=postgres.internal \ - --set image.repository=your-registry.internal/zenml-server -``` - -### 8. Deploy Dashboard - -```bash -# Deploy Pro Dashboard -helm install zenml-dashboard ./helm-charts/zenml-dashboard \ - --set controlPlane.url=https://control-plane.internal \ - --set ingress.host=zenml.internal -``` - -### 9. Verify Deployment - -```bash -# Check all components -kubectl get pods -n zenml-pro - -# Verify control plane health -curl https://control-plane.internal/health - -# Verify workspace connectivity -curl https://workspace-team-a.internal/health - -# Test authentication -zenml connect --url https://zenml.internal -``` - -## Configuration Management - -### Database Configuration - -Each component requires PostgreSQL: - -```yaml -# Control Plane Database -controlPlane: - database: - host: postgres-cp.internal - port: 5432 - name: zenml_pro_control - user: zenml_cp - password: - sslMode: require - -# Workspace Database (per workspace) -workspace: - database: - host: postgres-ws.internal - port: 5432 - name: zenml_workspace_team_a - user: zenml_ws - password: - sslMode: require -``` - -### Secret Management - -Configure your secrets backend: - -```yaml -# AWS Secrets Manager (in VPC) -secretsStore: - type: aws - region: us-east-1 - endpoint: https://secretsmanager.vpc.internal - -# HashiCorp Vault -secretsStore: - type: vault - url: https://vault.internal - namespace: zenml - -# Kubernetes Secrets -secretsStore: - type: kubernetes - namespace: zenml-secrets -``` - -### Artifact Storage - -Configure artifact storage: - -```yaml -# S3-compatible (MinIO, Ceph) -artifactStore: - type: s3 - endpoint: https://s3.internal - bucket: zenml-artifacts - -# NFS -artifactStore: - type: nfs - server: nfs.internal - path: /mnt/zenml-artifacts - -# Azure Blob (in private network) -artifactStore: - type: azure - account: storageaccount - container: artifacts - endpoint: https://storage.internal -``` - ## Operations & Maintenance ### Updates & Upgrades ZenML provides new versions as offline bundles: -1. **Receive new bundle**: Via your approved transfer method -2. **Review release notes**: Included in bundle documentation +1. **Receive new bundle**: Typically by pulling our Docker images via your approved transfer method +2. **Review release notes and compatibility notes**: Carefully review the release notes and any migration instructions included in the offline bundle to understand all changes, requirements, and potential impacts. Assess required infrastructure or configuration updates and note any changes in CI/CD actions or deployment processes before proceeding. 3. **Test in staging**: Deploy to test environment first 4. **Backup current state**: Database and configuration backups -5. **Apply updates**: Using Helm upgrade commands +5. **Apply updates**: Using Helm upgrade commands, or update your deployment using Terraform or other Infrastructure-as-Code (IaC) tools. 6. **Verify functionality**: Run health checks and tests 7. **Monitor**: Watch for any issues post-upgrade -### Backup Strategy - -Implement comprehensive backups: - -```bash -# Database backups (automated) -pg_dump -h postgres.internal zenml_pro_control > control-plane-backup.sql -pg_dump -h postgres.internal zenml_workspace_team_a > workspace-a-backup.sql - -# Configuration backups -kubectl get configmap -n zenml-pro -o yaml > configmaps-backup.yaml -kubectl get secret -n zenml-pro -o yaml > secrets-backup.yaml - -# Artifact store backups -# Implement per your storage solution -``` - -### Monitoring - -Set up comprehensive monitoring: - -```yaml -# Prometheus metrics -metrics: - enabled: true - endpoint: /metrics - scrapeInterval: 30s - -# Health checks -healthChecks: - - name: control-plane - url: https://control-plane.internal/health - interval: 60s - - name: workspace-team-a - url: https://workspace-team-a.internal/health - interval: 60s - -# Log aggregation -logging: - backend: elasticsearch - endpoint: https://elastic.internal -``` ### Disaster Recovery @@ -550,11 +312,11 @@ Plan for disaster scenarios: - **TLS everywhere**: Encrypt all communication - **Certificate management**: Use internal CA for certificate issuance + ### Access Control - **Principle of least privilege**: Grant minimal required permissions -- **MFA required**: Enforce multi-factor authentication -- **Service accounts**: Use dedicated accounts for automation +- **Service accounts**: Use dedicated service accounts for automation - **Audit logging**: Log all authentication and authorization events ### Container Security @@ -595,11 +357,7 @@ Contact [cloud@zenml.io](mailto:cloud@zenml.io) for: ## Licensing -Air-gapped deployments use node-locked licenses: -- **License key**: Tied to your infrastructure -- **Offline activation**: No internet required -- **Flexible sizing**: License based on usage -- **Annual renewals**: Receive new license keys securely +Air-gapped deployments are provided under commercial software license agreements, with license fees and terms defined on a per-customer basis. Each contract includes detailed license terms and conditions appropriate to the deployment. ## Security Documentation @@ -630,24 +388,27 @@ Available on request for compliance and security reviews: ### From ZenML OSS to Air-gapped Pro -1. **Plan migration**: Assess current usage and requirements -2. **Deploy Pro**: Set up air-gapped environment -3. **Migrate metadata**: Export from OSS, import to Pro -4. **Migrate pipelines**: Update connection configurations -5. **Train users**: On new Pro features -6. **Cutover**: Switch production traffic +If you're interested in migrating from ZenML OSS to an air-gapped Pro deployment, we're here to help guide you through every step of the process. Migration paths are highly dependent on your specific customer environment, infrastructure setup, and current ZenML OSS deployment configuration. + +It's possible to migrate existing stacks or even existing metadata from existing OSS deployments. We can figure out how and what to migrate together in a call. + +**Next steps:** + +- [Book a migration consultation →](https://www.zenml.io/book-your-demo) +- Or email us at [cloud@zenml.io](mailto:cloud@zenml.io) + +Your ZenML representative will work with you to assess your current setup, understand your air-gapped requirements, and provide a tailored migration plan that fits your environment. ### From Other Pro Deployments -If moving from SaaS or Hybrid to Air-gapped: -1. Export all metadata and artifacts -2. Transfer to air-gapped environment -3. Deploy air-gapped infrastructure -4. Import data -5. Reconfigure pipelines -6. Validate functionality +If you're moving from SaaS or Hybrid to Air-gapped, migration paths can vary significantly depending on your organization's size, data residency requirements, and current ZenML setup. We recommend discussing your plans with a ZenML solutions architect. + +**Next steps:** + +- [Book a migration consultation →](https://www.zenml.io/book-your-demo) +- Or email us at [cloud@zenml.io](mailto:cloud@zenml.io) -ZenML support team assists with migration planning and execution. +Your ZenML representative will provide you with a tailored migration checklist, technical documentation, and direct support to ensure a smooth transition with minimal downtime. ## Detailed Architecture Diagram From c7e7517d9fd0fb1f0919064b761abf2133b9b79f Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Mon, 1 Dec 2025 23:44:17 +0100 Subject: [PATCH 04/28] Some more in depth docs --- docs/book/getting-started/zenml-pro/README.md | 52 +- .../zenml-pro/air-gapped-deployment-helm.md | 816 ++++++++++++++++++ .../zenml-pro/deployments-overview.md | 136 +++ .../zenml-pro/hybrid-deployment-ecs.md | 514 +++++++++++ .../zenml-pro/hybrid-deployment-helm.md | 659 ++++++++++++++ docs/book/getting-started/zenml-pro/toc.md | 5 +- 6 files changed, 2132 insertions(+), 50 deletions(-) create mode 100644 docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md create mode 100644 docs/book/getting-started/zenml-pro/deployments-overview.md create mode 100644 docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md create mode 100644 docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index 75d6fa9d28a..df8e3b7ff64 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -44,57 +44,11 @@ To try ZenML Pro or to learn more [book a call](https://www.zenml.io/book-your-d | **Reporting** | Basic run tracking | Advanced usage reports and analytics | | **Core Features** | ✅ Run pipelines on stacks
✅ Full observability over runs
✅ Artifact tracking
✅ Model versioning | ✅ All OSS features
✅ [Run Snapshots](https://docs.zenml.io/concepts/snapshots)
✅ Enhanced filtering and search | -## Deployment Scenarios Comparison +## Deployment Scenarios -| Deployment Aspect | SaaS | Hybrid SaaS | Air-gapped | -|-------------------|------|-------------|------------| -| **ZenML Server** | ZenML infrastructure | Customer infrastructure | Customer infrastructure | -| **Control Plane** | ZenML infrastructure | ZenML infrastructure | Customer infrastructure | -| **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Customer infrastructure | Customer infrastructure | -| **Compute & Data** | Customer infrastructure | Customer infrastructure | Customer infrastructure | -| **Setup Time** | ⚡ Fastest (minutes) | Moderate | Longer (requires full deployment) | -| **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | -| **Production Ready** | ✅ Day 1 | ✅ Day 1 | ✅ Day 1 | -| **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and air-gapped environments | +ZenML Pro offers three flexible deployment options to match your organization's needs: **SaaS**, **Hybrid**, and **Air-gapped**. -### SaaS Deployment - -The ZenML-managed SaaS deployment provides the fastest path to production with zero infrastructure overhead. All ZenML server components run on ZenML infrastructure, while your compute resources and data remain in your environment. - -**What runs where:** -- ZenML Server: ZenML infrastructure -- Metadata and RBAC: ZenML infrastructure -- Compute and Data: Customer infrastructure - -**Ideal for:** Teams that want to get started immediately without managing infrastructure, while keeping sensitive ML data in their own environment. - -[Learn more about SaaS deployment →](saas-deployment.md) - -### Hybrid SaaS Deployment - -The Hybrid deployment balances control with convenience. The ZenML control plane (handling user management, authentication, and RBAC) runs on ZenML infrastructure, while the ZenML server and all metadata run in your environment. - -**What runs where:** -- ZenML Management Plane: ZenML infrastructure -- ZenML Server: Customer infrastructure -- RBAC: ZenML infrastructure -- Run metadata: Customer infrastructure -- Compute and Data: Customer infrastructure - -**Ideal for:** Organizations with security or compliance requirements that mandate keeping metadata and credentials within their infrastructure, while benefiting from centralized user management. - -[Learn more about Hybrid deployment →](hybrid-deployment.md) - -### Air-gapped Deployment - -The fully self-hosted, air-gapped deployment gives you complete control and data sovereignty. All ZenML components run entirely within your infrastructure with no external dependencies. - -**What runs where:** -- All components: Customer infrastructure (completely isolated) - -**Ideal for:** Organizations with the strictest security requirements, regulated industries, or environments that must operate without external network access. - -[Learn more about Air-gapped deployment →](air-gapped-deployment.md) +[Explore all deployment scenarios →](deployments-overview.md) ## Security & Compliance diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md new file mode 100644 index 00000000000..e91a94eb107 --- /dev/null +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md @@ -0,0 +1,816 @@ +--- +description: Deploy ZenML Pro Air-gapped on Kubernetes with Helm - complete self-hosted setup with no external dependencies. +layout: + title: + visible: true + description: + visible: true + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Air-gapped Deployment on Kubernetes with Helm + +This guide provides step-by-step instructions for deploying ZenML Pro in a fully air-gapped setup on Kubernetes using Helm charts. In an air-gapped deployment, all components run within your infrastructure with zero external dependencies. + +## Architecture Overview + +All components run entirely within your Kubernetes cluster and infrastructure: + +``` +┌──────────────────────────────────────────────────┐ +│ Your Air-gapped Infrastructure │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Kubernetes Cluster │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ ZenML Pro Control Plane │ │ │ +│ │ │ - Authentication & Authorization │ │ │ +│ │ │ - RBAC Management │ │ │ +│ │ │ - Dashboard │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ ZenML Workspace Servers │ │ │ +│ │ │ (one or more) │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ Load Balancer / Ingress │ │ │ +│ │ │ (HTTPS with internal CA) │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ PostgreSQL Database │ │ +│ │ (for metadata storage) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Internal Docker Registry │ │ +│ │ (for container images) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Object Storage / NFS │ │ +│ │ (for artifacts & backups) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +└──────────────────────────────────────────────────┘ + 🔒 Completely Isolated - No External Access +``` + +## Prerequisites + +Before starting, you need: + +**Infrastructure:** +- Kubernetes cluster (1.24+) within your air-gapped network +- PostgreSQL database (12+) for metadata storage +- Internal Docker registry (Harbor, Quay, Artifactory, etc.) +- Load balancer or Ingress controller for HTTPS +- NFS or object storage for artifacts (optional) + +**Network:** +- Internal DNS resolution +- TLS certificates signed by your internal CA +- Network connectivity between cluster components + +**Tools (on a machine with internet access for initial setup):** +- Docker +- Helm (3.0+) +- Access to pull ZenML Pro images from private registries (credentials from ZenML) + +## Step 1: Prepare Offline Artifacts + +This step is performed on a machine with internet access, then transferred to your air-gapped environment. + +### 1.1 Pull Container Images + +On a machine with internet access and access to the ZenML Pro container registries: + +1. Authenticate to the ZenML Pro container registries (AWS ECR or GCP Artifact Registry) + - Use credentials provided by ZenML Support + - Follow registry-specific authentication procedures + +2. Pull all required images: + - **Pro Control Plane images:** + - `zenml-pro-api:` + - `zenml-pro-dashboard:` + - **Workspace Server image:** + - `zenml-pro-server:` + - **Client image (for pipelines):** + - `zenmldocker/zenml:` + +3. Tag images with your internal registry: + ``` + internal-registry.mycompany.com/zenml/zenml-pro-api:version + internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + internal-registry.mycompany.com/zenml/zenml-pro-server:version + internal-registry.mycompany.com/zenml/zenml:version + ``` + +4. Save images to tar files for transfer: + ``` + docker save > zenml-image.tar + ``` + +### 1.2 Download Helm Charts + +On the same machine with internet access: + +1. Pull the Helm charts: + - ZenML Pro Control Plane: `oci://public.ecr.aws/zenml/zenml-pro` + - ZenML Workspace Server: `oci://public.ecr.aws/zenml/zenml` + +2. Save charts as `.tgz` files for transfer + +### 1.3 Create Offline Bundle + +Create a bundle containing all artifacts: + +``` +zenml-air-gapped-bundle/ +├── images/ +│ ├── zenml-pro-api.tar +│ ├── zenml-pro-dashboard.tar +│ ├── zenml-pro-server.tar +│ └── zenml-client.tar +├── charts/ +│ ├── zenml-pro-.tgz +│ └── zenml-.tgz +└── manifest.txt +``` + +The manifest should document: +- All image names and versions +- Helm chart versions +- Date of bundle creation +- Required internal registry URLs + +## Step 2: Transfer to Air-gapped Environment + +Transfer the bundle to your air-gapped environment using approved methods: +- Physical media (USB drive, external drive) +- Approved secure file transfer system +- Air-gap transfer appliances +- Any method compliant with your security policies + +## Step 3: Load Images into Internal Registry + +In your air-gapped environment, load the images: + +1. Extract all tar files: + ``` + cd images/ + for file in *.tar; do docker load < "$file"; done + ``` + +2. Tag images for your internal registry: + ``` + docker tag zenml-pro-api:version internal-registry.mycompany.com/zenml/zenml-pro-api:version + docker tag zenml-pro-dashboard:version internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + docker tag zenml-pro-server:version internal-registry.mycompany.com/zenml/zenml-pro-server:version + docker tag zenml:version internal-registry.mycompany.com/zenml/zenml:version + ``` + +3. Push images to your internal registry: + ``` + docker push internal-registry.mycompany.com/zenml/zenml-pro-api:version + docker push internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + docker push internal-registry.mycompany.com/zenml/zenml-pro-server:version + docker push internal-registry.mycompany.com/zenml/zenml:version + ``` + +## Step 4: Create Kubernetes Namespace and Secrets + +```bash +# Create namespace for ZenML Pro +kubectl create namespace zenml-pro + +# Create secret for internal registry credentials (if needed) +kubectl -n zenml-pro create secret docker-registry internal-registry-secret \ + --docker-server=internal-registry.mycompany.com \ + --docker-username= \ + --docker-password= + +# Create secret for TLS certificate +kubectl -n zenml-pro create secret tls zenml-tls \ + --cert=/path/to/tls.crt \ + --key=/path/to/tls.key +``` + +## Step 5: Set Up PostgreSQL Database + +Create a PostgreSQL database instance (within your air-gapped network): + +**Configuration:** +- **Accessibility**: Reachable from your Kubernetes cluster +- **Databases**: At least 2 (one for control plane, one for workspace) +- **Users**: Create dedicated database users with permissions +- **Backups**: Configure automated backups to local storage +- **Monitoring**: Enable local log aggregation + +**Connection strings needed for later:** +- Control Plane DB: `postgresql://user:password@db-host:5432/zenml_pro` +- Workspace DB: `postgresql://user:password@db-host:5432/zenml_workspace` + +## Step 6: Configure Helm Values for Control Plane + +Create a file `zenml-pro-values.yaml`: + +```yaml +# ZenML Pro Control Plane Values + +zenml: + # Image configuration - use your internal registry + image: + api: + repository: internal-registry.mycompany.com/zenml/zenml-pro-api + tag: "0.10.24" + dashboard: + repository: internal-registry.mycompany.com/zenml/zenml-pro-dashboard + tag: "0.10.24" + + # Server URL - use your internal domain + serverURL: https://zenml-pro.internal.mycompany.com + + # Database for Control Plane + database: + external: + type: postgresql + host: postgres.internal.mycompany.com + port: 5432 + username: zenml_pro_user + password: + database: zenml_pro + + # Ingress configuration + ingress: + enabled: true + className: nginx # or your ingress controller + host: zenml-pro.internal.mycompany.com + tls: + enabled: true + secretName: zenml-tls + + # Authentication (no external IdP needed for air-gap) + auth: + password: + + # Resource constraints + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 2000m + memory: 4Gi + +# Image pull secrets for internal registry +imagePullSecrets: + - name: internal-registry-secret + +# Pod security context +podSecurityContext: + fsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 +``` + +## Step 7: Deploy ZenML Pro Control Plane + +Using the local Helm chart: + +```bash +helm install zenml-pro ./zenml-pro-0.10.24.tgz \ + --namespace zenml-pro \ + --values zenml-pro-values.yaml +``` + +Verify deployment: + +```bash +kubectl -n zenml-pro get pods +kubectl -n zenml-pro get svc +kubectl -n zenml-pro get ingress +``` + +Wait for all pods to be running and healthy. + +## Step 8: Configure Helm Values for Workspace Server + +Create a file `zenml-workspace-values.yaml`: + +```yaml +zenml: + # Image configuration - use your internal registry + image: + repository: internal-registry.mycompany.com/zenml/zenml-pro-server + tag: "0.73.0" + + # Server URL + serverURL: https://zenml-workspace.internal.mycompany.com + + # Database for Workspace + database: + external: + type: postgresql + host: postgres.internal.mycompany.com + port: 5432 + username: zenml_workspace_user + password: + database: zenml_workspace + + # Pro configuration (for air-gapped, disable external control plane) + pro: + enabled: false # Disable external control plane connection + + # Ingress configuration + ingress: + enabled: true + className: nginx + host: zenml-workspace.internal.mycompany.com + tls: + enabled: true + secretName: zenml-tls + + # Resource constraints + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 1000m + memory: 2Gi + +# Image pull secrets +imagePullSecrets: + - name: internal-registry-secret + +# Pod security context +podSecurityContext: + fsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 +``` + +## Step 9: Deploy ZenML Workspace Server + +```bash +# Create namespace +kubectl create namespace zenml-workspace + +# Deploy workspace +helm install zenml ./zenml-0.73.0.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml +``` + +Verify deployment: + +```bash +kubectl -n zenml-workspace get pods +kubectl -n zenml-workspace get svc +kubectl -n zenml-workspace get ingress +``` + +## Step 10: Configure Internal DNS + +Update your internal DNS to resolve: +- `zenml-pro.internal.mycompany.com` → Your ALB/Ingress IP +- `zenml-workspace.internal.mycompany.com` → Your ALB/Ingress IP + +## Step 11: Install Internal CA Certificate + +On all client machines that will access ZenML: + +1. Obtain your internal CA certificate +2. Install it in the system certificate store: + - **Linux**: Copy to `/usr/local/share/ca-certificates/` and run `update-ca-certificates` + - **macOS**: Use `sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ` + - **Windows**: Use `certutil -addstore "Root" cert.pem` + +3. For Python/ZenML client: + ```bash + export REQUESTS_CA_BUNDLE=/path/to/ca-bundle.crt + ``` + +4. For containerized pipelines, include the CA certificate in your custom ZenML image + +## Step 12: Verify the Deployment + +1. **Check Control Plane Health** + ```bash + curl -k https://zenml-pro.internal.mycompany.com/health + ``` + +2. **Check Workspace Health** + ```bash + curl -k https://zenml-workspace.internal.mycompany.com/health + ``` + +3. **Access the Dashboard** + - Navigate to `https://zenml-pro.internal.mycompany.com` in your browser + - Log in with admin credentials + +4. **Check Logs** + ```bash + kubectl -n zenml-pro logs deployment/zenml-pro + kubectl -n zenml-workspace logs deployment/zenml + ``` + +## Step 13: (Optional) Enable Snapshot Support / Workload Manager + +Pipeline snapshots (running pipelines from the dashboard) require additional configuration: + +### 1. Create Kubernetes Resources for Workload Manager + +Create a dedicated namespace and service account for runner jobs: + +```bash +# Create namespace +kubectl create namespace zenml-workload-manager + +# Create service account +kubectl -n zenml-workload-manager create serviceaccount zenml-runner + +# Create role with permissions to create jobs and access registry +# (Specific permissions depend on your implementation choice below) +``` + +### 2. Choose Implementation + +**Option A: Kubernetes Implementation (Simplest)** + +Use the built-in Kubernetes implementation for running snapshots: + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner +``` + +**Option B: GCP Implementation (if using GCP)** + +For GCP-specific features: + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.gcp_kubernetes_workload_manager.GCPKubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: /zenml +``` + +### 3. Configure Runner Image + +Choose how runner images are managed: + +**Option A: Use Pre-built Runner Image (Simpler for Air-gap)** + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "false" + ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: internal-registry.mycompany.com/zenml/zenml:0.73.0 +``` + +Pre-build your runner image and push to your internal registry. + +**Option B: Have ZenML Build Runner Images** + +Requires access to internal Docker registry with push permissions: + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: internal-registry.mycompany.com/zenml +``` + +### 4. Configure Pod Resources and Policies + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "100m", "memory": "400Mi"}, "limits": {"memory": "700Mi"}}' + ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 # 1 day + ZENML_KUBERNETES_WORKLOAD_MANAGER_NODE_SELECTOR: '{"node-pool": "compute"}' + ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 2 +``` + +### 5. Update Workspace Deployment + +Update your workspace server Helm values with workload manager configuration and redeploy: + +```bash +helm upgrade zenml ./zenml-.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml +``` + +## Step 14: Create Users and Organizations + +In the ZenML Pro dashboard: + +1. Create an organization +2. Create users for your team +3. Assign roles and permissions +4. Configure teams + +## Network Requirements Summary + +| Traffic | Source | Destination | Port | Direction | +|---------|--------|-------------|------|-----------| +| Web Access | Client Machines | Ingress Controller | 443 | Inbound | +| API Access | ZenML Client | Workspace Server | 443 | Inbound | +| Database | Kubernetes Pods | PostgreSQL | 5432 | Outbound | +| Registry | Kubernetes | Internal Registry | 443 | Outbound | +| Inter-service | Kubernetes Internal | Kubernetes Services | 443 | Internal | + +## Scaling & High Availability + +### Multiple Control Plane Replicas + +```yaml +zenml: + replicaCount: 3 +``` + +### Multiple Workspace Replicas + +```yaml +zenml: + replicaCount: 2 +``` + +### Pod Disruption Budgets + +Protect against accidental disruptions: + +```yaml +podDisruptionBudget: + enabled: true + minAvailable: 1 +``` + +### Database Replication + +For HA, configure PostgreSQL streaming replication: +1. Set up a standby database +2. Configure continuous archiving +3. Test failover procedures + +## Backup & Recovery + +### Automated Backups + +Configure automated PostgreSQL backups: +- **Frequency**: Daily or more frequent +- **Retention**: 30+ days +- **Location**: Internal storage (not external) +- **Testing**: Test restore procedures regularly + +### Backup Checklist + +1. Database backups (automated) +2. Configuration backups (values.yaml files, versioned) +3. TLS certificates (secure storage) +4. Custom CA certificate (backup copy) +5. Helm chart versions (archived) + +### Recovery Procedure + +Documented recovery procedure should cover: +1. Database restoration steps +2. Helm redeployment steps +3. Data validation after restore +4. User communication plan + +## Monitoring & Logging + +### Internal Monitoring + +Set up internal monitoring for: +- CPU and memory usage +- Pod restart count +- Database connection count +- Ingress error rates +- Certificate expiration dates + +### Log Aggregation + +Forward logs to your internal log aggregation system: +- Application logs from ZenML pods +- Ingress logs +- Database logs +- Kubernetes events + +### Alerting + +Create alerts for: +- Pod failures +- High resource usage +- Database connection errors +- Certificate near expiration +- Disk space warnings + +## Maintenance + +### Regular Tasks + +- Monitor disk space (databases, artifact storage) +- Review and manage user access +- Update internal CA certificate before expiration +- Test backup and recovery procedures +- Monitor pod logs for warnings + +### Periodic Updates + +When updating to a new ZenML version: + +1. Pull new images on internet-connected machine +2. Push to internal registry +3. Create new offline bundle with updated Helm charts +4. Transfer bundle to air-gapped environment +5. Update Helm charts in air-gapped environment +6. Update image tags in values.yaml +7. Perform helm upgrade on control plane +8. Perform helm upgrade on workspace servers +9. Verify health after upgrade +10. Update client images in your custom ZenML container + +## Troubleshooting + +### Pods Won't Start + +Check pod logs and events: +```bash +kubectl -n zenml-pro describe pod zenml-pro-xxxxx +kubectl -n zenml-pro logs zenml-pro-xxxxx +``` + +Common issues: +- Image pull failures (check registry access) +- Database connectivity (verify connection string) +- Certificate issues (verify CA is trusted) + +### Database Connection Failed + +```bash +# Test from pod +kubectl -n zenml-pro exec -it zenml-pro-xxxxx -- \ + psql -h postgres.internal.mycompany.com -U zenml_pro_user -d zenml_pro +``` + +### Can't Access via HTTPS + +1. Verify certificate validity +2. Verify DNS resolution +3. Check Ingress status +4. Verify CA certificate is installed on client + +### Image Pull Errors + +1. Verify images are in internal registry +2. Check registry credentials in secret +3. Verify imagePullSecrets configured correctly + +## Day 2 Operations: Updates and Upgrades + +### Receiving New Versions + +When new ZenML versions are released: + +1. **Request offline bundle** from ZenML Support containing: + - Updated container images + - Updated Helm charts + - Release notes and migration guide + - Vulnerability assessment (if applicable) + +2. **Review release notes** for: + - Breaking changes + - Database migration requirements + - New features and configuration options + - Security updates + +3. **Transfer bundle** to your air-gapped environment using approved methods + +### Upgrade Process + +1. **Backup current state:** + - Database backup + - Values.yaml files + - TLS certificates + +2. **Update container images in internal registry:** + - Extract and load new images + - Tag and push to your internal registry + +3. **Update Helm charts:** + - Extract new chart versions + - Review any changes to values schema + +4. **Upgrade control plane first:** + ```bash + helm upgrade zenml-pro ./zenml-pro-.tgz \ + --namespace zenml-pro \ + --values zenml-pro-values.yaml + ``` + +5. **Verify control plane:** + - Check pod status + - Review logs + - Test connectivity + +6. **Upgrade workspace servers:** + ```bash + helm upgrade zenml ./zenml-.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml + ``` + +7. **Verify workspaces:** + - Check all pods are running + - Review logs + - Run health checks + - Test dashboard access + +### Database Migrations + +Some updates may require database migrations: + +1. **Review migration guide** in release notes +2. **Back up database** before upgrading +3. **Monitor logs** for any migration-related errors +4. **Verify data integrity** after upgrade +5. **Test key features** (workspace access, pipeline runs, etc.) + +## Disaster Recovery & Backup Strategy + +### Backup Components + +Regular backups should include: + +1. **PostgreSQL Databases:** + - Schedule automated backups (daily minimum) + - Test restore procedures regularly + - Store backups in a different location (second disk, external storage) + - Retain for 30+ days + +2. **Configuration:** + - Version control Helm values files + - Store TLS certificates securely + - Document any manual customizations + +3. **Container Images:** + - Keep copies of all images used + - Maintain manifest of images and versions + +### Recovery Procedures + +Document and test: + +1. **Database Recovery:** + - Steps to restore from backup + - Verification procedures + - Estimated recovery time + +2. **Full Cluster Recovery:** + - How to redeploy from scratch + - Image and chart preparation + - Restore order (databases first, then control plane, then workspaces) + +3. **Partial Recovery:** + - Recovering single workspace + - Recovering specific components + +## Related Resources + +- [Air-gapped Deployment Overview](air-gapped-deployment.md) +- [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference +- [Kubernetes Documentation](https://kubernetes.io/docs/) +- [PostgreSQL Documentation](https://www.postgresql.org/docs/) +- [Helm Documentation](https://helm.sh/docs/) + +## Support + +For air-gapped deployments, contact ZenML Support: +- Email: [cloud@zenml.io](mailto:cloud@zenml.io) +- Provide: Your offline bundle, deployment status, and any error logs + +Request from ZenML Support: +- Pre-deployment architecture consultation +- Offline support packages +- Update bundles and release notes +- Security documentation (SBOM, vulnerability reports) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md new file mode 100644 index 00000000000..9d9dba95c61 --- /dev/null +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -0,0 +1,136 @@ +--- +description: Compare ZenML Pro deployment scenarios to find the right fit for your organization. +layout: + title: + visible: true + description: + visible: true + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Deployment Scenarios + +ZenML Pro offers three flexible deployment options to match your organization's security, compliance, and operational needs. This page helps you understand the differences and choose the right scenario for your use case. + +## Quick Comparison + +| Deployment Aspect | SaaS | Hybrid SaaS | Air-gapped | +|-------------------|------|-------------|------------| +| **ZenML Server** | ZenML infrastructure | Customer infrastructure | Customer infrastructure | +| **Control Plane** | ZenML infrastructure | ZenML infrastructure | Customer infrastructure | +| **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Customer infrastructure | Customer infrastructure | +| **Compute & Data** | Customer infrastructure | Customer infrastructure | Customer infrastructure | +| **Setup Time** | ⚡ Fastest (minutes) | Moderate | Longer (requires full deployment) | +| **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | +| **Production Ready** | ✅ Day 1 | ✅ Day 1 | ✅ Day 1 | +| **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and air-gapped environments | + +## Which Scenario is Right for You? + +### SaaS Deployment + +Choose **SaaS** if you want to get started immediately with zero infrastructure overhead. + +**What runs where:** +- ZenML Server: ZenML infrastructure +- Metadata and RBAC: ZenML infrastructure +- Compute and Data: Customer infrastructure + +**Key Benefits:** +- ⚡ Fastest setup (minutes) +- ✅ Fully managed by ZenML +- 🚀 Immediate production readiness +- 💰 Minimal operational overhead + +**Ideal for:** Startups, teams with high trust in ZenML infrastructure, organizations prioritizing speed-to-value over infrastructure control. + +[Learn more about SaaS deployment →](saas-deployment.md) + +### Hybrid SaaS Deployment + +Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure while benefiting from centralized user management. + +**What runs where:** +- ZenML Management Plane: ZenML infrastructure +- ZenML Server: Customer infrastructure +- RBAC: ZenML infrastructure +- Run metadata: Customer infrastructure +- Compute and Data: Customer infrastructure + +**Key Benefits:** +- 🔐 Metadata stays in your infrastructure +- 👥 Centralized user management +- ⚖️ Balance of control and convenience +- ✅ Day 1 production ready + +**Ideal for:** Organizations with security policies requiring metadata sovereignty, teams wanting simplified identity management without full infrastructure control. + +[Learn more about Hybrid deployment →](hybrid-deployment.md) + +### Air-gapped Deployment + +Choose **Air-gapped** if you need complete control with no external dependencies. + +**What runs where:** +- All components: Customer infrastructure (completely isolated) + +**Key Benefits:** +- 🔒 Complete data sovereignty +- 🚫 No external network dependencies +- 🛡️ Maximum security posture +- 📋 Full audit trail control + +**Ideal for:** Regulated industries (healthcare, finance), government organizations, enterprises with strict data residency requirements, environments requiring offline operation. + +[Learn more about Air-gapped deployment →](air-gapped-deployment.md) + +## Making Your Choice + +Consider these factors when deciding: + +1. **Data Sensitivity**: How sensitive is your ML metadata and run data? + - Non-sensitive → **SaaS** + - Sensitive metadata → **Hybrid** + - Highly regulated → **Air-gapped** + +2. **Infrastructure Complexity**: How much infrastructure control do you want? + - Minimal → **SaaS** + - Moderate → **Hybrid** + - Full control → **Air-gapped** + +3. **Time to Value**: How quickly do you need to be productive? + - ASAP → **SaaS** + - Few days → **Hybrid** + - Flexible → **Air-gapped** + +4. **Compliance Requirements**: What regulations apply to your organization? + - General business → **SaaS** + - Data residency rules → **Hybrid** + - Strict isolation requirements → **Air-gapped** + +## Security & Compliance + +All ZenML Pro deployments include: + +- ✅ **SOC 2 Type II** certification +- ✅ **ISO 27001** certification +- ✅ **Vulnerability Assessment Reports** available on request +- ✅ **Software Bill of Materials (SBOM)** available on request + +For software deployed on customer infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. + +## Next Steps + +- **Ready to start?** [Choose SaaS Deployment](saas-deployment.md) +- **Need metadata control?** [Set up Hybrid Deployment](hybrid-deployment.md) +- **Require complete isolation?** [Configure Air-gapped Deployment](air-gapped-deployment.md) +- **Deploying on your own infrastructure?** [See Self-hosted Deployment Guide](self-hosted.md) + +{% hint style="info" %} +Not sure which option is right for you? [Book a call](https://www.zenml.io/book-your-demo) with our team to discuss your specific requirements. +{% endhint %} diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md new file mode 100644 index 00000000000..0c1a1f84190 --- /dev/null +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md @@ -0,0 +1,514 @@ +--- +description: Deploy ZenML Pro Hybrid on AWS ECS with a managed control plane. +layout: + title: + visible: true + description: + visible: true + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Hybrid Deployment on AWS ECS + +This guide provides high-level instructions for deploying ZenML Pro in a Hybrid setup on AWS ECS (Elastic Container Service). + +## Architecture Overview + +In this setup: +- **ZenML server** runs in ECS tasks within your VPC +- **Load balancer** handles HTTPS traffic and routes to ECS tasks +- **Database** stores workspace metadata in AWS RDS +- **Secrets manager** stores Pro credentials securely +- **NAT gateway** enables outbound access to ZenML Cloud control plane + +## Prerequisites + +Before starting, complete the setup described in [Hybrid Deployment Overview](hybrid-deployment.md): +- Step 1: Set up ZenML Pro organization +- Step 2: Configure your infrastructure (database, networking, TLS) +- Step 3: Obtain Pro credentials from ZenML Support + +You'll also need: +- AWS Account with appropriate IAM permissions +- Basic familiarity with AWS ECS, VPC, and RDS + +## Step 1: Set Up AWS Infrastructure + +### VPC and Subnets + +Create a VPC with: +- **Public subnets** (at least 2 across different availability zones) - for the Application Load Balancer +- **Private subnets** (at least 2 across different availability zones) - for ECS tasks and RDS + +### Security Groups + +Create three security groups: + +1. **ALB Security Group** + - Inbound: HTTPS (443) and HTTP (80) from `0.0.0.0/0` + - Outbound: HTTP (8000) to the ECS security group + +2. **ECS Security Group** + - Inbound: HTTP (8000) from the ALB security group + - Outbound: HTTPS (443) to `0.0.0.0/0` (for ZenML Cloud access) + - Outbound: TCP (3306 for MySQL or 5432 for PostgreSQL) to the RDS security group + +3. **RDS Security Group** + - Inbound: TCP (3306 for MySQL or 5432 for PostgreSQL) from the ECS security group + - Outbound: Not restricted + +### NAT Gateway + +To enable ECS tasks to reach ZenML Cloud: + +1. Create an Elastic IP in your AWS region +2. Create a NAT Gateway in one of your public subnets +3. Wait for the NAT Gateway to be available + +### Route Tables + +For your private subnets (where ECS tasks run): +1. Create a route table +2. Add a default route (`0.0.0.0/0`) pointing to the NAT Gateway +3. Associate this route table with your private subnets + +## Step 2: Set Up RDS Database + +Create an RDS database instance (MySQL or PostgreSQL): + +**Configuration:** +- **DB Engine**: MySQL 8.0+ or PostgreSQL 12+ +- **Instance Class**: `db.t3.micro` or larger depending on expected load +- **Storage**: 100 GB initial (with automatic scaling enabled) +- **Multi-AZ**: Enable for production deployments +- **VPC**: Your ZenML VPC +- **Subnet Group**: Create a DB subnet group with your private subnets +- **Security Group**: RDS security group created above +- **Backups**: 30 days retention minimum +- **Logs**: Enable error, general, and slowquery logs to CloudWatch + +**After creation:** +1. Note the database endpoint (hostname) +2. Create the initial database: `zenml_hybrid` +3. Create a database user with full permissions on the database + +## Step 3: Store Secrets in AWS Secrets Manager + +Store your Pro credentials securely: + +1. **OAuth2 Client Secret** + - Secret name: `zenml/pro/oauth2-client-secret` + - Value: Your `ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET` from ZenML + +2. (Optional) **Database Password** + - Secret name: `zenml/rds/password` + - Value: Your RDS database password + +Note the ARN of your OAuth2 secret - you'll reference it in the task definition. + +## Step 4: Create ECS IAM Roles + +Create two IAM roles: + +### Task Execution Role + +This role allows ECS to pull images and manage logs: +- Attach: `AmazonECSTaskExecutionRolePolicy` +- Add inline policy for Secrets Manager access: + - Action: `secretsmanager:GetSecretValue` + - Resource: Your OAuth2 secret ARN + - Action: `logs:CreateLogGroup`, `logs:CreateLogStream`, `logs:PutLogEvents` + - Resource: Your CloudWatch log group + +### Task Role + +This role is for application-level permissions (optional for basic setup): +- Leave empty for now, or add policies if your tasks need to access other AWS services + +## Step 5: Create ECS Task Definition + +In the AWS Console or using AWS CLI/Terraform, create a task definition with: + +**Task Configuration:** +- **Compatibility**: FARGATE +- **CPU**: 512 (0.5 vCPU) +- **Memory**: 1024 MB +- **Network Mode**: awsvpc +- **Execution Role**: Task execution role created above +- **Task Role**: Task role created above + +**Container Configuration:** +- **Image**: `715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:0.73.0` +- **Port Mapping**: Container port 8000 to port 8000 +- **Essential**: Yes + +**Environment Variables:** + +Set these in the task definition: + +| Variable | Value | +|----------|-------| +| `ZENML_SERVER_DEPLOYMENT_TYPE` | `cloud` | +| `ZENML_SERVER_PRO_API_URL` | `https://cloudapi.zenml.io` | +| `ZENML_SERVER_PRO_DASHBOARD_URL` | `https://cloud.zenml.io` | +| `ZENML_SERVER_PRO_ORGANIZATION_ID` | Your organization ID from Step 1 | +| `ZENML_SERVER_PRO_ORGANIZATION_NAME` | Your organization name from Step 1 | +| `ZENML_SERVER_PRO_WORKSPACE_ID` | From ZenML Support | +| `ZENML_SERVER_PRO_WORKSPACE_NAME` | Your workspace name | +| `ZENML_SERVER_PRO_OAUTH2_AUDIENCE` | `https://cloudapi.zenml.io` | +| `ZENML_SERVER_SERVER_URL` | `https://zenml.mycompany.com` | +| `ZENML_DATABASE_URL` | `mysql://user:password@hostname:3306/zenml_hybrid` | +| `ZENML_SERVER_HOSTNAME` | `0.0.0.0` | +| `ZENML_SERVER_PORT` | `8000` | +| `ZENML_LOGGING_LEVEL` | `INFO` | + +**Secrets:** + +Reference your secret from Secrets Manager: + +| Variable | Secret | +|----------|--------| +| `ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET` | `arn:aws:secretsmanager:region:account:secret:zenml/pro/oauth2-client-secret` | + +**Logging:** + +Configure CloudWatch logs: +- **Log Group**: `/ecs/zenml-hybrid` +- **Log Stream Prefix**: `ecs` +- **Region**: Your AWS region + +## Step 6: Create ECS Cluster and Service + +Create an ECS cluster named `zenml-hybrid`. + +Then create an ECS service within this cluster: + +**Service Configuration:** +- **Cluster**: zenml-hybrid +- **Task Definition**: zenml-hybrid (latest version) +- **Launch Type**: FARGATE +- **Desired Count**: 1 (or more for high availability) +- **Platform Version**: LATEST + +**Network Configuration:** +- **VPC**: Your ZenML VPC +- **Subnets**: Your private subnets +- **Security Group**: ECS security group +- **Public IP**: Disabled (tasks don't need public IPs) + +**Load Balancing:** +- **Load Balancer Type**: Application Load Balancer +- **Container**: zenml-server +- **Container Port**: 8000 +- (Leave the target group selection for the next step) + +## Step 7: Set Up Application Load Balancer + +Create an Application Load Balancer (ALB): + +**Configuration:** +- **Subnets**: Your public subnets +- **Security Group**: ALB security group + +### Target Group + +Create a target group for your ECS service: + +**Health Check Configuration:** +- **Protocol**: HTTP +- **Path**: `/health` +- **Port**: 8000 +- **Interval**: 30 seconds +- **Timeout**: 5 seconds +- **Healthy Threshold**: 2 +- **Unhealthy Threshold**: 3 + +### Listeners + +Create two listeners on your ALB: + +1. **HTTPS Listener (Port 443)** + - **Certificate**: Your TLS certificate from ACM or imported + - **Default Action**: Forward to your target group + +2. **HTTP Listener (Port 80)** + - **Default Action**: Redirect to HTTPS (port 443) + +## Step 8: Configure DNS + +In your DNS provider (Route 53 or external): + +1. Create an A record (or CNAME) pointing to your ALB's DNS name + - **Name**: `zenml.mycompany.com` + - **Target**: Your ALB's DNS name or IP + - **Type**: A record (use Alias if in Route 53) + +2. Allow time for DNS propagation (typically 5-15 minutes) + +## Step 9: Verify the Deployment + +1. **Check ECS Service Status** + - Go to ECS console → Clusters → zenml-hybrid → Services + - Verify the service shows "Active" + - Check that desired and running task counts match + +2. **Check Task Logs** + - Go to CloudWatch → Log Groups → `/ecs/zenml-hybrid` + - View log stream to look for startup messages + - Verify no critical errors appear + +3. **Test HTTPS Access** + - Visit `https://zenml.mycompany.com` in your browser + - You should see ZenML Pro login redirecting to cloud.zenml.io + +4. **Verify Control Plane Connection** + - In CloudWatch logs, look for messages indicating successful connection to ZenML Cloud + - Check for any authentication or SSL errors + +## Network & Firewall Requirements + +### Outbound Access to ZenML Cloud + +Your ECS tasks need HTTPS (port 443) outbound access to: +- `cloudapi.zenml.io` - For control plane authentication + +This is enabled by the NAT Gateway and ECS security group configuration. + +### Inbound Access from Clients + +Clients need HTTPS (port 443) inbound access to: +- `zenml.mycompany.com` - Your ALB endpoint + +This is enabled by the ALB and ALB security group configuration. + +### Database Access + +ECS tasks need TCP access to: +- Your RDS instance on port 3306 (MySQL) or 5432 (PostgreSQL) + +This is enabled by the ECS security group egress rule and RDS security group ingress rule. + +## Scaling & High Availability + +### Multiple Tasks + +For high availability: +1. Update the ECS service's desired count to 2 or more +2. ECS will distribute tasks across availability zones +3. The ALB automatically distributes traffic to all healthy tasks + +### Auto Scaling (Optional) + +To automatically scale based on CPU or memory usage: +1. Register a scalable target (your ECS service) +2. Create a target tracking scaling policy +3. Set target CPU utilization (e.g., 70%) + +## Monitoring & Logging + +### CloudWatch Logs + +Monitor your deployment: +1. Go to CloudWatch → Log Groups → `/ecs/zenml-hybrid` +2. Set up log filters to find errors: filter for `ERROR` or `CRITICAL` +3. Create metric filters if needed + +### CloudWatch Alarms + +Create alarms for: +- **High CPU Utilization**: Alert when average CPU > 80% +- **Failed Tasks**: Alert when tasks exit unexpectedly +- **Unhealthy Targets**: Alert when ALB marks tasks as unhealthy + +### Application Logs + +For production deployments: +1. Forward CloudWatch logs to your centralized logging system (ELK, Datadog, etc.) +2. Set up alerts for authentication failures to ZenML Cloud +3. Monitor database connection errors + +## Database Maintenance + +### Backups + +Automated backups are configured, but: +1. Verify backup retention is set to at least 30 days +2. Test backup restoration periodically +3. Store backups in a different region for disaster recovery + +### Monitoring + +Monitor database health: +1. Check RDS Performance Insights for slow queries +2. Review CloudWatch metrics for connection count and CPU +3. Monitor free storage space and create alerts + +## (Optional) Enable Snapshot Support / Workload Manager + +Pipeline snapshots (running pipelines from the dashboard) require a workload manager. For ECS deployments, you'll typically use the AWS Kubernetes implementation if you also have a Kubernetes cluster available, or configure settings as appropriate for your infrastructure. + +### Prerequisites for Workload Manager + +To enable snapshots on ECS-deployed ZenML servers: + +1. **Kubernetes Cluster Access** - You'll need a Kubernetes cluster where the workload manager can run jobs. This could be: + - The same EKS cluster as your other infrastructure + - A separate EKS cluster dedicated to workloads + - Another Kubernetes distribution in your environment + +2. **Container Registry Access** - The workload manager needs access to your container registry to: + - Pull base ZenML images + - Push/pull runner images (if building them) + +3. **Storage Access** - For AWS implementation: + - S3 bucket for logs storage + - IAM permissions to read/write to the bucket + +### Configuration Options + +**Option A: AWS Kubernetes Workload Manager (Recommended for ECS)** + +If you have an EKS cluster or other Kubernetes cluster available: + +1. Create a dedicated namespace: + ``` + kubectl create namespace zenml-workload-manager + kubectl -n zenml-workload-manager create serviceaccount zenml-runner + ``` + +2. Add these environment variables to your ECS task definition: + + | Variable | Value | + |----------|-------| + | `ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE` | `zenml_cloud_plugins.aws_kubernetes_workload_manager.AWSKubernetesWorkloadManager` | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE` | `zenml-workload-manager` | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT` | `zenml-runner` | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE` | `true` | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY` | Your ECR registry URI | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_ENABLE_EXTERNAL_LOGS` | `true` | + | `ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_BUCKET` | Your S3 bucket for logs | + | `ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_REGION` | Your AWS region | + | `ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS` | `2` (or higher) | + | `ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES` | `{"requests": {"cpu": "500m", "memory": "512Mi"}, "limits": {"cpu": "2000m", "memory": "2Gi"}}` | + +3. Ensure the ECS task has permissions to access: + - The Kubernetes cluster (kubeconfig/IAM role) + - Your ECR registry + - Your S3 bucket for logs + +**Option B: Kubernetes-based (Simpler Alternative)** + +If you prefer a basic setup without AWS-specific features: + +Add these environment variables to your ECS task definition: + +| Variable | Value | +|----------|-------| +| `ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE` | `zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager` | +| `ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE` | `zenml-workload-manager` | +| `ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT` | `zenml-runner` | +| `ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE` | Your prebuilt ZenML image URI | + +### Updating Task Definition + +After configuring the workload manager environment variables: + +1. Create a new task definition revision with the updated environment variables +2. Update your ECS service to use the new task definition +3. ECS will gradually replace running tasks with the new version +4. Monitor CloudWatch logs to verify the workload manager is operational + +## Troubleshooting + +### Task Won't Start + +Check ECS task logs in CloudWatch: +1. Go to `/ecs/zenml-hybrid` log group +2. Look for error messages about image pull failures or environment variable issues +3. Verify IAM execution role has correct permissions + +### Database Connection Failed + +1. Verify database is running and accessible +2. Check ECS security group allows outbound to RDS security group +3. Verify `ZENML_DATABASE_URL` has correct hostname, port, and credentials +4. Test connectivity from an ECS task using a MySQL/PostgreSQL client + +### Can't Reach Server via HTTPS + +1. Verify ALB is in "Active" state +2. Check ALB target group - tasks should show "Healthy" +3. Verify TLS certificate is valid for your domain +4. Check DNS resolution: `nslookup zenml.mycompany.com` + +### Control Plane Connection Issues + +Check CloudWatch logs for: +1. OAuth2 authentication errors - verify `ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET` is correct +2. Network connectivity errors - verify NAT Gateway is operational +3. Certificate validation errors - verify outbound HTTPS to cloudapi.zenml.io works + +## Updating the Deployment + +### Update Configuration + +1. Modify environment variables in the task definition +2. Create a new task definition revision +3. Update the ECS service to use the new task definition +4. ECS will gradually replace old tasks with new ones + +### Upgrade ZenML Version + +1. Update the container image in the task definition +2. Create a new task definition revision +3. Update the ECS service +4. Monitor CloudWatch logs during the update + +## Cleanup + +To remove the deployment: + +1. **Delete ECS Service** + - Go to ECS → Clusters → zenml-hybrid → Services + - Delete the zenml-server service + - Set desired count to 0 first + +2. **Delete ECS Cluster** + - Delete the cluster once service is removed + +3. **Delete ALB** + - Go to EC2 → Load Balancers + - Delete the ALB and associated target groups + +4. **Delete RDS Instance** + - Go to RDS → Databases + - Delete the zenml-hybrid-db instance + - Skip final snapshot if you don't need a backup + +5. **Delete VPC and Related Resources** + - Delete NAT Gateway (releases Elastic IP) + - Delete subnets, route tables, security groups + - Delete VPC + +6. **Clean Up Secrets** + - Go to Secrets Manager + - Delete zenml/pro/oauth2-client-secret + +## Next Steps + +- [Configure your organization in ZenML Cloud](https://cloud.zenml.io) +- [Set up users and teams](../organization.md) +- [Configure stacks and service connectors](https://docs.zenml.io/stacks) +- [Run your first pipeline](https://docs.zenml.io/getting-started/quickstart) + +## Related Documentation + +- [Hybrid Deployment Overview](hybrid-deployment.md) +- [Self-hosted Deployment Guide](self-hosted.md) +- [AWS ECS Documentation](https://docs.aws.amazon.com/ecs/) +- [AWS RDS Documentation](https://docs.aws.amazon.com/rds/) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md new file mode 100644 index 00000000000..0cc01e426cb --- /dev/null +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md @@ -0,0 +1,659 @@ +--- +description: Deploy ZenML Pro Hybrid using Kubernetes and Helm charts. +layout: + title: + visible: true + description: + visible: true + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Hybrid Deployment on Kubernetes with Helm + +This guide provides step-by-step instructions for deploying ZenML Pro in a Hybrid setup using Kubernetes and Helm charts. + +## Prerequisites + +- Kubernetes cluster (1.24+) - EKS, GKE, AKS, or self-managed +- `kubectl` configured to access your cluster +- `helm` CLI (3.0+) installed +- A domain name and TLS certificate for your ZenML server +- MySQL or PostgreSQL database (managed or self-hosted) +- Outbound HTTPS access to `cloudapi.zenml.io` + +Before starting, complete the setup described in [Hybrid Deployment Overview](hybrid-deployment.md): +- Step 1: Set up ZenML Pro organization +- Step 2: Configure your infrastructure (database, networking, TLS) +- Step 3: Obtain Pro credentials from ZenML Support + +## Step 1: Add ZenML Helm Repository + +```bash +helm repo add zenml oci://public.ecr.aws/zenml +helm repo update +``` + +## Step 2: Create Kubernetes Namespace + +```bash +kubectl create namespace zenml-hybrid +``` + +## Step 3: Create Secrets for Credentials + +Create a secret for your Pro OAuth2 credentials: + +```bash +kubectl -n zenml-hybrid create secret generic zenml-pro-credentials \ + --from-literal=ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET= +``` + +If using a custom TLS certificate (self-signed or from a CA), create a secret: + +```bash +kubectl -n zenml-hybrid create secret tls zenml-tls \ + --cert=/path/to/tls.crt \ + --key=/path/to/tls.key +``` + +## Step 4: Create Helm Values File + +Create a file `zenml-hybrid-values.yaml` with your configuration: + +```yaml +# ZenML Server Configuration +zenml: + # Server metadata + serverURL: https://zenml.mycompany.com + + # Pro Hybrid Configuration + pro: + enabled: true + deploymentType: cloud + + # ZenML Control Plane endpoints + apiURL: https://cloudapi.zenml.io + dashboardURL: https://cloud.zenml.io + + # Your organization details + organizationID: + organizationName: + + # Workspace details (provided by ZenML) + workspaceID: + workspaceName: + + # OAuth2 authentication (stored in secret) + oauth2: + audience: https://cloudapi.zenml.io + clientSecretRef: + name: zenml-pro-credentials + key: ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET + + # Database Configuration + database: + external: + type: mysql # or postgresql + host: mysql.mycompany.com + port: 3306 + username: zenml_user + password: + database: zenml_hybrid + + # Image Configuration + image: + repository: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server + tag: "0.73.0" # Match your ZenML version + pullPolicy: IfNotPresent + + # Ingress Configuration + ingress: + enabled: true + className: nginx # or your ingress class + host: zenml.mycompany.com + + # TLS Configuration + tls: + enabled: true + secretName: zenml-tls + + # Annotations for your ingress controller + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-prod" # if using cert-manager + + # Service Configuration + service: + type: ClusterIP + port: 80 + targetPort: 8000 + + # Resource Limits + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 1000m + memory: 2Gi + + # Analytics (optional) + analyticsOptIn: false + + # Replica count + replicaCount: 1 + +# Image pull secrets (if using private registry) +imagePullSecrets: [] + +# Pod Security Context +podSecurityContext: + fsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 + +# Container Security Context +securityContext: + allowPrivilegeEscalation: false + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 1000 + capabilities: + drop: + - ALL +``` + +## Step 5: Deploy with Helm + +Install the ZenML chart: + +```bash +helm install zenml zenml/zenml \ + --namespace zenml-hybrid \ + --values zenml-hybrid-values.yaml \ + --version 0.73.0 +``` + +Monitor the deployment: + +```bash +kubectl -n zenml-hybrid get pods -w +``` + +Wait for the pod to be running: + +```bash +kubectl -n zenml-hybrid get pods +# Output should show: +# NAME READY STATUS RESTARTS AGE +# zenml-5c4b6d9dcd-7bhfp 1/1 Running 0 2m +``` + +## Step 6: Verify the Deployment + +### Check Service is Running + +```bash +kubectl -n zenml-hybrid get svc +kubectl -n zenml-hybrid get ingress +``` + +### Verify Control Plane Connection + +```bash +kubectl -n zenml-hybrid logs deployment/zenml | tail -20 +``` + +Look for messages indicating successful connection to the control plane. + +### Test HTTPS Connectivity + +```bash +curl -k https://zenml.mycompany.com/health +# Should return 200 OK with a JSON response +``` + +### Access the Dashboard + +1. Navigate to `https://zenml.mycompany.com` in your browser +2. You should be redirected to ZenML Cloud login +3. Sign in with your organization credentials +4. You should see your workspace listed + +## Step 7: (Optional) Enable Snapshot Support / Workload Manager + +Pipeline snapshots (running pipelines from the dashboard) require a workload manager. For hybrid deployments, you can configure one of the following: + +### 1. Create Kubernetes Resources for Workload Manager + +Create a dedicated namespace and service account: + +```bash +kubectl create namespace zenml-workload-manager +kubectl -n zenml-workload-manager create serviceaccount zenml-runner +``` + +### 2. Configure Workload Manager in Helm Values + +Add environment variables to your `zenml-hybrid-values.yaml`: + +**Option A: Kubernetes-based (Simplest)** + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner + ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:0.73.0 +``` + +**Option B: AWS-based (if running on EKS)** + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.aws_kubernetes_workload_manager.AWSKubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: + ZENML_KUBERNETES_WORKLOAD_MANAGER_ENABLE_EXTERNAL_LOGS: "true" + ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_BUCKET: s3://your-bucket/zenml-logs + ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_REGION: us-east-1 +``` + +**Option C: GCP-based (if running on GKE)** + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.gcp_kubernetes_workload_manager.GCPKubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: +``` + +### 3. Configure Pod Resources (Optional but Recommended) + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "500m", "memory": "512Mi"}, "limits": {"cpu": "2000m", "memory": "2Gi"}}' + ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 + ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 +``` + +### 4. Redeploy with Updated Values + +```bash +helm upgrade zenml zenml/zenml \ + --namespace zenml-hybrid \ + --values zenml-hybrid-values.yaml +``` + +## Step 8: Configure Environment Variables (Advanced) + +For advanced configurations, you can set additional environment variables in your Helm values: + +```yaml +zenml: + environment: + ZENML_LOGGING_LEVEL: INFO + ZENML_ANALYTICS_OPT_IN: "false" + # Add other environment variables as needed +``` + +## Database Configuration Examples + +### AWS RDS MySQL + +```yaml +zenml: + database: + external: + type: mysql + host: zenml-db.123456789.us-east-1.rds.amazonaws.com + port: 3306 + username: admin + password: + database: zenml_hybrid +``` + +### Google Cloud SQL PostgreSQL + +```yaml +zenml: + database: + external: + type: postgresql + host: 34.123.45.67 + port: 5432 + username: postgres + password: + database: zenml_hybrid +``` + +### Self-Managed PostgreSQL + +```yaml +zenml: + database: + external: + type: postgresql + host: postgres.internal.mycompany.com + port: 5432 + username: zenml_user + password: + database: zenml_hybrid +``` + +## Networking & Firewall Configuration + +### Kubernetes Network Policy + +If your cluster uses network policies, allow traffic: + +```yaml +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + name: zenml-egress + namespace: zenml-hybrid +spec: + podSelector: + matchLabels: + app: zenml + policyTypes: + - Egress + egress: + # Allow DNS + - to: + - namespaceSelector: {} + ports: + - protocol: UDP + port: 53 + # Allow outbound to ZenML Cloud + - to: + - ipBlock: + cidr: 0.0.0.0/0 + ports: + - protocol: TCP + port: 443 + # Allow database access + - to: + - podSelector: + matchLabels: + app: mysql + ports: + - protocol: TCP + port: 3306 +``` + +### Firewall Rules + +Ensure your infrastructure firewall allows: + +**Egress:** +- Destination: `cloudapi.zenml.io` (HTTPS port 443) +- Destination: Your database server (e.g., port 3306 for MySQL) + +**Ingress:** +- Source: Your organization's networks or public internet +- Destination: Your ZenML server domain (HTTPS port 443) + +## Ingress Controller Setup + +### Using NGINX Ingress Controller + +If not already installed: + +```bash +helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx +helm repo update +helm install nginx-ingress ingress-nginx/ingress-nginx \ + --namespace ingress-nginx \ + --create-namespace +``` + +Configure your Helm values: + +```yaml +zenml: + ingress: + enabled: true + className: nginx + host: zenml.mycompany.com + annotations: + nginx.ingress.kubernetes.io/ssl-redirect: "true" + nginx.ingress.kubernetes.io/force-ssl-redirect: "true" + tls: + enabled: true + secretName: zenml-tls +``` + +### Using Traefik + +```yaml +zenml: + ingress: + enabled: true + className: traefik + host: zenml.mycompany.com + annotations: + traefik.ingress.kubernetes.io/router.entrypoints: websecure + traefik.ingress.kubernetes.io/router.tls: "true" + tls: + enabled: true + secretName: zenml-tls +``` + +## TLS Certificate Management + +### Self-Signed Certificates (Development Only) + +```bash +# Generate certificate +openssl req -x509 -newkey rsa:4096 -keyout tls.key -out tls.crt -days 365 -nodes \ + -subj "/CN=zenml.mycompany.com" + +# Create secret +kubectl -n zenml-hybrid create secret tls zenml-tls \ + --cert=tls.crt --key=tls.key +``` + +### Using cert-manager with Let's Encrypt + +1. Install cert-manager: + +```bash +helm repo add jetstack https://charts.jetstack.io +helm repo update +helm install cert-manager jetstack/cert-manager \ + --namespace cert-manager \ + --create-namespace \ + --set installCRDs=true +``` + +2. Create ClusterIssuer: + +```yaml +apiVersion: cert-manager.io/v1 +kind: ClusterIssuer +metadata: + name: letsencrypt-prod +spec: + acme: + server: https://acme-v02.api.letsencrypt.org/directory + email: admin@mycompany.com + privateKeySecretRef: + name: letsencrypt-prod + solvers: + - http01: + ingress: + class: nginx +``` + +3. Update Helm values: + +```yaml +zenml: + ingress: + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod + tls: + enabled: true +``` + +## Persistent Storage (Optional) + +If you need persistent storage for the ZenML server: + +```yaml +persistence: + enabled: true + storageClassName: standard + accessMode: ReadWriteOnce + size: 10Gi +``` + +## Scaling & High Availability + +### Multiple Replicas + +```yaml +zenml: + replicaCount: 3 +``` + +### Pod Disruption Budget + +```yaml +podDisruptionBudget: + enabled: true + minAvailable: 1 +``` + +### Horizontal Pod Autoscaler + +```yaml +autoscaling: + enabled: true + minReplicas: 2 + maxReplicas: 5 + targetCPUUtilizationPercentage: 80 +``` + +## Monitoring & Logging + +### Prometheus Metrics + +```yaml +zenml: + metrics: + enabled: true + port: 8001 +``` + +### Logging Configuration + +```yaml +zenml: + logging: + level: INFO + format: json +``` + +Collect logs with: + +```bash +kubectl -n zenml-hybrid logs deployment/zenml -f +``` + +## Updating the Deployment + +### Update Configuration + +1. Modify `zenml-hybrid-values.yaml` +2. Upgrade with Helm: + +```bash +helm upgrade zenml zenml/zenml \ + --namespace zenml-hybrid \ + --values zenml-hybrid-values.yaml \ + --version 0.73.0 +``` + +### Upgrade ZenML Version + +1. Check available versions: + +```bash +helm search repo zenml/zenml --versions +``` + +2. Update values file with new version +3. Upgrade: + +```bash +helm upgrade zenml zenml/zenml \ + --namespace zenml-hybrid \ + --values zenml-hybrid-values.yaml \ + --version +``` + +## Troubleshooting + +### Pod won't start + +```bash +kubectl -n zenml-hybrid describe pod zenml-xxxxx +kubectl -n zenml-hybrid logs zenml-xxxxx +``` + +### Database connection errors + +```bash +# Test database connectivity from pod +kubectl -n zenml-hybrid exec -it zenml-xxxxx -- \ + mysql -h -u -p -e "SELECT 1" +``` + +### Control plane connection issues + +```bash +# Check logs for auth errors +kubectl -n zenml-hybrid logs zenml-xxxxx | grep -i "oauth\|auth\|control" +``` + +### Ingress not working + +```bash +kubectl -n zenml-hybrid get ingress +kubectl -n zenml-hybrid describe ingress zenml +``` + +## Uninstalling + +```bash +helm uninstall zenml --namespace zenml-hybrid +kubectl delete namespace zenml-hybrid +``` + +## Next Steps + +- [Configure your organization in ZenML Cloud](https://cloud.zenml.io) +- [Set up users and teams](../organization.md) +- [Configure stacks and service connectors](https://docs.zenml.io/stacks) +- [Run your first pipeline](https://docs.zenml.io/getting-started/quickstart) + +## Related Documentation + +- [Hybrid Deployment Overview](hybrid-deployment.md) +- [Self-hosted Deployment Guide](self-hosted.md) +- [ZenML Helm Chart Documentation](https://artifacthub.io/packages/helm/zenml/zenml) diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index 86e45ae0afb..03754aff33e 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -4,10 +4,13 @@ ## Deployments +* [Deployment Scenarios Overview](deployments-overview.md) * [SaaS Deployment](saas-deployment.md) * [Hybrid SaaS Deployment](hybrid-deployment.md) + * [Kubernetes with Helm](hybrid-deployment-helm.md) + * [AWS ECS](hybrid-deployment-ecs.md) * [Air-gapped Deployment](air-gapped-deployment.md) -* [Self-hosted deployment guide](self-hosted.md) + * [Kubernetes with Helm](air-gapped-deployment-helm.md) ## Core Concepts From 299fed15d9ce0fc8acac0809047f50175f4247f8 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 00:30:05 +0100 Subject: [PATCH 05/28] Adjusted time to production --- .../getting-started/zenml-pro/deployments-overview.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 9d9dba95c61..812364f7856 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -25,9 +25,9 @@ ZenML Pro offers three flexible deployment options to match your organization's | **Control Plane** | ZenML infrastructure | ZenML infrastructure | Customer infrastructure | | **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Customer infrastructure | Customer infrastructure | | **Compute & Data** | Customer infrastructure | Customer infrastructure | Customer infrastructure | -| **Setup Time** | ⚡ Fastest (minutes) | Moderate | Longer (requires full deployment) | +| **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | | **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | -| **Production Ready** | ✅ Day 1 | ✅ Day 1 | ✅ Day 1 | +| **Production Ready** | Minutes | Hours | Hours | | **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and air-gapped environments | ## Which Scenario is Right for You? @@ -104,9 +104,9 @@ Consider these factors when deciding: - Full control → **Air-gapped** 3. **Time to Value**: How quickly do you need to be productive? - - ASAP → **SaaS** - - Few days → **Hybrid** - - Flexible → **Air-gapped** + - Within 1 hour → **SaaS** + - Within 4 hours → **Hybrid** + - Within 8 hours (or longer planning period) → **Air-gapped** 4. **Compliance Requirements**: What regulations apply to your organization? - General business → **SaaS** From 378848347d394b18d5d9f4b0b5f2021437e1f9a7 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 00:33:41 +0100 Subject: [PATCH 06/28] Adjusted some wording --- .../getting-started/zenml-pro/deployments-overview.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 812364f7856..58ca8edb2f2 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -93,10 +93,10 @@ Choose **Air-gapped** if you need complete control with no external dependencies Consider these factors when deciding: -1. **Data Sensitivity**: How sensitive is your ML metadata and run data? - - Non-sensitive → **SaaS** - - Sensitive metadata → **Hybrid** - - Highly regulated → **Air-gapped** +1. **Data Location Requirements**: Where must your ML metadata and run data reside? + - Cloud-hosted is acceptable → **SaaS** + - Must stay in your infrastructure → **Hybrid** + - Must be completely isolated/air-gapped → **Air-gapped** 2. **Infrastructure Complexity**: How much infrastructure control do you want? - Minimal → **SaaS** From e7b164b388bf1fd8320d56672fd05bdb32ebb9c1 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 00:49:49 +0100 Subject: [PATCH 07/28] Linking across new files properly --- docs/book/getting-started/zenml-pro/README.md | 2 +- .../zenml-pro/air-gapped-deployment.md | 4 +- .../zenml-pro/deployments-overview.md | 7 + .../zenml-pro/hybrid-deployment.md | 2 + .../zenml-pro/saas-deployment.md | 2 + docs/book/getting-started/zenml-pro/toc.md | 1 + .../zenml-pro/workload-managers.md | 388 ++++++++++++++++++ 7 files changed, 404 insertions(+), 2 deletions(-) create mode 100644 docs/book/getting-started/zenml-pro/workload-managers.md diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index df8e3b7ff64..ab3d5aa9e49 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -63,4 +63,4 @@ For software deployed on customer infrastructure (Hybrid and Air-gapped scenario ## Pro Feature Details -
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacesprojects.md
Deployment OptionsSaaS, Hybrid, or Air-gapped deploymentspro-self-host.pngself-hosted.md
+
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacesprojects.md
Workload ManagersEnable running pipelines from the dashboardworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Air-gapped deploymentspro-self-host.pngself-hosted.md
diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md index b7b6764b45e..94f035063dc 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md @@ -423,9 +423,11 @@ Your ZenML representative will provide you with a tailored migration checklist, ## Related Resources - [System Architecture Overview](../system-architectures.md#zenml-pro-self-hosted-architecture) -- [Self-hosted Deployment Guide](self-hosted.md) +- [Deployment Scenarios Overview](deployments-overview.md) - [SaaS Deployment](saas-deployment.md) - [Hybrid SaaS Deployment](hybrid-deployment.md) +- [Workload Managers](workload-managers.md) +- [Self-hosted Deployment Guide](self-hosted.md) - [Security & Compliance](README.md#security--compliance) ## Get Started diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 58ca8edb2f2..8bb03387f88 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -124,12 +124,19 @@ All ZenML Pro deployments include: For software deployed on customer infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +## Running Pipelines from the Dashboard + +All deployment scenarios support running pipeline snapshots from the dashboard through [workload managers](workload-managers.md). Workload managers are built into the ZenML Pro server and can be configured to orchestrate pipeline execution on your Kubernetes cluster, AWS ECS, or GCP infrastructure. + +Learn more: [Understanding Workload Managers](workload-managers.md) + ## Next Steps - **Ready to start?** [Choose SaaS Deployment](saas-deployment.md) - **Need metadata control?** [Set up Hybrid Deployment](hybrid-deployment.md) - **Require complete isolation?** [Configure Air-gapped Deployment](air-gapped-deployment.md) - **Deploying on your own infrastructure?** [See Self-hosted Deployment Guide](self-hosted.md) +- **Want to run pipelines from the dashboard?** [Configure Workload Managers](workload-managers.md) {% hint style="info" %} Not sure which option is right for you? [Book a call](https://www.zenml.io/book-your-demo) with our team to discuss your specific requirements. diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index a165710637e..68fd796a5fa 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -417,8 +417,10 @@ A workspace deep copy feature for migrating pipelines and artifacts between work ## Related Resources - [System Architecture Overview](../system-architectures.md#zenml-pro-hybrid-saas) +- [Deployment Scenarios Overview](deployments-overview.md) - [SaaS Deployment](saas-deployment.md) - [Air-gapped Deployment](air-gapped-deployment.md) +- [Workload Managers](workload-managers.md) - [Self-hosted Deployment Guide](self-hosted.md) - [Workspaces](workspaces.md) - [Organizations](organization.md) diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index a6ff2e03e0c..794b76d82ab 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -236,8 +236,10 @@ Need help with migration? Our support team can assist. ## Related Resources - [System Architecture Overview](../system-architectures.md#zenml-pro-saas-architecture) +- [Deployment Scenarios Overview](deployments-overview.md) - [Hybrid SaaS Deployment](hybrid-deployment.md) - [Air-gapped Deployment](air-gapped-deployment.md) +- [Workload Managers](workload-managers.md) - [Security & Compliance](README.md#security--compliance) ## Get Started diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index 03754aff33e..b5a77539e22 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -19,6 +19,7 @@ * [Workspaces](workspaces.md) * [Projects](projects.md) * [Teams](teams.md) +* [Workload Managers](workload-managers.md) ## Access Management diff --git a/docs/book/getting-started/zenml-pro/workload-managers.md b/docs/book/getting-started/zenml-pro/workload-managers.md new file mode 100644 index 00000000000..ba8d295109f --- /dev/null +++ b/docs/book/getting-started/zenml-pro/workload-managers.md @@ -0,0 +1,388 @@ +--- +description: Understand workload managers and how they enable running pipelines from the dashboard. +--- + +# Workload Managers + +Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the dashboard by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. + +This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Air-gapped). + +## Architecture + +The ZenML Pro server container includes workload manager implementations. You configure which implementation to use through environment variables passed to the server. The server then uses that implementation to coordinate pipeline execution with your infrastructure. + +### Execution Flow + +1. **User triggers a snapshot from the dashboard**: You select a pipeline snapshot and click "Run" in the ZenML Cloud interface. +2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Air-gapped) receives the execution request. +3. **Workload manager implementation handles orchestration**: The configured workload manager implementation (Kubernetes, AWS, or GCP) translates the request into infrastructure-specific commands. +4. **Runner pod/task is created**: The workload manager creates a Kubernetes pod, ECS task, or equivalent compute unit on your infrastructure. +5. **Pipeline executes**: The runner pulls the pipeline code, executes the steps, and streams logs back to the workspace. +6. **Results are captured**: Artifacts, metrics, and run metadata are stored in your configured artifact store and metadata backend. + +## How Workload Managers Are Configured + +Workload managers are enabled by setting environment variables on the ZenML Pro server container. Each implementation requires a specific set of environment variables that tell the server: + +- Which workload manager implementation to use +- Where to create runner pods/tasks (namespace, cluster, region) +- How to access container registries and storage +- What permissions and resources runners should have + +All configuration happens within a single server deployment—no separate services are needed. + +## Supported Implementations + +ZenML Pro supports three workload manager implementations: + +### 1. Kubernetes Workload Manager + +The simplest implementation, suitable for any Kubernetes cluster (EKS, GKE, AKS, self-managed). + +**Environment Variables:** + +```yaml +ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager +ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager +ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner +ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:0.73.0 +ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "500m", "memory": "512Mi"}, "limits": {"cpu": "2000m", "memory": "2Gi"}}' +ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 +ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 +``` + +**Requirements:** +- Kubernetes cluster (1.24+) +- Service account with permissions to create/manage pods in a dedicated namespace +- Network connectivity from cluster to your ZenML server +- Access to a container registry with ZenML runner images + +**How it works:** +- The server uses the Kubernetes API to create pods in the specified namespace +- Pods run under the specified service account, inheriting cluster network access +- Completed pods are automatically cleaned up after the TTL expires + +**Use cases:** +- Self-managed ZenML servers on Kubernetes (Hybrid or Air-gapped) +- Teams already running Kubernetes infrastructure +- Minimal setup complexity + +### 2. AWS Kubernetes Workload Manager + +A specialized implementation for EKS that integrates with AWS services (ECR for images, S3 for logs, IAM for permissions). + +**Environment Variables:** + +```yaml +ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.aws_kubernetes_workload_manager.AWSKubernetesWorkloadManager +ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager +ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner +ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" +ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: +ZENML_KUBERNETES_WORKLOAD_MANAGER_ENABLE_EXTERNAL_LOGS: "true" +ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_BUCKET: s3://your-bucket/zenml-logs +ZENML_AWS_KUBERNETES_WORKLOAD_MANAGER_REGION: us-east-1 +ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "500m", "memory": "512Mi"}, "limits": {"cpu": "2000m", "memory": "2Gi"}}' +ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 +ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 +``` + +**Requirements:** +- EKS cluster +- IAM role for the workspace with permissions to access EKS, ECR, and S3 +- Docker registry (ECR) for storing runner images +- S3 bucket for exporting logs + +**How it works:** +- The server assumes an IAM role to access AWS services +- Runner images are stored and pulled from ECR +- Pod permissions are managed through IAM roles for service accounts (IRSA) +- Logs are streamed to S3 for long-term retention and analysis + +**Use cases:** +- AWS-centric environments with EKS +- Need for image building and custom runner management +- Centralized log aggregation in S3 +- Fine-grained IAM-based access control + +### 3. GCP Kubernetes Workload Manager + +Similar to AWS implementation but integrated with GCP services (GCR for images, Cloud Logging for logs). + +**Environment Variables:** + +```yaml +ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.gcp_kubernetes_workload_manager.GCPKubernetesWorkloadManager +ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager +ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner +ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" +ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: +ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "500m", "memory": "512Mi"}, "limits": {"cpu": "2000m", "memory": "2Gi"}}' +ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 +ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 +``` + +**Requirements:** +- GKE cluster +- Service account with permissions to access GKE, GCR, and Cloud Logging +- Docker registry (GCR) for storing runner images + +**How it works:** +- The server authenticates to GCP using a service account +- Runner images are stored and pulled from GCR +- Pod permissions are managed through Workload Identity +- Logs are automatically sent to Cloud Logging + +**Use cases:** +- GCP-centric environments with GKE +- Leveraging GCP's managed services and Cloud Logging +- Integration with Google Cloud monitoring and observability tools + +## IAM Permissions and Service Accounts + +Proper permission configuration is critical for workload managers to function correctly. The ZenML Pro server needs sufficient permissions to create and manage runner pods without being overly permissive. + +### Kubernetes Service Account + +For Kubernetes-based implementations, the server uses a Kubernetes service account to interact with your cluster. + +**Required RBAC permissions:** +- Create pods in the designated namespace +- Get/list pods (for monitoring runner status) +- Delete pods (for cleanup after runs complete) +- Get pod logs +- Create, get, patch, delete persistent volume claims (if using persistent storage) +- Get secrets in the namespace (for accessing runner credentials) + +**Example RBAC role:** + +```yaml +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: zenml-workload-manager + namespace: zenml-workload-manager +rules: +- apiGroups: [""] + resources: ["pods"] + verbs: ["create", "get", "list", "delete", "patch"] +- apiGroups: [""] + resources: ["pods/logs"] + verbs: ["get"] +- apiGroups: [""] + resources: ["secrets"] + verbs: ["get"] +- apiGroups: [""] + resources: ["persistentvolumeclaims"] + verbs: ["create", "get", "delete"] +``` + +### AWS IAM Role + +For AWS-based implementations, the ZenML Pro server container needs an IAM role (typically via IRSA—IAM roles for service accounts) to access EKS and related AWS services. + +**Required permissions:** + +**EKS cluster access:** +- `eks:DescribeCluster` - Retrieve cluster details +- `eks:ListClusters` - List available clusters + +**Pod creation and management (via Kubernetes API using IRSA):** +- The IAM role must be associated with a Kubernetes service account +- The role is assumed by pods running under that service account +- This allows the ZenML server to access the Kubernetes API + +**ECR (if building images):** +- `ecr:DescribeRepositories` - List image repositories +- `ecr:BatchCheckLayerAvailability` - Check for existing layers +- `ecr:GetDownloadUrlForLayer` - Download layer data +- `ecr:BatchGetImage` - Retrieve images +- `ecr:PutImage` - Push images to registry + +**S3 (for log export):** +- `s3:PutObject` - Write logs to bucket +- `s3:GetObject` - Read logs from bucket +- `s3:ListBucket` - List log files + +**Example IAM policy:** + +```json +{ + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Action": [ + "eks:DescribeCluster", + "eks:ListClusters" + ], + "Resource": "*" + }, + { + "Effect": "Allow", + "Action": [ + "ecr:GetDownloadUrlForLayer", + "ecr:BatchGetImage", + "ecr:PutImage", + "ecr:DescribeRepositories" + ], + "Resource": "arn:aws:ecr:region:account:repository/zenml-*" + }, + { + "Effect": "Allow", + "Action": [ + "s3:PutObject", + "s3:GetObject", + "s3:ListBucket" + ], + "Resource": [ + "arn:aws:s3:::your-log-bucket", + "arn:aws:s3:::your-log-bucket/*" + ] + } + ] +} +``` + +### GCP Service Account + +For GCP-based implementations, the ZenML Pro server uses a GCP service account with appropriate roles. + +**Required roles:** +- `roles/container.developer` - Access to create and manage pods in GKE +- `roles/storage.admin` (or more restrictive) - Access to GCR for image operations +- `roles/logging.logWriter` - Write logs to Cloud Logging + +**Permissions by service:** + +**GKE pod management:** +- `container.operations.create` +- `container.operations.get` +- `container.pods.create` +- `container.pods.get` +- `container.pods.list` +- `container.pods.delete` + +**GCR image access:** +- `storage.buckets.get` +- `storage.objects.create` +- `storage.objects.get` +- `storage.objects.list` +- `storage.objects.delete` + +**Cloud Logging:** +- `logging.logEntries.create` + +## General Considerations + +When configuring workload managers, keep these factors in mind: + +### Network Connectivity + +- **Egress from server to Kubernetes API**: The ZenML Pro server must have network access to your Kubernetes cluster's API server (port 6443 by default) +- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Air-gapped, port 443) +- **Artifact storage access**: Runners need network access to your artifact store (S3, GCS, Azure Blob, local NFS, etc.) +- **Metadata backend access**: Runners need to reach your database for metadata operations +- **Container registry access**: Runners need to pull images from your container registry + +For air-gapped deployments, ensure all dependencies are available internally: +- Private container registry with runner images +- Internal artifact storage accessible from runners +- Internal database (no external connectivity required) +- Kubernetes API accessible from the server container + +### Resource Configuration + +Configure appropriate resources for runner pods: + +- **CPU requests/limits**: Depends on pipeline complexity; start with 500m requests and 2000m limits, adjust based on workload profiling +- **Memory requests/limits**: Typical range is 512Mi to 2Gi; larger for data-intensive workloads +- **Ephemeral storage**: Consider temporary storage for intermediate pipeline data +- **Pod disruption budget**: For production deployments, define minimum available pods to prevent service disruption + +The `ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES` environment variable controls these settings for all runner pods. + +### Image Management + +Runner pods need access to container images: + +- **Pre-built images**: ZenML provides official runner images in its public ECR registry (715803424590.dkr.ecr.eu-central-1.amazonaws.com) +- **Custom images**: For air-gapped setups, pull images into your private registry before deployment +- **Image pull secrets**: Configure if your registry requires authentication +- **Regular updates**: Keep runner images up-to-date for security and compatibility +- **Image building**: For AWS and GCP implementations, set `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true"` to allow the server to build custom images + +### Logging and Observability + +- **Log collection**: Logs can be streamed to S3 (AWS), Cloud Logging (GCP), or local storage +- **Monitoring**: Use your infrastructure's native monitoring (CloudWatch, Cloud Monitoring, Prometheus) +- **Pod events**: Kubernetes events track pod creation, scheduling, and termination +- **Execution tracing**: ZenML captures step-level execution metadata for debugging +- **Enable external logs**: Use `ZENML_KUBERNETES_WORKLOAD_MANAGER_ENABLE_EXTERNAL_LOGS: "true"` for AWS implementation + +### Isolation and Security + +- **Namespace isolation**: Use dedicated namespaces (e.g., `zenml-workload-manager`) to separate runner pods from other workloads +- **Pod security policies**: Apply network policies to restrict pod communication +- **Secret management**: Use Kubernetes secrets or cloud-native secret managers for runner credentials +- **Service account scoping**: Limit workspace permissions to only what's needed for runner management +- **Image scanning**: Scan runner images for vulnerabilities before deployment +- **RBAC enforcement**: Ensure Kubernetes RBAC policies prevent unauthorized pod creation + +### Scaling and Concurrency + +Configure limits to prevent resource exhaustion: + +- **Concurrent runs**: Set `ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS` to limit simultaneous executions (typical: 2-10 depending on runner resources and cluster capacity) +- **TTL for completed pods**: Clean up finished pods automatically using `ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED` (e.g., 86400 seconds = 24 hours) +- **Pod disruption budgets**: For HA setups, define minimum available pods to ensure service continuity +- **Horizontal Pod Autoscaler (HPA)**: For the ZenML server itself (not runners), consider HPA if handling many concurrent run submissions + +### Troubleshooting Common Issues + +**Pods fail to start:** +- Check RBAC permissions for the service account: `kubectl auth can-i create pods --as=system:serviceaccount:zenml-workload-manager:zenml-runner -n zenml-workload-manager` +- Verify image pull secrets if using private registries +- Check resource availability (CPU, memory) in cluster +- Review pod events: `kubectl describe pod -n zenml-workload-manager` +- Check server logs for workload manager errors: `kubectl logs -n zenml-workspace deployment/zenml` + +**Logs not appearing:** +- Verify server can reach artifact store and database +- Check network connectivity between cluster and server +- Ensure S3/Cloud Logging permissions are correct +- Review pod logs for pipeline execution errors: `kubectl logs -n zenml-workload-manager` + +**Server can't reach cluster:** +- Verify network connectivity to Kubernetes API server +- Check credentials/RBAC permissions (especially for Hybrid deployments with OAuth2) +- Confirm service account role bindings are in place +- Test cluster connectivity: `kubectl cluster-info` + +**Runners can't reach server:** +- Verify egress network policies allow outbound HTTPS (port 443) +- Check firewall rules for ingress/egress to ZenML server +- Confirm server URL is resolvable and reachable from pods +- Test from pod: `kubectl run -it --rm debug --image=curlimages/curl --restart=Never -- curl https:///health` + +## Next Steps + +- [Set up workload managers in Hybrid deployments](hybrid-deployment-helm.md#step-7-optional-enable-snapshot-support--workload-manager) +- [Configure workload managers in Air-gapped environments](air-gapped-deployment-helm.md#step-13-optional-enable-snapshot-support--workload-manager) +- [Learn about pipeline snapshots](https://docs.zenml.io/concepts/snapshots) + +## Related Resources + +**Deployment & Infrastructure:** +- [Deployment Scenarios Overview](deployments-overview.md) - Compare SaaS, Hybrid, and Air-gapped options +- [Hybrid SaaS Deployment](hybrid-deployment.md) - Balance control with convenience +- [Air-gapped Deployment](air-gapped-deployment.md) - Complete control and data sovereignty +- [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference + +**Core Concepts:** +- [Workspaces](workspaces.md) - Isolated environments for teams and projects +- [Organizations](organization.md) - Top-level entity for managing users and teams +- [Roles & Permissions](roles.md) - Control access to workload manager configuration + +
ZenML Scarf
From 27a608f2c982710f7ef37fe07abd267df84e15c0 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 01:13:04 +0100 Subject: [PATCH 08/28] Adjusted cards --- docs/book/getting-started/zenml-pro/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index ab3d5aa9e49..b8e61e1b73f 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -63,4 +63,4 @@ For software deployed on customer infrastructure (Hybrid and Air-gapped scenario ## Pro Feature Details -
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacesprojects.md
Workload ManagersEnable running pipelines from the dashboardworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Air-gapped deploymentspro-self-host.pngself-hosted.md
+
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacespro-projects.pngprojects.md
Workload ManagersEnable running pipelines from the dashboardpro-workload-managers.pngworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Air-gapped deploymentspro-self-host.pngself-hosted.md
From b67b31bbe617622d048de121758bc0214955473a Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 10:26:47 +0100 Subject: [PATCH 09/28] Some streamlining --- docs/book/getting-started/zenml-pro/README.md | 2 +- .../zenml-pro/air-gapped-deployment.md | 4 ++-- .../zenml-pro/deployments-overview.md | 21 +++++++++---------- .../zenml-pro/hybrid-deployment.md | 6 +++--- .../zenml-pro/saas-deployment.md | 8 +++---- 5 files changed, 20 insertions(+), 21 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index b8e61e1b73f..f613a15045d 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -59,7 +59,7 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on customer infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Pro Feature Details diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md index 94f035063dc..1a772932f26 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md +++ b/docs/book/getting-started/zenml-pro/air-gapped-deployment.md @@ -30,8 +30,8 @@ In an air-gapped deployment, every component of ZenML Pro runs within your isola | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | | **Identity Provider** | Your Infrastructure | Handles authentication (OIDC/LDAP/SAML) | | **Pro Dashboard** | Your Infrastructure | Web interface for all ZenML Pro features | -| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | -| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Complete Isolation diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 8bb03387f88..47fde1f7e86 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -21,13 +21,12 @@ ZenML Pro offers three flexible deployment options to match your organization's | Deployment Aspect | SaaS | Hybrid SaaS | Air-gapped | |-------------------|------|-------------|------------| -| **ZenML Server** | ZenML infrastructure | Customer infrastructure | Customer infrastructure | -| **Control Plane** | ZenML infrastructure | ZenML infrastructure | Customer infrastructure | -| **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Customer infrastructure | Customer infrastructure | -| **Compute & Data** | Customer infrastructure | Customer infrastructure | Customer infrastructure | +| **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | +| **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | +| **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Your infrastructure | Your infrastructure | +| **Compute & Data** | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | | **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | -| **Production Ready** | Minutes | Hours | Hours | | **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and air-gapped environments | ## Which Scenario is Right for You? @@ -39,7 +38,7 @@ Choose **SaaS** if you want to get started immediately with zero infrastructure **What runs where:** - ZenML Server: ZenML infrastructure - Metadata and RBAC: ZenML infrastructure -- Compute and Data: Customer infrastructure +- Compute and Data: [Your infrastructure](https://docs.zenml.io/stacks) **Key Benefits:** - ⚡ Fastest setup (minutes) @@ -57,10 +56,10 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure **What runs where:** - ZenML Management Plane: ZenML infrastructure -- ZenML Server: Customer infrastructure +- ZenML Server: Your infrastructure - RBAC: ZenML infrastructure -- Run metadata: Customer infrastructure -- Compute and Data: Customer infrastructure +- Run metadata: Your infrastructure +- Compute and Data: [Your infrastructure](https://docs.zenml.io/stacks) **Key Benefits:** - 🔐 Metadata stays in your infrastructure @@ -77,7 +76,7 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure Choose **Air-gapped** if you need complete control with no external dependencies. **What runs where:** -- All components: Customer infrastructure (completely isolated) +- All components: [Your infrastructure](https://docs.zenml.io/stacks) (completely isolated) **Key Benefits:** - 🔒 Complete data sovereignty @@ -122,7 +121,7 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on customer infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Running Pipelines from the Dashboard diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index 68fd796a5fa..7899e78796c 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -27,8 +27,8 @@ The Hybrid deployment model is designed for organizations that need to keep sens | **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | | **Metadata Store** | Your Infrastructure | Stores all pipeline runs, model metadata, and tracking information | | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | -| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | -| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Data Flow @@ -341,7 +341,7 @@ ZenML provides: ## Security Documentation -For software deployed on customer infrastructure, ZenML provides: +For software deployed on your infrastructure, ZenML provides: - **Vulnerability Assessment Reports**: Comprehensive security analysis available on request - **Software Bill of Materials (SBOM)**: Complete dependency inventory for compliance diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index 794b76d82ab..a8c2a229ae2 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -27,8 +27,8 @@ In a SaaS deployment, ZenML manages all server infrastructure while your sensiti | **Pro Control Plane** | ZenML Infrastructure | Handles authentication, RBAC, and workspace management | | **Metadata Store** | ZenML Infrastructure | Stores pipeline runs, model metadata, and tracking information | | **Secrets Store** | ZenML Infrastructure (default) | Stores credentials for accessing your infrastructure | -| **Compute Resources** | Your Infrastructure | Executes pipeline steps and training jobs | -| **Data & Artifacts** | Your Infrastructure | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Data Flow @@ -46,7 +46,7 @@ In a SaaS deployment, ZenML manages all server infrastructure while your sensiti - The relevant pipeline/step code is executed 5. **Runtime Data Flow**: During execution: - Pipeline and step run metadata is logged to the ZenML workspace and persisted there - - Logs are streamed to your customer log backend + - Logs are streamed to your log backend - Artifacts are written to your artifact store - Metadata pointing to these artifacts is persisted in the ZenML workspace 6. **Observability**: The ZenML dashboard connects to the ZenML server and uses all persisted metadata to provide you with a complete observability plane @@ -173,7 +173,7 @@ View your pipeline runs, artifacts, and models in the ZenML Pro dashboard with f ## Security Documentation -For software deployed on customer infrastructure, ZenML provides: +For software deployed on your infrastructure, ZenML provides: - **Vulnerability Assessment Reports**: Comprehensive security analysis available on request - **Software Bill of Materials (SBOM)**: Complete dependency inventory for compliance From 53fd01f4bdf000564fdc29d7dcb73f2b9032502b Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 2 Dec 2025 14:47:42 +0100 Subject: [PATCH 10/28] Adjusted naming self-hosted --- docs/book/getting-started/zenml-pro/README.md | 8 ++--- .../zenml-pro/deployments-overview.md | 25 ++++++++------- .../zenml-pro/hybrid-deployment.md | 4 +-- ...ent-helm.md => on-prem-deployment-helm.md} | 2 +- ...ed-deployment.md => on-prem-deployment.md} | 32 +++++++++---------- .../zenml-pro/saas-deployment.md | 4 +-- .../getting-started/zenml-pro/self-hosted.md | 2 +- docs/book/getting-started/zenml-pro/toc.md | 2 +- .../zenml-pro/workload-managers.md | 19 +++++------ 9 files changed, 50 insertions(+), 48 deletions(-) rename docs/book/getting-started/zenml-pro/{air-gapped-deployment-helm.md => on-prem-deployment-helm.md} (99%) rename docs/book/getting-started/zenml-pro/{air-gapped-deployment.md => on-prem-deployment.md} (88%) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index f613a15045d..ca4597e4baf 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -39,14 +39,14 @@ To try ZenML Pro or to learn more [book a call](https://www.zenml.io/book-your-d | **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the dashboard, manage schedules via UI, [triggers](https://docs.zenml.io/concepts/triggers) | | **Stack Configuration** | User-managed stacks | Advanced stack configurations with workspace/project-level restrictions for platform teams | | **Security** | Community updates | Prioritized security patches, SOC 2 and ISO 27001 certification | -| **Deployment** | Self-hosted only | [SaaS](#saas-deployment), [Hybrid SaaS](#hybrid-saas-deployment), or [Air-gapped](#air-gapped-deployment) options | +| **Deployment** | Self-hosted only | [SaaS](#saas-deployment), [Hybrid SaaS](#hybrid-saas-deployment), or [Full On-Prem](#full-on-prem-deployment) options | | **Support** | Community support | Professional support included (SaaS deployments) | | **Reporting** | Basic run tracking | Advanced usage reports and analytics | | **Core Features** | ✅ Run pipelines on stacks
✅ Full observability over runs
✅ Artifact tracking
✅ Model versioning | ✅ All OSS features
✅ [Run Snapshots](https://docs.zenml.io/concepts/snapshots)
✅ Enhanced filtering and search | ## Deployment Scenarios -ZenML Pro offers three flexible deployment options to match your organization's needs: **SaaS**, **Hybrid**, and **Air-gapped**. +ZenML Pro offers three flexible deployment options to match your organization's needs: **SaaS**, **Hybrid**, and **Full On-Prem**. [Explore all deployment scenarios →](deployments-overview.md) @@ -59,8 +59,8 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on your infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Pro Feature Details -
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacespro-projects.pngprojects.md
Workload ManagersEnable running pipelines from the dashboardpro-workload-managers.pngworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Air-gapped deploymentspro-self-host.pngself-hosted.md
+
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacespro-projects.pngprojects.md
Workload ManagersEnable running pipelines from the dashboardpro-workload-managers.pngworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Full On-Prem deploymentspro-self-host.pngself-hosted.md
diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 47fde1f7e86..22fa101b369 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -1,5 +1,6 @@ --- description: Compare ZenML Pro deployment scenarios to find the right fit for your organization. +icon: code-merge layout: title: visible: true @@ -19,7 +20,7 @@ ZenML Pro offers three flexible deployment options to match your organization's ## Quick Comparison -| Deployment Aspect | SaaS | Hybrid SaaS | Air-gapped | +| Deployment Aspect | SaaS | Hybrid SaaS | Full On-Prem | |-------------------|------|-------------|------------| | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | @@ -27,7 +28,7 @@ ZenML Pro offers three flexible deployment options to match your organization's | **Compute & Data** | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | | **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | -| **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and air-gapped environments | +| **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and on-premises control | ## Which Scenario is Right for You? @@ -46,7 +47,7 @@ Choose **SaaS** if you want to get started immediately with zero infrastructure - 🚀 Immediate production readiness - 💰 Minimal operational overhead -**Ideal for:** Startups, teams with high trust in ZenML infrastructure, organizations prioritizing speed-to-value over infrastructure control. +**Ideal for:** Startups, teams prioritizing time-to-value and operational simplicity, organizations comfortable leveraging managed cloud services. [Learn more about SaaS deployment →](saas-deployment.md) @@ -71,9 +72,9 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure [Learn more about Hybrid deployment →](hybrid-deployment.md) -### Air-gapped Deployment +### Full On-Prem Deployment -Choose **Air-gapped** if you need complete control with no external dependencies. +Choose **Full On-Prem** if you need complete control with no external dependencies. **What runs where:** - All components: [Your infrastructure](https://docs.zenml.io/stacks) (completely isolated) @@ -86,7 +87,7 @@ Choose **Air-gapped** if you need complete control with no external dependencies **Ideal for:** Regulated industries (healthcare, finance), government organizations, enterprises with strict data residency requirements, environments requiring offline operation. -[Learn more about Air-gapped deployment →](air-gapped-deployment.md) +[Learn more about Full On-Prem deployment →](air-gapped-deployment.md) ## Making Your Choice @@ -95,22 +96,22 @@ Consider these factors when deciding: 1. **Data Location Requirements**: Where must your ML metadata and run data reside? - Cloud-hosted is acceptable → **SaaS** - Must stay in your infrastructure → **Hybrid** - - Must be completely isolated/air-gapped → **Air-gapped** + - Must be completely isolated on-premises → **Full On-Prem** 2. **Infrastructure Complexity**: How much infrastructure control do you want? - Minimal → **SaaS** - Moderate → **Hybrid** - - Full control → **Air-gapped** + - Full control → **Full On-Prem** 3. **Time to Value**: How quickly do you need to be productive? - Within 1 hour → **SaaS** - Within 4 hours → **Hybrid** - - Within 8 hours (or longer planning period) → **Air-gapped** + - Within 8 hours (or longer planning period) → **Full On-Prem** 4. **Compliance Requirements**: What regulations apply to your organization? - General business → **SaaS** - Data residency rules → **Hybrid** - - Strict isolation requirements → **Air-gapped** + - Strict isolation requirements → **Full On-Prem** ## Security & Compliance @@ -121,7 +122,7 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on your infrastructure (Hybrid and Air-gapped scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Running Pipelines from the Dashboard @@ -133,7 +134,7 @@ Learn more: [Understanding Workload Managers](workload-managers.md) - **Ready to start?** [Choose SaaS Deployment](saas-deployment.md) - **Need metadata control?** [Set up Hybrid Deployment](hybrid-deployment.md) -- **Require complete isolation?** [Configure Air-gapped Deployment](air-gapped-deployment.md) +- **Require complete isolation?** [Configure Full On-Prem Deployment](air-gapped-deployment.md) - **Deploying on your own infrastructure?** [See Self-hosted Deployment Guide](self-hosted.md) - **Want to run pipelines from the dashboard?** [Configure Workload Managers](workload-managers.md) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index 7899e78796c..cc4dd304617 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -372,7 +372,7 @@ Contact [cloud@zenml.io](mailto:cloud@zenml.io) to request security documentatio ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Air-gapped | +| Feature | SaaS | Hybrid SaaS | Full On-Prem | |---------|------|-------------|------------| | Setup Time | Minutes | Hours to Days | Days to Weeks | | Metadata Location | ZenML Infra | Your Infra | Your Infra | @@ -419,7 +419,7 @@ A workspace deep copy feature for migrating pipelines and artifacts between work - [System Architecture Overview](../system-architectures.md#zenml-pro-hybrid-saas) - [Deployment Scenarios Overview](deployments-overview.md) - [SaaS Deployment](saas-deployment.md) -- [Air-gapped Deployment](air-gapped-deployment.md) +- [Full On-Prem Deployment](air-gapped-deployment.md) - [Workload Managers](workload-managers.md) - [Self-hosted Deployment Guide](self-hosted.md) - [Workspaces](workspaces.md) diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md similarity index 99% rename from docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md rename to docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md index e91a94eb107..bd1fe2a1ddf 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md @@ -13,7 +13,7 @@ layout: visible: true --- -# Air-gapped Deployment on Kubernetes with Helm +# Self-hosted Deployment on Kubernetes with Helm This guide provides step-by-step instructions for deploying ZenML Pro in a fully air-gapped setup on Kubernetes using Helm charts. In an air-gapped deployment, all components run within your infrastructure with zero external dependencies. diff --git a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md b/docs/book/getting-started/zenml-pro/on-prem-deployment.md similarity index 88% rename from docs/book/getting-started/zenml-pro/air-gapped-deployment.md rename to docs/book/getting-started/zenml-pro/on-prem-deployment.md index 1a772932f26..a8bf62d0efe 100644 --- a/docs/book/getting-started/zenml-pro/air-gapped-deployment.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment.md @@ -1,19 +1,19 @@ --- -description: Learn about ZenML Pro Air-gapped deployment - complete control and data sovereignty for the strictest security requirements. +description: Learn about ZenML Pro Full On-Prem deployment - complete control and data sovereignty for the strictest security requirements. icon: shield-halved --- -# Air-gapped Deployment +# Full On-Prem Deployment -ZenML Pro Air-gapped deployment provides complete control and data sovereignty for organizations with the strictest security, compliance, or regulatory requirements. All ZenML components run entirely within your infrastructure with no external dependencies or internet connectivity required. +ZenML Pro Full On-Prem deployment provides complete control and data sovereignty for organizations with the strictest security, compliance, or regulatory requirements. All ZenML components run entirely within your infrastructure with no external dependencies or internet connectivity required. {% hint style="info" %} -To learn more about Air-gapped deployment, [book a call](https://www.zenml.io/book-your-demo). +To learn more about Full On-Prem deployment, [book a call](https://www.zenml.io/book-your-demo). {% endhint %} ## Overview -In an air-gapped deployment, every component of ZenML Pro runs within your isolated network environment. This architecture is designed for organizations that must operate in completely disconnected environments or have regulatory requirements preventing any external communication. +In a Full On-Prem deployment, every component of ZenML Pro runs within your isolated network environment. This architecture is designed for organizations that must operate in completely disconnected environments or have regulatory requirements preventing any external communication. ![ZenML Pro self-hosted deployment architecture](../../.gitbook/assets/cloud_architecture_scenario_2.png) @@ -37,7 +37,7 @@ In an air-gapped deployment, every component of ZenML Pro runs within your isola ```mermaid flowchart TB - subgraph infra["Your Infrastructure (Air-gapped)"] + subgraph infra["Your Infrastructure (Full On-Prem)"] direction TB control_plane["ZenML Pro Control Plane
- Authentication & Authorization
- RBAC Management
- Workspace Coordination
- Pro Metadata Store"] @@ -130,7 +130,7 @@ flowchart TB ## Ideal Use Cases -Air-gapped deployment is essential for: +Full On-Prem deployment is essential for: - **Government and defense** organizations with classified data requirements - **Regulated industries** (healthcare, finance) with strict data residency requirements @@ -179,9 +179,9 @@ Deploy at edge locations: ### Architecture Diagram -![Air-gapped deployment architecture](../../.gitbook/assets/air-gapped-architecture.png) +![Full On-Prem deployment architecture](../../.gitbook/assets/air-gapped-architecture.png) -The diagram above illustrates a complete air-gapped ZenML Pro deployment with all components running within your organization's VPC. This architecture ensures zero external communication while providing full enterprise MLOps capabilities. +The diagram above illustrates a complete Full On-Prem ZenML Pro deployment with all components running within your organization's VPC. This architecture ensures zero external communication while providing full enterprise MLOps capabilities. ### Architecture Components @@ -371,7 +371,7 @@ Available on request for compliance and security reviews: ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Air-gapped | +| Feature | SaaS | Hybrid SaaS | Full On-Prem | |---------|------|-------------|------------| | Internet Required | Yes (metadata) | Yes (control plane) | **No** | | Setup Time | Minutes | Hours/Days | Days/Weeks | @@ -386,9 +386,9 @@ Available on request for compliance and security reviews: ## Migration Path -### From ZenML OSS to Air-gapped Pro +### From ZenML OSS to Full On-Prem Pro -If you're interested in migrating from ZenML OSS to an air-gapped Pro deployment, we're here to help guide you through every step of the process. Migration paths are highly dependent on your specific customer environment, infrastructure setup, and current ZenML OSS deployment configuration. +If you're interested in migrating from ZenML OSS to a Full On-Prem Pro deployment, we're here to help guide you through every step of the process. Migration paths are highly dependent on your specific environment, infrastructure setup, and current ZenML OSS deployment configuration. It's possible to migrate existing stacks or even existing metadata from existing OSS deployments. We can figure out how and what to migrate together in a call. @@ -397,11 +397,11 @@ It's possible to migrate existing stacks or even existing metadata from existing - [Book a migration consultation →](https://www.zenml.io/book-your-demo) - Or email us at [cloud@zenml.io](mailto:cloud@zenml.io) -Your ZenML representative will work with you to assess your current setup, understand your air-gapped requirements, and provide a tailored migration plan that fits your environment. +Your ZenML representative will work with you to assess your current setup, understand your Full On-Prem requirements, and provide a tailored migration plan that fits your environment. ### From Other Pro Deployments -If you're moving from SaaS or Hybrid to Air-gapped, migration paths can vary significantly depending on your organization's size, data residency requirements, and current ZenML setup. We recommend discussing your plans with a ZenML solutions architect. +If you're moving from SaaS or Hybrid to Full On-Prem, migration paths can vary significantly depending on your organization's size, data residency requirements, and current ZenML setup. We recommend discussing your plans with a ZenML solutions architect. **Next steps:** @@ -414,7 +414,7 @@ Your ZenML representative will provide you with a tailored migration checklist,
-Detailed Air-gapped Deployment Architecture +Detailed Full On-Prem Deployment Architecture ZenML Pro self-hosted deployment details @@ -432,7 +432,7 @@ Your ZenML representative will provide you with a tailored migration checklist, ## Get Started -Ready to deploy ZenML Pro in an air-gapped environment? +Ready to deploy ZenML Pro in a Full On-Prem environment? [Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index a8c2a229ae2..e83fbc822f1 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -194,7 +194,7 @@ ZenML Pro SaaS includes: ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Air-gapped | +| Feature | SaaS | Hybrid SaaS | Full On-Prem | |---------|------|-------------|------------| | Setup Time | ⚡ Minutes | Hours | Days | | Maintenance | Zero | Workspace only | Full stack | @@ -238,7 +238,7 @@ Need help with migration? Our support team can assist. - [System Architecture Overview](../system-architectures.md#zenml-pro-saas-architecture) - [Deployment Scenarios Overview](deployments-overview.md) - [Hybrid SaaS Deployment](hybrid-deployment.md) -- [Air-gapped Deployment](air-gapped-deployment.md) +- [Full On-Prem Deployment](air-gapped-deployment.md) - [Workload Managers](workload-managers.md) - [Security & Compliance](README.md#security--compliance) diff --git a/docs/book/getting-started/zenml-pro/self-hosted.md b/docs/book/getting-started/zenml-pro/self-hosted.md index 766aa6bfca7..c101039b97b 100644 --- a/docs/book/getting-started/zenml-pro/self-hosted.md +++ b/docs/book/getting-started/zenml-pro/self-hosted.md @@ -68,7 +68,7 @@ By default, the ZenML OSS Helm chart uses the same container image tags as the h #### ZenML Pro Client Artifacts -If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in an air-gapped environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). +If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in a Full On-Prem environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). ### Accessing the ZenML Pro Container Images diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index b5a77539e22..99286ac9cd2 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -9,7 +9,7 @@ * [Hybrid SaaS Deployment](hybrid-deployment.md) * [Kubernetes with Helm](hybrid-deployment-helm.md) * [AWS ECS](hybrid-deployment-ecs.md) -* [Air-gapped Deployment](air-gapped-deployment.md) +* [Full On-Prem Deployment](air-gapped-deployment.md) * [Kubernetes with Helm](air-gapped-deployment-helm.md) ## Core Concepts diff --git a/docs/book/getting-started/zenml-pro/workload-managers.md b/docs/book/getting-started/zenml-pro/workload-managers.md index ba8d295109f..23160f2f571 100644 --- a/docs/book/getting-started/zenml-pro/workload-managers.md +++ b/docs/book/getting-started/zenml-pro/workload-managers.md @@ -1,12 +1,13 @@ --- description: Understand workload managers and how they enable running pipelines from the dashboard. +icon: microchip --- # Workload Managers Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the dashboard by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. -This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Air-gapped). +This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Full On-Prem). ## Architecture @@ -15,7 +16,7 @@ The ZenML Pro server container includes workload manager implementations. You co ### Execution Flow 1. **User triggers a snapshot from the dashboard**: You select a pipeline snapshot and click "Run" in the ZenML Cloud interface. -2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Air-gapped) receives the execution request. +2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Full On-Prem) receives the execution request. 3. **Workload manager implementation handles orchestration**: The configured workload manager implementation (Kubernetes, AWS, or GCP) translates the request into infrastructure-specific commands. 4. **Runner pod/task is created**: The workload manager creates a Kubernetes pod, ECS task, or equivalent compute unit on your infrastructure. 5. **Pipeline executes**: The runner pulls the pipeline code, executes the steps, and streams logs back to the workspace. @@ -64,7 +65,7 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 - Completed pods are automatically cleaned up after the TTL expires **Use cases:** -- Self-managed ZenML servers on Kubernetes (Hybrid or Air-gapped) +- Self-managed ZenML servers on Kubernetes (Hybrid or Full On-Prem) - Teams already running Kubernetes infrastructure - Minimal setup complexity @@ -281,12 +282,12 @@ When configuring workload managers, keep these factors in mind: ### Network Connectivity - **Egress from server to Kubernetes API**: The ZenML Pro server must have network access to your Kubernetes cluster's API server (port 6443 by default) -- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Air-gapped, port 443) +- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Full On-Prem, port 443) - **Artifact storage access**: Runners need network access to your artifact store (S3, GCS, Azure Blob, local NFS, etc.) - **Metadata backend access**: Runners need to reach your database for metadata operations - **Container registry access**: Runners need to pull images from your container registry -For air-gapped deployments, ensure all dependencies are available internally: +For Full On-Prem deployments, ensure all dependencies are available internally: - Private container registry with runner images - Internal artifact storage accessible from runners - Internal database (no external connectivity required) @@ -308,7 +309,7 @@ The `ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES` environment variable contr Runner pods need access to container images: - **Pre-built images**: ZenML provides official runner images in its public ECR registry (715803424590.dkr.ecr.eu-central-1.amazonaws.com) -- **Custom images**: For air-gapped setups, pull images into your private registry before deployment +- **Custom images**: For Full On-Prem setups, pull images into your private registry before deployment - **Image pull secrets**: Configure if your registry requires authentication - **Regular updates**: Keep runner images up-to-date for security and compatibility - **Image building**: For AWS and GCP implementations, set `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true"` to allow the server to build custom images @@ -369,15 +370,15 @@ Configure limits to prevent resource exhaustion: ## Next Steps - [Set up workload managers in Hybrid deployments](hybrid-deployment-helm.md#step-7-optional-enable-snapshot-support--workload-manager) -- [Configure workload managers in Air-gapped environments](air-gapped-deployment-helm.md#step-13-optional-enable-snapshot-support--workload-manager) +- [Configure workload managers in Full On-Prem environments](air-gapped-deployment-helm.md#step-13-optional-enable-snapshot-support--workload-manager) - [Learn about pipeline snapshots](https://docs.zenml.io/concepts/snapshots) ## Related Resources **Deployment & Infrastructure:** -- [Deployment Scenarios Overview](deployments-overview.md) - Compare SaaS, Hybrid, and Air-gapped options +- [Deployment Scenarios Overview](deployments-overview.md) - Compare SaaS, Hybrid, and Full On-Prem options - [Hybrid SaaS Deployment](hybrid-deployment.md) - Balance control with convenience -- [Air-gapped Deployment](air-gapped-deployment.md) - Complete control and data sovereignty +- [Full On-Prem Deployment](air-gapped-deployment.md) - Complete control and data sovereignty - [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference **Core Concepts:** From bb5cfc22a428aea1a1d9b9e6e2ffd1349c7f73be Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 09:28:03 +0100 Subject: [PATCH 11/28] Slight rewording in table --- docs/book/getting-started/zenml-pro/deployments-overview.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 22fa101b369..80c9968e82b 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -25,9 +25,9 @@ ZenML Pro offers three flexible deployment options to match your organization's | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | | **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Your infrastructure | Your infrastructure | -| **Compute & Data** | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | [Your infrastructure](https://docs.zenml.io/stacks) | +| **Compute & Data** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | -| **Maintenance** | ✅ Fully managed | Partially managed (workspace maintenance required) | Customer managed | +| **Maintenance** | Fully managed | Partially managed (workspace maintenance required) | Customer managed | | **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and on-premises control | ## Which Scenario is Right for You? From 8d705e9d0de4bb161c35721dbce61fda7c7c14c9 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 09:30:16 +0100 Subject: [PATCH 12/28] Slight rewording in table --- docs/book/getting-started/zenml-pro/deployments-overview.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 80c9968e82b..77b64bc7400 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -24,7 +24,8 @@ ZenML Pro offers three flexible deployment options to match your organization's |-------------------|------|-------------|------------| | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | -| **Metadata & RBAC** | ZenML infrastructure | RBAC: ZenML infrastructure
Run metadata: Your infrastructure | Your infrastructure | +| **Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | +| **RBAC** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | | **Compute & Data** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | | **Maintenance** | Fully managed | Partially managed (workspace maintenance required) | Customer managed | From d70df0ba2cbe08a9cc945ceb46d9504f1cc7fb11 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 10:01:36 +0100 Subject: [PATCH 13/28] Edited all the overview pages --- .../zenml-pro/deployments-overview.md | 42 ++++++++++++++++++- .../zenml-pro/hybrid-deployment.md | 37 ++++------------ .../zenml-pro/on-prem-deployment.md | 31 +++----------- .../zenml-pro/saas-deployment.md | 25 ++--------- 4 files changed, 57 insertions(+), 78 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 77b64bc7400..fb8fefc3531 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -23,8 +23,8 @@ ZenML Pro offers three flexible deployment options to match your organization's | Deployment Aspect | SaaS | Hybrid SaaS | Full On-Prem | |-------------------|------|-------------|------------| | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | +| **Pipeline/ Artifact Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | -| **Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **RBAC** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | | **Compute & Data** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | @@ -86,10 +86,48 @@ Choose **Full On-Prem** if you need complete control with no external dependenci - 🛡️ Maximum security posture - 📋 Full audit trail control -**Ideal for:** Regulated industries (healthcare, finance), government organizations, enterprises with strict data residency requirements, environments requiring offline operation. +**Ideal for:** Regulated industries (healthcare, finance, defense), government organizations, enterprises with strict data residency requirements, environments requiring offline operation. [Learn more about Full On-Prem deployment →](air-gapped-deployment.md) +## Common Pipeline Execution Data Flow + +All three deployment scenarios follow a similar pipeline execution pattern, with differences in where authentication happens and where data resides: + +### Standard Data Flow Steps + +1. **Code Execution**: You write code and run pipelines with your client SDK using Python + +2. **Token Acquisition**: The ZenML client fetches short-lived tokens from your ZenML workspace for: + - Pushing Docker images to your container registry + - Communicating with your artifact store + - Submitting workloads to your orchestrator + - *Note: Your local Python environment needs the client libraries for your stack components* + +3. **Image & Workload Submission**: The client automatically builds and pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator + +4. **Orchestrator Execution**: In the orchestrator environment: + - The Docker image is pulled from your container registry + - The necessary code is pulled in + - A connection to your ZenML workspace is established + - The relevant pipeline/step code is executed + +5. **Runtime Data Flow**: During execution: + - Pipeline and step run metadata is logged to your ZenML workspace + - Logs are streamed to your log backend + - Artifacts are written to your artifact store + - Metadata pointing to these artifacts is persisted + +6. **Observability**: The ZenML dashboard connects to your workspace and uses all persisted metadata to provide you with a complete observability plane + +### Deployment-Specific Differences + +**SaaS**: Metadata is stored in ZenML infrastructure. Your ML data and compute remain in your infrastructure. + +**Hybrid**: Metadata and control plane are split — authentication/RBAC happens at ZenML control plane, but all run metadata, artifacts, and compute stay in your infrastructure. + +**Full On-Prem**: All components (control plane, metadata, authentication, compute) run entirely within your infrastructure with zero external dependencies. + ## Making Your Choice Consider these factors when deciding: diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index cc4dd304617..6599c704b9c 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -27,32 +27,14 @@ The Hybrid deployment model is designed for organizations that need to keep sens | **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | | **Metadata Store** | Your Infrastructure | Stores all pipeline runs, model metadata, and tracking information | | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | -| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | -| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Data Flow -1. **Code Execution**: You write code and run pipelines with your client SDK using Python -2. **Authentication & Token Acquisition**: - - Users authenticate via ZenML-hosted control plane (SSO) - - The ZenML client fetches short-lived tokens from your ZenML workspace for: - - Pushing Docker images to your container registry (ECR, GCR, etc.) - - Communicating with your artifact store - - Submitting workloads to your orchestrator - - *Note: Your local Python environment needs the client libraries for your stack components* -3. **Authorization**: RBAC policies enforced by control plane before token issuance -4. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator -5. **Orchestrator Execution**: In the orchestrator environment within your infrastructure: - - The Docker image is pulled from your container registry - - Within the pipeline/step entrypoint, the necessary code is pulled in - - A connection to your ZenML workspace is established - - The relevant pipeline/step code is executed -6. **Runtime Data Flow**: During execution: - - Pipeline and step run metadata is logged to your ZenML workspace and persisted in your infrastructure - - Logs are streamed to your log backend (within your infrastructure) - - Artifacts are written to your artifact store (within your infrastructure) - - Metadata pointing to these artifacts is persisted in your workspace -7. **Observability**: The ZenML Pro dashboard connects to your workspace and uses all persisted metadata to provide you with a complete observability plane +For a detailed explanation of the common pipeline execution data flow across all deployment scenarios, see [Common Pipeline Execution Data Flow](deployments-overview.md#common-pipeline-execution-data-flow) in the Deployment Scenarios Overview. + +In Hybrid deployment, users authenticate via ZenML-hosted control plane (SSO), and RBAC policies are enforced there before token issuance. {% hint style="success" %} **Complete data sovereignty**: All metadata, secrets, and ML artifacts remain within your infrastructure. Only authentication and authorization data flows to ZenML control plane. @@ -110,13 +92,11 @@ Hybrid SaaS is perfect for: Workspaces initiate outbound-only connections to the control plane: - No inbound connections required to your infrastructure - Compatible with strict firewall policies -- Secure WebSocket communication for real-time updates -- Optional VPN tunnel support #### Multi-Workspace Isolation Each workspace can be: - Deployed in separate VPCs/networks -- Isolated per team or department +- Isolated per team or department or customer - Configured with different security policies - Managed independently by different teams @@ -229,9 +209,9 @@ Deploy workspaces across different regions while maintaining centralized control ### 1. Initial Configuration [Book a demo](https://www.zenml.io/book-your-demo) to get started. The ZenML team will: -- Set up your organization in the control plane -- Configure SSO integration +- Help set up your organization in the control plane - Establish secure communication channels +- (optional) Configure SSO integration ### 2. Workspace Deployment @@ -251,7 +231,6 @@ Deploy ZenML workspaces in your infrastructure. Workspaces can be deployed on: - **Kubernetes**: We provide officially supported Helm charts - **Non-Kubernetes environments**: We recommend using infrastructure-as-code tools like Terraform, Pulumi, or CloudFormation to manage server lifecycle -See the [self-hosted deployment guide](self-hosted.md) for detailed step-by-step instructions, infrastructure requirements, and configuration examples. ### 3. Configure Infrastructure Access diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment.md b/docs/book/getting-started/zenml-pro/on-prem-deployment.md index a8bf62d0efe..233d582efee 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment.md @@ -30,8 +30,8 @@ In a Full On-Prem deployment, every component of ZenML Pro runs within your isol | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | | **Identity Provider** | Your Infrastructure | Handles authentication (OIDC/LDAP/SAML) | | **Pro Dashboard** | Your Infrastructure | Web interface for all ZenML Pro features | -| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | -| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Complete Isolation @@ -69,30 +69,9 @@ flowchart TB ### Data Flow -1. **Code Execution**: You write code and run pipelines with your client SDK using Python -2. **Authentication & Token Acquisition**: - - Users authenticate via your internal identity provider (LDAP/AD/OIDC) - - The ZenML Pro control plane (running in your infrastructure) handles authentication and RBAC - - The ZenML client fetches short-lived tokens from your ZenML workspace for: - - Pushing Docker images to your container registry - - Communicating with your artifact store - - Submitting workloads to your orchestrator - - *Note: Your local Python environment needs the client libraries for your stack components* -3. **Authorization**: RBAC policies enforced by your control plane before token issuance -4. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator -5. **Orchestrator Execution**: In the orchestrator environment within your infrastructure: - - The Docker image is pulled from your container registry - - Within the pipeline/step entrypoint, the necessary code is pulled in - - A connection to your ZenML workspace is established - - The relevant pipeline/step code is executed -6. **Runtime Data Flow**: During execution (all within your infrastructure): - - Pipeline and step run metadata is logged to your ZenML workspace - - Logs are streamed to your log backend - - Artifacts are written to your artifact store - - Metadata pointing to these artifacts is persisted in your workspace -7. **Observability**: The ZenML Pro dashboard (running in your infrastructure) connects to your workspace and uses all persisted metadata to provide you with a complete observability plane - -**Key difference from other deployments**: All communication happens entirely within your infrastructure boundary with zero external dependencies or internet connectivity required. +For a detailed explanation of the common pipeline execution data flow across all deployment scenarios, see [Common Pipeline Execution Data Flow](deployments-overview.md#common-pipeline-execution-data-flow) in the Deployment Scenarios Overview. + +In Full On-Prem deployment, users authenticate via your internal identity provider (LDAP/AD/OIDC), and the control plane (running in your infrastructure) handles both authentication and RBAC. All communication happens entirely within your infrastructure boundary with zero external dependencies or internet connectivity required. ## Key Benefits diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index e83fbc822f1..3c77ef10254 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -27,29 +27,12 @@ In a SaaS deployment, ZenML manages all server infrastructure while your sensiti | **Pro Control Plane** | ZenML Infrastructure | Handles authentication, RBAC, and workspace management | | **Metadata Store** | ZenML Infrastructure | Stores pipeline runs, model metadata, and tracking information | | **Secrets Store** | ZenML Infrastructure (default) | Stores credentials for accessing your infrastructure | -| **Compute Resources** | [Your Infrastructure](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | -| **Data & Artifacts** | [Your Infrastructure](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | +| **Compute Resources** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | +| **Data & Artifacts** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Stores datasets, models, and pipeline artifacts | ### Data Flow -1. **Code Execution**: You write code and run pipelines with your client SDK using Python -2. **Token Acquisition**: The ZenML client fetches short-lived tokens from the ZenML server for: - - Pushing Docker images to your container registry (ECR, GCR, etc.) - - Communicating with your artifact store - - Submitting workloads to your orchestrator - - *Note: Your local Python environment needs the client libraries for your stack components* -3. **Image & Workload Submission**: The client pushes Docker images (and optionally code if no code repository is configured) to your container registry, then submits the workload to your orchestrator -4. **Orchestrator Execution**: In the orchestrator environment: - - The Docker image is pulled from your container registry - - Within the pipeline/step entrypoint, the necessary code is pulled in - - A connection to the ZenML server is established - - The relevant pipeline/step code is executed -5. **Runtime Data Flow**: During execution: - - Pipeline and step run metadata is logged to the ZenML workspace and persisted there - - Logs are streamed to your log backend - - Artifacts are written to your artifact store - - Metadata pointing to these artifacts is persisted in the ZenML workspace -6. **Observability**: The ZenML dashboard connects to the ZenML server and uses all persisted metadata to provide you with a complete observability plane +For a detailed explanation of the common pipeline execution data flow across all deployment scenarios, see [Common Pipeline Execution Data Flow](deployments-overview.md#common-pipeline-execution-data-flow) in the Deployment Scenarios Overview. {% hint style="success" %} **Your ML data never leaves your infrastructure.** Only metadata about runs and pipelines is stored on ZenML infrastructure. @@ -111,7 +94,7 @@ For organizations with strict security requirements, you can configure ZenML to ![SaaS with customer secret store](../../.gitbook/assets/cloud_architecture_saas_detailed_2.png) -This keeps all credentials within your infrastructure while still benefiting from managed ZenML services. +This keeps all credentials within your infrastructure while still benefiting from managed ZenML services - [Book a call](https://www.zenml.io/book-your-demo) with us if you want this set up. ## Network Architecture From b33baea13ffbcb83390c0ba465c5edee73350fd3 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 10:20:59 +0100 Subject: [PATCH 14/28] Fixed renaming leftovers --- .../book/getting-started/zenml-pro/hybrid-deployment-helm.md | 5 +++-- docs/book/getting-started/zenml-pro/toc.md | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md index 0cc01e426cb..20b31b290ef 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md @@ -46,13 +46,14 @@ kubectl create namespace zenml-hybrid ## Step 3: Create Secrets for Credentials -Create a secret for your Pro OAuth2 credentials: +Create a secret for your Pro OAuth2 credentials. Ask you ZenML Solutions Architect to send you this secret.: ```bash kubectl -n zenml-hybrid create secret generic zenml-pro-credentials \ --from-literal=ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET= ``` + If using a custom TLS certificate (self-signed or from a CA), create a secret: ```bash @@ -108,7 +109,7 @@ zenml: # Image Configuration image: repository: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server - tag: "0.73.0" # Match your ZenML version + tag: "0.92.0" # Match your ZenML version pullPolicy: IfNotPresent # Ingress Configuration diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index 99286ac9cd2..9a8368ec0e8 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -9,8 +9,8 @@ * [Hybrid SaaS Deployment](hybrid-deployment.md) * [Kubernetes with Helm](hybrid-deployment-helm.md) * [AWS ECS](hybrid-deployment-ecs.md) -* [Full On-Prem Deployment](air-gapped-deployment.md) - * [Kubernetes with Helm](air-gapped-deployment-helm.md) +* [Full On-Prem Deployment](on-prem-deployment.md) + * [Kubernetes with Helm](on-prem-deployment-helm.md) ## Core Concepts From 700a65c9b8c0c2131a969ebaf173d3371ba70185 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 11:28:56 +0100 Subject: [PATCH 15/28] Update docs/book/getting-started/zenml-pro/saas-deployment.md Co-authored-by: Hamza Tahir --- docs/book/getting-started/zenml-pro/saas-deployment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index 3c77ef10254..7eb20c8ceb5 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -8,7 +8,7 @@ icon: cloud ZenML Pro SaaS is the fastest and easiest way to get started with enterprise-grade MLOps. With zero infrastructure setup required, you can be running production pipelines within minutes while maintaining full control over your data and compute resources. {% hint style="info" %} -To try ZenML Pro SaaS or to learn more, [book a call](https://www.zenml.io/book-your-demo). +To get access to ZenML Pro, [book a call](https://www.zenml.io/book-your-demo). {% endhint %} ## Overview From 21eb029c8005cb940b0f78302adc9bc7b40e55da Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 11:46:58 +0100 Subject: [PATCH 16/28] Implemented some pr comments --- docs/book/getting-started/zenml-pro/README.md | 4 +- .../zenml-pro/saas-deployment.md | 42 +------------------ 2 files changed, 4 insertions(+), 42 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index ca4597e4baf..9f15f52f353 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -25,7 +25,7 @@ The [Pro version of ZenML](https://zenml.io/pro) extends the Open Source product ![Walkthrough of ZenML Model Control Plane](../../.gitbook/assets/mcp-walkthrough.gif) {% hint style="info" %} -To try ZenML Pro or to learn more [book a call](https://www.zenml.io/book-your-demo). +To get access to ZenML Pro, [book a call](https://www.zenml.io/book-your-demo). {% endhint %} ## ZenML OSS vs Pro Feature Comparison @@ -35,7 +35,7 @@ To try ZenML Pro or to learn more [book a call](https://www.zenml.io/book-your-d | **User Management** | Single-user mode | Multi-user support with [SSO](self-hosted.md#identity-provider), [organizations](organization.md), and [teams](teams.md) | | **Access Control** | No RBAC | Full [role-based access control](roles.md) with customizable permissions | | **Multi-tenancy** | No workspaces/projects | [Workspaces](workspaces.md) and [projects](projects.md) for team and resource isolation | -| **Dashboard** | Basic pipeline and run visualization | Pro dashboard with [Model Control Plane](https://docs.zenml.io/user-guides/starter-guide/track-ml-models), [Artifact Control Plane](https://docs.zenml.io/user-guides/starter-guide/manage-artifacts), and comparison views | +| **Dashboard** | Basic pipeline and run visualization | Pro dashboard with [Model Control Plane](https://docs.zenml.io/concepts/models), [Artifact Control Plane](https://docs.zenml.io/concepts/artifacts), and comparison views | | **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the dashboard, manage schedules via UI, [triggers](https://docs.zenml.io/concepts/triggers) | | **Stack Configuration** | User-managed stacks | Advanced stack configurations with workspace/project-level restrictions for platform teams | | **Security** | Community updates | Prioritized security patches, SOC 2 and ISO 27001 certification | diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index 3c77ef10254..54b4c6eb94a 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -128,31 +128,7 @@ Configure access to your cloud infrastructure: - Configure compute resources (AWS, GCP, Azure, or Kubernetes) - Provide necessary credentials via secrets -### 3. Create Your First Pipeline - -```python -from zenml import pipeline, step - -@step -def load_data() -> dict: - return {"data": [1, 2, 3, 4, 5]} - -@step -def train_model(data: dict) -> str: - return f"Model trained on {len(data['data'])} samples" - -@pipeline -def training_pipeline(): - data = load_data() - train_model(data) - -if __name__ == "__main__": - training_pipeline() -``` - -### 4. Monitor in Dashboard - -View your pipeline runs, artifacts, and models in the ZenML Pro dashboard with full observability. +### 3. You're ready to run your pipelines and monitor them through the Frontend ## Security Documentation @@ -198,24 +174,10 @@ Already running ZenML OSS? Migrating to SaaS is straightforward: Need help with migration? Our support team can assist. -## Detailed Architecture Diagrams - -
- -Full SaaS Architecture with ZenML Secret Store +## Detailed Architecture Diagram ZenML Pro Full SaaS deployment with ZenML secret store -
- -
- -SaaS Architecture with Customer Secret Store - -ZenML Pro Full SaaS deployment with customer secret store - -
- ## Related Resources - [System Architecture Overview](../system-architectures.md#zenml-pro-saas-architecture) From 56fe203439047816c07dc5f44ee82a083146e0eb Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 11:49:16 +0100 Subject: [PATCH 17/28] Removed diagrams from detail tabs --- docs/book/getting-started/zenml-pro/on-prem-deployment.md | 5 ----- docs/book/getting-started/zenml-pro/saas-deployment.md | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment.md b/docs/book/getting-started/zenml-pro/on-prem-deployment.md index 233d582efee..d53b269ef32 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment.md @@ -391,13 +391,8 @@ Your ZenML representative will provide you with a tailored migration checklist, ## Detailed Architecture Diagram -
- -Detailed Full On-Prem Deployment Architecture - ZenML Pro self-hosted deployment details -
## Related Resources diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index c4631aebf52..e5fa5868c54 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -191,6 +191,6 @@ Need help with migration? Our support team can assist. Ready to get started with ZenML Pro SaaS? -[Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } +[Book a Demo](https://www.zenml.io/book-your-demo) Have questions? [Contact us](mailto:cloud@zenml.io) or check out our [documentation](https://docs.zenml.io). From 053f5893dcd9d11667918e8054cc88ad9e3a90d2 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 14:10:33 +0100 Subject: [PATCH 18/28] Specify Pro server --- docs/book/getting-started/zenml-pro/hybrid-deployment.md | 2 +- docs/book/getting-started/zenml-pro/on-prem-deployment.md | 2 +- docs/book/getting-started/zenml-pro/saas-deployment.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index 6599c704b9c..c91d69c9138 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -24,7 +24,7 @@ The Hybrid deployment model is designed for organizations that need to keep sens | Component | Location | Purpose | |-----------|----------|---------| | **Pro Control Plane** | ZenML Infrastructure | Manages authentication, RBAC, and global workspace coordination | -| **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | +| **ZenML Pro Server(s)** | Your Infrastructure | Handles pipeline orchestration and execution | | **Metadata Store** | Your Infrastructure | Stores all pipeline runs, model metadata, and tracking information | | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | | **Compute Resources** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Executes pipeline steps and training jobs | diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment.md b/docs/book/getting-started/zenml-pro/on-prem-deployment.md index d53b269ef32..93e518a0353 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment.md @@ -24,7 +24,7 @@ In a Full On-Prem deployment, every component of ZenML Pro runs within your isol | Component | Location | Purpose | |-----------|----------|---------| | **Pro Control Plane** | Your Infrastructure | Manages authentication, RBAC, and workspace coordination | -| **ZenML Server (Workspaces)** | Your Infrastructure | Handles pipeline orchestration and execution | +| **ZenML Pro Server(s)** | Your Infrastructure | Handles pipeline orchestration and execution | | **Pro Metadata Store** | Your Infrastructure | Stores user management, RBAC, and organizational data | | **Workspace Metadata Store** | Your Infrastructure | Stores pipeline runs, model metadata, and tracking information | | **Secrets Store** | Your Infrastructure | Stores all credentials and sensitive configuration | diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index e5fa5868c54..89ed8003ea1 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -23,7 +23,7 @@ In a SaaS deployment, ZenML manages all server infrastructure while your sensiti | Component | Location | Purpose | |-----------|----------|---------| -| **ZenML Server** | ZenML Infrastructure | Manages pipeline orchestration and metadata | +| **ZenML Pro Server** | ZenML Infrastructure | Manages pipeline orchestration and metadata | | **Pro Control Plane** | ZenML Infrastructure | Handles authentication, RBAC, and workspace management | | **Metadata Store** | ZenML Infrastructure | Stores pipeline runs, model metadata, and tracking information | | **Secrets Store** | ZenML Infrastructure (default) | Stores credentials for accessing your infrastructure | From 0be4fc5d3524be6c530af4860f29f85657c10484 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Wed, 3 Dec 2025 15:30:17 +0100 Subject: [PATCH 19/28] Added image --- .../.gitbook/assets/pro-workload-managers.png | Bin 0 -> 398094 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/book/getting-started/zenml-pro/.gitbook/assets/pro-workload-managers.png diff --git a/docs/book/getting-started/zenml-pro/.gitbook/assets/pro-workload-managers.png b/docs/book/getting-started/zenml-pro/.gitbook/assets/pro-workload-managers.png new file mode 100644 index 0000000000000000000000000000000000000000..e32ba91cb74c800e9a9c58c26e771e2eefd4a769 GIT binary patch literal 398094 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

CR?lqNERBQR04>4_Q*aG~MLX*&%N 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%0D?-p?xTN5cALfa|HNp+!xQlX$R9QXU(W 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%0AaF=lokFwrm?U7rJb3Vis z3hlc72nyi@XlL$6nc|m9g4N$QE#5c-czk>muxZ{nkFelm?UZ-8oJkxAgWaFB>bzB7 zvZe~^uqgktp2$rC)DOChvHfAK=1FuqKBwCltIWGa^HyVH%n0A3ZiQ6r!2RpULkyav z%(FeI)fb1GJS4*u&p^^>92>`N(i^DsP;1Z3bCBVC7} zRdc2tsTuRB<-vyF;rKc15`aBbgL~wmmcmF9a6c4}I*iS%Su%K#?v^9nY~8v8tI-%4 z+^IB7_YlN~nDo)M8YE7cLxiNP9dKL(eAO^h`^)i^mRkB@V!cpd=EdbA)6l~`#+?#Q21R^&Sb6uV7Th3(we3Q&?)OsucUi{;uE z^d>*0Wi}7T@iOit+eds2V@)zR9Pi!Z)ta^K=s==bnCL!BZ4?g61efdYC$ydJS|)ru z%6c3DF;pJ8;JT67W@AhjO(pKygr z0KvUjgnJAotQYQD#OH4%;5?Bcbl|!RJjoF z^!wv%zLlIo8ZBPR#2VA4YV`rg28DHchOh`;x+1PVK&hGq2+_ySPgxfq`Q2dJTX*?_ zaLT}H#xo%fB*BNcr;!!}A0e}Z3tR$e3(zxY`EY(dEMp1ANL~n2`dKv}yuY6XR46YT zuwpC_;sx#CqU8ee??u;OkeZKqOQ2|&mjoZ)7HWyS|C;^sYqiU`1m}roSzp|;`G{xS z{pUUU@B7}P=GtkBVD=}hHwWAqIVWS3mfzs+=WK;}R)PP9G{6j4r*dV0H?&5FTVB4$ z-uL!K;Yj2!X2rS}-QHl8@O8K5Eff&OKylXaSmSVj@E-kL{a+S|H>40=&#vE@>FSQc zh3|B?#5uR<;?Dr2__#rXJNS?n6)bcGJs)+x4}hNATb(^{FB{Lt$2=tWcQEcf-GZ(G zyt8dcFNIGn;5TQ+ljNj}hHmIY`NZ5zEeo@zvLj?NvRM-{nPJC&H@gbma2Hd{h&Q!q zq%Kw(>(+_giqSOidig?{)`}l)?N{I7ca8z3*~~)#EFRhmU&uJYAot>6dl;%1WY|{_A)3 z4uTxDZnOaMIeSq1i}(I)yxpo*ec@-#a`EEX*7tc$HT-fu7_1(Hw3pV=d3LS+t1+>C zy@n(VfS}Jcm%M1>nh1dFYvZwaXMxX3^dQ3KC@WmNcC&f{jB%e)n#B05DKy&NslL3U z;`Po11{$~?EoBPfW81suDQoVqinFu6_nGz7!?4CwjLy}{*xoTu;R#Ey>ehx4u?dx~ zca)&V`XSSkfboCNTRDi-KvThwhZ%HiR?n1M` z)KlY#{H2y)V_lgx*Lv`IQ?kn5r7|D|f4Z69-#YJb9=-DS(=zyd=P3&Hvd;WkR*L2R zlU2!|1`RLP4~yr$_vghWGuMfMf3&JN#|H&)T0EYx%AHJO41QntFwondoyF4!K_+NJ zs|Dq7w%`>PDO6BU25tCnl9oxQ4diTTdDHS^{lHeCgZHM;Xfyq(X{D$}OUTOfw{kDr z@YtK9v~END$+<*3Q#838_o*h^q+JEWdV8=eWI;c<&opS4d}fvql)}_uR~~XLFaT2t ztkwWW^dUaG6!Ob)GSz7b$<&}$+bU>`jYd&8HyY(5ZEN2N>)S4@8MhQL*5S-%r zA{#%g5(EcRz&NcP8c(8hdjBln#iLf#-7}gT;xDx9C()NCY22M*ZzikEtMY)>_4AI3&=^g4y;`-;K#s8SF|12-w!{u zz5j5XiFJAlEja>|CxyVty}YM3cQPWytN$Ctvvh~baWF{KgjACm-HzHyClrFYCmi`R z()faQ00X%fq-6}+q&0R5ZtJ><%M`SmGXW03$2`TwDSXXCFt7cwGMZuqO{D#tCxqgs zmAlih9)yj3;wjmUz>m|d9cag20?oDuLW_o(&w8P}5WXXZCERl|Llgu_T67|o2E!nY z(AU9WW%M^JJ%?LFoY(F*2>EwtvEL!UpEW-W;+2%UPVdiXE0g9Na8)}Ia84dm7o&lB zcNeYSUFZz!i#!AGj#Q$qxw%K$T8}|FpH-_wV-lz|BA8(DKp(@qWg$ifB@wHW8h)q6 zdup>|{r#TSw3LNx*59kG$7lWSGL*2yy8rQ6bLK8on~R+D_Zj>!Mu85xbgkzZ@Xr_r zO=q0hsl;uI>w=aQO_1U3!!qNUy@q94VpesZ0zSOZqqsLQeeGJS58>Adz`b}V6$>Yd z0j_>ap#8FZda7br&wMSwI=-wOS%C5^%f#_k;A72!*E0c6Jprmc7<}E2{pf)E)Z??x z98U)DQ2^B-tFH$Z=yA8Wdx1L^yJR1*%3Q{NU{AhBg?EnuNx(zKbwbR4SsUh`U~TaE zs(U$pPqWJn@DRwL{pC-lA4kXq2hw{d3+Cdt_QOuA17^QWDseEZ| zXj!#pKd;I2_qT2tB>z4|fVN?p&N{6x242lzb;Np{l0H|?f=mbOAnLoNwZYxs2msXD z@JoP(+dxLF#Rn_U{O_?gJgRsi`RRcgCcMXg(v9o`K;SSf?~t)2-V720Xz@m0H*0Q= z_?&KB4z&MLbY=Uw-U0eEweW96chZ=~i%~ou0A$cXDL_)w{w9m46oK*_NMma7X_ z7F`R=O4KX)R-`9L;h0h(aF$T%zVm0bnP=-~6eu*DRg95Iuodez-T^w1UX1hPb98Ib zS|Uy}zWWGz^Zn=3w6;N7b0`eP=4S*6+5U<2tqdN{AarRgG;S5yj0lNLr@N4E0Px=7+urYVp!Nuj86+_ zwLb5HLlY)!14SK>|X^K#z;H3#B+d<#@lkc#rwLrh8&@!i042fL; z#ziPlK}#}5k#75(z0#`wj6Sbv29P(2zdqdVCctGHth7v^Fk%1$a@=TVJ;E@m}Nqn_yLa z;=Ml;Ncmj01)lEf=cs<=yHx=(%w)c4m9mYlso@{R3(7Ya+GyO4zftDB(N_1K>zwb2 z8seb>&biiSR~+mX5!1cgYEMmtQT~2Zyr0b3OADphMR8=iGDy~*nY~nGT;8);NZUS` zFEq0k<4)Rd_q21Py?>UFV70d#4IJR?p^LNg$1Q;c-JB22#56X#y|BPs<_gx80K$hg z0s}Oa%Z`jcf&Y;}=!ABEsL(#d$6oyK1B{tfQNbmYE-S#j`l&G?5^owm%3?E5DZZ!{ zlpwqd&)!=tP)O}L<8C~Q7~QNsdR8o2OQ7+k#Uz0c1;Zt%O|G-mF8U+wg-m@q=n2{o zXdP|e%2eT_4Bi=B%~QLX^}n;YUyun%_fjZ z0B*^X1j1>d+wV)OC}@?I!~j+K9Ipw@y-6$z-{tOJ0*ZVe6N}GDur#e)xb9Z9Q|{KX zc+q;YE*4?rzD`XEex3nYYJGfvhp|>fi;7!Sy`(?g38HroCmf?O9?Mue{sHr zwQOe?{~y}&1}+_cWke6NS}ZV@ThEg7F)s>PFMnxL(8o851&0gz?#E za<#HVKf62MY{L5=Sp+Vc@h{#J{Xd%UvjZX>6W=?Re?!sBZXCt z^}oQK&u=}X%YUXjUjdYi|C(j3#e0Ceb)LKGLPJw*DXk! zo9;500Czx$zh=&V0)MZ2@yOqO&K&sO`k9;atnPf^(*zbg(_@eIs_FxQ$#A0zfghT2 z7vMwC_SC-9@^gbFB}hp(B)Tg_;4=k`sM{f_T}k`fi=g9XehP3GO3#?fbbneF3Dzsf z;A5m6Me+dK-H}po1rHEdP=o9JdZLcy8I~#(^J6SZx>Qk+N{|vUC9a&^Q@FZt_}yC7 z^F6KaWAU+}uiOKJ=i2&9pJ#e;NAcQ4&r&k}~I z^`}LJeOF;0>%th{qI3Qbp>(}s-0MCUsKGk`#|bEc!D~*lz@>mOfT(!?iowAg@V>`K zft4Uq1J?zrALUxME*9fU*<{fUDTfi;kf4d+{Ew7n^dk@r& znc}*~Vw0`1I{}wwsG8`Hxbu;JXpzxWx#T#mnT(0Dc&7rlxAzx&`>pDY+>rr`_3YT@ z8E$&V#NwV)G(8l&22&GaGhT~yfsctz-4C&+oswQ`0A;0kh!>6qB@mRz353ue8b@l? za46yaVCK<)L(ulDzjJdulL1rM)cns%tZ`T?=7)aISpnp^$j}p39dGGdaX7dvPD1k^ zt_r{$P3YJw0^2;>LBjWHJBJ7$mO>*KfnyfU>4dqDeN?TU2ENwcbeXVPn*o(R7bE&dp;tA#-k#38mCzd4=w|BbGgI>ip%;P{ zpUa;(y*u30Yxn7v(1hFj{A1d)SjL5@|j)= zW`cJ3X_i6r3`9Q;Szi>$2l`|sz@1q0Dx@+Ho$ut{R;hAh7IVPZLxYy=>)9+5xkuu? z)Y|h|@|4oN)Ab5A)Uu;m^4MFep9j|Uz&s9VC)dP4AUXh5CY<2@2p)Ex8&&|pKOIJw zj4AFxnUEvLb7X&GAK4ThW_`ce#+w(FN6#nvY84>Q!1?W+NxNBno7lILml;6H>-mH- zAglzL%6Hah&V0|P0TC|=4}(RI*ejAqri#8w+JSZD!Q)4LpPdfnSXdZv4{CU(N&y(&B0 zv*sXuxObGG?t$2>DUduB;KQvkxA){pw^sOGRy>lfN-2BbJ{H0w07`K_fQ(^ZaPTo= z4-X5=k=pr^T@bLZ$$3y$W4+74N2biB)nyus4mur>@Bq1h<4h^Ssy&5wIMv`ds|n1Y!zdW;Rk+Y^kloAKAYg z;|uMjLGa1XFoInJd1@ba4d6C6t^NAIR8u)$^#{Ey0UW<)(EG9dJ(B*f1b~YR$_|dq zT0BJw=XC-nJ+?764g2h=OxrwebK0JjF=}A@#cd73yrqy@;FH$C>WA6Y559oY9(-KZ z5eW5qi0-`cVod3>By?8V>{fz{6={2B<~lNaX+_vBZ-0o8{Wo0Att&OrU7K&FZd6!j zb2h8Zsr{V0+gy+9*ex@ik7SLgC3jSizuz`q%)PvOw}>|PEC9_V-bZqUFXF?dNzEK_ zZ`&+W&Gp7QC{=eOE#`Nz!2I3uVYO1NSt^7dL>tyDAW2t@Tdfz`HyLBIc358%FXO`m z5bg;+UhOHbp5=QIe958C*bnDYJ)<&tjo6&L}{6^I!BsNo4_-IuhV+rfJEMB!zx49Vd=)j%wab{V&jLgUz|UZ5zjugh89^1^<-aqY!7@!S-w|25PRk16zMn5^+J}SU zvMe#nolGk~SK*#9C*E&a2;?iePi25L=*zu~b18CIewNmgSymXe+@vcegR_4R-uB;7 z5!|gYzg0m-uBY|+=SKlC2R{<)LV&d1@s4LXuO7GYOT5o3s2{~kbZb)@_}CUGJWy}s z6EQbZJn_{<>xjp!JOg<6JEvv53VFi$4WJCPI3m&=Swkp*W3x%i20l;i%sHW1iAgy4 zqG5TM9SCv@i%4mma^HHw$9f?3DNI1FsXGNcAZ_jiEF|$HyRq>CV@V^6&00aRYtQzN8SxHWg&1z^OtoQe;AN&%Uys zX`Rs%bZC)8OTi|rJHs?JG>cCrZ=;=@rBm)3^gYMiQZS<+B4BOKiignNRp9b4O)siz zh*qf7ak`&xWja)I!X2-Iou!`OxZDBE11YAz=FTi>(KdT%sw$l8r1NOc4pU5l@ts(2Xf`Kch7?^i1d$D{8$ikD7UbbP&trDAS5#ViZMj(C?^Or~vZ3cYd+af9(pi2GpK zx{UJ_3eZY+Hbs`NYE7-K7gM1_xX?8lFYZd06pnXG(KaTxPK*%H!y+TfA~wx^GS3XL z+~UkCs{*yNM+$a_(2iPaj(94dG>wNDAr#I^LtX3k3AqJs5!zq*=?XpNjT9n^w-5Hi z)2=fZe7a?$tTCsRODpHQTAJez?$8oWMRF;5mHmee~=- zZYhZj!ALIPmJP}k&jJMmIUECuxn&w)y0C?bsI>7J1Hw#Q5X!UI+cT^hzILL%J2e+=WlTLt{Q3a}Q7sfVQxXmyLN3>0B_5BpaO&*#M+j8e~QpDOtp#-6#tcR=H=D=(T!G<7uk(O$avk* zX6cZ&b{xu19qkwY|J7c+?+^NJ zT4FcLb|&%|*8+?bbf-z8g6&;tsma(mNx0$-$z1dACyL1dAnQ0($?n(rl=X6$Y}6s} z4l@RPr^b|R==gK)&T0$UvFIXQ?tOB03RsUI>`~U3!Pw5(tvIQFDXV$PB`_34%EL{*_IfjZUxeL7jP#C}R{Ip)=@MdWdk?d7| z@jeRNv(v@bz+D3NcgqOdfCVM3ExHzAF=_EG?n))@Q3Nq8y11+WEvAM0#x22U2Dg*O zh(C(;!I+7+NC)imBJX#;v=D$b)`Dk`#+YapE(V-CZKqf?01g?S;WT~3bF}Pf3SjP$ zD^u3(m;QZ=9fQl2-~YR1ObNm9oP9mA<_WDPYH2>iJal`R+((*e_6 zY*|oLiNv(Pnu%;L)aZa8sf|h3)$W0LTS};zD$KJsqb=Z##g#Nwtruomha}Cxdpg4n z&^W(vZ-aXl4^Ge5Zil_BO(9o1TqHQ0Cij+AOE+yfU@str2M+)RpZ(ck*uGO>gTu}? zf$)_eve&Ulw=r&1%_U2;Cn-)_KN!asE(-#2TDn+(D1r?h?CL5-5O{S5t2SSOp$-(S zK*X9OuFD{zv4S$kr9rYPl#Lf!?R2#s zt`#KNu>mI1R;^7N2<1Fga)Dt9Y;x{&9ezP09fQG{XpHQq*?1}Ja~)`M1I~L)v#cYm z=Sw1lgkfL2$7)~W!E$EbYgOg710UV1@cpZCsiNcx6s!aAb2edrU*~&2@B&kp)t70h zr4~r-!36TxK>gP5v4Nu(iY6u=$!vz|A~qzYx`OFvxsGHE4%Q$QY2IEExU7Uj({#?~ zm7)kv&s4ndr5^{~tYSYL^fTWEa~0 z6%as`bjHXIx)b@{%=Eh4yB?NSj0QAjz2`(-85gGCggpUtq@uOEb7k!lN$(3whr4L; z9TZY!^-h3>NH;yBU+6Qlav7{rS>J@k3Y9l_5v*~|c@X^_RB`8@N*I#q}&yBz6ZR$nWutVlCfRd4sqrYY?8`cGc zq(!HM^Pd5$JtJ8(@z=#)DA=QgOzCctu2;eEC61#3S#Ti#u)F|34eEZRdyUl@?(};C z%;a|@{u2S_W~>(yMHF%VP=l}aLA1_D#%_SNcz+}}sIwqb5}yd_UanS54eWyOS#x%~ zTeFHVwq*7BW&DK*=4y?=9EHW=y<5g+-~G#SvRP2lvZOKxf&PbBRs^7)n?+;?FcUzY z?ZT}&tR<4oOF_&6NN%ZJv<;9K)#Xu0@%${1`A6{=CxWVJ9ibKC{#L1ZnGK7wFu}yG z>^Q?E&#eS^Y3uF1gCyl`Cn01R&OOrs^S*rFt;WIi`w5q`^*b#ii-2o<%<83mUKitO zoWI@*IJv7Gyqg$nLN_b??aqnAVMbpfD_4QGBL&BJ&p;c|hgoAhN~rbh zFVBd}SnVBR0%u%=(rd^#yKgmI&a&N3jcFn@;9%E{iGub74d_OqAclRcL8AW;m2qG(1{A5kUYx zQt)wJz{ixin7XO}R&;aq%xXgb(biTydbIKI?+NYb0k;}v!%7KDFZQ{7o3*)5z%WaJbGhcc0AZUw z3tuX0rfQGRTn`>}7pX~qIiK=5{Qr<6YVVI1 zjpbfF%1x|Uq?4vl$lY!^A90T1JbOmaa_ldsBy2&yaNjf?H+eeNj0?cN5fty_wfyjn z^Iqo|Zwq>&O%+-ZH0G-xaalh+OP2HW zBiCVcE(SgY1gPS{=lLd?i6mIvU6Sy7WW~Azu(>uU$1o*BRS4H_C9mXu&hz=xvf4K_ zxHi$oz&IJlF-m~4WEQj&U?T+Dx3DCE?kP||CCd>(mCFPem(R&(TMr(Gw6bd%_SsWh zd!SYsHxU5u;{LVbEYgYrfZ;O1N5zPYJ3tr&e8yfRU^vnmp`g@bNl0_LMy)n~e9rnI zk!cBQez{039(+g~hNg}MSeXFK!CJR^=7@CB1P_`0%J?tlcRXcXeA40sFPqiQ8)7aT zd{!+PU+*i1f@ctc&2lkX4-*s|kl{QIVwO?^ycgC4^x;#0z`C^hIxRXUEE@zLOv&qW z`Bwe$J(bE6^nrAX$tg<)ix%>}WxW{q+n!d|6Iy{D1vHs1eZX3@{(XK_n`gLtmTdCK zxli8lXMeYh8KJ9JX5a%IKI5JvnJaf-D~1zo3O7~F+7TOxh1QN{RNq*h^~@gcL2$7) z2XDHNyYIiEp=nxw#w8>us0}5>^G%DL!Z8mpru&T>QfN0GbTzO#lo2f7wAmC^PD#T% z)a3}xq)QqOSaBIkQjgJ6RPtb-x?vKqN!u~vA%a{138x(dfg!><<6(wsgRF#Yiar!} z2KvXoDp2qZ@yP&h6$oV$Y(hn)zom9~2Z#Y0W@%XS-7&XH|K>K81UckqrN+HjDERJC zLMa36$0k6Ys)68~$PBov6@+a%#ke4n{8BMZAgD2*m8nq;>u>TMpxtWsbUv=d>CdGg zjg2=o^Auta+bvuKW(vZSn~p=){eW;CpoRh6V-wPXo@dfG*P|qyD6*BS6s=*2&o)4t zdI0O0y=W0>K+CMXgWvD2Xy;eY?qC|U%sv53jnt_3`^%Cs)AG?Q4-HgO2nzu+l?Uik zre+-lA5#!(3UI#TfJTeJ zLisprz|mrAE8u3KykX&4Y+TeqI81xeP~^aMJE80 zyfWZ7G6FTAf4f82N1%QR@&G0lwL>Ch@OwSCg0;yDtBp)g8*WWAU6IbPY&?+$^@eec zdr;$v)T&%#{@Ej~KPl87Z;<1j$)9PR0IyBBak(XgdrD>{v$BvZS_5GCdzjAHHSPdI zNe|HKbF*T(dm!d;S$S5x2rWOy$oB`RL2$i~9dq&a4ZtzxFXLO7-HdArpfNA!2MF7z zWSL?r+a<#-VB)EI5fDzkdcuOj#7WMQpRk+|e7+T6xFb!iS5ddPk2J(yo$Y$+Us_TO z^UZk$zdisO2CQEpSed8(^?A8jx^OX@9r;#i;O_uvpnUA@e*i#G3CtK7v3A5D>vIB+ zG0I}&w}5A+U+1NQvzdu#Yi2Ks3ns6a*>1Ma3hMi%CS<;og7!R{Ag`7X%}1VxCi{x} zuvInfdVY_4^;y2B`Eu_;^1hkQihnWdAOJ$30-v#gkpxIUrGEJN*oB_krEUNWDrd|} zi^Vx`kg&bY)u0-zIi+KS#)JgGs3MJDxtqll{tdA>{lWNoToVR>Ld6qyoiBc7Ie)KX z9(c%H=j0k}U2!7i7Bxl43Qc7f(%4P2jSu~UtE-;+{5QJCmqCLOvcd`Abcw~0pN$s0 zl&80~p)n4A>nv?1vps21x)6FdYloG9Zhvzu&ew(h*am;@MFMM_6)(}|2k(9zi*r`7 zIO$^rqE~FzmvJJ}cI%(c!T3osfHuzVpCA3b?t7ZCibV-Y*RS00+P<^DZ}!5a?cEq- zkHx7yBG=KBn7K_^b52?wE$1osMfP)cm&x20_q|y-)&JK0uC2k5?f(6-IA`l~qlwIK zD_)E7a-T~;#R2JjN<8Jo-3n_^Q|!*ZRlv!dvENz4;l+N;7M9C}9g-YFT#A0Y&tpf_U21iXE*xu(rpDJS3k)tR zhO@%0`tH1X+9im6rwMs+(lY_6Yu&X8n(-NNEzuVWx6g{AwHAYUkcUTq~WRUqyvTXUVWPWHR z+ug6!b&6X3R=m(kZsd6R{khfHhzW?F8H-9zu!OgZR&&)ynwAcW5C;j)$=n2BnTxUH7b2u$Zvcht~oj(1P+q z6`&cK4r=$^%(eYX4DGUZWX zy1knQ;U5=sIPT?Pkw=^yIwyV9sI)o6waFp4QzR?J^Du?dq1*g4Kt*6I$}gdSAqRh!Ak}%uw0huvW9d;5rra50ILIXN`-$ zPXSxuGF5^4`F*bUa)XCZpSR3<1I&87-nzgo*C-DxtQOZu9 zmOcz5`;^wMXefEsl_uDCS!|Hc82FSHgq$aQR|2dxu*Lh+GI5sMWLjJ}iR|?x5RDc& zwg5lfCGHUG3@wtzJ#+IdlJ|dqT#Q++=OSs!7FL(wQ#H>$)LDD9210D)+yE>xY8ZJgitO8 zA{}HrJ_Kl(2=3zE=iR)aPKdZw`M-7FO=LlUj|mWdf2$O~EUKs=QL>Cti4!3IUZ9CG zcX|kk1&2iy6=ZnK2*yZ@58odLi2xb6kGVpEnw2S4m}N7YJ8&3B`opHl_lY1be9xb8 zfWRedUC4G4u32^Xq>wqSY5aWQk1(ONGku21nkIDq3KNQZD>-%I?83L&EzN)R`s_ASAXPb#0!0+#ZA_mh`6lfC{( z0ZTIt29NfK*=223dugSy5ay2;!SF#hvsdvj6GHPIGqSsODW7t0c$MZj|1Y3^5ZGpC zAiO3oaINV+G;`iU;QzwPXhsj60)%6jS{2omY~r9HAdLo&rf>*Fhm3pu0@tiu+o(R? zE?Sdk4~F-3`+Vk__Bl8TFgPDi^do6NzM6es0Qj(-9_-stZU0QSQGTC_GAe+$C$UZx z_U03=6$bzr+c~j5+k2hN;i`~c02pt&%_&%77NfHSeHZ9YDDoieo=iW=^^)0w4vQKi z(^?juS=I|fpf%6ec+aigk9ZLSh_FFr0$s&$-reqPxbYtU#X^boChn3^TVzOfp%f@V zm&rH*1RWCu<-D(c9irv78sqddx^?b^OIH+wi_A|khaL+uL5Ezk^1Eo6(~?5LOlzS{ zs>IA9_??0}El6jc_c2~pgh!v3WrecU?LgU(6(4a}bAxe!iy9**!Ps}Bn^8S;1CWJP zZGk1wi)nmQBQF*f3^cx5u{2p<;|3w$iHkWE5X1NS*b0F8Gt7MDaS~G0kb&dQw-Ru# zdj$o2)G`Tj)BOpF2v|H3LVqe+=yo;5Dw6$=chddJdFxGhJ>AGYoJVpl9RL?t@%}mx zct>3HoA3}Dj?Lc=g(|E zW~JOA)KSP9om2ReHq;f&djjp3X4%>WIh|j%Ml`o5r5S;U2+-_*bN!HhDKD7Lm(C6P zs+ZO=$(WcnS5`DL1Mr(EpzU;Y`l`QKCWP-E&*^%qk0@0?OwR@DP7Qy zbZ>f*LF<+4+yzu9Z^=Cz1MlDKq2R{M?xpKwciDRRES|Tm?d}Ry{kT3Fn*2Ruo3(6M zrwG*J%lGT=udE|Gjgqf(2_3TTx7aDJCrL8EHqt#*`}C9gMSGvQ_FL8}v+nwY{^y$A zT}`=fs)cxN?v$^9>$dJMYu7q$Y+Fw@uC9gq8I)<~`TZ1ksv&}lZuH_37wB;7yJob3 zmqBL9vU)zw$Pofk3cqjh`{daxX9xY=ef;Ru*gYK9N8YI%OG~8-VU8|l6V{Xv`Zx{@ zni_Lt0b2zV5BTY)OWAgg8#}xgzHQHq6 zEQ}-X8DWX=-ogFJ?`4+|OG80A3k!Nb*Zkb-=QAt?gQ;wnV(&c5Qb!QS`X}kyGAw}t z1-`86{>@sA6M~}&H(*wEzd_6X{DdXw9odpbrS_#YD_ys4#>(-Y?so~|QmGxC1<$-$ z%Z#?HBB<~_B)+38Ah0%^s2@U?rv&A1OBWNU61=ajFH@MTXcwc4!g9{hk$_(!q zMcW)BYneC@1zlP;F!W(riSCk}j3B^i$bjy9)-!Rwxx*sEIw9w?_KJ+Tfra9HmQ_P5 z!ut^Aoos_Z1g?zv8MAmPNaWt9)#aHnjxr$ED*MCq!RvEo+G5`pnELUK@dI2;*B4wcs)Ihr#+8hlyXa4hc*iiU-6@T*Tuu<^xUv=2%J5=~( zu6qdUyTG9DxLgYQ=9Gh4wHapW)0_vEv?4UvqagH196ph4X2xDn9pyp7D7J5^! z=1c@KcUhV0k4=C<0qQDr=A}OC*5{{vvKLuZcw_ z+@9OvjM19+vE$-IL2#19-R`N-G$~31YX5eyo#0hN-%HjUB+srR)p5Z zCeXhEF?;;aK1W|(VODuf8??KRx%Dq&*i?YN0=WiW$2G=;?;z+*>y>SDyz|bc2xtn4 z@p=v{L4L(K#ru!fYbl@IK;+CQ9J38zx4y7O2K&llu-P!ip~CV;x67W)OOzD`g@o?G zU&f(HI&=F%>BPM*#wciDTnilT3ZE?gIz~Gy%uIHK7<&ooA_&1s6_$NbXbsLY#^TL~ zCECwVKU*P@K+7NF=;yT7-U@+v9s5Ug4BF$hDl`55WxnJ(J!~HPHE6Kb6XPZ*WKWy{ zux_~U3C(Sc4MHA)$rR9&?>y3i6S$12i0R_}gs@Dy>-joDvkk#Ig%B0GC{)t5>?VS_ zYt79njjzlmfdyT+m@+tHR(L*srj@2r{X$rG(gF+!2naT(KreMZGL7%EK6?qoAPoB% zd^gime>>~Lb!P~m;>VKdilBz~xl#b{(A315m5FQNL@_}HEK+AAtWzW0zr0%!bROVU zHRsQo+g5z>Ex?AjW~JhX#SU4wrCDZZ8G^+H^-(fCGus0H4FRi6UF`8DTE8Sg;xqcr zLX7VE#(0@qt@$Z6F`VWC@(Het)3?!%?NA2PVuhX#SHK0YML$msjCc+59qGz7;je+5 zL;$laF|>|ky$>t7l)?BcrpPwaB0B`=%mgn-W4Zw!S%8ldX#+W-ekhLGfKyO)RC6=+ zS*6BgY9SK;`x)S469j!iHR4{h6vfbTpd2E!&v5ribNZ~${TBQ@nMSG4ZV>$3|*XZ(qahEmxoj$>uo(}1VbFl~z$~m<9F8aX3qSD;*kjQkr ze1g9>e|GrM3sB4S(pIiqSE03p|MuBbjq;Fw9x2Smd{??v{?h>B*$!8$aUIH66$hX^ zpL3i*bM`nWQ6$&~9?}&HpN+KA8R$!TVJs??PRWQRm&S`^?1^M}8n3_yE{xXxDE)_b=ULOrE4|lebnCKB=|dM*pT{{f<-58KBr#igqbAc{2lnL#%uLAW5t+RO3v4GvqGjl#%i)=O6)JU1Roib zF#_UDrsX{AJhHRsKw)SQoKo4sY*f(Xnz_m2| zo?*+Vu!!K~(Te&#tyyXoce+OXO=2Z*QTse1xP7Xy6)z~zkOD1Y4UmazNJh}+BX0(m z9#|FZC`-@+ADJ$emJ#rayF=Xp1dd8Qyna&f_Omqt%tK&(`g=;SJFL0kSp-vOMlF8F zOkSs~h4YENjId&u&}0HQuKDmWJj4Z%sd$g*BWpeQcdNvKC7_wIH$@lU(yfW$BhpU$ z!`Vjk0exNXeLfN-Sh`+`g^VD8*{&wXDxYPl-`@iSp+5w9w7v`o(#*s~&@t|6B`8pp ztAEjAW#gIv*$~2~S_UXuc`esu}R!i>-7RT#56bPWet0<2qA6;}&Q1#gZzXyuU8^qDGD zm}-jg3{zpIaKy2&9r)idSTnVK0@RoSH?^7W^L*skrp$5HXc0oD*6IX7WF`)~l9#>-?Jv(@^bKn?NI zb}-Z0u1{ni2HAavpyFK(IG$C7X_IL za3T(4WcDxxVLM1`fW&k>x4L&oA_|>%T4>BRtE~!yXWJ)cDk83+XTJ{XAdlnp@5oD- zM_N&o9@%f~x>NR@1Qh^L2i9vSG(u_OwTVV0tZ1Ns@7&`=b|p;;_2TAb*o#L2`oaC> z_G&*JsT|6_Y8$zh&KBo#;{9B+MMI2z#fY2|uO-%C|CE4&{agPga*zEu=gzaATgij7 z{$`vAtq$HV4LYCLb0O$wD&*91iUKXc4F!p3o9m>3f3_5nwWqZ>5h}|Zm8lg4R6WAI zWq^-QS}?Lsz|(<7x~cJu_p=|ehx5-p6r?BTWFkoY8wAkUHv^P}utR~;<3uPBEvrq& z=^*tj*P;sMOkE3$Nd~?Pc#0r+0GG7NSZeG;z&=a6%mRC~#4sqFfzfzwCSQ&0r@KTk za}}%%-WRwTO=hR^cD}{Al4((g+!NaSp@j!|>UqYZ@1^CYTNYWJDQ)S7gDg`C^wQ!m zj2WVaSPKY7BG4bMK?FW)Tp0i#u2ocQ@%O19Bdf22`RV@lkUmIZ#p3ZJfW=$5B~I2B zp`}Up-pB7&e>@=zlV+!BAbkTxcVruTM%zOH0^Pkn0ishMz z9My+(-+JZpgM)EM1@LTA?=v%XH845ETM*+I{qM|7QqN6j)fnI5!p$@RVw*dVRElp^ z*yY_9cMF>P%xrGYH?=Gd!<1Txm?D0@A0Cq zqifu)3A+*xA^qFkT=lCz>%F^0y#gWo&psxzuUxp&{Z4?>D`3#px6aePf9`Z9 z9}7LnZ>-rtaMGAvN{|7mpZs8|KukJPfk0kCkKd%TF5#+6ju+_oS2 zc%VsTI$=#$>_Qm&bw0Z*Xznp#De(+elFHcSiwW1631N@>FxE(>r}a5`R3FJV&$8xJ zb#%t-#6BEr_!86S7|c5F<8an(16#`%H6AyqunbZ4+T?-YSzBI9AgtxK#*yxHD*j0Cb{H6`n4aS^6*9YX%-$_IBO zEJIk|*3kwK>wVMs&uyId-ua9>M>g4zcoe>ac5Av}5S8!WV=cq&OOzMXrApUSHAWe%Ewqqs^A^(GxJ`T%j)uxYyH5b**IgGUd-Wj z&&fqhaMSv3*GG{VwEOx`1KIPr9fYoejfaB>toBL&Px_Op@I8n@`|S)SR{;Ce+3^r$ zE`G4uUY3D!uYbY^n0f83%9%&Hvjk-7_YdGq?b_)Vi&uRK*yxA0rG^XISJ1lpf5Xp_n|2V za8v+wo7V=!P=g6*^9G*J`TDI72tjl0k#Vg4_;dLgdr}DnI`PppsIfS${s+RKWk;X= z%lSj>O*{zsa>PFzF*ej%L6_q0>Tgkb0E{cu|wDwmI-@uoad+4%s_Z*u1xuY=5) z^&}K%uM6?Mk7>>)?)!L<5j;O;AFmeEviM1% zf;aW>Ey%JkHMZ%vbOa(y_mX zdz#b(5QZ|e{}?Ad$34gk&Uo~H=-J7D2umRUO#r@C{{`^3VB0;v>89hx_Xf_GlMGNZ z?lmT`?&o;KcZp3D*j^*D!J^si{t;SIR6&Da_m2u9S0b{lHk~9nZ$AIbHJ2ct_gRci zbh!S4u!ObjRdYg@wAl&RzNbd}elCm*x{ zLFB6g?Hrc?_dj()qxYMjj0Ez`!liY>`UE0_*o|-Bh%eAi#+4xOT;nk$$eje7?Vm>A zzsF;iW#{u3AyTh&L(6*67vLP6jUYc51C^Up_O2pXnR;69CZe1N;gRrwNXZ-4l_Klk zi%ig!FN5RvI{SY?P+$>pA!iQj)ki#c#gklPc?F^GL*obl&vjOtGV`EourY$kx8R@# zBL^6Vo*$-U7ox&|&W8g~FRG6X{@k%v1|HMH|u%Nk6PZW~DC~_c6GQm6`qbUfwuv zU|mVxSD#a>%IrM*EF09I!LOd>eX$O!{sN@^^2SUVYPH_KYG1j=jCPq{v!*=Et4W~l zNmTb(VsPj4d}%*ojC%0)SC*#+kYm!MNy{|7Ev*Lt9v~51vspY~+~fLv0O(kq;|O$5 zP!3_dby#!K#cB$1xm$Pc7w;F>B}x7f!`^B^V~hp?ep@+h>1xV zCC?&TRTOzB^z>ZW*_sk?WPKaT>YBqMnVqDRWe15{j>{X5Jup)14o&fBGHf=@I^WO1 zY+%?9x#SV+5qXvSQ>sY_fT@iL#QLIrsOcoIiskXlv847XK@kHv$a5;F>=R3vy`Q zWf|FV9KRR>!z-oq0e)dA+D*u^Fn4Luh|E?QBLOQ4NdDvHjdf8bgW}movp@IcjX@AN z?o{fEmBf<}&Y11Gym3|EFN@B%bQjdi8!;|>K9kgah;`@JIlHK8WXu>*881%SjLbr_ zjTjFhC|j^+FgZb-$Mdmc(zg{U<}S;L_@0KqFhj6c%++_k$K30)gcQEV^E*Yb3K#32 zmiZ$!|7a(H_FCNFHv+>2ABQDkN}ASwy%{&bK3lcfkM`gLAv$h=LI7LVMNnvY>_dC! zRXPcei@`RtrQ851>NK+o7Ok>Y0z3*FX$$W5m@1Ug?-$SPcB(cr>mS)p?USJm0-DCr z&d?VO)4*13@9r~6bIxgMUiKTaQrlu3O(809H;H-nDn|j^h(0!VEF5qxi`3%0V7?V3 zjwI*k2fHf35qGv&wigF9EqZ2cY?aKw{icRy9ptY9@ZDtIg?wmx7^eUYvDuA4P;-gB zGsTT<%Ly~YO`PwZ_iJ=_r8=})jKvUuJQDP~+}+_tI+U1TJ-c2DPr)D zS(9-rk}yOuz`nc@aeMHQe}7L4OajaG7NQbz8)rJm$kJQkXSuKxAz7PHcr;>{u?X<` zo&YG13`mmcX|K-;495x0i|hzSM}41np)i2`s(Z(tqajN;$pYr?A|0<; zDS^{cLpQMM&=QDDT)$M?5NMBjnc~;# zyOD$eaVMUH50;E8e&kp3!M0p=?R!w7JjUScJ(l}%2df`<-|Wj7O-M_+PG04Ke4wl= zZSaV_$~oT_oNwW#b$vdOL_l4zQm}1PZ|uixgc(h@uztXQP(hqobIWSa;bHwZcH`)iv$D23uUz!oH3<-wD*dus>?-jnACc#nz|R*44&+jA!@5Hm>t^v$Tx!o)M|zOpC7P z0Ibg#3zm)g_ED7cnsI_~{h~rBm1VaW9FPu-89=tI367K86GE#69QdcWVqE2HFp%12 zJumfaUL|+J^}#~cZda4&&vwl|+`$6ydz}rO+tidNaAW%aoOIs4{_gjkY#F`pEi;0{ znpY49xC~!&+tcrs;^H`S_Zo2{pa#jMHoh*4Y~u&Ha9yf4f-E3?YjX|L@<8mVSQzyT zT~j|hcjc~bJeN;P# zfNYQ>9$*ex=9VfJ!Xx6d}s0Z1|{-Un1bS3at;0((JGj0Lz zIDgwS2pK1ty5hM6`>K)EW|jrCNe-(CpyQeaDG#6o>+a&55#$j3J`$E|@&fDH5*7KuaSNh%H)^dRt6huG-Z)j*<#_Di0ra-3~kdFW|5VOgxT-ds0iO=~O=v>DuYu!1y@S!;V+ z4Wv%aGX+Z=toK-sJZy%{JlpuS)j+?-AfaGirOaxpW%-kT#|O_= zU9EX`v%0{&MBc$T%wvO=Ygf6lfn;g+#n$F=cVEL=VJc_&blGuemaWzdtY=uCBn1}0 zH}(PrX#rYT1M=Ur&_zvV5A!y29l#An_iR*HpdKJn&kzD@{2T3-->Jw@S%m+FT483% z9b~e~_eRR^Mn0~;ypXcn>iOJfu9gszGAH>6>xRToAtm~iRStX5%BtZ)J}k-sxScOrcY-i1KC;Wd=3pzDb1l8%ev_~k{A0JdxhM(wh8ZzlmT?-1%XYE^#J;Fk zkFRo@LS3|cnvMny-b*#VO04`RPE%UB^^c-Pu0h_FuHM5r(r^0b!8_h;*GFCKqK>RRt{Q@ z>{u^Zc54sokfo&S$7(HF(<1%F0&}yh6PW4y-oLR&ONZ6GqpbY4XHfEcK>E{I@b9MY zR#F7Dc2v9aP(Ay=Hr>DHXD!BV=y&QPuJ>ptkasCxweG0bbWQR*`?5WrMEEf<{pgNYx+xz5bJi5kx+7&sT<%KbHX`>3?8$s!N;*-TofR%%zGPK zl|4@`cK6J3Pv^_2!EaVij1b&ttz;@K3jF(Qu^X)psrymZK(1fkAK9wZs%l@%>1n}5 zAJl?w0LV}6`9k(+{TORLw+GpqB8!$6oH=r%_kKTtE-VpH0yY9MyA?Ig)6vfSHdoM6 zWBnp%9cyzXfzbA=+{M4s;?c%T@CSm|;mXG{p%Hf|fnu_*HZS|EzR7b?c5RXdcRNQ$ z&C{d6V$E;4wbHU;R&IAmLa+Zvd7I>&!Smj%C(sZFSk6Fnbs6Hm$@!IA&s$b1-qilB z`iZrhnW|_(d1-*STipWg)eqJUg#=u`zV)`yf ZSqi<5=y2dC>Vcx%i4W0e&i~{ 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 IM6N<$f-bt!OaK4? literal 0 HcmV?d00001 From 0a6bdfa143e25a4893ce71d713007f732b99cd16 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 3 Dec 2025 14:33:11 +0000 Subject: [PATCH 20/28] Optimised images with calibre/image-actions --- .../.gitbook/assets/pro-workload-managers.png | Bin 398094 -> 262711 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/.gitbook/assets/pro-workload-managers.png b/docs/book/getting-started/zenml-pro/.gitbook/assets/pro-workload-managers.png index e32ba91cb74c800e9a9c58c26e771e2eefd4a769..257e4bc998b478bef28b16421184a6af1f5b6f7d 100644 GIT binary patch literal 262711 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�@ z3Frx&7#eBcrPQd%3F(}Q#^bi0j*ieP|37<)Hx1U|lps9Vf@0G?QEZ0*OmAPc4qCPZExYrOQ z1syuMX65vBHQfjv=%7UaV+JmmN`%APW(hp9pq}^RYYHN!9qtued%9_nwGfV4M{g?9 z_E$Ae2P%{3POL$AAD{MbmqhP7Pgu`?bIQX;Y*5~h%f>N54Q*|QW~t%mn`M?8b3J~2 z&8PqIA8!EQwSbU+{09IC^dJNS(yzpn~;lCxa_`hM}%;|s+U&1x0OI43d#8x#br6QMHc=kzA;XHXU4{Z? zcNBWX({G-1mEcQ1E~z`biBC7l!-^hc>o>4R=Q{uZAOJ~3K~!DZi)KfgEJ!xsu=#r3 z{GcI08}KT+`TJ75t4JT0(`{Z^H-A&MSKAr1s9h=0o;fj@feR;9a)=E1P}uf)TKcQSc4v=A~-xh#D+H$^6M)yDET=Bjuo7)H{o|k0+0a;xFDVDi` zS|W!U(z%M6AYuKx^)&bM*6C*y&WHO}?Yfh54d<_BU0)(Fq{iwQlO(cFf(o`TG%GSd z#8_e7CLkj4(!PHy{9hXg+5PtdECeVbd=LV92*)j_BShm)$zuavMC^ow*=* zT=cBF@MNY70P{d(k4AT_@NyoUCrB5pYvLFRXh_7wa6{@l=x7yg51NRiM02LFleb9l z(C2Yv8EHb3oFfn@Oqi;Mt+MH$HissK2&GB9q zt<}qV7_|5`ie^m)<+x~K63hN)ImTLU0FMvu*d_2s5XkdS%L{;vNs|D9_L+1i?Mu$m2(S;QD~2&@ znU)Iw=%AjTJEsZye7<$j%n1lJ7_{Kc4q7HE->2^T)`Kf4#Lk%>;U-lV5Fuj>Ce3Sl z6=oYr%cj>e?VfbYJjv0q$rM%ws)jzPa=YM6Mbo59$4)?v;Bf$Lj@eK~yV{`euRT*l z(+Cy%G(XY%B8OwMr2CR$%OrS$3{Fcld12sS2isp|kn}k(1lu02RTZ=vu)gR0H4^8s z|I_(U6|uQFZypK@!g4}(aJK?;!W^$^x4~si!oWiTl0FiHi@32TPRr{WU0^< z>(V&eP<<-`|S<*9JiT$N!a*$De&_fr&)e`pPLwj$PN2 zPcf8u{&8?{!eB(YVj)p|qH{?kKTlBZoLV*8kx7Ie6OZF^azQ&?PDHZJE&~fS9nqH} zs8}3T?%c~-+7aqB$iK`kSvQEs__*2fHZC0FMaD*?wTsEfxwH{)>-4NVs-_h#gA3{S z!9XcqjKiH|Tas=w2Ut`pUCi0Ri&6apZeE9_u)V7xR>cjGUij2Sh$F5WF>jirf2boy ztIQ~99x*9;bQ%}awrP3FfHwjlh63uwPqDL{mqHX>xrkV=J*fcOm10yy-(-#ZlNY|6 zY6z&P_)_7^wD+mV_-QU?A4);4B3jfT(V19uYeK?_%J}^APYzhvHJAI8s7nGsMpygE z1=d;zsa_PqlM-gsr++R*_Rl|+NfD<+1TE8~C{2Yz!?S}m^R5)r+D18a>GRTOqbZfZ zpFaC(+xhv?GI{6L%+L6Y48&Dsf3(fEx z@Nris4a(7l=;87OXEWA742EP@Ne)Hi_GMB2l>v>r<^GeZ#hegQvgS$3?Z5r6Z$=FY`0zIPG=iz<22^ft{i{q7iPIOkAD3dg`*B!`&La=xV&Q~$5xgP?tZbbxx%Exk@14%+yV3rpt>+5-0I05PyIrY4nlgz`-ytPxX}O5L5v8i9b@1b5Hi)VA)w zPR{b_!R;sI>CYRV=m$)&roTSBiaF_7pd$*Rm~x=>D+GyU?UW&z}LrqA-3}z?=&F0HUy?)pm{li+-lRrP*MBqaKSy_V)#V zF%L%55EX=4pFo5@X9FXc`cNwpL6+|vbm_Q>)~5fNc|xbJ0CxgG`||z}o9`VEp58kk zv7#D9X#{*8%J(clXbRNJrUU$5WXH9jVr|O#%5#?PR6#d;x146Mz$WFY#{`E0?}f;G z#YK(|SvemjXZlcIq3_??WQ5c*qZrjbIZ_ja*){qc7WpJeBSR}(UcYqhS_??jIthxj z%|pF(BqSX!JEoCxmNSs38|slF9!)IdT?D0R3-NdB&Wfjv)1+uzaA}JGo_4+zq%+u1 z_sOZ~Zv8$M0hu3GbdQ+MvpA=|LqBWTA${%5KIuoOo1rt-zjDW9*suVIK+3stz;VT- zB1G%h)^WL_g0Yc$t{t%b(TD-+UP)sgn#2^@xq;9P?x%y>>=wJ;m-oCC{IByTCKIAn zeGVAh1|*@+Y$yrO1xhppVVZeRx6)+gwh&Ll8OE)0j`dg!C^h=UlrDp2mmQWJi~~2C}#l;%B!a#ObwbMy_dmc?Exy zW8k=eH6ETs!Ja?^yEEjQ>Z0~N{NR}!%|cnBr(c5Yw5ee1@b8AqNIC0|VmaT~+f%{znBNTQM)DxHxB*gdf11LdGg^0~~4p zOKO?itT-tmAfSaXk3X9(CRE2{iPS98O*w@Q;r<~B;W1I-6oLYF(%o{{UK zQ-Fr3TcmWeIjUMBgOF%M!j6}&Q|HcJGD1tRlBL?>FMaT zD{K_%brCT5R_wo00HO(pC{vtzgboB&y|m`No{EM<+7Am89Q=I*AOacGm@wRMe%)OO z9yz;X)#aE{BxgX99TG&LzqBusyDm#jQC6e=GMt{b7_ zgG5;5a7LC0#9EhR6C7XCM8oRSRD&H6rk-bT65&M$fDLeLKbuniuoAY_6ycpfhB>;x z;eH~b7xpkkUKh>=^e@q#=wEguTl2o1;kQm_j+={Ze+L?shA(K3P}Co0vZ07o4w zfkRTj=%htj*$+J#1LY}1*N+|)%FmISDx0P~mZF+Pbk>pBgaT6-eHV2+X?-oql$^v~ zQ%X50Q@oB*5HI?WKC1{)tvy&(07kEk2Fd->l}zt9K+^bULHqN#ragKt615;%qZJNZ zhh$8E{kG;3rV`U}d%%5T?^=p*(%QRoSlH5U96*FN5~B9LcGDEb zE7fRaL{y}3k%o0moJ#6K&MT7*@*e4)#SRD4)HV4CZf9KpiCi?~s6kt+09h7)n zn0~H((=tf25)k0FQ20;kOoTPQD^nP)hZ>#iZe{_A`!bm#P}4qzF5;boDgu?50_-s5 z**GX92nujg`DaYmC{15<_S~ee`J$3txsi zl7bXz@b7#w!H`mcHEMeZa$<7w=#w!~;I8d5s8Giz9IhTc%ZHkYn7~yo!q1eZu*d$n z=ql(k#_1^=E2L=g`k>{iLBb-K4UwQxL8RSPJ_VvhuZnG6U-|iwdc|vLQ0_KgAxsv@ z=M<#}WvT%c7}KY)%B3|lz>g*#{9hB62>pFr#L_22DVNurw+sn zc6P1}G2%q% z(d$gSK5xSd0153!>pG9=%SB4o*^|(R2AYs_NlxeMC~^v`w?wx(*J*NcDmJ`KIj2Kc zrgvS^xf-es*BH^?J?&let*xS*4z}K=xER^W4c2_nIQ0QvXAs2*MA=crjmiB{@ zWLquA*tA~EnGs)%cMPtuG6u4q#Ii>yOy4A3%GPh33>=#}(i^8NsSp$$DX3VxLaX7F zKn4EOPp+fTGS8dRkq(Nr7 zDFQ|6QPh6`wWxxAWTsz*V^if__|T8Q;#CEtwuxCFbO6)wj_^tdvMB-=n4wt!i~7*? zY#dAysC63`uWLDRKJ1IzmN|v(F|kOlT0`YF&MLYir=%`ZAN&6&9RCW`F`OggIyCVy z{ZduV9|909L!g+)L)%0hPXNh884KWlSQ-ZC^Cm!~b#68z&^h|K1aaC->-#R_f~@_} zF=X<%igZzxIF+H8UCT9XNaK1nqf0eDVWkkCc{|Mhpxt-QD9M^Mqrp9vZ5=QHA*kWC zOvSxG5>w(CLQ60qprP$r9Jku(v6k)BECu=bT5pN-xR%q2k<0AU^qq~j$fQbX>)H8A z;`J*umAY?gJ!Bkom`15lr}t}_YohZW&X9{B#nvfX0z`DHnzSAXAc$ST=?9k`0A+=8 zbv?QXPBc_&2SIF_hL!HYDOORxYzv^d9+%l@f0W8jN36FA$m<3mq*zhI!GJ(bLB{7s zun+-*$)fjqa%*0K5Zd=f21wC=kiHeukjaLZf^zCCF307>Aznw(y21p95@ty2U83(k zO+PH#qe&W&6m%m1B1bJcXZ16%2}GYQIZ;sID`3Qw`EO=P{5Q$*_}f?#|Bf6FPBdf@&&hif^q^1ap7i`70W@evB8#g* z5`5#0x!<%T#&X!qWB4IK2WeR0#I-L|h%c7o0nj2niKyIW5!|LE^~xKz1WD%PxhwSq z#pc;Q*mBSscj6LLWv=Poiv3p%Ktz-Jm;~iaLyyPjNyg<^=vbVPglpE>#O&sZHBUl5 z5y)V|!pHBzcK3qZ4}pP^lBJ|{W_yf3w^{!|I+iF_q47ACX@)c$Jx*MG`G&@)77D+i zvsIt6LFmYkffA8=4$NU#k4-EZA4|%OVxVt!vbVJ)26d+stS7n2kQj?>;;~R(CBu*^OSBDjVvlvFsYCX2dEn0;b-rVQ>UTAP$1_F zP!zP5$~7t~_C*y^AfmK zpWG=+K!P+Q(T<`>-MBR_EoOCI>KLEid+|v?NlRXSP6P_t#?aloFQ50g&9Y!-;XkAx zKGC3foT)Pks*e)nHx9Iz6i+=%fE;R?9(+2ZV;BG&)WNXMeec%MT88#1yMgI7+BOx$ zmMVT&indiSYKkKu!s)~_oW|(-MS7l&m8NYpXdpNV%}MKEDT}c!ps?|5jzxY-;}a7W z@SM7u=zYJE;0{2Nlk9uYXBnVKhplV`(t*aP>%KHLnurM8UcB)ca;y^bxZ zYT93cRkNILTqsUjvW`J^b0iC(tKHCrHo|o63ZeVP-6RPn%x<^!kVFdNb^D5jxg`*EbY@t43fgv7m?V{Pjvp&(Q*mB_LIc+E;=LZqNAm)IRq=7@zvY4@5R#p(_`jwg$x*9Nw~n5yKEM8D z0@BR|{iFeD=l=)T=fX1gc61SX2+U9A#Nh?Nr+w~4?-?~^Wsc_acO0uprWq9|MYC*U3D`Np?ZR6I^kGF4B&E?nh4 zECufI*;lSrp@=?Z&&0HTHjKWhrE!-Dy~&^x;a*Lo1Va5_Q@-wX~SFX#{G%rp^M)1HyqMIb?Qj_biQ zkm&Ho>)C5>^n5A7{^B0BcM29M$h3~q+8|bhH)_y=kbzke{V-mOjU59E++ar=vz%1FXIA6Ay@_<>eO@z)CA8Mfm`hG zWja-Wl(t-KgNs|k{;>8m_Xs5W*@fbw3+P5hfjT|xWBi|Z%;Xb?u=3G8_cPZyi#N^A z@*89{Q2(F;n*f5H|LmH?DI6v(hn-aIr@HPjG5AolAR%T)5zY(@ z+6{;HrFOBsWk7szA#-$d-z6QzgKHPgpjHLds`AwE=*T{#_f^O?c~>R{Tz3GOUHL3& zN)SNoolgvCJFIPC>b<5ekqLs#6HZu|08iSLzy;T-zqNe^ZYqG!2L~nH#zC4Wf3#)R zq#^^y(9yi}pV8bmP^XwfoW*eUbWB|qHLe_Z*kc3_C zg98(7H=Vus-D82xoDI^=xD6^)<9heFq^MfZVhxw4d)Kgu{$(Z~Nn|asFkn(`L6Q5E z53+Yh!T`io0bl|*F}3`8#ZctY>2d*JngXbD=8~SbsmOc`wJ-VlAGtBLYc6!Ji(($h z<+PCxJK&8^_elqfd+okVP&%Z!^SEaVVy$<49qG}`{`xaCYtpxJ21gdbFVfF<4ge%D zmn|?S9@#KQ^-gy3vYe3wWZ3w;t_bF5_QzYX|5_LO54ESmvxpAYt;Yf$*a#umWhm-Uzv(?z^&Sw0 z^Rcj2Pk@G+8v%z%nXkXG-UH3KYr8agp=Kq6B3ag(-lHiEM$xcH-6GAJVZz^A?{Py+ zLDV&sPf4!x4@{i>U%SbtXU(G_|Y!v+;@_#1kU7x03Nkx7J3+7)eh z2}Ul5lK;U>kn7QDTipTltaG7VMPN;fDaz5o3Taih73x<^G8#`>H(^&wRp&BpDS>pg zqkuHgu<8Ryp)a={KiA1Jukr*@ff>D5JW$cK&Mfp>cdzPe4=KuH;WMaR%=|D;HC;XK zJs_&9oo7oS`?YnC@qE*JH7Uj$r&mPi+gpeHPj$$tJK&Gj5rKUv6)mF`8F9C-S~OV$r{16fIv(M|LMykoiPjs z9?IvNzZ=>Ie*Oe8PjvR$`+3ZBg+;Nt_Ti9*hD97dG)|u1m+uXyCHyW7wO^|QM0uRf z&>hhUYbxyNaD|Bhua67@Q>C?S{O(31 z4VrWNl8(-X8lA2#a7^TczfbOzY^?GA8DYK;K3R#$N#(lCoG}t^Q*8k&K_dfTqQ!q- zJH;zP4nf(9Ai#q+Ky#`&Cl=CpToHQ60A*@ER0FZbIoA$!!t@3XS;6k8--`WL?}BwH zIuBXx8lbopJ;z6YidzCFq+BuKJZnYfX^7mhO#dM#tQQIv!2tlpxDq`UiRdXAJ*FqK z9z+(rns(?p6R;nbpd+*(CkHrvp0FH!k|8i7;kiITp2G0)ab0qDpaz6OteAQLOmOND zW6x@t#?A?cMyerZ0|!+9pDVwZ#gqbKb%B!pw=Q;-2Rxb62qq%(VkfdI>yIr)j#Y|xE<@4!jGhcqm0-#B?0f4YrZCsX(E3@cmGg7km; zQxRVCT;Vi=0(Aimf0oqhm0!cpRzOb6eg+kg-{}nKsY{?K0h7k{ zU8JooDNRhYr^8l!UXKuoe<;@u4DPw_Kd z>zcqpJhxBO<*kPk1_0Q*feY&bS>=kA5LD{cUrVqN`;!vlP4iKe$%sVlmb#8CGG(sO zKqt&`m=m(|Nyq@YnrP_M>qslY_yMH0zZLth6o3rJGS$H3p=dfzMTAZb2*l+fxnMR3 zY<%N?TK+~3ND-*(xldYGXh5ck$DwFGKF;VzG%L&K7>dTDZwp{hAYr&%VQM1KAsUwi z=MptVLi)+UNql)u9zI5epxNeH~gGcPtY9uGe4$d-Up0B%5$zXvCGfgs4^MffiT zOT8jzm*{fdmuwJbf{>4{VvCxK=pt9%p;e)&*He(If`;AOm=4tI;6T8E-EQV?Xc=KW zx><^;)s?r@?Yb2H+9&RpO$chIwyD64!UXPIF%kGs3PKg2D)Lo;c1YxA&|(0D^g4z; zM!}!bwJEZGO4FDq$lsSDmtck28=Mv}1`cJ=APfd08sjljJ>F)h6TW9L?{65cfYIbLKre}NiKS67zt52Oe^>)tl z{e9oscLxv&fQ|5nS!S>-v5T;Tvm9Vx#&9LJhGPv0&_!mu_&c3HkwSKsK?Cfo{VK6K ze~~3y!Pf2<1X5DeRqHL`yi@%$)t6yEoLBwbiv$qiyz1fpIr{HlO>EMSAd$kx*ayS@ z@rH0dcY+qT+Z=D%U-FIY7uZ5>)n$glGO35cT5MEa$U>Z@SNHReR2OtoILvd8*XlqY z7}xel?vfoQP-=+Ip(x-`T@;qZ>_|wiid-!GuJbR${&NQ)y|;VWeh)9m zGJ88@Ajf3xCiH=)Bm5i%;PgiIWd1z+IQYAOSJw1Y14 z3PEZ~pOix%GVnWY`{NC;T5;QIB}nvmDFo=u_UOo>drS01%*KJUk|^(gy(1 zfEp3ElJqd>&b8W&1dHJmFN(WHJal_i-f3BuA>muGpT!+9fQb1hZ|CwsKY!kXc&{c0 zdQc`=medbhqa3BnK+d+7H1WQe)nm|Q*iXrB0xSW5C)p=tZ-%3vc`fWYvee4H4u>7E zy*(<9Lgx7ZykHk>lJ-y=$1rVR$`UddLOvh0#4#2fuChEWm^rnR_ut{OJoK|@Qd84X za@0i|ym>w~`3VLI@M0Mg=OO@rQ@CIqoHAwB47ut6Sj;l}f#-uEJ}nd}0Sx(?eJwuU zIw{M5!bxwVKH;g@Dpq%&cGYhm@+8+`#;Q_MDb52 z=Hph+rb2Uxy>+(#k{8PC6pb&7%(`xdNc^u*@evzQF9$#YQXTpobQ-%PSlJ zf=x-*^2yjMGX^)-z#43r>2O=R>HGjGmznmr+`$))dO;2C@;qNmxTxCu5i4V_GgTg% z2@=EWSx$IjI}g{35~FL+LiMazPBs^4xh5qH@? zQsZ;CDh{-4s+!bYDj0dx0w+A46SjJ3)vSHd>;*w1Nv{YjNvtp|+G@dSG6Vpjom6T? zHDx)8!`oWR$zwefV>{^+_JY84c$LFtgX@y85vKV?PP;PQypjGj`a8yX^@r`OHx0Aj zmGs5a+!taxy{-z@gcPTwq(N_+5X9fum%Rg)*MzLY#^|Zcyc$RytLx#v8k=pnj^}utql#0ikK|hn!!eAH zhmt0HKHME*=}!UNYWZV&=o_k_Sy6Q?Mat+05?fU>n};*MW&) z$gRh-``fLG2`xzjeE5AgkmEh;0Z|D7NMO(L#U&uYQMtUPcs2&*jeEcZGZ#s2rwt5* zY;lrVzdGdmd%-r`w!42wm&6Lz)H#?5UjLQYHOF4V7)FflB!7PWxpe$5-vi4WEg^G{ zPOwvA2$Dpr8+sJhGDkCP0~XxbW8e|YPd6-ctRTTrw~hdIx>hV4&2p=|Lpm68dvG<$ zol7hN!B_(x*v<@y&&&0^>ux8`oM|cFgCe3ns7yIHlTLPEN|FaTe;?&5= z0jaOpEBA%wd!Eg%7H;%Vmc)iX|ia zbuq9@&&f##mLtqq%*JKg;0>y`=28u`u&dE<-e1_uTy&d=F}m4zf9WAZ*e% zSO9prV3Cx&h1ipt-ewPsy*U9!&T`~+ylzUY@@I*2nin8e>K5Xhg?z|Exee?|me#fN zjL)CH7{A6Oo6gOIJ0;6WS`RA8buyN(1!-Rbb(?7}-!uagVC^H)Alb+6HW-!^v3r$M zvus9R7iB|D!m>ZbQNBFBrP!&b>wWziozxohob1W(4&+%+hXBU=-KTMWP5`oF8vf2- z``6;4*X@7mvwftpWVMCe#t%c<-QL5jtU4;a~-(o<<+FdcUp zV8DLh`-l#ayJ4B(UW)ai2Om8<&^6{`E70)Z_}lqVp0yP?;r=_bx%)VX=t^j_z`j7QhB@fvL``G*H}k zS4A`ZI%mtfJkVM9UNLh~Ra(h=ovC@RLOSc;D~YRdZcF}R68`B!XYFc;RYSdgHENc> z!w@iR-ExKw~k=gS9;#(E~Hh`?I{t@xZ=+9RK(*6BYy5B+K3^V0^YEo#V#Z@OiQS>N%El zhL@p8x16$-+S^YvOX1jC1Dj}fFT;3^Aa~>~K*eAu$y&$59*~Uz%`BVOz1UNIBZto2 zX2mVxa_W{75S`NH^LTh=UT0=J7Sl>3FxMAe9~cz(y2NW^O_v;cdZ05!O4P;l_n=GMXR&dyl4eQJ?7~mgD zjRA|a`#I`!0+2ua+yBnNZT|T0|6T?H|K4Bf{>TGaaxy_;lPcbVld z(_vqVn@4NQsLKj{4Aw)sY{-Q`Fc^a-^+mgVHO6>PT9anD zfJW@^IA_wYrAPOWkEygzycy*cb9*Ram^{z%q!HP8)r`h<=*Kq#cz^*3`I3^j7%B}k zyxJSGu@ZqB#c|h79ur3U^U}32$sH(wFOI3UnMd5~RW=XL<>9cjC_EEqipHJh0T>Wu zAXSU;+!^BH!!W3i+G~|$L*rsh*Xwp$&F*Izbb2_ql*g<8-rhiuVc9Y;GboGVi{W`$ z@@1ci<8=A_nK82WWIoF8uV2FoTFqt|#KiL*mtK^gBHb$qVZm07b7^9{zgLabY;`y%?9~~xgwX4I{ z)Od9Rs?9W~c=0y?Nh-3H3@%-VRIZ8CjO!JkfbNcdF>s#2Mm4fODCNpN6!(a@J)M1f zF^_BN!#u~|R?y=4A!d$6i71}8AH1b59o$Ni9?6^6^3GmoNx8iuQ714D!}`w+K=}D5 z|LK45P8Q^S0LZ)c^C$mp1`NC3EBN>!v-v;&hrj<`pyo*=SOADHq|dW49hnxAtaxwN z4Mcpq9k3VS1*!4APRs&yAlqU;`g2x z6DY!mGHoCO@Zof<2bBW(#IP!v;RYgUg`~^LRjJi=qM?7@PLy%Nk%Y@2CXzsA*^lD3 z+Q>lvxebq}IS~d{fcrB%t|Z|}Wq(?&^x*9%UWS*|I2&a>hicZER!@N!FFv8w1E<5TB3oaWW`cw&h_SX2z@C_75=_r$+d*yu#1(G*F14{<_^4 z5C@>~^9e?4oP8;`2Y>~D#SGK!sHL0XUGeJ^#{Nku+Z^ZD*vE?eiSM4Ji+t|b2j43I z3T$2KvAM`U4At&Ksa_+0mJ*P>DByBj7|B^q%QJJyYi_{hz7pSlNbbk?%meajoB@Uz zT!v$V{nXiVSrV@<8tV}ey-FT*R|v;|r-gH`B}^Mdv%9RX`b+=^_VYOj(MftPLfzMgCwh)?E8o^LHR>cL%DwF46&izOax#9nbzYn#{-+CaBqnL zNd+|w`UWXmc~G3bRT&8z+51%pl?Jijtt4G>Qds8VK;Q1dARFDyVmNur4W%o!tj6zS zrFC?Bp&ZNue>vixqQx^47W*#cjIDseCu(E zC@m5&$Lf;4Wd_F56%U+Vowgy`k{p8uGZC?ZKFvVI!}sp??zj!3tGzU4cU!mjMC@+c z{eQE6T{rtZ->jea;k^P{E1!{i%IWRib7V z@Td0HypIoRRitj=LpjSv_+VL1bJ&C(= z=hrCsyD3q(Z*qE;7kg?st0i7e5Oc~DY_?m|9lKkZ78~jl_>f7xMh!>ndr1qk{MRM8 z?9UDKmih)O|0egPxJfU4m1%MiP6^!XF9(_nFiVuB1$m>3t(FCi|)J z{!u3QrUmb${xHv4l9b0{YnKZWnT_^~xX%TE{Lr=^0zf`wKmX0&_$%)h(fh}L_b1)& zlQf|NIzm3RY~bU5DRcQ!k-bW>+A2a9ps_cfXK?b^TGS0{dSkj|UXO19&WpDPu=jP~ z;doePBxJDgt`w~G9*9H(x|j`sNc`UE@mzK&#>6e>FaY=SmViad6#%6F(#+oeY~&3I zX_@*!>=!XD>HKR063elo1n8y#k<~OOQTPiSt*A0^8Iag_5^;DkiWzX24z)MMgTAF$ zj{39dj+GmCdU$omjEN13Hc5U|5!4eH3jrcr*zlKFSIb52V>I4oNVvG$7gD85PVHHZ zOOnwzub>({862&~!v=5wk{>&~D%VYZ!td2PQB#!apzQ$+pA6m>8+9!yvMh`JEi6SF z=ROb*as7L+8=Bs{1qQ401~7KNZzSnrkY_LkRItrL0AhFl)p=gU-vJT-SZ;K$7-s&? zzWSe&JpkH2haLc(?C*b)C1WrO>>qZ){u`%m*=+8luEbWA{uK|eW{m(*90y>rClD8xqv+u;w zz9F?NiCgv~0X8D#?7SpRl>y&ChTCXH_mJ=YCNDs-AXfWA(({@qX=|QS5X10aI-^+Z zs>kR;Mzirw^fF+w%r~Tay52c4YXBg|Vlqk>3z55bSNZyyuDj#Rs5rT+F8n!VtNKEa zkK5mI-(^qhN}Xd?cMuxHtYX9b_xpM-0HhB2KNW!d=|B2|cWzt%_90Bh&YW)9)@Nft zNWlVN+$-@4Sr&4t?K0PG7?1!gQbg~n{oBjA?ouHkaw~ubUXk5TV?ee=N)-pb$dapI zG?qD{H#$OAjWOYV1~&cePQ1D)a;m#hV7SbYx3r*}p@4lcf(LAX_LCn(OoxjK?e}ob zHNb(#y%&%&J3?E!6SdqrYA|sKkZ?kHkX$QeeqSfuWypjz75Bv_7_N%3$jAYKx0tD^9g^= z=}@-f!n2U|M)(i<%O6i zvAi4t7|xsCKLw4oFU7u(@O+GiMT%T^!eb~z_@)T+)x9x=eFw0Kz>(Qk4sKrA*&o)w`rZxsD6bGlU*UI5+S{(L+j ze>H9U&t>+0UjVZ6W>kau4s`JM-TnNxKYK^-$ot5!o}K|&wHchbJtbnTnnWuAhqiT( z2vNP2?Qq-qzKC#;n&pzhy(eY&{};i2th@H00RjX<9K9P+z3K`1Ni51LKh_S6*b_pU zR`h<{wclw<4>m>Z=Z~co{X^r#do z)zT%K-ZnbTbc*dVQDd*S7qNG*nX_Ga^4`vH76tTUh+P$07c zFfgF5&f9b5{|v^zDi-Ce0jf>_48XI(8}O<<{_hlva@{_w_JkNe!OEDGOK zhY);j7Nr`^x6{wSqMT>8ppSJwYl}p`Gb~D%`$B4(773J3!lHE9znQ?!Rqibr$fvKf ziT!bz0o9}CC9x>a0f79ofAH4_X;b!Q45U+k^WW;zsQk0@dK^l(^5awh@*xF-6@WZ- zOZr=7(juo_IsJ;;qFhiQ!wFc2SQPhs-~|DYU^uTpr?4n5nl$RJNvHasMPo%G6>C|5 z#9}DLs!WNQ5B9O{TD$sg-*`X4V( znUBAW@mSBNoitX3HYK7r%+CTkHpZDbU?m1qI`O?W#hL1ju8?VCMN&%0EVr!#V%C#< zG7t0QJYS?9=EF`AE*`9M;Rgxh=j&|9Or>g9dBu_8nZ{+z(adJQWB7h43 z+Wc6cWzrs#W5n|U`(i&w|K90XVSQ?!OER{P3fpnkK&Yj84payrH_ASg04~QFjq(OsDV}&d>{$s9j{G+@S?g2zot&r^31{Q%t#Ilaiy|wf z(YeFK;Ktyd*KOtZ_*G*uS7K12ObEtFUj|;=`Q;G<8KgR`NQ~>fJ zAmV2MAOm9IuK7P61Qd`>h2-iko7mkU5=L|Z8vo7vj6}Ajet*0Dixj&HtAPRC#e~Tn z{|Q>t6PvQi+i@EPbqweMRF!^9h3$6POQE zz@M`ff|Dat3WGD~(l%B6w{ zFibPUkiMJKc3i<&jq+!k&yhi|)8!0U=EaL+ll|=|_pwCW^K_W*Ry%7f)#NqvVug!M z-6h0=gp=5U6&>gEWTbsfGPB3RicRy8oHfgF&KTR>OrE4hH<{6O1hBhIYX3<1C@%Iv zAUelB%hvRn7P4$!@AB({jLSxTGa!}~yXWL%TGNqA6Q>`3)td}x3`|%!>=g>j98448 zHQliD#3186TGO9f6Z(Ju{hxLdQ{80861}w0uVM`mS>seaPIcK zyeO45!6d$x1{2dc(YrQ>*^C}}-b&%Hrv>`d0Egp@evShztckS{)y_%C@qp`68fEjF zi?>WGM|S#bc#?ChA>~bF2g9v_4y+81!)<=< zHEI~234jM{sE$wo03ZNKL_t(}mY+ZSvj-)TypA#p0zg9o$7Aq!JS!nfI%?0u5-je+ z@!2aAuWc#qw138+_*Oui&!ic@luo5YF9WZ{&|Kxm4ZqMxQPg7J?j>0Ykg3;r`6?%d z&DGmt&>jG{#x+m#XPoZ@MUDnj_GP8w$m^2)c2QEmCXMBUF>$(G+;<|jwiJ58?u5Br zjAzgKzRFTgfT0&PoYrS1B)UgVbLWY{mc1tiG=83OzMc)cKk)KdqHCXrlO0o!%4J@B zGP@3ta5`4R9(S4biPFdOVH|wO#HPd4vS8jX^I}=V*-O^UwL0~0&E)0iS_8YiB~Hyk zmgTl|fJ=?xXIl*F_NdlAv*-|$$MyUDJr@A-_x_`QBl$jloJsjNZYN!2LYUFNKc(1^8<1%u^|A7@M(0-$WGE0 zsasWYwdt}+eXC}70~b@ATQd>Utfk~Nv2@B!?AB(|NQ#dGW@BY<` z_4|>LEv>L9JtItS(=3^~8#k~LeIc_39_-l&9jgir?afGZu>2^1h|nx|d4g+=KGF<^-p;Bu_2OnP-Sq#yFB0K`(!;D;Kn&$4`p6?%qVhHHb6U;@OL z*dr0_%1PUYrBRl}*qqKVZ$C;z?7qq#5w=Tm9hu>IE*tq*U`;HC;`zaN%*)C>Y=%LD zftEW#066xh@VfM$m-7Zd05N_acn|L1WN>5kcGSQq5j4PSX(?VhrV^cP4;i4|Oq^L4dt%&d??OyV zw-Wm~9mXrCKAMXhIKer^uO;UR&LLj8#{|Ef40~>NKlZGJ)U~kI7}aa47K1)E1l0b%JRuNS^kwo_Pm~zWb7JOZn!{~2(_C~|B;cPD zfb77+j&-O%KPG4TF%x?2{@6*o-tTz+@=tmmpC^WQm5amIT@H)_d>B*!B+O*oFH1S0 ziU=Px>s!9Xe%QCM#vU)cNDmr*k9m<`t%mG~J3iKXV>!JW!H%dWBoeW@3{rv?T8a%> z<^seRpl`D2+Wm(*ajkiHwVfS zA4?JzK*W+QCv8Q$_;p(uN#%%>cK?)^HO+k--2Sl4x8IwpR;#&73|U=4dIhB$TGMe$ z>)77p3qWXd=h+Mg8{rZ|PM*bj?S9Dr@h+z3lS{Bdxpb3%Uw64CW4kO$ zsBM#FIZVoFS%8w-D-tok%S=Q-ZuFRA^*sPd)#>YoaN>aWk}D2&_csHMU?qwlW7|nf zrik0*^VsTOm(71-YA8~;Zgij9%zPlvN)74T237)eEOYu*0D#%BdA<5Y_#5}dg8}fs zE3)Y_s0d(klbMJ}?do#URZX+1MTRajWT-b~>T*MLrkr?qY|F)hVNtnJDi4%#4=;$# za5lcj@y;?U0<~zHtJTXh9gHU`Lez~q#UOiOu@?3c+KnT2qw5d)y5QD#Pxe?d{Weta`E0sKy~gviGSc*473Ai*%c9%rV6?Q80m z)4yO!@P%NU51E%FSW!m#DknMxNPd-5ycnVlMtBY8GP5&y8_Xq{(j?FTN ze(g90JTcvI_RKgWz^Q2lpz8ua!vHRz79J)^{z&hN&(y^*G0vd}25J#XFly30`+HJ| z!BIQz`Ed?ISe@szF_(L~0M%((fDxy6vC!bs$+=mXvn*9Z&gKw_NGm(n%KCMdRuKmd z*s%@q~oxe@n$o|D%cZ%gqa?e31-MW%)C4(9rhzmFc1nv%%vunjJ! zH84oV`dI-oUAg^rVO^$e8;tArn)tdDK;le6FM5q0=EFk9@Pdp5F5LGuYo5-^Vi;rq zBG%K~td4(lGtF~=y(=4=-lxwd1?y7)koRRlcHp7PxqgU&sR>=5qXXnE0J$r62l+fu zG2IJzAhB{dm1B63WIe1h5V8N`ex94u)uG^=ku(!gD1%M`u?5pe_@oiPw#qYhreBQc1dT?};{UIqO3pv?7ir0p9KmJz!i{4i; z%aW|!?HJFK59KaL_BzeVtj1&M5WyP)NQq>wu1T@_lYl%at4U!px?yv=8&lmbf8Pz; z-PcM3bI*t4{A!0s#P;r2NazHqv4YX-aUmV*ILp^Cu@fa|+S*GH_rO)x-8`oVDLI_Lh|~H<#az+P)llY555kAv`C5g+u1f@SN-= z6<&pn75l3O96~dGp4ktE5P*w2QzH6zlFjYWF)?WX>9!cWQ&)#T2SCMagyU&>T^als zUhzHnyU&*#wZ2ghz!$j{rp9Vd;sb0vLFMu*MgsXyc_ zC+Bf);Ikc3+*i3YF_@squ(QZ%eD=FJ6)e8@lgt8hT$?u~*x*f0_6vW`c@EaF@5EB5 zSj4z&=M~O#W>VZx&U@%-doiEQgb~2%L%d{Bgd|y;ztk&H8>8 z`LzI$L+r+%{?Q-2*LFKl@h64V*ma83Zj#T%enb;GvouPhZSgxl6xmeF$;;dy5@4iA zt}M%<)G*r9i=@k?hP?#KB_x4Z_CR8HXMo4IDipyF59dA8zG{NfWcO*iV;@4 zXod3G>|=ok{*MyXYk;)bgN=BB#oX9iLekcw{2#sN;x>aAvm9nokZNtZJnTP~{*Z{h z6=SmL8Vlj_#FY%?C3PZ<==`7G-O}zxb&kot6}%&k{aa6m4eK_dlfn^n?yO0)+}vtv zI7*Kud)j!?PSTOKp_t$>2afZ~lL3Z1LRhgvdX?ySo9riThQ3K!tRK+nqeT74q*7!NT$*7LiI1Tf{-WqzDZ>z1wYx|uN`LU{Qq z56d>J6W{COHnYO;Y+sC78%w|<+IX5-C;-Z)80MWM=I3O?eXv2394g>cGZ#T_^xgyT zLS}c8Uw1QRe9qhn;?;X3R2+8<^e4H?#sCfmr1r5`ju))cQGWgaDL%Un7~u2NKYs&y zeXq^-#P_=PnM`wv9*YRX4jWWd6T1r~IgdD=H+&|e-0KoPoL8+Y#Qu|QVXn>Ua()F^ z++AeP9*Zz$EF3-pGZN?V)69x&riF=^7PeerDenFVN!n#j%0jB;=5m5lHq-0_>5oIP zz7ddelbIeoFiz<*tHOd?EYe*y;Nb;4WLI(hyUI+*MvRDiM|^#KkVHEc3a@fF%^rmO zngB>;LEgny?DkiU>%Pys{EyEZbQe7h|Mm7DLr6dIO7L;NH^rO@#HxfB}82=CIO z&r)b;qv6fa_-85~Q1K}W4SOJP)>g#K6tIm~7=Kp_4dm$| zwug2P-%fM-QfT<}g@)BAU!#btjPBQ%bmrIcxh0*=N4djiKFT11-!0cdvSuHU7f0sB zZ&UkA91)y~8$WQ-!hk1aaMxmZ1aAD90)V7=^Rvcq*eD)yQc0;8*3EVYBlFw~4NH`- zuVF5JtjUv~q|k7d!IkA*MV9qz0wBAeT}k2lBwhUw2>H3eM{7d=5M|M}*(mocLhiNuc@*mbQ{gulxt3G4*bX4@u+09CjgqSd9*$)O3Sl6-YQP{;xu(VA zq5X2ZnG`=p6eM=7tAxL;CfS#=-lu2*7?4+OB;B&UbaBy6UKAOIN2JS{=9~;ab^iKh zntd!0ulQQV$J5fuG0WWpNSJD8!Kd<6*k{7PAJN7aG7*pSv4!kGGOl>M^X4gGo8@_4 z;WXZRNpJVe?G2Yz&?kk;vM(r z$Ly5>rp@DkRmTx`l8N#9+5==Z%fSXb-wI~@9+>q2@EM4jz4K?kvSEBz?0+$6briS< z{P`$L%_4q#l3%O2787hXkHw2KNkmVF0UObAGSN9r5xgPmn&u)#%e}lfVzA;x9nL`& zT*Nu|mCWBW`TcHkYM13(0GT8ke$&o@PF_UbmC6ub=gtwXYj_fCTYM@|+_N2#5H=ll zUvX`-c|SdeF7H45m|a#QxX>{5jm&Z?CC|mFm&xqzw)M%c4uI5ccaga}In}$i|Kq>^ zdp`(7NbdTa;G+j1wLsie7oO)m^HN6c?hto)04g9Two141Y;E?#zL1b+?M&!6*tg4U zDygl8$tNNJ;^^Lp;i{=wGLqj{$yL`H*B^>wzS2TwJnok{MvQ#~p;#T(P5m`#IC8ox}#?mT`;j2AkV3`)BhU;nek3?DFA~PzhH>F8+o>RBj zpCf=Ry$WxKdQ4IlcqayBkxP$4iZ#yhx)Bw4Sr`x}kjz{8VWfgc#~NKAPp#>lH82A$ zZ%Q991i0ug1ZpIXm40`M$hg^;ja}!MUSth!d3Ir-r4%-RTC2@Pnv1J1@F9PgmB`&m z*2p^r$8w0ZqB+rV2RPZUTsnEjk*c?9#;(B3gW+zVVuhSR(M$&kL?Mlu=0OdR;ceX* zZVyVt{3`C&(k@GqT$bpeay=fllmmPW7}%fLm|z1G8|>ro^RK0XA8S*Alp~5g6my%wnqSu_Lp;ufkd}^_)dH~9@<+27yhctb zv&_!X$X$8w{2GQw<|Kz5z<5+v#mrJX$7z254l!T$@H}OSX9}b^8#dVAsw9!`IOms| z>=nskv&PZ}v!Zxn0~QSMu&$0_UI~aGIdk(n`{)-yM)_RkhWpg}aWRZxcX=Yf2o@wI zA*#uITY9M63hy8j7#X+3Cq`QLF(9c$x&}94mLDq#?6UbsY*u&lul+Eq;?G1n#xam? zRT&Ql#-zlqnL5mxEc>Yk=^Y^8=ZAp6r`(UXec#93fsCEMV+U?_tjVALqd)klwrk!H_np}2jU>svChiGA zCdHf5OR(;8=gA=u!tIaRcVa&Tc!=ALM)YMim96dZm=;62RzSj!G8O2#ZmAdH2`Q2; z$MHs7-?FhCj`(u}YYg69OUy_n_AV!Mu^nK@Cv>vXoz@c6`7}$U;v}kQ#k$fI26`2H zL7!VzV7V3-j>yoTwRT>gu$aB*FM4~kI$+9@2+OD#@Bvk|@XUm)EX!$L8ND54b1j1!1GyQIjRw)VWJ4axJlMN?Bf1n$ zvVXx{AHgCV54%S^(3<&xrSWRISFRm7Y*vH;^h+;_hX2d`F`PEDx0x7j|F!p`JeO!^ z%cu+l=c8c{i<{m*x)()22RSJV9$v6WJ~jaz5(RzU8T6tkfiQ{&Yis-KwqQk?BCYM= zNtxwRLKulKq~GL{TNdHCPOT@y;zFcbcoN-3l8PVCCCU2OUX*#e_OWOerH1=!^zQfC zuT>@25A!C+e&Qm+FFzj{!@KE*pu=5!n=Xe#*$QFr^rjp3gLv+DG%r37`$O&(WVN4} zU&P=YXl9#tY%qepE6~lNNwDq}*&Dab3nOvYQnCy*{6f%zURe}?Nc?S;&F3IIwo6RP zvPr1I^nKHAGaFLnSG79?Z-?8>0U_@FfGHsc*v58CssKawbU5bM1&1Vaxj)1P^?L!A zNY{Fk3l00{^d|R$7@V-*$7N2`+9;M6(1G#Y=Ctje7ROMIA0$qEQyJN2>KYk09jcpQ zgZ7@~*7R+WRBb6?>3N=HpNUz6jpRsxmfOGB54)owQ1k187Z1~m>mK<&lLdW?z}%|EphWHrt);GBO~h2>=-CC+1)#RGDYP2lUR z%$RtwW-Gw4o#wW5z)KYUO|yI$|A(218mi)$WJ(gNr!gfncJ12paFZAQ+<)bc6ZXM^ zqKgY1$Lj@7mlHAv07|~!_RFyUOaVyLX4s;z%>aY+T8BzSn(d9O6F0g30`(E|zwH@L z&GIa6K+*#cW%34P;^-`EzMSF9HZUR_(4i=m|S9GIx&?P#$$z0 z7s+0}q!L0NlM8nBn%G+rUX-y48?{o`1DkWn!p<5fiiECNXmhz0LGQ9P%i4M6j<-NtarVhW#);W=o#TwDiyYNUYZAEkI$r6kc$WleuiJ_v58f zK>eR#-P>6TxGo_HP7SNf79OM6wrtK(mk#zoQI?YnD?l{Z8cK7Q+$K_jK(jV7lW_WhL^SHb1 zdpVfct6!qO!=J_U{+;AF;~Guu*kpqbclfxArA8|oAk|_|7eIc>1&b6bJZa}XfWWQ5 ztj||0;MmVW@P<>qNb&-ta4zKhZ?MrX$h>aX2^N27cK5masr(&|_O-0c&F-<7)G35y zlGz%rm;G^Pe@9wGB<(Va2q#ZoMEK?BBLK+z`a3)$d$HdsS&#wYgp3Sk_kVmy3wwVO*Gb*_*U+d=n}iCjtxb5WMwu>0`)hV39^)#nQbn0omrwpq zW^rsH5(EAPpj4CPFQJ9~gH|uka=SCDl2xX&Te(Hs??ILO&oyj$h1xNxmfU=4VgKbN zh8gVj!02cXNF z#xE+dzSZ!a;(r%;pQ#yr(byI`LpG)Cuu8X(e<9u4RseL}ju%!W*c81{upWRFdqT{D zkhB#ESzQJn$gThwA=gqL$fNunMD3>7->&U10M4SZ6#xbH8w`f%Tj<%G->@HBGc8>fU3Iz>*~ zg*AY|bsP3Enx~S$Nlu}03v%ew-(g`vx>>i) z^QwLmC+XadenG3dC&Lt``El0aTZ&^@O!XhwwCo;?FLJc~>wH>*2KIo&UXbo6CsP4B zmZKrqgz4D*3rk`ne5|VfMSH%0l5{M^OT!P_^vufm!{ulOke1TfcjeDR1;h>y;4^&4 zS5u23e{MONeP_3$Tx=S^Wvug}SW}weId5?eGpjBN};%uayKF=?w4vp4~C6^UTF1u`M*G{Aa<$cV56djq;xadL3q{zF(ewYnGJ{9R*HBm#iJ+xf$XieWtOVg~(>f4)~@PXMpl@505 z2k9EHaGav$RS}8!CIc8&>>{b;G#3f-I}C~A7lRGC$P7d6@o-94Z)7j4e*lHsQD!E* zN*{$_7c#J4wcl??*{B|7%Cn)V9j3&laRZnzUSAAXH4`Wqm!{;i+(=C`^XD#g>yER8 zi`C@Rmodq!zYOCsd`*Ua46`yGP#M--qE}@`W(q=*_hwk|2T(}hY}(ii51+}b|4VD4 zNAjg1c?SyYJ=u)2Pi6OaugE)ni~H6Fa$Xag$T7QffA^{YIQ!4SNS>9;21Y^_c9f4B z5DRngJJm#AfSF}!UTgq3EQ+Mca!>#U%x;+7FWPykN)64h0Bl^G8t1yH80%L87PSlj z03ZNKL_t(-L5QG`C{~;{_QahhE*12(C|H@xY<>sa1S2oc2y6*KE1PLsOd}A**D@qr z_!`anJKfQXa5e3U>zJeI&D4bS`mJZ=%dr29Q?Qs%VyXy6VN6!suS=~)r+E0ejScS)^sPsp~UZIO(H zY2DGj-qr<(>uD}A^f11aPh_>1H$|!7qP3|b>$>l=)LCeK?ULWLSz7h7o~H!C<}vD*&XRoo{k%;A)(kY9p5M^^gL$IWM*9USyM^ zSqH}{+M|L&&^lZg5pwNWY2#wIDrJHprXJWuX zSBVp{Y-acBsN;y)_id4CF(}ls!YDR7DKe$WuqEBYu?MR4IGc?fUz!r9rr8u*SBNcZ za!S@(sYaHJ#dCUdUB-rBtXmY6G;TT)amHZlsENI9`u4h;TZU85RCcgs%ZrdR>Ki9nw6+&ZG7fAw#|V=GDjX; zIv1a(QI;WA*3GGBH3r$A9W#(TC(ac$MJ>(|(;SxIL@q#ZjV(4iQURRHSq&PT?B{dK z{0SC#+!2MOHx|M!a>=gyqb%pe=V9|YssX$nmM2FU<)sP^-{jVGr*k>ki-bw8fq)sV zVV0QfLCcq6{~1fLqW|MItBPFoeZS19vcY^TvMkGUxN9r6U7pL`5f~~Z8Qk}H;zbPb zZaD;ekc{=P%07?nGS{jbXc%xfHOrvJP3vYr%wpIr|6?tU02fQHpp?+AJ-8&%?d&q$ zgrWUzNF_xYz$%vwMt-uSTYe*}My0vqK0o(f0! zGSELRv(%~w1%(B%ncWE(_HDqRSPHgLcSudQvT1!a5!0a}Bu5m6#B1FCM!^#736B>{ z%_OIIY!%t-#4IO_xb@cQTW(CRGA*>dj@R`H6V0`jXj!%u(vMLd#-l9jv|Z4g;KIcX z?*^<1k(LH8Bxi9kyp_h7Kff@OUbJZ5xNu(#+nF83TRkM!tTS*} zroyo0L5g9X!3o2z2QdcU(CHV+7wkbDn~pUvdvd zye3D(VbRQqdoI!{{ju1e;|%HmZ;l(DALkAVgO-itJ_eumJOGGl;ZctOBeythXs_-yM441h$#YXg$l(j7{%qnZul7U`~NO(om z?zryq3yD|69U^i6+hOO3{T{m?mKV79}y2cZLEt+45N_nsxTtU+#`ZS%sJ!S7YSA>VH69p7IV@| zwWbXSMe@fuCzGIq1+2K3FxZRNInHo1ZG$v^3xJ5*(?bIGx?O0v5W5XGn3n4nZRy5g z?rSg-1OKa19yo0)bWuP!&At$?%(-xo-V=@kpk&`kJl1KGl!cc2q764}%MfsTNXxB+ z8?Ut5T>c!3+w8rGev+fiYS@5nld)5*7|xvZMS2y(RxPp%!}BOJKTfbpE7iq}@73)p z`?560AgOBool3^@t%+UU?^E`?5XH-|iY%%&o`)~ubO?w57Ca9?gU$CI%6C8lHf#q% z02Z(v>fI8aJ;+6TxyW_=Vy02Nn$>R&))MQ0BvT%p#%oy z1{@AI_~@P&od;PYaXD*>3ErFGIY*@)q_Z5r5n$$`eXm^-Yp))$>}DCF$o4GvdmJiG zjPv}N$`D^?U}6s=z7ehoupqG9j%s($h!p{~l$R#=Fs0ApalZ`v&lG?pqj;A+%n!>U z!(m&3M!Q48_nC-EbOIKoD`c~054`V<8q`0kD`b*A zChKYTj5w0_L%KqOIhi$I2QsUWYt7!jD`a;vG-G2UpWE6$rYoctPknS($VJX?|D|?? zJVo^87jyQPu8{XJXMf7BkR-c1Y1@;m#qrjGe)mJ#mbdF!5*-g7Oc|k_)SlMs=?0u@P5Ccz3AT1N~B0~bgC)uav_n+t49cLMt zf!n$;lx917>Ev}|JctzM{B}EP3^C_e7p|JU^+Jkc)$Jz<39KZwEGYT>x>l(zjJZ2X z?k?1X{f*FZs#x85j?o}dab2`8xbZgs8 zCk?i}EBiH?)En!V-!RX2g?(A&<7Ck9*%2iQ+|RSWWK&w&-Qn@D%q518VpV8Ex75qA zy%DpwEK$AF<^`!{c6&h_ql-D+03WHY_lX<< zRvzZ-(gK$Ovp-5P}k#+*ZLykLW_$u%W;q}AWoTzM3d7jEkMc@ z5}8SEXSeYYaKVZl7d9d+ZO{ZTg-P=&vjP}A!?3Ou!?_p)T9ZAr`*G&`eSa}?e~K5Nxviws~Ug%0g@s3co-AA8RsF_pvp2d#~s6j)Mj-7eCF2U z+?j&$-9tIsB0)3TvebYMi?bXJ{U-o0_Lt&|kK6lbKTWVTv6dhXHWRHabgImLG{51e` zl&pIo90P3WRd+np^&5Vwx>6ZpJ&5;R|aVOA@LbIZ392s?f&lLtqhuneRpY86MB_%u|IiBh%0u?w8Ik|NMO&C-=~e(6<85~TX&pGN9U!a zvPLn7zhv5;yS-EPCE4%g^MYAZ%e;7A^W!04wedgtM5gT=?1dlL=rFoVQtL$}I!O2% zfA1UHN4d*otAav8OH$(2YZ=hHED7d%Mj~Vs^S;hT^kD6$x%@DEpfacn*nAoGpRokX z<=CikSRiL+1&AC9XNn4qQk9X)#EUsSftd=i-6ci$1`FbSgxqSLk0IEZo9sOa z%4ym3cQltzvQ}I ztkwb|zCgiJkYUdS$=Y6*bH&AP)BsK-W=SuNger;*r%m#;dDEl>UZIBpv7~{R;gD*~ zvY*5$Ss!Iw77JpNyIa!-!<>c{x2YQ-*sLBbP-z9vB&QA4266AhrFI4=mJZnn z?sTf?F(`&$dt81OjLVDt@EuGN~ntMi;L#&aT>iu=}HjqX5C4SpbAL$}zc&+Ji7 z)#?uPpP1ny;fq*eGjnc{k2JW`20nJ6B24z9mc|wGvR7HgXup+NIKZ8mnccqqIa-c# zobkFai3UkdZ8NjD11R?H@Evk7X-$Xo>uum+iD1YBPa0t4@4Pp2g#vWPxx8{S9tLf= zM~QPWUOs|BEI~Ef%ej@Xj_8#dWeJuUk$1_n22JR1vMkspbjJc?Vh?lsEVs1xk@#my z{*={o*vMl`Fk}#)U0cu>L;$sV!evyAw?OHOhuQJoH z?uPQJ$Wp#*j7XA5Ei)sN9&6S5JbWMCP=G|l0^c^qVpAi}mO1wKVVN7vBcgZSz|0Of zY$UyMPe?qrVtD~F0Zb-hIJze1+A1w8VtDt!000B9Fss22f45g;J$UmS@2 zy&N(yscBdP3>Pw&9U{F7Go{K6Deu}H8vrK;)r-8}I3AfT*D}?+I|KmcINqAK@1!oT z=6j{k&BmWps`I6H;c)N5II}IOa8EJB011XYoBz#FJu9isNq%lNfnzw2_i2=edIove z2bdHa{dvB;pM1{nc#x2_763pJRXsAWF5OY~<+$V$*_30ZX^l6V<9!2A>_H*j%i94$ zU`G`ob?*9t;X=pNzR z%zfQc6*8-FyEekaJFzi!RkiZM$N%%c`!eu9v!8GOpZ`IDM|Zi0&a8!#vZ6~*-i_4F zr`y@ivum&Fd)dLp4yD=gsqP;qdP$hz_V4%?!CduqIp)H+Kld8Wt-yb z3*XDJu0O(zK5zGfMOn|9@%+B%?+%*L72S)>>qpJ#(=5w!npO``t|ia9ej+n^mx~bH zKY~2VkNbmW^e!i589Y7AbJ^05nbA3cvnph2+i}3}ZAQOnjLPDyF)BRfb2Xz!Wbo;y zGowd}))zDSvo)jN{U*PbPGjO{w@nW;zS+mnp1uA5vJB*ou3_!<^B&Fx;Kgqw#3Wv)63D21vArO;K}!3b=ue{2MzGKcv3U^ z8v(W<($q>s$@Zr< zqqq6_MSy^iB&{-&VJVd*S04V|AP(aZpk|eQ9TCBGpf%CazNx@)k>yHnBI+O zHGoJ(qL0hr{s1_b%r~^6E4CN*12Ez^;H^9-cuVXVaWlJr$3%|w2@^YD2jH=G{GX&) zn91!MsSF6IT^q^3`c(im%X;6necf&D(FZbbV20>kik~XmLHn#r3AtEs3=zF}(JllG z_FNELU}(zR5x;KUU3s;5+}H*DAGf0nT#!nc;c%x&%D$J+g9~9YHD2TkA;$*rxE0gj zHsghoXA&rwwr$DcHyHU>W@7Y%Gp7L?1UW z)jz-E#t77+zKFmb4~Jj(v;c_A?zrqSR_HJDs=Y%EoE8==#pMv_)G|qWQUGj#&hVS; zSqlIR@-BZ4=r{qGxGZwu-8pSQf_;SVrF5|XMgS-N?goQYyi1kIFmN&h;*KF0Nm#cE zbe!bI-&{V*_ti1s06CY264}f5Za&HkGT(L5xy&3}A`3H2%sJ<0_8-jjB%hD@KY(Pb z>llG7md7UV$E<-8hqQ1l`hH)(ee*BB4E@hdeziCkh(JqxAk9ev(F268Ky2U^qv5Oob?^ga=l zC$1*Lq^e|6pAA#3!j#^Xj*_WN*sE4vXl5o@iv6~`R`uNvW_Fkn z5t!CZlR)!pHM`n}VBd>@NllzG`!QIxf0dKB zLb7tyRJxbOC{+m-<_yaA=hf|YHC{n+1S zPHS>=c)yzea{oU3rX5cYeqO4$Zx2iWFzfwiqz6lSE<8S<1n@yx6|V)LgZsH$kk@db z&lZo(YrydU+IEjoK~5O>M=fQmJI>L?HSKCKYBDXG)?r)RQ4;{;sCbc%vZuqolJKMm ztOQf@N-1cgCcCnX5xJV#te$Z>ZR}bN38+B~02lkaTnNeci`xN74mw~lz!FM>7n{l* zssN~)m-7bSJ9|T%ELRs3+=~;8JQ;3sh z&QGBL+Jlw10OWD26s-O4Fc=K>;o~U&jOq`8B{5)tRjJ(|uozX6b;uO&C+pbX%047N z$6bpcGdTHnrF5?OuwNvBfScm+*k<5jbm!8;ROBMV56IG`gX^1?L_n_yZ#w34`b3gJ ze%XM@L(%$~X4{tk`#yjlhI9Kl){-Rw0^Hz^DLlZy-k1)X;a2vox0yC$yc^q-BJMloLEO2k}O60h7s^}P9VWY z;u2p5%LM`rE*NUPXKwEDhkAb=s?CP>%_JRFhYa@JB=U{6To zy0xxa2Jw`Tb&;74>!V=<`iNkyI1WI|b=xj3#>Y7s$`T?o4x7?b5JSc&Gao#DWlk)= za)BMd$3==Z89R=Xp`kJ>mO|N=;t1b$F~=KdxaHg?a!X{=YW03d>w$s*1w%h<$8JCl z1NJv<2nQ6vNH9?M!`5%|V<8D*JLER3(yz}l;DA}^@3$ZNU|2jn?{4cs&)1oa;TZej z_v<#OE=L&*_*i=Y@zvXX01S9sz{zf3ksh@N4D0=Sz;lB|07Uh1x!<(cIac>C8{5Nc z6f(2ZJ*%Y0!()NJ1D0l~ws*k6Mng8H`O1dWl0+9TTDryO+)M!bHe=(@SSO~#J`j!( zP}51iSEG|t^4n#WoAvuRYX1kM8c_GF-cf!%c&!klrskU3~ZL|NW1@0DzwxeEf@lyq|q;vzNH~gzY27UrZeYK;*G_Jj{X|U^D_~ zIQG}GaHP&I_5frH5ZJRI1`venE?&ZWi+kV#&y7pB~_2^ z5xL9hT3dZ^82;@&LE_av*8W3C)GmO50z)$+wNE4xvX<@tsjEW?SFj=g0DKn_2i)Z@ zkWFDn9LZY^?M}^#IAWC~vfp@qi^gPNlxO89*oR9oGhH&@HD>6wq*iJ=2W+r{1XE!k z0~i5l&>P~&UQ4}L?cz9D<>JENY1C#szN@xs zXRnA`(qU3e_u~Pff!KNbzL?rOQe_z~rb8OF9%u8pBX1o)>X^$gLdyqYnbmrn8`N37 ze0C*nrwu^FYo!(Jo*nqA0Rem*HY?A+X>up-zq=2EcfSI?AF_jWcsZ0YF(|TcK!X7X zV2A;|2LhKvMgs5?VBxae7QGhoeITI%fUqt5gHb_l#%Ib54zC3OB76>)Z7Alofr(+? zJ!q5ci`SwDIbX@(E+7_CCV5?U+phJ#@18s0#DIjs9iU>+6p|~kC-ja4pt#IF6Ice! z<@R3inFSmzZt1AV?H{#>9kIN(htshiKH9w%BRyn#i&}B)@awkZz8OzL~ zRQ4m76B*Fo2fc<=>uwn1YpTsrYGz81Y1PPH_lc02Wws>ZZkNq_u`MhGzeh^dvYE#N z=#-?abxG4QSg~&e;1RdWOm7B-6fbWd-VaH_%x3WSoivNYtcdTWNJ=YCgY5O2rk@2= z09q(EB=Ru8z-40+7H3VKl_>Hq`z~0O3i|#k8_GTS*90xLb9Ox!nn-#%AFhy5Ug)GP z$M!lsD^~kXTZv&cX(nIDRc?U?$RxJqRc0*!80&G?(_=byq^#p&7m5#E3*0!Bsg?kv^fe;(Et7MDq`Fohaf73vMrBnSN{7qvc%me@~HpQsS<6(H;-M!}lY} z(8S#A9tSYNeVtH-1kJK48}?y){9W9PbDxZ3oBiE7#7H{80I=ZK$_Z>{Yn@id@!CUV zz~^&pEC`(`EpXIW4mzPeq)-;td@;%koV2@!LKQ+x>92xjWADUa}l4bKnrOs4E^^pdFrO{SN400p7D_%*U#r*dNo2 z#xAUa0qKFqfkLc^1ZXgAb=>RcTZdAKo>95oVS}1}hO+t08@ds^|n+cSAtY zOQn|CWDd~rcENTmhW-*4B-V)DkXsd?5yqTOG?bVUK!iI$HX8aL^jg`7&UOG37!mfn zRgqzpRfV@>Ci?9zml8S+tA5ZPm)UII_iaGsDeWps2s;%PPKN%GELoQ5001BWNklusk!gSaJvYF-vS~Db^%xR^yv_?dJ_p+<1G3I!kW@TRo zfCF%_80ARcNWGf0ixvaDOARqg&PPMjxdG3jTtpph$+25rmAW&Iv$2!kU52+A4^wg? z;`V50Mup|5QNNafA${=*r;Wk}AsmA{2y7^25V1ktaxae4#@jiAp9Z8(=Gu)UG*tp- z7GXDtdYDXdDR~;~VTcv{^TxbbKD9n;$L2vVhU>4}aNB!HUN&ZB_d6g7V1WU?nxT7X zlUCO`jsQr<@`;@1xZCiz?1#eLzSx%GA6AC_`gQ0B-{U4B!v_K=f+b0Y`Iq^%1t^dZ zhPfY>11}4&wb`WTvbfatrvgNmjYT09%q$h&8bFKRTV79|$L{}rUVMJnMG6@HjZ<~l z9A)s%_lEb90o;J^PLGwoABs4(i9G?A%N#ijTVgZ3A3wGg_>a%mH_xk=2f)F3)eAH! zGFYsLOAxs}EJm5Zc42I^xnJj2cx1TsJl`+2y>35T%Oc?9y#0_WnM#B&bD9^|%8-h6 z?Y@p4j&#adV`T`1VX@9VUR=LpZW!kP8qzwW`)pAZA-d*UbrGtRE~klFGS0&4g9@P? z{1Y;A?PIIz1QvHg-hQ2xFOOw$nfdT>IgI2*B@;=e%V9Y-b77ikrOI)NtSc%uRvVQ9 z@9+QrA_0jSrTZvG#EirCZpbDevjU8my|4-0X<7`)(f6TaaRjfWRZicE?hqNq?@K2M z$4o+&K~iF8XgHr|W~Qcg?S8j0JqlKq!^A88wgU}ol_6q4rx`sV(q%)j1Mf%aFInGY zzX>0pBp!+v%vtKIaVvLn+#xb7I!xl^ z_@+IU0Yop?y2>YL%dBi{cX<^45mK=hqteoQ-Yyah|FAZ&8|!g48|%(NJ#HDe}|p;2dL3Sn^==DfIL9PJ|Rn=~E2gfDs1Vey~4oX;!;`&7wFaH)3$h zu*cwtmn4{vuNuo>j|yOk)GSuBE#>OvJilo}{`{LP&)V%b4cYPvAaP>w1_-bn_gl-< zzgDEI*&1So0WFbC_Klb_rFrq(Lmnn3Y4>CBWAB3>*K#)h074kNon{rW!TaaK>&!89 z@^b{Mb(&Mp`25%p!{=mCqK^$eEN24z!)gT}9A)6)ggDD79bdc|4^!rXfqT`C#Zs=? zGVkxfrgW=B%G&X;g9M{{U9hNLGqWaUGo5_5Ry=f^Kc>SpK$oGqtI3RU$jFWw6U*Q1 zCB$oYtMeF4Nn+B+8MK7N_bPW=Aq6u_@1#f)C!<{PbuLZh8i`V1HO`5YaZP<61%kYu z0Gv=ZOiQQOWxKXVCs^qjV+M+t|2;r)HyX2!B~Pp3t7SU?h?7Snaa5q?!68A{ZB{~V zZ>0<~<)+IO4^gvVllcL^aj0RGw(1U%Q0Z)CIk;;wEQdhF<1F??g#AkT-CMwc52ObS zd$1vp(z7GmW+D%nmVF`~^xYj&C0y?Pu#W`L5%*u@RegFx7`|aM44z<04n^@Mz;xHl z@h&us2wlsxN`Hud)?KET%=(a^m6EO`t>TUDKS(#(++z^Jw$5jccr`MXZyRd@zyNS0 zY1W-mxy*LV+IH2nMEoz?ZyejZXwQK!N=>z56#&Tow^C!#+VPPJFMkf5T1aoQOAy9Hy9% z6RK0S_!m&&h+opM%%p^r>T(Y%&T?M}CUmsEx38MPoL&={kMMd-+y6PyBfnw=?DkcT zja;iFYq#xcoV_Ti)JrtKkI!X=ti(B%a;~&1jN#UG!!&sHeSVxf0RRtG8Z|%8-5CrE zo6;}frt6S>oMb+I*?cwrh~MHrG9jEV5&ehkeVhfVeNfADwq=>#r(A%6T6 zQEP9>Wn*V}{_%Xj&MZMZ=W%0!cs-G9@!kbc_^JUfegKV5Gvi;RU_7>g0@5u%XEQS# zTXtdq(_vM%40G?YY}5U&AC|J{-UMi)po&DZM`jzR8TI7Y*EBRO6Kw=_sPI}Q>f?2yo|%;8s}|*Je@IAeXIe12%Dp5GEwPcEg)gopfB~e$(L>TT2{L|2 zQX^@1r~DVsWW>PluZvv6ElZA~;Av)Ewo)s=f}|p36c=xDK`{%Thr(~T|5}TnG4F`k z*cRoB!*f_fwt6HMKc|@)d0ghwXaf-w^s9DJfY|^Dkc#rNx24NK{jqK7mMQ((+tL~CQt!g3HA}mV+II12$ly2Mb>{Kw@wKTM`kyukw8uyz!zi zz>?er`0#79R@##d@R9uVRgT+r1TR2^*UnNdWMOz&02)02_&PHU7}P^LHg2*sgCX84 zzs~lM*ccxG<+4f1V7GWL>_ysb514QavgL08s{kq|&3EERWCs=4T+i#^=i%t#kf^pBAq z$EULZ2AjfpKO%uo^I{f@WKQE^@V3_xS(T%Jxt>y*$n`orm6CPYOBpHyc{sVov)H)N z(9dkZLTUIuyR6VKGeUtgiV>$#!EV@F>jl=BedcZWXR)@j7Td1OP5TAZ^(@Qlt#EF+bXL;LZ#P$2Nr8g6L4=NsW8dh|K+&5rBr0&+93A`eYVnH5TyZRx} z0gLe=2KO4r>mSDeKbgV3%h9@|WgRrQm$E{)NBVdkN|DR@CevP~w?5Y3?(~D78qfB= z26wlN12p_avb5@x8QgDLcSmhJcf9Yr4DK7ZqR*Q=YF)ZaHY!t0-6QH1;RFeQc@lbg z)=thTHEY)NxFnoVB4va7LS==3fav8o&)pvYf+sb&pSH)b6wEQjj`6i$r4I7z13nCQ z0$8u@%zgud=W1}L=V3X@5-k8nNUq!(em<0(xbb>1%EO;itB?{QIkM*gK*6vLaQI?y z|6*`|r@{TG#S=65JMx+Lp4Xhul*=iDg*k4Y!zi2lr5M~t&&%MxDd$6{^udNug2)0H z3sOJH;67E#*69KN;@995>dQ&89Y>=;8MZb z8{)X#x*fkeviI9nV@@2|Yr{JL!K_II4C}5L-0^wXNCQ&=x-;_3e~eR=k0a?j91%jnqQyg)oO8ZA@p-cCQHAGT6Jj#cY#T^yxi8;>O_YqD6*$8@dw^QiHm?K+H_J zaUDh^3Mo(XYXLAsss>=HUJl0#yC=qdDh7#WlNLG`m>F=}`f@Z3bKqP+G8mGq@ZOx~ z@3mXp0WdX!*=cscY)l$RU5`ug;Ylk#tmg{@Wizh!!I{+0tVVrYd zMC?Q4b{3cDq_SKKW+Zw@6#tIQD!hlU+qEvrdk?T5WFnUx($T`|BuDYt2T4E@R;pFy`e=^`&?_nCx44=uG>Ox6iH8;uNP2ZmW0{Y42EaH zC=}PMXsbXiF|=8|1}0TwdM(@50{M#sGGHyf|M$1B7*4?2gOnu0;^%vy5mK!EZ4HdT zDv0@@6C~J|`<$e8FomkHF$NcjRgkIOxx)rOZd&(!Eq^k5k+xg3Z5+i5h(T_3f0O$` z97C2;x|TUcI1;gz8Bnmzwiv`sZw1}9&BzxzjmO<|*;Mo?K7d;#DVX9jBERo)Nnseq zuiFt`r)ouq$)tgm$7QA_-5CN)vXM#MCyKS1j!6R+0E+OdbO&17Cyo7paY;QO zH%)hne}j{v8_$D&?uKo%>q#y%1e8E&SBAkr1Nj&Gwr>O-EP#R4EC5MwS|7C*U7Nud zBjv*HqZk1RH1tBf+k1j+i+$3{%LOU?DY}m@V63WDe+ewfyqG~@91IMq!Q5BHaKm|(a-`zIY1`LE+H>SaHl|uLzZvJ1Qyvqr6EVES5bP8m zp6{SleUu00Fc6<+?*br$;XH<-VghGCG|ND%xd-uheNS_5hYjK35jZY`^jA5-$|ht> zl-#8e31E7?LyxZ#M;?dA=J+sMa}0okNU2gP6d(d15JvUOHn_vIMCsy5_Tzl%booS` zF5?z8Oxl&DRmhX<9bq7+ywSc68{oY#K^r`sJS2sgQDGnUfX%fZ_t5-kr^|6JOJory z`QIivu`48GQ%OGsxXhaPJiQpT^EdJ>GvQ_%s+5*%-tKlhBJ^RA{^$bUSmf*8UgH2J zv5+STHGl*Vg2Et@CZ{>IGCU{K3}$+x`el=2JFLbL{tsG=WX{ zy&tw~3`eiBSmv_mB!8ba4@Xj)%$p~8+cm#0|Bu*QEj0JrXge>CZ@Qe43Zt?uAjfuv zGS9wv3lx^w2eJbm{EGz2KqP?5eT(pg?db2zp#Ru@kGA!~K(NpId2S`QNqwtCs`|TQ ze;u<6L$dDjz5o!&uH4RES{euRlH$X1Q~EN?w*o}01cGiFL&Lv37QPMxpYXbLrRm*o z<~G0CQ6N*KSv5`TahZEeTs{*Lt7WF^9wo;DWt+xh9~Gpyl^xU`W-NI{_~IbbvUak5 zIRPtfbzi;Fs=`g%M!wMt zVkM`OT z^ac@5xB|T3GqIeD`*=mo7pH}jSH`)F%gI|vx%%>~QrNeVXCB zWd}^zbZ%J~{){lnf0ZS84E)>&zynZ;RIKAHv4Rz{shroI=MYJ7dOeVu*%a>*#qhID!Ebj>Po>AR79iu08?ODqf?Q_BMo7pMx)Yv{H+jL6`2uFc>7rh2bpVfLSNLu> zN-!nGG(wQ(ZT744pJzW*Dl9~AB%QCogC04KgN1u5X7=;*ivSyYknmfx1Qmn?1F~$L zAp6^QY)3MqC)VUgdPeNy2&vSk=owjj;+~Pku!LpM3nI6FfSFZJ)-n)slGd~98CiY$ zo{<_E7l{AOXY3hSWK%hy!)1l>So=gQbesknKCwhI`Xqx3|1j{oZI%ea@Ow=2iIWrI zRvjXiSN%}WNF-x*jb#A@0Sw;NGvXpa8`J>^1{+V>Gjf(q=1yUmkFvZg43MMTlj)PTK&p0|gkyZCG_Aue$>{Zm)VWjIb{cI&4FNmH`ZX8UP@` z0mBc2S9g>pNWZk65#&I#KhGxg-Q(|WW7U85vfVa&+0vP2FB|yT4aGC1ip3B)YWM5+ z_2+N@wS;STo7sWgw(~u};Bm}eaLfRP{;~hO4bym3evv&R&nzkJNqa{2OvL*prFG?d z%WLJnAUr8a2V5djdG4Hh*$4?Rjo9;sJ1KfPxJ=EU<*uo+!W%et3Mpf{6W=P;xX?HM7J)zuDC z<-B+cKK5x=up7v+_*<|a+s0_@Q?URa5z+hoa2(ORj`tk^8zpUR@3O(&&E&8qPNjkc zftg7?9rK}a-M)}8)0YmDh!dV?*%H9T%u6zoFS54Hz{ZTn!!k>^9*POv_o>zO;Zu=m z-9Q6M4Cxdg$z35ZAZAA5Lv~Y=y|&q>Vtcz=! zGtDPe*bY`-0%*L>(Y(QKj58BbeILQlNS0;L5b?Z4`o%T|Atagj_R##ww}GDnDmy$L z)7Dc0!@=rT{65N3FPqctPnnN$J35cQyZ^0B=m3c@*S~6D#*vrA^jexwP3eFD4C9+| zmRB%T#IQdtdTi;dg9#A`u~f^_4Ie}3%}?9*H{ax;9bGvLNOzQ(A4i@#CCdi=?zl;E z+>v1~hgZvOMD7RsvXaek8N=g9#ebvRJrX5@$89KQ;2QWXUgfA;N4>fmgyZOk^p|be zWDo}^>;`rc#P~nQ(f|Er0~_qiT_MQG{CW_VY|sJ_iN}4}R`6#pwE}F8jNh1ZMwvrqSs0L;F0v6L>B^Xx5&DCWY%q)s4#5u}kH+r?u4 zio-HeKtt(bu}6*b6M(|;;KZHJk8>Z2!#en}p&byB0Ek#@v(mSt+%dx9TV3ozQVfI7 zbq+wnq96-;q%OMS3gtm0NxsgE2(iC$43}-e5=JC|jeVwFTkK?pSgU^Eonbl4Txk&M zj_aHj8l57GwkYdfHoDeqaNpjj|6@Az79+p%%vTd%QL;GZm;b|{L<;P!Qn=`2J09^2nt?)O+?bidsWeIdnvlGuywatJQi zZo3?o7P>9HO1AC~cvAR39UtC~$2Ks+aBgPfUVe^;Gt(a@|ITD^^ z&}P+`Att0WC*KP*A#Q932m_dwqg-n0 z=wMhm@58_ca1`lqUp0B1i$Z-IbA897w6w^$;=4A|cB6ITLqJH zm%)o!4+9g->+H*^R_+loyWy^nL(B&(iouDE?3mPDQi!~Yzu_@SEX>U??dqZUF5LI= zu*{jsA@%CAZY1bi`_8sR2XvlIbjDx=Z0lM6=kc)aoc_DjX_ zs+Yu`6H~SQO2ml0rf=J622W>$VycAY@ij zMQ(Bn`f7gx<(OeA!qk1$q*wj@#tl&PD@uECay!cZ2aMQwn2hTsKi+_&?*JJ!P;)!V z?1!UxUEF2n!iMsi>Cb9l0ESVH{WXJ;r({V=&ueISytq*B2o{dwLOGBb{|O3spe z>ol`E1_KTx2uad@_^#b9!3=!ehIjx$uoIU}lEvpWWKzeHn!RdLHM0%)jNFL=SPek& zRr?M_`Ql532YlVW-`v+;q6jTGS3L4p*?(ehm{Zw!o=!oVALTapr9v{I{UW!jS2iQ0$=y%_?Q-8}J-<}giX03S4zn9E3%wc2-%*u>%w4QW6hu#3 zaFG=+k)Wz%Rc1TaFN9Y`z@^qnc)olq!E%hQ`amqha`Y}B1h8@lm_#X|4DG=%wB#qG zTE7iOV3kem?`&vSM~DH+)~v>SXjK29hIZfY{y>Z`0O3O#+AY;`#IOA!5yiX85~%+6 z8=2<2EcvpQ4tgtE)s;A~z7gP9X3(*|$+v%shITh%J}Am}+r6WqUFPwM!XFDFk67L7 zY%mA)N6Y#3do;AG+rx%)XMjgfNLNg4(`;;ulh9==E_zUp2<3;IoQU|_OtV=X&;ckg z^AX@f=DB`_=CzD=vv$&Tv~MpJJ1Y(CB_bFQ0Xu^Kgg8Z;_abTQw6PsTE;?!#xfOm8 z7YkxchavfphITwCj;M|QPaCkp2uVTVTGEFkp%SCAE-ZtSsE{Whsj?{-d4i=>^n3i& zhW04Q`zEt8jtXUPsH=@U4y&~Qub%bTZ%b*RHTtj_?)qRDLJDN*4rxkhKzf-aQ6K6% zSf8~a+)RgA0(&1Jy}YWC;( z`Ivd~`xqXWmjanb?XlSwK*#6LazC?DPu0-wWHttKKq3Zs`c51IKq6U`KPucHSemc1 z?2yj}#|OBur;0@aJR;GZ^C}zjBgO1Ir^fAWtC8XcZtHPQ{OXRMuA$w1QBKqH`TKnu z+H3d% zU5BawXi`V+W%UK~5I>>1u;hE0W$MAIbgk$x{2yJrj~C6iU0x7R38~BM17ZKne~(3O zUmDt9B>7eHd_3kDUUh^d6Z$TG*PS1Ae^F#8iB-s(wgV%(*_QtI?cFe<*9C_7Hh9eK z@&G7VWqDTxGL}Fg(Q<2gn81togcPty@+u{P2P1`7**|h$GnQoB4#@_O1_Aka85Mi_P69a znYY!E^)yST9NEhWvo@z!J**3t!l*uN0G&W$zuO|;BAE+z#l=oe#^QtyFzGK0mkpeR z5qzo>^J$Th&6+H0HEy6L4C$xsq)*uuW^^t@W^K4Id0VJ`$Miz=+ncc|Yz52)z`}kI z%Mli%TnM%vXI2Go2pa19H)3Xv^8eZQTzw(dT8B}7lEFy7lKM^S*RVv)#|D#N#v@iX zUp0UNV1n^*)T;Xw_&o~#6t9cUK1H!!<`O$Mku&^z#Tn_&{HS>*Je)>~)Nz(2SqjDA z3~;fxgw=NUdDuKYQ{1fm5A&nKdc14^q`&{4=ap}Oh|T5^`#R2G!Nq?eo%s-^=g+?X zclVwjz5Ta;JxtR{l z&&~8uqR7HTc$ZXq>gVr>V9r5!PPlzj`j}j{>T~RRoI9X;pWm@k7`3p2AB1x^3sXe& z_8{ggN6p(a>7S4FS6Vh5%*niYJdzAd{UOM?ALg1dCJi`5_t;#X(^5RRR#~De4jvB3 z*jJ^Jz*2TE{BDX@*A)sYb&ZggWkrq6>Q=c_wTu)qFIvh~GnhvQNMc0xUXaIa0v|O+ zEBQkbQ__IVZ^fGAu8`GtgI*HkVE!AA{kYA5!eA*_iDkRZOvevJ0vp6wN)?i@mB7ke z;ANigQ)OLvLhjYa@gS4C4e_zhn+zaQ!q!dpaM%cM(-6HM00w}ES&8tO+_de@sMwIs z-%YJOs>Rb_hz~3uRzBRdSLFX^@7-c7%g+10e#%?kEI(0Ck`USAOKeF7Yy^?4JlG6i zn|TU@*b(6bpkr7U+rS8d0Xud~Bw{4NNk+Lz4ib!#05NDNwB;dbk~7mYJ?t4yPj|8F zOjog{s;hgZPEFP6s(rdnoqN?ut##J#`~KhBr-yUt?xE;vV581u-_EJ7z1M&JZ#4@u zm;dB-vCgEa3VE7}EjftBt=XU|H$3)P27rjBP8ds3naGR@X{v(4qv-R134wOieOqsc zq+y^To%Us0nGG3sD^St2n_ZDQ@fax>fCa_`P{2$MGeCOrRbwB!-Vm%@IQN{(E0X2Uj4d5EvYZ1NsK9i>DS;(r?P_Cv)4CW_~kRD(v zZyr%RsK!ivU*mWIG=PLrH^y25MihWpKfq38D>QCb!4Y6ZBYIWRrGpIZV=ym7r#-l0 zz{IR-7zpjT9|SK7+IdXy%noZ?I0L4-X`6vIGw9~8xb1^hn1Om0oo%d#WXlIxTBr!n zF;B&YgCO;Bn5SVc4s0!%>UNBORpWO82q!YA2QUnGmp{|<4B+lW@Q{9{*Yv%-uPy&+ z9*m3qKDc$UZYQqCpp!v-I*;b|a=m^>JR$4leE1&AdYq#&CMs{^9PRg40UtGNGn>!v z86XGC(yx3QnBD;he769z{$~6=!o=zSBOU`Xbv;-V*5SC1yOYLJwf6pKcG58MF_N-F zjQ!eE!v4ADXso%Go9ZM^9r%&9A?DYj(08Q3P{KvHCvnfoyiVv2}fRWE3gB)&&e z9CRf~vKPSxDuTeGd=UR;-vIU2nY zK^Ozg2GKarxCxn+dUeMVy{nViD)moeJD84fm5!>$_lxIO++aR&pulogcY(|!$e^$g z7DO47TueBK$yr)2gyvaDenc$9N6*_NhisT6D`gMF1!dBV#{<>fN z=z%wy+bl$3LX7H^nF)=_Gph8+3k_9PWf!!*&w8{B>Dnc-?=u|=XxOKEGPLKzE}HK} z=7sYB03gNE^~}3cC5~iy*SnFrwqxwa3om)?mY^k3yJjGie0FXoT6(Bn56tbB0}pE= zGh(A|jOryFt8Q^OWBl&w9uWFFM$#9eJtE4E1h2++OsrDr)Z@4zGn1(~|5hlr+17I_ zSh6VKoydG>IuBhBPqQRWHUBzT=P~jj^$-|ivF?%~OyUeO8JH?SU| ze-HU{uPyh%z(4IP@B2msD0!O#e9}JB`hcB!UCuS1NBMjiC>1aRXaX>CK7g6LzjZ%X zz)e~=y_ViLx!YPiFU~Xn?mPZ{nNR1ofB&!>{61lCj19USWn1REc&lPNs_l&_x*h+o zSo+rHhYwWX|0@7lfs-<3s{$1)UF<#x`VeGfgm%Vs=JrAxK zdHuH{bE;A0`Ll00AmN&&alIPxt>vg1`K#WwQ8!NFaLq-w%Qc;Q5{0z@kzqG_LztX` zeMfQ}d?Hfpi=u#gClhsgPuDVE?GYi}5+G4~HdXFD>cxr8FdmReP-I!-6{X77qgK*A z@o|_Rq>1sn3QUk)Y1fC2oACdVnuUxCZ!gJKld4ZdBYU&lz4H8qHuUAV@``~5VJ(nQ zg-(!3<EmzbY5@ktPKg0q{R4*x6YKjjn?+;@- zmw8GAKp4WUbb+*^YYE}JiWXL1hx$VJkDNhIU&?Pz{e8fRvM1I%^1%PVh?GkjF= zAB346WhfN<7~tqe^SYYu01=u1l8;->E)6BkDtj~T#}uv8J)gk`EFhzzF&%FRHwsJD zI`R}0KnJs5Y@;Uky8T@XwbUaLz{q~=|ET3n*4TR}OvH9HnrqCa%C8i>X#8XyI=}wgXSW0 z%7gDa{yGEmv@QTC0f{s~=RM?647i)y(YIiO_H_qOFd@2MfCOL)z>q;5tcoO94R?L8 zpZ8PFGi|5xt$a*jFaR8Yl5|}AZnk8byAHJUJksY$+a>U!U@X6O%RevY#`fkBDL{+Q z-xP45%#kra8!^gQ!Ss=sy^YbRq;%>}F{VXQ)cC0l>Y46C z4|>6;6?ekIY(!aVvlUAv^?Eq!#xM`_mq;g*mKwh-i_GA|u7sR~6s%bI+uiWN=33ggIAiQx^#@liB=&sQX4 zSzpKs00DS`8EHwXbeYFv6ggLj{Izs0DK9LZkYHd3uuNCP@y;hP8d&`pw4iG`*R&tO zjWQ*x7>e4YZoZA;9m(6CR6dZ2mmF%3iT0XkZN164j^*)*7=1<_=c}f6Wo2dpXiV}| zNwl;y2Dz3R&hde$Ssl+u-4imbw1vpDXyVl7OqFh_Y3Y5@c2AIdFM39_SA<1-Ld;w) zEu<#BdQhcl30tCU1^_`L^N?5><$D~9i8M)z?Z$@=n3xqYpU6?n9EW95gSmnWd?LuJ zW(7QPAx(fmOO`@uVr8<|_(BZoS|&(Jl{LlQclHBw9?~l_pzlVxRAxeUy*ngC0Ux;; zQP~vh``BGBBx^f@kU5NryJ65pA%rgxoT z_}FEWoBrME|B1(0Hu*F{A3jdmB$FRn_R4t~Gc4Cjok&qLJJ(jOf7&&oK!pADcVg>0 z5$*PP*O?OSphE5o8rXX|Hf?)3bHG@K{x*E+%u4Fy#_Y?7J zS}}6fF9x7VV;3Y2cwZP4^@wN#J7#l@@vYeo_5)C%alLM5H)DPAg6J;}Pl$DmOd`vI zCnTg}iL7c??a#^y<+G?nYtlr6IsgICQL`qs9|i57qHqNu#PcdrR)cz-%*8p3o3?pM z3wkWZx9@*&238LJ0>G>R{UF*C!fb^C6r@=^R^}o^^NOSjK!I6Z&Fiy%Ov7SZy#S4* z9i7Asqf&(~Hg8BHQGrJ>T2S-LN!qgXkoVdxvSvuXCnoU58Hkhn5u9jDE*E^euvaI3A2dKN@k(5DpG6kf@sprP)ZzmUx5iTr+q0iWR{eH z1Av3#HjCQr#K#ulT9w?X;kce51~@QKLsM_s{f#Kg(dKLhSQ_1`2}fGChrEZuX>;43 z!)&OLoLP3f6(+rs*?UXj+I29}@3=gRL3nx{*%X6u2H1J>ZKxGCO~O$SBD(vWE> zWAsR4{id&DzniTn;WD;r(#y;6E3C$9a%ZOJ{O!reRGbRSUV)r0OT(J@#9-zN<`WDy4?wetb_sjj|oalAKm$fs+V6w5`%I zpet~o(YpW&z(Fm`g3g;sU&y$Lz+o&*N-gEm^8h^~#ZoWHuouCDvLW`z*F-})07U&J z8utq|Ig>I)8r7M7uwIda=vT4#8%fR*aG?ft{^$W0#PrpvTjN7X-Z~JS=%K_1@5R=3 zHOHA@y&nzd%;ad735<%Sd@#$y1zKm7)ZnfLc9;-oZx{;&955p=Cv1T8HK8vgf3IB!Ab<;%5QLlLR`iZ&f{W^wnc+ibpa7^|IQA+tyD}^Q5G}LQ z41Z%#WZ(_JQNK!%SM0=?QSBknBrF|hpa&;G=XgDuchzvtU`I>-)EEoMvDxI?RY!+_ z5pCawHPQ4d9q4JZd0-W`+uJa3RHnuJBim7S#r7&gg7x5-3`*6ct;axm#eftLpaX4X zB6uBu!|Q+rm=*I_Y`UL9XTD)<)W2baWnpa|+>9)W`a)npdf$oLB99vGxZfi%KV{pr z?^<%DzbhD%nz4cvF*E*l{4NZz-1T#>2lghV>p1uVIOJ_M{dWYo1lVv~ld}m(RFHr~ zP1z&%1DNGKzDs`h3gGw~MyAEYgEqliBAhTayr-QZCYS6+FNgZCIDh1rME3G`u6-qz zoF&&0i$j)HdGmU8W3nGHy?PxrkK9)5BU0wWJa1dhnkZYsWRG@)Ah%V22uX<=ZbDEA zAVs6zxsPbXJ)nU}JWGju?_&nWRAq+gCu0PaS~2;k-cn7_QicRcIsVrW+S8Av&Zt#L z6rByCF&$7+x2iL?(Guzq(R;ajoKJN5l*w}^Fy97peowyKY%wS1&3!*P^<8Iv-J ztc1#(Mq*Z~BX|udKa5=^R$6!zixlUBSaOs9!%Lc0U3jQ6tg*!KPMg(Q$hnxVbQWMf zh+Yxx4Y5BuZ5!=H-6WtuL4;*(m!ALx%LJF!@>$<=!^sBM!a|z~>BaOcz=F1~D)^Z6 zB(0+#{T@iPU{NS5g!0w2Dm9Rw+!t`s!~#R@5wS*eF6dGMsL3SO0kZ2cyUJpiF1PD9 z2AC9XDppW+5ZMxyUvWI%Q~49Iw8*NgHCUp06^N*A88D#O=k@!x$(nh{n; zJtiufvf{rDPq@HNj(pF?oFq!MjH^75!b&&c; zWznnCdMM zVbd8yJ&t-ijAg9StF&~|0x={33&XoM$J=%2uCpZ8Zr_yzJTc_+{|$MjHL3488?0R* zI$07*Shrk?rDe0)b)-pwgA#(m zEH%J0e$okHE39r}7hLTjDWK%ad5}7Z={o_EJQF`!E+4BEeNxG@=2djAfPesKB4A)K zpNX(D?gbe|_Cy&C0}>HX8RMW`C9}%0U#D6j%_7apWK;d<>8O1sx=$-xl#)b%#bgk{ z3E*Nf@Ipk4@AjJbKuk7u;?cQgf*(|^=>19xCTt1seUMi4RgIY+q!nE|O*B0L1dR_w zlNRuj%%u#6V1e-^qx1ND}`)nT?Y}!09ar~xR|b@voV_kMrdn)Y^~^J zfDU6~H<=RKcv82b@5ILTKPs*0CJlQ`t>_xX$)Mg!&h~uyNUi8kvn%5VSkl8F6A6}i z2DZh_E&h&=B7G=yCb%2IAHw^=rEVNVnaH&Ux^= z0%)YcJfJbZwj(jc<@c0c&);n)dQf0k61d67DBnQ>DorPX0W-O;MGp|NHuaul37P#_iu`n!}T*w5_ zxGN0!e(ViVuz?{xPqf{0sh0LwnW8|vB9CfC=iY~x6OaM>&tzcT^;M^3P5UwZ%DT#q z#0MhYQtc`uIEQhAPN+Vr6`()Q)821 zEzV}qlwNx@f^2Exk-PzDOscrvshiqEn${@xhiJ+c-jO=OSI=GB+D%d<%!vXXj;#q- zT98QlJ3tE{F&RV?dkrR3mc>5xH3c&Ojj@0fBv>J?cMwhNn!aV{JQ7fHQZXyTXinFC zh}OTo~55IrXRk>`B~s-KI@%2Ky9s<(;KF4IW%A~k8V6ZBU8T;~H4%;9V1?h_{7xsUvY!zQyOX zB(P4Dp8*^IfB+hjxHt!Z2P_ca4nSaD838#K+q>>Q5%r?5E^H6qSFGK(~2=&CFksGK8S!sJ+?ZQGWmHE&FLniKUy*%=K0`pW&&o*$H^NK zN(d+B7g@3-^T1*NG(xGN$&`k%w9vp$Y+6^)0hrOAksuG_J!3p3(YHdhud+AlLzz$7 z30ho9D~;_n$yfm-?1LmPK!-M}k1Heks#Z(}?Yi!`Y5P#rd%`vx2SB5ycHPIg zX(wm}zsCbd?BQ5dWba%6lxZlNiZMCyKkjhRkPL8*;?sT+jp-Z91p_csx37u0%5JIXIAjbMcj@)bV zer7`CURr{9df(X;w7wZg+;ec#-}zuIy<>^lMbd;h-AVzs+cCSCCXGdrbQjf0>!Pd& z=P<4%T>>`7-FBDASOAIoLfGf=di0hIc4N{Gv!c9jufG!q8#)`SOi1kk0pMs9DeviX z?Qg(@Yl%Lc2sRivt9e@GQ+bB|wj0BBz&sSGh#7u&AKw5`!n-v|F!ITqg+-y>ckx>x`pD#Nm#6N$9efC#P+6b~A++3|f@ z@5s9Jlys!Pbla~b`TyCbOSTBF2nCLsu(uU~$mxAaE8CTXJz$&EVERx=a;2W3MHY=~Mx%Y&_JOq$fSOwsQ1 zJu$-fe7muxcOJ#GPsSeBnRe(Cs&)68O}HLLIThm|Tep_yOAp()iE+Fa$GBoZBK=ID zV?M5o+=UIv1N_-?$w1)DWm+q|AKI2~eIms8nt9w~bt4d%N2Y~jF7c6^18&qK(u(>m z&FflfIC1ZUC1thD?sGr4$!TOW04Fdcb!)nIi?BX`V_HeAw0%89@(!Y845k9VhbDMU z29b#YWYncE6Y-U(2$sfmP2a*#0vHN2BnL5_!!A_iA`5klbj!}=$U%)>IAK!8h011K zfQcnl9Z5{@k;esF@za5n4)!F1_l2tinE(JF07*naRG!aHaRb4;PSTbFARepCiyIxO zDdy7>h(^5Gj5mE`SO5~(5Y>h=*t40{J)e#|0U-by8s9ZO zm_kLasn%?N-@yj}WAqp%fmCV*6VEjoPy)bUlFQ8H`)*E$?N=Wo_eUoBRBojViB15j z@m&jlty`oo_w0UTKv>Vl0f(`d%qBLa1UdLVq}W-D4sAlS*RC^AvpU-o;X6ER2l=2- zVNy4Z(TeirN-&Zqa8VeK06xm&m~K^A5Pe?ad}E|<#W?VIavF>O3JAd8VX0ZVoq&Uo zzNHbs+TgC8A@%WRrw&FeacUTi@78T{V&-=9n#@kC^-g1)FSG5T9ldH;*EV#0U;Qa+ zW>*=Q0-oS+8M*0wD(&dALAzmn)JW6%iO2f}R-$4l zXoDPUTooAVd0=K&Hlzj@b2UW?Z~?S%EKOz5&j}!bPMi(ehW232I*5P76Om~#3t`@u z#(O>LnGq`qI+Bi%UR79lR7L(u3KmR=$-ktGQ7KmSc>oynA_pK)Pe=k07|Shsuosg+ zxWMvQ3U*`8U&G4O$0PiS_pfBv9Qi#CxuHrAF2Z;#S8W!unjxW zc%E-~QhHby62e}Xd0u=NY@>#ADkW%Q)g2FE?V}7F;>m6*0FKB-T9%d%nJr}O@z|Hqp}euajH_dT1?A^ zgD30t5JtkJLmdYqdDfn$^&8PI!Qj_s-M4*U&id(jp206b1;C_|B4r{NcsIf{AYoGG z2XF!iNlRJ}<^Vv@bR5{Fb1)ysj(>;2*j=#&{2$4``*N(ra3t`M_Mg~~^m-oXulalV zd+P{Lk%TW^OXtXvwlTB)ngbPnHyO-)XSv@z;4lBTG1u$&n?e0s4vw@G^P{G_A-mKF zY4v}sEK}@CTHQtjDtg^O#)S-%eFf9I_{@x5-4kQF$m=r5*@*10M)?9vFrwF`u+|6F zmEI}o5m7c;`=9iBOlS$w?iz-o0L6l21bEB@3?Ow@elt_v6sL zqM<*e>vF8ji1edJgyYsq3{CQ6yi)r+)Vyw^^NUw;2kx6X7G;ndUV%?!XX8)jIlV0^>5|;LrtV-Czm_8N? zk!JOobd}U?>e^j0s|pTRwYc-g#vmR*0t2GnkXl=*9uZ|vG(&rM;6Oq_4e~3aSNAkNm2oNy5=;DXp(11A;r3;0ODM5SAn^3koNS(=mH^+sAXuWQsU ztOlMB4CmUSPMo6lk7y?djku(sp!a3p21xdO1}%etohWV6(!s~p>U%#L%WD%kvM`Qe zE#{kUAg5SR<9<1BEeV5VK#HY}$uJ+JUY%@9!cEuXIT>VNX4UxKOpgUTK2Q zkr-dC!CE4AkzyT*CjeiEu@ze$5o<>YcG0dnegLjn}DZ^qOlHy-r0A5Gi@;VY92L2{t+IFCl2Diw54CF|;p(Z@>9j5)J z?Nnlw2fFiYOL#)_&2IPlf-N^Ql6-h-9+>i}{~%sM7<-+x{R%7&B!B$RJ9}RgOLvKkb-Q z&KMkY#Z2af?Z^Pbn2@vL!x$UGVPGV8hKxm$HI0UK9iW?JYZ?dDBD2bpsya5emTT2s zkpPsuV9-4xqgITsvmsS7l}7W{$zICXz_9Rs1wMk@%UaDRZRSEt4=01R1j`KP!xdhV zel)n($yci+RVLpW#^aBhSQ3+ytr`a-)8i<^s+-tVP6kj>Q~PWX)3#<+DUBMGl$}vo zmI57>N2#$KX_t1PXtTOWvrc14j+Gsr#_VgQ9!G-Qk!6jlKUjU8WC(2)wWJC0j#$D) z6ORj1qA3=mUTi=OW_G!tkPB|iill9kGfune=pdd$rikBjeX2>Y8t?u9JZJ_w(Y?&> zXcRB+a{)C<`#p&SzPDUoyF|3THm!pX1jYl+F6*4$m+bcYZa5?b3kes#3o{uW#Ef|c z|IChQqd7BZ00)&*sqv8;>9~>r)F7rV;4&6uC#Jw~a|AFb+cMaZS-^WSfrj|rrean; z?tp-v0HhqqtkmPdY^oW`Z%4TmvMi1H#ptS?2Ml1*_SXY`?OR|F%=v1&xq*+Z$TE;z zrIEkd#N7yEV@70|X$JVHF5jeK>rwKg@xLm=QrQ-RRTzX2+q+rC@9s#V)m@o!7Y~Rv zjPJM~!8|9M(P*sz$pFk92LP}oX)w&bU=%LCfE^Px-6oA7U{+dayI?jM(|H$k9ogk}9 z`)dR!ru6|e_)Gv`NZc&U;HChLO$ToI|GJ#G<;p4ruJUDzUwKUBJMu1*-~3V0?|0?!8aX)BX~S^mi&_`n%#2 zIgqm4eV1!-9|4rKV&z5Ap!Z9d4V|DP9A=`0z;chzVC21+T&WX`_%f$`pAbahK;PK7 z7k#Bna%u_USduy|>iWk99z6t0|t1?z#w1IB}PbbDMA?acyF?Up0CY&Qs!i(JHxhb722}^ii5tsxun#CuX%vHd z?GUm39LGj<-A~;DA38>c;!#nsa}wDY11k?>Ng==?`A4+%oT9^V6C;F8(l&69h=P~- zASQ4D0yvIIw2ou1h*F2O(LCg9pSZkgUPb%P2GQiDhAuU80jiK^h1fmOVp_*Y-&3*D z`m=tO{aw~i9uUp#hN89fi@g}Div&#b$yJ-G7eGLV8SolsJd`c50>mb2USTDmsMDhT zB9>0l^P2+T!wL!|;`jTdm?R)#2`FfKA4qpd&j;vA_alWu2Bq!kM)_C9a7}Ch$e7V` zCq_u}db1VF2RUxDRW%6jMHyF?Q*B6d`<{D97$o2cIhLqfO}~M~U}n+u-`n5cq^j%z zv#Br`Jf;mD4LSgY7*URGgB%&C!$epT(pJTGthaq3%4XQiu#^W{3evg{XhRo+^lvEB zfe!(Hhsv-Pu6rc!Z1Rn|D1!)PJ=vAx z?M9!7GAA%3%D8BcO26a4Ps10K(d&!U4Rg3LB~{CMU*uANjSMn6&XyA4jn9h-4l}V= zfW#twcg3Go!Y|mb`q%KKWr^yhUymt5tr=k?s7wao0R&(m%|))o`$(PpMx74@vCbysS6|yLmU12a+PYA%l%;Lgo1mG}ma1a=W(+aFi{Mg8| zg8xHU7gDk)K~&jOdTlCkz-PnQHBuh~fP%T5&%}V9o)FGMTQ?_i-1qa07?UD&p`~FR zM_JWe9&4|NY9?VgRDNZ%0!;)V%nqn5i$X(YD4<%^yv|HTkW)!vAttr-{>i&e!;+f8 zMF?6JQ@O_XDiw^U1J(qiJF_~LZQhGn=M(X%u3Vud0_$z2CH078uIc-M{U zMDM2O(Ah-$BFEBX697ck?CwXSy0-P=!%&7~B(r$L>_Y#;k|=x9-*P#Y`9!uIpdc4O z%7w9#<172Z`Qb594+!!DfC<~19BbFL*{~VNr{% z|LG+_CtepEn)&^Qs1M_@8Im7E9|nVNj-yey`nj#e{YGH|ZZ2o<(`)9Ns1l=K4f6hr z+zAf@gKwlzX}!F>?y{w{9@{G;k^448_LP}|PV_+Ne)V%|Y%buTku%1x}#Dwmx?Ni&= zxfmMD^V2ixb-eR3@THg*MIwg9kCagIGfA z0@-u+qxO^N_LLKH5k-c@1r-ou$yxVet2vrp60aWaIQzlH{`9^Bo`<{syjBbYiL$@|`-~ zRijw63u^)}<9kc5 zD@X%~z^VWk6yWK1%63Nr;uOSi%=9>en46K^Qg4j*l)#|m-@Eu~kO7)ZPot?f-G@Y6 zF+MV7Fx0dTYe51Rz7S-Z00+PV42gQeSjWulg=K_UQ5FSOW+1&xNTO`wXwy4Sv|Lt` zw3tM)NvB?n-^J6%eMi%-ko6LTVgV_SNPa{>BWw>uLS zcg(B8#S`&e%-aA6(87KVI8B3GES$eJllNWTrIEjxwi;GZzI_2I{TRn66MQaT39TvL6`)3>=tP>!rxGg8ZwIzLO@NlYyTmrde?w^UA2M zDOY33o}NiAwI*+AbGkNkBE8}}Q~$@jis`jx_XnPXT{9sj?~;f+Bv>K6>rl+<5Bv|+ zd?HP|QC(*{W)*`H60@XXm3Uq=v3LCS7xB@`wigXjx!#56S-J-_pR3!&;G`j7GL&<8L90`Y6W zz62&?$3b5Wy7YSll&HC#-;>G0ZaVl$|7Ws?=0>~4ov;Ab*Q7K49|3UjOX>eROB%Zs z)2v`GwTP5J2^dvU_VA}^oG%Q<@wziEctQx>Xe8Co9!nvsf)Y}#)FUz$ITZk5R7qj2 zKdDS);r-C^TS86L(}A>Bjp`36nw6+ud>`CP%_AZmA%wbUFbm*<)GSSz#FMFjge9vV ziq9iGR<^?uvyS}Uucd|R8Bqxq5^xRTQP!gl+_54Tt;0v%g7ohRsxhQ4ck9hOdF55 zvofFqnJEyaWYW0I3Kqlw$_MTKkQooy4j7MF-!DQ2O!g&pt9+hEc7I6ptpWd47e)(@N*1r8U z@kZQ<=I}JY1Sl|*Zy@0H=mkKM6Fdi!bX7AIjYx^=?hE##Oi3_U-}LPO2Al(fb(53b z^uacAD?8TB*ujy2z`=EYjeRA+01!#Q0YH%%nZk0U*8n1X{_Mwid-+~kx4-5C`UFm3 zOVTzh8PL4u&+Yia5~&o-*rnGU1n@d?D+L`qR>p_#$js(z{yPT1@p~|)V@H76>mN*N zha3#w4^lNPwX`6BTh4lz*XXu%dE9evS6Rh66+mbEuk^o{bwiDNDXWp z#ZZt!w}>^X58U*wz#ey7Ocg@25wUGfvm?>(7uI4MT5 z1G#7%Noi5Vnv8n!V#4tOCd`-sXe=eG>qfPa6dqdI){zu79aN31qMzlbrf6vs>_jf8 z_&j(Wlb`m6Fsqa=`1`)j#l^qb>nxuA&EHyl<`+JDIk3H4{>Xw6V@6u3Nozjqjhsi* zs&v55OuNdS^5A?^QlWNSE~K;ONU8u1ywAWjOTEO~!2lY@LKCbQbOT~k!UZFMAA>0lu}y|i?l1B z`?ckBz9+s5^(-mt1GoT81Xk&F|NSU14t^5_Gmq*|sX-#3M1vR9H-f?4 z`bjq3r=hDPJl=NTKCU!uLF&y_CIB2n<`b7+697lzM8r4w>us#!u zs20X@|3@*Q9#HQ2uoi$IR2BhTlyQOfp4kL$VMCZqU6mMG60xor+ki}J<{pp`vkL$z zgMX80i8llp*2+XHV?fSAR4VtMv-9=-)m;{7N}X#>0vUnX=E&F7GySz-5?svTNOFlIsg)rX$>PNIh(}usU=bx zv0IzEl}*vUkBKlMwXqza!s`<$G{l^)ogHe{hXqk)1-TR~$he7pB7leaz`Y%snpGDl zYAK-_)3rZ@KQd*57{JqC0{a2_N2aA|5tfM6#F9Y339}257Ga$s$h0UJsw4Q!SSHdc zW;ZMY{7B+^kK8L_k-P#P)Igusvssd!>shT-u)1(UGixDJpox3&wYqNvnp=BBxFBaa z)?Q4*x>%CL>X~2pwM+lT)tUH@ z99Mg7IWSiiA%lX~{55SD`|!Vh*%lzjx+MP1z14S2Ic3DgfmQVB#Ebpov&To@K1Y+#__|4>FDESV*X5;u)!8dZVOk z9s!9&{{~r?0*2|xnUb`vdP8c{y81)ZgpQ}=%vl|ic%8{MY8F=}B^c_5(%#Owi3f%A zumrEuSV9N`q3=zkcu)=O$gkAFn zuq5hBQRbxX5K&Kw#Q+at6tJ>8uoy{ZrGUx2BUQtC4NBD94x^&mDMJEa88@*Zls`l~ z9{kMP9s7Fv$BtYJa1qkB`qIv>jiddT(G92|ZqIr?4x)5R%Ld0)*0*{?qMB zj2xf)uE@NkrM=duW>3hm8_rFZbre|^7fG+D&jwIJVudV=?}*RM>##O_SD77Ii@+wm#`)2kq6LU``j!?O(mMhR z21o&Lu#KjdVMw?C3%k)zWJzH=4nRm-qoo~#K8AHmev?RSUMGs1Km~js+RKA%i`Z{t zKh~FQN4-5#E$tOa>nR%o$g#Ncb?*<+9www(8oSQ>qbgmC$lZq}J&WhH-;gw|p+x<% z-ou?()~n6x7~KIBdA;}Iy%dFl7W)E5kY#DRI+K0uYkU|D<^UQZdy!#<(3=DIlbAQ; zD2^LO2km0Q%%lvYSLA^N^&}67bbOpETVc=7VuUVWpfDot^%(ne>HAPadjJ+{USIKg z+oWDv+2tHf`US|Tw($fkVMNX*t&S08Y|h1K9$Vh0G2U0DUh4VK&JhJ40iZ}TyUM6k zilx#kl~QQ|q4tI7!agyvD@$VEfylv>rBJ^}h}P{ph^X7oS+r}Mt>b&cXhmzh%~O0*t;!Agd@&X(BB#-RfMlU0fSli3mES4R2nJ4?a^ z%A{NS4h}G*tI=EpVE_Oi07*naRM}h&c-j;TXn~T})GPpq&fuh(p>nZq_O};b{0IN| za&UUN{2R4A^Edz25{QIOk4`jp11?meV>9F%abV40nAg+KG$Y7u_85!)nyaWYVHuN25HS)my+x{G|z>-)J-b;@a#IWD= z7?6|JP5V#lrJw1TY5!@z`RB%RKk2wxuJ!HZKGORD1sIMDstVXh>l|M5;{#X>T-eYyFjqoK6i?URU>+MF+k-Z|NV0Cog)3flMn1Nmj zW?@6}1lX>3ixAOkvAvsaR%gj9Ns(w_J}1hT2zkKH!`)bHXuguFFU#)J$1z2c7Ig&_ zVZFW^+O-fdBxp5$PY#NN{Yt8}AEnne5n0K+d7W)7%~Q+4=_QtW#x$diaj}XKmtI~^~}Ux0LoO-xR6uD4=+0?08}u;&pY!) zFaZccN|hOu0;tksm2#!?KoZ5V)Ay5(odM9x{ye>x_q$mh7qF7{1xo{%0qFEaCRIzf zjD6aOY!e<7m?WfRfCd19$+L=KoZq)bAZzrpO1vmIgyDGjmM2{`ofW-1#r%%(JOd1o zWZ@@azb3uv$m_SHsr^nYtE2~rP7zJevV<#%2nJx#8$wL4re~Slt1F?#9wVGoBy%y^|7R*avG} z?>obi@54=HUe|<4i3GO$z9wMGScI_z6OPEdk!e|zdf5*kWYScH$nFQZ5_&!6(+EBa z7%@PB4@B4td(Wg!lL%N;t`z{zTv(KmgAbKktzbbSD^Z%)kwpQ7rX!by1<%Jg%BCne zv?g@{AGP_MZ8RkdV543WHLurR7E8#Q#)3kPASTk+qJkxI*Q8pca!C;(19>D_#>`A3 z>j4<4&F!qm`|0Pn-%i-#eV7T@iR9xLHI><0KnDOpnG^MV07ypCbZ&B|Ni@N?x=e;u zdEzj7RRAs~1?#(_W+21L!?}=BkKLYrvYG~%#vb70EWr4?s|+b>jM_7O?@L8 z&?y8(YDLK*&Fu8s07US21oQf41R|`XC8mIg%r1P-{Uk`QkZBR~i^1Fs?QfNc;N5mC zFGa8TKq!t?c^1qFhI3dAOTOBP#k)w1VN3uYgHn`8u`Wh-)C4dY37q5!x?WTqgifxe z-4}uLM86;*-`!U8BAY>lVu8(Jsb88}2Wy09 za>R73Gh-l(?NAU=rAoOpOFBVTt*=Q`NUe}HnJJxEU)|R*N~;VkwWU^hf77aC#N8L@fsX)*vtYuccJAFGQ2GYKDSTEKKSOv{Z%`VuYKvCq)hAf!&z6q>FSeEi4>Y zjp*7NGLa4vJRfxj3G4E{79VD$FR{QTp_0g7lZXvsiWVsnuqc2OQnN^(7zq;r@Gw8e zk<+7k;ZUFfpumjIcAAC-0MS_zWlKooLQ)kjNPFV{II4Uc&5F3dJ!xMrk%VO?=(*qh zy~U^g_$BLcxm+%>PvoZ;&;8Dqe2}XC4J{qSteiasZ#vk3H845OhNnRRMqoSuBrpfe z(jzg-UXkl%fSv%vD~m<`KUOrENA+2lgf796#m=WG< zZZ5Y^>%g3(bu$3yEZ@)Td~>@?Cj*(nhUERd6mwM|I3_dM*F1UUs%iyHk$VVk%hn2CcbV zD**t0?@eJAa+k}enchynl}$-InKHlwEj?0GPx&!ZuoMF9yd>8S z=v5?G01LFE3O-srA{rljs zkYE1W?#r;5`!{^Xoc9i-m{1$TGn=q3{Tna)0GgTnJb1pg9H3{$;bmtY(tte;`T+#6 z3WGaKuwbmfnll`|>+ZuyuP2a@_K~(ppd~%e1NRq}&+%z+jPzQTJKb6CC!I^$COro% zWY5P9-(LnK8@>Q!(!LWIN(<|ya{=&tBFu}J`W1xKKvUTyEndvqh-9i+i}A~5eqW1i z>^Zn#R|*TaoHem>%uSbpWw5jEU_ukK(ze9;(yR_p$f;iI{u&X#_((MMDtkt{-Z_$) zmTmED-1TxoqJQZfQFer=Uf2~F6?#QZ3b3F@MANfK&7#l{1G}!L&FN}b*T(gg~pfLNmixvA#9|*!S@PVKby@))H)3l5sDp zHAa=U#6o=z7gv_d#5A%PloJ+j$TFR(VmVgGsm}Gis%$W{p92~cyxvpN>|q)M@ph~C+t-IlJVbOTpX z3`q&1wU-||*r=m^YdKf#CDDEn2K|5liVw2{YY+he(k%9GJuVeH0{EC!?dfa-=ulu$ z_ksXYi1w`;N=MR7LPv;|2{rAeQk$_j@Z<}JGLRjq8Jq!pVlL94A7&xFmbO!1k)>C!lx=S;2lg-|cq-C!*pu{HW)-eG=m3Pk zYNXc^IDq*eJqsyRIwwF;?|NiM06u8}WF+vBUe|L{)&vQZL;|W<= zR<+^VC(xihAf#Raa?*glU(&IVTv=h^eV1b?AOUDtabZcyvd*e|&R`hxurH}vWr7aI zL?vE%lJ8wlkF-g{eNWUK{UNX=EeY0mMQrc9TF#nw)Xqnov9= zsx6&K#IMo4N1;<>xAXeqr!E`JFPF>ZLrSuKW(h*@c`&Q4QL;#QtUqJj2lV(jG{Ff8 z5#R(ckrr5kGziC-tqesiePWQ!KFpN<%5qSi)=x{XuqtUu`%miwCbFFC1qTh8p?Jk* zSFk348h`^pCH>_1oGYve$4CGo1AyBOpwfGsJM0ag2|xvKS|vk+SxV<+K;>;eCrk6X z;bwT)71G6ckM99*h^BJ!d#dAq)kl)nr*x1$5grrWj8qG@LzC5V+2MCeLe@=}X{DdJ zgXV_IuQIE!>uFkm3zKPWdO0F&$O%lvt{dJlnfEsxcwjhBaxL?H?0GCN$yuZOE}uHt zan>UPg}V-tFuJGrU{8>8VOUQ;F{zucr0X&)m2Uw~%mX4|f+Q`vLhyg&`)*+!vZ-B4 z5MfwW74yPgXipateSi%lTD-?Lj0N)h??s7~c9xm1M8*;`k$y8VxhhqYqQlgLZc)3i z5Qz;@fFV8*dks03O0pD?1gX}U`#%cXaIVaNB~6VbTKBAUlMDsOOeJ=AzJlqPhX`Q@ zK4%70Oma0HIlEFiMZ9xlDCbd`!__-NVwMfgm6cdgi1?^d!cc5j$NXxv@5mCb&NYU% z_Kg@*GjWO5OibP?y_!fdp)w;{dN`3T5txr~?x)euvI-agO2&OZKh8zl%R}sMkyil% zCc-jI2eHpY*&F0s3UVks)TVa@A7e?*8aL8aB5ck?$_Q1)HL3g~+AX5ety$&um^9Ha z&ueT?|Hr7eI&Dk4MJOkpaRB%fWgYm@~`IU^^`g*wbRNsg5%c$eYr0JRj*bKn8vgzzHBAy_eQY z+WQ@s!+VCi*^SIfj;c+!3_mun9R5-j$|=j3y9PV6&-fa{T2QJ}^-zybk+ z02U;9;YUfY@jJ|n3_U8>97NzL0eHZeU~IPpt+$;W;dNwP1~NAtlxP8B0vK9)X!5S9q^?OWu(Nl@f!@5JHELaPG)4FveFn~pSLYTBv&&RkIl@}yssSI4asaKS3FqxI5 zVO4&QilOjgLQl+cIoI4JSqf|b1hW+_=plx;GQ6ut1@pTy9xO>drHq8izhFfa1l3?j zyGDXpUKk11Q~!y|qe2hJycOviqkDx-VOu-*>FTEU+9a>QMosi3P0QNZVJZL_lR;aO zwF-pHPTRmq_n`npUz>;&Oj#I!LI4f}kwsMo@)|5CqXM&`Opkg+R1UT(F)Os8Ytoh! zBO=|>lEYv=KXUUpU}Y{5#7Mi4b4|1u@idy&bsGTJuwpu3NG9g_7e zRIGv!E*7fgY#GYBZR(XsU)YV0lA@vBlZ%U90w0$VyO+!5^6{2W{m7qKf)Em%knAus zt}WyE4Vd|7cAP;xrf=)ZC_n>02QsXhtuP5v0TTd$y#I^!-uk^$ia~u^Cm-+Ci|3^|J#7n{13Qw>Yt2pU=@`hcde?+$S#!n&u%@htf{W}2 zd8PV}zUgdHIyN#e*2mkD6Te;&=HrHg5?GZCt~4IG$hcrXNCyKwSm=U^X@RlI!0&J*sEBA>M2E`baQeaqnMbh>eY}|3IB_Jq7EvAy?PdIk7M?`w+W!yPxe=T5A9!7CYB(MitIz7JBbEGqw4y1R~| zAB2cr1tZ9^@_k+=7|o0>$(R~qW8pYQrpCD9EJN{v=zu@?J?0Sz1W+;$V8Q^1$hHD| zqCi9YJxJQJb!wBkfFYApO)Ic6ZzX00KZY^|3M@k0Z{4DCs3fZP zd)UB!?vgNLM5bPDXwB+#+h-_SJX_&cnTUB@Kbx{5#$5DQr(vmST_siuF4*3BOokD> zDDWX_ciNA>5gYJ}k3)^-FbktHfX}RkFdCM^HHe)g+Q_cayrZg6QJE3jPExegKQin^ zGy9~8%XkG7GOyxzwV{1Jh%8F*kKjY;iF~VZKZ#1PNaM1CLh+T<#f9T)MnV%T=o~Rm zhj>HGWZsR>=?Srn@ck8KMF$~LHzaACF3ompuf1{!J}#Hb<#B?LSO2hhKVEiULmI3y zqmH@UBtzGn86b&DU5>03yzkZU0Y<1?l2ChddIs?1ORoxI=x0^baPiO&fm0{Z~~ArkoDntOZzHkrA3 z+vAUs+2w>Sk?C3E`rFYz!uqfx2}o#xA>A_olx$4jap@K5T1cz_9ogVsq+2S#B5oJp zV}6lsPtY>+`nrReY+_#*S=OE#(=(vibPz$4dQP+2aDzK+2nB@3rbzk~U?dk9ZVJ#S z$yr&JwG;g!{Y~!?VSOt;yyvBd*(cInvLn1tR4-l-y0J2|@}Mv&`%!uYivdGIq&;sGOc5PF~$p+QU8dhVNH)$Bx;?$fB%Oztjja)#Y-zJPA+88()rcD`vm5&)~Wj-hG%9Dg_J*4AKA}Ab|7=mH;+G z0Yw4=>2>vEuwEY6zq?9{vL|#4C6Yl zW#;A$XM55)=(%u?02YqT=fT(xr~`b#0vV&yiQt9v;CF)W1@H%(glvogN#4`)M1JN( zv}>_Ul9V)hN?=L=A=>ql%P3#-c;IF&8r}gPuqhN}<|yBe%ehG40*GKt&+N$^_j_cY z$F6uuHhnoQQYq~gN$VM)*mEWXUkHYF?f(Ff06y@1B+!75BNr3GqU)5@Iu2;*NY7^%dz7u3B`qjcbq+e6-jIevAuXrC_#h?p^v21|53n+ zCQ+Kfz1;VS#0S(^q;F9!z<6k3G2t_e4`50P=(!S@42#-5i{|qnkDA*6-&v2dwoEH* ze->Y(d0o@D474}^vE#tf;3d(hU}0d)H=;lUsaBC^8Hfn%L^W{NC2fyH%7BTmD79(b zdQV1G8~W5)3yTmQwfCjo4~_V(JtM-JgoH2M2BUo%e20XvQJclk zWnCXrlDO*mw31&1Hf119=aZ^w{aE}V(l0`4mdd#%E24bWKQb%pYCnk`>k*}f*6A^D zV> zD5}#;7Zmk$nE71d`T!#zTN~Qsw5v<-ak*SBPp&zA_sxH`dZrwJz+ko&SKD!>APw%B zk!LUtV*waQgZ4BaR}(p4Agz~VR{#@aTxs8V5MP*zBPk>YxthjdG}5{N zAAkeCkaX_p7_85F3TBKMd8x?FUUgu?emG|s761r-ll)y?TYgSh89km#*V4X`R%sd* zhIBk0upSS-Iw?SKiP-viHx78i#0b^yh;ub1P3@3+&lG@=*A1F01rkja6h zMBZ~*l$IT)#|ao{d@q1w(sPdo(ydkra6d94NU$vO_sGEqk@=dq#r;2bew+yK5Xp6s zeP3}I)VR%7Xkrz{^6>Ml0xY#mE1KIKw9H#FEN5BT`@nDET_aU-qD1o|mHPh0iSxD; zYdVSmA{)6!RoUUA607Rs#8Hr8wb&AiDVDyF`6SAk)cg)(^0A8(ACXw4ZRqL+QGlV+ zEHl7s7s?8z?@(Nf`BYoYR zuAUT4&Z_+*k19??YQ;XYA4Cl7oCj>kOe9} zSF<_hcK{CTi2GS`y&jm(lRQfSMpKOH3RpC* zmt)hiuAL&;aQ?vkBEm^6#h80Xhz;`9=b@~|yo%_p`#)O1*_UO@Lm{@^SY58S(c`A0a&J^_mO7JBS1Jq3O1@dC&Rey z*(7>G%s4)*SdZyyprrnfdQm1qJ4G~hcU3!iRn};LLj5AMst*Kt7eL5lVExEY@H)Vw z1w_OXR%F$pGOS=C?>oS-2KCdJeg!y~i{vWwjhsgF zz3yLA!PGyZ`<#@>;RGN67+PeAWD7=w_d^74)o#j622p*d-N=Aw2KZRa>e`I1fTS4S zp83^ZyBr{1E|<&GC@cJ>zvY8pq)D`rGy9KU<6#wdi=+q;gVzGKfI&O}0@gr#Ixt?R zfja|f7z9`XLT1Ph{U&lZ)kwN~Btz4judlhN6nt z4gQgN@QFmz`MlNbVE|@6jxwwY@T~HXw0lC%+$&<`h{G5G9Fn`Hm2_+>EX!2P?(-D@ zVl2k_kxRUSNnAQY)ReB;0)*Nf{E2 z>a_v8q)*`m(OwaiQw6p~OzO1(UL%8RpoK9#w6u$SDs+krtJd{N1VPH?oK?(?mNjYu zm-J zqXY_|F)84nW=PCSB8{gSpGz+ISdy_c@rnzO`aHA?#MqCc#dE*=zkT9^vLF4CKe_nK zFZ@S~XMW|G#qa;#?=99|{pMn~bKNhrXmz=8b3@=U+FM>v&$)46MjS!4AGiT=)b-gk zw7(>=s3{R`@wn?+V@#1M705c}-R1F!fGj4+-S58qiJSX>^p9VB&wu_eFP{13zq9!L z|Mh=dtiAZpFV5>5KAYJWvno1pG~L8=GGL&LjQ8_QX{XG<-u5INwBkrU(2CPjK$;E` zkQ5)PkJBJ1Em=Ntv+TbNj+oia&CpWVmVRFBfA`I=EUx~+KVAHb|M&k~eDT+xS$yW_ z{=(u%|JYA{;{V^Dd-lKa0eSifTR^&!%7l<0VYp6%ZRApFEKk4yZ$=t$!-k}7VJXxU zp7;6Ea$RQp@o$*<`?h;OFpTS99Cii<2HBQM!Zb+>76--!hJw!yBVsM;otTcLMs_|M z`$#|uK$gx6nHlGj2^FiIZL`qumB(eua8Cj zc3h5yr-wLY01gRh80?W?QG`grA$||-oFU@Zq+;9NGeQ$P@+<`&loQhXfzh4zb&|Bq zGg8vB_&bLc$*f6<>`efLE)k6G$ghxhC1ApJ1@?oILK3quu3NF-fyC`@`ZfM|BSrzM z^s3qNYdI`P`l%-Nbp6J_PS*&AbihUiCtD6Y%&h*d6cXN(*x&oh^+?gm(yiU)eHs4; zvM%+4@EDmDvMm;v71FcJ6H-_a%<8I~C<=)y=EDd^^B8-3u1QxR^-9YM=T({EJW8=( zRa%9GXXXd-f%~)qLh}Gl!m$+?mBGJxMdY)X3`;#E>hmz>bn^cj#Qv)LzP}qBu6-AK4iW!+k>6d-ZM}QG!D(dIT zm}tv5M)Vq}=sqm9t136N7W9d)r^fbHe@MS=NDpaN1yqoLrRH=!=TQ^4$xZ7`G_S*Q zm{(<3nbsdhV|zBI3j>iD2c%W%1*y}u@O9(_um{oq0U(0;m>j!=OJ!AdyaGms2f{!| z(IMt@WLdL;cZ1*w8H;bk%;o}603Hfb)C)pX@5Ot&8*86f(O?1{&-~KgSzLYo|65)p z^FaT;mo;&5O&9cR);sX%!%^3pYspVn4R2ra+U;jI0vTxbOuKKp84+;7b7shRtuJwr zI(wG(2jC!uMVfm*DSu5Ga6j`)zp}Xc^*``3FU#HE^G<*?;3tBUt^j}p+V4DTxgFy= zX#9hfFljI(xOe#dDeH+we&d&s3Zqz z8+jQNUj4)0Uwq-OeSY!jAOD$8C>iS~FM!`yePEjgx=5=S%p-xaNLcYO5OWJKVBid! zz`!47p^njI@Q>je&_cHej0lVZ18)G1GArySt;fJ085FDr+dM20y)ZJ?^KmVnA4~~m zcFgK&-vG9p3?_aOjr-+%0B^7^57!)w!SEm*!{pDoY80`3XA(UO_~7>daLVT|;3Kgi zNUt!L(`27xd)H&{2_TfHUVAKTi^Tw!jT89=PZNegRh-}c989h%v50phmziD-PU8PfM$c7>_Ezu~W8PA7(! z)GQ{KR8~dL2%tp)jCF@>OZrxsOtSmNwnX~A>$0p2Kz52TeP3GDyKYp^CiY!tPIMBD z2{hCTfDHT~>7Hm&xN#h_p)kJc2~2@`8^$BO{yd}V|Bbai6Z`Ltp~Rx>p9d56YxX;N<)-oxNN z#`A`_U;`ThAVQP*B(|~_-w3@RAqA^$LC2G#QN8LFsrO$S+RbxPc{hTTsRAUm3B4{Z z)TVXyk*N1YK}c_S{6I}Ac7MEIDIcHtff_2N;ni6l+r>ouJ`5nL1aQqw$)SxgFPuD z>^Yk<(v*u;v3mzCX5@39{i{!X@RgX3t6%$!~Z;&?v7`T`=@L+caCQFXpDzY{|CUi!c8DfB5vj=Rg0K7FYk} z{}XT8nW?$wH}ss{zv1A50R@8#00=S)fC2U$TTpl3M*kf1U8tt;~*#x zNZ#`Gn>CLng+U?thu6{oDmOxxgdms_B1|z1GdM${QU-(n;!>9lI`MJLs zi}^GmN=@8p5Ur_DI#_2W-wf$%J~+?bi0jewq23Gt0RRAlH-mA&Oxg}<7Xxp+888qG z@L?Pnz-u~IPka=xBRp0Ey{2MWI@T-B0s$`SjuAeimN9C9;ls6Pz<(&_c|M0p+KS%= zFo$0yZOiwk-wWRXj1&OJd@via_XQsaj7S>%V?d|-#ri?k+%wX9BeG;^`vhX}k??;W zFv0)xy#KcyTp-oT-jdgse>W5zsx-@3%Z`^ErilaohWWd#Cn|{ViSX7;U}214Ljx z(nOc0WO2NF54$fWbG#()c*D9*jKP%X{mmxe_F`&fx`$_p*0CGd^SbXX-vfA<0shF@ z69q9BV~V8&>+E8HoxntpHThuQ;&RKtzfP`l)?wN%FBAqP017QVG^S$F*(HwUJ{jICBUG*mFXZ#wEzlcBA4_llX6X>9|UFva6)pI7AB7SF(TNuuev`HI02xj z>QdJZE}24_jC^_hSFFFe)X)wBQj z86QY%JS{Wn=8t&EnGy9qsHBL&uF8hg_??a9FGcAQ>k!=wo5FqoB--17w*x>y5h3TT zz7dS#$fN)zd*qg$*Ca{vh#$E&wc~WHC%L}cU zeJ6TAklZ4t#pJFsEcRpf9cf5se{_Qo;|ojA{fY@QKnnLP_Qk#Lq_nnMYkCve4fesk zlTU?BbDIscTYctk1T5gTjh0`#+GyiGC@W*jjV-~6B>ZgqC)dwoK^mpY4uayw;0`V z#X?AQ?z|f4htfpp2vMd(<9elu-8x6KiCsM_Ath|+XZTpHxMM7QZ`*F}+0ns?2QCR34N`>=L28 zkc6xJ8LHGQJRT~+npCan#P$LXhCK%q#OIm;y@`f&fDVia>+5cT`rg#134cjpg83JZbjlo2l&Fmx~gPF-ZbJ_7YP6i@q#Q_ftKJbgEoJwUI z8V71^&ecq7ZiRk5G9u|Y>nj72ep*k$8znvHO$Qs=l>jrsV2&P!i{-iB`HiP0&HB_I z`^iPK^WqPO0X#DhFBaL-Yb7Bo^;M+v`PRk%g*RP-l^%2Kv<~N`-$8mkf8MVxAH%++ z?!K&=JKuFQBq1Q^Z(hG-6xWcpV#YnjBt(>zELD$*Stdn z?+AYb{9Pmlguh8x5|~LCk___ixgHzf8ALTCWkWHTdr|1*svk6CIB6c_)U{Xc_L{iN^!aNk0nuy#4YY8xs*`k zSNKNoBii~!mX+>hG_I4lr9Kbya&)UitRqj);-`WSCiGATj1FApTqg6bIBT(FK}Sy9tNTBKDZNVGvMAqawf?+q zvai8bTB;b}R&;R9X4H|s%53O*%64e7m3lI2kWx#*v>*{_l_h1JM6#(j_0 zg$W5Uyu;XtZW63vY&_S9-rZ8X^@Y#>my4#m z<@9fe7A&(i>B7i`RcC23jeIYbF{KOjs#K8iq2DMBtlabE^uEU=awD)N+ymK9*Ug9d zTn^g+0}0j#pzojipPzj?-}7Jn>x<_88_s$#>lYGa-id6E&LlD$iCGlyh9%hu)1l>K z%6Kq{0D!1oT=nExzH!rMSm_~P2G+pMj4N#Ajh*sC{@=qA@^_*|hDU3{q!cD3vy0#LziX3fZo1Jtvzle%K|?F} z`?f~)yFMYoy0EWIkmSO`o#kXoj^W)YVB?-M8cmUGSr14V>?5~Aenp|7M*EJWWnF_x zFu3F8V}c8?VfT;98-hOs2A+Ee_a<7@0TuWf0V{wQ^>yHR1ZXg6NAeX40hkg69hoiZ zyQic~{#}V(9`kl1dLDR}Wku3e01p6;SxnPf+25g2yfw2DN)FrJ42{>d_0*iM?di78 zJa&c%>){|~8qMn3ErL8tnG}_aRguHyGbywBFfA6@t5PmwE9M^WtMR~LkUwcBXQ{DV zjq1XjoNLUl0tQRKI*qJ}0-uzgC54LTx=$@;tR-OhL)3#Y8ASP(8qJl_P~*Lp2P#-m zU{iw!qI>JeTxA&aeQQKNanQoL1|*K#zK;NMq#MLKKUNs#k%+Os%(@&q3!Bvid`+taO9BQn?JV$~D7u59LuW&pGAboThrJs!iZ8~?abFuU|{ z$8QMG)wg&XU;7WMMs+jnq7UfQNZIcB9c0K$0{6b)d2B26YB5swc+?Z*q>3wo^xrGSK05 z{2&<756cX98o>375gh}r7Puit0iY0(nzi>!WAL+I`r=dhTiN~Y*Ij0$F}e(9F<~P; zf`#C9iGwk-^yW4qo#4 zyck&#yfDbBRMti;FM#FYnzK55uP`mjB*8vmnnyZ@gbk00rkTNzAi<((o&VRQYFW2P ziTO?czmanR#_1+WuOsU^Czx|c)3*6~UzialTbdH}d$Qv)RHUiMs{kPiM3B`s zTYfJ9ba1cGdj#>j+>2QM;jY|^07YHDUon9;EG#~gX6YUY%R$0ckR;#t_+2%$;}>Ca zQsvDlhF3wwSpfs*bt8IVM9${z1S|D@&~Wa45CI07W~B}2b<}SixeJ@Zz}}dGa;_nD zYAEr!(S#m+8v#7I8QmF;X>3PVuL%IiB6!EqXR^v0qH(^$1cm+(J(l_}Lchm20+Bj? zx9$h26SRV_V;U2%=9TY5WlstSDp}XLydQc>05t#x0}}n!AVQf8jlxwXN6Q3B#Zqvh zeI(<4JjS##x@W*q8r3I_gNVA_TobXT$1dfX3P7l3UTM8iCFziG40*hm*o8z&6(k$s7d`GP|3=uq;+6S02f^3O`f&y zvrEc;)Mj-ptAhPdlOr@dvu50ghVPhG_>2GGzkcE=Vr#FzxV*t~15aQA*;ocoTkiiL zMTS{G^wEG1z(S7I?KrRi94IgWa3H73X7-LV8ZaO910dm0e+G;SV58|omIO(brdy@= zVNNid=i?O+l8xqNCKrYSp9hkXENQu3fXce}G@yr11Gj7tUM{y@_-Bhx{m7qqvJBRL z_IYO;NRnc@S`skeIB6iy03R@; zgX{zxU`p5~%d!esN&7`Il?MD-wsg&z5Ev7{M+QDG7Dnc4ew+-Vg#AFim5=c?0VLNw zMi}$?pyTJQlCHE4pA|r%UKC9m5vY3zLC70I$q%fS5 z#+CnXzU&|(_lB&Cgi7RCmXswe?ikw%V#t8wT3eEs7FZAfJsy%~&HY*Y-SYR$WCDyR z@=Mqg{+5;btQk~|@+EehaJp4pbtuoX8z+-wt-0yy6STEjAV^Mm}jxc%0eUiu4 z3vwtX_I{CI;kCdl4sgifShJ8cmEX^Atnh=K!WNZfEvbyRP? zy%s6j0AJI&>NwnS^o+n{6xJmAORAm_1t0;SNWX}Ji2y97!m`X=id7<0;- zZB{k9*UW{=sEUNDwQrao7!KAezK~!{HxMHIAM*OS0v6q8XjSh=(|H}mt4xNN3lLFX$!rjlv?h(GV@>;R zKrf6)@_syNzsK(P*1c_geCYBqE`qQa3OdqzWR`342Zp(E&rNqK;bH~|8awS1JuRBr zq1;?(sAXmeFww8*bY`_I5o=2#8+-oKsQQwO(kzo&cJI9YM7)~BKblUIhNRh9W^mEV14Pnu22k3epn%27=L#Unv&9>E;I@0~>x)nS*q?s#EC@0j z2D}U;)!%`c+|1c8i623V_b^xY%b-7liZ@(7lm^Ez1UyGhg`5e7A`g-aJCTkDSTR6R z_F;hIYs>c;*dw!oonY{f>5lE#JL+Ti)0c3 z85fc&d>%+BN!HRPcA|YPZExErF}Mc7h;ZGZlPFyWk!j^N^mUP)?#2EPq^Kkw0ys>f zy5|f?v*{8nBvJu@^uB+bJH>>`grwI17-mu@!SY>~cL7X@pXV_Jg>^^^Qf9yi&q>s> z3BTp!-j(yZwY=2_a@Owos0`>9<%=}wV*9gI#exD@YLF6{gtHZ;f%A4*p`=$C>rz;l z#jG-i+h>}_pEjshIn;Qy+$#7*rjg-L5F?+@zq?70i3KT^#`hNaRjXq}K~4ZzXVD|V zaYFR&JV>cjW@YQCTnkgW#QsJwG@PTM7FQ#$;!%UbG)?qy>Ky2JA!g|V#Soz^WJZ6@I73o%CRKD=} zzxf22kDs~#9~}oD0I1TsY9J(oi=Kmw%v=;uVg|WhJHaETf)wDvMO))|xhRt=!bMy4 zvk!M7@HihflINN$s%(evm&!z_*2 zTx3_w0_OMLD*EUGJeV!afMwey62#+b|3@~K%6kA2WkMJvsE>qn9Zk7nf6ACJ6Pjft z+s;~0l%_Hd(zRFz{W@ttJSTn^*%fSxY3SEos*)u%rMp3AkT2HTed7F`-}ukn z=&eaqFb;SKOn!CEXXu%gH`BB*4Ggf6RKa+_dLUoIPoc-e>j98Byy`$BGY4-tP{^{R zH(ln0^ve1)UUMG_z{l4AnxEH$Z@VWXt%pQv|6eAV0 zx$d74c7yLozaLm417goF&x`K_fThNB?F-33?^Ty=(cx0Z2tQnlg^Yb+tQ5@f8YcBV zY|C3N!BP(iK!ZkgD=6%E{4eVRa56*q?IORr6(x;Ug!uB39kD)yXk%vKH3~Slv9SvL2b=bd7@*!O)IToiwcMW!v;gnw+e)=?sZ> zhcH3a=;TySqIox6ilu!b02o@;k?RtOqCqK|QpNoUPYIGMjP4fbQq1fIK1z(e%9yi+ ztMA*Cd+ZgJMxCkeLVY0@KhG+bAsD)qy(o{7a|IK+f}1R#iY@BOn5-;DoQ+#vi&kM_ zSN1&I>o0?kDkkf9e}%|fThkQpYVV9ZP* z!6MgPQ%blgXap}hVb;TtPV&mdYfqB>SiAnM2q=(VaSkvc)+AiwDpiJs41BHEXqxniJg=<(=?De zycVTaFdcx712LdmOZ2A8n3zqb7!K|H#o+GNxBjmun27c7ESh&-|LFY`$eEBEWsk+T zmV)VBzp;G_C_gEWWrLSLI-t<#^sfPx_g*=d+N` zg%l0e1Zfzc$-dj$4yKS#0XQ^C45<~Sc=h{exg%^B<%Zqj!^vq@H(aV`Jt5`)MOx1~ zNM07nmVj}jSbz&a2Y?*2I}$Gp?Es2Aaj+J>RK)zkR@PE2Z4!F1* z)3NY*r0XHTgr;;lk+^>5Yu=VmFy&bF(m{g6i)$r;9qd>8K@>>9mg5)ExL+6yB)@hK zI&fBgeCS;w=2_fzKM4trT4HE@S$maixv3`SG@|#tl7c1jE0sLuK{3**GfBI`Ct~13 zq*dvkO11)PvIHi<&%yEM5sau;GHNe4Jv$`HC3d zGuif|6eCUpL*d?yCs>R)JC$O@lW0~~1N*Gf@#=MjW~v3y?xeR(fsNlkShkfe1!)Ei;@pkzql? zg^}Hi=luw3RKBG#zZXBB```bMCufBI?|ySB_ZmstdTwIhdvq}(@qt>9WJbEi84%3t zn9tcpBL-nPXi_(Ny6Y)e_(L!NLWOJep~|YP5bA;7D7Z=0@x7uQe(rbwmnUdA|0m`6 zLiKaQMdu8oF+vis;#pn$g4@maC2!jFB!3<;?6dt!JEg0K|d@&P^!1m|X;q5v8O{CGi>9RUz1z*6rA`vPm*I{}s+8Tx*Mp8k_6p-+ z@!#9dq974P=Eb!LFu|k@UJxc)(oY2;Nxr4mQ>0j2BlE=0&T;{GG+Umer7h|f^3jbY zh%1v7-;HcM5-ns{>Av%DC$jO#vrJO_j?1~2RLfxFJ--*`NxZ%%M{@tXc&(&h6$7~r z+>N<7bB{-zf~5ogVpL}keKxQ5r_6@QvZAajfPs2IUwJ{!H43+ugv}}@WnQrxYM_?} z_{dhw-Q%I3+dh*<^a@~8?};71F7+D=IG8$M(3bQ{s8WxqzD>sS*%iT_2~BoiNGOaqJwyw64*<>`yyJU_|hN{QvB|?UP*RdESXX!ujU? zB)fJK>BE*J+bOwf%Zig!t+Fq%{fU*g^?q=!L=qwifS`t2z~UGf5hDoTfFuS4K+Fv0wR_I#*}3n2e$Rc~&pAU;;tU1X zE~-v-_vzE;oN08Qey-2GWM5=dWTUySAIRd1>XlOYi z{t}Gmup`QdB#=`E@+C3rV;}j+lQGc#_rEBqTkFA8XlIE^ux$P2n^~I0;9pJXP|j|s ze@o1C1>jJ?gfxpHLJWE&hg7}n+nMzM*zjYJ^4@O;{mrdCZ$CV3Vb!j*>~1W35#Y%f zm4B|ts$P$oH9!S=XQFr0tYGnlU{>-cwT@9X;f-T*XJ;% z!;GkJL>rb=$b+95n5eFg*;R*4g!f%A^3crUlCoji7yuD9kOPQX z1_vn?Km!oMV$a+0l{rxl3%9&CfECiUkatyZB{DG1%@zkMFJwQ9M;Tv?|K}PZyco<7 z?eE5b0469(r1X&vlG|UMe^%L!q%DtUz8vx^KEo1p~6a6w*%ji(C!{mF>BP5S&q2)7Rp91i*0MaV4&i8q@0_ zbVWXe$-HequdGK`&E^BC7TXojfNZPow;lW^|47&LeKdyj z#!nLRr6Dsh8(~LgZ5o$G4ktNO1{O0hez)vHTf~?cje+SsjOR7UtCOA*?Kn|MSTd`3 zO%(CY9B?F0N*~XWzSWi*iWF_oJEGDoSdGdW2w|qymYpVdB;pt25aS)@6_i zwmSzT)u_Lf84~qA+Ty^ip~-!+l>v-K1#4S+@_KA#08v?#=6DI5Y&9i^ zYuQV}<7v~r-llGGYy}+@9qz8h`MOWzelQpNQh?}>%Qm&)yf7Gag#akDO?|qamjrf((l&L1KG} z^2MC4&9EBJtEN0aNG*7JJMz|HNieXh3~N)`)Bz#8(uz*!NBOZ?`R2|gxtPxxu-kx_^eGkw(hQs#DnL<|N7;NmRD#Q;4pISw)|&u^=Nejz{z=feLF&jYw%z-W3W=}ZeF0U;GU zE(Qw%sHo=jt2uhvy(y(hod{o-E`F`-^P5qKSUW_-pW@%A3$YE~5BhrSJ5MPnogoy8 z0!FG7tFS1rpmn0-QU)J>eOr!+3XbE~wv~{6!nQEs!K4S$DS|j!NfxgMjMPE>owz2# zaHxshuc_kU&{VDVH)2oZS}-N*9rWL+8@ce1$u6W<$h2x-*3I}WV{%R9T}06{S%>U7 z^?>vOKpZ&aB&=Qr=d;Re^o@6;5BU|5y~>*OA$jTtY{PuteY5XgC09tjlo4sWOB9UM zDB*6%AgFId{T>4;Sl7t3asgu)({}`LWELhd811@73Z@K7q;U1pPcj`Qcj<9ygKvEu z$qO^h1&wW&2S)e=9AvORkaX?lV#QXX#d?qA-N~)&Dl6-S5t+zfzm<=vObd|EmL969 z9V7chn4DI!)p|+T-$V)#Yl)yTD`M8JOo#YM@QYM1vJ@P;_Xwbb;U(IlTYqKYjE> z21}2B<}(E_+zx<&+)4q6w6M>mT6c=%tN;~&MgfVXu55NWqTDy0G zMZqJ&KGDRIn1vpfWGte70UT|aAt@-#R6+IE_})7QkN@6hPUd|+-0!^8<9g8lJ2&Il zwEZH*LI!}&nIG8NdVXCR(QoGa4r0C;hI5rmg~+q;f9UHNIKX@$y~4B# z*ziHjLQdE5*Avnm48CDCnBA`tvLYv{z7J_8*T`G8X?sU1I4A>e zq)UJt2H|5dxJZ}S9zO_+9S_jLK-~6a>+QX<{n`7Y{t*QtycgPU0x(i}7k~mE3E&Ur zLV*y#PR;N{6W71zg)BwGr$T%&e=qUN3PwGSnNFC(JZVB244DI=SL5?;QY{j*T*`Gd zm=6Ug_C2|MHi{1^Jw#50+zUAvKm?FtAOpa`cl+)_gi0`xfQ(BSOQTg0a}~24l>%lMoM=+lmhav--wzHkLElqZ30lzE`{; zM7FaZWkLu<@hILK@|$xzON^@=xx5C}9|@O7%-K3F?J z`UWI)BWCB8jY!*trzDcMvJ^_q?A3dMOsYITL%LK=;@!}<(WZDM<9sjuAzf};S3uSD zooH{!u!kf1M6?)DBY~6bsj?tVs#Yo#?4;mOeIeq{(B2c3gYAz<*(#XYt#Yr#&S?2z z!;<92^KR&&7|5);yj@{NW&jM`Utv$Gm!+SC?*!l?eJIsGg2BBeY;6S-(y|ZjV_vHX zSUjF=<-ZMpLb;)q9;#8j0+6*~`Jqa-YSeF8YSa35PPl62UAm1L)s+>g{UB?(tguSI z#F##5zzpDm=euUXSYD-8cg4)Up5uNoxEpveBl_X`kA3uS9lu=UCx5z>8i3V3G0c?X>YHM!^8 zA)zAC3MK>z6!B6zBFGv;p)W#VoJ)E$-bP;I1>v1!S-*jSudt`Bxd%Uncv+2|CRakYCdmc zdNHdj(^C6Z&IMqxze$_VEBo_Y?hyeXDj?IuE&MRBKk6;fNMs^}0eHN(wA(vV^KATI zBfG*IV$XSD<<~;KXEH7O96Rv2GzTSsZj9y_)=9b|O^zmYq+4uj-xXTeZQI+0y&-P5 zmV*}dqx!fOBHfNiZOrRL_|h@rQcYn#U^f5{E)%_;qr){oLp>zBufO|5Kzt+k=#X3i z9=2|T{0c9f_mEu6k?xwFsKvHOvzRPmG6~SoPI%!p*_C)*H?O}PlV`PTx0u;$BIKQz z$U~NOxc-!ai~3K&$4opRh0&O)tV)@TL45CfFE{K9V=~irboTeYlp8h%_2f5s7|IQ^ zTr2rc-cz|@Hv}O`s`dRSH{6XVUjYd-7=@EAH=JyJhjK&WegBe_8}5Cla>KRvSZ+9v z`(63=)f1ViJ@?G%=ozWHQUMQu4p43@<-ynB*~B;t}Bo z7vm%yAe&`oP}8fJ0ffj0WZw( z14zco4R8L*91K*0`it|&00?{DkAG$k7~U#_bBp3NU;?~$Q+_Gypp{`*yKsB$mfOTZ!^jsHVphXIH7_FL{B9$9nix^%97|S`)4@nf| zh3~4|@QnZ=0Eu@~Zdm;y*TwMuF3Jsc!mF0)mZ*7{5`LrJZMh-cS;+(9@~O_3zJQYX zAYYh@BF|C)(t?qGAYtl7wk5`O1tTNu#Y`ClP1@@FB*&`qus%zxYI>Fe7wsge1&K}B zpmQ(9bVv{{M;X&%==8jN;RFYL?kecy$%|#3cY_bx zII5nH3v(cWgoNnb3O>F|*$D&ejl~?bdboVzzc_w&@zcNhOJN{qVCpmA=R#J6M}fgU zCU9obkqZGxn8AnHXp@?%iTpzNG#EhF?hj#M@I(MO00}nexBCVFY`|{=d;=P=8nz9< z2Ot6{K|;2+5E3f`2D%-L3C93}fWTS+S=QVCMU4Yqi0$+}RDgpN3(tzm+AywA#8bVOP8dq+F^1%ydxOdDZ_=Ghq-5BY*W&*h@NL+O}FE< zB~j~C8e|vtqcR`Dcwkgd+s?wko+MMLII!JznxcA#(YuWiyp>Ni9VF4n-VgjDg9I*> zQ^9oTYXwk@z8*PPP2?Jrp5>IQ%CuD9ML$wrxYwLxlPr}Ir22-9*h})SBMtD?kUmn7 zsJByMdHbO}i(?^~N}VLT8DzA~h%z37b(1C?Ym)zNHNY!?(CzV`$+Mr%q} zRzm@X_K+y>Y4_Ixklpp6M9asd;*CsDWB1G2k5^po&97!W)zFeM~wX_}TYC@T8` zl(d~A&XjCNf|eE@BGbYr!eAb$)xLN^XiqO7<&mE{{=}Xqzwm{ea5YHX+Q_{h4k}7g zmU~3R3&J+FH)K74jizV8eBk>4NU-SakFp?axA}UOZ`Cf6Hw%!tDL#|cU_-c=s~MdH z6I#>{@BjSI{^R3+pa0~K=2SgDcu@H}8Vh_QKuB#vmmfubIEkFJTbCPLk%X*o#*E+Q zwMfJAeZLyNEiq}Mg@+?>lzzARg2E`uRzU{F+Z$QWvyKk@Iya7#i zo+=CD@3ZH54&cJy1vrHPL6(O64A~WIlqP8L|G@iBBfUluS83g1uu*&#)X-o3J*5N@ zrpvcK7yc2zi+V@g_p}rs#S`IP%*BTu(JP5^FpKvt1}kEK11T2%5c?k1hWCX?z#d*D!!el5H&q;|nuFml7bvS>fUV zap3YsHj@J`>~=#udq{TKrveylQOBUZspYtLqyha#V@_WUmPGxEBxpU5vcqbszgcfj zDU(rwLIDW976}$#MqlMmeKwev*VO%psa>U1127_n_mCn<8rE1LAu=kJKD9C^J?{i| zx}lLAP|^B6642-b>~zg-pMgv29f`qx$g%oiS4d?b_EP)#ObzGFx##q+o!m`QeJ9iG zIRPN)K)*5~J6W!!aldwM)7{LhwBP}-A_-clPbB$28t|k3k+!p>&rC}4p43M7&Ez|& zkF|kaL5H#$4mQO90l1lN`J47Q$ZnS^Nq&SG0BNpFdn;FP`DK_yzC$8 zRz3Eb^ngslS29`8@xBQRJrKjY^onqPo{IG#%<6hRDz{RfNo_=z7~it~gFpP&k2#U) z$0FqlK;ee-dpXt0eIfUP6;XMXKHih=5MxDnt}-MWVOYnMPPV!CiM$n!>6qg8;Ys+CIx7WaClmfw;5(EpP`gJwa!kj1wQF)Ow3@^oi zzC`B!;1B#~$Lj<6p^rX%X;L=u#;XCKaFFz+`8t(C!9du0Ki3ztufu2izY@TK*V}6V zCCH9g3#*b`gFegQ-rgXdM^MK_2&w)Y57f;^4H ztLlBZ7-oIS3~OJ>)8f6k82f;25y@X=R(KCd;L>0LO#Sw`rbEO4G+^RhNps`#@L*9o zZ;Ct%e~8BU0=}6TsP`{~Z$!Uqo-X(8vMk4U3eW))30q>{Y047unP^`RGRn%fl;k>> zZP6>Vn5COcY02}>9T~XiRINKs{}R#TvVyj=swzl!!EC{V4=&biyk+% zyLU%>QBpx*D>aj-US(}s7DUfg0m{DkU;sNJ^P08HN((|-nN`cARKLtlllrBpT77Pg zS0g#??SO)0ZV%SPwwW~z>nZwIwzGZBT8{{3bM=g<2c;%sZ3j3|U^Csw{*+1Mp-{v7 zbSndqn!>d)lyfNy1E8oNW2Z5xPqHMdO0L$1o(_G!76`Vn!A;>I5-Vg_+OkeLVfB%0 zWZwwAAuQShBClV6d-eEdXMgq=0(?{!3`&4=cG#Ce*D9K`Ufsit3`)gtZAC%;{ISIw6|RJtI_b@!TKA2 zaWcIhI(w$zhaWH3_=Uu*}l>?CU}XD#Ypf{w~G- zFs{RVAiJtktV=Ni>;v`ZBC40c+~Iy7{l`Cd?EnAkuYTd(4K!6gMeM8kGKlC!E`^K- zxe!TLNT85c*2?KRxQMNzZ7oH245+qYdt=O+E_87JV zFkr8RNpZ$N7!l4(Sq%dvfFD>3dw-B!aZLBfJQZvT26fmV-kbXu#Rqdbq*M;Xo(#~& z-wa41ZOi=|;*rr}L;wlz3qVDK1V{(tINAdP-~`OnG_n`Nn2wKwqD#OjT_J!FyHB?W zWru8|z{F#NO93Ljl8sW9iRsticwa}7 zHSH&$LX_`2Gc0?Vsh}x6$*$g^uS3|08T}v1lC)sxVPse|-nVX}v;X@|DPos>BiiZl zy)Z1*m(dT~*425W}g2H#rur$6B1wuM7*JF&O zXaPuCc7(?YEXEiXfX3d&5U}7;(YAF>(sD*(Jy?t+$Jz+f`gH9*GAuj7glxrrJl^+y z?g24|WN$s9c{^c1v|au1`EzHUIet_0v(E%D+7StrAAd8m9>}QN6S6Ap#{JD9L z$&;UZ;@}7W%3nJ%&~fyP^N)E`d^NGV-0SV^`2di>m_TJ8UhvPI`LpAHpHF{bJ}U-Q zzi};ol+YLhFqqX^U(QJ_7|y-byl9j+OJpyJSui5}c=EXRf)t}A5-M#Z24K+p0aKz` z{`|Oe-v$7r-PoXl!a-OO1|s(tqfn3m2s5gHi?u%w35WLbG18j=03ZNKL_t(_P%7xN zt=jEzHBzlqDz#W z4WJpkBX(K|U{Zg-8I~$*S`4E%@}}y$xe)y+Jda<5 z0Y5BJ^^#nSzpb{(H~k;{zrj`^$s$UaZ8*ODzwmzs==ok47Gj;zCe)`7^2A<5#n zeAfLlS3nF5&HanPu+XDJtThqR#Q(Y%Nhg@ zQ04>n12&vn1s(WJ@Fj8|pChv6njU#ydO(W#e875O8uu=cX-=RL;F16fW_AG|E!&|z zBlBZ7ehMu)R5??VVl|K^0UFq!8qgb1lgbXqTF^T+uy@(}(SjpAul)?FX2N!)2;pYi zzW7WAhW6<&%}dSxr3_I)MfG=-ZNu*|E$_*0_GnaANf?v;y}^4P zQZ|j=E#Ltlp!*i4Bc*5oAX2$u6JvZ-Y%qYy`!}`&nDmpTd3_`Ij3|RqeIOgTZ$t|b z>vkjkBZ;+W7z(@}`&$7PTxJD$m}D=={#FJh3OrN-#`D@iqFo`=E%APA3)ol-U@}>c zHgwG9d+S-ARZ9TptjVW;?SDJgL6L!jkVI`sBfI)I*27S)EQd<2039`w_wK=?|Ky*) z@4#cw!SE};8s@#)nqDsQ6g;U}-PUc~IQaCx{qd7^iqw9kr zLCmMH9yA~WK6LgI)`G@!W<=d|z7UKE5-UvW=+h}7q!HaU<3+lKEQI4}dX}4czZL@| zO~vx!wt0l@am%ni{j2{X29Db4;e$@;#K0G_Dt-idJGPcWI!20Qj1@qN zg<0Iz0Z0G<$fQV=!V?0Z0KC8+;Jd(J&LG`@0qIw^jR6OY>&l3%U(Duq^?d+N>^xyc zIDY_$9oNp4b5uzcrgJ+ceh+)>z^Skb#*pC0SUnTw_*w+{WXQERXWmyBCEEu7hO!je zO@eQu?Lz@1)}Vm`Hrp~pz!b-+@xuk2a38OVcB>@tdLhCOkbeQn=_bJ=Wv?aJ0agU* z7RGi86#1UPXu9O_QhY~A-2#*l5J5VfM{t+P2(BNbxLd^Rn$c$!foPKe%7LAzhbcTKbx< z3((RU)N2HA>@O7;3ae7r)rR#Pm7C4v4V$BEL^op09&1h46vDLr5+2UQvjK664AKYHKJgH$KrblIo32s1_L^Z zUqk`TEJf^28Xz)FalIkoDy&Qy&?l)@GP6&@^P%1mqI}c#Qk)1=Q6qXch7r9;zLfn? ziIy7HTL7Y|S^Ry2ZV&+vNsc8zqc);9rgM_7cBRog0TFFj-_C9AyKC`!j$w=lpu@X9 z?q$RJenj#<`p^EwF{d*9Oe9uS@UaoVXYXDxAlmn_Q!bFkg6wbPDBi>E9{c3K`o4n? z7AtM!0v)>9k}jfhEIL9CZy)_1{>S6*{!o3eG8#!^d@sz84n(d+@`|?j@?%J@J*8Yk zPHLGJMs`ZODu}rmhI3{S-RH3s+G#Y^^@sc$^B-J~-Cc=w24aZdW%d$NDUt_dSY|?X z$<@VRK5X#e=~#arpv0vgXQd?Vd^DopS&*`{uZ6e7qjp~jb1f1P3JsBvsQKIg2<3nr z>+t?3e&WA8-p}DL{9FuhnT4-|!3&Xe#Q)^$Ad5gLPYn zfgIpr+uLI`bpsOA)a_|nBeE@B4&we>325^o8vjRiI-=hX|7!bBs6Fjf6 zZTWjJvm+4$NC41yjQk2Y-0jlgf{e_bb6MQ;kz7_gL}WdFmYR085a9xNdnh$jj}K{O z02I1dU{_#6hz~|~$GH>t3*b;WA3h;IFUFd@buI%~10n<;w2kW~!?N#*n%XP-xD;Lw z00{C)TVH|6rTE_aeilMvi3y(XFx#=LF9zFMeIeJPRUMWCrh{u5seMSake#}pgy4-U z!TOT2g)fBbr#+@&9aaQ3ghWC7CCFdt7pWaptGPb}fI@UH#&^=R2r5yAL;;AiAa555 z763v#8et@#j(bC93O1(01T0OuYLm0@ob=K(4#U!>X{qe11p+#l*NzdDS5-OCv?&v8 z00G-n@5j!t>0S4qd?wOcqD+o7tfzFUwx>i(8b_pOA*+%oTJ8L3(y-F;8(=m6`$x7- zWsZH*-Ju;Med7h`8^)o_P3qFPJ}fhwWMGndPNel*x9cZ)8|?~F!+M*>l~T4u{xxa( zJ``Ye;?q#312cL(pWU321t4iz6Yfv8a`Sp>K9_W>=~e>Tns2PIuPj zQlu-7{=&~6>u2DR|N8I7tTd)%Km%rUjKp{bY(TxW6s3VSsHFdc+3(7bycqGecom4S zWk3%=PAgI8<_G-+_%H{i2h^LC4vUCswfkYQ*}oj!qIL1?U+; zdR0phmqLPtoD!g73uUEvM|`^y+l@cOS<;Ik$y#5E=LpXrnG1HK#*Ht>_0A3HSMqa! z6QakFV7W(RHT&q)lSf={+aZGV70(D0OP`n-Z9%;sr!zaN$$reeeq zMnTiB+L+%_Mxi@`QP>-LKt?2F3Q#KGY2t@fHkQf|Rhs3D!d~N<$!+bijYy)@CsM(h z>^qs-ce2kz%=&<^m@8Ugi-^O~#v5FNqI7_n7G??H>Q_UpwBAg#Y|wC)Xo!oQwjq|L>Jiu>IM6_76ay86Ciad`dkkoTsiw z&V?sLC1Y%lcS8#dk#_+=U^2#x_jb;<9Y%Tmd)TLf3;ZE~3Zzq*;9*DDhZaS`V);3p zl}2?bImDx3+XEKyr2s^ck!d;_T`{!+Q<@zmUt?-_0FfDi*E z7~!2=yb>}>zPB|F_(FVlnKU5b&d+ZlN=*S9TrcdFYlv;*!4}Igfk6lcl2V@pxfBy7 zM25qBFyR8=U~&Zz0*h)khjJX-01ZEn)2-jxY&ShT95xcA1BQWuHOYE)#}Y>?z6k|`-5Oy=@581FMM&}~|o)~sn=7o&QWddW7kcA(z& zeC+S#BrWxlB*S_)U7w3%JEO=(=i=-uQKNr_lp_JO2* z?Fhp&4Rd=ky+^D3EJfmWLk6UkRVjlYruUg7ZiVDZ(!jKIQN1YEOELl|lFUj0Pcq00 zGc(!Fog&Jfq~4NgW?qQ#^=&tU!I*629ue&fY1s~CNh+8SW<~d5&%-zv3(+zqYBX<4 z2P=5klGgRj02##g!fXImcBMsqcP*!20aoY~p?uI75L+lBN(aXVW8BA-rAA@cf0|vn=(-||5Yj+0#hBkA+2aJTh24De0!a1-{ zzgvkFe0!VJa);~a!I;+J<Bf3JDGBaBLy-%kY#3M6FT2@vh? z4Wwj=5gD*HUHBfk#(ObFt4*E)^fh4VjH(hVn+3(n-2u z;J~2b?n1PuYe|~Vx?T;bM>U===HfFz2(k~Kk-ZR6qqVc(#YhqYgcN_s%Gdv|<7MG~ z;6KeqaT^>Wy>f5B>5$<(kij21e!vQn8wTZ=tSRXOFc6um=~}f!@8yseIrH*jfFK6? zx-a5ydEN%@3T}`~A<1H(j+BbyagMwWxfI*8Uk3K1XEFHKvOz!w`-Ry+LWUfRW5FQs zzVRA6-?zj&!*;MFFft@=ajS`498V*R0Uio6U`i;W1Uvxj06q49;_@^xv|~mmflHYi z2W@BL{FRA8riCHh?h|I<%wPfK$ia|PajyQ|dNKNPT!M8WZx4$I3+bSxG_wOT_+EO* z#QBKR=DVujYgmzuD*_@)Y2kV)D@3kI=MdKzlK9paBiYZkL1G01f;>yj>pt1D6g?vN zM||?8?917V;{9+yQm(^XcdOLuMobjZ$HewLUqeG~hF64Zb~V0BbGn+=>+i_@I&pR? z8_t`E-PDZUMOv1|>5^EbF}^&;bgpcK9#7<7!D{RagCd>~Bwu|$=oe7{lO$Tzpx&Ho zBY7GO=$$19c4emNS1rq-fS~}5v~LF2rGsRq26q5O+dIO3HBqZ+Y)`;On4LD2E64wK zBB^SN0JX7wFB{uaV|#yuFGoB!l~LG}f&P95Itm=L+e8iQ%6O#MT>%@#bPlVMK!&D! zseH>NRNLA60n-7i!t=b=VIFB*mQWy&?1F*<*j7wRj5CAz*_0Jodz{l}2v$ zM)ZQv0Rn(PXN(L02^LI=77-#Tupix;n}0oGcbN@DensxS&+HZU!wl${(wRjBfcRiw zDK{L$h`@B%eTu{wFc=tt9nnHE9hA_De(z#v(lMlys6+P$0~#LJsNSnFQ>)z{225Q0 z{$lt<4hL+<{yAU}%7BnTp_-rpBE+xK{egL%W^LNWiNR$b?1x!$01ZZJ2DHi;U`od; z0SloLCRh*#;c8ZAU=P?(Q#f)g*aT+w0T~SRZ+>pRy#DzB36*j9e57LCJv#>$EcUoI zus=0lxAI5xZSB_E&(F@E18B7E?VRIVXF_%b=&GRrr*oGH;6>jT-X~iRL#2g=wR`00 z0B5{+EU+K?_ZwrPV1#CS`#;u1FUk}Zv}j5iObnkPQo4xnweOUd9i9z|m6mnd>)eF? zQh*mg3B`!3&qZvneUAY3_Btj603;aG@rzV5dg%q?xsAn`nBe-rbpz(qCodM_TEn); zKryQOwX7uh!K^sgcs06_U}gaw02i*GZZ!X94)~}ttd(F;C_5xwi}XTdTSTRknuWKI z#6lPnZCba9tBvKDyz)t{c~M~ikd}QAk475s_c;|Su@z~?zv=(zgt?e?xkp4(u{07` zpOfP$c+uA;c1F^-YUfCiXK|k-t-jkE%Bfn9N80y(l1f#E0>Gf6 zClkGb0)3CifI-XTbkiicQZ^!aIAC&E=ip^0OT!evq+Sw<1_t!heeYyY#qp=Rl~D=# z)FemlD)3P6N0M4~O*+@kP)el|tIB3flCNZ@-UlsWtUyAJp@Vi!#F}mmP3N4)WXxPH zo|C^t38La5z!-4$63O?%JyI+#MXiYcJQCrmS&jHCHKsgZrf{vGn zTxPqp8-(YOR$)d2kklW%rC>H{>dI=wMlz#jx1_q%q?YCQp~Y-Y3?(c`{Q+JM_Jh{| zS{#Th<%mmW713_1MjNJs0fT`Ptf!qt`gS0FR?iFl3 z9U%wy9Ho}`gdHRe4&bl;5|~Jh6*j;^DI#D5aAMy(fIj{a_CeAeX?RQ+Ah)DIlx>Oi z)sjNuzqxjBJ%MQjG~AU~Umy4{MFg)V^$|f1SV5i&1LD!-SIaf;)iAgt%i>x}B4I5y zER#jfWLzEgG7+&3uwk-FV|&-GhIxIjVL{5|)u}XKZ#@R$@qh*CHJwU8O0UURYABb1 zd#}&6o)9T7Oo>{vM%Hx%gQEVFWPEQ;^}>P-mo(_%eO&*r~_sul^cEEZFo05{W)cCzGGO%ej&sQnb z-k>8yWmcHhQ#5atP3`9LLXGKd`#^N5lB+pO;Q&MdfPx!Xi^+B_OJv}#hI0iSD%0BE z3C2XFT5X%UZQDwwFoN$%aba7Q2*^;-fP`x*(Yw>eEUrmbYGT)35sm$I7GW(Ikli(5 zNw%eZ3+Hb4?YPw=^Z6nvI|M?jr{}l!oNWi| zvU)oFGiuxippcpc=yGY@mjd|MdGMN5F~(~gF^mVm16i3$#^^i2zoF6P+*8R1g{*?zf2Bc zIL8A5i-Ff8b&Ooe{UQ{}a{X53!vKiOyspN?70v6VUH#Pe-ALXSnU=CE8Vy{J(G8l` z2Y!?>u+oovOj`d)J$_pZ_OBE`urCD($ghxTX}fysErCrL zGm=lF?Oa(9^@5~k^(`qb+zxg{qj)PI*$^NxVkEC1WG9=~$BgKBMF0}DQC-*>HNMl> zz9*?z>;rIu3H>Ah2;hPkUH}PEyd+}n-jkk^y9JQk4fe#PTN}r2l0ViIqL2Q~VSDV3 zq+o3pKybJm`}<6u`))CwSM&I4zE9yG&ACwW_Jc-pih>Kg9F?lSCi1Nk$;%8KCP)gi z?qAO3Sq>;J&ldw6ZL6^V02dF4EyjTO@xGOthM7IYNDgDNzL;4Q0l!E3o}F)Jud@ZFgKYo}fEB=kE%;Cj zWB_bn8&(Aj*miboJSNWUd_MMR=K)}Vfnk4kJivgqveU6*`{D2O`_E){#vTK>kcZ(z z(PS=dm?xo2Q^Np1#PlM~0?@#G0VV;vNb=~Kf#J~YeP7Rp@!XlWg#a#00QhJ3++30c zb3$<;jEJ)w3jsdvNrw+?V>PKSh4+K+JZvY735A6oDzOm2g2@jxlzW`_#gKF&166j! zLpk*EQjYJXC&aF4tbg#WJn=%XhXD$}g%ZAPLa(b(b~yv?8PTC0~i1@CROeQ4)%@QOIee>jkv`` zo_rjWrZZ$`$Zo)t?1gk{a1JWb8Zaa~VN#z6I5~X&L>Lf!9+VN1!c|S_1)LZg0zlz4 znAHmt^2ksBqledo{?q@kFd!Qx_3Bm_&~1SkIRPozoV|D>n$Rhv!f0qeIHX_U`B<0q z6P01rSzgi47#KA);GjpldLX-}|kTCmt=R#=Hk%s_8 zY^IhDgOieA(Oyj>HfdM@5n8eV8O%JR^S8kz5-KmnlO766@_YdP^n4p4eeJQv&?gfOvwhoYlNgXK|$KZK9DICKYl+yv4_*>W~K*JUXMabKpiob>T z4(|%*0ej=@P-AA-julv=*1H2h)RIF6jE~m<03ZNKL_t*hd=LSQ2gTpx3&FS{2}A;D z26c)GA4oTj1BHtLE@)G)Jt)sdY2t&$Xiukr5jF(56&)e~6i>!FU&0~IhkO#h2+Rj; z2Ef9;-vEzy+eJixhBGe0m{7FJ^=@M+u6bPleBZB>iJIk@1cEuP_pb&3K?V!k+_KfM zCpF6VR(L-uqteK9Ret5y`fH5@tCeBtKwSXH=-?iEjOj2U$dz`)2Xgq_AMwem{B90muzBLEs&poifZ@WISI@*!r^wHE_v z70=si03j~f5+GrNZde7RPYm{90o->Xv;HsxY-9Up;Ld#;=;P5)9||A{HU~clAji%J z76gVvSqENY&)c~G1XfQ6qo5!NK&HuJ?$;;)sBK&BUI=!i247q%jK()&;=`^v zcth}2(<;YG-65@!eFVJBl%;4)>Vrn~D!%AjZgV(S5! zNSak;JSG|JsQG-lAs&=LkZ6&l zu!seMCC=_1j>4^n(1>vwJ*dsOgoEFb#ezdi>S z7|jiM*sZZ4R-kB)?bg7^NlCDX;YC)Z@w;TeBavce%W3&*@md%ZSP~43L_OjUaTDWf zL!iMzAr_ir{ULQG*}!t$d}bS3eb#AL#R@T1-)V^J)|k3EHi z?%y~cX;**{27W1cL5KY7@GwKYEk@K+FfR;f#18+@d;(5&EF0CpI0H$p>sTavp zn_gwF!4KjRtfxZq!~**QGhqw<4F>cu5O_D#z-`;`cdN(57Bz+6dMadMuq6smDjW3F z{CNWxH~)CP+$})r#($WDkJlcbZvzmq^|pj zuz0>m#Zm?YFjCpjR|14kTBwf=XuzBh;R`!LD93%3jlMd+?)g5-^^S=dydZYHqioOv zJg!M;;SCA@xE|ME*bRJlF14cJ{6?f3YLhzqLvp*Z9R9%a8*%F4Gl-7^p9B)xZjg4n zSp!P?3`i7s^sQ;W?L29l+WS676^|MCwG{EYHi&maN!CER)rWz-HCLzo9U<)+fSzt# z)-`Ke?OVy%h-XBlTN?A*wyw8{UAj~d(gzSozK%XMtS3oS0v%##PpnI3O8_6KpQJXo zON1}%OWVrMvAaoTN>VfXb`#ILla1v2I~i=uCU_n2Q`JALIm=GHXIs5T^Wmb;;a{$orL7(_O z+yu-Za3N-@U3-5a+P0Baq2X6QiO+@??}sNXy)ZP0+klc}D*8jJjOa|vvNL;*eCJ^{ zhy!}?jsPqe+yj~_`|`yAIqzf;Cj|^2hcg{7%^%x+0~P=i10(#Q0tZ+*NXv{S_?}(Mt?&8ssWNq5wiz zla#)t%tet>&D3|HvMK=wy&B+kAf4n+{UFgRt+Qiw`$Mz6_+<_n#%9)fLPlED#|-O< z+0bG^joVeZ)cz4kTZ3bdbc|@yRd=*OessUuPr^XH0)r;)YOG8!MGN=McGJw3C`f9% zJ(`Afm1YH)*bM;EPckS;E$`DNMQa){!0b!F&Ab(TyJ1Wu-d9168ruO4q+z8VkVys} z00?D9dg&c$`$Q^uk!|p&)K>TPU^^U$tmVEB7?8bnF~o00$4Bb_7)jL9qQk@c$37sc zF~q`t05aSUayQGbXmkgVcuV@704@$r?j1b(Pab_}z{g{s`k%#oz8>8ln9#jU@y(J* zbwUy>fCR}`s^>K+7G}cwLsSy0S_T9odescS5y@J}vhZ26K5C)Vqm^)|@6FO#cP0V6|h=Co64ue&qVKI&~7)549Lw8ML zDl_&Bn(H9@jKuYRK70zupzuAk?dGr+>W{Gfks77)EoEkOP|d#WT=;wF|4?H)UJ0aP zw!Q5GW4$({Gq?vB7;x~v_4zrQfxOB<1osV)*f#dOZ4a{n&~kJ6GvWI{o@K9Fc_Kgu zUK-ND3}j*22aq9q(}b~i3m}nt!M^GL37;`KMfkjJEoEamU_?{1T%J{uxk*q>xWM^T*xU{u(Vu<*w(`>zMkX9 z?XhBu)3TZYzsjxZfL{ANx-NHnj1>(kXleRHh9!j=NTkjXVN}xV zRNi$2=o(GeO2DJ>YUq;8-qRG@I~e2-Bysx1O0!3RwlI33N zDdBcPbZ;lJsO_d8adX&9vcH|vvsAtX$RI6C*G;!FP*Kym8_>5hgW}unIG;-5#d&(VHK15 zW1srh-*@ow=s$gQ-qc=tN~!^!Hgsh~U_uUWkKY4wFIW(KAg~e`(#wy?ydhoU7i*sU ztpF{w?JBJgv(kD))~+0!d-}@LYU8Ook_QR5VJ5Jw4`#hy1t zBXc@H1ClCRXG@h-{c(U3yTzOjTVl`KeY_$roq9gl4QFsphotMagahDxLAFK_BkvIa z&bFb~gcL3hB9I7R{&xF6*WyV3|F{sWnF100%#pH&U&KF?&jk~L^baP)J4arM0z*KE zKX)Mj2FY5^UM@!B7Te;-s@|_x%RXL?!cmwLB$mc{*n%XBP7wnkBw*cL2wxdN8r>RN}?8tgRmsXYhg!_ zdKG!rsg!VaaFA#ATVr@(69yiQ5!PfZ+P4>0q-8d0dQ~6C>6LNl!)u~tg^B49fHO$x zN)oardiSUfly3iM56YNytd(!IOhyGtO=NEqw_6APDGInB=>!pAfd@oWuo8RGfY1xy&4#7^*78JIx=Sl9SOvV3bsoNqO{_sNek2N!!ole@O7YigGI zJ^&sA1G_L5YF?*xyK&O%ABX~vwoe4&xKhRgPYRK}Fe5wnvLB>8 z|M>5I_TWQ5^keTk@c2*u%3nKp@=yLa*bZYq?7rPv`Jfrj?Y_677b7~iySGoK2ZZ)o z420T>u5ITV*Ft86&%=JCU_$VSXio^UVOuMqLq1$qu3q}Cfyb~x{znfU|E+%?Gjhxl z`pn-I=>~bF%rdUzvM_)Inf>ch`~^FL23r?3y_1fG#L55$0}Pj9mDHS?qH`e_6N(0_ zbnARX@7e%~_1i!rHMo*SPN37n8jBkIsib^u-q^4#Q-@Bs!6C~KOEC;VKe|Y zKEwaa{8-4Y033h`01-3yn6?30t)z;+9n0}94waDPP%@eVXznlAtqkN^F0 zNUZENFe3(DU{7F53~)Gjcp`ix&U!o^%!wTj;6EvlKp3Eo|2L#sfIu~~(@4+z zZu>%l<#MTWxif|WLt56|pnfqvYX+#D)q5eBIHZFx9z^X@a!8_k|bcz@#v55y;M^6ah7%;4MZJ|kheKA5ah~>5CYX`_;glsVJ z!u1eV#MV)0c>hYUA27$HV{zT~>+1E0QP(KmDxrnpz7?-^Kohd8Q)(_xGx#En8pxnz zd+qp8lX>=wbVIMkz^LA3_N0^Zn02XRL{qf}%t#xnD-2BXq>Ra}T0hJPFd0PfHc~af zk1{#41~8<*Ma=lU0E}77YzU)J0R(O9nt;_9`^S1jlD~ufrrwgq3!*FtAO>(#8{c;X zbd0b!rCGf#Sghx+z7H|dw@gI!&S+e41#QBN2-u0{c9AJnA4iuB>uncFWl?r>|422~ z?`CkKhVsd_7|JJ^X+hGZT_kN%79Aqh>oLh71S2~8XjzhW(Z8Q^LjVh{=oB8(6@o-d z`$SZJr3Up9#Vu+6;mUH)e6!xQ-%&QUI7LVZFm~VfQ3`hkR z;@^O^AfXCVAqMqST6iZI4@``^s{%}NX8hxy`ORYu1o+?wK6>!@@BMZ(1bbQGQpELY zUcPmNXhS+WY-A4hl@G2wfFRbXJQW^ANSBuP=sr_vr0tBAyHy&$Ak;Tr)M0g7NRR=*M;3LpggqlRk( z9Dp<4H_Ye&4!{~Qz_1l}pAVUt0So*a#Qh?hx?B7kY|r!Qefe^%x4$1?VaG9mqJU)O ziC|J}|C+8o1c>xSm+KC>KcgZilHTaKxcu0aQh%DLpV^&HxgLpdLN zuGbjfSx(MMe}{q(DJe`omjaA>P5R2TQNx&Y@qTmyNIEGqY~zKcNqyFKh>Z1(XgXGv zOzkDfQ#P#kgTg`pMT!wt0HNL!m3@gPWVEkTPhA zLH(p@W$#B~ekBrD+uPeBLou$;G{H)NOa&?8Gns5>2Bmh4?1brD+SrpxUZqs{L0~&L zcY00~U?8i~c->ZpHP%C-+tDe)ezZqqw+!~V)fRS%-#sx27V;}CL);gy3h}&cQWjtY zIacio5#xIGmTU$Xsl|qGN0YiIY>Av}uXK*sV)7~5=XNOzv|Hp-{&;o1*lPe8c58`N zwoD3G0$h-SWkAGzAVr$BSGL=`cQOD356H%~oQ5^I6W~Pe!+-!RwqFk*vR+J%7R`$% zgrY+CjodhR?32H8VnEM<$nX4m#PO1sk7<)xLru9dAmTHPmr7IlVmyZ|LcJgMdS)ow z_H+jhMRH}crOtd@DCL6}0*nAmG*yQ(!`nq3LgxnwJ0b<{rvjOC@i*Ic_*^if6CrHR*}&gk z0{{RNAiv@kvpGH!0}!?j85L}a-M7V94ov3&3_AzARg<~_liQ~QWUwB_$DZeW?6tQ` z38LM)@8pYFW>#fiUlbJ&g_HIiAPtttUQ_pXApkL-KQ*KigaCU16N0pg z&!ep~P+_1Rd6xT=UJ9ue>yciuZ|xt!#O`v+uSRhw1*106VBcwaf)eXlm{OP#V!8GD zgbd3kN!~?)s-|Tz@#0BW*Q6Bja_I|MEX+tTtt*28z`#(xwiMC5RgQHd!beEjswrF2 z>9i$9gmsYI_G66wlepahfazrr-+C{UEr1EoWU8@F5cOyDBc6)3#83+hl~oZyrJk12 zB&+&&cB9WFP}4q6T^++juEG0UQ^xkP6sqi}Z$Lq`hfjy>MrAAZh6z(`+-{A^?Xn48 zrC`bXQCN?*2r+e>G#-_<%S02v)ECm8s}B4JkGsr}C@9CKh_Xg5Z`vKQ z6C&U8V#DMS>BNk_o3^V_zUn&xY)rN#9c#BP)yU5Ml%O?@b*!IAOFHr^EhW_CD-7tZ zk$oa839sK>52+WCwrVPeElH(=YclW`KT0R-PNE4N$rmgL3lc0(#=0LeEN+o*(T)zV zfIR_RR4LcnbB_tY1d}@r>$?IvrX?D;GA)~B{~L1v;<34_^IJcTY`eb^pu%oVVpUVG z#CT2{x()aNEe1Y{S^fAWSZ^Ng_hy*N=>$QJg`Wez2W$rnNZSj7&x7r@LfZBCXMgW~ zk-2^F13xnNh`6y*q*KTc03G(j>}<%Aw48q<`$PaBNFVTikXoa~hjw2LsLWKtY*ZP> zatu0{9VIbK<9F!=QHe*9d>s4d0Puk^*8#@=9m!bCDAV7evMM4{*$&M<(Y}BaBvk+q z`XZ3ykcP#8)SkCReIwNneLAF0)n`%$u^JN#*ucL5`(eO@s9gtL!pJD=LhLVtVJ+fw zY0sJLkzghsum$h{#3<_ntAU3DF9uR84B~z+FNMEDfdjz9kNnhAlN5N zialrNVcTP3H}=EXm$Ts+S$QHPS%4WkF5uN z8}BrYvuYAUMu0}RL8AftS3F)U%fWr3;Fk*lO){*2an$!7CVoV3f*o1+B4;W3D z5L@Thic8YAUKmdNWdIIiMYxZVoyiieK}?jW6m-1+5R&|0N+==p>(Xm60fSG3{UF`i zS&8l4M|UOmasRT!@2*C=;reopSSNa&kPv<|4j-RN5xM;lpaU?#0A3|fec$*-x|~R* zy&8Q#G_a3E?mkmO=Njg?mYUPIlc9ON z`Zl(+v`hD`vB62QwGkkM{isP@rC;j**q8WSm3b*(A--4Bw}}76-%-6HTTNU0miR>` zO|Dd?Ct|0757(#3SO{NPI7>2cQH%vRxX> zckg9z;qs}%eC%&z0D`m%-$#*EISVqm7oHGpK(F^VPNoOM!N!{rw+rytEmAC)5%+Vv z5p0KhI<5ss;m1jt58G~SK5MqJv~ci)Kk!%ISHH~%Kk$)*$A9zRg@GJXX7zv+(lh4RTxT6-bOsRU#qGWpni)gV>cwF{03k>?FoP4%YqPk;JbUb)1KTeH zv$g{SSxZeHx|oaPXs5sQEdM#-7W)@$iW;%n=XsbmzXRRSch1zUn4-TiczBMzP34}2hdWg?2#(5&tt<(t(ja%yalomdU=SIpWD zkMAU((#Tpo9U7rK=8-s}ft_uVzeJ;X)d(-(DD7MJ+e*Vyx>f@?QbA%$_v(@yYzR`i zqs{lq07;o+Iw!!}Y{VPC7%8fK%uW)gC$7T~0Fo(_9P+W23}6p?@_I7o7>7C20@U!*BEOe_Tk^|tu1vLBPo zh?Mn-0qG|>T}w+3TcA_@Cfc~Zk-JV7ZD_RD(ph4+>gRwJA3Ra#8AP2i*i*4^__m=|nU{VLMx-#n z4bZ6G4?v6dwBXr+HRF8*{PDS{C777dFP8MHuf^vSK!OYl?-D*IXFkr(nGix2w4@M| zyGs?H4b~Fi0+Z5&Ma;iX(kH_AzlK(vkMF-Wso#Gkd?0sAaD_cadWBh?2^5~=dd9WM zu5q<|^;)C_0z_ZQvh+US%t001BWNkl>BT1?D z_YQ^;&E2p^MU%Uf5gD|)_l;Mi@oltVXkUCIiAlkft-hG4#0F3DIW>m%0i#mbkkQh_ z)SN!aV53JSwIxxzUB2H>qKia9jm7}Cog^e`H9%!n;&DTkHIbfS!|;qr;P%}sE&EPfRhtpKqy9>NWv8|DN?bJXd%l|Z-}!Zcf;4wNrDz# zAut|ZR#>D{FeBb0@^);4>J^L!AcRCLzzVXfntpZT;PK!2jfbLl#ev9g{kt$@(vogJ zwD$`8z^#Lo#fZREgE}BYSrPY>lo`(T#TalPyWlavg8>YK6C!+>4K=_*sTqS9204e@ z9Q)_s&WjPlt1>JK;Y^NY3`q5RoSvJ5Z5z^wkiCq}Oyj4}9tdW>k=kf1FJJ^<;sejq zF}O!2#r^>lNT|FF@GCjm7O_gcQThHJh_JhJfFHC$qKnh(dbcz5_l!2i~1ZfxE4`P1- zG)T4VoQVwv^x)OePyqY?;l1Pi{0LU|7eLjwA~f#KFy#XjM11*C$(EiO1|y3tS27K$f+!91*@+4vS~Rmi6W6 zc`B^PscNJiX)+&8!fJ{M2SB9V59|713|cVIOX`)fC=9-PWnEG;cQcUhx=}e->KbXA z&u6*ABqU$mpyya3fsAPeX{_SyK^SQWLJ1UG@6%A5PTpf z!GLTO)?-pi4-J42!wcxxmEI4$A2g;b+hMQKevs1n@v)D5{Gn=}uc=w2U3oIrH_8m& zjX6L8h~Nd`N8h6_FJ*5DKlFG(=nFw|QB$w3#$q4?AfnCaURt;qv7Z{n>j_v_eSmcQ zCiI0Ub*szeGE=-zW|7qw@eYn^SFl?OI1RvTE(IH6_mL~QQT;;5tw`4*Sqmu@lLz$s)Uwf6BK^u= zS0*6p_rFB;-YvlucNV1d^m=rHAiKho#x;v|FuHix2LHYy;Rju#a+-jo#W+rBSt z)UC23%B~1N7&f1Gl7iJY2J)^cSL_ntNrU`>G^-Oo%8vAb?2R_Rr{gya${=dE4*WCo zQbEPQ>(URTWw0gu4Uxhn(ku00RMuuX(ihS-30FHgLbsdbbt=uO$zVHq9~0>iDS!he zB+0(C>763O3Ya9GxAl=sw=ytMp9j4l{Z2N|^B7+U0EE{g!z$087z45+eIH1%c+LUD z{a{9_iF`eZ3OxnuZfx&Ttc{Rc)x@jyoSao+dIw!1(;|<;YvN^s8_~M%z7Rl2VMR2} z$_?mm21p@A%K(Qj_rjR2(yk)cI`;S3z=tz2tI~)rrGy4hHg81yuC2F1Li`_|j&(g` zTYIaKtaW(1a^>7Z1wL|*$dAk!5u{k8Vv&|rnT;ZuKz4=v0T!gT8LyNd{37X6$%RWT ziaGu6g;-_h71JX zIumRGG9?D_%6I@GNQlxw`0DBKnfN&tDGt62TWtR|rdFbGxdoU2Xw}JRVfSG`BmwJ0Oz1@H8W8bPLd$KxF=s>E({Uq5^ST7<#vFvO zj?}E()y$Y2{wRI=*Z%E83qTSh^1Htgv6Yk&YT2Lx4Svw?7iku<2WA)nEcUq0NPc@h z=&)Oirt|97|J_s$u<1G>)s08NUFgXl+BMr5s5Y z17BW?M?{;>Dft6b06-YbJ40|bKmc+nHuqO8iuDZ^Nm-7>&LptY4ZA&(Z=@Tr6&1i}TyX0hp_s4& zmq{MjYueSoj4#o*wI5_Z8`DQx+krc`!g zCnsCg2J@}lBck3A*cD`0dm8~{)bCMQ6DdKQVo0AD-x)?G*nTWr!sy z%NBY*_T{wz3j+~d12B{g(MVnl=*cf4y(7-ZNK9`{(303*Knbt0{TTyd%m%Cn+wb0s zR4mf64182}5q^-jI6*tgHlBG4{j22(l}rS*11i6My5s zedqzmC?i5Uy4_MnNYae{h~pRWQZO;2lihFkDH=o54H#h-lZ9DQ10qCq+8~0#2!olE zFrjPnGts&VN>rNV1H~r;1klMqTeWwE6kmw?DqtUw&?tal_L}4=SPhjq0XzUO$hlxA zSZ9lt)BzT_#rUqqc)$npDva%#+Js+)6fPJFyo0T(vV$0vbz0>6ZIZNNmhS3DBPtZW^u2|$PBtIB391TZ1m7hnO1A+nd(A=~0y0TX~N1wXa`I(Xmkv?xo1 z4~Ftcq-lU2TL2#TL)I@wIDm#05G;T+PC+IBQN2feJ{^2K9qsBcA+=%sgx;{` z7J})3kp+C%wM0{}C}TCLsa?|yF!;Jxv+slLnUo>I++%u|!`zM!gd{9aP+YFXw5QtC zsDbfZX72|QswTE~c2sM4143qvhoT=D$frILm=a-A5|c7JT9P$vWgjt>H}bPKK3Dw~ z1NNdnLN3;iybt1Y8AKn?hMghl7=W&}&~cU}VS|Fjw2uaqvS5H8F+L< zKS^SE_8MQxFy*WDtsLz=8A%9ZeL8LnAf~yCB&BN|VMy1O^(4)bb4ah<&8&w;{?@|6 zU6ERKDFQgf@ha1!#}!F~f-^uA%V-4&l)dND= zAx3m$Slm}|fg}qi1doWPPZf#PZt;-l?NlOs)nE?bz%Npb>Tic63lL*~#o3fQS!TuS zT*|dM2NX4y_kQ+|)U>Si9N}AgLDp+L@3Ftnb}j}s9;_7BqkxPDH?l0tZec^zgue4e z$gp5jZ2Ka^`q)Q)@-Gbl$*EcYCZq|>0IK1W0zx`Mm~pfpb8`8aWrP7?8`7|B_7Z8u zoeNQJ=1fQ#c-U)ek=lzDoSaAzA%ikze9d%T%i9)m?*|J~7NU5OZ_%Lc=JcnIcR)!h z6<`C_1c?q_4L}AmFMI{W!PdT#mqUt$KLvxlre3X{&i)9P2x9@%Gt#ezB$*XtTFw6G>lVQV5srHse`3I zBB4x+5``6NW0Pmn0}>2Gm;ECoX4OuQK1;g>;9$gDUJdEl&_0OVRRDCvz7tb2C^1yF zBxGbEvl=NltOI?KS{1pLdqn_Zl_lB<<^{=D>Kd7jfQV@VECYkOq-<3%1G55H=_iT7 zsp}`(Vq~8NFkziC9coN(P3ZuT+OWPEjK^eaByCH*B%3G0fEd_t5cD7b$)5N>03-cQ zuqCwv)T#MigpW+=u@H{|C{x3@%B=g5_W~oWWx&%|RXo za8ZLhY=^QdHc(Yo1?diPyYz*qM6AZ{o{pkEo$W`~1c<;}0f2y=V3r?-0@)JMC)fus zOME>16&h~~OHh-qo)56VaTVME7*qlUz=7$Yz>wEdT1fdJK!m3Cw#A+pUH5BzZe9>s zLDV0`|K+O0AHSPeWq=yMl>a;JTlrpNl>wtL9-id(T#5O8D)yyd1F%h`w0$@1yYOH! z_kP%|fe!;61~iNXfn|9ho)Nl6j0wSvP6`&24|guaHNpL33&DmO`0z=Kg}9C&-(nj8 zhk*~ISWK3Luiq;=8=0#EeMoPqLQ>ez0yBbh4J4!;<WqFo}&T&VX$LB(V%ORv~&vX#y1li~wO zrG{J8yK?LUBFyi2L7d506DDLMH=nCl1UAH&5bp0u1G<~W3ljp1(lxyz9K+d(dqdDt zWnb%JRu_Xi=5m0BfeQLPxR1|67Xu;qNcQgKZjh5`LN~b=K*v2Fhd)fyw{tn6GaFX#55LjYjQL&1oA=6{bL^;+z8BR~a=htDXMZV=3%l!!4{ zs0Q<^A-`~Dq!`fc{_V5Tgzli@>O9V~m|u_mb6^84H0*ZYrB+WDP5i}d*adVja04VL zS5Q90L4*-r^r?brJ-ixsE++MHtrOqRfi(Dgyu zACfG5ZFD8U0Jm~17!V@O4RlzF)@G4k5zG7FTL-85UYUfMFSF4S!EWf|=tl%Lavbyawx4sWd_1&xhfX*Dt_dwtyp+qCh(`{L7RTiUffz4nD{<>V`k@nvCu3Pxyb2e6z(4DX}>4wwui zSG#MO{g`evhV|_L92n9$*Hlb+FQiurYLHB+X9H%#8Ibkd$i5?eAh02W2;j|#?o~iT zzeh^Sx-W6R8}T{=Ae*nB3;-bp*p29KhAfLnUZh!e3p0Y$ik9^CrZK$~7`~Ttd+cBS z(!t8oONY1r^58=scnE;V5B=!etWMDv=5&`{Npg&PMlQvVJq*bG#hAfFet{Q+@;&86Z2+*`mfjMg zZZUMLLED)M@l7C2Lf!-jpjX5HuIJ6QT!J!fEYX?-kyGWF1NDpiLEoxPFDzVylycY=jc@>SB^VE4ytyXay%6_dLhh8VqRp!@X+n?&lOlEt@BnZCGGKBso!5Sl z*MdDM?1qC759_#6q+3g}A9_H-z>zyVd>q^*&&Kg|eZ)Q$FetOpf`$PL)3lc>BQh%M z(sLX!xVH&e4`tU!YK$*Y!X@6fHQ)Ez3}5f(g2n?e-z%8O=hX%CF^CTCj=$@p@t~yV zWIwZgJE=3g65N;vST<5pPPGkam5zwCPL?;CLPh%UIV3QLD(J6g;RY z`TgknU_kC|#MyVlp4Z*;1i)k#AR5E8Gryb(xARBvpm4IjWm6)-YGZUIg{ltZ zM3IIy>264;)FV>f z7iTvr+tH23`Lga1Ow0fVFdluAlBKMM78!ECHKG&Mt6-z`j8rpvi3ldP*BO${lZ)Yn z@u+E60vuX^;_ri)(~(_ieD9>JgZ0?Gm(#J@#4I{QR3?R2gr@XP3K2D~SMS4UOlUvf zh~h%;5?PO^-aRQy#5+(OLxd}=>vIh z60FC5`IB=Kqb-~B#@&_WOLIo#VE`f@_{hQIzwvLP8Qp%UDJDc#Rg+>$F&LU`jHAq6 zVrchh-{lx!_)O%bvhIApePXF7{v3c(VIqdqIHo~;opFDr3t~XUC5{)fSzV)fE6`X9 zznDwANY%Pjd?O2yxX1Oy);VkY^&H8opv2ASuLbx3czA1iVM$zmx)PDS02b{D!H8bE zM5+fwnT~PhW6qE$P?@y}SUzB$rFFAeKb}%0$4x**XX$l&J;#x>u35uq430Iz*d*^p zTP!%1==Hu93ksv8OvVU{GUmnU+qA6~$SBjH;Q`%#)7dc+rwhm^??GQ!ioP2rUcLKb z!M)u3p%Saap1eb`V8gzIA7reZ{iyQ8E^otmCHdHNG_rV*2BtkI`{Fx+9l^|A)32Ih zL6u)2lj=h@Rlx|R^wcjhVs3|}plQ96$CK@bA=#Cv-t8v3cROTWtk+%;2R3u&;6zO5 zFdCTA0U&^q3Q)F(WrcV_xR2jsqFxY@ck$YqYIU!$8FwW8>P|?a)N?}2t^*DM8l-3K zNGAzWuO!dfXw2tjy_?eS#QGB{A}mqA);(gWThciavAb^sBZ34AUkD6|Ct=Ma7b_ET zxZQgKAiwgj=KG^n*X|o5a(I8`%7uf+KJ_aP4-iq02#q|FIa-5th5>axxG;5I2XHW^`mRZ0mzDjOb5?6w4mlK$7RaU&Vr? zJTXYNTR?%%`2YXKg5SAVPy+6qL_ax5fST#x7u z0e~RQa{1`WTzW<9Eaz$|=OMOfX@5ms%1s?#D*4$kINgedhhTtQy8naPD zc$H-J-6-Qy&tp(@I2$BzjWwv(0sF|`mtuh10lge=)=0KeTyJY4m;Lnvrldcj!Mz(W zKMAb#Bj$Sr8k%CIhV{OQBOd7jsb=?CmyR{?xAcvSO9t*0EYxJIt^s8#quNQV$V`*3 zB<^=UK%b7cz6<+NQ?=Aj(lp(VM+ol;1G5wNyS)*1V_Li{lA@I&arbiaR@%=ro~xi^ zB4vhsHmhs0RqGF_tckKRJ2~PvNwvC=TB)~0fJ$XU=q_pfAr-t#v*e2XU_R$HdmATX zLZ9OG;CM|LA<0+Oa9#}RupuO8sR^C3LKu{Z02QQM-BvC$oQmf|LB(WUn%3{+=5%K) zwnA3LefEVXg!Xjyi~j^~2xfHmh1@@x6fE1n9s|?6_mQjyLtRgjL0v4>LHP4ee~e*-}?8_9ilUfE|d6rbc%R9 z?_!un4O~!UNFok-|2E*jBT~9TPP7L^<3t%$5zmVk#AQ|sA+bV&rIHk)O<_VX5!>KU zJ2uez0~~B%=&`p&lBMnGNVh1WgWbRrLQF3bD>X911^_4+gabG*U?YKIu#eP=0zU@n zH4^uk#`7Uw4p;~qxC0nq6#yZe1M2_?tAARUkv}-x=85^Ot-JO+hwt^X^M!ME;B;2{ zI~F44N#r8Z8c-57OmWjN$O|R`G=p=evG660;7UJJqrpb?`rkft}Uo zGFa%794dj721txay^@To>(Vg>$ysBJNyE_8=elmxgq|3aF~7+ymom02&RD$gz*OJ1 zz|W583{j(f`ddakDOy%2k}s8W1$gSRC#H!G9`n)UCicdJKjM)YluoujjJ`?ga<58` z>rISD!yo}rROVE>NeZ}uahUDz4W(7udfo{mp=n!5e$@?RVlWrOcwhC9h<8M{DM?xi z0tUs4ZW!MUp9lcL|Hift7%!h)&K`A2@UINeBUcz1b@h`7|}g7>x4WYG_Y46$gN^dFF*tT2YwMx z!FoHAu{0e^LCAZI;jJDJlXMy20Eo~zVokfwirkn3k;Cmj^ns6l-+{=Zzxay>>)(DZ z;(B2}G?yRqIvQ?T)A5El2)R_`6;f#CM$_dJNWoeR0HURbHsC^5MJkXDk{F259_^;x zr^*cTlW_|u@j>EqIiA-Ba2SjM449G`u-c$b<8d)TGw5VM$*eeX8cjvQ1Hr%^c@i`8 z6a+H64kLltyLMX?NfjOt00ztk=57Yo49wkEu@KCNJx5F~fCj+B`PjY;Y`Em>5O}=# z#ra|&;@h7sgYd$V*m_%Mz{H-n*BLmm^~knhLTrEheGKxotsSrhJAp5Q1TEe(7$g1` z-xqD_U!1cQcs`I@0T=-Zq+!{<=vYCnW$Te=t)7nmbIt{@gJ*{SceW!Q7#|2M8O#Zf zH4a+iePKvoLGXLjX7raMp4y&s7UYHSKp{D_=P{mdmhTKPy|&&M4>zPgSCZ!nQ(~+M z%m{1-(Y%CIP+aP+4%~I{-b$-9&1pB#)a8mJ9K%p-6ooL)pnkkq^jF%n&2lx9}K04>A5&}2M(|)l?mDr&&M>I$Xg?OQ--K% zTh&w2mLS58^wJ?R8387M3}rn4AT?2HH%0ayzXxQJK>^F=^jpc1XN4J&P4z|H`UX!ynLbA2Lm1SHtw)b8zA*5_oxm5ujnwoVI0K~z@ z>ioFX2U1uMTTfK5t%L2LIh~}ejcZ|CH()}O`g@gN{qmfCwx|joW?l|7Gv}e(gHb`#$~=Nw3_y7_eL4rLBSbqP5c&h0!Kya+R9~1q!q` z=|yjX#7^v{>0AT}(u*2J5d^RS7Yyb{ReL0d8i^x{98o%)QZwdAoDoMBMUJE+kra6j zd3b)VwNCjw>;1gX_kGs8k2K=h8jURh8+-4y*IIj@{eybG@AsD+b8ZGEc0Qz5upqRd zvwE#&VQy=TF01BRFsFugzzu!`Whjs!A%$XfA6XS9ZD0Mr7|B%(+W-k2#sMyr`2ikS zsb{z*8W+IAIjf|rfDL*(3~;zVfe2VjZw z^FHzSse}v$1t}Oz4}U-JrM(BRDu5OHY+x(!>i{0?n)k|CqO5BwhhTO?cfH;5dj0Fm1+Ln@sp5_MQruG@^`;qB!z@J z*zv|H(jfu}p@7sqSg#cs)%9puw~K)m{teLBUF{Njd?P>w3m>*W5>9{!#&lx9U7A&n z#q&WT7EDNyQq=-O)x~4c?HK6-n<05U+Aa`)Mw719ZGfju{jh0RUo@-Bd8Z~`H@Cna zE+4PmA4e(i>QLlQLr1PPw1#%+5SbJ}Xv?~Ggfs<*du`W<%C5L*fgw!6x_UqW8wbT} zvL~rnfGEI-OTmi#YJWRqTKn6QrX}D+6R`}a&?TZ#zG_;B$r$7Uz&P4zV|JBYAxW#6 z*&j%Ix=ti|`9oktN&(_5&HC8_5lhS3y7k>i$wG=n8WwT~ z%EM|R)|)LmV#5d;?_xGx8vyY%p0ZN=!HY6nor}m(1~6Y0-e?WEwjCY3mK1Uh5~z^L z5aEhcN=xLBQ!y}7fCpou1F8*?fSNl+QU!p3X{fTP^D%U*=Rr#bVKErYHHH^9gmVKB zlxfi34!S0iy zb^C0{&M?^HJHcpguL1AJ(=@;{)YA4cIQ`^M;)`smDVA!_>&5mWK1Gv+BNJKPdPcQ!hnIjN-X; zzaGodyf#VHYCItwP_|OKq(G(z=G4?Ky&TGFH1aCx1_`!c==xH^k1;HIR2C7yY z;0TjJJ32Bjm2qkMS#4i`AtY{^z(sl%-XWe7U<(i-C5zjHDF9fsd&GSirEt(a9xt_# zy?CRLVO8+)^30Chy%a!$*j@wqbcIj|YAgrhb6Sf+Pc5tkf^qk|{lBCr-GRx|N?pjqXEg81J=-_gJ1W8S4uO z0MsnbQ_bQ-%OFVH@Ti`QWMtr!wl^R{xcVfru`HJO!8IZ9jVf)!`7f)jqhT3uPn+zVrj%gULLC+k%kEw z6Wbv`L({#g^y@H{7>>&nti!#Q?J(bnre;;zZ-}DA80cO|^n0 zsRe~aLWL)!G9UM%Lj?I2fP^G1`ad*@3wGqu`|I(5IPfSSgbS_h01anEK5Cf}kLkVF zCSt-z_eCilpmtQ@3z6Wmw+hIV%u8kc5cx;#UT{lGDE=)-AjXb&B`q73nDnAP# z@_YZ{pN02>R$-dbwLM+++1z$>>D5TMDUyp*{~o|}82A8qFc@u%9IHn1UTG79Y#3ue z!vjKFy6uBW*IAZx5v$5j$v{Y}ImTrG23;Mb8{rATLxNO@7+eygXd-77-nEnw&eU@*wr`AEo8`O>Yk(L!$9?fLL_z*NA9F#H2HT%J{Y9(EgG z01E=^fn>{$Gx-&O#2yE5*tMO*&z+Aiz7#u;0jAotem=lY^?MYFl>#aSbFd&p67#np zbHcn1gMp+j$NAd!%_8GMZe_Re{}2HTAgTME3xGAk}MLgY#TAYELs3aG$~6Hu?W0i z5yR87E=Ly;EG%IcF4ZcG3$iN$H87kbv*Ny;$NqgoswEMHrzn)&Uabg<}OAQy%8kS5l4j!d5iK^Rev;DFCJI06FLz z&H+zaaHwU8B1h8##YUo~C5H-Li15{x^mWAWy2NU`WiKl0vKyDC10)&M_Y3eK#+UYV z1sbp>xiwu=vlNH`IFN1W@w@l>9U!$GeJgrL29ahR?X*6TJ@Jyjnw0yepEhcmNtQ+L8Us=zd2gOh4@l_%X#j}b-z|~A$g{R?1o-gd-Y!0o zn{}H@vkZuQj%M{=_{+b1ymjl<8Gw+(kI57LHHk9@Jn(^#;cwSAEZERc60_FAfM^GZ z4NBPIi(mqWG2;VOr0|@cGME(V6 zS=j+{F#w0h^=^b&9biJ(1HfE6Kn#EY__^@=v&W1Hg(aaML_0u;=7k-BNpZ&IN&paN zPKu}O?&V-a@S?c~?ad<3`awjB13c(8DiW*Omd<1T_>XF1`k9q+v&nzardy5OlE8@2 zomQqSttuF7xSdb3X@`$QIo^eJ^~rud$8YHSm*n&d4_%MwPXf{ba&l)z#%DOL)ikV;80WRr9y4eD{+AZb@)D+^Q8 zd`|1qR(0*-v!5euYI@uq6Uy#1pcVQDuf@SdoksEQ+!r!GJ`3Z+)!- z2I@WnJn(x=8r2IM)5P`;A-4jEsNbV$EEmQ@ThZ}!REgEWvZcKNGml$27E&uKK_uc= z4eL*CpZ;L{s2beoV#J+bLhyO09E|PGfIJG|0h3VyNim^U8CNl^?{7;-$5!hLF@^+2 zW!PD^uGg-SyAi#6Ao41W@umCYV5==Kbl`#Ey-2Y3MW$8Gb^7n~R`h?se!z+VFl?Lo zLg)%XhEg>lU#m$nO zW%u!$d{W#jCTnC=NUjvDAoT*ARMYo`U^QSP7@}3~RGZd+KZfnw$;=LzK~kmBxtQ7U zfB-%)jn~2bxi&T!zX-A_z>hYft4xd63Hzf`E@WuDH}&s4-==c`I+XRmG|tekeh)wi zZR`M1;&lNqFlQLvPcz(r?<~G3`;9250H8Ra`IFM^@x1^*^oIET7iVzsQITwEI+lZy ziv?V~5(!u)#X`n~q{@9FS6X8_tOo7rZd`x8$gyrj=Mc;Xpv1dFzBga|_!|LENXG)O zI52rPf;Ak76lSCp5}wI&swQzN0g@g|5$wsdEGg`)=xgk6mPh3-k*-H%U8!9R{~h!A zqA#SE+6D75obVp3IJN?+68l^KCh>-h;>~E~NQo)Y&W|*h|6HbasU$0>W-Vk`!bWKF zR_gv(77NO2TBLRjOXfxWAe!1m5|$P#c6=!j(Hr+0le_vm^fjtXtYInk77RvHCYZO^ zSl!*$xSm?qYf+&#t5=CtN&b2=)JJ(?Nz=kxa`1RPF}$R1!Ny=JS4kBqS;(?5rvpkX znpY)RT2!dV?@f z_kY}v0zzjs?u7B&BY^KlUkFSIUJ;HVve)ET#hCuoMTGb}3|v%Z)QbrY;!iG zH2T{12S1$mv1{A*;CeMo-um(PkH7NUzrA*8)-U|!Upn5p^;$3<_(Et$cQ8_z5oB0s zvS~5K8?ufREMh`!P-4~9R%Pv)6;~g!-e^GvWo)bh14uq?j{-v{30auQ8PqTfBc=H? zgDu8vIyP9D$JG3(2HRI7=?NJZ(khAv0SgKoxNnc!u&)MhQl{tv!4$4ujVzA>Y}mPM zKL&gQ6ehD$Fyeh7Uk$bbX%!3!L%-eEge;g9z!B^Wpy>A5w)tE^i1w)fN??|1;+B~C zm0iNj4tO+1ld3wMj z_i>D=y}b8)+GA2V>I54B%e~hM^9EZw6Cdxv9V=T7WdV& zGA&uA`Mmq__$bZj>L1BX>N#aAH@U+eHK|);Q-r7zvnj{w761_q=lk6T^ab$gu_@Y& zjwj@3f0=NV`#hS?kv%Ce6n3LB5<}C5UgLPRPb8bvlf0^FV}}jFxQ;n}lxX0C*%NZ= z1CjQQxO{3SK*qsNq+==bfpHxvRw+rWK%u5$?F8V!lzt!#iFS}+AXnglncd3^w~L45 zfiNEeM3nW&WrhF`Wk*QX+PfEtS$h%JyA}YVzK)}9DMI|9L;)8wI?Ra2^4^Yp)SONl zRw*xh`X=7`r{HpETn zh2g+>OE&@~gq|+65e8l4DryS0;m(FSBrmLn6P5Zj(Xl#&+OWD=Sd(`PFd!Nh*%yog zeHpM4Y9MFTpMhFsNU#&0!c-(;4EGH9b?84Ez@-9`i*X)LzWQoNuNdqBEF8P}Yyd6W zkHSKYu7yznSO8>*^z{U;;y2;%ui)!K3&40^T|##*7$<;OjQ~C$eIji00slgDlOS2+ zv&WE5A{JnR=f@|ck-7LdkWLX`0AQ&Mn8>sM!2}2(!vcix{Zrtf60VxG^?aDk?VNWn zwX#Ln5`YPwDD_hT>eZy~Y|2I?&N*;+C7ROhHwyrvBgBA(H?Wt2Lf`Ml^KEB3FNZN5 zle@?IUXFij{Qh^shXy!tfb!k&g%GZBSK8JAAhy_J`)s{2dqAenFyBkPT7VNxxXM0{ zRXzyaPg1U?sWa&3W3)6e7aa~OKuRzAca`)jC3!6*RZ}PFN_-%h1*!72GTfh7fC!+N z`bB}00FXr?q4+Kqz(iO0hoNtt7a5sKvl{7@#0OUinm%Xh7HRhx0wgIzlUWgcEz_K! z#osY5n4JAKy(_n$Cl;atk43UrTR<29XJ}cFE`Zq$Mg&%)Nxh0Lljt*PBY*2-8Qe%R zR}%@WYzFL!gAXY^R4<4c)sbwCt=y{mLAVs-dSzJHUzr){C#i{9+!kZ}sSiZz>i~Q# zx=J3jAjIWTTW$IkruCz84$2DmlgV7!4E!Z{Mqo>n_26-T&X0qc8HBw!kT_lZAqFTg zoO@5mcF3-{*4W=8DK%V&*QNrYdxiBV26O<4GawHlrq>yhk7B!BV@{`(5M%noTTc%_ zNWtPlF(D~fMDr5YTbt6~3z-%@A%GN<1vqGVZ@z6{#6ZfEbKH9KQZcKaethrW|9gLL znJQELAF^`DHdZ0Y>ql1c;Ct&SBDBHAR$Se{dNnlY+tOKJk7H1`YagJl#*n2<2!mE- zJuWY0E44G>*%%0I_+vmM!3YyDCg?iYUWkFVn$3%88fJyELRb_Zl8YyVqB|Qd0UyY& zZk-K@(}(9$2Zczk6b!La4=BQj-Sl`|jDen_LE6p%5GtF}&JsWffD3~;+q5err+;bT zAO>~fdb6yGV<p+}#|5J_1oS5rXLla6JxyGqSEfT?L!&+)(uP%-pN4-+%e$gg@{67{SoOQOCB z1s{v}U^U4{I#vZ2mE}l42VkQhgnf_p+a#~t2|}}aVK&rQ-ZC9S7|pA>JdTY-tb<6~ zsvt^$hqkj9kZ}5g@lF`gRc@tC?1wuN*DDMOz@q^%kK~*W+L&DciOa1Xw4EZkLqtmr zjrq`abxq5H!N8o}_&~M-cu+{_``wWwt-_idwS|XkVL%*U+zloKM#HvqL2k8oN90!T zwa0l&`cE2})>Fsu8tZ`sYxliYX0_KQT~%{B$yr47ZWZ$%yda>6#;R&H9#Ct$!OfNcZ(_k0lc^w#@ zT%Y>)fI$h?1MdehylN(g9kFdTJduEvK?s1u_HoVo%hDtAQas1|MfPHY9`Y*&JBB;b zv3!X8PDqVxcxAw)qk@%j8#Gzc`R$1udQ;?1fyAfmQ_zxwo@84U02hk3rr zrM?=#z=!>d0YZ$a;26pZ0R%8KFeCsTWn*Ac>^yi$>^6W01_?Qrr(ykmNVbRwe*c*` z9^gf~7=Ih@9r42eHTppSBfJj^9IJHdd}~nm)UB_T*7Wnyh@J}z@$pc8$mi_<@>~E` zjs@7*cNiuGKazbn^5Xy!4C-7Qgj@@N4M6920|>G2y!|HdP66VPY&{ecI$#7A1dsxA z0TbehSr@`fV*3L&U^i;V(3S9fIJ@y$02bSaZjr|~+PGeB8>pcK5&xS1yLK%M=m3#o zP(P#IiZ-cg>dUDbug2J<%r5uXa|VA z9%VTyps25BzkS_mK$qtjwYadp{!ZFf6KTA^jQQ14LIoD;(HM`GQNO(&mZl+HfDR0S zwzo@!Z0u8(& z6c|?UF-QA8wF%uohWj~wQcUJILwW@`*}2sM63pp4r7hiMTt%{l?21kiD=*Yz>^9d= zw%z*E^D_`R1xCcuuqwz<|A$9hmQq3k9)J=4$F9xAr9kY|zXw`+2E(Betd+yi6^RqQ z605wd{-SwDuH{DcZ^bZHV|uT)iC36>DIKIB&R3#ejlq`~T_1eUg$Y@ci*zL%84oM- zupq3e>v2TUYWD@nRR9N=7r+PC49yJVyjIErkvSo80$3=M01E=Yl;6;ewH z&xTx!_Xq$($bw!FC|o!jqz2mI?~K8t)NIl*bQmgeQmi-rCas z2LVg~9(X+XOkl5S)4BA55XB3S%>6LL`8vxYV3PtuKm}|F-#hIH!K@BT2Wv*+7N&E% z4ZFdGZV@f#wBLbkHK`%Wl3j*pFG2r3FgCfh?e5rW5 ziqYJ*!*m#sfLZ0=7hmZ3PMFjUj3E6i?5qD9X|&iHxj3w zM?$1b(+actVgO&|!S3~lELe&aQm9_6uCgF0@-}yZG>Kc;;J)H@R1?1JH)W%|0EsEH z9m!)crIf0+G;mmYH54r5AwL10W}hs3%3wrNsdCCzGyIROWGr`%v@An={soX2hDGYu zf-S&=-kfU?nOTxcX=HEiGm%s+?+VE#^rql&Xyj9^r({J3iIx;rDVDaHhXgF1BMjnA zxgy6ONo?=5H0kHa-(xYTH>p-tK6NS?kmXqAIi6 zPOQhaupgab#0Hccgam6(7!74gU{(}30780(b^IZojP*ExM2*tDzbrH)k{3o~e=Fox zN2LQq<9*ePu00}aVL-O#=QoL!feR9`U^@UPD#yZv4s$|U7TcUHx$W1d0zh19bx+C& zZwerJrzBzBh*(~dvyf)_n2#<+A`g-&8-8pXL(T^;2Fu|q z#NUq&5aLGd7{C37uqBsc*xD&YhcFx%h3Q}bkk~*-%QP$Kx6X!)$_7&+S{eFnyKSom z=kqbVvhofq;xWBv1AyRDfQ4X1pVfGL4V59;2*w0PqV{H72tzxOx&}b-gJ2Z*Rr?oX z=y!1SOfVoY6b=HO2>`-5w2%;kIY7mW2)`O04g4k;_W>((jljfEib&+I0v`YrtPFoI zMti`b#w6ntL6(K5gak7!HpH9`qXmlraJ+LN4C??F2OuwmbPK7Jdw9-9p9tr~_W^*w zNZv#PKNBDaNuPpc`(Dz-4x6VS1R#M|1X-dc#=(wwU&)`eNph4HQvAtp(0@1I4q(9o zg53s`6yKO{BbpaB1Bs`Z(G6JG{ti^$3=jh2fq@-g37`gf79iw)xsA+p1|Z9xkB03? zlBbnYsva0fX7*l-`XUMI&s!AmIDYmh;3gjT6rzB~v6W_Nxgbo*FnmFxfMGiJBH(&{iRpBx3e+W{+w!Fn_aT8AkLc<9{zv{Asj z_52Y9yxU5%gfXa~VGsj34e+E{)yu&NQNV|-m&E-jkJsY?sd2z^0ZimJb~;IN;UM<` z4o5pFHEXv`*wV)Jedz>o(D1M%YCV?z5ou6&L;AWgFTUF zt-}N2=J-1iy9?`q0UdV4ZgU@?0`M@w`cG{cSud&n*AnQn?H0(n6Vg7^?sXH+Q5&R&YkVJ zRg9bO1n>Zez={x)`Q(54r~W2a&y2uYQuUNLa$FbOchYe3oEyJuqv z2VkfP{j)>?>i|z^tY4 z6_I9bo^MMH_4$x-!44v2bRe`5x4CbR`|n3u)U|1y@CO4R+t=cJc(oj4T#ph_66+{1 zG*Dtph^J`1RinIT2IESwA} z!NTk`49eJ()}`kfd)*+v5-ew4uGfa(TIOXdhXyoU3UMP6W$a@6+G^t6qU(P0Kl@Yv9vJXIV&xH`*FuKH ziYo?LJRu&fdnpXFHaP8EkAxqO9X;3fg|O1Qc|J_QS~6(YXzewj2p~ak!w0D}&j5#- z&KYzmm4gj=_iV)R;sHQLgV7i!g@F|5lnuq2_M{*Lu<@bD!0>x;n=(W|1cq`3a@Yk0 z1NOK91Yng3{ zeFJQ0<2-+-`eR^@kh~Gy3*&U>LVSi=8mQpJ?rSnu{rjE`FsgDbWOyX9*)`uol>%x< z330xpyg8`&)(kp`==H9fKM9skP3c5f^PA9wEC(M6)UybHcgn6|JP3;LINjHZZ0q$f zmm5ohM9WR&mxCGM0`pN5wtgJ_Log`@IOr%M9^Al*o7TSmCN zoEBBt23`4X2Ks3sPg*bmJ)?Uvu{W$quQk16hHuO3hCWzX)zi@dGriXJm267S)6z+} z8naPbBY4LI5E77C`PzrJ46u=Qjh&d}F_jBST2+&Tm3=NLm8-U_r(~>#(NTkYPV|yK zl0`ZgP3hTxqF}Bk;p!R9^YdtAvNWSlnHiDT+~!&VN&^hWcAv_8MB$*u_y#Moo5~AE ziQPS{evv7$8Z}8vz*6HcX(VBXZK_rAYfMcKh;)UBd`lUSD&;DEl4x!}tUzaNP3X1x z{c-eyWM9Y;ev}=F5PlqGhRy^PmO>d4fX1Q3>t^%1dPIodg*h=W0^p#)P-Rxtoc=hK z4sJ#BIcx|3#Q*`4ExT5a$dl_+f1meChlhb4ySOAvfCiDgbbXML1^6&ev0GvAveRIjy%f~wQfZ^Rsk?ux33<5 z<+p$9_!s`tFP++Z{hPn>*XPDylXls2*)@qVn9=zkw_Q8cA7B4~ckjmWrar=C= ziC&nGp07un*iXaPLjo52+4lyy9)K0_LjMfc-rMnfeE;x**!TLqZ_eLyyEagQ#|bYJ z(nF$n?RUa`O^qYQ7pWCt4R*aFek_dWcC1J1zS1UT8GwMr~9?UWq+UY zzs$xoGN@tbGcoCXIqrd?^j zU4TXt&x?;_9X%kh7?|GGm!cOQrym6KI&!TBOgvr|5Y}_;wz0h&1AriMSJSbG^i?pT zUJ@dD)k{LFx}W<&q+lV}+LJh52P5}l+tC`{XL>*EIUH1M7wOlX`EpRU131_QBSKrd zGae*p-K&Q5r%S>5UuJ-@eKXAF1}^Y~>~DtOgZN#5i2)1@<$x1F2Ze@!6S_p6Jhrv@ zra$j#Fdq5xKmOhSer7*M{-c) zS2f-0IcZgYCIAM^8t*lJ5I%R?1|S7^@LBUbuqdRl5sF~I1h&LWG!1;0R5fJ)0V)2y zEWqXc=c7-DlsLRo$hH9M?g0_=I^Gcb-682BMw@Mb5SL}W)%rjHC-^%6695TkI}01a zd5qP7>2M#(pT>Df$nwsRt6^xzxNZPs>JFGw<8PQ&fCVl5YouDklA&0{^mba(y9I&j zMG?R-r7n`5X?$A2Oz3mY2{80c$E606!Z z@(GD#`F(1nPy!al?7x^=;IN3-tx>{<{g_-5ycqU}6U^*Y>ZD#8kw&SP;{-E%O~y(^ zkgM9_D?_8wrlwV0JRgnMV!yH|Q))qP4CB1UBk_MUWr(}MgovE0GA2#JR+63#`%NS; zf5QwkvOzr+8>)0Go9L5ts~P;op8wJN!HCp!Ea?Z~m|9SHe+C{rei|MSXI?%o(yN=nVi+(%ex*_? zO~x{Bh%+a*1B}>y58j#|!z1$Kvi05%j=%B`|G`>-2bXXD-~U%+;~V?o0OR#}8y*h> z9>}neK)6q&$gs-)=uiE7pq(E!VO(f+8!i zAmFjyML%x4Y@LUI}aRKJ^CXi0|=p{x*3k*9POwgrQ^wxO#G z(OJTckQE}UBB()Qu3{tzuFzJ;60fHsy-m&eJ78?6W8#;ax;&uTV z{9D9to{kZuTl9h`5TQN&$>q$?m7!Z>fIp3)yJw(phVrSEoaI8qPCrS!CyDJSfCHAM z9|hb3h#WJV|Awi07Y>(_GhrZ_X7o-dz_An}`mo=T#4U;hdz~f9T8NLL@q*+*UO~s$ z`JO4@8T-H~OVygt1i*&?rEa3uicXPEmSAzhNLst=@kKZa#Audpd=X+p>Q z0RsZC0C;E`R|Q21K7{!&8Nj4^IyNKuiqxwr*V+njVxZwPJRp{W zwNsLIVTtXw0b{hg1rnq7B!86OxAPLV6Y}-XE4GaRx$CvH&q8DY1=i;zH}~z-X?WBKR^G%wZ~M zMz5^OGhsXj@Zi0`!(qn}DXdYw+ALqaD(53f%PzOhM%*r73$_8UL5B-KjM7JBS$IWi z3%fM1-@Ona0WekEM_zSWtQg=1DHQ+&hL64)jOpGR^3CE?DnSgeBX-|k&r88%z!vg2 zJs_}${{cvU*dR}%4C!A8?9BH$yl8})BLXw$#c`=JR}urnsp(nwy3^=-=x599ja zaUK3odmxI!!^1G6D~nOtjDw|dUfGL-onSPOW#JV$6qcpRwRVGvr~pC?>VS-DINvVv ztOIFO-)@t#03^<0+z$psyF`$AY4k4pz(^cCSOe4aAez}d`d7Rkw*6>ZS z?4E4(cHHK^0TV0jQV)n-Z4mlR@D00Z1nahvc1)ie!Xg$nN`U>a}?r#e~{N z;5`PHqF~KCKrRR{DQpP+3EIDacE0vE2++VJY{R4tf~+{Ji5&m}Ac6fLWs80e8(Q&y z;17TSxpN^_;$cJHEh$cR+-b;(7|=0+7&74#>K7HW&(jeTDsT1Np@^DNJQzBwG=WtVVt!fvb$`e7r8U5r>S2 zhQEu?9=Vl$e)iqqa|E>D|4|v0f?A|^`dv}x14czd5tR9W3GvVMYRhWWAcm3%=f{7u zND^NT`Ii4~UJ8Z-uLwzV01`jXiy_hC_XwyUM8Z?FUI`BfaxD5mTvl~sew-F{;&mw~ zbZ^P!FrSl(MX@2tS0rWmV^?MXV&Da4WcOy&N(H?m$ENi(36h`Jd9&wf^QSPhNX9<%Bv)$3LsGp?hMfZbTSLn z$i);C)n;*#aPb_nU*j$5HNp#E0Bopdz`0FEagoof@aFfFs< zj~4_f5nu%G#;vohVV!-D7-?%c5+?^eGC*V8Mj8bxfbpGkFr3@@?+8-^Q(-_sC1Tts zampoQ7oy8Udpqp!!yHcQIp^T-x+UO9O9hcu!LA@pgXPeU6<$MSvqaYAa=No|E|;m5 z&#fBHpNlA7z616+ei8jnA^qd?h$L01CT!XUOHajZ6#hVhb7Cp#B7eoKePN!9?^{!g~hiRdTAXUn4c2 z4;_z1D(UMi?Js;9$2}H8hkjvWrWNPyy^fsB)c~s8c_QyqmTKjpy&G{nECJuN%FEIL z8~48^oCm5;%oOr6)3jrZ9j(sYj`sTED|%9J#0O1!?Q>-QL>_;7cTeATigyKPi& z1u8?sh}3xBCJwk|V!{Y7%!e`~gY=3F2kY~IXfdJ!4K<(xDv)5oc;F9FZ-`2@kZ%D< zI4^($#zXPb@)ga3Xx)E(|Tn@B`tV>Jy-8{+{hzWvoO`O`M9?}0t;60T=L0)=1ajsO?{0k;V=fCVAm8301W zv)zVCp{$S=bj|@I$9EM#%WVbT?gM!#-CUUdAP*IWHi4Xzjcl7rKr$ln3w1CR_5b!SulA^dO*G$ z`ak>7pZY>zUlxg4y;Q9{^viqKlee|6Q>1N)anbhkhUHK>*SOlxvl#lPJoKl?;9*!A zz*m{+r_Oou_QvZmBnDz=V}-}$F&W$E*O=gO=#&nQEhw3#R%74qRLdJnx>b%)uIW=l z!#cD;W>|KMOg*qOMq|6m#nfC5`@!=Rz){%@o=3bSbd^jRulM!Ki2wi~07*naRNE^q z%-to~hcc#E-^_%pGlo~$4)uL#|3}mL@wk;?!D8Seso+7Q#QN^8!G!LEeE}d|f>;U>9e`|y(VV^z1tQx0 zK_j}!upEHQ60N86fc$O%4+A>}K1jJTU;)d4EUSQxYCw13@n>#k|5*SJkKX{G&UW00+YUa;wXq)tP5>w*W08O*#`Lv#KwNSm#!?$hY>=pzS6b-@4b3k3xEwtN zZkl~LQhQkWWst%b0uW&z(t}7LLS_Z?K?)WFp96}ohb~|JB&K;4wF+XYYwJA!Ca5)%SiJ7meru zizq5glCBI?25Dx`UY5+bOr7TTakV^ZW*Vexq%spJB}>!DwEew_+#TBOQ04=oEE+vDgWQ9xC@M)ul15Tsee^EQQqhwCXK z#O$71+EqGL`%HxW&{$qlv)K1=yN%ziY{Pbd22J16hICBo+N7>=z7=E~wEhvcYil~v zD{nZz*UGpw!WW4b;ADSmJpcsI0TAIf>_}xewgj*ggSr6|10ALLd@e7HINqmA!TR6A z0|MjX;N#|ef&DNxr@LGTvmvFrpk}HOM`WCWW=A*JgjI0Lcg#9ypREvGGiM%GPeWL}E083ak`d_?Q@j`sYE(tu>CZz#Dcn-d&+Ers<*!FQ? z@^U0q@!f>+GZ2pd$vse)BdVH4bl8!5<+)sr^-2UnkUmEjh=BkvI(#ESApk1=*ed}( zU_bC~Iq>*Vn9EI~W&a*{1n<>|=%w-8C17tx2iwNMx@Gkz6N!gCX z!ZaX3|AuL7dPKti(eav0W8*hz&ENP)b^s7T@4mxtqDfgt9grfOB$Fm&DeF;tK6V?A zN82-U7|cga>Do;U&S8_P#qF8p7~AOGVcCSfHVIZ{G>#tk)2?)zgN>aQfWVxld$jJRsfSK%PJ{Z4n`h?KZH2nMsg*M>#!gy(_%k7A+RMhqibQ|?!5}6PCo_f z;~7xYX7+o+c4$Y)htXRC09ggTZi}QLO+RE)3cvNMYoLncx}#0&}9C5SR*+SJCT% z=fU>3ixwUN3e@w#zz!n;*kK@tjc^0}9|Q>C^#DTLLvc0$4W{v$%q20zn&yS^9nb+N z0X!(Pqs56B`)N?;G3{WXJ)Y-*F(b(e*&UxLo)>yT_>B4dIUYvDzzFP_O7K1?z7PN| zvO9?4$D$z(DxIW=huLqM;2mp;wSzemBOHz;sXu3J8ILBm$U1QIGe%7E&$b zTgWK4@rsnVUIQMworqm+OxM2|4+=*^f`lo#qy-?Xgf7WLtTp*3mUOoyc(538ONnmZ%mElHIBD!x*wA-B=>D(#%r-X zF(_F=wlIn()A*=TD+dBcjmM>BDaKB$aO)#6rev(08i#GmJH>yE(S2ODqpQ~=GcPN> zD?@8sS9T;D+_hO<<8+VqQ)%HSfFhgX4_l@MprN3J2;aj!0U*PAP3YS9v8r(Juv0du zo)Bd^RCbjc))nMv$sq=H^?=lVk%IszNVEVdbb`QuaQkSdVKge^F_e$@5g=t7H&x2lr*e60ZxeL#kjsFM)sPNb?@mtAoxs(;WhB_@Ya0aQ?Wku z%hv559Dn7v|MAZpc-ZCd|4;w37aF=8%m9UXJv{ZQfDgNGYzXFa+h+1BQnBa=F*d}m z?QtYormKE(do4}qK3u#Wz{7?Kmu0*u5uM)&J-S`gC&J1rhT2tnb^yoD^(ZMsdg3v> z7w3IfNm~FG8sEzR$;ve>iLOS&p1@$};HiuUL#m(mh55d+EPmdv#q(*BmY4Q@HTo|A z9Gc>Uq)3?w%;10mB5g^4a+c=Rw&+kz+W1avA3%>imnKMQj4sA-&Zo&#cvk>8JWoxy zx)84c*%?DWt>(N|zy|LHAcam4dkq@xi);DaLfr-nA1tSs(>T`LM?&>l+?7Vq0?aAvM<4e z3@vy_tj7XuP+nMveU02b6q(r35|s2}e5E@iSP+p|X<}6Y8pqnMu6-k&*xu&cye@5J zm-ySY^nd`UU^c41V>`^}+*WB;jqlw}DOjmd9d8M2M`c!EK6cu~EKT21CgW(QZC$5L z9iRdm0;55p;ep7sDk~yJ_5H2ZOR^3L7OaLdFI(XSv5U&F@P`o9yMH$r61(;|-_0LyX{Pp8Y=l&mQV1IkQ-ntQ{b9>By zh^2S=^;`3Pbb`QmxJTrj04bFzx#1vXEfOr`6$V0RMTQx%L4u?lBpVDlthSQGV~;yP zf!Qbk1n>b6(HLJF%xH&3j=~Buk{4|~2aISR1HBKdKEuAyUX7dzM&RADvagaXBsiGW zZ99f#KnNEbV)2I5BDx~YBGCzRx_TC1FKWy9S3_jk3E`~>{GKd>903l|V;0NxLgayN4ObH&3rnK;4u$GwHjrp+OI!1S6FKnB4 zgLzkR$L?R$cMqZ!CQ zi+@9p(K5qMA>gO;Z;VU-hNNuObB~?a+;LpCpbIFP)YIWD==*I!AyTJY?pICyM=i+d z`ZxBIf1?xQd$hmoC8-jt!<0@nw(-BEnLPs=l~bvVD|dcmZ%ExPtVv~fa)UYmM3@ru zjGR6InG?2}v@MO;JrvKz!A@IJsNEsz3xVx8OfBmQE-ui9ES~`tS2jDLX8&zix^zvAfz2f=>j10?;r}Kynt$34W2& zGNA)JFrpvaJKox)$K#iO_Q2!U|LfyRFFZGw9$E?)jq6)QQf1y0kJi08UmKV(kio_F z@d)16E5JZ%Rd0J=NRe&r{bYSbgv9Wo>!xThH!Pcs!+-{>q`q=m+S6@61}BCvyC4sN z@vwo4fylv4X^Zy9H^Q*)tN54VJor8^0|PJsA3UZdaj+nMp5)(Hr);Noe!S4imA>?E z1Q62XEDZB7Cwd-z4&Eym9{|)R`8PC{8EGBzJR*GY`fQ#H@C%bd$)SDTFdr~*d_Ms{ zTUR4B3-*G7Lcla&o9JnPhR5lOWJ|$1tO-&^Wi{-#iWJg71D+8rCsZF7@+=k=05II= z-vr7C`M1FqC`ig9dRNN}?Ra`co?M?DZx6S_hMC3 zdYAbS3D+W8com?MA${r!yZvn53yU+;@&?nU<+3 z9c%z#r?|0U7ytqybs9S*g8BQ^G`ve$;-VE@SqVwsni^Tu;gY?{%uIcqLmWSj3yBx+ zLGw2N1T;abCyVMNSuKD;eyp+zhbg*OL5vLk-I(8@jS;TJh`S-Ns@{^r3M?u(O2B4u zk^Qu}9ZA-tQNF^Yoc_xEnj0gb&aF|F@}Uj#6t%tn=EJ(l}rA0PC0q93G4vrZp?JSrgPZUG+RS=lY@ z$L^hAM0}s^U_orV1Ce4@f4tcg89ucK1Ye1<9srNu{mSt#{5xL|#^brK&8b@^lQMuo z7s-R`GXSw|b{p`)_5ITSQR8^8&FqIKUj3-te@ipnJRRQh{8G`%e=E*W8H~#zQ30S(%66};Y6CK0Hvl7SBPGlB zBPJECJ;_HLr)Fe2KUhguBQy8$eqe4!jzl^V{*=70N~mn;w}BaH5v%uFWJnSf=~Woh zk!Udlo8UQ@-c@tKkJs_lGc^AvG zk?@5Si!>~bg)!rMK=~#YWQG{dk!Sh+m*cyQe}mry0Nu9X197?HE5SNeHu7?WLSQzh zH-z6R=lAEm6imqGOXauwT7Vffma|ZSM2kc$lCs2ju7!nXvhQF4D6$Vj2j(=~*^m0}&Ga}8~GNG(k~YQcq=)iVgG5xdRMKO}}BrE7IOAx)}R1sDm; zRLRwTo4Tcs6{%Ij#8g?;p#Y4r)6g!`uL@L#^#Bl+N~y_SWmsw~SF?HJ3)yWuL)65s z;KTMi*jXCc^|=mr+8E!u&u$B5_P0X9rIM_@t+o@SmL8_GD@qLkA`U=ihUD}I&wKOp z8>2xv;;xv|J*}(AuiU3{FO2E74bb5X$(`_lcq{tm(=#B2W!d`h$H!m!$N%dWLu&Qc z{^l&TGCzvN{XQxk9+q_FfMRn7AxN%lyIr=Vjol?xx!}~x=QWjky z>taBN)g*qG)k`y=`u(f(fMUarm#4khYRxGnWYtt7dOs*;T_2`i4wE_H0_h0}Sq4B{ zK5|`#q{5DPV$s)Qumg1HIg!7h-DkK2fY`u@#{@qB3<=B!12C)Sm6ebc_6kIvi4}8t zBWlF&3-fl{#?Z|m&w!1D36BWu1X3l8+XeCb_U2{Kfo7YLQV9126{gAxZo23T=;&^h9nCR z!{=py#C;v-BW!@<0Ghl{@1AYJ3x;&qF!d(!y@Uw?6k|3AFyjj`85aHxeggm%{Y}6k z;+OI^^_K!%&;vsH6{%SEn+1r#UcyuYNWA~!LZo5YZ`i;HiCH9L(JunfKz8Nv-EYqS zZV=~d|7MhJXS##+ia|Ux9!*nvl0L1JNF^!P)H!b++#B!2Ff2^YJs-qku+HU*ot6E? z0G@mrQ>U%{lYBEhFUr(o7kWnY4qLLS1Em2C`SVHdVeUa$g3Pg%XleIGZiZKoqF_v8 zY$x%0H0L_(1BV`iqY|fKkk)hQ0m)#ai32`tleLDU*1v-oE?NPsANQ5NyM z**q`IMF9=LTnxcRsP|(yTy%_7K+;4Dk1b1*0ZMaz8Q^Vp`W@4m$f~hJ?qJ0nzB*%#iF$<2siLSaw_47W-G3 z*KS1g0!)x(t;2*4*r;sFy=Y{o7!e7U0TE+BU_7c<_H|FlQ!*gG`<3IZd$+$} z9*_SwiVwLq5aNkk#jD{-RyPXZczXsU1}sdXWsjLT9Ux-c8*j*4VpP8+-63xW7Pr44@3M)rkJJ04hB1oeR;i zVS_S5H_{{pKNS#M5Yu*&FTtd!iCb9+q*Rm$R>tORfEQ&WU>0CPTqd>=z77Bgk7F38 z>w~`qrpAt^DP4h##t+x_^NX>s%C7jkc>VS`OcH-1tdMqn*k^7)mDX})&+rQId0{&D z&*f}<&H%Da2|D2WfYc8l3b?I+^;~=>ZM(geDj~cYsaAwDU|O$|E?Us9N3kHCAjW_g zC;`N{U*wel6*Qp(L|7Dn$*}wUMqx7ejoR;0<9cl$HKQBYa5>j&MY1KSdB%EpJn%-a zAT@?phHOo6>M{@NGiZ{Smhz-kvZ~{gfW=83l8*fAxD&10fTC1jm^~}KcJ>T}a=G9t z!+Wv?%j1XQblOMVXVbL6Psrc`iD zUJBVB{*PhdKLHr5@~req6npFj*UHXR=0%gXh89@V*RlXmW0RJ(DyeJiq*--uH*7^} zE0@QsNnPYwQ;}F@Mx_=Q3VSgTsjK}V0+5=XksecnL@cFlo%TR9Y5#}6j=d;OJb2ue zC+0H2np(9heIO@9^8yIiuAUI2SpbD9y%JM<1wxNnhNBwTciLW&T8Ow4X;}s|?An+P ziVyLHAj?`u6S{jpiu?*6ivx|j1&BNdPX{1`)GOpyFdx;3zFC0D(@DnuCVLSXn ze@IEnT8jz&-qjdVFr|C))#bQN^d?;e?&Xjn#)cn~cop+mnsfzIp@7O0sY>z}EDw?=elnDg?Q?yW#H*$kMB34t?vRM^J$(iwdPe9P2~+xB7}IMj{NATa zyuw4GiB}ryn@#DM)ejSh$jnDmekkc#2U{%*0yCm43aMDidcZ)yhLnzxwRu2}N(YHu zoDGq(M1Ti!EDY+-hR~Y6Rec{bNZItqe%9dOsTmJ5mjgJQxwu(+Np3|SiCuHwz{g$z z9$r9ry~wlPEWqT}%!DArA_dC*9R-CZ%aRuLwEz%Jydqk&G_O~KDc9TA z+QciOc_}?(TQ$GFAq8p|`-xXbOYCCXHJ;Z2$QuDhZ2L)xR~XP)*``rlSEgCX2E=^U z#4A7tCT3R9D;x7%+rfd?#GdEN#H-Jic*Sdj8Djh03oBxm&jl#O2SkfGaw&Q}V7_?F zy(d3K;uXM?^YL8-=-T;^9g+}-Ii1(acbtSdVy*FbU`Xda;QiAiULlucVSru{jO(12 zeLaNYmC_S*A$oyo`Qckl;*|ptyBIs-WrZaL>$uZ3kC7N3yd?{e zF`by6weW~&xnDALPq`>?7#7l}25_VyyqDOe9UEQtATbbA_Rg%5ktOzM>d4ks`c)FR zJ1Kdrg0Rd+t?o;&zSsAn~de4{k+QNR8#)X(M_8 zA0%a!@~c08z~is|H?zmXBvyxaLu!TW%9)IJf(@}qT>~GsuiZ9~@#tnS9e6$5 zkp9CNfEX~b#{e9d(*Ysgihg6hXhER^k$2XUf^}yj^xJ5>eMR$X%Ye{$%m8A83ap5; z7MCK<6MebMLN3OBo}TlgNcXv45`%~!#dyn#?89rZvdfAsEzt@-7!Fy9R;dgCgB5;^ z=15-vE-)UfaL)oDE9@AZxox0@BqwJOUJZXlZCZaJ26mNZ zQPx*IE3bz41hxSXfdQWG4DA!adqQd!;Do=0bK*|{Ai$_-p(0EOAVb^Sd2aqD1u)8* zs1E}<)`tnq)#Aj9@m|>b29t$B9El#m02-m|sb`_1QGTR?+AemT43mZ%lQJ>H=-Gx-vgk8q&a{;33f=Rs_g4(B-s%# zQIoVT#%(+xup#a>DedWYjXB-?BIW}Dgm_=jl>|Um0ESO&(@so8vwEK;Pbs~sJM3o@ zb|>bxVJ@2Fs&OevN+72Dw`Bu)hk41vc{6lp&xD+B>M|PrV#K!WvCq03pU~j0pk(U( zZJji+Ug_cjq;(`^)2f6m*n$j(6f|f8)wFCauOMJ(6RIjBLT|}%6u?Bi8_KBUINy$m zypfX)M~l~^sa*DWW3+Gn*2A{py*}sAXG5gyvFqzl21J;RhM`ETN@X^(d0$_j`b~10 z*TQHXQM)-xIM|M%Z-_6Kb@YHtRpNBe%C2Z&*Fr&MXewCQ6Tq?E`b2WK2mTO%%b4U{ zx-Y;cr(&sm3rQFI?QKOYZ}obJFJxhge;j6Z0LWT;K(^WlUKkI2APO>IKrpKVR4}O% z!%Jb|;}4Gi&forTe|~_+ubao?k7l6p@a7CMU^P^7Wu6ZMB6go^yBI@a_dOM>>~BCr z*$)F34nTew(kurZx8`lc@{*W^9IMK+Zn;7I^iAkjBj4XZhJg|MA9zAwLI5E)Y#_71 z^MN)TtvN%>Nrh-IAyuArE!v>b#$(1sGjBS0BqMg) zLQ;cNiov-Kuit1{4IiSP4bOn~l>kuaogg_$L5Q2Hiy_*53ttVd2I*C>9&EEg9X5kV zUj}_ZLiLVpgug@mA^tkgh3^IV6LKs}=g6A?BDuYt{dv53U;elSW0>N3E$UsVe~%c- z0a`qtzE1X~C7tuae!zY)z~?ec`^*3nfI$E$5IGpjOMyn;IhYLRHqk6fA7wITnRa6VOh?6IlO;?hIjoNhG7}gtLMzXEkzouY^&Z^ zDb_HoU|GgimNqOsGriO?_1UOTf5W`ZK$j&HMQ5FS55L`8{NAwvgbB- zHL{PL?^!mdcUZDfn3&8MjwEFXD49Buy{j&@5K$AVU@3$#X<3n>%XCZ%UYh*|@sS*) z*7I>8t*U^fn$U-(r0ZyZeJNN^fX56(hDHL`#Oe;j=;CKN2*1dX%;gOD7|>xl03m8@ z&+NvS4Df)9{q2@1;n)LVS+d{ca3{PTupFdhk)%~SNOp@1YYk@q{jG@H1$+o8E{}s@Q66*crhBF8NdJ`BxNBp;iB>q610%Tu-fdBp=Sed*fuSk z(?lYMKwITTR>Ob_uwa;W7UhMI=U_ayAsFcm4coQLAw~1j7lI!ELwhaB`xy-HFeN#` z3T6fAlQ*t!gkR%BNrJLt0X1q6hxMSJq_R-2wx9^MV<9bjVJY82YF4{YgqsIj|vshq)iK0+U04gn!}wU9)TWM{w2kBap1&c*nR!&K6k?f^wPf{<=%OfPax zkLTSeF}#0XO7+w)p&o}UTWZp=#;#8!o8FgcQqzf2DlIT<2Kiq4Rq9IVmOExy*eYpS zC&sq{TC1Xja|&9Ppef5Wv^^`iQzR#BX>4x&e&y&~VK9OzIZTCuEohi!SwmtO`bCFo za90+i0Rmz`udhL$Gci1|&$uwWH<81cB~dfC#PN>9eglsD{+J?s)rb#>(0&drMNDS$ z<5khYxu0avxL|2ZCziKLti~oPxE?ngtd9Yq$s87ANIf3o!R-4O51Q9eeIaUCr%hcM z6ZME3>?|X8@r!6jNS0(}fT1nwxntyDrv)384JlG94C(neGp5%D^))dd^o)>#HSDx( z$RM2{w!NCw%i}O8>Io^)yceH;?hEYk_#34_@YW2RtmM$H4ICKLVJyhu$H9D%c(wI* z7|acv*kb?|zy>UcJ&r-$Qn3tR*u}sG0EBaK+W?F)BPPEhB?}g$q-34G1nbS2;V=N= z(YumtW7oFLfCus`?+ST+9x`Z6wv|szs>ri2r!&kj2>HOY5ysi=Ywb#}?PKy3(y>?x zCIP6f^cFURL5=~EVX&H_uPi$oT+Z@JtWdMEt=j(Ya=9DNU&}d`Ii#2;KhJ- zQO}57+jD(*F62?LExb0oER+p$EUy_5gRF|ziOdVoLu@bRczh|y-G~t;g$ss;_XPle zEKj`~$gN;NI42+xHU(Lger~XDnAVYW!HNJtl$CM7OvLWDqI9q+8N3p`A^1l4zI#gC z#tc;G+Hp|wM#!rS^c%21mc{Q5)`M%x3IR1lZYyAc`S1j-Z>L3t*8-GaR=0ms?B4|k zAgNQL+x?N)hHjbOu);%<2I1u}JS}8YjUhXg2IjIqjq$B%N#n3=P46)@z3AIs>w5BZ z9A_}oX?0%|FE*z3Y55+=`KFYPwK8%yvl1!sY88WYVmV{}Tsz$&U0+QO1{j9MW1=nV zDu>c;k*1Zt6JtAST2&{KH==O+KAT2%HI7a6?t)3lEQI=0nxw5Ec|HyUJSES{LU!f{ zXwOH>?o2QiNv1U^bCKh7Gjr7VL&T6?P3oy@L_tRr4Sd-8JT&qb5Ja(|FfMEHfOsNT zO2VpLC%e)Qa@YV4+S99yt1>ow0U8c4upb5!0tnGkLruZbhIMYM$HbYCM{U}b%B>Cx z%TYl{X;ZJMSvyf=sBFkV$hX!b!MYogD|{bXMtE32O7(zzTukSsm{8f1D&c}Lxqtkd z|JmRE;(0s_co?`a@Ue4yz8Ldiy(V_MG_F@*p||mZnCAoe73>JIEm)H36DhJSK!}zX z;`=brvGCw*VOyk`Z+3Fd;kFBZ8M9O<52IHl!skb9p&rK}ck@l^P>CWo~Hl@pB-{ zA;E}&5-)@%TfKWW7!uO6I2OhOi54sF@1AW}`C(1i7pW7^<3q8SzPU}DE`Wr=9UuU+ z09dJUzD1^`EDA$D2~(QT1^WVc0Gt3Ccn%l|6086;RUUReJR``v6qH~zSC$1fg};dc zLc7l~n&t%v#KaF!0c-(!cn>kh+w;L5kXi*m0bpwRCFPZX4rSG}9UaLZzy$dfscab1 ze_F|*8_rXD6#!g+6G$Fm9xcuEfUJv4{WsxSCj~35 zbaxqnoOsoV$?f)XG(clq4CSi|02jyRK{c@*y~glvQ~5%|G%beusmA~)$mp8BlhJ)4 zV_Gse-L~@uL(wtn_lEZ*;mW0vD_iM%oha#j>atEfRwhR(_l`--%Yq^51R-QEM>dN$ z=k2wruVO|fVJ;+;4rBbw>>4Rl#h{!V+;v0EF@SIol%5l;G>qAy;Y2}uf$Nq;9|p$tqK$M zYkF-dCoA z6e|2D%DCwM$hJtE(r%I3<59dHYI^6jIzZZJSr*c^V0Qoo)r9^+uo|^^P}<1tIsG}# z1povr(PR#zgy+WggQ+6jjQ3r=KLEtqsQ!G&pd0rAMQ>^l$R$8STAK^A4dC;MF?y#h4cmx58GT-tJOza<42c6`%2cDYs&;@Gg8Q*ZNYfb?S1hY5WT+*V=Cxn9m^Bs!R!h;|n6!T1O1; z!ux?=r7#+`8{}!^S_e{MSecO1kZbMEAVZ^il@;mAwRQt+RAYK8*IEkz*_RSQm$!ROKYCDnDn&MBz`|IM-A!RS?v;l30#J-8aaN?5 z)9rCLoZky?hyfF4MBe%IaxK6`ZAE{xfRUShxfTV5PcEllM0g|02VppnT^acBsLj_~ znFYE3pCs2plEsRufeiyPcKHCk`=v0cYssN@g)|92mp;8*tD28XbT6^LnmDAgsZT4{ zvccJgS9&rkK=_>GS|n!?Z~GTnuEnrV7=XRUADoK@b&W)>!1I+bpc^RRv&9z!`vh>o zyl&5N+Hx(v!v>sbJ?DFGzX43=pCs1;xKP+>`{VDxa|QbW`}kSpTAG@L8J)sX`@O4N z%X&b1hT<%6Qj|TEgS`r>?t&;>px zCaYx-seg~H{3jqbsmXfPQd7!W+NBheLdfk4MTH25HmuyLsekF-iN4x9k z0U3mSXu3!aC3g3)jonrMM@;~0&FT}Z2-1xIwdnA1ctK!6j#4KGk0}7bj1B|BF(%n6%*w4FzxlbB3cA$l zTP9a{uKI(JG59jKHdHwPtG#mxRjnAGWY zpi6|d=_+&iW^3eSxWtG|x|TMn-;ty#d(4JY?bg7Mt|f(l4P;xsN`J2H9Dx}CK-e}` z=NXzg7obNC=$O0#BvqPqKEMNpbIj(jDcV8~ut2^=Nuaj5+j(4OBz+%vHT>^6+in9` za2u%{k}$hQDh8`!?2J7hW_g}hdqDVnH_wH9P74Mxm6JS1cmUoE`z&Cp0DpHR_~-p=*t{=j?=u-4uWkF0(lJmGS&`Bx!jP-dm*!z3GJ*`x^ggMLJMsGdhED zxAblyE9yv&hSW+voZ!jmcp@66qbs=@8-TMYPW&W>Cr1Wnwq+PrN~LtaCW)-qTHfhH zS-e(#z7=w|llnu{pVKfa3x;Z3fXroKE64Q0m<+<0 z6+C!Q(Hs@WB1Zxm4$`E}Z1w2g3Ok`gOjEFKQNUyXF9uUI0k9J$> zRhD8M?Ji?>j~=(j9qc5-dXZd_n&oWFu6Ruz#eF~SQCoN@;N|q=j%i~rY=^b4H-IA* zA|ky4jL?7%D+2gXA4!pE{o%j*SDzo_@%*zha5&lyU}5*|wfQxs^N%C33gCgSgU4Y) z_9W>Fc@{0`NU{JJwvGMOLt^{y3mDldz79<2bcPt{AQg)kUrg&y0L!U=4=iEpVtVHYhSbVj2zp&O{6aI9qg&#R*wa{-xw4_Fb~7e9#YM?Z*dtFo)tqQH=qRwN?C zh-&*YQWHDYO}UpN$%t+d3f*8dc>KNR;x;j;FcnB_=p|t|<#D7sw5yYx#40_*EvxIb zwfx_N97{_OVN2{-hFBtCo#i+itNr*!RBA*zlgWB8&}&Br9T^H#7~n~u0wBRG;QL_U z*Fr)5PD=d%CU#Ch1^p!e1ON*FLkkSG=Oe#HyfB*Br9B}49Kcv*t1brMb5Qh5uv6OA z!gfAOaGZqr0Udf*{ zr7LsO^Pfy7#Q%O``+Ls=li8lm->L5bQnZytlbwjI{0gBaQ1^N8qkMjk4aNvSR;mqHo|vojqq98wE!vQIZSq? z-j}J7P_AN6(O6LB&qnfDWsnWrhk)3{Y@BJtvHZmKS<^`hx;U z9@O^qQ-7ZU4F?j(3k$-1q*Q>5D$%;vG9T3w@^S2oM60B2edTxl>6*>u|MtoM@P0C1 zD(JXBds6K6*mh?;-kUGRh8U2reI1l+&i5ac1T5rKup|yr3dnHJ$WP|uU^)O701f0; z+7sf2^m_qh@P`0Gny6pt4*{S&0V1dVJ^1+h5yk6iSU;FSiGc*tvFi3en>`{1G(2YW z@(ei8eS1QdnA1tfaj(eb(4d=99b>BvD_V#~w}8tyq`#m_LoSCLh1FjQ2{D(mT1>pJ zdPod}aGYH`F!^Rgpdx{xI|Ppi#$hBitZ*}g!d&?3_cub8!^%8BgCUuL7`B7~mcEfH zHIjZ2yV$Wv#3zNjRsa?>oFmcV z^%xj&)?*`HFRz6pE4u)!04RVrWL3@_osahk27_P$1%=%H;9P(X9z&AF=R-WQ?Sn)M zK!T^G0>bCQq)ylY5sca=t~ENM>1_;7OezSpvmtJKC2P_95EUbEA4W&(s*o1;{Bl zVc@S`k6}@UsHt7+FriOP+qy{3xL?7?Uc-J=pi#la(3TVy;4+br1#qd2>V+B6E|1(B zqP-$nN~J)BUXjX(2msmNZhJ=541btXxqO&^us##IOR65u7m5jub=kewG9d>K;ywTb z^SOCM>~<|E{CGB@18(*rP3xOq|Jtd_vF7ITKQ2=<*o^ zk!g`?q|zPRzIiTI;^_nd7^u{Tfq%0|dPvstlEJgF8c&}I5w2Qxh|C8W68qT2j$ywl z&w3$bRtg-nX&fd%nGV%eVAI-sAsZQW+^4HHL@t8ebq0LldbY=Nd<)qUq>}pA2o5m`aEHFA42{$ zj(s`SnEfk5^L%5LTs0BDtK?h5!dFsF>4203CZ?nP);yl>cMA}61G@m8rqEEOVtRX6 z!^*sSGmeVcT>L0mc9qht?C}Xu;t5@Qt>jAkLDV~<30dWsYEpO4$4)ED;-Vf91t6Mw zg>>ss%RIXK7m(4J+KX@w|)Sn!?767vK zqjG(11|tSG>|)ytkN_a67v#eS6j)34J)={ibU(~ zYf(a|>dNYBC#TrpfWzs%%7LN$3!{X`>!R0nAq7DX%)c; z7|*q6Fb6Df8zv8_7GTAV>2J*Y;-}(w17k@Up&diegKZ=6N{d8cP%x}Jp!s%y4*EfA zY3YXlj?YY;;WaZBSxPl^K*&nt`j_&qFXdh9ly^<3mm{0kS9mWn1G0)G`C`hu_M5b? ziNeCxR z#HCY@m&SC!2~oYUAp2XvgusTtl2m48D|$l=s9wz$2-v*!u_qc!)t)wR1B}>7IhMS+}3Q2jtxu6l}dwE(L^OJ~xS$fe^OA zXmH;Lj<-T~W#9to6)T~&;IO1=F{s$%YDzcIV)88FJdt48x~j+JTnxvwz{860w`%mT0RZBB4Kx5G=<)CY{A^sGhP=zWIxc*& zyh|A-7#{v6PvH7Dt??WnXWJR}0VoC_U_0>W0A>J4pGDq9&&Sr)kXVtJrO~^5F75-m z6l@!;Ac+5aUmmaXH z?difqH2oZ7>gvdh$8Otb-lS`d(hCx-2w+6Z5%u<37?7!yC{}YgU`Z0L68lm89o7G_ zR{=!r6sdlYVJXuRGdkTP6X)c700+Dv+J+7=(Wu@krP^)5h!!Ano@OSzEgjn z_Y1hd140zA#{m~$f<)`6{2eeH01YHrnAKrAj1i$F9T0+_ME8FJByRoqhsVG7zyBW& zE`IGl{4bi<_$$BotH*!mZ~fil-}~qP^7zsV=i0V)2Njzkv4Y8f4dK2rBn?|~KfEBj zo5GshjksR+MSi8_g$^v<7e7de?0tAMfCruq00b8#U&yfVh)`?@IN{nQUN@W#S&Ik6 zOz0*7^B#~}^R`Df!fZ}C;iJ;~;S7hE)!qNG5uOkO5-zQ}5@}i-hiuFCL6%hqqu0YD zf)9k%S4s`5>HT6W2eH*)jU9FW$42Z66N3K(5aOPbmqRm8a+YngK_3YV%n15=R=<(e z_;CC67&4LLP+W&h2OkMTu=+uKrCod<01D1)gDn6E(86G=5-=TfHF}nQ6Fd;wiGc)* z4h{xr^>%!gl0TRX?fYQJxBF^9xBZcF@wcd%n|>5Ef~&Vf!5p3rJ`0#9d^EQ0-LtLf zA7FroLyhGeqegV%eQldE9QwHe{4~ZHAXxvFl46DT0`C$&Cjc_6U^T8^38^5!13&># zK$>O0BZ>(r0tMVxQ~RaZX0HV>fgj7xK}dxC&X7=QqdM$L@rRr_&T+K5`rY$3tcq35 z9*xdmnv<{=>_r~phoKKTR;-LS-5|ZechwM_*`H34Vgo>Qz*klvMcFoTqmHyGvjKfC zNoGgJh8>w!C4?>dQpWZ@8ic(N8D01D&HW@R7>$NaNv}txWeYZKQOGzh86$n~a@tof zmUwLa7>h#1CUI&=30Q}Xm!umro&6v3onLr4GQg48-bF+ENoI6mRhri-30fG{GfUC} zj~N_{Lni@CC03GjrIM~j`ZNTC(xhgsivj7F&>a-y_Vy+cc!=X_O!0w~5+1bPkZLk7 zlC1F{rEeXyg@%BSgJeioUkD&V&FktD0etAOYDkBDFct)#Nlnf=SWgrBuoM0d00zKA zK?&@~e)5B8M6Uq@8q5~=->bmHnUT_oe#8klg+5e4V3u zO|HdlO}}#EdD&(Ii8Cl0k)TD7h{yJR=aUrK$e`5>Ul(I&a~aD< zumzjvLtl@-LtEE1J~$DEopxz4wy79 zm=!g=*RGWFA$6jQgZG5@55u>C2i_yV0v-;YgU1L2AchyPqmjD}nEOVY3;zwVy_&)W zuyC)&`FPI(FtzCLnP8tPVA+W8ql4v_LRM%%*crTQ0YcR80TZHfExywR${n>hf(%O|dtpb09RV@h;S)iQg%1S3NcE6xg=fT>lsl1_ zwHGbw6_Ai*<;=&2Vl>wR#jO@>*gl?e^efQSQxpOo__7KOwtyNyxZK!*Vl zN(=!OnAdAz;hi=GYhU7dVL{aEVL)VmMT9SH>LrSIEda#82Oz`1#Mbp0l-OgiA9mXx zyB4WfFdN2%Ai*M0i*ho2AFQUrp0E!-64J9&zU83hN6}FLQ^L@+c|IgrNUSi{+CDzm zy%;5kb(OYAS}HSgB@(e1^wfCHs`K4Tu^;jnHLm}(1$CIowXq#Gg?;QkgKL%{;rq~3 zE|R;Dg7I1$EPQPq*0pB@qcyKv{VI4c?uc2P*Nqt)0H#a}og^*|yBIR2+T32cO-P)A zZP1jkFG|k}fO0cQ;sB5e;9#dzuEl$U`J8QhR`k<6*oZ<+BvkZ#AiqLl1t6jI+=2Dg z044q%e<>2R028ELA;Ge1jOnl&fDmqbQ~E}*GWbGZK44$&Tn=BDdBlp0^30TznK}mU zmBVoMFm!-R4@j^I-<2f|!^zSmkqa%PR*A*QL;06-v%kP{GfB5<(y@|XqhT0QQDFlV zGSe~)EilO5k{+;W4Cg~*jvrOZHMKsGNt35~aU41y%%R1W$;84!{kM(-oq!ECVP_Z124mjBv>e2+}KCc~mb1o;)Za|R#<91LLS)`<+I^MDm#Knp`0gB_0%*XtnUTOr#5hQIG+XQro>>h}C((0lo+ti;6Ngbe1yI=SW`FvqgoV6&QDUZWqDewf`;O9W{=f0BfhpC+J z;@wNp{{d)*;R7h+7a`IY0B^VLcR}GG+lkoy=u-S%C?O=Wm){ggbnLf+@jL(*LFm4d zr9~P+tEj)2Ro@^nW^Z>p1S{Kwj)V>^u6!CuPH=e+1|eNXk;UOyJ|lz8Jo_~ z-+V^B*T1rTJ-v?%?a8>l02^uy7nxIKLGn3tSZ|n-v6HMdbfR+yF|=pUIW$bnF>UL~ z*xvMusK3Qu<9_RD(Ne))V|ywJChp4mFeK3X;zw$#WC81uEumg2gmQtgZf%LAh0j> zdMCUgfD)Jv*bmqW%<98V+nT<=)f&;c7*K#AfeoQI1OTJA?Y-H*CoIYxIgj{1kZQq_ za36pH5P>;4+71w6;KLq6hPBxDK>!cCJiHlR55UFFd%;*Z@cFnksBhnt*k6g_#hhLN zMkytv1H{3{jqrh(fqfkkECV10G7NkGMvMV5HiS4{Bw5CQ80fJ5?b<=ecjx^979?hI z!5@M_9oEDoSKg#v0Ls0qu`fWxE*ROpTcE7c(zv{REruu^pge`=azu=>U006*Fvvpd`842+cl|Z zYFyXPHUkxaqIc8$Ny~Z=nqar>F+fI@2!1Pia2$xg6yMXKDXBr?h zF2Gy%T{O?vdry1D^xpTOXE^Ug_{#lhMGuSu)aGv+mZow|q#BV-Dchlj@7ygi3@cjK zhZcmW{7+br>H|@8dTwpk_i$*<=_>JRB~U{Pe8y2g2-2*S>ZKhhnY~FZ?X^2ZJ4vd9 zDU9lCVL-I>P~~Gaooi@-Nz)APvA26|3wn`NO~p^quo?~?9*6g%DKs3~ZV|aXspN|O z5cPbJnsv0>G9YYI(|Ii}EYdBNf7$-~+v_u-JJ^xdbAU$(9B$_w#x5F@%>1~6hs(V&w81R$~Fv`p>cwRXsIS=Y2^LRj!~bA%Ch*5WzUBuQo)W8rHc;)Pn3hx zm!qgq3ki`^(VYX+$o6Vdec1R-`xefJ2Yb=_WoYkZah1=|mv1 zD2{C2yJ@wwDapsO6m4bCN&-Lno_2v}`s^28oD;k?eIxv8R;c^gpAa-KrSJ0s6Vlrvd{Ve$S7uX1tl;X38ZL0iTXl3#cD5(Q8||a3pJu^`#Ob%(lJt_ezT-<^GT zo@*O>ZBiHS2%zIInb`p*>qx=EU|!>ccS82HpA72Ni?S2Gk$v%r&>eCh@w|;meJjl9 zyZ6E$qAUn(1`;mcN6xo@ua##RSg`w#OAIfvEC7Yet~P`1AeI;AgK|QmeEs^P@N>Y5 z)H1`8c!j6L00_(maw|ZG-6tJu=e_6^sRr|#!Gdhh%tpg@@c2$?QUCwhd%q_;((}F# z{{(f#+))?N>MFJ+*}8JbloMXKtRHq2E2&B>r4pv%I3iW{x}37)Qc}E0EL$ou6_sL3 zs@jyINS3NXF(Q{*?Q($yHQ+9m7y(0Ih{f#eVi#Co7MKAB^Rv4r^E~JMywCT2`|UG> z<;-$P4XV1%Io*Bw^!YKn&$qw7tP3PDB&Xs5d2nsUet6^hYJdq_=b&OSK!|xmU`B}N zb+EFOz{GMe9smquI}DV#EbDTB4HC4FS|Q28A7al_ABi+9XS2E%puu=xp4BV3T51T8 zL1L0i2VW?GNKP5LG+T#f#0|V(iRN_mhPe6nOL6s@{al-$B3c<{VGCdkxB|{FkBOQ= z9YeXBiW4|76L=o7zZ_C2fPk}#ACnCEW={b}?UCM0|# zV*`0+PyiTx^_l3lB0;N?n^oSB3|`b=K59ts%H%C&R{FlCBTEm7#se4Lm;J)i(M!)r znKspzald##q!;BhBv?g1NoF=?;2|5-T`sm&CV)w^`;09~Y>2d}59 z#~)G{)E@?;!8)W>3N}dC0))Vb06g%RxYr~3L0~!zU^oc5TehDA8XPzXTe2^vcEE;% zki>eBtmWqKJHednKMY_4lcJ64{v2X-Z-qU7hy_hLboKW z(`rJ8{V?KUjIgybv03vpE!4Z8srP0~{KgQOqW6$Y%Mt|&Vrawz}`-~dB5 zk1@BCvIQ_OxfIc_7|vZn^VJwYRR+a6lB`IxDh$+8kVlt@-M;yIV!-~&xKpI|Q}Eo( zxO^=@2rLQ%JN^$|Q&|$22Q{fH1CzZfFGT7VQYnCkou@K57{}GO0aydD@VaXBhbciq z#y*(bky?36`=12E! zZ^*qyvMH5cRgLO;HNNei>D%(ODJEcoff*gA8r(;w`ARaT(zjtUW_hT9$I$+cszS;_ zR@ZgYtW5eI3hzt9pECk!T{ZAmfda!&Nw6BemR{4Ow3nm)+o>aV`;cQ5+bB*{z<_K@ zy(IN}oO-@U$qIjpdPxc}xK}1_NsMkbuQ$9Z_(F0jR&8QGEf0t%aczx#9yR09GSu_D zQB%CI8n!Nh5&%q=WcAXBuBLNYUwBD!=SW#_IE>hjCjm_Gcrf($yJIg2x8e~wc?M)R z6(Md3lkqUTATS+v>-Tq~IX%m-#FS2xl(jm3xVi;IV^{)Fon!2Og1Za=j4Xf!I$Qj_`_TWG_P! zCR-wU+0Ip5zzO?k_Xr&$NM6+M!7zzW1o@RqkzSZJt0U9OAZD?Y)F2x|(qjuA5p6Wb z#H^Ad%+?sJ8T9cd5Fe|CaH4JRNHW)*uawd(WfG7}A*mwv7SMy_Ny`yoTiiGD#{pIV zFbwCs4r~wSr$7Z3gJdnt+W20G3s$cS_jxTOU|Aj}hIHEoFhiQ91&^FRpE>e463YM) zfE+cQ12VL^UgLKGW!m|Yzo)N8{|o0sQWn1xll)~<`&UCMXn@3iv#@$Z^CCY4a4Uo1 zF}tZu5dRe5-sF$Uo+ubWng#f=zgPZ751(@`hV7vM5zT>jG;9xZhV6F8#RnR;TL$y9 zVf(uuwwvr!35@ELvxDRKX@prA8s46oxCuIjnHlS~mZR-k5PJ;p2Nv-SnJ77Ax&0s+&Av9nD zJ7V`?Lolf04KXGJe+ZJSU13_X-{WC`nVJ#?~03O=1u4!4>e7+VbSdUktGsM7#ffSOmcnk<} zaPwA~nneQE`Yip*fXnLgNMX>*-%I`zo&$(Mx90Y zzP4Ud)bx9%C=&qWjNS7Qxr@KUf8WnXR4$&4_s)l*oRUERxylqh;cmHP4Ea0bZ^)kS ziFHc>viZBV7~b0Rpz^EfnAMPK&0|CIK-B9XI!sD?K2n~5Ry=KM(4Q(4tff%3M?}F# z*NuzxMxKDO@USVvs+p!1VCdQg^=8a(1Gv?awaM7!R-ixw98O7~YH&0vcx;&MCnJKJ zkFx2Qn&l-ivdP_{Tm_0vO&d?wCE3cvK-!#oQAcSTGcO$!97W*-0Yef)NL5D z;RqJQh9zfI7J?12K}rkPFx+w#ms@&6yd3V8khySs|9o7Hrh^21JOBh1MAM11$=ZfU zO*10S_b5*QfP{e;Py%pZnAHvpSPHs8^r|~@qznxHefTCA&S?tIE#?2dOu@22U4el% zk!w!~sau%DVNtR_MVimGPs7gZ&R0sqHXuQL8)}rtm{0!*5y8sxDBA+~;y#}REQ7`# zb51Z;up0yg03?xX*{ywVo+$Q*;R)flKooCg)zbG)su@5K1A1mXE|&fe8r1>G_8Y_h zp{1Sl<9Jud)!B9h;{Xz8L>5GPl@hM(7Dkc37yH|DDdWpIa{F9sSS*>1p%~zv-Yb%Z zy1t+Aiu4m+k)hoOapo0yO0URp<`wx6y&}de%-Ds$s$P-(!YlH({>I-q(V^(M-~D|7 z5;I_t{TwhC+Lr!ZdPV%!Bw4jrBpb(1&MT6E&921q9@8sw;s7MeuQY;pL%_)68OYdv zc(hlf+l*sn)}!GS$-qHmR$5v}Le>ZJiad;75M@cWkMfF$yoyw;r}2tlPRAbtctMJ# zX7!d=BzK1-ABfAYZbw&$txtu8U;2NZJJH|3r~l)>dpIOq4OYXz15v!5gmon`AXlfo zBKSNqcoDCNKQ{rA+A9LPf$80w)}=`u;PJFx5eF1E0)W(B5#(2-TYXnvkz=M0;T7@L zXaO965oJ>RxzC@RSA;9^XI_yH<`p^VQpoSdE5h$dQ`nsONWVAOx0Y8#+s~0tA;ZEq zqMac8rtxo zV{eDE*xR|Wx5Gy(_Vx!gq@enp_AT#573Dh_ds`O^4rLR20E0%kp#YFkVpiR6Qnk9X zj3i&maAf(`&WJrJV}Ez@`~1w${M?BSMbCczmqG@H6s+5k&JSTh>Lz!M2!9JZWFN^}k&*?70e~RQLVo4(y@^3F7K8#q zEg!V|0FuMy3;*(eKGEO6XMXy>n1K%@SGHK=x&aT9Q~@?}#O`9;!g{!L>&+SH0C;$^ z)?y@P8N=c7u5Zmi2#x9tDu57551rvyPV%a62k3An2=*y#=T!(*olGV4)O|=62$O=|ADTbHbE(YydW# zKfW6U8uWf}UVtLL6G{zLDhIGZf~DXOkVZVSrkB;glRg?x#iDoS`2Zit`sk?1DOt}) zS*OS9E(XH~=pdq+ge;HOeK}-S{N4Dr8!4skl>qhlvFyJ6&DnDJcY3bn?-v0h-bnk#aRXB{fUZ(Ekq;evB!Te6uxNy#Z4O@RmfU!4|cAEJJH} ztz}tidT*KLD}RaZcjR~5O++1c-JD{-7T9U9EUl78^_JA20FQ~vuNnjXlw_>s?`e5( zn&pLE`I#4i2>SVS-8crhk{ago$fbgPDREL(qRCYBBd}0|4UPjtQLq{UXbM?aKQ2lv zI#BBGx34-)`hFBIJUU-FN7#^OfAN=3_NweBf3{tgn1DlOLo!3tWhNwKS9{T-o`FQ4 zflS_(flC$13s_O+1BN4?$9DKUB=)ypP6~OJq-1G3`mPw(b4SQVDFHhT0OAaY7~&l$ zYzQEEC{evtM6Y{8p2Te@rge<#nts)ZNgc){r(10XYocjcyBghlPxh;1St`lONmU!c zjIdZ=$j(|A*l9oCOR_8^SOy68ABGv-*3%6FyWt%n(w+`z@wneRA<-fY3*QH<3800v zEBB7v2@|^Yg5g4H`~Ud!GXP?*V@!zqK}3?}pk#3dNMJp@Dg9PyR#$I` z0T%-v&VDQfgW_?$mji&nh!~hq1G~$*mSSHz1(0O14}Bv@vS33nuVZLuXmZ{94N2>H zC8B%hr2y52-J?=~ki~dG;@3mgMNbG|1f4$eEbm%4U&^K!ZW)5P>R!u}kRKu4QR$QR zN??TMmSLO$Uk%>8zP<+D2xL*ST7YR}R`z>_*#k%eP;9&HkB5Yw52THD3-|z>073xz zct9)#tG>#w9*sH`Ys?}{CtoQj8I=+0;M(^UV=xrpV)Wd;0Z^uTMp_<`nq82>#hP_! z%5LTv-|M2psjK!i*qZdg43o^v!9**2a}YlwOrT^G=6q&#zlksv?eBNKJZjX9GU5Lj zz0aD7kmFBDtESA`jPXJM03ZNKL_t*Yg}kqu(;L$Om{pY>_SKNz zizKUQJ{Ngc1_d?1Py_o2e5v1~E2UYrkzTt+TE=%0vIHD_@z;OrgpIM!>TDqU+Ts;^|f@!&0!Z6W$O~x3ochB>CEv*xcQ!7o-!A(v_)Mupa=N-6sKFFr)8E zHwdz*{M=KJVEOAkj-)Nl19oFSu`lWmArWhTvox7!pNJUNkztwtgP2|l21(M&eIpxX zkBGOWuazE;-Sx7-kYl-2Ya_r2g@wNF;{;w3`(el8cm@EFZS4q9A+}fB(J`TCFUWfG zm%JOXyc8E^0P>(zeKD91 zTTg!o>$lQtA=5H|V$2B%TO?*_&wzmt+h%MCau5u%$hN$5;jNus7?fD!7<2Mp5 zd#v&+l__b9IB8yhB)lasKAQ67QmVwt=yUi?jcowbA#LOHN0z0GM%{6uz(GAMG?D`@ z0UiK1{f+@6>P-RsxSZ?7NVbAOE7H|oi|~USf{=n0a?nC*Fz5HoItLdCc))DXyMz4D zSPnuOoRwS}r($Im@`nE%pDWk`l>*gLsEOfrN+#8mTvf-O9EdBQL(|-T#6LC4m&4~E zplGN}+g18ht0b|y%0H4)HGKw^sk^HsV&!LF1D~NXUpKu7wRCDCA*mVRI|3o|hy76k znI>*cdNhVnp=DFrR(&>20MlU1N`_{b>s@I{$3}^3O)tr`w6I`ex~>2ilWAEk*<80@ zBwl48(^pJNKW0`6-$n&+%Hwt=$QVlCQ>1fYZf~WjiP^j_%;#~OmtTD4#E0XTU%D_? z_BBhUN`RvP9(x&Z6zf#J#&acpxJ=0E3l=2zd}ujg(S|NkEpB(8gn7O8g-C>NA@yST zhaJhL_Ze6@Jphsk}3@6wyZBl zS{7z=EiH6*$At2u!VmFkU^>zdUZFAUlwrjVk897tj?8TWLgYmj}}W4yMYQoh_f}2i6yd4kU2wn|*A4KG894>4HYzVQwymtnAP4yyTm?&P@0az5?BT_3E9OO-a8$cKD zpU*?V3!ub458DqDxW)%7ki!FmpM!HVfN7D;T4+h}CEqKo7*WmmM3AF77?R)u%;v1) zccqDJ52Q21&Vh1H2fKe3ziCq6Xhyf^k%)z?5Kw`y3g(c7)^sFT^zrxwgc%EY?jvb9 z@B4=Czi-OEn!5kWA2Rm240BVs^mv1^G(RZigngf5mxn6Gc9;MOXNL3cc(Oz_oU6R6 z(V+g(G@SPnhV#BSj!L&YepdmPfRObE4^MnBdiHbwqKf_PBo6ol$_WdJ)P5M=wMkvQ zAlY!C7MO9!a1J~yr_^Rdw=C)^MagLyppNB|*I<%ARzBH4l|$=edR&>oVa zobYY{4S(IY<1y)2shse$|K)#k;=h6QdvDCZhrNaY5o0{;u`?e@ie=!#7F+L~B+CI- z9H>ZHp@Ws{Gay2Lh;27E#K4EG^E9lRA=AQZg2^5ERbgsh41+rR0ydoeI6U|Jl}Vk_ zLx6|@6k>icr5h+A%9r8FBZ9A&Ezw#|$nn+|%7%3t=rrIkLtN<9WBpkIkD36E_!zg+&^IZJq9 zc5&eFIOj^nU>M0@T5_EcYoHqV20&NYG`b3F+{a|3G?JeRiy7QB_mQm z)A!AOla@569$JT5wo@|-#g+el@|=ejD^q(nigRgzpJsgSFqe^PhYj?Nh}Nn1&^G@! zKfjhdtLxg*x&|vT`d5I)q3UoM+Dubdd0|9qHnc$HL;TO$HhoHQd(*_^yl-*7HBy_oSnEKmJ3{j5X00ll00~k5l_hNWOSns}(*Rno+ z<{!Bl{RX6G*-%CK8s%*^STVpMX`#H$hCMAVWM9na#FTn`Z(>duXl+oo0oAXVe|a`! z>XmOy#r8TXKSHMEGNc3y=%WC9AiH9~)>v3A%VSW7bpdc7&ni3^=Oft*xsn>@)f>S! z^^&O3nqCpui7fwmApi&9<&GqE>G=|y3;Uz#U9dg2APwVnI7ilV?)Wq^dvZR23Hx!L z?^Z^Aj)~NYLP|b=_Y6HBAjG?7UYtG0nYCnU$0y{SApc(^su7tBL&rW2hF>gYTCg1S za}cFVq%;5pX;vLmP5d;`yY~0se+%grua&cbNyeB93oj&)a$)8HnJ;Ckvb@a-wo}S`o?*L&thmZDpi0$-Q`iIn(6PV02MW( zQXQ*cEhhXSN#^}VMcu?FMHq!7=0xP12KKX*zpEMY0Sol=IC!9*u*?h~>tWlZ)(Zl$G) z`vEvIh)Euh=p6}TdLhfwCUd+Z1rxIuX7nnBtJSDJ2=jq2m>`4Jt9w{=^bfSE-VzeRc1#vW}t+!LRby_Cbm8s-q!BRba?CxfCjKFy8 zOT@1}Z(DjokYXXfqGZr}L)J0(jVdc8j?k;Gy8cOAs$5f5_`$R`(*q3nA4a zfy>qr-^)M+AW^o1^dM5Q7zEXfPNTGTjS#I%%Ft#4DfmG)mqMn4JjaU(7bD^quL)Px zZQsn4yb$s%jp=1Q!!y7ExmVqxQ5)Kk8mXKMhJo!2+S+YFnV#*->v4Q!P2L3m)#%qy z`I+sZOWk1aFGiKt%0SN2|QNOutFxuB+n?&upfm~yG z*QaB7*&i7eAY>HF`$X7~ial`k;dVd~0Xz zDPnn(KZK@rBw3H&K1M9>JF{(e{}7OT`fvZ;6aW67`#*jo$*)#sEC-S=10l$+03XJD zJY1Rq5CbI!Mr;ARv|@R)tSb3R+#_;1#r`e^146^PvnNX>aH(T?4Q#ld<5t--!g1bD z(kEj-kY?E}fP?jJPEWEcO$4&nQ9~`dcb8TzM7Ic!=f(08&C6A1PairWmKTXmE0$L~ zAQ)m9OuyS$Uf2wts~!-Z&+t!*liia3gv5#VZjGJ=M8JlqbjX*H`tnMA4dRAk8A_vYt4+OS5bwHTcpqvBSIZe$!xU^{$n<0 zBn>N~d53}_8v)F2oTN5XzLDbdn2I;f;I(ap9~vNF7Vif=+u@nG-qD6h^$KXKN%8?0O_RBIXjT#;rC5(k}KGL;TZ>^m8faEO5i{}f; z6<{DU6eA$EFYil1#9pu;ny6JYrSFvTsSG&w3cpDi?YmdLUJ>QHRhrIqo651WBx}3! zoNO17zNZ2}lxcy@*xL-Spb{-*Oo;8>+bktoY^T5w=@raKZbyGoG9sONMx-~S6Ho#p zqD%+A4NT`Q%}T(=*46SXzz6Hx)UIBUJJBbyzY$D{0uMYQNUrd97$70GS0i{~O$>nK z;=}b|K43(AyR@Zy!QtBn=fC!+r}DS8`j;1?XXN3Hhy=F#4n$VMA7TInuz?o@AhMmh zO8^$6WYr)8qq>^i?J>Xuz+#V!)GYCYun#Tj*$=WT&FqUa*2JTGFNIMZ1G}xG$Z#V8 z9EK)a&j5xV{?3bGwncX0faOMtC;i53AcGaLZ8q51a0Yt;gW^m=0xHOIF!3VELEF!e znI$$~kM)2TKnQFJSKskyAVETw#AEeGkQRjm2?oQ~ldM(yAn-b994}>gcsa7f>W|C9 zLI!?)P407k8hy*_Y6=!z97whJJly#HhXI6O3~Cd7-5!sx17M<`ueOx?d-zhs-TLD% zhkU9|x_Xe_8-UaHg~77>JO*F@IJkAtkW$q64Zx1^yHNIn-zi`ja6vRLpcv+(6|?|L zV&DTAmi-NQ=T7o|(6z(gg0mtw!h8+`IRhYPEXLEZ7(=7$qh>MsN#IgTzeZQ!CjiOQ zuo$OTE_hVPz+Vv-<0L}{U>xR#41CxuMx%d4yGJTXR%RjeINg3>_C9GJNU$KnVhF&P z$)fg3??g7D@07`2Efyo0&+&K^F}-+6H2Rm`5I_gpyg|J$0ZPqc05AY9MVtC|2}W{% z$zFIzPNfHABfx{P7#jbpx0xk*97$Kmv$V`mJtBF10xbZLR*KfX6cZB5OJ@lCJL~bN zlwTpUQb0j*p)LEBF?}mBBmj~9WN4=l5w8efWG68%1{w6aVgi@<009QE<3^Gj8#JxHsh8*<%ADwjD2sF(C#Z z41m}^21s^NhY3K$wv&>zu@tFVfCzgG^O4Q#SEG#`bGrA72)M|N>Z{=k@dov82IxS( z1)Bl`LQ<9wNvUbw<9(%don8?)qNigaDIt=SVGDLduL1)ih%+Ug7k>yw^%jdkgF08Z zefUlT=DnB0tj=p7_knexm0dd~Ff5<37!xeUoN~eMhQ(kxDr6utVjr+vP=SaY^SI@L z_?`e#Fo5&Q1?||jAXBuz1&r#p4*3?~-eak+g$ccm+#Pj%wE95imKP4A2;M2SW0;5l zZWjm+ZNM>gl~}KOSH1?W_zw+Jd&#m4ZRy!WsbQU5RU7MDj8h#qJn6p>Gj`!mP)0wWd@I^dQidq(mAxUl zUjjd0_?3TkDpzX1^v7Qoqj*=C&kF;&`Z+R4iuUx(n&hZmVMH>x=nL?n2K4eZ_sX7- zk#uWs?B~!f5FXG|-^kcXwL z3)Vyp>@=stPyk{`wc3{`US~^^XGFV1v~*BQ3Q4>IV2qNq9)_IDy(EtVU~nH_NN!HQ z8=esd5DCBlGHks84V7NeCt@rK26G~NZGZEH@OXDEK+GWkdG5D==T!ctp8bV?G6NNl zlLusDxnw&GJlHyz5NAA+0X>`3lR+KOVt~Ye1jUASJfe6VR3wJP8I$GNW0ziCpRKp& z+PnVibNf;Ou=07*bY_XUK|Aws{10TFLaPe6n+Lt{elf6yVKvMf*6T8<78_mC`x z*_Htec?t~HGWqM3`xUcps)9{fmpBN1AZ9hwSz>#jlDKZ4FfsHgnfaD;1=Kj z`vM43KL&t;2Xk~XGZ zk2;M?`$I-CzPasvuZ%@jfRdwuyK%8$!Mb$ga>TxovL#W&FTeE4sSHcTtgOHPew9L1 zG8^FunHkc99T7m%iJ`obU}aB;_(XCNmdd||y&@5-d`@5bNwg?2rDYA;Zk|9$mRWVX zWr|jj;I(%;Js@%(`7!61o6k35n*oyTb&+cA2ACkdN_{0c>Nm-+kZNVX@+1I=vM3~9 zv5v@Jn3WxoQ>oe90K&dBt2@ZJSC$oSNx7l3CHI3R0km|&jv&PXgt&oxO~A)mct>D7 zkXb1Uf_#g@LR!^}=JfYxfaGw$)oTj}&wS#?PUUZEapA=o*zmrQ#9SEQu>0!*AS4F3 zSnpntYqQ0GggwTfPN#^07B4kijHE1&)V&(1SO5z<2FY64ke2VMAa( z9xO(G2%rTCmjMvW>L$y&w-D?K=~#Zd5J^6ma-B(`knKvO0eR8epNA~VQ@Jih;T!!Q znAAzhVrci{r9>hIQ-(`CCZrtY62liGA<1Q5>8d$?1g?rBx3T?v;C(*W6q1-=9$*SE zkRxTHbP&nXdorX0W^(_;OI0lFi*a5I(hfA954jjpGlqP?1nFMH=E5={$Fk?byeM#j zO#!6b`D%bMfPzb`o)5FTdO2V*XsCycxSe8yAG{{zfvLZP&rxM_x4#?!P>-Df#zHU< zup7vs02X{lnfbUFj2PcL5G50`{Q>62(>TzMtFIF)r6DThv=u^{1{< z*MMWpu9U@wwS-6|R73N<_tUbgMoLvP#<=fC=I|C%Q<&1LA-49G3=?s=WADKr^01*9 zQ#{P+REeQ?m>%dGfMaO+iUf%0Z?j;f>R98JM`S9-w-pvpdquiwZ^tmNq_FjUwEQOZ z_oo0wxJ}T~f7EF(HzowO=zQU6FWINU=nIRYdz1;BRl#H$taKq+0dqe&q$Bu#hg1 z8jMtJ>!%{Y;=BM(Bw+1|DSbBq34jyeMExSla_mXLVUFe19+BO$GXwwvs9^i90F)hB z_T{*+BQPQ`8~~H9l4E0BcpP2`oriC@g9)1 z@Qsk11@mF|lQiozdOuu#_18XmI9S{a!@0e#feQl}-n_mNObDJ3+mBm73Hv!avQ)Ap zc59D4;`es+iWnfla1QHXfWpDYP3ir(9;WtU|D|YN$LMZggCwkV0Ux#xvMtiFj3uF0 z#DUI@kXr#dT-J3X6&x-GYvNaV7iNQ&r&)a`;z@1b@)EYhuH<1c0Sg8|y^4(9o+3F< zDSBD@Ll(z+e`HytDgjdNpO35849_qq8rO>S3vU7b00#iihm1?xxa(+MuGss)|9l)% z*$?~=&VYO=7#sW(4A%EviXlF?h+ho0AopK8@4h6#2&p{t-o^MG8#tj*P=Bv5BFL>^{$K;`?*<7YK9Ix) zo}2Vv)c$}fZnbV3AIW?gEzpzQAjQ?+;b1D6Yuqz3v}IU*KkW^X=Z93P;XBd3jY4uX zmiyFE!3wTMgL2$Htzy0EdmSCC8rJ8^-{uqs>OND!0mCH2 z)6eN|X`N3$0vbBV*ZnL7See6IjZ(X+-%l;`8b+U4tD~krvJYimpUO}Jl3aY)g}!dCHThl_qighUp7klx7G{Pk8JihqrzjZ1@lP$mTZ+RD#B8%)afddX^FR?lYihgDyQfE%P&q+sC< zL8e9Om9ilK5|Xm;cc@g0#4H6ecuequ06?}9=-5e&3DPW&?!6m^_8swZXorY5p|4A$ z`hzgLBil-HtuOxSubtZ8(R2Uq-v;}Ex5En%lbp(!5Fhg2PR8@wvE8=e3&~}LtHF#A z;p+hA-5C&ZiPw#^{$})txXjD0oL-$BD|<$6l!kL#C@>@$%Z@|Wh#hNvX>3e4uwi9~ z4q%o7kdUTjkJ;bY4O_BNJ;nRFv}z&P4+j_*qw(1uJM;1vu`lcfeh*j-lCel0VraBM z5Pt|mAqhhUOg1DHiQzm)t|obv4Xb!axSG$vjuGC5U>id17FLAg0eG?@S|mfP2iPDf z;y&O2Zv?NapaB1b#?JyGeBggR27BaBybot>QdF%2y659uv}1$Uxbs3B7kL$a4m$<_ z1>Xl|aE=Ruf#eJ}Cj-57p7d@g=mO9Xt4xeCQYx4#012Rh&yw#jo5~jh-0-<=E`{&M zqjJ;lhT~v7*95EwuSJ=rCbYTH{I%I{+J46X?d<1R3O@;f3?yO!ypdhmadMyo$1xAc z)YbaFWuk8D+ecTxoAQ-mWGbE~cL`QxX!<(pl&ThUFk)^-Lti^qcJln2y(4|mm_BAD z`u0`)stvrAmQ?t08hZR%!ZleCIASzP8ClZ`<7beo)sW0nWCY5uYBKHAlLx=V=zzyj)otr zDjQT8RRKm?K9Ra(M=v~71&j92TG6dU@U(`fE3aP}vlHD;8$gJ3D*HDocBE)Pm)?(@ ze5GksjpVEutFk3=zFpPAzBk^k606*dE?y9kU8yYVR6HPRJl9BKSP)Ig%5l3-qQsDG zxxg?A8UcZobHo7IWy-CZxu>AUMC2|M zuFOEi-u)T#v5`QA0SSB|9>tqj5?kzgveiHS@=Kb5P?BKrsd}J#c|gNEDDY4 zFd~2w8_4j2WPixzJY@Oe;Nr?`8&{8!XxWg+a0tktZJl+bXQA0g!_Ppfy&?(*knO-s zu#SNg5Q4-9FA0Ez9to9wsgDGZLb?*{ih4d2ykL$8KxmH!>qw4bSjQIu;84jFMSVFD z>|*#VRN`dEgk9nJB!1DK0Z~186XJF!{%r&2ex#!TSYg*R@Ziy600xZb{I*~|^6xNtp71R>@O?RaP?*i}j2Pgc z`-3+0sd7&utepXwh}WIRAoP7-wL=e+#_@UbobjMH+VI$nQNGx*Rb(-T&yKiXGQFgZ0#)c2Fk@(OB3av?E;&+}NcWO>ar zsOEPvOvXPC)%T-A`G~D47@Z?zP7Uu#$=(fxKSop7^nRPw8AdEtD^9tUK2{`=i3GAf zk13hhLG5*^qHqh~n*AGlW8lE~NP1QQK2+Kzevyz~bwvtSk!*Ij{@Ks}i&Gn(4BS}c zZzN-N5-Z$QK%|mP>1PEv5lL17CNePTvdO$`E0;8_{i^Jco{*fX)tAXvw5Vf<$C!@y z0!9SS$Z46-b1bl$&NrisP&+{sbSOhYlr*?;)o1wink!<2lreJ5JcNyUQk z*jNr92-{tPwK@YCPl(}7F}?-{FsD;&XzO4~i1!7|82Iomk*hNRW4F%0ycymPydn5V z9B|x}xZhi4+7?M#9`SoUc}x;hVz-#r@qcK$`ubu>ukwI(DH60uzrw7J0o{NHrG}Vr zk-)%eX!4NDuwD+(!4+p%51OnQ>H!+>osS|p23NgO4qL(1Z?38%lj17857b|mbgHk% zkjt?B&R1jLMhe9+4FF+)<{bR|Uk`r>2~rH}04RWoGaHwpe?-|800b@ZfEEULUK7T_ zfB=k2E@XT$OyM+z=T`PF1xSL?$nvtU1R%5hoK;DNdk1jm!{n{s>Does3;-HoA@BeJ ztnlVgM(MBpe0(1OE(5FD)!{y#KN}~kA?vgIcr_eMd_zhL)9*RQmjez zvfVUtH`1XdeHMM+ls65{WAshtq&c`ZWNa;9G?_ltln@Q=9*UMnW2)EX2su#eT!sn% zP1A4F`h1RvQywuJ#b-B6OS39Qp_bAeGzR)sgtM|jlRlOz2w-GRpOCM$J6MKk|5Du# zQ+#jZbv5IWK}J6j$vZUSfBSJmyZTFd9p-Zy)(i-&ym9MPui%;~eRbu{5^xj|yOm4| zz~Qa&+MFIu^O+gJztJ^1LJHu~i+7|eC1ChKYR^uRWet*aRe+o1`N+|`*^4sUeku$| zFR{UZ5M@JB3wvfma_2_^6Mz=h;T1uW1@J(g1>o?MtjDuk?GC}nz9Vw2TuitdGAw(H z%&Kb?Ai{()e?+SS@OzDTu zTm8_PLp&es<6z)c zfDKZ!)>91cx;)ny5j)m{t6^#ZhBkp5%Li4AeiXk3n=&GsYp3UGiQ zgdq|i2Uo8da#hz)sUdP2jpb!HhvC3mpt7E9pk64M3P1xMgzUq(6oY^EkEA{d2P6w2 zp&~|@EBna3=(X5f62{?D35H-+U^a^Lc_}1PD)Z8P7}m2d<5I96uo=YTB3%OnkyeEi z3x-4^YyolrM*t%XgAMtx5ZXGf-!EVZW`q6se$=l6Gp67ZFv0iEZwN0DtO$SvzzYbr zbx5e}@4y+4D{)Iw9IS>XwIyE?p$u+LzcvHhfNi_A{Q)cvk}pLO;i$`F!Z&d|zsPX< zei0d7n@0CDzsPsz7ipUBkK-57-#~xn7x}38Mbwo35%7zcY5X(?sgHl`nS(2@FBbhI z2jU0G0OW)EMa2AFdPGjnFOpNV_O=CxY=?Qh@{62G3fAssurIp;E($~WM%yof_hUOr zrzZU(o6`T0d?S;7kpwz212W+k!3O{YLHoW!jBjQ_8h#O#RpA%e`Y!z-4JN3TL#ae-#2~bQQ#GU)ZS8z7UDdo^mu=QQ5Mg9SDO{EJXY{^n zCS}3{Gv!aJf5#(pINv|aM+GDbMxzEh4JlPqS||& zgi2Gah6Fwerec4mYF6*d+svkPWrs*7>$0^~c<+d$D;d&>;-#<< zk4Q3}fAL@c`iJtj;_QcYkXRX_0TFLte?I|_1UQghk&vZ}?ejR9#Wz<1Ok@exEs8qWI9BN7|O} zcPk9>w%r&J$_*8i7$Cu5>ji5mb`+hv4RkgH`k=NH!2=X=7);&De83*@IpQCIx!^tw8ejvQwtRN>TQ#u3?^b;uDz#!Ce(NwE9=7mufEIsG7s>>!yEA6!oDTDSz7n7AH#`|b z(Frmwt?H|*_r1i^7RK_4u7z6GH1c^=(ypO#K0||j8GAs6c{ES)oR-XIXf{{()83eQ zlC+5!+m^p$1XxDwP+ze(Lv;mzm@7MLh6%J9*#$_A7@TMB`KZn1TFN-; z{;0b}CQ2Dc!37#EU6&;mZSr#@f>no3t5;=i6mpAkQlClz0*A6IMExFW4zB=dVM4E& z6#$De9(6II8r~E0QA@Py2KO)g%CCMXgO#x@Z@%%ytp8)=-B5YeP6OYAGDC4H0Hij)_q!zkQIk4gMExO{&{dwLY{||> zS#$_fvcDMs0^_-Y2~XErFFQb#2?3<+h(Wz>T6d5lQN4cLjbJmB`Pi10bPVjf4;zi^ z?}sc)yGJmilZItL#95Gct0b*EIi7d@oo^p}_UHc5hw?Y_>@Pf<+S%_W3D#Nwij9>7 zjBbmM<4zdQpS&Gl0&udPWLq#KG^uA<*K+tj)C=OQ$L(M|U`L#_cq{rt03O?KN52S< z?YSn^!mJMK;cUp8(Jf-&0|UCtw5bf(% znZI*#L){&b{n+qG_X5%_Hv+#jyX6?%GCVU}=fQL_uI@7&8jt`)5ci5a2}3%PDEtl% zGF}PU58ej`UY?^eBBFW$8ac`9#WH>tP^0bO{=BQ4e2xGN{2Xit+z`i{qlo`3&JA{k z&jO=6Ac^0QHlO>s^Lw~31H{M$F_nAN?i*#XAPfkSEIPetK|Y#TJo*hFVfFT)S4LZ=k{Rg zJRuEMsFuZ*P3)31)#~bK0gWlMd;R$~%=h(YU4xzBs5GsHlx!4{4BIH?^TJHt=oQhF ztnho_p(slYwT(TWM;B#<%6{}+*@ICeV!gk1s)<;&FXXx3`M=wZ=tXi>pQToXOe^<+ zM0sE?Clp^tu`Wxp`qCqUxjeHXUFA*bM`ecjTqrfH0LX9}0AyDfikyfgtOF9Xy{e#a zzmjUfns6MXReO?l1)xFFm0Q#|OW#KZAi{zu`#~9@rex7G!u_49*sv2n3XDi6Y>1lE z@pHg(U`W@l5V}LMx8z=!)M-+ucrZ(|Qd!~7%m?zNKl;N{_j|DX=qG+`mVD)4;+@&@ zDD{81wCbIZUBQe1Kpd1vVIhD79|*>E2QteukYLY&NineCev!AL=+Ku07+kU?pab9m z*uZPDxf(qp02x>mBwLgl`u#Vug;Kc8hTI5N#0FgCSME2s5xx-}WEnmg${EIK zWM@F9&%-?v;`3m*#=`&*fQ4ZYcG;N7fEcU+6tuZBRFlk=OBP>?*UcRn3t`mH%tta= z+v@=kG))YqM8N|IV}K{v5d~v*ey|PdzkqcCkN|8bnFQ1T{_tJYOb4mhv@N#6R&!FcTB=_iUGC%hLE$8SlFTG7uf+1bz-^qXu= zWdN@kjLEk7QH*pYJ?pwj@TL2e-(^ceHB6iM^&Gmc&8ie2Xqc3gDHD_%(tC+e&g?~3 zG@=)t4`EL5bwt~G7feS1IHW1PC^qaylB_TO`v3W%3|TCn{?yMNoPX(+v9v0)H#@=T zXdz(%Ai9bXDUXp;t^gz2rmi4Dn34=$)VvO`>C`~K7q@%c8Ni$h0Lh78Ps&6q^`Eq2 zf@w_$ob0KOWU~Y|9Al?qLFf;0FrnsitzUK5s1q+EcPZnNA+ z0fqWS3{yc_5t~>w2pB;SqlRx#L{!Kjh+rJ~s2ePZ%GvMLo z_^z=SL87_zl#8;^q?FDFD@EPW=hF%0kk4Bi9h0rSCY`1!t44(-U% zI0g&>AO#~h@5PQ|+bD`ewxnzcJ{*#%_&i{$^t<3(JWWhKcRn8l77Btiz87}HWoqK- z0Fdct4AZ5N$(bP%&xw0EQmG~^+!OIcVJe3mA>l1W>*m72#ByZdQO8vu9_!p>DPY47 zGL~cY<8-X*3ipuZSM#sTkHAa|gj7S@RLay)nVVH!){-$z52bx&?yi%t#z|I3y|;OC ztYJo0%=@R7RMxkX%0}|74Y{ov>kAv0HxmwFG)73KMc^~K;fattwgq^ z#fY_;-9SV3l5EXD$lgX6)a%A{4C+X&@PQ!B%HTvmiMFPbj0F&J+0(s4;PKTD9eCLC znVE0q_*{vH9U#3+8{hF)Xh9?8eGJexJabF{ z2WD?T2>^k8k%W2j*7ezaqG^fA15YA~l|4@2Ijz0Ee??~e+cguTn);n^H-jRCvp6DGJT7&J0_m1>uy(1|S zHv^FLon#+KO2V3q=T$jZ!K8e!-VrmTe^^qiu{7%^+#_=S#q(usaJN&+pmI{y))+J- zP|)rj*$c*_=pE_C{tnoU57;|$@;x9`@5ug>lHHIrEC(Q*7sm72@1X{E?gM6Wf5>Ll zJMuUT?8vdSz!2tR?_pVBn0+8}-x-e0NXyE=Ko2Z>r5 z)w^{swjZuP|NNgGJo`WXv+vn&e9Lp;mA*5n$r_?J74Jk5&WzqeN{ZIzPjpG6?NYb*$fFA$~5-$8Aw5xke z?@}1j&G+G^^D8rOVvhkIt=FG#cuY~UMtuvlI#_U*4nEGZJL9L>8JM)kXC@Prl7 z-VtBFApHzWl1_9Zd?kPyy|T_wj2YPWFZv+id>FxbUuqx+4B_JdAOPZ!(rt)z4Nnavfc6{%lK?U88X*bG!9t^VL=(U06CuS7 z;NjA%YXP8D66j3ag)+^}e{Zj)V1`!%_}XU%FhBeoIyZOt&mII}IvPgqseyGgFpDgz z@SaS7m>3Ah@|^64Xk9(8O!M{Y_kDk)DZHzI+dJ-p^6KmZ23%tlJuLsamo% z@`*IAj<-EKT_NYHU+*}esb)o5KA1ACYdAu#HH@N*OOQ3EAEWEWQM*B30X}ltm2{Grq>K)b z0>tc<-Vkk4=N8svXQT9&Xsjge&+DE_9Nf(-}`gF{kt;;##`C% z%oq&=6*-3Yt=YQmJ83@wCk9wxLpG8z{n1Jp*9*{q-M}k?{K{V|Mg6WX2m9gAlVhJHQ29B0MII%a{`i4sCx54T%Y+aoy!q*Alo$3r2QK>hy=GXT;a9lm&+L zfLK!2`1bF5d=B)#TqxP3{~g zN63mv9TPl^h{nhI@m>i)qQ!RFdag_diBsBtk)=^rgDuFt6W@qbCoK}Odj z85o!Zm5jkSu#G5PyeN2GRNj<_Z}B?7xM<9-`a57U^gRNmd400H+5U5=RI3>p_=(1+#17m~r^LYc^=U=i;KAQ%%mAOnVugexRjZc4uxtcTrZ zdElkk_x?fv_4M06chF)R7=HSBl9XZc%KbR8X_^_SJttEhkwOA>RI%O!qjU6gtCX$= zfM}+0DX6K>bJX`xHoUjesG6RNzTqd(Xyk^6VruBjk9(07^;0EyBFky{X&PWf*^nlX z8l_dWui_7~-;v&=mX}Dq5|un_)ZJ0P?;>St+MDuJ-lQ4?bzM6}?MQD@C0!GM0gF})w({wgfb z{^NfVC5UvBV2pS0aeMaILB%_>?RMW7k?lL-5g{$hSP^@k-EOP|&>-Q;q*TU`U{F_& z2Vg}_>CRxR1Q4MJ5eCIxmu?Z2U%`OzSp6pUJeO@He~1AKdmTy-iSm7XD`Zu8K}gOr znHB3`N>qZC0m`=$09g%#y2tY_hr|l62tdI=2n>mB<0>;ce1Hn9i5-_K(yT|a#SrK~ z=0a&~2lyC6g2ale_helWWelbQded*lI#xPlS2nC$GO<&!e@2T-XzlBoDuof?C*oWhr|w^D`RHI zj72N;>Yy=%7c4+^MY=Y)w^)gme`0>bZr?~18mA=H=H;2RrJv(<7#AG&{dB^Y`b>^n z;K=7ON(yU5zV;;m(7}D$H!u`(wV^0S?AwKfjjR01ri_N{Iz_AgO#6OP+Lu4yiqU8d z^z)OyhLI;^s;}iZgZ{kqs>xX5)-gp=bs#KHT~;_$vaJ!|nea`G{3oM`1Sy}gprE$3*^T_Ny( z`zTnC{E99R^;d9in6P09w8@*;TMXN_9XS-eC`hCpNvR&^0MH_m7GH*K0}yB#U~V2? zkc6yPg4N)C!`2{Q3_tcD#AiB*n$z8J?+f08z(BVXh9OPU+(39N@mt~|clz=$8~n==X4sq}ozF-h*K==6I&sz&n0P+#_Z45NOGVd}lKn3*4ho{v#^ z<}fNmEW!)sd_Nh))IA?+)_=;LkD4V>U_+8t-K4(q#;t=N{o%iPHYlDgXUl2$K7RPe z4_3c(b;fj1ewcyC{TZNu88I;849T7FdZcFd%z6M)*sjtoOziG4c{`+7+yXq1X>H#L zaAEt?2f}j!4al$_uLy8ilY+zK3xR0?xMca&weW6mAK+roW62Hd36$Uwae$E`e6`>Z zwgb>&>yT%8Y2h~`ve)iAKuA}DDKosE%(?)N`xnC_;^1Xr_T2kP;(`X>ZW;1i{_P~)QPawJ`)%R z9q83#fe(bM_pGBG9ssibExF>K{4F+YbKcrY{$ccd`0)Np4E`A?CD|JwrgOE2001BW zNkl9yfsnK1Y&l`@@e>ED%U5Oq!T^UCAHJ7B$Ag)? z%GMk3fD!TZu30xp9`rr&>TX2y;s|%2of-QMKHKyY)5wG?95U$s*|SWfFd=p z+W_YNjawyCQYU4hjfX*@X&rz;6siM|g}ASbhk+FU2&qHLjOaES9Ffkb3EpL0iy^aN zKfELiso5}pBaXvhYtLa&C6$YPVPyQ6FNcJR!JS5MTEUS+F|21c;lXs&lQ5fl9;m<>M1{-7h0gRA(u@7Ja zj}GrmQ?Pg+d8rdUd`%&U)60BB%;N*ZjVbpHLNw{pkE3g0M_beUgY&lzg(3bz; zhkoQ>@zqzNf5bf=YXLlr3GoK@wHXM}#h&9bt@nb_fGzQ~tOp{~x)-u7+b{bzR-~jb zncYdcg5dxx6by)z8?Gm?@>mS&w6W7c0-KUMMDBza1eOD^vM&7~_FD9cAkA{~c>+ZS zIxxEv_3M$nscl^ovTU1~)bW%!5V;y{=`bQ&sr?-Z7IGDu*ZoTIHxnC@t~9ef1C(2{ zfeuqIgCJ&gm=TP`HDK}KG0DA%1||`UL6_l^AsC>NQ;ser7G^ns46-at^6FzLjP?l( zso|N}UswlXeHnIPL$v7~MggV+2^rEQZJh@g@qUma>G9Q^4{HOvpzZZACx9NLX+$5_ zz(~`e6wDxR1CV4%)s2$n036wVq?0MDlM~S1i0{unf1;c@o&(VYGQ14)a(ws5vXJpn zAm}Mq*8+qPLk(~y0gm4#0S$l+XG9hwL?JOF=UObsBw*;v-j8t``Y`J9(Dv(tmfYzm zz%c3=X_pqNkDv`a=6O20V;R)v#soLD^{wuUq0KB5z+n7+klxjfxE+oifjp>;X+knK zl7v;SIRY7TdR|&X|G2cTucUOPyl>1*49y;x;g~%vQ|5A&BaQqN>Z4$vu4^WZO|d(p zNagyo9m%H}T_r`5*Dx6+Tmz*tU8^630@RJ}1+yZIh{~u&j7$Y^W)10Gj{Pmo>}8h? z0EN`7E8jW;A!p0k@?C?Ej~#-KZ@vHlT;x{w2Qxro>oKD{5J~ItdhDkb z_s!b@EF8=v0P-k-g)M1GcmK$p03n$HxmU`oFqs1+Hf{z0A!Q5T0s{hI0lawZ?{e&G z3mX+(WHc}x01*<46qqnvBB|o4 zx3;mby%vKi42c%d(VU&VCYQr=!j<#PtXv2n0F%Ob;a|XO;9V211(Sf>3g&^KpXgp~ zgjbIQ>feis<;QIiKz*^K&DrH~*BieNC zQaTAW065|aq6CodpYIF6XOHa`Fa;B$4d!{dl9-F78HgZW7k@`)`4;2%hvW(nV*45R zw%;tj@56QHPPC)r7*eb6ZAZt@mU2CHN5{}Gj}MKGj*89ck8#|g4epdpna7qChX12F zI%)v-J?-ci=5%y48s5d2UtiH5COkWnMs^v(zo#7?wH&PLgaH~x=P?x@d@$u{X|%Z) zNmGLG7>AUG}A#s z8kZk`Df}WD1)S5ku7$6p?kIuHpnHVj8&h%y6E|XDWvE4djN7%j&vO{e8J6*| z;3>gVKvxQ&hpY8;oRI2;)Cn^-V8n)fKnq}nWGZD(01!y201Zg6019lwNS@0KpQ59K z6fjsOlFk4NbZ?wyM+e_?{$3U%!HVA!j2|*W00^uI0Qf;jtumknET;g5bA?Q&@5e@F z8PY~q;QJDI3`dxBkCq|TCg}d?tNK$+!~|n8Ofe`&fv)eDqQ+x`!2U>|N9kJ_Mh5sP zgZs$q@&i%SSax(Auc)!~augD&mXD@u9KXT3918?aMLN#~fyXRr)OK{(jXHL>tNK=y z{b+eagAQn0{ta?`rR z`uegGtO!yq*bz0wQ&gz0X$Ex%C<#EokN`?3I0Qg!EQRz0HpG1-spQc2y&2muw6l1$ z@0E~tF}&F^kX2R+43uypO zrgIyN8UDEnPb6?I>ibUFQ^HWqb|PQ>H7>`#48siCQ$>wxuz%X3##{<{S)^1~B*yq+ zdCm;->TMwj3SdS;m=E565$D2r!Z>NnGUtdaO^x9g#!nLj;^oNxA(8UAk7F@R0vg0wdPGBMV$elUoKzs+;?FgR454@FmmT&eB*2?P36&qrTfv2Fl|VIsw-Y5Z;s zR7E6i74te(Hdqg=2Yuf(sSi_E_xmGyO6DX$jo)YAmPJjN##I_uNZT5KX_)Zagv6^G z`xPck?WJsIm;{aL;TT$SvC$wr934V1^i@Yp-%h|9`r^ISfMvvH2m>+<<4EaYD#Eu> z9;iU0h=CsZcIQat&lu_k_K|<5df#;@LD!AtV+W05%26U*-;l>u9V#^ls=H`vaN1x$ znn18-MHGa*@#eu#{*C|iY_L3A&X(gu?f$h-9;{w_H6&98HVjNWxl<-!!G5qGV8d>A z*MbGHg_vGg6xb1Bd+~@EATS^TQ$mZnfs#717gM+cmA6VCiN^B6g205R5q7BGm4J%Iy&|z<*k_vqp35<$b47ncWIuop1x(ubu0uCh`(5_+M##GWNq_(b zd{VP8%9HQ}`@nPXx*&_i}C*Qz`s=aX>Q2tUkHzgrf~sUvM1+C03M`L$f*Et z$g=dk@m`SE5iCIYr30gM-vLDeVEn%Loe&}IzpthE-Pmso00JXo>j5EkA{?OjaNW7d zE`ys-G^Kgl=@la1=bs0^_7MjVF`sUv(3=EMU}8Q2S-LD2@^PsR!>TQu)n zi*su>z4ymT8EbxLeLpG9DkEw8Mp9Sl@6dIVa-zl+_mR22N~dat7Sx4}0S+3#u+bZG zl*#>|0d$8sU~MuPt&({S4aQ^?gR294#db7}>{TprAwBE5=6SSOqGpV9*HzKK{Wuw{ z3G|0afK&hqWq*|U=!G#+(2<#uy~1x)SpphDkB_Lbb5$+PgAkg~;ouqOZ%HL-6?YrC-$+O%%q1B1JP z16$|JM(O|oe7G!YG19UgC-XZ1gsyh)g+vCH1Tcd3 z-nIA(am5;Qd+KJ$SHBt59Rwr>zy?gf0fmXS4QUV&z})wNJei&`jb}O34KX$^g@GEc z2vVV3yto*zn?b-*cv3PDx){f<*%u1(Fx~^C82VLy1`EWodEfR}Srj@lGJA9_jNhCu zz>9PDCo}t)~f+tk#rdYQeU-h7yNZU00n=IbSshU6!Nlp60Hi9wG00G zV|0HE(@c>L?)JC8H)3%qj?LDhooecsaktc zVyH=4dfUySd!PHA-#_@#AO2fs!{*s?wp3>G=l(NSp47MTHa<*h87!d~|Yr#rj zJa;4g9M%9YYrf;T0z8CQe7c>i)3+kIfX9^Mm*5V=zAeI*Ma zo1wP^e@SK=u7!N-{>6AL25@b1*TgLy_!)LRy7!HU{)Ht0Ot2nVP?mIEi=i68-~j5P z4E0w+b_7#UCw$=}!EZu5EoofYk8x55#ee>GR42r-}#<<|I1lVAW5U*jp@4E9tA2iwzTngqq@Xl&omdL-SE*nX19R z7{=$ZWTU3_7R%I4dKres@I8vuZGE@>*hF7S!y4>PJ)E~#rpEhGmZD%T8h(!a9Q8#^ zrCC++%9C9%6B4X~dFi55veiAJJtNI{;tHhH$0(Z8tN(7~?fQP}bgW9gMGL#JBCBt{ zeeju|`T4WK^K3a=4wp}V@}~|~Z!9LM)V*LlFrM3E10yU3M0VDK{V>qrjLAl@BSiDU zYPgi@-RK3OBLt=du!5OAACrdk2jL@uMd8+-M=}<%z5oa}tFM(3EA0;f%y>Mo02FOq z*Yqqkx5KQ!g4hBG!PK6amDJ8|-Vne2cCa9uE0L}Ry8$?PxD*UVWLXN`@GuH^kqN3Ox910W`S`@J6s( zfF>`#d|f;;NrnYj%(2bi3@;JjR6QR2#%(>aKVqqo72;Lmd~yu$Nait&bn`-nO4NkWaLc&o}z^qsZ8KX<2oAaCCAq>_8h2b28-nC#}BgMy5LC8&R&m7ij0b#e4#gL*S% zYfgM`GnV*Z+{`{zjydv^v>1x2m0f{cD>nQhsfWY?#Ck}x^fm0YegFI6G0AeS^@#4(NM1Z4 z+jpW{#1;wL$5~0iN!Y++}iYHc->b zeg9&x1}aSgFd>KH7!2PG-mpDLrW8zNWBx(_vHKT8wxvE3HF*Qryr<>$crBH90cP-K z00 zdXpFF+{n-HflTDx5hn76as5L#kq}=_f4?){bwQ{=1Z=s*Bkj? z8YPyaq5S*JM6Q5%n2NdXk4|V4Gk(qJ03HgzM`mR9QZst=ixkFn0V%Yo>-N=^)q`h$ z@n4<|q-V=tspSj5^uHXe-@7d=#^&Mu^eRJPvP5lP8%rsKT;HIx>zsKMQRA#2h@l2W;d>&=n94`%C(?ch1Y`evZA7ILk+ z91*Vw9uQ?VkYnxLFHP;3(zRV36FZ>8fW~HGN8CelBYHzf$+E}DwD5`$0c=c#Ew;`W z4DT8Fb`%^wN}djk>I``R9epjNTDl*N?HJ!RaSN}Ao6!?sVaVhPH_|S=AxLqETt%YA zHow|^J;07_b3l|pfi3DaV6av*G)xA=Fw!Be+H*x;%ME=PzZ63~!!`R-xCgM&hIoBF zhIfX026Ud6eGxZGx!L`TrOXK#6MzPApebY7mvJG01V9WHNr48#JLh#A6FG|=Pv0vZ z4+U^76FEMPIVSRu{=FH$C);M84|^UmzZ_qkWLl{k=iIy!zL7-c7+#E4#BOoLUIx3` zvoSAHbSh$Z6hk|Qg%~Q9VW{=`@*eyCXbI7DeC;q9p?lExb0T<$xju?1A4Vu@<}NXYtQuu^p~VmUbXjfmV~8XUG_ktgGJ`^nE6P%~;GZy3*OpUp6* zg}yj$ZPum-C$4vBrd^{0zw+qZGQt1wjD-fXDy^#F3(yky&}AxvL*D303^6IU|`?_ zIhL*8SSgdUatDd9COpR10q8KWksH({dN&svu8ez06o^o6n34<({1wQ182B;4Gu$(%6HlyC zBVu5c6;K9);hn)9P=Ew2%bqG=f>ep~%IwLd02mU4B+wVt4Vh&SKb+XL!%=CR%>Q1~zziD9y^ zQo-HOEUoM(le^|8l6?djiRyD20T%UqRDfxy{3QpK9BnuvjZEWr)lY`pY8JuU&7@cb zJ2KIpo>R3-bGtDj|LxEJ!r8ETw*25ot$yg4gJ(bYKOL;z`c48JhlBXm{b)Bgpuu`u z6qxKGqgsnXLiK~}ti^G*#gl>53h+?KxHh7^(D!{P-jD~;BLZ833BF#R0SSp(@04YS z4rK0!Z-hP(SdYwz+>6JsCjg8r$+{Q&ncNC+p|QLhHzOU({UU2Kknnh=>>kmUcH7qg zjTRhguL$W`01c#EfD70V*bJ9aEr&M*#>5$tJF|5Uzb%rg>j5SJAb=SMRLisB5S9e? zg#EcPt%ZpUsayru&Jxx3BeOx*&sB6uIm%!KAAn!Qe>Ga$vj^p7NS&URkwDg?E%Lfe z+vJfC0a&zI{-eZ50W@HER03u|%NAv$^z$Hsna>21IFD_AzgrQKyFUCmBY;wPa=M9xrKuM2zR9Q^ufL{in(|Lqdf1HtqJj}I zgcm@+mSVMl1)!m;*pnLQ*HSk*c43rnMea7(mg4u;O?1d;56iRt^RdxahZLEJv4QSGL$=WLPag zk~=`|1`~o53$`Omw-R93Pb`argS(NE#lD!#F`xrNkYHh2&&}zn@bJkUDLK3oGORl4 z7rzMiJ$>u_@QQ5TiJlP(4>fs<6fJJ?k>umw36r{-(=}-;x2Ug_axQIaSHQBFm>6du zmZL2l|45cl-I{?8muOuJ&|=RwfPt|cQ1akv*+T+D!ZF>1zASOU?}h}7juHAx03Ddt zv(IF?>>Q!ngvU}KR~p(^qUD+^-*)`9S7UI^alm52S4PCPx!mj3IELK^$k;v%@PLop z)v*}EHQ)l^LF6!|{klIzo8lRg@x1U{zzY&3_sFEzgy{i1AW=K*7IByczBdX3>4eD% zRV!m4#`$R48Rr8qBQ4F}-{oLB>@nXfug~vbUVjZB77&t>+(s!_lhTy~ZA9-HJrBdN zr6q$Ou07pGvB#=J-~V`*f>%Uq$B*O^H*>Al_nc zhGR<6=Ef#Zyw~YOu3;1qa1^+j?A)l6r~nBQsb5nmZbb*kWCQs0x+xY7*;pC0&=qpH zrV+gc0xhsvNwaEyNImq=jofXdXN{7!TI@#aHQ1J0&WGvbum)2#G(Lv{fV5iTlP|=5 zB2`Q^=TY~CD2TCbS6;tz@J~PgOJ`u@Z23NDF#m~zFZ}Ws4$i;$(&6C#WCkh>aO^z_ zaG}yF2MrssxYR01vH%pj3A}8HoXU;r>3Epf@p!;+Y-@+egYrI+zT2{&_KzU3!uNqc z1doUt-0uh5vVAX%>6-~~k-|l?7RMn5*cMn1Zk;)KCrPm0nLWq1-3`X%Q34ZcU{@ew zU}L?C)G>p4UhM|8HriM`oe5HxfKja9>@i-&`ClE3B#?%`zo*?{fO5@ z&f|mb)%5(E5)~{`FCT8NhiM*Gg~6Sx>)PDyL-K1eh$CZSpa;;}#F)x0#G46 zs=>&aS7L5=M-6(WfL7bbatyD;G5joj1xWJ!!YeT}fz>#6xMXUYUWvYu=+rlc{YhWW zg!HIogfCuaEFBxAMxBONLS#-;Y}k~%s?{@6`&vc`TLLepPrxIx(gr-BRX6`bL}?`Q6_?_{`7z+`%(v30h~%M*whq_8oYLY3H!01SPXldJsoNP3`i0a;*akK;BX(wddRYz z9g%omfR1icX%_M6!dH%dNj>%^RPo0a001BWNkleae_S=#pxbV zGC2**D+yJ4KYV6oJA5e(EaX+SA4C$fGTR{uSw#nl0FXXK_vY72&s%^0;lcT@f8*eb zzxJC4|MYXebnuy<{rQ7Wf9fB2yzj?<=$W%2`E25@cBF z5!n_dL|K$=0Ti|`?1xLXZiNvZ8P|3?CNaPo{rlir4D-%%EJZq&8}t*P@do%Ci6OZY zUKC|uFv=qvV;J@GS`N?w+mR(VH)8OG8L(lN_1eykM+H9s+q4Zn`$le+U_|`}Dy!m3 zJ79yMn*CGkYi235TZN%LGbjQk)DNR<0QY%JK_BO%30MklkW%rU0XNEauuhpG-U}WP zq+0G5S&sANvx1ocP{Jzlo;XilPos13a`2fdbH!s#JX4do|5lbldWe)OpV!U!E)S1! z4k=05<1oHD+%EU)C*&hTA=lCYuNZ#%`B&eYSJFqatML`%Vd$HK|Fj``m_COo$IFOh$!E_Z~syZ6I%_s*QXZEmQkQE;)>)O?5X&iyb+r zn$@e+t-28M;0T6inB!MEm^z=@7t;rD$snVC+;ydgr0y9};8Mx4!hbSmPcn*=XFFr(Xrq_E?o!{a8-ObtdJ{@l_J>J;} zK;Y{h1~}MH+gWxKSlC$?Mg!^8qqP3XY#;Wu^#(q;59qLUfD#7=4}=|glAf1L>FNjZ z#}8)=2rL5(3G4>9FcB)>vSX5_1ta1ztj%CTv{@ZsqW%us4okv14C$JbMJqe6!FIri zO16-6WyAY>Gk~Enzz!hZ51>)R^a>!sC$g0~MEteimt))yxm9jqzZI?Q8^V$(L*Y!y z%>Xd;i{$b{@si}{zZ>2TP20kgvVJp+?Gz%af5g@~yRjN^zpxz-uSH8cAOiq}tjql) z%fXHSh8RRK$@|sp#b{+GY0GZ$j3DW93E65$xfs|Pa2ZN_&a8_j zel3+{cN#g24+GFZ#4wCV1{ybmHPFEt85ke|X_vl+GAhW&kdrA3q-J@53|^8Pi+nx& zFUnxl(lccxoWXdtl#XTD)oS=}cwN2&WswvN=J@7Y67?+L0Z$0O54O9%=1O$gz<#JC zOFolxbBCnL8#2rpRGUM1gEeWI)rY<^F88CW`Yr#74#0DzPYqN3lz(6t0jXm)gSYmX zU|Qw^o_PlF30c)}gj{SYwQE}9)*tVDrlOGNvQS6M)TX18hmkC33M7BD0u`#`^>ZSE zE4flFmC6jo5#M(K)Vj*2(oOyS^@X8*hbidUm}(Fb=O-WB`|0Y(5989)I2uQ%h_hX$chrnZS(6AL? z;&8o#3AQ-^crsgfeLv22+%MJ(sIkX~#~St?r`HtlVfXvp02%-bKdt~70Eh#w-P!%! z1V$WeJedIuAN(JuB>|D0bpaC(6G(Y98`%5wx;yK^VEDQUq&OS$B=%*Stpl7mD0mRB zw=1u!aw_&Eu6HXj4B0^belQ`hA`Wog7oW)c!K^rVdLSuV?}rqNge*KHNU;ng*s*rj z0%QO{3rS+*6Y;xwI{*b{b$lcm z(Tn#(<9vCXy&kI-cn|=QV|-VF4N(xXBge-Bf*ec>4Jk}qUzUE8mGFajB=B3Y%?3lv z?rxfYGo)Jp4Hn{jA0%+2@+=q{kNXw&rMOBi2IGyT(#L`922eqfBFA8W1w4?hl{-$B z;utw9I1RUe5@k|qNmfqdx*n1x25#6E)*&MTbf^af(B!eiO922fGjlU!O!mBd4#JkO zFW^Ff2hT0``Br((042OQfD(WNQYZx!oXaCgP=j%T$pWCkP${?sbmnO1Tk-n27;`D4 zdVJTKj>UT9Te*m^l0xOH!E+go{>Xle))m*0hQHDPfKEwe zrbD%*HAfHTTC6xsq(C)ayYHK_u;IwWr>ThFV;K7<-fQ3Ylb=CL$~AhgeLq*W*EdZ3 zeS=9TQpOrV0#olX592MypdmFXeF$T)TR&%Lw5N|#p@yPuy`Abc5m|kN|7HZV8V2=d zmq*LX(EwPJM)5`$NV6AZ#NzdnpIx&@WzK~U1qQZIP?*9_~k%{LVDAUqc za?u1v{589Zjj;8dlq6<`rZUB6aIzB&2+uFrhdluX>4HtSQvrjt4q%hJP=Xb);Xkt< z0$>WJLqP+q3QUHA4M0W)GJ7RRVZDKgZYP6;cR6Mr9D!Du*0=w={9*^mqzb~7_! z0Ht6@U{Dl@6brBWBme}!1dw6(VLOyn+1m`Jgl#+r<^pp#V8oxh8Qc9eVNM<;;F3Ve z_QL=o00{>f?+3F1vx512XFa?e*&FgC*4t}lVDd2h8(Yb2o_!)~;t5HhN4Jr(g*hES zvz2@x#QrL?LqgW>!(cA9rRDs|9l3uuJR+W!l>i2kFBS?F0U|slg(1N54R%LTF7#TnTAckmQ7K#%YT2;aY zNU&qsppDdvG%c0x*Z>O{VIanXlD#C?VjaMQ0b5g-03!gRY{Xs_Q~Yw6>lyGlH_pe6 z*Vh9`DUg5xPyj&0aE>$nRsar4_(+t>W_T%xgwcQvK{f?zktI;er9q$L@miDs0z?$J zWPi>|DLLILA`Zh`m>dPqD`pR!Hj7oXkFxNaSuhH_2R57|Oso78%?)%YTeXL@}BO-t`!K#d> zohUbKdL4#h&~1UJ{y5&3DR!psN1sD01#KSaJ1%oH30mrbdlYHgj|bB#K6Vg^R$bz! zg@|Q8Omvo{vWJeAi8SQHF+8Z7ec$rq3Q1$hv^ek^Hi@3m{B@|XZ%vd2Wc zD1D>FT_sgT+j|$Rg#i@@D=O{E$L~tkA_JiY$Y5XClY$|sm=RbF?l*>de?6pE6|0lC zWpI$rCo?5``IrO10l?9TbSg0y1MGwVija0~mn=wPH(*mjHa3=Tl`M+@9%Vyp;LVb) z&0s%ZPn@AhQmZV_dK`cTV9;+R5VI9Pgk!M}0E5@vPe5QtqIDJUAmIXZupev-`#B&H zmV<3wl4l{kvSD8z!;e?rf8G$z?n)gZ!>3)oBapj&X z@(jzlbWsfRn&1V%@z=Q`ewCZzHF+}@*c1Sbn(FaQ;OPL!@O}Uh$c}PSm_!a|N!m?G zni5$Rpd?2pUzJwztHDC3*QJ(cWoG26q?5fF@ydV*7%6^Be1{oeUJU@5_gxh!-J9|K zX-5qE=g0DS<`~|IvcRzfYnY5ror+VPGRvybxMiX)HShhnx1z}w48@h#k>_BT&m6R( zcl*B7uDAL%>SMH+4o!#}F%^A3DNX7dX<+RV$iDD*OvRHWTt}GR=^-e z_mPK$`wGHEu2o2`1hh2V>ga#rHWhy|Gej=d6KWI)lCY)Lxa;4-YuEW2_^ zmV%M}Cn4ox9o`N=2=Xlj9J`ybURf1;;Ta*?cQ++v;SIq6PY=odMk&wAK<3?843K1#`Mco{!8^iZkMCWLs9wAvnAh=u za4ZKk?*}uoelyq+WL_K#&_JZHvm`5VYtIG9C}3fMsd$n+8?YuDiCOXEBIQbPyhyqV zY1pk`LN)|Yux<1{5=b&Ivc4SPgBV~1I&PX5d6pXC=`TU%MM@W`TYx97h)X1EmVCL? zDoLP_SaH={*%p;nDRYsTikqdWU9ZyX6@7XuvbRAD?Ho5tvaSc)QcIZ_wEgo~jL#&$ zzs1s{0$|C0iEou&`v&^l&p2#e2<1o#3r`YpMPD*Sg=r)`TYZTrl?U|N(l=< zQ7yqjL^{?`5AuCKPV7>40~uHSUG!=muly$B(J0frB*{y?9ogvJXTVVciY|O1*$-36 zyX>6RM^gDyhQcG#XCpg6qLgF>(}6TA@Bja^_omBjBuTWU-v8m|$5_|x+ihi~sg-Jq zk^m9Jnh~5vDv!tK9v%s*O0{;$j79>;4GSqhaW;BPE|6`J0g?a1ydz*j%BcYfc|O3R zG&$D6fe_oioZ9gV0FFE&Vm8Q*K1~s^#DJ}(y(swt4%wv&aLg_LlOHi zcZa-bUJ+wNma;*a)a5CeqkB7FWFAic-Ix&> z+x0bjWB$Ju89ZMvhF}`mB_}e*<^OGiIhhN|f5b3oK(@Y>Z(5YBK!wh6-A7<*9;CnW ziCaIXGlhv#OoF0$ebku}C1W}V26#)I>iRdnX;L-4K4Lt!NJ-OcA+RH`A<#$}mE?3f zwgLkL`1D$s?CP5)7qh^Duh4_@-G2edG^Mef`S2f-fu6Ijg_kiSt48WXdmn*GjjM{K zr^OP-VAoN>3=u$`uyrM{Os^tRMG z^4gS}X-O}MF)p9cBtLo%bu@_o*?@J{nUTcc(&sS*5W(+JYZ)^x;rBBuJRCASWH&|t zs$&wToK?wuCG3isCZALlspyTw^o6fa8*%ULL?;99#z(n4V56y@!=HvRad?vF@ z3#>?FNGPkKZ^Zl~i`0tjhI}JtWb{*tzjK~B239rZku*zy<$9mk56Q1Ki{ItL|7lEzC1%~V4ic@H zKO(hD-Vw>B1XOgN_7U4)@xuQAtMXGDm?iNsqw`l@eq_Foe>FyffI)*h*$(sqw(FJ{7w@?W?8HT)|HiY$UanMK}y1^LE%+vj5Tmlt(;lujCOVGu7}?}z|F*SH=* z2PJ$06-?#=`(l2R$k4>w082fCasiMi13yRuCN#nKUXaO4uACR--25N9f7#Z29Rea` zU}$cKbj$$=0GvKTck=#^c-tA?4?f!W%9e;RG2h42!k9c7TVlSDX_0LyIco+QkXS|e zm4jngR+2%gouq5Ca83yjCiw%p@*9d`|2oR_Wk^SlOhl#z8)?9bMgzYRyY#q* zU9H}0@Rxst9+S`ZEqvt*9W_vkB@r00A^+bEC(X#!Sa#IBFgUvs^G zZbIi^LDOfpQVEdYlW>xbfVI`(M81@kx;;Oqrr=CM6lE=x1-WuVn&$_r@oQ{I_xK8% zk`DeWQl;$Nb){otJZ#r>R;QMf$rvSJ(T6fl6)SzLZIVh>Zxu!ko6^S&NMEj4hpXz@ z(3|#V5F{k+;n`=rlm3yh7+rt(-Exdn$$@!fF>2^P88L`8BwfYd@eGi3ztf%UtA=*; z{`v6liBI3^P3N}HH023h+24^Mr>Y4<;X6aHcoLY7!ep!H@5p=}G2U122@|sjlIS7f zYn*_JtV_h6<1)mT>DV{M6Od#c4l}VI6Vp0D1po;;L7Fsc>J0BKed`qDVf$ck4>7(5 zT)=!}fWp|5sXeyHrz#l|m%z1OVt%LQ3t{Xp61D6x^QbJ0i6VK)Vh9k}ZKPsJx6-1f#m-S~R-HR4suIrgn+BkW^~|jjY!T>cR?t;;7O$(2Bh{36%E{p0J_#xCCnzl#}RCx}|p1w6!(T))el zeuN3${2}+AT@ff@bg&Y;=mnAN%K*y{zRg{RcL5Ty8k?`1yi5#9vqyoDw!Q-0S-Ie&{|OOV3Au zQP-|(wAb`s?fp{HnHU@0CxA$B7{LwWp8xy(RbEt9(umGc8dGeTu8B-3)4y~0>ywFU zI+*3sqbXgHU-N8ajnOPD?Bj3i&=j7@wCW4ll{#WLUcgqAm6AVafCd;VgBALo6{x+0 z>v<)vxZXCSr`I)-m?4%oyFT|=DXY@1G1x2}i%|yy?@L<2>#hEjfy}X{vcA%FV${sH z6B&t6J~@nOb}_~^XEs7GMf&{0HFN+dvM0&0TybRA(Nf%F`dwf12VyDf%9%*7G$yYh7?xk|}dl2!?@a63t~n7SqT)fL1@hNb%jf*crH4D#3Q zErn|tjs>C)3uyST4Et9gA<%NXYcek~8j1(z;3~Nmr8?JvSdqX?)`|>?hFlHQ^qpuh zcVObHcAS|t`bYDFNZzElSq;oGZ);^=L%0TRU4sUC4d2!x{*UFo___`DDt|P9@$dG! z2v9}F#iUgK@Bl+eWR$H5qzFuqL1IFgo|Ac3``gHXEj$g&BzW)`?>idCN z{qQT9)en$jy~M137@O6_W?UaTY+zP@YAIS~T90P+-OJ7DG^QUnzl~Y_@ZKBJohKwS zt8agXS^ZsNR)1)HA78|*zG=scX7v*~NytddfZ?a+B@yeP1g%?Ub@@uvL82l=GpjE@ zUqQk4bz??;6|*{y`^aRh*X{XAYNhXNgr}F~0Dz&=M3y$H!$crREQxLlm~c>5dX{=e zRG>)NmjDbI6aoV=AT&`65a@gYB#IA~OpO3QQY5kgL$mr<9&898P`;(-BXA*5KsH0y zM&M)s<125f7n>r6f}Jg7O627b0MWK~{r~Wx8&+CB)J;-D&Q3fY{4I0a#a&n;D1tbl>r(`pkl`eP4F_` z{~;t-C3sFe=vkFq+4WpnZwQ!?FC)2{0>JnJk}EPPv2#Q}o8$`5_h(D4cB$m511K>T zSkb^_Oz7_@t%JnkZ!^i2w!0pKk}I()^pu#aYww%ZJIU1vObPCHlB*{#wQ`ax^o~&K zb=mnAb|<-dT6`++d~x9=ct{93$f{V;Ai)PbAQPI|DY;U!`u@I2s%}ZH6zyx~_lE{( zt_+D49WKCR?)zBeSxUzeOY-z%10XCoOeI%nWEW#He+K|L-M7vW0g&x$&wyxoBn(k|n?B7*5F5#Z2v)(P^RkCD|mzJ%mT49*`(awYJi7+qbOe!k{TK9>Q>w0XRCD+UfAlK=o907*naRQ!M1B)Cvm_?#qa-6}lH z#48-P#O=a!EfEB;_>c@qls3^=?#?keb9)0JK6R_}l92f!@aTF-if1>L?M;GZ zz#*9DCD%G1JhP$u1$fx!0S`%C0EKH$pPCHI`A7&f2z*XYt{Bl7<_S2&kX-g2m?$la zW_E!Pf)WA(12_SIFm+2H!Pt>UpOSUjw6a2NtH+eCB^E`j$ZT@owf+#LZz-Zz-_P47 z2_pldo`k4SophzG@ zMU4hj0DKe|Y>dOV4I~`{fU)-WuiMWWV%6v_z(6^a24=A*T(vjm<%c%FYxoyP5>Sym zN~`;1Gc0}UtJZHK=0>alJ47tq>kh}hYl&kT=2;4fxY|$tnXmAEeBIb00gMk{h14m? zq9n~C3!*4w0R&3UBqMv2!TlRt=W^c7a(oq6>iXy4fdA98R05aR#}>cIt4=yqZfo3Y zOj=qqqbGX)kuJT{y^n^sKa?+}u0-P2l_9gH4cUMDQvLwGlsNDLY>y*mS9~c+l=ZC; zgl7P!>@)J&zLd3S+{j*L$DAh5Uc}carnmhOeJM<&(sKgnaID3`im<>?;KMu{p?$r? zV#Cbq5!1AOmMk^Z+HKYBdmnb0CeXE^)n%>2Pcc z0EtV*D&C8t{SBDx(JONB?1#K21~yPYxTIk@prPAhNtpI!(y_h&`5cVs22c(ya#sVj z?zcXXT{E@QPjY2NbpHsb2&5baWrm6XzJw$!NwZ{@rysmeRCTa>&FkNvgn+6t%lw;(o8Oy)v&G!?E~I=A^A38$h{kBQyG(n)Pi1AO;qK_e5-o zzT_wQ__|5DD0P}ymA4BRz`3?yDI}HRa4(sZrE`7VZXfP`U0;e)ySDI+=zc3fyldZ0 z68CLmSahtz_wD{UA?*8Rco#^K$y$T@OMEG_bm`wM#YyZ(Y<&OHz7(CGtb{QycMVhs z)chP@%Jp?nhm637z|stkUbokVtdq_u;Gx$^07<}dPQUu<)B6y8ExT{ggwCOz2H3)M zo$3ekMAj007H+T`tiZ2n+dD8YSRL)IjS;PbIM@!DlyM{c$oR|GDqpR>Aw#M!=p(5m zk&0EflJ6sI$1Cuoc-qqWHcIX>A&|UbkZ!B>#Q`QCi(3cGPaVeg*0uhWR6+q zQ-kLu`b6S+^f}_~8aq1%?dch-mp!k@j*O&uk@4w1gBg3c=7r&B39_jO3hUswsSGMJ z=mU79fQCU6(OUxG62mGSV5F?+mfx-V9uWf`1RRoG88|)X>`C-_1cQ1P?Mom+Sr}QB z@`()*@UQ`%o{f>Y-1UF>HggxzYew(@NCpXAjbSSW4JBgtEj7%MBkIJ3@eR{gOXK4eCd*A&l&mhvc$t&FlvNo4GsWKaK4; zJ~S_g9#^!lw&TxNkZ}bS0x|RL*Nw4|&qT4l`jS-2JSIOjmgKs>j-hP~NGv9IMF@+% zkfiHy=NS;TuG;{A_X*GlFfgG@(k^;cwg4g5@b7#gl$D`m&>78HKIr@& zQ6g_yl`SHFu)0o?dlpi zJTwWFrFFe;5-iEC==rb$!#53V9Mx%Z-+U(m7y=_#P@(wVS&pTZ|NngYQnJ?d=j(S# zx30I38tC6PABemlGLK)k6~i%~@2>ZYeEhaC5!=u)GBYTzz4?6}z+X2xm%xkUS~R7r z98nT4`9c^8%wj{f!3!wJz^;B1b%>A|5gQ_A<$&W0h!E`1d!Xww@5<}I#N4-JF0lw^ z+}AO__GwXKP@-vE%!wphVgTI619={m(+2xy3bnxDg6E2dO(83P*(SpK^OAh6`}dJMhK z|2@ttt}3VhQLn7%$5f-5>AlmI=5;AZ9ZFnoq#7mCs(z3iORBmdt9W3O8+~h1Om{<0 zG%|tLa&yR!=c$8~s5ME}7y#s}^ikqf1`)ZP5q~8$>Lq@bQR-M)@)(%7k}zK}S*w&A z&GngdkOh9DMsffg10#ulDT0NLX-Q>qQyP9y6ED-qFV%fsLXSw4TDo$=#K7LQqKAb7 zXHMt25|39}a7pljoDe7wDHQ&$n<9LxLI_^IrK4^6Bo5D*95N-iE zdR_=PEBr9IA$^58NZ#M_0<(T8gS4es*cm@pFJa)GZ$w}ZWqn^d0=uq$t~-;yi@@%U z`Yz^onmYE-fr4oo{*FdJRtAvl+Onqh#JC=>(}2PN6n5-LlwC!CMr6xmFqiai#EN8+ zENmM)NEq*1qM00R=S9)H3qxXtbpfo*6GD%PKnUB`O)dq%LvX?(M7E!s6zl|6C4djR zhQ^#kR>nv8?!7OCg@!s0;(cjApJRN%g3z>XU`75A*GY0{EQkODC0PU;jPDgtVGhY#?JoO~CFfQZ-;$+ei8bpIXqxnBFo;4N0?4S+1ey;ko9M9i;%;>E*V^I~Z5*YgmYL;2Wztgrk&O#Tv!A|HeR zn=vf^Z0v{RV3K(WfT$zI8tCsJ?fRz4&E!?lbJe+IQWx0ReBEShF^E9#gM1$bQV6!b zZGIhs8NGh9H0!Q0M|{r(YGwxH4AUqz@Kr;Oz%A~b?7_D&e_M`mO=dO z^a4Y_bnO3Y@wWr>`VCpt@198ZqWIe+k*tfferf#eS|ZsOT15D*;&0*E=s?^weSRVt zj!`qo*3gt+Qa?(Kg@%+r1z(4gMHSzr;mq%)?(o?-6mUNGOS%M_oB4wy6th>8`^E)KQ&1e zrCItCAW^@F4C=;!oLaG=Bw7L>1RuITmL9Srglx(QUJxZ-O*=2wlFUnNhk%B_z-iOi z4R(jjEXZ2`m3Kak>wp$?`9Ir;;=iL*uM_L_ScB2NQkzS>R{O$)jkpu1O+X?TZWt>`BFEbHqN? zm~Iu%iIggu$JamWy+6zaMg+zqMgxzwtC^Q&7zJL_<8{xiB!+b+Wtq<-NU=u#5%h$( zDB$pSrDs&8Uh-8D`5OR?u{bd`i!2D(4l}ZI$Tz?M*1-T(^Mq7qD39AfQbp#)NwB6Q znpfav-#jEVr$?i@lW8sIo0F;z&9Lsu6ZbH@?;F5iYr4P+y&zyin(S)dWL{(^#Ds{Q zV1v3E&}m4I;AZYBfk%Y?6O(yuy=;qMhs?)m(^-Yn3>o=c=khVh}e`plCusE4IB|*NRGuMEy=GGxvRoK^@&h!B@kf} ztv3y{NP-okd5uZgGa|$~P^lR|C7H zcR`l*;a{z=QOuE~PL?+HjR$AeApe7Z4J8>nEb=Zr7yJHQ0|oPY2EU0C$&^0E=jCK= z-?Z0@oh$-q0+a%pjAIr66o}FLq}NN)&{Y3rotV~pMEV7bq@XYWn&(l=`|ssd0mCth*d_b(yrg3_qc}|K6IcYav9niX z$aq9a768!adsWUJlq?<+XM&HitjL7KSYOAGz^9?@_?;z*)5$=I0~@+6hD6{ZFgg`R zaqm^xd-FQMijHw^ogg(v?Xv&ldhC#%HM1WsO$%S<-+)=Y>j()zh2@33p9P7ObBV=p zUJ`%{rDh#AFsY+IMDi|yASG>SJ4&b|%bF!uka|&SMZXARdj*yxmr^2@TGx+3uB9)N zS8YOb`dfc)OUPPE3hjCyd^0<@BRe8yg>C6}d($F$WoEb5bTp}p6%m`VzeAGN!f-qx zW>+!3iuYA~uNVyh{>zIZ9~4mi;lt6 zE)ALHRl#v&XxA~-;4Vqm?z=X4ZWoqP~|%Ma~w$@X*%h7gd|(sPyEjO>V>r+}2g1$1m(gL+{$ zUwa_4e1GNsqh8aUmy*h{vecs%+gtPF+?2>n{a}_1V-bKbA~vp&I`2qeP@ET}j8;^~ za-&SsU!#X2dEK&o-M}6rU=!(5Cuw?q9?G9a;OZqHVBHIogVeR_iD_2d?Hg%ab%ik^ z5Q*`{H3LL9p5L0EW(3r-bh&g`4o3JFC0Ql1wyYq~0hux`1iTf2-LVlF^Amyn)IVo3 zC9&=Oc@)vzF-a>jwKQR@81#8J%Z?EMoA0(63R`!oa|! zlpxn7_E$>r{40a&LiUapxMM7h{4DAyb3COb2ju54G&8BaZ8BV7@nm7JT=0mb8 zi~1F#v0sw3whd(Hadw6{1N_#vs@rz^))8{v^{h!u)siQKk-d^=Nv5S}Uojd}h~tg1 zycbBL1X>vTD>lUvx88adMB7+G*0%M7$egZJEg9SCD^a7n^@gBZMDnTY*Aa3p_J=UO zclM0@)chVw#u8I9ORly!&(bquiCo*pn8?U31|+6#$!j9;BJ;aqegzK1R6Kp}+tww^ zk}re?bTzh%5s@^Dy(F%={k}cUB&}KV|GEJm4gCTuTilK@yjoQkSdg!TtN#KSEIHIr zY^(A2jU^BekatAqI^6kVQ(DBhVQqIrTrmf8%FfI`^NnW&Y`DJ%u(|g=Cp)k=@?=

#ev@)Gf><1&01x5%e3G^Hw`@zfU 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

CR?lqNERBQR04>4_Q*aG~MLX*&%N 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%0D?-p?xTN5cALfa|HNp+!xQlX$R9QXU(W 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%0AaF=lokFwrm?U7rJb3Vis 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 ZSqi<5=y2dC>Vcx%i4W0e&i~{ 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 IM6N<$f-bt!OaK4? From 02e53c86e9a8e66b536494f9456c946f6db861e8 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 5 Dec 2025 09:39:04 +0100 Subject: [PATCH 21/28] Applied some more reviews --- docs/book/getting-started/zenml-pro/README.md | 6 +++--- .../zenml-pro/deployments-overview.md | 13 ++++++++++--- .../getting-started/zenml-pro/workload-managers.md | 8 +++++--- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index 9f15f52f353..756a5853045 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -35,8 +35,8 @@ To get access to ZenML Pro, [book a call](https://www.zenml.io/book-your-demo). | **User Management** | Single-user mode | Multi-user support with [SSO](self-hosted.md#identity-provider), [organizations](organization.md), and [teams](teams.md) | | **Access Control** | No RBAC | Full [role-based access control](roles.md) with customizable permissions | | **Multi-tenancy** | No workspaces/projects | [Workspaces](workspaces.md) and [projects](projects.md) for team and resource isolation | -| **Dashboard** | Basic pipeline and run visualization | Pro dashboard with [Model Control Plane](https://docs.zenml.io/concepts/models), [Artifact Control Plane](https://docs.zenml.io/concepts/artifacts), and comparison views | -| **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the dashboard, manage schedules via UI, [triggers](https://docs.zenml.io/concepts/triggers) | +| **ZenML Pro UI** | Basic pipeline and run visualization | Pro UI with [Model Control Plane](https://docs.zenml.io/concepts/models), [Artifact Control Plane](https://docs.zenml.io/concepts/artifacts), and comparison views | +| **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the UI, manage schedules through the UI, [triggers](https://docs.zenml.io/concepts/triggers) | | **Stack Configuration** | User-managed stacks | Advanced stack configurations with workspace/project-level restrictions for platform teams | | **Security** | Community updates | Prioritized security patches, SOC 2 and ISO 27001 certification | | **Deployment** | Self-hosted only | [SaaS](#saas-deployment), [Hybrid SaaS](#hybrid-saas-deployment), or [Full On-Prem](#full-on-prem-deployment) options | @@ -63,4 +63,4 @@ For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios) ## Pro Feature Details -
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacespro-projects.pngprojects.md
Workload ManagersEnable running pipelines from the dashboardpro-workload-managers.pngworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Full On-Prem deploymentspro-self-host.pngself-hosted.md
+
WorkspacesIsolated environments for teams and projectspro-workspaces.pngworkspaces.md
OrganizationsTop-level entity for managing users and teamspro-organizations.pngorganization.md
TeamsGroup users for simplified access managementpro-teams.pngteams.md
RolesCustomizable role-based access controlpro-roles.pngroles.md
ProjectsOrganize work within workspacespro-projects.pngprojects.md
Workload ManagersEnable running pipelines from the ZenML Pro UIpro-workload-managers.pngworkload-managers.md
Deployment OptionsSaaS, Hybrid, or Full On-Prem deploymentspro-self-host.pngself-hosted.md
diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index fb8fefc3531..b99d1d867c0 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -24,13 +24,18 @@ ZenML Pro offers three flexible deployment options to match your organization's |-------------------|------|-------------|------------| | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Pipeline/ Artifact Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | -| **Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | +| **ZenML Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | +| **ZenML Pro UI** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | | **RBAC** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | | **Compute & Data** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | | **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | | **Maintenance** | Fully managed | Partially managed (workspace maintenance required) | Customer managed | | **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and on-premises control | +{% hint style="info" %} +In all of these cases the client sdk that you pip install into your development environment is the same one found here: https://pypi.org/project/zenml/ +{% endhint %} + ## Which Scenario is Right for You? ### SaaS Deployment @@ -57,8 +62,9 @@ Choose **SaaS** if you want to get started immediately with zero infrastructure Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure while benefiting from centralized user management. **What runs where:** -- ZenML Management Plane: ZenML infrastructure -- ZenML Server: Your infrastructure +- ZenML Control Plane: ZenML infrastructure +- ZenML Pro UI: ZenML infrastructure +- ZenML Pro Server: Your infrastructure - RBAC: ZenML infrastructure - Run metadata: Your infrastructure - Compute and Data: [Your infrastructure](https://docs.zenml.io/stacks) @@ -67,6 +73,7 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure - 🔐 Metadata stays in your infrastructure - 👥 Centralized user management - ⚖️ Balance of control and convenience +- 🏢 Control plane and UI fully maintained and patched by ZenML - ✅ Day 1 production ready **Ideal for:** Organizations with security policies requiring metadata sovereignty, teams wanting simplified identity management without full infrastructure control. diff --git a/docs/book/getting-started/zenml-pro/workload-managers.md b/docs/book/getting-started/zenml-pro/workload-managers.md index 23160f2f571..f2620062db0 100644 --- a/docs/book/getting-started/zenml-pro/workload-managers.md +++ b/docs/book/getting-started/zenml-pro/workload-managers.md @@ -1,13 +1,15 @@ --- -description: Understand workload managers and how they enable running pipelines from the dashboard. +description: Understand workload managers and how they enable running pipelines from the ZenML Pro UI. icon: microchip --- # Workload Managers -Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the dashboard by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. +Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the ZenML Pro UI by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. +{% hint style="info" %} This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Full On-Prem). +{% endhint %} ## Architecture @@ -15,7 +17,7 @@ The ZenML Pro server container includes workload manager implementations. You co ### Execution Flow -1. **User triggers a snapshot from the dashboard**: You select a pipeline snapshot and click "Run" in the ZenML Cloud interface. +1. **User triggers a snapshot from the ZenML Pro UI**: You select a pipeline snapshot and click "Run" 2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Full On-Prem) receives the execution request. 3. **Workload manager implementation handles orchestration**: The configured workload manager implementation (Kubernetes, AWS, or GCP) translates the request into infrastructure-specific commands. 4. **Runner pod/task is created**: The workload manager creates a Kubernetes pod, ECS task, or equivalent compute unit on your infrastructure. From 2d32d1215e2816c969b61acdf40dab49b6e0b905 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 5 Dec 2025 09:56:53 +0100 Subject: [PATCH 22/28] Add actual docker image URI --- docs/book/getting-started/zenml-pro/README.md | 2 +- .../zenml-pro/deployments-overview.md | 2 +- .../zenml-pro/on-prem-deployment-helm.md | 29 +++++++++++++------ 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index 756a5853045..4c2d727bd6c 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -35,7 +35,7 @@ To get access to ZenML Pro, [book a call](https://www.zenml.io/book-your-demo). | **User Management** | Single-user mode | Multi-user support with [SSO](self-hosted.md#identity-provider), [organizations](organization.md), and [teams](teams.md) | | **Access Control** | No RBAC | Full [role-based access control](roles.md) with customizable permissions | | **Multi-tenancy** | No workspaces/projects | [Workspaces](workspaces.md) and [projects](projects.md) for team and resource isolation | -| **ZenML Pro UI** | Basic pipeline and run visualization | Pro UI with [Model Control Plane](https://docs.zenml.io/concepts/models), [Artifact Control Plane](https://docs.zenml.io/concepts/artifacts), and comparison views | +| **ZenML Web UI** | Basic pipeline and run visualization | Pro UI with [Model Control Plane](https://docs.zenml.io/concepts/models), [Artifact Control Plane](https://docs.zenml.io/concepts/artifacts), and comparison views | | **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the UI, manage schedules through the UI, [triggers](https://docs.zenml.io/concepts/triggers) | | **Stack Configuration** | User-managed stacks | Advanced stack configurations with workspace/project-level restrictions for platform teams | | **Security** | Community updates | Prioritized security patches, SOC 2 and ISO 27001 certification | diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index b99d1d867c0..ebe5cd1faf0 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -170,7 +170,7 @@ All ZenML Pro deployments include: For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. -## Running Pipelines from the Dashboard +## Running Pipelines from the web UI All deployment scenarios support running pipeline snapshots from the dashboard through [workload managers](workload-managers.md). Workload managers are built into the ZenML Pro server and can be configured to orchestrate pipeline execution on your Kubernetes cluster, AWS ECS, or GCP infrastructure. diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md index bd1fe2a1ddf..331cf321e2d 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md @@ -100,13 +100,21 @@ On a machine with internet access and access to the ZenML Pro container registri 2. Pull all required images: - **Pro Control Plane images:** - - `zenml-pro-api:` - - `zenml-pro-dashboard:` + - `715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api:` + - `715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard:` - **Workspace Server image:** - - `zenml-pro-server:` + - `715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:` - **Client image (for pipelines):** - `zenmldocker/zenml:` + Example pull commands: + ```bash + docker pull 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api: + docker pull 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard: + docker pull 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server: + docker pull zenmldocker/zenml: + ``` + 3. Tag images with your internal registry: ``` internal-registry.mycompany.com/zenml/zenml-pro-api:version @@ -116,8 +124,11 @@ On a machine with internet access and access to the ZenML Pro container registri ``` 4. Save images to tar files for transfer: - ``` - docker save > zenml-image.tar + ```bash + docker save 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api: > zenml-pro-api.tar + docker save 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard: > zenml-pro-dashboard.tar + docker save 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server: > zenml-pro-server.tar + docker save zenmldocker/zenml: > zenml-client.tar ``` ### 1.2 Download Helm Charts @@ -173,10 +184,10 @@ In your air-gapped environment, load the images: 2. Tag images for your internal registry: ``` - docker tag zenml-pro-api:version internal-registry.mycompany.com/zenml/zenml-pro-api:version - docker tag zenml-pro-dashboard:version internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version - docker tag zenml-pro-server:version internal-registry.mycompany.com/zenml/zenml-pro-server:version - docker tag zenml:version internal-registry.mycompany.com/zenml/zenml:version + docker tag 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api:version internal-registry.mycompany.com/zenml/zenml-pro-api:version + docker tag 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard:version internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + docker tag 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:version internal-registry.mycompany.com/zenml/zenml-pro-server:version + docker tag zenmldocker/zenml:version internal-registry.mycompany.com/zenml/zenml:version ``` 3. Push images to your internal registry: From 187b488ad21974cf43dfb64930697a4d571e8c60 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Fri, 5 Dec 2025 10:40:18 +0100 Subject: [PATCH 23/28] Applied Alex's review --- docs/book/getting-started/zenml-pro/README.md | 6 +- .../zenml-pro/deployments-overview.md | 22 +- .../zenml-pro/hybrid-deployment-ecs.md | 16 +- .../zenml-pro/hybrid-deployment-helm.md | 54 +- .../zenml-pro/hybrid-deployment.md | 6 +- .../zenml-pro/on-prem-deployment-helm.md | 82 +- .../zenml-pro/saas-deployment.md | 6 +- .../zenml-pro/self-hosted-deployment-helm.md | 863 ++++++++++++++++++ ...eployment.md => self-hosted-deployment.md} | 34 +- .../getting-started/zenml-pro/self-hosted.md | 2 +- docs/book/getting-started/zenml-pro/toc.md | 4 +- .../zenml-pro/workload-managers.md | 18 +- 12 files changed, 1011 insertions(+), 102 deletions(-) create mode 100644 docs/book/getting-started/zenml-pro/self-hosted-deployment-helm.md rename docs/book/getting-started/zenml-pro/{on-prem-deployment.md => self-hosted-deployment.md} (86%) diff --git a/docs/book/getting-started/zenml-pro/README.md b/docs/book/getting-started/zenml-pro/README.md index 4c2d727bd6c..0efa96f445e 100644 --- a/docs/book/getting-started/zenml-pro/README.md +++ b/docs/book/getting-started/zenml-pro/README.md @@ -39,14 +39,14 @@ To get access to ZenML Pro, [book a call](https://www.zenml.io/book-your-demo). | **Pipeline Execution** | Run pipelines via SDK/CLI | Run pipelines from the UI, manage schedules through the UI, [triggers](https://docs.zenml.io/concepts/triggers) | | **Stack Configuration** | User-managed stacks | Advanced stack configurations with workspace/project-level restrictions for platform teams | | **Security** | Community updates | Prioritized security patches, SOC 2 and ISO 27001 certification | -| **Deployment** | Self-hosted only | [SaaS](#saas-deployment), [Hybrid SaaS](#hybrid-saas-deployment), or [Full On-Prem](#full-on-prem-deployment) options | +| **Deployment** | Self-hosted only | [SaaS](#saas-deployment), [Hybrid SaaS](#hybrid-saas-deployment), or [Self-hosted](#self-hosted-deployment) options | | **Support** | Community support | Professional support included (SaaS deployments) | | **Reporting** | Basic run tracking | Advanced usage reports and analytics | | **Core Features** | ✅ Run pipelines on stacks
✅ Full observability over runs
✅ Artifact tracking
✅ Model versioning | ✅ All OSS features
✅ [Run Snapshots](https://docs.zenml.io/concepts/snapshots)
✅ Enhanced filtering and search | ## Deployment Scenarios -ZenML Pro offers three flexible deployment options to match your organization's needs: **SaaS**, **Hybrid**, and **Full On-Prem**. +ZenML Pro offers three flexible deployment options to match your organization's needs: **SaaS**, **Hybrid**, and **Self-hosted**. [Explore all deployment scenarios →](deployments-overview.md) @@ -59,7 +59,7 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Self-hosted scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Pro Feature Details diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index ebe5cd1faf0..6275c1cb703 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -20,7 +20,7 @@ ZenML Pro offers three flexible deployment options to match your organization's ## Quick Comparison -| Deployment Aspect | SaaS | Hybrid SaaS | Full On-Prem | +| Deployment Aspect | SaaS | Hybrid SaaS | Self-hosted | |-------------------|------|-------------|------------| | **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | | **Pipeline/ Artifact Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | @@ -80,9 +80,9 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure [Learn more about Hybrid deployment →](hybrid-deployment.md) -### Full On-Prem Deployment +### Self-hosted Deployment -Choose **Full On-Prem** if you need complete control with no external dependencies. +Choose **Self-hosted** if you need complete control with no external dependencies. **What runs where:** - All components: [Your infrastructure](https://docs.zenml.io/stacks) (completely isolated) @@ -95,7 +95,7 @@ Choose **Full On-Prem** if you need complete control with no external dependenci **Ideal for:** Regulated industries (healthcare, finance, defense), government organizations, enterprises with strict data residency requirements, environments requiring offline operation. -[Learn more about Full On-Prem deployment →](air-gapped-deployment.md) +[Learn more about Self-hosted deployment →](self-hosted-deployment.md) ## Common Pipeline Execution Data Flow @@ -133,7 +133,7 @@ All three deployment scenarios follow a similar pipeline execution pattern, with **Hybrid**: Metadata and control plane are split — authentication/RBAC happens at ZenML control plane, but all run metadata, artifacts, and compute stay in your infrastructure. -**Full On-Prem**: All components (control plane, metadata, authentication, compute) run entirely within your infrastructure with zero external dependencies. +**Self-hosted**: All components (control plane, metadata, authentication, compute) run entirely within your infrastructure with zero external dependencies. ## Making Your Choice @@ -142,22 +142,22 @@ Consider these factors when deciding: 1. **Data Location Requirements**: Where must your ML metadata and run data reside? - Cloud-hosted is acceptable → **SaaS** - Must stay in your infrastructure → **Hybrid** - - Must be completely isolated on-premises → **Full On-Prem** + - Must be completely isolated on-premises → **Self-hosted** 2. **Infrastructure Complexity**: How much infrastructure control do you want? - Minimal → **SaaS** - Moderate → **Hybrid** - - Full control → **Full On-Prem** + - Full control → **Self-hosted** 3. **Time to Value**: How quickly do you need to be productive? - Within 1 hour → **SaaS** - Within 4 hours → **Hybrid** - - Within 8 hours (or longer planning period) → **Full On-Prem** + - Within 8 hours (or longer planning period) → **Self-hosted** 4. **Compliance Requirements**: What regulations apply to your organization? - General business → **SaaS** - Data residency rules → **Hybrid** - - Strict isolation requirements → **Full On-Prem** + - Strict isolation requirements → **Self-hosted** ## Security & Compliance @@ -168,7 +168,7 @@ All ZenML Pro deployments include: - ✅ **Vulnerability Assessment Reports** available on request - ✅ **Software Bill of Materials (SBOM)** available on request -For software deployed on your infrastructure (Hybrid and Full On-Prem scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. +For software deployed on your infrastructure (Hybrid and Self-hosted scenarios), ZenML provides comprehensive security documentation to support your compliance requirements. ## Running Pipelines from the web UI @@ -180,7 +180,7 @@ Learn more: [Understanding Workload Managers](workload-managers.md) - **Ready to start?** [Choose SaaS Deployment](saas-deployment.md) - **Need metadata control?** [Set up Hybrid Deployment](hybrid-deployment.md) -- **Require complete isolation?** [Configure Full On-Prem Deployment](air-gapped-deployment.md) +- **Require complete isolation?** [Configure Self-hosted Deployment](self-hosted-deployment.md) - **Deploying on your own infrastructure?** [See Self-hosted Deployment Guide](self-hosted.md) - **Want to run pipelines from the dashboard?** [Configure Workload Managers](workload-managers.md) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md index 0c1a1f84190..ef356f54f6f 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md @@ -56,10 +56,10 @@ Create three security groups: 2. **ECS Security Group** - Inbound: HTTP (8000) from the ALB security group - Outbound: HTTPS (443) to `0.0.0.0/0` (for ZenML Cloud access) - - Outbound: TCP (3306 for MySQL or 5432 for PostgreSQL) to the RDS security group + - Outbound: TCP (3306 for MySQL) to the RDS security group 3. **RDS Security Group** - - Inbound: TCP (3306 for MySQL or 5432 for PostgreSQL) from the ECS security group + - Inbound: TCP (3306 for MySQL) from the ECS security group - Outbound: Not restricted ### NAT Gateway @@ -79,10 +79,10 @@ For your private subnets (where ECS tasks run): ## Step 2: Set Up RDS Database -Create an RDS database instance (MySQL or PostgreSQL): +Create an RDS database instance. **Important**: Workspace servers only support MySQL, not PostgreSQL. **Configuration:** -- **DB Engine**: MySQL 8.0+ or PostgreSQL 12+ +- **DB Engine**: MySQL 8.0+ (PostgreSQL is not supported for workspace servers) - **Instance Class**: `db.t3.micro` or larger depending on expected load - **Storage**: 100 GB initial (with automatic scaling enabled) - **Multi-AZ**: Enable for production deployments @@ -143,7 +143,7 @@ In the AWS Console or using AWS CLI/Terraform, create a task definition with: - **Task Role**: Task role created above **Container Configuration:** -- **Image**: `715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:0.73.0` +- **Image**: `715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:` - **Port Mapping**: Container port 8000 to port 8000 - **Essential**: Yes @@ -162,7 +162,7 @@ Set these in the task definition: | `ZENML_SERVER_PRO_WORKSPACE_NAME` | Your workspace name | | `ZENML_SERVER_PRO_OAUTH2_AUDIENCE` | `https://cloudapi.zenml.io` | | `ZENML_SERVER_SERVER_URL` | `https://zenml.mycompany.com` | -| `ZENML_DATABASE_URL` | `mysql://user:password@hostname:3306/zenml_hybrid` | +| `ZENML_DATABASE_URL` | `mysql://user:password@hostname:3306/zenml_hybrid` (MySQL only - PostgreSQL not supported) | | `ZENML_SERVER_HOSTNAME` | `0.0.0.0` | | `ZENML_SERVER_PORT` | `8000` | | `ZENML_LOGGING_LEVEL` | `INFO` | @@ -289,7 +289,7 @@ This is enabled by the ALB and ALB security group configuration. ### Database Access ECS tasks need TCP access to: -- Your RDS instance on port 3306 (MySQL) or 5432 (PostgreSQL) +- Your RDS instance on port 3306 (MySQL) This is enabled by the ECS security group egress rule and RDS security group ingress rule. @@ -437,7 +437,7 @@ Check ECS task logs in CloudWatch: 1. Verify database is running and accessible 2. Check ECS security group allows outbound to RDS security group 3. Verify `ZENML_DATABASE_URL` has correct hostname, port, and credentials -4. Test connectivity from an ECS task using a MySQL/PostgreSQL client +4. Test connectivity from an ECS task using a MySQL client ### Can't Reach Server via HTTPS diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md index 20b31b290ef..cf9982574dc 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md @@ -31,13 +31,16 @@ Before starting, complete the setup described in [Hybrid Deployment Overview](hy - Step 2: Configure your infrastructure (database, networking, TLS) - Step 3: Obtain Pro credentials from ZenML Support -## Step 1: Add ZenML Helm Repository +## Step 1: Prepare Helm Chart + +For OCI-based Helm charts, you can either pull the chart or install directly. To pull the chart first: ```bash -helm repo add zenml oci://public.ecr.aws/zenml -helm repo update +helm pull oci://public.ecr.aws/zenml/zenml --version ``` +Alternatively, you can install directly from OCI (see Step 5 below). + ## Step 2: Create Kubernetes Namespace ```bash @@ -97,9 +100,10 @@ zenml: key: ZENML_SERVER_PRO_OAUTH2_CLIENT_SECRET # Database Configuration + # Note: Workspace servers only support MySQL, not PostgreSQL database: external: - type: mysql # or postgresql + type: mysql host: mysql.mycompany.com port: 3306 username: zenml_user @@ -109,7 +113,7 @@ zenml: # Image Configuration image: repository: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server - tag: "0.92.0" # Match your ZenML version + tag: "" # e.g., "0.73.0" - Match your ZenML OSS version pullPolicy: IfNotPresent # Ingress Configuration @@ -170,13 +174,21 @@ securityContext: ## Step 5: Deploy with Helm -Install the ZenML chart: +Install the ZenML chart directly from OCI: ```bash -helm install zenml zenml/zenml \ +helm install zenml oci://public.ecr.aws/zenml/zenml \ --namespace zenml-hybrid \ --values zenml-hybrid-values.yaml \ - --version 0.73.0 + --version +``` + +Or if you pulled the chart in Step 1, install from the local file: + +```bash +helm install zenml ./zenml-.tgz \ + --namespace zenml-hybrid \ + --values zenml-hybrid-values.yaml ``` Monitor the deployment: @@ -250,7 +262,7 @@ zenml: ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner - ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:0.73.0 + ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server: ``` **Option B: AWS-based (if running on EKS)** @@ -326,29 +338,29 @@ zenml: database: zenml_hybrid ``` -### Google Cloud SQL PostgreSQL +### Google Cloud SQL MySQL ```yaml zenml: database: external: - type: postgresql + type: mysql host: 34.123.45.67 - port: 5432 - username: postgres + port: 3306 + username: root password: database: zenml_hybrid ``` -### Self-Managed PostgreSQL +### Self-Managed MySQL ```yaml zenml: database: external: - type: postgresql - host: postgres.internal.mycompany.com - port: 5432 + type: mysql + host: mysql.internal.mycompany.com + port: 3306 username: zenml_user password: database: zenml_hybrid @@ -584,19 +596,17 @@ kubectl -n zenml-hybrid logs deployment/zenml -f 2. Upgrade with Helm: ```bash -helm upgrade zenml zenml/zenml \ +helm upgrade zenml oci://public.ecr.aws/zenml/zenml \ --namespace zenml-hybrid \ --values zenml-hybrid-values.yaml \ - --version 0.73.0 + --version ``` ### Upgrade ZenML Version 1. Check available versions: -```bash -helm search repo zenml/zenml --versions -``` +For OCI charts, you can check available versions by attempting to pull different versions, or contact ZenML Support for the latest version information. 2. Update values file with new version 3. Upgrade: diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index c91d69c9138..0e1334771f3 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -351,7 +351,7 @@ Contact [cloud@zenml.io](mailto:cloud@zenml.io) to request security documentatio ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Full On-Prem | +| Feature | SaaS | Hybrid SaaS | Self-hosted | |---------|------|-------------|------------| | Setup Time | Minutes | Hours to Days | Days to Weeks | | Metadata Location | ZenML Infra | Your Infra | Your Infra | @@ -361,7 +361,7 @@ Contact [cloud@zenml.io](mailto:cloud@zenml.io) to request security documentatio | Control | Minimal | Moderate | Complete | | Best For | Fast start | Security + Convenience | Strictest compliance | -[Compare all deployment options →](README.md#deployment-scenarios-comparison) +[Compare all deployment options →](README.md#deployment-scenarios) ## Migration Paths @@ -398,7 +398,7 @@ A workspace deep copy feature for migrating pipelines and artifacts between work - [System Architecture Overview](../system-architectures.md#zenml-pro-hybrid-saas) - [Deployment Scenarios Overview](deployments-overview.md) - [SaaS Deployment](saas-deployment.md) -- [Full On-Prem Deployment](air-gapped-deployment.md) +- [Self-hosted Deployment](self-hosted-deployment.md) - [Workload Managers](workload-managers.md) - [Self-hosted Deployment Guide](self-hosted.md) - [Workspaces](workspaces.md) diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md index 331cf321e2d..b47c88c839d 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/on-prem-deployment-helm.md @@ -216,9 +216,13 @@ kubectl -n zenml-pro create secret tls zenml-tls \ --key=/path/to/tls.key ``` -## Step 5: Set Up PostgreSQL Database +## Step 5: Set Up Databases -Create a PostgreSQL database instance (within your air-gapped network): +Create database instances (within your air-gapped network): + +**Important Database Support:** +- **Control Plane**: Supports both PostgreSQL and MySQL +- **Workspace Servers**: Only support MySQL (PostgreSQL is not supported) **Configuration:** - **Accessibility**: Reachable from your Kubernetes cluster @@ -228,8 +232,8 @@ Create a PostgreSQL database instance (within your air-gapped network): - **Monitoring**: Enable local log aggregation **Connection strings needed for later:** -- Control Plane DB: `postgresql://user:password@db-host:5432/zenml_pro` -- Workspace DB: `postgresql://user:password@db-host:5432/zenml_workspace` +- Control Plane DB (PostgreSQL or MySQL): `postgresql://user:password@db-host:5432/zenml_pro` or `mysql://user:password@db-host:3306/zenml_pro` +- Workspace DB (MySQL only): `mysql://user:password@db-host:3306/zenml_workspace` ## Step 6: Configure Helm Values for Control Plane @@ -243,10 +247,10 @@ zenml: image: api: repository: internal-registry.mycompany.com/zenml/zenml-pro-api - tag: "0.10.24" + tag: "" # e.g., "0.10.24" dashboard: repository: internal-registry.mycompany.com/zenml/zenml-pro-dashboard - tag: "0.10.24" + tag: "" # e.g., "0.10.24" # Server URL - use your internal domain serverURL: https://zenml-pro.internal.mycompany.com @@ -299,7 +303,7 @@ podSecurityContext: Using the local Helm chart: ```bash -helm install zenml-pro ./zenml-pro-0.10.24.tgz \ +helm install zenml-pro ./zenml-pro-.tgz \ --namespace zenml-pro \ --values zenml-pro-values.yaml ``` @@ -314,7 +318,31 @@ kubectl -n zenml-pro get ingress Wait for all pods to be running and healthy. -## Step 8: Configure Helm Values for Workspace Server +## Step 8: Enroll Workspace in Control Plane + +Before deploying the workspace server, you must enroll it in the control plane to obtain the necessary enrollment credentials. + +1. **Access the Control Plane Dashboard** + - Navigate to `https://zenml-pro.internal.mycompany.com` + - Log in with your admin credentials + +2. **Create an Organization** (if not already created) + - Go to Organization settings + - Create a new organization or use an existing one + - Note the Organization ID and Name + +3. **Enroll the Workspace** + - Use the enrollment script from the [Self-hosted Deployment Guide](self-hosted.md#enrolling-a-workspace) or + - Create a workspace through the dashboard and obtain: + - Enrollment Key + - Organization ID + - Organization Name + - Workspace ID + - Workspace Name + +4. **Save these values** - you'll need them in the next step + +## Step 9: Configure Helm Values for Workspace Server Create a file `zenml-workspace-values.yaml`: @@ -323,24 +351,32 @@ zenml: # Image configuration - use your internal registry image: repository: internal-registry.mycompany.com/zenml/zenml-pro-server - tag: "0.73.0" + tag: "" # e.g., "0.73.0" # Server URL serverURL: https://zenml-workspace.internal.mycompany.com # Database for Workspace + # Note: Workspace servers only support MySQL, not PostgreSQL database: external: - type: postgresql - host: postgres.internal.mycompany.com - port: 5432 + type: mysql + host: mysql.internal.mycompany.com + port: 3306 username: zenml_workspace_user password: database: zenml_workspace - # Pro configuration (for air-gapped, disable external control plane) + # Pro configuration - connect to local control plane pro: - enabled: false # Disable external control plane connection + enabled: true + apiURL: https://zenml-pro.internal.mycompany.com/api/v1 + dashboardURL: https://zenml-pro.internal.mycompany.com + enrollmentKey: + organizationID: + organizationName: + workspaceID: + workspaceName: # Ingress configuration ingress: @@ -371,14 +407,14 @@ podSecurityContext: runAsUser: 1000 ``` -## Step 9: Deploy ZenML Workspace Server +## Step 10: Deploy ZenML Workspace Server ```bash # Create namespace kubectl create namespace zenml-workspace # Deploy workspace -helm install zenml ./zenml-0.73.0.tgz \ +helm install zenml ./zenml-.tgz \ --namespace zenml-workspace \ --values zenml-workspace-values.yaml ``` @@ -391,13 +427,13 @@ kubectl -n zenml-workspace get svc kubectl -n zenml-workspace get ingress ``` -## Step 10: Configure Internal DNS +## Step 11: Configure Internal DNS Update your internal DNS to resolve: - `zenml-pro.internal.mycompany.com` → Your ALB/Ingress IP - `zenml-workspace.internal.mycompany.com` → Your ALB/Ingress IP -## Step 11: Install Internal CA Certificate +## Step 12: Install Internal CA Certificate On all client machines that will access ZenML: @@ -414,7 +450,7 @@ On all client machines that will access ZenML: 4. For containerized pipelines, include the CA certificate in your custom ZenML image -## Step 12: Verify the Deployment +## Step 13: Verify the Deployment 1. **Check Control Plane Health** ```bash @@ -436,7 +472,7 @@ On all client machines that will access ZenML: kubectl -n zenml-workspace logs deployment/zenml ``` -## Step 13: (Optional) Enable Snapshot Support / Workload Manager +## Step 14: (Optional) Enable Snapshot Support / Workload Manager Pipeline snapshots (running pipelines from the dashboard) require additional configuration: @@ -493,7 +529,7 @@ Choose how runner images are managed: zenml: environment: ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "false" - ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: internal-registry.mycompany.com/zenml/zenml:0.73.0 + ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: internal-registry.mycompany.com/zenml/zenml: ``` Pre-build your runner image and push to your internal registry. @@ -530,7 +566,7 @@ helm upgrade zenml ./zenml-.tgz \ --values zenml-workspace-values.yaml ``` -## Step 14: Create Users and Organizations +## Step 15: Create Users and Organizations In the ZenML Pro dashboard: @@ -808,7 +844,7 @@ Document and test: ## Related Resources -- [Air-gapped Deployment Overview](air-gapped-deployment.md) +- [Self-hosted Deployment Overview](self-hosted-deployment.md) - [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference - [Kubernetes Documentation](https://kubernetes.io/docs/) - [PostgreSQL Documentation](https://www.postgresql.org/docs/) diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index 89ed8003ea1..b6dfe031b6e 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -153,7 +153,7 @@ ZenML Pro SaaS includes: ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Full On-Prem | +| Feature | SaaS | Hybrid SaaS | Self-hosted | |---------|------|-------------|------------| | Setup Time | ⚡ Minutes | Hours | Days | | Maintenance | Zero | Workspace only | Full stack | @@ -161,7 +161,7 @@ ZenML Pro SaaS includes: | Data Sovereignty | Metadata on ZenML | Full | Full | | Best For | Fast time-to-value | Security requirements | Strictest compliance | -[Compare all deployment options →](README.md#deployment-scenarios-comparison) +[Compare all deployment options →](README.md#deployment-scenarios) ## Migration Path @@ -183,7 +183,7 @@ Need help with migration? Our support team can assist. - [System Architecture Overview](../system-architectures.md#zenml-pro-saas-architecture) - [Deployment Scenarios Overview](deployments-overview.md) - [Hybrid SaaS Deployment](hybrid-deployment.md) -- [Full On-Prem Deployment](air-gapped-deployment.md) +- [Self-hosted Deployment](self-hosted-deployment.md) - [Workload Managers](workload-managers.md) - [Security & Compliance](README.md#security--compliance) diff --git a/docs/book/getting-started/zenml-pro/self-hosted-deployment-helm.md b/docs/book/getting-started/zenml-pro/self-hosted-deployment-helm.md new file mode 100644 index 00000000000..7d1eaf956a8 --- /dev/null +++ b/docs/book/getting-started/zenml-pro/self-hosted-deployment-helm.md @@ -0,0 +1,863 @@ +--- +description: Deploy ZenML Pro Self-hosted on Kubernetes with Helm - complete self-hosted setup with no external dependencies. +layout: + title: + visible: true + description: + visible: true + tableOfContents: + visible: true + outline: + visible: true + pagination: + visible: true +--- + +# Self-hosted Deployment on Kubernetes with Helm + +This guide provides step-by-step instructions for deploying ZenML Pro in a fully air-gapped setup on Kubernetes using Helm charts. In an air-gapped deployment, all components run within your infrastructure with zero external dependencies. + +## Architecture Overview + +All components run entirely within your Kubernetes cluster and infrastructure: + +``` +┌──────────────────────────────────────────────────┐ +│ Your Air-gapped Infrastructure │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Kubernetes Cluster │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ ZenML Pro Control Plane │ │ │ +│ │ │ - Authentication & Authorization │ │ │ +│ │ │ - RBAC Management │ │ │ +│ │ │ - Dashboard │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ ZenML Workspace Servers │ │ │ +│ │ │ (one or more) │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────┐ │ │ +│ │ │ Load Balancer / Ingress │ │ │ +│ │ │ (HTTPS with internal CA) │ │ │ +│ │ └─────────────────────────────────────┘ │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ PostgreSQL Database │ │ +│ │ (for metadata storage) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Internal Docker Registry │ │ +│ │ (for container images) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +│ ┌────────────────────────────────────────────┐ │ +│ │ Object Storage / NFS │ │ +│ │ (for artifacts & backups) │ │ +│ └────────────────────────────────────────────┘ │ +│ │ +└──────────────────────────────────────────────────┘ + 🔒 Completely Isolated - No External Access +``` + +## Prerequisites + +Before starting, you need: + +**Infrastructure:** +- Kubernetes cluster (1.24+) within your air-gapped network +- PostgreSQL database (12+) for metadata storage +- Internal Docker registry (Harbor, Quay, Artifactory, etc.) +- Load balancer or Ingress controller for HTTPS +- NFS or object storage for artifacts (optional) + +**Network:** +- Internal DNS resolution +- TLS certificates signed by your internal CA +- Network connectivity between cluster components + +**Tools (on a machine with internet access for initial setup):** +- Docker +- Helm (3.0+) +- Access to pull ZenML Pro images from private registries (credentials from ZenML) + +## Step 1: Prepare Offline Artifacts + +This step is performed on a machine with internet access, then transferred to your air-gapped environment. + +### 1.1 Pull Container Images + +On a machine with internet access and access to the ZenML Pro container registries: + +1. Authenticate to the ZenML Pro container registries (AWS ECR or GCP Artifact Registry) + - Use credentials provided by ZenML Support + - Follow registry-specific authentication procedures + +2. Pull all required images: + - **Pro Control Plane images:** + - `715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api:` + - `715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard:` + - **Workspace Server image:** + - `715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:` + - **Client image (for pipelines):** + - `zenmldocker/zenml:` + + Example pull commands: + ```bash + docker pull 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api: + docker pull 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard: + docker pull 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server: + docker pull zenmldocker/zenml: + ``` + +3. Tag images with your internal registry: + ``` + internal-registry.mycompany.com/zenml/zenml-pro-api:version + internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + internal-registry.mycompany.com/zenml/zenml-pro-server:version + internal-registry.mycompany.com/zenml/zenml:version + ``` + +4. Save images to tar files for transfer: + ```bash + docker save 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api: > zenml-pro-api.tar + docker save 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard: > zenml-pro-dashboard.tar + docker save 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server: > zenml-pro-server.tar + docker save zenmldocker/zenml: > zenml-client.tar + ``` + +### 1.2 Download Helm Charts + +On the same machine with internet access: + +1. Pull the Helm charts: + - ZenML Pro Control Plane: `oci://public.ecr.aws/zenml/zenml-pro` + - ZenML Workspace Server: `oci://public.ecr.aws/zenml/zenml` + +2. Save charts as `.tgz` files for transfer + +### 1.3 Create Offline Bundle + +Create a bundle containing all artifacts: + +``` +zenml-air-gapped-bundle/ +├── images/ +│ ├── zenml-pro-api.tar +│ ├── zenml-pro-dashboard.tar +│ ├── zenml-pro-server.tar +│ └── zenml-client.tar +├── charts/ +│ ├── zenml-pro-.tgz +│ └── zenml-.tgz +└── manifest.txt +``` + +The manifest should document: +- All image names and versions +- Helm chart versions +- Date of bundle creation +- Required internal registry URLs + +## Step 2: Transfer to Air-gapped Environment + +Transfer the bundle to your air-gapped environment using approved methods: +- Physical media (USB drive, external drive) +- Approved secure file transfer system +- Air-gap transfer appliances +- Any method compliant with your security policies + +## Step 3: Load Images into Internal Registry + +In your air-gapped environment, load the images: + +1. Extract all tar files: + ``` + cd images/ + for file in *.tar; do docker load < "$file"; done + ``` + +2. Tag images for your internal registry: + ``` + docker tag 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-api:version internal-registry.mycompany.com/zenml/zenml-pro-api:version + docker tag 715803424590.dkr.ecr.eu-west-1.amazonaws.com/zenml-pro-dashboard:version internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + docker tag 715803424590.dkr.ecr.eu-central-1.amazonaws.com/zenml-pro-server:version internal-registry.mycompany.com/zenml/zenml-pro-server:version + docker tag zenmldocker/zenml:version internal-registry.mycompany.com/zenml/zenml:version + ``` + +3. Push images to your internal registry: + ``` + docker push internal-registry.mycompany.com/zenml/zenml-pro-api:version + docker push internal-registry.mycompany.com/zenml/zenml-pro-dashboard:version + docker push internal-registry.mycompany.com/zenml/zenml-pro-server:version + docker push internal-registry.mycompany.com/zenml/zenml:version + ``` + +## Step 4: Create Kubernetes Namespace and Secrets + +```bash +# Create namespace for ZenML Pro +kubectl create namespace zenml-pro + +# Create secret for internal registry credentials (if needed) +kubectl -n zenml-pro create secret docker-registry internal-registry-secret \ + --docker-server=internal-registry.mycompany.com \ + --docker-username= \ + --docker-password= + +# Create secret for TLS certificate +kubectl -n zenml-pro create secret tls zenml-tls \ + --cert=/path/to/tls.crt \ + --key=/path/to/tls.key +``` + +## Step 5: Set Up Databases + +Create database instances (within your air-gapped network): + +**Important Database Support:** +- **Control Plane**: Supports both PostgreSQL and MySQL +- **Workspace Servers**: Only support MySQL (PostgreSQL is not supported) + +**Configuration:** +- **Accessibility**: Reachable from your Kubernetes cluster +- **Databases**: At least 2 (one for control plane, one for workspace) +- **Users**: Create dedicated database users with permissions +- **Backups**: Configure automated backups to local storage +- **Monitoring**: Enable local log aggregation + +**Connection strings needed for later:** +- Control Plane DB (PostgreSQL or MySQL): `postgresql://user:password@db-host:5432/zenml_pro` or `mysql://user:password@db-host:3306/zenml_pro` +- Workspace DB (MySQL only): `mysql://user:password@db-host:3306/zenml_workspace` + +## Step 6: Configure Helm Values for Control Plane + +Create a file `zenml-pro-values.yaml`: + +```yaml +# ZenML Pro Control Plane Values + +zenml: + # Image configuration - use your internal registry + image: + api: + repository: internal-registry.mycompany.com/zenml/zenml-pro-api + tag: "" # e.g., "0.10.24" + dashboard: + repository: internal-registry.mycompany.com/zenml/zenml-pro-dashboard + tag: "" # e.g., "0.10.24" + + # Server URL - use your internal domain + serverURL: https://zenml-pro.internal.mycompany.com + + # Database for Control Plane + database: + external: + type: postgresql + host: postgres.internal.mycompany.com + port: 5432 + username: zenml_pro_user + password: + database: zenml_pro + + # Ingress configuration + ingress: + enabled: true + className: nginx # or your ingress controller + host: zenml-pro.internal.mycompany.com + tls: + enabled: true + secretName: zenml-tls + + # Authentication (no external IdP needed for air-gap) + auth: + password: + + # Resource constraints + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 2000m + memory: 4Gi + +# Image pull secrets for internal registry +imagePullSecrets: + - name: internal-registry-secret + +# Pod security context +podSecurityContext: + fsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 +``` + +## Step 7: Deploy ZenML Pro Control Plane + +Using the local Helm chart: + +```bash +helm install zenml-pro ./zenml-pro-.tgz \ + --namespace zenml-pro \ + --values zenml-pro-values.yaml +``` + +Verify deployment: + +```bash +kubectl -n zenml-pro get pods +kubectl -n zenml-pro get svc +kubectl -n zenml-pro get ingress +``` + +Wait for all pods to be running and healthy. + +## Step 8: Enroll Workspace in Control Plane + +Before deploying the workspace server, you must enroll it in the control plane to obtain the necessary enrollment credentials. + +1. **Access the Control Plane Dashboard** + - Navigate to `https://zenml-pro.internal.mycompany.com` + - Log in with your admin credentials + +2. **Create an Organization** (if not already created) + - Go to Organization settings + - Create a new organization or use an existing one + - Note the Organization ID and Name + +3. **Enroll the Workspace** + - Use the enrollment script from the [Self-hosted Deployment Guide](self-hosted.md#enrolling-a-workspace) or + - Create a workspace through the dashboard and obtain: + - Enrollment Key + - Organization ID + - Organization Name + - Workspace ID + - Workspace Name + +4. **Save these values** - you'll need them in the next step + +## Step 9: Configure Helm Values for Workspace Server + +Create a file `zenml-workspace-values.yaml`: + +```yaml +zenml: + # Image configuration - use your internal registry + image: + repository: internal-registry.mycompany.com/zenml/zenml-pro-server + tag: "" # e.g., "0.73.0" + + # Server URL + serverURL: https://zenml-workspace.internal.mycompany.com + + # Database for Workspace + # Note: Workspace servers only support MySQL, not PostgreSQL + database: + external: + type: mysql + host: mysql.internal.mycompany.com + port: 3306 + username: zenml_workspace_user + password: + database: zenml_workspace + + # Pro configuration - connect to local control plane + pro: + enabled: true + apiURL: https://zenml-pro.internal.mycompany.com/api/v1 + dashboardURL: https://zenml-pro.internal.mycompany.com + enrollmentKey: + organizationID: + organizationName: + workspaceID: + workspaceName: + + # Ingress configuration + ingress: + enabled: true + className: nginx + host: zenml-workspace.internal.mycompany.com + tls: + enabled: true + secretName: zenml-tls + + # Resource constraints + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 1000m + memory: 2Gi + +# Image pull secrets +imagePullSecrets: + - name: internal-registry-secret + +# Pod security context +podSecurityContext: + fsGroup: 1000 + runAsNonRoot: true + runAsUser: 1000 +``` + +## Step 10: Deploy ZenML Workspace Server + +```bash +# Create namespace +kubectl create namespace zenml-workspace + +# Deploy workspace +helm install zenml ./zenml-.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml +``` + +Verify deployment: + +```bash +kubectl -n zenml-workspace get pods +kubectl -n zenml-workspace get svc +kubectl -n zenml-workspace get ingress +``` + +## Step 11: Configure Internal DNS + +Update your internal DNS to resolve: +- `zenml-pro.internal.mycompany.com` → Your ALB/Ingress IP +- `zenml-workspace.internal.mycompany.com` → Your ALB/Ingress IP + +## Step 12: Install Internal CA Certificate + +On all client machines that will access ZenML: + +1. Obtain your internal CA certificate +2. Install it in the system certificate store: + - **Linux**: Copy to `/usr/local/share/ca-certificates/` and run `update-ca-certificates` + - **macOS**: Use `sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ` + - **Windows**: Use `certutil -addstore "Root" cert.pem` + +3. For Python/ZenML client: + ```bash + export REQUESTS_CA_BUNDLE=/path/to/ca-bundle.crt + ``` + +4. For containerized pipelines, include the CA certificate in your custom ZenML image + +## Step 13: Verify the Deployment + +1. **Check Control Plane Health** + ```bash + curl -k https://zenml-pro.internal.mycompany.com/health + ``` + +2. **Check Workspace Health** + ```bash + curl -k https://zenml-workspace.internal.mycompany.com/health + ``` + +3. **Access the Dashboard** + - Navigate to `https://zenml-pro.internal.mycompany.com` in your browser + - Log in with admin credentials + +4. **Check Logs** + ```bash + kubectl -n zenml-pro logs deployment/zenml-pro + kubectl -n zenml-workspace logs deployment/zenml + ``` + +## Step 14: (Optional) Enable Snapshot Support / Workload Manager + +Pipeline snapshots (running pipelines from the dashboard) require additional configuration: + +### 1. Create Kubernetes Resources for Workload Manager + +Create a dedicated namespace and service account for runner jobs: + +```bash +# Create namespace +kubectl create namespace zenml-workload-manager + +# Create service account +kubectl -n zenml-workload-manager create serviceaccount zenml-runner + +# Create role with permissions to create jobs and access registry +# (Specific permissions depend on your implementation choice below) +``` + +### 2. Choose Implementation + +**Option A: Kubernetes Implementation (Simplest)** + +Use the built-in Kubernetes implementation for running snapshots: + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.kubernetes_workload_manager.KubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner +``` + +**Option B: GCP Implementation (if using GCP)** + +For GCP-specific features: + +```yaml +zenml: + environment: + ZENML_SERVER_WORKLOAD_MANAGER_IMPLEMENTATION_SOURCE: zenml_cloud_plugins.gcp_kubernetes_workload_manager.GCPKubernetesWorkloadManager + ZENML_KUBERNETES_WORKLOAD_MANAGER_NAMESPACE: zenml-workload-manager + ZENML_KUBERNETES_WORKLOAD_MANAGER_SERVICE_ACCOUNT: zenml-runner + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: /zenml +``` + +### 3. Configure Runner Image + +Choose how runner images are managed: + +**Option A: Use Pre-built Runner Image (Simpler for Air-gap)** + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "false" + ZENML_KUBERNETES_WORKLOAD_MANAGER_RUNNER_IMAGE: internal-registry.mycompany.com/zenml/zenml: +``` + +Pre-build your runner image and push to your internal registry. + +**Option B: Have ZenML Build Runner Images** + +Requires access to internal Docker registry with push permissions: + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true" + ZENML_KUBERNETES_WORKLOAD_MANAGER_DOCKER_REGISTRY: internal-registry.mycompany.com/zenml +``` + +### 4. Configure Pod Resources and Policies + +```yaml +zenml: + environment: + ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES: '{"requests": {"cpu": "100m", "memory": "400Mi"}, "limits": {"memory": "700Mi"}}' + ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED: 86400 # 1 day + ZENML_KUBERNETES_WORKLOAD_MANAGER_NODE_SELECTOR: '{"node-pool": "compute"}' + ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 2 +``` + +### 5. Update Workspace Deployment + +Update your workspace server Helm values with workload manager configuration and redeploy: + +```bash +helm upgrade zenml ./zenml-.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml +``` + +## Step 15: Create Users and Organizations + +In the ZenML Pro dashboard: + +1. Create an organization +2. Create users for your team +3. Assign roles and permissions +4. Configure teams + +## Network Requirements Summary + +| Traffic | Source | Destination | Port | Direction | +|---------|--------|-------------|------|-----------| +| Web Access | Client Machines | Ingress Controller | 443 | Inbound | +| API Access | ZenML Client | Workspace Server | 443 | Inbound | +| Database | Kubernetes Pods | PostgreSQL | 5432 | Outbound | +| Registry | Kubernetes | Internal Registry | 443 | Outbound | +| Inter-service | Kubernetes Internal | Kubernetes Services | 443 | Internal | + +## Scaling & High Availability + +### Multiple Control Plane Replicas + +```yaml +zenml: + replicaCount: 3 +``` + +### Multiple Workspace Replicas + +```yaml +zenml: + replicaCount: 2 +``` + +### Pod Disruption Budgets + +Protect against accidental disruptions: + +```yaml +podDisruptionBudget: + enabled: true + minAvailable: 1 +``` + +### Database Replication + +For HA, configure PostgreSQL streaming replication: +1. Set up a standby database +2. Configure continuous archiving +3. Test failover procedures + +## Backup & Recovery + +### Automated Backups + +Configure automated PostgreSQL backups: +- **Frequency**: Daily or more frequent +- **Retention**: 30+ days +- **Location**: Internal storage (not external) +- **Testing**: Test restore procedures regularly + +### Backup Checklist + +1. Database backups (automated) +2. Configuration backups (values.yaml files, versioned) +3. TLS certificates (secure storage) +4. Custom CA certificate (backup copy) +5. Helm chart versions (archived) + +### Recovery Procedure + +Documented recovery procedure should cover: +1. Database restoration steps +2. Helm redeployment steps +3. Data validation after restore +4. User communication plan + +## Monitoring & Logging + +### Internal Monitoring + +Set up internal monitoring for: +- CPU and memory usage +- Pod restart count +- Database connection count +- Ingress error rates +- Certificate expiration dates + +### Log Aggregation + +Forward logs to your internal log aggregation system: +- Application logs from ZenML pods +- Ingress logs +- Database logs +- Kubernetes events + +### Alerting + +Create alerts for: +- Pod failures +- High resource usage +- Database connection errors +- Certificate near expiration +- Disk space warnings + +## Maintenance + +### Regular Tasks + +- Monitor disk space (databases, artifact storage) +- Review and manage user access +- Update internal CA certificate before expiration +- Test backup and recovery procedures +- Monitor pod logs for warnings + +### Periodic Updates + +When updating to a new ZenML version: + +1. Pull new images on internet-connected machine +2. Push to internal registry +3. Create new offline bundle with updated Helm charts +4. Transfer bundle to air-gapped environment +5. Update Helm charts in air-gapped environment +6. Update image tags in values.yaml +7. Perform helm upgrade on control plane +8. Perform helm upgrade on workspace servers +9. Verify health after upgrade +10. Update client images in your custom ZenML container + +## Troubleshooting + +### Pods Won't Start + +Check pod logs and events: +```bash +kubectl -n zenml-pro describe pod zenml-pro-xxxxx +kubectl -n zenml-pro logs zenml-pro-xxxxx +``` + +Common issues: +- Image pull failures (check registry access) +- Database connectivity (verify connection string) +- Certificate issues (verify CA is trusted) + +### Database Connection Failed + +```bash +# Test from pod +kubectl -n zenml-pro exec -it zenml-pro-xxxxx -- \ + psql -h postgres.internal.mycompany.com -U zenml_pro_user -d zenml_pro +``` + +### Can't Access via HTTPS + +1. Verify certificate validity +2. Verify DNS resolution +3. Check Ingress status +4. Verify CA certificate is installed on client + +### Image Pull Errors + +1. Verify images are in internal registry +2. Check registry credentials in secret +3. Verify imagePullSecrets configured correctly + +## Day 2 Operations: Updates and Upgrades + +### Receiving New Versions + +When new ZenML versions are released: + +1. **Request offline bundle** from ZenML Support containing: + - Updated container images + - Updated Helm charts + - Release notes and migration guide + - Vulnerability assessment (if applicable) + +2. **Review release notes** for: + - Breaking changes + - Database migration requirements + - New features and configuration options + - Security updates + +3. **Transfer bundle** to your air-gapped environment using approved methods + +### Upgrade Process + +1. **Backup current state:** + - Database backup + - Values.yaml files + - TLS certificates + +2. **Update container images in internal registry:** + - Extract and load new images + - Tag and push to your internal registry + +3. **Update Helm charts:** + - Extract new chart versions + - Review any changes to values schema + +4. **Upgrade control plane first:** + ```bash + helm upgrade zenml-pro ./zenml-pro-.tgz \ + --namespace zenml-pro \ + --values zenml-pro-values.yaml + ``` + +5. **Verify control plane:** + - Check pod status + - Review logs + - Test connectivity + +6. **Upgrade workspace servers:** + ```bash + helm upgrade zenml ./zenml-.tgz \ + --namespace zenml-workspace \ + --values zenml-workspace-values.yaml + ``` + +7. **Verify workspaces:** + - Check all pods are running + - Review logs + - Run health checks + - Test dashboard access + +### Database Migrations + +Some updates may require database migrations: + +1. **Review migration guide** in release notes +2. **Back up database** before upgrading +3. **Monitor logs** for any migration-related errors +4. **Verify data integrity** after upgrade +5. **Test key features** (workspace access, pipeline runs, etc.) + +## Disaster Recovery & Backup Strategy + +### Backup Components + +Regular backups should include: + +1. **PostgreSQL Databases:** + - Schedule automated backups (daily minimum) + - Test restore procedures regularly + - Store backups in a different location (second disk, external storage) + - Retain for 30+ days + +2. **Configuration:** + - Version control Helm values files + - Store TLS certificates securely + - Document any manual customizations + +3. **Container Images:** + - Keep copies of all images used + - Maintain manifest of images and versions + +### Recovery Procedures + +Document and test: + +1. **Database Recovery:** + - Steps to restore from backup + - Verification procedures + - Estimated recovery time + +2. **Full Cluster Recovery:** + - How to redeploy from scratch + - Image and chart preparation + - Restore order (databases first, then control plane, then workspaces) + +3. **Partial Recovery:** + - Recovering single workspace + - Recovering specific components + +## Related Resources + +- [Self-hosted Deployment Overview](self-hosted-deployment.md) +- [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference +- [Kubernetes Documentation](https://kubernetes.io/docs/) +- [PostgreSQL Documentation](https://www.postgresql.org/docs/) +- [Helm Documentation](https://helm.sh/docs/) + +## Support + +For air-gapped deployments, contact ZenML Support: +- Email: [cloud@zenml.io](mailto:cloud@zenml.io) +- Provide: Your offline bundle, deployment status, and any error logs + +Request from ZenML Support: +- Pre-deployment architecture consultation +- Offline support packages +- Update bundles and release notes +- Security documentation (SBOM, vulnerability reports) diff --git a/docs/book/getting-started/zenml-pro/on-prem-deployment.md b/docs/book/getting-started/zenml-pro/self-hosted-deployment.md similarity index 86% rename from docs/book/getting-started/zenml-pro/on-prem-deployment.md rename to docs/book/getting-started/zenml-pro/self-hosted-deployment.md index 93e518a0353..5eb93302bdd 100644 --- a/docs/book/getting-started/zenml-pro/on-prem-deployment.md +++ b/docs/book/getting-started/zenml-pro/self-hosted-deployment.md @@ -1,19 +1,19 @@ --- -description: Learn about ZenML Pro Full On-Prem deployment - complete control and data sovereignty for the strictest security requirements. +description: Learn about ZenML Pro Self-hosted deployment - complete control and data sovereignty for the strictest security requirements. icon: shield-halved --- -# Full On-Prem Deployment +# Self-hosted Deployment -ZenML Pro Full On-Prem deployment provides complete control and data sovereignty for organizations with the strictest security, compliance, or regulatory requirements. All ZenML components run entirely within your infrastructure with no external dependencies or internet connectivity required. +ZenML Pro Self-hosted deployment provides complete control and data sovereignty for organizations with the strictest security, compliance, or regulatory requirements. All ZenML components run entirely within your infrastructure with no external dependencies or internet connectivity required. {% hint style="info" %} -To learn more about Full On-Prem deployment, [book a call](https://www.zenml.io/book-your-demo). +To learn more about Self-hosted deployment, [book a call](https://www.zenml.io/book-your-demo). {% endhint %} ## Overview -In a Full On-Prem deployment, every component of ZenML Pro runs within your isolated network environment. This architecture is designed for organizations that must operate in completely disconnected environments or have regulatory requirements preventing any external communication. +In a Self-hosted deployment, every component of ZenML Pro runs within your isolated network environment. This architecture is designed for organizations that must operate in completely disconnected environments or have regulatory requirements preventing any external communication. ![ZenML Pro self-hosted deployment architecture](../../.gitbook/assets/cloud_architecture_scenario_2.png) @@ -37,7 +37,7 @@ In a Full On-Prem deployment, every component of ZenML Pro runs within your isol ```mermaid flowchart TB - subgraph infra["Your Infrastructure (Full On-Prem)"] + subgraph infra["Your Infrastructure (Self-hosted)"] direction TB control_plane["ZenML Pro Control Plane
- Authentication & Authorization
- RBAC Management
- Workspace Coordination
- Pro Metadata Store"] @@ -71,7 +71,7 @@ flowchart TB For a detailed explanation of the common pipeline execution data flow across all deployment scenarios, see [Common Pipeline Execution Data Flow](deployments-overview.md#common-pipeline-execution-data-flow) in the Deployment Scenarios Overview. -In Full On-Prem deployment, users authenticate via your internal identity provider (LDAP/AD/OIDC), and the control plane (running in your infrastructure) handles both authentication and RBAC. All communication happens entirely within your infrastructure boundary with zero external dependencies or internet connectivity required. +In Self-hosted deployment, users authenticate via your internal identity provider (LDAP/AD/OIDC), and the control plane (running in your infrastructure) handles both authentication and RBAC. All communication happens entirely within your infrastructure boundary with zero external dependencies or internet connectivity required. ## Key Benefits @@ -109,7 +109,7 @@ In Full On-Prem deployment, users authenticate via your internal identity provid ## Ideal Use Cases -Full On-Prem deployment is essential for: +Self-hosted deployment is essential for: - **Government and defense** organizations with classified data requirements - **Regulated industries** (healthcare, finance) with strict data residency requirements @@ -158,9 +158,9 @@ Deploy at edge locations: ### Architecture Diagram -![Full On-Prem deployment architecture](../../.gitbook/assets/air-gapped-architecture.png) +![Self-hosted deployment architecture](../../.gitbook/assets/air-gapped-architecture.png) -The diagram above illustrates a complete Full On-Prem ZenML Pro deployment with all components running within your organization's VPC. This architecture ensures zero external communication while providing full enterprise MLOps capabilities. +The diagram above illustrates a complete Self-hosted ZenML Pro deployment with all components running within your organization's VPC. This architecture ensures zero external communication while providing full enterprise MLOps capabilities. ### Architecture Components @@ -350,7 +350,7 @@ Available on request for compliance and security reviews: ## Comparison with Other Deployments -| Feature | SaaS | Hybrid SaaS | Full On-Prem | +| Feature | SaaS | Hybrid SaaS | Self-hosted | |---------|------|-------------|------------| | Internet Required | Yes (metadata) | Yes (control plane) | **No** | | Setup Time | Minutes | Hours/Days | Days/Weeks | @@ -361,13 +361,13 @@ Available on request for compliance and security reviews: | Customization | Limited | Moderate | **Complete** | | Best For | Fast start | Balance | **Max security** | -[Compare all deployment options →](README.md#deployment-scenarios-comparison) +[Compare all deployment options →](README.md#deployment-scenarios) ## Migration Path -### From ZenML OSS to Full On-Prem Pro +### From ZenML OSS to Self-hosted Pro -If you're interested in migrating from ZenML OSS to a Full On-Prem Pro deployment, we're here to help guide you through every step of the process. Migration paths are highly dependent on your specific environment, infrastructure setup, and current ZenML OSS deployment configuration. +If you're interested in migrating from ZenML OSS to a Self-hosted Pro deployment, we're here to help guide you through every step of the process. Migration paths are highly dependent on your specific environment, infrastructure setup, and current ZenML OSS deployment configuration. It's possible to migrate existing stacks or even existing metadata from existing OSS deployments. We can figure out how and what to migrate together in a call. @@ -376,11 +376,11 @@ It's possible to migrate existing stacks or even existing metadata from existing - [Book a migration consultation →](https://www.zenml.io/book-your-demo) - Or email us at [cloud@zenml.io](mailto:cloud@zenml.io) -Your ZenML representative will work with you to assess your current setup, understand your Full On-Prem requirements, and provide a tailored migration plan that fits your environment. +Your ZenML representative will work with you to assess your current setup, understand your Self-hosted requirements, and provide a tailored migration plan that fits your environment. ### From Other Pro Deployments -If you're moving from SaaS or Hybrid to Full On-Prem, migration paths can vary significantly depending on your organization's size, data residency requirements, and current ZenML setup. We recommend discussing your plans with a ZenML solutions architect. +If you're moving from SaaS or Hybrid to Self-hosted, migration paths can vary significantly depending on your organization's size, data residency requirements, and current ZenML setup. We recommend discussing your plans with a ZenML solutions architect. **Next steps:** @@ -406,7 +406,7 @@ Your ZenML representative will provide you with a tailored migration checklist, ## Get Started -Ready to deploy ZenML Pro in a Full On-Prem environment? +Ready to deploy ZenML Pro in a Self-hosted environment? [Book a Demo](https://www.zenml.io/book-your-demo){ .md-button .md-button--primary } diff --git a/docs/book/getting-started/zenml-pro/self-hosted.md b/docs/book/getting-started/zenml-pro/self-hosted.md index c101039b97b..32b8e6c5bf0 100644 --- a/docs/book/getting-started/zenml-pro/self-hosted.md +++ b/docs/book/getting-started/zenml-pro/self-hosted.md @@ -68,7 +68,7 @@ By default, the ZenML OSS Helm chart uses the same container image tags as the h #### ZenML Pro Client Artifacts -If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in a Full On-Prem environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). +If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in a Self-hosted environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). ### Accessing the ZenML Pro Container Images diff --git a/docs/book/getting-started/zenml-pro/toc.md b/docs/book/getting-started/zenml-pro/toc.md index 9a8368ec0e8..f0fc262337f 100644 --- a/docs/book/getting-started/zenml-pro/toc.md +++ b/docs/book/getting-started/zenml-pro/toc.md @@ -9,8 +9,8 @@ * [Hybrid SaaS Deployment](hybrid-deployment.md) * [Kubernetes with Helm](hybrid-deployment-helm.md) * [AWS ECS](hybrid-deployment-ecs.md) -* [Full On-Prem Deployment](on-prem-deployment.md) - * [Kubernetes with Helm](on-prem-deployment-helm.md) +* [Self-hosted Deployment](self-hosted-deployment.md) + * [Kubernetes with Helm](self-hosted-deployment-helm.md) ## Core Concepts diff --git a/docs/book/getting-started/zenml-pro/workload-managers.md b/docs/book/getting-started/zenml-pro/workload-managers.md index f2620062db0..5f70f0aa2ce 100644 --- a/docs/book/getting-started/zenml-pro/workload-managers.md +++ b/docs/book/getting-started/zenml-pro/workload-managers.md @@ -8,7 +8,7 @@ icon: microchip Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the ZenML Pro UI by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. {% hint style="info" %} -This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Full On-Prem). +This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Self-hosted). {% endhint %} ## Architecture @@ -18,7 +18,7 @@ The ZenML Pro server container includes workload manager implementations. You co ### Execution Flow 1. **User triggers a snapshot from the ZenML Pro UI**: You select a pipeline snapshot and click "Run" -2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Full On-Prem) receives the execution request. +2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Self-hosted) receives the execution request. 3. **Workload manager implementation handles orchestration**: The configured workload manager implementation (Kubernetes, AWS, or GCP) translates the request into infrastructure-specific commands. 4. **Runner pod/task is created**: The workload manager creates a Kubernetes pod, ECS task, or equivalent compute unit on your infrastructure. 5. **Pipeline executes**: The runner pulls the pipeline code, executes the steps, and streams logs back to the workspace. @@ -67,7 +67,7 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 - Completed pods are automatically cleaned up after the TTL expires **Use cases:** -- Self-managed ZenML servers on Kubernetes (Hybrid or Full On-Prem) +- Self-managed ZenML servers on Kubernetes (Hybrid or Self-hosted) - Teams already running Kubernetes infrastructure - Minimal setup complexity @@ -284,12 +284,12 @@ When configuring workload managers, keep these factors in mind: ### Network Connectivity - **Egress from server to Kubernetes API**: The ZenML Pro server must have network access to your Kubernetes cluster's API server (port 6443 by default) -- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Full On-Prem, port 443) +- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Self-hosted, port 443) - **Artifact storage access**: Runners need network access to your artifact store (S3, GCS, Azure Blob, local NFS, etc.) - **Metadata backend access**: Runners need to reach your database for metadata operations - **Container registry access**: Runners need to pull images from your container registry -For Full On-Prem deployments, ensure all dependencies are available internally: +For Self-hosted deployments, ensure all dependencies are available internally: - Private container registry with runner images - Internal artifact storage accessible from runners - Internal database (no external connectivity required) @@ -311,7 +311,7 @@ The `ZENML_KUBERNETES_WORKLOAD_MANAGER_POD_RESOURCES` environment variable contr Runner pods need access to container images: - **Pre-built images**: ZenML provides official runner images in its public ECR registry (715803424590.dkr.ecr.eu-central-1.amazonaws.com) -- **Custom images**: For Full On-Prem setups, pull images into your private registry before deployment +- **Custom images**: For Self-hosted setups, pull images into your private registry before deployment - **Image pull secrets**: Configure if your registry requires authentication - **Regular updates**: Keep runner images up-to-date for security and compatibility - **Image building**: For AWS and GCP implementations, set `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true"` to allow the server to build custom images @@ -372,15 +372,15 @@ Configure limits to prevent resource exhaustion: ## Next Steps - [Set up workload managers in Hybrid deployments](hybrid-deployment-helm.md#step-7-optional-enable-snapshot-support--workload-manager) -- [Configure workload managers in Full On-Prem environments](air-gapped-deployment-helm.md#step-13-optional-enable-snapshot-support--workload-manager) +- [Configure workload managers in Self-hosted environments](self-hosted-deployment-helm.md#step-14-optional-enable-snapshot-support--workload-manager) - [Learn about pipeline snapshots](https://docs.zenml.io/concepts/snapshots) ## Related Resources **Deployment & Infrastructure:** -- [Deployment Scenarios Overview](deployments-overview.md) - Compare SaaS, Hybrid, and Full On-Prem options +- [Deployment Scenarios Overview](deployments-overview.md) - Compare SaaS, Hybrid, and Self-hosted options - [Hybrid SaaS Deployment](hybrid-deployment.md) - Balance control with convenience -- [Full On-Prem Deployment](air-gapped-deployment.md) - Complete control and data sovereignty +- [Self-hosted Deployment](self-hosted-deployment.md) - Complete control and data sovereignty - [Self-hosted Deployment Guide](self-hosted.md) - Comprehensive deployment reference **Core Concepts:** From ee3ea6a759a758a2606f95f67ca57352e0c2ea31 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 9 Dec 2025 11:16:20 +0100 Subject: [PATCH 24/28] Update docs/book/getting-started/zenml-pro/self-hosted.md Co-authored-by: Stefan Nica --- docs/book/getting-started/zenml-pro/self-hosted.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/self-hosted.md b/docs/book/getting-started/zenml-pro/self-hosted.md index 32b8e6c5bf0..766aa6bfca7 100644 --- a/docs/book/getting-started/zenml-pro/self-hosted.md +++ b/docs/book/getting-started/zenml-pro/self-hosted.md @@ -68,7 +68,7 @@ By default, the ZenML OSS Helm chart uses the same container image tags as the h #### ZenML Pro Client Artifacts -If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in a Self-hosted environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). +If you're planning on running containerized ZenML pipelines, or using other containerization related ZenML features, you'll also need to access the public ZenML client container image located [in Docker Hub at `zenmldocker/zenml`](https://hub.docker.com/r/zenmldocker/zenml). This isn't a problem unless you're deploying ZenML Pro in an air-gapped environment, in which case you'll also have to copy the client container image into your own container registry. You'll also have to configure your code to use the correct base container registry via DockerSettings (see the [DockerSettings documentation](https://docs.zenml.io/how-to/customize-docker-builds) for more information). ### Accessing the ZenML Pro Container Images From dadc63b264e17e5c957ef54ae859a5e07abf0d59 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 9 Dec 2025 11:58:53 +0100 Subject: [PATCH 25/28] Applied stefans review comments part 1 --- .../zenml-pro/deployments-overview.md | 34 ++++++------ .../zenml-pro/hybrid-deployment-ecs.md | 6 +-- .../zenml-pro/hybrid-deployment.md | 2 - .../zenml-pro/saas-deployment.md | 5 +- .../zenml-pro/workload-managers.md | 54 +++++++++---------- 5 files changed, 48 insertions(+), 53 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/deployments-overview.md b/docs/book/getting-started/zenml-pro/deployments-overview.md index 6275c1cb703..14c8c5017a4 100644 --- a/docs/book/getting-started/zenml-pro/deployments-overview.md +++ b/docs/book/getting-started/zenml-pro/deployments-overview.md @@ -20,17 +20,16 @@ ZenML Pro offers three flexible deployment options to match your organization's ## Quick Comparison -| Deployment Aspect | SaaS | Hybrid SaaS | Self-hosted | -|-------------------|------|-------------|------------| -| **ZenML Server** | ZenML infrastructure | Your infrastructure | Your infrastructure | -| **Pipeline/ Artifact Metadata** | ZenML infrastructure | Your infrastructure | Your infrastructure | -| **ZenML Control Plane** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | -| **ZenML Pro UI** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | -| **RBAC** | ZenML infrastructure | ZenML infrastructure | Your infrastructure | -| **Compute & Data** | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | Your infrastructure through [stacks](https://docs.zenml.io/stacks) | -| **Setup Time** | ⚡ ~1 hour | ~4 hours | ~8 hours | -| **Maintenance** | Fully managed | Partially managed (workspace maintenance required) | Customer managed | -| **Best For** | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and on-premises control | +| Deployment Aspect | Purpose | SaaS | Hybrid SaaS | Self-hosted | +|-------------------|---------|------|-------------|-------------| +| **ZenML Server** | Stores pipeline metadata and serves the API that your SDK and UI connect to | ZenML infrastructure | Your infrastructure | Your infrastructure | +| **Pipeline/ Artifact Metadata** | Records of your pipeline runs, step executions, and artifact locations | ZenML infrastructure | Your infrastructure | Your infrastructure | +| **ZenML Control Plane** | Manages authentication, RBAC, and organization-level settings across workspaces | ZenML infrastructure | ZenML infrastructure | Your infrastructure | +| **ZenML Pro UI** | Web UI for visualizing pipelines, artifacts, and managing your ML workflows | ZenML infrastructure | ZenML infrastructure | Your infrastructure | +| **Compute & Data** | Your ML training infrastructure, models, datasets, and artifacts | Your infrastructure | Your infrastructure | Your infrastructure | +| **Setup Time** | Time to get your first pipeline running | ⚡ ~1 hour | ~4 hours | ~8 hours | +| **Maintenance** | Ongoing operational responsibility | Fully managed | Partially managed (workspace maintenance required) | Customer managed | +| **Best For** | Recommended use case | Teams wanting minimal infrastructure overhead and fastest time-to-value | Organizations with security/compliance requirements but wanting simplified user management | Organizations requiring complete data isolation and on-premises control | {% hint style="info" %} In all of these cases the client sdk that you pip install into your development environment is the same one found here: https://pypi.org/project/zenml/ @@ -45,7 +44,7 @@ Choose **SaaS** if you want to get started immediately with zero infrastructure **What runs where:** - ZenML Server: ZenML infrastructure - Metadata and RBAC: ZenML infrastructure -- Compute and Data: [Your infrastructure](https://docs.zenml.io/stacks) +- Compute and Data: Your infrastructure **Key Benefits:** - ⚡ Fastest setup (minutes) @@ -65,9 +64,8 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure - ZenML Control Plane: ZenML infrastructure - ZenML Pro UI: ZenML infrastructure - ZenML Pro Server: Your infrastructure -- RBAC: ZenML infrastructure - Run metadata: Your infrastructure -- Compute and Data: [Your infrastructure](https://docs.zenml.io/stacks) +- Compute and Data: Your infrastructure **Key Benefits:** - 🔐 Metadata stays in your infrastructure @@ -85,7 +83,7 @@ Choose **Hybrid** if you need to keep sensitive metadata in your infrastructure Choose **Self-hosted** if you need complete control with no external dependencies. **What runs where:** -- All components: [Your infrastructure](https://docs.zenml.io/stacks) (completely isolated) +- All components: Your infrastructure (completely isolated) **Key Benefits:** - 🔒 Complete data sovereignty @@ -125,7 +123,7 @@ All three deployment scenarios follow a similar pipeline execution pattern, with - Artifacts are written to your artifact store - Metadata pointing to these artifacts is persisted -6. **Observability**: The ZenML dashboard connects to your workspace and uses all persisted metadata to provide you with a complete observability plane +6. **Observability**: The ZenML UI connects to your workspace and uses all persisted metadata to provide you with a complete observability plane ### Deployment-Specific Differences @@ -172,7 +170,7 @@ For software deployed on your infrastructure (Hybrid and Self-hosted scenarios), ## Running Pipelines from the web UI -All deployment scenarios support running pipeline snapshots from the dashboard through [workload managers](workload-managers.md). Workload managers are built into the ZenML Pro server and can be configured to orchestrate pipeline execution on your Kubernetes cluster, AWS ECS, or GCP infrastructure. +All deployment scenarios support running pipeline snapshots from the UI through [workload managers](workload-managers.md). Workload managers are built into the ZenML Pro workspace and can be configured to orchestrate pipeline execution on your Kubernetes cluster, AWS ECS, or GCP infrastructure. Learn more: [Understanding Workload Managers](workload-managers.md) @@ -182,7 +180,7 @@ Learn more: [Understanding Workload Managers](workload-managers.md) - **Need metadata control?** [Set up Hybrid Deployment](hybrid-deployment.md) - **Require complete isolation?** [Configure Self-hosted Deployment](self-hosted-deployment.md) - **Deploying on your own infrastructure?** [See Self-hosted Deployment Guide](self-hosted.md) -- **Want to run pipelines from the dashboard?** [Configure Workload Managers](workload-managers.md) +- **Want to run pipelines from the UI?** [Configure Workload Managers](workload-managers.md) {% hint style="info" %} Not sure which option is right for you? [Book a call](https://www.zenml.io/book-your-demo) with our team to discuss your specific requirements. diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md index ef356f54f6f..219bdceaf78 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-ecs.md @@ -20,7 +20,7 @@ This guide provides high-level instructions for deploying ZenML Pro in a Hybrid ## Architecture Overview In this setup: -- **ZenML server** runs in ECS tasks within your VPC +- **ZenML workspace** runs in ECS tasks within your VPC - **Load balancer** handles HTTPS traffic and routes to ECS tasks - **Database** stores workspace metadata in AWS RDS - **Secrets manager** stores Pro credentials securely @@ -350,11 +350,11 @@ Monitor database health: ## (Optional) Enable Snapshot Support / Workload Manager -Pipeline snapshots (running pipelines from the dashboard) require a workload manager. For ECS deployments, you'll typically use the AWS Kubernetes implementation if you also have a Kubernetes cluster available, or configure settings as appropriate for your infrastructure. +Pipeline snapshots (running pipelines from the UI) require a workload manager. For ECS deployments, you'll typically use the AWS Kubernetes implementation if you also have a Kubernetes cluster available, or configure settings as appropriate for your infrastructure. ### Prerequisites for Workload Manager -To enable snapshots on ECS-deployed ZenML servers: +To enable snapshots on ECS-deployed ZenML workspaces: 1. **Kubernetes Cluster Access** - You'll need a Kubernetes cluster where the workload manager can run jobs. This could be: - The same EKS cluster as your other infrastructure diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index 0e1334771f3..a888de7100d 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -68,10 +68,8 @@ In Hybrid deployment, users authenticate via ZenML-hosted control plane (SSO), a ### 🚀 Production Ready -- **High availability**: Built-in redundancy for critical components - **Automatic updates**: Control plane maintained by ZenML - **Professional support**: Direct access to ZenML experts -- **Monitoring included**: Health checks and alerting configured ## Ideal Use Cases diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index b6dfe031b6e..a58d57de844 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -82,11 +82,10 @@ By default, ZenML Pro SaaS stores your cloud credentials securely in our managed - Zero configuration required - Automatic encryption at rest and in transit - Access controls via RBAC -- Audit logging of secret access ### Alternative: Customer-Managed Secrets Store -For organizations with strict security requirements, you can configure ZenML to use your own secrets management solution: +For organizations with strict security requirements, you can configure ZenML to use your own (secrets management)[..deploying-zenml/secret-management] solution: - AWS Secrets Manager - Google Cloud Secret Manager - Azure Key Vault @@ -107,7 +106,7 @@ ZenML Pro SaaS uses outbound-only connections from your infrastructure to ZenML ### Artifact Store Access -The ZenML dashboard requires read access to your artifact store to display: +The ZenML UI requires read access to your artifact store to display: - Pipeline visualizations - Model comparison views - Artifact lineage graphs diff --git a/docs/book/getting-started/zenml-pro/workload-managers.md b/docs/book/getting-started/zenml-pro/workload-managers.md index 5f70f0aa2ce..2c1857b75b3 100644 --- a/docs/book/getting-started/zenml-pro/workload-managers.md +++ b/docs/book/getting-started/zenml-pro/workload-managers.md @@ -5,7 +5,7 @@ icon: microchip # Workload Managers -Workload managers are built into the ZenML Pro server container. They enable you to run pipeline snapshots directly from the ZenML Pro UI by allowing the server to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. +Workload managers are built into the ZenML Pro workspace container. They enable you to run pipeline snapshots directly from the ZenML Pro UI by allowing the workspace to orchestrate pipeline execution on your infrastructure. Without a workload manager configured, your workspace can only be used for monitoring and analyzing completed pipeline runs. With one configured, you gain the ability to trigger and execute pipelines interactively. {% hint style="info" %} This feature is available in [all ZenML Pro deployment scenarios](deployments-overview.md) (SaaS, Hybrid, and Self-hosted). @@ -13,12 +13,12 @@ This feature is available in [all ZenML Pro deployment scenarios](deployments-ov ## Architecture -The ZenML Pro server container includes workload manager implementations. You configure which implementation to use through environment variables passed to the server. The server then uses that implementation to coordinate pipeline execution with your infrastructure. +The ZenML Pro workspace container includes workload manager implementations. You configure which implementation to use through environment variables passed to the workspace. The workspace then uses that implementation to coordinate pipeline execution with your infrastructure. ### Execution Flow 1. **User triggers a snapshot from the ZenML Pro UI**: You select a pipeline snapshot and click "Run" -2. **ZenML server receives the request**: Your ZenML Pro server (running in your workspace, whether SaaS, Hybrid, or Self-hosted) receives the execution request. +2. **ZenML workspace receives the request**: Your ZenML Pro workspace (running in your workspace, whether SaaS, Hybrid, or Self-hosted) receives the execution request. 3. **Workload manager implementation handles orchestration**: The configured workload manager implementation (Kubernetes, AWS, or GCP) translates the request into infrastructure-specific commands. 4. **Runner pod/task is created**: The workload manager creates a Kubernetes pod, ECS task, or equivalent compute unit on your infrastructure. 5. **Pipeline executes**: The runner pulls the pipeline code, executes the steps, and streams logs back to the workspace. @@ -26,14 +26,14 @@ The ZenML Pro server container includes workload manager implementations. You co ## How Workload Managers Are Configured -Workload managers are enabled by setting environment variables on the ZenML Pro server container. Each implementation requires a specific set of environment variables that tell the server: +Workload managers are enabled by setting environment variables on the ZenML Pro workspace container. Each implementation requires a specific set of environment variables that tell the workspace: - Which workload manager implementation to use - Where to create runner pods/tasks (namespace, cluster, region) - How to access container registries and storage - What permissions and resources runners should have -All configuration happens within a single server deployment—no separate services are needed. +All configuration happens within a single workspace deployment—no separate services are needed. ## Supported Implementations @@ -58,16 +58,16 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 **Requirements:** - Kubernetes cluster (1.24+) - Service account with permissions to create/manage pods in a dedicated namespace -- Network connectivity from cluster to your ZenML server +- Network connectivity from cluster to your ZenML workspace - Access to a container registry with ZenML runner images **How it works:** -- The server uses the Kubernetes API to create pods in the specified namespace +- The workspace uses the Kubernetes API to create pods in the specified namespace - Pods run under the specified service account, inheriting cluster network access - Completed pods are automatically cleaned up after the TTL expires **Use cases:** -- Self-managed ZenML servers on Kubernetes (Hybrid or Self-hosted) +- Self-managed ZenML workspaces on Kubernetes (Hybrid or Self-hosted) - Teams already running Kubernetes infrastructure - Minimal setup complexity @@ -98,7 +98,7 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 - S3 bucket for exporting logs **How it works:** -- The server assumes an IAM role to access AWS services +- The workspace assumes an IAM role to access AWS services - Runner images are stored and pulled from ECR - Pod permissions are managed through IAM roles for service accounts (IRSA) - Logs are streamed to S3 for long-term retention and analysis @@ -132,7 +132,7 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 - Docker registry (GCR) for storing runner images **How it works:** -- The server authenticates to GCP using a service account +- The workspace authenticates to GCP using a service account - Runner images are stored and pulled from GCR - Pod permissions are managed through Workload Identity - Logs are automatically sent to Cloud Logging @@ -144,11 +144,11 @@ ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS: 5 ## IAM Permissions and Service Accounts -Proper permission configuration is critical for workload managers to function correctly. The ZenML Pro server needs sufficient permissions to create and manage runner pods without being overly permissive. +Proper permission configuration is critical for workload managers to function correctly. The ZenML Pro workspace needs sufficient permissions to create and manage runner pods without being overly permissive. ### Kubernetes Service Account -For Kubernetes-based implementations, the server uses a Kubernetes service account to interact with your cluster. +For Kubernetes-based implementations, the workspace uses a Kubernetes service account to interact with your cluster. **Required RBAC permissions:** - Create pods in the designated namespace @@ -183,7 +183,7 @@ rules: ### AWS IAM Role -For AWS-based implementations, the ZenML Pro server container needs an IAM role (typically via IRSA—IAM roles for service accounts) to access EKS and related AWS services. +For AWS-based implementations, the ZenML Pro workspace container needs an IAM role (typically via IRSA—IAM roles for service accounts) to access EKS and related AWS services. **Required permissions:** @@ -194,7 +194,7 @@ For AWS-based implementations, the ZenML Pro server container needs an IAM role **Pod creation and management (via Kubernetes API using IRSA):** - The IAM role must be associated with a Kubernetes service account - The role is assumed by pods running under that service account -- This allows the ZenML server to access the Kubernetes API +- This allows the ZenML workspace to access the Kubernetes API **ECR (if building images):** - `ecr:DescribeRepositories` - List image repositories @@ -250,7 +250,7 @@ For AWS-based implementations, the ZenML Pro server container needs an IAM role ### GCP Service Account -For GCP-based implementations, the ZenML Pro server uses a GCP service account with appropriate roles. +For GCP-based implementations, the ZenML Pro workspace uses a GCP service account with appropriate roles. **Required roles:** - `roles/container.developer` - Access to create and manage pods in GKE @@ -283,8 +283,8 @@ When configuring workload managers, keep these factors in mind: ### Network Connectivity -- **Egress from server to Kubernetes API**: The ZenML Pro server must have network access to your Kubernetes cluster's API server (port 6443 by default) -- **Egress from runners to server**: Runner pods must have network access to your ZenML server (cloud.zenml.io for SaaS, your custom domain for Hybrid/Self-hosted, port 443) +- **Egress from workspace to Kubernetes API**: The ZenML Pro workspace must have network access to your Kubernetes cluster's API server (port 6443 by default) +- **Egress from runners to workspace**: Runner pods must have network access to your ZenML workspace (cloud.zenml.io for SaaS, your custom domain for Hybrid/Self-hosted, port 443) - **Artifact storage access**: Runners need network access to your artifact store (S3, GCS, Azure Blob, local NFS, etc.) - **Metadata backend access**: Runners need to reach your database for metadata operations - **Container registry access**: Runners need to pull images from your container registry @@ -293,7 +293,7 @@ For Self-hosted deployments, ensure all dependencies are available internally: - Private container registry with runner images - Internal artifact storage accessible from runners - Internal database (no external connectivity required) -- Kubernetes API accessible from the server container +- Kubernetes API accessible from the workspace container ### Resource Configuration @@ -314,7 +314,7 @@ Runner pods need access to container images: - **Custom images**: For Self-hosted setups, pull images into your private registry before deployment - **Image pull secrets**: Configure if your registry requires authentication - **Regular updates**: Keep runner images up-to-date for security and compatibility -- **Image building**: For AWS and GCP implementations, set `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true"` to allow the server to build custom images +- **Image building**: For AWS and GCP implementations, set `ZENML_KUBERNETES_WORKLOAD_MANAGER_BUILD_RUNNER_IMAGE: "true"` to allow the workspace to build custom images ### Logging and Observability @@ -340,7 +340,7 @@ Configure limits to prevent resource exhaustion: - **Concurrent runs**: Set `ZENML_SERVER_MAX_CONCURRENT_TEMPLATE_RUNS` to limit simultaneous executions (typical: 2-10 depending on runner resources and cluster capacity) - **TTL for completed pods**: Clean up finished pods automatically using `ZENML_KUBERNETES_WORKLOAD_MANAGER_TTL_SECONDS_AFTER_FINISHED` (e.g., 86400 seconds = 24 hours) - **Pod disruption budgets**: For HA setups, define minimum available pods to ensure service continuity -- **Horizontal Pod Autoscaler (HPA)**: For the ZenML server itself (not runners), consider HPA if handling many concurrent run submissions +- **Horizontal Pod Autoscaler (HPA)**: For the ZenML workspace itself (not runners), consider HPA if handling many concurrent run submissions ### Troubleshooting Common Issues @@ -349,11 +349,11 @@ Configure limits to prevent resource exhaustion: - Verify image pull secrets if using private registries - Check resource availability (CPU, memory) in cluster - Review pod events: `kubectl describe pod -n zenml-workload-manager` -- Check server logs for workload manager errors: `kubectl logs -n zenml-workspace deployment/zenml` +- Check workspace logs for workload manager errors: `kubectl logs -n zenml-workspace deployment/zenml` **Logs not appearing:** -- Verify server can reach artifact store and database -- Check network connectivity between cluster and server +- Verify workspace can reach artifact store and database +- Check network connectivity between cluster and workspace - Ensure S3/Cloud Logging permissions are correct - Review pod logs for pipeline execution errors: `kubectl logs -n zenml-workload-manager` @@ -363,11 +363,11 @@ Configure limits to prevent resource exhaustion: - Confirm service account role bindings are in place - Test cluster connectivity: `kubectl cluster-info` -**Runners can't reach server:** +**Runners can't reach workspace:** - Verify egress network policies allow outbound HTTPS (port 443) -- Check firewall rules for ingress/egress to ZenML server -- Confirm server URL is resolvable and reachable from pods -- Test from pod: `kubectl run -it --rm debug --image=curlimages/curl --restart=Never -- curl https:///health` +- Check firewall rules for ingress/egress to ZenML workspace +- Confirm workspace URL is resolvable and reachable from pods +- Test from pod: `kubectl run -it --rm debug --image=curlimages/curl --restart=Never -- curl https:///health` ## Next Steps From cb5d327a66909391387dbde64b90f6f52abddc46 Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 9 Dec 2025 14:28:33 +0100 Subject: [PATCH 26/28] Additional PR comments applied --- .../getting-started/zenml-pro/hybrid-deployment.md | 6 +++--- .../getting-started/zenml-pro/saas-deployment.md | 12 ++---------- .../zenml-pro/self-hosted-deployment.md | 3 +-- 3 files changed, 6 insertions(+), 15 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index a888de7100d..2bfee2372a7 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -48,7 +48,7 @@ In Hybrid deployment, users authenticate via ZenML-hosted control plane (SSO), a - **Secret isolation**: Credentials never leave your environment - **VPN/Firewall compatible**: Workspaces operate behind your security perimeter - **Audit trails**: Complete logging within your infrastructure -- **SOC 2 & ISO 27001 certified**: Enterprise-grade security controls +- **SOC 2 & ISO 27001 certified software**: Meets enterprise security and compliance benchmarks for your peace of mind ### 🎯 Centralized Governance @@ -68,7 +68,7 @@ In Hybrid deployment, users authenticate via ZenML-hosted control plane (SSO), a ### 🚀 Production Ready -- **Automatic updates**: Control plane maintained by ZenML +- **Automatic updates**: Control plane and UI maintained by ZenML - **Professional support**: Direct access to ZenML experts ## Ideal Use Cases @@ -121,7 +121,7 @@ graph LR | Data Type | Storage Location | Purpose | |-----------|-----------------|---------| -| User credentials | Control Plane | Authentication only | +| User metadata | Control Plane | Authentication only | | RBAC policies | Control Plane | Authorization decisions | | Pipeline metadata | Your Infrastructure | Run history, metrics, parameters | | Model metadata | Your Infrastructure | Model versions, stages, annotations | diff --git a/docs/book/getting-started/zenml-pro/saas-deployment.md b/docs/book/getting-started/zenml-pro/saas-deployment.md index a58d57de844..b2114366fab 100644 --- a/docs/book/getting-started/zenml-pro/saas-deployment.md +++ b/docs/book/getting-started/zenml-pro/saas-deployment.md @@ -101,8 +101,7 @@ This keeps all credentials within your infrastructure while still benefiting fro ZenML Pro SaaS uses outbound-only connections from your infrastructure to ZenML services: - No inbound connections required to your infrastructure -- Compatible with firewall and VPN restrictions -- Secure WebSocket connections for real-time updates +- Limited compatibility with firewall and VPN restrictions ### Artifact Store Access @@ -164,14 +163,7 @@ ZenML Pro SaaS includes: ## Migration Path -Already running ZenML OSS? Migrating to SaaS is straightforward: - -1. **Export your data**: Use ZenML's migration tools -2. **Set up SaaS workspace**: Configure your cloud connections -3. **Import metadata**: Transfer existing pipeline history -4. **Update pipelines**: Point to your new ZenML server - -Need help with migration? Our support team can assist. +Already running ZenML OSS? Migrating to SaaS is possible with the assistance of the ZenML support team. Reach out to us at hello@zenml.io or on (slack)[https://zenml.io/slack] to learn more. ## Detailed Architecture Diagram diff --git a/docs/book/getting-started/zenml-pro/self-hosted-deployment.md b/docs/book/getting-started/zenml-pro/self-hosted-deployment.md index 5eb93302bdd..b343705be70 100644 --- a/docs/book/getting-started/zenml-pro/self-hosted-deployment.md +++ b/docs/book/getting-started/zenml-pro/self-hosted-deployment.md @@ -101,8 +101,7 @@ In Self-hosted deployment, users authenticate via your internal identity provide ### 🛡️ Certified & Documented -- **SOC 2 Type II certified**: Enterprise-grade security controls -- **ISO 27001 certified**: International security management standards +- **SOC 2 & ISO 27001 certified software**: Meets enterprise security and compliance benchmarks for your peace of mind - **Vulnerability Assessment Reports**: Available on request - **Software Bill of Materials (SBOM)**: Complete dependency inventory - **Architecture documentation**: Comprehensive deployment guides From fb79faa75d89581e3c23bd6aba604f495fe37e9b Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 9 Dec 2025 14:30:54 +0100 Subject: [PATCH 27/28] Update docs/book/getting-started/zenml-pro/hybrid-deployment.md Co-authored-by: Stefan Nica --- docs/book/getting-started/zenml-pro/hybrid-deployment.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment.md b/docs/book/getting-started/zenml-pro/hybrid-deployment.md index 2bfee2372a7..e3789d75c82 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment.md @@ -111,10 +111,10 @@ graph LR ``` 1. User authenticates with ZenML control plane (SSO) -2. Control plane issues authentication token -3. User accesses workspace with token -4. Workspace validates token with control plane -5. Control plane confirms authorization (RBAC) +2. Control plane issues authentication credentials +3. User accesses workspace with credentials +4. Workspace validates credentials with control plane +5. Control plane confirms authenticaiton and authorization (RBAC) 6. Workspace executes operations on your infrastructure ### Data Residency From df1a223b4a8a945857833d3910b031e79f1c834f Mon Sep 17 00:00:00 2001 From: Alexej Penner Date: Tue, 9 Dec 2025 14:36:46 +0100 Subject: [PATCH 28/28] Update docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md Co-authored-by: Stefan Nica --- docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md index cf9982574dc..66be88dfc42 100644 --- a/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md +++ b/docs/book/getting-started/zenml-pro/hybrid-deployment-helm.md @@ -23,7 +23,7 @@ This guide provides step-by-step instructions for deploying ZenML Pro in a Hybri - `kubectl` configured to access your cluster - `helm` CLI (3.0+) installed - A domain name and TLS certificate for your ZenML server -- MySQL or PostgreSQL database (managed or self-hosted) +- MySQL database (managed or self-hosted) - Outbound HTTPS access to `cloudapi.zenml.io` Before starting, complete the setup described in [Hybrid Deployment Overview](hybrid-deployment.md):