From 5ca0391a5edde2834c2fc91f34ca485c63d24ced Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 5 Jun 2025 16:11:42 -0600 Subject: [PATCH 01/80] WIP monolith getting started restructure --- assets/jsconfig.json | 3 +- .../enterprise/get-started/multi-server.md | 292 +++ .../shared/influxdb3-get-started/_index.md | 1605 +---------------- .../processing-engine.md | 206 +++ content/shared/influxdb3-get-started/query.md | 367 ++++ content/shared/influxdb3-get-started/setup.md | 477 +++++ content/shared/influxdb3-get-started/write.md | 272 +++ content/shared/influxdb3/_index.md | 7 +- 8 files changed, 1622 insertions(+), 1607 deletions(-) create mode 100644 content/influxdb3/enterprise/get-started/multi-server.md create mode 100644 content/shared/influxdb3-get-started/processing-engine.md create mode 100644 content/shared/influxdb3-get-started/query.md create mode 100644 content/shared/influxdb3-get-started/setup.md create mode 100644 content/shared/influxdb3-get-started/write.md diff --git a/assets/jsconfig.json b/assets/jsconfig.json index 377218ccb..4ad710c10 100644 --- a/assets/jsconfig.json +++ b/assets/jsconfig.json @@ -3,7 +3,8 @@ "baseUrl": ".", "paths": { "*": [ - "*" + "*", + "../node_modules/*" ] } } diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md new file mode 100644 index 000000000..42ca6ef0b --- /dev/null +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -0,0 +1,292 @@ +--- +title: Use a multi-server setup +seotitle: Use a multi-server InfluxDB 3 Enterprise setup +menu: + influxdb3_enterprise: + - name: Multi-server + - parent: Get started +weight: 4 +influxdb3/enterprise/tags: [cluster, multi-node, multi-server] +--- + +### Multi-server setup + +{{% product-name %}} is built to support multi-node setups for high availability, read replicas, and flexible implementations depending on use case. + +### High availability + +Enterprise is architecturally flexible, giving you options on how to configure multiple servers that work together for high availability (HA) and high performance. +Built on top of the diskless engine and leveraging the Object store, an HA setup ensures that if a node fails, you can still continue reading from, and writing to, a secondary node. + +A two-node setup is the minimum for basic high availability, with both nodes having read-write permissions. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} + +In a basic HA setup: + +- Two nodes both write data to the same Object store and both handle queries +- Node 1 and Node 2 are _read replicas_ that read from each other’s Object store directories +- One of the nodes is designated as the Compactor node + +> [!Note] +> Only one node can be designated as the Compactor. +> Compacted data is meant for a single writer, and many readers. + +The following examples show how to configure and start two nodes +for a basic HA setup. + +- _Node 1_ is for compaction (passes `compact` in `--mode`) +- _Node 2_ is for ingest and query + +```bash +## NODE 1 + +# Example variables +# node-id: 'host01' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query,compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key +``` + +```bash +## NODE 2 + +# Example variables +# node-id: 'host02' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + +After the nodes have started, querying either node returns data for both nodes, and _NODE 1_ runs compaction. +To add nodes to this setup, start more read replicas with the same cluster ID. + +### High availability with a dedicated Compactor + +Data compaction in InfluxDB 3 is one of the more computationally expensive operations. +To ensure that your read-write nodes don't slow down due to compaction work, set up a compactor-only node for consistent and high performance across all nodes. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} + +The following examples show how to set up high availability with a dedicated Compactor node: + +1. Start two read-write nodes as read replicas, similar to the previous example. + + ```bash + ## NODE 1 — Writer/Reader Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + ```bash + ## NODE 2 — Writer/Reader Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +### High availability with read replicas and a dedicated Compactor + +For a robust and effective setup for managing time-series data, you can run ingest nodes alongside read-only nodes and a dedicated Compactor node. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} + +1. Start ingest nodes by assigning them the **`ingest`** mode. + To achieve the benefits of workload isolation, you'll send _only write requests_ to these ingest nodes. Later, you'll configure the _read-only_ nodes. + + ```bash + ## NODE 1 — Writer Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + + + ```bash + ## NODE 2 — Writer Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated Compactor node with ` compact`. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + + ``` + +3. Finally, start the query nodes as _read-only_ with `--mode query`. + + ```bash + ## NODE 4 — Read Node #1 + + # Example variables + # node-id: 'host04' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host04 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8383 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + ```bash + ## NODE 5 — Read Node #2 + + # Example variables + # node-id: 'host05' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host05 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8484 \ + --aws-access-key-id \ + + ``` + +Congratulations, you have a robust setup for workload isolation using {{% product-name %}}. + +### Writing and querying for multi-node setups + +You can use the default port `8181` for any write or query, without changing any of the commands. + +> [!Note] +> #### Specify hosts for writes and queries +> +> To benefit from this multi-node, isolated architecture, specify hosts: +> +> - In write requests, specify a host that you have designated as _write-only_. +> - In query requests, specify a host that you have designated as _read-only_. +> +> When running multiple local instances for testing or separate nodes in production, specifying the host ensures writes and queries are routed to the correct instance. + +{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} +```bash +# Example querying a specific host +# HTTP-bound Port: 8585 +influxdb3 query \ + --host http://localhost:8585 + --token AUTH_TOKEN \ + --database DATABASE_NAME "QUERY" +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database \ No newline at end of file diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index b2d12227a..4190eb78e 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -28,483 +28,6 @@ This guide covers InfluxDB 3 Core (the open source release), including the follo > The [InfluxDB Discord server](https://discord.gg/9zaNCW2PRT) is the best place to find support for {{% product-name %}}. > For other InfluxDB versions, see the [Support and feedback](#bug-reports-and-feedback) options. -### Install and startup - -{{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. - -{{% show-in "enterprise" %}} -{{% tabs-wrapper %}} -{{% tabs %}} -[Linux or macOS](#linux-or-macos) -[Windows](#windows) -[Docker](#docker) -{{% /tabs %}} -{{% tab-content %}} - -To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): - - -```bash -curl -O https://www.influxdata.com/d/install_influxdb3.sh \ -&& sh install_influxdb3.sh enterprise -``` - -Or, download and install [build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries): - -- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) -- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) -- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) - -> [!Note] -> macOS Intel builds are coming soon. - - -{{% /tab-content %}} -{{% tab-content %}} - -Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) - • -[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - -{{% /tab-content %}} -{{% tab-content %}} - - -The [`influxdb:3-enterprise` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-enterprise) -is available for x86_64 (AMD64) and ARM64 architectures. - -Pull the image: - - -```bash -docker pull influxdb:3-enterprise -``` - - -{{% /tab-content %}} -{{% /tabs-wrapper %}} -{{% /show-in %}} - -{{% show-in "core" %}} -{{% tabs-wrapper %}} -{{% tabs %}} -[Linux or macOS](#linux-or-macos) -[Windows](#windows) -[Docker](#docker) -{{% /tabs %}} -{{% tab-content %}} - -To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): - - -```bash -curl -O https://www.influxdata.com/d/install_influxdb3.sh \ -&& sh install_influxdb3.sh -``` -Or, download and install [build artifacts](/influxdb3/core/install/#download-influxdb-3-core-binaries): - -- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) -- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) -- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) - -> [!Note] -> macOS Intel builds are coming soon. - - -{{% /tab-content %}} -{{% tab-content %}} - -Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) - • -[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - -{{% /tab-content %}} -{{% tab-content %}} - -The [`influxdb:3-core` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-core) -is available for x86_64 (AMD64) and ARM64 architectures. - -Pull the image: - - -```bash -docker pull influxdb:3-core -``` - - -{{% /tab-content %}} -{{% /tabs-wrapper %}} -{{% /show-in %}} - -_Build artifacts and images update with every merge into the {{% product-name %}} `main` branch._ - -#### Verify the install - -After you have installed {{% product-name %}}, enter the following command to verify that it completed successfully: - -```bash -influxdb3 --version -``` - -If your system doesn't locate `influxdb3`, then `source` the configuration file (for example, .bashrc, .zshrc) for your shell--for example: - - -```zsh -source ~/.zshrc -``` - - -#### Start InfluxDB - -To start your InfluxDB instance, use the `influxdb3 serve` command and provide the following: - -- `--object-store`: Specifies the type of object store to use. - InfluxDB supports the following: local file system (`file`), `memory`, - S3 (and compatible services like Ceph or Minio) (`s3`), - Google Cloud Storage (`google`), and Azure Blob Storage (`azure`). - The default is `file`. - Depending on the object store type, you may need to provide additional options - for your object store configuration. -{{% show-in "enterprise" %}} -- `--node-id`: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: `//`. In a multi-node setup, this ID is used to reference specific nodes. -- `--cluster-id`: A string identifier that determines part of the storage path hierarchy. All nodes within the same cluster share this identifier. The storage path follows the pattern `//`. In a multi-node setup, this ID is used to reference the entire cluster. -{{% /show-in %}} -{{% show-in "core" %}} -- `--node-id`: A string identifier that distinguishes individual server instances. - This forms the final part of the storage path: `/`. -{{% /show-in %}} - -The following examples show how to start {{% product-name %}} with different object store configurations. - -> [!Note] -> #### Diskless architecture -> -> InfluxDB 3 supports a diskless architecture that can operate with object -> storage alone, eliminating the need for locally attached disks. -> {{% product-name %}} can also work with only local disk storage when needed. - -{{% show-in "enterprise" %}} -> [!Note] -> The combined path structure `//` ensures proper organization of data in your object store, allowing for clean separation between clusters and individual nodes. -{{% /show-in %}} - -##### Filesystem object store - -Store data in a specified directory on the local filesystem. -This is the default object store type. - -Replace the following with your values: - -{{% show-in "enterprise" %}} -```bash -# Filesystem object store -# Provide the filesystem directory -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --object-store file \ - --data-dir ~/.influxdb3 -``` -{{% /show-in %}} -{{% show-in "core" %}} -```bash -# File system object store -# Provide the file system directory -influxdb3 serve \ - --node-id host01 \ - --object-store file \ - --data-dir ~/.influxdb3 -``` -{{% /show-in %}} - -To run the [Docker image](/influxdb3/version/install/#docker-image) and persist data to the file system, mount a volume for the object store-for example, pass the following options: - -- `-v /path/on/host:/path/in/container`: Mounts a directory from your file system to the container -- `--object-store file --data-dir /path/in/container`: Uses the mount for server storage - - -{{% show-in "enterprise" %}} - -```bash -# File system object store with Docker -# Create a mount -# Provide the mount path -docker run -it \ - -v /path/on/host:/path/in/container \ - influxdb:3-enterprise influxdb3 serve \ - --node-id my_host \ - --cluster-id my_cluster \ - --object-store file \ - --data-dir /path/in/container -``` -{{% /show-in %}} -{{% show-in "core" %}} - -```bash -# File system object store with Docker -# Create a mount -# Provide the mount path -docker run -it \ - -v /path/on/host:/path/in/container \ - influxdb:3-core influxdb3 serve \ - --node-id my_host \ - --object-store file \ - --data-dir /path/in/container -``` -{{% /show-in %}} - -> [!Note] -> -> The {{% product-name %}} Docker image exposes port `8181`, the `influxdb3` server default for HTTP connections. -> To map the exposed port to a different port when running a container, see the Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). - -##### S3 object store - -Store data in an S3-compatible object store. -This is useful for production deployments that require high availability and durability. -Provide your bucket name and credentials to access the S3 object store. - -{{% show-in "enterprise" %}} -```bash -# S3 object store (default is the us-east-1 region) -# Specify the object store type and associated options -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --object-store s3 \ - --bucket OBJECT_STORE_BUCKET \ - --aws-access-key AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` - - -```bash -# Minio or other open source object store -# (using the AWS S3 API with additional parameters) -# Specify the object store type and associated options -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --object-store s3 \ - --bucket OBJECT_STORE_BUCKET \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY \ - --aws-endpoint ENDPOINT \ - --aws-allow-http -``` -{{% /show-in %}} -{{% show-in "core" %}} -```bash -# S3 object store (default is the us-east-1 region) -# Specify the object store type and associated options -influxdb3 serve \ - --node-id host01 \ - --object-store s3 \ - --bucket OBJECT_STORE_BUCKET \ - --aws-access-key AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` - -```bash -# Minio or other open source object store -# (using the AWS S3 API with additional parameters) -# Specify the object store type and associated options -influxdb3 serve \ - --node-id host01 \ - --object-store s3 \ - --bucket OBJECT_STORE_BUCKET \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY \ - --aws-endpoint ENDPOINT \ - --aws-allow-http -``` -{{% /show-in %}} - -#### Memory object store - -Store data in RAM without persisting it on shutdown. -It's useful for rapid testing and development. - -{{% show-in "enterprise" %}} -```bash -# Memory object store -# Stores data in RAM; doesn't persist data -influxdb3 serve \ ---node-id host01 \ ---cluster-id cluster01 \ ---object-store memory -``` -{{% /show-in %}} -{{% show-in "core" %}} -```bash -# Memory object store -# Stores data in RAM; doesn't persist data -influxdb3 serve \ ---node-id host01 \ ---object-store memory -``` -{{% /show-in %}} - -For more information about server options, use the CLI help or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/serve/): - -```bash -influxdb3 serve --help -``` - -> [!Tip] -> #### Run the InfluxDB 3 Explorer query interface (beta) -> -> InfluxDB 3 Explorer (currently in beta) is the web-based query and -> administrative interface for InfluxDB 3. -> It provides visual management of databases and tokens and an easy way to query your time series data. -> -> For more information, see the [InfluxDB 3 Explorer documentation](/influxdb3/explorer/). - -{{% show-in "enterprise" %}} -#### Licensing - -When first starting a new instance, {{% product-name %}} prompts you to select a license type. - -InfluxDB 3 Enterprise licenses authorize the use of the InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are primarily based on the number of CPUs InfluxDB can use, but there are other limitations depending on the license type. The following InfluxDB 3 Enterprise license types are available: - -- **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. -- **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. -- **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. - -You can learn more on managing your InfluxDB 3 Enterprise license on the [Manage your license](https://docs.influxdata.com/influxdb3/enterprise/admin/license/)page. -{{% /show-in %}} - -### Authentication and authorization - -{{% product-name %}} uses token-based authentication and authorization, which is enabled by default when you start the server. - -With authentication enabled, you must provide a token with `influxdb3` CLI commands and HTTP API requests. - -{{% show-in "enterprise" %}} -{{% product-name %}} supports the following types of tokens: - -- **admin token**: Grants access to all CLI actions and API endpoints. A server can have one admin token. -- **resource tokens**: Tokens that grant read and write access to specific resources (databases and system information endpoints) on the server. - - - A database token grants access to write and query data in a - database - - A system token grants read access to system information endpoints and - metrics for the server -{{% /show-in %}} -{{% show-in "core" %}} -{{% product-name %}} supports _admin_ tokens, which grant access to all CLI actions and API endpoints. -{{% /show-in %}} - -For more information about tokens and authorization, see [Manage tokens](/influxdb3/version/admin/tokens/). - -#### Create an operator token - -After you start the server, create your first admin token. -The first admin token you create is the _operator_ token for the server. - -Use the `influxdb3` CLI or the HTTP API to create your operator token. - -> [!Important] -> **Store your token securely** -> -> InfluxDB displays the token string only when you create it. -> Store your token securely—you cannot retrieve it from the database later. - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[CLI](#) -[Docker](#) -{{% /code-tabs %}} -{{% code-tab-content %}} - -```bash -influxdb3 create token --admin -``` - -{{% /code-tab-content %}} -{{% code-tab-content %}} - -{{% code-placeholders "CONTAINER_NAME" %}} -```bash -# With Docker — in a new terminal: -docker exec -it CONTAINER_NAME influxdb3 create token --admin -``` -{{% /code-placeholders %}} - -Replace {{% code-placeholder-key %}}`CONTAINER_NAME`{{% /code-placeholder-key %}} with the name of your running Docker container. - -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -The command returns a token string for authenticating CLI commands and API requests. -Store your token securely—you cannot retrieve it from the database later. - -#### Set your token for authentication - -Use your operator token to authenticate server actions in {{% product-name %}}, -such as creating additional tokens, performing administrative tasks, and writing and querying data. - -Use one of the following methods to provide your token and authenticate `influxdb3` CLI commands. - -In your command, replace {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code-placeholder-key %}} with your token string (for example, the [operator token](#create-an-operator-token) from the previous step). - -{{< tabs-wrapper >}} -{{% tabs %}} -[Environment variable (recommended)](#) -[Command option](#) -{{% /tabs %}} -{{% tab-content %}} - -Set the `INFLUXDB3_AUTH_TOKEN` environment variable to have the CLI use your token automatically: - -{{% code-placeholders "YOUR_AUTH_TOKEN" %}} -```bash -export INFLUXDB3_AUTH_TOKEN=YOUR_AUTH_TOKEN -``` -{{% /code-placeholders %}} - -{{% /tab-content %}} -{{% tab-content %}} - -Include the `--token` option with CLI commands: - -{{% code-placeholders "YOUR_AUTH_TOKEN" %}} -```bash -influxdb3 show databases --token AUTH_TOKEN -``` -{{% /code-placeholders %}} - -{{% /tab-content %}} -{{< /tabs-wrapper >}} - -For HTTP API requests, include your token in the `Authorization` header--for example: - -{{% code-placeholders "AUTH_TOKEN" %}} -```bash -curl "http://{{< influxdb/host >}}/api/v3/configure/database" \ - --header "Authorization: Bearer AUTH_TOKEN" -``` -{{% /code-placeholders %}} - -#### Learn more about tokens and permissions - -- [Manage admin tokens](/influxdb3/version/admin/tokens/admin/) - Understand and manage operator and named admin tokens -{{% show-in "enterprise" %}} -- [Manage resource tokens](/influxdb3/version/admin/tokens/resource/) - Create, list, and delete resource tokens -{{% /show-in %}} -- [Authentication](/influxdb3/version/reference/internals/authentication/) - Understand authentication, authorizations, and permissions in {{% product-name %}} ### Data model @@ -542,1136 +65,11 @@ This tutorial covers many of the recommended tools. {{< req type="key" text="Covered in this guide" color="magenta" >}} {{< /caption >}} -### Write data -InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly. -After a schema is created, InfluxDB validates future write requests against it before accepting the data. -Subsequent requests can add new fields on-the-fly, but can't add new tags. -{{% show-in "core" %}} -> [!Note] -> #### Core is optimized for recent data -> -> {{% product-name %}} is optimized for recent data but accepts writes from any time period. -> The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools. -> For extended historical queries and optimized data organization, consider using [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/). -{{% /show-in %}} -#### Write data in line protocol syntax -{{% product-name %}} accepts data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax. -The following code block is an example of time series data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax: -- `cpu`: the table name. -- `host`, `region`, `applications`: the tags. A tag set is an ordered, comma-separated list of key/value pairs where the values are strings. -- `val`, `usage_percent`, `status`: the fields. A field set is a comma-separated list of key/value pairs. -- timestamp: If you don't specify a timestamp, InfluxData uses the time when data is written. - The default precision is a nanosecond epoch. - To specify a different precision, pass the `precision` parameter in your CLI command or API request. - -``` -cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" -cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" -cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" -cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" -cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" -cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn" -``` - -### Write data using the CLI - -To quickly get started writing data, you can use the `influxdb3` CLI. - -> [!Note] -> For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). -> -> #### Write data using InfluxDB API client libraries -> -> InfluxDB provides supported client libraries that integrate with your code -> to construct data as time series points and write the data as line protocol to your {{% product-name %}} database. -> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). - -##### Example: write data using the influxdb3 CLI - -Use the `influxdb3 write` command to write data to a database. - -In the code samples, replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} - -##### Write data via stdin - -Pass data as quoted line protocol via standard input (stdin)--for example: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 write \ - --database DATABASE_NAME \ - --token AUTH_TOKEN \ - --precision ns \ - --accept-partial \ -'cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" -cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" -cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" -cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" -cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" -cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn"' -``` -{{% /code-placeholders %}} - -##### Write data from a file - -Pass the `--file` option to write line protocol you have saved to a file--for example, save the -[sample line protocol](#write-data-in-line-protocol-syntax) to a file named `server_data` -and then enter the following command: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 write \ - --database DATABASE_NAME \ - --token AUTH_TOKEN \ - --precision ns \ - --accept-partial \ - --file path/to/server_data -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} - -### Write data using the HTTP API - -{{% product-name %}} provides three write API endpoints that respond to HTTP `POST` requests. -The `/api/v3/write_lp` endpoint is the recommended endpoint for writing data and -provides additional options for controlling write behavior. - -If you need to write data using InfluxDB v1.x or v2.x tools, use the compatibility API endpoints. -Compatibility APIs work with [Telegraf](/telegraf/v1/), InfluxDB v2.x and v1.x [API client libraries](/influxdb3/version/reference/client-libraries), and other tools that support the v1.x or v2.x APIs. - -{{% tabs-wrapper %}} -{{% tabs %}} -[/api/v3/write_lp](#) -[v2 compatibility](#) -[v1 compatibility](#) -{{% /tabs %}} -{{% tab-content %}} - -{{% product-name %}} adds the `/api/v3/write_lp` endpoint. - -{{}} - -This endpoint accepts the same line protocol syntax as previous versions, -and supports the following parameters: - -- `?accept_partial=`: Accept or reject partial writes (default is `true`). -- `?no_sync=`: Control when writes are acknowledged: - - `no_sync=true`: Acknowledges writes before WAL persistence completes. - - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). -- `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. -- request body: The line protocol data to write. - -For more information about the parameters, see [Write data](/influxdb3/version/write-data/). - -##### Example: write data using the /api/v3 HTTP API - -The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. -To show the difference between accepting and rejecting partial writes, line `2` in the example contains a `string` value (`"hi"`) for a `float` field (`temp`). - -###### Partial write of line protocol occurred - -With `accept_partial=true` (default): - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "partial write of line protocol occurred", - "data": [ - { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } - ] -} -``` - -Line `1` is written and queryable. -The response is an HTTP error (`400`) status, and the response body contains the error message `partial write of line protocol occurred` with details about the problem line. - -###### Parsing failed for write_lp endpoint - -With `accept_partial=false`: - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&accept_partial=false" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "parsing failed for write_lp endpoint", - "data": { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } -} -``` - -InfluxDB rejects all points in the batch. -The response is an HTTP error (`400`) status, and the response body contains `parsing failed for write_lp endpoint` and details about the problem line. - -For more information about the ingest path and data flow, see [Data durability](/influxdb3/version/reference/internals/durability/). - -{{% /tab-content %}} -{{% tab-content %}} - -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as [Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). - -{{}} - -{{% /tab-content %}} - -{{% tab-content %}} - -The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility for clients that can write data to InfluxDB v1.x. - -{{}} - - -{{% /tab-content %}} -{{% /tabs-wrapper %}} - -> [!Note] -> #### Compatibility APIs differ from native APIs -> -> Keep in mind that the compatibility APIs differ from the v1 and v2 APIs in previous versions in the following ways: -> -> - Tags in a table (measurement) are _immutable_ -> - A tag and a field can't have the same name within a table. - -#### Write responses - -By default, InfluxDB acknowledges writes after flushing the WAL file to the object store (occurring every second). -For high write throughput, you can send multiple concurrent write requests. - -#### Use no_sync for immediate write responses - -To reduce the latency of writes, use the `no_sync` write option, which acknowledges writes _before_ WAL persistence completes. -When `no_sync=true`, InfluxDB validates the data, writes the data to the WAL, and then immediately responds to the client, without waiting for persistence to the object store. - -Using `no_sync=true` is best when prioritizing high-throughput writes over absolute durability. - -- Default behavior (`no_sync=false`): Waits for data to be written to the object store before acknowledging the write. Reduces the risk of data loss, but increases the latency of the response. -- With `no_sync=true`: Reduces write latency, but increases the risk of data loss in case of a crash before WAL persistence. - -##### Immediate write using the HTTP API - -The `no_sync` parameter controls when writes are acknowledged--for example: - -```bash -curl "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&no_sync=true" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw "home,room=Sunroom temp=96" -``` - -### Create a database or table - -To create a database without writing data, use the `create` subcommand--for example: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 create database DATABASE_NAME \ - --token AUTH_TOKEN -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - -To learn more about a subcommand, use the `-h, --help` flag or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/create): - -```bash -influxdb3 create -h -``` - -### Query data - -InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an -SQL-like language customized for time series queries. - -{{% show-in "core" %}} -{{< product-name >}} limits -query time ranges to 72 hours (both recent and historical) to ensure query performance. -For more information about the 72-hour limitation, see the -[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). -{{% /show-in %}} - -> [!Note] -> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. - -The quickest way to get started querying is to use the `influxdb3` CLI (which uses the Flight SQL API over HTTP2). - -The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. - -| Option | Description | Required | -|---------|-------------|--------------| -| `--host` | The host URL of the server [default: `http://127.0.0.1:8181`] to query | No | -| `--database` | The name of the database to operate on | Yes | -| `--token` | The authentication token for the {{% product-name %}} server | No | -| `--language` | The query language of the provided query string [default: `sql`] [possible values: `sql`, `influxql`] | No | -| `--format` | The format in which to output the query [default: `pretty`] [possible values: `pretty`, `json`, `jsonl`, `csv`, `parquet`] | No | -| `--output` | The path to output data to | No | - -#### Example: query `“SHOW TABLES”` on the `servers` database: - -```console -$ influxdb3 query --database servers "SHOW TABLES" -+---------------+--------------------+--------------+------------+ -| table_catalog | table_schema | table_name | table_type | -+---------------+--------------------+--------------+------------+ -| public | iox | cpu | BASE TABLE | -| public | information_schema | tables | VIEW | -| public | information_schema | views | VIEW | -| public | information_schema | columns | VIEW | -| public | information_schema | df_settings | VIEW | -| public | information_schema | schemata | VIEW | -+---------------+--------------------+--------------+------------+ -``` - -#### Example: query the `cpu` table, limiting to 10 rows: - -```console -$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10" -+---------------+---------------------+ -| usage_percent | time | -+---------------+---------------------+ -| 63.4 | 2024-02-21T19:25:00 | -| 25.3 | 2024-02-21T19:06:40 | -| 26.5 | 2024-02-21T19:31:40 | -| 70.1 | 2024-02-21T19:03:20 | -| 83.7 | 2024-02-21T19:30:00 | -| 55.2 | 2024-02-21T19:00:00 | -| 80.5 | 2024-02-21T19:05:00 | -| 60.2 | 2024-02-21T19:33:20 | -| 20.5 | 2024-02-21T18:58:20 | -| 85.2 | 2024-02-21T19:28:20 | -+---------------+---------------------+ -``` - -### Query using the CLI for InfluxQL - -[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations. - -To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 query \ - --database DATABASE_NAME \ - --token \ - --language influxql \ - "SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d" -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} - -### Query using the API - -InfluxDB 3 supports Flight (gRPC) APIs and an HTTP API. -To query your database using the HTTP API, send a request to the `/api/v3/query_sql` or `/api/v3/query_influxql` endpoints. -In the request, specify the database name in the `db` parameter -and a query in the `q` parameter. -You can pass parameters in the query string or inside a JSON object. - -Use the `format` parameter to specify the response format: `pretty`, `jsonl`, `parquet`, `csv`, and `json`. Default is `json`. - -##### Example: Query passing URL-encoded parameters - -The following example sends an HTTP `GET` request with a URL-encoded SQL query: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -curl -G "http://{{< influxdb/host >}}/api/v3/query_sql" \ - --header 'Authorization: Bearer AUTH_TOKEN' \ - --data-urlencode "db=DATABASE_NAME" \ - --data-urlencode "q=select * from cpu limit 5" -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} - -##### Example: Query passing JSON parameters - -The following example sends an HTTP `POST` request with parameters in a JSON payload: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -curl http://{{< influxdb/host >}}/api/v3/query_sql \ - --data '{"db": "DATABASE_NAME", "q": "select * from cpu limit 5"}' -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} - -### Query using the Python client - -Use the InfluxDB 3 Python library to interact with the database and integrate with your application. -We recommend installing the required packages in a Python virtual environment for your specific project. - -To get started, install the `influxdb3-python` package. - -```bash -pip install influxdb3-python -``` - -From here, you can connect to your database with the client library using just the **host** and **database name: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```python -from influxdb_client_3 import InfluxDBClient3 - -client = InfluxDBClient3( - token='AUTH_TOKEN', - host='http://{{< influxdb/host >}}', - database='DATABASE_NAME' -) -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} - -The following example shows how to query using SQL, and then -use PyArrow to explore the schema and process results. -To authorize the query, the example retrieves the {{% token-link "database" %}} -from the `INFLUXDB3_AUTH_TOKEN` environment variable. - -```python -from influxdb_client_3 import InfluxDBClient3 -import os - -client = InfluxDBClient3( - token=os.environ.get('INFLUXDB3_AUTH_TOKEN'), - host='http://{{< influxdb/host >}}', - database='servers' -) - -# Execute the query and return an Arrow table -table = client.query( - query="SELECT * FROM cpu LIMIT 10", - language="sql" -) - -print("\n#### View Schema information\n") -print(table.schema) - -print("\n#### Use PyArrow to read the specified columns\n") -print(table.column('usage_active')) -print(table.select(['host', 'usage_active'])) -print(table.select(['time', 'host', 'usage_active'])) - -print("\n#### Use PyArrow compute functions to aggregate data\n") -print(table.group_by('host').aggregate([])) -print(table.group_by('cpu').aggregate([('time_system', 'mean')])) -``` - -For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. - -### Query using InfluxDB 3 Explorer (Beta) - -You can use the InfluxDB 3 Explorer web-based interface to query and visualize data, -and administer your {{% product-name %}} instance. -For more information, see how to [install InfluxDB 3 Explorer (Beta)](/influxdb3/explorer/install/) using Docker -and get started querying your data. - -### Last values cache - -{{% product-name %}} supports a **last-n values cache** which stores the last N values in a series or column hierarchy in memory. This gives the database the ability to answer these kinds of queries in under 10 milliseconds. - -You can use the `influxdb3` CLI to [create a last value cache](/influxdb3/version/reference/cli/influxdb3/create/last_cache/). - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 create last_cache \ - --token AUTH_TOKEN - --database DATABASE_NAME \ - --table TABLE_NAME \ - CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the last values cache in -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache - -Consider the following `cpu` sample table: - -| host | application | time | usage\_percent | status | -| ----- | ----- | ----- | ----- | ----- | -| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | -| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | -| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | -| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | -| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | - -The following command creates a last value cache named `cpuCache`: - -```bash -influxdb3 create last_cache \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - --table cpu \ - --key-columns host,application \ - --value-columns usage_percent,status \ - --count 5 cpuCache -``` - -_You can create a last values cache per time series, but be mindful of high cardinality tables that could take excessive memory._ - -#### Query a last values cache - -To query data from the LVC, use the [`last_cache()`](/influxdb3/version/reference/sql/functions/cache/#last_cache) function in your query--for example: - -```bash -influxdb3 query \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - "SELECT * FROM last_cache('cpu', 'cpuCache') WHERE host = 'Bravo';" -``` - -> [!Note] -> #### Only works with SQL -> -> The last values cache only works with SQL, not InfluxQL; SQL is the default language. - -#### Delete a last values cache - -Use the `influxdb3` CLI to [delete a last values cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) - -{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 delete last_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --cache-name CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the last values cache from -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the last values cache from -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the last values cache to delete - -### Distinct values cache - -Similar to the [last values cache](#last-values-cache), the database can cache in RAM the distinct values for a single column in a table or a hierarchy of columns. -This is useful for fast metadata lookups, which can return in under 30 milliseconds. -Many of the options are similar to the last value cache. - -You can use the `influxdb3` CLI to [create a distinct values cache](/influxdb3/version/reference/cli/influxdb3/create/distinct_cache/). - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 create distinct_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --columns COLUMNS \ - CACHE_NAME -``` -{{% /code-placeholders %}} -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the distinct values cache in -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache - -Consider the following `cpu` sample table: - -| host | application | time | usage\_percent | status | -| ----- | ----- | ----- | ----- | ----- | -| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | -| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | -| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | -| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | -| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | - -The following command creates a distinct values cache named `cpuDistinctCache`: - -```bash -influxdb3 create distinct_cache \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - --table cpu \ - --columns host,application \ - cpuDistinctCache -``` - -#### Query a distinct values cache - -To query data from the distinct values cache, use the [`distinct_cache()`](/influxdb3/version/reference/sql/functions/cache/#distinct_cache) function in your query--for example: - -```bash -influxdb3 query \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - "SELECT * FROM distinct_cache('cpu', 'cpuDistinctCache')" -``` - -> [!Note] -> #### Only works with SQL -> -> The distinct cache only works with SQL, not InfluxQL; SQL is the default language. - -#### Delete a distinct values cache - -Use the `influxdb3` CLI to [delete a distinct values cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) - -{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 delete distinct_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --cache-name CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the distinct values cache from -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the distinct values cache from -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the distinct values cache to delete - -### Python plugins and the processing engine - -The InfluxDB 3 processing engine is an embedded Python VM for running code inside the database to process and transform data. - -To activate the processing engine, pass the `--plugin-dir ` option when starting the {{% product-name %}} server. -`PLUGIN_DIR` is your filesystem location for storing [plugin](#plugin) files for the processing engine to run. - -#### Plugin - -A plugin is a Python function that has a signature compatible with a Processing engine [trigger](#trigger). - -#### Trigger - -When you create a trigger, you specify a [plugin](#plugin), a database, optional arguments, -and a _trigger-spec_, which defines when the plugin is executed and what data it receives. - -##### Trigger types - -InfluxDB 3 provides the following types of triggers, each with specific trigger-specs: - -- **On WAL flush**: Sends a batch of written data (for a specific table or all tables) to a plugin (by default, every second). -- **On Schedule**: Executes a plugin on a user-configured schedule (using a crontab or a duration); useful for data collection and deadman monitoring. -- **On Request**: Binds a plugin to a custom HTTP API endpoint at `/api/v3/engine/`. - The plugin receives the HTTP request headers and content, and can then parse, process, and send the data into the database or to third-party services. - -### Test, create, and trigger plugin code - -##### Example: Python plugin for WAL rows - -```python -# This is the basic structure for Python plugin code that runs in the -# InfluxDB 3 Processing engine. - -# When creating a trigger, you can provide runtime arguments to your plugin, -# allowing you to write generic code that uses variables such as monitoring -thresholds, environment variables, and host names. -# -# Use the following exact signature to define a function for the WAL flush -# trigger. -# When you create a trigger for a WAL flush plugin, you specify the database -# and tables that the plugin receives written data from on every WAL flush -# (default is once per second). -def process_writes(influxdb3_local, table_batches, args=None): - # here you can see logging. for now this won't do anything, but soon - # we'll capture this so you can query it from system tables - if args and "arg1" in args: - influxdb3_local.info("arg1: " + args["arg1"]) - - # here we're using arguments provided at the time the trigger was set up - # to feed into paramters that we'll put into a query - query_params = {"host": "foo"} - # here's an example of executing a parameterized query. Only SQL is supported. - # It will query the database that the trigger is attached to by default. We'll - # soon have support for querying other DBs. - query_result = influxdb3_local.query("SELECT * FROM cpu where host = '$host'", query_params) - # the result is a list of Dict that have the column name as key and value as - # value. If you run the WAL test plugin with your plugin against a DB that - # you've written data into, you'll be able to see some results - influxdb3_local.info("query result: " + str(query_result)) - - # this is the data that is sent when the WAL is flushed of writes the server - # received for the DB or table of interest. One batch for each table (will - # only be one if triggered on a single table) - for table_batch in table_batches: - # here you can see that the table_name is available. - influxdb3_local.info("table: " + table_batch["table_name"]) - - # example to skip the table we're later writing data into - if table_batch["table_name"] == "some_table": - continue - - # and then the individual rows, which are Dict with keys of the column names and values - for row in table_batch["rows"]: - influxdb3_local.info("row: " + str(row)) - - # this shows building a line of LP to write back to the database. tags must go first and - # their order is important and must always be the same for each individual table. Then - # fields and lastly an optional time, which you can see in the next example below - line = LineBuilder("some_table")\ - .tag("tag1", "tag1_value")\ - .tag("tag2", "tag2_value")\ - .int64_field("field1", 1)\ - .float64_field("field2", 2.0)\ - .string_field("field3", "number three") - - # this writes it back (it actually just buffers it until the completion of this function - # at which point it will write everything back that you put in) - influxdb3_local.write(line) - - # here's another example, but with us setting a nanosecond timestamp at the end - other_line = LineBuilder("other_table") - other_line.int64_field("other_field", 1) - other_line.float64_field("other_field2", 3.14) - other_line.time_ns(1302) - - # and you can see that we can write to any DB in the server - influxdb3_local.write_to_db("mytestdb", other_line) - - # just some log output as an example - influxdb3_local.info("done") -``` - -##### Test a plugin on the server - -Test your InfluxDB 3 plugin safely without affecting written data. During a plugin test: - -- A query executed by the plugin queries against the server you send the request to. -- Writes aren't sent to the server but are returned to you. - -To test a plugin, do the following: - -1. Create a _plugin directory_--for example, `/path/to/.influxdb/plugins` -2. [Start the InfluxDB server](#start-influxdb) and include the `--plugin-dir ` option. -3. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. -4. To run the test, enter the following command with the following options: - - - `--lp` or `--file`: The line protocol to test - - Optional: `--input-arguments`: A comma-delimited list of `=` arguments for your plugin code - -{{% code-placeholders "INPUT_LINE_PROTOCOL|INPUT_ARGS|DATABASE_NAME|AUTH_TOKEN|PLUGIN_FILENAME" %}} -```bash -influxdb3 test wal_plugin \ ---lp INPUT_LINE_PROTOCOL \ ---input-arguments INPUT_ARGS \ ---database DATABASE_NAME \ ---token AUTH_TOKEN \ -PLUGIN_FILENAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`INPUT_LINE_PROTOCOL`{{% /code-placeholder-key %}}: the line protocol to test -- Optional: {{% code-placeholder-key %}}`INPUT_ARGS`{{% /code-placeholder-key %}}: a comma-delimited list of `=` arguments for your plugin code--for example, `arg1=hello,arg2=world` -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to test against -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server -- {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test - -The command runs the plugin code with the test data, yields the data to the plugin code, and then responds with the plugin result. -You can quickly see how the plugin behaves, what data it would have written to the database, and any errors. -You can then edit your Python code in the plugins directory, and rerun the test. -The server reloads the file for every request to the `test` API. - -For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. - -With the plugin code inside the server plugin directory, and a successful test, -you're ready to create a plugin and a trigger to run on the server. - -##### Example: Test, create, and run a plugin - -The following example shows how to test a plugin, and then create the plugin and -trigger: - -```bash -# Test and create a plugin -# Requires: -# - A database named `mydb` with a table named `foo` -# - A Python plugin file named `test.py` -# Test a plugin -influxdb3 test wal_plugin \ - --lp "my_measure,tag1=asdf f1=1.0 123" \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database sensors \ - --input-arguments "arg1=hello,arg2=world" \ - test.py -``` - -```bash -# Create a trigger that runs the plugin -influxdb3 create trigger \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database sensors \ - --plugin test_plugin \ - --trigger-spec "table:foo" \ - --trigger-arguments "arg1=hello,arg2=world" \ - trigger1 -``` - -After you have created a plugin and trigger, enter the following command to -enable the trigger and have it run the plugin as you write data: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TRIGGER_NAME" %}} -```bash -influxdb3 enable trigger \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - TRIGGER_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to enable the trigger in -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`TRIGGER_NAME`{{% /code-placeholder-key %}}: the name of the trigger to enable - -For example, to enable the trigger named `trigger1` in the `sensors` database: - -```bash -influxdb3 enable trigger \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database sensors - trigger1 -``` - -For more information, see [Python plugins and the Processing engine](/influxdb3/version/plugins/). - -{{% show-in "enterprise" %}} -### Multi-server setup - -{{% product-name %}} is built to support multi-node setups for high availability, read replicas, and flexible implementations depending on use case. - -### High availability - -Enterprise is architecturally flexible, giving you options on how to configure multiple servers that work together for high availability (HA) and high performance. -Built on top of the diskless engine and leveraging the Object store, an HA setup ensures that if a node fails, you can still continue reading from, and writing to, a secondary node. - -A two-node setup is the minimum for basic high availability, with both nodes having read-write permissions. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} - -In a basic HA setup: - -- Two nodes both write data to the same Object store and both handle queries -- Node 1 and Node 2 are _read replicas_ that read from each other’s Object store directories -- One of the nodes is designated as the Compactor node - -> [!Note] -> Only one node can be designated as the Compactor. -> Compacted data is meant for a single writer, and many readers. - -The following examples show how to configure and start two nodes -for a basic HA setup. - -- _Node 1_ is for compaction (passes `compact` in `--mode`) -- _Node 2_ is for ingest and query - -```bash -## NODE 1 - -# Example variables -# node-id: 'host01' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query,compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key -``` - -```bash -## NODE 2 - -# Example variables -# node-id: 'host02' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` - -After the nodes have started, querying either node returns data for both nodes, and _NODE 1_ runs compaction. -To add nodes to this setup, start more read replicas with the same cluster ID. - -### High availability with a dedicated Compactor - -Data compaction in InfluxDB 3 is one of the more computationally expensive operations. -To ensure that your read-write nodes don't slow down due to compaction work, set up a compactor-only node for consistent and high performance across all nodes. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} - -The following examples show how to set up high availability with a dedicated Compactor node: - -1. Start two read-write nodes as read replicas, similar to the previous example. - - ```bash - ## NODE 1 — Writer/Reader Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - ```bash - ## NODE 2 — Writer/Reader Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -### High availability with read replicas and a dedicated Compactor - -For a robust and effective setup for managing time-series data, you can run ingest nodes alongside read-only nodes and a dedicated Compactor node. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} - -1. Start ingest nodes by assigning them the **`ingest`** mode. - To achieve the benefits of workload isolation, you'll send _only write requests_ to these ingest nodes. Later, you'll configure the _read-only_ nodes. - - ```bash - ## NODE 1 — Writer Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - - - ```bash - ## NODE 2 — Writer Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated Compactor node with ` compact`. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - - ``` - -3. Finally, start the query nodes as _read-only_ with `--mode query`. - - ```bash - ## NODE 4 — Read Node #1 - - # Example variables - # node-id: 'host04' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host04 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8383 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - ```bash - ## NODE 5 — Read Node #2 - - # Example variables - # node-id: 'host05' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host05 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8484 \ - --aws-access-key-id \ - - ``` - -Congratulations, you have a robust setup for workload isolation using {{% product-name %}}. - -### Writing and querying for multi-node setups - -You can use the default port `8181` for any write or query, without changing any of the commands. - -> [!Note] -> #### Specify hosts for writes and queries -> -> To benefit from this multi-node, isolated architecture, specify hosts: -> -> - In write requests, specify a host that you have designated as _write-only_. -> - In query requests, specify a host that you have designated as _read-only_. -> -> When running multiple local instances for testing or separate nodes in production, specifying the host ensures writes and queries are routed to the correct instance. - -{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} -```bash -# Example querying a specific host -# HTTP-bound Port: 8585 -influxdb3 query \ - --host http://localhost:8585 - --token AUTH_TOKEN \ - --database DATABASE_NAME "QUERY" -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database ### File index settings @@ -1709,5 +107,4 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the file index in - {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the file index in -- {{% code-placeholder-key %}}`COLUMNS`{{% /code-placeholder-key %}}: a comma-separated list of columns to index on, for example, `host,application` -{{% /show-in %}} \ No newline at end of file +- {{% code-placeholder-key %}}`COLUMNS`{{% /code-placeholder-key %}}: a comma-separated list of columns to index on, for example, `host,application` \ No newline at end of file diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md new file mode 100644 index 000000000..91d6f0a92 --- /dev/null +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -0,0 +1,206 @@ +### Python plugins and the processing engine + +The InfluxDB 3 processing engine is an embedded Python VM for running code inside the database to process and transform data. + +To activate the processing engine, pass the `--plugin-dir ` option when starting the {{% product-name %}} server. +`PLUGIN_DIR` is your filesystem location for storing [plugin](#plugin) files for the processing engine to run. + +#### Plugin + +A plugin is a Python function that has a signature compatible with a Processing engine [trigger](#trigger). + +#### Trigger + +When you create a trigger, you specify a [plugin](#plugin), a database, optional arguments, +and a _trigger-spec_, which defines when the plugin is executed and what data it receives. + +##### Trigger types + +InfluxDB 3 provides the following types of triggers, each with specific trigger-specs: + +- **On WAL flush**: Sends a batch of written data (for a specific table or all tables) to a plugin (by default, every second). +- **On Schedule**: Executes a plugin on a user-configured schedule (using a crontab or a duration); useful for data collection and deadman monitoring. +- **On Request**: Binds a plugin to a custom HTTP API endpoint at `/api/v3/engine/`. + The plugin receives the HTTP request headers and content, and can then parse, process, and send the data into the database or to third-party services. + +### Test, create, and trigger plugin code + +##### Example: Python plugin for WAL rows + +```python +# This is the basic structure for Python plugin code that runs in the +# InfluxDB 3 Processing engine. + +# When creating a trigger, you can provide runtime arguments to your plugin, +# allowing you to write generic code that uses variables such as monitoring +thresholds, environment variables, and host names. +# +# Use the following exact signature to define a function for the WAL flush +# trigger. +# When you create a trigger for a WAL flush plugin, you specify the database +# and tables that the plugin receives written data from on every WAL flush +# (default is once per second). +def process_writes(influxdb3_local, table_batches, args=None): + # here you can see logging. for now this won't do anything, but soon + # we'll capture this so you can query it from system tables + if args and "arg1" in args: + influxdb3_local.info("arg1: " + args["arg1"]) + + # here we're using arguments provided at the time the trigger was set up + # to feed into paramters that we'll put into a query + query_params = {"host": "foo"} + # here's an example of executing a parameterized query. Only SQL is supported. + # It will query the database that the trigger is attached to by default. We'll + # soon have support for querying other DBs. + query_result = influxdb3_local.query("SELECT * FROM cpu where host = '$host'", query_params) + # the result is a list of Dict that have the column name as key and value as + # value. If you run the WAL test plugin with your plugin against a DB that + # you've written data into, you'll be able to see some results + influxdb3_local.info("query result: " + str(query_result)) + + # this is the data that is sent when the WAL is flushed of writes the server + # received for the DB or table of interest. One batch for each table (will + # only be one if triggered on a single table) + for table_batch in table_batches: + # here you can see that the table_name is available. + influxdb3_local.info("table: " + table_batch["table_name"]) + + # example to skip the table we're later writing data into + if table_batch["table_name"] == "some_table": + continue + + # and then the individual rows, which are Dict with keys of the column names and values + for row in table_batch["rows"]: + influxdb3_local.info("row: " + str(row)) + + # this shows building a line of LP to write back to the database. tags must go first and + # their order is important and must always be the same for each individual table. Then + # fields and lastly an optional time, which you can see in the next example below + line = LineBuilder("some_table")\ + .tag("tag1", "tag1_value")\ + .tag("tag2", "tag2_value")\ + .int64_field("field1", 1)\ + .float64_field("field2", 2.0)\ + .string_field("field3", "number three") + + # this writes it back (it actually just buffers it until the completion of this function + # at which point it will write everything back that you put in) + influxdb3_local.write(line) + + # here's another example, but with us setting a nanosecond timestamp at the end + other_line = LineBuilder("other_table") + other_line.int64_field("other_field", 1) + other_line.float64_field("other_field2", 3.14) + other_line.time_ns(1302) + + # and you can see that we can write to any DB in the server + influxdb3_local.write_to_db("mytestdb", other_line) + + # just some log output as an example + influxdb3_local.info("done") +``` + +##### Test a plugin on the server + +Test your InfluxDB 3 plugin safely without affecting written data. During a plugin test: + +- A query executed by the plugin queries against the server you send the request to. +- Writes aren't sent to the server but are returned to you. + +To test a plugin, do the following: + +1. Create a _plugin directory_--for example, `/path/to/.influxdb/plugins` +2. [Start the InfluxDB server](#start-influxdb) and include the `--plugin-dir ` option. +3. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. +4. To run the test, enter the following command with the following options: + + - `--lp` or `--file`: The line protocol to test + - Optional: `--input-arguments`: A comma-delimited list of `=` arguments for your plugin code + +{{% code-placeholders "INPUT_LINE_PROTOCOL|INPUT_ARGS|DATABASE_NAME|AUTH_TOKEN|PLUGIN_FILENAME" %}} +```bash +influxdb3 test wal_plugin \ +--lp INPUT_LINE_PROTOCOL \ +--input-arguments INPUT_ARGS \ +--database DATABASE_NAME \ +--token AUTH_TOKEN \ +PLUGIN_FILENAME +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`INPUT_LINE_PROTOCOL`{{% /code-placeholder-key %}}: the line protocol to test +- Optional: {{% code-placeholder-key %}}`INPUT_ARGS`{{% /code-placeholder-key %}}: a comma-delimited list of `=` arguments for your plugin code--for example, `arg1=hello,arg2=world` +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to test against +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server +- {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test + +The command runs the plugin code with the test data, yields the data to the plugin code, and then responds with the plugin result. +You can quickly see how the plugin behaves, what data it would have written to the database, and any errors. +You can then edit your Python code in the plugins directory, and rerun the test. +The server reloads the file for every request to the `test` API. + +For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. + +With the plugin code inside the server plugin directory, and a successful test, +you're ready to create a plugin and a trigger to run on the server. + +##### Example: Test, create, and run a plugin + +The following example shows how to test a plugin, and then create the plugin and +trigger: + +```bash +# Test and create a plugin +# Requires: +# - A database named `mydb` with a table named `foo` +# - A Python plugin file named `test.py` +# Test a plugin +influxdb3 test wal_plugin \ + --lp "my_measure,tag1=asdf f1=1.0 123" \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database sensors \ + --input-arguments "arg1=hello,arg2=world" \ + test.py +``` + +```bash +# Create a trigger that runs the plugin +influxdb3 create trigger \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database sensors \ + --plugin test_plugin \ + --trigger-spec "table:foo" \ + --trigger-arguments "arg1=hello,arg2=world" \ + trigger1 +``` + +After you have created a plugin and trigger, enter the following command to +enable the trigger and have it run the plugin as you write data: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TRIGGER_NAME" %}} +```bash +influxdb3 enable trigger \ + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + TRIGGER_NAME +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to enable the trigger in +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`TRIGGER_NAME`{{% /code-placeholder-key %}}: the name of the trigger to enable + +For example, to enable the trigger named `trigger1` in the `sensors` database: + +```bash +influxdb3 enable trigger \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database sensors + trigger1 +``` + +For more information, see [Python plugins and the Processing engine](/influxdb3/version/plugins/). diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md new file mode 100644 index 000000000..40dd21609 --- /dev/null +++ b/content/shared/influxdb3-get-started/query.md @@ -0,0 +1,367 @@ +### Query data + +InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an +SQL-like language customized for time series queries. + +{{% show-in "core" %}} +{{< product-name >}} limits +query time ranges to 72 hours (both recent and historical) to ensure query performance. +For more information about the 72-hour limitation, see the +[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). +{{% /show-in %}} + +> [!Note] +> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. + +The quickest way to get started querying is to use the `influxdb3` CLI (which uses the Flight SQL API over HTTP2). + +The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. + +| Option | Description | Required | +|---------|-------------|--------------| +| `--host` | The host URL of the server [default: `http://127.0.0.1:8181`] to query | No | +| `--database` | The name of the database to operate on | Yes | +| `--token` | The authentication token for the {{% product-name %}} server | No | +| `--language` | The query language of the provided query string [default: `sql`] [possible values: `sql`, `influxql`] | No | +| `--format` | The format in which to output the query [default: `pretty`] [possible values: `pretty`, `json`, `jsonl`, `csv`, `parquet`] | No | +| `--output` | The path to output data to | No | + +#### Example: query `“SHOW TABLES”` on the `servers` database: + +```console +$ influxdb3 query --database servers "SHOW TABLES" ++---------------+--------------------+--------------+------------+ +| table_catalog | table_schema | table_name | table_type | ++---------------+--------------------+--------------+------------+ +| public | iox | cpu | BASE TABLE | +| public | information_schema | tables | VIEW | +| public | information_schema | views | VIEW | +| public | information_schema | columns | VIEW | +| public | information_schema | df_settings | VIEW | +| public | information_schema | schemata | VIEW | ++---------------+--------------------+--------------+------------+ +``` + +#### Example: query the `cpu` table, limiting to 10 rows: + +```console +$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10" ++---------------+---------------------+ +| usage_percent | time | ++---------------+---------------------+ +| 63.4 | 2024-02-21T19:25:00 | +| 25.3 | 2024-02-21T19:06:40 | +| 26.5 | 2024-02-21T19:31:40 | +| 70.1 | 2024-02-21T19:03:20 | +| 83.7 | 2024-02-21T19:30:00 | +| 55.2 | 2024-02-21T19:00:00 | +| 80.5 | 2024-02-21T19:05:00 | +| 60.2 | 2024-02-21T19:33:20 | +| 20.5 | 2024-02-21T18:58:20 | +| 85.2 | 2024-02-21T19:28:20 | ++---------------+---------------------+ +``` + +### Query using the CLI for InfluxQL + +[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations. + +To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +influxdb3 query \ + --database DATABASE_NAME \ + --token \ + --language influxql \ + "SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d" +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} + +### Query using the API + +InfluxDB 3 supports Flight (gRPC) APIs and an HTTP API. +To query your database using the HTTP API, send a request to the `/api/v3/query_sql` or `/api/v3/query_influxql` endpoints. +In the request, specify the database name in the `db` parameter +and a query in the `q` parameter. +You can pass parameters in the query string or inside a JSON object. + +Use the `format` parameter to specify the response format: `pretty`, `jsonl`, `parquet`, `csv`, and `json`. Default is `json`. + +##### Example: Query passing URL-encoded parameters + +The following example sends an HTTP `GET` request with a URL-encoded SQL query: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +curl -G "http://{{< influxdb/host >}}/api/v3/query_sql" \ + --header 'Authorization: Bearer AUTH_TOKEN' \ + --data-urlencode "db=DATABASE_NAME" \ + --data-urlencode "q=select * from cpu limit 5" +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} + +##### Example: Query passing JSON parameters + +The following example sends an HTTP `POST` request with parameters in a JSON payload: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +curl http://{{< influxdb/host >}}/api/v3/query_sql \ + --data '{"db": "DATABASE_NAME", "q": "select * from cpu limit 5"}' +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} + +### Query using the Python client + +Use the InfluxDB 3 Python library to interact with the database and integrate with your application. +We recommend installing the required packages in a Python virtual environment for your specific project. + +To get started, install the `influxdb3-python` package. + +```bash +pip install influxdb3-python +``` + +From here, you can connect to your database with the client library using just the **host** and **database name: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```python +from influxdb_client_3 import InfluxDBClient3 + +client = InfluxDBClient3( + token='AUTH_TOKEN', + host='http://{{< influxdb/host >}}', + database='DATABASE_NAME' +) +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} + +The following example shows how to query using SQL, and then +use PyArrow to explore the schema and process results. +To authorize the query, the example retrieves the {{% token-link "database" %}} +from the `INFLUXDB3_AUTH_TOKEN` environment variable. + +```python +from influxdb_client_3 import InfluxDBClient3 +import os + +client = InfluxDBClient3( + token=os.environ.get('INFLUXDB3_AUTH_TOKEN'), + host='http://{{< influxdb/host >}}', + database='servers' +) + +# Execute the query and return an Arrow table +table = client.query( + query="SELECT * FROM cpu LIMIT 10", + language="sql" +) + +print("\n#### View Schema information\n") +print(table.schema) + +print("\n#### Use PyArrow to read the specified columns\n") +print(table.column('usage_active')) +print(table.select(['host', 'usage_active'])) +print(table.select(['time', 'host', 'usage_active'])) + +print("\n#### Use PyArrow compute functions to aggregate data\n") +print(table.group_by('host').aggregate([])) +print(table.group_by('cpu').aggregate([('time_system', 'mean')])) +``` + +For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. + +### Query using InfluxDB 3 Explorer (Beta) + +You can use the InfluxDB 3 Explorer web-based interface to query and visualize data, +and administer your {{% product-name %}} instance. +For more information, see how to [install InfluxDB 3 Explorer (Beta)](/influxdb3/explorer/install/) using Docker +and get started querying your data. + +### Last values cache + +{{% product-name %}} supports a **last-n values cache** which stores the last N values in a series or column hierarchy in memory. This gives the database the ability to answer these kinds of queries in under 10 milliseconds. + +You can use the `influxdb3` CLI to [create a last value cache](/influxdb3/version/reference/cli/influxdb3/create/last_cache/). + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} +```bash +influxdb3 create last_cache \ + --token AUTH_TOKEN + --database DATABASE_NAME \ + --table TABLE_NAME \ + CACHE_NAME +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the last values cache in +- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache + +Consider the following `cpu` sample table: + +| host | application | time | usage\_percent | status | +| ----- | ----- | ----- | ----- | ----- | +| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | +| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | +| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | +| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | +| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | + +The following command creates a last value cache named `cpuCache`: + +```bash +influxdb3 create last_cache \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database servers \ + --table cpu \ + --key-columns host,application \ + --value-columns usage_percent,status \ + --count 5 cpuCache +``` + +_You can create a last values cache per time series, but be mindful of high cardinality tables that could take excessive memory._ + +#### Query a last values cache + +To query data from the LVC, use the [`last_cache()`](/influxdb3/version/reference/sql/functions/cache/#last_cache) function in your query--for example: + +```bash +influxdb3 query \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database servers \ + "SELECT * FROM last_cache('cpu', 'cpuCache') WHERE host = 'Bravo';" +``` + +> [!Note] +> #### Only works with SQL +> +> The last values cache only works with SQL, not InfluxQL; SQL is the default language. + +#### Delete a last values cache + +Use the `influxdb3` CLI to [delete a last values cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) + +{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} +```bash +influxdb3 delete last_cache \ + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + --table TABLE \ + --cache-name CACHE_NAME +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the last values cache from +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the last values cache from +- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the last values cache to delete + +### Distinct values cache + +Similar to the [last values cache](#last-values-cache), the database can cache in RAM the distinct values for a single column in a table or a hierarchy of columns. +This is useful for fast metadata lookups, which can return in under 30 milliseconds. +Many of the options are similar to the last value cache. + +You can use the `influxdb3` CLI to [create a distinct values cache](/influxdb3/version/reference/cli/influxdb3/create/distinct_cache/). + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} +```bash +influxdb3 create distinct_cache \ + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + --table TABLE \ + --columns COLUMNS \ + CACHE_NAME +``` +{{% /code-placeholders %}} +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the distinct values cache in +- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache + +Consider the following `cpu` sample table: + +| host | application | time | usage\_percent | status | +| ----- | ----- | ----- | ----- | ----- | +| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | +| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | +| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | +| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | +| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | + +The following command creates a distinct values cache named `cpuDistinctCache`: + +```bash +influxdb3 create distinct_cache \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database servers \ + --table cpu \ + --columns host,application \ + cpuDistinctCache +``` + +#### Query a distinct values cache + +To query data from the distinct values cache, use the [`distinct_cache()`](/influxdb3/version/reference/sql/functions/cache/#distinct_cache) function in your query--for example: + +```bash +influxdb3 query \ + --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ + --database servers \ + "SELECT * FROM distinct_cache('cpu', 'cpuDistinctCache')" +``` + +> [!Note] +> #### Only works with SQL +> +> The distinct cache only works with SQL, not InfluxQL; SQL is the default language. + +#### Delete a distinct values cache + +Use the `influxdb3` CLI to [delete a distinct values cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) + +{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} +```bash +influxdb3 delete distinct_cache \ + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + --table TABLE \ + --cache-name CACHE_NAME +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the distinct values cache from +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the distinct values cache from +- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the distinct values cache to delete \ No newline at end of file diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md new file mode 100644 index 000000000..9d857e51a --- /dev/null +++ b/content/shared/influxdb3-get-started/setup.md @@ -0,0 +1,477 @@ +### Install and startup + +{{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. + +{{% show-in "enterprise" %}} +{{% tabs-wrapper %}} +{{% tabs %}} +[Linux or macOS](#linux-or-macos) +[Windows](#windows) +[Docker](#docker) +{{% /tabs %}} +{{% tab-content %}} + +To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): + + +```bash +curl -O https://www.influxdata.com/d/install_influxdb3.sh \ +&& sh install_influxdb3.sh enterprise +``` + +Or, download and install [build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries): + +- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) +- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) +- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) + +> [!Note] +> macOS Intel builds are coming soon. + + +{{% /tab-content %}} +{{% tab-content %}} + +Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) + • +[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) + +{{% /tab-content %}} +{{% tab-content %}} + + +The [`influxdb:3-enterprise` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-enterprise) +is available for x86_64 (AMD64) and ARM64 architectures. + +Pull the image: + + +```bash +docker pull influxdb:3-enterprise +``` + + +{{% /tab-content %}} +{{% /tabs-wrapper %}} +{{% /show-in %}} + +{{% show-in "core" %}} +{{% tabs-wrapper %}} +{{% tabs %}} +[Linux or macOS](#linux-or-macos) +[Windows](#windows) +[Docker](#docker) +{{% /tabs %}} +{{% tab-content %}} + +To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): + + +```bash +curl -O https://www.influxdata.com/d/install_influxdb3.sh \ +&& sh install_influxdb3.sh +``` +Or, download and install [build artifacts](/influxdb3/core/install/#download-influxdb-3-core-binaries): + +- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) +- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) +- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) + • + [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) + +> [!Note] +> macOS Intel builds are coming soon. + + +{{% /tab-content %}} +{{% tab-content %}} + +Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) + • +[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) + +{{% /tab-content %}} +{{% tab-content %}} + +The [`influxdb:3-core` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-core) +is available for x86_64 (AMD64) and ARM64 architectures. + +Pull the image: + + +```bash +docker pull influxdb:3-core +``` + + +{{% /tab-content %}} +{{% /tabs-wrapper %}} +{{% /show-in %}} + +_Build artifacts and images update with every merge into the {{% product-name %}} `main` branch._ + +#### Verify the install + +After you have installed {{% product-name %}}, enter the following command to verify that it completed successfully: + +```bash +influxdb3 --version +``` + +If your system doesn't locate `influxdb3`, then `source` the configuration file (for example, .bashrc, .zshrc) for your shell--for example: + + +```zsh +source ~/.zshrc +``` + + +#### Start InfluxDB + +To start your InfluxDB instance, use the `influxdb3 serve` command and provide the following: + +- `--object-store`: Specifies the type of object store to use. + InfluxDB supports the following: local file system (`file`), `memory`, + S3 (and compatible services like Ceph or Minio) (`s3`), + Google Cloud Storage (`google`), and Azure Blob Storage (`azure`). + The default is `file`. + Depending on the object store type, you may need to provide additional options + for your object store configuration. +{{% show-in "enterprise" %}} +- `--node-id`: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: `//`. In a multi-node setup, this ID is used to reference specific nodes. +- `--cluster-id`: A string identifier that determines part of the storage path hierarchy. All nodes within the same cluster share this identifier. The storage path follows the pattern `//`. In a multi-node setup, this ID is used to reference the entire cluster. +{{% /show-in %}} +{{% show-in "core" %}} +- `--node-id`: A string identifier that distinguishes individual server instances. + This forms the final part of the storage path: `/`. +{{% /show-in %}} + +The following examples show how to start {{% product-name %}} with different object store configurations. + +> [!Note] +> #### Diskless architecture +> +> InfluxDB 3 supports a diskless architecture that can operate with object +> storage alone, eliminating the need for locally attached disks. +> {{% product-name %}} can also work with only local disk storage when needed. + +{{% show-in "enterprise" %}} +> [!Note] +> The combined path structure `//` ensures proper organization of data in your object store, allowing for clean separation between clusters and individual nodes. +{{% /show-in %}} + +##### Filesystem object store + +Store data in a specified directory on the local filesystem. +This is the default object store type. + +Replace the following with your values: + +{{% show-in "enterprise" %}} +```bash +# Filesystem object store +# Provide the filesystem directory +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` +{{% /show-in %}} +{{% show-in "core" %}} +```bash +# File system object store +# Provide the file system directory +influxdb3 serve \ + --node-id host01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` +{{% /show-in %}} + +To run the [Docker image](/influxdb3/version/install/#docker-image) and persist data to the file system, mount a volume for the object store-for example, pass the following options: + +- `-v /path/on/host:/path/in/container`: Mounts a directory from your file system to the container +- `--object-store file --data-dir /path/in/container`: Uses the mount for server storage + + +{{% show-in "enterprise" %}} + +```bash +# File system object store with Docker +# Create a mount +# Provide the mount path +docker run -it \ + -v /path/on/host:/path/in/container \ + influxdb:3-enterprise influxdb3 serve \ + --node-id my_host \ + --cluster-id my_cluster \ + --object-store file \ + --data-dir /path/in/container +``` +{{% /show-in %}} +{{% show-in "core" %}} + +```bash +# File system object store with Docker +# Create a mount +# Provide the mount path +docker run -it \ + -v /path/on/host:/path/in/container \ + influxdb:3-core influxdb3 serve \ + --node-id my_host \ + --object-store file \ + --data-dir /path/in/container +``` +{{% /show-in %}} + +> [!Note] +> +> The {{% product-name %}} Docker image exposes port `8181`, the `influxdb3` server default for HTTP connections. +> To map the exposed port to a different port when running a container, see the Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). + +##### S3 object store + +Store data in an S3-compatible object store. +This is useful for production deployments that require high availability and durability. +Provide your bucket name and credentials to access the S3 object store. + +{{% show-in "enterprise" %}} +```bash +# S3 object store (default is the us-east-1 region) +# Specify the object store type and associated options +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --object-store s3 \ + --bucket OBJECT_STORE_BUCKET \ + --aws-access-key AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + + +```bash +# Minio or other open source object store +# (using the AWS S3 API with additional parameters) +# Specify the object store type and associated options +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --object-store s3 \ + --bucket OBJECT_STORE_BUCKET \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY \ + --aws-endpoint ENDPOINT \ + --aws-allow-http +``` +{{% /show-in %}} +{{% show-in "core" %}} +```bash +# S3 object store (default is the us-east-1 region) +# Specify the object store type and associated options +influxdb3 serve \ + --node-id host01 \ + --object-store s3 \ + --bucket OBJECT_STORE_BUCKET \ + --aws-access-key AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + +```bash +# Minio or other open source object store +# (using the AWS S3 API with additional parameters) +# Specify the object store type and associated options +influxdb3 serve \ + --node-id host01 \ + --object-store s3 \ + --bucket OBJECT_STORE_BUCKET \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY \ + --aws-endpoint ENDPOINT \ + --aws-allow-http +``` +{{% /show-in %}} + +#### Memory object store + +Store data in RAM without persisting it on shutdown. +It's useful for rapid testing and development. + +{{% show-in "enterprise" %}} +```bash +# Memory object store +# Stores data in RAM; doesn't persist data +influxdb3 serve \ +--node-id host01 \ +--cluster-id cluster01 \ +--object-store memory +``` +{{% /show-in %}} +{{% show-in "core" %}} +```bash +# Memory object store +# Stores data in RAM; doesn't persist data +influxdb3 serve \ +--node-id host01 \ +--object-store memory +``` +{{% /show-in %}} + +For more information about server options, use the CLI help or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/serve/): + +```bash +influxdb3 serve --help +``` + +> [!Tip] +> #### Run the InfluxDB 3 Explorer query interface (beta) +> +> InfluxDB 3 Explorer (currently in beta) is the web-based query and +> administrative interface for InfluxDB 3. +> It provides visual management of databases and tokens and an easy way to query your time series data. +> +> For more information, see the [InfluxDB 3 Explorer documentation](/influxdb3/explorer/). + +{{% show-in "enterprise" %}} +#### Licensing + +When first starting a new instance, {{% product-name %}} prompts you to select a license type. + +InfluxDB 3 Enterprise licenses authorize the use of the InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are primarily based on the number of CPUs InfluxDB can use, but there are other limitations depending on the license type. The following InfluxDB 3 Enterprise license types are available: + +- **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. +- **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. +- **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. + +You can learn more on managing your InfluxDB 3 Enterprise license on the [Manage your license](https://docs.influxdata.com/influxdb3/enterprise/admin/license/)page. +{{% /show-in %}} + +### Authentication and authorization + +{{% product-name %}} uses token-based authentication and authorization, which is enabled by default when you start the server. + +With authentication enabled, you must provide a token with `influxdb3` CLI commands and HTTP API requests. + +{{% show-in "enterprise" %}} +{{% product-name %}} supports the following types of tokens: + +- **admin token**: Grants access to all CLI actions and API endpoints. A server can have one admin token. +- **resource tokens**: Tokens that grant read and write access to specific resources (databases and system information endpoints) on the server. + + - A database token grants access to write and query data in a + database + - A system token grants read access to system information endpoints and + metrics for the server +{{% /show-in %}} +{{% show-in "core" %}} +{{% product-name %}} supports _admin_ tokens, which grant access to all CLI actions and API endpoints. +{{% /show-in %}} + +For more information about tokens and authorization, see [Manage tokens](/influxdb3/version/admin/tokens/). + +#### Create an operator token + +After you start the server, create your first admin token. +The first admin token you create is the _operator_ token for the server. + +Use the `influxdb3` CLI or the HTTP API to create your operator token. + +> [!Important] +> **Store your token securely** +> +> InfluxDB displays the token string only when you create it. +> Store your token securely—you cannot retrieve it from the database later. + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[CLI](#) +[Docker](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + +```bash +influxdb3 create token --admin +``` + +{{% /code-tab-content %}} +{{% code-tab-content %}} + +{{% code-placeholders "CONTAINER_NAME" %}} +```bash +# With Docker — in a new terminal: +docker exec -it CONTAINER_NAME influxdb3 create token --admin +``` +{{% /code-placeholders %}} + +Replace {{% code-placeholder-key %}}`CONTAINER_NAME`{{% /code-placeholder-key %}} with the name of your running Docker container. + +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +The command returns a token string for authenticating CLI commands and API requests. +Store your token securely—you cannot retrieve it from the database later. + +#### Set your token for authentication + +Use your operator token to authenticate server actions in {{% product-name %}}, +such as creating additional tokens, performing administrative tasks, and writing and querying data. + +Use one of the following methods to provide your token and authenticate `influxdb3` CLI commands. + +In your command, replace {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code-placeholder-key %}} with your token string (for example, the [operator token](#create-an-operator-token) from the previous step). + +{{< tabs-wrapper >}} +{{% tabs %}} +[Environment variable (recommended)](#) +[Command option](#) +{{% /tabs %}} +{{% tab-content %}} + +Set the `INFLUXDB3_AUTH_TOKEN` environment variable to have the CLI use your token automatically: + +{{% code-placeholders "YOUR_AUTH_TOKEN" %}} +```bash +export INFLUXDB3_AUTH_TOKEN=YOUR_AUTH_TOKEN +``` +{{% /code-placeholders %}} + +{{% /tab-content %}} +{{% tab-content %}} + +Include the `--token` option with CLI commands: + +{{% code-placeholders "YOUR_AUTH_TOKEN" %}} +```bash +influxdb3 show databases --token AUTH_TOKEN +``` +{{% /code-placeholders %}} + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +For HTTP API requests, include your token in the `Authorization` header--for example: + +{{% code-placeholders "AUTH_TOKEN" %}} +```bash +curl "http://{{< influxdb/host >}}/api/v3/configure/database" \ + --header "Authorization: Bearer AUTH_TOKEN" +``` +{{% /code-placeholders %}} + +#### Learn more about tokens and permissions + +- [Manage admin tokens](/influxdb3/version/admin/tokens/admin/) - Understand and manage operator and named admin tokens +{{% show-in "enterprise" %}} +- [Manage resource tokens](/influxdb3/version/admin/tokens/resource/) - Create, list, and delete resource tokens +{{% /show-in %}} +- [Authentication](/influxdb3/version/reference/internals/authentication/) - Understand authentication, authorizations, and permissions in {{% product-name %}} \ No newline at end of file diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md new file mode 100644 index 000000000..caf35845b --- /dev/null +++ b/content/shared/influxdb3-get-started/write.md @@ -0,0 +1,272 @@ +### Write data + +InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly. +After a schema is created, InfluxDB validates future write requests against it before accepting the data. +Subsequent requests can add new fields on-the-fly, but can't add new tags. + +{{% show-in "core" %}} +> [!Note] +> #### Core is optimized for recent data +> +> {{% product-name %}} is optimized for recent data but accepts writes from any time period. +> The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools. +> For extended historical queries and optimized data organization, consider using [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/). +{{% /show-in %}} + +#### Write data in line protocol syntax + +{{% product-name %}} accepts data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax. +The following code block is an example of time series data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax: + +- `cpu`: the table name. +- `host`, `region`, `applications`: the tags. A tag set is an ordered, comma-separated list of key/value pairs where the values are strings. +- `val`, `usage_percent`, `status`: the fields. A field set is a comma-separated list of key/value pairs. +- timestamp: If you don't specify a timestamp, InfluxData uses the time when data is written. + The default precision is a nanosecond epoch. + To specify a different precision, pass the `precision` parameter in your CLI command or API request. + +``` +cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" +cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" +cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" +cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" +cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" +cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn" +``` + +### Write data using the CLI + +To quickly get started writing data, you can use the `influxdb3` CLI. + +> [!Note] +> For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). +> +> #### Write data using InfluxDB API client libraries +> +> InfluxDB provides supported client libraries that integrate with your code +> to construct data as time series points and write the data as line protocol to your {{% product-name %}} database. +> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). + +##### Example: write data using the influxdb3 CLI + +Use the `influxdb3 write` command to write data to a database. + +In the code samples, replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} + +##### Write data via stdin + +Pass data as quoted line protocol via standard input (stdin)--for example: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +influxdb3 write \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + --precision ns \ + --accept-partial \ +'cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" +cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" +cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" +cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" +cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" +cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn"' +``` +{{% /code-placeholders %}} + +##### Write data from a file + +Pass the `--file` option to write line protocol you have saved to a file--for example, save the +[sample line protocol](#write-data-in-line-protocol-syntax) to a file named `server_data` +and then enter the following command: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +influxdb3 write \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + --precision ns \ + --accept-partial \ + --file path/to/server_data +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} + +### Write data using the HTTP API + +{{% product-name %}} provides three write API endpoints that respond to HTTP `POST` requests. +The `/api/v3/write_lp` endpoint is the recommended endpoint for writing data and +provides additional options for controlling write behavior. + +If you need to write data using InfluxDB v1.x or v2.x tools, use the compatibility API endpoints. +Compatibility APIs work with [Telegraf](/telegraf/v1/), InfluxDB v2.x and v1.x [API client libraries](/influxdb3/version/reference/client-libraries), and other tools that support the v1.x or v2.x APIs. + +{{% tabs-wrapper %}} +{{% tabs %}} +[/api/v3/write_lp](#) +[v2 compatibility](#) +[v1 compatibility](#) +{{% /tabs %}} +{{% tab-content %}} + +{{% product-name %}} adds the `/api/v3/write_lp` endpoint. + +{{}} + +This endpoint accepts the same line protocol syntax as previous versions, +and supports the following parameters: + +- `?accept_partial=`: Accept or reject partial writes (default is `true`). +- `?no_sync=`: Control when writes are acknowledged: + - `no_sync=true`: Acknowledges writes before WAL persistence completes. + - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). +- `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. +- request body: The line protocol data to write. + +For more information about the parameters, see [Write data](/influxdb3/version/write-data/). + +##### Example: write data using the /api/v3 HTTP API + +The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. +To show the difference between accepting and rejecting partial writes, line `2` in the example contains a `string` value (`"hi"`) for a `float` field (`temp`). + +###### Partial write of line protocol occurred + +With `accept_partial=true` (default): + +```bash +curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto" \ + --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ + --data-raw 'home,room=Sunroom temp=96 +home,room=Sunroom temp="hi"' +``` + +The response is the following: + +``` +< HTTP/1.1 400 Bad Request +... +{ + "error": "partial write of line protocol occurred", + "data": [ + { + "original_line": "home,room=Sunroom temp=hi", + "line_number": 2, + "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" + } + ] +} +``` + +Line `1` is written and queryable. +The response is an HTTP error (`400`) status, and the response body contains the error message `partial write of line protocol occurred` with details about the problem line. + +###### Parsing failed for write_lp endpoint + +With `accept_partial=false`: + +```bash +curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&accept_partial=false" \ + --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ + --data-raw 'home,room=Sunroom temp=96 +home,room=Sunroom temp="hi"' +``` + +The response is the following: + +``` +< HTTP/1.1 400 Bad Request +... +{ + "error": "parsing failed for write_lp endpoint", + "data": { + "original_line": "home,room=Sunroom temp=hi", + "line_number": 2, + "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" + } +} +``` + +InfluxDB rejects all points in the batch. +The response is an HTTP error (`400`) status, and the response body contains `parsing failed for write_lp endpoint` and details about the problem line. + +For more information about the ingest path and data flow, see [Data durability](/influxdb3/version/reference/internals/durability/). + +{{% /tab-content %}} +{{% tab-content %}} + +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as [Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). + +{{}} + +{{% /tab-content %}} + +{{% tab-content %}} + +The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility for clients that can write data to InfluxDB v1.x. + +{{}} + + +{{% /tab-content %}} +{{% /tabs-wrapper %}} + +> [!Note] +> #### Compatibility APIs differ from native APIs +> +> Keep in mind that the compatibility APIs differ from the v1 and v2 APIs in previous versions in the following ways: +> +> - Tags in a table (measurement) are _immutable_ +> - A tag and a field can't have the same name within a table. + +#### Write responses + +By default, InfluxDB acknowledges writes after flushing the WAL file to the object store (occurring every second). +For high write throughput, you can send multiple concurrent write requests. + +#### Use no_sync for immediate write responses + +To reduce the latency of writes, use the `no_sync` write option, which acknowledges writes _before_ WAL persistence completes. +When `no_sync=true`, InfluxDB validates the data, writes the data to the WAL, and then immediately responds to the client, without waiting for persistence to the object store. + +Using `no_sync=true` is best when prioritizing high-throughput writes over absolute durability. + +- Default behavior (`no_sync=false`): Waits for data to be written to the object store before acknowledging the write. Reduces the risk of data loss, but increases the latency of the response. +- With `no_sync=true`: Reduces write latency, but increases the risk of data loss in case of a crash before WAL persistence. + +##### Immediate write using the HTTP API + +The `no_sync` parameter controls when writes are acknowledged--for example: + +```bash +curl "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&no_sync=true" \ + --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ + --data-raw "home,room=Sunroom temp=96" +``` + +### Create a database or table + +To create a database without writing data, use the `create` subcommand--for example: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} +```bash +influxdb3 create database DATABASE_NAME \ + --token AUTH_TOKEN +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server + +To learn more about a subcommand, use the `-h, --help` flag or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/create): + +```bash +influxdb3 create -h +``` \ No newline at end of file diff --git a/content/shared/influxdb3/_index.md b/content/shared/influxdb3/_index.md index 505e32a12..f5e59e89c 100644 --- a/content/shared/influxdb3/_index.md +++ b/content/shared/influxdb3/_index.md @@ -28,7 +28,7 @@ Core's feature highlights include: - Compatibility with InfluxDB 1.x and 2.x write APIs {{% show-in "core" %}} -[Get started with Core](/influxdb3/version/get-started/) +Get started with {{% product-name %}} {{% /show-in %}} The Enterprise version adds the following features to Core: @@ -41,5 +41,8 @@ The Enterprise version adds the following features to Core: - Integrated admin UI (coming soon) {{% show-in "core" %}} -For more information, see how to [get started with Enterprise](/influxdb3/enterprise/get-started/). +For more information, see how to [get started with InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/). +{{% /show-in %}} +{{% show-in "enterprise" %}} +Get started with {{% product-name %}} {{% /show-in %}} \ No newline at end of file From 356bfc38d5d16b4b2ea7a2658c8c5f4c8a062352 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 6 Jun 2025 07:16:54 -0600 Subject: [PATCH 02/80] WIP restructuring monolith getting started --- content/influxdb3/core/get-started/setup.md | 20 +++ .../enterprise/get-started/multi-server.md | 4 +- .../influxdb3/enterprise/get-started/setup.md | 20 +++ .../shared/influxdb3-get-started/_index.md | 17 ++- content/shared/influxdb3-get-started/setup.md | 123 +++++------------- 5 files changed, 87 insertions(+), 97 deletions(-) create mode 100644 content/influxdb3/core/get-started/setup.md create mode 100644 content/influxdb3/enterprise/get-started/setup.md diff --git a/content/influxdb3/core/get-started/setup.md b/content/influxdb3/core/get-started/setup.md new file mode 100644 index 000000000..8c39838ce --- /dev/null +++ b/content/influxdb3/core/get-started/setup.md @@ -0,0 +1,20 @@ +--- +title: Set up InfluxDB 3 Core +description: > + .... +menu: + influxdb3_core: + name: Set up Core + parent: Get started +weight: 3 +related: + - /influxdb3/core/install/ + - /influxdb3/core/admin/tokens/ + - /influxdb3/core/reference/config-options/ +source: /shared/influxdb3-get-started/setup.md +--- + + diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md index 42ca6ef0b..62061aaaf 100644 --- a/content/influxdb3/enterprise/get-started/multi-server.md +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -3,8 +3,8 @@ title: Use a multi-server setup seotitle: Use a multi-server InfluxDB 3 Enterprise setup menu: influxdb3_enterprise: - - name: Multi-server - - parent: Get started + name: Multi-server + parent: Get started weight: 4 influxdb3/enterprise/tags: [cluster, multi-node, multi-server] --- diff --git a/content/influxdb3/enterprise/get-started/setup.md b/content/influxdb3/enterprise/get-started/setup.md new file mode 100644 index 000000000..6a4469bb0 --- /dev/null +++ b/content/influxdb3/enterprise/get-started/setup.md @@ -0,0 +1,20 @@ +--- +title: Set up InfluxDB 3 Enterprise +description: > + .... +menu: + influxdb3_enterprise: + name: Set up Enterprise + parent: Get started +weight: 3 +related: + - /influxdb3/enterprise/install/ + - /influxdb3/enterprise/admin/tokens/ + - /influxdb3/enterprise/reference/config-options/ +source: /shared/influxdb3-get-started/setup.md +--- + + diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index 4190eb78e..ace43721e 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -66,10 +66,19 @@ This tutorial covers many of the recommended tools. {{< /caption >}} +{{< show-in "core" >}} +{{< page-nav next="/influxdb3/core/get-started/setup/" nextText="Set up InfluxDB 3 Core" >}} +{{< /show-in >}} +{{< show-in "enterprise" >}} +{{< page-nav next="/influxdb3/enterprise/get-started/setup/" nextText="Set up InfluxDB 3 Enterprise" >}} +{{< /show-in >}} - - + + diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 9d857e51a..43b9d2bb0 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -1,25 +1,22 @@ -### Install and startup +## Install {{% product-name %}} {{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. - -{{% show-in "enterprise" %}} -{{% tabs-wrapper %}} -{{% tabs %}} -[Linux or macOS](#linux-or-macos) -[Windows](#windows) -[Docker](#docker) -{{% /tabs %}} -{{% tab-content %}} - -To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): +If using **Linux** or **macOS**, you can download and use the {{% product-name %}} +quick installer using [curl](https://curl.se/download.html): ```bash curl -O https://www.influxdata.com/d/install_influxdb3.sh \ -&& sh install_influxdb3.sh enterprise +&& sh install_influxdb3.sh {{% show-in "enterprise" %}}enterprise{{% /show-in %}} ``` -Or, download and install [build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries): +For detailed installation instructions, including for Windows and Docker, +see [Install {{% product-name %}}](/influxdb3/version/install/). + +You can also download and install [{{% product-name %}} build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries) directly: + +{{< expand-wrapper >}} +{{% expand "Linux binaries" %}} - [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) • @@ -27,6 +24,10 @@ Or, download and install [build artifacts](/influxdb3/enterprise/install/#downlo - [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) + +{{% /expand %}} +{{% expand "macOS binaries" %}} + - [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) @@ -34,17 +35,15 @@ Or, download and install [build artifacts](/influxdb3/enterprise/install/#downlo > [!Note] > macOS Intel builds are coming soon. - -{{% /tab-content %}} -{{% tab-content %}} - -Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) +{{% /expand %}} +{{% expand "Windows binaries" %}} + +- [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - -{{% /tab-content %}} -{{% tab-content %}} - + +{{% /expand %}} +{{% expand "Docker image" %}} The [`influxdb:3-enterprise` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-enterprise) is available for x86_64 (AMD64) and ARM64 architectures. @@ -55,74 +54,13 @@ Pull the image: ```bash docker pull influxdb:3-enterprise ``` +{{% /expand %}} +{{< /expand-wrapper >}} - -{{% /tab-content %}} -{{% /tabs-wrapper %}} -{{% /show-in %}} +### Verify the installation -{{% show-in "core" %}} -{{% tabs-wrapper %}} -{{% tabs %}} -[Linux or macOS](#linux-or-macos) -[Windows](#windows) -[Docker](#docker) -{{% /tabs %}} -{{% tab-content %}} - -To get started quickly, download and run the install script--for example, using [curl](https://curl.se/download.html): - - -```bash -curl -O https://www.influxdata.com/d/install_influxdb3.sh \ -&& sh install_influxdb3.sh -``` -Or, download and install [build artifacts](/influxdb3/core/install/#download-influxdb-3-core-binaries): - -- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) -- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) -- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) - -> [!Note] -> macOS Intel builds are coming soon. - - -{{% /tab-content %}} -{{% tab-content %}} - -Download and install the {{% product-name %}} [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) - • -[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - -{{% /tab-content %}} -{{% tab-content %}} - -The [`influxdb:3-core` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-core) -is available for x86_64 (AMD64) and ARM64 architectures. - -Pull the image: - - -```bash -docker pull influxdb:3-core -``` - - -{{% /tab-content %}} -{{% /tabs-wrapper %}} -{{% /show-in %}} - -_Build artifacts and images update with every merge into the {{% product-name %}} `main` branch._ - -#### Verify the install - -After you have installed {{% product-name %}}, enter the following command to verify that it completed successfully: +After installing {{% product-name %}}, enter the following command to verify +that it installed successfully: ```bash influxdb3 --version @@ -135,10 +73,11 @@ If your system doesn't locate `influxdb3`, then `source` the configuration file source ~/.zshrc ``` +## Start InfluxDB -#### Start InfluxDB - -To start your InfluxDB instance, use the `influxdb3 serve` command and provide the following: +Use the [`influxdb3 serve` command](/influxdb3/version/reference/cli/influxdb3/serve/) +to start {{% product-name %}}. +Provide the following: - `--object-store`: Specifies the type of object store to use. InfluxDB supports the following: local file system (`file`), `memory`, From 09b83dd1f87d8d1a6e0603d0226583c43564285e Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 10 Jun 2025 11:47:57 -0600 Subject: [PATCH 03/80] WIP gs write data --- content/influxdb3/core/get-started/write.md | 21 ++ .../enterprise/get-started/multi-server.md | 1 + .../influxdb3/enterprise/get-started/setup.md | 2 +- .../influxdb3/enterprise/get-started/write.md | 21 ++ content/shared/influxdb3-get-started/setup.md | 211 +++++++++++----- content/shared/influxdb3-get-started/write.md | 230 ++++++++++++++---- 6 files changed, 371 insertions(+), 115 deletions(-) create mode 100644 content/influxdb3/core/get-started/write.md create mode 100644 content/influxdb3/enterprise/get-started/write.md diff --git a/content/influxdb3/core/get-started/write.md b/content/influxdb3/core/get-started/write.md new file mode 100644 index 000000000..a796ab16f --- /dev/null +++ b/content/influxdb3/core/get-started/write.md @@ -0,0 +1,21 @@ +--- +title: Write data to InfluxDB 3 Core +description: > + .... +menu: + influxdb3_core: + name: Write data + identifier: gs-write-data + parent: Get started +weight: 102 +related: + - /influxdb3/core/install/ + - /influxdb3/core/admin/tokens/ + - /influxdb3/core/reference/config-options/ +source: /shared/influxdb3-get-started/write.md +--- + + diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md index 62061aaaf..d67790431 100644 --- a/content/influxdb3/enterprise/get-started/multi-server.md +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -7,6 +7,7 @@ menu: parent: Get started weight: 4 influxdb3/enterprise/tags: [cluster, multi-node, multi-server] +draft: true --- ### Multi-server setup diff --git a/content/influxdb3/enterprise/get-started/setup.md b/content/influxdb3/enterprise/get-started/setup.md index 6a4469bb0..e10103352 100644 --- a/content/influxdb3/enterprise/get-started/setup.md +++ b/content/influxdb3/enterprise/get-started/setup.md @@ -6,7 +6,7 @@ menu: influxdb3_enterprise: name: Set up Enterprise parent: Get started -weight: 3 +weight: 101 related: - /influxdb3/enterprise/install/ - /influxdb3/enterprise/admin/tokens/ diff --git a/content/influxdb3/enterprise/get-started/write.md b/content/influxdb3/enterprise/get-started/write.md new file mode 100644 index 000000000..b12086cb9 --- /dev/null +++ b/content/influxdb3/enterprise/get-started/write.md @@ -0,0 +1,21 @@ +--- +title: Write data to InfluxDB 3 Enterprise +description: > + .... +menu: + influxdb3_enterprise: + name: Write data + identifier: gs-write-data + parent: Get started +weight: 102 +related: + - /influxdb3/enterprise/install/ + - /influxdb3/enterprise/admin/tokens/ + - /influxdb3/enterprise/reference/config-options/ +source: /shared/influxdb3-get-started/write.md +--- + + diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 43b9d2bb0..c7dd406b7 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -1,3 +1,13 @@ + +- [Install {{% product-name %}}](#install-influxdb-3-{{% product-key %}}) + - [Verify the installation](#verify-the-installation) +- [Start InfluxDB](#start-influxdb) + - [{{% product-name %}} store examples](#influxdb-3-{{% product-key %}}-store-examples) +- [Set up licensing](#set-up-licensing) +- [Set up authorization](#set-up-authorization) + - [Create an operator token](#create-an-operator-token) + - [Set your token for authorization](#set-your-token-for-authorization) + ## Install {{% product-name %}} {{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. @@ -80,15 +90,29 @@ to start {{% product-name %}}. Provide the following: - `--object-store`: Specifies the type of object store to use. - InfluxDB supports the following: local file system (`file`), `memory`, - S3 (and compatible services like Ceph or Minio) (`s3`), - Google Cloud Storage (`google`), and Azure Blob Storage (`azure`). - The default is `file`. - Depending on the object store type, you may need to provide additional options - for your object store configuration. + InfluxDB supports the following: + + - `file` _(default)_: local file system + - `memory`: in memory _(no object persistence)_ + - `memory-throttled`: like `memory` but with latency and throughput that + somewhat resembles a cloud-based object store + - `s3`: AWS S3 and S3-compatible services like Ceph or Minio + - `google`: Google Cloud Storage + - `azure`: Azure Blob Storage + + > [!Note] + > Depending on the object store type, you may need to provide additional + > options for your object store configuration. + {{% show-in "enterprise" %}} -- `--node-id`: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: `//`. In a multi-node setup, this ID is used to reference specific nodes. -- `--cluster-id`: A string identifier that determines part of the storage path hierarchy. All nodes within the same cluster share this identifier. The storage path follows the pattern `//`. In a multi-node setup, this ID is used to reference the entire cluster. +- `--node-id`: A string identifier that distinguishes individual server + instances within the cluster. This forms the final part of the storage path: + `//`. + In a multi-node setup, this ID is used to reference specific nodes. +- `--cluster-id`: A string identifier that determines part of the storage path + hierarchy. All nodes within the same cluster share this identifier. + The storage path follows the pattern `//`. + In a multi-node setup, this ID is used to reference the entire cluster. {{% /show-in %}} {{% show-in "core" %}} - `--node-id`: A string identifier that distinguishes individual server instances. @@ -103,13 +127,42 @@ The following examples show how to start {{% product-name %}} with different obj > InfluxDB 3 supports a diskless architecture that can operate with object > storage alone, eliminating the need for locally attached disks. > {{% product-name %}} can also work with only local disk storage when needed. +> +> {{% show-in "enterprise" %}} +> The combined path structure `//` ensures +> proper organization of data in your object store, allowing for clean +> separation between clusters and individual nodes. +> {{% /show-in %}} + +For this getting started guide, use the `file` object store to persist data to +your local disk. {{% show-in "enterprise" %}} -> [!Note] -> The combined path structure `//` ensures proper organization of data in your object store, allowing for clean separation between clusters and individual nodes. +```bash +# File system object store +# Provide the filesystem directory +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` +{{% /show-in %}} +{{% show-in "core" %}} +```bash +# File system object store +# Provide the file system directory +influxdb3 serve \ + --node-id host01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` {{% /show-in %}} -##### Filesystem object store +### {{% product-name %}} store examples + +{{< expand-wrapper >}} +{{% expand "File system object store" %}} Store data in a specified directory on the local filesystem. This is the default object store type. @@ -138,10 +191,15 @@ influxdb3 serve \ ``` {{% /show-in %}} -To run the [Docker image](/influxdb3/version/install/#docker-image) and persist data to the file system, mount a volume for the object store-for example, pass the following options: +{{% /expand %}} +{{% expand "Docker with a mounted file system object store" %}} -- `-v /path/on/host:/path/in/container`: Mounts a directory from your file system to the container -- `--object-store file --data-dir /path/in/container`: Uses the mount for server storage +To run the [Docker image](/influxdb3/version/install/#docker-image) and persist +data to the local file system, mount a volume for the object store--for example, +provide the following options with your `docker run` command: + +- `--volume /path/on/host:/path/in/container`: Mounts a directory from your file system to the container +- `--object-store file --data-dir /path/in/container`: Use the volume mount for object storage {{% show-in "enterprise" %}} @@ -151,7 +209,7 @@ To run the [Docker image](/influxdb3/version/install/#docker-image) and persist # Create a mount # Provide the mount path docker run -it \ - -v /path/on/host:/path/in/container \ + --volume /path/on/host:/path/in/container \ influxdb:3-enterprise influxdb3 serve \ --node-id my_host \ --cluster-id my_cluster \ @@ -166,7 +224,7 @@ docker run -it \ # Create a mount # Provide the mount path docker run -it \ - -v /path/on/host:/path/in/container \ + --volume /path/on/host:/path/in/container \ influxdb:3-core influxdb3 serve \ --node-id my_host \ --object-store file \ @@ -176,10 +234,13 @@ docker run -it \ > [!Note] > -> The {{% product-name %}} Docker image exposes port `8181`, the `influxdb3` server default for HTTP connections. -> To map the exposed port to a different port when running a container, see the Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). +> The {{% product-name %}} Docker image exposes port `8181`, the `influxdb3` +> server default for HTTP connections. +> To map the exposed port to a different port when running a container, see the +> Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). -##### S3 object store +{{% /expand %}} +{{% expand "S3 object storage" %}} Store data in an S3-compatible object store. This is useful for production deployments that require high availability and durability. @@ -198,7 +259,6 @@ influxdb3 serve \ --aws-secret-access-key AWS_SECRET_ACCESS_KEY ``` - ```bash # Minio or other open source object store # (using the AWS S3 API with additional parameters) @@ -214,6 +274,7 @@ influxdb3 serve \ --aws-allow-http ``` {{% /show-in %}} + {{% show-in "core" %}} ```bash # S3 object store (default is the us-east-1 region) @@ -241,7 +302,8 @@ influxdb3 serve \ ``` {{% /show-in %}} -#### Memory object store +{{% /expand %}} +{{% expand "Memory-based object store" %}} Store data in RAM without persisting it on shutdown. It's useful for rapid testing and development. @@ -251,9 +313,9 @@ It's useful for rapid testing and development. # Memory object store # Stores data in RAM; doesn't persist data influxdb3 serve \ ---node-id host01 \ ---cluster-id cluster01 \ ---object-store memory + --node-id host01 \ + --cluster-id cluster01 \ + --object-store memory ``` {{% /show-in %}} {{% show-in "core" %}} @@ -261,51 +323,62 @@ influxdb3 serve \ # Memory object store # Stores data in RAM; doesn't persist data influxdb3 serve \ ---node-id host01 \ ---object-store memory + --node-id host01 \ + --object-store memory ``` {{% /show-in %}} -For more information about server options, use the CLI help or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/serve/): +{{% /expand %}} +{{< /expand-wrapper >}} + +For more information about server options, use the CLI help or view the +[InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/serve/): ```bash influxdb3 serve --help ``` -> [!Tip] -> #### Run the InfluxDB 3 Explorer query interface (beta) -> -> InfluxDB 3 Explorer (currently in beta) is the web-based query and -> administrative interface for InfluxDB 3. -> It provides visual management of databases and tokens and an easy way to query your time series data. -> -> For more information, see the [InfluxDB 3 Explorer documentation](/influxdb3/explorer/). - {{% show-in "enterprise" %}} -#### Licensing +## Set up licensing -When first starting a new instance, {{% product-name %}} prompts you to select a license type. - -InfluxDB 3 Enterprise licenses authorize the use of the InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are primarily based on the number of CPUs InfluxDB can use, but there are other limitations depending on the license type. The following InfluxDB 3 Enterprise license types are available: +When first starting a new instance, {{% product-name %}} prompts you to select a +license type. InfluxDB 3 Enterprise licenses authorize the use of the +InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are +primarily based on the number of CPUs InfluxDB can use, but there are other +limitations depending on the license type. The following InfluxDB 3 Enterprise +license types are available: - **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. - **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. -You can learn more on managing your InfluxDB 3 Enterprise license on the [Manage your license](https://docs.influxdata.com/influxdb3/enterprise/admin/license/)page. +For more information, see [Manage your InfluxDB 3 Enterprise license](/influxdb3/enterprise/admin/license/). {{% /show-in %}} -### Authentication and authorization +> [!Tip] +> #### Use the InfluxDB 3 Explorer query interface (beta) +> +> The remainder of the getting started guide can be completed using +> InfluxDB 3 Explorer (currently in beta), the web-based query and +> administrative interface for InfluxDB 3, but doesn't include instructions for +> Explorer. Explorer provides visual management of databases and tokens and an +> easy way to write and query your time series data. +> +> For more information, see the [InfluxDB 3 Explorer documentation](/influxdb3/explorer/). -{{% product-name %}} uses token-based authentication and authorization, which is enabled by default when you start the server. +## Set up authorization -With authentication enabled, you must provide a token with `influxdb3` CLI commands and HTTP API requests. +{{% product-name %}} uses token-based authorization to authorize actions in the +database. Authorization is enabled by default when you start the server. +With authorization enabled, you must provide a token with `influxdb3` CLI +commands and HTTP API requests. {{% show-in "enterprise" %}} {{% product-name %}} supports the following types of tokens: -- **admin token**: Grants access to all CLI actions and API endpoints. A server can have one admin token. -- **resource tokens**: Tokens that grant read and write access to specific resources (databases and system information endpoints) on the server. +- **admin token**: Grants access to all CLI actions and API endpoints. +- **resource tokens**: Tokens that grant read and write access to specific + resources (databases and system information endpoints) on the server. - A database token grants access to write and query data in a database @@ -318,18 +391,13 @@ With authentication enabled, you must provide a token with `influxdb3` CLI comma For more information about tokens and authorization, see [Manage tokens](/influxdb3/version/admin/tokens/). -#### Create an operator token +### Create an operator token After you start the server, create your first admin token. The first admin token you create is the _operator_ token for the server. -Use the `influxdb3` CLI or the HTTP API to create your operator token. - -> [!Important] -> **Store your token securely** -> -> InfluxDB displays the token string only when you create it. -> Store your token securely—you cannot retrieve it from the database later. +Use the [`influxdb3 create token` command](/influxdb3/version/reference/cli/influxdb3/create/token/) +with the `--admin` option to create your operator token: {{< code-tabs-wrapper >}} {{% code-tabs %}} @@ -358,12 +426,19 @@ Replace {{% code-placeholder-key %}}`CONTAINER_NAME`{{% /code-placeholder-key %} {{< /code-tabs-wrapper >}} The command returns a token string for authenticating CLI commands and API requests. -Store your token securely—you cannot retrieve it from the database later. -#### Set your token for authentication +> [!Important] +> #### Store your token securely +> +> InfluxDB displays the token string only when you create it. +> Store your token securely—you cannot retrieve it from the database later. + +### Set your token for authorization Use your operator token to authenticate server actions in {{% product-name %}}, -such as creating additional tokens, performing administrative tasks, and writing and querying data. +such as {{% show-in "enterprise" %}}creating additional tokens, {{% /show-in %}} +performing administrative tasks{{% show-in "enterprise" %}},{{% /show-in %}} +and writing and querying data. Use one of the following methods to provide your token and authenticate `influxdb3` CLI commands. @@ -391,7 +466,7 @@ Include the `--token` option with CLI commands: {{% code-placeholders "YOUR_AUTH_TOKEN" %}} ```bash -influxdb3 show databases --token AUTH_TOKEN +influxdb3 show databases --token YOUR_AUTH_TOKEN ``` {{% /code-placeholders %}} @@ -400,17 +475,27 @@ influxdb3 show databases --token AUTH_TOKEN For HTTP API requests, include your token in the `Authorization` header--for example: -{{% code-placeholders "AUTH_TOKEN" %}} +{{% code-placeholders "YOUR_AUTH_TOKEN" %}} ```bash curl "http://{{< influxdb/host >}}/api/v3/configure/database" \ - --header "Authorization: Bearer AUTH_TOKEN" + --header "Authorization: Bearer YOUR_AUTH_TOKEN" ``` {{% /code-placeholders %}} #### Learn more about tokens and permissions -- [Manage admin tokens](/influxdb3/version/admin/tokens/admin/) - Understand and manage operator and named admin tokens +- [Manage admin tokens](/influxdb3/version/admin/tokens/admin/) - Understand and + manage operator and named admin tokens {{% show-in "enterprise" %}} -- [Manage resource tokens](/influxdb3/version/admin/tokens/resource/) - Create, list, and delete resource tokens +- [Manage resource tokens](/influxdb3/version/admin/tokens/resource/) - Create, + list, and delete resource tokens {{% /show-in %}} -- [Authentication](/influxdb3/version/reference/internals/authentication/) - Understand authentication, authorizations, and permissions in {{% product-name %}} \ No newline at end of file +- [Authentication](/influxdb3/version/reference/internals/authentication/) - + Understand authentication, authorizations, and permissions in {{% product-name %}} + +{{% page-nav + prev="/influxdb3/version/get-started/" + prevText="Get started" + next="/influxdb3/version/get-started/write/" + nextText="Write data" +%}} diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index caf35845b..82bb5d909 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -1,81 +1,194 @@ -### Write data + -InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly. -After a schema is created, InfluxDB validates future write requests against it before accepting the data. -Subsequent requests can add new fields on-the-fly, but can't add new tags. +{{% product-name %}} is designed for high write-throughput and uses an efficient, +human-readable write syntax called _[line protocol](#line-protocol)_. InfluxDB +is a schema-on-write database, meaning you can start writing data and InfluxDB +creates the logical database, tables, and their schemas automatically, without +any required intervention. Once InfluxDB creates the schema, it validates future +write requests against the schema before accepting new data. +Both new tags and fields can be added later as your schema changes. {{% show-in "core" %}} > [!Note] -> #### Core is optimized for recent data +> #### InfluxDB 3 Core is optimized for recent data > > {{% product-name %}} is optimized for recent data but accepts writes from any time period. > The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools. > For extended historical queries and optimized data organization, consider using [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/). {{% /show-in %}} -#### Write data in line protocol syntax + -{{% product-name %}} accepts data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax. -The following code block is an example of time series data in [line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax: +## Line protocol -- `cpu`: the table name. -- `host`, `region`, `applications`: the tags. A tag set is an ordered, comma-separated list of key/value pairs where the values are strings. -- `val`, `usage_percent`, `status`: the fields. A field set is a comma-separated list of key/value pairs. -- timestamp: If you don't specify a timestamp, InfluxData uses the time when data is written. - The default precision is a nanosecond epoch. - To specify a different precision, pass the `precision` parameter in your CLI command or API request. +{{% product-name %}} accepts data in +[line protocol](/influxdb3/version/reference/syntax/line-protocol/) syntax. +Line protocol consists of the following elements: -``` -cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" -cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" -cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" -cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" -cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" -cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn" + + +{{< req type="key" >}} + +- {{< req "\*" >}} **table**: A string that identifies the + [table](/influxdb3/version/reference/glossary/#table) to store the data in. +- **tag set**: Comma-delimited list of key value pairs, each representing a tag. + Tag keys and values are unquoted strings. _Spaces, commas, and equal characters + must be escaped._ +- {{< req "\*" >}} **field set**: Comma-delimited list of key value pairs, each + representing a field. + Field keys are unquoted strings. _Spaces and commas must be escaped._ + Field values can be one of the following types: + + - [strings](/influxdb3/clustered/reference/syntax/line-protocol/#string) (quoted) + - [floats](/influxdb3/clustered/reference/syntax/line-protocol/#float) + - [integers](/influxdb3/clustered/reference/syntax/line-protocol/#integer) + - [unsigned integers](/influxdb3/clustered/reference/syntax/line-protocol/#uinteger) + - [booleans](/influxdb3/clustered/reference/syntax/line-protocol/#boolean) + +- **timestamp**: [Unix timestamp](/influxdb3/clustered/reference/syntax/line-protocol/#unix-timestamp) +associated with the data. InfluxDB supports up to nanosecond precision. + + +{{< expand-wrapper >}} +{{% expand "How are InfluxDB line protocol elements parsed?" %}} + + + +- **table**: Everything before the _first unescaped comma before the first + whitespace_. +- **tag set**: Key-value pairs between the _first unescaped comma_ and the _first + unescaped whitespace_. +- **field set**: Key-value pairs between the _first and second unescaped whitespaces_. +- **timestamp**: Integer value after the _second unescaped whitespace_. +- Lines are separated by the newline character (`\n`). Line protocol is +whitespace sensitive. + + +{{% /expand %}} +{{< /expand-wrapper >}} + +_For schema design recommendations, see +[InfluxDB schema design recomendations](/influxdb3/version/write-data/best-practices/schema-design/)._ + +--- + +{{< influxdb/line-protocol version="v3" >}} + +--- + +## Construct line protocol + + + +With a basic understanding of line protocol, you can now construct line protocol +and write data to {{% product-name %}}. +Consider a use case where you collect data from sensors in your home. +Each sensor collects temperature, humidity, and carbon monoxide readings. +To collect this data, use the following schema: + +- **table**: `home` + - **tags** + - `room`: Living Room or Kitchen + - **fields** + - `temp`: temperature in °C (float) + - `hum`: percent humidity (float) + - `co`: carbon monoxide in parts per million (integer) + - **timestamp**: Unix timestamp in _second_ precision + + +The following line protocol sample represents data collected hourly beginning at +{{% influxdb/custom-timestamps-span %}}**2022-01-01T08:00:00Z (UTC)** until **2022-01-01T20:00:00Z (UTC)**{{% /influxdb/custom-timestamps-span %}}. +_These timestamps are dynamic and can be updated by clicking the {{% icon "clock" %}} +icon in the bottom right corner._ + +{{% influxdb/custom-timestamps %}} + +##### Home sensor data line protocol + +```text +home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 +home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 +home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 +home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600 +home,room=Living\ Room temp=21.8,hum=36.0,co=0i 1641031200 +home,room=Kitchen temp=22.7,hum=36.1,co=0i 1641031200 +home,room=Living\ Room temp=22.2,hum=36.0,co=0i 1641034800 +home,room=Kitchen temp=22.4,hum=36.0,co=0i 1641034800 +home,room=Living\ Room temp=22.2,hum=35.9,co=0i 1641038400 +home,room=Kitchen temp=22.5,hum=36.0,co=0i 1641038400 +home,room=Living\ Room temp=22.4,hum=36.0,co=0i 1641042000 +home,room=Kitchen temp=22.8,hum=36.5,co=1i 1641042000 +home,room=Living\ Room temp=22.3,hum=36.1,co=0i 1641045600 +home,room=Kitchen temp=22.8,hum=36.3,co=1i 1641045600 +home,room=Living\ Room temp=22.3,hum=36.1,co=1i 1641049200 +home,room=Kitchen temp=22.7,hum=36.2,co=3i 1641049200 +home,room=Living\ Room temp=22.4,hum=36.0,co=4i 1641052800 +home,room=Kitchen temp=22.4,hum=36.0,co=7i 1641052800 +home,room=Living\ Room temp=22.6,hum=35.9,co=5i 1641056400 +home,room=Kitchen temp=22.7,hum=36.0,co=9i 1641056400 +home,room=Living\ Room temp=22.8,hum=36.2,co=9i 1641060000 +home,room=Kitchen temp=23.3,hum=36.9,co=18i 1641060000 +home,room=Living\ Room temp=22.5,hum=36.3,co=14i 1641063600 +home,room=Kitchen temp=23.1,hum=36.6,co=22i 1641063600 +home,room=Living\ Room temp=22.2,hum=36.4,co=17i 1641067200 +home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200 ``` -### Write data using the CLI +{{% /influxdb/custom-timestamps %}} -To quickly get started writing data, you can use the `influxdb3` CLI. +## Write data using the CLI -> [!Note] -> For batching and higher-volume write workloads, we recommend using the [HTTP API](#write-data-using-the-http-api). -> -> #### Write data using InfluxDB API client libraries -> -> InfluxDB provides supported client libraries that integrate with your code -> to construct data as time series points and write the data as line protocol to your {{% product-name %}} database. -> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/api-client-libraries/). +To quickly get started writing data, use the +[`influxdb3 write` command](/influxdb3/version/reference/clis/influxdb3/write/). +Include the following: -##### Example: write data using the influxdb3 CLI - -Use the `influxdb3 write` command to write data to a database. - -In the code samples, replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} - -##### Write data via stdin - -Pass data as quoted line protocol via standard input (stdin)--for example: +- `--database` option that identifies the target database +- `--token` option that specifies the token to use _(unless the `INFLUXDB3_AUTH_TOKEN` + environment variable is already set)_ +- Quoted line protocol via standard input (stdin) {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} ```bash influxdb3 write \ --database DATABASE_NAME \ --token AUTH_TOKEN \ - --precision ns \ - --accept-partial \ -'cpu,host=Alpha,region=us-west,application=webserver val=1i,usage_percent=20.5,status="OK" -cpu,host=Bravo,region=us-east,application=database val=2i,usage_percent=55.2,status="OK" -cpu,host=Charlie,region=us-west,application=cache val=3i,usage_percent=65.4,status="OK" -cpu,host=Bravo,region=us-east,application=database val=4i,usage_percent=70.1,status="Warn" -cpu,host=Bravo,region=us-central,application=database val=5i,usage_percent=80.5,status="OK" -cpu,host=Alpha,region=us-west,application=webserver val=6i,usage_percent=25.3,status="Warn"' +'home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 +home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 +home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 +home,room=Kitchen temp=23.0,hum=36.2,co=0i 1641027600 +home,room=Living\ Room temp=21.8,hum=36.0,co=0i 1641031200 +home,room=Kitchen temp=22.7,hum=36.1,co=0i 1641031200 +home,room=Living\ Room temp=22.2,hum=36.0,co=0i 1641034800 +home,room=Kitchen temp=22.4,hum=36.0,co=0i 1641034800 +home,room=Living\ Room temp=22.2,hum=35.9,co=0i 1641038400 +home,room=Kitchen temp=22.5,hum=36.0,co=0i 1641038400 +home,room=Living\ Room temp=22.4,hum=36.0,co=0i 1641042000 +home,room=Kitchen temp=22.8,hum=36.5,co=1i 1641042000 +home,room=Living\ Room temp=22.3,hum=36.1,co=0i 1641045600 +home,room=Kitchen temp=22.8,hum=36.3,co=1i 1641045600 +home,room=Living\ Room temp=22.3,hum=36.1,co=1i 1641049200 +home,room=Kitchen temp=22.7,hum=36.2,co=3i 1641049200 +home,room=Living\ Room temp=22.4,hum=36.0,co=4i 1641052800 +home,room=Kitchen temp=22.4,hum=36.0,co=7i 1641052800 +home,room=Living\ Room temp=22.6,hum=35.9,co=5i 1641056400 +home,room=Kitchen temp=22.7,hum=36.0,co=9i 1641056400 +home,room=Living\ Room temp=22.8,hum=36.2,co=9i 1641060000 +home,room=Kitchen temp=23.3,hum=36.9,co=18i 1641060000 +home,room=Living\ Room temp=22.5,hum=36.3,co=14i 1641063600 +home,room=Kitchen temp=23.1,hum=36.6,co=22i 1641063600 +home,room=Living\ Room temp=22.2,hum=36.4,co=17i 1641067200 +home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200' ``` {{% /code-placeholders %}} +In the code samples, replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + the name of the [database](/influxdb3/version/admin/databases/) to write to +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission + to write to the specified database{{% /show-in %}} + ##### Write data from a file Pass the `--file` option to write line protocol you have saved to a file--for example, save the @@ -97,6 +210,21 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} +> [!Note] +> #### Other write methods +> +> There are many ways to write data to your {{% product-name %}} database, including: +> +> - [InfluxDB HTTP API](#write-data-using-the-http-api): Recommended for +> batching and higher-volume write workloads. +> - [InfluxDB client libraries](/influxdb3/version/write-data/api-client-libraries/): +> Client libraries that integrate with your code to construct data as time +> series points and write the data as line protocol to your {{% product-name %}} database. +> - [Telegraf](/telegraf/v1/): A data collection agent with over 300 plugins for +> collecting, processing, and writing data. +> +> For more information, see [Write data to {{% product-name %}}](/influxdb3/version/write-data/). + ### Write data using the HTTP API {{% product-name %}} provides three write API endpoints that respond to HTTP `POST` requests. From 9dc847bf477c51e2827d82598a542542375c2bdd Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 12 Jun 2025 15:32:44 -0600 Subject: [PATCH 04/80] restructured write guides, start on gs query guide --- content/influxdb3/core/get-started/setup.md | 3 +- content/influxdb3/core/get-started/write.md | 8 +- ...lient-libraries.md => client-libraries.md} | 12 +- .../core/write-data/http-api/_index.md | 22 +++ .../{ => http-api}/compatibility-apis.md | 10 +- .../core/write-data/http-api/v3-write-lp.md | 20 ++ .../influxdb3/enterprise/get-started/query.md | 22 +++ .../influxdb3/enterprise/get-started/setup.md | 3 +- .../influxdb3/enterprise/get-started/write.md | 8 +- ...lient-libraries.md => client-libraries.md} | 14 +- .../write-data/compatibility-apis.md | 4 +- .../enterprise/write-data/http-api/_index.md | 22 +++ .../write-data/http-api/compatibility-apis.md | 26 +++ .../write-data/http-api/v3-write-lp.md | 20 ++ content/shared/influxdb3-get-started/query.md | 19 +- content/shared/influxdb3-get-started/write.md | 186 +----------------- .../shared/influxdb3-write-guides/_index.md | 5 +- ...lient-libraries.md => client-libraries.md} | 129 +----------- .../influxdb3-write-guides/http-api/_index.md | 4 + .../{ => http-api}/compatibility-apis.md | 7 +- .../http-api/v3-write-lp.md | 162 +++++++++++++++ .../influxdb3-write-guides/influxdb3-cli.md | 5 +- .../influxdb3-write-guides/troubleshoot.md | 2 +- 23 files changed, 364 insertions(+), 349 deletions(-) rename content/influxdb3/core/write-data/{api-client-libraries.md => client-libraries.md} (52%) create mode 100644 content/influxdb3/core/write-data/http-api/_index.md rename content/influxdb3/core/write-data/{ => http-api}/compatibility-apis.md (75%) create mode 100644 content/influxdb3/core/write-data/http-api/v3-write-lp.md create mode 100644 content/influxdb3/enterprise/get-started/query.md rename content/influxdb3/enterprise/write-data/{api-client-libraries.md => client-libraries.md} (53%) create mode 100644 content/influxdb3/enterprise/write-data/http-api/_index.md create mode 100644 content/influxdb3/enterprise/write-data/http-api/compatibility-apis.md create mode 100644 content/influxdb3/enterprise/write-data/http-api/v3-write-lp.md rename content/shared/influxdb3-write-guides/{api-client-libraries.md => client-libraries.md} (71%) create mode 100644 content/shared/influxdb3-write-guides/http-api/_index.md rename content/shared/influxdb3-write-guides/{ => http-api}/compatibility-apis.md (81%) create mode 100644 content/shared/influxdb3-write-guides/http-api/v3-write-lp.md diff --git a/content/influxdb3/core/get-started/setup.md b/content/influxdb3/core/get-started/setup.md index 8c39838ce..9bab49581 100644 --- a/content/influxdb3/core/get-started/setup.md +++ b/content/influxdb3/core/get-started/setup.md @@ -1,5 +1,6 @@ --- -title: Set up InfluxDB 3 Core +title: Set up {{% product-name %}} +seotitle: Set up InfluxDB | Get started with {{% product-name %}} description: > .... menu: diff --git a/content/influxdb3/core/get-started/write.md b/content/influxdb3/core/get-started/write.md index a796ab16f..b848ca7a2 100644 --- a/content/influxdb3/core/get-started/write.md +++ b/content/influxdb3/core/get-started/write.md @@ -1,5 +1,6 @@ --- -title: Write data to InfluxDB 3 Core +title: Write data to {{% product-name %}} +seotitle: Write data | Get started with {{% product-name %}} description: > .... menu: @@ -9,9 +10,8 @@ menu: parent: Get started weight: 102 related: - - /influxdb3/core/install/ - - /influxdb3/core/admin/tokens/ - - /influxdb3/core/reference/config-options/ + - /influxdb3/core/write-data/ + - /influxdb3/core/reference/line-protocol/ source: /shared/influxdb3-get-started/write.md --- diff --git a/content/influxdb3/core/write-data/api-client-libraries.md b/content/influxdb3/core/write-data/client-libraries.md similarity index 52% rename from content/influxdb3/core/write-data/api-client-libraries.md rename to content/influxdb3/core/write-data/client-libraries.md index fc44f2e06..2dcd72f32 100644 --- a/content/influxdb3/core/write-data/api-client-libraries.md +++ b/content/influxdb3/core/write-data/client-libraries.md @@ -1,21 +1,21 @@ --- -title: Use the HTTP API and client libraries to write data +title: Use InfluxDB client libraries to write data description: > - Use the `/api/v3/write_lp` HTTP API endpoint and InfluxDB API clients to write points as line protocol data to {{% product-name %}}. + Use InfluxDB API clients to write points as line protocol data to {{% product-name %}}. menu: influxdb3_core: - name: Use the API and client libraries + name: Use client libraries parent: Write data - identifier: write-api-client-libs + identifier: write-client-libs weight: 100 aliases: - - /influxdb3/core/write-data/client-libraries/ + - /influxdb3/core/write-data/api-client-libraries/ related: - /influxdb3/core/reference/syntax/line-protocol/ - /influxdb3/core/get-started/write/ - /influxdb3/core/reference/client-libraries/v3/ - /influxdb3/core/api/v3/#operation/PostWriteLP, /api/v3/write_lp endpoint -source: /shared/influxdb3-write-guides/api-client-libraries.md +source: /shared/influxdb3-write-guides/client-libraries.md --- diff --git a/content/influxdb3/core/write-data/compatibility-apis.md b/content/influxdb3/core/write-data/http-api/compatibility-apis.md similarity index 75% rename from content/influxdb3/core/write-data/compatibility-apis.md rename to content/influxdb3/core/write-data/http-api/compatibility-apis.md index bf3631118..901d0f900 100644 --- a/content/influxdb3/core/write-data/compatibility-apis.md +++ b/content/influxdb3/core/write-data/http-api/compatibility-apis.md @@ -6,21 +6,21 @@ description: > menu: influxdb3_core: name: Use v1 and v2 compatibility APIs - parent: Write data - identifier: write-compatibility-client-libs -weight: 101 + parent: write-http-api +weight: 202 aliases: - /influxdb3/core/write-data/client-libraries/ + - /influxdb3/core/write-data/compatibility-apis/ related: - /influxdb3/core/reference/syntax/line-protocol/ - /influxdb3/core/get-started/write/ - /influxdb3/core/reference/client-libraries/v2/ - /influxdb3/core/api/v3/#operation/PostV2Write, /api/v2/write (v2-compatible) endpoint - /influxdb3/core/api/v3/#operation/PostV1Write, /write (v1-compatible) endpoint -source: /shared/influxdb3-write-guides/compatibility-apis.md +source: /shared/influxdb3-write-guides/http-api/compatibility-apis.md --- \ No newline at end of file diff --git a/content/influxdb3/core/write-data/http-api/v3-write-lp.md b/content/influxdb3/core/write-data/http-api/v3-write-lp.md new file mode 100644 index 000000000..fd7fa11c1 --- /dev/null +++ b/content/influxdb3/core/write-data/http-api/v3-write-lp.md @@ -0,0 +1,20 @@ +--- +title: Use the v3 write API to write data +description: > + Use the `/api/v3/write_lp` HTTP API endpoint to write data to {{% product-name %}}. +menu: + influxdb3_core: + name: Use the v3 write API + parent: write-http-api +weight: 201 +related: + - /influxdb3/core/reference/syntax/line-protocol/ + - /influxdb3/core/get-started/write/ + - /influxdb3/core/api/v3/#operation/PostWriteLP, /api/v3/write_lp endpoint +source: /shared/influxdb3-write-guides/http-api/v3-write-lp.md +--- + + diff --git a/content/influxdb3/enterprise/get-started/query.md b/content/influxdb3/enterprise/get-started/query.md new file mode 100644 index 000000000..6c52e9fe6 --- /dev/null +++ b/content/influxdb3/enterprise/get-started/query.md @@ -0,0 +1,22 @@ +--- +title: Query data in {{% product-name %}} +seotitle: Query data | Get started with {{% product-name %}} +description: > + .... +menu: + influxdb3_enterprise: + name: Query data + identifier: gs-query-data + parent: Get started +weight: 103 +related: + - /influxdb3/enterprise/query-data/ + - /influxdb3/enterprise/reference/sql/ + - /influxdb3/enterprise/reference/influxql/ +source: /shared/influxdb3-get-started/query.md +--- + + diff --git a/content/influxdb3/enterprise/get-started/setup.md b/content/influxdb3/enterprise/get-started/setup.md index e10103352..47e5a0905 100644 --- a/content/influxdb3/enterprise/get-started/setup.md +++ b/content/influxdb3/enterprise/get-started/setup.md @@ -1,5 +1,6 @@ --- -title: Set up InfluxDB 3 Enterprise +title: Set up {{% product-name %}} +seotitle: Set up InfluxDB | Get started with {{% product-name %}} description: > .... menu: diff --git a/content/influxdb3/enterprise/get-started/write.md b/content/influxdb3/enterprise/get-started/write.md index b12086cb9..dc6828904 100644 --- a/content/influxdb3/enterprise/get-started/write.md +++ b/content/influxdb3/enterprise/get-started/write.md @@ -1,5 +1,6 @@ --- -title: Write data to InfluxDB 3 Enterprise +title: Write data to {{% product-name %}} +seotitle: Write data | Get started with {{% product-name %}} description: > .... menu: @@ -9,9 +10,8 @@ menu: parent: Get started weight: 102 related: - - /influxdb3/enterprise/install/ - - /influxdb3/enterprise/admin/tokens/ - - /influxdb3/enterprise/reference/config-options/ + - /influxdb3/enterprise/write-data/ + - /influxdb3/enterprise/reference/line-protocol/ source: /shared/influxdb3-get-started/write.md --- diff --git a/content/influxdb3/enterprise/write-data/api-client-libraries.md b/content/influxdb3/enterprise/write-data/client-libraries.md similarity index 53% rename from content/influxdb3/enterprise/write-data/api-client-libraries.md rename to content/influxdb3/enterprise/write-data/client-libraries.md index 5e51607b5..6b32cc7cb 100644 --- a/content/influxdb3/enterprise/write-data/api-client-libraries.md +++ b/content/influxdb3/enterprise/write-data/client-libraries.md @@ -1,24 +1,24 @@ --- -title: Use the HTTP API and client libraries to write data +title: Use InfluxDB client libraries to write data description: > - Use the `/api/v3/write_lp` HTTP API endpoint and InfluxDB API clients to write points as line protocol data to {{% product-name %}}. + Use InfluxDB API clients to write points as line protocol data to {{% product-name %}}. menu: influxdb3_enterprise: - name: Use the API and client libraries + name: Use client libraries parent: Write data - identifier: write-api-client-libs + identifier: write-client-libs weight: 100 aliases: - - /influxdb3/enterprise/write-data/client-libraries/ + - /influxdb3/enterprise/write-data/api-client-libraries/ related: - /influxdb3/enterprise/reference/syntax/line-protocol/ - /influxdb3/enterprise/get-started/write/ - /influxdb3/enterprise/reference/client-libraries/v3/ - /influxdb3/enterprise/api/v3/#operation/PostWriteLP, /api/v3/write_lp endpoint -source: /shared/influxdb3-write-guides/api-client-libraries.md +source: /shared/influxdb3-write-guides/client-libraries.md --- +--> \ No newline at end of file diff --git a/content/influxdb3/enterprise/write-data/compatibility-apis.md b/content/influxdb3/enterprise/write-data/compatibility-apis.md index 40b25bde7..b811d24c0 100644 --- a/content/influxdb3/enterprise/write-data/compatibility-apis.md +++ b/content/influxdb3/enterprise/write-data/compatibility-apis.md @@ -17,10 +17,10 @@ related: - /influxdb3/enterprise/reference/client-libraries/v2/ - /influxdb3/enterprise/api/v3/#operation/PostV2Write, /api/v2/write (v2-compatible) endpoint - /influxdb3/enterprise/api/v3/#operation/PostV1Write, /write (v1-compatible) endpoint -source: /shared/influxdb3-write-guides/compatibility-apis.md +source: /shared/influxdb3-write-guides/http-api/compatibility-apis.md --- \ No newline at end of file diff --git a/content/influxdb3/enterprise/write-data/http-api/_index.md b/content/influxdb3/enterprise/write-data/http-api/_index.md new file mode 100644 index 000000000..da321e75f --- /dev/null +++ b/content/influxdb3/enterprise/write-data/http-api/_index.md @@ -0,0 +1,22 @@ +--- +title: Use the InfluxDB HTTP API to write data +description: > + Use the `/api/v3/write_lp`, `/api/v2/write`, or `/write` HTTP API endpoints + to write data to {{% product-name %}}. +menu: + influxdb3_enterprise: + name: Use the HTTP API + parent: Write data + identifier: write-http-api +weight: 100 +related: + - /influxdb3/enterprise/reference/syntax/line-protocol/ + - /influxdb3/enterprise/get-started/write/ + - /influxdb3/enterprise/api/v3/#operation/PostWriteLP, /api/v3/write_lp endpoint +source: /shared/influxdb3-write-guides/http-api/_index.md +--- + + diff --git a/content/influxdb3/enterprise/write-data/http-api/compatibility-apis.md b/content/influxdb3/enterprise/write-data/http-api/compatibility-apis.md new file mode 100644 index 000000000..47f645856 --- /dev/null +++ b/content/influxdb3/enterprise/write-data/http-api/compatibility-apis.md @@ -0,0 +1,26 @@ +--- +title: Use compatibility APIs and client libraries to write data +description: > + Use HTTP API endpoints compatible with InfluxDB v2 and v1 clients to write + points as line protocol data to {{% product-name %}}. +menu: + influxdb3_enterprise: + name: Use v1 and v2 compatibility APIs + parent: write-http-api +weight: 202 +aliases: + - /influxdb3/enterprise/write-data/client-libraries/ + - /influxdb3/enterprise/write-data/compatibility-apis/ +related: + - /influxdb3/enterprise/reference/syntax/line-protocol/ + - /influxdb3/enterprise/get-started/write/ + - /influxdb3/enterprise/reference/client-libraries/v2/ + - /influxdb3/enterprise/api/v3/#operation/PostV2Write, /api/v2/write (v2-compatible) endpoint + - /influxdb3/enterprise/api/v3/#operation/PostV1Write, /write (v1-compatible) endpoint +source: /shared/influxdb3-write-guides/http-api/compatibility-apis.md +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/write-data/http-api/v3-write-lp.md b/content/influxdb3/enterprise/write-data/http-api/v3-write-lp.md new file mode 100644 index 000000000..1feec9880 --- /dev/null +++ b/content/influxdb3/enterprise/write-data/http-api/v3-write-lp.md @@ -0,0 +1,20 @@ +--- +title: Use the v3 write API to write data +description: > + Use the `/api/v3/write_lp` HTTP API endpoint to write data to {{% product-name %}}. +menu: + influxdb3_enterprise: + name: Use the v3 write API + parent: write-http-api +weight: 201 +related: + - /influxdb3/enterprise/reference/syntax/line-protocol/ + - /influxdb3/enterprise/get-started/write/ + - /influxdb3/enterprise/api/v3/#operation/PostWriteLP, /api/v3/write_lp endpoint +source: /shared/influxdb3-write-guides/http-api/v3-write-lp.md +--- + + diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 40dd21609..8483ba01b 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -1,19 +1,20 @@ -### Query data - -InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an -SQL-like language customized for time series queries. + +{{% product-name %}} supports both native SQL and InfluxQL for querying data. InfluxQL is +an SQL-like query language designed for InfluxDB v1 and customized for time +series queries. {{% show-in "core" %}} {{< product-name >}} limits -query time ranges to 72 hours (both recent and historical) to ensure query performance. -For more information about the 72-hour limitation, see the -[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). +query time ranges to approximately 72 hours (both recent and historical) to +ensure query performance. For more information about the 72-hour limitation, see +the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). {{% /show-in %}} > [!Note] -> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. +> Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3. -The quickest way to get started querying is to use the `influxdb3` CLI (which uses the Flight SQL API over HTTP2). +The quickest way to get started querying is to use the `influxdb3` CLI +(which uses the Flight SQL API over HTTP2). The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index 82bb5d909..49651996e 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -215,186 +215,20 @@ Replace the following placeholders with your values: > > There are many ways to write data to your {{% product-name %}} database, including: > -> - [InfluxDB HTTP API](#write-data-using-the-http-api): Recommended for +> - [InfluxDB HTTP API](/influxdb3/version/write-data/http-api/): Recommended for > batching and higher-volume write workloads. -> - [InfluxDB client libraries](/influxdb3/version/write-data/api-client-libraries/): +> - [InfluxDB client libraries](/influxdb3/version/write-data/client-libraries/): > Client libraries that integrate with your code to construct data as time -> series points and write the data as line protocol to your {{% product-name %}} database. +> series points and write the data as line protocol to your +> {{% product-name %}} database. > - [Telegraf](/telegraf/v1/): A data collection agent with over 300 plugins for > collecting, processing, and writing data. > > For more information, see [Write data to {{% product-name %}}](/influxdb3/version/write-data/). -### Write data using the HTTP API - -{{% product-name %}} provides three write API endpoints that respond to HTTP `POST` requests. -The `/api/v3/write_lp` endpoint is the recommended endpoint for writing data and -provides additional options for controlling write behavior. - -If you need to write data using InfluxDB v1.x or v2.x tools, use the compatibility API endpoints. -Compatibility APIs work with [Telegraf](/telegraf/v1/), InfluxDB v2.x and v1.x [API client libraries](/influxdb3/version/reference/client-libraries), and other tools that support the v1.x or v2.x APIs. - -{{% tabs-wrapper %}} -{{% tabs %}} -[/api/v3/write_lp](#) -[v2 compatibility](#) -[v1 compatibility](#) -{{% /tabs %}} -{{% tab-content %}} - -{{% product-name %}} adds the `/api/v3/write_lp` endpoint. - -{{}} - -This endpoint accepts the same line protocol syntax as previous versions, -and supports the following parameters: - -- `?accept_partial=`: Accept or reject partial writes (default is `true`). -- `?no_sync=`: Control when writes are acknowledged: - - `no_sync=true`: Acknowledges writes before WAL persistence completes. - - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). -- `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. -- request body: The line protocol data to write. - -For more information about the parameters, see [Write data](/influxdb3/version/write-data/). - -##### Example: write data using the /api/v3 HTTP API - -The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. -To show the difference between accepting and rejecting partial writes, line `2` in the example contains a `string` value (`"hi"`) for a `float` field (`temp`). - -###### Partial write of line protocol occurred - -With `accept_partial=true` (default): - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "partial write of line protocol occurred", - "data": [ - { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } - ] -} -``` - -Line `1` is written and queryable. -The response is an HTTP error (`400`) status, and the response body contains the error message `partial write of line protocol occurred` with details about the problem line. - -###### Parsing failed for write_lp endpoint - -With `accept_partial=false`: - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&accept_partial=false" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "parsing failed for write_lp endpoint", - "data": { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } -} -``` - -InfluxDB rejects all points in the batch. -The response is an HTTP error (`400`) status, and the response body contains `parsing failed for write_lp endpoint` and details about the problem line. - -For more information about the ingest path and data flow, see [Data durability](/influxdb3/version/reference/internals/durability/). - -{{% /tab-content %}} -{{% tab-content %}} - -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients (such as [Telegraf's InfluxDB v2 output plugin](/telegraf/v1/plugins/#output-influxdb_v2) and [InfluxDB v2 API client libraries](/influxdb3/version/reference/client-libraries/v2/)) that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). - -{{}} - -{{% /tab-content %}} - -{{% tab-content %}} - -The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility for clients that can write data to InfluxDB v1.x. - -{{}} - - -{{% /tab-content %}} -{{% /tabs-wrapper %}} - -> [!Note] -> #### Compatibility APIs differ from native APIs -> -> Keep in mind that the compatibility APIs differ from the v1 and v2 APIs in previous versions in the following ways: -> -> - Tags in a table (measurement) are _immutable_ -> - A tag and a field can't have the same name within a table. - -#### Write responses - -By default, InfluxDB acknowledges writes after flushing the WAL file to the object store (occurring every second). -For high write throughput, you can send multiple concurrent write requests. - -#### Use no_sync for immediate write responses - -To reduce the latency of writes, use the `no_sync` write option, which acknowledges writes _before_ WAL persistence completes. -When `no_sync=true`, InfluxDB validates the data, writes the data to the WAL, and then immediately responds to the client, without waiting for persistence to the object store. - -Using `no_sync=true` is best when prioritizing high-throughput writes over absolute durability. - -- Default behavior (`no_sync=false`): Waits for data to be written to the object store before acknowledging the write. Reduces the risk of data loss, but increases the latency of the response. -- With `no_sync=true`: Reduces write latency, but increases the risk of data loss in case of a crash before WAL persistence. - -##### Immediate write using the HTTP API - -The `no_sync` parameter controls when writes are acknowledged--for example: - -```bash -curl "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&no_sync=true" \ - --header 'Authorization: Bearer apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0==' \ - --data-raw "home,room=Sunroom temp=96" -``` - -### Create a database or table - -To create a database without writing data, use the `create` subcommand--for example: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 create database DATABASE_NAME \ - --token AUTH_TOKEN -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - -To learn more about a subcommand, use the `-h, --help` flag or view the [InfluxDB 3 CLI reference](/influxdb3/version/reference/cli/influxdb3/create): - -```bash -influxdb3 create -h -``` \ No newline at end of file +{{% page-nav + prev="/influxdb3/version/get-started/setup/" + prevText="Set up InfluxDB" + next="/influxdb3/version/get-started/query/" + nextText="Query data" +%}} diff --git a/content/shared/influxdb3-write-guides/_index.md b/content/shared/influxdb3-write-guides/_index.md index f95c94b7a..eb743e572 100644 --- a/content/shared/influxdb3-write-guides/_index.md +++ b/content/shared/influxdb3-write-guides/_index.md @@ -15,8 +15,9 @@ to line protocol. > > #### Choose the write endpoint for your workload > -> When creating new write workloads, use the HTTP API -> [`/api/v3/write_lp` endpoint with client libraries](/influxdb3/version/write-data/api-client-libraries/). +> When creating new write workloads, use the +> [InfluxDB HTTP API `/api/v3/write_lp` endpoint](influxdb3/version/write-data/http-api/v3-write-lp/) +> and [client libraries](/influxdb3/version/write-data/client-libraries/). > > When bringing existing v1 write workloads, use the {{% product-name %}} > HTTP API [`/write` endpoint](/influxdb3/core/api/v3/#operation/PostV1Write). diff --git a/content/shared/influxdb3-write-guides/api-client-libraries.md b/content/shared/influxdb3-write-guides/client-libraries.md similarity index 71% rename from content/shared/influxdb3-write-guides/api-client-libraries.md rename to content/shared/influxdb3-write-guides/client-libraries.md index 5be1f203a..bfd690f5b 100644 --- a/content/shared/influxdb3-write-guides/api-client-libraries.md +++ b/content/shared/influxdb3-write-guides/client-libraries.md @@ -1,129 +1,6 @@ - Use the `/api/v3/write_lp` HTTP API endpoint and InfluxDB v3 API clients to write points as line protocol data to {{% product-name %}}. - -- [Use the /api/v3/write\_lp endpoint](#use-the-apiv3write_lp-endpoint) - - [Example: write data using the /api/v3 HTTP API](#example-write-data-using-the-apiv3-http-api) - - [Write responses](#write-responses) - - [Use no\_sync for immediate write responses](#use-no_sync-for-immediate-write-responses) -- [Use API client libraries](#use-api-client-libraries) - - [Construct line protocol](#construct-line-protocol) - - [Set up your project](#set-up-your-project) - -## Use the /api/v3/write_lp endpoint - -{{% product-name %}} adds the `/api/v3/write_lp` endpoint. - -{{}} - -This endpoint accepts the same line protocol syntax as [previous versions](/influxdb3/version/write-data/compatibility-apis/), -and supports the following parameters: - -- `?accept_partial=`: Accept or reject partial writes (default is `true`). -- `?no_sync=`: Control when writes are acknowledged: - - `no_sync=true`: Acknowledge writes before WAL persistence completes. - - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). -- `?precision=`: Specify the precision of the timestamp. The default is nanosecond precision. - -For more information about the parameters, see [Write data](/influxdb3/version/write-data/). - -InfluxData provides supported InfluxDB 3 client libraries that you can integrate with your code -to construct data as time series points, and then write them as line protocol to an {{% product-name %}} database. -For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/client-libraries/). - -### Example: write data using the /api/v3 HTTP API - -The following examples show how to write data using `curl` and the `/api/3/write_lp` HTTP endpoint. -To show the difference between accepting and rejecting partial writes, line `2` in the example contains a string value (`"hi"`) for a float field (`temp`). - -#### Partial write of line protocol occurred - -With `accept_partial=true` (default): - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto" \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "partial write of line protocol occurred", - "data": [ - { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } - ] -} -``` - -Line `1` is written and queryable. -Line `2` is rejected. -The response is an HTTP error (`400`) status, and the response body contains the error message `partial write of line protocol occurred` with details about the problem line. - -#### Parsing failed for write_lp endpoint - -With `accept_partial=false`: - -```bash -curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto&accept_partial=false" \ - --data-raw 'home,room=Sunroom temp=96 -home,room=Sunroom temp="hi"' -``` - -The response is the following: - -``` -< HTTP/1.1 400 Bad Request -... -{ - "error": "parsing failed for write_lp endpoint", - "data": { - "original_line": "home,room=Sunroom temp=hi", - "line_number": 2, - "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" - } -} -``` - -InfluxDB rejects all points in the batch. -The response is an HTTP error (`400`) status, and the response body contains `parsing failed for write_lp endpoint` and details about the problem line. - -For more information about the ingest path and data flow, see [Data durability](/influxdb3/version/reference/internals/durability/). - -### Write responses - -By default, InfluxDB acknowledges writes after flushing the WAL file to the Object store (occurring every second). -For high write throughput, you can send multiple concurrent write requests. - -### Use no_sync for immediate write responses - -To reduce the latency of writes, use the `no_sync` write option, which acknowledges writes _before_ WAL persistence completes. -When `no_sync=true`, InfluxDB validates the data, writes the data to the WAL, and then immediately responds to the client, without waiting for persistence to the Object store. - -Using `no_sync=true` is best when prioritizing high-throughput writes over absolute durability. - -- Default behavior (`no_sync=false`): Waits for data to be written to the Object store before acknowledging the write. Reduces the risk of data loss, but increases the latency of the response. -- With `no_sync=true`: Reduces write latency, but increases the risk of data loss in case of a crash before WAL persistence. - -#### Immediate write using the HTTP API - -The `no_sync` parameter controls when writes are acknowledged--for example: - -```bash -curl "http://localhost:8181/api/v3/write_lp?db=sensors&precision=auto&no_sync=true" \ - --data-raw "home,room=Sunroom temp=96" -``` - -## Use API client libraries - Use InfluxDB 3 client libraries that integrate with your code to construct data -as time series points, and -then write them as line protocol to an {{% product-name %}} database. +as time series points, and then write them as line protocol to an +{{% product-name %}} database. - [Construct line protocol](#construct-line-protocol) - [Example home schema](#example-home-schema) @@ -148,7 +25,7 @@ sensor collects temperature, humidity, and carbon monoxide readings. To collect this data, use the following schema: - + - **table**: `home` - **tags** diff --git a/content/shared/influxdb3-write-guides/http-api/_index.md b/content/shared/influxdb3-write-guides/http-api/_index.md new file mode 100644 index 000000000..6122cf589 --- /dev/null +++ b/content/shared/influxdb3-write-guides/http-api/_index.md @@ -0,0 +1,4 @@ +Use the InfluxDB HTTP API to write data to {{< product-name >}}. +There are different APIs you can use depending on your integration method. + +{{< children >}} diff --git a/content/shared/influxdb3-write-guides/compatibility-apis.md b/content/shared/influxdb3-write-guides/http-api/compatibility-apis.md similarity index 81% rename from content/shared/influxdb3-write-guides/compatibility-apis.md rename to content/shared/influxdb3-write-guides/http-api/compatibility-apis.md index eec64c67a..41dc335aa 100644 --- a/content/shared/influxdb3-write-guides/compatibility-apis.md +++ b/content/shared/influxdb3-write-guides/http-api/compatibility-apis.md @@ -15,14 +15,15 @@ to write points as line protocol data to {{% product-name %}}. ## InfluxDB v2 compatibility -The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards compatibility with clients that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). +The `/api/v2/write` InfluxDB v2 compatibility endpoint provides backwards +compatibility with clients that can write data to InfluxDB OSS v2.x and Cloud 2 (TSM). -{{}} +{{}} ## InfluxDB v1 compatibility The `/write` InfluxDB v1 compatibility endpoint provides backwards compatibility with clients that can write data to InfluxDB v1.x. -{{}} +{{}} diff --git a/content/shared/influxdb3-write-guides/http-api/v3-write-lp.md b/content/shared/influxdb3-write-guides/http-api/v3-write-lp.md new file mode 100644 index 000000000..ec00bb4c2 --- /dev/null +++ b/content/shared/influxdb3-write-guides/http-api/v3-write-lp.md @@ -0,0 +1,162 @@ +Use the `/api/v3/write_lp` endpoint to write data to {{% product-name %}}. + +This endpoint accepts the same [line protocol](/influxdb3/version/reference/line-protocol/) +syntax as previous versions of InfluxDB, and supports the following: + +##### Query parameters + +- `?accept_partial=`: Accept or reject partial writes (default is `true`). +- `?no_sync=`: Control when writes are acknowledged: + - `no_sync=true`: Acknowledge writes before WAL persistence completes. + - `no_sync=false`: Acknowledges writes after WAL persistence completes (default). +- `?precision=`: Specify the precision of the timestamp. + The default is `ns` (nanosecond) precision. + You can also use `auto` to let InfluxDB automatically determine the timestamp + precision by identifying which precisions resolves most closely to _now_. + +##### Request body + +- Line protocol + +{{}} + +_The following example uses [cURL](https://curl.se/) to send a write request using +the {{< influxdb3/home-sample-link >}}, but you can use any HTTP client._ + +{{% influxdb/custom-timestamps %}} +```bash +curl -v "http://{{< influxdb/host >}}/api/v3/write_lp?db=sensors&precision=auto" \ + --data-raw "home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1735545600 +home,room=Kitchen temp=21.0,hum=35.9,co=0i 1735545600 +home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1735549200 +home,room=Kitchen temp=23.0,hum=36.2,co=0i 1735549200 +home,room=Living\ Room temp=21.8,hum=36.0,co=0i 1735552800 +home,room=Kitchen temp=22.7,hum=36.1,co=0i 1735552800 +home,room=Living\ Room temp=22.2,hum=36.0,co=0i 1735556400 +home,room=Kitchen temp=22.4,hum=36.0,co=0i 1735556400 +home,room=Living\ Room temp=22.2,hum=35.9,co=0i 1735560000 +home,room=Kitchen temp=22.5,hum=36.0,co=0i 1735560000 +home,room=Living\ Room temp=22.4,hum=36.0,co=0i 1735563600 +home,room=Kitchen temp=22.8,hum=36.5,co=1i 1735563600 +home,room=Living\ Room temp=22.3,hum=36.1,co=0i 1735567200 +home,room=Kitchen temp=22.8,hum=36.3,co=1i 1735567200 +home,room=Living\ Room temp=22.3,hum=36.1,co=1i 1735570800 +home,room=Kitchen temp=22.7,hum=36.2,co=3i 1735570800 +home,room=Living\ Room temp=22.4,hum=36.0,co=4i 1735574400 +home,room=Kitchen temp=22.4,hum=36.0,co=7i 1735574400 +home,room=Living\ Room temp=22.6,hum=35.9,co=5i 1735578000 +home,room=Kitchen temp=22.7,hum=36.0,co=9i 1735578000 +home,room=Living\ Room temp=22.8,hum=36.2,co=9i 1735581600 +home,room=Kitchen temp=23.3,hum=36.9,co=18i 1735581600 +home,room=Living\ Room temp=22.5,hum=36.3,co=14i 1735585200 +home,room=Kitchen temp=23.1,hum=36.6,co=22i 1735585200 +home,room=Living\ Room temp=22.2,hum=36.4,co=17i 1735588800 +home,room=Kitchen temp=22.7,hum=36.5,co=26i 1735588800" +``` +{{% /influxdb/custom-timestamps %}} + +- [Partial writes](#partial-writes) + - [Accept partial writes](#accept-partial-writes) + - [Do not accept partial writes](#do-not-accept-partial-writes) +- [Write responses](#write-responses) + - [Use no_sync for immediate write responses](#use-no_sync-for-immediate-write-responses) + +> [!Note] +> #### InfluxDB client libraries +> +> InfluxData provides supported InfluxDB 3 client libraries that you can +> integrate with your code to construct data as time series points, and then +> write them as line protocol to an {{% product-name %}} database. +> For more information, see how to [use InfluxDB client libraries to write data](/influxdb3/version/write-data/client-libraries/). + +## Partial writes + +The `/api/v3/write_lp` endpoint lets you accept or reject partial writes using +the `accept_partial` parameter. This parameter changes the behavior of the API +when the write request contains invalid line protocol or schema conflicts. + +For example, the following line protocol contains two points, each using a +different datatype for the `temp` field, which causes a schema conflict: + +``` +home,room=Sunroom temp=96 1735545600 +home,room=Sunroom temp="hi" 1735549200 +``` + +### Accept partial writes + +With `accept_partial=true` (default), InfluxDB: + +- Accepts and writes line `1` +- Rejects line `2` +- Returns a `400 Bad Request` status code and the following response body: + +``` +< HTTP/1.1 400 Bad Request +... +{ + "error": "partial write of line protocol occurred", + "data": [ + { + "original_line": "home,room=Sunroom temp=hi 1735549200", + "line_number": 2, + "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" + } + ] +} +``` + +### Do not accept partial writes + +With `accept_partial=false`, InfluxDB: + +- Rejects _all_ points in the batch +- Returns a `400 Bad Request` status code and the following response body: + +``` +< HTTP/1.1 400 Bad Request +... +{ + "error": "parsing failed for write_lp endpoint", + "data": { + "original_line": "home,room=Sunroom temp=hi 1735549200", + "line_number": 2, + "error_message": "invalid column type for column 'temp', expected iox::column_type::field::float, got iox::column_type::field::string" + } +} +``` + +_For more information about the ingest path and data flow, see +[Data durability](/influxdb3/version/reference/internals/durability/)._ + +## Write responses + +By default, {{% product-name %}} acknowledges writes after flushing the WAL file +to the Object store (occurring every second). +For high write throughput, you can send multiple concurrent write requests. + +### Use no_sync for immediate write responses + +To reduce the latency of writes, use the `no_sync` write option, which +acknowledges writes _before_ WAL persistence completes. +When `no_sync=true`, InfluxDB validates the data, writes the data to the WAL, +and then immediately responds to the client, without waiting for persistence to +the Object store. + +> [!Tip] +> Using `no_sync=true` is best when prioritizing high-throughput writes over +> absolute durability. + +- Default behavior (`no_sync=false`): Waits for data to be written to the Object + store before acknowledging the write. Reduces the risk of data loss, but + increases the latency of the response. +- With `no_sync=true`: Reduces write latency, but increases the risk of data + loss in case of a crash before WAL persistence. + +The following example immediately returns a response without waiting for WAL +persistence: + +```bash +curl "http://localhost:8181/api/v3/write_lp?db=sensors&no_sync=true" \ + --data-raw "home,room=Sunroom temp=96" +``` diff --git a/content/shared/influxdb3-write-guides/influxdb3-cli.md b/content/shared/influxdb3-write-guides/influxdb3-cli.md index 6e95dc048..0badb08e3 100644 --- a/content/shared/influxdb3-write-guides/influxdb3-cli.md +++ b/content/shared/influxdb3-write-guides/influxdb3-cli.md @@ -9,8 +9,9 @@ to write line protocol data to {{< product-name >}}. > #### Use the API for batching and higher-volume writes > > The `influxdb3` CLI lets you quickly get started writing data to {{< product-name >}}. -> For batching and higher-volume write workloads, use -> [API client libraries](/influxdb3/version/write-data/api/#use-api-client-libraries) +> For batching and higher-volume write workloads, use the +> [InfluxDB HTTP API](/influxdb3/version/write-data/http-api), +> [API client libraries](/influxdb3/version/write-data/client-libraries/) > or [Telegraf](/influxdb3/version/write-data/use-telegraf/). ## Construct line protocol diff --git a/content/shared/influxdb3-write-guides/troubleshoot.md b/content/shared/influxdb3-write-guides/troubleshoot.md index 3d9691d2d..baff06559 100644 --- a/content/shared/influxdb3-write-guides/troubleshoot.md +++ b/content/shared/influxdb3-write-guides/troubleshoot.md @@ -41,7 +41,7 @@ Write requests return the following status codes: | :-------------------------------| :--------------------------------------------------------------- | :------------- | | `204 "Success"` | | If InfluxDB ingested the data | | `400 "Bad request"` | error details about rejected points, up to 100 points: `line` contains the first rejected line, `message` describes rejections | If some or all request data isn't allowed (for example, if it is malformed or falls outside of the bucket's retention period)--the response body indicates whether a partial write has occurred or if all data has been rejected | -| `401 "Unauthorized"` | | If the `Authorization` header is missing or malformed or if the [token](/influxdb3/version/admin/tokens/) doesn't have [permission](/influxdb3/version/reference/cli/influxctl/token/create/#examples) to write to the database. See [examples using credentials](/influxdb3/version/write-data/api-client-libraries/) in write requests. | +| `401 "Unauthorized"` | | If the `Authorization` header is missing or malformed or if the [token](/influxdb3/version/admin/tokens/) doesn't have [permission](/influxdb3/version/reference/cli/influxctl/token/create/#examples) to write to the database. See [examples using credentials](/influxdb3/version/write-data/client-libraries/) in write requests. | | `404 "Not found"` | requested **resource type** (for example, "organization" or "database"), and **resource name** | If a requested resource (for example, organization or database) wasn't found | | `500 "Internal server error"` | | Default status for an error | | `503` "Service unavailable" | | If the server is temporarily unavailable to accept writes. The `Retry-After` header describes when to try the write again. From 231944ec97a172102259d91b077dfeb176b57546 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 13 Jun 2025 11:37:54 -0600 Subject: [PATCH 05/80] WIP gs query guides --- content/shared/influxdb3-get-started/query.md | 62 +++++++++++++++---- 1 file changed, 51 insertions(+), 11 deletions(-) diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 8483ba01b..71caacc17 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -13,19 +13,59 @@ the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.co > [!Note] > Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3. -The quickest way to get started querying is to use the `influxdb3` CLI -(which uses the Flight SQL API over HTTP2). +The quickly to get started querying, use the +[`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/) +and provide the following: -The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. +- `-H`, `--host`: The host URL of the server _(default is `http://127.0.0.1:8181`)_ +- `-d`, `--database`: _({{% req %}})_ The name of the database to query +- `-l`, `--language`: The query language of the provided query string + - `sql` _(default)_ + - `influxql` +- SQL or InfluxQL query as a string + +> [!Important] +> If the `INFLUXDB3_AUTH_TOKEN` environment variable defined in +> [Set up {{% product-name %}}](/influxdb3/version/get-started/setup/#set-your-token-for-authorization) +> is no longer set, reset the environment variable or provide your token using +> the `-t, --token` option in your command. + +To query the home sensor sample data you wrote in +[Write data to {{% product-name %}}](/influxdb3/version/get-started/write/#write-data-using-the-cli), +run the following command: + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + "SELECT * FROM home WHERE time >= now() - INTERVAL '7 days' ORDER BY time" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + --language influxql \ + "SELECT * FROM home WHERE time >= now() - 7d" +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /code-placeholders %}} + +Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}} +with the name of the database to query. -| Option | Description | Required | -|---------|-------------|--------------| -| `--host` | The host URL of the server [default: `http://127.0.0.1:8181`] to query | No | -| `--database` | The name of the database to operate on | Yes | -| `--token` | The authentication token for the {{% product-name %}} server | No | -| `--language` | The query language of the provided query string [default: `sql`] [possible values: `sql`, `influxql`] | No | -| `--format` | The format in which to output the query [default: `pretty`] [possible values: `pretty`, `json`, `jsonl`, `csv`, `parquet`] | No | -| `--output` | The path to output data to | No | #### Example: query `“SHOW TABLES”` on the `servers` database: From 6607728654d5a67c3889e0b042248b1b757a035b Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 16 Jun 2025 15:14:43 -0600 Subject: [PATCH 06/80] WIP get started query --- content/shared/influxdb3-get-started/query.md | 252 ++++++++++++++---- 1 file changed, 201 insertions(+), 51 deletions(-) diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 71caacc17..98ae5ac2e 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -43,6 +43,41 @@ run the following command: {{% /code-tabs %}} {{% code-tab-content %}} + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + "SELECT * FROM home ORDER BY time" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + --language influxql \ + "SELECT * FROM home" +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /code-placeholders %}} + +_Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}} +with the name of the database to query._ + +To query from a specific time range, use the `WHERE` clause to designate the +boundaries of your time range. + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + ```bash influxdb3 query \ @@ -63,66 +98,181 @@ influxdb3 query \ {{% /code-placeholders %}} -Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}} -with the name of the database to query. +## Example queries +{{< expand-wrapper >}} +{{% expand "List tables in a database" %}} -#### Example: query `“SHOW TABLES”` on the `servers` database: - -```console -$ influxdb3 query --database servers "SHOW TABLES" -+---------------+--------------------+--------------+------------+ -| table_catalog | table_schema | table_name | table_type | -+---------------+--------------------+--------------+------------+ -| public | iox | cpu | BASE TABLE | -| public | information_schema | tables | VIEW | -| public | information_schema | views | VIEW | -| public | information_schema | columns | VIEW | -| public | information_schema | df_settings | VIEW | -| public | information_schema | schemata | VIEW | -+---------------+--------------------+--------------+------------+ +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SHOW TABLES ``` - -#### Example: query the `cpu` table, limiting to 10 rows: - -```console -$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10" -+---------------+---------------------+ -| usage_percent | time | -+---------------+---------------------+ -| 63.4 | 2024-02-21T19:25:00 | -| 25.3 | 2024-02-21T19:06:40 | -| 26.5 | 2024-02-21T19:31:40 | -| 70.1 | 2024-02-21T19:03:20 | -| 83.7 | 2024-02-21T19:30:00 | -| 55.2 | 2024-02-21T19:00:00 | -| 80.5 | 2024-02-21T19:05:00 | -| 60.2 | 2024-02-21T19:33:20 | -| 20.5 | 2024-02-21T18:58:20 | -| 85.2 | 2024-02-21T19:28:20 | -+---------------+---------------------+ +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SHOW MEASUREMENTS ``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} -### Query using the CLI for InfluxQL +{{% /expand %}} +{{% expand "Return the average temperature of all rooms" %}} -[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations. - -To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example: - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} -```bash -influxdb3 query \ - --database DATABASE_NAME \ - --token \ - --language influxql \ - "SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d" +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT avg(temp) AS avg_temp FROM home ``` -{{% /code-placeholders %}} +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT MEAN(temp) AS avg_temp FROM home +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} -Replace the following placeholders with your values: +{{% /expand %}} +{{% expand "Return the average temperature of the kitchen" %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT avg(temp) AS avg_temp FROM home WHERE room = 'Kitchen' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT MEAN(temp) AS avg_temp FROM home WHERE room = 'Kitchen' +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Query data from an absolute time range" %}} + +{{% influxdb/custom-timestamps %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= '2022-01-01T12:00:00Z' + AND time <= '2022-01-01T18:00:00Z' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= '2022-01-01T12:00:00Z' + AND time <= '2022-01-01T18:00:00Z' +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /influxdb/custom-timestamps %}} + +{{% /expand %}} +{{% expand "Query data from a relative time range" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= now() - INTERVAL '7 days' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= now() - 7d +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Calculate average humidity in 3-hour windows per room" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + date_bin(INTERVAL '3 hours', time) AS time, + room, + avg(hum) AS avg_hum +FROM + home +GROUP BY + 1, + room +ORDER BY + room, + 1 +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + MEAN(hum) AS avg_hum +FROM + home +WHERE + time >= '2022-01-01T08:00:00Z' + AND time <= '2022-01-01T20:00:00Z' +GROUP BY + time(3h), + room +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{< /expand-wrapper >}} + + +## SQL vs InfluxQL + +## LVC, DVC ### Query using the API From 4d22388bd94b83ecdc634a6882c62784cf8fb156 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 17 Jun 2025 17:12:42 -0600 Subject: [PATCH 07/80] WIP monolith get started, enterprise multi-node, file index docs --- .../core/get-started/processing-engine.md | 24 + content/influxdb3/core/get-started/query.md | 24 + content/influxdb3/core/get-started/setup.md | 2 +- content/influxdb3/core/get-started/write.md | 3 +- .../cli/influxdb3/create/file_index.md | 16 - .../cli/influxdb3/delete/file_index.md | 16 - .../enterprise/admin/file-index/_index.md | 51 ++ .../enterprise/admin/file-index/create.md | 62 +++ .../enterprise/admin/file-index/delete.md | 58 +++ .../enterprise/get-started/multi-server.md | 293 ----------- .../get-started/processing-engine.md | 24 + .../influxdb3/enterprise/get-started/query.md | 4 +- .../influxdb3/enterprise/get-started/setup.md | 2 +- .../influxdb3/enterprise/get-started/write.md | 3 +- .../{install.md => install/_index.md} | 3 + .../enterprise/install/multi-server.md | 481 ++++++++++++++++++ .../enterprise/reference/config-options.md | 2 + content/shared/influxdb3-cli/create/_index.md | 14 + content/shared/influxdb3-cli/delete/_index.md | 32 +- .../shared/influxdb3-get-started/_index.md | 46 -- .../processing-engine.md | 136 +++-- content/shared/influxdb3-get-started/query.md | 273 ++++------ content/shared/influxdb3-get-started/setup.md | 5 +- content/shared/influxdb3-get-started/write.md | 38 +- 24 files changed, 1003 insertions(+), 609 deletions(-) create mode 100644 content/influxdb3/core/get-started/processing-engine.md create mode 100644 content/influxdb3/core/get-started/query.md delete mode 100644 content/influxdb3/core/reference/cli/influxdb3/create/file_index.md delete mode 100644 content/influxdb3/core/reference/cli/influxdb3/delete/file_index.md create mode 100644 content/influxdb3/enterprise/admin/file-index/_index.md create mode 100644 content/influxdb3/enterprise/admin/file-index/create.md create mode 100644 content/influxdb3/enterprise/admin/file-index/delete.md delete mode 100644 content/influxdb3/enterprise/get-started/multi-server.md create mode 100644 content/influxdb3/enterprise/get-started/processing-engine.md rename content/influxdb3/enterprise/{install.md => install/_index.md} (98%) create mode 100644 content/influxdb3/enterprise/install/multi-server.md diff --git a/content/influxdb3/core/get-started/processing-engine.md b/content/influxdb3/core/get-started/processing-engine.md new file mode 100644 index 000000000..0d98ad8b0 --- /dev/null +++ b/content/influxdb3/core/get-started/processing-engine.md @@ -0,0 +1,24 @@ +--- +title: Process data in {{% product-name %}} +seotitle: Process data | Get started with {{% product-name %}} +description: > + Learn how to use the {{% product-name %}} Processing Engine to process data and + perform various tasks like downsampling, alerting, forecasting, data + normalization, and more. +menu: + influxdb3_core: + name: Process data + identifier: gs-process-data + parent: Get started +weight: 104 +related: + - /influxdb3/core/plugins/ + - /influxdb3/core/reference/cli/influxdb3/create/plugin/ + - /influxdb3/core/reference/cli/influxdb3/create/trigger/ +source: /shared/influxdb3-get-started/processing-engine.md +--- + + diff --git a/content/influxdb3/core/get-started/query.md b/content/influxdb3/core/get-started/query.md new file mode 100644 index 000000000..87c56ad48 --- /dev/null +++ b/content/influxdb3/core/get-started/query.md @@ -0,0 +1,24 @@ +--- +title: Query data in {{% product-name %}} +seotitle: Query data | Get started with {{% product-name %}} +description: > + Learn how to get started querying data in {{% product-name %}} using native + SQL or InfluxQL with the `influxdb3` CLI and other tools. +menu: + influxdb3_core: + name: Query data + identifier: gs-query-data + parent: Get started +weight: 103 +related: + - /influxdb3/core/query-data/ + - /influxdb3/core/reference/sql/ + - https://datafusion.apache.org/user-guide/sql/index.html, Apache DataFusion SQL reference + - /influxdb3/core/reference/influxql/ +source: /shared/influxdb3-get-started/query.md +--- + + diff --git a/content/influxdb3/core/get-started/setup.md b/content/influxdb3/core/get-started/setup.md index 9bab49581..6b4b1a395 100644 --- a/content/influxdb3/core/get-started/setup.md +++ b/content/influxdb3/core/get-started/setup.md @@ -2,7 +2,7 @@ title: Set up {{% product-name %}} seotitle: Set up InfluxDB | Get started with {{% product-name %}} description: > - .... + Install, configure, and set up authorization for {{% product-name %}}. menu: influxdb3_core: name: Set up Core diff --git a/content/influxdb3/core/get-started/write.md b/content/influxdb3/core/get-started/write.md index b848ca7a2..5133b17fe 100644 --- a/content/influxdb3/core/get-started/write.md +++ b/content/influxdb3/core/get-started/write.md @@ -2,7 +2,8 @@ title: Write data to {{% product-name %}} seotitle: Write data | Get started with {{% product-name %}} description: > - .... + Learn how to write time series data to {{% product-name %}} using the + `influxdb3` CLI and _line protocol_, an efficient, human-readable write syntax. menu: influxdb3_core: name: Write data diff --git a/content/influxdb3/core/reference/cli/influxdb3/create/file_index.md b/content/influxdb3/core/reference/cli/influxdb3/create/file_index.md deleted file mode 100644 index a24aaebbc..000000000 --- a/content/influxdb3/core/reference/cli/influxdb3/create/file_index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: influxdb3 create file_index -description: > - The `influxdb3 create file_index` command creates a new file index for a - database or table. -menu: - influxdb3_core: - parent: influxdb3 create - name: influxdb3 create file_index -weight: 400 -source: /shared/influxdb3-cli/create/file_index.md ---- - - diff --git a/content/influxdb3/core/reference/cli/influxdb3/delete/file_index.md b/content/influxdb3/core/reference/cli/influxdb3/delete/file_index.md deleted file mode 100644 index c60fb90f1..000000000 --- a/content/influxdb3/core/reference/cli/influxdb3/delete/file_index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: influxdb3 delete file_index -description: > - The `influxdb3 delete file_index` command deletes a file index for a - database or table. -menu: - influxdb3_core: - parent: influxdb3 delete - name: influxdb3 delete file_index -weight: 400 -source: /shared/influxdb3-cli/delete/file_index.md ---- - - diff --git a/content/influxdb3/enterprise/admin/file-index/_index.md b/content/influxdb3/enterprise/admin/file-index/_index.md new file mode 100644 index 000000000..65c94c642 --- /dev/null +++ b/content/influxdb3/enterprise/admin/file-index/_index.md @@ -0,0 +1,51 @@ +--- +title: Manage file indexes +seotitle: Manage file indexes in {{< product-name >}} +description: > + Customize the indexing strategy of a database or table in {{% product-name %}} + to optimize the performance of single-series queries. +menu: + influxdb3_enterprise: + parent: Administer InfluxDB +weight: 106 +influxdb3/enterprise/tags: [indexing] +--- + +{{% product-name %}} lets you customize how your data is indexed to help +optimize query performance for your specific workload, especially workloads that +include single-series queries. Indexes help the InfluxDB query engine quickly +identify the physical location of files that contain the queried data. + +By default, InfluxDB indexes on the primary key—`time` and tag columns. However, +if your schema includes tags that you don't specifically use when querying, you +can define a custom indexing strategy to only index on `time` and columns +important to your query workload. + +For example, if your schema includes the following columns: + +- country +- state_province +- county +- city +- postal_code + +And in your query workload, you only query based on country, state or province, +and city, you can create a custom file indexing strategy that only indexes on +`time` and these specific columns. This makes your index more efficient and +improves the performance of your single-series queries. + +> [!Note] +> File indexes can use any string column, including both tags and fields. + +- [Indexing life cycle](#indexing-life-cycle) +- [Create a custom file index](#create-a-custom-file-index) +- [Delete a custom file index](#delete-a-custom-file-index) + +## Indexing life cycle + +{{% product-name %}} builds indexes as it compacts data. Compaction is the +process that organizes and optimizes Parquet files in storage and occurs in +multiple phases or generations. Generation 1 (gen1) data is un-compacted and +is not indexed. Generation 2 (gen2) data and beyond is all indexed. + +{{< children hlevel="h2" >}} diff --git a/content/influxdb3/enterprise/admin/file-index/create.md b/content/influxdb3/enterprise/admin/file-index/create.md new file mode 100644 index 000000000..ea6891f2b --- /dev/null +++ b/content/influxdb3/enterprise/admin/file-index/create.md @@ -0,0 +1,62 @@ +--- +title: Create a custom file index +seotitle: Create a custom file index in {{< product-name >}} +description: > + Use the [`influxdb3 create file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/create/file_index/) + to create a custom file indexing strategy for a database or a table. +menu: + influxdb3_enterprise: + parent: Manage file indexes +weight: 106 +influxdb3/enterprise/tags: [indexing] +related: + - /influxdb3/enterprise/reference/cli/influxdb3/create/file_index/ +list_code_example: | + + ```bash + influxdb3 create file_index \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + --table wind_data \ + country,city + ``` +--- + +Use the [`influxdb3 create file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/create/file_index/) +to create a custom file indexing strategy for a database or table. + +Provide the following: + +- **Token** (`--token`): _({{< req >}})_ Your {{% token-link "admin" %}}. + You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify + the token. +- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database to + apply the index to. You can also use the `INFLUXDB3_DATABASE_NAME` + environment variable to specify the database. +- **Table** (`-t`, `--table`): The name of the table to apply the index to. + If no table is specified, the indexing strategy applies to all tables in the + specified database. +- **Columns**: _({{< req >}})_ A comma-separated list of string columns to + index on. These are typically tag columns but can also be string fields. + +{{% code-placeholders "AUTH_TOKEN|DATABASE|TABLE|COLUMNS" %}} + +```bash +influxdb3 create file_index \ + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + --table TABLE_NAME \ + COLUMNS +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + the name of the database to create the file index in +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: + the name of the table to create the file index in +- {{% code-placeholder-key %}}`COLUMNS`{{% /code-placeholder-key %}}: + a comma-separated list of columns to index on--for example: `host,application` diff --git a/content/influxdb3/enterprise/admin/file-index/delete.md b/content/influxdb3/enterprise/admin/file-index/delete.md new file mode 100644 index 000000000..98bfe4bfa --- /dev/null +++ b/content/influxdb3/enterprise/admin/file-index/delete.md @@ -0,0 +1,58 @@ +--- +title: Delete a custom file index +seotitle: Delete a custom file index in {{< product-name >}} +description: > + Use the [`influxdb3 delete file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/delete/file_index/) + to delete a custom file indexing strategy from a database or a table and revert + to the default indexing strategy. +menu: + influxdb3_enterprise: + parent: Manage file indexes +weight: 106 +influxdb3/enterprise/tags: [indexing] +related: + - /influxdb3/enterprise/reference/cli/influxdb3/delete/file_index/ +list_code_example: | + + ```bash + influxdb3 delete file_index \ + --database example-db \ + --token 00xoXX0xXXx0000XxxxXx0Xx0xx0 \ + --table wind_data + ``` +--- + +Use the [`influxdb3 delete file_index` command](/influxdb3/enterprise/reference/cli/influxdb3/delete/file_index/) +to delete a custom file indexing strategy from a database or a table and revert +to the default indexing strategy. + +Provide the following: + +- **Token** (`--token`): _({{< req >}})_ Your {{% token-link "admin" %}}. + You can also use the `INFLUXDB3_AUTH_TOKEN` environment variable to specify + the token. +- **Database** (`-d`, `--database`): _({{< req >}})_ The name of the database to + apply remove the custom index from. You can also use the `INFLUXDB3_DATABASE_NAME` + environment variable to specify the database. +- **Table** (`-t`, `--table`): The name of the table to remove the custom index from. + If no table is specified, the custom indexing strategy is removed from all + tables in the specified database. + +{{% code-placeholders "AUTH_TOKEN|DATABASE|TABLE|COLUMNS" %}} + +```bash +influxdb3 delete file_index \ + --host http://localhost:8585 \ + --database DATABASE_NAME \ + --table TABLE_NAME \ +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + your {{% token-link "admin" %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + the name of the database to remove the custom file index from +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: + the name of the table to remove the custom file index from diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md deleted file mode 100644 index d67790431..000000000 --- a/content/influxdb3/enterprise/get-started/multi-server.md +++ /dev/null @@ -1,293 +0,0 @@ ---- -title: Use a multi-server setup -seotitle: Use a multi-server InfluxDB 3 Enterprise setup -menu: - influxdb3_enterprise: - name: Multi-server - parent: Get started -weight: 4 -influxdb3/enterprise/tags: [cluster, multi-node, multi-server] -draft: true ---- - -### Multi-server setup - -{{% product-name %}} is built to support multi-node setups for high availability, read replicas, and flexible implementations depending on use case. - -### High availability - -Enterprise is architecturally flexible, giving you options on how to configure multiple servers that work together for high availability (HA) and high performance. -Built on top of the diskless engine and leveraging the Object store, an HA setup ensures that if a node fails, you can still continue reading from, and writing to, a secondary node. - -A two-node setup is the minimum for basic high availability, with both nodes having read-write permissions. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} - -In a basic HA setup: - -- Two nodes both write data to the same Object store and both handle queries -- Node 1 and Node 2 are _read replicas_ that read from each other’s Object store directories -- One of the nodes is designated as the Compactor node - -> [!Note] -> Only one node can be designated as the Compactor. -> Compacted data is meant for a single writer, and many readers. - -The following examples show how to configure and start two nodes -for a basic HA setup. - -- _Node 1_ is for compaction (passes `compact` in `--mode`) -- _Node 2_ is for ingest and query - -```bash -## NODE 1 - -# Example variables -# node-id: 'host01' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query,compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key -``` - -```bash -## NODE 2 - -# Example variables -# node-id: 'host02' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` - -After the nodes have started, querying either node returns data for both nodes, and _NODE 1_ runs compaction. -To add nodes to this setup, start more read replicas with the same cluster ID. - -### High availability with a dedicated Compactor - -Data compaction in InfluxDB 3 is one of the more computationally expensive operations. -To ensure that your read-write nodes don't slow down due to compaction work, set up a compactor-only node for consistent and high performance across all nodes. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} - -The following examples show how to set up high availability with a dedicated Compactor node: - -1. Start two read-write nodes as read replicas, similar to the previous example. - - ```bash - ## NODE 1 — Writer/Reader Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - ```bash - ## NODE 2 — Writer/Reader Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -### High availability with read replicas and a dedicated Compactor - -For a robust and effective setup for managing time-series data, you can run ingest nodes alongside read-only nodes and a dedicated Compactor node. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} - -1. Start ingest nodes by assigning them the **`ingest`** mode. - To achieve the benefits of workload isolation, you'll send _only write requests_ to these ingest nodes. Later, you'll configure the _read-only_ nodes. - - ```bash - ## NODE 1 — Writer Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - - - ```bash - ## NODE 2 — Writer Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated Compactor node with ` compact`. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - - ``` - -3. Finally, start the query nodes as _read-only_ with `--mode query`. - - ```bash - ## NODE 4 — Read Node #1 - - # Example variables - # node-id: 'host04' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host04 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8383 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - ```bash - ## NODE 5 — Read Node #2 - - # Example variables - # node-id: 'host05' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host05 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8484 \ - --aws-access-key-id \ - - ``` - -Congratulations, you have a robust setup for workload isolation using {{% product-name %}}. - -### Writing and querying for multi-node setups - -You can use the default port `8181` for any write or query, without changing any of the commands. - -> [!Note] -> #### Specify hosts for writes and queries -> -> To benefit from this multi-node, isolated architecture, specify hosts: -> -> - In write requests, specify a host that you have designated as _write-only_. -> - In query requests, specify a host that you have designated as _read-only_. -> -> When running multiple local instances for testing or separate nodes in production, specifying the host ensures writes and queries are routed to the correct instance. - -{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} -```bash -# Example querying a specific host -# HTTP-bound Port: 8585 -influxdb3 query \ - --host http://localhost:8585 - --token AUTH_TOKEN \ - --database DATABASE_NAME "QUERY" -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database \ No newline at end of file diff --git a/content/influxdb3/enterprise/get-started/processing-engine.md b/content/influxdb3/enterprise/get-started/processing-engine.md new file mode 100644 index 000000000..30a2738a4 --- /dev/null +++ b/content/influxdb3/enterprise/get-started/processing-engine.md @@ -0,0 +1,24 @@ +--- +title: Process data in {{% product-name %}} +seotitle: Process data | Get started with {{% product-name %}} +description: > + Learn how to use the {{% product-name %}} Processing Engine to process data and + perform various tasks like downsampling, alerting, forecasting, data + normalization, and more. +menu: + influxdb3_enterprise: + name: Process data + identifier: gs-process-data + parent: Get started +weight: 104 +related: + - /influxdb3/enterprise/plugins/ + - /influxdb3/enterprise/reference/cli/influxdb3/create/plugin/ + - /influxdb3/enterprise/reference/cli/influxdb3/create/trigger/ +source: /shared/influxdb3-get-started/processing-engine.md +--- + + diff --git a/content/influxdb3/enterprise/get-started/query.md b/content/influxdb3/enterprise/get-started/query.md index 6c52e9fe6..52205c4c2 100644 --- a/content/influxdb3/enterprise/get-started/query.md +++ b/content/influxdb3/enterprise/get-started/query.md @@ -2,7 +2,8 @@ title: Query data in {{% product-name %}} seotitle: Query data | Get started with {{% product-name %}} description: > - .... + Learn how to get started querying data in {{% product-name %}} using native + SQL or InfluxQL with the `influxdb3` CLI and other tools. menu: influxdb3_enterprise: name: Query data @@ -12,6 +13,7 @@ weight: 103 related: - /influxdb3/enterprise/query-data/ - /influxdb3/enterprise/reference/sql/ + - https://datafusion.apache.org/user-guide/sql/index.html, Apache DataFusion SQL reference - /influxdb3/enterprise/reference/influxql/ source: /shared/influxdb3-get-started/query.md --- diff --git a/content/influxdb3/enterprise/get-started/setup.md b/content/influxdb3/enterprise/get-started/setup.md index 47e5a0905..489b29a5c 100644 --- a/content/influxdb3/enterprise/get-started/setup.md +++ b/content/influxdb3/enterprise/get-started/setup.md @@ -2,7 +2,7 @@ title: Set up {{% product-name %}} seotitle: Set up InfluxDB | Get started with {{% product-name %}} description: > - .... + Install, configure, and set up authorization for {{% product-name %}}. menu: influxdb3_enterprise: name: Set up Enterprise diff --git a/content/influxdb3/enterprise/get-started/write.md b/content/influxdb3/enterprise/get-started/write.md index dc6828904..1e67a0d0e 100644 --- a/content/influxdb3/enterprise/get-started/write.md +++ b/content/influxdb3/enterprise/get-started/write.md @@ -2,7 +2,8 @@ title: Write data to {{% product-name %}} seotitle: Write data | Get started with {{% product-name %}} description: > - .... + Learn how to write time series data to {{% product-name %}} using the + `influxdb3` CLI and _line protocol_, an efficient, human-readable write syntax. menu: influxdb3_enterprise: name: Write data diff --git a/content/influxdb3/enterprise/install.md b/content/influxdb3/enterprise/install/_index.md similarity index 98% rename from content/influxdb3/enterprise/install.md rename to content/influxdb3/enterprise/install/_index.md index 3893d08d1..0f5f25f09 100644 --- a/content/influxdb3/enterprise/install.md +++ b/content/influxdb3/enterprise/install/_index.md @@ -14,6 +14,7 @@ alt_links: - [Quick install](#quick-install) - [Download {{% product-name %}} binaries](#download-influxdb-3-{{< product-key >}}-binaries) - [Docker image](#docker-image) +- [Create a multi-node cluster](#create-a-multi-node-cluster) ## System Requirements @@ -208,4 +209,6 @@ influxdb:3-{{< product-key >}} > > Currently, a bug prevents using {{< keybind all="Ctrl+c" >}} in the terminal to stop an InfluxDB 3 container. +{{< children hlevel="h2" >}} + {{< page-nav next="/influxdb3/enterprise/get-started/" nextText="Get started with InfluxDB 3 Enterprise" >}} diff --git a/content/influxdb3/enterprise/install/multi-server.md b/content/influxdb3/enterprise/install/multi-server.md new file mode 100644 index 000000000..3163ad468 --- /dev/null +++ b/content/influxdb3/enterprise/install/multi-server.md @@ -0,0 +1,481 @@ +--- +title: Create a multi-node cluster +seotitle: Create a multi-node InfluxDB 3 Enterprise cluster +description: > + Create a multi-node InfluxDB 3 Enterprise cluster for high availability, + performance, read replicas, and more to meet the specific needs of your use case. +menu: + influxdb3_enterprise: + name: Create a multi-node cluster + parent: Install InfluxDB 3 Enterprise +weight: 101 +influxdb3/enterprise/tags: [cluster, multi-node, multi-server] +--- + +{{% product-name %}} supports flexible, multi-node configurations for high +availability, performance, read replicas, and more to meet the specific needs +of your use case. +The {{% product-name %}} server can run in different _modes_ fulfil specific roles +in your multi-node cluster. +With the diskless architecture, all nodes in the cluster share the same common +object store. + +- [Create an object store](#create-an-object-store) +- [Connect to your object store](#connect-to-your-object-store) +- [Server modes](#server-modes) + - [Server mode examples](#server-mode-examples) + - [Configure a node to only handle write requests](#configure-a-node-to-only-handle-write-requests) + - [Configure a node to only run the Compactor](#configure-a-node-to-only-run-the-compactor) + - [Configure a handle query requests and run the processing engine](#configure-a-handle-query-requests-and-run-the-processing-engine) +- [InfluxDB 3 Enterprise cluster configuration examples](#influxdb-3-enterprise-cluster-configuration-examples) + - [High availability cluster](#high-availability-cluster) + - [High availability with a dedicated Compactor](#high-availability-with-a-dedicated-compactor) + - [High availability with read replicas and a dedicated Compactor](#high-availability-with-read-replicas-and-a-dedicated-compactor) +- [Writing and querying in multi-node clusters](#writing-and-querying-in-multi-node-clusters) + +## Create an object store + +To run a mulit-node {{% product-name %}} cluster, nodes must connect to a +common object store. Enterprise supports the following object stores: + +- AWS S3 (or S3-compatible) +- Azure Blob Storage +- Google Cloud Storage + +> [!Note] +> Refer to your object storage provider's documentation for information about +> setting up an object store. + +## Connect to your object store + +Depending on your object storage provider, connect nodes in your cluster to the +object store by including provider-specific options when starting each node. + +{{< tabs-wrapper >}} +{{% tabs %}} +[S3 or S3-compatible](#) +[Azure Blob Storage](#) +[Google Cloud Storage](#) +{{% /tabs %}} +{{% tab-content %}} + + +To use an AWS S3 or S3-compatible object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `s3` +- `--bucket`: Your AWS S3 bucket name +- `--aws-access-key-id`: Your AWS access key ID + _(can also be defined using the `AWS_ACCESS_KEY_ID` environment variable)_ +- `--aws-secret-access-key`: Your AWS secret access key + _(can also be defined using the `AWS_SECRET_ACCESS_KEY` environment variable)_ + +{{% code-placeholders "AWS_(BUCKET_NAME|ACCESS_KEY_ID|SECRET_ACCESS_KEY)" %}} + +```bash +influxdb3 server \ + # ... + --object-store s3 \ + --bucket AWS_BUCKET_NAME \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` +{{% /code-placeholders %}} + +_For information about other S3-specific settings, see +[Configuration options - AWS](/influxdb3/enterprise/reference/config-options/#aws)._ + + +{{% /tab-content %}} +{{% tab-content %}} + + +To use Azure Blob Storage as your object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `azure` +- `--bucket`: Your Azure Blob Storage container name +- `--azure-storage-account`: Your Azure Blob Storage storage account name + _(can also be defined using the `AZURE_STORAGE_ACCOUNT` environment variable)_ +- `--aws-secret-access-key`: Your Azure Blob Storage access key + _(can also be defined using the `AZURE_STORAGE_ACCESS_KEY` environment variable)_ + +{{% code-placeholders "AZURE_(CONTAINER_NAME|STORAGE_ACCOUNT|STORAGE_ACCESS_KEY)" %}} + +```bash +influxdb3 server \ + # ... + --object-store azure \ + --bucket AZURE_CONTAINER_NAME \ + --azure-storage-account AZURE_STORAGE_ACCOUNT \ + --azure-storage-access-key AZURE_STORAGE_ACCESS_KEY +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{% tab-content %}} + + +To use Google Cloud Storage as your object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `google` +- `--bucket`: Your Google Cloud Storage bucket name +- `--google-service-account`: The path to to your Google credentials JSON file + _(can also be defined using the `GOOGLE_SERVICE_ACCOUNT` environment variable)_ + +{{% code-placeholders "GOOGLE_(BUCKET_NAME|SERVICE_ACCOUNT)" %}} + +```bash +influxdb3 server \ + # ... + --object-store google \ + --bucket GOOGLE_BUCKET_NAME \ + --google-service-account GOOGLE_SERVICE_ACCOUNT +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +## Server modes + +{{% product-name %}} _modes_ determine what subprocesses the Enterprise node runs. +These subprocesses fulfill required tasks including data ingestion, query +processing, compaction, and running the processing engine. + +The `influxdb3 serve --mode` option defines what subprocesses a node runs. +Each node can run in one _or more_ of the following modes: + +- **all** _(default)_: Runs all necessary subprocesses. +- **ingest**: Runs the data ingestion subprocess to handle writes. +- **query**: Runs the query processing subprocess to handle queries. +- **process**: Runs the processing engine subprocess to trigger and execute plugins. +- **compact**: Runs the compactor subprocess to optimize data in object storage. + + > [!Important] + > Only _one_ node in your cluster can run in `compact` mode. + +### Server mode examples + +#### Configure a node to only handle write requests + +```bash +influxdb3 server \ + # ... + --mode ingest +``` + +#### Configure a node to only run the Compactor + +```bash +influxdb3 server \ + # ... + --mode compact +``` + +#### Configure a handle query requests and run the processing engine + +```bash +influxdb3 server \ + # ... + --mode query,process +``` + + +## {{% product-name %}} cluster configuration examples + + + +### High availability cluster + +A minimum of two nodes are required for basic high availability (HA), with both +nodes reading and writing data. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} + +In a basic HA setup: + +- Two nodes both write data to the same object store and both handle queries +- Node 1 and Node 2 are _read replicas_ that read from each other’s object store directories +- One of the nodes is designated as the Compactor node + +> [!Note] +> Only one node can be designated as the Compactor. +> Compacted data is meant for a single writer, and many readers. + +The following examples show how to configure and start two nodes for a basic HA +setup. + +- _Node 1_ is for compaction +- _Node 2_ is for ingest and query + + +```bash +## NODE 1 + +# Example variables +# node-id: 'host01' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query,compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key +``` + + +```bash +## NODE 2 + +# Example variables +# node-id: 'host02' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + +After the nodes have started, querying either node returns data for both nodes, +and _NODE 1_ runs compaction. +To add nodes to this setup, start more read replicas with the same cluster ID. + +### High availability with a dedicated Compactor + +Data compaction in {{% product-name %}} is one of the more computationally +demanding operations. +To ensure stable performance in ingest and query nodes, set up a +compactor-only node to isolate the compaction workload. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} + +The following examples sets up high availability with a dedicated Compactor node: + +1. Start two read-write nodes as read replicas, similar to the previous example. + + + ```bash + ## NODE 1 — Writer/Reader Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + + ```bash + ## NODE 2 — Writer/Reader Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +### High availability with read replicas and a dedicated Compactor + +For a robust and effective setup for managing time-series data, you can run +ingest nodes alongside query nodes and a dedicated Compactor node. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} + +1. Start ingest nodes with the **`ingest`** mode. + + > [!Note] + > Send all write requests to only your ingest nodes. + + ```bash + ## NODE 1 — Writer Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + + + ```bash + ## NODE 2 — Writer Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated Compactor node with the `compact` mode. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + + ``` + +3. Finally, start the query nodes using the `query` mode. + + > [!Note] + > Send all query requests to only your query nodes. + + ```bash + ## NODE 4 — Read Node #1 + + # Example variables + # node-id: 'host04' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host04 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8383 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + ```bash + ## NODE 5 — Read Node #2 + + # Example variables + # node-id: 'host05' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host05 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8484 \ + --aws-access-key-id \ + + ``` + +## Writing and querying in multi-node clusters + +You can use the default port `8181` for any write or query request without +changing any of the commands. + +> [!Note] +> #### Specify hosts for write and query requests +> +> To benefit from this multi-node, isolated architecture: +> +> - Send write requests to a node that you have designated as an ingester. +> - Send query requests to a node that you have designated as a querier. +> +> When running multiple local instances for testing or separate nodes in +> production, specifying the host ensures writes and queries are routed to the +> correct instance. + +{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} +```bash +# Example querying a specific host +# HTTP-bound Port: 8585 +influxdb3 query \ + --host http://localhost:8585 + --token AUTH_TOKEN \ + --database DATABASE_NAME \ + "QUERY" +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database diff --git a/content/influxdb3/enterprise/reference/config-options.md b/content/influxdb3/enterprise/reference/config-options.md index 473eb7a77..019ec349d 100644 --- a/content/influxdb3/enterprise/reference/config-options.md +++ b/content/influxdb3/enterprise/reference/config-options.md @@ -254,6 +254,8 @@ export DATABASE_NODE=node0 && influxdb3 serve \ --cluster-id cluster0 \ --object-store file \ --data-dir ~/.influxdb3/data +``` + --- #### object-store diff --git a/content/shared/influxdb3-cli/create/_index.md b/content/shared/influxdb3-cli/create/_index.md index 3c9fa9ae2..a01afe2a7 100644 --- a/content/shared/influxdb3-cli/create/_index.md +++ b/content/shared/influxdb3-cli/create/_index.md @@ -12,6 +12,7 @@ influxdb3 create ## Subcommands +{{% show-in "enterprise" %}} | Subcommand | Description | | :---------------------------------------------------------------------------------- | :---------------------------------------------- | | [database](/influxdb3/version/reference/cli/influxdb3/create/database/) | Create a new database | @@ -22,6 +23,19 @@ influxdb3 create | [token](/influxdb3/version/reference/cli/influxdb3/create/token/) | Create a new authentication token | | [trigger](/influxdb3/version/reference/cli/influxdb3/create/trigger/) | Create a new trigger for the processing engine | | help | Print command help or the help of a subcommand | +{{% /show-in %}} + +{{% show-in "core" %}} +| Subcommand | Description | +| :---------------------------------------------------------------------------------- | :---------------------------------------------- | +| [database](/influxdb3/version/reference/cli/influxdb3/create/database/) | Create a new database | +| [last_cache](/influxdb3/version/reference/cli/influxdb3/create/last_cache/) | Create a new last value cache | +| [distinct_cache](/influxdb3/version/reference/cli/influxdb3/create/distinct_cache/) | Create a new distinct value cache | +| [table](/influxdb3/version/reference/cli/influxdb3/create/table/) | Create a new table in a database | +| [token](/influxdb3/version/reference/cli/influxdb3/create/token/) | Create a new authentication token | +| [trigger](/influxdb3/version/reference/cli/influxdb3/create/trigger/) | Create a new trigger for the processing engine | +| help | Print command help or the help of a subcommand | +{{% /show-in %}} ## Options diff --git a/content/shared/influxdb3-cli/delete/_index.md b/content/shared/influxdb3-cli/delete/_index.md index 569b87904..3151b9fba 100644 --- a/content/shared/influxdb3-cli/delete/_index.md +++ b/content/shared/influxdb3-cli/delete/_index.md @@ -11,16 +11,30 @@ influxdb3 delete ## Subcommands -| Subcommand | Description | -| :----------------------------------------------------------------------------- | :--------------------------------------------- | -| [database](/influxdb3/version/reference/cli/influxdb3/delete/database/) | Delete a database | -| [file_index](/influxdb3/version/reference/cli/influxdb3/delete/file_index/) | Delete a file index for a database or table | -| [last_cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) | Delete a last value cache | +{{% show-in "enterprise" %}} +| Subcommand | Description | +| :---------------------------------------------------------------------------------- | :--------------------------------------------- | +| [database](/influxdb3/version/reference/cli/influxdb3/delete/database/) | Delete a database | +| [file_index](/influxdb3/version/reference/cli/influxdb3/delete/file_index/) | Delete a file index for a database or table | +| [last_cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) | Delete a last value cache | | [distinct_cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) | Delete a metadata cache | -| [plugin](/influxdb3/version/reference/cli/influxdb3/delete/plugin/) | Delete a processing engine plugin | -| [table](/influxdb3/version/reference/cli/influxdb3/delete/table/) | Delete a table from a database | -| [trigger](/influxdb3/version/reference/cli/influxdb3/delete/trigger/) | Delete a trigger for the processing engine | -| help | Print command help or the help of a subcommand | +| [plugin](/influxdb3/version/reference/cli/influxdb3/delete/plugin/) | Delete a processing engine plugin | +| [table](/influxdb3/version/reference/cli/influxdb3/delete/table/) | Delete a table from a database | +| [trigger](/influxdb3/version/reference/cli/influxdb3/delete/trigger/) | Delete a trigger for the processing engine | +| help | Print command help or the help of a subcommand | +{{% /show-in %}} + +{{% show-in "core" %}} +| Subcommand | Description | +| :---------------------------------------------------------------------------------- | :--------------------------------------------- | +| [database](/influxdb3/version/reference/cli/influxdb3/delete/database/) | Delete a database | +| [last_cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) | Delete a last value cache | +| [distinct_cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) | Delete a metadata cache | +| [plugin](/influxdb3/version/reference/cli/influxdb3/delete/plugin/) | Delete a processing engine plugin | +| [table](/influxdb3/version/reference/cli/influxdb3/delete/table/) | Delete a table from a database | +| [trigger](/influxdb3/version/reference/cli/influxdb3/delete/trigger/) | Delete a trigger for the processing engine | +| help | Print command help or the help of a subcommand | +{{% /show-in %}} ## Options diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index d92560423..f67073b54 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -72,49 +72,3 @@ This tutorial covers many of the recommended tools. {{< show-in "enterprise" >}} {{< page-nav next="/influxdb3/enterprise/get-started/setup/" nextText="Set up InfluxDB 3 Enterprise" >}} {{< /show-in >}} - - - diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 91d6f0a92..8a276ee02 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -1,31 +1,73 @@ -### Python plugins and the processing engine +The {{% product-name %}} processing engine is an embedded Python virtual machine +(VM) that runs code inside the database to process and transform data. +Create processing engine [plugins](#plugin) that run when [triggered](#trigger) +by specific events. -The InfluxDB 3 processing engine is an embedded Python VM for running code inside the database to process and transform data. +- [Processing engine terminology](#processing-engine-terminology) + - [Plugin](#plugin) + - [Trigger](#trigger) + - [Trigger types](#trigger-types) +- [Activate the processing engine](#activate-the-processing-engine) +- [Create a plugin](#create-a-plugin) +- [Test a plugin on the server](#test-a-plugin-on-the-server) +- [Create a trigger](#create-a-trigger) +- [Enable the trigger](#enable-the-trigger) -To activate the processing engine, pass the `--plugin-dir ` option when starting the {{% product-name %}} server. -`PLUGIN_DIR` is your filesystem location for storing [plugin](#plugin) files for the processing engine to run. +## Processing engine terminology -#### Plugin +### Plugin -A plugin is a Python function that has a signature compatible with a Processing engine [trigger](#trigger). +A plugin is a Python function that has a signature compatible with a processing +engine [trigger](#trigger). -#### Trigger +### Trigger -When you create a trigger, you specify a [plugin](#plugin), a database, optional arguments, -and a _trigger-spec_, which defines when the plugin is executed and what data it receives. +When you create a trigger, you specify a [plugin](#plugin), a database, optional +arguments, and a _trigger-spec_, which defines when the plugin is executed and +what data it receives. -##### Trigger types +#### Trigger types -InfluxDB 3 provides the following types of triggers, each with specific trigger-specs: +InfluxDB 3 provides the following types of triggers, each with specific +trigger-specs: -- **On WAL flush**: Sends a batch of written data (for a specific table or all tables) to a plugin (by default, every second). -- **On Schedule**: Executes a plugin on a user-configured schedule (using a crontab or a duration); useful for data collection and deadman monitoring. -- **On Request**: Binds a plugin to a custom HTTP API endpoint at `/api/v3/engine/`. - The plugin receives the HTTP request headers and content, and can then parse, process, and send the data into the database or to third-party services. +- **On WAL flush**: Sends a batch of written data (for a specific table or all + tables) to a plugin (by default, every second). +- **On Schedule**: Executes a plugin on a user-configured schedule (using a + crontab or a duration). This trigger type is useful for data collection and + deadman monitoring. +- **On Request**: Binds a plugin to a custom HTTP API endpoint at + `/api/v3/engine/`. + The plugin receives the HTTP request headers and content, and can parse, + process, and send the data into the database or to third-party services. -### Test, create, and trigger plugin code +## Activate the processing engine -##### Example: Python plugin for WAL rows +To activate the processing engine, include the `--plugin-dir ` option +when starting the {{% product-name %}} server. +`PLUGIN_DIR` is your file system location for storing [plugin](#plugin) files for +the processing engine to run. + +{{% code-placeholders "PLUGIN_DIR" %}} + +```bash +influxdb3 serve \ + # ... + --plugin-dir PLUGIN_DIR +``` +{{% /code-placeholders %}} + +Replace {{% code-placeholder-key %}}`PLUGIN_DIR`{{% /code-placeholder-key %}} +with the path to your plugin directory. This path can be absolute or relative +to the current working directory of the `influxdb3` server. + +## Create a plugin + +To create a plugin, write and store a Python file in your configured `PLUGIN_DIR`. +The following example is a WAL flush plugin that processes data before it gets +persisted to the object store. + +##### Example Python plugin for WAL rows ```python # This is the basic structure for Python plugin code that runs in the @@ -33,7 +75,7 @@ InfluxDB 3 provides the following types of triggers, each with specific trigger- # When creating a trigger, you can provide runtime arguments to your plugin, # allowing you to write generic code that uses variables such as monitoring -thresholds, environment variables, and host names. +# thresholds, environment variables, and host names. # # Use the following exact signature to define a function for the WAL flush # trigger. @@ -48,11 +90,11 @@ def process_writes(influxdb3_local, table_batches, args=None): # here we're using arguments provided at the time the trigger was set up # to feed into paramters that we'll put into a query - query_params = {"host": "foo"} + query_params = {"room": "Kitchen"} # here's an example of executing a parameterized query. Only SQL is supported. # It will query the database that the trigger is attached to by default. We'll # soon have support for querying other DBs. - query_result = influxdb3_local.query("SELECT * FROM cpu where host = '$host'", query_params) + query_result = influxdb3_local.query("SELECT * FROM home where room = '$host'", query_params) # the result is a list of Dict that have the column name as key and value as # value. If you run the WAL test plugin with your plugin against a DB that # you've written data into, you'll be able to see some results @@ -100,19 +142,20 @@ def process_writes(influxdb3_local, table_batches, args=None): influxdb3_local.info("done") ``` -##### Test a plugin on the server +## Test a plugin on the server -Test your InfluxDB 3 plugin safely without affecting written data. During a plugin test: +{{% product-name %}} lets you test your processing engine plugin safely without +affecting actual data. During a plugin test: - A query executed by the plugin queries against the server you send the request to. - Writes aren't sent to the server but are returned to you. -To test a plugin, do the following: +To test a plugin: -1. Create a _plugin directory_--for example, `/path/to/.influxdb/plugins` -2. [Start the InfluxDB server](#start-influxdb) and include the `--plugin-dir ` option. -3. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. -4. To run the test, enter the following command with the following options: +1. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a + plugin file inside of the plugin directory. If you haven't yet written data + to the table in the example, comment out the lines where it queries. +2. To run the test, enter the following command with the following options: - `--lp` or `--file`: The line protocol to test - Optional: `--input-arguments`: A comma-delimited list of `=` arguments for your plugin code @@ -120,15 +163,15 @@ To test a plugin, do the following: {{% code-placeholders "INPUT_LINE_PROTOCOL|INPUT_ARGS|DATABASE_NAME|AUTH_TOKEN|PLUGIN_FILENAME" %}} ```bash influxdb3 test wal_plugin \ ---lp INPUT_LINE_PROTOCOL \ ---input-arguments INPUT_ARGS \ ---database DATABASE_NAME \ ---token AUTH_TOKEN \ -PLUGIN_FILENAME + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + --lp INPUT_LINE_PROTOCOL \ + --input-arguments INPUT_ARGS \ + PLUGIN_FILENAME ``` {{% /code-placeholders %}} -Replace the following placeholders with your values: +Replace the following: - {{% code-placeholder-key %}}`INPUT_LINE_PROTOCOL`{{% /code-placeholder-key %}}: the line protocol to test - Optional: {{% code-placeholder-key %}}`INPUT_ARGS`{{% /code-placeholder-key %}}: a comma-delimited list of `=` arguments for your plugin code--for example, `arg1=hello,arg2=world` @@ -136,21 +179,16 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test -The command runs the plugin code with the test data, yields the data to the plugin code, and then responds with the plugin result. -You can quickly see how the plugin behaves, what data it would have written to the database, and any errors. +The command runs the plugin code with the test data, yields the data to the +plugin code, and then responds with the plugin result. +You can quickly see how the plugin behaves, what data it would have written to +the database, and any errors. You can then edit your Python code in the plugins directory, and rerun the test. The server reloads the file for every request to the `test` API. -For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. - -With the plugin code inside the server plugin directory, and a successful test, -you're ready to create a plugin and a trigger to run on the server. - ##### Example: Test, create, and run a plugin -The following example shows how to test a plugin, and then create the plugin and -trigger: - + ```bash # Test and create a plugin # Requires: @@ -165,6 +203,16 @@ influxdb3 test wal_plugin \ test.py ``` +For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) +or run `influxdb3 test wal_plugin -h`. + +## Create a trigger + +With the plugin code inside the server plugin directory, and a successful test, +you're ready to create a trigger to run the plugin. Use the +[`influxdb3 create trigger` command](/influxdb3/version/reference/cli/influxdb3/create/trigger/) +to create a trigger. + ```bash # Create a trigger that runs the plugin influxdb3 create trigger \ @@ -176,6 +224,8 @@ influxdb3 create trigger \ trigger1 ``` +## Enable the trigger + After you have created a plugin and trigger, enter the following command to enable the trigger and have it run the plugin as you write data: diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 98ae5ac2e..c10b6dbf1 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -13,7 +13,24 @@ the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.co > [!Note] > Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3. -The quickly to get started querying, use the + + +- [Query data with the influxdb3 CLI](#query-data-with-the-influxdb3-cli) + - [Example queries](#example-queries) +- [Other tools for executing queries](#other-tools-for-executing-queries) +- [SQL vs InfluxQL](#sql-vs-influxql) + - [SQL](#sql) + - [InfluxQL](#influxql) +- [Optimize queries](#optimize-queries) + - [Last values cache](#last-values-cache) + - [Distinct values cache](#distinct-values-cache) + {{% show-in "enterprise" %}}- [File indexes](#file-indexes){{% /show-in %}} + + + +## Query data with the influxdb3 CLI + +To get started querying data in {{% product-name %}}, use the [`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/) and provide the following: @@ -98,7 +115,7 @@ influxdb3 query \ {{% /code-placeholders %}} -## Example queries +### Example queries {{< expand-wrapper >}} {{% expand "List tables in a database" %}} @@ -269,12 +286,14 @@ GROUP BY {{% /expand %}} {{< /expand-wrapper >}} +## Other tools for executing queries -## SQL vs InfluxQL +Other tools are available for querying data in {{% product-name %}}, including +the following: -## LVC, DVC - -### Query using the API +{{< expand-wrapper >}} +{{% expand "Query using the API" %}} +#### Query using the API InfluxDB 3 supports Flight (gRPC) APIs and an HTTP API. To query your database using the HTTP API, send a request to the `/api/v3/query_sql` or `/api/v3/query_influxql` endpoints. @@ -318,7 +337,11 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -### Query using the Python client +{{% /expand %}} + +{{% expand "Query using the Python client" %}} + +#### Query using the Python client Use the InfluxDB 3 Python library to interact with the database and integrate with your application. We recommend installing the required packages in a Python virtual environment for your specific project. @@ -382,177 +405,99 @@ print(table.group_by('host').aggregate([])) print(table.group_by('cpu').aggregate([('time_system', 'mean')])) ``` -For more information about the Python client library, see the [`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) in GitHub. +For more information about the Python client library, see the +[`influxdb3-python` repository](https://github.com/InfluxCommunity/influxdb3-python) +in GitHub. -### Query using InfluxDB 3 Explorer (Beta) +{{% /expand %}} + +{{% expand "Query using InfluxDB 3 Explorer" %}} + +#### Query using InfluxDB 3 Explorer You can use the InfluxDB 3 Explorer web-based interface to query and visualize data, and administer your {{% product-name %}} instance. -For more information, see how to [install InfluxDB 3 Explorer (Beta)](/influxdb3/explorer/install/) using Docker -and get started querying your data. +For more information, see how to [install InfluxDB 3 Explorer](/influxdb3/explorer/install/) +using Docker and get started querying your data. + +{{% /expand %}} +{{< /expand-wrapper >}} + +## SQL vs InfluxQL + +{{% product-name %}} supports two query languages--SQL and InfluxQL. +While these two query languages are similar, there are important differences to +consider. + +### SQL + +The InfluxDB 3 SQL implementation provides a full-featured SQL query engine +powered by [Apache DataFusion](https://datafusion.apache.org/). InfluxDB extends +DataFusion with additional time series-specific functionality and supports the +complex SQL queries, including queries that use joins, unions, window functions, +and more. + +- [SQL query guides](/influxdb3/version/query-data/sql/) +- [SQL reference](/influxdb3/version/reference/sql/) +- [Apache DataFusion SQL reference](https://datafusion.apache.org/user-guide/sql/index.html) + +### InfluxQL + +InfluxQL is a SQL-like query language built for InfluxDB v1 and supported in +{{% product-name %}}. Its syntax and functionality is similar SQL, but specifically +designed for querying time series data. InfluxQL does not offer the full range +of query functionality that SQL does. + +If you are migrating from previous versions of InfluxDB, you can continue to use +InfluxQL and the established InfluxQL-related APIs you have been using. + +- [InfluxQL query guides](/influxdb3/version/query-data/influxql/) +- [InfluxQL reference](/influxdb3/version/reference/influxql/) +- [InfluxQL feature support](/influxdb3/version/reference/influxql/feature-support/) + +## Optimize queries + +{{% product-name %}} provides the following optimization options to improve +specific kinds of queries: + +- [Last values cache](#last-value-cache) +- [Distinct values cache](#distinct-value-cache) +{{% show-in "enterprise" %}}- [File indexes](#file-indexes){{% /show-in %}} ### Last values cache -{{% product-name %}} supports a **last-n values cache** which stores the last N values in a series or column hierarchy in memory. This gives the database the ability to answer these kinds of queries in under 10 milliseconds. +The {{% product-name %}} last values cache (LVC) stores the last N values in a +series or column hierarchy in memory. This gives the database the ability to +answer these kinds of queries in under 10 milliseconds. +For information about configuring and using the LVC, see: -You can use the `influxdb3` CLI to [create a last value cache](/influxdb3/version/reference/cli/influxdb3/create/last_cache/). - -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 create last_cache \ - --token AUTH_TOKEN - --database DATABASE_NAME \ - --table TABLE_NAME \ - CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the last values cache in -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache - -Consider the following `cpu` sample table: - -| host | application | time | usage\_percent | status | -| ----- | ----- | ----- | ----- | ----- | -| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | -| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | -| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | -| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | -| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | - -The following command creates a last value cache named `cpuCache`: - -```bash -influxdb3 create last_cache \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - --table cpu \ - --key-columns host,application \ - --value-columns usage_percent,status \ - --count 5 cpuCache -``` - -_You can create a last values cache per time series, but be mindful of high cardinality tables that could take excessive memory._ - -#### Query a last values cache - -To query data from the LVC, use the [`last_cache()`](/influxdb3/version/reference/sql/functions/cache/#last_cache) function in your query--for example: - -```bash -influxdb3 query \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - "SELECT * FROM last_cache('cpu', 'cpuCache') WHERE host = 'Bravo';" -``` - -> [!Note] -> #### Only works with SQL -> -> The last values cache only works with SQL, not InfluxQL; SQL is the default language. - -#### Delete a last values cache - -Use the `influxdb3` CLI to [delete a last values cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) - -{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 delete last_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --cache-name CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the last values cache from -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the last values cache from -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the last values cache to delete +- [Manage a last values cache](/influxdb3/version/admin/last-value-cache/) +- [Query the last values cache](/influxdb3/version/admin/last-value-cache/query/) ### Distinct values cache -Similar to the [last values cache](#last-values-cache), the database can cache in RAM the distinct values for a single column in a table or a hierarchy of columns. +The {{% product-name %}} distinct values cache (DVC) stores distinct values for +specified columns in a series or column hierarchy in memory. This is useful for fast metadata lookups, which can return in under 30 milliseconds. -Many of the options are similar to the last value cache. +For information about configuring and using the DVC, see: -You can use the `influxdb3` CLI to [create a distinct values cache](/influxdb3/version/reference/cli/influxdb3/create/distinct_cache/). +- [Manage a distinct values cache](/influxdb3/version/admin/distinct-value-cache/) +- [Query the distinct values cache](/influxdb3/version/admin/distinct-value-cache/query/) -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 create distinct_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --columns COLUMNS \ - CACHE_NAME -``` -{{% /code-placeholders %}} -Replace the following placeholders with your values: +{{% show-in "enterprise" %}} +### File indexes -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to create the last values cache in -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to create the distinct values cache in -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: Optionally, a name for the new cache +{{% product-name %}} lets you customize how your data is indexed to help +optimize query performance for your specific workload, especially workloads that +include single-series queries. Define custom indexing strategies for databases +or specific tables. For more information, see +[Manage file indexes](/influxdb3/enterprise/admin/file-index/). -Consider the following `cpu` sample table: +{{% /show-in %}} -| host | application | time | usage\_percent | status | -| ----- | ----- | ----- | ----- | ----- | -| Bravo | database | 2024-12-11T10:00:00 | 55.2 | OK | -| Charlie | cache | 2024-12-11T10:00:00 | 65.4 | OK | -| Bravo | database | 2024-12-11T10:01:00 | 70.1 | Warn | -| Bravo | database | 2024-12-11T10:01:00 | 80.5 | OK | -| Alpha | webserver | 2024-12-11T10:02:00 | 25.3 | Warn | - -The following command creates a distinct values cache named `cpuDistinctCache`: - -```bash -influxdb3 create distinct_cache \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - --table cpu \ - --columns host,application \ - cpuDistinctCache -``` - -#### Query a distinct values cache - -To query data from the distinct values cache, use the [`distinct_cache()`](/influxdb3/version/reference/sql/functions/cache/#distinct_cache) function in your query--for example: - -```bash -influxdb3 query \ - --token apiv3_0xxx0o0XxXxx00Xxxx000xXXxoo0== \ - --database servers \ - "SELECT * FROM distinct_cache('cpu', 'cpuDistinctCache')" -``` - -> [!Note] -> #### Only works with SQL -> -> The distinct cache only works with SQL, not InfluxQL; SQL is the default language. - -#### Delete a distinct values cache - -Use the `influxdb3` CLI to [delete a distinct values cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) - -{{% code-placeholders "DATABASE_NAME|TABLE_NAME|CACHE_NAME" %}} -```bash -influxdb3 delete distinct_cache \ - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - --table TABLE \ - --cache-name CACHE_NAME -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "admin" %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to delete the distinct values cache from -- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: the name of the table to delete the distinct values cache from -- {{% code-placeholder-key %}}`CACHE_NAME`{{% /code-placeholder-key %}}: the name of the distinct values cache to delete \ No newline at end of file +{{% page-nav + prev="/influxdb3/version/get-started/write/" + prevText="Write data" + next="/influxdb3/version/get-started/processing-engine/" + nextText="Processing engine" +%}} diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index c7dd406b7..8cede89a4 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -1,4 +1,5 @@ - + + - [Install {{% product-name %}}](#install-influxdb-3-{{% product-key %}}) - [Verify the installation](#verify-the-installation) - [Start InfluxDB](#start-influxdb) @@ -8,6 +9,8 @@ - [Create an operator token](#create-an-operator-token) - [Set your token for authorization](#set-your-token-for-authorization) + + ## Install {{% product-name %}} {{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index 49651996e..c1839b98b 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -17,7 +17,14 @@ Both new tags and fields can be added later as your schema changes. > For extended historical queries and optimized data organization, consider using [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/). {{% /show-in %}} - + + +- [Line protocol](#line-protocol) +- [Construct line protocol](#construct-line-protocol) +- [Write data using the CLI](#write-data-using-the-cli) +- [Other tools for writing data](#other-tools-for-writing-data) + + ## Line protocol @@ -210,21 +217,20 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases/) to write to. - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} -> [!Note] -> #### Other write methods -> -> There are many ways to write data to your {{% product-name %}} database, including: -> -> - [InfluxDB HTTP API](/influxdb3/version/write-data/http-api/): Recommended for -> batching and higher-volume write workloads. -> - [InfluxDB client libraries](/influxdb3/version/write-data/client-libraries/): -> Client libraries that integrate with your code to construct data as time -> series points and write the data as line protocol to your -> {{% product-name %}} database. -> - [Telegraf](/telegraf/v1/): A data collection agent with over 300 plugins for -> collecting, processing, and writing data. -> -> For more information, see [Write data to {{% product-name %}}](/influxdb3/version/write-data/). +## Other tools for writing data + +There are many ways to write data to your {{% product-name %}} database, including: + +- [InfluxDB HTTP API](/influxdb3/version/write-data/http-api/): Recommended for + batching and higher-volume write workloads. +- [InfluxDB client libraries](/influxdb3/version/write-data/client-libraries/): + Client libraries that integrate with your code to construct data as time + series points and write the data as line protocol to your + {{% product-name %}} database. +- [Telegraf](/telegraf/v1/): A data collection agent with over 300 plugins for + collecting, processing, and writing data. + +For more information, see [Write data to {{% product-name %}}](/influxdb3/version/write-data/). {{% page-nav prev="/influxdb3/version/get-started/setup/" From 7caa21164dd3dd3f8d376323e43b8c215e4fa450 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 17 Jun 2025 17:31:07 -0600 Subject: [PATCH 08/80] update getting started landing page --- .../shared/influxdb3-get-started/_index.md | 97 +++++++++---------- content/shared/influxdb3-get-started/setup.md | 6 ++ 2 files changed, 54 insertions(+), 49 deletions(-) diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index f67073b54..427f7b171 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -1,26 +1,8 @@ +This guide walks through the basic steps of getting started with {{% product-name %}}, +including the following: -### What's in this guide - -{{% show-in "enterprise" %}} -This guide covers Enterprise as well as InfluxDB 3 Core, including the following topics: -{{% /show-in %}} -{{% show-in "core" %}} -This guide covers InfluxDB 3 Core (the open source release), including the following topics: -{{% /show-in %}} - -- [Install and startup](#install-and-startup) -- [Authentication and authorization](#authentication-and-authorization) -- [Data Model](#data-model) -- [Tools to use](#tools-to-use) -- [Write data](#write-data) -- [Query data](#query-data) -- [Last values cache](#last-values-cache) -- [Distinct values cache](#distinct-values-cache) -- [Python plugins and the processing engine](#python-plugins-and-the-processing-engine) -{{% show-in "enterprise" %}} -- [Multi-server setups](#multi-server-setup) -{{% /show-in %}} +{{< children type="ordered-list" >}} > [!Tip] > #### Find support for {{% product-name %}} @@ -28,42 +10,59 @@ This guide covers InfluxDB 3 Core (the open source release), including the follo > The [InfluxDB Discord server](https://discord.gg/9zaNCW2PRT) is the best place to find support for {{% product-name %}}. > For other InfluxDB versions, see the [Support and feedback](#bug-reports-and-feedback) options. -### Data model +## Data model -The database server contains logical databases, which have tables, which have columns. Compared to previous versions of InfluxDB you can think of a database as a `bucket` in v2 or as a `db/retention_policy` in v1. A `table` is equivalent to a `measurement`, which has columns that can be of type `tag` (a string dictionary), `int64`, `float64`, `uint64`, `bool`, or `string` and finally every table has a `time` column that is a nanosecond precision timestamp. +The {{% product-name %}} server contains logical databases; databases contain +tables; and tables are comprised of columns. -In InfluxDB 3, every table has a primary key--the ordered set of tags and the time--for its data. -This is the sort order used for all Parquet files that get created. When you create a table, either through an explicit call or by writing data into a table for the first time, it sets the primary key to the tags in the order they arrived. This is immutable. Although InfluxDB is still a _schema-on-write_ database, the tag column definitions for a table are immutable. +Compared to previous versions of InfluxDB, you can think of a database as an +InfluxDB v2 `bucket` in v2 or an InfluxDB v1 `db/retention_policy`. +A `table` is equivalent to an InfluxDB v1 and v2 `measurement`. -Tags should hold unique identifying information like `sensor_id`, or `building_id` or `trace_id`. All other data should be kept in fields. You will be able to add fast last N value and distinct value lookups later for any column, whether it is a field or a tag. +Columns in a table represent time, tags, and fields. Columns can be one of the +following types: -### Tools to use +- String dictionary (tag) +- `int64` (field) +- `float64` (field) +- `uint64` (field) +- `bool` (field) +- `string` (field) +- `time` (time with nanosecond precision) + +In {{% product-name %}}, every table has a primary key--the ordered set of tags and the time--for its data. +The primary key uniquely identifies each and determines the sort order for all +Parquet files related to the table. When you create a table, either through an +explicit call or by writing data into a table for the first time, it sets the +primary key to the tags in the order they arrived. +Although InfluxDB is still a _schema-on-write_ database, the tag column +definitions for a table are immutable. + +Tags should hold unique identifying information like `sensor_id`, `building_id`, +or `trace_id`. All other data should be stored as fields. + +## Tools to use The following table compares tools that you can use to interact with {{% product-name %}}. This tutorial covers many of the recommended tools. -| Tool | Administration | Write | Query | -| :------------------------------------------------------------------------------------------------ | :----------------------: | :----------------------: | :----------------------: | -| **`influxdb3` CLI** {{< req text="\* " color="magenta" >}} | **{{< icon "check" >}}** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| **InfluxDB HTTP API** {{< req text="\* " color="magenta" >}} | **{{< icon "check" >}}** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| **InfluxDB 3 Explorer** {{< req text="\* " color="magenta" >}} | **{{< icon "check" >}}** | - | **{{< icon "check" >}}** | -| [InfluxDB 3 client libraries](/influxdb3/version/reference/client-libraries/v3/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| [InfluxDB v2 client libraries](/influxdb3/version/reference/client-libraries/v2/) | - | **{{< icon "check" >}}** | - | -| [InfluxDB v1 client libraries](/influxdb3/version/reference/client-libraries/v1/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| [InfluxDB 3 processing engine](#python-plugins-and-the-processing-engine){{< req text="\* " color="magenta" >}} | | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| [Telegraf](/telegraf/v1/) | - | **{{< icon "check" >}}** | - | -| [Chronograf](/chronograf/v1/) | - | - | - | -| `influx` CLI | - | - | - | -| `influxctl` CLI | - | - | - | -| InfluxDB v2.x user interface | - | - | - | -| **Third-party tools** | | | | -| Flight SQL clients | - | - | **{{< icon "check" >}}** | -| [Grafana](/influxdb3/version/visualize-data/grafana/) | - | - | **{{< icon "check" >}}** | - -{{< caption >}} -{{< req type="key" text="Covered in this guide" color="magenta" >}} -{{< /caption >}} - +| Tool | Administration | Write | Query | +| :-------------------------------------------------------------------------------- | :----------------------: | :----------------------: | :----------------------: | +| **[`influxdb3` CLI](/influxdb3/version/reference/cli/influxdb3/)** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| **[InfluxDB HTTP API](/influxdb3/version/reference/api/)** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| **[InfluxDB 3 Explorer](/influxdb3/explorer/)** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| [InfluxDB 3 client libraries](/influxdb3/version/reference/client-libraries/v3/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| [InfluxDB v2 client libraries](/influxdb3/version/reference/client-libraries/v2/) | - | **{{< icon "check" >}}** | - | +| [InfluxDB v1 client libraries](/influxdb3/version/reference/client-libraries/v1/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| [InfluxDB 3 processing engine](#python-plugins-and-the-processing-engine) | | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| [Telegraf](/telegraf/v1/) | - | **{{< icon "check" >}}** | - | +| [Chronograf](/chronograf/v1/) | - | - | - | +| `influx` CLI | - | - | - | +| `influxctl` CLI | - | - | - | +| InfluxDB v2.x user interface | - | - | - | +| **Third-party tools** | | | | +| Flight SQL clients | - | - | **{{< icon "check" >}}** | +| [Grafana](/influxdb3/version/visualize-data/grafana/) | - | - | **{{< icon "check" >}}** | {{< show-in "core" >}} {{< page-nav next="/influxdb3/core/get-started/setup/" nextText="Set up InfluxDB 3 Core" >}} diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 8cede89a4..cdfea5ac2 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -26,6 +26,12 @@ curl -O https://www.influxdata.com/d/install_influxdb3.sh \ For detailed installation instructions, including for Windows and Docker, see [Install {{% product-name %}}](/influxdb3/version/install/). +{{% show-in "enterprise" %}} +> [!Note] +> For information about setting up a multi-node {{% product-name %}} cluster, +> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). +{{% /show-in %}} + You can also download and install [{{% product-name %}} build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries) directly: {{< expand-wrapper >}} From b03af149e22b8a425e870646eca587e547ddce71 Mon Sep 17 00:00:00 2001 From: meelahme Date: Fri, 20 Jun 2025 11:08:15 -0700 Subject: [PATCH 09/80] docs(core, enterprise): add token auth + Docker examples --- content/shared/influxdb3-get-started/setup.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index cdfea5ac2..87f7aa760 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -457,6 +457,7 @@ In your command, replace {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code- {{% tabs %}} [Environment variable (recommended)](#) [Command option](#) +[Docker](#) {{% /tabs %}} {{% tab-content %}} @@ -479,6 +480,31 @@ influxdb3 show databases --token YOUR_AUTH_TOKEN ``` {{% /code-placeholders %}} +{{% /tab-content %}} +{{% tab-content %}} + +Run the CLI in a Docker container using the `INFLUXDB3_AUTH_TOKEN` environment variable: + +{{% code-placeholders "YOUR_AUTH_TOKEN" %}} +```bash +docker run --rm \ + -e INFLUXDB3_AUTH_TOKEN=YOUR_AUTH_TOKEN \ + quay.io/influxdb/influxdb3:latest \ + query \ + --host http://host.docker.internal:8181 \ + --database example_db \ + "SHOW TABLES" +``` +{{% /code-placeholders %}} + +> [!Note] +> Ensure that the database `example_db` exists in the running container. +> To create it, run: +> +> ```bash +> docker exec -it influxdb3-core influxdb3 create database example_db --token YOUR_AUTH_TOKEN +> ``` + {{% /tab-content %}} {{< /tabs-wrapper >}} From 6433bc9b08cc838cd6364d814d8c19f8447c2311 Mon Sep 17 00:00:00 2001 From: meelahme Date: Fri, 20 Jun 2025 12:05:07 -0700 Subject: [PATCH 10/80] docs(setup): add InfluxDB 3 Enterprise licensing steps with Docker example --- content/shared/influxdb3-get-started/setup.md | 66 +++++++++++++++++-- 1 file changed, 60 insertions(+), 6 deletions(-) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 87f7aa760..6cf897aa3 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -350,17 +350,71 @@ influxdb3 serve --help {{% show-in "enterprise" %}} ## Set up licensing -When first starting a new instance, {{% product-name %}} prompts you to select a -license type. InfluxDB 3 Enterprise licenses authorize the use of the -InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are -primarily based on the number of CPUs InfluxDB can use, but there are other -limitations depending on the license type. The following InfluxDB 3 Enterprise -license types are available: +When starting a new {{% product-name %}} instance, you must provide a **valid license key** to enable Enterprise features such as clustering, plugin support, and multi-user authorization. + +InfluxDB 3 Enterprise licenses: + +- **Authorize** usage of InfluxDB 3 Enterprise software. +- **Apply per cluster**, with limits based primarily on CPU cores. +- **Vary by license type**, each offering different capabilities and restrictions. + +### Available license types: - **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. - **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. +You can obtain a license key from the [InfluxData pricing page](https://www.influxdata.com/pricing/). + +### Start InfluxDB 3 Enterprise with your license + +To start InfluxDB 3 Enterprise in a Docker container, set the `INFLUX_LICENSE_KEY` environment variable: + +{{% code-placeholders "YOUR_LICENSE_KEY" %}} + +```bash +docker run -d --name influxdb3-enterprise \ + -v $PWD/data:/var/lib/influxdb3 \ + -v $PWD/plugins:/plugins \ + -p 8086:8086 \ + -e INFLUX_LICENSE_KEY=YOUR_LICENSE_KEY \ + influxdb:enterprise \ + serve \ + --cluster-id cluster1 \ + --node-id node1 \ + --plugin-dir /plugins \ + --object-store file \ + --data-dir /var/lib/influxdb3 +``` + +{{% /code-placeholders %}} + +- Replace `YOUR_LICENSE_KEY` with your actual InfluxDB 3 Enterprise license key. + +Once the Docker container is running, create an admin token to authenticate requests: + +{{% code-placeholders "YOUR_LICENSE_KEY" %}} + +```bash +docker exec -it influxdb3-enterprise influxdb3 create token --admin +``` + +{{% /code-placeholders %}} + +Use the token to create a database: + +{{% code-placeholders "YOUR_AUTH_TOKEN" %}} + +```bash +docker exec -it influxdb3-enterprise \ + influxdb3 create database example_db --token YOUR_AUTH_TOKEN +``` + +{{% /code-placeholders %}} + +> [!Note] +> A valid license is required to use `create token` and other authorization features in {{% product-name %}}. + For more information, see [Manage your InfluxDB 3 Enterprise license](/influxdb3/enterprise/admin/license/). {{% /show-in %}} From 513bceaebc8e2239cd9c7c83f05ba430ca234578 Mon Sep 17 00:00:00 2001 From: meelahme Date: Mon, 23 Jun 2025 08:36:36 -0700 Subject: [PATCH 11/80] docs: removing note from token authorization docker section --- content/shared/influxdb3-get-started/setup.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 6cf897aa3..bc9f9a0e0 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -551,14 +551,6 @@ docker run --rm \ ``` {{% /code-placeholders %}} -> [!Note] -> Ensure that the database `example_db` exists in the running container. -> To create it, run: -> -> ```bash -> docker exec -it influxdb3-core influxdb3 create database example_db --token YOUR_AUTH_TOKEN -> ``` - {{% /tab-content %}} {{< /tabs-wrapper >}} From 3b5a0ea097a804a5f5d65081ea834eba7e609748 Mon Sep 17 00:00:00 2001 From: meelahme Date: Mon, 23 Jun 2025 12:08:37 -0700 Subject: [PATCH 12/80] updates to starting influxdb3 enterprise section --- content/shared/influxdb3-get-started/setup.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index bc9f9a0e0..8801777d2 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -368,17 +368,17 @@ You can obtain a license key from the [InfluxData pricing page](https://www.infl ### Start InfluxDB 3 Enterprise with your license -To start InfluxDB 3 Enterprise in a Docker container, set the `INFLUX_LICENSE_KEY` environment variable: +Use the following `docker run` command to start an InfluxDB 3 Enterprise container using your email address to activate a trial or at-home license. -{{% code-placeholders "YOUR_LICENSE_KEY" %}} +{{% code-placeholders "YOUR_EMAIL_ADDRESS" %}} ```bash docker run -d --name influxdb3-enterprise \ - -v $PWD/data:/var/lib/influxdb3 \ - -v $PWD/plugins:/plugins \ - -p 8086:8086 \ - -e INFLUX_LICENSE_KEY=YOUR_LICENSE_KEY \ - influxdb:enterprise \ + -v "$PWD/data:/var/lib/influxdb3" \ + -v "$PWD/plugins:/plugins" \ + -p 8181:8181 \ + -e INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=YOUR_EMAIL_ADDRESS \ + quay.io/influxdb/influxdb3-enterprise:latest \ serve \ --cluster-id cluster1 \ --node-id node1 \ @@ -389,7 +389,7 @@ docker run -d --name influxdb3-enterprise \ {{% /code-placeholders %}} -- Replace `YOUR_LICENSE_KEY` with your actual InfluxDB 3 Enterprise license key. +- Replace `YOUR_EMAIL_ADDRESS` with the email you want to associate with the license. Once the Docker container is running, create an admin token to authenticate requests: From e3e76b46d5def03e5ecafbd33795862d5aee2ffc Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 23 Jun 2025 13:46:44 -0600 Subject: [PATCH 13/80] removed clustered release artifacts links without actual artifacts --- .../reference/release-notes/clustered.md | 36 ------------------ cypress/downloads/downloads.html | Bin 2200227 -> 118577 bytes 2 files changed, 36 deletions(-) diff --git a/content/influxdb3/clustered/reference/release-notes/clustered.md b/content/influxdb3/clustered/reference/release-notes/clustered.md index 1390bd9b0..a86ef7ec8 100644 --- a/content/influxdb3/clustered/reference/release-notes/clustered.md +++ b/content/influxdb3/clustered/reference/release-notes/clustered.md @@ -1424,12 +1424,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230915-630658 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230915-630658/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230915-630658/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Highlights #### Persistent volume fixes @@ -1456,12 +1450,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230914-628600 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230914-628600/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230914-628600/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Highlights #### Updated Azure AD documentation @@ -1497,12 +1485,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230912-619813 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230912-619813/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230912-619813/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Highlights #### Custom CA certificates {note="(Optional)"} @@ -1573,12 +1555,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230911-604209 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230911-604209/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230911-604209/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Highlights This release contains a breaking change to the monitoring subsystem that @@ -1628,12 +1604,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230908-600131 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230908-600131/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230908-600131/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Highlights #### Default storage class @@ -1661,12 +1631,6 @@ spec: image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20230907-597343 ``` -#### Release artifacts - -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20230907-597343/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20230907-597343/example-customer.yml) -- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) - ### Upgrade Notes This release requires a new configuration block: diff --git a/cypress/downloads/downloads.html b/cypress/downloads/downloads.html index 523cdaa3ee142a9e7b3c6272300b8a8c59449846..a73e07468767d645b3a90052bc165dbb3f3bdfe9 100644 GIT binary patch literal 118577 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

{Oe>>DQT0`DtSu`qW{wUh_}N{8OytS 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 literal 2200227 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 z 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

O`xn=rGYInP4{RHh6;J%0X?xzHpQ~)Y5|D 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

_v2N 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

@=hu$d4$roa3 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

Zefc9>Mr<6_iT*&VJkQ;j<8Y;8?4p^Dly z==QYxNQqULV8Otyxk1)YUA~eNQhVZ180yMXr}00U+ENVaRu2n?=w1aFrQ@SsV2+~8 zb&_L3?z*F>>XV{1hdkH{RtUf7;4DQXPNuE7$j>L7>WNj7v(J;#gIf4#YTwDJxXe@2 z%9RE^M|zAdR_Z3TX}g$W9bv02h+8C5~@nzk=t$wJ^?6K)5M zt&Lr#BB{gQo8`iOb*2>wc0p*eTa~1%k2Gb&t_}L9QX}s&Jea8Osj|0T9F)kIkX>An z{#*;s`DtnFBD+x$VeXOwTWa^sJz)^5k4XA{z}iy>I?rZ!a|UGY+)X-8a)If~p+u9a z@yH`MVcHMpLcipE>My_4ZMB=k61>3XhT7garkX0df9W|$JxiMIC}5HL;oDJ)ot#Lv z^06S(ll=ECC+myhw`%#Y9YWtJ!-CcN^&^VYX0>ebWnbJUcMHu!n6FYLQ8s#M9#d4& zaaMX4(E2F}dO?s3&F92ZG7O24kJEz$iiMYh{CFYgPTIVwc9ah$+YGCa4;T0NhV{?% z{>_|?bZMS;Gync^Tjl*0dKC96Actc;Rhb|lk(DtW=A$16Y>`YNwDI{9Fl8QDk1NvG z1XDk$4f_n~!7l-Z1P_CzfBTm^`-EpP4`l+KrH0z=jWh69MJDf^&P{5CKjl%AQ&xR# zEd^@Tw{)a76t6gn@Wvd28Va3K(E;7~)v^l4gkn%e|E(SXRe=AM5e0xHs$4AG_w_CJ z%che9_|h2=ZCZ?vD$mKvq-Aoac+}7nq;;3q{V+_<=0unwBO(7;lr)`8IM3fE69E+n zwC$vB_&LBHbr2{UnOHV{IyzpCNY97wh-C)+-#KXGtkmgS&{2momcI5T>t*6beHO_P z_cKTz%tf=1#;vsotyhW)tuMz_<#`vtMfLh|pF?f&2B_M*>*sSsw}u?yZ?N8FJsSKW zkmP9~o%=-$2e!_T)@5X602@lht(Igr#Jd#igp-Ek(EzGZKP0E4VzA`HWgwQI#_gK} z#wHk)qhg&0q|l?(SB5ZV%xmy@sWd|?KR_<9Df7cdWZ}BEw;Y7cI<=X-trvvoC=baI zmP#m_)b28X9ZXXi_{WM@YU546xjN3i!qY(J7a+_9Kwlm{++%8O zz&%OCo&?lIcF4DwTRS)?`~gq2 zIIyB2V-JMFCqO0Tg%VEKg@H1W2_2k1nPMy+4)v1rI?d~#GtVi|zD>N`KJa zaGZP<_H7ZstoUy10$aEMmT89LxPKr_npW%({Ab~DiBNQH>7)@T?hhK-c%dUV_E$D9 zsz0TZT0eul&oBd(#4T<_W-51{180#&V#q=o2C{Vjv>68apq8cZypY7YQGqCao;%l0 z-NalEL_n@GwY6=DK@5TASrBuf;T|w;ImJ%JjshAT3|B#gd-pq?%FlzT6jI=LybrT?<)l-5t1N-%BeegXlU{o{&?~kK>jX1%G|5{-nP5XS3EFX6{Q! z;YH)yYy|h7V8AeS-=IEb<$@c|DcEp`96C|ipkul{srueHI&Q|Gqbv>7?h>}6(D_?> zXUw5-MJ-9>6i=lzb&I-30Vo1K=46Hb?2Ov+ zSiAV?y@@wFYtZ^#9r>{>*BT;V^`w3|ELK1qg%E-+#po~tEPKecK|$9&hTrS#kwM_lA$~=yQk5zbTW6DdL1gP*W*8K`mpTA+F)Hog;brkT&+eH{F%J+V4fy**c5_O3wE=t# z`Tn|3q>4(L=#bqq8#y-qFxHe|x%q@#sj#-0&vl&cpUka&Jz>U`rm;&JAf8qt!a}2V z4A<2CvXXY4at(NHejqqyR@B1R9UiGl=ZE3b6QBa03)P*#7<^2FyUQ4=3nBPnon}0f z(;V;%Pw4G$b7oLD2tL72rylK<4wh!y(n{y>sGL`A*9#N>mg0n>PO9}G&O{CGk>;IB zZ@9=)qlPO_Iao6DVD$d3J-B`{lS;Y_*fz@syz(K=5?j2?Y$+{sU(EL73=R-Z7PcAhl;`=B~O%QwI^e0X6FBC@PO zNl-68JoMu@se04#c<=RzSSWW!`SsQi-4Od3#?{fG{;)s-RUI>pXc!P22?Tl@yuU$q z*3ZjQps%IT-ut{+c?ZVV_falq+XT(CwerE+6KUsGf4;JKdg?MMUdqhIe|zU2lknmW z4XyV?N2g%QpWDn$`gTEr?+g#q=Xtz!g#@=7gR4v{E+NLmHt=TnlS)AkcIVV8Qcklm z`U7_}0DnJc7n7ZIr}Ie_tdoD22J~Ir0UgdvgB=~wIxh)$JjCJsGJ-t(tmj6}z@J%7 zdC>2RLGAVXm?U**gLVs&5~r!t*qwd##|aRa(1jH&ZQTUgu zfeD70X_b1`7IV&?PHHteZ3RqidZyFQ2aPWn5H(_IZDoiOR@DRz42u|o0CqDjU&x8opQeqpYAj% z$kA>(JHk_e8UhDT(u-Dz+R|28c$!MVSHl{?iDaE&mo5kN1t^v_p+I#`M`HkSjYIFDua0j06P5Sz@e_orDi8cw^Y|xDb?d;HpA}7eBNtn zKMd|3N{|jgiT%5YjmDffo~XOwm8pyfpT6cbzzBnnaFzbzsDBQCP{KPi&~UAq4I#INqK2qNf~z?*0CqT4Y|1pN0AMUT;H>Ys98yv(4@<2R6^t?f4x)veNmZY+kAIu&?lxZndrg&}L+=wF z6mw+;G=CF@p0G;g!+0QDo1at~iP-cnh=m9mP})z-vJu3r_9=OcmTK61Lbp?ktB;JMGQDH+{3b89E4_+NKa)gTH4wP!(k7lkC6M z#UE1<&v>YI!ZyvBv*wyJyNv`kODeHo;Y^igKCDp(jcuWfkx$5PVFDMDQHI9a)A{A^ zh5ni_psCJ$%-WM%WkPojW`ko*b!%VEAZDb=5LwOh#LPb?dhQS~uQ(yAd3dR1!n$!@ z-VAhv$eYx3Ty>ebS|p^bJe9P+5M(slj+!27@oT{XKHYUVnuSIl_Hv5wqJG$r55pFByUJgeBfVGq1k+#s^dV#Uog%-T zFEm2ky|q^?v&fBlKPk&0E1t2i_>5s(1UQ|o9H>pb<6zzjqZ;TwxP;^%Fcnjv_hB!f z(*9hpN7TaKnbrtEnfisw8>tK^FQUg)s6xG-sZE@OYUvPzfNAaJWSoLePSS3%t*#)& z*a?KBAsS(<%@=rL1X!Tn+8{9es)7^jele$om4r%<`8o8o3!`DDM~?L$u4$wr^h0RA zd*~PH{04hd*fhL6GCW41*T_<@zj|c%3j9p4I$OcLHO6<_7ivIp-lY9u8B1c)5>XL5 zH3!Krr~~hoIFyeIFi|K2`@;7={F2So#SV-RlRqz}$V3Hq^HN~cUBa>jeB8#VQ>D4e znv?d_4)r&|wS$&AkwkF@P;HAU-wKpcQuBq+&p&|g-hc<3((sGa#K3-7Q|Tx+aHms6 zXhjaIGfe>*ho5TwjsDdl-cp~Y03mPTKFZvN0=UPn#L=}6>l=*DZqK8cMBAEf-i3@; zJjr5twXb@H+{#m?$+?rmCCv8e#H@^^6JEnj;=j9oL;Y)>Onu`8h}n(>S*r`YfLItJ zh(RHW&#V)Bf+|fcisrJjD7x6(vd`jVpaNUu-j!`gStq6=Fv?+MUgD1 zut8`Xg-_?1sD$x5px(Gny^`%v^r>Knu4@zLQq&p{uJS;b$qqN8=v35Z!Jfk|+;Jie zIWf|8Kt5)*n%p6`0%`%Iuq3lvp*l;2Yb@tI+iN#NQzMxwv@iR$2gLRHv2lF(t1;V! z0_W!GjBnI4=k@BRyj1&=%F$RVyY=B7fV}B| zHuleTp>}KVq%OvMeX#NBhwgsjrTkt5-H{}{h1JXbT z(P{n^wTD4eo)bLB!Dd((J*a;uI8Yvr!^W@**rzsf()m)F=of&L^t4BaRn*!ZG8X_4 zbhOi#ko z?DQea-VoV0(_idDw|aIVP2Jl;d*l}Kbl*#MLF`O1ztd|zSR^6Nwwzj;&b#;Bz#^v_ zA#v62C=FEG5?rg?Rg;e{W1V&8b*BCI6gok;DB0Wl^25T?c+(DCqhyFE1qbP(wPh}y zwT?x9m(=oShJQpom94R z(q7{A6iNZEocd~7dyYLmL|G}v|H zJ!1u-FyDV@Wx6RI9$IES*|HcKtTifD4W?|sq{{@&cY%R{G=TG{jVg{Ay;m(%u?S$d zqOcK^adt_mxnK`g8n_O&xOQA{wNRd-DIzBcGwb+Lsp|)d+S|cu3 z5b;_G4d_c>GkEG05m^n`sEp)4))7l8#*KF|(|IZ6SK}7;-AoId=;hxE#QP7sUdFk+ zF5_DOv`=y~W#+f_>XUu1xh7Y(NrzR}E$982D*wQB1pgPH>GNi&8KC~^ihSw)c>Q_)bUFp2S94zDxV`V zXQDy%D_dcbhi5dyu`|RX!Xr7BKh50cd)1UOC7w5-vv#DbGHE?ss;)3_m&v=uRPEo`E0w<=G10Qz~d z8(<9-2o+n0yDrq1fVxl9*v47X#$u=h$diGh2nHdaL4AZDT%Csr0)nuqcjSzv$^vDJ ze@UutDs)N=g!wC;V`A`UfXpJxgx^d8u#@=EUb|85UQkPV)h7JO&%`J?o>}3OmortR@maFoU^}kN&v#|X7&4nL&^-oK^56Z?L z^B;5qv2TwXKmO*A8e&%U;~^dhc(*1;IeED}br8DJFmMo~ckeF$TeP>b?d;-aWDyS@ zR$}yQpc;S3ztIlzai45^>Wguj_GqY&gme9&%fHh}s14Sy{j$@1uq&&5`Td}tuJUX$ z$f?^5(&xTW=^XC-qEejUTHc&gN?diQsZ*UnbZ`=IvT+A&>VrxlRfZCU)-1-fWm)J% zl%VFoT|Jd!uW5$f7f(sm)x4Wl#yKszsV7y*1c{|CY^_5DDmjxMzn0?2ubgv}-%?BY z`5i)jak+A@KZsiaDYkKGZ#{i8EN7dK-#~FbE4c{ue)U?@MURO}z*G7rXhe&YDyThs zI^-y!hTFNbJi{#<56M&DCw%S=xj3b`G6-%OqB{sP!po%>mK^q7*=xmfpZUz#ch~1R z4948m7kn>Phir+7eug`<(}~+Lw;jeOXaF5GaN-NS{i}D@mf`!)>0&gEDi%^4my;SU zB9;&8q9ExH=J0tA#I%H9#n&l%beoC=7f?tkOA?CKhUB-F41LT|&vsI(J4vgUgo zBUAOa##89&*5JB_*yi5H36W>|6{2vRECkko*C_>R`c`K(MTRJZM*Gv%v}~!LgUZ4u zP#=#z!bqJ?T?}H>sd(|#)dS)Qc5BY{S)gqT-}*nFnh&S~2h@q`Rq5SF*t?F_%d)9M zL!N*UnMwnG%2Nx#ZpWERfco2R?RUu~l`k;x9a&1p{#Mq_Zr^KrJmQ@*>M`;9o1ERH zO=8O|rlL}sd3nq726?hBp8vLxycX<`)OzcOdq0mrqnTp^&j3BUt=pgO*UmloR`puL z&W;5@1*BtZqH*BY1xc5-esir)c&bzbzc9!Gp~~YA3CjmQ#dDk;Ac{&$dcJtE)tN8Q z3LwBjZA+B%;nK$I5oqr((s-j9ITreqNQ_r^yKo0m0RA4DKM!iKFZn+@P5MbbGLWT1 z7$b>40`MU|sRra^3EG7!Cl631r@ba%>s;b5_Ik!{E}6Ya|F`7|)ARb9_W!B$eEt4f zPJc!G@Nj_Vn5oqNsncBf#UJ6{yynI4ObhZ#N1)y{Pz_$Ohg;g~6y|iz-No@iU9PEP z_o(4g{zxvyYT#NjJvBGl-0y7jmtQ<00wKx=d(?Il)jhx_Pf5M~VTS%X3;(+r!2y+o zA^v0tHJM)2KvJrSiuMHEWVjwFQ|&39UgiqIAKETlV=y!UHP;6FU*IPKE@L69aZ$`& z=wOfb6y0*9y41ZKT$*2dwSdn;pffp2rDSx9ua_E9R659TxWLo~mu$VIrk}BNvB=lj z^A35TrahMLu-Xv2-y{u-%Zl1|PKr@qu`5rJgdH8RfX7sNSksf0xD}`_0pdL91+n3} zQCSaoL7ZdhQ)|j5h~0BwVc87awlw*|*aU416YX6w-tt@x-J)?c>t1LPB1DM_RjX4x z{#O{*HhAA-*ARN*Hq?>#{!wHXjsM2nLfy(}Hv=dE3Vn>ZUTK$dWjWjg|7caUQ`a^p zo$Jhsb{2AJKF&Golls&Ly-vsSI(atpU)t_-Lg?Ig>Zq@mi)GHh0s3~X1AjAc(ljA2Ca zyL;y7!cfi@y{Q8##E)1R=zuH{4I58))=%Xt00 zR95H!cVyuZC)0a6=|r5Pw-YHUDC{93OyqFBg$&8)=Ol<2FN~cU_w5cok z4mX`>C{su9N8{;Se1^&ET$q<|$w0SCdTpo1!dk+W&^+tLys-4f-EqjZLWijTtey@c zijP9!Ik_=_DA%a9lKM}*d;U>rSPYht&R#>|LP^bx!$!dN$T?gN>ECD%eguJNqfx}5 zA$9qGFR#mSw<^ri@p|SI3;56G_57s42DO?;V`upP@C?K>7RBZQ?CE?{YM%P!dg2w`qhA2laF4W%hivKI-LL z(6QCOxYgEJcp}x5zYJ~CXd%)5#c=7u?&AfM0XCXxZsQ~Flbil+STiY1M+wx?lE-aG z-xfb@d);0N(&d|ZA~V2sb(nw9E>~8CwXrkvowJ{+QEAkZ^=}eR@7E(LB&QKO%o!ji zvP~<|&eN*dI=f);`{ zkgx|(l=@epp1=JC8;XU3^wF(%R)()XHt5$jGocM*YpGv*BAn*jKp{zL0wcH)UNvE@ z4h0t9-L-)y$IqNpt1cW3#y#;h$5r1>tVy9JF$CNvo?ici=6yl*$~c)29-)-~Z08vE zYXl9|qMYoikN?@Ch?nsyOj+6qQw!v)w$1n#)9SetdSABto5Qo%L+)v|{M>Lg#+3_e zhpKrp51WF`cL!Q6*Q1N~=5_piJxscqC98`7m%i%cVq5j zO-TS|sD~inlXL#KW+~ng9QvdFg)WuDW?M!`;cVVFyOd>l+yw^IV4{w|wAz#dqy)Xk6kZ4ccMCxB3z3ZSl)#3KIM^ttOF@gQ40aPpUC zzs6qYNPlhnM6Jr|g_ZIgDYkc=LzNta-164VS{;a_%ff_Fj5k0Cwy?X2iBUVqvELnYy`2SuEFBE)EZh&+nhjUniY; zYh4T9S9N9(3Cb!p)YA3c8f=DxU-z@iWLvAvSABOEBFu}f-Fde!(KH_Q(83Lm2DG(g z_DfFhv8d3uq?@A#^`~@Vy140^?U5neSVW1OSfX6m`Wjps&X!qdMcN&cu;IZXT_qwu zVdTTkuoa=P*H)<;0QFbGDiCx75ALk>`o_rKIP{&HeW=V%eqqX|NbcE&Pl!VJ2|@k~ zjVcZl_Z9N%fpF$V3r%v}K!SXc9g{a8`WPX`SD^W+Z;G!b%wSQ65_rqGQ;GQ(JV0z2&DpOG#Y#wzE3W>Rwok?Viv)3!x$Z2 zR14@Bqb5_Via^~g8YUC~4+Mg`(QO2|c9bv08T)$zutR+3NbvK z3RKyZj2PV}*+vpx#{vEp|H~;UQMpel3#gUlSSqci@x`6&({2zWj;Q>JVRtp;`rVgi zWajcYWUyxQxQlVvkK;HYNhdD)F?hdyoykq|6*_e`I4e_as{?bfpX51H_`mx8g(2pq z6Qa{$*q`TPI5YrczIs2tbUE;d=g6cP>(j()PoKJ z%lw?)cB*S?bcVVAF;phR|F_P(pfbxUBxFQxY z~^?Jv^I?E$%Z`#N64RR2Wnhm{{resz1^Yha#e`{eLO! zr;Bs&yDLJ*AO?&X>?Y)E<`cH8)*o}VSJ!8&zdsm4+EcVY1_y04IL-2}_EnElaR;46 z{hL|Pas{LPeO7{D^IhWBlzU5^?p_+u-m@RAU(Zsm(-z6RxaRqJQq?q%x*L(B-h2h!`NcY8n z*$icFX84Ss(6Wx|ri1I`ATgU(5&A)|SkWZ`!Wn|#=>FB~haJ3|N;NWqwn;`vXG)q& zWL?R9LxuvP(kan}v6ZL5AO-*s2L@CjG-qEClNyyyPjNv^ez*bF2yA4=+e0#}%GzV2-`RM*7IKY*C+ z5^A&>k~pS|vv~nGtd$aO^MtUX4&khV9{qxn=#?0Hsb%FumO2E*Z#VX}=Q+oB;5P$5 za&G@~iC@@woCi7^EIsb5rj)TsUwW~u*fZ$P->AY`wj2hn!IJh8v866K)w+OlFOpgm zzQU^NB`R3AP--6)^n!BNg}|7T@07tUp@Vi!2RDPffkm4K6eD1KahJW6g+^u6uH*KR zpQk1(96Md3Vy3y9BR`l0a)r*&PVD48T+lMNQi5GWR`ch1N%g_Sz#gaaP~}E6dB$6e z=li(wxTVze!U3NHKP2KN#%bVGcaeUVWYP@g<}k}8L7-wjBA`IMUwGIQ|2Jq?F$P5HFhBqtJEXlytQd@{D`l^g&a~ju2n7qulsv!0Wfja zzg8I*Y8Tp6kuT7LH4zYExL)A;VK1-jl$xP7`Y=!`CzqpzY$_6D=Y7o+qP8>GVb0KV zQ1R0}g41zIXZBOM9b+)m*hiMa2j-JYm29>L#}4|}I_rUn@| zfpqJZ$jlfFqFM-cOnNM2HAvP=2yav^ku7$6r@Fx&0tee;8YoWA#hCYqC$$00GcesW zqa&J(v6TvtGjU}{I&de2drgJf5a1iQiI}9$x2k%YGs8O9m*%r}V3z!2V0IW){-Ru$ z4scix<)e#VtpD-MBb_01GPdqDObB>#JJ`FJ5CCS&vh!p7hZzH>B!4hFkN0<2uIC*O zv4jsQ(T-*(r(4(XY-vD{E@^@YZaGG9iXZ_gO9qL?TT_`_I!DoR3OgA#f_El2i$+ZZ zt7^kg&)Q0at~gm%pgf1#z|9{@g%s@VIz+p+%eySSI&u*I(6Xm`&n+Hl!bT8I{etjo zafH;oI7B4%w|!w_-Nei@6<3it1@>MXD>eVKqG3+!^kY=i2h@*b>)I3>#X$Y1u+CWj zv=B@f!VGEMRV*VlFx=TpNlYMZYzkr)cBImaY0Ns0l4_TPFBr{fE2s9=K(xBjpO;FX zzV&%yF?8xh)F#qsw+d2wd?YUS28>YEQfdk%g7EzPgB9U?#}3l|xoX8D21=0&KchNa z2pn?EEUb(jhyn)UF!J&Wi2RhKcTm36^~}1l;mdKd1{%o38c?SYKz!8E+8 zCOqFJz3o&1%dw1f9;6%&e-5Te=zVP!&D9l=!&CwhLPofKot> z=Mx)tgj{w^>~y6?M&SB|F#yv=xWM0yZRk+W+W;it&|A>5ly&DJlR*AiBMark5t!|v zoWo)U5Gtc?c^MJ=IQLBHdBy5VkYYKL zql&hf0}bg)gerLKRTg_u!gKXN8A_o5-kPr(iZw^K->I(kO@|j{2Y@tj9&gZ=m;w-H zeiR{@%8TWO29~w|oPkQ%^PX5ntsRun`(Nok30ki&Di<5bu=w}mv6fnY{5*GoArF9> z{5AJ|IgiNyhZJm?x$&oJ<2w6El2Cr+nBiozG;+%s0))^TCHjEO14KLh1A2+v}+c z2n#tM=p=WqQxkGK8y`)MfbdmeWzCv__FDF*9VYO%=@TQnD36$q{icVvnLG_tw3A?O zY8AQLql=+IRhp+&{kIP6dvSvW4w0BzIiLN0Yoy>2sS#0zpU1zNe)_cDGKS*$26<^? z={tFKIVZlT)Nb~U|JeRLi4Osx?gxA?>T;=p(ZV|&KsYqRT<3HjVm3$nc;iBrAK|iz zuPx5hj%w~3)mdbt^HlcB?*??dFEl5w!Zg`u--&MLn(-i4_he1$Eh>vS<;6^USlYjbbI@0Yo_YGH_rC1QcI` z9Gvk?K%FU}Bsfo`VpIc}pTKDHWj}Mo#m1^x1vMg+BtB^~du>5WVqa{u3V??m8&&z07AakSnHiKHhUMe^6&0o0E|`C5p<>5iCp2HLu_-oV7GIIVn`MN%@(z@SHV3#xFO zJ2nr?{f0>Zy=%+8?Dh-6<{F{3K?%=rd)-C41hVN zO&Y3k_{eaj zRJ`cJ2#Tbs_5n<14rT2ox{b}6?u#HV=x)k8b15<6xoy=(-N*A^y}vrU7YIpq&$+i^ zuOoW8e0W!^vO<}Rji-Ewr9PWUaXHPpJP@>zv2)j)X2ui zK`CfAb>VRbR-w>LlJ!hj^3>@xN{IGWv7};=LL0mH2cq{y9X0I7BH9$A&azJq+eFVt z*O%&KbIZeZSpK5s*djoZS>y2K*#9eoP8qCF)N+UL67~O376K(l zt7J!ce5I2P0kiG$;`u4(Gf+0>d}+cTOIVq_SFG?^(6T$UINVQ{YI{N4KXXT>tJ zp>Bbl;CjJ~#cy?mu*yQlQ;Xqljhw-<3Iyma*Mw-EQ~kH{b?dAiz?lspYU2y$5K9m9 z&9}(k`UL&X1-@JjL#ji_8}+U!kY+h3K#1heD1@i}=?eNR1nP-n@KqL*Ih_xe(y3u@ zZ7=dJ!tdsXj*WRhP&gNA#`bf{V7F(<2dGcqEAUE$qZ!0oGOili*$W6(PgEz0CjvE$ zk6eKs;wylX>aCS(A(X;I6(;Xa00t2l$|87VBPR<@Iucb1=!0pwH>$&zE2k4=Y|a*T zhV{j*8jACj0q=sC3K?n!@_-!hDwZGuG*B3yD`<&;CtLh{hYDcO<*vt$t+Rv1y^*Uy z71x`5;Ah!68f=t0zuS7F4y){1K(tnNa&vNTua$=a5_Rx8@o^1;Ln$|R^)ifu&+(yR zGb`0b?AKTaDv*Z?-necJ0{m|>#E&0h;&$T0tz+A@Y&@Q0h8`;Z7=eAI>)2Hr3^&#)lRO71xz3y!UEP`b&?5c{wpM!@{| z)_goz?MYtu9P6*WU6i@ZKV_LJSBKXe2%(F_a{Q_b-n4v~g;j7}UqeS!Ij+-1aA*<6 z_%MO)rHkcX#>x(@h-ixVtnBGt4@R=;gfz}v|7ZCH^m5qXLtrQBgld~C10YH3}Gxuw8L%fKklyYKYmq}R(=qXEY z8>8Dy$fm4DK1rz{@oPyH0iFwUlDi2&X)Rj#-lB}6QGavGv=1(V;DPZ1pRtb+0o0r% zog#4~Or~&Z4;jgeg+wWJ)R6r9$|Xk-L4d`)RERMeT{14C`^FNe&`EJ>vXEU(u0+8X zO-cL(FiEEp|Jq*=xJqVhH?APL#Ya1-cWpBehhfrF(zKq+PAvmkv{b=?KvnFZZV1vB zC!tSyC3urv^>QFq<#M-el~*VOi=uxZw7sZZ{n^{xK=rq7vHM+6$D9r2%N%&;J&eZD zDQ?`7?z0l*-bNNr_WC-g*`A@IOX_i*uf}J)2K^s?j!e(y02A)iezw`N)&?QNz>8=u z+O1k>EZfBJY8dq45;h$bB#(hc-=HGF6;3R0=dMvcf^#nf+)K0jz17iQLQeW%yB(7r z_tf`B4&F}z2(%#ah?0PBJ=yVPmMgBG8o}yL@PwhECd4eEbrehC2>A3KfL8 zf~YTm2B0^#^T6!6f9#&3})u;2vP2Y?uSVPdM>V(Eh)Gsoh`Fh!MH%;4+JA1>h&7b!vDk`ydDjoTFV~;iWf1~s z59N*Id{Rcaxkn3{E|8wjFAVr1=Nn4 zqw|sqhW@7b)EeHEa#$r$iL4gV3LZm8UDEAJ+zaOIbnF!p z8|pALm$Bb|Oi>R*&U{$=Se_t9BWqia2?VU3;@JVJWlDX@4=S3HiS5#c^Dk$xK#Ql% zy)Dq~PfEBiKPMU9nwqqfXR7v3%BBI+NuTN3z^WFnvA$yBzkBmMPCtx^ou8h#%G)`$ z*K}dtd{?fWU=Y#$CL8A1YOJBF^jnXUwLpgi^;UuxY_G!vxhvUK0#o{SZz~^uw$NpQ z+Kk`6-vL5s)Eyff%XEmXU{DMl0#?vdyO&au&Cg5*;K5h&zzG_=0fC4?EKAF%*%CNV zCO^ur(Nu+HFA(4DKnK3WiLw;MrX@>!JL>(Rsi7-0j-_+RF;W+%3m;6^+Nx7g$N>6Z z?;65Jk3!%#cDl|?+`g#Eqvh1jST&8%TRM63mAFDT4WGVoEG`g5OheI^hlWAmg;@1H z0(f;|9qa!A?c*8ccAb|%^J!vf^}8*>*nZs%co!0z%J-Db*Ty8 z^+4eMiFpOLk*AR#fcCrk0)O!l)O+porI>aBDyL3^9$f>6ovQxo``ZdNCCQqi{R>H157pg_IkpnstoMWNaJi$M+|cc&Um_n3*89XZ7GsnWrxCN2{$G1Vn~H zK5yLfbG7YC?Gat4cWV_GPsZrRQK5z@iho_c6M|ohhYm_vi2L!Ebn! z6hF79T~$Lc-4Ckv(CBU&oU$vnYsfgT8%(!`Y9EA+h|PbBRsdx05Z-{>3W6><2aIUM zfxPEB3l=T(yKf0N5(NXIF<*@V@o`?j56cPlcVO0;GG%M5b+BQ;jnkJ6Duv>$iQt35O{5j& z-Qaa8%XYmkyM8y;W`Q&`_LwXIqAGp1mZ7P|XZVVU#EvRw#JhE-Kp0?UH}VYg>Q+JG z^#p{zY6}wQ>{ZCc zD`=_yao)`Z-SWt6i<6F%T(!JRNP{0l?PG#gyQscQ<+ESzP&q42=_TKuCl_mU$<~Hf zgl<3PC@+v*i1W&CqR=xVa>oyT8dKIP{F$E zzpmHB&BbQx{$}#0VNY{yCW4&3^KrmhwBKGc-b84u-TC@`F9Thtw8$Ng zt!JR;ds!4ET$!HgQK`i|2q4>3Su>xhbOmy6cfmkGg&3*W_i78{)L}TB8YC@AXOc4l z$O8!UJdv+8b*k508S<5q(U3HQSY_l=L;ffr-Vxyv!2lBtii8NK#7Q352#8uZ(-k?H zV;x~LDZ#}gRNQI^*grw?$ZJ=9ZWD(B0AC;Uh7BV|s_7}!re+!Sw#_DJCq2kjB}i$WQ`W!*Leao1&J@#b`3KyNJI`6^h06(hhq9b+u)2$9^KbE&KcF&!;FbQ=p`J<-FsqGR2 z<#3nL3n;tB{9k^uH$#mTJ~AW;^co7X^v<6V~N5xFl;lhC#iWiJ(sp zdF*Yg7CR)4*$;9v4$2Ywi|xLW!8g_c0|bEU(E*SZ06A`08UUjpA;8CbkmNNAaR+h= zWseo|N-PB-3@>krPA@3QWnw%*f3@+yQeL{;GX4V$9V!mWSB&2oGm24}l*X#VPBg_O zvcsnkgP3vPJ9KgjhPokTMVW^402$~J#4M=ZCFc==;!W^2l56>SXbb(R>a5h;t;Ptfe=m=f|f!L2){%`#jMo-ygfS@2J>JG&-MKBZl z32;&0hj!5o@_V}~j8)}>?tPFuBd0?ngRsp);Zpt#Hl!ZyCBZfEsEV($8&@g=-AY4r zV=v0cgZb;=P%OY$On`#QBp!edJH}AuMn?$a05OSWGH`pmjmdp=_9RJ%7cT8rbdcQq zw>{see_oYPrF!SVI-7#Yl0{0quoIc`H1G&bJEwtzob7N$l17s7wuR;Mmr8OCpBh?zKrkwDGPio{H1f7Q^#V*b0n!;ie zt6mum3cj4sKrqB3=wC{2VEV%PyQmFvognYIr#vM?XIPW)4+T!g8}PlIK4lAZDUW{B zh6-8Q!23T`g-{+L0UbLtl@TFAU}T`*uxRWis}ol}sj&?8TjwdrE+C3?*$kI z(B0K1grhT*NdP#Ty$)rg4rW|Y;3@Izl|L|zza9Pds#&UapkqxJi}=lYxbcC_cl2h9^h`zvrZPd(WhUyCgTfwUT-PfDhRFhfXZAk;cu;X9EMl7@AMD3HjNrCtZvFCYnU z)i7n$YF6npPngLDA;QP#`&uCLTOITP`0i8Q z^!U&8A}^%;RPi(!I;w!cD>7HkV)0tMuvnHdfhUlC2<0;;Fq!$b^l1T%JckOJ{2+Nq{7w7QkmSLhCA@Jjlad_0E4fK`SH)f57EgT9s%tBmO~5Y*|D1- zaoLWIw^PNU!bYUFTwZqa_D>R9A2gBbvaom53VuCCyr*fGNN!-q_%1QQI!uwgtJ7r8 zLEqD|GY*b-4O9XB<@9SJhrrBl>jdh_pSlj&1D&%RLZbFSJ$35LhX}w%u;$(@wRteX zJBL~1;c9y>(ITGq)&&-W*qpC2I4Tj1)6e9jlYJaBGGTr-??LrL?huzQO zQ~JwOGm9Tr{pJ0SFUBnEr~K+kxs}hyFb-dOq6UgRhI6tLo8J_Ok8^F^0LFS7K-AXj zhY-Q-&{_BU#8u6T#CmwZ>Dw`E=eJ1a6l}K(Fhw zhw>HP@TCxge?XLwv-1V6HX**p>z#7Jq&sFU1H#U$+KK1>GeH6E)>8W_b85Aju(h12 zA$>T63yG~lg6+kQXKCn@@ zLC?szboQO|0B%X`V}%@dXaNLQkTU8dTQwp_!TusUV~XXP>JvFAZKKn?o{}2D7FEGt zlPpjOct9cYf-ZFRN|)5&grN4IbyR7ssB+3#a5JC)IXPnga<2mWU|tMBN+rZNWNckB zjz2eE%-o6h1xp4@_G=9%L$ISRj8PrrRM{w3*{P#gA*mD5u(HqU%pt+hh^m4<%`6KyhFnin88Vqjz4wX#JG z;Y)OLE2Z424y4w9qb8_5ZWtoyTJw3!9ctC8r~d+_9_OjQpyUu;#22`(BPQJ0Gys&S zc^|J|n7f|CzP{!b>LjKdcWxahrz*f_>HuMZ8a_dpHl;P*gnwL|lCSVy2x~8TLyT&_ zKw@Yf7+F4~kR3J*;6~+}iNL}#M643BR)CDHeRk|B2RoqbvBYNZNr7G8CG;Gk-^lkS z)E`nP5;P{5UiFt%muJ%Uck`bJOv0QLUst z4Wc(9^+h0_Pn&E44mvRZO&O}!0*k&=V+k8SYhl~a-HC^AN6l9ba^t_uO#P-JdFQf7 zN==VkEg&L-Ay_8HD6Fj2^>}GM_H~-~|DGlQ)F`GS+2=SI@0Zc}pkH5PmirIHV)tv4 z|1eRz`Gn$`pepf)NMcworf;Hf^5^S>*H#wvON zl2(~^AuVvf=HURXs%K!U$J`HU@Ad=q_3)I?P5nW@n4#GrFV7cnptg-OD5@8T@jwzr zzrQI(4Nw9lW7Pqwf%Eg9<)V&}1v|;>oJRdh{}(jGfwh{Tnkg99x)-rR{YT0yzB>3D zG0x-6R4Jy)Tmc4Nn|D7s88u1 zt1s5?pZ4OWWheYaXE+@{tRS@zw@Ne~4S)7C?`L0Cjlu^{1?U4tL#;xF;9>EMiG3*Hl_xiC$V2MQ;Jy^A+(S&X3F4eG($&K2hdKIR{A%wpFVENCvKBht#43gq|1}-HhW&Dy&*B))b)x&< z&Ga>q%RHv_Dy!WBm(UFWmBi(>4YN$PTg!(PprkP`Q<4?R(10;O)iS-#epYh!&1Aqj z)dG?4a!HpKxgyY#f%K^a8^}oY4*hobSg&l;C2i~}hAJ`uccp7R!k>z8Cduqcf?Dy^ z4+!cB6tP1(QMWkWx+lkLh~{Q$U$oB{u6S^Z*}V&e1%@C-?dQKwa|0vxea|D9Qq6Ph zSVBeK99taQBaf2H$3EB-QGo9d4|)c`uotDU%zOq<9T0Rw%Ii8s=b57h7ZF^zaq&qJ z(Vd-~ok6SbM6L0e2?Kbu(argSX6AqyGXgpOS~TLN#UB@wb4IAfqrF8VAX5>iq@g2a zaO9*k;sF?jMJNTsCM>T5UIA_d3HzO(Ju;V6$#l0DIRW69t3XJVyhr_E+x|hfmb$c| zIBSISQTd0jwMy(1$nQTE3&K(TlwoL!d*Q1e~h>N=t`vC5#OtfTTBO5TLZ>CsB#Rvf@MDc zP{Pb$Anxj2gq3$PhDb$S3J->;GiGZ76n~RkQ~Srz>7qSiPVcM>5LJ9duP(4XCQNNS zn&jk?ARVb9i|*YXjhCRk3s~oayvi_ad;C?NJ(;(28UbH^)9U zJV6_Sx)=w!hWcs6(XByJ*QB-}_W|@$@6E?{X$+#4aenros4Y>8_1kDyfShOQtlgvu z(o^MBuO^dwXzN)|+=@;6(fiF69qMT^6JrWp?b1f zVpHNfyOHuv0yx+$^>Scn1U2e2=OMRZ=nCWRBz0bgke%o{NvY!M09}nO@JuWZfbs%1 zrT(Y`he`;KT0Wv!p`5foyf~q6#6d@|1zM~xNrL?J9TP;|+RSpfswBWd4Q4j7Eqd$s z9pDJ5IJdKwl}y_?HPQIVz+6+)!n48wRjwN=Q=2nZ3!l>e6Fo?%S@U<-!4CoH$}zX( zrmW;uwpXu*X+QgquTimkL7b4U1x(K(?nmknrysI=Y&TG6XoN)P$RRH(vmgKcgDsR$ zi-=3L6kiJe{&Jgl7sltOce^+=sMDxRc5arlrbHLkrw=N!vsCn^DqkNAkOXxA#nC$! zi5e+TMmIs4Pj{^ni1M+oswPPms1V`ce?q)NH_cGB(>PUe%9ZDNW(f*M7k@%-0MDaq z$*;zI8@8w;4B+XFj*tG65_hS|8ebt0M^F7c+SDLAViP{BL6o)*c$c%Nu`gM(JWb=h zVV??C+!m|pX4o`)<~p`F?M*z}l(%hwVzE;TdM}6T&^?!(B$Lgs%g<39l#AO(GDmidFlSV2NZN_;=}O;+%%+jH2X5u2ZJGJ5dC7ELBY=2A(GR6;d-MVon3NbOE1;2A~%k zFLc&OncV`CCqS&S-tUGZw)%?rT?E3JN}z45Ul|)LvPk|hoH`Y+s~9`m>!Jd5)FQvH zsOf^pvUUgn+p~JP=SU=_C%`P_mPqJ} zs!~SuC@(RrGvZ~fB-xXT?=3>3Hx{b4-;F{qu+8e|a%ybd@=*GhE^K;cas>m!y+$7Q7FhpD<`LGBNBK^* z{D^LL7S!PsxC^Lg^#Uig)VYr`y0q%W9GFmmjH0wjveuPVPSy*1f*N7;xN8cLoHVR2 z6Lp`P1W!ZEkhh>rnfezlLPCyC;$g+^JpZf3a zPeA^Zp)VW2T*^}4*q4i;9Og~%y=*{d!6yHf|1bb#aa1#df~I^-gSKGrHLgJowjgi} zd_PV5oP^B~be(!tzR`Vl@9I@gZ!->Vx$~P6It|)@KdKzsfm1Z!4L^9)oTr3Vuf;W6usG0@_CKYu# z8|EelAIJ=Vd{DtLTZUwSzN&Q1kH{n2cl{BwcsII$n$=K9R$$qyQGmRrcx=#pd|=WR zt)`s=BM=aJtFf$LoGV?i(gCbGPQ*EnCl2`3&O@Tk&6ql#$iE0X{DfqsZhu)(rx#FK z1D&;CJ>$=?WCjqVHS4hp1}P2HmO~2!BcPT|%eP;S`sdQlrYzj5YHX1jEf+!ET1#F7 z`MONCZ=*K9B1@C)?4F}xNiwjY9K3C>Nq$RgS}dT7hJ3Z=-}<)lQA7}xAbUr5N1dl5pOwya@$&O zW6M)rdl(z#s(!khS{o*z5DD&DQc@A6xlDC>hY1=*b91nv&4 zP{QB{(tLGr?tg+-e&HSC-$S>Jj z`7;)2DgTvPIJaZ2Z+P?FOh=KL0mB=AO>O6E8^<@tbae9SLw-UgG38u$OSS9=U<4q1 zBj>+TU7n9)kRyM-ADYtLpkur5)ZP8K^pA`B#q{)M%FW#Z#HqDn@w4OAy&-L7M&uG5Fu-k?Gt1XG(fdqRbQ+EJwg9W(>-qN^u0fBbHV(b&z{ ztU3f5mCV_dRST3)2I0<1N%@n$ThRTPSs=9CtHR`8uGbNdtojbdf6F>S{hsp!(_7R& zVl<+k2N!KSsP!)07(ZHO#bj?{2Qff;ghi{$x$;HSmYC=Cucx=K}>x|9eI zV?hQ>b!9A;MO08(bAxb>qm+Glma+^FES5g{kEIty9lsf+JH@yci-^@B`W zg9xb>yeG#G zYNm~a1$_ik@U?%pN;fr7JG6es`k$?+<$U?r){N)@{0EPvO6h9SkvsMphJaV`)382t z2#!MDvSe%L2GGo8$V+Sl+9kwd&n86usx+7ZBxJWz++}hD^>-6<6|Z5On#(mH{s)~q zNJXd%_Hb$LDMo{3=++KhmT-N2<>SL_wQz@8DDxhNdC2?DE+O1GjK#3P*T z6>6p)l+fWmdM}$!h>ucZv6?z)&tIdQ`CTKzdhVyggFMIkb#%_ks`ZRrOMM*+r<%Sd z^%vw2^hP+|bxz@E@cay^m!o#z&Y&^B;K(`UmGmc%IUBW>HxwR}=l8B{jM?ATuHM77;r0O_%& zHNIgs*zj*)z=gAB3${-k!9+D^8wiR-)XCp{9J*!6E)whrQkW@^pI(CoSW#&^G`3>n zMTX6#`AKyhrTr~YfXnA@Vx*u0e=A7sDDrFy4(1>kU@9^LL}_z||A_?uP^fS5Zc zm&bWLA^DCscAMAu#Av-%IrZbhHw8~O19*DXkfuA zg@2Oa=sW@=fr{7*bJpNmugDqnd}zZh$xrRy*lb?b-`VZ|#5;S9mAdD}zuzZCM!)9@ z^)Qv~N>y}4mkj)b$}8BLU9Z?D`nV3AGVtJwTHbB-BTx-r*o+y-`YxFVmnX0a%C$Ht z*}vRBgdJu$eebgGzWU*8q19l|k5YF|mr2aomjhxzCIJC|vVg5YF2H$;JJ20y@`(^Y ztv_~Pf8lYc*E<5sNR35)0A>9Rf83LVkP2csPWn$QXweYH#5)6S=O}#?43T1X0Hc=} zyVKlc-|P&vsGVvr9bV4`o7b%uc>_S0@Er?7H1h?z??>CK_gTn~-l1?1%_ObF1tVDF zH7wXxSX14Na*MHpcSF-M100jji&}jN=z0L|dFpo6Hmb>Du`{KVPtUf_lFTO%qE$uJ~|`06X0h>wOUor0vJ4{!sK+A!e*O|f5G zNT7kzeoiGEYUg0V-Gdxmh{To|cZc@yUo+Hp-M&lf{U>#$pQd*@`c??kXF2E2ckSK| zF{C2M5n=#K;>H{M+nUn>5=YHU^VMFJT%cnHRsx!UE|X!@q{eW{`j-643+QeVje4C+ zO8ATnOBtZ6q%;w0y*bWfnZc1%^5i2*>bdFTHdC^|7a{}JKIr)(H6JcW(zLXj=SrWm z8Mp;JUd6xo%pU9}(<2tWeIfvC+}0AI?bD&5-)7L=xwuhaL3Bh(F|BmPA}kpFMk1YY zC$aio08O5c4#~9mJWQ0kErw5o|3S%h3QMR~X2cyv?)K;CBZ&8^GoP<6y>Ivs(YC0% zvFQ@t0-x(~0S+kBmUBClw}E=5Nh%s@h<@c_pD95Ro-9eJ)b3Pnw>IEQkEt}E&RX3h zCXfV0&f=Am5wmr|gh~cu!Ipx+2vJ)l`505OaqPjdcyY@8n)AIxe~H|#ob|o{|9TLA zZLgT$SEikqajfZI2d92V_f_y8!`k!*oN1}d-j2w>uJC{AFSFntHhG>P( z(}s?j(m+`y9AARhYE+t42Gk`gC9i9$*L3w&V3ZMWz-~qhkpe-ycp}gWp_j+c&ZN_OjfTjBUzJn+t%%ecIDn{D*2-^=n{4Ls3#a``(o2rnIBLsUHfs^#zHb<3O#S^QuOCD>~U~7kP0pXdvmFqKmbZG7IG_c1gzaOSPj< zZORTIs23-)L;%ZFL_QCcwPi0cYLP93m@>ASCz+kR8-mV*W0mPaiEm0ktvX4NP=mOC&)2+>oB#78{nARU${kXN<8<1Bxl6 zP}gPn1ZBQ8D@-1a1Z~DI1aAdF0sfX48S!9eLUmGIa%a{;KQbOn%cXPMzc~=GaH-@m zd^dF@TNzE4EKJ5GW5*Wm3=2g7@F>L|F@m~P+%UfCvOL|uJDlm45Ow$EF@kJ#hDB#}$vmUcOSy6+jqqaFik%?4xL=hIh z9i0atQgLMG?*D(&h^)*^lPqQehzLLIHk+sDZ(vd=Oae%RyP4`c+|^WJLWJ!@7*MvBxRzgqJB^u{Z7|zg2A)85rm>sJnkmt!npr;-^>544*G~pj4BrSuY_>IbX9mtT zdMs_sl{@D~r2|SPL9Ade-k>CXh zY_D?WWy!4GpBpac`}A>=r!+FaArbC^B6;b%j7}@?88)z;S;Buo5Ymu`rm2}cgDfeE z-uh5$Q&3HzK^PiFaKhcgpJqCOOM+NzfY$B?u5Y3m^+Y}LAX(`_SBIm)-C_N=J@-z< zm7LB9Nhp;@9YSe(ixYyn-81|caNw|xX47br45Ct_!Ys@KY0Mgjisv@;%$V-#G*ALR z%p5>(X?aqQ&@8t;8R`Q~rPU)MlyQYlbS`5{bfQzJFJ`b0@~i_AFIQbPaO)^u3*3N` zN$iPU7*?Pz-Xa}C*# zfAxZBqj|>53XT}%{=b(@a;Z{@sM(Q6AU;2ML@d0dU!~)z^u;uP^wZ(j50nD@H`yl*ae(g zhP@U&9~X@|BKP zok~*&7M3ChZWk!d+}Uy3o@1xCgTB%XG$0YAoe=-&jUS2g0EMEx)Kjxz+r0U*mYy9` z{k)vhS(Mpf)a2Fk{NBCECWzB9SP!QGn!TTMPG8}*B@Jz~V^Sh0}Me|GJUuS+$djRNLBk1(}{G?M^(SA6hn}w%c()dAXUNl79318RxLCUw-8NX4* zOEF%KpX}?i!2d@!4kbBuYBP2=_e-DTBF_S}&|0qfRCL~CQtuPM$5XfK|HHWqF=+J# zsSnk-;U~ws1eoUkpd;P-y{wx7a9aV?OO;x06ix?!{<0HCV2tyMB{wwOa~-`1YGfq& zzdRku8vC8mLDb>p4m=be$8}g~M&C8QG-xKx=j(N%hlt0ceNwL)$gF*B8}8T|MGx);mIGt^mmyU+v!aBARC z19hxvjdogda5RzI&gvlsOr2aU6%RmPt54>d{d%Dm95jOdLiO6geaQW|M%Y4idF-WW z8UjeuzJ*f|D2vR9+LO*Fg>1Eu8wrKqRGcfP2rti|8HE*b*2_cay7rfYxUHza){@yt zGhxfg2NYHHo_jY-K(2fL1ntZGsHVOHhI)odbFw3)L5VP8{0H^B+h*pbR#N8Hyd#Cg zBwi|06P<|gTlMd;jbkj@>fwASi_x>5An+)QfBy#rWob^tqV@{+E*nc#dVTrbQrTUh zqI{1_zm_6hXj6n26(xnV?H_icJ|wQTvz9d8A5)njZ*KnuIkc|-_WC8MwP7Fqy5fQ^ z|9U+hF6Dm3y6!GqAqGY|cvSyYxKos63k?&{8Mt>9pY>4Gar&C%*SRidUAds=Ao@*h z)r>`|dW|iExER)`_d%Zx}z0(P(0|Nsqg~A0J}Y(x;bVbK)YOGJfSjK z7r69-EJj3(#R9ad)Q^kR(bz_#l%JU=p3aaSTG8M{rCzAcPRnCa zJ=63K*nTMMP^r7xm-4Y6gVSUuY`H+Ce*12t~87frD5_0Um^o zbdJW&5ANvAx-JA%kPo)1%xplG%lOF8L0vuY*{gt^YP(ye3S0V|j}m?`z&6!;ZfpgG zs`75PE9|-nK#P9Y$u<9^j;z+wxiv-RK}S; z5W>efO~qcXN^0@bul)9Du5imEZg7+p+sIr3E^hvqJ?GR9x@lFy__x>Z(UdD)=AJV( z!@O*`VrkDRe`WeGhDEtR zglT^Hw_pFi{ZF2S*qx!CKB?Rw2_@o&dRBq~G_TXhNx)`;RAo&gpVU8WZc}(s5RnbK z1u;}IoiLC~ZC(h|Z>sJ5i+Z$EcQC79hz7PF+6Z_OBZ7WFw~6k-RZVZFX62-o?m)** zqok_gH28$kNT{=S39ALk@XTg!Gt!MsgPb$=i=HY0XqMyFX-2W2Mg!%f*>6%`vJd87! z&hrGY<&tfgT7`nYHv}g1JVdIa!&VZ?Je|~yT}Iv7L&gr_Cv&%;Nx;BP4WKwg1k|sg zV>Kru-`6*m?L^om3hXnqpxGl$-FWZ~8SlI*&F{-x4IQoDEKEVp&4dnFFSDKwrE{+i zCPgt1TW;oGFalv3>MfqUGM=3Wdu*fowU5~X-*hD*5NS}l+Dcy}9muMg=7sFklon+1 zqG-rOWCu@HgQ14pAf&7+1OkoGBt*A31qsdQfl2X}N zIU*;7KY3j`oX<`4DHw=h^@87V|0uuPtm$QB{*BO?K*oQvS+w+(p^`uuT~RmZew1zX zyLs`TeUZdA5Gk|UKQ98Iw!`&3r?p8&!*N@Me-k|@B--F7LWv>0csy57WG}YE2$Z9U zx^b=2JlUzx3y%V#qaiB&KL1rMopZj(QEA2*+b=ZE^~WgQFON4U78@i@hj^dQf6gD9 zpEdR;s|Yi{-=$lZXFnlnVWGqs%flBf1uPCzd3GU8eu*!a^AZhp6gq#*iL(#|nHy1t z+aXck&UV+5n<~W)fvcu&aj+LY^<@@nZ^sXHyNj=IWMWcf`;>QOtorc*3Ls_uo}P`$o4Fl(dU2AWae!6 z^E&>|=-Sn~O-w^I`S=>?6f_{@xCmP^D-o2TYk!(I55No zc4@!B!O&)_xKxdg9QhE5=?Y1(Z_`0@rFeKtZ3W(B#AfJ$d(kHK4ZhWUl|uDe^gMjj zd72dCW~T#FO*wiCC+P7GIL>Ykxlmv-_O8BF1Vo6Sxiwe~kM(uA2}Au|?n1Fob^GpD zp45m*3BR@zQq6L4 zeZskK@hnn>Iw2IzB-k#%z*uVlx{)t{vMZezz0hc_S#<-8PPX(G?dj(4<28x?eS1c^ zrUJ3y2FOAWc2PU(~6Ttzx$P_v^q_bn7#AVu{? zhxu#a$a;Bl35@9hnu*#+HE&ch1sKfcqW5Zg^?K#4XfglFLuEMV3ccRfHo=OT1WnL+ z(F;|XWQa3P1MmzxAdE!HG{Pg9jT*h3u&-F|*QszGZJx6)qfCF3*`L%g?d)(F$UNX{ z%Lkj$vvYUs`P`K1-Y`-!WJ9rRgpq?~nUD-V^8opAKuVTbmBu&!|EqnggV6(c^e*MRB5u-Z&W^%p_37otQ%@5t+fpoH5J*YZ+iH%HhX zzp*~472h^GCFrx~a9b1U^HhtPK~PsjJF6Niywbp>wzcav4)J6MqVai8h5H}>z> zx8Y@$Z5AGQ(WMDFZ7_UDG3y4kZ-?ci^UIy4y$2~XJ+e*oGSsmkYOCrvg)L1nQ34y~ zLV}Lo`zsK|$hTzvLFaQ9rNRg!nMCcDsWU9~G|=P9jZst;c2;Vw;keq1kydv*7E8^| zSOr>77oep9#0P0@r^nF@yFQRQP=Wz6klPt3m1J>`7^%El?KUd$2Y9HlXH{nnmb$+? zbpWqm%8vdU9K7zwZ^Rlss0X7Ji-j#&b?Al9A=4q71FZ>}C09@gF+khEPd|D-YH^B1hG++fK!0n00A0JYn8 zc#Avs?&mbc_ti;r^-#lnGvVjgu)k#7>Ey1WigH#@XlCdznzd4EdbZ%@;f1+&i1z!5 zWCmG$*YMQPFJ)IWpYGL!Fg%1JL@glUX6ypYZq>o42I`)6Wjb8&rE41jj=7%Z_P*X+ zD!=U6Ei!fC|ELIt_>uIZ@o9XN<4pYaFd|Q@-C0PG3%3Kf=*GT6&+bs{)P1$rsq+Zt zWAX~H7%3|nvCc1igMKTubv=zK&Qmf_8x@y1XdX+03#%10S_hb+Ow{m>>!@}_U|fx) zNqpG_SaFCf3#Se-Npm;#c;H{PL0$Q^sq}UhyX-#a8SFddBLLF`^(W~~>~N}0i5Hoz zjlgK3iaaDd(#u%#_j8I*e(5S{36kji2Bjx1gGiOVNSH*Llv~Gv2$lcL|AB;~dj4~2 zWjyU;7?wm%W0$wq_tyu$DtM;(da6zclE_rEDc7Dfjr9z+SV5g+dh#(sx;p`CV5M`` zBmk8LoTbs@xA&qWsZc~`RXi(>uq3fcV>Y7s4D}~ylO3vfDk+9xh_1*a+I7i}Idx07 z#~HL8X1cyErF?e)vjFei;csvu%acxhU;d771bsD?&v6uLiXov2^Iw;#(8Mf|JOXVG zfIg=uveFAvtK}~im(jYN|FnI6DY$*`ci0bs#vA`H1^ck;JvcYDfVDYTvlVM z;;dB3V+!+>9}@nzGrI-#BdISnG067s zBabxx$4}beZ+sMel89V?E^@CH#_RmA-=b3wZ|Wgt8rKaR|8UU@`wj#>`To$=zm9+P zy1_O4zHLa&i^nG+wUG?l`?O8|PixLCOv(PXhn^L`k(qVjUu!&M`6rL~PQFmJ@R-aq zniFbxXll7J!h;XQw)+LKsz8(Ck-}o`^@j>n=3UvU;%n#JJ*ge?t@ELME0b`B9=F0m ztGCrO$l)M1@uf}r(F z*;;fiL12PO=8qiUCpLA=jZ2n52h2bx0I5cQLO);scx15H_&PzDs~LqR;0>?gUcDPn zst`}02$M~RlZ}yD7IWd|y*2@&H4$-8I3QA{FDMsqbaR)>^<|=Ays}=kQoV1q$G0Tg zsTtz`gngkxpy`ZIrfq`nQ*A#+I9<~}xyqb9^f;)ZKK=4j8VYosPQ>A-TE;Lb?S}`r zvKQDSnlHrn-mlB!j|)u$4jW80J;m3iMXb10pbrHHJs;u}K*k!c@P#x}74oF1IN(Kg zL-pR*IM0(QmpxhpRGxmA%_DQiQ415kuJQ@m%z(==F19sn+%692BI*yIVAnnYV{pc& zb>(@3!90rz@L!c4+(Jxb_?s(I$A$_&4`X!`Sx_JM#s~af=7L^XgJz>(FmHn@ManT+ zgRf}0&scH}Z;fnp<_QTh8f#dnHZgml7n=|VS3_CD>nl&ujH}(GgEnOJOq%Ztblp?p z#>PaA=Cz^&!VCgT${Eyn%T2qRZIDVDX-7ZUu($AN46b)HS$LfUl8n2K=DYTV#@9my$L0$eYCbzts8v(%+MIJnJdZx+PqB&! zpX9BEf;iL-xw89n8}IRJmY4B*6Z_6uyL7WWxO|2rI!$WeluDiI`li1PxI+nrQ_XhS zUPl~p@idk7kER)Z)ge>z&5w2!;}!WOnmF$3ng1R@gR{QnYEA7I8t0_!m3_5pR8Vu} zdaA$pSGCbrIUQJsUBXY_@`%s{$ud@|E}yQSXF$do>V=QxgD-7RqFdj1UG>hF(&1bu zHn24Cj)_sZjg5K7viAynm`#McRb0#`&B(O7D38B|=cxYocZYigY5f=wOAGZZ(Z&jT zOz?;TMwCq;dpa5^AoXVTMrSExfbgPbFl#-hxz^YBSgapMo4)8($2;|Y{{wM=eMh!S`ox#$*g(^wj>k`%kl2h@kKkqdfwb5sFKW7lLvdOr6$*AW8E z(rcWa4;EpRRH_&bk`y|t1#sXeFl>JUdt0IA%TNA2wr&-=WEueI0*+F84kX0MWGG&NEg`&)S)X+PTm>dcLcRm-rpS15bcI?0f}|sI7S4e_U~?VJL0h zI?cg$C8}}gM|^M)i?g^ro}dpJ`wPwq)>l2LQ9K-l*8u$rm42trgO}}vTL=fj0wgyA zYbqrGe~*oS*InMINNuK*o7De8$geY5ub!RWenGWCuxO>P)K&E97}C1UEYM zh@TSv@jin~$})soTxq9((j3RZYUSP{Xt0%vW_4L?9gC7)lU1k$5fCC}Squk|XD|m% z3!8FqB1QQ5ncmY0ZweI{@tkxO&sKf^oMN_-?9;QzX%S=jf3-Sl|B-d+pL6xlo?X$P zRO&^~FNk2O8L!p*h0XrQeeVu;A`TmTlZ>JgN zOHq-s7$TK9J{M45J7IV}J2jZeBF;vDcMNrF(P_3^hEv3}(F7(wEpQ>V3S<6dH{5ge z%8lO!2B}RSdFIByKmqI*e%12D6eD2n85O|D4tvqzo6eKJWO?oiHijMoyoa#Qy*l|l zC!z?rh^<1!!Luq`i~iN0sdIIGd_V-q5`N0wsUFZXpAl)BK3BQSuZ;iJnjig1RXgx0 zVw8W_+9?&(Q&?91lL0eSFZnW_s+5USv#ZkQ-X|CnaG_{jDPG)(7+S1R{Po z0$3L2Q#$)UZ<6*i4dnEYbiE zL30qLrNOI!D-Mw$sW#`x5Kus+U^G6rLyvZbWy60run#??fxp&+PDCh8qsI!Og|9RK zHHqK?PzgJeXaYcz3cOE+huGh)^+ad#0)8LO6X2R&;6P17kt=FCQ5#h%8?NbTHuc>~ zSap-B0&sxC>21p3Q_gub$i_&66q*OiCbKHA<1~GM)fXiXxI=oHUTJ1vrYdMe`^sVBkj7hf+}0!@)El-`$(IA4 zqssSqH)W;8=A87tlUiza<7V!vrl%w9{yhy<+wbT2;|3Kft6|W+J4~^f2fW6ohQ5gv z7WoP%N&bfwAO8^5KmmP1F&o&Y;=ihFG)&%#$+L zR}HeRvcZxb{cLSfk@?ax;-Xu*FK}*2l^9_)A;W+i@G=b2s<(?1^7{!ibq(CbljeCa zkkaErw56Wsa>>OXt-bKKT-Q20qJQ#A_7^XBdWh~6z<0fyxE;>RI}D;N$CtHn6HnZX z?UzlS4eO4z`g9JTGgfqNS849hHPot2t6F zf`u6z)RM!+&L>+Q8$3487l3V~(t}K0qo|?nI3L_$0m(&|?OE&mBHga_+HzW1SQt{~ z3hrzA*h)Pw8|(s1gfBp=1?fXASAGn|M{!=|nE{T!L=gAwP(?MnQJW>wl)d(Y-bK{V*($zhZD_8z6^4+5CA5wPtl1ou^m0BlsJmTx8OVzX7|Y zv5=E0&a*0_O(}Tk#-xM6&5%iP~ZCUl3tjz^PZb z7BKF*>85`7@oRWdrYvLYoO+=c(ej-k!&e%p>MMV#5eA&v*wZ2X7et%N;eh}FuSs$P zgxtGP2$9Q72XoXXwK%kz4p$$*0SJ*iZeD^rjSOZv3)or2i<9+9QwvI{&?kdxN^)A{ z6)OpxqlPe&hAzIcr^a6QO(8xJ=9bfmFDyB{^d21mMrxQ{Pa;S|0;t%d0|?9&B2LmU z;hce_y-_m+hku4Eqyw)sxLm>TTSR9I97<@{yeQGw&ZU6OrYiI*Vuh#T?9y$9-a(uL z2X+J2eQ{K(NKXwPssEmu1W~A_j91L{`vQE1O>0ScOYgjVnQlAeIlMuKzx0vSgW9Q& zz=+`3dlmfp1s&9;(&J)t@T;SD3I!yfpVVB@XR!H2S>LE9a-?bVWGXp(J`k-)r4Ofm zJE*V;cKoGN&12fB^WQ5X?WG^pRK5;#`HG!pDVZNqL%Gajk06+(PuKdx&X!HGxoyNn zFG;_@11$VkF~31&?(a+HKMy_9x%dS9W^G}7JbvBMgI_mUFOY5P3!L{qty*H8vh7>_ zpKRk#m*sMp`nC2lg+j0z0C9wySb zth_&5@-X?Y3e;3AO%yV9nDv$#gD_pxGcEZVG%&_-|&=zCRM}T2dG7)0##ff`_E!>pg{zNzhD>c9w-(2lLzXZLlXxDjb^5T zXMn&2TL4&u-pygzt2>cMV0T&f7}bI+V9BRuXyg*VPOexC zKFApbb-FcZ;W4CR4N^zIX_pBuJHedcUqQ}#APhKuTXTt2;YOpO0!=T2Fx`af(^0VG zOxBKz>WLSapCM|TnaWe9K4~yd_fhO2fzFb;@*|vT6V!VeM#l~~5tEV!PO>-1Y*_IG zHXrmh7s_4lA#4fpx6%x)Qg}@(jntahh=$GqIRjY=`6!)IK#+|Z3%B1MQY!D`EzKxM6!QJ>v(WJAepLwY1>Vg1E4_h6Hzo-Ri^ z;1!}n*6Lf=^K4b!MS3kY&t6(EUZA=&YCrzPVRy+8OXg~joT$2`@H)I~7i{4|Lwpk# zJ@Ol*76)m2`>h$$) zsWHWfxn2srP5|k)kDT@cL6ir)ySTrSI zdn{G>E>C)I#hhn_MK+$07n*61E&y)rK*rLGS?HAxgRfJ8CU-)+w{2R+Td1kFNMjO< z0;jYz)C8R?q=IR+?GQAlfI|v2Wie$ipAE53<{+*B$@KS8$ErVAo8qW zJ^#BdOBCo-ey5(waRUyvl;G827Br_Jqa1cO2&E8y`TKc{g7TmM=qSj{=<|8GN-egve=ZaC zLZBLq3$;RQ-JI6C3ZMV`)gg7o4aQLI&%FXh)q1>`_y#AAxD#FNeeZRpnNpMM{R#jB zK8`YGD94)vl9?_eqhUT~Qq-g+L99~yf3LNAAR2egpx&-)f~8JZ+y8(E=*yr}t3~ne zVaj6Z)c56p3($}?FzIHZjs+c}b;Xs6wf9TNJni%t*dRu%!evh*E$sPZEI~q18xKtm zRnW6#>?sS3(a8&{iBt7AOdGZb_uO3N6Z9(pdv+|Wkaed83ffb7b|o9G^Jd}NXMLty z>(LCzr5m?*voopfjB{tOWG2|p8P9jR2&nWRxsKWX~fS{3Em|8_4M@mghC^ZM58Yxo7xUVOGc|b_`*5xcBH{8 zzfwm0ry*z)ANPfB#r2m=z z(#&sfH(Z(Od%dev7x36)WP$wOH)aYucTwUg!+w6hO@zOk?(UstnWVro zZrs80x9UQhYiVX2;bwA_?S^;~NGHf&9UVQn2jwO@{Ly?8iXHvANeM$(8!g-nzQO-i zY3$Vb=TX>KY^C$!JFI;Y z^i=S>H;67BruIKcH_@EKtRShUO(M7I{#--vbT}vHZkTA?Ddk(-bb$Ce!i92JLmntPE)6o!Y1566QAjghEZPR z9B6{u!Bu!_-`>OGrmq6>O66DHP9Le#zYS%E(=#}3hFN3&9Xp!p8r#?NH#@GO-8#pz z!gxtm_1hO8E&4!Rf9a6U)-4?B4p|Ki`bW>XaZ}B`rf<4~I^=G4D{edsQ$V*@Z|$th z&X89tTTg5woxFlCp?YC{p~s&m_vw4MvxX7vtgV^7v=z{LSM~P z`PV};H6{*Tw*EMd9%o!{VbBY&fo?)9o$YKds8*omQLum=7VP9 zw8GG|A|z{hswb>OB#t&*#)TRcROV~I#u_W1N{$^d*L_!AI-p{Y4`g!?sjv)CJnBr9 zqN-F60_|N_nuu_10Iw^Q>F^*0fcyPM-C(tzu%^^SR#Quy z?chySpO@46oS=Tfra*I4f4x_Io`$i}$s~!)8y#FZ&#uonRv5`vzuI9PET80GQkZP7 zl6Q4TgKvIphNfFo>_66BULt!hx4KWc(FvCw%HWe8JW(lgoGh~Al&(v{HDOG&9)5*f zY76=Mgb3pmNTQ8|RK()%xtS||c&c<#zt_$VN7XyLlvo94aLeLk5zy#Br8C4w zu)Wyqx-Z=0lHyWxSJ9wdc?xfH>gQqh*^uP^*;*ze6Lmb*u z#NJOxHEG!xqBILP3+YG0VX>q%TjAO*^qb}eV3w)OvmDs(F3jfT9gK2#|jObI{ zKC65n;vsF=ms%?42jSMliVlCDhjrjeuo5Z#L1#6fN+6&l@4t#&)`1h|`>qyU0`~+--#2_Y&5G-a^h~ESLQ*N(erq=O>m39}4 z^Z#--seiEV0c4E{YKMZAFjM+b57fTD)5c(Uu^|0#EN)Eqm9KFgeXYo*WR*rh}B z2*%$h_&%pz3)O?%4TKD{{T?;ZEA9-?9hEr2i zQ6veA!+=OOjivPpb&p6NY}Dx`F+QUvR-+U<^7j%+h~9 zx%4NmK~neU$RmF@Fb-SfqX-U33i}>uCOsVsa^0z(7kd6W+M_*A_B&}BUN%gg9F2hx zVuHD%8SXVNyduPtlo4*Zm}lS1v-l$@%>o}VVRAsrD@`xfsus(X`fxM70r$;UXh}MM z9WDmSYt$E=@*dYEU3LGYnf0Jv_R*pdaQFQ6eFMGF2y956-$UgM`PJ>!o3`kai4A&! z+Uk=Ug{8V3B@_-X$t4G$SL)Syz03jH^?OJVuwos?Q<+2&GdIymIJ?ds8>il2bOH-Y zIbO{q)vKd$68>@h4Lxo$RFSLB3ij>a3NPPLCjGAk}aE#<9-SVx|Ro zfkyYO{XUkOQ_NN83wD!+pPC2M?qgmMyfmtUrj!_m6@ur$J}JZNSG7yQw3h zkCo-_Rs=SJI{}Cd)@+HFTfSvikh8v+bgyvH348HSU}(txKM+sfhy60-Qc`}7k=lJO z1H3ky=2U4|%p~R|94jlF;o5=1F)^l2p2cBQ^G|B8ENr6bM*MKFA{_Sw2?2}v}p<970VJs@ei43qX^eC3b9%b)qdGekz-3^~2cW z7+hegiy3`Xnq3X8V73J)+=p-d9F}^NRUgt%U`J&xh+p-*m`C#pqC+lHz!}~GXL0k3 zaimW`qKQ2+qgTeB%DpQETscTlS699|6uB4>bUaK>w`peKMV)$l-MKd$;7-G@_EF30W?@^( zj%BjULV(pHQTIV%94PIz4&QAI{)zq1*yyZe1Q)rJ?6>KzfkEjAbY?r7n56=>LB|&w z$IZt6fiQ%o!75{;QbP{!ywMps{s2A*ko<<^)<^$>#_ZCHaTa~*-)#iyY{0Q)0NEJ= z*0x2?2X(Wg`47FYXX6HL?KPPaW4;6R0N7C=6;m4`I)vDWI=B?hS1|ry;(!bdcO)Es zXS*AKb?#tLdh1xLDq#H_WrPgPK z+Na@#n@0V=tGHp=pX*y`{q2 zPiC7r?T3UeF5+>gGN*;Ajtf{M=j&9*pPSv57@On&p)AX|)R#ATpP1fOsKl^8g*`%} zE+$|lk!fy~oV?Nh>?%DP5R-d1UXdkK&0v^!9?eP0a{<^s6CvubZugwmr5gp z+CIa+|36>!Zn@G>1{#V%=RN6-p#+8t>LV%W=|aLLLlGO5U0|2Ha4_szYpqvE)dv7cGYYM_^L*Qhl@0YlZM^@amZ+Vmn6lY<;#XJfGgA zWHs8W6E`}19V(Qc-kr`%@>ps|$5p^UAC=_>Zv}q}^{4WgC!zj({M`vW2nh~m-Q_35 zO87`o*WTkx2@^X+tL2EZR=1mi;=iAB)lV1-sJSzzl8m&Hdn&;lRPkR|rRa=$^Yg`s z#a?*S4myzEBme&e9b)ByYY7MBpv3V7IX2KDc4K~pL_LauH8{pt*Tz8=BW{X{R|-@^ zn9M>A!QuJq1=|23YxwA54i%552v>f8hR+J?pC7zk@gYMVfjrCeOL9J(`-ru~VlLuk zi4;xyx$}Um?+XIC0Qw9<1ev@PGa3GpNx$8Ong**tComf?44hary*-B(PI^38I%%qq zX;5|4ei*sR&hJM7P-BHAdjMbIP>*Bt^h|V?f=wxC*(Q1~23_TaDx(8ejzYhHhPoi+ ztg?dIhtkmI)`2J-aHSD|Lg*}I_wb3ZwF2@{auV;2IjXF?a0mkgszE}RgWp1%CBGs! zXn0yjD$UvCqi~U(q*KE$0RKr%t_=TMj^>j&7pAP153E^w>2(HDw_#nChH2=~V)^>_ zJaqD9v7-r}-=UNuU^v!jAiEG{ph@Q@Fr?g{3I?DbhQD5VOa(Vk=AC=o$~~M13=4xV zQBTJ9Y}$1imLahc4}W?Ffhi{aeDhQK5c&6Vgs~>7Tf1O={#4$6Oj3U$<;~ix48#6I{eT=Z^VRrWgSY(!m(L~OyBrFY-mx&?pZIdqW}NH& z2M|xB%PgW4-u0Hocx-eKmrfGYl;-){Su|JE7xERLcL5;+2;sT21>03+19()~Cbg<` z&JR2*#$|!TeYC)rQdpS7u-mIrVxV;$~Vh@1Bq75mm(~*Wf!VgDKh8uPTy3^5c z*~0=7jJ-Yyjj1F?ZmIVmL^ssBl4b#v35#`nAPtJ=?)3buYYMXOE5ymw`|@LYEz|1i zEnpp|>1SWGeux!%bZWnix!}XxqgaS^>dU})<{s++M!vRnyw&TPb5Z>?RsmzRhRhSw z-cyGe3N-ZlblOt+b_6%vA*#t0bkH1ix>rfA-Pa0<(nwd>rq7N)bg)2pJxd3trr}3J zvqb*;73h`m8$ap5F%-@P?ATQ>tnBqwKI_i-JiYRb#t`3!ox#IS#*ZBL!mcj?96n4u z0|QMJLAAE`$0Csnm(CZ-F0bW~X^#fzcdDSN2>OLxj2DoDQ3(%ciC~6Zi*PT?_?!TK zp+apI4S==5Eh0P~)Z9pc8XJWalr&`TzdL@OySC7POvF8w`}~E7kUMByoN2sI!U{ys?F)J`I|Xk^rC& z#c1GQ)cvG6VZHBktS7~JftXoG$k^Yz@DJ)qP?qrvlGV|?C;%vR21lG!Cqc+L+_H33 zIHl(gwY|{T)U=izvgnjkZwkU+%6e!Phx&B~ASnPwiIC*VJztGwQ>bB%H7{L5!uYKD zMb1W3TcYJYe`4n*Av11v0RTu1Z4iHU8V}XYA;V$D>uF@RqPN51hgUijng7uelr7@U zH$|m-`2dY6SX={>w#CuEjxd+s9m*s7+N(JHO|~20)SgrXCaF=_R2e<_o>m^GW|TRF zriVmvz6k1IVZC2I90E9qM6-gRKv%5#D$nhv@No;|2$O&S?FK|FGpuK1E-IW>d?73@U8==6bbT{ci&>Wb52`<}r;w4DdIvLbIzr0>+q|Ni|x zRiAzqAj7kEh_DCs+q|55GPgz40@1OGI=6+6J@?z@cBfc>{JBj0F@~JJutcpMTI)&qlTIaINrB$F}mLUn~G*=pP+d z2&#Rmr_TEXmw=m1slsd9HZyY1E`ThqFhqYR`nmXN=Vc17*wvZ66(}BL>x&a#LwU$y z_Dk8T9C~`TcBSJ=s(S`AO-(ccE;$tjg$fD;kPW<5V>POy+CAi1Va@4;uT0u*{u)G_QV zKUf=%n)DzzkZM3syL>dc?f^ihrNM6;lYoV1a;l;5ZHAsYoo&7_82o?>srej_GMD5K zuNiUx<_s3>d67tf-kugFqs<7h_C2dv%wP`I?5bB|98}Kw$mMo)w;uYS0e7$LYrZ=8 zBfXu~UCLuUZacx<1b-{0q<@(J1LCOxIrIW`igBQ&ax*g*?VZ6p)t3rGjZEk122gDp z7715ZKC!mKTuyf-#iT`^IdY~cP2F#w=W^UP)+TO%1#Z7}SdY5hwVMFDmt#J5LC@u4 zq*t`BYPKqmZKl4qFx!WAF?0#v5N%qoMG1YSX}bEYQy-UE>L5MwNoT-8TOuFFsMW2R4*Fc2L|V6z+0Z(aV^;Gxd7~B_FkC^8ZVJ`> zQ?t7&L`9gDrj=P*rlV2u2yRS=`9%W|V3-kVBgs8GF{Vu=YLQiy$WxQ&>vD+ECuqeb zlUvY=zr$0IsZfay>^8--&QRIGV=MSF1vx{p!?DTzj^DINy-b6vUBMpaon=NZ`DdlL zi_)I?N*28h8gVooi-FiH`L_OF+TL_MvKv_v#J-#*BFM~?bh~=G-~W~R&wPFRPE|>n zWGrXF4zxMv86Y zr!4bTS1A9qzJ-pCzDn7u~#N!a#-dAw?qtQ*jZwK(_`|X9VwYcikF5@uGKI+); zU7Cil*CrX?@H?g~+x7TuPI4k6ZYF=pWdh*G2ezPu3 zL(#A#YKkCBY4G;P_uA(#i^2u@yU05JZhi&!ve@Lcqb`TjCPH5Tb~VVX-p@jf4B?P_ zG0s#fl7^yzXjPfZQpr;`jnWfc4&**EJ`$rLu?^aDuwrC;R6*U-6<<##dNQ~2Rz7G- zhXgP2jLg?K1BV`~`oYf*vIo|cf0-Xm)g?c7LHD=mcG+;oyO3LJm#B=`&H3u))$r3P zgJD23+f)9Ebb$i=>aU_MtCD>aQOO;_$vrYz8WL}v8>CGYsClTRuFn(Xi=MojI2pX! z)l8b7O0rpGMT6>hYlkXQ%WEPBa)lgA1yL&(jCwkCONHh`;Ct#wfDoW&SE9`?1beIt zYkT4Lq#8yVfeVBt04p{sDDFa!*1>j~y&~~LzeaO0hYBGTebLR27YJ3{r7)1-HX-R{ zovPTE-;Mk<_wW!6(l1329#N4sG|wK(r1Ct|^hlOIy+IHg&`S_ch)%MV7~~^28l*U~ z5fveqYK37?SvZd`Bb*0x6_4{7fE~<-;Vm*zt;5lzwa$tl7kJ1m0QQ1d zd72n?eX+2Bkd9zg;Rq5x#DvXhr=_x&$qO=L$t4c%f;w=(FWU(6NVc%R8u_bq@aT#> zOg-wrtpY+axS!2Fpo_@Bm!8bT=9f~F09K}_;JQjYQhO44%O}xCIg0yRE(`}9P=zB_~gMgm4F&44I6Ly7~Tj@ry zQXP4dqn!9$2vB2FpRvLtap*o8KZo3Dcq5PPCOG1sCeM%F3O$9Gz-YkV$ntNQ#Z0wP zpvU;i+~$S#Gy9SGe5$k1{m~<*d~s*;e2V~r_QohI=BLM(@wv&8*Bws|W>oAGIWQ0R zA=czO;vak@TK!1%=b+YVRq|6N@f%iNfkA*Qd@^~MKCd{}3)G)4P-;HAb?69u!g;Y3 zoL|+nFs&!Xp{fhN0Hgcd4@Pqb(n|SA;-rF%L{6uT3T;5^)KD}QXoOmU8XS^^1R^sK z1q-q@)qeq>IJU8n2~f~%q(RTZsX)mtNKG>8?|;z~Zcu=)3;-lA(;dnyPi9>oOQ#0o zbEs<>mx=rVYdJgEeOqtWvqquWU;Rl6H>noQkD2b;Xrh-C%r7UkGma-)3O0ZyL><-a zS3Wfg))v3zZYKkx{_??)i=$Iw>fbfhHTTabSr(5HxWW(vWf_F>!vy34~m)1I##Z@{uWxe%oMX7Dm@*@Dar(ZibzpHB&FZ z3qw^QRrpWh;;!o*ROrCJM9uB@g8bX~!>O+3qF)PB9lutsxo78B-VtDnxFS6`Lzh~s zIgpefa&+}{l6|1c{8AFxa8osl@5jV$NVSfJxFa3PLZ{d`>c;2EKY74Ozu1=!^caUp z(ap&+bndxm?5!)+{jy+5?V_HZ<_YatS570PkbkM`{3(wmgh8X#!4ghZIG_3@T+c+0 zp%NuN8*(u#_4G7xWjGdVX?`*xTh@+x(c7r6icK6yyrQ`SSS=!;L)XJC3Vhf<{geaJ ze?ApX4I_UxunEnlP}@too}~rXnULV1#i$n$9AuuU^S$7Zm^USpE8gcO0`CUDiR|aB zdzLp2uCn-*{LDINZZh?PBeme2(WMqvDp#c(wai<(sBBI5zX~-A$>p~&I}2f!pY>E9 z<+{4F=KPb)H2y!ykSF>hiF~3c(-`n(g4reF+ ztJM5^RY*ZFo~nwVNf-NveiW0BtDa{n zUlH2x-HO=@HL>{dBb6*B6KBt~%4L zg7h|G&Nt7#97O)!zoeoOf#0R?9(jH~`pG~PEc=FxeS`d0RkVcvqszySq9SAcy^wEz-*T=X ze)Q0l=EK=!gx@c=WW6}5drRcZ-)p(1Z+-YIWu(dOF`HZtfwwcs5zFd(5?f);2zF0K z%`}j1PvZLT`PKL_VV}nMmzv(&th|f@gdsU~vt5UJ*Izz;BzSc1fv1x&8&O=ub@L7=S;IA|8hh}wV_51v(eMz@$IX_ zr2eJ!Z{oorER_;R3>ruA_sZ9~PJ5ju8s)R?<+&+CP03Fgl$*$F{QXYFit757B;?ll zKn!H{#%#OTx3k_?%`T_tkLe>m*kBIa`x+Dnv&~KiKW1zyR^WBrk~GqGWsAT32>=8! z#8G+zYg=8YD)IX-!^AlM{Tg1sr5?;R(r`0HkFfq4=b!ueXPW|`1s{Jj_7T{kKh?0EbJQu~LcTd0C}Y{?KB+MR)ABh?C0bfXyo z^*g}hfNJ(^`64f`2`TuXDLfSvQ}-zgzPY+c112vDS^iJWTn^<}R)s1x*1!7vbc~vh z`&4JpHCGN35@U$0nyM+WC5ST6PTs?Q6S`J^;X{lK6yi0Ti<9t zK|K!*ef&<1<6Mbt3#akY&a1e9XRhT&ldRs_;Vn3#6*L#qEB2y^!$@g`Di{XR;t&=h z)?wKswJ8lUok3=ou7Q~;8UaYYlQxsn6wDG z1NIq^+Q}G%o}3@DP{}<+S~gt7MMG@Y1}apegS2gAb(iU)SIA8Yh!Hbh2QpRzy)a+( zkp?eR@$ttDsXf3SL>y$E4i!E6S^WVdpYZ9J-L0AFdb10}34WXG$lz4T*GpgN0=Co@ z=#laRxS5zyTOtPmaezf8r4a5to+dVGm%#tnjQ!pqBM07{03ALc(>ax5>iw(a&CpbA ztqOi0Li!S%myV`uWDp+YA5GmwP%|!*XuA~z1=(QN^HWY76hSNe+{=LiZF#vB8r%;3 z^YYO8n^#{Qc`T|M+qXT_mGAML`XT2| zZCS|NMZJ-aOMn-jsaa{H;*9GL&W;}(0cjbz2qx6brwmd;5iYoq@ZE_Ig}4Fy1~p7t*%${?HWXmb z&UxLb@C6%lig(aRf5s7whXl6Avg4%JsM*8**XI`HzZb>Ny-n& z`EeNq0_5PV1G^nfH8IWw94i}4%?y!w(S85YW8`{EUHfF3;zg7Y9v#3i)BJ;xY79U~ zUig?4*k(jp!^&}``0rT5!LKTjy~D{#09S4`xHH$4s_Z6Y7IGpx@kYU3x|bfGa_8$cyR8+C-MSVcSV{;4s7l9?@EKf=n<}|gP>$A(giwn5RE%&3Cyk=Z&+FaJ-DK$wEQw{7YXwI7u(vN z&hkrB`B)qcq?#H7V+IyQdYfaaoI0Dk;16&0`B93iY0>3LJ#?yg@>)W`u(>MGn#I?I7w1LHSB)eTH9nX{W{eAvRKAk$-!1mZ>Fq-n zfLv(oYhKSz&ZI_=|97hZkUv_P^6NWx@X(tz1tb{RKK&SuzDas`yaD;ikKp}w{J z>oCHlywgTt=aDh8vc76TolxNO1~gm-e21DqevF>W#6c&(@rT7b9R7CfMEkOk<=C!O zhPbR$)l7cT7;wB2P3hqFn%&oyG4w#YuBie_pYucaD=(s0g_& zJ|lvwv^bI$j0lXxR%fZ&4qS_F@eB2UCz?^Nb>S9DfLu0lesH9)Sz^&rPUOidq*II( zksGeGKAHrsQR+&uHymE%idKOim2rr(J2UceS^W!KLCiaCdGzUnD<8tfJ_f($$Ve!gWaM7s)*++yuKCfV!SS>U7y|E(PZ z_M5gAK6{Cs^J_EhW{dGTAz6ON^gRd-;3PLM0i0q(AswiZ+x}P@J>}B!n0cd`E1}Z< zquRF3d-eF6C4+M{VSA<@ZoF%EN~llP#5|o7&j)xKKo*qX^&JdWJSOn4Xy0k1W6je6 zE)HyA-*-MO--+`tvNO=9l<_xI*$KMm=aX(Fq=e3MElp5ZoNjs4bOxTtR|3b>?|$n8 zOw}Pkny?3AE^x9K(2TnI0kUouJYbs!4K*0jGrXQ^w2EBTIoZ`wGsD&t4XFfqGxPvK zzZ|s2X)g^-m_`asKqKKm4L~>z1>>rQCf7;Eb!unxp-%>wf>^Tsg@4XNo}jdRzJN7J zO^iBB1L>XmO&ZSmGRwM5`obYp3YCxy;gAiaB%!XAMQ*I3MyU*!b0$Siv#aXX;duM}91)NA?SkF{PBrq^Ie$|3Q~kV`<#%+4Cg& zh&uMDtfa}Ic|Bw#qnnZu&R?!kSae54f=PN0J=|z^+|H_JP8~9o*OAKHlZGHhZi&We zW1=_Iy4;XE`$0lWJdF-W{q0lb3^Kp^P%Kqz_({3Y@2&xvi_r6Jfjn2iId|Pb%0XH{ zkOxlrhw30Jbrdl@cM<_~i@htkRCP~$lL>F*xKGEmlwE~j`hnBq_2`d5-cL3`Imv~$ zmGvF*-ph=)RIY`R1``okQ@q#Hn2L>lweNB@`Z0=IAzAKh)z_KLV1yDZ37!gVbB=Y+mvHjT^q2 zI8E9;t4RH$Zmn6>`{eRa<`1$eLfrlH*b^{}Y!*)H?d5NE!OC^y8@h8acPb|)NBD~_ zD$eA=d0?6PxsOi{7QJW?9mx-~saPY!Hs?v{H|qj#0cg^;)^CnSUFq?c_DzMVX<8rP zgr!K&Zog&gSu_CNb}`C{qXg=_*l3oyz`t4c{GZqF3fe$*roH(sU7LF zlOW1u3yrlkYrwy1hFnskky>5H?@V0D_W9sA_jogxqFIGV_F((i_~ntibvTzNaH&q@ z%vH`J4xY2gl!UA6M$-gElXXN+Q=prM=6Mt@02ojhg@JeM001)ZH~mREfqde}Tt?Sv z(3N!W&jI;tk)1#>2eQU}*qJf^54uXncjADk>uZDX@t~xL_sAe;E^E91KY*=~CQ$hW zM5Oxi8Nm?CSZ6!LUO+uM-mjjgeJWFDWM6`}Q#!eQHTd0jw(yKI^wUr`5l1IJApF93g@-V2rJaswIs z5R%3#(tLqXt%n}J&fB&1+|#5|KhL&APWO8)MWEavEi#*4Oi;htBo4FC6Nm7Gx-Pj~ zzyupjZt`Fb?0Sgy6j?6cht%!au{UL6NX{OZDMH}V*wQZHfNT>BkePdEaP@JNmPf}P zeX}$)sr7n#74u&8Sn)B~+7XmWfNU+{Y+B5sE=xZxXw><)qFbX*olF|F3*Oj~jh zbUg&cyPF{usM=Y&Q=RIEtJf$i4&vkOMV&zsdDud`uTIwSYi`DKC!o4~ zhr&8Q#<2!}PNMwJu!oc*UZkf5Q2Q&k#nL!AM*d54J}M5y>$C=fi`PoSZFAd-q#G<` z%_<6LfIg#_$6jgHA1z4*$*uTEz}7kIBu2bo=gU?<#Par5cqJ(Ar!m72fC3(AaUevV|p@hf|R$EcB*Qr^s>i7?$`NHc{kz)z|UThuEc1m-k=G=Ve76pz6E`6pl>ghXJVh z@L!)hB*m;YbyZY;_&~A*CqRx*AcOmHoQ#Uf8#vFr`U+u<3|JxUG)*sQdzJu@YR_3V z8vd5f4xt-ctKlfGOnxNE;gpX`W3bj5&Z&RLtMa?PT_0DKYH@OD5x-(U-Abu zgao#et@Q>CtBNHj-dxf%aNb6FP^Qm2+EgI;7a|#NVE@+|7RWySp6K)Sv4*RA>eQ zYezu6wr#CBb>wwO9Rma*3lP2gIq{Pze$vxVpbqfdx6^}Th*cHgp@gu!0DKw|B&mr3 z0(Ci3#HOlD*8BCFAqN%eAeDQ0Ioa)n{JW5!zAb0FRNYSC7x{@oPU}q%n*ZL$xG+xY z0aS5~BdN(U3GB;It}`?PuUa^J7V;R;0CYR%eYAitSm=>^Y#^`No*Xg%M6wH9ot+#c zz*6>|s}Dv4F|`R0>Qe3^zF$=RmamzciCQmf|F@YIKEQ&TYQ}asT+k0eS2g@5$5HC5 z<28*h*HcUpgekB@9=Lp1-IpmqB?RWR^!pfFMQ)(6wgF0MkR4Y$K;LEWwb9J_9y$+h zY&7GRimWSyA3YIqd3xjg7*sV;ODjN_lRR?_JHylZ1%r9x~uH|ml=4i8LG8}0||7cA1aQaJZ};^ILZKRLm0VEog5-_7nRw`_TC~Z^x@c>Zf)9f98f!1Yw{t-p@)dh zOni)MU65&Br|^si@Zf_6$4spzJ|j|G!|nG=yRzg6Y)`3Eq#%=jTGp1f{QBA*wAw=VqTJ-(q*x(VvWaQcsD>e&0tp}mgt%n|2x9E>biu1QR@eZUA2)PV$Kv z1#8kd^GKO4pCch1ASY`j1bH-#`r?lI<`a^MQX}i8K-J3&zlB4LYNoE48Q@~4seolgG;%cqDOcQzNyLypXe|90$BF$V&}~o&j0Stir&Tv7 zuO)7kr-{?ZC%-|&mR;0q&jBy}%$X`8L+jrSM>d?~ure#YA}Fy^Ag{_H|K_7h%lBd_S)Elp(kt4Iqii(6(9wLaC;%SFnMOx5wUwByb+fwd;Ds zK{gfO&Xdr~*C;PTgF&Y0y5AQZ#goU$I+*JGLz)Sgn1$HjzLW`3@bDu zWHSw3W$jy&-|;@i3#iV*5no!|ZWn7$Y4~Cma#%%zldG&)ll&3>CC%BWUet8iA2BR5 zH2{MvT-w9)T+(f;_Q3(9$wR+GRSiWCb|D^Aqybv^xI^QFY0V-~DN)6(W@f5n(?`!q zLA~x4xKlx}@$D1PBgF$O0Gp5n1E0aFA_xFduFtdL^Eb0XQGY!!97WX8FXW3x?&1Z> z6ncmZfQhp9gCk59|N3Sndm+&vzw70^&947)Kt48_SYj^|6e&mQuSkr7R5GG0M9rvu zz9PQq&yaiupgc^8wKS~hV&Y}cvXJAR96F75W^!^x&IN^$d$>RaRHqs;6XIroi#%*U z`+Sx7!-Pbo>q{L8*ibLVS|xj&4>0$gyH!glt{3@8f(b?S_SphHB$Y2xnN$^K+BPlD zH}X>Lig5HTq){$Yr2Ci!V)waUh3tH)J=B9lO$u) z)D=AdniIG2vrz2Ckt^*Z)=SS2sIClU++^68KLDcSGruI{M=rhG=(@!;?AOgn( zK?H27*UNSGvp!9h@^wHbFx%o4lCDpSqG^6KnZ&Eni3NWiquD2*{5_Cc&ud);beHwz zsF#0eLl05jiH{f1>nQvE*2#zuC*B45p+{cK)MzSF3SDD|6VO=&T7Na^byR?o{uKaK zX&IUWb=3n}%`IcEXEauvRNRu(A-I0KLP~HW*n(7++qg^8BUJJS9b*(L7en29>tqhY z9nEWObUBFg?V?_QJT%3eL)1j_R6P;|Cic1@AA0QkL{H_B48RthMHH$Y?SnxYt=qDH z|JCPkZQJl8nQokX87rZ(UXmK`l!j2?f@EQ;!qzh8@e{mXU2t4^X|cERYMbAQ)B8M(dwm+?xR1JS+93)b63HqNNI2 zu}VQRVAG0^FfnBDSDo?0Gz>Q--nf-CSK_x*|1ob{6)&9?O$xG^{|EURG5O}?ulN5a zO#Mpc-qvNZ8&rMjh{;ndnB@p%*A5AbhhH0F3YH#daD)t1=gZZ>SWwy zsBXE~JUdN>i;b4CTsNcW|$)1E%FvzB|(_|CgzKc34-)b$1 z$>=?=5ZhpsSG+HoI*w+wa}`nNC&$63QH=Z$15Ar|!Cb)xA7Hvw7gLK)G{F&y?DA*% zbFVQeUuXGbyT08k^2*&!@)xqbC#&%B${-`&yy-I!+N zHa-Cq{}uSXjvqq#aPA;*=eIOjtoOu`C%Avp!@5oId@l>=gvtt$X2XbP#tQ2^F5$|4 zJm=SyrZo>ihRCst8+#G#J2t>VBJ=OykWkrz$Alydiqkn23d!O#@-?$D6o^5PfFsHM zax{qIC5r<1EMRR{@C7oieu_zVTlJ+BkJp#foqDAm-B`otb(8@QfUdwXPgX*>IX|(;FgKYR+grJINh}9|p02 z#3x_iFV|y6g9iI)S7Er}M+Uv|_r50(>Bh-(5}XZzcAnt*2bCOkGJc^aigh(%(PTxk z|5f9{3mH&U8sTijlYB&xr2>dS2B#Phx-Ws$r&;CpA-1P6@3rRIH`Vd3Vvf?WpBebg zXDLq_)L{`)l)0a7WUa=XO_NjUvvT%k#_tdg*CVEKuGC)J2T$7$vEUy<+q=yA=)dsomb{Y~ zUm4WLzFT^zieELT=O*TMHhhH4&##QodIX<3BM!r5p-#>=z4w=>0(dM8Z6Xw0!K@gXsE*B_LAIx)8NLR z*nLS_XF-z1_kaBCN;ybS?Mk}pL!RRJ0AO*GzP+Wfl+g4?HRHW<|GaXBBF;4&d1B!GBaw0qOqPvxjba~_ww>x$G`mnz3?s0Gxrln z)Lgd?_I3qfJdb{SYI}{!lGOwiBzh~SBX(**j&l?^fU(Bsz&l^XU5jmzuhUK^wJ(|M zB68ZkzCuOVU*=)&@8?V=C{!iO$12?Qrrs4z5(zZww=g}0-_`gWg*+wq(}9A9EwR(h zIz_p8xk-jMcYcaCX!66^$Mju}e;RE**AJQuay^vEBl|hpg=(LmH;{<)2Q*ch7+4@R zdP8^$hm5RmO3*!C*lDmP>lc^V_*i80-F6cya9YHE@;mra|0ej0=12dC(3qz}4hI({ zhL`DHSSA6AN8i2-=vZnr<>BOUmYMw(hh&>pG(YIv>+PV9uf)R)rYbJq7%$Da?vVF{ zKmIcLpC>qtmplZdC_$DW5(zBgRC#gQ1#DWHZGr-8U!z0{vI4R`pA*Qq-wlJNjlUHf zpDdoEPQc^CPRSTukQ#=5LYj#(Cj~m}C5<;@EUsg`5OtSx;1wSN3~}+{LWR*R5&HuR z^zle!W=1negYaxe5;pp4j*T}8+q$0Oq#==C^9M7qGK}mD1Nmo9&w)0TMkvZN=H6&5 z-03~@N7@At0pIUHBP+kB#k3eNMspvc*32gwSV#jk067xqdsfIn(#{~}(t`CSLf}*b z8Ci@06hxK*eYcxH4B}TsCfr81X&m(Wh#)+LO#%|+2vmPagTtwDUeNRM&Zz#sR@oY2 zpbxSLR5%J$o|@$(Q8vT+4n zKWTdER$joC^aq0EFgd$Fq5rxODNm#WkQ}Gdo8t6jZt)<=tpsZ7X#5#`!%;}*A=og( zSX&0TjC&t2j*3<1TxWB*5qMk5tnTE+pe~t{m)+dJ zGqU}Crop0E;(UqvLDkSv&RZF?nlg=#JZXsJ^28ylZSznD!&6PG!SZ=3@eHU3K)-7^_F8u@cmbS4|aIjnC*$*T`igQ8i2_{{h4(pJXgI za&mAd+cq__ReiS0;cuF(57C(EdW|I*fv#LGH_Tp+?%e(R?vT z?kckI=WZ1hic%dWHcA89|898sYLu-)>WPKu*N2gZ5g8EqUk;qQf-Js0HFu z6Ajo7^_*7Kd!`X4XX@iDAdyNi#i>F?v(`a?NBN)@nt3D+K3ONo|FE>+e;Ib=WV>k7 z%k_{Ut}ja0cLDZq1a(&lnvTpDo}8Yq|Eh~nyMFXd(V514-Sx+tHVy0o&d1u;y z-t@6L$Qpc4ZIMC;-z>-?!ZfK2LW{b#0=QZ(82^2+Fb&J=iXi5wJdv=;yz#7v)-I zPHe{kq! z%cP;Gp)W~ElV&)T=QKZ;n(;!=NGT8$j4uDI7;o5PK+ZE%0J z^zr=J($7tMUsV4N07xp?GHp-&)l)J)aF`4BijT`H6io$2oGtyb{d}eRTeIz=kmHw$ zTFIEjMrK4FB+T$(o*kKAo>zvvr>e_*77}V0dR=UjN*AGSNbO$Xw`P@J>d2F+z6g;P z71=kYey83wERHpb3ZxEKK^?GYji%+w_n}qfJ%dTssUs8{0Xh^YLSWZzvj>QCX&jjW z5s!VL)qp&hX|h%9U(N|FKfKs3M?`Stb84I16+PBF!#B;=V@`G2dwJ|~a$xc+*!5A^ zTt+ha0Gih6BfjC|R@nny;Qj|k+!-~+CGN+T-$B34mnBt0)(Qv9W+OmCbY*@<7|<6%H{k`w+V;07tjIC8+kXF8bJ%{i!H)=ghSvK+^IOIJVnihCG{hY z<151vyJ0gusF6?5h&qBJ2kKlh(2|YoK3$B9F{Kv`Q|-LQO$wm2%~?+aOaKeQnQJ)# z8TYQ~sg8WCKrv0a`tI1pUk%kSuRtFT*0-88Uz050sx|Y+)X$l&;sivuVN$CAx!=4o zj9($kX0zjuk&p2uP2(k6hw$Nua~hc17~S1W*2+-%f#Zc$kxW~NA5cfa+aiIk9q3b# zLh4|hCSTXAsm>3l6#}3WbHH*TVCy@BG~DCq>6$+264)cqOhit@GsOF2%jEsnI6lz9 zWYrs}xrY>MG4Dx|_rh1N`^Fdl%L(slFkrw7QsHEp7-fZi#pV=fB#9GU+pA5&N}SoQ z7}3uM8`I2iGU6&Uw1f-;c0Wuakyo zOR5>@6ZUFN}b;)39Ad`&~oxiVB{kDRR$QM!JL({{E13a=RwM=}JT2D}e zwl?xXFDE^AlU5lS%CDjC4=K9M@@zC%u`nOb1_3>TiR4b|;&_R%8D0<9L|jV7M`MG5 znJ#hxJR!$CAu2Xj{0My>2R8FXuHu%OLm~nvQ@>2H(`X@P2YM5&PIiKnQVTm;&Y)+r z5|u{ss1Isle6a>Nc3gwmhNSt3#nF7$epO9I`?B)H;D?Y4Z3c6vK-AsT@Ips(<^iMM%-bcGonMLwbr$Bk+55#l=L}Ek2*8~h`=aZ_xA>R3gQN81+7BZju zW|2@E^7+Q%aj9mk`PUOs%fStfw_>PNx%r=5P?un5C-pFbVY`rS2PZ0Q?Xlk+?( z2hT;^){(obcf3RBNKHhp@1jnAOoi(0wREoWf2@E{f&|2j`CzT$ldQ`Ei6)bp5wI^ z{&T7axme8CbsemnmOouDAK&@!P|eg;1u&e{_r3Ret*6_yosih5VBa*e24Idog`A8;n-2sRP3%TwGI#kJCc>bk2Tjlude6B;1}5ODl^Q#)@+b&4 zdH~PG1a<%&RJn2+a=v_dni)6B;2d~3a0YNRHBEbvs(|m)9sS*t3qj-&uN#0gAh^9%eE&AXGBh$mkLDqi1nykTv8_! zHU3YQsxp;sE=er4R-8(c_QoBVd%e7XQg8fBQqA?h_gS|WFP5hI82!H{BbJ>5yS}|6 zS1tNS(ZNYcS|zAow`HG{+S@ZvAWiea|D4_$RR>BC1+okPGnc@Y0x4PyRR|>jQ!W*1 zoa$XcxSX^DxhKh%h@-eVX#QivX=Ok_{v}%gsAT7W@H#n;gHuvr>uAD8M)a#P9>V5h zZZaLR95y3qfikvKWX|jxFue&7v{tcGmIL2=3pG(kZ@)AhWQrh^W^TG&?^+GX)H>o1 zH4m|EKykXXrcpW9#P3iY&Yt&7cah9chuOOZmtXyi-U4En_xHw^T0;9`kf*6wFMnQ4KEc-bIUk(rEs9?!YF!{N z4l!X(-e}yfC*cQxDH^{G+bhxuPQM;((<7(+eQJ3ZZsdh=8oaIS3;MdbTX0igkl?>* zuz~HwO0+92IJ6xUJoVQM(_eFM2R6IW&DeAS54(5pKF8ivJT(bLDf8Nq*rC(}HGhBV z{bw)1J8oRL;Lk0m+R6z6jU(GY(6g9>KMVH}a$tg#ebQ`VvJg^HSn+|+LUU;m3h~jV zaZ5}5!AAbg*RBGRN(S2M*#MLy9elcKEU!c36ypGpr{Uh}seTI}i!?c-rB}NzmS$9t z#v!BM!Dz&`EzzxsNYhXi8@&}Y0!9GM@=?CZHd0p%+05bh44Cd4{s_E52`{QTrj>|^u) zsjgr#lboOvB+XYc%*#3sz+2U3 zZN(Q(taZP?8|p<|D1oPW7mAQ{rLFA0Zf8GgS|sTKly zXnod2-_1nBhMDnm@si^#rUF@eW=$2wtW8Kqmi)+@&Xp#9D4ZNYhZM&TTjjdKT0?!1 z`7Hiqm*itix5n5uNbKG zbXgC7)sBpMqEplI*YE=fckLkOx+c9j{eHG!g6rRd{<8F)_z|Avn!u@yeDI>*(uBQ6 z;OO*9Y-hgfQUi_!^Do=Vf6%0iV=N7k#|o5W7c@!8;w)1at)i|7>bKX96g3;jKPUB) zbO=hI-icjS;cbeBw=f{8G?bd5f#Mq?9C_Jx-d)5-1Lo6qc{k%9)3;oxBd4;xw+f^- zi%@@D{lo>5Xri&jmAohLa?l)7AfRqqG8_oF}b)&bwSdP!&tJSNT5*O35ZNGROWZ&uo(~l}~^vmu5~}Smnxx zh)w`www0alZWE$5OYZI39IF*>=JBw*oEo3K^dIT8EvmeI&7=EF=Of1cS`6KY4eP(F@pQ)7UkLqW-ZB-}jNWiM%f+&FH%Htv$Y+du zGk8Clg+9vKpo9?2Nky96v(O|k2=#WJ77$%G8lXFB0)-;K(cBftC>LG=GV&JX(TA*k zw%u3AjDvH6<;LS-LR$bqTnV3hI`rUcjKkY>D&P&sF29@sVrsep2QryJRHGJ)7>fh}~ao5LW<=2=t=s3J1OHVzK2evK!iN%pDR86u-{B#T5LB!sO=GbheGNZ|H{ z4~v(UXPUJ_+#=CwprICIyza~>PS7>fXf9NmFwP4}VBRIC(v3>B5rs{rXsU@CAlOXq zWJuLz>NInNt`gK4$Dj(}A{^ME!*>cvH@5$mx;I;re->8rTPC) z+J~l|t^yL75$-m1$I`we(lG*MF_k?wA$Dk99RD#u*rB)dW$c;~9>cML|dxP$Ax>>5yuF@Hd|o zTtL2xqZ!|$c`V)Kf(ZP|KkOtnFc#)lnV^j}?x-y*^$w1OB~2NBA#%t<_|{yeI=3#S z6MFhwlZeXs`kjGTS1^vES^|}IVH+KaROreto1jHnJa|E2`PE|Q93Q1-b470_qGQQs zqZ+~>AOsTgMkYy20{$QW^jA}8#)EwEb1G+(^%x$Ux;bUxnyKur#UE|fEMxDwpxa?U z$2?QefR5lIrAO)G&m1!y*+Mu}+1;5Vzw6u>R%)M$XNQ^%k*5pLjH(gZK3mhMoe`A( zGjEXl(<0ALMA)gUBhQF;U~ZexpEUKhLwiOj8&a@&b}j{96%8fua^+X73KwN zSq4%ns6V`5G5~8p3&lhyy0sE|Dt;`b*%Mfwl`h~OQc>9iuofQD^V!zZ$Dt)?Mz*}p z9u5R;tKuss53<|8y48q<)odzO0_$sC1W~D21kk$yvuN#1s)+zB99o%JQ$CD>prqWB zci_6RYerm}u49^<_^*K-im~Q!eoTG!Op1?K{&d@g_@z7m@5e%8p3M_C2hbFQ#gU50P^1H z%$uwHr*f}}QtWoXx;VJ@iJCV6#w%bBP8JKcc@6zwdgm*6IrgXkuLl+6K=%Q27uBh4 z|R8R$1SIwO`Zp_b2uW-P!*H-s=2>5M~yN6&cieg#RLcKiXPevAZjl2Ty>*huIp z1z5FI0bXFcIEDU$^9z(Pl(hOf-T)aG7m6TIX^0>*jiG^&^<9(=U^Q2`wxT)rWl~L> z25Dy(Tc3P9Cl83~a>5G(Z=D~<*rVw!MVbRA_zkgVn)nQFR8HKd&d*n*QD~jcxqkKy zqJ;&8CtLX?0}_P)nTCU$%qO z7TXQ3fxQNegku2Bf<}tfXv&t`L9&4dB|i6-i8Y$<4>4!5d?V;tV~yN8_pbE8ps*tKYz& z%xig2@c=zQ!oSRDE36x=^EB*fMjej&Zc#@zOZhVmdSVB5DR8*V6$K5vuJbTUL-lFw zt9S}T8`vYh`mR~tJ&C4e^q8-+Y72nq2idtOeo~L%!Kz7jMCPU6i;RxDfk@eC!j|1K z!ktERS*qqTTRAzEfG&fwz6+y_3ZcG=FV%Ed2u`4)syWldRRT?_d2X|l_?wjdB^!JS zujwWliQcfeqSR&YpTrU<=eTO|YwPZT@IbZE@1@)*wY35SFQEq-%0;P(;F%NRsv3AC zkWj41DB}P!dR`!nhB7o!T>3 z8I*TsbRP^lv0t!~q15f+PrkYGQK?l>v`?_aiAP3bBeVRVRvN(mJ{~8xo27XFFSXAt!Yr7ZcLbXEgBlfw{WF~LaIhna!+6t?H z*!qa&1+3Fi(md3>9{3j!I`$dbSg>>X52hUh9fHVdU>h^yt^6j-4gfCJ($j{?}OoMHSBx_$afgWY#W{fz|QlTH&F1a;;DcBMRC6PDAT&Gvlo#+lxO~SNr<>$k5n%2sjuR0)Ale1Kjw>j*H>^n zaKFd=4B|!ye&ItV16Pu;;1Ti2KwMquB;2RlycbcR8KEZMp5oHvGyMJYBZjSB*~aSX zj;wd;n&6=v(nWg^Nau}>C5?lPwRdX2FU45SMje_?_JV>;F&OMe=b1t0PRtD`wM6HT zho7KpxOpGhGObERh-3n>{YT#QRn*0(=srAsy`K58$&lbHz|8= z=C1-V{?_1}v!Qm+w=cZ=<=bjRBp7TfY|AuFyqC{^fifQeexj8Z!+|@ZBlsHFnM={U)G&%HZr& zCX9KSnTg;WSY+x%?epMz!Edd4u-^ww#?`%odugzoDC4(R<;-^Q6s+v|aP7zgP!SLf zQ$F#(3nYwbCcPRziK^03%QTGKZi;ey*fr|$j3W6Xcj*t-Z4IKaPiVa87|n3*UVD7V zjH7oD|6fE8w3Rf{+fLWUj^73R!U%oRH899WlOZ=M@NZFpE#6I zcDjlXS47pTKGo&QNZn0PK@0e#SvYq#$*SOWasxf^_>jX>)9_xZ-P0pE$?dRnOrE+k zNRyzN?OL>E`-zQ{^#O%F-DjnuW-G*wMC7(jp0bysHTk6%O zN>$Wi)aq(z*w_hzF^{>-?|Ra&;TgN;l(J8W%9#Nhg_=EtTnEpW*nys1JHCI=B^lUW z`_S@}x4Ly`+Rv-l|G&}RAZhXF9HP1X`Z;l$ajl~&fgyC=&H?EPc5jp?>@k3f;{bh}Ac-m?K zP|E?v(6J$NRmYQe-l8!36yX3N>K>OOVK687!SwmYk8HGAg;oOO;DA27f6UBHKOh=G zdLJw=JtA(8{0;6tbh;iR@6?r{cID<0lf>(3ek^!2Fic$xgfm}-v8IQ|TR!QAW};I6 zqx7^M!}9m{P7|OH$!69p73mLZ-`waVxghG5PccZuG-XA+Kygsw#2Tpxr{NsW)`l!>kDRe%Kr%@F7z2)s!IBG$W$-JkF#8)geuyYaIr}j040qr%$Sa^MxE&z=cl^Ob>>1p`xU~ zQ-}`ULj!v#TfXpH?-wj09-;W4w0hWSWAi=W_xF@H1$MiLP!M$i#K-J+Ds;>dMw}yq z%ce>L>$@%&9g2aBS2SoQwC|8>@R5A<*PtHdiD<^MSEDUlxLfX@?U{dr1J8KpAM)0N z++GV!s-g=#8ff}Zrho&+lV-Me17fgz9^D%+Mv^qYbcNC7UkWXd&hh|i2aIn4qp zGqCU=?OQXRxF<2oR9C1*-XM!rY_WZGAjp2i)+3l>5m)>-(5)sGohQj*v%_dTk-TaC zxc{zP3MQxhkv!bcfW3C7uh-FweBwK_3x3eF*I(E_c}3jI@3qnm1$WRCFVC`Vcl1J&d~4F;GkE(*BISJx1t!5!3HHUNEc zkD4Ka5EdbZ%>e{Fp{=il3L&QI#-;DgbOjS1q}qao9_f>|$5|JcPiNhL@m(Y@rWh_S zF1*stL9lE|%Ra!w^W5vD52(6i-)NraqZTL5UuQ6girr#2q|f4AOa<(?7M@|VSh_4h z5?-5n06o8*9_~wZG!hb8+`(3uxNf6BS?-8oCN^Q~`~>u=82Zj`A=LAK>6epxd=+X- zd3mg}7Bu!@ytTs4r9Y^{&<YLGRncfWW3`hq&K_p9ovKeop=V*1>xqvUc4k7V>J%0a~XmrM7DL5tI^QORPK2y zk*X!qJvep-3@EuI%@K|N52m&bjiyl13LKwif;Y<4_j;%WCOgiwA|04fg^x%XoBzB>Jn)*#k1C%5t~D# zs%9Iv#^B~Ob)6;K7p$WL2Mg_N;+O|(E41_}XV8m{`Fz33Mgg9r^Zue9?hLw9 z`=a*l{aI;Z^H|twV^?pU1}rucW6*rtz8d z>(lnDNGbB>ASI?^e;-;w6Hqgw&Pp;_z*2eP{FdiH$-+U=j0C^XB$AlnzcH`)c0`~y z(ShP{{gs|S2U24>2}p`g4p5vwXg!@pCzyO&l9 zyba-u&b#j1cpF5q8R#UbFx*il8jxR{Pz6GFSotv7+u57cp&MGQ5IZ1#4F)-eCEBeM zT(X@9WMaoh^UehLB?9G`A)|F@N_&+AHQ4!pP|xKrDb)$)PcuqNH&gL$z&84G2_JZ1 z>g>Oa*PzZa7it}I^f-$JQjMl-p5@=zesQC8#vA-z<&VC#_skBkrgZxf0b%GYj-w&8 z^flK|Cx7A@{-XT(gHjM8d@1yaDZ~;b)sm=~7iP7UEc$sO8W0;%HDM(Oweyqu_hl`lRTobgc{*6NL!>x!R+d=|49;lJdFiH4Ic1u& z3a^-cmAT2ARjpmH3)o+E?bMKCkqE!N*Tv175uabP>qD|$=j*Df)dTN)ir2flxA{Iu zP7BKI2kAAX#3K@7S5a$3fJPJsp}&OI?LjTYzWWySRp!;|AO#11c&1?a1pwU?_sVwW zum)d42dv68Wep+2ST;Ywp0EiJyu#Czq+(uq)ZoUfy3deFytH}p2iU>T@#0LzR`vN& zbU{>5G|c{>`#UI7tWP)!-H9>S*#UN}y4ofi0n<8!-l->8a!IreTt8W=N`XMYUa)nr zzXTKEEcfAR0IZ&(jq)GI$w6{irrS#dq_$GA6^OnKh~Lw(_P4soxIN^0KH^0oMrfC) zIquMl=@%m*VXHCJe^uEiKUNS_1GXVQ$EmGSkxs$KZKZJtWKS)f(wVm2GWft?vru)q zbj~cD{+MZ|$abXdB;$&0U3}5?Wxgru`N1S0-hB09SNeI%^Z-RP=D~~eh!23$)?!Gr zmM7)ATlzgm9emFc*b~8{v!%&8QFjsioRdH)tR~NM(>_dkyYSat-^(!{FxidDi$!~# z6`KZ50Jm%FzJNLi8tzngUY9pF`=`@2hf0THrrDRE)*J#PfVqV(=U4q4fYupY(%GE8 zaj3NP!)r<*nJczzYQBJ**2ws4-9+<3ErqKS#Io(in16%lzcE*PVyOzy>J$-{FglewH~=Mr3XMd=&ZRofN@6*5YO9pv1pUKm?iD1$0CpLk z`KT3w2(OfkqVq9AEqj=UKwn=LU#D{AiUZG!})ajRrk+%^V(5E>J~Spwo45y{M(BrXuuoSUP`5fXH@8 zzwy38@HM?p#J1y?Ca03!oh{laN()3Jzwoca>p8a*zUyQeSUm>CS;W{UdG1*aDw^xS z4}MM$oAB2ce#zy~@U86%D1oa8O7x?)$-Tk=uxB5Cw|$nX=ee6k4Ov}PuubT5Y_dUQ zgBll2{sNDHOfVC(HzBXx>P!x!of;!}1BaJ#$)S+~FL*&)*10fEmGAQr1Lo0#|abZID zTTn$y!~tu0q|B$n*r7tA25v1!i(Rrti_9}&5gmF%u89Pi)2Q`#vSz1V@dJXmi9ikX zA;Y_^UrC5o*xXuOY4iZd)_)5Ho}W@SzeI!Fv~;cxeTDc$?JcYj)HPRf*E+n&g1ee( zvH#fJ6cY(_3wOhB93FxUJOY^2>9A5VtPKfgrW&2JsnP~bprC|h1D?UDBTS${DZP6B zh3u76QoY(I+iU`hPmr~s8Mb9k_efB1o$kf3oe=Z7I$fxVs0G1s4Bv7@y1)WKj#s;g zH@5c!7jSWlR2C$r&X`kWX37`rM2}P-U z*@4&$0s~Bj!T-gco3-ivXjY}S3TD{T{zgX;Zmu%7;KJKN?NFY1Ry!BY5A3g`qUZ`{ z{Gp&M4upl1O;Atx5*i9BxGaj_Qe|L18d5gt6ULM+O+ulYY{ViXpst!_;1F#Vho}$T zdkngRA?o&nSQS?D;Gim>oUU(Sre+uj3Gfu>s6R(mavYTLG&{t9a?c6MKhP|2gs(hN zGGzvXn^e+V9W;fy+pFu;{;_bVB_N{od7%@#M%gIvrdftfaY5)NvAl9u7~r*itM~xhOL1ofV5Om)!vk z6b&|`GLZB&e7hHWQo)*T89++8aol68Zy6sFuK0rvpzl^Y%>=u^Z)4l(qE@e6(@jTB z^WWc zh=_d3MTe_um4XZV1cjKG*DoLDvU;IU*(JEK;2cV9rIQ_5j45WnF}n9Y4-oMz|8hnd zzSnpaPLhv&RYKE@86DJb=Ly7&r{vou2$n_#>t9^ESUH1-@DCU@Xybb4x}H1Z%~N6P zJNy8FW_u=gsI(p$QmQnJV8~)#w=5#8aFRASe zd>Dp!Q2?0b9>%r$Gd*(U7Z5VXz?*e{SkTS}>2V%%hPY0RL&`~xFv0n&v%|`G+UEl1 zz84y{xMr3O)?#e6E2C%wX{e2i#)&i+4N|lk*5rZkf@p@YQf3`f&y1%ryd$V`y=r>;VgeKAmou$+P_0;RUT~#8t059j|IOQ*<;uzA1=}9>i z=f=;O+9N^7;0NI20KJueT7g{vv*v+n)y)Jm0W)wkoveb zXcl!?NYGX;TZBk*MGI0!qo1D+lot}FYgub`Y^vQ#Pv-pLi*7VcMg#t_6J1v(!EjA*Lb)xa)Z?xy1W8t!|TQ8;=~LdN;3@wK0FbF zVDvbxE}+iyDQNaon?6mS^IBPoXJfDtRwk{eH99OuK&s=t@A^2wKGM_yuN#&&`3LfoLaslKoh%d#@lQ5vV+BUVXUK3aE~~c+ij;${kFB;r(uuXC?OW z9K*H5V?pE<9Bbqxdn)RRD5mcDQkj^;!DIyY>S@*6jmr7=Q)xXLpsw20L0!z+lBjDr zDHys6?cgoa=tzxmOgJ-5BrYJ60?}=h!o%rHiigmH`sh7dp+v3efZ(`x@@(~v9AXpjo_w%p3{!9 zB?xiwu}BckVL~h5n6rgZBq?v_NX%iOwiBQ&aKlzHp7RwJP|Jlyh0A=X z;qZ{y^}B#}aQd@Twc-i3bTp_?1d4Aer!2(G#V5imBrb@0rzY*X+MnPMllv(3*xZxr z==oQ16V!c&#`J^6bVH4wV?d>xO2EEoP9xPok$8nyNj5_*Q-?@FotRex3hg*uA29fT zry;`7XjBdiW-S>t_R39;M%mVKfD7Rn2R2lwx4{eE%!vm(%CBVChphhAxKxx`% zq%Pehn+xbN)S0+?n$9Tx7zTJRcJX>}{xsjm*vlK;v}n-Xo4UO1k!{mjSeSZa-aSW2 zEM@Qn)}>LE>NfQFya5LEq%5WIQw!+n?M4GS)Bn{KdsHCL`b&X;QA5Sbe#YkOTb(Fq z06LCMs0?c6=vWkS@^L`hbkhDD_)sKP8-Qk^$W|KUbLD4yEJA;(3ZM_yUB`#`!5W(( z7&gBw&ti=O1)bRe^S~~0$J_Hd)Qe>Yg(F)D$_&?|TO4KA$EiVn)yr6>9r2_zgg6mp zqQl@!BV5=8QVmvKdM;hoP^wX4nn~5zDZ6PAMY)^&3$mzPyUn{^CaT+Ti4Mu&O;su^ zGPT0cGX2agm8In{)2YSY?Wv6m&qA#^=z^AJoWuQ-)W?x7ctYX%l(>A$@k5UHLYV@c z+I*h+D3pXq6}|?P)wIfdu#7P{Nq80qi+q;i)%-_^G>B{>CDW#qHn4;W z#(oe+&NS(X>**veG45Fx5laW?n_a70T9Om{GFyn=&6j=*|S-T@-`XXN7}I6T>eT$G%8C zlnPX7_CQc;dGUf0{3~J;0?N6>Id7?nY7z}R5=kYiv^fX;|Da>F5>v9Y3KsXl24b{-ALesV@WUN|5m(R@QD2i$v6GiZ?`g!+xg^% z5=E^C>4dN9xW6_(ufsz<-Jg`@&(}4+gVh@-j}E2G?R^@P#=~CjvQC}gD~5vQ=cJzIOj+w`CV%(ZXea$>m6Vpq>OoS9q}*t!jvY zU_iweodB{l)(cz|A`E159}aW@KgA;z4arg4U7n{st}FL64EOK-2V?=9f`*25-gnD- zNnp;Wfw{Fp)as~$8Cf(@_=M~+7a_EJo|QvY6rGLhqh zL5@479}_-ANI=6FzCrL85EdNOJJADRkNP;->181q_Z(JAYA8@nqrQ4O zQu&Qj?kfV*Maq%B>baArtnILv@R^6;*Kf-ZkC_T%o%?x-=ZN6!zbMjBR@+w!Cp!q{ zG9+5ugUsp_w*6WYc$nAx>b{y4y#G0>(CNHRUNs$5uPr7-01fh~cPrHZ6hZ7#M{-6} zwWw3Df$a6o{1%rd?1h1REL5hR>%jzj_6MjAN5>p=pv12UfJ^VmowU?A-$!Xwy2TG)(5ZAk++IwSav`>GT`8Q#S z7Dmy&8qHysd_fp9zl-S;91`pqf3k{qVx|3;AK5<^KjzHi3$QB8`K(u!uG+_f%{D3Snr*Nm?qpGb1(IEy4zi^qmfqV0g6)M2bYru@zGCHk#@?z& zh1NAhDJ}Jnsuk=C$imy~XH}p5^UYGOv4hA} z6{@FCalCwCB)>f+R8Yx>av+elWf~R#YY;?=QKI$N@cpTr_$5D$vjs{?CTfEmdkwH& z2}0%eiKe(%l@yi9+r?4mP&&j%2x*5^V`{zUo*58TYIou-8nsqtw*e(YIb>q_yTb#M zL0MDFH(rdc;dknIN)85tO$9VQxWaz|SerYH$b+Ao_?7f5=fe8gx;xHd9XnrwZ9_v^ zd~ZQi-`|bXX`zwg>h=B(1|rr3dT_#Y1I)IxF+q?_ole>{2-%XEGIStaHm}P19_6;q zR9{v;`qU6nnGm10mxJ2nFr5?x@#6%iswMTVy0mh4^2pP^0jDYTdpaiwy0ubckwxSe z18ZVlZjgx$kZ}3DumgThgUh5Z$DS{lQ+tM{Lb!I`^kE{lEiT7i*$%OElt;3PvJIJC z<>byqpJkoOZ);d%V|B-$g8FVJ!bLnZ$Vc)&&!#%{y*JYviBlTC)T8*l!!BP>(9X)m zKHyZBI02mCFK0OsysBG13he)mcl&ijs7xt);+?x^QB6^^8!RV<19$KrMBZ?TDnI6W$h#kp}(xrbr1r zi1Xp$x6WnM3T{K{O%Aa^DKZ*@C;Wy*7MaL!iGZ z==w{C8rTHU2@fchy39iDGs{P@87v9NLUKmOw=n~0zw8fJ)S8`iP{wMoWXYI+uF}kb@Oj zL%*bos0vT_3AIqO&pTybM)s9>;hHuH9H1>74CHa=1rkiV6xls2kFiPdKO+J+Rf6z| zH)@`k>QxQM`<8YG0=5n_O0(4B2uPl>dON6?qNb+Pd-yF<3f38uijL>kf0^T`-B=FP zurshE2w+e(J-zTP0I84D#QJe62iZnvA>S(N@m@|3v1_}t@0ytp{PF}d3<~)40y{nF z*znBupYCgj##PZ}w(E9hma>cxz|~~ypb^6kgc~Q}xq8rPjxv`*lO6|* zR8301u%}DIq89}?4D|0%^?huxPhg3$bih6tXDfB1)6o}tnt8VAi zMV~Tv6+o^R;o(X4C%=jM@P|CoeNix+(T+8d%B|BZGZ2zy8#rH zGS8b1_^3h2@m)H(Jd9aiV6nVM=7YQI+Mg>Tx){QySjs)9=vau;MHQWI+KppiF8 zS91^u>2kZ?;ZJe`*Xe3;s^2`=cc-QRnF=;8zbeFiSoKBJA z{i*QVQLz(h=kftqTp3~=*@-}Gfc5Hy%z`tZ-Q{-FW+ymTy|5bfu0W-Hy0d-r=R`wV z^li`>9iBKOdfphj>n>b@zd)I)ScXLmv*QK%-6CDZfU5@ia?GDXAm&NGK)VkXF0P#T z)v?pax(IIv((-Nio|b#XhH-dC4Tq!&o7Ii>)WR*-veG3Ch$B1B>dwQ1)~QOvu0+-o ztfyo}$wr*!r&Vy{!NvJP{7nXuOeOi%TZd?8dGgKfGEa%P&qn8(90;uI*`I2QxhzSY zgT{4%b4UXum>@5(q+E;2Or-l=$g6%zsxrgJ4uGn-G`P~}uLZmIO{YIz&d!=$uIkWK zHKUINyKGsfG_6rnOScbM_OCvbhiC730jcPA%K1~<^k~YL1|oc&q99-CR^_7R&P{tOMbg4Yf zpB(H}Z$)w}7@S0?Gcs^u?3W!y?W0YM4IiHh>s-D@7}K@EK%{_aM+J5sz#B<}#5S|D z<%Kls1@^$w-i{0^bAoN%r95adSnvJ=fm+56jdwrO*ub|fyA*o?{U~8q@O4ll>w8Zd z9_r_vU7@Wn?CDvZw*J-elgSmVRu2u30MJX(fLCGxFkU!~sOMRCP-YIQLoHAti6U@# zp`@xp6Hh4lxb(46)!!JGMzu^CTRa7@b3xs53{9Zl2I2`dTxOs-(s^Sj9sD(!20(C% zPQhs=B)r3(bkzl^m8riFAKlQD=}toqRbM+aDv+we4(@~O4Hl~?F*1)&N^StJFZXZl z?6ws1V&*#X-ml_v`?gW`E`uu3hF=H7`arDB_h!2_k=-k>~BO(}Qw1*v_$*$ph$Iho|_ zz{~73<@QGD#NHOFb{vWFe>(7xQ&bzWX-B1pJkTBYpeBcq+nwfjP%|APm?^MSkakIl zCm>{-{5DJI&jpD=O5j!`~R@;--SZr z(6R!c<77`O)AG|t<6rlG@d>7%wb=u`O!f^S`(sm)KbTv+`CW=FufVn!^;dUJ=Ky-h z%IMTLvyNU=oV2GL+d{`1otpH@C3H%jszQ*~U#V-l7*JkRM3@S=%|%w#9Squ2zY()` z0sXpJCTW1qKS4X#b{O#7a-U?G)I8k&1`CEK6^c3&VwZV9AUVXN03OlLKXScEW7j!| zQusGI*uL7Csug;(w&E2gdHQ4zC#T|ea4bgSNVSI3Al^gHRwbyg&U!Y}P@)m3OIL9E zsgE*p1mA$1b#kt5c*bayCVSfX$G?aW7UF!gh$X6okmDZ4ON5V7PIp(6PSUnwS^H}H!bl#3k8+A}gEl=UzrUzNUsV7v&Gl0FAqzsTPsrXIm$dE>E%NMtP6;GU z`~?;{LC$F~FbK**ajV#}u&b)x#Ua3_XwF^u!xt5n~j(@N? z^YBLrqbvZLey`MZX!{K>@MEp*r};m9dsSmyc)edgl$)FzdK`58#DQMJ3ge9aZm3IH z7R#9^P5FICs1?b(W%@b~Z8Sx25pnJ=LQJGJVC{^&L#dCgC&JYmT|63yy%W*H5rBt_Ffs$NL2uCv;wEI5>7z zyZ;Q5`X#CLgrk;@4dFYO=7-`pC!)jF(xg*M!;iX;>w#FD1Jz&m&&@z>BWfe|ifSAc zIpu2y1COK0A4406Z06|3Y`J@Pi+~6{!o2vf)A`wJLRe)q**-uW+utjn zJVPh|kyu1-z+$^-KMz zmc~C)8-*_NyOo)li5hT@sf@YLb#fMw7-m6Pq|n=u+;mVHBCLb5(aL;>hr;6r8mbRIzWt|SBsG>3wMU|WMx zUx_cx)Ul%Y`AU))w9tf|D)7s-X|S&ye6zL=j06E=7gH4VkIE+%F%Cz$n|A)DW-m4n zf1b^^rL)Tm_?*KK12)K(t@&DKMBGRx+%O|bGN$und8PiF6Q>Rj!k2TU0wG1^C}+|% z=B_T?@R@q1r;+66LFX1L;`=FU?CFH?@&ugC#X1q`1LpO|6mn;Dk2lR3Q8y`-Iii{k zbmJlu*WS_b`yS^cYZ~y$d$KF=cEN@oE}FS7wQK>D4p42%m5bN5mjLQ?57!U&>k(qu zU*HKP*eCUpOkfu@0%cOL4}7si3QSMH%VXB0^)V zJ$di9B|6=;3E(q1HiR%9c2m~+MXs@)_vrm{9vshR#Nf`O`m}FQO;BY1n-pT z93Ws|{Y(Jrz?LbcMJAec0)8#|m*|BTz=Se9#+3nCgr}j#k?d$ZcCFX|Lx3>_L~uCT zNj-()_lJJKZ(s&|@9|rIl{EGKZN0-ki00YWJn+R|#;+SVr@@A-;RSQZ&?e9ifXU8VpQ&>RB=_N1e;pu0yWjvM)_?&# zta`GsBARer3h+V#l~XdXlK$RjjV(83*0D!`YPP<7#8RGLg9e+5HHFMcWOtARVpcky z_{r(QPF^xKDlM~5bBw7SlqZ?MN+b=tU!tnXF*U@=q@J(62dH4I9s(%Pu_y6>KSC>d z?yd-zz;rtJt-rW?1385{P!7-3q32e0f3+7xRgUaPbcz$%37@v*Tei$lH(zK76K5|Y z$%=+pF>@BRoY-`z;x3*cvIAh4X8&ewlGJN;Zix#q>1;JH6DsP_>l0#}Y9C>&YPw#> z=eNkcT#cA`kU?P2At12*=kBR{yJ6JHl{#U;r6K&OLHIAIk+K1$_XZ=dH1MVzG)=aK z@dl5p+9Pn#bekHXOQdE91IE!$a;&hHs!q!h?ft zUDh7no_Oz*&IZbJKCX=^1z|Q}JE3}DHjzOA2s+AZ)U%il%`+V;QWp}MB;96BO*l5N z#>nbUMV+ViYXPr+Kv(f=tI$tU;JLd{2GO~9vscNupsu*nRQoadBgu9EBTUu09n^0w zeN8GEuU$)o3hFSn3Q9s)`n|<2qd5^ClK3iqDZ08jd&%syXUGZ>4MOs0)&p@g6@SaK zjlm7wjtx5JVG^)D9mhyrQoS^-6Op znV-DWx7r=#dC2YpUAj!XE$TbjeG(_wPuL-6E)aCNL$EnPWf!VaIqo?op^cK_)gLG1 z2wxYdlQFOL3iRt;o54~A6Pk^n4&HQm!WM!+6mk+~ixrwXPiWvX`g8oO-I zu>2P3NT_`Ri&L?cYlTGu|Il}tyEH!~L~cp5KvV5tsvZ=cvLnW=@tw}K5>@VHm!8Uuf?zPKZSsyI zLKNW9{=U_E1}_i+!LbkkIQ1m7eVATa)Ng76ppEhxXP`lO9pb}4r?!SQ0RZFoH5?Oy z>_|~P#33}q0}EHzHGo`g)jx9|tJ&YwL)M9vB9^eQ`rhEWso%mi4WA(}>xVL(2P@#2 z$0%owG=0XZB-E@+rU5oFgL_H9W(C`DG^kcH2%MN{T-@wvr~-}1iu*fa$vMnXS;HbT zNePC$E2?Rn^w`~}qdVP{^tcGv4bKCibv^bGn3&&=xj}^Wlg0sU7BZkzsyrNP$p=k& zaIbsc&oP2{fqdjdGh$)JTL3=im9fnqxutOc`u){DGKYuxUY&cmhksMQ$`tz9-=Os3 z{Bd{GcVVpBT1pAW_iyq~rqcI6)u(*^lu0}pb^EW+2V6l#)h}s2s`9I9`r+QkpVzxu zLYbPAPG>eDU_XkWCfZhCqv7V#a?j@jbY}{SqH!*z#05K}xBWHtxU+ITM*Vcw_cZJ~ zbedd`eo`VeYR4_fUuY$0mtpR_iuTDh>eemrBQI7l(DekLDu}0^5?By*Y1RZy9nFA_D(FTX{EY^lYnstZi4zrmQ)#Y2 zRuOzbck1ZU^}xTY!A6An@qyUGyPRT1tkcb(x60v$;E2@!k>+E!18~6Q1azG#S?=Fl z#b0ByQBhCxfye*g@-Zgm__KZNbjbQL_Ylk;vJv)`J=4Se7swIF7n5Kf(qpCAnYWRl zJ5*DM+-I?Ky?f9?W&atE(<{x*I!_QQg>m+nxZzbCAFwoAK^K6;3ryWLaM~p#*+InOYN+=$*tutudA`42y&h1yXB92esA?BX{veY_WIBE+59#TdT!hn}#4Y39l(9~1nMGIdLhFqY;ep7u9 zlkdLEP$(5y+QoaRYNBeeVn>?t4W?fan#vV>F?tk7r^mUjS6_?0A zhBH#mW&auSRuLhC)9tt2r2u8xc~oz0By8OzD{t@j(Uwc6diPKE9B(>Z!Z;#L&4szT z;3iJjsLuNtG>Jc{4Nk7zCNSYM3;avqb=76svTN9cCacsg0~M*eWovWs!}emKk0bBp z0xJ=_41*7Mo;s^c!+Z919j69haq6>~r&WHB;05(5qNkpZT2E$6?JGk}J!=3R{%REV zdc}W4C^^gFH=siWKiA|cO+MPsDUVMj-u_?O-b6W$9Lo~LzW5RmB&E#io}L+d|Nl|% znf2?=N>L;u!WZnooXh!!l9iQGq8N0CUz`OFoC}=sqbT-f^q2iAFk?*(GqtOYVfK37 zDVP@@2@Tts1W`m92d7w2?F9JIQ)3sH{Qh>8e5`-` zS8^ln$+jo1J~Ye%0Q87&*{go;1+Ipo*Y?+~_}b zw|G1of3uJ!6^z+Vo~H&nb$c9giDF5Eaa$)lE`P(%${2YOx0I%&DX^t7+sv5dg)fi- z6gLCF`d9yIY!&=PIj~gwvMG%M<&3+8GQVor3Z29amo{ug-1Ogr` zeEurNT37y;cK)Bmg0_QO)pO+YZwC;VtNGq9aqgJay0V>RRX(HrLIDjXA%J_Tj3 zbuBwA#F_Li%qi0%p_=e~A|2?DAsM%)e)>#3WKI-M%-Q+5jHi^gF2?vO^mB&a9C22G zuj10JzX*5A;7}s-FF(bBi7n3~smY%JO+d20KkRHR^~&i`dAw|tJ1kFMtIx0CzDYe& z;I4{&2UVFfw9w!r=@_>pkFC^&EoK4I)vMstY1xZ-D7s{sli`o6-KNc)X?>ZjT;|E4 z?BmAj*UJ3rx6!5!2l;Wv`T}1)V^Fm3HgIWSd{roEVo*4;CTaou!F0SqC|HaMlxVvQ zLEGMrUtCa#Fq_n;q@Gp9-PBZ9$SEkg_}LY-JZcAwr%L3h%8lYxXjV&VuRg&QFo6-S zAV!B_Q1BbnVNvR1g4;xOoU}uSRnPg}bs5wsZp_dPIgw`j~>+I%GocoANqCBgUeq zbB!FnryMX*EULv8xAcXZc`ck3V9<%-17%3Y{?1RzqqW!GPgIQIsHy``Jo?CvOu2Cm z(o5US+M&nw;Fz4M7)S466;w;{na+36RuLPD%-aj#nzN^qR%}zF)3S?aefhk{GNn=) z?S##{k?Il6rhZ_ci=v#8pzTk%OTM4H9xG-#qYph<(9ZY{YN5WhtI?>tRUEmVy6r;9 zG6Qq8dV84ip`IVq`-sVxt(RLZiDD%wiUZojoS)PJBtx+S?HqNvFK|Ymy&RUhVt|0Q zmFuoXXb=anbL$@Fg`ePFKw8P9Eo&-t5*?OUJ50lFK2-(%OqddsFuV%80Vgk)z@p!? z4>=XVw>s294G(6av~H+0=(iy4&49+)bL#1xw&SWPHK;DWFEvY5Fy5Glkx6zG3)!ci z4R8xPD}m1k1}A?s;5i;9?EnDM!nu_J&&<@*_VZM2qHW!AOFc%2>^N*2s1N?kZYZX? zN(|KpZ@}`r7)|jsOwhY^=S83#j!w%TJFPb2zY5$kG%%=HQ$3~xEesW9(zBqVAua*z z!iJP$?q!T7JKL$r#9|n2xo1+LOe{6V_!s}OdA=GV`ZOhquU!{-FS&JLF>Vy^1w(mkg5S!33&&&)#evO4@6`8Xp{QB`5&nrP z%Zl>lAT(x2FItp0`Zp>{j^Nz}_ozp@G%t-ibdw456!ZOsk|}zl!(kjn-Nc!l7Sy2` z?zSoxoXa~is9)?Iv8yxEmLL~2|kGo|MyT7fnMlUg8(>$mQDu|;i?~(>u?kx$L)vWjncdp zow6z1cb%>4=9moM!<2P26q=VlBPKYgev;khW~fsm)S!a`5w^8xlBvC=LIF;?f1h*a z)a4H-O6w7jJQm*qw3odE~|6Spz4k5cPr2(!+4>fSsDJ26OAyIp?WmYga+jkJ#CY6bbleH$Yb>KiNg^T|Rp zSv-~f3jKxQCux`u8};UKHSf&|C z^ZHoa0R==`kX;2P32O4YXnFO^?cn6MLI2h9%_&;%W|^P5mYN9{gmHt`@RbC>1o+mA zqob0zz<|15Xql;Xf?Q!cJE^ROYdh?OViwoxIgkYdKd9kr_3(M1sDbeswN8VQyQ!_9 zq*po-cA@}M*nq`2s^;Kec`WmZA41{BolKKRrvUuAMth1(u67Ghs2~gQJ4Vsr7P$zv z&^^`03ibB}=NPU`nluI3P&-1IDMCd6Khp)64q=;X6VT|?obda_wx?DDAo&UA2DIGZ zp)XAU$zKlDN8d&@oS6sDzx8^1s9!dKh{tPA zTBrF3b=q9EJpQ+Q@5xX74Ak0OFU$!1iYTKrsM3K~U@_cO%3uF}oXN0P+Mym{k2EIK z0XjG@l9h|sb8*M+J`WbdPOIN#Nz6=P7Z#=q3@lU@5b3|YO>4|YKcUJE1{@Q`LN&?! zLmW?Ir&oS4`B@i0fY1lc!BE6@*W&#==sO^r0I-X-&!*JCzlY8a%kPuc;-tL7? z1{@;bSqeqP;jHaC2*Q+Y$(wdkWYZlA0)n{wxlvvEr-7 zvlK=R;_aHjJa7+|@8YUNkbqz|*YwgjohD$jfg!^Yx>6D*EUAhFtS_ik z>M6y~_eUP8alYQR4L8t|?5V>>rqrd^~&?*(6I@DCPM_ zdpm92@)!KSqPXA6C!1ptm6doHwzh!kjMSfs*8e`eqE$$+xUG-CQ^B>&X9M~MKqJV^;l!zz5Vw{(lg=mCbm+1x>8)x) zQV`w9S~Iuv%pyK}qD+7MZ6z$DM2x|p`MnwQ37<`UEc=AfpD1m#3|T|oE{hizJm$+T zKX=;g?)wRaMsG4hc}foWI#sOZsi^TYmw&3rk`Akn`yI+0ZmM1DD=9TO8-UkA9VUXO z(M1t^YmdrSL$SP2FQW9t4|b1g96(>~;FfoqOCqf8|*@hmiuiXTc3Zl54wYCqP2Q_4F4cqgPb zrctbY&P!+1V{2lc)(&bVa3<1S0*%Y8v0nqCOLbSP^{3i^9#L%bAqvCPh5KqSv*yZ1C(p_fSMIvJ zd@r#>9Y{kdu}iG&`~uXYiYQ1Cv}5S4qVJHlP)BN_qYKUR9e4qT>v5vx_a=M=*E7fn zE60$iQ4|cP2q!w8TrmJ38sQARIcbf<-qBQs1&K7*8k@Tq8Wt4fnxTU(ym(j6a_L{V zlwP`erL@-zbT+&)=%3aCQ=|+5-H!xqsr&TXo0Z-Qrf#)`3ex6j0-a!#yuL8v`%3xs z-znP{kht1e<&XYVL*1mVrg;_n4M2f;2;=i~+FeVX$42`OavmOHwMP~96O<%B+juRg ze3&J}g4c$6hr#+AiI* z0%0UmCti(lj6>q)9NPwF5?HDi+Ac-?V8_`k^)+ae_QvHM4hNf9F+sFvc&PP0yIs%6*B*4$~IIPaz|5LF)H6_Az`^MX2+w|Nxj;0bkkPSluJ zO4=;!s5LZXoUF;ymVP_qzF_h`Ww6rn_0>RggD;w(6Y8xLlo(()yxHlFyig1zCy$I18kRY_>-arZyK0=F%A z*s`RPv*FdN#a?Ch|E{0Dl*3+UYiM)Es70m*I6*PJ2eH9rMgwzb&-8JKxUX8ccI&>~ z40~k3=(OB2{Iah0o`F6kTR&u9`hOEFiyL}V0Hp2@IR=Jn6CLO!>VmKAMaxqD>eI`Jcb^MxV`*<+t4FC zuBb$YfpwHL4ZUR!YBx_E%?sntKSnB;8)Cwj9uP8>4OiY2oroA##_x1!Az{5sG`-Ss z#A>cR_z+!Akt<(-K46bADDON%uZ@NW?v+skcmL%4JfY?^jBYxH7y?h~fMGTflzw(k zCW>q`6d@w&+ z>j64wORF*FX*zvl%AP2P^uqABt5_+{z9|Mb5VYyM;lA8rKJD|fa?@0XV=;a7#_ zTb_IKlqxAJN8PHDro+%{nvoLxJBNTw6RkV3tAv2HM$(Hm-w^!6NA-3KN()6%`paQlR99&jediJt(Zdt=D&8wPKA-dtO8E; zKpW~t%?a~Vz;1ONtjjRy9l}}TnH>>`aY?YG|G`f$cuiXhF|xo+TuwPn)z}pbE{;04 zY@@HJ=$<7H)G*u~dV;QkM#JS)mY^N()a>O-=WxC8%27whp-@-GULS!iA2u6E%cr58 z*_AD*ET|LALgu`AyroO_rpmsL`@%ECu{uNiFV$A5=+%eG(>(|j#U0=&XUa1L&0Uxh zkJohqvRFDwq98j0EoB!v9@UIDeKG-tdbF5dT@@q&3kAxW-(ETc>@4&u5%N`an9vM$ zoqNB`-3vu=^Qu6y*o(o0sMM(NrSL#UwmvzS5Z|{zM8k0u+`FO7IoR)YC(TL?R+7oE z)RdLP=ro2<4-Ciw4`PIJqnqVzG$Fv~O;|bs?>^4uELdw-IkW%xG{WQ z)#6)ZY=-!S4ve_5nqWWXNo|4S-f>-GW_+3=)FCZnK#RdZWhKwj`q&d31O&2zTE)jm zP>1`#g`ar{`;=<{n?2g3+$nUB2fol6%%ReP9|BYg&nU*LX1fTe6g^SKkb%k?H~ikc z4&_1H_c1^8)E0IrW0hG6%HE&h7;g+zBZ-i5`PU;pa$|E{!k$BU!91m34#Db9XYt(pn} zq99be&YnZZz~U&{w<%6K{7T1`vg~&SV24WW7YQd=5`U%8ThBnGMR5lc1fT)1tQrnY z_wFP9IpqIHYE|^=IL)mej*Go9%9XZ^HZahPf9jSd!A|gpq@L5K<@Qd!o)rBw z#$I}!dJxAd;B>=rQl40mdg+Nj)M?-;4T#gmRLW{W05{4#Hq_it&~D-fOP>_I@ZC=2 z*b7A`!#u46&Y&N(<2?ZTFqI^T4eVy@2fd@!v^d1fSSCUHW8RIA@MIFI$932_3u3Ul zr9I5S`a);b@lE33jMoWN*Cs?Mbkeu#6!7x@stG=M`gRzR2;sS>Q=A*6>Hmv~OOpO;7* zux#6a=3tiNpk%Jg4&&0)M^fNlK|SIq+!!e2gv+CxbFeiYtp@1zRb|Z7I6-_#AnR!b zAY8xEc4EywslRvm-6@0QY;qd_;a}p3X9is+%oL#h`P&OMjL5OIdt;*@bvW9h-cfkhkNS((Cuhq9Crc-}#d}zWqpsONboScNX^Erw8q#iZ{vI<+3S1j0cdi({!)y#Of51wAhNs{V4(

    IpZLK$ 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%0DR6-&)QPW@{l9@h;;o3M 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 z z&lGci@Ui@`5T2TrxYVAK<<0nhcRkq?xTJ=BXa8Gh8*hUKRFly|&|kan&&bnnUS)H( z*^csN6v`~UXWRT4RgT`hxt1~U_OHfmZx0u`j-@}`^|2)Oz0?wawY-~$K6xlqXStrr zlf`5ifPDCyOnG}c=+4mwc=T`P?BGjm9L>Jab*&2^_C&E_5AJ<1st!E;S8Z9xY|9=` zWe>6e!<`frP`^aYk) z>F3WxxUf+1qFkpmJlXl;;cf22*QEjT6ICE{x~`T#N~=@T{tqeB*Qf2}XXEEjODRv| z@DCd4jI-ZmAZP9F(<&k#o>s!~!6u&O@ms%b@*Az7^&~~Y7QNl~)hXxGN*{Dd0P$~G zFTmYVWJgosl{0a^m@|1N9ii3DtHD*OU}KYfTertb`n#!odf+`|zpbTtZ6>FL$)I^L ziU!(HSckiHWLI&OYVW#k96kSwH9f7P`q#!rNzKj!x1X9yT=s#Gy@*%MW`6Qt)c<)@ z-1Qqb*}o=*tS-H6eITosyMDj>?&Fu&UZkuHOWy8l$1kO!L3**7!|Csr?z{2_q6cT+ zhu?(#KPuN78$4;H&3NdqzMM$u`20`<54yfHADC35A4=iwxcL1o>dPS&zF7+5JMRm^ z%@?|t&hJJW>GwCkKy_g$hZ!uGalAZAngoB`4X!H$_s^L2zez{k$?1VDeQeBgLR0O} zpOilw{AK?h{T-bL{&4jc9L+99L^Y=;O3{8Qg`JBal#`cd)>1UEy*sR_VhTGdr)-q5 zu@mYOG58cK{u}YP<&Wad{qL(PkE{ER*PMvGKZeV-JU8Um(QQ0AX>Uv(s~)HI4D6W7 za=fTZFAb`y5e;|{ZaeGF3CY(hW5uIhpyT>;PL{gTX1xx_<=bZ_JUoevO6-Mh@uxT(Zh8DL z4T~oai7VgU;^4;~b?jufosuP8gKX zkox%Hojnaj<5jf`Zi?$a#g|VGe&3za(OLES5}%o?Rb_b!o^yBrvdh@9<`E#~&&*3k^Pjfu`eCu5f@CDD#v*V|Ic?I_M zuW%J)>37fD^Z9vi%r~}Di6mcD(ZefosNIB~O4`%+hu~fM)8Xd(55i#g<;)J{!y|qB z^VddT6Gs&!OOpO%GL-_QN0_JpDmFwVZe&-9ai_MAqiJN4SUg}0Tn@ZKhQP$N#(1Dr zP$w#N&M4~~q1FTuDvYiK`WIpXwNeC2UVXl?rEajFpMPt-)1T4T`{(gMtNW$)%nHj% z{m@V8_xZ!+%)a{yoP6w_Z(w9>mG=T$UcI@|q=Ra4IcqJePo*x2N7D3s=e@z&@!=;w z7SPq=&_CCX9dT)_gTsQ<$!wHNCeHg8c)qiTtHo6Fo5ASn`s`S$H>G{I`?AlCqto%5 zMb2M787doezJ8#at$8G->n$D?H>=2RBl3FRWrZl})K$-m9k4~qWN zt#CJ}0BdH|H_zXK-PekH`ZTN$&UU~44?9wcUj0C@NwYwzd6$XbYE1rt@qb8%*tnO>lfat(pN2S zlq8r&Pd?o5_O~~e^~Chw{`jfAm=B|`e!K7dH(Twz*?BCJWH3q!@SJr=rarudL6^m! z{TDulDPKuSV5J)HT5|D{8h4hRX@Latt`tPz8+QI zi}!B!eW%FX%HY-m3zq7Pp>B0LoOSht!R#WBmWPT{MIE`6^o zchWa?SX6DDZk3n&OhU6K(TM!H>6i0#^S&PFFE4M8Pa0&~gWdcoAV=}Eyk95Xw7y?K z;oR1PAw%Jj(O>>qP(JU(^f$6;#QV&0qf>52>HS=mRZqX&B{*6t)`zq>n*`eE)4&>} zU(k_1g@4tTH`;k9FT;ChZC-x7U3=1Z$D6Nq)?uBEX7zG6HQ`rx|79(^zbuoW0=a(R z`mFhEz`^_v+dcNrs&8UFohmy=Ec^JwhueykYsK)q#VmIQ0b9;nt2lvLg9RC=tHjv5 z%j<&^y_$W)mUsElDS2yMys9a>jsErc=)Tw%!o8`X$g+o|-4EyO zK0N-g_&9sgJ-M7FhxK>!{ky}_RtX08R^dMUTrAcHPm^$WB;MUi8alZjooDa=e~#X> zSCT71(+lryMx^(7^ZHw!Mbqr=;TWw}vnxo#0)l>({)Hgu+X%DJVn#F5J#04FB&%3e zw{BgZ-e*K)c<+?dABe<>i1WVBgUEBv+dWIJ@~=gYU)cs2LB}O?RR$G#(91Fqn_awK z!PC-Q5eJXS!HBC72H8H`VY+?U5uQfV=OUfXfCSnd`3=~?=BakBfNV6$wy@c4TH6a| zDtT-lK!IIhW!KlN*LawHS~q`*6$EKpyCScDkhqG#b>_=9ku+bbKP(SC)7{Z!HYqp0 zI8@`)%_Fj)0w^YCxE7ClBf6Z>h~1bi1bSC)Ciyi~3)6l=DmrPwm0o#Gh==P%+*yJ| zcKrgeQg1K7b@CTZ=HW5{9+mps{28#!|w<`t%qHF`qKh_flHsM zW&Uan(ykaWdIgSurv+vBX+v}^5O{ugr>$I)I`49Sjy%P(lZPisNTBE{7sR+oT}V1_ zy90esJxGx!Syflnl%-2tvw2dpRY}j$Z3AxD!L0~e{3^UvJcL>e&1fmq3&eb#R29c6 zq4eQt1QGDer$vMP1S35Nb=I)w&6$tRVfjg;_+j!`Bny4n%ARZLO&8AG7%0(V%ma6c zJJ_1n$$KY#uX{Yq4%^QW{>97uTaDy@H(2h5;@AC?@_%BjLvH{fjt=GJbyC6*XgC)- zDnR!R*iCKl+2*L~qo)1sZG{I;vMuLLNpU-~wzl693bX!p+n$O}bGhF3q-SBh1d7a> zUfxvgpC^=Htts3NpN-@~oNqD+eR(*G9rJ7p7oQPZCKZ49zJA{8ziF(kJ2(^4vcb~*hUnI&KLcP5^O#2hMvihnr{}?%Q4OlJj zsIzpV@(olzfLe8F{Iu*|cYJFxJ8%hfU1bx6j9~v^D{_h6LS@O++wB>ui!a|4-hkf~ z=}PLPQ1|lKZEJF(SsHF%tU6+ohnV{r3{0VZ`aWzlX*a*S(_bENYKy7?*O1N@T)Sw5 z8dQ*EvKQCkQ*Jiyh_ zB06R~h{HV2@Ugdkb9}toma7K)Dv536-{09=NhYph-9+sk^5tQEn&XuY;=@71`*#=G zeK&yE?JeRS(TMb7R$LI+{Y8dh$yQdDTYcU*+6D(?>SEUX9p<@Zn!-R1;TmU$(ca9# zRX{1>Ms2j#MiPa2@vo&1?m;PXYT?~F-!K+0BW2?=Dcu}7M%p4Wg`N6k5uW?c zv7L9hz@A*L$ssshw^#Ul3r)f@b+VCk(kO@>^}%_TQ@DhFpK&=w14jsS;U8sE7S*31 z%}qypVxe(Zmk>0YH6-yzv%R~Z<>7F_4G5Y!T)#`~Q5wlBBk_!zVwsr7fN+lpmm;ah zNYe^a>;3LJskaH(N}epY%!|hpoQFihTa1tNj1$iNGS!)$UZ23Pij|z`+y&!&TY%?` z??C75&QEmW$k$4VF1$g_M9EeP|70i7YyVACCG0VQY^cWoBaHPLK&ohz^fz-u|2deY z#vyd|VEL!{k;V>pvjv-R61#3%6A9q+@loB0&d{#s$0?fcop04zGw!h4e^L{(rc;dA zGoM16xCh)0EAtXrwmf-z`(fl{LE*3ZSNIZaRgCt2J|y{v-=ui`D*u`T4&%V`eq*kx zj(&Lfb-{yL)b{=BFE8$x*0uDbznOs)kx_rn%#3B>TO?l^P_lmu4b|#=ptf=fDgm>e7!*X@abc&4tkS=9no9{&&W0Bcz)eDiO6NC z5uGfCPT3myFXAWFtWGGXh(vaUxf#a1JPS29H|9baTrzk9!CRVKuBfmK_?{Q1~yRooJs8}5|xvc4>aHoh{On{XiVh5n%HmAxwF`$82n^E;YS*X3um zXWaX=l-Z@f9K6hFloOklkf9gWyiAvIb`&SZDXc)k5AtR*(V)RgP}OxVwWE z2-W zs_nN&Z~Qqj!3xr=bUOH0h7p#@!R0X)OnxFXEq~4KK~dd13YnlEc0$l$%T0%MvqQA$ z52D+?c|5hIJaFMVNfS0wb@u5vE}cwrbqd^VNP7nY#lT4Ug>$6QHH-!wgeI?|%97v# zauH`(=Xgmhk9H&$^G+{{!r2lPZDOcw+h>Unu3E)HC~P?`pd-9<5~ti|nBp=>ZcN_7vHK(?1!_U}sE z9}eH^i*hy5r{@mkkD(vdR#?Q*a(a?^JNxLlY~vj5?^epYj`c!3g_1bAJa}y5A2hRQ zzMQf)k|fJZ31Zl?8Me+}UCvK3L|Gjpw{V%OHN!u)vyX&^ibDq(LsfvZ)JowP{?Ph= z+too$$|^q|X1i%8+s%#--APGlE(_L(sy;oj)DQF_@5cekUR22nHzF5zexX8cR~hI` zk!rOzv&QHtJ%0d43XbzSWp)7u0@_Fevtxn@1 z5Rj9@%AZ=&f;#pW)U%r&ZX^&eHNGoiv^=3`;paME7{la&fmrSEbT@$?r`?jFXS;~^ zJvdXrdMz2=vodzFErq#P*cM1|POL%Awe=59bqP;+6QP+-ov?YPJR^#;Q&P~XRJeCD zmH=$l+o{RZk^rrl+a&G+bU^`*S^S)4<+t$gyR~|(+u$FF zBAczFZIT4%868&)ePfw-N6|fUsGJ?pC%?c)TmsGia4x+eCs_BS4@D=dOg%(*a4>pZ z!L}-&_F?3aJ1Hl>kXxqz`FmmWUWLv#46yknE~8sKKqZifC%4x&C3!^lr`ob3HmbMw?ei!=qFkRMKK&Eh2G<` z4^I(u?M$L1$na9jTPkDr+3p>eqpN$D!(FWwr5~RhH-$)IdgI&#{Y`mi;?eT?+AY8QKNxd>9r=R4t2CSr8#V*v9(moM z{^BlWV~3tuNX-;#2XS-<{AJ%^UV&ME8Rm78`Rg|KH2GfGyYQoC-CtY8#xtKUhA2du zdE2$z@``h-hK(Ki-NV**9Kako+v*H`4#+VGb7)inDih#a*L33>MH-TnZ2iMADeQSKgpX^7iHdeT`jb02aZ$~{#?SlaQZ-zfH$$B3K7Zd7rq{>)X?8d$vFwZv6i zd+%2LR!LIhjZ(4;J4ro?u|d>g8o5&ZS&US*V<6RFq8s{jA5R50^+QJ3 z@^C_XnG>*4(50&tENr#rTuF)wAALp0cKkM&v>id%DGU=kGbqhMJrr2Bx{O4SHA##u zvZIYjp@15(t5T^*h~<@A=y98ZT_?D@?Q$Bv^iY7oc4@iSwg2hx+Gc%{*@AO?iRR&Z zpZx7z6QI+%Tt18KU&^7e-l)48ao|qs8FaC17l9SykuL7*bDC zZCn1JFrZK>?zH<;6oeAIZW>{|`E9Bo(#*o;vTbF`ICb=|;LfKME}T%I_on0$3BOv* z#GAxjtXDq`iSmfUpTz*!c4N;K&<*|r?hGnny3`^mSPCuJJ9!PiGFrm!K2nR`D;taZ zcC9*iU*S4q=rwW*z9*>$?l(c;1!{R*3>hetvH{IeWaa2=)aIKYt?|Mu60H;N;N2nT z$nM*%Orlq)aa%UlNA_#%p?d~GaSqRPqlZaLY&X6Uc0rc*GEF&p`w`h&&-mxUvY+?d zG~%{Xcb&vSa3cdmq5hGL9$fIXeM_P&R9~iK=@L?y`_O-uO-B5xc>3FcxL0{PGv#Lg zFjhK4KV2aTDwVfcZSI_qd8ye*h;5ZE&GOx_X5w3Iyk3Ex0amfsZQZ)6gL63T&|N2{ z;UgL~yy-a{yBVq8_|c04Vv9J&K`re_`apTrr*5d-E1r|weNgkCO!_^?>oC^1aNcv) zUBeQTH9v{q+@&^GVQ)hk&H`^2vC87}5K`oM2sR}yYTME5o;TNCsDTW{+0N3MXV$Ufn$T?{qv@?xxNL$$krNhWZIT@dR*oJ5vvB2&m zfZ}TQ4nzA(j%fw-B4^p;;FA@cEf;!IEkMs=LgP!bBpms+O{eS1`Gn$WptS?a(#D<1 z>0S#a1_U*|Y0Tu~3jG~K(C9w@Q~KR0th|k07G)wkGPDMH)oMX{NM&n}p%F4^dg+Pb z&TGYW9D;e&twJ)W^PX0rO;ce>DR)7tjLwCAP{y_EPiu9L(YQ8 z*?5J!bAK_3t)#*RCyW17_8UCSu#aG(>P&n`73)C|bZdV45%xatCr1=mn}<3MTv%HP zfM*+sx~j*;wqP5EXET~tENEr8|EcNCas02z$HZsFN5*KDS(hnt)u1pQhcSyk#0ds8 zn6V-CrxW=KVD(K3IOnqH2&EQa8UmBo9`ft(r*RPTs`}#lT(d?$PT)? zx6g}u2qq(wy^qmfdenRE8gn0m_KvJz^fFn$QlEf(DcS8=1~XBuEHJryy+MlUXoQ88 zL8KmlxPn{N>NLVagi6mz!t!=w(T6+~Co6VIyyC1(!gT1SP$fr3*=YNDbAxZIa@g%H z1o+n0@R;Z^TcH->K8Q>`4~{Z_KR(YS>QKs)1fIt>f&984%b`^w4J|5RLK7piD6nIk zObvhQL^u`UNYeoVBa|sh6?`WHFy@CG{@<)_6nPMULdWb6+b!O`R-Pv*xCIVWY`5V2 zd#+fPe!0qHBKXe*@+GE^*~5$*ceKXp)#1GwmCoL(By4w&3W1VFEAmmcMOcQE+#5DZ z4?Y@7b-{igF22Cam)=m#=8crT?x3gf_~AD@17;Wc6lQ$6e8nBjtVMMNjG{PJzkdJp zwKF~Gg9W8!P1VZirob2b3x7qIT6gbDs=fmi2QeaehM4BQP9z>Y4*QuIc z`9&+l@+cntScMM@o4-6~x+)Afyid^xhZaeX59M9JH{x}r?0Ar!tBjx{5g_cAO(Z>N zW*lD1QwvUf6bqs>P((^gvE8k|792konRQhtg{GU(4`P-s;T+5?j#d3u_^|0g$%5NU-W zM4K>U-c&xu`i=LU@r*j3H_Et3fISxa1`n!f;Xm$>wN=pRK)PI=8>^U5wZ*Os0FO6@ zn0%LarYrPm!u)c0n&Hnj>l1FY{niV~Wa*B>E4-A6^b@SGE>`ek8Vw5cpXqHaM;E*J zEt+qWB@T3<&4NUq3#rN6oMgQCd$I;(PtQNV;}`!{jL-dLKfWWNK6WZW>=n8|FZi2( zy1L3t{LozPiG-hLpOqf&4tED=ip~cYRoywlj2Z5gcU(7$72B>0W;3#4@WX+-*N`5ME#H{BW$u1tG~9Xx2Lh5po-4T^&!%K@Pz?K?5x!D#_~U0Bmlw zJ%}ax@U0R!CoufQ)PzMn?IOpk@P!olQ2&D*ZK!pT($+tP?}*iZL+m*!QKDGE7$4Bl zF0cj(+%6P%8O0v0(=q^?>NzA_^wwBur5A1%?JqiBkZ&vp%zft~o-GsKLZQ2fTcCwP z(S8?>r=xy$N}Ezq24}@~F1(#*&5Vec*C?rqz*48cSmZwU*AP4`%}uz%kmbm#HWR|V zrW(}dS&=0a{V})OF7hd}H9%m(VjsFV^bX}M@K9nq2X~0h(c!N#ty{PX4zX)z#J!WU6 zn|xiCil~ya9?rWvs9y3^1Q9SFOiPBbP8?~tRLguuBdx|7?XICSidaRPZ}%(-9DDG_ z=Fmrs4sXPT`|!Nj0`cWQt__`r*sB5PL2=up_D}JRQdGXIHso^sX7LDrTIsE7zibwZ zYaQpPRL z5biR~X}bC*r@ww{N#IY&vYDkImKB(=_8JD!uNJ!qW4xUP$%~KbT2LXi(mr5^&>gi= zFu>vg2LH>Iyls0;X}LWn`#!x(d$UcU=-2PwqR8JVasVye;db@XYp`m;3Jo8)CvV?B zNn*N<|6A6^vx4#cuYg!-V4|rTCiDGh&RCBO=a-wXMLs?9BKbw#LwbFfzgJ2r2iKfu zbwevoo_rxNzCqvSn1xj#NtG5ei#k68vC6ksMXf6!?JzyLzEkl1IgJ=pNP2 znZmVV2&!kSjWYGU=x)TeDd5%yCISa@z~4!olJm76KLKUg)Fx)v*)CEY{BT}-zB;Qs zN5+Le{t1z%*-I9FXgWEFJ(PdDY#OIq7yeGDV#+QrzFlkK)Sk>yMc$lm%`C1SYnaX? z$%gPy5N$peA$Om8dgrkgJ;1I{c<&=ii)D5D?2(7bj$8eU>J z67}iGDKBJd4c8%?jTc^?|IMalh10ma-JALDWvhNpK>T?=$j63vHMvq7Ao0dI`ieSw z;hy|@L`oh-2imN3`aQx|lcEG95FVaEW}$&9tqe?B6WAup4Kjq=Xb?zUURNNW5%m3Auy!bIfT|BoB7B(rOg%*|0*~x^pWKTlzLP1Pf z`fBDpiX;?wrO%BEs?-3|0xtvPlG-Y#T+>a`2yn9@vf>v8I<;sf45s9A;rGTMKgcW} z37VUlEYLAd6Gq|_`Ub6y988IUPwFS4EBP>%go-1q>iF^K(V_3*nOuFnp+;y@v4rJBr{M7wb{(-8j2V3Aw8$JzgD7CjmUa@TXRHVc z)?uN=VP2zTu-^Julitk4vfnL;SK)Y_lseg~|Zv4fOrASm~h1eHq1rnzyX1Xf4_lp=oh!$q2PF{nOLbtUw>}n5BzD zij>YU*p)E;wI$i!;IB^d)}-(-m}ox`^TJWIw21elXV?N+chsOM1QARpDx{8xtKS4M~NA8S)p0Bay zjHASiZcJ^v)>&hZn=G5BC{`)YqLpFwD3dLjTQ5#BeT<#sf)<$Va$a!+&wii|SSPPj zKw%+F@g(Iek~!*g%o3rQcoByX%QR}}?7&_hKkW(MQZe{u6K|LgIY$i@87G_t>HXzH zDIWi3_ljyAaB0!V@(%0EH)*$WG;d&*fT&7!-@N)5eMk03$O6cOe|f+#s-z!6C;V~! zatR^4wiysIWz36h>L~$y8@md~R@(JM-&Sbf+Tak6Xlp)Y0==Q0&Wt#jY;V;_D_sw^ z>_MvrRtphB-f53r$0|G8@4y>0ah>zRMp_1R22K`Yd-sOMGuwl_4We!YAkCyr(@2Ae zZ+U86j3UPopU413K)Sz$EocCBNWk;||DYS38PZD93+~1Pyj#UNQT|B$gje#fsmEdx z1~J6$eAelQ6c7ITM}Y(#e|D%8u_{}Q#yPck*q|&iV!kb+C#bZ(_kvJ~E z*@7!uL-yD2Pll+{d4(n8a8`_JHcT>$@jkX1V;AFwl^AFK2fKiqZTtdz2W9~lP-|qZ z)@RDs&3ilYX>b13zhUI}q0T>`e=SQSTnDy|Ceb8!u{%S{0OMST$fd8qX?rqbM9vn_ z`rv_om4K<~69B>PFpypsFgj_$q2A(L&Exqh%+nDV_Ol{QAilro?}^)sA*hP_23luA zvf#M^gKdEX6nB8>?OiYo4BLD)sr$^%N2ko(xn^8|aH^R5n#2f!Um|txAV8j*EVEXK3T|**g{1l|Vk0b#K z6Q^v%-r`H)ucBeqrdl|aoNyaO(^9&h6xdbksl3`WG<|uqc7SY?-KOXaASoxV zCGF2`#Iw>>El!YOSu7D_mt_tC>WXXt~+8{GFt3s?Zv*S|zp#?kU3lMD;nW!>UG+Qc?QR34J=%qUokKBkhKePX% z-VYwPg-eGe$JTkZI-JAGVKmMC3kijnMDXvh4y@ikT|ctiQ11epOKrHw`lLw|0PwBm35KM<=*6pcSTQQLLTkqCG+NN50T@sR&4^$c%av0UGg^Z`2v-{DD9qr z9+5cW^tNogz34sMuHo3KCx(6}p{B9}G;yb7gAxv&ib|8+9hm}o^!RZd*Vsc~<(!su z0k>uBaa?Ml8<|Y<(ndVv(wjU1OVvBT59&!McRw;7@_KoMF@LZ|tp#*TuWb1k!+^cl z+Zm|}i!_R$2`$6kW$FO6YP46& zcPMnfOqPr1yR!!%7jH%g;1qk6`6ptvzt!|4zPS6&1f{Q}e8E=YIr_!FFSRfb;wk>>LeTxtIM;MZNj{ouZSg*nxqU1-<# zekw_q03ZCiUnbg1<6`U0(FxL?zK=`0PcN9QKo@ ze6YL6kjFqkXG&sJe?osf82faFH~3a=Vr}(#q;ef&QQk5*u5lHxQ8?)Dy4IedHP5*P z@zkr2R|0-WHS5!&PVS{weQW5+#;KJ$F!^JJu!S~%_dxrrLFfGJ5LX$Wc>E7 za$o#2MIJLupVS3P<_`I1va(7I_XE;oILV)k}#v1fr8f%uiz$sQzjtPpHGSrxhudNs27R| zjhtO#vP5h+u+YqDcbJDPlT4ZPum?EP4g}+X5j-R@t1! zfGD$aL9&rhvkfImFk}CN5mcJ7F3i^9*aP^L;*f$YPCZi0Pu(S|AR|%D!X&HCTn*Q9 zhRb3Vw(|eNab|A#`0|5N$7WP#|MTQL&=O498jfc#zU zl>H-WNHqr;SVcw<;tGcjR{^N5Ei8r{IcYpDW7e3L>HeqAvyg>$fuUpf*)RZ@*gj2& z0y|_0H$E*3b}@{wo!pbNhd-y=`2M)F1ROeJ#^vX1ke?49W)~>>HK9{Rr!}X0diXGo z>AJcmW|fsy(wq~BiO&nAPiXO>@mZZ8CI!GPl>ejz`a8d7?4;=PCmpL~NH_9V25}Gl z;jC4sFSmsrwm$Zij(G~P1Gq7cNzrJE$TlvT#`^&eI zE;0*v7|e@uu5y5gXrHKMNgXz~1m~)~P95x=&ZCZ`>~GQ9(*C>3n?8467dgKHmqrW7 z2#wu>s&EVb*<@ttM`H`F7gork_(^NFtZm-Zl9}UE&`FsNJ4m>d;*qGY%%BXc9^`#J zaaHWjYXz_{$cY?2c_g8Nt`Z5sj>1J^ty1cl0yS;G-!Qi))WPq+&f8^6O`y;Y@U9Zc zN>uOJ=Kf7zVKz1>+F{{|^N&yppldehpS&RtKNv_AyjRbP)uTVSS&{(^Xj?zd)M|Rz zG{R}OPIl&1m>ur&;_Rvcb!Y$ADtBPz-t&qT($%QVOd zStPkB&vuVja*HpLs4iO;eKPy}!4DCxy>EtV3qSV3bb ze;Xn^k{-XK^8YqWV~+R{(Z5I*PTSs8MYFM`fXL+-d0fYjW3P529$$z|LOTR7gONqk zx_t0QA{KV<%PMBAF?2-jA0XZs!%w%xCJHt~HNkIVPT4#huGkuAV91O=-XZn9VOs~T zLO%D5RRWj5eW@3tWSTML5L^*H+wHGAg_ZOSghU9oDDI$<*1=PI-U+FP8M&rl zYh#;Qf^HZkr_!R#zzvAlc_a`vb}P$ggX8Jop~j{Oxy!{yWJNJ)M6Rfrya)s$h{3QG z<|yvQnFB6iC%IeK+^Tu9CUVWxWhp^hReGoS3QP8Cy1*cIhSKe{!Hf*I7y-) zM$o48kX>W_+TVrKXs*`_Y~Rvp3ntXjjelc8WTk!?6+?c+ zei5C)6ZV@9-di?z^gw8cyXL<`(?0x*`=Qv9xn@xPby00PE2!|j!MQ7#BH)?~84pq; zD;DKlW*DD2+|uZ}zZYp&F`XYH+3T#m%L%$!?WVtwJ48Zw5e%e8xhH9Q6%)~R=6md} zVd-*haoy_oD%-Gn0mHe~c zk|4+MZ^?&YI2h6MH?(8={(S+m`I*(|ysuRCr_xDh$Pnm~rt|;BFCM9kNLPQ|VXqB^ zqq?UIx9(u$iU8d;YcyR653b0voPdRFMv6ERGlke;(h#)5wM`5SO3)-E>Y#=W`ZKj~ z2<`Sf- z^wZ5SHNjFV@eZ{6ip%=c?WWn-ELFPv9__D4YhoT zOm}OLLPz;i254DK^8WA_2wRe04|fsFP?|rb*`xZNf<^_t)~KFcN}mAb;FG}@W$EBE zPqLP!cCDrKRQ1a>nl{tRw|b#-+K=7Hdl{}eaNwd{e>!(t^%_?AaY|Mf#*K`Ve;8$6nS^OAV$dVVE-<8bfzrlm644G?$w!Zvn8YPRekYI$WP?67QAX}YJg1ER819lgpoj`VeS#eracgOBT(eMujRGmV5xdtnZcku23&UwFM}ZP4VdGSCMp@ z8mTBOYGZIc#B=6^`VRiN^n)LLG?}MMmFFnPR^au%z{h9c?!J0)yz7+5K3=88=>wq)7Y7O@->lW5(V!aTeRsGtH?GlN=($5I(Eo)D4 zcKBzrfy~q3=)KZMDfq8h+Ofay8| zk6Yv%rBdg%VTU7DPzox4hp1RlFyp9kSM==qtL+0)D*T-7-LwZZrwCI4tkrGSkDBRY z+rBHy!NCYQx5ua*&%t$;l#^y*^&-n7Yz{R1`Y;FJT9%c%79At)%epc@_Qb^2#&<}C zB};H?iSW2^%LrRR_eu&xCSnq@9{{+)zS}iJfdDriN*>eRX6c>5=U{(J19k)vWlyHs z_sd#vWWfdZ#}#%s&6^X@aI<3|t30TwBvPU$K-7s-;7pNQkXswVmD@#9 z{@}-Fc0qmtA_m^a$%mRu-TlS>FQIVpvX1}}*P8~CE&nmT|5()))6u>b2P;An#;5N> zof4~N>3%0)#TBfC;X({HW^ngWN=J@bqSTVTEqDMC&7EpB8gi|+*p;g?!4q=Y;8-QG z>y_cA{6lf(-ZH0KTf@ww9iEI;l?TRPo}Tid7H|vQ6%X#m^r`St1o@QDwbM_b{yqS78_2c8E5&`arR28w88bgvEO4Uu03m8-a%BqRqe!Eu*% z9;$ek`lBD+g?nCCei`qsubNp6Rj1#Cze^sa8iLdq61hj?fB2p3MA$q7*pPmoM zbOFQjO@e@UnPEn7X7QxnfgY8l#Z?0bDpL70vK4p8uE@ln?k;ApM&!lXW!Hc9r`};g z1IJ0RRo6-(a%lq(*X`{PQDr5tb;H4CGtH(MVV!;nY zeff-_*bRD=d2J_~t-ZJMD!htMUrLBcK#b!Qyb;G+ z4hv=0IUZH4(7f;idtPRV2kqaY&vrd@x51MM_t0rRswgR({^sOeBn=4m3ZspZ8a~r+ zAIZgVcU~?)MZHz_&%Hbv$7KxeJTyN6MpjW+tx{)S`K_-LOQbYBqQ9t_f0UV`$soZ^wr$50y*ku)%j3y>cKozV2w#+% zr@+<`{`J#q!3o0YEc;7hGReTc(Jzj^GWTWCa{_c$&!hm!I!Efl6zJQ08o-8$t-Y5S zZ4yNe$&#l)V#XFT&0sbq8GGs#)DD{7$Lf-3t*q3rFMg@jwOQflF|D-wo!hViNnzwQ zC;!}bYcngCABo-K1Le=+hVf$NI&Y`?ukPL&Q(U)u^!DUe}HQ0LRuNu=WRR^=U!9YRXUUlP>~M(u;Z4 zAgV?!1Ob7vR{u?__{q^IeA#HU&zFY8NHw>`Z>=Hh!tlCOjX$!5^-ITJ`-+<3V{)*r z`d`8Ko07e|A|9ZA`3Ay51rJQ+R^i{p4`lTi`$$%l0##27APzo6AEtyIWsO_v@Y|1e zSpU#gUW>68&7USLh~1%pcX(U6J+qo=p0lft!-h1Hfmd18W!OA#8frFz;*#k-*cnsXjs60o{PIAWo^ zJY1DVBAQk(4k!}@etUpH$`Sb-y{^=xmCj83)hvOqof7u+*5eQ^+$`Yh8m8oNHw3<9 zQ`C{pB^+1|$Ls8FgcV^KEkYQ1P}LvquIe>=`qI)mAL#mndxWarC8^7-+d&4dgSlT0 zM_!+|i-lefsI2k$zs_KJBGoIhnAU!SLv-=Y`IrWFxijMRi?-L%b0GecMO=30!(-zq z&-bg>!VeLolrCQ&AN4m=0F)9Os!NK}n?L9YJL?;ZQn_jzIjf9qT)}Hb z102dD-2!=jR9}u?Hs#5B8|kjRxc* zOoPWtzQM0HC8XY*a_q<3d$s<0xvM1WdkD9@>+IdW{^P5lqxaknkh(%+t$kr+alA{D zC0JHV+0c1V_0CBRE1fkf^atN*Qu!F6W?SbI0=W-D4N34<76sMV_9FgtVdGzQ>(+UsJ!Y|s1+9hTczPe?I zd-x9I>aGB796;+a`f){jw0Qma6;=Y#BL};iy3!#L^*X z3`;;}R7Xv)7;YQbC)Bw1S#^U!-BZTAzO0d9W9u9b1iv2F5}xAfQoJ0Yv0>C)WK*i{ zsK0G;4<#V=-uo?X}^B_t96EtP*@ zJA_wUaOG3BBpQJsCr~>h8|j+D@NvUmd;k;sWFtOITN6l$`^~vg{_F+-3->0lc<0va zrO;;{J8*rXJfuz0OA1tz_&UAo!u~NroO7|W_)#4(TmgvC?ec}vxmTcFv|enCM&Yoq z+Ik6v+(elP*>L54xJ;%*$u2@w>zIY$E#gh!r~I&B$Ilss!}b>ZOuNVMy@Z0EvU_*5 zzq+xSRc}i4o?NpsU~gvnX%cQq3kZ6uRevZ1B7G)K+6gO+w+scMPn(7fHC%cnhGYEI zptnrvnwk>Mhi8*cle}MNp}GTs2VV#~lydueKmP~c)Zgn22TT$&>-9=74q#Q31H>RM z^@PdL6wjdwioHF{maKD95_D$ zA(W=qi(o~U;mV$mczEfx&9-;091$cKJkt|q<)SAQP$~duOEvkmUkRTVsC*aIT-IB_ zcRu9L9nn@NbUgQTRU*iKtDXjl0WAkLLg?>`^*r z!o#xV9pIA6(%5RT8_YG*UbEb%`IgzmB-`$nv=QFys^}{gOYCQf5u~?+ezQ)kmN@zGlD1P|gPjt^b9(V=+TF@D5?b0KvdSV_P8Iqj z+ZD#e?T4ev4iw2QDq*J!7vBC|Bln6a{}-jbWajRu9K%5VKd0!2P~DD^tWvR<_fXM; z`i5!h>$iyb|55ZF+mfT{xgNatKp?!|v3+J%W>!_UDHh2lk3@<(TDk+>gYG~Vp}92C z(nL#(a)*b9rrF))(`RnKWAE?|2$+EP3XZTa1Act}`#ui_073P)e*bf`eAopa?&^zq zhnw0vCsUf`M}281&{y63=z}Qrog?*Pay|2`rNto9rQzW_88J_l^09uYN?Ys47YmplVJ_=Kjt5uxeTuBEZ~xSiq^BOWqczc znc;8aI$GqFNUKD!@WXav)}oCJ!dhoF(AJg5Gif*-nJ3-q@EL!Gd6lN<6N|2mYc5}T(l~AsMfKn8I0|a0i7mUq) zMS}PAXGN=CaSbiG>`bGYs~VRMl?pWSO!z}xdsx7z7&ely@W^qCV&!fB#q`!(?(Ovr zblCEeLP;;6%>yE_QJolW5paUgSBum5_dtPM#GQDCzNpgI?bn@9kbHJAd5BWGw8{zN z&n)pEejnYuP+5)-dA#C2fl37n|FctWw1^Y&-~WYX{;8n6zo?I)B>vzpU)~`%X>rDX zo!;+iZ@Wbm6PJ9pddoH8^4IGph?a|fqqq%z8MDJb=uht7o`>bRRSZE!mgiTG!<+M4 z`%z$ARc(7Er8bhL^->cbq}x~Q!6rZLYU;v->ZcjEJR&oIxcxTQ0DkVhr8wQK`|uuU z_`!cXd2R2ZiwAGwgKqS7t7E>6!a`@}rFaRzi=6f7pz4j~X*odwvr#B^rFa+{L>T_# zwfOSt8c%zh?F7D;%Hzh+wKvp9=dq{>m87n4joq}wUK>wOV3u%b=*6B@PZ2LJbvA}3 zHD~I|GHH7KAEAxk z*;Uji)`r< z#Q2(TRw4|*UI~ss-*Uk9^>S(^j4WxJa4YFq$A0o~Hi>CeSYd*^s-caM5lH~sc)0cn z#yBjs!r5Y(KCYI`3cyws_~CK3{_C!()Q|hcye*VgW2~z`f|!@TaiAyd%ZN4)!CN*N z53_(Ht8TEZqbE;|NGuO4a50s(sDL`cMjSxoLzrj-o5UNvhRF>mH7B65V>iqH3QU!d z`Z0WOH%NFx8w%)hnYd?PjCX}p(9Njo<3ed&YGH&2su<4bD;MgR-qsKqE?Ms4VrGKk z#@EFZX0|Q?p}As%qz?0`o0M_Chi;tUkzZ$0z!>f8+hm*XuvPoT@MU{?S@$!4*N`=J66`Qi@7ryi8qnT{Jwphx{1Zqv~B2aURfY z1|3@aya@^I@!#aRoRxWUCMW87*>ga(d~^=WwhCvF9&kh7ULo!X0y;sYj#;SU1>5c1 zAqZnNxY5Twd6mCE_79bUzCY@iDW7BPXU5v3F5V44)d-O z4^r#ZSP%A33^H|6Hm^J39MQ!Vbk(5Oi^2ORk3f(`MXXm0!!pNb9`M=CTg&TRnv4Pa zzBZ3N?2ilhucYHIpTj|t)n=pIgH51m>vgSS3~IM|dlPJZ%AxHuU}xE=pEhnPTTv3%W@ z|E2j65y|VATN=@J8jF4z`%sWY&Bqda`^e>b3J1`(5Y zG)h_un{TsR%u9MGCaWeLO9EKMJix`kXI3x<=*Kb)&jlqbSCbop7zMxGWTR3g@Wr)xF3XE)IhSM# zYFj~z=bD1>OWxnbmMgEE4!kpyw}GOc!vtrVrGv-u$aRy`7Cb9?vzozW!VXW=;`j(M zrgg?aNV^XCrf=&KERcd4w5~ z*=~Lx4HO(s>&8Sa+* zlvN`FEjFMJ*2eUvL^7#;&oXJ)^QHmJ5g-=pj==gK6@HaF#}4l^fyOv#b6tK%jBqJC zP^7B=MiNWb1TL>Ba4y^zlmOnbaOV;Y#_QfwwC3lu4$X@HTAD@_5Tqz)RJ9==cSbJX z!INEU@ZW^RQw_YT{H7_pis5EA@Ns3H*MvGVOtFgy+oA?w(@Vl(K=7@VtDTxy1J;9&jk6D4UBo<+ z&5?sGdNkWMI$QauUWkVij_ABxSFq_|>hr1Anwie!-K7!Zg*^K>)i zC@Dg)9(*xN64iM754*ZTd zCu`fF>sMb>1-GV91l2hY=LBbF9|YTc38|DBFaiV%@%KSrVBNy}g{$*)>?87nVGNRi+(o5s5o0GO5os9}b)M2c2~n&{xW zgtphHcLZu~^cJ=NU@NkDMa~I)=j|bjkwLv~^QSNMYP+*lxFu?Hr@)JS>@W zv-GjS^KVZW$zqn7e6mc#Cwbk1GIvBxCofvjY_dLuh5YZyJ+1K9>5*6@RTaydrYNSm z@OXJqZk*+Kr}K;ehr-Ao;Nx2fsV+idcXbe!%2&a!Hz}07s~u9M)8!IcoOMq>`e{#% zbP39Pb>r$ztz1l3q`Kz$eBJ2!W;7L7&doTsEpRjG)=uyrhiNOHJ$s(Q5n5jxJ$%k! z+w+mhfXUaTdbNJyx*w1mE|>=;*)!%S-!2-fL%S5v?&aN&B@Me7zp2T;2(C$U6urdM z3$N?$xSIxSl?7+|N5#k*f{iw=KHi7Ul>H%q&LX37MpX`CU4-Xh=cuUoGp%rc3hEel z!nCo#Z9fH(<3AGeD!Ab(b{m3miCr1XSgvms_*{xkq#a$CnO{;2$jcWIPR5&XwfRDb z+$mE{o+exA$4+vIPohnv1GtMfoAOC1|H@v5+k?Adif*qY-KjmP9?7`?81)n^vV%Zh zfs1YNL1_8rE!TgzSA?f()rgG=d8xiWG(-WPXR-ED2B+y19q)^eO2!D&x&u~(yQwLEf&U6eH2NvP-uK2*N^I^JK<4U zOymc4aD#Xg*%J# znjl{z7IGzxkyBY}gC}oASbNLVlxt0HBmV0L30^9wus4M2zSld`TectHoz8(uaN~Yr zERfqh`}yfHF;v!e>qQkfy|V3d$sfX6s0;Owzb+E1UGbMkyYLHvbN2Iv+5z^rL6db? z5tOn7`U!Uy_thk8Iq~9l1b4ZrG-j^q_b*i*R1V}D()zI?`&hQsZlaS)S|1$6k|Ai) zl{5plv&s@1BRo$XDj1PI!XtuT(ibH6e60#4lbyL&Cs4etj@6seSDUU`Pr!A7qp1O* zhv!GH5416L>2C9u;QPx!ILt#2d0ZOr8zDKRv=zxWK-I7Jn5|$YB;A?wIre zi8iiAg_I8818lFDXzG(Q+M`GxNwvw-v;48aTk~!W&A$5N6s0No7!dZ z#EMSjE`!|Mjh+3f+(tfoOPX~f%jo&#zOapT&C0ft)eh(an4MQVpT!33mk1QBtoNp{ z1kw{8EvFndN+tx#Qmdd^HEywT$o#flF*)Oj8Uf_LruZl*&>6z-Jtia+YAQl-^>*Av z>@whP3eG*eZ@kw{R2#%M*UZ;Iyz?2@j8;2!>xD+H*Rm-nb^gyXQ`$(dh||5q&i=7L zc2FV8yJyX_5^y%;U%tuvDU9kYdi$N9&r|aJxiVXc7<}qdz%J2*>(NobkYu0J=fBHG z?RKtiK0#aa^Upc7>Ohk)p`{yu>a&G#Pd|4wyg6wG9~+0OXwnvz z=ul09*}bC19I9N!NPN{Mwe18iObLZ1c@C86#&W7x zY{ePZp=F8NX*4*qg(0~sEtPsNWY*7@wW7XreP<+^Ll8J(NNi0ixH>j`!??N`r|QCb zYSSWUTz^>uQ~vy(>$J%qn_@`l1f z`wz(;Cdcq2NBNwl(YQ;13GS3DxJTY^)~mgTdAtHeZj~1pUNUN?-B0Ag!hMj%sp-0e z+A-|p8Y7P_$U{QLpu(K=>TPu<=Q~`d#YL_zP%42y$QcMB4HSZmP??qEN9X*8ow_s# zQlF1JM7+ls3qjoj5#Ggj@|^)ajeN{0LSyA%ur2MdtLQpV|7BZZ*1|%cXy3(q82!3c z!=QZcgaoBbkx35J6q#_8Xf?O&$UR3LJU+vYXJ8#y>mOC`VJ9qhyy9Z?^{WP%T@NM@ zo%y>g4Yrt{6d#a1cZITsJ%VkyKbJU&c$xC3m(dsFy&k)q$nHYQE$t&S%nuv12MFUJS$#cBTR8_hplz4-@q zPFpNxsEbfITAomz{_5c$;gzn#k{Ueu-g@-Y%(Act<@q(KVJsU~p)d zH-YOk`3MFHG;J!C^y=MZZsKESr70Y-Jg-lQOrL{%6poF&bao8QzSeLyy?* zmW?qoEW@t*O7Npn{+eAWyWjzi?{*da^A56kEm&AoXEqw%E?U8Dyg550k6zZ}<6EoX z=O5w${mV>M**ldyohne5&G4z zyp7cwr4!#Y{2oQiYi~5CWYd%s$GUmGDQ-YsCDZJzs8#}e4^2bcQ!5*NqZ>9(*h+qu z{oIV%foG>ANzLs*?o>b{aId4bzurpd$t_UlW+6CE=q(eRZ7ppuHVIM6fr)`yzeNHI zFKQw8o5!O^Faqe&L4z5H?U)@pOFT?R@6(0c^zo=NiKoqqmc}S}-uZfE=yG^Grk#pCP8lTVtM!;Zt zKMY^@J2J7MbZjBFuHxnb-#|IE%gC;Gwk2cIw?L%3Wmk~cPHv`Uf%H{s*aHXXC@-Ci zSzVKo1FkBsJEg-%BpkID`39%n-A5PK{PW+Q-<0F%yAN-l2J4C%6V&Y6Z+2ypJmS9l zWiY$N8eZdRb6tyGQvQmX*!OR;{)eObu>-DovXK*j#&0{M3;7Hd1A;>f5;C4!Vh$<$ z&TLU*!0dCFRD#K!eh)K;?Eb-<%W!=8$;g5o-oh5>a*a`LzY)`=REBA<5>=d%uJ6%v zSvMOq8AP<2&*iJ@YP1{bR{~AuZNopE z4}4ws1`kTFF1)BNvGUs+cmWWLFO~B1j ze7VejYZbaeXX9zfK~3Njpe42hFb-Jo4o-Nnou;C8Qo3=CvUBt51-l`I@SeOll5k$U zYM7%mMD~Jy1ZH)nbH^h~P@AYw%!?onM{|VptkM_E_ds3;h7)2aJV^P)tF<#=mZyt& zuS+|Dq6I6BA2UDFFjeeqY5Z>vpCPZ7gp^j|57`>1Nv8e*`C&PkABjikCDUH6=+I^M zSG``?T&B_}m|YRZq?xD%JV(;Une{9U#|ZfD5)qJxgFu#1;*czrLD4p^VzWCT1QG2) z<=QpuoZwqY+aod?fl@2<%(%MdA^zl!64IOddI1mc|FCa^qe22@y9sMZ6bW>XU zDjcO(fI1d8K1r$v%Lr~AK{t64vojm@z7BVX>3F+uV0WIhp{Qg6Pr5&Wo3wLSIaxO| zD}+SCDgmF4(RFJ4_>C^u_0p$3M&chcq}E_}50i2-^O8$lp#C_+tIH)W`{gHRmdf8{ z^NE_$Q|&2I66xRB45_R8s&TER!D@kZfw2^bZn?O+PZ8P%i{`k5&+2cmT%nRX5NaU| z!q7kTt%@x6rtmR$RaNMzQoo!O}}GPBgROx|zo{zCrX&bqwYhPttmY zcH_kVn0t_)bqYeMq3=bPZLE*+b)&fpqB_h36UdJSKkqpV-_KG~^V6ry3Wihqp*^+o zlDCri$oc9U%8d}ddG13S8G}A1G;1Ai_s%F*AMvXHA{;h4?wYWE0FTlc@~QFLuEm1uW_`=uB-Ua6C{ERH zvaTgo!-v{>Ch5k|p0H1~UD-Q$Y}~d{!|#O#z;EFkrLD{P>Bac*XQO=vl~=C*mq9jg z^Q${*u|VR60M*VGX$G*2Twr**xs}F{rM_(m3KIFrjC3M%4PFkA$8C$~C^#n0a_aD6HQj}n{bSX= z6dUth;S}d9Cikg2Q{P1Go=ML;r>)wa?|3PF5U-ZxT~%jk-#b|qgewTR7dAe^cYAZG zeT6_iOp6-3@RbvZr=+s#UTlOJ@HaCG?d}&j_)~gjP*xBY$U8Fge~zL0vhN5h?N1I! zIYJL_8a%YX8^n1D6stej`Ut;$bfvClR@bm=(#`&~${{(?sksJKHauf;5J%a~E)s6T z6L3&lh5HIX1`BrndGWdHUnSp2xWPFG*4Mk6mg}y{f{vkRy}kKF;G%$q84j!;j>-X$ zR5RbX4g7-c)xi15_Qhx`NWrgNd<;GKW~BwbTCKW&U|oFmk0>pe?In=mk`G6f+_ZF| z{J4Nk*7?K|Xt%7|t$|ycFrKTB)o1R_y`BdFy|WN>=oLeO;O%|_B$SgO1%XqTpK=2L-d!+5S!TCvAwPGp0e{UjolF@^lz zqNo%<24}){W_^rhSVou@ZnIT&I??tTBOc5bw`%W}>vJR^G;iYV(zso9@_TjSO(6b& z51l_heGb}%`NDXqBr!FnyX%S*KjjzjF?YDVBDl&i8jaON{JuD2DtGLg2Vk3LcDUTJc_=+m-e`ODHd! z9#jtiV0%Bl^^So<=1@{ML^LZIb*CxKfWs@mlOD zGd&6mbuCO6dZMORWx*W~(TD_}o`-tj^^v-@hX2IYxPwqv_TycXV8h(cC|@O?C7?08e#?`lwJ+3DMIXdG8%PCMbV`!X4HP-YNMe;d}P0P$R1 z?TI)WZ-ZICl1or`fZ-?pD+E7JdlwPa9X7Qx5jkoGW7t1^6?63fODJ6cjse9FV4T4(@?eBmuw7N$S z?>?%F)c>b0d(C3>>2qqI)cz1EoIVbKf~fkCz2f<;L!U*(MLY!*&=^FL6g8l!hZTXE zL{T;T4l^ibCT)Cw7}$b|rUF#DCJr7RzmxmKfwH#Lx>UA4-67@E33=$OF_}&;^~nnk ztdfoOi(IH)9PENb+dLjd3vaiw zri(wy3Ii54Gy(zW7?n!<#ycLanvpOiM# z)ZnmT7c7_(IC6LTid%!MDYMpcm=`yu`&AnZD&ThJUgb?Qn-8YM$={$_?^uvH)PH6U zVBg)Md^nwS(L}te`ggN$=pVn(=n%mdXP+r=fv9fguT}SiZ5)hCx4X6-5W{BwgIq}v zd!#Dy8Y$T4K-`!Ps; zex0G{fED=w>Byg^v`(FQe+5JqoUn?>j34w3ada9Cf6?=20R0=wIvEWTPiE~JWM~X3 zX(P_vl>nnfhQ3?!tJ*}o?E2iqw&g8{EmuTianA}>pxCcg=7ulh%cj>fMjQY^BLTW7jXrZh3S)B;;VuKo)v!O!HaW#mvke4( zc8z%dF53WRQUtpi9uY zf~$$ItcB0zr0BzV!J-DXSEegok+UG{@fQy9Y62Z<<1DZD(`G_pN=T zX5QNdtml&7*x)LbCaw5zAHYv_uN0}xTa0igy?SmL20SOQT2h294zF!Q=Rrd7a3u+$)gcLTx&7>HH+(EabyW5rIjzCJAe;JUsMt_bnENZ~i zjF(IDr^Cw4pOf=_>eqCNno06Rd$zoLl`utw;oe@kZ7 z8SDH*nvkuptiQ;4ShE){Ba8#|pn#c{xG8G*Avv2wF2Dq%pks;%PCZ%>>xqsb;`+iC z=wV;wt7^c}Tkg05jqzer-QGugfuffjTn&GU$I;eVC_QVjJRp%4_O3{wdcy1=+RmL| z06G5W|4*hos|TCdbn3=Ko)Zr1MLYWG>y+zl2neQCQ0GhH{WmaWg4^D$xfXCG3+8n< zaij%hp*QksSErLla+SC}z}KO_DCgbgb=4%n$b0^SH>18-k=^Od&fKW#`ZNeLWQgxHL?V4#?Oi9{Dx7KSy{vyEz{R_kp z(NFFJi7KTQks{T%G_WP8nW%5&SNX`!(L8%mc>ah2eCWui^f0A-+XDsY1wx)GiRBi~ zE=w2~^JYwunRozn9Qv#H{oE*;#PjS*{;ybMQY`RZSx>d6RU&-*ojfc2AAQ$L^Kfwg zdvtyrY830x$w>iJk4POVHDFLhwSJ{H!J#JGnQC^hJ>*n136nnv&(Km;c&qq1w%tUt z%CUSiz4BK%R9n{TaY&NI(qv+YZTroEPa_uU*S8yst8H4r|Sx7tS z_{)1c|LaFEB9;+LFr3z@y5W4Eqk8W?^mYyNt;;Y-+7)ZykO#jGTsrQ7Y(sEceOX4j!)) zH8f%VuO0xSaU(-mlhp_N6qC`UzEJjtvD_03rup46$SZnJf)Vix8V!mQaZY&gk}$c) z&M%wY;A|d3!Yp=x*(A(qw8(??c;wl^WuwNzLhKsxS)dmV*a+Y^L68}*fWX^&Wr?UO z1p&H!py4eWy0vC+%e!iHV%~PSDpn(fr-#Rggv1Z>eCn>zCJ6K`m%cwcS^BwW;~@p5 zs93P56xa;kCmx5(wZud@BpmNXu~b}?@RUgmxujGI&LOJ{O@m9|2EX;RHND^c(#ODQ@GcL43+zn$D9yX83ROuRc9HGM!RQteYwX8TITkev zt~%@_-*NH@A}lMcMRl+A)c`X#Bo2pn%soa^enTRb`}N_uAa-+7Z)Del1=`RVY@s0G9VZ zM`}HJCmC{)TAessEI^oJtgNVkD)^IWih;YSmG<*Q1)D`PCFObj@?cSh(h`_9Pjl3J z3rsZJTR1g(!>8oW-0J|2;FClk1iSD|rc9qv|TcxIzzsL?HbxB#46akboV)Mo2-5$%3)k=?Mx%d1g`3~}>#Pl|S27bJ&)%Ww{c zGzHFRN}&UcBQU`tnrv`KDjPPI8sWp#jY>p!i066A6^15+3!34yc36!K;M zSxzR-X604>Cd)sN|Fa(e5eLIDxXeXnjrwhzy~U9o(_6a)AWD!xWP$CX2+&6bZ_hGw z#}Oh?7qJFkMSQ=G%Zv}Wc{~qbnIWqXIcFxy>5i@Xh?W0u0DfD-bBGSH@qju{`ZtRk zxZyeYJf{!u+}1z4G`6Oo(bQ(24Q^s0yN_P8|4-7uJ9OPbq4e9YB?^;TZT<#ryn3)j zku8=I2-IEb16`7{(&P#DjlH&|o2ANHmlPJ@U4b_b#UbQ>DJPNk2;jV6;GtScEGGmE zU(6OqSM{0&yk>?e(gq;h4$-3u!f;t|j+r`-Yo&OgB&6E_X zJ_j=-T1l)e%XObr&Y51VPgi!OsH|0YhAjrBwbOcXoW}WUp)sswROJ_Od$F;a^z-Iz zgpkGxSpn*l2d!;IS{jMCt)FclfKLx0F3u)dOHc(gTJ1r6uHo&8NH*iA<7j0v9dw9N z<@HYO6{syGoaYTn14vgN?rSx`pW#eeqNw&BA}*Kdb|}+ZWcjePJ9uRxC4%gm;AN@i z(vY*F__;Eqp~-}?oiu#68^mGg1n=4E`ytzCdi=!nA+2Myvx+M?9e+s?^rA>AuPO=j zWvM}1Iam{8Fe{La043RWWx-NHEB}yoyDjT0Di*O#8>{D+;u0G`U&gh!Y7vnOI50lq zZb|*b*6f3D<0ojH#HcoVl3V=tvrQJ%CdK_FSdF%6c*Kqfe-58^ z_jXC;>np)cQUM(o=97a%u=d~9#+<(!ODQvdm?TRu_)lC2WeKsa1dF(QZTUgg+<1^p zLbusL>1q7&5CFXTZ5EfZE_0T68KhAz0R|hd$olMQ$;H7pf}y8Xe&NgIJSGoAxu#$k zGE&MV?rTZgL1o|a|9FKX^SbpF|Kz9ixtvr(9sk)iL|`%}lMM&lu56+5n4XR~wP8Kk znaVU;V{2&p+l)t+Lz5@dsNp?NcRM|m$d}bRI~Q70yDL<*B|@%AP<&SHNT=aZ<@*I- zcnFSe;`^<>jk^}W%u?-%moH#*(n9|IH$|?I_NwG^^gUN`*hEO@K+f%oLm5~9+~p?o zKX=7BOXiGzU9qvB(#q4`$86QE{IVk76P% z_9q8h26Q}Sa2Yg7|24(K_4DGv($xb;&)W6qXhJ&kWTl0*H_IoPEp^4Fc|Sb%OQY$t z)hatwSx&&6jV&li-vcV$+0J%>wAxa&wNq>IJb5J7{3-OXy`$^9%9*RB zc`-fu?k9X^qYGvEh-G#eMi(0z>H^2>MN@GymY6f~I|8=!bv=~6cb za9bkjI9q>g+aE;&(Uiw?k}QLqd6Zt@>JBhEdd$W{^-l0NOVM-JO>lfEWjmfmUSU)g}1f@Nho}`c8VnO#YO{Yc9leJF+ zlC~ku#I3@ruIdmc_Y3Daa11i#>rcC)u1ku{V%xBGnp@B>#P1L-lL*XZQc4lQZ8sx8 zPodKj63BNZT)t3W$K$p%pS$aRRKC+vW<1?JtYtTgHXr*>nqU`uOoYT8CJ!OJ6&Sa% zc@(Nu8Eq%g7R#%Z`6Icp?=tTNbLlk6-fhcJyunO@8;5eIj}xNTLX8O5e$eYSmzC+b zOfQ^e<+iu>!Li8&4kg7q|KgPB3;dR5>sYY;$2R*BLO(f@QiCC@*RC7HaJ6 z6ks}yim-ExYq@;_0)pD1Ipy5j7fhf~Yh`UIa6mBaqOl);2@ z`O`KRF|uo~v47)!LTUjnS6O2Z8ASzOnmR&^@@)w{yuXpC{46zvTH4vR@sKBJ)O}p1 z)||(QR9->pE|O66(3W;F1%i9120vyMh`~y=ax&RKOwmeY3`TAi;ZUq3d+xrS-V2u4R;}@>1f~Jf)p?->KPD#NRT9By{~*q)1zZ~=1=$Y4%P8HTSOPhmt_dP zi)Y&6kB_xOTq!1h#g&q1j2|EmRk$yo!G^MVwqQ#CoLURKyxQvSz>+_o_<^yfiBJ47 zBR+Jj)~;EvA6~B{^5g&bKe)xdv;p7%093wA!jNQy0R$Ee!AFu0H;(!5pJok!Ls^*K z;%nb1{zHN@4@-#p0wzaDa?5r^_40O^GPw0;A>?n-ppBFe%R2&{+8B^Iwam*9L%v4^tC0r!PH9W31)Kf)M(3Y^1^;A2Hj;E^6=abXHj zTbRu$OQ}R;x<6bUMwyd4US27L-~93*1(l8fpZ{yq-9Yqo2JoKXaF71-lj2mqn7o65 zv0|}A1P?+hBeCK^OGCcj{+D|Ty*LKbO|5NM0cei=oH2V>ySvv<^M!rD>ogBDn;LH5 zLh~B@74Kxy6Oh~S#Yf`e4z$~ShuAj$@6!OWNy?`4*g44|3I;I$^R|9KhJK#4S5tXGZM< z_W*r4ksAvTNeS;gfoHEFz>l|#mFDSbqRD=?Tn8bsO<<@ZLW&Cma2N*hrHUeaJu3(T zAdvyFiu{PeqbH+~&Fw7>3ki_s?ETtk6j6Cy1>W0|Lf7-{2P<)l9n+}?LjPUqY&-Tr zik!{s@w1X)##RMEF(7krQ(v47r<|_js$c;E3jKPyfUZPGAbWe%PSK9};M@E4y z3$w+w``!D!-}@Z9W;cSglEF_J`7k_egKsv^?mA|c57N^J@ekPu$&cs1Rk<@uu#1_c zH0^c&)T>xMjNWw!uIvL-5Hhnsp+fBjPI|-O8KaA?xkG9pR!esTWQ^i#A7&avrpJ?e zfL4e*&$QT**DZh!*BVcCx6s>Cb zIg}(_plw^`yVq5~$`_QDo-MX{5&DnSr~#MT#|0$ z(^8{LvY5@3FT}y!>$7@XsYtmXs77l)6J&tBZKRWFuEIeSTqHFXk0i{9z^{EM2oH#a zI)vrFv#cx+E*K-H6R;i}I75-`o}c7Y0L>?fElP!D2y{<#l`%~}#uL zno4EeW`@X*v7S0MM>BZYw!HyB#5u4(Ey8t^uM^2Dd%rbUH@sKAZ+X~J!blQlq|bTV zsy6~?`Zd#E<;$q=VC`-pgXR)ILxIw%>D+he8B)&mGVJA@F6BzsePIlq(#j4oK2NH0 z_dP!(Xa@u$FsKGER)JZm1>}djfx#*w{kXefh~#ze$~9tz7j!_R*Gg7w1iM)%o7$&x z^OJbS%{-h7OeI3k2Z_3tW-+2%mpu2Aqit%xJ_+Z$OSW#lcSmhot@Yd-%{uYLc@D7y zsjUecdWC3EHxjT4;w$;}#WBkZKqgI3-&a3gxkbM*cVHP84wmH~1Cbe?N(iWp)B&A{ zx2(JhuRwjgo{H_G-8>}25&u@62hhALxAv)Nk17r+l%l-NAbzpWuqRa-d=8P+oDZBIOZw_WB^@E6&Sz>PICdHZOYKiYM`sb;Hg=xK;C^;0$SR6!~2@bo|=b3tlR&MFE)si~wz${ot)K9Q;%7rN^ z9vY5)m0 zzJKY;1>F}@ciqQfX5ud}w9C2ZTQOP;#k!(>(@M`R{0y1JWhfsAKYZTJqm4OyupuRSW0{x}k5)znD=jE6 zNH;`YeE~0we(Zl1+!w4?HW&nVR%lJiTx#i}L04Kdbh%rv?F8y$*4utKPs?GDi&~ z#Os_7sE8qNB@>q{Es`~-zWgEqqb`{&88Zx>kKVe9`eW=W0ZAurX6&KWkYz@m<8`FP zw7w}{WAmjSmkJ8Hp(CEPfW}^Lck?+5iSFb^-7?wK-?4KFD@;~U(++OxQ!hdTK$|a$ zMY_@!zb2JsYOxqy*u2$%u@-six%g{4`_X7orpX8eOpCIKd=Zmco>Ot61#61#5U)zn zoKK*>xQ)0&J)Yh$0+%gbkLcwX=+JzhQvU!k!Kn9?lFg;d%5DlklKv8i2~d$ZpH zSC>f2uLpga24g+7+o3`#jx`outzxwnr@R)L@w!~1aE=O&M4ZTWjUQq?e3#lycjt|w^*nbK zf^T%UTC{hn0c7eXgDK$oU1yn3gPG9r@J$k=u`1e2(pQ$Vxc0V1ENdbWzp?;jF}%pX z*MyXFhRXr6GBxwgV!vM5Y3DF4!7*EfcaK2$jh6-x8VVERsXuPk|F(=sl8UhIR!lNn z1$8oFMS>SzLO!#KMUN7<2 zw-)hPM(O6z2_1#S0Hc@ELWRPr0qDlI3ed_7I9;iV^) z=~UzI-prXLd}NtJVTr)TMFxW!1J{X(22%^Y8JHyzar)pg)-~=M7-<0XBwEUBltlRm z{;+65POd-%5-<{-=P`Fqj*0DPk@5;dbcmg*@rur1({lO;~t58NXnuQme}$9keJ7=I%YQox|hAT%Cg5RxA+1;N_T$M}PW zxljf!^#L@BBZeP8k=`=M$C_c>I^&`=nB_fU9T!!J&EO@0Pd19o%3dwF`xxQJI>NNl z`~_3y&vc>a#kG7t03J(u1hR|U2wuRfMCIZxTIw}TMDN7?Om@+v!OhsH0gUqLAh#NB z*kHfn0z=$!-@%?A7*MydN=TGlfUpR5ueHfZ-y+5`p8=d&xO$F7uA`j0XDTfF_9%d9YzXhUD0id zNL}vdOP=Jc>4xkvGwpj;Y1>j9rxr@0NuL{hoJOz+)YX-n5&klWl96!tC(>C4>utla zGZ6HXHl{_1$0_|rHYe(jj_8w|o4Ao+ewiKLTQL!%bo?ju#fq6#j~7#t4J3NXa?$%1|}%m~!w|ruufbX6bLEsaAKPRNz-e1AOY8kD4UG z{N%EhF?9q?AeG%10yMJavzWQq_OiLUVC>Dg+uabHq)0z&*_Wb{>E>9H$~@az*h8(e z0I@S+feq$2gSZ$2B%^MDHjnNmJOHK~EvYW@-dJ{nEegK$a0e7_`1AX@kC&^$D7}{q zOm>EY|Dp(HAe{oGJe-la*l|jNHcT=xcB>}*@Sz{Zb)qQGi^1#_3|`XLCN%YnOD}-#;*H{U zJLaw03GX`hoIJ&^?1b_~!!VKZH@XG*VKy2Hm3#5($Ys>wZfl(cC^>)#Z2N|*h;dCy zlGJxp54HReKCpzczm{QtwAS;p$_Q2x7quJ#b$5MXrE?#(@g@TqR^Y?R&WlA9x zq9IwAy$Zl{eWj8$4U8hW%yo3?1n-Hs$z4Z-G(n|&7f@1uDsVP2oNZq)j+`!|vH*D) zh^oW{%DQyi+yk;5^i!-W!n5KBceDe@gzNBED3b+m4M`nBNMuFT&pNC%WuF6f&+BT< zYj&#;_>_Syi~yX^#?1}k1wG)orkzP^6G&emIC4#PJlDCkSEPHs$EB0>M&EM^G=k-j z2W0M69+ioXCNXZJR~lZIH!RUr%>lzyw0~odJU9%I&R%AL zu5aM^mz6aeUf5}cdjAeDnMfL(Ssh*j_d^**&@6sfXy%v822mlVn`ABpp!Y2`{2`GX zwC7av8tZ3a<=h*QWxLVBW1&n0rI#QI7Q?touDMK^>%R8cPL=FoV?E^n&AS@qaA_{o zw^E$W0CEtlaCpkwTMPCsM{>&?)Sc&G$RZUFrtTr**N-xAq5pB($61uTa6L{Zo)D91 z4sDhnOm%VMlowErCTKUbd`I>BWikv)C+F$Q!XjLei-3HQ;%zNgn@b7@EY5D|X}&oD zplvts!#~S5p$Cnt_^Nm@ghL*XRW~5+y zi&EW-aX*LnC<&z3Uq-A)!!vb7NzIqD3-u%)0jr)VkQ2MXW3N&d074l$Nq zGO}rAk<+c7J~lt~v7i%F-Df0#nl)?U2gBqiftcO}2;Ype%?9ACsc8md;v`jyu9&_I zhdJ={4B<-I==PzJ8xU@P{2cjy$pdRP7o)`+J%8kUJ|&(&DOhKL63w82n{RFN#bjEb7#cR(GyRow3;dl?!r~x~}gG zm)gm8#!G?M(;U|me56i48wn};9XfhLje@g$cDy#8s6af(F)+z)a8iGTn!)nrLCAHC zXyB5n5^rTCx3ykYhv~%2O@{<@iUu4nWZ)wd-A$^rt|HAmlzJJF~P8k3x>*~_o$rS!&I>QI9z@TL1K+d}l>3S_Hzq981$&*oy( zCkVt_VUD>}Ja8>GfJ>X4Ft=6YjkUloCT47dR&GC;oPEcg$27cRQLVg~0<*pguXS?a zH~jlxRJF3Jhn|3+aenaV2kkOU9g0B#Gpp<<0>TvUQW z*9zwVXz2boc$aUxWo!UMa6UehOWjA~D<{h3Y?A~Ilt{%pG^(E%@@Zd5kvO}F7MOOF zq4=`H&~vF=bT80p20@j}ka;>67QN#|Q)rc247T^f-|5_X`Npy)HwOjpBmJp2>JjJ5 z)%W4tKGWiI_W_2e70SUCMS#ZXlP6we3_2(m4ty%Q(?;vRExv3tXi7hsBBT|yb`{)m>n!S>kp4E_+$?9fKkOrwRPMAxFxk}k zs%IJNU^5~+0vdx{4xL|&Lhg-Ic#oRul~q_(9+sd2Tn@#Ar`k-?=OF-;?`Ulq zwQ1xfH33^CWe*EAmk1 zHw=Nk=}807Ek#Jmb<>Kjt@)I-ON>3lq5HB>(KS%vF@26@pb-@oZ@~BH-ALA6*nM1G zG`2G`ivka5@xs%pkP7nsPH79QGuux5e7OmXCx@Uh3nTW@Z!$UCqf2oHir zCE=)2`IaKf=f(_Z7w$$3J0lGSwb>37=&U&#>8-7^SlCcfV#?8gFfHuNYBx`nA!m<1 z8uUIF$wY%L(Hw3aiMR$zN=l9SC1534xVNG)&80!9jv43qPX0)<8rcXo+MVTt2O8wL z3$>KWFAWo09*v$n?(@^>FY<3}AfRaEY|&+{TH0S>tzQ)8UYoy^yAB@h0Vk?tNFayv z_d0Yrak>TDjUu2^CV`EVfqBc!xwkJ7`|5=h+BY>>TzFWS1odxD&!Xuaap!swy-Uj3 znO=t-Pq`9S=4M!5NK0OH>#aaR7g;-k29C?P*hin*=?(u)Vwp;sis!lEYCOE8ZEq3M zZgGH&9o$2uUbm7ry?UJJZpS$n$->LA;hzHn+#+MTIvjX zhWS;JKaJ5_mNTEN-+H-kP2=6gBDVD$z=u&#*$9(QNdi3qx4!_OosGoyHCB=;M$|L)EKIQwoQvvO+i}w0S+Ggn%0)Bx(t(khSXyHF+-1 z8q^<~StTh%^{)f`^y;HqDmPg$ zI5_*&t*vXc`lKX<|J_deHlkUu>G(gsXte#!gUIIi(N_1v)ANA>SlDS_&42Bhurpfrkdv?F`@LPY`GG>Jj zQjM>fFXkS004bR{XP(|?e*AJ3_H+957MlZe4d{`-b(@pp&KoJ_@Uk_TzdHG=>FQ(8 z`(L}|5?)R%iMBtmO5uz=OD7uDV>sm5JYF9QgMw8xS@FAeE}`y>>q(S`@N)|b5wPLW zKqhF;#at8%*}NeMgZj3YL8g!@SJkvD4=+J$;1t4-4VFEj`1YOO5|Cy*c2xKogN^gm zIWz#RIItl7n_vzybMuN;RTWE+uW zM`LgK!Vw3SL#4`vrp2xW>A?4r*(8}a&+t8v(P>%-CO@UG$(8e_BEH*Jm+ZZL(B6E+ zA56MP;FTyc;+CO2Ulbnqdzs^VTd9wlNIzq>vbsKh}N zLH)jgq_&+@boeO`r>A5dc8xAQ0GKH~*%?z4g$n3%>$qPK5)SsuREtjbayR;$UU^p+ z*(y6pD(F?s?8k{*6%;VjO)u_K1YH8~3weB-p|=Fd`MQbPpt zhI(iUi)%qz@K-0t|~!Y7Jri2Wzcu~W*eIhWjggx~(m3oqz& zWajvVa&>DO@L;lr`Umxk&?u<^&+D-gC6tDh=|MCA{3$z|i1o zobuAu;PPds*-d$tUrER$gjxcot$9G?A+m)Wgo;;PvUaMrti4YZe9#Ft*<#Rd$=;v0 zjd#oT4^T$S_=Sskg<8?c+>kf`;DlQWqo!3Mva(B!--JKV)meoXFWs0}CC+THs0?$Z zgq2N2bZ-c;!SX9`O$<|+9U=3~W!2J^e&_^ol$!vB@LeH%5c+zAX2N|RxA1nzy>cse zBP0T>+*fWI#J!;~2at-&vs}MJSNzLQph7;ux~q&kJKOuW(=z^5_a54Mg_MVIhV#b> z?+Hd8V7~V8ICZ3A!J0=7f%d)|+Nteu_{r|qWHCW@_pwagI%wS+XQ!S)Cyx%B{h)Vw z*`J5NPY(r5H)bMF07>`$PAv;Aze`RsM8x6a#$%pY{t znr`Lt@#Yc(xEH@EG?PGEo`+i*6r6EB`6yP=gq|DEwv?Y}``eT5#vEy5=L@++2mnhX zz44cqc>%y1ET^BX|02?e-}q0wEZqIE&7&cAH1;AY9fHdgYBlAxs8zq?O83xZ>qd=& z0U}-}{mL?5b9yh!$>Fn&Wf*UD{Gw%D>sEyu<;?d2SUg+4Sr>`S(^7+HuTqJ->Ci=ShDme$swCt7jw=3tH+T z@*X>cAv^F^?gzr|Pr{0mq!yk%te*6}uP=Truu&;DDU1fp5A*2c{ReUildJhrev;Bj zIZMs{nC>^h733wwHK>3L`%2)5^Rw?nkd{h-pYWIi%r;Yle|XnLyv)e?bNDdKn2#A{ zhbZN~6pNh?i$Zqw;reLidcBQmCtdad;4F(Kc+8ge62bqGHFH$oOT_Yt-~XZgQNvn$ z&yOp^1wA6_8nB-n!_ogV)zfY`Xze|yNau!@etG9Cnm4f~^9OyqWYe?Cmjc`vtF^SU zz%#g$l{YZ*PJ^GXEx!?qZxO!~zYN6r-S0v!8Qz#na4cAw6u-k>YX0{D3mkT1fo9V0 zK>e(!V{nB}r!Ot)-wDjmWg#iP8Y0yJ8816p?lX(=IfhJ+QG7=dacjAAJ9wEX+s_gK z0Arz$1rX)lY;T%KJJX9+j_BV21Gleu@0=ZtifA?rM6TsE&N=w!CsWRC3Ed&Qh}qZ>`67fyNO{^APZF6idL*E@J6**Uwv zuhrI$k9B{XeicYBJnXlzzBn!3D1;gwEPi7E*_oaE0En>(Nm422Ge##IYcWAZ-N4s@ zKwoc?)Hdj)`0|Exi>xyKH$D`oXV6>t+K7ZefG7EVcht`1Fqd_?oljj4v65|w#b?fF z+U1jqT_)L7iS&|mp7L$`*HJ_)Z>LVo;lcmnQK)i}WY;IHa9x#KtBv#}Zp=FA%PBjN0wKEB!#FJ>1T2Ow~b9ZZ$=`x|TPV|kYj`3=|# z$oDq9meQS|{50jx&=kpMZSuPvYNhSO*ITF5aLuo-(M(?1vD1FJ-84@2l>gAxl2Kgv ztl?vAuzbCu?n^)&07w&AE;~Q5z3gc9`LN5sy!H3X)#5l6AUeV?p42KJae(ceg2ddL;P>Z~45yP}GXDZ#Ro80d$hQec2OUaVzN#6neVVUPRta?H|EV{l zkNDEvOrpxsdLdcD*@=ZuH})v+V()fU5LQa z0}p82xk>1?cPlU5px+XGWmjPfZ&9e!8?gvkx( z$IpgAG6$1;UzC;^0RPSmW+!>ne} z^xYkDo^pv*@XPhZZs^s3MBg}f<7sMJye7lReTDI`(vyo_#U0r~B`dTnl(Ct?*V|(l zo@0aqK$RF*$D_OS-Cwy3(xOS%vmHC`&?szff!hX_WbI#YTGvb+xtF+;BHKsJ)2RyD zUi@KD2X-&tKG(F3+3$l=9>0^2u4IYk@4jNi!H294Bl#ViVHt9f&;w%A5h4>(th`XW z%$3IS=bLqN$vdM6rKeA458ea^lK7l+3hvwf^?WOwg9f-7;RXCbVSb-@P%cwpxdLL+8InaBWdfL$c1xkx)&c!{}tefb}UJm0?&MzqsdO9|1 z^Pi>Kus#@%;FW@`^FAs`-=SD8_WJuO)Dn07S7UN++?a!(1C0V8ZSFE#c2b6MZCJV< zsOgnev{H+ z^?kyjStpk~+|rrc7Xj8sSTA|sE+KX}Vtim_@+rVguG;^^q@%5Vc2Z3;(Npk6JK~P? zTCZgVBV#$WWB(JOMXl6~`3Jc0$vfCkeCYCgmZs;$;($@6ky1)ZW~%Jr?sO=uazcpC z6H21fI6mQ{otrRPHs@ASXy~0y#@!ZfZoIJD1B>+$;b%5pO?`7lZ$oAxofkh9yQezG zUe|Wg!%Gje#f{7LS*jqguA5&{XGh#?&E1xY@TP}sM4jH$;1y26`;$*&T3$|M03|~#ir=l*k}txZLH;_VF>&gjs+ZDj7&WXN z#F4BG?A@SS!s^Aisq(4Q7I5bXD{He}8!?0o&LtvwOkU-=heoSjmGt|>^ZbV%CSdcx zsm6`FV-!evfR-dzDgWGPm0qZ1+4^sXntwp z1!~&^-4M#AyT_YO14*fg?9!tD9OcQDt0xlV32-gB@dkJWD6v&)+W?VMjl|;p=V;`I zjz1Bt-jxv5O8Q4M5b(8K9P|ck{&miWxr`#GfPtd}N(6idBZW1JZ*H?Vv}UC9@1!}D zROIHlixio7JR;{K^w?O<)=%*U{IA-|PN=rEky`+=GJ?AD(HHRQIVGdwc3AnZ{LQ)! zU-VUbzOsT`12yy;zVl=ZfnKt z8(y}%L5Nu;M1Ba5#9aH<&l4ocvJ@01f{~94_ExDR921SSqON?ueSUAzMC@sDLn)gB&bx$+1 z-UOxWqJA<%Z)P>Ejl_r4vd$lj)7nSqWjC;Q;ydeYaLmrBEeJ)SDK;p8uoaud!nI-6 z)>Ln7jJa5h#?|g4Zb~n+n-IHv3FGD3>pbi#GE+E}@PH*&;%WOmlXD7lUEd4daWN!_ zsWQm*Os9qX8lO&q1JZhk`i+&iQBB6l3p1E>yap|$)7!jxd`Pk#C$7%g5bTWCC(EmR zanJA%sqNLR0gVHq&E5vScrHm6Vr7CYh(9{@)U8b7_=zKan$3-a?H_B!-V4t@^^D=<4HRhvAH?(;?7eRHfKGR|hS0v5_WT=s$2 z^o{(kMq^#2#71t>ubv~K_b7EaWf$y27n~@D2Y>FACVTVFzmt*88AGaA*(YhrvZ0C9 z*q`wan?%)~baK?4&3>KlHR4`=M2(@ps>aSO-ytRPLh3u6KkDK9A7u;9Q&Xm&B*$hi zs4u=5dR1=+{=~_~Mc)x1h?SD>hnVlO1uV@yQWMl-SZ*ff%%n;Do|m|j$s&GmosiSZ z3Gf~k%wtLcy9Huad`G$2H24pRyY8C@;3ySb>f@bxWL=TH*A`HCo{qQa?UhH}wG@6G zSoi*M>1g-=vi;&l5x9(H?H%%2I))*YYU)8(4mk}*M<_p*fa(qM0lhePqvc^m99s9p z{cHrw75Z3oFvQck6!cF$kmyAi<~8TsdzKfI^wM%xjpQxCKB!97<1d5Y-UoqC6;qd` z`V(95GnzTiSE+D(5$Gy@dpBISWW5vazEKMW&gN*>4=@)h_rSdT_v)w@&Y|4Nw;5t; zEr}M|h=OJHJWBpb0Nu)7sVETf)MbW;dKWT7oPgolPJNXD@K;BR`5n+iE=km{IJXFl zpLy2egCtlJzPkZZ?u##jce=e~>l%Gz-5)>eDL~cEO)jaf%dDF34!%2%$+B%Vk8#cf zJBjltm?im?{lBG49N`+w;MzxaJ^)*{+i)VVHlc!XR!OR%gcd@I2FZM8cZPeh?O!+#eIrG*&ljPAj~gm(`nRt5^rp8)NW3* z!i#7CYJv{T3V+<)%MO_HWhb)F)?u!a)BZM9cZoLJwb)aeEGq!aTpk)rhVmp9=cEdD zy>)96KX5abc)v35Ge$y&7R&6e3$sF^_(m?S@=s1jV*(W5seZPKYh8G6X1DDMM?#l5 zvhzm#Y8HYE-m!lzFAl!fna2$UKqzc$taLZB#t(ziU35iluNhsxNasItv$|Ml#7m3i zrbs$}vEGMfx90F&?K0TQo_5O#hy|}-e9>(>J*V247UzrI)a;`2#J&KbdbYUtMt42s z-QDyJ;n#f1%#c)+7d*7GQR$&8XIY_au6=vBtpm=7T|Io=+wef>+;}%iM&C)uvQqF| z=lcljA;t=8yNg@GVx9dE7F8t06ea2Z0}SXL6p&Y zsrAd?&d=86ZZalvY`J^I{QMmJB)8XjXUdswJP2(_3WgkyGx@f2>i|6!*RqfEm2?1tgw+lad z?Ht7Y5i(0=yRtN@J*x6Em6?)NUCLhq*7ecMa{c-_1D?eLm2xG7YFYnfB;2pEX_Kdo z`KaDv;2nJ7w^nlq`#qZ20lJ=d{?V-<`otk<-J9HvB{_5K zUZ?o+V)3E3;?|SeY6ZOQmEF#V1>kCht6Pf7U}#vR&MbmB6r4u{bHE+tz~+E)m4*F& z>ZLgETe1npRU0V%$KLzLN@-&bHg5T2Amd1#k~c*bP)QH>?4^bcM`X1#0;BX_{stO5 zSPfcT?_BGZ%KH56+DYe80Hxr{^o`rP!yd1%hKls7sSF^QeEJ5!C_TB@Q=Z0-J%{Rt zU_S4h#`v>nLfKXMhqz8&&6L}*5H&dWx?m7lV^Wio=Up&-nT7Vu?!31MPNa0HR{dF2 z06##$zlZJoQaXE$OMA)R-cOH!LH2BO^tfousLqZMJ*G(+9+po4xNTNmFiF!-p;ak3 zPZn27VeYNUf8j~Y`oqt%#w*vG&dudE`L-t1)19>d^Ry)~ddZtCL@cUvJ=0@X|Hayv zBrb@{tgHqdfF$jq;9n(vyhRB^>eU8MF~=S~2qF(!^8-TZ4S%$uO+T==|FZJ*!n9Kh z{(I<-q{*#B3&CS$_z{#w&CBBbccn2n$HD8R_e+K&O)J;YtdvRX%H#q#o(E=^be^d)jn-}x&B(p##UfGLYLqdbI>dh%mNu=dw zsj(;*?@hTv=BTm^aDXWGwS-^ZFx^3linw3fiH@{P6*RlQITnvXrR0b`Zob&3$=j(5 zgz_&4BnQwprAYgpj>z^cSLoLBr2~Z_#TW%7yQnrVz5#pi#s}QxOu>jR$8m2Cn#sgL z`u+l}r`wz5yj`VcwQm;5ou5Uo9+vqmWX%^Lf4L3l`^`jU zuMF8DVemttKI8sdv zW zlOccN0SO6 z19xLs;85fyg=f8pdLi94j1~)*{^|1*fjT-8A1(bu@cM%UyI>Br)rbb-ED7IOB7w%5 zbG+)jUl!(d9v;aJ+BMl&JK^K{K)!cv)2P= z%F~)Uwi=jy&hGd&WTBb2D9;2@;bE<}m}omk)NKwKwXmEP+#7Gum{dT0xksE1p5sr8 zwCE~Y1j4OvTV_+}HU#aBWXmPAuJ3?mC&di)u0f~bhe_@HGG_QCHT2yKfrm-puYWaG z^0(?r1OHQmof~#sKsS!aRcLRmzhK|%p@$L^euBS=asZhR7htbfyJoDI{?AA<@nKJ(vllFwsd0kc%M)Gp-|fQ>7*DeUh)?Fr>x!~!L6LT4qpA4E-qFrJxjX)%h70c9)q_zB{bCt4{!I_see)z`8bOtH&;f>9o4 zuJg$(bVyErKnDBM-C!Hnvc&~i;Y^;=Ok)`nrOgzlq0Ho)S4k9qV=ePfQ9ic~X;1<} zdhROu9w=^NEhGCkKjIAcJQQrvLV3$NFOBDbjHx|(+(~TbJW$?LmlXSi694DZs-&ID ziml|^EouUqIGTGc z?iVE77FWS#{wEO{SAKAa<}TS|HAdh?T>8lB(@(chkDXiMdAcdXe<$vj37=gp{$uEZ zUEoYN1YS$6kIIz`eT5LHT}_sY=#?*R4R+Gf#l^f{UqVZHe|Qr3?|RAUXvYP529Nx{ zZ~$=YK<0<`Xm%@Nw<7`Iw(|{oUAxG9U$@#@_Iq*mnuoH^NY^i2Bn`H{vE;!~TyIub zSWPZd9QM$lBTkfmkKnBT?dVOqt}E{ox0~b^c{`rba@{s7a+|DFrwQM_0f4@#iFCP> zIp(HNlAB7|Ot5$;zp<*biM&|*ga zqYtlBHeetJ_uV{a@7NLFx7KgP-sjwUdiA;d={F5&>_7PMH-2_J_TOE?S6_VpvxC`u z^uoOOosHYP3(KE9|NfUpe|LA%WH|k?@gEI0|NG_N|LOeQH9h_K7jHfae7J0W_cz>= z{o&@fZscFqzxwKB5}zOLA4d1(pWMy+_xt&S!QI_|+sv|;Kl+{j#NU1L2g`TNul7Hl z$)0`oms9sg!CO9j+Sz}7_|4PiFRGvOM*Nfi_^03g_P^*~|I1%A%j;JgSj49vbYB}& zK7KvEm|y>#@PBIkH|gV-zdwDozuZ*+aQDM<`(gV)&hNfmo_;s#&u-rzzFWr2ch?sm zU4A(Hh2Pvig!(ty?;X3t)4L~V##34JKkNU|KcBy=!=Ja~^65`LrN8ylACcjG{3pvz zwY>cFNgtLU{oB9)F#OhydwGBS{Ov3MeDh2FeLvYZ@BgH~rQ&`2+v@mR&wu}4p0@W- zQUCM@x9`sHp09KFdf%|u5097rcZ}?RwAGg%pY7#6{o*y3Z~W{3Ly7n2&o}X>-F^!~ z|NQR9XZLeG{J8(Co3F!{+t&}DJO8^=S6=?c{omOBNq*1S9eexN?{2>R_FMY1w_p9v z4;oW_JDa~or|;#z+5MuM{>}15Qy#k%K6?1ezxZ+g^Y?e3pXF|i?{?q3eI@CiRQzB4 zUH^mI&(?o;8Ttd$-~aTVe)zom<@oZo{lg1UtVrMBjTrrfA;Y| zHedhn-=6>4pQX#E?~L1g{(4Y3ZRzoc&!6n2j4#hoJ?6`s!^g`jbw7Wa2Jw5Je)%`j zvmcm$Q{K8?9_~Kz|9bNYeR}+T`g`>+zj#mi0~c>U{xE#Kst=EUU+x+SC55DvD z#eMOc)$^9czjFC%clX&>Uod+Aw|}zz`SQWiJLV`t(OX{TDy%jx;XKOQhGQ<+1nS9S?4~*{i?(syhDU>8x*dce_8F z`rFWzKmY7G-B9`S`A2{L-T!QG|3dA@&qMe5M<2d?{{a`re;PcYKl@ewqyO|v{{6IP zH$NEkU;pBlU;pqU@yF|l4Zi>9UvB@-aDJ4M_;;Chh93U(-@VE2`#!}7vDVmU~|&L`!DbRAaDA=`Qh^7^PfCEo8tZJ zkDrHpI~B>(tE&3w=jr3Fj*s%y-+T2x{BQsNvp~U39$@7Ldo=X*T|i(c-q_A?*$=i( z+{Mc07xgwJMbGD^Xb~>XyG7E(7!5;DseE`%Xg-idW`D2yN`E$h{4TxjBMV2%?Ylj3 zyKv8M`<1a;vZ$!(*R=_oe)}K*vs={SIXO+6RaDP^Lbj;*X70YYhk=p5j)5R~BO2?Y=kHsuEn~LjuZTuwj zrK}AVrB90#BKB5C(WH4}QvLL8ZvR1(X;jb4sI`oeu?cvS-{)4ialPD;M0l**KrWo> z%bs+aj7gsz91Y4B|s>jOxzv#~q7s+GH_PAQGIRq(|&jgC|v-9pw~M+Ea$ zwQFO-gzIO;G5X|NlE#%X%X7LUv)K=P z{jX-Dp4Yi4mz5Uh)9JQ;q}_e7kC=46S<@!ps(LLhw~AV)n3}4ti}l*@G4+*lBB;Jj zkEP_|=d{vGxb&Cm#g?}VLfq*;DoLnxe_yk08%kH2vL-GPS-KYG!g98>rcbz_8`E6M z#6l?|;HOz-Z?>59WYorm=d4ODwTzIt*2_i`7AqCMCi=gYbWt)|GB0U!qwOc9t_!!K z%r@p*IbFXhSNGDdiJ<~+m#(@D!$L`NcHG!!@A-Y%n{rl+Wbx{*qi+fEtZ66FMt$D=r~^`@vMkJ6<1MH=l)(nr!{UYpA4 zHM_DSb$7Cr)Wh*6$r2Mi{IY8AVtTZEA4xVyszWEY=Nl~Zjs!pCG_6^j>W-)=I8CwJ zzmNTyUYeUK*KNP4#6y%MhK2ar)ni9*#+p-?QgD$T+5C6!>~^F}N9E8R#6dBBU%R-s zcC)nS={A&*9;q@ZQv30KaBuj~9^zTEH5oD7mI*L$~TUYPjr#h&0*8G;u9 zr)Rs_a!1*>s(Q>unTL6?G!Olvmwd>EiMRb5G2Jjx`OT`s7#bcG*?n3wS#mYMGwOax z(N`1cj7s^Ikz+_wC1$rJ;flK{n9y$D(;eH){rydeAgs7hH5OCQ0OSSV;Mj(b?KY1- z%SMQMG1;oio%q1TiG6?$%m^As;%!4tze|@~v1#72-7TO*`B4QBh95Y5KV;nVZI! z4Jmm`mtPH;ZSERfj&f;U3A0WpnYB%YL8+;C6RjrH^TN0K5$kj_G>hBZi+~047ni<0 zs7TLJkBT>H4qRGCx?Y}}K@X3&`bJ-Cyo>LNOi8{IiXZ4stG2%zz4NN!o1B%& zZj<#^3e|5bQHO8t0#k9DgI?b4=M>cxXZx}DQY1l3#d*-i=_mGCnQ7d8d+F#j9xgs| zdAL>j)Lmxsijg{3ZmME+yx`v^gsMBOwQ4pmq}}*vCP6biA?uy&Y~au5S}K_)CC+-= zJU}X3pGFqyHzO>KripvL=St881C8B|*b+H8)4ybmW#z|@aevb{2vu{{~a<&?sG zgCUVxuPBLSR>PSrZXD|69?qX{3db^BPG-CK=a=@}!eCD_(~+o)MI4&n-Uean4wDeY z>0BOfqg3LCM)acB=JJS^*^~XP%y`*TFytKHh!lt*GR|YXXsgrs!s|aY^3aCqrq*>z zl>BPvgKL#v-&+yvNuQsYPAip0QH30~H;{d{qR<3Wg^hhtNK#K@*oH2cc?w0HmFH~+ z8j!&Ec1)k`%7*eJ8gfp~=p7v|j;_1&y3FP#1raZ1aYo%tPLIto5$b10KiEFew~2{2 ztf=$`gHKLbShkdhemt-Z&%Cowdiq?@KMM!Xrg?m^uC6^%A)bxmPF?6X7ty7?JSDmz z>X<$(GI#pL3i5I6oSwC#ocl93>S5p&!&=<5n9nWe>EV$_7x?X{M0@I&F5ikUOVEfa zm1b$*zPjyXsL?p`;HsvfWSZ;rM3la5k~+A4tK^+~st#*Gm>pATPolcn?Pdb=4Q4&Y zh1dfrYe}dFrUGHtzh3)}LGM zqqeuY`BnZ-c@iX?a^A7L-{2Axr-CdB1}qif)=i|T_YXB+JFyRXOBovH2c-<}>AP`9 zw{ab+$(^H#tSlS8eQ*Jsx)n2{C^-IXJ(f$4aX9Zw-<9sW+xZ1cWhHJ-pI$aMRth(0 zx%!^-_R@%7ro8r_9MW@_?5tg_a`E;n#dZ)3QblY1P~Sd| zrRTxG{fP$6O|IN2n)Hd1Lwvs<&1oa*<9YANlwXgvH)VtH3JPxoZm zn%A}n8xm2LYzR&(4#&~lRq~FDu{??>M<8yjJ1lm}l0*4Fe2+ZV|58;W%|_<8M!c;1 z^V;{|pcdd)la;5ijqDOTy#F@hiUnV*lH!Gdj-JK?<+J{UT;jA7@2k!1-g2j&(T_HF zJxN?w@8rj+b3t^&nB@1HNceUVh4@ke=~K!KqbP-PMikGwSQOOac}fg6lo+R_cw#S} zmDX_YJ%K`i#G<4jdrl?yDOpNj(f*E<|1p~4X(X{g4P9r}QV*q#FPxG5cv*9zbyJ;^ z+`fECv|8(-YC(E4`zF#krZ~vkm2Ho?@k*($mwB!pm)IeJ#7(zoXu`UB^5L52?vo?) z>+xv|qfq*TVKpmX$an|37l}XE-f7KZ0Pntt{$(*?-@c2z=sMq*Xy0wO38F5U?Fi%W zX;g6>a--Xyr6&!Jn0iYhN$`k5+E=<7{od$M)#;vhY)r?poNhIh@7nrY7{6K^ou*)|b-fqr)S#ap`Do7V8IAF@E`q(KkMoX*YTejM ziSdQHQPbwJ5nCea1Hja#SKX!5TXz=I_7ZLVP)c=iPDjHpyX?vH!pSIV@>gHm53`VM z(GA<`X0@O-C`t~6RERHy`+049Z|a1Ver_I5E~cqh_x^qA{tAMM943{N?cROs?ZGZr zAK+c%pKM?^nmCzwuJ5UnOKQ&-kuETSZdcW;f8v|um$**MHD`Zh@3QL2xAm}{wh_c} zCK*kHcE?x~1kj4{%go;`Lil4B)akC8_mg2CY)IPn@2Oxh zi=*1s_4;C#seXIR&%9~oG;!lLcgGX7kJs-g_13SUpY8#r;fMI6pmzR z0)qThu_*|O8F2HBcrby?F3D$>nN2g9)5LXuxLGgT`GiPUV;SOnSyg||H_!6>Zeg9s zcg!!__l6&N^)+zoO+DzjenLLE{Qc*{Q?$3c8zNm?+F4ziXJw-}Q8V}bBqY(UEwUX1 z-CX|~1?TLT&ap19PiHeNy$<9Ze{a$TagE*%vbrgk51VBshd#X|>(i0O=W#82w_n7g zRf4NxcipBMfwV6Kv7+0(ustw!tN^O*1BzA1{NO;c{RvFG_x;EV@{8CCA+^@t*l0Bu|_$n6XLadexgOQ(*q1My+ zsVq-Uw}?yZIb>ngZ_l}siII)VhyLRx=$qJvbh7%xFBbYRg@)?htNPrtwSH#g&+2PI z&GvhAJc`%>26=$L(1Zdy7Wup z&(A9un1vSU)w9}%@NQ?Dbo^)AcaKZqtE3C(cWc<~BRCRj-#|FFUwOG%ZniBuwMSRQ zQ=j_bF<;zkRm58IFilo&LX+mod!6%UV6&~ZaO`KAu(rl!}EZ$=$< zYeionGM|`+ZehtNsmqAWXTBU8n9sK-876}GYdHvniH6?JfyvqDhqJN+M5oo$rfp)P zp`tI$(+j}WL!X>}F_Dl}d0iLjE!)$3Qn%j*69Za`rpx>lH!bp&3QtBKde53o`+~IO zRFL0iBJ1;Z=r`@V2U3u{yPL|N=;zEKCh%M)UF= z&0Nlb>-mDHDVKcY;6D{YdE$jWxHh%KkcB);PYArcJ;Y~jLKI!^7C-IWPW5(|H0v-( zQ^3KwN%gzS0~YP{0XbEBt-Kk!GVMufa~@O7R*{*NHBwoGvAN-3d>Ph;5gLU}E`xA7 z*#QIYuSldT+ zS}XH#<|4DL?V~JnxTMwGPmldmj-$PF^>WgiI4W-DQu&>49&^#VkkHb0?&}@9Y^yO} z7WdqPJ}DEGVGm~BJm~3`mVHnUd^jDUFWp>_oc%VOAMeKq$_K{uq}lJ;BEj6X2U??_ zSEipkKKRr;0Y;ge8cFwORV5CWdwsjv9en;Ww1jms?a)8e^XaSm=fd&CE5VyfuQ&Z0$Vxa}9xKbQtEMu!J!{#v zDi5Od!yKQT*4?`(nj0yl@87=HDVQ_jjhW4p%*E;YB8&EgbuRk)D@aS@f$MucG*5m$ z0XzK4YHLgUNb6RAgGz|R=6lw5Zv|UL&}%#``<`EtoU7d_9wxx#W*7pQo}%c$~cb%zSK}lkU135^kWkLm$eIV7^AI< z=yN;o6n`c_k2R6qZb;HDj?suaI@Vg#g9DGet9gPwdx%IFynj*LTjey-Byj4` z;WM)6o!eHv;gwsrRrSXL-eI`jB*Vk%0S{w>p`W9C=q_q-bhnF9x91E*S5aez)fIgLJdhN+-t3>Q5Ow{>q=e5Ro4Lg{2zCCvogrbfuCu=H2kymX1U#OYQFH*G;|Xz5vcBi9sjQL(Ji!_ zK|x@$VJ0tZAipqLwcx zzp;rgsqUL#7W-%4u=81*8S9lJeFJ1}t^Ve~09(NYc{j$dvhV3k^l5eiHau0$Rvnww zEv8IDAZE?-8*W*XwD%3+hRD8%INeHEA8-CO7xH!+>95y;^kK0>*gCY<8dfr~)=#0# zz`N9bV6~YORa!*1V}@P!OfGb+>m}Bcsyz7?9#dmVqgcXG-HjW5)A;{Ymdm^>_A9n` z43QIT7xgwUm}KThYjZ!fN_mE9B%+eDnS?W{-&of2OTL?P?3Z-OXri@5rwf`m`E4(VxNUAvJdj4AOoU8P1 zfx8@~CjLxZBPTCo9ADfsvzBoE0R>`gn6v0?4GQ z4IwvAb=j-LjK%xVS=@c-LqL3A<#zVE7rl2) zy`?wAlaJFVv^o2eo&`*hiQV^DYUzA4s z=c3Z)v3isr5HU@Q2=NrExqc`W2bhOd4|}$)>{>0|G*o_EqJ1|%R~_CF*UW~-&StE; zL<>9KuB(d?xu*IMoK))jP+e#dRjw|^KAbn|RuXV??w7vwA|D4=E#}?Q(>3ipvy4A3 zoY3;>p>mKJrOMWC&o@cXkG;~<;OdWL%A{@3y~y{U^u}xJxFeqlO4j>hC>LU$Lb(=B z<%<+;$Mv|0d;Ox~k1UX#a$;JQJZ31+eO3syl`h-G2wRGtw}MR$+E5FaDFa7jBsHuv+GZPDUgpl8~c#KfjB z*0^h4+-)ij4EuV+{zeyTjiyqhgM#jzH>{!W_4?Z*PB$B*ZPxCAo_UW;v0c=$V!UK30>9|vQk@#m99!)-lX&+0 z*$0dypR{GKfQxLOmPXt-l2E$bYX|42yo}#Xc4fR~jY^04krBe?a z74*ap-R9$BtxC7+i7amt8~BGjbpi zd?rDB%eBZ?Wc4M`OrDlgYEhJ42(zkgKdvO{yTi|t?hgZ7w%NBESBbm+v1(6SB>ef=-CjabIu4|NMXdf6oH_PXs{3Vt&y9InYF9ZRa_yqm7*ZKM3m2|-3<=DC&|h^$#me%BXt$OIAp`C0U}$I#sU@U zM3`jWkCfFEWO`jlggy^d3!U{ZGbCjb2@Me`lFM%NGUIe$IX_mIT6AJ){KyKYCf4Q} z%n%VQk8`P4vVlB_q!C@Ou{<(YG9ysFf{2(r_Y`{E>KGPp1p~)lgG6BvT;4=VnbG8u z3D$h$ITLbZsDc8yY9PRfwyjU8t1z&%aHL{ZZ6bvSQj;iQd=Q0;ifY3>lN=nSMXr+! zncKBM^-0aZO9BobnC%DnEt@>6gmaw>>4n2ah$U=wIV`NTf8F7oakKPN5=sQJeC%7?^VCD9={1lIFN1x*V$kt zq_8v3wlOR+yY@a%X=syu)D8&K$+Hng)?r~wt$14#ofeUK2{@8_no^`uy6e?LNRs2+ z<^*UJJVmi?#-zqD`q(hPtP$YDsYN0~rq?vdh+@<0^)9f~Ft3V`B9!k`?syJ`T|j+! zanz~}=L*RQl6%!hAjgV@@{TOC4~ViDSBUFTWt(~fdC~l=fMKZRZC~3s4tPlR0}XBAuY{;i&m-xbcQFPQ(RQ2 zu2jP;kUwF366%vpON*bbP|-F7rCh9UlQu*Wr;V(JToEVL74#Y@0NVOZcJHL7?T*PaMwYviDk zP;wVpN3QYKgr@3@XE!#gKn0(1x(a2du1z3SsIqT>z(u13O7ZqNyR?J{C{zLOE=r?( z61rMCy_T*&Vs1EOIDS%^jZ+t7e2{F}c)0qH}@2;hNU9CbQug znG&Ir6aux61UQ0An~Ic_+QjlD$4gn4tdS%MXjqh77QjBRmnEV(WZYszuu~ZXi?q1n zas>F4biLmkSI~9B8PJ)SsRGXGJC&92rmGd%_|*HrthitBE2j$8}91qCoHxDpQ#$+>s_U zhmKK_GgZJo=-f=!t5>t@2}@E1x<@eqtRP^cl)-@oy+Zi4;|Nv+KPig19V>51V%J+r zxrC75E|?3>hx`Of$kR2p1GNE{Dx-%8gPXyoE9q&fJD79bU{)?PZJMlBQFXJ012_bC zM9V(zR&1~4=!XZf6LmK(L51+k#))HpMf9U4gsHAkxRZpGxC2#4aroY(DQQ2q0K&E{fuGfN`|=5v?>M6SFl`8Kts%n3w%%_{lpa3 z=Gnrukcoh8*2F6W0403}`7UROOYRF$JLody@N&66XleZgAP20MfuMe2i;%t>KUY|t zDi6!L>V*j(M6pYpmyJ|oUVs!RS6ZfWw`pm&qWY{C^ZvN_6^$A7?nWa+Oh|oDbT4J7 zG~m2O<-i=qssJr>nXPJOmanR(=Ii5_`NUTTK30PJ;K<6#R54UI;757%yK8iqphjYp zHWM*OL_11ZqP$<39 zN>Y|NP<83bI%=hsu!8d9?Ag1B-ft<0ZDV_gyAab!fOOo0#@4Hw;`9)nK8sDQJiKQ>luxf~S%RNH2&GeF#tv)C6R1sVG?*pgZ0?5Vmd2 z2g&>JN5@Vby(7xFq`Z*Z_q{LsfYnCH;AIjU>1`3JBty?znnKW{( zefE^1=F>ZpODQu9ky;}(I+1O!o9+{iONAHOKSO8>jXoTHB#F~lORxNV6U=A+}h-ws~5&g0Zd14oY|D?CTk#%@S`TlGrKwvF-Z4h zS%>QvjR-_tdA-vaq(uOUPO;pAT(Ov22dY9?xWqsZK9kG7(6K2KPnB#dL|G52>cK6} zzeS&8yR%(N8|9?lUX)ARLk%YNo&~e+T;E_$z zii^@3WM38;Eb=HIJ*qoYJpuLv^sr&TJ!nQm!j|ksyjGoakXM=)Z{Y9sIl7JGi-S7? z@Z1T3f`$;&kanzUPaXbgcoo75Fh{Gnh@J$_P_e6j?WPO; zDzy|!hNGt$Hh`eV#lxt{yuH2{L9&2CthFtdj9z-Ii*h@W=<+}>;QTU#RUidbS0hQ+ z8w;gQ>l$a#sA(5?+b0Gk41OzW7h9ASP9~6R+gQ+r^n!7abwrDi8G#fYK@9_8qYgP} zgQJc;z!oVF!6O9Pff*=b+ZxwWOLki02R@I8M+_Dy7MM&F8u~`rav6nEHfdD!oNk+t z@rq*9g<9ku)Vve1RGqqv6IN!5rxujUcJ}(X0OFM78j%f1Hc4q<*rEo*>sZ$YC9i;V zs47lcXmdWI8P`Y8PJSGvq*a(3WaTC{&gfb?gor4g|Pi8gqh^r(k? zHEQO>snWBKwiVvx6zl4Gqb9=*W#{Pxvy6py&9yFCTuh?{%V0`wn4GPa5Rf6jQo%G+ zIdPs`5*aRytGwP`MjBi|cx(%NmCK|6*a#x&`Z%bBd4?EJ*rrAH@y*i95-(9Ts#LBT z1?y^j*yFP-~c(j;sE&^M_d7cm$l$e-*G0_YV8n! zbim1g77jG2G-5JDp%jxUhg`**DnJ^sL<~((koIATGSMlc(uGyE8VCa8>U-oVh+#{D z_1mntHIe8nq!3QnT>BITwvjMjv8tL-O*1PHv^j2GZWV}fk)lcg&{@yE?qsgnjJu~mx3g{?{rr4w-9W^J#{ps@5QsIJy!f%{idHAE5S zuoOhj?j)}tFmva^t#lpOu^f>ocs2{r0kfWWrJPw`vIex4R38gLx@q}{UJJ-+)PaV9 z>{KY|{?)CMR}*P~*PH7u-~d{=e(nxUyk)3)var?_ju}DVt#twjSOUGH;&sPXPO3*G z!ir+8QkdY2#5l{?k^_a7i3uUKOB+xl<%)|*B7H#zE*uH=Qq!gQDbHjmQFs`64)coA z6YdrsLMS<}J7%uqJwT~jLNY^X#tI4P=whm7$5J*?ObGHe-HiVFSOe5*9~QW8 zws)v(qz-!xJ)qc|$?A54WRz1S zp~X=Xbg$U3M?3qHoyV3r?g+*e6$dZT*GPh* zs;;|M9R}-76O!9eL2dwYyn%;g{~jE0ebYr*25?2-uZX@}_Y`bZ1D9AU+SXohW-c@Z zk~>^tDI(fvGqO36YXsAaMF<}52vEV(*3a2GXn&lo4{9X@BW~8zM%H^Y0TMoKL#B&| z#$C7Eq1J$+d{GLvzJ-+~xxg-$US68aBmu}Fk;Ppt|K(Bwjp zMHR5Pvjhw+j96gUcH+FQ*+L*l9$k<1Fd{wgIX{mm7p;eOZd9BbEDmxsSoGvk4YW=D zDl9^QPlcc7Eb20RKCN>Z@nedFhOlw`AlKvL3351 z4yi?iI9#vy`YG1JYlV{2m{xu9j#T4lPhAQqGKNW`(itIY0tsz=4a;C{;ZW!m@rK2j zLSzj?Dx@2f`mY~ixum6Upk1JlK%`SQjpqa*Bd<7joIMeEcT4(3$R%Sj(UpF)5 zQs8ww!<}k=Sbu$YuTv7<6^cMAFT&-T(n16b9%7Nssl*`7bwk~;TZ#CN1h$bV9FX%W zM4+VY=uu_fN4-{#N#su!(DgHfhXv@8rWIs!g-8R2fiYq|)lRuWgJ%N>U9{_%WGL5- zY)S}RD^c)EF~C7&63nJ+B%DM5V{u}-qT7)2()9z$?6h?rxefBEDtB!$-;i~^-m2)Y zcQdJwlRvCb7}#}ATp;an&K%qcCdV9Fxr`>FW!nk@$Ee3p$sOfc4;-eS*@}4JX=o-C zib0k_^@H2dExxQe5Cu`XG$ZwsfUyv*kwk=U+YF!#Bk!-90UWHq#?jFM5abyK2!|op z4Y9Srn_UGd?62F=E4a>gu(wA)rCfJqlt5ov{JLi`%s|iuxv`iJIpq;t4@g~O)41ym z$m?#QzwR6aXu?Bv%{3efNm?l^a%w+-mTfoONypA1ebKQq)e!hf-gy z6a-@Ft{zbej1^HMT^0c-jmioc8(0?56!8LbW}{;_*Dtm}Fd;!@NyC+Eu}rSQ`lHxR zF>6uTNI?(RPvxz_q8cKAqLR_vNX^^A@AalhQn(J#}Kcag` z-UV^JN1LSWxR*231oREJN(MTn4@zcx9T!1LLl9r{c-3>d0ce3u3)QHI)n-Pn59KL& z!zMk4^{U{^q8o#<{AMf7)F|_8wN-<9f$ma+zG!a^2m>q2aD0f~62}giQu7#Pr)XLf zles*yxL!B#jYXr%w1F&un072SZl;=C`;H_@=Fqiq&4vJ8P)W078WrsYjwX;ds_VzH zkhVx(wUW+VT#Tuy5kOIf$TJXh!2k^cC~qs|Z99zZTt!?$OmftW(=9SIS}J68D{$9~ z3NK~;=mo}sV|yiLJw+POEj-uP4<^e@I%GHw{Y`li00HVc=oC<1qzT%(ga((^ZQ6`hGe^kj5kDr4UEn0&Rc|-Hn z#iVpmF+b)KucpKWlVnR(Da#!uDIjMiUU7B3fw-!Ev20g7A&ndWrVe19FoV|{9^(3` z4r9}0zV4wq3Q6Z}qf;(jrmC6f$eM8~izGZ!a%3`^YMbB%ri$0Q9q4>qw;zYpbxJ6) zO4FsH7_DSev`1%JiUgil4+zaOrmw8lS1z=~>1*ag%67QucH$bkpP>QQd^Io5TAitJ zMVD$B;E6DMsU$ROg)^)uPF}7%3FsL}9f{`_%Y1!s1oF|}M0JrBa4OK10$KcZBR45$ zklyUC?`A|cE!z^W4^of{LBAWLoI!tUOTp&DL=m>r{Yo*twGtIf3M^YEvMi`LrY~7E z5k`)n3$)KQ=Uu&q4M5hzFr?znmP)Z{cc~zH)e3u(5e!AV&m6qS1ZrdJHmbG|>8wk5 zPbo1|h{+jM*Mi|%9v7rrgt_cuzeN%)GM@a(CN^TGB`62sv)hP1ObK-Z3*zbe7>4kH zKW4agaq^~ib+~3EL^&})uhD11lxNo+h76!E5K4}~kI*KZ$EqOP!ItCoYd6q~&*}Fl4L>eb{f+9L@Te5X=MnvJ%2-&xAG>y3h zq@n+dt9*)EqHSN|@_rD6KZ)4Pl?K#aw^%`Hi;|CNO?6}P&Bzr~xDs`}wOzxUtF-oy zE~7b5Ldtjq^d}a!WGrYBTl|q!g*w8l4tKZN)GpkcWu|I#x|9nDAT?P!&@MsQwP8Ho7Zlj!KbG zJGNM#z{WMBhI4xT9;N^bVCxq4HbFnR6~Ov+hr+tedzas#Qdh{DLhUvH#It$4Gner9Ct3P@P4(1}&$ zOx$ppMNoi_h#5y2V=f8~w2+=!Ah|tlmm+%7AVL*LU#ntJj(|t>|3lK7F3FK2X@a;9 zJKQ~jWM*~uuE@%~$UfV?=!ncn^;Tt)jBvLLH?W_^{>da6hnoSa-vKBT$*+NSoaf_G zvQbKOC2mj`mLWdYqO>_`zJQa}Qm-UPyeMe3iZ=slR|n`3ELNzO%r7{I!9DUs0Zn_H zE{J0M)=RXj)A>C$fzGNbFlN(^pVdIZ4*3q5a;q&GO#6k@Q2sfjH+_O0T(^d3=)74( zAPGzM4xP-Ay!8FB#S#D@j4>9j08K!$zqqIgZwR__MV+h7Fc*pNkX z1BDM4Uf`t0c~N67R8(pl{L)&1ATaWW&lNIP^*qpffnejE)#jl&5V7`H zVubJO)G$hcXeaWO5ZWsYPJ5|Nr>z5(?x}*Ojp}MCo)176LIMGGi+EcF!&A~(}!n=+>qhrZrVn8V5gLep1=C$vuhEX;y$)b?tC z^r-Z5BnS>5_qZqnuLyq+HwF%C!pF`u2n+%bPsOJ0#IuPzly8}CQTUfXG(kP|3Ckz# zp7PkbF^9eBekLgC*z${(2V932h43$IhV}I-#RLNA`7D)-c!0SPLU*FTOTra%_oQX< z&ji;DD!;%~FaZmB-Jg^xh@=Y-V;N|SL+UWds>`~L`3#-pQAu{CqQq1GQ8W9a94=+{ z;?s5^la$o39P4^&SzG}0L7GB&Vx*caV+PG%;QN!gd%qTT7quSXIS46LYQYpRR&p2r z?xb}56=ZTvJ@W(JbVw+kgiPphd7C`w>M1YgA-uv`3^S`Xu|ffKz8Da42i7?SS(ox1 zU(gO>x980}=vIV&+h(YOyY|;NJG~)x8=E|+p9%Q)4DfaM7-r&U)WMpES13p z%}T~cgJ(!fi9p@j+Vq2;tOjy`@Vl7OsNc$<-EN_&6NUvRG}y7_`^x5w$TG{-mgZs1 zh0rmyD;>6dOoE-&&TY)Q8tJ&0G%>l`SmMQCWZ$W%?bQZ^AKaiCkSdk9jy7}Q)nQUY zZ5GL)5%62!@BaybqlGt6xyCg~yBQV+gm%I!f|L(hZKEm=3~C>$ogtKXwWw-&!^)yLvDTINmZ$g-1;nGI<6f57`bONOt%-a>$zj-_CMh(Lt zaD!H_tkd|;Kl)WeqCkGSqM~b!m2Q!tJqQA;jbBOaycVyJXz_G_CU+OXI9NyYLdZQMOk7z z&VC#=%i-Ws;2joFO*6dDw*=N7_&uPeg~~FZ2Z4#c#i`~K9|z;VlKST+a6DLrwuy3_ z{pn?ujV}!5Zw17T4bi@~s>|LJw6tE+tHW<9J>B34xScKIMgnYy-E&Y+wOg6&b|~mR zjtA3QK-7RQYh!2Y2gF7m4342spvE@PWYYl(D5^S%Sc*w=cV z5?OXw`SyfLz8JqGP20K&Odb0*AxFVQw;kdS!!97M=He^++Qd+MWDf_KsPnS)<>&qO zGyvbp6gv5QgZbSob+@V6f%rhqt5=^zpH)5~Ehc9k-8%p!tEaQKOIvqBut5<|8LFhQ zz=pan<=DLVB<)@+q_&2}m<2vPDaM)4aM$pByN2&->hO?O7#goXJakt&5nHs50KsG# z(8JF#UkKpy*PCgF{EytfAr>7-QsC{8j|FN7NW>KD-g>Ah)$e?T4B!Hvhd}=0h;X8S zMhpj1f{jZlt2pqQ;h)1bd`61fy+G>Oxj6fwk*(~!ALjk5eNWHg>henbg_#4}uNk}u z2F2&H0vyD9Ww8wzVUvhs{6czx-VQnQamWBQozyJE z7BUd-E7O>5FOs%?0$IOI3h)lk1)0STq3Yv8jQ-+c)e&tleRZIoJ==IFZWxv zX8;CNKSPbRI=}cy`2v+RhL->BA&k_dptgZL3@km~xpsjFn0@Lx_xG{HxfEY{H4aygh3b5ui-j4i)Gb*X? zy6@GqZZU9!cCTpts`q9-0(8HrQ@ck6&ez6;q0Cc>RcAd#OK#bX9e^AK5WL@&98{q> zs#0ro)EKJ3GYVH45^jMQV)!e33}kir#1F`_Pxq}>LZ>yF$1dj;^oMZyxx4z0EM{0b zjd_z(D@H_70(Aowi^+MjNglx3Zo0Z{h@3{{(8$C(28g0;etXhYFZ6{JRTHTk(R?uU5(g4cJ4a^^dvNP1Jbm5I8ET9Ig{ zp>b-vn<89zy73l5kXpWUTJvAuw|kXv0a+d`-;}dQO`x%@EH;Zz zh%kU&fAN10dCN-n>kcO-8_aMM3*J_W_SW@}4sHFdzjn2Rv3&BAHfr$uzt4ixR>G}n zAW45y{-8&D!AGo6C)Cv#YFGxa5zHkBZ?cWob{BrPN;JDI&=wGhO-xm~x64TCy*8iq z2yx1=_H_26(J>K4GL(99@T+7V`drus7)#SM9Uz|!-|&?7HYtDHo3#f9g^jG+nwIF~8LsPM!wap4Jfqf#cE@di8t!kRqyUVdF}#zH z)454aCkO_IloV7^m=TZVR&TBjDi*fXSOi!I*VN9w96IT^NUsU&H4E*yJhF<)u4KrA z;{`D!Fsv1B(ohB9sI0+RMLO}eaxKARSC4##aAM-C9l=qMRF0~Vj+jj9-Mlby067M}^cEvO-F8dOalmz~3^D#q3t5hjzj2=wd7fU}Tsh`OBw9>k?pNQlKIh+W%t8Rrs;!vDSFP9#TS6NO zt+!$Q6d-8x6lV1khJL{AK$|%TOLM|+4>bgyu>!N~vJ5tz5Ec?J1)G7;l!@fTrQtDe zGbjl{jFz>{dj1U?Ao(@m!V63lsNgYYxVhmB@V}_805hz@42?GsOD|`K7K^rkHChjA zCSS$*Y;6)%^IDzy#+w%&)*iCr4S1eCq)C}+6+-oH*`^>-5n9a-4T+^ij~dd$$3@fU--p-oY2X=ahSHx*QCpYM+{C)znFq+s>KQl0V4 z4*%wZ0iI$k9!r1;OirQpHVe7e ziBd4}FrLHA=o!JQA)kW8@9_eGNBenyAq#5z42{-5v#v-g@QA0=kuH}A+wa@ozjLcC zP5qNCAPo=1#xUQg#78qwQ29D&GB}G9#Grd)4Y=_a-ZmEdYlyQ$a!9EDJ$q-zcpED5$he61FG`JHpX5{ zPVoVroKI1a`7SGgv}LXUv==JmHntU5MOHL_f<>K8nEF2S1axCmr8Ob{!J`WQTE`t` zcHX0LPO__jRK+Hr9-4UqwucJabVa3q^9m=ACxQsVAgItA6^f0)2US3X5~)SM3E{M- zK1PA`(WKO1eg}->*K*m!kP?v4%XNxxovNqt&HxEm4in`jK~eDVvlg#x#CkX-=S(|} zclLBF@jM~P=$MwCFZ#_eh}};qf0tC6BvWeiF)%kBA|qZtu0%cZ6$XQ3XD&L%(}VHn%;_X1z6$5@~6W!u5iiAT_rY9S8Zb%%{SfF7os z3{!-`unVHq9#FjCJ@5dp)2k{|z-;()VqLz8_>Zm>t#bfuy5ObcU-7!^+54=hj~ehk z&MnSE97>v_L5bnb^!BF5EH*V_N*>-LYy14HlYSTPk~+xNz>vEtxY0KCwu33UXuGFn zI8K))@M#I5f{S4!767)F$#MQo^^evj$5qQ0wGKnXY*8QDaA<2NL@MzY*3f~o`X8zd zGimQC9Xo*zgHEv^=!c0TQ7xtR*1g@YaF}%74@hI*l zw)#n{{C8?`@2XIPN^P}a_?~#0XgeJ_;1D{hw+-wmsNP@=h_^osC>H5OiiXoVp{oxB z60NaXo!OC9vNu}tRqjgQ@@gJXpGOxz&Z8MK&vbMvi?Y!Pocj1C-&N%0(A3sE>9Drh zXwV}&RVou7h|eM~4nD7yPM7k?I-J#DhzME%VzeUN-BKFz%(FWKex_@Y6I>-^q`V-& zqWget;i^sv6DB`Ww$j1Rfn|%G5%_*^BD2vZ=sot!Vd`o8>=5l#zu~#2D3a*=Zy;e} z=L88-X43=YwAWu^0@fkxzZ(?hm3y;)6mN&UhWe-#6r>mYxVyL=v@B7ElhiT&q;1%$ z$nW(0wnl)~4qIl*%O14ib`_vwgTgP(dLPdEYie(IWEtYjjxAFC?HZh1`NU!e4|l`O zBnY@bu$O9!rV5nXs9;;6dQ7$)`I>754b%j?Q|ab`Ueb^oqTSvY z*Bk8YCmq5+uJfpJg&u{T0trLdV=NlJDPb;afZH=CJoSXw+2^6CEslMf-DSQ^w5>*) zKN1)@q$ol?3EyX#!cB30I}t(!cc$MRCAUvP6}X6JoK7P!O9IF_mbExhP9@ zr7KgjtfKN0@<7GJ`0aa!lp_JOh9RDq{oLg_lT^rxl&-?2bs+0=>zodN!Fo*Aysm6DE-5llKT0a2QSfmLi$Ifij(h>U9Ye&6hP^mC%MFfI2wah2g* zylsGTEfSO+l?zXp5+@wBH-wbq;4V6Rk>Lj*em02^94>-^9CAXRFayyQJfDVXCYk-Ub<`06dlOt$wA7!pZMgWC&OU)>$P$PFu@iXamk_}dP6HahUpF9yE=fAA=$ zh<&{1P%Ai8_v!u%;!`WKjdVN$10X@nhXtE#P_6d`J{a*n#*=jPT);ogfdc_MZLsqe zM*Ew@tG+Lw^;@z&*mXV|pcQscYu6FmImx7>RY&7ni*=Ja9&(L#D7%XY0gTB%`~PwI zcUnZ9hIdImijo53i%|t-g^q8}jrHKqC%A_ErI&8qb(s)$<3$bOgHfxTc)ht9(Yq{9 zlYHl&ZZV&Y!3;|^ZkTEC@HarATjA%rcGGsZAO+~9*rC-pQ&(h8Yd>;*OIa?+Zb^MT znzeD%3lg_ieA@%ihu3|5PrSvSoo%+mH9$Yw2lxQIU>fK_QWr1a@fZ!}BsthaNTC@K z2gIdXupTfvheuQ-JG4ZoJPS{q(jmSd69L_8X{M|6NkWig-Ti)neA{#v& zLW9PyN0;qvObXd4t;$6WInbU{1oq~sMGT#C9n zU!$n7K9B>0?vZL2ZF2LXhz6!REq3uVVN{z6=>ya`;VnJ9`GhQJm4nL}-9R$aA;#k~ z?SoEXB&T>P!MqC|m%#f}&!^5oA7Y;|W=!5lV`~?#d}qAn8~C>$T!9&9 zc^hKUO})-u!|etyzzckJU@1S^ds^E*8S2RlA&8gwx*w(v;l@8ir*$3&&s6wCCqaJ~ zUa1~NF%HRRU8X}K=eDq+v@o4KB~=W!^w3bW+0Z#2YBJ{NfW2m*YF&!$lh*uJJK}?X zZMkYLQXC)l#gqO!DoEE1juy!yB3ccZ>I@Y=f=)EFQf~ndNNsfis@)%5ee&Gl*+r{J zEXAw!wl}_17}Ado^PmxdfR={zAdbrQH-}IdS%H4JaU{y&9wCu4?`EXHM*YoX&X5m~ zdeB{P(JjH_(Q1Npyw6?1mAk z;ysGjB%8LjV=x5tr|2)}c(`h0zNNhi7?K9X!o}osv(42Dq;Bxpn;5{Kf>|$OX4kAB z!ONmqAhi(%+>cIq(Ylr+=D@=x`+ANY)5=yVnaB|Jeq#pFm@z*UEZTViK2Owe3L>fj zHgu<>AqOpYw^SHZCYAmCm&=uJbUGS_UciQ&J<9a_0z@hYmX^zT1T8r*x|&9PvQmuc!xm{SM&dznf0p!46}@H+OB4xCr0Gmr2VnkvC1 zQUDHwj^faYb<}AxS2PfabLU_^?S6Y^hA0mV#eh3tdr-4Oh(MaWZ5TQjFJF`GcR6gP z2A8Ye!4Y_aQpKS9u&FTiuZweX+Za{j3!FB)74I$5CAI;H`*AlH`O_N`Hg*^a;A z5M{tX_ggN&bY+T_hXxjMI^7xzZI%LM^u$uPm82@;RoR*hY%uLz zF(}bPIknL3lrbN!3!b4Jg%cXyC%5S=s;Y%~{IBM%bhUcr={NJd(raf=UHBE7pllqt zq66akT+Rv|xSA3jbm&zQRmeH>ja}m=h3igreWgqMmMp#neMR_3&`^`Kg9_h_H>@+f z7K7`6T7Y7)33ztU343@r1Nu}8Y$ffBQ{~IJ6@*`0Y_YS9@4b&ZPyvc1YS>Ip5FJl* zqk0AYW4@@P#fB_?Gyi|11|R8~oPjvtUAIKbPMyv7=!UBfiW_lb1G}>Am{%v|&B=IK zI-jGbfVd;Wp{hW*t(2a=}PQ zfXeemPGeVyJS~Nu)Z;K2*fm`sq1+()Iqd>VWJU03OQ69+`5OO}MN%J$=Ea)C*%G*>3il1tYAl1#_(kK^ z+YOf5ha>5iV=#~wI*cmQixHZE*Xyu_&iJe_aLMpr{}OZres#%MOhX;vOIaY1&s0jz z^b+Y~hMq9mx7H@;g};iURSVUV)HfsWvVu(uw@ydHtn>{s8s9j#*z^I%b+;!msHDC8 z%bAX$YLqmdx|e8^CoA^oXPmO4&N!CE%!SeP3Yy~AFwS@6#>z*NRO|-Xde=;#vul( zg>%L~#s0JU&ye=%LG{QP?AfY;c*1P6Yr}Bwu44$Cw<3{z)Lm=3fM>90rvuTKC4}rw z262fM7!9qJx)?kdFox*IWZB zZ;erYg&}Y44|tf9$G)0Y_(z>vfnkF;tB!Hk8`SuWA8J#*E-*XYShofL3i=!b)f0bn zpm(@R5jfRtx-q~CI#uxyykF(bH`i8S>i)y7^?=J}YzFc|;{!fU_@y08#f$_+(5gUU zHx(^ECq2p8&>bB%P7eMMLjb8=Q+V0qMc26@G>gXcFH^aBB?#lx!8 zf*eLbyj>miRIflaLl6oo?nbRf0SY-~ap+-*`c$?|=k5U*Fyou;9297*^ zz)udUKCXx>dFgY$3gohb;pxDsZlt3U_Dh$PlL194DmA30Ilxtna> zG|(~+QT8_pyB7j%@5sCK%H(A45s%$qmR`)?dY=&4Ty!lErTg`6tWtM-O+w8ue=(t4|i;_8j7>}>V^avk9C6E#sKSlLQ%g=qx_&9G1*be!*@8c zSwsFdNaI0QfP)3kD^ZUCX)x&UzUBZAoR#+5@_Y>#-|U6I<_{CP(#P3TK`4YV5Xi9e zLNVx)41+gm@<2V#k=FHS&m7N?ykfU}NZpW?dQ@6A_kc=RkrQ-{Ajb3nE{aVRN^R!L zK|S0edur#OorUNo2@>;MP|tywA=6~0`k&F;1&Nj7B;v=xVCbc-c@Y@um$(dXu2+b6 zW-s@tnK__S*c9ahK{!F2#MG$+8|;D6z53)Z%uK{wX$S0N+28gd3biJ(FCm(8@Bu!;N9xIb+Iqeu0-JiK z40cFrw+g)sKK^eb>s3yu-qC!K#VP=co>e{u-S40=^H#L=TsF}hM@~R=|BE-s-L1gv+Sf>@(RAJov?_%v`85<+unZ)q5HEjkb$ZSGnrec{)ef90`tzbz zGZKlJ1H-$S0=-!+f=S$_L#_Le@z$Vk?{r}`_0)wOY|RHg#rg)6TrRjqh)xq>6@KhG zm-m)Sq4i!mZ{nykb%o1H)-m45kxO;idz8bmx?@UD_Hdi``mY}YG$E7x-YbioFS8bPdLaGe zr`3-LJUar_r?s-_w_fIYoo5in);Ym*J`8vEo>So_hy~7Op{50vt_e}_Z>}wl9dx<@ zA1m7EODog4xtMk;S}{dT88VmyZj_@Yw<^IlRI1LaNQ)LvF>GJtHGuv~I(vN9S2-pm zWXEq>Biv(W4>imbcm{G)C5PoAodZLHXw=j|b>MAs6-o0vQ&*WN`geWN`3?b-&)yd5 zr~-)(tdj$Pyt9RWe!!qvx#U&zr#a$r{G_7Rwn_CG(u@_FDlrp^UyQm`fYHoT=tfAY zG-t}3??VsT|1WrhvM>VR7lP$7Uh`!UH<#N5vF3iIY&PFPYzleJKPyNEHi6Dhcj|K- zSUN6hQloW+4W}J9M;*a7IE=x@LRJbs?F{W@%K|y4sqriul^L5GK7O1!?};_NOhv{` zuTooU5j?lEdIj@fGBskw^c5tb8-{zngZkxq^0ab&Oa*f{!K0i;2}V0v*YCQpr3;oU z^?+gh`E40=2^9bcIU|jkFbH&M3a2WDHB zq5-lxdU?k$e<%!Ru&z;An8f@Q;LM9G5aS?ya8;G3r)n)b+D=CYq^q^yWx!4uBGaBR ziwK*R#X7XTQ}1v(ZQfD~q-)$gFKyEPE}?KRX?h#KM^`uRX+NP$HomV4y87TlI zo!01;g>MGufD#8}X76M@8_$fkLj_cM08qOE{qYjCya6eq-+^w*^k2H=CMBICSnz0K zF9L(AskhC5`h+UTbRxr2_wC|tY}OGFONOfp^_+#y`c6pW`5tj;jp`D+jH3QXlpp*%&{5$q3nq(P5<^&m}1T=z`8?R!t@LZT7G7 z8>Y5|Ps98v_n|T--qwBO0E~x$K=kQLfMpTk7}AW1r1J~CLWig};#u84; zVjpwIn;@-L7&kmei946nS1NtR0s>mOXF*gh-r7hqEdyzBuZp~(`6a3 z<*|+M9bx8Ze;PinT(!<)u?}*f-h4js5WexYfUzA_?j|)RL8uO|{F`o1f>Q#bLBaOY z4neJA;BG`yKD`ZqH#i(o%XQr)^t1LpfF7Q3w-Z#Mr3=Vw5mt>GY#rw3Bx05~*bY8N z1QB2WRuVcdjtnSbC&gWL$SE*!q@$X!F-A<{-U4{7u@j!B8w0;m@l5(jwaJ&6PQ}wC zOi)v^?SxXhQ>{@|w|cd@7V5Q1ejAP_&ex%3ZNA>SnE`?h)L} zxzBJ$l2Q9|n7WPo={#1Op{25H>+s-m;W(6t88K4H9mc3@Ws|fF%-*wQYGHk$>Rjqc z6{&6yf{ZRdU`|aN-snEnDYV^|KCU}OiM{uit;{ibmh{tL)Hg`l-2)6JV+X|W=o`!w z>;WcQrwi898oCIefO8?%N1U3!cd*Rhuf@jAz#CmKlC!q^DP05a0M&?RbaXPQ4*4nX z8hOlMJbA9mk=^-dR;{+FAA3jcG#_8%U^9|Rz(V%iClG*o-U01}mW)L#cvLV7d`K}& zPB&fyHPvXwBZ**=%4o6AbpH$T6EeC=piIVxLo8i_75#Ai%^Ga>UH zoM118MCAUc5=OzrCnNIartw8&#BeX-po3$!1(@h>0a@XW@p*tc>izEr0|n5RvNru7-tbA6}fjmm@eWZOA+y5K|cNuG+sF zoG))=1UhvC+UXX)a94EK!CGlw0CL7azbH)=x}X%;9$91mjp?!ZxHF-bT}-ez=2ud7 zq6@q^DSIyIl&Wke)Jl86HZ+~Rrp-FpfGRT#>07HV@bz%+fDR_hVaH#bfhT44jqaBm z2$2+egcX#(nf8kIympLP#c2E(RjSTBqnAag2oe9x8}wHKC>8YyU4 z#1%$?S}}tiAt=E|i8>n7f{x1ix)gtha)&~Fqf$spbv#Ue zQeOm7HFXqMwt7&Am6Zoe4TQRcwkZvXCjyVzA!q5H;`axG#5 zGi(LY_QOKcSOtZdks@?wg?nCd9Hp?S#^!fuajf5L2i(Seh3S7X7hkZZytn|1N1HLQItsn5LR9r4IsHRi0@L<_Sr6g6F?-`76{cf+0>ItRP~!(xmu`Q*q>{GT0k3G=KJ z^_FQ9-S{N|+%ZAE@a-qU((X6-wW6HRm&|b5_%l?uTk#-HLZ(w$Ef7Q?Xkbzyw2Y*i zM{+X*nL5lyec7g&?5fhIYpaKSXLH{r)t@o^29A+(@Hef}g-HC-r|Hj1$FU*xbx;tw z@dZ6A1XH8>lba4N2^;)kPx!KYftXBj_%eJC1hNJ-J1QFPfarcgWa68+0+cR;-Js&0 zL6+-GeQb2mki7%76suMbHPU1_bY)2L zvV1{r0FbByq{uX`mg>3_q?XE)A49JztjRTdx)9>N_ZnQA4^V%jQ)5t!uwMZ2CizKDrYsJY6A#i9VyNA8 z*2peQ95qpdSLn3@@OYf@n2N%|O$NFkd&3kA;ktgW4XLO3(E`X-+%r4pO8v6s6kP1G zb+XfRt68I3v;0vG_*h=VcUaeg1U(_(*TJ-UIlAA6Y=r!TT`7jz@eP0URT=yaW#GW{ zKRBb)`_D4Aeg3*Tc*0`~3BwF44e6t(rFGGDOdxm5fY39Z|I)FmB1ONld8GDO>oR^- zL|H)YG(C=sI%XXUoT%ZW>B;#TjN65zx+M0ri-PN-^IcK&O1Cy5hNa)8iP#vi+4}`vW3jt}4?<+Nw z<{*k2Fa-(bQ4L|$jRAT(Sr|S-vel>VUU*(?}w)Wfb z-QTFAd#YlC0+XGOVT#SAw&#MtfwgND{&5;MoXFP8!d{9_$L;6c9R&0 zLRSiN`I8#IP!W}m4Y(&4_sT`R=SdGRA;ePvwUq z(48Kaa7t)Lr|^4x!Dd&wq>s|KwE%|>56L62?!x?a9kS|N0r;7-4Y;&0s=B4MH6Qbd-Vpg?MaRvgfU?FELT+5*;*p_Xpqp<>}d zjkMdiHL7<}v;#IU1Z?JzD2!9PK&Szo0T5Ri)Ia;i@MT#klJB+782V^oW9bk&WJbfF zbo`}(uM~9qI);x^LIx(P0HiuD;d{z)NbhLoxDSiyJb<9mMJWS3fp-5T8s zpffe8$%~wIO%T|(aaO%`BbTh=tJ#vqi~ZjMjjHz=aA7R7fX9)>!?P6*MQ z98!C1r+%XohSpGU)m)Cfa$Dz_W&m9AogJdDR@$fElhV&F--~_?phe#0jbXyZrEc|B zUy<5jLAGZoT{s>ddV+Y`9D7oyrul*pZkKzpK^0i)mJcvqX3eQv3mAWu_{U|`35l|u zZ_)TJ_lLTulVLW6P!?2DCRN`O;KF{IVQzGuF%)*$Bt{PZq=q4*0cr4;Ed49O?yjlA ztw5z@F$tn!fXpK8X<9gFRkL4o0?{joH`*sw z))u(F4Lp&l+V(f-p(Aqm2H?KCVUA8$QMo~<(}G^Rx#=yi53s>kGw5mSKrLm7SVZ{! zg3%akD&F5Q2bf&u&wOVk*7mje+FwSca{rCdq%FSQzI~RWr7I_3mYlBo9UF&gDr*g=4Wg(1>Ipj8g>-`KSSquRkMM$?nSHsfT zp~mxK59%^jj=5eOp1D_E<<3Blz3g)mh+e5?SmFs5+#{b5&{@&yj4&75k9<emrRBn*apO}{KPR3E9s0P1yg z(CsZ${=r;j`%IlE0i-)%P25tZtI~`VK_@zfsApHl{-#n@J#Zxo{@E0A|+u^lD$*JIHB$r(K7jQ#P;%iQFBs z^6R`m{-Ft|bMZ?xmTqslb@|&%>D)Z__d46X4}KxBCH{O!b$btkDzk+C^Yv=A|DDFn&iBK=ef21B)Ap^_oxzl2W<%C1{0Y9#3F+aOy)z27u>?-dgP-lU z*$OQA6RxV^f5fdCzHfzJWeE(*N% zrp`{D>!gmyvz^{K1Av}9%_aj6sV1j=aygf()1V7w4r=swol=juJbU8bVN4UOCtuo9 zpigu^xzx)}jon#SChqSLx}QSPJ&vZc$KP>is@kwG>L-dv+&VAUFCdt?09WCt!c*s( zJFQ6gUhTw1fXzsA19ce08NHw>*Idad+9#%IWWYMCJA|CBImU;(pcn+>d)A~_QlO2r zvRs+Y)j-oPZQms|l6L{Na?^ChK!7cmEuiY*XCW?N`3^lYOpuul*2kyzm2eTDGoww^M>i zvlJBk?H=Kj3C2%xAoH@=NibozSsR3;;Ag65q_#`VR~Jt4Ev%4(7vet2ZhqeDdKNlpDBI2~ z6(K;k(Gh*>6<&%(M3xUQ10>Y=!6!ZbE}Ay_f5iIW|F2VO>%HX}s81O64V$dg2f-A!J_UwL+*= z1A4c;AuBZ)M#6H%pDTw9n2PQ554&*&b_9aUgO)LWD7r`*Sg~-?XMo+9h3dJ0`^>8I z2X(-m%{PVtJLXU|+?*ID2gp6+=t^ZHdIe|Fkwi_Mdc@a}=qKCNa0?_z;n|1q$aMLo zk$H{2;_=SXsrjI#=EZa&OQnX~23CwtH^EJJ?>u+~_K{Jgn48t<#fr&n0AGLy9lg}E zaCC`PlDyVy*p+Ukv?ED6g{PPswMfX8A^MZ<2BUuKh8Ab}!qrO+xR}u!FR)7-!pOSW zoYbAV^p}{Z$AuW2`YR7AZ~;X~vHN1^lrL`?LY;l{!v1zQ1}!>|W~rO8WCu+i?eMSq z6IP#r+dWC^OA1*Nr>3mUP4gwGEi=Ym$g^umC(fzYAJ=10$8xB+lNLfHL8~_=*bdb|8p-YpYk7+9w{Es2UaEvdVqwoQomfWZmh`vN0 zB`_7xV00iHzl{$(2y82)I$eFN7$FRORepUIemy<}Rv2GajLMri)fC~$v>dc1&S(!9 zZkMhQ74$pkk@1c61N49D=|^9|chQqe`T^K$LEj9wM7J&Dd7+OPm3~q@kOjq$3s`^r zGp9R(@CfuDdR;i-LC?>drca>{!$S)CIcTQ;hy3?IW-)p*d@C1UHTW{~IjQ;bqITj- zs%{$cR|LZC!o+fuR2I4$ZL6+y!;aQoh8`=QyXR#K0?-jHRk5A6)#>Dzb=X*DAw$(A-+5e4cng*3A_vvLe3|;#)T@c{X6ps638PJo0(MT@y>7N;%GB-mSq;6bp7M?9trk8$INKa# zp=Dc`@BmhS_2hyv#$Z0?&gN7_;w%hCN7^9(lw~d*(BRbm%Ry_gm`q2eBd8!R%rb>( zZb#Va-68ieu~UTtWnWA0YZT*zpXAhEx6{>JCb(L~v$SXtPu&?%@;h~#A0kIWRvGH<1>sPtakp`8tY}DNh*H*f{C>b7Ij!6l{5jPk0$&8LF1+JZm_&cyfSDMuS6i~}& z`~FWL5ORjRDQwBYDuAJ#tW2%Na~JR$xkE!tmCnPeC~I#BgXQAWxy6&^@;(s`=yXjm zq#5ZkBQ4;x7ODZEB9BJ*#&uI)FqfmweW!+o)VK0hpNg*24!X6ea{2f*>Pums5z9Q8 zyqMm0y7-QcWnE+9w$~BI-s^NkgB&WIuENpR_@n~YYc&Y&QrWR;5Fra-K^6@t1t2(* zv48b}EJ74i-}z;&PIxRn8dTWTAdi3x-G({48pma|{aNTro>kmzeoME8T%KX*hBQ|O zT?~*%rdu;HCR8*}y)pYL>>(E5j##ek1Yc<8O&ZjI1hPi;&$x9!KLe5!siwB^6hwj| zGthF5xzf|?%+;$G?FEP|e~6^(w$A!hWrv|eDrrA4g@Qd zKEePa5qbW^q~-&rV*Fxo>UB73oQljZbG}I%U%7Q#BXvo|?+iNA5fN}av!$NpUe&lb z{^ceBXMFu=h+zkLCmgFm{Guv&f@%Szjk*y|JeP>)`;s)t8!gauQQ_96NHz_dR_ zs9c|#Zod#r!sKE?F!~84O?i;jv;0Z3Wg*Ik?0fN?>fXN!;7NOlzEHk+)X+J-@&uo^ z_AXRY-x%?hUWF@o1=Xw0T6|2=_h&UM4Qy$?A!3dK31ENrlZxdT!b{$a@XCCt43Cme zegbw?6c>P9__c)E22AQ*a|t~`;DLYoF3FfxFCt6b5l%M+R;EXR3)jW-(+{vW1!k{3 z7j*iA7qSfe^`l&*|v})lX1#J6tG4n>`-_^WlyzpH2Q2j8P-0l}n2ZH~ z4CO=gV~yff%^#9Ff1Y7uv~OIQKt!+9KlTdrN%dWw7$UXl3KA>I2ixyg>+Uwvl8VDe z!iy@fV(&N_S2-{MUbIS-qp<#D zBm>-`nlXj#d1j3;S-xR_>Dw5yP?y+59h*-U>)wdQ^K?!p+uJ^c9@6BEhu#JeASePz zP@TQ?iP_zS0HsMUnYBzj|2)+Ub?3nr8r^{`uT4Lk)i>oN;#R;;T%f-8M?jiF5U2Ug$nPT*l6T|_2xnSdmi+`>NoTX z?*8RD-t9H0ld0Ycph^d|*oqiDMvVBy$U(?KCtp_8FNu4~#UuMF@RAOyK{&FNbBful z7EFy4vA=4sQA1z=#K^qpZL6`k(uXPT?rNl7aLgvB=K(&{h3s#Lf2GCg8Q?r?&;BCB zKs(;c03HXPEP)z8cjVA@qx88XT}G<<8G4KaZ58kIjZt|}Vvc&9TKHXO+xx!xWqo_= z#mY{|sO&cql6SJ&>6##4Ld3V<8#ueE&TG}{$+t7}K3MGtDfV_u()243T4#_8f#P$7 zz4+w8+#?JPM3^G)a^r8z{26^Oa^MfCLFY$P((w0Oo@`0SHSY=TA#EUqN)9tte0|xE z;(<3KawOP7UiRFZ=28X&0ThK}N?@;glpaq^V+0N$TIbr{83kk`LNW0_9PR;bGxYxG zOD(-H1*|h+2QNA1)5A(US!Ro{LoT}Nu)5zh9Y%a5XpYkla@MAUzA)@`;Hp=vpgprG*ZW@|#SO@t?ZQqAP(m8EFv*(v>ub}neNhH*vY<}z zC!=Tf!zDjTg5e~~Wp9c1`hK^6`i@O&iS?6lW+>O}8GEZ(K}@I}?i+L2pX&U6q`NF6 zA7NQFvNCZ~LP|a{CoyNbIm@cX_bGqVR)-N}39WJ>-Z;5i3AA1|B(^;~p*^LU*$(uw2MM__8nmSE=~1bzj-}2=yk-zQU* zd{v+vy}gdHh6c&OHKoB8z>n=*e>70rDWIoQR34Gm>k?O0Aj>(_aNqSQ3kPCgUG@^- zTq&-4$!b9sI`RGl{lK*L5+J!;8B9deEDV^Derp26jpXyK+tfD1KdE*H#`0+@O?xa1 z)o*k1z{x57|Mhja)aqd5(bJV1EYXI#1|zv->M=0nv}51o;*BjZROg%6 zF%!$19GA-sqT8?pkP{Df)_5uiU5#pg?>Dy(DbF=Q!NN87@?`<*pr0ZL-6UAL!qBA^ z;Y;?RAJ;_eLfE3jkhZ&N?m4g`i}{do70E^H2I3qkJl@yNZIaS9*Dc!7Vm`h=+P zacaLmZCeTQv;uSV=Lo-6B930(WSwWS+ucXGsD75K#LqI6Sne?Zt7JfiqwtP#fd8Ok zKyGtw0W~`GiG>TTW|bHcTuE+H4h*Buw{}j9tG6- zt)K7}AtkB>!)gF=A4U6F#UsAn=&nLPH>%+B-g}eZ-HY;*kK7(!=y0QM)zy(+bt|#b zcOv}c5yo=S)_AOF3J2xGXW`Yh9M@;1G^VRKUk7GGLoZ%4ex(;JJ8F;Xv0`PrdTLj~ z)P|o1)**01&!&2~($Gn=pDk>usQ6*rllP*OSZ6?I(;vZwbBezkiNbK~0xET?72f8k z!D({cCo=Y((cYV349TuLyB~annms33-+H%An3|#a!(pI7bein^6qYMKC=#Mjp+ZQq zzQHL>!uj~!AGXBG@#Qz?;x5EmIlQM)!d}5A%I{>-W5Xa`O3YYGHn4sy!N-t+n5hDm zigvtr(`ytWm+?-OMQFco{mz{*6Z`6iJ;9v`nbbfOkxe-9y;}~xG~__-q5SWpw^q@; zf?;XpMpQ-KhF|)sAfI#0ZWu=@rqI~Ak}m%voB?vy1q-%Cs&w6^mJj};rSY0oS;&8e9|wOz*DeEpD$el+N!(eX zHGk+gIRw6nEyZgE#BQIUy4s(T%HCuFE8;%ye2z99q4np-7=(}b#nq?ek4u)wudHe z_9@(zoE%vj698~I*&pv;e9jopx)?V(d0{tXezLytGmSD$6f2$lTOCq~bj)I;Bq?Mr z>T5JlF4Q<$zeonX`Xc#dFQMuehv?|1q8oFs?BXjmEY)^(n0PWI_317H-BLItZ8Ar4 z>VA<6j^cpog7cvhI-9c9EaZJrmz8UdPj*L4Y}LZnJ0x!}K*RR>W&8|- zf0~N#w@AQ0K3!((`uUa&k?uqW3U|Tiv_2Au{B2x`f1bTCTrVo% zCtB+@^|mr%(Jnv$7y2}!G`yki#bx~lV_W9h@(2(Yz@wdscaR1Qb$*MR(mvL)EJ4;S zVufYMR{gs49k77Z-|wx&w8p9u5h^~@tMM=O0$rK#;;wksVK4nJZip}SV{P99C9GiPV6E*K5=wf3Gmiw;@ruSj*3# zqEXXbr(N0a!(ODlGYaC7AJ8ocV>_4m-SlG*`IX;a=`3d>zEv%)eje?N!&Z?Srl)Mf zlN5$m%P_VX8gzjr90^=Vc2{K0flq(wFAdg)b?oQm+kdGl(}@Yl6Sd>ar<15&jkUoT zjs4z|2WvmH8|Zu@H^}s{3hE6ea+yZFQ3^9u z3u6T1UHuv(pl!eR=h?d+Iv)7L!{ezEC%^`OQJ34OjTWVgyy`~wquJ?8I zV{eHAcAQz+dpT-i-;lOvTlW57bcyjnyuu%|n_z*XceS7IN1Cc9YxdnRyT1UL?hV7e zFu6_0V=ZK?b)F_zk4cm#j5BgoJ4EL1KD}74!kHtM_})7LD;Zi-SGhOxy9z#>tpM6( za@UvhN8!^Oyr$U8;_SW+Yv=YOfvTygYDgMNt3smX`i*%!c>y+F5u|!9&sX!lShhlw zwS80DRbChN_X&YigR&@7 zfQg2gv$B_&#d;yVveG5lfd=MV-*K(I+Gu4ov)*)>!6<`lO46^$RNrL%e@ade!?eyT zexmn;Bl1`VV!?gzR(}^mz7@PDoNZ zZ!b}(17u!i<5!8F)d)Zh1vyV~Z++dWm_{N(FvGz1tnh1Zz>WM<+<1h>okQ_2S-z_@ z*SEYs#MZDNTd&dCkJmsA`i;CS6Bwpnai07}{|TU#{aiy@JXzuAxw@A8D9R{O^ZjS$aXXJwz^c92HY3($PV{0TTOuv%!Q0UxONI+<`|ismB+>}*?3@5s{eeG+xfwYCCvg0>NlP4gZ_GQMH$%#l(5%{J@@a-VY5DcGswZ~J`~mq+g~7{$P>MA7j3rRlNjLx6IhJ;kJz7qyBz7Q zZ^hPnu(&jFN+8A75zzO#5MeWYxz~TaO$tU9j(=hO*whv;;!~V?f|a&M0aR2aXTbdN zTtX7w@x%3XU2>Vd$_u_t(Hsu`*68-F;xF}1moalX-@?isggvwD^?`~@jgN|@@FuPn z+)~`_P3u(Zx0M;Ifx1nta16zrWCQS5wUDOPAW%| zlE_yxlyJPgU_FTC$|UCWTK{ha$M!bqv`Vm^Oa&cqJv^S1XXLG;YfS3R(g5iBPr zi~s9wb-!pBqL?5W|0a?B9mX5o4uG3(gd{m26^5+Ipu|KcwqF=5EFECvdgB^9-kgdg zf1R0^3f}1*Ps-5ioTTV)Wx@};(aC=H{e@t-wvrVYWWPbg77`?>YqdV@yDGCbEPa;V z_sba*$t0iGQx1EaQw6^^)-J-*$CGiHg4jo+LqCHp<(XF{x-tEmFr?zIF;spYM!`hY zl#tFq-Lys!*EvceD@Cu-vs}Dh&@5!HEXiTLEJ*G*(+E03SAkzO7Fb|gz|hA z61;`XtDeZk2F_*-`;Wo);_NRUjSHhL5>qeCGMy^wJEtxLhg=`o0Q-1A(R+7R!&jT3 zYs3aOUiam>?-WUFzhvDzo>#5LCzv224vFfm0@h)^53qOrRvcLj0l+IqEXaVvbyI9=slFanl<; z629z(Yx@e%QTE5{jj;*&VyqW<*yG`rd|uPl)T8l#0RM1~7n{gD86RXnakV9Qd$@Lt zOLJluFz0#nvBiGiB_+=hmG3dIN|))Qo%^>}=X~g67zQ#KFk+!>+6Dp{jWig8G#W}# zux2v9?%Cvh4{VS`^E!)Dn<@S85@#WyOU#u-r>e$b5f;hK@Lq03>F1@5dNWwakT|H|Ci-R`W%GA{}(~p8e zeKN-8dbQBe?d4BW_(HY4@u!9q-E5*s^AF+=2`^__DX>PWSHwSm*UsB5h1ZPGm3ah| z5vBC4_{ybZKEp1$Rkz@2Zg0D5H||(jMl<$jtTi5^*$G+p-kEvZpRnlwnFbs+NAJga zt!ugTs($SxkI~4nfzvB6Nc8>w($5U3UfvB}6)A;XLjGCWM&ASgRJ`|ck7F;8UiNPp zMTk<(>YKQ~5VPeF69y#33~ujHM|iIk&rVHLVyX?b;XQUZfu0kKgei?iKf3huY@&6$ zGF6JX`hMdNA76rTgfW;K!)5N#4TCxZTvGSA;xc8b|9T{|Z>J3#P%qh#dXdV&q5KlS zfU%v*v5c0H-IQMha;?qWH|V&UeJTAS75uFBfl)*6mWaH~-n9!cjK>MX=`DG~PY0bA zQ{*pSr$W=0;;`XX{L1X}?)xtOR?>Sv)eu)k+Sv*rE0$Y-jKf*s={4#Be?4Y1k(uqGyEpQfK^N=abM9*y;NJTE=-jMmwwmb$v=P|_o1KN&NVgVV5r-N ziO*h2I}qL6>^Pe@>TVgrW%l8o-DSPMZ7;ogYFob}ckLj|H+T|;C|)dWN4aB~rtR8v zzZtW-ymHQNpG8qOOfSHMvHhu~kLSsUEtQ4*wU`9|S0=ZX8>VaOtt>%D!r2Oh9j~`N z(lHLN{5H1lzGrkSaNdqR7r3LH5_y7{2vq|&H+t3qv&J4^e=X&Y&S&&?@;mhEbWiF$ zNK=5c>rCy%1NUU<<&zg5tI;QYxtY$B@UNNpXB>KUy6p15Pgswq(t`4f1>ah#+ctcdOwW@3-*`%w%NlgdkB-*fA2rlW*vm}{6V4|9OQ818=K4f z8(q)t&a@cdrB9Kbw^M&D$f)_OxBirEWI7!T3kC_{6eUgl#3(chesjJ;?4>TBc++6Q z1RVdR2cnN&r8lh8&cI-D+ias@qkW6^S`U|IyYDW_lN|k0rVYE-PG6Y zcHFqG+7W;%n46c!i0orFqK9yNklgIhyaaZW-k;;wVK}X;$wsmZefVCpOKp-5yAn6X z1)pXx;xhdG^a*MxMmiLHhB1IaUx;A>R&s07N+GKDsiOgZAew)KLYPw|?+nQW40Yt_ z&Eyk*sbBGg<<;3Pg0fHZ{%AMQSfH?kq$t212kyUxVg)bZ3&IX-8i0_q9_wqO_qn^#sZD+j)=ruLFL)zE0OXV_+9IE--=pE}w=o$#koE`-xF!wjZEHl#OqbX?}cN z+USJnhs2N1BVXB3e-~L)Y=oQr0J2pK4rP1tOg$W}sh8|>rN&6E^qDBf|+M#>Ibndq)s9zSdk} z@{0bqZnlVTB43jcglwaDj<1v|rm();2ir_^H*dzoXH`Qvuwq_NY9x(Ic)=PZ_Tm`X z@tx^~P8Y1VUIl1YN5g{IDO`AxLd$*VSEtNAtHLu3M^U@jxe{`F-;ze^4)H>z%46gU zGW@VrI(h!RDwzMHi@w^(VRZAoZ{E(C=UP2u`Z0I7O1)YlcOIcd5anB8tAvce&D-}H zMLtq{J6H4BEBs|q&%wE{gX3H;Ei%!ycUWLYG`Sggb>9v2T~KO-X_uu}8x6dr+%LVF zZ6{#)!_vE|yv1qeqE_d4Ke(Rg1c+r1WSM?C`=)2$7_L=K70+oqV2%Sh4nMxH4FG*?X5(0bDBl1Wi3d5J)2fmXU#bUixzp9$T6K z(N>V}z~m4nW?v11m2XM?`^ovOx54bC^Lwh<@*BW*>ebzlCWh4ejAX@=6>+ax^tudm zYtyxe;p8jw$RMNh{SKnq%MK`9pAB3H#|C~L`(dPP`xamA55m3uo^o!(gY=H0SnUAt zv^k~a>wH74_n*(&ZpBSKZhbP$5SuV;)H*|>qC;OxSdLVaNe#N5D&F}6#n*tW;0Tb z^B8Y%zvQ|10x~XP&FEQd=BiyiNT`ETy}cGoeLLYoC)NBA$tVlRzxP!4+wV$_WH5Bx z`nnEqR&V2Q*OK1{@pW)sOX>agx`-FZMa#Iba~#e=t8e~_sUii}VJT13 zuQyV!b6aUI%sU-Su?heF(Kso8wJM{6C#F*>Uya5)7)4V+=rHvj}=KOiprqDdQRz4+Wb`3Nd7iB@^_TnzW%t;y@Dm(_HgfCSPjL^%s_ap z(oG84#8^_c|DvKdmDknpl|nlH=Xl5#6$F)Te=W26b>tUg01NtVR$el1y7j}P1WCrp z8VB+Bq4DQ|?FKR5Z&W$}$7r~fFbT=J7dOPFW|M{=IFGD!J(~>YEPMNP!4WHJK*B8z zW+TyF$KL)TU(L?!554vJjH;DmDu87c@P-`A{TYPR2gs3q-+qD8S?4NNI_j&bhZ> zaE*?|#NXYl9n1`?O^^R>y-EefC}+4E9_BU!k_ZIxlzSUWng1Aqb}O&Ic=)}<++$O! zk&_XuPa%bxxxFBU8PshRPnya)Vg=Ueg|zyS?m5hZ-Fm%cyzDRP!wi>L6NvXi`J{JHrJ#-n)YGGt)t z#RcfOL!E@^4Nia2O&!nP=1es{AE~JJ){oH{cPdNGA%`F!ooTzJUE=8Y&CcX;0R=oK~& zqTy?RhP{xYwC__dXfj;1Mx0zXgdO?U8;f>HJa9aIqoh28OCcWL3^$VrBY{au({tS75rL!UFhJ1fJ z-vSliQ#*(oI}zXd!+s_Cd);zOPns#4CiX$T_s?;=*K0n!fFvQDb{X+bMzr3F8dG0q zF_hu4i9>-#`<+qO`bmg~S8#uMt}eo5!4-0XG5+P+r|R2RnS0Zao-I91Q7oUd{Zc`& zzk<;En)1FkR^Th8tBoJ;hW9QwF#I`N8dWcyM>*TuB>-D{9ikspKIp*uZrvpLNQNQ9 z6Kt(~UZ}H8jjWp9B?>czkxAvzn(OsDMy|W56#e!ygHS<+eQI!@@Pb}6euis^cGJCl zDq*+ncek2eH6t-w<)9X%Pe`p7NUHCy#d;;RO@S%j`oL0 z{>8_@`hhz&VHGI<#mi?%p_y|APZoa~qFIsjau0vFGT92;gX)?&7C?av!}FPXt4OwD z{ED;vhR9*0sOl@-Z2H)|5m)jkm8JJsdwrx|Q#@7K&F-fq^?YT`FJKd?GW%Ux1IaJ$ z`+y=~RlW^6#nZQ}>ie!E8#ozeEJT`Nrq~ce%76pr>EpJ(_vY4g%}&8D29{s^^aqwj zDU0TAp>z0#boW|bNy>k<{AQo?Xx5@egc{)9q;F&qlY4`-q>w*Z9&29_SUH=#L((SK zFO=BcrnD+`yc7Ue!^ZM{spEtLyv#IbxH69%Vww&D%Lmg?dtG$H{osSo!?L>qu@ln> z_2A||b7IGXBhEe}DVGE)?#r!cx5*s)+mOj zfSqT!%E+v=JV(m~MsKBDRUq*{>_qJgtc~U7>9mjBSN+~O9d3bgzcSM zI-QN%wAiMdes?OE0MY5!?2-l+!St6?<$qy~X(3*{WD@c`aF390%uqk8oD&@dmNDJ? zy%jht$}ohft;Q@g)Cn2xcP}ScJ>ji^4Duk^nVp*omgq3>Dc2aY=g&M)n{7Lm78f`W zG3s6c)e?8)HBM*A1!H+_-t_})4}3@&Z}ffaSKdfCdfm!nM~<5c$$D0c>*c|-G%pAQ zA4)y@Qm9E0$FJ=nVH!+%k3PUVsF36y=J0b`#1yI>hTeEDuKkp146_O|>vz8eJ=rPc z&g)@0{RhH3Nc)d@+}d1I;*g?W#3erni>NqyD<>o6lQLgSi+b!gQEK${LN)g(#T8$8 zzNC^ckE0%I?9(~8cjlEtLT1O*AJ~DW+{DH#^pY)wiOR<%)b zC)uy(l=&^&JU*V*+jW2@w6kx$Y8p=EtNpw>$7qG;Q5*?t5Oq+{)2uZucTQD1N{G;< zV5c?BQ_DU~zLq&(Me!F`i-h{@ySkpcO2ysts=^_ll%zYVh0t`-!#6Mxs0!UcCg#@4ih{r`+aK>R3d$T}+{1bZD7qhQPB~ zagI~9Ckx`~-Th>V?k5uknsbp4%4qC&wl@r= z5RxZi+TK3hF8CuJI*qdw7v$oN-jdJA05o`RCR38eKfSh^BcFSF#4m}&xPE=#a;qy9 z$JPA{ct?;6z{D+Jj(Wv6_o;J8TVZ+wDS$}0C$|bP) z4Zoz$P(~&tQ3imPwzLmpzbAl*9o3b{jB%nHh!xBnT_BjJ;m6*CbQR`Jw@Qo1{5zd^lUNVJq`Z?9f9W-rEdVaq8 z;h*;~+20;#I$#k@(?8>t$+RQav1rMHm3PtXaGHu6Z)FENeD;A&$;YIpA zV2lh5&~CDPPwlMvO6MU?>e-tk-Ttvv96+`H0L|_n2Lkf}!O*Q#HO#<%w)N+>vRvre zEK*_}4=fM3BkET3isAUZ|E{|)I!@J_SMoo^aloYKMeYyhd-s>bN)bh_k(z<&2~hbf z@tK2tdFhv(27g;%_Kk1~f>9`saWSyIluq^1t3w&jL_Co+wWX`-y#VINH40A-fTrH5 z@hcm{*ToG1hF{WGfAkf{gKu>KXM(5A6TAlTGI8&B-uv~8i3EUTft=J?FY(Bv-|szV zQtm%!KbYclN&gcvVD&VzO^m<^;VL_uVWMD)p~P4n+z56Ge8a{l?Aa@bR*~H*vMt6q zD()W%B4QYR6O?<=y+;wHN9~i()evVoyx=gb*8`Rq5aF4LfwYXC!|UE(lpUg;y6!J; zWv{l-6%t8!{nr2!tf(H+hxj(><^tuy96)t~JR}p$Kdo;tsOeWPeu@uU-j%VCO}ICC zEcWbm#e?5%>a9r)0%bGLLbRXd&H_ubB7Gl`4;KQr*OcN#?=Sq(Pmf-?enX=;Pu>7+nz z`*0!|tWrVy^fK!=wdBR>)5AwP2RcSRT*p<#__(U+F<|%>uO}Ubfj(4Z zaOvqygf^*Ht?#j&xvAcJ03nU9y`)&cho7>2h)Kcq=abW|*Sz>zOW2#5zQScaJ*X^+ zG{u{sZ=RCTCwp~Ti*J>`0%Q0AY5N)Bau8m@Bxa@Bs_77F>dh+r4N@ODF^FGed)D04 zk9*YZu7=I~@1^Zw1Rz{ndy3u8#io8mKB}RY->O^D4lsn!k^rGe##YwcdgDD1Fj>#E z$Vmo^wK2fi*NN;yGG2??dMk$xmB%#7n891V z`j6tEf={KV)7O5ZWvs)6v6A3_bT{EsOD`TTFR1p4lr&5kLs8 z?>5`<0urvt`NFTjeS(iD_7dRR=U%f!0BJtOD0*S04EtX1r%U^OV8K0qS}n_1x1%id z4HHcr^P*SEm|Cwt7HUi?iMxEa{~D@m)*KCp9^3dgp?fa~XZT3PnVD9$egtyg7xT?7 z1ASfkmK;nxWEwVUR|f%d)$!a1mL^eexsqeaD#DH5Ej+P%+kZ5*k9DmFRTSa$BLt?y z#Lj06`oG3~u40?w3kmhGm`h?uV}=?Y=CI-o19ZNI_g`{z?t;89CENR)L!{QN^aCP) zuRDB5sAHx`6&m6PWqD8b!nN6Ek?~#RCS@;H$usZORd1JJ`qzAS?l5%-fv`uVvBm0s zmx&7(-)K z%>-II{13V5-tLZ(+fz)*sGal^=!hxw4GVWw(!P>D3Hy(K`5DlK+rtqnv#@0TkP1 zvZM9>GWMJ8TM~hAZShFvkLkAQLRbYGf(+G4g8bTr$K(Tg~+}K&^YS1fE`y$W&ld|COoPoz8X*}% zpa1CHoGex|Q%+x-o!r&EFgkW;(XCPsyr#2Op<&*TBIL64(+Cara?q#hbqazcPcpaC z@5}=$xQ81iQMaqxpBCcWNbN_+&y>sZ!V;EsK4blddJwcA=GgR zc^xWmbttBE&stz+N`GB-+d!h1DoTKN5#$UH+9Cp~{I30!;`t6fd(_Dd~4>q9IbhE#+47qH^*REZ&Snh&ik32AJE%6_Y-{iR)t#TGP=;d-Rm{+ z@OJ%mWru#T_i^~DwI1+f#KqH&uQC`SfwqCOeg=g>fPA^a_YfnZ&McTBz8O5LP=~M2 zFUBv0d2dTU16#&(gS8bNv&dl32{fnDYnA*Y@sP@XJ#b!@i#@q_vIkNAR`%lq^$k=D9-A>B=JKMo!}h zuc~1Nwm=cy>8Y=oOCTQ1KnMZR+`D3FaRI}9rvHz#Y`A^Om2HJD8Y>#?BIRF zJjn0EY*~zD+wz2HWP81l5+yU0e&n~`*LRszMYIKu1SxiqD?DZyCdvW7K%f!Mmxl?t zcR*Htz)IPt-QYam@~<~%j+#KU5t^TP>z*uW$u5xC_y}M*Vb%Rv{4dI~g~w3DuM1}R zXxl``Yww;Gy0T?5Ol{Lc@6kcRRqqThh@;U}jQMl!`3$qBjI`E$%7aU%l*JA^+($;6Y4PR3L2uXZAwKhaSCI zvx2#Qv1QcZOKN%qh5xu)_n;IG0PioDnyG&$#>&G}c#ovDS8(B%fY;`k{=%v;H4faU zCUa2Nh$z8l`K8>_-dypZa2B7dxWZ@2GWfsnvx0qdD|6eheu;2m&;+aFyo7&IU^qWN zPbn}>5_Fl^@Izv>Ygk!=gSk1XpYr|>Z|#M2`7|oG+}0NaQSw%V{yKZ(SBP-;wcu^| z&{Ut4dPk>6f0!1FisPDf$k*On4J_jsw*hloGIVqI2*|g!^6DJcE70u`hF*2mEXOH< zAIFT~5hr9uO|N`=x5%^a90Th}#A0r%Jmhp3K0L`t)`1*`?2Bgh^tZH|HpnO%yudL# zu`^2aUbfP%LXY_0@u{$gf~M~YWRjtPEjC#2@lMW`d%N;Ex{16k;@NgEIq}+4J?y^(dK9pD?=aPrvs4nI4O1H=mpC&FkC+_t#Hgof3o(@QQShIkSrOPxu zkGQCJj>vW@O*3$1aJj&8|Iv*urRCMn2ESrfi|Yqx-Y)SYJ;Mv@yIsuIOM-B*kZ(0e zP|IAlvnK9j?2UnqdGS*6wGBu};&rrje8A*qW)E0#_PgOTvuuQE4-AAO#N6!mPqeh(g0y^6@0k2Scm!a6?q{_-(Bi?FfPqC>`dda28NBPog18dO12{Aoi#lc3658}b8uU<4m z=W)49+mM`isWW`r;s-`V1%YJI*pY)Q+pQkvm`mlNpE(t9rg6DiGR3jHy(s5Re-HJN z1VV$I&z@{Bj>dWmc^ zMN2+d$#wqY#etA7_w2R8BNTmtZ6@ry-F@1Mm|s`&XA)O3)M-+ZXQ0P_NHo11f`wJu z5fBC+p4=u${%WdU%)W8!5!)~C5H8HYv+bo{!Z~H6Rgo&hH*yn_?RtKP*7jS0I+_7a znDpK6;grc73nTtp^!>`S?-KC#`}yI$IE?2h7hS9Dl$`Sa){mTx^^-cTZ3=J|7Xrf9 ze!OelOZ&!fmQ}PinM3~Q%#W{e1L!2={AqjjGxu^g-PZ9f+TmQIu)WmU`bm(5Ba%xq za-eeyixMAwD{TMv`$*Z+t6@D;uR7llF4kZ#est%j&Ej8b2FpQ z1AFdzoy0Td@^m+hDV0~i5i??%gF9mIfApef4@vF6m)4tZH@mf~6^JHwooHioKd-qP z@`eE}#KVHkU!3*z{30)`CB^FCSN)^zw%k`mJr51*k(Q^`fgK?V?L$9v5Ts{%dI8>{0E_9>N`O2N+9M z`G02)&(hBUB-%?&3!YC>;VD_38`w|4lc?zRpa}R*(cX`b3E0A30Tw^nFDadg^s4=4 z1gpv3MBH-LESEpM1XE6zPZ)aK&Xp$H*TI2$lkrxfeZU zAe>%NvQ*_*dHDQ#inOd!G5_y0s|1>K8E2=?KY9`J}`Yy2O2yGi%JO zoQPv&Zs;wZq{UecpDxz`4uSD5tT2%_-raA5d`{3w(3^m4Tj7(gcSJ6C+vw#8mR{2T`u zv!vJ2#FE4|LbVj8wHgCdq!$`yQU`Yaqg1$s*HL|&IbEt8A6qr0(Bo3ERz#=7HmU}L z)0!+nxphvgE|%7B*JW{OJ29DkAuP#1#dlP$dMFour;r-;)+(2Ju4ZdO%{8zqz;YB8 z6P|w^Nav0$)G!kg0QSh4NPp<~M(4R7mb7e97kniOf>@b2CS41J=x9;e~WK(fueD; zM=C0)s28ox@s+fr0m%kvpq;)?hyP{pLbX!ZlFYA7_x;|2#m@-7a8MSkFn9y!9xu%A z$mykA7Bb(CN3epybN6G9n1|gG4-m~+@|0!a0&?4;WmWWAGeL>VAu|lpInQsoh(q*U z(>Lh!6(#YsdaW^$tRrJu7chr~lWPPSWq>!H|Ia$y#$R z=K>T=PZMDe$xZzR=O{L;+^?+0^zmPzg*cBNR7k=xk~>m-<3{weF$aKUyz1H?^XQcE z-_&~tZp${BH8eIL8~?s`1rVdeClTN(db?ZIn}f~eG$&Z9CU%p%IyfNrChAlaU~>P- ze0~B4j>>6TSem|g5w*P+Tm24Hual~S>`7I-TR*x;2Mw_jKDW=+Z&&wZB)UBzzBZQG z?b3=REvU>NfaXv7wk5!MrDO1CXj<@rT}G=m zAToKi-KA@yk7D|f6mOCty)kuIC?)D_NWWVc-mf8XjJGm88rtr)%>AZl>qSZJtbs8} zu-Eo7jg@rPf&PRG+eiF-=r^EbK%P9QIxW{tpFBwoDVLcGTUp-O^1nWzs6%@55a${m zh^G8YT&Ki}1*KrA2>#zsEWA__=X|X_mME%CohiwpQHC`+U&aS{B}P1JmC%f zb_N;^G;$^>Fo_Z+aU_pNlE-$^J>kTCcJ|t26>pk+pRo5@>;LWmYj7S0X7VY%|UxwD!L**lU2DvLILeNqJ4<%Ig4c`4U`{_Y)-d+vhlZGpL*Wz z09ZjWWo|yAHVk--6NyFw?t+&txE|q&ce2t&J@jQiv5;n6EKy9eLNnT)i4pH@F5{#| zQgBx1>7bKr#B1sdl=|6Os7s**7my0MoWfl28R&8kdPhc$Ozt~SlPY@DcItDW90A3z zGCeIQ<|;m{1QfwogS#1WY*uLKwgBb`(tCxC=RLSZJ|7^+96sX<(`h|T$&!Fafz1kJ zJAt{Zn}R6}fgrUefFuYb-8H&RIJmDg_HB>LS;yxJKCZI8K*oU~QGjo@ZlQvRqhdIl zMBnMu%3dom$aD@IRfOUMHLMF|!cn?NcwSOk@q)(QWIc=bH@QOKXaSYdRU9s`-7F|U zX`k^1L`DSLLj}}JhfFXbOaRe@dc##ctB4(Qo5#n+N~;AKvI1)Xh@x2 zV6)04%9cj}?f1 zGWjyjBTILPolPA!V2XmBLJ3JMBm};i(R4N8_zRhiGXw_b&=KP`yyJwZaqUJM@OS(9 zQJQ58+&w;lfRA$ zd#4=fVJ8i8@&lD5;asMZK=~H*Zp*SMVCfAkaFA?aGqSNpfmfi__}W|>NuE!4mV zu+x(pwJnp}nmkK<)}A&hHT^K1n-clMF63(!G?~Lb5Gpd8m?_sc(zk8>qNQ- z@6tG{3q64;@tq!H+b=p{nsfu?fIbOZ*kG#@fgTf-EC79%ImH42^01nPtjU5iOEcRM zdC{Ff;Dx@DB#r`rvL4SJN{d9La%4>w+v7R3ZqFb(Sfns&Y--ii9|sERJfUe!2k@@Z z`hxFB;@}CeqoZ|hMI+eu#_ngcLiV-`MWWl8>6s-KVlN&W!3v2!FbdPk`| zpuE$5WxZllN~m)|aAy-E(!rr1(;#vSA1ve?OfYNN5GQN~_|lUDB?5_5@m!jbV+L%H zr7HJOPoz~%oQtCCBFq`Df`_s`g6N_;8=xSJqC>Kq+zBhSWnpHsVL>vlIk?thf}K-* zbRbK6bm~#Fjbr5|Zt^(nV*tM4dqjbMV(FZ~f=mc1?5M%A^RR7r9GmOrYN~QkCV~mv z$@tK-uSyB7F0fGI361D+1qO1gXVX-I_evNKxzB5oEvy_9MB}eo>NKAH&O@FkJo%Y& zjO9IZDNA%^)}iZnN$e$;CP@zFybmnp2)-92J`pK4o$bgLsw=1`7X6r+v|rCy7^sIl zFcdyTy&OTiLvaSTiwtx4J1-^aB0v#jDjf%YYR>Y^5kSDi#$H!AlWqVRii%~n@Dv3Oh$ z%h)#_ord0$1Jn){pisa@6&lHD0UR7hFHDL9PvvDo=a5WfmURn6Ajr|GIaM9R0$rA( zB(Y^zKt$&g?rc6EZM;2$^C=z)i`*B`p~HPJvWw46)dGBEa@uz;j?KV)KygBQ%C-eB zkd(?A&||R=L653RMX-sZR~d=P96&@vg5BPbP8uNAln#=0py+v#OYm-vb~YWT&SNLw)N01KfC4vfg;_`+l9}XI zBwAU4LTzb-i~->i{wR)SpXJM~0KDZzoRtyBPfSoT6$Mi{HLU1Sjc9{KL-n9J$;J{V z-eor6`3V1KTcVII_0vi6ek;$1U7*%FO#z0wzGhp z%Hch$Q#NItqIEG*%?Q}@WNCX}^4`X$ytNENs0VJmoo8fP;l823=iq9=Cs5y|IVUCT zx-G4Vm*DwE_ymLX8$D&6XfO*1+f>YeD^tZr3NjHoU)=el5t`;I0YYI`PP-#7z84E0&dEIa_;h6$SfPl8a^8nrx@?T_cE~&A8v~> z;HDJmM5qc-pS@m~O3B~?XHG*+2*$_>V?)z;t|E@+v}99*WSWpB^9E;ebd<~a$dCsY z7$gC@3TW4q#n>~0<6M#eWH!}kOyEsdCU%a{3h-_jh8--RGTJ_aSAcixtj|#gVI7J} zu=q3e2|^;-OREv=jxMbqh_S7QT!BIrCz$VpC{ExLSUfL?GN7_{CwPC_a;Tuho#F+7 zSP}+8BDiEBY~p0*XJ|dOu#nwc<)kE>pg6OhyMRRI!jRA7nPqtWZj!cOfOCZ@a2(sY z0(_~OCiWh3I1YP4@Q+Z|C@hzx#LdPh1M7QD))GNs{1CFT0-Tc6d2M!F)GVS&x}fw)bFIoahByER0+2l z&rq-P0Uu0GjO9`aGoW#iOw~9OP$4V@ey+C+LWq!=w6>#Kgt`Ez4Tl~I9oQ0%_IDgE6^OvT8NN59>k8F$i_hroU@9D%3C?$ z!c&v**j`Xb*2R<{_F5h!A$v8x4WmNOl7 zoDMuJfas<^n}g5Y=3-*JYqtZGpE&(D4-j~hn4pkJlmfa`G+3OEERD?*tzp|3Gcib^ zLbPOmojB#=wF(a(yK!ZhtY6WraA5R`fYO}CBTrMj0J2D_R!iXppVsjLILF!KX;CdL zFh%9)B8}rD>FB_OjYhd+nR|e6nlrwhK#{XFhgd9^5X>R7ZEWS!PRgb^7HVF`BZO|4 zXzoZ(2htXFfNH9`*laQ$ra5J%2DwOxkWj$$j&-hIDi$Y%4jpA~C9|E)F5MM`_(W|? zi8H*RF}0vh_am460M@<~oHS`x;vTmZ*!xDSL@{N2HVHs)i&gBr?yuRZ zqVT9Tz)T4g6keu?L+!I|P!<7G>TNO3Ht-2pJbf4kp_!!a5zT8qvrHrSdSeyF6?mr! zUcM|+IkeOSFlT0n4}V;RgP!6c1k2XG0!I7F|;|cW$Zhp_YySbi3D~) zjbGrA^%CVX*V*_eQ2OMwiVu6Z!?WSn15A%t39J(c05r<9aA-?yoVk<5P68FjYw(zT z8t33Rg;i3|wg`-+Ii|38Jfx!8I$=CGg?^?z3h??l?Dwx5lgFOfznjR zy@Z#EdqKs}qReY$DDB_3L2)d|vr62QSd7B!M^c3j>lIY?zWU$MLwCR{gF4VQf%Rhh)(4 z!A6tlxq-a_a;agT!~ox*0)YcLTq;a+rF`&U|Ks2k3SKT36p0aRM6QWKj$t4Dh6Us| z8PFV{s_HjsN@zcaS1aH{CMgbeI$)V8tte6m>JzjT&oNybIs4N02Y_asaMg?6q(r>6={k@g8q|K>n-KMuMlvaOdzS)RPOOK z5ge^IBhP_fwgb=e*sUo(c9s+5e8S`ShMZuw1uG2v=BUG4K0#zo9V(XuX)qmXYKD=+ zTW~&txq*z|>~O}q&hOZG;KA$Ic^I-BInxXhc34eGKR{WNzFr{s{z?b81f4A=Thx+^ z*ca3ku&VK4Lz<4nXC?#1Q?M~~4(v=w8hbE=j>j9$4nt`AHE3`?h0Tx*O*L7)Xn11C z+>8XtGcxepR(JsP!i#zWpd_4R83&28xV#Y(O*`JdeE_AW*=k!%ovV3h69JyIbp#U|?B}dtb={c@Lt}d6Uvw^$jddGuCcq~vvFR~@`T$5lygx|`@7tgY z%cblVd@N(1b%;%F01x_30j^IXnJ2T2QNjU{?zepkRvXlNW+s%6pkr&uhGG~pJOI@W zacXIm7ZCcDszVS6&tjLdO=>n3I2AB*bjyVWn&Lz5(#Hu2f)X_r9&Gh#GLh{#Nf8IP zd6Kh%RK_`4+X?Kz*cpy@6Kti33t|94SPttGhqN^c&$=VcZ*NepMt2U9C z3CRyZOlcD5xlc(AI*`W4P;4Tg-Fa^SmF!gGIqh1J_c?^aG@-C8b8fP}6lx3B9QBikCOnKv{c zDz-BLQ0NmVQySq8@UN#6S7IMo3Amv1khvjWne8(5e5&wFfhmF7HI8w1PT;N?*RV{U zDZ~@$l_}$iV6q63uRJ1Y3d%u1Dkei>GxI*n$2ptF-&ENwsX%LCCrh#(Qaq?t;;?<1 z#Or^IIFKXckm0Q6b8KW3=}DsbQepnxN}qEw;yQz#C5LL^g*6e>ez@C>YdJBPot zZCZMic~FqnQrzX%E4R-!3W2%wsaG5+a(rB67WFLN?oR>zGVIyl{A$Ao0>)ylYe`cv zqOsr!)k{jU3p_n3!5E|MYBt%^V&<`yLGccmRBwvJoH{%uc|O;P-2~)iU-2 zn;6Y({JmD_DH|1#r^Z25x~zf7i67H(@*xw(fOckm1DL3-27v`gspnHz@^}&>_~97!ES9319+ZcR!H?trx8RLG_GT%@izSxPJy$*Hh8 zV0w#U8-L0{xI>G$J_U-NSm}K2wc4LJ>f>Q3OeNu(C3RsKN%YKFs-X^%->%;W}-SJQ_vqXgo3ER}d_)a_6L+t9L&2XF=K9DmIIB}Q{xP9!3c|M>*VIUkpmQd^Xpe0?) z*|?11XS*_40l5@e5}s%}7D$e%MxE7hpj`$6Z}UZ6#J+c`Jc=_77K5o^ttc!2195?m zr!^@$HKDP`v#d=`)^Od8Sq9F=7s@hK_^_l6Tcj*+#8M6MK6O|MN{a$j6YS}@E=>HL z2R7FMmZdpThgEMA=O+!HG7*PCi!w@Ll5(8r(e@$75xL5BVj1j~Hc6k?EDSaV5fr{t z=?QLkQ#E2^Ri!*9T#B5RurpO=yj;tylohNPQWP{1tXzr?sU>F=OJtA6I>804dNxr~ zj;k`HL{#vmEF?TBR}&zbTTM1i(%P5`ii}mQOsgdAz%Bt6BgsaSSAeokcrF(h+iquC zC_S~T$p{za7`91#lq-guG0_{qd?>cCkSTaw13rP$lVaXhh0_k1nTV|m)@;`juO)1@ zH<*PFvvg3Qm^@!N#W<(#VA=_J zNHXG5yP(rB%Qp_ZZ@yi`VXAS2J8k$Gcm)Hzo1BMmm1M9&XIujXTQu_xDj{e_Di)e;aJ+m@yEvx`JuO+(!9JbiJakJ~ zd*-D*jcwX#UXW~%8bE4Wl2Yp(h?HRguCkyYlNLBpkrZ!o>^lcI2xXXn4FMOPP_VT$ z0}{3#ELg!yoEMm2(QMW{@qwmB$xxc6oi^eT%WxcnPDoWay!KPF>TwqAvVg#CRQEXW#VfhLbEZEGRYqD9qo%LKAv#D zrZ<2N;YbF)2SSp^oAa4Dg$#DNSKz!dnk*c=NkEr+ z4*F5%9^+nF2o?Z|$!Gk#%%CZy$ zBpqQ_xnm&?VOxxp_E0zF=-jz7>roh~o%xFRZpXIq=AIsm_dRSDpw!{WP`We41^}A$ zZtWPb37Di{>}b1O$6f#cgs7ZrrAi8#Yth&;1qN)Ms$oeK8gqz9pTipQbmSYF)`Eys z&jGpvhWgtN3GqSX0H)R_74id~kO7f7E~j*>p>9F~^g{KQnq1;?M<~fBJAsQG_ynoA zdn6#}Y!H>1ZChH4qDn2WEG5`M@sPYomyk7~Hb@hQo}AkuwBFeX0^HSz2Eb2bqancA z)Nx~`c*6(spwZxvbo`Z7Ilfd-U9g{l3a$<%N}TbEwxgugbjDR6N78!~n*(h_$Vk~` z8y*`ba1<0Q0-aA30$|=`;0;p|e*~w%SA1-D3xg{HnF;!BMx7M^J^0Kd8j2`bsa*GD zOpA$vflt**3h|UKPzPw^^Xb=CtXTyps3lv0}@m~{wCU%5+Mu1=eiK=y6e)A(Xel^*yT0TVX2s#Fr*P$Tgyr)i6r-$ z0YyRi9Xrxck=1}qt|DnX42wcMMFsgt&x62fm)I$eupT=P4yLwTLaDIvwkVRpr{#9D z_7HP|7j3`}vAv3#WL`|5F1~DOPe-A~CWpeIxSYE&%ng>w;0doV1$;wmzVKt4>*)l% zOIlAM3@Cu!6DIPNcCORqA?P9Y1K_OW0wf0|En37|za%Xy2N6^)vzBkcQWZI!&%r{A z$rnc_eB(qigV$mRtf*v-XC1RRkit3M(B5cl=5gv;3D^r}oMdW>#Kq$=bKh1@H$01< zr@olNPB4*Vn!>jhVhk+lvU=QTjf*so2T+v`sm~w`keaGBXUc?=w4k&Jj2cS^nNXim zwFM}WI}e^Sg-w?l7O^-&9fL0`0n=x$(CgG7C2E#-vZEAxO%td@ z%YI>?x(gAzYylG^iPCBhku1SD0iR&uO`XoNb+>hZZ(>_wsCGk@!pkk7_$GK>#9y@O zDKE${B?~2IUFPgg<^u#?gKRyGmfF~xmt{3bqw6>MP8gmV>D&NCu0!B?O7a%8)7x1zBT8VAur<@ zVcrTBnDRX+4qX^-0|;yZ`pJNp(-NwhpV?~c=AoE%W&`W81gn603i*{K5RwdvAvip2 zYoj|XeM8CtVq-G`D5g+9Vw?DI1dJ|3(kdrMmGrX>cy2Qe%Af>Q{USF43h(Ia7Ij0w zoCQ6&46P{@xysQw1f(4|o1}YVj`oY#&!mKk+C{6D874tdQy}uZD+ut(WJrOMK;@tk z-50P~u;`E#N$ymZ5C>*3v2A<^4BkG%K@2C{c~WUk2H)a1bi3?D*d^d4ve<$|4LRUG zxGj-)3zy2ab~>S;RX|UOc%Jj3Q7(5I0V|RwVMYn@6M<#2@M^BlYDH}_y5R`pQ|qWV zEW>>#7jf7lWP?vwjjhOO zg%S#SGcD*-sOh+yVP3~0c!EXV(83db`>DGuLkl2?Qz&csK6Z;4XGLoC6QQ($JkfcfT)9};DCV%a>zUb z)v@p+W-bg{Y}g)ldN%P)j|N=Qmp*~DWyHbl8fG)`i1&g1=`G}B? z5(ol7Da9!#=UF@|!{H@#j(|jh_K>o9Xt6=7)nbOjTDjDD*Q+!u(jqlgyetT?fVly_ z2K&q%K2D1)&O0+co-HfEGfD|;3bk|S<;pvS_6$dSyyRt}W+lL(TaJixD7e__GM+_n zhg!GIFjWPfT#CmofC@2`Oe#$(CatyeqC$nSZqPDhbxr{UQoV$Nl&WNi(-K(0!d`>$ zcIc*|(?nMVvZe+4NZ4dl7f+yay#X7%$-&+NWS<$4Q`JEd#sK&Z`f24DpJq0-!+1y` zIzkywh)zh0fk-Z6i!x_7lxI`?J-$>1z3N~bMz`-5O#!9fEQfjOD0OB9)^G?@5t~6w0Z}t-^8qUIs&HgQ zI|u03ie@+dYH3T5Lp072UK|fO%^+N=IHF);t!I2T<$(7%hi@dtH3(5e97j_KId29+b z2ku~EfV#{C8Gz!M+d+ZabShdysHIp!VM}^^sD>3cT*OXolkfK=rNR5Q&rSR}57D#@ zfWqI>laWWIzob<*b&IYOlHAryq ziy{Ms2@323bs;28-~m;r&(jjZevu~4mI}wf%9BC2Q!=@6VRdIh+r};SMKUdQTJ%-l z&gyt8CJZOwh6cmlbaG0%g`d`?WCmohIYybxirxn)5IJvPXMticx; zbF>RKo2N!QsYbnRSdsEn$0y~GF(q*z!`8(%h6_DZM3~wHI*CGq?hnzZWIR|X#!w7p z3k$0N>cQ?V+t^kCFVw^ZF|(oYa%kpzq$p1|7>p(s@#YU|81-{#Mg+c_)w(CjHbLyN-H%pfUvzNm9Wy8WH!o)jKdp7;~gK<&%w$>5=B z8gNB=%7Y6ujgvFOkXtYiLoDDH7D3=t3hXS)hoZ)R8gN9&J zy%%1Kb`)JwGc{=lm{x<+7#wgBEi#j|EHy(P=X1x7C1RLrn-tuxuv*MRorG+p3iT-k z%H>dejJF)ynZiB%^Fe}o>xHA$XfV81QB>6+kOBg8(-RPP@ZeS(s7GWr;*_j8ssw|@ zP3i!_p%xm=fxK0d0>&vIA`7IkM^vp0!F^e2TK5(k(|a&CE-QxyX;K0l(r%pl2Fme_ zlm#CYd@zZ-6opF1quDmoq!TDrd7Yw3qh`XQ2mwv~kX5~@aVRH{TKL2vj)-+$AeTZk zp0ku4r-p+~84sv9t>I(D(I(qC0xV6_Vw{E?*p4zgdIFMdcsQ{T4i?P=Ko$^+#dIz5 zoPgKGq+p33;;=N{kG)@}*0vc~_Fi?ddMOT$p+VPcCWw{1mGK~g3CcHpCQjUEah zy_5LB5XY7~2~WewzKoGe2e4G}Vna^M3WZ?j4(d^$F7~97_)~AklohKqOajCMKBfaC;zngm z#HR1YE0A*#N)%$Nx7;NiwH@DvHZ3#j*c`w+0Q9Az7uY4E?Zi$V1f>56(k|oB&za$k z;Ix3c0~LUbTb`EFOc~5Y8+d|cE+sZjW(M5kggjt>5O{!Us447PR}COe!GuCH4yr5Q zU3!PLDVJnZ(zAfMTft+GaW_wOI2oxNvkkX64Sh-Q34@Z8VQ1zh!@!|vTkN<=$BEow zbVko7wVs$$A+}Z%@tV=F7zNrlXsk#L8*LVI;OU@e5<&4#1S)p?$hn$4$*EVQlBhDk z^Q8mK2RX?5^GB$qLSajD#!%1u8p_fvfT?s^T9B`NLn=`0RiM;L;I|TW^PPa2!40<0 z%mPfD=ZZXD&3$J4AOKaVpO;uj*-#;USTfhJfHsq>L${xtd4CzcD)EG#yc@fkqI1B~;2;uy~Tq-9Bs!2v^)^h-I zS(SY-RwS#!XP(W~n(KoH_Ya1Qc(_dD9_6(PBNhcd=&fA?gogIXE?@aY z$O0C1?x#h8shmci=2-!XkEUUY6Ccnt6>+vxN~{9{E*;t?W2P5D=&p#cv)H6Q&Nxj< zHFl$l>k zECXsdJ~n{%wp7-2{s4?tR+${YvY10bSXkc%GMmoGjppE4w$x@yEJOO#wi3s2rgTsx zr6n)@IZv|0 z5z*?**##LB%+Zb=5hO;DrxR7<KVz@W{S_FLcP$c zVQTDTSoC0j1Q;4MD*&9?xLIgWJOlhBXa$tuIHa)yo>J8DB!wE^rJP6_{ZhP=?B}(K zcf&>r%I}?5u@Ul|QL1NV3h`zyUyu$Dwy~p{^4_qdo`W28pn3q~fE&rOJc~60(dHu; zCl&McZof*#cs3tRp#eorO(KA02OtkH%n*&9u8dC%EvaW|V>REDr=}wXo^@D8v> z21^JOBJcyaW>C#D867j=giSoCL^9>@?KDJTt8=|&v2%z)v9T89)Wo{b6w5J=zYQ~q zL8^XzLuulxz6S`%i>)-W2MnxW`BN_7<0HsQm z2OnJX>6i0!m(Y**WPkU{;^6N;X+GM0>&p6-^6<EPnB-IXBCT zr?bmlX6OF(gD+m2@E#kFx3A=@?Bs4*JidmXJNeUtI}ROef*AzL}AOOa1LF(c$;2>zmu{X7`_O-u>+Nr{&A`>=XZP z_U2n3uF^BxVB@1gF9a*&wV;(KYMsWlE+UL-+g}1oxO79(#i94dQp9`IQ!&bdcS@6^w#0t z$2a{yHz;|0nk}pB#bNK@sJ!@; ze03%H;ls^~|L1QV9i5Z2yP(JKj?WFZ)9}|8ka~V}pWVK7kUw})-u+cLU0+Mbs`&Qt z<1;^b+6Zyw<@dJv^z2;T*wDpo{>8_)v!?q(zhwBIf2fyx`_=uI{5?T``C0LuF*$lr z@2(C{pRj8i|MJJ;fN^&6-M`#_)o!tyKRX>)zrdKdu=~Z6pQY@QcmX)-1$p6WvH#=_ z+g}m3B^UFCDX40L1e(&m62lB$}kN+Tf{7-|q`2xBryZO!P+VbAP`bzil=SMdPI)7Q+ zd-_pJ(8E=wcU8IQ+Un%ttLK`tV)69z>wkOq{$+f;_xkg%{ePQR-ne?D=>M|4Gjt!G z%a-Tg%{a{#&up*ACo;Qttf%3%gXh@#S~z~=;dzV?zjgjcEX`L#)J0O-BpIAZEt+>(nojiy!7SyN%;EB?cV3FY;Vs# zx%c9nKC^B2RQh-Gum0g5r{VgY;}S3be4c;*Uc3K`?(uZ@?l$&&_`JRT{&&aYyJugW z{&o1`^xES6H{br^(=+8te>{e($9?snxm9ewe)S_kPsf+8~Kj|9Iw<#tDgvHe%+=O@)% z>chh_UyPt|uQ#{8ET8?7UH{9&=e~3Jmv0U~dAa^N`TWTXz5L_mbe!z3UOZ{{|MnN^ z%rnjW&I|wTGq+EFqTZL!*8bDO^JDj_D0k1Fdpf&w?(D&h&AAT_o}TK5>-%4+-+Sc& z&t7=z+5Kw|cV6EA*w|0*_a|fWho1bu|LokrUM+6UuU|fc9{tH{A8Z%>2aoRzJ3nB} zGuN-aMDE-?^Xc~F$>Xs)efRih%jMDL=9>z?vp1|i#rdPDx_V|f`|Z28)~_|c_4zl( zYt7-^>Gql7x%|U}m)7r}c|)IjmL$JCsXse+;oC1hbN}p<7cZc@7amvdy!c;y^INF2 z?!6b%8$Un##*Les?6TD7O7!&TpWb~jy{>P(W3G;$ZD*eqkCyV0@#Mq(uZG$9WdHi7 z2kGh>yY|6@6Ev{az2Lw+b`P(scl6QK z=Po=^A-whQ2S3o$*<$@10*2 zw;6x;voGpzRa<~e?GsbU#-79iChx_-YeRI;X z=CS<2`tVtD|K2C#>)FWEaB@F+vdr1XYPOy@e_`+Xop9B)&B5o-54R34E}wq?^YGfz z-TuA$$)%s@@BoU;xt}%bHaWTfPp@8gmwxZ_Ye#2?-}s{7XKr0Qc>Jl_Is3ivH?u!q zAGs&!KX;pp$yZ;=eez5C75?JZhN+K_i9P$B((>LF9Cl|tJPTtGj-Tix%d@Q~Ee8-}lc~Wd7Ns8_So*7l(wB9sfAZe!g>F>^{%_uY-4P z^DqCmi$D8pB&TCi+%0`au2*{>*gQ9y-@7(@!_~FCPzP1n7o9zn^@%?;w?e?wl98D(mUNS%bi^*Q`r*A*{ z>TmzXy!YZgzB^05V?KO1TOZzB(`0@>=gT$A4_W$muhjLm-6!~VzI*Xs;Hwv=oqNs6 z_}2%Y{lFdk{rcsz?Cfg*`)7C0TygKox2ySU^X9{+-Q~Rp3-p=XdG2rcgSYOUzgs?J z7k@vI?Tgb)Xmhp#aCCd3*UeB!}-@8S$F7n7G(F_ zC&%sm2hY`tiSJ$bqYL|&#>qW%)AdI$u5J1wv~yv)zWVpitcG{K{95%pyAKCNeiiUn z*QAk&aQ4Qz>DzbL z!`+-d9UeTq`{f>)(H~APy|nqb|Bc<>=07Lq1v9??dHeQFaq+Bd&9Ckq+_=6yzpA_9 z&hC%%+5KrZPhT;QmqRs)f6?xJ|7WM4AANClm@b$rH~M=of-iiwS^k^drb+nYp8mqW z{A~W#G24A`@BHyAtG-0fzqh{Zj`Xv$!G7z~{OkMMRdI&gIBgf9e)eZ`Yf^m;e<3dp z4p08SPq<8NaYH3{o6nO6E=-I zd()4OdOSV7be6v}?_XMcI*#ey!IcN~Uv|F(epS_E{gHZh^=7~K`4ezq=Zk;%uYdH_ zoR%X0>21IF+Ua|Di{1a8Pml!*R~?v7^VP4K-NWqoMvG?u?#Yv%Wv5rfdi`MkC0?OF zoj*dSi@zX)uig&*<;RWu-Ou=IH@|-AhJI?Uyqvl6-t#x@=DgiKzHzIl5C8fzFxRW| z&m1@Tg(o9=_Lt+QoA8fUe>eH+osXVbzx?pU9|Zgj6S9Kuzw)j~MKQhQe=-$+cJAq; zmoL5kh5P#Sl^d@w-uR?>{nGyI^qKztntrjn^C@Gmz1tM&!*f>~HG5Tkn!Egtc;|!b zU3zctlfrM$yl{K-%;E7bo;y9;Ui-63i%FO%}> z>)XR0+H0@qGe^H~{;m55d2*?zFA4OISJtP?E6-it?&^2K&Rx-m z?CnSLYR>wrAKt9To*usKFV9~N&%XF>*xq>hoz43Ehfmn|_y_;p!?T-vkFLIZ;qc%q z{9(3t;bM+Y!s-2U@2fWp9+<$8N=Qr=3K6m%oqw~++y7}&z<%7CB*gLbmA&*~wJYM|jja$p({o(HC zC;MN&Zm;kC|3tkEw>FdKn3Nmi=NKA;8T7}Nw}XbUg@hSJAkQ& zmqzIF1E(isH4!)8KVdYd-LC|ks}8cf?wSZbhzfouvI$a8U3Ofr->b&s$-ESruiv~s z+uqI$U3Qyn@vu@K%-fEHo*D@2H$1*eKxtB6Jiq1-;f>NaQGa%0^!2qytyE-5xOp z`=N6`lyX~+C9#Kj2C-=86e1JM=HM$X6-rT?%Q z+qFhvWu{Y0$`3}L55J&5kMG5BPK=44#E}#)Xw;D6V1Ed|hpjQ~D%KT?I@=$iQBJt@mOsQq37DV)O3;vW}z3`ILBV&L7gbYKy z-n>Ib+P}RK-Irl@mH1y!lpv4D;@+k;Lc+|NJM4%0!-3Kd-tl0y!kftzTMR$#B=(0C zb9@3^gI`AaBzdDCq!NAn*$LJBz38SNfOjGUkFw#L?wYZVL#StQG5U_*bKtthIzPT) z+?Xm0W=V>Hm#&wAbux})(Pp4COVg=ha1M||iFnUi`ui^qrQ5ad$YRmu6!AJowg(mk zto;6~Bw{DWZ_nKwuQCn}vuB8p8QUG^e69GkkJLaQEqwyzCn}d`s^6Zvm!5RVQ7v4 zUayk&b66@U-4~#^wdl9Up(+)@*u5c{0^O?7#TtV~V6rfaKTITH!2H;0@1fe7Z?x-k z4wl`Ne%MR<@(M$~_ww8q4?L_MA4c}|05LBPe(qg`zNq^j7n@GXaYpS)c5lSk8*fg` zaVCrW+n41NoP>Je1F7tWhsTS-*s=m`*DIV3;x_K)d=e(N?%T63z5KzAO>=fh;4}8! zITMhUR3}`0w!}bbgd}-~j;DV&23yP5V(n^QYYy+t4&Xxt{$r8(REynRXtjYb*Oi$% z7SisXeUnb`xb=~4y}TwMXeLnY=tGwyM4!9%?4?lULkHhmmSVs9Zp;zOhJq0jblUz- zg^$J+e?pE-z9JzMJWZV1?Ijr*r(heFD7$4lN2*=4vlN)uGpvHPJ%J66Cc3!#=f`&6 z_+akqG9W$5DK&fC%TiyWZO${d*N6?NRB%+K&Tyr?Z3i~US&<9kf&30>t&bDTLVQpy z5m&Y2+_XxYVJkNYoss>3SDH+2S&@!o630@-cS@WlS-Al)KN_7XmOM%i>H;%wsnzpE zjd2qGhjxeU-`nRgdjWB*y+?C-2j1I`G5#EIxl7vD@z zy~{v3w2>csPvz)vPd8W>9`q#NI7)zVxvA>tNM)h1LV0QS` z*}|`p`8zp8M*Rb8a(N^-i&WxA%v65Q^_p^$c5kdd22&%&c-L*70OB)c+L+<#SFMW> z$+Z~i$FqZA;H0>Yf5*3VDqT5XUsiiL_ie+>qvQZkGc`1SBOVy3S|gqnQd6qesr<#| zb~x%g`6>!=A8mpN6j}P$@f?_h!t1VLaz1;o<5>>DM7-KiJyVL+YIz5h6ZYo5-ii+~ zmHo^ef9B%y0MVz%Y6oZK6Li1V@q+3;(~35pfASt+OxW80wdX z@5#tZ{Z6rLfA@R$c3*!}pmO?XP}2%SVj0)mHu{PUlxHOwT^vGd$1`H|c83?*-j61M zWoewsuY#=_o$>eHicjJ%rGF+GzY0xaQOyuz-m9v6QiGCya(Upum+W8v+H(7k*c`iQgQ3oiII#aH+d7)>q7E^l`e_&(J z0GS=+(y;RFrRUi>%8%iR^BRDb*lgkbN$Ec-_~HI^e!h)0*tUoHGz5w^Qo&L!bwp&m zZ5DlQ5|<$&R?spTS40kcu=Hfz%2{$IO3e%cmyy3AheQ5TA8cUS;zD(^CC}w%1(+)fG5$9J0k z5<{siF8Hq;wz!C#L+-D*L@D`VvIy@?y5ZYG_b=qJ*Ud5CT^i2cnWRbY+m)Bzb>-v0 zDCIb^^WGXd(gfrnxA==U>Li>^kUTQh$73FXZ{FN5%(RT=os-G2`#ca+X+kzb*R>gA zx&wV8T?mTo4xw69{+WKIb){dAqZgu6#puBZitwRe`pZr3!K|3g8TCuAWu!LNEKg&@ z7|Q%omd_W~HcPL}<>2Xvs*bP#xFIA|N8 zN=j(bo2mdjtj4t5XREucT;a}M&4frWv=Z;+-_TDLuejWdA4{su4fa)`bEzKu%z>?} ziv-Bp%v~JUnT3@onbx*PP%+WA>ahD>!GXq9zr4AA>V%kbGxCph;E%ewqL&EJ$?)z_ z?5a~`l1n+ih}-s@>sfDaYwjAaw)1{x>Rad+gW*`;T=cKhL+dO**0Fb^U}1ym;^ZvO z51;R`|8)bBwFo#SLw~9zL1-e%+P<$``HS7eU%7F?o4I}L?CRQeBwa2JE^o~b$RY%s#G$lG^DbcChXUpTIwB&Z!2>dvG*8}xQY(ffesd})Gkn?pU% zgJkoq7dfuxkje*0B=nDP$cN6Wjp&!rB0&mQAaf!f&g?(PWMsjRsMYF|5MqhSXe71% zTh-7H4}kfVNAVF8y&1hFGrg%2YBoP2KgkyifVtC_7HgqCg$knx!(H~c3z`D2KgU(PsJR5C72iv|YHCWd|TO-u*+jjt~z zjCndAgZ|#BlFTJOl-WmD6UJkxG zk73<^VMi3h7LNv|8|5)t{Mjdf```<=D($7E^9-R*kq&tIDnI(It$x?<|8%xM#?S66 z>vVtof3&_AOdM ziUSX3MZ2^ELjG#6cs(?bW;pDv59;i2d(+X=;ex~YQsSKD){LDwRNdK$i8r?Y8s06Q z@0kD#ee2i2+jaLzv~iy3Yzx{@zF-ulJ!o{+J9u zx##hox{0)FBSCk?0JMya@apI{=rz48DzVjm;_Z+Ic*M7p@g(wlbf2MW;nUbf4UnAF z&z$h;wkKSm{8VBb-IX5k960O2jMCIIwp1dj_u z@gJz@qd0i;@Ov5eUp^MRch^c#-0>)!ZA=mkqwCiQ$lr_3 z{`cpR{aV?%kXA#^x&f45;^X_&dEA9xtmcyr?yymHzo(6Zvo_zK zDouGUSaRPH=8tX!uPS-*{<8{U6&Xla28OVCBxOCCo1|s+o z4zIMgeq>4PuW5}%)*TtPc30BO%SBIF_nP$-FQla{b-!-A*oh{}onR}7J?RWz*82HT)p%yyflN-zowX954TgoD^B2gdrRtGa z!Svh8Fx0%@B~S0GH^CFCIjzIP(mBpirZTFX?0FTi16CKddg-G$pEuawAdM%!XNrNG zvPzmZXF>EhRW;L(wMR~T0Fe22H?H}cG4&qs@-PtQUW}(ppK6aDCElx-Z*Kz9H^>~G zCNJar-6NhjbPlse%!tv--9Pm$v(Ab3@%lLmmrAdaJ3TDo={A>cB4w{>Aa9UQMx(p& zjTvWu^p|;9dj@+iSU7^R7x1y%x*Iui!!YS{b^H7RVVU=!&PkbkUqr>eD@c!zC`Y9tu zp~H@pTw8P0@_{CD`h%fS$UcDW&lbJWy+BzLlcyCnbIDq5eMfXP;I{NcJuy z@5UR@-WY{Ezm9p?B^C2;l^vTY2f%JXqb4_eXFT46zwDn2vpxLGzIAB797X*z9o?N8 zn5*uOjsOLf74mP^80o$+`hQM)xl8I1B+u<&`MP6`Ajh5uIJQc20+`f4vHsQW*z~7y zt+F(h9)4xZ_P=W*M=iogTpGSgZM``5Q@sx!!CGK;eOX#H#`_%~6kvI>xc-TK^f@E` ze`|prW}??sW_4Y$4yugKl&abUB=nvKuq769%Aqnedj9aZ<|yG> z5|ZA>b>~Cxj2+*;-{UpZbJ}_7F>S&5;tPy~o|>MchvUYyLx`_1?`)((1sekH9NHjmU64b)yl_^_1W4s$xP-9W91oG0b zK3VE?$nfA@p_mSiio0O(pPZI`zgd_fPi9}s;;>_TI`!Ja&IZCl`Co06r%DLJ9?95Gd z8nua5Lg&D$pRg*G&$o9O;g)nkb>q@PqJ7Fp25*8!UtKlkj+f60Zy%MLZt8l7F{6*O ziOWz8VmjR7RxFAoCjaxVSu9dodDg2zb%9W}f#G z_Cbq0^dv1-(B)%q?7G+cjoB8K*(=2_l*C_V%*#8NL(m!aM@fCTQ8S*!>M18Zt@U%R z)@8_Ux{IGZ4Tu^*4CtG|IEeal-!eT78mHO;Yu{yGNNRnSI!E42WUeZWV`$a<-}FKg ziCg-8;=2I++G~z3`yqQGig*~8v3Sjc%ED7m@v$oiS4OGvnghNj+W3&D##P(ZCPWs|N>k856Ri|+9%LPz3ki1@%VGiCbEd;-M*ZxqAw4d&EkP+ang(kR-3C!Qx zv+{<%v4NzLecfLU#|R2@P?ArGt-Xc)-b=OaOY!hkEcAj_L@j*OzGSkoivwh&`Wx-R zd}40XFgR2Nsnf}gn%G-x{`N8_!y0>|3{K0vfWbtEiW*+4+>Z$G206Yx8n>UT zGoR@5~x$zGBlNWV=Uv25Hqy4$lgI>it|C?@Wdb&wzvHi*_xNxw+ z^;OjKrOj8Ch*5rKuN)h<>`QOEKzZR_v`_A5zzj;YZb4jcx27cQ{IC#ps%mQz>{s}O ziob6!%*LCYZ(Y~MK^*{s##Q5{#3apO==dp0D|nAx44M%!6fxXHH{L15 zjrCa{o7KCpXVP8MlA!atC>u;6$l}w}5i)%gqNvbe_9DDAps##$n$gq*P=lFN9goQl=1qHHYYIM$sW4%5!`e@Y=Pof{crU zMKTQQugB}&AhjM!D^mZ-(4#40nbA}2ln#(*-~Jh^wV2U+&^|AYqdAXDVmXTjPu|qd z@&$;58@$RZ4@3LA0;x}_DE$hU(B1xce+sX&lazy(zP@9#%|Ug zsjU;u*A5ekF0~C&4))=9wB$ivn?s+1`)F5MV3+%-R!M!y)Jdn zA(iU@tHR;{^~WZo>zJDP;?@q)!h^YWTdK+11dn!=l=%V4aK%INzYmrSxF}m~Mq6!= zNE~I5g9Qb&rsoKJEEAIdPtF~~{wn8`NA<4jf<_kpSv@4_(K>b7?!_BCJ;iG-qK=2A zTCS1{zsBCH1Mf2!@7i2-%ta>=b@LKXRq;W)8yNEi3fPA1J)2`kpI)wb=_;22(w9XX z^$Oi*ZySSfjCHx2j@eI_SW{bjoAKTM?^4ki<%c{ivFJSesDI~laHR2aVKMkhjLwYI z(#Ble4jN+)v5kW%XZhC(^j>VXG;t#iqd(%*h?+2**d}h2uWaba!^G=?Vf&^Gn6}W6 zxm9~UsFRgSpWeM&R+r+o0}uTkZSTQNKvg>CsjdKm& zvac!TLOG1SJM-h#3oZe-IfHEMY7uPrp!W&{nkk7p1AHqw!4xD*YB--ryyYQ{Md+1W zxS9)$7b2X;jby8^f|TtWdQk}h6xS0;f>*>P##`t&BK8M_>!cm#9@!4DxJChq=d|g zx2bEz?IpXJeB8Tc*Au|93l<~iVicF4cc`Z9{aHJAxUCteIQJSMf6w6)!GS>%J*ry< z1G9|1G!@@DrxG4LJr)S@X$Z{W*W2NK9SZh@{^W=@?cL!ZT1tmYhE)4cUP`}nlS?P6P^(}|%>J>7fWiHf?M(4#M_ zozAD|-7Po^Idzo11qOwoN5Tx;*0kT4@N49Yy3I>-&8-ao8>`}>*fA^FiiS20Fg6$P zQ%Tu+gPl7)!yfF)FSzpCA=t$ydPzvbs^_{T)hadhG1UeWexVdwOdS3Y?5ZUzJ)u1nY=-u$1Qtjr;Id1u;24@Ho_Yu-0HuoFBHgnEr)L{^`F>#WCV$dk? z7{cANcx&0!X-hIL85(yUk7wsSFY3B@30vf#dx*L5wuxko3~-%- z#-dOUPLLb2F@Ef7yzj4i*yfcwFHzWX_VVRbn^q>&R!r|g58-d3_uPiV(Hzx`!3zLZ z-F7?tR+r>&2;QNs=Z^C{YsldtWXGciSgkx9{ANH?RodPhp+rq~z2<@!#Q9nA&%hXK z(;=s|DFF$D$Hb5=5gL8J%IPfP45!AS&hCwEy45fP+0btsQE>dXAuxhEy1qluXQ2JW zsB+{$$X_M*+O}4Al27lSgMI_Sf{giY)fIQKxHB!z_awWSZfaOwc3lxR6r(Tp5a01& zPE0S`qj%R1{D$M5H6F%1vf2&{N)7b+Q|LZ@rr!+{l93`4*0kV*w+rB636S(v71Kmd zyo5bW{aRGKm%d)>O^)okM>9c-`=<|N+sZoX)0z%iM?3WfQkbNQyz@v5i4*eLD%aTP z2RSyo=sr(f8_bjFyxFb~H=sP&$I4>!;Y-#d4XL~1CHD_8~uuHx$Sk5 zCOcmcH-2W~;Y(*FoX=eEF514{0;gDz7qP4X1IKyyV%_ty!6cZ&MPtv^&EAzHu8FP& zY-_=UQQUI`U%eoS{-c|n);CD-J!REY)vD^E1}&d+(O1qNuL^*lcKa+_NPgFo8jNVg zkGT@V-Ci%(uDG1Zd}XY>gJw7;Nb*m%jnLQ~lDjntz8AdMd!dT?HhiH>8qkO_eBJclROhnwJ$78QB4@JW|7)=*!-zJUd} zkJ`F@`J(6J+!@n7q@eF1;m7mSaK??y=fM~ek@%HYkCXxS#VW1b4Al}6qI!LY%t85IAC!F4?1@-MVsMo9gqSL#vgcVHhNq*?C?3;QhiUbC_$ah^fO8wD= zZ*}9Subv^kt@`1zlk9;`|KdLi1I4{|f6*(r@8cP#v%df=oUW(yS*Pvm!r*?nqfisM z?>t84{RFy`-#JKG@Qqcq;udAz3~I5_>6c?Kpn2xKtZ+X>3UW3+e)_I8+>|zZn8MVtLC$l8O^s5; z+pV2GfQFcOd&Jl>NX0$V=WzU=TY+$X&&Ft}+Bg(vOf%na?W;4U-;)9O>#l@^u^@5_ z_~I)+FAQ3#l+V0ZwilF=E#0|S1k$E|E;}5;o42Bd^s>KKCIFqR${?)WTxvz94qH-$ zW`_IXflUeq$&~f9j1Qq7w(ZSup$46x@f6ZyM;S3iISfUs?};Qt@o2z(F&`c55hv_9 z1Gz%jaEW3xCp)Nen0MoMdOq+a!PlGhEgQlg`g_Q7ViHDw zSHPSZKnZ_kk?N*{-mMqk4~-o3l7)`5+vNOdaJUzreqMXij*$|YYB!R{ zt_oUeJEVHdD+w~sVzj0hibzjY71p;SI%_;4%+pCbK+27 zTi;7j@Ya|1(rhogeWPf_v}-_f_gIBpz1N5KX2;Z=dQb%!N3i#S%6)_Ic>ZJ|&N_Mf zn&%jaC~_w@^_bo$?&Khl)noOkt+U%{n^B`W%iPDiDasEoN=Kdtjc7SD$c8^|$f!Ks z@kbI2%l%yQIoy}IoYOD|(;iWptNcoex3R67q}XlsL~PEqgh#k^PMEm_KBk6?Rz z@SlErBKqpRfHGY)2QFxI``V;zMU0z=Zi>v(fOKOa zh!sP(UA+#?9M2To(Ll@9n0`MNle>eq^z z=Aw(ClKstr??vvt(MVnl?V>YHIKulyZ7LgtU|U!DW#Mh?62oP+pK>ssNxoin@zqAh z-BFq#wBkWWuj^6w!|vqugxNaJ(1F>MIbEe(g^@-QrDXTdls7x}(HY6Ue{Q$m9+*_Y zp_s^uO-KPZy^opBi-L--pDOyKo=s!!?NG2rtQN89uFVKwi+6P!{fBLzHY10X<@sYM z-xpRCV;3%Rn-gbv#{f0U(_Qf_{G(XnZ<~)6QJcZ<#0~rMFy^x+lrJ<|9NcqP zR_v(~_}iHFx!{*AvEGRfs9^tJKxu|MU7)`mo4 ztnc5a3IijY@PIxmW+ilEvKUzsMsZtoEcgg^MW3%!hQdA7YM)NAkQLj9tm?n?)5U7Z z9mSze8*$(hOAf0uquC4D?>6WR(+amr+EGvYbBWl^73hIH>5l`$^4#_poE0Il5VQc=gg(IBhf8eCZV_mddnQ7$tM6Yq+3dFq&Okg>P*hN z)Ej4_F9b(8^aoW_T)jvbuj^1T=|Y<3WM4&XWeFb*Ut)uenX&j2;;+&XdgNSw|14po z4qqsKa1k)qCGxG3C+s)N0G@_DXOi8^Pe>1!^UkV zH)(j2TQ$?-h_AIXu>SBy8Rag>f6_FEPKNaV$J}NIAPQm zz|+XeamC;u!S+mP?id_?ZP(ieg1s(AbUy1%9Bembvght`Z>!|+-2C7R=0$>m+%QXO zqk^Y`2w3VwgyT8ZBfHi*rsT3pLxJ*!DRLh25>H+UY@}gkE)p+lg9h>)hd=s$^LvZo z4}9$@TtY^DIqb9cdB>oMzyqp1CQmB-yMRFl_?H$h$z4b3CeX0iZI;QgDr#pe2N)LG z@%lwt$&(p1wD=Y;|54g3!IQ4Iw&4!Wy3qj`Wl@+<@kgHMXrT)5UNuzuGWWT+-+fnJ z!10COCH8GzCicXbQ?wVnwc5H*=zy$$)q7bBjJBdV;%+(wh%X%rb9%(JJW%vvnPOn4 zI$CH8RCv4aQcsLjWfd9VL=Bzp8myxs0^Ri-hX^wCY za@Xp_d^$1@plAis2FGirXSn7kymR}}wXQh_X%3!VlPzoAolOmW^@0?CGZC3n&pV&& z_lC=!Uoy^WAH_cqVj&z8P8!aWqEihRuAuieP8hor8S1DHuZ-Pv)E}!hvi}tbETwGU zBUsYT_ydN$cJM>h$M=+#rcTa?^dqhOIZe(C41B*jOjz5KKl~cSoPoPhIV7C@$d1UX zjpreNRq@iM5^>&>|#eK+JuV-II(3{eWIc0}Y*|RH~j5`HW zSgM48>S@cx^ix4fk%yhA>_g!U)a8$&gWo); zOt)yVI@FWuBp5yB8^SEwyL{wzc^t9mzgTCvGHR_*wya|v*`G>y`FWm?{a1Zl7Ckoz z`{ZPcXOD*J7wmcmD*mMwcRZy-#^dP;j#W%&Y}h$T4hBsFLyW0+9(@`~+b-8D_21`T-j?Odb;7LgJ-cNyOlVl|M<<*JnJ81TVkEm2xG%Bs#9Kx^!ncFxDwxM z4lV^))517#N&Hff8W7U0*jtFUBCk~p`n2oU6Ic;K^Z!_V`Q?SsSLZsr*&XM#>X<-p zHpSaQz(vx~RG{?ZjuG5*WtpyNA(+?du(dWF_p+VP02^kHrh*!v9^9xW*SyZOD_9Ip z;3ZJLf?T5Sg%ZL)_6U%#8}(^~)Ut;=D06d+jLU+HkFJSf*;d`?fXQgn{^!z%9?L{qr|d!Nsbi}?45=$Z9{;Ab?)n|CW@wLS zgDZW&GxIq-ncln03!LRvrUNHzhaAy`qtecW{WgAzU9@yPt%*}>`fTjny?E;g6pEUc z>!>C7(o#9_Nc{&Zr|nNeWs^}e44ORr9hh`J9cX7!@3=y9$d%Y!*-FiA^u{i05U(qt z#RV;j;<$G+PKsKq055~>Kb*j7-zWj$bNrwNgBo{iNuzr7%R`<=c=1m3>Zuui4GD5BX8LXQO#vq8>o zD!CNPB{1Z)fym=<8T5Ax;Z*&FPG8U_`<6MTTFvuQ)TrDXMC zCG%Jv8(P4PC_D!eeUcnalmV0Ysq11|OR^bS{A;ZSUGTP*L!sVOAh5yMqkj62eJ=3h(1@~ygDOha?TkK=;Z!p)#z zTh!c13a6)aGh90VMqgVjFH_wk#d#E%1`H8TxICWPdtPTDe#vq%jqsqXl?8CE4K0%Epy|NJ z$zuxRI&m{J?Q_^L(4PjCM;;qq9SK8kIYSj-C}zCIkFMHS8l8>ha^j#35(=)l=S zWK5edSI)g;xOUVwHEsF0Qys7)ZGnT&RTY8&@6eJVuMiGK)ocOdIZO?Q4Lf8fCWKuC4M2nv`eVzD7VXG9v{K>an|&B&7mDGS&ur73 zX~(e&dvqG2TxE688ZP{}jOl~z+>X14E#w!q@^cp4M5R7!j-1<-(SjGykDRG%= zy~{16%M=Rsn^rLaTaB*EOHk@Xio7QypKGDJ3hijE8@@zQJGd>!d8ngvs_yfE`y$nzwEVcr8 zuBHk70PS~#2bCT$M7_g;NF`|hz&n%6+UU)!=2<}J#yj;HDz<>RPnmlNBNiNcPyzAU zJZbY1mvrq4f1FFC;Hb@gP3#$qpoIeHvPzQ|&ar%Zf=%N(0oP4l>6(DcebXy+Vek1V z;Eg&)!sWLuQC1?Oa06DZnviUWs1Bz;}9KG{CT|>=L6$g~Rm=1bbo`jj@R-*DzCg7kfRDZ}zYo`2cKHy?m z>#l`QtPd(njbGK7xnAw&GiRImbhQ>r`FAoKk0b3cw2%}rX@Q`mG3b#f35vtX}pwf znM>*`C6Os#7so}|$x)-HJJWaX*0TfI&Isw|-$(4q-!~jnHm(o9yWF4YDdRIqom2?U}YQ z&8`z>LO5G@elr;}fBoFa>gkhgdRv*?d@=PE&gwySCs#qbU2QIC#ZJ=B+RO1R^cljf zDV!~gV*60i_ef$IO6H?e$NYIv`F4@AUTWQ3MrqWPJK^V+WVLhAt-8vxR_A=GPP1<^ z3rjhD`;8^iNl$5!E&HWp z4KBUFjpkBh)(W-SDt)Ht>wTKm(r*X#8)fZHuctXBlnV!m!oA=5{q~)m_GjK^XzYb$ zLmTf;91x67C|NZ8RX)>aDcI0v72!zO;NRvyZdO%yI4fsJ$DSLqnkF4j2=gsDXI-?r zfu7J-qRT#7Z?0A}RVobktB*U{qagi}nM_&9r@6t9`dTs*2nDhK@jKgXeY7wKpYnAk zebdd7k;osAH%T{gy^HG`ra^xa5Z_MdizU}RHI=PCEjSBx6@&^Sf~qiDPG(or=`1^M zkCIlJIxLz7_FkAb9b;J96Vl6QCV4!$EV&kSQ?BoTuG!uH&2%0}f9ROdWJR{YJg?r2 z_Er<`7~^~)+H7t)m#@54rf6J(vUGE%sot((9Hr25rkQna)5TqWR>}_K?Cf9I&q%6m zeZSQy21mOoiFjW&cap5JHU7?Zhm)dScIoy#o;bN*8vl`7mFgSgUM{tgf+8EnK6v+CV812GcbXFV>PxYO4nA_WsWpAZy2b8dh7d7_> zFT}g9&_9@+?aXIlz9hRz#RP*#(b@9%%;6{NSzMUnBl{*LzcroVh3j~f?xZFpB^Nol#L$vs*O4kd4%KL&3+ z`hir3@Z7u9VAm_up1P*17HIN)=Oec?@h0Z(Z!KTUZ!S%FyHW9(mRMYgNaMS;#Cl$^ zr0_Mp^R%yRYbr*;`<&>I&eq=-Eh{w+B=q*(4K}N5NpD{BjNk3ZxmF4@!q7O8SK}#J zAupIS=7`EkM7I!v@G-=3d}Jni|}>#!*0mue~E2K2itV_aJ# zZXyO|P*B|x`0AbT^7a>Md9~UrQ+G2=U(Ew4yCsG~&OFk7d-Kq-_7e`h81OC>Uz9$W z8d=F+CdO96UGAr(R;^ZfQ$J*9owL_o&wc1?+RNj)Z0(f2j2XUZ`m+@~DK<7?l=GB5 zB4R{st=OR&C{?9)x7{&Y>cv^Q*IL?Ieq(Q{72G5H@BK@smzF-R6a{eSXvA}GhwpM5 zilGH?0)tg$VX&2N-+z6=%01&URMRX-?JQTi5|F!uk+dy+S=#=0=ktrvD|d5W51MfI z&Rxk{cA?5vWl^=MH&GLfQ`50Y8&>Vj$WM78vW3kMWN@E!ulya(Z)H3~Dws=D; z(N9|L4Q4@a(#oVHOnv4w-}&-=dNJ~6H-*L1T*7PQcj;$|QMqE+BE0I9M|YFr)V-hw z{~(&l2Vt+mwaeU6LiIUlYXM5q_56v zi8<+%#N}Q2!JAy^`=%1)?VphOy3(HQ21Uv8((ajn$zs*WJez!2gY5O2{4_6~howrJ z-3_c!S`Byabt+z>KM)gT*&tacG>L5qsnPXH(}o&=KHNN z8$F<%!QWKe2DtVWQXyy17ZUL?vm<8sEyj&rj;c(^+E%t{wUnvkk?m zcI6M;?C2=Lm$hnX?|JZORXVlk^nNC>G5$qgXhpreHPCbo66#g4ELz#6Vdzn>`Typd zEA3s<>`g0>3>%>|fMGqoe=Vu&N?KbM7e!+do>UXOefw#j%xC1k_6@_IGWDJNAzO=? zbn{@TE^GIl>69kk6`b=dHa(f%e(PsFx%sA;SBpHb3Q)^ydb4QrO@0!T0v_*cDiL``TD%SlC9h_BGyXq_6xpzzM zY*Fau_qs{q(v81QOnGLu5^E}C!YnK*{v8^ znU)v^`pDB3u3V5uyt?4s5m}grnraD?QNk|$`=Q)+{!gNLEJ%vu)j_$sYg@wttkqeN zy0^>=m;Cs5DRSCbC&H0!rCaY)Pp(Q!?qAOZC)IF=GOJR5S=8@Cdj3cjrD-FQSL+5{ zUb?s5ZC_RU{pKIJiTkNai;fHF;if(9km>wJy0GgY1febN^w0L6S-K%9+k7Y2QBf*6+l?tv{*(@)O1@l8y1t2my~vDNX`NqX`OS!G z%ki?e8SQjupL91T?d89fzgmwhJs+H{->SeTQAc|)O;uZZI7w{V^XrQ(2*=y$`&Onm zIZfcD!qVdIOZ{T}pzREY?u5}#XyZn?+N?ac*ClVcC7d!d^x@P_MuuJw*j4qw&z_w0 z^RsOFbfhj5D=%GSk@!NrSF5%c%B_%e4ijh7y+x~F^6IPlOyuSun5e^mg!7VmGFv#C z;bF0(YPGIZ@@479vNq^oC;3KS92=q6{!#CX;j@O+q_cSfqx{J}y>&94D@@jFW1Sd0 zj*Mb%qDk3Lt3DqOr*)_QAjz^HR?Q`Gs%Ce#o~Fap^=aybCUqoNUJ4-}O^RqVADeP* z^Xe*p?p+GmpucgW-v;I?lJ(4MoX!drZMyPW=98mnIH${3qwm&arR#FBlA9};uoKOe z)pdBSksW8evhAE^CXCkT*jiVw0xuP6(V%>@PM&nRyz}|$)510epjlE)ZyO@rT<95? zOg~-IL1L>g%LV^1I>()S%U>2}pT4vFSt@!zG&2|G zy-wE2J)Gy)WTvdbcGb>Y&hzxHf3;~(hTyh*(s)=;@nL%LHT61!H$0&lsa!zJ9nWyn zH$o`pN>XJbS$X^9biMLwV@pf#$m7m)p_kcJZYK6Beo&HJLsR+xIWF1)=^%I9lu~qfx~V?|ZUqJrWaPbs);dXGvI|E1l;h zBYR*>CfRcIFs-;wSf0%f0co_Y1l@YD)>*rjI)_Veot!k?7m8 z*GTT|9w(J@?^3F)LY_QJWgO#n(HlU2=SDtRPo^!-%+r(ghLm%S7q!9Bdb_up-+0bq zP|5N!Ej@g}vRZMDLHK4~T~CO7n%jPsKE7p;5X?f-E1fC*%W*Cc#&a>CcFhP&ZDrwJ zcVuV4q!6X(&OuB0uri02_cCJ-@>}ax%sM?rq2_@w42jwa`sPhhgHI zC+ozP^vK8$lHU1;$z~`ktyhpLEhgsFWi~9|(TkJ#vy=E3C~ktE4frw>sJ7?piMVOXFhbEWL=$9Z~xJ zZl*4b;e)W-CyS_&87J5(lUn2bV(NTd*`#r z^DIlQCdXG-K_fJB({Zuj9#R?ef%?<6ab%X&jCb)*QwbV9ah`d?HLtkQUd!Sz7c{0< z36pHidmGDUcwiM5x%tQK&GPlaJC+u=+5_!n*_+GbeA;{?0$BahghF~d@zeXI*>8o# zD(%kLV)QK1=k1BDD4bs|a>87TXr`l0D_i;6!}Out6_arn`E}> z{=~gKwU`KbESYIR$sl*x0n4*t=pZB zq(XYOIJzB5ZE}}hDBEUnI7y|qd+Z|j z7lxaK(cbEY=ohx8ZBd@QS8`G&m)7BiK1$gmGjgA2D$PJo0R7D(bu+d0RGL0knY@3D1AM zuWENQRlQ_PEP0GSn<+K_JQ+=wVx`>H1FjqthvxIzq!eg;mQiY|x@OleC}4Q$0KGEtXbCzEd>ycOQ+MHMGS@yXT~l^46s+kWQ(_xaE*N{O=2GtDqe?v*SI zsN6`VN9|wkglVxee%@?s<`>DbWhu=;SJnrMQ7(TtrK#oK>qXuOmkW_ld69A3tJjMH z*^-pzx%60DvyZ#>BpY6qAzYfppC*^7p}Lr7Zf*}^lD;d~&l1Ub zsTCH~-TmK&)n%0M8;t)Kk2p{DUi11obs0Q0ccj}&rIP$^BI`Etp7JZTE2n*_ZU>Os zO4q1=Rl%;lF!~4K>zqwwws4Y>177(3i42_@TisN*GwJ^EbFa4(PJ+a*11Tjx9G>lV zKWo}f!LHcG8WN5hsw%HO58Qjrvgqe%x9C>-oB8R(cOP7Z8Et*y?^be`?&2nERt(xr ziULsvN&Nx2y;ndA>s9M_#8-Yd?Oj#Qx96Tb8AvNcMc{}$y>pf}Gxs$j%V99Ke?u!qIX^fW z-^(A;gR5jSpI6TpkbKg(cVuNOpf|yxT*2^+v++{1m|sL5?Zc8 zgSU`alLtm+l9rOmadj5>uiSopGgG0$U@4gIhhfd&Ecehb-+Mb@G|?(7UkdNiSJU5^ ze8Lm^Z;q_dSJGc8`nsJAyuM#qK2GNneLp*N-PK0AX57C!mr}|1c0k*kRWlMO5k0r& zHs;xu;X5;QgDjhs)Xsb_U2{WuB~0cUyry5cVHD-F>cFaB1z-!BRN3U*l2bOl(CYdu zw}0oZSMOG;lcU;e|6iK*n~eKM{}O%LZF{2Nx$Gp-7(Glz=8J3VHlNxq_g(YFY~ER! z=5BZ(dbN3Ppr6fzhu~$S2N6aldmRX)y?V9NTYc3}yQ!>13!})+Bn6mzX+NRW~Q8k&`bbCdjdY^ph?&O~9yW6d$u_Hd8=OXR=-0EtjlwWI$ z*;%&a9K70tlg=NzG@VX7-1WHAkR44aqbdSs3B#guFLR!l(9YrW>O@r+Lwn+O({F+J zEOos)46&ihQ2lXq(7aWL`;l%Iq^wb#ZY(!OV_sD|A1!kGg=oF*4xg{)r>jtQQdw&z zI`wRl4x&SQ@SD%cQe$ufmNid{7aNs@mKgYwd>6d>@BaVy0{yQ5>fdB$NwMY3X{z*> z*HoGqAqgQ_k8T+Ovc(C2{pX}bpgsc*K=E(Ut9?K~AOXOLLzgHU@eeBFtdEG4b~xNGy(9FH z1p$G_OPyy)R@mO*{D|mz2w^gE^g3+j00K_Zgx44+D^A{L2*G>c%kw5Mb_p z$pCm1jcnY*NxBe{r3t$vQFH!)+TYXN1PCFgc`_o&_bC@B$1+IpPqeTF6A28$IXTb6 z9toY#c$GJV7S+j(ul@v!1_U@+?2X`yRqw6qHkkh=dhxu&dC#K!b9XaCAFY5WUxJTq z`iA_96LF6a3}-&@5yQnn#B+eZ$T<;w;eQ7PxFIT5*eno$+9{8~S{S+*$>2RF*|Z4z z$GzECd_aZf$6hCyXDqs+aeEP0Lwn5?WMGawbMak)?N~CXK>`8Kqn2_tGWkeNeAN*%S7`Z{trN7IHQ8a2t^D*Xd@%z*Clpk8iM2HxP{HSj>pXk8!^g1!D!L3GhKq>^Bq2M8>l8*==8AaPu1h)Bp%-o@-ZkfJ{S49cBCvk>s@wlECAlM+7l}AK=WsC47sxpQht+qBsxTQ-1m>z?h2!R;ftB z=?OV5o@65-a2H511qdVlQH#@n5uENmL^%r}r$NTbV=XI5038AgU!#{njgp46A5%ll z#am?jx3ddQUJ;yQxCO}a_@_7CGxkWl%ru3a+jt0p94R{h`>+z%c zuXq-}2BzOQ6lml_1?Uq3Q3KhvOKjeLler4QD}hO%GMGi=HHRf#+lW6g;vozPafS=q zCE5O)kR1Y9(P)CqIAvj-2UsQ?f(hB4@PYvnu8F06XaLFRFo)uM`gTNqk`p#5!bYS7 z3VN>4NNV~93E9Zahyo%}6h)Bu--#Sqfm18KWUU8D;Nf<>Nelnq2GC;lr~^MH;F0%9 zH%qVtZ9-ZX!ugOuE3!Bw+kX0vlsxDYa;*tWG)nCxs9X?#*#9o|Dg@*TEK+TO%w_nn z4jRCxDh{pBqAr1(C?F$qb61=bu0wqQ37DDL*$UDN;3_}|%f{j%9LW{R@lq>*q=5Lx zdB6Tlz|aj}&?P|m3feH#+ccuQAdLC>1;lS|yH9{!VGG3op+Y5TLAFamwey!?<>L%a1~QZ!%A+Y>kaWLg zOAb;NP$2#?nM%ia`*vX$c;{1f06K1o32)jlw?za!oYuP!Gw|$kkNwqYWg=h zTpNmP%1X0tNLbNz^u!3>I=&Fg*!i7zZ;li2izcoa2GL9a!OlXI@y{WTYVnFW+6LBUSPKMgpYmgY{G9xmG4%mtw z5z7+ibMzVT+z$%@j57QT=q|c2&C(z4@di~quf2G27Xr;t`XiETBN>f4Jj~+6KdC&T z!kE}9@{1slr-^#e<^rPJGr0@3dGm3Sm(U7jkeoR`!4{;*fBUNU4tqmnLT91ouS^kre9i<23d|SZos(y_U!~On-@cX*V3^(}DnJLwBUyXUZnU zni~NVtL&1zg59@Du^GXS>|K4v~5UgcV90U(7_3cP|(yvjCmM4+g&_WVluY zHF3BatHK~P_cjvbWdZ&I;E@)Eud06fDRg+`nZ*=oNgT>A_%<#49NE=2s1>yUUJ5JZ z=Ey_*H#}^iXf=->auSdlIw#1z(i*ny_}x@0=LD>A@5)zv8KT{RknWI7?MwD(ePKdd9t=KzN|pZMTUwFeTYoO&mQp! z@Vg77GlD7r3W1L~if0Wa0IeJB8&in^!_i=P^X(}Ig`w0`SCpyHNWvDdqVGX7oQfjp zKu~xar1bj+=l300N9}`vat%Ywy244QCkTXOiY`c*P9RHOu5-^hao7sQ22r~cJb>9J zKqO8uh+tG99#r16AhyXkt9$4rdHi&{XhUvFBoPfOOW|c+JuHqn(ub2K?@d_X^skYr zd`{M(6d}Z{IpvI%xN}}H;wzwS$AtNe@jW1^Fp6nl<*sq$(T;}eESKbzFAiKz^6YdM z?nA4B;PDX!B!w?YXhd1!)v+G-$M8>_OEWZw`JMzZZ*p;UE zEDdmLiqO}k2a8RH5PF~FSf|=Vor5WJj+4JY>xIMUares#kHg;-tAVx0K5*LAF}9<} zzy@i*fCnVUdX91ktH=fZkSp9*YRJ{kQLsJv9_~ZS7U4g`n5nnxJFTv<)DA4r6fF^W zum%&p6U6ODA76z2X6^=YgOssA1%Buddy8Wv9K*4-iOC$(Jd5-joPPlkp}m7?3dTNqp;U?-L78Woc*8tG`#*k<{2$#9 zaR*k&yVScySEyf$d@oc;=2JfHf0AV^i=kiij$)!sa{DWETVunG!1{u(h2*W;6C*Xe zdrjHLQo+JVRuL`q(~(437LgsO#G1kZB0O~d4KH$9@zI=a-Pqa*|2v1?Fp@#43dwvL zmj2V%mQq0J2uZT17Gd4dDKV+Afx{cG3uTo*{(#y9hNqk&_)!2{5}!&)1W6iwxCw4J z#4Zr_fDk5#hDR}`U}!au!~8is*+4_U3PKbvpY_7~Z~^`px8k84pq5Pn4}|Ah@wm$;@>GJ>ML^Yh>&l=8qSVpsLg0P`%+lM+g1}Jcq1ALn$sVpc0L1@eA~q5K|Bw5H4=Dw1*Lk|!RCP>#CVM_Mf(;Hj-w<Z9Td^zGQM@XBq|r6w6lO3wW;)XQ~-xJs1x zLqw84<+%CaSDYf9#F`PyE^ISm;e9ZtVy$==co029?=Cn5tlx5042Z7}1n6t7%V_zO zpAn%nA>M7MY?vej*;l)Cb1ne==nNjwRsy@KrKsa!e&~A%yesqYQpY~JXSr(641(p$ z){sxv%d~R_nFLTJHhO%MQ7Z9V1~Ecu9BZyDNk6`Tk1lQL+BITq5fwKUu;E#h>>^hZP11YU{#Pfo*GB4aO(_877`N=+w1``Te}$RH0; z3=n}#K({oq`G&_xI=}#1&(Vs&ogC=`+!ceUIPcUJq{qX(jx$c~qJ%Ef{0X??CxqAE zkkJIg{ms>5Osq_uGA7yz-z82@z@+FhZyz_a3HN`o1*%LqDqn-cB_lk;8*D&hPaGkv z(A36fPs2By)Q|YD*%%G;5S4=zcRXhbb2o$<3OD&Il{E5FInb|FX|b1p6v^IaisOTbEU;V7F&TY&f9JHN-&2|71k{PMfdv zNJCBrmqCNjQBU-Fx-GKTY-2zZl;7ck5j6RS?|oGwlJE`WPL-X|;+H12Z3==$b1VcG z;{_(GIYG0xn#SZKpw-5eVOu0XQd$vs$IFL{93W9uiID8@!ktfQCfbXvL5?2~F9R4# z*Cmhi#-n^1u7Tcl!)&SOQPOY1lzt_th|v(X=kI}MQeg~^K00#)hgoM{RB8dw($GX_ zADmR%IY@T^FdsBfG{X2i>YZdGohzP4kSV8*HCxXjsOGW$*aZNJA%z_Sx zL!s38+CR$c+brR-7UB0s+!<>O>%VH!TU;B9X$I;7{5e8c<(P;yY%&U9JB9_CaAeRq zDEvP4-kUTxtPOjnYHg1bNOX|w;h#ALml2}FAn;_*8(vrzr^8RH5 zZ7rsmr#i5$F*Yklyg3#ZQ%pgxyB^k%5Gy{-TCH9VROoN>M2&cUNY-+xVt;vD1-x(025TjQu&z8kFZ%9rIDszHVHoy0k? z2r%7dVYRb~rQp{TNfFyCj#WrSa7!G+YYKD^x_RzXLnG+JoP9 zNPI>U_zTzrv2%bk*ZM722E-R+jM+LiRD_;rvTUH;37`t)O@mHmOo_i;IV)zql^A7` z@RQi}Ng88}7I%?;u*v|f_~e}<{o+^RpSW=2MgkXvE<=oytper_J%cYBg_&0oI-On2 zI|G^h?&&A!%{UPj;aPu_P`Ic`5GjsfQdUTX7X+DXjRoXsKD^^BC8kg!@76N9n>AZC z(eU~W_0EM<4Z?{0{s5d&Zo*xqgqZ}`3xRB|Fm>XX-X&L1xMR6!K;RJD$gH7nM21kr z_`!dRG~G{!B;uDiQl9i0=j9#qNQJMFQtI6VHJJNLXmdVPSf7ytF;IbG+7}sN3v#+( zKe4|VYXSWA6^l05^dl()4Gha@#U#d7#E6P2cb-Qd#RgL>1AZ?bDq(mX^<+%iH@I}dMrL$MR{y^5j8O13OI+sd- z^@lw)qeT*zh)nM=oy^EA8X+eY_y&^x-w44mPm&T$rQ==*zH$tO1-`!3&N)Pjcj}=dAR)SHI7KHT8n4MF4{Vw0kQ4^S8meD7k`jgYu@SX6#}v6u zZvFSq;%6*D#I;x9!zzb=abJfpleq;ri(sJA&s-&l=#vbNG2Qar#m*~{!DT8M(%aN~ z!vAJJ+G?X=o+KX6DND_V&qjaj0oN%&U&#Y zUsd__i;m<7Y=^VxCc26+`;hlI?Sk(`{K=UxQ8(tYxejU(Lj#!h`(JYjf>GW3{qq+- zAc+v6!vA|*9VWip3g%FOhf#`*8sTS`LM0;$4(xG_1^lAUFcQE4E?{?+$!LtusdL*ZRR$ST1UtS zf+j^R*qR}6vkzy2@Xz`G0ULM!POTqfEg^b03^ zHpvJs{Np$QCh5^ffJQjC(Aj)^?OD&v%=(Lxdbe*FBaYJnK5 z9%aRl4C2S_{kSH`LdxG47O2Z4OKIn?2wy~G%L^j7OjD33Z6RC00~V2y74|O4n2}M+ zd3TpbaeWz~3(Jb7fTVizFqx#ZGDBU8q6}hg!^Gc&O9NvEX$g}r(2Rxri8F#O<_t8B zJ^{x=)dyiCl(QhcmPy?Gm?G_1k~iJuZF><_j1E3wFZzQIG8+pw2d0~2c; zWaf`>>6%mm8NPzPM~hd@svo^23$CncWRpf$#KRN-LyC7i&TwH2eUTZW8#)95~xf)41zeYL?GWR)m1kexi zT2m@wxiu09u;~!*8TnHmsg4AeD6-%}908h94|Sra?eAQn$qJAQDIW>?oaBgD>hA&S1C8Gq1L^_P?#1UIjI>ik0jb~$ zDNg2T{hV1F9{SG~PK89iw|id|<~K7p+!sq>bbIq0MCTd03Z@INgHAafry8wIFxT%z2ILzeROn?xGA(i7oQ;v$); zQ*;befL{?_!iiCRR5&&RL+Kdq(hj8!rt!%BhFvqNbJ69LRXBzc-Jv;Q@nTUm9x1dF zGBzXKN;D-ueHbXee;$g1nC7ky=`0ju^D@}umr?Yi0WU$ak@FU0Zv@kbV9G~lZ&|NW zCL((xq}hj*w3j|aS=6>Fsecl=j7GACd`8xLWJ;JBX9lha7-m`gY(H)S>;svD=a%ta zoXtsmcCfHTxJ#gQ$i7n{!ivHW@t+e_N%q49v=Jsn4O}0m**u`RsFIly(pF%dK;rgx zF}3^-?lOdI`6>*TF}ULQQzR=$LtPNI1#UFr2Sf2Yf4USM9@%?w7C(3;Q^xD5I4=_D z-FlF^gmzTGv`E0`JL{r>%xXl3yoF;6mzIa;5D0~6 zd4nR#rcu<7%N1P7&`Ge8x;h}ED{F&z2@E>C(m)pObjC3x5&LUiAmtLIN8~=LaH!63 zN=3U4TOb~EXFF8y^8_P0iIe-W)$`sbYWWd+<>wv>73V@d&Rl;P z(QQCAian=~;mQ}{2a$|d<7q&;i1r8hm;q3q_C=;{2q3F&{6N5ODm>Ewm-E3qBlxfR5vm%#LA~2-R!6er4a(pNTu5wE_}*R>n1f=Drd> zTjW?(*_bSn<5DJY^@uuHSuLopMw z_XORY*`>(;3u+=Jxhxe3cXK>QWW|JV?j=PB8Bg(-J6MQa)lOk-MPnR-P0a}G8R=6( zCCwm99Ey-Ru>5-WrYz1HYgC{%ERn0OcCJVvNcvOW(q5fMwSyW{Qb!Whg_|3)OCmzi z;&XNqKmMoD57;q^l0!uy4jOT*!H$ocns?_vU~EGDXYVO!WdTm2vOuB+Cqndr8mE8) z=J-i&jr=p_^1AS8l)@lGnn&zCNL4EGN;6uXp`yxB7SMv`vz+Bzo0(=J5j?~^!&hl8 zWB3by_Z3V{9O!r^cpLLbiLdVGkPrb{gp3tN81C0uqc3anGQoJ2&XF-}tJXE!q;;9W z3l$+_-slKvouk#G9b}Em^DNYPz|4F398@F0voT0{%6%LXS|CegS~wo`BdAbeC{31< zB^0cXt~fjrq-R6|Mcr;A{$p22#=LIxrV&4#3{rF{XC4ogL_VCX;j z*Ar8#5Ldh=zg1~Il=BA9l(J|e$Z*Uu8VX=H&cJWdNVXIiBtS1Car#MoFvlfc;=G7e zC+s@&A1ER#!`PF3E~5`gCLD$6$#9w>i`TG5m!1jumn~7M@GX#YH+J^Huci@Cbg3IX zvlYr5l|AZ@Io(JU7_CyHgT1zzJS*+}L8F4S#?2Y-Y!KW|FW|Ez71op^wSR^(K;heN z7{42XyhfRixWG>+eS)5A`D;`sw8*b==)%u;)t}M|>?eF^m%#;NgxBM5BreNF{EySU zGZ%b;{zaOH!~c(^_imCTJMzTbU#QetR+d&>tsA3(!C)7_O2g5Xcf2){_l@`sXht&{ z`Ols4%y!R=Yqz(y0$A+q03&;*b!lChm0D*;hImf*I$~xTEvmC3Ubz3nd+r`z9<^{> zrT<1M!!RAH1m$fGzl7OWz$!694VOA$%7uG30H5N|u5p>Ft0#Hgk|!`{fN&DJJvIym zI91r9W$nyX_!?Rn^HT>;_VibwTG1AI5I=qF#U?O}hDH5g>|c#p9cTJJxG$Aof1-NDrtLp4q{s`*l zEV^Aac>Olt=7h&J8~#;0MmOPpM~+KpQ0!4a zk!kC}4OH3?W>C8Tw;V(vEJs#DbV;huf-y^w5x^u`1Z%>8kYxNX!*gtSb6f2~iT`89 zU|#fld;?1cWdb9?@jrh&rl#4X-Au~T!)3E}0dAr@81G zy?jl>0z#R^DN|9L>=E5np@ul7R0xrQVjqr%>QIdQRG)6~W{~Y~m|-q>NU$g8D9qX| z??%;5Os&kyxs!}8w4rAv?XbpBd5hO{%)*Y&F7(G5U$GNV7_j8ykG~SMnaNfq(@iP$ z$7QjJHU6Tpn&uHxkw>7`n(F&im|Rf;Vd86?y;w{Q8enj88*wU3dvrOcxhm}zjc{=f zHvB%A1%qXTY!}E|Ky0eTbk_bY8Xt$17$;nR(Q--<-6y}VGz;p6QhEemB=1xJv7l;9 znWDB4bLpts9#QBnF~YYwlvd)qeWOoFbp~1fbLcu3Ol3^Kd3l6r>DY|j+3ljNA0+_9C}+8etnSkCG%bz|d_Np!3}OCB+eu1DDKX*oH4756cm8Xx4B zq+I?&1m~kc)GhNWfo%}7Ts#Fik|^kJ7!H{yH3K+GJr7O#8Om(IwHf6{AAwiWq);?Q zfsrZ06BCjIPg;C|R!E+i_E~Y;!Gv$eq<-Y|ta0{*%KU_FoK9unJH@a%FY`C*^e#=h z*``f;(C!yiI`BrS2)@2=ar#8D|qcgM*Dxwmn&$#R*$8e5YKq zt)ZF+-#jF^U>-MGxXFSq!RjJv)rKsmAj$HXon>;R&2}Th0K;p{pnuLD*29DRI`D0a zA;=E+nu`RZYg^9Y^CoNkvk1Jznssh6AR8{STHwo{2mEAIn&`q~Ny?II9^gWcVapGe z@*if6unu#E-xcVRx>4*J5L{y~fQt<*Wh2MkAW-ASkipX06dF=+p1x=7>cfB1{}u5+7A(@!h>jFz>p1NHv|)-s)1hNY{eU#Nrz z-~Y0F*gN@~c=R5OJ>%0iEV}SN(Y=Qp|MjRw{Ff_bZ1p}_|KZK}e)!eGH+JAJ>(&(A z@vCEuDHezauu!v2?Ywi-%tvNw!Jrqdzl1z}xa9n=?+5kYQk(P*%@olu{NaD?XP(x| z;VCvL(QyJ84`T-ObbO(va==vNY=RFf4DQ&Ri_0`+=gYvy(mvA_4?!`+!Lk>yP<@~D zL#^M1M6U*K5jv(BiBYz}Ou^nBU{Jrl8VG0^k$EMI$2A>hbqdmb7P0HksdunJ7@b@b z1!|=U6t^8%(W}bS(pq#G<3wC)Y`&cl%W4(^unH7o<-TD4WkTXhV@>>cq$Octb>YKo z3D2>>673PJK)*jUCR5-jf_z@KiO;7}_3pEZa-%Hny=k0EK}Z#MegC9CVdX*zZ7e0> zR;z2Ix|C8GODx2i>YMwmN|0yE>&}=%7?Y+rho_4SyH${ydREw*NlHGHb7i1}2Wtdp zGe`l9`_K2o(#MPU09oaUWmnhd&bx-$GF8?;FX6iluB5zR z!I1B3IcN$)X~9tHb5>diafocI4x${6!P*F|4TM^BY*IZ!mxii+#fB8m(>h#@9}n+K z-BB`mzdQdmFKcDPxTV#ZtX_+*TSJgfBeC3$q9_Boj~S`1VX~S8Dpc*-yLk^bCddwo zFM%HOJ;%X4u}qFUT~uLk#xjgUbg92Z5f_>sbC+I%ypAMyhYU!j&p{laIZW%@;%4}v zS-K=gE#ZA|!XfyjFf3hX=JpLTRC-C{T!np@r=^s+c!9L2srB*9PCCgTN}T!}#2Y@= zF}OPIpc6(+?Qr;H7j!IjeH@d@R}7u235sbml6WTy7 z(osza0<0y2l}$K|(j$fE4@0|_am)^X+@jk~q;Hp5Dw^+f-q4MYS_PHJpb4O#|FR#5CSzI8&` zjeJ6$qN#@4AW{3M?{iL4Qs;`e0F`JnUwlEv3nR-3ti0t{YR4SobX;_k^9Irs9#MuL z@ix+hnhyA34We!S!KNp}FTJ4B2uDHl6Hc{Y%&Z6f@7er1$_m+iXQ-RkyQA0%RiYR0EZ@3K`;`m9&ZcD)x{Yi#zN*Asho1BG>Fw~?yd-~*rK*-Um? zmSp!13sO#Zx6!qwNXxlQfsseD?lfae`5tr>^k@*+Bi5gTmk5i2!9ir&bb)$kli~E; z^sTfFomczUy_*S#$30r1?bb3-`v&^cC_sNA3I?R_!%7ZeYUaAfjAseF^(oYG&kDbT zm7$0q;)Irpm;~;|?}f58#g{u^y$|1UE^J4^7{lD)-yYkrq^480HAVE;Smd|Shs`46 zm||1@2+TRd#BDPMJE5oN5A1Nx?kcR3Oxr7CjQR1#$;1!h|f1PJzM%}*aZv1Xx>N-Sv)~6fwn3(>j(_*sl_Ew zwy-LdL~jDbY@8o;c$$H-NXpbU6MkD4))#QLC#^R8OQ|%6JljLYUcOA0zZqU|Ik9l2 zzMR{>@TG914>QUx%@cl~f^e+Ma#S&Kg*%uCa*kOPyvrw08&MoD9D8zmie?q-V1G0c z5YIwT=Wj4neS%n0U&10FSoRX(q68FC_C3>wNTNLkTZ*bIsG*^=hXW7$Y!FyV(KHDM<0cZKc{J$MGzNbX#%$Xk&~To z;*Nh6(t(Ei;srS9j|Gu7&12(w;|}g zz0K5lmGSrlOK@K4BAmTJ=RQB=71mZvnzI7XK>Z0sA=ZpDX2t13b_@^AoBXG;)gv$% zWtx{}G1~v()?hXW?-`Kq0rLQ>(ef$w(_|Ve3L5XAOvb^Ag#8=;j1qBPmgGT#BkS0M z1&#asdC@NGHMoSh9vS0q#IRh<;w+NJ4JHt@Oo8%foKwidwMjHEtec;|XCV8Caq!wv zSvvJ%4cQJv7*R#am(0lBa*^HT51Q{LhPE@z<%B1%?(H-XL=3upZiDh7iF~18gGO`NNA@N17Ztj<5e( ztvwDQo@6QfGG&`l&hglJQ7OwH#Ci%;)HPbnXQU=HFrDF+N}c@10P5Y%FAVFGnnU z)UMJ>HbFH^ZwDqhHg#HN({8(v@drH>7OW?)APxTcOlmSbPG0JvaV4tiH)2=SDjq9z zuT54(Iy%*U#+tPvaKy}P!_568`W9{tY3*Ay2cG}zzVH`@e7j+_Y2*QMlty8_sAR=Rhlp*NmR z+Z^<&`<5+>SIjB&FJKbmXIl5Cq$kJ<3r@@ojOWoo=}g-5I2j#mMiryd!!EK@!ZN}t z8$x41HHWbj9z}5i)8lxR zOtuuF6!Bt>78$8E(?_`wCCLix!WIoeg-~BAt<*065T6M^@d+AaDw>0KVPgC8;nfyJ^^1g<;rcNZZAy zSb8%}xlMS1Z}4N;c?9DdEt|M7Rikq@Z`R5HYcRup-Y|Z27^nFaZenbGPOSOAKr_Yi zVpZy$JBREQj1PQG(V~Gdz@a|#RUiK4Z80f_f&$8nO3zW%L`bvY9zX;lwLopMJndbc z(bn9nvcp1`33MrpcGv3bhUzO0)Mbd56|v1DXpD{72#a%A*HQu$^y60TbJ~Njyypk+7iOAe zgIZ9o$JQzU%FS|QEFu=6DK#Q`T^lf*pD6}Be5Cs<0r8uw(I1Y;sY;(J^bzl)RCXL* ztuoVT=3m|2;r#C!n7v+xTpYFU0L_}zhVJNiq_)YNe~5OIS^M_I6=$om^h8N}0hIfz zbjVpf=&UYTn@fv9ftYZvWa|zNMC+;0_BpX?W6X|{1?HuT$11uYXjADqCGoT6VNy@D zGPEEBBW^4vXSS&BF;Z)~jIh*u#W(8WaH>t<+m;H5@@8-O*MB$Jb=bKVQgo$1g4k%F zVbkDLVwVZ{P&9w#XE;Zl%!n3ZkuOb2D^drG~6dENz(dXAEM_{9=E)?%_b=0L&jj613K1y1!Wvz!m=*%lkEsEp2Hz`qwXQcm@S~vwUz^E zz1rz!ixAIqHu#^TvUTy$$ic0ruSNYZ5m7=lA{6nMUw}+T+#D)*#>fPRk2&lY)fBFU--^7f@ZdwWj=D1!&UHi3o6=|iQu8W( z(-W{B`w=;MF7o5%K$OZfL(XWIyu>L~5>oz=$_MJ@I2C&WL$KAsZH7^cRY-s?eg~JR zwl$^tOoRrb2Y>ec0^ss!h)XfO8ptFM2tBF)8P300hs6SPgj9*xmdVios~#n~n6X}_ zgNPDFm4Va}<*g&8q>%lVk+5vzN|Vt;yF&!!wm4{}@H0!B{8SeFEJr${5=z~yT=UmP z;Y^v;3@jsTNIfAzWL{)X>*%z9O!-ut6E(HqPr}bDY7Mg43$Vh4y?_DK*0=n|9b#QTLu#47-dEzG5gGq+%(=CN-P~hC9zD!eS zZ3*7jPNn#brMRjqW1mBn1r)txXhE;HUe>}E3@s%+*a1fT6%E_IN?mbSvsk44mq3%@ zLH?EvsHbUewI_C{)t*lJPxA$>+cm>nS&*@wPlCFnOExeQgITU$Ok}PIv-(^r3)LjK zL!e7&x%@~K95dPn(CP8ju_LTS*26-)i{T`MNPNl)Xb~^3qrM4p=@j^`KsI%LIN+#da-w{#rkH z>g{D1q|JWTAL4(GWL+tLFlYi_hq{>T0#jSHLc6 zm<9No946|F&vy%DyfJ@@7eJO&)zlTov zBr4?;yUfeJ?lTRw#?mG^##ocqQpn`|$wFa#r_hnJSMt%XWWA8|aRjy~`HFqz_&t`% zSyGN=6TF2bmZEX$L)*G=+9_%6ddnIQ*5VoU491?c*x`Wxl@c-B@&_`F07punvR)%p zIBrg%c8Di30iZZzpRBIC9x)CwM&#CHk8E)y_|J|FW=ua=@?>5^9ZEN=4DL*68`Qb0 zjGIcth3p_H+wz!Q&s45tR?OL(NfE_DUf{({pJT%*r`fhD#ge!SnKo3C(w@R8ra6Ct zUP8r)p}1M1SYSs99jPe9e6j(f?=M>rA4BUDAcAAWyuvZ{bSX&`HD71$Lo`f^8Qb<^gQpQLu8qbv~{1b;fLZXwI?}eF}hxO zerIaxKU3~dC-t^-lw~mTIi_KuQX@K@A@d4ajFK1Vd|UA^F%|kX1Ae^2%7spJTp8+H z*YSQ^o_>9%&iyx)#oKi!jGo0cnd*PMuZ}I_u3!W3U5)tBf6gjJ_)8;aNQ)thj!`Dk z_^{MiJe1bIK>7&nCPTlMY%0}AYI_3w?-8kOBTCNUBaCVG`POAJd|hDdNNzKP984k# z*L;0Ho~JNzdS3@kL;o1?ZEg#LM&R5|Q9Bqp7rn4(*!SUvwSES5OC%`EE;Vl*67vYn z5$_#w^p^?0`tzaY%ZLS>zwtd-069R$zoEg#8mm5|9Gp>mtj1dJ+~+$uv#94~9RAsE zWWbEyQG({GbmQXqIhbyvLyWgniT1gYeyi zA-ujYu%ew$(PPCyca@cYGgKauT9ZB~CRhF!E;!C$nXQ5R)M_ps}!Fg-Ar)?k?T5pg;jiT_7f?TVTEyp_6RWJ z6yfFKReb$Jpe5X|@i%av*pUXT@OrVkx8(>xQ;D3;OpXCmMMGiAJbccXy%7SVQqJ7q zhhRY;jAd^#7SkL8VD@pnS+J%Dy00_}zArWtO!aJ#}PT&2UCUASJ7 z8e2Wr>~s|?+MhKZFvk<7NF_aq11SKmLwgPxe!O7B<+`);F?(!n7_@tiQAj!^Wds?i zr__$rsm%?TvzBstc0ZWMmCC6Unnhb?{>+uh*NO?d%p{P2b!V{b9Y`%H4mN9>6%5}_Xr%7@{^(lO+d-dQJ6{rzy+3r9b&f7*9;6JL zZ5cG@mzoW(@4<71A5;3tv7Z2`uPw`7^qtbsw1&*SDcN?B;{b2?uaYMW2hYFJ?umk) zeoZhQ>gWP|kEE7^5E(U47ImGM6u%3h%tA2DdmpScSc zw&LLi|1rs=s9NPk1^1$@mUpR3x0S<}4``*3@}UWQ>)#vFfaas+kijgM z*Z7&#|M0^oN$26;57z!SIgh_Zb={(Fk%epcXhGJN`OT+LZ6OQj@Fu3JRL40KS=Oya zuSeoLx3W-0>uQbYX$i*c6tS?L226(&_KvHw1gs7tb@Ly@gIgCYYmVp}_%#c0^cX3x zWv>y!BrNS_WJrnePKUDNPoXmGEzU~LV(-UDjhYCcFQTmJ zioxFYYKRtt;Z<}!A05tT0o{=O?H*ILoG4o-ptebTBt@47q5oi+i8hS@{zB=|_1j!snwSy3OH=}F_ z%5G`gtg|pSY5r{X2juCG(7$2n@cIw49ILKRRWP&C;#N(D36&sop6Z^5*N*8?7eebo z1|MCJx{%>>L7d<`z|-C&8EcJNx!^gY?vmafD|tDEBOe<|4}A=Rb;wEO8k1!96!yt_ zIZ_T4@1;|5l@|o($O#y(3%|F=ZZ_QyXrV3`m(jv`Ra$R>HtCsbD6~RPW3Hxc!2=oc zAXwT*Rgm2Qjs@1ZX;oS-W>|o$ZO&MSuBQsp#zOh=@DqXd_40f(nB4TY%!Hm)*ybrFa8A&L`0%JopZ*!4pA-j8RCv)0AFzfFdFAxjW zsf>VC2MrtR;#?;;uEF5G-Pl-7URR0xrS;E5Bih@ZR!qSe5UO~pK>~F zNKH=uPvoR(#A|Y){mb!yO=n!${Xyce)t)IBwN(e#W<`M32s?3JIF55rM~3-Og22OG zWK?E|g%K`&0iN1Q#1eJb`BZj&7`f0^8sd01W_K89mF5NQviaq&-;YFyeNc<-06HCx z&$RzyQ`wr>$Xv-RyuCK&%#37!?QkZE8jGl(KT3GVRf`i-&|3Q@k_@g#np`p8u#f=5<3e^@-=L-WIQVW6GuzGd*S2B0=f;G}NM(HWh$ByNI zr_DkQ8MryY&)&s?(n$8F9A!@Hd$WAol4?W9qh+Q|=vQ>if30C!XPuLzc?Faa;CVuc*DZ(5e6>UM3sovLDj*MA6w#2>Fwt9sp;W&{r8rm3(GUIxT3<8jI+gFD3k)0 z)pcZ`9&`UJcvtPRbLg?oz}*{c!TETp$yCWGVX!xX@xH{M+lGr9Izottp_!NkY*MaSymt$J z#)$y^u1SSp7?f;Cw?rGtmQ0ADr($D%>f+FirNa!=FN^Ht|WBc`W6y{Gv4l8D)GS zRV2}$(IXg;nF8uX$)XcxCZAb-DEgWnFzqEKlTgM~o(%kBFFIe!VepWF6(0V;nqt~W z%Z?a>uFMrqOz|zs)@c}cGHb)mRt@${k476){axDrlBD{X+4=qAqs!Sv`qmBW_QiOX z>$`ftuun9WbM{-G^KmQ{M*TUSkn%if_B7>66x0QYRzZeqR&mg*|Fg`4C=e7jlx9Ca zVJm{*nW_=81d35OO{bJ*vsUEk)aSmW<5V`&W7pCOO&&^&jIkeL)-*W*gmN3wS4q_5Crbv$XFa&9 zyx||Ptym#EsKvgP?X<7KsJ{)S5e@hKfWI`aV>x`DXKXNxjB8D%t9!2)aLnnjvA?{_ zO#bm3S%Ot|vfhv2sk4vj2ZlfvgmKOiX^3-@`_0(0!XML<7H38_HBRRsze+L>_7FKd z3wS;=aI!yKo(JDcnqgm|h|2@USu=YpujJ|+Ov9KNk%OBe10{F4(MW)!kDy5jNq!% zib?gY9GBE-+lE#~N5r{(y@#*KD6Z-`4Qr|4SvcNWJPXlaA?CpkrOrkA;-nDjT`K7r zOLDRnOrHvBX_e-0$0%-qjvh*+#g@o2WYCV98dB1)rEzv!;xL%S_T?|hu*VwPcnd6J zIem8m_2{iOtx4Lx8bopM>J_84UgcD^Ev@8O3*MGwTjNsdZh%=+#2EWb zjkka{(jElwx8>d26v4n5kYyTpe{zJhgLY7X^{Na@N@%cNPOdi%>8GzwuV_#V|mcA~N9Y#4vhiBhV| zkrapPEbDKLL02-0Nh<<)U-qe_@lN)-A~G6<{jnuuL@TFup%#C3b@ohsne=hol1NZn1}T72GD4 z^4+-<1baT~ffW78Mj| z?MK~!V|^AW!!X61G0yDJ-Ta!io!a7MJlNCB`es5+p72YU1oe0q7NzL}bYg|ElLC?_cpB~t)TNi`+ z95caMZWvO1tPYzDAgP-nsQW4|C05Iq5Jrm8L4`vQ+9d|OrSbLK9Z?4y3UC9=X~g$l zdOVh?2+(1CGv!njsb+={O~b8>=zShxCDO}WYbUR}tdufxRJy&#YDrnP^i1{nL7bRz zN?}v?W1WH9q%c?j3&HY3k?{F2p1SKdxo5(&CSBNSpjBqML`xl+<>N#b{NQCO@?1nA zlP>IxVXoB=tW|>HMBYa*sIxBKjLt7lFgbFKfYHZdXlVxigPoN+$Fvg!*E(;m;!boG zp#diesc44KmpEVlYv}@@O&R;*bI7e5(z)r&yyt5e{V zxW0mekzBgrnq!?_3Oblz{_w8$Yghc~X-AJj^Qan1Np;q>KyM#SIAU2I06q;9ux>x8 zoLW-p+uGx$SWWuNLo5?maS?h_Q_t)EWo#5mEl)z@(n+YPOFET_!=Z;&<+7aoib_i7 zzB~&(dQLOQ-Q$$*w;%Ij9UDv*QnsLt)hc!|8&-1Dy_-&yaa+dDw~pvNnGJ21L90<5 z0@+kL%On#dtHdPS*0`y?CCiB{eV|4N&m&u(M4Q^i+9;c%72Ni;B^2KG8#Iy2&Al-Z`1j}oGbO<>TbJ> zX_I*-Dx*)}ZZmp@75Ks6Ka%;Y>3^?T#^`4@2UUff=@8aD_(vV~e$eRV)47m($Slug~l7{bO$=L)ZC*|Mi z&*XnEx*LlcCiAfm;WJ*_6L#CJ`_vfVBf8R%Z0nS|ZoVI(dtr9LurDVG&eEq+z+~x& z$q5SZhu1yLWwdeWHB6d5p}I z%>PNT;Y|7yYDAU>5aSS4gL6)ivUS>>`kU80n$dNi?AEw>4`BwrgfH*>QC-nthB!K-`uL#mJypQmQs-3SYZZHov3u$vF4ZV z$IotPlk<3}Ly|*fvC`#$We}5cGQ_!F#P2VQAIlSMZK%^4VYsnC@>`gQQ}=)Zr6*fD zd{%brHDH$OnZ@DVfxyg|U|XpUK@s(u;QbZWP(WyEg#I`s=+`pH9=-V;iFKp;`tU|1Tc~J$mST zu2=>KbZd|K_V~YmSnFu@wRXwX9jz1LMJPocE-!*!cf%{BjAq}=PRbaY^lpg;PN1nB zVRe~HX`EB4NL4tpqM|?o8L8IRb{n%V^-?o?Sh$ZvDKG{TdjHeq zkC#JUF&3r8N2bpy{y!&81v|U`iy1mO+EgLmsXxAGUT@(Bsd+1zU;d-HGKVY~LpS@{ zF!%nBT3dWgoeMVH=W1oDjK!z}y=XM??uvpn#n7#w^u%e(V00-_l**7AX=6@Fc{L2L z5F2V%@gWR|k|~6#Kq2MS_NAMcCCr@J6R`LXsGAV znH#5rphU)oQBaFBR-KA|p|c!!j8mL0ol~j>zg}4H51d`_>R{~9C~s`R|8)O4!(s=} z$Z`_Aoa5hI!ndp+O?j!X!q_rrz1N+W*Rj-a_zGG$0fnC}-!?u-INxOH1Ybn_*pKgH zXcVNdiiOmS;VZb5`NMhEnZ#;e={wewImg#>-kT)oYiQ$lt!!I%022JAKc~rM2*m`W z+fN3zoxpxeY|hg>JCmD_o9j42|7H3W3PZi}&3JALw~KZswkO2GpP78gml%FJ5xPy;ak$+8`L%3i|c67hPj5jQ+I#FgZyXL@@{x{^wuqYaRWabs9gGDc=WV z=EKFuz!V8=X-kKUy6n?t6d+nSe#|U=VGsqa5p4NHz zM*Z+JTxW4c5658>3i0=Eu|*>*uj?M6F&TF`WlV)k5mA;?ho_tB#N6^@jidPs+Y5tV zvye4bAIPjVD{Rhn$fjsDj;lVSqZ`k8bda(e9xq|oeC>ax&5Kr)`by@}>6tZT;s1j9 zJk*iP3wmod5;^Bm^C?Aqw@mBEAescK66|2!$^5Ol6AC&d@9k1F&&(_w)@hMN{~0MX z9!=5vVDivAkv;p^gZ=c^&)L|mvW(ZQSzp1lOO;HE;5Ea9k(TlU@c99lv(1~W_hjny z8H)?ZJZkud1ozo1jFxL7LyPQR|u}+a;M*>a=?bt zETH#@V=A?_0IhSJMfO-`JiE~z3o4V+CGR;6T^*!x9gM{-`~zSsT+C(uTlkTI`2l^j zao7v={5QYUO~vejvC}XHPqy6yIcp7zQA(=#*1%uAksKmDS)X$@1c{@WGR-@4c zJZ72;=~tPJe@>j=#~CDC*}bv)Yzo;--e96C)6Ln1Cq-FPvR}@DTm^za-gD-Xa)MVh6)}2+35{Ijg3b= z-@J8frKm%OT1b60+d=J|u(;VbnEsx$$n>WvdD%gelE0TVSdIiOe7vREp!471pta$} zI`nf|j?2*~LQ)&$j(?^H5BJT!+9r8%W>m$<=j$qkrPb!fCjJ<3>Kt7i<6zKJ_%lqi zJ&>h;D*dL9K2<+aWL7w0D8f(0mLmW;hX+_ioWcjn|Eb8NC}RH#3nifUXEKvy9G$hr zLd*d@&otAE%cu))5jTFLzEdd^)VCGGh5BS0F@1xRS($zOu*g22A2A~X$Is)aHK-)z z9UMmvuXnMK^=()zalGE`KFNxVq20(UnR_l>2J8IXZc$av0fr_{f=z%bD-TN8r&nPU zo8c-|Wiz2$YV(&rmYVrwoRcXZ>`)D_!4H<5ML32T+d>NG`#hfkcz@cLAj`>iWed!SI$0CNNJ8+|5H@>Bf?B^t`U?D$s7#YRoRy`GapQ_AHm- zDnH~`s@qyps{Ip#g^QNi2QhgGjL~}$l4+OUgJa98c;7xAeuQ$L&smQ&%1i&cObvcd|$gv^0O-fZWwuwf97A=u!1YR z>N7omI8^ftt2X1GFWF2`U;CW?cyBsK$Xr9VWjmR)1skfzf+|KuN5$YU*UBqPdJinh zKxPk8zLu>@zq%sBb9K+GXy@@^tfVLV{=%etD1&kfy8Q)}eCC+NIpXF= zDzT$e1DtX$wfL{*(*2|;l2kvuPx6+p>jfoneqaZXyfA#{j3BeGP?28xLr-)uPt=$c1Sd3 zu@d>!rnMOS#^=0{o|eY->t458-fuOuD(a2p=!@tD)UBjUBPAc(ZXm<98Q8DCWSXJlp0t=t ze-k_NzSQ4F?@lmQab)MdlVYd{D(jC?Z-mf~Gehpp{c%ba0~Ww~FBr6m{ZF176-V}EL)^YKUm9Al|hSGa8q5dnQS2?k%c2D84b&Tp2 zg?m;g1*)>Ee?j{;{LvD)Y^41+QY#Yvn>W1vM;HC&0B;;!H{|_Uykb9Ejx=69Sgt?7 zdH8B%q@HfzcY|$Kr|jvq&uY+(G3F^Fsgg<^GUU+RvHMJh4)af2nsI>X{W4|Vy$Ev! z^^`E!UBEcT#(uPb`L{UI#@}ifcQj;gmoN9Qq$%GjMbdMAmiZo<{tw@#*;!4kM{KI_ zlhGHlrM6y23PxG>zrV^|zt(&SQ+c!9qv=1s_){F-DCAg3uzBL7W8a%DtGixJ(5w8| zbxyI@p2N3%mj=hpk00t&RXzVNU2_C^^#z?L$%38ZZBpj7)&cp<6~R_|0bA@Yj+|Fs z<1~wL89qKu#W5~rHnTia#)cUnu3V~mbg2DNI)=R7+AAy=1U{+!;A9)3mt!1j~Lgk*}INtKJRj%hXvAKVaRenFeZ==Rvqu| zrH5BZFeu}_F~3LV3}(E$7pTaKcc8U?B=7%{*8JdmzK)irX?zKz71-A`nF|5$sNdt5 zZlS!7`Q8%$-s1>s9Jod-!%Rk3E3>5%MppGA#cF2O2;IAh-ouF;_E(I#jFPbDy1yV?u#9K4sIeG9mqGb29FeM)?p75W1ap^@5?KQ z$ds4Z(T_5-xR;6Ml92Y@AP)8s|COP_G$v)kpLwY-4H`bCPpxWGJkE7 zoY_#S{4^_IzAc~(!<_GUzAdl&AZMx+LAbspaA1rwZ%wparA0jZFrF_h2%XGoR`OJn; zdb;GjACxzu3MX;Q=Hfv_2eDzOq8euy&9Ob4%%@Qbq^LQ|>)$uo7oybJg_Q_4$TE|- zLwz&tp)wNANU03`A5sN6TU5+RX*A6RKAD%b+>o@jSX(;Iln03 z2MV`*U*?a^uRAcpXW(k<%e~@}GNLdQ$q7}d^_s}b&kM7ef{snSMY9*p<`N5)=rEaR zZ<%=mWiVAJdr)Z^1v`Rr02Rf7$ZYy2;JXuw<7|PqD{9b^L5(AMaUR(d8pnI>;vqG) zW6ZL*WttXNOkE~RshZ7R`bKfGEVhX8U?^j(q~3sSqtI|D8%s<+m!#g)t8B*%4#T<9 z&uyQnhm+u+7MN;>F&AQ}%4=G!ZMCu;8p@;^>u;llD8Q2_i|5mRiDP%9cl|oRB$FpN zrr~Kwx2&;Zt+2Q}1$9raFQgDZ_AD#y;9B2Zi#j0{q~O!JdG}tXfr&$lA59MFI+3NV zD9I2vJX%vtm_13}_~+Vk*zNzEfeAwk4Muc6HT$Nfm!Rh0^ncRR=#t5bZ!J(JkWat_|p0 z6*~Y2(*G+1$d3*r;sr$s9R454Uu#?NWL>4&LRAc?if+P4p2h<4HH1GM*CV*luQHfR zzcRyd)w9tRTra@3Ggr4xxn!51qRjiC*;=$io@y2`+RC0N{3 zL#)3?#;>ItdhO`a4BP={?tg>Z7~ZpU`BAsnB~U8#kVf_GUJ~lfMJ;~ zoTe~YDrpo7jmK}?f&`isBfhExI$mge1WmNyVy z-@|8IyELdB_jbilF0=H2uR7jMD#-l-8X@>>hao#u>l&N zt`Rl(->Bev+`7%5flnhqHN}NdlLO`XymcEG7Epvb{14|;dM^yDA_=>1(67P20+`)1 z1L}>xc?ER5gEzdhlMD4-Tf?f+jYzaU(;@u{eg{wR3Od?UB=0xOS1cIqFCFZvzE0+q zv@eS^M5@Qr?Hh9F&VsKZ!=?z{o9*8v*Zv(~8~n`y4#q<`xIQYxuh_vU-by%5RhvopUvpK1 z|DCO1hwA%(1)zWB_KO~^hd$9O%IJU>YS7iMuMqwfO1U? z7u+@=&DH!{ECqu|P*6BGoNC_A80y;RI7!-9yXH}IXnM=iMG;Gdse_SxTwSOIC`knj$7(nexx!2-3v=j}ejAuZsOJH%TXW=o6MI;ye6_;?sg8nSs0Trc| z>uP{L0fAx}NrX0x;6EX;)xZ#}|LnviK1SM8RbHbC>w-_6zcNhYJD(iE#ng5z9X?w* z04|^e1wTs1gj(utKW%}9!~v_uZpkOr1vI4Ug-aklLEy??{qacpohV0;{P!rFF!0aX z5{cxPL~}G(E$2}#HN?|!(maUEY95A(a2W{}pQ8n&S{`3V`&iK0vq{hIDzlCBT!Gj1P^wR6woh$x~( zS*my-nQLNs3@9V2)@of~R08y8(fk@o|AC)X**GX|!2-_^I8ao5xmbCMmWa8wR1PO| zJ~O~%&c4RrMj9-Hoc@R5x4mcIeukc@e&}=S90Y|_I2-6Kpf1m#ieVzq7{LQ54r3MG zP$bYZRR%19-XE)(i!L`B;%^lH;U@%wSFpUThO$%szf#z2iNO*|k8dRHLntk~{1gUf zA~{@*rEl?1w&;siPa2%(V|erO1cFIp2gOgqT}Zr55ZdU|_LqpOHiLI+_;&knG6v0+ zP*ZLkB>gefb@;d4X*G33LZ|o{=8ABbzq8d}r_zN6)_;_!>xh#abtT$N;oXXxfVG~< zwR$ZDsxV@yyPVsdJa$ul5Vb~EgOZ{f6{Jghs{iB>FfZi>zbDe~*?bOs)&a4$%oEg` zGrR<;Bd*a+)@Z*b%@VxN^NQ?Za|G&?;291v;0T|Jm_j`UYqlp+Zm(>aL~Qf&cDxsU~!)R^@+I z_1CU^_rGM|s0sQ=9-iKr>dpOqw`7^LkQd_0M-Dh_oJh3nQ_v>CtvqJ)`z1VvEqJjD zi$+uWyEIz;b)%8C$~PpE>^kH{)j#;x@$M;7fpe?@P!} zz|lsqjRbQu&FNad1?U5Xr6@p-m;d#D22Ttqk-92DQ$Z3ceD*?(y#X&Vh@_*W(i>~9 z36fZRU&H|ZYAG?v=;rQ?o{0D29}s)X9dN$5WC9+_Mc}FtIT1HRL?we(li!X%Zxp8T zzf9>1VbyMYtJ({a^eqJgm+XSC{*@fx9KOegW5)g&{?q?LEb!;E5mddRrPc-4{P+`C zI^v8Q;sN`CqSp{Eb`U8=MJ?aA($ocd6Pzw9cg4 zA!WSkdDZ$(o>fi^>GlF5{oz0eNAW-VRUaA+XsaK-Rl4pU1ur-BTOEG_ ze5@LglHW62IIeyOR?`2~&N>fPj=*2E&;jTfo-{EjY{)eg)^Y^k6s|4R5-AiDa9t)6 z^Bqb{ET3bFF8}v4(79CuNmK||MH@W8KlKpQ0DA_Z1bC{yFi*BEFlqrsy@t&t(BUqO zuFF(fuB~d*3c-UmlAm@Vol^=PyHvrMGC(_U`l&OKX1MCX48eMewoJ9@VeEp79{^8U`~l@b!*|&K z^^X!8i43X)_R-?Fc`->8rx}3%699sN?U&ulgGTWx;`P*$BF-4pN6|9<-6-) zl!ZD-u7E+K;q-_WNb6uJi{>HFmP=Z!-Ys+gu+#n8V&-?N$cr=so6(}^rulK~ZF2ko zaAIM&^+(o|%T3B={)?z_ugtD%-9B$=#M_iI4mR zkS{EavFAi}r8GvvH}pEXfv?l)2VwW%rpp`U4v&}5AzZp!ppE(?P3nPZZgqYdrebz? zx@gX|vUPeJO|+BXZ4ht0p;LUCGHuGF=qAbBG$!;u@{Y)aG%0MYwb(PPPRrYYBa_D| z=6ZM<)vtgtO^q?CCfESg z@?Bn1wJAa>+6YcoXxrYkEO&qfvyE$Dbf$^1g~ALF+5N6j{>!c$ML1}ii_JzJW_$eE zy^FUGG@ywF@*Y5)Rll!4T?JA1<+~yO9D9J2IbO`3GI^T@g)vr28DUUbP>b$vX zYrTGFnc2nAyT`_SHna{SW7+Bv(`ByJD~n=f!E^@4vt^n=tGff6l*j*)l+o!#1q9#Z zbm(4JmYJHYcs zmv=Dj1gy7}{<|4OYSO!EX$t2?R-)Xs_^zQRnQm$n$C{rODboqgf+CSPOD|mw2`@Li z5GNC}Yj*VcZC2tH&7r>dVu!aD2w=$yEe+fE#psf}(>FyprbqtZ*U$~x@w0Tc9^NsA zZm)LG*f29W@{HBfIqKmLJ@B?YH0Xs-Lw&(ow%C}Krsw(Rox4;z=DwD8GvjC`#wT7x zh5&?`l}~rDd9vW>df6(oqs|+G1l)VhS^-bDm!4Vmt;;_sR57KMu$Zd zlM@^5Tzdz!UAKs6FqZzqJl1W{I8L1%cH%+&jE1kg)%}sFivlOpL?`ZMK}MRsS{zzw zVS>A*wcU!syDOvnSX=vcD~2T!LDI)KEmsde>P73x^I)WhDD4=lR$^%_9UdpNIqE0M zTUr(Fxxesj?3^a&*6@(}-YMCwlaKKXeVo0APqGca|6n$3{p5bF)2V+dRTH0!`y#it zFB{99oyGj8Ztk+#4qhA$GrLwwA z<6CoEEQQLGalyDmv8r1clghi`Olo&QlpdEq#1dmMDjgI}rISFFZ&p*jnfkIW`H<>_ z2#QoN3aQqO1Xu0nfx}lLv=3XzTh$zcsJ%dOiLamZa^?hibfsm2F#ghhCEG z*Xd}^lI;A6|0zv$N6Msg-hxq9vTN*7k?K?WVYBicoiz9kBWFKI3uWf zS)O2~g3}lwwOGo!AW>BhbHt?Xoxm2p*k!QkBNGm%6vfZyPJfy`@q8Au8D^_%Ye@Yu zmCn7D*>9OS^WZT8Mq@n3&dX~$3i&KtF)u15NPr@}ViFJ)@ zT}mRoEX^D-14xVwRm~EXXi>q28gU|~GC!qCHcQ7*bpchUOw~hDK{Y9HYCfx)cc{yw zqz+7#Ojpx-6pM@@U9P$*l=!KU${b6#QWbSdm`#!T1U2tM&Ff&Q;hlVZETvScSEiDq ztm;amoDa1h^4F1yJt0s{ky1s;RieBaWR(Jz$(1dMJP0Pngn?>k9~C?oa(_uK^)i(= zsm=zlq@N`PyogjToFhUq&V(s6ogzde7C|~hrTWl<%SA1yAw2`>Z~1>M8q)1;o=A`3 zUBkSy!+zvX#C@8TT2r^fkT2UN?su>Sr;~iNbsW2)30nt?xGX$v{ib_8AmZ%S3p4O> zlov<-+%YI#Oj<={E9$eRmQUql>*oTMT>)xslw!e3-6-mgsI-wXNR^>c3<>paQC9j( z{al4H>pAvnT@9w1CYCCNK~+!-VIr}eP83fAspghYF_SPhsC-93E2Wi7*HDwnK((rn zDnqWNP+S~^x+YW6~Nh~9KI`YpjZdT@`+nRT@RS@V*69CdW>eDH8c$)=Cf zHr>GaO@jvdDjp=eXxmyvkvTog7d!;p(y&{n&oV!;&`D$6rIUU`n~hrY>=-2YXi|Q9 zrroLDS)xklE7uyU1EN%zB9aKzx=U3zDKQXORUH8SSkSNfC_qp*Jd@5r)%Qv|1hB3S zhjr&SRU6{(G&|McL3G>IHhQ}Jda=wKR1m{V&RfAy%Vz{^m#y9048mi){W?pxvz^u4 zF7k!mUZdr5fxn3J;Ny|TKHi~JzoNf1|KgyWV-r4awD6_U%C!LowfLgS3ROZ;-i zKyZR8LO}HgRI^&DzWvqiSHe|R(^Al0qEs4BwWgMOK(T&MHMggdOvozf71HOCf21gL zCGn`1SS+g5tVI|SuD(|_%}{louA~N4>&D@}ZV&1Gn=KR6S|`Q$OoPoIf{e?*P=YokF?QRnOY-q5QK0^S*=$WHG5lr-(qrp)ej zb~yO<9(^5g?ZMKWIiQF&`zAO$kSabwHhY!Wuo+!kgc+Jn^-bo`qS)RQPmjO-vRFhH zYf@O@Gul4X@-nqU=g1b)V&^_KnPx@mtYTUR4!DFzg9;|Y2W%q zQLlr5`;FTlDNyV5>SC1&5S2ftz*5e&3Ih|a!oE`3B8)A$@DyMs!HT*7$4GG)C{p!J z22Z8Vg3Q)AqjGJrdYkIgK`ULSwm9R`4r;7W@CH(DslsAtGNgo7UPFoy!t$r6N?BEH z&*hg$T@_H(|6P8lCLJTD=F+GqQJRJ7mB=fwBy}UKqytn-P%*?rJ^bTQKk-WXDrp3d zhX(DTpVFM70*tVJms(IUxa8d254Cd#D&MI|dOM71(^q`DR~kEuqWp$vB> z+P=YN@K2>0`8hi!`)B&Odq?*(dSne2B>=*SRMX4#eg=PX;BBZOdEHZL6 zm=sH^qJerzz~i~A08|BtAJu)mCN;?IJbH&0KBet$3|nnrgQ>s!p|G0G&>H2S32%4) zaGY7iJ)^=*g2sj{4#@>O(72kSz?Gp@=1Mt)a?wTg97qbWG_VpxDmboq)|LNQrF?j8 z=7}=itmGB^Qswhn93KC@rn_79vs^D`~$JI#;^~ ztN+wwI2E{3%S07FUR01>4Sbh!Q7NM8xs_e0-mXr*lx%4=>IZxjDPFCES{Sq!w0gp= z5+gPDxL&wQcxy+!)^T-?Qf(2cm!$>~wQS{BtAtzObNMu?o0C8)7DsWxD5-u~ZWfZx zCsL#4D@9pKtf>T;7$s49Nt$P33CiRd#Hu4suADdlb4@)ysy0R4gSu-Z9z9L)c$dol zqiXMJH@3!9k5Bgq)70|(d?G8Ekne1eXmw@znHfh0EOvrAeD{pLKiQV zTpL~A=fch=2UjdAl2-eomtp+LT{H{*$u`P^7Y|k!Y~yc3x#nWNIMemEp=G64JJHp- zt_(Wok2n2@(BS?~0N?Kw;I;Ryek%5VN!(iF;{7^QdbP%OHU8W`;m=?K*5MhjN2k@L z_WSz?kM}pSzh>nYs*cC}@zT}F*bZI}zMG59OBah#c|f0gy?~b3c;RIFKez51nBJWZ z^)ltF*25whzi&(|`o?2@{2_6IWs-E0Mti$+*|U2xTJoh9TxR@m3ZHUkeb~}k8&sWA zWtkK!0Yc@Gl8ObXY(;G*s77lc1srYax>E29G|sS!2! zs}>m7G+Tk{Be921^|`4uL$xJ)JEzv8(&(yZ4S!VNq7IU%Ps-c*S;N$J%w7@arw8&C zG0?GF6i!I(&Ng@iwf#vZ?cv~)L` z@2AgFI@Y3O4O;R?c3;@^mxA00Jf&_!32`#h4s~H`~&zg zvJL1%*40^j*EW!*ncCqtHT&(m=1>E+NRRan9J=g9tdn$2GI>%vWp*Ty;56S%-01Vn z?D?Wh?#r!tR5tpSL`fd-@OL9OoiEbR*=%<)GAw7gq^rB1W;4>iPD@f z)xBM+cQw|NWR+nw1gSVVf+*pmDn0-hm3C5UL3oBn+I`TqALgbyPHW&(e zsI2AT%16y{>3FaJB=dDD<+DA$WASZo{Z5BO`%vCDZxWAzhFx}Btg|?L z)#ZWCt`>%{`n&@-^HCJ9++Yxq0(xgw`MSN=xM;6-tFVAtWvnLoD4S4O)T+f0c(hKU za?PtSr9k_=#1){fH&;Abvpv3nDi|W4l1W@7SdAXAs-sekvqAm5)kQ!_D#coZOBKq8 z6;M!RAqqG0%8FK~5~|f_5Rdw|vsJr0*tN|uvs$LK%zk#X@NU?9--`x|fr;D& zNXhlx!3horU}F3lCHd8DBO1Le!{_Vo-@Y(9%r_7n4l)LCo{M!?KhcEOfoyj zujfwKPAt6{ag&EM)Tm9C*7GfDsn#SPUymbmtMie8S=4<-yqoqzut=O6A0FEPMmb-6 zw)q4$$Nod|x;M>?An~=AVIf`_at)|voOhEoTSf~WM5m|7!4%yP?K+`+E((3RCaagt zHWm#Et{e{L0{}iIn#QxdbauMmER73z3}FdHj$lra)FHa2;)e=*g0htEj$mAo9Hd-u zt%7}ODzQ9yG?S-Hoir`yjO!c{ibyrzOUI;gKbZveW+^4`F_}*4GV1H8fDTf-?@6!w7(cuzcu|FW5YNg9Ya_O{9-}}LR(%@I*A)o7f*ZYdL-P-`S zN(PUFlYobk8L?3^d9+cwTE_ z)B90x+4jKgIV@vie!G+E{VwXgY((Rt>5lxRE?R3g(&xK)Os$CNqW2&Ln!tkV5(^bI z>d7_AXd(}~Au>%hxl%1?GEL3ER{o(n_(%uRW6m>-h%Tj_%g2#>R3HgQ3d9KHL>?HO z8{7o@qNROQqz*dOfz6-s$zHL+$36Qu=v#+Cd2LqU9t!{bCIw94)|-gybL35vcxonF zQldh5Pg+8IVy|^C2s!&G_uDcWaMyG{*~Q5N&|}>j>Wmk(-sviN}N;EQC=B%A+ z#jrVbe<()07%rGdp=OEP^L#zXJW3l!t==-pEK`TvOS`)~;RG0(flO{v%rsM=G6h^O z27H^sgP}{~gYNY1BCumd%;j!8Z#XT@(OZ{=W6{$aYT5rPwLx%W z+U@l!UNJm;(mu{^J2?qyJ1E)%uqD}xB>TGw*pAq<&SyO3HuY{a2K+=jS#Do@`OXQ8 z&AZUfryFG1-8}oy&-8@)hBwZ3Vet-7FPSB&k-lua-IZMG)x)lF7tx8+g|>m*t>@Hk z9IwLp75qlE*Me2dmSWWtK*Ikodu9Ckhz~J%Wp%coApqc+wd!~Qm?cCj!e-F;)p1s*vPVA>2 z`=%RwBO(OLl$koU*H#-!C~Ib0OMa+vz`lrn&Da^iS==z<6)sB&vDLuHofHnS_Yp-E z?-zCWuXf$*e86LbsfKfV&A9jZ;Xd9}$J^?+^4fc-g8-@%>-vU zyz|HGi^g_xn;iUdKGEYaE$`VRvL40*V(K?w_1WRg^ainVd2cyIHk~!|mj~{z%D39v z>?5WP+i->$9}s7v=6B*MMhfZ-a-G7dsRZgvRbvGCKK!j<460*E1*WuiI;w$sxO) z#bVTrohH3s4$^RN?&#+I%vh;1yY89O8C*pYs+u-zSiS+0`PzHA?1?T^-9X;8yWub! zGcB;bo$3M+6NctGDvqFbw$WP=;)TkTLsS-;1t9eh8Wz0Be3wBTNk_=Ym=;l(NhewU zieluYqAVHD3j`ufg7;D+dY+jLpg~K}k|feFN%LWlk_Z(Pq*%*h!)dtU+&c)d-8ybG#j@Slu%<#@dpV8Ktvx#^ZkF`9Wb=^{$%1N|D5p|!O25cn-&UN5!X}vUt>(%ZU z`HStfvEu1;D$k(X)$)y*)=`w&p%nY(w7d@7Rv>WCC90f~Iur&T<6X+Nd<^A2!i&8k ztTl~#tvrHZU|ckkKC+Yc@^q4cyYC&j9!7g7R}~e_1tG}of7Uk9 zGV=Z*>e#mG79>FB(W+={l>x4^dEjTa4hiXh5RP*R#26$IDw$MDDy>I~mP*|zCIZHq z#G*{6q%1W|A*aZ|oK<6E^n&HwQ9bNM$p|wu0~1(^T*coden&h!K6E1ATbv5ukaoVF zTGBSn$Gf{Dzk@EUbA&VNDC=AWtYGL4pR_yLt+X0Hb{BYtK?`q>TbcIeAP_6PvpKkr zG{Z2$W%__d-mF-Aca}8(&rKK~B0tdZ+TadcY{W3sjpTq`X6IpWY4S50ckp%^-%*GC zv6HrlZ*H5*_hqm7thCZ;{EjA;eQz z+TNLEw{@Jio4;z(Vc9Ql0WTb9D%=}S>>@wg9BlY~;`r2p2nF7YO+4!y>RT|OPXnF$ zV}eT5yS}=)wS$M7)xp)kI_f=-^LFl%JHv;Y)>X?P-C3J!rm=gOk6>$j^~AZir0EM! z^wYAzWATtY6RV(Qea!!C7Vu-CD!X^%72@yO8`x~jUGw7)Zq}!#-chiPt;HZcKASgU zr?{l+X1lX(gni3wO0(NvP6X29(_Nng#o)}fK7|kF<{zm4%+>zX{%jpDom*}174-%^dKFB)L9qb% z-T|rN8&$?!1v?}>AnLNLBK&~5)T;sn3S}zh4q%8;T*YCqD&fTy1E+#uOa-RvqpMzF zD&ec3gz88AW#amsh6E~kf_sD5Z)t0+JDY=3;U+8cHk1}g2{?5Vw?PAqm5!e547q61$^A9_R!MlxE-!jv-2N$;PHb*8r99foVn)oG(&vRI` ze8?`+><0=}+O*O}tfH0F$dN$2&*@a1OI7fSRCzhB=HI~j!9@+|7{-+$Z#sCQPwiWMa?^$0aumiJ7n z{ZwPXD3SgG(@2$UlbV&OHgGCS3b6c%whzN8PeqMO1r;BbNoC5W%Z2l*nQQLTu%(N+ zwHw>v>jI7i?-lQYyGBg&aqp~*4mt1fxO~$!3Gd8iEq=8Tlgu? zZ@qv=3(f4t`U-)?_S5vhn`}(W5vbqB2j)g3w#CyH@>bCJEI9y`R2AY6v!mYWRaRYZdhrie>62?2agXz=WWou zJhC_py+QBzgU0%vDsf{HLsopTg_8{G&pV zRVO^CM%OAkNz{3_BwUqCuTY{&DOXwmR*r)@@k(ZK&A+NXw)QPlhLhI`k$t?Pj$v2H zFGhGBcCI$I&WWi!HNfq}X|RoS&3CK&^nsjY7C*v4D~*o1vpXu8xsAQsh{d}nfCi&W zuw&*O$8o+Dy2+0-5tqKFkF*1lHWH0#v?$`@i22gY#wWT_m5m93@BwWFd!Dm==KGhaTtgqBxb%s?!77#^?tsODJ zSdD2^VVp|Ts?#hNt|j`>kK`cvV(li`2{fje9$uBBCVKHnl%a6f=C=E(I}456z?lY7 zY#_0`@x2ro8wm?sZ|={s4F)#qE~F@R8#!6p>;9`|Fc^9_-t=z0Ufq*clFqZ1(;dYo z(m{V?Q|z$R)%6(wq3@(;9%_nhqGL0?NE}ss&4I`vU2{byciyKvn*IX z_kL?eq1o6(Uo^sI($-V)DR-d# zW-<6BinaIO_*_S9o{#3Md04JF>p^6_0$ECU=xx?tnJ3UH9RD6R~5f4U` zdrk_K$Ca9p=$Z2f+PgNNfRZrkHFPCph?+=s>H z{CInJ7u_wif#D2ZWc@s*cL(xrx2LP^rvO(}q>5dw{#UtgNX277MG2A`h%jM*srALZTTuB`a&cId&#%dLqI#@m0(JMqbNQ|H(1W-!(hYd^RDTjqmcl(U zJ{29|E)S!VeCCa>Ns5cLVNf^!v~G@Fg1oi129&LGhZyWFW3e8Btz$OQv^Xk?JCh1~ zl_p>K)>6CK&@?+<7x78pQGzB1(_YyOw0Y6^{m#yqj!4qCvVbkhkga#cdx-SUHT{mfVbsdG0czqugVLi~AdJ$F$a;f8?< zFS1Ip3_+9nu4-yxg}xSq#V!t-uqhJ2!kst}G-pvWC?f=Bt*ncMdE>4j#_OqzY+rM8 z-sTOK8=ECtd}Yu2@%+!&JzXU^;K}HDW8ICB*W6y_dJBX*vQD-}R)AkUOY|AOw~VSL+rE=|Iy`EtgqB*vcQQwKEaf*J&BJx~ks zBVBFJ6|Akqo*!QESN80lN3vQS1y|o@C!%A-3)Xf`*8LdG8x8&7oMz539h9klGQUmV z-5u+>FpCJm3^a<5ZPMI*!KV_q45M+*trJ=QNFVTGY~;IZzj2on~`TrnVIPxOr30Fs*$E! zs`((b5|HlnMkm3vz&qHFvfwhb$e_UO(DF?dZ;iK4OnE|vEpqJ?Zai9naRfyGd)w#~ zu0m>a+_eDJHspA#KOC}YxrFJh$Nm1PAqJl&^Q>Luo>lsqh%Dq^w$ID|c%eJKSss8D zw`kPe<;PyR#d3|JrA@%$G>4%L9~wjGt)kJg2TiFH?!9@k^sLc{(>&sn#=RjdKk&+5 zHw(jDF_H=Q0qO)^+eqHG+YM1_Ie9-D^#Ahta-Hvbe*gU>cCJ5~BrQMRn#! z<>uH6i*0&MKjNm{-fWspb|6$f_wh_uqR94qF=g1qp1f8C>T5t;(*+egsFOBInV_1j zu;-uc$!k?@RRwhv=da2Jq6)~1n#`r#X2ra(*q)V2s(G!7yRgpzNri=#6;!@HtC`un zN(3l$QwR1zVt)M=9-@wX|2#5>skJ8dF@9iX^OOz!GnzzO)}2X(Tk0mx?nV!rkKDdX zC2H}L2xy;?#k1fo=K}+2SrZ9=(`M%FJ&bqc8g=hmLY4CDDN~r$d58)u5wy?0RE*1t zPs3q7%3k?5DjuNb%GDfBCf{4Cr>^p-N(IP=mX@1ic%6gix0J+@T<)yv3?D{pc)DHkSl7G7lKoZ3c&gC}Ipi5< zKcWU)cjqas9kZ=Mr-}hnC0%MAC%`^A18BxVq;W&Tu(WtVr1PP=$hxI!G>NFDbEs2O z+9xiEnogIK%*JJkY@!#y4q2{ifK*9qmKPFgFeZhSiFg zH=jhji%x?DWk(-r(*ZW0B+K~?OqbBe{YEoiWc}sAlQMQU7+saO-QvC84A#;4OV;8| zdwf13aUWd{i-XI9-iaQi%@{G!{{9*@%bRBB2*qs!UYbA)VM4cfxF#P~*GKa_eXycT zI`MXQHoO>?tp>2xhd$DzxOpc!^-l0I*4->IiJj`?ch5b37<_vDara(#njrD#oz|;f z0+MZ<_qQ9(@n^^c@zQQAriGq`59@Ynwsi8&4^Krr{Y&$Fd)#k1`qBYgG&vgUAN_5k z>6cF1f3Zj|e%QI|c=4*`y%h=RJZ$fca`*i7@{TNbXY&_Rz8h&v{N%1ABa!Bdm~bo9 zr)d`qy`ybX&G&tb*ViRCd)g)36Iu2qyoLZje^aM2_dJJ3+y6-Xe@x(3muYlKk@_^~ zJ+<;Qeglk?XwbYv|JjnqKbXy|=r*u!X6s+9jZMSyn`u6BS1YRwwfEW6UB)d-qNl>i z-<*HO=bKTl-G5_qo3*!I`>4H1x<+WVjd#=E6j?ct`ryy#bcA;g(n~(o&$1W`#yXgu`M1V9bJt^0& zToaGkcZTj6xorYH4+;`C;ht^1ud}H%OyiHHBJ3N^<+tHwTU`0%?nSf3&xpOWhQJGl^QNJ7`f-PL-x~H!((H^59_|}-s-Y;@ zILlt9ov`-MVL0xSbsRW{lY1kW?M6FZ1Qq?cS{5$$g`u@?@@P@&NFG3V?}6_t9qQ`Q z3W(r+CQfelzZC$0+Ru4pLRU1*Drr!C{Rn`nBIo+D6>JwjlV0JTN-Z9vh3t{(Uj^D~ z7QTGnAu_jp(!My2u1ah0)Akuz&pwDBUIgBkaoISW;IOb^Jnye`^R73Q(yXJ2^^LeU zdbVhlyXI+e_|@>!rT$4@y*NnAfw_Q95>dS6^lT>qiu9kc8ks=U9I+}D!sM1^bOT2a|Ro0`bykON} z23VCCRfImdWK?;BxM~((`J<>NfDu-8ZmsJIa3#wMGwov~sP;Tb#XVI{K8F;kBP@@m zDwKvAS9cD1ZGY9dg+k40uL8-qhM-W@J9BkXu&QUQlCU*vq{eEZU6i;lfjuWF(qY~r zIWBzPG^A#rGhS-AS#~3nGJO?jp=owNU{72%1m{7_fnSQI%S2X0>4r*3MB!TFshf&T z%FMuGu(jN0r{SJ@T_G2=ch-L<^wxD8{E@aO_P*S|NsL+pxX&=`@iVL`b#Y_ZoUm3~ z=eNt!bltnF^&nZTolWe5t{UJg7QO8shEGr<+jWjm$@EU2@pfjghsz%0=6L5q zUHU_7?8-ZjPxRLHPLG}O&TYI#_H9aGGO>WQSI((FdQ9}w@%u? z*uKr~$HDD}WuHz=d%QB6Vx#)nG*i}0vZ95~;;EBP_^z`Sh6hXVfm`Ug2N$~dt%Rp@3osj(-l+5iG7_OPPrD}Dh|MWkGLKmw|htoDl6#*97I8>@R!ofoB2 zQ3_~ZhYaeZDuCn`!0e@P@6T;#e7aa9JKuK>^x;fQ%dgRqhQ{!r@C%Xp!vYsM;czOi znxDb>@_5yOXKeH*`}j@d-dMtF_k!#?d6TY!ZK~ym%L6lbBTawB7EwjBies<3A}DuF zg=SUv!AifYvI$zX>f`{^s&_`UVDfp0Qe(P`qGMHFDHWGmNUHecCfc*l6n|P-D^fR7 zR=jdivs~)*X*Gnf?!QsTiuYydj}gE+%&+=lD;e208sPhqKh|9rhg}#hnrY*{mA;5H zTa#xaaT4$yy|k^S6At`DzUqBp1QZ(G33Z;x1KO)PIKXrm0y8gFtx ze>fZ@yZI+`eA9(fT>inm$YAiqG(enSBPv0;C6-iB0UE3M1S(QcCGi+gj-jd*t=c^> zg*FhcD@oK*Rvj4RidQeFOkidASw+iN(x|2mp!yUtmCI$Sb{bS^kE*_+>iq?4icyt3 zVO7sBSOpaj0*{AQZX>LiiK^iPgM1HI$^H)ZAgvDE?K3#4*MPE`Le-(DzB06D6vEa9t^a>M9Mn<0tL=YkJggje04#K0KeBjCBY(ivDy& ze(d~zOuc7}W$Ae)c5)8)oSS3is;=rh-94Ec4mm?o;)oV0a2H<5D=*|-=!XrjVFQMZ z1q}F~0sGfF$%0q1B|$6NvZxhlF^J@l!wKw}o=(-(mBY>XAy(jvzBjP~?bd{G8QUmfqBKw)eO8)=&`?9nQz1PNq=>8Xzg7%t}4fHc^GnP4gnGw@>0F6HD<@{b{SNsNF+ zO#!G;wP$?slad+aB%}+KVJ{R2uFi_*xo4foFyBWBxn-Gzu%%8Xm`U?aXE&#VUdKc$ zR4E4Ob#$5s*ie8V2Mt*`)ah^vk_e_@~eivtK{4$))_h@Xn&LPORqtDgwotS~lVMG0UgK8-{k z;|)@s%MBK+5GX3Y)E|_b+}aFYGVpM02wX?uQ8#FlHRMGUy*QiJ2{X{q7*}lrN25s} zuCqws1P+>qSeSN!#Zcg4R2;mdoR|8v&kRDchngic5cnLw zTtZstb7lc91iZ=1ontxxl$In%c6FZM<}aSHmMn?FMCt(8(DTu}dflZ?S-U_I2sf!~j>EfuK*0`Nhov{1GZKchmuG|-5G1zx!J z22nRS0<7lu$0Mc51PA934AIVVOJpM2N9QLBHCiq5HmZ(X6OXp5LPML`fJ1K)9Wi={ zcCAF}0%|}v2WqS@%u>HLz@C)=Byb}l2H$ov-Ia{XlZYA8G#*5BvOGHe za6X2{(3(IYNOQwD#0H_m0Z5Ezlk4R8f$h2;783#_kq5(Y%qK#P2(XZjL#p3L=C-3l zFlzyRQc^d0%LO14mxf>~hhcI4b3r1GlyBi1?w71iTIh4w3;fEEakgYlWh7ndR` z-%x#?Dv-1K1Smd44Jt>KH!+pKq+2ip9(J9Ugn%pLfytprZ4N_fq=u@3HM`5;mUw}5 zPt5^31O1tZ@PMO`77AfzjEnM51$0oBmq^CQ6-`>wyTxPkHwxN>m z8!n9ClF7I<-Y@O~m}+OhtPGLS@Gz?vWT1ATgaa2fgD_JU#A&w;;~O~I+2_!y=+&X< za0Tv^?GlVnkg&Q!Nlr23-Px+NEBF+SBJ-Tc4G(+8z6-Gi(MJJaB~XkkQbD`Xix|`v zP}Ko-cT%(@bgiCOviu2Uu1g?vc~{fD4r!kvA){&aC$nQ(_`Rf-7-`!f?XqV<63P^9 zAaJRQNsJ1@a5}H*b63Mkn4u5sW{ebF*&R~EXw1}jlbXQ{2FN5X%^PlWds)>O2774- zpMB`tqoxT(g{3}o9#&)6j-ChQ31H&f+^kOvSe;Vk{&EA|KSsAk1~FuPNwAA29H*jN z)Fw#y{t zOk^p>I>gMNU@Bs+8qRUUWXZyocRtv~I~T+}Xp$uBHd+Jlg7U(r#=usXK5Q3GIUnJD zIM>8Sp%Qg#@VsX?*CtccZKB4;@>Q4!U}82wxSGIJ`!H2IumGwcqN{Wf8jgs-0cN8k z23|s({EeT(O-Iq(z4h>JsGn)ALS)qGx*DW1+H&Q2MnT84f(p z8|GYRj;X`wI&20$2YR*_W4XYxV3fx&nu#H|i@_EJg@za4gvG#-&V{Ilqojieeq<*Q zFXkRv{Q42a1JuA{VhA4xs+f}?pr2Sw*o5t&0Az9E7?nH_=aq6-=H{$#U%A4xbr&ON zL3mE8WiYoaalAg~l&NEvX0>QLLZ?zR9Cybzkd?Ct-T*~KXmen)+KM#8L^2&H%_Oz~e@CrH6)lu92Ggqsvy5yn9;#W1%}QqkP+7%;LU4tX`3cH2^#NObF}3@pK~Ex*M~@<$ahiu)ZpUtN|I+& z+$I3RgBZgJk%`-+&M~4GlG+AL;}L7Y&q#vKv#?DeL9Z)ehiWg+zW9K@|AdwFy{!d)%ErX>!85o!{0w4f3>8OM$p%V2x3QpYgJD3hk|9oP4*SyW;69@!mJV-WJVroCn$Mg5#EL%kp$qb5k=ITKg{D2Z{n z!3$_>EGU`@Jr9RZ`gk0R!cDD&5zNt|{+twf)9UX+_6&aRfwL&4rSo}Nrc8+WqBWeY zhfGlr7-hA+DC-=jLSQIDrf}dCDFGEjmj+zS4nhkLL*D{(9EyjAO9yb$-h&YY<*b-o zdst}r5n_R|NurQXfH3GFC{6`|W4jFGX>o`~yP%85zfHB$&>b$aQkJd51-e~)kxQ?b z=<>5=)&~E-8hOSZ7lZbTubqK`_~ck(#PrCpvVn>)r$TeiP&o%cy@~^KRdh6Gy$@hi zhn$f*hsJYI5JO+-;!qVgoU`XP7laZ?Pcbpn%fu==fy9`DNgRh)SYgIs&`ludzruI=LJ!D=bB}XF-R?X1gTD5o2~TYWsma z0GEwcREcay2q&RMgE=7T-dYyUPxujn%xZ;b$<^yTz=#t=p=Z8PS&qgAER}&Wg2Hww z;x-g>!-_c|47!Xm68f-@Jy+F>(ipcGS*F-Y(We~cd@!RhH-ef-9Adnq=t?=hItyDR z2+FQTS{_M7Yw+SprzNNOiX{V@Nv+rq61h?8X_l(#p)50}kZoa6k}3W}WZ`a93fe!I{t260H#98_%!)wvbyV%OeGfhX+2M9BqsI1b1E0fhJ{k%;7-5KsLkpao`10zuLqi%%;EW(a8A1;;TpdPbWe>=6Ya7a%UgaUyqqK<| z;L9HCbdM(MYDi-^ABhUx4B(w1;!~upfl7}`7J-lRsH~1<_jElx)G_gnD67vDIS46< zbgf9xw>#NN22cPe_KtA;1E7GwnX(<(h93Mq7 zH)%^m0qzl45F(K4#c$e)-!YslmOv03vkBS(aUF;O6s~Fnh>pE54+N&c;22PbVHrmZ zn#u*5WHa%#iDMXmvH^3_djqsPYN}JD4*^ zNI#sK(Nc3Vvs63gbfJ#O6V(oeW@3L2WllzEmoK@Jnc-LB0|1B6g6t>$sZdh51e2Or z7-b@s)FUy>t|pY+?uExxD)dYX%LsT`!pSUK(+){0-ASW#s<00)>*$xJ4ygxB<~)-E z@l1^fU-rbI%l;;mwJj6x#8e&>V|p)@%%)K%)iH&BdJcokq#!=o$(rI2fx)b~mvn?P zfRNO2lb&xP+{wzXej>7VV|H6K!tcn+g#>x2FS` z8~9_ScOH6EvILia>g;0|i6ePwNCc8rXsAfVEv!_~5q7=LyLw|~8$HzB{0bq^`KDE$ zI3#v4pGRwbduuCEw@N?*@;v~ zM5eW3>HU@o`UR>edyc*I_+iXhPW!H02>c#kd!1^G%oNwJUjdC?>FDviK7k=Z9DATg z+d6DJWe5|gno+0M;xitj)}&Jk5{Z*i(ho=uCIa~$lz5}UU}AycLD`9eGbaK&@r{Z9 z4i1td7e|mN8LCLKUScThgGs61OUBVqk{ryb70?JIu`lM0vR1s}j!ZzUd%j=lsrg`S z;wX8%+L_X(Ab38Mle}G^5rA$U9>+|jF!77W9%VZv^%_<(*}?RLXH(W24Ft z?~pxvmFysM?bHJURI2U(s{sys-mL8 z(Uc5|OpVdk8Gwpk?Q$u9kuN((MyLmcJ|18w3K&CUJDD|K^2Xv2-;e1Gsh*%Q?A)_> z98EeoELd(C21k@8`sh#w{VIV8`SYRHTm}Xfh~*+Hk}Eu6Dhvtbqp5`wst*)~xILz$ zNzAxQ<*78U0k#ZkeXOWm8FYA+!(kgJqIsZ2iM{E}>A5*#Jf3diI>Y-oh&SBzLA1Ht zEiWl`NihcnjK%f{uW$@hR~WTwI9w4PkIQgVfv!&6Fb@szylfpz8EwT_;}~86^&&9) zbkIY{0`6_7QD=A7FK{auN}0x~Rk19|mB_*o6hCO>8EH`Y?sZ=x)hZZp^K->r37H)u zMnqaYPloQm6g+lD_jm}waRuwd%-#}DF`1ZMs6Y@l?n;ETR_XBgn4icot>n05qpn#s zivX33i-8rRI9vrMEJQFYc&=8ts;6`Kym%F=p^8@Z^)ts24NYaCqIZC(3Z&6?XTmDv zo&=ianpaS4G*BrW*ajG)Qs#B*FIW+WsMk*=W<5P*dw$iY|?M+hF} zQ7EQgUQC>mxf%%xaSDusHW{aS)QV6fKuwqo0n>mG4YF{Zqr8|1qlwQ1g9D}&0|?gv z{D8LNFkoA~%Ags@@?7OtsJwYfsAaN-OT?@29(S_B=JN(xa7#H`?@-t+49UBe@c}jV znPHc8r3>yORVIG;(88`UOeg&^H(~(tlaCf;)l486#ZN8Nzy&T%RZojzW%7ektuE&QF)@We z8Ho`c98uwf@mXC1a@L$mTz-iN(p)6|T8`)2HVV){4nlnk#S*`yL~P)DF6)p!1DiM+ z>2MAOLsy0o1NIY{xcx$L%K`#rc|grarO6Zra0Jslb+XR#yyXDR;roywc^u?eBO9|_ zk3pkBUR<7wZn%V63TIIgZi;Yp0g?(t3kVwca8(a05pYaT%MQ`P+&O;&h!VBNS-ezG z8G5x80o9zF*N!>Dw$5C%XM^(q!J|2-AtP|?RMCBok^)h5nB5xf9gEI$AeL%*1m8K=66Od6q#>T z9Cuhyhg}$WABT(9MPpp=sOt6(!D-&5=f-d629;QyzaZFEU(PDs%qG2{GkPOHJ z$>B)0RHV>7eUMor48=mlfAJ~UUs zIcZ`1lodh(n-T?&i)?77%uykvIW1&KJm+YRJI5d(M^gOC6ur;qPvA8M;4O(FJbdV~ z2+*qVwg=%$9zS2DV?g1k^_a24k>%hRA63lBlG1f)Cr&4}_uTh!ph~`quW8*;Wd!Mu z#+oJD^Kq}ngINsB1VCx`00OcSV&+YCDfa>|B{7T2(r1QN3r$DTYs=^nuu#MT3+L_> z^rq_fOQXBw*##+Q3NzmjFjcQ+{0GP?kZF4=TyXI;-a(6jP%u-XrR9)RS^-{S?{r`n z%Dx7a*d@hpEXcNJq@o67@zJ7el?0d?b|yvVFi75b;&hT3a%O7L1f+-kyrN!&&S_`Z z><=CH!d^$lLjNgc?dW! zP0$iuri(%yq;*u8;ey`k9ZH^N0b$qI^f&-RK)k;dJ7x$QUW5i%o|E}FDDIliPa@_9acqGkNN=Nb}cW26bIqvkz$L`Xj(v5D9WwL`RVpF zq`ejppw${7VbSum;xNjxgBAibWbgpSKs3<_At2-jAd2{j$_$B;rF0&aBv%-~{WxzR z7~m&<*pUs#gwz6j$1z=yNPIlwKSzNJ#Sp}Skz`p*|?yc?sK_B1mZ- z!7XAIuO|IaZLoh$d5gXFbCG3X70`xMvG8dZTyvsY#~GE&Q__2mp$J{+fd{jq1T}G3ryDB8z<~;}x>rDp za|#nkn6uDaC`)tQ4V`?)f)t9CjF9f3#N4BC*b5NLWMcjwYC7Pc4v&H~4BB8QlF9D+ z$Q5A$HsN2fx>YLUo*HTbOXr7FeD-J5gadI7(DL+*J6*m4V8A9u4o!T{QK(mna9ih#0Sa26OCVDhE{0PRC3LqHbB>Y^Q$R@rr9dO5)CD%5 zYmi6B*9qc0&hxxnNW%u}0In2@xa*dk!US;RBr1YfVEZ~{ht8C{5YFdF&eF|j8Dbn` z6UJliT3IgJwT+Lnc|(}KpQngP1gcujEBhL^ zfgEDE%};>vJn)jC(tM+~kKy!?EI}2iRzoRu=E+z&4{~!U=-X6ql7lx(U9(3AN}Ti9 znW@-tGDmhe<*J2&sb%rVc zn1yh7#Z*g6?t$Pu7}_8^D+uUnSQyHMu*5-aJ{%T2KIl(a7FD9-GxLa;6kXu#6ecPJ zGJjIBrVtvUl_Gv%Vamw_?1Y;YgcPu)>d2=nR7~q#{TjB`06fS~Y8G+0OSY24*$9IJ zEYV?tp@YSj*NcNIgeJwo07Wn>Nl*?Fr?Mz=y|gTo4d8)*3&ep2@e+Yy;IX0a;>qof zj`HD+dR-b%2F#L11;)ftL2(-|lO!k`0tro?56HlF?&DfdaSYz! zy(&lm(`dPhx!XR%61HA;dEJtxkWbE8RIK9Tf;vX%WIyAmuHrN@W+vQBQ&7G-<>)tw#Yk2W>$#?T|v{VwYk?Pd*a*9N2V@Nr7TqH$qiya7Z&yW1{Hn z`I7q_g%9%X@|baC7XxeV8iW{Bm74-e=H-R)q@bT?N% z)`X#GcQDBIOT++m@eX-CvN=rPdN2tPpvBKzpB}r}T8D)s5nL=6S_sL~%EhHQ$E9-g zGjNmnOs9>;Ov99L)6Z3qS$`r98ufBV8m-QU#|1vLO3INzU75QcH{0YZE#y4dfvM@- zNkpOwX>p3(ttgBL=;3hAbaJr1=2Z*O1R}{e>JW!2XNiFoCt1dF;(OgWsKYU8WLE2x z8dVexsMN_B4|4$%2%h6DMYb^&Nf7_q!kkRpMw zdfE=-Aq*ME*7@NmK9|df4&wQg&Dk1tj8|8YEeAn$3Pd1EiT~1T2jGE&KAvs@HPfYw z%^q43=@Juk=R*>u@aUqP<7UB3CCRc%_(2DTlO;-}eU*dkYq&ER=dSuOFY~zG>~Jch z9tQ`~ps(k1RuvZ}E*(}cuKPvsv$ZJMOk5VW!ffU|D^sWb;fr~iY&;>%oSzn!Wf{85 zegu?>?H47kWNVE}!~r0_&XE?xkDYX>2*7-g&@mH@3Lq6(hHC*mD*!20K zn*u!mpm7}pc*kI<(Dq0&j1bTE3785Bwv!asVbDsMVdhDdG{cgTLAsL*OqJvrNQcs% z8XUo&sS=`vgC&$T)RI#SrH!r-&i)U;!n7yZT#Z0J>>7~mrhapAa&yo`_F^VV77s}J zT4v~lXaI(IJh@Amfp4M@ zhf>*5Du4~stt#nt3DG352MJaVQog$oai)|p<0019On2G{I!522d$93Mw-c58*_mQj#6l(;1nV z7(rw}7L>Uur{w>V_-7&%F!Qnbd}0&2EDmHGECj;EYL2Yl3TDE3a1nYgC9nWk5*Wf~ zt(q(KVUA!6HRH4z7TvtBxP!{; z>E>K0>;ESIOZr~PcS`3q784T5S5WgvyM-8iT*H@J)X)_mI%oy%-Wc@CDhep1cOdX? z#P`f%$m4z7@mDp-&TENGFM`*mEDDJ;sopd0%*`C+8BBW&MMjPXRMj?%B*pp=v^}!q`mzcA8py2lc%Z8(-z(U&0tq(Rm z?#ft1{OO)OQqiCQ`wn!~i`p6V$qFi;S9j7_j{(IpFr~ffl|i*B!bKjIP1Ye_Hn6g(IW?YeVYxCsFk@8GERaqgQu|5O zWZr>RinfATrED5A%v9BxJ7$8a(%YX3Y!f|2x<)v&Qb@%)X>AKiyq?3Pgc_vX-o=GY zo(r56N})J9@vQzNBqzlSG(r!3p@=pLA52yU0e9DwxMGBb1{|L;g%$1jsd_T5S`<7Q zKqyT}(^9@usZO}=in+QR%%_2$SCDFj^N4Vy$)sf!lQvY0RMYU0P9bIXCW|6mYFQ2^ z*A(`_MYu)7bpADQ?2nRJ+QcO-ObkoX#dcYeN(~KDp%NVPQgCs@(k^XU^GkIxSu9Iy z=jrMx;8KwQe%5_icm-z$rkCRc*#zNY1x)J65@RkX*~O9GIX~Ug2xX2dDbi2XSYG<; z)5{4Y6G%a78il0uW{J={2J&G7&C?I_KVqq#rs{bw=7>QdU7#wSy6T`HtAx_Q1C0> zp4-=RRMCiogEP_za*A$@2!xxQ_XT)>oWn(bu7Ks-%M|l)ybpLIXJ!@*+W-NKE?P@O zD3CbdL#)Ms@OhEKTUZvSl3Dq*K>}SW0FX5AFV0)4-&@#KM4w^pbbk}HNP5Z6>GXJ} z#;D+>Zx8@_aA-$N6k!AaQGNip2pRwP2AwRtvS2-co%ru?pYlKmkCO-#pdNsFCJGZV zhH@d-2gC@E&}0XcV)Ds{; z&2t*iCi~){^%7C*&cLB*%1HG|PK?@ZtUrZqC~%UemMor6ruCCm?MbsONOm{|sgF=% zfEvG>WJosM+?%Xt$@Z(pf0M`+gG@#Pk#HPI{iM|vquLmZ1@Zj=(C+3OqL!F44hZz} zMs$1*_%@q2v}TAc4dFAPI&Sd+Elhm{iMco~ow6N?#02R?Mfr+3yyzHuuHziI%jGL* zD~BKZl20_G^2j9v$Q4oG(xfb1BbC(`vJylHUXGqEj&zinyk~l`4E|+FGjp3u_<5=u z2D5^7Y6F#wAVmR{Gv}=!_YAburRmIGX^>Z)91OS>^*&46$m&JFot2aecQ`8;k~*HQ z)hjmGo()!c#Fu%u64QO?3@<<(2?|RA#kYOH7chT4$WtDy88dNhR1YFdiJY0#jp%*= zi%_82HwTt!2!Q~(!xE`D&YUUaOlaDi4H28RsJ&7F&sjMlO2w?bM|CVGX%EPp1bL2m^xrjgsWrbwZ{K}_J(K}4olo#k+6I6s1$ zR588=0y=|K#vMM5PMZR1p%O(TYQz6HcTbNDEj8Y!! zb8NVT`snF-ete?KxKEa^oKa6)eGvALA+16j$7zEW9UzGS3Gk9#V;+_a_aQj!!)Av<_cx`p*W_3D!g(AFCWwT%<*XuEYW&^pUVObaOO$GSECE` z!(pGRgBost7qy8>VX_-GW%r=e1MvJ>6mnrR_hOFUq#&b!S!-@Fa69|sNn_w9OMZZ0 z?w}6fffj0qj_)T*X5S=n6msKRLlQs~KT-#Q2sE-$GBrt#i7XD0SePrYpc#TT>jI{Y z0I2W62#CcX*K>$aiNbcxZ9OUwuv38P^<2Qt3zC1MWQP6>)L>W`lxK=tA`w>Bi!xzL z&eAL#L{Ur(ugW(WNt1BgG}XXUB$3!zTrjcgiTPx*+XqeXBOdcqI7mk|NHke08-(#cB3iO3 z+eh?Fn4C#OQ~g~UiGWm%dTGZLW*YLe@AJ9fKl&V&XX4ic>qWrj$|`WtZlw^Zof8_w zbZPUkmxuE)3CHjvNx(pl^BprfVV*mM-8GiM_ele`>LE79ln`b^sf(9k0?tv8Hypu) z2)U3vD^AIQ8N&VCi!?WigfXC`4zZW4e=(m3WyZ`Y#R@VuxuBS7BRA{1r-LhLj~Rw8 z*TG&6<1Nre0+YVGBPy_r$Fce3jC5p{E{{PZ-VC`5TB`3_YkDzyMSl6xP83n%K7JEo-_G*0zyGP@U_lT2istSL);-{55B zFaTm;y6Fc@da7`;c|3;YSe!o5G=;>+2=;luSG_DVrKM}|a+D~YW&`Gi7gq2M3`MycC}^_WpB@%ya$+Q=E5u(<%bt=V;A#7BR_ zM{TA!(qO&-HMW1N!fxWqn|NbhxqXsH|gR1wAn>N?T&n;@^# zaey`^6hTDcs^1rk4zN<62Z+e<%lV=_(G=_)Yj;tf<5h5iK+jv0Ih#?3jtrDNyTHpW zgc{QUm!km!#|<4EAQf^FMCl0cVyowcPkS_fHd^}BUBA26TI~%>TZH`h znQS^Q2nU<@cDm4rhI=1H;ro1<(v;H$Qje;4{BxZ*jpa|8yW0B z2d`W;9>3ONe%!u8PoExo(JL4HuXg2WAi1kt*VIlgJZQ*7#UD<#az*Zz_Q@vpwTD7$ z=P-c(3x=MEeSL(7TjTuOFT>AUOTH5jkQE$9*e#@&$O+pr)rl z?y#si?no65A;$$?f+>XLb-8lDBHfp*CfvUmVK^9AsO56{va9MWxG6;g$5Q&&O5NN2 z{ZpZjd|$`~+)AN?HOwv;HTsjA7rFjly|E_V{%HD_RpkFYRK8eQuYGO%lb1)m7uS(D z<(+^TtW=n~2ieTz&xSX7|C{Xb-UZ(H&goxn>Ac;V-IM4~_eAH}OI!D6EBnXZ&mX;3 z{K0G7=)wQ>)~kER;M#AzGnxR_L*`qrTwTXEjKHl{cf|Y{6d!44KX};u-QlSx4=`7H zVU+LY4sMPQ|9g!5@V)gPIV|^7Usu#GpRVf9&Bm1BoUi^e_*i)P-V>FmU&U9QmbO|v zV~=6>&aeKJ`Bv|27==sJ4{Fft;$heBAFX}kUY(hR?N&)RBEqfaNxk`JyQjr=pY9u{ zlYj58K`lEaaxH>$mZEfbtNbq!Wd~e4IlqDDI~JQ~!(V_T&T0Shx&{2` zm+I=xu=DN0q+45i+Ie-~F|Hx<-(4@X&i>>rFwYD9=Gklb-s;X+)a(avvt8U@>$f+q zKhu9EJ9NiBzWel(?)RmYGQ7Lv9KJBSIs+7Ye)PAc7b$qtxRaYLi!3?W?VojzMp`@n zzrTMG@#Cjg-R-|U9lVMnewS)Lq<=EcSvLW=&2jx_=aknZZ@>SKYudcK(;P1mgm&8a z;>mg8F^ZP*$Ho(QMhN~-t{3I?LKtWD@Z>-38_{@2x7O~>Z*KJpCrmKo-X&3I>Bh6d z+j|dgRq3yxA6|dz4~D{IRDVwRj0wP&`_uO)$a}35omRis`}Q@oU{q*#gLn|# zJJ+n75*!-u>+hU;54S&Vl)^6i{Z8=4AY9&4(HDyS@4P=Hh1WmXE}b3KiQ-px_8{x0 zZ&xw0i;(}Q!(Mr}Z6US%TzeuuM)j4CxSx5|-3<(q?w_eYuy1@NZ{GM`_3T%V$lXAH z`o;i!3hneb6vK-8Dd@ae99MttG=%19QRr;F_?K|WT#)azBKk+}< z{^^{)vp0Qq8~E<>iHgiBY_)f4*tYtL>|SHHpDpo-`YYuW7Thy;&tj26lH|P&@g% zADv!k9#N#s9qGmGSKSKLJE1XRV(|a%ZvL42KaAhTtWNpAs<@%d9N@*PzvZ=5X?^x$ zTYfgK0Id7d-Jwfvy@T$55zCz*8efWjncp}?NcZ`Pk@k8u+gR4&mtIHul}R zTlv_(7)`O-JNP=ddMNKcX%_yl`_{b~um4!*glotJQT(;QR-iXJpRAcH4)WEt>rrLu z-p2p#RrQ7Wx=3vAHD~tq?lmbF2#^2tv~@-;BjcI5{AB<3;ZAL*9)hoM&r1BQ8X3x! z&fI!+johCHP~(FTD7o#%?m)a?3(e*CsM>SZEOf;=&|u&jcZjKY@ofA0Y0l#5SKI%O z{$5GjG+*V!Tx{ORw#l4~>PTAdmG zbcFAJ<>=q9F1;v&R(ss~VC!0b>?~vI%b&8M`|+~$Y3uvf@mGT(`l9#yS64m!=)s$| zdw){h89zUJaPP;Mu(S0hYf#iL$aCyRFvXJAyqddt-D>=W)793B?r%Qim%1hQS?}v_ zf>7=e^LDh&9@kEBwA!EkuV>7^@Vda^*P*MzRZSkRiAZ_aDEwo5MO|w{Zvgkljs^dm z?~8Ycqo0-g^T9WT=2vvRSN;+&u6?IIKKt5_{v7(EsI3{^>&Tl)KO6B$zF8CN&ea0P#9t5Em9`izdojQ5#*WcZ`{mh=1 z4i190h|9mD*Bj>Xy-Dlp{H3=#+b6@p+RORz$=2G*v{y{l~cY zYUyPT?Q;a;|HS$g1)0b9?JuJKCq07@u3_i$KlHxR5TmE9J|b^?B;DHG+kC|5za3iW zYUkC*@3VICQ}W*NUn2T(bZs=7m(dM}ueO2pU{A|^XLl!RPI6DtU!7Ks2j^rClMWqn z2WReVMaw_A_8%8sf%Ay-^@cKgsUF0i-Bav8Uk8mFA)X(X{d#>{YQKe@?N{&H$NHz$ z=vg!O%5Oia>^L94+C_<_sQ#1>zuCTDdOVn@1Zv!S=_)fn?=oA(m)T{JgJs~GZ`@Fq zkbZUbX!`NlJLGr&p|<3O#IpxO^ICIuvf@A9dV+{ETULiJMz_Bre6T#R^tX$?e+pM$ zhoiH%THcfX;~gyMZxYw3FLb0k-0z0hs^Jspdl9?2`r)=O@&oJFYM~iL&-JU<&x*Sj zA2j%>4PN}S_Bz>Ie)KMgT%ms%{0Q`r@iT9)%-vnT^-d0c=dbt26;kj2Vmj18>HhBd zug=yjyN-a^lZtqB8yr3RIyCv}&69)YrTU|zE6-o`t0FSrZ`;w)Eq=>r-q|dVS`=^m z_-Y#wX5r&g@f@pClfjNr{@~u1?wZ{zZ=&0^u=6+19Lpig(7m^*_PF#1e<8L`ls^x} z?rSHH{!cQu{Rg{m--2q?zt&&+<&7Wwcz6#Qeyo|ool5@RZT2Si#-1_u1?X>ns2xXt z-5x-q5ECcPERVxE|vTo=Ej^k!c&o7N|J?S<}izN>acZSdvy?lsT!b$In=6FmPz z_N7lM_xJzZh}+KCWH~G!SgN{TswfB#|bo{IX;Oc5!dbd5Eu84)%0hS;BqfPea z7epJr`mXq+V|Vf=YuAPU>C~Jf&*UOGg8FanUM=!HIPz{(zBKzSEl|WSaOC*z%MRn7 zZkHdbci~rWnbPK|9!4J&fj{_2%H1t$dBZ7_LhUd>F!36>et^F|MH^eU%6DyK^7?YA z#}B-B{{Ag5SKIz$A@?hty?5u$`z42{W65trb<2(|KgMUBfhs+ z{^C{%M&QGv!QtVqHQvof^%)V#|MkUatZP4ca{N%4EZzEwOP{ZpzX6X+rPh4%hUax2 zfdAwh_pkh0Z)ib}b>@X(Qe=-y<5JS3mv9#Xp7cXv>uHW;~a_&F$N6(wA z;j~olu=KCLF@kFN*0YrfUTeL!DY|z7!FqT1LtOxlUtyyA%ENa7$6Y0h%+l%$)Va4J zj8F92tNKsTl|YwgmH#X%YpY;n9urk>xmJA7VLW0&oHt$K$KV5d6<}a~U#7kQ8MSX* z(LA*JstNCx% znuZDAWjO!WuOYVC*y+j2Ylj8I$zdOzZ1X$Uhc30w?w;S3m>2vry7NRSMRdz6<-xx0 zX!rcy;oa?3aDoUI%@-Pzd%Lfdru=^px?aJ|bvHfsY42j`acBbDe*}MzXx(Y}@b2FB zJ^ub_X$IZ%)i=HI8(SPB-ggHG@=1U4CAqQj43)2bn12)u!VQ@_du!J@ef}ob#5OK& z*Eeq&wivGHZ@0y*TR(dX;q~Xz^vP!U@mL*wae4mp+Kacq=e>V;*Yv=HpViNl;uGm_ z(9LR{=!fbFo9kb^MUUgt7kyN$-&0#TbM;BP!hipOUjfe$_!fDD_1tUnJwS4SW=|5v zuO0&4#lvO3bVc8-L;@5WT`1q* zGne6@TB#jf(ErgfgwFQ=>a5R7viAQG^`1|Tt#}f>o7v%zW4foOZFO~Zd7w}zc<)^T znaE6}Q|ZnA$?x~`iTFh%F%P}0Orwd&Q_s_)Y1$HMqmN+vhnI)e6VE}Zc5f!21ViY_Z?En~+r6k)sI%Xpp0zZ#`{uZVWHPJMq8Any z`$N=~n%D`1m5w1>i9zkH((jo;FX<_=!l+N-R#bfdPqMb3@X13@U_jX~72|~1e$flp z`+4Yl;QFWf5C=FmW^uZ=GEgQpBAai=qv&Pc9En;MulM9Sd&x^0rpSvHt zdLE-HdK=^{1ih$TUY~n*3b~KvP?8HxULM#zMo6{spPAPh-q};)s2{DwzCr(i_@{n| z*yEkAeX04!z9h@~EKAO4bd|Sj3e)@~HD9sZJ<&}c-MgmDd2B1|o``xKE&Ea(pJI3R~Yak4bA_aNi0%yt3J`+Ty2KX^cJZBHK- zr{j6^bZ1E(G#dDpupV4^j5gQhs_Za98k!*~@=sd<-;(X&Nnd;gw$vV_8A}qDYl{;v zd80)Im98PcNN03cL-2JTSZG<_uFStZ>B2jYm3CM8)XMejM}}p$;%(B_02Pu4Z&v$} z1>a%~jQ_EaM7x2J;dk>xTo*kA7I0^Qs6Y+kriPrQvdzkMWPkr}LBo6li-;Qr+wOQq zspBstF(*V?HY@DS5ifrGtmRcuCwbhdm;-_|?$zRo$!r6*pFv1K?Bd=B;Zf@VJQ z*^Rf}z}aca-qYm@zk7YdVAi^dYiIe(j^VKl5x~S+_u;!DGwF|C8b6!6A%!MD>A1PI zm)XAQO{9i>OWHPdiwK14mGb0^ynXk?VS7f>MVjz_&>cFd(CnfYTXpUnDRF`{2d8F2 z`+0Bg*M8VpXxf+jCxTHyQ=?Mj@FY@;vCe9VHz@@zWHrktCZnb`;(b?&-<9P%dxNqC z-uFY9N(n9O)g-Jx$TBN6)La^tn*EIh z=Xf-GGt?i>=q6b8H!slU6o@|FHywBGX6|NjaM*5LbAKMs)ctzAvaf0qfsKFjL!c!$ zX8C5&{gexjt66f}k6#AqR^eKI)vyE_WmoOYIkYov=frVon!dcQ>Md<=m3&FqvG*`| zlr((juQ#bZoKONrs;)Z@MhjZMZqNtO?{}PSOQ}B7DHsO>`Pw6mh3*kOWq>o9D;MzX z`+vqI4qMtZRn@GZ{3TDD*_<(S)7y0j&Evc-cM`mDrwHViC(pZo@2YC%`oHyh-4b%} zF{N9p@#5-nY1p@S&C$sJy`LMqLZjPcrfD(mlDnzR_>jSq*0J?LHa_MPGo$TQyc+FP z|GDVR*S@%|TOHpZY(EtmKZet7AEFr<)`S*`tkcTr%q4`MUT3FYv0|;gQuWgKmsTd3 zxaHUBY27<(7z+iFR2AuXU?5peY{!;;Fq)`S=A>U&GF}YB&N*|%fB1ml5N|ne_8!lD zm^ED5znk${k?zB1G(7ZPpd-UV@Ak%F2PENIo7<-0e2QEz%JN?8-+~4``2yTDd}U)? z9!o(zK|(+^_i{Eh^GzB=F-3pvT59Rd z^2_>zu2qxq?^t+V~|wbt-)zgIK!SM@+g^z!kD zp}5I(lT4bw^oO_L+^>i34Jo#~x{RJWPp^gH`UytP1}Cjf^=HKZp+7LZHf|a;l*#w$ zcPC#==)~RJ-*~5V+gAJh~ zkzxDBo9;#H#L9S>A1x(@EQvn1_hC{S<4+K(Z(XXA#tJO~jRkuf|>H7rXc-uEdyV@HF;;|+~6U12wV~zjnvnyutd!c{l1_jUH zq@c~sbj9(u$#eV4l3{pa8%tf}d+~{a|6N**!PTSP#N$(6H){^aqVjYq$7rsCh3El{ zidS6@8?63^z!jh&;GZAkRwbg0*DQBr(I$ z|7Iu#?JKo)z1SdgGhaO$H97$zg=}fXK?s_;*7Nsz`we^!v)`CdjN+Mg;Q_l)PaGwT z*dd)bssm*|+PPdYPE2yi;-yfjtxe?CO%AH7OQ+kw=k4dXCa>l>JIkHkpC=zV<%oUg z;=s4C5i?AgcMwBZ!fZDYa8#1BgRx*fOy+b^rlGTnz{K>-g=d|tpUzPSif(ue!2g{P z_S+mEvaa@x+=*y;L2Y(kh&cbagvXJst`>K{B~Dm>^Zi=${`x>pw)+8E-qvQ0n^gDV z?r_Q>KV{A3@cT~RUavc6-?wOz@JQ?oQ)*d9xH`Jp#Blf+8C#dGMJwe#RA*H7Mb;S9E(VyN!emYCE`0^^<(tY`Ot^Boz`m3KV z_x(@^*0~PP=2DIEkS=!fL3cB3U-*SJ7MJ962y{WNUh?Q_mbEamPFS6u;l?pRZU?MR z^2WadZk)gUu>sT`gob+r>{7x0zL!)7vI%a?oY`9E|&6@K4xyAgq|A;uG9 z)8>0g3}-OiS2?+Fa}dh{b^hZ*E}r~vns=W}jSUx{QQ%$c3trT3wG!K{FW@`X{iRWZ zz|OtHqOY+u``}^sU-I}}#$OK*KD}w2V=$l64gFPr&N1qDW5c6sw{z#_jfVYr0FE(R z7u+kzsS+J!x+mLS3DDl%spL$<`|9{l6P0tps8Q~(G|yq6jbxzqnxF4S+)`8$W5U7= zhnq!|zpz>b!RRq7s9@3ALqu9MYx*Nz%osThz!Hb3V4qY>S_1DhRG?vDP)ie1v|iSP z!8|lzSNt>4H%7*GK+v`;4FJb*BBX??eRZOZw~tv;F+yX)4wqw(ioa86`RGfV;Q4#mtq# za_4L|{xP;X7OX#tj*_s&=muil2S)d^!@|~wLy{APi%c|cNzqOj?q}tfD%5zo;vVk2 zmj98V4UcTI0sNS%+v5{*dT~LHFpO4JU&qKEGW=nunRYZzm|pnBs^S^}eJwVojb^tC z8K@}(CO4=#E$Wh0mIPS+IX`0i1I(--(nw8UW5cm%o0)+XNB&{C-X&6iljT`q$b%ZW zf0=ak++H^|2 zieo@FY7T$jXIYOY^2I+~#3vkE(?cJ6Jy9(FjcsfTo7x3;hgiy)Gp7~SYpx*faX|Ai z{ss|eb{82Nw|=7K-srrr)(F($_a1soFAxn!y|%qy01Kc?IO;77iYwjiE2Sa+{*P*t zMx}R6kzw`ZiDnIEKg($Ma=r<>&UZZ~)7JWw(tORSOYE+|~JetMI^C z@u|zEDQr1lLc5*Plvw;w>uiW28+y^cyq)T*EO$@p#aq-&BmA5YU(&AMq>Z_Wtn=Ly zaKd>>!%RVN`L+VYvHlHLX6XI0_~!`a83d2t(~dNMz02jE+`tlg>Ug#=u&wo+(}uyJ zzd5hg0)r(^YyaQtk20;@(K6*!Dax><>7wj$^ZIS&dHKj{b~ub8m__Z6boW{^--uNH z_3Cf5^b6xcu!V;Hqh2wMZ%^KVo-_weaNWBg!}42uqx*;^|8^K(xZT8dBfu)3$uf$jQyxN{<{ecX84G+NXf~vLNZ;u9A;h|XXpQj{{oskB7g`2 z)-tUx!s2NrC^WU2o^9-rQi;=flhBQx+f#$l|Mg$*0(}>3Sua;pTCcIm1WRF^+0W*< zT79WQw{9-HYN5(VzEWO2+l^rasXhA&8olLy$-zmgm3W|59ISz26ny2iAwiw{AFuskG4mZG!zqV6!x9XPpB}$s|;lMWRaY6sSP^ z)O=T(oS*4N*Ckr6&*2($!P;l9km{(~wbNY)?0}9p5*(nCJ3sN#+G(Z-WP_9)J^ zr+*i%4t#9dXa(Iw@4fz=au+R9Qb*WQDzvs?Jum3|V|;P+@PWZI&2yNQ0Q!t3dy%yp(<;=7TlZB6(=>Yg5oI0h-ZvXBqaqyPXT_unNZ4{<3i9pyy=z z=6M69dQpo;w?Pettn+Cf?Fj?K9I-bLD5mkvV_F$14=mT1n!s+fcE9nP5k6!2N9h&29=WzlR8`Qej`Y75s? zr};seFwTg*5JVBI-k*J#=E#-&u2G^=IJXiarHc|sz`;nuD#;NGaR(JAzG+BR9&<$?P|6E zBO{y=yc=!0pIO7y>8*>FPwyIfPUv(@e+77`JCA&(J7_yW8uo{SC#{2K{WAZ&1WH}K zJ$7B=c#nc`ZtNKNeL$Y@9P)0k?LHPO+Ti41x7|UnOIs7Q{rjr5h^^mj*eC-^s|vS; zk$UOc4PjEJ&93pFb29mUobm-fSKJNSrYmn9|M{Yyua8Xa(IAB{LxKZVUA?@uW#-ev z_|qosOE_&)iKUnK8YxF+a(3Lwr(UYygBXH&zEV(0`fcF0f(Qwm73RT_h!Y`_hghW491QFVR^WUnvra~74vYlo5Eth zSVCE4#7zfuV{|mu3*Pt0Z;i|&byV}!gkY#8>PBC}{G#hK$`hIg5eFy8m4EbYQc#B(s*g%;qZy*)pCLY#1`3JzNkAwZYi zrem4epbh%>%gr_zLdnD|I$jg@dN$y_)mII+TaAK6ePm2y_FgHRIy5$dR^f<_eSPeA z=!3#_7Ru<&$mVE3F-b}Zw<^-unLb-N*4iqD^F5PZ?xt4GxzbacNeo%Dd92h~p3EuL z^UwfU=uhqT%F(y{XD z!{OrebWa0-Lp{-nlIHd$b?6i{9sU>A>HdM%Y>|q0Yo{=Td&b}DzDL;L-oqqoTx=^; z2i=bcw1Y>BZP(9Sx)KOWQ!zWL>!aDay$b4Xn8K&MtzlN8ob|RuIN!F;MY-#X-ry%S zi2@Cu&U8!r)_x4iEX+ujTz~qV?%8A;5w^Z;*?uCqF3+C(7}uC=BO1bB?|Ol2ZI5dH zwx-cE*~Mq5E|d0}^k8!dvVvVk|K)xicT#z^<-%QCo>$fv4=4Aw$MJsBjeo%>p0TTt zaKutNMQGGI#)~;k&#gEf8oKpi?oKfJ!n7=Ka?d7Za$#KI;xz$2CcR#L$mp|21gF(| zWW~oV*or>u?C0&12JicN&ekq!i^iw4zy7H;Z;g_R4u}XQmT2ZJKGmv)t0rS7s1qj& z)2PIUB)ic(8KI~*omKh?*7?|ykjo&#GnX>$q|yBskhys4{?CAueW#Uv&@fmU7tJp(XPyu7#?-_(JEam?+b}!m?C;cVGw?g+b5K3d3ZRk9=B#pkA<@+~n)J z4sFdiPk|9q(rvY+e<3L!ncZIjdZ}&y!%Y6cVo7kcTS2YG?H7^hvMIXXrQFEeV&>B9 zMs?jD1bp7~;8aj-4E4!5uAlLc(pV6i2gRRDE?l&DV<3DM*4}^@k_w~u_>)V(bP_tZ z{ZF*d@)%MF#;#7M8E>DRbCd2aEWtricL-sCq2o2QwC+{Vpr>o5GN3&z4!(;>i~V3S zC|(0qA{4A}p4*N=!OG`Xc$gFY}JuN|S2Dzh}kzeYazpkdw z^?S0an`}$WJ=aQ{06bIMQ2wly5oKtlXcauf<wO(p?G826mW#%U6o^WOY8(#1~mS~#g#EA>)J)4uzuP*rwS+k6E^G(OBd=-<% zJC3@uMRxnqZ+5ZxAbPRMU+_SOaIb+Tu3o9!{K)7HVcukdj(+%Bv%cUqp@3pvbOyUD zVC##jBkg*ZmJ2P(yrepw_y}wFs8Ex~iWll(_WBN8>;JXuw!X_lX~s~469ck<&4;RN zrKDl1g&_YrUi#vr3~wBfiRD!W&^zlBo__qfd#ho)y;H`j+U|;lEygWYeohFXo8wZ% z@@=Q^1gKyif#`u&gw@q_FQH&a~4u zY0b>tn$4a+iBDwKn+@}LY*n=X#hl*9H?3x@hR)X8;$d714gxk?YI2ByVtu~(PPv3k zhz3eAG;8Md#i+zv0ZDC_F7@*|V3%Q+t^#lL8qfUIja~Nx0z01V>3oTvKt8FAmnVQI z=AmzQ^?VRd(od!VM;~?+;1|d4id?PM5-;)oeII$pGayfvPKFMbyGGC9 z$T401TA(MP+Td1OaKt*^uoj6yT|vFva6|yz$nmAs3v^AVWoZ%$%~11*%dFAUUkaG> zwi+}t9AI@gCn1M*kgAMTb35VWkh}y=`<7HvekFY@UZ1P&-~hh(r9-oKB^f&@{KPvB zwMAeME1+)R?W$qHwp3OQf7-$P-Ax=xET$0|T@cZ${|v5N9qCLyuXjf&J9x##G9!AA zAUd$m5#-EdpsjPLOryB;in7sQnpRR_;o=`s=jM(+tDHH~%XYT8_;QJr9@I|=j_es9 zGuU|b&3L`@h+SFX#MkW2iTTM%$gt4USgWy0T{`h7x}`lTcP`~XQ^8X9h3RJ{tUwLE znc;eDLN}9+&LKs`hbIvEl&#wmT)%HCZ2k-~wOy*pP2yAC_E!3n7R;w+w33nynU_ zg7upFZSc62L2vqWF#NV%Na?2}(9(sI-dX&4l{p`H^n`LUp*1a+A9bZr5UQRBibfYL zSjFr1l|k37sP)?%e7&j7gywEb`RT)S1l`Z-tj_^I8<18`z8q@!uz7jF;BI%wV zn%r=OPI{YXONaKoTa$wdkXMQ0*5mltGw`MYef9m`?6XnLN|ex`R@*}#3*jqTT$1$@ zR*mZG+{!*ya^N{yKiBk-@E9zH;t!S3s30#c!m9%~iiTfkb*kKwo=EQ2<%)|?=eOVF zyDz8iB=^*XeR)E+3aMx_J!c8AqMsL*O&;0Fzty&$4rCasSLyfflkTvAq?ds1=X+;0n-|wt^S?7*JsVd$yC*r>vZwYHX)An#6J8I_o z!AO%?qekp|i7r>j-WoI_h-^Mu?a#ys2mde^01fg=6$zUk z<bA`p(uEK%0IIk+^l-=fC&xlT9K|ZG-1lM6gqH!qEF+_#(VBu~JIu zeLiy`w?6r_6Xawk$?Hg#)OU5JaLvmz2^}jL-uTZgGWo66SDY#|s*eTlmCJL=6^=ff zw2R-$O+0y#J4!&N+#oxE{HlP@48Qg_vD$=FcvaR=v*v8Wa41ZATYJ87`vr)mx@-|#p|3$u9=ijY=FAhcuJLs=)qdad@h!Fq&E2SH#`8W77F**vZD(Nb{9Ea1 z19e_o?_5Piy;0EXhrD1#-}Kt)kV&$g;Kygnhe_b2M0#Sr3f`wDYl&3WYQ=>T!E12G z&k7k8ep7s;`HE?zkvoxa#p>up4La|*(KB8*Fa+ml{&}K-0H@zpzcFf^^x8;Q62BY5 z;VTXc1YY`7w)DhGNgX-=IGUQ@^`Bcw*jK5vY_(~A+|b1|Q1m06{A{Y9X_1}0&EIEO z%td)u$fYF$a3>hVU>D%vxgfQf^ZK#MFB^mR1zwPwtrg$3*?f2{jnBF_C`(bCmXAwC zwLKBDN;>@$^FC+x!_?o~_L|cCtL?*^CKRnt_aiPg{PkJK71%G~o(vEK$tNE3$T4*; z@-H#R1?gp(0yXq_pxk&x-5!61fc)Ap@xRSqNgeqV2S&|w2JbvvG2uDo7z3O$eD zedVR)wb^p|Rb{B~9R=*6)YooWfSNjI$$7Z*Yzm*~>75&%^{ayZUiNmws2ZPQ=5B2; zKl#vh{JiSiEx51xR(Pp7=WxGZ9emlsMmdUUb6$F^!kwS&U0Qks)8-O<;BOj4r`MJM zh=Zzk9%{cBXMC);Qp259pSc1bFH@m@DFiNCOjHfb(YI7<8W@>(UrU|&`)^_Xm97%& z^|i3jA4J#t&!(n4?i(MPKx^pAi+1UXJ!|S{DL>&ir)E7x8{(UP8l6^GMZ(5=$og~r zTqh{n+fGK&r;3O6uOGj{1>2sZ;5i;DAyL*Dj&w51;MF4{q?5l4af#7o(?ti>JhHd)h^Ztn&4nZqmgVA81uJ36^I&Nz^Fdd$w zVp@iDz2@fj0jFL>r-LsmWrMr1x~D4rCEsmC2O07K?xjIGgUGp0*Tt;Zz3uFn%zEkq&MaJ-YcU3)0iK5 zPk%}R^%g&Zo#9hs-ZbKp+#8<{*=1m6T{oeo#G_}V?M?LD+(b;1?I$J%J(}%{{6g$k zBY4=*K(sJ1?<#yalk55Mx=(XA!svpozFMQ|uV_2wHdqh*fd3pjGaF7T&0KC0hftFH4Z-Sd4`hfm2*^*lZu#6Vy&2|6M`C_?T zAau)+wDCb#?u%eKrJXS1sd4VpC*vp`o-dee@3$B#=~&ftVVORf>5rZ1#w*q&neTHBSk1{!M&17Fv3LuJ14vfR<_#BAxw3vQn6xg)8r-H=1_DdsL(HES)ZN7u$vR zEO!OYy8q}Xx&!N+vomAs^@?=XL-KK)?eqtE=+~3WAMlI6lly=}#H zDO}b~9|}L3ZMYi67h3|KSon*@Xj@SuLe7@;4tm0E4+2lF>>Sv3Qu{W@ zEWpFHvR#mtY=%IghxxEm+UF5J&r;0;q2v^&^_sWJ!F>)S5hGynY=t6Gq%$7k5$UEe z637`ppzd$j_7@#2#x4cid%0fe?TV&+U{A@sW;(|ApG&HLnt8!nE^iByT`nz6$mfznJ<$^)9)d$)HY;wny1sXo9)~EN+310(T2zNb=p*V zBk8>4jFO1~77odIY}khRqLNlBo`z|3Ix5vJ1Bmy!(pxoge>-)=~!_yb6j?2#K2 z^(ZjV0*w|lXzLcg5wEl!pcwIcO+GU|of@mijMEBOw6lKvS1l5ysb9?PBZ;S7V8?oh zew-i0Onw1^{P|#`8MTE)OFLAxx5ZTUk^n|bI|C|c(cU2FI~s7|ve`ZQa$ecsmKV3G z!y<#PO>pTbcKY_=Adoj8daXL)Y|LzX;tPt{w*AS_YSYs{c)P7ms=k@2v$Cdg;^$`T zJKQvM={lCK>5a@3l*d~JU+CqTMWvqU_>8`rY&uEn;gaFmcHG2tf=U`*D}S(NxvG7} zv|tUp00s9oLnqr!)5Q1YpbIqbr%P0Nq9qI)Lm^hZ%r2cd7yFmj{EFbrKxKAl>>$gX z&#;8WO*rpK+T3TL4L|l7H(HvstH(Nr`iex}uH5q-zDMFr|QtuPS?JFKo<&VSG67*yRm1*Wo^_VleD65VvUg(kdrsynK- zwB{=sYt0Wlb#G#(56EcPW6$k*#f&)|4=uypQMMKyH8812%xQQYyr6d+y#B@yYlBM|f5G)t(~&9OZMQ6Sw(Zc(>Q1`PsGTi%M^b^=+daMa#Qd`crq4>?@9yR!R(oRc+E4t z?+Jh`cojOs)f=_bP34@MP%y(|Y%v1E7+t^y`#|xl{MwG6GQWc9984tlR&6Q#z|+X! z#uZcPcP4MKOu$U1q!-oY1$A$-_hE(PNVG`nd9&@Tr@1=%g8e+ml#l%MZN#~#ov-kV z;L0X9DZBbJ5JO{~D`bo7STk1BAoz8~9SQ=18B}8*9x6V;O28&7=cxZN=K8I3%G^LD zW5dQVkgtlEiMZA&^`*~>K);y>w2IqZ8Kv(~`*y`*h^rQA*(M0`E!3&%p`D$?Ein4Y zof!jG#GK`BU_L-ko!fz4quc-8L`O3OSS^4O-WPAZR$1uf7zDSs8^%kNMw6JG&S6Xg zXEW4{XmO+YL9RYns%!Bd(6#A??UxJ`(GwjZo&L?(ds*n&K+t{Sw&*J3{wqzS<-7aK zadX}_W%VAu&Bj&3}! zw96(rLYILrk4J{ou>-h;NwoK!qIPT*AmlSU`uJ-pG-rHQR@fGRkK6xH7HV2ywr5b< zZ<|%|K-Eku_#k1^Vv~Wv>gmWq8DJRb*Lae(qc8JUeGGi}YQ7OC4aeLlH7|JHakYq;>Mh^)44BVvB6 z_SehO!E`;1XoAZ=o2jVd*8b^0;=&HcOr2t_E0^0q_b0KpR^|)6DmVEhDP|WPjTDw& zJ=haY)82|L;XGv9W%C=Bo82SK+|U#qx1Hyc6nl1BG%>Iwo}yTAU-bCx-HoHUPE2vB zE(&e$rQ*&5mYEdxLAA`KFgf{@X|^#=(us+`8A+|$-_c5>+U#I>1`aXh>VEzU`E z#_?*d@XK;hsPuH(z)R@v=(C$$FAYQ#O{7EW$Z!pwXq`1 zw}XZ*ZlduP>Rm>k<7ZBd?Yhoq@SF`K(5X%Sm(4D+njO!)V`>ELP5|U&#`o-N)hLB@ z`z#RP;=xJp?~!aR)or^sTV1UrUaEFqI|AnvUB!Ga#j4=L|9Te)GB!f(ap4H;_D$sA z8GJePDZ}9o)Sp@5yPnS-XXXs}2}kXLb{e~}lk_BC>d zXl&q7Ckx<}qX3DVT{~lX!^3dJ2|44ESth$D5U9hfb^QI?!WnvhwAcr4l4lB;CZ*N(_mMN2f^ue8&QWRid-7hlv#om01Qn{9f}n<+1WC127BfXuCNdle?iM7HQY zVjV1~1&{-|`0I2e|N3&E%Nu>$7}s1hiHaTxC2EtKgc0K~dV9KPoZ zaLJKsbQp_0S}E%@h?UoXS-l!;glK@oMT&A(|c zE%r>;H{Y-b9xc%hT^;4lyc)rrvKN6poVF6}{#mnX^5TLE!O96Gg=PH=HlF``I!ak%Ug0%oBXc<&} zW+PpL*|nyAxHfcfZ4VjUL!0IF+&yECh>YUd&uL(k;T9Bw$;Q}|HYg$HEbXopziy!M zntG&x0{Ewo&45Gv)-2sryDdFxbgZBwQ=Ezn>O8Ps?{9Ca<{O)qk2%@ES9lnWw zuAl8V#%aI1t6yIA)q%dTVDC1j`u>i?Dll3e3QF?WRdY(4x?cMpzz5=F!^(fT(rZdQ z*;p}X?6p~KyeVtZD`c+c?HNyU?CGQpI3zPH_PN<4JG*nuu3|HFwi^0nZ^Pmsoft7f zT!ScK5%EPo-dF!%`Pk7*l83A0*YJnY9e;*7X8)Y@bXQ z;HkcbA#Ez}0zBya;EP(lGv%I2GMv_ihXkMko9GF2wZvMI4%9;V^BqN42x^I~R`%mO zS_}zj)1~`{(}PwcY#hjQnS1r(upVfMpUf7oo3>24a0n{=co@^j^fc6l#krQTxD~+a zr_YDy0SDZ!ufy}>!q7NSG#V<-lIxVcr*q|BgY&v}G^+m?9%fz-qViZJ=M^Y~!809oh@XVA2yIsKtIO5Skj7oNH? zxMmwq_lK7h!$eJYu`hjh=g`xs=tLEfXzX{Mu%Sa~k0;3Xx&fO3w7s#muCcEJMm;8& zD4P*k8@R8;rhPQS8K&B;3mS-zjpHkY=MBa0P3t9Sd6ME=Mgu$0&BkkuV2NHnOUqq7 z@}$@yG?rc`GG|Ivy#@z?7Ga&X>h;|TP7rlBzVhdzs%dPl8=ab5`Jy#j)X=5&O_Mii z_L;8N9BB5jiA-C>nvb&mM7ecHbB$ms!dkA;x+tygVTpQyz&>i4-QVrA6 zg_TAI?KyxpU0NmQnxPGBxQbLMNsne0~Z|#u5fq7!JnHnd^`KqOOYz;DBW3%R*Yz- z`PC>15T=zilT|u9oli-nIwy_$L3jj~5LqwS7J^gQS#6^yoQ1q4m%SsX-q8f*?*l;X ze8{>9V&CM3#@Oj@A*o4(EIs{8v+6uuehi}~EZ1ag$!HEsr%cUlTqUw#UYKNdeamhIVPxZFGizY-=3GroObaq#zB02N+}&YLq@R zkhD^xyn=&6^l(ss``J(-89)h2)Np5nuEX($L=eIe z-t)Jnq9=DoAzpIn1vWd#wYI3S_va^N(1uG_9-xkjVI<-#q=fs)6hGQ^3`Xm^ZmUgr z=>yRy?!Y{~Xl;~P<4Ob^ga;@!O1fhO_e6`B_RT8oUP&LZEP!Cnyj6{)ffHv`Dld$t zi^+LO>{>i?z9V!E^5~QEpl6i&y7ZaD)STjMrwaRGq^~rZEmDFZ zqpSNN2$f0(AbR@++(Wd>?y(1n9u;Gwe%e^n`!Dp-Hls`O>6QT+OvQ}2S$aYU+0k?X znDL#Pj9>w~S{%yN*KgoS(L1J1+WUNSXOpO205GPpIr!xI{ zp8`2M0{rTH1TI82QMQ?Er*517tYFKfdX~P<41w92!2-hlKuI)W#T_R$I^8wu8isB~ z`TwYTuO>^90Q>?R9DqGCo;mr{qxU7WS&HSZLr1T zvHPRc9^9I(x{JGwa~~OZ_HW6D{VM+6${wG+@X6&*PG&=+U1nc5-g)+OCrlPD_0;LG zf90zS=i{B6EhWC%SX*xXl`oCc`6aPDIzG7Uzk6-4>hOC9-%SnK6Y*<%_I$V-4UIYH z!eA>7oN4u_{dw7bQr*ddY}YDo|F=7%x&50*cg}uxy2fuWoLv!bh|S>fxbW2{KYbwP zj>M<$y&{$tw|TnT-kNRhUgnFhS&gUNKs-O!8^7J-+piZh2ie`>KX1+btM{bpwVLMk z{*CcLXIktP4;R~aJDpBHJr{k}i~FoS`@t{8>k)f3=dzgjEIRG%m7nv6V>$XoclYsy z=C!WaJe(eXWjBtygN248j^CSh&+c7y`He>xm(On6@xHP7D^ZT!aOZ!TdN+S|+_lfl z%>}K)m2+E5vC$K3u6Oa_(t0EGH*$7mczNf|)%57%xO(x<@bT{GN9p{lr%7B@*IFS9 zljjHj`K#@v_;E5i^!|9fSv)#Cbgz7D{jhvETyX~nA7qb`2lDXT-7Wu0$2^lSZ2QaG zfAI$I7G0-1Y`v>Gdkg=^VkbR45ucX#XPcMaxN|N{9@%!(x_90@dtWMheeSy2O>TF? znaq;^#{PZ3u|2(h`D9L9UfZ~K#rGSrJWz{e)%x~GzP5Y!gRB45?5quq=da}L%WI4O zxFr@h4$UbQ?Dx)W&8X*(j%V6?1Cgrer|sFtVa(3lTR6^oOIzz)Tr@s>`qkiY=bV4- zUmMj;A@`p>m|s5k1N&L)&9~n!249Ho``t%;`a;^fBVX_x3zW?~F zd;7%OYc-dyHXaykz597(JnlO8+XwxvXl-iuoALgwM}uPFrmI$;EM?1&!+x6iVmI=4 zgj|~{zP~8D?13MAJ^e;m{4Ba~(hJq?%VG42N_YEN=YI3?PdW$g^B>>d`0BN#o!1*} zbJ^M+_s8ozYVEI`9z>gO%Gt}2XigvQ&J{oIA7A)~Y-_2wT6$CBZv zY5imH`RkkCS_d{iIwLpFJqo{?EiV-2aO=c&^TUqgi!HlIrkZO-46+yLB9d z)Fy+m+@9u1lZkeW9 zJzM_oGtN|S(;A;N+t1iLr`DNYR(sX#;Jq`)TV;G{FG^3R)?Ue{zgZ5{(Z+E%&rXU@ z_ZsIfE=)hT*=^o6)?Z2It~>K-W7jBtb99Y&lDR|M7{<*X?%gv!dJ(#x%j4%m68YQ!{s*$EtZed@LKmZSPF= z*kp_1=C!lWW*5Ib*g5X}u6cCmJ-_$Ma_3N<)gGQXRzLBTw_$ZtWy<+FI?M}(;^Y!6D)9Rgz7vrq;lSB4*!(ToAH*e(c&rO$oclbxK zdw6x+-0Th(`@=WAS5Mkg+h@f_qxJ4LgP*?fot=(FyvF|KQmagcD`w?J4xhfl9xR^T zwd_||dNh|$wQu{sG#)P=KOK2D4_0^1oQ%pFZm+S>TOLWvXODv2gGBda&=ACoZ-P!)4)pYr>&^q z4;q6f?P#Ms`@_@y*6`kI?;Y>X?;Y$dv9{ml*7OI?(N@1Y5U-E?ciGIe5%^y>d!LF@ z&AD^$ZyyKpo%h?0JPGf#DktoZeoTrLpzE>z%x~Wd5za*SvY=!FcuC{{W_@tjKJMGo9UP-zcOk-N9S_ zW^a{wOTRq-qIW!R9M5jsGlOAofBa&|-YL5~|M8zxSM|Pyzc~NpM!J0VufyW|!E~6mzOvGZf9p@qwv<9E9EO{`|;6qWzX!#&Gle`H*E3k z>R0ODuiV}Y?nM#|DBIc=U%az7Gcp%1kGJO^$Ip5lv)4HO;qn{SX>-Q^Zbn|_{MO(` zF+1q_XF8?x{>SFCX5l4@6?@&_`Y#?|`^dcd;)BfTxwHO5`#Ar4c6~vWjbeKCjqM-I z%v~67wPP^h#pg3`@2wv-;^=gk9>sgyXs!RBkMHeRE4wfLc--_J{%Xp1oY>jl_=s(8 zAE|HJ)n6Sf%*x&ugYLAc4#es|&8|E;oc8+eYlb?bp7`&ykN1a{-{`Ab{igf(yh^vu zSqDeMS;fw~V!jix;AfT-AKZ_>o?TvPZ@k?f8_C_h=9A&3@i%`lt-SO5TPJ6}-gnq> zcDj82IE@}v*VFLf#oq4HOch*iy=EHD+%tL5^IC%QvzIzAx>k|hcx3g_!}SUi%w zwY~0Y%Uk*{-g#%3uWbHC?M$Cmr~LG^^+mR1{p+Z^R=%}8{<7I0^_<2#?xOSQ{;Tnw zPrIYBxH^As7~hvW#?u@9!;fAG4nLTy`dM`N3!vIx`n}n+Z(Lq+rjC2y#pGNTKiYJY zd&xs72GP?kq}aH* zrl$Ys-OntbzVHjl&$w!Z-JvR=Kv&-`$`8^+R`RubO-9 z!-GrvhrgapE^o1|=ii0XSN9HsH7gs8JIVfP)VR1OtQSSKd{G?u(fB|HMv<4%?1EHz z5=6yJ&lSzBPa65?^s&fTSWL~y!!Mo{_b%TM(;-v*$oZ*QL847;IuW?wEoSh#t2JjaZ)Z*QG#o#)4U zVK{6K;?_Lt-aG0AuiC#oK2uC>I{c`yY~K~Lduzdq@4lYjJG^&#vUp2b+fjPd-Wlz! z-EZx<&n~2YIokD4Kb~_}r>m#lC%X$jyRzSZ^(eNE0zYnL>0EiZxBDz^4EGl#yVP@{ ze){NWY`^-B`^)wfH~Uh~1?l>xIsEKkq2;+R(zPc`gZXD$TUXxs_{{&SzT~0*bw3_k zjn(zh_Qm7HOI>GsX`0UmOF}JOnKmDPR~%1uTl?!Sp0Y@ZaDrY@bF z+1MRiJTAky*nJw!EH&om*3z;4%0lcsOKznzp2*8E-H%=bcRzmP#k#n1RK&8{|7qGW ztAl<%``~sQ&&@8ryXbt)znUt73-hVPf7=Onoy)PEcgn|RaXox(yO_RnW;p-6d*QD4 z&tH4*ew3cxT^;zHvvKpBt!_W)9yJsD%=pswpJtcVir(t>^!?L(INSZXIeR=EEfFv2TAp z6)NY8`QX)0I?1!fmj~<72hEK&V{+-X#G!mD^@?ZYZLgFmGvT~}OpjnX?TPvmd=r+0tQ|CbZ~QDZgi7z4LD%BtPvV)wo7+*C(C%69W)6o&KNEDpN2Q}e^lBV%zT zjjZEq^PVxkdNA)^u-4qs`uIep%NHJgyXO6A*6B5`e|oXupFfnzYbK~JRPd6R;@S1)6%6->%^6C8}^TKm(%sn;Zu6yX8jm<~XKNkB@w1Bek_`!_}c^H z;&i@z@nSXosr%*oAADz+`R2^=bUfRB@lor~_Tq2O4^|JKtyph~qf`4yuh*DqK7X%g zZALd=G}k)q?X z4?cN1eSX~^KM4|XCpx@T=6^Oww)@=|tshPM7abWt>Ak03+kF4ixR-7Yezv%Nrvie} zo|-?*hwYM|xxU#y*?Y9^s#n#I_FstEhqqUw>9vfXU#yB7GZ#4TKRZ5Yq}DyLNRY>;|)`Q+#GVy0@MxKiFOW_e;04-|ilmd;M3_jrFJfa=bP3f~zX=d-pD; zQ}11BZ25=RqjUb!kcHoedmS+B?I`q)W~){9*4pVC$^EMV`>&Vyl?!joo$_D_k!V1`i)U@&wAvA&mKRxeKj%PkiU91HMRyT=Jn|Xw*4oK6D}5= zrW$>A_JTM$-7$hlEOb9?ii6ZVv(ZrIM~#~gBO`QY9!ITP^4oXvQG99c>iTC)~OYYLe&CZjf?nXZyTpAbKGi7om{A}}FbffjbV{2o#JC&(W z*!>4n`Qg_2yI13@a=qyG&s=W6C<~7c*B7o#_a5!ddsBP%;p%GpH@gdKP1^-iTpUzO z-Zve2e6qfMS#EBuAI^{LCsyyRl`(S;-z+a~=h^I69~u?JQo{B0@1xx;+6 zdosN+m-PnUMLz3BmX)Tr!YnJ}!^VDEU5b}Znn#Q2Nq3ZqxU5rPJE~zhuCO~q&$DRyR}iNFXmSJ<8%+Y=KRlp+ud4hKYQ*S zPk%L9NzU$OcUGE@9yx9qb@qNRy1kP>dHbBtm-z1d_g9j4KYltJwDZLLYjtJz;*7CW z<>uK(-*28tkF%Yf-x%h@>yPA}wEK*AuP004zja;r?W0w**W-JM0xb@np7@E{Xv$gR zu2T%D-2L+Ccm!ImRzmA~$L8UBT4t{#{@wHY!>ha* z?pM}gP^FF5FkP49`ITHnBJeY zA)MUsugkly{A7Cgc>VOot2<1M7P4Kh7mWNZ-ucQpx_JEp#B=jE4ezV3A2jxUTt#>1 zWKnLMD_)fGxDlGh-qWd#wz2IzKfgG5TKsPHWdHoh)=#I*qW$aFPkFl6Tn-hBqhT*Uxcx7|xsC3<7hB6w^J{-;{-kTZ@82=Y&+|_^vrDn{qtTXsZfx{A z&&Q`p`_I2^m(C{}t+`*g->f{p=6w3p+39a>Uv;i6+jGA=KWEK=aUZpNYRTK0^1s

    ygUBdb@F?H7AkT!Ps(>pps8?t*~0%SSZCZ%9A*4Yy(S*GA%I z^ufIDW{V=Kk&C68o)RA(Of>eGl~V(vQG;aC{sOmXP;)vLo`?m#$y!^}S1KM1Xjo=Z zRhSAC&-kRIqCCyLCD4P=OvvNS4lxjfy^OLC?wip;z79gy+)$Z6K97_hQJih z81jfQ|73=hL=(Xb5ziSFLQqlasi^R=y*DK=b2Fzq78!<%EK&P|9{X67b2+W6q)V&y zw6s~8wjRN#q1zUFMEAYI$sCui1-z#s=#1-Rlk_o}>n-yDs><5VMX(<+?8CfhOL7q< zT=ZisZRO4X4$VlrqF^4|YwUVGD^4|teMH%o%{~!?MIiEfV&j8KOprdPN-_Fo=1Nt# zz{bM26dTS?^*9aLIt1@6;h43(XKeTRk)z1oF@bx^jvidMJ!?N8aME}a;kE*>%D z;f&}Yc7wo~Kpq1HbdS=Y?))~7XD6os5b&6H1H_=Q2=iN0X9`z@Oj|nn$J25*A>OsI z(My_zKmh%A)`?{kXFG{Z0;64`Waiz$z(PMPo*U1l$PnQeFjLk+mLSQ*R%~xOl18+6 zWv-U#zHt1_g)qy0*{HaB=5zs**n(%Hj}o#4O4Ye&-PGYFicH?lXm9qYk)mGC9bac` zR-UQMxK1x`xu+|W(N@e2gng)U*Inr?3y*W>mk(*mpMVZ|!k2Vzk`_oeAd|;9*Sm#? z(|iW0Hc6A&c!+WABcETlJ^`)j{Cg=aJ=Vm8{FpuT%ZF{Q59?r$SJ2~Be4ICE(NXx| zo|K;?haRh`9fw69CTt$`9?@vQ5cPZnZ=}Dh(8e)NApuFUp6iPg?U9{!#$$L}C@^K> zPG!Qhd5QdoEt(mEohiLL=c6QTzUmX0M5XYbYJ@JDBBT@}9?j8YnAD_~_yX~`n7i6V zU57y5cU@F^=1}m(9uFQeDxPi!mc7dLD!sT;4vIENv3EF1w>lopDoRio%-(jAgk}#> z`HdavssK};Vvt;E@6eH~ z9}f=|a@q-u8TMCPc=YFjBBy^f?h&j8o%Mba5N60>>xE4bCiFOSnooYr-yZ6tLS@G> zz3Whz=6tvf9O~%IY0Fx8I-x*&Sy>QeKggB3rF@h$H4X3*B zARzCK6UdJ)A!tV(1*?EN>c51e6%=MtAIqe|d9d^D_>fd~&U>#gu)>?HkJ<_zq;HOL zeqr02Fbcqef^#F@2T=< zL(}|idwDU?kN?>}SMPU!{J9~|sx`d&ufZOF#y%(_Wry;=zk(a8hZprv|AiuN+V9nW z_U;!~i~sv4e_M>3e+;hEn*MpAAZ4GBznFUb?@Nv@|ESP!$SZFY{fFrf@gIEs^|EEv zr$o`^KYXU-Yg4^^O{f1eQ5SFGj$Y^A|3yFD{!UN6_1bLT-Ta&B+09M)oL!-pP>PSo zn~rv0@8t3w@Gouqljoa1{w!HQ`TQw*dUd1G`jc0B zeEx0sLEP!?Sz^`^GHU_9D?j?I&cI*S^0QsO`d9c*=AXN%hzgbsYmaWlpS(MQIZCVc z_el%ZF|MDmufF{7=7*kDF1|#cvw^QZc)88&i?7H3^5Vtf-8H_M(lNb7O0Iu@e-XLQ zN!PmNoTUHsUHw_rdGub$=KK65Nr4_(Px-+m0p&U)*WxAmZ~@`J5bYM-X zDd9EfKJQIO>h$B}B@pg%Pxre;^W~k4ucF=8?<{OlCqwGvYMkHQJimzPwT@o?{JYcQ zH|FQ%7!U8{AMq&f)4!2yuf7M~`}b}aFSGumH%0RPOJR1KrCv^(-%QXt|Ec_8=!GeM zx4!-Auf2Nx<%q?f^z`FTUJo&ip-3kOGRfvIFDnUO|Gnzw<>$j^v`R~buD>ch3$UBp z_sbamP0dO9WSq7U`?rmdEdg=%<9)jkC3;UkGv5XAmsL56wfqW8oY(lf(R)AIiRmiK zmze${OPypO9oCtim{n?+| zrGw<7r{59vT)#oryV)G(AbV%VKGpb7&}WGpJc4@CHu>)RLsb2T$o*S@xAWM4b@k+f zFD!X)^#%Im>b*?8Zu(!_=jHAf`Yr=Y@h{4kPp;o7cRyQSf4$g^`|PVyd?Mh#e)b;x z$)=^C{UGA)ch}=z`vDoVkIKlRtIw-nz|Sfjp-&dKSW?_1&$k{+!Rj}9D!cE#_w(?%Y`m4LuSUwZ^HraDS z>8*YL53bT@^@r0q{Q1{!d|=qDo}@RR0&D&GA5O5|Pn5IQ9zVU|-;_}rt^3s&`a^=EMX{bif}Umv{x zLmscIXa7ec$-f%+*KW8;w)-1eepq}syzk*g*S%?<^||u40U#GY>WpR^%kWrzHTgA2 z_nG-^?Dw@~O__bw^z%EP=p4*9U0N5z_{k#4KYzaiufIgPi5pdy%Zu-}49wl{T~_h8 z^1rcp^J^)29@`JuP0)x3FJ`&Nzwysdfp2cab5Q((-)PsppRhN-wNBwh?xQN*WYg8o zjo2I&U97xu6@BEw*)+TQ*Kk8Ne zv){aUzD~rC1Y-W;V$TC2iT_;<>&5cZsd)*{XBbqJ7Th0 zp-D9HW&Rc4{ioybt#_k~US6_SgBz}jn|D!p@u`LX@WW3W{A^pW7nj+-TmGD1bYK0i z+tmzSm3E2j`+D_ze}Lj2z8J4Q?Vj{gM!)#U%m1Yy;`xhqQ}XqdE&NV_|H1(BYWL#v zXIsHHK9EW#N1Hi?7VP`qiMP!U?r!BAx%Al&u+evmcKsRLlsE5e$Cq~+ehZ@yi)i|A zc%$ZbX}kIBjQ<7s^Dm2u8hN=jL&L-;E?xh5t<(7h?br`{sBmPSvTJ(rPV>&1_ULcU zTqi$H-~TJ^0$=QZFsI)}G_~bAzG}p6@^NfnzTiHFU(Qv%{RdC73%41bWS?x{P5$%G z;sO5X?=&B*wYh4@&qYkdd$G+`zj(ck;qP94FUH@lZm#|%G7Rj>EahqQ-(wW~f~eV~4`h89y57CS5 zwEL7?)b8qkkPG(l|F-?I|5NsPHM`GlVf>?iuxwU1k$-d>ufQ+5dBvqko~WF)j3zSq zC%^tg)T`GYR{6eFRTBZLwI@jY<&xGmOEbVwD~pp^n+|_ zk~CV~{ltU$=U?Kr$QRGA7<&5rQ*zlPdo^D=aFg6^V2n|EKzUV@a&6P z{uW)zR5Zmk-TY!8H$VDtLT~me%KwVI)%q9N4>orNQq|?h-PKPTQ4Qqj)$5m&p6|@? zG2lau(V*B4t>)+h5_kKiWeEs^8#;;x!AD3!zd%fJ? z54xUDOSS&RC-hzE@cd?aVaLxEo$lsaM59gl^-uX^%1>Cc7-w1xOE7elKU)+{dTBqu z{n^!f-vZxfX-CL@+FoUsUsTihhs9>s|KxF1<`X{ahp--+D?R zm4`W|_nugIs}=k@Q5{iXckJBvSk_jUF4JD*KUk1;>kK7aMpzS+OvYnl8k ze)+uJL65cQG(KG{th<0eyIah(m#Yh=I``A}l#2h&xVtLkx>;_O`@#BM^C_!bH&9Qg z(A7;>>aWHxtMvWiC3^PGYqCnbqif$I9E@e+Suan`=gZq@{i#y{U4&?J<#6*-Xik%d=%xpj<*> znGpiVG;JyPF6)1|V1D4A=U_^@K727=)|uOAk70;dD5D)7WT!~rBbynY7|x`iDaeEI z%4?BcSH#*8s!<{7WjAi*Ww(^iqO`NJIebH#trA|q=&p8+&4gwQ2`xMGVoDV&Q<|4H zP9v-4N^hEZr2AypZBIY!f}H*PvNX0*6D(4PdRPIk7(t62(*NlVyY4M}cL}Zlv?>;a zhV<7hc#2{+PBvermq@S$zKAriqiHtJ@u_fkvr$b}iws0s->m^xj z2HLH6*oQ_P^NUEpmqnB<1F?*W8weD(z57Supw!1)0=0Ew(%N_Llnk~VyWRXpZF){-z#0<^t+oVkk=;2)v!8xaeAJKk0 z`GRh)ahi-h9`9(^=6yJKyN=95a$JhO$o96DN&RiyX@MeACk?~#+`U8Dh0=Yj+>t%| zGq=n)iXBX7oQnrZ55tzWD1ymv`Z&$8HR)x1HCoddH!DHsTd{y(9ZXC3* zC4sW_I4EG1pO>mSF^HF;OK*xpg$kDX1qId-V>#cY7xnLNq>^K}7j?a!YazY51~>?L zJz)`Y!rGP*2?I6%C^2pi<>e2zW09!S2IfuR!)kC9d9saEv7g`PpC|L&Ve_YVEN#x!Z@a<2nyBatJ?3+t zQ9YK5Y6*yAk}F4KaXwpa_@uUs?TKsHtp8gq>j|YZmZ1(?i6Hl zPrQQM;MXkm`XY%48po+zkoQFyjq_rh*YW&?qa`0MYOf-?AhkzM#)ub^h>_<`se3EX zrjnm28!-aEpUZ%P3&yBXEfg0^LGHFAk#34#t(W;{$Q{XwLMf=ZZqFs7|#4g^Di6_X`!P#>G7e*`8u$>VU5ytNe(c~pW4FrE^px(R<(c-#4<@t;? zs~Y!@=h;=;Rh}dPh-)M^(MW_zn}07h6Aoj&ZZc^bI)i0v3kd`3V*+&V23wlfK$wG~ zDBFp+f4(Y>Q;y!nxRnSh;8}T{Q)S}r)^i__vnMW6q@mFh-F>$S6RMP1OGw}qMTH1B z##AO^Vw^Dns%Zcq2|+eG=Q5C0q;XJ%OcoQFl5J|+wRc_s5hOZ!V)3PK?&$zn_@R5m z0-B&6^y`)%F5DWP7t;)*)8aWNW= zT*TK7nDDN&7kBlfnXOCQMeHlkTxEot$%PJj47*@lWuM6yY{l>-dl0eDc+f3ywlgiG zM_6Jf%PE`)1Wj#bA7VDVJ>|rLR2e*Ua*7okQArmGf<+(z(+RNHjD`wz&kI9><5&i< zgs6Zwb;mBLQuO*16vb77Q)!Cx5mdM%xF}biju#YypU={>S}CjqpU^N}3R2)l+8Z7k zlp!oh9+HhhF(;~WKROnD#XAe+(#c8mc1$xx1Sud>*1^>QZc@26jJauLW*MB0_S#CC8xj+346S38|1x0)%_88 zXZm#_^+0+70F_xcF1a$jp*jGB)->IfTC|i)&_QWAb#ZghTrYsbvn{_BLp*PS#CWP2A zub@E(Is}8QLsXG0LXuel(Ic+svKR^G3bR^RMT_tI-~|G_5$eba4!Qtl4OTEZZd~+e zYWA`iG*el`F&j%}FwXX9K>Ex~HfyN{3@P`+k5*8EzDk8p%RA1FVIK^6)yPjmxn$N` zBvucH?5Lps!vxug)#jZiOC4PREe_F`AKd0O{5Mu)Rc<#T_E3^TP|tGDl`q?&%o;vA zEl7#7#-B8@H@6vom@XUjBfo&|eM}l*Lhlxo+Q~yC&J7~j-nshg=5n$kOVbs&wz+~= z7=gNppZz3;-Nl!)unInOc8M?Rkn`i8F;I)ug)RGKURI_(7T<=xKaL14t42)nU!TPo z%$iesL}I*S2*Ny20e$b62#iw%;8bxF?9wzB0Gvhk|M7_%pOt6>Wx+ZomKH5~gO7eA zRSUz(Zhaig5h!QLe@<;u4)fI%iyPI}b*RP-VE+aWpeexKnRVLRwdt6KrGSXtMwwt( z7M1b&dPtgG&c|0FP%6}4xRfncGXv=^qJwcJ zVh~&_jH+GTy-*1ZePAxo4zq;HI>PP%A0H=;`bOk@hh8R26f~S%(iRL#fQpjhIsad# zY`WS-0RpFVo2`TOwD+HkP9Jwt^jItrexq`sjaxpm5#sPyiNBq$EK{gyqA!sKW4r48 zF%kh&^Bg<$H1{77x*u1!3uK(Zdq z4p*1&0i@)0PT=t-<^Hm0b8Tl_#q>0Ru!w}FUs7i4Vb3J~=XAUIn zLhEdvH5y`r#;w1o4|rda|AG=qIqkF8wJoTUXDkVnaFmugDT51IhdtK^c7@VSD|8_> zi7Lq#Fu*bv_TeD63-yYclo}hOtw=I7XL8cs&vZd4DlT5Ctc$WJRgaN^;+=#j90%a) zG1sbd=(@bxAXs}~fNq*)hqrm@|8HX2hDx@T(F-Oo{@cYhg8zfC*h0oaPBo{Od;W`G zYO?bVsAhWKy?-s|*>b#ubB~~;;i+F+PybKLVM_o$Yil*sngK*tC*Tl0gHR=X6%y6A zGRrjymjhOaL*`tqQQ=LgFdqwguC)_l%UELGcg9*k-kRyU>$8 zpr8eE^1XgDLDHV5#C8j#U!R+DF9O<;()}C$A2=l8>c^||Un?cQyS}K$8 z=qw?!7ga4y!k1(YgHtB=-*+>>i~+mCLq#CLX4#S1?HJ8K!l4zq&2{-HjN9au4`l!g zZLqM&lafh1jEqqd5Fn7U;R)LLEn;@*Mrh4xITuE2{`}I%`e-;#DbzS4?u9ADu_gd@&t-u3X8D-_1UCKLlh!d zf(A`jp+X!_^A!%iV5rB<5NCpb2_qtLAxEuYULloei6_s=_a0B7S%PN}UzF~Pyht_0$V z^iv$8&X5^&cnIoIynTS@C8RvC_-fT`;FD1O*E1^Jk=puWDJp3U(0|}IaSMUWrQK8IjH7ev%(SuC@<;)5OLljZy@o~x{9aaKZI4CIy zI-!Oev}m14nHhy+<6dcyn^yye?|HvQfjBwFs_8E^0}kOd#=W5C8W27WGnY{pQFuGd zHi5R#mv?orZJ|-zmoX&D?VY{Qb(Rpk638#XL?DB~7LTm<%yq5=LJ=2unwDJ}ZDZyv zPK#f>9N=i#5v?@ncB>lg{*UD%Tr8x-dh@dpH9Fp z1FyOi*H8;@bgoy(>s$?{bYBF+`_*pBswgdySS{ppM`X&*%_9JZT+PJXnz5coA@kwH z8Gsx}*P0Tg%0^c~8W4g-DP0+B@*nP6FHIf~&12Zv7IA2!rdcsiaDIA?L(;m`76}aE z23Ls$h)Cpe_rk#!l;e}_DPiV8`Z&T5VqvBeM82LZt+L(ZAj0Do-N}QfZfpL&O{c&y z6Gf2OkIiX4C33n5-!kAv%Aa&#z>n`*F&zWmInBgoP0o6#`=$YIH=&!Tu6&gck88|A zAXnBtkg-T+gCV}MZW{H=rE?i)<8A{OZPp1!Y6S|Vt`Up#4Q!%A+qgcddngPY);zu} ztTt%fv)JQ0y#ZJ@2&nK0n$gG(8nbRV5HtKkHJOI$|#;x1WKonj|&Pr&DpK}i84h45^OljHDBMb*!uO)o|5}aKf?ic@i*{gr`!5+W1R4IX|lm0 zC$P6=5|(S!m z>V1s&;&X~M-GobgbRDm|3rzytB5i@{5?zlzucJZ|*XgX70?O^DYvRNQqP!^ zYH-nv0o-9|@&64x|BKc6(cTU{#?aEpS1g}8Bkjt8_Mu}+I8y86^# zB)K4EYl4}EOvxv%(p#Iqo+I0I_^=scJB9BhgM@T)^tPPmws>F@qr0KFD>9<6vC^6j zh+rk231zwk+f^UUnfabTCuVp576GF>+|Ylj{BV&T`|cVziF9n5xzBoE5yVF#cDYCn zg6lSg74Gdjl-cmu`_sI4(xRywFFC*2B2cM}e+B)82^_>B0@^yU%nv@Lzk<&YYIKUc zsUF6d7X4poN&U`ltzWm!?oFD1j?p*g17f}X@~qHacZ=f!WYD_ZsuT(T*B{PhwjZWg zy!u`N!(4R$y!QiixrGWPbduw5lc@FChkjXsbqOL{-Y;=StAZ`Bt+iUo^Q^|CHFi{>CnIP{KSC#aSnPG&KKKUq<}OuHp^VYS7I;sj`yF&W zF7sz5M>rPc&EeV=aX12l63wDCt?ZkDo~q~UrT(Wvsg~-;%R4gv`h*9|?;rp_dHT1f zONyHFO6#rPBi|uE-lg{PzZ1xJ_oZA2RozMqCHw#TcAC%vjMOKD5&j?To8KH?ekZtPLjX)e4%K!4X$wVV*1?BiEMo z0xV4#^7>P0Ir50R)m`yGBF0&7$Bm2h<9P_t7*_7FI^-gE;r)$Urgq24w`+i9Vp=e0 zOaP>kwD)91(lxEEqw7fQu_&^vS)DthGrN}MS|Z@t+7PU~hUu=1j`4MpGn?gwKmjvD zcR~%dOg~d$JQ7qi47&@)%Xztvo9Kx zDx3iR3YjdiWdlIQZoH7V+EH;%_dg_Xy3r4-ctcq~<{P*t_uOJMxVg4%?hZ?JI_lot zE?aJ7ZACpvjT7K~#}*2_Nw8?aObV1+zggon+*VI?$0)BsC$Iy)aG4sFD0#M}RCwW7 zxRD7BDeE2*?6J93&kMZuXgEizk9Rl?5@Cu`avk%v^bxCHL4f7{Yf2!HA#qZ*S zf|(JpLEdCeXYzc_V(m9q(7it-Z$K#EL%xKcIO{U;jKArIYHLzevxskQEiFy&0eKN1z zJ_5^i<)!O7;GI5ZIGBTO?JT+Ips!k6<_nOt2ty=(kOXYi_tXW(l&z{>r4Bvvh5j-g zdd`7E&Y0!4IG|86gNhFgewU#kbjwtnF!XgN>CH_X2BU(kRP@J%acDgO2&z2I5=^jZ z%H^P3&g<@iLb8aQlcBOHY@>VMaM1ioF*`-_RNKWm*J6OH6|iLTq_C0bj5##1%7D;J zhs-P5fkD3I6!EK-?$*krm4ZZlJ6Z1|92xGy_iv-@F30HVNa0IRwRxLdL(4ew_vs`A z(s&X2sQZ+o!SZIwzpIVVd{r!CnK(XQxe$`2Iii>Qa>&FDOz%9kTZgCB%QkDoZ>m;> zCV&T$r#d0DK)C7yRKQ6F%O*@lKI;;9N0TM%4Tx+nPn z5XSx-#w5b~!pogK?c|dd+E`An%%_K%Tbr%aufUslcW~}TNDHI>G5?6aGr`f(Mu-m8 z)df>NzyFl_bYd3^yTo`Cc}r&(8nT@Nti273!TAla<5ez@Nq zH4&B4H`W))IR;lkS*CDXXm0QU$O$&Jagp-C>5)x&-z<0ja;flgJ3r>9X}h-AnL|rL zQNDRIpT0Xx<(-P7vS12q=1oEEK5%t z5>iONUl6w@61DIjK>@dq)e)v7sW^f9ioSBu7BG`9xfNoP%>8O3BS;eilZ2CbXuPB= z&Ev|70_ZoD43b=Z(p{B%QqH?tkrR51fR~4uhzxv;LNHIxS0S{w5_NgJro@%rYPL*R z-vH5NvA4krNX0NFsX5^}GlObD4y53jFvQGe8-M84?q^(574kGgX~x^x)UiW|^=@QR z2!*BUS)5$}Pcug|&>C!mnnL(5-G?%hwxYsc>HE7#2Q zk5IBvK1YdmVPBYF>KqM#Xm<#9UYuv266REP8~}wP5qPxn^J?{{NPzfaC#T+ADC+u$ z?`efP-C&;FUXS>p70w5?_}{omo|X3`o2*5{it`af(l?l-C^ z`VOlON0%^oB|QS?i79atDu;LozSM|?X-n}hKq!&J%~LUO2#Jq2g$x{%F8hK(b6towv4|h25L!#6Js?_T!;JqH zqx)KIpy*7cFYTGw_|P|+C~b=sUzQZO*P~8h2rpj4b6`{D)6~%{r=xC|B_bd@G*G&i zL5)q8yODp()d7gs?d;TxX$yN=t}>LpH&hTEv-h%^lwbfQCroOy#YT0Yl#GzAEf#dG z4a5kAvny2+(0vCLVMB|TRR#0tlt=f<;w)kOh-?!6F(hzte@l5)tkeYva%5RI99X)g z&w7S4y~d*X>9)mW^C~{vnI0&9V^AW-Y05-G zTBkYhUw&zR&MD@7)D+)T$b4@)EidUxQ8J_a7stUg+xx#4hQ+=f0gM?p`|oNgct2x= zUvaQoy0-~JB~XR#Y4KZCQ*)yBcTR(4THi`V+L6B1l)p42lys!Cq1BW!WJhB6LnH^sHpgX>P@88tG;Lb(2 znVTUSeCU4_BNaADk<>9n17TX5_g-hJkS1L8pxDUhGp-c=R(T+%^u`_HoW!vz<14IY zy+e*f+RABQ6Bm%eb3-V`o_mzSR>)IEzBt_p%l&&*tsTY~Zv_3PW{p8MeBX{!O2M>^ zo-do&{z^B~9p)0d&9Q(SXuk)sOKe{xKj7}B9Qf&npAm|41O#vb=~odio zd?>x2qP+AdPqeKA6idHB5-{i?K$4Rgi`v08S)QzXK(C_uIm`mUHu5NakdTRo& zLKRv-=n*Avf^oI{95>bkmTD*JpF7eCE%zS40298&G!})HEoUe zVzyc^nuz7)?JO(u8NY64sfx!MW|xlFZbJ9MgHjA}$nE0EVMLshyOU&1G)Sqwz5z=q z8u~<~YR*<_j_UghFSwVd_x>1R(g)L{l9ulmP=4EuC`WYuX)8!L+h&0Ob@z&RP>_hi zyjpOI>Lbg;v)q8b8wTC-^WXnq`X$@scd)=CS$>3kjkaC_q6xX+_r)A#3eEW&c(>mS z>Eie1)qeyQUOU)%`!k^sNz_n2>K*BpIsthMvVf?${go8Y_o#}){`k>khGSn%{evqc zcgVvFocxT*2A1!T>3D&hH0FCb^X>aJAtFi)jivWnX%31K>0yTL9mfSGf%j;HzI@8{ zIWjk6bWSa2VkkG+y4n z0WzhZ%!VwEJL6n^2qy}gfaxlL(*2DVZ2oGC23x6He>lSA7KaK1^|@m3)o1~t8}Aio zajxaz+|%>hmXO-PP0WP9PF;E=b9+@5E|fKJ8K6ZKIuimR{YbTwr=fk@ID(9v76u{q zZS$O7qcGXJ_?%xUsV1Cd1EWUUlH6xd>B6q|orhd-@#Pi|^?FD7_= zO{hb-5m*=g*&zSyLhwq!T`%&2;T06#%SQ!_Fc4f+ks`uMO$nSb3A{s~>$1Iw5nX0{ zEYuk^iqf}E735gOKcOzpHtc}+fwOA&U3{bI-&cDNsC+&I{EE*rbkd%$e7|h;XlnA-z&N!Wt7bT){dXIF2qsNhGl48DHKE zdf7m#_;QfEB-KF-+w3_5q!sciB+AM#cN@!^x7*s;d;V)arI&2F$WhX&Uev?`R)AiU z`&BJQc9G))C!bW0fcL9O@!J_dYM`meq7+1Hpn5o{TCF442XW;3R|~#RwkAP&P}zSA z{jTE*Q`ujoVHaB94D?&pldiLyW(7l?{4=|(^;o-h2T=uvMxS}ayNq+M;nX4vwKc>grjz^NUAdyM0%&dB>hKUDsDAS!V-|YI zD1XnEzq4tbI?GW|Ux54*^(5m~mK#uwuv<=zKu&m==sib`TYQ- zSr{xi$EZE#sXLGJTDmJ;WYxSLxHOgx5Jq-_PXj(Ep(O&KLdz=ry$YqR7~Mj*M6#(| z)Vt}8?Jy|V90@sc@q)&%g5AJm7L}``0L4LgHr@xbTY?pa)`7+WPH*M^Q+78?8vujr=?5J{Lx-V@@P1Cne*CJ2vCb(1zL zDuUi`M@#LVOr1#Z4Uutw7!*j40ds(Oy*6X+ezr!4 zphUHj-XRga$Ht)Z~>dZWA zAFo)b?o9r_EV&qfufWh7tY+@2I-#zrB0g~I%#+TG@a$u}NXO;-#|`3%hW}3-&&BU; zHe1nnmG%2l`SU;I@4_JMk56g)%DES}x8iNl=f2~crT3xJa=r#`m0Pxi3@X1Mw!KT_ zeF{{PbsL97oCDO>2?jzZb8!g`t~v|Myv*A-5Ui#ObMht%cn@H!Jcy;9po~|Qi7OKVta1HZ4hXUhwQDql+xfJN>zjJm1`S-l$qB;YqMT8CCE9Ao zGkkp+J{TtjQs;k{2BQ70P_Qd3Aq@_V`OQ@FTe;#~V(ID>x)N?jZ#!EL@D&Fc7&z_Z z;Ep_B=`$Ui+;3H3tpplF01?y+<#QgWLP)Vm-S^|E=V5Hx}mq6Bw^yUqI)b z35eBH-r_$I{|dR?pHQ!2iAT;jjwL;ClA{nz)%-o^63pm$#)Rgi#O8h3z9Lf^-tOa) z3aWImS!?uWqN7uE`(RI@Pdv1#vnJfp+{JMxE$3YL6_l5cvi-ON-_0r|b+|WZE`mBJ z24xG0^?OiCv*@GzJTwG%CQwCA^PmvAv6Rc`y!C!;i?bD4O1mpdS350H{^lr$mbF$= zrZ5;w9G$)~e3^y)bHW)m*XpW$Re!pI9N0loW==0!9W1=^4C4J+o@|C~yes&TkPW8E z1KuIGS8UfeHOM3n?+(rmxdsh^9HfQYK$SfxG85Fji^(_G9DJZWiDS0Tw50_d`{=t8 zREgI}Trt>32WwZUK*P9PltAD+st4>QZDS51wDsn$b zYo%vr%UT;H_9ux0acH8V3WO1E4XGWo7TkI^D59w**!j0u3k!x1&L;^Rz}Hm{?n;Cq zRGh`J(Flf1+$lD7OT(-PcIxV*=e%r0>~HwRWgxQ>%#jO1?uL^FfPQ$C+G+(h6IBLF zvNMUb@%Dy^#d&>svWBnkw>F9YB8V^S)rKrNp$8hY9c8SIxb?x#q~I-7T`^41s!cq) zxznl!qfmgyL%>xe^)Bnxypm}XU(`~DVk_*@ssWkrJCW1P)J`0DXT=pI-&krjxvc?9 za^Vhk3gm##lLzd#6Ere1i$>5fC<~#90Nd&`CWc^HE{QnZrBD*qqdJe;POB<54kwUc z#_R);rYcRi0oJGk9JKRV$d@B3VcLlUA5&Eh?6tcDR zML-bXT&qG%5kFmQF{#VPPg$QvK4KuuN})?;qo-mwg_+9oUi^pN6$x7}`jpyHKxRAE z%SSl*q1}62Ct)aaB`A7%9XF6 z%Kt6reqm-%$qI!3V^A}{fpUGcw;VtEJa#UAn&b*1bg3`e^aIE`IIaDz;lQK+Mnf<0 zYWaj>UIO98qfdjyXV|9q4=yEZy_wST6763+1hI1 zUXGTdh>L+ael~BBA&OjCWZdkfYetN5ccA?+rVX6zdc0ee4uvymBxPuSB$S*5QN&pk zJ;V&^Zv-&6JH9g}AiB~sfNgoIwkoaIZw9MOj44g$)>MZf%OXA+qiq0^R$`s_S^#DR z{X?Ag`+g_Ue+_Os#kxeFnx-8)gI#6=Swb@&Rpyf#1_$b&*m40JjsZ#5@A$(JFXu5hB0$sGym(3LE(WiYBkd1k(tjD^S8yLbfy;B&7|KzN0D^gam2XuRAxsA!$>w7SQ9*4!* z=*O4V)^ZWAqg(D4J#~BIPxnbv1<_nr8WWDtm1pn^`tt??=sJ{b98Zs|S!Y{cx7lB{;sAwjuM*z4KjGP_M~*;&o3NO1>cEw{mU+4K{1T zEa4Io9m&y(-T>;AD#&5EjS4Ur#B3&6MVXO#;E$|QkMw5|QeZXAQbRl@d*L-Ux&6_` zkQ<`B*vwd#>zC;@2X9FA;RqyV>1$GK-+uwlavDfBA1Atg-h-XgY2B3xd>_XiOyzb` z!uE#?x>2{LAHx}aYvI~wJFD&bla(D)>@49iS)3!BPl0nspK18}uq@^0z#(wSi1Z#M z0k9NUohYj*o$H4>a5Y}f>N`nUD(SWTEaQT-JG#lhoE=b1mby#LDg5FOTcp%@ zJw}A>-ds2NZ`Mt%g)U1mu4{rAC9jF!Jy$lN zvK0yKV<+p&6;t zctkGmeP4TUdfm(UTie-Qur45-{z1tDwbN04>lCVgyqchkI@N=PHX)Z}(;x?$OU4&?8FPIC9n7&t34wp`kRu=$o(i z1Fhv3G_uSb9vYW5@h6}N-$S8~LwdcUt=e|tdeW&ko|co66hR^pskh+xj)n^TCxN_w zqxADrhaCNZ@SvMJne665=j|v5Uz6-Dc9gv9G>eK0e|TwYH-$ZrOYaR9!AJG)U0u3{ zo`PWg6YMco?r|#+cyk-aL`5mxHV5{pdLN&OeM@<-(&LoS8(<* z@^MO|O%s(4Xe{iuC?^+@sdr<(Puxsh!XLkK%To?ovqejCQg4Phb|psomvrxGk&;Y4 z+rJ{>A5A1co;*0(*9&;LJ~=gZ9CzeY`(24U#oftdz)WlgBG&S@3faxi!_?nEUc|TY z3W(&%;s(m1C*fZGk5=E+{R+*m*F%$0W{aGkc9V2Wl3LT2_L}06;6~fU*d~)z#Kf3j})N8muOU zCM=0VaNaA-0XannPuIyU?nN+bLA8UqE7#Xs#LYp(*vi=6=ym8i4MoEr__NeyaJ-SdorC;iYzkfidHPif<5>?CEv_dS4<_y7L7rdS2Vbd}VJLk}8X?OcRWl)TU8Ti)TfaTOjV6CS%wwZtFU=Ek#a4D;s?5smWS;#T?)x5$eUC8v$~U|s zh?g&a|M&MiU@!>pkp%@Yz_tg0>-`Jstg_n|*H0%?8Gj7wajnyX0MkGbFs})e)|nv~ zQ1wf}F)adwrd@e}!Uec;zN)Ff$`|C@bV8r$6emd}PNI6{H4HhJkIp?ZpxBjx(3^x6 zyRFmzYY{&p|4mF7+1)WjzDqqn6tj5h777vq`H64dqULb3?~oaC2o~|d+E-11W|#6A zh2~!d7n7KoF*_lwBp2*Mr3o^z4!s;#>ZZKmThzPLSPt!v)H%Gf)+;v=qo+p|*dtLh zksdlBDBXzDqIb7%LrJ{|aPyL?rvYRF+i=wn-0_I?AI&ZXy7PKc#@yL5wKYATIBc@d z>8Iw#p@E*Qx!IZrQeb=gx2#{XOulbb;#iH!q^g(ba=o8{_m$3qzT1Cmyd)ZHP-je*_cuAXj@05?)bNyiQ|8DQ80X)+g#p~uPHK%xU+ie5Bzxf$dR z(ec7iN0sCm9|EctI?TQeu#I-s_p&|0)VoPI6u+GXk1OrfFI?$9N*3;Zzx;Tr@VPYd`EH?LsoMP232!!N37L zz4nJVtzNGHcyKkk?+yI`0Hv!0N4ukV&d#086pEOp8(szV;-Y;G6nlk@G6BM{BAQ(t9s-jhG))|x;{yvtFWD{mp&}{-BVFyRs`9f$#>C4I$@}E*Stm_`}CnZWN|5+eN4^~ zuU|addBhgpk>+z?=Xsn#XT$jU*u){G5~fTA(bdzV9AZ7Xk6wzn0jdf5)*K?|ynC)N zHadlqXt5&1NRw?|_1|@#RFu2NUrQnpAhNMF*RDy&ToekR8%CBY%G6f8HurX^4aD7WC;O-q z&)#PiA})vaogFE4ns)^GfL{PqZUO!}q~ionG$7O%58T-hp?(Jk15&1=%H+P1S=9kT zx)Y7{-QXhYP?AsgKrA-t-jGIXjykDK6J5||84ii>Wvxr_yYMG;F={g4o1}2Zx7XcK zCxEXXc7b#yA@-5^fS)G_5bER|=vzU|mahJ&VfgKAXz63>RNc@_gYODfK{OMaY4*yB zi9Vhi2)&*(19?E0{lRXbLWAHJWdM}0=ln8v^O_esRr!M>g4)z~1uUOI$P4R!aJ^x-=a$iQ zHRtX3z!LQVxDvk{haA!oG4>M61{;C|9|)I)P#R51@Zx@<$-r|pZQsAHn@#BKogyV5 zYRlWT@vLEh+7lu=OsB?|RuzAVL^-PLx0+(6u7pvhr`A19YU8y{`V@tbeCq9FTO%(p z`I&&IZSXSv))1(+pe1TuIEZ2vE${g3Eds;?;+q{E&zTu$ualENM`n<7Q=xdo^y(Zf ziU}UegMcv)-Yr8q9Vle;i2Q(J5tDU>QW6U#qQNx-LBBQIih*K*!L5bqim(=5qnJ3I z^U;~78Utdq4(uEJd!w!(`-g>2Ytvo{x;bD~voX-l1Mf5n`Z^h*yF0^0K}X(prvP)) zF)NIx_~0Ha?I(!|Svb6#ENNSdi9u51O*fsiS;R}C`+%>b@I3A%;AO~@mYjxS2=6`( zK&^|Q)MATOmoj6juDH+}2K-YvO^cz$0WsJxge0bC)pH_CK^YZ<5L(i><-%E6!4jKR zKa;(G9?~89AHi81+n+_*NpWMV!v{)m>&GW;C*ac?U-c)hS1PoolS{mjgH2XeIDfTi zF6=BX+KeT$rKWoiFlm%0!=uh0Ja5sc%o>G#ZK`<+Bt;aO3t`Z6W^7Mb(-b=l)Day^ za4YYE+&{BYO_JkXhD(l)c7%S*-7~J{xY`Ghk1LH)H_2j(*IA&~1k-j>R95C=ah@s^ zURWTO|J}Sg_ZS?CPb}X4WDH8<)nP0LyxQcFUvpU0Z)nm5a2ymY+C*q%<-EM(IWh#3 zgIquUWW#!KF`hx=6ez5AW9!H$j(C%mtTnq{MB5(UEf|e%&JK<&D zeA%pp;DjCyz#I;(TCwv!v^zde&s-V3`FToA%NKg@CgUXMvNdg?fPp{qSAC5E$nQzy z2&vvn^LXqb3kJpzxR*u*ERA1s&I9@d4d}C+zCdod{>uG&ZLk};t9K&03?ci^dz*#J zl}<|6X?Z>UMtKFdm0A9nJXljuIC}?nJMM!EiEw^RTAQs$+R(d&u6Y3JB-Ww?Jz7 z-Qk|Jl}m2la;5_+od5y`{NDEGPRO{u)i{Z!tllA5QQ+B55pBh15Ky2}i9=0J;**4m zw!F*1og=V2(Y^S4NctuQ$rAHpY>LK`lsZ1OQ86`t6ONEOQB>$|J5g?aDupJ)x?-8% zR2ld3l^biS1TsyJV<|kdNl%E-FxU}aqompFV)hYq>6ZI|`1>(svINBYHW;5v`vWiX z#auG+pZXW^j1AfapW+Pt?Jk<$Us9h6xaqc5+ufYnA!*N;hKCvAuniAzQ+BBF*qhI%Ar+5G0rV->zOJi+e=rxb(L@T6&II~vHtdczV|;iwb1(pA z2ogdW|I#-qav-`O&p&fIR&A#x9}>eikgbjjVb%+XAfLdGacx1bLv7Db-FSwL#oevG zr;CuBA*rynK>$}s{|0_1rgdgj+PPtdeg8*KPO+!Qd;;woK!&F(t}knS3+|TngO{#? zBrhpuk5a1;+hZ8D5^-Kkc6%|2>TJ16JX&p%!)eo*G^$MYt`UnwH9w9hE}(Opt6Ou6 z*!$dB*VJ$Jsz|CUx>K58*FsQxHG$NG24ri}8#@9m?~bGu7yz$>ESTddxeF1hL$!kHV0op zy?Aryp0`M|vCbI?*y2B2aM{E55T0yi^aT_o;IGG)dyb+MVz95u_cI9Sb zp2*WQ&CRR)F9V%gyZ3#p6J(?*6wHKO=ul=tgS*6{oVjWWQ(`IXPqdUS16agcNz3js zdYE2hodb%6kj2;rTYW^Z2?7fB;anVQSp1C^fNSwwKOR!(B2t4y(kou0F$K9_asRC^ zmC66f3(Jhm80wJj&ttu+U^^pB9+@UEGF%_3ER0SHPMjJ1Xgah}7>T=;(R0oDHW+W<`EwMpAvBh5 zP8Qc1`CBv{_{?sroQFsyWyj-id^*$dat=w9F#FH15n+{KP;0j2N*21v&J_O6X_CES z1`DLMn2C;;X2|Iv1k&#scK#k4qUsV8eEgZ30up)=l8gyg!3nWjT@A-Yc-9yE zpsG1^M?o)Dw6J%0@WoM8{d(|S3{VyUnC5gHyY&*`(6fm`6oagtvcy=CGYr!OHUl@0 z{OLkgIGyq*-f%u?Aq^O{HZ2p05t`uiiiwWD~C zsg_0~8Cbb_bjXo2R~>e@l-;v|I&%w@@F;o zqOa{|yG)>#Q_56K(~-WEeXK}%@@jQPV&AIlNU=CBm@*aP8r=NUh8w9JCThjAN>wYw z<>{7M+CmD196HkP$OUq8%0a0i=rwm17*5ZH3@klO8}%s7Wrg_e3S>Julz+J-FPDCoAsFXi;lkNf{Zt+}WKKo7f_cb+C5U#wAtV zpMo*s5>b!x7PpMQo^EhB3$xl}I;&dK8A_0=o;)B;cNR)mFezRy9@STh9q(CHHDSl6gOYHT*=DI&^q5m%rCl@ojbf_oPZ%EV>Y~<&JgF z)4WR#USlcY`z3mX?bNtsv>~r>nH3*!HjbL7JG6bft+CmeH~m4VE{21`N07 zIbi{me3H2Yw7DfyhOq1;?d_XcC@$_Z_!9|d-SxJ1lE==hoTCTZ%FRR?*~uwR`0yCm zy%X>eRm6nHSM{L}@^S+Ti_pu@7G7#9>f7j<~VqnnVG@Zka7XM?u-hmr1D!V z>>A(sej|X#@b>mxZtyuCkX1lO-gS+FR6Vd7=s5LsP1%6lf-&QcD*I%V8dg@@i3RKV z(_C;x;#4jxOROO+?wX0%3?w(M#*Ty;R2*JCOthl2Z;5YsR0i2qG21ue;3+jUa6ppE z%IbPnW@jsMLJHyM=gFM}iVtt;tHl-OWBD#?fE$_c0=e(6_)^V(e{FBs+jMl9EZT{2 zxvnO9e2F*R0KL>t3uz7 z?s3VE`RD*iZW+S@W~XC?Xf$+{RdFAl`GbWH5X-dFKrZyL?E{)@G1nR5kKTSMP!2fY z{U|?z*}Mlac2CTX4v!zi{Y8sdfBt#UN<5yn@McEH)pYU9w@3OtS71PDsQRw7KO64V z4RE40*W*E6E#2t_4pfi{N;~uhS}w)R-8t$3neVOZVBt6FsbyNd>z^E<5;+x_yQp?| zHQP7~x0SJ3n-1SgPoj}g$>aXgd#z~ZVxE|c-lfC zP)v8?_&DZ|6=XD)V_0wA1tQpz2C_|L^fTP%wxNJSmxcB znMw8rguuhEq_ox@x`9gp=l_VY0meR;-*s#B`Z!)Z0y-(-lL2;w^FhO4{G zz{IW&xJ3$UCBwhvC3-LsRcZs{cdsg7Rt+*+I;Z+^o{0Op!2}MdGP;_{<8H0@%Ea0=AA>hmmAXKs z>kc|k3>&%8V-T3o-sWm4svO_)8{f^pje)`awZh;<^IZ^Gg_PcS5iJu`p$D5iWv`5H z#G{96Z6y&HPfT&86jhK5L8YUr7CXfixFnI|+BbwabK6@Zm=j>5}`zlag|R zdasi>JL9A0)E45$TtKVGjLEvH(j%Bifqu-9LE(~1i&}eKjQH4L`}{$R>K7e6lLGb* zJDtB}B5D7wrL0Uez+(o8L~=7>hSsgsY+}r&{s+@U2ZZ#M5?t@vt7bOE-TJ`?37~$e z(I<66dNT@R6TGkzd&$LS4;Q&&JZ>IBE>|#A6CqU1Gf<}#*%Q;+m*`ORn1=4~@m=zQ z#!+tQ_k?a~fM4%viI1GlG+`sGjqP2Mz)G3>GQ&3Io2C#L)Iu~FS5y|CK=pfn_f434H)@}eE*(Lw zVi@Ns{be}w+|1%mG{x}+NP#qok^tc+@Fc&HiL~K^!*yU5(dL4hJH>b9O?W*Eg3*As zpso9xR@hIc{_zB}$*<>#f!?rr%F z?Tey|RN1)yFd>U1UG8wvWWA8TByLGU_KpqqI zNmGE3G+qLn5mG}UPzai&J!{ZFZp#+@kK1ol4HN10qG``f+Zn!*(XpN1&Mdz*KQTFW zHiZg8H9yo|+SlYBHCiQxwYboEo1wDD)IY`Fu}ztQGRrb9;4ijLQzilO?QAsV0}Ek? z8%Rl@2ia-^)M%a@CZw2aQtWYcsZI>r3s}zuai$6Y(aq2rrUHGoCT+wbca)*Wss>}H zmR`2O&7;U$1#z%qd8&$`p{qj!bAC6Cva}K+u3AaMUJteDowNtoSpVVC5Xf+iPpFyR z2Ak;ALifb{x8P~E$Jg~m8$<98sk6xufjk9X@*RA-;P3@&NAde6xyYtGDP^l(6-IS( zjIA{dxD_P5c@*R|6mn-{!3t`d<@N(0hj@g2qF%jZLmqK?It%0~ebcm&8(BB+@{e*uAOoYLfX-f`^E9 z=_%^Nj$zjvz1^N~4~Ngm0-tyKp_UH2;rK*XE=G-d% zpj(Z=o9T!OPzTe=+3Jt~+y8$p5Ed>x2o~R1W%o=!nq!OXs*m>48?Da7q&F?mCLsN? zKjBLIYwKi7SXl<$@Z^j=odwJOgG*b7AFU?09h0AjtNJ^OJ%RiZlac-U!wy5nF)$&2 z>&YOpi!nQGn1vT=BbmL*|A?P2J^Y3dhs+2uLV>U$Bw!@CU~4o>N!j@DL^l8%j=)psb*sI{OYA3UkA_6h?`-Zusz!Y3c{J z&7NBFi;BR_6mq=QHzKmNU}kK#;>1W1{bCMd6X)m3qQ)UM51t4~SSRFxH@nN4!&D0W zL6mu1?Ld#ARsC_Lpqym5D+9gsR+$wsSOq$5=so#fG1dk@HxR;$nT|zJ%ii(x-`QFp zJQV>{Fuz~NXTIsPv)9>glWO|B!N!h0Ap~~O+xwKV-L1?#FdAxE$U&oy`HCH8ol^e` zzcq@*yqJ6^Se1QaKVMXN+f{I-057T1<)5LW);1)H%_5;CbK*Gfj1yT0M@zH*TNh#q z-8le&*3O3?sq?-j1nT_y$-)jN1iUZOlhW%ysP$+3fXwjYW)?|0&c4{x%{c^{zdBL;qg* z&_~(FTH5gpfDmrFRpUG}6z|r#9!+%xB>{p^n~@>#L9!Ol9RfbxEbA(e)^TlsVq2NR zp4o4l#;1bh6?Ua9_@|&h)pMMCqXy@>v};vzuS@ z{31J;NJe*J_iwW)Z7xIcI_jVgDtIRwzKmdx2HW| z2k&0a)p2Um)V#i4?4nqckDxc3`RUqy`Yh^%9{Tvv%kuPHIMoviXw5`zFPXu{NDfMC zeY|jvN4yWDuJgoHgVEBpVgBhpR$qQ7&#P`c{yv^FzZPaZk<_;0M#|4OTg)lgMf|~! z_)0z2iS<`(0VvdwMLQ9^JEj;rQfj@&pU*K5U$G6c>nj;+I=E-8*VBdbl|{vQ@C9p~ z;MY_ak>nV9yEUG53m7m6a~~fjP!buBm!bd2yVQ31rus8{##&@?#-$gHT;^1Hljkx= z4jFtkF3vzq`*MAbS+9LumHBQNBdl><<=RpbGpVNEq47ax0f&E=&l80dqYPU7D&-0M zfT7_X1>>vHG8{J7?M+=D&e1%{r|Vm#jTIZKjk!Z87B{Z*o8Eu8x3yY60EdZxlXW-O z^NvZVaIcz^s|hZl?}oHKHwwhK_;+_DRZQ-qKvu0r1z?&&EKOSc~lbI!x!2wc9Z=q zGJ>Mrm?$htkGSM$q;csSbx!X)qV*%5wlFvHqnM{X1$zUHn4Utoy+D-DfVbU`SZnJ^ z{FCr^VYaF?5V^V2Exyi6FtD}B$UFq|brejrzeKKg=^q%qCFG`IJ=>Z*$WY)WGay>DsG}Igz%(+;Miu`8$Ez?FDKT)M52j@bcb(0-voW=flt&{r3BD*#PoPJmHG> z(8}%?ixj#bmVeQ-AVx=`zRmfIP!#Ykla#dsM$3LClj)f}Aj-)hd7jIag9PQiaZIIe z1WfaO&H1o9P0rGcKPpA<=^WE3*H~< z>F-X!lYbpMUU9d5q0yOLw>1q-mfd@kUc%(Ynj|fzH&rcvG9zCOhx_u|Vf91dof(cj z!lc?}n(7tcChj&#-+RKlJE4hI3uq>C4g?*S=brW}h{%0aP0U8&*X~tQO{`6@*>@(J zHG1>rajPdH-qj&;z_~onCvpOJ6~l=n37-~WPor+n5;GWZ(MQl^E%$JF3ZIQwLM56I zJNu#TSAd@gZ;f0TH{Y{6K=c~;tJcR2R)xvjL|g}kigbfkw#@|~5mibHJlSH;|@7lb9j`^rV%5%c6dC{Ph$=fccdFR{dNZj4rch8{XH@Ev|=bH$R6yGNuX$HmbhRf!E%oNdOqwO0^x6;oLUa_}a!cBY`J0owR z>0bBS>tc$~yZnzI-Wq))arEqp)<5>Fk#s2$3%|R=MAjZP+aQMSWodGQvH{fu>>+|X z-V2X70_EvGRgzP9@pUOr5;t?Qe>d7Zpl@m4dSGN5Kucr(ZHzOAVp#scN%?yZXJgw3 zeubRoHR(gl%77Mg?QecY*BmoTzA&j2my!AKdRXz<;M=>8>PMH8B%4{T4{I=-)r{zG z+^v5;hy2D%WVA|_66^wdR^c#zNsq{Pp0GRp9rtMz-bQS5N~F_@8t;qz>LDp;?T`dJ zDZ~BL_hTnR1i_JK3*}$Fqs>k-Q5TMPNvt{d{8RT>2ye$i_v;c=PrP$PQ{lMxw>Nya zC6o*;%qI%+uPal=w=j}ITg7bo$tesu|93_veD9~2;!)rgb#~TL$_${ZIy(KlvbxGyo<09~=#e%%=1+*$uGf^3h_Is%wMm%k%>y z&E3;VU1_SZztrN!J%>KC+;nFf@l@Ke>p$OOjz5~DyvwM)X-rp%XLMG?qmMkZ4cIF5 zXSxWebn<*LF(q};wKm3~WbT~ zw@gCWxq1ObK`6^jE?G&ypWhw}o1DEJ#F9Uy8omN3!)k4si1ArugB z>QWirM3_YSKyrCe`4p}Ea!cH0T-2NFgZKZ_E(Ppo)sJ7g8AHZHA5vT8vbV++6qnpl?r9j6w)C&!r0N^&H|K?XP488LH~xyhwTv3Y zvqbU=#%fOYr1V~%{xp^&AW%bG8@i*b7k|;9rgK%;5I2A2vd7B*Gr9=~xa{kl74^mT z+1_Gk%dzy-)CUOY;gj26%=G!}nOm+pOEl>jyAtA?%zPs(@E*kND(NgU@?S_PXI2=NKe|RPx z+*`J*2;99_3lFoHN?$Cd!F~oPD7}B*jPdOWmvR878=^T7vP;=&usxh-)3wp~G{2uh zwwAlMb4g3nJ)00a_6Ksp`n`XC<5wcPk*kFB@$@z^?9TqXFD#YuvaoryeEg^v(b1uu z0Qas`)uxi4jKj^1uifug1~_`3IROm(O5b;rpJuidziwxb`w(`=TxABY-wiYIDyEkO z$Fkp;uY6T8B(*y{jfwiGKVIhyM=!8p&c>M)b~C&8-yWA{y<7gbIDlh@5UI_AFt%Vn zbM~LPYQ;a@3Rm9k>0Dxoyj+nhODKH67UGXy&hSJNglF~6fStc^?8f|8xH~+*ZhqPd z=5_Wmc*80V90~CJgW_z4?ddDTLDplyiiOlyJg!sh#VzUs9yofN;WW!zzStfvo)L|b zzgTS?PcC69X=XMv!JYK<`|T?gfT!-Ea6{M<%r5=OvpM*+e;wZsiNn(^W4!k$_hpba z&-6#rgc_P7AfAN%9w z$$wELK8LcI*d?+NwPyZmQbxfJhNf}-O?H)eoX>k=B%)hbK-|4}+KD;kYk7ORpCSQK zMk>YbB61gU9K6s!Bas%h;+J`UT(%j*P5yMK>GmV?)tLNd>ob}VYt5ga!>fh{#!Rx@ z5CJM>B|jVS>BP@h1JeAN_VMsOuncKx$DmIq!?P9D)JK_C0?2-j`*|X^T@vJ(G-CV8n)FWP z>-RFKyBC-Q2D61k$FNl@f(-0?6C0i`R&OuD%EBocaz#Xt6GJN`=c!Loe!flq#-gha zDdiUbf64SpDSG8?>kK0M7$k2n$=2dSaMS%JNi7N_9gGkA_4f1$HC7`tHyvH>{rKx< z|F^_7%Vf3Zr~t9xU}AHgPKH<69hl5I!KYvth_|Aii|RD0ldNIjPnObp`rmTbi}*t8 zrXM92kUl;oR!bt*>*4%N>Yg!jIR-kY_~E^~lrfx~PnKj+|1)NKKap)&Sj>yxLXI4Q zcyII?Smak1uicgG=XU?NtqIqb`^nC{WV$fQ`*+^>hS(BAd)9n_r7E@9){=XqBBs7w zM>ZT|QVM5QseFQz2U87%c!s@T$2*e^#T=)1o{9du z@g!9CDttKkFo?ipau0f0Szf$|Cnkfsuzx<+@zvsh9{+>>kBJIm4~K`oX^Ezt*$ z4Z1pqr`ke8R(kfZu*_tgaD(e(!_;8J3J z%+4B{%ys)&SBV?O=Vn2k*~|0lD{6`1gEz^v7n8o02jJxVE}V`nRX&OnApV!>0wwl& zXaiKt)mwOj@^>iU@HJ@-r!t7O{8K!W8Ef`JhO`@DOKKpduTe0PjQXGBPFOPBgJeQs9Pm>V`Dlt9bV(#fPV0Yf^$*G*SK>lAA z%O20w2Lu&O)rr$9e=~V=TKaipJx5*Wi(eh!56tbOb<4N=hudluts9Sx+2VD-?*98n z11B|7VDv%a3Ar`=Vz~4wf0cBukF!zio5q8r7XP}wOsCZ5OzIz}YF{Ye`^f1Ox_Ie@ z&nH)=?YdvM&9jkL<7f-mx1RtXl;Rm9z2Ge}(cP3>3+@+deRH(pp-onD1u8h2_emQX z?dBV$)IEB^$z$(<@WCudN2#%B3Vc%05mER;hEQw#!(JAeIYDA6Ydt|+HlC7LY6D0O zywiqIeO*XDA4^)KSlg-i6FM*?QeB0=c*=h5*lGkU5mVN?gBL&4|6S*%u|K}&t!86& zFtjpT@MS_A;Vz8K3e?kf_H^REs=J;t6?o>2;@qs5=8S=z?Of4$AL0t}hI{>c^=lk^ zN{7-%rvmluWbY_>X=V*YGMdgL+6CJo>Y8x*e(&Zq#;Ol7|Sla`IKE6--KtP}@dYkDfrW_yn!m^K~fC zge&T(-Kq|6GjU^5Pm%1a7_VjPHE=S*{&-C;V)-{-NlI}Aj4fP{tE>9|2+-=73pWMJ z{fUUl(Xo)&lbqwMHuuSknb}u_Si%h!ld%A^So$<{lYj7MGwLm2U5K8WHS-OtSGTfX zIEC=Jyr^pMLn00p|Lblxh*wt@x{2~aaFgpKJ^y}id2y;iJ)&v6OOe`J-Dm|LmN!dt z6KBA4PHW&%&rT9T5!muiA|`fYoY>*$jGnEIy`cz6xhl2V#3#8)`L!#5@Enzd-r}De z&XhP3%B3g#>~3rV|5h?+v?%0gdi2D`p&KZE zZ}7e~5a7{SmU)NVtfp?UrPqx^U!uk7=BSt==Xm%Piqm{CUVJxQc@$q%vBi{dx9iY( zyiw8a%?$ZXEd8^$Kd=dKDMMtzg(~1{t14?ZXg|)kKSyG0+{g*-y;iQ{ z|B5kJA5>>sF_xu!5`O;j=7~5Y-d9=#UkLt^_&-aZisj>k0%a>}J}0;4CU2w1Jee7B znYdIx%~2ln2wT(y()f2P^22gA7N+F)l^`2e|Mc6XyeZy)klM+x2?Tw3Jsz!27T0|W zNuU#;Wp#zk51icCzL-DpW1HR$xysKsu;hE{09e)zThdw7Vy*bS)U)MJWb90BiZ2pi zY+!7hI(v%(9MmYf5heLt{Lk9P*svBPiCNaY=MS&Jmram3trX>m-{5xbWMYoS-=XaN zsK2yW2*2v3tx4zkg=e0}vX|MYg?Cyxgj8L%7VoNOKR5nj{FHvGqLmn^y5ZGMPtwzz zXtD(3pLKf~s_jes@8^q&ZJ+oD9xLyYg;skGTh=1$f@;C3V|0$B3OXTW`oi{CHK_9gn4uh+kg3WPZA* zH*GlM$$h2f+je?COx0|`aCZSRfjc1iK4-+Xcf)q?Z`}-AH0TXccx5q2)xA}}ap}Vd zI-UvYt;rlY!0v#nSFFF0zuG&s8{|WH6FQOzGc@Z_W;X(b?O# zLbQ?mW7`X_!a>;|8K(2b21&a=hLNrGC64KWJ%$JFr*X6U8rC)VZ*+Rp%Oc3^NRrPo zo{mF2rp}r5ZU$tseK4$Y5Ad&+_+%4crv0j)hoMoN;vX>8(?>`$9*j2!@Xf~JJj23U z3G-|petTyt97_+ntTB`ywkzGKHyAjUF=kk!b66leCsfvO!KCIJF1x_?xX0R{Qvhsi zDdpu=`D8TGRydL=)p7kjW%t5(c`}?#%!QC$eff*#MiVi%2GzrGnE75wIR^a*-TsVB z)njMclg!JQA#dM;OUZ3W8vRQX(A(L=6;nlvY%Z27OQQGf;D8)!{YdF4^?_P`jq10cG@Ykh!V>uiGPYQ>fThR#m7m`?zsocsy(}xqrZa0>+Ba zS<+e>BdfMMp(uwR`#i68n7K(qlW9Gga*4M4c|tVuAfn%zRKda4^x)lL4P%foL2m4` z_|Ll6CgUJ)O+EF+`#)KenZS;+1KL{;p;moeUm+v{# zLfSu2hh?LJyuPf~N>IG{r~6X6wN$s7?4JA|iMH`vB@nk2;9ZWpT7nLAk<(5W0pmCZ zHxwQZE&=p>`2Ec+?12LS_U{4Hb(zkLJ-@mo{fp`W3Y_1FaeZ|`M7P9*rCbWJ|DkKm z*-&QyOF*>0!dquphP+W-?0h^3*kU7=`^cWA@`E6;^BVO=j`v6F8$=|%3bNlmE0&Ju zy>2jr0g`IJ*ID3pF0GS4+B#l&$ywC{vG!}fL{;{8>6T!-lgF7OnV%;Vy#ES+XgOc{ z)=k1;4A!k+WiK~dRO9Gv73D(YX-T)xlO-#rOl{nlPwLyBxOG&^SRKzev0 z39*M-*q$AR-M)NT4jEa_q08mt3SZEEzkvNYV zfj1hiYTu)J&0S7VR6q$zI{p&gTVVtdmQYjb|DmI(8=IvcCg-z8bWJ=x$Te<8V7%oT z1eLdYg^V{I&0m|F3iIMTxCdAdB<+2R87*q@Abw7YoCOspbUYQ3U(Z}K|A!4A@Kzg< z_OL>dm)Z3Km||;|1tT}Qxjk5-lG(MM({OObl*riohz5xIK9YMnQ1QuX1HtEEY6-Di zzxHQ_?H@rY)7M7+2VOJu&|*nRDhHXwc62XGG;;K}N3+S@4Ac*ny#=4>H-~mjDVP^P zy~*c^&xXJvs--Vt-Q?bQA*k_PaRm0avSh2>rd+4ZB4$h&y~trsLO9@(&5gG)T+Sa2 zQWup$Y+Ry(w=WWh+RpIt=}dNS#(&5A7qPX*%_=2GJB$rPgGQ9zeqTr4>|*PC~!0C@4f zhDd9O4ITyqd5LJOAYm_J^U#Jgchn+O=eOlbx!8rF?JR zbu(6~v!@Avz9~Q5`5v9bC~59}5LhKjUar2W|IZt~*S;H4P6Tb&#Ff|@cqZW_T-9xD zLgs?t?;3rY>r6_ulIvYNu?{Tsz(tPI*uoo=9*wn!fDX5m*%g&R#CxRwMcul+ngT7Q zRJ$}SwZRlBnVtSFx>E|h22t3WiV)YDU%c0juDkUJObH@|PQ1iXQ)-yX|3}ndIq z2YQha879MIMtbivUq0{Zy{cEfs;jztrh8_3X4p$|NP^4JWd#8`hynyb7eRooIuQa^ z%LSL@a+kY198UL`?y2r_UG~-U-lX^5XLzgPX@NLKT;d=2ecy-pBjR$f)z1Ss&Vbl0 z%T%;50XxB>lw#->(VAYWf8koJ8i}oxf(a$x6y3*+)~I;|y5;LP5(=u|%_2U&(8dCf z#*O2)WAt8J26%e45Ul+9cmj4Sj^#I}*quDWSzt~OBa@ZR#5C1|Wh5aQJ7(jV)E?l= z^-Iq3wYnV&3>vy*cV>cB?@f0dh=Ja`EC9V1cC_!MidbprbxOeQwJA%B(i(FYAQObb zK$0*}GoTej(5}hxabRLZn0u66)_CLy3nyYl#m!6HC__3CA#JV9p2Fa%J8qFD)&On1`O z$zIBM>S0z!g6!(~ZKgQ`#t4m4sRd;ueQ%QgA$hKJZF~Rp-}eGpRI^ctqWGdc#{OgI z3OVqGektVUt}Od)Mj3C^9FUR(PyCO}sh*i{W>6y>-Fn?0J~}LRx71(PL7XxHeRz7m z*Fg-%rWLOc@`Vvl6O(FnT=tld&LF!3JL`qRcj0^0fbrXQvPXHarnq2JeE)ib83)f_ zpiss8p#c=sTdOZhhqvuEYQ1F1jJF=jTD=FOBzOfSE3w`LvM%*s<{Lg`duhHH9P8}b z-y6jQ6-EnTsK87=UXC;Ip0(}zA!cuxqSx1jw#)ZH)q+GM_U?Rvpr@d<2 z+Wk}$d!lswG+8$uFm`;-oE?^(2yhCnupG1Tj!WFD0nPU8IMn?ar3&8h3f>!c3yS;^ z^5Erft;})G=7_eO{ZA&eW4t{l54Cf0lGG~^^h4`~9-f-&BztpDqKD$!YM@OxZ`g{9 zBTFz%U!{LT9oP+TfbPumg ztE1K1TQjXJ+fK&gR6XZ$Fc;U?bz;y&K}##I=pDJ~a5rwYZy0uWbvqEAO8YC)T~lsz z7^Yunu1C5QeqO>h&N9@`$)naUCc8)s|K5P{94W@_1IsLOa61f)*O8RJpXSSzNAZl> z#5gCD3z_sYMJkem2CZyDKZ<}Bx$d4GZ;)5VYxaI~Xwc!3A1Kv>1hn&K?$a5S3#Y-=1!eg-nR%ik-0A26$#Tx09^p|H#$&uw6cO zUGexvpe)X^-5zpqqu{f@7}qI?{-5Bs2=|Y>(bq|cJMC>`SZbCs{QJ)uR%=Je4_=Y7k8KnC^7Ek(YrP(8L#^MWo?6VQJvPT z5%V`>3+k|nY&jYJV%}#mg=Mmqb(jhCZKEC(fQwgm(JW8-v=FbO#(IUmt+G!tB^zF30vML>41U#ed~M7 zd}a1VdUX00Im^Bvp&kPDbaSt_fA0*N4uT49$I&I_yUX!KHj)EeUt3FR}&@*?hIS7m-wi+87+oVuis3-y3d9Ty^jIwWZ-Ku`t=s%IcX10L1pMj z8r)$Xj)jxA_FF$GU5pz4ThrVj?c;m}-wMphb*ZLLV2!naCp9x7<{sWOP9PR&5IvuF4d!0Wx?cn=#>@5EwP!_%Yg)#N9~ z&uW(KbI*}!{%S*D1P%A9C@tevV_SXSCAUAPY^BLsuI^qs6`LZ`o0<<8jmEQE{X*k- z${Hqzc6rZDWBu28jC4B%u6t~sm;WBnxsN}H6A=&(Zd6TnABtV~3cn}?gP0vBe!}#g zQ|Df~g(e3%m+|ZDF7gfxgk^{tj9iiLCqnqRFf#U$>ix(ncVw%!PXA7u+ z3Qau9zTvabiJ_p~MV1Q4**@Yod9Xj8_1zmHQ*d5ch3u`_?Laor8Ef2^qT}#hz3rc| zp1N^!^TuijH^JdN7MN)%a}~1Tf&$N$z8yybI^y7^v2Kfia@B==7%#kgpDOhD$6DPz z`zBM_aW+oEUyE4ZwOsgFHRy#a+&-_vx4O`?%bPap7&bz%-61U2{YHDWznC`F++0i< zpQ3Ae0oYv&awTg3FgC&}Vz~5iI!2Z)`X!U5+)<|eT*M2crRp41HjxoI1bN70WAQd& zGW30%)B~-RQs2C$@o#KS)7wCiSzw6fFvs}@iKEL*ROG(%k1!eauJk>j&ZxdrtqM@s z>!{jYkUrI?zMS!i2*U zFV$hV?GM)LUi0fq!74EQ7l7N_s86=svTa+do669*$;}RilEmsb>R7i84FgY631lbg zxb0hr)pP!b0vXCU?v8v|e0D4P=TihbkV9%=ZGm^)FB~P#+!qG-3+CT_r;b^f=WMRA zj9~3-X@@Z6^ihbKrS}r5}w2c$zkT{{d_88+ZOfwBje5F$p>m!+xRWmoD1WCY>?+<}hPth*`KnNRz2C>27ns?@(_Gj0>Oa8Vu*PX-icw*6TlP z$R&guuQFWDv(ihaR9pq;uFQ1Tl11_VG)TpTQ?aD}b{x4!yTgfEpx&O)mnMA61Zc5q z=Q*_Kt3<-@TZ5ThU3FMH(%#E>yhmeJ1c9UA;?c!Ef4>I4)>g>y-+4=oWX0!u>%bPf z|M&`TG|TRTfq?M_%k@eh*-A9{6`8tl=h;D$+g@mgPt}Fbq8D|&X>=B59YptpX4{7{ z*}Fwq@wCewI&EU#zHJdIta&0=PH?L@=|B>bF$l?vd;8Mx+LiSPIAhr3cA3-y%PcVz z=>VoaG!SF6F!yYwFi1cLzjg%0-_m$!AcSVp6U9W&+-Jxu=He*itKH>Jnem*@^730s zRT^Pe}>l6m4a>;u_SF_iIt5%=q{25RRj7=N3h3DRnQ&-UFsHI$B!RPxv zv`xKCt9IGqy1Z%+ojSTUZy-qxWipbUz(uSptFq{PYJWKO8z@cvp}lz))r9mMN3Zl8 zzSkz=?pK{JCI_ATBB;~s#Fnw*ii|HXH{2$Md>Iz)nY0lK4~&$tZEg~m@2?d+`q;Kf z^bT2ZnLOtW=;p4Sty8XwUFkq``fPEw%Tr(_1vM+!XPpu0@BRe36M0LT$@G7)OdD>~ z(q}x}KVJivth0Btnzk15Yj1N_L}u4UZ20C)eER9{&HszS%pB9qfAtPA43USu{Dc#} z==F&2+VK0po3d4}vr5FfBhJW!H%?>eR(oQk!`;#@DLVQWSv44=hAjFRMZ&9|Ve7k- zQR13UUVj;Ekw*X+-}C)3MRt{zYyR)$pd+*EcMT;E|2n+#mD9cuoVL2l>d@waSOPMX zO~_V|LldR=E1-h*wOHWQ0Ri<-K(HiKJl``L*KZ#AJZe>SdaUGec<_xn8&-NYa;?O6 z|11VPU-ita1s;aVUpq_rz|&%PWzyZu)URtnP5)cKc6-t_)@qsbX3{e`pteKKrXg(CBGtdaLuH zo$1p^3P%)_2n zKY2N`9kmlATDH6?qC(2kwj|nZIvJ}KxT(#m5n+&P)oX&mo2^=icN5d*X#TBjcL6U} zrowcDej|15=wDskv+jQfDWE95PDJ`s&0aJ)!>l*#(}rk}*>{{@+UGJBkTR7Ia*FS+G_vXG_hcc2UNLypw>c@1mUw--=>F#Oo-X^}4!&Jp za*@xiRqlY_0}6k#OEpif?C@~YK`GG(;cgAyvxTw(tEG0L^T@!}?r(HYY>>r&eGd4E z@u6<--0o{9Kdx3gpE4JZdwbU4s|z881g24-^RgqH0h%Zo`dsF}-FRL@WOM6&$Ar5_ za%E2Ny!1p@eR^Y-v zHdD3MjVjoLQD5I(c7j5tem}i7a0!WN2g2dG$?y})bI$bbUwYT40HEePF zJv>LWO-v?Mo1k)dr`U#za^nkUxqFc_oww*Kg#BNaPHw)Sc$& zZGVHlZi&Bnq`QV@)M(>!ROo{E9|nI^>T!qs^kdP2l7^UIgc`Y8WB9SrAop}lL@mL2 zEY)@|;tEx7Dwa{dwp#6Wj<2*V#fTOj5Q1GG@Lp(yHVrS(N70^7vz*dbKWLGTz8E~A zUkoa}PUxM_gXI;UiW<)yzt^*04}8Z7$}^9YLcrsk8ESK}LcniRf(c(K@_!eihe0yF zR^MgZ(Yf7*vt_3fz?p1*-ZV_2cbSu6u5hi}40r5s3GR>!WJnJNyU~RviH!OHFm+~9 zr}vG1p?obQboHK_Z=&d5M2Zcc?U6H^M2=6~LJ!Ot(iOhF)CIZ8y9`$2r>72z7CT%Q zPX7EeI*$a8V{Qr2<2tPMGB|%ZDH@YG)>6|$10T6^+D4McItLmO@T^OI{TA@swetbk`f1A# zBaWC|omB6tz~v-ZR5L09b&o~t}Ozvxnip4Xn|DwUAGzB+YAyr1C4 zA5NkF>9UNse zkF=Mb51oTr2aGgt+_)y`RIHTW%RMs_o3Sq)r@O<3>94-t$B+2n&_ZT*o1KS71Ag!3 zW-#J>b!wSdjFxDr9$cp1wd3f_eaFZB3+5nCeL-z(807Y#$~A-->KU4~=W7=e>FZyx z`A8<)vY9ST9oz@nJETi-+fXoyLgSFT;@p2&QU>+b^wbS%K44QJ_R388C)H_Jy(~f9 z$F4eVnh?W7$}1ESfnU1c#(a|HJW|b`)^gW26uCqjYSwGtf?8q5 zhqd0~);lNc)Sr;_l=G+ps3)Eicfv@hWX{`(QdHycRLTM+tk_$xns`yYTYtP^Z1fKV z_gqm;j`toJ2PPjp&AF}EyR(Q4k(UpO)$ta@+}S1Z_+qvtOc*%n=Bb9uax!@@(#}Eg zXzq#*tdsvVY$5+4p$HMx*?X+kU`oYq;DOJ06+}?g0IkG5|wP>am zz~|v|p^ijqBC)nn@sB5Ql5ru#Nz`5s7;Y|4O4e|Cg4}5o7EO~$JfX^xkF1&ETz{h| z8^3OT${K-4^fY;)&)j&RcFq55`^dzdbPOT%_sY}u@_WsuhQ8D+;i>`m+3ptlmsv-9 zcT?y45MX{EphpT~v;urbeosHl8#z$MV7%fiOa#%5-{h~l%w~~kRo%3#ka`n!X>N6-Z{@dy)ui~ zM;2~y%iY(|=5a+15P`ojjDR;d)9#;EW81lY@Fyj7w7Q>-d4=K3l%Mna?s6(HXe&Xl zH^ai(miZ)Phmdb3Z$i%D*V{984u-*sKNw+5ipX8Oe9;_FE;1SOUtWECyl77cq)0vK z>rB+5c*S4#b3;^Ri|FS*_i8U0?CLKmkx!!b0Gc)G5$gMlk@{6enNzeJ5Q)fa*emGu z(HO&TlK5U>pSVcXy9p}nx8N#^FaLu^>K(s#WBQrZ?JpQM3PULGzi3MSsp&axHq!l$ zFctc4BBnCG<6y6`hWGgMzbIkQYteZ5$plS90-fY))_8#ef@8JN^ovRih4UM0%VvU(E01% zI=p3QAB2AAr%k;N*n>}77(YT*a$XHHw$!0HJU+c{O>Z0if!0yE=K7slbibd({+eeQ znb%!H|6^m)RVRm&enHKH66z2h{Y^lkKSruk1ZE564D#c0&_KGX+lS4i4D3RTM>7?W zk7yiU{N?VTz2?}E2_4u*xrluTg?70J=X4BZMB6whhPQjGS-5rr)DSp%P$`NNS znr6Ab(SWRy(fl8Gmuce3u_p3E(mwlx`DK3zS+%cL)ck)k-J#sU%fUf~5M`56c0889 zkF-FOu_#!nDeX0Jcu%HcL8$}*_dt|j5VNkl0?Vmj=M|SPVS;Xo-AQTuSceK*NeXCC zH`pQv4Wz*3Vn2YzHqhbBChc<(MsH?X${>v)Nf>zL*aZ=Wr1y?U>nvO3hH zAhR%RuAb|$)`8VhO@<;@F%pRdgENZQP}Q6J5Spd>{;9fe=s5WGN_j9&q-RXuRB{#f zfH$3`P0!4xnwu(W$JbpU^t28in2qeTRqsiHf} zKy2+N)PM^PBrAKYylQk_je&=+oi>zmS?fk+IpQz6oNjkHU`S9;&}%tEzw*OuDu z9h$~czo-kjExBoE0BtyOw=)JN=!G4Ly)?rRR-;f!>;7DEu9bdp^++{TZs0+u}n*qFWT{;JJ zkpsi^z>Cqr?P>CZjYtl$^=r3)i8R0 zWM(xIaw-20;5qFSZcjxP508!aYN809IEHb{Tli70AYPyL*bLp+fmP&s918EC=GtQG z*{l`oxzt5D7*8`3siw}A26(vt^Dbn}^8HD!8D3xCMrTbXxT`s#Or4HF7W=QQhDIOk zf_mgQ#hAP!bN^<4%D6KB);W3Plk4rf+wkbg{qA-sbZTxa`2Vyxm14->9F4o292|Lh zgEc93eAtMbe4YrexUIi#0{F~DOHxRRlU#iJd@zPzC=IJGcyt2YvvPLS+P%gVJd&D3 z97X4sn4=@a;?1M`g|N9R*VU!jD&GrM_tlJUu2ds+o^8Jx3=8YNI)q(Ewk+h}2X>qWC+%%OgtO$HA6>UJ{O>=)lrdqVg z1^7)(GMh=dQKb6%;fDSrK)lSCkD-~V(|0apZaY-RDqjDD%KQIpxvF&Z|1T6YAck!l za7^0G9VLSy^7sG31LH8+9vaLqaW#vR#)ED^)Vp-~rJ zM|~lfu{vt=d+9*tF0*%AnJ5=XT-Yq()Ol;I1Z+Mo%2)`*hKZ^jehhr7pG zbx)dU_2*0;UtuvW*MGX^B3`sZ)6#%xI$LzaX>pgSn_U50I^|0>ZBF`xhr{D>esU$} z1>KjwX>>gLX3*^*nE^F0$XP26|C1rIFOT~MTsI2v2AymWoT*v`yaDjDB?g(DIYrN~ zUYA9VW;*oWkEzLmrYeR%dHtnHW$7>Z~(C1LgcF{||MTQ$9x8UYxWS*=U(j<+8sOhFr`+FwfpWY-h$b0&bZ^?>7G1 zr!_6MQO(2gy;5VHSVCBPlrNA0Ql~e+(}TqeEpk$_RL_>@qh^m<=?B|<1>%OR+NwT^KL9n=!c6;I zL1lk{C;a0|p>-ZzYDxs$uj;yc^iJmyApx)D9B)%J?O${dM|0;Q{ptXsMt91O=~P6X z;^EA)8qplgj~#%=N^F1J(z?;4J3C6X`Yez~)`mWt`|azm3QvgLJnL*al=}?%2J~Lp zeG}OHvW1GLczt=f)PMOs_bpv)fw)8+tph%X=i;H3Z~6y&U{3T!pzZ7fixO7WSj6Bs z{H_w!F06wYg)jo7|7?Nb=RaPOPb0@p--T}~2g|df(@t!W7)#2LDO~lI-Ctb$cUaT=LtUTBUd6bHqB*dOoquG$VmB`K=Jf(H(%)U3(&X z)!F@^2$0>GGDw?Jk;3!CfeA*^x#G{z4wZs>YXY}Qbia0cowOk~msH|1$q<_FVFq+` zy(O>VOKrz`eiVOqt3SA{H~Gs2LR!!|kWI`vMGxc4rPG zF#A3?JrZrJrOpP20YFT{y@03-b7hhBOyzO0&wSRnSeAqE)#K}Ox6JVupSc-i*N63y zm9V|Sl6oZUqca)}BB?ci+BZZJ>hWqKiq!KCIB^#khyMxNs`M;zdV!Pi!Pr zVS#?8w-CH~?Yg1wp~QRJWmme??yxh%p`DCjU8`mD%;#QAd_YXbmV#Spg8jTnMS7V< zbesqtAJfePOG;$rk0hq+W8SBOPfgSd@`>}X zmQ_4gu-81}#1bH4UWTUn*WY-%GX&rOgO+uv@<`6<-;*%F*#^=!E}11z;Jc$k3S(RC zea`jjjqtvvCL>ms?RZf^dWuinQOq%=cm-W>5of>id!J<{*NPNEcrNr2J+SE~bE|GE zW%sefpF$nTAi5P7?&cg6bAzhR9EUYw;t_snl73(v0d+f&Y&1b3zu&S=`E??2D9{Kz z>Qo0#dFq_Slmtn8(0c5gYD&Szg&pw@ZB8ElbmWyKgA!jj<~oMR2^Eru9V7XQiJ1q6 z3P&!l8^s1`&M8XkG{%cH!Fr^ucC(Yz2ppNq{M5{#fbdpDakAdhE6r4|5v2*>rb*xC zD&i6B>Y&eI90`;-DEHoCCID5@eZqV&|!Z16|4#1z2*@PgI4RX67kj)s4 z$g0yuzdNTZ!e<3(tePy2p^aFzEGJy!PrTzF6vmpS4$=byj0utb_6084@0E0>9q7qB zRKMjn_#yHe%w$vS-Dcr(Kp%tsmyAZ^_8m9AqSp-_NYWKe(sRayqOA% zn72|~wM?M%Cno8qY6a>UP&A;Pk=fH#rm4&5$IsHTMwLe5*;ix2q58?&WnWctQQEj3}tCand8 z5w~z-$86303@gvHP^Rx%_qCiWwHLWH7*Mq29jo4Xu46iI>@iP7`DA>1WC2s0`nJ{S zCK)7nmbw`*7gZ-Wj1|%Gs8*RBE?x+vkfWdi$E@jGTexkRo+F zmKJo3E3l)bi0j)q;XnnFWzxJkCwt$Z>L#w~lIK%5pT_8<~9 zmn;0fmCkg{{Lqhi1-?$qmWk+@OHpQg*oQ!TQkTn^!zI`45sa_5DkHJ-b|O>ljt6QV z%^Ic9+AEJCjoR|p3aE0mt#`h^<3uq5u!~4l;T$F|32|OKYoqAg(zrAT}I?`)$Vy=muuDT4o zsyTUyo%+SjU~tS=tJ;*nM_?k)kEZC~4aX46MZP?#0=lX7XE2p)_^;CM)2lDZG6In* zL0Hfub>BqbTz_qX7HcggymqFIA%q7@!F}*w-rDtx9cqkTC9Y{96rtYE!53y99G5bV z+CwM_HX^+u{#LfO1V?9pV+Q(O98k<-`oTfhtt?)$y6ERx(75-t0E=ea|82>^6@B1v z+fz|TV}NyCQr6kx;Rw7*L3QGCB&zx3?gIG3O^6wqP#VVqm+)vF=Fh{O^oCn>E!uiv z@GSpbkF<<6G&o*HuKI;8q`i`zeb)^#5;yeamW%jaPhMJcnD8U!-8_F-=hxC?qD0(j z?Ya!@Ob99V4ZvThDY9H0Hh{9Vs5eKF&4_pY)H6^!4Bjc1y98E6Ym{U)v^Ry`NK3O_1Sep{OcZBI*pPyrJt z(H!Wq<+~v+@QHlg9OI<^H{14@+=LCUSf~3@ARQoylV+{W-4TNmhadOJ?W4ZK9^so|bHI1SzS~TU zOM=IgnWSJ1|Bae`%QGWi$NKr#T0gOUn#TFjeHZCcx@+5kW>V|z0)vL9+=@ZvWRIN9*SY_eZho5Ti933*=D2g0RdIg~& z9WA)wlB|Y6u{9D~1UqGz&zkdCriOH+qs)#S*<~8H*_4cV>T{#{Xr3Q)>_M`A^*#LL{(A<5$r)yJOI@rT22n0c!l{( z0nWLYGO5(_6@=iB;r@C9tB*=oy+G*3b6o%rO^3t5lr{`XW`+P-*e@9+HX>uAw--Iu zths4-mj@YF&}dm4!4~RBoV__U$J?~kDl%m}^5g7(Zi2B$ep38FHaS-XMa6=c_A`AI zK?=*T!x^IIPQjwlK_L4y`+?BE)!(s@#ZpUKa5es*&6=-D26eP;Huh7CEGSc4Atss7 zil@{rA`?%VUg(T=@_O)+P;g09u~9v-cSQ8&^!J=vWM+V8mq}@?m^IZfZM85!sBL~| z7qMS(mB(ZVKS=gET0Uem8Wca12$vJ)a<8Bu=8PV9ToH%5Dop&-v@oO&6Fi0-RjrK` zxY}7GA2JIF^AsG@O~+hU@16LUYg_rcR?7n7YI~s$B^ONyt~g7%uTc3~-%n$1TOP;m zTbR=IflR`O03O!w`=b|fe_-!^$98UFL~W4;xX}#H+aB?Z84o<#iVL4X$ar3_`n!#) zatz-4T?mD1paNsAdb&4m&w7b^nlcB7pwR)$gB8R3u{-UdMq17hj2$wUK2IOEs_m6b zS6u3Dp=)X-XJCH)*CA@6cL6=BvHs|w6oIV)6P@&8>d-Rkwi=fK-Ro{SEnQo~KbO_O zY_%^fI#7Ry{IUhoKrFl9o3HnaDiGou#`CiLreECg#A~V?$q3E~Ghkr2qIUA6w87gK zh#t@|r+SiD?UX6xqib)E$(Rc>M{EH%KHE8?#?mkVmYA;umk{46n{Hq?-h0Y4_t@(4vIypCRXQiRznnj-I*?{02ad6!q=nQq zrHPZ)Og$ud+U>5UQVf0LzfDy~!r8zCaRzc$2IyvMqFfKNLSSM%0|$Dcr9gJ91<9~jn8u}4q+Ltq7EP%!;jaUQrn3k<{M}Et&_;%rdl(sB~#!>LttQ99unih+i`Y-V20(W30p|cA0 z1EOORW!B@R6#*NF5_gm-7zYl57?y!6_(SPA?aFBnJ1} z7RhS%pSNA~wdKD4*7{;^+X)t3PFt=fY?Ctu!*uGy>&6OUOv%CSt%PCDHV!)pN^$hO ztFIcq(BP}n?u@nIOmsYA*<;&)3`03M%zWV(R2f~}YGOhUGopZ}oF5G$6kb-gc$s`q z1IEI6vqWN!i2BNQr5Jkj4 zP*by=_6hFURRcX5F|n!P@=W=yO8F08WDEltWTb@`E?Vt?hGs{%=sQJ36gObt)&J$Y z)95!M#HL3?*lDsG4|sE+D6@nldrK2Vh=8*QL3j!PS`fJz*|H%)J}Gs5CM3ps1W zwQKh7S>JYwO=fRbtBbT*V`B(tVjCJX_Ho`&H?1I!8nI|(k!U$A!;;-G8ILR$1}S;; zTh$mX*OdIIy!4e4@Sb9fa8FZm3Yt`RwNJEC7t4B4?wHr%NQ9bfgDWL zyuH}jbhzbfynS!67PN7pm`}g5eIiZ^QinEEzRCi&&IW3IOsw7JVwv{bO-(Q)BQ?jl z&4YE!Qk{rTNK3l(dslnvCP(6$|DWTYg0_AX3DBWRgg-=vA|{6L))Mc&7y}h2CUPrrLXymUY1E?c`qm} z1;QTk-5*$~UeF1!kLX;ejW*scVQ6L`Q0Tw|EavyrNWLatiHP-?>DFz#5-N=x5ykwP zVt|fNqe~c4*WO{k(o`M0B+pM8>VmjbMM+oJi+#5UifY5?;BFN#Ehb*F?D{u@bZ%v9 zG#TFtIAU%LzBZgRyxVlq9vH_XT*BQYErZKxIEyCNe9(@JVaV|PdZKCA=&bWDQ;wP^ zW3g7J4WqcQ5=ok@;cA=xIykZU680aw$bjD3`gsPA_C5K*{>t)e%`goV9fLz==no)o z&dhq_MATZ;^5`LWE3x4epvurEi%rUL;2lqgTBgoOKhMSa+>B9n1MSz>gzo{c@j7f1Jodn z_3WWD^8B#26Y=ca^rm)m=CcBR#FWQ|wRg&t{DI+aTf5acRyj8<`K`5VCr$KY!f<8` zoD95r$D$e391w<46F1xme=-DkyY&7Ub}4=Tn5g4wEOP_1K(5$onU(S-azhkLu>p zzS<7vs?LR2dwedm6XZt<>H#3{3 zyWAyaKw?1-c(H$h;05^$2oPK>iBTNg-80o)RV_+nW@TkYiqH`r!nM}!=5B6UG5UtQ zu^R)-46yT_^E|)-K7=X80ylxvL272mlDk_&F(vMuw9>|4{26B^)y4u*^vNCWQ`hjo zSykXWFgFVgT8J$LVqXD)RDCgXnvX2@oj%1n4A;!dv_gkI)*X-%rI^u(7HDs-w?fv` zQy}082m*=)_z)Cv`*=oR4(;%AxI4VyjFTC~( z*B?$);+hh2OwxR;f&ILW4vfN5|02nX^kn?1i_oZ{ch71hXipDsq-h$J-@}-Oi%H#G za1YOB?~ucTi0k+>ysfs#tMNGK7*~6k2(%2^!*+~NgBS^n-mhE0 z1KC{wzaBRIN>&O{Hlb5r$!%8N;xpth>0V1QjLun|$BMsz4E>FMBuJ5iQG~LLFD$-p z&v{96va^t6S1R$Jt1Zdt2z~pA*7i1-=aFfBoa21z5T5v`vjr3OnMxEh5Q|Ir;}$1kRIt<<&RoN>yUEHdGotnM8aHsWm!Z=dSF@;vW%ryLe#1cr0DYzCoSy31=#Zn;x9;Ll%g z0f%YO(VzHmf!^J`8?v)%_r6bdgv`iIVVD9t@ddn*kW<|zhm?r`>aaKiF6({EI zSGm)QvQJL^aPZ{* zoO1?*FeS>5To5<4Re&R{IkA>hU1`Q-B1P^nd!O}p>(D|6T2zUw83UcL*jsg8P_ zzmCU_xuRv?O9#WIqU-TP1P?bjDS$UK-x0OKb*r7UaqN5SrHod!B6rJrNQJ$s&1Dfz z+NEt+JiS16%Ol6L6A$UCzs8NW`Zw)bGBl7PATFkHPmB_cKT?bl&zEvTkO?>z+;?8N z{9;o9me%3H8V*dYjl}uPYgt}Hr!U~U(dB{sl#zc}P0V0hZVt8vO`AMIlupih9o_Mg zUyDjY)pq)XoQ zu3~!+>d&zDT@$9i?4W7->i6VAQi@UY$w)C~JI4nfBGZ<8uDIXd*;;itssi zWQm`|s%osiE65I&N-TE1qgJ?%RE2c6XR_}0-Jeu~2R4!l6|I}tTsdX48^l1${ntJjdSldtc$+RA0M{xuWuH3(Xv?}x2oY0&qoy%u zCH^BR9+{*0vr3~xP>!ih?ZjreQFoD=rPe&&A*n-a_+ZStKSkyzCnkv@wwvHdmFT{B z1Nf+!6nP5Qb7u0WeeFX-Q6IWI$S7spN{4Krk*W}B&KP8sj1r*SF0sR7q0c=*$bs4r zPpL5&KsV8P;^p-H{kN1NYnNNH`r%8JMZ6V;#fJdrNuDjGQ9f*}l2Vem4!-qYoQR>M72gd-x4Sh&KjgFY*)Wbf`s!i*8>eL!t;Jv$w-BCceBctKm|X zt5XvHq+V{+rtY`2E(rhk$u1G1(dVvg6S9YXgen$hnUHgI_4we>+jX~4bBHsKa|B|7 zI!2F7zx`a&tk7cU&J-a3Dcna8%-3gT-cxegcH&Mw`~33hT+|u)a^{alm~7k0&bd{I zKi-?Xen{~kV%LuPSA&ZU6!A+S^!^Z&ZN|W*wO6dr$nyDNc+_`Jl-BJ3-vt_63)Zyo zm(}>LI|^IJ-q+*Tfu-LNl07i9edS*{!5j`J9I<^*0#NLDE9e`1jpgEPM;8Z=zF1_? zxcg^-*AL537utJJF`tu}>8@jaC51JNn-8+w#<1)8jkY2QH1N>~^o<6nH*&GUR?Ti_ zb@qs7GBz~*#ro1a!AaFC`A>ARvAf}L9V*FS{Szqej#J}G!~UD^M|UH=`O8iDv9p~( zr;_ptf4lAJeX`f@=g{HR3wQsD-90>~O)^9#gK z(QWK!UcKFWKi%ndr&ZB~u>lCx-D1Fa@2sTy-Q~QP!{vo)<-2iJMwsgvK9~CE!a0N7 zDej$#r&kG`mtvJUl^wDx)W6rwjRlSo_?pUPb=QBcZ4Kj}Y0EUSqECUy2XAl(;E{cw ztsf2SehNMI?Tmi3|L|9rc|CjVafCfLKpnj;w_w`Isb@_IUX#xu1p_9_&Z7|ElqUMP z;@d$6LZU<18}`XTj#(>NcVERa$@r}IwdYR28qvr|@4VHretzhE{|R_>Hv8GiGGzS= z>2#mh9fgpFaFpKl2i`Zp~X#Ur50da_*7n#=|O3H9x z^G#ii<+l6vjcfv+eVrh`B*?(p!Q`3CrP!B%3Nyd@iimrM59uc283(J#t0m+1&)zi1 zhB5~v^^2>(-ch=>F#A%3|K{Hg6m;{0d|#E#O4~a&+b*66nS~;+<2!iY>7h2fhPH?& zv&6FTNFECC;#mQhMIKUD&_e1Pb)izr7xlyyK6}em49f4)$b$G(?B0F$G<;M+MmFI> z=l<;#p`4olZ1V;ORy;&-)1M@xbuORPDZ7tIO7+HNxn9 zx8Yy?TJCI|B)_i4gGITzs`lb)rZmyB7+y z;%IN_Dj@UZ`;ZV>oiG+Qg{ttYAuEp!MrE`m>;mvlM}!hs<%($;)?8dF6^=;#QUmpW zfUP;uFNQ!FephghQ_j;K-+l9*^&YUSwvzK)lWDElrKcZX89T{OBp_aehofW>8zheg zPp{}wFa<=s-t(qdh@Z5>{eni+gr0u|2)}zQ9`z3d%~z2w-@Xl+iK|t5qc40#lCt^w zrt6A1y=?gO3&+CK(w$3Ru0Mk;=rB+RWqWq&!!K}$J2pI$-xhXFBun4_T58QTb8q{` z5tHo(mwnKBX^`hylef#-pvC`e5tp7_LrkmqPW1N7(f!(YKEsDgH|~B2S$U<=u$hy$ z0oC0MkYeR4&Bkbxc@T_cj_I{8sNmLy-)lDA{fjdqi2M-k9Ud}eE=8v*n4G1hYa{t= z=Ts87N$jlh+qUnW?w<^Q89!TozJ1Sxi%s20BB8^!u=8~k#@!d|o$JOmI0<;-YHJSW zxs^9fq83La|Am<9uP<#5L}j`!`BP5&ZRQ>|m${;zMSt$i?z_a+YzGtf*~G7J(UIlD z!%n`RR)(C&60gv52xh)%r-;2J;+8)T(dqMqr(PmPzkI&YUw?uPf^1Y8GvD{g#b`lL zzSW5zj@h4C^xAoP!+M|N|0orNI+nTBbP@eZEcm&_Ud8N{Y9{jZvGfkx?w?^g{5iXH zGd9IDW6kgO^0_)7QV1UXHon#On_l(hE4*0y^XUKXs#Jh-`;&P%=ZVBTla{Lx+>X|K zPJ*uClR-naY#vYt(OXVCt38Iwie}ADNtCmc)e}Wo9AML=cq)D`{qD-~6}Z2hB!yO& zWzV(nlm`#a0;`N>a%87Bj>2lp3+VBolleCTm{CW+m- zdeB=%Lh{b9x3_~Zlt`SE{|9Ey7zR`lz`t8e3rD_7_MPj9ymFi2LhAL&H^qn;h@>5( zo0eP}6&#Z}plRcjSpGXScOYO`#9zb^8DW3?N~pb3mH9wa3@YJTw1liJ7y6?;@@8KO z@6)HCQ)*W4Gu@WSq`0F|B>4WS@co(@7_BW0S$q^x?~O2G5~|w-H5&Q}I&srS1MKAc z8WzZ`lCzk>jTE)E4imTjQ-pAw1y4(#+lT%2iIe6Q`1&9K!Xwc2tJ2^2Rz7s6$^5(R zWZBrA#Qgbj_zX@LPC^~KeVS_r*}K!1ve$U*Ru{>%$snqW^{5xCiYNGDJcwU-zcAJ3 zrnI^o?djF@?VH}_!{Jd}(Ru3j=PuJ18W($z_XDa#c!Xg>RXBHrKnOwehHe;hEIM}n zLciN|@@(12@8LJWW)rJ}cpv+%GHir@`YeNi@R3YvWTi`(@gTc<{|i4EqZaH@r(D^L zymjrOvDpJ*-$-M}i}Ec|o#gO)YE*QWUMm@PV7xa?j(^QpTJ7bpi`94a1&PxN>Yu~2 zqosv8X?~zeNn3`bM-f2miZ>kdAgAm{&&6z8%Q};?fbC9s#IFZIB6rVNYt0CZ@ zFDkKdG3QKj9=x+S2sZH~=yY6A_KLk$Tp8HlnFe3VhgLOP;O8M*D&`(UtU&MRZ^MvftS*1vjF`c!%f;_ntF5d+@W#l=20^1&8W)fI7-9((9;x;y>ne> zaKwMrwcDe*k%&h4qqG=%sa*-&Hs;M$11-uyYZI;jN%GkIGN3P*k5a7(&m8)FGo;;i z_jTL!+!IBM>*sS}_Z->thI0*WHR$fUz73tTSf1Q{b1LJ>ao|e;$Ab-(zjoQTQrzhj zvMR1Eot?)6tDm_qV89ABIa`n-C!8WE(VsI9el^TCP{J(#>9&80Zf&6+MARn*gqK~L zDrfj5^?7}JXK&!0oPDr<%)&i%@@~KRPH(RRgx0y6DR(%U(4GBBXDoJJ4%#JY5H-yG zFR+9kg14)~^*u^(iar296Dw&&m3#BBo~*%jNt4PCJzx0lREZmveo4&V1NwSGo6XYN>HzBt-bj+?k>=&_HNPCu?M#5xw$7C^M;mORH^xV!Pn|)yFxhlNYn?A5% zUhqF&Dt#X~F0WnKZDr?j<;Q>F=b(>&R~>ok3=Im?g)0@bwdQVK%FT})EIO(~Z zcp%$+?H9X*9=(d6GA7*|k^XO-RLe2j;S!@w$bL0TRE8f;#LDx4zqyJSk~vtj7UIQp z#!Wy(>>X#N;AZc(*(^>QgD;iEZ^l{SWeWRuDd0Iw)%^A=vlkkS;7B)p8&M+Ya6_5Z zT4CHJ&;(_O&wZ`f5ri$iU%f2GfU-0~Yfj%mp^$DUK?k-oT+pL_dMYlAT0X5!N1CcB zg%``5y`H&h+}(1L^FJM)LH5?#kwBxgzNf8sZnPv?xO?SvbpC{tj^AGM(D;awwvQHY zWduqWC-f2Mjf;l!&7;yj(1XXsIbI4d_Xv6<{QIc?=X23GaIZ238g6Lyf{aX7FGG_B zX6f0t)>wX0p!rZuR$V=ZT)Pkj^sj&su%S!90rLZ|H=wwu=MyZ-$Q)N)j_y?7QM9v? z$JQoZzL*eM@Uzj~Q=xgY({ z0WHQRwav3c)fUAz{(|-))poA|2#&Ef)q$Zy!#hXO>?mXAo($fJJH-64`AR3;q08}R zI{k-8o;fMVYJ)$1myhEx?{NfuUf@Z3 zD9?9u!@dIfMq4e6Kh?0^XM)QCsmfGnZM94SyrG5yhR1~*$}H>McQ$q>#aw90n5Zq< zs^#72-j&qp{RAbOu;k&m>AQr~HeKM+UtIa!$4V@fvuBE5{DW;{;TL0fs`BOmeIptB zn~fV^e%yF`=kX5EZ* zjx(aWTfLnVmV-k83L_!s$xY@8i2f)~dA7=qk84H`B7{fmB%A|y`OF+c7ta&C^C0c5 zjp*^QWlphsR4H}+2h{#7We2{=meHh{d2CaT$D5;?x|#l{g-TkhTceGz5cu7k?eiFV z+wpdRR-3jDNIXRC;oh%IM+Jy89M`?ocr2!l=$7Oj&PJs$c0)YbfUfSofbn*Wsc!bw zew#3xPg8l9WhEX~8#j4G3KfIA(V9sw`t1pid>Ps;xhw!qc}ae7+Vfn^*6EkFSI+F) z(29ew7YCnv-JVx0e2=zWL7dl@%=224 zSFr7x`t((nTNx-@fN-Uu-S~swq-I5%%c4BPaYIO`5xcTnHQ7I>Ni@>WRmybj)~voU`2jYy`<_B`-M8O4`+vL#_j+j4+UhBc!#R1O zF7^DNb9U7vkeh*JZ5%hX)vB$)t|jw(g#;>(o#h2BNSTq|8BgVb(V@sSZNsIL$$_0@ zgpw~D;P?05h9$VLO;n(gu51=7%i{db>(=6#X{at$ReyMHAl2!Aa`)TT@{3BVj5LNM zMG#^DqTcnN$FZoafI;|Vqs)HG_0y@@^R`LA^HB7sj@$%B8%RX%OUS=)ra)OMKV)*<=if zk`C8|(BEBN9X*;C`AHNXX1wqaKK_%IR%6Vwi)IAv`I!MI4Ci`#soLrkqHR;t@A42V zK`+VctDlPa`S=vse9GCv3gPR-FN;)vebya@moD4(#0cEb$J6Wi^JsoQI!R%;wkEvz zUOS<-)0f4y9pRDv^h-j&tWTU8Gx_@~H&mcEtx^s>?|Mv3yn|kAtnJkL(gHOGv{z#E zU}|l+eMwF74EcRD2E3`%mVZlRt15=f{Rgkhs@kbi`?7m^P_$ETPH|OjyC%ksyDPYH zTVfq-)7LQHhAZpfgV39&D|c41@(}9)66ra8fB54jdt)f}fB$@#psML^_|H_J+XZvkP#q%&7yqa(DpfN-WHO0Fsw451s zv@F(<)x9Sk{5cPTQ2FobZ@$_C3Z7`C;N*x>viuTD>FX;&pWbzarfAjX_t>V54+Wuj zt+K{A`YJ??yicd*JF^8YL@mTB|6NoIGej6_t|6r5u}A)Gv;6@llI2kKzg=J%`nYk~ z>!<;3AbCo=w}uje+$x+a9y1a@QM4`4h~0Fwf<~>KJ%=6N_2z6lGQ!E+bK49HI?$Ir zQ6NRVTh}PtJ0UIf`vop~Bd|Tp4|CIhJev1mzzkA^El)o(pdoFun> z{yh6R(GR6*>BFuHdf7k&o{43Kx=_*Q1F7@NyU(c>lNqfX-*;ziHs7dr-tjzI6W}uim@>y2Rb9HU1)OI$#zL$=W0(5lIq1|I(sKRnU5ps zN$+BGb<_XT(C>}j>FW1_`)I9r>z0;T8Ja;7fCLiIV`&4my*EN+ZhRO8nnCB%-o*pT zCibr$V#71biHDSjxvl97IHk-}!)af9|h9&I#S(0|ZA zACud6lO21*?Hs&%LOZzqG4CiLfG;U^pgn(``%UNAJ6!GL@(c+CaJh~ic0loEIwWln^0eaIR$<>1kOKit_4bBePApMnI~&kI|3ui zhZ;>d>EJhuQbM|7*ZaB^4Ry?kKz~p90F0O~*$I4_44;j*N;kFH?0-szrZ_N7zkQ>^ zZ%nTxlEEUEw+p{rHEF-&K=K={3N?Jt$P{)%K3cE6_HQHgVb>1!+k4>$w|`$=52PJB z?M3j!h5vq6~p>RPzWS#<)Hm3wzEro$=oCmfDgmgS7HCZY&0w};3&Vn5phQG z*WtQ8HFUuh=)e}=Y}`!jEjH(J)2IcHZOqxR&FT3p9ne2+f65#UR3O}G70F8kujD#> z?Z>Fun)**>A%U>F>OFE=51q*!<2%_ zaKu(+bmg3NX2DnJ>Ax^zBJ%itw>tL8%R)BoG5hPaT$%dHs@5Jn&mio1-Ja{(f;-&E zvG4(vCnes9E<6X9hz5Mhn(%p@@wL8d@h zF#P~KCI@!-6s%%SxqR9zc|u!^NzV%Tg6y!{K$7PW=;ZP~PpIG&esO!_eg>#>J7F+qdUC%Te~gX$9t}k*&R#0xNpFhp!rW-OEc-Ha%--oh7$0~Utd$Sow%Ifg!fY|; z%cNp0_|12^t%cx*Vf3v@?e-{e@Y^ftFZ<2c^`75$zcPg9ehZ|}C>sz1rVGLK?}Dwl z>1u?uic?4c?tFMz%=nM3=v(;5Df;=zx4`&J@|Jc~-UhvB&C}2oK&t5SeDBi8c&NN1 z+^XMTxU%nfmUv(60I;5(u46^P3;&`llHGwoR^rt8lD3HCqBCe?0c4o12vfRvaZUN7 zyf5mOBbO$6Dz6B$8K}7VfS88|q7lE(o_a0zbXzAGU9`dKs6`UVU zC27o6*1%+N?CrH9K{~to?xIv-Ph(SL!|h)x&Oz$0F@}yz`vZD$XU(@1usbFfEH-HD zo;&lg)|-BDRl7y!)uE&Wy*BuFNh~mxV?nO(9U_u<`lH=)v{#Qyh3F~d{@tb{{>~Ae zwJwLpMi>6iKW;yWABCq)7d3dL;!?yCFxT>-Bkx+KX@aSUFME#COxsuDm&b#5-EW19 z27Ke}3bdQcax{Rnyz)eUmXq(auDKTX=&%^xTkxJE?ymokQLj#(FmuzX-H{*6*p{vA zsxam=%UtusFj0LaqphIWmTu0|W*so+*L?I~=6kua<(}+Zw;l6eHEf9el^9}fCyRvK zVm}=$2j`x~Vq>o60|!jmV_)2L5G`n#+}3RNJAuEoQB@;Ut{UF=B%kq3;?OrK*v6Id zBh<3@UQ@$KiRii3Tj%9PGhz<%i%FN{s}nQ>qYGfE`_4{nd#>Tx{8AMYCj*F$=OXR? zkjQ^U1=~OJ3R?$f+q-6CaDQt#GE`>$D&?x-trt?@4)2mtf7vPa6B7^hGYP*M&m#xE zXHd7zcnn2!?EEFHqU3yBc1^{VSo)&h@o$rRvu9g~pc%Q~Iq?HKNW4h)h@J&mrGqI` z!Q6f$Vl93x#x^vB18wuoQI@zuw#NjM@vW?63;x;&`Unzz@#+h`3)F1SBGJJ)R?qg zvjx?Noqlv89ywcH4gUgU+&{JKpMwb7>5_#TFES?b@#}!=Ss~M>kpGo=&82}bpCHCG z*Nf~QUe5uN@9D=m(3vqPw7;I~lB5r|jkaM0r@?*JgBV!j!|03tzZfY)U43|@+XoU| zsLABae-pg_S!azL`L6!dT5!xej99is*lNu^@FRWWoH`?ZIy>*T;&HSx{053tF3a+U zZZ}&eD_`H>2>6l1cI)tX%cMcq`&YVB)1+lS{pM;g$jL=sfA;3XxD5%eAtzotyiCJA zZ9O7UM%YxCr|rd%86q&gc?hswn}?eoI_xIC`@*4r^XGo_{5H>+PIck;i)DT8@g-r> zI}S-Y58Be632Ch>F)*m)e_`D&#-FwYuXI7(negtIe|0DYTQmM~Ejg1S5X|oG8@Afb zWzJQ6(P6%KDRY08KoQ4C6z(vWwZ$0&{UEM6ZPUZ`j+Ux^UvQo%L5>Vs?S-U@ZBi#S zE4p+BRu^xP)z2eqN7H0~8ZiF9T_ENk>X+c{8M`>sytZUjKPCsgp+q))c%O+~c3`NE z8ZDeF7nD)9?Bd z12|fUrNl^UCf4Aj%y90U$;jz7JBWhL`=Q<3o;uEBj!U!6(5^kTkP$+$f%9^GV8`R| za!7LZ5kFfv_j1Ms%lTX#974_}Vh>xMt(8EeT6oKD$ldOn(1huC=@Rn0KO6ueS}r7y zFN=wYKW&fq1IL}UIu5i94$LGcq^;T3m)*ky$0IWOb)DR9*6aaSzn;ibhu6ZB$W zRxiLoAz5f2_5)Xx68;7t0PfthL&l-_Q6u8YdHbG%HOBlYCyB~aj{};Hf>?jh=WWXS zm`)YsaeUVu^b-l-H+njScw$!>y0;E&YuUEIz^2Wv!u8N#FuL;*syp;$G%7a(Wv45w zWb2%O>SKtV)s(8LT?N#wGs(w--n2~Pyf`Z@!tbqmNyrQ@>1T+{#4pNZYv8~44ep?>m)Mi#? zpUpeQs}J4~Rr55ULG4vpbt6!X(_)rG9(Fg#={A6kz0B-jcEZmc4wG46zYkMtMFU_v zaAVQLfLSk=963i~LfTIu@=~mptx+`>k4)2I0P}KstblcpwtF(*hh3lGIp~u(B{Kw0 zz{M9c1diOVpW4h**zVOBzme2s4Xpt))-%|Eu(>zWMNsUF%_+kpC!^XNfsSWoAqfX8 zTB6~XyUZV1oxHuu(17yGY2{I1VjCieWP^AZU5a>{j|BHZtbQ?CDrs$zlp=7i909^^ zB21ZODj9{P;KbuNb%$$CD6JE0RrMET&%hffZfsWC>Wc}n(Q2^8t|{93_Hj(}2kQ7(BXe*Y z*Te}ob5MxhbTz!4@l1x>xdyu=($ldrbJ}a6mpYGBSJkQRjqu%hljyB=wCh6g_2wCy zaJQH4YG2x#I|RGQ%gtm->-48){DlV?oDstYzSh7J~IG-dmNxO2)P1G zgV`X>)0)#Kx&kpIml;AV*S-J`>i=R;0|fq7TJma|bc-4pC=lq)td;N-ah_>|z*=om z<{b7&d2aFsvwRzUO`$CG?yK4K5jKKleJF)3N43?EBlAE)G=;(#bFC2pu+Ssx_mXmF zPAH8sC!S{uTz%GCOfhz?V~%=2qJMFu-YYi~LeCrLZG}k8uBob=H3C#PK7%l^Y&X2! zB8hAKA~r?_Kg>-%T8N?DkD}Pmmx@set}4hniX1eiT`goeT`GDyvuPc2cAQ0Io2hZR zrhRDZde}R#9sL^IrD-K3Fhb!D| z8J(G6StcAxY&IE>qjic^LV{Y{z*@^9#P?33JK^RMS8$Jb7ZcyYf*vCMESWH>2wfK3 zHw)~g=H`#Bg*q;<|PuL=20LXuv_YxfI0EGa89J6dt>*2 zL)z~dEor~v9CQYug?PI)DCK2)4S{LIK0$tMpMjXc-iJ6$Frs-b5E<4XHQd1#fPvH$ zkX6K^QEN_tA;^r=9>SIfa?*p43P+##o8S(qvTVu}XqbBW#~!H2-Y7cZLc8VaBzlQS z)qu-A>}({9dKYtZa<{4xeh@`wfzq)OSODL31%bVqK4y@>$laMB`L-h0sxhaB z0&@l^fOIg7c&jd9CipsMmp|qEF3FE!5^DCQc3R#O$;r($uClL;ta%df3VV#>2Bc(3 zQp{av0?`@d!r44$tzrS&UA|J+L z>%jD$Vg?Ai+PpKdW7berhTSgRI%>~b!=N*BV#;jZ7HZ!2f_ARMIO$Sp-QS0RJ&iqA zFSDY)JDM+^`o-p?G(1Up!mwv3ETpu{Y{E9G!<}{4)3|{Qw89_u4IGIWDU%L^T%PWj zQAHmV?E~AGkWJbCXrrrW!}vwqpop86HJ%~PQ{6}s6{a5v+Y@*q?(8Xeq&tQX927xl z$vq^mp4E4=wv`wPnki&#c?kgGA`N7IO>MtWA8j_=;+cwGh*2T zsTIVEG!vad-6XZ6;oyef^81Zok&ERp)bQG;!5x2J>KEfI6FpMa=^{*1$v73`$U!r) zib%Jn3-V<|bk`~!mfSOk421NDGYT{b7u_0dw9J3tOj7{-S$7Au^H0nsQIlW3REP`! zg|HgqhEO``m2!CA=bFW|nP&6MdE6L&xicNEdXmHiAF%W5^%hY$KMKK(;vKD}7Nb%M z*4Bvm=;)ll?8NZIei@itBy``h6bpEdVxWrw>?z003YFn+$MI$=?bEL$>&P}EC@qK0 z7?%(<-~~(A2IL4@BGFDT$B#WpX`;ND-aaoY@(!N3Dg1R@mBt}Q@XxCetL(La!jx#T zpBU9uQQ5B1$YdVqx7m8AGyiYr%pqe0XoC0puJl9d*YK2y!8ZRu^kYMz(v}MD6*1!u z6u=>sE*5z$`0iNEn)a{FBQQjs}Y}kYF(xH zK%#2CtlD$O7bX^IctKZ-aZ28k5*xKVX}mW<@2yAPapJ`w2%@-N^T+&i?CT|&YT9CN z=!;iv)~I)S@m|f@tfA3T#-p4WRP^4W*C=6)p|~K9$9GFocq%O6{SE^eU4JBYb6EF% z>jSOh*QcxuI~}dyDZfrRobYLcxo90I zUcY$?Q(TwGTzmPz8?(UDr5W@p%1aR4Oe{LJ7Jqw|bckKMJ!2Fx{hZ*CyOZbGfZ^sw zLA()qxXAWqcluq)!KlaUn&2tlEc;CA%+&i7K}co_FZ8!wt=jRa;)*xBxwQrU`MlW= zg)c0L6c?L3MERip{adwwHEHP*W*>Pq-DU*d4I8$DtlDxf%K2e{9_XU?cev2a&GW7m zxY2PWk4U!eL8|bfkIzZ7cPXD66H|pY)w_pGk6t#_OIK+|ss^gKw6C${p4I(mq2r5D z-u^XXaCu%k^nuEnW7Q%=Hxr=Xn%C4wc22&zzgdi&rgD9Ri)MK0k}fb{hTI` z9lB}As3?XqDJ!RsFc)<1<Sv;a*FUqA_*zCvdu(k=)SZYM$+I9fS+3oR*L)q1*K&=eph=}e_Gu=H z^&RfP<%H)i$F)X;@r}l{>sxNVu2%DJJAtbX04K+aQ5cWsv~i-0CkmNyt7v5Hl{9oJ;Y0A#o}3s z_VP~F3Xfg2)&e6b@T;*s=q{xv!9j6Oa@%r~)Y>?Xz8CT($^b;=CQ(8*w1z(l4>F^P z(U%^`YPV1!yrB|`r@sR?dLv^g#Olk9@G-v7nN75+el)PQpt4z_C1eT1k}L4!JBRnu zza}OZbvhEX>2P&8wDDq4>hn4G5U3GtVi1W~y5=7C24t+S=fckZd~zAO`~dye@=xlW z*o8XI2^cYkJPd*2SNXP!8D-O*`&eg2)+nkEL2sO6Kbxs^b4BicRG3Ze=PBa3lJ3aC zRq~uzwU~~thC18!)KN{cNmfCRIGr}Z-0F%|KUIo1?b&eK{LJVo;3gv`Sv6q-ezRlj z?%rx|t67w&Pt;#EtTyS4N?xFx>evvS^VqfjYf9lbHnhUrz#A2b@Zv*5)?$n-jr*%v zYEbD#BxP3iuVCU$sICpQehkMN^KP!$a9>{*BZ>mXG#3Oyp7eNF z?1CL4GjyIB`E52L5kQ!C=WCq@(QYQs)6Pe~pb5^Xn~^sJAPPl&gWwWtv^ z-7OP#R2C9NdmrD>n(#2r8O%!0>qfN!g>Q!&F+rVT1FfoMnXdq|Ti>^_uE5mA=3Lea z-(;|-AabWiVQ%J2Q2fmA&{TXD^L^6E7ZqYU(y2f&Tis!{aEN|OP~8&|DfLyl>1?6I zY(m(dQ?Y`@{z$abwR4F&7Zi6jcg)Gcr0m__^~<-!C+r9qIP?6Ypb+soT++@RFMQmF zooCbOH25giDZlS7H8{IsTTJ&2WeRDa>Xg;DV4s2+Lr9!BWR;rHaW#G|FP6*nK@`t3 z3igL3;nb=CD+5WVCyOQp`DxH`Y%jaA)XZMpw@J*9t4fokYv8m3Hq#DHyNa*DUl?`q z+U-bbW~jtgb<#Q%%?rF6o+K+_9tD@k=3Kb5BuBsu=jrc&;R-TYwfiPa)9%_UMuiC zxKti-O9mk_34>_suM6j?=c@%8-g-8wH^J6mZEC$vJO@pTp7lo@ph742Ky?dt+rWfP zl+%^wK9>BmJv7-zU8ug8s>cS3i`(h!!Ef!t~m(MrSFH!4qRH=`uT394QhX;EuqZcS0Yz9G;%DiYwRSK=kfpok( z3PAA5ZVEg%Qm%ONrd&;He0NX7vZ>+q6M)}ZqCu(CfN|!zzC-?g3H4Zw9Ew}c)2pyq z9(c#Z65(VD%5Z(e=L825QhcfrmJ@t<>a=!nZYUX9PZYupKNHRmf}5Sla763ztCDV9zCF`M^zcPK%J|sxAz6F}l@HZ> z0k8b*czA_Rac!?66T1)+j2d4DLF@rkN!edqiLYnCAf4OEtS|4o^B{GK>fMpRUzZs&pz59P&8N1tYOk zfB(2bKu(_zeQHPJF4(7*z3PkUtqr)dwQp=NbmmlHC$PSotT%nhi8hzs4ym$M7^w5w z#v#C*EOfSpN)dXX?%5?Na~2=uH`xiXst#6&PS_5OFN2Y#^PLSiGeI3jQs+#bcKag( zB`A!s)KNt3hDl8;)(9QRueLKGo?hJ;4GvpW=4EekXl)C8$_g_m$y^#@AOkJxrR(yi zH~8Lc7>K%O3)>ZfJ@ah0D2JFo} zJNT)!zGAp`Ww=`|ywDAEiTv_mc-()kQ}LXjHf)0083e&%>zU|z)UOT{W8GD{4>j8B z=9v;acI2$##`p3*c3?7OrLhq#6>beo&<#5ps}4ETW)rE#lJYQAY?GVYB{?{{Uwp+o zS>Gl4>_lp4shH0N3B1;AzHQ5D#|D~1g8IAV$}SicXx(dp6+@`htDJD9Z=g@zhBsB~$uin2b#SiUT)wD6xR~nD#ni9Oa#)d@9K7)XrGrmY?gioK_d%8`aN_|~{ zfZF<2%_`_+;sqHh`RZ_c{Zs@|NOW@_>3Y>2pMN8LsNiGHB!}dN8wf```vWb+L)+e= zyiTNxf6bHYFd^>kxt2_nx3<8oc+3_Xk>T(T6Ab%CcI1)b9ubMGRd!7Vo{o(2{wqOA zqY5ib3)yT*=l|iouq%Nz2`12Ouklhqri^xdHRC(Y3&YD7fD@6uy97yl!R>+e!NQ0H z9su{bUbhCLDuH!7;Uv@##d&{1JcvMD1LqWsM~Ig z#agnnXhkkvdBrVk>QL0NFYOb`FKoV@q!6B(Kxb&7pD#u^IF1%YukPhK+}kRb8us&> zb%>_Xq6hc7xHBkIXDUOK?5Iw1^qUPw@?AD5&H4UrvyUK354M%SrBAR35sSR<_|?bhX|UJcKLe5<}9 z7@SM(&f}dv2xs%ln$Hi8oh`Eddcy|6rrC_tf)E*W!cmMQq;@2K=5>S;SV9AGxe$x` zsiRM|841x)9To|iDcMA(iu#}LQgpF6)D;oVr@a`&*G{EXCZf>+qtl4&NwnI?o=wT( z=skz>?$B^4aS7~f#fVv{CaRGjI&SRjlH}9reK3EqK+$2jz91Bv4FH|++nq)uxY^%D z(}7_W3Z!F%jIE&E5;g!-PIy~+eD}qRax)PMiVfN~A`>E5;lhsVrU{c~*>m}(^~(NW z9ZHUb2qO{hiu*U53;Oo%T9GJfE@MEpPvzVVt$hj95`7#7Rx7d^)NL6OJ9I?xFuc#y zx1+%rD1#SeXLEA`DgN2NE!GLbsgSTiuhxta#q&m$4QQPt$#qri<6}e_S{0@3S=UqA zn~X^5A`c}<0ea5N`<3gjsx2Ej(4uyrid#g6_EnvNZ4pJ z0x+G4RQl3q&9=P{(x0qx8T{Oc3&g9NW0dU@25vU2QOtWXd|6|0$qH@pg9sH7e3V7( z?j_yqpAB(+QPmQM);Um2;vh7CfjoAjaBx^29e8ifm;0OPi) zXQLT!aHLFhi$b-pT?y6CTe~t4oq3hh=v35fDHc4@iRxVmM_sGpsdN{DcBcYzopOpi z8Psrxiaf$^HUh%KR%f7>aC%Q;MX8 z9e;PkRl3y5iU(*r@Bmw&IRD6t2M0o{{rXjWqYKPzlO{e~r{IGFM^_O_w*lU$jw~f$ zI^GBmjz*&%tJEZXW6R@=Ny67+WZ1wi=t|oqijWnX>v!h$y4rEsi*%MYlBs{@u zJ8ZTQ<$QxRq6k`ed%KnrpKXnyJi(Tu#d_f7Lo(Bis!Qr}Gln;13r$P{rFe}O(%l_G zu!3XKDmRH=QQ9j|Av#d2fq>Gef$lFSwnCOJ6Sfnw& zlB^cVf$)F<)d1?)`ngjUdT=#S?bG4)2~CaAqd3R@(&* z+@z#POPqL1!%mG|GQt{8T9k`;)d56EQzk~Z6zkS1{D8yd5BFc&94<(EOw|@1-Pu73zFO$&bXW=cpY})L z@q8@`uUIy0aagFk^$G*md@TenIqP{tt!^{0t?MA=e?upaArHs8T}GqJ=wTwVHPS8* z40yxA?L>Dlt}+#6^PInkrX=sY-mP33zjz70F^Q3lGcOGiu+=cz+7*Nx$QYxxrd8Yx z{@Ex<vrhd9Gf7q9`SO;5Pt#tzIaWn6!Fj91o_hzp)4+Uq(ho&Kv2LEYy5 zj0J454V&zl>tKl7B)L?Q=~O8j&}jv6b9ITz*s|w z$#!Rwp_f-#lNcRdsb?TmYB(AsB!)aYd`6^4YPATn)lSwjW8tRPaUdyOfXb-h;itAOKZ6%xGXoProASx} zUeX%@2&`BPG~$8tJ{)!xYWKJ_CQq*G=DsA)qGkmTr1k!M#$Y63kj`3&`<`p~B;!YogiIOe0w}YL@B(@zK+zfS8oN`naO#A3bWBWYm z4*5({SEf2FrPbi)G-MA{z>z#yX?e;h(s$XDD{l6mZ-G?0*$HY$fX!HS#Tv2o_DHPL ztvOBH1xMtw>>i$&;ABneNa1c<5Qftlg*%vlk6>v=Tj6%13|e3teIOuu?IooWzpx%f zaAXICe3BzdxY3`IWYmJR?IOG-7HAoPgU(^hWFra~axg~qVQt0FLfnR7b#$=L+ePhO z3Dv4D0xlVhd&?0~TD;h>VumKrq!=V%!pvb^+E`=VF4xBBQtz zY1dP>fJ3RYkO?Nb%~iYGUV@ZeOehRi0e8aOO0-%)S4|_AY~(Ehivr?sv~IL)9w!~4 zfw)N9>1ymY-!@Ip3QDvZ0o0YUSaqktwhsXYY)CH-hv1q=Q=rB91Oclvv1+XyL-iEW z#N(9d1=^eeZc!~TsO$ywwQl7FpC7SoC_z~+z%z!1S)qoBa$xHv7cgRUfYhbbpox)^ z05Oi{AUdbPI0Z%l9CsppKIzy*}@icyDB&_=|j%?_o;)-n6wvw10(AW;&jQDs~++IH19YSx4BjY60PPlWg0hxgsO#6 zT-11}cQ1x3L3Pv>{FM1n0%4p@1qfic72LhE<#xK7v@uTO zqTxE`7(gv`Q*g`i(I6EJtO1&1wZ(xQ4qf5~rGn&oCTd1$71L{UAOI$j_7=3%sDgep zBfEJWt$0=g^0Am2g(S!WHA+gm=S?5$0A7bF45uwjC&G-%1^UX?F)OreBA~AAR_q=- z#~Io%3JGEGqPgkTb_?r9f1%N;B$cq=>f{GqNos~j1;SwyNjoOo4cgl@Rch&@4hKUj zRj0;AQK$)zHE@Owf`DrDY@*mqhl4&rDiVm&38S_P6fDF%tK$IF0BV>sSplMEQe(r! z1R0d>U5isuzta~=01>p-@2GukxsWRE;1g~`faRFP zG`5x{>?(0J-0&#=%7;%Qbk_$YI4ZSAWWoR5Fl}HKUe|>>#a^8$dPQyjdKaP zrVC_S1ASaA0+EGKRH3ytZnap&;&w8fbdM>)nu;Mf)i##_!=n==Jv~6xP&iEWOR&uo z&8{vB7y~Odz_iZ8nt`)4a;ECVS3o;RGTl<}vM!=2W<1wPg~Eni5z+Eqj<~NF9<+`T3v;EBH8(2eB~K zq#KGs<8fMg>V8Wu4wu$=swTKjP!0PiFAX^fyN_+zDC(nt1llwq&353 z6@1Z(h^|zERqOnHP6|x1BgO8m1b&8hyua@WpvV+5WYjims{a>4Q{mWeIvhAkmc75NaBS_b3D0j)(aO-u7Aw>ym|%ElmWW zNgl0}AOwTkJ84ZFB+9M0z2meJZMO>`Ac?RnV31>&PbyJN#MaP@AWiSb`{0YRMuiC# z1qw*8VS_EN!Nkw{!g@78f}QgD0n4@FfTZG%fQ|MSSkh9E78_{ASzo#}*k0YIVRpqT zv%q90uks_XpA|%_g|X?L2;{mB_qoj!+13#p>*Oun47qj6%Zouu_CqXUb6!WU)qPz) zRWY%lD3)@Rj%Zv^dLn0A-eXpLTn*Df9W9Uw9}_HrGz*|YjS{9S!z-|a9z+jVdXN`< ze3O^Q98+!@nv8b@q?hsp0o3Z7uxGQKJx^gVR;RlWXK+;C;S6XG^-8mVI~vt+z_I2g z(&!{(GFM&Ys>!5FnmDWUG&8hTbR7`ZscCb-|n-aF26uYR> zb-_TVu4&_q>JBc4xe7s)Odpn{5ptud`j{QIo4$)YLqVa?)k$w!s&knF`_gOw~hFSicY ztFFZqLvaLvV-2elGrAe=6n@r62uC4k5XhK-3)u8J#47;Uj=pTVLD&xuv8K4)^|y9c zVz3@CA;iKh#uOVpQ`H0AK`Y<~LM!^J9H_U%KFtp)tRy42<*_9v4X#fb9Xif8D|>c% zAR{m+bdj-1s5J7Dxmu1!`H~w5B|6ZCt_^THa*(JdhpGCGN7!(WAe#*Hln|~(=!_$) z!3u$B2*NZ6yutOZ9n`wGY6WA1h?D?v4iU== zka7uDH2r=$q=)Tjs9FukBrj{N0MJY-vkSiBnRkK2J(b7(tMxu}B z5Kt9fF~qhr#UY6ptZL-FvRE~qlbEkg_(Gp zqF8=6B$R2Ye{T|z(at*T1r5zp@iqn=?ve=Ef?8U;CA9mH4V88}sbT;Rx)+F{h89lx zg>5xu6ws}9%HTF?x_-MC&4MxJ{SAqh#9Co18ts=qDVdERuKw#x1AoZqp73@j)mL8lXc}T@N={%m?_O zuuT^GS@{vF>{C7=qy%#-S#g!E3I&9qzPzPcy^Et0Ojm}xSid-09`s8InZ|T4AWEv& zNK|(^OK@PFaEb?8ji_RWlZevhqFbr32GGM*tv*!Nn?(THB>G7}wS78)%K56nduE#) zX3450*q{pUpiFr~X-0L~YzTaJ_aMqkX9{$(mh>Zf ziRR)CxZ`e!0oVx!xFGB$E9o#EPS_Mh_BZuQg2QJjLAY}wP#-H9X(j@Ao|EKPKtwd# z7*R#(TKD33(+?zk6+pm^Xr$f(5SHsQ(vIn=T-U1$B|`G`IWpi_6$T_&!0OOk$Z#%6 z52j7$Ac~ZMt&Ss)NC>yy3>HrX{B9@JvU*V{NsTQTM#swZW`orQaT1D=DWx5>tX>M< zp7#J!(rkpW=s>+Rj3ENj<3pSZ8s$A;Wz?oxeki1PNDTHD8RJ|Wwc0F%*E+V$u_haW z&l8()1q%3a5KiY)hJULIWXVH4tL+1PYEPeO1P~G|ncOsrwQ5;O0tvJ8q9>R6Ca%@R zVuwiLGSy-xFfZJ0rZksvHAU7oh((-2qn_M^LSnFm_90O*Io`VhqVemuF`_xS2|=X zCUQDdsPA<6s2f2!1P;d#Upa_lri3xQ12+QbrmulU$%w}~pb&^gIzSz$g`YYD7^4KB z==~Ors_YJP%Efg^07sQ=V`8T}2mw&LMwsIRf=xwWe_oVHsM_MH(txks1=U89S@Xw2 ziHPnPJ~dX1OJ!>^=3#EwHpo?X5N$_vIZ|uTOlVN(MqGJ6Ko||u)X8ousqZf6P(uzGB|B*fj85iV9|6%ORQE}+2(dN>pI}5X=z{RFZaO%Y zuxVqL)EO<2G)x+xuTiLlfS!!!O50RR;VZ%;|4{}oJcBd*3#{YaBzwg3g_ zu6C_q2T|Qb$Bcq5WvhWeQ71JR^XlEI8wnkVtF3@W5S#@aAdJqME8-T6<@4GlagYR0ni^WT+ya%ftC7|z=hhW(wcAx8v1dY0DTV@#S8!5NR;2PXK<3cPR z!t2Hc?KMHe^HUdENte;OEmwj5_g^bhM3JPbLbn@HJzPVq<=FDTh-qS;BzTCj8dPvC z1bb-|5OkxDiOG@H<6}Y3z$*QERq^c^2AB;^F;W_V65{?-9!d|ltl^kmNldc637`>p zi#->W{E-G&uN$ymrizV3eaG>fP^S?}>L5}G`qCxXG#nvj`{Ift*BVr5^kkS-eQ?(r zKz$ZRTkR-doJ&MDnRUkAnl4-jAt@U4;3fo(4+5;?hC; zkQ&@t1_BC-?kqc)?gvV+&|~M0($ZND!sM9hp$@Wc+C%{nP`=w$sS#C?8=LW_+^s+v z+}>#cFp>_|Fcv?jbg5Qcm+dBuMp|7xi1+p8N=qlApyef!{@b(k5)$hW$YUMnqik&a(gea~vA6g8h)CX_5;< zF?@|8Y<&Ww6{I&LXmwR{95YB8rsrnBXw

    L2jxru0?EwG61kS1eDjvCqCvm7T9-yMTOF~P-u?UHioyb@a>YSx?qq}rtMRgenMl}xv(4KpGVu{O74a*#$FP3vXwJOGtR z3>5c7G>4#pR>}wyZ296AvgRAMk$||?MJG7C2U%1*f&vz&fuPBvJ37gn>>%N)Q7sP| zeHWPy4>oG}in4&8W zf!*8}@ApCxpnWlF8Z`ukCzB1Zq107BvpWo#eyXv^@-@m~qDot|tw16e4h>b@bZL`x zRm3smj9=Pzt2NGr$FO~(UkBKABWVa2!6E>Ctauhr)t zT%~9w)CsGG(I6yHK|6cY!B~%F)NXuB>r!2Qr-aqqAq!*`1kozdUpwFLQcEJG{=VrgjhvO`&7`;!d9$<0x%w- zW9oROp2nfpq2}gkHR>saf`&0IyE9Ce1WwUnwr-0xSC1Kq!O&J1h$SINcl#_i9tXSC zrX7?Ul%7O^CVF-&k6{7cj^qOhR-rJ%-82G;nAw67SjQhF$;!*4lxt#G7h}K(w7sJj zcZYi3IS8}}j~SfwDhAZIrpa-}8ty0IsNJG=OP(lgDT%@jx z3A@3@`RM5LG=~vQ5Fj)8Ldap`emyL-EFieVYO9LwFGRRRld1@8kNd4sw8er^j6KB- z7U%%FYdLB%O~l_4^d8Kn03P%~kQUx#lLAIpJg}&{A;IzMHod{42e*6t=5a$tVq;6p z`&Feau#Bj^VomcHCnVb#!;xhO*v7SsoiZp#RJe*6f-Dmi!quppB@b0gME=IG(ce*96rrlf~T>S zI8@ufg;v0fEDsD3v<&(q7F4JvaWABUYFaTORU>)6QBVem-jVu&>vJHSBEdGHn^@J}U>~BT-7GJRx-Q(Vj$E&IvXmlX5i+LuDSl$Z1HK<{?Zphg zx{{~ z9pA>I53~%7!Mwwmn=DM1*koP%4Q9@#kGra1id07}e3viUW&$*B5W`jigSfo#uGZCs!HZ z0xk^q2Vk-~EV@=H>~cgwa#HnwSaQm2o2I4tMVvugUrk^0FNH?P*{p65(?TdU<-QHq^ZPY zWnY2BCAPda6s5=j!VhSnXc@MB9i2A14&%3s4legV31D!O81Xp$|!=RS7KNk;NrfXp(?MA$%NeA)-{7&*;Ron z7VIPZ{94%CCulZ?>02H($PqR zm*70fsZ`&&P+zA^$J)S_iTMLVU5J|8&o-*8!50#T16wlUf_T{?h8h8+>*`QZ*6|kS zfIb^$EJt6B>WshA;>A`QkbGgQZBLTJl7b^43m%a+Y6w+(xwh?D!$ylY_&}NFrKsGb zgUGNy7{=L#KZw}-h$g-fuO{C!18Gt!s4Uqi8!R^wL+0Bt+15C0qVzs!_O8L>C0kN`7MczFlR&gm5u@^Bl_`b#NRnruw1tz zpqp!59m4wa2_4xaAh(C`Hcd8PuF%p70(THR+R2}$K!yg=2A3qTs$Xnyn$&>?KjO}V}q z>5`?+nW9<@qHGxhCJ{DmPon%0uhy;xsXjM(VQ(pUz+bTu9?$!|66VsR-b-U^go_u@ zstLLgxj`0SBJcUf-~oFgR)om5C^XQqSb`-V0Dscj2X5ED1#maX>>?y zCw-R>8ISUZctBH{rjOvb$R^4WoS?o=C5VeF9ej^Yx8lSvTNF5+ zPH!PB%oZZ#Y9e1o^z8)fVZrBY8jgk&7AANJfH6T^b=!pO^AKC1wQ?7Cpti4PIE*87 zdZ3nyBR$AkB}gh*w^`EoUy>gm+71S z@~7DsL;rK; z=dUcy@A;SE#m66hbk_NXvhbY~!s37Z+x@elBKG9M-LF}EZ+6e(t{)tpUB2pD3p?IV zvYXF;aCYqIR~OHCXJ_B{7G`?v=F4aP97h+=T=mS%eINVK%;`VQ&b}7=<>Iq>b%y`@ z?X&G`ubuwK$xCPdWAW~p;VVBhd-tdIUA}#0&*f)M-!OaskKZ}-m*>vUue|X$(?_6d zW#zDeYbyY=IX}R7eDYLapCcFZsv!> zSImAgd~EThtT9u%t-0{MKOSGa@#Y(5=l*No<^TQVpX3saso6_iYVqbDADBII!%eey z-}wLEWx)V&^H0gF;og-@WEf?-jlp4XMHa6M5&g|z30dkx$Vzn=e*&?sk_Ji zK6Q2Zhf}Tg)lb~_#<}d&*;{k3-1gb2Z~bj2eXNzw`SkCde7Wlk1Wik zKNUK9!(+$h-ui_zbMJr0!&A4jN9Ku7G^%ujN^`E_?L^!R&o#z(>27k|Ge`%vN4 zbB~*s&Xpd%Bm0KC-kbaE$HLh!SwQyn*Itn=9x2TI?S_T9Q@{M~HQDYrewh8_hx z%=(EpF-Sp0(+~0nASr$9u z9o>BHv)TRZALibC`i|VSJ8#N0f>&pM^YrKEfdAf?E!^^h>|?imBYQ>za*sa$$0sg* z)nL|o$Nb!He)*%EbJt>y``%aPI>~HyJ@);%&R5X+->P58UU&9r_L?d=_4F;Rxi@}t zJa_l+-kP zCr45nAN$eq_q+(C-+x@Zr**|zD)73ek8d6N#PMgJIh(rWeXZmF{wXp&{P)wT^IOOR zCm*~oWxdOnF8J2>~t;~%z#)cnoIj}IM7Kk&k5XO4gSse{R(Hw>ot`r608 z_Qe~LHQ;#i?5poOe%1YNNzq&U1DyxIdi=sq-kW^GjX(YI8~-XD7oUCd{<-Eo$G_Bh zIrY%9bI0E{d+B}eh@DM+{P{al^>hCFnYZjDNB4g>)oA@BmBqpIV-MeZ9DL?|>Asgv zrG9)zv&>-GCT)_>;scRnc{AOGS`>g@9M_fNg*V5;)ep$FdafOY?^-@EDf z4j+43A_~>iU`);}QhpCr#UzhsFbGuW@=lSC+pFf$JKJ=sGFFblUoxblY zsm*@u{)JyWmHPTEpS+(qdui&yoBm%f_<9Tc|LZINe=XefPtW@7gXsM15C4`up89!~ z{9_>ZrQ^>n?0k1@z8)`4$+ta}{qV1Tl)Lzwbac z_whF^{C?&4**l-OHuuy!qtkEk0XdB-W_QP5n_KUHd{q4Uy_SMKQ7oL0N-*ON9%M&wi z{_$ILjiq+>waC%j1M`1+BKnPIvj6evYv&d|@&4>DF1{{%?R~#J_Q-{QOg*qh9lP=R zd$KqGR?A)SoRme6+Ef4i&^Hzye1y;a@%8r~tC;xQOVN{4jW=JJz5b5z=?!@0iPa9B zyM?xLn9P9Yrm;Kq?>D=P`Ru?YI!1JFwzdHBrqp#1t@5=G)haY`>?hlU+&Her% zE$9BSKl|mIE==vZDlwIK@H<)RX9uT#*Xzf--+3T+P4%|9Tb|pMjg2fH#lE*bKl8%P zbC*MJ%6;^k$ENaEz9IL1H<_Cn>&w!8Z=7qQ?#v~x!*X~0N`2zR`)8+K`=Ni<;@qc+ zslROgIJewCKCj>OyZLXPffs)Gp6BML8~b|oc9hSOrr-3Dk1hQEx`~C`ABik{?BIV-f9^%H@L zz2+p*ggj$QJd`TWh_ntFKd>3MFeIlor_&H{h;74w(x$;^Du49i7joyYu4DW~T4>NpNBBcRxA*p=++2 z-Xh*Q^VJ&yGtUSgnR)-`PENh5|GMdCu6}v`J?-Gko8L4)ci$t49Q9z|%x6D()xzC} zi}N4n_?ZtMoSbfc@fS0tXTLG?$Q>V>E_nKM?e-r{|NB;aA@SR2?$j{-lO{>5Hk;S722eDnSv zO<(-*KWlN#ptpGXPxmdp_l5siRDL2)KN5fS%=hb|neN8@vl;mE#lJRAPyfK(effK? ze`coiz1qURci%sI&lz*}PukaJ{!sak#n0U*EPnQtug-q+l21;HU--eyyRP%ku0rj_ zCtm-=LZJV{i&sAMg~i6ZKRA1L{9k9kQJbF)eCxT{$fIW$Ze*%6ul}DOFaF2Ln-;HK zyLtBJ6UJ<~#ms;C)v3jgpTB$YPw&gl-g|#>ru}%|%u}cQnSJ!^@!4N^ zS1m@L`uX%jYx6V4*Wt^5`m2x3e63ZO`O=G@TD(~P&FsdVBa2_HY|LzxZd?4ovHI-4 z+0Z(VqUzP0g8GHf~+K{)&UMPyOiWg+F~kSWLe6z|1HdoBhs= zGsC~_9kUOWKREmCFCCqJ;OoDeW|Oziooc|MyPJvWf^p1LF3z4HUPZ@hCf`#I~uskc4y?c7h_^|9R2{(U+8 zE-3r^Z%5}(ygQhEJ^XOC@l0v%ijUos{lQy4IM<+F$=hb13@_ z!au+3t>4SO>yC-3$Ee9%;?y&9@hi8o7w)DOt=q1d`|G_gPu=ptf1CQ+)6eA|{J1Zx zoceM0;a5JN`(B@a{!sJlb6>pnGugGfe~|m+eez6$Je7ORzyC+}`7a;LawB`Q3xm&O z?{IF&{r!(p_MP>gJ@M>M$?2!|3c3F}@uTd<^k^=exi|NVTOZ9n^-Xi`mLr=}P_uvj z<4=7j_p|%&%+3BwBB$)VYwmlmm5%LP{QmU)$KIY>{RFW1i`M|tmw)r~x!-+X%-#Cp zf6eVVl9_((Z}(3B{h|5XU+!6%TE6jh)BE2_%+D`Ap54~}CwuV8$@!nY`rho!*n>~- zKV_zW+aH?#%bjn_wI91NJMoTu&hM#n?T`Mm7H_`gUDNN5+%|pXl?SGO+j?f&nI3*( z;@GFBC$=`G|MAAy!pWPin}6q*|CW8%*$>UF?tWf@z_BK)&y z^Rb`joPFYyDw>W?Q!omzs z__O(&j?Vm`^NyL19{%~v&yI{Pe*Z7;S!hJwFw_6tXXn#*JvhyL_C51YM-vPG=d%Bt z`NS9F3)G1_7rb}BYv$=w*X8ayi!9vu_VM{Ep7`qm|BuaF;R6dtFL|&1#CPJKoJM|dt@Ua9 z?eXk2Y--+rTQLWI>D=_Eo*11O-~0NRH~r>!+1K5+I^B2nr}IC2{M*xiT>ISojn5_) zt{<$<&wu!yY3}v({9DC?3txQb%>4DqH!ciQKb^m3shYd~eBzqo}GWy^!<+mZ=MGw4Jau} z5i&H~v-i14p+RWWM50U)qCtk{QPMoBC=Du-r0&`K+=OTlsWgcaNy(55NqoK6=k-~y z&-b&w-~Zs;wH`m5z4zT`t@GSxKlgK;H}K@4e`7JSP?FrA!eWbd$8yILBDi;1LG3mUI2WAhjWacjvkHf!KEcSlwm>E{v+A5?B6>)VfVKUo^U z2S>Gy3TL*FD|Zjkn`MG&>)3iykR8H3ptFs;(NLd#rm&D}FduZcqO*QmknOd)Lj4?1aYc+ykLf?5nGqxH)D6?A-TN+z(1c+$@iAw%?9Ha%I^b z+AhbAz4G2w`Y<}iomz06ZQ1dW{im~uoh0GPcG7!Ij~NLXndFz#?S|r9kv~Fgk271i zYCjbI)+;sidYH^L?g(akkNU8+TKU=X`LSex15FeAI@mlDdTd@h!8#%De`C=%kcPT0 zEvD89agdS3Ir6fv7(z`FXyUyscBx52rbmrnz80=sN(>>TqZ_f4;uZ8r@fwx4R1ZAy z6UE~K`5fog4$x%14$1L9L_Tt+PC~GYF8c=#01x#YJk!aQdxO9;s*;;cIE!DaU3a$3So;CAe@%j~H z2Fd`h-lT)&%j0mHY8eso-3%ujJ4Yl5d_)_xGtld^TmPQH5?Siuv1I3fDwX~mq7!am zKsVA9#7D8Qb5S_)aTAxS7fL`Y;8zgpa2)0EwZd&;5-8f;AAdOIOJr14Ah-I3*u8K) z(p*qPhR0N}UO$>9l+jvbz>!5KM|24L9$O%0cAiq)=z~|EE+?g8gg{+(KI@464y2oB zKandxzw*kc;#0bSHnar%_D?`+T{1eofgjjEnF|t+{2L4501NzS zTOxh$aymBCGJwyV&*0;|2z{8iL_3Vhkh6-;!FQgqgfi_8Q{yE`&=y2*bo0b5VW!9~ zeLwWHmm|xq>+l2-K|V2wAWxXd)B2VZF!6{oRQETh*ZmA7PpR`E+eSAWX*>&-&W?dz zx7L#dGGkyUQy98GJ42{QheO|Uu6SAGGGxE_2A=XO#V@bLQj0%Zg9Ramm|nAzo}YFX zsr#&l{4)IH+>CfU@6JMc`ukF>*e-`lN(A7rw(qsyGIc`xKqQ*&q+nkUGxcgQW)E` zenT5B&)}!ewQ>027MS`&4{tEN2A2oL!1Xnou`S~4Nbi}sWaf@6_QplySSHb$8}j@R+qKJ_-qWo^ zOBu${wYtOPr|Eg@#Dw#>xf!!3t+TmZZ*Q{oRHevTx4CSVmL0d3N0h4@Em1dBEzdo5 zbpfsEl|{3P2e^I<1daNli@3q9tGPGpegJx&BX@8{f^PB*pjBd=X|Cj1uAbjD`ooL} zcdBG3esVgFP4bMx^@TR@lF(($ACi*`dZcT6lCg5&RI6<80mQjW@wp;7aE%Y`4srTDxJ`@KL@nY`3hyftD%siNfu;KcK#sHgTV z=&VX4=g(%rj!hKWp_7hd&ai(|0X_++rgL>y=XE=0|&?Sq3roV&`%)* zXz@27>rZh|PHi^s&VR&lv+bqoenf&L_e*7YQ!CE+S@I>%kXW z^T5hYiP${h6OeeKfJ?L{ko&PH>T)nId|1ARa^6GWLCXu&yz{vn)wvM_+u;O?YLtS< z%_5<$`wY0hPKf@fkc-p~=;4HC?x2)iLyNn4QmaLt5i^BKNM(OCGBnzZLrt~-*S}{8 z!F*42u8<$K@U6B1w&KeNZr7Xt0)?6Jri?0&b%_H}z=6 zlxFbpj|X&i`UXB6xP;th&XDmR%8;(Z1Qx3-fVuJ3bZVOt=`r5~W{gx&Jo3>nLvjub zzhVb&S!vQgig`$!IhX#EErBZs%JDegYGQ7^B=pxgXyOlD2LOA#?@ER7J)l) zTQ$T%Dx_MF?4n$N!OD9_Guo*~T(ma~7Z2xgmAT;#f!YOUx?9?;T%KzV3to3oDmWs;a30j`GUN8-dIxYeE;ZMNa z$`rm+F@$naJn+`US2VbEinzEl0!xykEb03sTG9D8hur-^i5|U9Ju@i*S0`(s%ZXX= zaauI@U`G@Fy=W`mq!kZ$#_qv4>xkE8Ni|q z4a7s8FzyenPfqNiGWE6DVIt=5rDuK7x2dYr*9hfe)LZgRE(AD|(sFsZo2ew;+ZLg!j zpU7~mGOHXux?_gTr?0?uXZIoX#=C^1{w2K0<~^wNSdP;ky`Z9lV?oB+Q1;Kr4e+W+ z3f#8U0MDPb8^4Db+gn((|2h8n-4Sc0Yk|de_pxUUi!636fIJ(|Kz}!P3RP4LhC+cfjWo!ZidVr86jkj&a_C`X` zVyv9)Hk!{hRe#G}9LP&+eUv0$Z?7N|M~&HbTq}5Op9X#Br~{krbe}y#8k3VMwQQO2 z0^*xS54~S4jIC1DK~E3WaU-q1kgwAb`_NM*?zh*oxW27t*+$lzNEaPmBMl&D1FJ@y;7G8FQbzb>RcHO?9vO$w36o?vi?^o3fy2v zCeNgBtJ#y}j^qoZ&=lfcx#Y-hJe|wEzWF(OW8WC)qPyAGc*?n_tJS!%_pm_ z%4KiX$(}g%Z!FNa2E1jL zIL-ITg!G)eOBl0`ld*P>ps`0YDSRmurplP$lE&X~gXa=h)LMlDHihB(993@CpS6US z+9q=6hE}}qz%}gftP!SJ3Zu6Fti-p(FZ!1OUMfQtm-K2-`QS3o%-ZhJ^3Ed5Mq-jtmH#@@` zSuu96uQlsQOgYT6e@gDXY);;EosUlqe})y63*i!^hy6ZWfU|;&=(|(=bhozzc(dmz z;_!)+s)2m?K%x$*XF7q+{M&KdNh#WJ)PY24YPNf#W~(SK|ew~PY0UuNgC&WC!px-N7YTS(sg9m@Ig~{{QuJ<0RHVmE+jfy?vTy+KS2%z z_|nN85L<2fGMs(8`3xSr`)UP$&5wVn_P>6ezu$a;Z4yqz0);(=g{N?7!l&ih)H@|b zOzATsugR7qkXoJQ>yB|LkEKOg{mO(-S6OJZdJP1;b-bISXlK*}g*_{%m5F<|Nn@kd z5|^@ug;h4f6=qgg3L#t9e%->~9lkiR(SVr{D|`)jvBG$*rRza@w+BuFa&;aA_Is^x zu;b3I(y%inIn5>r98Q?Xb(qqbZw1SDuqWyZUe&-^UM4jMH^Ses=G5#MiPAq><_{p? z-DyWtii4Qv9FVO&mm-U>ml1}huTZNkM=kara!^j?fR2_%sZ!EcVlmpt4 zkXp$}1n`VKkj!oGp&+|JNy!gN`;Qqjk!9lY|Jb5X!?1ABNC<$27F!A{AUOax%c!`j zQm=;Oxi%%)72~^z336_dkp$u&mpNczZslLXa?6feABj_BBnJ#i1+L&rh)Zy1XwyVHOF^-+;$?=VIF{YS$*U*lwLnM5EFUsnD zu8bl}tPr^-z+mzWV`M8xjAJz{{>zJs>CB_bznoGY1O9a(ZX1JBae^BH7!&$g|HL2J zy-Kck1=Ya!OylX1DA={5A^+Vz2vS8-XnycS^*<_$B1q*L63yCM{rv~E-l7G9ZOK;p zoA@EYFVd2orBm2v$_Bh8g_yM&#a+?On5TbbljXrcS-*#otTiqRWiAo{{5uz#2 z2iJ_TC0$ClrV(R~J=+B~GU+OI{t_xayW^)czCey%>B-J3^e*i|dp0X z%P~5AuB9H#jW~5s087+K4;MC`nsh3qM?I=$sqZ&^YG}-t-Pwv zIKN&q{0K)sQ#qw2n@_P!JU4aMq5&1>)k<87Z6(QZ0FVFWk$9@0Q0DC36niiL>6EBN zleeZnvQXxyRdnMf8Tf<6Q;wMoKasA{`m9C6cT;b#CI=CxZ4^7QCidt@Ag*}v#R7e{ zHg0M)mUJFCD9$?*qhmfMcAY~uVsYAdf14Fy=o|!ZCa?>EaL6K)1Z%f+V^l2w)`um( z6QI=+`4)2_5T53s&72;L9=2WIN7U3`BLU-pfrvLvLA`J^5LMV^+IHssm%ISYv8`9a zmLiS@lR-uvHkL9JYs!JxAW~wzvKzaVVW(y2UIiaw@Np7LKnQ@F;S))ZgH5h+zsPym1eCAyNyzoatg z=zijH9?I1w70v18F`O_#hsx{29iY_r*uV={1)VAK7Ng+}sS_(OQQVdC(;GqB8c-$u zZb=V+>`>mccwFK#R9bU8YesMPow&j=QJRA-H58PDKD>j5H@I`|j=NcuXs_@pb6VDl zCG^&X!gCZgkZ3Hl#M~Q#|CK$i|Dc}R1r+`!9Lq1+d(K1?#_6xyc@11zC~-5deb!zI zn8LTaQk5h-H>6*jdnO(XZI7y=@K+yT4B6=rDmKvK#nGEnoj}ehGEsMGg)aAxVS#d_ zyuTsZaJE-)bi$HNM*Feckc3!#vE!lJk5X0feboX1Iuqai1CHeU^(o+d^6g_{wE@p@ z?KMFoB|G{JPkD7jr{K?;&Mszp;A;`3a6-T%<`BI-tGk>INSY;K?8$E>`L4)tvKligma%oYN#tKE0!>`GaIm<%^P}K#&6sbSe zcv8RrJAkQ*6GRyu(2h0W-)E6VZ`cH}8#7*eJGET(xwFS*iOi)tS(O1>(VFs#s<+damFC&C4muBFxTu6QV zq}FskKRGG`QZB^&n!p@s73NGU!~HFxUtMknyI~|)4r<3lHC8?kzG`AK?`P!+FQbRkVpz1pi%9cCaxal%VC^VmK+wH-1~@8cLJueuVho&%@j5uRg?|po=Un!p>7fh z>;f=-8cpW(QTdC^d2j$~X8 zg$FvR>_fg(xHvc{k*Ssh=XEtv%~sJNtsPH_KRXKaCb3+Q_gVc6Y3yE2C^nisT@A zIx-e4 zz1hA;!Y5@Zd1??rCchV%p`^+5NoCh)$D_$BwMX9GVasxzZ9>v%q8KF@Mq%Gs{+zgB zf0%S9tzkQm*&N-NPt6j|xECO4U{?V67<57bOI-3W^mAW)M37`GdpYt@OJj>zydBzd zV@q}xrsetB^WOBX<=ngt%a50}i&{@i!cN+bi0=g!mYCwBM;I*F(pH;8I{pNN=A;o+ zJN0M8%X&_ScBVt<>Vre|*)*cU5-$drd=XS=`nhG&NMtY`&DDe)h!Gy`sA}b+P808F z8%h^R!G0aM-_9xqm5*-JL~W3=mf~T7V^F6hRz4Rdq&&!k0~^Z!7R?pXKcHWSb@ zxX%|faNK$Z_QhjdiSvr8iWIcaT%kvU#fYC~$1JDN-wxJBbE~6ueH9rdU%4&CH0I_{V^HFj9da`C>6ho<11)Ky|`6U1FyqnffrXZcB;Zet?MtJOIa*=bnU= zfIMH2EI<4@`6?Pw3|D*0z&$fnL&q{Yi4lEN;zh4`s{;ai7j5WL{Wuieprm$kIU;AR zYmu>{c~ZGGamNzJ2u478L_vWXN5F6LXe$$MjI~RczxlQRP1wFAE(T-jrb~2AZ7=b{ zr1JsRQNFZ~61N{ata+#Aa-ph-7a{Ii&>aR>@vctA0s*;eXA0q%lA=_(Ts?YO$-jTIC(;9t7O>ph*7ZXdX~#U$)IiH*wm3 zBRpiULAdU(r128X`n|*EAL%7?KlDDSO0VV~#+XqdX>O)J7mqs@=fGI;bc^`o@|u!d zCkw^6iVO;kn+8Z*4Z9@Bih4MM9R_#=rVSl9wy;#EV9sTS8$SGE=zU+;V#|kB!MO+C z;R&m`81ObF&Om&3ar`-Ol4zUd2~%eKy$DBmS1(9|3HVV^umKgRaa-n>HbJNh#Vnl+ z^~F>iF^!3q78HUa8HF5zzDcV4XIcuW7SE#j%qD^;8)8Qb(CCGr17Ss_sx4?7SE3B* z$>PTV5@*1dzhtEBTb(Uq_Ir`gjYLPqVun#^j<2vmC>_{$Ak}}AgY>wn>dDSySlx}7%oQNFGJ)UV zHi<};KPuOz7eepVVO5Wl>;5@0r$p`)r@!@*`P{6TJFT0w z^|L^AGr#v7I{D;3k+(-wJmm_hexaVT^n+Ji){W=RoD#P(NAZGpk;*PppbxkpcYCuxziO&i90pEA;MpP z*JAS^SW}(8ABY2ry8v`01cY2=F;tzYjnT2jhZ&467tO8}<~%0Ca<|lx{9KQ8k1J)k zDzB?)C6ABUYDep6(ppW(h0cA7El2#aB#GanOvx+Ow14@A zo}3~0UNm%HKF~>bkKkP?+OpX|*fRiodgL7U(`6o(^*e7GP8^kS?bLrR2{Oq-mW7l6 z5foxCW0>q5!jb40)+J9F6jsCW;vWX-DZ>M9zl|smy|+KY#pPKPeNRHydSgeDekzn0 z^vBRM>O}cg231HckR85m0ixc6OUBg!6AH%2mD8-!DK{=^Kr%&j`*D`r!({$cQqJfw zIx2?kH1+|8?8tRE&N+i@A^32DmWo?~=q@(c$gRKuseB4mHv2! z`^?V0Y&SG@D-Xh#04B&Jvg&!c6->pKBWypAEqaTyeMx~Kwv3B~lv=Sf63y!eIs9Cw zJZL9ZlBr23B%oO2#hrnaSmYU#VTZZY(161yw>}K753I0#JrAQ?UoFvcfJNQcN_KT9 z7&c!e@!NqZ?CCe#Xb`B{?1|eP6!0n@>mUG~E>4EM{x3Ram2!kk$Jp{wp6~+vdvFrk z#9^SvO|c$G6W7!WA({f6r@v#Ax9fYO{;{B^_CD>tb?p$Qc`EaAjv!~*ctzbPcMR?N z8<~9S6H1W38m49@=|2&VMTxa7gK@^QG-6hd%D>oD>xnj{iT@M#-w{~i0&rl~WrIbi zjtYpS8&A1j?41ZY@=Y_mihIz+6Hn@)2WJ;SuDKC~dcSzNUMcYG@zzDBq&J$rG_iYC zkU}Qs7lccIG)(P05tNY&CCWZTMv}`(AYiqiHPE0<%Iz3SnFy>*0#xB6RH5p30mLTJ zcu@g`jCu^o`RZGufi<1w|Ahh}nNFj4M#27F&!adXNW#>T>J6GgxG~9a-Bt1>E*Vq` zxIKoxIw5P|{nx9)tdBFzn}>a!WaQAiNE z4K!6kgJz(%is+Q}P=gUM8$nfeZ(n5JM%}~BlJE{DikV}OxLm`F;%`5Uq3blMc%q-} zzxiwagHsX-on+e-sKw1m5+p%QiwC*xv9f32gpbI7OFEr{PU+~#O3`Obpt}u>#T`+F zBDF#o@wmlsr(OXTf8#s+;Y3gq&`MI$%p_irDdgizIBoX(8wFbAK`byZ;z= zO~Es48Oy9l*qtG$#gw;A^f8wIm?7FwcQJ3tAREG{N2*4QN~sc*h~+g?9qP2Jh<`?i ziYnj}K5SyoaN(oSv)m8SGR<2`D!UCsChXa8+-6c^9EsRM(@xl`Dvy~jnmPYN1%5;D zAR?n?9-?MA__-IaYbhhY8NLzpi&$sgSW7)P9`mybaa?K}1A`gGS$=Ad$y;g;wo&`= zsVmO2GDe(DkSOF7%~&h%mr5R&SmerouoQ=USyzBkm@Sw*M))LRZ{eKr=bUu7iMNvY z{($ew{&pFJ&tI%@FOl+3~NMWw;hG*5MYCMt|gR69h$8axn~+| z6j3hno+C5-Tu30E{Wp|XJ!Kj_5!T-+N=l4v2RCfysO23Ok4uaxH$B3$-z0^6_dZ6W z5={%;?isdbdyeI9d$z%cX@6622-uURx=Z z^TJqr?u5l=>xL)ptI}}q_QGUEvrykLme95TNDC39Mt^4w$9ms|D#}OVrjWq_7sTiH z<6)Lwc}Q%XVA~%Y(YwBs5~hE&FEl&zgvCEv7Z36^buc=^1bl9*#4rGcFZpKG_o9SM z`~GQH459*NE&ki8Z+04>@xWmfqlt7b2LYLQ@94KVNg}3d=mvg3+g@jc(6NnEHCv3z ziyvYV8XHSq$&1QP|1f{q+KRa|xW#tz%Y|$QbI4`KtArK9F#NtcR^GmI0nE&fsFwuN zOpp;n0lkw-r258~&(`vF3;@-((2HTF?euQt8AyU(%fg6$(9B=6V6Zz5`#t!KLjR`r zB3VHeD@FVhF0guTA+Y*i0K!(|x_sXgtvk^K1!`U8DBMsVboEuKX?Y`nRWJyKd3_%W zK&3Mj4c8N6MNwQNV*v}sRv4H2JVs5fSSFXmp2 z*XQSsw+@-4xMGzZ`shT5A%4o(m%&Ap0T(^%`xepX4A{2ub*}l;VdvcoS zHpEz!DOc~e+1%7IQ@$!VH z=*7#{{o}>}?&!~sVMl_)Rn42v?sXLQErKVp=%p-35P^%AE-1-;$J-ZHjIt$Jm)^pN zfg|b9RhztJUbF9oXEh1N(erwQs2fo1*<&ICRog8SzvOB*oi8<*%Hz!$nn9u#%nYRY zKsh`PDq7+Pk{ZN&s>>1flh=yE1i`b6uIQN!Ow+*{z`y~k)8T-_o*Jet;<#k7=^>(( z+`3;>BwKdb(z~R%VHq`6x|Uyz5v(d|_a=J7GmZ)sYdrFiQ=-K=j-;CT&lbR9MczIp zb5zYVd$p!@cd+m^<&LWj$N8La+!Cr{aXe11sq(sS*7j69H1@$BVmABGjSf*cC74zv z+X~W8mH}O>5Ap8@FHH1!X7-~Cg%9LSXfW$K@P;?lYB|SAJ zb@wdU_&s2Gc9OH8)+B@g9xLq6-T>Ru}+k;El}-OGCrv7^BXm4>kv7-Q4bDmE2Nl`>r{u)@B>ne-5d(^nL+z{&MU9IvYqVxU!NdL_DP=CHR(|$|R zwJu(KH4%!4ulbL){a&htkIN*wUAqHBRYYP!k$9!fDPUo<6@1?&1drFZ5T&YIiNr;L z7yCla&xKa(>m91(%~)4%HMX$y{#m&0U7ds3pvaMRV~ea);4o)r0~%5OdW_i4_pkz7 znTjVfXyfef^71&srI__Ww0Cnv4bx`0ocOVjkU@fTEJgoqY!ZkkKdtkxZX&*;3hY%l z#LZQvLT^m_xK0A=E3D}7JX!QmVHf^^WahtB`1T?9{45Q9Ex*sJ{bSQmVuG*BWEsWg zfC9|#XPlFlrq-J3H|n-jU@U%nW4+zE;~SsA8PX~x{EZa_uMSX9ym;`ZG&vFQGlU+* z$lYFxe9T*RsfS=Px*Tvgv1YFxCbK2zIM^GYR_ypdU%0V_D{EbO8TbVtH{~acRLv@y zMkyCRxnU!J{((zMb-XVI3W`zo-5aIk$l^VwK&JEl52gsuZblhC_4a*U>UGnU-3x+0 zt2V;I;xGGGHUT{6KZ+&rED%uhAAS+UeXg?{<&ZBmkOXixeO>+b;P7_S{MC#v_s=98 zT1#ZlEk$iD?K^-qkXKH{A9`<9XFBUKZGfmH$N zzYNm)vJtGHYRk{SXQ?VWJ0{n@JxGTd6Y@!WyUP|~!ccpeE%M8R0*2TFz0qWQtXcHa z*JyUzELVWv=HFER!nI-s6DRt6X4u3}fh0~!o$&M)!iPXl7~CE(%8c|WGzwM(8cb`6 zw?B#cXbJnzL(Fh%JkRjJnq~3z3v}+UEm+RXAL5CjB5Kuk1U(D|5#MKyOWKrWZSx;k z^Qc57&3bk3yq(@m6RS;PlCPrK#Z(a;iK?MJ_=N2pl3OJk#yr-Q%Lgisv-V#(S%s5BvD6?yl_lfPBKWkTmli};+?VYN*O01|nl z_o+rHZYLZ9UFH7}{^q$ELz|Tzta_@|TKj`_+L{j8bK@Wr_+Aj>YkB3mFw3faUM)rc z6fe+*)0s#~1{$KpQWf4KM2uImE}buCnRs9F3@GM>$#Jte7#@wfb(nGov&>>%(r~+W zd*dq}nSu+IU8X2phGht=&x2rZ%QKPlDv~#J$oS-QrVEZ>n?}YZt#4L>!4XLlcQ3Dr~0BZ zLe*}sVAAnu;1-`mLKuzFKlK_AiH>T9_-c_uDYj$-R5Qhui4NT?hAh_R3n9(NeOIvf+R_CZ!Pz}7?-v2Uvlw@@TQcI~n|zL(K2 zWY#g5zqJH`=Eqd1o|)vWlsCQEy*UbLs~3zW*^yg{CbW%zI_1vQPU2YpqWW}evV6Z4 z^cE`%GTaFDEnz+F-%Bg%tlOQ~;Il3A5)a)5gBen#%rB96p0a_*Fp`QPX(X3j`LOVz z;?tic9H%M&B#1d8S`)DvMZdUyTrM+E>a!8i@!T&43D})_EJA#{N2dz#(e;_lg-D?7 zD_N$k)B2Hu{;dZW;;x)EEMn0BxV2b6Usxp5@P5U<h~3ccLfgmJ0@#V?4O4X)gJ!Gb_?;OcpWM$@Ej)A(yEA6-smp@_|^PYN-~6lHuNvALM17>ZG>#AGc^^(e5LQBslL7ksqN=pNn9sM1oZ;G0Jx}El>dwJzR z%L`UQC(YRpDTd|ZZeb+VO&-DMp*mydn}hM>t`DD8H5|jTD+f}2mcDeWBO`9P!2n>h zp+6k1`8j#9NOx{x7X^T>&vYz#AB~Z&_~+vsla03)*&;J6n{cBIi~*M<@k<(gMH%oE zes;z%pSLfRO1kSryuF-*9z!dpN8}zAn$0-%?LCP^4n1a{L1L0IC-^Zy6Er*|_+hz^ zxQ4OZh%+w``KuFZwe2y2J+^r$)5_??96i)Hf+!3cj-+^+0)T#v2AZ>p$ILyC7d2aZ z42Mj==yDp7|DX`|pu}DxLmXAjJ7yeDyI0y^r@TlhXbLn$RLubtg0Q)87`6esyG{ln zZJqs*7@rUp&yONp}T*Nx306oKoL ze2@qdog0jXyJk-auf4W9z2)P&^qz&|Z7v1QK4+R8a~NO~1wd#WxedOy;Zy+KnNLoV z5G8Mxbsj!7VG7!>Xawsrk%MZ*B20G0pd+IQDS&NwZGYU^T~Y<-e)YgQ7pxBXb3qKX zF9Qv4VF5&RRIQ}&i{-)SyhL797Q0UDUTzR7fO6A~3Aca)y3pD>qM}72GOX35aM!Kf z$A@Db?uVp~#PZe}0XP=C!M|q?HIdL}S(soH>)N>SDb?ws*@btruzdC!-@jqxv?Tv2 zusS$!^3fgcTAAiCgJ4Avi2jFZ!@92s^ zR*c$y%~>JDn&G zH_$L?NYzm_|KTL&dVcY9yd!{HC{YTPjF8`bZp?@CRGB5e<$V)eg|`l5lQxho9K61q zvb`+joTS@TkV*bmTu)#;BtoKA(dZchCZ*i1Z9q{f{;pObV1GdJDdNteJ>W{09r`!YbP10N^@x)HyZkGc;UcJ zEqK6cUh+=T0P%QH06tyEE=>7M4%8e6E&nNw=g6N5vHI;6%UkLl{W*+SC@m-gBhtlR$i_3Kq?aN#f$>qsTQAi&u9+LgHdGM(~N`N+7PmahK6& zxf_dqx*$r7)$#yOnjw{^PoAeP9b$)Zey!$^w*dzvO^Q{rmu`*-%y31g?Vk--mSMSF zy)Xw0Rwlf3u0ZP?8jG`$z5ugRw14Q(LMZn<4(IU=t;w5G85T_@Cu>{n-7|W#_vS#e zqZ^E&kh}j1uV$9d(qlh)fF~@xC86AxN*5`h$l$e#bhor zpqeChde)q9vMQDc-g(X+C(o{@7mq}{?^%jk&wYdAL%;V7`(Y}K+=*>AWU*=}zTX{5 zi21Nc!X#6Z!tKB^>Sp9dVTHW{OYhZnhiB1tP}ky~zde`W-B7z0716Z`v>>x$-9(qJ zqc!%@3}~i|hd%6#%YS5$J2xm>oD~p4pdGCMLw4(mTst{fYtg6}47nDk; z2HM$)nX7dtC$iEP%oY~2DaeI%&DC89wQ3VdgcNbEx&ofQCJWFNd)2X@kMC*m?E7-s z3#e%6oXWn79{>_b+nwE+-RgQKqyojD$lSYc> zIj+?d zS1@KvO8!fcI(@>f8$6G{GvprvZMA9x!YFS35}x-zc;*l;#jw}&&;bDNY91@jA$5{1yFsYg~b;p6@s zI-6)M+e-jNlD~&kzKBSd*w$AS*>XpZV&N{(`^98ha$%bR4fiRX0}esLX$xqOW%jx>3l^vlrp#7JW!!dLv#CTh+T^r2;SX)Oy5b_xPuN54W9)N z+J~TopEnrD54xb*T5N{)3s!A^Pb5^Rh=e^VdxyzC!cL4AB4(V5{AszuEdFChiF^cx z$;9G2m^=RN%1DLknEh|im~3WjWv0AJKk+o!4LEGXMgsl zAgT;e?ubL^u!h z$A3U#J#Sif$S~K+fn=k%F)VXbpvG86)Ml7G=pr_15g2cp_4onFPb`dJbS7;$EeJW2 zuPfI-Wl!Cg&r)t(UL!TDh4mBMZY;d?3=LnX6s1z{3)=Y0ssg%-ccs5X(4EnVd_n>r z_Vk~kdCZgzDXE||aF9a~)dfc{_F+rK5(3_2S4B>1Zj$TCFpFoeI^bsh9HRROk)>^W z6~ZIf!ydD^%opws@0nUb(xY%e&QBxV!nSHrcTi$vSXZ0+ep&V`J}|Wg9`fF)Pywe7 zh=1~WL1tFz?K=apa96TRnrm_JjQSQ zxdzh(2BnMAaW5--LzJ%l_F83v9S9T={77BSE}r?tp$;>y*~Wc z&cU7Nsb231k-5vj!viKY2rN#FIGK#8Q;zA&}wzXa!%9U;`A@Ia*&9UeJ}tyxf_z~?y*V3#%|wjN`m>EcS11} zNw%b(i``@kHsMde+~Q>Bz|$Yf9 znTn;3zk{E;2s1QdL)&T;=ub;Rqsi#!?WDeGn z{ZirLHQEB@>WU?CJz{5kKQP^4-9pabKi`pNh2MF_+R34V+a0a{rqe52giB%@BH6Ia zr|c+f(BD$dC!;luzGdy$|318ykJE*5DA<kHrjPP|vyaj&)GM+=@Ws z(x)=p`;b&AsHe*>6bNm3O4dm8|;zYgi7tXf3R;fxd{{>34Q zQj52*vudw*w2Zg*-GnUu1jqXhEAIYp-U=Fv623NTUq5F|zuzf0S!p_T!NK_qYix&p zo25b1t>g!{nPMtif5k4|gp4qTsIRZ#%T)r#%@TLc2d;2vzn3dVy@yJ+sy{wUPnU6S zW}^%CvrIlP6U~sySj!{d=-B~(w_W@fNtt)92`H#QchDQre@-W7yKCLphdd5LrSdzT zmon(s#^9wv>emyfP)xe%LR!wJJwpT7V5Ssl(7pq#e{{4aNfeFcu?a>;DYKf>6xx#o5wT}C84?G zZ8G)#P{FGY@Q*ODdD@<-+}-`iQe)gX{Kz2T_sjPw`=kkKjrMz8TpF*bJHY66=6bxN z06s@hB%_SdSkXw5z!7TTZ}dM8DY^Qve6*JxBzZA z<2-t^b_@7BX$v}&DZS!~+iiAz&eHAXPO}*?>Ur3xbevb=+2=C>uIW z34ZdAp`EE5i69xS**Un}{x?^>XX490Hc12Tg+~Qr)y)V_YGd0p_{-zFRMlGAoE8l} zr&4;|^pP7MNpic0R%YQ@tGP`92tHq%KtuVBj6H6LL5;JS++M$9)7BO@3s=$D8T&_M znm2UH)*IIJgYKlTor9}sGWMt#-U$6Kr_gxjd915*RUfn>^l2O)lS}*&l^$Uh867$!u|g4Y$4;59kMlE z#h=*S+1;_fi8*Y2jZ(2Zs@=1*9qfi3?#s$S6|Ssem4ccT!Ivy#FZ92ri3KK}eykE2 zzdGeKfM<<>WSYUew70n3))xJ!QBp$;rR8^Se)=`NC8TV*K-Nn;zLUa#IWw?U#1=}D zRBO*vzME0sv&)V|!l!Ov?Hj%Thj;GbO%Z5vSxpvLtm|(Tu=jD^CwIHeVrip{%KJK* zPNqD91iah*WMVs!4TKrvBSKVhkcdTT=Tnl;o;=1fj*iUAs3(gDXu_`t~aU%H9$|OjgG}{{C)C|aks5mF)k)J zO+(YMJ#KIKUbAEI0g;<9ZSw&fUn-qC9e!)vp9}PCJA0{~>yw^==G#bQS2Y`skq)HN zxBh>OPfEoy8#9@2nogpunXD{8X{JkR( ztw=LK=}(?DJwe2Ul@C(Ft^PPd7w~N0ru#D2TNwZ_C(pw1rh?|O+vsMbk*aMiYW8$o zSOD-jSOE<1hij_*ul#>E?|K{$|@L znN~w&HoBm6wqGi$N{8t)LX9&`3SfCBGOr)TkPf`dc^|e7D$KjOmO|!_{Ea)otwY&Z z1|wawWQb@w_8`yZZ|h|z-GB2iGd5U=^@gdk}yHSh6o@gkfxS-M?%YKk&j z61zNmLwAchk<`<)oOsN(H4B7xzjAof#_3es-r_ml=}kwlImT^5^*x{I0dXJOe~nol z$EfZQFrg|j9@2@{THm~)m?n#HGnm+S=A#hYwK}G)xu>B#1RP!2-UXyx_rCxs=4I05#8T$3z~1x;H6y+{b(%JIc=TG*}m%i^>NH%y7G&-uzC5YYf{elNq|EB!^5lmsXcTc_NPQSvcM1XSwP8cWO!`EwxXp#( zOV~#2tBNJ*S-Z+?k?tWbIEl%&Pg-fNQUqhH|wma!^=5~ z)Ea5Cd^a7|fo}W;08IQWYocLNk3dWk)UDuiM55)_nd`@W)E!Oj~ zG+^mJDbHpV`6mcdKLN9UC{=aG$S#w82{b1k2P2AD>qjiMe6aDX1V}5K?n^T(+GXBo2e2C zo4)Is1g)-3*X%rZ4?&*z`K*8E3@{1d>_7I!_}b{v&9f@eZsT0i@Dc1bsNn#&zqG~) z=dKIn8j)97wh}*OZW9^|Ct(zrvRz1nh{|Q+Jalq0c2(`n!^f|W(uvYuC}t@B!>0dd zc_G2sNXxi0YDd0$Sp9Y=g3bI&&^#h(OKQIx$RcaYbzAOJ*HYtihXU<2bg*h(IzbQm zA%GP$ouzLKTnTu32JtrnmnpUT+oBUi?yDU=SE+zB%Zwnnb*Z6k?;pNXC8D5mA`72) zg!xO6T`kaal{m2d2|h@(iL=n}kNOMPh&5PlICGbU_Yf)bH{uQ1<}B@&%0V%k(=h4Y-4(s^z^N%4y1in(Oby3Xe_UDf212nzoQ%T1yDWIed#|{ivDIEG)jMb zub$AkSu^os=E)G7BPLJEL~N(o7K@<6WxBU{e+?Xj^j%TGo(>j0+x+^B&0nTPN7MZr zomqHIa-Dm^1U&=>=vhuGfbKQBF1zRuFOQr+`$t^g*Jf!l0-AG(E^xTQr*%k%c8_$Q zPIAg5<85Bc>MZU?q5EAhk9)7NZkTf@dMKS4H^1a`UL-k;1A^=;U7OyFcFeCOR+@Wd zU#J~_`mBaAT%M8bI4XU3J&o^61f=9(Fs)Wj_FLfm4Z|!Q5#7=OjgWh;3or5l@Cb&lPe-<~+FEPE zZ};f=9N`vPzG`02mI4et_FKJ__(G2mc(aU*@|ui3d@=xAI|nasf9txn%$vCV9wc7r z*o-mxS}d3)Zme)z`apEsNWuq6woX}fmI_@d@*Llhex?lJRS&;}0VKf2B(qJq3OVLq zNWmitxi(0iXn6PfZj#!u0@gZN0kzETmo&wz$UMeXRYn1U@08t9d);2a1%ypd`K6Lq zwR!B|WQ_g>os3$%uLdq5^WoXNx^a7CL{mD&$@FS%QCwKm70mPa#L);M<~Gf*u^7QUVa(2y_`7cQ+Ud~YYsW@yzXerFq#5H=fazM@cd$s#;Cwj7J71q} z&uwK!Jyux|_S3t7TXep#OGPn4zxF+A(Me@U<60HBqA2R)=B9Nk3>}pJ z&Be1w1_M_qZ?C1e9J7LmuQS?_L?h$|Qf{$rvjp{Ao)eY-1#C?#8x#Rp;^EL20x+V8 zlZVd=ncrp)#H)13Mk7OcUj9Q;+tEfHCOY66C&ojTD?#GNQ0!Tp$ZRaV&ozm`&fa)S ztXh$o2b{D1Inyqh52;n_w&H(Xfl%`o4Dnjd8{ya}__oq;Z_3P{D1j9ub@1cYr;X=; z|1yQvI&~PR8H?X48JFGg*VNI7;(RY;#vEsF!RyB}u`m>gVWUyp1AT{j=IJ1NpGPwQ*UQJ6IL#qA1r3DTsf-Q!NWC0 z;n^wvip{0$P>7Q{eJ#SImuDP4E00b&sM9t);zH3lvr|;L_LS@e)T*^V;f(<3HI8P8 z)mmMSxTV4-SA~3CJ?Gv1YX25~zJk$z!@hX8T;OADHD}>4S&b?GIgH{wT`HuYpoYGIv?j(Xrp4-(5kBM*JEibzcNf z4FBnaNB;O{Dg5~5%P@~Ovy$CYE_Gje+z+bzIXzf=!-5R@<^=n}6Y5B*Hvb3ge9oqO_s0)Z(^RTYDD<&@F~*NI_zoCl{R!%~wA%f(QY z+4{dH7xKRO*C;;AmJfHuF;J7s$H5PYoPCl#c5pkBNk2@^x6O9{3~V98>)rY`tkKU7 z-2k7%RWo_BMPd0*o{q5p6VKT#5w=S)UJ-$XeQ7cM+kb|xl&@x(DPdHp7As0`U_awa z4iW9Cmw|M6V)VguPBXrpRoHP@PF3l|A#1_@yfd32%S;#oi3|)f--WU6Z~&*XjvFJ2w!hJpZ7ty z_E-ov{f{&@nq-7hiOtUN-5TXm;0OM0AvYBqogq{y!2&f`MC73ml7fU$LxrdH%Kib!|(nGt1F^-cXi8`^5a`8&^A!!;~v42itUH8?8uB}lhaA^&3MYj|Q_XIwL% zRHWg0M!HnpMgo*Uu%k=BAkW4g=Ac1!w&ReaRpm`=#l19HGUoeFa=3JFkxJFwnT`Uv z;y7Sk*1gAkp?s-r!u2 z7lBUfpG@Bdc4noZdBqk*hk#;qH9GM@#(ix=(3$Q-M-a(-)SG#2B!-?tkz{l1^@m{B_6ekU|0{wTanjpj-~&bovQ`Q@83)o!z-cEOkcQt z(|VE?IWl2Q|7EPSzViP>I1!g+gZMACt!Vv3@#WViwn$mp?Z*Hy`1OOfV4R@>tPq#h z{x^lZACYyp9n-jgND9iwMOUyqW}RmZ(q8l`!ogqp^g|a;pMkRkM54EK*}_gMB@&UX zJL5Y0&3U}K$6iu7oa!ItyWBUiC)c{}_WiQul?TT_o+>A`2&?0bgq>#J1pgZ?=bPln zj`l0qd=*juMN9)T9KD868dx2fokp;N~$XK!T6IWPMkE2DZJAGS;v=?csdn3`SXHy&sgqi+Yv#6 zw-x2qhl;YgEOAyy0IJVxgiDiuVfKz#3HIW^5Pw({B**;Du%>P;TR?J-3~57hRlke- z{AfG`cBoN}Tag^SXFw0^YK1)OIkX?^;zQdgAC^%_q5IiJ=B9>-8+H`>p4^r_=mXqgbk@S&NgH@g%5n^TCnM|`UK{Vr8r8I!r&UceE8FynL$<11f{pVxuAByaMO~wrwR#4yc4Bi$V!)SpI1X>B0wAE5{ zn!h*HEIt9#OE-%ezs$vBOH!funKm9xxr3%Nr*M8Jx&=dRvcPpuBy_v}guZxQp!;|} zVceGCmySm;&`$%a1BFcD4@YciPs7pa8@bD}xuC5+5_ab4(SxNaxY_BDD08+g^U`f9 z9Y45Q^y~d`SfJxbf>Wf4!~Qck9}i)0Koqy?{!=D=ek>S09l(t_>P!x)8R6wM1gcW3 zV7tCNmE>@}tTH*cF&vKAT99KtvLrM(oav7>&8x8@wz(Z#UvD5P$e2CK22gSoB+y}CY#N$4B~FHZ*2!4-X&=adhfEJK77X3(3i z9z=s#4^Dfe$-7DSxWJ2~z)Y#DF#Mhdsh$yr zM@kiN&w48wS2y6F7TYSF4e4smurTR3?0WVSic22gtBLlo^1L1ds*S|_1b-A1?}J{O z6UeQVCVIa@aM{pe+`7#XZqBko#&#fobu~wlf!g~- zd-S{hovlw-S%MjOsl)?zH|6O)sJ5m~hn3Ca0_x(N#K94y@%QI6nWx_=I`_>ftNJ|Y?*DEuz(eIIqKEpI7Ns*oDO`>Y! zIBx0nF*G{wJ)W)#BykHa;K1rraO6iCmwe=sK$tv;N;Rkw2*3JI6Z$4cV)@TAjQfjj zEOJw)$M%h;vqrwbJ!ZOKy>kZ49{UJNmK!rqCgniC)+Lwh|2>D5CuGUT1Lq((VK?-1 zxuo{Eswf30^?iz(Nlx_Gs5Dq%ei4;z8S*#731pfrNwR4Gsok0uf37(iPd-1yEjfA% zI3+DQAgd5ZZdwH}kdt6BBk>S}Jsb%xRU(6Ds8JUt60A1L2&Sl+lfide1)dkI;N@af z(tpPiKZ4!qMr7}iCZ=zx72d9sCrgjFNwAfCQs|FR z&u9AcmL?s^=A@UMgxwb$h^=uG(>=Zc4p?WRrE3|g|BS}Yt!v4~=?u{tSBQQS{m2uc zAqoG`3hT-;p{3avzg1)a6|53X(SHmzonJVYMsFy(XG&(2>EI-lI?#<^NP$!x^sEXM z-N=f^H||w%ac~O!?6VNeQkzRsJ^bl-Pjiq~nE~g^^wQk8#Sqq!%ciT`xg&SU914g3e5aA!FPfOmmkep& zXH72gvOQcCC5Do6%y=WGcEp3@f&`LeXt4Tzqc`F7nO>kFBACL98jA zt~5mu?O=n4{apxiZ$4b+Mv@8Rev7=FbMVv1bg-8j0};b`Of7d|X2lzm@mU*);yxp? zbcrc+MCeedHC8z4x-IH=JmdB~x1uc#QMl@P3Zpu6DLv3uiY9gDoUKI-Bb8Yo;eY(J zuNgONRQz}U^Y zg>O1kcF;@ceq>2bCD!4Ax?>=(o(IGGea^jYA4JQlvvA?|Mbuft7xD_O;vJoQ2@k;o zDHUomkFZnv@ap%O0JZiRoos?okZmDuFvhZ7$Z zg87gm$mL#wps1l(-d=%YM=O(kwgain>nXH$^HBODD3?(k@dyf@?}zD+$B>&wKT&eG z>qc9X;yDvYzv_j*s($3xfdja6!x;En{{^;fumCyfvtVmB7tB9raFzZ4XQ5v!e7igV z28o_vmYgFRb-e_+zz&@DSB1Q9-iR^d51`YDN3eS4No2n-hW(be89z4}k~ODZ)NCC{ z98A>c=P~ohtbV^=y>~baw;PDnIzyPGCEM}V(*%gB97P(Fw5WZ^IcQlNz4#Az;6_|a%p0?E%!A$>jF3in< zTaZ1M{yDQmq_8j(J>Gw3Ce)=tx5_LOUiTnD3(XmqKL`urpQ7@<91J{aN#3frI;nDD-9ne$dL8R)v!C@BJNU(6C7{2 z3?p`H)4NO+cQAqBgoUTM9Jv~tov|E7Uy-8qVoq>(e+4D6-;SYQ zKIp@PG0vpoyf%F-*vg1fCxC8p7s_qT0L7~Xm%-JLZZtXU}8AxNMQe?@Dy6mZ1Sr z=}c@_5gZgKVcKOKBH!^`WW9bN*F7l(`tbmWj}=i-x2BhbDNy)nJGWWI9*?Y{_-DEb z-T3?*XS@0a{+72VC;bbV;wk&^)b%bL^(q)FPPL)L^Bh)hXXLk3Lu%=C^2B@zR?dk* zzI_CFT6KoGrAp!5sLfEiXA_y|Z`J@9%p5>A~+$C`dlJnvD#H8an-yY;S=d>=v1mF&j8 zI(0JT$u~5MJ%q;FbCHgdrZvs;n3%X+c)2-+)3Z2&zA-lRlgdUW@Bw0sZ;y!9RdL&o zC@`NzA@a~u!0)48q*Vt!=c{5 zj|=mZrmlf%Fu%M>5TL)3yFNh!B=@)ag%oL)65`Oo>ZIha3HOn_;e5|(Lz9mIoihI} z3{DwF#^#NoM$8tR*G%E_murFMPdaO)_MV61aLnA`Sg52dW zG%FuUO{6I#xiDjOa?s}EMv0DKlv;fOGmL2PiPv1{Dp#5#?h<%=GLW&!nLa9s!a@0= zV4Hgl`?xW*NO~H1s?-OU%-it!&jqwt{W3g_4S0vf} z8%>H)lNJwp#BEtKk?3i)qH$=R;PtALTv^y|T=%OC4V7hJ{YW0e_7_4{+8AQ;We7Qc z-UuFU8AhsxTxE9Jk6_N-kHo48y^y_WAuQc{9?yU4=a6ZpL`MA)_wkLL;9S3(esi*t z*&q^-;=*+B8tW{Ind?9{y`P8edz-=V!%rsT-BPY*XAORr9mNDG`bap0+x%w(-MRma zXm7+r!DE{)Zm!dBoUlX%?#;i!yvd1S`r}FuHJyT%KZMb#OTd)p^N?KY<6b_ora$t7 z(Zy^mdKex;@4w3Z9?M9iXB-6kUPa@WEsFF%=V^p~wiS^1s$_R$8MGRBF&<0=V;m7k zSI_vxc|6i0n%~Bt+LFU)SziKQnQ35;(u{&j0qh#I8?uW}!Lki;aQ^mWRFa=et_^R8 z2fB0VjTSe$$gZ0SxxIz_8PdU3hkeF5<@zKza5-IaW+OqhWzhIo7M+e5qNhp-F|Fz#=ZM2>5f~4VCLS+6^@)so<_(L z8eIs}nnsW%!-sKU*EMi$@C-;LRCph)g__Trwt6_B}5K)BL%q_=lBHudLF{TdApw%)_Fm<}}`Y+%deoA~qF zFx(s54%h7;>pgt$PRvX%ine#00d{#hR(}2p!;_Oxc%=hrri(;Nb6O*!K_H z>6q<78g{DDf$JuAd8^m8d= zyKx(Lsz(#zFoaCHs7`mAFhsiZGkS$oa~0!SG2}}b6m8d|Mf&N?Q-uKdFS7;npDlm^ zW`?vbdpl&SJ_f(<9k88nn0bFAv6-pCeTv_WN1y2v`=!Mgwe&UmPp<5buRl7?*@62b z#CYK4RARE>GMWU=#2MTT_^R@Y8Cd8nQV|@)k!EGgEuzjGuFZf8_nUE8MFos}9tIQb zHNawzB1)SxP=yE4;pcT+>Kuo5gDb#tfj7(#j>eH`gX!mI(OhHx1mbnepDgN`0>O>* z!0B8K7qll0V^k~jhUaELzpo)R+TU=~9(ReZ6zIM-AWwVsXw8jqxFhWar>vLao}>^O z5EKdqNh2Uz^}RNdo@5B4zAIq(@cUeIqNH|Tyh<5`L%FED`ya+ z3;NXMa2wW7Enp5!wV6 z8dHbmCDrJ#yo|fpuchAnHDc;I4C1HyI>PgJ%TR0C6#Aj^A#=)G0jDXaas8Oc>4o&- zcT*E$`#FI7b7mRI@;=U(Dn;NOA18rKRT*QVv=PSk`#KsEhL3j}V!t*-RSQ>oK5Z(! zIHBJMK9-_2Ml;Csa6e)dSr7Ud&$;iJ`(e;BOR{V80Pb7Af3F+2Q>0uR5AawAckK;@ z=l#4g-)$pwYB_`VStFw1RDdaV1MoomR7UfGH#WXBCt7}=F+cPrj??ys-_fDipUhLDEd$%wbU55G5Bw{x=V7S?D?b07K-v1b6@Y%+<2q|N44+ zH=(GliUsHBb^TgYi=1gZgj=R7Qj?Q!K+^XbZM^~h<~_n4YVYGu?TW-ne-DGa&on0X z*+cZ4yo~luSHq2^ZQ!P{kkH>rSlcIuQA*LUD(MR(s2u>s#u!i+OVeHct&G|E2#(XN z6kH#@f$%B8M59#%kE$lZ!5k&faFr*{Go&QncDL9hr{WH}N2!XDB0-0Ms~&Y}AD{gB%;4`yBc#?3fXgpGQS zVU{46O1LcOS_n>#=V1B3!hTRsfBbN^zXIkhnGb*MQ$ga*6Aq^`lHP*+ z(`5Mgst;4Njv~9#g-m{P6|Dm++nTSlxOY~Lil4wKn z_uNrzkM$R%yV=rTKSp85^1~Psu$Y7dUW6YC^2FzPAkFMDlgyL2%L50|8TRgU!g48? zJX{Xgg;v;NIp!aRJe@O~g!fc%;qQOpJBLIG7Snxxs$jm>lTI(wW7OxWk!vF>d&R7L z&?6dZ?t#tK+tE_?G>)(3F<_Y$H~%!{+@`PNIvy>j@qg}#Mr)bS=Cx87;_(DNjElv3 z-Evr_xdoRTaYy!%2?V8f;hdHdi4LbPUs~f5rybByJc){WPQu44#pohC@So@G*BZ?3 z&RKNuy;#ZoO_Y2l5;IJt>HE2-IdMS+^Gh)qEWi9>0v10)rooYX^7kh-O%oxmu?iNb z6vLUH+c{597qb3)D5m5Yk?(`9NOBDHm$qO=lmgt1w zfhU@DLZd$;!Kih00&?`0EnN8{2R=p*I9>NXIG8;cmzR3Mt+qP2!MDPwk1|BkQ%TvK z48FfMFrO}5gMcr$@WQA}Fr9q>HVp2@f^B~RiV+aF-?pEbDsbS5)c zJOquu?}OZ5A5iNDLcZ}M?(d6~^bNVjWx8ZUAVaH+Lg1l;ADTSzC$Q9xI)w|! zP@9qT=lP?kpS=)gj~WIyFZOGj^+2@dyVH3AErN3uvN&JIgA{l>a*5<2=hXF!dyzOB z-<%#H*{#3tA=m$q8Mllh3~Bgn4RNuxL+GLL1xV;94mZ)w)`>Xq53iK z_p=AFR-IWcaBX?%>#GOv;l8Ja(;tv+oXs3v(;c zRA-8=%2#U)Dv%;aI(IX7x6F{lms$Gv84j;G1s9#GnAxM=;ZdAHw){$A)P9}?twS#b zg{VxX_fEu7*BO$h7xynO9H~DUHsU^L`R)gg)OOC?qX^aswsH%;)S}>TJe*4C_fA)) z(YEqe+}yL)Aa9b6!+z#t*&KNq_Sk{^R#?GZ;$7(Tm~XJIzy6jP_3O0E(Gb7>6L=n3 zh?c&)m}4WNajstn9FXtVj??7{|J<6S^)}$s+iiMlcG!^1P1>B>9~)}T-+Pg0#e-;YbS78rex5O36b~&Cy`t5wix>k@8vH8GM(0V&w1Z2< zamRK;EFOZgO^zg*??Y8_vm`%3=}I?u^wnc-`1m&F{NFxiY`&x5Dj5I|Wvua=3gQHk z1Ug5hs7m-_e7NHh#6~=ZOQO}-U{=WmMvSLln#beX3nGXLlH$xqdJ**to0zIrLdt`3 zz-_c6r_q#%$pbAU9*!m)T&4G=m!)OLl3~1jFUWNWNqVys)oqBun=hr~U$1)u2aW() zGSCET^c~5&ZVkx$P>EwKbYM$CkEm3}m2|XlGs+1|3l&_s0j|gL4Y> zr^Xa0Z#{%FcNBny?`BjfUV(+?ibP&!FtwX@AD>*2V*29`8*ko(QDbiiS_ZA74toy5 zk{uUusVy)Ktt^GmYB!5j^`35l;-q272Z{kB4jFbxC_jg5l) zM|(L5COP#;)5(L@z*(JH)ajEdQ&QlCv)&qTAG?Rr#RcQJ2d}RG%Ox+h9B9;Y{MUmG z-@TIQ&Od@OVXi3a+Y^7ycNC0E2^T5f>%}DszhUmfbU{hNKw>R#1d;32$a3)%=v-BS zd;Rk8wYLj)Y&Gu>XOM+{FO=cgjO8d3@>yg&R~kSr0nIK|VbSOb|G59&A9+~eXHDhpvN7b6 z6d2z>50fGmV@pnpK$0`6iJAD|?O<$I)FsompJK9n!|_e(5H#7-0PEFWV0)nq?NrmE zUfNH&XPGZSTr!R>Szrm9_RPdH6BMYx-Ui0_j^lQ1jo=P;8d276s9yiQFe(3;(*$1y zVp3p1b?-P(lYAB6sxIP!=PtM2@$m!x=9bDwFn#d$W88vVY>4 zqi;MQ;Kd>$*?-Dg5(9xY&q3hSgfUSXAd_Uqv>Y5pXKQGYPn8e+vfW9 zIIb^@X0#*g{?)|0`9T8QbRMpu4h&&+=odZ&TRl|Cj9f!vhPUL;INiT;p=K#Rv>i70A^;e*HKxk0fRs;Lhm{6OCIukPBQBkK(Xc z=5y{R$nn1oF<)(&$K@|^;LqzYXGtzj3kXMz{`jv=_k-c5TjGU!p|E)O8LUFw@9nitT*~!c*JwnYOaWliN^Nf_WV^L7QGRYvi1kC`2ER$wKqU>5d9k`O$K!y2fU#}mS|>U zBNN562P!ag4q4&kqEr~`5-iyjWYV3LNY#-dJiDV9&9XfI?R4C0k*AXWM#=gVZq0FX z!HBkROxY{}jc6~!w}+i+0&|oxnNxwE;4p->CNp}YI`G8zdRU=T%@lfmLlr?bNOl~X z^t34?Y0+_t6xMr$5CvTxc6jn!$^6T3G*pS?m-ON0?b3AS=BEUNF_^z?CjA2P!)ipkQr^ zWTpuwRlQh(2RX}~+GJ%i(3yV7rEvwE)ulOf@x#b|?D)b>+@g$kj<03HmvwN1JjY<+ z*k3StsRF&D6AP0jt|UKR9m1;uN2>90BhK|4Kg&eF*wgsTOOak` zzK2x>KX7}|HBe1C!@QpyLYw52Y2J+|BD>*{@l99HqOs}>+BT;F%bm?|l!hz!YkVc% zTa$c7qtEZt9G_scZSCiD#^)v%03btp{i z1kSB}9jzHF`){X1@zO6W+n5W_Un-Cw6$OSl_z|OjJ7YR+i~BG_p1bHckQ{v`L%P4N zU^c8$$Lv~vX!}o2!u^=jFpEytYe3UKBZ=|%Aj$XP?1B+w$jAz;D$&BkNh7iIyf%;^ zo*7wU1fxHj(wR5w1iw=gxQT_eutYQr?_QUsl6}*2&!njHi3DcxqkA~Z=>o>6I?|Pl z80vOB26ra{_ce#Wn#y?QM7JrKW405l?+A$7^asoVrC?YA#*)1p+<9skmhXxH(}EAE zKkp6>jGcs{oC-#3o-XM+Z39~IBWTaDvlumX0~|N_6XPzhdv_5bwli-ZJtopF*e88DS7T~K1=kCt&Y>t%>XpbPzd>;pKQ4Whm3 zlW45gO}PCb4_00Flk{37nhpQxY=Wz~U*Pd!9jc@Jiy8Ku&_3J;<=v_RPGo^IDT{|* z@4#d4`tfkt8>l}S0;V~E7+3OzlbfPUo!*^fro?uEan=Z?|2vtOAsryy@CvpVrsKJ= z4&V%opd;WZ^ts)}evJjPRciFhHy_4A@cN%dP*gN#0{yflJsVDJs{!Vr@KaNN>@ zKHT+=d$D~xs4Zl1rn)hSdNl3d-16oMb8>t1NnE+qn>_fM5MRQ2lYy7d!OprI7-Bh! zfr;Bt9GD`H-jf0a-~Q_Xr=8z%@;-Y>KZjJz zafjMVa^(59dCYO~5BQS#8J+VAq3A{_I6nrsrjY@%Np@VkSqL*)$qbZtNm0D2k4A|X zxI~+1_$xo3v6(ZCE)F^k2b&zpPc#4>?R;yrg*ZX>xCU_m9jPRGpmK%(I(2}fYNl{U3` zoC!8wLuvY<82q$s1R3r?VSlq6XRK{Te0E=y>~`REFva9Dqkr@JWJ?NDmXyJR#&=*` z>OyCf=3{SAGS-AHkjy8+h9-jUetR-Y^`v0`M`^lPO$>T>vZ2()N-`6q4tu>sTl+kS z-@6E6}LJhNw@rqLxp_bDm2wQMbw$W3-gW=I67>B+&^d z{bNrjILlGbId`~4OE>lNg&MrQrbBI$({bQyWv)0#mcA%h3QG>^kr^e$5OB&0iw>WI zxHtPy%54bA>hPz1qh#m|ZDU$KbUqsI9>Qf8Jwv@U_LBT&?wll;-`s}lW*&#v`59dP z9aUnNe}c)MeF|UL6+p?YXy(nw2prfb#EG7Ms90NwBA*x7;-!g4%;GS8Ml@6m&%)!o zUva+@zH^fOn+3D`n2v0DGB#noZrs#+AbkD_c6a;)pB!zPJXt;7d+-s69dV`~iwp73 zq73{-`Y_zB+Vo1#FX`&x$I`nNaXE-!|7 z6?u`RSe`zIFOnG-kv&_$6|vHc+SkcsPId{Se;LGv{5G3zc^n{gI5XDp(MTVm00?koJkEr4HH7IgkMmP@iP zg5GWZIJ#D!E?S^NYCc!ua|1J2|00!p5E{)D-X1`nE_os8vA~XL7xAD=F^sJ(!l8G< zfcvnKJL8cH@wZLLd8;wRx#=nnIdcK`N8O6wnKYDHd4`bV?iV2Hc>sR@rN#N{3?`di zyyc=aBH+-YGq9pA3XSJoWUl>)`nNkFDwx0~NeSlAG1YOdXNW)RmghH>p1T zy3?O~5+x1e>mp#>!=Ys7tyHM$8AfOP5;IP#mN4}%m0)pLB#2jn{DMiEeblO>lV)LESD90I@jKS&{NKO6EF4j)=b*d~JO>XZpFgTG?^o4>!p|4~W^V=t=2Ur}7Uq7MM76e< zQ!Xcno;baMJO8N&uIi~X8*?=vbaFe)aLz=p>LzZML$9FV&lhO6P{a#gj7fNXv&d{u zn&5m=7&OHXhKu(JJuu<|%zQ(^qi7b5bkW8#egRnc39gn^_mcOO)w1qH-Ll*U953oO8HLR3KC zkD1^1|2)r~d+#~>thM%9`zi_FX~7Xidi~x3OndJ>#G8&m!!{)<@EQk~6oB{q78um% zB9hvzJi{R_o3(KPbkCjwwwe+YZlQpqk@UVa^icZ33HFrYFl)9b+KVo24W>Ht<=Mo` zBZ+tORH0AL$D;}dFUj-Fr%ADr;!b?CSW!^dp|*RAzz<9#CjsksZ-Ev2AAsVGm4dp0 zje9`QlcT3$<>VXg&{XP@KMi>4&9_zc%`0GQWr3;I&50@S*X!~U=`tsO&r(ehq2 zzSeq%qZE#$NhbI40$ckqsJA#>plMqCJ&YG0ZNdj!9ex~q47Jw-*`-es^vaJv9Bi-^ zU^;&CPz^OCWpKbV6Yfq)K+B)oaF|If3B4_>MFdJ$!kJNGEZg-7nm{_~TDt{m&$?jm zVmI!@_*^XLwqWaGC9!hX0XW_ljkDf1fmCz_=h`C;EhiM&aLujo@@W$URU5;&B!!`R zSWBcVoas|PWmfZC6u(ZkVGi;txUb`cpeI2m9bZKye;HEE!!9g9Q4F^?E~m#@W<#&p zMI86`J8s{;C>mkJZ1U3t+A3^SN`+B1PB5d}01m6g5c!lO zY}VeaX>yYI^4b)9B{qT%E{TD=Sw8fr=>k}m>_KkxdhzVdL5!0+L;elb-{<2y z@r0WQ>6W*I!F_K?Rlh!4;5!nR+vJer>KbgM;(pwnexAF1?ig>ke=53XbqhElk$V3M zzm@djv&c6vPGS&-y{qTRw5ikg8R~Se?_o4`If@5&hVynAZ`Dql*$=vRCWH6{Z|u98 z#tH5}ylyw~m)J_XMhq8vQU%$tMgJKw`AhF`MYBA$U$jKf6KAn^b0Mv7E7B8#ytMl- zF?oazou?Q`>t@G8t-GAS+d<|JY~>btK7zH8so)Ia%;*J2;J6psPm{qNw*#<4O`FZz z9tb5frlQ!eN8Gx_0kpg68T#sP(?Qe4yQjtg>61GY14i@qw$;jKIs^)zkipn`CtZpJ1`s$e3xPA6P-ZW zCA5UJJRN>Vq zS7tfGmW{SQfJ^I!xGXtE9@fO-t*{J)rOHJ8&3f$ZTn`Hs0?DnI-6S_joNj6QjNPv4 zZ0{Lmm^3aLUN+h?Wd�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 OfKN4w!!NpCb&+N?;92gJ^wYWNQLm(#uBg{$Z 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�n_JLzs5nlf~;BOil213|i~(k|Z-fF>($EP@`rM$f^|X?FdJ z;7t+A$apMpdcL5Iyp=aAn!fw^8qLX$El;W2G&G>QM)wDVtg@>F`T}+P4{cKHk&aa| zQ>0!61SXXx&q*Xw(!0T4j$~8`I(BFgrZ2CP2Ky|c{^a(J^?_RFFqIBQ&;i1p$Lc>o zo3>gj3csP*G6yK2JU9UD1kme0r?9;T5gM6V{qtuGB^2J?0|v+HWJeC41%7n{aWg<} zvShK0W-C!)D!IW7T=OhK3LYf;jB$f)mL~|Qn)aeJI*t<_A9P?3f*^w`RY^oxA$yisOp-8+mQkUI-*~B+8 zw%v>>F`!1Pi0Egu6n=y{nbSv|j_Psz?Jdn6Z$_;cx_Lcs!<>=2Dt3whrKoI9U3u8GeL3YCVbXb^eW9Am`&ZW5&fG1-dgXrRvrIyJoq*AZkGOKV zONZAz{u~dRMmtgk5MvC^m2u{{(3Z+|PF~@vtzwuqxbn2T$3qW!Fi=zrF=dY$%jdRl zL^gDxmX`;#Zfc^dHnFc*o79s{6vdv6^E|tj2_+j9$u!Af{&-`5@7pwixG4LotNP4IbnAr?pT#OZEe;Ie+e@l6td{A_qJH`92}vj^~X%$F6fi zU*zS99KH+BOnG)|_`l*Dyuel>(NspHS2aEu{*~eTq2BZxjcfs^`3}-jIVddT`=i0| zjRB;fob%u`h6Fkm@fG({V&xzN*shq7$hV8!DExyBQ`d;Z8?|eK|9!k=2BW5#*N#iC zrssbH0^NVu82$^ybM@EFf`QZ1Dq>*5sCH+}R8t1;-o6b4vHZQ;*hCZ59sHWy9K9IY ze9~o?Ff4VeG6TT(TAy#OkZ~R@v@gf&1dS0&k*7@&MpwNB_uDiV1zQejT{r*EqV*ie zvz$CJmypu0O%%>?o{M5PjT3plW>-N}ys~jdMDh)@kK>A%p?vaV8?qO@=^7O#$OPh>{)U2Z?rO zoChBp8KD=c=MpNlOp{rX1vxh^ryuKrQjc^y)vp&$Pp4o5 zL1-#bD%xOrs*MKiWqxRL3`SR5URXKt4-u5USGiSE%A!i5 z15_Tv^Jtm+;TP**i-B(z?WkO-AC2HtqIX2I08?dtm2DE_ z2xR*Qttz+|QcS2!r&_atev3-`IS%Y%9EEqgSA}@CIGQ_lm)>kI6&26Ws=DXj!(ZXU zEvkH4OE<0jnoB%`sCS$T&9ZsQBwm*F&?1!kIck=$3}nma&=-9Gw#jzm*{Dk(cg8y|wk*hjLw^*$UBU;`wej!}`N z%_bdk=5D_L9*=aK1X#P%>U_UdxwG_OY~p*9Qs15`!ZH@Ew5=2?#6`pxwp6pjCF}}w zs93_4Zt$0;J`>8#NUOy>$=25JMdx930(iEj1}dY-lYRr5{*a?p@+!2hdt)Pf*OhEl zd9VZC41dbihwkt7e0jrEJYhiDKr?jer$6k|i7Odo&7JmjQPu9IIx@j#eV4uQIAa1_ zO&^TdTd#J_;O;$q2{s?Q@jU_Wf|zaR*ZIWM6ZN;d2h8WYp>@b*ildt{COE6LaRKVK zmCIEzf$WPTk6H8h0uSC~^M}3)n~JBlFragd(?ap#PVHn$B>2rF}p~rJf;2p!U7N+4%mE)ZudSo+>S>bZg zR%A!E2VAh>P)2?9E}g9jh&UZ!tW({Z!6|c^MzgN5y)^H3`K?AoNj9AEH>gucC@ZE& zijAo8$vbQ;SDrZ;=JobIC!Mrzc3kY=2&z(NkMNnO3$qt_!p`hvdQ8=>!q@PiTc#^d z_IRPxbyQtJAh;mmc=?y}@tjtk{>_P=(04=Sf2gqUc!z_ZMMrUaM`P)<$#oB62mwPd5NE~ z{Z!(UbeO!I%SofAMIh1+DI4h6gfOrHy2M)xdD?nMgwJm{>sDnU!zVZ+tnN|1`>_!- z_uzI+Jl%oo^0BB<_gK#wd8|e1L{IB`aZ@#fDw@Vo>e6^Ug>vb0PW?WYI)1*RZH_L6Ey2624`)M80Mel0lu5;``CwpH!O zpjE|A)a;sItoOB-yqmhi4RvquN;X!U6fbebuB|U3*0)&I zo*?vVW^Po-gw3P+AX%mn`k7FOytFIxZ`=kRlq#(!<*-aFsuEG4%4YU})!^vK- z|En9Cr>~#aM3YGEbbXQEMV#R@=~?=iiCu3uW4~}%*WlGXuk_GbF3nxM;dlvXIlnN_ zGgpaKf~GmMq+?#hZpJ~g2aJ}utDL_}@6YC2rV?~0IGp|_Rz2a_O|@zovA){4bv;WX zbkuqpsI_I%_^$ZI=I~paDzBR+OVpM#hut7>i1;E8--8hcxwttrHD@nQ zcGKMeK)_eo+ezo}F6-&5RxAf)Z-L}o`g=I;`=hL$Es`qAqBTQ|XU_g8Um4=*N6c>D zAJr)8n`pWw^O?fc(Zo0LFWFhYPutQHKR;s8l>K=k7G$o0CXve@G0C@|0))==R!gf; zazBdy?52vF{q&(n?USk5t&oD<F`Wok%m3SPdZ3~KyqdLRt)#S!HAW|Gx%0dZ{OIA5mfhr-ex=* z?G<}y#AiSKk|FMFH{&T@NR#lpY=Ln$YL_DCp+l5&4PdJJj@3G@`4&2SpB^x%J{j%W ztNs+PfpvAok9l^AIoC|$!$!eL1(npKH@S(SBA!OHj=h>tnfh)yASZDQk-nsAwcw&? zDlYS9H?_6hEzJZC!{EVp-??UxGFR*7_4X+2RtzbDvNC`*h4;jM0kO`CN!0Fl3@l5z zvY4XKwTD*oaov@Zc{)}s0S={h4S~vOjDur{1W!CnWERt5BJ)!Y6PZ@8L^$Ioj(_m! zt>GuwnCVtoUP2{Cm8SkcP*0X)A3v`x!@io7Z0EXHcgOvttglS8HIwf@c}x%e?-yCh z0n(y_(*8V~ZNNO8)azdI8CTq-?)v9^kHw8p!Y57Du0lX0wzf^p1fYRHLaECr)Eu(< z;zSeMTKU+<@Rwb~!}P`MgxbkSYZ7**i6=WFfT9v(+ren??eVP3lr{}S4w?}V21bPV z)}?MaF>zRbTh>*viAAYHkL+SUl~ZWt%jToR0&e1Z+;vqHbsb8e!q;}O)VQ9MlTI{# zWP{r{0TMVvkx;FZV=`!PbSGCYck2`pepFmv2f-X-pX_B+=6i`Nv>#*ZDJ#|PW0!Zh zu(vz+5OVB|!$gxwZ?OwPXF1Coz1iqt*8drUb$5p!)E*Q)36^7TUvzF6t-^)jwj+BV z;Cmxwxt>#wwF?dM^&Y%TLmWtN4eys=W;qtsz6W9m4V3L4@_E+gv;N}eyhh6+=0VK!1&T^{;7=3taTTW$NPN>a9Bisy4?n zee%zdYM3^~n~TBT-l zj<^jRJ-y+)OW8)8vBu2wuh4Y}Txu{;O$ z4jo!HN?QLBY;WOU`(le_UB1B&!=|Xqke2ee+x8&WRTTE~OJS6Ho-=m-n)~8v(xz>C zn#&zV?qhmCXWgUunE;`8!4}pCzj1dpUYBO}?Ld)<4t=40`(BzaYF#~VZLDqX)jTwe z{>Z>*M=WCqdDmZ__D3&Ps>gLALSI&nk0URO2tYEy_K4AIx}LPi_9K+_CkA?S<5{u~ zdg%+NvFv^wZAJ})M6WO-a4#8WZppvt@01s8f7e@=x|Q;R0AYNf_9N1n%Zp`Xop&^o zfEo+nycAPrG;6xhZJ(Z}$J6UwrC;R9QAN{6fgWY{|Chn=KVzhCYAnZZ7#!aeQE|MQ zCLu8rYfDc1*xkJ-k~S<*kc)kFV}2OUSG+h+=wuY|Tz-3#`RPcr(jL8E>Y#mvnjeKo#e$rTa{nb6@XH7 zATnq@Aca+?XN>x<{hfu_N0b|3=8=UFx2?amVPzt;qq2!Ct$4Qwp!tz4)yK0~tO?|)r*YH+5!KI8H0_W{M^!&d zu4s|Mn;Kt*y||1Hiaez2zp~l8!?>ta#?b*|#0jE73WD~^rk((qh>y^Y33(b?=XwU5 zX^}f}ER%vBXP{ab7`1$-2O;W30TevKmlLo=;`8Ui`v@tT>IazjT8UHNVZDh{Iy*pE zvaZq6BLg*qdJ(e`-*f$+F9CFR=$6a1`XHxi+9%tVvS>uI~R-_*xTTq1hG zF)2f2wPn%s{&2Q9D6;V&rcV!l0qa8-N}o4xl^0gf*^WoB#BZ%>3KF z5|y`*m8j471!T(e&9bPG*^Ejz^klN1+t7p>ju7057&X>8J+$-Iq?2?MiDiC}M#!9Gr9-i+r|(BL;5NC3 z8#aMNm31qYZdF^w!?@d5IK*e zlwQ(R!fVQ^6B6ApK!GKe&xZ#-V7Z!d=+3d#n=O!8-6T`>>gFLvo%9*@*wUOQ8qa%n zQ~O4oHdYU(*NN%DL8R07@3(xda+h*RRD{>jZwNq9FHjA7*ire{JO^p-| zo9j#~Z=P~qUs9xY)J>HQs_AO-T&7u0krzy}TvJ>)O!d6jGYeZWRrwIMN8t6>s3d(R z?8GM7Z$_0U8CiiHu@#hFWw~0frIQy~b_bSMNu0r~Uerd5y-nODx2t#J#jr^lfJCwL z^j8sbmor1jtCEqWn}>gG_zDUd3whXXY zKWmMmK}9b^t(l;eoFPM6cV^pH1az+IR^fJD*|eqG&f231y|inTbtI$rl}!eXls#D$ zE!|xgjBsoc?%mvYU?0l1rRCN=Yz8!)D39lTBz>xd$`&QuRfIp?&|B*efQziR8*D}4 z?_*MM?+nad4z7i`R2u^CXd3Rt@VhbbW?{CZ9f&WNHq0%WO(FAbiXZd zj!D8i%u?@ucty{ibX)5-A3D#Tbn+P^yQho7oGx1LZpmXyDWP5T+nRQb16~YV_tL!= z?$qTt6-_gW>u6f3Tt()}NoXa%H3-M=veb%hjV3&2Dxgqv?be`=`L^k1K#OQx94byW zqQpk8k04CGi!XvUJ$Wnw(;>956Hg%F{YCRaFUy_+z>Nt?+4zb-M*>_$vJ@(hpnq!< zSQ+o#zSFps7$$Szs`TES(&*daV~c>+zU9$ ztG=Jt+7S-+Ze$Y9q6JdAt0N)>B-*`r%(7YZcs8NlPv}TW%sT1?b>lROGPF&CT zoD;LPhfK%e%4bN`ls&XKa4{$ok#m)6t`h`#w}&Wh^R#vY1g*S(e>0@}gDE2!wV0x= zPL9I~2CLFs*ye!$7@@kP*1E>P)>q3lWVF?93yb8)=$@9eRS_CV|IR?QD_(+hXe7Uc4tu}f1J3SU zgY-H@GYc1RcjQH{x_R5n4y9gu5! zpMe3L=wSOBltVcjrzvqDw&iF#ZB+I9{SM??R#G|fGDx`2X$;6-DBLmmOPGoCq^%lg zm8EMrKvv_ZRtTP5H%StifC+ZPIL(nByq;lr7v`%PN9p3qWgdXrSefUvgqkZ5JrIOP zG$)=5mPYQ3deJ`>xG$?ol2*lm?Mr0IB-KJq=I3nrR${Lfg=Qzvl~pZeE2^7pl+N

    j^4?UEiUzh@Ft+!&jU3zAOP`O=0B zrLz4b=rzZ)Z{ki=`8?B4JxlVkK$quywyQlJblR(Q5kl(En0<4Gbm$Q1eO{b%s8$O4 zs)jt}iu-~EUWsD5NUI&@dQMZiac}CZ;t-F&9nnAnsWcaZyby0(!CIJ?W4I^(R z*?S-gFW}QrRshB5D1r+$V8C{FnbUY|h|fGa{L@XAu7M_l0;fS{J>!SN_X{`Z5@_yP zpgm91Yjyav=CHtSVDioL1H=0x$rA~5(w^K@M;sZ==*s<Cz z^VBo-?&haAiZZuTgd%q>lc87;ZZVn53o+fD#ekReeUmtuw&-FKd+N*$>evNK-pC=- z?t}1T9_c8}vKC^d>6$Zo>P6iw3gl|(3x6yWjS3^f2NnlwEXw%0Sr!M~eQwi-=MZlN z^Xxf%mvs0Fczn`DCrRG6Q@!?H7h@K6}w=852(;4ng~^a=jHMQ_ym)PdYy z!ljLuk)ASS`p+nClYBr^Tl7wNGXq26aVN{Tohk&x>EYkm7=ChV`163u*TuKnj^d~~ z0Hn6YZ2$HqvjN30B>;a&Z`GCZxW4j!G^^M4KcyJ*o2Et80uL?S^&&7{@}`X)Q=m|$ zY*tRuT+14M%SJ8bTa@*zq&QN2=KLy z?f+r>-Mk2($q5QmYvM4AEMn%?#IuNH`2ORTZnXVobot8FxR@N6{&a228g!7C#>(z> zWv0hTSY=Y@o~e9MkKO%7vub`(F?Hnc9GEQWTCb6F#xY>%E%njKJr72!B4mKE%F)a2 zlY?<|5LKbBMrn!Zm_qxeNw@>CIMr}e{HEz;?NVYMiRonmKrwIcl}#_UpH5Ay3+FHV z*FZMGnrR&$LKr*|4i0&T20bVywVFR)v=i@CGu^v#|NRfzL?2HSAH0TL#&K;$5;x2>S-oB{4X z^#ZRWlou6^)I(c^p}t`A&#ERAko3?MwwoFDN2k`kr6o*CW$5j#;H{bwu3-|wu=DkP zxj)e33e;T_+cKJ*-a#5{+UHb;&qt_uiyb*p)qg17^U*@|jMd@vPN)>~V==LD zFNpD_M~1Jd2{Ip*sTee+qmpU)8M}$yBFrj*(1{N02{CIrgb?pqP#jLQf*XiMZ-BKasS)uch{BIgfl5iAr8sUfo zE1_FYB$`7{P>|oJKLm2NXmDw=XWyz7@o%Z9!3C+iY<{HKm`dwsik$%F*Rz}U1xL}; zP6~D9{4nM(~U3m@wf~j7ITIOb<&n; z+=&CMX`xQDv}(G3A3a8uic!*PMEP5H;4aa(?4M!AR#^7c209Xf@J!+EyCJ5jR}0Dam^z|G-|D$?z~ZQ z8OhKt`3{bv7%n*)RBp=`|A~mUEm0Qk;lK;00rJd_Ex!+KVqEN`n@42^@_b@GZDzp6;Ub9EGswEFb)4 z(t94BuMaf8o{VBIOWYwn-+r$?>9J~3h-N%Xa&*HeJl||)ZWDe$GO9dNogeVxz)Plu zg;v%97S2Z$Mjm*mYwO8zuD@hty~9P|b^&jY+nzTC4rHP2wi$Xq^Bz3!)$81G_V+U~ z4el9ZdilUJ#~6HiMV-YW$=r7R6^%X#CFxL_6uKD1S+A%~-sCTBzX#M@HfAPA!=z0J zF(0M@>XFAmWiCA5=5`T4WJvbdWfb)Jch3Rs@BSye@w$E_!EUe$OD zW>|J91AA-wu(L8`0z2!^*yfYl82QBsU>mF0Q3>pgT10zf8|G_YM>(I2fl!2Aw4!o^ zl=L5Hs3UN-!pJPi?w9#&Q7n)ni{`Fj{?2lM$DvwHmf=rs-wRSQOLJ5WL{k|)A&BJc zijHGV=DI~MY*BKXYWSzSC(KMQr@y2x2urA#z(Js0K|JCD7IgVTQ5yTKbSAR4?l;B# zl)3`J%i}1j`@23N0Eu1r-OY}8ko1==U%iM|?!l9f`p#hZ*SG%yml430#9GC0R>v-* zt>M2^;~3Y9;I$e4BSr*xiX`K9S=x(H1k1E>$%^F~w#OvOCT)fdT|54<20w%~PqG?? z0aYPJW7gZ(Uok7;G_Ue7pLGf)t<4u={wLFJxbEO6Ph|F%qNsS99Mb7-)BDK8g4lDG z;Tu9o#_~NU@xq z{t{nW7nqpq$_gKIUg-e4T1Ku!>4KQFlSL7*J9KTy2%{@hPs?Ev!!}tiSw5igHM}Un zXU0hsy6(NM7%JzSH;I;I>nF&oG~`vvlDjOza(I4VEybNjks8i<75H#_G~FDk@Qu-= zbK)A$-`?^Epb<*bA&Nf}PzS+dL+G&Zd0ZxOVP1h7J;Z_OCNh&b3mzT*6};$--WYsi z63>uav*;QoetKYY2)N~WSK83qr3w+LNxZJ>nJ$?CCX$sZ;e>Rb41PH!oQdqXXT?yualTW@U<;l)_ehvmT`N% zcl&nGt7uj+Xr_`0FSsqs^E+r|GW?rN{lHZTErGh%EmZ+mZZmG2POuB3;2@#iolMbT zyY2$sx^||ji-cC>Dl}og_aMM^WM?7=MMW>sf!x(Cs?oynN2vhB-$ban!Q|~s)<6j% zsByZtHZ1c}IMZHZRb6Vcv`FJLE`lEa)TS-9Syqe@k5wRVUxvDNA)sfi8W5r0{ce3a z(pBtS6+x=mci}7$Wizh5;N7e>U1IaF#C**3H9%jXsG!41|LB&DoT!-#KW=`0V0xAu z?pZVM3Hp0ESxR1wmR*a=8^w4V{evhJU5 zXtyW6DGHXlQB=j2#Bp28%Bt%gSdQi@s-iM4s`Q}9i?+!EZU@`!ay0vG3cD_v_v%YR z^DShZSDyRviA_btQz18Rv#hDQo-qF};tlH>lcUW>;wQK7(Z6TcIiiVk`qU=z5ycLl zAW=&HJriB7G|LKm{}LYyj-HEHIE>Exb+l3iOO6?gMN?FM4r{y3pYg*DPLGoD>}FKY z`o|s%!ge9OR;nTWH?3*|r;NNp@FdXLRhJ)ecz4oS9qpCv!9f;=(Otp1XC2@s4K>`j z=}s%s`|{PpR=|kwvY0d9BofUVvBgsgl%^ZB# zTUv{}aBtDu8`kg#LqtS--<>%;c_$=`@%XZ*SOn8Cpw12E6T`k`)oL zeu6Ai2?w{pn)*RM!7lX-_Y~++>JsA912YYlH~^BmSxZHszb2v6RD{2mN3!(b1vW;q zI|6#cb%USTGNHdLSmmqTE0Z;`uq@>Iy+h}=F3)ALYlppYerv!uGdXDzJD%!k?Pz}1 z8R*K!Goy<&-_7|W_kc~;Cli*A5rys;ZlU>;r*+YvUFT|h+*dmMK~+eXZK&}5p$p=i z>SmO!S3#)Vqdd!|nsus|zKuxkxCV}kZLsGDp{*ggO&*~d!{z>^b+XRfn;XGp6Y{k* z8TWP9U_s83{OHRSFswu^ny^E2=)0s^6S-5h=+!s=RW|ihA=&3H1MiakQVx0T8`NnR zdi`*`Djt{|GSIfl-T!W7_*iH-=x^9L^n(1{W-3cV2$jj!8W>RlAy4 z0hIn7x4lp+R)IoDu3PbsX}{oe22_ptf2{RG%Pgb+ar<3Z#u5A&5NXGr#wYbOhDcS} zU0GBSD~2b^muWle&{R>0;8N-*`P)|TXuOpiI6;)XyyS2V~*v zQHq+fP|Pkb^P6VG@#B`oG_B_$59U7FL3NbLChD98N9>jwK*07O^d{94vo>6wVi`0? zBcZG@HC*-)on6KN3c(S}K@~ps`I2{2|6dSRsy@qZtQxrJ;U-3X{YMAp=&aME4GE7Q zu@Z%|WFW6n&P>NDh)sM6qn@zV%vJwuF6zOmm|)Q*Y5K7#A{NP8bWSL|?JsW)zeAUn z-M477B<_^B-dwWl2Vk)k5p8aPd`c%KQ- z2jEq05ZtnIz8*f03>I|ux*gtOuK}KHsvfLXpHp_``p>$~UzhEAnvM!@L)vI?1oI3p(}vK4)3++Ga6#9Z9OMn+VEO7<*&*p7!z7LZ7aH6E=5)yhJm(s zTwmtun+7pW`Ujs-6vCQ-hgJ$KWOlLBVCma*``$`3tnJ$Gz2Q4d6S9L^q}~y{G^EokEKMsDGV2TwK(Mhy>*yrW?>7g-iib+^0c45)E zZP`IWr@Fxr)U#F{cxVXTu2x9D(!KL3k}bq+3a+k;7NM+WU4wdC3)|=LWzF1fb?^sO zn0JeGLWd*~C_bQR(U|nTXxV9=DvSC#zGwhNF?An}Z?>hK$hIk5aaHWt=QmApLLXSF zja>%7mgnGsTL;WcFELf!Xm6g@i`7~}&kaOOC984At|=DZ84&&s!b#0`b_(6=XT3Q9 zhl-&+jTbCJ@F9qmK7&@f5bR3m#8t>e#)+h0X$2xx`KcwqSAbz*@bwTd$??*ARS}p#H1-Zg(v|&tC7_ZR!csJ@hQ(kvB#44Yx8CVBN zTd&UtvvP%%PUdmp5L51@qb`m_J0%-fGT#po>NI-9yD-zv6k5|J+7y)j6?9Z}`wPSJ zw>E|!-5Nfq3R0Rcf*q1WrT3#)7<<0!x-_Qq%1E1eugeHz5Wh67L#Ljze3csI%TcLd z!ta9*Cau#PDF||hvU#j6Cg`te{mP+@{GU`0lgsKTpQcIX3Skg0cR1feS1JKS#?yC` z)~eOVMN&iY+fRG`OC6wkH+7#s$7@Mg@#b-UKHU+HYS10q`V(7Df2GBzK+J8 zb^31y!+$pbW-75XeKpEb81Ld8$kdP9#(DW5m=`sbphS?4O*woTPxM;b z&9SLQ$#`rnIp5U$Lm_)~^pwcHuMU75`Q?F{7RZqDS+&A7(s-19d&4jC4&Vm0Ap>2d zQ|6xfvGQ|U8Z@cWEbFfVie?ZqpOR-b{d3PMrzq!X7GOd(nS~JnghD2fh~ggR>*nxp zuvP@Yx2{-3jaU@24F`woQ_6V>*OQ-QK*B|mAWIF zJ^A!+ZZaio-o{#QZfk>omTXze)1ggbii^=KR)FDM19hWkw{_zq%Ceb!u(g`>bAnH8 zWuI1PIGpt+LWtw!K-Ori^grCv5RKR)bvi2R$>%S|{=9=D#D^L7`Ucp8imn(#`UM`ecJ?;6ghB}1g6C~Y0S^y`W;oJPC7zROKI z4ogl`O`xiP$V9`5*T;Uz+l|B4l(FWjws5_(phAdan!6gF}hhV0cv`v-^7q

    nhsKk&%N{pDEw_i2w+tQ4Qas2e6IY5j6dy@3B3Teq>$(Ud$ZuMGX1vHr+VV_UH}Ufk?{FpYwpMMikH z9oZWGZvLgn$cQxw_r*aF*Lq)9Ui+G9`g=yay*?O%oi1+rcY-@2q)<9 zFJ_15$LQ&Go=< z8cD{{XdI<+ulXbFrgXiimK)efy1ZQsgL<|9!1GFr(JphRU9bML>-SCfIqfJ7_A{Bh z5&CLqQ_*&%3JSCc<7vbPFW{v^-47>Oq*#Z`o=T6ZaFY)u1_shVLK#Rh52ZE)A_-N9$KN39V|ZVmA$LCjye_m|W+I-fX-(T;Z_* zzsC?SPvk5fw75nmr8G5^%Nyh=s%UGS3sGagsSxgD$*#} zltdMYD%a23rrZFS@v|1$R?sDKFEeA?hx{^**?X zlvINuNvBhH!N`K9#d%K2MeUh*U(ke-RQ327T6p)I5g^A^QI_jiy)YcXg8QeZT{{Ur zKi67MlbVN!@ULlRF0rr`-2Lxq`BFOT&5NS1e0yV!Gi&-B6hNjsF%XPAmjs0`>0*R< zlxL{%SzSE(M*~`SpcElt#E(qG#L~sI07{Ezhn+%Vk>c`bO8{uvySZ=5v-lhBWXHR{ z98FbUEYd{rUp~T~PPg*0Cj6R;jv@K91-oa%1;Y3=d#et$X_oOUP4<-WtPP~By+x6= zYdxzj@`g>?c#4O=_a$E5n7?A}K|E=}V%lU_VQ(RU>^9{9;1eke$G!;{JJXit1TvT! zx)H2$blwYHk&q~n0wZZJ)J(tb&!w+H0 zb$x0-#20zr_Fbe+#rURTF2>NLODU!L^0C48DNOA$(GEJ{kD4A4{bRZCSLVi8CJ(IN zX-g|+&ywXR=_bAC@EHCVO*R$2yfqMfY?E+kmdUtvr@aBV@|b{gyNWN5ppKze2~CiH zYU_!4A06x^hAo-L79Dncrt_fk4Cwjfs54yB2Wu`0GKq%}VVyhK7@Y?_%|u-yz~6y&!w!bNHsB3yDN zJhADwLFmit)Cfv*R%aUEyQmR{v-Va_G;%Ys<2Ef{IbCw}dt38_LHFq}DC1x|w)A*k3{pc3FU)G8`Rz1dfNLs%yT8Pt4)|L1k=35eP% zg^M$f`)8z*l2vcT-_ASC=8>rLemHxdlQf^patx(@CqZZu_3b?Bu?ZR6Tn^%ip<&*H z-gS=;AJom4FOUVsFr7B?(>JJ!G=^Xam}X+LX#k8PLO+nZG|q$BPC6f9sEeYM$XBAN zUcO?1akgsYPR&?HKXA{?hFIKr8_ zfWA?~Ww+_es~h=X&AIGk_H0qI4kev3;~5>tx7gp2zu{Vz3|@3E%{^H?bSjj)Jmy&k zr-t`oIgQxc6Jdn(u{J@sFyIph7~~%f;LJb;R9Ybsd=|~}DDUS`3VjFJKXIVR2UqfD z=8M=I{xw;BCqdgUMo}sX#H;Lbdy%TmDPxSYHt8AxbJVH=h3Zo+d3*!W4lcv0F^H?z zwQp-$wdmevLWR<>u8W3I*&xgRtwMXJ+J#oXO;b3zj1+HL{i**}p_@Rv|Ne&$4=&Ym zVU<}()S(v{O*~z!$y#U@MO`7NlJfJB28tdj6B@>eD79Exvb=#)yK^uHi z0sn;9Mdms7O`Rh1w(kG3%^a@hKU!-lQLc7djY$)?RW91IvX%}2oQfUDY#^lm?Lecv z{gOe?pCv7gfZD$F*s;NK$YziBeb8UjzOd=OBA)9@y=V(vhGUXM5tLJWeTal@DK`EFa$dobakBl9@D%KmE4K1)(@x2qa(I@L!s$G zQHIS8IMAIKu@Lvu zNA+rITAjS;N9moAcSTbni(LE@TzaxuTrq{`{RG!@>Wz_z=vBxUDIPbi_l!fdIoKIZ?$YPo_Od*+fzZ- zWizonlJ;DH{UV_<0(z-2tURl%1nc%D6LqhV#n7Tlu;>QSM5~}*V$mBiEtXJ1;cs9b zzBK>@K>NQLzE8{`GGu}Dc{hmwU_hV0mBdt404ezed(qPQU8TrfBK3GdkBeU$q|{B# zQUq7j^d#R&A;D+C0GR4>@I)*pp#rQ|4gnv-G7e?u41JzxmcYP6rs~%4SImnlZ;_6c zk;tcAGq_Gz0ufXeIC2o#(B5S>Bg-R-6fZ3lFdz`2GcSRTGD*q+uFCpm=v|K2(bi>C zSck&bRCFyHiX2VvacJh*Wz}jFb1s0?6eB z%P3AqWsxnDm>_UKV*B2PtpOaFdDQjQ)0~DpvJ`&@HO-@0mDcRP5*}@B(BKfwlg{Z0 zL-=KaOd+71C$XHeqCfS2$(P13i3Ck{WvCCapq|RJ;NZN>;5c&ze^#@;^7&;qYs@=< z^sRg$l0z2SIMSG8z$MDpVTRzO%?TYIiPX*#rpnru{6~<;GLp--R+y&&0eT>P^PDge zo$td|P+rFM+N&$Eo*ep~Tbmrd1PoxGflZv(%|r=I5xA+zJuhOW{3dCY|Dq;N8Tcc!nmk%WXb}V<|UY|W)WApXfy}j|;JiV=YqUi2`uCCj9jxD3| zMU08BsjX9t3I!6>Q-&}QH#NoO`yr-!&w$ocJg|t^3+x64Zee9>>``^8A?th)H-{wz zu4iKox$*Ews3^s_HLwSjEeLBPIx|Zb#iEs+edYcuSM-9{*mwzZR!kNK3%Kxj)wU3k zylB3yO|4Qm2PXmCgjL_Xen}yAdd(rUt^^ZEV%l_JFcP?1mI0cp(gt!dbs$fzNx!i7+pmd z#p^}A$xge|t~cVayO&WJz#IRL>eNE5(B`0U%@}2YLad8=T4YE__1c0EozRI!$$Je1 z_V8LiXR9wR8pjYvX3T3F+Uk&BB1VN;)>;I`3Mw5)$jU-YH2GRPyiN>%u;C)FNT%6n zv7FjhJ-Mk(jE5#F>1FG zL!Q?iSiMs~tIOs-rTa<4S~ww!S(06O_|X6&a|rqP5( zXm@JiI4h7e$O;@~FiU|lawpm~-Qj)M?qY?=dXHsAjVn}#rTI#`e0*@AWuCf{q5REd zHD^UA2zwJM;+aEnh%**^(awNsCKSLN?X@lCid-z@fyE+x`{xJl1uGUv-b^(v!HQy8 zrI5TL1Cyn-5%QQR_w1tRL!LgRG1db8e-=Hz=N8I~xCZ1N4%ell^KrOP@8qr8apcEP zFF**tez8~;&=5rQ@4-C~@SODpS7@x7Avjv;+3@@T2MUD~nDZ!4Vt>c4X?U27yd3qw zp>?!{98S}~y2GCHsO+PBG-@V`Jp>DP-gby&+!V9R+*$W`{ z=5h_LchIV2H(_D*A*GcvezDRXUBQR=oQGHnH2oPZ+AL|&{+gXiUP3+@SPMp22_9gA zjr|wCx9P>VatV(rrq92zVf~tlOctN_$9BC2PT@5M`#8;LRTbFZVMogQvMCG#ik{h#}(sIzw~qBs{WucZ#>Q|OKj z+$BBEu_cDE&1dKv#p`piaq?odqdOvY69v`sN&Xm;XtWUcc{ty>Tf&LBOV zAbHh=?AG>AY~QV%rd4R-G-p|BJX)?`$(+zmBTND1bz*RJsDhX5c}+k1sGaccupbzU zr|KV5R@`Hp-H^z73g+Yth-l0;*arK++o5?_mujtca-xUl!6H{lDHyZlUq7eY<3YFR|p)HbVU$gS&T z&o%J5EqxDp+8p8gOntC4`A>jMjMJyh5pgRh^LE9`P=grbY?h;58^CL(K9?}?<$PU4 zU8T}Fy&C9|g*VEx`=W3;WEZH(UzGPhaOM7<4?t{hbZG3UeC1^{uecnFTQ2bd0Qz%~ z201f-n|VmLDQi|mRrvnb)e%{g<2LW7{>wTqCs92gYm7jJ^~cq9CLA;)k7&sFN52++ zg)P%{dFDjHI|5FnQpb&}aKZ$eS?Z?F+l<({!qJA7$AkP z>KKqZQTMGsk9;&eh)e3>2)U+>i_4Nu6i)K1n|;!*h5hd3Y-sw6_g~u{&U-Qi!v)wK z8$@Dm>nachG0AHE$Zx2VQiyHd@5Zc414Xg*UI)JPye3Q)%nzM+nL2MO3^eHVs9rWB zm~l(gkE<@?W+{IN zhoUSE2CGBC)oN57O{6O(`=R5|_suFP%Xzw-C$1&X8NuW((WhI&cX(;*x2#VL=8TIv zZmSNo)T!{P_X9jaJ&ejlqGx8jG{Bgs{Y@jYG(bd+D5_iIf-xpZDGWw+KjrVgZaM3w zlr0n0qDDqLkslS$ZmKHfykcbtk1|`&YF-$YZH?qyyVo5Y=o)HuTFJuy^{wG2wipPs zr=Y`#S{c4}pLVfUmt7a!M;Xj3EKoY0g+S>oJ#yB#Er)J96{oicCvui_R4}7q7FCk~ zjB?3-1#a!F9e%Kh#5&!J^+AD5RtB-3^qt-WNP<*utHNvtWj#ag%&F=wHVBeNhrujQiN)TpSY zwOSok*)P)|O6Y22Ei<(HpzsjH6m>Azm=tu-f32a2YWGiVvevrKIHuDGjW1qOp#?E2 zbZnB|*l=7X@`EGqBsh-se!5X0t$sDMj20TSAgnMP{-1~cpH0Q{!v}i9K993uC`o;gNtYpk%7l5 za}6k#2WC}thwTkAwzyJE_X06HR6*YY#rID(hkqCShtTv$Z|0TQLEncHo<1@(GLuuk z3qNqV@wlZ6ZG9AUyF?OU9 zWzaexqjTu02k+e+b#jUtqCytAJZuf>=-nLOwQJ__6;5WaRn@I_%`D0y;P>{BnC=P8 zodS)jwaHSz$GS7Hvm}|!*Pvzkz>gM5s-Yj3{TxG)dr>^j9MO}B^8cJmkiu2i z6P4ShTJgjqwT3__GXm9JBrO?L1%a^Z#&`Q^_-LP_#_@#tk>tW@nn(F0bYK2xXkDXB zeAaBlpw@pRGTv?eyLQr#DBok`oupa>ps1ns2C(q}do648PWw@|swZiZ^H-f;QAdQ~ z$B7r=e5)HO9+b&~5x1VuzRg~pY|U%f9G(oHt9JLq5er_S5Ibvcx7TIWBP{~G@0haW zf8-gDq;veEiWaRLhQV8^vr&wTTD0Sk(1Vu|Nqocy%+1^s)}16;u4@6pXx&VvG6lCL zx_3pMXG4>vVQ(S3?Q_BFENd)n+WOEFbqbo+FvF5_Tfx^z>Uwz&nY2ZkUE8wkAffZp z%07-_K%m!JfyY{p+m$g+;mGSnZ9=nkWkY=0&)zgo9_UBg4N!RiE7jih&neLV%}OL7 zC*4iYdFeIi#Z(N=q;mg>I&P`Dw6i(zpp(X{w!gID5q{hCtQRBi|$ZHumJ@IXoG8>2VXOV7i<5!`3gh;1i+5}&l zl~kMpyEG@8CsGOteI9#yEhjAi27i1LRUP_Fc#kHD_FEC{`(?8Qgx)Su5@z@KL7+pI zPC`QXE9M;+`m)I36YxxWRps>qpzjk?P_|#Emc3~QUfZNm&zHNQ4n#~&Q@0fm8KPDj z3(r*9*iFTRbwCzWTZ!!{%O@7yw38W%j`I43x>Duy_q^%ucVRHllW;Ss+_`$Pe?!Y8 zi#_?2*g&Bj;CYBS`M~ho1GNM8^0_O#rjqXEA{a|e>kJ(zc;%idQ;iz$PunrJ5{)j8 zgR}n>%9y+z3)PO5>_`Au+IYR7txJm)x;fUiRnB7s;dj>s47iK`oBdj>j`YBATZv`i zWaI_a{`pS6j@IDUm9PHSni|JHmNdMxs?U z%(Xx=`w8@%vpx|eu#0;f-A{MR)5@{o0N%pdQCF%gm;j(DchmSFy0k z9zQ3VG7YhPtdKGz8q3rdj=Viwhjh~J@9&?}?g>`JJg<83chZ}O9vva)U+L6d;T$Ym zRT$pfa2StrFCJMtF6IS2t98VvC`;E7u?V3H&NxZ)F2_Sv)@RJ;0r7+acR6C@biy~N zhw9QAy-9eiYMBd?KLRT~$O2x5vhUz8(UY{-1(_d;yl~;{D+&fqKa{B_!0$+U1;hGE z@W%DhZY)PjbT)N=g>9(R<9ZiW@6fxbI^4TRZ?jVrfH704_QMSu1&m4(r+yB;wSj~j z=q}YUjf?K(kZYsCfDW<-=!@SKS;QQq${-52p@#lXXh!({?Y|(VYvo7`#bknl#5{7? zuhYZd^>$s?{5wllrh8h#33VgdIF?0Or=2SDoQ5WZ-Y%W?J18B-wRN*5L+71jxVzcXF6p8RD!E zQ_(#o?96$N6TC}6kEp88A%v!Hc(nb|8KLga6<)7%P1QqJM+>25QDs?8UkspF!hQJi8rOTC@s|%@xy~<@d%gQ|O-JKs z2dzi70{vChEl5QgLYCPs(3)r~|57#r3u31iN=Hr~=-J%brSezIff6plb;?C637{6s z_|Kw{ROX$)xQKY27|2Q5W&OOg!DiNIgj4Mn3xLxsl4YDO#%&y$SzB*7xoBDhw73rq z9Ga4~24h9ZXO~@w>bv+oz+NfikwcCt?$(SJ4w>k)(nYC}K|*pZE2G$(M*E)j_=Mu| zkm-qm2FtHWJtDcE-eNTiuW1*Ru;+3%w^4AHgCmEUg}(hACeUP)N(;kgJZnJ)U!dLxXTEY2j8<4_i8u{Jsv4gGq#0&vRyw9Um3M{T))pt)3PR zM0^@4@jqm-iySXMNdYCQ-l|wdi*~eAEmmzkZ|#$Z-l3N%x3~~$3%6B0(GJR<(ESt8 z;^YF38^#P^w~P$wjkMA4jE1vb2UrPFPMC66A};wor1`vr!}XG1Vjx6fGDn%mqyHiN z4{9Eq;&s4D=LXVOrM`|`Rpw~t-2{h*S74krwkLX!D5`q2Xb{8>)p)ud7fpgwDkfU= zTRxi$xciHO-HL~rHWN12GOCv$GxzJhPL~?bjFAa?P9kMy{8Dm}n6Y={@{#N;cqFUN8beDz-A7SJx zHjuu-ju!cQmU#U?bwrRXRcf#9Uq@dqyHHX|1c`}vwHH=gFu1KSH5+kbxh z-F|T*QyL-nIiD1wrlwxg&eE7KY|(XXmm&|KIfRdQggsgFY>#vT`fM$adFLzgA9qE& zRt#`xDVF(hYB=~y=463FKLdHd8}Q+T(#@72@rIB_Vk@^p1$);5W(mA z?D9zc$~yaibeI~u4v{z?h4lE>J|6e za$dh;8Tjv_>UD&#SYz*e$@s@#lFWYWCG*9Py@aS{KjxCvkG-V%@vqzL{n$&|=*M2N zo4@l?Ja|VoRr2ez=_tNFds@9Cd-l%kw0TE%nY}anoqtWo>pQU9cVySyu-wsK(!GTE zpa`sS76;d15cj;t5EF6|1vF_FNd)&0<#_6uC2zUQ!gvi6D|;=4uZ1Sdyk_ok9T#?Y z+3VAri4Zdkt0Ylrr)sV<;jx`Xc|a33z5ccCEW~wrz2~y_g-v_Ny{1TL_l;G>(s~Rc zlgMTa@`B&&2HB_XW;M0)x?T3uOjPO6`a`4?PO4}RHBL!unJ!ht0<+df>B)gelfw}#?)?@mIUIAuE(iJv$k3wo>8e0hES&fn^2RQwE zJy@~bS7brw45$g8uLv`tY|FZvN}-3CJM(xW_t^4-ng(gh#x z^4K<^E*DZ;;I&qrb#EHhND+rFQ(c^gj78L49&V%lc72&24Z5eI zA;>W+7p-mb4xsIgL3jUy5ZL(9z@!VJNRf{ATN~k-HNd^2Mmxs7sn{S+FP8FQQE=zD z+$OWuK7+>KbH~gaTJt~2<&)8}w3#${dSdviTN=-lQJP#YD!>R_oF1ewY%kmLvDUZp zFfq^~hySqWC!=Mvh6rNRGCBk&qSWz`pO@*{g&gN3l4ZZL?#8;;pSHb@{@*(ZG0u1p zYz5a(GMPXCn-s*QlX+3cviz(DZ+rODK#6$V6O`nFVqAnu^GyR)s*?C1XqJDn3I8A0 zM1p=Hvry;qwnnHCgbcMdp)BU4(5H%=F=S&|1>wb~O{cP!>$X^?R~|qz>d+!({(Y(D zo)lNS{N*Jd)5SPlgj|k4(X?JU?J{rnJX5eRnO`(+2XIyD*gjygJ{Z&7Yd zs9RmGZ)$$6(nFWRGfIH-kfL^bcnj9Y3)<>cx#M&mdBpLvY`*i%W;f<&m`Vd(z0@BN z_2V4L^6X`@pBju9x~EypMtPPv@cM=(#@y4q$tw+&L>Ul3d zDRLV7zliF|UFf-T!%=tW}d?Xs=p`7PUi?)C>A&6Av)drhZ;<(OZyv5g(FqV;L zJje~_dd>@7YcRFC=1%)4bS-bR){x$|iyjpOZ=RMN9>3yrowpHP6(QApGdy6`D-64+ zH^HnF2caPJGaI%Ua!U{o{+zR1jd@YUn%wYBI|h=xPNt}W2qoLp+3swZaC)r1bc4;i zXq~m6+uH1sidM3l*6)yg#)2RL&LRo1PN6E6xiWRfSl4>`dgks0jy?kMINmB)wC;3YQ_?$WN=~!6H zat-5+l71x=rdg3gSL3Xjte0- zOfKjK;W3B|d zT~49T`H>=ftZ~%*@=iQQnAtlp^MiL_@~pld^Pu~POFB{=vug}QZGMfVj-l&w+jruQ z-|@GzDvZ%FT<+KF{Ha^CLC1f%U5`P%=(u0d*?-(GXk`b+1%0zL8W(lf*pIp-sGSH8Ms6_~!Pv7|_*Z7B z%7GM8e}?P{p;cg~z?v7Sfmu2h0cCZu(^Z-T;4qod0{!aarik3>@fihws*2^4O{AEu4g>5YUXk+;J_In`RigLc{C-$A` zC-x1sOF_jV-mFPQ9dBF{=Bj0pq!Fm$6tx%;mM#5S@2%TCZQ$c)U9lTYqS^}GK0g?K zR;!@`UGMPOf$;RqL=sSy92{7>>+_0)AmqXmR{Po4Rj~(LpS~^2E#f$-a9OkY#MfCa zPV1)`5nrxyE0v?$T=q3gKLy{t>GU zaL+ZZSq%CtklR51+~HKejRaDYX-D!K7##F;n7%po;$$nT>bos~4hE zO*{cqbK+?D2uFT}q<~&i!FTCTn>3L@iWc)Ux^e{}?UV4j zeua+LyY-!L$(0A@R;m`ttWl_0wQ0dI<@R?R3&4!M^^)riRpmQ*qM@RfUqlDWGvq!yU`K$eU9LAO9l=A@7ED)(#V{$7 z&}uL^h;XMe_(wjxrOw5+CM-&F2y};j4SGacSzWPqS9crf`9aS+PJR=4_xRg=Kn&7hEhZAAP}Pk$Ual6I+KE2mL3i$P|WJ(EYv!VJsheZ2enradKJp z;7Ts|BN}Tcxjv;$6=)0}DlN+AoL5_$x}VoMhV5ccU%w)bmdn*VTJ_&Atmf{DRd_Uu z90GF|b)7u@HM<3Nr?0%-v^+fFVQhBu>yc6Y7eEb+ytgaGBv72%CE} z&PvD9Pl^^&UmopW2G|{ZCeTJixz6p4zlg#Kyw`iSFWH5t(kYX*>%8#bf7l+`MVfKQ zbn7TvyS76!`19L$%hmVaFW29H++FEZ)f*!Vp}sOgcjzcDj(zrf^b&kYokoWq`9&)= zeILH!%5}b?dozB=mH+N`E3mm#CHzA6KA_1If>7rvK|=7sMt zEqc}EA9K}T+J2W`^<%!e8}A3MGv06YzxRP3`@J0R2mU+8+q&v*%hg1D5Pg^^2ne8l zR{;j(tsXpfp=^a0dhoyRg&zEIFXXW^j@*MX3lILd%XxF8KhzIhZ@qN4<)VM+*b(+Q zO)!{E$A01B5BkwdlyzDRFV;*_u zkMU=7fF8Z>00nt{KkoVHJKys(F8`9hEUYi~da?uyKuXlnBCUWYkYy+yt>_!q#-T7i zkQN^WYvt1#`mUpDRz-2Zs{`&-Js!EQR?+%z**<}a+X-+5KDjxZ(1@s$LjmDigcL0& zqPypcu}(L|%jzDelOE&b@Dl^$@n}rY_a|6b7kKk#>G0fIr*J3UVG57nt%lKa5mC_% zO~aKbo{gB;1k8%H?33SCldqny1Gl4xd_7OB>#x{bX2~-`bdi=k8UP&mn4b_`4M1Io z5q{6Ww(e)7v3ND_yurS2iw^V=*GBldMZ z$(A0^`~HUZk&`KDx&Yg64jd4_ZUG6Lm@aQ!c7(WwW2hHasTYF~8-))OVj~)Rs@~y0 z2oMK#+e9nbtUiJ`E%2ee=EX1?M8hfq)LW=R26$XEa-1O*ZPsED5j`y4=JNdyIku!l z&ewVfRj<1M;5yH-iAUl-HI!lLUtj1CYmDTxaUx1+vp&2vm4Xfj!{h(1+OCzUr-P+ zK41#NZTv$`Y(-Y$C_FXt9!&PsanEVMpN!+$D@I@ofPxwA z*#a;}KyKsMJt`j=`2FGlhivzY+p>euMyCSJlMmXe>>+LvP8x zr|PJ9Wm5~i?FP$Yw|-=?{)PELw0_4jf*)Ngwd{9Baz{^sOXj%n(Y}zi};j z;k;AKwYNT)L`4kSO7l7qB~8oDf%U|O-?(by)%p^sqiIy7>mP(@zTz2#_w@g-ua#Y* zCH4N4wb^~eE>@~uV3fTgo37tsztEYm3l5^zx6$1k?Nr{E?a*#kxC%vQhyQZhxVZWd z^Y-vleniM7IjcWn`YgufRduPi<0A7S-V@fFSKnv9hg`v3i@1i!q&TXUGU#!m2}Uog zKUKI@*CqYr@UMu7pzEB^b%}J2&|R=)+eub5#KWpldNyvWl_%E_3`Cz;!>+HQbXGId zP@^hOX}i-lj_PT&)Ai*8SWg?fhV=}6)HvNhqd-#|uWjmC zOsN+a<7nRX`WQm7_`!z3LJD`1WNj9?bNYEg!t%XipeBh%lQvxeJaIMAP)E4QvPmX6 zyr`jY^>GL96ZQqGm=?XuDfH*X1Z@V1-1?H9#%-#Qjz3ZWo;D2={38W& zY(3xSM+5%>aUHuq^K9+Ua{bTR?tX!HpJppOFRXZqo}G3U#i4S{-gT$l>)Vk~6!o z&30uWjj|-&5v{(_K6d}w<0uFyv>CR~G5Y{P5-_`?%>6|?beECBsd37dQC!GiDCIV# zA3qzHXCJR2LhOdSVli5IQ8 zq)-tz2>RhQ?Rmq@rLf7kTk;vo5c9aOwo*aE;LPUfI^dZQU{2Oi4`Z1}HtE))ebiW= zNyM+nL9KpXbeX`6ZJ%}C`qt;lAR}*K2|w2QuefYv3+DwA%ri8FkNV5{96x+dL__Cz z=2sNyxxNodxQSuVyRR`-1Y#x9p$+# zqea@iEB9nc!l+!SLzb_j`%I4@9{D7QL5e1uN`@D`#c?mo%$>z^xmb>ZYFvyWWXC-! zr;(jSMxG+n{HW*QgCr-TMZP_+?-tUhZQ~lsjh=IShMfAbHb7f`NE5a}ZivUxGXp-d z0sMDrjAC%i`irKT%A53c9U;h=H06+3zHi$%%=Zd@2fw!#2=*fGUVQCS*;ZcC~GZpW@%`I+G9aGYoorg=^%M+0BZY%frD%d zOyQ5l65{(dOfd9h-21iMk!*e(F+9W-$E^^El6EP8&k+rjUb#r*Xz3w83 zlX1F|WnrT6B`y6FPFl|ajWLeKUM(*xL4gb@r1Xjg+FRuid$=(gAs%6h&3x1Fe*cV{ z?E=JrqKOAk?NyDg>*keBgHKXMlvadxvaw|u$!X)s!}?FT&F;2J)*A5uokGd8=m5=n z({3oO-;A)ANp5gs`k*&VwpEL&H89Wn_3R{tmHzjyeMKz_dH|v3fCmPXUVAffLC2#; zJ&>JxuWs7XTmboSVMxx*#n9dzx9Mje2D-M_2g-^@n^h}#$;5uO*h|Km%Y(Ny;wmIRS`VI38l6UNkt>6jSuGe4Q`la)pR(q3>-uvS3bNt1SdraA=eeL z5J;!7*&M#1<@g@PAS84}m8W+V7wfQU!(_|_8}wH%p-#6j9N4CMDo=AX)s`4612nNO zoA;O7(teGm*(7mR7M&EtTT2S-&?QAHQMFT1B3PydhInLQ`|!f%;Mcd=ey2@fhMZfJ z(gZ8~x{E(hd|lH0WX;)rZ5vLy_pZHPH=KXtAReoX*1!p=Fa>8fuTMGC-gDYt8y zu6{Zj!QPUPH9{0FsM^(vb&)(Vo=tK@uj|Fpih|7be|3F0Uyoo$$<7I>zGhJZZE1POjnGHuy>Ry@b zgolrVVrn%om0!+=)1n|X4`ympF298ZWKK8p{Ufzl?;{Mf3cfy8ZiaFkK62`H)rK+D zy2bKPuzv#K`YuFu+8b<8JZn`>CE*z!)c!?I7S8LpOyfQ5#HbS%G7Z_l<}= z;&h7W>zleNbc?_YX_LIos{%5Mk=<0J%1~b0)ZNf7ZryI+T+RB)q`cv>3fGu&W+-pg zf5v(phu3T>UD{`VY|(mykhXZC_wC&qx>+3~rA^Q3Z0~*t;t(*XGBa2!z4Qz3$?RYl zO-+7QKwj8g2L3ubpsTpSC}a1$nFpMy6ZO(AW(Ooao-8@E)gx~3ST6rPY0Zmq$lik4 zAsS>@G$lXuekV-4w#m9Sff8Nthv@{*j_=|!^s$!op~oous78i|xW1|~j@j|JJ#i4( zJ1K-$_IQH8h;AL2%8p57%vE9UWxD{A;UN=?(oqE7Ou|L$vu|HhrI}t#N@P!{>uzpT zKAy2;n$ZPaw4xTTtF=6HmlwomQ$&Ybdj&pO&T@}BFUvJ-t6NFr`6eyx4Ia2^;?VUu z3WI}Uk!$dYYOcKO;UuvNV{a-ba%iiScv`0)N68qM5{z&B%*!18JBygJi3o0a@w8Er zM&iXfUU*s)_UV}i2`d>X5))-JTy=2 zM>Rip2gtm~X?ZPBi#v@+$=Fqeq$}H6WUlDw^RhgEYg&nQ*On(A9&{&_*+wq8L$7U` zS8)cfVwrYs#u=;}>8y9UNq|r@Bim!Y>QnY+UH{VF&*_ZtBwkmFDCmL)Hy^4v&;YFV%F1uPl7x_Je~%92DLo zy5L61T2B2g1Nl}=B3AYEDnm&2%mk5H0nd6VWlDNetO{$;15>7aO%0jXNn#5@zb9D| zGZNWJ1F?C2dW#F^&dxN))kvuG8M+S(9R3AHgV;TIid(8)R2` zfVHVGQS3H9kL6AM5!W~V2`-0DpI8^Jl-KWhBC89tr+iL@j=D_HY&gv%b?G%Ooxr=^ zOky;o7~vS&+Oc@V1;|cQw4|39MZ>s1<6eJVcH%&4+-dOP4EYsttxB?pt+R!)N6yTo zG0T2;Mq?1XSF2gPin_gGlkk;hPD;-rT6Lx{1We9Fyc9;?yV^j7^I;G>4u$omYTPpf z9>cPr#?*%aAStI`ky#rf5u#n5M!aL^X+mg+aHy_lDmqJe=X^LhnXl%4wkWnSA11^~ z(2?M6szBo_PnY7Bhpm75ZJr&SPgp3Eps)Qy!I}@V(~EVB7mLN*Q*Sj)nx6htd5g4< z8@EaSEwUkK7($=ek6@j%{j>KZ6|-;hhGa_w4V>ylhaWKu>VDJ}cb9$0<3-cgBee3^ zd{`!=UzVkw5iS>GvkObHGp$zK2)1dNdkH1<6b`|7RdRK*nt%09cmlQ3s7r6 zEB2@P+iVAi_a z)FO<^r#y+{mY|1bWg#~o=ATXApuffsO{{K%Sd`{;GK{Ex85x_*$_ZMGRZ@FX;!oyD z9$LhJ%sL;T)Qm+Py|kgz%BQK9m+UUw@$kO2`AP?s1Yzrsd{Gfed=8Lp;$0_Y0JS`* z_$pxH2T%)JV9m{mf$z_2pV#s;R?Y#?GO2vuM+lpMAsl~fBqc7ghX_$32;@OzGQF3* zHFN2VgBP+P1P^RNC+RkH&@O4ycO|!rjE2QqH2jy8xdPZ|)p36nG0yT(iSZx=%hMo0tCM}o7jBgJO_#~QGGwU4ceUhFHZAPaSmYWxo( zsk-vE;PUtj#*-dWYN6mPF9U1J@c`R!mf`tzKEMi=qcmQ0!YX1bmb6ECGNoCic@nOc z;w2bM(~oP-5;+|~1x78eKqBihH?kh!@Uq1i^4+qGM@5w><_nwFpzl#&GPo>8Xsck3 zs#i9R(HL6z-~U|?2E!{jDdd5Fx+SZPLrEBfb82|gB{1N=8(~>a(9FGPOXFx;e47JK z?^!ooeOIDPmYg>%)|AB8HM%TT(jB0^7Wz+^V?ovzCyN({w#h zzNvG&ESSaKsnqaC8B^5A`SI02z#o=1bZ|ZAxAEjQ11r*QVGj*{3O>Z2W+UlJlnS+C ztnS{isL@}P?$9f=upJg9DLZ3$UN7xzw?h~2Y9W|QEoxW$z551FpcM@nj_|LrLP3DG zsu6LM`jA`xZPc>$m=n<12uTkggCqQb#lRCoZP^$N%ZszjJf3Y!f^p`A5&i?n0=q32 zgvvoUK`Xnm&1DkkWVR^SZ=rIe4#8dMjiRJbwfn;Y?~!0tuKf60o2c%{_NjLNJ_^t2 z&WNZ$@>YAeua)8+w5aGStsCwyhFvhl6FWB$F+=OrNc1~8y1)goIrvHVEeJU(iYBn8 zVr#{KE)zB(J{ahS|9z+^1Uud4=ZT%`1f3!znD`B9TQ!}}>M?#vb`TU<;4i?B!*>CA zQ6;0)8i!w?n|n-e!S1+I9d_sEHq=YU5vgUl^aE4{pR-~76kBFu@DEkMMLxM@KoaoOSN2rokNTtCD{4l z$4>z_&Q9a(TtAF87i$=fs02v0B8B=oL;}J!C_C_dmK<6qMgI|YbWzmtJ<+IJt#vP9 z4boPV=bh4qNdGnUA<_cm<9qjbftqkSk2}hGh)}5*p5(T?2~rS4NX?GT&LBq!A^>rQ zC0#*0xR4Su=go8iZzzl=Gx-s~rEk1+RTnO!{1O zNy#NFQ1(J213!&qB$`R(NcPjto?x(HyK=B!+F6p~t=MA1G;}$;m065-QSR&fyo-n1 z(`HpmlE6eF*DGZDYr^j%mm-#n-PbEq8~`REhPYjK$34}{lgi|t}lXxM_rHhU4fWO?`Om@utTtwSVHX<;;C70*#CgA zX#8D4i-MZ+^Kt=NR0K&4a+PRR&C2kjWb57(0WhF+6|sp41!@}98vFzpN>8mVIV z^x!7*u~9YFtiP`dTNu@t&dPP7g~n92Nt21#u@u~pu2*7kV^m(ulDg)&Q5Ge~AjEHS zTmp@-jm7yL-`~40(H7bs?O~XnxRX&^kCj_kCesZBgX@!rZ4qH&Oohx$FSg@QAr}TO zY{>O`0YDBHWhMxjZyXZCXp3&FNaRn`As&bDdBH&3Pi6e3rsh4=j>n!vKF?9??YQ!+ z4%gy%If_YZD_h?7Nh>D=%Q$hZd6-_@VnUi2A^iqh-s$fXSIv^TgFZ=zWD=^XTXnDe%WW||)1%s+=bUv5Z0)4A`|+=#MP6!?p_?Zbx;KGC2!xmn zk=T$AQRvGW_q`}5EQygdSGFdwaG~Lc+Qb&?H#P?UbYt)#wto|})v1e->oQL*LGB^l zT#?_oA&JDS8Mv_FLxb*{n$Rd`hF@I}G0<7;CB;65$*Pwyikr-uLPFh1dTB_YGg{U@ zlf`nJ^y&H$S`LIc`!9&gS2*1yK#|`yve)$SDY(Bz|~qq z)XVJ@O~OYeYKWB`2WC1PY3=A!-UnpA@_x_=Ho3W86YMW?5k*3cml^bhsXq6=-O@&B zggV`5^;r^srvF6;5Qdy`09~i`Bj{q?$|~=FyVk0NI@?+mCuDlA59m=|p^U4*_pFgu z0VK{9_?B06d2&ZAJm_tGHaGZ(CCodOxkEp*&8iQ9Lj+f%@|%yY`oC@rehYO#9wsy? zr@iXT(4X%x)0@7{l0CvpR!@uR)Kcr7;s;6R*SWKc++Te+`4{M~n43KF?F}^cyupjm z6j`>`FYa05ds7(f&@-`0N&YO%Tap^k)nUO|oDx652g+Fl=bcuab>Jpe z0qxTqu{|G^DFHl&unP;81O~;C^#-zb?tm{bwnWX^H{ckNI0iyQD>_or$HioMJbL0w zX)#4q5Kk(L0s8*N;BWL;7^3wtOcMQplS0&@?8RQ*}zN z`$sXm_7o6Ch}6+^5s#xLGvr?201ZI$zxE|DB*9&iC#w{>VW})V_fxvkrop6I=256t z?GLcx^t@agqDY*~+fMbx+N5!>5A5e5%kWyJB&$T`nSTa(k>X8j(`3{uddyosXyvdv zmcagMo7uKMzY4pJDWEaAXZpS;08K!$zaG{;OIwfHwM@9O+{=fxA z-@oB49keDaD>E&2F}4ulQs0+89Q=J*?1q^9r0~5fzblNr1GB{PUAcJ~S|c>r%E1q3 zu@BvQnm8YiKt%)+_%xvPp}|cemRI2xy6*9H+|-guhlu@Gw&Az_kcKSWv{9M|jD&i9 z(z9GH2EKb6QT2h)wnJ3aa(;wlx$#Kwy1H1U?X(-o2Vz+>Z$r}|{rQ7!Cgp&?wPE%?nkoHL z*LtxDhY_I~Bu(grq!mKE$y^ll_)_Mwwr(@~mDqm43_ODVty~u7r+j+Xpf?@0} zP6({07opx3Wd6v1Jugmh&f>hP>cb^MJECdLse=JAi$hZUwcf(asVe?;^NJ8&iwl;O z??{RJIZL9U27e}%?=t!{UXcLK-+68DkG2Qz+khzl&$hr0K~`Bp?~IYY!A6J|Hf0_p zrqLJC+|UZDUfb1OeyT6Mp-o%qThlY&O3Hvz0bMC#?E?>?2NG>EFN(*Vk&VD<*?Q3( zM<`QQu)P06P?uzL>og#OmuIAbDU=u5T$k*v4GnoDh~+$RiA?ND?t-%>YBQ)@A#~_^ zMiSD{etp}_*Lm1Blh$Y$yaSLENG+#eD5+{b5$NRtTUko_W#$?lC|*v8y{J=3=f7x; zaeSWp6F*6!$vR5R)qk`NZShh4p+`cfqcSyeLiWz3?ZGfAkamWWtq@9Y8=QM^hgmZ$CW$Co!cJM9W_9noqKVVd zIad?Eg-;o`4L2IIa)p|EOY?zW*~?cjg))TYpYO3)!!IK_QX-?juG^*=xR45k6A6Sn zeszCZ0;T?$r)z)Kv1(=fr_X`@+@`&=@b45r*i8b`9RMeeo0iHNlbp;HnuPI4x8a{} z%i<*AD2%1{w50jV;(&h+8TUfOQ)tWpZwxaZ3#(no=M<$}lcR5@6Zq(L5Q`R|Rpu4z&!Q6hW|*euuxfHTW}5I3zILGa;O>4-Wp% zgMT2dC!`Pf#LAaNWdsb{Nw*Qpm%qV@ngSm2$HuE(VIDQxFd8{#y*@~wtSsq~_eBN- z9wO7tyMoTY&+JQHSL8&1(_&=Nt+Mt+D6*W2HYL?#g^UDSPV~8-Vx#(P-gD9%Cyh$y ze@e@YY4HuOvmkF8VZlop-NHdJdYGjDX7`t(`9MhwL1bXk@Z()|1owoG(QG zscn6~>42}=6DxPpHz>-cA!CWVR{sje?l5E$SQnj(5~W~QE+LD|?fdT%Snc|TCV3Z{ zKsT`r{0%XfkZ2SZ`7Ev)iwlEK4;xNW^I7A*1P#5PD~rk)rHJ!FIH|l(GQ$G)& zTy5pInW+)Pd`Dc`jLoLc;znjvfkus1vTA2=%x%K40Z)=D!$U~ats0KiV}D{wm>%ts(B}5 z0mUs*5X z0Im3HI!FiVU$oJ;{W2BE?{cZ0@Arwmq^P+oMIP5aQ?i2#mvy4}H~o?d4;92Wy&C}t zQnu@1p9$*}hZwwg=tm8MX7=3_Yq4(x|+Rn^i9{oaKNbu8G@l zBa&}y^uj0dqIA7RImUG#2BLD~j4R3sE8@dh`0`U60Dl=3N?cWn`pN}H|8T>%l4x_} z)x_4}XG<ATt+X6O*yZ_%Axj*m89X4i>!F(H9{gMaT>+B|3E|u z<#ov}GK2Br)QwjwzoxtxG5p2@Ulw&OM`f7%_p@QoGjxSw>+C5tW0eC18i|DWTWfH08oqvbtpL z2(i#VPN$77=!Q8?v`XR}F_N=34MotF{3G!a|DBz8bYt7qvY8TroiqAXYbf1~KL3G# zcjw*Rka^;wA}i`JIp-H!THK&5q!UB`d zGgCSoD&5|jyuD?x=FoxruM9j75OW-kSQ$*(G@ee@gxH69v`@SGu&~RLZ_R#&qL^!+ zB{@}abwSs*FNbqcv|TNi)s~^G!Y@i_SqU3)X4Y7-$9#xWuKFmZ0K+^Y80cZfjV(42 zm|l-G2#RH#41+eDhB31+R@FnX58zCcV^=w!eDagb2ue;ImAU`gwr&k%QAXHT{}IcK zI56d;HjQMU#7ACo8Q(7HODrJ=42J?FyPp^k{Tg~ESRkU`MN}>>bA` zzpYeWo3N^G_AOvwAuQ`@f6MXSs5e=Alnpi3%F`T{s@+pmVsr59)h?+bcqOP_IGSlLy;*D9vI zzA0OvOtI?f6Z3&+W~T(q(p&_@A{}DXJbUF;Ks8zY!ME`-JMD9+HOCtG(zFP$dag~Z z^@sfSxj9kDLTrU!5q+dO$AOD4X1!@R){y6yM4e(c>%8vV-6(a2t8Q4~#C>T)s@+{9 zcn;%NQO~sa(3?j4j3N1gt;0~PVI0ppuJ?)vffcE@Lv0rAH98O#BP#3J!;|~ecJ~u> zHS^x^m!LL1#t1hWxdcUmDg>!Y!UvxyHN97C49ZHE+eA3b>`_MavM_BmK`THdR^R#~ zn-)C*FpNtk4}Dhz9)MF9b&cu1ya5&DmZGvEpT_18wnmkVq4PFMq_DAH326GjS*sGh zqr^4}OI#HsPMlo-U=wT>F#%{^{X-hLA`q~Gix9<}VYDkHris;iE+0l8O#E^j7rip$ zmjUZF3FSNMCIgW&8Ww39cOAC0u?Nsy0U$5aa(ilvx!g2zfy1d+g}1Fn4u#cw4iZRW z)!6mh>GFCbov|%D#w3UTSd9;*hW1 zic6u&!XaAO#kF3_rte;CtGae02}b%=a8DTb5L^`&Ekd?j)1*B&%S)nJbOY!#)mFOi zL2jMLQV$IEN;to>X}-R?|2S=sb`8(~EAOnp5V58|wAR+Z7DX4^@F{%n4K4{zgucw; zR2oPbA%282QJ@3o#_9fM!@T4qrxtWy&P#vdwpeMbhg=2)nXM%6(bF7J2wh7np9uTH zwoWE)yhy@aeaMT!;Z8KCG+C`W$G|5yL>0vECdIs}ZJMf!T!L+M=zU3F*&s=RX#w`` zc(KT1Q;=U`ZS!e5t@ZFEZo)$IQ7&sM#4m12V@UjTO6%ck{OH+ylFnv5Op7+DXKjL_ zOCI|b?!?;G?2aONwkd4iq@JCSLq*| zk2-vN)Y03c?z}zf?%Sj8orgliP|aJ)sZ)Ke>p>Lef3Garxu3w8bH9Kw=Y9ZV&YeGF z&YeDE&YeAD?!PVO`25`@+CVByURXnr4{i;9cWdz9uzv$a^?EJ#k%#w##rTXt_O0E) z(cSxf4hRvgc6Ov+;LcVAK+UI;#GcUdw)v#Huu6QbFAZX+zz z?G_J8Y8@=)bl0g3M+{G&--amkSrN%xCX+dUd=IT|d{-j(l=qv~J2OF7;!-$-22L z%&A7@5S(jxTkI3ISi7&0`OzyZ{uPdEf{(HelUn_)(9r9ssY_p`c+5ewb*w5S2eu&l zi}?(!`%y0m>+=%XNAN0+VKu3xYbEmjk30W0Vugo})`?4* zEQzMTZxeWmVADiH6Es#Ea!6?w7o!nUNFY72r&i`iAB!e)trmTIdE*S6YXiM3mVdyb zc$C0_Q*bcIC5DaZ-5lWLz=Hpkh|M+U$8|w6tTkN$SQ_Tx5)q}Guh+N=&<-){f@0}n z`>idGgNOZ){+YS{k$Hj_vSLGU*Z%Us!EbI2CUVV*LuS#|>wQn4Q8JDz_afoljaxIK z@D(Cg9)=Kqp2fzY+5Gk&#rFm*5}VC9EEfVF*m2#RcP5|Y&{7}}08%G>RH8U7patlY ze`RCv;cYn}bO5XZntl>zQuFysTRMPrrB<=V&ezLJlt^NeZh3Pb}%TUZN1=XIcVR){Jnbz~S zdtf_VN9i0Gm63pIaAsHrp90(qzw5t?&J)UAo;$;O?Nu<*c?^AaIe*(vd;96nv$NAj zHhCs~(UXO&^2B@Z~cg?2tDm9=?$2`Bb2t1QRV+nkNV5ntP* zI~Rau2V5@zhxQ#IPCkDN?gZow5goElU>Y07&5&7T)heXE8ldAsfRfHR+_~M>B;L?b z&yt8JQ^F@q-ux5TT!?*0=?gJrX>2FLn(Aet9t@nRMgzdM#L;o7ZJ3(%c-$0`ZADS6Mww|CyP^Aw?w0)Z< zX?qvb3&KTEJz4x#oHwLGb^~%pr}g#g38&=k@|YiM+mKYjsY63GH|>R~sMo;PC6x-cI5@;Vv``q=-D!z&)-4L;aMkMXO4icMr}@ZVmTHY4;8_w%ElD{SU>Dv{7sj1o zp5qsv>~M%BKm{u(iG5!NKCL&X)|lXOX|9fI?JR`}BQi(H1DvHd%YH}*0HnAXlo%6i z{xMq#u_JS&UBEFd?LMSjUk{qKyH?K-P`c=#zGyrHthVzczjq(Wc@D z&0$cTNv+sv{wGly7sGMfh*{qo$xH}+lyiKuvPHx$36J`q zZ;Sb7xt^H;hOmrC7;!5$r$5{-k$IZI@KdQaDkfjVATGx(DpiwI5?J+iwqn01d4(%d z97%>eur{!8)2-Z;Zq0a{5Q~_)GC^VYAek23@4umz<|{O|SAni;eB7>rcuKR5)#i$G zw2I;=cLnI*(yN#SL#|RF(qIZ?3K$s;dac65_frI(c zZBC805!sm`mahb+y+Tfx?txV$rU~Y5IU_cuJfGBUI*RDOXRVaE#{9zopSaon-o9=K zeJ{!-qg_GQ>S{0>`WDQuiHrBrY=3xgus53uhx!2*9GIc!BY07;lD_s_#1Do%!Vo(| zc+!dbhc2U>g_Q`$8J_L?YwppVhiFO%B6)sxgLt!C12a;Q#ZXapp=sivpB)UxAqknG zZqk!Gj}mB7RFE*GhH_8+B9(-&8Jpe2M$yDXSf!njUxK#&Fb^SmD4jNA@TKl90!3#o zPkmtE)AW%CTHUR!#ufwpx|KA0Y-fk?GnlW+d9RZ74gTF?vABQ#{(3b1>>%!yue}U_ zMv;NLJUTlZBBeE2mPN_RO#n;zpKBGI;m-9l1MpKGu_5KAF473p1RalUU5L9AjIJnR z`$d-4Dp-C3^6S;vVa0T)m3RiE-MwiQjAlneG@c63M9{^(d61YqJ4%SfEsIuMNVB_9 z7iu5`cO0NxkN2|?!v!zjpg+^NLZB=fJ#;GUUu`3-@JsA1o;gz0!)2B%jj$M7$G6oLDk8dQe0kJshO6?3`*>Na22qKE^%$RMne@KhAVhdd~aVNA7B*#u#q0sM2p#_>!MC>yq zDJ!3vz3$BoE;~tkgLJ?=a&=S`)wFGV9gAx~rETUjgf`icwgYfwZFk;-TMUq1W3O++ zSAAQ6b=R6cD5vBQcC4m9G)k za^nKc1bsqtz_iQ5dUD_N=}(Oh678$#4i&0Hx+=o_Ky5? zl9|on_=Qb*S`x*9mwK(5(#)O2lclpjd@27#KoWAZ#QPY2OcB z8equ~bFvf!r*fn+1?|TBxDSR6;xSP+ZHR@d zBUL#^I*F64Uz$v>oB^Ro10tCeYW(ji9i~M!9H&KKVh>%?xNNvhWbM#Z4%KCXFz8%% zZ?G$chd?4jU|9Er3rIWuuv~G@D!~~W0Z9GvzQe?~w16fSt)WFBO4m}u93J<*4dH8P zi>#UDi2Jr!LndaZU)_SUQ$D7R$I@g`mgJM{v}d^ab$cd56H54mk^G=B0?%Tb=+7*v zkxrUAt=G^q>c4yENg9H(j2yX;%;?%)F9s*V>673@JWf=cPPyD090{?J;65R#l$a!| zZNIW1$1)F*qj9Rh46``a*REqJbNZUP?N#Nt0p5`NA|(8M9M-)Ha2m%WSCw5x_h+^t z^aBMOPjzm8Ii^|Sl_`>;xC?vQ(G>H3AZJdxk|L1s0Xg(2p%p-Nlu8mlbAT}8%DGWz zw3THTlYSog2+{A!)xHLn%j3IBw}PQ(b)PTaIf>gk&bzwK?0|YFHjD^|`-Z`JoR5fu z<-Pt^U)4JW;lm?K=tF;Ox;CH38eZw)l7>;wbD)u+kXVW$>m#&@{O;!9|Ab#bC~~>2 z_vhI_Z2)hECC!;(tR8+|$uX~6y_V#w8t2Y7L*hdtSr0Y+SJ@ipeRaeCYz$sDjeRkw z5Br}bX+UzHh0&zF%_z!AlF|Ltl~%lsjUy?`x`(dSSi6et*ZO{9(dA33jJf_Kx5D5X zsk(P?q^yANd3c3g7e&I~U1_V02W0<=|4i1Ek>69cO_EU}mg3(N@fhbTe)}K~ zIZDb}9>GMbByPI!3*NJe*iYK*YO7Jq6_KpHqsA8y%m$T%HM_eVSwiDrW$s9{-tU>O z2GlDft)nVx(+M8X*)?w8P7%*eUeZilFp>TlY@7K0hHOW*iffJU?QI8(D{#3t(wJxr zpCLh9fHt7qThh`q{`SrjGo;+k9$OXXvAm!C7vK)CPSG|sDm#*ya-`~(k z%Na}tPRe6&n{@ibCPCon%t^MP{>^(k>w=jH+{F0^l>ynJH9iHbV+KOAK!a-&XSO(F zn8=_dIi45n|Fw!PI47*5U%%tHc>*N_;r_vuRum~8tjcfTH}cyrY#7YnG6&!uNcsSHNaeT-Rm@80xrA!Z&>A^jD{7;C4`c9 zPy8g1o9PuTQGaO`rR(knkVRA+S-i|^#vLM9?>Q?_d2swT_9NI4;vwn&F*8|fMMoOo z`?d#v#%3Vc5tP+PLkIe+4wE>w%80MZy2N2PA$c+x=Y`i6>A=4!=OYf|sz2{b49QQD z;Y15ALfa=^+OYJ+(TRB~Y~w#{i|BB9hAL|D%Ipr$Zw&4rOa)-#V~yq8KREdJ+Y&)F zi)j%_#uX3TEdf{wy^G@a6n$rhFmYr>Rz9)ODenZQ)A(FVQl>FcE}cc|KpGrtHNu#0 z^8G+St0W8}j5(IPNqUvO1_W&BhOSK&dT54HG%VnMa!Xb#E=jcJ>-NRX9)xpr)*wk^ zQV=b}*l97Mzy(YCjLRA@{0z~0hm=&LORS};iE)VU^aC=wq1uv0a5tj!9wD_xE(uoJ zY~a}R2ju*IdHk~=j}8aRK#chR*EZ$pV&3l!LAwr4PQJAUhDC|h>(^2C{)shAIH}tb zq;sSx2QqKogE0w(wU7CNBz_S1DTob1PCA!`zqlFrgA2Cb*)q5-ZZt)%X$0Y1Wk=g<&` zkvwg%@tDpVsW`?0xSGy0{2e5jBqeF;qfXMiF!-M~AdTGSC(R&hATJLPZG%D`EzZ;y*EgI=)B<%vgS=Bv#aB}N~*|~du3ZR^PlohLIY`z2O}K(Rp)ERGpgKd%IN;u4Z-RCs+;`QZsd z01kXVG#*GAO;$wet^5f0E&y<4pLAjHC))_R!@VD;(?keSDTDq-yYoJ6LNNh6UZC@9 zSCfvp61o;J7h+))5A5uI-`R%fcnt?9oyCn6qnGCqU|iI7QVKizDwn4fc;jYFtQI29 zUkZ+BNmguJri^SJx z;SR7jqAWs zC^JFj(j(R1#C((FKFgCU($dxyy}ld|ut*mdXB%7dQIQ7Nq6yx@(PEy4Op<;J`X@ms zglXfMW9LmFmVB!z)W;r5njpu(JOa2*M$0gWnTmx=?hW6)MjM7a%1F8x;5gwVF1|@$ zN6hOD;Lz$<(;t0lhu1tglZ-@Llln4ZpWPNtUyiXU0_P2BO(|8sdO=zJ-Q}0 zE^4Ie`qwsPTPk`cYTlAc#B`~>%WPYSpOvmB*zqP*x{k8g5V;L>>XRQkgOZ=X7#CMj zl21r2c3iwWz#$K`MU-p`W;`t7QGn#&i;&rTj5T4$De=mQQqe2hIy2o7WW+xpVo#Nf zbgS>}{5bzf>P|R{lHmxp#LC48hOY`PM}d~}YEi$4P{$8!z^wEvPnYX1Sl(4vIZG;P z%jPB{><#YLe!?4{+A6^bV;}FQwhc5Z7P8#0aLomPj3-<`e)7wli$&n+v>?7;mR8F3 z!&|B*-ZXUE68Vdgs+Jxsy-;GG-esB4*2!075jr60r+NG13C-4Xg^z$>9|tf$pIJS? zHtJXwmBb&~tuEN_t40^+HKf19`Q2d`>HaB*cu#N=GvAB^#}-G0w*)<)t66(y@yfRF z`Kk$A3(cLAE`DrxXt zWdHWgvonOlrDa6Q6Wy<*$`7Y;7A4c5jkH#W6#{;kHvxjt!fzx#dO5TvkF4E4#Gph^ z@Q^3C9J#u&t}k#%UKHkrF#PLGK1)OztR-q-dzNUQG=kON7|uV~6meKl8fLILaQ$CQ zV&XZIj$`O6fI`)zH8Nb%wofAeRvK8>=vkLXJ}`bf_|B%VzZ%VVdcKK&za?8kGP?*k zZ29;+TeVnhfOZp%O|etJbhX>{9aY$x3Iu>9bq{gy3E&cvSv6~Bwnm%J>WBa(?j}Xt zh%P3=z&EXs1`o;eegi_@P=Z>U^#^Pm98EmVcX$L;YN@BjglVKE%4v!|Uj$7twved@ zecC*M%gQa1dK{`;_r6VGuuUCvUXeKjegm~%q^R^RBqZefj~ZY2)bcZK^4lA&w8s9? zf4+_Tgg>cW_~yP3uo)np6}FeZz9l)^0%M)=ueRlRi`e@mzR11i|JO}n-z!(@!}wBP z#hp{=2IEo0nthlgB!3NZ@@>estE5+E%g3a#*0xHdZ$YdUAB}Rrj|%i#n+_2it`??I z4gZWcb-%$ONVBmR)V^zfh)(^pT195I?6ag0B+bZQAcW$xoS~#ZTCUN}9BZk0NX#fjiut z>`h@3$(i@c3>OplxjTYNhRe11dYp#D1)MG4Z&k%JCXM5tT2msoakeIR0m|FS<<%0 zZq@b*EqoBQT3_Ub0`KJAIiVXarG;)t_#4B^8`r`TzPBxgkX;!xLS8`(k1rPp`pz~R z%o7I_(c83__@wx#X$;AYF=9*jvSzpZ8hBKl3%0eF)y%b=udL=6w~>r5UE-B-b(CN| zxqmpT(A;dugX*{sYJ9zp?}*1MLF76~PTbb``xu zK>6y2XtTVTVR9-RmBmYbMTpQnEaI0q6>Wyfr7l83nndTg)@(lSqFXo#xrua66lg_| zaWF2zX8ix%8hmAoEnGSZgY=vJY-8}3od0LIT0#$o*6r{wkUPWfnll45#rQ8c30lyk zO{G<31<78vuY?`AgfBZZX9c(E)gLXn@h&$B*k$K3BsXGuRk1|3^2%i<_+Peev6YVgh#2Sx_Xf3ugWV&T6jl=l^1VB6F39&c5aU z>6LjA(4v2hJ}j_BDp65V5ttz8v71yjim5B&IE_3(f`(*Y{58j?T<2HE&IcxKh!lw_ z^la>}NqGAXpgF8Bc*0+8gI0P_ZcOwg4m)HDLTf|VpwIMUcuJ;JtTFlS^^Y4miqo;H zvi>BV23aw#3n|$d{HM*qO=6vDkr#ZC9ds@3uL>|;`rP(6#oEkZ=%!sAp(i}JN{|KB zAgb{7O?$u2ZR}Pn7`CM5ppOr^Wj`Lr`LgMHV~g_0m)0v zXOwSjAX51q_U1ELumfvbiT-suX1bJzTao&|g)0^q)YU8D3D)9o{Dez`U*IQva*IDv z*P^wxxFY@s8o+L|r*XhBV9l@0AM&})fr&#mc-FVJ~S$hz3uSH^1#if>A0Sk`H> zV*kA-dD*j|$a@-_krVub78dtgTO5+eVA4Z_+6U{&s&E6Lz#m-$cdFOg`y!~G1)FKq zfCDI>qj18Ce%g!Dy{$AqVM&)GNT1)Z!!Hkn@xNL)70~zkJS8qpdfeh+o!E(+4Lko8 zASjitP7m?2E6@VkU*GgUPGdK<0=ojqlDyBkJh+g0Qwn}kH&^Rzp3uzdsgJ(4#VL`Q z;$vEG>VZU|k4fyKA2-$zK6hQ#{ZH=LjjxurWNc8K8~t3or; z{0__$k9Cc5hp@A>Nmum#QN^u_0xfggX#^tl5XWXaZl7Ay5f3zKL+q*yMciM6sv%~c zfYC-VX6G3totf_eHlf;p7Pc|p=hwhYaNfw%8_x)>3hn3B6CqTjVd!}5kBI)B4&kKm zjZ!^$igtEIed<85$E&03$CMm8lbTG<&qCljH#>d`l@so_rDy(H=+XQ!NFl&Av{|)8 zAMwktL3{e-R@bZ7FB2zs)tw2=zjHCR?hOxg)21cLQut*)dUV}NJ_dn>MAq&4E6&~YoZSzj8w z40GJzFU{}H$d$S&ACW7~OKY!hvcsJ~vqHJnzu)c)Hc8QO7I|7y5D${4J;MO5#vdfb z?!&l5WXo<2HYBh9F<x2WF8=8t;U9C-VUtaW;U_d#ZHM$mP3RryiZ0|7aFNWyA@` z9O{UT;^AJeO<<}=I0L7f4-rIODH{R zD?4){%(Z3N>P^F~b!CPm@VaR|;c_9O;rz}9`_zHTPf(V!D{0m*Z}qB)3`#+dD9RFY z){;SCIhbkfGrqGJin3XCx3s!AuySYOF6OCA2n~O!gh*ePaj^U{RMPx!$;{DtiGAC= z=v=GkoghTUz$CBBc2#47pXV-repcw}IIaCIN^Kh;=CGAk^3(|7s}IZU7Wrb~EofJ{ zXgi78h>uN|zKPKz3@1@HWk-rTx>aqY3A^A$w1JO(IA z1{5eG*)Q)GF|I&j?@94n@2}u>}$$s7{QLf_}=K^rFe}`+_KA8?J*uU=nxX6 zE^P7t3RJ`Q!wGu?ve>*Cv`Qo@lv;Lt*P2lS+PGerE1NK;Nq1rJ7fh2=iC@VycfNEN z>%OTq-}wj{OueW!pVV=i2B(Sx6BKe8Vk;Ou?)TYK+@xshSem7NVjJb+Sg~W2mD$s) zn_+b9R4O!&%%hA+^0g3sufikMV?z2<$A^6f3PPfc1}R=~u0;;GG$w6X7TcCFKV-c! zi%~C@Q{t^=3IVgOf)?MlxdV5Wx$%zX5prfGj)XT;TE1uDakMN;(uQU|F2$y*hq#(W z9ZT%UpG!<^l4r5Ww8Nd-^f!lwlR${zSSftf@dLK1$s zH2!H|6rTfRx8#ePnDE0MXfbx(u%tQXx9NF6w%yAEJ0KUDJw38K@8@;*IXC1peG_Bd zFuob`SphR(k27;t1~coz^6R_1giaE)H47Z=MPl>KRHR)thV*adB`(rsR+0i@kNT|M z8by5+DHmpQNeNwpn_^2{K^C80!7;o5B(M8dH_cU!5Fz4is5m~h+B3!?&J8#7jgFFRXclUHa!J!yO0UwGk5X?faPA>P4q ztfmFqL1reU1>~6GfZ1v>mP8{6zqPpzuNx0%K1T2)En@G{*LXN4wUYhk{VVZt1{b^m z0PoNSyt3I7u1b8C8LhC~RWTpttrWWWolX5n@20pg_`Qw67q>*CC~Ma=ZrU}m6XIYf z3D0zK^mV(kP7pDAaOfF2p4@YQ_5exPnti7fd(cTsrv;DevqSmC+zK11>Vx{2!C1)~ zae{zEE+I)};)`19b;i^HbdlRHn8%{Hn}!?mIF@b!tl~UUJBnFaiIkA=#tp1rmWZOq zrH>(L&**N7BrDM`h1dNxbSx3TFzSqb^)bUpkrS`$u{|1aaU7wLgY?v8lB>qZ*+~kq zQmZ#SsgR1OVfJrshzm*zHgLJnC=QBo!CvBB?cA|z1H#rL4L!QUh z2+mTznNDTY8G?M8_d_a1xN#*_V}kAt>|0QL-q}cJF>kjlx$I4Za~8 z^?p3|nt>~bRJ0zKVJ7(AhA!4S{K9C5nrY}b8DWZ({X5n$N5^o0U$E8!1c5<q7 z6tt-SujMzob(QkO=4JZyhE!jASh1*$V)`@@)6)66y(U1R~G763u_5PQ*G1ymj^~%H^R0b6;-y z_K!1PWJ4ps2YZKm_VK)BZ)}(v2{iJNdj*+M^nLJvXsq*-Jgjl3#o2(p zTpIlMXu3vf#;2e`J>17KE4!)#zPc@Ah9JA%m`q0e<+gvyGi&c4Ded$l)+a$LcS)Zx z(ZYL-^*xK9-;&6Inh!2V8zw%*>7z)#wR2uW{zT;9?!`fk62WHw~91UXmN&MsKB z38n2ggjpk>p;-q%q!2Q%Qj-L6&wa}BK_h{i^698tC%gc4Eyl>lqaRctzW=x-ghr3e z9?eA3I47MOLf)i0R+5%U+-P^#m<}~J;J&u zUlgqa785>(vtA3#?`(@9g&)EzHtxlNJ_2Y2zpf908^E#qXUI0$+%#xL zRAgWK@onMTGncn{m=rxR=;JKlvm`%rMX%6Tzl0QURWAzfGa7$@3{mGJJ6PZRxJ0KX zNPeth?@_mg=0G&)1Z`XTwN24DIZi%sZPj*UqZB}>x)*}ZQU#2XF6w|JFkld+(v3N%>s|@xXW+w^-AjC^EQ?|@QP{aCK3@(*LT%l`S=iU&Xa4l+iJtXV zj+;_o&5MXAI7g6Ur5RFR+Thr4LLuOZy}s3DT?LRB4!+`Xv^9HR9z7U}q0N#Qy`6DLw+-8DWVaNt(X zX$J~!+ecpmqakhfMXdQV`rwCV=%Y)VuorX>BUxIEwY_RDYZU56imZ1SZADaD1Bp`s zRFPINac>Pi$sIvvX(Lt`$*9I|lM2~m`MlUYf6pcSWd{{JV`qO8cBb*@1is2091(~Wov(XiB(aIaz97{Er ztZ2`+#G7S4rgm%a^I`$ZRz+^N*#AWeqh6im!+RN@oYVFZ?0t^vf3fc>_brjB^P$ug z>AJvM^)UQm+TPvYyVqIO9`VrqJ#WD_5NWkN15Y>f@W3b4>=GzjPUz}()*YNhI@}@o z+teoqyCWQ;(h`)M@X_MhAo3Z0Dw2@s8`!`tA5SM(J_RCoez3MQq8;SuFI}35(4$>= zVe%+YcYh>I?J|MlnYF3n9$N${ER|N;Da~@&yo+qpmEW_eRrGYG|@?>gtJ8PD?06N)2WxNrhP zr%~14h;@dffdJ*etc(npF(ia4M)q2z0o=c^;oGEK0=n`A(h2j+a*30&!dV=7W6JxN zWL=BUf}y^LTAMc*gli|1J(KeK$m6BU)*;a#bjso`sh;rWhK6#{h-OxbU6SChb8CBo zvMfZx!^%n5(dV~?eO(1ko7fNYmE5$az|0tbQPLYba3(;=4?Q3v3eSae7iKA|yasRd zcE_#a;j6PS&ha?~<50g-u<<$1o3v+PEIOQm<>^^idCoYd#8WWNclgC^mRA*)xg^EB zFG9e0c|#c5020g+!@Dw9py(oM=6d*1>hl6gGsAjeM%Q1_O<9Zm^*+M_b%)lVIGY8@ zfTn6ZAnQ(ITM?t+a(6$1nHF(__;3`%^#R(JS4p-fzLuigB70{Y))zhC*su zi)##3bJn2K%Ajzp6juLQVNj0@hKNB0^PvS;lUnPVo>AM^lui#GS7$(6Ang>W zIRoN|X?=@K5r%6iXkkTza3>agF9=usE|?2skRloGNeN3?l=n#C{T(23`e)2ZK-+^q zQNAUn6Cdf%tsua_36Y3PMLmE;5)JFnN)G8Y!AvwsU4LH?`&N+7hAfg;T1w%z6}#N) zk}p=EII$J-H$nO;&(bPGi#$<~;)~Yr;;uA#0%CYEMR&JcvO8WD0jZc)?O42puZfn! zka~us7&ZnmeT2uf6319f)Cg+#X-<_J_6;sF;_;CZN zR_hUQ%}6f9u8t*HFOOny>J2EgH#$uTaj}DpalbNaO=kjONc9tq$5o;`b7%el`rjp{M}o@qUIW2ueHoe_^YzN3S4 zDaB*CiPGHpAhV0wJnrjyEpTokU5`zdr6J#4G_mWxn~5N8GrN-IWqj>gyzjBjcbWH! zs`#&1iumApAYa;f=Gv;;5SAb56lOs9!+pBr(yQ2N62&e^`=p=xRkQ(VbnMP3}pN`ma?TkTYBMg^L?!$SO24D1sUlV1l@0R$UxHAhJt2k+f zt73(y11snYdnfJb$OT7xx`Olx?~!_DyFi&ad>R!(f^Uc|olupvcqi`D&k=@c0chkI zR*^a2;o2yg0=|0mX(yHkApr#w^{MaDr1Zyj$p-&(EwnT3iwa+u7 z!TnbueVFeNE1`&^S_M7BAH*eezv_iH!6r)DKs+S&BZac-WY_IfUVt^ zYrzYujL1B#rFO}#*2JJ67HYoU9{kkcr)82p&Sp!>Ctec}vKK589ycXvkO7Jqqxq(s z?#nZ}p-1V=3T=L419}Yiq1l<$!Qq{?>_Zs$YbjK1A*Z6!ydtsx*E{T~5E>k>n&U8c zxxNw>ypB;cB+P;Pkospnw{fa1HqxEE3r0Y$3`4Jv021YAjb!}EBN7ICD ze4Q~8gkRG&P&SLTC&5Hkt0{%#fa4R_Uu<3s#d4L>KM*>twWN?f|M!GW>-zBieFaGq zzFFN6J@r@NL)+Q{8iGbWH>RJD$?pn5ESi)N!Z;zGa-)zQj9)g>6riNLG!TKI zePyQJu?!Kqm1cJq|gogkFql@iNI~hJF{}OGgk;ab@{z}_mDrWOUj_GOqV8Q1D@5x z?pu)*`j(JvoBFc5tZqR3YEe_ZDSF{USnf8D>$0=$e^c9c(}eSJk@Ul-cr;1>uImUO z{u`KDT9VL0;=2=DFsP!xy@`mzKN4R=TSuoFLbD|c_gvfHGQ{-1j&i-XXV8V`+)^{I zml5(_b+392?Qxg3tD@{$*nC|y>RD0*C%w7}z2bJbduH=FtwNEjwiJpR;t`t0Tt!x{ z+l6HKivq&RJVYR_i3MxrTVJd|58b<{#66a-GJ3c#!-ny_4I~Mu zy${1GT+ys~{Q<|XL1bTMuI$?9T$wFr+CM@V^(#`2aOF!$V9cuD|AM_px4@q6~{eAgH5?|d~djduto<+VQJmc~C!4H2pNoh2M z?w4U*a7ACXO8pb&c=H2QH9xUMD|l;uNb*STr0_34EtEDg7Y9SM*#TkWSBKUqj!PuZ z4-bYkuLyZiE<}BLFJ^Nn*R}cK;aYhmucKgUhfshxptx6p=<%Ja^TRc+hV}$RhJVen z`TS7m+Fa59WSg-NFy?oU8;c*spZD*3M>y@?+=;L*F;H_yys60gw-4O-WQ77`gH!rl!GAJ1Jn?L49HV;OhuCa!lbzs!~)0>+UQlj#!e z2%H7dmUZ0H~tBpGJ=x6ZieIl4M6h0 znWm_4pLhJ|D)v3DyuTN_`Oclklo}#Be|_QeBG|)A$m)UAgBp-SmzEO;71AHHH!%l% zU@Bn|Y0sLp%P(BFirogOa5YH;0!T+9t;X@x&TT6+S!6-Mx#vvO@=Fr=6rIh=QJddi zldm7=?0%S<*83C0Ci0|-Rd%WG((L;Q-i1^W z7f1kIK%&38)O2*twSy(VBVCA)t!{z(xPS}htSMF=7do#1OH`A`jMB~%_@*9WMZL{? zYBzFK@;11za--(_H!047Ci~N?qd0$?AI+1fH@&BYS~QwNiIz!UJaf;;PX(V9C)Nd> zu)nmWEivYZ7OWa+VI}ct9#m+|nk<9CB;Js~Kf3djf#=a3I;BV+irkVrG0KL1dt>ms z+=rb8HbovpI)gvmP^S?Ie{;mcbR~iX;)5W5Uin6jF42-Y@%~M4(p@|h75fWI==~{S zq^Qm9vryivQL1we3or@xFE}bmVDqHzx=VaPIdq z)g6(Nxy%zwQ+)UqlA1zS_zg&O=0r?hypqgg`n*L_54A@TEh03X>hT)u^%C@V& zFD#_Qr>}S2eUiTy5&Ffruv*PrT54~gC$Sn9L9wc0*ncb#>-!?iAo6C4GK)yjY_;Rb zHOK{Y`HMO$;a376J>c+|4ZtE|ehC4+w>>U$vm_5C=8nHpCBk8E3~|k-4W+*T*R*2Q z_?^8G(i)Q61IY-hYxFE`KONM&T=Y$!+Ln-R8WJqgGRt$me}#g}_*P~&v{yzk*41Oz za1Aom@--~8hbk)O`mjIQmeX1J#;0^R5J>RZ!$@t45XcewRPk82lOTpGQ4> zt<%V#X{~~59xW-?@=M7&nj?s)s(sEGwriY;m4v85I?)nr;<8LuA#3w4aplWfr-vNv zP1k4fWo-z8SJCYhuPq55hAI~alL(J*aP_Xgz4HVi;Lli+Y~~<1jbd(Q%fG)o_ousPVrfM~p`2o=qh|3f2=*4C6PwDQ~2-abs&=4WGzaoQ$dpYmtn1 zVC(CNG_Q=pbBlI91?kVm#0!qjUGMkOq1XLMEMO8(ZjPdR{`R3y2OagPnV?00*kH*+smjNi5x013U=v>DJ zCl+OZtV>jfZ8NnZ{nEDD=&tL;#Bjk0J?zrGB2Y=V4XtC5%CR0(LZ<((495zP;W%{W zLEPtiL?DkbA}T^Q={ipgaJeu|HSFQ({2ev}*jtx=2A8=<ZTZ-`0RG(n1slpi6o-g21;GRNhAS}Uc(2f(3*v#Wn#wR-8BUN zAwlf?uVq}6DQUDi`*-Mv$yrfK5SqMhA8+qcr~M3VE6v{{h)H37nSZ&BU=D#68R_Nt zl1pNz6G`NTqS4ZQ+W(czZ;pH%HdeYsf?)o`_CSmiXvZ>Tp)KwgJL0<(1vhb8jkW#4 zmYmb3b^-YIxbUr7Ush{GQ;)s5a7&{E0ELfwvTHRd71CKZt_no-(Q?8<&nakADHQwJ zl+GfhBT0bWF{oz4zp0F)nPt5KjypRS=7QO(BAl9S>GwC_~voUqq?3{JxuR$9OT5BAo|4dZ9|9(E%g!vG=!=1 z#qQXtPwTWq+QHOy#w7aAm0w_%)>keb9knXFeOoWLm01y4y?jY|;VSN6KPx*M3`v6; zx?bP_)+z|3D}WelpCq~uvS<|I{z#FFotR$ph8RzRB19%9SCRmU1tm#R^Pux>{H{zk zDC=;|;lYot;&FodGW}8;+Ub%WUB^+F%E=!~1N(>PK?9GUI-J>pI%JXl33^8uj?fH4 z&C#zQsX_QKq&{{^YUr$l{?5bH60#qr)eVcjWe2vguwd33k!-tW_wV6q!&w8?TZ|hO zB%gapL7upd5rdV52^t)o`*Bb>Xj7Yc@)9jQuPQnsyxAh3Zpt&Gt`0J zqIur*DgW|3W^1n9K@pQeOqV1#_>xi*9MjqXGlN3fk!asIL+wkG{eKnK0px587TU_O z8WaCyTPh%2Ax$@?$2s(CX>5e4P z@wAwtz;-jS@4sYNzi8m`3PZ^~x3VCJ>jnn3(D~}gPS<&2j2wqz;y49mLa_!N9Te%2 zq5`hZMjGR;kM5WFP*F}Xq{0Mg+<6zk%M?{-XowY}KUwchy{9%=)L#+E^@_3hZU3w8 zdk*fLw_a9Q#7ey=IIKD|*xGp3KJDS%i%%Iv*Pc~#pXT06t|`K^nC-z&4*p(maaLn=V^@trP)pv}q@@fHV;%Y?xw&Rs%N@jE@r--m{}Vmvz4dGVR&k83+uObQnMHCMY4&+$&Rq$Wt7Q8m1hd(&bh5y(F2Ib{)(44(ZtuzwyM1?rRqOE8Xhiy3OHlDe85LWSgi0TFX(%OH4d{U5ngluBO=N4fm z9YA()-M%VD#;16~s7*LT!RdAyhbw1-uW06kPVz~dR6Ze(?<%RPJdeAo%0IUav)a@A z*0_S}m?U}n{E6O8k^&){j)s>ACD4pUKvHk-`fK|#g!|#1ng(@eHu=<+9%e4`ABV%Z zt%}mo|LkfAAzm={9ks+pyUWmIDoh9QQ9q$mowg{`N7RPSKWqI0pJHlcjkpVh8HnLY zlCFSG3aPR23@NFIM}fVzF4C4etSevm_J(vcI?YMpl2pP_S$T%WuqLsK+cRqU z2EnE%5Wsy_US50sm=-MQ^Y#uy3M*|`au$QEou>QEJDD{KrrtXoPGi_;cP}Fol(?5r z(&ODA*kifbr9D~>4dbR|&i`wPA-(0uVu^p^p9p7Qcz=?;l}9G~coMc%yjt;1>eATPIDEsd zS{c?i+nin*R%&`5(%TP3v0yC8Y97<(<%GMi3TeN*Au)-DZ|FuoXM^W4t~i;+2f45} zV-QV4l2xufdoK0&`BSq5-o475+SXh%>Nfv%lJW@>CoH5D<%5B7E zs1RfQd(}-P{CK^b$(y3sD0td>1nWrG3}O9}HPS?up%^J|XTju^P2GVxRytd}lny2J_$*8u6F?xju&TY8*7TksY|+ojxIV;rsP*wg3_Y}ZMaT%mKYoAe^n zgbmaoCvwY$_$s%20aQ{KD>rQ$$qnH9irL>gSv`R1p zkZbcSm3d!*Y4uOx@3<}l5U|{IjRr3c{__@6tG~!y!7-$b3MH}u#O04!*hd^R-lQpX z+Qid*&C4o>jKN<vy>GlM9=8(OAue|BY4cU*|AB&Ms z8Yz9sJ(T)|#u?RA-C30NVKCO3VK@C#V(D~m)f79##5F!j@)dCc3!?6TLemTkePuy* z@jVWBg#w+?B$Wm=dYxs~s+mWug^)hN%i5;qmi(~lO+mZVAbHX_TUZ2{|I zR7=_cx3u^R)b=68GJyLX1fc$@Hei+a0i{sJW~6%!v;Lj`7=P(%7$swfZA9@O*p|e6 zVtXN?Avmw>XSW8S2=Ni}fai&CLPTWwmMTsiin)Yf_yti?Pt_`8&Rdq5qbwd<)rX6N zU)$2(?83efv$2Q`jyI*P3}C+b)nAJpC8lR|p@7V+YqaR*fT` z#(6X`rS*$jvb_u?Hh@kiAd=7P*^j6E;-ZX@9>&V??<&bN>Lh9EcJ2i8)y)p$qI%Wk zxc=6ra7|$5U8*%_691~QK(A?AUKA4}mySaX;688!pAk`d*YcjeSBfKw0qTtnsf|Lb zGHSin$Bg6|P{p`tnu#WIsdpa%e>b%r**r!p&ouG=-nYav6i*QTlj%=-}nOkIgjWPDTV8PPf?<4I#ql%aW0t^wW_XNs8d{wEUm8G2_Q z`qhv?WkUQHbTd-ekWoj@{Eny5fT^xZ+BD0%xu9-Mrv~iEIs~05Z zVu);MP|vzT=w&&m_XVp3jkL8@fwL*3{%s}0O6<3dO zR|I^M$zYXQoSYBx2OX6QJhCe;c?xg}EN!>z!n!{>B_>M6;ya)#jHsFfTOij1k2A z5SO0$s-6OC#Dn>MQWb?c0x=|3j7xRQM+sCh4mJ4|E@d+xr51_6hs^vMqinTy_VBTE zWzC7Rtv8&SkNTx|V4E1tNBf5s1hH!XODU2b00KMq_W=VA4(|39Cl9^fhwd8GLS;Ge zfnW>uz|L80gYN?%{S(t4565xM@#4I~FL6=d`8e14TS*;6iH}9}>Qtyl=MzLA!Qe|m zrLSuIWjQ)T9AVg3s>$%lU&^z=Qq6I>Qy$qMj;<3GHQ6g6{U_?4j z(zC07LIT7msM0^O{FPTYLh~tkTQZWGQM#opLr7!}&oZgAWm1xgyUTf$2m$a=7e$rD z>0XrdOH?<3ddXwBuYz0Vg&nT{v~3}=gxB;k>_7>>!}Czu`Iq&uV1w}})k<4k?vBo? zc5&Z8qMulI%BnPAd)LlW9-g5ZSUwh~<06i`U%z|jwjb4?1)aoq*?0Y5LnD+StLwOg zJ3gmf27p?w6rB}O-5Erf76idN4nvgLXWm5uzT(dGA{h|*id1z&Hn*k)sd{0@kLw$= zIQJFYc-OxuA=`{YHJGyO3~~VSG(6NMF3_r*_}Xx}oL-iI9B5SqD%6G+jjHt5pxuw% z6w*TAmXK~!Xb@511B<{=Cn5ShAwAPKIsF132L9$ah9PQYoAsZ$0w;ru5%HF$^#b^} z#abh%yeCk;-!e*w%O7O1za3xNVgn4SDi^Fm$?!1{P>d&#G7yTRED3)HCg}X(7G2}J z46BJ`GXG_lwED9Z(Vb5?tXExY+<_RYI)Syvm-xECf7fC^0Usr0%pw3@?ifdrlA=TB zr#GhyS|yGNwLlt27B4+V{XL0@nV^Z1|j2Enx~%Pfn0G*AYa0{#d)c;7^(qpl|k@%h$to&KufCWDEumfio_n7bU}Jg&K*; zRIb?*^Xx-5@{+BKq@|&r~zsvt_`ioYnPBIapjF`3BzeL zr1vkyo=&KvPVY29?j_N`ld+VskyHCe5=NUOmNCPnvwtAIPjsHRb5IsjV|twO!@@sM zZju%$DNh}ne1ze2^(8(vht;Ha&`khL6zAv#o+lye#g$kqKe%nN%NRqvPrzNUH^5_B z0XjTmt15Oh*dsv(7Es2vqy!>{*qnv(V;GTuM*dq$TAtKD)~INY4~qOy^MH!C2~-U|3T$vGy}&s~&nFg!w{ z-mLQx^ZdZ9Fkib$xdh8K5(;AN!}6NE^$>m5dLL^3U00A*7q}`~*sxVU{DSC*1aG7Y zj93AQmwa{8R-vi9r1h3xthw{;>2J!Lm<-tWd0BtI+e5JJ?SrCYCDW<0MMHp{|<|~(hfc-odZuX)CRueFB8En6Kk(o#NKl63>xS;DMey$}cES$s| zTKcBwmV{es&DJk$+3002zRHK-;9^Zugr=S!0S}u}f=Y#5z1xdYSXjD&5SCQ9q@put zR+G<)AV~1iRfz~diOEU?t(MfvgLbt-1r3`lUkW)%LoxEzbeUgJ(>s2EDEfY7(1!>X$rQe_ zG594B+XysDJV*4VJOYimT=U9I0lR<|^Sa-sesl0%4lNK&75nm?14zT~wV*IUS8hH} zOgsPFrh#jkW6&#{dXslLs*9>~F|jr;YZx`wtNkl{zcO*=QO_#K*B;60;_mZb^~$zB z8fsKqIObChXFU+@P7t+G_sr#%gCUM?)+3zjg2U{JT&nWNCktK5H z&e~A`DA0nh*Y)qyUw(x@5SU7W{%^>iHL=t=VjR5u^MpNv!`b6}t)jc1Ln943HRFmv ziMV+FM{YC1_eU-neeqPbrZK=&N zPo9&cC{ev{gVazAM%ZuF!WS5;^Y1czVx0Bob#lJYDz69)2G4KViMwcstOvf1Wv`^i zR0m~=nY(u6vBdf7q+vcweDzuN?h~Nt8m;oC(WV#Xk+fe;y2Hg=R8PWY&xFA@*`WkI zlHhTj)piuQ+YFvK86_6|$92r`c4n(}>g>_4s!&&#@cNDsHN{a)jmX{~5DP7#p{R){ z_!4s%{S`v zR&HgAA|}WjfiJ=Qv?j(O^tFCZ!32$r6^(E4EcKTQ;;KeHxP6)0juN?yu$eRP|NxiJ3o z3ojL%!^5md`eie(LZNG_W>GJ(~ZjtHH)M#amChoapG!uKKJn> zz|_9$yHa}k>byvYk<0hBI4Sp1!6ioElex|uQd5zJD-y7r7$7)n14hdtMHVpE!suvE z3KbEK^bWL*YZ8++S#zLiq_U9PaAN3Kq;gHucJ4)rU*^iagqc~f1@BY7Fb5L=%}8dU zK?)B+l^=Fj#EUR#x`M!OiG}@|AhTueW=RhN9?lppOlFmJVUA>Ilhh&F>2k5Bx1`pF zpolL`3ZFzRKf~QGxCAT27p;V7^41atbr@Nrc}v&^V09M?A&+@XXA5?f^!zU}D_WYV zD~rOcp6`)oDXOX3IEnNKytSdvLPwCW@=^r5?H(1l6qoNBM!bjb#)9QnwkzyvI+Fs? zl!&E;zuaC2@;UrVrD~#0F2DI#+p?vSJ1j<1pEXX<+$DN;;94yZBSV9bR8^2>MHCW2 z|HT}nQ3?$yYE%#C!Z*HW59KpB`1)6wJ9cti11}l6h#$H+Pv}YO6A+jxT*bZfcu3&r6=pJu)uMNmxMc{ zJRr=<3*y}1=oWop$gcC#j&)9oR;Am=w@#RU`v$_}w^D(JX_TjdClXoxiUjAcNZuEz3jygY* z1;)AXvLTPlYW1VgWb>dVQl)s1Fo-YcGVQ%BBeFWJb)71X|E z1UQYE{Ml6TQHC=&<*FoE)B1_O$gLWI7~!PB3DhRW4gY}SKas~`c-JBr9El~+6*ypo zbcJsj(aIn=kzHgu{6F2YDZx1EL}&fY{x?X_fmq4^-PYjWZgWVOA_#hU@TF~n4*qD{ z0&WBs5ZRbE^JijuVnokD#xBBl?K}+x5jU|Ci#{GDh$7T*D3dcW3QeW@oc-CIC%7Ry z!jfGJFL{GP-zdT>KmB`hQOgjjOsf}m7xCxV|Qde7^cro;!Nf9uH zB3-3B(l2c5S)8uYrPUi2jts43NkZu)8Bg@6e}k(5%ia)r)Yi#3=_K=Kco_&Wj*D^S z%E_`n~3#H=N17OBpnVA{?NYw#mYYET?r~^f!$w0@t%NdxTE{RpaWDd?3^4 zsO6&P^uc-ErPK4pN?4cA5(^Id#%2d@QeWQmRU_UsVymQ&^!(>~s}dq4N=i7HLDtlo z4qZ}gF8R^NfXZ!1&^CxkN*}Pe*@!aJ%=gF2*A^l93iHjp3XH5wHAatS^R-ZRTylA`{8nGzLt+CB5vZA{(l59 zp}S~q8GfxYk2!{b;kdS5#P@9v?>U(*R!qK3(ltcW*Skf2Q;gW;Yp)pcQ3JR}BW-8y zgKm1Zjx=H(L&jlU@^eg8xBWv=cc(^E%KzF@EM<-&FCzKeq{cd zw>s*kLqF}(wxzMDB8Y=EMQiF5w|SJ8l}RJ%G-ehU>iOg1>`YqPUdd~1w)|E#I@Y`f zqyCDtbgxf{Eel{Pm-zt4zcWPI+Qp6b+k$ip6Q`V(+A8et42It0V#gdv5|FIwh!(_n zOurWi3PBr17Fcd{4Q~*4+LEXgCVHI1C-jTd2rC=?2`}(~wQ*}zE*ScW4NJj-0iIQF z_27I=3?KxS#urQr9i&tTk=&AvmJd4Py!nsJABEL66TW0R3)YJ&RwEK~D$MF7rPeu$ zjAlNcz}wAU-B9b8Pn3LFW#2h>JL4O5TJ=p&Oo?+8@gJeduBBBNCGscDgJk9F+VgcW zS08}yp}-7m9$Ae>Rg+l~5e1kubZ?0Jb4y<{2}Z6iI#zGYz^u(iP_fCDh6i(?v>Rno7Q zh{II|!+O%jXqK!CEUtnw+`rrL7JR5`4nm(0l1uQ>rPVk4zAPWg<~L&Td*1rS&P!hz zT%syD-i5^&HtL8*hj&!{>jdwB*)R1*qfc)u5Y-cnA^jtXQX=5Ai&Aw5iJrL8%bITtI68<$$K!>?lfd9elM4HCVrftY4hj&Kri9o44? z;fAq6NgnFs1@}}Br}}RHr!ZV%n>+b(%%W$NNZ|5x*cBxD$C41hsM;6nxj^zB)D9d= zLUl2bJp8i4j&;s2Y@#mt%ig;blnEl_i?}|&W;_DaP*k1MKI8*^ z-UqJyCgdirG$!lif#DKpM!4tvC4izD4Hw1tRW>dWfR=J!*AZu?^O$~DuC@jhD(7+r zrFO=UCfg!rwk}+GU?#{NYjmVnVjIAS<-I+BF0wSo`#|N%qyB5I2m(n&!u{ToPiTwI z%S2xVJ5XB}(7m~})4W|Ijzcy@E{oXw3?OXhM!=jIc$LAOpTt*3xY9$!Z9fyIgLCc9 zUQKw9sgow|KMq_1$VDIcumV?pmi%d}6-l(de${Q-%Gqp~m4_#-Pq%-H6z!W7e9gL(g=<; zS5Dniz8(RRtLg^MH>X84e1OlZhJQCPihcH(E;MW$7@(s3NNBz^wFLu#O^W8daOFYMH_M=}Ly*@+Cspy3Ji5Hnwh7=iurNcMUk*CT{K8`^-M>aBVVhOAs!K9o_Jfy(`D<8F>*hvs+lfHMD8K>HV;EJSksy zdaEv*4sy+~qQT(0cwVX-qFIFU)JY_?X5HhSm7kH~Ou}w+OxwA8l`wQoMRrli>Kqx_ z1+MB==P8`hgZ@^+TD`tmhd*Sq4$t2#Tz!NKU0Ej`G^nie}c$ zkHBg4wL@t6cJi+QcP_txVTN$0n4;CRds3eIHazhO`E8Fp#JTmF>92!hsvNBcOS(~gb_rrkmRB|+T?dI_gyz0)GS6vd4lh`%p#CL{WiBTTMWlwb_m~8K! zno`GJcu()X{hs~^X)^PB%CCBrOo^NH4>zu38pg%(@@fBaMfLIdF=ISU2>KOmVLzWo zC$7|Nw1>Desw%v5(_Tm(N4+u&ihDq~A_|KnU0JgWy?FO|HN@fVi0nT|gx7pFM8^bD zN3&RSCkVv#1@=2~{JT3(68L^^S+zw)IaM`QdYthtNR<@G1|v8(CR*dL;$%P0k>z`X z1OyVwi1$tFwR;1VG8Cyfu3R+0+a7;p=UL!`3h^|#*54X(zGEt_e2OvqSoty2yF=I| zru~oxA%x{BV&=yP)BU82V!Ag9T_Q=g5K@wq+L`2Emkejo1pC{KP&p zM~KF-)>|rDAX0Y=7uB!m^-W5SOHgPW9-xsnJAN0xzD7z<6Yxj6XHh6Xet(sw?` z9D&1qEj>#JCfSlQUBo&Nh`wah=4*eK9GBPq-R2g%whW32wXZBy<5}9wW#o{>$sP#O@O}`kT zW16kshdFwEF`PNlu&1$voATp@F68kYpe8|T7wwK{@}4Z7!K;?&=)&?PW`9|`zw$Xp z^dJpr%fbr1{QSmXBI(6f76%8tP+pD=ed~r8wwnF>Gmv<;9V7tSBTP_u+*LiEp@cS^Mt8A7Z*# zpvYk2>Eg=5r6i0`d>r@<49QS65tdM27UWS{IhW1yVLj=9{5ZO1tp@xpS_7A#m=jdY zk{Yv37S=M!uX5^MVw1 zM81Yr!vU*9u)BBfiZ$hij6sYFy)R%1;d88oE`sE_cFa_)Ng)QQ3x@EcifKIQ?HgA* zIy~4{Ey{!L(H!K|Ji@;!d^;A7c^@o-!rWEAuTA`}0v0WES2s&>hX{s0(xgN=Jt3VH zNkRdVYdOl4FvSp&JxPAzB=2T{GV$ZM$YFoyGs}Y}R!mZ#0d>$;=%Ph>Np~~uUnB2@ zAD7LRBrz|-w5>^8=`~Avh!g3Vr05mC+Hlw6YY~!Cuqw=3!q052;TMSxi?B=8@Re7e zpx@CEjf%i%`gyJ(@?OMIn**ZVmpm@LehS!-DdbI0gtt z=VKCiI=U*UlR5ty)Z3fZ?&xMdA?-+=vr$7kPga29kp?AV`z?%C6N-;i1tOwJWCXbFF# zKY}3ZNtcPnFNq)r_>bjPilq4(OY!`Zc-H4YB()cLe^Ok9FY(o0_`3~ucpmU*?blgM zN@5=Oc8$)fiVr*j1-;{Df3H7nfgPL$9i9clz}#Y21gmaAk6&)@2#pCYrY?weaOxH)IaYc-!A;l~XJ&y$mrM^QewiJIUAHdvAaa9R7gI~kdJ)+FwG2Ox4 ziNZ6oBpvnS&@9PYHg0WleE1^^HP;r^vS|B1qgQL9j{T_}3hk|9v#zDxL`eoO}5uLCz4ABXAWBrK80$3a(r zXXhC~2Tc$oDmkkU+@af_bkAV_l&Q;)%jl#DrsLq)MPcaL12k}AUhotVqv4Ap41-ZT zj@{DGr0oj&qzNW*6z>Izi_wHU{2@rbnV#Ia<&jB^2Tz|%j|08MNNW`AG7IBmaz9v| zmeuqf{))!k#e#~&jiXGC}y z*sP=GN?72J9ao8IE$9CS;!-w>d z%b*S1yuWG?hygpA#s|B>o8d5 zcY}Fw-%L#Ej30JmPmY{Bj-oqZd8f$Te!O&NXMd0898LG!UT{3RV@1Hd{JSoA?wCZ3?7ll{@AXUVJ>Ylv==2W1Q@`@={o(#J zU5@g@WIs4KxwrO0JwqfA96p!q$LYQCBDj~V!c!~7=)-X3_LJHzW50WPQu_E=aNPa+ zhG2CD`|)h8Cyq}2K#vJ&IwYG;J0c{+e3aZl0?T1C4@Uc=JMrDnZ{scEau{_8Jg@@M2BguUZ}eRu4hJDxlj+==`VP!2-_?z;9cpj})=$2N8SKp+E> z)eoZRZshjjCOL5Tv&IWx`C zy)YO@ypE&0Wnnlb0L*fvV=MIB~+t2-3d_s|T+$cOGhI!<|=&&h!wh&zc z8guN3`YKXv4};_JnI{m|9Y%K@z1$s^nF#@}pL)V%e{|nP`>8(#-2~UMd|7l~2jr2v zAMUTM;E(wAS;M!%{@Pg>_J+k#dE^dhHRk8+6pxtPiSD?)Ng0}V@eDe;=kB=UvFB;e z^j2X)4CoGVsvx>!6=F{f$jW1yW_Fa8VdKtw|8woV;3!xGhm$foyAG4(9_>+Zcrv{k z)@OcBZ?4nRgr+=~(BWYi9L6*E+@1@f{qW9YHahbN8gt_J!3qw&d*>aBCO#QuccVi` z%zrPwL!WYoxOjTzOKDtwH>Q~$MRXMhlQSfpHSKfz!I2Vmr9lE{f zPQ1ocyKh+qZq9snKU&h|a4+)Jk-FttmBGoqF$qM6@m_ow`Lq9w$B*Lr*c}reS-H{v zcyF|d&wR_uWkWh~0oVN!vJGo^+xf5BSlYr*yz* zL~}pcqis?^O-gp)E6Ks|An@l#<3M^~e`dqv7y>t>^-ShRflU3j+&%Y+=>!Y9kr%|p zz4^pY%lZz<6Nk}}p&)((br`nmG)Gq$3E=zj9jx!kVLZ{hbq#boiI8Y-3@21!~UrLdOkb8w^-d>6!(0%z~#a3Z%T%>cq*7$j`v(L3!~<4 zv#y~*g5 zaQnv_K0cEdFKDL$x6iz`a6?JDn+=Ws;cIF`mQ+ z&Rfk4JSwZv%rvmmVAWhsfe!*}D|l7G(*_Mf@V@^_1noGS&S}w!IFG~oC-;L{d>pN< zs_6rNcjs?m{A4&iZk9oCe|#sIO{U?hTHf2E*GqVd z8UF-|Jl5)Q;fJId9^4&9joY{SDxcf56FQkDha`&57q(QYR6-~XWzEb{bzKqAc{3CH~BaseA+77q$tsNR zTP-}_@#%5@vhh6{wHMCmdF!M}xNIIA_j#LPP%5Yxr`S}lVGRX?iVDI0cyjm7Xm)?} z+=7&v@}8MBr35GZOc+~4<08n+dEK!nTEhdNiR2vdw$M6t5 zVBeBCQtj&$>%TbaL};d*Y#dCRV zuNlYbaCXnFPqQM~i9R`_V*xop3CDYr^#N7fR0Y#O;>CF7-gR6Of*yTuY2^Fon+Qx` zBoRIm(H!m2^w^!bM3lnnVp5!>^NBEh-6S2l;o zhe}t(@M57Vy`gE;ojZGzeE+1F=HcYX1WQ#iXGB@|3ljgA^L17|tMNIVn5#s2^?u00r6ZlBcGgZ-nucruzCCVTQ(TmkP7HZ&eyw$)8im(-IMK_RhC z2=?Hdu4`{jgwZdLy}_LSY<=`LOqKZ}*Ip`&g!@K(i?Ep^bfnjx+J3RbQrF zV%%Vtb{^utxF8sRJpIvS40gYlat6ENQ2=1-LYOK0vxXsa95lT_X|n2753pCKY1sSA zw>Rg%*t5{plUoBW7K`4i5WsH&BK-+_ueb!5z7(Qy2l6=kSiZY?^XZSdE8(>6&q&?_ z%Rl|KFR5a^zkB{7{7uY7KA{Kj5itz7uYc>z%~hc21ABo-uZ=!jAANXN|JL~*_10G> zaA$9C9dP&f)HfX8U!Ss2PuQ(y5ZC5lQAo&jLfWAF5g=WJhXRC5bqC;sYFrr)<9z)i zMwNb}K78CMy}IR-s4K+oUjVO z0Fe+y)TVZgN&UV>k)$rP_&-iz*)do%6ObQv*bVcrJLkf@uzS-UcNdTAUA@;aIOisy zB3E*60IV7*e9QZuUg)!YAfqH?E@%T>o%N}+s3mf4mMfnrED=Mo5`fYh4h6Ie8bR?D zmn9Y&iNz*R zy(7V(Wq-;m6!AO@=$LZpPFydpp!8QBVp~d%x{|J>?xhl3RwQh zdqsl126Pjr@l1KhRjtPVxlIdRy0Rz}S2T(1x=kUf19^zP%=Ck3hV(PMcOb|l>@1yE z7o11yYu;T%1k3Mi8g)vU4H7}?T`e4ORbWBftJnv_H$w|LUEEbsdac14g7Nf$h(^$+ zc$c{c1)eRHI;JZhCd%uGXwUA*RGjIodiypLXyvN43z`IOy2d;&BtTL($<#@>iljm< zswMi-E@`2)M7ov<-vOpb_~5eX6{}Rck&9gImE}tdE&{$@fex>(CvK`0J-F7;f|Gvg zBp*9k*O*%(qk~*M-nF)yi+b9uAC@``gzoK+9!5_D$W#*JM;3~JmC$%!_Lw ziecm=Jc3_V8V0xA6_?HxfVlCL3X4qsgZFJ{VP2p|MQ*%Et0poy$-_b`&>(q9Iy(Tt zk;)QSFSLU%7LhE~6WJ5cz$fr$NYt4*<>~z01Y8wep~Rg<8$Xv=1j2{8NaUhTv~jcs z*Dl%<*DH3pXmix+u$orTI%Y!@pI^msl$0(RdD^_Xn5j@^d3BifEV94waQf@GN8Pjj zXb{CLszrta1<=Fx_WPq*Za}<_QjGvk%Kj7>H1jb%e%SHx@#$d_>cX$Xa_JSW&&R6v zAo4UQ&;~>-;3R2$#7 zyC>}LoeI+u@WGi?J=iI*+-M2t88@aqbv-fgJ zbrQ^fPJw03yP5PN*iJpAIx`!9JA&&Lu!@s2A2SQj?D;Gy&o0j__pGJ^E;{Py0ds$g zd1CMZoc=Vfdb$_^62BPwo1|k}en?-Vo8a(G9&w(Tn9WYV7^DTZ30oZOY(zA@Dy^l)>xx)OdUo!Pl-gnnh~W z79T_w(@mLa-V5xKKUF8gKC)KndkN^rAe2@wNS=PXwiI%A2pZdd>PFzHbzG|VtGZJ` z2dt)v!1aRgSdbT_dM>DqOKweLRRaMqBG27UIEwT*uv!;E=Itq1{BEKZ?GLP^t@e}Q zs12t*(l)b-M6sEicTMtjx|mRiQjZF_N>--?3IN->sHd(+j%s<4B%mI^lA0b-fc9FJ zAA+}Q;2T#wS^FR?o|3nYTe_v=xyU%)*~LEW<DT9vs z#2|z2oHDQ&q$BUe-Ja45YfFyCo;`VGvA8e8nY0%gV zr108$ZLxzkjn}5ffG)F#0cpJcok5#V|oLuK(U)QEeJm6iV)q>4u#V$}PbU5== zV4Toyp6gI&La%*rPvK`9^A*mjk^P=lP2JU7mNULzl`nk5616h)KK;W^x%62RObwXN z$abopbX!x@DMoK|5@BbOlMqE24`lKuY7FKBYh$#0+h<)E}Y z*Dn%62cc3%Ibu;3SRX7xpbu-9v=v4KUyZX(OHYUnaNXy?ApN~5g}M&Y+FDaB zQM17z$7vDED^#L8vn-#wRD6epscUEcjoau+NcsqZRVYPyK5*@sH>!MiUP!cG_+l$o z>bD#rZ7H12 zKUeAs*E%Y_V^$%tK;q)l6jNPj_l)FHkdivKt3rGaWB6U@GkD7^4<(y;zQGUYviP~4 zgzpTmwbP=O`!hF)cIHZk&FZ(?ERh1Ih_4=y1jlv99S!*TI!u-~vh1;P5$-X>@ac6b z{Y;#0*G94%`p1*v`>|%hCsJj4_=jr8)JC((vfNlk$PwSFc`T15j=)5l;mDf#QxsU; zbpr7s(|5k9##94>VvEZ!8Lo8M2Kc1=M-jWgh@*%*osxtkrwm?tF+9`eG7$P)Uh;N=$&dUcHHP2~*gu>IL)WYK*YQKKerxdJV`u zez6N2c`lQg1j>3s{zJ)&RB+Iz$vWkn#CxO=-4}*HD?k={U3`~JCUVyn{CsM-U)5(v zDT2q&6<9u8;?Ba3K0d2tM3ipyn&{<7I4704)|CGMRBnROo!7`vz!Z~YcNbUA#w!-; zmMp+){yt#-eoMM|B-GBL$+~-RWi0kk%EBH_VU^0iHz<|yJG6j z&oA@q(%{OK`Ni~&{4$Q0o7SKtmfuK`K8wQZhCahKu6mk6zv=nLrPJNu_@7M)goa5! zq?+BV&XatJHADs~u?pY{w(2v;$Ogao5D z94J@3Qgk>;ntvx>Oxv4@cLr?8r;Y8IO-KBOX{)bYN@o|3Z^80Vosfuc$bA9(%ftJk z`ciinrbukaNJL9rw zD}Ucoecb-2WlPqG4IY$N5;@%xLBNT}zeEPCgc@)_Eb}{-gwyTKQY}C44(^9{tB}qd z8dFbM=KYzZgmOULPPPmzFz9}{@4P=AauS<40ynFnbn8GK19x7*qF2il}@i{s3O z8jDkH=H$Gfqf6N-W%nUEtFz98 zL@_Mui8^BpT(AbD9EBF>0ytk@>OJgJu*nlKBQ1}A{EqJ^>{YFo5;nf72XP`b25=A6 zA~PN9b~LbmERB(uMs9f27*43-`8Jl|;fVvTO*}5=&fX5$GU3axEBl=JAPdOB&#c8d zaK_cmQJq(n=|^OZ5p74R$j4q=9<#?zBGZY)~FjqoAJ_@ozK}nYxHRG z#2$$2Xhe|$ZMM2pT>b)gty20DX1>J0SfX>C;UfS?ciiG0M&x83FMWyz)Rw+T)X|gW z1oYRXV6HBzt_dq5^8e}T)ijMariA7 zS<(phQqoKIx2$FDNXL{*}(SC_%Hh~+aEI@t=lfVE% zFojH+pN5n73wGy<*fUPB+hwacxpon7mmmVK1*psR@xUDjfdbcW78M>E_8XQHBY=0Y z8KJ&8r#KoMZO!yHSa%T%vB+q?h?Yt|v!6ya%O+WTubz`32#3#>`3ogFcf6OC5KG6X z|5ihhtapnvBfwh`d=h2Gd>=U*GlhY~Y_7~)Lm$uPoG8r^?pvaG2=OuhXHHnAl_}Y2 zI*O$9^s@Uf{4|wQIZx0+cOWmkW}KNx zOiOjh4t=rp4Wr|dhi^fmM2}zFDG>7a$TM9xWcr6Zk$SxKX0@ma#-O1uesZsBFBXLaSEUnSEfJ z6!_3QiHe67Mbi}#7{DiH99%W}-LU!D= z*l6Hrv7`4&-#?zxbD{C>Y~O-~38Lm?etOLXMum!NiQJ=L7+J?8HJzipA}-k4)>1!U z_ST20_5!#f5gB4Dw)%P%jsn>k=9yD(Z+j8fZfpfA!%hE zrt3RBC8&Mo&)eIoIAXLAs^Cr*UUvKQ@=%sUW6r>4i=v9G0y4hh^y*p3LpO4K*O7Fb z7F3)bU){_U0x~1N^Rl7)3Ka$zfMm~hiaPmCJbhRk!1Z-+IU^H;J)7?P(sNv8n6Lbe zohmiW7f*L67^ep?HLvb%3HeF01a_i4t;46Mfgq)aGt&SQedXWTs?xEM0Kkt9K3$;* z^E?K1i7BVk*P{Yot?6gwT08L0tNt49p}BeZJ~R4PsbY=+!NMP}$xg*kG(%zeLuXXa z9>6dK9i{so*kr0B$axgVXgAVDRe6CJjT(dBIdj=PHV};#U^h0t9&K+}Wo^xBHOpBm zX3J7n?4;(j;xLPU)0|E6>?p&u7IPKIGo|@MdlA6AVi7jm$iawZyJ#f+`A+9*;9)9v zRv^2TW=+fAeoYbtbi0Cr`Dvl^GpC1fA>dQ;U=k4&p$lRtrzy2Vx-4Um;rTPvYcxR7r43y zRhB_7KWmcSN#5Keq1WvL*M|gMK@mWR27Q(1g(0__dSd%%Ku)8z#q_(!OJuhve9d?G ztg2)FGOT%2RM)h^AJc)M4z6%KzW4BZhe*S{WshI#ubJF_<@m=_@*5oF;D5rj#;#By zPcI_faK-)B9QE0i7li~cGXa@-XexAVuq@y%$>%WAlkNg)yh|x z{mwJV3A;AAZf<3AkALmY3{Q^CN;9Q&nRt93+X+>+@YeY!Z=2F;(H81`>i1V1LI(JU zUs_p@D&v6&XZZAKmE{Zu1jWU3wsvk0%rsRc1$7nC5Uc1XD&N!9hznqNy$OE)RaRaX zt}CYn#h?KnrzC}H_0JFQ0StLAuiNWc3> z?zGZk3ek6dTI9wJj#9lQ_`I%IU|QMdFqh) zQPfuf{dMj+z>ZwcgwDj;SYLN#_N?ZY#Gh}S*noQ@^f>&7q_sKGQim9+keX_gi-aN! z=)6?B5}@}@p)sVdZQ^aRx*?9!`)0N1L5`E&PYOG_U&&Oip9o@{$X5y|*|u7$zSa9A z%3N~JIj9*HbjUfq;B(FB@I0I3)l&5Sog({68JGVK16w_V+u-B?kVG=|(uN)nC7E$J zo0YK;HMRXM@i(&<>XY2j3gwzxdvUvwrdNu)yYnmt?GRWn=+AMv?(}6vvd<^(O(t&? ztHPnU)W>>ZF2e7zXOE0tF(-V@5t&eZ!dG>)Uo7aT9?;}oAeSq?4E<$AEyrElI|F8} zZm(2SeY3V8C6`h<%giTU1#i}-+3$EJwdCDqNoU{iMpM4>CE)kPInWIsr$aajCW_1} z-@=w2)tL%HF1Bh?si!l5LpYX6Bsnz<~nc@<4%ekp$V=z#@ z>k>~}ZOzH*~puQgZ@I_q8Q&H)`ysXc2YW-qg>d9#?C9&#$n^qT| zH5)`xWISES+VI}9--@m{G_j|he|@njgWeQPT|NC_>L?xdWSx{HyOZ}RWArFqP7nY+ zBd^U-X5`aRgM3ZXd;HrCl65*-tLL z+Mg|{`pi&*>X$anqZjjMo_d()2c%<13||>GgpTwfW6fgF)DB(|O$HRGmj-UbBs*{B zFwh^VU52P0elxEkhv%o)$sOY(zDAlgg;#a2WA6Ker0SGgI>UZVM3 z5T^WR;CB4T9D|)th{&QWMjfpM0NFvM5mXk8A-!>xIY#jE+1UmZxc8P$F7TO(?k5{4 zO*`~Ul*Ng_!NFz_N{%gMNIM>`36ongYsuVt#>7@z_4Ot~oBQmR{Qclj*6D$D;y2O& z;ZIkZ%ZeMn_#@qRYWtmNj~n;_!52HKZpKweb)u|+bdeD;O{lk&&|?WcrG^{ew4un) zqQcB{b)ce>vO4Rl--V3+wQ<<4sCg+#5&t$jWn zz6yY22}pwC81b z!1L@Ai;8t67VNRwP~`e zVG=GT7*F-zl+N5llCT|kY@c0`u6^xQI^%@(O3+f{gK8F%vc5PVkjT5dgq6Xs_9HN+ zar>jpy$>C|Xk0`%lX$oZr$xwvJ0*u6&-X~iz~Py##H~W_v9SgBF9TH?kP6u}0|pT9 z$=ATGqf_7%>Z5i>yAbH6ah+&p|D_3hxY8MRy-;@Y*Biq_bStf?x*p23vU&Y#lyh;{ z8ot~uHF@@Or8D+AQ$@j@(;E-G%0aM*-cQRdL1Dp}zKRdZnj5z#J-dUBlxCRH41R9n za{1c|dHJlsk&LUIbBWrOfZ6S3-UCaMmtmUM%}!&iF+nz+YpNQd*%5R>k&Z{cC&jVQBSnQ95x{1D3R0PHW>M=5u-Bf(6q@kjc{w*|9V0 z;4j-Ya|NNZKjIo_em?*72y4@=~dID?TTIUO~Gcm1{tYb7H|I$>QuW}T8Si}*4{SqD$Td=SMYoniT zS|jc>H!_XW?+_<}QOtAQhU~+{8Ew+Ef=T*kZn&l8-G#8_&n>b6dk(b>8=tR;?-3pj zjU#d{Rt|S8yrOC!lPS7*DioSoeoklDDy%v7ja3Dj?XImCbnllNG;XD*t}f!%7liaI zvt4(0vF7lYz{oX*U)d%i9X%}m%XELsbw}LQ3V%pQ{NU%h?_85lImGj;>O%KvazbVu zp0K$DLPq_SrBxK_=(DF`JCtTpMhrej)Jy)0(V8^F+L(POBc(xs!2+86kXS=m*pK^= zAPDBOy9RX){dp_ch+sIsCd2mETU8lZsaUdRpnY^r zOzM}7=DXnS$IGhO8oWNXoPWWg$2z`;oEcjrr)fiHB9A}!Ri zoKsTsy@JI1w9H8-gKgpOoYOuQ*b0YNzF<`l?6F;d7PEYA-P!H0>UUJ$@7fRo7Wqms zOjoA0HT-RvwTM_M=H=FzfSE=|6U+TgWH)c&lWq2f?`!0b9>J^3im}der)+pKlNK7- zdV#8P2X{er5deWT5OK`s-X(9z^>E`7 z6;!Gaw8r`OO9Y@s_R{D?pyR;5SR)}Cfs?i^bW`gCf(h@#G>YN@fe@_>7FubE((yTh zO0tIU~0wx`y{M)?eXn9I+??Dgl@x&fzZpSn>{4+1P4%QtDqoDnc1hrza=v>mq zMDB;wEZf^15ocp7t}1%Zq&8h7zez0P8CWkF6y^7D=X%`)2nUs41AbtjgbsvD_karg zagRsd+qXEn?m6q<0=~DOTs33A7iLs+v=;-ZpXgusjdzk^yk*vc6O+$XLIkLFdPV9O zjVdh?>3p+^;#{jq(QIaG=ZXdr_H56{mtK<#ExqTP)+efLM{k~+ORTk{cT=V8j^V`T zMGI6WECy)cpH2;mgN|xWq}p1qH!Y|r1|_F>h>`ns?Td20_vnn8(lpn~ujvb18mU`51} zGor4IZq?|*@`RTX+FZC-sFY`l{=Gl&JKMys;Czq;UZW+99zRD2t9@ zF7xH>r-uxfFJ210&RA2`CfTGxll^25!Y1<`SkN++1s3S!7Fq!sX-D#pcpU+MVw>ia zBK@%q?Bqiwj)v}F)hSt{DF15Rc&6IpZt+MDD=8VHrHtmaN)v>(RugHkgtk!cDv-f+ znOs^&Z+)sodO4TKa}OugW?5L=wH?+LEBk`NsG3#M3@7sSI|G;?B4@Wz_4?w{M*XrY zWAKeBXvY1RW%^xYW7IwXo*T1UuC`H*C?&>kGjTY5zS2w$OgQ$4f&KNF$ zJ3=}TE?7G(4WtxWXwB5XHWIUQ+RF>eNQ&K^L&i+P8kMIhK%HcPNTipxo|EAcA%cBE zz#1cW^~ro1Ll%##KB#ZHHXmR&?~ zM!%wmv$*cY0ZK6?c^?y6`uT=U4W`n+&++J*_VwC__omt5R~nsc$a?4Bz1nYeZGJ_n z2C5kxdxlB1OU-0k77~#S7c^7_azJ7JH4H(1qj^5AdLRk{_nJKi86?vxsxX;es^Wz8 zlpY#R^Q5t~dA?HSr25%~Mgp?ZdG`0KTBT;FFHu;{;geSyk*~Dq~go15EaaiPYc#9xW2UZi)F~&ugQmRXF~+6 zWAxCi3=-CrmA^9UHHFn926gd`?+oLnJzl0eb0paLh;>h3yhYPjv1u+A%1(egMj%k| zJ~NVWl}h-`?>a{ZNThvaTLmacngwl%fzA4ug-oKMoSEWML^k1gvKa55f7@JT7UhLd zC9=n$61*j&_PHfF`}DhHqgjQML2O%u(|gDDECNsLg*SdCp;%|SfFMZb&#{6qPS7XREXHW54q^AKRDz}VD$x?%_BF3 z6#6^6YHIu$@$(p3Po?UjR}9O)-6fQ$yw~m)AVJDRc9AT=ns{; z0Q11TH;i>XOQ6#~DfzM?KEy!T*2P8MZq6u9NqC%*caT2Tmv_Bm_Czr zHzbfJgd~oVQA^$K3=bh-GeSQ()MFqSFF6wT{_b)@yRXxQ1A-Tw&;~w({H|`0iUbi2 zmS3CXs8w|!sV+-16esT`+x`>>xmtUIolp{%jNyld3q6(>*T3yT<9J=ZcyY&Rwcc=I zU>lfwGp60iwcR3MwH$FJ3xLXlU`A#jSu6*kgo~pSY%91D%4N6@nYDU71x_-%kCMlERU$!#h{?HjenDNQ0)pd>;0&QYs;lnIX)upT zL78}4IxgjLxIZIBU1`r&5bxr--dg%1*(wq4Vx7>duChI|;`dG`qnR47!{sdv%HX-S zu6xiAm^gU>Toaq&m175!NJY(kr3$Z?;mcB|0-*xcCuOb(OSm<#g9EqVB<(uctxqRE zN@Mpp%5Kgh@qP%?{9vGcgRY_py%ik8XwKXs-U{5c0;nJ3Z087epDcgm*e8DSkL_zU zLrQUs#a59F-W#T~aMsT582I3SW&|1TXzX2C$PY9fmp=P3<2W=~M8s9%m*JFRf&zA6 zl=*@ZSVF%C7`7qFrx>&FOwWXjqJ2w@XMaVt$u$^h0Pyhe004meqyMWR0+<2n63Qyl z3i2$DE{yXCl+Q4YJp zaJY%#483wtxxGS^;c(zA#gOH=zMhulR8hViM!JQ>m{AeCLga`I^SoA3cJNS<#ZbYJ z#R$mr$4k!h4}j*^lxPAmt_*UpaV-{S2<;f!b{bI+Q>W=B{8WYJq7bI7X%w#@lV)uj z4owXEJjzYCIJ2Qpk(bl!hyG70*nw~3xgRtX{F4d@NGzy-x${ZhlW4`50KnHr4?y}L zi9yng7kZin9OH%)iGI=KnAwYC-_8{cUV-Z*F9)Yh~`> z_~8T=Q@8(phiQ<|Gy*l|Hbt0wEiQG{$(XHjQsx)Rf@7Ou>ZIg^v9O_ M;fCaJ@{iGf0o; Date: Thu, 5 Jun 2025 16:11:42 -0600 Subject: [PATCH 14/80] WIP monolith getting started restructure --- .../enterprise/get-started/multi-server.md | 292 +++++++++++++++ .../shared/influxdb3-get-started/_index.md | 33 +- .../processing-engine.md | 62 ++-- content/shared/influxdb3-get-started/query.md | 338 ++++-------------- content/shared/influxdb3-get-started/setup.md | 3 - content/shared/influxdb3-get-started/write.md | 14 +- 6 files changed, 392 insertions(+), 350 deletions(-) create mode 100644 content/influxdb3/enterprise/get-started/multi-server.md diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md new file mode 100644 index 000000000..42ca6ef0b --- /dev/null +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -0,0 +1,292 @@ +--- +title: Use a multi-server setup +seotitle: Use a multi-server InfluxDB 3 Enterprise setup +menu: + influxdb3_enterprise: + - name: Multi-server + - parent: Get started +weight: 4 +influxdb3/enterprise/tags: [cluster, multi-node, multi-server] +--- + +### Multi-server setup + +{{% product-name %}} is built to support multi-node setups for high availability, read replicas, and flexible implementations depending on use case. + +### High availability + +Enterprise is architecturally flexible, giving you options on how to configure multiple servers that work together for high availability (HA) and high performance. +Built on top of the diskless engine and leveraging the Object store, an HA setup ensures that if a node fails, you can still continue reading from, and writing to, a secondary node. + +A two-node setup is the minimum for basic high availability, with both nodes having read-write permissions. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} + +In a basic HA setup: + +- Two nodes both write data to the same Object store and both handle queries +- Node 1 and Node 2 are _read replicas_ that read from each other’s Object store directories +- One of the nodes is designated as the Compactor node + +> [!Note] +> Only one node can be designated as the Compactor. +> Compacted data is meant for a single writer, and many readers. + +The following examples show how to configure and start two nodes +for a basic HA setup. + +- _Node 1_ is for compaction (passes `compact` in `--mode`) +- _Node 2_ is for ingest and query + +```bash +## NODE 1 + +# Example variables +# node-id: 'host01' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query,compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key +``` + +```bash +## NODE 2 + +# Example variables +# node-id: 'host02' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + +After the nodes have started, querying either node returns data for both nodes, and _NODE 1_ runs compaction. +To add nodes to this setup, start more read replicas with the same cluster ID. + +### High availability with a dedicated Compactor + +Data compaction in InfluxDB 3 is one of the more computationally expensive operations. +To ensure that your read-write nodes don't slow down due to compaction work, set up a compactor-only node for consistent and high performance across all nodes. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} + +The following examples show how to set up high availability with a dedicated Compactor node: + +1. Start two read-write nodes as read replicas, similar to the previous example. + + ```bash + ## NODE 1 — Writer/Reader Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + ```bash + ## NODE 2 — Writer/Reader Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +### High availability with read replicas and a dedicated Compactor + +For a robust and effective setup for managing time-series data, you can run ingest nodes alongside read-only nodes and a dedicated Compactor node. + +{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} + +1. Start ingest nodes by assigning them the **`ingest`** mode. + To achieve the benefits of workload isolation, you'll send _only write requests_ to these ingest nodes. Later, you'll configure the _read-only_ nodes. + + ```bash + ## NODE 1 — Writer Node #1 + + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + + + ```bash + ## NODE 2 — Writer Node #2 + + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + +2. Start the dedicated Compactor node with ` compact`. + + ```bash + ## NODE 3 — Compactor Node + + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + + ``` + +3. Finally, start the query nodes as _read-only_ with `--mode query`. + + ```bash + ## NODE 4 — Read Node #1 + + # Example variables + # node-id: 'host04' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host04 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8383 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` + + ```bash + ## NODE 5 — Read Node #2 + + # Example variables + # node-id: 'host05' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' + + influxdb3 serve \ + --node-id host05 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8484 \ + --aws-access-key-id \ + + ``` + +Congratulations, you have a robust setup for workload isolation using {{% product-name %}}. + +### Writing and querying for multi-node setups + +You can use the default port `8181` for any write or query, without changing any of the commands. + +> [!Note] +> #### Specify hosts for writes and queries +> +> To benefit from this multi-node, isolated architecture, specify hosts: +> +> - In write requests, specify a host that you have designated as _write-only_. +> - In query requests, specify a host that you have designated as _read-only_. +> +> When running multiple local instances for testing or separate nodes in production, specifying the host ensures writes and queries are routed to the correct instance. + +{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} +```bash +# Example querying a specific host +# HTTP-bound Port: 8585 +influxdb3 query \ + --host http://localhost:8585 + --token AUTH_TOKEN \ + --database DATABASE_NAME "QUERY" +``` +{{% /code-placeholders %}} + +Replace the following placeholders with your values: + +- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database \ No newline at end of file diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index 427f7b171..57705d1ae 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -10,38 +10,17 @@ including the following: > The [InfluxDB Discord server](https://discord.gg/9zaNCW2PRT) is the best place to find support for {{% product-name %}}. > For other InfluxDB versions, see the [Support and feedback](#bug-reports-and-feedback) options. -## Data model -The {{% product-name %}} server contains logical databases; databases contain -tables; and tables are comprised of columns. +### Data model -Compared to previous versions of InfluxDB, you can think of a database as an -InfluxDB v2 `bucket` in v2 or an InfluxDB v1 `db/retention_policy`. -A `table` is equivalent to an InfluxDB v1 and v2 `measurement`. +The database server contains logical databases, which have tables, which have columns. Compared to previous versions of InfluxDB you can think of a database as a `bucket` in v2 or as a `db/retention_policy` in v1. A `table` is equivalent to a `measurement`, which has columns that can be of type `tag` (a string dictionary), `int64`, `float64`, `uint64`, `bool`, or `string` and finally every table has a `time` column that is a nanosecond precision timestamp. -Columns in a table represent time, tags, and fields. Columns can be one of the -following types: +In InfluxDB 3, every table has a primary key--the ordered set of tags and the time--for its data. +This is the sort order used for all Parquet files that get created. When you create a table, either through an explicit call or by writing data into a table for the first time, it sets the primary key to the tags in the order they arrived. This is immutable. Although InfluxDB is still a _schema-on-write_ database, the tag column definitions for a table are immutable. -- String dictionary (tag) -- `int64` (field) -- `float64` (field) -- `uint64` (field) -- `bool` (field) -- `string` (field) -- `time` (time with nanosecond precision) +Tags should hold unique identifying information like `sensor_id`, or `building_id` or `trace_id`. All other data should be kept in fields. You will be able to add fast last N value and distinct value lookups later for any column, whether it is a field or a tag. -In {{% product-name %}}, every table has a primary key--the ordered set of tags and the time--for its data. -The primary key uniquely identifies each and determines the sort order for all -Parquet files related to the table. When you create a table, either through an -explicit call or by writing data into a table for the first time, it sets the -primary key to the tags in the order they arrived. -Although InfluxDB is still a _schema-on-write_ database, the tag column -definitions for a table are immutable. - -Tags should hold unique identifying information like `sensor_id`, `building_id`, -or `trace_id`. All other data should be stored as fields. - -## Tools to use +### Tools to use The following table compares tools that you can use to interact with {{% product-name %}}. This tutorial covers many of the recommended tools. diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 8a276ee02..a301cfc64 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -90,11 +90,11 @@ def process_writes(influxdb3_local, table_batches, args=None): # here we're using arguments provided at the time the trigger was set up # to feed into paramters that we'll put into a query - query_params = {"room": "Kitchen"} + query_params = {"host": "foo"} # here's an example of executing a parameterized query. Only SQL is supported. # It will query the database that the trigger is attached to by default. We'll # soon have support for querying other DBs. - query_result = influxdb3_local.query("SELECT * FROM home where room = '$host'", query_params) + query_result = influxdb3_local.query("SELECT * FROM cpu where host = '$host'", query_params) # the result is a list of Dict that have the column name as key and value as # value. If you run the WAL test plugin with your plugin against a DB that # you've written data into, you'll be able to see some results @@ -142,20 +142,19 @@ def process_writes(influxdb3_local, table_batches, args=None): influxdb3_local.info("done") ``` -## Test a plugin on the server +##### Test a plugin on the server -{{% product-name %}} lets you test your processing engine plugin safely without -affecting actual data. During a plugin test: +Test your InfluxDB 3 plugin safely without affecting written data. During a plugin test: - A query executed by the plugin queries against the server you send the request to. - Writes aren't sent to the server but are returned to you. -To test a plugin: +To test a plugin, do the following: -1. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a - plugin file inside of the plugin directory. If you haven't yet written data - to the table in the example, comment out the lines where it queries. -2. To run the test, enter the following command with the following options: +1. Create a _plugin directory_--for example, `/path/to/.influxdb/plugins` +2. [Start the InfluxDB server](#start-influxdb) and include the `--plugin-dir ` option. +3. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. +4. To run the test, enter the following command with the following options: - `--lp` or `--file`: The line protocol to test - Optional: `--input-arguments`: A comma-delimited list of `=` arguments for your plugin code @@ -163,15 +162,15 @@ To test a plugin: {{% code-placeholders "INPUT_LINE_PROTOCOL|INPUT_ARGS|DATABASE_NAME|AUTH_TOKEN|PLUGIN_FILENAME" %}} ```bash influxdb3 test wal_plugin \ - --database DATABASE_NAME \ - --token AUTH_TOKEN \ - --lp INPUT_LINE_PROTOCOL \ - --input-arguments INPUT_ARGS \ - PLUGIN_FILENAME +--lp INPUT_LINE_PROTOCOL \ +--input-arguments INPUT_ARGS \ +--database DATABASE_NAME \ +--token AUTH_TOKEN \ +PLUGIN_FILENAME ``` {{% /code-placeholders %}} -Replace the following: +Replace the following placeholders with your values: - {{% code-placeholder-key %}}`INPUT_LINE_PROTOCOL`{{% /code-placeholder-key %}}: the line protocol to test - Optional: {{% code-placeholder-key %}}`INPUT_ARGS`{{% /code-placeholder-key %}}: a comma-delimited list of `=` arguments for your plugin code--for example, `arg1=hello,arg2=world` @@ -179,18 +178,23 @@ Replace the following: - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test -The command runs the plugin code with the test data, yields the data to the -plugin code, and then responds with the plugin result. -You can quickly see how the plugin behaves, what data it would have written to -the database, and any errors. +The command runs the plugin code with the test data, yields the data to the plugin code, and then responds with the plugin result. +You can quickly see how the plugin behaves, what data it would have written to the database, and any errors. You can then edit your Python code in the plugins directory, and rerun the test. The server reloads the file for every request to the `test` API. -##### Example: Test, create, and run a plugin +For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. + +With the plugin code inside the server plugin directory, and a successful test, +you're ready to create a trigger for your server to run the plugin. + +##### Example: Test and run a plugin + +The following example shows how to test a plugin, and then create the plugin and +trigger: - ```bash -# Test and create a plugin +# Test a plugin # Requires: # - A database named `mydb` with a table named `foo` # - A Python plugin file named `test.py` @@ -203,16 +207,6 @@ influxdb3 test wal_plugin \ test.py ``` -For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) -or run `influxdb3 test wal_plugin -h`. - -## Create a trigger - -With the plugin code inside the server plugin directory, and a successful test, -you're ready to create a trigger to run the plugin. Use the -[`influxdb3 create trigger` command](/influxdb3/version/reference/cli/influxdb3/create/trigger/) -to create a trigger. - ```bash # Create a trigger that runs the plugin influxdb3 create trigger \ @@ -224,8 +218,6 @@ influxdb3 create trigger \ trigger1 ``` -## Enable the trigger - After you have created a plugin and trigger, enter the following command to enable the trigger and have it run the plugin as you write data: diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index c10b6dbf1..6c1c48a3b 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -1,299 +1,89 @@ - -{{% product-name %}} supports both native SQL and InfluxQL for querying data. InfluxQL is -an SQL-like query language designed for InfluxDB v1 and customized for time -series queries. +### Query data + +InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an +SQL-like language customized for time series queries. {{% show-in "core" %}} {{< product-name >}} limits -query time ranges to approximately 72 hours (both recent and historical) to -ensure query performance. For more information about the 72-hour limitation, see -the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). +query time ranges to 72 hours (both recent and historical) to ensure query performance. +For more information about the 72-hour limitation, see the +[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). {{% /show-in %}} > [!Note] -> Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3. +> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. - +The quickest way to get started querying is to use the `influxdb3` CLI (which uses the Flight SQL API over HTTP2). -- [Query data with the influxdb3 CLI](#query-data-with-the-influxdb3-cli) - - [Example queries](#example-queries) -- [Other tools for executing queries](#other-tools-for-executing-queries) -- [SQL vs InfluxQL](#sql-vs-influxql) - - [SQL](#sql) - - [InfluxQL](#influxql) -- [Optimize queries](#optimize-queries) - - [Last values cache](#last-values-cache) - - [Distinct values cache](#distinct-values-cache) - {{% show-in "enterprise" %}}- [File indexes](#file-indexes){{% /show-in %}} +The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. - +| Option | Description | Required | +|---------|-------------|--------------| +| `--host` | The host URL of the server [default: `http://127.0.0.1:8181`] to query | No | +| `--database` | The name of the database to operate on | Yes | +| `--token` | The authentication token for the {{% product-name %}} server | No | +| `--language` | The query language of the provided query string [default: `sql`] [possible values: `sql`, `influxql`] | No | +| `--format` | The format in which to output the query [default: `pretty`] [possible values: `pretty`, `json`, `jsonl`, `csv`, `parquet`] | No | +| `--output` | The path to output data to | No | -## Query data with the influxdb3 CLI +#### Example: query `“SHOW TABLES”` on the `servers` database: -To get started querying data in {{% product-name %}}, use the -[`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/) -and provide the following: +```console +$ influxdb3 query --database servers "SHOW TABLES" ++---------------+--------------------+--------------+------------+ +| table_catalog | table_schema | table_name | table_type | ++---------------+--------------------+--------------+------------+ +| public | iox | cpu | BASE TABLE | +| public | information_schema | tables | VIEW | +| public | information_schema | views | VIEW | +| public | information_schema | columns | VIEW | +| public | information_schema | df_settings | VIEW | +| public | information_schema | schemata | VIEW | ++---------------+--------------------+--------------+------------+ +``` -- `-H`, `--host`: The host URL of the server _(default is `http://127.0.0.1:8181`)_ -- `-d`, `--database`: _({{% req %}})_ The name of the database to query -- `-l`, `--language`: The query language of the provided query string - - `sql` _(default)_ - - `influxql` -- SQL or InfluxQL query as a string +#### Example: query the `cpu` table, limiting to 10 rows: -> [!Important] -> If the `INFLUXDB3_AUTH_TOKEN` environment variable defined in -> [Set up {{% product-name %}}](/influxdb3/version/get-started/setup/#set-your-token-for-authorization) -> is no longer set, reset the environment variable or provide your token using -> the `-t, --token` option in your command. +```console +$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10" ++---------------+---------------------+ +| usage_percent | time | ++---------------+---------------------+ +| 63.4 | 2024-02-21T19:25:00 | +| 25.3 | 2024-02-21T19:06:40 | +| 26.5 | 2024-02-21T19:31:40 | +| 70.1 | 2024-02-21T19:03:20 | +| 83.7 | 2024-02-21T19:30:00 | +| 55.2 | 2024-02-21T19:00:00 | +| 80.5 | 2024-02-21T19:05:00 | +| 60.2 | 2024-02-21T19:33:20 | +| 20.5 | 2024-02-21T18:58:20 | +| 85.2 | 2024-02-21T19:28:20 | ++---------------+---------------------+ +``` -To query the home sensor sample data you wrote in -[Write data to {{% product-name %}}](/influxdb3/version/get-started/write/#write-data-using-the-cli), -run the following command: +### Query using the CLI for InfluxQL + +[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations. + +To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example: {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} - - -```bash -influxdb3 query \ - --database DATABASE_NAME \ - "SELECT * FROM home ORDER BY time" -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} - ```bash influxdb3 query \ --database DATABASE_NAME \ + --token AUTH_TOKEN \ --language influxql \ - "SELECT * FROM home" + "SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d" ``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - {{% /code-placeholders %}} -_Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}} -with the name of the database to query._ +Replace the following placeholders with your values: -To query from a specific time range, use the `WHERE` clause to designate the -boundaries of your time range. +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} - - -```bash -influxdb3 query \ - --database DATABASE_NAME \ - "SELECT * FROM home WHERE time >= now() - INTERVAL '7 days' ORDER BY time" -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} - -```bash -influxdb3 query \ - --database DATABASE_NAME \ - --language influxql \ - "SELECT * FROM home WHERE time >= now() - 7d" -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /code-placeholders %}} - -### Example queries - -{{< expand-wrapper >}} -{{% expand "List tables in a database" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SHOW TABLES -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SHOW MEASUREMENTS -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /expand %}} -{{% expand "Return the average temperature of all rooms" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SELECT avg(temp) AS avg_temp FROM home -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SELECT MEAN(temp) AS avg_temp FROM home -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /expand %}} -{{% expand "Return the average temperature of the kitchen" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SELECT avg(temp) AS avg_temp FROM home WHERE room = 'Kitchen' -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SELECT MEAN(temp) AS avg_temp FROM home WHERE room = 'Kitchen' -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /expand %}} -{{% expand "Query data from an absolute time range" %}} - -{{% influxdb/custom-timestamps %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SELECT - * -FROM - home -WHERE - time >= '2022-01-01T12:00:00Z' - AND time <= '2022-01-01T18:00:00Z' -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SELECT - * -FROM - home -WHERE - time >= '2022-01-01T12:00:00Z' - AND time <= '2022-01-01T18:00:00Z' -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /influxdb/custom-timestamps %}} - -{{% /expand %}} -{{% expand "Query data from a relative time range" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SELECT - * -FROM - home -WHERE - time >= now() - INTERVAL '7 days' -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SELECT - * -FROM - home -WHERE - time >= now() - 7d -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /expand %}} -{{% expand "Calculate average humidity in 3-hour windows per room" %}} - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[SQL](#) -[InfluxQL](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```sql -SELECT - date_bin(INTERVAL '3 hours', time) AS time, - room, - avg(hum) AS avg_hum -FROM - home -GROUP BY - 1, - room -ORDER BY - room, - 1 -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```sql -SELECT - MEAN(hum) AS avg_hum -FROM - home -WHERE - time >= '2022-01-01T08:00:00Z' - AND time <= '2022-01-01T20:00:00Z' -GROUP BY - time(3h), - room -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - -{{% /expand %}} -{{< /expand-wrapper >}} - -## Other tools for executing queries - -Other tools are available for querying data in {{% product-name %}}, including -the following: - -{{< expand-wrapper >}} -{{% expand "Query using the API" %}} -#### Query using the API +### Query using the API InfluxDB 3 supports Flight (gRPC) APIs and an HTTP API. To query your database using the HTTP API, send a request to the `/api/v3/query_sql` or `/api/v3/query_influxql` endpoints. @@ -337,11 +127,7 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -{{% /expand %}} - -{{% expand "Query using the Python client" %}} - -#### Query using the Python client +### Query using the Python client Use the InfluxDB 3 Python library to interact with the database and integrate with your application. We recommend installing the required packages in a Python virtual environment for your specific project. diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 8801777d2..416709e7f 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -283,7 +283,6 @@ influxdb3 serve \ --aws-allow-http ``` {{% /show-in %}} - {{% show-in "core" %}} ```bash # S3 object store (default is the us-east-1 region) @@ -364,8 +363,6 @@ InfluxDB 3 Enterprise licenses: - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. - **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. -You can obtain a license key from the [InfluxData pricing page](https://www.influxdata.com/pricing/). - ### Start InfluxDB 3 Enterprise with your license Use the following `docker run` command to start an InfluxDB 3 Enterprise container using your email address to activate a trial or at-home license. diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index c1839b98b..0af779c1d 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -1,16 +1,12 @@ - +### Write data -{{% product-name %}} is designed for high write-throughput and uses an efficient, -human-readable write syntax called _[line protocol](#line-protocol)_. InfluxDB -is a schema-on-write database, meaning you can start writing data and InfluxDB -creates the logical database, tables, and their schemas automatically, without -any required intervention. Once InfluxDB creates the schema, it validates future -write requests against the schema before accepting new data. -Both new tags and fields can be added later as your schema changes. +InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly. +After a schema is created, InfluxDB validates future write requests against it before accepting the data. +Subsequent requests can add new fields on-the-fly, but can't add new tags. {{% show-in "core" %}} > [!Note] -> #### InfluxDB 3 Core is optimized for recent data +> #### Core is optimized for recent data > > {{% product-name %}} is optimized for recent data but accepts writes from any time period. > The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools. From 776a209a79608685b630ee6fff55e002c0a7cf30 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 6 Jun 2025 07:16:54 -0600 Subject: [PATCH 15/80] WIP restructuring monolith getting started --- content/influxdb3/enterprise/get-started/multi-server.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md index 42ca6ef0b..62061aaaf 100644 --- a/content/influxdb3/enterprise/get-started/multi-server.md +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -3,8 +3,8 @@ title: Use a multi-server setup seotitle: Use a multi-server InfluxDB 3 Enterprise setup menu: influxdb3_enterprise: - - name: Multi-server - - parent: Get started + name: Multi-server + parent: Get started weight: 4 influxdb3/enterprise/tags: [cluster, multi-node, multi-server] --- From 5611da76e61ea3366859c752af70c9537bf88970 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 17 Jun 2025 17:12:42 -0600 Subject: [PATCH 16/80] WIP monolith get started, enterprise multi-node, file index docs --- .../processing-engine.md | 56 ++-- content/shared/influxdb3-get-started/query.md | 239 +++++++++++++++++- 2 files changed, 270 insertions(+), 25 deletions(-) diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index a301cfc64..16c244134 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -90,11 +90,11 @@ def process_writes(influxdb3_local, table_batches, args=None): # here we're using arguments provided at the time the trigger was set up # to feed into paramters that we'll put into a query - query_params = {"host": "foo"} + query_params = {"room": "Kitchen"} # here's an example of executing a parameterized query. Only SQL is supported. # It will query the database that the trigger is attached to by default. We'll # soon have support for querying other DBs. - query_result = influxdb3_local.query("SELECT * FROM cpu where host = '$host'", query_params) + query_result = influxdb3_local.query("SELECT * FROM home where room = '$host'", query_params) # the result is a list of Dict that have the column name as key and value as # value. If you run the WAL test plugin with your plugin against a DB that # you've written data into, you'll be able to see some results @@ -142,19 +142,21 @@ def process_writes(influxdb3_local, table_batches, args=None): influxdb3_local.info("done") ``` -##### Test a plugin on the server +## Test a plugin on the server -Test your InfluxDB 3 plugin safely without affecting written data. During a plugin test: +Use the [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) +CLI command to test your processing engine plugin safely without +affecting actual data. During a plugin test: - A query executed by the plugin queries against the server you send the request to. - Writes aren't sent to the server but are returned to you. -To test a plugin, do the following: +To test a plugin: -1. Create a _plugin directory_--for example, `/path/to/.influxdb/plugins` -2. [Start the InfluxDB server](#start-influxdb) and include the `--plugin-dir ` option. -3. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. -4. To run the test, enter the following command with the following options: +1. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a + plugin file inside of the plugin directory. If you haven't yet written data + to the table in the example, comment out the lines where it queries. +2. To run the test, enter the following command with the following options: - `--lp` or `--file`: The line protocol to test - Optional: `--input-arguments`: A comma-delimited list of `=` arguments for your plugin code @@ -162,15 +164,15 @@ To test a plugin, do the following: {{% code-placeholders "INPUT_LINE_PROTOCOL|INPUT_ARGS|DATABASE_NAME|AUTH_TOKEN|PLUGIN_FILENAME" %}} ```bash influxdb3 test wal_plugin \ ---lp INPUT_LINE_PROTOCOL \ ---input-arguments INPUT_ARGS \ ---database DATABASE_NAME \ ---token AUTH_TOKEN \ -PLUGIN_FILENAME + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + --lp INPUT_LINE_PROTOCOL \ + --input-arguments INPUT_ARGS \ + PLUGIN_FILENAME ``` {{% /code-placeholders %}} -Replace the following placeholders with your values: +Replace the following: - {{% code-placeholder-key %}}`INPUT_LINE_PROTOCOL`{{% /code-placeholder-key %}}: the line protocol to test - Optional: {{% code-placeholder-key %}}`INPUT_ARGS`{{% /code-placeholder-key %}}: a comma-delimited list of `=` arguments for your plugin code--for example, `arg1=hello,arg2=world` @@ -178,21 +180,19 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test -The command runs the plugin code with the test data, yields the data to the plugin code, and then responds with the plugin result. -You can quickly see how the plugin behaves, what data it would have written to the database, and any errors. +The command runs the plugin code with the test data, yields the data to the +plugin code, and then responds with the plugin result. +You can quickly see how the plugin behaves, what data it would have written to +the database, and any errors. You can then edit your Python code in the plugins directory, and rerun the test. The server reloads the file for every request to the `test` API. -For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. - With the plugin code inside the server plugin directory, and a successful test, you're ready to create a trigger for your server to run the plugin. ##### Example: Test and run a plugin -The following example shows how to test a plugin, and then create the plugin and -trigger: - + ```bash # Test a plugin # Requires: @@ -207,6 +207,16 @@ influxdb3 test wal_plugin \ test.py ``` +For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) +or run `influxdb3 test wal_plugin -h`. + +## Create a trigger + +With the plugin code inside the server plugin directory, and a successful test, +you're ready to create a trigger to run the plugin. Use the +[`influxdb3 create trigger` command](/influxdb3/version/reference/cli/influxdb3/create/trigger/) +to create a trigger. + ```bash # Create a trigger that runs the plugin influxdb3 create trigger \ @@ -218,6 +228,8 @@ influxdb3 create trigger \ trigger1 ``` +## Enable the trigger + After you have created a plugin and trigger, enter the following command to enable the trigger and have it run the plugin as you write data: diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 6c1c48a3b..3c2861d50 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -13,7 +13,26 @@ For more information about the 72-hour limitation, see the > [!Note] > Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. -The quickest way to get started querying is to use the `influxdb3` CLI (which uses the Flight SQL API over HTTP2). + + +- [Query data with the influxdb3 CLI](#query-data-with-the-influxdb3-cli) + - [Example queries](#example-queries) +- [Other tools for executing queries](#other-tools-for-executing-queries) +- [SQL vs InfluxQL](#sql-vs-influxql) + - [SQL](#sql) + - [InfluxQL](#influxql) +- [Optimize queries](#optimize-queries) + - [Last values cache](#last-values-cache) + - [Distinct values cache](#distinct-values-cache) + {{% show-in "enterprise" %}}- [File indexes](#file-indexes){{% /show-in %}} + + + +## Query data with the influxdb3 CLI + +To get started querying data in {{% product-name %}}, use the +[`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/) +and provide the following: The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. @@ -83,7 +102,217 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -### Query using the API +To query from a specific time range, use the `WHERE` clause to designate the +boundaries of your time range. + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + "SELECT * FROM home WHERE time >= now() - INTERVAL '7 days' ORDER BY time" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + --language influxql \ + "SELECT * FROM home WHERE time >= now() - 7d" +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /code-placeholders %}} + +### Example queries + +{{< expand-wrapper >}} +{{% expand "List tables in a database" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SHOW TABLES +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SHOW MEASUREMENTS +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Return the average temperature of all rooms" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT avg(temp) AS avg_temp FROM home +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT MEAN(temp) AS avg_temp FROM home +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Return the average temperature of the kitchen" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT avg(temp) AS avg_temp FROM home WHERE room = 'Kitchen' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT MEAN(temp) AS avg_temp FROM home WHERE room = 'Kitchen' +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Query data from an absolute time range" %}} + +{{% influxdb/custom-timestamps %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= '2022-01-01T12:00:00Z' + AND time <= '2022-01-01T18:00:00Z' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= '2022-01-01T12:00:00Z' + AND time <= '2022-01-01T18:00:00Z' +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /influxdb/custom-timestamps %}} + +{{% /expand %}} +{{% expand "Query data from a relative time range" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= now() - INTERVAL '7 days' +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + * +FROM + home +WHERE + time >= now() - 7d +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{% expand "Calculate average humidity in 3-hour windows per room" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sql +SELECT + date_bin(INTERVAL '3 hours', time) AS time, + room, + avg(hum) AS avg_hum +FROM + home +GROUP BY + 1, + room +ORDER BY + room, + 1 +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sql +SELECT + MEAN(hum) AS avg_hum +FROM + home +WHERE + time >= '2022-01-01T08:00:00Z' + AND time <= '2022-01-01T20:00:00Z' +GROUP BY + time(3h), + room +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +{{% /expand %}} +{{< /expand-wrapper >}} + +## Other tools for executing queries + +Other tools are available for querying data in {{% product-name %}}, including +the following: + +{{< expand-wrapper >}} +{{% expand "Query using the API" %}} +#### Query using the API InfluxDB 3 supports Flight (gRPC) APIs and an HTTP API. To query your database using the HTTP API, send a request to the `/api/v3/query_sql` or `/api/v3/query_influxql` endpoints. @@ -127,7 +356,11 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -### Query using the Python client +{{% /expand %}} + +{{% expand "Query using the Python client" %}} + +#### Query using the Python client Use the InfluxDB 3 Python library to interact with the database and integrate with your application. We recommend installing the required packages in a Python virtual environment for your specific project. From cb742227d7ea591b162921080f0de4e559e82357 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 17 Jun 2025 17:31:07 -0600 Subject: [PATCH 17/80] update getting started landing page --- .../shared/influxdb3-get-started/_index.md | 33 +++++++++++++++---- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index 57705d1ae..427f7b171 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -10,17 +10,38 @@ including the following: > The [InfluxDB Discord server](https://discord.gg/9zaNCW2PRT) is the best place to find support for {{% product-name %}}. > For other InfluxDB versions, see the [Support and feedback](#bug-reports-and-feedback) options. +## Data model -### Data model +The {{% product-name %}} server contains logical databases; databases contain +tables; and tables are comprised of columns. -The database server contains logical databases, which have tables, which have columns. Compared to previous versions of InfluxDB you can think of a database as a `bucket` in v2 or as a `db/retention_policy` in v1. A `table` is equivalent to a `measurement`, which has columns that can be of type `tag` (a string dictionary), `int64`, `float64`, `uint64`, `bool`, or `string` and finally every table has a `time` column that is a nanosecond precision timestamp. +Compared to previous versions of InfluxDB, you can think of a database as an +InfluxDB v2 `bucket` in v2 or an InfluxDB v1 `db/retention_policy`. +A `table` is equivalent to an InfluxDB v1 and v2 `measurement`. -In InfluxDB 3, every table has a primary key--the ordered set of tags and the time--for its data. -This is the sort order used for all Parquet files that get created. When you create a table, either through an explicit call or by writing data into a table for the first time, it sets the primary key to the tags in the order they arrived. This is immutable. Although InfluxDB is still a _schema-on-write_ database, the tag column definitions for a table are immutable. +Columns in a table represent time, tags, and fields. Columns can be one of the +following types: -Tags should hold unique identifying information like `sensor_id`, or `building_id` or `trace_id`. All other data should be kept in fields. You will be able to add fast last N value and distinct value lookups later for any column, whether it is a field or a tag. +- String dictionary (tag) +- `int64` (field) +- `float64` (field) +- `uint64` (field) +- `bool` (field) +- `string` (field) +- `time` (time with nanosecond precision) -### Tools to use +In {{% product-name %}}, every table has a primary key--the ordered set of tags and the time--for its data. +The primary key uniquely identifies each and determines the sort order for all +Parquet files related to the table. When you create a table, either through an +explicit call or by writing data into a table for the first time, it sets the +primary key to the tags in the order they arrived. +Although InfluxDB is still a _schema-on-write_ database, the tag column +definitions for a table are immutable. + +Tags should hold unique identifying information like `sensor_id`, `building_id`, +or `trace_id`. All other data should be stored as fields. + +## Tools to use The following table compares tools that you can use to interact with {{% product-name %}}. This tutorial covers many of the recommended tools. From f3ace7c7a95b703f2529ae84593748b99b2c528a Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 14:55:02 -0500 Subject: [PATCH 18/80] chore(influxdb3): Setup: Additions and fixes: - Docker examples and licensing - Enterprise conditionals - Cleanup --- content/shared/influxdb3-get-started/setup.md | 367 +++++++++--------- 1 file changed, 183 insertions(+), 184 deletions(-) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 416709e7f..968fc87ea 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -1,96 +1,25 @@ - -- [Install {{% product-name %}}](#install-influxdb-3-{{% product-key %}}) - - [Verify the installation](#verify-the-installation) +- [Prerequisites](#prerequisites) - [Start InfluxDB](#start-influxdb) - - [{{% product-name %}} store examples](#influxdb-3-{{% product-key %}}-store-examples) +- [Configure for your object store](#configure-for-your-object-store) + - [Object store examples](#object-store-examples) +{{% show-in "enterprise" %}} - [Set up licensing](#set-up-licensing) +{{% /show-in %}} - [Set up authorization](#set-up-authorization) - [Create an operator token](#create-an-operator-token) - [Set your token for authorization](#set-your-token-for-authorization) -## Install {{% product-name %}} +## Prerequisites -{{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. -If using **Linux** or **macOS**, you can download and use the {{% product-name %}} -quick installer using [curl](https://curl.se/download.html): +To get started, you'll need: - -```bash -curl -O https://www.influxdata.com/d/install_influxdb3.sh \ -&& sh install_influxdb3.sh {{% show-in "enterprise" %}}enterprise{{% /show-in %}} -``` - -For detailed installation instructions, including for Windows and Docker, -see [Install {{% product-name %}}](/influxdb3/version/install/). - -{{% show-in "enterprise" %}} -> [!Note] -> For information about setting up a multi-node {{% product-name %}} cluster, -> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). -{{% /show-in %}} - -You can also download and install [{{% product-name %}} build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries) directly: - -{{< expand-wrapper >}} -{{% expand "Linux binaries" %}} - -- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) -- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) - -{{% /expand %}} -{{% expand "macOS binaries" %}} - -- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) - -> [!Note] -> macOS Intel builds are coming soon. - -{{% /expand %}} -{{% expand "Windows binaries" %}} - -- [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) - • -[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - -{{% /expand %}} -{{% expand "Docker image" %}} - -The [`influxdb:3-enterprise` image](https://hub.docker.com/_/influxdb/tags?tag=3-core&name=3-enterprise) -is available for x86_64 (AMD64) and ARM64 architectures. - -Pull the image: - - -```bash -docker pull influxdb:3-enterprise -``` -{{% /expand %}} -{{< /expand-wrapper >}} - -### Verify the installation - -After installing {{% product-name %}}, enter the following command to verify -that it installed successfully: - -```bash -influxdb3 --version -``` - -If your system doesn't locate `influxdb3`, then `source` the configuration file (for example, .bashrc, .zshrc) for your shell--for example: - - -```zsh -source ~/.zshrc -``` +- **{{% product-name %}}**: [Install and verify the latest version](/influxdb3/version/install/) on your system. +- If you want to persist data, have access to one of the following: + - S3-compatible object store and credentials + - A directory on your local disk where you can persist data ## Start InfluxDB @@ -108,11 +37,10 @@ Provide the following: - `s3`: AWS S3 and S3-compatible services like Ceph or Minio - `google`: Google Cloud Storage - `azure`: Azure Blob Storage - - > [!Note] - > Depending on the object store type, you may need to provide additional - > options for your object store configuration. - +{{% show-in "core" %}} +- `--node-id`: A string identifier that distinguishes individual server instances. + This forms the final part of the storage path: `/`. +{{% /show-in %}} {{% show-in "enterprise" %}} - `--node-id`: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: @@ -123,12 +51,14 @@ Provide the following: The storage path follows the pattern `//`. In a multi-node setup, this ID is used to reference the entire cluster. {{% /show-in %}} -{{% show-in "core" %}} -- `--node-id`: A string identifier that distinguishes individual server instances. - This forms the final part of the storage path: `/`. -{{% /show-in %}} -The following examples show how to start {{% product-name %}} with different object store configurations. +### Configure for your object store + +Depending on the object store type, you may need to provide additional +options, such as access credentials, for your object store configuration. + +The following examples show how to start {{% product-name %}} with different +object store configurations. > [!Note] > #### Diskless architecture @@ -143,32 +73,10 @@ The following examples show how to start {{% product-name %}} with different obj > separation between clusters and individual nodes. > {{% /show-in %}} -For this getting started guide, use the `file` object store to persist data to -your local disk. +_For this getting started guide, use the `file` object store to persist data to +your local disk._ -{{% show-in "enterprise" %}} -```bash -# File system object store -# Provide the filesystem directory -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --object-store file \ - --data-dir ~/.influxdb3 -``` -{{% /show-in %}} -{{% show-in "core" %}} -```bash -# File system object store -# Provide the file system directory -influxdb3 serve \ - --node-id host01 \ - --object-store file \ - --data-dir ~/.influxdb3 -``` -{{% /show-in %}} - -### {{% product-name %}} store examples +### Object store examples {{< expand-wrapper >}} {{% expand "File system object store" %}} @@ -210,7 +118,6 @@ provide the following options with your `docker run` command: - `--volume /path/on/host:/path/in/container`: Mounts a directory from your file system to the container - `--object-store file --data-dir /path/in/container`: Use the volume mount for object storage - {{% show-in "enterprise" %}} ```bash @@ -248,6 +155,88 @@ docker run -it \ > To map the exposed port to a different port when running a container, see the > Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). +{{% /expand %}} +{{% expand "Docker compose with a mounted file system object store" %}} +{{% show-in "enterprise" %}} +1. Open `compose.yaml` for editing and add a `services` entry for {{% product-name %}}. + --for example: + + ```yaml + # compose.yaml + services: + influxdb3-{{< product-key >}}: + container_name: influxdb3-{{< product-key >}} + image: influxdb:3-{{< product-key >}} + ports: + - 8181:8181 + command: + - influxdb3 + - serve + - --node-id=node0 + - --cluster-id=cluster0 + - --object-store=file + - --data-dir=/var/lib/influxdb3 + - --plugins-dir=/var/lib/influxdb3-plugins + - --license-email=EMAIL_ADDRESS + ``` + _Replace `EMAIL_ADDRESS` with your email address to bypass the email prompt + when generating a trial or at-home license._ +{{% /show-in %}} +{{% show-in "core" %}} +1. Open `compose.yaml` for editing and add a `services` entry for {{% product-name %}}--for example: + + ```yaml + # compose.yaml + services: + influxdb3-{{< product-key >}}: + container_name: influxdb3-{{< product-key >}} + image: influxdb:3-{{< product-key >}} + ports: + - 8181:8181 + command: + - influxdb3 + - serve + - --node-id=node0 + - --object-store=file + - --data-dir=/var/lib/influxdb3 + - --plugins-dir=/var/lib/influxdb3-plugins + ``` +{{% /show-in %}} + +2. Use the Docker Compose CLI to start the server. + + Optional: to make sure you have the latest version of the image before you + start the server, run `docker compose pull`. + + + ```bash + docker compose pull && docker compose run influxdb3-{{< product-key >}} + ``` + +InfluxDB 3 starts in a container with host port `8181` mapped to container port +`8181`, the `influxdb3` server default for HTTP connections. + +> [!Tip] +> #### Custom port mapping +> +> To customize your `influxdb3` server hostname and port, specify the +> [`--http-bind` option or the `INFLUXDB3_HTTP_BIND_ADDR` environment variable](/influxdb3/version/reference/config-options/#http-bind). +> +> For more information about mapping your container port to a specific host port, see the +> Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). + +> [!Note] +> #### Stopping an InfluxDB 3 container +> +> To stop a running InfluxDB 3 container, find and terminate the process or container--for example: +> +> +> ```bash +> docker container ls --filter "name=influxdb3" +> docker kill +> ``` +> +> _Currently, a bug prevents using {{< keybind all="Ctrl+c" >}} in the terminal to stop an InfluxDB 3 container._ {{% /expand %}} {{% expand "S3 object storage" %}} @@ -349,79 +338,88 @@ influxdb3 serve --help {{% show-in "enterprise" %}} ## Set up licensing -When starting a new {{% product-name %}} instance, you must provide a **valid license key** to enable Enterprise features such as clustering, plugin support, and multi-user authorization. - -InfluxDB 3 Enterprise licenses: - -- **Authorize** usage of InfluxDB 3 Enterprise software. -- **Apply per cluster**, with limits based primarily on CPU cores. -- **Vary by license type**, each offering different capabilities and restrictions. - -### Available license types: +When you first start a new instance, {{% product-name %}} prompts you to select a +license type. InfluxDB 3 Enterprise licenses authorize the use of the +InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are +primarily based on the number of CPUs InfluxDB can use, but there are other +limitations depending on the license type. The following InfluxDB 3 Enterprise +license types are available: - **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. - **Commercial**: Commercial license with full access to InfluxDB 3 Enterprise capabilities. -### Start InfluxDB 3 Enterprise with your license - -Use the following `docker run` command to start an InfluxDB 3 Enterprise container using your email address to activate a trial or at-home license. - -{{% code-placeholders "YOUR_EMAIL_ADDRESS" %}} - -```bash -docker run -d --name influxdb3-enterprise \ - -v "$PWD/data:/var/lib/influxdb3" \ - -v "$PWD/plugins:/plugins" \ - -p 8181:8181 \ - -e INFLUXDB3_ENTERPRISE_LICENSE_EMAIL=YOUR_EMAIL_ADDRESS \ - quay.io/influxdb/influxdb3-enterprise:latest \ - serve \ - --cluster-id cluster1 \ - --node-id node1 \ - --plugin-dir /plugins \ - --object-store file \ - --data-dir /var/lib/influxdb3 -``` - -{{% /code-placeholders %}} - -- Replace `YOUR_EMAIL_ADDRESS` with the email you want to associate with the license. - -Once the Docker container is running, create an admin token to authenticate requests: - -{{% code-placeholders "YOUR_LICENSE_KEY" %}} - -```bash -docker exec -it influxdb3-enterprise influxdb3 create token --admin -``` - -{{% /code-placeholders %}} - -Use the token to create a database: - -{{% code-placeholders "YOUR_AUTH_TOKEN" %}} - -```bash -docker exec -it influxdb3-enterprise \ - influxdb3 create database example_db --token YOUR_AUTH_TOKEN -``` - -{{% /code-placeholders %}} - -> [!Note] -> A valid license is required to use `create token` and other authorization features in {{% product-name %}}. - -For more information, see [Manage your InfluxDB 3 Enterprise license](/influxdb3/enterprise/admin/license/). +> [!Important] +> #### Trial and at-home licenses with Docker +> +> To generate a trial or home license for InfluxDB 3 in Docker, the first time +> you start a new instance, provide your email address with the +> `--license-email` option or the +> `INFLUXDB3_LICENSE_EMAIL` environment variable to bypass the licensing +> email prompt--for example: +> +> {{< code-tabs-wrapper >}} +> {{% code-tabs %}} +> [Docker CLI](#) +> [Docker Compose file](#) +> {{% /code-tabs %}} +> {{% code-tab-content %}} +> {{% code-placeholders "EMAIL_ADDRESS" %}} +> ```bash +> docker run -d --name influxdb3-enterprise \ +> -v "$PWD/data:/var/lib/influxdb3" \ +> -v "$PWD/plugins:/plugins" \ +> -p 8181:8181 \ +> quay.io/influxdb/influxdb3-enterprise:latest \ +> serve \ +> --cluster-id cluster1 \ +> --node-id node1 \ +> --plugin-dir /plugins \ +> --object-store file \ +> --data-dir /var/lib/influxdb3 +> ``` +> {{% /code-placeholders %}} +> - Replace {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} with the email you want to associate with the license. +> {{% /code-tab-content %}} +> {{% code-tab-content %}} +> {{% code-placeholders "EMAIL_ADDRESS" %}} +> ```yaml +> # compose.yaml +> services: +> influxdb3-{{< product-key >}}: +> container_name: influxdb3-{{< product-key >}} +> image: influxdb:3-{{< product-key >}} +> ports: +> - 8181:8181 +> command: +> - influxdb3 +> - serve +> - --node-id=node0 +> - --object-store=file +> - --data-dir=/var/lib/influxdb3 +> - --plugins-dir=/var/lib/influxdb3-plugins + environment: +> - INFLUXDB3_LICENSE_EMAIL=${EMAIL_ADDRESS} +> ``` +> {{% /code-placeholders %}} +> {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} is +> the email you want to associate with the license. This example shows how +> to reference an email address set in your `.env` file. +> {{% /code-tab-content %}} +> {{< /code-tabs-wrapper >}} +> +> _Currently, if you use the prompt to enter your email address, a bug may +> prevent the container from generating the license ._ +> +> For more information, see [Manage your InfluxDB 3 Enterprise license](/influxdb3/enterprise/admin/license/). {{% /show-in %}} > [!Tip] > #### Use the InfluxDB 3 Explorer query interface (beta) -> -> The remainder of the getting started guide can be completed using -> InfluxDB 3 Explorer (currently in beta), the web-based query and -> administrative interface for InfluxDB 3, but doesn't include instructions for -> Explorer. Explorer provides visual management of databases and tokens and an +> +> You can complete the remaining steps in this guide using InfluxDB 3 Explorer +> (currently in beta), the web-based query and administrative interface for InfluxDB 3. +> Explorer provides visual management of databases and tokens and an > easy way to write and query your time series data. > > For more information, see the [InfluxDB 3 Explorer documentation](/influxdb3/explorer/). @@ -512,7 +510,8 @@ In your command, replace {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code- {{% /tabs %}} {{% tab-content %}} -Set the `INFLUXDB3_AUTH_TOKEN` environment variable to have the CLI use your token automatically: +Set the `INFLUXDB3_AUTH_TOKEN` environment variable to have the CLI use your +token automatically: {{% code-placeholders "YOUR_AUTH_TOKEN" %}} ```bash @@ -570,7 +569,7 @@ curl "http://{{< influxdb/host >}}/api/v3/configure/database" \ {{% /show-in %}} - [Authentication](/influxdb3/version/reference/internals/authentication/) - Understand authentication, authorizations, and permissions in {{% product-name %}} - + {{% page-nav prev="/influxdb3/version/get-started/" prevText="Get started" From 569cc7bc39ed9bed9de49d9be55f06bb686f2380 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 14:57:24 -0500 Subject: [PATCH 19/80] fix(influxdb3): Remove beta note, add token link --- .../execute-queries/influxdb-v1-api.md | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/content/shared/influxdb3-query-guides/execute-queries/influxdb-v1-api.md b/content/shared/influxdb3-query-guides/execute-queries/influxdb-v1-api.md index e0a296c5b..810c075ae 100644 --- a/content/shared/influxdb3-query-guides/execute-queries/influxdb-v1-api.md +++ b/content/shared/influxdb3-query-guides/execute-queries/influxdb-v1-api.md @@ -21,12 +21,6 @@ Provide the following with your request: - **Headers:** - **Authorization:** `Bearer AUTH_TOKEN` - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization - > token. You can either omit this header or include it with an arbitrary - > token string. - - **Query parameters:** - **db**: the database to query - **rp**: Optional: the retention policy to query @@ -44,9 +38,9 @@ curl --get https://{{< influxdb/host >}}/query \ Replace the following configuration values: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: - the name of the database to query + the name of the [database](/influxdb3/version/admin/databases/) to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your authorization token + your {{< product-name >}} {{% token-link %}}{{% show-in "enterprise" %}} with read access to the database{{% /show-in %}} ## Return results as JSON or CSV @@ -57,7 +51,7 @@ with the `application/csv` or `text/csv` MIME type: {{% code-placeholders "(DATABASE|AUTH)_(NAME|TOKEN)" %}} ```sh curl --get https://{{< influxdb/host >}}/query \ - --header "Authorization: BEARER AUTH_TOKEN" \ + --header "Authorization: Bearer AUTH_TOKEN" \ --header "Accept: application/csv" \ --data-urlencode "db=DATABASE_NAME" \ --data-urlencode "q=SELECT * FROM home" From 8d21b51e97da746b60f23f2c8ccf4a4c658f5f05 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:00:11 -0500 Subject: [PATCH 20/80] fix(influxdb3): Remove beta note, add token link --- .../influxdb3-sample-data/sample-data.md | 37 +++---------------- content/shared/influxdb3-visualize/grafana.md | 12 ------ .../shared/influxdb3-visualize/superset.md | 7 +--- content/shared/influxdb3-visualize/tableau.md | 4 -- .../best-practices/optimize-writes.md | 33 +++-------------- .../influxdb3-write-guides/influxdb3-cli.md | 7 +--- .../use-telegraf/_index.md | 6 +-- .../use-telegraf/configure.md | 10 +---- .../use-telegraf/csv.md | 6 +-- 9 files changed, 19 insertions(+), 103 deletions(-) diff --git a/content/shared/influxdb3-sample-data/sample-data.md b/content/shared/influxdb3-sample-data/sample-data.md index 885a1f081..08a7bb513 100644 --- a/content/shared/influxdb3-sample-data/sample-data.md +++ b/content/shared/influxdb3-sample-data/sample-data.md @@ -216,14 +216,9 @@ home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200 Replace the following in the sample script: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: - the name of database to write to + the name of [database](/influxdb3/version/admin/databases/) to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the CLI `--token` option or the HTTP `Authorization` header or - > you can provide an arbitrary token string. + your {{< product-name >}} {{% token-link %}} {{% /expand %}} {{< /expand-wrapper >}} @@ -371,12 +366,7 @@ Replace the following in the sample script: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of database to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the CLI `--token` option or the HTTP `Authorization` header or - > you can provide an arbitrary token string. + your {{< product-name >}} {{% token-link %}} {{% /expand %}} {{< /expand-wrapper >}} @@ -478,12 +468,7 @@ Replace the following in the sample script: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of database to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the CLI `--token` option or the HTTP `Authorization` header or - > you can provide an arbitrary token string. + your {{< product-name >}} {{% token-link %}} {{% /expand %}} {{< /expand-wrapper >}} @@ -575,12 +560,7 @@ Replace the following in the sample script: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of database to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the CLI `--token` option or the HTTP `Authorization` header or - > you can provide an arbitrary token string. + your {{< product-name >}} {{% token-link %}} {{% /expand %}} {{< /expand-wrapper >}} @@ -674,12 +654,7 @@ Replace the following in the sample script: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of database to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the CLI `--token` option or the HTTP `Authorization` header or - > you can provide an arbitrary token string. + your {{< product-name >}} {{% token-link %}} {{% /expand %}} {{< /expand-wrapper >}} diff --git a/content/shared/influxdb3-visualize/grafana.md b/content/shared/influxdb3-visualize/grafana.md index 785e4676f..06dbf82bc 100644 --- a/content/shared/influxdb3-visualize/grafana.md +++ b/content/shared/influxdb3-visualize/grafana.md @@ -69,13 +69,6 @@ When creating an InfluxDB data source that uses SQL to query data: - **Database**: Provide a default database name to query. - **Token**: Provide an arbitrary, non-empty string. - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > However, if you included a `--token` option or defined the - > `INFLUXDB3_AUTH_TOKEN` environment variable when starting your - > {{< product-name >}} server, provide that token. - - **Insecure Connection**: If _not_ using HTTPS, enable this option. 3. Click **Save & test**. @@ -103,11 +96,6 @@ When creating an InfluxDB data source that uses InfluxQL to query data: - **User**: Provide an arbitrary string. _This credential is ignored when querying {{% product-name %}}, but it cannot be empty._ - **Password**: Provide an arbitrary string. - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization - > token, but the **Password** field does require a value. - - **HTTP Method**: Choose one of the available HTTP request methods to use when querying data: - **POST** ({{< req text="Recommended" >}}) diff --git a/content/shared/influxdb3-visualize/superset.md b/content/shared/influxdb3-visualize/superset.md index 5513fbc22..dbe0baaa2 100644 --- a/content/shared/influxdb3-visualize/superset.md +++ b/content/shared/influxdb3-visualize/superset.md @@ -211,11 +211,8 @@ a database connection. **Query parameters** - - **`?database`**: URL-encoded InfluxDB database name - - **`?token`**: InfluxDB authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. + - **`?database`**: URL-encoded [database](/influxdb3/version/admin/databases/) name + - **`?token`**: {{< product-name >}} {{% token-link %}} {{< code-callout "<(domain|port|database-name|token)>" >}} {{< code-callout "localhost|8181|example-database|example-token" >}} diff --git a/content/shared/influxdb3-visualize/tableau.md b/content/shared/influxdb3-visualize/tableau.md index 27973cdcc..d3a2a80af 100644 --- a/content/shared/influxdb3-visualize/tableau.md +++ b/content/shared/influxdb3-visualize/tableau.md @@ -67,10 +67,6 @@ the **Flight SQL JDBC driver**. - **Dialect**: PostgreSQL - **Username**: _Leave empty_ - **Password**: _Leave empty_ - - > [!Note] - > While in beta, {{< product-name >}} does not require authorization tokens. - - **Properties File**: _Leave empty_ 4. Click **Sign In**. diff --git a/content/shared/influxdb3-write-guides/best-practices/optimize-writes.md b/content/shared/influxdb3-write-guides/best-practices/optimize-writes.md index 6abfdd5c7..2441b414e 100644 --- a/content/shared/influxdb3-write-guides/best-practices/optimize-writes.md +++ b/content/shared/influxdb3-write-guides/best-practices/optimize-writes.md @@ -162,14 +162,9 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > You can either omit the `Authorization` header or you can provide an - > arbitrary token string. - {{% /tab-content %}} {{< /tabs-wrapper >}} @@ -248,13 +243,9 @@ EOF - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an empty or arbitrary token string. - 2. To test the input and processor, enter the following command: @@ -361,12 +352,9 @@ EOF - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an empty or arbitrary token string. 3. To test the input and processor, enter the following command: @@ -463,12 +451,9 @@ table, tag set, and timestamp), and then merges points in each series: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an empty or arbitrary token string. 3. To test the input and aggregator, enter the following command: @@ -566,12 +551,9 @@ field values, and then write the data to InfluxDB: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an empty or arbitrary token string. 3. To test the input and processor, enter the following command: @@ -805,12 +787,9 @@ EOF - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}} _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an empty or arbitrary token string. 5. To test the input and processor, enter the following command: diff --git a/content/shared/influxdb3-write-guides/influxdb3-cli.md b/content/shared/influxdb3-write-guides/influxdb3-cli.md index 0badb08e3..11aa37b35 100644 --- a/content/shared/influxdb3-write-guides/influxdb3-cli.md +++ b/content/shared/influxdb3-write-guides/influxdb3-cli.md @@ -64,7 +64,7 @@ Provide the following: - The [database](/influxdb3/version/admin/databases/) name using the `--database` option -- Your {{< product-name >}} authorization token using the `-t`, `--token` option +- Your {{< product-name >}} {{% token-link %}} using the `-t`, `--token` option - [Line protocol](#construct-line-protocol). Provide the line protocol in one of the following ways: @@ -196,7 +196,4 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. + your {{< product-name >}} {{% token-link %}} diff --git a/content/shared/influxdb3-write-guides/use-telegraf/_index.md b/content/shared/influxdb3-write-guides/use-telegraf/_index.md index ba5b643f3..1bc78340e 100644 --- a/content/shared/influxdb3-write-guides/use-telegraf/_index.md +++ b/content/shared/influxdb3-write-guides/use-telegraf/_index.md @@ -46,13 +46,9 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}}. _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an arbitrary, non-empty token string. - _See how to [Configure Telegraf to write to {{% product-name %}}](/influxdb3/version/write-data/use-telegraf/configure/)._ ## Use Telegraf with InfluxDB diff --git a/content/shared/influxdb3-write-guides/use-telegraf/configure.md b/content/shared/influxdb3-write-guides/use-telegraf/configure.md index 1fa5fabd0..0e04adaac 100644 --- a/content/shared/influxdb3-write-guides/use-telegraf/configure.md +++ b/content/shared/influxdb3-write-guides/use-telegraf/configure.md @@ -65,13 +65,9 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}}. _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an arbitrary, non-empty token string. - The InfluxDB output plugin configuration contains the following options: #### urls @@ -87,10 +83,6 @@ To write to {{% product-name %}}, include your {{% product-name %}} URL: Your {{% product-name %}} authorization token. -> [!Note] -> While in beta, {{< product-name >}} does not require an authorization token. -> For the `token` option, provide an arbitrary, non-empty token string. - > [!Tip] > > ##### Store your authorization token as an environment variable diff --git a/content/shared/influxdb3-write-guides/use-telegraf/csv.md b/content/shared/influxdb3-write-guides/use-telegraf/csv.md index b3e9941fc..41967996a 100644 --- a/content/shared/influxdb3-write-guides/use-telegraf/csv.md +++ b/content/shared/influxdb3-write-guides/use-telegraf/csv.md @@ -95,13 +95,9 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to write data to - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: - your {{< product-name >}} authorization token. + your {{< product-name >}} {{% token-link %}}. _Store this in a secret store or environment variable to avoid exposing the raw token string._ - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an arbitrary, non-empty token string. - > [!Tip] > > ##### Store your authorization token as an environment variable From 87f2ccccb0209c99736e74eec3f65002525c5a61 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:00:37 -0500 Subject: [PATCH 21/80] fix(influxdb3): Fix serve command --- content/influxdb3/enterprise/install/multi-server.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/influxdb3/enterprise/install/multi-server.md b/content/influxdb3/enterprise/install/multi-server.md index 3163ad468..5d5fa1d5a 100644 --- a/content/influxdb3/enterprise/install/multi-server.md +++ b/content/influxdb3/enterprise/install/multi-server.md @@ -73,7 +73,7 @@ with your `influxdb3 serve` command: {{% code-placeholders "AWS_(BUCKET_NAME|ACCESS_KEY_ID|SECRET_ACCESS_KEY)" %}} ```bash -influxdb3 server \ +influxdb3 serve \ # ... --object-store s3 \ --bucket AWS_BUCKET_NAME \ @@ -103,7 +103,7 @@ with your `influxdb3 serve` command: {{% code-placeholders "AZURE_(CONTAINER_NAME|STORAGE_ACCOUNT|STORAGE_ACCESS_KEY)" %}} ```bash -influxdb3 server \ +influxdb3 serve \ # ... --object-store azure \ --bucket AZURE_CONTAINER_NAME \ @@ -128,7 +128,7 @@ with your `influxdb3 serve` command: {{% code-placeholders "GOOGLE_(BUCKET_NAME|SERVICE_ACCOUNT)" %}} ```bash -influxdb3 server \ +influxdb3 serve \ # ... --object-store google \ --bucket GOOGLE_BUCKET_NAME \ @@ -163,7 +163,7 @@ Each node can run in one _or more_ of the following modes: #### Configure a node to only handle write requests ```bash -influxdb3 server \ +influxdb3 serve \ # ... --mode ingest ``` @@ -171,7 +171,7 @@ influxdb3 server \ #### Configure a node to only run the Compactor ```bash -influxdb3 server \ +influxdb3 serve \ # ... --mode compact ``` @@ -179,7 +179,7 @@ influxdb3 server \ #### Configure a handle query requests and run the processing engine ```bash -influxdb3 server \ +influxdb3 serve \ # ... --mode query,process ``` From 1da94dc050504453ac0fb90cf7fe4b3af054576e Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:05:07 -0500 Subject: [PATCH 22/80] chore(influxdb3): Install: cleanup, remove Docker compose --- content/shared/influxdb3/install.md | 214 ++++++++-------------------- 1 file changed, 62 insertions(+), 152 deletions(-) diff --git a/content/shared/influxdb3/install.md b/content/shared/influxdb3/install.md index a833376d6..e910453dd 100644 --- a/content/shared/influxdb3/install.md +++ b/content/shared/influxdb3/install.md @@ -4,6 +4,12 @@ - [Download {{% product-name %}} binaries](#download-influxdb-3-{{< product-key >}}-binaries) - [Docker image](#docker-image) +{{% show-in "enterprise" %}} +> [!Note] +> For information about setting up a multi-node {{% product-name %}} cluster, +> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). +{{% /show-in %}} + ## System Requirements #### Operating system @@ -21,119 +27,69 @@ Azure Blob Storage, and Google Cloud Storage. You can also use many local object storage implementations that provide an S3-compatible API, such as [Minio](https://min.io/). -## Quick install +## Install {{% product-name %}} -Use the InfluxDB 3 quick install script to install {{< product-name >}} on -**Linux** and **macOS**. +{{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. -> [!Important] -> If using Windows, [download the {{% product-name %}} Windows binary](?t=Windows#download-influxdb-3-{{< product-key >}}-binaries). +Choose one of the following methods to install {{% product-name %}}: -1. Use the following command to download and install the appropriate - {{< product-name >}} package on your local machine: -{{% show-in "enterprise" %}} - - ```bash - curl -O https://www.influxdata.com/d/install_influxdb3.sh \ - && sh install_influxdb3.sh {{% product-key %}} - ``` -{{% /show-in %}} -{{% show-in "core" %}} - - ```bash - curl -O https://www.influxdata.com/d/install_influxdb3.sh \ - && sh install_influxdb3.sh - ``` -{{% /show-in %}} +- [Quick install for Linux and macOS](#quick-install-for-linux-and-macos) +- [Download and install the latest build artifacts](#download-and-install-the-latest-build-artifacts) +- [Pull the Docker image](#pull-the-docker-image) -2. Verify that installation completed successfully: +### Quick install for Linux and macOS - ```bash - influxdb3 --version - ``` +To install {{% product-name %}} on **Linux** or **macOS**, download and run the quick +installer script for {{% product-name %}}--for example, using [`curl`](https://curl.se/) +to download the script: -> [!Note] -> -> #### influxdb3 not found -> -> If your system can't locate your `influxdb3` binary, `source` your -> current shell configuration file (`.bashrc`, `.zshrc`, etc.). -> -> {{< code-tabs-wrapper >}} -{{% code-tabs %}} -[.bashrc](#) -[.zshrc](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```bash -source ~/.bashrc -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} ```bash -source ~/.zshrc +curl -O https://www.influxdata.com/d/install_influxdb3.sh \ +&& sh install_influxdb3.sh {{% show-in "enterprise" %}}enterprise{{% /show-in %}} ``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} -## Download {{% product-name %}} binaries +> [!Note] +> The quick installer script is updated with each {{% product-name %}} release, +> so it always installs the latest version. -{{< tabs-wrapper >}} -{{% tabs %}} -[Linux](#) -[macOS](#) -[Windows](#) -{{% /tabs %}} -{{% tab-content %}} +### Download and install the latest build artifacts - +You can also download and install [{{% product-name %}} build artifacts](/influxdb3/enterprise/install/#download-influxdb-3-enterprise-binaries) directly: -- [{{< product-name >}} • Linux (AMD64, x86_64) • GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) +{{< expand-wrapper >}} +{{% expand "Linux binaries" %}} + +- [Linux | AMD64 (x86_64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_amd64.tar.gz.sha256) - -- [{{< product-name >}} • Linux (ARM64, AArch64) • GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) +- [Linux | ARM64 (AArch64) | GNU](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_linux_arm64.tar.gz.sha256) - +{{% /expand %}} +{{% expand "macOS binaries" %}} -{{% /tab-content %}} -{{% tab-content %}} - - - -- [{{< product-name >}} • macOS (Silicon, ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) +- [macOS | Silicon (ARM64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz) • [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}_darwin_arm64.tar.gz.sha256) > [!Note] > macOS Intel builds are coming soon. - +{{% /expand %}} +{{% expand "Windows binaries" %}} -{{% /tab-content %}} -{{% tab-content %}} +- [Windows (AMD64, x86_64) binary](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) + • +[sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) - +{{% /expand %}} +{{< /expand-wrapper >}} -- [{{< product-name >}} • Windows (AMD64, x86_64)](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip) - • - [sha256](https://dl.influxdata.com/influxdb/releases/influxdb3-{{< product-key >}}-{{< latest-patch >}}-windows_amd64.zip.sha256) +### Pull the Docker image - - -{{% /tab-content %}} -{{< /tabs-wrapper >}} - -## Docker image - -Use the `influxdb:3-{{< product-key >}}` Docker image to deploy {{< product-name >}} in a -Docker container. -The image is available for x86_64 (AMD64) and ARM64 architectures. - -### Use Docker CLI +Run the following command to pull the [`influxdb:3-{{< product-key >}}` image](https://hub.docker.com/_/influxdb/tags?tag=3-{{< product-key >}}&name=3-{{< product-key >}}), available for x86_64 (AMD64) and ARM64 architectures: ```bash @@ -142,6 +98,8 @@ docker pull influxdb:3-{{< product-key >}} Docker automatically pulls the appropriate image for your system architecture. +{{< expand-wrapper >}} +{{% expand "Pull for a specific system architecture" %}} To specify the system architecture, use platform-specific tags--for example: ```bash @@ -157,79 +115,31 @@ docker pull \ --platform linux/arm64 \ influxdb:3-{{< product-key >}} ``` +{{% /expand %}} +{{< /expand-wrapper >}} -> [!Note] -> The {{% product-name %}} Docker image exposes port `8181`, the `influxdb3` server default for HTTP connections. -> To map the exposed port to a different port when running a container, see the Docker guide for [Publishing and exposing ports](https://docs.docker.com/get-started/docker-concepts/running-containers/publishing-ports/). -### Use Docker Compose +### Verify the installation + +After installing {{% product-name %}}, enter the following command to verify +that it installed successfully: + +```bash +influxdb3 --version +``` + +If your system doesn't locate `influxdb3`, then `source` the configuration file (for example, .bashrc, .zshrc) for your shell--for example: + + +```zsh +source ~/.zshrc +``` {{% show-in "enterprise" %}} -1. Open `compose.yaml` for editing and add a `services` entry for {{% product-name %}}. - To generate a trial or at-home license for {{% product-name %}} when using Docker, you must pass the `--license-email` option or the `INFLUXDB3_LICENSE_EMAIL` environment variable the first time you start the server--for example: - - ```yaml - # compose.yaml - services: - influxdb3-{{< product-key >}}: - container_name: influxdb3-{{< product-key >}} - image: influxdb:3-{{< product-key >}} - ports: - - 8181:8181 - command: - - influxdb3 - - serve - - --node-id=node0 - - --cluster-id=cluster0 - - --object-store=file - - --data-dir=/var/lib/influxdb3 - - --plugins-dir=/var/lib/influxdb3-plugins - - --license-email=${INFLUXDB3_LICENSE_EMAIL} - ``` -{{% /show-in %}} -{{% show-in "core" %}} -1. Open `compose.yaml` for editing and add a `services` entry for {{% product-name %}}--for example: - - ```yaml - # compose.yaml - services: - influxdb3-{{< product-key >}}: - container_name: influxdb3-{{< product-key >}} - image: influxdb:3-{{< product-key >}} - ports: - - 8181:8181 - command: - - influxdb3 - - serve - - --node-id=node0 - - --object-store=file - - --data-dir=/var/lib/influxdb3 - - --plugins-dir=/var/lib/influxdb3-plugins - ``` -{{% /show-in %}} - -2. Use the Docker Compose CLI to start the server. - - Optional: to make sure you have the latest version of the image before you - start the server, run `docker compose pull`. - - - ```bash - docker compose pull && docker compose run influxdb3-{{< product-key >}} - ``` - > [!Note] -> #### Stopping an InfluxDB 3 container -> -> To stop a running InfluxDB 3 container, find and terminate the process or container--for example: -> -> -> ```bash -> docker container ls --filter "name=influxdb3" -> docker kill -> ``` -> -> Currently, a bug prevents using {{< keybind all="Ctrl+c" >}} in the terminal to stop an InfluxDB 3 container. +> For information about setting up a multi-node {{% product-name %}} cluster, +> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). +{{% /show-in %}} {{% show-in "enterprise" %}} {{< page-nav next="/influxdb3/enterprise/get-started/" nextText="Get started with InfluxDB 3 Enterprise" >}} From c3fe264766007206a41be51d1ebd0d8c3e5625fe Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:06:44 -0500 Subject: [PATCH 23/80] chore(influxdb3): Add next steps, cleanup --- .../influxdb3-get-started/processing-engine.md | 10 +++++++++- content/shared/influxdb3-get-started/query.md | 13 +++++-------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 16c244134..ff89d969c 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -257,4 +257,12 @@ influxdb3 enable trigger \ trigger1 ``` -For more information, see [Python plugins and the Processing engine](/influxdb3/version/plugins/). +## Next steps + +If you've completed this Get Started guide for {{% product-name %}}, +learn more about options and tools for: + +- [Writing data](/influxdb3/version/write-data/) +- [Querying data](/influxdb3/version/query-data/) +- [Processing data](/influxdb3/version/process-data/) +- [Visualizing data](/influxdb3/version/visualize-data/) diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 3c2861d50..cb952ce42 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -36,14 +36,11 @@ and provide the following: The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. -| Option | Description | Required | -|---------|-------------|--------------| -| `--host` | The host URL of the server [default: `http://127.0.0.1:8181`] to query | No | -| `--database` | The name of the database to operate on | Yes | -| `--token` | The authentication token for the {{% product-name %}} server | No | -| `--language` | The query language of the provided query string [default: `sql`] [possible values: `sql`, `influxql`] | No | -| `--format` | The format in which to output the query [default: `pretty`] [possible values: `pretty`, `json`, `jsonl`, `csv`, `parquet`] | No | -| `--output` | The path to output data to | No | +> [!Important] +> If the `INFLUXDB3_AUTH_TOKEN` environment variable defined in +> [Set up {{% product-name %}}](/influxdb3/version/get-started/setup/#set-your-token-for-authorization) +> isn't set in your environment, set it or provide your token using +> the `-t, --token` option in your command. #### Example: query `“SHOW TABLES”` on the `servers` database: From 14a6f408304d8f6110a9f6dd8056c5ee6749beaf Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:08:15 -0500 Subject: [PATCH 24/80] fix(influxdb3): Remove beta note, uncomment token usage --- .../shared/influxdb3-admin/databases/create.md | 5 +---- .../shared/influxdb3-admin/databases/delete.md | 5 +---- content/shared/influxdb3-admin/databases/list.md | 5 +---- .../execute-queries/influxdb3-cli.md | 16 +++++++++++----- .../use-telegraf/dual-write.md | 7 +------ 5 files changed, 15 insertions(+), 23 deletions(-) diff --git a/content/shared/influxdb3-admin/databases/create.md b/content/shared/influxdb3-admin/databases/create.md index a8cd0f8fe..76f6cc699 100644 --- a/content/shared/influxdb3-admin/databases/create.md +++ b/content/shared/influxdb3-admin/databases/create.md @@ -4,10 +4,7 @@ to create a database in {{< product-name >}}. Provide the following: - Database name _(see [Database naming restrictions](#database-naming-restrictions))_ -- {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. +- {{< product-name >}} {{% token-link "admin" "admin" %}} diff --git a/content/shared/influxdb3-admin/databases/delete.md b/content/shared/influxdb3-admin/databases/delete.md index 9e3354967..80190b2c1 100644 --- a/content/shared/influxdb3-admin/databases/delete.md +++ b/content/shared/influxdb3-admin/databases/delete.md @@ -11,10 +11,7 @@ to delete a database from {{< product-name >}}. Provide the following: - Name of the database to delete -- {{< product-name >}} authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. +- - {{< product-name >}} {{% token-link "admin" "admin" %}} {{% code-placeholders "DATABASE_NAME" %}} ```sh diff --git a/content/shared/influxdb3-admin/databases/list.md b/content/shared/influxdb3-admin/databases/list.md index 109f09d94..1954dcb48 100644 --- a/content/shared/influxdb3-admin/databases/list.md +++ b/content/shared/influxdb3-admin/databases/list.md @@ -6,10 +6,7 @@ Provide the following: - _(Optional)_ [Output format](#output-formats) with the `--format` option - _(Optional)_ [Show deleted databases](list-deleted-databasese) with the `--show-deleted` option - - {{< product-name >}} authorization token with the `-t`, `--token` option - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. + - {{< product-name >}} {{% token-link "admin" "admin" %}} with the `-t`, `--token` option ```sh influxdb3 show databases diff --git a/content/shared/influxdb3-query-guides/execute-queries/influxdb3-cli.md b/content/shared/influxdb3-query-guides/execute-queries/influxdb3-cli.md index 49468f277..23edcb6c1 100644 --- a/content/shared/influxdb3-query-guides/execute-queries/influxdb3-cli.md +++ b/content/shared/influxdb3-query-guides/execute-queries/influxdb3-cli.md @@ -4,12 +4,12 @@ to query data in {{< product-name >}} with SQL or InfluxQL. Provide the following with your command: - + - `INFLUXDB3_AUTH_TOKEN` environment variable - **Database name**: The name of the database to query. Provide this using one of the following: @@ -53,6 +53,7 @@ Provide the following with your command: ```bash influxdb3 query \ + --token AUTH_TOKEN \ --database DATABASE_NAME \ "SELECT * FROM home" ``` @@ -62,6 +63,7 @@ influxdb3 query \ ```bash influxdb3 query \ + --token AUTH_TOKEN \ --database DATABASE_NAME \ --file ./query.sql ``` @@ -70,7 +72,7 @@ influxdb3 query \ ```bash -cat ./query.sql | influxdb3 query --database DATABASE_NAME +cat ./query.sql | influxdb3 query --token AUTH_TOKEN --database DATABASE_NAME ``` {{% /code-tab-content %}} {{< /code-tabs-wrapper >}} @@ -94,6 +96,7 @@ cat ./query.sql | influxdb3 query --database DATABASE_NAME ```bash influxdb3 query \ + --token AUTH_TOKEN \ --language influxql \ --database DATABASE_NAME \ "SELECT * FROM home" @@ -104,8 +107,8 @@ influxdb3 query \ ```bash influxdb3 query \ + --token AUTH_TOKEN \ --language influxql \ - --database DATABASE_NAME \ --file ./query.influxql ``` {{% /code-tab-content %}} @@ -114,6 +117,7 @@ influxdb3 query \ ```bash cat ./query.influxql | influxdb3 query \ + --token AUTH_TOKEN \ --language influxql \ --database DATABASE_NAME ``` @@ -150,6 +154,7 @@ Use the `--format` flag to specify the output format: {{% influxdb/custom-timestamps %}} ```sh influxdb3 query \ + --token AUTH_TOKEN \ --database DATABASE_NAME \ --format json \ "SELECT * FROM home WHERE time >= '2022-01-01T08:00:00Z' LIMIT 5" @@ -217,6 +222,7 @@ the `influxdb3 query` command: {{% influxdb/custom-timestamps %}} ```sh influxdb3 query \ + --token AUTH_TOKEN \ --database DATABASE_NAME \ --format parquet \ --output path/to/results.parquet \ diff --git a/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md b/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md index f557781a0..938c67ae8 100644 --- a/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md +++ b/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md @@ -5,7 +5,7 @@ to a separate instance or for migrating from other versions of InfluxDB to {{< product-name >}}. The following example configures Telegraf for dual writing to {{% product-name %}} and an InfluxDB v2 OSS instance. - +Specifically, it uses the the following: - The [InfluxDB v2 output plugin](https://github.com/influxdata/telegraf/tree/master/plugins/outputs/influxdb_v2) twice--the first pointing to {{< product-name >}} and the other to an @@ -14,11 +14,6 @@ The following example configures Telegraf for dual writing to {{% product-name % Configure both tokens as environment variables and use string interpolation in your Telegraf configuration file to reference each environment variable. - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - > For the `token` option, provide an arbitrary, non-empty token string. - - ## Sample configuration ```toml From 6041afb396a8985516ae15b59eebbab0a27744e8 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:09:18 -0500 Subject: [PATCH 25/80] chore(influxdb3): Add auth header to API request samples --- .../query-system-data/_index.md | 4 +- .../shared/influxdb3-admin/tokens/_index.md | 44 +++++++++++++++++-- .../execute-queries/influxdb3-api.md | 19 +++++--- 3 files changed, 55 insertions(+), 12 deletions(-) diff --git a/content/shared/influxdb3-admin/query-system-data/_index.md b/content/shared/influxdb3-admin/query-system-data/_index.md index 508cdc34b..c3ef83994 100644 --- a/content/shared/influxdb3-admin/query-system-data/_index.md +++ b/content/shared/influxdb3-admin/query-system-data/_index.md @@ -93,7 +93,7 @@ that surround field names._ ```bash curl "http://localhost:8181/api/v3/query_sql" \ - --header "Content-Type: application/json" \ + --header "Authorization: Bearer AUTH_TOKEN" \ --json '{ "db": "mydb", "q": "SELECT * FROM information_schema.columns WHERE table_schema = '"'iox'"' AND table_name = '"'system_swap'"'", @@ -120,7 +120,7 @@ To view recently executed queries, query the `queries` system table: ```bash curl "http://localhost:8181/api/v3/query_sql" \ - --header "Content-Type: application/json" \ + --header "Authorization: Bearer AUTH_TOKEN" --json '{ "db": "mydb", "q": "SELECT * FROM system.queries LIMIT 2", diff --git a/content/shared/influxdb3-admin/tokens/_index.md b/content/shared/influxdb3-admin/tokens/_index.md index 2ab0675ae..5e80da36f 100644 --- a/content/shared/influxdb3-admin/tokens/_index.md +++ b/content/shared/influxdb3-admin/tokens/_index.md @@ -12,7 +12,7 @@ The mechanism for providing your token depends on the client you use to interact {{< tabs-wrapper >}} {{% tabs %}} [influxdb3 CLI](#influxdb3-cli-auth) -[cURL](#curl-auth) +[HTTP API](#http-api-auth) {{% /tabs %}} {{% tab-content %}} @@ -49,6 +49,12 @@ authorization token to all `influxdb3` commands. {{% /tab-content %}} {{% tab-content %}} +To authenticate directly to the HTTP API, you can include your authorization token in the HTTP Authorization header of your request. +The `Authorization: Bearer AUTH_TOKEN` scheme works with all HTTP API endpoints that require authentication. + +The following examples use `curl` to show to authenticate to the HTTP API. + + {{% code-placeholders "YOUR_AUTH_TOKEN" %}} ```bash # Add your token to the HTTP Authorization header @@ -57,14 +63,46 @@ curl "http://{{< influxdb/host >}}/api/v3/query_sql" \ --data-urlencode "db=DATABASE_NAME" \ --data-urlencode "q=SELECT * FROM 'DATABASE_NAME' WHERE time > now() - INTERVAL '10 minutes'" ``` -{{% /code-placeholders %}} +### Authenticate using v1 and v2 compatibility + +```bash +# Token scheme with v2 /api/v2/write +curl http://localhost:8181/api/v2/write\?bucket\=DATABASE_NAME \ + --header "Authorization: Token YOUR_AUTH_TOKEN" \ + --data-raw "home,room=Kitchen temp=23.5 1622547800" +``` + +```bash +# Basic scheme with v1 /write +# Username is ignored, but required for the request +# Password is your auth token encoded in base64 +curl "http://localhost:8181/write?db=DATABASE_NAME" \ + --user "admin:YOUR_AUTH_TOKEN" \ + --data-raw "home,room=Kitchen temp=23.5 1622547800" +``` + +```bash +# URL auth parameters with v1 /write +# Username is ignored, but required for the request +curl "http://localhost:8181/write?db=DATABASE_NAME&u=admin&p=YOUR_AUTH_TOKEN" \ + --data-raw "home,room=Kitchen temp=23.5 1622547800" +``` +{{% /code-placeholders %}} {{% /tab-content %}} {{< /tabs-wrapper >}} Replace the following with your values: - {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database you want to query +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/databases) you want to query + +To use tokens with other clients for {{< product-name >}}, +see the client-specific documentation: + +- [InfluxDB 3 Explorer](/influxdb3/explorer/) +- [InfluxDB client libraries](/influxdb3/version/reference/client-libraries/) +- [Telegraf](/telegraf/v1/) +- [Grafana](/influxdb3/version/visualize-data/grafana/) {{< children hlevel="h2" readmore=true hr=true >}} diff --git a/content/shared/influxdb3-query-guides/execute-queries/influxdb3-api.md b/content/shared/influxdb3-query-guides/execute-queries/influxdb3-api.md index a8ab9d018..ef8f0c6a1 100644 --- a/content/shared/influxdb3-query-guides/execute-queries/influxdb3-api.md +++ b/content/shared/influxdb3-query-guides/execute-queries/influxdb3-api.md @@ -35,7 +35,8 @@ Include the following parameters: The following example sends an HTTP `GET` request with a URL-encoded SQL query: ```bash -curl -v "http://{{< influxdb/host >}}/api/v3/query_sql?db=servers&q=select+*+from+cpu+limit+5" +curl "http://{{< influxdb/host >}}/api/v3/query_sql?db=servers&q=select+*+from+cpu+limit+5" \ + --header "Authorization: Bearer AUTH_TOKEN" ``` ### Example: Query passing JSON parameters @@ -44,7 +45,8 @@ The following example sends an HTTP `POST` request with parameters in a JSON pay ```bash curl http://{{< influxdb/host >}}/api/v3/query_sql \ - --data '{"db": "server", "q": "select * from cpu limit 5"}' + --header "Authorization: Bearer AUTH_TOKEN" + --json '{"db": "server", "q": "select * from cpu limit 5"}' ``` ### Query system information @@ -71,7 +73,8 @@ tables (`"table_schema":"iox"`), system tables, and information schema tables for a database: ```bash -curl "http://{{< influxdb/host >}}/api/v3/query_sql?db=mydb&format=jsonl&q=show%20tables" +curl "http://{{< influxdb/host >}}/api/v3/query_sql?db=mydb&format=jsonl&q=show%20tables" \ + --header "Authorization: Bearer AUTH_TOKEN" ``` The response body contains the following JSONL: @@ -117,7 +120,7 @@ that surround field names._ ```bash curl "http://localhost:8181/api/v3/query_sql" \ - --header "Content-Type: application/json" \ + --header "Authorization: Bearer AUTH_TOKEN" \ --json '{ "db": "mydb", "q": "SELECT * FROM information_schema.columns WHERE table_schema = '"'iox'"' AND table_name = '"'system_swap'"'", @@ -144,7 +147,7 @@ To view recently executed queries, query the `queries` system table: ```bash curl "http://localhost:8181/api/v3/query_sql" \ - --header "Content-Type: application/json" \ + --header "Authorization: Bearer AUTH_TOKEN" \ --json '{ "db": "mydb", "q": "SELECT * FROM system.queries LIMIT 2", @@ -180,7 +183,8 @@ Include the following parameters: The following example sends an HTTP `GET` request with a URL-encoded InfluxQL query: ```bash -curl -v "http://{{< influxdb/host >}}/api/v3/query_influxql?db=servers&q=select+*+from+cpu+limit+5" +curl "http://{{< influxdb/host >}}/api/v3/query_influxql?db=servers&q=select+*+from+cpu+limit+5" \ + --header "Authorization: Bearer AUTH_TOKEN" ``` ### Example: Query passing JSON parameters @@ -189,5 +193,6 @@ The following example sends an HTTP `POST` request with parameters in a JSON pay ```bash curl http://{{< influxdb/host >}}/api/v3/query_influxql \ - --data '{"db": "server", "q": "select * from cpu limit 5"}' + --header "Authorization: Bearer AUTH_TOKEN" \ + --json '{"db": "server", "q": "select * from cpu limit 5"}' ``` \ No newline at end of file From 57d73b141e1721017ebe2df1d251937f5a6487bb Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 15:49:59 -0500 Subject: [PATCH 26/80] fix(influxdb3): Client library write guide: Refactor, reorganize, and cleanup --- .../client-libraries.md | 357 ++++++++++-------- 1 file changed, 204 insertions(+), 153 deletions(-) diff --git a/content/shared/influxdb3-write-guides/client-libraries.md b/content/shared/influxdb3-write-guides/client-libraries.md index bfd690f5b..66559b108 100644 --- a/content/shared/influxdb3-write-guides/client-libraries.md +++ b/content/shared/influxdb3-write-guides/client-libraries.md @@ -7,17 +7,217 @@ as time series points, and then write them as line protocol to an - [Set up your project](#set-up-your-project) - [Construct points and write line protocol](#construct-points-and-write-line-protocol) +## Set up your project + +Set up your {{< product-name >}} project and credentials +to write data using the InfluxDB 3 client library for your programming language +of choice. + +1. [Install {{< product-name >}}](/influxdb3/version/get-started/install/) +2. [Set up {{< product-name >}}](/influxdb3/version/get-started/setup/) +3. Create a project directory and store your + {{< product-name >}} credentials as environment variables or in a project + configuration file, such as a `.env` ("dotenv") file. + +After setting up {{< product-name >}} and your project, you should have the following: + +- {{< product-name >}} credentials: + + - [Database](/influxdb3/version/admin/databases/) + - [Authorization token](/influxdb3/version/admin/tokens/) + - {{% product-name %}} URL + +- A directory for your project. +- Credentials stored as environment variables or in a project configuration + file--for example, a `.env` ("dotenv") file. + +### Initialize a project directory + +Create a project directory and initialize it for your programming language. + + + +{{< tabs-wrapper >}} +{{% tabs %}} +[Go](#) +[Node.js](#) +[Python](#) +{{% /tabs %}} +{{% tab-content %}} + + +1. Install [Go 1.13 or later](https://golang.org/doc/install). + +2. Create a directory for your Go module and change to the directory--for + example: + + ```sh + mkdir iot-starter-go && cd $_ + ``` + +3. Initialize a Go module--for example: + + ```sh + go mod init iot-starter + ``` + + + +{{% /tab-content %}} +{{% tab-content %}} + + +1. Install [Node.js](https://nodejs.org/en/download/). + +2. Create a directory for your JavaScript project and change to the + directory--for example: + + ```sh + mkdir -p iot-starter-js && cd $_ + ``` + +3. Initialize a project--for example, using `npm`: + + + + ```sh + npm init + ``` + + +{{% /tab-content %}} +{{% tab-content %}} + + +1. Install [Python](https://www.python.org/downloads/) + +2. Inside of your project directory, create a directory for your Python module + and change to the module directory--for example: + + ```sh + mkdir -p iot-starter-py && cd $_ + ``` + +3. **Optional, but recommended**: Use + [`venv`](https://docs.python.org/3/library/venv.html) or + [`conda`](https://docs.continuum.io/anaconda/install/) to activate a virtual + environment for installing and executing code--for example, enter the + following command using `venv` to create and activate a virtual environment + for the project: + + ```bash + python3 -m venv envs/iot-starter && source ./envs/iot-starter/bin/activate + ``` + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +### Install the client library + +Install the InfluxDB 3 client library for your programming language of choice. + +{{< tabs-wrapper >}} +{{% tabs %}} +[C#](#) +[Go](#) +[Java](#) +[Node.js](#) +[Python](#) +{{% /tabs %}} +{{% tab-content %}} + +Add the [InfluxDB 3 C# client library](https://github.com/InfluxCommunity/influxdb3-csharp) to your project using the +[`dotnet` CLI](https://docs.microsoft.com/dotnet/core/tools/dotnet) or +by adding the package to your project file--for example: + +```bash +dotnet add package InfluxDB3.Client +``` + +{{% /tab-content %}} +{{% tab-content %}} + +Add the +[InfluxDB 3 Go client library](https://github.com/InfluxCommunity/influxdb3-go) +to your project using the +[`go get` command](https://golang.org/cmd/go/#hdr-Add_dependencies_to_current_module_and_install_them)--for example: + +```bash +go mod init path/to/project/dir && cd $_ +go get github.com/InfluxCommunity/influxdb3-go/v2/influxdb3 +``` + +{{% /tab-content %}} +{{% tab-content %}} + +Add the [InfluxDB 3 Java client library](https://github.com/InfluxCommunity/influxdb3-java) to your project dependencies using +the [Maven](https://maven.apache.org/) +[Gradle](https://gradle.org/) build tools. + +For example, to add the library to a Maven project, add the following dependency +to your `pom.xml` file: + +```xml + + com.influxdb + influxdb3-java + 1.1.0 + +``` + +To add the library to a Gradle project, add the following dependency to your `build.gradle` file: + +```groovy +dependencies { + implementation 'com.influxdb:influxdb3-java:1.1.0' +} +``` + +{{% /tab-content %}} +{{% tab-content %}} + +For a Node.js project, use `@influxdata/influxdb3-client`, which provides main (CommonJS), +module (ESM), and browser (UMD) exports. +Add the [InfluxDB 3 JavaScript client library](https://github.com/InfluxCommunity/influxdb3-js) using your preferred package manager--for example, using [`npm`](https://www.npmjs.com/): + +```bash +npm install --save @influxdata/influxdb3-client +``` + +{{% /tab-content %}} +{{% tab-content %}} + +Install the [InfluxDB 3 Python client library](https://github.com/InfluxCommunity/influxdb3-python) using +[`pip`](https://pypi.org/project/pip/). +To use Pandas features, such as `to_pandas()`, provided by the Python +client library, you must also install the +[`pandas` package](https://pandas.pydata.org/). + +```bash +pip install influxdb3-python pandas +``` + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + ### Construct line protocol With a [basic understanding of line protocol](/influxdb3/version/write-data/#line-protocol), you can construct line protocol data and write it to {{% product-name %}}. -All InfluxDB client libraries write data in line protocol format to InfluxDB. -Client library `write` methods let you provide data as raw line protocol or as -`Point` objects that the client library converts to line protocol. If your -program creates the data you write to InfluxDB, use the client library `Point` +Use client library write methods to provide data as raw line protocol +or as `Point` objects that the client library converts to line protocol. +If your program creates the data you write to InfluxDB, the `Point` interface to take advantage of type safety in your program. +Client libraries provide one or more `Point` constructor methods. Some libraries +support language-native data structures, such as Go's `struct`, for creating +points. + +Examples in this guide show how to construct `Point` objects that follow the [example `home` schema](#example-home-schema), +and then write the points as line protocol data to an {{% product-name %}} database. + #### Example home schema Consider a use case where you collect data from sensors in your home. Each @@ -36,155 +236,6 @@ To collect this data, use the following schema: - `co`: carbon monoxide in parts per million (integer) - **timestamp**: Unix timestamp in _second_ precision - - -The following example shows how to construct and write points that follow the -`home` schema. - -### Set up your project - -After setting up {{< product-name >}} and your project, you should have the following: - -- {{< product-name >}} credentials: - - - [Database](/influxdb3/version/admin/databases/) - - Authorization token - - > [!Note] - > While in beta, {{< product-name >}} does not require an authorization token. - - - {{% product-name %}} URL - -- A directory for your project. - -- Credentials stored as environment variables or in a project configuration - file--for example, a `.env` ("dotenv") file. - -- Client libraries installed for writing data to {{< product-name >}}. - -The following examples use InfluxDB 3 client libraries to show how to construct -`Point` objects that follow the [example `home` schema](#example-home-schema), -and then write the data as line protocol to an {{% product-name %}} database. - -{{< tabs-wrapper >}} -{{% tabs %}} -[Go](#) -[Node.js](#) -[Python](#) -{{% /tabs %}} -{{% tab-content %}} - -The following steps set up a Go project using the -[InfluxDB 3 Go client](https://github.com/InfluxCommunity/influxdb3-go/): - - - -1. Install [Go 1.13 or later](https://golang.org/doc/install). - -1. Create a directory for your Go module and change to the directory--for - example: - - ```sh - mkdir iot-starter-go && cd $_ - ``` - -1. Initialize a Go module--for example: - - ```sh - go mod init iot-starter - ``` - -1. Install [`influxdb3-go`](https://github.com/InfluxCommunity/influxdb3-go/), - which provides the InfluxDB `influxdb3` Go client library module. - - ```sh - go get github.com/InfluxCommunity/influxdb3-go/v2 - ``` - - - -{{% /tab-content %}} {{% tab-content %}} - - - -The following steps set up a JavaScript project using the -[InfluxDB 3 JavaScript client](https://github.com/InfluxCommunity/influxdb3-js/). - -1. Install [Node.js](https://nodejs.org/en/download/). - -1. Create a directory for your JavaScript project and change to the - directory--for example: - - ```sh - mkdir -p iot-starter-js && cd $_ - ``` - -1. Initialize a project--for example, using `npm`: - - - - ```sh - npm init - ``` - -1. Install the `@influxdata/influxdb3-client` InfluxDB 3 JavaScript client - library. - - ```sh - npm install @influxdata/influxdb3-client - ``` - - - -{{% /tab-content %}} {{% tab-content %}} - - - -The following steps set up a Python project using the -[InfluxDB 3 Python client](https://github.com/InfluxCommunity/influxdb3-python/): - -1. Install [Python](https://www.python.org/downloads/) - -1. Inside of your project directory, create a directory for your Python module - and change to the module directory--for example: - - ```sh - mkdir -p iot-starter-py && cd $_ - ``` - -1. **Optional, but recommended**: Use - [`venv`](https://docs.python.org/3/library/venv.html) or - [`conda`](https://docs.continuum.io/anaconda/install/) to activate a virtual - environment for installing and executing code--for example, enter the - following command using `venv` to create and activate a virtual environment - for the project: - - ```bash - python3 -m venv envs/iot-starter && source ./envs/iot-starter/bin/activate - ``` - -1. Install - [`influxdb3-python`](https://github.com/InfluxCommunity/influxdb3-python), - which provides the InfluxDB `influxdb_client_3` Python client library module - and also installs the - [`pyarrow` package](https://arrow.apache.org/docs/python/index.html) for - working with Arrow data. - - ```sh - pip install influxdb3-python - ``` - - - -{{% /tab-content %}} -{{< /tabs-wrapper >}} - -#### Construct points and write line protocol - -Client libraries provide one or more `Point` constructor methods. Some libraries -support language-native data structures, such as Go's `struct`, for creating -points. - {{< tabs-wrapper >}} {{% tabs %}} [Go](#) From af0ffaf663e4ee65b4eb730ca182ee93839828e6 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 16:05:45 -0500 Subject: [PATCH 27/80] fix(influxdb3): Broken anchor links --- content/shared/influxdb3-get-started/_index.md | 2 +- content/shared/influxdb3-get-started/query.md | 4 ++-- content/shared/influxdb3-sample-data/sample-data.md | 2 +- .../shared/influxdb3-write-guides/client-libraries.md | 9 +++++---- content/shared/influxdb3/install.md | 10 ++++++---- 5 files changed, 15 insertions(+), 12 deletions(-) diff --git a/content/shared/influxdb3-get-started/_index.md b/content/shared/influxdb3-get-started/_index.md index 427f7b171..c5a7f60dc 100644 --- a/content/shared/influxdb3-get-started/_index.md +++ b/content/shared/influxdb3-get-started/_index.md @@ -54,7 +54,7 @@ This tutorial covers many of the recommended tools. | [InfluxDB 3 client libraries](/influxdb3/version/reference/client-libraries/v3/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | | [InfluxDB v2 client libraries](/influxdb3/version/reference/client-libraries/v2/) | - | **{{< icon "check" >}}** | - | | [InfluxDB v1 client libraries](/influxdb3/version/reference/client-libraries/v1/) | - | **{{< icon "check" >}}** | **{{< icon "check" >}}** | -| [InfluxDB 3 processing engine](#python-plugins-and-the-processing-engine) | | **{{< icon "check" >}}** | **{{< icon "check" >}}** | +| [InfluxDB 3 processing engine](/influxdb3/version/plugins/) | | **{{< icon "check" >}}** | **{{< icon "check" >}}** | | [Telegraf](/telegraf/v1/) | - | **{{< icon "check" >}}** | - | | [Chronograf](/chronograf/v1/) | - | - | - | | `influx` CLI | - | - | - | diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index cb952ce42..319a8ef63 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -476,8 +476,8 @@ InfluxQL and the established InfluxQL-related APIs you have been using. {{% product-name %}} provides the following optimization options to improve specific kinds of queries: -- [Last values cache](#last-value-cache) -- [Distinct values cache](#distinct-value-cache) +- [Last values cache](#last-values-cache) +- [Distinct values cache](#distinct-values-cache) {{% show-in "enterprise" %}}- [File indexes](#file-indexes){{% /show-in %}} ### Last values cache diff --git a/content/shared/influxdb3-sample-data/sample-data.md b/content/shared/influxdb3-sample-data/sample-data.md index 08a7bb513..213806595 100644 --- a/content/shared/influxdb3-sample-data/sample-data.md +++ b/content/shared/influxdb3-sample-data/sample-data.md @@ -225,7 +225,7 @@ Replace the following in the sample script: ## Home sensor actions data -Includes hypothetical actions triggered by data in the [Get started home sensor data](#get-started-home-sensor-data) +Includes hypothetical actions triggered by data in the [home sensor data](#home-sensor-data) and is a companion dataset to that sample dataset. To customize timestamps in the dataset, use the {{< icon "clock" >}} button in the lower right corner of the page. diff --git a/content/shared/influxdb3-write-guides/client-libraries.md b/content/shared/influxdb3-write-guides/client-libraries.md index 66559b108..e7fdbdef2 100644 --- a/content/shared/influxdb3-write-guides/client-libraries.md +++ b/content/shared/influxdb3-write-guides/client-libraries.md @@ -2,10 +2,11 @@ Use InfluxDB 3 client libraries that integrate with your code to construct data as time series points, and then write them as line protocol to an {{% product-name %}} database. +- [Set up your project](#set-up-your-project) + - [Initialize a project directory](#initialize-a-project-directory) + - [Install the client library](#install-the-client-library) - [Construct line protocol](#construct-line-protocol) - [Example home schema](#example-home-schema) -- [Set up your project](#set-up-your-project) -- [Construct points and write line protocol](#construct-points-and-write-line-protocol) ## Set up your project @@ -201,7 +202,7 @@ pip install influxdb3-python pandas {{% /tab-content %}} {{< /tabs-wrapper >}} -### Construct line protocol +## Construct line protocol With a [basic understanding of line protocol](/influxdb3/version/write-data/#line-protocol), you can construct line protocol data and write it to {{% product-name %}}. @@ -218,7 +219,7 @@ points. Examples in this guide show how to construct `Point` objects that follow the [example `home` schema](#example-home-schema), and then write the points as line protocol data to an {{% product-name %}} database. -#### Example home schema +### Example home schema Consider a use case where you collect data from sensors in your home. Each sensor collects temperature, humidity, and carbon monoxide readings. diff --git a/content/shared/influxdb3/install.md b/content/shared/influxdb3/install.md index e910453dd..213681429 100644 --- a/content/shared/influxdb3/install.md +++ b/content/shared/influxdb3/install.md @@ -1,8 +1,10 @@ - [System Requirements](#system-requirements) -- [Quick install](#quick-install) -- [Download {{% product-name %}} binaries](#download-influxdb-3-{{< product-key >}}-binaries) -- [Docker image](#docker-image) +- [Install](#install) + - [Quick install for Linux and macOS](#quick-install-for-linux-and-macos) + - [Download and install the latest build artifacts](#download-and-install-the-latest-build-artifacts) + - [Pull the Docker image](#pull-the-docker-image) + - [Verify the installation](#verify-the-installation) {{% show-in "enterprise" %}} > [!Note] @@ -27,7 +29,7 @@ Azure Blob Storage, and Google Cloud Storage. You can also use many local object storage implementations that provide an S3-compatible API, such as [Minio](https://min.io/). -## Install {{% product-name %}} +## Install {{% product-name %}} runs on **Linux**, **macOS**, and **Windows**. From 069dc2d03948ea38ec6be971bfb186bca3267161 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 16:14:21 -0500 Subject: [PATCH 28/80] fix: install link --- content/shared/influxdb3-write-guides/client-libraries.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/influxdb3-write-guides/client-libraries.md b/content/shared/influxdb3-write-guides/client-libraries.md index e7fdbdef2..e33d59122 100644 --- a/content/shared/influxdb3-write-guides/client-libraries.md +++ b/content/shared/influxdb3-write-guides/client-libraries.md @@ -14,7 +14,7 @@ Set up your {{< product-name >}} project and credentials to write data using the InfluxDB 3 client library for your programming language of choice. -1. [Install {{< product-name >}}](/influxdb3/version/get-started/install/) +1. [Install {{< product-name >}}](/influxdb3/version/install/) 2. [Set up {{< product-name >}}](/influxdb3/version/get-started/setup/) 3. Create a project directory and store your {{< product-name >}} credentials as environment variables or in a project From eb90b04a35d712e33256bd4483906670b7a7fa73 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 16:29:23 -0500 Subject: [PATCH 29/80] fix(influxdb3): link, rename get-started/processing-engine to get-started/process --- .../core/get-started/{processing-engine.md => process.md} | 3 +++ .../get-started/{processing-engine.md => process.md} | 3 +++ content/shared/influxdb3-get-started/query.md | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) rename content/influxdb3/core/get-started/{processing-engine.md => process.md} (87%) rename content/influxdb3/enterprise/get-started/{processing-engine.md => process.md} (86%) diff --git a/content/influxdb3/core/get-started/processing-engine.md b/content/influxdb3/core/get-started/process.md similarity index 87% rename from content/influxdb3/core/get-started/processing-engine.md rename to content/influxdb3/core/get-started/process.md index 0d98ad8b0..5fb233f0e 100644 --- a/content/influxdb3/core/get-started/processing-engine.md +++ b/content/influxdb3/core/get-started/process.md @@ -11,6 +11,9 @@ menu: identifier: gs-process-data parent: Get started weight: 104 +aliases: + - /influxdb3/core/get-started/process-data/ + - /influxdb3/core/get-started/processing-engine/ related: - /influxdb3/core/plugins/ - /influxdb3/core/reference/cli/influxdb3/create/plugin/ diff --git a/content/influxdb3/enterprise/get-started/processing-engine.md b/content/influxdb3/enterprise/get-started/process.md similarity index 86% rename from content/influxdb3/enterprise/get-started/processing-engine.md rename to content/influxdb3/enterprise/get-started/process.md index 30a2738a4..27c544d30 100644 --- a/content/influxdb3/enterprise/get-started/processing-engine.md +++ b/content/influxdb3/enterprise/get-started/process.md @@ -11,6 +11,9 @@ menu: identifier: gs-process-data parent: Get started weight: 104 +aliases: + - /influxdb3/enterprise/get-started/process-data/ + - /influxdb3/enterprise/get-started/processing-engine/ related: - /influxdb3/enterprise/plugins/ - /influxdb3/enterprise/reference/cli/influxdb3/create/plugin/ diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index 319a8ef63..a5f4729f7 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -514,6 +514,6 @@ or specific tables. For more information, see {{% page-nav prev="/influxdb3/version/get-started/write/" prevText="Write data" - next="/influxdb3/version/get-started/processing-engine/" + next="/influxdb3/version/get-started/process/" nextText="Processing engine" %}} From 7df48daedaa9c1abf1cab1c017f46ad37c034f22 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 20 Jun 2025 16:39:45 -0500 Subject: [PATCH 30/80] fix(influxdb3): links --- content/shared/influxdb3-admin/tokens/_index.md | 2 +- .../shared/influxdb3-get-started/processing-engine.md | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/content/shared/influxdb3-admin/tokens/_index.md b/content/shared/influxdb3-admin/tokens/_index.md index 5e80da36f..b2591ef98 100644 --- a/content/shared/influxdb3-admin/tokens/_index.md +++ b/content/shared/influxdb3-admin/tokens/_index.md @@ -95,7 +95,7 @@ curl "http://localhost:8181/write?db=DATABASE_NAME&u=admin&p=YOUR_AUTH_TOKEN" \ Replace the following with your values: - {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/databases) you want to query +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the [database](/influxdb3/version/admin/databases) you want to query To use tokens with other clients for {{< product-name >}}, see the client-specific documentation: diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index ff89d969c..61fdea952 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -260,9 +260,9 @@ influxdb3 enable trigger \ ## Next steps If you've completed this Get Started guide for {{% product-name %}}, -learn more about options and tools for: +learn more about tools and options for: -- [Writing data](/influxdb3/version/write-data/) -- [Querying data](/influxdb3/version/query-data/) -- [Processing data](/influxdb3/version/process-data/) -- [Visualizing data](/influxdb3/version/visualize-data/) +- [writing data](/influxdb3/version/write-data/) +- [querying data](/influxdb3/version/query-data/) +- [the processing engine and plugins](/influxdb3/version/plugins/) +- [visualizing data](/influxdb3/version/visualize-data/) From 9ddc14a06b9d46c9f50be2c93b225a6f2792228a Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 09:17:04 -0500 Subject: [PATCH 31/80] fix(influxdb3): Case --- content/shared/influxdb3-get-started/processing-engine.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 61fdea952..185bcd632 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -262,7 +262,7 @@ influxdb3 enable trigger \ If you've completed this Get Started guide for {{% product-name %}}, learn more about tools and options for: -- [writing data](/influxdb3/version/write-data/) -- [querying data](/influxdb3/version/query-data/) -- [the processing engine and plugins](/influxdb3/version/plugins/) -- [visualizing data](/influxdb3/version/visualize-data/) +- [Writing data](/influxdb3/version/write-data/) +- [Querying data](/influxdb3/version/query-data/) +- [Processing data with plugins](/influxdb3/version/plugins/) +- [Visualizing data](/influxdb3/version/visualize-data/) From 6caffd5bfbbf558c6129e7f99e014c10e6ace07a Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 10:54:13 -0500 Subject: [PATCH 32/80] chore(pytest): Bump min version to restore the 'NotNone' warning (see https://github.com/pytest-dev/pytest/issues/13477) --- test/pytest/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/pytest/requirements.txt b/test/pytest/requirements.txt index 788173c44..c71bcd445 100644 --- a/test/pytest/requirements.txt +++ b/test/pytest/requirements.txt @@ -1,5 +1,5 @@ ## Test dependencies -pytest>=7.4.1 +pytest>=8.4.1 pytest-cov>=2.12.1 pytest-codeblocks>=0.16.1 python-dotenv>=1.0.0 From 568883b935a5fa482afbdc7664c664aa95842f24 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 11:13:03 -0500 Subject: [PATCH 33/80] fix(influxdb3): Get-started write data: headings, link, and sample code --- content/shared/influxdb3-get-started/write.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index 0af779c1d..d103f60ea 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -139,7 +139,7 @@ home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200 {{% /influxdb/custom-timestamps %}} -## Write data using the CLI +## Write data using the CLI To quickly get started writing data, use the [`influxdb3 write` command](/influxdb3/version/reference/clis/influxdb3/write/). @@ -148,13 +148,16 @@ Include the following: - `--database` option that identifies the target database - `--token` option that specifies the token to use _(unless the `INFLUXDB3_AUTH_TOKEN` environment variable is already set)_ -- Quoted line protocol via standard input (stdin) +- Quoted line protocol data via standard input (stdin) or a file + +### Write data via standard input (stdin) {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} ```bash influxdb3 write \ --database DATABASE_NAME \ --token AUTH_TOKEN \ + --precision s \ 'home,room=Living\ Room temp=21.1,hum=35.9,co=0i 1641024000 home,room=Kitchen temp=21.0,hum=35.9,co=0i 1641024000 home,room=Living\ Room temp=21.4,hum=35.9,co=0i 1641027600 @@ -192,10 +195,10 @@ In the code samples, replace the following placeholders with your values: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to write to the specified database{{% /show-in %}} -##### Write data from a file +### Write data from a file Pass the `--file` option to write line protocol you have saved to a file--for example, save the -[sample line protocol](#write-data-in-line-protocol-syntax) to a file named `server_data` +[sample line protocol](#home-sensor-data-line-protocol) to a file named `sensor_data` and then enter the following command: {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} @@ -203,9 +206,9 @@ and then enter the following command: influxdb3 write \ --database DATABASE_NAME \ --token AUTH_TOKEN \ - --precision ns \ + --precision s \ --accept-partial \ - --file path/to/server_data + --file path/to/sensor_data ``` {{% /code-placeholders %}} From 0fa1a1d849a64e743d99781042a50a1df494f8c5 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 11:46:40 -0500 Subject: [PATCH 34/80] fix(influxdb3): links, remove delete-plugin references --- content/shared/influxdb3-cli/delete/_index.md | 2 -- content/shared/influxdb3-get-started/write.md | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/content/shared/influxdb3-cli/delete/_index.md b/content/shared/influxdb3-cli/delete/_index.md index 3151b9fba..81a47ffc6 100644 --- a/content/shared/influxdb3-cli/delete/_index.md +++ b/content/shared/influxdb3-cli/delete/_index.md @@ -18,7 +18,6 @@ influxdb3 delete | [file_index](/influxdb3/version/reference/cli/influxdb3/delete/file_index/) | Delete a file index for a database or table | | [last_cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) | Delete a last value cache | | [distinct_cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) | Delete a metadata cache | -| [plugin](/influxdb3/version/reference/cli/influxdb3/delete/plugin/) | Delete a processing engine plugin | | [table](/influxdb3/version/reference/cli/influxdb3/delete/table/) | Delete a table from a database | | [trigger](/influxdb3/version/reference/cli/influxdb3/delete/trigger/) | Delete a trigger for the processing engine | | help | Print command help or the help of a subcommand | @@ -30,7 +29,6 @@ influxdb3 delete | [database](/influxdb3/version/reference/cli/influxdb3/delete/database/) | Delete a database | | [last_cache](/influxdb3/version/reference/cli/influxdb3/delete/last_cache/) | Delete a last value cache | | [distinct_cache](/influxdb3/version/reference/cli/influxdb3/delete/distinct_cache/) | Delete a metadata cache | -| [plugin](/influxdb3/version/reference/cli/influxdb3/delete/plugin/) | Delete a processing engine plugin | | [table](/influxdb3/version/reference/cli/influxdb3/delete/table/) | Delete a table from a database | | [trigger](/influxdb3/version/reference/cli/influxdb3/delete/trigger/) | Delete a trigger for the processing engine | | help | Print command help or the help of a subcommand | diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index d103f60ea..1182d73de 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -142,7 +142,7 @@ home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200 ## Write data using the CLI To quickly get started writing data, use the -[`influxdb3 write` command](/influxdb3/version/reference/clis/influxdb3/write/). +[`influxdb3 write` command](/influxdb3/version/reference/cli/influxdb3/write/). Include the following: - `--database` option that identifies the target database From 30f1ed07d0c0077c6a9f4de548b7d6c0f45dca12 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 12:08:15 -0500 Subject: [PATCH 35/80] fix(influxdb3): CLI links, create token parent, ignore cypress/downloads/* --- .gitignore | 4 ++-- .../enterprise/reference/cli/influxdb3/create/token/_index.md | 2 +- content/shared/influxdb3-write-guides/troubleshoot.md | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index d34fa2f89..2ec7e73c9 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,7 @@ node_modules !telegraf-build/templates !telegraf-build/scripts !telegraf-build/README.md -/cypress/downloads +/cypress/downloads/* /cypress/screenshots/* /cypress/videos/* test-results.xml @@ -25,4 +25,4 @@ test-results.xml .idea **/config.toml package-lock.json -tmp \ No newline at end of file +tmp diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/create/token/_index.md b/content/influxdb3/enterprise/reference/cli/influxdb3/create/token/_index.md index 1411c22bf..5e40829e9 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/create/token/_index.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/create/token/_index.md @@ -4,7 +4,7 @@ description: > The `influxdb3 create token` command creates an admin token or a scoped resource token for authenticating and authorizing actions in an {{% product-name %}} instance. menu: influxdb3_enterprise: - parent: influxdb3 + parent: influxdb3 create name: influxdb3 create token weight: 300 source: /shared/influxdb3-cli/create/token/_index.md diff --git a/content/shared/influxdb3-write-guides/troubleshoot.md b/content/shared/influxdb3-write-guides/troubleshoot.md index baff06559..2f7d04d10 100644 --- a/content/shared/influxdb3-write-guides/troubleshoot.md +++ b/content/shared/influxdb3-write-guides/troubleshoot.md @@ -41,7 +41,7 @@ Write requests return the following status codes: | :-------------------------------| :--------------------------------------------------------------- | :------------- | | `204 "Success"` | | If InfluxDB ingested the data | | `400 "Bad request"` | error details about rejected points, up to 100 points: `line` contains the first rejected line, `message` describes rejections | If some or all request data isn't allowed (for example, if it is malformed or falls outside of the bucket's retention period)--the response body indicates whether a partial write has occurred or if all data has been rejected | -| `401 "Unauthorized"` | | If the `Authorization` header is missing or malformed or if the [token](/influxdb3/version/admin/tokens/) doesn't have [permission](/influxdb3/version/reference/cli/influxctl/token/create/#examples) to write to the database. See [examples using credentials](/influxdb3/version/write-data/client-libraries/) in write requests. | +| `401 "Unauthorized"` | | If the `Authorization` header is missing or malformed or if the [token](/influxdb3/version/admin/tokens/) doesn't have permission to write to the database. See [write API examples](/influxdb3/enterprise/write-data/http-api/) using credentials. | | `404 "Not found"` | requested **resource type** (for example, "organization" or "database"), and **resource name** | If a requested resource (for example, organization or database) wasn't found | | `500 "Internal server error"` | | Default status for an error | | `503` "Service unavailable" | | If the server is temporarily unavailable to accept writes. The `Retry-After` header describes when to try the write again. From c9bc5e1e8e6709180fd58362bf1f81ff72e6966c Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 23 Jun 2025 14:13:50 -0500 Subject: [PATCH 36/80] fix(clustered): release number should match files in downloads/clustered-release-artifacts --- .../reference/release-notes/clustered.md | 10 +++++----- cypress/downloads/downloads.html | Bin 118577 -> 0 bytes 2 files changed, 5 insertions(+), 5 deletions(-) delete mode 100644 cypress/downloads/downloads.html diff --git a/content/influxdb3/clustered/reference/release-notes/clustered.md b/content/influxdb3/clustered/reference/release-notes/clustered.md index a86ef7ec8..b7d3c3973 100644 --- a/content/influxdb3/clustered/reference/release-notes/clustered.md +++ b/content/influxdb3/clustered/reference/release-notes/clustered.md @@ -250,8 +250,8 @@ spec: #### Release artifacts -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20241022-1346953/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20241022-1346953/example-customer.yml) +- [app-instance-schema.json](/downloads/clustered-release-artifacts/20241024-1354148/app-instance-schema.json) +- [example-customer.yml](/downloads/clustered-release-artifacts/20241024-1354148/example-customer.yml) - [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) ### Known Bugs @@ -804,13 +804,13 @@ version of `influxctl` prior to v2.8.0. ```yaml spec: package: - image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20240325-920726 + image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20240326-922145 ``` #### Release artifacts -- [app-instance-schema.json](/downloads/clustered-release-artifacts/20240325-920726/app-instance-schema.json) -- [example-customer.yml](/downloads/clustered-release-artifacts/20240325-920726/example-customer.yml) +- [app-instance-schema.json](/downloads/clustered-release-artifacts/20240326-922145/app-instance-schema.json) +- [example-customer.yml](/downloads/clustered-release-artifacts/20240326-922145/example-customer.yml) - [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt) ### Highlights diff --git a/cypress/downloads/downloads.html b/cypress/downloads/downloads.html deleted file mode 100644 index a73e07468767d645b3a90052bc165dbb3f3bdfe9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118577 zcmV(~K+nHJaxydn0000*1ONaMtOyFG1TcaEA}|dG2`Yw2hW8Bt0RaU71A+n%05F0A z3Ic)x0RXr<8Zz})yeTQD;L=G3%D6hVkKF4m^P_hY4*_dr_^?yCr0p_Co(1-Ih!ETcm6(^qjGg_|EVqvp_GM5MfNO>Sy$o<7^-eJBeN`5E*d4X^1PE*Ar z&@46=MCCbEO;-lzY(5QeVX;?76poR@SEDQRvg*u!KY$|mxfy_yfqHF{im3P#y(9P2BC8Ve_fZje zTLq(S`);}OUowaQJ9x_ui{?H-`+=pOHAIEX&aP5c2PFRrmY92|?TVOgwCv+Kzir{a z=6^(N3MxABkx}^Qnl@QS;IS~Z0py2%+fxRegL^KNvczKrvqM4E>M?3C+z;CLyF`Q> zdytwEG8{!ZcqiR*zQG*n0sSWrymwaho+9LCG~Od(u0Jn8Gs3iZNk!z(2}V7EAE_oE zTY+&Y)oWfh*dsn4qwpNll`(A!Hw^}t#58e!5{@=FPatt&@;{mFgSEp*-jW(quYBY! ztUyw@z~W+q!j)q(I_8#O#wiC>1Ir{2KOIObaC26-0nA5hvD)bVZQmEd1AbuK>jhHB zb%Gex`F3VZ;xs9F?O65d;Sdlt;|NOLX2U&pGEyhnlU%nKs)@5f`G*3J37zobwd>y4 zJW0O&J}AH;S+AZTI8zY@81QBJ6l_%7!y0g4XiXD9?eb>9fX{;Q z1QH4mFnC1=IzJbK(v~U=ry2SPP)h>@6aWYa2mk;8ApigX0000000000000aCEdXtA zWMynFbY^U6bY)dk1pood7p!Iq03ZMW0000102ly37Y8C~oyEty=YFNtR_xvE|54v-7=il9wMG+i{6w z*_Ldpx0SSgwY{_VUH}pR(R=T`estpGeD|E+xzGIPnKLub+%q%JJ8Xy9A z01Kc2Bmg|n&;b0v1`ad;_$|;MLc@{|~Rd-1@)uMtPH))#o_^-Y6Hgw0^z_S*9C>PJWaz1(gRz7EHGcG8eE!Gx zd#`{0<-h;o_kZyE_g;JXA7A_Xe|Y_Gz7Nn3^hG@cm^|Ps9RzsmfS>F@fYjQ-`vBSj z@Rfry2LiY#0H8haUp-*^9q=!I>F-m;f6wDP2atgOe*XXC`m?6` zUk&wN+Mh!T|4Up02LT5EcRk?$wI=6eyWb_Z<5Yi+2lOxfAP;D1Z0>4Q0{}z$-+hw) zTkHI@_CJrSTCVyI2pteRAay|QfYJe{|I!XPnBQ~{(LcKAJt_`fdB7RF<`(*uR2yIN z+20&@KRGh|fIM*Goi9YEtat`*j8SZ;fB~`U7iG=)E8WZr`pQF5!@$?W?_O_*+t-6R zp?lfnRyLw1N6?rV%?CM=7rNRTaIB>Ui>PjSejSuSXuyO9RKgVY@Se-4Y_+y;QpmZfK|Bu`26Wr27sAS`q$xw)rVL|q9bx4+-+9s2G*QDY9F zRGIj2b!L%e;dJR~%-PE$fUv6hELYE;U0e}u+9#j9u=dL2#8U%5T^MhDZA^b^?f*U% zvy@njjS;S2w`bKRQa$=zO^}3hw5N@+JsGWZ>kSb^v*x?-_04`_1)T?Qz%d-9>q)`w z`>Jm`$cHrefj8u-+M@ih=&>I|IufJMEknMwt=n~{lRvhM72`ThqL(@zqS)UieH#{k zYphl|Nvk9D^nou;Yf_J$q!2fsS0=mfv>$DQ!!A7gR;l#($+C&ON3=!}2tgTLCNV>r zU10!@!6i?2!X7ztN_+Xb_pddI>rbA-rV@tU)68a@9i-=HdMzYYZ!lO(tJV0@E^dp( zafdhKaaOkpZ}*JB@pV+G!a=O^mdSAbS-TiWF&(4^%a z6kO2YUTqcY(hS)J4M&*K1-EAxM;Gorb^(m`t^`IfuKxEl``0DAPYbX7-3GV0eNCBs z>@2vZ>Z>P>!32o~#?h~T?uYRzbMS1LZ?*&*=K*%)O7Y$>2|}Im`*{9DAx?|%jRQKx>kK1)UC7B>)zW&aCjzx3K7fJ8c z{!TM9NU^E`h51=e-{A&{WD83rmh`p+IPf&wMq9TLaMB$86Qnm`bPM-SG28%!u3a9 zyo=G`s4pSOiQ9L)l0RNJ-CFyt_@&lEAp8T)Uk#4E9HLG1ivf5=Z*(j*U=+wEtIa-W zzohA=Rw{81IY>c39C2$QLgmL8MT!PSgHRCM5EZvsNym(FTvSw*=y_319m|*|(tEFwWl5Ls)2iN$P& zemF&M#$D3L{?R8%mH!V|W}QIDC)V`3rmF?oM(di`Dw`LO*DpQNwRdnA&L<0Z8bu%Gh-=w9YLCxG1lQt9kwm6qh6udLuxfeh>=p1lE;UqecKN;Rw=bO z_1nzLOw#ESmug?S)yw!q!>2u7Lwaib*DLsliuH$A-eAWYTKC!yKM#!l@*7VHg!A7! z`q!L))<{pS`(U)%hC$?^{0tzD?q4uX)IY>aQJt% z-3=D|%`Ig0>PeSSbaU7^b~w?qAc9;JtLjm&q6}RNz1!P~AHRtCTg`L%g5t#U+EYLM zS7G=2-+G-{6~dnxd+|H{QL67dk3G#46L^RVhRE?w7BAv2slA$dW(<#Bi;ypA=!1rd zdc|Z63EKueEK;;om#m}2FQ0yf4YTzcni71zdT4CMLC0aAQtrtxMpu`7t!cw16!Z99 zV>?9!0m{>U*ZajE*@4r?Z!Cx>616z*I>|U<){*TAd zacA%SL1aubT$|A1M(oYCfv#tJeocH>wjPZZ{A?d>bOrfxi>TWE-jGG3twEtw^kv!Y z+*-eeuKN6=`RCp|+<-%+;zuB(k6SBe-qUDR$jfmI{9JkD;iK4z#N|~PZ z1DXf$1Y8!RA2PoAJACKm7mhXrmckW{sO9^t3iH`vyv$GSCWHssOxVt*(%ZWCnugEc zY;M^;nV3;8jq%nA%R+D0QaMeR^u*Ua?dz2CPBiwQtqSRo8;3N=*=ssdA#NaKdmGV* za+^%*@qW{8dyPlI*u;gLfM>_@bL6Cb_L*ptZW zj+U1151br41o_tn4dT=H|46kB$fuQaUwh`wRN%K$Kcp6a^TwAW-0;)1iGPM@yaTUH z2RE)DDjWhK&-bj!=IgKH3Qxd-O`q)q6ztM$er`XS%|?pi_}EW8Ct#$Zi3-piiKL zPd@7zD!*EHGrLiMJ5_7`Nw+cjgkwC|flWB`3)vgMm? zE1ym_7fy^_U$5~#K+Wdl9LwG5Q0aElnL8-Z>@GBb(&(KYgO`cCg_SMW=pC5fX`r=I8)nxEEJ0_p49gA#|j&z^- z=BkoCCT$?JOPPl9sQFXrhpsz>li4>Ec+xg{fel^HbPTRB@!n1iH;*P3qQfQ4&lIvv zlKP3F2T?N_&;DNtu_|tY$g7Q-lX(ws6mAHgzM1XqvOwtER(VH;?B@o`b!NFe1G6P~ zg>xDNG$fW}`p^C0O7pv>mz2pUrAJj$qQ0_|hgVdL=S&x5X_V>>`Hgo&= zqNetn_eYQSz6X6y_VeG!UOn{a^w^7(-~ak`Tr0J7_j+^(j@yk#2xE?32jWk?#v3{& zqI+Ce9c8poWwJm8yFf%@V19T-f_?* zm7-MDP~h-F48_Ea7MWAVywgS>om#EE_%8L~*oV&8E7w?>uLjE-7qh0{8>DZaWi6K@q(EjQ-85Boqc+1AxK(T<*6_T8#>hsMnO zbZ0H8lw$>1)>gL6ZZ?=9Z}#}@du1$o%eTEM1LK~k8#;Uyp9F*WxhIjdYa-I6*J ze7dB1LI`*~6&jcVBDzw;#Q9 zd~g5u#}LP%r!)LkU2GXAr`rXr|HNH+dTj0WM{$M6?ycLi)F$Wqh%{aUxym|KAF5M$ zHv0~LUT#<-?WVJ7tD)>oSyHPNMU^DRi8bpnyj>p+sTCTnGuAuAGCgPcqz-zy!@%xf zDQlO!0zDA&rk&`@)QT#D?RZnu18+KtU0_Puvc;3nx;M_#fPY`n-2dlON^<^WTp=wc zPrrOkyv66g*!|NVHfo;l?I-p!PhKMcupvTJdMmJAt*p)9)ME&T%T}A&>ymG10^VbN zVPY31ZWDxChIy&F!IDwT*JkNl=BVI`W@NllkNosxb!B3~tswJ&4Z1y|j>$O86g<7Q zFcv^kA$6F1zs4}__=I)h+gsz9urA z^;_fjIwa zXbHK1C5FbP`u0#!70E&J(zv?;imxsL82!$f8=68k6OZu@eJk}n$m0zy$sYM*8+*TK zIx*&>?(=f>7T5<=9AZaw-{LbfW9y zo%ax%+E3@|cO00Ov46!DTR8=*f(6lZd1<-?x|YP%&oL>F%Um*FJCmw-i*G(Q{q+v> zt({&AK_eSUwz(hAuy3Kxi3K$Z*l+)CYg5~bJ&*^x0m zx2kXkmv(HV)&L*h1OpPOg2FW>NcmCST%*UVhNY8qK`tIpY8$aUn}&UGYKk2lpRzv? z9!rf9&K?O|Iv%!@jy_STt&DM$Uubxb?Q}I`w-45axrAQw_3f9qR>e|}Ub8daG6C+@ zK_nIC{qetr?x8|9-4e6?Ck4&nZIT3{^PH51U6NzyU2i$G9K=9HD(NJDn&wtFd>UHU zw4l-fc{KyyhD+Xm^4cTgvgXZ?R?KZ`B5Mv5F#J~}hvVf5Pr>= z3tm4G_i+00zDCW|uq?YSoo>2VyILF+B05`eA4+4#u(Q|ESE+vF*wN0dUuV_r$ag8{ zFSQ?+CX{d$#p9F{I@z5Kfu zQLST?*6pSj9Q1?@j#2b-qufZ)a=xJXtqXx}ffR9gTG`fryD3eEoO1f%qmysbD}6EXD#- z9okMuaH3iDSXX>Sn4@4ekvmfRvyoN0NvK|c$NDux3`0{2JMi>37g=1?k{d=gKaPRZ_}VvHQFvlii{ZE63rhu#P%xpQuJ%O;IRDOACo2t+on1fn|HnoEiS-X-k=md78cAzz?V}Q zJ{;!g0Yvbana5bj2gF_@xK`EDzq0x1d|SRL(-=n) z5@x1qu&`q9AXKbLI+`p$uQP$-BH>io*{DBo%BuZ%vP!3o{?wt!GM6cNyvBT}Vg`>s(4dPb+L{H(fAN zT2&X-Ao;N+2M#awiOilFJPIUAv&>So%}XTEvKjO-h^0l|bHvkAbb3j#mmbinA`Tl( zj5gq#Pu{PGz%#;?h&9iG@RD3^S95HB=~0kse%f1Fyr$oX2K}e_D;v*~jQyjf%bOJV z&DInr*XH}Z^0gly^*IMx1fO*8dCp>LQlsCtP4rvy120C)%C0|r@)qt&XxINLeVN*F z{LtIa%^{oPMe?YwD~sBlpAELoe@(vDGNf{y@ch$vSZKv`=o_aTfg0Kk?S~@qrK5jZ z@Be)=^TlrWzqK|p#iU_4tRVU;Wi4a`kIkI7W9n-)W&=!}^Lr85Hf->@u`CV#bVv7jQXt2GiYUF_8K(Ysw%Tin!(n!{)Y`W*ACx=e>B`(QlXEd3e}^u*}0GDrna1K#e`+Vyou!rR+v+Sw|TepM}KS0;}C z6up-aA4gn>{5Dt7_V%T1b$vm@55(c1x=VjS-%Em(oAw@VZxG)LlaactA6XGcJ@<8q zi=s8x?ZfDy$|y;uK_bHLjlSbe&^NWWFf5>6zvhkwit2v*S%fAZsHqqU+4MhgcAm z`z4>N$dIF5I~DR^#FZm;%rzbwtR?1;HFo5~i!1n3EhOrh`UP*dA*QPe7fg0YB;@i| zc$E^WoM1kA0jlS=C|G`hTa(z|%Sl~EXN#=L9$^nlbDU2aCpM}P25bt2$lo}vSSgX^ zJNP~sryK6rQhYhny=AwT*Jzt)=1-dnEx|fp*Aw;HN^Rd&1KeycvI}3Ppg{v2)jEZb zr?Oc>Yd|1Q6~Ky&e-&OW2QUO`S*I)?kx&qE_l<~oIb`%zY_&2|oEEOP!;lISm1U9@ zFnxSFlrwG?hF1z(qbyN@V|rME1Owr$0cu;}gT8FB5Qhh&VMs1pw%N-bI^7!Iu|%L* zOB!CJLctP1V&DLgkBvd&?a)+|vPX}=82r2@z^6tGF%+Ba#U-F{VVIsb6Dx3x08(_6 zob*sAi3O7$04UQF@m&y-%D_=%M*2Ppo@B5RF)9(k#aR6XI6D|4V{jQ_v_v9X;6OF+ z2!eTHDUN`HsRA5=y;G^Owu-(8C0@o=bE346BxIAKy2 z#y!@WbA~wff@EPpoGs;7f45Efbl0(zEfbreB;shZmCv2Sjk#0Zt2a$+Ozl1ed`qRw>23txj@5) z!Jy!B(?-egnrW;q)LyYVC#8`cI=qWinL~f~6Wik^j;nE{UQO!-WRY=MVl&YH`Y|R% zH?d6~h_vOZX>@VHuOWj-j1}X7<%l>4GaHM89t?mi(88q}k_xGa z@WIlV023OE!{VMO8UhI-^XaHN6D<=8SyvT>v{zvjD71*Cxzce2G#W`@K_G{Nrebjv z4Vy*7pg_q>NJ5Za9wLLFRp^;Q1y6yeiwH6@oyk`t#3 zOVXpLGBsSu@hY$i!ko{C!zgo#E>~hBB#$`*r87k69YAoC76fahI2topD~L+VC1lhE zmUQ1buF*aNg4h;$uqY7M6uwcUC zBeQap$POc?TMER0CCyw)7+lnANzz8pk!DtEY8Z$f8Y;9aiI>u`$hE7caM|X^J6Cg6 zt{#F(B$=*!SPM;XIqr-AMRw;yyBu^%a|=TyVWW_H$XF&RBd4??r;|Y^MXgdzwKNfi_;R`N)bDgXT9?LsMnK${6p z?FJ5g~05k{g%}f3TfPPcXXf zy3slgDR7*~c9*ffx}L*uILzGMkuPaGtL8Mof~Yms5@^cQcQ^P1oBF5)VwbEPsjGBi z-6fyVY9s6vCx)`0dw5~^Jh6oIHz^xZGs}L(`sVHwc5CT!ln(gPQ&;!iGU0#z zqe@_37-0L$2rbdY;oi7$KhcCHv-y{XtTn?~S2Nh*oKkPc%zrw zJhcu{xKqWXVBYB5!OF&3Q zR&z3&hy{0P02c>>67PBGDFH08r$jjDApnirRY$UWZYtbYDrUfH&}a3!(YcH-fd-Sp z^(wWPWO{S>)vS#;osY(t6&$Y!rSHMBRA?R>vOpJK$9}1&^Fd;ap4|!VL`=Py|~JUc@-8e%V%vlA?GRS;IOcSEWy3 z&F`hMRoy+Q}tm5CTL?RH#iQcq~8Uu0pEI!GMcFS2NAvThzDh*c~_JDY$= z1bCnbpO8C5on(9TUL#DFOuO0aB(N7!`=L18_T7A4G**tXOZbhV3Qcn|A~?=+qAt7F zw2CU)ajHr=PSbK@8BMa7Blg6zI75`cK;mi=7GApQb>;gBJeqeC%hs3X!SMQgD#CAM zN_1sTfaU&_VbpEzx5VfvYqsTg$pu4|qnsMtq(_qe z1+$O1wd*A!nmpt*9nDFWi`s|wcJDF4id@ImEc^*U_I!M`1*BJP+zP!+6YQib*V7sP z=fPczFkmlo&P9<%u6{d{j z7TP2d%ah0wAtg*!3w*fQNZtsQ{BW1gI0ZKmd7@36AD#43IUyf{&E-YW4nGkhq*1`F zti-sRPe`a33>&D6&?S;ALk6L-SX4R_fWd+a_NLVkp>ld@sN^9uWHXO95R@AV7MbT~ zU!#J7DiOE?`C{>!WhR7$+oB9jx-gF|XXr&5su$)+N+YU?=H+v1-Wt;0Id+oe@P`qo zZMVr+*@?w7ZO$bQ4G!^E;v@^l<7BQhd9PsVeHFc5zlcF`BXe-bE-2!3^)JJULF!6l zHev^Fu)S5Nr=qgYO}Xi+hitfMwE)F(5JgX9ys+21vX65_s9}=~mbKdn*&`8G$8ZB4 zWTPaR-PLa2#zQ8xM#{mnT%+=nN|>j=?t074;U)ugu<~q%gF{kc_ z@tG06u?Q2m3M&f}`UI$5&GOyP1>)UzF7Amb&=|Nb)MDM zWp8YJ#&*$GH|&DHIr9S8`1;fDR>8{;SKB^&KyAjrS}YiUUV7h)oDiv(ql^7~F zPvN+XOf#v}pv4}2j%#5Y!p<&*KLEDgt{ziwlpW!n-bTS4dx_dvi-yd$C!3*xWvQy% zZT=16P->xn{Ot3?o=d4OUPi(Z6kmmo%^Z>Rc(+d{#z1qs{Z`MK(b0#LGR{A*t}SwR zx2C<$%F8RpJ7{Te0VuV!8R-mo+*UQ9VfP5>)hp;TyTpd(lZYRt=9AnvH^&&`PDB|1sEMVfop9# z=(0c(WvR5WK?dF1@Yl!(mIUXLrNzdTGXT`I=&z@&rii4jQK0St zfuJM7!fKOUaeKNTNDw;r6RiIA@udHjm7LiW)^21}WxBJu(E;tO?q@fJHEoF`{XQD+ zNhjkKFJ>XWa1&O`wVN06^)4c7KA)n7iT0FW0Y}r~Gb~;}8gj~S@Q;>_5kZ-eDPYWE z58&(HBer#6_N6W)F4-WB`SsOyv_sewnn@U-1Z*r^20O&;6ky^zUcyO^n#1Gl_uVkx zbjDRB-ER4+!kPxif}T`c2MdXF9tl#_`j&T|4BVUf&Ei518og2?3Zk@CT5W86zQO-+ zy^pWKY3st|<)vPZRpiWBB2TzM9TrDW&0<<4@X$x57`m>RkjMSIDZEPlqxzU6f~1=V zBc@Cc`Ne~z@uvK8J8-YUtBc$)TAJg6I>FDDk(1?qM&bEpNP<&)Vv{Hd{@tc}EkcW> z*Cj~L5KQLo5og)b`>dk{uZbHZW+#1s4jQ)RpkHKS%uf(`#hj+XJr_}evW7q}?9%7O z>*W>w0z~Fr5k&bpND#Wc@7gX|(&-b0z5g7P`}PnWPxC5#M4 zFhM#(4W>PPt46inifHh-N))fani)rAqieUlj)r-wo^|98C(1Aja(T22eHYPhYvJvk zLI&XjKr>EP<+Pb9ZRv>?2115kbMUaGY^H86yAbTn-*aY$lKp}G(7txvceu7=bA6Nt z6UlSLfcWb$BsEXXd-fk|%g^&*=)ec=@wMMQbHcw_@R7sNCifp_vJ<~6&wC*ppI!nC zgFh*Zvt={K*%XGWWv9x@wv^qvR=t)s{D|rWn9hw!n+ub;Bc3Zfo)$UMK2knp-?St~ z0`{#>0a(4CczuyBaDcGH_2o_+L=Uq;FXk53%o>j&I2pUp_pWdiK}2_LSK{Nz38W_hO>h5@`d_Hu$S%kdV{{A zB1$A;vrKf!2#se+5MaBME2Mt90oFQE3@OD;WFpY`C@KQm&-f` z@=^ZUaJvY@7{D>Md%ZkMn34M=fw#7Hw~r=wzG>|0LO{*8nf!c?vzs^?dwFz z&s5q5{w8hUUS#<#K5i`r#t+0YEe$3~8s$s!&*t-l>%{TcijE*%yOi*o5@Nb#wpLMX z*-BS8;E2Y?ELp;s?9jMVDf+yZ8?I!_q+|;PUK&3)8QRS^6n6?}{EqY*atUekcyQ%a ziZSOWZ>okcch9rK1aFUW$Gp7Hqu*nAmT|)D@`i}2wq{$`!dbPUd`&{G!&&@9y|4h% z)@#>hBJ4JFSUe+@;~cDsFX zQ=`n-r+s+JMV%VA)RUI_Hftl;W?kcBD=vnLSlKFzTeD1a4f0bi03#U`glI6FQrAh2 zFR2mi+RTxV`)sb@uc3#tO<4Xq7uQumI5NygL>tilX4-wr9Oe@U1vEJXESB2S24dK1 zoINxh^$9DP>b@k@!ZhVbWZT7T<)%v_FVH`M;_CQ7AP`xy&}66vdex&YnwqwA`r0Gh zO5-h-Bg<@Ppt8*Vi&hY~4x=DDn0F1LaqIY+C7w&CYhN&xau)fF1H*a{4GRBwQb}X+ z%?!-0Xv>5^b3I6A&Xw@(--F#9XwG+5YBWvS;N zf+DBA9~0pvFjVs08?#1EI2u;2Lnk?lt2!IODJHChrO|EvZFrBE2+zkRB?Muc`$IA~ z*?hcFnyN2fEU924QnDqAY4wIdSX7KeFr#~%;8&!@B#+S;;utFXLj(NH{(ern#P7Uo zU#WIJVrH0Z)Ee29hRt@`J2FCQ)(P2({eGPNabH&rZt&FOakzG-=K+mvz(dq_>iG<# zy$c=ZmEjrR{6rC(Csqb33o71`M%ASqyr9;$`fB?|;n;vt>gsY2Pd2=dt|uR!!Z?D* zYTC*CpQEkY^?|t?*B@?M1G_tYt&a^YS@-#8)Wga%1RSWJdH~tyY3Z#^QH>VGlPp=< zoh$X~m1x#uTICBlWeWHDqmA4KgPhX3Uh-3SnH*MDL+ssT)AqMav+!Dkc)D#Mk6Mu~u7c3FiKBhPT1u(UPv}e^Ql<-P zcDJGT4!dshBxVgZ|I+Uo>!#{yDbm+&gi|H4`kni#=ncc_T00?|{$Oj!;`_+l!#w3x zxMLo7%QMpLd)>r-(OV<&^>%UN!bXZ_52mxjSCIwy6U&@m-XwWz44whe(}xTG30R)~ zRlDGom5$PS3R!Y2hW4LH;yIa{GM0YOdqDUTR0$-G^AUKKE zhevTOm3uR5k4vAq-)v^QxWw2lc;=vi+2v8^HR0(RZbRGoD=##66ov|!Cr^z?mdW7t zPJ`08`pZY<-XJ!5FSzv4{r*D^Ze{APfz-C7^C=mKz*h;Adu!>_nGK7W4EIet7<(PX zx11EMNZ@CU;+hbj>LsF!gHyg5W)FUruPOnQ2rZMnZd%ruU&cJ5m6;stW( z)shYHg-%Viiunkk(U~LKzI2Gxj^L_p@_SQ$K?cx$=A6e*x zI^uZN44mH;h|hSH8{RGM-8>|)y4#XBh_k@QlpRI(5|}0vo%yOqYp=Mg)4n3@_PX4= zq(yq~`k@kPaMd@BVL0${s+oz+0}Z;|hMW#8qWy%3 zBCp{`9ifB)lX+02k-;1nZYd>sSju+vl9H5c6kF2;-+tO}6w<|*Ws7Gk(S*PdJLZ^d z>rPLs{a6kf7(xC~S82LGq^IE|*L!lQU5Yp4wZ-}fkV8Bbl2XOE8fC>S4+ZHB`_8ob z>7uZH9pN%`n(>UitgXE*3bo=ZTx{OE5Rel5o=Ix#VUVs|9IzW|wA%>o*|f}0yWJTy zDn7@N(p8whuG!E6&S=^^jG5-LATLA;=rv4kaO-4`EvH4xO}#cWI_e@R&EXGky81x+ zI>e84!SM5KRnvaR2quKS05TCOh5c1Rxsb{f-K-e4;6h^^u{Z*Y&I|HnL^$b=MA9J+ zmJ|ml(GY?hLQ!&)9wbJ?)Y(g_Sl$$XkPw3Oc=ygaF;sv`mxDzZOJ0WfbFB#%Rr5QLskSl9o(3q& zk(1DviWXpyRUs2iVlJ~LDKu5eY>U0tCW;}Hta@59PNL`gU}R3AsxA-qv38;MB+r%U z&qw7D^*lFwy>ThcMMS0xx#k*-DlFzgLcR1XCmlyRrFuVx7lWl)3trko%s6dd)EPp% zWo-n+b|uP&gp-_2vd2aKkM@tDvTd+r%1u(2uW@#;bsx%L4VeeFK$pmS@g|ijXmJGd z5s4{4T@9CP2v%QHj-imrM`8*3j&iQVMsgcTF07~)*^qLzWf@I&3qc2JSXpv9ASiCF z@msYY!C&)ZQBP85NQW}V0*D}jR*M+rYHC=6+GTCHmSXfuj zncZ_^%v7ok)0_UZNbbDCS2%0DsOvR#dvSz+&1)d9jDTzh9TjNqu&EwF`cutqy(yG5 zyjFagur-}X?f)l~vJs{~T2NjP6D^$y7>)ku9P?vhQvoquua~Ouocu^g+22gxPV<^G zeJp>p@cSz>DlfB+X306{qx92$v^`d!4PhM2nXPj~N9*)Qarv%F&}_zuHIc2|ZdGft zF8qLNu&~hC{AJ;elX8RS$@H=BpAh5DyBZ7WyT4!<9udA!yXv@?$!d@*3o~@`&M!hp zbY*`Rt%FAKB*4PA7iQ@M3W`}+7TR$xTZG9jS`gb@qTjKzGmV868qrvus6M?vwL7fT zFB20CR5e+MGWbb!CLRL;Ep0y#p2l^C0sKxZtxSk9!dmVY>~s{z;|>ttE+H`?no!OrD1lJ-9O3&wT)eV~mG8%C{!)I~+LYH={+e7>}&iMz?lhHSFB zl~+qEH==)1t0yp<6ZjpCH}DB*Q=Yk?hD^LbD1=Qqt!hjS06!KYJI#C@Y}YcyLB#hf><4!lVA3^l1)`f+|*LO@rqStyPPh zojaD<;DoVn4t#DIe&KxK&^#6(?KQs^+z67uX#3ZAoF5Sv>Hnre{5}_||6;M)gHXnX z(dl6M5IV%D+t;mw#-&`LzA)V|m8_>!*Q617-*J)doyMQ7F5ii#`{%~(ju#@_);a4Yr=j)qM;-OCLgsKO zi@O(c*}m5jy+gNL-_9`M{F9RcJc!r@rYnoP?78nU>?X94f& zkl0^yw1vcLpVfn>dQQI|2nPV^5-5?zhkIPO<037}?u(PX~|uP1B7vizNSk84~8P5r<0Lo}_x9 zMl3JGGHm0HWfkGw5N%Id$Xn^Aa{`|8xM*|Ji<~nqpztDFtob9AyqL}GFJ!42-sh={ zqv5{2{FTb%8&r7}b!LDI)3!e2w}#Tcs@{!V=;B(cBK6Ij#Zu?0Fat>nj_QY&5*RX= z1SWrxEEZ8@5uM5=L@OM6fgHt@4IGFzEv}UOD?UCk128pn_h&&Z-H2z@=)6fRUKgO` z5eKC|iqV(|4w%LkXET)xP~cZ3VfRZ*#V}^!BC-sa;W;5}!Bf^J_aSH&E*ghZ zaRF%BUWWRlq8L4Z22qHlF}%hPkE1Ik=0lJlkHSDN6AI73tGhsSpPsR(dce!BGMN6?;KtLKl-rVy0$4mxOwY3K_N9dB4{#T@p63*TRSQBj}y4kXdwh1cvW8 zOsyeu#Ysd%kqL7Fb}t!0mBK^WvpIBtZjDzxaFlZde4q#<*oL?T1A~AI7!1NI*r`vz zmO^x2p!rNCQo=051Db}YfFVy-%a^$z+7?Qsb5xEqLQ7V+G4ZI^QL0C%pyQA~Krte3 ztfv6QCNiZA;DdQmaZ3(Wjo>0iOvaIeq#;p~)e1n;c8oFRf~K?iTnQlM^iW>$B7{Ql zh9Wu$iJU?PX;GX8jv%1$@hvzVl1Iicd0fU8%wnrB*h;Qkc@r0grU?le2ac=-;8ieP zibUk&*uxSxK%^6eLDgWXXiS;UOA~U8c-0p|xRXUpy=M`ZMO6v~ zOezE}gsXx+|+@P9}*1PV5+B$9A{Vh6cO2 ztGk#Pq$;UYVrFKRZlC|)*?T?T{d_*p58Fx%Au~=0`Pago<0gG`V)ERalv$_|6w}_WRdtf^6B2hypxVZ-L-qKM6RMRJU zq~ucoMwJFOhZc|td#Vyz!KaT?ga#6si2<=a#q$}RI7Sou7mXQgp}+QfRn}1|+oKEt z9H|abXAsm7nInyCfwrAmo^aF8bCzJl2J6sy01b|}9}oV8Q$32SCxeZSrUtv0mKy3h z%=wSajRx!Zr)3rH=VD;8s-*pQDN>0@c(^cR!O$7|e8{WKs9%vKFJ(rISp|%A0QY|uhsa?gHKGDt^Cw1BSRhs1sTg}m&Qlw`nh_ZO@v8mZf zrbIh7DH>)8mSC-C3%8o^{bxuXG-skcyVwNW4+pW6kui+F92jxWC7-v~<>){sYM6X; z6&Dxg$U0vXjqu|OshU5Qt%};+M1Fs6zyq%_3OpD=9itdT+wYZ&|%J1Rw{W|~T1tyqh>K!Fhn zq-(Vl9a}0v{uG9glChi0*y4l@lPVYkaYQ~?s3bu(8AEl?7O9gF4uGRN^*G+)5nG8_ z2}If&Cn)dSXP{h282^~8cyCMszHPw8c?aFPs&LaRe|Tatcd$s+CCoOc;;=FWeF-1qtoEIFrM~4xmpXtjTFj)_}YSx_}^{QqU{sAR9?; zpm+ty8k>nDVbscG{U$8fWQ%6ZS4si(E8XuiR+eUIOq1h!<>I)B)WU%=zo#;N)a{Bc zVU!Q)>u9fSpSRaH#Xefx{tX$s)z&hU4Q#>=*!Nyjn81<2d#>}T``zc@-`<}5^ur#A z8k!D4yk)m~0Kdx|4NUzSePeQ-e)(`23#V`HZ~d1D<>9vn6ZB;XE{AqDa%ujZ*7{ZoKD~>cCf6Npg@r>%iDBi+U@XoAH)Jl%iHxEmC#3P{82UwWv^7B_le7E+3rB$p4lXYcpa~EQf-Eo;jUjvv7_mECj2L(# zr?i=m@yMVYN=p4W`<=2I4u{TQ0j6NuQRF=0cFaWqtM0W9z8;a zB~_c^A{fg|h<7kj3G|^SlrwOP8To=^SJ#acRHGBi>_%M53%Z0aQW8kaa+EKu!XX8q`&B{r;dYW3$;3#$e8Hmptmy`qqoGK zr3fwop0wJY3l_TqjpQ(l%SjZXaYx^z5^yjMG4Ee zZCzm3f_?1^2Mfr^VHW-1Asn9*l+vD!f;W`eZU7Tvnky&-yP z9oV+lFl1Yvle!t)Q&UkCs2}3VmIE{FBFj}93&G%v!0M<6iiaR;TOOa&jjV_FvPYA3 zH-Za)+GLW#BDBB!3{BZ?mDQS$;{{%=;e%eo3G5&P31U%Kv2;FF0p)ENiq=lJe+t7H zBwLV-I;foR>S;zV76?zV^`7xl31yWgt6f&`vhaBc{3S!d2cG*n$J^;D)ndNcEeZbuj^ls8#S0C*NPo{ z>F(NeXEVc9n%XASUz}h~HK})goL*^N{62|r$Aww_7xcHRhvhlc>n(*ge0OKHyz-ys zuNVoZ6QuFoD^Q&re)<_FfaD9vnXt#i4g|{tJr3|z&Aj@tExAa*(sN#6%@J#O?5^Vp z4hoI{;PHG3K%tBIKq&*SQ{IQOsAxxp>!T);(NZyr5|Ohs6phIWDC6P~tV}PLoK=z( zSKt-cq7*y;u(4^3!xza@(g6eplVN9lcqA2y)yi~-aTSdXXX~OAM~W;~6y-u9>LfQ{ zcsReM8B6rzT2Y5&JQS&s6`?939xQmIk)4c@4+HTClG{;zAQr2rG;%cKKip#@@Foa* z&nRs@qCvU3$QA*c@hmHlHWniEydoZCQZ}azP6KnBTHPDuSf?mvQX;teEqOXF4H!4>u&}k`R zksHN%Nl0INYjWKfMQsCd%$8C~ca2o;$?# z@~UA4$)qppEDUFv&@F{%JmD7P1eVO7A@eJQYPe+FOz` z_M1`D{O`J`(14lWS@oLjaZ;ZdA&*llRUzuR6botxX(r^Er-uWjivKV?K_-8Iq97x1 zBkA6^oI7YPo`OP=^IV5Hnj+KLAO?laPe3=86=-**;HT{?A+saDFGJ?jI4reZ75l;4 zIi$2m#basdnxq;70F$q3cVip3zGw>Kh%``4WgO#bNE{6yW{_35Oza_ykkyMe3X-V7J zY{Nr$p_q^O>VCKm28Ali{5Y+#Nv3WdZ?#L&iF_O10nopD)QEHq9Y*Pf=S`#9L@_8| zKVBvgqZBugYyQP{Uy+tAhmnSip|*ebNf{5cm#`Ph3n(v1dA2F*cN~IF9KVVpKO+;Ww3AG7TddsI#EdWuo^_G$1& zlK7pj9K$0QL<|1S^$M;ouu1jL(`jm#`qxU(L?nL! z9?tYoy<%$7)-7<8=PLAZOZFv3ALpSbNv}qt(j<&jLLDw5+Q4sg&Ngm*NqFJ|gK>3} zLFdR>0R*l)rm)vZHPnPT_Zw3v4KMRj@O&C*-_+QIxS;@#ll;YJl}6OVCG3P#$#QcD zra`=IUED)Vhlw@v;K1>oo(Q0SZ}r;Sk}VpWjpNiDI;>?4sTKtPMZDLC7m==u=T_WDPz` zJ!w19I1(HOdmrrsr?mCz&?~7k;?=Bcc=VFcom8_r#IO}s^djSt^?rAF9%@AL`CKDRPoj+UR^f8Wa##%`Y%46IEwgrd>r zn0Wxz%sLVi8qESj#1U z{xQRrfv1`DmdqzXfaxm;q zCE322#y)O}%;M5_mO^KSjh^a(^;GzE&n{P$j>Gbi16_8F9KaItd`#mE({ToVR0b`+ z?80G;UJq!n7XeEtkc$viS^*!+ zlg0_xZENiEf~)s2k=68v9TU9SCY#`J6gR?4-lm(?mDDIQ_D3C?W@bch)UZmJF*xROE3`-)IzYsrX?SQ)Y!(xRYG9Fz*o}R zchb0S1U$>-9u3jADfx7Yh48NxB6FV?+TRfRd6Hfsx3aYoNcoKgy08^lGu#*^@P{QS zDv4AdMx|KoyDZ4Zjj)u8@^V%)kFy-%m`DdfG?4DfdrK`7NRWp~9%ZHXu?y}roULfm zfGil)+Dt-@QxN~&R-ndnEsUfnI&m~_8FOB09!G(W7YJ!b$O=m*zH9nzqo%eXjN)@9 z!3;RY-0X~u{&H|~Q<$xqpWef;#K4__)0}gQx6tkuoxON0_gxDsnGUZ`gKw~yGF%^3 zd(&U=Z(B}sGC{e3NLtm0v?#+?^7_VyVJ`s_^G)XKmjCU;4XSQ)PirQP)M2%g`2 zg5O0rQlFQ4hGhFM<~I=zrZyGXWBlR4s90OL+RU3!*aQ(NIplRz+cnRRoQWWi6@JmV z>jFO)P>Hd}s=CIXiU}H}4Pr9XyG>SgA=#)QokJ0kz+zp?mi=CHuv+!AqxH6!u}a!3 z3jH`AEKO+<=4$}p;d+iY27`7;oinh>5u>2SLbb%lbym4R?sB4on??vc(^QIUHi{?F z`#BCWFxgNf_@O?@5G$#!?WI4UT>D)kt4r zhfMXNKAKuZY)B7G(36ro?u_u54G8T(g75Y0UZDg6qmL5iOLWDf5}%*$9NMJ>ymrhQ zKxWX*eWeq6HgThLkZ4uoLZkTtp4O=};x5PiGZpM>YEht^ItC_qR<=lA?}96#mlig^MCzprY2a zids`mBlg(He<3cMCQ#1FMbtj7br<#ncnJA!v3TOaRynjs(Xe0c!2i3r6-!>>+(mIU z?_j#HMQ~k;d~Bq7)fbnu%KHN6%R5}0y1lqEKAj)B2aG1>mm;roqeGT1g3AHoKSb!Q zk5+>?yrfWjIvjEI8mYAl{T0^AKaBVqoZdw&@$MDvo8-1vCxekCbwt=mhVY;OWqL39 zEGT`DI-%vxr18H=v4*~%Km4g0X1O@WpIQFsdscHu20K4T6Y+@FDHw>RiZSS7opf{r5ZPZVGZC67OyJvml z!~rHwkEssf{9xPTi3h==H~w{7HSF-Ynw5iO;(jxNaKPfVc)DN|OZzxq!gA(nU;&Ts z!86NaJ(km>m(d6^w$3WjT)03ev_toS9#!*XIDT0e z&qSoG>&03~=(~irnrr=I@2MfGyh+`v``m&j&1coN2&RXkQlWr}eUo^aW|{gYra#WV z;4t}k*vD>i?poS^yLD)-uP{eR{9jf^A@WdW_z3$cQYn%ht>suYYILxxY0}i1TK%M5 zjr1c1TpfF!am_ByLe4T{Oz(xJvt|C^;oN945a0E_ovE1*X6G-p>V!;b{S-?98}Se) z`M~Cu;$(??&yLg5>ifs+?*0H~arrnXUfHGHx=!lpx}6ZRxX*U6^QgDMeN5qvb1ji; znO$`3$=Q=@qT6>7jWcik)3|j=_H1cw&_PcMdWc7Pz{)B|x|N7|Do&h=` zedQMQ&%fOHWP#u+3)U7oUoPlAic2q5I+=6dETmBLuup!g{nH&Vcd>IJzxnn%m%kg? z|3v29eke99o}Jihr_Q{ZE*S{0H)%!G=Su@~{*l+a9<-hX*X@$spod7-N=*hUQ$K*Ljz93ZbHgL-++7tE1oM>DZ?}8_ZFP11|Cw2GBL<1!}*EoqD zym!E0WO|&|^ejE?m{rXky_lY0eAjpL;p>TVVGhRT=!baa=DiC6ZS59Z#Nc)0MM@2k z()6IYR^Zc8Jdtquez@D!W)`JMZtnt zPf#Lh?H)nUM$-0Z_=Q#XU_WytGm=jF3z2G`u# zlb~ZOU#?VwtUSI;21CII^Yn5nh@~_0B&rGwGPg?`?zmF=#h}bxVEF?)%v$Y|AWM;~ z!h73^^#>T{b|)_H$>NUI_k!x2U+XJ~52woEuzb)dU|TzCh#{2USSqw^3v)qBHLK?a zKIck$LvbS zXSNy@m19=!ykpQfz^f+B5km{QrVjF&8EZqHYAuxypf9p&5TB7o|1QA_FG~!5MJj7~#&>k+L4rYx;Dck3?=y6PmBaUqi$no4G z5jF-khhms`(D#rzn=%1OU9wCFgtD*$C4;^@fv^%AO}tc;$1V`O$W$m*-riZMCO@xY z)9Xms9mh;)dP=`hoXoFh7&Q#$Y1j%8=pYM)nqcOgs1S!oL3=3{nY=LFg*Q_%SL`^JWWa!dLYYjPfo6m%$V1)VH(sY%P^oPu8EAH^DR|1*=d% z+(Dwm1xW@=p^>#Cam-)QNkw+1h`{ozYt>&e5j8ptW_eJ6UE4Om02e%+uN072pn(o} zk*FO5@#u5kPX7AYk95DgOa+!!es?$Uq5PGZ-FN>$t`OC~dNbcTb!(t5p-(e-lt;}7q?c4K(X_T|=}pb<8wG5q?Epy>Yj zvx4;dr$4^daeb`(Zx6mQzVq5UuU$EdfA;l;CByx}$P8K9bmy(pfBya2AK!$Z`oPg; z39GJ+*}=KZD(}&~iQcyV;JtbDPWCuCY#4%FLa7gCwXuhF6#cI2?U0A+)(3w0G+1bB zA3d?a`={^VMa*sVi$qb|$*|eq^rCF42J|4Tj-!kl`;UD_^pgmQJs|3kc^7=nE*U)0 z7578m?DhJ%y9IQYbguCmOn0pkLho=pm|CB!-m7_`XAQm&OL!R1#4ZfJocoG~(j$wD zmxbpCf7Pqq$gd6COo{(_e-DT>-$Mw#4-Mo3dE3q}Z_mZjXId}yLJH6x?Jy$%jJ;;W zOgvqg8Ga}XcTQh#A&}+2n^jf^gOa~*GYiprGQ1aoqePk|CE~C{Lp6=z_R2$%6WW=X zZU7jhYjbRWfPocnq$Q|rvj~obNqSKZw3UwMuw1N(5J^ysWib*$G;EdgF-XOOOrQfr zUS-91=qMX5DF~)u-`Givx^y05R=sqFfe>*L+WDa5c?{bXg`G45UEr-Bn+atQEcu13 zr8O`mJJF29$yBJCyr~c_ivub%Y+n$11Ou3~$UaTLV1zi&V%R)wPQOrKJjqw+$0@OIh#2ejIU ziNrT6?;bqG8nKvwxB04@RQE`%LYhFxs;(^#uFN2dOLg>)}SN{q9S8&cd6_CTjBtzu_aU9EW%pE)z9BsIC30 zJ3IM*FzG`XrC0M`*RWshp2Euzrq$`;QymSEZ>9~Il1gwzI`j7fr%(2!k^{N%^+$7I zhceO+lVxFuOh4o$(l}6lnWOa4PZP&tOuc8F$Hy$^k-Z6AWY?wIhFrb*Y&`rC;j=xp zhF*cqVB}+3`DV9+Kv-VS!yVl+wh+0t4}u#(B>b=yB!$_@&H?vOj~J^l#=L24mgA6~ zK>(Km8|dM1#pn>GQ4JX?WmL-MwvkC76TsNgT{ge~ zD^VK%B5 zm^2$>)DSFF(H+A-B^qtj|}a)Gf!)rn@B9|7J1s@N?@)M4fzr_`()FKHaDCWlv@i z1;*ylcR~EwRNF>GvW9*^TwK4^@?os!8PS!W+FYIf`%ZP6NA%h?eV;7DxFLIV!8Nnc zMEg1a!jmtaDc<}@-ov`mQs0o1e+8!bI)S{!@R>z>I4{2jKNstaDOJEWsWh!AhV0GS zH-NGAmk>rI@;69894v$tH7Fb>R9MLDEgdXe z1%qV*oCzmNpc*NGjs**_EEW@kBV7`Hsh&eNB1J3L_H8B_NHpqY1h$-y$;;S06S)Uu z^PY?yfwN=mWowO&^6|@{8DH^ivH4Xj2}#2}wJ%V7yHRtY2uJ4_M@3=^PN>5+(NB&F?Xy4sKU1VBzxAjAUw5sCiE{iX3sKs**3!ho$nWu`Ir-u zjRKi9kKAAL_;!-?z)#XbQ*6syxJt83XCJMlnht!_?FnnX z2P?$NU^|Vt+k~|g1-0ljxf!!s_wBG@G>EEE2S4V;@L?|{e!LPnzP5g1n%HW{jkQPX zx$T+1Uikutd@z}5P&-!7S`wGr?5-#}vbo!=WxJ20bfbQ^1iy)0^<{)5GPW!b!R&Su zs#0JJsK;qL9dUn^?mSkSl4*-Gi_uv3lr@suUipn=KJ|K1R}7Y{8&>^yb7;oT?WONcvS{mdg)#x{vlGd79GT3ta7rA#-Ws&>0XoX3-1=ZY}X)zRj zA_MIV?24S+8mrO@Tm$Hj_+jBfA7$711DSaD4)hcT0!6V;?z0EqIjSSFq?-qdUO{D_ zu7=5m^YRRq*v|__0ZZ9+_upu>y*xZ=rI>=Oe=Ke*7Ucly?DPA?Lk>t}5F zP1`+>D zjff6-eygCZO_7pz)&$7RiJ-^X76+UwaHnCm7hR%lN-&T323x{OO?G^^tpv+5RTW$o z8iB2%M7!~lQYkg?aHvY3k-iuFN>S?EcQ0b-(0+=@RXmFXVwpaF4lJ|7nFu^U6mVii zGpVy%bwVS8%n637SQSI@qw|r2y)9iB?q%dQXdnRsLq0F?v=e0@;Fq+0BbD8^&%n3N zr$f;gho{f0lCWV2K|Dpi9&mg-%syZ>`~MLOnBU+wuWew`J!{L%lVfhZzJ z!($!mqf(UExQRLXd7~WO*#A3IA7kOSM1dV5%}Cm33UYIXJ+kAua)#ZHHZMJrZDH1* zo=uQh=BL>^$AkwnC`V7OKaZ{2*9gz>FQ`&0+Yc%{UrTNfwtuY+ogWn&aESW`ts-8K zgu-?+K8zs&GZnQdt$z{Lmh^e0vSPS9GC zJOg{0(Q-N}P_KD`t@cm@Jp!X9)~iJoWTf;e#}BzQnW?iR$JdYOQnogYzF#Tm>n50t z(efuRZ34U9g0dIXo*Eli1`C+8JIngFE13_B_MChW2wbD5K1-Ba10Ivfd93Q6JFWLMHAsh z1W&Nmq776HTc3!76#x#^WAHMX1m(@hY5|FP_<7b}%L1_DqBq|NVBiTH5oUlj66p{b zL9|xN`5V>hA+BEjEOyMwU|=*90$Ia)?F|7T{bzz>dH1DBqr2=o4ZkFOsq8k%qdP2A zUqmv|b>Jl}DPY6^{4l!fdnRN4Zu-JBH&fK^IDPHg3G(TIE{a#}Ik#Kq039^3|4Vo& z5tHYbps<`AY(8DdaqrD+(s{$<0%1(m3F{_%!`#3gR@CC~SI;-U*~HNOFwvH&=zo+s z`-m9>kJ>uqm~gW$n+iL|x4}>if$hkWU%aRUSBvA(aQweptN%h3F`w2F>2B4f9`RAF zixMIx$vR`WV#Q+)QHdO`+K5Mq^5h;>fHi^?pIB+HGL0oG5wQXltVg(3X4>zce<78j zk`NyM4>4zOGFYWnMNrcmwDBrR3GXBm_S6n+_zSB#-k0+u%m!aJ&Rn#38Kfe>yHP>xj| zO-S$7mHAlM(NQ!4OlDJ^R=L{z$ANGUOWqYa@e`vSo;aMIXc^Bnnn2e@#pgd`GNG*5 ze7q#Q^}mb1_#NYW>V_E6x%%u4L8UaSDR@#fk&Ym)xkpU~raau<xBI(ehW9WudUJ^XdeW8UsM=h`=*53j#G++3Ue^;5rBfo`LShqfmJf!;n;CWeBl#E<@PiBXBa zTx5h6nxIfOCyn{q)bSr#`n`1H(q<m3=V$xyD?ZhUoJaVTe{pj2$Pn%PUhz#h%8P-G(7dqT-s9Am+D8Bn~Zms|j1GjrB0pey!Fz z;0jS>8|1GOwp`+JBKj?MOA|w;@ueU)L6eh@@RIO(Q~O#?sED;4vh{Yg<6tPlGwLx! zke(KXPW5kE_GV*^p(V}N(l{_(3XAFai4B}f9}YC}JFlb#0r0z{M0=wcA@z`2{}EPO z9JqF?7kPwywA~mM26w%%v+#nKA+@#sykUB=jhntT^!s3J^LBt{0XJN*14;HRX3I9| zyuPj7^c_0;k)w1qkwfFQ+Ti#B>PXzrscT?p&ynV35G{=o_PZ2U)>GcqFzdwk_c$I% zPeXhEP^0Y{OdGtaq%U7FR_BAn-7a#FCt}SCF1#F6I6k^}ll7_YS&CT6w!ie3=C9XeuWGBtnd^nY zF%1Z!Ixd#jk?Nms6!a6zflB$o^o4=)pRTvItg~33{pJ1UtLLOg&m1Gafmu5v`8KRz z^EKj~yWe%9PHN_NMef$#q-5cNRP94nnHHg;jMvwWcIqbQ*7x7{} ze;w6u?nKX^KR!47adiAwuY3qQSQ?hJyl{$zTiyJVv+{?#a^Fw>x`yr_wcexlQ`aBd zuzc%)E-gPn`6%EvI_N9cbCAgNCADEC5I&7kD|t+znr2O)QvojJVVbgqrTE^aL8-bU zMDkd|s2q-zr5}Ony%IE?rs2v=GBRKE5`l)DMi4m>M3mW2&6c6{B!!kt;-3@k9=Q<( z>-8r&X3kSaVv?0aF(-$kVPR&C9ztEq5LjstgGARFP9)l2LN@Aer@}fSit_vk!UM=4 zB409AV5kL(LtMx<+>Hz^MGvJ&w7^yEbbMublcjfbQA!p^xRx!-X^o}{)T!8DVeAIH ze|Hm#8r)$@Kerob2WEDuQ!L$PIBGWE@lT4rxh*E)UM{7bdm_x{ASYa8@^iG$2N5@| z83Ur0rSV8@BIM?*+m(4A>4ZKhQvPl>n!!BWZ1xFWGXQ9&AgAwj>s{neKH4KLoy@)) z0iJ5@X*IrZB6rIWA@O`tNh0gc2{43bM}vsFlbz=%AH@_&;atjNpwg0XG-p}v)(ahl z^9UQS&hK)vk%cN=!tB_$;RqDWx(7t#6?LL5QZQ82wHUmY%J^Tu(+O(TZxY8DxFZJ^ zrRElf1&;wCSjUY=s)cBS&1_~@q;zE=3oH?<4&V;N$sAGW(xQD>`!On2+v#;7H%w+|i*VVFySJL2aBy|Km?KQdKUI-lyM3HF&Nn;{ch4 z9fyuO8KKf@%dW_?NJ33E7oyh%W5ekh1R%!dP_|Q2 zSGffjM)O-ZPtSK%1ckiWHi^02WGqTY!Vpuf+6na1E?NU(Jm}g|sFc6lM)Mm22sGYGaAaC}CwwahJM- z#~4FQTo5HC)ZQA=IW6?MV>wQHy55+ggogzSq1(uR&q?zye|M2SSC?22-Vib0r=fp0 zHwCg>*xuRM7jy*V(3kh4@$zs36vC~40B(!ZiLWuK7gVH`lf=80e+PS4)00J0mu!hT z{{RXVsledl)OC2viIr#!oRl2ZTKvX)9$P%YtS1;!7o;zTH&JWNqANYQNIKZP$!)W8PkV?fvxQwny5(g@0dN4cE3_Yf4Gk z8PjbxV`Hr7*>q0GPNF^Ojq1r+l(k7BI^5!E37aAIK?Hi5CVI8o)W>gV8OX4JI<7aK z5lO25Wc*r+&g{k^2qh=(>(;T)PT=n!|Dv8R%>DgNE9G^ZO+171p?ls6Yi?g)MF8Qi@sGBWi=Y&2xulsKeq;9Rx#1R+iP47%As65ju3N zkLwSP^(CX03j$oK4x>`kC-}5ft&?ri>~IYsWf6;6f>pc`L?woZ71m$rc6dK~k&NWB4lYF3(pV_wP9&P>pX z@=Rfiv9Y_^fw?$Dg?SsQztDH&CJ_3&!d@CUZ@PDX{GW}3;fMNl2d36T?6AvxuKA5>@|^T;WR}O6bY3o zxDTx_6|;X6I-Zt=!5Zv6hVNQeJVds3&eDW`ikJMd5G4WUgS~OHUL7+w;)u1it3MZ!}66!7iWmc>X40E`si1 zf$FZ1CTc3*cQFkjp`MsbcA>=jC^x6QWm z`?$dL@P^6%^RJg1}H-=XWq1Qs>L@qcIGf9ybpLOR#uV-0InI99a=$wtt2 ze0%Uw2=_pumCyjPzSpWRSLufu;U68Lpf_>rse3dOz-`{uC^v{J4(fro_s7W>Th1Z- zS^R%q$7lMfVf|Md%VmAwk)-n0vU}wKOkMhh_I>aO7IK!zM}?(Jai0c0`|^OY609|) z&tv;8IKFxzq2(+r>^#`_TJI|90no@z2ma8qr$4d*2 zW!xor?Y50anXf3uBA(qI6Ju5DEy$}Bb36D!AB97D|LT3g=8rK82%eGl@`l$o&puF+ z&T|myX5u5(1><_Rb+KT6CS`SC{)h{rlO3chEZM7n7P`pvHdC;#bf%fi>d(1a*r5kY z#5V_?B`%WwL$usv3)9HBTAag9a1|4>qp!yv#WIJ@ii1QNl)cx?$!3X%WA%LxOdO|+T)KRfAivH^`XDv7Gh(WrJtdH7iNE0V_4kJwm&RU?W31}(f;!yQb~W5 z+V*!3yxNt_C6{!flIImLugt)7&oMpNH$DHo-mY`E&v5y##b{2BQt|?U@V8i4AiZ_2 z36uQkUtg0(_wTid%4_#t+wjk?OPcl{+}TZE_yl!jvA^py<~KI zRx$s)uL{x67H=ETaz8g5A4-oXZ=RcjIwT4gOvpU^*lrIH$1G=Ow9Q=?{(4{5k=ssV z!uy7$F%IT5r4Vr$hf$HaBgS;~hE9Xr5 zjm8UW!O_l>dg{TDg;q_8|KyU7FKvHX|8cH^yzawtAtdET;XzkV6;D6Xc8T`A!4vz( zxKp6Un6y5_p|78Qq0PjRm?v*rc5fJ)@7qNsdQ z3M4w1BvvOTPueSC!=Zha+mRwwG(vbZH$*`rKhEF7RY3v*Z~~=O=Kvl_fgz$25CwAL+}5H7J7p@&d4=a6 z?;aEAc}~A7ptUOvM#Vkotg~+udJEZ-M06sqir-28@T^odo#@pxI&1@H&8N%$`WtgE zv7Gtx2eWynbu|q8(R)EkWh$p7qHIW{C2Why{n8(}Y4+3Emy?GxKRH|9HqWI~d%MA9 zLdVQVf_P!#iJ^m*ayNf+p6vP`s~4Mx*o*tE(}Hr+9ofeY={HBaQhWw}5V4S9FDsUp zc(N$6avwPJ%0c_SPPi)GMZX+2%mU@!Hgn6yha`<!aTaLn9mq)$Ydu@X z?^9g;z?j0__tzPwBA@rs>pWtF${k*3)=kYFR5(Rl!{HSTrLl@a*+hAF3s}{f8|>w9 zlC&^ErzP<9g4$2@4N6>fnX1YPYBLzLA4_ysTn9B$r=7qcW2GX0NjBdg?!eP=s_jtR zN-v27%Ch68k4Q#;mUU+mrtEj7oq5S>#iJ+o#=@HUDxQEZ7aNz7cYmj(=c%5V4n2-8G{ z$cok&Z(3)`!K4a$Zw(=6J8_;&svu7~2$lx!|EJ(Bzau~FEboF}F*BozBvqA|vBAyV z=8l~>;AH6R?Ci6%b9U#=KF3Eh^Gq_cNu1b@?Koy^cB8u0EoLm0N>wTqGc$Aj9`8T! zeRa?0-ur!V(_%vL=2ju(h5AJMaMmIXE-W%%Bb6f%>0r6xq&dA!)Uv(zEW?(apaiWc z{pyC!?`|`S)#G>SmYjpWJhY9Y-RG4FQ+~eO-lLf1wXQKw#E4-u>nCOOQ5P-@UB>Hx zNVa`6SK|DbszZG>|9|#%Y}!AWe*I_WY%xY`*@=ixi0N7^U~-VQ&WTAAe-IQ!;p=W@ z-v=!uiFj{sW2ezeIGwqG4QUPmCw?3hsjd`} zG2hZ^&TypYevms7%&4Ylld)*KU%N9W5quA`H|m)Q^gL=a2oBr3ygzSWsyw%++fOZS zuKP4S@7*s@2xw?C0f`p!EMf(O$H^R3V%ih{VS0V=fYX+l%5WS}t>u~^GM6@cJy;1gJ-+(5GmNEjoKBsYbP027UG zz##Qp6bd#A{w5X%ngFV=4wV&J>Nyx*avQRo()h8vB_f|kFD8|O$B1e~iF+Xs(F!4y zq1?Vt!dsz+d2I+8A)>C7LQb5c5|%zJse@Z}mtAa)X;&CoSUQgLG%tL>^YwUL=n$VPpfAkZlW1!KZ?v76NCNE+R&lM`JXD~E!jz^oB05Gvj?Q?U zPCFCR0z;)~66nyuJW$Ewlrcz^xPKxuyLG0wf+xzw0!C-nlq3tE%LSHRQ5P7JGrcQ` zsr%L2 zFFtqq`50$urlV>|E}HKKlFboUNjZapIQ+jmTR#y`=%b`V9dqMT`lRc)i?aw|J01q1{xh0>oa_dP4!}stM2-!AN9>MLC46W_pg`g#58Uw0+Uv zb6y>2I9rl7$%^36cow44}BdWzEiSnJL}iwf#r z?%|IlNQVdJ$UbMX?eK_Dr%pbo_l)aqp z5eB+Ce%*^Zs6OsE+-EJc?PxR!J)ysG8k`M%FUVyv|KWXpG0-01`9syorIGIjA@@pi zcjUiwgwJhKTdswgm6HXf56jA_D(BwFoYtS299JZVFIcaSMM^!t=DcsiK9&5BNlYU` zu~z<+ z3^52{q1a(97*DoXl+AJ)=P}nhf(3>2wQDic5wa@M{~r>DiMs+ zv}pG!d%{)*z7sK0{lE{SQ`0qeBqGTY*m`c<$+_R0 z<6=<*uf6khfliE>RJ+5FcIm~nWWAPwCwMMbC3tW?X!lsFO0>NAV<8H54qP0QcLlI1KMCh<@xrnyI72@Ki}SrH)`oX6 zh22jgxr8Ys#oq+F|A3_;smD@^supVJ9azCGWa*QuV;?oJXA^&2+)_oX@jy6+@&9#%EFK+NXqx5h;mvuS_Cl zpg!++a4kJ)3aQ?SoOh#|%f17CZp)@B1u1b+Fy+id2+9P}T0ALKABpB{SXjS{XM-~! zi542I$u9%>Fa#>@ig3CJiWoV?Lwb@a2qi;#0`2q$3W}n)sbHo)fAdB2xW1bXXt#&qi3;}VeHg4-X5GWc_>9bNB$gp;*2^~md59y z4)D2!k+bu%#%CQ?!uObby2`kV99vpCr75<5%u2}8CNuOCH+{gtvKgOIcYLisn#h!I*GZJ$e1ZR};F`xWR2nAxyA#ldydla4w%`1S%mNU*Z?|*u zsnQ151rlmVG^GY1*>9tm^}4ev0YF?b>cT32kX`^zL09(y411Ma%R7*Ag2SJxQ4#H#b9D}X}*9UZgUg&mC!N_qUOTVRKpa;lC?7klspWt4Qph+6o|v-Yvpp6OG_cd z7V`PStRq!^pNDbxlIeWzX*qD#NZfeRxfE@k=CjiwqF_$So@&L{CB2@RFCG-yzLiM8 z-IIb1D^hw$eWK-iE@WX>ePOwd*E9XA(K$zhA^bYgAF@WtvTmoA;hX3LxyFyj6L>O= z&zrD_Qw@edx@?y;mrOqW1V@1CFJBlx{rF6Ka7ki%<%NoXOfopvMhLHr_xxQkp1XdD z=D42Mh|d)E{+EJg%(SzZs=mLeSe2u>Iz+may<|<_^JlKP+FWF5#_}BBx9YV#zUW#u zbdWiaMbrVCIb&PS{De(}5m^H*+{!8TsYi_~i^)>wDdhKg8h5w8`Y*=@kG9=lxOKQW z<=>CwSQz*FYM`5gK6&gain0en?#!}_&}pY`7J2`7bovC!fyahJ%U_fWYnf{d$vQDX zBC-VhE1k+^!v$N*vahX#RnoDqwAYh+-k?`I_l_w#>dS;d%frV9_W~mV3;st$FQqaa0$v`p{<60@ z+X9;vmJ?VvC>sbIkK4%EqU`=F56*QgU*#rPqpztSKq+v1;P7aU_lO7;AgXTY2`UB+ z%a=Fo6J*>siC<|ej-Jg%>UMBI>s{*^d>-|;pzj}DScT<_PhVsdH!;ng`H|%Hv8m7G z1P`T&BF6V68ySBTe-&JODCMo)VfT`cp>S~SOLX5LI;UB~SMvQMM%2^YMGToYUL!KQ zjYnr=z6&gux$U8x&ccSf5VYHwTy!r*BmDgAK+oGtMcOIIxBmtHu;saEjdT_{?h`(4 z(#~P6-zplR3T?f@cphcdd|4GpEy1gHAOG|o^$ke;RyOz&j_DjFi|63_V%+|8+o8jQ`Ax~QX0G56KKCtehpD7A2;(@ zxCMgswvQh=&Uk4YcbHA!?!|H7TJMubaU3zaN;>cItI;RK9fA_aeGfUaVyvX|2$EWII8h7 zWn)RSp>4leA3-2H8B?5<37k!~;lNp=NQb4n<-4^X8pr}YRBA;xKJI%4#UQyIk^MT1 zhrlWPr1+yW_aP~Y?4d(xu2dlfcafg_CczTC_inZ+x0~1Oq)@``u3!xlYviY0z9w#smYyx88A^fD^%<1qxw8f>^ zXtY!pSYu5#dq_{sw8en($b7pTji`>G{Nfz855_p5b@TMA3r9d-e|MCpJMPE{Y|_@5 zKf=r-0nxuc;TMGc&CH5HrprTFwklvzmySwUr}_Rv#(Ty-y^!K&(4O^CNP< zE3AsHFphP=L=d+oFcvHgW+W?VZDQF6y2@0nA9fUT#W1=SH7iy{K~GE)!^G@?9D$j) zfdQ*mSsakTiyaq4$v~3?5X7Cq9-3*Ou@wYAGIH7&O|i>aJyU4 z9SG@Ej@Hoe!Y%@*Z;*r;v??g1UTqAe_hsGWa^6-!W|+3LyDOWa`dd(5KCh=KT1`OJ zbmJ&%%SMnq8C!@Yc_JS;d?3vi7O}D548u0@KfRD5I;t%akl6r|#+yQ7KF`II&slO0 zDy4;4n)6syh(T0hjs#{uL1WjmS|j^AcoinC<*BBKrPxv{MX6>6eRCK2LNP`ZbPKSt z3PbOqvL#}Hf*3}TT#>R0!FTJKK;W2{Cl%lo`@w8L(7|N#qh=SGWNVM_*{Ugn&;S>D zQ`Kh`e5;T(kys&IZBx8e+3M|!Y`|FB1(jh_yL|fQ?8OJ6)o;{Gt6zyOQ~HtChT;U_ zlzK&$?Z5o_tJ(5@w6e}y+MZgc=Md$g-Cb3?(>xk0aF}l{Z9BG7OU&hjIyZq}KI<`t zo^oecwuwtgV8sk{QcdS87rNQ2U#A@3hH@k|8xj8Q6FSF)jOSvnjn&{Pyr+B3){TDT_0A z3^e&-8_at9M&}2EfjnnEj~zd^vyVc3sSU4g#(qr0UOM-M{sW^6|VtbMO~{<5+-UF}0$&4-wU~px$pp>_Kg+{?pkbUV zQC|D%V4j)I`IWol(K@EDOWyPt$?nq6?g%n=c#(Zbn|g_PP1d$tJwMU|i`WQ5ova#5 z+DTNX_giCO=uyn@P2U+tgKItN5dZyR@?j5)QgNvs_BhRB7aP?oy5Asapcsbwzh|ta zaWGM|>IvdrYdjFw*;Zhqui^l)uZxOrM^&qPDEL;a!{1ZTmq1djML-vAI@umm8Hel2 z?n%oc1SEPq++JLhSBSab-b^H4no7~q(RMD(4D;>ry23wz$X>BQ_ldeDQfX)TtczVa zl35t!)v`lWnIGf_&t?c|SYeyUfUvWCg0FDQ(zc{|dX$SZC(-iIQc&Cr!gBzc2sU`k zgpZ=HsZt4zO+-KeB9-4$_a*6Um;{}N%frItF^hm$ljX`yKZ;A|-|ujO0aYT=W6@ar zv^YK}dCIFX_j8AfYqugBHFg%dpVj%8z4>(Ic;J(>!w$KT$pw+fwTzf{XIQUma{)R_ z=k#Lk>mAu)UI@SM%j^y^kTDI*URl6W5It;?CwkQcJV82XYLk&5!qdI0{qXOG*o<6n|Mi`$-`19A{?`Y+3@oSQ&v*wSaKM1&z=%O1I*o&shE(b>DhT3JKv;|ZxZIqS#o7y_ zB9F3yOXJ7AY80NJ?*nQW{IVnChiIh+T(x1=keSTuXZLL+K z&2USoLV+`V2ho}>pL*hB7rNx;Pg3|g#TSJ0wwTK}6tCLw)2p}~y9#FNVMv_}`I5xp zAQ+xVgo%TD=|o!&pD@>W0IWv$1*MgQ9D`;Mzo+8qk!IC`rlV_}VF+oBKDIEZ@ii+;|3o5S2vUCvvZ;;u&FZBUVP;lEmgXR8j)xz!EE^uGCb0B@#FC zTz=#=maF27)t_X%n6|F01e2ep?-w1qKy1C58b%ROTGy?U`hrjwmz&oxTh+F~<7C8> z63dr>&YGRVJu>Z>TaeCTJA%^gVNH?uk5%lw(#7&1FK=nZ2GE?E-{b~ah=C-QnrJXR zm{}K`90V$?LA0}{^w@JmTSqgJ$Bd*67ETjTkY$CR&h#62Io16+HA|bDqmD{+sq@V^ zJl4}M5^5)b=3sqoSQ;%p38m-(-ZhhK)q-9YH$7z}T;F`$NZ}I%T<|z4N--KFgn(# z%XbHgqOmfmJGeG_MZ2lE01JJm=tIh##@7dbS&l_M8S0Ea;QEKlhc7XndzS8cWz4e$ z@``;Uox;;FQaOjUEN$Y)h7s=S&VTJZ)k9lsKid1C&DhCQ|4Eqb`t^KE{QLjS(ip=IOoFipEQoaU6o@-b>p;c%DlRv zsv%vZ`lo1Mi6E!vI>d_3Ej_Bu87)}b#cMv0uDsMc#nGR7I#kcJ?yc-WFRxu<9evZQ z%5=~DjQ?^#yrvi=hM|AMQut+I?<;oJfW zS#n8{QACAe|9m`lctsHVNwZ)`%~4>1%B}qT3HlQGpi`B)q@Fo6M@r@&Z6K2g=N0CU zvJs&HTdsaI*j=Q2ToZWxWuYc#{&r$LQx8DOtXI&+AWP%$npO1YL<79b54Y;r|BfkO z7Mx#C!s$$DN zVhhCjxD0A(b7wsp66_d{CM-}$sNTWhn<`O=r(9J3yyG(Yzx@L8Wb?~ec_Y>T%hZuU z;2Z1tn-vl+yaU|Ve-*ml_Ac+K95mjrxysOIW27s;eK+_$F!s-5a}NmSgzICATK~Iu zS`HJx?|jTBm04MtozU}lczJ*Qe1u_mtFo*j&Kq-BCDiE6DeAGt6DLaqf<>~ZMn>Y0 z?C#1e9go)DAh)%7@R04(XplJoX@_0sF@m$V#i4$r$C~9;ILajQ?!l7;1KPaj-PL zYjd|gnu>Q@(bbsQM5DFD2z4P@3I`%*9hkf_YNAUXCFM=A-ibvM$gTsrC+4V&I+0uc zbrRi{23os8SepnZOL~oQopmC;=*ef=@u;3QQ!1L~$COED54cwOrh|V-KFi9t_Ddlp z25~=$F|=YTN2uGDdNEfH9irL2VSePp_D~Zvw?VebcVOAkqfUNdN5&9cVDF}I4e5_dkqJdtpr6~bOG`H|O%BHfYi&VAfIl)2t-CtHX~ZRM zPBvfQMkgIevy2$qWw1zlbtYt>P}_OPgE55bVsZI#+Y7~N6DEWCpReVMuOAQc6$Fhz z!tLWWj<7*T$??fK*)9Os(Jl@%l=5T^lH$>I&eWU_ZQ39wc%`?|?q=wV+-`(zLXb|r zI^wxkFCdF*E0pA#_UivNkx4Z9i^RckdxeCuK3eG0)w|At71J6{qeVE*QiUY46gBOZ zf|c``lZKpSz5iy9`a$0O$wSlTSS#~e8J^wR^q93z&nbvCEh4ZQIlY`pZ0Vp`7ak)0 zi8HKn&1z%Hus`Z@r5`+M=Jv~}eNO06XwA~Oz@xIrj>i{f!VmM*VjnJ_H36)LuM7ELSdfEYEZSa~bv zVDHzdDcw1=;S;#}KG}YM5{WrL5x-48yS>FL)AcVjlIX>{fsp?jR+O-VYD zFn&Dp3G>e8U1W@_g&esc^p%140e;=Ji+v7Ez9I9&K0j$`Ruwl^Ei+&9%if?Sksy95 z8uZN+jjJ)yjLQ(VgOhO$bwOH1ZbuJ3^ofqraTBvO^2H8C!jo`Ws17$TJoX#p*}XNG z*!1Wyer>)|Q$)F94g%^E!iPC+a*W*go1v(*LzsY0!Ul5|!r&n(`@AM~OU`*LVdMGD z&hSqBTnbVs#^t;&iW#IImbNNqVt<$_8=meyFI4}+iF%Dy+LC4n@Sc`l0bo+Z^5GN;HlH-yRB=MD?eyj;+Kzt?eJiO!Jf% zqyk{>Fp&`90NI8$j$e%lFa%1TP%P!q{*c4$;SCV=z`ax`>vPEHxN^#I*0Gdm1XBrp zTW$y=%+94f+-DkGa z-GJ;p4{af^zCjoOkAw>W`(AEt>Y%kD4zkjg4g$pwF!*kg zW*_UVljbI%DQUmB-9>Bh-Qq|yw8Xck+$f^e1#kXY| zZhb=rm@U|;^#S^g(C3`B!j9$|J0|HqXQ2Fq_+yGZUFCTjRx{ z_y?Xl#K${rVn~!;dfa3U4xuC+Yr)f6*L`-0Lv&unAvqYIb1=2iaYsX9;Px%SR&yr$ zTPx(r@k?+ez5Sc(l;cQ;H|eo(M82mx@gw=d!tkQ7a7%@q%F{J@#>UZ%(S7MwheIq|tGop3quq7f+ zqdYQFq&8j04-=|~n1GJY-rbk9BoBi*1jc*4fW{PP4QO&}>v56jYi~AA^0G#5#6>~J z6OyvET=0=0d|4P2w&R>ArkW&RVzy|h8p?jeIHYD({wmk0gah@wk4vaE0X!r~MF!lo zd0Nc9#*YLjg+XeaNUYHs@JgYCqGVC<{W*>_MUg)~Vm}6RG3W}+k;Dg52w{=LV?o(g zBBu$*hNB@NHN8I)z$>O`coGuEQ>&FpL8^s^s7Ffex1?5{0bYUXORBg?-ZT=}`Qt*8 z$~+;W`5Al-VhzGW^(4Ok>Fa%Y;~*{lacuGFHsRU8!nYkOYaW5Z#o`VaoH&?2B;g4xIr_9G1?}jD}+Za*8duS0;*C&L){+|Xcl5RQ%HsQJ zW0mxcjdW19m6it|7FrtH>CzfBjHwCMgqAek1>Ja9__m3ZHNjI^R8Dv`h()cEtB7;d zYwY&IjU}Aku}AU#3gcu^P9& z?_)SE!<$GWPzlx^JXbMOIt#~vTc|o|Yd32rKMM#kL&Z*;>vJY+fq8&NUCV{Lo553~ z6v1(QH?0IJB>R4A?pVO%AedOe-pW)tQ6N?uc2bwe4`q845L7Hzj-c?3xSwvB=+2P-@zZloRTeLUN%+o;j>BN&H&IBUDT2RHiSHZY9g(nMch<8_R8V zI8ZoO$cBl8o6&dNunLBXNkM~0VNw*04AdpZFepo=@XdB*vUKi~YPG4$FpjdEE0f77 z-{v#vq5j5uU>6&asTBU|pE_604lJSHxc>4U?dfy}YNm1GtcLaetQ7hnG!Z2}IURqu z0o(oj4cQxX#eA2fyXDV zk;e5?fzpL|VQ`hk=4f6S+00Ld}uqGARx=@eQHNtRe~YAwOl{x2T|F>lH0c1DI(b(BTTl>kJsv)^s969)2+bumPeb_+TwmqkW zmO*v5&CpHXY_Hw7GnD&g+;!M@Z)z&9Vxl)>n+T!MjA@+%7X)v1208)(%IW+0QJneZ z_}lJD2E%1M6f}MYi#QPx3FP5hyxrd_&m|t?)u9(B-*ui&CEC?BEF4~h>XPAa(j705 zN@mtQ>wWq5 zzT8)Cn4l*XDPF9P7=~S z+ohD~yQ zqr!5ESB$~z4|xn@f{Or-kRp?OCWG^Eh3LmunpUPt_JfTfa0**;4O(u_ z<93^HObu|v^B@U*$go5!=olPA2|y{Z3Jd3MR7nX$boE&TQ{g5n`W&R5LW1yM34yX= zFo$Tshk`&{^~xsR03d2$8VcG7*h0BM;fB%GW_iV&DZ(0Lu$nGm2v{IOM1ti+^Da=! z{-8P#Q>|0OD0~G$0?Jt+gDxM#LWv#J?=x6$fdtiI8pUn=R2e}pp^;SBF|yz<7P6>P z#9yff{mEo5Uaiw|h$=PsH0^w zr0_fqO-NVssRA|>N0Ng-*nFgPh{Kl2&R2VYRd$Cumhrw$2-y*5*HzqNQ0e`JKoah(m~9Ehn+F`Q`LuG95n?W zOm0hKx5=kP8t6g;ipM&;JAG{lbg`s*a9@sCFA~Tt^TngCWTMpQ%vca zF}*{mH(NL{kk00XFpc*RSd1o19b6qc+gOwKX?I2za$`Q9v1VB2-+U!9>r| zhE?$|ztU!E&|E)mAghuDT5>P{!ciU+prI#Jy3p&puwf+i+)?Y2%3=_WQRRu6l2bVN zUGMtOAKohU8@p&PEr%x)#eFvC!&iT4+$Hnpv&l@nJVv*6DzGtyD99{Y%{@E29IRW8 zRu*iiTPDLU)a7Ci>|ZNc!7Ckkv?q?w?hPx=$$?4l^TGCujMk^6m$gg!N@{wffS5h9 z4xDb*01s@h_UzA}NvF%nvNH>KWISsh0bgnl0y_ zBkmth#LVxTk~-u`z?|{&7`bFFnt$?y8`B~m+CCZt9QpO(cCqp(hJORqU97X^&)BtA zs=Y$Aeb9v#JlZ9XDv|2ZffDLW#5Vh}$u=Yys0BG=L(HY-7 z-FYf9m&Zp_$tOmor?Vu@Kn-sXO#yo+IuD0AWgJ9@J(mFmOvOPUQ+)=L6rwd4^)FG5 zoJ&S_Nj8Fe?Lt} zvh`nY6(d$Pxb3N+YVT3Ou-^9okE*>J+DE^$gcVa1pWPX;Q+M9b_7wIQt<|BKjJb+sT7?Bi%ZhmnwUee$%+uKqfZ zA3p4!YE+-`&)dx7t^DqLl;q$Xi`aGyw60&wdru8I?V`T1@gfH=+K^JdLoZsdtck;a zhEw%-ZyR7oSKrJXqV~+M!7eU6?=dY8kCyh~l2il_u>tj>6EapPmqv&CK7G}K=Z%1` zi3eR*$T}Ik{tnuZdj=8AHkFKO>Rh72d_Bg2ejO3Hj5_t|K7tHu857k{l_Fbm=vT6T zeh_2Ql1byYq$`I}k}Xc!barmn*l0HM`rl(ZN`l=Ld||Jl&%ySt%YQn!_ryuA5=E*Tw3<>W`112N&Okd^YAAU-!}Z=oYjuU(3_| zt|=vQs6yG&_R;MMq5Gw2qnqKc`JU~bp00V_=c!O}hp#@wE z^zIG|JHSDM1;*_zhn|h+Lkde#neF0K)JUF=^F?LSKHV-%NUcO$RokTg#ai2Jgr5HVXXTdTP=a}Qvn8CbM6a}QGm zF$5f^TA9b}0RSJx*j%SljPNG9Xu?hHfHPDE$_^y#Fh*N5gF(ltBNLy z>d2-89*jZgzL1}Q{-W_G3Z7gmQghVpJR$DSK${g7l!&2HEM&>UA|X>j|87~@(3c^_y!&Cd))A_PyII|#WkQ9qd(N={vSN4oBaHh$#1(SD;K4F>UA3N^=s4f zd(obaqn?h`>w_kX{5|-b?@KlhK{rB<-cUaxidEsq346x{6N~%{=CHTU{fSNRtL*m0K1%D;9)c^qDb27oCO3DpYPP))&6DMA%(#4xFDRwauA;FUswQm=poW&sw4 z=IT5`4xR>}OjepvND(SIq#sBoqnLQS0fQxL*fNobhlMFL3_4poEbstKGy^L`1b*l` z62nem_1Jh3XjUmWZ+5$ohazJr&AGO##5(xJ(CM_usrLHY}^o0h~+j9DMukSuS{@yS>OLNs(xw%_oEi-LF_PjYV!}865d77;c=K7Hc*1!>Gg=p^ z$<###T$fu5?NyJcSmktYxg1tvaX?#qty4qNM^h^1LS13M3-!%kc&A;?CfR7-xqlH>q|&eMkQX%^jG)1sfgY4rYPC+O zDP<`7aC<-0{Xvvq23ZsJaK2%Hc)e_^Nb5$GD#zO*_49TV?=5I4g+hXM8(o^J6s+C+ z)@?!DQqoXgNNeg$%PodpzrI^K4Ar+O-NEqA)4%lpP}?O)Dx)v3jwCoXe8;INuuCRA zW*6+SQ@ETa|jJbW4!CUh4`AkrDI@HlshUD=D{9Tv0HW#WaT*L9F<5GSrj0*q8 zBasL|3}lV%U#j@j*(UqXt*EvjiMD@q{yycS`qQ*{HxO~(T!}*h0~@i|eNI(VlC8ra zG;sp2^g6jMJrWmG#f#^^H#aru8BOk5ZSa~{-sA2?9F$rl2qdtTFF;9QF4^~?KH))_ z^6L?l6o)}2aQ0%-m$GBq_OY?;f<^1@UaV(r#vG>BVK2j7P6!=~hd|w{9c7CYw$BSv zOY9J>EQ(={Lct1vSdWrw3}&gAmBLd@2!c~>a8ZIxtB0nL!O#hdvsOy~W{pwINsDY# z6N(s5rfnS&)!`aEAV-n%aa^rC&pq;016gR(O~W3AmRjY>bQ>NZw=4Y(68ql($Zisc zNN+2r(wOFG!*UG$GJio@KLy9D6H2*#zD>J{dI{u`W)%Pi^bJ(k*)>@1>ntiS8h%x- z`peZOBcv(ehm&O}JUN&gYV&`W`2Rk4pZw`e@jKQ)xxYmJA^g*`MMjqr<@=f)hP2Jn zVds5Rubp}?bujhCM4Pd8y`|{PnwRd}nEPHdB#@3JA8?wE9SObn5%*8U%*T7hf1{mr z^q~)i4(xOB`BrkluoIH_8fBafV!pt|<6%$*2C9*2De?h5BN5G`=9 z!@T~Q6aLYgbTx<))Mp3(uq795P0EK-!V;Ld_xwFmv&@l)Dy6O*zjEdx0#(zoGXMGF z*kRf*tJ)DWi1!@&|N)Em()A+Dh~SB)i7wt9uvHa6jWSpPI~8&PK=JrU>P0dcb=&^9!^ zk#tgzHUytPz#ro8hvHy&I|{;D)IL+$o=^+jv8qyK4L@MaAG3BQCU+j+G!%_(;U3;8 zKn`4Zz(%;w`)#%*uyF5Ct!1m*+Le#Ei@1|dng(sB;N(mjiWS%#-cN5jKBL}ewR^zG zlz{NulF!J3!1IlMwzv08y&ptw%AOYGV$ad}vS=CtcxkszQ5&46oI*!B?V+U_=q~d= zLLCpJBe-1WK_y4uCma06uN`W6R9e}f*4E|Woe4^UdA@#uS?Z`LyM>`pknu2m5V(Ef zW`%b@{Mv@pcXv*Q{|a+5eqd3Jw{YXyqo)RitrD3blg=!nFV&3?=GU4pY1uFJ`rp2< zs8ri}uiybk6K=p@P*0Q9JjfHg4OZ|Gc#VvU;HGdm1R8YT#@eA3MuURk)Jq^TAN3-! zAV*j#HVPX&RINZrVG1Ectw38LL9qB{4cR~z@}+_)1#{+M44e*9L>=eRbPg(pj{y}* zKF_v6aV2B{0og4P(_4@lC7ua`Ak~X@Ak%qz#+pE9ipY936Juv}53?wq=V={{@fTC@ znExGA@c}Gvsur``jHZYK@c1wUiOq*Gkq9O&g{UBrARg)QHmY2XDbZ*q$ndh|Muq~9 zSC^QOUCbV`jDb8OaIb^ZT6N0?I$*d+IEAd%P=qF#fJCE`PGpdEh`>8`t@8~e!<>z$ z;0)9eiQK3`GnuItfL_dF@yU23+9=?N$y5fv$XbIv(7x*MGXGg}lTQW9m$K^}*hv1fMes@(~-Ra^UQs=YH_ zhjAQ_BwMnws6bN8WRvWiGa8`*G;+@20=USyz-s=(`=0YW=gVb2cKmGEp@mfxN?%v9YmEwhjPG)cebv(_0{gnz zO}4C-g(QwevybRrnstOve*aE}N|m~z#}AryZE#{V5=a%!7g#MP9_yVz2B*z{$5tPRD68v9BwF*qnMjNe%V4aa` zk;nixM+fqlqh%_9Z#z4XrGzQq(uLklAGr*mcXQPSx!Y{xFbD>*12k$3005dmsEQSP za?MKDnNC*GEku?Q+OK%dYgm@qsv6t>u-{Y_ztRz_dNND zk^Jem%?p1dUma1*4eFHrcTnkqhpA^`=YRWxXypd?g4rl%1PEU+i-8pN z%tquh)sAHldIp-FWB%#sEl_(-ig@WF`Tef-T4m|z<%@m)aZv!}HL3p#KSy7KuGv`p z=cZ|dG4=8;j6(&&g&VVPI2jK={-A@yQ2+1n2sA-1+yekn*x3EiZ@ZBT4%wPJmM-D$u#oHjLbk_R(PLAoCR7w}9oyGIkW_KC$@DsTDQ-Cvts| z66p}4uO05N7}t%LT2)_27^P-9?%f@I>rEPG9H(hGgbIwz7VD?g@T*_z?3bMBR;S6E z@FI>0XG>lutnMnQhGA@urrwyLVcg4+zdEd(IQQ9>^oY^!X_Z4}3}$bGGsxo2o2Vnn z)F0f;-JQy6hL|G%sfAIJnd5R33@j#7~P6on-)x zXH~vAbvB!)(2uFHveFuLOe!BAw-k|^kUC$JcC$bVo34o^qDZ%O(zizAOAZL4k!*2i zdp3QtGNUe^teGnAyjP7|NuJCkR`|syWoL3bOvzmtYCUYXa-H|pWoSoXpFn586S@xW*J9tf>dfoD=b-x6BiOGsMmj_N46kF`VfCo1n>o^-{EttX3N zEI;skr$3TC^LP&yrlZWY&fpwztNKFITM9$`bu3vONLY_+hfd#r>Q8Sdr^77nr+zZA zf&~~j0*^$h&_A16%Oq1&t)hp?X-<+U1c#HUEGYQWNXJfYQVCEy6X+`od!QBIc=1g< zts3R`MU8O;MQ}qU>J>TsT9G1SozTKa4&EfIb>XbzVKv_bI&Ctl9RzruBs!?na0b1} z8nq08?%8LBAVig}U}`X`Mq|;71iIFqs9G?UofAc7j&^puQr5N_Y2T*R#%HQok4y@^ zHo?Bw5!#xaWfoZYIQZ~n#sGb8vO#&yFV1f{iKC8V?x_r|3W4IQv-HnWcpu_-y?iO$h_OA-}`LHiPB7(Iwxvd*U324Q(r^Yz5qKw#J_jt9;;xujdW@% zUThyVb2nc5nI1WWF%{}!!b`9uJQp}Lx-Abzwlnh|AjS*SEZXf*M@u{ECDUqx9-nRZxDe=s9U)-tW zS9f3%{I2;ggNTWEWdQLE8Lor?DMtUZmk93tubYKFEn<8)kZ;INA`Kq5N?Pp6aOTk9 z5BWE(fqmNwUoW=soZy*~;ebNFAybOo;kG#B3bxl{EG*+F8Y=hduIH=CD=XjFA*+RFUsXOByms@rRsUOc&wi-m z1FqhT9*h zt>6=n_24>fr3#@KmZ=1Qu-qXGAQSQu+ZR&veYIia@M;E0R`iA%?~QH)hk+mD-r*Kfzq$PIoQ~5#gDT;X zM>05BNhp4Gi*Wcb8kVL$2UbLF)p`GU(p||<3sLp!=b3*T6uSP^yM+YdF_ju)=hv2q zNTjg!!ID8|khftM)Y%unH(GmxK8ny7<0SxPlCe4bZk&Yi=W`>Sh1Qko<;!0UOkiI7+kdOZjn0$2NEorlFP5@MS@wq2r&u8R$btZf{Ji~)RO_J z70Vjdq=jI2roPHoZq&pVIam_uZe8``6rbOm36c?A!{ ztF(e{Gxt(;bZVk36Lp|-^-&ARlzw#9aED#{M!rRw*2SG|A4E*&SbTfnrwP=o79}vY zth^G}P0L|_%^?P{;$!?HaEl!xkxe0{MT_tnCHh>coiNS0p zmZ+4Fbc8EUX!nTC9*$X+BA^xmm$O!=APvm61=SPW7834t1%;LmVB!e`1bUv#4c1z@ z=qv}UidwPvidYyOL?EL|VvMlYrMqH09BdJhTHRh1(<0?STvJF8w*wI&Gb`Y;2y$Yp zmlw&LEg!q*kP>-qfG6U2?C5fjlu9(nj3fdE`9f4n-4pZ-ECCS>6Ox@cKyfm@BG5*Z zjzyAaOo137mPLA@y-t9B+;&St1NhQZh>_92HkN?qDu6hlIvYHCC<5mL_EIE{g$W=( zf?{;UBz#nYJ8=1tMb!p5 zV1k-KP?u6DDY?RM2ja9;PK+gC80el%BBo*D^-?Fz$XMX`Y`%_U?#7du<#+&AmyYjL z-)o@a1gxvRh9tzL5HePkrCi7Vug7h7s@WO@Zk1?EZ(5J#f-x)*8ukJW0n)zBWLEtA zx)kc-;6f&;%kxV_6v$w7w`tT5g_u1&21$x&I7PUGm!T8bD2gD|Hkxf_joxHZfM3QW z4WhJF;WQ{9ZGltc5`;>2g@@;a(gYOeu^SWj$fGF5=v9>7v*Ywm90I*)A4(%*L^^Q5 z-bjvr1Yq z7ci2egA$d`I`lh7#V~u7MT=`9<0?bj%mPoHHZBr|Ux~)g`F$5SGp$2v`an#(H_|+l z+t_{S)Ed9NIQpZj{Fj;69igL4f)%0K(jLFgzk9Kfx-LB#^Zh}SKIflX ze{hv>>hbdHWH|`7F_Da7PieV)uuWin^OaRq73mv$bzow@dSrXEwbJk&W3{`*&jE%GFb}FI&5> zjUJ`1sJHp9q0_uF;bi=cH_>6=#w!`dlxioHx}XD?r;GE+!A!7ms$jV$q~*Meu-xg2 zjj${ROoceiWTo1WRxp(B%M9B542`H=qVH0&n!e%}v}K`NgT)Zmh1Gj8NQd2@mA`eY z?P1TBx-L{UX=z|}I}ZSVpQ}ryF(mO+C+wn`EQuX#CDgp$O**hvzyMGr)41G8fkN zfoaqnJLeD-hzdZg-*Jjap!)@fCZ8`tlh7+ItcF`F*GIj||* zd$V@ztGO#L;13mj(t<-{0JO7 zhPA*|%4&1vQ*H7+r~BX*Fn|Jli8yH)eNc{+l%t#8F!(c$Cf=2hjk8-Ix1M20STxA^ z^>&ar#vPz}KFby!pR+TWw9xAO%KqWm#u43Eq6Khdz0AWp?|}eHn|rsn&nVRmvBIBE z$9C}wTnar2tY5SHt1rF%fVRB~&SO!nzIB3(uGSebYR;T1RwG@C=!Rd9N)a)Ey7W9r ztcP<==fUKYxXHsXE887*b`N{1Z+LnaL+?^@rlNu1sqaoG+)FT+W?`FL)21a><;_32 zo_J?Kvgpwdt!Mqj!(!}1&k?-X&rk?*`R*6AA zunn0?z=!JmgL-dS7RL8Ize|ucsdfRqFmEy&`i+C8Y@|J(dK{a{lmje<`1qTtu`KIc zLeg+jS_T?UFr4QTa{SR(bZi7Os&A;med@ZnDHZ`7SBhbc>rBGylaz?^^vvhpZ37bDgIs4yEV4lFr<^5z&^pyNY2)hl<{lrAzed zRW{vExmkf}rrRak1h>Gf`4wHF?Sj?mEdhzw^gjN=ZNZ`L7%CyzpL&iE;c^Cyw^?+u z6U|!4HEd;G6;mHCl+>sKsO-TCpVJr&E>f_pLk0rrB;rP_Ny$b67Q8W-`o*dK6Nj6L z)H;PYDJT6-i5=Dgn}5zgy{P%u=E%s&=5!OYaTs{VHhM zCenYd$>FxJ4Km2eVhZFQj!0B5<+>Uf6_qda;RsrtP}NcFk8s#ZNskI4 zdPFWcVa?^Uj7)$dNw}LARqHn`Kd0&M z*G*@K0cpm%P*u3Oa1TPmk1UdE0C3LdWt6oTE~cIsMl?y zgRr-aPHnTJ-Mn?aW9#|~=i)DS zhf%Z!DGk zCXSA%;jnk=@Pif^TZGZf62Z&D6S{bOt4VA(;2OpfPi33UcmdVJ^%{gOvR7~6kYU)> zLcyzOCjx<{5a44Nmu({A%{qu|moT8Mif#~z$4Qu4p!o=OJlyEwaGgx00%SQ6d)gko=VhGP7*XnvW~IUuv}@BX_!3wk@g ziw-RKm~%*Ohfk&~XML=C!~46hd}z&Uzj=X#zpCLDd<6y!>$Hf?5Opp2C1FTAa_jg zs#&kLMwP3fR9)}xu3zKek1`&%7v$YVLf$D& z&QdLmbg;LQKgTIX`qOz4%%ZbAx&bw#8kKz=5v2x>{p%aXx&2w6UN+ z)S*Dg{` zM;s~j?!L_EY3na6ei7dOq7$BO(VwbX&D)CD#umkK%3L=%k%iub7?mH0jzBv|#K1$R zEZ=t@3dl$$t{7zQ7l$ThLm!vr&A76bb)hF?7hZIc143EkAqgQJ%H3Xjmh~3%OXY%% z+CXyr-)I_!lO&Pij>%}S_L_1H`Lw?7Viy&VYJEe%7&tr*rY2W+QWp@<2}=^wI7+nk z@hjlb$@$Y&sXd@XZ1p2S)Wn1{P@KIKHhCK8{r)tlKy2N7A7y`ttPjw5dlOpMSKCpb zfrI*ZhV+bHPt}zwOY<%PeDKeOY-lmxsDEY-L9D z@b<%zA3ikn_?15F&#A)5CCNwa1z8Qz9WSjb~b&woDNq>l3Z0Ria1HI%7cw0^mn*z4^2 zU)kV{P1f{o;($!@B4M4=ln@$*q?IxPuN28tJls@#6~i-6)NrM0AiSfS5_BiVYkeCa~QZY!4#&uvkh2!w$3S3=WwpZ{WZLI?tlw zX)vO9NbNmL&1TSX$X%lWJh&F2qgwC@kxnENu?Xr0n$=9AklhZ9BlXCECb9rC168;h z%(QalP73R7AW7{mHn!U??~wC(T%kj$qH=^Bg5j&+AS9Tj)H0}8u$N)cYD5$f!>0Zs zil=7e_5mP(lGTDW zI-y~eWEH#kWV3pFG3VmH>IOekER^>Q^FO65JFz7V+=OEK{?GddBz>JPXL6Sv+~4V4 z9g&vBnD0US)NbDg*le*zRQ6v)*p0orBQkzJqRW`!CMGY+Rdp?^iKh&UooxsqtV{}= z&trM^mn%c7o{<0Ec`*A~DVTc_OUWLIrE=za_q}wRIIuQ)eNzMbJJkpOvG82tOj>hB zel0oe#XEeOiqS>?8mmhhIDS?fH}m@?T1)qoWQ!KbKpQC zW;SSee|cl>wDs9#!sOPfK9V2{3aJP$kB$O?ZltQ;udVuQFMfiVa3KELcZnYDg*d|j zy91R7)ocq2_j7zr8SiBM`gjrw$CAmkS)yvZLgJsvehKn$fI>A+ko;9h6#33_OxSMs zE$|NiGAQ+TT_3k*y>VQ49KoqHudAjty9|i8HP-*+esXKT<<)sA(}uYzi;}ha)Nql7 z6}>Xme{WKfS&PNgh1+y4D|6rx4$Th+)L`;fiad$wWIX1@^UzRvKo+`iKxgxf1iI-o z)O}5$6;2%L8zX8BGq?;K`Shj4=xDye>z99q>reBLn9)0kGgq13pb1-|`LvpxC1CNh z6VdJS+2i2p-ga>1nD_J~GCZ`570MTqjDc^q850SEq+ee!3z9hmNkkC_5U0)q(<}rw z$moozw**s1+lPwV=_lx&h5M)YqOf{A7l?vLaij5cm)lqJ%7W>jomYGS?!}1H<&NTb zpNaq-S1(3#59G5tTATTr<&IFCjpGC`@<25Iwo6{~6kdCRkArl}izw8fg-5z4e1X>f zQ+Vx8lev5ABBeMKe6Gqa^3%JnJ-O{)YvE^un(YH}C?G0GPU`>lnRT!CDybdNR<9U# zX}tg(tZw(rB*BL|%<)Lh%a#Lux^WE==X

    {Oe>>DQT0`DtSu`qW{wUh_}N{8OytS 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 From 6abda20ca0fc6b44519f29cba40666cee91f012c Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 24 Jun 2025 07:20:24 -0500 Subject: [PATCH 37/80] Resolve conflicts in get-started --- content/shared/influxdb3-get-started/query.md | 98 +++++++--------- content/shared/influxdb3-get-started/setup.md | 108 +++++++++--------- content/shared/influxdb3-get-started/write.md | 20 ++-- 3 files changed, 106 insertions(+), 120 deletions(-) diff --git a/content/shared/influxdb3-get-started/query.md b/content/shared/influxdb3-get-started/query.md index a5f4729f7..86c92fd9e 100644 --- a/content/shared/influxdb3-get-started/query.md +++ b/content/shared/influxdb3-get-started/query.md @@ -1,17 +1,17 @@ -### Query data - -InfluxDB 3 supports native SQL for querying, in addition to InfluxQL, an -SQL-like language customized for time series queries. + +{{% product-name %}} supports both native SQL and InfluxQL for querying data. InfluxQL is +an SQL-like query language designed for InfluxDB v1 and customized for time +series queries. {{% show-in "core" %}} {{< product-name >}} limits -query time ranges to 72 hours (both recent and historical) to ensure query performance. -For more information about the 72-hour limitation, see the -[update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). +query time ranges to approximately 72 hours (both recent and historical) to +ensure query performance. For more information about the 72-hour limitation, see +the [update on InfluxDB 3 Core’s 72-hour limitation](https://www.influxdata.com/blog/influxdb3-open-source-public-alpha-jan-27/). {{% /show-in %}} > [!Note] -> Flux, the language introduced in InfluxDB 2.0, is **not** supported in InfluxDB 3. +> Flux, the language introduced in InfluxDB v2, is **not** supported in InfluxDB 3. @@ -34,7 +34,12 @@ To get started querying data in {{% product-name %}}, use the [`influxdb3 query` command](/influxdb3/version/reference/cli/influxdb3/query/) and provide the following: -The `query` subcommand includes options to help ensure that the right database is queried with the correct permissions. Only the `--database` option is required, but depending on your specific setup, you may need to pass other options, such as host, port, and token. +- `-H`, `--host`: The host URL of the server _(default is `http://127.0.0.1:8181`)_ +- `-d`, `--database`: _({{% req %}})_ The name of the database to query +- `-l`, `--language`: The query language of the provided query string + - `sql` _(default)_ + - `influxql` +- SQL or InfluxQL query as a string > [!Important] > If the `INFLUXDB3_AUTH_TOKEN` environment variable defined in @@ -42,62 +47,41 @@ The `query` subcommand includes options to help ensure that the right database i > isn't set in your environment, set it or provide your token using > the `-t, --token` option in your command. -#### Example: query `“SHOW TABLES”` on the `servers` database: - -```console -$ influxdb3 query --database servers "SHOW TABLES" -+---------------+--------------------+--------------+------------+ -| table_catalog | table_schema | table_name | table_type | -+---------------+--------------------+--------------+------------+ -| public | iox | cpu | BASE TABLE | -| public | information_schema | tables | VIEW | -| public | information_schema | views | VIEW | -| public | information_schema | columns | VIEW | -| public | information_schema | df_settings | VIEW | -| public | information_schema | schemata | VIEW | -+---------------+--------------------+--------------+------------+ -``` - -#### Example: query the `cpu` table, limiting to 10 rows: - -```console -$ influxdb3 query --database servers "SELECT DISTINCT usage_percent, time FROM cpu LIMIT 10" -+---------------+---------------------+ -| usage_percent | time | -+---------------+---------------------+ -| 63.4 | 2024-02-21T19:25:00 | -| 25.3 | 2024-02-21T19:06:40 | -| 26.5 | 2024-02-21T19:31:40 | -| 70.1 | 2024-02-21T19:03:20 | -| 83.7 | 2024-02-21T19:30:00 | -| 55.2 | 2024-02-21T19:00:00 | -| 80.5 | 2024-02-21T19:05:00 | -| 60.2 | 2024-02-21T19:33:20 | -| 20.5 | 2024-02-21T18:58:20 | -| 85.2 | 2024-02-21T19:28:20 | -+---------------+---------------------+ -``` - -### Query using the CLI for InfluxQL - -[InfluxQL](/influxdb3/version/reference/influxql/) is an SQL-like language developed by InfluxData with specific features tailored for leveraging and working with InfluxDB. It’s compatible with all versions of InfluxDB, making it a good choice for interoperability across different InfluxDB installations. - -To query using InfluxQL, enter the `influxdb3 query` subcommand and specify `influxql` in the language option--for example: +To query the home sensor sample data you wrote in +[Write data to {{% product-name %}}](/influxdb3/version/get-started/write/#write-data-using-the-cli), +run the following command: {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[SQL](#) +[InfluxQL](#) +{{% /code-tabs %}} +{{% code-tab-content %}} + + ```bash influxdb3 query \ --database DATABASE_NAME \ - --token AUTH_TOKEN \ - --language influxql \ - "SELECT DISTINCT usage_percent FROM cpu WHERE time >= now() - 1d" + "SELECT * FROM home ORDER BY time" ``` +{{% /code-tab-content %}} +{{% code-tab-content %}} + +```bash +influxdb3 query \ + --database DATABASE_NAME \ + --language influxql \ + "SELECT * FROM home" +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + {{% /code-placeholders %}} -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} +_Replace {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}} +with the name of the database to query._ To query from a specific time range, use the `WHERE` clause to designate the boundaries of your time range. diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 968fc87ea..fdba4a2b3 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -27,20 +27,6 @@ Use the [`influxdb3 serve` command](/influxdb3/version/reference/cli/influxdb3/s to start {{% product-name %}}. Provide the following: -- `--object-store`: Specifies the type of object store to use. - InfluxDB supports the following: - - - `file` _(default)_: local file system - - `memory`: in memory _(no object persistence)_ - - `memory-throttled`: like `memory` but with latency and throughput that - somewhat resembles a cloud-based object store - - `s3`: AWS S3 and S3-compatible services like Ceph or Minio - - `google`: Google Cloud Storage - - `azure`: Azure Blob Storage -{{% show-in "core" %}} -- `--node-id`: A string identifier that distinguishes individual server instances. - This forms the final part of the storage path: `/`. -{{% /show-in %}} {{% show-in "enterprise" %}} - `--node-id`: A string identifier that distinguishes individual server instances within the cluster. This forms the final part of the storage path: @@ -51,11 +37,24 @@ Provide the following: The storage path follows the pattern `//`. In a multi-node setup, this ID is used to reference the entire cluster. {{% /show-in %}} +{{% show-in "core" %}} +- `--node-id`: A string identifier that distinguishes individual server instances. + This forms the final part of the storage path: `/`. +{{% /show-in %}} +- `--object-store`: Specifies the type of object store to use. + InfluxDB supports the following: + + - `file` _(default)_: local file system + - `memory`: in memory _(no object persistence)_ + - `memory-throttled`: like `memory` but with latency and throughput that + somewhat resembles a cloud-based object store + - `s3`: AWS S3 and S3-compatible services like Ceph or Minio + - `google`: Google Cloud Storage + - `azure`: Azure Blob Storage -### Configure for your object store - -Depending on the object store type, you may need to provide additional -options, such as access credentials, for your object store configuration. + > [!Note] + > Examples in this getting started guide use the `file` object + > store to persist data to your local disk. The following examples show how to start {{% product-name %}} with different object store configurations. @@ -73,10 +72,32 @@ object store configurations. > separation between clusters and individual nodes. > {{% /show-in %}} -_For this getting started guide, use the `file` object store to persist data to -your local disk._ +For this getting started guide, use the `file` object store to persist data to +your local disk. -### Object store examples +{{% show-in "enterprise" %}} +```bash +# File system object store +# Provide the filesystem directory +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` +{{% /show-in %}} +{{% show-in "core" %}} +```bash +# File system object store +# Provide the file system directory +influxdb3 serve \ + --node-id host01 \ + --object-store file \ + --data-dir ~/.influxdb3 +``` +{{% /show-in %}} + +### {{% product-name %}} store examples {{< expand-wrapper >}} {{% expand "File system object store" %}} @@ -339,11 +360,16 @@ influxdb3 serve --help ## Set up licensing When you first start a new instance, {{% product-name %}} prompts you to select a -license type. InfluxDB 3 Enterprise licenses authorize the use of the -InfluxDB 3 Enterprise software and apply to a single cluster. Licenses are -primarily based on the number of CPUs InfluxDB can use, but there are other -limitations depending on the license type. The following InfluxDB 3 Enterprise -license types are available: + +license type. + +InfluxDB 3 Enterprise licenses: + +- **Authorize** usage of InfluxDB 3 Enterprise software for a single cluster. +- **Apply per cluster**, with limits based primarily on CPU cores. +- **Vary by license type**, each offering different capabilities and restrictions. + +### Available license types: - **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. @@ -356,32 +382,8 @@ license types are available: > you start a new instance, provide your email address with the > `--license-email` option or the > `INFLUXDB3_LICENSE_EMAIL` environment variable to bypass the licensing -> email prompt--for example: +> email prompt--for example, in a Docker Compose file: > -> {{< code-tabs-wrapper >}} -> {{% code-tabs %}} -> [Docker CLI](#) -> [Docker Compose file](#) -> {{% /code-tabs %}} -> {{% code-tab-content %}} -> {{% code-placeholders "EMAIL_ADDRESS" %}} -> ```bash -> docker run -d --name influxdb3-enterprise \ -> -v "$PWD/data:/var/lib/influxdb3" \ -> -v "$PWD/plugins:/plugins" \ -> -p 8181:8181 \ -> quay.io/influxdb/influxdb3-enterprise:latest \ -> serve \ -> --cluster-id cluster1 \ -> --node-id node1 \ -> --plugin-dir /plugins \ -> --object-store file \ -> --data-dir /var/lib/influxdb3 -> ``` -> {{% /code-placeholders %}} -> - Replace {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} with the email you want to associate with the license. -> {{% /code-tab-content %}} -> {{% code-tab-content %}} > {{% code-placeholders "EMAIL_ADDRESS" %}} > ```yaml > # compose.yaml @@ -404,9 +406,7 @@ license types are available: > {{% /code-placeholders %}} > {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} is > the email you want to associate with the license. This example shows how -> to reference an email address set in your `.env` file. -> {{% /code-tab-content %}} -> {{< /code-tabs-wrapper >}} +> to reference a variable in your `.env` file. > > _Currently, if you use the prompt to enter your email address, a bug may > prevent the container from generating the license ._ diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index 1182d73de..1e2b63048 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -1,12 +1,16 @@ -### Write data + -InfluxDB is a schema-on-write database. You can start writing data and InfluxDB creates the logical database, tables, and their schemas on the fly. -After a schema is created, InfluxDB validates future write requests against it before accepting the data. -Subsequent requests can add new fields on-the-fly, but can't add new tags. +{{% product-name %}} is designed for high write-throughput and uses an efficient, +human-readable write syntax called _[line protocol](#line-protocol)_. InfluxDB +is a schema-on-write database, meaning you can start writing data and InfluxDB +creates the logical database, tables, and their schemas automatically, without +any required intervention. Once InfluxDB creates the schema, it validates future +write requests against the schema before accepting new data. +Both new tags and fields can be added later as your schema changes. {{% show-in "core" %}} > [!Note] -> #### Core is optimized for recent data +> #### InfluxDB 3 Core is optimized for recent data > > {{% product-name %}} is optimized for recent data but accepts writes from any time period. > The system persists data to Parquet files for historical analysis with [InfluxDB 3 Enterprise](/influxdb3/enterprise/get-started/) or third-party tools. @@ -139,7 +143,7 @@ home,room=Kitchen temp=22.7,hum=36.5,co=26i 1641067200 {{% /influxdb/custom-timestamps %}} -## Write data using the CLI +## Write data using the CLI To quickly get started writing data, use the [`influxdb3 write` command](/influxdb3/version/reference/cli/influxdb3/write/). @@ -150,8 +154,6 @@ Include the following: environment variable is already set)_ - Quoted line protocol data via standard input (stdin) or a file -### Write data via standard input (stdin) - {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} ```bash influxdb3 write \ @@ -197,7 +199,7 @@ In the code samples, replace the following placeholders with your values: ### Write data from a file -Pass the `--file` option to write line protocol you have saved to a file--for example, save the +To write line protocol you have saved to a file, pass the `--file` option--for example, save the [sample line protocol](#home-sensor-data-line-protocol) to a file named `sensor_data` and then enter the following command: From 29a81be29672417127e3412b5b228336043edd60 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 24 Jun 2025 09:27:38 -0500 Subject: [PATCH 38/80] fix(influxdb3): Get started fixes --- content/influxdb3/enterprise/admin/license.md | 11 +++- .../enterprise/install/multi-server.md | 8 +-- .../enterprise/reference/config-options.md | 1 - .../processing-engine.md | 34 +++++------ content/shared/influxdb3-get-started/setup.md | 58 +++++-------------- content/shared/influxdb3-get-started/write.md | 2 +- 6 files changed, 38 insertions(+), 76 deletions(-) diff --git a/content/influxdb3/enterprise/admin/license.md b/content/influxdb3/enterprise/admin/license.md index 11d5b3471..62727201e 100644 --- a/content/influxdb3/enterprise/admin/license.md +++ b/content/influxdb3/enterprise/admin/license.md @@ -101,7 +101,7 @@ The license file is a JWT file that contains the license information. > use one of the methods to [skip the email prompt](#skip-the-email-prompt). > This ensures that the container can generate the license file after you > verify your email address. -> See the [Docker Compose example](?t=Docker+compose#activate-a-trial-or-home-license-with-docker). +> See the [Docker Compose example](?t=Docker+compose#start-with-license-email-and-compose). #### Skip the email prompt @@ -186,7 +186,7 @@ existing license if it's still valid. {{% code-tabs %}} [influxdb3 options](#) [Environment variables](#) -[Docker compose](#example-activate-trial-or-home-with-compose) +[Docker compose](#start-with-license-email-and-compose) {{% /code-tabs %}} {{% code-tab-content %}} @@ -215,6 +215,7 @@ influxdb3 serve \ {{% /code-tab-content %}} {{% code-tab-content %}} +{{% code-placeholders "${EMAIL_ADDRESS}" %}} ```yaml # compose.yaml name: data-crunching-stack @@ -235,7 +236,8 @@ services: - --object-store=file - --data-dir=/var/lib/influxdb3 - --plugin-dir=/var/lib/influxdb3/plugins - - --license-email=INFLUXDB3_LICENSE_EMAIL + environment: + - INFLUXDB3_LICENSE_EMAIL=${EMAIL_ADDRESS} volumes: - type: bind source: ~/.influxdb3/data @@ -244,6 +246,9 @@ services: source: ~/.influxdb3/plugins target: /var/lib/influxdb3/plugins ``` +{{% /code-placeholders %}} +Replace {{% code-placeholder-key %}}`${EMAIL_ADDRESS}`{{% /code-placeholder-key %}} with your email address +or a variable from your Compose `.env` file. {{% /code-tab-content %}} {{< /code-tabs-wrapper >}} diff --git a/content/influxdb3/enterprise/install/multi-server.md b/content/influxdb3/enterprise/install/multi-server.md index 5d5fa1d5a..0f4c801a6 100644 --- a/content/influxdb3/enterprise/install/multi-server.md +++ b/content/influxdb3/enterprise/install/multi-server.md @@ -24,10 +24,7 @@ object store. - [Connect to your object store](#connect-to-your-object-store) - [Server modes](#server-modes) - [Server mode examples](#server-mode-examples) - - [Configure a node to only handle write requests](#configure-a-node-to-only-handle-write-requests) - - [Configure a node to only run the Compactor](#configure-a-node-to-only-run-the-compactor) - - [Configure a handle query requests and run the processing engine](#configure-a-handle-query-requests-and-run-the-processing-engine) -- [InfluxDB 3 Enterprise cluster configuration examples](#influxdb-3-enterprise-cluster-configuration-examples) +- [Cluster configuration examples](#cluster-configuration-examples) - [High availability cluster](#high-availability-cluster) - [High availability with a dedicated Compactor](#high-availability-with-a-dedicated-compactor) - [High availability with read replicas and a dedicated Compactor](#high-availability-with-read-replicas-and-a-dedicated-compactor) @@ -184,8 +181,7 @@ influxdb3 serve \ --mode query,process ``` - -## {{% product-name %}} cluster configuration examples +## Cluster configuration examples diff --git a/content/influxdb3/enterprise/reference/config-options.md b/content/influxdb3/enterprise/reference/config-options.md index 019ec349d..77a0bab5d 100644 --- a/content/influxdb3/enterprise/reference/config-options.md +++ b/content/influxdb3/enterprise/reference/config-options.md @@ -320,7 +320,6 @@ The server processes all requests without requiring tokens or authentication. Optionally disable authz by passing in a comma separated list of resources. Valid values are `health`, `ping`, and `metrics`. - --- ### AWS diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 185bcd632..4365b35de 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -89,15 +89,13 @@ def process_writes(influxdb3_local, table_batches, args=None): influxdb3_local.info("arg1: " + args["arg1"]) # here we're using arguments provided at the time the trigger was set up - # to feed into paramters that we'll put into a query + # to feed into parameters that we'll put into a query query_params = {"room": "Kitchen"} - # here's an example of executing a parameterized query. Only SQL is supported. - # It will query the database that the trigger is attached to by default. We'll - # soon have support for querying other DBs. - query_result = influxdb3_local.query("SELECT * FROM home where room = '$host'", query_params) - # the result is a list of Dict that have the column name as key and value as - # value. If you run the WAL test plugin with your plugin against a DB that - # you've written data into, you'll be able to see some results + # The following example shows how to execute a parameterized query. Only SQL is supported. + # It queries the database that the trigger is configured for. + query_result = influxdb3_local.query("SELECT * FROM home where room = '$room'", query_params) + # The result is a list of Dict that have the column name as key and value as + # value. influxdb3_local.info("query result: " + str(query_result)) # this is the data that is sent when the WAL is flushed of writes the server @@ -180,18 +178,7 @@ Replace the following: - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: the {{% token-link "admin" %}} for your {{% product-name %}} server - {{% code-placeholder-key %}}`PLUGIN_FILENAME`{{% /code-placeholder-key %}}: the name of the plugin file to test -The command runs the plugin code with the test data, yields the data to the -plugin code, and then responds with the plugin result. -You can quickly see how the plugin behaves, what data it would have written to -the database, and any errors. -You can then edit your Python code in the plugins directory, and rerun the test. -The server reloads the file for every request to the `test` API. - -With the plugin code inside the server plugin directory, and a successful test, -you're ready to create a trigger for your server to run the plugin. - -##### Example: Test and run a plugin - +### Example: Test a plugin ```bash # Test a plugin @@ -207,6 +194,13 @@ influxdb3 test wal_plugin \ test.py ``` +The command runs the plugin code with the test data, yields the data to the +plugin code, and then responds with the plugin result. +You can quickly see how the plugin behaves, what data it would have written to +the database, and any errors. +You can then edit your Python code in the plugins directory, and rerun the test. +The server reloads the file for every request to the `test` API. + For more information, see [`influxdb3 test wal_plugin`](/influxdb3/version/reference/cli/influxdb3/test/wal_plugin/) or run `influxdb3 test wal_plugin -h`. diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index fdba4a2b3..c6968fbb0 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -1,10 +1,10 @@ - [Prerequisites](#prerequisites) - [Start InfluxDB](#start-influxdb) -- [Configure for your object store](#configure-for-your-object-store) - [Object store examples](#object-store-examples) {{% show-in "enterprise" %}} - [Set up licensing](#set-up-licensing) + - [Available license types](#available-license-types) {{% /show-in %}} - [Set up authorization](#set-up-authorization) - [Create an operator token](#create-an-operator-token) @@ -18,8 +18,8 @@ To get started, you'll need: - **{{% product-name %}}**: [Install and verify the latest version](/influxdb3/version/install/) on your system. - If you want to persist data, have access to one of the following: + - A directory on your local disk where you can persist data (used by examples in this guide) - S3-compatible object store and credentials - - A directory on your local disk where you can persist data ## Start InfluxDB @@ -52,13 +52,6 @@ Provide the following: - `google`: Google Cloud Storage - `azure`: Azure Blob Storage - > [!Note] - > Examples in this getting started guide use the `file` object - > store to persist data to your local disk. - -The following examples show how to start {{% product-name %}} with different -object store configurations. - > [!Note] > #### Diskless architecture > @@ -97,7 +90,7 @@ influxdb3 serve \ ``` {{% /show-in %}} -### {{% product-name %}} store examples +### Object store examples {{< expand-wrapper >}} {{% expand "File system object store" %}} @@ -198,10 +191,12 @@ docker run -it \ - --object-store=file - --data-dir=/var/lib/influxdb3 - --plugins-dir=/var/lib/influxdb3-plugins - - --license-email=EMAIL_ADDRESS + environment: + - INFLUXDB3_LICENSE_EMAIL=EMAIL_ADDRESS ``` _Replace `EMAIL_ADDRESS` with your email address to bypass the email prompt - when generating a trial or at-home license._ + when generating a trial or at-home license. For more information, see [Manage your + {{% product-name %}} license](/influxdb3/version/admin/license/)_. {{% /show-in %}} {{% show-in "core" %}} 1. Open `compose.yaml` for editing and add a `services` entry for {{% product-name %}}--for example: @@ -360,7 +355,6 @@ influxdb3 serve --help ## Set up licensing When you first start a new instance, {{% product-name %}} prompts you to select a - license type. InfluxDB 3 Enterprise licenses: @@ -369,7 +363,7 @@ InfluxDB 3 Enterprise licenses: - **Apply per cluster**, with limits based primarily on CPU cores. - **Vary by license type**, each offering different capabilities and restrictions. -### Available license types: +### Available license types - **Trial**: 30-day trial license with full access to InfluxDB 3 Enterprise capabilities. - **At-Home**: For at-home hobbyist use with limited access to InfluxDB 3 Enterprise capabilities. @@ -378,40 +372,14 @@ InfluxDB 3 Enterprise licenses: > [!Important] > #### Trial and at-home licenses with Docker > -> To generate a trial or home license for InfluxDB 3 in Docker, the first time -> you start a new instance, provide your email address with the -> `--license-email` option or the -> `INFLUXDB3_LICENSE_EMAIL` environment variable to bypass the licensing -> email prompt--for example, in a Docker Compose file: +> To generate the trial or home license in Docker, bypass the email prompt. +> The first time you start a new instance, provide your email address with the +> `--license-email` option or the `INFLUXDB3_LICENSE_EMAIL` environment variable. > -> {{% code-placeholders "EMAIL_ADDRESS" %}} -> ```yaml -> # compose.yaml -> services: -> influxdb3-{{< product-key >}}: -> container_name: influxdb3-{{< product-key >}} -> image: influxdb:3-{{< product-key >}} -> ports: -> - 8181:8181 -> command: -> - influxdb3 -> - serve -> - --node-id=node0 -> - --object-store=file -> - --data-dir=/var/lib/influxdb3 -> - --plugins-dir=/var/lib/influxdb3-plugins - environment: -> - INFLUXDB3_LICENSE_EMAIL=${EMAIL_ADDRESS} -> ``` -> {{% /code-placeholders %}} -> {{% code-placeholder-key %}}`EMAIL_ADDRESS`{{% /code-placeholder-key %}} is -> the email you want to associate with the license. This example shows how -> to reference a variable in your `.env` file. -> -> _Currently, if you use the prompt to enter your email address, a bug may +> _Currently, if you use Docker and enter your email address in the prompt, a bug may > prevent the container from generating the license ._ > -> For more information, see [Manage your InfluxDB 3 Enterprise license](/influxdb3/enterprise/admin/license/). +> For more information, see [the Docker Compose example](/influxdb3/enterprise/admin/license/?t=Docker+compose#start-the-server-with-your-license-email). {{% /show-in %}} > [!Tip] diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index 1e2b63048..f6d66cf7f 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -152,7 +152,7 @@ Include the following: - `--database` option that identifies the target database - `--token` option that specifies the token to use _(unless the `INFLUXDB3_AUTH_TOKEN` environment variable is already set)_ -- Quoted line protocol data via standard input (stdin) or a file +- Quoted line protocol data via standard input (stdin) {{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} ```bash From 6bab22462a839d9d482c7bbad9d68bec07221609 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 24 Jun 2025 11:20:30 -0500 Subject: [PATCH 39/80] chore(influxdb3): Remove non-essential Docker example --- content/shared/influxdb3-get-started/setup.md | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index c6968fbb0..242eba257 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -474,7 +474,6 @@ In your command, replace {{% code-placeholder-key %}}`YOUR_AUTH_TOKEN`{{% /code- {{% tabs %}} [Environment variable (recommended)](#) [Command option](#) -[Docker](#) {{% /tabs %}} {{% tab-content %}} @@ -498,23 +497,6 @@ influxdb3 show databases --token YOUR_AUTH_TOKEN ``` {{% /code-placeholders %}} -{{% /tab-content %}} -{{% tab-content %}} - -Run the CLI in a Docker container using the `INFLUXDB3_AUTH_TOKEN` environment variable: - -{{% code-placeholders "YOUR_AUTH_TOKEN" %}} -```bash -docker run --rm \ - -e INFLUXDB3_AUTH_TOKEN=YOUR_AUTH_TOKEN \ - quay.io/influxdb/influxdb3:latest \ - query \ - --host http://host.docker.internal:8181 \ - --database example_db \ - "SHOW TABLES" -``` -{{% /code-placeholders %}} - {{% /tab-content %}} {{< /tabs-wrapper >}} From c8e278ef9f8e8854e32073b69f82d51455676e88 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 24 Jun 2025 15:38:29 -0500 Subject: [PATCH 40/80] fix(influxdb3): remove get-started/multi-server.md. It's now under install/ - fix `plugin-dir` (Closes ##6150) --- .../enterprise/get-started/multi-server.md | 532 +++++++++++++----- .../enterprise/get-started/process.md | 2 +- .../influxdb3/enterprise/get-started/query.md | 2 +- .../influxdb3/enterprise/get-started/write.md | 2 +- .../enterprise/install/multi-server.md | 477 ---------------- content/shared/influxdb3-get-started/setup.md | 14 +- content/shared/influxdb3-get-started/write.md | 11 + content/shared/influxdb3/install.md | 4 +- 8 files changed, 412 insertions(+), 632 deletions(-) delete mode 100644 content/influxdb3/enterprise/install/multi-server.md diff --git a/content/influxdb3/enterprise/get-started/multi-server.md b/content/influxdb3/enterprise/get-started/multi-server.md index 62061aaaf..56da9360d 100644 --- a/content/influxdb3/enterprise/get-started/multi-server.md +++ b/content/influxdb3/enterprise/get-started/multi-server.md @@ -1,43 +1,258 @@ --- -title: Use a multi-server setup -seotitle: Use a multi-server InfluxDB 3 Enterprise setup +title: Create a multi-node cluster +seotitle: Create a multi-node InfluxDB 3 Enterprise cluster +description: > + Create a multi-node InfluxDB 3 Enterprise cluster for high availability, + performance, read replicas, and more to meet the specific needs of your use case. menu: influxdb3_enterprise: - name: Multi-server + name: Create a multi-node cluster parent: Get started -weight: 4 + identifier: gs-multi-node-cluster +weight: 102 influxdb3/enterprise/tags: [cluster, multi-node, multi-server] --- -### Multi-server setup +Create a multi-node {{% product-name %}} cluster for high availability, performance, and workload isolation. +Configure nodes with specific _modes_ (ingest, query, process, compact) to optimize for your use case. -{{% product-name %}} is built to support multi-node setups for high availability, read replicas, and flexible implementations depending on use case. +## Prerequisites -### High availability +- Shared object store +- Network connectivity between nodes -Enterprise is architecturally flexible, giving you options on how to configure multiple servers that work together for high availability (HA) and high performance. -Built on top of the diskless engine and leveraging the Object store, an HA setup ensures that if a node fails, you can still continue reading from, and writing to, a secondary node. +## Basic multi-node setup -A two-node setup is the minimum for basic high availability, with both nodes having read-write permissions. + +```bash +## NODE 1 compacts stored data + +# Example variables +# node-id: 'host01' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query,compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key +``` + + +```bash +## NODE 2 handles writes and queries + +# Example variables +# node-id: 'host02' +# cluster-id: 'cluster01' +# bucket: 'influxdb-3-enterprise-storage' + +influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` + +Learn how to set up a multi-node cluster for different use cases, including high availability, read replicas, processing data, and workload isolation. + +- [Create an object store](#create-an-object-store) +- [Connect to your object store](#connect-to-your-object-store) +- [Server modes](#server-modes) +- [Cluster configuration examples](#cluster-configuration-examples) +- [Writing and querying in multi-node clusters](#writing-and-querying-in-multi-node-clusters) + +## Create an object store + +With the {{% product-name %}} diskless architecture, all data is stored in a common object store. +In a multi-node cluster, you connect all nodes to the same object store. + +Enterprise supports the following object stores: + +- AWS S3 (or S3-compatible) +- Azure Blob Storage +- Google Cloud Storage + +> [!Note] +> Refer to your object storage provider's documentation for +> setting up an object store. + +## Connect to your object store + +When starting your {{% product-name %}} node, include provider-specific options for connecting to your object store--for example: + +{{< tabs-wrapper >}} +{{% tabs %}} +[S3 or S3-compatible](#) +[Azure Blob Storage](#) +[Google Cloud Storage](#) +{{% /tabs %}} +{{% tab-content %}} + + +To use an AWS S3 or S3-compatible object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `s3` +- `--bucket`: Your AWS S3 bucket name +- `--aws-access-key-id`: Your AWS access key ID + _(can also be defined using the `AWS_ACCESS_KEY_ID` environment variable)_ +- `--aws-secret-access-key`: Your AWS secret access key + _(can also be defined using the `AWS_SECRET_ACCESS_KEY` environment variable)_ + +{{% code-placeholders "AWS_(BUCKET_NAME|ACCESS_KEY_ID|SECRET_ACCESS_KEY)" %}} + +```bash +influxdb3 serve \ + # ... + --object-store s3 \ + --bucket AWS_BUCKET_NAME \ + --aws-access-key-id AWS_ACCESS_KEY_ID \ + --aws-secret-access-key AWS_SECRET_ACCESS_KEY +``` +{{% /code-placeholders %}} + +_For information about other S3-specific settings, see +[Configuration options - AWS](/influxdb3/enterprise/reference/config-options/#aws)._ + + +{{% /tab-content %}} +{{% tab-content %}} + + +To use Azure Blob Storage as your object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `azure` +- `--bucket`: Your Azure Blob Storage container name +- `--azure-storage-account`: Your Azure Blob Storage storage account name + _(can also be defined using the `AZURE_STORAGE_ACCOUNT` environment variable)_ +- `--aws-secret-access-key`: Your Azure Blob Storage access key + _(can also be defined using the `AZURE_STORAGE_ACCESS_KEY` environment variable)_ + +{{% code-placeholders "AZURE_(CONTAINER_NAME|STORAGE_ACCOUNT|STORAGE_ACCESS_KEY)" %}} + +```bash +influxdb3 serve \ + # ... + --object-store azure \ + --bucket AZURE_CONTAINER_NAME \ + --azure-storage-account AZURE_STORAGE_ACCOUNT \ + --azure-storage-access-key AZURE_STORAGE_ACCESS_KEY +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{% tab-content %}} + + +To use Google Cloud Storage as your object store, provide the following options +with your `influxdb3 serve` command: + +- `--object-store`: `google` +- `--bucket`: Your Google Cloud Storage bucket name +- `--google-service-account`: The path to to your Google credentials JSON file + _(can also be defined using the `GOOGLE_SERVICE_ACCOUNT` environment variable)_ + +{{% code-placeholders "GOOGLE_(BUCKET_NAME|SERVICE_ACCOUNT)" %}} + +```bash +influxdb3 serve \ + # ... + --object-store google \ + --bucket GOOGLE_BUCKET_NAME \ + --google-service-account GOOGLE_SERVICE_ACCOUNT +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +## Server modes + +{{% product-name %}} _modes_ determine what subprocesses the Enterprise node runs. +These subprocesses fulfill required tasks including data ingestion, query +processing, compaction, and running the processing engine. + +The `influxdb3 serve --mode` option defines what subprocesses a node runs. +Each node can run in one _or more_ of the following modes: + +- **all** _(default)_: Runs all necessary subprocesses. +- **ingest**: Runs the data ingestion subprocess to handle writes. +- **query**: Runs the query processing subprocess to handle queries. +- **process**: Runs the processing engine subprocess to trigger and execute plugins. +- **compact**: Runs the compactor subprocess to optimize data in object storage. + + > [!Important] + > Only _one_ node in your cluster can run in `compact` mode. + +### Server mode examples + +#### Configure a node to only handle write requests + +```bash +influxdb3 serve \ + # ... + --mode ingest +``` + +#### Configure a node to only run the Compactor + +```bash +influxdb3 serve \ + # ... + --mode compact +``` + +#### Configure a node to handle queries and run the processing engine + +```bash +influxdb3 serve \ + # ... + --mode query,process +``` + +## Cluster configuration examples + +- [High availability cluster](#high-availability-cluster) +- [High availability with a dedicated Compactor](#high-availability-with-a-dedicated-compactor) +- [High availability with read replicas and a dedicated Compactor](#high-availability-with-read-replicas-and-a-dedicated-compactor) + +### High availability cluster + +A minimum of two nodes are required for basic high availability (HA), with both +nodes reading and writing data. {{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} In a basic HA setup: -- Two nodes both write data to the same Object store and both handle queries -- Node 1 and Node 2 are _read replicas_ that read from each other’s Object store directories +- Two nodes both write data to the same object store and both handle queries +- Node 1 and Node 2 are _read replicas_ that read from each other’s object store directories - One of the nodes is designated as the Compactor node > [!Note] > Only one node can be designated as the Compactor. > Compacted data is meant for a single writer, and many readers. -The following examples show how to configure and start two nodes -for a basic HA setup. +The following examples show how to configure and start two nodes for a basic HA +setup. -- _Node 1_ is for compaction (passes `compact` in `--mode`) +- _Node 1_ is for compaction - _Node 2_ is for ingest and query + ```bash ## NODE 1 @@ -57,6 +272,7 @@ influxdb3 serve \ --aws-secret-access-key ``` + ```bash ## NODE 2 @@ -76,128 +292,136 @@ influxdb3 serve \ --aws-secret-access-key AWS_SECRET_ACCESS_KEY ``` -After the nodes have started, querying either node returns data for both nodes, and _NODE 1_ runs compaction. +After the nodes have started, querying either node returns data for both nodes, +and _NODE 1_ runs compaction. To add nodes to this setup, start more read replicas with the same cluster ID. ### High availability with a dedicated Compactor -Data compaction in InfluxDB 3 is one of the more computationally expensive operations. -To ensure that your read-write nodes don't slow down due to compaction work, set up a compactor-only node for consistent and high performance across all nodes. +Data compaction in {{% product-name %}} is one of the more computationally +demanding operations. +To ensure stable performance in ingest and query nodes, set up a +compactor-only node to isolate the compaction workload. {{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} -The following examples show how to set up high availability with a dedicated Compactor node: +The following examples sets up high availability with a dedicated Compactor node: -1. Start two read-write nodes as read replicas, similar to the previous example. +1. Start two read-write nodes as read replicas, similar to the previous example. - ```bash - ## NODE 1 — Writer/Reader Node #1 + + ```bash + ## NODE 1 — Writer/Reader Node #1 - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` - ```bash - ## NODE 2 — Writer/Reader Node #2 + + ```bash + ## NODE 2 — Writer/Reader Node #2 - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest,query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` -2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. +2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. - ```bash - ## NODE 3 — Compactor Node + ```bash + ## NODE 3 — Compactor Node - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + # Example variables + # node-id: 'host03' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + influxdb3 serve \ + --node-id host03 \ + --cluster-id cluster01 \ + --mode compact \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --aws-access-key-id \ + --aws-secret-access-key + ``` ### High availability with read replicas and a dedicated Compactor -For a robust and effective setup for managing time-series data, you can run ingest nodes alongside read-only nodes and a dedicated Compactor node. +For a robust and effective setup for managing time-series data, you can run +ingest nodes alongside query nodes and a dedicated Compactor node. {{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} -1. Start ingest nodes by assigning them the **`ingest`** mode. - To achieve the benefits of workload isolation, you'll send _only write requests_ to these ingest nodes. Later, you'll configure the _read-only_ nodes. +1. Start ingest nodes with the **`ingest`** mode. + + > [!Note] + > Send all write requests to only your ingest nodes. - ```bash - ## NODE 1 — Writer Node #1 + ```bash + ## NODE 1 — Writer Node #1 - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + # Example variables + # node-id: 'host01' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + influxdb3 serve \ + --node-id host01 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind {{< influxdb/host >}} \ + --aws-access-key-id \ + --aws-secret-access-key + ``` - + - ```bash - ## NODE 2 — Writer Node #2 + ```bash + ## NODE 2 — Writer Node #2 - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + # Example variables + # node-id: 'host02' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + influxdb3 serve \ + --node-id host02 \ + --cluster-id cluster01 \ + --mode ingest \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8282 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` -2. Start the dedicated Compactor node with ` compact`. +2. Start the dedicated Compactor node with the `compact` mode. ```bash ## NODE 3 — Compactor Node @@ -217,61 +441,65 @@ For a robust and effective setup for managing time-series data, you can run inge ``` -3. Finally, start the query nodes as _read-only_ with `--mode query`. +3. Finally, start the query nodes using the `query` mode. - ```bash - ## NODE 4 — Read Node #1 + > [!Note] + > Send all query requests to only your query nodes. - # Example variables - # node-id: 'host04' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + ```bash + ## NODE 4 — Read Node #1 - influxdb3 serve \ - --node-id host04 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8383 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` + # Example variables + # node-id: 'host04' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' - ```bash - ## NODE 5 — Read Node #2 + influxdb3 serve \ + --node-id host04 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8383 \ + --aws-access-key-id \ + --aws-secret-access-key + ``` - # Example variables - # node-id: 'host05' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' + ```bash + ## NODE 5 — Read Node #2 - influxdb3 serve \ - --node-id host05 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8484 \ - --aws-access-key-id \ - - ``` + # Example variables + # node-id: 'host05' + # cluster-id: 'cluster01' + # bucket: 'influxdb-3-enterprise-storage' -Congratulations, you have a robust setup for workload isolation using {{% product-name %}}. + influxdb3 serve \ + --node-id host05 \ + --cluster-id cluster01 \ + --mode query \ + --object-store s3 \ + --bucket influxdb-3-enterprise-storage \ + --http-bind localhost:8484 \ + --aws-access-key-id \ + + ``` -### Writing and querying for multi-node setups +## Writing and querying in multi-node clusters -You can use the default port `8181` for any write or query, without changing any of the commands. +You can use the default port `8181` for any write or query request without +changing any of the commands. > [!Note] -> #### Specify hosts for writes and queries +> #### Specify hosts for write and query requests > -> To benefit from this multi-node, isolated architecture, specify hosts: +> To benefit from this multi-node, isolated architecture: > -> - In write requests, specify a host that you have designated as _write-only_. -> - In query requests, specify a host that you have designated as _read-only_. +> - Send write requests to a node that you have designated as an ingester. +> - Send query requests to a node that you have designated as a querier. > -> When running multiple local instances for testing or separate nodes in production, specifying the host ensures writes and queries are routed to the correct instance. +> When running multiple local instances for testing or separate nodes in +> production, specifying the host ensures writes and queries are routed to the +> correct instance. {{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} ```bash @@ -280,7 +508,8 @@ You can use the default port `8181` for any write or query, without changing any influxdb3 query \ --host http://localhost:8585 --token AUTH_TOKEN \ - --database DATABASE_NAME "QUERY" + --database DATABASE_NAME \ + "QUERY" ``` {{% /code-placeholders %}} @@ -289,4 +518,11 @@ Replace the following placeholders with your values: - {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query - {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database \ No newline at end of file +- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database + +{{% page-nav + prev="/influxdb3/enterprise/get-started/setup/" + prevText="Set up InfluxDB" + next="/influxdb3/enterprise/get-started/write/" + nextText="Write data" +%}} \ No newline at end of file diff --git a/content/influxdb3/enterprise/get-started/process.md b/content/influxdb3/enterprise/get-started/process.md index 27c544d30..5e9622388 100644 --- a/content/influxdb3/enterprise/get-started/process.md +++ b/content/influxdb3/enterprise/get-started/process.md @@ -10,7 +10,7 @@ menu: name: Process data identifier: gs-process-data parent: Get started -weight: 104 +weight: 105 aliases: - /influxdb3/enterprise/get-started/process-data/ - /influxdb3/enterprise/get-started/processing-engine/ diff --git a/content/influxdb3/enterprise/get-started/query.md b/content/influxdb3/enterprise/get-started/query.md index 52205c4c2..79446ee3d 100644 --- a/content/influxdb3/enterprise/get-started/query.md +++ b/content/influxdb3/enterprise/get-started/query.md @@ -9,7 +9,7 @@ menu: name: Query data identifier: gs-query-data parent: Get started -weight: 103 +weight: 104 related: - /influxdb3/enterprise/query-data/ - /influxdb3/enterprise/reference/sql/ diff --git a/content/influxdb3/enterprise/get-started/write.md b/content/influxdb3/enterprise/get-started/write.md index 1e67a0d0e..255c0a07e 100644 --- a/content/influxdb3/enterprise/get-started/write.md +++ b/content/influxdb3/enterprise/get-started/write.md @@ -9,7 +9,7 @@ menu: name: Write data identifier: gs-write-data parent: Get started -weight: 102 +weight: 103 related: - /influxdb3/enterprise/write-data/ - /influxdb3/enterprise/reference/line-protocol/ diff --git a/content/influxdb3/enterprise/install/multi-server.md b/content/influxdb3/enterprise/install/multi-server.md deleted file mode 100644 index 0f4c801a6..000000000 --- a/content/influxdb3/enterprise/install/multi-server.md +++ /dev/null @@ -1,477 +0,0 @@ ---- -title: Create a multi-node cluster -seotitle: Create a multi-node InfluxDB 3 Enterprise cluster -description: > - Create a multi-node InfluxDB 3 Enterprise cluster for high availability, - performance, read replicas, and more to meet the specific needs of your use case. -menu: - influxdb3_enterprise: - name: Create a multi-node cluster - parent: Install InfluxDB 3 Enterprise -weight: 101 -influxdb3/enterprise/tags: [cluster, multi-node, multi-server] ---- - -{{% product-name %}} supports flexible, multi-node configurations for high -availability, performance, read replicas, and more to meet the specific needs -of your use case. -The {{% product-name %}} server can run in different _modes_ fulfil specific roles -in your multi-node cluster. -With the diskless architecture, all nodes in the cluster share the same common -object store. - -- [Create an object store](#create-an-object-store) -- [Connect to your object store](#connect-to-your-object-store) -- [Server modes](#server-modes) - - [Server mode examples](#server-mode-examples) -- [Cluster configuration examples](#cluster-configuration-examples) - - [High availability cluster](#high-availability-cluster) - - [High availability with a dedicated Compactor](#high-availability-with-a-dedicated-compactor) - - [High availability with read replicas and a dedicated Compactor](#high-availability-with-read-replicas-and-a-dedicated-compactor) -- [Writing and querying in multi-node clusters](#writing-and-querying-in-multi-node-clusters) - -## Create an object store - -To run a mulit-node {{% product-name %}} cluster, nodes must connect to a -common object store. Enterprise supports the following object stores: - -- AWS S3 (or S3-compatible) -- Azure Blob Storage -- Google Cloud Storage - -> [!Note] -> Refer to your object storage provider's documentation for information about -> setting up an object store. - -## Connect to your object store - -Depending on your object storage provider, connect nodes in your cluster to the -object store by including provider-specific options when starting each node. - -{{< tabs-wrapper >}} -{{% tabs %}} -[S3 or S3-compatible](#) -[Azure Blob Storage](#) -[Google Cloud Storage](#) -{{% /tabs %}} -{{% tab-content %}} - - -To use an AWS S3 or S3-compatible object store, provide the following options -with your `influxdb3 serve` command: - -- `--object-store`: `s3` -- `--bucket`: Your AWS S3 bucket name -- `--aws-access-key-id`: Your AWS access key ID - _(can also be defined using the `AWS_ACCESS_KEY_ID` environment variable)_ -- `--aws-secret-access-key`: Your AWS secret access key - _(can also be defined using the `AWS_SECRET_ACCESS_KEY` environment variable)_ - -{{% code-placeholders "AWS_(BUCKET_NAME|ACCESS_KEY_ID|SECRET_ACCESS_KEY)" %}} - -```bash -influxdb3 serve \ - # ... - --object-store s3 \ - --bucket AWS_BUCKET_NAME \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` -{{% /code-placeholders %}} - -_For information about other S3-specific settings, see -[Configuration options - AWS](/influxdb3/enterprise/reference/config-options/#aws)._ - - -{{% /tab-content %}} -{{% tab-content %}} - - -To use Azure Blob Storage as your object store, provide the following options -with your `influxdb3 serve` command: - -- `--object-store`: `azure` -- `--bucket`: Your Azure Blob Storage container name -- `--azure-storage-account`: Your Azure Blob Storage storage account name - _(can also be defined using the `AZURE_STORAGE_ACCOUNT` environment variable)_ -- `--aws-secret-access-key`: Your Azure Blob Storage access key - _(can also be defined using the `AZURE_STORAGE_ACCESS_KEY` environment variable)_ - -{{% code-placeholders "AZURE_(CONTAINER_NAME|STORAGE_ACCOUNT|STORAGE_ACCESS_KEY)" %}} - -```bash -influxdb3 serve \ - # ... - --object-store azure \ - --bucket AZURE_CONTAINER_NAME \ - --azure-storage-account AZURE_STORAGE_ACCOUNT \ - --azure-storage-access-key AZURE_STORAGE_ACCESS_KEY -``` -{{% /code-placeholders %}} - - -{{% /tab-content %}} -{{% tab-content %}} - - -To use Google Cloud Storage as your object store, provide the following options -with your `influxdb3 serve` command: - -- `--object-store`: `google` -- `--bucket`: Your Google Cloud Storage bucket name -- `--google-service-account`: The path to to your Google credentials JSON file - _(can also be defined using the `GOOGLE_SERVICE_ACCOUNT` environment variable)_ - -{{% code-placeholders "GOOGLE_(BUCKET_NAME|SERVICE_ACCOUNT)" %}} - -```bash -influxdb3 serve \ - # ... - --object-store google \ - --bucket GOOGLE_BUCKET_NAME \ - --google-service-account GOOGLE_SERVICE_ACCOUNT -``` -{{% /code-placeholders %}} - - -{{% /tab-content %}} -{{< /tabs-wrapper >}} - -## Server modes - -{{% product-name %}} _modes_ determine what subprocesses the Enterprise node runs. -These subprocesses fulfill required tasks including data ingestion, query -processing, compaction, and running the processing engine. - -The `influxdb3 serve --mode` option defines what subprocesses a node runs. -Each node can run in one _or more_ of the following modes: - -- **all** _(default)_: Runs all necessary subprocesses. -- **ingest**: Runs the data ingestion subprocess to handle writes. -- **query**: Runs the query processing subprocess to handle queries. -- **process**: Runs the processing engine subprocess to trigger and execute plugins. -- **compact**: Runs the compactor subprocess to optimize data in object storage. - - > [!Important] - > Only _one_ node in your cluster can run in `compact` mode. - -### Server mode examples - -#### Configure a node to only handle write requests - -```bash -influxdb3 serve \ - # ... - --mode ingest -``` - -#### Configure a node to only run the Compactor - -```bash -influxdb3 serve \ - # ... - --mode compact -``` - -#### Configure a handle query requests and run the processing engine - -```bash -influxdb3 serve \ - # ... - --mode query,process -``` - -## Cluster configuration examples - - - -### High availability cluster - -A minimum of two nodes are required for basic high availability (HA), with both -nodes reading and writing data. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-high-availability.png" alt="Basic high availability setup" />}} - -In a basic HA setup: - -- Two nodes both write data to the same object store and both handle queries -- Node 1 and Node 2 are _read replicas_ that read from each other’s object store directories -- One of the nodes is designated as the Compactor node - -> [!Note] -> Only one node can be designated as the Compactor. -> Compacted data is meant for a single writer, and many readers. - -The following examples show how to configure and start two nodes for a basic HA -setup. - -- _Node 1_ is for compaction -- _Node 2_ is for ingest and query - - -```bash -## NODE 1 - -# Example variables -# node-id: 'host01' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query,compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key -``` - - -```bash -## NODE 2 - -# Example variables -# node-id: 'host02' -# cluster-id: 'cluster01' -# bucket: 'influxdb-3-enterprise-storage' - -influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id AWS_ACCESS_KEY_ID \ - --aws-secret-access-key AWS_SECRET_ACCESS_KEY -``` - -After the nodes have started, querying either node returns data for both nodes, -and _NODE 1_ runs compaction. -To add nodes to this setup, start more read replicas with the same cluster ID. - -### High availability with a dedicated Compactor - -Data compaction in {{% product-name %}} is one of the more computationally -demanding operations. -To ensure stable performance in ingest and query nodes, set up a -compactor-only node to isolate the compaction workload. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-dedicated-compactor.png" alt="Dedicated Compactor setup" />}} - -The following examples sets up high availability with a dedicated Compactor node: - -1. Start two read-write nodes as read replicas, similar to the previous example. - - - ```bash - ## NODE 1 — Writer/Reader Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - - ```bash - ## NODE 2 — Writer/Reader Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest,query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated compactor node with the `--mode=compact` option to ensure the node **only** runs compaction. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -### High availability with read replicas and a dedicated Compactor - -For a robust and effective setup for managing time-series data, you can run -ingest nodes alongside query nodes and a dedicated Compactor node. - -{{< img-hd src="/img/influxdb/influxdb-3-enterprise-workload-isolation.png" alt="Workload Isolation Setup" />}} - -1. Start ingest nodes with the **`ingest`** mode. - - > [!Note] - > Send all write requests to only your ingest nodes. - - ```bash - ## NODE 1 — Writer Node #1 - - # Example variables - # node-id: 'host01' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host01 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind {{< influxdb/host >}} \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - - - ```bash - ## NODE 2 — Writer Node #2 - - # Example variables - # node-id: 'host02' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host02 \ - --cluster-id cluster01 \ - --mode ingest \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8282 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - -2. Start the dedicated Compactor node with the `compact` mode. - - ```bash - ## NODE 3 — Compactor Node - - # Example variables - # node-id: 'host03' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host03 \ - --cluster-id cluster01 \ - --mode compact \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --aws-access-key-id \ - - ``` - -3. Finally, start the query nodes using the `query` mode. - - > [!Note] - > Send all query requests to only your query nodes. - - ```bash - ## NODE 4 — Read Node #1 - - # Example variables - # node-id: 'host04' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host04 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8383 \ - --aws-access-key-id \ - --aws-secret-access-key - ``` - - ```bash - ## NODE 5 — Read Node #2 - - # Example variables - # node-id: 'host05' - # cluster-id: 'cluster01' - # bucket: 'influxdb-3-enterprise-storage' - - influxdb3 serve \ - --node-id host05 \ - --cluster-id cluster01 \ - --mode query \ - --object-store s3 \ - --bucket influxdb-3-enterprise-storage \ - --http-bind localhost:8484 \ - --aws-access-key-id \ - - ``` - -## Writing and querying in multi-node clusters - -You can use the default port `8181` for any write or query request without -changing any of the commands. - -> [!Note] -> #### Specify hosts for write and query requests -> -> To benefit from this multi-node, isolated architecture: -> -> - Send write requests to a node that you have designated as an ingester. -> - Send query requests to a node that you have designated as a querier. -> -> When running multiple local instances for testing or separate nodes in -> production, specifying the host ensures writes and queries are routed to the -> correct instance. - -{{% code-placeholders "(http://localhost:8585)|AUTH_TOKEN|DATABASE_NAME|QUERY" %}} -```bash -# Example querying a specific host -# HTTP-bound Port: 8585 -influxdb3 query \ - --host http://localhost:8585 - --token AUTH_TOKEN \ - --database DATABASE_NAME \ - "QUERY" -``` -{{% /code-placeholders %}} - -Replace the following placeholders with your values: - -- {{% code-placeholder-key %}}`http://localhost:8585`{{% /code-placeholder-key %}}: the host and port of the node to query -- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: your {{% token-link "database" %}}{{% show-in "enterprise" %}} with permission to query the specified database{{% /show-in %}} -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: the name of the database to query -- {{% code-placeholder-key %}}`QUERY`{{% /code-placeholder-key %}}: the SQL or InfluxQL query to run against the database diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 242eba257..4ef284643 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -190,7 +190,7 @@ docker run -it \ - --cluster-id=cluster0 - --object-store=file - --data-dir=/var/lib/influxdb3 - - --plugins-dir=/var/lib/influxdb3-plugins + - --plugin-dir=/var/lib/influxdb3-plugins environment: - INFLUXDB3_LICENSE_EMAIL=EMAIL_ADDRESS ``` @@ -215,7 +215,7 @@ docker run -it \ - --node-id=node0 - --object-store=file - --data-dir=/var/lib/influxdb3 - - --plugins-dir=/var/lib/influxdb3-plugins + - --plugin-dir=/var/lib/influxdb3-plugins ``` {{% /show-in %}} @@ -520,9 +520,19 @@ curl "http://{{< influxdb/host >}}/api/v3/configure/database" \ - [Authentication](/influxdb3/version/reference/internals/authentication/) - Understand authentication, authorizations, and permissions in {{% product-name %}} +{{% show-in "core" %}} {{% page-nav prev="/influxdb3/version/get-started/" prevText="Get started" next="/influxdb3/version/get-started/write/" nextText="Write data" %}} +{{% /show-in %}} +{{% show-in "enterprise" %}} +{{% page-nav + prev="/influxdb3/version/get-started/" + prevText="Get started" + next="/influxdb3/version/get-started/multi-server/" + nextText="Create a multi-node cluster" +%}} +{{% /show-in %}} diff --git a/content/shared/influxdb3-get-started/write.md b/content/shared/influxdb3-get-started/write.md index f6d66cf7f..0f5d775f2 100644 --- a/content/shared/influxdb3-get-started/write.md +++ b/content/shared/influxdb3-get-started/write.md @@ -233,9 +233,20 @@ There are many ways to write data to your {{% product-name %}} database, includi For more information, see [Write data to {{% product-name %}}](/influxdb3/version/write-data/). +{{% show-in "enterprise" %}} +{{% page-nav + prev="/influxdb3/version/get-started/multi-server/" + prevText="Create a multi-node cluster" + next="/influxdb3/version/get-started/query/" + nextText="Query data" +%}} +{{% /show-in %}} + +{{% show-in "core" %}} {{% page-nav prev="/influxdb3/version/get-started/setup/" prevText="Set up InfluxDB" next="/influxdb3/version/get-started/query/" nextText="Query data" %}} +{{% /show-in %}} diff --git a/content/shared/influxdb3/install.md b/content/shared/influxdb3/install.md index 213681429..6523e8a47 100644 --- a/content/shared/influxdb3/install.md +++ b/content/shared/influxdb3/install.md @@ -9,7 +9,7 @@ {{% show-in "enterprise" %}} > [!Note] > For information about setting up a multi-node {{% product-name %}} cluster, -> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). +> see [Create a multi-node cluster](/influxdb3/enterprise/get-started/multi-server/) in the Get started guide. {{% /show-in %}} ## System Requirements @@ -140,7 +140,7 @@ source ~/.zshrc {{% show-in "enterprise" %}} > [!Note] > For information about setting up a multi-node {{% product-name %}} cluster, -> see [Create a multi-node cluster](/influxdb3/enterprise/install/multi-server/). +> see [Create a multi-node cluster](/influxdb3/enterprise/get-started/multi-server/) in the Get started guide. {{% /show-in %}} {{% show-in "enterprise" %}} From c5c66638c83add808e3b200f30f93203dcf01a83 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 24 Jun 2025 17:48:24 -0500 Subject: [PATCH 41/80] Update content/shared/influxdb3-write-guides/use-telegraf/dual-write.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../shared/influxdb3-write-guides/use-telegraf/dual-write.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md b/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md index 938c67ae8..71f3fa52d 100644 --- a/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md +++ b/content/shared/influxdb3-write-guides/use-telegraf/dual-write.md @@ -5,7 +5,7 @@ to a separate instance or for migrating from other versions of InfluxDB to {{< product-name >}}. The following example configures Telegraf for dual writing to {{% product-name %}} and an InfluxDB v2 OSS instance. -Specifically, it uses the the following: +Specifically, it uses the following: - The [InfluxDB v2 output plugin](https://github.com/influxdata/telegraf/tree/master/plugins/outputs/influxdb_v2) twice--the first pointing to {{< product-name >}} and the other to an From 38b08ecc515d00ba5200975617e6339f58acce41 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Wed, 25 Jun 2025 14:38:23 -0500 Subject: [PATCH 42/80] chore(qol): Add claude instructions file for the project MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The CLAUDE.md file successfully references 5 key files, all of which exist and are accessible: 1. @README → README.md - Project overview and setup 2. @package.json → package.json - NPM scripts and dependencies 3. @.github/copilot-instructions.md → Main style guidelines and product info 4. @.github/instructions/contributing.instructions.md → Detailed contributing guide 5. @.github/instructions/influxdb3-code-placeholders.instructions.md → InfluxDB 3 specific guidelines 📊 Current Structure Analysis The CLAUDE.md file acts as a minimal index that: - Delegates detailed instructions to other files - Uses Claude's @ symbol notation for file references - Provides a clear hierarchy of information 💡 Key Instructions Coverage Through the linked files, Claude has access to: - Product documentation paths for all InfluxDB versions - Style guidelines following Google Developer Documentation standards - Shortcode usage with extensive examples - Testing procedures including pytest-codeblocks - Development workflows with Docker and Node.js - Placeholder conventions for code examples - Frontmatter requirements for Hugo pages --- .github/copilot-instructions.md | 26 +++++++++++++++++---- CLAUDE.md | 25 ++++++++++++++++++++ build-scripts/build-copilot-instructions.js | 4 ++-- 3 files changed, 49 insertions(+), 6 deletions(-) create mode 100644 CLAUDE.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 505688122..a4c0b7aaa 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -1,13 +1,16 @@ -# GitHub Copilot Instructions for InfluxData Documentation +# Instructions for InfluxData Documentation ## Purpose and scope -GitHub Copilot should help document InfluxData products by creating clear, accurate technical content with proper code examples, frontmatter, and formatting. +Help document InfluxData products by creating clear, accurate technical content with proper code examples, frontmatter, and formatting. ## Documentation structure - **Product version data**: `/data/products.yml` -- **Products**: +- **InfluxData products**: + - InfluxDB 3 Explorer + - Documentation source path: `/content/influxdb3/explorer` + - Published for the web: https://docs.influxdata.com/influxdb3/explorer/ - InfluxDB 3 Core - Documentation source path: `/content/influxdb3/core` - Published for the web: https://docs.influxdata.com/influxdb3/core/ @@ -92,7 +95,8 @@ GitHub Copilot should help document InfluxData products by creating clear, accur ## Markdown and shortcodes -- Include proper frontmatter for each page: +- Include proper frontmatter for Markdown pages in `content/**/*.md` (except for + shared content files in `content/shared/`): ```yaml title: # Page title (h1) @@ -180,3 +184,17 @@ Table: keys: [_start, _stop, _field, _measurement] ## Related repositories - **Internal documentation assistance requests**: https://github.com/influxdata/DAR/issues Documentation + +## Additional instruction files + +For specific workflows and content types, also refer to: + +- **InfluxDB 3 code placeholders**: `.github/instructions/influxdb3-code-placeholders.instructions.md` - Guidelines for placeholder formatting, descriptions, and shortcode usage in InfluxDB 3 documentation +- **Contributing guidelines**: `.github/instructions/contributing.instructions.md` - Detailed style guidelines, shortcode usage, frontmatter requirements, and development workflows +- **Content-specific instructions**: Check `.github/instructions/` directory for specialized guidelines covering specific documentation patterns and requirements + +## Integration with specialized instructions + +When working on InfluxDB 3 documentation (Core/Enterprise), prioritize the placeholder guidelines from `influxdb3-code-placeholders.instructions.md`. + +For general documentation structure, shortcodes, and development workflows, follow the comprehensive guidelines in `contributing.instructions.md`. diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 000000000..97f250d72 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,25 @@ +# Instructions for InfluxData Documentation + +## Purpose and scope + +Claude should help document InfluxData products by creating clear, accurate technical content with proper code examples, frontmatter, and formatting. + +## Project overview + +See @README.md + +## Available NPM commands + +@package.json + +## Instructions for contributing + +See @.github/copilot-instructions.md for style guidelines and +product-specific documentation paths and URLs managed in this project. + +See @.github/instructions/contributing.instructions.md for contributing +information including using shortcodes and running tests. + +See @.github/instructions/influxdb3-code-placeholders.instructions.md for using +placeholders in code samples and CLI commands. + diff --git a/build-scripts/build-copilot-instructions.js b/build-scripts/build-copilot-instructions.js index 0d089e2c1..490fc266c 100644 --- a/build-scripts/build-copilot-instructions.js +++ b/build-scripts/build-copilot-instructions.js @@ -46,11 +46,11 @@ function buildContributingInstructions() { applyTo: "content/**/*.md, layouts/**/*.html" --- -# GitHub Copilot Instructions for InfluxData Documentation +# Contributing instructions for InfluxData Documentation ## Purpose and scope -GitHub Copilot should help document InfluxData products +Help document InfluxData products by creating clear, accurate technical content with proper code examples, frontmatter, shortcodes, and formatting. From d20492b6feff089f8a02e21e3b2218c368e76d13 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Wed, 25 Jun 2025 09:40:50 -0500 Subject: [PATCH 43/80] chore(analytics): Migrate to GA4 Google tag. If on the local server, use debug mode and prevent tracking. Add the www.influxdata.com Google tag script. Remove the conditional from header.html. Remove the old, unused GTM ID --- assets/js/code-controls.js | 155 +++++++++++++++++- config/staging/hugo.yml | 3 +- layouts/partials/header.html | 2 +- .../header/google-analytics-head.html | 35 +++- 4 files changed, 184 insertions(+), 11 deletions(-) diff --git a/assets/js/code-controls.js b/assets/js/code-controls.js index 17018a8e8..19ec0ef7c 100644 --- a/assets/js/code-controls.js +++ b/assets/js/code-controls.js @@ -1,4 +1,5 @@ import $ from 'jquery'; +import { context } from './page-context.js'; function initialize() { var codeBlockSelector = '.article--content pre'; @@ -68,9 +69,94 @@ function initialize() { // Trigger copy failure state lifecycle $('.copy-code').click(function () { - let text = $(this) + let codeElement = $(this) .closest('.code-controls') - .prevAll('pre:has(code)')[0].innerText; + .prevAll('pre:has(code)')[0]; + + let text = codeElement.innerText; + + // Extract additional code block information + const codeBlockInfo = extractCodeBlockInfo(codeElement); + + // Add Google Analytics event tracking + const currentUrl = new URL(window.location.href); + + // Determine which tracking parameter to add based on product context + switch (context) { + case 'cloud': + currentUrl.searchParams.set('dl', 'cloud'); + break; + case 'core': + /** Track using the same value used by www.influxdata.com pages */ + currentUrl.searchParams.set('dl', 'oss3'); + break; + case 'enterprise': + /** Track using the same value used by www.influxdata.com pages */ + currentUrl.searchParams.set('dl', 'enterprise'); + break; + case 'serverless': + currentUrl.searchParams.set('dl', 'serverless'); + break; + case 'dedicated': + currentUrl.searchParams.set('dl', 'dedicated'); + break; + case 'clustered': + currentUrl.searchParams.set('dl', 'clustered'); + break; + case 'oss/enterprise': + currentUrl.searchParams.set('dl', 'oss'); + break; + case 'other': + default: + // No tracking parameter for other/unknown products + break; + } + + // Add code block specific tracking parameters + if (codeBlockInfo.language) { + currentUrl.searchParams.set('code_lang', codeBlockInfo.language); + } + if (codeBlockInfo.lineCount) { + currentUrl.searchParams.set('code_lines', codeBlockInfo.lineCount); + } + if (codeBlockInfo.hasPlaceholders) { + currentUrl.searchParams.set('has_placeholders', 'true'); + } + if (codeBlockInfo.blockType) { + currentUrl.searchParams.set('code_type', codeBlockInfo.blockType); + } + if (codeBlockInfo.sectionTitle) { + currentUrl.searchParams.set( + 'section', + encodeURIComponent(codeBlockInfo.sectionTitle) + ); + } + if (codeBlockInfo.firstLine) { + currentUrl.searchParams.set( + 'first_line', + encodeURIComponent(codeBlockInfo.firstLine.substring(0, 100)) + ); + } + + // Update browser history without triggering page reload + if (window.history && window.history.replaceState) { + window.history.replaceState(null, '', currentUrl.toString()); + } + + // Send custom Google Analytics event if gtag is available + if (typeof window.gtag !== 'undefined') { + window.gtag('event', 'code_copy', { + language: codeBlockInfo.language, + line_count: codeBlockInfo.lineCount, + has_placeholders: codeBlockInfo.hasPlaceholders, + dl: codeBlockInfo.dl || null, + section_title: codeBlockInfo.sectionTitle, + first_line: codeBlockInfo.firstLine + ? codeBlockInfo.firstLine.substring(0, 100) + : null, + product: context, + }); + } const copyContent = async () => { try { @@ -84,6 +170,71 @@ function initialize() { copyContent(); }); + /** + * Extract contextual information about a code block + * @param {HTMLElement} codeElement - The code block element + * @returns {Object} Information about the code block + */ + function extractCodeBlockInfo(codeElement) { + const codeTag = codeElement.querySelector('code'); + const info = { + language: null, + lineCount: 0, + hasPlaceholders: false, + blockType: 'code', + dl: null, // Download script type + sectionTitle: null, + firstLine: null, + }; + + // Extract language from class attribute + if (codeTag && codeTag.className) { + const langMatch = codeTag.className.match( + /language-(\w+)|hljs-(\w+)|(\w+)/ + ); + if (langMatch) { + info.language = langMatch[1] || langMatch[2] || langMatch[3]; + } + } + + // Count lines + const text = codeElement.innerText || ''; + const lines = text.split('\n'); + info.lineCount = lines.length; + + // Get first non-empty line + info.firstLine = lines.find((line) => line.trim() !== '') || null; + + // Check for placeholders (common patterns) + info.hasPlaceholders = + /\b[A-Z_]{2,}\b|\{\{[^}]+\}\}|\$\{[^}]+\}|<[^>]+>/.test(text); + + // Determine if this is a download script + if (text.includes('https://www.influxdata.com/d/install_influxdb3.sh')) { + if (text.includes('install_influxdb3.sh enterprise')) { + info.dl = 'enterprise'; + } else { + info.dl = 'oss3'; + } + } else if (text.includes('docker pull influxdb:3-enterprise')) { + info.dl = 'enterprise'; + } else if (text.includes('docker pull influxdb3-core')) { + info.dl = 'oss3'; + } + + // Find nearest section heading + let element = codeElement; + while (element && element !== document.body) { + element = element.previousElementSibling || element.parentElement; + if (element && element.tagName && /^H[1-6]$/.test(element.tagName)) { + info.sectionTitle = element.textContent.trim(); + break; + } + } + + return info; + } + /////////////////////////////// FULL WINDOW CODE /////////////////////////////// /* diff --git a/config/staging/hugo.yml b/config/staging/hugo.yml index 3a0a651c2..7d22ffb17 100644 --- a/config/staging/hugo.yml +++ b/config/staging/hugo.yml @@ -13,6 +13,7 @@ minify: params: env: staging environment: staging -server: +server: { disableLiveReload: true +} \ No newline at end of file diff --git a/layouts/partials/header.html b/layouts/partials/header.html index 7960d5ed8..419f86196 100644 --- a/layouts/partials/header.html +++ b/layouts/partials/header.html @@ -5,7 +5,7 @@ - {{ if not hugo.IsServer }}{{ partial "header/google-analytics-head.html" }}{{ end }} + {{ partial "header/google-analytics-head.html" }} diff --git a/layouts/partials/header/google-analytics-head.html b/layouts/partials/header/google-analytics-head.html index 42d1a516b..0880fb083 100644 --- a/layouts/partials/header/google-analytics-head.html +++ b/layouts/partials/header/google-analytics-head.html @@ -1,7 +1,28 @@ - - - +{{ if and hugo.IsServer (not (eq .Site.Params.environment "staging")) }} + + + +{{ else }} + + + +{{ end }} From a712d5bbebd0106e702e78a6039b535947a4c8c1 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 11:07:06 -0500 Subject: [PATCH 44/80] feat(monolith): Core and Ent v3.2.0 release notes and generation script: - Add v3.2.0 release notes for Core and Enterprise 3- Add a script to help analyze the diff between tags and generate release notes in a standard format following style guidelines --- .../_index.md | 50 +++++++ helper-scripts/generate-release-notes.sh | 135 ++++++++++++++++++ 2 files changed, 185 insertions(+) create mode 100755 helper-scripts/generate-release-notes.sh diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index ff46e3d03..f3f59bf05 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -5,6 +5,56 @@ > All updates to Core are automatically included in Enterprise. > The Enterprise sections below only list updates exclusive to Enterprise. +## v3.2.0 {date="2025-06-25"} +**Core**: revision 1ca3168bee + +**Enterprise**: revision 1ca3168bee + +### Core + +#### Features + +- **Hard delete for databases and tables**: Permanently delete databases and tables, enabling complete removal of data structures for compliance and storage management ([#26553](https://github.com/influxdata/influxdb/pull/26553)) +- **AWS credentials auto-reload**: Support dynamic reloading of ephemeral AWS credentials from files, improving security and reliability when using AWS services ([#26537](https://github.com/influxdata/influxdb/pull/26537)) +- **Database retention period support**: Add retention period support for databases via CLI commands (`create database` and `update database` commands) and HTTP APIs ([#26520](https://github.com/influxdata/influxdb/pull/26520)) +- **Configurable lookback duration**: Users can specify lookback duration for PersistedFiles buffer, providing better control over query performance ([#26528](https://github.com/influxdata/influxdb/pull/26528)) +- **WAL replay concurrency control**: Add concurrency limits for WAL (Write-Ahead Log) replay to improve startup performance and resource management ([#26483](https://github.com/influxdata/influxdb/pull/26483)) +- **Enhanced write path**: Separate write path executor with unbounded memory for improved write performance ([#26455](https://github.com/influxdata/influxdb/pull/26455)) + +#### Bug Fixes + +- **WAL corruption handling**: Handle corrupt WAL files during replay without panic, improving data recovery and system resilience ([#26556](https://github.com/influxdata/influxdb/pull/26556)) +- **Database naming validation**: Disallow underscores in database names when created via API to ensure consistency ([#26507](https://github.com/influxdata/influxdb/pull/26507)) +- **Object store cleanup**: Automatic intermediate directory cleanup for file object store, preventing storage bloat ([#26480](https://github.com/influxdata/influxdb/pull/26480)) + +#### Additional Updates + +- Track generation 1 duration in catalog for better performance monitoring ([#26508](https://github.com/influxdata/influxdb/pull/26508)) +- Add retention period support to the catalog ([#26479](https://github.com/influxdata/influxdb/pull/26479)) +- Update help text for improved user experience ([#26509](https://github.com/influxdata/influxdb/pull/26509)) + +### Enterprise + +All Core updates are included in Enterprise. Additional Enterprise-specific features and fixes: + +#### Features + +- **License management improvements**: + - New `influxdb3 show license` command to display current license information +- **Table-level retention period support**: Add retention period support for individual tables in addition to database-level retention, providing granular data lifecycle management + - New CLI commands: `create table --retention-period` and `update table --retention-period` + - Set or clear table-specific retention policies independent of database settings +- **Compaction improvements**: + - Address compactor restart issues for better reliability + - Track compacted generation durations in catalog for monitoring + - Disable parquet cache for ingest mode to optimize memory usage + +#### Bug Fixes + +- **Query optimization**: Correctly partition query chunks into generations for improved performance +- **Data integrity**: Don't delete generation 1 files as part of compaction process +- **License handling**: Trim whitespace from license file contents after reading to prevent validation issues + ## v3.1.0 {date="2025-05-29"} **Core**: revision 482dd8aac580c04f37e8713a8fffae89ae8bc264 diff --git a/helper-scripts/generate-release-notes.sh b/helper-scripts/generate-release-notes.sh new file mode 100755 index 000000000..58f34212e --- /dev/null +++ b/helper-scripts/generate-release-notes.sh @@ -0,0 +1,135 @@ +#!/bin/bash + +# Script to generate release notes for InfluxDB v3.x releases +# Usage: ./generate-release-notes.sh + +set -e + +# Default values +REPO_PATH="${3:-/Users/ja/Documents/github/influxdb}" +FROM_VERSION="${1:-v3.1.0}" +TO_VERSION="${2:-v3.2.0}" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[0;33m' +BLUE='\033[0;34m' +NC='\033[0m' # No Color + +echo -e "${BLUE}Generating release notes for ${TO_VERSION}${NC}" +echo -e "Repository: ${REPO_PATH}" +echo -e "From: ${FROM_VERSION} To: ${TO_VERSION}\n" + +# Function to extract PR number from commit message +extract_pr_number() { + echo "$1" | grep -oE '#[0-9]+' | head -1 | sed 's/#//' +} + +# Get the release date +RELEASE_DATE=$(git -C "$REPO_PATH" log -1 --format=%ai "$TO_VERSION" | cut -d' ' -f1) +echo -e "${GREEN}Release Date: ${RELEASE_DATE}${NC}\n" + +# Collect commits by category +echo -e "${YELLOW}Analyzing commits...${NC}" + +# Features +echo -e "\n${GREEN}Features:${NC}" +FEATURES=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ feat:" | sed 's/^[a-f0-9]* feat: //') + +# Fixes +echo -e "\n${GREEN}Bug Fixes:${NC}" +FIXES=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ fix:" | sed 's/^[a-f0-9]* fix: //') + +# Breaking changes +echo -e "\n${GREEN}Breaking Changes:${NC}" +BREAKING=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -iE "^[a-f0-9]+ .*(BREAKING|breaking change)" | sed 's/^[a-f0-9]* //') + +# Performance improvements +echo -e "\n${GREEN}Performance:${NC}" +PERF=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ perf:" | sed 's/^[a-f0-9]* perf: //') + +# Generate markdown output +OUTPUT_FILE="release-notes-${TO_VERSION}.md" +cat > "$OUTPUT_FILE" << EOF +## ${TO_VERSION} {date="${RELEASE_DATE}"} + +### Features + +EOF + +# Add features +if [ -n "$FEATURES" ]; then + while IFS= read -r line; do + PR=$(extract_pr_number "$line") + # Clean up the commit message + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + fi + done <<< "$FEATURES" +else + echo "- No new features in this release" >> "$OUTPUT_FILE" +fi + +# Add bug fixes +cat >> "$OUTPUT_FILE" << EOF + +### Bug Fixes + +EOF + +if [ -n "$FIXES" ]; then + while IFS= read -r line; do + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + fi + done <<< "$FIXES" +else + echo "- No bug fixes in this release" >> "$OUTPUT_FILE" +fi + +# Add breaking changes if any +if [ -n "$BREAKING" ]; then + cat >> "$OUTPUT_FILE" << EOF + +### Breaking Changes + +EOF + while IFS= read -r line; do + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + fi + done <<< "$BREAKING" +fi + +# Add performance improvements if any +if [ -n "$PERF" ]; then + cat >> "$OUTPUT_FILE" << EOF + +### Performance Improvements + +EOF + while IFS= read -r line; do + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + fi + done <<< "$PERF" +fi + +echo -e "\n${GREEN}Release notes generated in: ${OUTPUT_FILE}${NC}" +echo -e "${YELLOW}Please review and edit the generated notes before adding to documentation.${NC}" \ No newline at end of file From 050c971de73a0ec056496ffbdbb5a95d5efa43dd Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 26 Jun 2025 11:36:55 -0500 Subject: [PATCH 45/80] updated explorer messaging from beta to ga (#6152) --- assets/styles/layouts/article/_blocks.scss | 2 +- .../{_beta.scss => _special-state.scss} | 4 ++-- layouts/index.html | 2 +- layouts/partials/article.html | 2 +- .../article/{beta.html => special-state.html} | 20 +++++++++++-------- layouts/partials/topnav/product-selector.html | 2 +- 6 files changed, 18 insertions(+), 14 deletions(-) rename assets/styles/layouts/article/blocks/{_beta.scss => _special-state.scss} (98%) rename layouts/partials/article/{beta.html => special-state.html} (70%) diff --git a/assets/styles/layouts/article/_blocks.scss b/assets/styles/layouts/article/_blocks.scss index 62b205491..c7250749d 100644 --- a/assets/styles/layouts/article/_blocks.scss +++ b/assets/styles/layouts/article/_blocks.scss @@ -97,4 +97,4 @@ blockquote { "blocks/important", "blocks/warning", "blocks/caution", - "blocks/beta"; + "blocks/special-state"; diff --git a/assets/styles/layouts/article/blocks/_beta.scss b/assets/styles/layouts/article/blocks/_special-state.scss similarity index 98% rename from assets/styles/layouts/article/blocks/_beta.scss rename to assets/styles/layouts/article/blocks/_special-state.scss index b3ab3a70c..0717952cd 100644 --- a/assets/styles/layouts/article/blocks/_beta.scss +++ b/assets/styles/layouts/article/blocks/_special-state.scss @@ -1,10 +1,10 @@ -.block.beta { +.block.special-state { @include gradient($grad-burningDusk); padding: 4px; border: none; border-radius: 25px !important; - .beta-content { + .state-content { background: $article-bg; border-radius: 21px; padding: calc(1.65rem - 4px) calc(2rem - 4px) calc(.1rem + 4px) calc(2rem - 4px); diff --git a/layouts/index.html b/layouts/index.html index 6bbd51ab6..81859367a 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -111,7 +111,7 @@

    -

    InfluxDB 3 Explorer

    +

    InfluxDB 3 Explorer

    A standalone UI designed for visualizing, querying, and managing data in InfluxDB 3 Core and Enterprise.

    - {{ partial "article/beta.html" . }} + {{ partial "article/special-state.html" . }} {{ partial "article/stable-version.html" . }} {{ partial "article/flux-experimental.html" . }} {{ partial "article/flux-contrib.html" . }} diff --git a/layouts/partials/article/beta.html b/layouts/partials/article/special-state.html similarity index 70% rename from layouts/partials/article/beta.html rename to layouts/partials/article/special-state.html index d2288dd53..6a89cd7d4 100644 --- a/layouts/partials/article/beta.html +++ b/layouts/partials/article/special-state.html @@ -8,19 +8,23 @@ {{ $earlyAccessList := slice "influxdb3/explorer" }} {{ if in $earlyAccessList (print $product "/" $version )}} -
    -
    -

    {{ $displayName }} is in Public Beta

    +
    +
    +

    {{ $displayName }} is Generally Available

    - {{ $displayName }} is in public beta and available for testing and feedback, - but is not meant for production use yet. - Both the product and this documentation are works in progress. - We welcome and encourage your input about your experience with the beta and + {{ $displayName }} is generally available and is ready for production use. + We welcome and encourage your input about your experience with Explorer and invite you to join our public channels for updates and to share feedback.

    +

    + The {{ $displayName}} documentation is a work in progress, and we are actively + working to improve it. If you have any questions or suggestions, please + submit an issue. + We welcome any and all contributions. +

    -
    +

    Join our public channels

    diff --git a/layouts/partials/topnav/product-selector.html b/layouts/partials/topnav/product-selector.html index 249ab01bc..0a9e29fb9 100644 --- a/layouts/partials/topnav/product-selector.html +++ b/layouts/partials/topnav/product-selector.html @@ -60,7 +60,7 @@ Identify products by their product path. Dictionary schema:
  1. {{ template "productLink" (merge (dict "productPath" "influxdb3/cloud-dedicated") $templateDefaults) }}
    • -
    • {{ template "productLink" (merge (dict "productPath" "influxdb3/explorer" "state" "beta") $templateDefaults) }}
    • +
    • {{ template "productLink" (merge (dict "productPath" "influxdb3/explorer" "state" "New") $templateDefaults) }}
    From 5e0c6e7e20c42b5d32343af2937749aa3950be7a Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 11:50:05 -0500 Subject: [PATCH 46/80] Apply suggestions from code review Co-authored-by: Scott Anderson --- content/shared/v3-core-enterprise-release-notes/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index f3f59bf05..a526a14db 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -6,8 +6,8 @@ > The Enterprise sections below only list updates exclusive to Enterprise. ## v3.2.0 {date="2025-06-25"} -**Core**: revision 1ca3168bee +**Core**: revision 1ca3168bee **Enterprise**: revision 1ca3168bee ### Core From d6383cd5a0901d4104c235560d1dfbe2a84673e6 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 26 Jun 2025 12:28:21 -0500 Subject: [PATCH 47/80] Get started with InfluxDB 3 Explorer (#6155) * add get started content to explorer docs * add get started content to explorer docs * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update content/influxdb3/explorer/get-started.md Co-authored-by: Jason Stirnaman --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jason Stirnaman --- content/influxdb3/explorer/get-started.md | 132 ++++++++++++++++++ .../influxdb3/explorer/get-started/_index.md | 14 -- .../influxdb3/explorer/get-started/connect.md | 12 -- .../influxdb3/explorer/manage-databases.md | 44 ++++++ 4 files changed, 176 insertions(+), 26 deletions(-) create mode 100644 content/influxdb3/explorer/get-started.md delete mode 100644 content/influxdb3/explorer/get-started/_index.md delete mode 100644 content/influxdb3/explorer/get-started/connect.md create mode 100644 content/influxdb3/explorer/manage-databases.md diff --git a/content/influxdb3/explorer/get-started.md b/content/influxdb3/explorer/get-started.md new file mode 100644 index 000000000..244191130 --- /dev/null +++ b/content/influxdb3/explorer/get-started.md @@ -0,0 +1,132 @@ +--- +title: Get started with InfluxDB 3 Explorer +description: > + Learn how to use InfluxDB 3 Explorer to connect to InfluxDB 3, write data, and + query data. +menu: + influxdb3_explorer: + name: Get started +weight: 3 +--- + +Get started with {{% product-name %}} by connecting it to an InfluxDB 3 instance, +writing data to InfluxDB, and then querying that data. This guide walks you +through each of those steps. + +1. [Connect to an InfluxDB 3 server](#connect-to-an-influxdb-3-server) +2. [Write data to InfluxDB](#write-data-to-influxdb) +3. [Query data from InfluxDB](#query-data-from-influxdb) + +> [!Note] +> This guide assumes you have already [installed {{% product-name %}}](/influxdb3/explorer/install/). + +## Connect to an InfluxDB 3 server + +InfluxDB 3 Explorer supports the following InfluxDB 3 products: + +- [InfluxDB 3 Core](/influxdb3/core/) +- [InfluxDB 3 Enterprise](/influxdb3/enterprise/) + +1. Navigate to **Configure** > **Servers**. +2. Click **+ Connect Your First Server**. +3. Provide the following InfluxDB 3 server information: + + - **Server name**: A name to identify the InfluxDB 3 server you're connecting to. + - **Server URL**: The URL used to connect to your InfluxDB 3 server. + - Select the protocol to use (http or https). + - Provide the host and, if necessary, the port. + - **Token**: The authorization token to use to connect to your InfluxDB 3 server. + We recommend using an InfluxDB 3 _admin_ token. + + > [!Important] + > #### Token permissions may limit Explorer functionality + > + > The permissions associated with the provided token determine what + > databases you can access using this server configuration. InfluxDB 3 + > tokens with limited permissions may not be able to use some Explorer + > functionality. + +4. Click **Add Server**. + +InfluxDB 3 Explorer attempts to verify the connection. If successful, Explorer +saves the server configuration and selects it as the active server. + +> [!Note] +> If you already have data in your InfluxDB 3 instance, skip to +> [Query data from InfluxDB](#query-data-from-influxdb). + +## Write data to InfluxDB + +{{% product-name %}} lets you write data to InfluxDB 3 and provides multiple +options. For this getting started guide, use Explorer to write one of the +sample data sets to InfluxDB: + +1. Navigate to **Write Data** > **Sample/Dev Data**. +2. Select any of the available sample data sets. +3. Click **Write Sample Data**. + +{{% product-name %}} creates a new database and then writes the sample data to +the database. + +### Other write methods + +{{% product-name %}} provides other ways to write data to InfluxDB, including +the following: + +- Line protocol +- CSV or JSON +- InfluxDB 3 client libraries +- Telegraf + +## Query data from InfluxDB + +To use {{% product-name %}} to query data from InfluxDB 3, navigate to +**Query Data** > **Data Explorer**. + +The _Data Explorer_ lets you explore the +schema of your database and automatically builds SQL queries by either +selecting columns in the _Schema Browser_ or by using _Natural Language_ with +the {{% product-name %}} OpenAI integration. + +For this getting started guide, use the Schema Browser to build a SQL query +that returns data from the newly written sample data set. + +1. On the **Data Explorer** in the **Schema** column, select the database you + want to query from the database dropdown menu. + Once selected, all tables in the database appear. +2. Click the name of the table you want to query to expand and view all the + columns in that table. +3. Select each column you want to query. + As you select columns in the Schema Browser, Explorer generates and updates + an SQL query in the _Query pane_. +4. Use the time range dropdown menu above the Query pane to select a time range + to query. You can select one of the predefined relative time ranges, or you + can select _Custom Range_ to define an absolute time range to query. +5. With columns and a time range selected, click **Run Query**. + +{{% product-name %}} runs the query and returns the results in the _Results pane_. +The Results pane provides three view options: + +- **Table** _(default)_: Displays raw query results in paginated table format. +- **Line**: Displays query results in a line graph. +- **Bar**: Displays query results in a bar graph. + +> [!Tip] +> SQL query results may not be ordered by `time` and Line and Bar graph +> visualizations may behave unexpectedly. To order results by time: +> +> - Ensure that you query the `time` column +> - Update the query to include an `ORDER BY time` clause. + +Congratulations! You have successfully used {{% product-name %}} to connect to, +write data to, and query data from an InfluxDB 3 instance. + +## Video walkthrough + +{{< youtube "zW2Hi1Ki4Eo" >}} + + diff --git a/content/influxdb3/explorer/get-started/_index.md b/content/influxdb3/explorer/get-started/_index.md deleted file mode 100644 index e15e4a3c4..000000000 --- a/content/influxdb3/explorer/get-started/_index.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: Get started using InfluxDB 3 Explorer -description: Follow steps to get started using InfluxDB 3 Explorer. -menu: - influxdb3_explorer: - name: Get started -weight: 3 ---- - -Follow steps to get started using InfluxDB 3 Explorer. - -{{< youtube "zW2Hi1Ki4Eo" >}} - - diff --git a/content/influxdb3/explorer/get-started/connect.md b/content/influxdb3/explorer/get-started/connect.md deleted file mode 100644 index 7d717c024..000000000 --- a/content/influxdb3/explorer/get-started/connect.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: Connect to a server -description: - Use InfluxDB 3 Explorer to connect to an InfluxDB 3 server. -menu: - influxdb3_explorer: - parent: Get started -weight: 101 -draft: true ---- - -Use InfluxDB 3 Explorer to connect to an InfluxDB 3 server. \ No newline at end of file diff --git a/content/influxdb3/explorer/manage-databases.md b/content/influxdb3/explorer/manage-databases.md new file mode 100644 index 000000000..e076f3707 --- /dev/null +++ b/content/influxdb3/explorer/manage-databases.md @@ -0,0 +1,44 @@ +--- +title: Manage databases with InfluxDB 3 Explorer +seotitle: Manage InfluxDB databases with InfluxDB 3 Explorer +menu: + influxdb3_explorer: + name: Manage Databases +draft: true +--- + + + +## View databases + +## Create a database + +> [!Important] +> Using {{% product-name %}} to create a database in InfluxDB 3 requires that +> Explorer is running in [admin mode](/influxdb3/explorer/install/#run-in-query-or-admin-mode) +> and that the token used in the InfluxDB 3 server configuration is an +> [admin token](/influxdb3/enterprise/admin/tokens/admin/). + +To use {{% product-name %}} to create a new database in an InfluxDB 3 instance: + +1. Navigate to **Manage Databases**. +2. Click **+ Create New**. +3. Provide a **Database name**. + _For information about naming restrictions, see + [InfluxDB 3 naming restrictions](/influxdb3/enterprise/admin/databases/create/#database-naming-restrictions)._ +4. _(Optional)_ Specify a **Retention Period** for the database. + This determines how long InfluxDB retains data (based on timestamp) in the + database before expiring and removing the data. If no retention period is + specified, InfluxDB does not expire data in the database. + + Set the following: + + - **Retention Period**: The number of time units to retain data. + - **Unit**: The unit of time to use in the retention period definition. + +5. Click **{{< icon "check" >}} Create Database**. + +## Delete a database \ No newline at end of file From dbbbca8c58e9afe00e628375426c908ef67fc92a Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 13:19:18 -0500 Subject: [PATCH 48/80] Apply suggestions from code review --- content/shared/v3-core-enterprise-release-notes/_index.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index a526a14db..ae7d04ef7 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -42,8 +42,7 @@ All Core updates are included in Enterprise. Additional Enterprise-specific feat - **License management improvements**: - New `influxdb3 show license` command to display current license information - **Table-level retention period support**: Add retention period support for individual tables in addition to database-level retention, providing granular data lifecycle management - - New CLI commands: `create table --retention-period` and `update table --retention-period` - - Set or clear table-specific retention policies independent of database settings + - New CLI command: `influxdb3 create table --retention-period` - **Compaction improvements**: - Address compactor restart issues for better reliability - Track compacted generation durations in catalog for monitoring From d176eea4e7d599ea420641141822f20d8b6f692a Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 26 Jun 2025 16:35:31 -0500 Subject: [PATCH 49/80] Manage databases and tokens in InfluxDB 3 Explorer (#6162) * Manage databases and tokens in Explorer * Update content/influxdb3/explorer/manage-tokens.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../influxdb3/core/admin/databases/_index.md | 1 + .../influxdb3/core/admin/databases/create.md | 1 + .../influxdb3/core/admin/databases/delete.md | 1 + .../influxdb3/core/admin/databases/list.md | 1 + .../enterprise/admin/databases/_index.md | 1 + .../enterprise/admin/databases/create.md | 1 + .../enterprise/admin/databases/delete.md | 1 + .../enterprise/admin/databases/list.md | 1 + .../enterprise/admin/tokens/_index.md | 2 + .../enterprise/admin/tokens/admin/_index.md | 3 + .../influxdb3/explorer/manage-databases.md | 45 +++++--- content/influxdb3/explorer/manage-tokens.md | 104 ++++++++++++++++++ 12 files changed, 144 insertions(+), 18 deletions(-) create mode 100644 content/influxdb3/explorer/manage-tokens.md diff --git a/content/influxdb3/core/admin/databases/_index.md b/content/influxdb3/core/admin/databases/_index.md index ddbfb0a16..c46711854 100644 --- a/content/influxdb3/core/admin/databases/_index.md +++ b/content/influxdb3/core/admin/databases/_index.md @@ -12,6 +12,7 @@ influxdb3/core/tags: [databases] related: - /influxdb3/core/write-data/best-practices/schema-design/ - /influxdb3/core/reference/cli/influxdb3/ + - /influxdb3/explorer/manage-databases/ alt_links: cloud: /influxdb/cloud/admin/buckets/ cloud_dedicated: /influxdb3/cloud-dedicated/admin/databases/ diff --git a/content/influxdb3/core/admin/databases/create.md b/content/influxdb3/core/admin/databases/create.md index a05fe548f..99ccd12c5 100644 --- a/content/influxdb3/core/admin/databases/create.md +++ b/content/influxdb3/core/admin/databases/create.md @@ -17,6 +17,7 @@ list_code_example: | {{% /code-placeholders %}} related: - /influxdb3/core/reference/cli/influxdb3/create/database/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/create.md --- diff --git a/content/influxdb3/core/admin/databases/delete.md b/content/influxdb3/core/admin/databases/delete.md index 96750c65e..69bb8aaea 100644 --- a/content/influxdb3/core/admin/databases/delete.md +++ b/content/influxdb3/core/admin/databases/delete.md @@ -16,6 +16,7 @@ list_code_example: | {{% /code-placeholders %}} related: - /influxdb3/core/reference/cli/influxdb3/delete/database/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/delete.md --- diff --git a/content/influxdb3/core/admin/databases/list.md b/content/influxdb3/core/admin/databases/list.md index e416c267b..4be161e41 100644 --- a/content/influxdb3/core/admin/databases/list.md +++ b/content/influxdb3/core/admin/databases/list.md @@ -13,6 +13,7 @@ list_code_example: | ``` related: - /influxdb3/core/reference/cli/influxdb3/show/databases/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/list.md --- diff --git a/content/influxdb3/enterprise/admin/databases/_index.md b/content/influxdb3/enterprise/admin/databases/_index.md index f5165023b..c93183766 100644 --- a/content/influxdb3/enterprise/admin/databases/_index.md +++ b/content/influxdb3/enterprise/admin/databases/_index.md @@ -12,6 +12,7 @@ influxdb3/enterprise/tags: [databases] related: - /influxdb3/enterprise/write-data/best-practices/schema-design/ - /influxdb3/enterprise/reference/cli/influxdb3/ + - /influxdb3/explorer/manage-databases/ alt_links: cloud: /influxdb/cloud/admin/buckets/ cloud_dedicated: /influxdb3/cloud-dedicated/admin/databases/ diff --git a/content/influxdb3/enterprise/admin/databases/create.md b/content/influxdb3/enterprise/admin/databases/create.md index bccfacff2..14f56c821 100644 --- a/content/influxdb3/enterprise/admin/databases/create.md +++ b/content/influxdb3/enterprise/admin/databases/create.md @@ -17,6 +17,7 @@ list_code_example: | {{% /code-placeholders %}} related: - /influxdb3/enterprise/reference/cli/influxdb3/create/database/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/create.md --- diff --git a/content/influxdb3/enterprise/admin/databases/delete.md b/content/influxdb3/enterprise/admin/databases/delete.md index 395ab611a..9ae9b963e 100644 --- a/content/influxdb3/enterprise/admin/databases/delete.md +++ b/content/influxdb3/enterprise/admin/databases/delete.md @@ -16,6 +16,7 @@ list_code_example: | {{% /code-placeholders %}} related: - /influxdb3/enterprise/reference/cli/influxdb3/delete/database/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/delete.md --- diff --git a/content/influxdb3/enterprise/admin/databases/list.md b/content/influxdb3/enterprise/admin/databases/list.md index c579a9816..e9d5cd374 100644 --- a/content/influxdb3/enterprise/admin/databases/list.md +++ b/content/influxdb3/enterprise/admin/databases/list.md @@ -13,6 +13,7 @@ list_code_example: | ``` related: - /influxdb3/enterprise/reference/cli/influxdb3/show/databases/ + - /influxdb3/explorer/manage-databases/ source: /shared/influxdb3-admin/databases/list.md --- diff --git a/content/influxdb3/enterprise/admin/tokens/_index.md b/content/influxdb3/enterprise/admin/tokens/_index.md index 6c9a079ea..6eb899717 100644 --- a/content/influxdb3/enterprise/admin/tokens/_index.md +++ b/content/influxdb3/enterprise/admin/tokens/_index.md @@ -6,6 +6,8 @@ menu: influxdb3_enterprise: parent: Administer InfluxDB weight: 202 +related: + - /influxdb3/explorer/manage-tokens/ source: /shared/influxdb3-admin/tokens/_index.md --- diff --git a/content/influxdb3/enterprise/admin/tokens/admin/_index.md b/content/influxdb3/enterprise/admin/tokens/admin/_index.md index d870c5e91..b0745f541 100644 --- a/content/influxdb3/enterprise/admin/tokens/admin/_index.md +++ b/content/influxdb3/enterprise/admin/tokens/admin/_index.md @@ -10,6 +10,9 @@ menu: parent: Manage tokens name: Admin tokens weight: 101 +cascade: + related: + - /influxdb3/explorer/manage-tokens/ influxdb3/enterprise/tags: [tokens] source: /shared/influxdb3-admin/tokens/admin/_index.md --- diff --git a/content/influxdb3/explorer/manage-databases.md b/content/influxdb3/explorer/manage-databases.md index e076f3707..08a7c5be5 100644 --- a/content/influxdb3/explorer/manage-databases.md +++ b/content/influxdb3/explorer/manage-databases.md @@ -1,35 +1,38 @@ --- title: Manage databases with InfluxDB 3 Explorer seotitle: Manage InfluxDB databases with InfluxDB 3 Explorer +description: > + Use InfluxDB 3 Explorer to manage databases in an InfluxDB 3 instance. menu: influxdb3_explorer: - name: Manage Databases -draft: true + name: Manage databases +weight: 4 +related: + - /influxdb3/core/admin/databases/, Manage databases in InfluxDB 3 Core + - /influxdb3/enterprise/admin/databases/, Manage databases in InfluxDB 3 Enterprise --- - - -## View databases - -## Create a database +{{% product-name %}} lets you manage databases in your InfluxDB 3 Core instance +or InfluxDB 3 Enterprise cluster. > [!Important] -> Using {{% product-name %}} to create a database in InfluxDB 3 requires that +> Using {{% product-name %}} to manage a database in InfluxDB 3 requires that > Explorer is running in [admin mode](/influxdb3/explorer/install/#run-in-query-or-admin-mode) > and that the token used in the InfluxDB 3 server configuration is an > [admin token](/influxdb3/enterprise/admin/tokens/admin/). -To use {{% product-name %}} to create a new database in an InfluxDB 3 instance: +To manage databases, navigate to **Manage Databases** in Explorer. +This page provides a list of databases in the connected InfluxDB 3 server that +contains the database name, retention period, and number of tables +(which includes system tables). -1. Navigate to **Manage Databases**. -2. Click **+ Create New**. -3. Provide a **Database name**. +## Create a database + +1. On the **Manage Databases** page, click **+ Create New**. +2. Provide a **Database name**. _For information about naming restrictions, see [InfluxDB 3 naming restrictions](/influxdb3/enterprise/admin/databases/create/#database-naming-restrictions)._ -4. _(Optional)_ Specify a **Retention Period** for the database. +3. _(Optional)_ Specify a **Retention Period** for the database. This determines how long InfluxDB retains data (based on timestamp) in the database before expiring and removing the data. If no retention period is specified, InfluxDB does not expire data in the database. @@ -39,6 +42,12 @@ To use {{% product-name %}} to create a new database in an InfluxDB 3 instance: - **Retention Period**: The number of time units to retain data. - **Unit**: The unit of time to use in the retention period definition. -5. Click **{{< icon "check" >}} Create Database**. +4. Click **{{< icon "check" >}} Create Database**. -## Delete a database \ No newline at end of file +## Delete a database + +1. On the **Manage Databases** page, click **{{< icon "trash" >}}**. +2. Confirm that you want to delete the database. + +> [!Caution] +> Deleting a database is a destructive action and cannot be undone. diff --git a/content/influxdb3/explorer/manage-tokens.md b/content/influxdb3/explorer/manage-tokens.md new file mode 100644 index 000000000..492f21fe0 --- /dev/null +++ b/content/influxdb3/explorer/manage-tokens.md @@ -0,0 +1,104 @@ +--- +title: Manage tokens with InfluxDB 3 Explorer +seotitle: Manage InfluxDB tokens with InfluxDB 3 Explorer +description: > + Use InfluxDB 3 Explorer to manage authorization tokens for an InfluxDB 3 instance. +menu: + influxdb3_explorer: + name: Manage tokens +weight: 4 +related: + - /influxdb3/core/admin/tokens/, Manage tokens in InfluxDB 3 Core + - /influxdb3/enterprise/admin/tokens/, Manage tokens in InfluxDB 3 Enterprise +--- + +{{% product-name %}} lets you manage authorization tokens for your InfluxDB 3 +Core instance or InfluxDB 3 Enterprise cluster. + +> [!Important] +> Using {{% product-name %}} to manage authorization tokens in InfluxDB 3 requires that +> Explorer is running in [admin mode](/influxdb3/explorer/install/#run-in-query-or-admin-mode) +> and that the token used in the InfluxDB 3 server configuration is an +> [admin token](/influxdb3/enterprise/admin/tokens/admin/). + +To manage InfluxDB authorization tokens, navigate to **Manage Tokens** in Explorer. +This page provides a list of databases in the connected InfluxDB 3 server that +contains the database name, retention period, and number of tables +(which includes system tables). + +## Create a token + +Use {{% product-name %}} to create an admin token or a resource token +_(Enterprise only)_ for your InfluxDB 3 instance or cluster. + +For more information about InfluxDB tokens, see: + +- [Manage tokens in InfluxDB 3 Core](/influxdb3/core/admin/tokens/) +- [Manage tokens in InfluxDB 3 Enterprise](/influxdb3/enterprise/admin/tokens/) + +{{< tabs-wrapper >}} +{{% tabs %}} +[Admin Token](#) +[Resource Token _(Enterprise only)_](#) +{{% /tabs %}} +{{% tab-content %}} + + + +To create an _admin_ token: + +1. On the **Manage Databases** page, click **+ Create New**. +2. Select **Admin Token** to create an admin token. +3. Provide a **Token Name**. +4. Click **Create Admin Token**. +5. Copy the generated token string and store it in a secure place. + + + +{{% /tab-content %}} +{{% tab-content %}} + + + +To create a _resource_ token with read or write permissions for specific databases: + +1. On the **Manage Databases** page, click **+ Create New**. +2. Select **Database Token** to create a resource token _(InfluxDB 3 Enterprise only)_. +3. Provide a **Token Name**. +4. _(Optional)_ Select a **Token Expiry**. +5. Select **Database Permissions** to assign to the token. + + To grant the token read or write permissions on all databases, select the + _Read_ and _Write_ column headings. + To grant permissions for specific databases, select the checkboxes next + to each respective database name. + +6. Copy the generated token string and store it in a secure place. + + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + +> [!Note] +> #### Store tokens in a secure secret store +> +> This is the _only_ time you are able to view and copy the raw token string. +> We recommend storing tokens in a **secure secret store**. + + +## Delete a token + +On the **Manage Databases** page, click the **{{< icon "trash" >}}** button +on the row of the token you want to delete. + +> [!Caution] +> Deleting a token is a destructive action and cannot be undone. +> Any clients using the deleted token will no longer be able to access your +> InfluxDB 3 instance. + +> [!Note] +> #### You cannot delete the _admin token +> +> When using InfluxDB 3 Enterprise, the first token created in the cluster is +> named `_admin`. This functions as the "operator" token and cannot be deleted. From 52e6eeca8a1aa1a9c9ec7a8210ec6155f2d1c9d2 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 16:36:26 -0500 Subject: [PATCH 50/80] feat: Update InfluxDB 3 CLI documentation for v3.2.0 features - Add influxdb3 show license command documentation for Enterprise - Update create database command with --retention-period option - Update create table command with Enterprise --retention-period option - Update delete database/table commands with --hard-delete options - Update CLI command index to include license command - Update planning documentation for CLI sync process - Closes #6160 --- .../reference/cli/influxdb3/show/license.md | 91 +++++++++++++++++++ .../shared/influxdb3-cli/create/database.md | 25 +++-- content/shared/influxdb3-cli/create/table.md | 35 ++++++- .../shared/influxdb3-cli/delete/database.md | 39 ++++++-- content/shared/influxdb3-cli/delete/table.md | 33 +++++-- content/shared/influxdb3-cli/show/_index.md | 1 + plans/cli-docs-sync/plan.md | 79 ++++++++++++++++ 7 files changed, 277 insertions(+), 26 deletions(-) create mode 100644 content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md create mode 100644 plans/cli-docs-sync/plan.md diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md b/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md new file mode 100644 index 000000000..ea7e73821 --- /dev/null +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md @@ -0,0 +1,91 @@ +--- +title: influxdb3 show license +description: > + The `influxdb3 show license` command displays license information for your + InfluxDB 3 Enterprise server. +menu: + influxdb3_enterprise: + parent: influxdb3 show + name: influxdb3 show license +weight: 300 +--- + +The `influxdb3 show license` command displays license information for your {{< product-name >}} instance. + +{{% show-in "enterprise" %}} +This command is only available in InfluxDB 3 Enterprise. +{{% /show-in %}} + +## Usage + + + +```bash +influxdb3 show license [OPTIONS] +``` + +## Options + +| Option | | Description | +| :----- | :----------- | :--------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| | `--cluster-id` | _({{< req >}})_ Cluster identifier | +| | `--node-id` | _({{< req >}})_ Node identifier | +| | `--object-store` | _({{< req >}})_ Object store type (file, memory, s3, gcs, azure) | +| | `--token` | Authentication token | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | + +> [!Note] +> **CLI help documentation bug in v3.2.0** +> +> The `influxdb3 show license --help` output in v3.2.0 does not display the required `--object-store`, `--cluster-id`, and `--node-id` options and related object store configuration options. +> This command requires object store configuration and cluster/node identification to function properly. + +### Additional object store options + +Depending on the `--object-store` type specified, additional configuration options may be required: + +- **S3**: AWS credentials and bucket configuration +- **GCS**: Google Cloud credentials and bucket configuration +- **Azure**: Azure credentials and container configuration +- **File**: Local file system path configuration + +### Option environment variables + +You can use the following environment variables to set command options: + +| Environment Variable | Option | +| :------------------------ | :----------- | +| `INFLUXDB3_HOST_URL` | `--host` | +| `INFLUXDB3_AUTH_TOKEN` | `--token` | + +## Examples + +### Display license information with file object store + +{{% code-placeholders "AUTH_TOKEN|CLUSTER_ID|NODE_ID" %}} + + + +```bash +influxdb3 show license \ + --cluster-id CLUSTER_ID \ + --node-id NODE_ID \ + --object-store file \ + --token AUTH_TOKEN +``` + +{{% /code-placeholders %}} + +In the example above, replace the following: + +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + Authentication token +- {{% code-placeholder-key %}}`CLUSTER_ID`{{% /code-placeholder-key %}}: + Your cluster identifier +- {{% code-placeholder-key %}}`NODE_ID`{{% /code-placeholder-key %}}: + Your node identifier + +The command displays information about your Enterprise license, including license type, expiration date, and usage limits. \ No newline at end of file diff --git a/content/shared/influxdb3-cli/create/database.md b/content/shared/influxdb3-cli/create/database.md index 630546c14..30c9c78eb 100644 --- a/content/shared/influxdb3-cli/create/database.md +++ b/content/shared/influxdb3-cli/create/database.md @@ -19,13 +19,14 @@ You can also set the database name using the `INFLUXDB3_DATABASE_NAME` environme ## Options -| Option | | Description | -| :----- | :----------- | :--------------------------------------------------------------------------------------- | -| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | -| | `--token` | Authentication token | -| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | -| `-h` | `--help` | Print help information | -| | `--help-all` | Print detailed help information | +| Option | | Description | +| :----- | :------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| | `--retention-period` | Database [retention period](/influxdb3/version/reference/glossary/#retention-period) ([duration](/influxdb3/version/reference/glossary/#duration) value, for example: `30d`, `24h`, `1h`) | +| | `--token` | Authentication token | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables @@ -69,4 +70,14 @@ Flags override their associated environment variables. influxdb3 create database --token AUTH_TOKEN DATABASE_NAME ``` +### Create a database with a retention period + +Creates a database with a specific retention period. + + + +```bash +influxdb3 create database --retention-period 30d DATABASE_NAME +``` + {{% /code-placeholders %}} diff --git a/content/shared/influxdb3-cli/create/table.md b/content/shared/influxdb3-cli/create/table.md index e3b858970..79c4e9ce9 100644 --- a/content/shared/influxdb3-cli/create/table.md +++ b/content/shared/influxdb3-cli/create/table.md @@ -24,6 +24,7 @@ influxdb3 create table [OPTIONS] \ ## Options +{{% hide-in "enterprise" %}} | Option | | Description | | :----- | :----------- | :--------------------------------------------------------------------------------------- | | `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | @@ -34,6 +35,22 @@ influxdb3 create table [OPTIONS] \ | | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | | `-h` | `--help` | Print help information | | | `--help-all` | Print detailed help information | +{{% /hide-in %}} + + +{{% show-in "enterprise" %}} +| Option | | Description | +| :----- | :------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | +| | `--retention-period` | [Retention period](/influxdb3/version/reference/glossary/#retention-period) ([duration](/influxdb3/version/reference/glossary/#duration) value, for example: `30d`, `24h`, `1h`) for data in the table| +| | `--token` | _({{< req >}})_ Authentication token | +| | `--tags` | _({{< req >}})_ Comma-separated list of tag columns to include in the table | +| | `--fields` | Comma-separated list of field columns and their types to include in the table | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | +{{% /show-in %}} > [!Important] > @@ -90,6 +107,22 @@ influxdb3 create table \ TABLE_NAME ``` +{{% show-in "enterprise" %}} +### Create a table with a retention period + + + +```bash +influxdb3 create table \ + --tags room,sensor_id \ + --fields temp:float64,hum:float64 \ + --retention-period 7d \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + TABLE_NAME +``` +{{% /show-in %}} + ### Verification Use the `SHOW TABLES` query to verify that the table was created successfully: @@ -114,7 +147,7 @@ Example output: +---------------+--------------------+----------------------------+------------+ ``` ->[!Note] +> [!Note] > `SHOW TABLES` is an SQL query. It isn't supported in InfluxQL. {{% /code-placeholders %}} diff --git a/content/shared/influxdb3-cli/delete/database.md b/content/shared/influxdb3-cli/delete/database.md index 6d675b414..c6fbda211 100644 --- a/content/shared/influxdb3-cli/delete/database.md +++ b/content/shared/influxdb3-cli/delete/database.md @@ -17,13 +17,14 @@ influxdb3 delete database [OPTIONS] ## Options -| Option | | Description | -| :----- | :----------- | :--------------------------------------------------------------------------------------- | -| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | -| | `--token` | Authentication token | -| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | -| `-h` | `--help` | Print help information | -| | `--help-all` | Print detailed help information | +| Option | | Description | +| :----- | :------------ | :--------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| | `--hard-delete` | When to hard delete data (never/now/default/timestamp). Default behavior is a soft delete that allows recovery | +| | `--token` | Authentication token | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables @@ -36,8 +37,8 @@ You can use the following environment variables to set command options: ## Examples -- [Delete a database](#delete-a-new-database) -- [Delete a database while specifying the token inline](#delete-a-new-database-while-specifying-the-token-inline) +- [Delete a database](#delete-a-database) +- [Delete a database while specifying the token inline](#delete-a-database-while-specifying-the-token-inline) In the examples below, replace the following: @@ -64,4 +65,24 @@ influxdb3 delete database DATABASE_NAME influxdb3 delete database --token AUTH_TOKEN DATABASE_NAME ``` +### Hard delete a database immediately + +Permanently delete a database and all its data immediately without the ability to recover. + + + +```bash +influxdb3 delete database --hard-delete now DATABASE_NAME +``` + +### Hard delete a database at a specific time + +Schedule a database for permanent deletion at a specific timestamp. + + + +```bash +influxdb3 delete database --hard-delete "2024-01-01T00:00:00Z" DATABASE_NAME +``` + {{% /code-placeholders %}} diff --git a/content/shared/influxdb3-cli/delete/table.md b/content/shared/influxdb3-cli/delete/table.md index c15674071..b6c83602e 100644 --- a/content/shared/influxdb3-cli/delete/table.md +++ b/content/shared/influxdb3-cli/delete/table.md @@ -15,14 +15,15 @@ influxdb3 delete table [OPTIONS] --database ## Options -| Option | | Description | -| :----- | :----------- | :--------------------------------------------------------------------------------------- | -| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | -| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | -| | `--token` | _({{< req >}})_ Authentication token | -| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | -| `-h` | `--help` | Print help information | -| | `--help-all` | Print detailed help information | +| Option | | Description | +| :----- | :------------ | :--------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | +| | `--hard-delete` | When to hard delete data (never/now/default/timestamp). Default behavior is a soft delete that allows recovery | +| | `--token` | _({{< req >}})_ Authentication token | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | ### Option environment variables @@ -49,9 +50,23 @@ influxdb3 delete table \ TABLE_NAME ``` +### Hard delete a table immediately + +Permanently delete a table and all its data immediately without the ability to recover. + + + +```bash +influxdb3 delete table \ + --database DATABASE_NAME \ + --token AUTH_TOKEN \ + --hard-delete now \ + TABLE_NAME +``` + {{% /code-placeholders %}} -In the example above, replace the following: +In the examples above, replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Database name diff --git a/content/shared/influxdb3-cli/show/_index.md b/content/shared/influxdb3-cli/show/_index.md index 4a5bbf935..eea02dcf0 100644 --- a/content/shared/influxdb3-cli/show/_index.md +++ b/content/shared/influxdb3-cli/show/_index.md @@ -14,6 +14,7 @@ influxdb3 show | Subcommand | Description | | :---------------------------------------------------------------------- | :--------------------------------------------- | | [databases](/influxdb3/version/reference/cli/influxdb3/show/databases/) | List database | +{{% show-in "enterprise" %}}| [license](/influxdb3/version/reference/cli/influxdb3/show/license/) | Display license information |{{% /show-in %}} | [system](/influxdb3/version/reference/cli/influxdb3/show/system/) | Display system table data | | [tokens](/influxdb3/version/reference/cli/influxdb3/show/tokens/) | List authentication tokens | | help | Print command help or the help of a subcommand | diff --git a/plans/cli-docs-sync/plan.md b/plans/cli-docs-sync/plan.md new file mode 100644 index 000000000..ca1d3afb9 --- /dev/null +++ b/plans/cli-docs-sync/plan.md @@ -0,0 +1,79 @@ +# Plan: Update InfluxDB 3 CLI Reference Documentation + +## Automation and Process Improvements + +### Immediate Improvements: +1. **Create CLI documentation sync script:** + ```bash + # Script: /Users/ja/Documents/github/docs-v2/scripts/sync-cli-docs.sh + # - Extract help text from influxdb3 CLI at /Users/ja/.influxdb//influxdb3 + # - Compare with existing docs + # - Generate report of differences + # - Auto-update basic command syntax + # - Real-time CLI verification capability established + ``` + +2. **Establish documentation standards:** + - Standardize frontmatter across CLI docs + - Create templates for command documentation + - Define Enterprise vs Core content patterns using Hugo shortcodes + +### Long-term Automation Strategy: +1. **CI/CD Integration:** + - Add GitHub Actions workflow to detect CLI changes + - Auto-generate CLI help extraction on new releases + - Create pull requests for documentation updates + +2. **Release Process Integration:** + - Include CLI documentation review in release checklist + - Link release notes to specific CLI documentation updates + - Automated cross-referencing between release notes and CLI docs + +3. **Content Management Improvements:** + - Use Hugo shortcodes for Enterprise-specific content + - Implement version-aware documentation + - Create shared content templates for common CLI patterns + +## Phase 4: Validation and Testing + +### Content accuracy verification: +- ✅ **CLI Access Available**: Direct verification via `influxdb3 --help` commands +- ✅ **Real-time Validation**: All commands and options verified against actual CLI output +- **Process**: Use `influxdb3 [command] --help` to validate documentation accuracy +- **Verification**: Cross-reference documented options with actual CLI behavior + +### Documentation completeness check: +- Ensure all v3.2.0 features are documented +- Verify examples and use cases +- Check internal links and cross-references + +## Suggested Recurring Process + +### Pre-release (during development): +- Monitor CLI changes in pull requests +- Update documentation as features are added +- Maintain CLI help extraction automation + +### At release (when tagging versions): +- Run automated CLI documentation sync +- Review and approve auto-generated updates +- Publish updated documentation + +### Post-release (after release): +- Validate documentation accuracy +- Gather user feedback on CLI documentation +- Plan improvements for next cycle + +## Related Documentation Paths + +### InfluxDB 3 Product Documentation (affects CLI usage examples): +- `/content/influxdb3/core/write-data/influxdb3-cli.md` +- `/content/influxdb3/enterprise/write-data/influxdb3-cli.md` +- `/content/shared/influxdb3-write-guides/influxdb3-cli.md` + +### Admin Documentation (affects retention and license features): +- `/content/influxdb3/core/admin/` +- `/content/influxdb3/enterprise/admin/` +- `/content/influxdb3/enterprise/admin/license.md` + +This plan ensures comprehensive documentation updates for v3.2.0 while establishing sustainable processes for future releases. \ No newline at end of file From 566f7dcb56fd987770464dbaefe73528de0ea891 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 17:04:32 -0500 Subject: [PATCH 51/80] Update content/shared/influxdb3-cli/delete/table.md --- content/shared/influxdb3-cli/delete/table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/shared/influxdb3-cli/delete/table.md b/content/shared/influxdb3-cli/delete/table.md index b6c83602e..c96178345 100644 --- a/content/shared/influxdb3-cli/delete/table.md +++ b/content/shared/influxdb3-cli/delete/table.md @@ -66,7 +66,7 @@ influxdb3 delete table \ {{% /code-placeholders %}} -In the examples above, replace the following: +Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Database name From 6dac1421275bc2338b6c3d37fe867b3be5132742 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 12:46:56 -0500 Subject: [PATCH 52/80] feat(influxdb3): Core and Ent: CLI reference for update database, update table (Ent3 only)- Add CLI reference for influxdb3 update database command and retention period option in Core and Ent - Add CLI ref for influxdb3 update table and ret. period option in Ent- Change volume source to /test for core and ent3 in compose.yaml - Add alt_links instructions in CONTRIBUTING.md --- .../instructions/contributing.instructions.md | 30 ++++++- CONTRIBUTING.md | 26 ++++++ compose.yaml | 22 +++-- .../core/reference/cli/influxdb3/_index.md | 1 + .../reference/cli/influxdb3/update/_index.md | 15 ++++ .../cli/influxdb3/update/database.md | 15 ++++ .../reference/cli/influxdb3/_index.md | 1 + .../reference/cli/influxdb3/update/_index.md | 15 ++++ .../cli/influxdb3/update/database.md | 15 ++++ .../reference/cli/influxdb3/update/table.md | 17 ++++ content/shared/influxdb3-cli/update/_index.md | 33 ++++++++ .../influxdb3-cli/update/database/_index.md | 84 +++++++++++++++++++ .../influxdb3-cli/update/table/_index.md | 74 ++++++++++++++++ test/.gitignore | 1 + 14 files changed, 340 insertions(+), 9 deletions(-) create mode 100644 content/influxdb3/core/reference/cli/influxdb3/update/_index.md create mode 100644 content/influxdb3/core/reference/cli/influxdb3/update/database.md create mode 100644 content/influxdb3/enterprise/reference/cli/influxdb3/update/_index.md create mode 100644 content/influxdb3/enterprise/reference/cli/influxdb3/update/database.md create mode 100644 content/influxdb3/enterprise/reference/cli/influxdb3/update/table.md create mode 100644 content/shared/influxdb3-cli/update/_index.md create mode 100644 content/shared/influxdb3-cli/update/database/_index.md create mode 100644 content/shared/influxdb3-cli/update/table/_index.md diff --git a/.github/instructions/contributing.instructions.md b/.github/instructions/contributing.instructions.md index 2774f384f..3ddd6bb83 100644 --- a/.github/instructions/contributing.instructions.md +++ b/.github/instructions/contributing.instructions.md @@ -2,11 +2,11 @@ applyTo: "content/**/*.md, layouts/**/*.html" --- -# GitHub Copilot Instructions for InfluxData Documentation +# Contributing instructions for InfluxData Documentation ## Purpose and scope -GitHub Copilot should help document InfluxData products +Help document InfluxData products by creating clear, accurate technical content with proper code examples, frontmatter, shortcodes, and formatting. @@ -375,6 +375,9 @@ list_query_example:# Code examples included with article descriptions in childre # References to examples in data/query_examples canonical: # Path to canonical page, overrides auto-gen'd canonical URL v2: # Path to v2 equivalent page +alt_links: # Alternate pages in other products/versions for cross-product navigation + cloud-dedicated: /influxdb3/cloud-dedicated/path/to/page/ + core: /influxdb3/core/path/to/page/ prepend: # Prepend markdown content to an article (especially powerful with cascade) block: # (Optional) Wrap content in a block style (note, warn, cloud) content: # Content to prepend to article @@ -466,6 +469,29 @@ add the following frontmatter to the 1.x page: v2: /influxdb/v2.0/get-started/ ``` +### Alternative links for cross-product navigation + +Use the `alt_links` frontmatter to specify equivalent pages in other InfluxDB products, +for example, when a page exists at a different path in a different version or if +the feature doesn't exist in that product. +This enables the product switcher to navigate users to the corresponding page when they +switch between products. If a page doesn't exist in another product (for example, an +Enterprise-only feature), point to the nearest parent page if relevant. + +```yaml +alt_links: + cloud-dedicated: /influxdb3/cloud-dedicated/admin/tokens/create-token/ + cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/ + core: /influxdb3/core/reference/cli/influxdb3/update/ # Points to parent if exact page doesn't exist +``` + +Supported product keys for InfluxDB 3: +- `core` +- `enterprise` +- `cloud-serverless` +- `cloud-dedicated` +- `clustered` + ### Prepend and append content to a page Use the `prepend` and `append` frontmatter to add content to the top or bottom of a page. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b2a6bdee3..e9f5fd25c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -363,6 +363,9 @@ list_query_example:# Code examples included with article descriptions in childre # References to examples in data/query_examples canonical: # Path to canonical page, overrides auto-gen'd canonical URL v2: # Path to v2 equivalent page +alt_links: # Alternate pages in other products/versions for cross-product navigation + cloud-dedicated: /influxdb3/cloud-dedicated/path/to/page/ + core: /influxdb3/core/path/to/page/ prepend: # Prepend markdown content to an article (especially powerful with cascade) block: # (Optional) Wrap content in a block style (note, warn, cloud) content: # Content to prepend to article @@ -454,6 +457,29 @@ add the following frontmatter to the 1.x page: v2: /influxdb/v2.0/get-started/ ``` +### Alternative links for cross-product navigation + +Use the `alt_links` frontmatter to specify equivalent pages in other InfluxDB products, +for example, when a page exists at a different path in a different version or if +the feature doesn't exist in that product. +This enables the product switcher to navigate users to the corresponding page when they +switch between products. If a page doesn't exist in another product (for example, an +Enterprise-only feature), point to the nearest parent page if relevant. + +```yaml +alt_links: + cloud-dedicated: /influxdb3/cloud-dedicated/admin/tokens/create-token/ + cloud-serverless: /influxdb3/cloud-serverless/admin/tokens/create-token/ + core: /influxdb3/core/reference/cli/influxdb3/update/ # Points to parent if exact page doesn't exist +``` + +Supported product keys for InfluxDB 3: +- `core` +- `enterprise` +- `cloud-serverless` +- `cloud-dedicated` +- `clustered` + ### Prepend and append content to a page Use the `prepend` and `append` frontmatter to add content to the top or bottom of a page. diff --git a/compose.yaml b/compose.yaml index 203f853c9..0b160f3d2 100644 --- a/compose.yaml +++ b/compose.yaml @@ -304,13 +304,21 @@ services: image: influxdb:3-core ports: - 8181:8181 + volumes: + - type: bind + source: test/influxdb3/core/data + target: /var/lib/influxdb3/data + - type: bind + source: test/influxdb3/core/plugins + target: /var/lib/influxdb3-plugins command: - influxdb3 - serve - - --node-id=sensors_node0 + - --node-id=node0 - --log-filter=debug - --object-store=file - - --data-dir=/var/lib/influxdb3 + - --data-dir=/var/lib/influxdb3/data + - --plugin-dir=/var/lib/influxdb3/plugins influxdb3-enterprise: container_name: influxdb3-enterprise image: influxdb:3-enterprise @@ -326,16 +334,16 @@ services: - --cluster-id=cluster0 - --log-filter=debug - --object-store=file - - --data-dir=/var/lib/influxdb3 + - --data-dir=/var/lib/influxdb3/data - --plugin-dir=/var/lib/influxdb3/plugins - --license-email=${INFLUXDB3_LICENSE_EMAIL} volumes: - type: bind - source: docker/influxdb3/data - target: /var/lib/influxdb3 + source: test/influxdb3/enterprise/data + target: /var/lib/influxdb3/data - type: bind - source: docker/influxdb3/plugins - target: /var/lib/influxdb3-plugins + source: test/influxdb3/enterprise/plugins + target: /var/lib/influxdb3/plugins telegraf-pytest: container_name: telegraf-pytest image: influxdata/docs-pytest diff --git a/content/influxdb3/core/reference/cli/influxdb3/_index.md b/content/influxdb3/core/reference/cli/influxdb3/_index.md index 221e4e654..831597dc6 100644 --- a/content/influxdb3/core/reference/cli/influxdb3/_index.md +++ b/content/influxdb3/core/reference/cli/influxdb3/_index.md @@ -32,6 +32,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND] | [serve](/influxdb3/core/reference/cli/influxdb3/serve/) | Run the {{% product-name %}} server | | [show](/influxdb3/core/reference/cli/influxdb3/show/) | List resources | | [test](/influxdb3/core/reference/cli/influxdb3/test/) | Test plugins | +| [update](/influxdb3/core/reference/cli/influxdb3/update/) | Update resources | | [write](/influxdb3/core/reference/cli/influxdb3/write/) | Write to {{% product-name %}} | ## Global options diff --git a/content/influxdb3/core/reference/cli/influxdb3/update/_index.md b/content/influxdb3/core/reference/cli/influxdb3/update/_index.md new file mode 100644 index 000000000..0cc4e0846 --- /dev/null +++ b/content/influxdb3/core/reference/cli/influxdb3/update/_index.md @@ -0,0 +1,15 @@ +--- +title: influxdb3 update +description: > + The `influxdb3 update` command updates resources such as databases. +menu: + influxdb3_core: + parent: influxdb3 + name: influxdb3 update +weight: 300 +source: /shared/influxdb3-cli/update/_index.md +--- + + \ No newline at end of file diff --git a/content/influxdb3/core/reference/cli/influxdb3/update/database.md b/content/influxdb3/core/reference/cli/influxdb3/update/database.md new file mode 100644 index 000000000..754f70d38 --- /dev/null +++ b/content/influxdb3/core/reference/cli/influxdb3/update/database.md @@ -0,0 +1,15 @@ +--- +title: influxdb3 update database +description: > + The `influxdb3 update database` command updates an existing database. +menu: + influxdb3_core: + parent: influxdb3 update + name: influxdb3 update database +weight: 400 +source: /shared/influxdb3-cli/update/database/_index.md +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md b/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md index db57936cb..863318111 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/_index.md @@ -32,6 +32,7 @@ influxdb3 [GLOBAL-OPTIONS] [COMMAND] | [serve](/influxdb3/enterprise/reference/cli/influxdb3/serve/) | Run the {{% product-name %}} server | | [show](/influxdb3/enterprise/reference/cli/influxdb3/show/) | List resources | | [test](/influxdb3/enterprise/reference/cli/influxdb3/test/) | Test plugins | +| [update](/influxdb3/enterprise/reference/cli/influxdb3/update/) | Update resources | | [write](/influxdb3/enterprise/reference/cli/influxdb3/write/) | Write to {{% product-name %}} | ## Global options diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/update/_index.md b/content/influxdb3/enterprise/reference/cli/influxdb3/update/_index.md new file mode 100644 index 000000000..8166b3bbb --- /dev/null +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/update/_index.md @@ -0,0 +1,15 @@ +--- +title: influxdb3 update +description: > + The `influxdb3 update` command updates resources such as databases and tables. +menu: + influxdb3_enterprise: + parent: influxdb3 + name: influxdb3 update +weight: 300 +source: /shared/influxdb3-cli/update/_index.md +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/update/database.md b/content/influxdb3/enterprise/reference/cli/influxdb3/update/database.md new file mode 100644 index 000000000..0a8130a62 --- /dev/null +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/update/database.md @@ -0,0 +1,15 @@ +--- +title: influxdb3 update database +description: > + The `influxdb3 update database` command updates an existing database. +menu: + influxdb3_enterprise: + parent: influxdb3 update + name: influxdb3 update database +weight: 400 +source: /shared/influxdb3-cli/update/database/_index.md +--- + + \ No newline at end of file diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/update/table.md b/content/influxdb3/enterprise/reference/cli/influxdb3/update/table.md new file mode 100644 index 000000000..d1a2b0bf2 --- /dev/null +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/update/table.md @@ -0,0 +1,17 @@ +--- +title: influxdb3 update table +description: > + The `influxdb3 update table` command updates an existing table. +menu: + influxdb3_enterprise: + parent: influxdb3 update + name: influxdb3 update table +weight: 400 +source: /shared/influxdb3-cli/update/table/_index.md +alt_links: + core: /influxdb3/core/reference/cli/influxdb3/update/ +--- + + \ No newline at end of file diff --git a/content/shared/influxdb3-cli/update/_index.md b/content/shared/influxdb3-cli/update/_index.md new file mode 100644 index 000000000..afe2a22db --- /dev/null +++ b/content/shared/influxdb3-cli/update/_index.md @@ -0,0 +1,33 @@ +The `influxdb3 update` command updates resources such as databases and tables. + +## Usage + + + +```bash +influxdb3 update +``` + +## Subcommands + +{{% show-in "enterprise" %}} +| Subcommand | Description | +| :----------------------------------------------------------------- | :--------------------- | +| [database](/influxdb3/version/reference/cli/influxdb3/update/database/) | Update a database | +| [table](/influxdb3/version/reference/cli/influxdb3/update/table/) | Update a table | +| help | Print command help or the help of a subcommand | +{{% /show-in %}} + +{{% show-in "core" %}} +| Subcommand | Description | +| :----------------------------------------------------------------- | :--------------------- | +| [database](/influxdb3/version/reference/cli/influxdb3/update/database/) | Update a database | +| help | Print command help or the help of a subcommand | +{{% /show-in %}} + +## Options + +| Option | | Description | +| :----- | :----------- | :------------------------------ | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | \ No newline at end of file diff --git a/content/shared/influxdb3-cli/update/database/_index.md b/content/shared/influxdb3-cli/update/database/_index.md new file mode 100644 index 000000000..c2be9879b --- /dev/null +++ b/content/shared/influxdb3-cli/update/database/_index.md @@ -0,0 +1,84 @@ +The `influxdb3 update database` command updates an existing database in your {{< product-name >}} instance. + +Use this command to update a database's retention period. + +## Usage + + + +```bash +influxdb3 update database [OPTIONS] --database +``` + +## Arguments + +- **`DATABASE_NAME`**: (Required) The name of the database to update. Valid database names are alphanumeric and start with a letter or number. Dashes (-) and underscores (_) are allowed. + +You can also set the database name using the `INFLUXDB3_DATABASE_NAME` environment variable. + +## Options + +| Option | | Description | +| :----- | :------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| `-d` | `--database` | The name of the database to update | +| | `--token` | Authentication token | +| `-r` | `--retention-period` | The retention period as a [duration](/influxdb3/version/reference/glossary/#duration) value (for example: `30d`, `24h`) or `none` to clear | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | + +### Option environment variables + +You can use the following environment variables instead of providing CLI options directly: + +| Environment Variable | Option | +| :------------------------ | :----------- | +| `INFLUXDB3_HOST_URL` | `--host` | +| `INFLUXDB3_DATABASE_NAME` | `--database` | +| `INFLUXDB3_AUTH_TOKEN` | `--token` | +| `INFLUXDB3_TLS_CA` | `--tls-ca` | + +## Examples + +The following examples show how to update a database. + +In your commands replace the following: +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Database name +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + Authentication token + +{{% code-placeholders "DATABASE_NAME|AUTH_TOKEN" %}} + +### Update a database retention period + +Updates a database retention period to 30 days. + + + +```bash +influxdb3 update database --retention-period 30d DATABASE_NAME +``` + +### Clear a database retention period + +Removes the retention period from a database by setting it to `none`. + + + +```bash +influxdb3 update database --retention-period none DATABASE_NAME +``` + +### Update a database with authentication + +Updates a database using an authentication token. + + + +```bash +influxdb3 update database --token AUTH_TOKEN --retention-period 7d DATABASE_NAME +``` + +{{% /code-placeholders %}} \ No newline at end of file diff --git a/content/shared/influxdb3-cli/update/table/_index.md b/content/shared/influxdb3-cli/update/table/_index.md new file mode 100644 index 000000000..928ca8573 --- /dev/null +++ b/content/shared/influxdb3-cli/update/table/_index.md @@ -0,0 +1,74 @@ +The `influxdb3 update table` command updates an existing table in a database in your {{< product-name >}} instance. + +Use this command to update a table's retention period. + +## Usage + + + +```bash +influxdb3 update table [OPTIONS] --database +``` + +## Arguments + +- **`TABLE_NAME`**: (Required) The name of the table to update + +## Options + +| Option | | Description | +| :----- | :------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------- | +| `-H` | `--host` | Host URL of the running {{< product-name >}} server (default is `http://127.0.0.1:8181`) | +| `-d` | `--database` | The name of the database containing the table | +| | `--token` | Authentication token | +| `-r` | `--retention-period` | The retention period as a [duration](/influxdb3/version/reference/glossary/#duration) value (for example: `30d`, `24h`) or `none` to clear | +| | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | +| `-h` | `--help` | Print help information | +| | `--help-all` | Print detailed help information | + +### Option environment variables + +You can use the following environment variables instead of providing CLI options directly: + +| Environment Variable | Option | +| :------------------------ | :----------- | +| `INFLUXDB3_HOST_URL` | `--host` | +| `INFLUXDB3_DATABASE_NAME` | `--database` | +| `INFLUXDB3_AUTH_TOKEN` | `--token` | +| `INFLUXDB3_TLS_CA` | `--tls-ca` | + +## Examples + +The following examples show how to update a table. + +In your commands replace the following: +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Database name +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: + Table name +- {{% code-placeholder-key %}}`AUTH_TOKEN`{{% /code-placeholder-key %}}: + Authentication token + +{{% code-placeholders "DATABASE_NAME|TABLE_NAME|AUTH_TOKEN" %}} + +### Update a table retention period + +Updates a table retention period to 30 days. + + + +```bash +influxdb3 update table --database DATABASE_NAME --token AUTH_TOKEN --retention-period 30d TABLE_NAME +``` + +### Clear a table retention period + +Removes the retention period from a table by setting it to `none`. + + + +```bash +influxdb3 update table --database DATABASE_NAME --retention-period none TABLE_NAME +``` + +{{% /code-placeholders %}} \ No newline at end of file diff --git a/test/.gitignore b/test/.gitignore index 726e3ff57..bcdfd10db 100644 --- a/test/.gitignore +++ b/test/.gitignore @@ -2,6 +2,7 @@ /Cargo.lock config.toml content +influxdb3/**/data _*_pid node_modules shared From 429e3fc0792331eb3d278da2e252be078804822d Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 14:00:02 -0500 Subject: [PATCH 53/80] Apply suggestions from code review Co-authored-by: Scott Anderson --- .../enterprise/reference/cli/influxdb3/show/license.md | 3 --- content/shared/influxdb3-cli/delete/database.md | 2 ++ content/shared/influxdb3-cli/update/database/_index.md | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md b/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md index ea7e73821..579cfb8e5 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/show/license.md @@ -12,9 +12,6 @@ weight: 300 The `influxdb3 show license` command displays license information for your {{< product-name >}} instance. -{{% show-in "enterprise" %}} -This command is only available in InfluxDB 3 Enterprise. -{{% /show-in %}} ## Usage diff --git a/content/shared/influxdb3-cli/delete/database.md b/content/shared/influxdb3-cli/delete/database.md index c6fbda211..14e1d4817 100644 --- a/content/shared/influxdb3-cli/delete/database.md +++ b/content/shared/influxdb3-cli/delete/database.md @@ -39,6 +39,8 @@ You can use the following environment variables to set command options: - [Delete a database](#delete-a-database) - [Delete a database while specifying the token inline](#delete-a-database-while-specifying-the-token-inline) +- [Hard delete a database immediately](#hard-delete-a-database-immediately) +- [Hard delete a database at a specific time](#hard-delete-a-database-at-a-specific-time) In the examples below, replace the following: diff --git a/content/shared/influxdb3-cli/update/database/_index.md b/content/shared/influxdb3-cli/update/database/_index.md index c2be9879b..a292283a4 100644 --- a/content/shared/influxdb3-cli/update/database/_index.md +++ b/content/shared/influxdb3-cli/update/database/_index.md @@ -12,7 +12,7 @@ influxdb3 update database [OPTIONS] --database ## Arguments -- **`DATABASE_NAME`**: (Required) The name of the database to update. Valid database names are alphanumeric and start with a letter or number. Dashes (-) and underscores (_) are allowed. +- **`DATABASE_NAME`**: (Required) The name of the database to update. You can also set the database name using the `INFLUXDB3_DATABASE_NAME` environment variable. From 63d31907ff0719f548af1fcf8b123dd7dd19dd12 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Thu, 26 Jun 2025 12:30:11 -0500 Subject: [PATCH 54/80] feat: add documentation planning structure and CLI sync plan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Create structured approach for managing recurring documentation tasks: Benefits: - Claude can easily reference plans via @plans/[task]/plan-[version].md - Version-controlled plans alongside code for iteration tracking - Progress tracking with execution logs for lessons learned - Reusable templates for recurring documentation patterns - Organized structure for multiple concurrent documentation tasks Usage Examples: - "Claude, execute Phase 1 of @plans/cli-docs-sync/plan-v3.2.0.md" - "Claude, create plan-v3.3.0.md based on previous plan and new release notes" - Create similar structures for other recurring documentation tasks Includes comprehensive CLI documentation sync plan for v3.2.0 with: - Analysis of existing CLI docs and v3.2.0 changes - Specific file paths for updates (retention periods, license management) - Automation strategy for future releases - Phase-based execution approach 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- plans/README.md | 38 ++++++ plans/cli-docs-sync/execution-log.md | 47 ++++++++ plans/cli-docs-sync/plan-v3.2.0.md | 165 +++++++++++++++++++++++++++ 3 files changed, 250 insertions(+) create mode 100644 plans/README.md create mode 100644 plans/cli-docs-sync/execution-log.md create mode 100644 plans/cli-docs-sync/plan-v3.2.0.md diff --git a/plans/README.md b/plans/README.md new file mode 100644 index 000000000..098c81915 --- /dev/null +++ b/plans/README.md @@ -0,0 +1,38 @@ +# Documentation Plans + +This directory contains plans for recurring documentation tasks and automation. + +## Active Plans + +### CLI Documentation Synchronization +- **Location**: `cli-docs-sync/` +- **Purpose**: Keep InfluxDB 3 CLI reference documentation in sync with actual CLI commands +- **Current Version**: `plan-v3.2.0.md` +- **Status**: Ready for execution + +### Release Notes Automation +- **Location**: `release-notes-automation/` +- **Purpose**: Automate generation of release notes from git commits +- **Scripts**: Available in `/scripts/generate-release-notes.sh` + +## Plan Structure + +Each plan directory should contain: +- `plan-[version].md` - The detailed plan +- `execution-log.md` - Track progress and notes +- `templates/` - Reusable templates and patterns + +## Usage for Claude + +When working with Claude on these plans: +1. Reference the specific plan file: `@plans/[task]/plan-[version].md` +2. Update execution logs as you progress +3. Iterate on plans by creating new versions +4. Use templates for consistency + +## Best Practices + +- Keep plans versioned by release or iteration +- Document lessons learned in execution logs +- Create reusable templates for recurring patterns +- Link plans to related scripts and automation \ No newline at end of file diff --git a/plans/cli-docs-sync/execution-log.md b/plans/cli-docs-sync/execution-log.md new file mode 100644 index 000000000..ec2cf65af --- /dev/null +++ b/plans/cli-docs-sync/execution-log.md @@ -0,0 +1,47 @@ +# CLI Documentation Sync - Execution Log + +## v3.2.0 Execution + +### Status: Planning Complete ✅ +**Date**: 2025-06-26 +**Plan**: `plan-v3.2.0.md` + +### Phase 1: Analysis (Not Started) +- [ ] Audit existing CLI documentation structure +- [ ] Extract v3.2.0 changes from release notes +- [ ] Generate current CLI help output + +### Phase 2: Update Documentation (Not Started) +#### Files to Create: +- [ ] `/content/shared/influxdb3-cli/update/_index.md` +- [ ] `/content/shared/influxdb3-cli/update/database.md` +- [ ] `/content/shared/influxdb3-cli/update/table.md` (Enterprise) +- [ ] `/content/shared/influxdb3-cli/show/license.md` (Enterprise) + +#### Files to Update: +- [ ] `/content/shared/influxdb3-cli/create/database.md` (add `--retention-period`) +- [ ] `/content/shared/influxdb3-cli/create/table.md` (add Enterprise `--retention-period`) +- [ ] `/content/shared/influxdb3-cli/show/_index.md` (add license command) +- [ ] `/content/shared/influxdb3-cli/delete/database.md` (review hard delete) +- [ ] `/content/shared/influxdb3-cli/delete/table.md` (review hard delete) + +### Phase 3: Automation (Not Started) +- [ ] Create CLI documentation sync script +- [ ] Establish documentation standards +- [ ] Plan CI/CD integration + +### Phase 4: Validation (Not Started) +- [ ] Test documented commands +- [ ] Verify completeness +- [ ] Check cross-references + +### Notes and Lessons Learned +- Release notes analysis was crucial for identifying specific CLI changes +- Having automation scripts in place (`generate-release-notes.sh`) helped identify features +- Need to distinguish between Core and Enterprise features clearly + +### Next Actions +When ready to execute: +1. Reference plan: `@plans/cli-docs-sync/plan-v3.2.0.md` +2. Start with Phase 1 analysis +3. Update this log as progress is made \ No newline at end of file diff --git a/plans/cli-docs-sync/plan-v3.2.0.md b/plans/cli-docs-sync/plan-v3.2.0.md new file mode 100644 index 000000000..725c2275b --- /dev/null +++ b/plans/cli-docs-sync/plan-v3.2.0.md @@ -0,0 +1,165 @@ +# Plan: Update InfluxDB 3 CLI Reference Documentation for v3.2.0 + +## Phase 1: Analyze Current State and Changes + +### 1. Audit existing CLI documentation structure +**Existing files in `/content/shared/influxdb3-cli/`:** +- `/content/shared/influxdb3-cli/create/_index.md` +- `/content/shared/influxdb3-cli/create/database.md` ⚠️ **NEEDS UPDATE** (add `--retention-period`) +- `/content/shared/influxdb3-cli/create/distinct_cache.md` +- `/content/shared/influxdb3-cli/create/file_index.md` +- `/content/shared/influxdb3-cli/create/last_cache.md` +- `/content/shared/influxdb3-cli/create/table.md` ⚠️ **NEEDS UPDATE** (add Enterprise `--retention-period`) +- `/content/shared/influxdb3-cli/create/token/_index.md` +- `/content/shared/influxdb3-cli/create/token/admin.md` +- `/content/shared/influxdb3-cli/create/trigger.md` +- `/content/shared/influxdb3-cli/delete/_index.md` +- `/content/shared/influxdb3-cli/delete/database.md` ⚠️ **REVIEW** (hard delete features) +- `/content/shared/influxdb3-cli/delete/distinct_cache.md` +- `/content/shared/influxdb3-cli/delete/file_index.md` +- `/content/shared/influxdb3-cli/delete/last_cache.md` +- `/content/shared/influxdb3-cli/delete/table.md` ⚠️ **REVIEW** (hard delete features) +- `/content/shared/influxdb3-cli/delete/trigger.md` +- `/content/shared/influxdb3-cli/disable/_index.md` +- `/content/shared/influxdb3-cli/disable/trigger.md` +- `/content/shared/influxdb3-cli/enable/_index.md` +- `/content/shared/influxdb3-cli/enable/trigger.md` +- `/content/shared/influxdb3-cli/query.md` +- `/content/shared/influxdb3-cli/show/_index.md` ⚠️ **NEEDS UPDATE** (add license command) +- `/content/shared/influxdb3-cli/show/databases.md` +- `/content/shared/influxdb3-cli/show/system/_index.md` +- `/content/shared/influxdb3-cli/show/system/summary.md` +- `/content/shared/influxdb3-cli/show/system/table-list.md` +- `/content/shared/influxdb3-cli/show/system/table.md` +- `/content/shared/influxdb3-cli/show/tokens.md` +- `/content/shared/influxdb3-cli/test/_index.md` +- `/content/shared/influxdb3-cli/test/schedule_plugin.md` +- `/content/shared/influxdb3-cli/test/wal_plugin.md` +- `/content/shared/influxdb3-cli/write.md` + +### 2. Extract v3.2.0 changes from release notes +**From `/content/shared/v3-core-enterprise-release-notes/_index.md`:** + +**Core v3.2.0 Features:** +- Database retention period support: `create database --retention-period`, `update database --retention-period` +- Hard delete for databases and tables +- AWS credentials auto-reload +- WAL improvements + +**Enterprise v3.2.0 Features:** +- License management: `influxdb3 show license` +- Table retention period support: `create table --retention-period`, `update table --retention-period` +- All Core features plus Enterprise-specific enhancements + +### 3. Generate current CLI help output +- Run `influxdb3 --help` for both Core and Enterprise versions +- Extract new commands, options, and help text +- Compare with existing documentation + +## Phase 2: Update Documentation Files + +### Files to Create (NEW): +- `/content/shared/influxdb3-cli/update/_index.md` 🆕 +- `/content/shared/influxdb3-cli/update/database.md` 🆕 (retention period management) +- `/content/shared/influxdb3-cli/update/table.md` 🆕 (Enterprise-only, retention period management) +- `/content/shared/influxdb3-cli/show/license.md` 🆕 (Enterprise-only) + +### Files to Update (EXISTING): +- `/content/shared/influxdb3-cli/create/database.md` ⚠️ (add `--retention-period` option) +- `/content/shared/influxdb3-cli/create/table.md` ⚠️ (add Enterprise `--retention-period` option) +- `/content/shared/influxdb3-cli/show/_index.md` ⚠️ (include license command) +- `/content/shared/influxdb3-cli/delete/database.md` ⚠️ (review hard delete options) +- `/content/shared/influxdb3-cli/delete/table.md` ⚠️ (review hard delete options) + +### Content Changes by Category: + +**1. Retention Period Documentation:** +- Update `/content/shared/influxdb3-cli/create/database.md` with `--retention-period` option +- Create `/content/shared/influxdb3-cli/update/` directory structure +- Create `/content/shared/influxdb3-cli/update/database.md` for retention management +- Update `/content/shared/influxdb3-cli/create/table.md` with Enterprise `--retention-period` option +- Create `/content/shared/influxdb3-cli/update/table.md` for Enterprise table retention management + +**2. License Management Documentation:** +- Update `/content/shared/influxdb3-cli/show/_index.md` to include license command +- Create `/content/shared/influxdb3-cli/show/license.md` for Enterprise license display + +**3. Hard Delete Documentation:** +- Review and update `/content/shared/influxdb3-cli/delete/database.md` with hard delete options +- Review and update `/content/shared/influxdb3-cli/delete/table.md` with hard delete options + +## Phase 3: Automation and Process Improvements + +### Immediate Improvements: +1. **Create CLI documentation sync script:** + ```bash + # Script: /Users/ja/Documents/github/docs-v2/scripts/sync-cli-docs.sh + # - Extract help text from influxdb3 CLI + # - Compare with existing docs + # - Generate report of differences + # - Auto-update basic command syntax + ``` + +2. **Establish documentation standards:** + - Standardize frontmatter across CLI docs + - Create templates for command documentation + - Define Enterprise vs Core content patterns using Hugo shortcodes + +### Long-term Automation Strategy: +1. **CI/CD Integration:** + - Add GitHub Actions workflow to detect CLI changes + - Auto-generate CLI help extraction on new releases + - Create pull requests for documentation updates + +2. **Release Process Integration:** + - Include CLI documentation review in release checklist + - Link release notes to specific CLI documentation updates + - Automated cross-referencing between release notes and CLI docs + +3. **Content Management Improvements:** + - Use Hugo shortcodes for Enterprise-specific content + - Implement version-aware documentation + - Create shared content templates for common CLI patterns + +## Phase 4: Validation and Testing + +### Content accuracy verification: +- Test all documented commands and options against actual CLIs +- Verify Enterprise vs Core feature availability +- Cross-reference with actual CLI behavior + +### Documentation completeness check: +- Ensure all v3.2.0 features are documented +- Verify examples and use cases +- Check internal links and cross-references + +## Suggested Recurring Process + +### Pre-release (during development): +- Monitor CLI changes in pull requests +- Update documentation as features are added +- Maintain CLI help extraction automation + +### At release (when tagging versions): +- Run automated CLI documentation sync +- Review and approve auto-generated updates +- Publish updated documentation + +### Post-release (after release): +- Validate documentation accuracy +- Gather user feedback on CLI documentation +- Plan improvements for next cycle + +## Related Documentation Paths + +### InfluxDB 3 Product Documentation (affects CLI usage examples): +- `/content/influxdb3/core/write-data/influxdb3-cli.md` +- `/content/influxdb3/enterprise/write-data/influxdb3-cli.md` +- `/content/shared/influxdb3-write-guides/influxdb3-cli.md` + +### Admin Documentation (affects retention and license features): +- `/content/influxdb3/core/admin/` +- `/content/influxdb3/enterprise/admin/` +- `/content/influxdb3/enterprise/admin/license.md` + +This plan ensures comprehensive documentation updates for v3.2.0 while establishing sustainable processes for future releases. \ No newline at end of file From 18611368ccaaa1819ab02d2d4c1bebb0bea22099 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 14:15:12 -0500 Subject: [PATCH 55/80] fix(influxdb3): Add update database and update table commands --- content/shared/v3-core-enterprise-release-notes/_index.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/content/shared/v3-core-enterprise-release-notes/_index.md b/content/shared/v3-core-enterprise-release-notes/_index.md index ae7d04ef7..fa11b397f 100644 --- a/content/shared/v3-core-enterprise-release-notes/_index.md +++ b/content/shared/v3-core-enterprise-release-notes/_index.md @@ -16,7 +16,8 @@ - **Hard delete for databases and tables**: Permanently delete databases and tables, enabling complete removal of data structures for compliance and storage management ([#26553](https://github.com/influxdata/influxdb/pull/26553)) - **AWS credentials auto-reload**: Support dynamic reloading of ephemeral AWS credentials from files, improving security and reliability when using AWS services ([#26537](https://github.com/influxdata/influxdb/pull/26537)) -- **Database retention period support**: Add retention period support for databases via CLI commands (`create database` and `update database` commands) and HTTP APIs ([#26520](https://github.com/influxdata/influxdb/pull/26520)) +- **Database retention period support**: Add retention period support for databases via CLI commands (`create database` and `update database` commands) and HTTP APIs ([#26520](https://github.com/influxdata/influxdb/pull/26520)): + - New CLI command: `update database --retention-period` - **Configurable lookback duration**: Users can specify lookback duration for PersistedFiles buffer, providing better control over query performance ([#26528](https://github.com/influxdata/influxdb/pull/26528)) - **WAL replay concurrency control**: Add concurrency limits for WAL (Write-Ahead Log) replay to improve startup performance and resource management ([#26483](https://github.com/influxdata/influxdb/pull/26483)) - **Enhanced write path**: Separate write path executor with unbounded memory for improved write performance ([#26455](https://github.com/influxdata/influxdb/pull/26455)) @@ -42,7 +43,8 @@ All Core updates are included in Enterprise. Additional Enterprise-specific feat - **License management improvements**: - New `influxdb3 show license` command to display current license information - **Table-level retention period support**: Add retention period support for individual tables in addition to database-level retention, providing granular data lifecycle management - - New CLI command: `influxdb3 create table --retention-period` + - New CLI commands: `create table --retention-period` and `update table --retention-period` + - Set or clear table-specific retention policies independent of database settings - **Compaction improvements**: - Address compactor restart issues for better reliability - Track compacted generation durations in catalog for monitoring From 8e040c8eb3bf01023a000d5ee32ad5ac50c562fe Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 14:44:28 -0500 Subject: [PATCH 56/80] fix(core,ent3): and related params are required (closes #6166) --- content/influxdb3/core/reference/cli/influxdb3/serve.md | 4 ++-- content/influxdb3/core/reference/config-options.md | 4 ++-- .../influxdb3/enterprise/reference/cli/influxdb3/serve.md | 4 ++-- content/influxdb3/enterprise/reference/config-options.md | 2 +- content/shared/influxdb3-get-started/setup.md | 5 ++++- 5 files changed, 11 insertions(+), 8 deletions(-) diff --git a/content/influxdb3/core/reference/cli/influxdb3/serve.md b/content/influxdb3/core/reference/cli/influxdb3/serve.md index a769cb652..c6001d47b 100644 --- a/content/influxdb3/core/reference/cli/influxdb3/serve.md +++ b/content/influxdb3/core/reference/cli/influxdb3/serve.md @@ -24,8 +24,8 @@ influxdb3 serve [OPTIONS] --node-id ## Required parameters - **node-id**: A unique identifier for your server instance. Must be unique for any hosts sharing the same object store. -- **object-store**: Determines where time series data is stored. _Default is `memory`_. -- **data-dir**: Path for local file storage (required when using `--object-store file`). +- **object-store**: Determines where time series data is stored. +- Other object store parameters depending on the selected `object-store` type. > [!NOTE] > `--node-id` supports alphanumeric strings with optional hyphens. diff --git a/content/influxdb3/core/reference/config-options.md b/content/influxdb3/core/reference/config-options.md index 7dfee8828..57ea60d05 100644 --- a/content/influxdb3/core/reference/config-options.md +++ b/content/influxdb3/core/reference/config-options.md @@ -144,7 +144,7 @@ influxdb3 serve Specifies which object storage to use to store Parquet files. This option supports the following values: -- `memory` _(default)_ +- `memory` - `memory-throttled` - `file` - `s3` @@ -171,7 +171,7 @@ Required when using the `file` [object store](#object-store). #### node-id Specifies the node identifier used as a prefix in all object store file paths. -This should be unique for any hosts sharing the same object store +Use a unique node identifier for each host sharing the same object store configuration--for example, the same bucket. | influxdb3 serve option | Environment variable | diff --git a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md index 2b0e70db2..90f3f93c0 100644 --- a/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md +++ b/content/influxdb3/enterprise/reference/cli/influxdb3/serve.md @@ -27,8 +27,8 @@ influxdb3 serve [OPTIONS] \ - **node-id**: A unique identifier for your server instance. Must be unique for any hosts sharing the same object store. - **cluster-id**: A unique identifier for your cluster. Must be different from any node-id in your cluster. -- **object-store**: Determines where time series data is stored. _Default is `memory`_. -- **data-dir**: Path for local file storage (required when using `--object-store file`). +- **object-store**: Determines where time series data is stored. +- Other object store parameters depending on the selected `object-store` type. > [!NOTE] > `--node-id` and `--cluster-id` support alphanumeric strings with optional hyphens. diff --git a/content/influxdb3/enterprise/reference/config-options.md b/content/influxdb3/enterprise/reference/config-options.md index 77a0bab5d..e1d4ef469 100644 --- a/content/influxdb3/enterprise/reference/config-options.md +++ b/content/influxdb3/enterprise/reference/config-options.md @@ -263,7 +263,7 @@ export DATABASE_NODE=node0 && influxdb3 serve \ Specifies which object storage to use to store Parquet files. This option supports the following values: -- `memory` _(default)_: Effectively no object persistence +- `memory`: Effectively no object persistence - `memory-throttled`: Like `memory` but with latency and throughput that somewhat resembles a cloud object store - `file`: Stores objects in the local filesystem (must also set `--data-dir`) - `s3`: Amazon S3 (must also set `--bucket`, `--aws-access-key-id`, `--aws-secret-access-key`, and possibly `--aws-default-region`) diff --git a/content/shared/influxdb3-get-started/setup.md b/content/shared/influxdb3-get-started/setup.md index 4ef284643..e8a3aa83f 100644 --- a/content/shared/influxdb3-get-started/setup.md +++ b/content/shared/influxdb3-get-started/setup.md @@ -44,7 +44,7 @@ Provide the following: - `--object-store`: Specifies the type of object store to use. InfluxDB supports the following: - - `file` _(default)_: local file system + - `file`: local file system - `memory`: in memory _(no object persistence)_ - `memory-throttled`: like `memory` but with latency and throughput that somewhat resembles a cloud-based object store @@ -52,6 +52,9 @@ Provide the following: - `google`: Google Cloud Storage - `azure`: Azure Blob Storage +- Other object store parameters depending on the selected `object-store` type. + For example, if you use `s3`, you must provide the bucket name and credentials. + > [!Note] > #### Diskless architecture > From cf8fab980221c9fc52a44d99e313d0a252b54fe7 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 14:50:19 -0500 Subject: [PATCH 57/80] fix(core): broken link --- content/influxdb3/core/reference/config-options.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/influxdb3/core/reference/config-options.md b/content/influxdb3/core/reference/config-options.md index 57ea60d05..7e3f92bfc 100644 --- a/content/influxdb3/core/reference/config-options.md +++ b/content/influxdb3/core/reference/config-options.md @@ -186,7 +186,7 @@ Limits the number of Parquet files a query can access. **Default:** `432` -With the default `432` setting and the default [`gen1-duration`](#`gen1-duration`) +With the default `432` setting and the default [`gen1-duration`](#gen1-duration) setting of 10 minutes, queries can access up to a 72 hours of data, but potentially less depending on whether all data for a given 10 minute block of time was ingested during the same period. From 3d1ef2bfc3f8e2ce394a8b4fc488048e35396d04 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Fri, 27 Jun 2025 15:26:28 -0500 Subject: [PATCH 58/80] feat(helper-scripts): Enhance release notes generation with multi-repo and API change detection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add support for multiple repositories (primary + additional repos) - Automatically fetch latest commits from all repositories by default - Add --no-fetch and --pull command-line options for different workflows - Detect and categorize REST API changes across v1, v2, v3 endpoints - Include specific API endpoint analysis (/write, /query, /ping, /health, /metrics) - Add repository tagging to commit categorization for multi-repo visibility - Improve error handling with fallback options for git operations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- helper-scripts/generate-release-notes.sh | 325 +++++++++++++++++++---- 1 file changed, 272 insertions(+), 53 deletions(-) diff --git a/helper-scripts/generate-release-notes.sh b/helper-scripts/generate-release-notes.sh index 58f34212e..d47ae5592 100755 --- a/helper-scripts/generate-release-notes.sh +++ b/helper-scripts/generate-release-notes.sh @@ -1,14 +1,55 @@ #!/bin/bash # Script to generate release notes for InfluxDB v3.x releases -# Usage: ./generate-release-notes.sh +# Usage: ./generate-release-notes.sh [--no-fetch] [--pull] [additional_repo_paths...] +# +# Options: +# --no-fetch Skip fetching latest commits from remote +# --pull Pull latest changes (implies fetch) - use with caution as it may change your working directory +# +# Example: ./generate-release-notes.sh v3.1.0 v3.2.0 /path/to/influxdb /path/to/influxdb_pro /path/to/influxdb_iox +# Example: ./generate-release-notes.sh --no-fetch v3.1.0 v3.2.0 /path/to/influxdb +# Example: ./generate-release-notes.sh --pull v3.1.0 v3.2.0 /path/to/influxdb /path/to/influxdb_pro set -e -# Default values -REPO_PATH="${3:-/Users/ja/Documents/github/influxdb}" +# Parse command line options +FETCH_COMMITS=true +PULL_COMMITS=false + +while [[ $# -gt 0 ]]; do + case $1 in + --no-fetch) + FETCH_COMMITS=false + shift + ;; + --pull) + PULL_COMMITS=true + FETCH_COMMITS=true + shift + ;; + -*) + echo "Unknown option $1" + exit 1 + ;; + *) + break + ;; + esac +done + +# Parse remaining arguments FROM_VERSION="${1:-v3.1.0}" TO_VERSION="${2:-v3.2.0}" +PRIMARY_REPO="${3:-/Users/ja/Documents/github/influxdb}" + +# Collect additional repositories (all arguments after the third) +ADDITIONAL_REPOS=() +shift 3 2>/dev/null || true +while [ $# -gt 0 ]; do + ADDITIONAL_REPOS+=("$1") + shift +done # Colors for output RED='\033[0;31m' @@ -18,7 +59,13 @@ BLUE='\033[0;34m' NC='\033[0m' # No Color echo -e "${BLUE}Generating release notes for ${TO_VERSION}${NC}" -echo -e "Repository: ${REPO_PATH}" +echo -e "Primary Repository: ${PRIMARY_REPO}" +if [ ${#ADDITIONAL_REPOS[@]} -gt 0 ]; then + echo -e "Additional Repositories:" + for repo in "${ADDITIONAL_REPOS[@]}"; do + echo -e " - ${repo}" + done +fi echo -e "From: ${FROM_VERSION} To: ${TO_VERSION}\n" # Function to extract PR number from commit message @@ -26,28 +73,156 @@ extract_pr_number() { echo "$1" | grep -oE '#[0-9]+' | head -1 | sed 's/#//' } +# Function to get commits from a repository +get_commits_from_repo() { + local repo_path="$1" + local pattern="$2" + local format="${3:-%h %s}" + + if [ -d "$repo_path" ]; then + git -C "$repo_path" log --format="$format" "${FROM_VERSION}..${TO_VERSION}" 2>/dev/null | grep -E "$pattern" || true + fi +} + +# Function to analyze API-related commits +analyze_api_changes() { + local repo_path="$1" + local repo_name="$2" + + if [ ! -d "$repo_path" ]; then + return + fi + + # Look for API-related file changes + local api_files=$(git -C "$repo_path" diff --name-only "${FROM_VERSION}..${TO_VERSION}" 2>/dev/null | grep -E "(api|handler|endpoint|route)" | head -10 || true) + + # Look for specific API endpoint patterns in commit messages and diffs + local api_commits=$(git -C "$repo_path" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" 2>/dev/null | \ + grep -iE "(api|endpoint|/write|/query|/ping|/health|/metrics|v1|v2|v3)" || true) + + if [ -n "$api_files" ] || [ -n "$api_commits" ]; then + echo " Repository: $repo_name" + if [ -n "$api_files" ]; then + echo " Modified API files:" + echo "$api_files" | while read -r file; do + echo " - $file" + done + fi + if [ -n "$api_commits" ]; then + echo " API-related commits:" + echo "$api_commits" | while read -r commit; do + echo " - $commit" + done + fi + echo + fi +} + # Get the release date -RELEASE_DATE=$(git -C "$REPO_PATH" log -1 --format=%ai "$TO_VERSION" | cut -d' ' -f1) +RELEASE_DATE=$(git -C "$PRIMARY_REPO" log -1 --format=%ai "$TO_VERSION" | cut -d' ' -f1) echo -e "${GREEN}Release Date: ${RELEASE_DATE}${NC}\n" -# Collect commits by category -echo -e "${YELLOW}Analyzing commits...${NC}" +# Create array of all repositories +ALL_REPOS=("$PRIMARY_REPO") +for repo in "${ADDITIONAL_REPOS[@]}"; do + ALL_REPOS+=("$repo") +done -# Features -echo -e "\n${GREEN}Features:${NC}" -FEATURES=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ feat:" | sed 's/^[a-f0-9]* feat: //') +# Fetch latest commits from all repositories (if enabled) +if [ "$FETCH_COMMITS" = true ]; then + if [ "$PULL_COMMITS" = true ]; then + echo -e "${YELLOW}Pulling latest changes from all repositories...${NC}" + echo -e "${RED}Warning: This will modify your working directories!${NC}" + else + echo -e "${YELLOW}Fetching latest commits from all repositories...${NC}" + fi + + for repo in "${ALL_REPOS[@]}"; do + if [ -d "$repo" ]; then + repo_name=$(basename "$repo") + + if [ "$PULL_COMMITS" = true ]; then + echo -e " Pulling changes in $repo_name..." + if git -C "$repo" pull origin 2>/dev/null; then + echo -e " ${GREEN}✓${NC} Successfully pulled changes in $repo_name" + else + echo -e " ${RED}✗${NC} Failed to pull changes in $repo_name (trying fetch only)" + if git -C "$repo" fetch origin 2>/dev/null; then + echo -e " ${GREEN}✓${NC} Successfully fetched from $repo_name" + else + echo -e " ${RED}✗${NC} Failed to fetch from $repo_name (continuing with local commits)" + fi + fi + else + echo -e " Fetching from $repo_name..." + if git -C "$repo" fetch origin 2>/dev/null; then + echo -e " ${GREEN}✓${NC} Successfully fetched from $repo_name" + else + echo -e " ${RED}✗${NC} Failed to fetch from $repo_name (continuing with local commits)" + fi + fi + else + echo -e " ${RED}✗${NC} Repository not found: $repo" + fi + done +else + echo -e "${YELLOW}Skipping fetch (using local commits only)${NC}" +fi -# Fixes -echo -e "\n${GREEN}Bug Fixes:${NC}" -FIXES=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ fix:" | sed 's/^[a-f0-9]* fix: //') +# Collect commits by category from all repositories +echo -e "\n${YELLOW}Analyzing commits across all repositories...${NC}" -# Breaking changes -echo -e "\n${GREEN}Breaking Changes:${NC}" -BREAKING=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -iE "^[a-f0-9]+ .*(BREAKING|breaking change)" | sed 's/^[a-f0-9]* //') +# Initialize variables +FEATURES="" +FIXES="" +BREAKING="" +PERF="" +API_CHANGES="" -# Performance improvements -echo -e "\n${GREEN}Performance:${NC}" -PERF=$(git -C "$REPO_PATH" log --format="%h %s" "${FROM_VERSION}..${TO_VERSION}" | grep -E "^[a-f0-9]+ perf:" | sed 's/^[a-f0-9]* perf: //') +# Collect commits from all repositories +for repo in "${ALL_REPOS[@]}"; do + if [ -d "$repo" ]; then + repo_name=$(basename "$repo") + echo -e " Analyzing $repo_name..." + + # Features + repo_features=$(get_commits_from_repo "$repo" "^[a-f0-9]+ feat:" | sed "s/^[a-f0-9]* feat: /- [$repo_name] /") + if [ -n "$repo_features" ]; then + FEATURES="$FEATURES$repo_features"$'\n' + fi + + # Fixes + repo_fixes=$(get_commits_from_repo "$repo" "^[a-f0-9]+ fix:" | sed "s/^[a-f0-9]* fix: /- [$repo_name] /") + if [ -n "$repo_fixes" ]; then + FIXES="$FIXES$repo_fixes"$'\n' + fi + + # Breaking changes + repo_breaking=$(get_commits_from_repo "$repo" "^[a-f0-9]+ .*(BREAKING|breaking change)" | sed "s/^[a-f0-9]* /- [$repo_name] /") + if [ -n "$repo_breaking" ]; then + BREAKING="$BREAKING$repo_breaking"$'\n' + fi + + # Performance improvements + repo_perf=$(get_commits_from_repo "$repo" "^[a-f0-9]+ perf:" | sed "s/^[a-f0-9]* perf: /- [$repo_name] /") + if [ -n "$repo_perf" ]; then + PERF="$PERF$repo_perf"$'\n' + fi + + # API changes + repo_api=$(get_commits_from_repo "$repo" "(api|endpoint|/write|/query|/ping|/health|/metrics|v1|v2|v3)" | sed "s/^[a-f0-9]* /- [$repo_name] /") + if [ -n "$repo_api" ]; then + API_CHANGES="$API_CHANGES$repo_api"$'\n' + fi + fi +done + +# Analyze API changes in detail +echo -e "\n${YELLOW}Analyzing HTTP API changes...${NC}" +for repo in "${ALL_REPOS[@]}"; do + repo_name=$(basename "$repo") + analyze_api_changes "$repo" "$repo_name" +done # Generate markdown output OUTPUT_FILE="release-notes-${TO_VERSION}.md" @@ -60,16 +235,18 @@ EOF # Add features if [ -n "$FEATURES" ]; then - while IFS= read -r line; do - PR=$(extract_pr_number "$line") - # Clean up the commit message - CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') - if [ -n "$PR" ]; then - echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" - else - echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + echo "$FEATURES" | while IFS= read -r line; do + if [ -n "$line" ]; then + PR=$(extract_pr_number "$line") + # Clean up the commit message + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "$CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "$CLEAN_LINE" >> "$OUTPUT_FILE" + fi fi - done <<< "$FEATURES" + done else echo "- No new features in this release" >> "$OUTPUT_FILE" fi @@ -82,15 +259,17 @@ cat >> "$OUTPUT_FILE" << EOF EOF if [ -n "$FIXES" ]; then - while IFS= read -r line; do - PR=$(extract_pr_number "$line") - CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') - if [ -n "$PR" ]; then - echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" - else - echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + echo "$FIXES" | while IFS= read -r line; do + if [ -n "$line" ]; then + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "$CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "$CLEAN_LINE" >> "$OUTPUT_FILE" + fi fi - done <<< "$FIXES" + done else echo "- No bug fixes in this release" >> "$OUTPUT_FILE" fi @@ -102,15 +281,17 @@ if [ -n "$BREAKING" ]; then ### Breaking Changes EOF - while IFS= read -r line; do - PR=$(extract_pr_number "$line") - CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') - if [ -n "$PR" ]; then - echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" - else - echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + echo "$BREAKING" | while IFS= read -r line; do + if [ -n "$line" ]; then + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "$CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "$CLEAN_LINE" >> "$OUTPUT_FILE" + fi fi - done <<< "$BREAKING" + done fi # Add performance improvements if any @@ -120,16 +301,54 @@ if [ -n "$PERF" ]; then ### Performance Improvements EOF - while IFS= read -r line; do - PR=$(extract_pr_number "$line") - CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') - if [ -n "$PR" ]; then - echo "- $CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" - else - echo "- $CLEAN_LINE" >> "$OUTPUT_FILE" + echo "$PERF" | while IFS= read -r line; do + if [ -n "$line" ]; then + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "$CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "$CLEAN_LINE" >> "$OUTPUT_FILE" + fi fi - done <<< "$PERF" + done fi +# Add HTTP API changes if any +if [ -n "$API_CHANGES" ]; then + cat >> "$OUTPUT_FILE" << EOF + +### HTTP API Changes + +EOF + echo "$API_CHANGES" | while IFS= read -r line; do + if [ -n "$line" ]; then + PR=$(extract_pr_number "$line") + CLEAN_LINE=$(echo "$line" | sed -E 's/ \(#[0-9]+\)$//') + if [ -n "$PR" ]; then + echo "$CLEAN_LINE ([#$PR](https://github.com/influxdata/influxdb/pull/$PR))" >> "$OUTPUT_FILE" + else + echo "$CLEAN_LINE" >> "$OUTPUT_FILE" + fi + fi + done +fi + +# Add API analysis summary +cat >> "$OUTPUT_FILE" << EOF + +### API Analysis Summary + +The following endpoints may have been affected in this release: +- v1 API endpoints: \`/write\`, \`/query\`, \`/ping\` +- v2 API endpoints: \`/api/v2/write\`, \`/api/v2/query\` +- v3 API endpoints: \`/api/v3/*\` +- System endpoints: \`/health\`, \`/metrics\` + +Please review the commit details above and consult the API documentation for specific changes. + +EOF + echo -e "\n${GREEN}Release notes generated in: ${OUTPUT_FILE}${NC}" -echo -e "${YELLOW}Please review and edit the generated notes before adding to documentation.${NC}" \ No newline at end of file +echo -e "${YELLOW}Please review and edit the generated notes before adding to documentation.${NC}" +echo -e "${BLUE}API changes have been automatically detected and included.${NC}" \ No newline at end of file From 0f0bb86acaf698e65da5630a9a6ec223bb73fda6 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 27 Jun 2025 19:40:41 -0600 Subject: [PATCH 59/80] Manage InfluxDB 3 plugins with Explorer (#6169) * add plugin management docs * cleanup md lint * update explorer plugin frontmatter * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Jason Stirnaman --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jason Stirnaman --- .../explorer/manage-plugins/_index.md | 92 +++++++++++++++++++ .../explorer/manage-plugins/plugin-library.md | 74 +++++++++++++++ 2 files changed, 166 insertions(+) create mode 100644 content/influxdb3/explorer/manage-plugins/_index.md create mode 100644 content/influxdb3/explorer/manage-plugins/plugin-library.md diff --git a/content/influxdb3/explorer/manage-plugins/_index.md b/content/influxdb3/explorer/manage-plugins/_index.md new file mode 100644 index 000000000..afffa12e6 --- /dev/null +++ b/content/influxdb3/explorer/manage-plugins/_index.md @@ -0,0 +1,92 @@ +--- +title: Manage InfluxDB 3 plugins with InfluxDB 3 Explorer +description: > + Use InfluxDB 3 Explorer to manage InfluxDB 3 processing engine plugins. +menu: + influxdb3_explorer: + name: Manage InfluxDB plugins +weight: 5 +cascade: + related: + - /influxdb3/core/plugins/, InfluxDB 3 Core Processing engine plugins + - /influxdb3/enterprise/plugins/, InfluxDB 3 Enterprise Processing engine plugins +cascade: + prepend: | + > [!Warning] + > #### {{% product-name %}} plugin management is currently in beta + > + > The {{% product-name %}} plugin management tools and the Plugin Library are + > currently in **beta**. +--- + +{{% product-name %}} lets you manage plugins in your InfluxDB 3 instance or cluster. +[InfluxDB 3 Processing engine plugins](/influxdb3/enterprise/plugins/) let you +extend your database with custom Python code. +Use {{% product-name %}} to manage plugins in your InfluxDB 3 instance and +install prebuilt plugins from the _Plugin Library_. + +Each plugin can define one or more _triggers_—rules that +specify when the plugin should execute. Triggers are typically based on +conditions such as data arriving in a specific table or matching certain +criteria. + +- **Data writes** - Process and transform data as it enters the database +- **Scheduled events** - Run code at defined intervals or specific times +- **HTTP requests** - Expose custom API endpoints that execute your code + +When a trigger condition is met, InfluxDB 3 automatically runs the associated +plugin code. This enables real-time data processing, enrichment, or alerting +without manual intervention. +Use the InfluxDB 3 Explorer UI to enable, disable, or configure triggers for each plugin. + + + +- [View installed plugins](#view-installed-plugins) + - [Filter installed plugins](#filter-installed-plugins) +- [Enable or disable a plugin](#enable-or-disable-a-plugin) +- [ View Plugin Logs](#-view-plugin-logs) +- [Delete a plugin](#delete-a-plugin) +- [Use the Plugin Library](#use-the-plugin-library) + + + +## View installed plugins + +To view plugins installed in your InfluxDB 3 server, navigate to +**Manage Plugins** > **Overview**. + +1. Navigate to the **Manage Plugins** > **Overview** section in the left sidebar. +2. All installed plugins are listed under the _All Plugins_ tab. + +### Filter installed plugins + +To filter installed plugins by state, use the top tabs to filter by: + +- **All Plugins** +- **Running** +- **Stopped** +- **Errors** + +You can also use the **search bar** to filter by plugin name. + +## Enable or disable a plugin + +1. In the plugin list, locate the desired plugin. + + - **If the plugin is currently running (enabled)**, click {{< icon "pause" >}} to disable the plugin. + - **If the plugin is currently stopped (disabled)**, click the {{< icon "play" >}} button to enable the plugin. + +## View plugin logs + +1. In the plugin list, locate the desired plugin. +2. Click **Logs** to view the most recent logs output by the plugin. +3. To view more log entries, click **View More**. +4. To export the logs, click **Export**. + +## Delete a plugin + +1. In the plugin list, locate the desired plugin. +2. Click the **{{< icon "trash" >}} button** to delete the plugin. +3. Confirm that you want to delete the plugin. + +{{< children hlevel="h2" >}} diff --git a/content/influxdb3/explorer/manage-plugins/plugin-library.md b/content/influxdb3/explorer/manage-plugins/plugin-library.md new file mode 100644 index 000000000..e7894a69e --- /dev/null +++ b/content/influxdb3/explorer/manage-plugins/plugin-library.md @@ -0,0 +1,74 @@ +--- +title: Use the Plugin Library +description: > + Use InfluxDB 3 Explorer Plugin Library to view and install pre-built InfluxDB + 3 processing engine plugins. +menu: + influxdb3_explorer: + name: Plugin Library + parent: Manage InfluxDB plugins +weight: 101 +--- + +The _InfluxDB Plugin Library_ is a collection of pre-built InfluxDB 3 plugins that +you can install in your InfluxDB 3 server. To view the Plugin library, navigate +to **Manage Plugins** > **Plugin Library** in the left sidebar. + +## Search the Plugin Library + +To search for plugins in the Plugin library, submit a search term in the search bar. + +## Install a plugin + +1. In the **Plugin Library**, locate the plugin you want to install. +2. Click on the plugin card to open its details. +3. To install a plugin from {{% product-name %}} select **Install Plugin**: +4. Provide the following: + + - **Database**: The name of the InfluxDB 3 database to associate the + plugin with. + - **Trigger Name**: A unique name for the plugin and trigger combination. + - **Trigger Type**: The trigger type. What trigger types are available + depend on the plugin. + + _For more information about InfluxDB 3 plugin triggers, see + [Understand trigger types](/influxdb3/enterprise/plugins/#understand-trigger-types)._ + + Depending on the selected trigger type, provide the following: + + - **Data Writes (All Tables)**: _no additional configuration options_. + - **Data Writes (Single Table)**: + - **Table Name**: The name of the table that, when written to, triggers the plugin to run. + - **Schedule**: + - **Frequency**: When to run the plugin using one of the following patterns: + - `every:`: Run at specified intervals--for example: + `every:15m`. + - `cron:`: Run on a cron schedule--for + example: `cron:0 */12 * * *`. + - **HTTP Endpoint**: + - **API Endpoint**: The API endpoint name to use to trigger the plugin--for + example: `downsample`. To trigger the plugin, you would then send + a request to the `/api/v3/engine/downsample` endpoint of your InfluxDB + server to trigger the plugin. + + - **Advanced Settings** + - **Run Asynchronously**: Execute the plugin asynchronously and do not + wait for a response. + - **Error Behavior**: Specify the action you want the plugin to take + when it encounters an error: + - **Log**: Log the error to your InfluxDB server's logs. + - **Retry**: Retry the plugin execution. + - **Disable**: Disable the plugin. + + - **Arguments**: Specific arguments to pass to the Plugin. + Plugins can have both required and optional arguments. + +5. Click **Deploy** to install the plugin. + +### Other plugin installation options + +{{% product-name %}} also lets you do the following: + +- **Download Code**: Download the plugin code to view it or modify it for your own use. +- **Copy Install Command**: Copy the `influxdb3` CLI command you can use to + manually install the plugin on your InfluxDB 3 server. From 93076b39c61cf082884de8ad270065bc1a967a59 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Sat, 28 Jun 2025 12:53:42 -0600 Subject: [PATCH 60/80] Update and add explorer environment variable information (#6170) * update and add explorer env var info * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/influxdb3/explorer/install.md | 103 ++++++++++++++++++++++++-- 1 file changed, 96 insertions(+), 7 deletions(-) diff --git a/content/influxdb3/explorer/install.md b/content/influxdb3/explorer/install.md index a1858d2a2..e1aea9d3f 100644 --- a/content/influxdb3/explorer/install.md +++ b/content/influxdb3/explorer/install.md @@ -73,7 +73,11 @@ Use [Docker](https://docker.com) to install and run **InfluxDB 3 Explorer**. - `$(pwd)/db:/db:rw` - `$(pwd)/config:/app-root/config:ro` - `$(pwd)/ssl:/etc/nginx/ssl:ro` - - Any of the available [environment variables](#environment-variables) + - Any of the available [environment variables](#environment-variables) + + > [!Note] + > To persist sessions across container restarts, see the detailed instructions + > on setting the [`SESSION_SECRET_KEY` environment variable](#session_secret_key). ```bash docker run --detach \ @@ -114,6 +118,13 @@ To enable TLS/SSL, mount valid certificate and key files into the container: The nginx web server automatically uses certificate files when they are present in the mounted path. +> [!Note] +> You can use a custom location for certificate and key files. +> Use the [`SSL_CERT_PATH`](#ssl_cert_path) and [`SSL_KEY_PATH`](#ssl_key_path) +> environment variables to identify the custom location. +> Also update the SSL directory volume mount path inside the container. + + --- ## Pre-configure InfluxDB connection settings @@ -191,11 +202,91 @@ If `--mode` is not set, the container defaults to query mode. Use the following environment variables to customize {{% product-name %}} settings in your container. -| Variable | Description | Default | -|----------------|--------------------------------------------------|----------------------| -| `DATABASE_URL` | Path to SQLite DB inside container | `/db/sqlite.db` | +- [DATABASE_URL](#database_url) +- [SESSION_SECRET_KEY](#session_secret_key) +- [SSL_CERT_PATH](#ssl_cert_path) +- [SSL_KEY_PATH](#ssl_key_path) ---- +### DATABASE_URL + +Path to SQLite DB inside container. The default is `/db/sqlite.db`. + +{{< expand-wrapper >}} +{{% expand "View `DATABASE_URL` example" %}} + + +```bash +docker run --detach \ + # ... + --volume $(pwd)/db:/custom/db-path:rw \ + --env DATABASE_URL=/custom/db-path/sqlite.db \ + quay.io/influxdb/influxdb3-explorer:latest +``` +{{% /expand %}} +{{< /expand-wrapper >}} + +### SESSION_SECRET_KEY + +Specifies the secret key for session management. If none is provided, Explorer +uses a random 32-byte hex string as the session secret key. + +{{< expand-wrapper >}} +{{% expand "View `SESSION_SECRET_KEY` example" %}} + + +```bash +docker run --detach \ + # ... + --env SESSION_SECRET_KEY=xxX0Xx000xX0XxxxX0Xx000xX0XxX00x \ + quay.io/influxdb/influxdb3-explorer:latest +``` +{{% /expand %}} +{{< /expand-wrapper >}} + +> [!Important] +> #### Always set SESSION_SECRET_KEY in production +> +> When you restart the container, {{% product-name %}} generates a new key if +> not explicitly set. For production use cases, always set the `SESSION_SECRET_KEY` +> environment variable to persist sessions across restarts. + +### SSL_CERT_PATH + +Defines the path to the SSL certificate file inside the container. +Default is `/etc/nginx/ssl/cert.pem`. + +{{< expand-wrapper >}} +{{% expand "View `SSL_CERT_PATH` example" %}} + + +```bash +docker run --detach \ + # ... + --volume $(pwd)/ssl:/custom/ssl:ro \ + --env SSL_CERT_PATH=/custom/ssl/cert.pem \ + quay.io/influxdb/influxdb3-explorer:latest +``` +{{% /expand %}} +{{< /expand-wrapper >}} + +### SSL_KEY_PATH + +Defines the path to the SSL private key file inside the container. +Default is `/etc/nginx/ssl/key.pem`. + +{{< expand-wrapper >}} +{{% expand "View `SSL_KEY_PATH` example" %}} + + +```bash +docker run --detach \ + # ... + --volume $(pwd)/ssl:/custom/ssl:ro \ + --env SSL_KEY_PATH=/custom/ssl/key.pem \ + quay.io/influxdb/influxdb3-explorer:latest +``` +{{% /expand %}} +{{< /expand-wrapper >}} ## Volume Reference @@ -205,8 +296,6 @@ in your container. | `/app-root/config` | JSON config for defaults | `./config` | | `/etc/nginx/ssl` | SSL certs for HTTPS | `./ssl` | ---- - ## Exposed Ports | Port | Protocol | Purpose | From 9588022cebdf701826b6b62a3a8b13bebc6d7b5f Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 08:29:15 -0500 Subject: [PATCH 61/80] fix(ent3): Update Ent3 API reference request trigger_specification syntax to string request: --- api-docs/influxdb3/enterprise/v3/ref.yml | 208 +++++++++++++++++++++-- 1 file changed, 193 insertions(+), 15 deletions(-) diff --git a/api-docs/influxdb3/enterprise/v3/ref.yml b/api-docs/influxdb3/enterprise/v3/ref.yml index 9f1a7fca1..92a65905a 100644 --- a/api-docs/influxdb3/enterprise/v3/ref.yml +++ b/api-docs/influxdb3/enterprise/v3/ref.yml @@ -922,9 +922,25 @@ paths: summary: Delete a database description: | Soft deletes a database. - The database is scheduled for deletion and unavailable for querying. + The database is scheduled for deletion and unavailable for querying. + Use the `hard_delete_at` parameter to schedule a hard deletion. parameters: - $ref: '#/components/parameters/db' + - name: hard_delete_at + in: query + required: false + schema: + type: string + format: date-time + description: | + Schedule the database for hard deletion at the specified time. + If not provided, the database will be soft deleted. + Use ISO 8601 date-time format (for example, "2025-12-31T23:59:59Z"). + + #### Deleting a database cannot be undone + + Deleting a database is a destructive action. + Once a database is deleted, data stored in that database cannot be recovered. responses: '200': description: Success. Database deleted. @@ -961,7 +977,13 @@ paths: summary: Delete a table description: | Soft deletes a table. - The table is scheduled for deletion and unavailable for querying. + The table is scheduled for deletion and unavailable for querying. + Use the `hard_delete_at` parameter to schedule a hard deletion. + + #### Deleting a table cannot be undone + + Deleting a table is a destructive action. + Once a table is deleted, data stored in that table cannot be recovered. parameters: - $ref: '#/components/parameters/db' - name: table @@ -969,6 +991,16 @@ paths: required: true schema: type: string + - name: hard_delete_at + in: query + required: false + schema: + type: string + format: date-time + description: | + Schedule the table for hard deletion at the specified time. + If not provided, the table will be soft deleted. + Use ISO 8601 format (for example, "2025-12-31T23:59:59Z"). responses: '200': description: Success (no content). The table has been deleted. @@ -978,6 +1010,77 @@ paths: description: Table not found. tags: - Table + patch: + operationId: PatchConfigureTable + summary: Update a table + description: | + Updates table configuration, such as retention period. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateTableRequest' + responses: + '200': + description: Success. The table has been updated. + '400': + description: Bad request. + '401': + $ref: '#/components/responses/Unauthorized' + '404': + description: Table not found. + tags: + - Table + /api/v3/configure/database/{db}: + patch: + operationId: PatchConfigureDatabase + summary: Update a database + description: | + Updates database configuration, such as retention period. + parameters: + - name: db + in: path + required: true + schema: + type: string + description: The name of the database to update. + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateDatabaseRequest' + responses: + '200': + description: Success. The database has been updated. + '400': + description: Bad request. + '401': + $ref: '#/components/responses/Unauthorized' + '404': + description: Database not found. + tags: + - Database + /api/v3/show/license: + get: + operationId: GetShowLicense + summary: Show license information + description: | + Retrieves information about the current InfluxDB 3 Enterprise license. + responses: + '200': + description: Success. The response body contains license information. + content: + application/json: + schema: + $ref: '#/components/schemas/LicenseResponse' + '401': + $ref: '#/components/responses/Unauthorized' + '403': + description: Access denied. + tags: + - Server information /api/v3/configure/distinct_cache: post: operationId: PostConfigureDistinctCache @@ -1136,7 +1239,7 @@ paths: db: mydb plugin_filename: request.py trigger_name: hello_world_trigger - trigger_specification: path:hello-world + trigger_specification: "request:hello-world" cron_friday_afternoon: summary: Cron trigger for Friday afternoons description: | @@ -1365,16 +1468,16 @@ paths: description: Plugin not enabled. tags: - Processing engine - /api/v3/engine/{plugin_path}: + /api/v3/engine/{request_path}: parameters: - - name: plugin_path + - name: request_path description: | - The path configured in the request trigger specification "path:"` for the plugin. + The path configured in the request trigger specification "request:"` for the plugin. For example, if you define a trigger with the following: ```json - trigger-spec: "path:hello-world" + trigger_specification: "request:hello-world" ``` then, the HTTP API exposes the following plugin endpoint: @@ -1390,7 +1493,7 @@ paths: operationId: GetProcessingEnginePluginRequest summary: On Request processing engine plugin request description: | - Executes the On Request processing engine plugin specified in ``. + Executes the On Request processing engine plugin specified in the trigger's `plugin_filename`. The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin. An On Request plugin implements the following signature: @@ -1417,7 +1520,7 @@ paths: operationId: PostProcessingEnginePluginRequest summary: On Request processing engine plugin request description: | - Executes the On Request processing engine plugin specified in ``. + Executes the On Request processing engine plugin specified in the trigger's `plugin_filename`. The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin. An On Request plugin implements the following signature: @@ -1812,6 +1915,16 @@ components: properties: db: type: string + pattern: '^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$|^[a-zA-Z0-9]$' + description: |- + The database name. Database names cannot contain underscores (_). + Names must start and end with alphanumeric characters and can contain hyphens (-) in the middle. + retention_period: + type: string + description: |- + The retention period for the database. Specifies how long data should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "7d" required: - db CreateTableRequest: @@ -1843,6 +1956,12 @@ components: required: - name - type + retention_period: + type: string + description: |- + The retention period for the table. Specifies how long data in this table should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "30d" required: - db - table @@ -1929,7 +2048,7 @@ components: `schedule.py` or `endpoints/report.py`. The path can be absolute or relative to the `--plugins-dir` directory configured when starting InfluxDB 3. - The plugin file must implement the trigger interface associated with the trigger's specification (`trigger_spec`). + The plugin file must implement the trigger interface associated with the trigger's specification. trigger_name: type: string trigger_specification: @@ -1972,12 +2091,12 @@ components: - `table:TABLE_NAME` - Triggers on write events to a specific table ### On-demand triggers - Format: `path:ENDPOINT_NAME` + Format: `request:REQUEST_PATH` - Creates an HTTP endpoint `/api/v3/engine/ENDPOINT_NAME` for manual invocation: - - `path:hello-world` - Creates endpoint `/api/v3/engine/hello-world` - - `path:data-export` - Creates endpoint `/api/v3/engine/data-export` - pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|path:[a-zA-Z0-9_-]+)$ + Creates an HTTP endpoint `/api/v3/engine/REQUEST_PATH` for manual invocation: + - `request:hello-world` - Creates endpoint `/api/v3/engine/hello-world` + - `request:data-export` - Creates endpoint `/api/v3/engine/data-export` + pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|request:[a-zA-Z0-9_-]+)$ example: cron:0 0 6 * * 1-5 trigger_arguments: type: object @@ -2074,6 +2193,65 @@ components: - m - h type: string + UpdateDatabaseRequest: + type: object + properties: + retention_period: + type: string + description: | + The retention period for the database. Specifies how long data should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "7d" + description: Request schema for updating database configuration. + UpdateTableRequest: + type: object + properties: + db: + type: string + description: The name of the database containing the table. + table: + type: string + description: The name of the table to update. + retention_period: + type: string + description: | + The retention period for the table. Specifies how long data in this table should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "30d" + required: + - db + - table + description: Request schema for updating table configuration. + LicenseResponse: + type: object + properties: + license_type: + type: string + description: The type of license (for example, "enterprise", "trial"). + example: "enterprise" + expires_at: + type: string + format: date-time + description: The expiration date of the license in ISO 8601 format. + example: "2025-12-31T23:59:59Z" + features: + type: array + items: + type: string + description: List of features enabled by the license. + example: + - "clustering" + - "processing_engine" + - "advanced_auth" + status: + type: string + enum: + - "active" + - "expired" + - "invalid" + description: The current status of the license. + example: "active" + description: Response schema for license information. responses: Unauthorized: description: Unauthorized access. From 5a44f6c10eb2fd9348ba25a4a869952eadfe4ae3 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 08:59:47 -0500 Subject: [PATCH 62/80] fix(influxdb3): Update request trigger specification format for Enterprise MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format diverges from InfluxDB 3 Core. Enterprise requires a JSON object format: {"request_path": {"path": "path-name"}} instead of the simpler "request:path-name" format used in Core. This commit updates: - API examples to use the correct JSON object format - Documentation to clearly show the required format - Schema validation to accept both string and object formats - Added clarifying note about the format difference Related to influxdata/influxdb#6171 which will address this in the 3.2.1 release. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- api-docs/influxdb3/enterprise/v3/ref.yml | 33 ++++++++++++++++++------ 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/api-docs/influxdb3/enterprise/v3/ref.yml b/api-docs/influxdb3/enterprise/v3/ref.yml index 92a65905a..78ae2aad3 100644 --- a/api-docs/influxdb3/enterprise/v3/ref.yml +++ b/api-docs/influxdb3/enterprise/v3/ref.yml @@ -1239,7 +1239,8 @@ paths: db: mydb plugin_filename: request.py trigger_name: hello_world_trigger - trigger_specification: "request:hello-world" + # trigger_specification: "request:hello-world" - For 3.2.1 (issue#6171) + trigger_specification: '{"request_path": {"path": "hello-world"}}' cron_friday_afternoon: summary: Cron trigger for Friday afternoons description: | @@ -1472,19 +1473,22 @@ paths: parameters: - name: request_path description: | - The path configured in the request trigger specification "request:"` for the plugin. + The path configured in the request trigger specification for the plugin. For example, if you define a trigger with the following: ```json - trigger_specification: "request:hello-world" + trigger_specification: {"request_path": {"path": "hello-world"}} ``` - + then, the HTTP API exposes the following plugin endpoint: ``` /api/v3/engine/hello-world ``` + + ***Note:*** Currently, due to a bug in InfluxDB 3 Enterprise, the request trigger specification is different from Core. + in: path required: true schema: @@ -2091,12 +2095,25 @@ components: - `table:TABLE_NAME` - Triggers on write events to a specific table ### On-demand triggers - Format: `request:REQUEST_PATH` + Format: `{"request_path": {"path": "REQUEST_PATH"}}` Creates an HTTP endpoint `/api/v3/engine/REQUEST_PATH` for manual invocation: - - `request:hello-world` - Creates endpoint `/api/v3/engine/hello-world` - - `request:data-export` - Creates endpoint `/api/v3/engine/data-export` - pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|request:[a-zA-Z0-9_-]+)$ + - `{"request_path": {"path": "hello-world"}}` - Creates endpoint `/api/v3/engine/hello-world` + - `{"request_path": {"path": "data-export"}}` - Creates endpoint `/api/v3/engine/data-export` + + ***Note:*** Currently, due to a bug in InfluxDB 3 Enterprise, the request trigger specification is different from Core. Use the JSON object format shown above. + + oneOf: + - type: string + pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*)$ + - type: object + properties: + request_path: + type: object + properties: + path: + type: string + pattern: ^[a-zA-Z0-9_-]+$ example: cron:0 0 6 * * 1-5 trigger_arguments: type: object From 1db855046229ad828f756fc943919955a43c1606 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 13:33:52 -0500 Subject: [PATCH 63/80] fix(influxdb3): Update API reference and fix processing engine documentation for 3.2 release MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Resolves issue #6161 with InfluxDB 3.2 API reference updates. ## API Reference Updates - Add `hard_delete_at` parameter to database and table deletion endpoints for scheduled hard deletion - Add update database and update table endpoints with retention period configuration - Add license endpoint response schema - Fix request trigger specification format from `path:` to `request:` in Core API - Fix OpenAPI schema validation error in Enterprise API by removing conflicting type declaration ## Processing Engine Documentation Fixes - Standardize terminology across documentation: - "Data write" (not "WAL flush" or "On WAL flush") - "Scheduled" (not "On Schedule") - "HTTP request" (not "On Request") - Fix placeholder inconsistencies: use REQUEST_PATH instead of ENDPOINT_PATH - Add Enterprise-specific warnings about request trigger format differences - Update trigger specification format in Enterprise API to use JSON object format - Add proper table of contents with consistent structure - Improve distributed cluster configuration documentation ## Enterprise Request Trigger Bug Documentation Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs between CLI and API: - CLI: `request:` (same as Core CLI and API) - Enterprise API: `{"request_path": {"path": ""}}` This difference is now properly documented with warnings in all relevant sections. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- api-docs/influxdb3/core/v3/ref.yml | 123 +++++++++++++++--- api-docs/influxdb3/enterprise/v3/ref.yml | 3 +- .../shared/influxdb3-cli/create/trigger.md | 14 +- .../processing-engine.md | 39 ++++-- content/shared/v3-core-plugins/_index.md | 98 +++++++++----- test/influxdb3/engine.test.sh | 20 +++ 6 files changed, 235 insertions(+), 62 deletions(-) create mode 100644 test/influxdb3/engine.test.sh diff --git a/api-docs/influxdb3/core/v3/ref.yml b/api-docs/influxdb3/core/v3/ref.yml index 3f4a738e8..e15c42f9f 100644 --- a/api-docs/influxdb3/core/v3/ref.yml +++ b/api-docs/influxdb3/core/v3/ref.yml @@ -922,9 +922,25 @@ paths: summary: Delete a database description: | Soft deletes a database. - The database is scheduled for deletion and unavailable for querying. + The database is scheduled for deletion and unavailable for querying. + Use the `hard_delete_at` parameter to schedule a hard deletion. parameters: - $ref: '#/components/parameters/db' + - name: hard_delete_at + in: query + required: false + schema: + type: string + format: date-time + description: | + Schedule the database for hard deletion at the specified time. + If not provided, the database will be soft deleted. + Use ISO 8601 date-time format (for example, "2025-12-31T23:59:59Z"). + + #### Deleting a database cannot be undone + + Deleting a database is a destructive action. + Once a database is deleted, data stored in that database cannot be recovered. responses: '200': description: Success. Database deleted. @@ -961,7 +977,13 @@ paths: summary: Delete a table description: | Soft deletes a table. - The table is scheduled for deletion and unavailable for querying. + The table is scheduled for deletion and unavailable for querying. + Use the `hard_delete_at` parameter to schedule a hard deletion. + + #### Deleting a table cannot be undone + + Deleting a table is a destructive action. + Once a table is deleted, data stored in that table cannot be recovered. parameters: - $ref: '#/components/parameters/db' - name: table @@ -969,6 +991,16 @@ paths: required: true schema: type: string + - name: hard_delete_at + in: query + required: false + schema: + type: string + format: date-time + description: | + Schedule the table for hard deletion at the specified time. + If not provided, the table will be soft deleted. + Use ISO 8601 format (for example, "2025-12-31T23:59:59Z"). responses: '200': description: Success (no content). The table has been deleted. @@ -1078,7 +1110,7 @@ paths: In `"cron:CRON_EXPRESSION"`, `CRON_EXPRESSION` uses extended 6-field cron format. The cron expression `0 0 6 * * 1-5` means the trigger will run at 6:00 AM every weekday (Monday to Friday). value: - db: DATABASE_NAME + db: mydb plugin_filename: schedule.py trigger_name: schedule_cron_trigger trigger_specification: cron:0 0 6 * * 1-5 @@ -1136,7 +1168,7 @@ paths: db: mydb plugin_filename: request.py trigger_name: hello_world_trigger - trigger_specification: path:hello-world + trigger_specification: request:hello-world cron_friday_afternoon: summary: Cron trigger for Friday afternoons description: | @@ -1365,16 +1397,16 @@ paths: description: Plugin not enabled. tags: - Processing engine - /api/v3/engine/{plugin_path}: + /api/v3/engine/{request_path}: parameters: - - name: plugin_path + - name: request_path description: | - The path configured in the request trigger specification "path:"` for the plugin. + The path configured in the request trigger specification for the plugin. For example, if you define a trigger with the following: ```json - trigger-spec: "path:hello-world" + trigger_specification: "request:hello-world" ``` then, the HTTP API exposes the following plugin endpoint: @@ -1390,7 +1422,7 @@ paths: operationId: GetProcessingEnginePluginRequest summary: On Request processing engine plugin request description: | - Executes the On Request processing engine plugin specified in ``. + Executes the On Request processing engine plugin specified in the trigger's `plugin_filename`. The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin. An On Request plugin implements the following signature: @@ -1417,7 +1449,7 @@ paths: operationId: PostProcessingEnginePluginRequest summary: On Request processing engine plugin request description: | - Executes the On Request processing engine plugin specified in ``. + Executes the On Request processing engine plugin specified in the trigger's `plugin_filename`. The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin. An On Request plugin implements the following signature: @@ -1868,7 +1900,7 @@ components: `schedule.py` or `endpoints/report.py`. The path can be absolute or relative to the `--plugins-dir` directory configured when starting InfluxDB 3. - The plugin file must implement the trigger interface associated with the trigger's specification (`trigger_spec`). + The plugin file must implement the trigger interface associated with the trigger's specification. trigger_name: type: string trigger_specification: @@ -1911,12 +1943,12 @@ components: - `table:TABLE_NAME` - Triggers on write events to a specific table ### On-demand triggers - Format: `path:ENDPOINT_NAME` + Format: `request:REQUEST_PATH` - Creates an HTTP endpoint `/api/v3/engine/ENDPOINT_NAME` for manual invocation: - - `path:hello-world` - Creates endpoint `/api/v3/engine/hello-world` - - `path:data-export` - Creates endpoint `/api/v3/engine/data-export` - pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|path:[a-zA-Z0-9_-]+)$ + Creates an HTTP endpoint `/api/v3/engine/REQUEST_PATH` for manual invocation: + - `request:hello-world` - Creates endpoint `/api/v3/engine/hello-world` + - `request:data-export` - Creates endpoint `/api/v3/engine/data-export` + pattern: ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|request:[a-zA-Z0-9_-]+)$ example: cron:0 0 6 * * 1-5 trigger_arguments: type: object @@ -2013,6 +2045,65 @@ components: - m - h type: string + UpdateDatabaseRequest: + type: object + properties: + retention_period: + type: string + description: | + The retention period for the database. Specifies how long data should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "7d" + description: Request schema for updating database configuration. + UpdateTableRequest: + type: object + properties: + db: + type: string + description: The name of the database containing the table. + table: + type: string + description: The name of the table to update. + retention_period: + type: string + description: | + The retention period for the table. Specifies how long data in this table should be retained. + Use duration format (for example, "1d", "1h", "30m", "7d"). + example: "30d" + required: + - db + - table + description: Request schema for updating table configuration. + LicenseResponse: + type: object + properties: + license_type: + type: string + description: The type of license (for example, "enterprise", "trial"). + example: "enterprise" + expires_at: + type: string + format: date-time + description: The expiration date of the license in ISO 8601 format. + example: "2025-12-31T23:59:59Z" + features: + type: array + items: + type: string + description: List of features enabled by the license. + example: + - "clustering" + - "processing_engine" + - "advanced_auth" + status: + type: string + enum: + - "active" + - "expired" + - "invalid" + description: The current status of the license. + example: "active" + description: Response schema for license information. responses: Unauthorized: description: Unauthorized access. diff --git a/api-docs/influxdb3/enterprise/v3/ref.yml b/api-docs/influxdb3/enterprise/v3/ref.yml index 78ae2aad3..b1cb43d7c 100644 --- a/api-docs/influxdb3/enterprise/v3/ref.yml +++ b/api-docs/influxdb3/enterprise/v3/ref.yml @@ -1240,7 +1240,7 @@ paths: plugin_filename: request.py trigger_name: hello_world_trigger # trigger_specification: "request:hello-world" - For 3.2.1 (issue#6171) - trigger_specification: '{"request_path": {"path": "hello-world"}}' + trigger_specification: {"request_path": {"path": "hello-world"}} cron_friday_afternoon: summary: Cron trigger for Friday afternoons description: | @@ -2056,7 +2056,6 @@ components: trigger_name: type: string trigger_specification: - type: string description: | Specifies when and how the processing engine trigger should be invoked. diff --git a/content/shared/influxdb3-cli/create/trigger.md b/content/shared/influxdb3-cli/create/trigger.md index dbb223128..baaadd91c 100644 --- a/content/shared/influxdb3-cli/create/trigger.md +++ b/content/shared/influxdb3-cli/create/trigger.md @@ -27,7 +27,7 @@ influxdb3 create trigger [OPTIONS] \ | `-d` | `--database` | _({{< req >}})_ Name of the database to operate on | | | `--token` | _({{< req >}})_ Authentication token | | | `--plugin-filename` | _({{< req >}})_ Name of the file, stored in the server's `plugin-dir`, that contains the Python plugin code to run | -| | `--trigger-spec` | Trigger specification--for example `table:` or `all_tables` | +| | `--trigger-spec` | Trigger specification: `table:`, `all_tables`, `every:`, `cron:`, or `request:` | | | `--disabled` | Create the trigger in disabled state | | | `--tls-ca` | Path to a custom TLS certificate authority (for testing or self-signed certificates) | | `-h` | `--help` | Print help information | @@ -113,3 +113,15 @@ influxdb3 create trigger \ Creating a trigger in a disabled state prevents it from running immediately. You can enable it later when you're ready to activate it. {{% /code-placeholders %}} + +{{% show-in "enterprise" %}} +> [!Warning] +> #### Request trigger specification format differs between CLI and API +> +> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs: +> +> - **CLI**: `request:` (same as Core CLI and API) +> - **Enterprise API**: `{"request_path": {"path": ""}}` +> +> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification. +{{% /show-in %}} diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 4365b35de..1e1121762 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -23,24 +23,36 @@ engine [trigger](#trigger). ### Trigger When you create a trigger, you specify a [plugin](#plugin), a database, optional -arguments, and a _trigger-spec_, which defines when the plugin is executed and +arguments, and a trigger specification, which defines when the plugin is executed and what data it receives. #### Trigger types InfluxDB 3 provides the following types of triggers, each with specific -trigger-specs: +specifications: -- **On WAL flush**: Sends a batch of written data (for a specific table or all - tables) to a plugin (by default, every second). -- **On Schedule**: Executes a plugin on a user-configured schedule (using a +- **Data write** (`table:` or `all_tables`): Sends a batch of written data (for a specific table or all + tables) to a plugin when the database flushes data to the Write-Ahead Log (by default, every second). +- **Scheduled** (`every:` or `cron:`): Executes a plugin on a user-configured schedule (using a crontab or a duration). This trigger type is useful for data collection and deadman monitoring. -- **On Request**: Binds a plugin to a custom HTTP API endpoint at - `/api/v3/engine/`. +- **HTTP request** (`request:`): Binds a plugin to a custom HTTP API endpoint at + `/api/v3/engine/`. The plugin receives the HTTP request headers and content, and can parse, process, and send the data into the database or to third-party services. +{{% show-in "enterprise" %}} +> [!Warning] +> #### Request trigger specification format differs between CLI and API +> +> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs: +> +> - **CLI**: `request:` (same as Core CLI and API) +> - **Enterprise API**: `{"request_path": {"path": ""}}` +> +> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification. +{{% /show-in %}} + ## Activate the processing engine To activate the processing engine, include the `--plugin-dir ` option @@ -64,10 +76,10 @@ to the current working directory of the `influxdb3` server. ## Create a plugin To create a plugin, write and store a Python file in your configured `PLUGIN_DIR`. -The following example is a WAL flush plugin that processes data before it gets +The following example is a data write plugin that processes data before it gets persisted to the object store. -##### Example Python plugin for WAL rows +##### Example Python plugin for data writes ```python # This is the basic structure for Python plugin code that runs in the @@ -77,9 +89,9 @@ persisted to the object store. # allowing you to write generic code that uses variables such as monitoring # thresholds, environment variables, and host names. # -# Use the following exact signature to define a function for the WAL flush +# Use the following exact signature to define a function for the data write # trigger. -# When you create a trigger for a WAL flush plugin, you specify the database +# When you create a trigger for a data write plugin, you specify the database # and tables that the plugin receives written data from on every WAL flush # (default is once per second). def process_writes(influxdb3_local, table_batches, args=None): @@ -98,9 +110,8 @@ def process_writes(influxdb3_local, table_batches, args=None): # value. influxdb3_local.info("query result: " + str(query_result)) - # this is the data that is sent when the WAL is flushed of writes the server - # received for the DB or table of interest. One batch for each table (will - # only be one if triggered on a single table) + # this is the data that is sent when data is written to the database and flushed to the WAL. + # One batch for each table (will only be one if triggered on a single table) for table_batch in table_batches: # here you can see that the table_name is available. influxdb3_local.info("table: " + table_batch["table_name"]) diff --git a/content/shared/v3-core-plugins/_index.md b/content/shared/v3-core-plugins/_index.md index 4e4c1a762..32cb2c37b 100644 --- a/content/shared/v3-core-plugins/_index.md +++ b/content/shared/v3-core-plugins/_index.md @@ -22,20 +22,26 @@ Ensure you have: Once you have all the prerequisites in place, follow these steps to implement the Processing Engine for your data automation needs. -1. [Set up the Processing Engine](#set-up-the-processing-engine) -2. [Add a Processing Engine plugin](#add-a-processing-engine-plugin) - - [Use example plugins](#use-example-plugins) - - [Create a custom plugin](#create-a-custom-plugin) -3. [Set up a trigger](#set-up-a-trigger) - - [Understand trigger types](#understand-trigger-types) - - [Use the create trigger command](#use-the-create-trigger-command) - - [Trigger specification examples](#trigger-specification-examples) -4. [Advanced trigger configuration](#advanced-trigger-configuration) - - [Access community plugins from GitHub](#access-community-plugins-from-github) - - [Pass arguments to plugins](#pass-arguments-to-plugins) - - [Control trigger execution](#control-trigger-execution) - - [Configure error handling for a trigger](#configure-error-handling-for-a-trigger) - - [Install Python dependencies](#install-python-dependencies) +- [Set up the Processing Engine](#set-up-the-processing-engine) + - [Configure distributed environments](#configure-distributed-environments) +- [Add a Processing Engine plugin](#add-a-processing-engine-plugin) + - [Choose a plugin strategy](#choose-a-plugin-strategy) + - [Use example plugins](#use-example-plugins) + - [Create a custom plugin](#create-a-custom-plugin) +- [Set up a trigger](#set-up-a-trigger) + - [Understand trigger types](#understand-trigger-types) + - [Use the create trigger command](#use-the-create-trigger-command) + - [Trigger specification examples](#trigger-specification-examples) + - [Pass arguments to plugins](#pass-arguments-to-plugins) + - [Control trigger execution](#control-trigger-execution) + - [Configure error handling for a trigger](#configure-error-handling-for-a-trigger) +- [Advanced trigger configuration](#advanced-trigger-configuration) + - [Access community plugins from GitHub](#access-community-plugins-from-github) + - [Configure your triggers](#configure-your-triggers) + - [Install Python dependencies](#install-python-dependencies) +- [Distributed cluster considerations](#distributed-cluster-considerations) + - [Match plugin types to the correct node](#match-plugin-types-to-the-correct-node) + - [Route third-party clients to querier nodes](#route-third-party-clients-to-querier-nodes) ## Set up the Processing Engine @@ -75,6 +81,8 @@ When running {{% product-name %}} in a distributed setup, follow these steps to > > Configure your plugin directory on the same system as the nodes that run the triggers and plugins. +For more information about configuring distributed environments, see the [Distributed cluster considerations](#distributed-cluster-considerations) section. + ## Add a Processing Engine plugin A plugin is a Python script that defines a specific function signature for a trigger (_trigger spec_). When the specified event occurs, InfluxDB runs the plugin. @@ -168,11 +176,11 @@ Before you begin, make sure: Choose a plugin type based on your automation goals: -| Plugin Type | Best For | Trigger Type | -| ---------------- | ------------------------------------------- | ------------------------ | -| **Data write** | Processing data as it arrives | `table:` or `all_tables` | -| **Scheduled** | Running code at specific intervals or times | `every:` or `cron:` | -| **HTTP request** | Running code on demand via API endpoints | `path:` | +| Plugin Type | Best For | +| ---------------- | ------------------------------------------- | +| **Data write** | Processing data as it arrives | +| **Scheduled** | Running code at specific intervals or times | +| **HTTP request** | Running code on demand via API endpoints | #### Create your plugin file @@ -184,7 +192,7 @@ After writing your plugin, [create a trigger](#use-the-create-trigger-command) t #### Create a data write plugin -Use a data write plugin to process data as it's written to the database. Ideal use cases include: +Use a data write plugin to process data as it's written to the database. These plugins use [`table:` or `all_tables:`](#trigger-on-data-writes) trigger specifications. Ideal use cases include: - Data transformation and enrichment - Alerting on incoming values @@ -209,7 +217,7 @@ def process_writes(influxdb3_local, table_batches, args=None): #### Create a scheduled plugin -Scheduled plugins run at defined intervals. Use them for: +Scheduled plugins run at defined intervals using [`every:` or `cron:`](#trigger-on-a-schedule) trigger specifications. Use them for: - Periodic data aggregation - Report generation @@ -231,7 +239,7 @@ def process_scheduled_call(influxdb3_local, call_time, args=None): #### Create an HTTP request plugin -HTTP request plugins respond to API calls. Use them for: +HTTP request plugins respond to API calls using [`request:`](#trigger-on-http-requests) trigger specifications{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (API){{% /show-in %}}. Use them for: - Creating custom API endpoints - Webhooks for external integrations @@ -270,7 +278,7 @@ After writing your plugin: |------------|----------------------|-----------------| | Data write | `table:` or `all_tables` | When data is written to tables | | Scheduled | `every:` or `cron:` | At specified time intervals | -| HTTP request | `path:` | When HTTP requests are received | +| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": ""}}`{{% /show-in %}} | When HTTP requests are received | ### Use the create trigger command @@ -302,7 +310,7 @@ In the example above, replace the following: ### Trigger specification examples -#### Data write example +#### Trigger on data writes ```bash # Trigger on writes to a specific table @@ -325,13 +333,13 @@ The trigger runs when the database flushes ingested data for the specified table The plugin receives the written data and table information. -#### Scheduled events example +#### Trigger on a schedule ```bash # Run every 5 minutes influxdb3 create trigger \ --trigger-spec "every:5m" \ - --plugin-filename "hourly_check.py" \ + --plugin-filename "periodic_check.py" \ --database my_database \ regular_check @@ -346,7 +354,7 @@ influxdb3 create trigger \ The plugin receives the scheduled call time. -#### HTTP requests example +#### Trigger on HTTP requests ```bash # Create an endpoint at /api/v3/engine/webhook @@ -357,7 +365,9 @@ influxdb3 create trigger \ webhook_processor ``` -Access your endpoint available at `/api/v3/engine/`. +Access your endpoint at `/api/v3/engine/{REQUEST_PATH}` (in this example, `/api/v3/engine/webhook`). +The trigger is enabled by default and runs when an HTTP request is received at the specified path. + To run the plugin, send a `GET` or `POST` request to the endpoint--for example: ```bash @@ -366,6 +376,24 @@ curl http://{{% influxdb/host %}}/api/v3/engine/webhook The plugin receives the HTTP request object with methods, headers, and body. +To view triggers associated with a database, use the `influxdb3 show summary` command: + +```bash +influxdb3 show summary --database my_database --token AUTH_TOKEN +``` + +{{% show-in "enterprise" %}} +> [!Warning] +> #### Request trigger specification format differs between CLI and API +> +> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs: +> +> - **CLI**: `request:` (same as Core CLI and API) +> - **Enterprise API**: `{"request_path": {"path": ""}}` +> +> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. Use `influxdb3 show summary` to verify the actual trigger specification. +{{% /show-in %}} + ### Pass arguments to plugins Use trigger arguments to pass configuration from a trigger to the plugin it runs. You can use this for: @@ -587,7 +615,19 @@ Each plugin must run on a node that supports its trigger type: |--------------------|--------------------------|-----------------------------| | Data write | `table:` or `all_tables` | Ingester nodes | | Scheduled | `every:` or `cron:` | Any node with scheduler | -| HTTP request | `path:` | Nodes that serve API traffic| +| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}`{{% /show-in %}} | Nodes that serve API traffic| + +{{% show-in "enterprise" %}} +> [!Note] +> #### Request trigger specification format differs between CLI and API +> +> Due to a bug in InfluxDB 3 Enterprise, the request trigger specification format differs: +> +> - **CLI**: `request:` (same as Core CLI and API) +> - **Enterprise API**: `{"request_path": {"path": ""}}` +> +> See the [API reference](/influxdb3/enterprise/api/#operation/PostConfigureProcessingEngineTrigger) for examples. +{{% /show-in %}} For example: - Run write-ahead log (WAL) plugins on ingester nodes. diff --git a/test/influxdb3/engine.test.sh b/test/influxdb3/engine.test.sh new file mode 100644 index 000000000..8732ac1c3 --- /dev/null +++ b/test/influxdb3/engine.test.sh @@ -0,0 +1,20 @@ +# Create a processing engine request trigger +# // SECTION - influxdb3-core +curl -v -X POST "http://localhost:8181/api/v3/configure/processingengine/trigger" \ + --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ + --json '{ + "db": "sensors", + "plugin_filename": "request.py", + "trigger_name": "Process request trigger", + "trigger_specification": "request:process-request" +}' + +# // SECTION - influxdb3-enterprise +curl -v -X POST "http://localhost:8181/api/v3/configure/processingengine/trigger" \ + --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ + --json '{ + "db": "sensors", + "plugin_filename": "request.py", + "trigger_name": "Process request trigger", + "trigger_specification": {"request_path": {"path": "process-request"}} +}' \ No newline at end of file From feea4b8df2cf8ac1b37f8b42677ac0890d35e548 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 13:44:19 -0500 Subject: [PATCH 64/80] fix(plugins): Missing descriptor. Cleanup. --- .../processing-engine.md | 2 +- content/shared/v3-core-plugins/_index.md | 21 +++---------------- 2 files changed, 4 insertions(+), 19 deletions(-) diff --git a/content/shared/influxdb3-get-started/processing-engine.md b/content/shared/influxdb3-get-started/processing-engine.md index 1e1121762..61f3399f1 100644 --- a/content/shared/influxdb3-get-started/processing-engine.md +++ b/content/shared/influxdb3-get-started/processing-engine.md @@ -162,7 +162,7 @@ affecting actual data. During a plugin test: To test a plugin: -1. Save the [example plugin code](#example-python-plugin-for-wal-rows) to a +1. Save the [example plugin code](#example-python-plugin-for-data-writes) to a plugin file inside of the plugin directory. If you haven't yet written data to the table in the example, comment out the lines where it queries. 2. To run the test, enter the following command with the following options: diff --git a/content/shared/v3-core-plugins/_index.md b/content/shared/v3-core-plugins/_index.md index 32cb2c37b..f225fdb27 100644 --- a/content/shared/v3-core-plugins/_index.md +++ b/content/shared/v3-core-plugins/_index.md @@ -23,25 +23,10 @@ Ensure you have: Once you have all the prerequisites in place, follow these steps to implement the Processing Engine for your data automation needs. - [Set up the Processing Engine](#set-up-the-processing-engine) - - [Configure distributed environments](#configure-distributed-environments) - [Add a Processing Engine plugin](#add-a-processing-engine-plugin) - - [Choose a plugin strategy](#choose-a-plugin-strategy) - - [Use example plugins](#use-example-plugins) - - [Create a custom plugin](#create-a-custom-plugin) - [Set up a trigger](#set-up-a-trigger) - - [Understand trigger types](#understand-trigger-types) - - [Use the create trigger command](#use-the-create-trigger-command) - - [Trigger specification examples](#trigger-specification-examples) - - [Pass arguments to plugins](#pass-arguments-to-plugins) - - [Control trigger execution](#control-trigger-execution) - - [Configure error handling for a trigger](#configure-error-handling-for-a-trigger) - [Advanced trigger configuration](#advanced-trigger-configuration) - - [Access community plugins from GitHub](#access-community-plugins-from-github) - - [Configure your triggers](#configure-your-triggers) - - [Install Python dependencies](#install-python-dependencies) - [Distributed cluster considerations](#distributed-cluster-considerations) - - [Match plugin types to the correct node](#match-plugin-types-to-the-correct-node) - - [Route third-party clients to querier nodes](#route-third-party-clients-to-querier-nodes) ## Set up the Processing Engine @@ -239,7 +224,7 @@ def process_scheduled_call(influxdb3_local, call_time, args=None): #### Create an HTTP request plugin -HTTP request plugins respond to API calls using [`request:`](#trigger-on-http-requests) trigger specifications{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (API){{% /show-in %}}. Use them for: +HTTP request plugins respond to API calls using [`request:`](#trigger-on-http-requests) trigger specifications{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (HTTP API){{% /show-in %}}. Use them for: - Creating custom API endpoints - Webhooks for external integrations @@ -278,7 +263,7 @@ After writing your plugin: |------------|----------------------|-----------------| | Data write | `table:` or `all_tables` | When data is written to tables | | Scheduled | `every:` or `cron:` | At specified time intervals | -| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": ""}}`{{% /show-in %}} | When HTTP requests are received | +| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": ""}}` (HTTP API){{% /show-in %}} | When HTTP requests are received | ### Use the create trigger command @@ -615,7 +600,7 @@ Each plugin must run on a node that supports its trigger type: |--------------------|--------------------------|-----------------------------| | Data write | `table:` or `all_tables` | Ingester nodes | | Scheduled | `every:` or `cron:` | Any node with scheduler | -| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}`{{% /show-in %}} | Nodes that serve API traffic| +| HTTP request | `request:`{{% show-in "enterprise" %}} (CLI) or `{"request_path": {"path": "..."}}` (HTTP API){{% /show-in %}} | Nodes that serve API traffic| {{% show-in "enterprise" %}} > [!Note] From 7cae3660e2ede627eb388ee5aac2e5a7f4e529ce Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 14:15:45 -0500 Subject: [PATCH 65/80] fix(explorer): broken link --- content/influxdb3/explorer/manage-plugins/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/influxdb3/explorer/manage-plugins/_index.md b/content/influxdb3/explorer/manage-plugins/_index.md index afffa12e6..701761a83 100644 --- a/content/influxdb3/explorer/manage-plugins/_index.md +++ b/content/influxdb3/explorer/manage-plugins/_index.md @@ -44,7 +44,7 @@ Use the InfluxDB 3 Explorer UI to enable, disable, or configure triggers for eac - [View installed plugins](#view-installed-plugins) - [Filter installed plugins](#filter-installed-plugins) - [Enable or disable a plugin](#enable-or-disable-a-plugin) -- [ View Plugin Logs](#-view-plugin-logs) +- [ View Plugin Logs](#view-plugin-logs) - [Delete a plugin](#delete-a-plugin) - [Use the Plugin Library](#use-the-plugin-library) From 82d4bd2dc4e8a501940dd715d964715a74a4475d Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 13:43:43 -0600 Subject: [PATCH 66/80] updated docker image for explorer --- content/influxdb3/explorer/install.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/influxdb3/explorer/install.md b/content/influxdb3/explorer/install.md index e1aea9d3f..83d967b3f 100644 --- a/content/influxdb3/explorer/install.md +++ b/content/influxdb3/explorer/install.md @@ -33,7 +33,7 @@ Use [Docker](https://docker.com) to install and run **InfluxDB 3 Explorer**. 2. **Pull the {{% product-name %}} Docker image** ```bash - docker pull quay.io/influxdb/influxdb3-explorer:latest + docker pull influxdb/influxdb3-explorer:latest ``` 3. **Create local directories** _(optional)_ @@ -87,7 +87,7 @@ Use [Docker](https://docker.com) to install and run **InfluxDB 3 Explorer**. --volume $(pwd)/config:/app-root/config:ro \ --volume $(pwd)/db:/db:rw \ --volume $(pwd)/ssl:/etc/nginx/ssl:ro \ - quay.io/influxdb/influxdb3-explorer:latest \ + influxdb/influxdb3-explorer:latest \ --mode=admin ``` @@ -220,7 +220,7 @@ docker run --detach \ # ... --volume $(pwd)/db:/custom/db-path:rw \ --env DATABASE_URL=/custom/db-path/sqlite.db \ - quay.io/influxdb/influxdb3-explorer:latest + influxdb/influxdb3-explorer:latest ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -238,7 +238,7 @@ uses a random 32-byte hex string as the session secret key. docker run --detach \ # ... --env SESSION_SECRET_KEY=xxX0Xx000xX0XxxxX0Xx000xX0XxX00x \ - quay.io/influxdb/influxdb3-explorer:latest + influxdb/influxdb3-explorer:latest ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -264,7 +264,7 @@ docker run --detach \ # ... --volume $(pwd)/ssl:/custom/ssl:ro \ --env SSL_CERT_PATH=/custom/ssl/cert.pem \ - quay.io/influxdb/influxdb3-explorer:latest + influxdb/influxdb3-explorer:latest ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -283,7 +283,7 @@ docker run --detach \ # ... --volume $(pwd)/ssl:/custom/ssl:ro \ --env SSL_KEY_PATH=/custom/ssl/key.pem \ - quay.io/influxdb/influxdb3-explorer:latest + influxdb/influxdb3-explorer:latest ``` {{% /expand %}} {{< /expand-wrapper >}} From 3405e93ea61e51fdde6dcb70eae8b01b482fe232 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 14:57:33 -0500 Subject: [PATCH 67/80] Update test/influxdb3/engine.test.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- test/influxdb3/engine.test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/influxdb3/engine.test.sh b/test/influxdb3/engine.test.sh index 8732ac1c3..7c884129a 100644 --- a/test/influxdb3/engine.test.sh +++ b/test/influxdb3/engine.test.sh @@ -1,7 +1,7 @@ # Create a processing engine request trigger # // SECTION - influxdb3-core curl -v -X POST "http://localhost:8181/api/v3/configure/processingengine/trigger" \ - --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ + --header "Authorization: Bearer ${INFLUXDB3_CORE_ADMIN_TOKEN}" \ --json '{ "db": "sensors", "plugin_filename": "request.py", From df323703f3881cd97e01db8d8f3d393bac9a19ac Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 14:17:29 -0600 Subject: [PATCH 68/80] hotfix: update explorer docker image, centralize image version --- content/influxdb3/explorer/install.md | 12 ++++++------ data/products.yml | 5 ++--- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/content/influxdb3/explorer/install.md b/content/influxdb3/explorer/install.md index 83d967b3f..9478137ec 100644 --- a/content/influxdb3/explorer/install.md +++ b/content/influxdb3/explorer/install.md @@ -33,7 +33,7 @@ Use [Docker](https://docker.com) to install and run **InfluxDB 3 Explorer**. 2. **Pull the {{% product-name %}} Docker image** ```bash - docker pull influxdb/influxdb3-explorer:latest + influxdata/influxdb3-ui:{{% latest-patch %}} ``` 3. **Create local directories** _(optional)_ @@ -87,7 +87,7 @@ Use [Docker](https://docker.com) to install and run **InfluxDB 3 Explorer**. --volume $(pwd)/config:/app-root/config:ro \ --volume $(pwd)/db:/db:rw \ --volume $(pwd)/ssl:/etc/nginx/ssl:ro \ - influxdb/influxdb3-explorer:latest \ + influxdata/influxdb3-ui:{{% latest-patch %}} \ --mode=admin ``` @@ -220,7 +220,7 @@ docker run --detach \ # ... --volume $(pwd)/db:/custom/db-path:rw \ --env DATABASE_URL=/custom/db-path/sqlite.db \ - influxdb/influxdb3-explorer:latest + influxdata/influxdb3-ui:{{% latest-patch %}} ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -238,7 +238,7 @@ uses a random 32-byte hex string as the session secret key. docker run --detach \ # ... --env SESSION_SECRET_KEY=xxX0Xx000xX0XxxxX0Xx000xX0XxX00x \ - influxdb/influxdb3-explorer:latest + influxdata/influxdb3-ui:{{% latest-patch %}} ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -264,7 +264,7 @@ docker run --detach \ # ... --volume $(pwd)/ssl:/custom/ssl:ro \ --env SSL_CERT_PATH=/custom/ssl/cert.pem \ - influxdb/influxdb3-explorer:latest + influxdata/influxdb3-ui:{{% latest-patch %}} ``` {{% /expand %}} {{< /expand-wrapper >}} @@ -283,7 +283,7 @@ docker run --detach \ # ... --volume $(pwd)/ssl:/custom/ssl:ro \ --env SSL_KEY_PATH=/custom/ssl/key.pem \ - influxdb/influxdb3-explorer:latest + influxdata/influxdb3-ui:{{% latest-patch %}} ``` {{% /expand %}} {{< /expand-wrapper >}} diff --git a/data/products.yml b/data/products.yml index 793a5e70c..173e838d7 100644 --- a/data/products.yml +++ b/data/products.yml @@ -128,9 +128,8 @@ explorer: menu_category: other list_order: 4 versions: [v1] - latest: v1.0 - latest_patches: - v1: 1.0.0 + latest: explorer + latest_patch: 1.0.0 ai_sample_questions: - How do I use InfluxDB 3 Explorer to visualize data? - How do I create a dashboard in InfluxDB 3 Explorer? From d2f84033ddd554c7ce3a58cc7674be4b5249c9a4 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 14:32:28 -0600 Subject: [PATCH 69/80] hotfix: updated explorer docker url on explorer landing page --- content/influxdb3/explorer/_index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/influxdb3/explorer/_index.md b/content/influxdb3/explorer/_index.md index 5078f75bb..a0827d43e 100644 --- a/content/influxdb3/explorer/_index.md +++ b/content/influxdb3/explorer/_index.md @@ -33,14 +33,14 @@ Run the Docker image to start InfluxDB 3 Explorer: ```sh # Pull the Docker image -docker pull quay.io/influxdb/influxdb3-explorer:latest +docker pull influxdata/influxdb3-ui:{{% latest-patch %}} # Run the Docker container docker run --detach \ --name influxdb3-explorer \ --publish 8888:80 \ --publish 8889:8888 \ - quay.io/influxdb/influxdb3-explorer:latest \ + influxdata/influxdb3-ui:{{% latest-patch %}} \ --mode=admin ``` From a4c35ae76b0279b2dc49fb2774edf9510aa68684 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 14:35:23 -0600 Subject: [PATCH 70/80] hotfix: hide plugin docs in explorer --- content/influxdb3/explorer/manage-plugins/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/influxdb3/explorer/manage-plugins/_index.md b/content/influxdb3/explorer/manage-plugins/_index.md index 701761a83..4c0fad8c4 100644 --- a/content/influxdb3/explorer/manage-plugins/_index.md +++ b/content/influxdb3/explorer/manage-plugins/_index.md @@ -11,6 +11,7 @@ cascade: - /influxdb3/core/plugins/, InfluxDB 3 Core Processing engine plugins - /influxdb3/enterprise/plugins/, InfluxDB 3 Enterprise Processing engine plugins cascade: + draft: true prepend: | > [!Warning] > #### {{% product-name %}} plugin management is currently in beta From fe2f8306502a043d965a6b86ab529890d8a9c9ac Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 14:59:23 -0600 Subject: [PATCH 71/80] added docs notification for influxdb 3.2 and explorer GA (#6180) --- data/notifications.yaml | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/data/notifications.yaml b/data/notifications.yaml index ef9fa720b..2c7012a3a 100644 --- a/data/notifications.yaml +++ b/data/notifications.yaml @@ -40,26 +40,23 @@ # - [The plan for InfluxDB 3.0 Open Source](https://influxdata.com/blog/the-plan-for-influxdb-3-0-open-source) # - [InfluxDB 3.0 benchmarks](https://influxdata.com/blog/influxdb-3-0-is-2.5x-45x-faster-compared-to-influxdb-open-source/) -- id: influxdb3-ga - level: ga-announcement +- id: influxdb3.2-explorer-ga + level: note scope: - / - title_tag: Now Generally Available - title: InfluxDB 3 Core and Enterprise + title: New in InfluxDB 3.2 slug: | - Start fast. Scale faster. + Key enhancements in InfluxDB 3.2 and the InfluxDB 3 Explorer UI is now generally available. - Get the Updates + See the Blog Post message: | - InfluxDB 3 Core is an open source, high-speed, recent-data engine that collects - and processes data in real-time and persists it to local disk or object storage. - InfluxDB 3 Enterprise builds on Core’s foundation, adding high availability, - read replicas, enhanced security, and data compaction for faster queries and - optimized storage. A free tier of InfluxDB 3 Enterprise is available for - non-commercial at-home or hobbyist use. + InfluxDB 3.2 is now available for both Core and Enterprise, bringing the + general availability of InfluxDB 3 Explorer, a new UI that simplifies how + you query, explore, and visualize data. On top of that, InfluxDB 3.2 includes + a wide range of performance improvements, feature updates, and bug fixes + including automated data retention and more. For more information, check out: - - [Announcement blog from Paul Dix](https://www.influxdata.com/blog/influxdb-3-OSS-GA/) - - [Get Started with InfluxDB 3 Core](https://docs.influxdata.com/influxdb3/core/get-started/) - - [Get Started with InfluxDB 3 Enterprise](https://docs.influxdata.com/influxdb3/enterprise/get-started/) + - [InfluxDB 3.2 blog from Paul Dix](http://influxdata.com/blog/influxdb-3-2) + - [Get Started with InfluxDB 3 Explorer](/influxdb3/explorer/get-started/) From 2fe551ddead10868d11e74e72920b4cb3e118488 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 15:05:37 -0600 Subject: [PATCH 72/80] influxctl 2.10.2 (#6176) * new commands for influxctl 2.10.2, moved some commands to shared * influxctl 2.10.2 release notes * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Jason Stirnaman * Apply suggestions from code review Co-authored-by: Jason Stirnaman --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jason Stirnaman --- .../cli/influxctl/database/_index.md | 28 +-- .../cli/influxctl/database/create.md | 174 +----------------- .../cli/influxctl/database/delete.md | 66 +------ .../reference/cli/influxctl/database/list.md | 29 +-- .../cli/influxctl/database/rename.md | 14 ++ .../cli/influxctl/database/undelete.md | 14 ++ .../cli/influxctl/database/update.md | 83 +-------- .../reference/cli/influxctl/table/_index.md | 22 +-- .../reference/cli/influxctl/table/create.md | 98 +--------- .../reference/cli/influxctl/table/delete.md | 15 ++ .../cli/influxctl/table/iceberg/_index.md | 15 ++ .../cli/influxctl/table/iceberg/disable.md | 13 ++ .../cli/influxctl/table/iceberg/enable.md | 13 ++ .../reference/cli/influxctl/table/list.md | 15 ++ .../cli/influxctl/database/_index.md | 28 +-- .../cli/influxctl/database/create.md | 173 +---------------- .../cli/influxctl/database/delete.md | 62 +------ .../reference/cli/influxctl/database/list.md | 29 +-- .../cli/influxctl/database/rename.md | 14 ++ .../cli/influxctl/database/undelete.md | 14 ++ .../cli/influxctl/database/update.md | 83 +-------- .../reference/cli/influxctl/table/_index.md | 24 +-- .../reference/cli/influxctl/table/create.md | 98 +--------- .../reference/cli/influxctl/table/delete.md | 15 ++ .../cli/influxctl/table/iceberg/_index.md | 15 ++ .../cli/influxctl/table/iceberg/disable.md | 13 ++ .../cli/influxctl/table/iceberg/enable.md | 13 ++ .../reference/cli/influxctl/table/list.md | 15 ++ content/shared/influxctl/database/_index.md | 27 +++ content/shared/influxctl/database/create.md | 169 +++++++++++++++++ content/shared/influxctl/database/delete.md | 68 +++++++ content/shared/influxctl/database/list.md | 24 +++ content/shared/influxctl/database/rename.md | 37 ++++ content/shared/influxctl/database/undelete.md | 33 ++++ content/shared/influxctl/database/update.md | 82 +++++++++ content/shared/influxctl/release-notes.md | 32 ++++ content/shared/influxctl/table/_index.md | 29 +++ content/shared/influxctl/table/create.md | 101 ++++++++++ content/shared/influxctl/table/delete.md | 42 +++++ .../shared/influxctl/table/iceberg/_index.md | 36 ++++ .../shared/influxctl/table/iceberg/disable.md | 35 ++++ .../shared/influxctl/table/iceberg/enable.md | 35 ++++ content/shared/influxctl/table/list.md | 26 +++ data/products.yml | 2 +- 44 files changed, 1017 insertions(+), 956 deletions(-) create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/_index.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/disable.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/enable.md create mode 100644 content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/database/rename.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/database/undelete.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/table/delete.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/_index.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/disable.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/enable.md create mode 100644 content/influxdb3/clustered/reference/cli/influxctl/table/list.md create mode 100644 content/shared/influxctl/database/_index.md create mode 100644 content/shared/influxctl/database/create.md create mode 100644 content/shared/influxctl/database/delete.md create mode 100644 content/shared/influxctl/database/list.md create mode 100644 content/shared/influxctl/database/rename.md create mode 100644 content/shared/influxctl/database/undelete.md create mode 100644 content/shared/influxctl/database/update.md create mode 100644 content/shared/influxctl/table/_index.md create mode 100644 content/shared/influxctl/table/create.md create mode 100644 content/shared/influxctl/table/delete.md create mode 100644 content/shared/influxctl/table/iceberg/_index.md create mode 100644 content/shared/influxctl/table/iceberg/disable.md create mode 100644 content/shared/influxctl/table/iceberg/enable.md create mode 100644 content/shared/influxctl/table/list.md diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/_index.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/_index.md index ee894dca1..af137db40 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/_index.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/_index.md @@ -2,34 +2,12 @@ title: influxctl database description: > The `influxctl database` command and its subcommands manage databases in an - InfluxDB Cloud Dedicated cluster. + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_cloud_dedicated: parent: influxctl weight: 201 +source: /shared/influxctl/database/_index.md --- -The `influxctl database` command and its subcommands manage databases in an -InfluxDB Cloud Dedicated cluster. - -## Usage - -```sh -influxctl database [subcommand] [flags] -``` - -## Subcommands - -| Subcommand | Description | -| :--------------------------------------------------------------------------- | :------------------ | -| [create](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/create/) | Create a database | -| [delete](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete/) | Delete a database | -| [list](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/list/) | List databases | -| [update](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/update/) | Update a database | -| help, h | Output command help | - -## Flags - -| Flag | | Description | -| :--- | :------- | :------------------ | -| `-h` | `--help` | Output command help | + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/create.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/create.md index 69e573cc0..d383c5c1f 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/create.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/create.md @@ -1,8 +1,8 @@ --- title: influxctl database create description: > - The `influxctl database create` command creates a new database in an InfluxDB - Cloud Dedicated cluster. + The `influxctl database create` command creates a new database in an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_cloud_dedicated: parent: influxctl database @@ -10,173 +10,7 @@ weight: 301 related: - /influxdb3/cloud-dedicated/admin/custom-partitions/define-custom-partitions/ - /influxdb3/cloud-dedicated/admin/custom-partitions/partition-templates/ +source: /shared/influxctl/database/create.md --- -The `influxctl database create` command creates a new database with a specified -retention period in an {{< product-name omit=" Clustered" >}} cluster. - -The retention period defines the maximum age of data retained in the database, -based on the timestamp of the data. -The retention period value is a time duration value made up of a numeric value -plus a duration unit. For example, `30d` means 30 days. -A zero duration retention period is infinite and data will not expire. -The retention period value cannot be negative or contain whitespace. - -{{< flex >}} -{{% flex-content "half" %}} - -##### Valid durations units include - -- **m**: minute -- **h**: hour -- **d**: day -- **w**: week -- **mo**: month -- **y**: year - -{{% /flex-content %}} -{{% flex-content "half" %}} - -##### Example retention period values - -- `0d`: infinite/none -- `3d`: 3 days -- `6w`: 6 weeks -- `1mo`: 1 month (30 days) -- `1y`: 1 year -- `30d30d`: 60 days -- `2.5d`: 60 hours - -{{% /flex-content %}} -{{< /flex >}} - -#### Custom partitioning - -You can override the default partition template (`%Y-%m-%d`) of the database -with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` -flags when you create the database. -Provide a time format using [Rust strftime](/influxdb3/cloud-dedicated/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values -into a specified number of "buckets." -Each of these can be used as part of the partition template. -Be sure to follow [partitioning best practices](/influxdb3/cloud-dedicated/admin/custom-partitions/best-practices/). - -> [!Note] -> #### Always provide a time format when using custom partitioning -> -> If defining a custom partition template for your database with any of the -> `--template-*` flags, always include the `--template-timeformat` flag with a -> time format to use in your partition template. -> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. - -> [!Warning] -> #### Wait before writing to a new database with the same name as a deleted database -> -> After deleting a database from your {{% product-name omit=" Clustered" %}} -> cluster, you can reuse the name to create a new database, but **wait two to -> three minutes** after deleting the previous database before writing to the new -> database to allow write caches to clear. - -## Usage - - - - -```sh -influxctl database create [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :--------------------- | -| **DATABASE_NAME** | InfluxDB database name | - -## Flags - -| Flag | | Description | -| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | -| | `--retention-period` | [Database retention period ](/influxdb3/cloud-dedicated/admin/databases/#retention-periods)(default is `0s`, infinite) | -| | `--max-tables` | [Maximum tables per database](/influxdb3/cloud-dedicated/admin/databases/#table-limit) (default is 500, `0` uses default) | -| | `--max-columns` | [Maximum columns per table](/influxdb3/cloud-dedicated/admin/databases/#column-limit) (default is 250, `0` uses default) | -| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | -| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | -| | `--template-timeformat` | Timestamp format for partition template (default is `%Y-%m-%d`) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/cloud-dedicated/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Create a database with an infinite retention period](#create-a-database-with-an-infinite-retention-period) -- [Create a database with a 30-day retention period](#create-a-database-with-a-30-day-retention-period) -- [Create a database with non-default table and column limits](#create-a-database-with-non-default-table-and-column-limits) -- [Create a database with a custom partition template](#create-a-database-with-a-custom-partition-template) - -### Create a database with an infinite retention period - - - - -```sh -influxctl database create mydb -``` - -### Create a database with a 30-day retention period - - - - -```sh -influxctl database create \ - --retention-period 30d \ - mydb -``` - -### Create a database with non-default table and column limits - - - - -```sh -influxctl database create \ - --max-tables 200 \ - --max-columns 150 \ - mydb -``` - -### Create a database with a custom partition template - -The following example creates a new `mydb` database and applies a partition -template that partitions by two tags (`room` and `sensor-type`) and by day using -the time format `%Y-%m-%d`: - - - - -```sh -influxctl database create \ - --template-tag room \ - --template-tag sensor-type \ - --template-tag-bucket customerID,1000 \ - --template-timeformat '%Y-%m-%d' \ - mydb -``` - -_For more information about custom partitioning, see -[Manage data partitioning](/influxdb3/cloud-dedicated/admin/custom-partitions/)._ - -{{% expand "View command updates" %}} - -#### v2.7.0 {date="2024-03-26"} - -- Introduce the `--template-tag-bucket` flag to group tag values into buckets - and partition by each tag bucket. - -#### v2.5.0 {date="2024-03-04"} - -- Introduce the `--template-tag` and `--template-timeformat` flags that define - a custom partition template for a database. - -{{% /expand %}} + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete.md index 23c76b6dc..f12ee7ccc 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete.md @@ -1,71 +1,13 @@ --- title: influxctl database delete description: > - The `influxctl database delete` command deletes a database from an InfluxDB - Cloud Dedicated cluster. + The `influxctl database delete` command deletes a database from an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_cloud_dedicated: parent: influxctl database weight: 301 +source: /shared/influxctl/database/delete.md --- -The `influxctl database delete` command deletes a database from an -{{< product-name omit=" Clustered" >}} cluster. - -## Usage - - - - -```sh -influxctl database delete [command options] [--force] [...] -``` - -> [!Warning] -> #### Cannot be undone -> -> Deleting a database is a destructive action that cannot be undone. -> -> #### Wait before writing to a new database with the same name -> -> After deleting a database from your {{% product-name omit=" Clustered" %}} -> cluster, you can reuse the name to create a new database, but **wait two to -> three minutes** after deleting the previous database before writing to the new -> database to allow write caches to clear. - -## Arguments - -| Argument | Description | -| :---------------- | :----------------------------- | -| **DATABASE_NAME** | Name of the database to delete | - -## Flags - -| Flag | | Description | -| :--- | :-------- | :---------------------------------------------------------- | -| | `--force` | Do not prompt for confirmation to delete (default is false) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/cloud-dedicated/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -##### Delete a database named "mydb" - - - - -```sh -influxctl database delete mydb -``` - -##### Delete multiple databases - - - - -```sh -influxctl database delete mydb1 mydb2 -``` + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/list.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/list.md index f3f4b3466..9a938b214 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/list.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/list.md @@ -1,34 +1,13 @@ --- title: influxctl database list description: > - The `influxctl database list` command lists all databases in an InfluxDB Cloud - Dedicated cluster. + The `influxctl database list` command lists all databases in an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_cloud_dedicated: parent: influxctl database weight: 301 +source: /shared/influxctl/database/list.md --- -The `influxctl database list` command lists all databases in an InfluxDB Cloud -Dedicated cluster. - -The `--format` flag lets you print the output in other formats. -The `json` format is available for programmatic parsing by other tooling. -Default: `table`. - -## Usage - -```sh -influxctl database list [--format=table|json] -``` - -## Flags - -| Flag | | Description | -| :--- | :--------- | :-------------------------------------------- | -| | `--format` | Output format (`table` _(default)_ or `json`) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/cloud-dedicated/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename.md new file mode 100644 index 000000000..ede2644e3 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename.md @@ -0,0 +1,14 @@ +--- +title: influxctl database rename +description: > + The `influxctl database rename` command renames a database in an + {{% product-name omit=" Clustered" %}} cluster. +menu: + influxdb3_cloud_dedicated: + parent: influxctl database +weight: 301 +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/database/rename.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete.md new file mode 100644 index 000000000..7e8624d67 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete.md @@ -0,0 +1,14 @@ +--- +title: influxctl database undelete +description: > + The `influxctl database undelete` command undeletes a previously deleted + database in an {{% product-name omit=" Clustered" %}} cluster. +menu: + influxdb3_cloud_dedicated: + parent: influxctl database +weight: 301 +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/database/undelete.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/update.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/update.md index 7e127c01e..d1f48b42b 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/update.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/database/update.md @@ -7,86 +7,7 @@ menu: influxdb3_cloud_dedicated: parent: influxctl database weight: 301 +source: /shared/influxctl/database/update.md --- -The `influxctl database update` command updates a database's retention period, -table (measurement), or column limits in InfluxDB. - -## Usage - - - -```sh -influxctl database update [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :----------------------------- | -| **DATABASE_NAME** | Name of the database to update | - -## Flags - -| Flag | | Description | -| :--- | :------------------- | :----------------------------------------------------------- | -| | `--retention-period` | [Database retention period ](/influxdb3/cloud-dedicated/admin/databases/#retention-periods)(default is `0s` or infinite) | -| | `--max-tables` | [Maximum tables per database](/influxdb3/cloud-dedicated/admin/databases/#table-limit) (default is 500, 0 uses default) | -| | `--max-columns` | [Maximum columns per table](/influxdb3/cloud-dedicated/admin/databases/#column-limit) (default is 250, 0 uses default) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/cloud-dedicated/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Update a database's retention period](#update-a-databases-retention-period) -- [Update a database's table limit](#update-a-databases-table-limit) -- [Update a database's column limit](#update-a-databases-column-limit) - -### Update a database's retention period - -```sh -influxctl database update --retention-period 1mo mydb -``` - -{{< flex >}} -{{% flex-content "half" %}} - -##### Valid durations units - -- `m`: minute -- `h`: hour -- `d`: day -- `w`: week -- `mo`: month -- `y`: year - -{{% /flex-content %}} -{{% flex-content "half" %}} - -##### Example retention period values - -- `0d`: infinite/none -- `3d`: 3 days -- `6w`: 6 weeks -- `1mo`: 1 month (30 days) -- `1y`: 1 year -- `30d30d`: 60 days -- `2.5d`: 60 hours - -{{% /flex-content %}} -{{< /flex >}} - -### Update a database's table limit - -```sh -influxctl database update --max-tables 300 mydb -``` - -### Update a database's column limit - -```sh -influxctl database update --max-columns 200 mydb -``` + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/_index.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/_index.md index bcab7f10b..a5761b73f 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/_index.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/_index.md @@ -9,25 +9,7 @@ menu: weight: 201 cascade: metadata: [influxctl 2.5.0+] +source: /shared/influxctl/table/_index.md --- -The `influxctl table` command and its subcommands manage tables in an -InfluxDB Cloud Dedicated cluster. - -## Usage - -```sh -influxctl table [subcommand] [flags] -``` - -## Subcommands - -| Subcommand | Description | -| :------------------------------------------------------------------------ | :------------- | -| [create](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/create/) | Create a table | - -## Flags - -| Flag | | Description | -| :--- | :------- | :------------------ | -| `-h` | `--help` | Output command help | + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/create.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/create.md index 8367e4926..1476a8c43 100644 --- a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/create.md +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/create.md @@ -9,101 +9,7 @@ weight: 301 related: - /influxdb3/cloud-dedicated/admin/custom-partitions/define-custom-partitions/ - /influxdb3/cloud-dedicated/admin/custom-partitions/partition-templates/ +source: /shared/influxctl/table/create.md --- -The `influxctl table create` command creates a new table in the specified -database in an {{< product-name omit=" Clustered" >}} cluster. - -#### Custom partitioning - -You can override the default partition template (the partition template of the target database) -with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` -flags when you create the table. -Provide a time format using [Rust strftime](/influxdb3/cloud-dedicated/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values -into a specified number of "buckets." -Each of these can be used as part of the partition template. -Be sure to follow [partitioning best practices](/influxdb3/cloud-dedicated/admin/custom-partitions/best-practices/). - -> [!Note] -> #### Always provide a time format when using custom partitioning -> -> If defining a custom partition template for your table with any of the -> `--template-*` flags, always include the `--template-timeformat` flag with a -> time format to use in your partition template. -> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. - -## Usage - -```sh -influxctl table create [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :-------------------------- | -| **DATABASE_NAME** | Name of the target database | -| **TABLE_NAME** | Table name | - -## Flags - -| Flag | | Description | -| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | -| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | -| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | -| | `--template-timeformat` | Timestamp format for partition template | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/cloud-dedicated/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Create a table](#create-a-table) -- [Create a table with a custom partition template](#create-a-table-with-a-custom-partition-template) - -In the following examples, replace: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: - The name of the database to create the table in. -- {{% code-placeholder-key %}}`TABLE_NAME` {{% /code-placeholder-key %}}: - The name of table to create. - -### Create a table - -{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} -```sh -influxctl table create DATABASE_NAME TABLE_NAME -``` -{{% /code-placeholders %}} - -### Create a table with a custom partition template - -The following example creates a new table and applies a partition -template that partitions by two tags (`room` and `sensor-type`) and by day using -the time format `%Y-%m-%d`: - -{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} -```sh -influxctl table create \ - --template-tag room \ - --template-tag sensor-type \ - --template-tag-bucket customerID,1000 \ - --template-timeformat '%Y-%m-%d' \ - DATABASE_NAME \ - TABLE_NAME -``` -{{% /code-placeholders %}} - -_For more information about custom partitioning, see -[Manage data partitioning](/influxdb3/cloud-dedicated/admin/custom-partitions/)._ - -{{% expand "View command updates" %}} - -#### v2.7.0 {date="2024-03-26"} - -- Introduce the `--template-tag-bucket` flag to group tag values into buckets - and partition by each tag bucket. - -{{% /expand %}} + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete.md new file mode 100644 index 000000000..b47ace280 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete.md @@ -0,0 +1,15 @@ +--- +title: influxctl table delete +description: > + The `influxctl table delete` command deletes a specified table from a database. +menu: + influxdb3_cloud_dedicated: + parent: influxctl table +weight: 301 +related: + - /influxdb3/cloud-dedicated/admin/tables/delete/ +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/delete.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/_index.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/_index.md new file mode 100644 index 000000000..5e9475aad --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/_index.md @@ -0,0 +1,15 @@ +--- +title: influxctl table iceberg +description: > + The `influxctl table iceberg` command and its subcommands enable or disable + Iceberg-compatible exports for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_cloud_dedicated: + parent: influxctl table +weight: 301 +cascade: + metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/iceberg/_index.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/disable.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/disable.md new file mode 100644 index 000000000..b67192c2b --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/disable.md @@ -0,0 +1,13 @@ +--- +title: influxctl table iceberg disable +description: > + The `influxctl table iceberg disable` command disables Iceberg-compatible exports + for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_cloud_dedicated: + parent: influxctl table iceberg +weight: 401 +source: /shared/influxctl/table/iceberg/disable.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/enable.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/enable.md new file mode 100644 index 000000000..5f02ba002 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/iceberg/enable.md @@ -0,0 +1,13 @@ +--- +title: influxctl table iceberg enable +description: > + The `influxctl table iceberg enable` command enables Iceberg-compatible exports + for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_cloud_dedicated: + parent: influxctl table iceberg +weight: 401 +source: /shared/influxctl/table/iceberg/enable.md +--- + + diff --git a/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list.md b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list.md new file mode 100644 index 000000000..de83b1432 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list.md @@ -0,0 +1,15 @@ +--- +title: influxctl table list +description: > + The `influxctl table list` command lists all tables in the specified database. +menu: + influxdb3_cloud_dedicated: + parent: influxctl table +weight: 301 +related: + - /influxdb3/cloud-dedicated/admin/tables/list/ +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/list.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/_index.md b/content/influxdb3/clustered/reference/cli/influxctl/database/_index.md index 7ff42e7dd..3b42a31a4 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/database/_index.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/_index.md @@ -2,34 +2,12 @@ title: influxctl database description: > The `influxctl database` command and its subcommands manage databases in an - InfluxDB cluster. + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_clustered: parent: influxctl weight: 201 +source: /shared/influxctl/database/_index.md --- -The `influxctl database` command and its subcommands manage databases in an -InfluxDB cluster. - -## Usage - -```sh -influxctl database [subcommand] [flags] -``` - -## Subcommands - -| Subcommand | Description | -| :--------------------------------------------------------------------------- | :------------------ | -| [create](/influxdb3/clustered/reference/cli/influxctl/database/create/) | Create a database | -| [delete](/influxdb3/clustered/reference/cli/influxctl/database/delete/) | Delete a database | -| [list](/influxdb3/clustered/reference/cli/influxctl/database/list/) | List databases | -| [update](/influxdb3/clustered/reference/cli/influxctl/database/update/) | Update a database | -| help, h | Output command help | - -## Flags - -| Flag | | Description | -| :--- | :------- | :------------------ | -| `-h` | `--help` | Output command help | + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/create.md b/content/influxdb3/clustered/reference/cli/influxctl/database/create.md index 7a71ec00d..7bb2031c0 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/database/create.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/create.md @@ -1,7 +1,8 @@ --- title: influxctl database create description: > - The `influxctl database create` command creates a new database in an InfluxDB cluster. + The `influxctl database create` command creates a new database in an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_clustered: parent: influxctl database @@ -9,173 +10,7 @@ weight: 301 related: - /influxdb3/clustered/admin/custom-partitions/define-custom-partitions/ - /influxdb3/clustered/admin/custom-partitions/partition-templates/ +source: /shared/influxctl/database/create.md --- -The `influxctl database create` command creates a new database with a specified -retention period in an {{< product-name omit=" Clustered" >}} cluster. - -The retention period defines the maximum age of data retained in the database, -based on the timestamp of the data. -The retention period value is a time duration value made up of a numeric value -plus a duration unit. For example, `30d` means 30 days. -A zero duration retention period is infinite and data will not expire. -The retention period value cannot be negative or contain whitespace. - -{{< flex >}} -{{% flex-content "half" %}} - -##### Valid durations units include - -- **m**: minute -- **h**: hour -- **d**: day -- **w**: week -- **mo**: month -- **y**: year - -{{% /flex-content %}} -{{% flex-content "half" %}} - -##### Example retention period values - -- `0d`: infinite/none -- `3d`: 3 days -- `6w`: 6 weeks -- `1mo`: 1 month (30 days) -- `1y`: 1 year -- `30d30d`: 60 days -- `2.5d`: 60 hours - -{{% /flex-content %}} -{{< /flex >}} - -#### Custom partitioning - -You can override the default partition template (`%Y-%m-%d`) of the database -with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` -flags when you create the database. -Provide a time format using [Rust strftime](/influxdb3/clustered/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values -into a specified number of "buckets." -Each of these can be used as part of the partition template. -Be sure to follow [partitioning best practices](/influxdb3/clustered/admin/custom-partitions/best-practices/). - -> [!Note] -> #### Always provide a time format when using custom partitioning -> -> If defining a custom partition template for your database with any of the -> `--template-*` flags, always include the `--template-timeformat` flag with a -> time format to use in your partition template. -> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. - -> [!Warning] -> #### Wait before writing to a new database with the same name as a deleted database -> -> After deleting a database from your {{% product-name omit=" Clustered" %}} -> cluster, you can reuse the name to create a new database, but **wait two to -> three minutes** after deleting the previous database before writing to the new -> database to allow write caches to clear. - -## Usage - - - - -```sh -influxctl database create [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :--------------------- | -| **DATABASE_NAME** | InfluxDB database name | - -## Flags - -| Flag | | Description | -| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | -| | `--retention-period` | [Database retention period ](/influxdb3/clustered/admin/databases/#retention-periods)(default is `0s`, infinite) | -| | `--max-tables` | [Maximum tables per database](/influxdb3/clustered/admin/databases/#table-limit) (default is 500, `0` uses default) | -| | `--max-columns` | [Maximum columns per table](/influxdb3/clustered/admin/databases/#column-limit) (default is 250, `0` uses default) | -| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | -| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | -| | `--template-timeformat` | Timestamp format for partition template (default is `%Y-%m-%d`) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/clustered/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Create a database with an infinite retention period](#create-a-database-with-an-infinite-retention-period) -- [Create a database with a 30-day retention period](#create-a-database-with-a-30-day-retention-period) -- [Create a database with non-default table and column limits](#create-a-database-with-non-default-table-and-column-limits) -- [Create a database with a custom partition template](#create-a-database-with-a-custom-partition-template) - -### Create a database with an infinite retention period - - - - -```sh -influxctl database create mydb -``` - -### Create a database with a 30-day retention period - - - - -```sh -influxctl database create \ - --retention-period 30d \ - mydb -``` - -### Create a database with non-default table and column limits - - - - -```sh -influxctl database create \ - --max-tables 200 \ - --max-columns 150 \ - mydb -``` - -### Create a database with a custom partition template - -The following example creates a new `mydb` database and applies a partition -template that partitions by two tags (`room` and `sensor-type`) and by day using -the time format `%Y-%m-%d`: - - - - -```sh -influxctl database create \ - --template-tag room \ - --template-tag sensor-type \ - --template-tag-bucket customerID,1000 \ - --template-timeformat '%Y-%m-%d' \ - mydb -``` - -_For more information about custom partitioning, see -[Manage data partitioning](/influxdb3/clustered/admin/custom-partitions/)._ - -{{% expand "View command updates" %}} - -#### v2.7.0 {date="2024-03-26"} - -- Introduce the `--template-tag-bucket` flag to group tag values into buckets - and partition by each tag bucket. - -#### v2.5.0 {date="2024-03-04"} - -- Introduce the `--template-tag` and `--template-timeformat` flags that define - a custom partition template for a database. - -{{% /expand %}} + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/delete.md b/content/influxdb3/clustered/reference/cli/influxctl/database/delete.md index 990a0b662..70bd0e33e 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/database/delete.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/delete.md @@ -7,65 +7,7 @@ menu: influxdb3_clustered: parent: influxctl database weight: 301 +source: /shared/influxctl/database/delete.md --- -The `influxctl database delete` command deletes a database from an -{{< product-name omit=" Clustered" >}} cluster. - -## Usage - - - - -```sh -influxctl database delete [command options] [--force] [...] -``` - -> [!Warning] -> #### Cannot be undone -> -> Deleting a database is a destructive action that cannot be undone. -> -> #### Wait before writing to a new database with the same name -> -> After deleting a database from your {{% product-name omit=" Clustered" %}} -> cluster, you can reuse the name to create a new database, but **wait two to -> three minutes** after deleting the previous database before writing to the new -> database to allow write caches to clear. - -## Arguments - -| Argument | Description | -| :---------------- | :----------------------------- | -| **DATABASE_NAME** | Name of the database to delete | - -## Flags - -| Flag | | Description | -| :--- | :-------- | :---------------------------------------------------------- | -| | `--force` | Do not prompt for confirmation to delete (default is false) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/clustered/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -##### Delete a database named "mydb" - - - - -```sh -influxctl database delete mydb -``` - -##### Delete multiple databases - - - - -```sh -influxctl database delete mydb1 mydb2 -``` + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/list.md b/content/influxdb3/clustered/reference/cli/influxctl/database/list.md index 1bb620217..d8c7241d4 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/database/list.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/list.md @@ -1,34 +1,13 @@ --- title: influxctl database list description: > - The `influxctl database list` command lists all databases in an InfluxDB Cloud - Dedicated cluster. + The `influxctl database list` command lists all databases in an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_clustered: parent: influxctl database weight: 301 +source: /shared/influxctl/database/list.md --- -The `influxctl database list` command lists all databases in an InfluxDB Cloud -Dedicated cluster. - -The `--format` flag lets you print the output in other formats. -The `json` format is available for programmatic parsing by other tooling. -Default: `table`. - -## Usage - -```sh -influxctl database list [--format=table|json] -``` - -## Flags - -| Flag | | Description | -| :--- | :--------- | :-------------------------------------------- | -| | `--format` | Output format (`table` _(default)_ or `json`) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/clustered/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/rename.md b/content/influxdb3/clustered/reference/cli/influxctl/database/rename.md new file mode 100644 index 000000000..36f21f978 --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/rename.md @@ -0,0 +1,14 @@ +--- +title: influxctl database rename +description: > + The `influxctl database rename` command renames a database in an + {{% product-name omit=" Clustered" %}} cluster. +menu: + influxdb3_clustered: + parent: influxctl database +weight: 301 +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/database/rename.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/undelete.md b/content/influxdb3/clustered/reference/cli/influxctl/database/undelete.md new file mode 100644 index 000000000..3ac70ed62 --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/undelete.md @@ -0,0 +1,14 @@ +--- +title: influxctl database undelete +description: > + The `influxctl database undelete` command undeletes a previously deleted + database in an {{% product-name omit=" Clustered" %}} cluster. +menu: + influxdb3_clustered: + parent: influxctl database +weight: 301 +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/database/undelete.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/database/update.md b/content/influxdb3/clustered/reference/cli/influxctl/database/update.md index 13f2884d6..2a04432ce 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/database/update.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/database/update.md @@ -7,86 +7,7 @@ menu: influxdb3_clustered: parent: influxctl database weight: 301 +source: /shared/influxctl/database/update.md --- -The `influxctl database update` command updates a database's retention period, -table (measurement), or column limits in InfluxDB. - -## Usage - - - -```sh -influxctl database update [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :----------------------------- | -| **DATABASE_NAME** | Name of the database to update | - -## Flags - -| Flag | | Description | -| :--- | :------------------- | :----------------------------------------------------------- | -| | `--retention-period` | [Database retention period ](/influxdb3/clustered/admin/databases/#retention-periods)(default is `0s` or infinite) | -| | `--max-tables` | [Maximum tables per database](/influxdb3/clustered/admin/databases/#table-limit) (default is 500, `0` uses default) | -| | `--max-columns` | [Maximum columns per table](/influxdb3/clustered/admin/databases/#column-limit) (default is 250, `0` uses default) | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/clustered/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Update a database's retention period](#update-a-databases-retention-period) -- [Update a database's table limit](#update-a-databases-table-limit) -- [Update a database's column limit](#update-a-databases-column-limit) - -### Update a database's retention period - -```sh -influxctl database update --retention-period 1mo mydb -``` - -{{< flex >}} -{{% flex-content "half" %}} - -##### Valid durations units - -- `m`: minute -- `h`: hour -- `d`: day -- `w`: week -- `mo`: month -- `y`: year - -{{% /flex-content %}} -{{% flex-content "half" %}} - -##### Example retention period values - -- `0d`: infinite/none -- `3d`: 3 days -- `6w`: 6 weeks -- `1mo`: 1 month (30 days) -- `1y`: 1 year -- `30d30d`: 60 days -- `2.5d`: 60 hours - -{{% /flex-content %}} -{{< /flex >}} - -### Update a database's table limit - -```sh -influxctl database update --max-tables 300 mydb -``` - -### Update a database's column limit - -```sh -influxctl database update --max-columns 200 mydb -``` + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/_index.md b/content/influxdb3/clustered/reference/cli/influxctl/table/_index.md index 359ded2ad..8490436ed 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/table/_index.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/_index.md @@ -1,31 +1,15 @@ --- title: influxctl table description: > - The `influxctl table` command and its subcommands manage tables in an InfluxDB cluster. + The `influxctl table` command and its subcommands manage tables in an + {{% product-name omit=" Clustered" %}} cluster. menu: influxdb3_clustered: parent: influxctl weight: 201 cascade: metadata: [influxctl 2.5.0+] +source: /shared/influxctl/table/_index.md --- -The `influxctl table` command and its subcommands manage tables in an InfluxDB cluster. - -## Usage - -```sh -influxctl table [subcommand] [flags] -``` - -## Subcommands - -| Subcommand | Description | -| :------------------------------------------------------------------ | :------------- | -| [create](/influxdb3/clustered/reference/cli/influxctl/table/create/) | Create a table | - -## Flags - -| Flag | | Description | -| :--- | :------- | :------------------ | -| `-h` | `--help` | Output command help | + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/create.md b/content/influxdb3/clustered/reference/cli/influxctl/table/create.md index 31bc72495..e70e01ff8 100644 --- a/content/influxdb3/clustered/reference/cli/influxctl/table/create.md +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/create.md @@ -9,101 +9,7 @@ weight: 301 related: - /influxdb3/clustered/admin/custom-partitions/define-custom-partitions/ - /influxdb3/clustered/admin/custom-partitions/partition-templates/ +source: /shared/influxctl/table/create.md --- -The `influxctl table create` command creates a new table in the specified -database in an {{< product-name omit=" Clustered" >}} cluster. - -#### Custom partitioning - -You can override the default partition template (the partition template of the target database) -with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` -flags when you create the table. -Provide a time format using [Rust strftime](/influxdb3/clustered/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values -into a specified number of "buckets." -Each of these can be used as part of the partition template. -Be sure to follow [partitioning best practices](/influxdb3/clustered/admin/custom-partitions/best-practices/). - -> [!Note] -> #### Always provide a time format when using custom partitioning -> -> If defining a custom partition template for your table with any of the -> `--template-*` flags, always include the `--template-timeformat` flag with a -> time format to use in your partition template. -> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. - -## Usage - -```sh -influxctl table create [flags] -``` - -## Arguments - -| Argument | Description | -| :---------------- | :-------------------------- | -| **DATABASE_NAME** | Name of the target database | -| **TABLE_NAME** | Table name | - -## Flags - -| Flag | | Description | -| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | -| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | -| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | -| | `--template-timeformat` | Timestamp format for partition template | -| `-h` | `--help` | Output command help | - -{{% caption %}} -_Also see [`influxctl` global flags](/influxdb3/clustered/reference/cli/influxctl/#global-flags)._ -{{% /caption %}} - -## Examples - -- [Create a table](#create-a-table) -- [Create a table with a custom partition template](#create-a-table-with-a-custom-partition-template) - -In the following examples, replace: - -- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: - The name of the database to create the table in. -- {{% code-placeholder-key %}}`TABLE_NAME` {{% /code-placeholder-key %}}: - The name of table to create. - -### Create a table - -{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} -```sh -influxctl table create DATABASE_NAME TABLE_NAME -``` -{{% /code-placeholders %}} - -### Create a table with a custom partition template - -The following example creates a new table and applies a partition -template that partitions by two tags (`room` and `sensor-type`) and by day using -the time format `%Y-%m-%d`: - -{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} -```sh -influxctl table create \ - --template-tag room \ - --template-tag sensor-type \ - --template-tag-bucket customerID,1000 \ - --template-timeformat '%Y-%m-%d' \ - DATABASE_NAME \ - TABLE_NAME -``` -{{% /code-placeholders %}} - -_For more information about custom partitioning, see -[Manage data partitioning](/influxdb3/clustered/admin/custom-partitions/)._ - -{{% expand "View command updates" %}} - -#### v2.7.0 {date="2024-03-26"} - -- Introduce the `--template-tag-bucket` flag to group tag values into buckets - and partition by each tag bucket. - -{{% /expand %}} + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/delete.md b/content/influxdb3/clustered/reference/cli/influxctl/table/delete.md new file mode 100644 index 000000000..be2858639 --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/delete.md @@ -0,0 +1,15 @@ +--- +title: influxctl table delete +description: > + The `influxctl table delete` command deletes a specified table from a database. +menu: + influxdb3_clustered: + parent: influxctl table +weight: 301 +related: + - /influxdb3/clustered/admin/tables/delete/ +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/delete.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/_index.md b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/_index.md new file mode 100644 index 000000000..905c30a40 --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/_index.md @@ -0,0 +1,15 @@ +--- +title: influxctl table iceberg +description: > + The `influxctl table iceberg` command and its subcommands enable or disable + Iceberg-compatible exports for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_clustered: + parent: influxctl table +weight: 301 +cascade: + metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/iceberg/_index.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/disable.md b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/disable.md new file mode 100644 index 000000000..1d2f7664e --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/disable.md @@ -0,0 +1,13 @@ +--- +title: influxctl table iceberg disable +description: > + The `influxctl table iceberg disable` command disables Iceberg-compatible exports + for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_clustered: + parent: influxctl table iceberg +weight: 401 +source: /shared/influxctl/table/iceberg/disable.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/enable.md b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/enable.md new file mode 100644 index 000000000..e7ce6c021 --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/iceberg/enable.md @@ -0,0 +1,13 @@ +--- +title: influxctl table iceberg enable +description: > + The `influxctl table iceberg enable` command enables Iceberg-compatible exports + for a table in an InfluxDB Cloud Dedicated cluster. +menu: + influxdb3_clustered: + parent: influxctl table iceberg +weight: 401 +source: /shared/influxctl/table/iceberg/enable.md +--- + + diff --git a/content/influxdb3/clustered/reference/cli/influxctl/table/list.md b/content/influxdb3/clustered/reference/cli/influxctl/table/list.md new file mode 100644 index 000000000..59484772f --- /dev/null +++ b/content/influxdb3/clustered/reference/cli/influxctl/table/list.md @@ -0,0 +1,15 @@ +--- +title: influxctl table list +description: > + The `influxctl table list` command lists all tables in the specified database. +menu: + influxdb3_clustered: + parent: influxctl table +weight: 301 +related: + - /influxdb3/clustered/admin/tables/list/ +metadata: [influxctl 2.10.2+] +source: /shared/influxctl/table/list.md +--- + + diff --git a/content/shared/influxctl/database/_index.md b/content/shared/influxctl/database/_index.md new file mode 100644 index 000000000..6008bfe4f --- /dev/null +++ b/content/shared/influxctl/database/_index.md @@ -0,0 +1,27 @@ + +The `influxctl database` command and its subcommands manage databases in an +{{% product-name omit=" Clustered" %}} cluster. + +## Usage + +```sh +influxctl database [subcommand] [flags] +``` + +## Subcommands + +| Subcommand | Description | +| :------------------------------------------------------------------------ | :------------------ | +| [create](/influxdb3/version/reference/cli/influxctl/database/create/) | Create a database | +| [delete](/influxdb3/version/reference/cli/influxctl/database/delete/) | Delete a database | +| [list](/influxdb3/version/reference/cli/influxctl/database/list/) | List databases | +| [rename](/influxdb3/version/reference/cli/influxctl/database/rename/) | Rename a database | +| [undelete](/influxdb3/version/reference/cli/influxctl/database/undelete/) | Undelete a database | +| [update](/influxdb3/version/reference/cli/influxctl/database/update/) | Update a database | +| help, h | Output command help | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | diff --git a/content/shared/influxctl/database/create.md b/content/shared/influxctl/database/create.md new file mode 100644 index 000000000..ef1563a7b --- /dev/null +++ b/content/shared/influxctl/database/create.md @@ -0,0 +1,169 @@ + +The `influxctl database create` command creates a new database with a specified +retention period in an {{< product-name omit=" Clustered" >}} cluster. + +The retention period defines the maximum age of data retained in the database, +based on the timestamp of the data. +The retention period value is a time duration value made up of a numeric value +plus a duration unit. For example, `30d` means 30 days. +A zero duration retention period is infinite and data will not expire. +The retention period value cannot be negative or contain whitespace. + +{{< flex >}} +{{% flex-content "half" %}} + +##### Valid durations units include + +- **m**: minute +- **h**: hour +- **d**: day +- **w**: week +- **mo**: month +- **y**: year + +{{% /flex-content %}} +{{% flex-content "half" %}} + +##### Example retention period values + +- `0d`: infinite/none +- `3d`: 3 days +- `6w`: 6 weeks +- `1mo`: 1 month (30 days) +- `1y`: 1 year +- `30d30d`: 60 days +- `2.5d`: 60 hours + +{{% /flex-content %}} +{{< /flex >}} + +#### Custom partitioning + +You can override the default partition template (`%Y-%m-%d`) of the database +with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` +flags when you create the database. +Provide a time format using [Rust strftime](/influxdb3/version/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values +into a specified number of "buckets." +Each of these can be used as part of the partition template. +Be sure to follow [partitioning best practices](/influxdb3/version/admin/custom-partitions/best-practices/). + +> [!Note] +> #### Always provide a time format when using custom partitioning +> +> If defining a custom partition template for your database with any of the +> `--template-*` flags, always include the `--template-timeformat` flag with a +> time format to use in your partition template. +> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. + +> [!Warning] +> #### Wait before writing to a new database with the same name as a deleted database +> +> After deleting a database from your {{% product-name omit=" Clustered" %}} +> cluster, you can reuse the name to create a new database, but **wait two to +> three minutes** after deleting the previous database before writing to the new +> database to allow write caches to clear. + +## Usage + + + + +```sh +influxctl database create [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :--------------------- | +| **DATABASE_NAME** | InfluxDB database name | + +## Flags + +| Flag | | Description | +| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | +| | `--retention-period` | [Database retention period ](/influxdb3/version/admin/databases/#retention-periods)(default is `0s`, infinite) | +| | `--max-tables` | [Maximum tables per database](/influxdb3/version/admin/databases/#table-limit) (default is 500, `0` uses default) | +| | `--max-columns` | [Maximum columns per table](/influxdb3/version/admin/databases/#column-limit) (default is 250, `0` uses default) | +| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | +| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | +| | `--template-timeformat` | Timestamp format for partition template (default is `%Y-%m-%d`) | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} + +## Examples + +- [Create a database with an infinite retention period](#create-a-database-with-an-infinite-retention-period) +- [Create a database with a 30-day retention period](#create-a-database-with-a-30-day-retention-period) +- [Create a database with non-default table and column limits](#create-a-database-with-non-default-table-and-column-limits) +- [Create a database with a custom partition template](#create-a-database-with-a-custom-partition-template) + +### Create a database with an infinite retention period + + + + +```sh +influxctl database create mydb +``` + +### Create a database with a 30-day retention period + + + + +```sh +influxctl database create \ + --retention-period 30d \ + mydb +``` + +### Create a database with non-default table and column limits + + + + +```sh +influxctl database create \ + --max-tables 200 \ + --max-columns 150 \ + mydb +``` + +### Create a database with a custom partition template + +The following example creates a new `mydb` database and applies a partition +template that partitions by two tags (`room` and `sensor-type`) and by day using +the time format `%Y-%m-%d`: + + + + +```sh +influxctl database create \ + --template-tag room \ + --template-tag sensor-type \ + --template-tag-bucket customerID,1000 \ + --template-timeformat '%Y-%m-%d' \ + mydb +``` + +_For more information about custom partitioning, see +[Manage data partitioning](/influxdb3/version/admin/custom-partitions/)._ + +{{% expand "View command updates" %}} + +#### v2.7.0 {date="2024-03-26"} + +- Introduce the `--template-tag-bucket` flag to group tag values into buckets + and partition by each tag bucket. + +#### v2.5.0 {date="2024-03-04"} + +- Introduce the `--template-tag` and `--template-timeformat` flags that define + a custom partition template for a database. + +{{% /expand %}} diff --git a/content/shared/influxctl/database/delete.md b/content/shared/influxctl/database/delete.md new file mode 100644 index 000000000..bd9936066 --- /dev/null +++ b/content/shared/influxctl/database/delete.md @@ -0,0 +1,68 @@ + +The `influxctl database delete` command deletes a database from an +{{< product-name omit=" Clustered" >}} cluster. + +## Usage + + + + +```sh +influxctl database delete [command options] [--force] [...] +``` + +> [!Warning] +> #### Cannot be undone +> +> Deleting a database is a destructive action that cannot be undone. +> +> #### Wait before writing to a new database with the same name +> +> After deleting a database from your {{% product-name omit=" Clustered" %}} +> cluster, you can reuse the name to create a new database, but **wait two to +> three minutes** after deleting the previous database before writing to the new +> database to allow write caches to clear. +> +> #### Tokens still grant access to databases with the same name +> +> [Database tokens](/influxdb3/version/admin/tokens/database/) are associated to +> databases by name. If you create a new database with the same name, tokens +> that granted access to the deleted database will also grant access to the new +> database. + +## Arguments + +| Argument | Description | +| :---------------- | :----------------------------- | +| **DATABASE_NAME** | Name of the database to delete | + +## Flags + +| Flag | | Description | +| :--- | :-------- | :---------------------------------------------------------- | +| | `--force` | Do not prompt for confirmation to delete (default is false) | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} + +## Examples + +##### Delete a database named "mydb" + + + + +```sh +influxctl database delete mydb +``` + +##### Delete multiple databases + + + + +```sh +influxctl database delete mydb1 mydb2 +``` diff --git a/content/shared/influxctl/database/list.md b/content/shared/influxctl/database/list.md new file mode 100644 index 000000000..6315497d5 --- /dev/null +++ b/content/shared/influxctl/database/list.md @@ -0,0 +1,24 @@ + +The `influxctl database list` command lists all databases in an {{% product-name omit=" Clustered" %}} +cluster. + +The `--format` flag lets you print the output in other formats. +The `json` format is available for programmatic parsing by other tooling. +Default: `table`. + +## Usage + +```sh +influxctl database list [--format=table|json] +``` + +## Flags + +| Flag | | Description | +| :--- | :--------- | :-------------------------------------------- | +| | `--format` | Output format (`table` _(default)_ or `json`) | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/database/rename.md b/content/shared/influxctl/database/rename.md new file mode 100644 index 000000000..834ac7207 --- /dev/null +++ b/content/shared/influxctl/database/rename.md @@ -0,0 +1,37 @@ + +The `influxctl database rename` command renames a database in an +{{% product-name omit=" Clustered" %}} cluster. +This command does _not_ change the database ID, database properties, or the +data stored in the database. + +> [!Warning] +> #### Renaming a database requires new tokens +> +> [Database tokens](/influxdb3/version/admin/tokens/database/) are associated to +> databases by name. After renaming a database, tokens referencing the old name +> no longer function. You must generate tokens for the new database name. + +## Usage + + + +```bash +influxctl database rename [flags] +``` + +## Arguments + +| Argument | Description | +| :------------------ | :--------------------------- | +| **CURRENT_DB_NAME** | Current name of the database | +| **NEW_DB_NAME** | New name for the database | + +## Flags + +| Flag | | Description | +| :--- | :--------- | :-------------------------------------------- | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/database/undelete.md b/content/shared/influxctl/database/undelete.md new file mode 100644 index 000000000..ca539419e --- /dev/null +++ b/content/shared/influxctl/database/undelete.md @@ -0,0 +1,33 @@ + +The `influxctl database undelete` command undeletes a previously deleted +database in an {{% product-name omit=" Clustered" %}} cluster and restores the +database with the same retention period, table, and column limits as when it was +deleted. + +> [!Important] +> The database name must match the name of the deleted database and +> **a new database with the same name cannot exist**. + +## Usage + + + +```bash +influxctl database undelete [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :----------------------------------- | +| **DATABASE_NAME** | The name of the database to undelete | + +## Flags + +| Flag | | Description | +| :--- | :--------- | :-------------------------------------------- | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/database/update.md b/content/shared/influxctl/database/update.md new file mode 100644 index 000000000..0612d6341 --- /dev/null +++ b/content/shared/influxctl/database/update.md @@ -0,0 +1,82 @@ + +The `influxctl database update` command updates a database's retention period, +table (measurement), or column limits in InfluxDB. + +## Usage + + + +```sh +influxctl database update [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :----------------------------- | +| **DATABASE_NAME** | Name of the database to update | + +## Flags + +| Flag | | Description | +| :--- | :------------------- | :--------------------------------------------------------------------------------------------------------------- | +| | `--retention-period` | [Database retention period ](/influxdb3/version/admin/databases/#retention-periods)(default is `0s` or infinite) | +| | `--max-tables` | [Maximum tables per database](/influxdb3/version/admin/databases/#table-limit) (default is 500, 0 uses default) | +| | `--max-columns` | [Maximum columns per table](/influxdb3/version/admin/databases/#column-limit) (default is 250, 0 uses default) | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} + +## Examples + +- [Update a database's retention period](#update-a-databases-retention-period) +- [Update a database's table limit](#update-a-databases-table-limit) +- [Update a database's column limit](#update-a-databases-column-limit) + +### Update a database's retention period + +```sh +influxctl database update --retention-period 1mo mydb +``` + +{{< flex >}} +{{% flex-content "half" %}} + +##### Valid durations units + +- `m`: minute +- `h`: hour +- `d`: day +- `w`: week +- `mo`: month +- `y`: year + +{{% /flex-content %}} +{{% flex-content "half" %}} + +##### Example retention period values + +- `0d`: infinite/none +- `3d`: 3 days +- `6w`: 6 weeks +- `1mo`: 1 month (30 days) +- `1y`: 1 year +- `30d30d`: 60 days +- `2.5d`: 60 hours + +{{% /flex-content %}} +{{< /flex >}} + +### Update a database's table limit + +```sh +influxctl database update --max-tables 300 mydb +``` + +### Update a database's column limit + +```sh +influxctl database update --max-columns 200 mydb +``` diff --git a/content/shared/influxctl/release-notes.md b/content/shared/influxctl/release-notes.md index 4e35c655a..288f6b6b9 100644 --- a/content/shared/influxctl/release-notes.md +++ b/content/shared/influxctl/release-notes.md @@ -1,3 +1,35 @@ +## v2.10.2 {date="2025-06-30"} + +### Features + +- Add new table management commands: + - [`influxctl table list`](/influxdb3/version/reference/cli/influxctl/table/list/) + - [`influxctl table delete`](/influxdb3/version/reference/cli/influxctl/table/delete/) + - [`influxctl table iceberg`](/influxdb3/version/reference/cli/influxctl/table/iceberg/) + - [`influxctl table iceberg enable`](/influxdb3/version/reference/cli/influxctl/table/iceberg/enable/) + - [`influxctl table iceberg disable`](/influxdb3/version/reference/cli/influxctl/table/iceberg/disable/) +- Add new database management commands: + - [`influxctl database rename`](/influxdb3/version/reference/cli/influxctl/database/rename/) + - [`influxctl database undelete`](/influxdb3/version/reference/cli/influxctl/database/undelete/) + +### Bug fixes + +- Ensure the `INFLUXCTL_PROFILE` environment variable overrides the default + connection profile file path. + +### Dependency updates + +- Update `github.com/apache/arrow-go/v18` from 18.3.0 to 18.3.1. +- Update `github.com/go-git/go-git/v5` from 5.16.0 to 5.16.2. +- Update `github.com/google/go-containerregistry` from 0.20.5 to 0.20.6. +- Update `github.com/urfave/cli/v2` from 2.27.6 to 2.27.7. +- Update `golang.org/x/mod` from 0.24.0 to 0.25.0. +- Update `google.golang.org/grpc` from 1.72.1 to 1.73.0. +- Update Go to 1.24.4. +- Update protobuf files. + +--- + ## v2.10.1 {date="2025-05-30"} ### Features diff --git a/content/shared/influxctl/table/_index.md b/content/shared/influxctl/table/_index.md new file mode 100644 index 000000000..1aa201434 --- /dev/null +++ b/content/shared/influxctl/table/_index.md @@ -0,0 +1,29 @@ + +The `influxctl table` command and its subcommands manage tables in an +{{% product-name omit=" Clustered" %}} cluster. + +## Usage + +```sh +influxctl table [subcommand] [flags] +``` + +## Subcommands + +| Subcommand | Description | +| :------------------------------------------------------------------- | :--------------------------------- | +| [create](/influxdb3/version/reference/cli/influxctl/table/create/) | Create a table | +| [delete](/influxdb3/version/reference/cli/influxctl/table/delete/) | Delete a table | +| [iceberg](/influxdb3/version/reference/cli/influxctl/table/iceberg/) | Manage iceberg exports for a table | +| [list](/influxdb3/version/reference/cli/influxctl/table/list/) | List tables | +| help, h | Output command help | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/table/create.md b/content/shared/influxctl/table/create.md new file mode 100644 index 000000000..0278d52d1 --- /dev/null +++ b/content/shared/influxctl/table/create.md @@ -0,0 +1,101 @@ + +The `influxctl table create` command creates a new table in the specified +database in an {{< product-name omit=" Clustered" >}} cluster. + +#### Custom partitioning + +You can override the default partition template (the partition template of the target database) +with the `--template-tag`, `--template-tag-bucket`, and `--template-timeformat` +flags when you create the table. +Provide a time format using [Rust strftime](/influxdb3/version/admin/custom-partitions/partition-templates/#time-part-templates), partition by specific tag, or partition tag values +into a specified number of "buckets." +Each of these can be used as part of the partition template. +Be sure to follow [partitioning best practices](/influxdb3/version/admin/custom-partitions/best-practices/). + +> [!Note] +> #### Always provide a time format when using custom partitioning +> +> If defining a custom partition template for your table with any of the +> `--template-*` flags, always include the `--template-timeformat` flag with a +> time format to use in your partition template. +> Otherwise, InfluxDB omits time from the partition template and won't compact partitions. + +## Usage + +```sh +influxctl table create [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :-------------------------- | +| **DATABASE_NAME** | Name of the target database | +| **TABLE_NAME** | Table name | + +## Flags + +| Flag | | Description | +| :--- | :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- | +| | `--template-tag` | Tag to add to partition template (can include multiple of this flag) | +| | `--template-tag-bucket` | Tag and number of buckets to partition tag values into separated by a comma--for example: `tag1,100` (can include multiple of this flag) | +| | `--template-timeformat` | Timestamp format for partition template | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} + +## Examples + +- [Create a table](#create-a-table) +- [Create a table with a custom partition template](#create-a-table-with-a-custom-partition-template) + +In the following examples, replace: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + The name of the database to create the table in. +- {{% code-placeholder-key %}}`TABLE_NAME` {{% /code-placeholder-key %}}: + The name of table to create. + +### Create a table + +{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} +```sh +influxctl table create DATABASE_NAME TABLE_NAME +``` +{{% /code-placeholders %}} + +### Create a table with a custom partition template + +The following example creates a new table and applies a partition +template that partitions by two tags (`room` and `sensor-type`) and by day using +the time format `%Y-%m-%d`: + +{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} +```sh +influxctl table create \ + --template-tag room \ + --template-tag sensor-type \ + --template-tag-bucket customerID,1000 \ + --template-timeformat '%Y-%m-%d' \ + DATABASE_NAME \ + TABLE_NAME +``` +{{% /code-placeholders %}} + +_For more information about custom partitioning, see +[Manage data partitioning](/influxdb3/version/admin/custom-partitions/)._ + +{{% expand "View command updates" %}} + +#### v2.7.0 {date="2024-03-26"} + +- Introduce the `--template-tag-bucket` flag to group tag values into buckets + and partition by each tag bucket. + +{{% /expand %}} + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/table/delete.md b/content/shared/influxctl/table/delete.md new file mode 100644 index 000000000..b57532a49 --- /dev/null +++ b/content/shared/influxctl/table/delete.md @@ -0,0 +1,42 @@ + +The `influxctl table delete` command deletes a specified table from a database. + +## Usage + +```sh +influxctl table delete [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :---------------------- | +| **DATABASE_NAME** | Name of the database | +| **TABLE_NAME** | Name of table to delete | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} + +## Examples + + + +{{% code-placeholders "(DATABASE|TABLE)_NAME" %}} +```bash +influxctl table delete DATABASE_NAME TABLE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + the name of the database to delete the table from +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: + the name of the table to delete diff --git a/content/shared/influxctl/table/iceberg/_index.md b/content/shared/influxctl/table/iceberg/_index.md new file mode 100644 index 000000000..b4d38aeb8 --- /dev/null +++ b/content/shared/influxctl/table/iceberg/_index.md @@ -0,0 +1,36 @@ + +The `influxctl table iceberg` command and its subcommands enable or disable +Iceberg-compatible exports for a table in an InfluxDB Cloud Dedicated cluster. + +{{% show-in "clustered" %}} +> [!Warning] +> #### Only available with InfluxDB Cloud Dedicated +> +> Iceberg-compatible exports are currently only available with InfluxDB Cloud +> Dedicated, not InfluxDB Clustered. `influxctl table iceberg` command and its +> subcommands can only be used with InfluxDB Cloud Dedicated. +{{% /show-in %}} + +## Usage + +```sh +influxctl table iceberg [subcommand] [flags] +``` + +## Subcommands + +| Subcommand | Description | +| :--------------------------------------------------------------------------- | :---------------------------------- | +| [enable](/influxdb3/version/reference/cli/influxctl/table/iceberg/enable/) | Enable Iceberg exports for a table | +| [disable](/influxdb3/version/reference/cli/influxctl/table/iceberg/disable/) | Disable Iceberg exports for a table | +| help, h | Output command help | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/table/iceberg/disable.md b/content/shared/influxctl/table/iceberg/disable.md new file mode 100644 index 000000000..a17cd81e4 --- /dev/null +++ b/content/shared/influxctl/table/iceberg/disable.md @@ -0,0 +1,35 @@ + +The `influxctl table iceberg disable` command disables Iceberg-compatible exports +for a table in an InfluxDB Cloud Dedicated cluster. + +{{% show-in "clustered" %}} +> [!Warning] +> #### Only available with InfluxDB Cloud Dedicated +> +> Iceberg-compatible exports are currently only available with InfluxDB Cloud +> Dedicated, not InfluxDB Clustered. The `influxctl table iceberg` command and +> its subcommands can only be used with InfluxDB Cloud Dedicated. +{{% /show-in %}} + +## Usage + +```sh +influxctl table iceberg disable [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :------------------------------------------ | +| **DATABASE_NAME** | Name of the target database | +| **TABLE_NAME** | Name of table to disable Iceberg exports on | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/table/iceberg/enable.md b/content/shared/influxctl/table/iceberg/enable.md new file mode 100644 index 000000000..baf4c6b46 --- /dev/null +++ b/content/shared/influxctl/table/iceberg/enable.md @@ -0,0 +1,35 @@ + +The `influxctl table iceberg enable` command enables Iceberg-compatible exports +for a table in an InfluxDB Cloud Dedicated cluster. + +{{% show-in "clustered" %}} +> [!Warning] +> #### Only available with InfluxDB Cloud Dedicated +> +> Iceberg-compatible exports are currently only available with InfluxDB Cloud +> Dedicated, not InfluxDB Clustered. The `influxctl table iceberg` command and +> its subcommands can only be used with InfluxDB Cloud Dedicated. +{{% /show-in %}} + +## Usage + +```sh +influxctl table iceberg enable [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :----------------------------------------- | +| **DATABASE_NAME** | Name of the target database | +| **TABLE_NAME** | Name of table to enable Iceberg exports on | + +## Flags + +| Flag | | Description | +| :--- | :------- | :------------------ | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/content/shared/influxctl/table/list.md b/content/shared/influxctl/table/list.md new file mode 100644 index 000000000..b839ebfb8 --- /dev/null +++ b/content/shared/influxctl/table/list.md @@ -0,0 +1,26 @@ + +The `influxctl table list` command lists all tables in the specified database in +an {{< product-name omit=" Clustered" >}} cluster. + +## Usage + +```sh +influxctl table list [flags] +``` + +## Arguments + +| Argument | Description | +| :---------------- | :-------------------------- | +| **DATABASE_NAME** | Name of the target database | + +## Flags + +| Flag | | Description | +| :--- | :--------- | :-------------------------------------------- | +| | `--format` | Output format (`table` _(default)_ or `json`) | +| `-h` | `--help` | Output command help | + +{{% caption %}} +_Also see [`influxctl` global flags](/influxdb3/version/reference/cli/influxctl/#global-flags)._ +{{% /caption %}} diff --git a/data/products.yml b/data/products.yml index 173e838d7..3e580e236 100644 --- a/data/products.yml +++ b/data/products.yml @@ -64,7 +64,7 @@ influxdb3_cloud_dedicated: list_order: 3 latest: cloud-dedicated link: "https://www.influxdata.com/contact-sales-cloud-dedicated/" - latest_cli: 2.10.1 + latest_cli: 2.10.2 placeholder_host: cluster-id.a.influxdb.io ai_sample_questions: - How do I migrate from InfluxDB v1 to InfluxDB Cloud Dedicated? From 1e4f69bf6a2d3f5e59d67dd42c1b4ce1cede97d7 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 30 Jun 2025 16:13:30 -0600 Subject: [PATCH 73/80] task-based table and db management docs for dedicated and clustered --- .../cloud-dedicated/admin/databases/delete.md | 12 +- .../cloud-dedicated/admin/databases/rename.md | 58 ++++++++ .../admin/databases/undelete.md | 70 +++++++++ .../cloud-dedicated/admin/tables/delete.md | 53 +++++++ .../cloud-dedicated/admin/tables/list.md | 135 +++++++++++++----- .../clustered/admin/databases/delete.md | 11 +- .../clustered/admin/databases/rename.md | 58 ++++++++ .../clustered/admin/databases/undelete.md | 70 +++++++++ .../clustered/admin/tables/delete.md | 53 +++++++ .../influxdb3/clustered/admin/tables/list.md | 100 ++++++++++--- 10 files changed, 562 insertions(+), 58 deletions(-) create mode 100644 content/influxdb3/cloud-dedicated/admin/databases/rename.md create mode 100644 content/influxdb3/cloud-dedicated/admin/databases/undelete.md create mode 100644 content/influxdb3/cloud-dedicated/admin/tables/delete.md create mode 100644 content/influxdb3/clustered/admin/databases/rename.md create mode 100644 content/influxdb3/clustered/admin/databases/undelete.md create mode 100644 content/influxdb3/clustered/admin/tables/delete.md diff --git a/content/influxdb3/cloud-dedicated/admin/databases/delete.md b/content/influxdb3/cloud-dedicated/admin/databases/delete.md index fa59968db..4ae04e121 100644 --- a/content/influxdb3/cloud-dedicated/admin/databases/delete.md +++ b/content/influxdb3/cloud-dedicated/admin/databases/delete.md @@ -33,17 +33,19 @@ or the [Management HTTP API](/influxdb3/cloud-dedicated/api/management/) to delete a database from your {{< product-name omit=" Clustered" >}} cluster. > [!Warning] -> -> #### Deleting a database cannot be undone -> -> Once a database is deleted, data stored in that database cannot be recovered. -> > #### Wait before writing to a new database with the same name > > After deleting a database from your {{% product-name omit=" Clustered" %}} > cluster, you can reuse the name to create a new database, but **wait two to > three minutes** after deleting the previous database before writing to the new > database to allow write caches to clear. +> +> #### Tokens still grant access to databases with the same name +> +> [Database tokens](/influxdb3/cloud-dedicated/admin/tokens/database/) are associated to +> databases by name. If you create a new database with the same name, tokens +> that granted access to the deleted database will also grant access to the new +> database. {{< tabs-wrapper >}} {{% tabs %}} diff --git a/content/influxdb3/cloud-dedicated/admin/databases/rename.md b/content/influxdb3/cloud-dedicated/admin/databases/rename.md new file mode 100644 index 000000000..788ab030d --- /dev/null +++ b/content/influxdb3/cloud-dedicated/admin/databases/rename.md @@ -0,0 +1,58 @@ +--- +title: Rename a database +description: > + Use the [`influxctl database rename` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename/) + to rename a database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_cloud_dedicated: + parent: Manage databases +weight: 202 +list_code_example: | + ##### CLI + ```sh + influxctl database rename + ``` +related: + - /influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename/ + - /influxdb3/cloud-dedicated/admin/tokens/database/create/ +--- + +Use the [`influxctl database rename` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/rename/) +to rename a database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Note] +> Renaming a database does not change the database ID, modify data in the database, +> or update [database tokens](/influxdb3/cloud-dedicated/admin/tokens/database/). +> After renaming a database, any existing database tokens will stop working and you +> must create new tokens with permissions for the renamed database. + +## Rename a database using the influxctl CLI + +{{% code-placeholders "DATABASE_NAME|NEW_DATABASE_NAME" %}} +```sh +influxctl database rename DATABASE_NAME NEW_DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Current name of the database to rename +- {{% code-placeholder-key %}}`NEW_DATABASE_NAME`{{% /code-placeholder-key %}}: New name for the database + +## Update database tokens after renaming + +After renaming a database, existing database tokens will no longer work because +they reference the old database name. Do the following: + +1. [Create new database tokens](/influxdb3/cloud-dedicated/admin/tokens/database/create/) + with permissions for the renamed database. +2. Update your applications and clients to use the new tokens. +3. [Delete the old database tokens](/influxdb3/cloud-dedicated/admin/tokens/database/delete/) + that reference the old database name. + +{{% note %}} +#### Renamed database retains its ID + +The database ID remains the same after renaming. When you list databases, +you'll see the new name associated with the original database ID. +{{% /note %}} diff --git a/content/influxdb3/cloud-dedicated/admin/databases/undelete.md b/content/influxdb3/cloud-dedicated/admin/databases/undelete.md new file mode 100644 index 000000000..093cb3f8e --- /dev/null +++ b/content/influxdb3/cloud-dedicated/admin/databases/undelete.md @@ -0,0 +1,70 @@ +--- +title: Undelete a database +description: > + Use the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/) + to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_cloud_dedicated: + parent: Manage databases +weight: 204 +list_code_example: | + ```sh + influxctl database undelete + ``` +related: + - /influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/ + - /influxdb3/cloud-dedicated/admin/databases/delete/ + - /influxdb3/cloud-dedicated/admin/tokens/database/create/ +--- + +Use the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/) +to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Important] +> To undelete a database: +> +> - The database name must match the name of the deleted database. +> - A new database with the same name cannot already exist. +> - You must have appropriate permissions to manage databases. + +When you undelete a database, it is restored with the same retention period, +table limits, and column limits as when it was deleted. + +> [!Warning] +> Databases can only be undeleted for +> {{% show-in "cloud-dedicated" %}}approximately 14 days{{% /show-in %}}{{% show-in "clustered" %}}a configurable "hard-delete" grace period{{% /show-in %}} +> after they are deleted. +> After this grace period, all Parquet files associated with the deleted database +> are permanently removed and the database cannot be undeleted. + +## Undelete a database using the influxctl CLI + +{{% code-placeholders "DATABASE_NAME" %}} +```sh +influxctl database undelete DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Name of the deleted database to restore + +## Recreate tokens for the database + +After successfully undeleting a database: + +1. **Verify the database was restored** by [listing all databases](/influxdb3/cloud-dedicated/admin/databases/list/). +2. **If you previously deleted tokens associated with the deleted database, create new database tokens** + - Any tokens that existed before deletion are not restored. + [Create new database tokens](/influxdb3/cloud-dedicated/admin/tokens/database/create/) + with appropriate permissions for the restored database. +3. **Update your applications** to use the new database tokens. + +{{% note %}} +#### Undeleted databases retain their original configuration + +When a database is undeleted, it retains the same database ID, retention period, +and table/column limits it had before deletion. However, database tokens are not +restored and must be recreated. +{{% /note %}} diff --git a/content/influxdb3/cloud-dedicated/admin/tables/delete.md b/content/influxdb3/cloud-dedicated/admin/tables/delete.md new file mode 100644 index 000000000..48b2d45c1 --- /dev/null +++ b/content/influxdb3/cloud-dedicated/admin/tables/delete.md @@ -0,0 +1,53 @@ +--- +title: Delete a table +description: > + Use the Admin UI or the [`influxctl table delete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete/) + to delete a table from a database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_cloud_dedicated: + parent: Manage tables +weight: 203 +list_code_example: | + ```sh + influxctl table delete + ``` +related: + - /influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete/ +--- + +Use the Admin UI or the [`influxctl table delete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/delete/) +to delete a table from a database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Warning] +> Deleting a table is irreversible. Once a table is deleted, all data stored in +> that table is permanently removed and cannot be recovered. + +Provide the following arguments: + +- **Database name**: Name of the database that contains the table to delete +- **Table name**: Name of the table to delete + +{{% code-placeholders "DATABASE_NAME|TABLE_NAME" %}} +```sh +influxctl table delete DATABASE_NAME TABLE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Name of the database that contains the table to delete +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: Name of the table to delete + +When prompted, enter `y` to confirm the deletion. + +{{% note %}} +#### Wait before reusing a deleted table name + +After deleting a table, wait a few minutes before attempting to create a new +table with the same name to ensure the deletion process has fully completed. + +{{% product-name %}} creates tables implicitly using table names specified in +line protocol written to the databases. To prevent the deleted table from being +immediately recreated by incoming write requests, pause all write requests to +the table before deleting it. +{{% /note %}} diff --git a/content/influxdb3/cloud-dedicated/admin/tables/list.md b/content/influxdb3/cloud-dedicated/admin/tables/list.md index 5533845e0..e900c5b24 100644 --- a/content/influxdb3/cloud-dedicated/admin/tables/list.md +++ b/content/influxdb3/cloud-dedicated/admin/tables/list.md @@ -1,7 +1,8 @@ --- title: List tables description: > - Use the Admin UI, the [`SHOW TABLES` SQL statement](/influxdb3/cloud-dedicated/query-data/sql/explore-schema/#list-measurements-in-a-database), + Use the Admin UI, the [`influxctl table list` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list/), + the [`SHOW TABLES` SQL statement](/influxdb3/cloud-dedicated/query-data/sql/explore-schema/#list-measurements-in-a-database), or the [`SHOW MEASUREMENTS` InfluxQL statement](/influxdb3/cloud-dedicated/query-data/influxql/explore-schema/#list-measurements-in-a-database) to list tables in a database. menu: @@ -9,23 +10,30 @@ menu: parent: Manage tables weight: 201 list_code_example: | - ###### SQL + ##### CLI + ```sh + influxctl table list + ``` + + ##### SQL ```sql SHOW TABLES ``` - ###### InfluxQL + ##### InfluxQL ```sql SHOW MEASUREMENTS ``` related: + - /influxdb3/cloud-dedicated/reference/cli/influxctl/table/list/ - /influxdb3/cloud-dedicated/query-data/sql/explore-schema/ - /influxdb3/cloud-dedicated/query-data/influxql/explore-schema/ --- -Use the Admin UI, the [`SHOW TABLES` SQL statement](/influxdb3/cloud-dedicated/query-data/sql/explore-schema/#list-measurements-in-a-database), +Use the Admin UI, the [`influxctl table list` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list/), +the [`SHOW TABLES` SQL statement](/influxdb3/cloud-dedicated/query-data/sql/explore-schema/#list-measurements-in-a-database), or the [`SHOW MEASUREMENTS` InfluxQL statement](/influxdb3/cloud-dedicated/query-data/influxql/explore-schema/#list-measurements-in-a-database) to list tables in a database. @@ -36,9 +44,11 @@ to list tables in a database. {{% tabs %}} [Admin UI](#admin-ui) [influxctl](#influxctl) +[SQL & InfluxQL](#sql--influxql) {{% /tabs %}} {{% tab-content %}} + The InfluxDB Cloud Dedicated administrative UI includes a portal for managing tables. You can view the list of tables associated with a database and their details, including: @@ -47,48 +57,94 @@ their details, including: - Table ID - Table size (in bytes) -1. To access the {{< product-name >}} Admin UI, visit the following URL in your browser: +1. To access the {{< product-name >}} Admin UI, visit the following URL in your browser: -
    -   https://console.influxdata.com
    -   
    -2. Use the credentials provided by InfluxData to log into the Admin UI. - If you don't have login credentials, [contact InfluxData support](https://support.influxdata.com). +
    +    https://console.influxdata.com
    +    
    - After you log in, the Account Management portal displays [account information](/influxdb3/cloud-dedicated/admin/account/) - and lists all clusters associated with your account. -3. In the cluster list, find the cluster that contains the database and table. You can **Search** for clusters by name or ID to filter the list and use the sort button and column headers to sort the list. -4. Click the cluster row to view the list of databases associated with the cluster. -5. In the database list, find the database that contains the table. You can **Search** for databases by name or ID to filter the list and use the sort button and column headers to sort the list. -6. Click the database row to view the list of tables associated with the database. -7. The table list displays the following table details: - - Name - - Table ID - - Table size (in bytes) -8. You can **Search** for tables by name or ID to filter the list and use the sort button and column headers to sort the list. +2. Use the credentials provided by InfluxData to log into the Admin UI. + If you don't have login credentials, [contact InfluxData support](https://support.influxdata.com). -You can **Search** for databases by name or ID to filter the list and use the sort button and column headers to sort the list. + After you log in, the Account Management portal displays [account information](/influxdb3/cloud-dedicated/admin/account/) + and lists all clusters associated with your account. +3. In the cluster list, find the cluster that contains the database and table. + You can **Search** for clusters by name or ID to filter the list and use the sort button and column headers to sort the list. +4. Click the cluster row to view the list of databases associated with the cluster. +5. In the database list, find the database that contains the table. + You can **Search** for databases by name or ID to filter the list and use + the sort button and column headers to sort the list. +6. Click the database row to view the list of tables associated with the database. +7. The table list displays the following table details: + + - Name + - Table ID + - Table size (in bytes) + +8. You can **Search** for tables by name or ID to filter the list and use the + sort button and column headers to sort the list. + +You can **Search** for databases by name or ID to filter the list and use the +sort button and column headers to sort the list. + + {{% /tab-content %}} {{% tab-content %}} - -###### SQL + + +Use the [`influxctl table list` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/table/list/) +to list all tables in a database in your {{< product-name omit=" Cluster" >}} cluster. + +{{% code-placeholders "DATABASE_NAME" %}} + +```bash +influxctl table list DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Name of the database containing the tables to list + +### Output formats + +The `influxctl table list` command supports the following output formats: + +- `table` (default): Human-readable table format +- `json`: JSON format for programmatic use + +Use the `--format` flag to specify the output format: + +{{% code-placeholders "DATABASE_NAME" %}} +```sh +influxctl table list --format json DATABASE_NAME +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{% tab-content %}} + + +## List tables with the influxctl query command + +To list tables using SQL or InfluxQL, use the `influxctl query` command to pass +the appropriate statement. + +### SQL ```sql SHOW TABLES ``` -###### InfluxQL +### InfluxQL ```sql SHOW MEASUREMENTS ``` -## List tables with the influxctl CLI - -To list tables using the `influxctl` CLI, use the `influxctl query` command to pass -the `SHOW TABLES` SQL statement. - Provide the following with your command: - **Database token**: [Database token](/influxdb3/cloud-dedicated/admin/tokens/#database-tokens) @@ -98,17 +154,29 @@ Provide the following with your command: - **Database name**: Name of the database to query. Uses the `database` setting from the [`influxctl` connection profile](/influxdb3/cloud-dedicated/reference/cli/influxctl/#configure-connection-profiles) or the `--database` command flag. -- **SQL query**: SQL query with the `SHOW TABLES` statement. +- **SQL query**: SQL query with the `SHOW TABLES` statement or InfluxQL query with the `SHOW MEASUREMENTS` statement. {{% code-placeholders "DATABASE_(TOKEN|NAME)" %}} -```sh +##### SQL + +```bash influxctl query \ --token DATABASE_TOKEN \ --database DATABASE_NAME \ "SHOW TABLES" ``` +##### InfluxQL + +```bash +influxctl query \ + --token DATABASE_TOKEN \ + --database DATABASE_NAME \ + --language influxql \ + "SHOW MEASUREMENTS" +``` + {{% /code-placeholders %}} Replace the following: @@ -118,5 +186,6 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Name of the database to query + {{% /tab-content %}} -{{< /tabs-wrapper >}} \ No newline at end of file +{{< /tabs-wrapper >}} diff --git a/content/influxdb3/clustered/admin/databases/delete.md b/content/influxdb3/clustered/admin/databases/delete.md index 9f39e8fd5..5cbb4aa7d 100644 --- a/content/influxdb3/clustered/admin/databases/delete.md +++ b/content/influxdb3/clustered/admin/databases/delete.md @@ -33,16 +33,19 @@ influxctl database delete DATABASE_NAME {{% /code-placeholders %}} > [!Warning] -> #### Deleting a database cannot be undone -> -> Once a database is deleted, data stored in that database cannot be recovered. -> > #### Wait before writing to a new database with the same name > > After deleting a database from your {{% product-name omit=" Clustered" %}} > cluster, you can reuse the name to create a new database, but **wait two to > three minutes** after deleting the previous database before writing to the new > database to allow write caches to clear. +> +> #### Tokens still grant access to databases with the same name +> +> [Database tokens](/influxdb3/version/admin/tokens/database/) are associated to +> databases by name. If you create a new database with the same name, tokens +> that granted access to the deleted database will also grant access to the new +> database. > > #### Never directly modify the Catalog > diff --git a/content/influxdb3/clustered/admin/databases/rename.md b/content/influxdb3/clustered/admin/databases/rename.md new file mode 100644 index 000000000..e83d16cdb --- /dev/null +++ b/content/influxdb3/clustered/admin/databases/rename.md @@ -0,0 +1,58 @@ +--- +title: Rename a database +description: > + Use the [`influxctl database rename` command](/influxdb3/clustered/reference/cli/influxctl/database/rename/) + to rename a database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_clustered: + parent: Manage databases +weight: 202 +list_code_example: | + ##### CLI + ```sh + influxctl database rename + ``` +related: + - /influxdb3/clustered/reference/cli/influxctl/database/rename/ + - /influxdb3/clustered/admin/tokens/database/create/ +--- + +Use the [`influxctl database rename` command](/influxdb3/clustered/reference/cli/influxctl/database/rename/) +to rename a database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Note] +> Renaming a database does not change the database ID, modify data in the database, +> or update [database tokens](/influxdb3/clustered/admin/tokens/database/). +> After renaming a database, any existing database tokens will stop working and you +> must create new tokens with permissions for the renamed database. + +## Rename a database using the influxctl CLI + +{{% code-placeholders "DATABASE_NAME|NEW_DATABASE_NAME" %}} +```sh +influxctl database rename DATABASE_NAME NEW_DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Current name of the database to rename +- {{% code-placeholder-key %}}`NEW_DATABASE_NAME`{{% /code-placeholder-key %}}: New name for the database + +## Update database tokens after renaming + +After renaming a database, existing database tokens will no longer work because +they reference the old database name. Do the following: + +1. [Create new database tokens](/influxdb3/clustered/admin/tokens/database/create/) + with permissions for the renamed database. +2. Update your applications and clients to use the new tokens. +3. [Delete the old database tokens](/influxdb3/clustered/admin/tokens/database/delete/) + that reference the old database name. + +{{% note %}} +#### Renamed database retains its ID + +The database ID remains the same after renaming. When you list databases, +you'll see the new name associated with the original database ID. +{{% /note %}} diff --git a/content/influxdb3/clustered/admin/databases/undelete.md b/content/influxdb3/clustered/admin/databases/undelete.md new file mode 100644 index 000000000..5b2e4562b --- /dev/null +++ b/content/influxdb3/clustered/admin/databases/undelete.md @@ -0,0 +1,70 @@ +--- +title: Undelete a database +description: > + Use the [`influxctl database undelete` command](/influxdb3/clustered/reference/cli/influxctl/database/undelete/) + to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_clustered: + parent: Manage databases +weight: 204 +list_code_example: | + ```sh + influxctl database undelete + ``` +related: + - /influxdb3/clustered/reference/cli/influxctl/database/undelete/ + - /influxdb3/clustered/admin/databases/delete/ + - /influxdb3/clustered/admin/tokens/database/create/ +--- + +Use the [`influxctl database undelete` command](/influxdb3/clustered/reference/cli/influxctl/database/undelete/) +to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Important] +> To undelete a database: +> +> - The database name must match the name of the deleted database. +> - A new database with the same name cannot already exist. +> - You must have appropriate permissions to manage databases. + +When you undelete a database, it is restored with the same retention period, +table limits, and column limits as when it was deleted. + +> [!Warning] +> Databases can only be undeleted for +> {{% show-in "cloud-dedicated" %}}approximately 14 days{{% /show-in %}}{{% show-in "clustered" %}}a configurable "hard-delete" grace period{{% /show-in %}} +> after they are deleted. +> After this grace period, all Parquet files associated with the deleted database +> are permanently removed and the database cannot be undeleted. + +## Undelete a database using the influxctl CLI + +{{% code-placeholders "DATABASE_NAME" %}} +```sh +influxctl database undelete DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Name of the deleted database to restore + +## Recreate tokens for the database + +After successfully undeleting a database: + +1. **Verify the database was restored** by [listing all databases](/influxdb3/clustered/admin/databases/list/). +2. **If you previously deleted tokens associated with the deleted database, create new database tokens** + - Any tokens that existed before deletion are not restored. + [Create new database tokens](/influxdb3/clustered/admin/tokens/database/create/) + with appropriate permissions for the restored database. +3. **Update your applications** to use the new database tokens. + +{{% note %}} +#### Undeleted databases retain their original configuration + +When a database is undeleted, it retains the same database ID, retention period, +and table/column limits it had before deletion. However, database tokens are not +restored and must be recreated. +{{% /note %}} diff --git a/content/influxdb3/clustered/admin/tables/delete.md b/content/influxdb3/clustered/admin/tables/delete.md new file mode 100644 index 000000000..d7fe02cbe --- /dev/null +++ b/content/influxdb3/clustered/admin/tables/delete.md @@ -0,0 +1,53 @@ +--- +title: Delete a table +description: > + Use the Admin UI or the [`influxctl table delete` command](/influxdb3/clustered/reference/cli/influxctl/table/delete/) + to delete a table from a database in your {{< product-name omit=" Cluster" >}} cluster. +menu: + influxdb3_clustered: + parent: Manage tables +weight: 203 +list_code_example: | + ```sh + influxctl table delete + ``` +related: + - /influxdb3/clustered/reference/cli/influxctl/table/delete/ +--- + +Use the Admin UI or the [`influxctl table delete` command](/influxdb3/clustered/reference/cli/influxctl/table/delete/) +to delete a table from a database in your {{< product-name omit=" Cluster" >}} cluster. + +> [!Warning] +> Deleting a table is irreversible. Once a table is deleted, all data stored in +> that table is permanently removed and cannot be recovered. + +Provide the following arguments: + +- **Database name**: Name of the database that contains the table to delete +- **Table name**: Name of the table to delete + +{{% code-placeholders "DATABASE_NAME|TABLE_NAME" %}} +```sh +influxctl table delete DATABASE_NAME TABLE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Name of the database that contains the table to delete +- {{% code-placeholder-key %}}`TABLE_NAME`{{% /code-placeholder-key %}}: Name of the table to delete + +When prompted, enter `y` to confirm the deletion. + +{{% note %}} +#### Wait before reusing a deleted table name + +After deleting a table, wait a few minutes before attempting to create a new +table with the same name to ensure the deletion process has fully completed. + +{{% product-name %}} creates tables implicitly using table names specified in +line protocol written to the databases. To prevent the deleted table from being +immediately recreated by incoming write requests, pause all write requests to +the table before deleting it. +{{% /note %}} diff --git a/content/influxdb3/clustered/admin/tables/list.md b/content/influxdb3/clustered/admin/tables/list.md index 228155434..7f604a1a3 100644 --- a/content/influxdb3/clustered/admin/tables/list.md +++ b/content/influxdb3/clustered/admin/tables/list.md @@ -1,7 +1,8 @@ --- title: List tables description: > - Use the [`SHOW TABLES` SQL statement](/influxdb3/clustered/query-data/sql/explore-schema/#list-measurements-in-a-database) + Use the [`influxctl table list` command](/influxdb3/clustered/reference/cli/influxctl/table/list/), + the [`SHOW TABLES` SQL statement](/influxdb3/clustered/query-data/sql/explore-schema/#list-measurements-in-a-database), or the [`SHOW MEASUREMENTS` InfluxQL statement](/influxdb3/clustered/query-data/influxql/explore-schema/#list-measurements-in-a-database) to list tables in a database. menu: @@ -9,49 +10,96 @@ menu: parent: Manage tables weight: 201 list_code_example: | - ###### SQL + ##### CLI + ```sh + influxctl table list + ``` + + ##### SQL ```sql SHOW TABLES ``` - ###### InfluxQL + ##### InfluxQL ```sql SHOW MEASUREMENTS ``` related: + - /influxdb3/clustered/reference/cli/influxctl/table/list/ - /influxdb3/clustered/query-data/sql/explore-schema/ - /influxdb3/clustered/query-data/influxql/explore-schema/ --- -Use the [`SHOW TABLES` SQL statement](/influxdb3/clustered/query-data/sql/explore-schema/#list-measurements-in-a-database) +Use the [`influxctl table list` command](/influxdb3/clustered/reference/cli/influxctl/table/list/), +the [`SHOW TABLES` SQL statement](/influxdb3/clustered/query-data/sql/explore-schema/#list-measurements-in-a-database), or the [`SHOW MEASUREMENTS` InfluxQL statement](/influxdb3/clustered/query-data/influxql/explore-schema/#list-measurements-in-a-database) to list tables in a database. > [!Note] > With {{< product-name >}}, tables and measurements are synonymous. -###### SQL +{{< tabs-wrapper >}} +{{% tabs %}} +[influxctl](#influxctl) +[SQL & InfluxQL](#sql--influxql) +{{% /tabs %}} +{{% tab-content %}} + + +Use the [`influxctl table list` command](/influxdb3/clustered/reference/cli/influxctl/table/list/) +to list all tables in a database in your {{< product-name omit=" Cluster" >}}. + +{{% code-placeholders "DATABASE_NAME" %}} + +```bash +influxctl table list DATABASE_NAME +``` +{{% /code-placeholders %}} + +Replace the following: + +- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: + Name of the database containing the tables to list + +### Output formats + +The `influxctl table list` command supports the following output formats: + +- `table` (default): Human-readable table format +- `json`: JSON format for programmatic use + +Use the `--format` flag to specify the output format: + +{{% code-placeholders "DATABASE_NAME" %}} +```sh +influxctl table list --format json DATABASE_NAME +``` +{{% /code-placeholders %}} + + +{{% /tab-content %}} +{{% tab-content %}} + + +## List tables with the influxctl query command + +To list tables using SQL or InfluxQL, use the `influxctl query` command to pass +the appropriate statement. + +### SQL ```sql SHOW TABLES ``` -###### InfluxQL +### InfluxQL ```sql SHOW MEASUREMENTS ``` -## List tables with the influxctl CLI - -To list tables using the `influxctl` CLI, use the `influxctl query` command to pass -the `SHOW TABLES` SQL statement. - -> [!Note] -> The `influxctl query` command only supports SQL queries; not InfluxQL. - Provide the following with your command: - **Database token**: a [database token](/influxdb3/clustered/admin/tokens/#database-tokens) @@ -61,17 +109,29 @@ Provide the following with your command: - **Database name**: Name of the database to query. Uses the `database` setting from the [`influxctl` connection profile](/influxdb3/clustered/reference/cli/influxctl/#configure-connection-profiles) or the `--database` command flag. -- **SQL query**: SQL query with the `SHOW TABLES` statement. +- **SQL query**: SQL query with the `SHOW TABLES` statement or InfluxQL query with the `SHOW MEASUREMENTS` statement. {{% code-placeholders "DATABASE_(TOKEN|NAME)" %}} -```sh +##### SQL + +```bash influxctl query \ --token DATABASE_TOKEN \ --database DATABASE_NAME \ "SHOW TABLES" ``` +##### InfluxQL + +```bash +influxctl query \ + --token DATABASE_TOKEN \ + --database DATABASE_NAME \ + --language influxql \ + "SHOW MEASUREMENTS" +``` + {{% /code-placeholders %}} Replace the following: @@ -81,3 +141,11 @@ Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: Name of the database to query +> [!Note] +> The `influxctl query` command only supports SQL queries; not InfluxQL. +> To use InfluxQL, query InfluxDB through the API using InfluxQL request parameters. + + +{{% /tab-content %}} +{{< /tabs-wrapper >}} + From 7a895276ca0ca356c14ab8578d6035683da43d0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Bedn=C3=A1=C5=99?= Date: Tue, 1 Jul 2025 00:53:16 +0200 Subject: [PATCH 74/80] Release Kapacitor v1.8.0 (#6156) * Release Kapacitor v1.8.0 * Update content/kapacitor/v1/reference/about_the_project/release-notes.md --------- Co-authored-by: Scott Anderson --- .../v1/reference/about_the_project/release-notes.md | 13 +++++++++++++ data/products.yml | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/content/kapacitor/v1/reference/about_the_project/release-notes.md b/content/kapacitor/v1/reference/about_the_project/release-notes.md index beb05a02a..567d00928 100644 --- a/content/kapacitor/v1/reference/about_the_project/release-notes.md +++ b/content/kapacitor/v1/reference/about_the_project/release-notes.md @@ -9,6 +9,19 @@ aliases: - /kapacitor/v1/about_the_project/releasenotes-changelog/ --- +## v1.8.0 {date="2025-06-26"} + +> [!Warning] +> +> Python 2-based UDFs are deprecated as of Kapacitor 1.7.7 and are removed in this release. If you are using Python 2 +> with your User-Defined Functions (UDFs), upgrade them to be Python 3-compatible **before** installing this version of Kapacitor. +> This required change aligns with modern security practices and ensures your custom functions will continue to work after upgrading. + +### Dependency updates + +- Upgrade Go to 1.23.9. +- Upgrade go-lang `JWT library` to 4.5.2 + ## v1.7.7 {date="2025-05-27"} > [!Warning] diff --git a/data/products.yml b/data/products.yml index 3e580e236..65a95f9dc 100644 --- a/data/products.yml +++ b/data/products.yml @@ -169,9 +169,9 @@ kapacitor: menu_category: other list_order: 7 versions: [v1] - latest: v1.7 + latest: v1.8 latest_patches: - v1: 1.7.7 + v1: 1.8.0 ai_sample_questions: - How do I configure Kapacitor for InfluxDB v1? - How do I write a custom Kapacitor task? From 490c57d024585d77857b89d1e2ad80450a76761e Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 1 Jul 2025 09:33:58 -0500 Subject: [PATCH 75/80] Update content/influxdb3/clustered/admin/tables/delete.md --- .../clustered/admin/tables/delete.md | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/content/influxdb3/clustered/admin/tables/delete.md b/content/influxdb3/clustered/admin/tables/delete.md index d7fe02cbe..010fcb5e6 100644 --- a/content/influxdb3/clustered/admin/tables/delete.md +++ b/content/influxdb3/clustered/admin/tables/delete.md @@ -40,14 +40,13 @@ Replace the following: When prompted, enter `y` to confirm the deletion. -{{% note %}} -#### Wait before reusing a deleted table name - -After deleting a table, wait a few minutes before attempting to create a new -table with the same name to ensure the deletion process has fully completed. - -{{% product-name %}} creates tables implicitly using table names specified in -line protocol written to the databases. To prevent the deleted table from being -immediately recreated by incoming write requests, pause all write requests to -the table before deleting it. -{{% /note %}} +> [!Note] +> #### Wait before reusing a deleted table name +> +> After deleting a table, wait a few minutes before attempting to create a new +> table with the same name to ensure the deletion process has fully completed. +> +> {{% product-name %}} creates tables implicitly using table names specified in +> line protocol written to the databases. To prevent the deleted table from being +> immediately recreated by incoming write requests, pause all write requests to +> the table before deleting it. From 9b438f96473391608ae945044c4f372edde3e567 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 1 Jul 2025 10:48:24 -0500 Subject: [PATCH 76/80] fix(clustered): non-shared page using a 'version' link --- content/influxdb3/clustered/admin/databases/delete.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/influxdb3/clustered/admin/databases/delete.md b/content/influxdb3/clustered/admin/databases/delete.md index 5cbb4aa7d..6b64122bf 100644 --- a/content/influxdb3/clustered/admin/databases/delete.md +++ b/content/influxdb3/clustered/admin/databases/delete.md @@ -42,7 +42,7 @@ influxctl database delete DATABASE_NAME > > #### Tokens still grant access to databases with the same name > -> [Database tokens](/influxdb3/version/admin/tokens/database/) are associated to +> [Database tokens](/influxdb3/clustered/admin/tokens/database/) are associated to > databases by name. If you create a new database with the same name, tokens > that granted access to the deleted database will also grant access to the new > database. From b8c1156a1c7108b01eea76c9f84b8b289c7d3456 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 1 Jul 2025 09:45:43 -0500 Subject: [PATCH 77/80] chore(qol): Add .context to store ephemeral, external, or temp files that LLMs can use to help with docs management. Move plans to .content/plans, untracked. --- .context/README.md | 44 +++++++ .gitignore | 4 + plans/README.md | 38 ------ plans/cli-docs-sync/execution-log.md | 47 -------- plans/cli-docs-sync/plan-v3.2.0.md | 165 --------------------------- 5 files changed, 48 insertions(+), 250 deletions(-) create mode 100644 .context/README.md delete mode 100644 plans/README.md delete mode 100644 plans/cli-docs-sync/execution-log.md delete mode 100644 plans/cli-docs-sync/plan-v3.2.0.md diff --git a/.context/README.md b/.context/README.md new file mode 100644 index 000000000..79b6a4459 --- /dev/null +++ b/.context/README.md @@ -0,0 +1,44 @@ +# Context Files for LLMs and AI Tools + +This directory contains plans, reports, and other context files that are: +- Used to provide context to LLMs during development +- Not committed to the repository +- May be transient or belong in other repositories + +## Directory Structure + +- `plans/` - Documentation plans and roadmaps +- `reports/` - Generated reports and analyses +- `research/` - Research notes and findings +- `templates/` - Reusable templates for Claude interactions + +## Usage + +Place files here that you want to reference--for example, using @ mentions in Claude--such as: +- Documentation planning documents +- API migration guides +- Performance reports +- Architecture decisions + +## Example Structure + +``` +.context/ +├── plans/ +│ ├── v3.2-release-plan.md +│ └── api-migration-guide.md +├── reports/ +│ ├── weekly-progress-2025-07.md +│ └── pr-summary-2025-06.md +├── research/ +│ └── competitor-analysis.md +└── templates/ + └── release-notes-template.md +``` + +## Best Practices + +1. Use descriptive filenames that indicate the content and date +2. Keep files organized in appropriate subdirectories +3. Consider using date prefixes for time-sensitive content (e.g., `2025-07-01-meeting-notes.md`) +4. Remove outdated files periodically to keep the context relevant \ No newline at end of file diff --git a/.gitignore b/.gitignore index 2ec7e73c9..4cb5a9eae 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,7 @@ test-results.xml **/config.toml package-lock.json tmp + +# Context files for LLMs and AI tools +.context/* +!.context/README.md diff --git a/plans/README.md b/plans/README.md deleted file mode 100644 index 098c81915..000000000 --- a/plans/README.md +++ /dev/null @@ -1,38 +0,0 @@ -# Documentation Plans - -This directory contains plans for recurring documentation tasks and automation. - -## Active Plans - -### CLI Documentation Synchronization -- **Location**: `cli-docs-sync/` -- **Purpose**: Keep InfluxDB 3 CLI reference documentation in sync with actual CLI commands -- **Current Version**: `plan-v3.2.0.md` -- **Status**: Ready for execution - -### Release Notes Automation -- **Location**: `release-notes-automation/` -- **Purpose**: Automate generation of release notes from git commits -- **Scripts**: Available in `/scripts/generate-release-notes.sh` - -## Plan Structure - -Each plan directory should contain: -- `plan-[version].md` - The detailed plan -- `execution-log.md` - Track progress and notes -- `templates/` - Reusable templates and patterns - -## Usage for Claude - -When working with Claude on these plans: -1. Reference the specific plan file: `@plans/[task]/plan-[version].md` -2. Update execution logs as you progress -3. Iterate on plans by creating new versions -4. Use templates for consistency - -## Best Practices - -- Keep plans versioned by release or iteration -- Document lessons learned in execution logs -- Create reusable templates for recurring patterns -- Link plans to related scripts and automation \ No newline at end of file diff --git a/plans/cli-docs-sync/execution-log.md b/plans/cli-docs-sync/execution-log.md deleted file mode 100644 index ec2cf65af..000000000 --- a/plans/cli-docs-sync/execution-log.md +++ /dev/null @@ -1,47 +0,0 @@ -# CLI Documentation Sync - Execution Log - -## v3.2.0 Execution - -### Status: Planning Complete ✅ -**Date**: 2025-06-26 -**Plan**: `plan-v3.2.0.md` - -### Phase 1: Analysis (Not Started) -- [ ] Audit existing CLI documentation structure -- [ ] Extract v3.2.0 changes from release notes -- [ ] Generate current CLI help output - -### Phase 2: Update Documentation (Not Started) -#### Files to Create: -- [ ] `/content/shared/influxdb3-cli/update/_index.md` -- [ ] `/content/shared/influxdb3-cli/update/database.md` -- [ ] `/content/shared/influxdb3-cli/update/table.md` (Enterprise) -- [ ] `/content/shared/influxdb3-cli/show/license.md` (Enterprise) - -#### Files to Update: -- [ ] `/content/shared/influxdb3-cli/create/database.md` (add `--retention-period`) -- [ ] `/content/shared/influxdb3-cli/create/table.md` (add Enterprise `--retention-period`) -- [ ] `/content/shared/influxdb3-cli/show/_index.md` (add license command) -- [ ] `/content/shared/influxdb3-cli/delete/database.md` (review hard delete) -- [ ] `/content/shared/influxdb3-cli/delete/table.md` (review hard delete) - -### Phase 3: Automation (Not Started) -- [ ] Create CLI documentation sync script -- [ ] Establish documentation standards -- [ ] Plan CI/CD integration - -### Phase 4: Validation (Not Started) -- [ ] Test documented commands -- [ ] Verify completeness -- [ ] Check cross-references - -### Notes and Lessons Learned -- Release notes analysis was crucial for identifying specific CLI changes -- Having automation scripts in place (`generate-release-notes.sh`) helped identify features -- Need to distinguish between Core and Enterprise features clearly - -### Next Actions -When ready to execute: -1. Reference plan: `@plans/cli-docs-sync/plan-v3.2.0.md` -2. Start with Phase 1 analysis -3. Update this log as progress is made \ No newline at end of file diff --git a/plans/cli-docs-sync/plan-v3.2.0.md b/plans/cli-docs-sync/plan-v3.2.0.md deleted file mode 100644 index 725c2275b..000000000 --- a/plans/cli-docs-sync/plan-v3.2.0.md +++ /dev/null @@ -1,165 +0,0 @@ -# Plan: Update InfluxDB 3 CLI Reference Documentation for v3.2.0 - -## Phase 1: Analyze Current State and Changes - -### 1. Audit existing CLI documentation structure -**Existing files in `/content/shared/influxdb3-cli/`:** -- `/content/shared/influxdb3-cli/create/_index.md` -- `/content/shared/influxdb3-cli/create/database.md` ⚠️ **NEEDS UPDATE** (add `--retention-period`) -- `/content/shared/influxdb3-cli/create/distinct_cache.md` -- `/content/shared/influxdb3-cli/create/file_index.md` -- `/content/shared/influxdb3-cli/create/last_cache.md` -- `/content/shared/influxdb3-cli/create/table.md` ⚠️ **NEEDS UPDATE** (add Enterprise `--retention-period`) -- `/content/shared/influxdb3-cli/create/token/_index.md` -- `/content/shared/influxdb3-cli/create/token/admin.md` -- `/content/shared/influxdb3-cli/create/trigger.md` -- `/content/shared/influxdb3-cli/delete/_index.md` -- `/content/shared/influxdb3-cli/delete/database.md` ⚠️ **REVIEW** (hard delete features) -- `/content/shared/influxdb3-cli/delete/distinct_cache.md` -- `/content/shared/influxdb3-cli/delete/file_index.md` -- `/content/shared/influxdb3-cli/delete/last_cache.md` -- `/content/shared/influxdb3-cli/delete/table.md` ⚠️ **REVIEW** (hard delete features) -- `/content/shared/influxdb3-cli/delete/trigger.md` -- `/content/shared/influxdb3-cli/disable/_index.md` -- `/content/shared/influxdb3-cli/disable/trigger.md` -- `/content/shared/influxdb3-cli/enable/_index.md` -- `/content/shared/influxdb3-cli/enable/trigger.md` -- `/content/shared/influxdb3-cli/query.md` -- `/content/shared/influxdb3-cli/show/_index.md` ⚠️ **NEEDS UPDATE** (add license command) -- `/content/shared/influxdb3-cli/show/databases.md` -- `/content/shared/influxdb3-cli/show/system/_index.md` -- `/content/shared/influxdb3-cli/show/system/summary.md` -- `/content/shared/influxdb3-cli/show/system/table-list.md` -- `/content/shared/influxdb3-cli/show/system/table.md` -- `/content/shared/influxdb3-cli/show/tokens.md` -- `/content/shared/influxdb3-cli/test/_index.md` -- `/content/shared/influxdb3-cli/test/schedule_plugin.md` -- `/content/shared/influxdb3-cli/test/wal_plugin.md` -- `/content/shared/influxdb3-cli/write.md` - -### 2. Extract v3.2.0 changes from release notes -**From `/content/shared/v3-core-enterprise-release-notes/_index.md`:** - -**Core v3.2.0 Features:** -- Database retention period support: `create database --retention-period`, `update database --retention-period` -- Hard delete for databases and tables -- AWS credentials auto-reload -- WAL improvements - -**Enterprise v3.2.0 Features:** -- License management: `influxdb3 show license` -- Table retention period support: `create table --retention-period`, `update table --retention-period` -- All Core features plus Enterprise-specific enhancements - -### 3. Generate current CLI help output -- Run `influxdb3 --help` for both Core and Enterprise versions -- Extract new commands, options, and help text -- Compare with existing documentation - -## Phase 2: Update Documentation Files - -### Files to Create (NEW): -- `/content/shared/influxdb3-cli/update/_index.md` 🆕 -- `/content/shared/influxdb3-cli/update/database.md` 🆕 (retention period management) -- `/content/shared/influxdb3-cli/update/table.md` 🆕 (Enterprise-only, retention period management) -- `/content/shared/influxdb3-cli/show/license.md` 🆕 (Enterprise-only) - -### Files to Update (EXISTING): -- `/content/shared/influxdb3-cli/create/database.md` ⚠️ (add `--retention-period` option) -- `/content/shared/influxdb3-cli/create/table.md` ⚠️ (add Enterprise `--retention-period` option) -- `/content/shared/influxdb3-cli/show/_index.md` ⚠️ (include license command) -- `/content/shared/influxdb3-cli/delete/database.md` ⚠️ (review hard delete options) -- `/content/shared/influxdb3-cli/delete/table.md` ⚠️ (review hard delete options) - -### Content Changes by Category: - -**1. Retention Period Documentation:** -- Update `/content/shared/influxdb3-cli/create/database.md` with `--retention-period` option -- Create `/content/shared/influxdb3-cli/update/` directory structure -- Create `/content/shared/influxdb3-cli/update/database.md` for retention management -- Update `/content/shared/influxdb3-cli/create/table.md` with Enterprise `--retention-period` option -- Create `/content/shared/influxdb3-cli/update/table.md` for Enterprise table retention management - -**2. License Management Documentation:** -- Update `/content/shared/influxdb3-cli/show/_index.md` to include license command -- Create `/content/shared/influxdb3-cli/show/license.md` for Enterprise license display - -**3. Hard Delete Documentation:** -- Review and update `/content/shared/influxdb3-cli/delete/database.md` with hard delete options -- Review and update `/content/shared/influxdb3-cli/delete/table.md` with hard delete options - -## Phase 3: Automation and Process Improvements - -### Immediate Improvements: -1. **Create CLI documentation sync script:** - ```bash - # Script: /Users/ja/Documents/github/docs-v2/scripts/sync-cli-docs.sh - # - Extract help text from influxdb3 CLI - # - Compare with existing docs - # - Generate report of differences - # - Auto-update basic command syntax - ``` - -2. **Establish documentation standards:** - - Standardize frontmatter across CLI docs - - Create templates for command documentation - - Define Enterprise vs Core content patterns using Hugo shortcodes - -### Long-term Automation Strategy: -1. **CI/CD Integration:** - - Add GitHub Actions workflow to detect CLI changes - - Auto-generate CLI help extraction on new releases - - Create pull requests for documentation updates - -2. **Release Process Integration:** - - Include CLI documentation review in release checklist - - Link release notes to specific CLI documentation updates - - Automated cross-referencing between release notes and CLI docs - -3. **Content Management Improvements:** - - Use Hugo shortcodes for Enterprise-specific content - - Implement version-aware documentation - - Create shared content templates for common CLI patterns - -## Phase 4: Validation and Testing - -### Content accuracy verification: -- Test all documented commands and options against actual CLIs -- Verify Enterprise vs Core feature availability -- Cross-reference with actual CLI behavior - -### Documentation completeness check: -- Ensure all v3.2.0 features are documented -- Verify examples and use cases -- Check internal links and cross-references - -## Suggested Recurring Process - -### Pre-release (during development): -- Monitor CLI changes in pull requests -- Update documentation as features are added -- Maintain CLI help extraction automation - -### At release (when tagging versions): -- Run automated CLI documentation sync -- Review and approve auto-generated updates -- Publish updated documentation - -### Post-release (after release): -- Validate documentation accuracy -- Gather user feedback on CLI documentation -- Plan improvements for next cycle - -## Related Documentation Paths - -### InfluxDB 3 Product Documentation (affects CLI usage examples): -- `/content/influxdb3/core/write-data/influxdb3-cli.md` -- `/content/influxdb3/enterprise/write-data/influxdb3-cli.md` -- `/content/shared/influxdb3-write-guides/influxdb3-cli.md` - -### Admin Documentation (affects retention and license features): -- `/content/influxdb3/core/admin/` -- `/content/influxdb3/enterprise/admin/` -- `/content/influxdb3/enterprise/admin/license.md` - -This plan ensures comprehensive documentation updates for v3.2.0 while establishing sustainable processes for future releases. \ No newline at end of file From 75410f73fcde5145d70a35c56da74145c294fb9e Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Mon, 30 Jun 2025 14:05:04 -0500 Subject: [PATCH 78/80] chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later fix(qol): Agent-agnostic contributing instructions chore(test): Untrack influxdb3 data and plugins used in Docker configurations and testing chore(test): Untrack influxdb3 data and plugins used in Docker configurations and testing chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later --- .../instructions/contributing.instructions.md | 1454 +---------------- build-scripts/build-copilot-instructions.js | 71 +- compose.yaml | 20 +- test/.gitignore | 1 + test/influxdb3-plugins/request.py | 24 - test/influxdb3-plugins/schedule.py | 12 - test/influxdb3-plugins/wal_table.py | 18 - test/influxdb3/auth.test.sh | 26 + test/influxdb3/database.test.sh | 4 + 9 files changed, 147 insertions(+), 1483 deletions(-) delete mode 100644 test/influxdb3-plugins/request.py delete mode 100644 test/influxdb3-plugins/schedule.py delete mode 100644 test/influxdb3-plugins/wal_table.py create mode 100644 test/influxdb3/auth.test.sh create mode 100644 test/influxdb3/database.test.sh diff --git a/.github/instructions/contributing.instructions.md b/.github/instructions/contributing.instructions.md index 3ddd6bb83..b5b5fdd59 100644 --- a/.github/instructions/contributing.instructions.md +++ b/.github/instructions/contributing.instructions.md @@ -46,184 +46,8 @@ We strongly recommend letting them run, but you can skip them (and avoid installing related dependencies) by including the `--no-verify` flag with your commit--for example, enter the following command in your terminal: -```sh +sh git commit -m "" --no-verify -``` - -### Install Node.js dependencies - -To install dependencies listed in package.json: - -1. Install [Node.js](https://nodejs.org/en) for your system. -2. Install [Yarn](https://yarnpkg.com/getting-started/install) for your system. -3. Run `yarn` to install dependencies (including Hugo). -4. Install the Yarn package manager and run `yarn` to install project dependencies. - -`package.json` contains dependencies used in `/assets/js` JavaScript code and -dev dependencies used in pre-commit hooks for linting, syntax-checking, and testing. - -Dev dependencies include: - -- [Lefthook](https://github.com/evilmartians/lefthook): configures and -manages git pre-commit and pre-push hooks for linting and testing Markdown content. -- [prettier](https://prettier.io/docs/en/): formats code, including Markdown, according to style rules for consistency -- [Cypress]: e2e testing for UI elements and URLs in content - -### Install Docker - -docs-v2 includes Docker configurations (`compose.yaml` and Dockerfiles) for running the Vale style linter and tests for code blocks (Shell, Bash, and Python) in Markdown files. - -Install [Docker](https://docs.docker.com/get-docker/) for your system. - -#### Build the test dependency image - -After you have installed Docker, run the following command to build the test -dependency image, `influxdata:docs-pytest`. -The tests defined in `compose.yaml` use the dependencies and execution -environment from this image. - -```bash -docker build -t influxdata/docs-pytest:latest -f Dockerfile.pytest . -``` - -### Run the documentation locally (optional) - -To run the documentation locally, follow the instructions provided in the README. - -### Install Visual Studio Code extensions - -If you use Microsoft Visual Studio (VS) Code, you can install extensions -to help you navigate, check, and edit files. - -docs-v2 contains a `./.vscode/settings.json` that configures the following extensions: - -- Comment Anchors: recognizes tags (for example, `//SOURCE`) and makes links and filepaths clickable in comments. -- Vale: shows linter errors and suggestions in the editor. -- YAML Schemas: validates frontmatter attributes. - -### Make your changes - -Make your suggested changes being sure to follow the [style and formatting guidelines](#style--formatting) outline below. - -## Lint and test your changes - -`package.json` contains scripts for running tests and linting. - -### Automatic pre-commit checks - -docs-v2 uses Lefthook to manage Git hooks that run during pre-commit and pre-push. The hooks run the scripts defined in `package.json` to lint Markdown and test code blocks. -When you try to commit changes (`git commit`), Git runs -the commands configured in `lefthook.yml` which pass your **staged** files to Vale, -Prettier, Cypress (for UI tests and link-checking), and Pytest (for testing Python and shell code in code blocks). - -### Skip pre-commit hooks - -**We strongly recommend running linting and tests**, but you can skip them -(and avoid installing dependencies) -by including the `LEFTHOOK=0` environment variable or the `--no-verify` flag with -your commit--for example: - -```sh -git commit -m "" --no-verify -``` - -```sh -LEFTHOOK=0 git commit -``` - -### Set up test scripts and credentials - -Tests for code blocks require your InfluxDB credentials and other typical -InfluxDB configuration. - -To set up your docs-v2 instance to run tests locally, do the following: - -1. **Set executable permissions on test scripts** in `./test/src`: - - ```sh - chmod +x ./test/src/*.sh - ``` - -2. **Create credentials for tests**: - - - Create databases, buckets, and tokens for the product(s) you're testing. - - If you don't have access to a Clustered instance, you can use your -Cloud Dedicated instance for testing in most cases. To avoid conflicts when - running tests, create separate Cloud Dedicated and Clustered databases. - -1. **Create .env.test**: Copy the `./test/env.test.example` file into each - product directory to test and rename the file as `.env.test`--for example: - - ```sh - ./content/influxdb/cloud-dedicated/.env.test - ``` - -2. Inside each product's `.env.test` file, assign your InfluxDB credentials to - environment variables: - - - Include the usual `INFLUX_` environment variables - - In - `cloud-dedicated/.env.test` and `clustered/.env.test` files, also define the - following variables: - - - `ACCOUNT_ID`, `CLUSTER_ID`: You can find these values in your `influxctl` - `config.toml` configuration file. - - `MANAGEMENT_TOKEN`: Use the `influxctl management create` command to generate - a long-lived management token to authenticate Management API requests - - See the substitution - patterns in `./test/src/prepare-content.sh` for the full list of variables you may need to define in your `.env.test` files. - -3. For influxctl commands to run in tests, move or copy your `config.toml` file - to the `./test` directory. - -> [!Warning] -> -> - The database you configure in `.env.test` and any written data may -be deleted during test runs. -> - Don't add your `.env.test` files to Git. To prevent accidentally adding credentials to the docs-v2 repo, -Git is configured to ignore `.env*` files. Consider backing them up on your local machine in case of accidental deletion. - -#### Test shell and python code blocks - -[pytest-codeblocks](https://github.com/nschloe/pytest-codeblocks/tree/main) extracts code from python and shell Markdown code blocks and executes assertions for the code. -If you don't assert a value (using a Python `assert` statement), `--codeblocks` considers a non-zero exit code to be a failure. - -**Note**: `pytest --codeblocks` uses Python's `subprocess.run()` to execute shell code. - -You can use this to test CLI and interpreter commands, regardless of programming -language, as long as they return standard exit codes. - -To make the documented output of a code block testable, precede it with the -`` tag and **omit the code block language -descriptor**--for example, in your Markdown file: - -##### Example markdown - -```python -print("Hello, world!") -``` - - - -The next code block is treated as an assertion. -If successful, the output is the following: - -``` -Hello, world! -``` - -For commands, such as `influxctl` CLI commands, that require launching an -OAuth URL in a browser, wrap the command in a subshell and redirect the output -to `/shared/urls.txt` in the container--for example: - -```sh -# Test the preceding command outside of the code block. -# influxctl authentication requires TTY interaction-- -# output the auth URL to a file that the host can open. -script -c "influxctl user list " \ - /dev/null > /shared/urls.txt -``` You probably don't want to display this syntax in the docs, which unfortunately means you'd need to include the test block separately from the displayed code @@ -236,25 +60,6 @@ pytest-codeblocks will still collect and run the code block. pytest-codeblocks has features for skipping tests and marking blocks as failed. To learn more, see the pytest-codeblocks README and tests. -#### Troubleshoot tests - -### Pytest collected 0 items - -Potential reasons: - -- See the test discovery options in `pytest.ini`. -- For Python code blocks, use the following delimiter: - - ```python - # Codeblocks runs this block. - ``` - - `pytest --codeblocks` ignores code blocks that use the following: - - ```py - # Codeblocks ignores this block. - ``` - ### Vale style linting docs-v2 includes Vale writing style linter configurations to enforce documentation writing style rules, guidelines, branding, and vocabulary terms. @@ -262,97 +67,10 @@ docs-v2 includes Vale writing style linter configurations to enforce documentati To run Vale, use the Vale extension for your editor or the included Docker configuration. For example, the following command runs Vale in a container and lints `*.md` (Markdown) files in the path `./content/influxdb/cloud-dedicated/write-data/` using the specified configuration for `cloud-dedicated`: -```sh -docker compose run -T vale --config=content/influxdb/cloud-dedicated/.vale.ini --minAlertLevel=error content/influxdb/cloud-dedicated/write-data/**/*.md -``` - -The output contains error-level style alerts for the Markdown content. - -**Note**: We strongly recommend running Vale, but it's not included in the -docs-v2 pre-commit hooks](#automatic-pre-commit-checks) for now. -You can include it in your own Git hooks. - -If a file contains style, spelling, or punctuation problems, -the Vale linter can raise one of the following alert levels: - -- **Error**: - - Problems that can cause content to render incorrectly - - Violations of branding guidelines or trademark guidelines - - Rejected vocabulary terms -- **Warning**: General style guide rules and best practices -- **Suggestion**: Style preferences that may require refactoring or updates to an exceptions list - -### Integrate Vale with your editor - -To integrate Vale with VSCode: - -1. Install the [Vale VSCode](https://marketplace.visualstudio.com/items?itemName=ChrisChinchilla.vale-vscode) extension. -2. In the extension settings, set the `Vale:Vale CLI:Path` value to the path of your Vale binary (`${workspaceFolder}/node_modules/.bin/vale` for Yarn-installed Vale). - -To use with an editor other than VSCode, see the [Vale integration guide](https://vale.sh/docs/integrations/guide/). - -### Configure style rules - -`/.ci/vale/styles/` contains configuration files for the custom `InfluxDataDocs` style. - -The easiest way to add accepted or rejected spellings is to enter your terms (or regular expression patterns) into the Vocabulary files at `.ci/vale/styles/config/vocabularies`. - -To add accepted/rejected terms for specific products, configure a style for the product and include a `Branding.yml` configuration. As an example, see `content/influxdb/cloud-dedicated/.vale.ini` and `.ci/vale/styles/Cloud-Dedicated/Branding.yml`. - -To learn more about configuration and rules, see [Vale configuration](https://vale.sh/docs/topics/config). - -### Submit a pull request - -Push your changes up to your forked repository, then [create a new pull request](https://help.github.com/articles/creating-a-pull-request/). - -## Style & Formatting - -### Markdown - -Most docs-v2 documentation content uses [Markdown](https://en.wikipedia.org/wiki/Markdown). - -_Some parts of the documentation, such as `./api-docs`, contain Markdown within YAML and rely on additional tooling._ - -### Semantic line feeds - -Use [semantic line feeds](http://rhodesmill.org/brandon/2012/one-sentence-per-line/). -Separating each sentence with a new line makes it easy to parse diffs with the human eye. - -**Diff without semantic line feeds:** - -```diff +diff -Data is taking off. This data is time series. You need a database that specializes in time series. You should check out InfluxDB. +Data is taking off. This data is time series. You need a database that specializes in time series. You need InfluxDB. -``` - -**Diff with semantic line feeds:** - -```diff -Data is taking off. -This data is time series. -You need a database that specializes in time series. --You should check out InfluxDB. -+You need InfluxDB. -``` - -### Article headings - -Use only h2-h6 headings in markdown content. -h1 headings act as the page title and are populated automatically from the `title` frontmatter. -h2-h6 headings act as section headings. - -### Image naming conventions - -Save images using the following naming format: `project/version-context-description.png`. -For example, `influxdb/2-0-visualizations-line-graph.png` or `influxdb/2-0-tasks-add-new.png`. -Specify a version other than 2.0 only if the image is specific to that version. - -## Page frontmatter - -Every documentation page includes frontmatter which specifies information about the page. -Frontmatter populates variables in page templates and the site's navigation menu. - -```yaml +yaml title: # Title of the page used in the page's h1 seotitle: # Page title used in the html title and used in search engine results list_title: # Title used in article lists generated using the {{< children >}} shortcode @@ -387,72 +105,12 @@ append: # Append markdown content to an article (especially powerful with cascad metadata: [] # List of metadata messages to include under the page h1 updated_in: # Product and version the referenced feature was updated in (displayed as a unique metadata) source: # Specify a file to pull page content from (typically in /content/shared/) -``` - -### Title usage - -##### `title` - -The `title` frontmatter populates each page's HTML `h1` heading tag. -It shouldn't be overly long, but should set the context for users coming from outside sources. - -##### `seotitle` - -The `seotitle` frontmatter populates each page's HTML `title` attribute. -Search engines use this in search results (not the page's h1) and therefore it should be keyword optimized. - -##### `list_title` - -The `list_title` frontmatter determines an article title when in a list generated -by the [`{{< children >}}` shortcode](#generate-a-list-of-children-articles). - -##### `menu > name` - -The `name` attribute under the `menu` frontmatter determines the text used in each page's link in the site navigation. -It should be short and assume the context of its parent if it has one. - -#### Page Weights - -To ensure pages are sorted both by weight and their depth in the directory -structure, pages should be weighted in "levels." -All top level pages are weighted 1-99. -The next level is 101-199. -Then 201-299 and so on. - -_**Note:** `_index.md` files should be weighted one level up from the other `.md` files in the same directory._ - -### Related content - -Use the `related` frontmatter to include links to specific articles at the bottom of an article. - -- If the page exists inside of this documentation, just include the path to the page. - It will automatically detect the title of the page. -- If the page exists inside of this documentation, but you want to customize the link text, - include the path to the page followed by a comma, and then the custom link text. - The path and custom text must be in that order and separated by a comma and a space. -- If the page exists outside of this documentation, include the full URL and a title for the link. - The link and title must be in that order and separated by a comma and a space. - -```yaml +yaml related: - /v2.0/write-data/quick-start - /v2.0/write-data/quick-start, This is custom text for an internal link - https://influxdata.com, This is an external link -``` - -### Canonical URLs - -Search engines use canonical URLs to accurately rank pages with similar or identical content. -The `canonical` HTML meta tag identifies which page should be used as the source of truth. - -By default, canonical URLs are automatically generated for each page in the InfluxData -documentation using the latest version of the current product and the current path. - -Use the `canonical` frontmatter to override the auto-generated canonical URL. - -_**Note:** The `canonical` frontmatter supports the [`{{< latest >}}` shortcode](#latest-links)._ - -```yaml +yaml canonical: /path/to/canonical/doc/ # OR @@ -507,47 +165,7 @@ append: | Use this frontmatter with [cascade](#cascade) to add the same content to all children pages as well. -```yaml -cascade: - append: | - > [!Note] - > #### This is example markdown content - > This is just an example note block that gets appended to the article. -``` - -### Cascade - -To automatically apply frontmatter to a page and all of its children, use the -[`cascade` frontmatter](https://gohugo.io/content-management/front-matter/#front-matter-cascade) -built in into Hugo. - -```yaml -title: Example page -description: Example description -cascade: - layout: custom-layout -``` - -`cascade` applies the frontmatter to all children unless the child already includes -those frontmatter keys. Frontmatter defined on the page overrides frontmatter -"cascaded" from a parent. - -## Use shared content in a page - -Use the `source` frontmatter to specify a shared file to use to populate the -page content. Shared files are typically stored in the `/content/shared` directory. - -When building shared content, use the `show-in` and `hide-in` shortcodes to show -or hide blocks of content based on the current InfluxDB product/version. -For more information, see [show-in](#show-in) and [hide-in](#hide-in). - -## Shortcodes - -### Notes and warnings - -Shortcodes are available for formatting notes and warnings in each article: - -```md +md {{% note %}} Insert note markdown content here. {{% /note %}} @@ -555,148 +173,18 @@ Insert note markdown content here. {{% warn %}} Insert warning markdown content here. {{% /warn %}} -``` -### Product data - -Display the full product name and version name for the current page--for example: - -- InfluxDB 3 Core -- InfluxDB 3 Cloud Dedicated - -```md -{{% product-name %}} -``` - -Display the short version name (part of the key used in `products.yml`) from the current page URL--for example: - -- `/influxdb3/core` returns `core` - -```md -{{% product-key %}} -``` - -#### Enterprise name - -The name used to refer to InfluxData's enterprise offering is subject to change. -To facilitate easy updates in the future, use the `enterprise-name` shortcode -when referencing the enterprise product. -This shortcode accepts a `"short"` parameter which uses the "short-name". - -``` This is content that references {{< enterprise-name >}}. This is content that references {{< enterprise-name "short" >}}. -``` - -Product names are stored in `data/products.yml`. - -#### Enterprise link - -References to InfluxDB Enterprise are often accompanied with a link to a page where -visitors can get more information about the Enterprise offering. -This link is subject to change. -Use the `enterprise-link` shortcode when including links to more information about -InfluxDB Enterprise. - -``` -Find more info [here][{{< enterprise-link >}}] -``` - -### Latest patch version - -Use the `{{< latest-patch >}}` shortcode to add the latest patch version of a product. -By default, this shortcode parses the product and minor version from the URL. -To specify a specific product and minor version, use the `product` and `version` arguments. -Easier to maintain being you update the version number in the `data/products.yml` file instead of updating individual links and code examples. - -```md +md {{< latest-patch >}} {{< latest-patch product="telegraf" >}} {{< latest-patch product="chronograf" version="1.7" >}} -``` - -### Latest influx CLI version - -Use the `{{< latest-patch cli=true >}}` shortcode to add the latest version of the `influx` -CLI supported by the minor version of InfluxDB. -By default, this shortcode parses the minor version from the URL. -To specify a specific minor version, use the `version` argument. -Maintain CLI version numbers in the `data/products.yml` file instead of updating individual links and code examples. - -```md -{{< latest-patch cli=true >}} - -{{< latest-cli version="2.1" >}} -``` - -### API endpoint - -Use the `{{< api-endpoint >}}` shortcode to generate a code block that contains -a colored request method, a specified API endpoint, and an optional link to -the API reference documentation. -Provide the following arguments: - -- **method**: HTTP request method (get, post, patch, put, or delete) -- **endpoint**: API endpoint -- **api-ref**: Link the endpoint to a specific place in the API documentation -- **influxdb_host**: Specify which InfluxDB product host to use - _if the `endpoint` contains the `influxdb/host` shortcode_. - Uses the current InfluxDB product as default. - Supports the following product values: - - - oss - - cloud - - serverless - - dedicated - - clustered - -```md +md {{< api-endpoint method="get" endpoint="/api/v2/tasks" api-ref="/influxdb/cloud/api/#operation/GetTasks">}} -``` - -```md -{{< api-endpoint method="get" endpoint="{{< influxdb/host >}}/api/v2/tasks" influxdb_host="cloud">}} -``` - -### Tabbed Content - -To create "tabbed" content (content that is changed by a users' selection), use the following three shortcodes in combination: - -`{{< tabs-wrapper >}}` -This shortcode creates a wrapper or container for the tabbed content. -All UI interactions are limited to the scope of each container. -If you have more than one "group" of tabbed content in a page, each needs its own `tabs-wrapper`. -This shortcode must be closed with `{{< /tabs-wrapper >}}`. - -**Note**: The `<` and `>` characters used in this shortcode indicate that the contents should be processed as HTML. - -`{{% tabs %}}` -This shortcode creates a container for buttons that control the display of tabbed content. -It should contain simple markdown links with anonymous anchors (`#`). -The link text is used as the button text. -This shortcode must be closed with `{{% /tabs %}}`. - -**Note**: The `%` characters used in this shortcode indicate that the contents should be processed as Markdown. - -The `{{% tabs %}}` shortcode has an optional `style` argument that lets you -assign CSS classes to the tags HTML container. The following classes are available: - -- **small**: Tab buttons are smaller and don't scale to fit the width. -- **even-wrap**: Prevents uneven tab widths when tabs are forced to wrap. - -`{{% tab-content %}}` -This shortcode creates a container for a content block. -Each content block in the tab group needs to be wrapped in this shortcode. -**The number of `tab-content` blocks must match the number of links provided in the `tabs` shortcode** -This shortcode must be closed with `{{% /tab-content %}}`. - -**Note**: The `%` characters used in this shortcode indicate that the contents should be processed as Markdown. - -#### Example tabbed content group - -```md +md {{< tabs-wrapper >}} {{% tabs %}} @@ -713,592 +201,77 @@ Markdown content for tab 2. {{% /tab-content %}} {{< /tabs-wrapper >}} -``` - -#### Tabbed code blocks - -Shortcodes are also available for tabbed code blocks primarily used to give users -the option to choose between different languages and syntax. -The shortcode structure is the same as above, but the shortcode names are different: - -`{{< code-tabs-wrapper >}}` -`{{% code-tabs %}}` -`{{% code-tab-content %}}` - -````md -{{< code-tabs-wrapper >}} - -{{% code-tabs %}} -[Flux](#) -[InfluxQL](#) -{{% /code-tabs %}} - -{{% code-tab-content %}} - -```js -data = from(bucket: "example-bucket") - |> range(start: -15m) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) -``` {{% /code-tab-content %}} {{% code-tab-content %}} -```sql -SELECT "used_percent" -FROM "telegraf"."autogen"."mem" -WHERE time > now() - 15m -``` - -{{% /code-tab-content %}} - -{{< /code-tabs-wrapper >}} -```` - -#### Link to tabbed content - -To link to tabbed content, click on the tab and use the URL parameter shown. -It will have the form `?t=`, plus a string. -For example: - -``` -[Windows installation](/influxdb/v2.0/install/?t=Windows) -``` - -### Required elements - -Use the `{{< req >}}` shortcode to identify required elements in documentation with -orange text and/or asterisks. By default, the shortcode outputs the text, "Required," but -you can customize the text by passing a string argument with the shortcode. - -```md +md {{< req >}} -``` - -**Output:** Required - -```md -{{< req "This is Required" >}} -``` - -**Output:** This is required - -If using other named arguments like `key` or `color`, use the `text` argument to -customize the text of the required message. - -```md -{{< req text="Required if ..." color="blue" type="key" >}} -``` - -#### Required elements in a list - -When identifying required elements in a list, use `{{< req type="key" >}}` to generate -a "\* Required" key before the list. For required elements in the list, include -{{< req "\*" >}} before the text of the list item. For example: - -```md +md {{< req type="key" >}} - {{< req "\*" >}} **This element is required** - {{< req "\*" >}} **This element is also required** - **This element is NOT required** -``` +md -#### Change color of required text - -Use the `color` argument to change the color of required text. -The following colors are available: - -- blue -- green -- magenta - -```md -{{< req color="magenta" text="This is required" >}} -``` - -### Page navigation buttons - -Use the `{{< page-nav >}}` shortcode to add page navigation buttons to a page. -These are useful for guiding users through a set of docs that should be read in sequential order. -The shortcode has the following parameters: - -- **prev:** path of the previous document _(optional)_ -- **next:** path of the next document _(optional)_ -- **prevText:** override the button text linking to the previous document _(optional)_ -- **nextText:** override the button text linking to the next document _(optional)_ -- **keepTab:** include the currently selected tab in the button link _(optional)_ - -The shortcode generates buttons that link to both the previous and next documents. -By default, the shortcode uses either the `list_title` or the `title` of the linked -document, but you can use `prevText` and `nextText` to override button text. - -```md - {{ page-nav prev="/path/to/prev/" next="/path/to/next" >}} - + {{ page-nav prev="/path/to/prev/" prevText="Previous" next="/path/to/next" nextText="Next" >}} - + {{ page-nav prev="/path/to/prev/" next="/path/to/next" keepTab=true>}} -``` - -### Keybinds - -Use the `{{< keybind >}}` shortcode to include OS-specific keybindings/hotkeys. -The following parameters are available: - -- mac -- linux -- win -- all -- other - -```md - - -{{< keybind mac="⇧⌘P" other="Ctrl+Shift+P" >}} - - - -{{< keybind all="Ctrl+Shift+P" >}} - - - -{{< keybind mac="⇧⌘P" linux="Ctrl+Shift+P" win="Ctrl+Shift+Alt+P" >}} -``` - -### Diagrams - -Use the `{{< diagram >}}` shortcode to dynamically build diagrams. -The shortcode uses [mermaid.js](https://github.com/mermaid-js/mermaid) to convert -simple text into SVG diagrams. -For information about the syntax, see the [mermaid.js documentation](https://mermaid-js.github.io/mermaid/#/). - -```md +md {{< diagram >}} flowchart TB This --> That That --> There {{< /diagram >}} -``` - -### File system diagrams - -Use the `{{< filesystem-diagram >}}` shortcode to create a styled file system -diagram using a Markdown unordered list. - -##### Example filesystem diagram shortcode - -```md -{{< filesystem-diagram >}} - -- Dir1/ -- Dir2/ - - ChildDir/ - - Child - - Child -- Dir3/ - {{< /filesystem-diagram >}} -``` - -### High-resolution images - -In many cases, screenshots included in the docs are taken from high-resolution (retina) screens. -Because of this, the actual pixel dimension is 2x larger than it needs to be and is rendered 2x bigger than it should be. -The following shortcode automatically sets a fixed width on the image using half of its actual pixel dimension. -This preserves the detail of the image and renders it at a size where there should be little to no "blur" -cause by browser image resizing. - -```html +html {{< img-hd src="/path/to/image" alt="Alternate title" />}} -``` - -###### Notes - -- This should only be used on screenshots takes from high-resolution screens. -- The `src` should be relative to the `static` directory. -- Image widths are limited to the width of the article content container and will scale accordingly, - even with the `width` explicitly set. - -### Truncated content blocks - -In some cases, it may be appropriate to shorten or truncate blocks of content. -Use cases include long examples of output data or tall images. -The following shortcode truncates blocks of content and allows users to opt into -to seeing the full content block. - -```md +md {{% truncate %}} Truncated markdown content here. {{% /truncate %}} -``` - -### Expandable accordion content blocks - -Use the `{{% expand "Item label" %}}` shortcode to create expandable, accordion-style content blocks. -Each expandable block needs a label that users can click to expand or collapse the content block. -Pass the label as a string to the shortcode. - -```md -{{% expand "Label 1" %}} -Markdown content associated with label 1. -{{% /expand %}} - -{{% expand "Label 2" %}} -Markdown content associated with label 2. -{{% /expand %}} - -{{% expand "Label 3" %}} -Markdown content associated with label 3. -{{% /expand %}} -``` Use the optional `{{< expand-wrapper >}}` shortcode around a group of `{{% expand %}}` shortcodes to ensure proper spacing around the expandable elements: -```md -{{< expand-wrapper >}} -{{% expand "Label 1" %}} -Markdown content associated with label 1. -{{% /expand %}} - -{{% expand "Label 2" %}} -Markdown content associated with label 2. -{{% /expand %}} -{{< /expand-wrapper >}} -``` - -### Captions - -Use the `{{% caption %}}` shortcode to add captions to images and code blocks. -Captions are styled with a smaller font size, italic text, slight transparency, -and appear directly under the previous image or code block. - -```md -{{% caption %}} -Markdown content for the caption. -{{% /caption %}} -``` - ### Generate a list of children articles Section landing pages often contain just a list of articles with links and descriptions for each. This can be cumbersome to maintain as content is added. To automate the listing of articles in a section, use the `{{< children >}}` shortcode. -```md -{{< children >}} -``` - -The children shortcode can also be used to list only "section" articles (those with their own children), -or only "page" articles (those with no children) using the `show` argument: - -```md -{{< children show="sections" >}} - - - -{{< children show="pages" >}} -``` - -_By default, it displays both sections and pages._ - -Use the `type` argument to specify the format of the children list. - -```md -{{< children type="functions" >}} -``` - -The following list types are available: - -- **articles:** lists article titles as headers with the description or summary - of the article as a paragraph. Article headers link to the articles. -- **list:** lists children article links in an unordered list. -- **anchored-list:** lists anchored children article links in an unordered list - meant to act as a page navigation and link to children header. -- **functions:** a special use-case designed for listing Flux functions. - -#### Include a "Read more" link - -To include a "Read more" link with each child summary, set `readmore=true`. -_Only the `articles` list type supports "Read more" links._ - -```md +md {{< children readmore=true >}} -``` - -#### Include a horizontal rule - -To include a horizontal rule after each child summary, set `hr=true`. -_Only the `articles` list type supports horizontal rules._ - -```md -{{< children hr=true >}} -``` - -#### Include a code example with a child summary - -Use the `list_code_example` frontmatter to provide a code example with an article -in an articles list. - -````yaml -list_code_example: | - ```sh - This is a code example - ``` -```` - -#### Organize and include native code examples - -To include text from a file in `/shared/text/`, use the -`{{< get-shared-text >}}` shortcode and provide the relative path and filename. - -This is useful for maintaining and referencing sample code variants in their -native file formats. - -1. Store code examples in their native formats at `/shared/text/`. - -```md +md /shared/text/example1/example.js /shared/text/example1/example.py -``` - -2. Include the files--for example, in code tabs: - - ````md - {{% code-tabs-wrapper %}} - {{% code-tabs %}} - [Javascript](#js) - [Python](#py) - {{% /code-tabs %}} - {{% code-tab-content %}} - - ```js - {{< get-shared-text "example1/example.js" >}} - ``` - - {{% /code-tab-content %}} - {{% code-tab-content %}} - - ```py - {{< get-shared-text "example1/example.py" >}} - ``` - - {{% /code-tab-content %}} - {{% /code-tabs-wrapper %}} - ```` - -#### Include specific files from the same directory - -To include the text from one file in another file in the same -directory, use the `{{< get-leaf-text >}}` shortcode. -The directory that contains both files must be a -Hugo [_Leaf Bundle_](https://gohugo.io/content-management/page-bundles/#leaf-bundles), -a directory that doesn't have any child directories. - -In the following example, `api` is a leaf bundle. `content` isn't. - -```md +md content | |--- api | query.pdmc | query.sh | \_index.md -``` - -##### query.pdmc - -```md -# Query examples -``` - -##### query.sh - -```md -curl https://localhost:8086/query -``` - -To include `query.sh` and `query.pdmc` in `api/_index.md`, use the following code: - -````md -{{< get-leaf-text "query.pdmc" >}} - -# Curl example - -```sh -{{< get-leaf-text "query.sh" >}} -``` -```` - -Avoid using the following file extensions when naming included text files since Hugo interprets these as markup languages: -`.ad`, `.adoc`, `.asciidoc`, `.htm`, `.html`, `.markdown`, `.md`, `.mdown`, `.mmark`, `.pandoc`, `.pdc`, `.org`, or `.rst`. - -#### Reference a query example in children - -To include a query example with the children in your list, update `data/query_examples.yml` -with the example code, input, and output, and use the `list_query_example` -frontmatter to reference the corresponding example. - -```yaml +yaml list_query_example: cumulative_sum -``` - -#### Children frontmatter - -Each children list `type` uses [frontmatter properties](#page-frontmatter) when generating the list of articles. -The following table shows which children types use which frontmatter properties: - -| Frontmatter | articles | list | functions | -| :------------------- | :------: | :--: | :-------: | -| `list_title` | ✓ | ✓ | ✓ | -| `description` | ✓ | | | -| `external_url` | ✓ | ✓ | | -| `list_image` | ✓ | | | -| `list_note` | | ✓ | | -| `list_code_example` | ✓ | | | -| `list_query_example` | ✓ | | | - -### Authentication token link - -Use the `{{% token-link "" "%}}` shortcode to -automatically generate links to token management documentation. The shortcode -accepts two _optional_ arguments: - -- **descriptor**: An optional token descriptor -- **link_append**: An optional path to append to the token management link path, - `///admin/tokens/`. - -```md +md {{% token-link "database" "resource/" }} - + [database token](/influxdb3/enterprise/admin/tokens/resource/) -``` -InfluxDB 3 Enterprise and InfluxDB 3 Core support different kinds of tokens. -The shortcode has a blacklist of token descriptors for each that will prevent -unsupported descriptors from appearing in the rendered output based on the -current product. - -### Inline icons - -The `icon` shortcode allows you to inject icons in paragraph text. -It's meant to clarify references to specific elements in the InfluxDB user interface. -This shortcode supports Clockface (the UI) v2 and v3. -Specify the version to use as the second argument. The default version is `v3`. - -``` {{< icon "icon-name" "v2" >}} -``` -Below is a list of available icons (some are aliases): - -- add-cell -- add-label -- alert -- calendar -- chat -- checkmark -- clone -- cloud -- cog -- config -- copy -- dashboard -- dashboards -- data-explorer -- delete -- download -- duplicate -- edit -- expand -- export -- eye -- eye-closed -- eye-open -- feedback -- fullscreen -- gear -- graph -- hide -- influx -- influx-icon -- nav-admin -- nav-config -- nav-configuration -- nav-dashboards -- nav-data-explorer -- nav-organizations -- nav-orgs -- nav-tasks -- note -- notebook -- notebooks -- org -- orgs -- pause -- pencil -- play -- plus -- refresh -- remove -- replay -- save-as -- search -- settings -- tasks -- toggle -- trash -- trashcan -- triangle -- view -- wrench -- x - -### InfluxDB UI left navigation icons - -In many cases, documentation references an item in the left nav of the InfluxDB UI. -Provide a visual example of the navigation item using the `nav-icon` shortcode. -This shortcode supports Clockface (the UI) v2 and v3. -Specify the version to use as the second argument. The default version is `v3`. - -``` {{< nav-icon "tasks" "v2" >}} -``` - -The following case insensitive values are supported: - -- admin, influx -- data-explorer, data explorer -- notebooks, books -- dashboards -- tasks -- monitor, alerts, bell -- cloud, usage -- data, load data, load-data -- settings -- feedback - -### Flexbox-formatted content blocks - -CSS Flexbox formatting lets you create columns in article content that adjust and -flow based on the viewable width. -In article content, this helps if you have narrow tables that could be displayed -side-by-side, rather than stacked vertically. -Use the `{{< flex >}}` shortcode to create the Flexbox wrapper. -Use the `{{% flex-content %}}` shortcode to identify each column content block. - -```md +md {{< flex >}} {{% flex-content %}} Column 1 @@ -1307,30 +280,6 @@ Column 1 Column 2 {{% /flex-content %}} {{< /flex >}} -``` - -`{{% flex-content %}}` has an optional width argument that determines the maximum -width of the column. - -```md -{{% flex-content "half" %}} -``` - -The following options are available: - -- half _(Default)_ -- third -- quarter - -### Tooltips - -Use the `{{< tooltip >}}` shortcode to add tooltips to text. -The **first** argument is the text shown in the tooltip. -The **second** argument is the highlighted text that triggers the tooltip. - -```md -I like {{< tooltip "Butterflies are awesome!" "butterflies" >}}. -``` The rendered output is "I like butterflies" with "butterflies" highlighted. When you hover over "butterflies," a tooltip appears with the text: "Butterflies are awesome!" @@ -1368,28 +317,7 @@ This is only recommended when showing how functions that require a time range (such as `window()`) operate on input data. Use either `includeRange` argument name or provide the boolean value as the third argument. -##### Example Flux sample data shortcodes - -```md - - -{{% flux/sample %}} - - - -{{% flux/sample set="string" includeNull=false %}} - - - -{{% flux/sample "int" true %}} - - - - -{{% flux/sample set="int" includeNull=true includeRange=true %}} -{{% flux/sample "int" true true %}} -``` - +# ### Duplicate OSS content in Cloud Docs for InfluxDB OSS and InfluxDB Cloud share a majority of content. @@ -1399,97 +327,14 @@ To prevent duplication of content between versions, use the following shortcodes - `{{% oss-only %}}` - `{{% cloud-only %}}` -#### duplicate-oss - -The `{{< duplicate-oss >}}` shortcode copies the page content of the file located -at the identical file path in the most recent InfluxDB OSS version. -The Cloud version of this markdown file should contain the frontmatter required -for all pages, but the body content should just be the `{{< duplicate-oss >}}` shortcode. - -#### oss-only - -Wrap content that should only appear in the OSS version of the doc with the `{{% oss-only %}}` shortcode. +[Similar patterns apply - see full CONTRIBUTING.md for complete examples]}` shortcode. Use the shortcode on both inline and content blocks: -```md -{{% oss-only %}}This is inline content that only renders in the InfluxDB OSS docs{{% /oss-only %}} - -{{% oss-only %}} - -This is a multi-paragraph content block that spans multiple paragraphs and will -only render in the InfluxDB OSS documentation. - -**Note:** Notice the blank newline after the opening short-code tag. -This is necessary to get the first sentence/paragraph to render correctly. - -{{% /oss-only %}} - -- {{% oss-only %}}This is a list item that will only render in InfluxDB OSS docs.{{% /oss-only %}} -- {{% oss-only %}} - - This is a multi-paragraph list item that will only render in the InfluxDB OSS docs. - - **Note:** Notice shortcode is _inside_ of the line item. - There also must be blank newline after the opening short-code tag. - This is necessary to get the first sentence/paragraph to render correctly. - - {{% /oss-only %}} - -1. Step 1 -2. {{% oss-only %}}This is a list item that will only render in InfluxDB OSS docs.{{% /oss-only %}} -3. {{% oss-only %}} - - This is a list item that contains multiple paragraphs or nested list items and will only render in the InfluxDB OSS docs. - - **Note:** Notice shortcode is _inside_ of the line item. - There also must be blank newline after the opening short-code tag. - This is necessary to get the first sentence/paragraph to render correctly. - - {{% /oss-only %}} -``` - #### cloud-only Wrap content that should only appear in the Cloud version of the doc with the `{{% cloud-only %}}` shortcode. Use the shortcode on both inline and content blocks: -```md -{{% cloud-only %}}This is inline content that only renders in the InfluxDB Cloud docs{{% /cloud-only %}} - -{{% cloud-only %}} - -This is a multi-paragraph content block that spans multiple paragraphs and will -only render in the InfluxDB Cloud documentation. - -**Note:** Notice the blank newline after the opening short-code tag. -This is necessary to get the first sentence/paragraph to render correctly. - -{{% /cloud-only %}} - -- {{% cloud-only %}}This is a list item that will only render in InfluxDB Cloud docs.{{% /cloud-only %}} -- {{% cloud-only %}} - - This is a list item that contains multiple paragraphs or nested list items and will only render in the InfluxDB Cloud docs. - - **Note:** Notice shortcode is _inside_ of the line item. - There also must be blank newline after the opening short-code tag. - This is necessary to get the first sentence/paragraph to render correctly. - - {{% /cloud-only %}} - -1. Step 1 -2. {{% cloud-only %}}This is a list item that will only render in InfluxDB Cloud docs.{{% /cloud-only %}} -3. {{% cloud-only %}} - - This is a multi-paragraph list item that will only render in the InfluxDB Cloud docs. - - **Note:** Notice shortcode is _inside_ of the line item. - There also must be blank newline after the opening short-code tag. - This is necessary to get the first sentence/paragraph to render correctly. - - {{% /cloud-only %}} -``` - ### Show or hide content blocks in shared content The `source` frontmatter lets you source page content from another file and is @@ -1511,107 +356,22 @@ The `show-in` shortcode accepts a comma-delimited string of InfluxDB "versions" to show the content block in. The version is the second level of the page path--for example: `/influxdb//...`. -```md -{{% show-in "core,enterprise" %}} - -This content will appear in pages in the InfluxDB 3 Core and InfluxDB 3 Enterprise -documentation, but not any other InfluxDB documentation this content is shared in. - -{{% /show-in %}} -``` - -#### hide-in - -The `hide-in` shortcode accepts a comma-delimited string of InfluxDB "versions" -to hide the content block in. The version is the second level of the page -path--for example: `/influxdb//...`. - -```md -{{% hide-in "core,enterprise" %}} - -This content will not appear in pages in the InfluxDB 3 Core and InfluxDB 3 -Enterprise documentation, but will in all other InfluxDB documentation this -content is shared in. - -{{% /hide-in %}} -``` - ### All-Caps Clockface v3 introduces many buttons with text formatted as all-caps. Use the `{{< caps >}}` shortcode to format text to match those buttons. -```md -Click {{< caps >}}Add Data{{< /caps >}} -``` +html -### Code callouts - -Use the `{{< code-callout >}}` shortcode to highlight and emphasize a specific -piece of code (for example, a variable, placeholder, or value) in a code block. -Provide the string to highlight in the code block. -Include a syntax for the codeblock to properly style the called out code. - -````md -{{< code-callout "03a2bbf46249a000" >}} - -```sh -http://localhost:8086/orgs/03a2bbf46249a000/... -``` - -{{< /code-callout >}} -```` - -### InfluxDB University banners - -Use the `{{< influxdbu >}}` shortcode to add an InfluxDB University banner that -points to the InfluxDB University site or a specific course. -Use the default banner template, a predefined course template, or fully customize -the content of the banner. - -```html - {{< influxdbu >}} - + {{< influxdbu "influxdb-101" >}} - + {{< influxdbu title="Course title" summary="Short course summary." action="Take the course" link="https://university.influxdata.com/" >}} -``` - -#### Course templates - -Use one of the following course templates: - -- influxdb-101 -- telegraf-102 -- flux-103 - -#### Custom banner content - -Use the following shortcode parameters to customize the content of the InfluxDB -University banner: - -- **title**: Course or banner title -- **summary**: Short description shown under the title -- **action**: Text of the button -- **link**: URL the button links to - -### Reference content - -The InfluxDB documentation is "task-based," meaning content primarily focuses on -what a user is **doing**, not what they are **using**. -However, there is a need to document tools and other things that don't necessarily -fit in the task-based style. -This is referred to as "reference content." - -Reference content is styled just as the rest of the InfluxDB documentation. -The only difference is the `menu` reference in the page's frontmatter. -When defining the menu for reference content, use the following pattern: - -```yaml +yaml # Pattern menu: ___ref: @@ -1621,168 +381,26 @@ menu: menu: influxdb_2_0_ref: # ... -``` -## InfluxDB URLs +` -When a user selects an InfluxDB product and region, example URLs in code blocks -throughout the documentation are updated to match their product and region. -InfluxDB URLs are configured in `/data/influxdb_urls.yml`. - -By default, the InfluxDB URL replaced inside of code blocks is `http://localhost:8086`. -Use this URL in all code examples that should be updated with a selected provider and region. - -For example: - -```` -```sh -# This URL will get updated -http://localhost:8086 - -# This URL will NOT get updated -http://example.com -``` -```` - -If the user selects the **US West (Oregon)** region, all occurrences of `http://localhost:8086` -in code blocks will get updated to `https://us-west-2-1.aws.cloud2.influxdata.com`. - -### Exempt URLs from getting updated - -To exempt a code block from being updated, include the `{{< keep-url >}}` shortcode -just before the code block. - -```` -{{< keep-url >}} -``` -// This URL won't get updated -http://localhost:8086 -``` -```` - -### Code examples only supported in InfluxDB Cloud - -Some functionality is only supported in InfluxDB Cloud and code examples should -only use InfluxDB Cloud URLs. In these cases, use `https://cloud2.influxdata.com` -as the placeholder in the code block. It will get updated on page load and when -users select a Cloud region in the URL select modal. - -```` -```sh -# This URL will get updated -https://cloud2.influxdata.com -``` -```` - -### Automatically populate InfluxDB host placeholder - -The InfluxDB host placeholder that gets replaced by custom domains differs -between each InfluxDB product/version. -Use the `influxdb/host` shortcode to automatically render the correct -host placeholder value for the current product. You can also pass a single -argument to specify a specific InfluxDB product to use. -Supported argument values: - -- oss -- cloud -- cloud-serverless -- cloud-dedicated -- clustered -- core -- enterprise - -``` {{< influxdb/host >}} {{< influxdb/host "serverless" >}} -``` -### User-populated placeholders - -Use the `code-placeholders` shortcode to format placeholders -as text fields that users can populate with their own values. -The shortcode takes a regular expression for matching placeholder names. -Use the `code-placeholder-key` shortcode to format the placeholder names in -text that describes the placeholder--for example: - -```markdown -{{% code-placeholders "DATABASE_NAME|USERNAME|PASSWORD_OR_TOKEN|API_TOKEN|exampleuser@influxdata.com" %}} -```sh -curl --request POST http://localhost:8086/write?db=DATABASE_NAME \ - --header "Authorization: Token API_TOKEN" \ - --data-binary @path/to/line-protocol.txt -``` {{% /code-placeholders %}} Replace the following: - {{% code-placeholder-key %}}`DATABASE_NAME` and `RETENTION_POLICY`{{% /code-placeholder-key %}}: the [database and retention policy mapping (DBRP)](/influxdb/v2/reference/api/influxdb-1x/dbrp/) for the InfluxDB v2 bucket that you want to write to -- {{% code-placeholder-key %}}`USERNAME`{{% /code-placeholder-key %}}: your [InfluxDB 1.x username](/influxdb/v2/reference/api/influxdb-1x/#manage-credentials) +- {{% code-placeholder-key %} + +[Similar patterns apply - see full CONTRIBUTING.md for complete examples]}`USERNAME`{{% /code-placeholder-key %}}: your [InfluxDB 1.x username](/influxdb/v2/reference/api/influxdb-1x/#manage-credentials) - {{% code-placeholder-key %}}`PASSWORD_OR_TOKEN`{{% /code-placeholder-key %}}: your [InfluxDB 1.x password or InfluxDB API token](/influxdb/v2/reference/api/influxdb-1x/#manage-credentials) - {{% code-placeholder-key %}}`API_TOKEN`{{% /code-placeholder-key %}}: your [InfluxDB API token](/influxdb/v2/admin/tokens/) -``` - -## InfluxDB API documentation - -InfluxData uses [Redoc](https://github.com/Redocly/redoc) to generate the full -InfluxDB API documentation when documentation is deployed. -Redoc generates HTML documentation using the InfluxDB `swagger.yml`. -For more information about generating InfluxDB API documentation, see the -[API Documentation README](https://github.com/influxdata/docs-v2/tree/master/api-docs#readme). - -## JavaScript in the documentation UI - -The InfluxData documentation UI uses JavaScript with ES6+ syntax and -`assets/js/main.js` as the entry point to import modules from -`assets/js`. -Only `assets/js/main.js` should be imported in HTML files. - -`assets/js/main.js` registers components and initializes them on page load. - -If you're adding UI functionality that requires JavaScript, follow these steps: - -1. In your HTML file, add a `data-component` attribute to the element that - should be initialized by your JavaScript code. For example: - - ```html +html
    - ``` - -2. Following the component pattern, create a single-purpose JavaScript module - (`assets/js/components/my-component.js`) - that exports a single function that receives the component element and initializes it. -3. In `assets/js/main.js`, import the module and register the component to ensure - the component is initialized on page load. - -### Debugging JavaScript - -To debug JavaScript code used in the InfluxData documentation UI, choose one of the following methods: - -- Use source maps and the Chrome DevTools debugger. -- Use debug helpers that provide breakpoints and console logging as a workaround or alternative for using source maps and the Chrome DevTools debugger. - -#### Using source maps and Chrome DevTools debugger - -1. In VS Code, select Run > Start Debugging. -2. Select the "Debug Docs (source maps)" configuration. -3. Click the play button to start the debugger. -5. Set breakpoints in the JavaScript source files--files in the - `assets/js/ns-hugo-imp:` namespace-- in the - VS Code editor or in the Chrome Developer Tools Sources panel: - - - In the VS Code Debugger panel > "Loaded Scripts" section, find the - `assets/js/ns-hugo-imp:` namespace. - - In the Chrome Developer Tools Sources panel, expand - `js/ns-hugo-imp://assets/js/`. - -#### Using debug helpers - -1. In your JavaScript module, import debug helpers from `assets/js/utils/debug-helpers.js`. - These helpers provide breakpoints and console logging as a workaround or alternative for - using source maps and the Chrome DevTools debugger. -2. Insert debug statements by calling the helper functions in your code--for example: - - ```js + js import { debugLog, debugBreak, debugInspect } from './utils/debug-helpers.js'; const data = debugInspect(someData, 'Data'); diff --git a/build-scripts/build-copilot-instructions.js b/build-scripts/build-copilot-instructions.js index 490fc266c..1e537dc74 100644 --- a/build-scripts/build-copilot-instructions.js +++ b/build-scripts/build-copilot-instructions.js @@ -23,6 +23,7 @@ export { buildContributingInstructions }; /** Build instructions from CONTRIBUTING.md * This script reads CONTRIBUTING.md, formats it appropriately, * and saves it to .github/instructions/contributing.instructions.md + * Includes optimization to reduce file size for better performance */ function buildContributingInstructions() { // Paths @@ -41,6 +42,9 @@ function buildContributingInstructions() { // Read the CONTRIBUTING.md file let content = fs.readFileSync(contributingPath, 'utf8'); + // Optimize content by removing less critical sections for Copilot + content = optimizeContentForContext(content); + // Format the content for Copilot instructions with applyTo attribute content = `--- applyTo: "content/**/*.md, layouts/**/*.html" @@ -59,7 +63,17 @@ ${content}`; // Write the formatted content to the instructions file fs.writeFileSync(instructionsPath, content); - console.log(`✅ Generated Copilot instructions at ${instructionsPath}`); + const fileSize = fs.statSync(instructionsPath).size; + const sizeInKB = (fileSize / 1024).toFixed(1); + console.log( + `✅ Generated instructions at ${instructionsPath} (${sizeInKB}KB)` + ); + + if (fileSize > 40000) { + console.warn( + `⚠️ Instructions file is large (${sizeInKB}KB > 40KB) and may impact performance` + ); + } // Add the file to git if it has changed try { @@ -74,3 +88,58 @@ ${content}`; console.warn('⚠️ Could not add instructions file to git:', error.message); } } + +/** + * Optimize content for Copilot by removing or condensing less critical sections + * while preserving essential documentation guidance + */ +function optimizeContentForContext(content) { + // Remove or condense sections that are less relevant for context assistance + const sectionsToRemove = [ + // Installation and setup sections (less relevant for writing docs) + /### Install project dependencies[\s\S]*?(?=\n##|\n###|$)/g, + /### Install Node\.js dependencies[\s\S]*?(?=\n##|\n###|$)/g, + /### Install Docker[\s\S]*?(?=\n##|\n###|$)/g, + /#### Build the test dependency image[\s\S]*?(?=\n##|\n###|$)/g, + /### Install Visual Studio Code extensions[\s\S]*?(?=\n##|\n###|$)/g, + /### Run the documentation locally[\s\S]*?(?=\n##|\n###|$)/g, + + // Testing and CI/CD sections (important but can be condensed) + /### Set up test scripts and credentials[\s\S]*?(?=\n##|\n###|$)/g, + /#### Test shell and python code blocks[\s\S]*?(?=\n##|\n###|$)/g, + /#### Troubleshoot tests[\s\S]*?(?=\n##|\n###|$)/g, + /### Pytest collected 0 items[\s\S]*?(?=\n##|\n###|$)/g, + + // Long code examples that can be referenced elsewhere + /```[\s\S]{500,}?```/g, + + // Repetitive examples + /#### Example[\s\S]*?(?=\n####|\n###|\n##|$)/g, + ]; + + // Remove identified sections + sectionsToRemove.forEach((regex) => { + content = content.replace(regex, ''); + }); + + // Condense whitespace + content = content.replace(/\n{3,}/g, '\n\n'); + + // Remove HTML comments + content = content.replace(//g, ''); + + // Shorten repetitive content + content = content.replace(/(\{%[^%]+%\})[\s\S]*?\1/g, (match) => { + // If it's a long repeated pattern, show it once with a note + if (match.length > 200) { + const firstOccurrence = match.split('\n\n')[0]; + return ( + firstOccurrence + + '\n\n[Similar patterns apply - see full CONTRIBUTING.md for complete examples]' + ); + } + return match; + }); + + return content; +} diff --git a/compose.yaml b/compose.yaml index 0b160f3d2..52c68a41a 100644 --- a/compose.yaml +++ b/compose.yaml @@ -303,14 +303,7 @@ services: container_name: influxdb3-core image: influxdb:3-core ports: - - 8181:8181 - volumes: - - type: bind - source: test/influxdb3/core/data - target: /var/lib/influxdb3/data - - type: bind - source: test/influxdb3/core/plugins - target: /var/lib/influxdb3-plugins + - 8282:8181 command: - influxdb3 - serve @@ -319,6 +312,13 @@ services: - --object-store=file - --data-dir=/var/lib/influxdb3/data - --plugin-dir=/var/lib/influxdb3/plugins + volumes: + - type: bind + source: test/.influxdb3/core/data + target: /var/lib/influxdb3/data + - type: bind + source: test/.influxdb3/core/plugins + target: /var/lib/influxdb3/plugins influxdb3-enterprise: container_name: influxdb3-enterprise image: influxdb:3-enterprise @@ -339,10 +339,10 @@ services: - --license-email=${INFLUXDB3_LICENSE_EMAIL} volumes: - type: bind - source: test/influxdb3/enterprise/data + source: test/.influxdb3/enterprise/data target: /var/lib/influxdb3/data - type: bind - source: test/influxdb3/enterprise/plugins + source: test/.influxdb3/enterprise/plugins target: /var/lib/influxdb3/plugins telegraf-pytest: container_name: telegraf-pytest diff --git a/test/.gitignore b/test/.gitignore index bcdfd10db..ec06da563 100644 --- a/test/.gitignore +++ b/test/.gitignore @@ -10,5 +10,6 @@ tmp .config* .env* **/.env.test +.influxdb3 .pytest_cache .test-run.txt diff --git a/test/influxdb3-plugins/request.py b/test/influxdb3-plugins/request.py deleted file mode 100644 index 254d50569..000000000 --- a/test/influxdb3-plugins/request.py +++ /dev/null @@ -1,24 +0,0 @@ -def process_request(influxdb3_local, query_parameters, request_headers, request_body, args=None): - """ - Process an HTTP request to a custom endpoint in the InfluxDB 3 processing engine. - Args: - influxdb3_local: Local InfluxDB API client - query_parameters: Query parameters from the HTTP request - request_headers: Headers from the HTTP request - request_body: Body of the HTTP request - args: Optional arguments passed from the trigger configuration - """ - influxdb3_local.info("Processing HTTP request to custom endpoint") - # Handle HTTP requests to a custom endpoint - - # Log the request parameters - influxdb3_local.info(f"Received request with parameters: {query_parameters}") - - # Process the request body - if request_body: - import json - data = json.loads(request_body) - influxdb3_local.info(f"Request data: {data}") - - # Return a response (automatically converted to JSON) - return {"status": "success", "message": "Request processed"} diff --git a/test/influxdb3-plugins/schedule.py b/test/influxdb3-plugins/schedule.py deleted file mode 100644 index f5cbd9d7f..000000000 --- a/test/influxdb3-plugins/schedule.py +++ /dev/null @@ -1,12 +0,0 @@ -def process_scheduled_call(influxdb3_local, call_time, args=None): - """ - Process a scheduled call from the InfluxDB 3 processing engine. - - Args: - influxdb3_local: Local InfluxDB API client - call_time: Time when the trigger was called - args: Optional arguments passed from the trigger configuration - """ - influxdb3_local.info(f"Processing scheduled call at {call_time}") - if args: - influxdb3_local.info(f"With arguments: {args}") \ No newline at end of file diff --git a/test/influxdb3-plugins/wal_table.py b/test/influxdb3-plugins/wal_table.py deleted file mode 100644 index 05d967500..000000000 --- a/test/influxdb3-plugins/wal_table.py +++ /dev/null @@ -1,18 +0,0 @@ -def process_writes(influxdb3_local, table_batches, args=None): - """ - Process writes to the InfluxDB 3 processing engine, handling - data persisted to the object store. - """ - # Process data as it's written to the database - for table_batch in table_batches: - table_name = table_batch["table_name"] - rows = table_batch["rows"] - - # Log information about the write - influxdb3_local.info(f"Processing {len(rows)} rows from {table_name}") - - # Write derived data back to the database - line = LineBuilder("processed_data") - line.tag("source_table", table_name) - line.int64_field("row_count", len(rows)) - influxdb3_local.write(line) \ No newline at end of file diff --git a/test/influxdb3/auth.test.sh b/test/influxdb3/auth.test.sh new file mode 100644 index 000000000..f99e052d9 --- /dev/null +++ b/test/influxdb3/auth.test.sh @@ -0,0 +1,26 @@ + +# [core3,enterprise3] +# Bearer auth works with v1 /query +curl -v http://localhost:8181/query \ +--header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ +--data-urlencode "db=sensors" \ +--data-urlencode "q=SELECT * FROM home" + +# Bearer auth works with v1 /write +curl -v "http://localhost:8181/write?db=sensors" \ + --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ + --data-raw "sensors,location=home temperature=23.5 1622547800" + +# Basic auth works with v1 /write +curl -v "http://localhost:8181/write?db=sensors" \ +--user "admin:${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ +--data-raw "sensors,location=home temperature=23.5 1622547800" + +# URL auth works with v1 /write +curl -v "http://localhost:8181/write?db=sensors&u=admin&p=${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ +--data-raw "sensors,location=home temperature=23.5 1622547800" + +# Token auth works with /api/v2/write +curl -v http://localhost:8181/write?db=sensors \ +--header "Authorization: Token ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ +--data-raw "sensors,location=home temperature=23.5 1622547800" \ No newline at end of file diff --git a/test/influxdb3/database.test.sh b/test/influxdb3/database.test.sh new file mode 100644 index 000000000..e0a111e7c --- /dev/null +++ b/test/influxdb3/database.test.sh @@ -0,0 +1,4 @@ +# [core3,enterprise3] +# Delete a database with hard delete at date +curl -v -X DELETE "http://localhost:8181/api/v3/configure/database?hard_delete_at=20250701&db=sensors" \ + --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ No newline at end of file From 37fdedd889b0199bdc6ac96790b9abc10efb6718 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 1 Jul 2025 09:47:51 -0500 Subject: [PATCH 79/80] chore(test): Untrack influxdb3 data and plugins used in Docker configurations and testing Update test/influxdb3/engine.test.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- test/influxdb3/auth.test.sh | 26 -------------------------- test/influxdb3/database.test.sh | 4 ---- 2 files changed, 30 deletions(-) delete mode 100644 test/influxdb3/auth.test.sh delete mode 100644 test/influxdb3/database.test.sh diff --git a/test/influxdb3/auth.test.sh b/test/influxdb3/auth.test.sh deleted file mode 100644 index f99e052d9..000000000 --- a/test/influxdb3/auth.test.sh +++ /dev/null @@ -1,26 +0,0 @@ - -# [core3,enterprise3] -# Bearer auth works with v1 /query -curl -v http://localhost:8181/query \ ---header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ ---data-urlencode "db=sensors" \ ---data-urlencode "q=SELECT * FROM home" - -# Bearer auth works with v1 /write -curl -v "http://localhost:8181/write?db=sensors" \ - --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ - --data-raw "sensors,location=home temperature=23.5 1622547800" - -# Basic auth works with v1 /write -curl -v "http://localhost:8181/write?db=sensors" \ ---user "admin:${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ ---data-raw "sensors,location=home temperature=23.5 1622547800" - -# URL auth works with v1 /write -curl -v "http://localhost:8181/write?db=sensors&u=admin&p=${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ ---data-raw "sensors,location=home temperature=23.5 1622547800" - -# Token auth works with /api/v2/write -curl -v http://localhost:8181/write?db=sensors \ ---header "Authorization: Token ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ ---data-raw "sensors,location=home temperature=23.5 1622547800" \ No newline at end of file diff --git a/test/influxdb3/database.test.sh b/test/influxdb3/database.test.sh deleted file mode 100644 index e0a111e7c..000000000 --- a/test/influxdb3/database.test.sh +++ /dev/null @@ -1,4 +0,0 @@ -# [core3,enterprise3] -# Delete a database with hard delete at date -curl -v -X DELETE "http://localhost:8181/api/v3/configure/database?hard_delete_at=20250701&db=sensors" \ - --header "Authorization: Bearer ${INFLUXDB3_ENTERPRISE_ADMIN_TOKEN}" \ No newline at end of file From 927f766ff411fc4a46e981ab1fdd762c21a664c4 Mon Sep 17 00:00:00 2001 From: Jason Stirnaman Date: Tue, 1 Jul 2025 13:17:06 -0500 Subject: [PATCH 80/80] hotfix(3-core-ent): Update product version --- data/products.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/products.yml b/data/products.yml index 65a95f9dc..f92229b2e 100644 --- a/data/products.yml +++ b/data/products.yml @@ -6,7 +6,7 @@ influxdb3_core: versions: [core] list_order: 2 latest: core - latest_patch: 3.1.0 + latest_patch: 3.2.0 placeholder_host: localhost:8181 ai_sample_questions: - How do I install and run InfluxDB 3 Core? @@ -21,7 +21,7 @@ influxdb3_enterprise: versions: [enterprise] list_order: 2 latest: enterprise - latest_patch: 3.1.0 + latest_patch: 3.2.0 placeholder_host: localhost:8181 ai_sample_questions: - How do I install and run InfluxDB 3 Enterprise?

    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 z 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�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

    vu-Z^JJ^j;w4*p)tJ85t=?Sez4z8i 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 z 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 z z#3eO|^fn@C`*8yx<+Ye9JlysA1(C(M3+jXBhBwU7sTwwb;lb)Z>d{( zV=jcpP%G4M#jSd&xm5el1=mWuy{x?e?YZb>Mp8eMTKP^-ghj(SMt*nUYzXO`n{v}C z$gd1TR!j-nqGI)0*J?f6z20=jo7c9KwyVl&mI}`A=2*fL z!H|@%XW{<79Te17pi5y+8v1hq2-`POTi^A65$qHOb^{ltt~c&&b;TRL^0>0Lc14`w zB$m!Cd5uq4c4O-Qbf);JOa=D8rZU+!iAH&Dn8n|@B1%-t1`+8$*Xq}>S3=qGs-qK|H2yTtJxzk3ZG>k(39_3Y$W9ERnzT@YMi=J>Z!X-B|ma;2Y$yUQvdC;(rMWeOMSwTuP=2}>+ zkFh@yz(!>F!E6N35azRDF&(5X$LR^p4?+gt63@%^E|$%v%sT-hte%lg2j*^wyWxZ# z^KzktA0(BEO#b=r{)5~D#52q&B!tN@CpkR6tb|aaFOW#@h!6!LJ>*A>=$;2@M0UxE zkVqh>!9kyt&Ou*{k7fZ_CMaKW;+8N1Ii5l$g*_3WhyVokBS>KuyzXS24OG}|4eG1W zb$^0IvRRHrTrHx1ADFP_0Sg|(6i!ZMd)AY_I@oh%4M&FD4e8~uv!T-&ojjWY-&KY z!0O`>1ouf^G_JyeykeGma$#+8H0%++$hLr!p^5jDU{0BEysd=Rd@+hiB83l~hzE*V z5CTy_67qtGYD>@)G@lfo1o3gMlHf;I@}Y!)2}n&R_7UkuAo_|JNLWHH79ElFUXpAP zyRHQVuoNNy%Z^rw!(B)X1#(2sDv#r`N*ds3Tm*P+9vonS!~zpv!_gu4u^bt2YmS}k z)A|s0Coow|i96=rDcPV%FUvoe4ItNf5-+?)VEo1F`T5N6g9J=Hwe$Eya#{Tdm1g$%Ah!HRF$caRl9B@tigG{Q_kB95!^ zG1)H<0~`iqgh-bw()=ba0*)>ay*m0YVnA^hA1}IFfwa8BC`b!w%+^_h12p_E#e1HasWJM8xv9i3l{htPfl*G$66ZqN zyXn51ny5=4`cfc>OG1hjFDI8I55t`5D$WQRK(>OpJ_$@A-PVPHhP}m7LKzuh$1=#d zOa@duAZ1+FkB@1mP4`H=i~C!~*f*va$x&O7r61V-`4Dl{kC9bO%A5f8R*XdPo&wDJ zAXD(x)wMJhp>?{Jc;^t%3PoauPjD*BS_>!K{k zk=ONIQAmj?Hx+uK7?)x>NSsfJtM)?0^F)UjjuhG|6iBx`Ida`%VA!6&LZYbaw#>XM zhm72Nt)0jkpn)gi%V$WBzlX~_3BHZ~`C@t%uE3YZboiHsyKjEqlAj^*=H08!&5sX` z^7BJ#3#J#VSLS2t;WXSUZ_E{QJb0(?m;IIMNJe{ean+ld=T70(@?O9G&Qvc)1z0r~ zz4LFH;KOgdK&}=Fo726)$(eL#^~IxNAly51OU&=?{Q38(;Mc1UFAwYbaeeCbmxY|J zWrni&p%M(s?ZTfLucnVJScIW@g{R*RZ}Yov|LS)g+4at*ZslDD?sbR%sZvGu&;|Z* zpxu2ve9S5{6$^u=U0r&U0&Xo9lhShKJ`AkG`9d;36%JQ}Ucu@bfw%AFH}hKIRM^;4 zz-ZZ-RI+l|KJ|i<0K3L!QP3NAjzGHniBas-B7cX8hqjU92O{Zv=DSh|!XSjH5a?6I zBZ)LW@}>$oj4Se~mMkik0!0$Hfi0~<52#REiYk;`ax@okREY&j8aFVXX0{$#3|YGs z47n6TSvi};C%FtRX>f#_Krhzsghyju1i@Db<_l=8Dv&? zX9zHPh{VZayjJRHm99A_y6;wIu$T-=`yhJd*}Du9-<#o)NK9&@oY z-jc`f9I=|wB6|XqVz4XiJ;ZFBI ze+mK5zQ?B~2ys?6(eLOM+W7ur>dmst$uBWaz%UJLecyb2$4?s4BtJy>i3^RDO|;g} zIjQ06o3+J>B_48EH(k3t8emqVqdm9Ad$x8ldR5E*d^6ww5tM@{NM9KPIioD6kH#zH z-j=WHx&Hxn#PQ=W18*}~^nk}VX4Bg7(sg&Hd^11ws-EJjIs2BCXC|1ND!YK|DVV+cNmuds zw6S>G4yM({EVN?AeaYonzu@TqoQSqsNCi|TTld57DNxKAvw<)+qw`!OA4`##n1}_*Ih>Mm*6@aW45f<&^t^V4SN>M z^i@Vdo_IIF>s6CMVoklHH+k{7=srni2EdE{^&(;(5imj00we<@2LWkW;gfy&0(J#A zf-)f~$cz?rM6qzh*GO74ivL!8T%+$tfrQMAAd7<4s6N`E)H?bA^iro~9(oJIv9CUU zNIBKen3=iboa!IkPq#-WUO^sfdZ{KK2@l%BuFZ#Ir6NuA%xp6auif6f(7Z~0374X1 zU)gfe>C{07?3OLRn#zjPQW@#tKhN78&0O6pgOqTdYW!w%usN?S9&!(tfsk(9G;3tLKhW1`QyQH-07X9I6pYGfv&;kLo%+l^4YnRX+dFewQukk!2HNAq#Cxu22l zb7wBNocL~0$%tF&!a_PuKfpPBD7U>43Lh;rmT-NvIavhKm(^4-d#R$wYT65eTfOdV zby8=Yu(*{QqRR9(yXxjXc%Z%2*e?x!kOrc7;C{-sedBJ&sz3brd{NsoB&l#T{CRQr zd|%luZOz{ON}7oO^=mtQcKqGWaOZ7%bv8*m4eP%2&Awt+?m)@>4@bqVakbJ(=l0It zRB=7CF#j%8e)lFES2tx{byRoIe<=JkpLF`|ecYZH14puigIm>d#_y*f?^+8t>|9KP zi?BCP0<`Gw6&6+wmVW2%y$EkW5q7Fx!N%$^U-@O-eisDW)BJ5^&;8T+%-h}%lDrP_CMMG-pQsfN8Vd#~ z4FHM5NdDvXOZ=A!dgWg~x8cwJ!UUq&DGa3Ue$5LT7f#Om;9s5qJwU?0deC%^FsyBX z8hqYZnnC>3_5eLUH<^X7%#QZ_Sar*<$by=v_$fp`ZV9* zc>yesy5DN)Vcy>;Vz9 zzHl6wB#@tk9NQP8NEEGb($ZUq%f|wWuyI_jK%z`%j!hR{An^78cJ>a$GeUD^qN-4hOhSd$*WpY3m25090* z%%ocH;6J9d(^d3axt{fR{Jn>=M(wU%U1{g`|l9nh?MxZWO=~# zQ$m<**J4J*5G7y*BVjUB)TUUyE4>oWIkIZ9^;l9?$Co5b0u%pD!cf+xh?Bvmi=LFG z2}FpE!Z5A$qNm=_lyg$M9G|Kj8%})Tc>7=6!Yawa#5=bjeGEiPnaQs+%YXia>VsbE zo4%_+l;6w;r*gfR&D+D_J7LWYnsaD*y$fFwvp z;72&e*3)jF0aG&5QJ_eXZlMx@;zDx}k=mAmL^7J5NDSBAiqb zF(DtR5U(JxR+61kB1Gne&^0iUeCYWR6)4uL<5F?ykfSXo4jSQ$4>?5~Z@5I()&Ih*t}>{FQj7FP#@>ItecyBfY55`Osjhgw z)SSH%UYiR!vhN9hWI==f47q}VxrB;9l6Qpy6N+ud;EYN))h!zph!(ro32$>&2kngX=7kmG7?G-;M4wN_Eg}Psu z%hh@?4l@h<(6pNA+!o&Jy>Ws&1r5%;-VWaGqqlu`Bh%SzT03ZGc4+4O`)q1izRc&w z2k3>Vqios#;A)xv{#0o3bO9@!<2!Zf3<<1-5zl|qf@_KqF$TN~6;*QJ8qG2B67!Nl z93Q+%4}Ji2IO3V4{jcIlL`;r|EjKv^fN6=WFFu8kNob1)JH1FPcGcsF+>&QM@3|AJ za$UU3EtIj}xzwT%e&iJDga5Oey-O{`c2Kp?w!Onu$A1}^{S{atuV&lV*@vdw+V#F` zYL)cP;e-AxSDpvD^x@fmKqcF zPy8&e#8nA6;Dw*-;KUyrB6a{V>*2-QUa(M;BwLw)nne3Vq~t*`z9y}hf+#^<5U>_E zh@o_@NwJN(Xe}s0CO60KINo4E4{N2cIIdX+EYA`@eRB3-EUA(phuGqvX*9&j+CtV* zfV_{2%UHmO*%EsN?OlyXb64tkxJ?R(jwh{c#LP+XqCsAmNH&ASy{V~TEa;c{xsq{RZf#vX7;`rqZRPVFQyA>^R~dKGbe&bP?RF2dx$;ian=BP{x1sfR zm+8mh2x=P2rZ$1_^V;% zb*Y@aE$&TM?&a0(Xiqfn%AKsFzby>{{PRh#KDgZ7ekkG5O-Fim@Ho$3^c`;`w|*!Y z{hC?2+H~gs0x>_4H=isHRz3LSw-~OS9ena7(V7!43`5ANJ5!a{Z%*JQeun1M~AjPV@vI zA9S{770cCZr5K?5!c<6ELCH0Xg_EqBuDk`eN~zLU7Fpr?VNqBNXXgF`uEDxC_e>2B zfSog~zLdr3*=*us|#Vg2#n%KXFgtni5U!?kNODQ|K_An7PH?C%JKygo-e~} z{Wk?!#$^k7P?1S}#dH|7%%*1{`j!Arl@D ziwThP7tUMgs-(wykl!8%U!6?+T-K3yrm3@(YV_~s^UYoPAQho8PrDTwXM1ZEhy3D=%DK&qQN^A4_bTkNpK-ZYQfw>h? z&q9M;oE)P4IpVZNoMC3r$N^sa0v>CbU;+80LC#^4 zK$GxJ?mpJP0X#pk)&lvJd2t#4-`aC=FV2wM+MCg!1j9s6h_hnxK`~5Eh*ceg6B&V0 zuOtiuMj!xAfCVEIJcYy{40o+?y$aa*;0gW(pDPs9YbN#Ekk1i?HgG*~i2=a1D`kJ> zDVk(3)&tFCr?n#oFxj;j?=QkUk4q9c5ubsqR+46l5L-GlT|(YK-Vwigy~`L;UrixQ z0K_$1!y;)tFGU6r#%(W1qL@^oi2-y8 z8zQG}!T8R?$~6CFFO}aOgVd+7HybWXCGGXTF5Q&fi;tTRr7)GwtEHO&9S?(<-<_t? z$|e}r7pkNj|B$&)2UT|;bkc$4FQt;<+mD&R=;v4I;b@i}&+U_h#zQ_|32p~ZR@4&= zL}A7{cqW`3KAE@V&kqYz%+-v8su%G@??-V*l*XB$wt)-zQvcHmmRlc1Z!secR9fe@wkclO$<+ zCgxge5jr9xwJKdLNAyf%8ar5k5X;@=g)q`c9%)7z&Gy3M{sSJ#19^b$lEjj>FknGo zfE{2k(>*;cs=B&FR_Y8bJzQ(esOl<^xAe?(x6eO+#q+%1D>zVx{WGFpV+0>a%@%h# zkbKHXN3BX9h(77vB9P)*;Vo<-S-VqWg;zfu5DOT6(aHr8cyQ5*)U|aVB;b?P%7~fC zOy=a2@lFf&pves?oA@H_T`go=WU?77-01Ithhizhp%R%M@lY5^>Wq3Tv2W(%0N`5- z^-3aP=xxgH8*uoYQOduIq<$A$d=uS%>m%O&{N}J5e3JlGly4dgyy`y$zNxhTuBfZ{ z$6)i@uU1Zx=tjde2(lPJ9DokSTpcOxpcF#DqlD?b z`Odv*6Ca|GZ(Y;8U0qhxyM4Iq6TQcG3*xz4%#<{3#em45C|p#6MbK*^jMF=rDwK-9 z*7i3np!mlm!Z(e$^YU#@2lO@z;k#tnHks>?3GC}2&nx5ue)s>y+Y<2a5(HkiaeI@?hrAZFS7QfW)0)>~ zG+)bK{+fh(vt(YRbNnvQUXd(Q_kvv&QOHo{d+yspIYG|t$wE9SkZZtrHM zPAE=yzPDDGB@a)U$%?*fO+;L;4j@^lX8^h&*mS2=Q--qqM&$p|!hDyw@wb(^53`nu8KwmWh$k!W#uFZLg0U-h=#M-WdDT06)m`5ZS=PB@-|Gp{o0^g=( zm*1Jf{H-s06I%IhXux;1t>t%XeYMgzFY)?Z@XhJLcTvyRS>O4qMZM}!St8}@lGx%k zk9*a=a_uvqx5IbKS0%{nUx2R;C|~8>gKv|-fdYo!v`xz2c-U9i3wb4Lpn7IiZd080 zp82Rg-7an}szt3X)z3&=V9i;*3s!I0b;|Ef&Hfg-%O8zzE%0M2w0AGC&S)~2?Ha2K z-+#%Z+vjb_faJ?y#h=}%W`9)^iFYRR^)|kq%L;?v2_Jx<`RktkD6$5iuiiX+o&W!8 zpiu$B*{hDm=&N$-@>MN0guZHQ{c7Ss@+!icV&JQi!&m7AuOZG_WB%*^DS6#V0oVb6 zNw(TrLHeYQ-{sra(6yROvKQO!gQ`PLmSxQ{NMEHVX{5L_TqGpWcL^KF+-guyfJ_ld z3bW75vcs0y*YhP_RPgiN*$ky#5>;hW4v$J=^>P;N4tCqq|LX?%+lT*+6H_pW?}oqX zEa+!5A$aHUuvBw@_fZjl{-~4uUUwDYSAX|+BvUlz=1=QeDsIIK3rdLSe~3@fnM7Yy z?Q8>DQU5{y_aF3C_h*qY)_IQod%Tv8dfJVCrF?|Dlza&2j*En>dQu8*HoBCIYM4#} za7rv?lR7K`4t!y(4%H7TXJ2-6=zz#d1-CH|{e|za5;z@P7 zCO&5E$$u1*a77^}K)o>rRT zEKXSy)nd1*nup}9AZ4`NCBR%aVvgH@9<)P-@DfuyTZmzZJ1m&qE2GI`)pmZ-HFW5! zmoU<{f^2HRl9XiGUv2R?Ns%qbQYQ$zYZSF%lvIc)ba?{yDx#fa^8j8Ur4B89wj>E{ zB;Yp@{H|jF&6psH5Wup;6VrDF^Ch$Ka!qN#VPUcO$?^8_(NE*~PWBN>OPkZDKiP~% zJAKEzpKP+ohp-B5)?1f3u1=MK^EYJPQ_*K*1NlGkXM5o__|v;8}hqf zY|79S7S$M84Lg?xnO$vuM5t!(z5e$AAxm@WPF(THsB}Z(n9I#uE|E`(VT)K8{_`UL zcwQc@#tm9U`PB~+qDXptG4s{WHgxLZr!~T4X95zXg6B3G0gyW5OsTMT8ZM%C1VaIF zg7cDH&qg~GBL!ocX{?l z^V3aXm?^_hMbJ}TZYMJrK#IutU#(IDwNn;CG1ISv|_MTiP>EIiXtn_rs}3Lh+1 z^;Sqd%P-LIA$#rBOK;PtDA=562Y5B9{RMTuS8u7!Dt!2GoPZUm01nXUz65)a zh@K0JD6U=h5Rt_-T~&=tk$`NbEh6w>;N?EBQdg4Dsx;gZ+`*0^s0+x$$7dUt=(Ptq z1&0}dXq2kMz_oPl|5)u6J*c@059iO^d&N1N)2F9Gwj{3Tiy_(T=B-*bj=ST)82v>+WQ42-Fd-&+mvQe6gsE9KkrVm0|r=H&@r18sp(eIq~Y6$Sj*3Yel zV|;``|NO3q$YussJrrl2DFA(a=vd|N9@gMh$EBn>^o@4;rB(&W0113NqV1I4CF*mm zvgrE}O3!$tc(D^QwPSOV(!~`XKCk}~=iiI;(%10iyVFW%9!+X>WQ0~kx7_dJew%VgQ7`?K=J~e!R_K6zV zOnW3beWzc7hAuPl^W;8CWD$XIwS>Hg5ER%?%2o#zA@9q=chX!!qQ{Uhqq5+{fcEdOU=UUe@^ zXc4CIg{-2jdiVJjhU}b)8_?#QS*{=@`=P)KPk-m{6I4DAcPzKJ`~&8Lt~U|#;|;f# z?BM6Vcmp^hw%3kVRikgDtKJfsp(uT&0$W$d*X9hs=xhNz#gQ~HS5ph*!wO!$>YWcR zvzkys;T$-7XMcdu&QA|$0;sjUm$Ay;%!d@%ziLNzKn-xWczkmUh$Ubt)%{r)nihAu zG2drV44elPqDIAPMqyT^xvD_kGOFC|_Y9#x?Z*NmbG){T1Rj7G(5$5P5BHl#=E(~O z-^~2=>EBgv%WF#hAYIX%PbUt54V^|D67eR${!gDx;8O*nD(B# z4is-*6K(2djh#F4bgUa;N1qp`6ECoK?6$yek~@G}uUT z@ou&7ZdoA9CFBazIJABxkxY5>$sE*^zs}9)Su5L_TM+uJk_z$;Mf``kG~EBj`He+5 zr}SNkI;D$W-SdV2eY>5$B>8 zlSOdDxDTWMw3@U|fB4&*hXyT>U;VdWZ5AmyijV4d@H(Vnb6<~F)P{2_AgO7$gwP>P zG63r==o*H~rWVU`^FdsLQ`&;(Z4{Uli)zQ4-l zIeJpL-k(P{;r3WWHgT>4kh8>;T{V{Kdsh_M1{{@yJC3K_={bd~>=1IAkNk z9KUuu1ScMgqYHi}`mOq^eWh*j*v|NA#g9=mt9dHYM^TER2c{P(*u5@(ovKdHJ&mEi z-*n}yam~6M`bgM zgt2Z0)N7@7R6JgsVG4bZ?95FqUmj~ruqvPAmBUs00K10-PnUI|ynMvMwt_CByY&dgPmhg4o{f zkG}b{N+y5b`0KAZ=D)=M$7YL~PRje&$|drBd(%0PtfHD;2Ab;EP-a3eZ$~*6%C6_L~9W1=+G+1!8P2CWfr9bLIy;kF{QH?^@@E8 zM@>M=v$Sjd3IaU~xN)NB$Ck$Ik$rFk&GM<54C@7kxbGjfrqpUa?ljM|cl9z#xeR4i zsc~{p{wDK*pF5vM)b0y%_0c=pQG(WjCHvbV#H^m8yNu6TP5OHR|IuIVd1H1Dk1}Xh zP=k5V2|URD3|WdkJeUio)u*uKDlAQeeX;10)Kj&J)b{XYXiG5EzF=Q&P8x9b4SxM3 zY-T^WKGe2Xd*C%R*o3!}{#9^w9@Z4ioM$~E%j7s3O^X_|!&~Zj6l`(gzRccB+vLLS z>oh|WrwIw1kEGFqckjNMictf2;OuLDt=7eZ_dV+gY$NigIlFJoCnd|({5`AbwBsit z+xW}&2vyIUk4d|Mt9e`6w>mc0s?;xx#SNl?<`5?vQop*Q!181v7I99J@XW1v)T*%nUzVpzAMtBW$u(+G{e zUdF=nhcOvq<7xg<)0jHB?ciZk%p+hj+!bO)NN7FIn8?ZZs(eIDW)xdABOEeKBgqT8 zUag)iN6XLhfb0xU<01=dUf+wt7GP|y-!<%mk4mnz<*6`26$4I15Hgo}gmEhux$`X^ zdDe1>gR#5PEieD#4(NBoS_6#;qUnfbA1$9h2Tn`(S3&p?%U+_`viII4W@Y-(WP6t@ zc9#oT|BznL=hjiqY~Fr?qT8pH_&3jzX}q0*!H&UO`(;#Gtc4pIS)L*s zGBVMmVgWI-t&JM$*Pomd9$`T2tSJvw`SNc|h^D}J_30C|Ntb7>T`Q-6BlU=s#*kOxeVuPt<{ zXQ7^DShmpl!*^W0K~MR1|n}32qI=?w&ZSJ=sIdD8*4MeDLxI(J}H{J650;FM{cFHzr_$CkZF7 z&wH#oxH&6nVzyYg^Ocr{EwH&Y^bMO=qKz?di2KWF8d0OAPpq;? zj*&FHNl;V(B$TJIS2tpgm2%adwhSsOhKem#5D<(OLZflwjz0dZzB-ZK3E{`wZ34S^5rC5!d4kJ8_Dc*R z3(qutXCq(G;FhC3ddGJlqS(XDKdv>sPC6jtM0d1-5uj5FKW;hYUe#!e!So@=rm4;9!0qhC@ zCpnBp(~U`&0`i57>UcHtCp)OyN)S%HNz`Rlf57k+czZ;1yM^er8fHZW%}ctlZfTwa zXa449=1+Sgj@q!D-G@R zeGmL+M4Ayvpk>=7_VWUI9>Lj>EwRrSDgW|O`+p&`=?JpNvvPyhq#LH!c{K*TPmh+ZQ*kdo>pwN%3(nZroBiBwAf8)#^ zFpHQ#?aCL2y`}OM*ExDx1&wLuS9C*4DYWF?IS+|)wERET%!GMS$pD@9H%IgmKhtvL z*DlV!D|-wbPSdip(n@cDd>_-5Eols|Q6YL*UJ(cPzkJwY(v}Kc^-%s}4acBbaSxs8 z5}uqz6sOZ-zB{VCSC$QZ$of<09ZL~D32*euttq{GHO|(AhXf?RO&Sic9K4%*S@$3I z05RdNl@sBG`~2HIZ-H0`^b}sZHc<>P=l{W{k0%Meztz;Cr>n5E0IJnr`B&{SRE33G z0kT7nDu9?v3>1RMIAwXEP`@IGWQ#5mk=(xxSW0R=iN$akSLRCV*15jdgjDmzQUk-L z(u(e)TLP*iJ_O#XZ%FuJjjBA{BR(;zdO^VAxP>ow;<|BZGMfYlU>4TeZK#muNVOR3 z)%8f3%POZFhBMFFPKd|zt|Dg7#x+dmpt;Io{x3)T$HJlbDId5K@Zj@ifazz=Inq!~ zMbF}u?Q|=4rBNqVDIVJ}UP8-Rc}t`0FU7_g8(7=UHgz4%b=mm1N7u{Vlra3`oJ7?< zx8GUc4E+hq9^duF$}OMEob+2@f0Pe$S~IHKzFj-bfc0G~;>ZKa;?7KJ)nR}yA>NWw zXnJW|zLfcgUhjb-TiajK#80<#2(6F5-{xnN#YPc){e=9jUzFqEo>m`^R(m{maiYi| z1wr$rJFDD9{5czGKm|?%iA7Bj8V<$uj#Z!ID3P*Z z2jhe$21RB2sNA9eJpN?DCp|@2h;Ax4bIOfd9vKxvJT4yY1bPdto}e#;`TW*U11^3Y zxBRl}=47I+N)|4`rO!n`j$92umD^a5*dT_9Fhv;^-3Di~kTERw|1$AvN!>tl==<#o)M@;??M-nfk*L2iz#hny-PJNJtw_X50!5xqPR!8;k)ozB* zws3q-X;I!#CYSHNTdp{ju*?ej&9t@8U{^dA^Yr@5_}?Bu3Ux+5dn%pwg$KX>=090w z^h>f7^*wO9$ve<_=84~LgWYI^z|e{ZwV_i?mo@gY^FRIPr+H2YhY*y7nV*t zHRiKOSC>rru842)15QNtd`I;zpw&`oTeCo^O#(*2Q68-|uk)mg8pbRoVketyWKfZB zA@>*Q{nCY|NIlRN&c*gqgWH7pmp$G%9HhJ94Kkh9YnzNvg=_%r>jx-|?z{gY$}V5>RtwROwc>XcT^M zJ>EO#?_8Ky_Bb_Z=-6Bc)wP!re&s33-~X9k+X_|QN4)o7mCJXGWK0Fp)R+vQLtLu) zvwe5odO7+)b4SL_Pz21?{HneLsIk?k@p}UDpRbj}F&&>~&OTy`+X~pJ!|qg2%dybx z!#N!s#ND_Zqg2!EiU86G-Y1d0o{%KuJc6tK&AXrcA!R4wj=C3B><)~4`tnD?r@VXp zvxfvyc^rmaG_~Ev^P(6dNCp1c$U4#ZNpp<>SNgJmrHsUkk{ktRrFVru8uj2hP zxuqtxU6|rD{}%QF`}k8xUjtK=fHq=N@yZhvbgz&rATqC0r26;W-WJpYJ|9gZCR|86 z_0XY~b-LDb16z3?#S=Os z?Q0e+f`lejaB=*+smb94r@q!NSuo=5yN{2*mmOeQiLW6O^}n&Apz{)D~%v|=Yl$3jK2?yz3q`B?+#mRu?JPA zZhk3+i@Kh9C{jw?W&qy?mu~FHpE7{V>-s{;jgYZRvI%E7_NCj`4u8>(vMj6Jc!M%1 zd1f=e|Jm;8x6b{=vUYu9#GRCn3rNDFAj1lsV*}~ z?EE1FdVY{((;nsD=n;;ggc~ME5P^;p(WqMhSkBW)N43JLz@E!A7ySV}wg}3m&GQR~Dpnag!gY6$@!>{7D zx~XE%_CTY|FYbYz{m$oKY%VF@kWmWV$U9?d>R!Os4`1AXK_ff?g0Yv$-~dAh)dq-^ zuvpH=f`KzgJVMA=Lt25WusC^8D4CBR08*M>H`ggCo? z|0%Jf7}iJWo_M!IhaXPxF>T9}q%t9PGN{hKTdFi7sf~W}UtZ@N>|^J;MhCV*DmngQkS#~$$E`FImQ;+(diF~wo6?Nl_LclVdD zp4vJ#N#ObA8lpW5M$k_q!o|LU!e$s&!qyDFI9^3`oTKTS|9Y~UAGdDy%A%+cIbsE= zaEg?rNIFy4zc%?Cs&sg<{WNG79P<2<1KF)*jOBiQFTYWq?L1a|pBj8X{E1awe}C50 z{}|YWkdJ;p+&FZ@XWLw577>q3biMfS>7n79Vsmagim2R*{LoL5Wuao)cA0|cm+kWK z+m*P=HfrqoILE{HcwerGu-)AbOrQ2e0QSfnDLabE)pkEX&jAnVMrpNM2e0QYhcI`6 zy`oRZ`YE}|5jW$CnGtk}OkIC#n<;l$1)1vd;kFvx%g)*V?l1qpTp$qIh2}c6BH}(* zD8tee^AS*od=S~@ko&u{!a0@Ev(s_Tu=}b=?sfwvgIC{H&bSEAx1nNr(}UXvmkodb z!p(AG-N9ikshEft<|HH_+1UOgvss(950BA$X{~5h^rz~Y!wg}8ajG7#rYMZ0UDQ1B zO@b8p+)3=;BX?s=*;yEO8^eg2OdLAGw%ond=;a_o&JvvSo}*3d-)-erNP9}fTPsJ0 zn@`1uS5nkb#X@^maDWQLjp$s^j1L6@$cYN5Zb2l%tZh-^4C<&c4YPUVIcd}1$yV$4 zpI^;97dMomh}xO~(W0)k>?C1Tx+L&3Lto&R`gte11Xkc8Wo{(90#l6|%T_)dKjFcK zR~sQsG@fBRqWl9Y!#BTI6_t|7OUA=WJInl<5rj@z6Np+EPIv3*q2N2NWL0$ufxXIA z8HrXuod@2z--x)-Y|2i@SE*ydTcbi+ofd1{nkN+PQTXk{dDbk%%82rz$hIS6oFj;5 zJ>wh4cZgkdT+&@6b+5>qNefXg{$YhGZjR%K*IvSR)WcM&#L!t^qZIxIY#_98-VNXX#yF;dq^JMPLrq=QL%T#FE#a(^kok`Iw z4Yq2AI!7C21!^degpM6-xeDmSxnsEw>*46ZbiZ_a-;U#JJONguP?Bm$%s^=Hn4X{V zF;l+O8WJ~=3%iFaEk$XtSS&c56;#(0oDU-yqi?N&a5hb@hqdb{-;p3}?9(uC)U#h9 zf=isCZF8v?HF(}KOZOgY**NpzoiU3>3qq=^jk#vElc&$ z_Jt3cMUL+2s&VfUxnpe&)iYa9+ZPBe5CxP{iD{PiBRbTOwqcZ7DEN5<7t@VNHNqB= z_8C$zI}29UA{Pmoz6LWBL};Kl9MO&QiA`k;N1Gx`5L!qE=I4z;B8GC7tcKT4nzmg3 zU79bu#fJZF46jztf9nTInk9rcw72JHMV$+icn3)&_(hwH@IqR!F;cxdzQydr+|*n} zlR$zb1GKMTo?%f&@Ug48`!M{&&MrOqN(S%%7^QFtt z2jIj@pRX}N!Ko5E0_A|UaWpq4$b`@@E2(Rn$WzO>oD8yJlRyU5>ArztaZB7rp39Fv zB7&4$x&@5kMZ1~9L&?zVaG#Bs)$@wLyFVNK*ILMlo& z!iIEX?V+3j1A|L_d9S&{B}H^ycnBN>npJ1&IyRuIi+z1EOU(-pKe>YJOcDpFKCgWe z7zJ^JyeCYo;b-R+efcAP$wakWZeA>KFHQ4vFN3}@Bi`4<+Xz0hQj#L09SPO4Q~YXQ zrcZpfliMYwl2sG)DQ@mvV?#XR*u}0OMoPwJzm|!Ak}R809k?~y84B7eN@op+2-`3Q zf?;;lD_;6fqY})dP&QB=*Q-ie*te{lPu7Mahzq+;V23KeGAbV;Gt^@f7!`9AU$;!uuT)NOc!mH=D5sQ9+qh3rj$UWx>F5SMf`zg&usvqU?- z9cD1;PP52WlAP|OnP@i~Q>MJaz*mhr05J+lb5^W5d%z#IsNAH0%*x$_5u4h3t*6Nx zg`ra?%Kyc5ciEFbt4O1!T*pzj)~4mT)DgPdip8|FwR&|ZL}_t*a3)c=sLd}{Ef4xJ z6tvmCjn}FzB4WrH9#eAK0WzQSJY4^!_#x-j5h$z<3B{ILNCX^5ytN6B zhc-ZzWQ`XcsaLU{To@G%q#{*6fPM)v9Go?7>|{LBOVF!t*f(Z7ATuHmYN3Zrx3vw= zApJJ$RmZW9Er+E+;v>fmH#l@|5LY=^Ujqc(0YyX z^D6grpg5a);KsE|Z%4k`Y!9p%0^EBibQ=bYGLu8U@ylx51EV|L2o*M#^&*N{jJkZO zfkB7WlYyj%l?xd?tccu*%CDm-Rkm#Waz^%wYyOMP(_$e+#uQS34Fs6^t3#T;F1D45 z9cj2$_oy)w^7U1exn?)(XWcEC-4uo(47nO7oHiDX|@osuF~V2;xsjEPQ#v|omW^9C(%9iaD@RF{2Sq)*645_SSDI#XQWFT@|&r5i%R?S{M zL?xFza3bxDbG;@^G2}2AzUX8W3BsO)TAp3jX*TIBGks@VQw(WQz4dH-|t(fYs7#ov=G_ zy|>0BL8|z=uZ2y$G?;OKp|IRmmOeh#p2R@zW2gb=Sg_E@q=cCt?{p{>so!j;Bzglq zlZceanH%{uGXm_+;nGRGV0D#cBJ$FPl=8-C!XkR#2`BJXX{Z=#$FuQ~ zh`uP6w}8Pw;Zh4kqDIN(OcgFxXi}Tq8Hr>+#KR#iXAB~Pd_dJhFk(~tNrOf;hg4&? z|E=3G;7SS!bR9`b^5P14u?3G2EFtR^*XIPh98z#M0SvTkv&u!t(L;Pd!m|WPtO#vG z6ZqLj7kl<5>Ng#yq$uj_8gOHvlG`znPp{!rp32aGIAUQr+>m`Tx)D*JQj3GitG;36 zpmrkEglrx@FA5V8)`YhDA#)?2ERt9YI|0kvGB6Z-`^j3G@&U@`5@+{})w!tgzCO534yy%GIadA9QZV&N|f z9>Y8`vA1l<07$5eaCebIBYqWOMFj-2%8080xADJbSTYau#&8bbhhZ0jBs+CM$jyE4 zgv>`b3F232nX~4urIqwZrZrgN@+=_7n0PxQ2YIzbL=Gfn6ZxJXZ8`Bs)ji_xmJS0@ z$p%wRi_*ZRV@=pH?p_v<(A9;KV#|Q&z&U=fg9Ax$?||w8k5XJ`mXWLR&>DJ`EoSM4 zj)M-rA+gAJqanzp_`{FM%?c<`!CUwamH6zbIH} zvG94a5tS$ydRYT7woSB-Dvz0-1yU_nOBhi%Z?+wB3JEe5FN zQi`UIow?ZQYIkN<@(LUeOL*aj*z6Xp6>g7U7%*P%a0Xv&?*VMiyK7y$(T#C?kpmV< zVK>(p?=(_0VnW(@-&Ixuy~QMLlpM3IV1S0xj40NA8_(m6qHw|MW~iD!>#&Q}RoIfv zbexEnraUjmTdQgo2`iY#l_e!-xmRu2;mR5>b~E!4@G>+PuxCO=2(uVZRU#7SVjKae zuj|+9UcD+&V=Xv`{hT=gSetj~$)^6U_fKqw3y89EV`nh5#F=8v-4j61aCpvdfj1=@ zf!+?xmWuO)1S?RK3MqmC$}A^fKceOxd4$pYI3NqVR9t{Zm+V*fl7KTLGLkT$4wD%= z7{)wItxaTClG3A?1(w7dgR`NMrnv{&_oM2lkEZgIY^mw2*Z>r<%K98RU6&cT2Kz~cm2%bbk#;Y*LVIZU&# ztXssK;$TU8tMvL2QkXuDw0W)x>K^S+y0i=SB4#BP>40*ItPPOJZE@8~Xl_+c;5;gv zujsM5d_OKprH=Jipy#@7pDddivw72C)|g6IxhL8FOJL}Dc?_>!u@m4X;i zqC4O=Z7@qEogDYgysl+*3{vlsWWmtQODL%}AvCFE9v&og236#K1fo1Sv0~X5Nm|Ji`M2#b%78FQKXpP>|JTpGJ)g^2gOR9$J;MU zMy#gQES=aaSQKRAOHmBL8RYZu$r@_ZlW1c(21c`_oM#RVY_X_9?}rqH42ZcTS>l?I zrmKbj0D8A5{Fq!ofsyNirNFlV(2u#N?hY*x4DG|9S~jriRU2L?_~}(#8D(^l&lh-E zutXvQ_}bP0R<#5nat>f?6o@hnEY|Q@k=lOl(!jDlDJP{%knm#7 z9KCr~PE8|o;Vf7VAQ3WqK)#h+H8a6DiM+_8Tv8xLQGwvtT94yK2e#)+VomJ^YtQf543vUcw-_*GvBP3yfxtNdMgAZX zogT^h5Cg9*8U9sy;%B$s;V%Kt0_FcKxPQNNy3^%!0zqbW3cuX^I`;5FW-f z>)p$SlKbcV;yNuH{IjZgjLEq)|{d49>U1J}Fnc1(`zO z;=n7>;#_2RE%l@e36VCTgYn2#bHFtGEJdJLDHZc*z+_~hd_oUQdMD6feQ_^;8&*Xb9{$n9I@a- zuS!xbgqc&U9ut|18xvr-#WgIl#-RaeDXa9VkXDe440T*jgmY=k+^8x9=P{S1c*R*b zc+2BcKt2$^oyQ}vfiGd~pd2zdL5w(u zj3z8JQJ}KA$^g<{^MnDGxXbdKVU?1Gau|={O}+|mul<&XK_nT}a2SnHDT!Q0^-y<) z*3Oq0qL@hJ#B001hI`G#gDK<)%Oc{inbC+WWoApE{F_Bwxcm7)#;5kmMVyk<%v@e3 z7+0|U=xOdlfEZFR3LZvz9-%QypSXI3PYa7N@K6ZS1o3z!SkqFHw&JDG*q`V$KM5>4 zF1i=@I3Bbhoq);WVD1%^qV-wYjA@e7e70P39490Uzh+>gps6xUpF(jmt2YP|flchp zc1ArzCukh;nCt@MnIY-))k4*9^Q5q4UyBm2jm0!a7|3=_WGT@jxtB~p!N!I~LwKY^ zXJ#A~X%6ZPax?R7W?mJNQD~hr-7qNa4Scj}7hp`4A}_{slEJu`h7Nk%!guPFQ{_X7 z0A$9IX6N;LRB_T*sP5(igPII=R&zsR&0Kg@y1SEvZ z7!a*cFO)Y2z@UcVs7hI+`>WxiE zUMo1%sAw#mtx01^B&d(!Wvr2*nA1X*Wo?2)J-pJu&o8HjM-3~R@^no z{J%uK*N!AfmL;gFB1%n-b2B${?jGSmGBP4rk*@BV?irwGfCgrP-H+L~ec9*zj0NUl z(db3b>{NA67s<-3WRa0U+&!GTaZZ)1imY5wi<(Siq`SG9s>+p1&N){+ZWC=AWTE{S zW`&-p%9rDtXsP{Rw9HYER>G<-DT#`EluRA3Z6hj&%Q0T(Lpie;qSa_5cr+<@#F?H% zg_LQ^a>vRCt>wO#R2XzhHN;?g-_InsjC9s0w5Re>rjYU9lr6GYFJ~3qcQb3T;LY=U z6GQ0WZLdEIY`jjnBj4(0R`rK)A~anV;s>y$b>j1n?ZT;F17 zz!$e|PxEVFHCu^{zHSUA$=X45-MBaVW=+tXvAT;LtE9B5 zv@x)i*T=RN+)BcOCTX-}KbyLkGpAH+!6+og_rqym7Nl*sT@oW%E1#&tlROXfS`_s?F-1gg5#>TtipDR(ioHq-rTr#Q5`~A|`6OL$6 zI7lw8CT4wkm2kwGciJt%j@F)4{V?3+hS$RF#W}=MDW*^D%bwGns_YFgb|5a zPP28h`m*Y+=j*cB)#o+gP7<|BUbW{MnF%^tN`r&frB%mCrvHEp zvgP7hyKE`x*BV=p&49IeV^tliCyFC^Wp75eke zNpXbVyKmG`ef`Ju(z&9tpDfIqS8uENZC&)W z`bxd&uT!7gbQE!o`#+=m?CqLAlRY&*{Mr6Hzn2V;@N#)^t6Jv79a8kVD!XTT_)h5- z^-TIw@V&WINv2g=B*M{0snUG-QZh@5CYZ|lx!}2bKW~3?<+=8F=XjLVs|KTr!`4{ME?^hfgCUOnjSmHx$2dPtLM=@cqF9=4C%juqa-)E&k2_uf$S7Y z>-YD)RvZWXaRnB=r?n1-|dxP8}zjd+9>}IHw zvc2+^+dp`QWW8l5jYo5PMJ@lW>d$g!a_e>?qGz%yB&v#}pquO2{HmH>uU#q`@6d_SG|QOb(W^ZeqvJzGy&t?ZuJ4&-_u=9||) zvmd&_k_fl?-)M81LqDW~PpwocAO5Q@J{Q)zk?-AG{hzKX4Cd@5EN54FxF6brB~@1C zK_#3qhHp>xZ+D-jQ<+RkpQ^*CP;!GQ8tcU$$zfR zMXK(a-Rr@8FGy(XZgM!NndhG?w^RMSw@Po1{8wbsWo0}yb*MHq5;aqA?vp3~e%#Dg zhliK8o!!c!!PUtW73kb4EW0C3#l1^4v@-`4pVkG*4|9_A39ocz9^`PW3N&1of3Le6EoL67is-;F)Jr} zvNCKq2M>n!Y8`y$Kl*cyhSppEQJUyCb-$P+qe5m*oidOOT&3ZuE>6U_;l z>ieX7EvO2^+KFJ~I@_YR`-?E2hM^n=%ANYE-F#MdrS}iKRp#?aHkl7mF1?iyu3Or^ zD?gqbR@S5sX-OB9Zwl zp6#?vRz|?SSCjFgTC~NHuOeDZD~6lIsr5(oww7)rW}{l} zSVFs1cP%)Xd+}y(JP(I7Qi?(gz35ExnceM7M<4vJqgSV%+uwiDMSkDHy=0)3rDwq; zv1+O5cGuZ))?2CC`n?twZ=B-7JJ9FeBmJd#Q9Q7RnJ{@bQ*k=6J=w`zr20PcRt0s( z90cK1J0;nwFXu-)Z~ta?tX96y1mf%KL5uo&Qu9X11uJ`=vkx+9I-Nz!Ejm7n9A_&;TjY)bb1yTic2Kb^ z4d;@(8fm057HrpRd zvlr^@q>}1(&uzn3bTQS?liuyTV>IuRkyD@-)pU55nm#=brD>uvR0~H#;o5$zr)jO1 ze!S3c+=wi(CKQa_T)C+YjN9tsSo+sFnxE~D7brR1yIA4d=={OSN=Ysc3c~xvbhqX_ zNiU>j)O$J>t{B|?XoRHmz229@titNBFJDWEsp{qS?i`!2nlKhR;$2xHF3tL8HTAOL zQde<{JL;(x*3Gin$hNL`t{<+f_YHN_G(3AXadVziaH8lyzb$l#lIv!*W~o@5Xl`@M zSvi+?f4WtipOto3k)ke|dP28q;=ysR@4U)SG}XF0uD*Uql)-uy;(KEqzH%LXr2c7V zmdF^{FNj+IyRaS3%`Y{C7Jr)8Qqi|9G&6FtJeAWIElI{SsTW=4Aw7}%i(vLxIqF)A z>UTL>I`HUixV$(0?%$*Sp)B8&^^YgwZdgeZZ<)zU*|m~%lBu4w+VQutf|S#ek=XyP zOs)n8;qqel6=Q6ZHv`+orq&b0LeZJsl37j7UGLr*-&#(oI2W8mI``&ckCE7ax|oo} zRZ?zBe%+msOw=^ZyjRY&#E-50?Qi?V#LWvikR`d%Qx6QSGPqq{&WC6|xH(gZRKNB~ zR3sVe@lRqwP7w5Pp;i>T|HF1#^XFHGxq_Z)AEfTSQwGB&wZeaSa1u5zbw(1315?zk zr8Z2>r?q5JYb^X+=at1!N#*qB(Us+8>pL!vlyzRiz2%C|&EfbmqG{Q=NTwZoud6MV zcd1SycQ($e%R_XvV;?nT^+5E#7sF4)^W?o6{nj`1uzB{elhs65Kd4RI%gd;7H-B|an-*#pzZNHIsnLk=%xDoR!-%}S|J{yc%w1D11R3H?vxl9iW;YI|2Z{8u#4zhe55$8` zXuPjV+jlR2_^wnQ543IU85wo)I=as~%BuMOHjh4wKhuWRF;+ple0Iyy9c7VP@JY3YJ2Zew(xyBbhPEk zbal0_R#*{Bd2-gdOWd6NOjCWjfD>xCrWIu6VX76Brgd_)l7pah_4#TZ-A`x3aZ*^? z!T5`km(Hd0VzJpi$VhVOFrRFc9vfokwl8iKX19Z*k@lVHF3Bts3jR`CUJYdFX4d26haUwrS4oiC-@9NR?#@p-t)Mv0Ka4(iPeZ0i4 zd?~j#aVwf)Cv?5FUgwsHxq#-Vyz-KNj`Wh*eg1})Ww%O?yxjTnTCRqvtL8YnK=~lM zioU&0JO1jkz50XHz1bg2GjDzJ;L}CJ9NDX;S+I=0V>!u)SYH&VIy+By$+KMT?%j4d zTy)@Oas#R%p{VTid z=TPCe?afl&vm_eu$R71?rJka#PAw>NKcGY zhZ6x^e%%wN`ADya`=YCAQF55il&`(V{+~Y)+x_>a+cF_2wYYcYgIC$1SNVf5r-^W_ zKU&VBhwgoOvK%MF)s6b5EuR(C=*&~*rSvK+)`IX+)F>ws!55CS&I*}_DSddQhB0T=ne`u|9 z&D>I~ydgJ6Wzd{_ly=(YG`n~4vaBuZqoO~v-$`PWGw;0Yjo>HrMM63B=NE@!p!IZ< z`Ul0_bwjC^^z-~(Vs+(eUpF4Vit^W)V!4(^g>hoL=ic^2Dsq;bWc-_M89kzn{$J%*4Q`U+8*1Q+T;H8k59PisjJ2@W5Km`b@-qM98Vv+%W~G$2 ztv!1(pp+yRsmbB(u~N)mc-_wK$9*|P$g7)N5i5gC>tiJ>r$=3@(I@|GU^OS8A=>Di2d4-EBo; zQtDO{#1{YdIE!U-Va*HUrrNyUpXuv~(F!~xb?7bDnn6A3a`xRt`p@%JG*}x!__5z~ zGr5j!kh!;G(q(1;!IPhTi>kY$ApKo9>y@4`fFnoc^z{Up@NVPXAjP$`ZIUyhF_-C29QX!dkVp4^Bf z;Z3G6*QcR0lJWWVm8TvlXfj9c z$_j&Uz9h-=PK)>xar8sJlBp&_G54sP`nl!@_M4w~2ISXc&oZ`>;U0Fp)|W~9kH1Up zy%f(9Bz08x%l4!s_f7o3L1*7sq2w#0$z$2nKh4aY^S^ynUE^Nh_w`KC_0|KsAb#}3 znGBKcPG&E>TF+m0i&a-QSDhaUc>9NFA|E2MRX0AlcsEv`KB&A?7RhmC$2dB72dn*W zf}EO~^o>l2_xkxTvAsG^&+lu-({^N_KI+Yur1isTMVcHOJ~uzJj2kT?ZNp#4bCh1D z=ZFrj9*S$mYo?3ud#>6!dSqEhsrvsZs-i!%MalDDNCD|JkH&31+l+p>P9){d&8N}v;$5$|H<{*~JKVWH&dFvbM>{$5 za*dYH=2MjJhrZZf(f6+Q(ZG3h&z$nzRJO!Lv=)+W`XDrysp52Y^$i)6tLxg+A1g^^ z=lBUtIo8Mhw>_zMK++FqQCTcIbhIbni!W{u63g?{Fcli!<>~yvT~@Uz0Y^j zXhi6nw2>Fs&=FFx7Dhmb``2Ut>&vN%t=e!6R6C~}GQ%X`7%A$ytcwwy>%-k+@jGeSe!b#Qc89R=W zk^^&`p{<1XXh+xTnjorj32TYO&8pJVz2v+1v%&g6$*5~Fl7kg#)XV1qy1%%8)XH_; zy1%-4(;@eE5zny}%(nVpB$HT>f73qRJ&O)Czb;m$1zVn$!_tcm-r2_Y#CP0v@zv96 zPPi_cNXV@pe=D@ydtZ}xN@C7=qZ2B3=66@GB+`+__oL_Tv@9G?ghgkktV`1L!hd+2 z`D=O9cP8#u&|gLMmN(nhNyT3_?e@v+chAUKB3;{;uwPhK1KOyj#0P`BU!1LX90z;d z*^#zIPLC>7etkJvW-Rkgo;0?ikNZWMEEhAXooxZ*QpYzwXrce z$)_5Ic;Cx*kBaXvk4h*r!|y|NhFib-epb0kTqWw&ubcBUt!F-UQxCI^?QZ3dm)bm0 z%7xG9@aE$9f5~1SuU#qKD@sMpEnNRm znNLo%oYUM>=+_VShy9)9GM^uqZNZudf4^9zyZRr}nS;WS*}J^iLnjs86;(YCY*OE}@ zyCXRz5WAew-y7oOV`0*?{fb#@Ee|VxwAk4Wwxs-tx~KcSY-ww?9X=YCE-?{QS|<-q zCWGG8NKP)cTKRSPU|7p|iQF^SeXWbtyZgc1-0jPY!qMSjU6Q|e`AN=d-gQUCikTNb z?x^3b7gx*F=txzQs1sfuU6Hi<#Z@LduFh}l)xzl9b*Dd7R>|^JRxZ=xt@$GP@+Dp$ z@3gbjS}{g?MFqN*VfZFOw)cDD|Gq5Mg3rF*H{I~(WR>p7wAE=-K`H)ZPEt>o=$A)w zXJxzX>r6?hB%D#^R9VP6| zy2G8~h$Mq?+D>n^Y^zR**2|5og3}mHBWsXq%9vH zTgA@5`^fp&QUmL8O_R)jl8tqvrjwiH77fk%YT6f4FYX)UABMZvQo3zD?a61;()hYl zuN`N?Mu6@#MfzgxOed$W{ORcK_c&x#*G|&zm9D)mro^yyn>Cv2f2>qjEs6=XJgdCO{r$PU#?{3!?)vJw-y`C0 zyt_5(%Z{v!XW89dNk-H4XP;ZA)wbvrK!(_ z#o;(fiM;w|OYEe6UC(@}mV5Koqf)qX+7;WJ)K|JUO6RZ>Y%7C=ANiHcFRrJI7Mxbf z)l$#D@?I2{&&hN?uJwo>;0yKj+&U6oX|uq8Tz?~8{#KB*@?iS<_S~47r z+=QYU*GVG^+sKDu>03q9&93vLcoI6FID_0B$++rPmi%*|=;B8QPjhHAkuSF|869{y z$VN}+;TMlm%jvDulfvXs**(mt?WLE)iuCJ*ytDQ{Ar1MVrLT;@!-MtoN;#|%yPYrO zlvir&clP{Fyq>)83th7M+B3vdD*GVyDA#_{Op{-9y6SxPGSHh@qqy^5@!nCYW3vic z4JNlo#%xbm1QPxHt=g%VrCjA0Tk5MdsVUbBd2*Tc>F{78lV$j9{zs`OI~US=vGb*b zlHM7$qH+IeC{$vt&83I;f>QQ2!nz2_~LiE;cl0O>t1lQJPn-}cfD}lNRGExc41vvo(U`TOc*5Q z8C+NH`=J{4rMfXC^IiLGzm=bP^agwF*>BdXH_`M>{pW7GCG`{ZLHhH`^j&M+ks5ca zEj+)n3+5-&zb^eC2&b*3{J_lpDq*K}MgOW1_&=fQlE}4ZtEFV+O{_H%A&W#ajdTBs zuWzjNd_B)k?TX#-MIHTU%p|QdH519<+ASxH)35x(FR{_fo;Y{AFP~@S?BW-nzA#3q zdmOsa``f92)8|L~4?5lRW}z%6Q)$nVqxV|v8|8-wHO06+rNZ``)xmYYQLd&cJBJJS zmFl#0^3|inJk<}TH_~T?(phqKr}SFGRif|Y8?$qL?UlRPuJo#t!1W5AstJ|@FNFJl zNasHyZQltjGgEzPr{(%v%M8!b>S{*IOh%GQHc zd!Zct^qJf)c_}O%t-2Ap92rusX5sg%2ga~TiHIX}^`tO*+$$q1yU5IwKhE{>$6I$! zIx@_8S9D3|blE<8B+VDuNh|!Xa`I+4a-*ND(rIy!S%eL(PSV?-XS8g(x}u@xs90AW z|3%n%YSF~hcwT%%8au%gA(?+;EyfNys{H&vHD5lhi?h z+-!ffh?>T|x)}Ehd6OE|#a=J8yqu^m*Ou^-YP;c1nF_<~q#zmngZ15T@c%8F?T)D3 zJWdU2YieUpQl7M5G}Y@_IXIHS$GW~qR2zQ6sDAg9xa7SUK6ke6Q|)TzD)6ohyMfc8 zXMXka^_G~T@5lC$ny#Eh<^6p-*ft)lup{lM%i7Dg(al*fBR3g?1QR^7A6&hNeC6h{ zbjV6wVp;k3@5ENiZYPVspLe|Hd!zGx$Mg0ZYX3=J2t4%ou2_w(EJMsmcJvBA+(qB- zwJ*N@&9Zj-$esp`*52ryU2jXxj5!x>&5Uje!ZIO+PFHRx$=WGNx&G63CmW4sj~y?M zORhOLA6T>G>0tL{o_uOt(}vn89C#h@+SJeRe2#{JIrLf zq&w}{<%xylx)EeP55?9kh) z;d0i@IfaBibKeQ7kUmLn&61_Pc}bc}-mTg+771@)%o=vPJTK%bYBe`B&T^8eu1c<& zjjGbYx95YF7ty7-B@GB39u_uvp-#1mcuHJr+f31v@Yay+RX8~pa5Q#-) zI+|#1Z+BNLyMLvvG9zIe?r8lTF_|_7iAP&*XD#Fx&ypPIYaZYruc z({Dd+=8bi^Iw;qZ{qCo-GEkBvwf_XEf(!Q6Qy4E~6aKhRG zquk-3CML7pVd-wxEs*zzkIwSVEp;)s>UQEbtOVIyDeJAP$@KP)yHh_?%;D#W`?0W; zouH@o)mBd&WOQfi+DeR9?jk$v%#(}fxKeSFf1lSj9PLIn#cZqh`0_eLoP zBDKZuU#7I+{5JXX%%JvQ9{5pq?&{>WJyMbW{7Eu-bc|C7^(w3WM({E*p zuT;Eh6qAkA`#a-dq3!fflWSAITuFxg?kE(V3v4xFDwufVe0Dbztvcjg@Uv`IH3uc#O=hHppZME2%4cQu zK>MWh!}krOH3uK}Bt5h)D}m}z=cYY5n@3w#U83XlU*nNHZhV99gk|s!B@&snN5ay# z>4tenDQ%n*c~_{sy?s@{S~fg-QFq6NI!$6pl7)=XyU-Hv$XQZdygN(>7?sBLnS1t6 zC2#4;!PeE0?UB_oXOD5N=rxj(Q#+`Zf6@itR+X7Hrn+sbdc%I8(B_Stkj{_qq8nLj z&bH3T*Yh_GRGj$qBC%Wt(Ry1_t1k=tEU~OaIx9yhH@#TZ_QFe3*tU!};c8u;KbatJB^fTqO8EH^K2@T1%Fo&Txzbt}Q;u8jp+XI-zwA%H@bbh| zw4+zoOXXk|rBbxN93W}SF|3~~$Nc$nd*aa48!8d2R1AjR?cs8^B!#}3SPOG~as8>h zJb#ZPFF&?2MQ^SwglHtYC`}9R@nQHoKkK$Lfzzs;b_eC0p7f5o2fvEU@?HLwymysz zI`9|gt+P8HDc>RZ+ray}a(p|?_c8O{QSL>ji>AGox|4tDx;uHan5~r5;i%L*nM(|# zu3Aa!VLRWyOc7VQ(*4){GqdH^X33|k0X2s|W|w8zX$~Gq`p;I;isZNCJ=t4Mw@-5< zKWZ0lqSErhEoSvC60VKZPfk>=!SQW$dMIcy&thdF(UOM@Q zb7R-uyF=>wPOBFN_;YUpFg;JU9q%;d{UUK2g&ty6pZGIdq4bC zDYR$Bs3_+vLy}u5#k4g~+MVhAan3JyyyMh9zvr|Q$a>zW*#C*H|)hEDzBnp)q}5pn%?OV+7xobQ_Q-Soz-8^x2GNvL9? zg>toQjB`U_Fx9tz!2a56nW_A(V~%S^L?#o5;kS`L-|jt>!&A95&3MuCYP(2%VYF0}l$%edA{~<3H%}`6XSg{F^nVEgi6Wv1q8yLV69^xOEyxNIf*@kw zE24k}>S3AwWm2FZXfUe{QNb4i_(NcC@d;eflc)k?gW)Rh_m0Z~bp;&oNsdSnWf%yD zFbsMN;}P6~gv2mHq98>=DDZ*Bd@LMgsfq|1%qnGXl8Ke?S>|tRMoTNTlqeo(Ps0BvEud83`Xo;EF^8QIQZ_IXhXD2fMx^69y-M1;tPdAc&UiU9tGNC-C)!jQWh*k8aA%$w0oWkHw15Gw&} zWF&a(=?q1Qz}qGEJf_5|E20UH#=-YD{ziyxN7TrwU+&DJR@JU*EH zWf+u+z}Z7?SwRk%Z?m8mLIR&@5^HGHewh(&EGgx#}_7joWm~Cey zMTk8+OcCD97{|;ep%@XW@F(To8o>}v6wgRy4->>gV);zY2+8beMV^0{{R4{a%}mKq zMBIJA_91_T1tE-`jClUyu}?w|MsWJvm@q~eawLp97sGg;MHhp^v0JiG2{tom5d;=9 zsT2k%euZTM1grPCC45nb2!;%RW7{Y)djt;#;vyJn4i6j2B*J_+D%niWrh*PG!jp}U z`1n{ab|fBmgk4+;+0PlpXRr8?gw?-H+7{zmV~83ea;KmKOB%dJU_-cnLUy1kyEU^q zpSDRLYrtaoBv%Z#VOdUKl?C}Q37zM9<|UiKv@8+CTg+bdBOWsWb6)m7g?}SPlJ2XU z;pog?qu6ryjd+{j3v!rT)^O$(k*cvSNmMFQ>$1oniLu6Riy>QEQWbnE(3{crq3wRp#EtvKY_R0>lEm-RIE_B?#-R z0I;W(KO{Gv?$`qrPz0Wj*h@50p(r>!!!TzzVb58>LQ;pq;YEbkZ71GkRuEaf4PpE(yJ4Uq7+?>U zk%+8`@qk)@31I{k;=?q10rDmD92QmlM!J;XAII?u15(^i0qv{%p;dXJ%Cq;xLF^DC-Xz_)_A!g3^|v<|5+k| z;=?Q!MKaV`Hu5RayOkINrpO7C;6hfhh4I@!UkL90fuUvRlaDcPwwRwIGr3 zV3l;1SP0}^_9u$K_qa!>Y*)y}W3`Y60(&}0dhrxvw$psk5hQ*{*^!6fZ6OB~LF_^( zjNrX2PG}@qn~e;FOR_r=cz?z9tU&WJreP} z5J`X~*e**9BKbU(5ST~IFj5rXFXF2ZA>tqbvGNcSDO40FSCnqv#OE1DVqAZDOol8m ztf6ux1`2WV4cYe$hcJ`NF61lrCY|3u zp2W;tm#sD8$iXMvsAz*fLvC5N|1b_+hZO}PWv&KQoF$(R1C-j z;u6?x_FT+*a)9_#Ah!7uY!JU%#38l7jk+la5Dd&`H82iT-iXIG4LI5e2p zAL3L5VhA&8#gHr9K~f_ISb_QQK<2Q-gK8p(8vDlcBMMW;Ng&5F-UZ=9&Sjuf6=DR< zoQGfsiWp2yhcIS8W3_-lrDU52IEYUJmrUV9VFO&u-pO)eq(IGuLgIj#h=yZ#;ANJN z-wxx&p-_)p7?;jso^38?cpu_c0$#(57%zxmc|qf;36KTibJgYesd;r*z&;H3s^Caq z|A6oW62Nu^R1G)$D^dYsu)U$IOiD4=5HJKjhmXt@P_(!y`R=gn#d0mwGRUJcSQ&1G zaGb0C*pZk4x%0Bhs!Ea1c?u5)?%^J*Ua%1%2R4`yN9G)I3`*kU1Mkw}b;c}(`8^aT z=9-=u$qhtC5?QZ&#g^q0o)Eip50f0S7gQxD94mGe87jA7IC(NIOhbz zQ5h^^aN-1LE{5c?9HVXteb{Nt;l39~hXCef#sN4a$Mu3$TFyQIsxhoesm&IE09#-f z&<n_%gXUvBvj6VjqZjvKMiPz(eBvk7FFhE#`yk0{%2ap2Pt=F)XTv@TA0(`MnU>KSD9d+(-w$2Za!P z1kn4Yvhi{o3LMVzz2*>+t(q4S7Iq+%I3z9(;o{!mWIHQPz1fGX2IRFRb`^M!O4o09Pae~7N7Na4U z$`o_3jd6T)`GbnYNF>XXz8?f}`2zJPg1<42fWQPE6~=6zQ9v0YPXQT0LXpHD_k;Ao zffGdxVaET&{t6UbjSCGpG+Qx73Rn>eqz6I(C_f5!Z2)<25oTeQyby3F`XQk}uH&gD zh~hj2g(q;>!^LsU_k^q zhy}f(@cbonwS(n<_*!Gv&|>*Uic=P-Yd9<54NAp`5qWM4MgzQ%C_vMAFvUy_j2sCT z-~iZP4TK1WYJmb%9ETPF=757|3VF(dZvfjOz(i8KPgDhs#b5zNB_wl-$}KE$&J+Tz z<1Q+40b? zNSuGzvxYe2WhsaxkP;%UwZ-@!6eEZ^5(|;=u1Em_8USl%#hrm3DUcKjDxt!hm7y3p zWcLO&4e?b#PGBj4t0#o;B(hPkAR}U7EymH#q7(!8#NzURAB7-U0ojjLz(61|bOJ$uS0u!}U~^wd zhJ4DFh9X2HDoZjW@N7NthhvB#ffLY}P=k$-7(?kG0F$x8%3MbS@D1n@QAv>lRpOW- z=1c(M3AIJaxF}aixYEN)6kDYxsU%KuEb%bZ8FBtAD9mRf#0xb8wZ!2H@8(j982^8x zKS0C*y#({=@uojffsFb^H(^% zu%tRXjm|GGa0P}f-a)L;1OJLJFmZ+N5OP7af@_F?e1VcNtI1rR{2;BxI4>qL04O6F zgV(DHOWv@UxXAErkhoACXUPaOgjk{GMS(5ekG)#-d9h%)mvIV2V|pYDf01wjSI9xc zWoVv%B#_cXPzX^h@v_V)hTKnCWGDe{h8d6YDg*TdGaMAg`G+ALW?GII_;xFC5Mbc+A>=L@Jb-ZhE$)J_ ze^juBE3r4rG}e5n%*zR)5kvDXkRpZspDXnsBXBr@e9(V{l(Yd{45|@96|p3X9-w9p zrv;b$F~v}URqhWQ>~k%QB_F{JI8`PlvuC)0!h%61ehaQoa$z9;VC+^F3vs$>Q3TAg zk|V@yK;iNP?>MmKVm)Rz>_tV{*dfM0uuvkpae5OWMq`)()s3TVnN^!j2ZC}DPl39C z1YZicrV`SS*F0qNZHt&Y$P(fxh!IK%_znKytB^Q)AS%#7mPaJ2M8xKbMhv!NCLf9% zXYsU6c|j54Zcx0DfFW3AW7yG07%>(HjVeV3-7;PTe44$40$GeS%1N)xugz@ji+t~~ z821I3`4rA~yS>bnP{N-ZQhxk#e{&5Q?*((^fQqaLaB42-asI&@t{=B7dHN?R z;C_a~eP0BRAdy7ikr+e@MTS`bH!_ke2_ISpkd`4FM43@FO1Za#z`=F`17MIg4k&`` z7neSkwpm?(VhsE)bfC?*={h0tL%U8uKw;#F0}tM2r7^itBZo&eU#ANY1S|q?LpZM6 zadrj&4Ee6cP#woIC--Cia}=jeNT!I$++(3Y$A)C7j$0Kz?Sn2$7+G;c3}MH79ZUSa z%yu%tybVa9H^FG1tZssfBT8m}4;~(ifTt*wU``uj%ketIpD2t8sEj~wW9*WMZ2L8y z@IC%M#;{o^uneTITZ3*yV*AG(TwpaG$R8pXytpKZSs_;lfGys6;lwHsPTcrEKsrWUsS8(-xPd{IWD!L)$Sbk!An%3;jp6cM_pG}8PK#F>E6 zF-WFjY=4CpQN~^*2~*5lu%LHB=?B?~fpLNF0OuVHN%5izlq3MP9>@Lv@B?iZ6)AFs zxG{%f3st_B}m7oYxE`!A+niX+q&Ln_1qIj{8+Uz}eg z-di56vJ?iG#XlDD2F!75gQF@`_zNL}ogf@2AS}lshvrciLNDoM5q?z?NMA*P&iMtxJnJjGJYOE5+dN=tX z3n_6Ynu0)%O%yvS%li<)5j43)7kZ!~*9;}$1C)nU%d4s%ZwGuG@P$OoFwALK=4YV- z0t=|}al)mW7Rsg}$sivRW!_kpXy~XaC>GNO$lVWTff z{QLvMCvZ#z+JMlVRls%l2?99Q!n}@)GrWeQ_z%j6)yC9v{BZmo1ZolIavNUBvlM3^ za3qDf2=AY5x{!QJxKDuI%tMSSoXN>T+z#Lgo;ido#1sW8CQv#W7csiwUp&u7!lpe7 z_&-L15T~qUuw_Tk5rLCH9Hg@a8gQB@QZ{WsuKuzIq#D5DSOA1LC-PWX=?e4z=)TXw9nN!kXa0)B%S*2mAAi@ESm@kL?GF%0~h?g4P-i7qQ&;0O42W2;3Z@?g<4YBeH z(myj?#0!HIp&;Dw5$0c9Lx`0<4h(tXjqwx1bbx0l#=NU0bH_#-q8V4cxOJ*=z{>0> zMdAnhQ{Cq^9>Lie{vlRa`SbApiVxwZ#f^a2{sc%GBL$GA7?@DRxX}}c971EnTXep( zQPV_BI3OoN_@SpJZo2yX=aIzC;eetik`L`(-o&F&4#c=8!0g3yi_Yv2LwN}kF59rH zgg9cP3i`fW1>r{zfVQd}9x_l9DJllw5vM;DIyE2nisRrffK=rzE5aM)81(Vjv6*vlBV+F2%ocEh!pA(R@uNOS(Ak?Kx>;#_Ne&rk zu+gUwDETovAYA?7N^=;OiwKGZVNb)N&jsqfDVxm6B}Nh)o;w(#=g0>R0uqo;!Tub7 zM)IZ#FdG8VM{XQ)JZnVp0e}s=K^y;vawj1QJqFmjP}o35L_-Q)1ZG<3=gZ(WI-K|e z=K*hJF`-Z>w1j#Dj0D{w*fbm;EaDAV32-C>D&TsA6_9YlGa2qc@o@ltlr9Wn97JP) zDFCNr3l}Me!ORaqV}-Zq5TQ;Cp`$RivJd%Zb2^TLd>X+~hz+vi=p1xK9OIvuH*i?X zo^q3Tq0tcwn7kb<@D`FEODMA7NeTd3!f+V0pjbwC1SfuYII+W@DCCyr!3%pW!jCxq z!JO~Hsje_~d?9wan0)a=QV>wSE%H1Z#gtnDK0x_-C&o5>%s4DT@MaQ(yur_V4us)n z3x}W#`TX=DjoTkA1BCJN{U~n1@M_0Qz*3mZ&jB!+LHH?BuB1h3++F|RwUQt56CJVS z%#XHsTo{s|?t-GhC7%dBECG~deksPN1_}YcGQS#uql0jmivi^r|HHvHF_wP0BWYYT zO4>;`Dqt08zf}5#JR_HPI#{tNL)P+!8j~M(v7yjV<_%30-!`DNXEXa z(v8yaAtqx#5I6c8dwLMO!Syj$RxxF311T$zL^wx538ru!GVWn)Hqi_PN7M)n6(mJm zNn`s2jUfqfSP*ek5k$xpd9{in8N}30;gb28+qm`0HWF&VU(NtQMyLFE2Am#Z>|6wy z6KEIZXSN^#2vUG!jUtMdz)!+*EKNBhi{<8kvm!`@%R+>4lBD3GPtOEO}iNJTZ?oe%n( zOXL2b`vHM6h);B$*jP@H6@XKsCh~HMpoIYKI_PRrE}em3NMeG)vW>#Zug}j{@T3|> zu`UP{6UB$=NQAjjMPfsK!aRXVp^M}Xd+CVsM$g=|bK%(l0K`260V~jp0UjwErmVZpfh`0~5Tt2l;!`cV@Ii5E(zy zBC4?H6}hmc$SiL{Hx_O}`GHY|a8HCp6983-Sup3Bh@Y~FxD*rwz|NWfaYhkyOP0F? z4)b`;;ZcoT3_-!r77io8#E}Q7MU&9;e1;;0#5!{a_ zU<9b!r5lk-l_gGDIbG%bm`&aeH)xS=?C-M0id-J&yu0>!Kb!eMv0d+C%P z7C@2>2Mt`1v!OmkaB`KWT?M;xtb@nxBz_u!RaX*lL?x&Uz9F~^^F)=O;1oGK4-yw69& zL>O@42!T|{R~3o@Ff3@#b7xlLV6Cyq+ zXaFf0NCYzq3X6W`Xpscy26SikI(RSPcw*qB2K*oaapPYNh*3O0fzKXO z=H!7dVvgEoEUg7L81cEOhEuuC;o!}0tMG$BF|hC<%z(S7z;s#pgi_8*yZiqW_HIjZ zCCRnej_bbVt*QX@3^^oq&XM$}2bt;n^aFa3>7VoqdY~C~#KYlCH-M_j+rGw4zT9^f z&?HU5%yeT4g{;ij5$?;EFJHkD?~p}S#`6ulaVe%X98jcvxf+(!;gGP7)ie~+v*}#R zsA}64%z69mEq45+z%NQ@fZnihqWIB@J}+f&XvVlB=oxcj<1yplxEo6^HL|2lG|&q8 z75zunAL1~TBBXsp^5qT&6dxuvP#18ZAQZ^_D>uYAI4V{TRU3^Qk##MXE2gc~L0>R#r|2eQb)CJw74jQOg_$ zWCPe^1dEMlt-JZ4&*s%|^b=$+`cM80+^I1c(5|FLgnFC)S%4WD^o#KADTd6INO9Q( z1|0;LTa2_gIuTgE5>~f_ys2WbX9x>xN=FppC@vyd0)19CgcXwKts>@ufoL}3gSKWw zTX{wIIwiyg>AS=Nw8qU#)-E7Dukws54Jvi60yB*H?s0rQR<{UcQ@D0U!_ICTSAmFU zi$Capp;!o^Y|wTK&%9q7Ll5na7ING~xhzjXw>_}PfsVmIU<7hZ1WTt@^dE49rB>0I zLEQ4d<@lfzl{WNU3wQSblTah5tyRiN2LG5O6iH+zSbrI82Oges^lzPkL+OlLIbVozMtf6}GPJ-=Isb|0cie_Tgm~f9=<$@BjDZNQ3k4@yj<=L5 z2CxkvK0{Ff0y$1v$$!*eyr%TlY`sl*6%IGTgcE)!t%zs!CP0_%$S@e%x6I1c!Xu-A z;!vvaq$f9hz~N>fth~)%6xJw#@Tb3lljJ;Rhb+WfXfbd6^VWYr8%mTR#&ZDysU4C( zL8>|(xgh?hEGAILD)0BB0cqNGIlN5tMYnWvuKx4F%kLtB>%K~#1tLijb z<1(#=hP)~FYK~0mWQDpdsim;~i19tu)3jYN0I9eQ%|}fJ2)8L71-%(|#Vr6g2G42k zQF@9DVwE9fKBbhW-n!~h$3e1HqA$2 zu~kuxJTtWa3-iAC@)~MBIUuDs$}!<6w8C{*P%94a(uj;bfhX00+XIE$obuB zR&8P8QWxg=%httxOoqpSz80B_ z0=w?E)U*{R32kw-4j|Q~kGf+tSZ$mGgqeIeW%F6oZieGS0T3vwaG`wI(f860(?px} zpo~Jtqs}34%B3TKw)9_Go*X9_f5+nG%$PCsCZ@uYyb>5EbBW2zo+j6EERb*{bp=zF zki0nzdjOcn2VUjx;@pl(FG`gXv*8H=dQk#8(9lzvsS(mkL#HgpmW9EnZ?`FOE`ecu z5KS`Z3NiP9C0cp)TB`zw9s5hu&;-4e41zCpPRm|H`yIf;@+9=C<;w}Cs z{)^nP#k)j74>1C!eD45a9u$cJl4%H4JJi1p1v8Hv=Z9#dU`)+>OWzlTOJXQz(F3u5 zYk+XyUL~vzm9X>#9TSMjW-)3&OSM{6c8^?Ov2+;f`-!#it^M2@!9bO=h^v(kwq`Nf{L%Nu(u@;U=I2Ds&hQRC>~uh|+HK=T6d#zMEPAmS;(QF~!t{k|2}E!i^{2N+<XcjvaZB@$5Gejobrwkx(zR(Djd2S- zB>hm+MMMOM04gPq9e=xx;@^VNF_vvpAY?HfJ|1Es1-FK&CsfWDKM44!C@&041OUaX zsBgI=4cyI)(}togawX6{eXdAY&gG5W-RfUv%`woKm9Qk06o)98_7u7y+Hy#BJVi!X z0s5as=|yJj4CIFN>^OeFe;{CYY3Y7NNFB4?w2kPU5&CE5i=u9uvX}aoKvhPIPCNlr z;`uwKo~4j4(ip<;M>+zADR0H{cQk~N%~F&YZ+V1GC20mTZT3;6vl|HDJT#P9I+D^i zlkU7NGuI>4Lz|F|c&_l2VAKZrx7J0xCLGV-(BE$;Cm`d}15%!w@8vPv#PkeS6zynh zXHDz0Bw7&lDAHtr!CH02|6!#-4&F@on}n3%^&$#vI*ZYpMJ0Dy1maNC(thVNs&nR{7A;Z| z>Df)-M&J;}0~PFNL-iHwt$36VMnya=B8wdCR3d;HbS<#e(g^MdWhrEt$tfbv!}NXL z3`+<;lr=J-<&sa5e-_rB*$B-7U)ZLJuU-;sIoXojRwZQj;D10xf%^pBvsNU$o2ZoE zBwm;nzvCe%7{j4AxzZZ28d*kdEBG-mn!?ZxQ-qRmG7nF2lTg*D%S_aoKnSRo61Ma! z|H>$YwvU)7Vq$cUmc+=IUy^}%I%IFsArA3D&6;x;3WLb45s&_FW+i)J z%m^8(c$h(O7Pn_3oDn{md(2-@z+}6MEazR}B+(1hs@{$p_n)|ND#bcFK}|5sAI&m# zhmI8ECE83O@Ee}_aBV*qdx+0KMEku`{fbcgA#zy-YO5?ms8S$;{|*I24(ex2Wpb6S zN5$IJ*~sXz^m#;c3NV^gba4~>@(0MS2=yOPViul363dya+yWR4y-tosKsvu8v+3%% zCgN{>=$FC2Mdq*~_cmB{peymRpnW|-RmZSNvvMFXIN;8vOxSU6fU0I`iB-(+QA`p= zTA>&Vql!thyoCdyqu;X@jn8EVa1;%OEOn6|zA3?s(l<xASOo@)lV*dt2B_$a&!RyQU3C^dM3)ZBcewY=wW|Z%tg=Kep`(TRd!| zfK=hZcyUX;@GKl_wFq#f%w8;Vii|KK**bWD0PjHY;1tjFaj{D8UJ35mjFR5n42 z>VwJ;H9kt-RTm@Lj3OZv^9p$NiDDR35>4WI5{m#k)XKw-1zcp=mW&oSuEGd+;=d%J z&2xIgv)V*R*v2e!=DL$-CLvv?SJ@`t$wp5pvNg$Z4U}$AW)ZY(^W*tza*50!Yk{YY+$G4;ethLOhGcHVoFd-NCsHb7R ziD$T03+2Hy{B6sR&@ggkbiky3nu?(Z34wSz5 zvI#&V6IJUbQ*P-5g8!GP)=TFtiP*f0kR9m+@Pm2q6$MKLtlzs6HN3}NeZYK5nx5RkB#5X z3AP!o&4SG~S-=nLF}>-IZDJmBrnkOYCfx~GYPR3eygRV_Gdx<6 zqq6Xv9UG<{ibOs>GuSI`dGK!uX%+NIoy0z>;(<`^W};7s`A|ZjE1x)g1%h6Rvy#sGyD zTHWxjLQf^odv^ib8zaHc)aF)7q)ojta(zr;xE0wi>**8%EUQ=4=xxO&gbd@i+6V+^>9$;riOtNDutnHLCr}!49VLn}YZ&Zr_=oui z;W@Dmbkb%XU}1j3Y(pB`tlmZj(ZU+fsT*l zVb;X<9|rP0_N59kuN8}AH`F#6G2e;vOtmSBk^amoTn-LpEK(k97Wg?n_WwpnGunxa zJ&b|>Sb@DdTg_u)6grueDmgs>Bk?YZXv?;)%t|{t_;}m16#RL%!nN}}uty&&N0E7Y zus@3R02p6b7qzj0a7EeRIJ3(9XgI6F383LkEAtlyJg~vPBI^$kzL;F4;|}DrusT}V z$0V7kS+Edv`nc{~c|;~{!^xJXoG>#c;^bn{zp1$-ZJ}#rH)o6X99SgFL?WJe&aAPc zY^jUP>r49JFwEcu=YmpS)R?8=;;m}skZ~!Pz?X=?2{}1)Tvrx8ldv)|V<~(Ug2xR4 z7#(mTvTh!O{qRLo4ko$FBIB-5t3?=zB=t}u(h}hjX^D$4&gRB4exwhN8Gh*MMSf5= zH(~5Z!|g1dM8O2z&Tyv`u^i)E_@o7r0dWc8uH{Bh)q#SwxmZdLu;39Z2Yk+TEpw<9kMy8%P(HLs6x^NKdV37y*u8SozrjLi&C;kObk8)J z#|ckc_tdd;o3JS29cu|O2eD<7C<^n!O)&mMJqkCmH%31iGfiL*)ixaf=?+C>TvR}X zzyjKtK6o9`Br7f>PpHurz3FfLqM36REf_}@gMPZ;wE*o0rR@NmyjI&pIUn(;SYgB4 zj8J|MJA2TsjN91e6MYd%T)D`hn)q!$SfC)bMV@loh`SH0fC@Go&=cG+T9&@T+lRR$ zz4$t>s+BpY)`&|3{|bilm$ZC2NONeCK_#e{G*cOc`GV>qBa1v1f(ge)?!ssyxKbWa z%wx6rkYG=+-|PvQ7m1$1#w6~G$fY{4mwXJhryWLzdl7>rZv5S4 zFXOpT61NZiAWHb+9`5n^j%4`49~<0dwr6^I~(e<(1BPAt{eK-E;z!{G(~lT`03 z)LcOc0i*dDN~?)L!Hi4+>u5g4T&)tizVSp9)Ac+E7YzofV562YG*75(4NIgeu1r|> zRZ04i_z#sJ1`nCzssj67BBU9C?JA%S(mbARc?x4u0eI?}-TB1-N-&>dzKp{MANaIL zCyFCtkPAgXv`YYFBUlWkNupeN=qy^wj}T}o9>(CmV)>2d7`fTDR&sqq78V6{Tj2OY zr5AiQVftQe#$%PhWv1Tr=D(fzS_s>qSov6^f~dy^j`chk6~3Cya}#&xJ_d?=wPIDigC&e@D5i(VKu z3R}-U|M0ZPnjI=oCGo5cqO1(c+Q(4cV`cF}V{KRi$8@UAYW0>Y-T9|)vm!!d0y26r zr?=3E@Qf3!6nkbBo=V~$rBf3ecSg)c+pvWaMz)JgFEACT*>2m24Tsz=Lwj#ykZ^(f z0@;Pa^cO%G(}>$;Hj)@Qgj#_{h+^nJ<^~o~_+wzQx?0y9nBi)f@!o`X?KZBhgv?}{ zzKYQ_aJ8-;7D=qIXZ|57F5J_{$exC=q6SIG$0c*AgE5~X;GG{6rgOI8{L1u}2?ZnC^)Y4QxbHTPT$<7p8^jcN#dD1ls+t1DsFxm!n(JBX!D#lExbf5JU5Os6v& zMgLb$HN3TvGZ6r*ap9fUObcZN$~KgDkpK+6##(QeNntLKA0YlVCtbeyi3%aji$xpT zEsh5mKIZSXNasHAe?(^r8>Lv}InCn~a3X;Cnff9q-=Uln5rC&R#{a z(pXku2}gP7&&Bt!;02Pfpn>Xc(fYC1@bR5x$~#~Tvq)RrL`?LeN%B?SmMT#*Jk zQ@m4aj`YX|k$rhFBg*fWb$8p$QIb|zRx$ErFpuCWn?i9zOrBeg6rent=nzzG7`7(v zYzB58gFOU6BHakb%n=-Xf6Fe%IcV5eTb2gy%!r(qf^0zSW1XyJ6D_YSSS2nN0JX}) z|C|faZU2i^v=R+1;=gKnKW#O8B~$STXtslyTl}GqN_%jsOcS^MZ^cXMm~gOKbZV?aWf@Oi zG0+U`$45GCSIxaSu9p;#XLC=0Z{}m3W|4NN*$$ULUJCMf>SE)FE-*7F8~#r8U!(N9-9g)Fd*ROC~!~)qztQT>AzMySBoksL2qG2piuF>S3WaKtt+u$ z4Ga6lWS-@~{bJbvp)T8UA#Aql;TT}#j9D3w1ED}zu`!!IC#4$lo4^793W#YdnPeJ} z&k(>Sy9PaWBuX7l5`zC{4hz+0Bv0S!kj*d~fR{LPv(d&0~JkPL05 z2!MmOwl^b$DeOF1iERRpCBickAsUa8XVR0>TLX|$MmB}@bOd0jd|2hih{9u@LW#rd zg6pp$)ElOa*;e#gp6frH4Ut1hv;T*KzZ!BLQw05`bs3>OC`ZGt#QZOO^VwF$Hqja)cD ziGWe20kX-0PcbCJq&fB;b}|=2kbtL${YvF#-i0E;6%`m8)NZG3b3MkH5&oxO<|d0d zObr_;%~xe4iH?{PMI?~BB{wtb&FbCJS$EJtXr>g=ltRCnuk69o zm2L{p&sJ>?Ze~3YhS6$i`PEWr>W_(0xqowI18GJKbd=an8GTKrz)@LXAVOuC1pqV1 z6z#eVqFBu&Io6m9AH>k6M1i*8^I;aU?Orx6!UcsJDX=1oSW!3${GxaSZkt1R;jN9? zgWB>uvQKH*8nqI~D^~GfErEr!Pl(M_w!t&4`q3TcKv8i{;P+J6q96OHQB0@N`a|rD zYY{m)W>l|>e2-9x+`7*YcWDHe?d6$)3cxd>M^2o^%0>~xr*W0L|4L_tl&xR`ki>_% z+DaIoc&H~c|9@xWZz=I|VL|A`H#~(672)Nq5L3SDE#@B|-5eh4w=CP+K7Nu5qU78o z(y|)zQU5|vFZx}u8b*e`(FDjMdns&KNzsu%1(l6nZDL>kAWZr=z5{UpK(da)IASvo zPgS)5&n#U^Ao#740+wK;LHIgxuiFYU+Mq}1)TNTE1aJ{S`S72C7M!5v>azq~IE<$V ztEad$^n0kLF>)P&0U$Op>xk-~gn#%kT=tBkEiiZT!5ayCr8mwG6 z$!C6HBYKm-#C;Xw zCd!+QqZyZl8}4hF|5Y3B7-P+#8Ha$6l47N{Ei1IEC40s4Yu9q8x}}uGUMdldFT98q zgIsO`R+T&j=;e{59glxxRuI&vv&*9^WMut$x{xoH(krt_n$Tt8)Jc^&Qx9MnqJinY z(H8d?;r+O+;6|H;vSOZbPlRkYxk44TL{)l>J873C*l9pm2$-BCDt2h8B>stVtO&Ku zDmxZ_fLE+{d*EdRq&TBUW;wfDGy;&XW8IC@w->iqCFYI0hLg zn&34m@WeAujF)r=l@N@jYm~SIV6@o=aXHyO{GXNF;)H4P#qyPdki$}J59}XmHo(pG zJcc*7h8V#fHnEsce=y%euc~+mOKX%6Jny4cp54Msx==tM8$Ap*if8XJp23FEHQz1H zCQ}-M1e_}T6bC;Yxu{L$olMj7I|$qLB87UB>sVK#hYlh@HI@Hol|G7Puc*>_`8x#1H>lX@j6-D$-!V<=Nc7 zmR^F`o?=RwA{}$=iCd?|A%b?5#J9&*z2hrs_6qSv&U5Y(_5u_j|Giid+hE5af0ri3!)93)Y#kHq|S}qvDve$25Y*^(0A^n_N_d*$NvOJTQ_st7Bn>Q`cPaTv%VwKL)P*#!;JxJ{7G4E)9ub#O{s_X%t6evtGcUMkgLpmS^Q> z@C;+x3OOW1+!G28kX!Dk1Pfe@MQ$M8_?(@%yhW3n@Xl}IV_j~MFIx4}k`%qMw>7i0 zCvn1JA*JP0yzOZ*y{*}p0hbO|v-aHTu&(D?MfMk~M9pSG#w;~G3vgYKwJM%phffbZ zTJ|EVcqX4OlwtE(F4H)cY2Y*GG>bGx?f@)8O@ehtl!n_r!Z@c$+?@?;9yW_8n)x@T z3NaxgxBE(bpt9Ao+Y`1q1e*XYn)!&t7Jz{-1a9HuLm?ybD2`rOvq8na#dZ^fAJ_^5 zghdp-mbo5wR<0fwun6&3ZFH={mF0*ycpB@>v!;2nquHm}@nhMN|y*J7}2goI#8LCJLlDTsC;%N>|q;~T`~{x$Iw;+U=2 zr=M4xJ~{iZvUyPsLWT1nQ(%(bM~o`yM|;Pl z5%*)TBoynLG31f+IPvl&=;t3(wu43qiYFR6y2<-tc7c@^dv%J{8OY6isC$d zV7p{Z8FS$InuOpQH%1&6CTu%V=Asn8J27tKdm;-n&oa+~oPr=Dj2U(-x2#waUHIBm zQPYVonRm)|dtUYU86O{A@smuxl8ayoH{dDGN-iSQmfu*>?8*u{fsx-5_?{ciSUS%l zoK=rxir3QwI_(POVoecjO=;_TZbcq`)LhBM+uVOlQZv&R)|KA3coML$m}ydAPF4%3 zmSKv*#L8*ga237a>kUZt`aqw zWBh;PnQAs|V@EtJZ;OG=uw7xZby^+Y8VmCz54P;_YG##rId*ZBhK!PWfPclzvTZ&i z96%NvUo_U>c3VY@APahihiWV13}z>lAD|ay+9R{h+;9GSMoi!X<-ow!k9sapW_u+U z3CmBlTX*zvTLQ+96cdGtNqQFDDA=}8sggn0V}t29GHyznYX|PKu2@5om{6CioC@D) zrVW&v3!h3;py);DDU)4{ekfJVygaUdjyj1qlG^lFxEcWOa@|C1oFrH=h3mlCof_zr zl@D32F5`=!C{g7=@jnR}vV|M&EShEeS!MH|tT=yFPVOwSyg~W* z;cM7-Jo!R|Cq27e4Q5>Xq@`9ND3_&!~o?BUlRzwi%qeF5m+vjxBjVA7Rf>H$TVfv zicM13e{X}=G89*Y1m`Gbqv5%5Xw^|;(Z`E&`JX9kLHDVV6Itgoux;OH@fot3sM;c(wT4A zDS3NZVphmq4-6vC+a*fXW>SQh1zVQ9eeN-A&z+7AR{;D1qKe|1BqGn~QaVGd#NL4U z89*YN_VA2`lR5qW<9`cMIREce^|sITt)25_UYc^yr_+ws@lEHhulr`bo=1;qmQlw= z|GBO7OM|_g!>_OcyVd)<34}tZ;^^Wp=WsN>yFRPi`Mv8}{glVSo&OM)W*7hZ{SS?~ zeE-$#oqihPKKxBRT*Gu)%%G>UFMjWuuh(z=#p&w{rJ-AUrb42nGrQP?t@5(&?!+id2?8iwInckN|3qB}G#^G#3RF6LsUcInc1 z_;e1X8=maDy5}*Z@#~`1!F9IYm#ROu`P9sF-T2vkyVjF?D)d=h%zZoSU5QVZi`)D4 zcpS?(uTx#!=iJ?6zAe_puz2ToQ`P0RiFxd@4r^QHh)t@(6svws@5g)zPitM;!A^;4 zKG*lUB{+4rDb&%c`>rHE5&AE4*1f}cDhrGxZwYSx=qLYZJ^x3)wwtnkeCzN2Zu$6! z`XAMl(=gA?wQ}=)yqo&;x8;}J-5;jhMX9jzAk_F{k#6h|Kg&*UskhH>=jyt<-c|p} zu7{iULv2GnM)$IR`|+_#^OdaT6b!rzatO56C~uc<1bInO8mwZ9+ZolZjv z%jr*__t*RR+qduIe186AR-;azFVE}!=9D^o_S41H?>T=fgWb8E{jEJ*U=B>rwNuZh z=}Wn`cBjo-*rloV!%mmf=i$%|t8ud*Q!|`FI~?xI{^fAn*>ZGNub2BTGo|?ON&j(m zuXmNM_w_RUaqO<0|C06uai{QRY;bOzswY!kuV<&5xsu6YwV|JF^r{j}{nM(5vB}T- zV_TN;)1p0g;zP@(ep)d3?#CLcAIr<8T|Yk+d7+{nn{wN#<;QdRct_RNV%%P!JccQ^ z-CSgflbMCGUB|8DJ@7;%z61oUTqe&(>$-;&D3ceRX0|< zY3=%@0V;idZ|v>+Zm+I-?Jvur-3N!f_;x%z6~BvXtyEW*@$edZs`SE4drS38$v>~c z#{-uStv+@^`LQ=1$MDBCP>+2ifAr(eW&N_CN~YiyKOQT_P+e;8=hwmtAUzPHuM zw^Q&}J-Vy<>~-Hy$9K0>ad4rJdAZ!Lp=o->3!y`J!ROA(O-GPKr)$-rP+^9jPM$gv>=ehnJJx=xQau}^W*vq;r{n}5eiOmul zuYEgv+R8i1s;iA&@6Su29Xz+kw!7&w_}RtP6p`ZVGRKo~sSjO@WBqJyd7+TFt~&p7 z@yq%)xNPP(M6tpLrjS$cgVm-y3sU>t})~c`d0S?A0`@ zw_{c*r8=c4m^K;baK{$aBQ{{f0-xLjT#kmDbyAaj;%caC zRM1R$SUqco)MMw0k4mMs17A4M2Dhui!*pAPO>DLZ%lxPP7XlhuA{-u?S~GV^O4fJxeL3d$c(hyK0k-@`bm zwq1t$q`qJEK2vIOqbs}gWii&|6ucT18<)#KA2De=>2EnSyKAj_N^)a}Z9BxC0BAhU zb>0zt@|R|PN_zs~t@)c}qUHTYyMrF*kO`c=U&6j_Z{zYboo?o}>*Ce8`_r(Dqju@E z-n5$!t9x&sl+ILAPpO@bquO5we=qG6ZFYNF^la`6RUK^?_G^93qiSAMe*iTePUTKD z9qYOvI>@qkSaCLG-)_<=JVq*dge{^=u0R0bxSu6zDZVpYE(PF9W)txJj0Apn!XNSN z=RYnVA!LhTrTPzksqMLgyXX|f_LpMrWvbl!noX?t)oM?v- z+`PZO!{(=3oC~*XyxP-W0q=D4l|A$@(M$(g?aDlP|4L=PdcT(Ty?Vo*z6|?fcE@2V zr_$W^y1jPo{`vlN_2yUl#D0C*55E0&Xb7t`pRZJQh2Bs5a~IT5w7=w254(?byv+5x z?VDg(WE=c+UY}0&Q9U)M>aGsMJj`#OK#9<|sM+n!Jf52vQu1Rw`gKs= z4o0ohE-Z9t-7_srb*=2Z*55nj6Q#4ztNrSgJF9~+;hI#lceREI@x2fE^;+E;J2d6} zch$(nFZFBN=JBX?dr*GN{jfjZt2sK4D@I-GuYvB#x3?wb4ld;RBozpszS*6(hxpt>Euu0u)XIa+%>bxUR5PaP~XPbP={ ztsk$~>*0HK`1%x%)v&m0{Z41=^8DJDQ>@=!gWa7%7v@}^3jm5e*YUZp_sV3d>EbQU zr}294BCabvrDbZ)(G1n_HbRK9S2wCPUQi;rCrd%5nAK5S-mSk3{g{U8*j(aUOsDZk z#dT79leBB^SKT+&G6zV5?iACT)%fSpeO@tU)!tt&$4~wocfYuoTFq(Q<==)^`=s;R zFM~ea`&U{i6U}YV{;yxB-2Z{j=S~mhRyT1s<@Z}UT;><^J*V@r-wz>Ads-WJbA9Qj zIA2>8+ldF~XfI~Tv$Des%nuSV~1L*+RPdD4e=9$#Wp$M$`uoxU%7 zwWcP2kKd`%EX`eS6FnQkR-32w!>oL}^yiU=e#S1UdKjQdu-ZVE(p!g-QLRdvM{{tS z6=s4AUr(GeyGU81C>rq`w6vY;!UMyY5s$Wb2=|IE0e)-jC#{(KfG|oiZAr*s%4?ie z_H>Z7p|Vx)J>(%Pu76p^$x#-@o$C#4khwD|y4&H_JI#*6-LjwjYo2T-Mp5y1ssH%x+}KssFQNL^>vOEf-Re$< z{A>vTH9*S0Yg?zMX_<64o&9y*=_Oun)3^G3nf{Rd-_^}cmGAcYm0swguDAPts+{i6 zee>7<>qr~t^yx6^x7%sS-@aFW@4o+~`t&!K()ZWw`Zcc$g`P=Y)_?JRGamG@wWB}R zDqX(3na7Pt3S<8MUIvHhyyZ9YvL>}#`wnVwD{ZGKX zZ2wbgD|sIIv8dlyZfg7EAK$Q*2R|}v;R_YFG!2?hKhiF}KP|Jj=&ULh^0KByUYKFN zpe(c_@<%aQG2rD-Q~2^0zy|gKL+t>jU1e@@accyx$~VpAk52;59u`@GBouq8Jw6Lh zg-UND!x3Ho007(h+uAMVV?}u=Di$po|}b|-cC1E$}G2ds7 zHui2-<#lLHo+*)H9JlzvQ0Q|(MJlME3U!4-Fy!GAOm7?LbhL)EwlggGW{#g1!|*wl z^I*8Mp;$}Ll`8AIgo}YIAuSD?D{OIQ<6jESxQx{Cu&Autts!XI&+oUBpMqWbcK@Zn z9qV01`SiTpM!Q>6-T&g2P|r;>P^EG9wMlAurE<2OYrAg?K~8mOax(2Ty`-@^{&v&L z=lAEEoxWE;MJM(17OQ@G+W%j_{(t@$lz#c+A)iz4^KlshVb5=?pCciT>*AWp?EP=Q z8LyvC@54*_bO?P{4dYXqU;DHF1UZCyJ^6e0{r;EV^M0NO`F(V2wF#H5%$<(gDpxSbX+9~;Er$$?|%686;>>0sIhSKU7R_SY=)K9 z2gM`g$OE-(_C^~kS2l|l^}+B+@=;36JFDtJ_I)h(&{|!eoS&92r|<3b++5v#@pXx{ zI$rDMskPl7moP5rJudDzobA)x%)egSdu7VI-JRQA^K@CMJg%3|ZJ6JF`Sq#nepQ#* zy?tNn^M?cImjx?i~q^B5g&Q;gLLHOF{(U{ zy!cC~57voUN_I3Z@`pUPv;{z!zWsrA_aml?XbK+BcFx2`1X2Ro-qVkS}n$ z`gl%{51qFRSGE;+(!(0s!L)tb*X`6mP-MEjG2N~`-+r_G&4$U$&p9qjeZ4umreVJv zVsvA$r|x$2<0rggTbdI5dR4ET4`GP$y0bU4=GnLFnW}+0&AC6G=?OOe7`uSU6a0@zuyldW~KGz4<#&D)u-Fo z`c_%}?n*M#`_!wcS$AI5VWlc+v28^sZCJ0AoYtLP)_z*Q6SAccR*sdnx5>x*WK~OG z_Np)S6NN(kNiTW-{SyV?xq03_g(}@^`<{j`%TRxhU3;jVe_m=Gmcw8#rhYn}&uR_d zo(~k7OF7w7y}s(3F>!Z!x&BsHi(R$4_3eC|oBDmd_r{!CoAQhHR8H8^+i0ijMN{;8 z>6f0sW+2o|&;6}C?(1c(`Y&mBi>Jw&wR}!-^ozT%xX5kn(|&T3P19?;nz*(@{B)1Y zddq|HU)SkHQ(eEmUz@zY-orD2$*CN6>PA2NL{MD~W~~p`^WGiZLEERPcVqoY-*tPd zS1MC_7ut5{_aQu8m-{Yux2pbELj20#hg*(A{We|l4<20oz=7440L$;dU-bb6a(PT; ztB;ubGY#_*Q$Oft+0g2-jenewN+@@=(e?~~HzHs5f7uTB#)IaEdQ1XS^?A^1v7M_Y z+A#WH<~Z)o-7QZcz8UjeOwjwMeq6`%(#PxZOG@)8wu_y;n{M@YKf@v1&-`?yju zZN_12%n}~Wx>xC6r5oFzDpcK`(UPqPGq%}}} zos_dy`TZQr+Q2qcDXPe-NwxGcaN-%$Q$!b+D);3RW%4SxWY(0!ty(GF>fPXXZcVrn zU>Ta0Am3DvKIFq#$I?U-?VWGy%(3efEdQu<_ORoK<(qE%tDa^x%r!yB=H1w_ieFzT zu+nE*ZC6j>Z*=)$PgL};@A;61 zdeh{3a)(*l?(2=-%VVWU0!sZ zyzmv4F3=;El{VkyUN{gpXbI8i}UllTjMf@$&Ecd zj!+ikcd?mHuU+}ohTZN+75cdk^J2o^lxeM>n~4sDPuE@QcSB>V{F+a%&XhoBMiG!( zC;vuZZaAM_D!WeozG_ctw~Tu;AJlRw<7Lg$z7XzqXt{@>p1w40pL+ZCaDNW*@TDBD zgyl<{hP&FEX8gH6c$9JI*3_voMUz;m56l9vKI@tSjp3_RQHHIe=glAH}eekuof=UKpaQnIDdxDiZ z&h(dul<5$T>)=Zl*Dl&Tly>LC?KW2X`kMELIL+57PUA0QT7hvcpQlgOHQ}io?ECm! zo^J1IJp>B$wBh~~TzgW->Y}Os?^Shp*SG$&ca8sp>g_jg_Seup=U@q{G^<))FVj9P zw$UI{g~_h>GM^hLcM=eaDcZptwZ-^1(Q#vV@NGV*JI4nZGsA%FSl-79aNpolF9;~ z`?aBk|J((u9E{gmI75K@veRr#s4{QH7=>z@{Rsj@W~ zK40wDl$+&CSiY?B*?m$262pF9oz(4pN&nR?-}m8A@B8^wn|Ml%8K>&@=l5jt_&L<^ zaJ{?2zQ_NTt;&6~Zyhi=&|)u7!W_vfc}zJ(L*k>hzcuj`G{QHkB8J3>xfc-no+ zYMrMhT-3|jgN#29jbGDUeXGMuHTeGP(`@b)r4XtzFKTFRYxNfQZmzXHneV$}j-wft z*t@iLdwcP5J-s(wR4*p(OEtw(?zi4wyOitaLNIToO>5h+eP6qFQE92%+vjlqB~el_ zV~#prDA-aqE9*qGti?YY@KJuP}4mbVyv6EC}ccPRbdy}gd#tNU15zn%#w8;t1sB~O$}&lCZAr^c#L z-C|UId74fs#Yw-F7khPoY_9D(elPyis3uMDbuap2{&FbQuzoun?A~;aiuiU~b@l$F za=Wh-{lz#?zCP=7JGHl8&hzfcv_thT*8M;3WwQ0~<*EGN4S~`B-tU_D*Y17k{a@`; zHC31Vb^3=kRp0Vo(Q;eOe``(e!=kSTUrv8=M)}6B>tXIL%dIUc9S1cle+e&fqWtb= zHBv$LV$M@bQTItLp$+e$JrRnW?T!%Re5sQe?QMUa*3$RgWRKqUNw3PUolmlKa9Qh!2MZQr<^B#WKGP z>OtfNn}#!Ql)0o&IfN7gDOKOb(45}~6Wh~0wAoeHK0H%o|AV1&`Vhj>#LnLI)vNC1 zJvH+VXY8C?7mv}o$=Ch3|ElZwQqoJiq}O_dH&DM%?sA^0U7j;-7DM1&KQGI%JymnP zws9`58al%4H|576d|tnsX_wNiS$5|VFZ7{Pe{XhcX`838QvLN@W9WGvD5BoJj#D00 zXZqD1ulCK~etj~{eSfRWk-+}-_Evm#XxzKnx7{I*=jU=hcOkdoW?$|EQD0+KzfW~} zUrx7O7>}dv+tZs#(`llxpof;~^VR%q`*L1JU8QgI^dK0m$I(RB?U0f>r|iwbnw>MR_!R;1()~eA*yWE$df1xM(RgZ1Z>VDo`+PSUIv#(DB{hZJH z!(ejfmU_`kd=1^*)cx$P`)K_-nS9@Uu>mC9t{m4ojO%W_#j0&ry&tA#GIpBi(PRoP zEn(KVI=FX#e)ebgu1lapT3`1RR8NzkM4GRQ&Nis;%hOWPVVyspDAJT&)$Oh?y?=YY z?&hT#>Sn#n`sTVe)rUE!!I)#cHw0+Ra{6TYx2sjddQ;1MHmBFn{JP$EcAc-@Ek6Ca z^X5l`NW7Xp62(WOs0i8o6D$2ABUKym_7fuHB%@^%5Nt+Pq1Yu5e5i4a3w=@oH;thx zhALJ^NCCH4nzC{ii2wry7fOJ*ehjy%6NkQ%@UT z-I~iGyu~^knyi}c{62=I?ETZV-W9()AErnF)BHB5V|LxMtwJ}^JDL-W$X~c%{o%9&Td)!_ZwAhyLsn& zdXBrcSzfejZ8gS)Dq(xGp9ovN6AmbZ+$mI>K<{V%k;NayX!YQlKGyT!m9rv6`w6`N z{*Ql>)fI1hG={HKyD!+Nf1)-16{;NH=l7OM)bgk1ojyvvEY)(o_qW}cLYdE1^?JMR zs%m*^RG*Kv8TJ%mrW4qXa~W?0`}=Mul+p*oULM;=ZOx(Ib#WfOoDGma`0cI2e!Pg< ztVXsimyP1kIujUOzu{ z{$}-Wzp5Vp{kequo!;`}b*o3O=->RY{0i1y_SO7dJ@@Jlr*G}>`svf_`RlApO+oHk zb)-V>o_Bw&)%l(V7wTG1aUj@#x_n-8wcj^RyT91sQ$P2&cBCRA#L517F7u%~)VJ+s zMJ8o3XHVuN#de4J;f<;+O88aIu^(-i?UM^X{P7uoEOse$Vyn3B=D)jIZSUr=+ckeS z`(B@d|NiyA*w>}|r{~_=^LTurZ@>KI{m`v`e7*Zz=fnGDxvtCMHd7s3rv1yOVbqz>t##Sf-}Xyv)3bg~^xxT046DLa zy1%u%rETJ!a!yz$dtNWglnHKjYjbcEyl&U^NCm#e#j-A-{{gdGop|!yu-!cCk(72+ z{=%dwvsp3dCb$N{XTHF8z}UjyOwTcCuW;pSp@3X)`#Qzutd?5M?IrJ?zfld`j8pT6 zvJfcDjaK1ArP^WqHl3YHQ6Ili-i|ka|MgNmrQLFxs+ErCwVj^b;r6Q6Pbo<=c^W~E{>8IBaMoLjP z_m|__t-6>Crhs1ZTA!zR-3?}VdTYy#!f&?CG|!>`OReweOZD2`r(L^x8*Cup>IZ-M z)_l6}F14j%HQ)A=+gCmsz_c#`OzDZ^F)1{h2V?Jq)aW zh83H03GJuT`*^i$Ue-Dms*q3BYU8|X+kVMM-vqS~UK~8i$e{S~qmt2JoKh=|do^wgGWOEandsseE z9=)oyS*m-y9iOglTzfs)(9^Tm)w6!5vgv$3z9~vu_paUh!)%7hsX|HM(^b`XDu7SV zR3zUb72Il+j2|IOmr!xC6o4t0*=+YgHbHi@0{o?0q8hmqz_jEem zm76Fj*Sp>7t2evaMDg78dazf*vReE4wXsw)sHt`L=~d6Fc0QkR_W|5!73^;U<|<>a zEex2nT?v{*qhpS#hD5ZY6yTCg5w=0a_a4KXk#LE^+@xMG*ru}?s)~*@Auw31S)W6E zUk@Ff)oIvW?(;9@IUeTop}WVK*6w77;hl;o)vnd>rD@tjxY+lT@(TfdbI2DJradB~ zy>@oL)X7uz+I3?H)%U(x9yj4Va_zr?3jcAc`L{Xe_uuwtQ$G|j^W}w>Zyjjm{Qdha z6USUY_Zh6frBBEH`peU9d=H_YZs(}d zIenv=J>1(qE?@dE4peEFgNu_PU|-@bo{K>xX0g zyr1_WRTQjB+pTVTxptw;#<)K>SHg9-wdngx+))ZSM<2~4XQuhn2sN$QU9)bgQXD-DQ^{@n%$~bTI(#MD3ref)ji{6#5?QKTxOdg+h*%U-AI zx?g;I9e+8Q^%?2?XUlTr%HZz_W7K1wj$KrW{$HJUl{fKpDfY!#I)LGIX-1X9p!0aGpDopWZ52*)up4E65#Tcil1Qe8ilK~YJ1kH0pnZPxl~cN*r2orbaO z(zc5zovI&v{*P1k(4TL5lTFm}@%;Z^*50hgwj?_bi#hhZ_Zf1yL(NTfvj;XwK_oTU zk}Ly$k{}QI0eLAv!L&@cDUo7RB-LGA)m`JAGV=_3 z-aBSToFOxBb<=)v7AkM%nev<+E7tnH6>EL#xbaRL?^M5ak4%r|>3{Q3h^H;-_+GOn zPa4mSL47^Rq;&*oTBmXP7>@qw(*D_OBYnpIYZPQ2X=<$+=wuZ*c=AxLK4cJ6((WU zswE_JVI#{merXR{3?ei~+M<|@v3Mi%K@)rvKUs;%v9_zA2WOZ~HCd!+nMP=0(GqoY z2*~EHh{+aAA`z<@#@#6SH1~0hbH&CaCOaR`ao0r=9^A6P!pxEM|EWGldcklp@U2*Q z@;SsUmZr?&6#9Lgb+)!}&6}i;r3cL&ja;)gW9On8#qj{6P2%#nNCxHh8sRC?Qy(2= zFu+5hgtPb5(4Db8ymzUG6}I<}bq_T1RLX$9(SSsjj+qI$#Yk>i;zojvE1-*=@j!z_ z1D(~~?Wl~43lebRgq7Cu97;hGRhLCudx|Au;5L16MR=Cl2t+)y8Ycjj6TUyw{S|%^ zJaR?f@Q{yAe;;V3d#E+J{~9x)F6#sovuAeDFV&PL%Ip}5ri3WnVDo(NcyN?1cQs2U zuw4ia$3>0Ss2 z{SI{KqB+!WgvZ+B^d#(&N5J-n9-QD&5jqw!1r4Rcfn5+y4@X>wTEXM|k{~N`AkgS| zqJ7X~KD71N!`u+)PV@Q>bJas1dl=j8&=DXU6b8U?e3pM+C2z1*s+O@;InM@|3lcFz z)E#&e8wB!XiPHik64rQ>-6T?8H-zv_Q?fFjtGEJ-jnN&k`M|0)%zZ#&EzPjItl7}d zI!3JUi=VF3Ldnau!g1eNPF#(L*5U|<(s3K94vj(Jh$*U3554zoHN`x)`KAv(An~rC zPa;KcncGe@_5{T>epMa{B+rKMP%`j1FLe&R_oVUR*GC3*-VbLo?f~8)rahoE<2+oT ztJHEcKpI&PsZ3&nv1pix3`5$ZMlmWr7BJIAKe^D<9Y;RSmRcblfdX4H=zI`C6y79E zS3}VCVnl~AI^KI(J)tm`U`AnXi{mkjxjhUW4pOw35)rg3VK}#(g|Uiw3z&$%QkMER za5yxA$i>=4Dk%OLipea;lzPNKZ7ek2`llNIzB4!`M(ZKYGCM&NE8fA$2r0l6_ZK0z zsUqIb=`>Qc_nyy#TX(0zv>YX3W@mU=@)?b|7G{AI zO8tT+o-dq%$dEeOt2FJ8cnm$s5$rRS+|GqW1)}!!hIlC((-3 z6B-RrkoefMpxGYi#^_X|B$+%xNf!3nziG^;OXGj;e0fO$ml={ToK;Ss=U}7(+D)UdGdZcNjIVf|d+LLF|;=7s4D(_n3=4*vP$CzsH-W z#wG{BLz(G$`qeS5@>X){SVnww&F7rdJv@iU+EwtVndyGh98cblM<)**pAR79++Y>H z$GUAs(AdZa?FDK>z%hWQZa`|4Oj(xTR=CbzROxriRzYq|DNW_k0QJzG#tCAunN#W4 ziO-(f;lN-!PaSDgwR&REiCIA(VCPoLD=om#dtf0c0dbwgbWidqj5{CaCAQiwF-oS= zGd)+{KsFeWc!{7`W7|iXs%~4i8PhB1@zv~5 z;bFHH1ocwENtdJROTM*Kr-Y@EboSwEg`-1SlD4M4Va&X zme2Jt3we+T^$bg@Ae5h6=iD2)A+rJNdg1vhXEEa_?!3=Y*8gP?6eT)4+jt9fUMwjk zalP)W_k$P0NtSdl-;>FI2F&gj9b<7Z$$pI6eg!ft2apsv+FPe>*B5Z^cMD~crqAnD z0OI$TjRX~9- zE4lNKHFwJXK6KiG`}_ie_e|!1f=-Up^8y$-J$PzBtW&YUVDy{I z5gJJZsj}J;AMB`K5l<~F=0y5f;N7tD6a-U#kh@h*PsUnLF|6PEKzcu}XCEN3b}WvG zb8~OQCy!7D%Th31=BbGDW|)ag`pFZesIpVdyD{vf+^@J)CaEKdZ@tk~+bu10UFKa8 zwXr~SZx~GIwBD02GvP4d$KyV^YdtlFkcF1$Rxe@0CD%Dw)*Cc+V}k6EL>re6A#<8V z(}KIy=}{&lX*>;y8WJUBvP)*tf`(a+JEAUd6r~bmz|^2{V^VI%aZFh(;Uqk~VNux^ zE_%mb(^!b2R~}}AIrdc5BOj0ZsZ1nQga7Ov>r95Kk&n4Go+;O4=#`ygYS+V<<~unS z`AYBXK9p@sQA{3xvv!_f3s=hx)>kXFmvEk1Iu;35#)!1Z#cEfwt|PJ`*#Ba>T<8kr z6ksu%q?f!4=@ZQ6((eWDm+2^N60z2`nfBD$@4XyO!x(Fb`=o1o?r}B7SjGLUdU9wy z^EAHUemQ6ndh-Yw(_JM(GOtRK)z;%WY1@66SJbl+_Ln+nFzWFt&Oi)@J0ao)eHP;( zW_Y{z%rDK;-nA1S`wVS>42h*GZm*Vo{IXN+cJ%8~#(bDe>+#(b*Q9trquOPGj#8UD=PGWr{3;@l0pOJ!G?^?oIXzcKJ?)qG&zILWl%i`8cNPc7}|S06n5Agq}i=L&a5{&*f8YI z$|8q8m}40-IQ2N#WBT({b?@H|g7?S7$5zB+QuH`V=5T@rj<0iEuv00@!*SyMqQSFi z9Ngjglo6a87LJy14g&(WP-iJ(iv5 zG}jloT(VoEw{17jKFU{9v$(=>ZX5hY3yOCDAPS1slJ`9gq;agni55lFhbBsW>K2=<5EQkZ%D)Q8D^er zRTIE*Ysa;Vav5V8d#=tAOL9KYm#OZJ;gfgoI#lR2@7PX5%Enyb5tSgDo55Zy&vsa3 z5~BAkk0vrwk8*M|?1A(V-d=hq0w5J*8x!y6*DUdNn+p*ROOnBRRNfO&$ftnaHid4a zW!_))f_unX$BJ?-sk95O(2S%_!DzMcL8;7JLMP9wLr!O*E<8^X(DMv5$u*pNTOQlm+je@YMuGP; z*dFDzPPM-0gNpO{_^}i0KArT)RXwheI5+1#;zy58PtK2goh zJ1eZ?V-#^<46+z|M12r*_ZW^??5QKdp)1QG;^|`;Lt=ZC%>Qoea8^7vJQHy#(k^P7nVeGi^psgS=Yh)t&5UB2+p zw2C<*Q=@e<>}`yQ){XKcaXE@f-$`9aQpIlB8a2X^MR;K+FptEFNk)nk6JG4ASyYX} zwp)whnx&a{0U}F1dnM9tfW&vSpl-b#l4QgA<8{e4Ol!f!t8@s|PU)YIY+I>)4AE6iy(9yi~8 z|Cc>4(>bMZ4hN@h=JOq=`mVS3*m);E#wEWBfxy4y{eC0O8~*XE8k2ck!JV64hXU;) zj=Y1}Bf+F`nJSXl1HZ@(Ys%_q96Hp_Gj~a1@?`Wb(mZK;gs}(gJI(+lkYq0MfK554 z87$@=+^##GY{kHm_S*DU+gsyU5UVDA^VC1Qv~Eb&NzdKXrBzWp=@WX(S;^xx#!0%b z@b2IgLimwTk)=)H#O_rsK^D$_YE%7T`0n6nOyJHnl}^kL}Np97FS|} zPzv(hQjFUiHw!E&;$Nyvlqu3aFe$^>LJUN-eMXIEEJHHG(#J(P#ShsOcjPvweuqb^ zaki|pM}+6x%-Q9=_27raIM{%alKI#-*xfc`QY~SMW;HB_*^Ie2V#OGq{njWVAK^3D zx(udqVwDq6Y079+fZ0q)ct&E4N}4t(@_Rbq_iV{12~9#WVl)=J-a9-Vv*iFaITZg4 zZp;z4YwBt70&a2dpb!6s*$;MBCJ`WPujiC|*Zag!Dn+g2-Xk|`#6*5a!x%LCaD78uVwfC`lMIH)6GY;D zJ*Q!+g{5HzG>OA#{q!{7ZQ*X*@qWj7$Mo(U2c>k!O$+%y95m6EUNO z$yjAwZ$~*;;t3&$B(26ND7)m!@)!l+;W=?ii<(7axA)fuy9iL2 zu7ElZgdA_?Y<3|JC8t;H6{X_JUN#<+tMX<4e1h3iL;vm~TgeSY% z$=gei4)DocGk(+axo_66eKV3g9C7}CQ=Gar3_K9?7cj)XAP$0N zAH^-y@-W&Eq9oK8LeEjdp^uKk)LI(E>rw1&Ae>YKPdybh#J^lF%YF}fP70|8&opmq zt5D=Ljbf?Ig$2pzcbB`FP?`ZbnqZ zH1hO%79^Co`76Y?ejzZ7c)4zIsBYKB*hJ^Fvzl$EG0&QPBwSR;R{~W_q;O0Jj3+EC zlUbwC7_G)skP8r$?zF?vKBB^@>aMmI9k+DFV^CN=`!~v0VDdyXo7g5RFlzO<4h*Ju9pP3QXf)b$a+ci^0R z`$j1IOTJ)egqjhYyKyxZOx>>MZ5gAoX-qm+uUA96c-oE%#z0fr@1E7fN2H=OX}{ig zlBY3h^UHUp92FPb2hK3ZW%W92I3J#zN$jf5kZ9hx849$(7^uwc>!wB>PNH=rtAYtD z%G=s3Llqm`zpeo+3)bs&elr(@m3dl(3a}i4{JPvOV-pKwb}Gvhsx8i@v63b3qFl9z za69SDaBJ^lm}*!Cu*G*w*)|zxB^{viHF@Lp@5IN ziJY;cfT-384x z8wP%cu|E~zJo-!-*~Z%K3&1yh5H7E0_zn&&!>Qodi#UEM-d@94&nXaUg# z69{@^Yf`NG>~e7RO7zHRkfhc|L&oNAf%X$iEnaxMA<>#r6z#{%c{~!4rF1iev|ZzE z1DawV%gd~coB7%_Mb3fdFu^#P4e?yd(d6lLndS)e)3V$ea2u`fdJXkvu2dVQ6MHAR zE4HScv+a5#8VT8)?@K{N-upN55aj+}VfHx;!pAp!BclGwfCGutI=G`y7vOA|oZt@g z+;otZ#O5$42K$d6tSCrrxiAWo7!M}ML6(IeXfzIj-u94_3KpV0_P{m_qh&=Gqos+o z)it_fSm+kSl!`KgZbPF>)D`)TP%>;P2zEunx@k-#f!L)cQM?fe2O@WjHi^ucUn80O zKN^kLyy;a!T71Ux$E$Pi*6x!>Z^4RF2zhjoPEx=Rl;@n6y01*pW?S9HAZrF4C7Br_ zk`gl*xNDJ{=luoBgf!mGXMhgnFwex_5TPuIt4t4;4vq~pX2WD|p~u>~$l#DV53*Wf zstgYRN3YDxg|^+^bHN^9#=&GwB&IedSR_$F8^{O4J^W1OdCF#@SEzngGhHj=S#)BT z6Vi!i_>5*f^HTJ z5s9e^CoKMX97WobN5%-4l?pf_My?CeIZKEjMFTWV*GGKt$Q;PQjOmV}q!f#|9jXZJ zG7|Cl>8LI$v#nL__lFDJltvLtZjxjL*kpJ)$uS|sV|EU0T%_7Tw1#? z2u+Gb9|P zVUCAqTsQ{XjV?xO-o@W5V$>&3uVj7oPj&U3KYTif&HI0=fFFYGZ*J>PpI&~~{^P&; z-T&^_f9h5rQT+tH_wVY#Y3Ix1wuWd>LU ztwc*sHg<;5OTVOvHl3$shzl93NdK}O{Qv*;kl%h}ckt2oM-P1T1;H;n^nIER*HKB_C~L#Fe*jc7wzru9sK%HhOtB)xSys zUDYg^)3?iMuU~_x1gzP`sxBCn`_9TZWv;>$h{0{#us6cxX1|})I3`W>)Vhd8(Pnhz z#XjFO%T%Q8j3bqnxhP30y}^5aNV9O9=NWhg3S7X^hX%ik^jMkEj%?ZBW*+8vo*IvO z2*IcVv88x1CjC<6#qCzscNC(vjJdU(gPPZc&F2?rvLH2bnC9Gg<5R3nK}BM3{3>G^ zg91!I_S{kFs>lB4UX=nq@-UD64>)C)Pv0L>y7!C!C_Qz)`7Pge91(o3gE>dGBV2Ol zLfQu+bv!hIr=;31aVP&RL$L>ZE5p^;x_sznZ!Fou#C_J!EmONV@(@IU*7Nznxp6=8 zZkvuEUn@e8B3RmLA_jzNSC|g2j4m$^MV?mXkbsTB2|}7eZ%2qKra~>N0o>SwjFe`c zuJ+Dg?Hy}K&)U!!#84brDm;{OH1?p&ARVMS!}z6egynIQ(;mYfO0?{#;)QO)z~8Em zDhHQrJ61hc7IRg^93*WI`>Nz!HHdU72Oo;4yB%aT19X?PMN|@KO)@AbcCDwxh!_-4 zo;Qh6Gm+=>^*CcS7O=N>!xH61!I)W2JmW*8jEX~;+h!EZW4Twlq>^bgCCtGAb3T{d z;5QS#pmLa7QFJhh(;g(<@HLf4^_J#i%Xk8?M-Q&es%@5ePO0M#ul9x*OKcfI#*r?sZJeLUcSCgok3$FofH6Ftx z=V;9qK4zI-+_kIMF?J0aUQV&T=%;vZo(>+S+Tv@t2X9}J2ax9;Hs?3bC%@s5f8}Ao zd7IODJ?^Dt1}hlNwOJ9acHZEE*25-=Et^Q`^pkPC27B*IQ90nw*ded-sWhZ2uEzyM z8xJyj3E15_!wk_~+s%rr3z%$sZWRT)vRZqfB$M08%~33@Aca)*RPriM+ANVqAM9DoyD;6c5<^*-#tEhRAQEFr_LK?!r^X{ir;JPQwV? z@i6(Q$bXy{=ME!Kj}{S1gwWwqqI>f~$K1}LR@jDm(f$rzsb28RT){?Hxko|tY4z0V z0fNoGnJOeWpGve(B3#E%s3_{D*&`?>ofg{j@o|W7xgW?)UaU1Y9uJe+UPTsgwb4^& zmZ-m;f>k9$=?W8elI6YBL)TcD)fQ?KbD3L*v+5ZpFlwWQMh#v>^%%!8Z`J^tE%N*~ zrd1y!vG37brqq&+B6EsqSAL`?-7D`{lr?dRN4vD+jmYef?KtjxCMGdX7SVa4drp#z zHQS?P-{n%FYQ!<#bxBv282Qf_TMbm?NTT8t=~$C}l8CMwa*g&%W*JNwAiYah+ab;p z1QyFSHKrYQZ~O~Hn-m5(H<~$sdVRwpJIE)kv;~c`=_CpOsI1mh}YkN9z4I{Qs z4YonbKGcRE1DZXE-G&1wa&) z(P(9={Kk{vldGV0~pWnx0*ZIrIsfVv41i3HYIlh^5 z^8R?}@z{L){X3i3!N|QGpxuKkRVH#*Blc{tg(FMgBJrfGZ&N5+e?9j_yRJ)*MZEh` zbt32S4%-L8V*nsO;;M!rb|Rr{)jpfIy{HTDvA-t76Re22;w zG7kd)xj;N8^D+J&hIgW4UhO=Q(Va?bj(rqIvFxK-=s}?@2ydc8s6L;&fwOk@@dtAT zsE?|&?pN(CO#4>851tNJ9DK0P^TQsM`ke1Jm`0x7d*7stM6N?Hl~4+Q<761Z%E$8? ztLu5b;IWD`PiMvS8E2R&SKMgb0h_5LVou0Sbh)KEwkvl{b8UKzP?F-wfxQi*;3Md1 z&&Xk)VihyZl|fyEy43=DU%N=*lg`a-KgoFZR0P~w*rk()XDEeJsmd|RVmz=MHPwO$ z*@0Pw5$dl8c)qyqym{csHNvx(yic0L^LfR|#kx}==>1d`c+QAE>~mz0kMJlW(nkL0 zJ|8XR9zS>pZLb_0xig%Lh1x=aq$2B?4PwBWRIv4Ic!G`bwAkrIO%#dV1T}~lTV;gN z#uOBA9~gE<7ISRV;U*H-IglEYqI;QCtxjXO-aWhPdg9`}tEJ{PrR}ccK{ar6U&8s(9}@nl=ZMmw;J zQRZTn5ng}|#uuc?r><}r@J<45W?FhcQglY|A=5>jnG`cH^EM+>K5tlyDw1NX_&BP5 zmlbo6czWBRJtk=P+v363xyQcxkqdlu{&;`ufslEA9a=DkTj{WQlMB+1iZ76rR7svh zk>zwzc>o=>%35aqd-hi$c9hN(Zl2X(AY>p2#-3nkd`lvc2rxS3e4s}cjxdLGh^6>Y zckP2{7-D%C-Fb+oLAV+@9QqSO8IKM#D#I|~FwUGDkeUu^*9MxSCT~b~9i4?ej!#A3 zaPX&tfXA5lAynPRU-;-4^p`Uu4-a&2-wwg4KJi4iA0Jws#!8$E2TuOx3~nB?>&Jii z9F30q@1%%+xK0lTVCSP^cdCK}N5pdK)Vh}{zJL95hS;9|xR?iSDv)F(-vdVd21}*U zaTevo?xBLSN9(d-4IC>VjCWCEsFQq&wI%5SC7W*8ra`YG)^-ge*vuFTmU9~M&PGX0 zr-g3SxL+V_8o9(vnnn03S|&Lh?OicLN=B6t&lr1b8!$GpLYz@(wn?bW=6S?XH%Xbt zYG1(4?64kZ1hnba-Jr{FuJ1Sg{ncOa8~^?#&j@!T?cIf0;rx}GgCZpM7J6gEC0~o3 zBfWHeJt?B~NOCqWX4f!iOj>d}MgFr5NU3BRfZ0#=jEacmb|p#9C#FnH;}wYGJe~bk zc#0Y~wt3eUeC)Q1*#B+s##yn;dvUcW*9)5BjWLq&bS~P=)SHeMqvsvK@J!vMu1uZn z%t}XsqP^J70_QmrQ+tML?x3Iz?{)A`zCIX@J=Jxbq60k7aXpRnd)y&-Rw6ny1RM-+ zED}bCn4>|vDejz9ZcM;lj;^Pdv%6iIY;3#CsYv&rBy6B{*Hny@0H#VJdPw)eYdyxp zKs^a!gq!S24Ia_x9OKBH+BnhCoWT(=o+QoBX6;U@;wQ^KjomnFADo0)kH>gH`ukMR zby#&7XJb`yAv~8!qD!~bsS%zaQM!k1MC#p|#vJ3KSuQ+qwpB8L1mEsa+%|Sdoyg*$ z&#m^9M~u>nDdj7;?cJ?kFGd_S|a2yel}Da9u~sdLnAA;2ZCV_HOlZXUghxN z4z%>psv4>e10M2}1c#f$VjZd#(SfX>^IUd#E=qm?OeZjNmWew4ay;fdDwZF?{K-J> zFYo#PqdmB{_QlzCo^y8(R&l)hc(i)XC_auw;QkTkEY9%_#jim$;n1^5J@1$?qQ#!+ zc#dpF7cGp5_eIW1TnOZ@I)k{)O<|YX6LNq@-j)4G1jHVXk}v_M#f=ze990CcaWc^! zmEG*YnD7C?`n{JIEGJYs=3+>I%dn0oycuNSWBZ8amR81Z@I6+RG{)q>dKfEN%Q?1& zPl_QX5f)OzKn7FOd!rwmPO--}ILK&bi(B?T>ZbRzAL z%ONPW>}I$&RsXzMleMuZ-AK{b7t&}YN0pIP;bDb{6^UPWu<|)J;X2H`3Os$Ea8D( z_@C40W+Lz|1<<@P%d6G4nmxt7RKqYT)d-nxaqq8P1Ux2=HBNFu>_C?>!Hr!lx|Xi< z9rE}ZO(O|v+C{rUV@Z3Rp=s~8n-8gp_dZc*$O{9xv=UNgeHc{k5`xG$!%+P*DdaeH zrS*7I2rMEXsWnq?L-i1jB?x_aDRxfzI1ptK}9*Pf?uxieHfSH7OJ8h<%>g7-1ye$9UQ!SLL?{44C>(X9{L z;(X7UZ-z-ir@>Okb^t*@zQ2i60`0hI+)*m$_|P*tK834ecJBP{-Ximl|NJ8ue@eT( z1=WvG;*|Wk4`TNMd5_W!5Y*mt?B^PSWR4Q-m&7w+lZY^OhToMXZhbJY3TCj2G8f;$ zl+B^tkjsHyM2=&Y2oXuhr_LCU8fl*n1hg?FE?f3$*C}ZhxvGs-{z(%~BnF}iHL@Av z`799;hZf6$35f}=>(Ee{dS5W59;xcwT4|y6k%yxt8*{MHuNhF&IIUBFYREkqZdu~8 zXy#=dT+p*bqZ|vzc^%gREQe_~4Mjg_&nF!O<^08dcgw_7Y44=xu@*9@cs&X=WQQUE;iV z_OUpl$&`!*yo{%*r_eTN*yy?Ey>)y$5*M1hsdp%;(`tC*BLp9F!+TQtE0Z>J=H@9~ zNThJqZKkAavnGX$DNHh2fcygIS2DNbh%7;6E@Kn(&!;DQgD?GM?(Qla-@55NJIsLg zSvH#IaIr3Sy!l$8HCpmlUq-K1BJLTw)#$5e8Kvgd#;?0*ESUdP`a^Zm4Ats8pc87F zZQ!f3!$7AbX;5bfl{iO^do2Dw>ycUu&#B&HN*x_;IpuQCiPnQNa_3@M)H2Nm?st+g zY6(V&aO91|65`;zRWobSw&kuLdDP1lYsLleu^>Td=-|4Q(|!kS(&kv=J~8uJx`hNW z1Cp={5F2j zM^FvV)XfE*Y;)uZhl+ciTq4UxSPN7pw0A&J-VPvEO@<|kOwtl z!QNl>btsj;cIv#8cL>=;Y#Q|b2tLGYe8oX+*{ImF@g zG?1PX@Hz3yQ{Lg+&34|lJSisEA4l_={&VXXx-D^S58Gk z{7a?FsxswemuMI#WinC(@=c_&VPcaK9nB}drk!0B1MVi~aEG8bxPF4BfUfH~t$E6{ z~?CbE#j(9UV82rIoyx-#9v5(0nJ0si7j`0F_Ovn|*99x)qr_ z*{-LA$SpI~m=+Bjw9mJf(WTs;%Nx+_t}73JP3>&_U5Aw`n-sG zW*y2INPwuJ-3@r3Aw$<&NUeEZ8F^;qtasdgu?R3Un4IR+Z!ixCv9{817@qDUh_*VM zZRsGgq5xC=7Y`vk*|CSw-C=~I@H^56I*6pVReG4%WznPw=MxttUg|MunC)Zc2}^DG z(g5%CT)*lx2&0!;QqHwveVf$t8$KqLQam0rXQ$Fy6UL$pwjg94Bv!GCF728OOPk1t z_F8b>XlJ*6FKK&Xo2PwrAN5a3?E`v0wW~bp(mtUhZOXnc3el$2jiA5m=X`q+k76Fo zU9_8H=3Tl36W=~*^)tC0FAEC1s~2+@ae0*$1~PLu1ohG(nI#@elrcLmtYi*0I|_4( zRenVlJ=P>QC|ypvZKaAkA+#=@ke;OZu+P#KM$?2Qi4%IM)h;8tGlFzDMkXk0@PXk- z*Jz}eg8rrxcDGNKh`Yrmu6NmH(=UsCw^wN{w%{rfyP&N-CaGOV5z#@It$fm4t1j-U zeMiPPj%Pxf5lx8g-VrkHa=Oi7v@}If|P%<#u%bja-E)_s}#( zyTmEwo%DXQ&*-aJ=W}i=Jx|0QrktV!ezf5Pn1+L11H6U%T@_|F(x3x;Xl@VFPYv?E znw-K@s2rgd%3xN;9p)?^b(qbuA22j$7s0a+o^B1)#>P9YMXHMt#5ol{7J0sq>=*<7 zPo*(SxlA2U&3+y%k!fPaT_Wk&%oE!$`9QHJr;7=-tF9Ky&hLLbu8kZWBZGEk_PY

(4$^O+A@MXNEl7Yd6(xa);sXEu##@m!n>wC9s8M8t)_?%bi2Lw>RXT+Wd-oC^7`#T?zx^(R zw$pEpfsXcgvUTfrYV4<8L2tX@$STjJkkt6JUhrjBQ=dj!c-2&-F$6sK`o=)?DXrrW zmi=0#R!LK>JdA_(!vN=$siw6uX$R!0HeSs+$S^pyvk0%%NsNX#oMjjKyxgcsCGXE= z2f|ZD+&0Z?Ve9LvK@&HCjln<2ehDdBt&0NRRu1HcEhG8OFiI3#^1J#Y#({caNov#$ zla__~u8jzH3J(PtO1&C|!k=37bm19nCH+Yqw{)Y9z{&VJ+8hd7ej*wl3ew}sXNV{T zTdm;~z7AT--{U5z1u0ANcwY1|i1OKr_&fL>YV)@0|1S(3qA4S;-oh1H?TY+lj)Ro( zmDEu_KA`TqPT%Dwu3Aacq|_ej?%Aj~t2i-h$xlNbe-rAHh3%RkkY2IYqhzM#Mw?(% zlMit#GfdK&ZcCVwd4yk3%{#^rK9fqxvg0;Pd&GB2AtD{-raOx2!JrZO+y0l!F7Y(& z@^$v{8Q|89f%xbzFK!nfyL|($>6Om1$#7^c&HebAl{I15U83{ zkzeL{5eMDrTO`c6DgLhl=2*%%kv`kVDd^}zN7?NXmq5B-40DGDZPpo|ou)Znui4a9NgREPZ~ zh0nY^`^}nrvS(!)=ntE>J$smd`k)!M<{I&h^4Z!`Iw_A~RBh2Pb{!$PX?1M2dRggam&*0PV~N1G$1?%|p3^YX z#i}ce<|`+%SJz5FSJ?TKv^krgdmKeB+F^7!RDVbbAx<}SU`K-* zyTzlxfajWG!$?Ak!0{neRf?imx>i|IGscFg|E5KMgCc!y6`BE~Yp8+!k^}76O$F!A zTIJa<<2CUS#_E@pYy^5+HJs!Hbg_JeEk5any28Y=%XN=Sg_YvE^xg0X#D?wnHM$)p zNo&xcVpLQI&?u#?uITRXY;}82~o*|{5lK!mEAAkWM8^Gp%;WK1F|bH z%Fi~vz3eoyVFmH5nd`hk;Vcp6UGVQ3(r{sk_Tw!hzv~6yAR0w*(2l)5$S@AGwy)9}Nnx z3$5zDTSFI%&m^u?Mu18MAbG4d2L!fF&d9$2+}j#qV?hpQekORxc&Azz18Xy88$P{C zb%q}+_>3Bi04bJuL{Zc6a&mA@)Xy%H1Ij61uD~ID-ZQo_@2=$xiRSrhsZQE=FYqCo z<`CbJP2$&`u9!l`A>5xv#m!KGT6GJ)fF}YdThSuNil~PKzJb-@Gzg!D$HxD02hf%; zz;8Q_gCA?qtgT@K&V5qLi{^m$$j;FN>IM5yAw4DClma2;?7vz(fs(K}G6(<@gGd6> zipJt8AA8mBf>zu)$Lp!Osas@$T2ST~&l&-6&ITz@!!NqizUMaNl4bK*LuwVojA_2C z%AI~g2JeV#{RFUte5TOppq-jV3IAN01}=l3!eMU$6zf8#y48F(=P3=%`_z1uQi@~i zH$Qqhg+?7&^)jr>5AlBZ4bZH^0+4NM+SZ?B?AkS%skPT!&1w^ITBClar&N({l()bn ztYEEXsGVA_ZQfcMG*Aw!{ddTdgDsDb6Z$zTRgR<#UH-4Og*CY|aA=ZZE^0zZtA^|_ zYFuQmHq{^7kwd+lZ<~hD=5q1o^5;s&jHoS?&@JwRG|@op&5902YN{*DJ!uFisl5&_ zmR^%`iqVqNJ2?7% z=<*#Kf4adj%1!@EQ+`pGd!@?hP~~ETHldAM(H-X@?EOp@r5ky*GH{ zw1xJVA%oinj-ku7X>q^<8(y{Wp(^>_LzL>6pbW)mxxcQR=LSI^BoGWN6-zJG30ep5 z0sxblpA}@b4NL219mF7cntI-4s3UFSk1v5isjFxCD0B%4k8xU0hi2!U-LjL)QTx`Y z5uV-5KDKRo+2>C@=RR|2+v|Afza|XHp8Bl$04Iv4c^Y;T?K#rE2IRy6)8=?~@a)s; z$b6>d-k>iVP|)U86*od`R_b(c0PWX&mx@}%Rt6syT7W1l9p2{#c}ta~VRGR;)G$IT zm2HJH9#jhxyhGq#DRVjM?DN|N-f$H1I4pIuQ(Cm>*eSQZHN;9BHQ%AeCsvRWimGUP zf5bulcYE4amR)}6L^^=lUP7QbYAg#Fv76*S`WSzt)t!2bFxgr+D<;e@i*)LOYK&4v z*xtdSbn0T`B~hPd=e9N>>+8>)U? zdRh-YCjMu7bpdXt#u1shImvnkTTMMBwFgsj^F>CgE9sUxuPL`k=ar=j>U`O9h?j?f zOK^|}a*w#+fQRdFWiijTy}e{V8`bq61+#9sNWQmw7xiRf03mw?gRObje9i3it6|T| z%Y+Z$h%tT#MmwrkY&swYT+y;Ag3d~rHf=};`%1I}CPnAgRV|^T69UH^eR5NVykVzy zdjj@)fh;Z2+`mM7$phAszT!ks;s}20h*`D!0aq`;D)uig+T4O4$f9*(%%&1N(53Pb!FQ#VJ={?i33^q zqDH;&_VWJ#y?N>H%1UX!tMI`P2+u9QHpA?Ca{HQE&*A8HJM{;3UfS;J#hT|#JKy)seSlJ=l^DU$bhHTql`74@ zBo!OtUVKooTBzx(_`}H?JnRlN#Tdk0R>J|)H<=eSs}|8y*OSPziCm;?+IMwbK74n^ zqUP2SLVskiMltXNwaiUqrdfR3k;tt>hg)zL0swHwJpKasm7!1~|8f%uftu4}SWHyn zAYv6YpT^Q=f^q$SWP-w30o8ovok2**DDiUCbi8iR5wxC@sk+ew#D!F1{@p@Q8vVUo zI6`J7ErLsUZcR;e$~gz*w6!-l=88A$y6Is#re@>LZKeTrAS{MulWMRQTE5SH;wFf0iEczWRANFa|)K zLd~2pC<*}I_z0LzBLI!WXJtbRzbjKe#dUhh zsTt}j?7Mo18AIjDQKC4DZs!$$Uw8F-d1%StB*h)A>1bN|N^fOfvz52dzIbNV8k0K6 zh0~q;3IefUL-SfjDpyL^tr2>L+8v5DK?7alY(+Amy!fhF$_VvEbZ7kcseLW0_lOB@ zFquy(Lozc=4V~7m1++&;^a9=*peS^Rc|WRl|K$3lW5B(?@u&`KpjrT~d<;pD zE%G_k@LwjG+&)fdkC*0`_NsotOcB*VId01BP$`cLU)bBtoE1jcVbaCUK5{<*pxv>T%@UzyV|n#`Y-A=hOG1lRk`-M8g{C!K-ocKRt;#lAS+f~H<;}2G6;!I{{j}R zVV6TBraQ|Uh;Hs_6ENK_m7M+tTsL%Hf$`AOFq4xGxAps5bZVhK?VsC zsYLDiR6jH{+1$X1PYe#2Jzc8NwCUN7Pd8?f?Wa`{aqec%}w?b{vOKIkop4ewFU<%yf1O+}K_X z_>=}Dv3uF0LF)ah_eaDa{6Zq`i%I=!+W%L`Z|mv!FhDFDy5PKpA#SNjZBK`M9MjJ# zukRwct5yJ}KXMfT=mTSdwBQGoV+B53pH4_Ut~?s5mEYkV)N!bzZ#_tBp~oCVi!zgE zXD57XZ_CNbT4~Lb=>?jqLK66pscw4`4b)5pJis_*fY<4 zufNSy*k8OP6y7dvaC`YK|6UQJr@$ApP*yNr2ZHTedc(Z(m(89x0Q;X(C6!l%&^}uQ zC9B7|5TV2dWdi#fVo?$KsFe4DOT(J(BEV5|xYk@cqk9tKd6j0&Q$5#IDr8gFE1k1@ zXRGa=kC(YWVP61{w4r)9Jp%)u+5X~zmLm95cnLaGg4;169xGI_?%kT773fMWPvDIq zGsD-DE_`L%*gff^VAcxM4?HqyqeOL5@f^uPl0msW0S5MUhbuI&-9bmFd0xLO3CXr{s8<73!^eR)>bxku+<*pS8-Wq` zUt)czjpdEMU?vwPden&(pYmW%#1UYA?DN5VoHpj`4|$_KIC*Np&&bMkP3rw%+%)$bkl zZ|5GmFop&T^IIKYABSpQUqZZPyaqqwgV$(Tk}J#msEAyim=CX?{0&})I(K+80QdMk z0JcD^Pvj;Yl5hQL@Seq$Rv$4OZ3WjS1MMhtSs*eXCUw_x)35Hr%|#v`T5rd~lF(iH zJ!uQ!whsO}ludkJ)9q!;|17c)aDGzdpzDTAY>)P{O<{myhST?K_nCH+UScVb#K_RD zcD0>gBgm#`>D-3LFsi)sLMJad9l+{r6&+*=A!F&zM{3U?q>Y?vT=3plw@u7a(|5Pl zeFvJq>-Gj!akR(p`TvD5jHxszPhF`~GnlADh&8)_H6^D`rGLQxK>}*PQZZY$3V_jD zcws~+C`4t;`(X9i)Lxo8B{PRMuJt{g%ib}_1qwA~UHk$GDIg%tcGfz=4npD5c?yjB zU3fty4jR!4bXSKsSE+L#I~zOK5_F(Nt=~onU{h$n^htNDsSyy8Ia3#FP*rL8jz*=b zh2*kAIb`b^U_b}gIP!)n`T`#1NwuyD7ovN(9v`?7UBv00N1uiV0!K=OP`*=NF$QP% zu{qQJz~?`dtsv;$zTCB@`*>ltV_auGz%)k;jec=>ZE?681`^|ZHHF_!akM~-2Nkx- z$hGXeM=$8cg4TQNz{0n2#N?IuUSLt~%qVZ^=tHsNOLwS5ne|V6hL!1gOd=#W<3T|# zB>;x1BypgjcQAj~+R~bBE_e1&TK1ZR@I5vo~sM)|b)9bDT*;XDDGF zC(Nvjoe4Y~9Y{hLXvUSw7jlZ)1_}3BDsVK=vD^+{N=F*3rb4mQFp0X3Siv}?Ko{iB z1cnkBK;@eahi%2woK!yt&JfOk3U87+m#)T`M?>3gLU8|l6F!K8D~KUiKX|vg^zocC z^&AFob*j!aKnCD1{%ZShAWF7=aQ@0C-rk&0;WDua5j7kp{X*~?XZ?}o1w3r{ALSX1 z&QYxth4N}t+Nf^E&ho5mV(_4{ERjFtr2>imN6L9J)b7+C2d{e#W%;g_D~(vX{+xo{ zDism0!;%h)Ub3D)4?_nXR++$rQRsM#5V={ZF5q;3{W5#ab&4{iiRxjunEduSMuERz zTbzU9QGM5fcm84{YqARI9=pyqlMm{ z*t!+&GK0-IOF5((mrvnjN&4hY@Q8WwfE05mUR8;pP6=htvJgq`kh^k$xD3S?@3;7g z$@`-pHRRbl4KtZ%QR4_0s^F)169Rr%4*Pu;cs*oE z1&aYklFqcxrq?Zf+8xjApZ2cdFC}2AAw8!Q5#|64s+Yuua-{em z&QjnFtEh8=O4Rsoq*8dgszcR3Fd`~da}jWww*63ZHPl+fso%GV&us7l+#PZZlu!VY zqf_H8Wd#gC|BnM+rjg1D3w|n0}!fZl@ z@>CQORMO=h%`9Wzx2bz?hRQ`ZIJ1geN7ibWYPVwE26!44$9@{Gj#j<`C=x=vwOOZ& zzD5I&(@pi~r3s+vFF1eSU35;?1%+h&kGbGslF9f$yOBpdM|iBFc-9>hi0IpuKZla7E+#}B_E zXmad#tN2r035uBIXU@wp@z>d$3?)Qy&5_vQq+4-W&wrl)L{#^#h9-9CUd2{rzjyWl zum%qYlzNAKHtFj6uCI7}; z>3H5ZM4DH+6oaUgdjeaQQQ587^0iV$lJTO>=VrIpdE?v1^f^S@$z!#=;Yrf9k1@Ek z-1z0Q{IXu1Q=VWv*D#+aRH!mLJa5cS504_*-LkMIx_(7G?jy$ZpR6` zU^ZU9vWK$^O7op1y4nZgPRbNWG*URi=Oy%^RE01gd93qL< zt^(jiw_GCiMXQZkePm;(k}-VK#Zc#7(A+7nv72O1Ne29c?bT370aj$lmZ7_+t zC@U&O0Y{Qd#XFwmZHLEz*HAo-MvQTQ$LavmPNfqBB$cTEjH^i5|HzY_`Ndh zO|R3QpffnsVndRb4UV=pFCjvyd1y;bwW#{oTGa=GOPWu0-LrQ%(X@%wRs$qPd+Gxqy z(B&UVnAPX-%YaigfD68_AF%$O>QMd_qDk3;NCJplL$aD%uRr@{Om2RgPRQ636TtsM zm)Y4swR~&*>bXqpVMpo8y)u2*Vy{zAh4wJ5-XZ_SmraOlDmO(12f&3!HJjdSy&ce! zp+e*x7`3z5gBc#rh5!?;W$gxxcf(;Ow3FA}+9WI`c zH)rurX_f>^B%!`jp`r5_B&}kK$awnLfh7#OqZLfUt5<%9NzU9^zcYu(2qx*9rDN9o9KguYP7JU@44 zK6ixscrxZ)6)`O?#^WN7Xe|8bEFZLA00mnh0rzo+Rd7#J_kZ}*WT4lWl)n)xj6R)>{4eTDR!E59%zKZ@LTk+eTYY@G<z5I=!j2(F4rEj zNRH_%H6DeNP7N9k>7`r9wdtZnX;>$dQnSx+vt2wdyNkzXKA}#9F&Zm9i zicZGW@~a+?x)wad|m&>St07y<5wfW$!Ujjmi)DF91Aw7;p|Kl}+20?*Gw z$14{LV*=v{9d`m9G&C|;nE^^f_r>%AF;YUMbtGyl2f0ApB#QXgLIP} zp%V@AN_?LOQv&SS6!0)BARx5BoWZcbWz4)R>tXo}XF{g~Z)q&CzjhhoD<^Mio=K^7 zJeS0K&>dwAXpte5`2-q|xq2mHf1AMH2~tD-ElVcfK^&O7kb3KT#>5KfJ}DA286w1; zQIia8lb~)|?e``Jg@FZn46*f>UIiGQTI)g_XR~ZhyoEcP=qCN-zZ>*v@QYDF=QOPO zP&rz)cQ3kmPOqaqHcXz{fxTJUF;K(Q?@B*hA~IL1sMUYq*&sqVh|4SLm&(MLn2kZD z^vE#dl@Ac>m!l4JfyeM+yCfZK>Lf!$;{^gxzA%Q6OK>dkS&zYoH<|5=`Jue;fuB@; z{JgObTd(FsJg5z_Sp0klHY392F$opj@p_5{QcBbIUT#cvtB#{$`lf&PD%?b~5*{r; zT5CRxU?q4a1(Qn+PLH+P31R0bz!9HuFJUR7c&O!3GRFQ??dO>wCc)^Tcw@vRSP0fN zKa^}SvzykYjgyp~aSb`BW_478zP7Qm zw{%~QatHn_p}a~d4{dxJQ%L;jl*wK@Xvh826zT$RXLHK^fV=`C(KbV)o}oj{?BwV8 z4&_q9KS!S>qPcy7EdgmR-Y}a?#+bj66v%iTCr6khE+|BDacyD7+;p?yN_<-rgs9qz4 zjebyN2IPhP0uyRxs0qiVyTn|lZc)6w#X1gFt@2DZ^QqRUg=0ANIczDpdVY=hIC^sF z80{l=McejmmsEdXhO4Ti=;v&Yg1GXTe!CF=E%UT#!IHe-H z$Z)4?>f+2ADpdH)fX|(-+?P&=w*bfs+s-!7k>_3xS_7LTb%BQG8xPyn;KY=~fY&Se zH6J%=;+OhUi7RX!zE4brH}~i6AJ&&OiU5b(T;ja*%a7o?zM^;RU{_ zc11$Z*WDrD6jkWtJq`xSUsAbW+EdowCPOuhey{a}nTBbo5PpUQiPw^*FsiFdU0!+Y z-+O`}S-9i}s|O7{WGD<8-A(QL(2O>N$+C=F>`&-esS@;tb=EB3#O&C4_Xv_&T8&k0 zIrJr6u1$9;F;AP+of^1P?H(X3ZFFhCJK(&%Q!ty};D2}OKW1|J?~lXApw4rjwp4OIs=x>ZA~!Pp#nt8Fiy zzJnVvbJ~iM8*mV@vp}J7B1L>V=oFvtTC(?Sc%>Q@)Krp=w$MEs*hQ-9Ad5q8Gi}oK zyPc~7zUB4P1DfHftDi0-7|@Qx#^DO76%bq~RQig%?n3px7gY`@h4X-7{pq$1Lk4B? z+fev$q}GDj@KYcV_@fyHKbZc6)Zz7Bot906xtm1|C~%s*G{$XICo$DCB;xq zgMorLB$|pGj*f?OftY-n2OjVtre|~Gp!iYY?JmW5$unFALHN6*9EQI z3>XpG{s0mlBgKK$5b+oqJtsRCvBo3U)Fh-WJ|&MEw2`F~_r0+rP#@U(_~Rn3cXPqe z{@d>ut_r+S`lhxW!gcZiK0f6PF~^$U&M#^=3r)9vjH^^;y0jww`RnMuzdA@aLcqgz z(cT>i9SxJyBgEXljgV_Gr*`o2Iw9^he@?Ykw|Dm3)jxshUxPZV8}MsAT%;{!Wbg^4 z5_L^*=bB8lxne-7CdKnqNP)H{YGRWA&6_)&NwwGa-WF#5 zR6yS+ElT8R&o;){ltyJ_sp1~8Qpc9xk%5o1Eg;Z;HNPY8eBvWDac5^%;q1Lo5kGM> zW|StcsEx6SB!aXmpygSEuDFW^Y9BBLiN7lar z%){-J&;KS}S7UlHXY9CJ2xv*CErGU(+NH-)QpeiUC>5#Gdd~4y0=M?0USc~qsrO5H zWH<{kZA!s%2NPZmdNb`CD-j{cTl*S+b5?}1flr=vJ@{Ki9#$_99GLjz!eV&3is{}D2;f_Yg)u>A5o+@us(N*|H70GQf!s~H8o?0M%a(vQ!DkM znBVn}petcPAj?iEPim?XeSF`jxAL;neyu&^(Bm`N z$oDu1sEA2<+SYYY-E3bk(YhIeUmurw_nq0WI1DRa+8NtJ)5$$2uK7XD$|c>hDRh|_ z8gRdC2yZ}zzNn5g+v=8OsFy*Oax@Uk!Ie6{Tt^BA#Fu`vM>D69e8`HHhY)he-LaL7 zVVmQ@2_@tdZJy~4nVk9yC&u);&O)w&a{3 z+F)))#8X3Bh$sVyv>+TBqejpwGCJmif7I|b%0T8S1JZb%kf*@*jp{hbAI6vP6XbBr zuq&cZS?xRyqvq$(6Iigiqy_LSQYl`RsWum|b7reHvhPq75)>+>cJTM2g9|&|4G^-@ z?wONxZjKKP<(F1%Yzm9K)`s1ck9YNz!0;^9S+wsOK9fB17Sz&lzvCQPf>83>Ne6O`n zuJ$J!q#nuw2?RbHEdJ4J-q&-7I9A7;Dw)m(n>=e7xBCJvfLy~ zcOSQ2Z>@y0X5E@UM>|2ZXag(M+L6WJsLluovj!nd6%d`&JEFA?@>{guJY5-8!t>Ga zf>#>{{CGIc?7tuuR&@tgoZ*ac&=&Hkr~i2wR6dPiqJS3p2%KSbk_c%9ZTUWBeGJOi z3bM8^%J~YY8l+FxY!Gaggy+w6WG~#?HoR=!ff8l25r_!Kymj zZFxBeibF1g3!EQ}uX__CcW+e}**o=?OjP(CFn&U?v08_fNnb_%@%%f4QyKA&rd2Qgl~b%!$#MO^Z#r9T z{dr7@E`SB@Z5b++P_M;rAtQAW*g*IysDB3&N%fQJxl0(lLQ8tkV3PKr&Dnqq47^E- zI}4M8r_)4U!0Dw*IYr0z==9$zDn59d|9p_*lGyURa#R zgZ1IPFEWXrPhP?ZS5*i2;;cA+FkD&^Q)6va${!P(7WmgY1keOT-R6m!j@C~hAU)4h zWqvHtE&Sj?NWngPF0jeTT&b;9-E^QEQs?Fu=BbC`3H2!UK?}NH^}S(?foW|HAnRtu zdH5c}b%vo%>>={WVSW|E94K>LxZ1i5-nMuOJ|}U-fNWH94>R6C)KJ72NUE70+b8u| zl`n!P&Dda?;}B+;6|*E-*?b-;!=Ta;ww}ZJLojPHAJy;a5O17n=2|7co7n~h)#(4P zPhAm_MYflWu?~HqV*s#bv}3Cr=VBWW5xc*v3|VkKPAT5yc~ikKcG7L18LmLYsFQdC z;9W{HWKeIp{=-ZG%5f<6bK8!t#Qz>)jzqs3TG7bE+~5gWr{+Pb?#t^yF3pTiC;60T zF(H!jvHd}7+4+;5?{Z`QIbC?+AOcqPzbm`Wwj%NaIMM>s6;A`HF1N3Ps9siF@UwcBbq5RQ#0o=)kn zyy>pKo&~72O`mP&3tQ7sCUMoDR zWZ2YT?{k3Sk-d#A?*|@Yr7n5{Q%`|to}d6g57kKHFVqYcR!zas9r&m~ju6&cN4e4_ zY$&-nd%@p-SHA7GD3|EzcB#C^Jn;3awesS!( z+VfV@D!6N3!K7Tci^hiJ zEp^EdKnkulncq5H8#$+-^81(nwe58L{TKAmGJ`HIKj zD-858q!xY?W-3gz&^$nhc1$igLH0pP0`9;~5PE)0x-`tp^2S7T4RRcU1$ygAeUBjc z>!?Q=jrh#JPBoe$GE84dBIx~tYV_)Z2tpaKRpM0jE76#bO5`mV2ehY-w_->$82;01^%K{Dw2!9pap1PD2qh88exuut{F~EU5ZG97l6~D`EovBjA0IfT$iOQ=6Dsuv1wC22u^e`*@{R=V;P`V2J z(V4Cr5{(Xhy$$MZ0R%8Q&>Kn`+>l-(p8MDplaMYuTP^v=G(bSfGbe=1*7iQf*T-TJ z3MMf?mD~r5EJB7hm66`x^dcuVROKN|_P$1-?=jUft%703!1C?C4XvOpe`3v}ckQas!A6H?6(fY=(2#vXQK zpF_De7)Uys)=rgVvrB6$H6{#Z^Cp@2#kVg09WE%-`Bt^-BlfA<14=8jE-<70EHCPQ z3R>gi37t3EoM{2DL3_~dEJiFBlBZ&z`msG^h+V$3DTbPb;(|$D?CL7XHt_n*M`H{ zeIp(`6#}IXW1oW(V}GN2fZVQDoxPs}^uvz^e2(CAA>~4K+ac7u=%s<-RoHLxHuS#< z&DmkB+6$d2q&t$Cmyxlncf)H)tJZl5lYuAUN$T>agsFQ-O&g^q4}4%_)6jn-LPPEF zRwuJ%v>Qmn@0Yg_!r|rqf|{IHv-MYS-Tx?b47#p5#cdQHYBL-j*_HlS*n_UO!{>31 z$^Atoj@vJI&x1;XWlzUjELGQa8R(bkzWO=8WKznO?LE&_rbXU(UKE|mUi_B@-xrM` z@XFR@1RdsWpF;$xoLzlh!&MEGYb6R_qSEQ^E>vP3V^Bc%Z7O{GJEvY&09MzK6;FL@ zVwdItq4dQc+1OuT#o^V>I>}C>$C95>tSzWuso>L#=1Y{{QFgy%r?Pkt{K2afQ1_L}rPeS?==xe~AxV zlC#}anGr6ofChLh`3=pQhsmzW2)_=P9f4~wlg>ia!W2np8rV*nhDWo1=foJ~^HJb6 ztbxDy-Xop)29kI`(H-e13=- zoHQ=4N!YZUa>;JTmuL8>x+ocIdi{T$%Bs>1yle*5u+b4i17-rSD)}SZq1A(8tz_^Q z%y5m6_ewCGEVX3+^~!;oCIf^|t^;HWgGU7)0CJn*zVl?EANuSgs1j*-?kU3YEIbGX zv+NKor{tgI7d=ROW@h0G(|AqzX_&y1>Ie(;e1XsvuZ4oOuZ5cPBc*vl) zJya}i($bi(g!ojDu6~0Ho0#BickzD3u5F%r2F3n~C3KLs_1WlR12oTEX_{=3nydtX z^l5XXdlm{GGE2TQceQiiU~4EG#i37Pqxa6#GXydju`djm+QNo$YPF`JTpcSA?j5vL z<|$D@YRvHC2p>r$a=C~G|ETF+OYR&WmMx@c@7t@YvRLAl$^+kH^|W zl@9|N)h*Ji3|4fQL0L)bJGME|LGAU(Hm2p*5Eml_)HZbpVsKl*1hMFSG@w!9Uqi!j zP)q+nRV!su;c|qLf1RCZ+v&iA>koqT9P9X@*LA1rWt+X;ioWKdu6lo8k0xj=qwM_# zn@tT}hdtW>d@7T+#UN|P?t4r8W$Q8Hw|8Ne6V%JgA3f1a3)S?`^hzv92Sxsa`a-8A zxuPb+#tCgO`7x+K<;83lAQ}!`|7^&+I2gxA0u$l6_|(6su2)CsF3@9QqQU1{HU}1A zVdf#ldD0Ot13aEkJTMpj?30&f0M_sGq72{i!AdHO>PY@XP<*bxjTCa|J`K1370boL z{O{-E_v2X}A z*fdjYzFl75UsglOu4eLdCB48`4e=@PflMx)fAqdE{iUcwm9j~|8a*@ejw;UC12ReM zZJ}|I(9p5;Njtgh0^tfu=vYU-AZ8Su>q3fKq0%gXht=OR+15DKkurTI7v2Y)lAJH zY!$*-IG<^312QlT>g}G0X%bw!Hw_<1lVuaktewst7Axr0=}9j|r*WpO&k?`lQv9M@ z4@l5=n}DhQg(r)J=0dmONB3fSHK?D5qdq%~7ZbM~bgVOjsj*a>ff!?7^+WL2O82we z%QCvFs|~eW00YjK!Q@(mieLTSJ7aI9FEU>sxY&Dqaey;JB-7}C3s~RTKB`*sd&vQ+ zgYGW;y0*0!sj0X~dgKLsjpYU+R)M>lhhzftp2kd2v*1igus1TQ$)TuUzSxUX{T zdB3cJdM>fCvy~d)T@B2drtaC)yzHcn;luS`?ODDV8^tJTN@eHQ;u?D)3E<-c8-Gj1 z9IVTl*KBskkFyz7)0l5#n))kD0)jOsW35X`!+onOV`9Y)KOn8R(e;CsGn`qR(jEi| z;K(<%opAa4lhcTS3API9$zd&u$qh2%H9dXZA#r;{kgC!MmL^=?Kfc^uLldB(eQD3`FE!d5L zsH3_yKxu7}MLAb~R=S60+ga2|+{V4ii@<@6LjbpJjVr?2OBRD%gX+r9W{z-Fe;@V{19mL!}#%eDxTN=q#;(xL4 zzq@p64FXEOpW^KX5@TxT4$Aa&d>%D!a*?d`?gnYnG2C{ETiA^{ZJ`6vCWO$}?GLK7 zbK!MH^8#!_SRO1!D|QpEOx~cqYLVCClbX6{6E97=b9;_(zVgIg#)GKAM!S5Z5oomD z<*MMjHV%cVe>KkqpfEs1BpyMy=eTJYCRmUPZgAiI{oBkGa2D(fljS+1 zA=}jW7b(QVIrCJEnmiOjJw?(j3)pj*Tk2HaIFdZs%!-8^2Vt}1bkgO~qnW#6y<1k@ z+H+ZM+3szR21>np>h58uG_w2~yq{IjZ_GLTtx!Q)th8J4fc7Hu4RS|th$~*s#jNnN zTHWAHA+^>Pf^nOmIWkX(n?)QOL~pMLjWu5+?6!u~to`vk3@BgcV?E-pb}3+zNVhb` zNQt@%OPE2{Z@>cBwc|7qA~}h)S9^xwhZcdlO}}1QHf%cb^n}-UfF%D~$1|0xICOIe zqtTF>DI>e=@%+`8IES6{S_b^J%BDnnv73n{PRiVCP<}l;zV*R!6c6eQ0+3|sg!JTr zW*$Q9J|H`S1Z+b=!VPHmr&(y)-R7X@Ces*63*@Tqo4j}KzmZY+KF_}&lY=uGK2S5h znq8L=9Al^>FyE=+?kV~y&xc21T$1e}d3vcLN2~M3viy~T#SChuqnmYa_*xm^FU-F3 zY5VurHzKhowR_oju=v>iB|kT|QtuK?lb083lT3@s2%#uXn)=o&a+$%R2t@~`54X2W?Ed_d2XSmeaw~uVM0+W<-7zTe{g^->J5PA#pH|TC_Est$DSUEE%Hz>i$AHcgXn8jP=icpSQ{rpr#rzg z5?G@@Ly^<#0-VjZ)K^0E&;XipTd>2UsiBprC)A7(7ZngW$+TT?QSmh_)XBS`?yc?d zesKA1clfl?{G)O2sLIVNH-v0%l}>;(c0;d#;hR@r4i8|*V+c#5vWy2k*||_rWouMO zO$|Dlu*R}J1nH!h7Z;O+GMZsV4b%54-8)miW+HH^ zdbI(8@LXcaPwEhZ^@moVcd$^dGsL{CnyM!XTnhYvXvpH$K%p6KSIrN#h%N4C5DDkfg`Dx=c7bE7dp%0DXv)#IB0i#Y{S5C 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%0A1Drf7|`u1@Uw&fvV% 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 z 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