From 8481f5a8c93813714881803e54d285fc0aaf79a5 Mon Sep 17 00:00:00 2001 From: Dan Barr Date: Tue, 15 Jul 2025 18:40:23 -0400 Subject: [PATCH 1/2] Add ToolHive UI documentation and related updates Added documentation for the ToolHive UI, including a quickstart tutorial and how-to guides. Improved the overall structure and navigation of the documentation site: - Added an FAQ page - Moved the References section pages to more relevant locations - Switch to explicit sidebar config - Added a custom hierarchical CLI reference sidebar function - Replaced the static navbar link with a drop-down menu Other changes: - Added a PR template for the repo --- .github/pull_request_template.md | 24 ++ .markdownlint-cli2.jsonc | 6 +- .prettierignore | 3 + docs/theme-preview.mdx | 2 +- .../_partials/_client-config-intro.mdx | 17 ++ docs/toolhive/concepts/_category_.yaml | 2 - docs/toolhive/concepts/mcp-primer.md | 1 - docs/toolhive/concepts/registry-criteria.md | 3 +- docs/toolhive/faq.md | 185 ++++++++++++++ docs/toolhive/guides-cli/_category_.yaml | 5 - docs/toolhive/guides-cli/api-server.md | 3 +- ...figuration.md => client-configuration.mdx} | 35 +-- .../guides-cli/custom-permissions.mdx | 3 +- docs/toolhive/guides-cli/index.mdx | 31 +++ docs/toolhive/guides-cli/install.mdx | 21 +- .../toolhive/guides-cli/manage-mcp-servers.md | 1 - docs/toolhive/guides-cli/registry.md | 3 +- docs/toolhive/guides-cli/run-mcp-servers.mdx | 13 +- .../guides-cli/secrets-management.mdx | 1 - docs/toolhive/guides-k8s/_category_.yaml | 5 - .../guides-k8s/deploy-operator-helm.md | 25 +- docs/toolhive/guides-k8s/index.mdx | 29 +++ docs/toolhive/guides-k8s/intro.md | 17 +- docs/toolhive/guides-k8s/run-mcp-k8s.md | 1 - .../guides-ui/client-configuration.mdx | 65 +++++ docs/toolhive/guides-ui/index.mdx | 48 ++++ docs/toolhive/guides-ui/install.mdx | 234 ++++++++++++++++++ docs/toolhive/guides-ui/network-isolation.mdx | 74 ++++++ docs/toolhive/guides-ui/run-mcp-servers.md | 228 +++++++++++++++++ docs/toolhive/guides-ui/secrets-management.md | 63 +++++ docs/toolhive/index.mdx | 108 +++++--- docs/toolhive/reference/_category_.yaml | 3 - docs/toolhive/reference/api.mdx | 1 - docs/toolhive/reference/cli/_category_.yml | 6 - .../reference/client-compatibility.mdx | 11 +- docs/toolhive/reference/crd-spec.mdx | 2 +- docs/toolhive/tutorials/_category_.yaml | 3 - .../{quickstart.mdx => quickstart-cli.mdx} | 25 +- ...olhive-operator.mdx => quickstart-k8s.mdx} | 3 +- docs/toolhive/tutorials/quickstart-ui.mdx | 168 +++++++++++++ docusaurus.config.ts | 34 ++- eslint.config.mjs | 10 + scripts/update-toolhive-reference.sh | 2 + sidebars.ts | 113 ++++++++- src/components/ProductCard/index.tsx | 3 + src/components/ProductCard/styles.module.css | 5 + src/components/ProductGrid/index.tsx | 3 + src/components/ProductGrid/styles.module.css | 5 + src/css/custom.css | 5 + src/css/footer.css | 5 + src/pages/index.module.css | 5 + src/pages/index.tsx | 6 +- src/redocly/redocly-codegate.yaml | 13 - src/theme/NotFound/Content/index.tsx | 3 + src/theme/NotFound/index.tsx | 3 + src/utils/buildHierarchicalSidebar.ts | 186 ++++++++++++++ static/img/toolhive-icon-honey.svg | 60 +++++ .../img/toolhive/network-isolation-dark.webp | Bin 0 -> 81468 bytes .../img/toolhive/network-isolation-light.webp | Bin 0 -> 83974 bytes static/img/toolhive/toolhive-diagram-dark.svg | 1 + .../img/toolhive/toolhive-diagram-light.svg | 1 + .../toolhive/toolhive-ui-screenshot-dark.webp | Bin 0 -> 84274 bytes .../toolhive-ui-screenshot-light.webp | Bin 0 -> 84868 bytes vercel.json | 13 +- 64 files changed, 1784 insertions(+), 170 deletions(-) create mode 100644 .github/pull_request_template.md create mode 100644 docs/toolhive/_partials/_client-config-intro.mdx delete mode 100644 docs/toolhive/concepts/_category_.yaml create mode 100644 docs/toolhive/faq.md delete mode 100644 docs/toolhive/guides-cli/_category_.yaml rename docs/toolhive/guides-cli/{client-configuration.md => client-configuration.mdx} (84%) create mode 100644 docs/toolhive/guides-cli/index.mdx delete mode 100644 docs/toolhive/guides-k8s/_category_.yaml create mode 100644 docs/toolhive/guides-k8s/index.mdx create mode 100644 docs/toolhive/guides-ui/client-configuration.mdx create mode 100644 docs/toolhive/guides-ui/index.mdx create mode 100644 docs/toolhive/guides-ui/install.mdx create mode 100644 docs/toolhive/guides-ui/network-isolation.mdx create mode 100644 docs/toolhive/guides-ui/run-mcp-servers.md create mode 100644 docs/toolhive/guides-ui/secrets-management.md delete mode 100644 docs/toolhive/reference/_category_.yaml delete mode 100644 docs/toolhive/reference/cli/_category_.yml delete mode 100644 docs/toolhive/tutorials/_category_.yaml rename docs/toolhive/tutorials/{quickstart.mdx => quickstart-cli.mdx} (94%) rename docs/toolhive/tutorials/{toolhive-operator.mdx => quickstart-k8s.mdx} (99%) create mode 100644 docs/toolhive/tutorials/quickstart-ui.mdx delete mode 100644 src/redocly/redocly-codegate.yaml create mode 100644 src/utils/buildHierarchicalSidebar.ts create mode 100644 static/img/toolhive-icon-honey.svg create mode 100644 static/img/toolhive/network-isolation-dark.webp create mode 100644 static/img/toolhive/network-isolation-light.webp create mode 100644 static/img/toolhive/toolhive-diagram-dark.svg create mode 100644 static/img/toolhive/toolhive-diagram-light.svg create mode 100644 static/img/toolhive/toolhive-ui-screenshot-dark.webp create mode 100644 static/img/toolhive/toolhive-ui-screenshot-light.webp diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 00000000..37319125 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,24 @@ +### Description + + +### Related issues/PRs + + + +### Screenshots + + +### Merge checklist + + +#### Content + +- [ ] New pages include a frontmatter section with title and description at a minimum +- [ ] Sidebar navigation (`sidebars.ts`) updated for added, deleted, reordered, or renamed files +- [ ] Redirects added to `vercel.json` for moved, renamed, or deleted pages (i.e., if the URL slug changed) + - Rationale: 404's are the enemy! You can test these in the Vercel preview build (push your branch or run `vercel`) + +#### Reviews + +- [ ] Content has been reviewed for technical accuracy +- [ ] Content has been reviewed for spelling, grammar, and [style](STYLE_GUIDE.md) diff --git a/.markdownlint-cli2.jsonc b/.markdownlint-cli2.jsonc index b2033ea4..1dcd1b13 100644 --- a/.markdownlint-cli2.jsonc +++ b/.markdownlint-cli2.jsonc @@ -1,5 +1,9 @@ { "gitignore": true, "globs": ["**/*.md"], - "ignores": ["docs/toolhive/reference/cli/", "static/api-specs/*.md"], + "ignores": [ + "docs/toolhive/reference/cli/", + "static/api-specs/*.md", + ".github/pull_request_template.md", + ], } diff --git a/.prettierignore b/.prettierignore index 47d07b06..e1c20dd2 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,3 +1,6 @@ # Ignore autogenerated files docs/toolhive/reference/cli/**/*.md static/api-specs/ + +# Ignore templates +.github/pull_request_template.md diff --git a/docs/theme-preview.mdx b/docs/theme-preview.mdx index 4a239603..41f8db65 100644 --- a/docs/theme-preview.mdx +++ b/docs/theme-preview.mdx @@ -21,7 +21,7 @@ doesn't participate in a sidebar, navigate to a different page to see them. Another element that can't be easily reproduced here is the DocCardList component, but you can see it in action on the -[ToolHive CLI guides index page](./toolhive/guides-cli). +[ToolHive CLI guides index page](./toolhive/guides-cli/index.mdx). ## Level 2 heading diff --git a/docs/toolhive/_partials/_client-config-intro.mdx b/docs/toolhive/_partials/_client-config-intro.mdx new file mode 100644 index 00000000..0d0eeefb --- /dev/null +++ b/docs/toolhive/_partials/_client-config-intro.mdx @@ -0,0 +1,17 @@ +ToolHive automatically configures supported AI clients to work with MCP servers. +This guide shows you how to set up and manage client configurations. + +## Understanding client configuration + +Before an AI application can use ToolHive MCP servers, it needs to know where to +find them. You can configure clients in two ways: + +1. **{props.term} a supported client**: {props.term} your client with ToolHive + so it automatically manages and updates the client's configuration as you + start, stop, and remove MCP servers. +2. **Manual configuration**: For clients that ToolHive doesn't directly support, + manually configure them to connect to ToolHive-managed MCP servers using the + SSE or Streamable HTTP protocol. + +For a complete list of supported clients and compatibility details, see the +[Client compatibility reference](../reference/client-compatibility.mdx). diff --git a/docs/toolhive/concepts/_category_.yaml b/docs/toolhive/concepts/_category_.yaml deleted file mode 100644 index 6fb772e2..00000000 --- a/docs/toolhive/concepts/_category_.yaml +++ /dev/null @@ -1,2 +0,0 @@ -label: 'Concepts' -position: 40 diff --git a/docs/toolhive/concepts/mcp-primer.md b/docs/toolhive/concepts/mcp-primer.md index 9be9bf23..2d914040 100644 --- a/docs/toolhive/concepts/mcp-primer.md +++ b/docs/toolhive/concepts/mcp-primer.md @@ -4,7 +4,6 @@ sidebar_label: MCP primer description: A brief introduction to the Model Context Protocol (MCP) and its benefits for developers. -sidebar_position: 5 --- **TL;DR:** MCP offers a pragmatic, language‑friendly bridge between diff --git a/docs/toolhive/concepts/registry-criteria.md b/docs/toolhive/concepts/registry-criteria.md index 071f7522..4fd09f2b 100644 --- a/docs/toolhive/concepts/registry-criteria.md +++ b/docs/toolhive/concepts/registry-criteria.md @@ -1,10 +1,9 @@ --- title: 'Registry criteria' description: Criteria for adding MCP servers to the ToolHive registry -sidebar_position: 50 --- -The ToolHive registry maintains a curated list of MCP servers that meet specific +The ToolHive registry is a curated list of MCP servers that meet specific criteria. We aim to establish a curated, community-auditable list of high-quality MCP servers through clear, observable, and objective criteria. Here are the criteria for adding an MCP server to the ToolHive registry: diff --git a/docs/toolhive/faq.md b/docs/toolhive/faq.md new file mode 100644 index 00000000..abf8963c --- /dev/null +++ b/docs/toolhive/faq.md @@ -0,0 +1,185 @@ +--- +title: Frequently asked questions +sidebar_label: FAQ +description: Common questions about ToolHive. +--- + +## General questions + +### What is ToolHive? + +ToolHive is an open source platform that simplifies the deployment and +management of Model Context Protocol (MCP) servers. It runs MCP servers in +secure, isolated containers and provides tools to manage them easily. You can +run ToolHive as a graphical desktop app, command-line tool, or Kubernetes +operator. + +### What is the Model Context Protocol (MCP)? + +MCP is a protocol that allows AI applications to connect to external data +sources and tools. It provides a standardized way for AI models to access +real-world context like APIs, source code repositories, databases, and other +systems. Think of it as a bridge between AI models and the external systems +where your data and applications live. + +### Do I need to know how to code to use ToolHive? + +No. ToolHive includes a graphical interface that doesn't require coding +knowledge. However, some MCP servers may require configuration or secrets, such +as API keys, that you'll need to set up. The ToolHive CLI is more technical but +comes with comprehensive documentation. + +### Is ToolHive free to use? + +Yes, ToolHive is open source (Apache 2.0 licensed) and free to use. You can find +the source code on GitHub and use it without any licensing fees. + +## Using MCP servers + +### How do I find available MCP servers? + +ToolHive includes a curated registry of verified MCP servers. You can browse +them from the **Registry** tab in the UI or by running `thv registry list` in +the CLI. + +### What MCP servers are available? + +The registry includes servers for common use cases, such as retrieving content +from the web using the +[GoFetch MCP server](https://github.com/StacklokLabs/gofetch), and for popular +services and platforms like: + +- **Atlassian** – Access Jira and Confluence +- **AWS Documentation** – Query AWS service documentation +- **GitHub** – Access repositories, issues, and pull requests +- **Kubernetes** – Interact with Kubernetes clusters via the + [MKP MCP server](https://github.com/StacklokLabs/mkp) +- **MongoDB**, **PostgreSQL**, **Redis** – Connect to databases +- **Notion** – Connect to Notion workspaces +- And many more + +### Can I run MCP servers that aren't in the registry? + +Yes. You can run any MCP server from a container image or source package, even +if it's not in the registry. Just provide the image name or package details when +starting the server using the CLI or UI. See the custom MCP server section in +the [UI guide](./guides-ui/run-mcp-servers.md#install-a-custom-mcp-server) and +[CLI guide](./guides-cli/run-mcp-servers.mdx#run-a-custom-mcp-server) for more +details. + +The Kubernetes operator also supports custom MCP servers that are packaged as +container images. + +:::tip + +You can use the ToolHive CLI to run a custom MCP server from a source package +once, then export the Docker image for import into your container registry or +Kubernetes cluster to use it with the operator. + +::: + +## Security and permissions + +### Is it safe to run MCP servers? + +ToolHive runs MCP servers in isolated containers with minimal default +permissions. Each server runs in its own container with restricted access to +your system and network. + +:::tip + +For extra security, review the permission profiles and network isolation options +before running new or untrusted MCP servers. + +::: + +### How does ToolHive handle secrets like API keys? + +ToolHive provides secure secrets management: + +- Secrets are encrypted and stored securely on your system +- They're passed to MCP servers as environment variables +- Secrets never appear in plaintext in configuration files +- Integration with 1Password is also supported + +### Can I control what an MCP server can access? + +Yes. ToolHive uses permission profiles to control: + +- **File system access** – Which directories the server can read or write +- **Network access** – Which hosts and ports the server can connect to + +You can use built-in profiles or create custom ones for specific security +requirements. + +### What's network isolation and when should I use it? + +Network isolation creates a secure network architecture that filters all +outbound connections from MCP servers. Use the `--isolate-network` flag when +running servers that need strict network controls, especially in enterprise +environments. + +## Enterprise and advanced usage + +### Can I use ToolHive in my company? + +Yes. ToolHive is designed for both individual developers and enterprise teams. +The Kubernetes Operator provides centralized management, security controls, and +integration with existing infrastructure for enterprise deployments. + +### How do I deploy ToolHive in Kubernetes? + +Use the ToolHive Kubernetes Operator to deploy and manage MCP servers as +Kubernetes resources. See the [Kubernetes guides](./guides-k8s/index.mdx) for +detailed instructions. The Kubernetes operator is currently experimental. + +### Can I run my own custom MCP servers? + +Yes. You can run custom MCP servers from Docker images or source packages. +ToolHive supports: + +- Docker images from public or private registries +- Source packages from package managers like npm, PyPI, or Go modules + +### How do I get my MCP server added to the ToolHive registry? + +The ToolHive registry has specific +[inclusion criteria](./concepts/registry-criteria.md), such as being open +source, following good security practices, and maintaining code quality. Review +the criteria and +[submit your server for consideration](https://github.com/stacklok/toolhive/issues/new?template=add-an-mcp-server.md). + +### Can I use ToolHive behind a corporate firewall? + +Yes. ToolHive supports corporate environments with: + +- Custom CA certificate configuration for TLS inspection +- Network isolation and permission profiles +- Integration with secret management systems like 1Password + +## Getting help + +### Where can I get help if I'm stuck? + +- **Documentation** – Check the comprehensive guides and reference documentation +- **GitHub Issues** – Report bugs or request features on the + [ToolHive GitHub repository](https://github.com/stacklok/toolhive/issues) +- **Discord Community** – Join the + [Stacklok Discord](https://discord.gg/stacklok) for community support +- **Troubleshooting sections** – Each guide includes troubleshooting tips for + common issues + +### How do I report a bug or request a feature? + +Open an issue in the appropriate GitHub repository: + +- [**ToolHive UI**](https://github.com/stacklok/toolhive-studio/issues) – For + issues specific to the graphical desktop app +- [**ToolHive CLI & Kubernetes**](https://github.com/stacklok/toolhive/issues) – + For issues related to the CLI tool or Kubernetes operator + +### Is there a community I can join? + +Yes! Join the [Stacklok Discord community](https://discord.gg/stacklok) to +connect with other ToolHive users, ask questions, and share your experiences. +There's a dedicated `#toolhive-developers` channel for technical discussions. diff --git a/docs/toolhive/guides-cli/_category_.yaml b/docs/toolhive/guides-cli/_category_.yaml deleted file mode 100644 index 80280c40..00000000 --- a/docs/toolhive/guides-cli/_category_.yaml +++ /dev/null @@ -1,5 +0,0 @@ -label: 'Using the ToolHive CLI' -position: 20 -link: - type: generated-index - slug: '/toolhive/guides-cli' diff --git a/docs/toolhive/guides-cli/api-server.md b/docs/toolhive/guides-cli/api-server.md index cf319381..a24fd1b0 100644 --- a/docs/toolhive/guides-cli/api-server.md +++ b/docs/toolhive/guides-cli/api-server.md @@ -1,7 +1,6 @@ --- title: Run the API server -description: How to run the local ToolHive API server -sidebar_position: 60 +description: How to run the local ToolHive API server. --- ToolHive includes a built-in API server that provides a RESTful interface for diff --git a/docs/toolhive/guides-cli/client-configuration.md b/docs/toolhive/guides-cli/client-configuration.mdx similarity index 84% rename from docs/toolhive/guides-cli/client-configuration.md rename to docs/toolhive/guides-cli/client-configuration.mdx index d3f10e41..bf0d546e 100644 --- a/docs/toolhive/guides-cli/client-configuration.md +++ b/docs/toolhive/guides-cli/client-configuration.mdx @@ -2,26 +2,11 @@ title: Client configuration description: How to configure AI agent clients to work with ToolHive MCP servers. -sidebar_position: 40 --- -ToolHive automatically configures supported AI clients to work with MCP servers. -This guide shows you how to set up and manage client configurations. +import ClientIntro from '../_partials/_client-config-intro.mdx'; -## Understanding client configuration - -Before an AI application can use ToolHive MCP servers, it needs to know where to -find them. You can configure clients in two ways: - -1. **Register a supported client**: Register your client with ToolHive so it - automatically manages and updates the client's configuration as you start, - stop, and remove MCP servers. -2. **Manual configuration**: For clients that ToolHive doesn't directly support, - manually configure them to connect to ToolHive-managed MCP servers using the - SSE or Streamable HTTP protocol. - -For a complete list of supported clients and compatibility details, see the -[Client compatibility reference](../reference/client-compatibility.mdx). + ## Register clients @@ -156,7 +141,7 @@ ToolHive provides. - [`thv client` command reference](../reference/cli/thv_client.md) - [`thv config` command reference](../reference/cli/thv_config.md) - [Client compatibility](../reference/client-compatibility.mdx) -- [Run MCP servers](run-mcp-servers.mdx) +- [Run MCP servers](./run-mcp-servers.mdx) ## Troubleshooting @@ -265,9 +250,14 @@ Python-based MCP servers using the Streamable HTTP transport protocol: [error] Server exited before responding to `initialize` request. ``` -This is a known interaction between VS Code and the FastMCP SDK used by -Python-based MCP servers. If you inspect the HTTP connection, you'll see a -`307 Temporary Redirect` response, which VS Code doesn't handle correctly. +This is a known interaction between VS Code and certain versions of the FastMCP +SDK used by Python-based MCP servers. If you inspect the HTTP connection, you'll +see a `307 Temporary Redirect` response, which VS Code doesn't handle correctly. + +This +[issue is resolved](https://github.com/modelcontextprotocol/python-sdk/pull/781) +in the latest versions of the SDK, but if you're using an older version of a +Python-based MCP server, you might still encounter it. There are two workarounds: @@ -278,7 +268,4 @@ There are two workarounds: 2. If the MCP server supports SSE, switch to using the SSE transport instead of Streamable HTTP. -You can track a proposed fix for this issue in the -[MCP Python SDK repository](https://github.com/modelcontextprotocol/python-sdk/pull/781). - diff --git a/docs/toolhive/guides-cli/custom-permissions.mdx b/docs/toolhive/guides-cli/custom-permissions.mdx index 4204f8a6..a8cce446 100644 --- a/docs/toolhive/guides-cli/custom-permissions.mdx +++ b/docs/toolhive/guides-cli/custom-permissions.mdx @@ -3,7 +3,6 @@ title: Custom permissions description: How to create and apply filesystem permissions and network isolation for MCP servers using permission profiles in ToolHive. -sidebar_position: 50 --- import Tabs from '@theme/Tabs'; @@ -341,7 +340,7 @@ When creating and using permission profiles: ## Related information - [`thv run` command reference](../reference/cli/thv_run.md) -- [Run MCP servers](run-mcp-servers.mdx) +- [Run MCP servers](./run-mcp-servers.mdx) ## Troubleshooting diff --git a/docs/toolhive/guides-cli/index.mdx b/docs/toolhive/guides-cli/index.mdx new file mode 100644 index 00000000..e8d52f2a --- /dev/null +++ b/docs/toolhive/guides-cli/index.mdx @@ -0,0 +1,31 @@ +--- +title: Using the ToolHive CLI +description: + How-to guides for using the ToolHive command-line interface to run and manage + MCP servers. +--- + +import DocCardList from '@theme/DocCardList'; + +## Introduction + +The ToolHive CLI (`thv`) is a command-line tool that allows you to deploy and +manage MCP servers on your local machines or in development environments. It +provides quick deployment of MCP servers and supports advanced features like +custom permissions, network access filtering, and telemetry. + +It's designed for developers who prefer working in a terminal or need to +integrate MCP server management into scripts or automation workflows. + +:::tip Did you know? + +The ToolHive CLI can be used alongside the +[ToolHive UI](../guides-ui/index.mdx), which provides a graphical interface. You +can use both tools together to get the best of both worlds: the ease of use of a +graphical interface and the flexibility of the CLI. + +::: + +## Contents + + diff --git a/docs/toolhive/guides-cli/install.mdx b/docs/toolhive/guides-cli/install.mdx index 1ad80475..d60777bb 100644 --- a/docs/toolhive/guides-cli/install.mdx +++ b/docs/toolhive/guides-cli/install.mdx @@ -1,7 +1,6 @@ --- title: Install ToolHive -description: A guide to installing, upgrading, and managing ToolHive. -sidebar_position: 10 +description: How to install, upgrade, and manage the ToolHive CLI. --- import Tabs from '@theme/Tabs'; @@ -10,6 +9,9 @@ import TabItem from '@theme/TabItem'; This guide walks you through installing, upgrading, and managing the ToolHive CLI ([`thv`](../reference/cli/thv.md)). +![Latest version](https://img.shields.io/github/v/release/stacklok/toolhive?style=for-the-badge&label=Latest%20version&color=097aff) +![Release date](https://img.shields.io/github/release-date/stacklok/toolhive?display_date=published_at&style=for-the-badge&label=Released&color=097aff) + ## Prerequisites Before installing ToolHive, make sure your system meets these requirements: @@ -21,7 +23,7 @@ Before installing ToolHive, make sure your system meets these requirements: - Rancher Desktop with the dockerd/moby runtime (experimental) ToolHive requires minimal CPU, memory, and disk space. The exact requirements -depend on how many MCP servers you run and what resources they use. +depend on how many MCP servers you run and the resources they use. ## Install ToolHive @@ -132,9 +134,9 @@ thv version You should see output showing the version number, build date, and Git commit: ```text title="ToolHive version output" -ToolHive v0.0.33 -Commit: e8efa1b1d7b0776a39339257d30bf6c4a171f2b8 -Built: 2025-05-12 14:31:06 UTC +ToolHive v0.1.1 +Commit: 18956ca1710e11c9952d13a8dde039d5d1d147d6 +Built: 2025-06-30 13:59:34 UTC Go version: go1.24.1 Platform: darwin/arm64 ``` @@ -315,13 +317,14 @@ To uninstall ToolHive: Now that you have ToolHive installed, you can start using it to run and manage MCP servers. See [Explore the registry](./registry.md) and -[Run MCP servers](run-mcp-servers.mdx) to get started. +[Run MCP servers](./run-mcp-servers.mdx) to get started. ## Related information -- Quickstart: [Getting started with ToolHive](../tutorials/quickstart.mdx) +- Quickstart: + [Getting started with the ToolHive CLI](../tutorials/quickstart-cli.mdx) - [`thv` CLI reference](../reference/cli/thv.md) -- [Client configuration](./client-configuration.md) +- [Client configuration](./client-configuration.mdx) - [Secrets management](./secrets-management.mdx) ## Troubleshooting diff --git a/docs/toolhive/guides-cli/manage-mcp-servers.md b/docs/toolhive/guides-cli/manage-mcp-servers.md index efe96362..a77d9fc3 100644 --- a/docs/toolhive/guides-cli/manage-mcp-servers.md +++ b/docs/toolhive/guides-cli/manage-mcp-servers.md @@ -2,7 +2,6 @@ title: Monitor and manage MCP servers description: How to monitor and manage the lifecycle of MCP servers using ToolHive. -sidebar_position: 25 --- ## Monitoring diff --git a/docs/toolhive/guides-cli/registry.md b/docs/toolhive/guides-cli/registry.md index 7511de78..f9bb7491 100644 --- a/docs/toolhive/guides-cli/registry.md +++ b/docs/toolhive/guides-cli/registry.md @@ -1,7 +1,6 @@ --- title: Explore the registry -description: Using the built-in registry to find MCP servers. -sidebar_position: 15 +description: How to use the built-in registry to find MCP servers. --- ToolHive includes a built-in registry of MCPs with verified configurations, diff --git a/docs/toolhive/guides-cli/run-mcp-servers.mdx b/docs/toolhive/guides-cli/run-mcp-servers.mdx index e23982b9..c54b8ded 100644 --- a/docs/toolhive/guides-cli/run-mcp-servers.mdx +++ b/docs/toolhive/guides-cli/run-mcp-servers.mdx @@ -1,7 +1,6 @@ --- title: Run MCP servers description: How to run MCP servers with the ToolHive CLI. -sidebar_position: 20 --- import Tabs from '@theme/Tabs'; @@ -94,8 +93,8 @@ For example: thv run --secret github,target=GITHUB_PERSONAL_ACCESS_TOKEN github ``` -See [Secrets management](secrets-management.mdx) to learn how to manage secrets -in ToolHive. +See [Secrets management](./secrets-management.mdx) to learn how to manage +secrets in ToolHive. ### Mount a local directory @@ -384,9 +383,9 @@ control your servers. ## Related information - [`thv run` command reference](../reference/cli/thv_run.md) -- [Client configuration](client-configuration.md) -- [Secrets management](secrets-management.mdx) -- [Custom permissions](custom-permissions.mdx) +- [Client configuration](./client-configuration.mdx) +- [Secrets management](./secrets-management.mdx) +- [Custom permissions](./custom-permissions.mdx) ## Troubleshooting @@ -416,7 +415,7 @@ If a server starts but isn't accessible: 2. Verify the port isn't blocked by a firewall 3. Make sure clients are properly configured (see - [Client configuration](client-configuration.md)) + [Client configuration](./client-configuration.mdx)) diff --git a/docs/toolhive/guides-cli/secrets-management.mdx b/docs/toolhive/guides-cli/secrets-management.mdx index 34980b0e..2ce960e0 100644 --- a/docs/toolhive/guides-cli/secrets-management.mdx +++ b/docs/toolhive/guides-cli/secrets-management.mdx @@ -2,7 +2,6 @@ title: Secrets management description: How to securely manage API tokens and other sensitive data in ToolHive. -sidebar_position: 30 --- import Tabs from '@theme/Tabs'; diff --git a/docs/toolhive/guides-k8s/_category_.yaml b/docs/toolhive/guides-k8s/_category_.yaml deleted file mode 100644 index af75b133..00000000 --- a/docs/toolhive/guides-k8s/_category_.yaml +++ /dev/null @@ -1,5 +0,0 @@ -label: 'Kubernetes deployment' -position: 30 -link: - type: generated-index - slug: '/toolhive/guides-k8s' diff --git a/docs/toolhive/guides-k8s/deploy-operator-helm.md b/docs/toolhive/guides-k8s/deploy-operator-helm.md index 61e8a366..e7258e93 100644 --- a/docs/toolhive/guides-k8s/deploy-operator-helm.md +++ b/docs/toolhive/guides-k8s/deploy-operator-helm.md @@ -2,7 +2,6 @@ title: Deploy the operator description: How to deploy the ToolHive operator in a Kubernetes cluster using Helm -sidebar_position: 10 --- Helm is the officially supported method to install the ToolHive operator in a @@ -19,6 +18,8 @@ Kubernetes cluster. ## Install the CRDs +![Latest CRD Helm chart release](https://img.shields.io/github/v/release/stacklok/toolhive?filter=toolhive-operator-crds-*&style=for-the-badge&logo=helm&label=Latest%20CRD%20chart&color=097aff) + The ToolHive operator requires Custom Resource Definitions (CRDs) to manage MCPServer resources. The CRDs define the structure and behavior of MCPServers in your cluster. @@ -27,8 +28,18 @@ your cluster. helm upgrade -i toolhive-operator-crds oci://ghcr.io/stacklok/toolhive/toolhive-operator-crds ``` +This command installs the latest version of the ToolHive operator CRDs Helm +chart. To install a specific version, append `--version ` to the +command, for example: + +```bash +helm upgrade -i toolhive-operator-crds oci://ghcr.io/stacklok/toolhive/toolhive-operator-crds --version 0.0.7 +``` + ## Install the operator +![Latest Operator Helm chart release](https://img.shields.io/github/v/release/stacklok/toolhive?filter=toolhive-operator-0*&style=for-the-badge&logo=helm&label=Latest%20Operator%20chart&color=097aff) + To install the ToolHive operator using default settings, run the following command: @@ -36,6 +47,14 @@ command: helm upgrade -i toolhive-operator oci://ghcr.io/stacklok/toolhive/toolhive-operator -n toolhive-system --create-namespace ``` +This command installs the latest version of the ToolHive operator CRDs Helm +chart. To install a specific version, append `--version ` to the +command, for example: + +```bash +helm upgrade -i toolhive-operator oci://ghcr.io/stacklok/toolhive/toolhive-operator -n toolhive-system --create-namespace --version 0.1.1 +``` + Verify the installation: ```bash @@ -241,8 +260,8 @@ configured during installation. - [Kubernetes introduction](./intro.md) - Overview of ToolHive's Kubernetes integration -- [ToolHive operator tutorial](../tutorials/toolhive-operator.mdx) - - Step-by-step tutorial for getting started using a local kind cluster +- [ToolHive operator tutorial](../tutorials/quickstart-k8s.mdx) - Step-by-step + tutorial for getting started using a local kind cluster ## Troubleshooting diff --git a/docs/toolhive/guides-k8s/index.mdx b/docs/toolhive/guides-k8s/index.mdx new file mode 100644 index 00000000..c57d81bf --- /dev/null +++ b/docs/toolhive/guides-k8s/index.mdx @@ -0,0 +1,29 @@ +--- +title: Using the ToolHive Kubernetes Operator +description: + How-to guides for using the ToolHive Kubernetes operator to run and manage MCP + servers. +--- + +import DocCardList from '@theme/DocCardList'; + +## Introduction + +The ToolHive Kubernetes operator manages MCP servers in Kubernetes clusters. It +provides a way to deploy, manage, and scale MCP servers in multi-user +environments. By defining MCP servers as Kubernetes resources, the operator +automates their deployment and management, making it easier to run MCP servers +in multi-user environments. + +:::info + +Experimental The Kubernetes operator is still under active development and isn't +recommended for production use cases yet. Specifically, the `MCPServer` Custom +Resource Definition (CRD) is still in an alpha state so breaking changes to the +spec and its capabilities are possible. + +::: + +## Contents + + diff --git a/docs/toolhive/guides-k8s/intro.md b/docs/toolhive/guides-k8s/intro.md index e4253e4b..e036dbfa 100644 --- a/docs/toolhive/guides-k8s/intro.md +++ b/docs/toolhive/guides-k8s/intro.md @@ -1,8 +1,7 @@ --- -title: ToolHive Kubernetes operator -description: Manage MCP servers in Kubernetes with the ToolHive operator -sidebar_position: 1 -sidebar_label: Introduction +title: Overview of the ToolHive Kubernetes Operator +description: How to manage MCP servers in Kubernetes with the ToolHive operator +sidebar_label: Overview --- The ToolHive Kubernetes operator manages MCP servers in Kubernetes clusters. It @@ -12,11 +11,13 @@ deployment and management. :::info Experimental The Kubernetes operator is still under active development and isn't recommended -for production use cases yet. We'd love for you to try it out and send feedback. +for production use cases yet. Specifically, the `MCPServer` Custom Resource +Definition (CRD) is still in an alpha state so breaking changes to the spec and +its capabilities are possible. -See the -[ToolHive Operator quickstart tutorial](../tutorials/toolhive-operator.mdx) to -get started quickly using a local kind cluster. +See the [ToolHive Operator quickstart tutorial](../tutorials/quickstart-k8s.mdx) +to get started quickly using a local kind cluster. We'd love for you to try +itout and send feedback! ::: diff --git a/docs/toolhive/guides-k8s/run-mcp-k8s.md b/docs/toolhive/guides-k8s/run-mcp-k8s.md index 61d87c22..8316f87a 100644 --- a/docs/toolhive/guides-k8s/run-mcp-k8s.md +++ b/docs/toolhive/guides-k8s/run-mcp-k8s.md @@ -1,7 +1,6 @@ --- title: Run MCP servers in Kubernetes description: How to deploy MCP servers in Kubernetes using the ToolHive operator -sidebar_position: 20 --- ## Prerequisites diff --git a/docs/toolhive/guides-ui/client-configuration.mdx b/docs/toolhive/guides-ui/client-configuration.mdx new file mode 100644 index 00000000..5c283eb4 --- /dev/null +++ b/docs/toolhive/guides-ui/client-configuration.mdx @@ -0,0 +1,65 @@ +--- +title: Client configuration +description: How to connect ToolHive to AI clients using the UI. +--- + +import ClientIntro from '../_partials/_client-config-intro.mdx'; + + + +## Manage client connections + +ToolHive automatically discovers supported AI clients that are installed on your +system. These are displayed on the **Clients** page. This discovery is dynamic: +if you install a new client, ToolHive automatically updates the list. + +### Connect a client + +To connect a client to ToolHive, toggle the switch under the client's name. + +When you connect a client, ToolHive automatically configures it to use your +currently running MCP servers. Any new servers you start are also added. + +When you stop or remove an MCP server, ToolHive updates the client's +configuration to remove the server. + +### Disconnect a client + +When you disconnect a client, ToolHive removes all MCP server configurations +from the client. The client will no longer be able to use any ToolHive-managed +MCP servers. + +## Why don't I see my client? + +If you don't see your client listed, ToolHive might not support it, or its +configuration file might not be in a location ToolHive recognizes. + +For a list of supported clients and how ToolHive detects them, see the +[client compatibility reference](../reference/client-compatibility.mdx). + +## Why do I still see a client I uninstalled? + +Many clients leave behind configuration files even after you uninstall them. +ToolHive detects these files and continues to show the client in the UI. If you +want to remove the client from ToolHive, delete its configuration files +manually. + +## Manual client configuration + +For clients that ToolHive doesn't support directly, you can still configure them +to connect to ToolHive-managed MCP servers using the SSE (Server-Sent Events) or +Streamable HTTP protocol. + +To do this, you need the URL of the MCP server you want to connect to. You can +get this URL from the **MCP Servers** page in ToolHive. Click the menu (︙) on +the MCP server card to copy the URL. + +You can then configure your client to use this URL. The exact steps depend on +your client or library, so refer to its documentation for details. See the +[client configuration reference](../reference/client-compatibility.mdx#manual-configuration) +for some common examples. + +## Related information + +- [Client compatibility](../reference/client-compatibility.mdx) +- [Run MCP servers](./run-mcp-servers.md) diff --git a/docs/toolhive/guides-ui/index.mdx b/docs/toolhive/guides-ui/index.mdx new file mode 100644 index 00000000..bc00b943 --- /dev/null +++ b/docs/toolhive/guides-ui/index.mdx @@ -0,0 +1,48 @@ +--- +title: Using ToolHive +description: + How-to guides for using the ToolHive UI to run and manage MCP servers. +--- + +import DocCardList from '@theme/DocCardList'; + +import useBaseUrl from '@docusaurus/useBaseUrl'; +import ThemedImage from '@theme/ThemedImage'; + +## Introduction + +The ToolHive UI is a desktop application that makes it easy to run and manage +Model Context Protocol (MCP) servers on your local machine. It provides a +user-friendly interface to discover, deploy, and manage MCP servers with +security and ease of use built in. + +It's designed for anyone who wants to run MCP servers without needing to +understand the complexities of Docker or command-line tools. Whether you're a +developer, researcher, or just curious about MCP servers, ToolHive provides a +simple way to get started. + + +
+ +We strive to make ToolHive intuitive and easy to use. If we've missed the mark +on something, [let us know](https://discord.gg/stacklok)! + +:::tip Advanced users + +If you want more control or want to experiment with more advanced features like +custom permissions and telemetry, the ToolHive UI can work side-by-side with the +[ToolHive CLI](../guides-cli/index.mdx) while still providing a graphical +interface to quickly see and control your MCP servers. + +::: + +## Contents + + diff --git a/docs/toolhive/guides-ui/install.mdx b/docs/toolhive/guides-ui/install.mdx new file mode 100644 index 00000000..414b1b86 --- /dev/null +++ b/docs/toolhive/guides-ui/install.mdx @@ -0,0 +1,234 @@ +--- +title: Install ToolHive +description: How to install the ToolHive UI application. +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +This guide walks you through installing, upgrading, and managing the ToolHive +desktop application. + +![Latest version](https://img.shields.io/github/v/release/stacklok/toolhive-studio?style=for-the-badge&label=Latest%20version&color=097aff) +![Release date](https://img.shields.io/github/release-date/stacklok/toolhive-studio?display_date=published_at&style=for-the-badge&label=Released&color=097aff) + +## Prerequisites + +Before installing ToolHive, make sure your system meets these requirements: + +- **Operating systems**: + - macOS (Apple silicon or Intel) + - Windows 10/11 (x64) + - Linux (x86_64/amd64) +- **Container runtime**: + - Docker / Docker Desktop + - Podman / Podman Desktop + - Rancher Desktop with the dockerd/moby runtime (experimental) + +ToolHive requires minimal CPU, memory, and disk space. The exact requirements +depend on how many MCP servers you run and the resources they use. + +## Install ToolHive + +Select your operating system to see the installation instructions. + + + + +Download the latest ToolHive installer for +[Apple silicon](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive-arm64.dmg) +or +[Intel-based](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive-arm64.dmg) +Macs and open the DMG file. + +Copy the ToolHive app to your Applications folder. You can then open it from +your Applications folder, Launchpad, or using Spotlight search. + + + + +Download the latest +[ToolHive installer](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive.Setup.exe) +and run the setup executable. + +:::note + +The Windows installer is not digitally signed yet, so you will need to accept +the warning from Windows Defender SmartScreen. We're working on getting a signed +installer published soon. + +::: + +After installation, you can find ToolHive in your Start menu or on your desktop. + +:::important + +The first time you run ToolHive, you may be prompted to allow firewall access. +If you don't allow this, ToolHive won't be able to run MCP servers. + +::: + + + + +1. Download the appropriate RPM or DEB package for your distribution from the + [ToolHive UI releases page](https://github.com/stacklok/toolhive-studio/releases/latest) + +2. Use your package manager to install the downloaded package: + - For RPM-based distributions (like Fedora or Red Hat Enterprise Linux): + + ```bash + sudo rpm -i ToolHive--1.x86_64.rpm + ``` + + - For DEB-based distributions (like Ubuntu or Debian): + + ```bash + sudo dpkg -i toolhive__amd64.deb + ``` + +For other Linux distributions, download the +[binary tarball](https://github.com/stacklok/toolhive-studio/releases/latest/download/toolhive-studio-linux-x64.tar.gz) +and extract it, then run the `ToolHive` binary directly. + + + + +## System tray icon + +When you close the ToolHive application window, it stays running in the +background so your MCP servers remain available. ToolHive installs a system tray +icon for quick access. You can use it to: + +- Enable or disable **Start on login** +- Show or hide the ToolHive application window +- Quit ToolHive, which stops all running MCP servers + +## Run ToolHive on login + +You can configure ToolHive to start automatically when you log in to your +system. This is useful if you want your MCP servers to be available without +manually starting ToolHive each time. + +To enable this feature, turn on the **Start on login** option in the system tray +icon menu or in the settings menu (⚙️) in the application. + +## Upgrade ToolHive + +ToolHive automatically checks for updates. When a new version is available, +you'll see a notification in the application. During the upgrade, ToolHive stops +all running MCP servers, updates the application, and then restarts itself and +the MCP servers. + +You can also manually install updates by downloading the latest installer for +your operating system from the +[ToolHive UI releases page](https://github.com/stacklok/toolhive-studio/releases/latest) +and running it. The installer will upgrade your existing ToolHive installation +to the latest version. See the [Install ToolHive](#install-toolhive) section for +direct download links. + +## File locations + +ToolHive stores its configuration and data files in several locations depending +on your operating system: + + + + +- The `~/Library/Application Support/ToolHive` directory contains: + - Configuration files and application data for the ToolHive UI + - MCP server logs and configurations (`logs/` and `runconfigs/` directories) + - Your encrypted secrets store (`secrets_encrypted` file) + - ToolHive CLI/API configuration file (`config.yaml`) +- The main UI application log is located at `~/Library/Logs/ToolHive/main.log` + +Since macOS is not case sensitive, the `~/Library/Application Support/ToolHive` +directory is shared by the UI and CLI if you have both installed. + + + + +- The `%LOCALAPPDATA%\ToolHive` directory contains: + - Application executables and installation logs + - MCP server logs and configurations (`logs/` and `runconfigs/` directories) + - Your encrypted secrets store (`secrets_encrypted` file) + - ToolHive CLI/API configuration file (`config.yaml`) +- The `%APPDATA%\ToolHive` directory contains: + - Configuration files and application data for the ToolHive UI +- The main UI application log is located at `%APPDATA%\ToolHive\logs\main.log` + +Since Windows is not case sensitive, the `%LOCALAPPDATA%\ToolHive` directory is +shared by the UI and CLI if you have both installed. + + + + +- The `~/.config/ToolHive` directory contains: + - Configuration files and application data for the ToolHive UI +- The `~/.config/toolhive` directory contains (note the case sensitivity): + - MCP server logs and configurations (`logs/` and `runconfigs/` directories) + - Your encrypted secrets store (`secrets_encrypted` file) + - ToolHive CLI/API configuration file (`config.yaml`) +- The main UI application log is located at `~/.config/ToolHive/logs/main.log` + +Since Linux is case sensitive, the `~/.config/ToolHive` and `~/.config/toolhive` +directories are separate. However, the ToolHive UI and CLI share the same +configuration file and secrets store to support coexistence. + + + + +## Telemetry and error reporting + +ToolHive uses [Sentry](https://sentry.io/welcome/) for error tracking and +performance monitoring to help us identify and fix issues, improve stability, +and enhance the user experience. This telemetry is enabled by default. You can +disable this by turning off the **Error reporting** option in the settings menu +(⚙️) if you prefer not to share this data. + +ToolHive collects the following information: + +- Error reports and crash logs +- Performance metrics +- Usage patterns + +This data is anonymized and does not include any personally identifiable +information. It helps us understand how ToolHive is used and identify areas for +improvement. Review the +[Stacklok privacy policy](https://www.iubenda.com/privacy-policy/29074746) and +[Terms of Service](https://stacklok.com/terms-of-service) for more details. + +## Next steps + +Now that you have ToolHive installed, you can start using it to run and manage +MCP servers. See [Run MCP servers](./run-mcp-servers.md) to get started. + +## Related information + +- Quickstart: + [Getting started with the ToolHive UI](../tutorials/quickstart-ui.mdx) +- [Client configuration](./client-configuration.mdx) +- [Secrets management](./secrets-management.md) + +## Troubleshooting + +
+Connection Refused error on startup + +If you see a "Connection Refused" error when starting ToolHive, it's likely +because your container runtime (Docker or Podman) is not installed, not running, +or not configured correctly. + +Follow the instructions on the error message to install or start your container +runtime. For example, if you're using Docker Desktop, make sure it is running +and that the Docker daemon is active. + +If the retry button doesn't work, try restarting ToolHive. + +
+ +### Other issues + +For other installation issues, check the +[GitHub issues page](https://github.com/stacklok/toolhive-studio/issues) or join +the [Discord community](https://discord.gg/stacklok). diff --git a/docs/toolhive/guides-ui/network-isolation.mdx b/docs/toolhive/guides-ui/network-isolation.mdx new file mode 100644 index 00000000..ea11353c --- /dev/null +++ b/docs/toolhive/guides-ui/network-isolation.mdx @@ -0,0 +1,74 @@ +--- +title: Network isolation +description: How to configure network isolation for MCP servers in ToolHive. +--- + +import useBaseUrl from '@docusaurus/useBaseUrl'; +import ThemedImage from '@theme/ThemedImage'; + +Most MCP servers require network access to function properly—for example, to +access APIs, download data, or communicate with other services. However, +malicious or misconfigured servers can also exfiltrate sensitive data or +download unwanted content. + +When you install an MCP server in ToolHive, you can optionally enable _network +isolation_. This feature restricts the MCP server's network access to only the +resources you specify. + +## Enabling network isolation + +Currently, network isolation is available for MCP servers installed from the +ToolHive registry. + +During the MCP server installation, select the **Network isolation** tab in the +configuration form. Click the toggle to enable it. + +When network isolation is enabled, you can specify the following: + +- **Allowed hosts**:\ + A list of hostnames or IP addresses that the MCP server is allowed to access. + This can include APIs, data sources, or other services that the MCP server + needs to function properly. + + :::tip + + To allow access to all subdomains under a specific domain, add a leading + period (`.`) in front of the hostname. For example, to allow access to all + subdomains of `github.com`, enter `.github.com` in the allowed hosts list. + + ::: + +- **Allowed ports**:\ + A list of ports that the MCP server is allowed to use for outgoing + connections. This can help prevent the MCP server from accessing unauthorized + services or resources. For example, port 443 is the default port for HTTPS + connections. + +:::important + +If you do not specify any allowed hosts or ports, the MCP server will not be +able to access any external resources, including the internet. This can be +useful for MCP servers that do not require network access or for testing +purposes. + +::: + +## Example configuration + +The configuration pictured below allows the MCP server to access +`api.github.com` and all subdomains of `githubusercontent.com` on port 443 +(HTTPS): + + +
+ +## Related information + +- [Run MCP servers](./run-mcp-servers.md) diff --git a/docs/toolhive/guides-ui/run-mcp-servers.md b/docs/toolhive/guides-ui/run-mcp-servers.md new file mode 100644 index 00000000..7ec6dce5 --- /dev/null +++ b/docs/toolhive/guides-ui/run-mcp-servers.md @@ -0,0 +1,228 @@ +--- +title: Run MCP servers +description: How to install and run MCP servers in the ToolHive UI. +--- + +ToolHive makes it easy to run and manage Model Context Protocol (MCP) servers. +This guide walks you through installing MCP servers from the registry, using +Docker images, or from source packages. + +## Install from the registry + +ToolHive includes a built-in registry of MCP servers that meet a +[minimum quality standard](../concepts/registry-criteria.md), allowing you to +discover and deploy high-quality tools effortlessly. Simply select one from the +list to run it securely with just a few clicks. + +### Select an MCP server + +To install an MCP server from the registry: + +1. Open the **Registry** page from the menu bar. +2. Browse or search for the MCP server you want to install. +3. Click on the desired MCP server to open its details page. Here you can review + more information about the server like its: + - Description + - Available tools + - Tier (community or official) + - Popularity (GitHub stars) + - A link to the GitHub repository for more details and usage documentation +4. Click the **Install server** button to start the installation process. + +### Configure the server + +On the configuration form, enter the following details: + +1. **Server name**: A unique name for the MCP server.\ + This defaults to the MCP server's name in the registry. If you want to run + multiple instances of the same MCP server, give each instance a unique name. + +2. **Command arguments** (optional):\ + Enter any command-line arguments needed to run the MCP server. These might be + needed to pass application-specific parameters to the MCP server. Refer to + the MCP server's documentation for details. + + :::info + + We've made every effort to include sensible defaults in the registry for a + one-click experience, but some servers may require additional command-line + arguments to function correctly. + + ::: + +3. **Secrets** and **environment variables** expected by the server are + populated from the registry automatically. Required values are marked with an + asterisk (\*). + 1. **Secrets**: Enter a value to create a new secret or select an existing + secret to map to the environment variable. Secrets are stored securely and + can be used by the MCP server without exposing them in plaintext. + 2. **Environment variables**: Enter the value in the input field alongside + the variable name. These are typically used for configuration options that + do not require sensitive data. + +:::note + +Refer to the MCP server's documentation for the required configuration +information, required permissions, and authentication details. A link to the +GitHub repository is provided on each server's details page. + +::: + +### Network isolation + +You can optionally enable network isolation for the MCP server. This allows you +to control the MCP server's network access, restricting it to only the necessary +resources and preventing it from accessing the internet or other external +networks. + +See the [Network isolation](./network-isolation.mdx) guide for details on how to +configure network isolation for MCP servers in ToolHive. + +### Start the MCP server + +Click **Install server** to install and start the MCP server. ToolHive downloads +the Docker image, creates a container, and starts it with the specified +configuration. + +Once the server is running, you can see its status on the **MCP Servers** page. +Each server's card includes: + +- The server name +- Its status (Running or Stopped) with a toggle button to start or stop it +- A menu (︙) that includes the server's URL for AI clients that need manual + configuration, and options to: + - Open the server's GitHub repository + - View the server's logs + - Remove the server + +See [Manage MCP servers](#manage-mcp-servers) below for more details on server +states. + +## Install a custom MCP server + +You're not limited to the MCP servers in the registry. You can also run your own +custom MCP servers using Docker images or source packages. + +On the **MCP Servers** page, click **Add server**, then choose **Custom MCP +server** in the drop-down menu. Or if this is your first MCP server, click **Add +custom server** on the introductory screen. + +In the **Custom MCP server** dialog, choose [Docker image](#from-a-docker-image) +or [Package manager](#from-a-source-package). + +### From a Docker image + +Select the **Docker image** option. This allows you to run any MCP server that +is available as a Docker image in a remote registry or locally on your system. + +On the configuration form, enter: + +1. A unique **name** for the MCP server. [Required] + +2. The **transport protocol** that the MCP server uses. [Required]\ + ToolHive supports standard input/output (`stdio`), server-sent events (SSE), + and Streamable HTTP. The protocol must match what the MCP server supports. + +3. The **target port** to expose from the container (SSE or Streamable HTTP + transports only). [Optional]\ + If the MCP server uses a specific port, enter it here. If not specified, + ToolHive will use a random port that is exposed to the container with the + `MCP_PORT` and `FASTMCP_PORT` environment variables. + +4. The Docker **image name** and tag (e.g., `my-mcp-server:latest`). [Required]\ + You can use any valid Docker image, including those hosted on Docker Hub or + other registries. + +5. **Command-line arguments** needed to run the MCP server. [Optional]\ + These are specific to the MCP server and might include transport options or + application-specific parameters. Refer to the MCP server's documentation for + details. + +6. Any **secrets** or **environment variables** required by the MCP server. + [Optional]\ + These might include API tokens, configuration options, or other sensitive + data. + - Secrets are mapped to an environment variable. Enter the variable name and + select an existing secret or enter a value to create a new one. + - For non-sensitive environment variables, enter the name and value directly. + +Click **Install server** to create and start the MCP server container. + +### From a source package + +Select the **Package manager** option. This allows you to run an MCP server from +a source package. + +ToolHive downloads the MCP server's source package and builds a Docker image +on-the-fly. The following package formats are supported: + +- Node.js-based MCP servers using npm +- Python-based MCP servers available on PyPI, using the `uv` package manager +- Go-based MCP servers available on GitHub + +On the configuration form, enter: + +1. A unique **name** for the MCP server. [Required] + +2. The **transport protocol** that the MCP server uses. [Required]\ + ToolHive supports standard input/output (`stdio`), server-sent events (SSE), + and Streamable HTTP. The protocol must match what the MCP server supports. + +3. The **target port** to expose from the container (SSE or Streamable HTTP + transports only). [Optional]\ + If the MCP server uses a specific port, enter it here. If not specified, + ToolHive will use a random port that is exposed to the container with the + `MCP_PORT` and `FASTMCP_PORT` environment variables. + +4. The package **protocol** (`npx`, `uvx`, or `go`). [Required] + +5. The **name** of the package to run. [Required] + 1. For `npx`, use the [npm](https://www.npmjs.com/) package name and version, + e.g. `my-mcp-package@latest` + 2. For `uvx`, use the [PyPI](https://pypi.org/) package name and version, + e.g. `my-mcp-package@latest` + 3. For `go`, use the GitHub repository URL with full path to the `main` + package and version, e.g. + `go://github.com/orgname/my-mcp-server/cmd/server@latest` + +6. **Command-line arguments** needed to run the MCP server. [Optional]\ + These are specific to the MCP server and might include transport options or + application-specific parameters. Refer to the MCP server's documentation for + details. + +7. Any **secrets** or **environment variables** required by the MCP server. + [Optional]\ + These might include API tokens, configuration options, or other sensitive + data. + - Secrets are mapped to an environment variable. Enter the variable name and + select an existing secret or enter a value to create a new one. + - For non-sensitive environment variables, enter the name and value directly. + +Click **Install server** to create and start the MCP server container. + +## Manage MCP servers + +On the **MCP Servers** page, you can manage your installed MCP servers: + +- **Start/Stop**: Use the toggle button to start or stop the MCP server. When + you stop a server, it remains in the list but is no longer running. ToolHive + removes the server from connected AI clients while stopped. +- **Copy URL**: Click the menu (︙) on the server card and select the **Copy** + icon (⧉) to copy the MCP server's URL to your clipboard. This URL is used by + AI clients to connect to the MCP server. +- **View logs**: Click the menu (︙) on the server card and select **View logs** + to see the server's output. +- **Remove server**: Click the menu (︙) on the server card and select **Remove + server** to stop and remove the MCP server from ToolHive. This deletes the + container and any associated configuration, so use with caution. + +When you quit the application, ToolHive prompts you to stop all running MCP +servers. The running servers are recorded and ToolHive restarts them +automatically the next time you launch the application. + +## Next steps + +- Connect ToolHive to AI clients like GitHub Copilot or Cursor using the + [client configuration guide](./client-configuration.mdx). +- Learn more about [secrets management](./secrets-management.md) to securely + manage API tokens and other sensitive data. diff --git a/docs/toolhive/guides-ui/secrets-management.md b/docs/toolhive/guides-ui/secrets-management.md new file mode 100644 index 00000000..48625145 --- /dev/null +++ b/docs/toolhive/guides-ui/secrets-management.md @@ -0,0 +1,63 @@ +--- +title: Secrets management +description: + How to securely manage API tokens and other sensitive data in the ToolHive UI. +--- + +Many MCP servers need secrets like API tokens, connection strings, and other +sensitive parameters. ToolHive provides built-in secrets management so you can +manage these values securely without exposing them in plaintext configuration +files. + +ToolHive encrypts secrets using a randomly generated password that is stored in +your operating system's secure keyring. + +You can add new secrets on the **Secrets** page or during MCP server +installation. + +:::note + +The ToolHive UI does not currently support the 1Password secrets provider. If +you have configured the 1Password secrets provider using the ToolHive CLI, the +UI will automatically update your configuration to use the built-in encrypted +provider instead. + +::: + +## Enter secrets during MCP installation + +When you install an MCP server from the registry, any required secrets are +listed on the configuration form with their corresponding environment variable. + +When you add a custom MCP server, add secrets by entering the environment +variable name that the MCP server expects. + +To set the secret value, you can: + +- Select an existing secret to populate its value in the configuration form. +- Enter a value in the input box. ToolHive creates a new secret with a name + matching the environment variable. + +## Manage secrets + +Your ToolHive secrets are managed on the **Secrets** page. Here you can: + +- Click the **Add secret** button to create a new secret. Enter a friendly name + for the secret and its value. +- Expand the menu (︙) next to an existing secret to: + - Update the secret value + - Delete the secret + +:::important + +If you delete a secret that is in use by an MCP server, the server will continue +running but you will not be able to restart it if stopped. You'll need to remove +the server and reinstall it with the required secrets, or add the secret back +using the same name. + +::: + +## Related information + +- [Run MCP servers](./run-mcp-servers.md) +- [Client configuration](./client-configuration.mdx) diff --git a/docs/toolhive/index.mdx b/docs/toolhive/index.mdx index 98ea6228..f7ed58f5 100644 --- a/docs/toolhive/index.mdx +++ b/docs/toolhive/index.mdx @@ -2,7 +2,6 @@ title: Introduction hide_title: true description: ToolHive helps you run and manage MCP servers easily and securely. -sidebar_position: 1 --- import useBaseUrl from '@docusaurus/useBaseUrl'; @@ -19,11 +18,17 @@ import ThemedImage from '@theme/ThemedImage'; />
+--- + ToolHive mascot ## What is ToolHive? @@ -32,12 +37,28 @@ ToolHive simplifies the deployment and management of Model Context Protocol (MCP) servers. It ensures ease of use, consistency, and security by running containers in a locked-down environment with minimal permissions. -Follow the [getting started guide](./tutorials/quickstart.mdx) to install +Follow the [getting started guide](./tutorials/quickstart-ui.mdx) to install ToolHive and run your first MCP server. To learn more about the Model Context Protocol, see our [MCP primer](./concepts/mcp-primer.md). +ToolHive is available in three modes to suit different use cases: + +- [**ToolHive UI**](./guides-ui/index.mdx): A desktop application for individual + developers to run and manage MCP servers locally. It provides a user-friendly + interface to discover, deploy, and manage MCP servers. + +- [**ToolHive CLI**](./guides-cli/index.mdx): A command line interface to deploy + and manage MCP servers on your local machine or in development environments. + It allows quick deployment of MCP servers and supports advanced features like + custom permissions and telemetry. + +- [**ToolHive Kubernetes Operator**](./guides-k8s/index.mdx): A Kubernetes + operator for teams and enterprises to run and manage MCP servers in multi-user + environments. It provides centralized management, security controls, and + integration with existing infrastructure. + ## Why ToolHive? We want to help you get real value from MCP servers. While there are plenty of @@ -63,37 +84,29 @@ containers. The proxy communicates with MCP servers via standard input/output interacts with Docker or Podman via the Docker socket API, letting it manage containers and their configurations. -```mermaid -flowchart LR - subgraph container["**Docker/Podman**"] - direction LR - mcp1["MCP server
container"] - mcp2["MCP server
container"] - mcp3["MCP server
container"] - end - proxy1["SSE proxy"] -- stdio --> mcp1 - proxy2["SSE proxy"] -- SSE --> mcp2 - proxy3["HTTP proxy"] -- Streamable
HTTP --> mcp3 - T["ToolHive CLI"] -- Socket API --> container - C["Client"] -- HTTP/SSE --> proxy1 & proxy2 - C -- HTTP --> proxy3 - T ~~~ C -``` - -ToolHive is packaged as a [standalone CLI tool](./guides-cli/) for individual -developers and as a [Kubernetes operator](./guides-k8s/) for teams and -enterprises. The CLI provides a simple command line interface to deploy and -manage MCP servers, while the Kubernetes operator enables teams to run and -manage MCP servers centrally. + +
## Key features -ToolHive offers the following features to simplify MCP deployment: +ToolHive includes a range of features to help you run and manage MCP servers +effectively: -- **Streamlined deployment**: Deploy MCP servers instantly with a single command - using Docker containers or directly from package managers via protocol schemes - (`uvx://`, `npx://`, `go://`). Access a curated registry of verified MCP - servers that you can discover and run effortlessly. +- **Streamlined deployment**: Deploy MCP servers instantly using Docker + containers or directly from package managers via protocol schemes (`uvx://`, + `npx://`, `go://`). Access a curated registry of verified MCP servers that you + can discover and run effortlessly. + +- **Seamless integration**: Configure popular development tools automatically, + including GitHub Copilot and Cursor, to streamline your workflow with minimal + setup. - **Comprehensive security**: Run MCP servers in isolated containers with customizable, fine-grained permissions and network access filtering using JSON @@ -108,12 +121,27 @@ ToolHive offers the following features to simplify MCP deployment: - **Kubernetes deployment**: Deploy and manage MCP servers in Kubernetes clusters using the ToolHive operator. -- **Seamless integration**: Configure popular development tools automatically, - including GitHub Copilot and Cursor, to streamline your workflow with minimal - setup. - ## Additional resources -- [GitHub repository](https://github.com/stacklok/toolhive) -- [Issue tracker](https://github.com/stacklok/toolhive/issues) -- [Discord community](https://discord.gg/stacklok) +ToolHive mascot, a friendly marmot dressed as a bee + +Join the Stacklok [Discord community](https://discord.gg/stacklok) to connect +with other ToolHive users, ask questions, and share your experiences. + +Source code and issue tracking: + +- ToolHive UI + - [GitHub repository](https://github.com/stacklok/toolhive-studio) + - [Issue tracker](https://github.com/stacklok/toolhive-studio/issues) +- ToolHive CLI & K8s Operator + - [GitHub repository](https://github.com/stacklok/toolhive) + - [Issue tracker](https://github.com/stacklok/toolhive/issues) diff --git a/docs/toolhive/reference/_category_.yaml b/docs/toolhive/reference/_category_.yaml deleted file mode 100644 index 876e3363..00000000 --- a/docs/toolhive/reference/_category_.yaml +++ /dev/null @@ -1,3 +0,0 @@ -label: 'Reference' -description: 'Technical references for ToolHive' -position: 60 diff --git a/docs/toolhive/reference/api.mdx b/docs/toolhive/reference/api.mdx index 38631e3c..a06d6ee2 100644 --- a/docs/toolhive/reference/api.mdx +++ b/docs/toolhive/reference/api.mdx @@ -1,7 +1,6 @@ --- title: API reference description: Reference documentation for ToolHive's REST API -sidebar_position: 20 hide_table_of_contents: true --- diff --git a/docs/toolhive/reference/cli/_category_.yml b/docs/toolhive/reference/cli/_category_.yml deleted file mode 100644 index 0e0c892c..00000000 --- a/docs/toolhive/reference/cli/_category_.yml +++ /dev/null @@ -1,6 +0,0 @@ -label: 'CLI Reference' -description: 'ToolHive CLI reference' -position: 10 -link: - type: doc - id: thv diff --git a/docs/toolhive/reference/client-compatibility.mdx b/docs/toolhive/reference/client-compatibility.mdx index c66a457c..e3b716f5 100644 --- a/docs/toolhive/reference/client-compatibility.mdx +++ b/docs/toolhive/reference/client-compatibility.mdx @@ -2,7 +2,6 @@ title: Client compatibility description: Overview of supported AI clients and their compatibility with ToolHive. -sidebar_position: 5 --- import ClientTable from '../_partials/_client-compat-table.md'; @@ -33,9 +32,11 @@ To work with ToolHive, your client needs to: ## Automatic configuration support -ToolHive can -[automatically configure supported clients](../guides-cli/client-configuration.md) -to connect to MCP servers. +ToolHive can automatically configure supported clients to connect to MCP +servers. See the +[UI client configuration](../guides-ui/client-configuration.mdx) or +[CLI client configuration guide](../guides-cli/client-configuration.mdx) for +more details. Check the table above to see which clients support automatic configuration. @@ -259,5 +260,5 @@ Copilot for JetBrains supports SSE (`"type": "sse"`) and Streamable HTTP ## Related information -- [Client configuration](../guides-cli/client-configuration.md) +- [Client configuration](../guides-cli/client-configuration.mdx) - [Run MCP servers](../guides-cli/run-mcp-servers.mdx) diff --git a/docs/toolhive/reference/crd-spec.mdx b/docs/toolhive/reference/crd-spec.mdx index 82922d44..fbf2efe2 100644 --- a/docs/toolhive/reference/crd-spec.mdx +++ b/docs/toolhive/reference/crd-spec.mdx @@ -1,8 +1,8 @@ --- title: Kubernetes CRD reference +sidebar_label: CRD Reference description: ToolHive Kubernetes Operator Custom Resource Definitions (CRDs) reference. -sidebar_position: 30 toc_max_heading_level: 4 --- diff --git a/docs/toolhive/tutorials/_category_.yaml b/docs/toolhive/tutorials/_category_.yaml deleted file mode 100644 index 2f3974fe..00000000 --- a/docs/toolhive/tutorials/_category_.yaml +++ /dev/null @@ -1,3 +0,0 @@ -label: 'Tutorials' -position: 10 -collapsed: false diff --git a/docs/toolhive/tutorials/quickstart.mdx b/docs/toolhive/tutorials/quickstart-cli.mdx similarity index 94% rename from docs/toolhive/tutorials/quickstart.mdx rename to docs/toolhive/tutorials/quickstart-cli.mdx index 31be4a40..d009c086 100644 --- a/docs/toolhive/tutorials/quickstart.mdx +++ b/docs/toolhive/tutorials/quickstart-cli.mdx @@ -1,17 +1,17 @@ --- -title: Quickstart - run your first MCP server +title: 'Quickstart: ToolHive CLI' description: - A step-by-step guide to installing ToolHive and running your first MCP server. -sidebar_position: 10 -slug: /toolhive/quickstart + A step-by-step guide to installing the ToolHive CLI and running your first MCP + server. --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -In this tutorial, you'll install ToolHive and run your first MCP server. By the -end, you'll have a working MCP server that can fetch content from websites and -be used by AI applications like GitHub Copilot or Cursor. +In this tutorial, you'll install the ToolHive command-line application and run +your first MCP server. By the end, you'll have a working MCP server that can +fetch content from websites and be used by AI applications like GitHub Copilot +or Cursor. ## What you'll learn @@ -85,9 +85,9 @@ thv version You should see output similar to this: ```text -ToolHive v0.0.38 -Commit: c321ba873f5dcb1d33035d4f8496eb3e22f8b37e -Built: 2025-05-29 12:03:02 UTC +ToolHive v0.1.1 +Commit: 18956ca1710e11c9952d13a8dde039d5d1d147d6 +Built: 2025-06-30 13:59:34 UTC Go version: go1.24.1 Platform: darwin/arm64 ``` @@ -242,7 +242,7 @@ application. Open your supported client (VS Code, Cursor, etc.) and ask the AI to fetch content from a website. Note that you might need to restart your client for the changes to take effect. -For example, try asking: "Can you fetch the content from https://stacklok.com +For example, try asking: "Can you fetch the content from https://toolhive.dev and summarize it for me?" The AI should be able to use the Fetch MCP server to retrieve the content and @@ -328,3 +328,6 @@ If your AI client application can't use the server: - Verify the server is running with [`thv list`](../reference/cli/thv_list.md) + +If you encounter any problems, please join our +[Discord community](https://discord.gg/stacklok) for help. diff --git a/docs/toolhive/tutorials/toolhive-operator.mdx b/docs/toolhive/tutorials/quickstart-k8s.mdx similarity index 99% rename from docs/toolhive/tutorials/toolhive-operator.mdx rename to docs/toolhive/tutorials/quickstart-k8s.mdx index 00a58b49..9fd3d3a7 100644 --- a/docs/toolhive/tutorials/toolhive-operator.mdx +++ b/docs/toolhive/tutorials/quickstart-k8s.mdx @@ -1,9 +1,8 @@ --- -title: Deploy and use the ToolHive Kubernetes operator +title: 'Quickstart: ToolHive Kubernetes Operator' description: Learn how to deploy the ToolHive Kubernetes operator and use it to manage MCP servers in a Kubernetes cluster. -sidebar_position: 20 --- import useBaseUrl from '@docusaurus/useBaseUrl'; diff --git a/docs/toolhive/tutorials/quickstart-ui.mdx b/docs/toolhive/tutorials/quickstart-ui.mdx new file mode 100644 index 00000000..b8c836b5 --- /dev/null +++ b/docs/toolhive/tutorials/quickstart-ui.mdx @@ -0,0 +1,168 @@ +--- +title: 'Quickstart: ToolHive UI' +description: + A step-by-step guide to installing the ToolHive desktop application and + running your first MCP server. +--- + +In this tutorial, you'll install the ToolHive desktop application and run your +first MCP server. By the end, you'll have a working MCP server that can fetch +content from websites and be used by AI applications like GitHub Copilot or +Cursor. + +## What you'll learn + +- How to install ToolHive on your system +- How to find available MCP servers +- How to run an MCP server +- How to use the server with an AI client application + +## Prerequisites + +Before starting this tutorial, make sure you have: + +- [Docker](https://docs.docker.com/get-docker/) or + [Podman](https://podman-desktop.io/downloads) installed and running +- A [supported MCP client](../reference/client-compatibility.mdx) like GitHub + Copilot in VS Code, Cursor, Claude Code, and more + +## Step 1: Install the ToolHive UI + +First, download and run the ToolHive installer for your system. + +- **macOS**: download the DMG installer for + [Apple silicon](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive-arm64.dmg) + or + [Intel-based](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive-x64.dmg) + Macs and copy the ToolHive application to your Applications folder +- **Windows**: download and run the + [installer](https://github.com/stacklok/toolhive-studio/releases/latest/download/ToolHive.Setup.exe) + + :::note + + The Windows installer is not digitally signed yet, so you will need to accept + the warning from Windows Defender SmartScreen. We're working on getting a + signed installer published soon. + + ::: + +- **Linux**: download the RPM or DEB package from the + [releases page](https://github.com/stacklok/toolhive-studio/releases/latest) + and install it using your package manager. + +For more detailed installation instructions, see the +[installing ToolHive](../guides-ui/install.mdx) guide. + +## Step 2: Find an MCP server to run + +On the initial splash screen, click **Browse registry**, or open the +**Registry** page from the top menu bar. This page lists the MCP servers in +ToolHive's built-in registry. + +:::info What is this? + +ToolHive maintains a curated registry of MCP servers that have been verified to +work correctly. The registry includes information about what each server does +and how to use it. + +::: + +For this tutorial, you'll use the "fetch" server, which is a simple MCP server +that lets AI agents get the contents of a website. Click on the "fetch" server +to start the installation process. + +## Step 3: Install the Fetch MCP server + +The Fetch MCP server doesn't require any special configuration, so you can +install it with the default settings. Click the **Install server** button to +start the installation. + +Once the server is installed, it will appear on the **MCP Servers** page. + +:::info What's happening? + +ToolHive downloads the container image for the fetch server, creates a container +with the appropriate security settings, and starts the server. It also sets up a +proxy process that lets your AI agent communicate with the server. + +::: + +## Step 4: Connect an AI client + +On the **Clients** page, you'll see the supported AI clients that ToolHive can +manage for you. When you connect a client, ToolHive configures it to use the MCP +servers you have installed. + +Click the toggle switch to connect the client you want to use. + +:::info What's happening? + +When you connect a supported client, ToolHive automatically configures it to use +MCP servers that you install. This means you don't have to manually configure +the client each time you run an MCP server. + +::: + +## Step 5: Use the MCP server with your client + +Now that your MCP server is running and your client is connected to ToolHive, +you can use the MCP server's tools. Open your client and ask the AI to fetch +content from a website. Note that you might need to restart your client for the +changes to take effect. + +For example, try asking: "Can you fetch the content from https://toolhive.dev +and summarize it for me?" + +The AI should be able to use the Fetch MCP server to retrieve the content and +provide a summary. + +:::info What's happening? + +When you ask the AI agent to fetch content, the large language model (LLM) +determines that it needs external data. It discovers the fetch tool provided by +your MCP server, instructs the agent to execute the tool with the URL you +specified, then receives and processes the webpage content to create a summary. + +::: + +## What's next? + +Congratulations! You've successfully installed ToolHive and run your first MCP +server. Here are some next steps to explore: + +- Learn more about MCP concepts in the + [MCP primer guide](../concepts/mcp-primer.md) +- Try [running more MCP servers](../guides-ui/run-mcp-servers.md) from the + registry or from custom sources +- Learn about [secrets management](../guides-ui/secrets-management.md) for MCP + servers that require authentication +- Learn how to + [manually configure clients](../reference/client-compatibility.mdx#manual-configuration) + that ToolHive doesn't automatically configure + +## Troubleshooting + +
+Server fails to start + +If the server fails to start, check: + +- Is Docker or Podman running? +- Do you have internet access to pull the container image? + +
+ +
+Client can't use the server + +If your AI client application can't use the server: + +- Make sure your client is connected to ToolHive (see Step 4) +- Restart your client to pick up the new configuration +- Verify the server is running on the **MCP Servers** page +- Disconnect and reconnect the client in ToolHive to refresh the configuration + +
+ +If you encounter any problems, please join our +[Discord community](https://discord.gg/stacklok) for help. diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 13865797..0ee4f7db 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -97,6 +97,12 @@ const config: Config = { }, // Replace with your project's social card // image: 'img/docusaurus-social-card.jpg', + docs: { + sidebar: { + hideable: false, + autoCollapseCategories: false, + }, + }, navbar: { // title: 'Stacklok Docs', logo: { @@ -107,11 +113,31 @@ const config: Config = { }, items: [ { - type: 'docSidebar', - sidebarId: 'toolhiveSidebar', - position: 'left', + type: 'dropdown', label: 'ToolHive Docs', - className: 'navbar__product-link--custom', + position: 'left', + items: [ + { + label: 'Home', + href: '/toolhive', + }, + { + label: 'Tutorials', + to: 'toolhive/tutorials', + }, + { + label: 'ToolHive UI', + to: 'toolhive/guides-ui', + }, + { + label: 'ToolHive CLI', + to: 'toolhive/guides-cli', + }, + { + label: 'Kubernetes Operator', + to: 'toolhive/guides-k8s', + }, + ], }, { href: 'https://github.com/stacklok', diff --git a/eslint.config.mjs b/eslint.config.mjs index 5f29c27b..4b3cc385 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -39,6 +39,16 @@ export default [ }, }, + // Config for _partials with JSX props + { + files: ['docs/**/_partials/*.mdx'], + rules: { + 'no-unused-expressions': 'off', + '@typescript-eslint/no-unused-expressions': 'off', + 'no-undef': 'off', + }, + }, + { settings: { react: { diff --git a/scripts/update-toolhive-reference.sh b/scripts/update-toolhive-reference.sh index 9097da58..b3baac16 100755 --- a/scripts/update-toolhive-reference.sh +++ b/scripts/update-toolhive-reference.sh @@ -1,4 +1,6 @@ #!/bin/bash +# SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +# SPDX-License-Identifier: Apache-2.0 set -euo pipefail diff --git a/sidebars.ts b/sidebars.ts index 3d2feccc..c7797400 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -1,4 +1,5 @@ import type { SidebarsConfig } from '@docusaurus/plugin-content-docs'; +import { buildCliReferenceSidebar } from './src/utils/buildHierarchicalSidebar'; // This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) @@ -13,8 +14,116 @@ import type { SidebarsConfig } from '@docusaurus/plugin-content-docs'; Create as many sidebars as you want. */ const sidebars: SidebarsConfig = { - // Auto-generated sidebars for each project - toolhiveSidebar: [{ type: 'autogenerated', dirName: 'toolhive' }], + toolhiveSidebar: [ + 'toolhive/index', + + { + type: 'category', + label: 'Tutorials', + description: 'Step-by-step guides to get started with ToolHive', + link: { + type: 'generated-index', + slug: 'toolhive/tutorials', + description: + 'Learn how to use ToolHive with these step-by-step tutorials', + }, + collapsed: false, + items: [ + 'toolhive/tutorials/quickstart-ui', + 'toolhive/tutorials/quickstart-cli', + 'toolhive/tutorials/quickstart-k8s', + ], + }, + + 'toolhive/reference/client-compatibility', + + { + type: 'category', + label: 'Guides: ToolHive UI', + description: 'How to use the ToolHive desktop application', + link: { + type: 'doc', + id: 'toolhive/guides-ui/index', + }, + items: [ + 'toolhive/guides-ui/install', + 'toolhive/guides-ui/run-mcp-servers', + 'toolhive/guides-ui/network-isolation', + 'toolhive/guides-ui/secrets-management', + 'toolhive/guides-ui/client-configuration', + ], + }, + + { + type: 'category', + label: 'Guides: ToolHive CLI', + description: 'How to use the ToolHive CLI for managing MCP servers', + link: { + type: 'doc', + id: 'toolhive/guides-cli/index', + }, + items: [ + 'toolhive/guides-cli/install', + 'toolhive/guides-cli/registry', + 'toolhive/guides-cli/run-mcp-servers', + 'toolhive/guides-cli/manage-mcp-servers', + 'toolhive/guides-cli/secrets-management', + 'toolhive/guides-cli/client-configuration', + 'toolhive/guides-cli/custom-permissions', + { + type: 'category', + label: 'Command reference', + description: 'Detailed reference for ToolHive CLI commands', + collapsed: true, + items: buildCliReferenceSidebar(), + }, + { + type: 'category', + label: 'API server', + description: 'How to set up and use the ToolHive API server', + link: { + type: 'doc', + id: 'toolhive/guides-cli/api-server', + }, + items: ['toolhive/reference/api'], + }, + ], + }, + + { + type: 'category', + label: 'Guides: Kubernetes Operator', + description: 'How to deploy and manage ToolHive on Kubernetes', + link: { + type: 'doc', + id: 'toolhive/guides-k8s/index', + }, + items: [ + 'toolhive/guides-k8s/intro', + 'toolhive/guides-k8s/deploy-operator-helm', + 'toolhive/guides-k8s/run-mcp-k8s', + 'toolhive/reference/crd-spec', + ], + }, + + { + type: 'category', + label: 'Concepts', + description: 'Core concepts and architecture of ToolHive and MCP', + link: { + type: 'generated-index', + slug: 'toolhive/concepts', + description: + 'Learn about the key concepts behind ToolHive and the Model Context Protocol (MCP)', + }, + items: [ + 'toolhive/concepts/mcp-primer', + 'toolhive/concepts/registry-criteria', + ], + }, + + 'toolhive/faq', + ], }; export default sidebars; diff --git a/src/components/ProductCard/index.tsx b/src/components/ProductCard/index.tsx index ef44d0cb..0066120a 100644 --- a/src/components/ProductCard/index.tsx +++ b/src/components/ProductCard/index.tsx @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + import React from 'react'; import clsx from 'clsx'; import useBaseUrl from '@docusaurus/useBaseUrl'; diff --git a/src/components/ProductCard/styles.module.css b/src/components/ProductCard/styles.module.css index f2e0494a..5101f816 100644 --- a/src/components/ProductCard/styles.module.css +++ b/src/components/ProductCard/styles.module.css @@ -1,3 +1,8 @@ +/* + SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. + SPDX-License-Identifier: Apache-2.0 +*/ + /* CSS Custom Properties for theming */ .card { --card-background: var(--product-card-background-color, #ededed); diff --git a/src/components/ProductGrid/index.tsx b/src/components/ProductGrid/index.tsx index 7428aa9c..99d67fbb 100644 --- a/src/components/ProductGrid/index.tsx +++ b/src/components/ProductGrid/index.tsx @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + import React from 'react'; import clsx from 'clsx'; import styles from './styles.module.css'; diff --git a/src/components/ProductGrid/styles.module.css b/src/components/ProductGrid/styles.module.css index b25778f9..5bd18db6 100644 --- a/src/components/ProductGrid/styles.module.css +++ b/src/components/ProductGrid/styles.module.css @@ -1,3 +1,8 @@ +/* + SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. + SPDX-License-Identifier: Apache-2.0 +*/ + /* Base grid styles */ .grid { margin-top: 3rem; diff --git a/src/css/custom.css b/src/css/custom.css index 9a224d4f..0ecd7ae2 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -1,3 +1,8 @@ +/* + SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. + SPDX-License-Identifier: Apache-2.0 +*/ + /** * Any CSS included here will be global. The classic template * bundles Infima by default. Infima is a CSS framework designed to diff --git a/src/css/footer.css b/src/css/footer.css index c4ade7d7..ce41bbc8 100644 --- a/src/css/footer.css +++ b/src/css/footer.css @@ -1,3 +1,8 @@ +/* + SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. + SPDX-License-Identifier: Apache-2.0 +*/ + /* Footer classes to match the style of stacklok.com */ [data-theme='dark'] .footer__logo--invert { diff --git a/src/pages/index.module.css b/src/pages/index.module.css index c7073cc9..e52619f5 100644 --- a/src/pages/index.module.css +++ b/src/pages/index.module.css @@ -1,3 +1,8 @@ +/* + SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. + SPDX-License-Identifier: Apache-2.0 +*/ + /** * CSS files with the .module.css suffix will be treated as CSS modules * and scoped locally. diff --git a/src/pages/index.tsx b/src/pages/index.tsx index c0d76c94..250a65a1 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + import React from 'react'; import type { ReactNode } from 'react'; import clsx from 'clsx'; @@ -43,7 +46,7 @@ export default function Home(): ReactNode { linkText='Read documentation' > ToolHive mascot ToolHive simplifies the deployment and management of Model Context diff --git a/src/redocly/redocly-codegate.yaml b/src/redocly/redocly-codegate.yaml deleted file mode 100644 index 84ccd17c..00000000 --- a/src/redocly/redocly-codegate.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Redocly config for the ToolHive API -# NOTE: Only supports options marked as "Supported in Redoc CE" -# See https://redocly.com/docs/cli/configuration/ for more information. - -extends: - - recommended - -plugins: - - plugins/replace-servers-url.js - -decorators: - servers/replace-servers-url: - serverUrl: 'http://localhost:8989' diff --git a/src/theme/NotFound/Content/index.tsx b/src/theme/NotFound/Content/index.tsx index c5797963..3dbce347 100644 --- a/src/theme/NotFound/Content/index.tsx +++ b/src/theme/NotFound/Content/index.tsx @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + import React, { type ReactNode } from 'react'; import clsx from 'clsx'; import Translate from '@docusaurus/Translate'; diff --git a/src/theme/NotFound/index.tsx b/src/theme/NotFound/index.tsx index 079e5d9c..96fdfb47 100644 --- a/src/theme/NotFound/index.tsx +++ b/src/theme/NotFound/index.tsx @@ -1,3 +1,6 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + import React, { type ReactNode } from 'react'; import { translate } from '@docusaurus/Translate'; import { PageMetadata } from '@docusaurus/theme-common'; diff --git a/src/utils/buildHierarchicalSidebar.ts b/src/utils/buildHierarchicalSidebar.ts new file mode 100644 index 00000000..19867470 --- /dev/null +++ b/src/utils/buildHierarchicalSidebar.ts @@ -0,0 +1,186 @@ +// SPDX-FileCopyrightText: Copyright 2025 Stacklok, Inc. +// SPDX-License-Identifier: Apache-2.0 + +import fs from 'fs'; +import path from 'path'; + +// TypeScript interfaces for better type safety +interface CommandTreeNode { + id: string; + label: string; + children: Map; + hasFile: boolean; +} + +interface SidebarItemDoc { + type: 'doc'; + id: string; + label?: string; +} + +interface SidebarItemCategory { + type: 'category'; + label: string; + collapsed: boolean; + items: SidebarItem[]; + link?: { type: 'doc'; id: string }; +} + +interface SidebarItemAutogenerated { + type: 'autogenerated'; + dirName: string; +} + +type SidebarItem = + | SidebarItemDoc + | SidebarItemCategory + | SidebarItemAutogenerated; + +interface HierarchicalSidebarOptions { + /** Relative path to the directory containing markdown files */ + dirPath: string; + /** ID prefix for generated sidebar items (e.g., 'toolhive/reference/cli') */ + idPrefix: string; + /** Separator used in filenames to denote hierarchy (default: '_') */ + separator?: string; + /** Whether categories should be collapsed by default (default: true) */ + collapsed?: boolean; +} + +/** + * Builds a hierarchical sidebar from flat markdown files with separator-delimited naming. + * + * Parses files with naming patterns like: + * - tool.md -> "tool" + * - tool_command.md -> "tool" > "command" + * - tool_command_subcommand_action.md -> "tool" > "command" > "subcommand" > "action" + * + * Each level shows only the command name (not the full path), creating clean navigation. + * + * @param options Configuration options for building the sidebar + * @returns Array of sidebar items with hierarchical structure + * + * @example + * ```typescript + * // For CLI reference docs + * const cliSidebar = buildHierarchicalSidebar({ + * dirPath: 'docs/toolhive/reference/cli', + * idPrefix: 'toolhive/reference/cli' + * }); + * + * // For API reference docs with different separator + * const apiSidebar = buildHierarchicalSidebar({ + * dirPath: 'docs/api/endpoints', + * idPrefix: 'api/endpoints', + * separator: '-' + * }); + * ``` + */ +export function buildHierarchicalSidebar( + options: HierarchicalSidebarOptions +): SidebarItem[] { + const { dirPath, idPrefix, separator = '_', collapsed = true } = options; + + const fullDirPath = path.join(process.cwd(), dirPath); + + try { + const files = fs + .readdirSync(fullDirPath) + .filter((file) => file.endsWith('.md')) + .map((file) => file.replace('.md', '')); + + // Build command tree + const tree = new Map(); + + for (const filename of files) { + const parts = filename.split(separator); + let current = tree; + + for (let i = 0; i < parts.length; i++) { + const part = parts[i]; + const isLeaf = i === parts.length - 1; + + if (!current.has(part)) { + current.set(part, { + id: `${idPrefix}/${parts.slice(0, i + 1).join(separator)}`, + label: part, + children: new Map(), + hasFile: false, + }); + } + + const node = current.get(part)!; + if (isLeaf) { + node.hasFile = true; + } + current = node.children; + } + } + + // Convert tree to sidebar items + function treeToItems(nodeMap: Map): SidebarItem[] { + const items: SidebarItem[] = []; + + for (const [, node] of nodeMap) { + if (node.children.size === 0) { + // Leaf node + items.push({ + type: 'doc', + id: node.id, + label: node.label, + }); + } else { + // Category with children + const categoryItem: SidebarItemCategory = { + type: 'category', + label: node.label, + collapsed, + items: treeToItems(node.children), + }; + + // Link to main command page if it exists + if (node.hasFile) { + categoryItem.link = { + type: 'doc', + id: node.id, + }; + } + + items.push(categoryItem); + } + } + + return items; + } + + return treeToItems(tree); + } catch (error) { + console.warn(`Could not build hierarchical sidebar for ${dirPath}:`, error); + // Fallback to autogenerated + return [ + { + type: 'autogenerated', + dirName: dirPath, + }, + ]; + } +} + +/** + * Convenience function for building CLI reference sidebars. + * + * @param dirPath Relative path to CLI documentation directory + * @param idPrefix ID prefix for generated sidebar items + * @returns Array of sidebar items with hierarchical structure + */ +export function buildCliReferenceSidebar( + dirPath: string = 'docs/toolhive/reference/cli', + idPrefix: string = 'toolhive/reference/cli' +): SidebarItem[] { + return buildHierarchicalSidebar({ + dirPath, + idPrefix, + separator: '_', + collapsed: true, + }); +} diff --git a/static/img/toolhive-icon-honey.svg b/static/img/toolhive-icon-honey.svg new file mode 100644 index 00000000..8b916fe6 --- /dev/null +++ b/static/img/toolhive-icon-honey.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/img/toolhive/network-isolation-dark.webp b/static/img/toolhive/network-isolation-dark.webp new file mode 100644 index 0000000000000000000000000000000000000000..63ecc95164e350dae5523ccb49f5e6ba48cfa32c GIT binary patch literal 81468 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�m0lTt) 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 Ovz-kcBT|}w_x>+Kbhq>X literal 0 HcmV?d00001 diff --git a/static/img/toolhive/network-isolation-light.webp b/static/img/toolhive/network-isolation-light.webp new file mode 100644 index 0000000000000000000000000000000000000000..692d2155bb9c3eb8d91c6fbb1a6258160d48c0ff GIT binary patch literal 83974 zcmd?RWl&t})-8;?OCY!tJh;2NYj7vHdkF6C?(Xhx!QCB#yE}Z@JLH^w_Q`&~_g3A1 zH}#~en}S}epEc%~V~n{#PE<(fMHmo3S&&agNrnaQ;>Yu|X^>Pvay$qpPyhe`;@svJ zryEU&*B2e!*R*X@#ur7F<_TB-EYjEI*K&HW*T)XbXEu*BvNH-^=?-Sp$Y+WtZ)xW6 zmv=8?9%=V(xgH>o+z*}4hs(ebl2I?HkI_yZ-?au_-+7cd1YQEXz&^3xoo)(WukLbb za|d|PzdS!jpT3?HkAr7`@B5FvzP{FKX~WN2YQt}GFSx64ue`dyDxOI`ioe`Gp>@!l zm+#>^uC>1aV9UH%KULp*Y|I^!-f@@VvOM+Qr{9L3YmK)Tz52d9AHQy{VLi2vdl-lX@QUT7V8)INK?;6KsdD_^gjzfN+OdSt&s-w9uEZ+LWm>3o3S*V^Z9 z^RRmMzXQFR+v1*RFZKBPvhZB}e0pzLdTRHQ`XYaw|5*OG7T3=668Sv$$b6K46JGJ- zL-w|(z8b#bKj%MkKfzym7(op2*4*~%tVj2c7x*vfkGrq9R~{Mdz1(51iZ8t{%ul2@ z?N9CdTw7dMZ8k5X9@S6t57^J_kEPGAuW>GeI0GYD6=FhFT|$VGy^_sBWA<7aJ7EEN zn|UkQMor~qm%;+_*76n;)ho(#&e>UH4Tbf_3n#^gEfW(c%L+?1X19vhtHygl7UbrO z2yw0#tHwh5?iBO-RAug;&?Dj*AtZ0fiwAqeCU~HnQa86W+35;;Q3%v$6XX6IX?#5 z@Gu=|gB=62TY9!j$JOqf!`3_bKh|b5a(BdEMeuMIRo@<9wPb5eNs#!$A5<64dnj6O zqUwRq_4bDM6zjeh?(LvSc1|Sg23sg+#X3(v3$IE}MP5DUiLjUn-Mw4?$6!pkrZBL;Sm9yAlf)N3 z#Lhmxd6NZ;6R()opxJG?jI9V9W394gdVfX-HMG|I{)hk~VNo(fhbz6IFD#ls!ldSpW#rRK@o3!tPvHBB$ST-zm5MPj%Vnmw zW5-^kZ?-j$VE-(TQ681#kCjd-<-6^Lf_=p1e)!xiUV7q5)(36GS+2<}XBAfeaB|r~ zA5BPF9B4S(%QY%Li74j$}RQE`ZX808(taj zodX(FV$#f7+w`)$PWP*ttw$aB2!kpr8UJQF^5iI8;Kv-G=DFKOkAM?D!O|WoypStq z;9Wlymq$}#->ZM*hz~3Q&Aq(P%71Rtj5}EE{?Ec-4Fr!);rR9HznSOHuO#nixBaZ7 z2udt;{V-qc&z4>_dhqr(ayi4%7-gc*HF`VJZ%F%zx4%E4D7&&an@;`lU6~~;RQkaJ z2@KeGtp*zylpbuN2pxx^d^G0>J!nM{n&=MY&*H&FjCc)!Te+Y#zp(rR&c9zdFjOu- z;Vz}q>JLsat9ErCkN)G~H*EMH>kqmD;s7-0HX(_PtiNo5HR-38lGn>sJq+I;2n%IySNoll%%D1U6eqy}!1g%m|$w~cP` z!o4(m6xD@@P!AGlN$KlkktYdcLPYRclqjHzP2{(M>Z3y7J;F&uD~rZI_7M|+{OCtz z_wn5K^|2H=OAepCGnDei)PU6^4_YkqPZGoZfDGd%dK6uJu9_ffJA=rJD!espfsSVP znbq>f$jJqx<;YtZ#}--*=d-%1{*QO861c0;LRkNkrzCTr!LH5Yl;!}m+_2q$ zAXn-T$Xv2d5L3Onb0VM2^}EG`xhx&Fb5z$MjrW!tzq_kn-$^tDUB&b!*-P$+DXxj< z;gYu4_Awyk$M+dpr$*2}m=+P*s$^vd9PDQ`;HfY-4ev;$pgrWhP#qP> zCiWog+taV`N5}V=M&?hx1Pp{w6~!r^s-ElEQJqa-|4G&VDjhRzN+z`Gt)8T{V733i z2Iq{sV`6A1%O@mvV5sF$1oLd%KYRQ>9nnvK_lrSM9daZmu@NK(B|C(s9sG-k1#}S7 zz=r=@jhxZ5Z-*@4|El54650almpMYE>MM;pmC60w{j6q`vm$jHDEin%n14_q|B@y< zL^yA9g-s$5KW7d)Dj9^;R1G^wFjg&c376mN?!J;KDH}<3g@VHR+<>^zC0U8`0J#FS zf^UhO(4RY`rvs#LsZuzIrX?7y81DbQzOO{@N{ z&!D$A>L_H@A4@)CMy1;gBeDa1qHkvr8djKbYj-B@!1y1VxQ+a!xPiPNiTK z8yN;BR<7iaw=JI^KxgrD<_VYMsR|CHam3yMw2m0N0k1KU)-4KI6=XM9oE(g1RzuXyTzs`@ScifCS&pH5rQ-S<>&1eW7$iT5`$3s z)~-GuuR!5%1T0*VZltB1TS`a$+wPBMyLP^Nq_We?U8D>}yNv=a^A9@hm#qAF3B$-*`tOeXb!0lG7bFfG+a~E9{w(s! zs%~6MIYOjgpnboCqa!GNE0pkQb*Z>x(($#vqgSZL>o+L|yvrFR>W?~32eV~(54J#v zx!QgCS#DX2l!gyp^>w}I!k;U2-ru`m=xhgU{%_ru;i_t5I%c%x&+x#bi|BK20e8N23`A4_;(HZbmSm=}`Zom+Dk@OS? zxc`3@PFB#V5&TbqQN!qGnlg7q%2NAIa|1$Yp(1#7gHHAdE5bJ(u*85syC0_}c>8Ox zSFyMqdG$EyuJUmo4qXRQ_Cd>+rcZPv0DwdAKcoK2!>T8r=5l$Y%!cp&5t$Gp^P6 z9G))&hYKZl;ukjEV+e>6MBzbz_{4=3eW~(HhC8R{)mXBIIS5z#nBr|c$QkHEtH^($ zx&LypmmlA_QRLmPe!$Z;%iBZN!Yh_zx)!wm5gY5ISSd*^Ah4IDp2zFPp`2!`oU{Cl z^B*+rpB8%p{MRL7ZV>oskrUet#$M-V^vmmfi~rU;f8+95r!7clPP#LOPf1bRmX&3N z)^4;`NB^bQ-cEH%0E6Wn0~t900HEXVx$e*60V2edaUH%7k z{Gh)#om9hns1(^x>jA;c9ao@%?;jmcpJ+cLxZsbgK%5p)LsiODF9$heX{TN&G+DB; z!$dji=l#Lj49_W1upVSDIi0qq_oe) zNVs1Em6$D1w8Hd1)up}?3;dIZG|O9rf@T{IZjS8%EY^X7}N(muJ-i_EeTZMky4@ z&6>awhtm-%mpG~DV6ag!EH(+)xz2~&@Fym%y6MnCW3X&%VZ^?n zWBwu9ej~{K0;;A*8h47Yl4%T&b4$OI?i}xdpGfK#jeK(_KMGXxx%L>a!WQno48woF zKYTQ}VqUJCEWgULJf>Vo#CDN|+h4UQ%g=_i*h-<1SRDyAJW*yD#SNyxN%5 zp5MchxL;cuNkgX!5+oVKoNsviO$Zl6!6}^op`+*7uW)l`9}YvBxC1X2PA8-Ux5$y^QY;&`l0%5Ho>GsaSFzX z7l4QB4(%l7wy0(UO3P8)PkB*$4gH<`{=$pQo$>%|7pEI@hT(aLJzv47^?vo8GOT#U zoH=&l{H&MUCgy1yOT_2FPl{DCCSNd%j0o1!WTK4BHBm^^RN-~!WmwQ4xqL#=9O9hM z>|+X)kr&I&cNf9V+`ybk2S1rvVt_Uo;jiPk{g-?A3s`^VoRh)k;l%|c&Y}C(a;2_` z%I$tzP7fS-2&>&cw~*EE2D^Qc37O1Jkm(MFgU4T$9&fe(M-W>LkXsMhCLyk z`%p#R{xFS`zVc*jH;0frZ4hZ&J(9>ybN?W4UkN2H=QUXRc>`zIT3c8!V_ssLy$JJ( z!|FR4of7ghi_-_zgEGA>5U1XU1SVMwaoWk*qj-&^n(HnWag$$-;x`w3Ob~w#770&qTykMt+~cu_8)de?WjFj@DAfRQ;xRaVn6m&XJmb3KyH-GzhCGre!{ix=PE*7HiL^?}w&iAG#P$_PxbEOkOs9fNQS&O$GlFbN^v?0G4K# zewfL9?u)a|#r6PViKWT`uG~M+8Gn4_ZK?VTiobg5FEfdZVT%M$`ZNB)CJ_krL_U+# zY$luPv2|ue&etw*lEniYS1RtQ(bY(C5a6Xk7grQTrIZwo=cm6N2YER6C6LAX+_Fp( zat(he^+%j&Y#I=!Ncq;C{+^Zp(eHyOT7QLFZy&hb>wj=!CCV+T05>o!~8NlQ>3UsQ8=;Ibl}3=fugI@4ZxpZ9=XBK!|A^ zRqCTL)OTfkW9OL9gVFab36zJ{7-D`)khhcb)$q z=F@)`-9gd-Mw{o-b~<)=%U6NRW>$TE9ZFX4ipOM$)Rcv@*ju(c)lXZx1>M25=JPS* z4NuIR2R{AW_hjXHvjSfm19t)%LU-j_XpK0A^^S+q{93T#)ismA8q_vTy_LImcQ_x1 z7>?29j z&>);A4pVlMC(=)T51NK3qz=g2=#B0d1D{bzEGFEncC38&pX0UvO3wZiVL?pLm$3aa z=^QJBB8?MGSG>wJ_>UC#mdWF1-`@;k(Z;|Vw% zf8@!%a%SLlxBoc8`BIIRp6HQ08Z2DEglM7TWyi&Z0keA$iBb^@_;*6?@YmL;tub&-xusri~jZg)y)U z%G>nd*Jk}|*M2F9IZ+K5^?ZTXW-+9FLb4FCm%w|I58okP}@rLo=DVev+{~xJzA;YMdEVc-Kk&E!S6uxv-3#l@_yg_88GC0i{aA*7N7o9W)^%wmx_tTMhc0V zg%>&9r%h<@PKNZ!uT)Xs2+)Iu#(eMty1zcp;KzcZGZyqy+!QyLIB6940ZFuxhyACnyS9&`e@*LFXj zm|lGztLo5?jsWBrk?l?|=vzYmVu!!&oyjYL(8v`2aShZe2s`}qx=epkIM+S?dca>l zViXicN>U(m2wK#iBYLulW^OfHt&Ni3Dde6^;8+WkzeA>To*(&lR1^0$`uh9rf5P1%!Gr^W3cS? zbZOybMv{+}9jBGa8}eRmLtOGJ*8f-o`*l++-d0-#IlRC!o|n@KjUH4HOJz6=Z8`^H zjCdxuIrRgs%U`3Of050vIQTzv@Hoq9R2}02oNjOAadMR@?g#Rtj+H;ydWcj$@f-$r zDD(|leT&xyv-c5t=F79>Wro7H}4fh zA@eqWW{sh@p!)5-4Sz940zXC`ZwZkgYQfty?}M!F^~QUc%2lL)zIEbFXAldidv4%y zQ@q_V@b9Cu6foebd5s3u52?}aAV^j{E9^UoV-x=6{*B)^m|tTTjA5CJIf2nJ^9qJI zEZw-f9Xnx0`Zsaq*?H(LbqDQ0r!#yc!38(s!3hc#AZ*yB z1&!c3r`WOzbvVClmwzR9_-e4z8?y&p$P1AK7u-z^Cn#5d@ZBLTXcXH!&t6cj%jJ1U z3qau*U}z+mY#dF_3y}dE%}*UGC|3sm+c76<3Ol&OK~S#G^z~m2Awj87U}Il9n&m zo`Fh@!?es-r2^W2z(?kta5CupR-_1o6*e`Y+FfBcT2Q1St<`9{4wahm-nr6%4d_6I zkHkCcY{)xOp$O!Evu!z4W#QZIDIEYWuZ;JUMBJ*Q!wui=KBKjF=_ zvwqc`s=F*t0)Q43Lmgdf<0q0_KmedEX(ishs>U=_-7V*# zSfg9<|0n(%iy9S}6y^4L7~%`&CaDh_7QqOg+_70B7Xw}iU<|ZQ+mPD#@?*k%e=ZF* zUk%EI0c+MfK_d>mXNJ`f>MQ#?#u|d{oCTZU^R-89htZ25-I%p!(vOS#YZm3IPOlK8 zKs^d3lbUo<#1i|l$ZdFy1pp><^mj+lsxxm_Xv#qrbl3@>OKpG^C}7Qn2r=`6&j0`< z+}KR)kww8LyAji*bMhHSziutlrrcKZP`nCo?{<#1`7NfnOnV3 z&TTkNN0OuBoTFvb=6v)7Nu=2HFhI#1*?Wnl0It|1=afMjT%yDGag283?wk!9+P|I?;!w+t}}{mIxU< znlYzLvz?M-#^hsVMCFzTu#DqZ_HIKtyB4}kkI-mdTfu*+wUdO zlMDb*n0lk0gAYnRE<#0&HvkNVA6Dsb?`JqbsfxslmNA-L3|osJrQe`DuK0 zZC%0l5_h5vY2{G!2yk4G{LFV0t}LS%v5wDPX7MGWnQ)#jH?JG`hOQaGI@n-flj<~n z)vXe7R%fr7y&z5w&}oFX7T!ndXpV5eyTF@{3KY`{fWHIXPj!_W+6FrzXTe5(!a$`W zLIaFZ1j;~`4G1ihirJriH?LCn{`UI9Oo||B#`0`pz%pG+3TSFjH$fn+RI0Tev;w1fbr4#F3ms>9YSr7?a&k=P z#4s>Hgng9Z@Y4{Vl`%MgNM5kg5kU$RT0VWC;;U+|-Z8KXri2bLaG_9-G!d&tDg#qp z5}~f@8bnluRb7~{8yQr5h(pnf;h$cfj6bbAe5HPEGTM%Y+H%Yot}r^}a*052L2dl zCRfY`r>K(xqOvaDPOn;72T?5vMyJGP5q3B+E3tR3^$j@m6ogf_IH=h|4P^6DT!3>3ioIcfgBE&9(OAGBEHf%@p^swA`7mN#&f>}6iwYzNxLzxjKg%z0pso@&O0|&*VU`^JC#Ov+(h&DX_(A)im5aPsV(^<*bQ89md7fV%sQ zaJ;ZL6aJ@-P?oUog2*2Hho z=8!k$<-8$-&<~V3f>@X(AUQ%q5@$lXxd(}PF1UdWVb$NgK^cl0iHzF>;Kfbs`IA6I zQ$oPILcda+&L;s);IJ&VY8+jjI=gA-?x}a>%&}qR#W)h8qY}d7`0V6O2BoxXS`T<2ftNVFRiJDaK^q7W9<_ z79F?%v7@NfmIdm=LgFx&d~!BH=jYw3Ew_25dLPci$C#?Eavx({WKm;T>S+!q%YD_I z&Pf^5Uh7MT+A7?`JaST`MDdcq9qb{P5zeR+dzZq=w_Ib4A1vqq(u`iPjGab*B%;7U zc|)3;R=qQ%@lZI39s*Ow8*R%a(%u&0C#5)YYli&dNHUGjdpt1h9y8J5dLtXJI(3Xs z`Pt%2LHm4yvUCiEA4crtcOR3e8~iQeBnvL|V{_&ejPQHG)8gxh?ra+E#Eo>YJt3oOg&BCW5RinyO)9Kx4AEgPt}V15Ss5nEdDv?;B6mXz(%Btl}T17|1}0g_>* z!JRw`y>26zGsIZk#N5WE{r+~akF3}Am@e1A)Aj<{4RQP&`xssZF$^8Q@m#f^&rF`n z&29n-o@jFaK;^wp7*Tv!@gAdA; zp0Ddns+v&PE_~1nwq1NE8NDE}!NTY>WOD%2F<%m;Z4y7Sb=G@}aajmkZrCMM#m7D&UY92bYLD+x8m5QSF92cS;{O(J_MBf&8|qV;uS+&M^D;XoShd)*SpVgkzm)MlNCJL{4nSt zAyCkalzui_pLUYDmyrb%no%9`P4&o<0=NrMxW!VHwUzK{WIhgb5&;Ech}lo#KcH=9 zRPhgI)^nqrsVTT{O->t6f%ungeu1bP=Wy{EtIZcZXlPFRK;^XrLS!wUp$rQOMefAZ z%*zgdZ@?`6;H#<`9|A7Obd~0ynj`vd7eCoXk>D07H#Mr0DqgFT?)_|t^2gOyVjbO! z`yQ*FHY+8)%M6T%s>xfS)9z9gpm&uqXiI?|ScT)SiJf1;M;)DTB&vl>h=d9Sf@@nS zvHEbU)=b;3k%zF(_>W2rAyFeF*UxcT^&!P60E>|_z_2AJ5@>+tJrcfNAt#J$XPTEP zXW1O{O#24*%9m-n<27F-;2MtDJHeXkELO(cLIn9LIg`%-Ph_NZuqyUAWK#4J`}WX$ zI_|iVkrQNy5eW{Sy`-GrjA|VawpT*Rb&7LJubL+d&jt@rok0#U!T~(MA>AyNvbROKtzJ}igzH7*xeR5gAmdCJmW1`yb`K0*m zd4{5sTDE6}lwOd9Iw5=0`l)PV2#3H6#lS`+=8gx~bty3<5h?$IwgV2_$6Ct4(+I=@ z^P>bCw1!yCq+KP_O$HnHHc-cD0A|#9-R#kEyQy- zGt{lQ%{%@n0o(g0nJScdfaA5E2E_8b%Swdp(DOy6>UOiKv8W(ChSj&V!I8sez_PZ zUZBi?4#$Rhk=whGx~2lY52ie^a;)+|bb7562F8079y4(V6CDm0iS6|K{2 zB8fg_uLi+X1=uLAuGi2bxkChl7}Ohax4o^x=t67K`Ie~^*^&s1JpLNC2TVN=r7GZ? zOfjr6fD%H)*~AC^Y$$moyg3#7C0pZ`EEGXj&%wPI`J?wUt>+q`ZQ-X&n*l*eUeO{T zldjF66^6LGcX@1=EpnImslAAoadgl-XHDcM4qpk&_(t5hn2(8yk+nyblK@+vuifx@ z(xaUl8eTae)v+uBO_`#{NMiSAvFAr%C9^0IzRZTRqA#Pz#^_Hxn#lw|Q9&u+raiM7 z4=JV}K^$DVQXi08m6gqWs74s(awG(&p4`is8O8R?9gW8z*?VVAlUm5Bq**L1AG#1J zCL?E{J9S@e{k_{^eGguIhUF7eCY7h-eJUGH+n6iSLLvq@Eh80%mP>VGHKKJKC@fd| zzIOztE6rVV?CLm5?EMow^|zE!wX%Y4T8#{u#ncGi2IIhsRy`9u$6znYb_EF=3JjN% zg#{yWssuqiVWe^T6B@GUvTi2c=8{1wb1frlzW~`6MATicC_%Lw!S6E7gnmd>2gZs; z;=A0U`hL8qs~b_Jx_Q+(w>}%&g3}LqMYR5H0C17F+R&=(YspN899*0ygw8GKB%1a6 zyNWe!w52Y^>dVZEbX`I_%TOAyQ1?`pg&_eRV7!^ja{-up0(H^^=*B=Lp`U|E4;VVL z5tuBs(kVLHDR9+hW^v?-wntu%dzmEWYnL1ZD^S6DW)e$Yz^e-*H=ob&CuZQx(#$!) zzvQma6PF*Z<<=7kC*8s+dX#8Wv2L6WKWs?BRHbEF-Hb{*FL97pPLaw);_!^QQ&2zq z3u3t8f1ZBTrZ(QnOdJ|XhLPxqH&9BGPDIJHa@K>P_jVd6SfL7sT7ga8m&_ew7b~PV zmqyfpF;`ja=-I%M&p$Wg^C2ml%w}Gl3E?HH3_WDrY zWEazwtj1uYB^Dh&R&F{4yXuE$&+~7r_f^n5tk#DL_KF>!8^nhPmK4*1_o`%izl(%_ z_|c2o8DVnC*6CTExB5Oj47$|dw{cRnl)Xqzy-#Vd3(4vKI9bIi`8o)!m1Aced}Ft# zpDB_Z!DTF2Hu$b8nJanqgZOCSS-HP2{X)JQSz)4eS+uYPXA58B1RDL?B-=X~Fez%c z$zH4r1P1$)Pc8c}s)JME>Dvry0hPj(wO$pSqAkT{i~MZ`bMNe3aZNX-1=2WK6U$c5 zzl=_UBao4v1h^>6W&1^(Y7W4-jo4( zLUq+&a3=A^$aDna*s)Y9am$dpK%KL~(83cx(WU`;Ck|qcmEj@5?#N`XO|GM``perY z7eJl645*PJr)tWqDw;C$2z2`oqz~oavutP+u=;D4+Hd-H53D@0#6#u9jOMIf!|u1- z-zFp%tgTd}H~Tg;p_n#*25`<~v=eg{^!DU*tct@%i&a>k&92(Kfu)c1rC{T4EJAEz z>KWQq!s|DyL68*Yqu0Wl<+%Lrv57I}b7Kl;*(k_<-?wrZJUi9JS#^7@~%%gqW8=b;i?G5J~*)qCG8$DE%%I&cKLwdsy}{1 zk=`mhCPahgId4CGZwWB%#t;Cx)-#eb;P_p)^@KNXe2xb=2e{o5%EhOUZ4QBU1!VN+ zK@m>F1YdB^$zfA+*tv~m@lln#1W%U==X~b{)+(H?f{$!{6>G>w9rOh)9J5fE?Q6V% z>%t-7M+e6ItNJ>mBie*6Mxik6tD-)Cz`a4x@Kt8QNzQ<35kW(#)) zh6s{s$DWokgYp}swdxoyNQS|Z`?DX1-x$aD_asoVvrN9s zV3bb^ca_;EGAr5(F1EnEbwqyp_FvRJ7AE~K$ zIQuEtTHcS24{DsliO%Py>UtZP6P%S`xSj-=h#AG_ThOJ(?5i~>MkSPOs!!_G4g(b% zMFxU(kIidm6-;UFo@Wi6@|OWWyL4C**N10WuSiu`LI(nWMJpa_O>AcCkcVW+4X}A1 zWQGmj$LtHfE^u*#jf2}_e4nI7Gs?E zJQ$ep`t5 z1U1R%J@Z_wbl>EHO1iWglKR3-`XjmFi9?b3G=!6qO&u)VLH_xK$u1=Dz19&g3|>P) z0$DRHyct?9MNbqlkWw#d5CS#g3*F)8NzPH{Ojq_0mPoh)N-vZsu~jIki_FSvkopgq zGph`h5V<;p8D3?t9MR*Dg<*W0lY5{cu#?iG{A zb8L$^bg)d}?V~ggKE+H_pY@f03i8{GNJP{$ZCX3Qg9P*e=HX$$ zdpeQt!JGNWjc`0`*+mO|gvqLw-^3{>X~~+aOj?6IeUI6+_}QBqh6p(JBV^F|-NLeC zhPOMcn=;jRQh$L1IKEh|9Fh&LsE+`^1|R(G8r`{H{V(pKvmmBOpNDlJLNgX~iEaP@ zRdbvCtVdq*yjN@Mh~VMw`$`QP7Lc7F_j`J`8C-c;->(Az^1dj$&%nn`>S9|BV2@sq zR&09~P9n0uvT!=%1ZWzf!IPi9=e5-)w@a`&g#s=2zvKjA0Pm16-?OqPor$|ik@>oh zooCfECbP=&jCd{$GddbwHPB+HudLj^_S$`)paK$J#s$i1r*8E~6tK>I=$G82Ilz(N zlDBCro;L53H5^HS$}sHH-14kCB3_y%;a^Mofu_Jb__JWp*yHQs5{BiN&}qxqkT;m5 zjm)N<<;|;cJH!=#s8YxQgyPy>xTO#E*gkOCeV%~f4IX-Moec$Qfp4Q;kI7f{GHnkGW zTp?F6OUr$%VIWw`{0wE!(*KV7RW9YJ>mUwQxfQ;2?hLrQF-DvrP0U6d*Wm@x*`13s zUuYL|MH?d?WK0>YXgc#VZPSf!T@Dx8#nqUK*;=x%tTIW64~sLeJx_(nHvm9r98%tk zTIC?s@*7j|7@8fY(KI}O6qA*RJ_f+6JJux2UW9u5!>p^koV|dl&Ic2zAsX^uy3ww3$R z$E4^>A@_VFd%ngWtp;d79=4zF!%i3P46WnxX6< z>A-RS+QNsW=f>2x{oqR>WblqJ{R6c4-NOJ$Mm;>rk;HO=NHCZr!c0zw*9SRPp9IftoL$?#%6)P5P#20!d5tb6$!hEFuUhZ?^(3?RC#$meuv>ycXVT z0G6qaU2~`3=SkF{k+M-4_NDlY?h61CXnboj5aYrbK@sN)0i6DHiiC{_aY zY7EV#fpuLbj83-`{el492d%zdobNI#wqcR1N^bGcdOr>uF&Wh-mg@=GaU5;)&7 za_pEL>C!0<@dNGQYP3K>rs%MBrR+iwt>kO|1`Td>zEf%32r@)Z9khQ7R1<+i0)(g{ zTfzn!3J;~_=T``~!e~3ZWEzzPw9!M6um@+Y$S>lq)@6f-n*t%YIr^6ds>X0|2IIF_ z@j3Y(3}A=Za1QbBR$Gr;n!UFtgYMGI7X^UE%s(hbJu2o)Z5JyL`RWYj_qcw;XL$^s z(!%l*`uM8d38#=*i4{|)Cnf~9j8>O`p`Ci7lkL5f!XOHMLIG3#~kgDcQYQL3!kUbD*@h| z-c@W~6(1mGA_W$F0ZE zoq=fNJ>ILOXDf#mOOSHUcm?9_X>+qMYyp$OlQJuUk9u`Rh8gCu;C|<F^6MF$o33uDjh(l$fZaWZ z4zUm%F+9PgV;dC(>6|@tqv2iV8ixyYrJ*2;abhCc%JIS%G;7{K&&!d+=Uq^qI`^(g z2RiLqrl?DbPMh~yoc=wol<&o_31v=nE$jH5Wy`toZ(Vc8a9Z|)=fXz@r@(1!^k#`v z(?SoX##X_Jrzu*=vDJ$WMh~h`$FYEp^z=)lx{BthWAZO19117BY*tBnuxO7xoJW?h z)H3E?CA&lp(vMGU9XCH|tia^2^$;si%oh5b*nH7`zZy2TvK)-0E1D)<=e%)XaE&b5_@VcrlpEW0r1pWKQ}lbXJDD-8B%`E9TkU>>(H`l3N*W3h91 zFqKb$#nK4oss*u@=YVlJ-9&bwB)WY;dK#wN#o3)a@DC@6fz(1%t=w@aC++Jo%YGu{ z^jN1lmDzFc`Vx)v-G2JVUz4Cs)d#Z^u(7F9tcDM;-+$OK)1q_366l(pI<8pjQ6-%y z5=<^R%g<;n?KX)&Am_I~pf3pjo*|qIr}L~9?Zwi2Vje}r;!LYCNNK=ozXO({3U z6)f5C=)P$cpJxpruc~CAgwU0E0ZlZv3oo2o^=R7C7&xPZ5tDU6NsA5T@iTV2gp2tE zEQA~aI*KzqQ~jaD&Wie(g5VVG+Ks`JGA2rXSzHpsj)$l)Rv2yv#c)&Nr+~;jPG7=o zG!yx`&elM7MWVRv+deb94nPKrL<()r!Z=@6N#)5MbN#ykNa6jtYlu4hx&1Oyr7k+F$a*^lO4OpCtx&2h1z*#qq!I3kx;lH=y}!H(#ytUm%SPp6>)QD_ zX;d^&x_~!Ije}h(3Tl6SH%&E?6JFIiEa-7sAC*T#%PT&lUxtGKkCmjJ7o5KG*=xq>J3QqtnN^S zPxo`~0>Vx32qOrB&QXvxpsrI*rUVe0FS%+*(xZ8&XO8F6Y0H{-UBg{PgbqQ zVO;XvR?weh}KwM?kp0yj_7N%4K^?g$WNVfP>{D;Q*CKS_3T_dYcY6 zQsAHB%*6UsobOIN{33XMY0U&feZjKGR;JY()flP~6DCZmb+iCIE?`O4m7Ov2e_y4_%b70Bo-I-SGQ-w=KPnu|NDY2Ci(Zh zCHbIvp3|kz^$0*{Xm6G%C&$niez;KB0O3M&mm)7aQyKqv-U-X;w_~3O;XoWB9y^7J ziR)tAJgvqE4gQ)$9Y1{fhq{1^h24yDb*xRz)Uq3fj()gO06W+Om%pQ=hmHU|b&P)x z^f+K`l9#4o*eeGE#7%!YTDl3bCwxkI=hu_7o}cD~v|P8CFsn^V;?sg9A%F2=Rx@Kp zvEK%AoegB*r(355MR+#kjt3_}TRQ#wI_D(&M!IOT?wBh-bu0$ZvC5y!veB6`)~aq{ zxs@+119$4Rz7%@frTDhr)_-{GRjR5_mYTJQN*E0zA-eayZJsagcqAhO8 z_Pe&^QDM+~-RWG6^Fm~Z8yRf8g-hI@H&nyI>mhjo@b)rd*6DiCM(#5mfpuo;T-;Ye-tKoSic$!hNw%EVqJ;5nR4s&VuKtUNXEsewkyoTjM1gbB_g-W8+g->%qaQ54ynm=k$}i z)~%&gF720>imKX5h_QgKvoR=vA(|Y~UYTTxR;|>jni^@8Z!TH|4y84b^uM+{M|}b{C!!6hEs${c?=QtAGxdc=KK|Zg5%!WWwvyS!tuZ ziE=Ss(@j61m`F$3qYYW=}Wk;x~V< z$xxdio*H%`qEvqCTvlPQ7iT4F`D7NdL4BO#_I{_BXTu@-0!?NsL+}H9yy4b%Uw(MU zm|2LE>s3U#8E{F%ySXx!T~_8cX;R532hvjiu=@?%TommE3i$}iof5V=gfv+0PZt35 zOfOBIoFie(g-#*WI#epf2#mg(DvgTukEIe?K#kPd&W0poSSj=_zK%EaJBdfTTT`DF zg7_;KmciG#dG|I7D0n?W3FtD3v*}8+=_1)#@Bvf!P}qx1jgdxnfg_ZtSj?R5rd>^5 z&!gJBn-HDov3|#el9hE7YdQ)i1@^D{3a@%1qz{bHcyoLpQwzHC;K3s>q$tZvH&(vc zgb}xQ*6UuXcRY|Bx{^zfkqP)f_{w?Lv9%w{RH7K0%q!>p|Euo(_;DTkyt?1aa6pY!I7u`!`i7*%hq8aV6Ye`KFRWc?Qp?tw)TH!<%4wu7^pY~>W{2ELM76^sbLu9 z^f}X(5qO7RZBR{WN~^2=N4I!>DLYVSpP&zfF3MWmR=vdf31Bt$)Lj=YquM93nEvg( zr=MO=f;D*9Ebd1gnORq9EwTzWl^H{ zkNfuRsqm0qVS&&N=fVU@K^KRIN{(%+r;wen^_uj+GIlgo_)Cny00089P$@M9DXMVG z^)Oe2!Cb!AQ*aeJx^%3T$tnQj*IiBQ(#{|=J0SXMu8{qbCc2%VL`H!4g4@eF9ZQ4> zOW(=hxeL;Y$1(ioqmDtHpaBn6aRHgx2h&ys7}V{to-JYKNzkDQT8|uXvx{|PeR|-0 zu62Swp2r#19EhptKg4yoi;k(JiiwME7x#?^iu8o6{S=*zgJ57S)QF<$doNnu6dQBU*b#h@8--AuzsBR)weEgKx$juP@< z<+0-yvb81aSgHNGn1|gQ8wB%FK6}#tQb2S{hWqK33XA%2OXai-khVz1CE9QvR#-fznOd*4RnGOxt^(QRU*a`{Kf@V4h*?<)Eq5Pq=fO$dkikrWH z-#qZznc+DontNo;(2etS60B5!m$n59LL;21Jz|?;pw|0d#P`8OTEA>W1D00G{ew~a z`${t&5tW?X8`GZ?P7iLEYO~LBW+Krui5?7uG3SxB8X*iJzVIUEgU|V_P$V{5li+=f z=jg+(@tX+VLSQG82~*A^xOLV_eVQ6c-t8c->v<<|i^b&^*@)P2r3s(-<8V_1#9 z<{t{}qswQm=$G8S%8&6ytFmvtka4Fd^U%mz0025MDuE|E_y7O^02XfM-z_e<04|iS zkD^_n!A0!mPCzDr2IhSxddwIyZ&Y-8@G3*+7Oqf~BTF`2@@rDa9!Ts85IG z<8F_`0Kin$LDYbE20wk~eg)EE0XQ%@YJ%ry2A;i~f1o4B`M!$tCWDk+Rk|vnB=TfA zh@GPW)aaVm$??_)=mMQnK0mX}ikGz2&L3R_f>(sS@k%+9LVHFpQyE=B9J$V`e$r}GOS;f5Q&pX&f#5-7~fSST4<~fggzQ+((BxJV!Yf#SINSt*Q4690Fz-EII zz`+XcW_CPr!0p@0%hCPwqjxO0ia<<>WE(R5vWnf>yONnYG*;0(2G;(d6-|^}o@Dgm zYoefL^8@SD%+*S z0Jf);Rd43#sP?Z|jo5AB9tqabx&d37)9BeH79c$r_em{`jo)lIS2YBTyRkMDIn=gI_hD#- zeQRrRV<9_hqnSizvV|Dd1MqA$8TvP)*gQCAgNuot1uha~Ur^P^YC)m@!-R_1>YI}M zUL-3420;li^Yc*B0q?EVoSibkCNpDn2ZDfqg=JJnr}nr3)Q-7hUAp`1MW1;;P*6%G3PQ7?Fiz`Ic)NgmI-yIa>*g_6)kB z3^yy&in2mEuIbw2#x1lU+g)&ZXd;s~=vHPi3j2>On0g@TjNW|C1V96?%jmI0_-Kcv z0LT#wnSy3$zOE2yhb3+nk+GAnF>0p^>L;@GZ6vytOpB?(eC^=sv5MvL4dDZ>+<%PA zv;-&gobQWHC_krnGlo}hzO2FdK1HG%>>$Wdkc$=T<|0%-!<$?`hV*s&WZxpX=Uplb zZrNvBh9I#L_RXCUZFScd`v^7HElBQfNJ>qrxl!5fuLz5JB|`+4`mC_)8{6joJ9MYV zs9mW}d}I5eG{yWh1RhJ17B!FDKef;ZVxd+pT$q7FbV*XIil>I{!KMZaP}2sH9ao&? z_~I5yH`h2C>S=$BynN_8f65rHE?k_~5;F9WxevxiLT z2>Lel5K5Ef)xboT>vvzDreAg9JqCr~i1T3chKXyHw)20lzqz^}0kVInB&n`SiKjQY zBu+0(askc7ZzqYqtT)G%EnEccCOBjA|ySEb#d{Luk{2|jvp90#-RX7!0dd`TSe z0_aB&Y+n|5KiYmGT+bTc_=*6Rz-MECpkyS4G>%9p98Uq-Dtv@LI23d5SI{aX028b2 zj84#qL&iN$Mn11}Pg0~DW?TEBIAl2NpGNfRP<$PDKY7RvU0X@VTRVGQIyR1{$Z<1I zcqc*&N|R|_7m1l-35e%pv64yxH~7;RS4jS`oERuk*jJ4#**NtQ@3Msl^21f)OEyLS z%7HY)%_!t}&UQApiRnGXO)&V!-dToA^uNx`kZJltw(dg=_Ctp>cW00pJM$MsIDLya zB&NO37%6J=VP|)$`8Yvwa8!~R+I58OZiB}xuNBLhn#{qBHhViRaSWWC=*QOsY*%)> z^u8>Vy;1C3kYhyUE1oC)t`z?OMDKwowMLE(@; z7M;>~Z`FFAfSW#b6;@bB-Uaveq(x__#p%Oaxn6X)bg{Hc)^lt%XHYOoWamiaB|_cp zn39}2a>G)Qrix+N*fX|WjSK&uhkSyy+6f{=hgL`$S15DqMs@>wiLxxY(6|`s)4sLS zoi&PS4m%DBM&VURZr{B^8h0=I4*Vf%6P=dDYA_#Gx=IweDr`+q+LsMh`?U#!p>qLg z2>zqEd%hZKEOK#Jfi%Dj(>HEH^sBStl?^{GIPO=l z&Yp-2>GT@haZH9=68+_(;`NxVUT$swa&Diw4kx2K)UIl=Iaz&SfcfSP0uWkUF2-P# za@D8MO{CHHo)i9gCiS2cE0sG4w(b*0!(wHzeW-`h6}cNLZC41u&Vo^ycL9OUsm~EG zHmBP-RUY1^5d2O_E#^eZs$^cH3YCTx(hlUmk<%@;2c(L^Kvd3-=8ycO;!Tz|XlfCt z!ToqRo^aZz4Ga+%^cYKb1^!?btkYw`l9Q7a+gRP`60CVA51K@DYqj(P);T-M+>! zva120#cjY8(nt7hYfTNm3S%*s2fIO;dej}qfy@F3B!Ie(HdE)yMC<*KLF8Ft5cTu8 zCH8QtdB1ObppJ(Da$D#O?AX7roFlUElqu6kyJjOwq?vlG=Zt-YdFm8`{J3cIn~FU& z%4v_H7dI{PMXUZbtJKOah`DRe0#(zGC@-S0%EF%-hSNt88!-~j$TIZT*r?DE@^_dZ z$~+aX{wscndr6PS=PqX^bdQFi=t5%D%|gNmNM>Cek6rs&%QFaNX(72`|lb=sn8Pat|rj&+-3j0Yw zpe44P5~jpi16Wqz$shzZSFhx98L4KZk99lXL&Vi!GFt4^N2g~<6ew{W@5%?Np&VV{ zq+=u#bNfF@hs>{ZBB;gCf$)7}1kMcU zsRTg$67mRE#&vb)1Faa^+G;B5tBi2#$$;P@J#mLlLoxdL>JZhjgYzM#1UC}|GKk?> zbtcbhgC6yaTME>Z^J~~zMo#g_fXaOjm3i=XAnE&m?$X(tBziFR~leY#b1MmN$ zP8fZy0zw8hvD|=*1Pd#Poj3ogQKr82b4-rlSh1dg;Q9zb0_IWurm8wfRv39>|Ef+B zt|Hv1Sw+x8<=?=V3^}1q$^FLnTn2ls&t~%0ptP`M{Y&JP~@#{SG{JeJ?$6+)7p zaLeMF-u_{{9>$)tVkPGSxE_qx{}{f{K}T)%HL*dFpnj*7iJ!)}hICGAaqyY{s#>2D z>-<$G;Ss?lKPV$H^R!B!DG*;DV*M4-3S-ly?>mq}*;m$cDCz-`l;LCFul1dq*1YY9 zhrl9nCvoUW^0@uU?!8FF0~)3G*N03t$sz(YY!RhmzcvX3@UbFcA04%zy=s6Q9IdCY-&@_D z87${cWS8|^iwLp#PAPwZlMz5w>gbXjojJWu+h@Ky=VZwKM;IB7p zzv8(DqmhT@NhrLA5)CX1PvuI{$z( zyNI1i9C)~S$Fjnqz7%QJVKhDMVY|qYI;F_++Hqz+?n)lH@UTt_UhDgm&qtx{HSw!o zSN*K=4-ZMlgR&cYwd0nN7Jk+J-)TA&^l$i>q+Qq+$I5fs0++GFQYJ67eybm47krbn z*of2|uy^p4jU%?y;ZM=;Plx8>sIr{~POE)A&dfzvgG%iqQ2#&acm1*Y%HT+rEp=f< zO3%LW#P)<(Lz_7=0j|T;4m9S*gL<(f|I1Y`Nh9q1SMvQPd5CC{Rv`S#x7tK;-@SOP zQ45;zwNM9EuE7a8Jq?oc%}^s0>tv^~q~B-kA-tB3kpn#cD>T%*!r~HOuU?lUj))k# zaQdfExIS923gPs1p24L$lUZDR7tN*j>!(Sgp#|lrGW4TsRC=mTV))!m{cOS*ZDjEZ=@oSX9u|3js;wARk@{fWf`puIP1)d60E2ZBbFH0I7#7BI--BCywsJ z4qJgJZ!>vB==%c@53;daFtjVz{4kYW&I3XrL=t6m3 z61yT>?koYk;}?Yh_D&WNf z@tbxhW?oK<>N5Hv=85nXPU>&m5kfEY`Xvy!j9staqV;8 zLWgy)@J%`Pu9>)#u@v?x+t3CC(mRuY(KNw_?86uQ8^Z*kD+iGnW?WfLhPNxvQDU3eJw$TEv`}9tw^-B4^O4jKT;({#J(% zQ6J?+FN);QbGD+%Ki5@mA@0k2rA}+3>G9A9-@ro`oRRMl44ga&J(hj<6ok5~-}CuX zfF)-`v&fC#p)5pj!mN0P(0!QnijKvJBL$(nw*;t>4q>Y(u{dLYm;P${2I&M7e4u&o zb0|6Z$v)CA{hbEtF~4qhJRoQU^FtYpn@O5S$sF|5b_HE)?a-S@t;K&~i`;XEgSq4t z1Z6m{dJw}`Q#PQH!DCLs)k+mXgXFPL;W3+K7&5KBPSGX5E425zAyk{^+qg{-XOR#F z-C@|&av>^tC1mz6wkO^%DCFc!3=Jo=X}`ksl-;x=aMm2(PO1>t94PE(p2G=cThC4w z4g=H`;g5d5a~(q;m;Hzw%3J+vOx8VE9jgKab7IFohDbX7*vE%BmZDjw75i>F+#fXvb6ba#yv$1M`Jj zJdr7qMAmamYuAlcyk9Dul%2)(t5_Xbm`Pc%^i;rSv50pQY?U~Yy-E*Kw>{vVZ8z#u zVjR7nM-d>WtYPl*ha`E{{G^*oM1E;?kR@gsS_e%}c+5BSWwtm0%TjmYEi#X@#9$`` zKs;p)DjWPGp`z8A{M;&+`2GsVyRU$D)R_}#tvb#nIW)}2 z=8=*}+f2!a`PnW!6h7m8P7Y8PX4hW}sL@fKHSrRD4y6MH;~!&3C1~iXPPccH8&*+I zmaIsIW6h0=Cg`4fxQ3N$bPX&~i$Tgm19)aa;2(!SbrhMf*s>R+Ku7UNHxNyR}7sdJ2ms0qNn`3uu znNs2=zw5GnN!WG%gh+a`IK=Aa+ybJ8mj_Uu!kFei!(&2*Hdpjr1e=8X1k?;Dc?-vC z@bMv6^eB~@wT^}|z~f@{Gr@RYfpbd@Oe12uli)BETP}@3^2C#|H;Ts_vlx_qoSCYt zmB0;9ri1~uH@ZZM46+JA{=5qu&uq4goBX*dZ#Sv06we@@yW~)G-$GaNMt<9$P3gH6 zhPn$7oIl`_#kp2Y1qM2Q5=mp~Zuq6}Dayvkwqf_ZOkvAl_PF7S5JujJzMuiQ5{Fs>FHR(morwuB(p=>JvQ|Cd=CN~cU|9K0Kh zm8v!ygzWrhjU((M-euzJ1UwXJVhOW>_5nMy zIVBKCQrqi>m;Q3#bAItFN2CN>)hi9in=qy7ogb5?EtuJ3u&jo zBHPUniaP#ZubqON-zRdb4ua<_h(Zm6SJDPhzx(O$YpLv50>26g{ma-|MFqpW=ocF6>za0#s6>kLj%GXsR<_<@5Kvl@o93xh`+l>zX2;^<7K)qaJ;RwZ*U z@Zz1r6YaGInZ(lT_+AG|+n`~9F@HLBZ6*KKz>P2FF=it^Ij|{Fad$eFrBgoNMBr`H zz{uUfo9xy+2yv*-zpAM;^2=CW5}~LLF&SPdcN&t6v20%Pj+{1L;%Bg)5OQSLSN!QG zKrN7ecw7N)II26&DdoP-ojKK_v_BNO=JN-65S$TabYi6pG)(7rcrqnmhpQUPU?Ar=!oKO;Es*WSJ5+M^c!~=E*D3B z)b{~|eX-%e=Qm_l=|UndiKXYKIdNMYxu;3%R0%2)f9!{xfl+9{^vvEDmpHyqW0Z4R zkntfJknf=HvCSh{QR(0~>z6qUzK(XVF!l`5=8Sqqz#XDCLa%lu6#WV4IHgF={!96# zT+Kfpc>x3{@reg0M++3@>*n)BCRc$y*mOoX)7dcb%^)r$HCUg4{AEvfBL>UEs{yO7 z{tghVXK>>@a^e)EDTN#1@scbZy&9o3{P{C*n6snlSGppuY#$xxTFC{RUW4CXuC%vX zW^MzcXn-!ax^ApLgY4=eANa4Bhp!h;*{9kQHu0h>ykDMS0d`D3H?Cq^@( zGZ_?(1O*$(KFt(Pvk0Sr{HF%u<+C$%kXYv`Gf+?T@z@ZX=7`v7v6k&#GHYJy=p)+z zGW{{yu~Yihk<+j8lEMp?By)cDAY%)cZlrJB2_eZP)>>?=k~lg6S|Z0^GVFsC-1ES; z2BA7oap^5MUu1(#Zb6-b@K-J9=E}fCmBC)W;l}M{n>xv-!}@Gho`wW@w8bZE32rLi zd3T^zB2IR2r9W)oTq&f@bQ<)y-&xpAap)0vdxi8K&9h}OH(cQ2*@rAv8b5ePhDI!W z`^Xue-1jEhNE;|}22~#KQbL7;yQZq#oU+F1UL|*-$Qp4w@94x>f`q|rUaajKL%b?y z4RWDj-?j0-uMh;^5XnWkWMp0UzBgW4eS^e>p_nfa!2p6iVmMS}VseZs3~6F%6ysFu zjvRcD{go(AfZHRTPwZ+{$I8)Ca+_hNotSd8$ixx$G-6Emv-z4g)JGqiVwMl zS)0qmc#ek>emZe!3$z9ql;P~@h?_?RnH@n1LWHvch6XMrRgQoWAng=yR>7K5I)<~( zd*zU#CQhvITYr6i;t0B$@A}5pi1-q>Kn_vWf(wdV%(0Yesi}Vgd!qs=^htfO{e~QM zCBifDs>)+j**9ahpLh*eIPpmWpbCt&m}M^2xhf!7d>-R<)cb_wYc$V+wNvTcm&(kX zFK>aB2zlV!$*hk;x!Fk2h-y#nGjEv*6k_MWrP_<&$zyVU!`VlmlkHA8zT?3@QHGE# zN?%y>hY!zme}Gt73%k&=yLplicYPc!l@arWn!=qu*cWOfqyEGI1~pP41j9YqW}IIZ zE+R*ATF9`QJPen8-+*5S^;>)Gyl||ATn=ydeLSUPY4Q?gqzk2k>umqOz|0byFw)?} z-}y1K=8oGYSOZ`^V3T{K%a_M69S>rB=1$8FK?-!p;#|ZF@$)ruvOzh-r!0SE72d^U zI3TeUK$CV-U+jXMXE4#8JLq}mhyb&{It!fIv7Iv-&lgrKpYv-UcQ^yE1aYxu$`R=d zNw274%UHP2=2eWX`X-^EYFXt-f7(;5tIV~Ne}7J56o1tR7FyipWV@jNCktO?P@KPd zR8wU}B~T>ie*%lqPQKMKMda;&lo zazIiT0v^aTouk-?Bk4XPZ0RqNHsH4Jr67b9fp7wlC{crovEPn4jwRp<|goa zI26U!w0!F8kGD<;a=EUGwppW6u;D<64w>uVs2mnwQt5tZ%!rHKPJ4|s_^GcuH4BJe zD>S0y4UUmKE9q7|B?6WTWUGp;^J@(7>9J0U_zi6+AOHX&@hX8QJRc1Nlx=;kD!j^! z1#p%P3DvtZE&4xb#AMmHd0$tWcub@f82hE3nDyXER|llEz|MRu?!p6eh9i3^=)Z+X z)Q%^Ymr#yoFES6MTn0+M(SwgURi7j%{Jkr0x^4>5N)9{m0I}15Z<{gafiW6%xC8V- z_0xGzwu`Fp;o7z-evD2mp0C6e)42=}63P)YpMA4&M+hVAh&BOKzO0dd>f|I6$_Zct z%|U$IM-~eaL~ls0L@k#S7ke$tPG}VnAglGJEWx>fhoIO}xM`!cscYT+bUL!oZcatHUQLk}v4MEx323)w>6#?)mg-#W?>o*#o?^DAU*e}}^I5Jl!sfA~hX{eF zxe(2E9pt}0wNl375p9;aa_8%xCqeIvmTw- zha(lXawfRBYo1gd>1)5MPx@eFinHV*47K?NkZ@LSvcb7)v31=X0Q1y?<)`TR37BIHB@Dax0lmW3*{vV+v7@;0H7c3XM0 z-JGpi!!tA%;68jYZ2Z}}B7f&@xvV2gZ?16!y#ll_NB@1W6Wqtb_gkS=m^90np~rT({mxWd!rlPxW)Bg;Hcsv8N1n;61j{Bo0o4H_Ot~Q zV^>MCGr7n##hIj8-GT$Pr7eX2RiyV}IM|IQtYW%6++FkK?y`zB|_)8hd}$7V3ThRjr03S zsX>1~i<+PF%42IjZ_1K$LvHUGy+iUvXp-p7z5v|GXT=~c3G4LvIBYg6zv#K*e~4}_ zaSWtyGGG7zA7nr$dh|4$n{l3+J9$MQ$_LPq_=?nRjf@fxc<~TR^RP^b={qIk*$y|l z8VL!QAOxttDnptzROb7(oWBS2no;*p%PLm1fI!B`a;ubV-0P;A(07t~`F)EAwUm^i z4EI2iiD>W8q7OOVA=UtA*f41%oe<&-sLUN|^1F;`eF3G!H?E=SON5fSH`23`$AJI^y~a--ucR~ba=|m_dZ1~hkEVmPuc&+3QA^zGoN^c% zGclWP7#l2?1(~dZIqxBxP#QoCRR&vK;RmrFxo`~FVs4{WJkJ$u>fuPar6+KfWpX&=rRWd*A0ybFE#N)B#5)LT!U=-b-_G2m^WA>=G0gtG&Ko)0 zBB3&ou(?@CQ7pYaqV(#Z57kY%(LVjPEB}~6IfSE!-f|rQ}f~nGcEj;*;eMe9G$U9Ed0SG{jL# zkIs5TH?C^**%MY`H)tp_rybiS=SP!bj z=DY-VdAZr1acxuXEg)|9hFaxX6}Jf^=t@?-pG-UyvolI#KARQ>AaU5z@Pp_8003{| zRRT_UA{kYJ z-8BL;S1J5vZsJ}o!kM@|lN^-FMi%lP(CIr_6i3c!L?hpyGa&<$TGRLP8zPjnN_D#_R8p)qdpc?3 z)qyP3<3k1%IE^KIA73?r{51aTc1Glyhi*g(ehGSq5EIYXnN3xu`T7EO7DX;ngJ2oW z9h;5wXeW4c{QfA9@Ic?zfX{NUJq7S&OV?L~5hPqfoLf*0h^;_WD7S~D3Ib5I2GWf0 zipJv>QTul;Y%qf3)NG8w_*(--O-~5O%~g8xT5=mEY}D4L|U!GCgP{*vi7< zr9i{##r3JaRch=Sazy{Upo4u*vg6oB#0;qp+o)DFX+! z9GOE{)Bo=9r?loeIJ`LvSS@eIi8rh=tq99@84<;5rR4kp(CngENsZ8d)I3+qk5!b^ zP`YK7$2y)=Aqar=9nkJPjB5A|%o=v1`=y!15;iyKhJaDOBf3z;Bk{)`{`F@h70{KZ zMabQjg;g7_uA1@w6xrL0;~9a0e4^UIS{OC*LUr0rYPgQTZq)ZR)SU)CNQ*KlM-Zrc znq&)VG#*Uo7t`KjrRSc}aN>X){$)PY*mEIRvt}Z{m(9TBKt#nO0q8XlX`@m@-HX5h zCz&lOr&&53F0mo|_isYr{UG^R_raRH0a8JM!bWGO;AsTBL0_MNZiyjS6r-x79S4aD z)%tvDnt<=UrhzhZ(CyVtgO568G2(@}jz~mQFH@6XYy9YBf7Y+<%;JPM6xvyz%}J6i z>d^e1lq6xd0`#eE==bLd2i_tP*qMjdaX<^+4{&Es%!IgQ1!bQVQ(z}8@7{84hJh(; z(iZMkiy9n~-P zsO0B~8B3T;YVnVmUa0W_Ct2Cc7%z!ugy@>oN~=b2cyD9?4WkR27X#KaSyeiqJFUDb zwz>@a89T0zKd4L1s#XKZdP;ltKb5e}tWI4kv|7hx5DX)sL3AZvzXR#A-n?#0QrTvm z?IcDbjNksug=)GrIxl?FEDPj$|EOz!dOcnFA0ORxI``mXdy40tA|7R*_b+YvQB{gE zny=1j|LUH+QN57x^AKdfix2zkCA^3pri4Dz(RVSbP3dTYt%K+%Pd;^ovyUZPWF&>; z@r_IZ{GD}8fXRJLZKySIGMl>+F#*}1MK=kPm)fJ$9rDf_fPF(n%-=)xr^qFV|8H!$ z#0;PdC{cC*oOynhbe2gJ^(y+pt=8XGgZR$>@nfiQQhI0b3Ysr@7YTn^I8EbfR0}1q z6aA~9iQ2^hrHOo+Ax{%ITa{ShJzvCBa>_i+pqJ+@K8Z#!^H^i||5 zk|gRic*E7C`|y56(a-3076`to1`X3QW}Ty-eLpx0zc@UB0fQ4M!sQ)2L|2@I)I%gK z%FC|M=RtqHEfJE(lhpcPCcr3u1St@LrnC>ehy<0@%_NW`oOh^j8yxq1idVN##C_3% z?zuO`I*n%-oYUsieqhQB1e8iCPA`#a%(woF&a~036y17O0=2YLQdGGZG_T-R52mui zH(OnFh1^RB-qS?KvCxRT(UuLPa-1v8 z>o6mtdY-A1&{lL0>;Sjj=v)64{6+@C;>Z&v@L6Fi{^m+*aD07#ql<+6GZ}U~ zqH3H6Vj>TOsl3jp4vGL!y=~}g0ka?gZ!wiTz>)XTb+#{$tU)hhumhIHx`H88lM`P- z**%lBC@~qt6w&t61*s(!X3A7M3;l_}B*S6kc4vjxc&>{SMVfb^KLUM!S7D}+Yvw*8 zZs{abbf?i1AYb4k*cvaPVe;rlpR`BOgj>%(e;r36D3tJRt3ng&!{ap;X>J&7)%1$60C-c z%_ICw0|-FIkMyD)5&*~1M-rJemp#5tRYIVA7@xZ8>%WU%Dy(iWdQda=Zf;p?UGASD zB%fDnAVUUOU)MoJ2|Qrs=G%hf_rV`%R<6$FsS!N$pSTRp>lEvjy@kq_Jpo0K|0aEd zEifh?60N2rj$ku-6sQVKKkqoH75Y1pu@`M}9bC?J>I3s08X1$EX)&H{`?e31yv9k8YClks=6F zO?7QoED%Y|QrHT%R4!!>V$cBAy1i1)8@}|mgA61X27W})RYc7ayP@RF1RARaMsY+1 z{C@tx4d9hSMt64qPj<_g8F^FK-eY3;sEXL@`S`_wZwye{@8Vz3w$r31yGDdvIM&7T zS!d=bQJb`JhKpEX$I<|Ur!KC0aqI8B^3*tLf}-fAer0=WP6>*W zWDyPj2KGSxm76=XdW7(8)@H!yHGTcmY3Z|-fO2Pa;6%S5Z0v0noDf;*pf>xoJ5ys~ z!(wL%Ot^~dqaM9v6Bq?NuD0C&pG^!kk-;$}C=L90c)=cqCbjb^;HmsEZi3XG?+%vFCEB({ZvEN%#X+m6}R zZTsw^u|P?V7&@O+N7{6?!8sd^n7~Y^(K_E{?V@T>_0Yaqy#0d0@kU8&;r9&hP`~=G zd5%$PB}~p;uSGWUiFS&RFd|sQ3tQy5T}$tyq@P!M=Te)de@?c69Jofp#Mq(Kkje%{ z!W2!5);cTF!HwE>>35v;uhYpA8td?20ixpx(~?B>9G!}y)+JeAKDE^+L63dri8tA# zB=Uy@ZApCwRoS8Y+sqGwq-Uu$qQjbb)H*UBK3=AhNcC0!(!`Y3kg@%lc0umqt@D z)n7i1pMARDkg`eA74S?ipuDQBTuTvFf|$$hL-LRh7_RKmP^H2mq4|15tNn+#StGtR zDDqOo%CFtZSAD?A8|#J5e_z{1wq2z;zAN%dhr%P3gejM!tX>5B>AZbBxcIO^YKij( zz0Jka;=1YCId~uDdR2AndcA(wR6MsDlyDro*v(U&sTa2-FY$mP@g-tZb|s5%Jv*D} zfVzKvAw2BSl=CUJ_2{M%rIJxSgg>T3s;5sKy2z)-fYV{B5_(o{RV3sQv^O4Y4)Xmz zuGUjPunULgQ4u5biIyj`Qg{@S>;{RySkt7Q!5m@>#!ybJALJrgx-<8GF0cPdSTTb^ zduZ!a&1RLen1zZV9X5c?GHb+0MXImg5`S)-M@MQ(eH9Nw#(=#9pWs#jEwdt=4&$L? zV8C5k^)_3?*nLM8Oeq)$Qx3R!Jq8uEwt@o^4E}q^APJQ+jHSY)_S-1cB0o({4F&Yf zBzgQjmXFg`DsU&JLi8J5+wP@#-fSm;$fU}i6MQ=J*eojGs9OJ5?JZ2{CdRB3nfPi> z5T&9C^Jjm!{P?XC;)c9N*F-Xm?IUS)X3l~mGN6`unMc3;2NSPML2@7* zBKk?QnzA;v-7js2Ll>lc(@xU&mvFYCWIC}Rv6@^#M70=ZuqOlqEH^Ai{-08OokNo- z(2|7Pwr$(CZQHhO+qP}nzHRqy+qUMuiI|v(Sf4QiMsr` zaAS*`ZPJ8@7$8BOPD-)tAGbtzq0_yn^`b=l_npStdxun*0!_)z)&ydOu+<9Uv=LaP z@J^m8GJ^Fcpg_J3N;`p-Df?MFdikjy zC{F4z3qmeSNuQT3y2#?_K`=}jU0#EDZ%*?Ca6TiLSC{dj+y7;q@f#y#APh6H(U@h= z1$lHMf}ds~z?^~{IFoW8Gp1!>Kk#om5VQ-9n2mP|RUFYtKo+4=4IxM*V`ZS{?7 zT(oqpF7=XW)8`_cP+<&97skMd?`J1BOjYJ(2UpBz`h3jH*woe(D*t7OjnwQYft>cT z=wNHrpaWz3ADCI`)SetxAdj;DjX$<0)e61_*4Q8(CT5cWhQ( z%I1EDspud+!I;Xr5iStRrvYdsc+8LJa(M%>D;&8AYVr}UzMO$W zYJ`OLWFe8AC8Nw&%sVs8a0rPvuD;Tb!C-@7AyTK4D~YRB(_uqWdQ%S*b$1#CQQx)PUr2$$v`emnJfm)LF^Q)3h}pP>2J6 zGNJuD_co9P+cgNLy&+k3@VfP6*$oYa@K`Rw5u9l`q5bJl;(9D@Vb6nfJiI4P{Qx;f zM}AG;VC8~dEE>?K$bLf#Lbs2GBQU4fk(4kbwVuA)5{nbBi~}?$0Au`f05g9OETS;q znP?N5qHqfa^>N<uG9eqp7q>3R9%n@6nHA2b0BlLU0!;App9V-{y{< zS+3abwIRD~Ma-=G}giV4^dR%8KbwDAyeRI3d}l{lcx@0mc1_VlZ*^^aWE^sbNc zWO!0zINo|o7;GDQ|APVA8FhyPn$np4GAKDjc8AT^{+z+fXMKL#-ec}a5l?%o{+qp%js`zZ0I z40b?CW-fUF^f6pm{$kebO{f$gh9K0V>%_%f1<_Dp?Qg&zU;^ysOU4Bd0`Sz6WD3TF zj7~Jq7PJk((U^wW=Y`vR&UGjyi3xJNQbI2xn<=*lixz|MLGaIJ0055vM0t6T$Q!_f zS62JaMf=SofWJ2|HO(gL%$GnyBqV%mtx_@#ftV0AeC;SY$<*>Zle0`kf(!1Q^aH7< zOwfYwuq!J(pVMZc-3|y}cykQTmT$hJgkb?;bIrK%t<*BZdIXv8)r-?*$!Cpax|+LVhV~=Jj{3oNEb7Q&Bsxd!^KK@PB0}OCIv3VRviy_ z_+nGSGYiAz&^*X9KXJUdG)cBybHT?osH>r3uF<&~Hhsucg^i>3-nx`kCAkZvbD<&; zo&wtM`7)M5+&wPwC@$M$FcLzXig%6yj-@Sm!kIW=WQsa@#V8|sxU;wb4eBD^sfy#e zY)7&Yea`eJP_@)S>{yz-GeHHqF81=vd6ytO1Gt^Y&X?Z%*coHo-gE6M<65~6otQ-Q zz{D{I7bk*F_Cq@dUs)HEXW$cLhakQWQ^d(_yk_8E zS_BLlPybGPpUng;b^w?D_3%Wo8G90)V8He1p2Vi^?dS(TyT7`}0kX4yd3~p+C97UI zVs?lcjFQ72awRE3`Zh9k4AFF8xk7`O>qF^NNJiZuIql`ya}%}Bo?j3 zC<_t6zAfmu2%{eDQon>BGWAN;#V-`Z?XoJm){CU$v~CP~-#O<8M!+{C>~7n#q}W^l ztxXyNYYn8>)gqhu0xvB*qV^se4A!n&gWzrlzKXZ0E!i#^Co=w29*O81?m3YDn51+M zqc(2qdMcL$ac6r%!PLJ?x468sfiH~oT9-kSWDwT;v#a9#gUv!QR#E^9>4$BNQb3sx z`G@^9{G;IFCBv_Pf_tEKf{yN41~Cx`sInfBf;zAZK*n_pL5~H)Cqc9vl-8OTShf&c zz>}@=(-(Nv*|WIgVbhN#w$=O@DW*mIPQ=3LEvJ~^Mxy0>2RLBYSm{@C!HHYDw%DXt0ddkk=T5u{i*rHXK9|pINj|ojcxXs_ zwSCIQ;kYo!>B|5D)A7(&E4UO|f6d$wo~$&E5;P+I7i@=PSmsnY?UGy^HETpPYqV2t zMAn0{rL`>abPA^hg0<4sLku+P1t0_+{R3VQM47nw;Bp3WrdD~_R5};t9Vw?Yil{8b zjlMjv*a1)#^c)8z7YslyWv&vr!SQtI1)P8jq?6*#93MTfHxU})H&CexP{c3SC%tv* zjU1|JmWL&<3AO|pG7Bb{!13n#LPYu~m163xaeif*g8coYY4E6XzwciAbeeqXXQ3aR z_s644i_oswf_H0r;?EO0f_5(4{FIb*v6KEfO=Q@f2(J~E^o@n=iNm!D{Hs&nl!-0U zDSrgW=9ak&i2te=n#%w?4CN=Jy`&ntexqF$D!V=xUZ|(i7fCQb2R}^>{U#7`L&d#p zul|GAVc>81sUBK1&{(XES^f5P-6nM_BTm@qNibXF$7)hEUY8~nnVcO zm{Qic5qsBa2W)%wRP}2D^NS+@K#HXJ#^c*peP_T5nomZ`*k_wyS^jfPNs1N-j)LdU zOks4FIb3P}1rBvNum}YVzBY{aYzIksP`vv=^RZxaTT4rW8 z;1+~5P4>#IVXL6Z+5J3IqC(&n(I7XG9$RS)NN~}^nh-1GtVx&s_av!0@+9-x-Jp9t zl9ycx`;at=rVzg(QV5*O0VZLe$LsTzg>gY896 ziUO+GtUg%E(-o3$DM1Wwrt%Ci=#kRVRc;ROjvTs6}$T zve_vMyrcH7ApZ&eYSKTpp#moR z*{z-f^NT9PDyvanPb_iu-$c(#FW60zo@TPfQ5c%c6lQ3QW!VPrxWCAtbo^hcsdIh# zIiR~axMj%tsx6!wG>8mjzfU~l{>TBR_A=hyuq}^HxzL_dr$SusBl=@O(f=7)Yt!r| zT@Z;rQ4gKUX7jpHQ2J;`cDseMVS{C@a(|gL(B=P549}Wt_{!)Yh+gGYqPq1)D{7Bh z;07tLPZ)(28UE%j_A#70uBkq%%^||am$q#dhD>_+6Z&#usY9Y#B0txy6@Rekeb0NM*52}=C1spXEjm2>y zI&(C2G=iaL-*55|56PPy5+Q|93d?Al2=tPS(R#7k_J|nP<22{QF3kd&^d=<|Y6e7- zm=m|*;LB%J!0ILAcrSufe=A-8&Gls3olniaF~66g63u`^Y+HhsL0HzUlhrvQCB0}J zX9NrA-4&D&yG**=p%FFo+}xW)A%XPkE-Vs@b6b`(Ot8&!)6j~-GB)SQ4x)lyr06+! ziF>{B=<-{0tcs*0S@164@lpYt;{7tLE~_LCMZYJe&dh+|cwrDLy)%AcfKt#1`VcW9 zb+Js2hJPO`U+0(A-Ukm9so7NNe)florKzM1ul=(eP>~ zL|AK|bAeGtW%MiIFSAhOn-|7i!$6LFpsTI>iIDQ{zd8a;e7|>fL%1`4{Bp16SK@O0 z48uUGt*oe({BrBJE09H_j#|w@UAUu4wXvEKsr!`x5xapgRcS@rWw<_G;Rvu<>J{BW zplkk!@G?qi$FJ+BM;CdwpmUh|8y2|JdLv9IY9mN2a?7stm0!$nb9XS~Wt>)zSNxtw4%qc`QxRd-PIhkge zF1LW&tvc%YF#E@y%7))SkLy2;366=Q#TF!tLIK5ZoCO0kp=&l}&uG#zC%szkepjV5 zmoll@WK2K-s5RLcMkIdz;%!|_sN#0M0xl_|sYvLS?HE8`(Ow@(-snyUn+7Y~^5YLE z3whX7It&wYd<@SBqy3VXIdjhu=NLibvBC_bu=z%)f;L#27Y@pua5!@4=2w15lX)EB0`qtU_?or-rKtN8seu5XsJMUPs&7qT%RcV zS6EtAiJkQ;03Xr}ahQg_v&fv8*^jUdVABfw_*wPs(Lp5BWT1}>(E z;N#_;zU3J4L#k80^rd4u$;$Z$i~&c5xb!bS!YsM=VQ5U!fu;mY5ehxD{G7 zZrc7#zBA%zDg(sIcAn5!HE`wB9In){Sp`Q#3sPYt2D$4haJ11W`PR!Gark1E*ZXCq ze-MprrOk5<4Zy=I7$EGzJAE6vp%EQdap(3|8;NJw{nr;M;jiyR9m}m5lqtqCrfn1v zAdDm1L8KFN2YiVN88b1h`#E3gvOLu`Q z2Susv+mv{!>$C?$$#}4kjLT!40ZqW4;NP*Nu|kVZ04I5cs~DggBZDsk7yJq@x-=fG zQNG7&`2Muh5|D$6pCq>UAhUR05q&2%^pGgzI(?VD#9*0WRj!hiIwRF3FN1Q2t&}04_m zuBe1)i<&2%KqqkTtF}dH_L40#N@pT^a=>mlipBJ|obVy-VaMtd9B2eEs_eAhq9-_P zJ|-EB<`U<-0aKdApY=%ZH#BcnJ@+ApLRm23rzZ{%XDTGNx&oZ&% zXj71bjr4qnaf4i5w;xm6MP`|ypUO28t4)Hnd&aGpt(2K*iMBS2o}X|RrSz~o%*?wP z`}PB@h1dX!&EUIs#zh`^*MkklA019Q2%1&9JjRWY@*)58>h%BmCv zsu}ykn<_zh)i#>cYECLdzb;p1#-gtV)nf9Gg(b4!Jbz-kA2E%YmUyk2%JyO*QMs%G zA*-kI0BZ^FhaCY$hl|V=L~w6hr)p9+U#;qatN(G-qPppM-0%Z+>#m5yW^+NR*hVyn zF(sGm62>ngUs%hjbF>Y{WGXB9#tIQ0nhwf&kpd`IkJ--#TKeCwF@_>%)8UW z@>K$a{KzXzqVaw>(&o0%8wLz!2CPN5Jd+UjlF_$e0PhGzb7#sgW>leKQ7tSwo8!A| zrRgh=0G4JIJ+=sRkWa>&>SbO`DER<7vH;N#7J20s_jt``7#nXm_xMHMt4KXe)-e+_ za6OZCp)FO04VPgTgjRI=>-*<|ndWmAsvpGX@5<~$8?kCeH`BC^Fjzwu#v2?hDYP^_ zVQu2fyCMPNyjxi`^pnX(Z!EXmeJW4~#{q$P_=V~sO#_1ckchxVOznNAy5rYX_mCAL zr%j~fk9rJWnTxZ*84)Djd$pfkt3I;!PU-=GS&#~3u}NRj!M;RU-FDAQ5)HkQyL99y z3&j+C@610R6WV`_RRIbf3YL%*u>$S%awUG=9xZQoR6rA~4Tbi6Hm?$~ zyTAx(PCTaelLc_MXX7Fy*vEqWIG1_qvD`^M7Kf*bIj`Imja(%8dN)>&xCcuiOEGdY z7~kGS+I$3Ev2VX7Sh)4B1QVnLhtJk;nV5Cfhd+1;#6B?2CV^%}U`Um(6+Z)?aTfQ8 zAk8YV6m@y}LgbZc4!xtv)&7Wb$ki-3mqi3Fe~efz#0{nul82adpq@$lYJwo(Qu8)a zVFFq{UX0;4H7)9q*o3(4+SXK;N67JDG?+dv48@946bDgCPq+peI? zv%~|44;$#^kUa@5i7sPj-s#((cF?JV8|=kzBHr2mRXIukN`9ap^vy4*@ZfUpPbbIy z<8MEZ_NrPs;lm_VhO?zgxM2Vrk?62UyFS_b0Bh z%3VANt|N6AekshifLp5@k5*2e2dwakq)d&+$um%2fk~RIE0et$*_bU8Gl4d)>@AV2 zABrk1%pnx1Ps&ZPo>zAlkfWK)U*%=Dudj>Q=2;ynaPw)~Q8&d6Y%2l3CToF2Ra-zO ztQ@%d)K_W+U$qG$iBI2%Iusnvqh?e{vki@ROe zh~8dC_!nxlPk+C&y$h%D&7=UGL>DQ=!aETxL5djWr{0qWYgTWPFY5xi6i!0Unu}7g z4vRN|T1ye);f3yJvwIKSKJt-A;~DzL>#kLYFRmqLz;jW%m%*>%Z!T~yPMM*`%3m<3 zDzIu?)NkClb8_lXy-tFB~FgF5^#_IaFT?51P? zgkmY8yt)R?6CV3LT3iEk>yL0T9*KQe#uK|5o0AVXqK$Sgu| zBEhfYq4%@sBb9quC406pxtrMgHT8?qH$Mv~g}VAoIs~ z18t8_-gAsn2fkFT>*^)>Dy!DN$GFqJYdL8Nl^Gj0YLPOi>;SplmgFEZ6AE{HxXW(| zj(6bkYCsu?ZKKhg7U}1zXg`Wm^;2FHS>&3ddXLfbt=U9x`Ba!plJkt4l6a1w<{Ko5 z6F4g3|bnl>CXA_$Weyn^OV_#r5$bg)<`4$?a!+VhTn21a{l`6OR*aD(nylY}K`F zo@EbdgaqenkKrn|c(+ct2iYi+sO9paE-KRUcsVaf*DJEXM^@PpSP@(LyPkg*^b#?m zyDtoF9LrN{7z{_T2qlQk#~9}!Q4MIlLpM|;1vYZq&%HC4t7&&Z?G6TS3bsLL=zz4? zPC=bu_wa*ajmrN3Kg$0wtL1*hshcHP?rFVDK^qs)p-UvyL!^{eZB3lFmO|q_0Z|7B zuk(pnHrCU{zmP1MTuBWg7?75ZlS~56V+2qvbU}&^T-)I+IeC2Qr(p#Q-q4*&91<&gY%+h~5uK5sdF!UZFsW`7p;`{n&?`ElO#LhiI%E;XgV7_!xg zsjXmgX?61l32iPLvd3z}|75Zi_kK7W-VBG7gyr z(;fT%BpdTRnvGy7WPN^`#5oG_ZWE<{?`yQ`J>1$vdx>mDpk> zfkiYvfXWZ@Ja)g(-=k;Yq{(R|PCBtHmrwaWLcdN42IRO<+NYP!hzmThhb_VSa}0hN znYTui&A+85_-9}mzDY^*3lP?6QrP7H_s$s2KIS5^4&Fod)BM+2sqFAK&p66)Pj_1qSf z4(#u3y7wGhS_pptDBp7)W=$S7n^;AhHNk`0nt#wWxhQ=63ij?C1aFiAMY`r?vq!0<{vVu%6G-o zH_Yl*M+M(mK`JkkopS1KR;>9%a$FAO(+=7ijVBx)S}2~aO@t_QSY2RnL`|-a_}3m) zwj`|rkwQx_F~l_@_)<(|+#MK|p9-dVG?ryK5Q!q*jow zdJr+m-V+hC8+AZ%i%XVbn`olWc6$jQLU@QIF-@Yctv^_Np3$I!P!wNh>wfpTA-*Rd z@ex15|6?_Yl&oB=M`vZ2Kf(U-&=WY>GPTHLS+wR4R%utVTPW(e&lRl@5oF~yj~TX% z7n(3PfAhML=-2Kbz}R0}2#UuY4|b~6_E?+~J>~{V;J>BJ~PRe6s0dlD|Mt5d58+6qXWwgzEjQ27c30u)4Xb$h31BpJOG zj%Da=Y`{;10S5s9;Ec<|m;7s(2YZ9SK_6j(gcm)j%1Konu~F_Kh|_Qly%E6neg9U0 zg8-gc8HBoSTzS~V;=SVmS?oStdclu1mu?Lp?FR9?J+PYgDCILxe<=k}X@AAcrZN3? z@@!#LzSeCQUi75B(=N3DQ2sg<>+InEsgr(0zEYq|jCeU5Rm(Ythb?5L2&(a{?7h4UU5^OG|?cdaB8UHven&$2vHj4?G z7u8Cl8;dP&>jRep+zye>`j_bS4}gF7YwEG3*}?L%mGPAEzSC9m1*czm;hKRB4O zIB~}0%=Y6@CNm~6U~}WR@|3ysnQ0iNNc4FdrZaq)lgPGP!fL{!-^SVkFPO)W!2GiL zf@w6oYh55A{lo0o*TLAy?5bJ-MfHV2vBf4Q7VKBtAkUS7y_qyi1taq694XVSi^lZ4Zs~eOF`Rrhqx+nvCr>1} zj5Sc$h)j?GabE8lF<#qu?S7*VCG4#=SXzn2^N~oYIda>mfCfm*xv@y24z*agsD|ex zvJZ3C>}8n)Zsz^>?fUmSX1|e;!_*UgLVFeHmY(*Us8dI2TqTF)LRdf_;1IK5P^pF>r%5Mih?dMrGP*H}HFdb1Symy~skO+*^w>Q7|X zH~zr06a;ABdu4idU|Xq#h^vCsB~GLr?j-1-gpctaYM7V^$O%YF(mK-*AlH@ zXj0S#XOeCVXx1sf?EUsvE}S#J;OY7-$R1EBVU}X>C3-C)tKQQ*9O-1WP3;*m|3Ky4;kp!vW*g84dU$amB-Q zt>9Lef~&qVf1NGi0q%~h%v?N)T)?AFd?*!;aG({5px8;P6bsfQg-9!l>HT-CjAXYe z9?px4juhTNcZ2sZw)-nc=1Zt3wdG5f&tYP z?}f$pGzDGyV=PT{ZWCT{AFb>NS$YZjnKerURLfmS=`f3?e3|<9s#Vk`K+RMYyq6|} zzoiZg`3hDt!GhdL@0c^m6qzDS5f`h1m)%cA1a;(XG|4!X?IGuT-iQ?slNN~Gw@$ooBvfUN zQgd0H5MiZuF`ks0fT(3QsG-9;q!93_Cljx3Fwd^g_(NuXI;(|2p(w1;Xq$P?W6&rsrf3BtnMIW!=v5 ziLWg?)-nXioUU+I;_H(?%b_?cPP~(Asp6sx%#JweVw+i_$AjT1_B7M|B}uySk3hJX z)2c<`d8C4tpKMf>49??DXW*cvIS%i=y4&Ceyj98;n@3mK_coka-RSeXsP=6uboE0X zT)e8ckEHPq0XR5G&i~MU!Hy*ykHHw;Qo&c!Bj5NwethkOU|4&)SNY+%)P_HN+uHM>X>@vhqOdTpas zbg%KTlMGkxAH<+)k(QXk(`HCDH_gEmWAI6G?96uxZx~t;T$4*rsl#UX3{+J;!0*r- zoNy(>WOHO_iBvIqM;9Vkf zgW3^!`B~Vd4!ymavpNZs?d&jGcp zy6IAb&VvIygVmqsiZ7lau}10XwzlVbXZ4XIqu`k2*XF>@;u%)sN$@#3@cQ|l1_1iM z?R6v#Fy5_iG+)jqMtP@o-Bh|p*}fL9U6ZfWtrBSKRR91c9z{Y|2zM8Y|V)cB<6cStQQZRTH@i6G(&kyUD9n5~*E9JZ z7l}{%@^Q1!cEgz;Pzn=jr&uCy`;l-ch;%1**#*k$PkXZPm~`D6xOqGaGd0ZvdfvdS zNsxjs!Uqsf6c4!!Zsd(x_o9dTAZo|=&acEW6Om^u?M;ZOXJ5vw`*LE3Wr##^i|$wZ z%m#mm6X1_@numAVkL*XD%(hno3X+JBNmAJN?Rek(yr{|Bhe;;uKrb8#S9B}xm98O_b@R5U@0i-cu?=3IJe!(^(5uz+qt$frAvjd zn(_1VC1{9&X+2ME*R+ZvCzqjg2-f2w=fv`Zi<%WoSIov?s)WGE!s7(qRF&DLfP2M)vfPe zA0+uV-ao#5;qBSkT~isL{1M4nuPU>xEjF#H%E~}fB5;?g$FZ^wlpfqhV>r6>yr+J8w2yn941mSLm5R8CXTUw`v5OuZI2aE zuA@pKX~!U+d_-gxuerTV8ziIcEpn;Tlwpz4yHMOW?);F2c+z(l8ceYK!#KJxv@FM0 zFe9Gb4Og(WVd*qKjukDpB;rpvQi_7yaqi{GqudBzB}sj#tQN)T^G~^U9pbtc`)Lt@ zT*eH|0;2-`L6VV$6SCGL??w$jEuXi8+@k}`E@Fa3*`!DF^peLkI%hOX1K?pD(op70 zEJI_Q0%6A4l$33(wA~7k+sw-h0{|ofIIY5GVGQY?;`bXpfAdixHL>i?S)0V`<1^w9K1c|8GoYa_koAhdx3^8;F z!vv?RNPuY|hvlbQf3YN{*%?aNR%`<8mIm82lXglF*WTsrxEj|=`{UtXva;dI*Rnhq z^@e%x8=Urw+3bU{5<%qCd@9=bb$~MiKbH)wGhU zuxlcI*Bw~vO1j0*<~s!-A>RS?6MRc(39EE1xi}`3WGr+)4Ii#oYv8}-h5b#90#h8-TK(5G$dp8U@$c3(%lQtBl@4$v zXMW+*N0!fyJ1W_dD#(=Es%D35zAM<=&-6edFCZ=4NQs(g#t4q3R4=3zo2|yCGjOGS zQ)HKth-1YicPikR$@0-0U-ofA(>Zwe9z93Sht1#^?>G3eIqkfBYKIls%KW~!>B50s zGZUlnwU<+oQB5P~u#f#dJ$&krUCWkod)0GBjw#h)g|eO5Yq&t{K$y-`oM!J=wQx@| z8^J4{$HuUV7(1KHYaQNv3qr}g447|Q^1H{Nmv|iks;VMw5Xn{m4Ekn0}aXN zJn&^nxdkhPxE_#@A>ajr+(^L?CC`)g8kxt(F~A5FvMMt2=C5`1)c8qm*)nM?qc%y9 z$SqH;=cW$p4;6FJiUq?ngAYVF=)uS9K5u-jWcViVl_D@8=Nfmt7--Uo!aF~sEy75f zIGp8=pGMM-=@9a3z0FTG9Nmo19>y#N!{^?N;mZ4zZ-RE{EW8kdFbLLK>kkAHHI-SH zHDe%31fXGD{i%dPdCIZ3&EE}ddfh&e3f5Q7_BdGXg;Fa+LerC1AxUE>*hMI*i3(Ww zWcJi0GWOhR!5W{#oe6s7^#OY?${K;`;HPO0Wy5hw81)PKmO}!&&NAYCcB)@|VE4eA zl>zG<0YaOD^1E-Ve|ez&x!$dol%h$3YJV#L7zm?Q_|tzqQ#J^YN~rr{d+txy(i;UE z>`3k=&QB=lbIYBs-q3A4C8&JX$KM?slIAC$MDa%|W7ei?@bl+n$bH#Yp;e$>)T${1;$vq3T}|oe$eH5K;EDD)thW#z0rph3?8;i7qpBp; z)_2v#v_cLbXn0QQb$sBR!LK7t@1?+fpIJKLP;Z1Pj^L@NybNapy|%{t1?Tv@*&j zr3Z>twN-UG>Ur~z5x@`X;Id-`#(kH$bBSp@HAJI?y;72pl0^a~H9O z$@Q3qXD%-0Fd6I+dc*uKk~lAE&1R47BswJSCt!w!MJVHs_OF5o=`|;i4*6$&+)2 zlnEs;+*+yQk5(iaus`~ztl`s#7VPKaQwiUNRs>>>3=o~Hp)G;$FR0rVldk{BKI`TM zjA}4LthJ3+pFf9ZEfrkxjanZ_CIb1$)fDri{I;)Or%QC4+9(<=G|_7h-Sm5kCZD`5 zSU0Ih9Lc%KwHvTy9k{+dAS2P_B9Mvs%O`~bSXP@)KuOyG?moqHL>o>DNiv8gpE^QRiL2>UFfpWhu==IvJ37Ixf<#_N7Pm`r9^0E|N|I588zni8xiJ%goUr>vf zaogx)n*c7c#$Ytg#Mc|;KK~rtK-O5u3+Z+N0cmrIrn!uhz5W9~ykU5~jQcR~xdTiZ z8nl#lOBu`8YPq2~!mC+{@C9JXL|VWO5^|fGoj~P22#n$`)83m@P$@aXC8~Ve;hVq* zSR6>zw0BZSn@2|q$!?j|$Mp2kjt$)CunGPTSHcUs!q2q(hZ5OOk-tuOMhqhx4 z-xpAPsS3>M7D^qUqIJAhz|A+`MM8nOC~B$kcrKVR1CN(|ZR7{43ljPK${|~R`#{6C zV<(}+Y~BLoOalN=Bq0_nN-k}+SZ_W)~H4R1|ig~CevsNF*!8;UTTs@ z7edEK6-dth#Eqob6G45%=J!!3DNV^qB%4ugBkl=__zaY5T~O*VQAz8#%s2Z}5i#Lr zJm`Xa#1Lcwpd~B>q8Z)ycGjTkxCmOEb$?{@L9~r_F=+;%&DJ z7xGE^OoB66ZOBf^JO(Bb)%QrTqGC*FCu@);7QhL-!2N%3xu%j>nH^|;YOqZxNKNL4|q(%Ym4(CsT;X`8po%|DH+?{uFw`s_Gz#-v=K{kxWZ$9-7?3uM_4-GDsd-OUM6N{p zi=_Vu*RkO?%ZbJANlEL+CvdVKauLc}9IQj`o8|gk)vlDq!T+5-z~6A`K>YdX`0>2T zMb}y(X_{=p6*`6JOh`Js5*m_86Lbh?c4vnYldA}9Vt+~;Q_`tPJhFTD<|6Rx+MYU5 z<=jbe(07qS!2DITe)DYtgPqDdV>OLQO6}s8_>3*m=Ipa;RenqF*&i0#dhZI%aFJ6F&jlR)6{2p?>GDA!9@xO4& zq?2J$p;qcdmT+{5%Kyq9fd4Q_T(HOR&2H*~_&DoE6OFIgQ}vM$Bi4eZlNdL}tMI5Z zW+Z`;&y z7*<@42(c%g)-@7+!(qIFspf5&9pRzOeM$E6#%%V3ydT2!mn&y~mSDj(uqD}=@A4f7 z_#G0xSVHh4hE%~*8)deJblr-jK^Bw_$})%P3FYW8Z`8@iKC=dqm+E@V*mvpTYE>8q z5I_{bBLWJ&zw&eF@O4eZqe15f-j0)jeNML9f3l0LH=xki#K7NtJV02E_o-J#@*lHl zPghRQYfM(@6PgJd0L2rN#L(-w|4Vx3nP~HF)t{FlUuKsU^->~GqLbHN9#vydkMgOZ zi-WItx)zkYhyN`P$IN5U4`rWVC%vI=KHjUtXL&yVl`eW~ zI()eUqb0nSGjNRo`X7DLcTU}ih{)~8l0$q8bSlICHM4x0)bGbGkY^mc&mmu9pW=_z zR3KYcd^-O(KsQm-!hB$=IE3GSBjG&c!9!(Z|++;FfXzPHZP)xPql^UQs_ovym! z8Y~$Aiy7hbN{#y+IO+yn5IS5<0n{@2s8KCF1e_&k|bvT6s zS$xhO8$fqV+4~29BH{SzOdo#I&3sz)ptGO94^Y|nU-;=XO(mrw!v z+K!vwLZ*+qFC8d`NtGri@|07XVyUlvdvcx~(8*mRW-5uh1ZEsZ9nJs+!F}GG4jC!` z|10lIs((4?NE%?g+1PA6pGl1JPV2g>bd9ooE?mAOU#wXp(AKK}08GkPW?6O;cCCr8 z^vc|F-hXYrOg)@$%h=(7aqEl*e37`~VY*gvD@?&v-Wos{O~yUr?2TDGC= z`%BqCR{566rjp`U{@C^N94vwwf~U(=*4_0G`3(zb+0)oxdxp8&f5< zO;6a-!F%lA#aV9J7e8cXQX)%U&$VCYvWvM5T@SF(Ef5JV235sq>pW}E? z_b!jD#(lyq8u^8Wv#B{12%)W$>r%QJviS(+;`YqAJ3uL6m8V7N|HlI#;-vji4K?Y7 zC{|rJ5sd)8CvQ5Q;OvsG&`3?DN##DEpPRx0$Yq1Xgm+}#;&G}A3=ZMjj}*bgtW53O z+xXXC^XrkXL41;ESbb~U&VnmfhvPuX#968Ix4?Qz)IjDSrlKV(KK~)Kgo+mfcXF}R zh&=WM+M}_p5fj8!eZW~gvrx^u#cAf<0M}e!ZsH;H_}GgdMwj8>JW_O@RZh<%d???O zCLZlGg!Nq%k&$xVhC9s^OR%-EGfblBS=3%+@wSotVY^6`_5$oB^1KtZk9(6_$<1b&frdFGVn_$#8xQO_^U!Uc1{>Q&;mkxc>Hn z6Q&5f;uhFuu^26H9{^o)U?RPYt)xcE1LcWHb0ZnU0=^ec{be!nJ3v#`&=}P|<+w1C z6+SzDCz|U1wiVy;KHJ02h-D_3-N{@raXfKRudqHoRTHXe3%fxw0}cbvG#@f1O{4_F zgj=HzFxO#R-h6f6hl^Z^jXl60w-4247!c7*>0F2?N}c7 zH309scp0cKz+zsti+*IMY3}tjPRbW6G=92gSswwEQ%+T3LIhBK$W|g$@2S&sY6wFJ zYW24!ma|#X)}|4fAE3EAVgXl3pY6kl$bszs`LYX0^&=5d%-Y9#S#oQ-wNknsk&o8Z z!yd-Ymvrqj`x1F)TtELb75^cyk8@#vqK5gl*P56EkJDMDo9^mW7xf&6v=@p7ka-j7=TmRPPJj(oNSCI#!D3qda!`6L;wC+r@9o|>6|H~3jm;cbJhzrYX9 z-D-)94O_?K?$Rkh&5$SxgzmE$Ff_Ddaw%cT()J_&$Qp-3vCOe9 zj6+Bchg)D5!F19)^>!aUo~I^5){8JtVysp`mrv29bFzH!xs8(&uBJ2H?O3%ZHx>T} z6a`DT=32nl;L0;H*t@pI1A)-bL))tNF@l}aL> zll~u?@3Lk<8!=DVuNY}qq!XC%@l@y#9dqvb+AMcPb`OQ#qGy;$n zE;vb{yz(9>ns-O&f|^8xYg7R&hw!kYure39UK8#wCDv>L0;xt679u(do^LP3bCo_q z{#w~)Km9BC5ZFIiq42fefM5tJ*MesA4#a2nHvQVHk)8*+`dB>7{ei)Io~B0F+9b$q z?RcB`Ipwlg$kKB;`nGNoUHmlBH9mzDf2Xa0YkH72B|J-o4SD3K>WwvOI1SEZ_@{^yjKeb#;{{tGf-+%JvDRwR|Pgf^++yW zmD2ET{RqD?WB7tDFENCR+2$E{oxYPm!T1tT5#;&9 zv9D+wa z6rVM@A1&co2DPpmS!oQZ;ydKH^jC4iuff5iR%s0v4QG_v%kyfZhvXuJYB9EPcg=Uq z-QfJO9N2a9x3Bd}^CZ}%s+O&iCy)YACW;Vq>!jc{7Ay-2XOZF z`YVrVlSZ(ClIJ2Ow(y6ph5B+h>E7E`2VuH3OOGT8u#sA|3}?i;yv@^ zyf*Qc<1STfJ-=0X(|75PaP3|H4`*o{EvWdB!CrZgLIDfHwVjNJoy=%#C)!u%V_DG# z=(_RX?pXnr;#6_sCP=R$s89qR-9RQfCp!xDnf#ZyxA;VaCFzA-7{kR+qwC4Ok=jfCH6Pa0GYeQEo*I0cVvDSr3(BjenOt zZn1=bb91_w{l)jQzc~7{9XitvKq`Tbj!RVY5-Y-e5$~mj*MwqfaLLhJw*U=#LfpGl2QY~G8p$F-|$2`hc z6)t4KHASujs!qt!Txqjg6V*e|iY5j7R7a6nN8!<1SZdXSJklE>Jr9FLZBv8zjrsKj z>dXSmxHNHwU~kg%2p^51KQ=UNRe;$TMV6kM?XFzOuc2fy`-imrSG@pVB^I1&Ith+! zp|d68Lb>>tARw@HGmH`SfoT^Zx%SqCWI-kxNLtTQIw68}J;>}G4dd4a(WqEwJSJ4j z+dumZm@OGIozihRGM~4c+1t}95ek(-lKLs0sq~@fcUqMs%4{hO;0?r|^jdw6USlDO z@XIh&yT?UJ;4Hrpza(&+@Slk5j7@~yZ)3jM%?0X2HEe5pHa?P)UBqCktzemVqkS}U zIQ;f)iG+4>DuyHTJnWnhBO!+dAkDeIeoX=k$k!`LT{Epud{Jl~MYImAxl_-PDdI%bSdZU~;qUFf0J#Fwl^K|Fq zv4LbRTsEfo!LVzbrSu(RBwKVU(oDfmk2Yv@gkp@3?HC%Q_#Me;gb&l>kU_|PJwl6u+M&+z z?Pqw%;|l@7aEE&Vavw+_Y&3ZC(fVA~@fb*OQ=i|up{KR)A^lpVC2t6AQD`j$3w1m^aGY_PE!zb|{hpzS@A$P) zft9dhoFTtk;1j&%LAf}WYkSBpLRFg!!LRM2kfH-}O#=4wLXXxb6fmt<=V?famMm8U zG{zY~T$O}AfCCPgESN-@vJyr18u<}+9{KPp_`W<0GDgbd%2Gw^D9O!~xNe3CEhG=c zZJ&NN3lpGHqxMMbhvEYDqGMJTUzzn@AZ?K|W6Vi-nKvJQNqL+sy}1snlAtg@d!p>S{6B>L3Z1rFQDK76iikqCh(suU+jq907W*Nrs zz`3so|u2o;zB6cBORIs5J z58+v_SqR^|fvIO-OtX(w-*g8tsrj$rO6tWuNPuSOQDddZse`l%M{yTI$!mJC!wWGq zUxoHQYp?KzCu&}S^P#XX1FtXKP*~zm$v+NqY_A{Y^kH)03#t>)UaWS$s-M2 z*23@_?FY`g2DZ2A*?^&8#0cUHg+GQtKgW=Oj@~>VItGO5VCQ-`E(JBxAfGklcpGYF zTSh^d~mYvfR3m5C^qmJeLf@OeD!+R;Ajoa7|Bh zhiC_E4uVbaz8o1)$ykfXcT?3wt4gQ#K(cH_4pa7;!&bayMtU?5H(!U5Pto0E$V3C2FgIi@oIYC?bb@n$7kT_W} zl=m2Nf?-I_U7%NBj+-;QB?cl^!g87IGH|NA!}o9#!F z9%WtUZv;xvi;VGn0lFV|ahu&=rxuYV1){D$b2np15ShCx7=n<*%-l4v9JueItaUoJ zajDwJWSf+>vvKYS5kn~F#y$SZW7BP1@k}f>e({l$=_7I*)%nt80@$uv!_&sM@VGCG z*aX@47i*(tAs;^ELh8il%O?2_ZM?e98u$nV3zB69D$++9-{jkl_|A_0+A_ zO)Ch;QjFgq?*C~6IHPM22-VV!6(Ptia=jGD0000009FaP(UKDH3l-jlNMzm2{2Adh zXmhHlnQBCJCWDoJbhT_XoU+8qRg+&Vk$x;By|C`k0~rvZFRD$r)&Z!5*;9&f$%rv) zT84!q&$Fzi)LMO9T4PC6tQv1=2R)2tJ;5D>+~~;(cZ5xz&N9OXZ(nTLN<6spH_4Ft z35-ghNzVtGxx-g7gu7roN;0r1M&RL6n=+j-`rzSDU^l-O;jk60q$Rx<36&YsYYCe! zKgOvAdQSvvXT}@}K;wF>9DcIg7)KGSD0IfiWj2<8!)L$5B$n_v zl>uiernjb71<+kU>j3T-p)qv8Kc?IsWRBbF4jAgzR|Q9zQlUQ+!&!xp^rFjh1cH5v zg=8F_LRdG*JL26uV0~*WHyVipkJl=lP9IGoY_`1S6ax~@iS#VK_}H*z z`!VH`wF=2irr&n%v4O^?dhPMAnj-Dw?5VE;kl_%7dt?FUyrTbW`x`}!UScD9C1B_N zP07BGCtY12jGv*Ec}Lg|tR_Z%>A?cEd>P0#xN9!*A}Sh|L}&168K)NMN@w*YVx}C) zr84^>mk(QNm&3)cE|JwRR3EWDUTTWZ!)n|t5+g@X>aQzAdNO-{U1w=DrNPjOn$gHQ`imOz>zirwbOO-1Wmpr4b6{MJM4^JaIxAwJ)X>mYHMVE~{?XYW}1sUq+@&@7fzf$>xF z{$6^9F198qy4&Tv<2^St=WCRJC@RF4xwz*J3;j;orbAeXpqRi)BueK2yey&|kaZYO(q4hbPh-*)bum zw-4y(hJ|gT=bCt#eByV@Rg*R|cRrOE`pU|L$c5PIWzd;HW1h%IDpMFQUVVu}y=F-U zSsN+ujE7nrEYOo+ZfuK@rG=1&7hTFxrVf@q4I{nyO+^*}uLA^+WiM+liF(H2p? zwS&gZLjz1BwBBkzz-Z=|e%I|8>dg$G79KEf*sq-kkXBoJAL)9v2p<)kgs1aqi_&mE$6!M%HCd;|>oI8X#W+_4JJ#u# zTBR)}d^X-`(UILUK_AYhdT@WewHt<4B9>sjyr?rp))>t-8+FaQ9D5tVa>u4M^!!DsP!wLlG5 zXb%=S?wt;OC;8?kJ{Ny|UTM&{-2T{*cUF&WZ@$r5WWs;(qy<1-j$5^o`}xuAqpHNu zhf@91RikVH*Oio@HpgbP@+Ac)V3-cSY-5>?afaNfifbt4Sy&RPv%GhaVo^5!V1Vq+ zgI%y^AB&KU;*c=*c3bNwL8i1e7EKYZ9P80QzX+j(31x-lf+euQu!NVKcCzC7%@S+t zz@d@>*@+1C{D79j1Z-?HjnL`y-IeHBRYeJp>DZct2vhYY09~I@xkOKh)($Nwlt95$h52LlA+p;=?f4VPIS3@xH?q zha6(E3}zF{yyqe3m+AKz_tMF@sX1##EJ7jQf5Mm|6KHFZM80L7?{8*KluC8oOMN+-A7Scnr~l-?b~GLG=Dix$l5e6mF|U)%$q zQof?U-JaY*=(gaAp3ql7@?hvIGN)(J$w8O`h()?0-k`O{F{Lb7YY)CUt8olsz$C6k zGPu>Eq`+mm4J)KTBqT5Y0UlB?hirYz2)k(1vMGnHeZDpO7kZ>8Gl$BvCGE~m&Cnpof=ul2 z;s5Z@Bc#NT=LZbf4OK?T*~{$PHu{o1FSx~~;0Km64Q7qooe~XtQ(>?$(S%w?? zxoHrMD!l6WFYxQ15?zB(2fz9EqcGclj0_e3crHeUJp#90e%-p*8!osi+P(n`PSBKS zGnH4t`u1*q=z;wqKtJkTOo?x0HZHievq9sKb1z#-@9)|ZqrB}-(){*%=EzzDNN^b( zRW8_Qfc@>Nray!1kiH6C>q1$aWmzvhx^A-v3kt>)fi1cq<7xf5 zUi`Zres^`R!~KzpHJWT7+sJYCEdC7H1PYb1kE8jJwduZ4y?IUj z1v;ASQs6sOTDU<0TIH4grSx0vsc(2M%LSaa2(JGZ@9@@W*a66L*S+u_02^ioAFk^C6yc~(pFo@GCAC2t=pemG;1qTUXwY)6?MQy^w!q~g~$)h z;|#O5t)W&!seR6?Z|s$fp7?Y0%jp|%4Tb+M0XaCtdAc5atU3A9; zX)ubd(~L#2YV{^y2G!YBMBa?4&J>gzrJs+4SVs4J7LAn>P>l|=<8Y?oJvu?xo zbBJ>#o%q>#U1GCB^7o^Z+}y%!p;uza41hp(&XQ?ryJs54l?xhML3J&1E8H>shzpJj zCM`|$Rm&m^>KTig*^YYFA(xhv%xucL06a6#sRC`Ceo2j+`*7!pyM`hHitImA?xoxV zyDX8OLGw91v972wO5brVNly+jO@PGFuVmE6YuI^1<8Gy0(R-LJVSWy_#GNlg`!FVK znGCCd+r(f;Oi-srk9@1z(A~Rf5xQ)RA-xj}iEaQqGr>M5#Q$)b$5w+6{)IymwXH&e z?vm+^c^@@T*RtCD<%5oQDmumm1Uk<0c=n!OrM;|qy;XytCFKg(dOC0>1uhICV|c^K z+yN-)_P+hY=YVY~3gea3rZi=1{`n?wUU!_?=`C$Sjm@Ia&T_99#_GqAI3#uvz5h&_ zy)x*|_O|XCl>M?)y?kJPJ^z0Iu4i52mC(p_%?8tSvCQ(Y{yza_b+SI}W%TeNYX94Z zY0>>n*$inAoX>M$q!7pBTA6z|@5(%PL3TMs*SH7z;|595x#c3(4#GVe;rK{C^mYmU z*GNjwlTOv#b<%}>)Bf(nNobBFEhW!eA##~Yp#StkSYe&Vqzg%Cqd~236`m`iKUnu} zO@pb!PAo^MVltnX)Q{&I|JPd3lkXF>r_Nme9P^6+Ssg+0^LK9z;{t>Ja{Dd7>P_{R zdu+&S*Z#=~`nU%C+IsAz8O2(D4}6 z^XI>L1l3jzp&KXND4?b_EMu!Mp`U9@8rY|T)dNjI9Yc98el`{v;Z1HGSsfP%|jJUk+mZ$h;G$Rias=qI}iIx?XpsGkv)=g zFIScqXoGvEVHzgJ13YYE9L0B88Ua3tD-&eq2jdEXGqeZl7#d*|NORW`$|aNarhPnd=ED4^ z%f?#&B;@4sdDZXrJgD!8{fQR`txm|B4l&ZUv|~IoG*1iV&;Fz_Dobl@DeKaN)W~74 zdQ4s>t?9ZG)Z|>9&|2I~M2Cys!KhZheqacbji3rW{9@l(g}1tE5T~V>U#}js%>Epv z2Bd{^w#<=$bVOa8_aYQiW6OL6F`C?UH$!w#jgrbv>NnxRao;0FHyrdQpw zOMFvkOWMz>6SvU3-ta<+fr&^&GjX6vdQUbyLCK8l&ZKV5;jd-eWfbeD*g;75&f1 z*KjN*)3Hl+D6N->jzxx7Own7lAL`CQkAUkGf8i|$>sWeMir=4LV9fsp!^yPw96Ls_3xWI?+laP?QT~K^2zQ0ccr#@i}@>dPKvDq4Ks%)WhhU=D6PV) z^58^^?KO_>OguA#Mw^44TqAwm8J10~wkogGWYEUGl7=*~PWLP<(&I}cV0g5>@c1n& zq^ygoHG}ff1oM-IU-lU0DcPew&uE{xRA?7UR~LJkqG>n#1}{)nh$KZ-(i7uK#l2#qtjCDml=?&Cg+Vmpr5% zo>qj)pm#!rq#^qi>9HhhcP`tEUbN`2zuPquPa!horVvUr!2W zwrBTHe)c9u=|V1?NkA!7Dl-yPSZ9y~Btb=LwJ$#a+-@*dUtBSP#dJ)G;88?j73p)G)_0|+-za>XVo)-)BoXOqwEnV|^_%P4UqDY2!}5Wtwe z=n>Zab}imBpDa%3Rc^3KN@8I6U$1@UmSZ zNyoOrboLpeK+1WwwIL{BzVqC*yK(jZ7Z?VQ@KejNvLiq_o&miDPrl$(=JN4rXe=gj zbyF8|sCL61XAlnTsp^gggkCPu#}tIvEELBw%lS&wxAOFqMw%|%)s zRv}=}56k*SL z0KfgPZi8<}j$*yoTar*m_o>%R4;xzv{b|S>lnk{105i&-d++l1WRLHHVO86Rg9`f! zErz9!4+qN?*=sKfwdB80O9LkcXFi~VGBaEg}BnKX@t#I7)?7~5U0zfDD$@^V*Nz3tW?T@VJMi*?N zwP0)ZX)^f{iQ>D-)|763?Y~EwsvfpgaC0V~6wTL-^>}k690e6bwUI&QXC}5*+ts}= zQkQ3!atWS>ZQ~IB-eQ-Hw(@;W#vQEgttmHeImUoV#M2_0Z(>})51o;IL%7|sFdC=>rQTaXGcEOphI zkz!#doC#m+_@^x;;LEGp6A0(aXTCkImZ+Pi8Q_ZpT_|K;8JvAHa*ckQ@V7PV)+a9o z@M18EZA6y7nxrQ!hFzDqvn5-#oefp=Z?v^2)4L%ebgAC=38@l(kcY9~dd%4~Oeu{6AT>1<|Y^<#hQyfa=!D zEioUOt`+y>t}2Iae3)s>Ij?_?y2U;X*ijfr_q~Gv0R^*{$EIn8=bF_FU_r!CN{d($ zB3roHgJ|#L{y`Y)G#E_B(5!$cT|cc9Hs(%X45Hob*r@4TIZZc2th|a8AHT_fg{w?Miyymr$f?x=N27_3;5kOdil^kz04q zC1odVbMSZ>|NTgrFPw7_usn3zQTAgNN7L^Nkvc4cBmk5B4JGtW!5)KRR9lSViLek7Uk5d%`WKxN?-s02|BsMS2BdVU_44P zuqj61;ZtH?A`o*pziZM~I9j3lJy@|zx{<(m(WRr%F;qm0zC^)WyQa^Cw6G zR`}vY6422qVJGTUlh2X?(l8`6sYTiU-+yCso{1kR-GraL7CQaFGJT8%cr_?bOCDbl z&M_CHe~Zu^lJ%x_`qIypJ6%7 zBjkqYu=BtC_SmuR#gicmq&^7;hwe@Df3OR}gRW{g|2cIy%f8n(FhPHkFODV7GaD zX*Q|5=L>MGm4zt-fmaAW;aYtDhj^gte)O|Vs8s=o&BmNU*s5yQrnJxUBZ7B`i=@eM zbVK6TP&9XT8>uVvjvD6JF(sED?+8kIt&I+w(!C+FFmRDfnBbB>a~1DE`i-Qur<^RfAwy=c+?=8 zufE@Krl8t?;yj#n+xT7loRJ(x41#xr(2@}ymKc&%vtcbiT7C7NLvmd=<5tQ=O;dR3 z5UZ{`i+_GsQA);}qAZC8ar)c!NQHDBU%1hGj`6yP9MPkew$pxnWvOmkclUw%Ig zP?@P3Kg80zT;@aQKd9Xg*lpBW=ROs+B@tPFC}=tD1m;@nHtHdO34!I1vT{dxgmEJY z>)X6%n;s~;@Z|7U+{z*UccCf=0iO?byAW^WNGgnE1dS-^B`qUY8`c?Xp8)zTEACZ5 zm6%VEDEnGSI98DKt91F#cbWW2EFl1&sl}85e^yS+2f4WKDWCOP!S8XTRg$L{Q{~uR z&M=CcJ3@{Zr>IzQyxVQ^Ug+nq**wTokl3Fx6bL64W#V)r(=J`%qn`;j_Y7S|PMbBq&eLr;O#knwI+F z9;D7_+Se9_FsrKJ7az^VgB1~P<-Nqt49ile`e|QJB>@{+H*6PLO%>_Q=S~!SO8D{B z>tlses2Z;Qn%StC*&ee}ECvv60EL{CJi;Swu+UFs~-LcCk zO|m>emefKvVaKl4bCSN*Pm+|dPq9a*m8AKK0=Dr@_}lLtkK9SDYpNCN{5yFpQ(EFo zEl~$t8N@o61Hs}rNBW$dNG3BD8W=A=ECQ^5K~F>`>br-Y{LYmpjWW4XjmU%_An~U7 zj(*1>rmP#m+#*9OspclDonNt@I2n>zN!F33>S&ERenCe8T7In^X^AtN6I=7NUHvcS z^c(Rq(#S=yTz-P;Tv|I`*Gc9CpVx1wN>WbCWQQ>Q=s%vF*OIgwGBFD6jMdA-RN<4X z5Dv9wW}Ern8}JikYAt^Xa^Q)ATfXH#ifVS~h?I)3BH6WjziryxVP|Q#*DQrDwWkwz1t~1`w#2@*N zo6`}X?z>aa!K4i4NwMgo1;`FcTeKQdX9U7={#`Ff=tMw^Sz@GqHA-QTeKip};asx( zjoXX<&_JyMwp;)J8+Z(U8hE2!Py>#hO_p0QLp1RMhZ|inw-sSh<$Z+^5VtKzhX+9W zXdRpd_|dQS2geraisctwR(^X=wD&(4qcdtBpAETN*4)*+3_~ur&)a&ZfZYJ4iSTk^ zLUmm;Zs6EQ|AzVlnuB&+uksXWL{rt({kZlY06X!Jgd`;CgMtJK_`Kf&{?Hk z+h0<&jGAJ?O#+CFF7>tp%)4xBbDg4hAlC?QO&s1}+4w z>nY|}dkmvBGe_mp(IM$uF@h#yL=-;e2~A%bLEiqhWT;xGwVWd{b){{lhFDXOKKp^^ z&Iw@)kJ37u*qkr;FTk;!3y$HO9oLPSWa~w{xupGkHEgl^zgr|$GqnVgeW|HM##C`J z!3Bk&q&F_o!jd8mcJOh%ZE|lQOE~24URKNspeEC$Cag@k5~8#NkBHU{S6rV2_K)WC zmZ2S=S@et`I0%;1p2hyfB0NEYQ>+G3gznD3017-xph?dMi5RYHnhMx{TLSSTrO2s$ z2Vp;wVR_&wc%d~z3$%YGk@ALJ8#A5XodHFDUx8|zMC^u)bV~}5N&#SPYJR(tn_K#8 z)S(!j=5!;gsdQ`YuOPEJnkIq$q%>A`^2%KdKG##A3-I>ya}}5Z+E0Zy=6$r1m)oRZ zk%}ojj~G*%>5Ob~Wb@e*E9g|!#e{nLCwqypUVz;|t}%_n3EQYs^sx0fCx`M)@L$Z= zC3Ozz!}g}f4ATRfu40c?E#*ujOtC9~2@YA$E1pNIJ%1!)dkLxU z694z?Q2y3@i3Um5)==pH6G4L0;gGnJQEm`-8;~NcmbX5e1fMu^ z;eba~z`q-fFmXu0B8e~_o#|@hxJqe6cK7sY{fzZ894TtWnOALc_Bd5RWPV1gWp>o( zeHDovK93uT{h$AC`aZw2t@w`l_s9^3wvm(?y#Fb0ilPdE=l%^mgaTsgT%$+i*JfJ_ zX=_6_q8=?F(&KTqCiXSFO9Elozb-V9qNyB_lur*>0h#Ch?2|7A5An76vGHMf;#d9} zv`igs+Et5TTo!O3-3+-M&2Wi~*Khg~RxNT3Hk#*jY<1^H2!Qs@Bcf49#EGn+wYF6X zM5%B4BIWo&C%%LdbJy$zz-tWx_y(oAo_|rG*y7E5jzM$YT+zqd zMi26!ZaacEkmm}gkWE=jjjN6qs%6=jYkQYsDUw549cXzfg(}H;A~l|5i{a#EoyRWM zrPi>Qe3gYOVtYC$k%OKev%UB?+Y+33y$1zaUR>DqMU@fSO!JbB&Sg^b_7v!$0EP|F}Ak#dJ^Q?hdT zGn$a6RossW^_RQ0M6a7l36jn%brF92-ArXcL_{&>m&l7e)&YE36R4!)9Y+L2zC*vn zU0VURdA-jz)RR+TzTTA3$aM#=_RDUrQU#a3(h{0mC=ik}oXsLnd_Vr?^NjYOZ6stF zLu@?@!GTfzsV06^B}Fb}lfRX76$lP4#tuX~iluIG!Oqn^FG-)r=kiF7$+L7nwcacU zWzbaA(eYWaa!=Tz6hI4h9s9|#?iMqXb+!3Lj@42%7jMQ`&Jopr3Dyt@KbMZx459gf zpm&gJ$H|W_I(s$=>`t7@`m7OodLBGDv$Ng(4p!uGT;Fi$;-$^ecXAg{ z5*KoLubLM8YcIv49E^!`v5N|oxid2GKCWPgLhp1$Bsj?p}7B-``_{bvm)LO1gq|+Izgd3bK`Yi+vKyi zE&1Gn34UYSP<;5*c-h4~K(aOMX-Jq94VZeyx?F-Ji%Es5DJTF`4AEP<2=5|Jphc{Z zw9r?a2@Tu=t3|lJz7}9G<^kAqxy~~V^Isv)cWF8;b5g({=T?Y$Nd|-zj?dyrCiP!S zz`ys)Ourk2-73u;w>}Qbaz+yKYr-Zy2*JwWtAf&uFdjL=1U!eGJ1tT6!fo5Rm;_1z zrsyX!hw@CxiWptXw^>S*?Yry;ALvP> z$<&pCAizsYj!BXOo-qJXp>$G>!Z(N)=slhCT41;lVMlPd{GFx?{I4oF-Bw&XO|w9nM_f^cX1sV@Hl)8|T`pCz%Ze zkw0BkFQgr&uMlt?!DD7PbSCGRb>cN^u+ImdDN~e4^-&6M=p!6~3aG z0b}2JAW7&&d9`^yTSFJno)&%G-QCDA1N2m@4GzS75M6L-wEm>(MuPd~q{XR*6!;c? zyDj7y41)9T1~GgI(m__tbT1Y@=>`?}H|cCqS*Ix?NS-t7C&5ZJFeL0bBd>_k__4L~ z<@o66JUh^{5)#jb;*Y`dDW?w{+AoaXiL(DSPTBWNB#F7b+iw9Mo=wnC;v=eoI6Dmp zIp;L5x}rD^=kD7Kj1yEGVLaqYC)+4yhjnGo8`kLOBzv>Ejh>IN*s?pzO7Op=p3`YY zYuBanuraypF{E2!h^cT0n#T<3;_Fe|LzF+ z3F-+O*L`KS{^h9tC4S&S7E)10oOT1%v}y`du`MiOb$*}3VI?~kb=R5zRZ$(0S>%CD zks+3h?ZgAidf9xu_dK^3b^p$t4;RT!DR|LdSHI~&GyICMQ*e~1`AI^~r zMlx(*O=ET(<{73+P?lT`U=0SxQE|Pq%KKmRoi&97(28PAyCo9*qF2rJB42`Ts%`{ISK zYDoQyXNi22hbtqr0Sb3m=q&T3i()ASl6ifU%QI+$``bvE&D!T`u=UG{hYA2wnfXKK zF841ovw^8&$tjCCvr_*!k@be_yTg-~qiL;2=>d%tVMdOU;gB-!XI?Hlhy} zFrQ#UzW8Q4@JE%*YBzCc8MCg2!yY-ES%mMReeB~=mh3gATVwEAA+*3LKXw#|t z)xG+_#22CeW$~ct9O^m<-RfwpDR3;xY9zk46(elcV;*j3n{yz=w13{pVfo1;(p%MNyj%WxFgZMQUd@iusC1G8lMhJh8s+lNrVqI#6$49;A z=6?Ryys79V#-tgCU-eKUMnM69awQ#9DU0@&S%#cSb%IPxAS<{40#2@Q)y$zT*bfqn ztO`-MI8>(0r%ZmhI8)dT5XbQY0J!9J1hK(@kFxCp4~`ygCqet~`)k{_ZQHi(p0;hG!?&M%*}yvpt)CZK^gIk(HHM`Q(GoS98-+7pQ1)4#g?T0Mf>=7(-ys zWWr|oU;k!?FeoQ91RK!l3BRhnE5{m0kuh)g&d`B5Z9+rLN`A@2uB{yz5+wQ#c3QcJvYU)=xQ61a)ap378^?58)$uh3H*)EWDfsbPMy(2< zUKSW?0@7i?veJR_Mrl3(j#%s!|$*e?>b#WcmmPs^G% zB3-Kty3EQJ|Fi1}wpm-EO#PONM~-~%viZ{kI_Jn|${Ut;h%_Xr6w+B3>$zO{JW9?)olyv0 z_>k8plmA0KaXWh2P1y?X~Gy+rTt|k-tbPxpT7_6 zgUxl6gL$VY*k1BOp5|y$WGzf4V!?~o@F*;vVwTO0;w~yc6a}w1ah2%VxdKR%2zpRp4%XPYsd^&%7r~?m5Y0pR~2hb zxnd^xTgTVS3e>8wo}3MN1FTE;6C~aKbcSv zv`=?SV{JjEA6Ut*>@Jx}wUQk=?>7zVQ+T^8XK8D)_?kRoNa1kgm8y9XzbFf(zb$O|aw>#K&J zH6%g?L8BY5KA6<*4e4jM=amIh2MHV?=eCOSN4HW!UKtepadks<$!85c?6@f4WP_An zjjqiU>^6%mBX>`))7EqB=SZtdXC(LOFj&#sm!uz_H9HUDMt zJ1*Z&W_L=dg-ADv<=KdB%vk@hnG;C$?`srgMmj@Us>gQBog7mqUQr(b_#Y48xu+33jB4hMh5 zAPy*mgAjkUmP8XTS;60^v66>(mifhtAI`Tzg%teif2)S^r9xPO9B|%mu~@6hsin;m2G%!3p_J!0Zl%icmHixurJ( zrFIHSl3tZWH(9HvPI5bNF{oVG7Y=w^EbC&`8hyC|4>{MViySHg&ivLNHeg8Md zFya=`#(c6jBEiF>tosU=okEmX<7GeSPbLv_$o(72zW6T-v0eC@56Jv~_{tO3d%@gu zAA+5suQ^X#)ZcM1k+dKLaIx9^Jy4kC9oDty>6&GGUVMIwzS>vDU@hkX04%DfwDqX? zleJcjboujN4*N`-C$ta;Bo(()HADJy$P|v$(_s*Q@tz+Pp5<>kT#Tgj5E{2YUmjm-?!k6QvvOnKcF8Hda z>Xa=gOsb=Gi}hyjhKv}#8g#mwUuul!SBLnMBJ02l%_K?wB2!IR#Z2*isHg9D8xgrR zZsDHf3RiZxw=?u;^_!@Z%^&RLxOwvg{g>nx2P02c4Z5LXWX(*78bjXQJc?WUW6jOt z4vmttOH#^b%EI)ZA;O6lt!XLt$W)BBaa@mncsYs~-VnIvdm>6Z6KVL%7~=2Qj3{J*yxaN6 z7&I3gjvuy2(fEF@>x*Nx9!sPFQ~CFZ1uB(ZgF(d=)|uHfvQi6B1JpO$iypOVN+~8d zbzg6Af%y=beyj;d7+=xWv~;!GxVBPNijn~bnSj{6wVTVT`crxW z3~5(*8cU{2BHqYp6vw+LPR!e|d8zQ|KjK6#4MoKsKh9eQC39@A-qOBq`27B)5AL+4 zDvE|Q`0rQT0MZeub;xI&+4yjCK^NUf2yQ+59>SPa3nTpdTwBJLAZv!U9n0=FipkklhKagieTKH?p{;B!J?gRmyKAoik}P6#x*lE9R* zLxt`mH=3u@dkdl>#bbL$CQ2g1mu`+-Dz%}i`0^F%JnyOPl?HFDtH zA9FyAo1Ava?j=0(#_TL^?9{Lg4x@*yh2QAI3cxNd7UW-h#?|MkJZ7NWp68QltEfZV zN3wE@a!dfDvx_RzSuq9aBFpBu|GIiJzsEv9AKfWE^x3&;hema-#@&) zDMwoL>^>i*07Dhz#VlAP7>?U~UP<-=f zUj>S8QQBn$Ou7-GnWnjVxuUYxvUYEi^Uee&{ehmn(l{TYv`vPr+V`9X>2s^AnupP` z&4bs&FUWjrGFt-GUyiY~(z-`a2BH>4gE~O+-g(h%-!9#0#NCJeHvm3WE;c&onK@tO zwrVCS89QE}d(s<_XHw{Kpq@W{SL9@MK7rnTVHTw^>Z2|E1fLeI>z>~`{rj7py9=V- zYuKp!X)3ffXRqW_bU(8%#?eMYF3M_$i`E8V?fP4U2-47?-rIZ zO2*SaIonE^@ogzA250^Em7y$$%bFMyS>$qV!DeB97^<{OH>!x%>7cR3c2Lv;#^WZB z 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 \ No newline at end of file diff --git a/static/img/toolhive/toolhive-diagram-light.svg b/static/img/toolhive/toolhive-diagram-light.svg new file mode 100644 index 00000000..914cbbb8 --- /dev/null +++ b/static/img/toolhive/toolhive-diagram-light.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/toolhive/toolhive-ui-screenshot-dark.webp b/static/img/toolhive/toolhive-ui-screenshot-dark.webp new file mode 100644 index 0000000000000000000000000000000000000000..bda584247c7e054271d55828427bf9c42ae2fda5 GIT binary patch literal 84274 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 z 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 Date: Wed, 16 Jul 2025 08:30:09 -0400 Subject: [PATCH 2/2] Add note abour pre-loaded configs --- docs/toolhive/guides-ui/network-isolation.mdx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/toolhive/guides-ui/network-isolation.mdx b/docs/toolhive/guides-ui/network-isolation.mdx index ea11353c..93563153 100644 --- a/docs/toolhive/guides-ui/network-isolation.mdx +++ b/docs/toolhive/guides-ui/network-isolation.mdx @@ -15,6 +15,13 @@ When you install an MCP server in ToolHive, you can optionally enable _network isolation_. This feature restricts the MCP server's network access to only the resources you specify. +:::note + +Network isolation currently supports HTTP and HTTPS connections only. Other +protocols are not supported. + +::: + ## Enabling network isolation Currently, network isolation is available for MCP servers installed from the @@ -23,7 +30,10 @@ ToolHive registry. During the MCP server installation, select the **Network isolation** tab in the configuration form. Click the toggle to enable it. -When network isolation is enabled, you can specify the following: +When you enable network isolation, any safe default configuration defined in the +registry is pre-loaded in the form. You can accept these defaults or customize +the settings to specify which hosts and ports the MCP server is allowed to +access: - **Allowed hosts**:\ A list of hostnames or IP addresses that the MCP server is allowed to access.