From 2064c83177636236b5163badbee9aa71cb24c755 Mon Sep 17 00:00:00 2001 From: kris1803 Date: Sat, 14 Dec 2024 00:39:27 +0100 Subject: [PATCH 01/41] Fixed console error for SettingsWIndow & Removed ts-nocheck where not needed --- app/commit.json | 2 +- app/components/settings/SettingsWindow.tsx | 2 +- app/lib/.server/llm/api-key.ts | 4 ---- pre-start.cjs | 1 + 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/app/commit.json b/app/commit.json index beebd2bb2..ff64112c7 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "55094392cf4c5bc607aff796680ad50236a4cf20" } +{ "commit": "9666b2ab67d25345542722ab9d870b36ad06252e" } diff --git a/app/components/settings/SettingsWindow.tsx b/app/components/settings/SettingsWindow.tsx index aae0a8604..9fb615eb8 100644 --- a/app/components/settings/SettingsWindow.tsx +++ b/app/components/settings/SettingsWindow.tsx @@ -63,7 +63,7 @@ export const SettingsWindow = ({ open, onClose }: SettingsProps) => { variants={dialogBackdropVariants} /> - + ) { diff --git a/pre-start.cjs b/pre-start.cjs index e6b7001ef..841e3eb69 100644 --- a/pre-start.cjs +++ b/pre-start.cjs @@ -7,4 +7,5 @@ console.log(` ★═══════════════════════════════════════★ `); console.log('📍 Current Commit Version:', commit); +console.log(' Please wait until the URL appears here') console.log('★═══════════════════════════════════════★'); \ No newline at end of file From 69c0bf5873334c25d691b8db4a995b86125a6799 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Tue, 17 Dec 2024 14:57:16 +0530 Subject: [PATCH 02/41] fix: added wait till terminal prompt for bolt shell execution --- app/commit.json | 2 +- app/utils/shell.ts | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 832678f8d..2d7a657da 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "1e72d52278730f7d22448be9d5cf2daf12559486", "version": "0.0.2" } +{ "commit": "0ee373629789f01fb9f54f6747735b51a94a5562" } diff --git a/app/utils/shell.ts b/app/utils/shell.ts index 53b450f4c..3aad5b330 100644 --- a/app/utils/shell.ts +++ b/app/utils/shell.ts @@ -105,6 +105,7 @@ export class BoltShell { * this.#shellInputStream?.write('\x03'); */ this.terminal.input('\x03'); + await this.waitTillOscCode('prompt'); if (state && state.executionPrms) { await state.executionPrms; @@ -145,6 +146,10 @@ export class BoltShell { terminalOutput.pipeTo( new WritableStream({ write(data) { + /* + * const [, osc] = data.match(/\x1b\]654;([^\x07]+)\x07/) || []; + * console.log('terminal onData', { data,osc }); + */ if (!isInteractive) { const [, osc] = data.match(/\x1b\]654;([^\x07]+)\x07/) || []; From e9e785767528e1ca78b9b09c8ba0b73c37ef368b Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Tue, 17 Dec 2024 15:01:00 +0530 Subject: [PATCH 03/41] removed logs --- app/commit.json | 2 +- app/utils/shell.ts | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/app/commit.json b/app/commit.json index 2d7a657da..85591f475 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "0ee373629789f01fb9f54f6747735b51a94a5562" } +{ "commit": "69c0bf5873334c25d691b8db4a995b86125a6799" } diff --git a/app/utils/shell.ts b/app/utils/shell.ts index 3aad5b330..0ffea4225 100644 --- a/app/utils/shell.ts +++ b/app/utils/shell.ts @@ -146,10 +146,6 @@ export class BoltShell { terminalOutput.pipeTo( new WritableStream({ write(data) { - /* - * const [, osc] = data.match(/\x1b\]654;([^\x07]+)\x07/) || []; - * console.log('terminal onData', { data,osc }); - */ if (!isInteractive) { const [, osc] = data.match(/\x1b\]654;([^\x07]+)\x07/) || []; From 206a6d781624bbb79cca765ade38cf4455ce7b4d Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Tue, 17 Dec 2024 10:19:40 -0500 Subject: [PATCH 04/41] add/toc-for-readme added a TOC for the README file, renamed some headings to better suite the TOC --- README.md | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 84235f8c1..02ae4eb4b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ -[![bolt.diy: AI-Powered Full-Stack Web Development in the Browser](./public/social_preview_index.jpg)](https://bolt.diy) - # bolt.diy (Previously oTToDev) +[![bolt.diy: AI-Powered Full-Stack Web Development in the Browser](./public/social_preview_index.jpg)](https://bolt.diy) Welcome to bolt.diy, the official open source version of Bolt.new (previously known as oTToDev and bolt.new ANY LLM), which allows you to choose the LLM that you use for each prompt! Currently, you can use OpenAI, Anthropic, Ollama, OpenRouter, Gemini, LMStudio, Mistral, xAI, HuggingFace, DeepSeek, or Groq models - and it is easily extended to use any other model supported by the Vercel AI SDK! See the instructions below for running this locally and extending it to include more models. @@ -8,12 +7,24 @@ Check the [bolt.diy Docs](https://stackblitz-labs.github.io/bolt.diy/) for more bolt.diy was originally started by [Cole Medin](https://www.youtube.com/@ColeMedin) but has quickly grown into a massive community effort to build the BEST open source AI coding assistant! -## Join the community for bolt.diy! +## Table of Contents + +- [Join the Community](#join-the-community) +- [Requested Additions](#requested-additions) +- [Features](#features) +- [Setup](#setup) +- [Run the Application](#run-the-application) +- [Available Scripts](#available-scripts) +- [Contributing](#contributing) +- [Roadmap](#roadmap) +- [FAQ](#faq) + +## Join the community -https://thinktank.ottomator.ai +[Join our bolt.diy community here!](https://thinktank.ottomator.ai) -## Requested Additions - Feel Free to Contribute! +## Requested Additions - ✅ OpenRouter Integration (@coleam00) - ✅ Gemini Integration (@jonathands) @@ -60,7 +71,7 @@ https://thinktank.ottomator.ai - ⬜ Perplexity Integration - ⬜ Vertex AI Integration -## bolt.diy Features +## Features - **AI-powered full-stack web development** directly in your browser. - **Support for multiple LLMs** with an extensible architecture to integrate additional models. @@ -70,7 +81,7 @@ https://thinktank.ottomator.ai - **Download projects as ZIP** for easy portability. - **Integration-ready Docker support** for a hassle-free setup. -## Setup bolt.diy +## Setup If you're new to installing software from GitHub, don't worry! If you encounter any issues, feel free to submit an "issue" using the provided links or improve this documentation by forking the repository, editing the instructions, and submitting a pull request. The following instruction will help you get the stable branch up and running on your local machine in no time. From 0e7937b835d84811360b8f6fd9941c0c6021634c Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Tue, 17 Dec 2024 10:27:04 -0500 Subject: [PATCH 05/41] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 02ae4eb4b..9925debb6 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ bolt.diy was originally started by [Cole Medin](https://www.youtube.com/@ColeMed ## Join the community -[Join our bolt.diy community here!](https://thinktank.ottomator.ai) +[Join the bolt.diy community here, in the thinktank on ottomator.ai!](https://thinktank.ottomator.ai) ## Requested Additions From 8d0f0da04a8b5648e5dc83ce53c78edb4b9f1dee Mon Sep 17 00:00:00 2001 From: GK Date: Tue, 17 Dec 2024 17:30:22 +0000 Subject: [PATCH 06/41] add: xAI grok-2-1212 model --- app/utils/constants.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/utils/constants.ts b/app/utils/constants.ts index 642599541..78db6a016 100644 --- a/app/utils/constants.ts +++ b/app/utils/constants.ts @@ -233,7 +233,10 @@ const PROVIDER_LIST: ProviderInfo[] = [ }, { name: 'xAI', - staticModels: [{ name: 'grok-beta', label: 'xAI Grok Beta', provider: 'xAI', maxTokenAllowed: 8000 }], + staticModels: [ + { name: 'grok-beta', label: 'xAI Grok Beta', provider: 'xAI', maxTokenAllowed: 8000 }, + { name: 'grok-2-1212', label: 'xAI Grok2 1212', provider: 'xAI', maxTokenAllowed: 8000 }, + ], getApiKeyLink: 'https://docs.x.ai/docs/quickstart#creating-an-api-key', }, { From ba4e78809c0e45ae132b5d3e7cd5e3d58bc90d7e Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Tue, 17 Dec 2024 17:40:16 -0500 Subject: [PATCH 07/41] feat: improved providers list style made the list 2 columns wide and separate out the experimental providers --- .../settings/providers/ProvidersTab.tsx | 147 +++++++++++------- 1 file changed, 93 insertions(+), 54 deletions(-) diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index 281b4c80d..464a54db6 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -6,13 +6,17 @@ import type { IProviderConfig } from '~/types/model'; import { logStore } from '~/lib/stores/logs'; // Import a default fallback icon -import DefaultIcon from '/icons/Default.svg'; // Adjust the path as necessary +import DefaultIcon from '/icons/Default.svg'; + +// List of advanced providers with correct casing +const ADVANCED_PROVIDERS = ['Ollama', 'OpenAILike', 'LMStudio']; export default function ProvidersTab() { const { providers, updateProviderSettings, isLocalModel } = useSettings(); const [filteredProviders, setFilteredProviders] = useState([]); + const [advancedProviders, setAdvancedProviders] = useState([]); + const [regularProviders, setRegularProviders] = useState([]); - // Load base URLs from cookies const [searchTerm, setSearchTerm] = useState(''); useEffect(() => { @@ -31,11 +35,77 @@ export default function ProvidersTab() { newFilteredProviders = newFilteredProviders.filter((provider) => !LOCAL_PROVIDERS.includes(provider.name)); } - newFilteredProviders.sort((a, b) => a.name.localeCompare(b.name)); + // Split providers into regular and advanced + const regular = newFilteredProviders.filter( + (provider) => !ADVANCED_PROVIDERS.includes(provider.name) + ); + const advanced = newFilteredProviders.filter( + (provider) => ADVANCED_PROVIDERS.includes(provider.name) + ); + + // Sort advanced providers in specific order - OpenAILike at the end + const advancedOrder = ['Ollama', 'LMStudio', 'OpenAILike']; + advanced.sort((a, b) => { + return advancedOrder.indexOf(a.name) - advancedOrder.indexOf(b.name); + }); + + // Sort regular providers alphabetically + regular.sort((a, b) => a.name.localeCompare(b.name)); + setRegularProviders(regular); + setAdvancedProviders(advanced); setFilteredProviders(newFilteredProviders); }, [providers, searchTerm, isLocalModel]); + const ProviderCard = ({ provider }: { provider: IProviderConfig }) => ( +
+
+
+ { + e.currentTarget.src = DefaultIcon; + }} + alt={`${provider.name} icon`} + className="w-6 h-6 dark:invert" + /> + {provider.name} +
+ { + updateProviderSettings(provider.name, { ...provider.settings, enabled }); + if (enabled) { + logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); + } else { + logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); + } + }} + /> +
+ {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( +
+ + { + const newBaseUrl = e.target.value; + updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); + logStore.logProvider(`Base URL updated for ${provider.name}`, { + provider: provider.name, + baseUrl: newBaseUrl, + }); + }} + placeholder={`Enter ${provider.name} base URL`} + className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" + /> +
+ )} +
+ ); + return (
@@ -47,60 +117,29 @@ export default function ProvidersTab() { className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" />
- {filteredProviders.map((provider) => ( -
-
-
- { - // Fallback to default icon on error - e.currentTarget.src = DefaultIcon; - }} - alt={`${provider.name} icon`} - className="w-6 h-6 dark:invert" - /> - {provider.name} -
- { - updateProviderSettings(provider.name, { ...provider.settings, enabled }); - if (enabled) { - logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); - } else { - logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); - } - }} - /> + {/* Regular Providers Grid */} +
+ {regularProviders.map((provider) => ( + + ))} +
+ + {/* Advanced Providers Section */} + {advancedProviders.length > 0 && ( +
+

Experimental Providers

+

+ These providers are experimental features that allow you to run AI models locally or connect to your own infrastructure. + They require additional setup but offer more flexibility for advanced users. +

+
+ {advancedProviders.map((provider) => ( + + ))}
- {/* Base URL input for configurable providers */} - {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( -
- - { - const newBaseUrl = e.target.value; - updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); - logStore.logProvider(`Base URL updated for ${provider.name}`, { - provider: provider.name, - baseUrl: newBaseUrl, - }); - }} - placeholder={`Enter ${provider.name} base URL`} - className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" - /> -
- )}
- ))} + )}
); } From 62ebfe51a69788229aa62d34afb4ce89b7cd8ac8 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 16:34:18 +0530 Subject: [PATCH 08/41] fix: .env file baseUrl Issue --- app/commit.json | 2 +- app/components/chat/BaseChat.tsx | 6 +- .../settings/providers/ProvidersTab.tsx | 7 +- app/entry.server.tsx | 2 +- app/lib/.server/llm/api-key.ts | 25 +++- app/lib/.server/llm/model.ts | 11 +- app/lib/.server/llm/stream-text.ts | 9 +- app/types/model.ts | 6 +- app/utils/constants.ts | 124 ++++++++++++++---- 9 files changed, 149 insertions(+), 43 deletions(-) diff --git a/app/commit.json b/app/commit.json index b9c669a79..4ff52947d 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "eb6d4353565be31c6e20bfca2c5aea29e4f45b6d", "version": "0.0.3" } +{ "commit": "fce8999f27c0affbc762dc90de992b5a759ab325" } diff --git a/app/components/chat/BaseChat.tsx b/app/components/chat/BaseChat.tsx index 2084cbb37..5db66537c 100644 --- a/app/components/chat/BaseChat.tsx +++ b/app/components/chat/BaseChat.tsx @@ -119,6 +119,9 @@ export const BaseChat = React.forwardRef( useEffect(() => { // Load API keys from cookies on component mount + + let parsedApiKeys: Record | undefined = {}; + try { const storedApiKeys = Cookies.get('apiKeys'); @@ -127,6 +130,7 @@ export const BaseChat = React.forwardRef( if (typeof parsedKeys === 'object' && parsedKeys !== null) { setApiKeys(parsedKeys); + parsedApiKeys = parsedKeys; } } } catch (error) { @@ -155,7 +159,7 @@ export const BaseChat = React.forwardRef( Cookies.remove('providers'); } - initializeModelList(providerSettings).then((modelList) => { + initializeModelList({ apiKeys: parsedApiKeys, providerSettings }).then((modelList) => { setModelList(modelList); }); diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index 281b4c80d..49a16f668 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -87,7 +87,12 @@ export default function ProvidersTab() { type="text" value={provider.settings.baseUrl || ''} onChange={(e) => { - const newBaseUrl = e.target.value; + let newBaseUrl: string | undefined = e.target.value; + + if (newBaseUrl && newBaseUrl.trim().length === 0) { + newBaseUrl = undefined; + } + updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); logStore.logProvider(`Base URL updated for ${provider.name}`, { provider: provider.name, diff --git a/app/entry.server.tsx b/app/entry.server.tsx index a44917f02..5e92d21ec 100644 --- a/app/entry.server.tsx +++ b/app/entry.server.tsx @@ -14,7 +14,7 @@ export default async function handleRequest( remixContext: EntryContext, _loadContext: AppLoadContext, ) { - await initializeModelList(); + await initializeModelList({}); const readable = await renderToReadableStream(, { signal: request.signal, diff --git a/app/lib/.server/llm/api-key.ts b/app/lib/.server/llm/api-key.ts index e82d08eb8..d21f07051 100644 --- a/app/lib/.server/llm/api-key.ts +++ b/app/lib/.server/llm/api-key.ts @@ -3,6 +3,7 @@ * Preventing TS checks with files presented in the video for a better presentation. */ import { env } from 'node:process'; +import type { IProviderSetting } from '~/types/model'; export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Record) { /** @@ -50,16 +51,30 @@ export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Re } } -export function getBaseURL(cloudflareEnv: Env, provider: string) { +export function getBaseURL(cloudflareEnv: Env, provider: string, providerSettings?: Record) { + let settingBaseUrl = providerSettings?.[provider].baseUrl; + + if (settingBaseUrl && settingBaseUrl.length == 0) { + settingBaseUrl = undefined; + } + switch (provider) { case 'Together': - return env.TOGETHER_API_BASE_URL || cloudflareEnv.TOGETHER_API_BASE_URL || 'https://api.together.xyz/v1'; + return ( + settingBaseUrl || + env.TOGETHER_API_BASE_URL || + cloudflareEnv.TOGETHER_API_BASE_URL || + 'https://api.together.xyz/v1' + ); case 'OpenAILike': - return env.OPENAI_LIKE_API_BASE_URL || cloudflareEnv.OPENAI_LIKE_API_BASE_URL; + return settingBaseUrl || env.OPENAI_LIKE_API_BASE_URL || cloudflareEnv.OPENAI_LIKE_API_BASE_URL; case 'LMStudio': - return env.LMSTUDIO_API_BASE_URL || cloudflareEnv.LMSTUDIO_API_BASE_URL || 'http://localhost:1234'; + return ( + settingBaseUrl || env.LMSTUDIO_API_BASE_URL || cloudflareEnv.LMSTUDIO_API_BASE_URL || 'http://localhost:1234' + ); case 'Ollama': { - let baseUrl = env.OLLAMA_API_BASE_URL || cloudflareEnv.OLLAMA_API_BASE_URL || 'http://localhost:11434'; + let baseUrl = + settingBaseUrl || env.OLLAMA_API_BASE_URL || cloudflareEnv.OLLAMA_API_BASE_URL || 'http://localhost:11434'; if (env.RUNNING_IN_DOCKER === 'true') { baseUrl = baseUrl.replace('localhost', 'host.docker.internal'); diff --git a/app/lib/.server/llm/model.ts b/app/lib/.server/llm/model.ts index 1a5aab7eb..1feb499b1 100644 --- a/app/lib/.server/llm/model.ts +++ b/app/lib/.server/llm/model.ts @@ -84,6 +84,8 @@ export function getHuggingFaceModel(apiKey: OptionalApiKey, model: string) { } export function getOllamaModel(baseURL: string, model: string) { + console.log({ baseURL, model }); + const ollamaInstance = ollama(model, { numCtx: DEFAULT_NUM_CTX, }) as LanguageModelV1 & { config: any }; @@ -140,7 +142,7 @@ export function getPerplexityModel(apiKey: OptionalApiKey, model: string) { export function getModel( provider: string, model: string, - env: Env, + serverEnv: Env, apiKeys?: Record, providerSettings?: Record, ) { @@ -148,9 +150,12 @@ export function getModel( * let apiKey; // Declare first * let baseURL; */ + // console.log({provider,model}); + + const apiKey = getAPIKey(serverEnv, provider, apiKeys); // Then assign + const baseURL = getBaseURL(serverEnv, provider, providerSettings); - const apiKey = getAPIKey(env, provider, apiKeys); // Then assign - const baseURL = providerSettings?.[provider].baseUrl || getBaseURL(env, provider); + // console.log({apiKey,baseURL}); switch (provider) { case 'Anthropic': diff --git a/app/lib/.server/llm/stream-text.ts b/app/lib/.server/llm/stream-text.ts index 74cdd9d4f..6bbf56851 100644 --- a/app/lib/.server/llm/stream-text.ts +++ b/app/lib/.server/llm/stream-text.ts @@ -151,10 +151,13 @@ export async function streamText(props: { providerSettings?: Record; promptId?: string; }) { - const { messages, env, options, apiKeys, files, providerSettings, promptId } = props; + const { messages, env: serverEnv, options, apiKeys, files, providerSettings, promptId } = props; + + // console.log({serverEnv}); + let currentModel = DEFAULT_MODEL; let currentProvider = DEFAULT_PROVIDER.name; - const MODEL_LIST = await getModelList(apiKeys || {}, providerSettings); + const MODEL_LIST = await getModelList({ apiKeys, providerSettings, serverEnv: serverEnv as any }); const processedMessages = messages.map((message) => { if (message.role === 'user') { const { model, provider, content } = extractPropertiesFromMessage(message); @@ -196,7 +199,7 @@ export async function streamText(props: { } return _streamText({ - model: getModel(currentProvider, currentModel, env, apiKeys, providerSettings) as any, + model: getModel(currentProvider, currentModel, serverEnv, apiKeys, providerSettings) as any, system: systemPrompt, maxTokens: dynamicMaxTokens, messages: convertToCoreMessages(processedMessages as any), diff --git a/app/types/model.ts b/app/types/model.ts index 3bfbfde92..a747a3fb4 100644 --- a/app/types/model.ts +++ b/app/types/model.ts @@ -3,7 +3,11 @@ import type { ModelInfo } from '~/utils/types'; export type ProviderInfo = { staticModels: ModelInfo[]; name: string; - getDynamicModels?: (apiKeys?: Record, providerSettings?: IProviderSetting) => Promise; + getDynamicModels?: ( + apiKeys?: Record, + providerSettings?: IProviderSetting, + serverEnv?: Record, + ) => Promise; getApiKeyLink?: string; labelForGetApiKey?: string; icon?: string; diff --git a/app/utils/constants.ts b/app/utils/constants.ts index 642599541..6595d9c9f 100644 --- a/app/utils/constants.ts +++ b/app/utils/constants.ts @@ -220,7 +220,6 @@ const PROVIDER_LIST: ProviderInfo[] = [ ], getApiKeyLink: 'https://huggingface.co/settings/tokens', }, - { name: 'OpenAI', staticModels: [ @@ -325,26 +324,46 @@ const staticModels: ModelInfo[] = PROVIDER_LIST.map((p) => p.staticModels).flat( export let MODEL_LIST: ModelInfo[] = [...staticModels]; -export async function getModelList( - apiKeys: Record, - providerSettings?: Record, -) { +export async function getModelList(options: { + apiKeys?: Record; + providerSettings?: Record; + serverEnv?: Record; +}) { + const { apiKeys, providerSettings, serverEnv } = options; + + // console.log({ providerSettings, serverEnv,env:process.env }); MODEL_LIST = [ ...( await Promise.all( PROVIDER_LIST.filter( (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name])), + ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name], serverEnv)), ) ).flat(), ...staticModels, ]; + return MODEL_LIST; } -async function getTogetherModels(apiKeys?: Record, settings?: IProviderSetting): Promise { +async function getTogetherModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, +): Promise { try { - const baseUrl = settings?.baseUrl || import.meta.env.TOGETHER_API_BASE_URL || ''; + let settingsBaseUrl = settings?.baseUrl; + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const baseUrl = + settingsBaseUrl || + serverEnv?.TOGETHER_API_BASE_URL || + process.env.TOGETHER_API_BASE_URL || + import.meta.env.TOGETHER_API_BASE_URL || + ''; const provider = 'Together'; if (!baseUrl) { @@ -383,8 +402,19 @@ async function getTogetherModels(apiKeys?: Record, settings?: IP } } -const getOllamaBaseUrl = (settings?: IProviderSetting) => { - const defaultBaseUrl = settings?.baseUrl || import.meta.env.OLLAMA_API_BASE_URL || 'http://localhost:11434'; +const getOllamaBaseUrl = (settings?: IProviderSetting, serverEnv: Record = {}) => { + let settingsBaseUrl = settings?.baseUrl; + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const defaultBaseUrl = + settings?.baseUrl || + serverEnv?.OLLAMA_API_BASE_URL || + process.env.OLLAMA_API_BASE_URL || + import.meta.env.OLLAMA_API_BASE_URL || + 'http://localhost:11434'; // Check if we're in the browser if (typeof window !== 'undefined') { @@ -398,9 +428,13 @@ const getOllamaBaseUrl = (settings?: IProviderSetting) => { return isDocker ? defaultBaseUrl.replace('localhost', 'host.docker.internal') : defaultBaseUrl; }; -async function getOllamaModels(apiKeys?: Record, settings?: IProviderSetting): Promise { +async function getOllamaModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, +): Promise { try { - const baseUrl = getOllamaBaseUrl(settings); + const baseUrl = getOllamaBaseUrl(settings, serverEnv); const response = await fetch(`${baseUrl}/api/tags`); const data = (await response.json()) as OllamaApiResponse; @@ -421,9 +455,21 @@ async function getOllamaModels(apiKeys?: Record, settings?: IPro async function getOpenAILikeModels( apiKeys?: Record, settings?: IProviderSetting, + serverEnv: Record = {}, ): Promise { try { - const baseUrl = settings?.baseUrl || import.meta.env.OPENAI_LIKE_API_BASE_URL || ''; + let settingsBaseUrl = settings?.baseUrl; + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const baseUrl = + settingsBaseUrl || + serverEnv.OPENAI_LIKE_API_BASE_URL || + process.env.OPENAI_LIKE_API_BASE_URL || + import.meta.env.OPENAI_LIKE_API_BASE_URL || + ''; if (!baseUrl) { return []; @@ -486,9 +532,24 @@ async function getOpenRouterModels(): Promise { })); } -async function getLMStudioModels(_apiKeys?: Record, settings?: IProviderSetting): Promise { +async function getLMStudioModels( + _apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, +): Promise { try { - const baseUrl = settings?.baseUrl || import.meta.env.LMSTUDIO_API_BASE_URL || 'http://localhost:1234'; + let settingsBaseUrl = settings?.baseUrl; + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const baseUrl = + settingsBaseUrl || + serverEnv.LMSTUDIO_API_BASE_URL || + process.env.LMSTUDIO_API_BASE_URL || + import.meta.env.LMSTUDIO_API_BASE_URL || + 'http://localhost:1234'; const response = await fetch(`${baseUrl}/v1/models`); const data = (await response.json()) as any; @@ -503,29 +564,37 @@ async function getLMStudioModels(_apiKeys?: Record, settings?: I } } -async function initializeModelList(providerSettings?: Record): Promise { - let apiKeys: Record = {}; +async function initializeModelList(options: { + env?: Record; + providerSettings?: Record; + apiKeys?: Record; +}): Promise { + const { providerSettings, apiKeys: providedApiKeys, env } = options; + let apiKeys: Record = providedApiKeys || {}; - try { - const storedApiKeys = Cookies.get('apiKeys'); + if (!providedApiKeys) { + try { + const storedApiKeys = Cookies.get('apiKeys'); - if (storedApiKeys) { - const parsedKeys = JSON.parse(storedApiKeys); + if (storedApiKeys) { + const parsedKeys = JSON.parse(storedApiKeys); - if (typeof parsedKeys === 'object' && parsedKeys !== null) { - apiKeys = parsedKeys; + if (typeof parsedKeys === 'object' && parsedKeys !== null) { + apiKeys = parsedKeys; + } } + } catch (error: any) { + logStore.logError('Failed to fetch API keys from cookies', error); + logger.warn(`Failed to fetch apikeys from cookies: ${error?.message}`); } - } catch (error: any) { - logStore.logError('Failed to fetch API keys from cookies', error); - logger.warn(`Failed to fetch apikeys from cookies: ${error?.message}`); } + MODEL_LIST = [ ...( await Promise.all( PROVIDER_LIST.filter( (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name])), + ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name], env)), ) ).flat(), ...staticModels, @@ -534,6 +603,7 @@ async function initializeModelList(providerSettings?: Record Date: Wed, 18 Dec 2024 06:35:33 -0500 Subject: [PATCH 09/41] docs: simplified setup Removed the section about environment variables. In docker removed the production build. Both of these can still be found in the docs. --- README.md | 43 +++++++++---------------------------------- 1 file changed, 9 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 84235f8c1..c7387ee9e 100644 --- a/README.md +++ b/README.md @@ -95,34 +95,6 @@ Clone the repository using Git: git clone -b stable https://github.com/stackblitz-labs/bolt.diy ``` -### (Optional) Configure Environment Variables - -Most environment variables can be configured directly through the settings menu of the application. However, if you need to manually configure them: - -1. Rename `.env.example` to `.env.local`. -2. Add your LLM API keys. For example: - -```env -GROQ_API_KEY=YOUR_GROQ_API_KEY -OPENAI_API_KEY=YOUR_OPENAI_API_KEY -ANTHROPIC_API_KEY=YOUR_ANTHROPIC_API_KEY -``` - -**Note**: Ollama does not require an API key as it runs locally. - -3. Optionally, set additional configurations: - -```env -# Debugging -VITE_LOG_LEVEL=debug - -# Ollama settings (example: 8K context, localhost port 11434) -OLLAMA_API_BASE_URL=http://localhost:11434 -DEFAULT_NUM_CTX=8192 -``` - -**Important**: Do not commit your `.env.local` file to version control. This file is already included in `.gitignore`. - --- ## Run the Application @@ -155,27 +127,30 @@ DEFAULT_NUM_CTX=8192 Use the provided NPM scripts: ```bash - npm run dockerbuild # Development build - npm run dockerbuild:prod # Production build + npm run dockerbuild ``` Alternatively, use Docker commands directly: ```bash - docker build . --target bolt-ai-development # Development build - docker build . --target bolt-ai-production # Production build + docker build . --target bolt-ai-development ``` 2. **Run the Container**: Use Docker Compose profiles to manage environments: ```bash - docker-compose --profile development up # Development - docker-compose --profile production up # Production + docker-compose --profile development up ``` - With the development profile, changes to your code will automatically reflect in the running container (hot reloading). --- +### Entering API Keys + +All of your API Keys can be configured directly in the application. Just selecte the provider you want from the dropdown and click the pencile icon to enter your API key. + +--- + ### Update Your Local Version to the Latest To keep your local version of bolt.diy up to date with the latest changes, follow these steps for your operating system: From a1e902fe7963fa2008c8b30f1cb8be9281146bb2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 18 Dec 2024 12:31:51 +0000 Subject: [PATCH 10/41] chore: update commit hash to a9309161e95a8ed015f2f71b622fb63afdb74877 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 7ff753717..1386a0575 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "e064803955604198c6aac7b257efd0ad8503cb73", "version": "0.0.3" } +{ "commit": "a9309161e95a8ed015f2f71b622fb63afdb74877", "version": "0.0.3" } From b3b4d74824f63853474bd8dc21754ee8a53f72c4 Mon Sep 17 00:00:00 2001 From: Cole Medin Date: Wed, 18 Dec 2024 07:01:58 -0600 Subject: [PATCH 11/41] chore: a few documentation enhancements for main README and FAQs --- FAQ.md | 28 ++++++++++++++++++++++------ README.md | 6 ++++-- docs/docs/FAQ.md | 20 ++++++++++++++++++++ 3 files changed, 46 insertions(+), 8 deletions(-) diff --git a/FAQ.md b/FAQ.md index ecd4158fe..dcf250d7b 100644 --- a/FAQ.md +++ b/FAQ.md @@ -2,6 +2,18 @@ # bolt.diy +## Recommended Models for bolt.diy + +For the best experience with bolt.diy, we recommend using the following models: + +- **Claude 3.5 Sonnet (old)**: Best overall coder, providing excellent results across all use cases +- **Gemini 2.0 Flash**: Exceptional speed while maintaining good performance +- **GPT-4o**: Strong alternative to Claude 3.5 Sonnet with comparable capabilities +- **DeepSeekCoder V2 236b**: Best open source model (available through OpenRouter, DeepSeek API, or self-hosted) +- **Qwen 2.5 Coder 32b**: Best model for self-hosting with reasonable hardware requirements + +**Note**: Models with less than 7b parameters typically lack the capability to properly interact with bolt! + ## FAQ ### How do I get the best results with bolt.diy? @@ -34,14 +46,18 @@ We have seen this error a couple times and for some reason just restarting the D We promise you that we are constantly testing new PRs coming into bolt.diy and the preview is core functionality, so the application is not broken! When you get a blank preview or don’t get a preview, this is generally because the LLM hallucinated bad code or incorrect commands. We are working on making this more transparent so it is obvious. Sometimes the error will appear in developer console too so check that as well. -### How to add a LLM: +### Everything works but the results are bad -To make new LLMs available to use in this version of bolt.new, head on over to `app/utils/constants.ts` and find the constant MODEL_LIST. Each element in this array is an object that has the model ID for the name (get this from the provider's API documentation), a label for the frontend model dropdown, and the provider. +This goes to the point above about how local LLMs are getting very powerful but you still are going to see better (sometimes much better) results with the largest LLMs like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b. If you are using smaller LLMs like Qwen-2.5-Coder, consider it more experimental and educational at this point. It can build smaller applications really well, which is super impressive for a local LLM, but for larger scale applications you want to use the larger LLMs still! -By default, Anthropic, OpenAI, Groq, and Ollama are implemented as providers, but the YouTube video for this repo covers how to extend this to work with more providers if you wish! +### Received structured exception #0xc0000005: access violation -When you add a new model to the MODEL_LIST array, it will immediately be available to use when you run the app locally or reload it. For Ollama models, make sure you have the model installed already before trying to use it here! +If you are getting this, you are probably on Windows. The fix is generally to update the [Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170) -### Everything works but the results are bad +### How to add an LLM: -This goes to the point above about how local LLMs are getting very powerful but you still are going to see better (sometimes much better) results with the largest LLMs like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b. If you are using smaller LLMs like Qwen-2.5-Coder, consider it more experimental and educational at this point. It can build smaller applications really well, which is super impressive for a local LLM, but for larger scale applications you want to use the larger LLMs still! +To make new LLMs available to use in this version of bolt.new, head on over to `app/utils/constants.ts` and find the constant MODEL_LIST. Each element in this array is an object that has the model ID for the name (get this from the provider's API documentation), a label for the frontend model dropdown, and the provider. + +By default, many providers are already implemented, but the YouTube video for this repo covers how to extend this to work with more providers if you wish! + +When you add a new model to the MODEL_LIST array, it will immediately be available to use when you run the app locally or reload it. diff --git a/README.md b/README.md index c7387ee9e..7ad4abee3 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,9 @@ Welcome to bolt.diy, the official open source version of Bolt.new (previously known as oTToDev and bolt.new ANY LLM), which allows you to choose the LLM that you use for each prompt! Currently, you can use OpenAI, Anthropic, Ollama, OpenRouter, Gemini, LMStudio, Mistral, xAI, HuggingFace, DeepSeek, or Groq models - and it is easily extended to use any other model supported by the Vercel AI SDK! See the instructions below for running this locally and extending it to include more models. -Check the [bolt.diy Docs](https://stackblitz-labs.github.io/bolt.diy/) for more information. This documentation is still being updated after the transfer. +Check the [bolt.diy Docs](https://stackblitz-labs.github.io/bolt.diy/) for more information. + +We have also launched an experimental agent called the "bolt.diy Expert" that can answer common questions about bolt.diy. Find it here on the [oTTomator Live Agent Studio](https://studio.ottomator.ai/). bolt.diy was originally started by [Cole Medin](https://www.youtube.com/@ColeMedin) but has quickly grown into a massive community effort to build the BEST open source AI coding assistant! @@ -211,4 +213,4 @@ Explore upcoming features and priorities on our [Roadmap](https://roadmap.sh/r/o ## FAQ -For answers to common questions, visit our [FAQ Page](FAQ.md). +For answers to common questions, issues, and to see a list of recommended models, visit our [FAQ Page](FAQ.md). diff --git a/docs/docs/FAQ.md b/docs/docs/FAQ.md index 9f18a88ac..1b645d3fc 100644 --- a/docs/docs/FAQ.md +++ b/docs/docs/FAQ.md @@ -1,5 +1,19 @@ # Frequently Asked Questions (FAQ) +## What are the best models for bolt.diy? + +For the best experience with bolt.diy, we recommend using the following models: + +- **Claude 3.5 Sonnet (old)**: Best overall coder, providing excellent results across all use cases +- **Gemini 2.0 Flash**: Exceptional speed while maintaining good performance +- **GPT-4o**: Strong alternative to Claude 3.5 Sonnet with comparable capabilities +- **DeepSeekCoder V2 236b**: Best open source model (available through OpenRouter, DeepSeek API, or self-hosted) +- **Qwen 2.5 Coder 32b**: Best model for self-hosting with reasonable hardware requirements + +**Note**: Models with less than 7b parameters typically lack the capability to properly interact with bolt! + +--- + ## How do I get the best results with bolt.diy? - **Be specific about your stack**: @@ -72,6 +86,12 @@ Local LLMs like Qwen-2.5-Coder are powerful for small applications but still exp --- +### **"Received structured exception #0xc0000005: access violation"** + +If you are getting this, you are probably on Windows. The fix is generally to update the [Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170) + +--- + ### **"Miniflare or Wrangler errors in Windows"** You will need to make sure you have the latest version of Visual Studio C++ installed (14.40.33816), more information here https://github.com/stackblitz-labs/bolt.diy/issues/19. From 283eb22ae57cfd2341fc5a2748f2f4b5d8107ef1 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 20:04:43 +0530 Subject: [PATCH 12/41] added indicator on settings menu --- app/commit.json | 2 +- app/components/settings/debug/DebugTab.tsx | 17 +- .../settings/providers/ProvidersTab.tsx | 119 ++++++----- app/lib/.server/llm/api-key.ts | 29 ++- app/types/model.ts | 1 + app/utils/constants.ts | 198 ++++++++++++------ vite.config.ts | 2 +- 7 files changed, 237 insertions(+), 131 deletions(-) diff --git a/app/commit.json b/app/commit.json index 4ff52947d..b0a4c9293 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "fce8999f27c0affbc762dc90de992b5a759ab325" } +{ "commit": "62ebfe51a69788229aa62d34afb4ce89b7cd8ac8" } diff --git a/app/components/settings/debug/DebugTab.tsx b/app/components/settings/debug/DebugTab.tsx index cf2341b55..b0cde7dd7 100644 --- a/app/components/settings/debug/DebugTab.tsx +++ b/app/components/settings/debug/DebugTab.tsx @@ -2,6 +2,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useSettings } from '~/lib/hooks/useSettings'; import commit from '~/commit.json'; import { toast } from 'react-toastify'; +import { providerBaseUrlEnvKeys } from '~/utils/constants'; interface ProviderStatus { name: string; @@ -236,7 +237,7 @@ const checkProviderStatus = async (url: string | null, providerName: string): Pr } // Try different endpoints based on provider - const checkUrls = [`${url}/api/health`, `${url}/v1/models`]; + const checkUrls = [`${url}/api/health`, url.endsWith('v1') ? `${url}/models` : `${url}/v1/models`]; console.log(`[Debug] Checking additional endpoints:`, checkUrls); const results = await Promise.all( @@ -321,14 +322,16 @@ export default function DebugTab() { .filter(([, provider]) => LOCAL_PROVIDERS.includes(provider.name)) .map(async ([, provider]) => { const envVarName = - provider.name.toLowerCase() === 'ollama' - ? 'OLLAMA_API_BASE_URL' - : provider.name.toLowerCase() === 'lmstudio' - ? 'LMSTUDIO_API_BASE_URL' - : `REACT_APP_${provider.name.toUpperCase()}_URL`; + providerBaseUrlEnvKeys[provider.name].baseUrlKey || `REACT_APP_${provider.name.toUpperCase()}_URL`; // Access environment variables through import.meta.env - const url = import.meta.env[envVarName] || provider.settings.baseUrl || null; // Ensure baseUrl is used + let settingsUrl = provider.settings.baseUrl; + + if (settingsUrl && settingsUrl.trim().length === 0) { + settingsUrl = undefined; + } + + const url = settingsUrl || import.meta.env[envVarName] || null; // Ensure baseUrl is used console.log(`[Debug] Using URL for ${provider.name}:`, url, `(from ${envVarName})`); const status = await checkProviderStatus(url, provider.name); diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index 49a16f668..20e66efea 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -7,6 +7,7 @@ import { logStore } from '~/lib/stores/logs'; // Import a default fallback icon import DefaultIcon from '/icons/Default.svg'; // Adjust the path as necessary +import { providerBaseUrlEnvKeys } from '~/utils/constants'; export default function ProvidersTab() { const { providers, updateProviderSettings, isLocalModel } = useSettings(); @@ -47,65 +48,77 @@ export default function ProvidersTab() { className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" />
- {filteredProviders.map((provider) => ( -
-
-
- { - // Fallback to default icon on error - e.currentTarget.src = DefaultIcon; - }} - alt={`${provider.name} icon`} - className="w-6 h-6 dark:invert" - /> - {provider.name} -
- { - updateProviderSettings(provider.name, { ...provider.settings, enabled }); + {filteredProviders.map((provider) => { + const envBaseUrlKey = providerBaseUrlEnvKeys[provider.name].baseUrlKey; + const envBaseUrl = envBaseUrlKey ? import.meta.env[envBaseUrlKey] : undefined; - if (enabled) { - logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); - } else { - logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); - } - }} - /> -
- {/* Base URL input for configurable providers */} - {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( -
- - { - let newBaseUrl: string | undefined = e.target.value; + return ( +
+
+
+ { + // Fallback to default icon on error + e.currentTarget.src = DefaultIcon; + }} + alt={`${provider.name} icon`} + className="w-6 h-6 dark:invert" + /> + {provider.name} +
+ { + updateProviderSettings(provider.name, { ...provider.settings, enabled }); - if (newBaseUrl && newBaseUrl.trim().length === 0) { - newBaseUrl = undefined; + if (enabled) { + logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); + } else { + logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); } - - updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); - logStore.logProvider(`Base URL updated for ${provider.name}`, { - provider: provider.name, - baseUrl: newBaseUrl, - }); }} - placeholder={`Enter ${provider.name} base URL`} - className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" />
- )} -
- ))} + {/* Base URL input for configurable providers */} + {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( +
+ {envBaseUrl && ( + + )} + + { + let newBaseUrl: string | undefined = e.target.value; + + if (newBaseUrl && newBaseUrl.trim().length === 0) { + newBaseUrl = undefined; + } + + updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); + logStore.logProvider(`Base URL updated for ${provider.name}`, { + provider: provider.name, + baseUrl: newBaseUrl, + }); + }} + placeholder={`Enter ${provider.name} base URL`} + className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" + /> +
+ )} +
+ ); + })}
); } diff --git a/app/lib/.server/llm/api-key.ts b/app/lib/.server/llm/api-key.ts index d21f07051..83b46462f 100644 --- a/app/lib/.server/llm/api-key.ts +++ b/app/lib/.server/llm/api-key.ts @@ -4,6 +4,7 @@ */ import { env } from 'node:process'; import type { IProviderSetting } from '~/types/model'; +import { getProviderBaseUrlAndKey } from '~/utils/constants'; export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Record) { /** @@ -16,7 +17,20 @@ export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Re return userApiKeys[provider]; } - // Fall back to environment variables + const { apiKey } = getProviderBaseUrlAndKey({ + provider, + apiKeys: userApiKeys, + providerSettings: undefined, + serverEnv: cloudflareEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: '', + }); + + if (apiKey) { + return apiKey; + } + + // Fall back to hardcoded environment variables names switch (provider) { case 'Anthropic': return env.ANTHROPIC_API_KEY || cloudflareEnv.ANTHROPIC_API_KEY; @@ -52,6 +66,19 @@ export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Re } export function getBaseURL(cloudflareEnv: Env, provider: string, providerSettings?: Record) { + const { baseUrl } = getProviderBaseUrlAndKey({ + provider, + apiKeys: {}, + providerSettings, + serverEnv: cloudflareEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: '', + }); + + if (baseUrl) { + return baseUrl; + } + let settingBaseUrl = providerSettings?.[provider].baseUrl; if (settingBaseUrl && settingBaseUrl.length == 0) { diff --git a/app/types/model.ts b/app/types/model.ts index a747a3fb4..b449363b3 100644 --- a/app/types/model.ts +++ b/app/types/model.ts @@ -4,6 +4,7 @@ export type ProviderInfo = { staticModels: ModelInfo[]; name: string; getDynamicModels?: ( + providerName: string, apiKeys?: Record, providerSettings?: IProviderSetting, serverEnv?: Record, diff --git a/app/utils/constants.ts b/app/utils/constants.ts index 6595d9c9f..c4eb0ae0d 100644 --- a/app/utils/constants.ts +++ b/app/utils/constants.ts @@ -318,6 +318,83 @@ const PROVIDER_LIST: ProviderInfo[] = [ }, ]; +export const providerBaseUrlEnvKeys: Record = { + Anthropic: { + apiTokenKey: 'ANTHROPIC_API_KEY', + }, + OpenAI: { + apiTokenKey: 'OPENAI_API_KEY', + }, + Groq: { + apiTokenKey: 'GROQ_API_KEY', + }, + HuggingFace: { + apiTokenKey: 'HuggingFace_API_KEY', + }, + OpenRouter: { + apiTokenKey: 'OPEN_ROUTER_API_KEY', + }, + Google: { + apiTokenKey: 'GOOGLE_GENERATIVE_AI_API_KEY', + }, + OpenAILike: { + baseUrlKey: 'OPENAI_LIKE_API_BASE_URL', + apiTokenKey: 'OPENAI_LIKE_API_KEY', + }, + Together: { + baseUrlKey: 'TOGETHER_API_BASE_URL', + apiTokenKey: 'TOGETHER_API_KEY', + }, + Deepseek: { + apiTokenKey: 'DEEPSEEK_API_KEY', + }, + Mistral: { + apiTokenKey: 'MISTRAL_API_KEY', + }, + LMStudio: { + baseUrlKey: 'LMSTUDIO_API_BASE_URL', + }, + xAI: { + apiTokenKey: 'XAI_API_KEY', + }, + Cohere: { + apiTokenKey: 'COHERE_API_KEY', + }, + Perplexity: { + apiTokenKey: 'PERPLEXITY_API_KEY', + }, + Ollama: { + baseUrlKey: 'OLLAMA_API_BASE_URL', + }, +}; + +export const getProviderBaseUrlAndKey = (options: { + provider: string; + apiKeys?: Record; + providerSettings?: IProviderSetting; + serverEnv?: Record; + defaultBaseUrlKey: string; + defaultApiTokenKey: string; +}) => { + const { provider, apiKeys, providerSettings, serverEnv, defaultBaseUrlKey, defaultApiTokenKey } = options; + let settingsBaseUrl = providerSettings?.baseUrl; + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const baseUrlKey = providerBaseUrlEnvKeys[provider]?.baseUrlKey || defaultBaseUrlKey; + const baseUrl = settingsBaseUrl || serverEnv?.[baseUrlKey] || process.env[baseUrlKey] || import.meta.env[baseUrlKey]; + + const apiTokenKey = providerBaseUrlEnvKeys[provider]?.apiTokenKey || defaultApiTokenKey; + const apiKey = + apiKeys?.[provider] || serverEnv?.[apiTokenKey] || process.env[apiTokenKey] || import.meta.env[apiTokenKey]; + + return { + baseUrl, + apiKey, + }; +}; export const DEFAULT_PROVIDER = PROVIDER_LIST[0]; const staticModels: ModelInfo[] = PROVIDER_LIST.map((p) => p.staticModels).flat(); @@ -337,7 +414,7 @@ export async function getModelList(options: { await Promise.all( PROVIDER_LIST.filter( (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name], serverEnv)), + ).map((p) => p.getDynamicModels(p.name, apiKeys, providerSettings?.[p.name], serverEnv)), ) ).flat(), ...staticModels, @@ -347,35 +424,26 @@ export async function getModelList(options: { } async function getTogetherModels( + name: string, apiKeys?: Record, settings?: IProviderSetting, serverEnv: Record = {}, ): Promise { try { - let settingsBaseUrl = settings?.baseUrl; - - if (settingsBaseUrl && settingsBaseUrl.length == 0) { - settingsBaseUrl = undefined; - } - - const baseUrl = - settingsBaseUrl || - serverEnv?.TOGETHER_API_BASE_URL || - process.env.TOGETHER_API_BASE_URL || - import.meta.env.TOGETHER_API_BASE_URL || - ''; - const provider = 'Together'; + const { baseUrl, apiKey } = getProviderBaseUrlAndKey({ + provider: name, + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'TOGETHER_API_BASE_URL', + defaultApiTokenKey: 'TOGETHER_API_KEY', + }); + console.log({ baseUrl, apiKey }); if (!baseUrl) { return []; } - let apiKey = import.meta.env.OPENAI_LIKE_API_KEY ?? ''; - - if (apiKeys && apiKeys[provider]) { - apiKey = apiKeys[provider]; - } - if (!apiKey) { return []; } @@ -393,7 +461,7 @@ async function getTogetherModels( label: `${m.display_name} - in:$${m.pricing.input.toFixed( 2, )} out:$${m.pricing.output.toFixed(2)} - context ${Math.floor(m.context_length / 1000)}k`, - provider, + provider: name, maxTokenAllowed: 8000, })); } catch (e) { @@ -402,39 +470,40 @@ async function getTogetherModels( } } -const getOllamaBaseUrl = (settings?: IProviderSetting, serverEnv: Record = {}) => { - let settingsBaseUrl = settings?.baseUrl; - - if (settingsBaseUrl && settingsBaseUrl.length == 0) { - settingsBaseUrl = undefined; - } - - const defaultBaseUrl = - settings?.baseUrl || - serverEnv?.OLLAMA_API_BASE_URL || - process.env.OLLAMA_API_BASE_URL || - import.meta.env.OLLAMA_API_BASE_URL || - 'http://localhost:11434'; +const getOllamaBaseUrl = (name: string, settings?: IProviderSetting, serverEnv: Record = {}) => { + const { baseUrl } = getProviderBaseUrlAndKey({ + provider: name, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', + defaultApiTokenKey: '', + }); // Check if we're in the browser if (typeof window !== 'undefined') { // Frontend always uses localhost - return defaultBaseUrl; + return baseUrl; } // Backend: Check if we're running in Docker const isDocker = process.env.RUNNING_IN_DOCKER === 'true'; - return isDocker ? defaultBaseUrl.replace('localhost', 'host.docker.internal') : defaultBaseUrl; + return isDocker ? baseUrl.replace('localhost', 'host.docker.internal') : baseUrl; }; async function getOllamaModels( - apiKeys?: Record, + name: string, + _apiKeys?: Record, settings?: IProviderSetting, serverEnv: Record = {}, ): Promise { try { - const baseUrl = getOllamaBaseUrl(settings, serverEnv); + const baseUrl = getOllamaBaseUrl(name, settings, serverEnv); + + if (!baseUrl) { + return []; + } + const response = await fetch(`${baseUrl}/api/tags`); const data = (await response.json()) as OllamaApiResponse; @@ -453,34 +522,25 @@ async function getOllamaModels( } async function getOpenAILikeModels( + name: string, apiKeys?: Record, settings?: IProviderSetting, serverEnv: Record = {}, ): Promise { try { - let settingsBaseUrl = settings?.baseUrl; - - if (settingsBaseUrl && settingsBaseUrl.length == 0) { - settingsBaseUrl = undefined; - } - - const baseUrl = - settingsBaseUrl || - serverEnv.OPENAI_LIKE_API_BASE_URL || - process.env.OPENAI_LIKE_API_BASE_URL || - import.meta.env.OPENAI_LIKE_API_BASE_URL || - ''; + const { baseUrl, apiKey } = getProviderBaseUrlAndKey({ + provider: name, + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'OPENAI_LIKE_API_BASE_URL', + defaultApiTokenKey: 'OPENAI_LIKE_API_KEY', + }); if (!baseUrl) { return []; } - let apiKey = ''; - - if (apiKeys && apiKeys.OpenAILike) { - apiKey = apiKeys.OpenAILike; - } - const response = await fetch(`${baseUrl}/models`, { headers: { Authorization: `Bearer ${apiKey}`, @@ -491,7 +551,7 @@ async function getOpenAILikeModels( return res.data.map((model: any) => ({ name: model.id, label: model.id, - provider: 'OpenAILike', + provider: name, })); } catch (e) { console.error('Error getting OpenAILike models:', e); @@ -533,23 +593,25 @@ async function getOpenRouterModels(): Promise { } async function getLMStudioModels( - _apiKeys?: Record, + name: string, + apiKeys?: Record, settings?: IProviderSetting, serverEnv: Record = {}, ): Promise { try { - let settingsBaseUrl = settings?.baseUrl; + const { baseUrl } = getProviderBaseUrlAndKey({ + provider: name, + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'LMSTUDIO_API_BASE_URL', + defaultApiTokenKey: '', + }); - if (settingsBaseUrl && settingsBaseUrl.length == 0) { - settingsBaseUrl = undefined; + if (!baseUrl) { + return []; } - const baseUrl = - settingsBaseUrl || - serverEnv.LMSTUDIO_API_BASE_URL || - process.env.LMSTUDIO_API_BASE_URL || - import.meta.env.LMSTUDIO_API_BASE_URL || - 'http://localhost:1234'; const response = await fetch(`${baseUrl}/v1/models`); const data = (await response.json()) as any; @@ -594,7 +656,7 @@ async function initializeModelList(options: { await Promise.all( PROVIDER_LIST.filter( (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(apiKeys, providerSettings?.[p.name], env)), + ).map((p) => p.getDynamicModels(p.name, apiKeys, providerSettings?.[p.name], env)), ) ).flat(), ...staticModels, diff --git a/vite.config.ts b/vite.config.ts index f18b8b934..d96f70451 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -28,7 +28,7 @@ export default defineConfig((config) => { chrome129IssuePlugin(), config.mode === 'production' && optimizeCssModules({ apply: 'build' }), ], - envPrefix: ["VITE_", "OPENAI_LIKE_API_", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_BASE_URL"], + envPrefix: ["VITE_", "OPENAI_LIKE_API_", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_"], css: { preprocessorOptions: { scss: { From 90c9c9c760d672d6c9417f56ee1ffb130c6b32f0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 18 Dec 2024 15:12:36 +0000 Subject: [PATCH 13/41] chore: update commit hash to 6458211bed379396e797e6da2944f6627a428c40 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 1386a0575..f60c14804 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "a9309161e95a8ed015f2f71b622fb63afdb74877", "version": "0.0.3" } +{ "commit": "6458211bed379396e797e6da2944f6627a428c40", "version": "0.0.3" } From 6975083fb9565b94b7e73064097f35c3f11527dc Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 21:31:50 +0530 Subject: [PATCH 14/41] stopped apikeys set to envfile being exposed to UI --- app/commit.json | 2 +- vite.config.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/commit.json b/app/commit.json index 393abd3de..f8c2532cf 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "e74d6cafb53f6eb2bb80c32014b27ac0aa56e7fe" } +{ "commit": "26a3bcf9b6401e606b5063830550cd6022f73899" } diff --git a/vite.config.ts b/vite.config.ts index d96f70451..f292c7bdd 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -28,7 +28,7 @@ export default defineConfig((config) => { chrome129IssuePlugin(), config.mode === 'production' && optimizeCssModules({ apply: 'build' }), ], - envPrefix: ["VITE_", "OPENAI_LIKE_API_", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_"], + envPrefix: ["VITE_", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_BASE_URL"], css: { preprocessorOptions: { scss: { From d37c3736d5e73b0305f19d1bbc7c47a6dfbf7656 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 21:34:18 +0530 Subject: [PATCH 15/41] removed logs --- app/commit.json | 2 +- app/lib/.server/llm/model.ts | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/app/commit.json b/app/commit.json index f8c2532cf..cd2195b4c 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "26a3bcf9b6401e606b5063830550cd6022f73899" } +{ "commit": "6975083fb9565b94b7e73064097f35c3f11527dc" } diff --git a/app/lib/.server/llm/model.ts b/app/lib/.server/llm/model.ts index 1feb499b1..308e27d45 100644 --- a/app/lib/.server/llm/model.ts +++ b/app/lib/.server/llm/model.ts @@ -84,8 +84,6 @@ export function getHuggingFaceModel(apiKey: OptionalApiKey, model: string) { } export function getOllamaModel(baseURL: string, model: string) { - console.log({ baseURL, model }); - const ollamaInstance = ollama(model, { numCtx: DEFAULT_NUM_CTX, }) as LanguageModelV1 & { config: any }; From b892d708ec5ec5396b810bad48cf3dedb2b05769 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 21:55:17 +0530 Subject: [PATCH 16/41] removed logs and openAI fix --- app/commit.json | 2 +- app/utils/constants.ts | 2 -- vite.config.ts | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/app/commit.json b/app/commit.json index cd2195b4c..432fff856 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "6975083fb9565b94b7e73064097f35c3f11527dc" } +{ "commit": "d37c3736d5e73b0305f19d1bbc7c47a6dfbf7656" } diff --git a/app/utils/constants.ts b/app/utils/constants.ts index c4eb0ae0d..b80b3c8fe 100644 --- a/app/utils/constants.ts +++ b/app/utils/constants.ts @@ -408,7 +408,6 @@ export async function getModelList(options: { }) { const { apiKeys, providerSettings, serverEnv } = options; - // console.log({ providerSettings, serverEnv,env:process.env }); MODEL_LIST = [ ...( await Promise.all( @@ -438,7 +437,6 @@ async function getTogetherModels( defaultBaseUrlKey: 'TOGETHER_API_BASE_URL', defaultApiTokenKey: 'TOGETHER_API_KEY', }); - console.log({ baseUrl, apiKey }); if (!baseUrl) { return []; diff --git a/vite.config.ts b/vite.config.ts index f292c7bdd..b2f795dde 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -28,7 +28,7 @@ export default defineConfig((config) => { chrome129IssuePlugin(), config.mode === 'production' && optimizeCssModules({ apply: 'build' }), ], - envPrefix: ["VITE_", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_BASE_URL"], + envPrefix: ["VITE_","OPENAI_LIKE_API_BASE_URL", "OLLAMA_API_BASE_URL", "LMSTUDIO_API_BASE_URL","TOGETHER_API_BASE_URL"], css: { preprocessorOptions: { scss: { From 296e5d9f779a818210caed974b75ca8e5644ea8c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 18 Dec 2024 16:28:44 +0000 Subject: [PATCH 17/41] chore: update commit hash to 50e677878446f622531123b19912f38e8246afbd --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index f60c14804..71f2fed69 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "6458211bed379396e797e6da2944f6627a428c40", "version": "0.0.3" } +{ "commit": "50e677878446f622531123b19912f38e8246afbd", "version": "0.0.3" } From 1398344c11f227c167ad1d726a734ea534d3e03a Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Wed, 18 Dec 2024 23:34:41 +0530 Subject: [PATCH 18/41] docs: updated setup guide to have more detailed instructions --- README.md | 224 +++++++++++++++++++-------- app/commit.json | 2 +- docs/images/api-key-ui-section.png | Bin 0 -> 35549 bytes docs/images/bolt-settings-button.png | Bin 0 -> 701361 bytes docs/images/provider-base-url.png | Bin 0 -> 168833 bytes 5 files changed, 160 insertions(+), 66 deletions(-) create mode 100644 docs/images/api-key-ui-section.png create mode 100644 docs/images/bolt-settings-button.png create mode 100644 docs/images/provider-base-url.png diff --git a/README.md b/README.md index c7387ee9e..cbd3f20f4 100644 --- a/README.md +++ b/README.md @@ -74,112 +74,206 @@ https://thinktank.ottomator.ai If you're new to installing software from GitHub, don't worry! If you encounter any issues, feel free to submit an "issue" using the provided links or improve this documentation by forking the repository, editing the instructions, and submitting a pull request. The following instruction will help you get the stable branch up and running on your local machine in no time. -### Prerequisites +Let's get you up and running with the stable version of Bolt.DIY! -1. **Install Git**: [Download Git](https://git-scm.com/downloads) -2. **Install Node.js**: [Download Node.js](https://nodejs.org/en/download/) +## Quick Download - - After installation, the Node.js path is usually added to your system automatically. To verify: - - **Windows**: Search for "Edit the system environment variables," click "Environment Variables," and check if `Node.js` is in the `Path` variable. - - **Mac/Linux**: Open a terminal and run: - ```bash - echo $PATH - ``` - Look for `/usr/local/bin` in the output. +[![Download Latest Release](https://img.shields.io/github/v/release/stackblitz-labs/bolt.diy?label=Download%20Bolt&sort=semver)](https://github.com/stackblitz-labs/bolt.diy/releases/latest/download/bolt.diy.zip) ← Click here to download the latest version! -### Clone the Repository +## Prerequisites -Clone the repository using Git: +Before you begin, you'll need to install two important pieces of software: -```bash -git clone -b stable https://github.com/stackblitz-labs/bolt.diy -``` +### Install Node.js ---- +Node.js is required to run the application. + +1. Visit the [Node.js Download Page](https://nodejs.org/en/download/) +2. Download the "LTS" (Long Term Support) version for your operating system +3. Run the installer, accepting the default settings +4. Verify Node.js is properly installed: + - **For Windows Users**: + 1. Press `Windows + R` + 2. Type "sysdm.cpl" and press Enter + 3. Go to "Advanced" tab → "Environment Variables" + 4. Check if `Node.js` appears in the "Path" variable + - **For Mac/Linux Users**: + 1. Open Terminal + 2. Type this command: + ```bash + echo $PATH + ``` + 3. Look for `/usr/local/bin` in the output + +## Running the Application + +You have two options for running Bolt.DIY: directly on your machine or using Docker. -## Run the Application +### Option 1: Direct Installation (Recommended for Beginners) -### Option 1: Without Docker +1. **Install Package Manager (pnpm)**: + ```bash + npm install -g pnpm + ``` -1. **Install Dependencies**: - ```bash - pnpm install - ``` - If `pnpm` is not installed, install it using: - ```bash - sudo npm install -g pnpm - ``` +2. **Install Project Dependencies**: + ```bash + pnpm install + ``` -2. **Start the Application**: - ```bash - pnpm run dev +3. **Start the Application**: + ```bash + pnpm run dev ``` - This will start the Remix Vite development server. You will need Google Chrome Canary to run this locally if you use Chrome! It's an easy install and a good browser for web development anyway. -### Option 2: With Docker + **Important Note**: If you're using Google Chrome, you'll need Chrome Canary for local development. [Download it here](https://www.google.com/chrome/canary/) + +### Option 2: Using Docker -#### Prerequisites -- Ensure Git, Node.js, and Docker are installed: [Download Docker](https://www.docker.com/) +This option requires some familiarity with Docker but provides a more isolated environment. -#### Steps +#### Additional Prerequisite +- Install Docker: [Download Docker](https://www.docker.com/) -1. **Build the Docker Image**: +#### Steps: - Use the provided NPM scripts: - ```bash - npm run dockerbuild - ``` +1. **Build the Docker Image**: + ```bash + # Using npm script: + npm run dockerbuild - Alternatively, use Docker commands directly: - ```bash + # OR using direct Docker command: docker build . --target bolt-ai-development - ``` + ``` + +2. **Run the Container**: + ```bash + docker-compose --profile development up + ``` -2. **Run the Container**: - Use Docker Compose profiles to manage environments: - ```bash - docker-compose --profile development up - ``` - - With the development profile, changes to your code will automatically reflect in the running container (hot reloading). ---- -### Entering API Keys +## Configuring API Keys and Providers -All of your API Keys can be configured directly in the application. Just selecte the provider you want from the dropdown and click the pencile icon to enter your API key. +### Adding Your API Keys ---- +Setting up your API keys in Bolt.DIY is straightforward: + +1. Open the home page (main interface) +2. Select your desired provider from the dropdown menu +3. Click the pencil (edit) icon +4. Enter your API key in the secure input field + +![API Key Configuration Interface](./docs/images/api-key-ui-section.png) + +### Configuring Custom Base URLs + +For providers that support custom base URLs (such as Ollama or LM Studio), follow these steps: + +1. Click the settings icon in the sidebar to open the settings menu + ![Settings Button Location](./docs/images/bolt-settings-button.png) -### Update Your Local Version to the Latest +2. Navigate to the "Providers" tab +3. Search for your provider using the search bar +4. Enter your custom base URL in the designated field + ![Provider Base URL Configuration](./docs/images/provider-base-url.png) -To keep your local version of bolt.diy up to date with the latest changes, follow these steps for your operating system: +> **Note**: Custom base URLs are particularly useful when running local instances of AI models or using custom API endpoints. -#### 1. **Navigate to your project folder** - Navigate to the directory where you cloned the repository and open a terminal: +### Supported Providers +- Ollama +- LM Studio +- OpenAILike -#### 2. **Fetch the Latest Changes** - Use Git to pull the latest changes from the main repository: + +## Setup Option 3: Git Clone (For Developers only) + +This method is recommended for developers who want to: +- Contribute to the project +- Stay updated with the latest changes +- Switch between different versions +- Create custom modifications + +#### Prerequisites +1. Install Git: [Download Git](https://git-scm.com/downloads) + +#### Initial Setup + +1. **Clone the Repository**: ```bash - git pull origin main + # Using HTTPS + git clone https://github.com/stackblitz-labs/bolt.diy.git ``` -#### 3. **Update Dependencies** - After pulling the latest changes, update the project dependencies by running the following command: +2. **Navigate to Project Directory**: + ```bash + cd bolt.diy + ``` +3. **Switch to the Main Branch**: ```bash - pnpm install + git checkout main ``` -#### 4. **Run the Application** - Once the updates are complete, you can start the application again with: +4. **Install Dependencies**: + ```bash + pnpm install + ``` +5. **Start the Development Server**: ```bash pnpm run dev ``` -This ensures that you're running the latest version of bolt.diy and can take advantage of all the newest features and bug fixes. +#### Staying Updated + +To get the latest changes from the repository: + +1. **Save Your Local Changes** (if any): + ```bash + git stash + ``` + +2. **Pull Latest Updates**: + ```bash + git pull origin main + ``` + +3. **Update Dependencies**: + ```bash + pnpm install + ``` + +4. **Restore Your Local Changes** (if any): + ```bash + git stash pop + ``` + +#### Troubleshooting Git Setup + +If you encounter issues: + +1. **Clean Installation**: + ```bash + # Remove node modules and lock files + rm -rf node_modules pnpm-lock.yaml + + # Clear pnpm cache + pnpm store prune + + # Reinstall dependencies + pnpm install + ``` + +2. **Reset Local Changes**: + ```bash + # Discard all local changes + git reset --hard origin/main + ``` + +Remember to always commit your local changes or stash them before pulling updates to avoid conflicts. --- diff --git a/app/commit.json b/app/commit.json index 1386a0575..2c5ff869f 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "a9309161e95a8ed015f2f71b622fb63afdb74877", "version": "0.0.3" } +{ "commit": "a1e902fe7963fa2008c8b30f1cb8be9281146bb2" } diff --git a/docs/images/api-key-ui-section.png b/docs/images/api-key-ui-section.png new file mode 100644 index 0000000000000000000000000000000000000000..4dc4a7b562c92f15edd0bd00bf6a3580ab6f2eb8 GIT binary patch literal 35549 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%0Dy(* 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 KS4x_^`@aAKGPGd; literal 0 HcmV?d00001 diff --git a/docs/images/bolt-settings-button.png b/docs/images/bolt-settings-button.png new file mode 100644 index 0000000000000000000000000000000000000000..2a3c55bae69dc9bbcd234721bd85b566de0a2b70 GIT binary patch literal 701361 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 xD!wUF@DH&Jfz6gAv~kUj#Jnz{I2*)#F9av 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

u{ad6zAD$&3ADioC_&L4%!VLDG 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%0ArU?a#O5Iby>8EY=*0Ge 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%0D7HmCDn1DS$;|-rLK=tVy0}<=&$@j=LM?7Yxx0Ok zbUe~S_rKq>Aq~o!`Z{}ccViFF z6f;nEgEeqyf?Xi{W`p9PAcif~(;y;u8om}a!{BceLb(jCSBm`k7&8H?WS3%0DULv@ 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 j{!DJ&3k##k_cAYDzk%*Q5z!@~D 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

5t2#m?joD_p6VKOzD z2ZUdh@4+i;whhrUs^{c%GE(~XL+j@vv(_xsl*fq zeBfRg56`yyIjmiX@)Mj7`sess7l2`@KBpcEzJO7xLWGYU*lbHCg&hrRE&RutA_`yB zkDi)e;i<{+4{p`of4}KBr(ckvxt!wGYaBKmm(<)LpcWtXdAL~*;{4j;22RrdXh1o! z-X7qQ;$5XE(Bt_qq4_(gci+B`yfFLNR?jELF>x*=gWETK-i8Bqep={k@_NrZ?sSV= zG}}my!Sg+x&EMxuvMq1yUdJWZ|FqEYPXND9_{L<}y`R6Cg+QOi@v|H+5^|An>DH9j zRC?=S)-whLX1=R6ZqCxvjw=LZ z!b8Jz@D+tCFKa>1`-P4dFyJIUeki-|H0f zWB}*K{)Z!_i*=;v-9>SZlswb3B-L}BrFw~732Q|+=VZ@Fe~#*riz)fAD{C03VbxV3 zU+lE*d9f)XWNf{~NS(*%o+@dvRD9GeRI^^OY0vbDKWKR1cRqp+Vu@*ed(HRYQ9J=} zGqqW7y}1tEIvn&$JwVNBA#H}ICww3mC`fCXOD{LXvu*G)(1Bje%H>9fK zcYraSAj*tHNwu<*~i)$ z1KG8YpyB9oKm|WZ`H+m)<$tJPvaeud6c{%^3^kiig&f5(VPUmgpMHl%2?Oc)8!=(m z9&C40&78A<$~q6As=`i&*l;PtM}w0PQY03Vn2yjmf z3IL1M&J&2Yq+bb=PrsT;;Y!XHBJB?*JIk)voyZw>E$<@X2{N-hD1>(j(A@PaDuaLF z8lsngb1HVX23YkR&|aD3<>_S3IPxRn{Ao{Dh?}lWHNeL+wZ%YS3--2VS%98dW8f|} z{0F!%aSbYLobSkea@+%5iU{6d9{Uq+3j;cu4&D<{X_htx(nH)#^xMFK-`?RXB0! z+`-!iB96l*@G>^C44Z8;$0_`33vd_>l!k@GO~08f4ZA|sCDTB$s>Q68_0I?eJukx1 z_CNGzsurL(yWcn9+*C8fqi?0uC*Sh`FUMa44exYKn`8@L`{4Ayv)Mqd9IJhge!hG# zZ)h)p8lwmezgwew??lWVz~BaAh;DC-=H3(!U2_C zdDB%Di<)W>s74{1z|Y*E2T)gtCrR}<`u|6R1H0T3`~bo+=QO7x`cbLb+qUhk7CNlE zUtLBpy?vtS-dme>x3}*bF8^sUa8KH90~$n*j^7&hQiKE(L1WU|Nlli2<7JlAljAAs zfFO^5NOt=h?-o)4^BR2De&ygL#3n)HIX0S1;GW=3DP4Ksae++y+qj4Rfmpqe8oBcy zz#YgEcmSLFnPblI{`nF@{shsRnJ(KIE-dod+J+VK09-xm)Ck9Y@*fQqj-2$44odt= z-T>H-eW^DPTI#%N$Q=U3hG@-@P>A@kft7QpjT5QI{x&BdTX1TDpZ;t!F3B;O1%0|_ z?O43+1|&uiEhiiyZ50l;GC%*V7osM>`|>2cuKCA&{fUVj^;HzT4iI?2FTXHV84zNu zAW6sw!i^C?u^5J_J@xiDmdh=UBIcEqW&Y;q0yDi=T`q&;frEwy0tz`ce5|NkRR3dv z(&2rCxS@VF5IrQb7M`b_f^jp0-XeHPDB$?*dKB=88C(We2-0)OpI}aYbnEwze}Srr z9YCqWr+PeverlRNnfR#hsNvZ)d54eizanHDFd$-ahY$6sT_n5kgqHJz3=4K_#Uv=? zRwZDkIVJ+~{=oU++4TWD=UM)O`S3HWK}3{-%V?K@B}6O#{f9W(|7j|*=tt-(r@X=A ztsT(9IqAq&0jGdAlU<0md2`vnodYet6?uAjGctghl!r$#39=^2}h zqPvCv=!`d@;gcA^A5Mur^BVuse@sg89bo^6`KW$(ARPgB?*ba|09;H8WAVoE&mL0a zfDX0-UQpwQIm=FV!3VW0_PSOApiPF#zdfzpWesciD~8Xq0~o&K|Ktx0KS0d;cmT%y z^R;S*zv5+vtgkTeZa2;;1hkz8=qBleLx?}XdH%$XD|@sR^Cqn{F}%xvb8DCsV;(_} z>ZTul-v$$J{1dU-0!~gi7x$3;JD48S66*(>usJr?`Pr&)vNlh!QzuWENS>+ve9^#4xHU#7?<1$e*qI-&S2D+Wm*cB}i}w(s_< zN0RqpSZ6UYm0`R0e% zI0el{d=6|5EbGS@OVQbwStMqqZO#^Sz!XIc?eyt3B zAK?(3uCL&AbTx>+AeVEn(2{wuTU&~j6u7`~e?()4cYS50+-<^rlT;`*j;90jdbK5G zS8w`_cxxw2HnuVx)+G~_cW(^iH@B9ct`HrxE~Wi`PsFpKSASukiE)lC zyf`#ly;iPbhY-_H&dxEt+f-8dA$$+IvyhBZ$i5Gm3nDh6mz$%XnZu+_#s!Tq>n?b| z;uUHaM+=`BTkSZ#ytWSG2&EmHSWC1gUG2blky>SSI%gA9j8+U)1RyKfiq#jsc`SU{ za}?v4=ibI(I$+7P8SWEq{mXe=+z{{Mi5?V* zifb%p)?K}(p#L?lK?d$WRhz7kgz3pWH~Nb4e0!yeO`2)`p7pNugz}c5uv?u{K>Kp) z^|_Qx!z&0ps?_P&zr@iCgMa0|LLmwftLQxNT8r2^Jc9 zw>4^9{19sb$I`ql7lz9r<==g1^MJCnJmuq&mRsH~&ARV@+ez`~lEEwkN<865di&)2 zXV6fPFTKY@=kUQH-tz6-eSYEf@sw3oP2Pb*8WNOtk%^9Zv8_oy|0|};ma(=u?c$}X zO(r9sEZFqFyIR?d&lDSPm)@YC*b>ieZ#^S1mixuKQ^AXAuakr*=xnD*wMYl%YRWRR z{$3T4SP%>E&ud{drLRE{cDtHxejUpB(;XW5$6>S{88s_PBNBMwtSOt zY;EQAgzRQr_KH38)lzjYhVt_>XP>6R@`KcqBr0ZOZkXG>-6L{De0hF>b#`LLx-OTFPm5;Lt9l`rHvr_BLtFK_{*%#on%m!67L{;gSRS9s>gb|I5yX?ak1@IoW#1hH|*|G7N zNtNt8qK#(l*XqdrU@uv>q}BBVBpY+4azDH@YN8`oV`56FwBoj)%7YkI>1S&_-(NA( zKI9GygH3!O(OiCVYc1uf+YC}a>dv??r1jKRFRvICWKx}OlDj?nYx}-}l@<5ylB^)4 zw_?va(2DoLcO5-Nm^f+8YZ@($2||*6_J_?BL5_ot0S@)nZQ0FU)P7A6<=v@`ugedl*WZ`>63O~O3H6?(T7V)-&xuI=uh91^%THnlxG zJj8Wr-a2pwJ^sNf7UfN{+c;R<%&oNEl31JKl*X+Z+cV`_m7}+`Im@=jnU&Ez!}&JZ zPIh~2*{5L+!Y=-%V{B$aK?PZQx4gp1(ZQBSfcr47ULx~$SU^<>@0Zqa+q{~nm`+R2 z18&`T2;AsCde2zqAh`8YeP0F=+;NGcbU4L}@FB7CaXIC7|M}8+I$2uyNiA4PNua~4 zx|>X38;1>hYw?(#&Er3#Lni2M~Cbi znYg=Wm>#0lPcxZMJmlCZ*RQIs8>$P`?S)rw&kvX9Q^?=AQ2yh!Y#vbJ->YXN@gPF? z^P^)3-6!1m@D2DpJJ|vwBZhQY(m6FZK!7-azU;-ReS{I?o87M`#KWy;2fm6eW&)=q z?Ux7%$`vRbUjI&-n!(^(L7wa%RT>Abn!>s8frGy*xP$5DsO*d zow-A?-#yd&Xmk=BK7j*4vsGh`Qfb(BAO7;`K@Wi8P?81`*9*s*im}NovR)wsk zU>(lH12F}0E&S>aVz?DP%~(Ato1iJ_myj|!ePfI!Uzd>njpy35!b6&!37T=) zg-bmDL!S&CYy_}g6}KvD^EkS|6X$f2pt6;tXm8a;aJ}kbzhs!_Zd&WZZOnqc_mcuV zG7m@`{|dC^gTWdu*fvnLqw}kn*{?ulr~|{e?RMif=>muEC_lyY1k8QCOFMrbF=n6A zf5U>FpC(AbqFzR7_}X@56k4p@ZNVik+hamGO^FUuh^X_&ezU8ktZ7WmKZ_7J#ya@Ji;u8;0XMS8-IrHlW4WBP{MaYq%pUz*Y!K zF&#}rCNJBI0OArG&k4?HgR43PCCg{&occ0XAU1QQdmVTD!>}iOe;X3YljE|0^1zlo zrocOu|A2q(1f7Vo#o-urp9Ir0(rqmieY}r6YoX(n)seF`m#!jt+)u^Dz_K;QxowxJ9zuqe1M~xkO;Mzh4XjE{r^YcASbVOEg>OhwR5* zb5To8cE!qoge%$gTs{!-jR+JI-Pf$L@8$UqLvS%FJj+yTAfjx_*u`DGUhsV>hu;MH zFZ_Sz4LQiA-_^74l)b)5b@dtabx>l>Tpw)O?9Dd0r)H1+q=fI7B6`rJIWJ9-=hsUqHuUTzj*0>1Rske_2XazXxYw=BooiV~S(RJ~|71_fLc|DaMM*rW$I$ zB6Nef1hHfmv)JOHz)`FEC1}rE?%HD+9B2PSpx>k4U^N!SlMkqODmm6v6qHx}=k8hS z_YV~4oGbLhA@zSX5cR-BS+{TCBgqE!Al0Y*DU(0gIIVe0`?=Z0rg~+#3(YgXR6vl7 zsT2)bd@8@r2TwZuC>hFtObV@aA39=i24VQz(N6ozasg7tdf4y-eP@xo`BcxT+=4*% zzwQ3|7aeBUGX=>35$lKWoO2yPbVFY%!^Ijj3^6{vidwY!jhFvxYF*fvDZQiwEq=CK zcjD;^kb#QxNsd+@o?R|fHA^ZB8+ZpNZWY!a>}l>~hU4EoVAJ28Abf~tEzHXKv4NnU zqaxlCfUmUPq}FOYqixckziOv5uybmmaeAlZF8yx?@xSKzl5EijL(WEu4?mb?L;Vc( zYPK5(-$i_R4^d5}YD_O|lQh!OvXl(?>)Q4o=Ay=?93tX|@PnP_Ap6*)`V5&c=Z<;!t?e(Km$5*+0JDASGpau=BMXaK|nGGu$p`5Ux?A;4Zd^I<9# zewSwaI!JC~J8}K_d7PE{N5~3+JcnNT_qMYK)I18Bp=2W*gMY>dN!=RObOvg+oBA?( zxni%T_>R>Fa|9iqZ`du|#bg3bj~H-6{7fF;l4KU{&Zk(8sS6%JcLWhi(zUq|5^9us zC|(Bq`XAZpunUSOAJObop8Q@G_O|MkYx6BH;HIwekMs4w7F{~=rSTschJ)BdhR}&G z#fo3fpl_28E>R#BmMA0^fV+R!v?6D`%BY<~@iL>44%OWk)8zDP_{E&Zw*x4r74fTElB#xQpm@yw5jZD2fNEzhJ5 zqFF5s6@T3cSOEBG?*7M>)$x3i0k|ulQk+T&rd+jBR%VD(<~qDC{nVvDC! z>zBuXBs<015mYWTD+cz`)4 ztx92lIhpkr(aW&`T+tbZqiZ-n7zi4lA=}UcX|~QwzWi(vhOPCqSY-5ZKAlgU1mJ&i zX$h7k>h%(gYDGz$8h4rq9(!|C8tZ7*xzNsQ_-DXq8oq$mc1leT!NYeH#7{k0f%Y_p zxdz3z0@s*`^p*et35$&P=2&`3ejBjNZYJ?_*B?5Tt~I2P{#u0;kDGZSu9=09d7^0m z$A^H)xC>aDw8ZX1wORn%iCPt7)<~*{2yk%QSUspQz^n#k7*PlVds`9IL_@Bl0h&8s zUe6;`9XUg(PMX$g9*@6*~KoxTx4v=mnGGJ#8#IA)9}g&!&%IyJ2aTiI|O5R3jkD*NZS{i z%1Zq8^mO%A>|su2^}}&S6|UgNd7OYO)+7-UgDz|)uh~CvUO>gD2csO3Lj!NH>6k4d zO7#1P`DgwGJfYvc%AUVR;xPs6%U(mX4y$xo;sM2ysR#hdn1mDWt{g%55hy)cw*W@7 z@d)sf4P=h&5~f;!>#y5SzVjVdC2G?tDp&>*vI)>KOp^Qei`Msy6R*;+%jzBKxQsP; zFHG87+fe};^sBm=2NCvGAO;Tm-H0VnP5f-YQhhW#5oI&6uYVNnE0fJwUpjkfy%|)6 zyMN&zkgS8Uf;%dBhe>Fr966XnOQkgr?-XkjMXVOz-Wq)G4s!c7RN#b79%9HlfTT1| znIr@1++M2MSt#srai9#iZ~F0gk+|4uHEA}goQ)zA5uf{ z=72qj5-=P%G7g_oJddb7CFdg3Aw;pc>c^^9qQv>opxOTnAmUUic^6TuA#l$ z9LUE|j9xbB>K@I$>HqI$5M^i^^p?@a|B@%Xt{yLc|2tK&al*)Qr100j9((uGVSq{TDfsV~5Sg0XI||0+gd!2|474Vl$Hs5>u*og2Ef=?>kZX3Xraj45wQ-P@Pix+a`*C zyKGYh7+IGdzKcth1B>HlAoA2o=_8wdfa84!`Q7uG@-5Z>e`>$SJ^)leRY9YVd!zuP zeq_@Qo@UV*VK2#Veox8wSADSuVvV-F={zBf7AyxYyUgeH_)fA0%c1VktBy|FB{OF_ z0RJadu&46WPNlRQqDq?x!cJmtG%!2fmyqb1KYqGwM|?~KGWwpw2Hd;=%mZK)t)nbc-po4Sl)scro4X`_}i_Tk=#QZ zq5SJ1;D3ly2o#CaYkbiD%kGy9&G=g|xcHCYTY1|<6Jq^9;hkb^u~8#uK((6e?=9@d z#(3{-_KWYYh?DGTuc)YC&vAua_@^vmzcy+)3^@s0Wq5J_q=uyE|1tK~VNtGM+c3g_ zAT1KoY(%7`Wk^Lz(xOXJ$^ogN84!^MQ4nDOB}S#YOIlKp?i{*dXufOq^E~fwv)|)= zj_)6iff?q$@2l2Y=Q`IqT?L#$06Icjci7AuAVR*!4EO4GPL4fWPC2)kNR<9l8>=ZJ zaWcblKC{N}UZLs+dY+5qZ89l5pUiJ#s6&~`5_gr!Mayl{18sS67IgggYwPH{gA+a8g5 z&3!o|-UjlvC9N_1#lZ)Z6bHF2W5PH0Eg)LU+!+LXa$7?%aRLWCG99b= zO{d2TCg%%l<#Ul^2USBKb&M0P7Rk&IX}0;Ld_vV&BV7kO5oe&m^jM*_?8(UPvv_nx ztMo>U!p+~P$Es2fDG~L*H{s%xwq+g zw2H_b=3no;matu9zcZ6OLcR+Q?Uvf@JiU^(V{HwIXayybStiJuvvruJ-lBf1ye`ap zj-d#vvA~ib%RGBDU~)F_9dC+d|C^E}Xho=6bhsuUfQ{T}QfRU5#($yKG%3E>YA8?( z=1pRo6xPXSa?iaerAyqoPM+1;_^^m~+uc?wT%_m8zF`uIbmt$t|L@&sfP3aQFfv;9 zFG_%C1O2)pe3mNZ)8EZs53mhn4eFm4pec*5!y>RcB8fGNqIq1&E1hoD+cE(U+>b-1 z0||4(%I>}$0(u$MEp!V0bJ*tGYk@4MrnRr0)|;CX+?Qt%pg^c>#|E6us()IAS2?Pt;B~gf@4| zTc!CW(MirN1XZZl?4N{jQ&=tzTT$|Z!q=qcZuZcPkC|6Rb^yFw>`yj!8stw_heLvm zWRBW3t+sP$v3u?+Ip(3kEc5Y#fS<(45NLeN%RD}8a}>jJ6myCg?AMTVm=82_f<=05 zV0){tVMQx6nj@rHVBt~Xc~Qh}QQ_E5!#lps;x6mOQlOi5kMYIvP!x$r%lYD&Y`>grNLQ?2~6zK8W4Wu~7*FHSexLN5J<;5!PJH$KH>ORV% zGpND*yr&tt;{1PL(EpB|hV?)U(5?97pOX#>^Z;}WFY+*mhgVH?7#|eg*RoncCrf+n z_(#D{7TrPO#(^NpXU)8*s7FSUV{;F>sI+Z;L$P{chx~k+ToL(Wq5$4u30VZcoSW80 z`hYN~h$#G;TzDBQ&l8-78?h!GPSUMou6(ihvtz20+mY@TLneMc%oGx~jGXcLqea__ zBZO~G!J&TsC3LRqC#{jo<8y*__*1x3NbucRzANmYFx!Mp@;{tRqEd!)=XMP0_6>lJib)bSQFA12`GMt*zH1`; zUFq8ID}SD9B6VG*_9)3;H8D)J^2weQ$tKpIr8nDW?++KJpKR2fjnz4vXupM*n7ToM7AUt!*`uYYxoAjv`af?g5!w9r8#e3TKG3k`}gq@@vp~Fh$Dc7%UL|bE^~V zrUsqM4eDk$o5c9Gy|gM{&0^9N;^ zZYBtXt1nUc>M|04xyGG_M)x3*6Fys!FfJtQzA>KQ(S1VJuCAf+-sE+xA;#~VDAA!* zPbT8zC`O4nVPbbTByz8^eru+&sI$gN0am@OIPKYRmj;(u07xiM;0X~~Ea>Kx4C)s= zl9vxyFrTToWu%le8P3-8Zp^+&UEwLP1KNlCd45KM5#$!XHSj__$fS?vV~fb>k=&AB zOo*d1KKoC*-4X7*D}Ue?2IRX+m%GHLvf&I3pz|#CBG72FcV3QesQBf+4Vr4N7ZU?d z0=A3x3J5;(eLbO0jMN7TQc0(zWRU3Ch{Uy>2%1`Xo7VnTW-s3CnuAe26z{01q^9)# z9}2&e7$maH(V_Ne5vko!ixurYa)A!o*X$4KMSCYH2kYcY7t6EBC6iUT_?AAqCbFBP z@7RFfs6cCUqp!@?$v6XTw=jBvv5C{OYM1T(lD2jvoYxx|W0f2xJxoITTToFr!TefE#PUBM@)!nqihqG+6GXLSF?g?h$l91sg+vRGWNxuLEj$RNV&m8-eb zBa`kx-S;l&CaO~`JS^*dv=EQrZGbxzw%?{^Y|aj)7CuY$$HjYKn(8OuaSEv@eBb`HEN9}1$4K51xMbZG=mB=kr@iyR7?X{hx|iKLQWRW6%Rkr}W? zyJb#~gmwou%eh3d+|R*cZM6!Zdn;yVTT!Wn0ajgY>%?>vemi{2K9<1hI-MTPTK5mP zDIZLBk%b{&$C3RFQO1L~daMZub^g%(fS9jXD~Yak8n!78~+c5m80)YLtb@-C8~WB2UV)>NNfsvi0VjIkUbquc=#?UgCa zC*5`zQy=yW)2WnTAFNWsY6>Dszx(4}y8}k;e}2@PQqw_o-N(U67d2IhBSfSRrjZMnvxo1FTgV(~Li;x6!$-vVbY zMK9Xpi|u*L^oLJe`wQ_VWEO=eHNoZ^FV6Od$SsV4a$s4JTogz^eYZ&g$AweLszq@WC=Vm@~kWMvmVa;qr^ z-YwpcXu#U9YpWI$H)=74np_raQ!mpZgo0z(l?b4!za_rumMc-)LHUfcP!Eqqy zs5fm|@aniC0h2_nt;?n+b2P8F3mk&F!nycd9wxLdW&J(iuviWKP-6DDHSX9*ikv)+ z;qT9O5-LSm1~a)4X4h%I7;7U4mklyijN>6*$sW*1YW1NLD8%jmGPhB+*&Qi?8LE~_Fn3U`Hc+Y&l&Owb>zwgF4&J2ifqW2wODFc$``x>J11hy=l>oxC-Ng#A z50*{cJTBo$Zlg9Yz-}WoG`Ry|9^zicgrn~yE8Jt2lC1^O>(6N&T1q~&Bo1ge$yXhZ zH+gjJ3UG8Ccfma!(A7uNf#jiCc1PBc&#N)pYRWAb-5(P?vwLus84u*@7FaJ-wCjUg zCsP-`wTyawm?^)DQ)lQ7P{Wk2dfQ}otM23BM67W?p<`6gw6ib6bDnX$BaN*I6bXY^ zw*G)de+5Ca+G?joVwO*Q`=4$nl%vst8dJ~E$ zR}6;ql@#sW`2_zd`I2j{9_$2*e=I*uD$P2jk|syZVlrb&!&W0?)Hd5Cns*6W!yj;} zOv0T&G9)-7-WZywy(w#$Vm2fG?0?@|o2!2LE#&(>=t+I+dkm76D(= zM;;at1zmjTin?gi{-(cgt_Pk>QXb*Un}1{$?DCN8jpNZf*@G2h3KC_k`mCp`biuad zX0+}~REB=o%H zHT_$O1*x$iq7hB*`t^AM?v+)@=gHR{e9d|YUT;Bjwwq6hB5zUntb9jpJd0l)Q{hD3 zAd^U+8>YRss)2V+$H;Y{5)lFEidGP$!CmUh&QasM6H!kU@TlK3yqrWnj*Zxs{_YJl zmACvB-2w>4+XDpVs%N9^V+FO|%OOXs68W-rfcLdRFD+oacaYoaP3e;23X0tvQWO zZo4-p(Vs9x`*LX^xsI`irOmL!hxUX zQuFHBi~BBCGDuz(jF_GpUgjG7E@m+TB3ZU6C0|)y;H-G;?-|!ii%$ydTw`Llpt$Ym z8$fhhnG-z+v3$KbC&d+)m0QWpTRLnuGQY>jJ2)qNrOUa2cfHg4XM%}VAiZVoDJLEjWU<*R}&s^h_zEYCGBv}Jv4lX zSKNrnUV}Dy=L#m#N?FI@*NV^S|ML7iK<4nc@?`vjF{;kt`)M6SF}9&Pk67>gi2rf< zB&xLlo;Up&XhX#>UfF4OKqs7`nR@aDpjv%4v9bq=Qyk6jjfcPy-E?|W*4Ug7Ckkn| zMEA&=5f{Z}*fCtHJM5M`#FgY{IaHw=Z+!)N*kX;FjIfoy+PpxQJg~i(1MG@);H!iT}_(xZS#piGuF;+yBi-fy%-A{qs0X8M)_oH z8EgTO>F}b@V)ly_!^IKYB5!o6E@ZguU!$V7liM&uU;ks%|9&NxhHEaW|J(C_4E=w< z9r)0+t$vkOT~VbF-SShG%$;KxxzP5Ap7{Qa4!$zO(_tIseER#Lf^%L4xQHM~Gllo# z910QT`UfNyd|66c(ECJ!`8C;O{e)1qJGH#S$RkK6<@jrG?C%z|E`$lxetVflw|53` zJ8>x>p^H#k5oFCYLtOZ>n(hJrNQq|nxmcY*rjr_xA}5|piGwwC7wbm+xbntnOhSMh z=*IqVX!ayKQS?u>2uSF!&r>XWW2u|${{dl0*cLX052eB?jOb0nN$Tg0ADFtQ1(oW1 z)P#QAB?d?l8L?^=7~8Z+ zqXwabKjtgrt=##*N1fEsm9$08DA)2u7WZ+d87$HkaHHQNBAlw6sYiH4eD?YnleDLc zsR!=dVPgqT5Gx$&_>9;M#fM8yB$W}X4WmhBfvXY?S~hHCC$ctRlhlrRIXZCdhV;P- zWde^#p2m$ElcDk`{_`LBuUg!K$yu0{?5xUqcsSUXosG9|MmfKa6o(j#r$r+qX(G>V zC)!_^)n@8j_D5@;{|cB`e$z0<)W^DPX3pq5$zPA*BH*E2ZR+W&j5{bsTFHtxpRI1n z*Ln#uc#qWfe&MvbE6^=F^M(o+hC2$YJHur%{FPhbA{CZljApGBsJ0B5etI6-Bb8LN zEosOzjNGSAS+DAA2q7yhpb#<1qey4z$S&%pS1Mvl=;{BNSYS&Hwa?&iqj`iHVA$-b zgSEZX@R#kmZD;~#&@B*IP5R1|`^7~js$rwqb>O(upw?`rlAd^oJ9jq%h@1!wyzP>r z&B{sR>_7AAqmqvQSCp`{iAzw8!LTnK@chFw^~Y7GSyEKWY_zP4GCQ8&ZF6U% z(Z~<8gL3_Z-L`Cc;)`#Z(`_J9O0p~r>%aNF*#!h)k2o#oAc9Q3hcnb;YPS^&XN*9z zf5f)#us}e&RkFw8z3=_e;XbD^H$T+l1kAS^V!*z7_J?EFNzmCxA&5Y>Nv-smHL^K7 zAL5nSfPpkoKLsU#>hWA_9~;7Md;He)yVNJRNrc+Pdo?(EDnxR(?&Q$n zXxpuR>k#5qO&ylwcj*oZV*NhcurO!c%z&puIO?4&*?nP?Rcl)9_RUvXuQ z&iEruuCom%j?fNP#@6Oz<(v(ta3s&_`Xjb)ktg^34Cfg5#;L?7T>7h_XmN}NG@a6= z2a~uS5;P~-ek-;qN}c8U(xc3+;t$f+6mPl=%xtNJ9`{S|&>RGk)H1?yjcgpDOlNmB zC7GHQK8rSe*!1Jw-$*GiX3V^jC&fv5sH}AtCeIosi_ymI@*w-VtDqO{XrDECw|0PS zP;&8;`Ok){EQUpMa@huA>E^djdYr<7HgCfGzcg|nYL<8Lr&J@Aa&XQ!j8*53=kihO zd-D|`;(s;S!AC<7+xL(!Mz65Fa+f5p&}rIao-)ZjtF{R_Q_tfx6!!zjyvryx)U^45 z_JQ=lFuQMOa4|J8@*`aMv8QjdM;9Z1#r*q`#JgsRpWy zmHHqas^R@6Uz_X{%tEK0#Vm9u9YLmeIu{}r- zf8J}uL8{Tg6Bq7+_N2};C#lGNeE16J+8cA&-AUO4@q!FR`R6#6^Q~Y#x6OMF5u$^H zAj)+;)rF=9QVms_%^a6El1a|Tj%XInT$f6w$z5>y3U;<_E@HXlc6V4~^0>1ZgQa}H z-Tt*Hmn}WZkI%V(T!*M%4aN$qC3cI7N>4UxXg>4Y?Goo1{f0qgHx@WfeY2!o6*X7Z z(&MFz#g8W=vH9|p33;nr=kd4LTI$<5W3ix9hj}#b`ZLMJ@z(ZH<1C81%5R5t;gWdh z<9C$ov+4G2yDDoWKZSrQ39K@St?p|>B)L><^V+7{3T}@Sn+Sgk$s!*8FANGytnSx8m6%)^}B4Tq!5)(`JUuYxQ$u9HDo6& z6>#It9+c@}cj0~)9B2I{IqDSQ1P$~LvoDQp0Fp^6 zYdmV&W|d369^AY@f7a<^3vi!~T634ZSqCx3l=2Bfl$|RXzkz0@y5-3;!%TS1*Fd?` zZgn8>?BSXVvvG8nNxQq#&Y3bl^hIR4LMvy_T=J~80?QHZcC)_&OL@mMSkAwF@*~?( zGZN#t7(bEbb&|wAmRo3J(@Fs4q>&WQCqc6fJzDH{ItEhXymmiUij$MWo-@3fCGkrU zq3qAR1cP0{KmG`Su#>@* zkSn?ZXhFSKcGS2<=5j1O-bp6S(~sj&cm|%?gsJN`Y|4rCD(7^lMm-WYP6kQjQC}oM zM6SU4J7qV_A@9#~r*6lMj3ECP$$D_IRSh=yA+R>tx*u3oq5DoXb9B`^zj#JO-=O{V zM@n=IotmqelG_huK2m4Tj{WsX6CJ9bp*PgG0mR{Z)JqO3>N=}7Yfqr~RYmK-)75e# ze|PfuV69_68LidrFvj`ueoHU+l`nA2uAQ51x`CtcGpKrM3}rgX%+F zJub1u5NERA@?NunL}g#X8!{F_-DKC+`hESem~)L(<4Tt8&p-F}FbpYKAIl~^c~S-j z#9jB$Q{rnPJ?zyE{y*=oCn43>4mDvZPo1Rq-!7Mkkh-BIL~3MO+?E&{cXiS-ZlcZ7 zR#$AK{ZjUx^)6gmu3#Of`Cr*Q+x}M3bt$rtgAtQtLpIq+Kd9o#R{r{Q&hD8b_YMpE z5#xLxl*x0_l%%#V8PN6^*khR|>i#Ryw&c2SwQve+jJo(lF@RD=*!n|l>MiMc-w%e& zS$J`%Iv*<$XaxKrd=+(b>$_&$o(Q4!T0v`W8#8>wGJb&MB^QCW13&?tg!N@^Ilcm5 zU(ZlSDQ(eEYXUs|zGH_#op;iJjk1=Cp4gEFHL@3tyC3j~z#w1pDkN67FH*{BbbrW% zMX5+_@hBL|-fUlLv!832*SD||5qrNzpUumI*G9`BDUQs}LGnsrfn!(p^LTOfbi_mn zZiLtCo{+JpV(GgY^ty@^FukiBaU5FFYK0KZ9VJ!^{R0p?_%r!Uc!Vj_e>epOJ5wFA zatM?g%ksfdY3b+U`%SxV^$_^i`Z@YhnW%()q6e}dv7S}h>Z~YOFPW3%>)sxx&KXuH zRx{} z6G84Wtt?rQ;jn$imMGnjW|4jS#J8aL{$FRwl(&p?YNBM%%m0!W)_`DicuH~wjVj{Y zP{>KoS3gSg&Kx{*#Obiyy`znE*zh~53jXbutI)k2tGBjOt{WXmCgifGj?J5q!(>y| zlbKCp*OvD7v9VtF%0YChXSWLOWYv>C9M?Fn?Pl6l{_~WJQ`A>7*caf~NHx8mRGlj> zWP|O72CeN!#GRj>+}>bkB3UY~PZXllUUlrHML!z{M^;*Ex0(|aEdZmPK9Rd>GnuV$ zb+@=z<(7~9BWT{e$#Ca_VJn#L0Y(M3GFtk7aP0qzc_puTpPc`68y6~5`Ii$E1!>!w zRLa`O7|6UrV&m4Bo6AoM{Z1_vW97+ba225j;cHG6G_GJKP8jWfz^a;N3H&s!oJUrT z`Xi+MsqYU*Px{_MZ(n~|Z&LFhb6DhF)G_3*^bv;kP=l=Ko7c1GfJ^_q#J&hkc_*Gg zx7X?GZ*yS~eQ8f5iQKKV<*+V}z`4&Mn2&rxLLbrJhRcE~=~Be>y`|842<-E(!n9q2 zkYT5wRnDmd{rio@1D&hS$4fosp{y~>75XZ8b%gd=&vOA<{-dbh^k;FGEiuJAM#<4X zE8%})y);T(g{8ZaexW@P4RnLAvuQr4jO{<7pEq9pte=Op>O|k$xlI$Gu&kv-uqZ<1 zD?IpkP*JCw1$UtRMzY(X>KGPY-HrO=u;<(IK+10GcHjohB!n`Gt%uQ`c&xo9dAV9T zsI$u@wH#zK7>v~`^RVE$u6;o>H#EZW+=&dE0@JJ7c7Q_Q`~^+d^)k=j>cl-u$GZy4 z`114@0fT)szHw$lX#w|1894o{dVH~*!=xm9>qQo*;;Xu|gFSQ9w!y24471U%Vf^~^ zNu$|zHtu7~Iq1w#hhFra^;7!c8m_z= zb0s;|eWL+*l+FhS2p3;Q^vO>K_HvpJHS27HVe+~A+v3ziw{rteb6o*a09 zwAc4f-hhJ9HnvoOA&0FLXmd0e=Wu~0hpN>w&4 za!zfU#PYLECRa{>Xb1>hvvf&M+DzDk{8=L{_42Lhn?{rk2A91MW?DoB#hpSOZyIi_ zb<4!AOY%W-a*Mj5%jxz>raN@`WuQoGkQ5Hv-w%zrRi8B|%|@EES`4DcgA(n0-O(?A zUd8+1jp~TBtA; z>ky6X2dt-&F-^4nnN*elxzxrds(c@xOM_%#R&ria2ViiSDHqAZ$|l?<$l%sN_Uvze z$2fnm|5@!3?7z2{G@~vfHJ0@H7uQH>i#4N6zQe%e*XZXPhvZ1hzE#^2(@rZR)v7TK zn6$V;@CF$gAiUW{kJvj}(R+$3ZW&~)d7}maFM~A-y7-fHAQ${VK6vCvvsE3c6CEOL zY;aFg01&^{Fe*7-H^&swk!D}m$4$<6;-%z1f#6j1&MJkDVcfcE&#FF*|6K=76gf;I zB#2D5;7_Gr3zTHJ>4vIKCgLemHu`5<>8aSH&@xGk1rW>1ZZPA%t~TY6tOb1 z7(K(sXTe+tvWI;tuC1IY-aB_2AXM}FeW{_?ZI%qA{btiOQl@}$keZh6Vob?R>wn;S zd(UD7s*WxKp2q4HuzL$BHzh!#kEgIvo48tlV3ImYRUz%-YzyR%7J-h(a9yE;DSZNu z*OPlK5d>Wa7SjA<^azn}Z$!yTP2CSX4!34VcCH7C?-FsaTSRl@=NhvbwSUDkdqQ$* zZEXyYzsi#j#_V>MahvS`zf(*{Ecp1GVPm9S^@T3niS_b0@xEz7roPX_eav=~-caax{af3X`3a%nzKQH~R|ST8AtC0>ll*L%Z}|k3j$7 z;hAXGb1RzBIuJ`1%GN4DjIp8q5qBE_OJ2fqq7eQ1vj_e@-eVf$!PVPhH@7RktCKza z*pG+{4iyyp@uI{G#leUVwuKmX#4WlP3621OJiet0A!dkjQy6lK7c z`Ie8Mmsjn3i#OfGHY#}@r@rrkoilH6WPo9P_LW_O9X7nYT%qe4=;`scPSf+|@ZzPZzJfpcpdL_Z?~%NE zbIE4*D&jIVY{)-Q>OH~X#!R@IG*6a1&-n2_y#VY>N34v<;8Va=2Vv+(WD-g6zHve_ z!RvIr+M7`gsumDVbDNw8a=M1eY7sR?ZE>1z$Hmb(AJm!z1DCH{WsJ6*;;~Y@&10h9 z)~W2Mmh+yV#}6P(B|o&0L$UR>!*`f&^t}eY+YsqnwzOM-5~?1}*DI6{0cVj{^Pwp> z!>jTa%pV3np4~256dSXr(g3GXF0YvB%4_vj|3cslzX5E-Z;Q1t6VNz)B*YVVX6qnE z5Kq`sjCLM@W~tA~FbiLERyP3{U?bpTY3Be*IS?^)AhhlXY2h@ z>&N3Rpw?*6r(gMv7cghDFY6e^-gkYrb`>)1Z{Q|K#GW4$*Wgz}Qg^UrK#bm74GA|9 zi!Su%AfvfLzhe|K)x6hrb$~`KuR_WWr8h!UsYwh|{l0Gnf{*he!()PX#mK^K;ALgn z``N0mhB^NjJouB?y6M#2s=GA)N4efhv!}Vdww8`;af;JtW*z#k^`b9eTJN>mWt4V# zxeVe?S;05od9ug_;Sl1Mn5R-Egb>lti`qVG^g7y2xsb|Jt!Ega$odHMJj+M3y*=sM z)Z>2ZwkcypVXax(KhO#zTaMQ6HN~%G{C=ml2B};toARYjH0XR#4P-NceThN{hk&|N{J5Nn@^4v>9^SfX`3$8?=K-t73q#pc*!?jI&b10%2OxGeBOnzcY=D)GB#Y zS!*VpENzzR%#POdUgRomMDH2i@~mr79g6HebI7T}N} zfBx*-&Wujo@pI;UPY}%vb}dRZk_gZ9WgrTVnz-2^NiYy29aUi0<&Y7rx)GqTyZ|Pw zLw})y!zxLm?kQv(ka4HFpiiFZ`RKa*R^YM9fCYT}^t+X1biX2mi~srGXZ7yb_CV22{L@~#-29E1&i=)L)hRZgZ8ie z)KLcQ#RTi*&tn6f30*R%$|?sb%|5okpGOZ+#ri>H2pcZ9CKYtX97qH7yBUbe=mO{H z*UbrFs!NM5RZfz~qF@7$r%|#x-o)1Cn0!+Ec%6XUKUkUvyc4xD5L_B7{BpM#F3~vP z3-NRqs}aoE`eA_#^ZmOWyhV^)M9v+-dzI9ywiZk_I36`}q8m?b>R;!Crvvxr&*&@M z>V802N=#>wjJN=-X;O=&^A3~q>u_Q@VPd_&6u@<;RuP(~#k;Ya5JZVPL3I8X{Bzyj zxxqL6?U=KWptXkTrA z;BgNZ*~O@j5`A|4b4(iRc3Z6sH3~mY{GpGu?N9X4cy6Fsvurpv=Xze;uaTuA?Zu#` zzYGFz4Uj;CEdr~^(fv=%?QiD@@rsCUYm!fl_Q@sU6G1M{{d;)X^H`j%iqiLoUUHq-%+ask0E)B|$0<-L{6ZQb2pJbB?oP}25e z_lq;k)xv=t3}7v%K1FJ)v(lXcz3->B&;agVByFE)JFf9$Yl#vD^Oj=!YGi*###%g% z;ONSa>Q`iNxMBUAgoxSDD#4OFlUkNy_M5MS&YV;tP8oHQJuf64Ck%Cq?d;*A_+xq7p{ zl<{dK7<;n5F79OHBVoVj{PcJ%eboJ%0H$PMHM5amXteNwb;h2tvUTj@TO-Pp(=$eE{5M~WR_tNvyR=z!ntlQWk%f_+HgRsX zPX`K(oi9RRI4?MsMXSs*L}f%)F{CFc#^g^rW>-A26l&i4!um91EIXc8)jla3K|dQg zW=J^5^E>0oQ$!JNTphU9Ds|?gj4m4feTV<)y4RmIXTjW_FPBeD5Nhrj0*5b|VKm^< zJ9kqdZ{I|&ZD5ypiNVZnk1V;@T7got24$NDg=m6SSdiZyC+iBxiDnbxveoBmXHE=v zgCL%Q@S$>1f`(B0tr;vMu3uBuC!3~i_!vyPYj%8q-k z=3u#aorOZzPh+j7IvDI{+5jx8L&>OubDsaAk-IdNuKGc}wV6@%Uf(E2b{TQH;8sykUp-@AbwJ0SaEk5SkNOoY{XEWd{Y0tQ|zbwguPunmRV za=-=hlbcrRF67Eb8?8G7gy(9jA4}pl1kkq{7F|{z5hK6#X_zlp-}41**f+(2G*fA_ z&IE`pd(F=r()=l8%W^RUao4wML7K&NR5k!#0ycLRZl1^=U#ch8EvQ;ljAilDPW|Xz8ds|isKimPLpp+i;~f&yk$s|f3a$E@mW9>N2npg=D^l!N3C%z zw9h$T8b-79bLaP{mgFE$#DUbX+IP}=J3**^jv;L_gUwT%jInE6c7?8*JX z6+r8hN$hlgvxl1(0+x{k!&qhUZs5fK@XrmJn3sgJmb17d{_lC&@ z#_ysvoByNLS?!Aq#(rIGkYLmD&cYjF+-PQO^yH{H@1q%tDf|g5)gKxH@wMexZ<|PW z@T_1);M0Pwv1Dg~vopiBHSJaG?kXtv@%AwRMn?n!M&<6Rc1IVZ_Qrch*E&;24E&{ z&4vlQ1$;+Y;)6si0*Dh=t~L_Q`w3DV!xjC2z&zj<(KF6>d{*SQmXhV#>Ha94=%ni*2+E`G>Z zhGiIEDIq9->M2~^!d6JQT0BCRy-teM0rLrB>G-W|(T%mOhk>3wTva$TN z4hl6bR;K(zne+yi=7l-yWTrm1rF_L!lF=FF2A{O-*yn~aWFzO;P^_1Whh{?n(3&;j z;C>{ftsP-uJ(LB$jK08W*VD%Ak&;@_$bL&p!*wXAflxcc)K%R#tdn*j^eql-?~+Y@ zHVVdzh-?>5xtRqHMAx+%F}F$^qR~77*5+*Rn9?+k1TPkFB(GJoPA5g)-0hZxH48TS z0hV!?x`^Ll~31OoF(sHoYKtr zHk`$EVzw(EFhJhNFFK&C(&H3)9oJNtDZ=v!{sXkaGeUN>4z+Z1KHYy=H(EpVMaA zDitse$P(QkO9?STU2!Zx*3wLYg?8LrZ{QB3;iU%%Q0VqDDiEux=)agBV<|{}@-ko?QhpuVMmGYCBF~+j}r7Qg7LDvkamQLT(nM}8-k+m6Bn ztVIGKv@ptk0-ZOGE^VyAt;46$WhL*u4UbQ4*AJTRG821U`u#BJezeHVeLL!ni015_ z0=_~VK;!f1W^F6U3bI_fqqyb9J1$N%I$v?EXAka#WF3=)St}Fw;Msh^Q_&hU2eFb@UD7i0j+?ExG6` z{ioh-zaT$47S^h`O@ai`AwaI-jeSw$!}0B1J&zDXTwnL?v_0@Y()#k09e*pp-=yR1Z-eb2PYY_ZVW!ClT9pJ`V z-+aI@Ayu2^tz*unYR9`Q%FPtD+yCO&NV87WhACG7)KA&R9f>28eJ}duP@b!|mbl`I zNi#FnZ=jnkL*)x?sj79>M-?T>}dz$bu9!WfnG`VngS;Yxmu zh2CujZa|Kld+=5dx7(~@yM+O-ztVv4vxOJo;B8fhoSy~kUSdP*d*dqcDwsOB`faV` z)U`vJC>MzqY_h}N0Dkg_xB1K(I`Rf!zw6n^!Xs=dwlrDfP$MBVe{G{g;+*!+21bHyMghU`kUbTG-*1YeQ?M8{0`phjiPQszo__5I9Y zk6VN6cR%@`6+sInXahCPnYyuU8Tlodmn*KLQD`+NGaA*nccLZ5*>Bmu?Q(R_IE!he z*G)4e@n!J(bV3vv%d%*KM@gjUuEF!ZRi)p2(n>21F#R(7F$wgnAp0r?95#m9e2I#v z@E475EzxS*l8r?Ii25S8>hFQ#+<$l=H+Qo;q5VGU@pHqDIn$(s&2xX2KPkg>hU#SrJ`!``!aHS}8M~E2-GVkPn+$_0(`OvM>wv%&1UU$951uH^6&~3T6e@~U zXGbW;6-DBnshh?s_%T6^y;*X77Y_kbtzH(vfj(Z>_s>dV$;CAa}Z07kSzQN z)YvcgFfuwRNv93UTfaOBrO*;-BS9p?F4tz=xf5C?#No;5b7tPR*M33U=cT}*W<8SQ z@stEfU~5^p@o3CPuS~B;U250K2xZ<1V2I!GRev~F7a0@HLb)odH(lP%kV0IZ%ue>l z{&bHaF|)puif^;<1w(#u^H#QX9Wr9kBK-Fh*QkVTYlXo zh3a!-VB$2Fg$YgPuqCmdo~IQxfjDfK>s>9d3AIW9fDIe_{VK&^zv{2^&C2COz0t0p z>yIx%U^iaMUcs9j+x%3n@E;37O4#H_7jiMIBS2SUUwdVfRL;Os>zaM_l8j#ciD*w! zZ`R4w4?pGg0i-g09*y^>XHL%m%=V4q<)CZ6-ug59B$iSAdM^zF7G`k`@WxA3L@k-d zE7cp~Ka_BjpGwc#bp-wQJrPuwE!a#ea$TZ=JMi2sb|~v4eR}y$m#7eIK84ykKQ23P zy#}~-p!WYKplgox8eI3ZW3YEOC4y^^X3s58{@V-e-2m+KvJ=YJCzlv|2pVDw*u%Rk zHO(uz*gO6YfVd=$z!uhSSwBwI1NYwbzL@EsZ~y(lmk&*|6}k2Pm4`K@AhKxKFems; zR+aUiq5WT8_2%MQ!C^z}b8eT1!{?UVTMQf1h4u31dH`S3-UjJf`!4_+udpLF_^*;L z1V16XXBju{`Tun!{bvYMr-%Utx=H>;^3q@fYH&Tt<^--0mOfjOMEqaZ2Ayg)C5)(x zYA@kQm;Z6k8myd?-QUh*m#&I1reJNXQn)mV{~6DJy?S{SQ84;~eVpL(pd#F^FM%g2 ztS;*ptKj=z#_T_Lbe9gKy;;JQCVVc3?<<6#7HY_%i!R;c|Lf*bIk3y)|6+2SsemCm zTYg!Q^Z(~oNGuRv@I27t;{ST4T;fj?HLF(qUoNlT|2)E_S2gUWZ!wcjCC@K?OX|fn z5}U3}KM;(Lgtjobj}K<|mS7jT!!3$DpKbl&SalFKh*}Ye-qmr;!onIj zr-O-G7bG1kK&)nlTstZP<3BOp$$`h)00;r+?gGvMNk8-XE_BWB$KNg)si_h(&;c7`RF&2EWVR%q(|~sDox?#o-=$g=L<1*T>!85%?ID#h*~+>5oc09%cF{R>_B25v!YRUroxloz=gb88#4YmCaiC)E@XaV5A1*LMZ_cpm@4sS z4o@$=v4qBze;aPo&K%AtA!HDx7h>>p{Sk0J(w|?JBSN zLr?%vSnpnV9gv9UoeJf_hfM2i;$KBDDBG?y`|7E%MO29Jk@qrlDT{@9_t#IY_8P~cuV%HA=y{$8F5|v=} z`7U51mL`NJrh$=gF=BO_4{6x=e_T=Sg7)S9X6(7ZBJ;nlSR7X0>o!7B_K!Km&TgtS zq$Pa0Z9^t~e{2V&*n`Mr4q4RzQ{%-_@0S-}LvH^Pn*|ME?9N)s6|o-=#)Z7^bqZz+ zl5;7{!&v2eja%fQ9{>FR*n7*cD7)@`SaDPk6i^98Lb=5t6%-}M!~zT&2?Zns5ov}R z3#AQEK*9i&Zlp^5^08xq5f<8Jn9VkyYKrr-Y@Tm=NmDzuYK*k_S!4XbuNk& z23OUy9C-s}=@dUhb@s`lKWF83#^pM0n^?t=Jt0bre~tIH?tnl9c@4*PZfuOt6h!|2e;r~LT=ZVc|r=DR_k>fLs?m= zdT0i=RF{jXtxQiSO&h5XO(yxf*O1*qte2^VM&@*HKFmm6CRXK};V}C7r-c5RA^b## z!Aoth^16$8;0QICsv~oVbBC`tuuNCS%fMlDT$+xwLso)jew1e&;pje4MA)^j ztafY4H+SrQzn<(lNpc~9keQduJFrZb()|VJb8Yo!3oWuE0IHOSI_a$QwHBt79w`0% zxY#N3pO}IM%ZOc*rSLOyZSqSE{P?LChmR*YZfc=gwzesoSgScyA2wGMuBXh+Qat;| zC@>4(bzsF%ZXPVn#9I8mm)!5t|E1Z{YmQ8pd4~5Z$rc0@C)>K`9a-z?T?5`wEc~*Q z@!wzJQe_pJv1(j?IlSE|R5UT1Z1VzX{Xc(|{2%wbR=&St@)=B{__w#2QBPJ@!f-DrVK0{9Up%C zpxjh2K3QwngJRVvKlkhD6VfY%GpBQOzA;nYu33A9c-(2`bN;Q^Tt~x9GTvOE*jKDL z5*v0e*XDmEHX)mY+8wIcZ&|DSTrl*yZ}~?|?pt5VtXH}f^RHei34#2Sc4ut($Nl)@ zmf-~;sWrAyVA+}pg{)4XBd)TeZ$134#_bgZuZ1WmQ!+%!`lI%j&|m76&zYmkYk%#- z-~Lp)x@<(VwdgR#+UACAW)%+OZdho3JAEW=X_!(4FPr<%Uz5C`{;Ii0<^4{I!LT@L zx_ucq+&1deqZDiZf1NBko9S)K{`Z!FD{t<(=ThR|zRR!2I`AV4fpcYjEcu~dmlS}N z0k3W-MfQf*zuIlOGx(QxZpF45Qtk>qf=cJq=nXQX=#QKI-?weTf+J&clc5DeF-ph~ z=G-X3%H_kq(!tt7Anp!A9G26n6pQ$Fj}XuEuUS0a!v9Lwgq%R`E@M(8<=p>|(m9GJ z{n`@Nw=f9jTba5A%G)D-Pt~I~$&n>w2K?QE{P({hu^@YddYRlwO8sE6NBaX#or78Q z%>VIx^1<;(c(ilpxWwCsDbMeDdF?XRJFNp-4r~33QC6;2;|7Vj{zAizLN2PDF!$r$ zt;w1WUiHm)nYH^zQ3NF0{S7S|=9SAHuOzZBwXxjeng)_N-ZHRX6_w@N0jR9O1SqSA5teK6-H&ZJ{Fgfv zsw-OG)1ICt-~^#upSA;#t<;FntTw%(H#>K4WYor)*Y>2o@Q#o>8%m0vNs{@&Sp;1}32!&W2uIHz`jyit172%~DC-)4 z2S$wap6*k>JL|q3sGdl1Kzx~x@P`v;fc%$eX6t1RvoyoZ!HMK#HZe#ijz9+g{qUJj zq-+30=p7*-^k*w+RWjAel1p-j^`=rAuDacW*s>%;RLc!L$Qjd|70j|oL3Q6s>Nj-w z6Ctp_KUnhf@lC65H=@!7d$q<>bR2>KEa8vv4h?Zv8ry)aZ8I#=`|6Nsm7GThby`ol zTspV!L<4}u$F!}f`YU0vPqL&2{o~Q7+K7DE{6X-A$zB$}$nC9XV>N9Oo`s0pgMtNz;48iPOENliII^2tX!R z4K`pVDL`D3dP_VE{y8QojXW=GzxkOwn+@U`wJAeXb*>8r(*VSi2cQ;H!0BRlT7mZ= zSJkrU5oS~Kp3aGo!+y00nP*HoCtSYSs@1aoCc+`p*;TR`=6}R&I>&%OgYyl5H(%TF zT*uR}krWU|d+;9vRCkVp@E*Ap(ke?Sy&9{j7d5~a87s#@X1oB%pxB{S#?5}KU-&0Y z#AxXP5vzR&&e155U<$OXOB(?CeoNCj#Dihp2`W8(hMDue=FE2sCh`##Q~*ZPB+#B^ zQ84%E`0Zvly}Z>dbcm=og!?G>J@dq-QFX{|7XTH*;{(F5glojiS^yB}A=3O>%wqHQ z21zR{E1;og0I0qV9cPZ@fqV+ZL8)B+qXDs|)b6!x9!+7CA^-}nm-?%Tp6@hNu!@wP z_iO+fpskBD#nMWcjPS>=WxO^Zh^P$&^v6C)FZ9Wej~*HWMYD^6PL6p%rHBJJh~+W4 z?T%`T$HUccJ@rMG@OxD!=g-|hkKA^@}}2LIc_!w zzHMH;7fZc{{6S~sZ#>J#2<#c25<=oBm$rFIFU|zkRi-nm>OLB@DWn@O>^5@v#(FDi zx0cg_r44WwCYUu{ZT7!lOotAKXwb?|7U7~7dK169Q`A& z<>*8CVTgln>*0^YZ01MZYijQyQ?G&lMU{>`SgTGi!Bv;I3X< zC`c()wgHCf)wi3jGwr_~3_y`92xA<9iuX`L27r`q4TH$X;5ftt*p)PG zyW;@cwuZ{M=IGQA;-j^PLX^I*u4cEr>o1#^yK3Lq8y5)Ft;(>2ix(~g)5B+Qz7K;& z=ZHA~z|Dk^jecI%Ik$TzQXpCRNLB8#w4DJUx(lRYg=jVPm#F&%uVwBsuz&4wutYd7 zoENdr<-2u zueXwGN?Rs)DQ@hK1F^>)?bV(yd(mLBadtVgDuv;p$Z;Mbm z6n?Nl`wrAg%`9v`wFu~*O7T@64kC(4hE)yUIhopG5&c{gRCzUC1sYL>L%?aHvq=>z z$9{>4S!G$}``B}>@!CnTgkW9rb1Qr!-yae|wREskq;*|TIsFL%^YSH2n zT`GCnyvq0}0Q+45WkH0>MEm_pOa00@>uM7`Y6Mm`8GajU5Gdt?av9s)8!t4sZS;ma zy;&KfT`Y#_Pju{`c=IL@Q|;cLbQlUPbO&NnHr#fFii&2Tfv7~Qrn@4!hYt)X#ItR3 z9eT9y1$NS?`7lU>p5Lb$lf5y%D<koRZoYI^0-{(<*Idl<4_mEaq8v4LcpNeWQ04is`>&YA{50l$M42CQF zy$#pfEVa`)sTLd$^`PwSN~Pp99pEG^8z7(4rTaTJW0^H3bPDA*-mE3GQpTYp)>(XT zrSGG*H9Y|rit1P`!v})T7-=B3rd?s4xK!%PE64p@GTXKtg{6eQNzb(3 zQB};W)*k8{)0i#W=h_YM2KU#poG}R{duI>Uyz7Qbwfy$X^=JbqzoA9cuL*nYwNMR7 zt~#qtWFA-*PX!Suvs<;x@8eC4#}2qZFwY8Mdt(Z;C^unx5sSr$FSQT>-2&0`zPL z`AT3aW5D;>ecrYoBK1KB>E<)DP?%;ctM3INCm0={S`r5wZXV)%y9uqg+m9TjdyL z8D+LTGUZ-bG*|;S7URblxgyd~O0&Q=SRAuaj`e-oShzG!B%C9;3-hlxzP7a+nkAeF z+P46K;Pu7Z%+C>CI_n(0Z@J&m{PLl1+hUjId!*Y0F3%7_t#U5HFKel4Gt_-A-}*FP zz6#M|5a?FUAu75lKhF&S*~dx6W^f}`o@|3bXK#6fYU;dMOlAPM~NL`t6?`rtfpcVwc`Lk=rUo>V4gyaPZu!4w^Ue zw8g$U*q4F8l_e24^q%s1|NUa3+Yg~0`h-=(!<4?(o@?J0Di^8I4W{{k znBK;;r&S(StOw)nDk~7x9ej9hv~S zi>@#6be#Cmn=M5(Ay#7Ry>|xh?|ynoNw=<&$Erhmn=-J@9b%-#FO&;d=$>j*z|QeT z#T_M_e$_;x?)AF2fzvP!_d+gZn$X;WYf`$82cR!b@d4gx?Q7{Ax3hs?f@COOcyJgv&pO}C3m-{C zmEPa$@;`+;K{J8U;?n((i-GBR{M>UedK0}6IGO7~mI`%UjMB$m_EqVd6uZ*0NnUjv5+SoL3+jrDm+PN@`*mg-OBQx7bCl6Ty=2uOY<6UiY3hBo{2QDxJf z?(<)EIy*(Y3oBWmQPKhhmw19%-8lXxB*l8%YCdhZV%R<|UM$IPk$Xyf>zna^bTlD} z2{DOw@o&TN6kBp$#+i<&K`Rwoqg~r*=nUl66>5)|()*7t1?~f1uSXI1f)edB4~+qj zFVn8>V47<@2G6*3Z(HhYpON^^gk{@)1B41QTa-UF4=1j;j7`sA-eF zj)U5!4f4_p7PVYB0s{lw4uczI#MjplbD{QR%-LE@bcLZV1=@ZlZEAvu;9~U@?bj=bGGvnCGKupC^mlzkZQ#-XoyJ+x|j( z8eE(G-e&$eD%ILrVWCH|;^oX#_|MNna%PXxP_=%_Bj>3k2BFLk8_()K`M6QD>}Z9% z$oUM-x^e3^2T@Zg4T0bWH}1m816Kn%BCnZlJu(>22Y_UJj*%YFU(s4vAkOPZ#XW%) z`xZc7fG5L8wmac69$S4X&j{a>Mr`4LeJ<}|lA%6?Z~;fR zifBgFJgLN#Nl&+!Gs$Lx7m259jS3jjvaD4s00wO33odlc@#lc$-Ym)Dd4>El-ssEw z<1-rj3|;9ar9pN}A;$CNQvDafiTuqqU4H*~j({pMHw=W>VaRm2N_BXa`MeTn~ zpPUW@;b zjBA@8k0I(Td=e&T(`9j_l;8&cq9M965m9ez65(zyFLvWb*uPrmY2a_;i4D4TdkMZX z-lr>*(-VXns~i$SoI*E|-wi7!+WZ1K)*LQvUzqI)?g^OgaN+#cW!U3ve|7)HRo;FR zd29L9{rZ1!0dRgbujbOEoBSXLU#cXA>>75kbs&W#6em-CU6h z)!W&Jd4^P6n@@0wo6-R@gk(Zjky)!zWOV+!@F2DL*%xQ`wFhq4i7vy!`IAy{!{9xO zmF|`X_Z2z0B4xm9HamNCjSXeYbD0_Z{a1*lM%gjFpp2&P7W#-$+dSyGcV(^N)I{*& zM7XWD$pOpTZmBJ|O6{lM$f*jSop^j!z^|U)6EP#t{l_ zYit)0C3EMX=7K$V>faha_X)wB!KM)9h3!)L7$gnm?guZXV`3ZLtQ<9Txg&C2a!y6* z8_;DWdC- zu)~dSBg+8Gv20;f6Pg`uUVcECmGJ1D6n~%kYNH{}mE)u0&R62$75Hc0g!-!O~Lw9lI{><_Eh%qQB;@4_JVIV~3m>U=6 zt%~9{vDAb`(CBJP2ZB!u4MVWziIXQcL^++fR*3qFjF6zltW?-)lWx}MlWc`Xv))(~ z)Hq!FR5oQ$4L>=1RCZejE2?F;bwj-oo&)X5cqLegFZH2_7&9;l)E`660mF zJrDup=Im(@eBXY1w&&2%xH%}13UFFmBBsc2h_iBKwkc`{lQIL$)_#^Y4^2XkiHQIO z67v-(Xjl&=Px@k|X8*MItaqu7t?iJ?D5Z#OI8!BK)Sh<)md`+gseIH%U~Q=U!A9K< zh#hS3k|G&!?e<+U2v8m&@6!_N&s1L4v%vPGhJL`(A^Zv8|A>ws|1K|5?z6SI`LSXc)zU{l`Jz~w7O>hSW5CpQk z7RY!5E*ZW=34AFs4_n>mbvJqGL2OmkS+W^>Z3(IOfI=%|*HolDfo3{O3yC`N>?t@{ zK3WTj2i*~oF|My=*}{$t7z*K%nIynjy8<5I1`8gpV^W?_PHdRmZ*q76(90W;LU!D6 zGn><{_ob?{SP$a<-G)Lt#?4MsiNSh35^bMQfPYSEB^Q3_E}r|x;P zWwEA=Sa`4ZcwXA+MyO9Mfd07w5qYD9dJD@+fPPmqtK=cTiMKx2%1yD)A^L#$Aga=8 zXp*LyO)K|D#O5rL8WS*#PcEeMMOqlo-)Fl)JzvY4Br7Dmvc|B=;_@&QqtRj(nM;w& zhMk&~J=pkHzzJ`0r@}FK8)!apXgk9Mfu%d2R|WWdv3b_f zaB4A3yX^LmIXFqNsVeH_Jugt_8e!{fa|?GAf67Pv{w6&T!QRx{n>+12Yq9aPxa)_& z?JKeyRCiS9p!nxCDYLDO<8a^$XX0ywtlG7Us$L!|fV@h8{zIZdBh9h{@!PLL?W?mL z^k<#hWUbFr>a>uv0Cr*@RS|U2g(Eb=>F|i!w1eoAipA|+M32Q zKu|#g`Hai8gP$>ao6gH&t>PJ2W$#a-i@j2TV}Jq6aaN2Yyzq*cAe4b@NeEKAm)jv? zbI5AzgHrF6LE2-_WhLdjj#1UoG{pMu33eYw#Y|kM(o{Y^uS|%4YBB(=I2chR)!DLf z{{0{_eQR-GrFXq?-CkqZ1ML1$&x0J_UVC1*hfQ951xn9^_MBq z#14XlHzs`H&aj*Z?4q7DZLd$30tMODLqVIx9-{ok0haE|+cR*=*{=_a~Z{U2>Cxod+h24!>!fZ=W-M`AIbq_}KnVua{PTe7yF0Y_= zf0k&1ET&i*oFxwh{%Bz^x9-#7(gQ^a|Lz{`m5r9xJG$X$E_k_RL&li_Vbp_H$r7YQCr;eM+EPqKd zi{L+IDE=gd&c^ikC$V3$06*o1Y~*Tk_!!cpV-2j*{=9L}O8Pzov@>6QhF#o&LZM7G z^S>)gib25A_<|g!An$Ps#{iP!Lf6j8~gtT|Cu27)(h8XuWkGa1O^Kfji70k%}} z%Z{_%LuvRMlu)QYJTVDn6HOd!S`Ja_=Siw#B-=Rgt3c{wKhSX*OzW>ys0YXU$vX7{ z)MaC#TX-8K-r!G*mA)G?@GN;z%j_l#Jl?y*A%v5AS{`r3(#}si|C>DhzSKeM+-qyr zT-KyiW!la(762YxahkBU;fR^_pC+;VZ>%p6)Zs;OYu550u(I8H z@4lk9#>BeYu6&*k^56Eh?{^o|EH(?0>G5185p$>FHFfW9jP(&}H|i2*YKFgV)6m>q zapWAe?k@G7Z;};*0 z#lS?En+#jY#=HC*A*V4`a9LYGV;-hNk4cFAXZI@(CVg-B_p7lm>49@Djx+617{#z- zn7U}iipp&CgpR{hm_{rji06tV4Dsf5E_ zWF3y3v7$6l>ZwvA0z`srdiu^~!%|zE&MngqSl>i*hDQMGO&g=Vv75 zIhsW%d*oI%uf`B?bL=7%t+$`@$7Scwk+u>kM4XzTSC|S?%W^>EW#oFMA=xDVE=^;Y zVx&^&rzg9@{e<=FII2em5W}fhZ^#{2Tl<9pt+w9hsMSs9i@FUPo*)|!lF?3Qz)rSl zEsz>}z>wPen^#DL>1<_UoN+TU^E@H^cGc;69OUPo*w(0m)q%9*!g96dc(W~7c@-TF(MKvb*VP%Q*l5W-|B#3q{Nc)W-rLA@qE zkV2a5{Bq^Qhn^CkCcS=rhO*qwh}VcrNL48N7S68}tSd9p*Im+nS+DlmshU6@Ng&cBDxL^78}ujAGwT$u&sWzBY?bvF`O^bZ7e3I4f^CN%63C? z^h`~-y!?1irF?-4ePw-LHGfss)iC7P)VE5(9og#CVBHBlu|-IV?7@zx@Qejmr)m~a?sN;aGtY%DZewTAB0>ysWO+r~ywtXp;GG#Hf0hhj2V z5NLzXI9N-6xCIf`-zZU@o4}b^PN(n$aH?-{_v*G$+3s|LT9cddRQ(_4aNWeEjx07y zOUf;h+|Ga>1K>~Mdxf)S&oW>2%Ejs7AZAws#lue!!Pn-zX#>U`h!?U3(p4924UP#Y zD@j+b1*2a4TF1nc)R#pFrM!VWuCR2LjaNHPA*&5wLJ20wh4UA)G@6RTnw=NrHwNFa z4?@j*?Y!1*M$H?qW~nldof$GI7me-YAo>&+k7cwi3`dpBy*d4)sXt$8+1aV0>Rt%U zydM;nN1>dsxYc!`lS{8laJaN>G8EFcelJ5u+sk7v%&+IbiVij^7%r@sq(zw~e_?&O z_&x|u3-}K3AGe%=cNIo`WDFruBMXNv##$wX-;;gc)#DdhB@Y(aE%qBHPahJ@ANstb zD%eXpB0=U*RwV!49F*dccViJ0NRMEN6SVS8VyNw|gp}Q@RHSR(JF#6K%G%Z8+bmPN zkkS-#BT1V`21=7i%;_!GWz3HaFFh zjTCEb8H*g}n%ja>nv5bNhT;<}`l>Ae>=h2dmzNDJM`jSqrb;CX;<>foCmSSjST8B=8CA-boE;h!^=PGqwREaXxruNc{RbJJW-z39vmiUra&Fg}Ky(pHDr7k5(B`j`e}t+r~A>QJc-ZTSIV=W8q}& z2;f38BARfxh}6`c=XPCEz$4~Xj^b~w&f{=dB%0_Hd&(ZWPq$~vTJK6n{=LFJy-8II zm3W5j)6^L*=1DdU?a+5_&o>1#gZKtN9O`1bGx~Dc{sEo#T>J^2`Bybd8V}|kyR_=m zAPOejsaTcDg7K`YacfSKy&JqzKQ(n`{gL>G5IeW z3Ecn$;=y@2@yNYU;j`9zxxYQQGLd(oR$O$NUCQ1jMf}_5E7MH8N?*h!ntg+xxQsO8 zH>+jmQyizYsX!@#O0v4We=cVw{;M2_)PaZx2-v3@zdCT-vSANGyGQRHW^Bx+{c+s3!}+yg|zySFVI zd6U2cCI(GfbC6cA%pX`@!;IzU7j|0^omy_*E0$sKlmL zHR3ipv_eqq#50IN>cn48yIFN)EmI_FyA$8?gjRzlv!`pbP36u^@+-+1Ys$o6LyWer zcu#KNRB2ER@MiLk5j5VDc2-%h2IV$;?jFIM=GQ$ZxhD>=87$9m5PEg%F1d$awKfcN zc1*dlo-}Y%DVvc1=~=TrzadgNR!({*kKR=W0;&O5)5Mt}z?Ji=xx{;JesGNU)YES1*+Jwul7tM2 zlE^2;OY0pWJE=GntKlbf26Sb+_W0$$4XnlODcsX}Jm}B=L;Uc=Fbqa07<`OS0CMqkFdf&~aZ}>6) z|D4)}=gzrvMRy0uR{|@%?qh~%mxic5Rp7?AbXSkBy}-0DMb=;BU4-<@>Af3xf8HXk zeCM~Uh>fZyd@eodLo~R6&rE=hPI^9(me06FIO>NzoozU-dD7-UOlnX5oR0}lXm9r3hr0Lht&0fMj^NTdQLZ|2kN(jA{eM43mt z^je-!*Yx;&1+;2$#PzTAbRUY~41^eIS;r_Wx+~6^E8=3=g1zR2FK+2HCC+*-GgLfy z;2;}Vf3P91zEy4@6sNL!Ke=pDVs&f~Jj-GwW5M8xQ0jVJlvQxO-zrlGs!V|Q5NbRAEfh6LTMtd-2fhKj z(`iIu7!lRPDPHn^*S?(hns*lp_HeX&INR9spzBOSdT%dka@lyxdg;lMgpagPi{F6a z{njph0cmT?lb;X&+$;1$l>rqM(Zfo{-Q~wSA=MwC!WF3zovL$iyz0+u7Au=u^uKQZbzcN~Yyo1l=!hO-q?HN6Y zd3KcRgZmcYh?r&#-r33vY_u6Y(w7R&MqQbYER-l4Z?d9a?Lq#!7?LYEq|4oL{A0N3 z1!*pdVn}hhMYma_?-6(_H`x#iI2kVekR*`@*t-N7ch*N9-yjci7LpwcCuLHQ$A|p5 z;uF+!fDx$lyfy;(1Kjv-deYs}R?T6XPe1 z-I)0!wkk>NW{?*C+A$1Q-a&T2mMGG1eQGI>0G?5H_F#elge}qR+;gFqtn%{ngBNEL zFV0KUs+D?OH*qrdVz75VOka>{8RbB++t`p)xXPz}#r0lL{@r;6ehtINRm_Y*2D}e0 zu-SRNlqt;f2&`XmNd)u5fWb@cxCvqHH(;#`2b81k;Yi#NvMN<91G%!P*^|+QizN(G z{s*pCm-z5ry8H1p>aV`%cJ*Wvq=Wq6)*rKD`Z{iodMQmnuKio&keyeR-QD_eUl1%`ba|&V0#UP1P4GD6s3~^e+9yWTw#oEWW5*gJh)$hhPugfSlL$0)=O+=KM zrm^wJJqTg%i`L9aXYCdzjCzV#^j2NXa>s29R8%taa^dLga51O}lPx7=3}zc{`H*?yJU6E%)6RjKFlVlt38M&JIvZ zHE8Zpw=`>4GVwC5d$8ijeBaceDTvobHK=E?I=LTt10W>7{Y$K8T}7q}`e{vi5jQ+FM7Rq!se|%5+oEz1Hg|qJG*T6L)g~ z`uSkw z%fiXRnYR-h13tAMyD}k?{Az5%*!I)oorZvfZ5;dXaMLA)Ag^FU#Dlnb?qJ>CV*`_< zSV?J;gXcY<`V()IzTfrvf&?pL z+rAH3pNR6tsOLaebh8?VfmfWJI{)pVWkD5#Yb){7*Rton$&p#ucrmJhy6D(pLaaV- zCQ2{LBI5Id{)jAju6q*HqNcvZ9(EuZR5g%{O<`Vn=g<^Vp1Aq1pPsm_b7Xw$rN!d} ziyVbBw)W5gI9VTXtMfS;qHISvcvQPv0Y)Y%<_V2wA7RBYVr*8#LE9nL$H#tMd`V}u z7w2dDz+X5G_>CJ)5IjgQN8yCdWI&784|PGH=4^6pYgg`!?JS(>QjQ4E>>XdF9Oq{S z6`L>I?MCcjP349qPxtI`94=SK5V|JefY+`6*i&4HyIaeh6qJe@!fP2%I)DeZhi*p| zC%+?)r?-u%(df9Nf=FdS2Y}5^h(Uj<8f4{{NPgn)TzMNHT06ALv-MRntW4qwmuUA@ z+Q&#*%GPiHaqRwc{yYS#az3v$u%{5^ssbt?t!kCD`&?p#GwXO8lL|TfTK0lnQlk$$ z<=u)`-dRf@6H%vZdvSha=2T^E&Uhd(O5%-CT1FA$%eInrW@ewg90qk1>tinW#h58* z7VO7Qt+P0oL}(mu5*H}`b@UBlb0IeIcySSM&iCD8K~x4%qo zaChxOd}?cI+s1X2qt$$dVLc~ab1v*|QN$!NP?Fuc#2@|vR-$$(&T`67*w(+{PN^xc!E%PUd~Hd4th3U7jV0(H1QSp>%?)I zxZ>_Zzs3b`7yBLPJD4=XdwJA*6547!LG9ZoAmRK5BEwQARI(&Z`l>@!LnIxo+)DZ` zSW1!}VyEEd5N#?1Adhb+lXU6H(3!V8I2>+7o$!{@WH-5xCZUh?nG5GBbKJKg^gtzVT_7g~_jpAsMOKM71|_`fkE? zaxWl6lx9Mm)0)_^mzXnCC>U|~)y39{zM9CCZeG+6V!Uur(vfBXAUiom>e*vZz7Vb- z>~K)4oPdg^A|^|GhPM_2$7|e??kpn2Abg(1s11YMXna_Q_n!&x>8-|<>5_52RDmiV+%2H8+00&#!-h1db{>^5U>pJlK3>h8Rp(`snIF@{I%9R#eXynleA6W{Kq6OzzmRw&B`HZ)Iy;8?$cZQHy_u`&@@9tE)ySehRkw##bS2eJ>f`tF44^aP zi440_==rbq-3yM?TkE3tF~#1cyzZGx+eDyI{HlH~d!qywe%D&TnTp zvRpwi7}(<%J*1Cwlh1GkK4^1qcsfr0Rt7U(lNUz1ZW@Ru8;R^~{$tknDx%{Z(X1Co zej)Ta;-m62s&LcCGN|xtSP+J_253*c0kNB)B(t>`PUgGX1uJru@JsT3_zNMCFtoK| z)hxxx*Qrz+95l27d}cwn9KoYXt`i|y$vlGufA=BsPcBjA*)}i z>bFzy-xrbu<+n@ln;N+Qa8=EKd8};nZ{EOz3!cQ?vRa4y0od0xx{3rglk-K#em~C3 z{vr|pfq=wTvvG3GnR^n1V3LWTXxsMSaVy2#{Df@d#E|8YL#k61qP`3MlKcQ3?#1djgood36#%SDu8 z>9GIX%D-Em|D8$-Y5Cu&{5u`>n;`v9!TznD|KDBtw^#Q6?#e%!5I-!dP~Z|w77Zk~ z@E{BGcr|Hq;Msk;EsxjGbG%rye(O`xG%AW%>E}4JZ3+ z4QnG54ZBNx3|rGJ9dvG8`++|A&zYA+u!X0ot#8P!N3g9KZ*YoP7;HUgtkOkaM@|0E z@A_c<4u*SFolI@fU)v)2w6Z0lRpNKh=81k3T7QR9n$JYMT z8beGEj#7qGf)=iD&H2Sm*=$f@mmy-Y|?vH%cvLR^<3+}_(o#VzAmwl`D8 zXWx}+DaS-vFG>MnFrdcIY~aaud$^7`+UmXx=D1ZAHuVwFGoJieAzri}1QlKAIfKe? zjdm6~*r$Y%zsL9WFxZBl&v-s_gD3m-XUYx0zDC|?f8ag=@^=%#=R#3XqN)H0bL8GS z%%$I79eWJIdDAm;JZg*Vvd8GkxR#CU0k-`52a4pQGW2f2qZ}w|AHq`Vl-4AyY{f+J z0VMHwhL1T<9uf^YGqx^^Cy2a)F}Vp$I^R8S*PBB*%CoKJU(2==+;&RLhf=?e@Dn`sS&V=o2U9 z0*Yu7hFZiQCi%LRv5P#O1P6}}un7T%i)U+j{89{m8*S?uuB971OEFDZF0)TfXJl!e;fM`D&_yn#;yur|3~c?GKVShBpet@EHyOj8I=i( zE*|tdNyipI3MD88m}nTCKKo4Yl#}Wq;c~xetX+Sjdd=mYo2C zu23jM17-xkNUQnw+eJWOk>WWv9F3wWRF_8w(`CRY z!d;#u%YZI>=69JaWo|!@eB#P5?J|cIMyu_n# zdD0=AC|%2nh6x+;%Auzd~#H~(WT&UbNqNT3{Ja<4}p|`Jh7C24{S1Z#gZVCJ_!-JA#o3<`^HQjbhnBo)o zqK&K#Dh2zNS$I|BRA^xl-J(?ofK2$2i>6Kh6hSpGp!fqJiF7CcNCW};pI~(JJIDq= z!ZpA}`+OJ(ibVib5U~&)O$YEpcAz`xi!0c07C7)Or^A;}VVatFrbcrr)N4d-wcC~n zsFWnT$^P{f&A=a+IDlA14C|s)5%9+lY7p4A)%&eCTR`3UJhlk)EDT%cltSY?`4*S= zoL8QvnspU1jU#r9OHl2T9ofGCg%EP6QpdG_BvHRo?ozm%EEG4ziiIWnye9xYs|KjZ zp0~O^FK9_KR~OH$9n#oxEHZGB=;`TrBL&z=L~KUdlk8{5k_~uVV4+a1k zjr#3SGa@)utC^F$B=DmuQE!?AT{}KX$xKR_CNGee5Qdo28cSZQ%$CgCQ094JZQQnH zhpuTmSUVg3a-lF&ux-qTfXS>H8h{1JB2p6*Qf;iG&m!RXCD*fyB|W#f8x;#3lLwhz z4kN5TyY1JuhUWfS%jFb5roCQP-O`dTuutT%;ymmdHj6SXjI@dSOpDq74uO{-nf8)9&o1C4tVIhchk3t2lg2Q2mX18%c>&{VZD{t#Lou zIg{lPy4ujd6JRz_qxU)8Ly|&WVMBze7R1dTn=ex>S{omnzez}GbDZP*qPfM&%i+Qh zDR{9jxEi=^pDOCc(q;7YoLoJOSQ{MxaaAtLL^O36P)`)H20Y|85vVBGocA54RCstu zb*6G@zH-MP$M$gm)W`1S;$SM~F4IEwIGi_gSME8w=)+XoY~Ff^r(zB&1k;W*NKW0W zM+`0;wqGA50bOBHm`BPXeVyp3=K#*W-!$hly-AU@OFrnuD=LSqsi5i1T@Iw0U;3c^a7q5y zY*D;UaTpZnS>B1m4RRj3sXbLy0Nm4$Ifuzg9PvDxd!HR#6xK+Li!<;QHwmIx$f`?J z3w29lRvPjeWtP7d^XX2Z8!hjnBHy;K@$dbTQrkZiOZPs-@WrJrNOG1 zwgVTA;2^j)`>qdoH9k>|nw7&c$24#-r2?vUT7Mv(2w)+7#d{Of{)m3l@T2$k#(fv! zC61ONR>o@R?D;|tNIG^zapX-IzQn6 zwP^bE>o%`VO<;IAhmg+AY_$`>YY^f9!L`OIgwi{4fb{kZ2h-#@v)uP$KB(2OD^({v zUY#~B#muMT4P_sqZ=lrZt4lbXG9lW6p6#Uff@acP1ebDP1Jr7%nSVoFtOZ0tvqnl= zvUp+Jjr3mf1_uD@^WEMg4*KKg0>ut2bh6}plyWo6fkRZ;S<*IBBpMNsR6j@DF^{l= zgXSV;ogX$UwvSg@+FNy*Ux+>9WX4EKw$T%+ctQJ{a>0S>`aDzjmI!IW;U)>@cKta2 zc`=}?o8SqEq@^&yu*6Le=yI4Yd+^hGsiXax!^&tgZN_yz8_V%!c$mv>vCYg{D_rtu zavlK{OZS-v&s{b%QlR&0Hv`aX`%Mgv`&>}!XjgGKAh+MYeVUEbnh&q?wT#!Uc9{6C zBLN7dl{WwtirwMYh>Twez>S~KO`Y2Yn6Sb{JN&euQ4^WT@wGtZ zk|7YGl&44n<3%5E7|HFM%B)?JeLXgSQ<=B`tRQ7aNl@Sl)l~l3K;x~<&g|38eVLR0 z_7p5&^Dw`%6merRX!C?YsY~ON>@yq2aTB9oQo#AO{%tm z=}|ka+Md;%q^DTzTTr^R^-AV$1VCDY=CYC0Pnfv1?cG~RpZvE=1fJM3ZDDVfm4 z%uf5L`jq`e=bQDr?filRsQc<+R5gTuwu7&`mY!6ct80Q{kW^5$o(|&yZ7({7nN8gI zQ+9KZJ|0|#i$BT`5E8Qo({E{sZ=!j9V`EM&IY zq^9a=N2rchoJ&vGs5m-~wNpqD%sA05Wr~jOnk$R;Z3w5$g>yFqCk>jj&*ORosVw&QoBz<>+a22h4SQ(iiGdvwf~ryiko&78nHkq|k^@W;Mwp z8A#y`bzBsNymBXj%Q$-iK6U^g|Bi-0%VmhFOuaMv+aD{VYTsAI?=F28wH@Ap%6?uE zh@~VQ9F`ifMY*25ks;!i@7wCHFQrC2cUP?tFAL;i2 z4rcn*NwuhXL=p&}uFG+snL3VjhLQAhzit1|g+M=?mj_=e$kl}6kJu1hyqD8_S08Z7 zTNs(X&yswW14K48{HZOEU#+t>VH3A9t_{mr>jDFYE;DqdVF6m)#V zbMCn}v!Lc>%QJeRqz3C+MP;Zsy!^0a5LHl@`tnD%w0s)_8tq48=NABxR?P{hb`hN- z_b5BNvR#^5b4~RL>!wVszI+OV%B3@?+}p}ZK`VH_-kC^A#ryBa&rEkX!JT!jXAnyG zqJ!AP_eORrb2NasPbr$FMOBtVwPe4gma$uaAL=Mk6FlTxFqE zqHetLKSTyJP@QT-$T-DWcLwZM1?)!W11JpS3WVaRLc45lm*VlsIsz)A6)~s^5wYz5 zGANnf|74fE98#3Ed(3+(`0EhI>jW6{$tuMDe5hVhz1#Xa7L_BMV47&M0v84qq1N3H z(37N^v=v7MDb_$!XK#6DdY?|w=H{_8Uvp;5O;1?L)^X*wG;(pXBBOrdd!7QyD$2}Yj56)Zb zxw&9&yzjVQBCA-c=l(LHz~5)Tv?yv6G_a_Lf8T?weXDNj$R(I=^p?UlCFEzl0V8{1NxG(9qC+)?c-_upAAWsk*GEB1dF9hW(eVjyPtGl}tE^Jco*I zhee*7;E;p?pZ%fc5oFCoR-hW>P-?eesJ%6Wd(KJx{i?Hw#6_(00aQ7IWjYwOG~=~& z3aZV{q6)PX$2wL0P;}sE(`DYyf(2ey$IT}V8q)$G@5-y6FAcRVMr$ZL0d*QmYgOms zSJfz~oA~TlA#FSMb+8H1Ly94{8W@zDYL&0AEe{ZlrM~L)m7DYQrd@L95C=j!Foazk zREJ8^^xju)3EqyFy4M?VWpl{!M8$#EZo%j*M+OnA=Lu<_A&7LGh5J~Zxyf_y@P+6_ z*pgDxVPOBgl-V!&m-qCABG$3&{;X#UX=%{CqZ;a~{3ZV%d+!<7WcGv&E8>b`0Tr;& z6cq$%g7hYes33?S2uPEaB29V;Ax2RY5Ns6bf>NbOZ-Iy)N-xqOAU(9u0|_M0xpCb! z!N0rvzR!o}!}`fzLhf_!Idf*_%$d2a6(JDrIW=A2z8QUQrE_Na5${rJPCjV7PEd;s zlbi%y$}i_Y2X~g{VIeZ`et9{~Hb36mC?ktJSc!th0J%>2QF2P(<44N?5S>1$oOxh`@gbfz-gRH;LET`4tH{av--+tB3)#4o+TrEij$R%PqRK7j>h< zq3jeCE!qI;3`>Yh#qd>sQ2Q|l z2rA7(#S@Ow7jrDemy)EekAkXmMvAI)pvDG!rd_)Whexa_tmEh=8jU1rJB@;3!<26J zL!%z4v!PXTBlXeIJ7wn^MB#+_6SRizQ_yWIkm<71WKJ7%xD_$5s-tlh-;Z9Px1X>~ zhz!0e6FAA(SpvXO{m#UWxqJ7=jk%+kyW*OFZ8b8qb4}@rJ+K5dnL&xE9RZIvkis$Z z@p~P|t%+bmMUs}I$&&Pwc`cQY!{3;b`Rm3p6iLrgNUblLS2n9(KP|ux;i5_vkug~tXm|2tiRdcgLZWf$V zmMcMbI&(pv&BUvF<7q`{E+Ni83IbdJ)8#8W17IBw`3X1YKC#b_Z)^Pc2OwH{26|&! z>PZCsxo1*ecKjKTAfp)eK_Sk|jx2L?T+YUlPT?PJ}e;{&I7*+5#w5>P1A+#O_mkj~OK zHR=}Io45p_ibDrT34Zt$U8W zMlE*o)rJal!RSoE5kDuSs&(MBuT@&XG5vrs@=V{^Y~be2@UWUtVJt|Goe7h4G|TPz zu>e>!56vPck??f`$iZp38*$vheZGh@TEayhtcy$CxbOupy6hYU;H7dOm~#9n$F=_? z?w;m>G5Ju{2{f$IKw$m8I_i0eO>hvJ2YYply3P)MeuEEp&3BvW-<$q82Z9A~bIz?e zqqTfbD{?X}#nfWF@TRA2Y%Bmk3e+*z*K#TaD=!5rocl2>ZZM^BN6V(nmXtKXvOVF2(ZP;+2RvKr3uePAH zY!pY=Km4>Jjt%X=Lph3t!p6XK@xDvKM<_KD+~w+Q1{vq)peX7|Fu#6lQkwSLYfk|< zTBak5pka5CT*TQQuEdb%7#}vkvH`ABIEi32>!}~--zY)-&IEAsUNEr!vFLwon)A1i z;Jp4yWuO$wg@bOhqAxzre|(*W^FW>kqo}7-zV9ewG~{D&>0;OYiIGYy)UThhmG&d9 zyYx#+9W3`~ZCAljrBX)Ez~C)kRZvf;tMHLcpu#~V?h7NOq}DCf3jnG$-z>;_{hW@? z;-PuWvA{^mS;QQot%9?b9E$&)f%1zV1ov%>hVacFaZQe;RRPJ=0CAiR`B2Bn6iWCc z^$JnGr05&;m)^7sGh+cR?K7J+H9A(OPFZ4Dk@%_Gt=yEa!lM#1!tN(%RZjS^#Dwy3 zf5ZyD4)XF0O2|C35ikUx7I&Jp_h@t1t*PfQl(Icm;xZ?@Nutj zeyYb(9i+q5K)W2)wqPs8FbW)y-k%X~)}namI>{=;=z*ViexNGY8nuBgpe6(M3;ud= zK!^=~ZlJo8;*M)0%?^HWIBdwP?EAaXMF4JLq=q9E`iq4OxF7vk#C`6^J@m7g7%%|Q z(NOoIfQBz{(bc{~nDy5x!7y5UCj&Mz89{Xodq4vm(iw5S!qiuoRBEaaLK}}k9lNwT z878ps^>?bljGO7Vch8>@qM`bH-5OjDQ1I^F+*AGT3q9pKTF`D}!W{f6ux}IP=j*l_ z<)(-J*qW1bx@6;{9aJ-3uYJ^?G|+*Se|($8|8EYuKY6ei1A|-do$}xQ?tQ5g7*s#e zLgj(^^dHxK^S5t$5X7x^3OD|}fJEzY)o;^cmG~M2cVKs#;Lo) z>(}dVK0*HmR^{N6_McAZm&)-NC<2Dg_5HqI@5BZ_05}wEC_`}Ysf)d?j-t|hq-*pq zM*-R}`V8GPL|^FSWhC`d$*3@V_|LxXwMqZ;d5|)1n+dYR3(lBpth>Sog?jaWw@6MG zjO&WG{9l+zl*eN0|4)g4B9ja1GON`B3ymylJMU#QP^|)T7U)uS)|WlMmTs7KUzBob zFj%4ZNJNe7cIsBxnCoBzImj+h)-X_SQDppHPj))C)n>Go%w)BKAE{01`jO`Q$ z_Jw%=7)1*%^^-Qz)E=4sq}i6xE92xYa!E4W>Yo>UP^++LDjLT@Om}L=kt9=9_~97N z;eC#eCD#RVc)INqQMP|mgaRhU%g|C64YRx`HT5L$&89_(IQ5ejn2yw3Bo}_6RaFEo-VuX=G>)24wwJEm45&{*A?48$|RBFu4220;v2u)h47`<~0S~0h*`}?(SIUtEshj-7LbO z0*&p?mDCxnza10#04&gsN7jEk!n!Bb0>5kbpwN_}*yo=JS>X&Y8xPKk{jHa!UK6Al zaJ%AXdW5Oe<7bkj{B6uDpaf?QA6zH5b#F!ayE_UZP&oW*DwOK;zkkn$%RmVZJ>Btl zBdmK;%zm&UwU=F0|Gld703~?x>9>DB*X>|M%o3&7wTt|%B8oz=;OBqe^zY~T-?m)0 z@;^xXzis(TgY@6F{Pl+WZ(IISKL2^kU;5tvyyY+BgogjTlTHd=eG=(3^I>jXeneWh??Ngjv9?lWXH= zG0K*F&W006sDvNF$kz3-BiM6Ikh@A(yN*w7CWm`TZU5n{xn3klvE8F~aqkZBQhqgR zfuvJ}u-DndD?{5(Z(-A_;ZyAGU9NMLvJKdCiDww<3vusm0Zlm0I=cRT#)l|>PaSj~ zfYLb|GO2RDHE$Hs2$7q<+P?+Wlqk9qS4E*>x#`Fcy^%tBpAA_UX9EjD>aA86O&GiG zD{&i+UY0ki|8+u0Xb(tlyiDw%1U{$J;=Dcl(mdec!+X>lLKx7S zeN#J>Bq!K|y15#n&P)yodCJv8T|riA<%z#C&miOZJF?`BN(f2md1c@9UzwPAejx&` z{YJF&c@ANIKJVjVi2zdf zvKGOx)Cyv;RSfE_i8?J|ENTNP|P~< z5XQGcJ)!_+05e`pT!XvzjvFYU~B_kRxqfe_=}S z?*0TdL!{GbiPK&L`KhD+k{;J~7AbQQAUYvNmjF&D?x%G z9Ulcay2-O6zS0{dZY~*cPsnLW(P7c_rQhG*t@gzMEoEnJ(Y$~MC&F5Ar_*1?Sozp!9cso4y$=um${YD<%Fl7Zqtag-& zcaLKOEOxTX-M!;^KN;#1_*tR?p7uj2Axj z?NAzXW;206X!0UXhP0*`gg@}{;f@#r#NUMZ>;zeUzy)A{<+pRM_U^iLvjR|3KQRO( zIV|C6x>?6kLER*85mVRpojc<}3xzZrfNr;}@MWsVgiRH2qp+9k!W=lnjwr-9(t5yP z&7jh~sWnw!+Wd+c<*gX4)LD?6Jfrs7lESzsSkbF;PehsT20R0kyYEJw$dC=XHR6t$ z^i019la7`({Z`;7vZo#NjriUf1O+Hf4Gj&iBhR8e0F*Ug-;KmVJQhw}F1iJv{A>P^ zy653YP(x@53g&W5aP9B7dO)KKR>g>Lg#b!Puj{k#GMtZPc@q~P#cR`*YtxFv)76#s zZ5HGq1P-X4n)U+RCTj#B6_UsECcE;~_qiE?wgU(O-&cqX*d>fGseJ5}1u~!*^J9(k z@4p|B1y%A`&<>-@a{cyc!bkBEVKaD;dSOrL#cEsJINl3~Z-S7fp_WC62kow@v2l!> z-53t14)F{VK(`iVQgv9Ja?$lJ0%^Tb^LbAxE$(fq%r1e>j23on3T|4__58f3ym6UX z*6#0`70<_j90z33s3n&usO|3g6lqjhUP_iU6R6I(o76obCyvdX%s9y#X9Q?sj?=_0 z@R!8_p!nbIQ+5@%*>!z%gQ34;0r-zF*43Hd^RIn{s+D~+U|Md`i6~IFsA})$(*KA% z9>BZX#9oqiSO)O-5&bki1m<*dJ_Dy0vu(-p@cdhISw0&~ae-Hst~}0#th;F}<`{!K zQC3#=I3~eCA0Qh~qD~0NvAETroT4qt6ZL#IZioI9fc=KaOtX#^lb ziC=0BPh9c>y*RC{^+Dx;?oAnsTZnvnaY$WjBNHC^Yb2rA*RiTNVJ@ z&+Gh(yWkz(F<^Z2+lK(Dih#h_5@7pl8f=uH;0^_^a9I#^X$$sC zQu?OE^PFY98VfRdfahT8slMb1_VKD$i?d$9mo0=kyOYg&l!bU~-3=E89uB>e^TAZl zRdo%^-RN-}pL6+3VtP7#t_ZxVRZB^F;aKuKXk&A$F^2l1pcdV1v)VA>>J+cthluBb z7RCb$Kxs5{OQh+t6FwD}axl75d~fk$PCA>&g1Ow>OYB@U+4J25pepAfsrU5~OdrZv z+9SVy{pwV~q?5hGvx5p@$SECMap0q1B0pB)Za_-zW1>2|1rLkq&K) zT1KFD_`_t}4S3ou4&*99axeq2+I`T)`d%>OCl>xM(On%oZv!tpnLqJu@rLzd^76#_ zujdQx*sMHCs^$B;o0~h$t0DulzG_CzzUXWMwTF3&`76etZ2}7r((T+E^8<}$ zpM|`J3QE_y)--M|g9aKE4q|)d#~v}}D5#D1Ay+{A%~jCm6e4DaDXyNq#!%_j^gK%I zEkp@r6HaFyQps_(Umld$wzLA~4LkJ|?Nr{V5We@N;|92kfIK3_CJ!_%%tLkhi=Js5 z<*aMWqo7f}%sMTwEs+f92~Mu|ZIM3@u@k?;Hb*UH&v(>&xrFre=dhV91BM+**~NE( zmw*9Mkq3LTS)Mc?ACE(jiAC1(2gxj;J?wa$T`?f#ZVa4i!b5yJ069Bj9^zq=@LK)N zzGOf#fNlw@Oh4guY(T$I4Rjc00}OVS7W7&lvLGC*l4CIEHlV*npmb$+9+1(=$c{+X z9~an=4`{-gp>o-I(1#h9yXqb-h|de|$nzRFvhUNJ~lh zJGOi4u4vZJ5h8Zck~qBWi_y~M ztD~qD$2bDQvHo2gWVjUOXxZ`km2W=ml9vJH%GvwQ(%Ohyw?8Stqi|3wyIzzPY{{vXg!(;TEO*aKenYAbnQmsg&xxDIrhnxO)T&WTzTlIGi^uZ))JiOVBMBKS~50Yx}corPODI`|sWd-4i*v>Q=O#m?{pOlJZ| zm?>P^2INcn7iWqVm}<-mZHMEMTMmE4|Zf2rAv|Km@v#)c61$rfKQ`M2yM_oF? zFmlSU%bqkR&Q!C=+Df(_Z0k5{nh~)UOF6}&MWSZ>g%3^9Jv;ZwX?b=C3+*|LRViML z5Pfgo=%sS*U=}81gR<XX!GWVn(9BSza;MOX=*E6^K-{KN>#Z;SHisoy-olW3 zsWZjhB>U+7r?0Wg`EtJDEl=p$@5yc!uAan{$c2Z2S>% zhdql+;%2>0AX-ukuNFTzycDIMvSb9@Rzt*C9lMn`NOuC# zWTWfej4V8ZWO}6rxsvysB}~QwdJ#VPbZ<(O-rzw8Up}CY0X;RDDlx@g#1)z7Ea1~D zO1t}Ic?GVugKBO+-^C&4nWYz+YDu-y>H45Oobk@C=X41pcA0J$+Z; zAv~H<_LKaw1@l3y?#!}2%Pnd3fz!p@6%kb|V&zkFH-#R*>ZAe=bBYA^p)Jy34<))^ z!S2Lelfiu1^-ew4A3Mjd4s$xxq{<|88`1V~)5}-N=@IG6m*wYbMEJI%LX4CbSRQ4U zzSzH}GRUN@XPJhZ`y2!84p61G4fjCC!_{f!r6=gyQXuarn zA27V4Q6N`Vps^sS=RE@POYIFL52}-ntTuA2YRu%XRCWQ5lFnxN)n@rifJ81yHhT0u ztx+%kk_>3fvJqgdlwi4x6KFFWo zwXR$lI7Ju|M7VEP@@{vukVuXlab!JMp+pbF{={C(jhuiWB|*yk(t%>acl!bf6Qj)nx8eXDAS&Gqm@_Bol=`DQ=Av$y#8JQz&ZT0b#| zUvQA+{Tkp}zXx)9UO%#j#q(^t4DTEDgbJ7%Z53eD>(q<3H>rXE6!DRCNxi_o<_HYj z4Pu=oLqHq-%q)3l$@kCbwH#K&75G|3RKC1kBh*oUE~T#P8zTn#Ivp$M zbI7qxFBlHf8yca@P(C$B7f&Lzm9lF(OZe!C+jd{mstbt0E>3neuQlpb1fV^&c;!G) ze+#a&+y??$RVaM+i@7x=PD;fC_gS3S$vPlA65%+TycHK0$m$aKxDG^FdeJvSwn}H* zz-;b!UH}}`S^03#T*og^z68KT#ychCrjfh+ld{=N23PDV+zeiPn0nU?;&X#yvwnLm z)j$TPl$?d}HkLyRbWcZ^-vi=e@~Y|Gjv?oC_gbsj=KhkEIR+Mk8YRDNLyYLaZA7Rq zd}hZkjUYLUNT(rhlxncHWGyJ;?Ko^bSvI(PEeQ)e-(CM+4g}!{> z;c51CWWLZbJ@2-GyFT3x#Ai1+Cz9CHKU+91JZ4rJi9^)*oR$lQ zQC(*mzXjI&+OB%ah#Z~0`566Vommec$o1pxY-VqenPOntUGyuw;*McngMYpuy7`L!_`#%Ru*Ig@h;!t_w8=r87^nFKq!ELqa} zAk$;O-luKt@L`Ae7n*+e=uup&z8!zmxe9#2EvP%nk9RHv@Lh&Bc(B?5nlUU>x|@>5 z4k=ze^)Ip8T;P6}t+Ny7->$~rb=FcA>;*^QZDIL>f`OGYgwSzjmMi6xPtNQ-u2^kf zoZsGmU(nNp&|WDgHarcO%Wh0AN5Q6E#x^a7l+3>o&a0H2vd^)B7_vJDwA~q)#uAz# z+DrqlWBul*@?O%`&6PawsjOEk)+x6Ed`LysVS?8l`{J5y-r4Pp7=aJCLFtyLV4^>R zhb_duI{Tp$PTM?3G%P;mPz1nF{Cs9ej4bkJ{qTW_8S*DjK7)A0Z|E+QgC&JH<{tZb z4QJN+yuTh`)JwI8A~zGd+^0YONN@&@8Dacj59RqfFEBNR%k~lmMz(n_R9C_9}9SePMF6f+hf0FuCkvi(B6+b4D${F zorX(J;Bd@zH9cliVd<`CR}2BQ5g^aO30k%nN6 z5?G4+He(yk?BWlukdOnf&fL;B9w@CLaf3!f^4LRNj9!#QbVd z(DN((kW!F52?9;fY6-a51$v_e34xV}=`DySv171;3M;9+_C=`OPQ4OUPp)Hkz4@H^ zqY`(sC4d+}3xtQ1el`a9NJVec9Zq{!4CFAf6qmn?orRs?^QlgN6)$P~%;*)%E4^8q zz0W*^hArRqnI%EdWmK?W)g#{NWt7lI4jf{+|IQM#9|)ZIWxsA!->1nWw*_O`RbV@3 zBGl&CAWwOov(VWXy*GFKrHC!X*0Cr=|Ng3nx3z+HL@M#5emR|G;ujBoUR&MC|q@;VxrAC?; z%s{N+)3JA7vL3!Ws%bN1Xa0$$S2f#im8heI2qf=OdLpYh;Z9yE)zG>hsP8?5Z#NCh zw(Tj@dnm8t6Fn+%^+dGbJ>HMWyC_7;*o`)gd>+q}A z+lOIq1E>&yJE78kwz_A+6h)W{)msPexNLvR+8KGGLAu4c(Y(mJ$Mo$$4(p(R^y54O zcU_Fw-3BOc?|U_sl_uK48p_!F77Q*A7Q7fa5cq*d2Nei+sCJq0j5Qs!(Vz6nY#{!g zPSy_h`NkZL#L`)JW+x>IvA&u@B9R7V;X@^d%h~yP3xTQkn0YLYxzt^^(;uB3AlMAg zxqF8pmaC28!8x=zUtyp|r2g%yJQiS^rR*3=j0;GXjhecLC5%L8Efuh)D+NufSuK-U zgwyjC;&o52LQKf#4xXOJ`g36hVxg|v3UR~o<*s6P$H{{N{bWB79r2|>0aelpA(5^4 z(JnL7hH?{WQ7R*%i^K%8y+l&BB_NrZc(yznzgHzWcpcK|Lyu^pH7S?vhxCW3ke5V_;kmfq%gM}yt zCl#MGtINv*)03E+MtcAI)wYCjj-cAOih5<*nQDH+qJh=!7kQSIm5_sYz-B@wJaKP7 zw|QyVVkpD4Sov|=4fkSYHiu7#OtmZX=ag8vBW^3c6CjfhM?nZjN+4S6aaEs@V@V~+ z=3HwZln0A4_)3~8foE|6X&}GR=CjFxy;Q5khICkx(!oWYXwWxg$>Q;WkGJJmwaY5@ zFxu9=ichZ7o@dFUL+9P79+CgZJaRJ6VN^Cyo<_mmuVC?l)dreRdV)`COO$Ea+s-9zYR5`~KO2J%GhmUFcRS|RU8<6^7 zy+p%80EV#bzAV051T}b6@Hjh^kbwj6F9G&StHZn{^4JUN$(9QX3vcMk5Ksp^WbUl0 z$2nBn$PjRu^9(qai-Bj@R?MxX9RbvXk&OYj?59KI{6tR7mi|>vfwD(9Q?zF565{6mHqIg76rVX zGq06Mp{b|+R6ht&Myv|ebn|&N=eJW~ZD&7H*y$XSQWJD$dPo81hFp}XooNk1JdMt? z@*(bXb$RJGGkkH(u@P@g^na&h%;i(aHNnn4Bb6v$Ib>SlwSZi<-j|;00_Pu;{J1ip z_;5C&O8%g`G=42wi|N^X*wY=*DZd$!8Ie3*HVFvp5cYoVkNy4qw>qAi#`761UpxT* ziA>U^D+dkGc}027ey-r>6%FAtAp?Z1i~4!Csgo@ATinZqk9tE@oRL5=e z(ozfbqw7};&ksTf4D?5^u0)S78#uRI#kzWpxcbhqnfmIxpRiw{OYU{3<}ccQlq9(K z^s>b}buDMXye0CLG;NMv7e-u2YCG7WzH`FIr~(32B*u)r`yJIqf;9b$O`nG@+eK-@ z+Y7Fv;F%z;?ot@o2V|qzJw(6JOvGoDo8aeF{eHS*UXq0vT*>?jFOgSJQ3xfLL(eQe zB3{$Rq_229ba%ZdBs2WfXiwzH1W((Zwfh!irUGq8DU|DZUkmP%TC|6%Dl}STd3PHD zR2@rj3dmVlK7FDHki+}g9PZxF@6*F2#EytQw=h9q4r(4)1ST{9Y ztY>tQucX)NxRGGV=EDg3b6$ZD9T|d1amk2PuXhOA?z!1Sy=ab+k~x`v_hoy-UI6CQ zh7ZSwV`mAgW~NUn`=h8XN|zoh)B^(Y)o^vSM}MUfEx3@^Pw^vKoL2>3j3u1J5LQ%j z2{zmwz{2jav64i(Fh5M+8yH-A*fVYT86seWAmJ!XI%UC;T`)wLI$& zErHxpog}BxPVu&MKG0buU&cAC=VBq6L+7Z(=kxyHWb?Lh(=^~_({>y++#>AbS!c!f z(Y=8`-N!!O_FJR)=rtsr9uDkGr5N$DQE=`HYrPIazh}Sw_M7i*&z)vsW1M9lG;CyP zMi(~Dog>z{tU{F2TBZTK3yc_ucs2~epUksv8S1EOBW1BXBy*KlFvOK6sLpiM1p>I6 zVJ zyoM(79u?6$QJ$Es}_4ylOJx`x4R-3hY<5f2_GReLuSYKiK{hcTs_xHLGEx^)Z z_$I!D!bimL(K_6bJyry8cVB$yWb_WyPs12s()2$}EpL9xmlq;P_i4Pp>`vxYLrfYT zD$$rZ@X!&%Gr@iu9}45HEj6eQx2Jq-s=*t=!0{#3-O%5cLbvs<$6T+K1*eg1Jqurl zY4? zx<^u{f+(-5=@|9_5Nf&B4^)hTLN}3w1{iHYwaJu&GUG(RWRdJB>s<7w#EBtcDtWAX z4Z4j;*L125A0c`q-MdQu_w`( z8U!XAAL%3{{NC6*E%4Ked=*YH2;XtcxE|)t^vojUR^m;pYaBi8#vL zDN5;ne>LH6zizMv8)4Gr;~!D)ujfZG_J2eEQds{9_SeeypZff#KAit;lK&5zq~R8g zwCmJ~2Vc6zOXE{rZ2c)yumB!|9l6q>N_ra)Gqa7S@J0;+G*>oHI>h@^G{&G`=duBF z0`tL_U)Sk*p)w~z?74gjHtJ>g@gJNREnPM!P=FOh93P;l{Pfvs-CKeR)gZmO<#Vat zX`MT?IrKz6{Bv|mc16sNXA}Z0go^l5)bc+6m@18Nrp>kK(%x=%`?k;m9-mi-_NPik zfLhd}G&3(%J;nC$Bea{3YKmW?2x2X`Ky9&@l%dVK08Rh$dy z=*w;8=0e~#X?q5;_ES;KWoO=TGUAJ7GlftUkyW$-x?e&_i|7i=jJ+=PkvQ=NeJv09 zv!k-l^S@P6%?SV)&Ij3`z6@0G9e#y(Z*x_kSbre4a9Ti`5dFT~TzKXsHM5_d0noaZ z`X@7xGN9jXW-rPRg!jiBwY-3nu*8$c;JC&HqI`h1N1)9g)xpN3&9PzaAnSdd9+eJQ zOA=3tk-6;8QVn`X!F=0UCHzv&Q6KP@p-ZageuRkxs*(zksg0R`T3U;2wP`eRR`1?p zPPnPLbkI)8NS#1b=D(n^!|;z^4I6R#UKmbF)RC3eN-DoDfVB?ht02llUkt-X9o*fsM~j^F@xCq_(2cXC%G2p_e*r2$TMtb zu!XN8HG67ZzCBz)iDrhrZ3~B|5R`$m1h>YPfa2ePm)OGG-11|&#wbzW z!MF{&G$<4*DLq|~|5`>&{*IkHTaV=fWWa1dv(o9fi(+PX6r{nCBkzOm$#ak#LvzuX zRaq?A|F<^$flx(Dd?6-ee(|+Bd-f3&w(gbFLcH==tH&Sat;R=Tr5{x7r&j1#E04;0 z3G0)FCOrM$3sa5&L>_rqNL2Jiu64(=*!DYA8=>e15mQF=$4;!_LDw>mvZYRtLWukq)s6HF z+TlHQPv?`thKua-373_vq^JX3w@%RVd>_C7ltW_{1UGH~pIE3P8{fh_a3y|Cj=@)1 zTzZAV>;p51{AE*<%dtYY{`%3Mzy9feMkSDASMIVYn<_$IH&oFeO6tp;2(!ql2l?)9 zM^G+6=>}ROgBFsw{^=vZ>D&bXF4ou8W7eKYi_DwK5lS_D7n8|lcklu>5V!B5e8=Gl z!~Mwt-{0(~bNf-j6d=AUCeE?DkUWOf`1mg|MEG%nWYJRqy8svRn8Le&*uh!rEBny-pFAy`mc}^$iRv@<>B- zbMu8}VU~50Kpxw+^fu|y(#}gioVAf+5dG}j9*ZULcB9Nl5$zM_?YdG5GlI3Z@;s#ODCUH+h6-&y-1#K8>|nTHCKObYkl+wtpI<>v-P~- z3n3ZE@giIIx{+p)^YV+j*E;&nWldobn5?4)xu@GvC$-oh*9H<<6YVqMrCf7@hoo;g z96R&FoWDJ`VK1_zq@+K8IV&N4d)et9qeO)meh>!NlG)WUlx&ybbQ;5|<9z-~c z(&pz>!8@ffO5C(W5c)`dSB&mk;sd+$_~BEpCJjt2V%NlEd4|HsHOyOG?VZ!1nJ`f`~fmsyX`R&fcoe_#np^6IG zIF=}IPwr$GfaP2piDCgG`JTv|`qoGEXK_;nRH}fb4=$yb3rzzl$s*xkVn~ON2=|Xu+9)SxZUt9Ti?jp1h3MDJC7?ex4Odj`nlop;kBlx zxkDLn;^O@Dhg~c_dL^Fj8k2Cjfbo4lc}FgWUe0__Ow6*!w?3?2WZj$UfHy6?kqent zq$Hz+#c4Z25wN(k+dfR`Sa(0gIOAJIPfW^jkEkXxT(k0B-aY1UuRnNQGSN^E8ldOU@LZTjqZK;AO(8_vcg4=m z8R0WxTCm;^0w1^ZmPbwmv`~3t^1$J5Z8lV~jj3M;V=fT|8^ z7F4Q8TT(Jx4tdGMc20cl1u3?=4bR$%2b6uqN+=%O+53djQY%4+w)ygX%)nAhT{S+f zevyL>$R#fkxF9wV+US6Qzin%g>sa;2;x!Gbpp6Y9f-0?Ws6sQ_3ELFgMC|J`23vxM z7nak0dk1yO0$6~ZwEbNqmx*=_PhxLF!{yFwOU(oOH9{?RCOZF!sfSDh&Jafk*#Oy= znrJi{gqvJo4&3}{0ux^Kz~4@Ei6;RxlL?JjWnP%bD0)f{(+LfhfTP-wj{ zXonSJTm__BzIoF`meGSdiV(L;m9WQEl8ai$-Zz3iJeN}ac2rcC-490~0T~O>dVp{c*Xyd`(VB^@Dl{r}Jc4q_&LpOGJ>VPHRQ}1Vpx^yu<_cC@ z6Q?nHBOfflA2d9rA)DerYur%F{T^|!Dn_ygTuLvrqqvL&kNrq(`oE_6ZG=pag$e%F z!RL55!wkel&zR_W$6?je=RH;<^_%K*lmBJVp03D4DjKVvJ|qC^?$tNPZkXM8_nvDR{d{rlG%~ltyP<`r(iqlEP7{LI)zU@!<;l2se@^rVPd%b=46>Y6{OclZ-3w&IhBIwZ(iR9X7H>(nM}DNYl_@1o;T7&tz7KIbtAw&$gUwEwX> zU52=WnS2RrwnVY7p!&BaqlqjKJB`kiPIWvJ&@GKCV|V`ND^8JlQ}CmgG0h{*BUhQ@ zG25D_Mtbu24f566Q5EW_uaxfU7kY%0+%p=T73B=VE-LY+Yam7CC~XL&6}>{oiUN6>m6!@kllzG9>-n}YDV&@Mep&Kf097aTFSJxo zKc?*A4J-98qtGA4=pjFVeIC7UN0A^lH7%QXblmkd*}1;;)|O=Pf4tZVF*Z=By!d55 zgr6J6eS7*Y#_2uMuNm;Slua3REuHtk_vkmBpNk**^b6gl`bxnMTu$e;Z(Tz!&n`rh zHleV%b9_a(Mk9mvRkE$e5tQjIcN;9 z&E&bnisMr$w|cu)&U=hUp0V`FfL(q4_lWm@&X|qsvcZjarsq}H615-qJoKH?=#b?t z)@kvQm_P3^0Bn+r2|oG!!uo^3&uk_%ZK;bfg63|8 z1LpcZ%^ZObdh)ib6osV9{#YXMlb41b@m;F@z7*lu!W$^yyGceky0P=nuLdDY)oU3bM zfga@9aHyq&a3!6^1((M1yn`|i^y3Vvo{ZcNg`68|1)!(?hD1iakjo_ZJ9&bATIA~g zS_hLWDLW1LwtJ=zoTOsZ{$IicBM9juNgXc6YX_lG86+tx3flcmc7mx>>5qsm+Y_?v zI4*(|mn(+;qd(P*{`X|jtiapJDQ6UdqlZG#w)p^U7c$z5zFEX21)Sh*N6ve+fOsHa z^221+jqbnJ7`{yU z7nz1UAXnGwmtyKbJ5*2iu@O(G3U;GF%+vtf|ye6>!{fOWPVt!dw2Ic7Qjzl z!5;+e9OGa21925<_tnDqRT23&PT!pC6?@hMO|h{waqZN#j(K))2(@ap zy`*E~@j6rPUnJY;oD%MA!}YjhY9SDr`)C!A4zXG^y!P_rS~{c$b;{tKz4A@?7*!3^ z_YL|JNrHM3;G?Hx@n&jw6hi1D7Rl{Jdn6>Qq!26htdeF98^50C>AsAAoLVsk@lKKY4M|W+-R5MjF<96mKJtu6XKSESrcSIC6X} z-Mj(pfSeq<>mx{Sh%ii4c zRIU)_8g}(Y`)b*#@Md>cyIZfazU=+MlKyO=e(>SOg-WLRx2N zZa}W^T8`ltYfSN#zam(kz1PHm8ANOCX@|SOq)KgWZ1@1BIQF2y2>Q|GTjLi7ue z@``o{QN0I#B2|%kcIX)9SYWM|}Lu( zFnz*O=2SMWd$w>7^0`YUVi`M6SO}gk06tz>8A*YMM_WI*hT;1 z$cgcbfumDAsrGze>Tx0X*DykEuy%s)|9Hkv1DQC+QP$dz-%@+6dqP`UgXOMlEt0o2 zbT=SG20bBK0f|WG?dwD>q~$aJV}pWx$z|+~f9aSS2`>DbFUQ1z#oAxw{D!+$P;jCo zez%MKSnCeUHyK1x&q|4-|JViyonMUf zB6+_h^r5IBO#udjjZICd85kH?)Q;u({WO}djH37Jl<882Z^&Ult|i{v&In%Mav^%F zbo~WoYa_#URNga~gl)w~CwO`W49lW&|Bu~{JVsX&B`Xc}3qm)gTXRyLZ9paoFqq7a za`y}3xB)`c8V(geUy(^lNFax4d2Qhq8rVD^C_>`j0AAYiSVPq+K{U>VsvN|)2^>YZ zS9e=L%5#o;`T^U>YaPKTk;2Fa9Uj%KFEH7$+y-6E;x*dPj{mlYvwhJZE0&c3!$i@g z4^0YTFnIKy-wZR7;&zny=2jLj^;)Rh-(raWgWsjrKVu`CC@dwjI> zzTYG_9H5!mwJZ&?<;=#Q)j9(X@?$hpsrK&KcNJ8&4(=)$OmECzo*OYo%#1TYE4eV% zvZoa>TBM-LeEBhB7}o@*w^#mY?d=o5jZQQoXBEg2X9TjFk0=;_q*K){l{38)Nku*vdIY(6 zK`QM7q;_Z?+MW8Me5j)G4A{}}D76ApQ$pRU{<+3&;eTqS>H`IDO{k{6v#TpBg9x=E znZ%t`|F|p#_ylVAJlt{<>Ty^&)R=I#cQ;%$%a@d*n>lt=A;x;+s%b~;7!U?}aGR=A zsa%2i_$Z~+j3Kn#djIi>6JSS_(bVg;zf?2m460(ix3rq#(R>qxM+wtiihq!tBljQ4 z0PWkmwiVUKXu2i?*L8star>AeuCY=yWwbQxXo?{?G#`yYSO>rLfZT;7&7PKY^|}s8 zDx||uU2u0JGVUR*4Vi{1t0 z3Y0eQ3~PHSSNvAG_7r7so8V^;%=TJ|y$S5eNh;pf^5^|`gBJ2eyDYhKIiCG8!0fA$KmvZ+geAXc zc*&cbgU(95Z^*o7wAg^2X5S&%$5yaGFjcio7TTqlZtWE6ivb>x3uHN^3dMn&X&1x0 zp30TH<*Vg?=R=xBg*W?X(--BThgxXAPxK7UL^M>1~NdQW7R`4^$PVhQ$r$piOiJJ$knk{?tN~r+oyz#@ch zK*|DV0!0`~M<4W*BFMo`vup>OTen)2p7}FMeZk$((h_v_n2=snQWz-o*W<)l&6b#t z@+%uYZ+qG%Im@04t>!q8h%P4Yal#vSHuuPZr0TU>3?VUO@vb`J;JcO^f`5qfyU#a1 z2|OqFH(Hg;Tp8nU7oAQYohZrADt_9NeyukI^Da|-L8Yk8BK-SZV|EETLeeqw+%S1x zFM+=mTr$LGDqz|M;q`8HN7K2|9c7$5pcwZ#{}cR8_g=B6#X;vm=YRwO;+joqr=69P zz&)?j_CrzH@D0e%45JbL_aMVTOSfWRJaQ472tb@20uDqv3-bvBI`gkVH3Gs%?0Y^l zRFNh!l7u7dExaCf(YTZDMI-)&MrHO!=fgk+43@Xf zgvK}CPIJzUV^f#`q%XnfMK&Ak3K+9vVzzL=$ZkU2t~iz3hS^1M{AAMiy9%MNKob!t z`5NWu@af+qI5*OWT>Q2gGThP7T0|92fa4JIGxH~6X0hEtb=a)btW>3D2pozQjjd_i zIU?|%O;aiisrDlJce)oL84>=iYg{bx8R)W$yF3j+$Poi1AU?nIwJFe%sEwBR<14KV zPE-r|i!iy*j>e0tM;{`Od(J78j^c-Bf-{1-t+J(Zsb#Z*lo<$T(~R0tqFPLU`szOw z?|=U1IWLIhE)2QerlB>9MMvbmsOv#VPxf9lY=lAkb5= zd7=f*)=|N<{!eX!1TFMhVdRO`TWD;g{Z>}gK*V0e%^-gLy!ZhfYgL^Ex}uPq$?X4o zO{j$$lLNE~)7hpx4ytt#N@{5&;e+aJ9_ZD0Zy8!$Fy^PKKw@#f+1xcv#Y@(00-9@7k zSI6<_V&*?XIEF;VCBQ=-j3F)NwVgNxnXXor21E|&RMWQ`WFb8yxWko}1prE{leRy} zPgpP_>zFNl%)sgzU!-T1DHVZRw5%s@@2l&#F0D~jY zx=2%9_7sH2$6?QLkf8zLzDxBcQhF+%D<>~60TfHlCo0SGrd}^_s7c5I)xx6YbrII& zwI+7}R=5y4o;mP^@gXtS%~*J9Al4H!+pC&KxtpEg7K(x&lv22NPP70sjX0wDYM9wkj%rT zola(QLgpc3#5NN)G8UQVxyU?a+{W#HKTg9rea`3m`*i)Ut8=d1U_Z~Z)_U%BuX}jC zHM-FIOBl|Cezi_;SX;<2K16|eb^BasES@wc0u;B^o}UA1BjZvG$w>WT&tsw;>;Qs) zFfW=>$+t0zv{CV59!0RjM`BlEYs>#2%l>HedJz8hY0rm;M9RCiRD;SdyAjc7St~eB zDn|Ew>~I~NZjt4?Uc=}#JxCLHroDTubGwh}PE&e%x@Eht-E3c5$4cjR*U{KJ28N`X zfV6eHai+w7cy14${l#?zGhnPW^TB>4EzLA%k;21eOk^+=VH+nw)oy#g7$fl-LN(JS zEWAhpoN?0Zxy+0Yjm^(UGGCs+7}NzP0Q~^X!C3enD?8(7sfC5*FePY={OamM(MZA$Km_~P1bgW(DmI4kcH<%+exSX)1FI_<&fiQ>5#Qa zdrfyc-OqYUFSh%%MusvjYG;tadlAr(`XH_iTGhZ5%YH$PHjh{n^#BNNTqA|-knP0`I7Yl z$F1cwlRNRI5k33t4*tAbLApSS>*oF|;*XtXLeqe2&@@g67qS>QIn78e?E>ty`q}m& z8&PuEbL;(0{r!dfPA_kP&8O(OuP~W4*i>&;xkxW zan6PT)IQ>|l(tOuHW}Z=rGYMdq~c{&bDw_U(Mxk_v1icg^940xybSgqG2Md*LDDk% zw$J6`ap|-0Ub#*7WEsew3)?^_C&11YG1l@CJs#&0e6)Z`$$`p{B_k-jDyK!5XdT<} zhMKDR&#Vn>X3mB3;QbgCDvyA^xCn>Q&~D>dftOBl(w^=#?p(v&b_I^o>Uf|_ikeOV zFng~V9jn10La7E+sbWuo<#3FRWurhlV;DW0o^?m#pWmoOi8i_#ut<#1zTE;u9D0R@ zHO`{H@T^XdUf{MY@0;Hvffvzkuy(mmKI&mDM>puO&L=kX2KL?)?<=^u${T}on>Gn5yTN%LqbW*rot3|Q^MO6}7GP_hXC+Fqs4PEE-& z5x%%1(6lJu>h-oH@v~yU0=t1&-1W^d37vl4lZV8XnwA3mo$ofC79^%S+T?nc)1WAT zn6O$Skr-*)^D4GfwPYcPRoO@kbhk;J0qQN2ZPb`5nQU@? z5Z{=7?y}K4sFGjD6z0^^8l|FT`0^|<NNG*N$miyFti-_t< zB6!ym>v@*nTyu;GAHPzUn8Z9OZU@MM`t;$21KVLDiu;^?luU6C#DU~{Eh*Z?5h&tJ zPmW9tEClDr?=WpCyc+8Qq!~kld9}hC9ohIfcWreh7u=UaPK_QV{4%1X)?eO|7`d)p z?Xn~n(md8!QqeBbSBMABiyP`w32c4Y0dEkbg?YAy&m_aA6@Y>`H5K}!r}f=N>*aRB zjOz%p_M-3kx#GoJo2PI1bm(Zz0wl@0O+ngV*V>Tr+_`CQOX00mrA>uUfd|au`ll{ zl5e*A!|;1n3VE>(o;XveB^4A@&|Cql3pO6HQ>pX7n7KwF=}CEU8bS9VXZML0rJDv` z6u+~|DRT>48V1bu<`RNMr@ymABC&dLy(7OQNbgCrqd~GhVE+7N1-#ZO7*{f^x3};~ zgWClB#5T}FU$Dfq8+$f4vNA6|a~J)c{>p-%$m~^tl)FAI!kS{4I>#ky)A9$x(t)9Q z-x1KmveL&bFQ4PQmowI;C|^$`Z8iGgnkA#d#Q6AC1aG(4ZN0VJNxpwpN%epLK-G*6 zs9S-eLi|*Ek$F>APw1TUn8?KQ=*_$9ovvG*_mzFx)&U}X0(sGM!_5U<%XX2()8NLh zbf1b=)wH~_4sgq;@{|C|F}hCS$B%$UrF)LksEs1dvZH8}jD}av{rJPHD$8)ox5X~Y z(bOY|339qm*@dy5iDYMb_|6t;wbE-^J&IiqG+fe=T0Sc9=K=yZHHh|H_35)8_EmF5 zph9gqw&UHID>}_gR}P=9eR`0-1z9@xgctaXk_YhoJ&D7Mt)L|2c@C6TIcBaF|S z=+IHp%Mx|~+%bp_x915CSTCEO)(~wlPSjZp>r@i*cmFuFRSflplUa^bNs+edE6@57 z80+2C;f?dNWG(1hq8zAYZW#h5vI0Vwo@wneNn6_UOMebU* zoADVsYFL|}k!Tg@+%3jOSHc8HO3{<2UjHIQ>c-H)is&<|{CxzvF;4 zpWZ-zmVz~}=E7KM6a{Mn!lJ%mSsL=90E-@%VhXFTUiNc2D-$85>ECbL%M;$X&AuK3 z;v{0>T2Sh_Ud87UfaTmeJG*a~aDlIR1=#|k`$uiKJMEM4n#Tq|Q7z+g4?fxRljBk5 zLuH)0S#ye_?wDP7BxKt3DQ;`-D{_Sl$e`7Yn%lP6qQ+b?^n^|Ra{K_MFqLPg68{cy zFhp9@>bC>3&WEYu`X|%;AM_c^;Dk}xrDkxnZAzA8Eb)6#rNraF&rbB|xt1TGBJbTk zi6Zqclg`vcFSm1)Gb$jMyrup*7a{ZzRrJ+t!}{9bk!?Z9P3)Ny2he%~E#@@J-{+9uGstNke7y#LBWFYz>!|FdPp*u3<4d5OAWkOT(R*@o z$B)a+)&8;t@X3_DPgGvt4ltwnltPOAYyd&_2@JWjt`sIUdTZK9?Tf&mT|p(nA4U#I4&J+V2J@xHYm&B!fI37r;v`dRG1RS{tcaghNSiRTMg@V@$ z{giWi#bP_ymzSxtMEebBx3pwOEx*2q$)a^2#4&9dZR+>IMAP@A(-}Z8sU(hvQvVqsZsc@l| zOOd$Bn+?^(FuNFOAreO5T3K7kFO3uCa_{E(_ zQwJ;;<_2!tHC-f8-W^$G#(I|#eTUf8RQAc!I6ede)&j8B)IkdhL-Oz*%E2U^)pD9F z_uPA(Rhy6>%ATu@U4KiuG&)ANW$;8fj)^B20Ya%cdDoqEbWB|K7f9LgWRD6FsChR- zVTiTcn$mKImkV1G8(d{PGcT#5jbL$?((Q22^SH81;ctJLnx#=_{ezLXqS)Z=j(20m z#b{MCS2}XBr}H425h0YiPKVZTHXMFi@kz#6rx;FM^^A0{^0h>ZSHXRJ{mFfEvYi57 zH_t2^;fkX)^L3dvg=4ckpOm&7YdTkOCZMAS~na)C$yZ0@Q*4L$YlaSuqD8DTb zWvaOm#WgHa>@%0<=t7nG`n3z1rDyWz0{*f=IOr4X$P^JL{+6zSw1#l$=ZuYI+}1?F zQTjjn-IelxWc|u2$u8UTp$;`xoUWq2e2R}ql!D0TfwhmHh!XJP8K3(GZonv8Bwuf_ z?KOMB^58j1o~e)zGx|6?D$qwkR{wKv59OU8Qs??8u_9Y#8}Uhp&#X+Le+=j!83hn^ ze!ERB6@{iJ#iaW^#hI1iNZ0qW+P4mhptKNWp$g>{JU)r`(`nSS&*{G1ECPQ{A>g-* zHJpsbgw3_?T#t-NN=pjn%8x^r2BHu$*gTJ7q)V@3N-HuKq`|h3KyO6Rak>F3mNL0g=JRT8t&Htw3b631=OhOzx z?|n|-Pe*6*sUXr&CdcvEWfkQYRk)jd(U+gC1IbLw#vzVsKK0o4TJ-jX&p4$vDl^{z zyuS4sX{Uc;C2q`(Y4hVGFNF&hKXsw~;JuSWyTX$swkARqU$2A5pqYKev=LP%!8iX= z(u`w~?!`QVxWb@D?x9g6zWO&08d9!+!^y^$X0uDi?82-CWo)=Y2#uV>@-AM&Y*HTN zlb(0rEjF02^u~W)|C=vl{HLV2u*DNYme0rICaO=pA%~qHReBR-ByJzvxZjm=0@)zD zJ^n=YcCS*=tF#-yvG*8GdOfvfS-xgM_NokW)%^WP^l2kL=(#(oIh)DD~{MT zqA+ z&qDxDJ!lUL6Zp-l(jR?p-Vm@qc7lMCC0<*kT&_%xjpHcY9N}|6K2dO6UR=g-Rnv8A zxtp}fGCfnYd{%+QcsUn~=Bavzt)l#trI#$kDC!Y&TN9gsu2qb>#Skk2zi;+i#LE(Y zM0P;K_AAB@kTd8KI11VNBQcutqXn~{G{WU*1%Igf?3(8z%JqjTHr zxE(^Fw$#nI&|y4mFeC{^8ZxefU*BkLHy{{VLLV#0Sfjc&%#3XzM@sn08IfloVrp8yfwSf<#u=2lp<9fAlol_|y##}=*j)!|`m5dLr~J4(;rU2!3xVpx!V>-y?J{M5y&^~DKt=a0MFOT>b!1cn5e zw(k4XGUAoi#EdrotOS*;$)(WR@ipJz0*i(XpDuP6oN*4@Y$J+()L&H?;T{~;gAQP zl3Drl7i5>2G&+JHpQd0m(?z{yuqY{9NNKCXH7$Nl(&@($(>P1=i3Ur7_Hl)+ontMj zztq^p2GaG*$=HH^@Shf}!OW;?(0+;zD0c+UtS1JoH%7{i27oShuPY1pDiG2o$RtOD zqFo7VZskuY2)w zx1LzMysUc~Mb9X!266{B`LtEp#%fv$Etj9HupV#%cVE@i=TS4F7;-O04D~LZ2hne_ zQ4kF|+?jY=`ZafnMBbpw26xVp-pi+W@;&iwgpIlA_FRbcO)lIUIY}DG%-_7FD!NKh zdR&2<;+CJzpYNEyc<_%+Y2yo*bheju+Uvu*U8|&omQmEaMcXM+AI`J;i7ve3b`Dde zBCouxLqX1PRMsbAi*I{@ulptGAJr9Sk+YX~_yG|#$cZSGmg-f|POKr(lo<3-&z0NO zaJ+E~?rf+$)#&i(Tt^jN*?Ie@tf=)4i{A0W>LKsnrXHN=T}|*KUF%rMta7}bpI3%x z7wj|96*zvJ{Jxx$iOS$n;Lm&LxU7x1-C&!|9g5e^L1o%fbAqP6YP`oNsg9artO8NqIkp?JWe&F{+WEN(yqdoXs*hg zEN)<2;^fOpK9MV)P9u6Bx8N|8wlVd4y|JRR1a$?WisVGNgKy3HjxnvzQ2DFv<%dD# z&)vhRaN`do>^Qma!#&xF2!sBKfc_CN`kaS#lEO&c&h_Yk{;5!nAC=6yS$kMKXjor& z?!~eOY9C-i@pD{q$n8bXd+U5aCDu2xGFe`T#-g_%Fq(C}ODu0~8S5I!VjcB@^zCuG zKFhWHD|D>hV+QqMXD1LSytv5ta%iKo;pD``D_*B&Z*8T>bRmje(W0A*7U^}cCp`FZHPw$IhRtDYpeUY}O&e@h;)Lme0L(C-h61?Dcdc3flXme>g&K2_j{6vX+(j+tlP#HnxQ2Qmq=?1kg)s&B|vp zwVVy-K&2<-L#^?~`*EiQr&!WDxNuy{YLI(@QLU^f^Z78!xaKjo^_T+b@L4t&vvH7S zs!Nx5NuU4Cc%H^T%*MB7kwKhdP~(le>bJQ4w{VK20;GPD?;r)0u2dn)`z|;aK;f3L zwgXgzLFT7Z1!Y^R*ww$`^F4tkS-1Z+gyL^zBzHB1n-{(krjKjtAp5;~F9o5l4sku@ z%@^tJM6vpv*9#w6drUi%NqfVqd1#T6^=9?>X9v$_argauue=jMb=1rH^c6u_%viRY zHY@j0Orj@eRr4j*Q|+&_^s2lrlCvD~r;3ZAu9!ql*_JlclU~ir!`M|u+8hOglaHkw zj+wpV8f@gk%#+I9-99?wQ>I~7Aa3FMgtZjZw??u#%DWw++g}s74%vSCgGR;wLNk@6 zi@>EXS6z|gamw{6h#8POypu{g{{BN z@5YAjH=dtI&2Qv~*4#H7R6gL<86~x;htj_1>NyH0P0JF_Dr`+9mZyyiG`J>;7aLO3 zy*64`+oMskqVJv$k{z9T)xV8kvUzJ=N8$=~pLh=K78SU)^?R|f8t>?OES}(;(H(3IUWS_ zs;IeByEjo}n~?N@59?i=MEOtx*=I5xbiJmG#lNkUGCAsZyJ-#FL&B8jZl@~?C@B@W zT0nzlGf1UqMy5xedfH~%d3205=IE~YPqm11gR}|Wf6idr6=?>opdDqc7p@}hE7OYRP<5s8YcD=IUvfdhfsP_Y+V9~BnIowHw$cIg1Vhopc znnNrg{7{kis$Hepqx#PC7qqc11(bvI^N$*)yR)@bdwpPR{S)3Jzd zcJZUb;k}$9#{e)aYcp8vpURsY>Y?AE-gf`=yF}am%MH>@I?iQQ$@*BGQgIv{ z=&pk=qDo@c^4e6iWA2OR`T*S%-ET#4-+kvVLYRe?h^t7l{2=jAG_5>TT}9<)6wl5R zWU9A9dL3J!4x{xW!_fCKJVA|*l~nQ{exuu0EG?PRd^*gLKF#WN@0G5*FJ%O}1lt4< z0hlF_U%H^7bzplMWSiQx^a2NBQQ?h3UKDQnODm$c*B+6GGV7cjw@IdOB{5SP`Ve;3 zG$r>e<=zx?(OS<>j5j?}p3*T$NPIxjRRIIhU!Jf-sZyVS&Rp*D9#m`NcqytR3PcTA z#g8k}ulOho4Abz3wYy$n5^6DW_$)}jL2cJ>qlz56QLkfGxtPgazPOQ?NwieRX3j_2 z4XB;v-g|;XSxHdw_)+2YwNK@_nN#vE3(v#o2;%g2YV_8ojU+T87;GI2D5B>eEN};( z`|u$#-J7v+pWrGf4~LKF0-aWlY_s~wqFHd*?}T6I8_Tt~phZt3B64@8IMaRHpXtRf zH3!m~ZHDOkT|*+>larHl_35nUkOAmC)N>Mr;#+x96~rpWuij_NDOdBRhL5yTiYzzb zSf{<{PAo}zO82Lx;KR&^iALCj9Uz~pO9wS%*Hne?H@|LaxLZ-yv9u2L5<)A7B<|^( zko>I<0Ygn;-2O<(`^(+>0)SXc-@hS{taU(*M#>Eu^yxFBx|mUW8l)?@{ip|<8m{*w zpQm&2Y3gZi78pv#U%yxTtX+Im!2j9{&4<^Z(v|TcJy+t3M+DQ)Q^!iZ_;0;g?$97H z`x7tHny^i0{V*t$Gz~F@x!&%PI>q+$G0VAzZYl(`lZ;1d-ST}2r>l+Yz0p=?^wol4 zwgLre8dwLSI0_H(Qz%;hg(i1#>oY}u4!!V>3`y3P;5i5A{Z=Z6?v$WpHw)|c&}cr3 zf}qIR!n)-AoxsAyjpL9#lG;1KdO!zz`J)8WNXcrQ+;U!IvH@`E<@p?&z4tQkPH&I7 z64?JR4Ya=Reuz?JN3lov*(HYW5S; zI2crqb#LWEfWc@wyw>x3Jp3>%N*5w!bcQoJs$!d;$g$>%2g)n2mOF6l%~&wV#Zvs< z2;xKL1^oImCG`=dlPRe!h;k|e3y~O~{admYB)4M7_)y74I%EmSYs6$Ue+$>LlpT57 ziiBuE+F6)>mpGG|trAJ50Az}ru8yxg+I@)D+R&j?P-`7~kzJ@dw1*_Rd>Zxx`nPE8tj~Ag={U*-Ns~UaJPzIv5j*o0GFE{s=cRBNQ?ldEU*1m4 zShzan1_<# zBq8QA5{z~XZ_~0Ja2Pwdzo>@qUgf;`n~~rg&;gs)KIM$WFswfZNOz>^$Nxc5?x!>H zZZ08edvh!aVWqRqoHIrj(=1Tp@1@;jvDcZqlUOi_hDgevX9Y?Wk&I~qawhLR^XB`D z@h?Hv-!NW}%8K$4^*c@?i!PHJj?0I#WwX1Wj=j|6ihNbX2oaDW=gI}Hs`EY(AfERnZ ziga255e!;NQN^XS37!WXs}wVDufcggyLg1&Z{t5dYgZ~V!g{;2zw8oG>s4mP7*C3O z?(}Rc5RDv)5%ha-H&Aa|FbIP7cdOSVaxowH={de=PaDm`b`Sb^2Tq;SBgC_dnY?qf zfa$n6h3Hzv8}UvaA)?6X0R^L{VwtoYf_znFLkObV*>Z(0PWO;% z)MCWg0d+L&)Caa*#2|A;$qRA!5zTh@$YQ$nJtn?}^)jra_ zr)J^RiD&-PpenH~N>)%~rz6MdCo&n_Y@tn=aWW2OzbgDl< zB~NPm{WQ@&Q6@%toyzVM5RP zd77rbNi4MUc`dF)D~9^a<5$9fmhpMme{~I#Y8Q;#KGN=S1bm*2o$s*32#5TuB3^23 z$hSaGMN%OFd`gBRPt(#@dn@yymI*1-xa(R^hb~+R8Lc^anDveH1<+Z{Ztfe#c!l^a zJYg3-;bfMu{RS#mQtLf4z962;Mad}J+)R!xBDOVtAGKPAHSu?a}p zZ(93)9f5h0kdT-sLEb}+E9 zR8>_y$2o=^k|(oX-|WRC#ZdibW13 ztvAim%#}iKXX;(CId{nfsWyW80?eyZ&+sB(498+drJKaWX{r|9lDlM_4^NccK06*? zeV!_|LT_JDk4|A1>>{oCpkRFQ?E)!l4fgICbuaSkRk<6m8HC@%_CqrAvstz;x+(+HA<7s5W2q}ubYS&L5R!)eJGj6RtFk<&~?pyf6t z`Mb~2Rrb1ub-~pH`W2r1zCZQOEEHEJf6k4YsM#`n5;OcZVm?@?_|rkR6nog>BbM1L zU2kg)*<0$+_Z~qi94_4DFD=lrbOe>xs%}JxnUzPo*uE(%%V_8mW_#6tJ6VMu-!>NQ z>S7~)@@rfH48I%mhkr)vcXsJWMogRIjqVhgr_D z*ReIzwe1aLfDKYv%dA1wC4u(f`Nt|CIQsr^sO62^J1GwwpbSPG+hfVM0pjj220&p; zWy+Izawl&Yr!1{8jQK39G}c$f0pkn5v$t$u&qn z9OCA4l^%o5bA6Cb>-LxvXnB~q3F0$7qnN;nHrJz#Hr%ZO`{#EG2_aX-*NcNDGcAxh zQS&&v-e%97vZ8u|Wt`xpTCAt!?lh$_7`EeCIp>UiO4oYAZ(8c^MdIx;kCf(7NBNF4 z3)Ofu&x?ELPd{mw>2xSs75B7y{3GHDP_H+1 z)?f*jJ%q)*GsVTd=XGT=FNZjtVOyVf4&1gcI4$0&;JTzRFRAOYeJ)Jcz31F4$?)69 zdQ5nb5<5x1CdT-{!~OVN={8|{yJN#Pi^;o}c@~LlmGlAX?!? zFJOZY6Um1ShBkDiaoGfh*lv$c4lGqUZHtE;GWoHSwJOAf-bpg-=uhb!f*hJU_2K$n znokw5Xw1St-tegv32ao1UT;HO;9{?78%X$ZlxyYQ!IQR2EQU57&zZSxq?fZmT76WO z*pKBm#<(@VJlHwJCXhlbYD3Oh`mwBS!rA$l_up6m8%ar`BOGcUap$HPS&vIh-y!cc zEY)Ke4)uGmG?5f7p6q2@fgxcGVO%XEQK_(^SmO5kC~oXtS|0&6%MJC?w@N`Zr0QL= zjMbi}>j#1?+YCFjP#a+iHBfRG1$z#YQmS9$WK>YVfGG%^>6veGO5sk!*}`$`T#tb? zgN+hW*LcP_KjT0vq#ub-M}v=b_hQFI5g&f4xC=-gX~6Kzlw&6^s=-h4^8>c^ksgw( zFVo#cKcDDzeo?i-h9an{YcP|)k~Q+^Up zF24Ga`-|3rq8cZd;Km#BP)CLm+ixGSeRo+)svFT~ZYMdiU^W!RJ6la5`ag2s zTrW44fyH$AV&>&%;*Yx>y2R{w%mq6p#@&WOs+y@uOD7N{I=!1p`fhhbG-{tV&#?nYT8t@+HUo-v&F$n{QrR%NrpmhCween zam0*5SV8n%HM_8O744p_VrbwZ>m)5|Ocwg{`L{Nj4>vKSB30vV^{b|a&p0o+IJ~0y z=uL5Hv8A)~1w=#DHB}?h`!fpCZ`;k-Hm6IA4pDS_j8n9{;t_c0;3Mh?nZ&mAlm_W8 z{z;GK6RgB)*wEi+I^l`#8vSPzS>#>RYZ4IO# zKN@R$W}^qKXFW`7a27@DH{qCI&s&9;#F=?_z8a_KtsY;en0(cl*mZ6i*+aP%NYeMR{a>T&iyHEBs>mWPrHGweO87aB7^k)C6 zt6!iNqe9U~PVCmJ&L~KCoFLn^y_6)8MsHk-6vpWsLSF3i#^~k?66W{m&2~aFc(KF1 zRUUIlG9-KMl_PrDczt5CKs%iMFnK_gnD+dMDEk7Q5>t&go1;Rd?+3gES~ji@;w>8~ zORW#b#R%P+MEli_7kMpHOOP!0D2XP;=J}f1A~`_TKRZ)d*K1PK3puNBy3U5u8bcAo zZ!2lhxUQ&T_)-qWN>BVv?WgxlOI+eR?fK8lTIvTb2god$QIz;QRm93P7oXSa6L)z( z2CBqXD|NC}BXMFc^tP%d^dhS!5JNdJ8g7x!+oSIQQ^ zXMpaUl#POH)*_gSL`R=kJJfud*CeJ zdGnRnH=PRHDT0T9t0J*JQc`CPQpP@o1_G1zKK6`pX6b6#C#&8KQ(U@d+YL^RqR(`1 zb8|qhQ_kBM#~JVDM~HfzQQUK0%>sThrRr0Yi1K7snKBL?hT}%vmH7NjD$C0EHn)aSjLs?@RK&ist^U#^Og}@q5_$>jyatXi1$wqaztG$N0WH>YkZ+ z46RfOo~%XNbA>z;pCP2VTf<0{?=Pt6&p-ViPUX%uB^CDwhpQLWA|Y*0B3Yx{1Tsc` zzL~CW6?HC`!V0_G#^~SHA>Fkb<^zayEUSJu9l~CN->Be`4%6xdy!hsZQ&y z^IVQC)OYY4TLVqsTVJ39kK+rtC;SW$UQ?q=FJ7p9f8R?VLWjCaM52ePL1 z7Ux!y5d1^bE-k~qy1UBG??Flk+aEyjrvX+Y|Inaxr^aB%xk8;?uT*Q!%U8@IWdvMb zkosMX5^z)sr;yS^=q_HvwL{8AG(BZmXLu-Ea2FBJDQKmB>;3W?`~_jcK2!}!1MC5?-SQ*(PxF4BhyUa56>rB_?a$Xjdeooo`;hXa zUqT%y8i_>^Ku#%1o5-ybif`BOnVvQKku?8tB>r!A8p6GcwOBs5c$kv;rk5lflUzpA zwI)0lYn@!iX5prjHH6~f-IslX;`{|d3#pGXz+_%OTw#?2x`LnD@2;#bmw?0ojYpFcToAt|1m2+ z{}sj(deQx*6+&?efc`Uc(Y*>d2MO!G5g6ZK4c5`xz0T2wkYm!Key{= zoIil*F!=X3?c|7vtGU1QRAskL*+vMCZkgKkW!acI)_FxO)g3IK%{}*{-0h@%47PD= z;`4;aX-p{BP1K+wia`*+|2$wx)sO459U)!U_ukfU`w@zQ(6884HayZABUSFe5S zFM^&34%ROVGe$|nc2OGYP8-nFy4^cN-zwihMiullh2`5(2XhO7RR^{|_ZL@{NkG_M@7Sc@wMS*id$bGsUoTn6!fH{?nw=O#IxO>VbfMd5Dh_?0!s|4M zEQqboCev`ZizErWy(qHJ=<5S`9}?F8pY7QP% zF!E_EU^;`iVu6%!_>^?a2Nzrf^{buAn!jz3#!66Sp}^4#{k0rK@>)%y1Eo`aZQ6Q0 zTd&*0TVBlei*k$&$NacD9R)3rrXhb)G)rGaF3(4#1Q@+~>8Mk^lcg&*M)mOEN z0PG~@fki?lddI~`*ff8(ts6Pc zP}y0?M5|?+ls8uG0<-q@rS(zKo$1N#=0#m&OpBP=ci32o`I3ag7xp8&TZ?=zL1umai+wK1wCUL)LRw`?x*1n=f zPQIzAJ^d0cFEX4I`67_b{I844P<4U0cdb;M19NUpEn@UBUXla(mvyMnH`K0dD+k9r zf)mWWYis!Kdl6o^R2VB<7k42|nd_(P-js(ykMc4AJCIUFfX%7~KYqhXb~?7idM?WVmHf{X=QRH`w3FqP1=yAoD7M|jX@Z9a(YRi<&P4L|M*>~G_ zkOUMV$u8)J4Gjw4$8KlEm3^QbPu_&QieU!_f;~}J)@=m8OA!XZmH|4?OY_tDaHb>G zXPQ#j)3lHU0(GF9NgmKqG$7E~+@UgH*APN~2SL>MFgFbjMmst=wH7-p-U3QZ?M5kW zkQ!nmjEPx3ml!v{yw`=BkFmTsZYw}>c69E}=dYK^{o_~Z4fH2yGW61&V zn;$D2JQHMxJ}Lmbop{pebE#tJ^7Fzm9|+jo6ozx6j7* z9YQ^lWPoXAII@#5`(uxKu1<7$eAxGe`q!#aSAo@Sz~}pv0svDY)_LI8EVe{t*O5U1 zWD*~4HqX~&xa`Z@n$Qyna)+584V9%ybGbH#FsU6EwOp3CFTbIY8YQ zk{vj3ARcBIX+%O)fRLHiQ{w^_4wu$JvlIMQz`_w6Qx{Q$EdJ9nrSVRq>YxX~Kh5MC zQDnWu6ISHrH82h{W)sih7_(h$!py)rUBZ*c_Whr?sxT8QU7?+&doV}r8awJyS0^sdU1wRBT`)hl~7EM8%bmVi~sVNKh4qKo+OzSw2n!tz@Mt6vaf5f zYTeG?nr`9j%Q>4c4Cm!R^CQ3Pz*2){v}h)aQzK4vE1R;5c&?pY0B4L~c<$AsAa~^m zp@52wiVOdJ4gKx@zCH|!a{Rc-?kU6)P-9eQ`9&D=TO%^3)$O87(llB<^YMw%>2s+? z1AkE>{`=$pV{9-J?69OJ?5;;rV6M@e*W2ixsMHz_?(jn>XzcyX;RL(>Uu9?@oC^SR z>;NkiWj;1t$!;lPGP@FBK^>A=>fl~?D7ry_%|La3pATXbzPrs0n+Lx18Mm1)WC}@jN#h&(W zFQ#9gSOf-g{z_1%@GpF&qL#b1%kAU^d z|NRbOv+V`bY+;I!)#DD^+p9_oCsEo)YXQfDEJ&fhQJZI4+^bF(Z0P^%VZZO&U>M=4 zgI}~?qX6<5ddxQ79}d#}Gb0K8d^ihP;o*h>&kMVxf905Z*w_S|!{8E8I_VgjJu6|Y zQ4PIuB0ST;dURRa(r9^=dM+_7&8bKISB})o{1~vzR30-ok=L9tySEi-7qW%fam_H7 zb;Q>WoME03*BUtaYeXA!OoL@-3=wQPfn_afW)qLWrHd4a9DcH2Se6D(xlDl z{Xdi`|BIFXKIkY)V5wfc)Ir63^JrHldRu0oAY#jMi@UTp8`Of|u}54@M>8BSJwQ9b|k8oy8SzkX0uim~#_(|~AW zh$LnY4CWdbdVH9ocGp(*0AXo;gudk|W}hg9`_EC$?~nO!A3|)iYVe;`C{H1J@H3XonGM+f;ra2}fLbVYt;nfe?##rIa2buHoyW`c*mh$q1+*d{^R z+Ah%c%!-`_NTDr5(xO3$+TonHpy2bR-lx+92S=>jGAX8}~~GhK443mvFh zG5YU6|F5^D^r^3)ts_L~_4+ept}JgY6f@bxLi)?c#syNH&-NKL)E zjndsq76Bz7jsq{%6862uKIzv{-B+{?!JjjVzrr0OHiW9a4Y@Zh4bLTa6It{++z^IM zKNu_S&xUP$kObd2MrmBCZ zy#8ZH`!81kjAW$XlyxNFPL_!Y2J_R_(>Dx2NFXsE>5q8mmf<93QTK04{J(xV9Tk7M zlRn7H0VYj5Z){2Gi*9LnrnzpX3@qj5YRJ4+Q2vEA z32Z$z2uhyRL63>+?}<8HDi~Q}s(O!4V21Fi9XIjPNvQF*BKuFrod0`JZcRzKi}HRn%Kg{r_A5dW227yGEA@s(`wxP1&I&D^h<#=LvE&j5M#oYF$i&hOam=H4(QGiTGfEgFk8r)K2J9lHlE{Mifr^JDoL3v*h_UNx4XA@(=!k;NlzF{)DlQU`5?ucY; z*8JnA=~VCBu|5sJv?h(K+D$$fMC{le%CY6F?Vq zFIk_ll;CH;rhsykF6aJL!u+;$($I!V_>SuY5v30~8!0NqdwYIVK0=dZt?auSE1~Db zF~?3dX}?dyS#-XcFd;JxvR#2nDoDJP&(;Z%2Y#=2#*FU2T!xH$zf% z_2^*0Jk4OZgXeF~&}6kjvupL0W*@oSNNUmyMA%e!4N9~w*9w1SzyegjupHffIb0ag zZ2tD>C&343PY+q4Tn(4>X?CprGkvM=59DAD8#a=zu>knwtnXiYLgHgd2*gYhw!1~h z?JuNckw^cIKlw%|^0#ZJPI&xb7%RJRgm_ON3#pz|f(!{q%Ms$hlUEAcP9;A&c=2)| z=l-tWuIvh+B>nw})FsD<7JphqyUmUE;j*3V42^7!@Pxs^xq-;Yhocc=5f{cHBexxr zva{VE_&c+9Y2+9OZ09^YQ{>TD8!Jz7co*{P>LunQZ+aIzC|HYsbLq;s<0nyF3k2^X zD5w1W!j%fY0Es64CE-j`k4L0S*UGAo+vXVfN}%;x53w*4ef`zs{b=ph{frTn`BcZF zDqNQ(iU0nKW#0i>(2mP`$D__c#PZCPh~0;NQarzWA=x_D(3a4WUp4EhlM&w$Z(WRB z1b(&sQMNiiyyXz(G<#wDJ=b+EwKm(A<&~MqXNHbPca&_#H2SZtRESTow1h)2i#)(d zeN0jK+r6X^KP6|H^{y_s*TJoyvbif&0PO|eD!E9}wA$)ylX%>F=NfRC&(9?VHki#gerw`GaR5hU}R zg9>+^_4%XfXvdb0H{XX$JycR~O*u`IoHP9Ec>Fagcdtl3#=m~YsYUV5qYT4!$kH7f z7}bSKWww>jn{>vzJMj7v)rbl?&hR z6!{QCLHxVD1+h(}A~7Z9>gIm8{?6)y*X^z6DuRzx&emMl_~;^3l!`~CQS7X?!Z6CiKv)SHHCTI7 z^VE*sRZiq|jgh(8a~)Y>VIeSdC(}g@w7#u3W>w;aan+Ii&rY*`TbnzJ^!ioZn|Exd zOs8K-a1Nwnd3tWt5SvSfOA#YDabr2$Xb`je7lue&0ar|>q=aEU>`Ik2X%A`>_MS>>} z*z9iIKcjuV*I`fQhP)wfy1lm9k#93*%)RU7d%t6X)kZ|I3<`z@-!HJtUPgQWrCqgQ z^|)i`CdM(K!vVPxvn%l#!e{J_K-RBT=rCsV_ol0*DHl9BI=}xg^5L005oPgMwss&F z#TVi{x`ELKjogadgIDEeTqfwf`^X0ZyR@#$eO&+xHy)kJ+Pz;K(Mw>nZFDl=aQ*Ac zc;p|s4$r>eP>#sjze29ou+Rqxu>*CqP50y`T zTa8fBa_*!cN>IhfY=I=}*`~Sf5O|ug#%YC~IZ6Y@ka@&fh2N(D7 z-;r7jMqQx!`Wkky=;{mVpVhZjIqAyGl_jIP^F|@YX!Nzvi2C<8N{86qN&~l<;vA&; z=Ibl`?Hibx-#VGL#mO{ZBJN-mey62&xXA91ocs*ITTN^BwJMvfMXVvnIPDmu9DWQ1 zD{8fc!t5#2#~;gM?L=AE{o!oiZne)1Ex{7c_Gl%*9>GjhFD*GNzt|r7ko()n!8%x8 zNL^5K9Fh5UZ#xDyEc_AiT)mcSE!vyHzUCulHpMg2{Bz7w<*Z%9?878nVHuC9fC{JI z*Ow!Q1>@)Er1#@F$0uLqqx zvuSC{Je$&?f4(tiVbd50TTZ!k_5`LK>`5y8C&1y=KNsFQb0aLTi6^KBw@>3q)?W|Q z#I(=a)^=U5mwa|B08{(zDIM4)&zz@EHJiR6*chA`$y%Qi6#SPtU!;WHtJo$f;>Ygg zE!p9sTq2X&_tyx2{lDbY;b$LlHj}s5O!SC`d-oQYvLCYI%1^SpCN7HYWmv3r?!?L6 z!=E&#tKHduJR~JpBm-{~GE{tL#evZy$MR_<4yLW+s-#&4>d|%kRWQT-WtfS6qq8R- z>jl$yL+!Cif}Xg#!Q1M|2b(wI?%#2=^*hs2uSn;6-+Sm8J5jBy3bD1X!Ig7N6Fpsr z{b)=+bIUb01fU9Kq=*+Jb(>-?ntuopaCqmn(DWP8lEv=5@pzSyy+=;aB(>pecvE6i zEF^f$Gmj-TSZ}0Q!5?$8^XD@QR_v{Y~4lEYhM@2!yCHeO|jzc%O0bJwVbI1XFD}pqvrsJI(KmtYO|~b4L^)$ z^7``40f4qI)}3)O_~^-DEvSv2g<|lP_dxf}Gl#y^hoEON3zFFWHYw0k)jk8D2$#oY z&{Rb~)uqz)ru2n`IYY3in`P@OLs!PYw9IO{fFjC^_a@t3nFIMXpf~rl7!kAy<@Xwf zn>lYkgi7RsE8f%zFYIMF(sDc0Gxx0V;g)VqX9b#WbEOx&6oJ+zv`NE-vEz8?#EMtS z8hP&wjU?8?HU4&dC95wt0HlUu@-ecc6^F6RfHT0s|7 z0nq($^2~BX!obwUS=d9rNTG%WF1JxXM{1FZ_UygDZC{h}C;Lifp=xx?;#R#*R&`*^ zvHy>?w~nfMi{gD1Q9zWGmex%RNJ%5z2+|-aNT-yrK@?%r-6bVRN_Tg6mvnc>hPU=P zo^$WH_m4O3yKf9-0E6AXHP>8oe!ri&n@8FFs)-|*A1KssxFl~gf<4YtIq8hMBIs_o zyaX^hcUIZA=zW6)-gjVe*)EFquK{4))=@e0b^Yn7WBcB)b?u32D8u+ZAi{3%6(67% zl`vjsGaluX{5NjaaP$$tgRQ8@nuvO<`}qf=D^q%bo#JFSzxJ@0UR(B9rRjHjl(K<06M zpxz#7etY~5e}_d%a7GP+^_AMOeVu`u05`dalR<54>E2HALB!3gyqo&^%X_LHN&+h^ z3yIpB?Z)4ajf>A5^YZXqJ9K}DQk8*^FUlBe{1DHWWwgwRz;tf~T)cHPX7yhUqz)sB z8Py}#wM1^wX6TdKOTm%hH|{{xdvxXlRH+cFZD6aN`*03yW1G7GOJHOFBAU)0?K&o* z!^=v86M3KcfG&qLeoV*J(xYD9igU_@8f~ulXVl2sycH+>xqS!VIKA-2j$)NdV#Vnc zIC8hP%-{j0U%#dkzz^+%gZnL#!xL2C*+@@)lSDx(Tb12P%neD`P?K`|2_Sr*4|sqTdPx9meDS-SxX0V}0(*Pfbaoc#xZRgid} z5WBbtq2jVU1O!|Cy=ZPuUYX{Bt0sEy?`mbOF;zm3tPfr`ke;+{&d{NjMOYkIvI-Kj zw!v{9mL8kU;2wUke%o#De)V=PhV~K|>3AW-HXan_7)YhpeNEHC&ggeef%U4HGAr;( zym9rra=rE{d~Qn8>#VB=yNFl|03-Yj&dg2=jFZKK(0Y~BMs0G(1x&A0PP)qb{+pV^ zBZYPpmM$5%BejstCqQxYz3(Nz?Z}O2MTIF1l%PP@X2X*koi%VJG1`$mD<@4^GgEym8 z$=_U_W$yqP{nBc0{2Bt+<{gj2%#{rfUjQzP#@pw8Zhe^PWJK*3Tf4jYbmfOAW=-SD zC|rke7W8krEG&?Er^+~IKMs=_0ad@?Cai~^LE-ykdouiNzW#iSbuP^App~Hd=i5wt z^Z<3NWSHv+U}VFs&SssQL|vnOg|v}mq8M#IB-o12G?#eb;yRC4&#Cmlff1RyeR}kL zDR#$It%LFgL^kHPbG3}Fb^28cjR3ZT^Kia-TUFP+ZFYDzUxb9q-v|CbUp-YJAxTqZ zk#s*Ts6wbbPw)15c^?8f}&Y_QJ-Fh_^p#DDo;I1xS-~mq5{r>SPO{wM*HE?V;2P~@({iTE{)!v< zDLxS4b{0<#0g$OW~xnYVH`wK&<x@C zU3~M6K*t8)BFEj7t?F)pEnPR+GPU56_~m=aZCAphv+Y2O<>!ynW+4X$42iruH+Pey zrksXc`_rKxpF?cRj1*}CNFy&p>@IS?-G_d9I{!+FT(i3(xn-WY{pZXllJRxjZ0zds zrueO(dTH@khIcZ@_m33XXH6+6EYO}@PY%1uS9{TG ztdsmhceLkegwuZxKPC^5Ht4M4Q%bthP}yUITo-({(LsXS>z(1WQLBnoy?3_g)}Hy# zF$|n&z}6XN^3sL11tKc4co!A3UN**m;5S?HML@6t$%(Xys2al1;>P--avA4rIb7j# zMJgQP(uky6cXLtzvY4}acc|{|9DLWQni;ww!%v3M7sJ{N2Pnz)t%0Ix>|-*3E3sN^ z@fAD3QFNJiUV7{VP%x)BS`jiZTCX-AD4^a3S6G%!w(Vhj1qji6XIjikr#Y7o5-zU< zIX!ON&VV1T3b5O|J@B0{@XhE13ydHN2xPTC6&2a30Q`7(7dSH=0Ot2$-^dx&PDIu+ zYKSvMz~BqXH4wJ9@TB5VM*$$)YaX-kp#=h}M`a(ha}1u9n?Wnh-YtxX*2 z27;0_do_1fm)en$lhZv5%&B!x7i=S=x=R~}+}ux#lO28)qx25kqf^4$M+8ei^KmR@K?shLu#<(wOyW=UqpO&k3vjmqTgxF7w&J-32i$U7Q3j*b0f1p!K;W&jn%`;=l;?Ms-e&dKd;&&0OnyVYVia7vU9&znJd6w;|(LgLwskz0&act z7$tyd;hs}ICZV|4avB`EfUau;kf$jAC*I$`@qzd%*J?jv*w|)8(rwP2nW1kw7N)A% z-bJ33v<&KrwH~kQO`y*lE&#yq;)XJJ9OOf)G=7}FrR?bDP195T)=8+m^u|Vskk7l2#sd`*#x=L^1`GqlX$wW3Y z2ff_IuCQ*DXy972eD49@(uL=bjuG%4wcT+O#%)y6efvZ9pbp|L8L`ms1_0}Otk_S; zLyvG-rz`?F#%#`IR&k4xxQ++N?SeHv^(VBnm)na$7wZ9fM)&lrI|@bAH3E~IRFFGp z5P!dLJvjH>Z$sPLpaS@s;4Syd%Jj1&sjKxY**7=M7`#36-Gzwl|YZOPDuQDov(SzZgP`r zum6jxj(PJS60W{8>=87}Ly*cJ8={R9!{Z_&1-xD1DCBMfMH&Zh&&Kc$&I3oV$5E_5 z!CvMMn=vvQ3Omb19;tM}F@(7{#+R=1)gH&IPPV&IkX&hIXw&=rQ-u4w>OtjstX!Ta zDPe@;`2_6|{knLcPH8jL#Q9S+DfX=Iw!GK>RJA+8k>u6XCVs})guQr=tSgrC<7!F@ znukR#R0-d;!UT!2tgt?>;B?{cVp3YLK$UYs;@1xKT&_Xiyn@wXWaB6TUT;3iH@q9^ z;WaV1iq5*?vD=O5JLVhSMl_q7oixeXPkg8A_^!p(FF`08Pjnd5sO@?ybAkPw)MYu; zF?*2)QBAO}w@0@6iv-f1%U>qL>3H)hANnRv*bV1Bf^v{rPp-e4`d7hS=&4FM zX$T(eE^vR-?zTBtguk9prO#c7Tb&r!am{lM7^Tq`DL&bAZs)DZ$}SPiP`Cl6*bOXt zsvFcDK#|&~O0*$eo3-m^a+MWDE&ouf{fU%@TbJ1M8Mk$Y;WFm&4rT-9UBXmx^Y$@8 z+a23?6prHWEtae*&0lIOd_v^t!J8?%ZEE^TkC$GXJniNX;;jPJX8-sm_NAcqR#7T^ zEDdiXV}h=JWU8Bebm=P??ER;_)PizH0xMDVwr6+RBt+9kV@{4TmhQk6o|8Z7L%7Wg z1$MM$HThO!3~NFn1llh}rgb)k-PVT+dxHuELi-1bOtfs_iHy$bL`30OT?VM8vD+

?0leVv+>aS5l9XoqoFrcJ5ho|?+uJ=83PNc1KAfN zoWMMYvuf%dcQ8PKp3INDNi@#xMl9o!O5aV??P6d*<5iI0^^DRWZ@6RSsq|yrRT1*b zkiGccwMS5`>14+ya=5jLl-u?G`Ou1;I~^2PfCSg)Afu_%Kf}~(J`bu8$4;lcGf9nM zY=AK>O_L6(J(Hc1IP1{f|Hj(68F;0HTV0Iq@cN?3Jn6)A9L;oSE;Ut}&6}msM{4K% zzHAMPOjpzOr>Uk*n$sJUe^>xH1y-FG3SIt~O%+5BYbOaaF-t|m1Fpsj+78b0^0#Z; zG?RNvwK^?wADxlbavd^9@1ANybYTajDpjPWp^3WekvGk1)A#Y=Ed4{?cE!>FK`5Zj{8ne z2+9&lYG_v$DCaJ=&#YkhW%NTvVgF`&Nq*RM5SHFLm;cGB@8x54JmvosK$V__Bpq_L z%F@wcn{XiA&#UHz3j18G!;W86PTmi^y8Cvmnhq4htxHc+5C5(a9t$F!-g$xfTte^s zrvkJKJ+ecAur@#GVyW>_6N{leFehA^_@cUDTX<|6l5ag{{|WIBEiPgA0Evo=?LAB= z3`h2fLYd;tP)D4iDYe()>khz^`^|L=b}btO5eEKpaGI5j$GgcW_07?5QboqlA7HK( zfrq>oTV~QHGuA47rWJ|z#s*GgskqQYNjpA03Dovx0W#q*<~}L*qPj<%d~U6h{#nPU zG_Y$4WYt3%K=xf?;5b~rtKu#L5ZnLUvs}n)ObX{G+dun z(1Qg+%rO2uK<>M63xAiXH${KTuIOzlKXnKdCStk}{6vV~$Pxr3`J~@>v>*hwkG;M) zT{5v0 zTU3vKW*8((ugTk!xa5rvNv4hQO&lDeWS^nvm4V#QdGOKFZbr1u=KPN)bs0hFd9iB9 z6oa8%X&a%`Jc1E*Ugy_ogxXfIOV~{m4CCyZHo!{3)_Afo49b9GOL1uZ(I5FRhV^1? zVVypx-_|ib4#ShrZNKn=q;mI$r)5o#vGvT?@OTZTM`XVtvv01~!6841ZSJ$ATUio* zsfSt?V>J6SU)~UvQ6Re@F+Ddl@VFfpu1j zH3m&4JZ_=@Eg$sGlmS+l1jX(@rThi&>eZC(`)E$%Vy^l{Gb=peK zx3i;c`m5o#)no09Bvs%DpY@UfB5Pkz)cAnp2~Bj%jtCuK8@WIAsE?c1=y)5U=$>!y zPV<=yj)FVN63-a@z}oq@&q7)w?fgg-!93aFa`gKrH*vE8%ziTErGADdFN%e-Ldbh$)xg+u~*WR zMOSR-X}Zk>G)y}T|8#vozYLO9IG#DiAi-BrIL>R|w=V%Dn>*0M2$i6IREUp>R5%aL zi2OQNz4x|3O9!9)L0czz69e*NzK^SsQ^v46SfP~2ODRwe<3%0+ML)tH>g8aHHn(8k`8@hb@#mOWN683|K8~LhcYb=Sv3kBluNg`}UBnOVN7mU6 zV(~#)p8$=C?Iz0_zj#Be8Ok^cYe<8Fl7#-%GG79i>>Y6G+Ysh6UP9EefBg13_Onm_ zkfXI}`i1G>q-40{6)F!)iwuE|b4oJ%Yk|D^eUhAWpMhryS&dGqJCxcY6gb39XaSDW z%Hp`%O`YLwD#~OZ zs5SrEb&)4s=V$*AUknW9D7mcE@`y0pwu7rl9NFUJB}sMOc4@-+&@Xm#DTcm6PzgIi zA-wHzYAF9z-ZH?sA@frKIn4G-+U*yMFwZ#JQdJC)y zB^D;H+U2wo!S@000}!WiI5Oc}8;;t(d>jIaRjBYi`1!lJSHhKqnERyLQ*Zv*s@y>BEMwj0U3)u$y`GT(y%w zn}^iDszbNt{PNZ$fJs!Q4eQDqmpLZk%N+!Xe}DYJIINbGMwYtQh=jpnJL|cnO!H9g z^SrvCl}ipb-L5(sctAGu&=e>>L&J^<&L276dWS?@W{|J&G`ClS0XXow<=`u_DfBZM z$46To%nktuKS)}#k2Q|>WC_^~D@*znHkY*GGLqB81L^1PQSNd^9XDPd{GjqmIJX)_ zos0F-b7wrebKD&9c!_w~-M?s9HAc@F9E>k4|A`pSZz~F3l9wLe{Cq!7raPREi?cTO z#1QG}Sv~$c@Qxhu60R=QPyC^ow9Wks%(7|66YS360=Vrm!!LSqp&bAr=UN|kCAMpg%J+GYdC+Nc z@9E52TR}0c)w3^*Oj0CS5J8vfa${kn!O2*gM*g~!a8>;3`po_%=B`6NNCe4MYFA^` zr|Y0MyEDDN=G-WbeB&tlK}qRRtCUHh`P5#rgr;5V&$aoZz1!nhf{dmmj1e?SHP_iLa zM+`S-d!YVE>qp@HT{Eze#42TCHi){YmMHXH+M`e}-&spuS%AV5zl}tZ#^0GKn_dIG z#kX##7F&A8xcIV9t)|T`N_+{GSR`Hw88x9^~Waia9J#*DG`g7Hw!L# zz56ULpHypAEu1u%=k|t;gpLY2VEfH7$$@NTRd^uGdtiP@?$DI#RnT*#%v#&ed&?e& z%bj(BRGj{XiUF}9`ejWI875LasPF2=7$DG$RfXTJ>6D^vq39;XPKA;EOG9BdBFzZh>1z;xCUp3#c(aF%2vnm508*m z(f5f!XQ7;C{+q0HG&cPprao*9_M3<}+>B6U>0!MLwW8e)t0|_)Qwswp-spF1Zp>Vq zV=u|3UCtAZ>rop-Ihb}ZvEv36^pD9Q17{4`=RVd?MrnRy#(Y~!&SQX=97I(4E`6Px zfSLSKHtFTw7ql2s+29_&Nm7}92*>EQ=k}nHAv@l4Eb#2tZ+j-^f89&sD9yx>+|but zszUGhA-w2?BvMRcd-HF(-)!duU*gt2Ge>uLGin%C9 zrRb2jo^MSZ?`o+93cps zi}2JP`FE_QpRbT`&5D^eYBLXD(-KG_ z4N0zS^QJ^`Ae(U$vqQgovDCHaJA(>N*$_)>Cu^%9^la?-D?UZT+^PPGUP9S?K@6cr z-ysiTX>~<@JvliiO&Pi<{YxG7@5T$h8KU}*x@Q`y%tM9s`gcgAcLj4GDNf<@$?SaL zH<8r3v3q2Z6Z}L%q|g8CyWG$9LUUjcQ*5KnP!+Om9J-N!qodzsg&a*{WI6~)u0WV$ ztrve3fvXLf0Ib;ZR0c$Iv15Q!Yi3h<(qV;W_7X`Q-~UWJ6WGp;eU)(R)j!1I<2|XEWKcPaAU5(-^h; zzpepq>d91|Hg}T8jY~P0Z+7L=i26hN{{32n&W z17NU@QdAe#RB`G#3OhC^o=Xb~yBIw5xI5FA77m|uF=uRGvPix6XDZtd7j?dehAW8mb+~<4A^Krl*P7WyRMr6| zE4T5N?iJVSjvL0AKD){-h_PZsP0K)l#K|wlDb=Tl^(6X=bLp`_3TsN3WM@q%?DWZ)A-=$C=iRJw z>R+?SjU^(7SVrfWgiADa&`MaLVtd=W@!Ta$cv`HS^RGQAf$mX)n^Yp}N59rr%7Xe4 zdJ2z~o6c*Z={}AiYmr*}c`s%{dE^p!HoQcD&No4Ta63b@hr6Fzkp$C^d9y)vA;O#e&IDcC)c0u~&3UDlU1v|N{^=Qwk1LuG4Gg})9 zR~GgkYVC%*^KR^YS{bs4JTbjg$!ii_`ELiU1}Ee2-e*~f zQNyqBS*?TH6mQ)9dFS75vltTWdl;&zKiV^Gq0fr+LR6oy6+N(cNx{_2n-olga26zu zrr}neM~Zh<={CtPf~hAU{HJS?ZKo7p9W>(5?$AdzlieJC4iu!Se$G_y%Rw8SL82mn z+?SB1Nr{Z4Llvo3?Xkh#%^x80>jS16Qp7 zVsC_hRqZkgC1^g3jrr^VX+kUa>0Wr|`^8B zm)Y{c>j&X?*4402a!ZD!1vLCIbbGlcGM}NS>2KwgpQgS{eP~_O3AqWjC7s_ybYEh9AGk3%%^q`*`DifVeLCY% zWsNNwnSV6Q@D8K>%!UMtw8(myXhy|AbJ8fgul%#1poFQ%p1511B+m|RrR-k3T(}aY zg|FZO7_|7&8mRM}g#b5MiI}m{ep&+k!g7#x;Ijki%YP>M2yPA8eoyCI&c`)$K z=2I}*HL6DI-0rkkkg%XOWNk0_dU_hr(V(~QtZtueg1@qWVr%mTm7OFq_*|jtxbpPATQvs67atW^bE6K}9ZYXxO6LOQr(RN`)52IXPkPOm^6V%$g|y#Y+HmwpoPXv4 z@rcM1L73j+Is&B80hpn0y7z#8mLm`aK`Wba^9p`Eg;3F45~RM$jay3XQb<(fB%{}; zQY0$(sfkSO_|}dMTD4#78+KNrbx&ttA-&5mX>VF?dcRkLtJ`e{b+sF%wZ$PAs8sthfW11+*otD9KN4k7R=i<#T?i5fCgKhwnD_c z2F1chupOjkW8O>-6^v(&LN_kD@+8)sZ!XrZP~#C@BxnR@zLxX;{%ME^hAras;vTA< zb>#{^xoNa76}a4!_TtyMU{swBcHoB>{gU^h!h+iMRf%|eVhF#6&~{nm`uRb~O6&8e zgMmUQ9lCQMY9^!C#>mfO!CJ23@MKzU_%W3LH~^L3H?U}|$ze!;41C2M{d=4?k< zBpznV@02^STWJZbtI-eVNEUEe9$?SL2&5-y#2fI|+41KRwUh7GX5C6dUGuhulNU~> zt%DQX^u|dab>g0WV|GiSb^Ks=?*;=-IE}qU4tfW5g2C~ETj7hB=PP~13*IF7t-I;I z3N6bHeIh!sC1f9j@1C_mOZSFqM(p-X`RGgURwp$HRIy{$?A*f-;I6S(qL$ZI3&h`B2-c=$on zQF@_vzpHsyCrO91IgxeL>-|12Ue~Qg#9)#_$=;U`WyY3U&ao{g4yFLF2ms03kHIVY;5i_pC^2LoYV!zupkR^Egwm`$4mOGm=z3Y zwoDJ-m98zlt{@UNz_pyJs-udSa<>(5DSfq)^{kEUwF+V6E7J??_`^HVunK*z$|1gB zVveo?KOFz4T@pVb#7z z^T>f2TRXh)J|IfjyT$6jUVtKc!tuWO3EzGvw)hVDfpxtiJBCUfQIv?Xe)=nFPeXmE zNs+3rx${`X(xCQ+V2yGml+!^vRi|xFYeWLJ}1R=%`9<~i@Le9Lw-Q&LAco1j43#CmZoJ{s?vOauQZ@tJmh6x z97p#R@$uKuAQeY9-Q?v1z;oXzCAo<>DXdXRWtQ3eO8F+8Jf(gmP$J`tSexgwoBWf& zfLldXsr8PVKr=0kgL5Ff(QIjWUq%~>Yslk)+LN~V1$lD=w*e{ntD_`z(pjBRQor%~ zZM-&#m5gg;YxXG$Z+p$#Ke*hFOTQ{X<$HryY>&eV=z*3goH+ZNgtO`TS!( zaAbFjQYap76pQE*r^XacnLtNf`-SY{lA3g~FNHBc#fR0SlRj32tz2T#f8>*u5Ix0O zU*kjq^j1Fo5*@OK@p;94JZ0+F*I+u0vUa{vqi6u1&G|&Tz!(D^)yqiSM<-Jk9t^^s zZX3-XM2k~QzH1Xlj!{3N<>1A1AbIF&AxKuHv0MvGD@-dMKraP76s?1NGX9CZ)1PXh zO8qE_MPHZ|ty|4jO#g1EwXXOicCWWM8JOSE|3od)|H}m!1XfrP%!DOIQus>MGU5|2 zCuTC&jEx8@2`amAG3VEcZk=LMs}FF1gI@-dWD3rGN-bnGB^)iOYhXC7xxn`Em*5Fe zX0H9s*yF?09%y0}O2M6Us%xfYQ7E=Se+w<{4k|V{x@~+^ZmphM}R5zVZ6R=FK z5KyP}dmhGSh==s%X6_{4sd6b;aE@6bv3Q8*NKF=tbk|>!%`EH#*_0|iA7Q&77@OjZ zT=V>MRg(u3yc(Rw;IEp47PMl_PS6%FU#P0Bavkt@31;NQ>s|vq@05P5$JB&kw=ZMh zr$E7aFgM(95+RQCw+^Svzn({e|G1!7J^-R?`q_+aC&&`3BBscU$)H>Fz5V(1OaahM zB2c5=Y)jph!xHdzH#zv;gd`9eJ3Bw=B#@`zx3uKb9{pl^I)C3^`hI*#s~P0EkE!O3 zdO7Gqc*kGAJe&JVwX&64d|eCM2|1n{?jtA7%@h+~ z-~BowjJ{ZOA` z7{5zHf;TpFwt`|n{Cn$HSJ7cn)#cJA+Z`~gLE<0;h<^GdJ{#W0bVrOfSv*^mS9uXL zfRFtowf~LmYcDm|fnpF8&+RDig=#$Yu6{LR9DQIN%ug(eI=lsa@PjYtn|okFmuF!-gmchLdEe#-<%C52P=`B&J>v314^Eg zodEOR7Gj|+q=y=uD*u&D>5thm;MCSZ!? zu-Wc+)2NCu5lEPac=F#V=9lj=K<&Tk#tzj3Rn+vPi2Bqn5M#*!A#rpi7%e=4o>3v6 zD=4`UQ5z~ zyIV04o?`If`|_Q9g`T$Du-?KtP2xk8D8n2hKJ6sw{)`g%-PD9(K~|zYFI@R`$}xx; zCGNnlH;mJ45+_%x-Of)}huj|L^SjZuJ%ijnB4+O>J_jQWHpf}H?SPYYAqDy(9P(5O zH~FF9cy3~H`Z5P1;mnKeNd{0F;bN!5jt9MFZqT(7;xmDLK zBydRAee-QHy`ORHQ=3I!8u6eM7ZWXw{a;nzM(<(ry}^hTv3ajp73(E&)f9G#TzdW@ zA^P$c8l(33x#E1?GT9BP=g7UBoP`MO#j?mcJAN1PV_Xe}83@8o#!I2u{UdZ;zR??(i%iJMKgWm9rQP z70InXoc4%g{Dk+?KrBpPWHa_OscoA$4(m>M$fJ zGhATyp8KQKKY8O{PO5cGVJj<^Qn=Bb(cISy5)Pg-~9ulA^%b{_f87U%P3 zF#jpdxlnwLiSRk&lU-}fLYphvO6*N=&_jTKLK%MJ`#OR-$CdMr-7yFdMRTM7+-r(L9W!pgVk4BhGyy zUM$F#sCS%Ufr(&7u{(d$U1Su#j@PL8Dj28rV788H4QE}{Auip`W=_FrfxSdRA#k18 z`;oOZ8>V)t;8wzTfJdRd_V?E+F-9CaguOI)e`X2!xo&PgR%JBtU~+!dX7GPK>39j6 z2Q1$OY*-h3-qzt+8}G4EX!5pT>DihmK%ks)eu|#&irX;V7=Vf28c}8*dSu~>pIkoo zDTkn(`lEzNM@!NG*7KMcT3|sq++S#h7LA}oRq`Mn-?m@1QPmA&ejBH=jJmcZjV5-_de;v5wWhw+J%JBu?)(zxiJe)TQlC*zufMsJUd`>t z)J4U1NFm!nh$E|S7kP?0Hq)bz=Zd2Qc(R|KqX%HlrwhT#Yubx-O-?d2G;M-zx)`&6U8UJ9^+{p3nT#iUO1Lj2$(OB1WF_|F)=5ko@-N z$jvm2dLkMgBwFr93ykuU{Y-I;` zqSiAJUF%t3&X_YFN7Nn!{9a;Sv69gmiq4248{jAT_z)YfL|Ilt!^ni`$RxcVFdz?& ziW)u)rWOPOGnQ;w!OU*>wm9UbYE?a7( zQ;@AHEn8i^y#bQr>X`hzas@)lr|;_rUSV#`+B832*!1g;a&pWz=9ca0!XqQFVt!W! z*C2o4bEOFJ$MGYidU8xX@m!iRwdYr_4c{W3*C@uHQ7RYSu)J@-H-$(zhp&fd}{pz z)n)SF)bxTDZnd>DJhbLoVKJ}YJ56MAB?tyaLf>KEjalDQM52``pHkq>ghr7?r{_19 zWNVb!5A_olAe?dp!7Piel>(DNnEmD(YL~esg5h4$t!L@q*3WZ``{-9E``&HvnOYQc z#v5zGC&_8^uE0Xg;z@azzJsZ4*ZEv0z!VxH2TNgGPQLL~DE<{N$~bL%N;F#5onhF% zPvpc`#-7&a^U4VH=W5*^_kF!>ELG3f)k_}O=F4p+r+)ZhgWHAe;gZV62|gLgk4`%! z@&H5Zvf*-|go5oI^NOYzFA9g%C9U@d>;&W)2j~Z+MNCq~PIF%6ewco_swg|W=ou`l z?D|O1=b$$1+tLj}J?SL3h-;(AROi1EYR{&DHBVmO`pEIzTD0!P$)H6tqkv2S&;sk5 zjv8K5CYP{HaT)aPyZ5)iwwpg)>p+f9M^z^TyDHSu6jB6H19{S*l=~QBgC)3qrtr#( zpXWU@!<4ygsrk6q>Rye;j=4~U#ii-OjO5`Taz|%U8PJCptM0Sc=~-@3KaA!lqwC@g z^8|lcj@%E&s1Rf>{p&<)(j5=gbg!tt1oQj0>xUF@RVqfLUD7pZ9A7~0P=`I<3!iA? zN4LbFtP^7{Hw-KKwItIGByx%s{HEk_s}3kCmp8&1mepISC5A}WGoXLb)D<% zy03LwoV(6V@gH#N@znyi*$il47{CgB5Zi5Gkgn&)zUm1ij7XY-)36a#59>m;_Q%X>l*#^V@sic&C8+d7(R89rQ_xpQ_Sq{&X=hFIOAS(m09jTg^MkG7RYxwF#Kd5fvPxshi zX(}ESd6Yb>y`r9!R{B z2BA_yyZ>Q9z?2y=r&yo>riO(dK};op9QsR0{o7{-a~aKXjkO#gH;u;n7U9@Fp|R)g zX>Ta1&#AASXA~{?CRUGWNng2(^F<*OlgDS+T1g-f@$iWD1(pE`h}lt4!E0s5YW(5D zoc*%}-(-!>@@&rJ(R00$LPRnn&`Fcz+!Sn?vB9Q~l7&Zz_@RKUtq zFv)B$B6pKpXtG+J(E9tQgJUW>;?ago&h)1uqqJ_ZXD+QO$+uB?ysPr!CH4%sJN|4OH(xrAXv;i1iN>=4<7y_yr{ z+HZEbzOSvpn5jau{FwZ!K!kvwYt$>ttR%*;;}ng6tCh{-sdH=3GAj}dzi7u>N^!maxP}GH0br&V|*LV|4A3IJP(nl zx~zxrv9Ua*k>|MIf3K!DD!eL~+qC;o2Pt%YzB}~~ZXi$kv(Liy!LK- zOcB`*T}^Q>iqzmArs*1igbco@DN%>i%R*k^QItF~W~DZ3`s$VInNml?jP0$peIVPy zee~lA6?GfOCS;>o+KXEXc?-6*gu1*GMQ3*F1Wxn_o7!3YU#>)0JtRW70$~cRI`{iX z)i>T8Hs-*8s2Xg~V&$z^yk#rT>r;C=(`K!uyOo(i<3SPk9`X76l?KQtZWLm8uA(#7 zys@%>F_!tx>aq#gcwdFz%eku+i0NHn52nwYbh6%1nUr_3r%41O8Vj`qImOLj`j2X_ zsq2o&r+&d(w}KOBo{8vmHcD_^*X;P|GlADkbuuyJZntLFxBD@g(OM4I`h5MLWP@FI zDBlE8E0tBP@QqndRAu#72)HW~=QcY@4rNBj1fMLEr?_h8tjrb13Gi6CFYYF*Cfew< zX?8`VYfAQMyb|5 zMYr@hp6Z|52_uP0i2oK>hTztGn=buB6L^J$FzrkONgJGmxNORd;THdkMzJw>YW0v) zJi>e-_3qr%bc;<8nJ|a7ZMQ`3MrcYjG6_{#;Z7(&F8+2N8Q2<4Z4IK{ouzx9Bh>F% z0t=AYw|s|cwqqC^fYf32ht%P@iMl>l#Unq(;EJSisWQ2y^Wnce(Hki}y<5gIX(psj zG+7h!-}xG8`&CnAcRO+ExDPRps%8&{@hhI=R7Zyls{OgH*L9I$`2ho@#pE+r1a~9< zdZmXl->a*q6T$Go*7dY|4<6YVwgqfZI@TjRONh09jW5hC^G%5Geo!H=Ww>Anr(y;T z(gA7$uz2kPlY!v@#r5F;@VL-|5Mhwo(cdZ>Z}OV&@T~@*eY_>;^8G8e3)vxo&#O;f z;)eu)I?&f9&_DlQmRd-|X8^^PG9bYjEJ9VL_+@t`#N}d;sa1=$z|VBmef@m*cl2td zSQXB&aQ4T)6&IIio(D_qS78F+Be@AzqgN}++JWIMsVfuP1{E0VrXmNE@{aBCfY+0H zr!LO0G#GW+w_zYfWR`dC03$gAc!;O!hia#;Z680`RUu7PNX_jMrLaaeNehR_+2KND z_uO1J1%hRnBUMn$s78gnF}TO z0DYpBBcKxZ2rYn!y+JOCy{DF1tnf+@pV1bjhJC(QS5xDAw0>bk$)7!woyk)bujVZ! z0)m1n&Eh-9{{a36@8hYBr5ARO(|WF^Cylq8yhALK0T)sB3PA@X7CXhqU0(m}yF%z# zS(&<{NEOP+|M^%t@H~&3l-IJ=y8=+tW%S;^-gZ}^EOL!AILpMxr>a%}T9(;3C9^+8 zwE<#eKqT9#s;Y9+7Y`sDB>txK5A5c9C)xywI$;`7PBFmbXyB?|B5pJA6tHR7CHU#0 z|J(xw(gn>M>w5ZI(Fl?MJQ0%@VDWOPLFvjLQw(qe=d!_xeEI3X>z|46N->#P&u<;O z#nH4yu4Zo{L;k#|5<*X~Fe||*aBiJK9=G#-e1=57e;m=hVxJ3RSYr!gS*vuw8Br(Q z;jc8JgXV6a;6*OM{~(`yzd&X0DlijJ>iUbz^=~b3IU2xFF7ilL7*UYDAKB~<0UJA% zbi;Qx^M%eP1}$v%gVc7?S7KHCKjI*YdSpO_pY4fdgFf&*d@<=6Nx5U|F1}+UWLzGr7MjEX6|A1p8wqQUv8}BuMOXuEXIZp zL-AIGkqj1^-+ffZfFRL>KgIX1~AwI#XoS zT~l9Zv(V%nDRCpzJh0V*xUSx)fy;fXnH;62!5;8wy2FQyu*Cy8lAlh<>*M z1>ph`v&1Y7)JKf#bA1T|3yy@5;GN8Se!tKaD5uf=@g{3EraTY-qUTVBcp$;W_T}X$ ztR&vI2OnPx&4VTr1L{KczYbl{;tVJS+vp2%hYv%Oz<;+vlbqoc^`5SiT(V70;xAkj z8x~;BJSt7+`!^P_-}B_VQt53_aQT<~goys0e7J-xRx_`@#rN4irn7dSvDx%W*?pUa zlIb|d4JZok;Qw3n=Z*@GvvF|#(1VZ=QPLFy&=C@DpIw?g_n#u;YI0R3j_iwVEdwmI zD*a|}yznHp4?*#~PF4ri|6H;{$YI!eFJ}Re#1ExEo~yq%iNE@sUjh9P`UF@tRuwF)shmzo*8xEGdtC({`k|v;yLq@v| zKaXaYj-rq6eWFkOa}kY13whwxh{V!zpdOyHi<}2ZU0aDB|NVwjAVG0q#BW``K3p=J zn@`7ybh@|)9j`q7``y8UZ8n2VG{raq<)8TBX-qxP@9l%Zz=n~(FE3DhXmKyw|W8wb7+H^A(#ui)3V$64^Ntm zcy*Hh34pq&`*&snRseGCm{^dAVXZ%T51&z8ubQ(p^V;)A7Q{#i$Y_%RVCcxPb<4dZ zS?3OY*`L>(F8MtYp8bRsn2Y}BZQjHb1itc*C)qZmI1|>}dQKx#BhJ=7Oy1Vhf@D}WJ@OiK-qO1qP{yYdwNbE1Z0Xo5pV~^e!ZQ+7% z3bRWU5$n%R41ARN*&?z3qNhv@kn)z*IBYp+xBd;!f2}71BufWwe|ah-Zpi*5>xSQK z^b@LTj~zVUS$pl3uDCysRr2&M@~3NX(M*??mR`V00inyC=2wyTMo=~1Ynq6%8r!JW^zUnm z#S*F*mtL%urJz&%C#={a9inK~d{N;;{Gx*nJUDkAp^?mgGs?e1#$R7GKQ}bs(|+}% zK=MW1W-ppe}T=Nsy>Uju&g^vp$$V^tX_wME}Lg~sz4 zD&}|n?D@ZW1u&sv+&5ll#s#le1o1rsc~C0-)wVwF0CE>iedWZv1MimILVDroK6i1>{Z=4kr(Kgc%sqn;N|H|FSC_d=xqAqoC_0sJ3*!%aO9ReVj$OBI6VdG?5O zIX~f5&tn-|zjo&NO}qI|4zD2>DyjcR_xQj6abE`QEuK7f2aP8O3g$;OJgVwo*}~F! z4v?nvKs~jh`l%Sy{`Xt`AN*zj2U#iNPB}6rUh4nD*_(hvy~YpUC52W|Nrg&i6Q!~n zr6{tNHH@%0$po0P3mRPF+wf?s6OvlkC?VJBw@$j3C@h`FQ+s_aGp&szZ zxBOmEBQ|VuQ@~0P4>=W--bVf zRND?^yit~HiE9BKbJ!2@wWN8b;F9s>|D#X){gMCk7XC2xfT?f$rTR*bzK{&9-nfY) zwrV?`=HODHz!F|L6+wW;4XAb$8d?1FrvKfC{lEO2KTvyxfzRsgBc7}5N4absm zz3y^HQMoGKE$3kB;8897$eFY=D)_J5Qs2Z|Syff{K8y#+!Kf{8EY&}?;D_uxf3Yyt zJ-ImWRh`5$z8v}xfj}q)^b%?7h5?zC5hNYwln-80xzCrNOgfcw~azSGQ=HB)6$k0y- zR;dzNU42nLV9^OTGBVRv7%?LaC4ne>gnBfuYZC{GbD=c9!wMQqM zQkxCK3{8IBsB=DI}spc0#xE3kF(@yv*# zRmr1kzc(Fh-0gIqOXJD*`yhaHfBDHD!g3A@fhB>FLROzS=PuN8x4PL?wzA)}8Dyg~ zDEsjF8=maqq;^5?{2t6Ny5Z3-buRxU?16|YdHepo>Hc~hns8M1ZH{)v{W0b@a>vY)$6J&Sj&1LC@eC++vP;lJ*q#Y=EvOU#O-O>(JP z)qqCqQ@im*0%aJtuO881k$U$J?cb@e;9c*;)jy2@SQtYPgg2Uw+>QUs)Ex`k5PU9J zP7|t&u=0#NAjKcl^6ODu$$$tnhlTWu)fKh>4|4g11PFswWEWMsO1@p1y9nz%sX@rt z(>Ei8DQ_mM=8CTNSt@G(M~`Nl;T{?q8h(A&cD;`O)jx4(7Jf@1LW(TA z|GowM|A>7m8TX)9vaO#HQgZs^0r)+Xb?u>AGCEleKhkQrYv%!}sY~YMU((u1lPhWg zoBZv2HEz{t^DggWSH{;rdl`P zk29thw0~VZpIJO?&0}q@7>Mou@K@+xo1j84zb2%Ax*`5AwEEAD_1DsxPjLv$7II7l zC}lgyyaAIyc}s4dAA7L)^9~|ew=KpI2R>o{?fSq*Cm!*$w+6JpSpk3{J$3iE(ru;k3GQNj#{Lx7heFG z7ndKh@^=ja?ye|<^h+M5zDt@yb~6t8{iKJEAC7S0KRRnL28{!sKr5Pp|UV^?(=ZBLD!MUUOiwiJqkJAOjh2H}7B? zKvn`_!ATepj0y;h`)x*Fe|;L~GC;u4$H!++78f>6xrV+q<4*{_Iz;LruZZ|o<=}v! z-1|q}-)QUqv=xCix1%DelpwEu{pepC`+zPW(QD!!cFz74;s+#EXn{0JlHOEDm>B@g zPc!yL$fBhG_?G8|LOVP45O)F(6D{jZJ^or>#8H>v+NDWnqw@3AL(aJ+mH*uIjJR-|-r9<12x}ZI$PIJha@lsXlbmlAy81sY_DW@P|v^?_kouJo~UXeaJbx=zQ|i zMvhek&Tg{Q$JPSgUVubKYd%y`!TourC%$HRr!|?hrqcB?A${7U|8c{B_T<%NHZzZ}Z?5WEzp1IffV6i#D02O(Z=tw6V0-(`jgwc-aa|F(YH*d<>2<&a zd;czA5-$iE?K@*Rk*k+x;kzuQmpbueyYLSXFb*bKFNNCsHGF%t?T{gLwsv$Uj6tnQ z94zuTDFdZlXqEe3>j0@$3nJb0`wR{xlK0qb15FPG8d|YO!hBYhw2P z?8}qU9UzdWn{rXQ^T<$5H20h_vaTGpijOK}*)lMW%?v98*L?YKC%*~8Nl#_Ngz z39W<;jlMThH0MrHh}^Fm!dDY6o(0X=w`_X7Qx#aNqmlj&3z`?=$~g)4Kg)3M^N9Eu z+*h3BirZr0oT{)kk;RFA-u?by_4`x8SW6rM)C^ER&m3y_s(H{}@+KN51C|F8uG9JZh*)5a9@ zaRAIF$s1hBD*e(A2zze^P{~Y?C%biYt_{lS-mMs*{atrsm0oJTkEpv~sOIjs`7?{u z#rY}=RMRtAjPmqbjn%5@1pv^y<(G1?LDvQhYbZAyI1763YXj+|M8c!Z+YSXgnK+Om zgq8mo^Dyg5Br6LG~tg%pWiyS!2UENmv~x7 zTruZ=3HJb`E%)u>WZrsb$9n*h?Lm5F>Q{zg1$@qi%sg~pOxn0->Zb(N zZ(U_~LSZnN?p60Og>pbqLn7A4r1sME?Z%|52j2Wp8=4r#p_i+y_j5p$D-$&|=9=@GBVDG%>-c|TA7Ced!4jysp_2C+In5kgXeRC| z@U(T6fj5uoN3~N;Bc@paxP|6$VIhr{UzKt{<+LRC5FRggy=LeNL!csN|Je^5K6;-d zc}2tSqR&K^S<@#%Qgchh63@;XvyRc{X;B+|a$cF7)SQjEi3T$LOLRWOZ9rDur8i$8 zZ+^OY^u-a4yCPaC5rL&2oTvpM`>M*i z{6!}rkQ#{|>Lu4_`Jan2Qzwiq+b`P!8CQq!4L$kbCF zaLS50IfDlEcma1pKBqm3GD)=DW^N&kv#1M_aL1Fn+wQ93q}?%w36*eVWo403sCZO^ zRLdsZ_2K*3WnQr{$8d0gkcSQTP`6Gpww@~HZ-X}fSS$Lp9TR@`m~NQXKIW~V;-1rT z&R=JKtPLFcc)_3qlTeL~tt8yE4vJJ@9a>Q^XXK7;(@7C@?k*i&H9BOwFY%Q~VjlK9 zvqI&Sj{mO+`Y$_=A0U7M7ofxvsdx&X@qsqsZ6Z8XEt+m!kzxptu26oYJ_u4cR+UWu zBRv1KM2;P?;o27XIUx4Di=soE?#268)FfgZ;yFZo!y@2}kd=v(=yj4z;O@uItoZlb zNILh~>i*}w_F4VQ+WBwq0-nBi;B@&@;v%OcT&uSqY+h_IDAkqT3IYzd$8&X4#sOi| zaHR;!JbAM24@!5tywng7Wdy+5B|ZM|<<9#@n`Z!G^?nTz9vIUw4S?{`6KIa3LtN{x z85Y89+yMR-<8Cxi?V45_Ub55fKEk`2;L-4FN$(_iDYaNBm~U>U3SzNaJ}!y zCnfn$b71Hmd1-!LV3d_NXpwNc-*zG|^@oX-ud!AdWT9DHEhh8fy|u;38Nkw(LBD+H zbqJIivsM8~zMToa=5((8Hq!FAen1c{_ z10H}m382(_2CJot0{uQ{=rfm5=juMu&Cltd*L*0WwxT1pFo4CGE-&8+-Op2drp>%+ z^wUMW+o&4&vK4;Yo?Yvp7TFiF_BEzeg6OImOu6$^WV{xAwiGgyZ$9kW5q)Y!xW+wE zC$E1=2pUvAOYub09YWm0Cy!jV+kT|%;_^L_vub)Au? zsomst@Hm!i$2pbAr{4{U>#jZ5hcCo=aBzg9N7rpux^-mgI2X<;Yufle5n!{k;3{&N z7n;7W41>Pyy=6&)>LlZ!w^E>vX}-g|wGMsP zZ#u{~$2Ylczu4KSZ=A-Gqlg!y^L!J~eoOC;yD6XaPc7|uEvp^kptd_`4pz>&2djRe zr_C90Ijb?tH$pnc1m%W^01Gb!k;K=}2_o(QR^&;&-fU(AI6E^>A?ulpCJ1Zy%v55} zqPdIn3a9PKb7eKnS z8X2_rw=;|ukz*p5H82TaZbf(znfaJ{k*`QrdL~iTriE~cT-*qtmG1=dV%Q~&jeb2K`Y%tmvTEoX5NNqP(8jjBDjx<^A zkF60$LNLcIB91KovL{M(Grl#gaV<0|77T{1Wj9e2I7Y*@lnsVvyDbhYoRLz}r=^O~ zo3$EVkibNWlbTYgs)5x)POs9Rs?jpSb}roA{^`?|z)$?*;+k?A8Suu9JgYt*;rotk zd_*d#85t52{6naE*h@#NvI`U)F7wa4goN+T4vXOaD)VOh_9H}~^{w{wy^Ur@@J8`J zUt|GwSW$mcCw5kwPrQGC1AGcMT)2v+U%Bzr;J~GQKNRJ-;jYEyPhv#3#sHZ0-p%&Y zVXONyj&KTlLgVL?+(Cu#*XOMMB6PLjRz2!A(H`p}yz+;e^V@4Ac}P`BpveF*KkG^Q1< z_sL-_jMQ};2X?|8qBVczkpN8veWi#UyX{^bcqFoL&Fb(Uq_`jiunE<6Wez;9KPs~D zR28()sK#nM2nMF%Vyn=Hw*WadOx`rV7dH>Orw2y|j=2jN?)ASs5yjiRpe_8`?%`*5 zZ`E^q=ScvOzxXKMU|Li3^{vo|m-!h%j$YinXXYBieV3wD$L< z)8ZgQBA1=HT{3e9O+NaJp1HYY)GWEF*10b*)y8P+lZhC3Xmbm%jc}fJ)cre&R(|tE zAMd~M;S%67{`5#vyUK@uN$=#MV-8asUx)s_3WlN7a<1GjLI`*!Lqi02seGz2gVuf(D>@6Md%Id!yF+nmPpZTJ?RINEE=6;NsWw$RBL8e-@!8hS2nwpkDjRZxrF zJy4!bIqGuM@@&O>F8gC5-PzIxLU&Tm6TemAtWW8QhHfP7h#IBaPT%d`l(3oNrRMWG zv9=8mI07Yi42h{7Bz>Ub!CZI&zN?t<#oit#;G87(aCU=uXNRg(kWSR~9!tl2j_*7ZG{s&fge2Ijz4}>E z@S7Xd4_T+@CS1u73I#DnU*){xeu&%rNU>YMLKJ&O2rTd4`X66mT*BrpljZ zPaj4sBp;8x=mm6L;2p)6Cw3n@nvmmuSmE5LGUe__L4HZ zt(*T5KDO~r?pb!o@(j22yP^z1w!h9S!TIuy`oS=_ll<|RHxDl>34Gf7h3=FZBYt_0 zox1P^;XRuTcW=C|zIpeaBM~5!C8yMk=6?El^X9YauMGwF@WwuNBTVWA1hdzyRATUb zOZ^tseSt*U^_)Tv0uVdIK*|U$mZ-V}4iBcz|A?>Tbb2r%7+IO z_R@|f@;busTcDMc*YwzvXYn8;QcACSn93t3-DJ|Ks|ZOa@X3x_)|j;b++00tQJ?L@ zs%<{UgyZUQ_}OxT6;XD?kvN7E@QT)Mfk}vak`E<&_t41*VrtD9&^|SuY>pKRb8B;1 z@r2hMVW>zDncOTvZETtOm`a+ggU6$`j(w;PQyq_jS*O5)vF?+w2D0j`bN{P*o?LI7 zH9DjC%EuG!Tw0dOL>Y?Eah3Q+mr_Og=2zVE-r_bNQiM;y3t|thEJRAxdE|WhAudM0 z=8e|hAkTd0(r1NpS=&?<%^l>uon)%)H9AC?g|95MJE~PoZW~K}9Xo3W4?Pl`vRENtsy+Frb$DN}VT2tP3l^LVN(UQPWVXX z=Z3P4Gu(wk67NfU6CWCK1@M*IiAj92){?{?&!@&7)_1qn?9}Hyai?@RV{Q$HK?@J6 z(xh&gYW34) zAHPp@)PYAO?)jGp4f?lTuOEl_@$Es+_?EeTh!VbkZe!|!u|IBd=~eZnY+PUg#)W6y z`a)Y9&}aDPBPm_(%05odnkYd^Lj@h2_;_inpC+ItSX<8+6MC5@#bk%(_WqmJyq<2ajN=b3{ z>TFSKuS~t^Qh+HnAi^M0SIo;K=sWvoL(Yw~`q7yZmw;BAH>)jklVmtVid z!CM3Rp;!17A~FT$l;7wthaPYR<0xW zs-N)UN}1Kl8Ljl9XE-a07Onn1?Wkp7~}@bn70uZeO(gJa$QbB?Z7W{R#%&Pvp#vtY~SBY9%6MvO*ZhS$zQ+;>ydlyS$( zVfiiDm^4?jz&(umb{7N>HU6ODO|Ki{maj&Y@hR>d#G8Yx`1NzQRxY6F8MLxjW_|Yc z2ul7+-KDyb3}bRj$B7e)@b1L@eg#Bqz5Y{_+LGXZhR`#?g!mQD{3lnr(|yMi7P1`O z%9fue0S|sVbQq8C*SPulW{MVcIK51=BPfJe%cA3!u6{5;eP~*u^{Ggi^{H-! zPZfl|2{&-P{xb(T0#tA- z{(AgpC8(u2Gg%E{edU0Skd6SIdx~X#Jh^gSZabQ#{nDE0lEk`H+xnQ2X~r6%WuklA zD@T=4;f{$8x(cIaivgat!mx71y}~g?@r0!vqs%bT#f;pcAT8If8dQ4tcEPbuf7LrP zcjEh|i9<7$Qu5`!DM%N_xpM&@lAK|v-39QA`D7loxlo!hX?6Nc-I3zxi^J$G*!K2z zM4;E`tuotsi8jleuTK1yis5A@I%W8N!bm>~l z4(cU@*fYS_?gQ^wd?2-|Iz##(cQMg1sPFK{8E=xKvN)36ap}&= zed5ZH)<65Zaf(~uWGk;XUrOm`_80~X=SqIK3??&lfx`6!`pc6T1`>lD%&0t(IsSYn z((HPpau&_O?!)u(*BQQ=`lXHtnQY6tHuy?D#g)U_@YS5J~m){XH8 zDBua;4pj_BFYn-@UhL&JP>$$jsg%hHc|si zy$_!Fqu94|bv^!%I9VLcS3|r({UD4hsv^=$bfmtenfq(VTNJ}Tf zF|O45p)%7zw;Ia+eo89FXx~;1FcNuV#|<$b^A=Xg#@R#or7a0F%XYm>Do>1u+?(l@ zrY#o~B;@_ZhLUN<=xtRh-}&@kixr^t+PqQkPvZ#7z6GlK4Bs7JWPF%y4R!lI)tZ`L z56M6UeOU9|!&qJn=ro_9%eU>MFmN8GE0pC9x21{zLCcXEjR7!SBt3Ac$%QT6=EuWK zEG&boU87i#52xdUYXamnU?|0%^)Zi!GuE=DR14@HV-_!HJ{~6RQKj_9;WKoeLB|5> zZR&jl%Y&g%u(ULUrL+1EN_$IB8ylHU72}xJw9~Mm!)Zedzf81UU`lt)RJx~xNu;~& znt&pPG>hgQag9(TN3ETbpc<^-^<83^6ZFF-5KH)dZT}VbZG!v{py@qk9ZQRP5$oHu z^x`2H>M8a|&*B3E&h5L>&~@wW=C^tJi@Dbk3{O}*+Z*|o(P&_NOWK_r#)x%eYhQx?}zhcPnEG;{QE1?jYa1k@|;iSYa*3<644Ia zqw=UpT@r{16jxv&VroIPham7ERxsnLGVkk$emfc*MX+FGSfWU2K_;>nWtLHjnrSG_ zvKU`7nz`^c)}L{L54U)7+vb~I+sOmEywZ1u!b=uXM^EG^tH<4=dZ*J;B|N`4)nt0y z))cYMKgOHH>^}2R$&aFB0?aHD#rsiHl~0U`WnPWOgs(;L3>jJ31uyZHS@D;S?ju#Y z7tqLF6tgzU70m%w0b;FSTse;B+No2=mn}-viE2!9Z3UC<%%+Z)whfLy9=~pIM!e6D zXWI4ll$TCgS^t!hAznV8+@lXc6%;Z|1-2Noy{3SLglbZq`Fe{$8Gl78_U5OZ&f7ty z*hkZ68UstEA_;F_zIB5?dt;3ha)F_&b0BXG%qJ>dE%OX5?V4IwE}n%VOHkG_z0ipZ zvtGHMvl3elcaEZ_tn^ZzsOqBzk5cF#gwSuN`$&>0&({I>6oRU|IHvM~<{?T)9wojq z1+1@};H+;MYp0#=F25TX-8tNXQEc;B`W-u`;d0= z)VXb{WFfhQNNakaB(rl-9`vycJ1hq!B0cM^^3yNr&Q@V~jB5gZcPuu9zTe8*u&dwu zSXD5ib8w-tM9v<+c&lzbVT3&jJGR5zMnZoGRj~eHq--7gb+g0m<+1G!>_;*qh9fBG zK=7cG!!h+=Thr#~W`Sd7ZHH|?Y~dvS+Q6u$n}CqgAUVeZsJj3-cN?cqGO}I`fDsV8 zkdEKFcF1&8A0rokPtyPv*OtB#tIhq$8>tTV*+$72dd;;IkX%RDeV7N zxzUoMXC|H*Wi1Zx_n)F29u%EWf?xC4FotO@!hxI9p4^|V#?=kkmRf09*Ld<@k2sCd z?y?#Ze_RbY_ytyA#rA^6P|E8K%-rhmuju`2N-w5C4^blp(wi~eT&7KWuwQ;+USy)g?Ww>pY1&^ zi*_CLa+9%(ogAD=Wpt|0+CMuSoN_E0#MF7%pZ~tL?TCi^H?CLYsY4WG~zbja2MRJX!bbSk}_Y*3^Fcz_c*a9ZiI_{(`c~VvRccjY zbq`ZnjURM^>2d2^A3-i@U2-A~?&)!{{eCjqp;JfZ!TW8=2e(tAq{F5vo-fpTis7lW zOEn#L<M&3mlm-mm6zrID{PDQ0bzTAFm(DsjqXj-rL?z!tu&>~h42v>r1ST$)|!M? zsnqI%^;SaltAdTCt5v&*RFopxJBsNH5EundQ*m0q2(EO%{JX{ zDtDs7G3j&RQs*Nj_m}tPXYO& z+o?ivZ7E(jC_A|beD8Z>S|A0L?ptDa7elpnv*IhX+w)OHzz)kh3t0_=44htYCoa3^ zagWe0UDo8=>6@seeSf>lJ>?_q79(>{oRKMD>2j6wxotOKK`ej;l# zxvrEV#-0~T;rDmY<}D1oMWR2(tzIn_d~A{W?vclBP`5LW{ zZZe7LW{>nDA8S*b-cw1O-AXAdGxcuov!|stIt(R`UXa&W+}aSb0t=_^ zNkP!WlL&CYlV31zBG!6iN2Q71pPyV$#x*#=zupPLeIX5`6Prb4?#3OqEj#EjHI0PL zdX$zZhTteJOgDZk*tB%?c%tGvHl=KfPmP4Uncbdm;r6aJ)q&~o5pr?@#e3+5ZK3tb zkZ(W58C7>0VHLd8N2~bc!yg=5DG|D2nI*c~$dfLh)EUt{h$YxxV1~{pZJCF2c5RY{^4gxe7zPA*!_V=#~98+u&b3ZIz{Tc7ehhze9fqJ^20SDXZV-z=(g#M36=ix~vMB3I{$0czi&<@i zE2CmqL8NHu5T={zjD>Pcicf)HZos(mEAJa{i6ck82Q_)YZx=>zo ztYUPhOklPpsQjX3Ifs0d57O`-9u+lpbWZ1CS{+QZWn@Q92gH4Qpxx<@@{n!ofBay&~U<7=BER^0|oT?99ewTOwmyK9`hEO2UF5SrYD=5NUP#`x3=r-@L ztr{Euv=%8@cS%E zEN%b6%)o?%IrSW$YWA1S8BsXC-`dq0Q)j6iBlRDYiW#){Yx&lRv*V!o}hDnxn+0yR+gg;IRt+uj#t?2I( z%r=DvE9*03#wmdhTJXI7gz}LZKbzxtLk&qnmSz94#OgdJq|Nv6lT4Nrdl<_c4tjA0 z57p7UQcP-sPdAN!oaFOv%ANVBq#q1#QXcubf1C-}Wz&*35Tj?ZPQh`oU{g+z<~&rZ zUYED<2}*1}LhJl{@__@`0Qg#7Nd4gWbWGK0zLMUTCjcR{NnZE*>vA~81^-U^Lh7W&+OerL|6JF#iVSw;GwmpfNy8BVZ^kw_5CJ!rp;5>q8A!f?B zELp7X0;cvJ7z7o6BM=aNtpz5aPT{0WA&D-5CTl7lO)jWA8KUy12dk$j#w-|;U` z!b4q!7h&#}(bW22R63{p0kOxVV@Z-+VHqcw+P-vLBC~%Nd@c-CI1xAm&PJycPz`y> zzBmd|70j(2AAdSLuuNp(LsBp-6iM215*dX$c@08Fu<3}D7!ac2dBr^|HxyI~V$^eC zI&k+~IC%uXaS^w!BC+vwuS1giEg6^jUXGhV-Nu-HkNJ98U&WY)awj&fA?Qhn6P&mL zew|AXzV`?s`bzKMdeBGC%I_RsukF=U`RH;}(+Rudx_`D9 zde|st_K+j}aZV6V#SXg1_>;JREN9f&3rn0duP$Z#$QB%xVYh~>E zB(-L>w)_~z5Dyl%4y?tK#6?|V@A?jbL^0NPF%LAQLv!ahXqb<-_Xx-f%9pf8T~{SEm7pV8<-ub!#nZHF0-S#CAHzaO^HsMGgc0s_Qc zpVO-m7v+pa(ZRWnrx0Ga4*T0=$UD?Ty>e?JVBRa@4J6fq7;bcGpodJ#mPB8fM1oK4 z`b;8PC_V;f#)T;Fjqy1qb|Px zU(5497XRAdnl_ik1+%xQTLnvlIjIBgX2ENnPGNkXCGyvKLgsi#O(E+|DYCjd=Bp^} z0UXw9Cr>gS;foRVL5{9~0rKU?3}SajR*3NV*da_JpWB#)L8!~eiql39w~@YDu@+?5 z@5T&u9u4XZ8V;laKBEkVX4GZ zTKH^3LIYH<1y&w?G{qanP)>xtZ(i=RbuU<3uxf{Q!sMIoYJTjDQlme9c_{?Th!RLK?9~_^uhV|Gl$9a^rcTs;Y$8=&sGh|HJn`V3T@zI!mu>`p zK4onPrzeKg@hy&T300|YQwAf^<4WJtReF|Z2zYL|;8wlkDCDtT_7nMr%)o_5v)+38 zA(QJgtS1PCplQu367t0)Wh2jt!dJ!B5Q9XqF&antxZ!0fh4LPDB4Bo}9<8}d2=#5V z%>Hqg!2UEEZ7}U{fcDy>Hfg?hQVnU)^Ub;kK&&%yfsMdH7L7ia)snjvM$|yrtS%efsVz%hT3YNySh&- zNzSDQGfIeSB^^6d>ymPjV?r4VD?RzGAoNB|SeA)Cz2ez?ax|=ywItbWi_?FR0mJkKm@Z{*XT5; zYP6AQC$Na}d}b*eGjSa3SydE|GVe?rmF|kf)2bn}a8z#) z73)fJ{Y@zNRL6Xbbd?72zWvG$mb>D!Mb1St?s>y@hJgszB2@)s<_4KfA z@vXG##mo0!VTdBHn^#z!4+h(;FJg94&gr;o;qPSP zs!C_bYukjA($T)uO+Hxp_LVCA3+=x7DgPXuKhMzq)W+U))j&ivcFz;RJ$3*dM zu+-|sjP+T?d&TSPLNmv;l-cE;uSpwkJG360sX$GO+I(PPJyng;S3WCiscAE1(|Z3- zqHWhYoHdbSw^$pW!;-Qr!@4%+7T5^0r;MA_lG`CR_Ww_!)cSWvnzNkycB`-;i!Ctqg>NSJ({*QxD^eIwJ9tc?fF{G<|%$ymy_7@?tXfd5yW;FI)XYyN8D~E zQU?P3>w4f{zu@@Sj(dE^aLEfgkV%{`Pm@+TYgi>|_G=#KURk(}S-M?hVIQ4!C}#3z z_AcZw+`3a)kv+C*SvZ^gWC`zBa8Q0~RE^RWlGs{3J{x0A>>H{ENip!9k534zqD8no zW#o_NSvbO5PLW?$2A5nWa^|PET@|wGJ%2)er-Tor@Z59OVE&MY>hH4NMts}pwDgf? zCEH4Bic(mPYCu!_JB!6ts|tG^$KEAG-LiqyBD(mhiAv94N?sdfMs?sVBT)Gg6I!n~ z5d2yBq@?{V+ug4EyBr93TuV-qHD8(dP-HbPJCtT`b=qFAf6?R-$Sfits-kIF z2u9`G#$8S$4xiRyf~RdeDB(!-vMZ)qWvM{leMIUL?$mVpuBY=>E++M@Atj&7lf55k zpI+F1t6)iY&G+c{7SfjEjH-iUF!$kT>SH&7$`0ODS7Q@oh~Nud1HTd-j}5mwoIW~- zK$r+_rVJ<@a-a#G)5}0Tc{1yjh>TA~2pZ|q!I-iU6&Sk+!BU4=g*|{Y&k_$0$^D_^ zmDOUg9OET!tqm`?sgh_i^l-AAj4C=s)#p4u{GX5S_T&V;s)S0`Qk^oSdD7CL`P*9y z`VnfwnDsVHZ;k81dVHQrj=5*4DW{%Rv;WDRC9G!kMw5RfLO2rQ;@gLfjPU7ot?Ad& z%BHfhYqqe?1R@Hzyl@i~#mp$29q45c?$xK? zeD|JjGz3(?o0;N0Y`2KNz#Li7*>qwXVb9su7YcI3LZ7Fz9|<*N&@V*x#vRmP(Gl!A z#7U{UgQ@uR)lX6hWvr>PbmDRida2|T>%w#R#p-mOr(YqIJgWqWe**D;#x4`~0oOXy zBEZ_aII|J0_b@nzl%jlujvH~s|M6%+r^HrYYMQmiaFYq#vfq#0{N9$Wb^uk$Fk-1m z{qspSw!C)nNTmb!m|_bDZQI->Hgb&~o*Tr%tJlAHu73$K2=w!-KK9!9nb-Kr4laAR?Z4zSZ;~qJ!1u(%^k5Ba6Al%)(FEckH5iJP!z0?fs9Jn8^q7K~aA9_J$Dp zC%x#wuw~=#eNXk{#b(1tJe8^+@VjNcO6_l{#h?ZKLc02s9y^%NFS7A`KiFn@x;$&! zf0RA=yzlQQPyb_ZI_n3bEx#tj))97xiJMe$W=Zmi!SxiP7XvR+|Da}H8 z%5tUXfM@e;{B4TJ-sj4iLFgWOvE}zfLnz;F{s)MM zBEBP?gQ1lR)6#OJUDy%xnJRxeGFV4SjIF#fWG!0neoq`3vfP}gm4fL2rFw&9Cy)H= zoCR+i2EDTO9v-D*QUkD==~*16zb3v!T>W9=(AKd-Y2Ln_gNm@2!dkuO+CzUQ@j|Z) znia7IvlX3X{w=|H`CoH~lB5t)cU=4L9Gpcv*Q?y4eETpC!=LX1O#^*xyeOE1G$t5J zC9&~pwM!xM6PEOOtmtW|(#4vcD+#(s|5?|=#&4UWMU+iE>PQK>Kc0`AT2y;rdqLo^ zdImH!HHE@UQFJ5^s}}xHI(yQY^7r*fUbm5EIL3`-m;C2g8gX-vGzICW)ws%LA#3Dm z#d;B}cNMVsGV^2CAj%hv&!C!?7xFhook1)SA534Nmt#dvTQ+z6xn7OE%@H$-Qnc}1hbBKFIm7XCjw z=@>|V#?Y5d3_Xye`-}KW%6mF79)WW)sniIbMqs zUvsO3tIj}rN;zV#ae~{W3&k4J>}*k#FZ+a&e z@38%k8|S)vvz(Yp&?Z}@EF@M>;*nazJCs~1!*vFg6-4PAbdZ2xV6Jo)a{HNS_{1km zx(otxi#40p^t5KTi{w9x1Nk)p1po&TELM3iXH(IK^rO0H1_}ic)pwpckNrvH!%WsdO#h`{_v~Tg7l8o~KB}X2 zD(i5~@>!27#%$u*d7dA1_%Xh4l~;i+xj$B2wWWrS6&$U1tc?8Y z&QF-y7%?1~9yO%Dbjr_r*r>Vh^-zVQzEnc-^OVM1Jzl29u3=+8A59y?C$CEHTdGK~ zq`CL=!UPuqk*cJ>KFrL_W_ASC@f0-0>e5u?YaY~8@m>FAS-(u`TVyt5s zW0)~BzsGsg>Aa`+ocex$e}4aaKF>UJ-`9QJ*LGjqeMa|I9vfS6g>>wH=2`O!TxAZO z&4tAO70F1DBIfFCho^D7PAmG;Y{BHq>xmuUyRszSO0oM`m17rZj{B~e-3B8nN_}1 zu-tYP>+JvH)kQ#lgxU=nwvs)yC-W3KcUOQG!n|G(=RpJLRnx!BO>ZFfl+TujOk5Bz zEG)dbEdaP1pmmmhG&3`^`3iLS=0t8jJ+K>sdVHu!_b+vipKt2{%5x^>Tr{I*Xu`~9M1^=+0epvax z44$95sTUlbN36T=mD6Gy`$cIKz=klWkqB>Js zPx{&azNw3!{FLLcJ&<^&AA!{#ox(YN@bf&s0PW+LrT~`Qe51vG3&H=f7vBN5?4hGu z$j;y#dcc8(VDkE_^~=;{<`Ys*$9bsxLhpBwkIrw;{?U5)_if2XZgPkvRQ1-NmV&z{ zWbTQS;wz%uke#2;q5(f5s`}NN-TwyGcliEz5Hzubyv`BwJ#tUo3!|_Om}6emxP+|b z4{etgSTRUsNj4(lcULaq51?_3Q@lI`@9AXXmU=nK%1&s7I^gFdj(M*(1?gH%S^Z}8 z{35XIM}QG!M%ai0%I3II8wf5WH>K6rLue%cr^s0y5W&ik{li)HuPgk?KJVkpx1#U0 z>+*fziSgwcMzo@Czk3mfaW`F$><(WU@mxy$_pSJmqXXYC(2vB)9-ZML%T`TclQJ@z zG#8KvWmjUxE0cH0zd0B|fNv2QLUtztHYmwS%AxN;XYPl>tchSRj6uNEN^81l*6#`k ziB5nN9m>c&6%Klr_xY#4aGVjx4V$F;hIEkC`>`d_zXjr15HK2Licmg> zQ*m(cnKX2oPM!N^F#d?1e-;+n2ljb`9$VjYmh}ozg08gncjmgZ^sa#0hOUb#YED5~ zJi{h`Pm!<-Z&J$uH|D){iDMG(^@yB{PZNh}6P|cil+)B|2k$o7l;2u#)d66^n%kIX z#~~H6I6yRX^D0B!*NZEhM5V4TI30%n)vEi~v8MoY9$szr)R9=OB$r#A*x(+6@rrAm zup#zY$X>mSh{E!8{ZDJ)=hW@M4-m~x+@_R9-Z3bvxC#xht0Th{fvSM#e>pV$Z|V0P z$&N08{me*;!~1n0Pv-7KGo2id5|HLeGXl&Rjb?o>o`&;32jYKnbD+=m##x^yoru0t z_wFeJ*$@ZCdpGkcX=jDLB5C&PNkI)wOXX)AUkm=G;>(`|HimzMfjIJqT=1=PFemqL zCne239E^%9^*WDRP;x06^0_%b_?qE=0{3(B3@-&-7LSPSJ{7XPQ#jZMy!RigS5k~J z-8-TBCB1d#r-J2w(!Ey6ALC(==CiO3cOc)}>z=wB)IsQLD*CszsR4gJwHuwS%h4t2 zm5^|nbx=|2^#HnLAbfiS{Q-En`%iwR_6$--dVR31C#dPZKxXNAeo6s-2BRwBc9bUjvFN;cT9u z_}?Eegim69_uR3Ud()d*fwMVpxwTt4ZK-X1!igLeQ|k2q2T<&py~jO%Ps{L~9X%1) zc-0bC#4%12v?4lnr+g;U$B6T!2ru+Oi=-0C&)izAjuCeccqCr=Ee^0W-#ozE%i#uP zI6jk=%2$av(DjjCjz)@gXk=XZ{&gefpHty?p8VUx2L?g@;Njt!-F~pZ;r8M3+m5Eg z9G?*Wi>v8>V1boO-elS02hY+k0bFIm)Up}I${ozdp=rfZ4b2>dp$&JGqHoi_c1|x- z(+ekdXxKK*yANtkZ@8;tU;PcPf8h#CF8c6A)dz^hsa7HN{Md=yFNF=6&4)B>m7=EI zY9CKeh~5(WJ-eKKS59En98is3x-)y&DBHh|;^`^tJzp~+$EBh>Qckn?Aycg-}gC-z^#J0QOJE8F$hgLJn3SLIxR86EL_6Qh&WlUl03hI23SL8dudDElZ}HS$CWpY{{p{LD{hUf{=6Xqhw6XEMbX+0kdtwVvEBQ{)J2bwgkZc2M|?$TxRAKA4j`~#NZ~U25eJ>QhFK6 ziB_=88X9@Xx?KE(jpDDc(+}Tp8e5LtSXDQeb{}l-m({~54qir-Ha*jRN7+%zyUARa z)?KjcZ(sOnHfa9tz9paLTMT%28Kc)WSe}(NenALG@>7b8EA{xpEXd)S3ZMJK_4y~I z{{Yzk!g$p(fQUG3QCc~!z~@8dMu<|g(p@E!Jdog5%kCG9yDbhCya>26uCKoE{9PSs83Y7|ob$Qwy8out z%O`OPu-2mAXBPe5aRa~=rxpNg(7elLY~~j>>CbNhFK>oqUZ}iD`L~_;?}7U)0bn^D zLkG=%cTcpQ0P^DX+^P8=Dx&^-^q+22)lQ%&5M!w{H2K?mvKdhkveCIM^jp{gK9-FK zfZaJbCL8xB(td4>=;MG^gHa7=q#qFv`6|4aWe+ut|KK~SQ?)&Xbzad!b|MmH*vwUE{W zrsxBy*2_LTr#4$5CTS3r=hqQi(Lb&CRX~^DA!!=WmLuV7Ylr7AGF$Qq3Ee=V=OYB- zkW8P&j`<^IF4g|*s`#E~BT`_vi+_dKch^j`UXEMIOiQ^zF3N^9U`C9i&?I zR16W4Hski2Bo0h>^qw7#L-F6jwf~K@|00vXL%Un%hRX4AhDCL|Y>`0Ua^F0gf+_<#Fi_|y#_ID)EzyR! zfPr4&_BhyWF_y1o>hzTQ;!whtqX`H--yJ1y)^BBC^bB2rUTbkdjI6QkKrT@0Yi(Ly zz`d?d3wSnkW7vn3(jm9zccu1k0*U(YPY?diw?BK6bH&nAUz6GO)#@kQ?w3NZErMnc z1{GbpgM+Wu9}eN)&bG{c?Co)&WNf+a)CD?*7uJCq4c+A_eW2TW@^g(V^Rs2;@VFPZ ze>TCELHZ|NfEi2I_a<)hibK#f;KpE8%xdH0~_~o9&p-N;gzVh`sMO*{q1) zY<}abZ*z2u8Lu)7SP{dgQjyoWI}wJplAC>V4JG&Z@(}8g7LYWHW}O;o{z{!1i!SwF z5;2tBTEx;d%ecJlgo)3I9fp%Sm+dK=jdJ76+%Drk%_=^)J(-oBD0ah{y9XjL3w|rs zy=4y7?z1P_ZB{6_)iTS8lqa@C`#9W2>t_0FvESbp{+BmZ@=W3SqX=gG+PV4L1P`UT zR3HZ&CsUN_v-}})AB?COJTf>2_f#=9*mCmZ6a(D0{8-2Trm+=qVDjNeq1KZm^1CO$ z$jyQmEpq^Fe#=uy|9-RSS8AlpN)JmhG4Tuxz0J=&!wi#epPZF z*?wh4;=eMF{wLMSiYwupcThOVchUVYt zDMYkm7~DvjDVl|&0(!E+_WhsDXTcs5hkwz$u6jyu8+yYT++zXA*w!f=g3f6EY_A*L zLRf2eo@O5cZfHIsE5NmN1X@B;8^0&8BUs z%62F8gTD=yZ$QUkg;+Hopu|?@bsG+r9F1MbE6poZffUc?|CpZePdvI)RKk0^YrtDx;kv!s=dq2tU&GV+7oyzd4eUtUK)RNf=+cV|jkPa*LyK zV$N3R+yi7zP8mnGvF%6Uf?vcWJ>XC_01Sz~O76Lt5uAT7OO_X7k6t^_j9LP8({Iu| z2WetR^sU@l6_Bk+I$excWfq z9wBZx7Q8g50sDNe@`d2?PFBN@x-3xV0DEyd_3Kv5(K3hLmtb?iw>`ZZ?l52ibErKs ztJdQqxa0#QOkFL61FCw`=kDF5yH4X2GZRv=igb5~%Luxg9;x)zzCETO;#TJ?cE-Q~a26%4=oEhn5aPiq&iG{5 zjcg2DrRXPXnd-c`o4tPo-EC1U`cK^UU9M;!-ehzKHixIe?SyCT21*C~xD`~#;G|0s z8Tr`n@gqw!`T@CF!VK**IQKR&`VPwWRnqz$sJ%)!>Fz_KtHSl-Ez@bsc=#!GRxJVo z)6jz^gRU}2Wt)1peJ#L28?xKy)D|vW4_!iK?i@IB#~MUQ_?)7uJMS!7#PVJ7{mYW_ zW9hmb%9mquD!A)s4*BcY&pu!hv*$t7Sk2oEc;vojp4>X4=LDYxRj=Y!OJ?s7qds8q zslUk0<9rgm{FUPLFI)_iic(+tDdp>fneK_6u>arZa;oq(u8u~IkU;#sqZn(*%8FDw9_iicGf7Fj^KdT3NZ*U1i-68R4Z?9Qn76{+WabMA9RZ56)!oVfsGKKK9(Ixw*K7!Gqqs zxfR7*cJX&^{@DY2G2n)K`!RRxuyOXKbKp^L5OCcf#v|)z^ZtFAflG&ga1sWRZu1>= zOuK+SgVHcA72kV-3R+uQ@*mBXvw!3o!$T4F-*WFaov$w=7XyF>`OGB~zvdnNLuTaMU(A&VKMOdd z=|35KPZO4q4^*rnzumDAG)VW0**W=UfP--2O2YR&2XgLg?d+OcTC^_rQP!5m9Y%PV ze^CUL0Z6JP=qqilylNXmiPK>3XHVd!uI;_=eleM(ULRPM88O`RJIy8^&-a+^wH=rT zlAW9Eelejlp9(m5(HPa@t#X_|k5lvj7awGI+#h= zmg@YMVZ%)T{Qp_20HmoM52PQK`alL!k`1`M!JT_rw}kpX(?wO^X1+mdUdO&IbrNVn zx4S||M<>qI8R0=4e>nP!!PQ{CW$0{o`8!0%m;k>=At0e%044r5pB%1lnQ=cy_IIf^ei8^gMEYI)vlggnZqBhE z3GpkZtPVB<*9JfSM}qn;ck;IbAjyqtmo|PIJMi+pKT2T%Nl*^lmXwGM9!T~HF;_2$ zv~mt2ZK?6^fc)%1D-FQc37m}6mb3-xxSR${Vt{MpFOaZF zV*$im(JjB3)@wk!I5tk$mt+P}35fXKv%` z`(em?JfiuIw--ASeI7BnKXF0eyTj%mw>oeMh==i_AZg#_2=l3Y2zm8+!)A+_@Wm0P zbJq}YPkzm-)C=Dv$HZik zvqk48-0k+0K?~_-==_|XUka^S9$nnCJRB-)rVZ9VeF3p&qep*sHmvFK} z)wM!D=sWKJY1q9NE#I{qW1wVYn1Z z!oTzh@%xwm^w0~hYWaLPkVvTTbK>}hH%n!DpmfFrsGMmcpuylsUJ%kg-IrmYLgPNT zi0;qb{YR;nFGl}dU_iFQbQEGfca?L?aA8*qd^l9%=L34;2T&76T zgWZUkSqto*cT&Q?wuAf!;}erkCE1n$MOGa{@3v3~6ug`xhRD)$c=6grCZ}_z#|GZXn{ykVW*W!5aYqtw9JkTndJcaR2F4!Z^gxX zqtjL0ftfpW82^u6YzTObX7W<0%{n0JaGW^E-zQ*{BEHTC8-o3Hd?*X|S}V|sBpB6` zg6gC=fTr45qiD~0J)u-jA}F*Q;`VO!!F<*SyXw ztSq>;Q~$5<^#jg9R~gq5V6cESB}zUSbUJXOOetYwCG#>?7xGs~mATh6XSP9u$U2}2 zQ;mR6luZCp8#phN`|gE+vdZFN2$pJg1XB)5w$Q=??Z5v2f{@0;J!%&eu(s}u+=zk& zkSF9oR266z8QABN5?3END6B(f}F=>=GgkNbm~i8Y={c}Z-fPf zvn-YtOT|-|Un7s)%BOC&auNrcYtm+TT|g-Djb7GQXlQ->J?{!+`$st{4!Zh(NS8n0 z`9HM1F>!BnL*Zo(!F`7Gc$F8rHr(`}DFKf2)8?T5F=oB851JR3=+#8WZrUy;?=AXz z-Hc-S1>4nHSb*B@(dL)NzKh?f@0LC{==cE z{(U-X*Y$@(saMieC-=LqF;aF+UOLaNy6f2;>N${{CUwz?DRM}7s}}%etR#g0ZWRA9 z7G2a(#G#O@NgH>3l7d_UEaK#?M4UyrHY_ffw7mQHjd8<;5rqF`V$FHJ*0nrga2kMb_NsSD8{ypc!8I#dp`9ihjmvDL~GJjG$aUHWmzR(YemBfZk+~WPn_me`22R=NQ@GFDPXpO zuQwfhlzk9ph15J@tIFuor5RqUAn0zIm>j7~@uQJ_4Pi8BV60l%?PREzeI)Mmt)#h| zN+hW_ss&bHtF-c2R`(e`qn&N1-*~#7!98Szzr8#p3^D;RKr}(yYtLN&z|;Kl^a|?9 znfA9?Wb3=oGmtKn*_D-$D0C!kJe0D|Ylm@lnf=f_af70DR~ahQ$y+X^3B8X$UIg;L zTRTBwvDgqkmb*( z{m=C|kQuaX%^=an-gz*(>0ZdSpgraVa}@tqVa%nG{w(7UT8+0Yu_IrkP>GZKi`%s- z#=UcN_wRqEHiV{*PfNs=2xD(e*h|>axZk{XG^IbQ=e*+j0!)&eIf_EkcI!d8knb&W zJ-(#JsGr?Xyly#Hh>S0~Jo5Q?ysU~{cYr>$LB871V|z{chA5)1lZZWT#LTBOSB&4u zU4{dYaHqVf{0v_gl)R_IKa2KBe07@}+_#r`#8@2iW!6A8ODcr-!ufWH(vxSc7@8i; z5lhzHbK_i>|+ z`5qJIMImm_qVt5MS#TXgviQ@8sL5SgAtlT#I`s*|uTI(Ni9R<&wH%>_InPlyl!^^T z198t2&gJl)xrVPGVoq8aLLVzB6s=P3kB$yHFi2-ey|#-nWAR==QK;2%&&ZiFOAb{^ zuBCYJQ@JqBJ;GjXgrW3}28_d1hj}v`MZ^6TlO4HXwo{CwjyKnBb9Yt-(eWbGR z%=wLFIoOIdBK65Qcd%_r)OfQciNKe~uRtG~`_5b{2u>L`+v~obS5m1L@zE=?8%GkV zwh-WjJGKSk$C58v8Xb{>=N{%fMWSv7oV?0GmK z_Ts~_K5ndOf^RF7Mq;(!hJsPsTAfo$5a33A$c-p0p@}T?O1;(9-6OeSeMFFU`R@ML zQS-NH8v-^f8|g&G>58Z@eTX5?hRI{0ikWDEP&E}S8bpUQ04XGrENEHnCNw42TwW?{ zVstJxKo)=cYEGpp#tTYK?r4UATv)Om+dap-FP}KUf61CKg?4_>9ri_E z#9Ngn(j=jI(0d2h3Ig0t7Q}|l7V$3W*NYYfK+B-b4xiHD2A#G%<;~qM3(8~SzY^^l zZ#%aQ0!QU$NWBO#M^vis;T5qcswb{1^xO29~!`n3@)8e)U2@ z>M59yB2#}JCC=&)Q{R1U$&OtTA}9~4I(Bt37!_ zbg-I@ne- zXG5Gi-P==Q)R1%o>ub7ZO=B>JU$|^{x8+NLRx&S{cRKfSxZkU+;)vG9I~0r|RFzq^ z7lhCXn|k8cqvnW#zqO9D`LfY+^-b$gT|H_Aw2e<8Ny~ko zK==Bii8X6x( zP{BPzkN24og)8}uu}DQywDex?88;4v?GV>{kjW6~GV3T7p-#=W|NNp+&kg?FNo ztx2aO{c_Ho6MuMay_(z~&;KRRQbJ_T^PB_oq>%+-Uh~90xqPj7M7=8Xy%~5{VbY?O zJl7O!!%Xd0L$@CB7HLb=yC*UW5($FXf<1wstn;58?KX3KYjY;-FlCXwS-9u(jRCZd zhcZ5e!qltlBQK!OUp=$Hu+Oe2+VqvRoep0a*M;8r5PN>n!&k_G;c;2k0@tm_WxEAA zFiI4KPp#Ke_dHu38hqfgd(v-eK)0*4#3`S}`K-Lc(nhsX+Y+KD4*rUdTlK-@M?P7F zGVA-$4u!iAk+qe^mqIAD(3om>>4Va8uF7Mn+Xf%C`YDM_r8x^Lo6M?63VU5(BCj=` z%;~*`-P3w1nZUn^GvA0&}-qpC~BmhSCKw%tJ-=A*JnT6vQd zT#p?sEnDNVxmM`VF>cl{jlJ?Y?Q-Iq!B2B*bLhli^6s;>R*wZFup$)-5$u%`Rnjas z{4Md(eyf2?!zV>UmR8#09i^48YExbr#pSF~?k3)fPi)#1UuBue{K%_e2WD?%|73wE z^LqKa@SCwZp1AP~VgdOvZwC+7TEloExdwwdMK6hsclFQTmVBRl#(ss>Z<)IPdR>#4 zAojiX5zD+oo}r7Q#89%vwiJn67t(~+V+O0c-Z<2&K_zPKooarNS;;v?5;aQKPpI1=72P+ z78m$hl*C1U*wS@{_w)V+l#!X&_Niy^Qr~1BxuX2KCPhqxlaDuEu3wzO&nvV&VOh4} zPIUI8B1&u8HV!mXAnU#ib12nHyB;qlpKSF0nIO}7EI8-=t@w#Gl2m=27S&RLW_HKB zZW4}4EH2jBkA$|IG3vf;nXRhY&~O2_Iz7E{U>}5Ij++@HcyoKeRgA)mrwWNV$()zr z$1tI!B&n&_(~d=9$gqZK;RtmM$RkEn{$*CpY#}YbUzn2dqKtp%uA@8Ens#p_Tbs<~wEba@a%ocOcWiHGzmryBxHAhEHBw zj+c69{J!2}1?E&R<*P?5!1x{v^yCYl?Ys``K)aS3X)Xf(&D+eF-rYb1@Dpg*|60@8KTSSK8owA3@_QdQ(MT-pK;YP3m@Yr>fdoMebCV6JR16b0qcC{{&TCZx-`;8Zj@5g zr*KWmllqH;T`ZnMcq*Q_R%I0A_-^467Hc^;E_X>J>t=H%(1N6C>EnnHNe}vH<+H^C z2F&k1S4O8GQ9f3a zv0n6P10ujA)jGTWGhCj0Fow8&d&r6?+f`_UQrr9l#qgmXKF9+j7JYGtXvr7X5AQk) z!|!I9t&@cO3anCi9`$ULx(B}=|C+WFYt`uT;iR2a=akMqE{%v+MWgu+^G*z`u*W;= zU$?7ynLM2^VcMo4GAP4RVN=w8Zdag=wG1{g#yKG`vwTj?icdNGP_3`*_ycwuMd&{?#6+#9IM-jY>m1)ZFSaMqT5NXpqEQTiua-t?Z^56e`EbPjxM_W_>H1JhmmV9qCZ&eJhGW4Sihm0%)m^!{J#jEKIs&(DU(u zC(aQ&>`mqu2;zw9)Mbsev|GALg`tOu#CGKN)MREW9^!3M9)ZI!r2@H5J4?~SYUOx3 zm`=?Sb}0Dee;IkkvRb!>do+5JEzb{1joempr$4e@(hOZ+lYQ}6m6EpD4hj3uNF+^= z>OcganRMpks_h}dWoj_4RcaDvj#N~Eb7>-T0@tc38`*Dd&#N~X=uLGdpE;_>XSsB( z_DL-o1nu-i&`da`s^AFP*_X!5cDV&}h4qW(MB3r0Tn4QQp7=$GlbM9j!v1@y%~lr8 ztXAR_@b*Ia@#IV%=ULv3qyzH`KDeWEpmhhk)s8QD&fq{g1;%+4VVw!{rgSc}f$03i zn4L-BQ;8aWm?Gu>fZ6=QNvI81ncjm(_+%Z-Z8`kdJyA*Ou?5gQ9+M$*6lDaCKTA7J z=oSU%>!aFYWE#jlOSp}O$u&G4eoKXK-l>b~w*V^NH&P~5J)p_D7(iWR&YvEduf?!7-~wpwmbKn~ zV%2?!+^YqeD62IRB`VgDzmsJ$t~#cW+!lVcu-= zkt6jx49P+e_xm(oN=KQq^K4wH;%MKVIFX{x2T12`tl_8M!Xs~{tMv8mujQ?>Si^|?5>YAGGP#^omQz|P6o4MlT70y$lx7TbV zEHKBs`bi8#ECCTIa3SonB<%|%@nL^>vr~%rR0XSR2KenxNcPLmrW#hA&_nj{w?T=$ z_WU`*Z;n8YKQWwZ^Vf}cp9u|!`jVyBj}g}k)J|-`LG7=N5KOU#=(w&f9ps2&>8<_S zLLkSBKORTFq1H!m?|zoCVP6#+s3#0-8iias)gbVkPw`v1lHn zD5dMltfRBt8doz3<_N2m=Rm$$i0{=Ln#znDFe-KTMoU?$MRp}Slkd^uLVDFSm{4k| zSfH0yO;Jb1Q?j@wo}UvYs+z9^pD`VZO789o^*)_DLyjOeehK@0pBjaX&xE;W$?8Zxrrt~lW@`RWIpVa@Oa^m(&cH6cb3SUe z7j<^0gI+rKKpW49CZ(X1mRD`3nOr}QcV1FNNj2uNt@a3Y`1zLdPBy(!auHG~z*4hs z0uGp#!ddqKg@xK_^7Z)vJK%PToSQSYxOxZR<|eQ}e?C1lmcx4X1XxvVhIg(pOmp(M9FN;0 zB^djINqj@V>ge)S=~Sxda%69i&&1;Z)lu~ackl#n$YlAcP*u&4*`E4`{Y1Z#)e@-Y z^aH^&xNTbP)*`ku`Ob3UeWwJt=FSu)j)3+E}e>I2lXGgAUVd z5MNBpzm&H5OxjWM!5T%A20SssOq~-Z22vXVIF0x7ejSRQKzB6dH(FdfuD~^DBhYm; zY+{e2H|X9YzfM-6Pi0zpXm?|-7llmfI|sd2$smo^?d{T6cft5K2pXqO!Zvavmqm&F z!cwz=?uWES3n00e!=rdggTM!A+2wf9!IN(lPqYs($~z3+T7BB?=YLdTD(8suf>XF< zy(km}?KbBaNkNUBUva-P&H9Xz4qmR6z5UitQ($*~>DOFZ1|k*ud_>ERiITzS|y&6VUn-+qjnGXjDqgyciuA7#WXA>N>vB2k8i>WMM!JmjELN+Pa&hD@uYTeXpfJg zIHykw3q6#UUf!3N8T%5VOS_w2546#LjK=rL7``p!khLp4R?$}r z_(gAm33|6?ogK07=ONdpkWwNF>*_f-&}m0ylF5j>;`tIK=T{;1NW@Sr6~%t2dwqgZ zIR5VPYWPf{SX#NIHT`4gtUE86x**1AP9fO32ubiHcJ|3hax(~)JUiu#f%aup+@=>~ zaa~9*M%yB2{gqQmninbpT;ml<+J-rclN9SQdgTS_l7JzX2ObC7Y8h^$dMvMkFw+`B zkHGI>lc#zaa#%(_r-2x@mw;KB?R4CZ`o3nDl{zp>id*=qKl_2p@_<)N135mUnN2c@1-KI2^->A!zoCP^Q9CD z8g$@M*9no{ubqir28L#OsJ7OuzIh0OHW+uP0M$iCy=^CXP?5A|AJd|)7F1b4TwbUq zXol4sNhQpt4YOPuWE>=86$}~QKWtZG^c;rzgd9(Eh#n=#=y?Xuw?kKU&b~=`m2cs% zZ;SRgdbl~)hquJk0ZQfS_;A(uO-oOXj4tz3c#H?5eZ*=%XFt6$uj@xS$MZvI9T>=c zPlggYLIyh!uKK}rtqTgX>dR}?_3(afv3j+q?+qBS>1WLy;v`7tD z04cXJQX-w8J>nTsOSIqx)N&HED{It=>d;M-X-DPGam(X+D!o%3N4$>f4#4B^-4y4% zh?H_SWP^iyrC^dD3K}hZFg%2Smoq>JyDj?gnIUOaXFfROIX#d~*t_otNWj;jW+#0& zDK|9lc=c&jupAS{zxY-xcVr|(Qt)sCrD3R30_{h`ig)huqfoO06FL1p-(L7+F^hsw zr5WYd=G*JYWKiBVEef@Oe%xZP*qgFJE+#BcyaW#<6q>`J*#_IzqL)b|DI#v1;ttCY zYtTM+gfb?h#aEJWT=v+AOVx?7X>ZzxxKsgV9!DeO!sW<4g{or<^_G{c-$?a+;PUMM zR6`vu%QU9kY*%hNbLI$S-HpcicHMk#Y}KtS)|d=Oi&rI+dvyxPjXFBFbMVCa10{0% zJ~`9IXo4O=>ql7ZGJCbdcpOm*SbjQw=-bPCzxZi=)oPpEv+v+eFy$31Sd=$)U_B(f?O$TMAoU<^Uu2>0_8@H{BsP>(yFfs1-I->nn{OY*G3y0WwkQh0G z#?`efV~hDz0oWCSLg@Aq*)@)drsq`W=0Hd~G!@?)bu*q5zMignX(#)YAyQ6PcbTbb z&R%Jbb2eDA%>5A%+mWl3R)I0R)-{Ls&%EZVOwO^IY&SRc32?WCJa{&C>?JMuF;^YD zozZ*oXlAgNdSN5`c9*ip?bbK@rF>;wo*CxsId)*UCFBky>)B#;;S=~?${5=1CabSh zo~7tayV*#-lj*8bUKuzIm8PcDG?1efDB6OQQ`MMX_@efiD-TgUfV1IVTa0H5Bh@2R z_*BuQCX6R<#bIBt4LXYLXRxyB?C%n?UvkpA3`DjtK2^9Eyu5T z@$%|4t~@4vv)C$x&#q^MB)8bur`%6tu8OltpA)LNc!>`Nk6*IzIVY(3sVE!Sc59mR zLTf=x%A?t`X>qY@>0d@a&S_cAvoadOI^Gd@Lvr-n_IuvRXueFOz9Dw5NHsqmh#t>{ zJ@UTeq_R6tMn#MfsbT?1id&1!aCb{=3^B8@a~ z;4cTNPaV)cdEZ#iD*)$lLt?(aSLRe4NlCGL^a zjK+2M+zTzMFZ)PqIS;9InU~t=?e_IgWjU=a-{ZbLQxi}au)Pfq#eB~65$7jmsSt${ zCaA;wXVK~@({~+Q50P}d?qH_a1`nns+j*yJM38zApAg(l-tctE3Uhv8;$L3 z@E$j>`f_Y~pRqKyvW=W+VP165z50Ee!TA!TY3irPXXE=ub~{_|e#MN?=-)M5_`ZI! z3ObE4qfqT2y;>QMza&`L*#s9Yq_LjfpVK9mPn0Q%o*u%?Ka9#1v#qzc^POitx;j1f z^f8#mW&MP^bgrgi;EhzE)I?Pzy-{Al1IKe1!-TzV`6aNoT_ML8Q25AWI&3LBbDdub zw+E*5b%WqX3?ZBH|7Vp=|J`XIehA*}Ym+klG(-BMmx%spQnIbbmgU21=fg^I}lX zR4oxlBv+cnZRBRXszcU&UOz?zj@j!D7>fZp?Li5N5IwObGcc`yv&~xFUEnJh0crM#x(fLY&B za*$A(UB&Y;ht79z7M9-Yb6TR$&+>80u-;HEB3_BA0u#!ks3gYgFLg-M+A`ZcxhXTQ zv|b`i5;>*EcHI}foQObY9`}9(UN4XpQWdrJCy|_;Bnn5fP01*x{I2&w$F>P0tddEx zpGv*-n8ULOAnp5Zm_JN($6hDy)% z8-m-84kbm)RyglE5_95<`~FqYi4*%fmhbt=ixV0GJY9M)9b-);b~E9b)D@xF$sQ8x z0r3eh=mQ74JPK0NtJsFtS&y=Qm)TJq=v%0&{}^VdbX)XAO$=%(q<4S7q$ge3c$(%ggW zNknf_V?Yl~K3tqIu4KHuh-MtsksB4-KIU6S?Q4h9T&6*{9^7wQ>!lolFFd?yJALm+ zwUs07;s)S3)3VKau=gYFW-W66+>?q*C^Gu%u+rfZ?J-C<3nIqArXHi~-<0$OHBun?APcT2v4Xcd zdH?pc!AXS|g4mmn7MM#Ss1-hf9D>RmNqXc$DxIyitsKAUk!+0xSgh>&hTq+f0;#>8 zYk3E(wyU(^X}wr@jHj&vEek{HNP(yom)13-$wF-z&(A-fHrU;8BO$9;@cmwvx{IcU z?@Zpe+TX>+Yb_nb@xgX`R4$8vzRshJRFSktPc|;XwuRMC3mAFR-VwU#h;v;)v&H1> zWIA&kjQhPC&EGp@%5?>7x4HyFd0$?3lRy5X^UP!3VTZ$2B$Jzj;OZLcCA8QoPmhp= zI*hPBt(!cZdE8Ne-R**7L`UOUZL*Z0YlNWfI#=SFNMY*D9QK^K@ec<>`-72LysxaU z-BEYvhjIW!t2A=TgU;?~`fU63xHp-~9jF;V$WZidYljVZH8MsNv~pbVd3@zaB)(KM z>dT|cI@x&PnNp!NZB?bfHz*ux9}I_iT|!!bEK83kbIjhm|D;}AyTM%YsgppJ@l{Wj z&RP@;i+iI;JZ8K<^C;)I87UY2n4~QzwqH4Jqk@zKIcMjabX-_sHLADHYys9Lf7Pfa zaKcA{7Dq-g7}82l32R1C*N{5Ai}TcViV6<24;}ZpP#H#mk+L4`2s-tKb+`X}>f#{u zE8_@}`K}$wp)Nge z^|>^5NgdxCY|tlmuQ0u^40~1`)hwfZ?CeVQ`dEET=w26B;hiiDib7^N{L1zD*M+ma zNG0QJ4^5N=%P&a{VxjC)%2bw_vJ0+IZuZh$OQ z6f}BtXnTA3_eXf81sHWk*piJwUSba?B(t?(gy2fTWa_ztLjNC4XC4mK_xN#9Ny=LG zEySmYWM3yKDqE$p8@udVc4kD#9FvK&Us^))X)@iG-Pvie^YIf(NT;+3^&>xHHK0etkz4L?o}F3=HL?u{m1ogoQ@?K69aP%s>T!>rz5bI;FONawSjRJa1-?tT{MSxS ztW7PFZ)kt%gIC21VN@P>k4B}YvENyO*Qoos7tmwP1F9l@6d!VVEJ_mDZNcW-b&w62 z4D71?SD9j`g4 zxC>*m%(P3pfjRPy2cq|q@KxWhkSn6D^o&nbUv&JiYf8rKf5fAt^?i1yhs~T0ujWU$ z`R{>-9{Yau4oAw*B6B!@ z<2}b8p9iIKX+o4s?6`^te?Gq|HXU21QI~U;CmeixXCL?u$=;3DwUqF}rIkIO z`I7j{Ax6BIYb37r4RM-Y`89vwtQBwbo2Etng%RtvMrL?Cl_`3TYlQo_eLuW$=YfD8cPhU3jbAz>v>E`?oX|=4)|ikFH6L|&IjET0)0iCk+Vfl+{fHLJA`my)U<`eMjQHH(v zdeWSQ1tGuIwIj(S1XguzC%s;cN>x;~{O|)pCL4Z~dv8Ep{&RTpSg^Kan!ATW6+wq? zw?V0FC>chSrTOM#o{&{`OlQ0t=FeX$^QxS|Yl(IKh!nEUT0)i29DX@^OaBw3n(+Rn zhwlAJQzVq%RW(si($qxoRb~0M#k?G&MW)BMw`?{SbMWrG#t#&%M~{~<$aLHa0rc(A z`%&W|_vTPAE^$oV3@VOZBHgloU8q(IS2GM#ZT?_@0Rf*^@TCsM1^xG(S~lf}Ad@jmetbn3lEH59ragx2sd1u? zdsc)gLK1V~LlWA#0l+!EV|VDoiR`NO3B!G#793{E6Qi*&;&gAP9oYTWCTi05Gks;v z2%It4JC8=e!o_k)s9|dc@3-Wjc3{LgFJt*(>H4xg*$lWK+=c`_{qM2%)45NN3cN<0 z6F#)1l5V~j?+qT(`lkT%tiSZ4o)3PWxED(ov-bm9xcOPMIq|Dg>p&ez8q?~(-fe*v zx4Jk*YeY&3J-K0jQiV93YkB4rjxyB?PKM_+W00_CKuC=%JRd~p=e!s0M|G3VMW6Zr zoj;fT0KNc=_B1D}8n_d>{I|7B%*kI0a75IlmBxUd@kKtQznNTzt*Z9-+8XN;1pk)I=Z=>M;avWKLH~uLD<@vS5@zm z{MZcmrD4#^dC8xf#?pVh1gV)~PBPK1>I3vDeV6t;PF|_}FfO!~Rf=O?KBfiBFCHZNi%yl?<3krB zrFI{Dp=`6rQ-PLWBl)7-0RjQPOL;Rr0PdSfNWKg{1h?r9nZiWi6e{!=5O-(f zg~b>wq=?tPh^BRbe9kMqsfZT5aBO*qaHe=&a2i1^#x_B2Q8e-~K#7TbMX5)MRXrf?b0J_lp(q~Ly|&4B$&q_g4Me62?aB(<9OA>fm| znWER#O~$;r#my%zJp~LV-UD#^>s@^hb4mvksw&kdw;vXHI*>7>7p>ejOPBcCt6Cu` zrSI>3Qa@ng&aGbO4Wkc#cJ_w(!Bdr#Kj zRo;;%r-JpX3`fuRN8f{0cQ*ICeYF;h5C7H^+33YY91HlJLTB@gS%OuBj*l1D)|Qix@<nd*@)E`a4f^SiqHT_j+&3GiUwN0h}!O z8~v&%d4DBZ`3CCP_VW2S1r+$5Ud#ZzK~^fc1%KAydklm_`EG)2=8+|N_2 z{a6P|@L(@RGG$J{ID7S9N!Z?$<+y~)we0E8!I6mZ$&d0EpFeNf5r4w9!niP64NBrI zL^SpE6wGTOU$5$*!@0!KAz^(NtuHI^D7Xl)j``20tJKj4CE5o}GhZ8@#uzYeyj2*7 zPYVuCz^Kxfj!Fw>Q54<9JQyxnbj3Jtw*0@?bg6IOM+w}4mR-UY42^avORx{EO4dFc&V~4bjNt$Vgm+kyzk{DQt7+D zS{>jYn-vU9(z{i8>r>K#5{9657lzJ~u*_bdGziNnI*1oU5>_`(jHGE z|K8as`jkDljSa}Um={QYy|PuGt^9Pv^OtH}?swsG;3!8t*i_n<=;Q0-D(d@+A%m2w zb*+q^De;wG|Ha|apm&C=)LV}zk4;@Wa|6sqVJNC$q4Igl{W~0z;%u5igV~qRq!7Sf z5uYw@t-kH=VP)_B=o22jeJ<{W=KPi|L)!65s#~uM^@$g-zE1Q(h-u8KImBr!2fb2Iz_6-e9#GRZTvayUDozB}=mkL#=*I6oH2WM9+p$dMT z8c&9#*ko>nbeN?D+0UO@B|P~0(W`27KDq0Vg?O2$Pzb+eGnD1H!#;Ldo#R5Zyj$ha zTPKI4t+$gmPlCKp@?3@WL_82~xf_kt32=Hcgh&$BOMFtA-J|+|-FdS+WZUH2Y<}I?=1|s`94jDTkSb zxE6Iu_4l=M#>yj$7HTJ+r_;v=Aqcha5Nt>C!*ikFuNGC9Sm4vKso{3Rr8Q~3>Se9> z4cQ@KZjBS8{Y$yvx*eI<65oA6=xE7=^s0ztD$Ep^+73<6CAyZ({!kjo zeaxC?h1KR#1^*d0RwopYdUn8vYHQ0sXnxCC;FrkmfZUNvA8Bs!11_1(6>&NC=kLQg zzuoFb3PvjK@V}sD24F{z6Dd)rbqgPmvk3Y+rv_`serIGxu-zSlSt5NZnvixP*dUDo z#9G(h7LUDdq&|T`t7D}WjZVwaM&Qn&e@{v(Ku4OtA_DQxmv%gU8dGekpD=)dPC3G# zvXU@|U4mmwEjK!xJp*uPA~H0D{Of0D*yTG*(!s!=)f@8v7-pDa+;EhatOrI~0Da5*LrBj}E5lWZzbT(Sj5a>b5LIi0JfwGD0qN)VnEDp4!ik zmgOHdej(Z4PHTxiMAXda&j+Z3oySC>PbgRY3J#>q732n?^U5^({Vgwia%DbbCnc^N z$Om&S2VS!She#5cE@OP^mA?OScl}eY?0nsGPrpRxcmEX}pqCzx9*5RYZqHVjfZO3f;ZrZ-z9ic5% z-;d0sM@-kn6xEynvUKxdUe^ymxL)e(HFk$qf|$T6-K&b7ky=?-f!Od$4auJ{g!w+_ zu4lnu^^@jX3dWl&*TM_cu+qtm^ouVIFpaGTGPYUI_d|-A73B|eBvQ`;?b~{+}YnQ3MU zbVK)KVKtUdjdBr;D3eMKR`LAqn|`h5i`r(C1zh>}bSFw0IuP`r^;3TCtE9jAaLaPm zM-^J1j}H)NS9lt;_uj^T^M&%yc}7)-I+NP$de&7llKkr+7NVmh_E#gfybOJMn&5%q zf1UpZ@cg5sDFF;LYumZjOU#Jy)}g_ZbBQybk1#YC9MGF`pkMWknJQDs$Nba`vdbHq~j_Onuw=~H^k?~jtTG&K*p z;VMrl-q*~LSt1M3mU=70ZVa>B5;{wbo9YWuk9A7~PaGySQN-prr7BYl0E;Lax;>IZ zBafs1^k%`{iANyX;Jbp^mzy#%`}b5>=1777^WvEAEdwiO7NX>jmJ#Bk}L;xx3u-M4_c5PDdms9@mvNm}o zMR7R3x;gp%7wH=bWj3%Cc&taRSLR!loqC8t;HPY{kkYM2JzOzKdyCqZd2$Iooj|@# zx)=_N;W)Ck7HzAizSCEq()AgFwm%xySSpZLBgkIYk`?#3%!K=U;@GEcpsXqWy1jyH znL*ts;e60eWc&S#qCk%Xh9n);`}kbO09($Z`6g5i+YFRxl@#|pf=Myj@D8U)5nD|_ zQK#eI_BpBZ-EX(NX+UsD&_bYN1NV+}rrTmQ*6?!{z3c5q6VC%*DIX%c|A0u9Lh@qW z6Fc0(uO@-cEZgBX&n}8Be>qFQNSKite#JqSU94{W&cy@nB$zP=}>QPFs!kj77N_vo&!sucm|CdtPB1LPG z;e>32${0dm#HR`a^(*s-=s%}Hvqid-F!#FbX6>J8=H0XD?=7fTC3?F&oZxb=CT%ND zb+*ne7Mpu}y3b#GUgAvl?8^WA;Dcj+UYapR2lejS3wBl_)fK?Pl+W)AB`3&QLfj6DZu5U4*ZU&#wZl_DvK&n zphM9DQkVYlc2-gwJw3M33HkDNa|l&G!ija|4mt(J@<$5nZCMc( z>wy&qvM=B2>lnUN(7rWa4XPu2m%B)N*_%h*t~$0J-?RC|q9qM=P3p9;+dW8q$I_C7 z!}2w|?;9^K5DFqUJ%THVj!C^X7I@w99kGR=R241z#l7o?M*~aMASJ7TC;J-(V@NoZ z6Rhx0q7WYHdujl~e|Qjjapj$0TrPz14HD~TvpE~G_Eh%dcMA?Ytf6ROTRR@A;5wyd zh2xaAndEdz&V!1X-R9S^x9xVPv!9e&IK25wofg+u4G;LX3-S&?7CapEo|ezyT!~N&5{BSbD`z_8Fcf{Pjne)aD$tN~DAM@`gc z2QBT?tgZlXwVgF4U!di7YmSy*K9f^szH#9-B!TL_?+4&1nRdG4%)weZd)w5G5a49t z=#;AX65F{T5FI#E&u_N!m_O3PF1gPX8t1J=@}(i3vs1aMpm2b6ih|KjjDHacHHL;> zP8_Y$m7wLeTgHGWbEV3shMTi-5Q?dNob2BPKJLZ1Ar$cLTobQ50*0OoKW{MGS$(#Z zWNf80U`)#9^o0N5ae7XyreuEXV!2(<*b@3+=R6>~ zE1yJLEDoO|JK4m1iw*+Bzgb9Q%cN0%YT|#l<~q5p==AzXQ{X`2VKz??OZ}I7ctjge zr#yCNrvmmgRBaeJc!6ACR-b%U=UZbkuKv^ektW{|n=%0_s``g=>4<{^!-P2>J-_D*}+mk(3H;;fw-c zmyRemI{k5>UA0qT6L&UCmi|pWSH|f$)sMOy%w!qw(w2Mj|H>g9V^PvpKo1c~Y94cb z8v_c!ju3zW)qHZP0y)wh7GmpA9ln!E2Fd`YoEH%d0S8@v$|eeF&9}^;R1zrmn&yey zL{7&?2V6|cBzp-%;pGnN3W6YWMI@Kv=S&iPc6B*DOO3XV5kRJ9;%@TDEL?x-LZ&Ld zBfpi6FXezzpEM8tD;ZrrdC=-vyuMsYO|^8Rvuf%HFn_iH2XA6gZxPweR_!641T`xX z7`276sD1OOKC_4%2>g-J{3lh-665D#xu0vaLsE}P)1E-)+Mf{=P=tg6^iH;KDO95B z8OsD0v{}m`1atOti1Vd)T$!}!`T|D&8$IY&oFx+a4zbD}aY)C`lXHGo#Xq6P9H|TU zKVzLWh0i4$gb&n{a_aNOz$Y!C3Tyed@|*EJh2V04iiKuF(1L-+Udkm;!?{(2Ls^zG zL~?_#d1LIk=6h?CZv%xh?^+%F+m-2H!Lv^NA2e|E<$KeL$gjyR(Qm0NIclA5PA)lN zEOY^0H_rJI=B8ExFXcro?zrd#id_;Q^+_ezF7v8JUxn}SN=y-G+^&@VJ#eb%*c@p2 z7nhz;{k^?By!uP1@7_j4H{Q02%(;({tL)_r^LXXCMc8Mge}8rUrG7(IV8#ro4*$>z zx{txfEyllruI8?8?t`a)Zu7-FYWmlXWL$6@qgCqPM^TN#9LZ&?1CpNIviO z0ZwTKe>|Ff(mu;(c%}_4%YK^tQ$V7d@5^$9aBe`84(R^2##!OQHI9LCLi}c|49i1r zE;fxS&1CmIUd-bg>ZBwtnM#a`D>8)ll87{EJ~wigW3z5%lGvN9KfnDqf~c|B($+!l zuhT*D$@@!X1ueC^=%Lv68~IQuFe5>c@4D?_c=}6ZMNG87QUJ5^`p4m;kS|4237(4d zG05WB$UpAWc?XA9BK;wspNcx)b!Ba_mpOAu9Qb%abE9jdw0}D8S#9KTdEyiD-bI?~ z><@T+waRLHcKuz>z!V%su{2^6Qp`O2d{DgN%H2nZj6d02OfZC3LOkY|j^ZKq8B6gh zd2tk{W%EQP*$LO&clWZ@#9rBcb9*QxS+g`vQ@q)qKKD(>=W67YM0J$5t!BwXC9XPC zyIPBV9c3*DBwN7zWY9&6BUDe%k%?lHZmBTP6EraR@afnTgxi);e{NVn{(bcV{E`x% zq-%AclSPGUG{H@yp~X(x2UH0%zYGo5Atx)0@vtF*|ch`qsNd@BWgKQq9qa{fAT^Z?+0zr#phepIS?L51zmG;;5U5Cu+PQeIdIu9CS+=4xOvyQ?FVrqxSlG@WFo_jiNGrb;SzW$P*J^NS=4wli{fa2ck5l)q-ah8hna>w< z@)P-gA83!GcICXUKS$|T5C8}!7x7)W#{$z$l(um;84daDX^3HY9w!0 z7vbod#PDLV6y^ zdD4Dk?GZRFqC9wp`GSU%g1icE+u={I(Qx12I^D|o=}Ic}kFJiU?fNFBG>NBq)4FU_ zAg}k0xAkXFJ=Xe>_0O6?(7lolXTiBO4|naK9~TySx0JZnf(u4>Y?T!SJN!)ImZhT8 zg!kk!gE`t6l?x}fu!w2ZE`NbDpP&p&JfaDJ!9@7BAh_-^bCkUm0}B9r>N~`{g#P0=;5Hsa^M>XqLN3 zHeIrP3=$Dm8j*<&=iGl}4hpyZGpBxmlb1K|d^QJcCh)TkYIg;J1Q|&Nx$@(TOY)vJ z9EsN2e+jLFYgbwd8BnI?Ktck2{vd9jWCM!*eSA5vtaDx)Ig>>uu$A`Xlm51;DR9ri zK$;gOmBRvo7r)SC4Iu=1w%uY@1zM_vnY=;09u_#v(>-X&OL=~Y#u4BreS?));$t9Z zgFK8`dA6$C4wclX(Dqw@S1fMD6ScYtkm}Ai&m>*jI2e_0j0OaOUs?QC) z8eXUJW$VgJZ9q6<(&ouZ8c>XsM)@q+IPtsr1LdQ9m}{I*P7_&X8pUHo$fuuuCW<|_ z92)K}p1Z#zZ`+{JB$Wk@uA!Xw7`u5dB6bnwh_lEwgGQmuz8m+aeE7+Ik%`CZr0%Mg z|BVZWKBbJZC#B8zS3-Z8z=DS7;=(@DF-0k6k^|c8G?U>$=8_NMh7}+Es}UDJShovk z*K@iz*|y96GLMr^YbetJp}EJD z{jWCi@HXhSOtZo-BZ)RCgB71_)1-eUQ>16$SB57?{OgZADc|MeAE`k%7UnYvP#I%n zA0~Y7Eh)K`%31==nCX!^HTyDpYf(sY6Hm2~cB0dZcu8k|8X{lP{h{*K0qLA`jZKtA zOo&l%Nky8EkaZ&|Eq`>koHDNQsw&{m z;@1(np%2oX-i-lOz9T*jz+c9BrW6ZYt=*AH0pbB=c13$!OTKrBG+(8NY6RO2HrPoy zDyXFWlZE6$0ITk_;RgW|y~i z^z53kHAdov2EvEt;yXh^^8=RTNU><^0p6=WR6c^$8l{uAW5?^n=dEn7wh<%m7DmVl z?nEP579pqMlwZwmF)#FoV~Db2PRutvJGi8^9{oGgY_47bED6b>+;H}VElND`uP>`$ z_Nj+LCy7F}ONH%eMaAi1nP%%OQI|~O%VGHz5+lL+#d5QhIhEVu)(X-UT&qmVqt(Dp z&O7G{!&(=UO#Oe==cQO)Oz^!-z>*e&qZgmE{TO*no<-!|DA4c&g1bLaeuG^&A`9Mw z0r?{FH)){z`b?tQn>n23ZsWC`qXi3zN2@P=w&i z#XK+C$>+`n-KJ4$!kG)+^R!Q`O43sgNuTKw%E>BVaV875(iF8+P}&xG1ql)P3MihG)XbNJ?!ID&538 zO+4^w_t!={H9?a06%h>|`CDp>F`jyL$E}+r=#5z4Pu1!&R$?cL#@BardH!nJJzy7M z@n*m+n%ELY3I$Nfkkce?J0LgCI50=RnlKtRl{R;&4{z1XI4#-sj+BAP7Ms(|8KhT)cTv;y z9X0)?3E$)lBr|nGAj#?yU+|!Va~}R3!3pUM%38!g51>L1V=*m7X@+M{p^1#UCVMBK zc7+-(M(FRndiS%-V921jq3sqJl^k}|e^U2S1mR$)t%e01A}WjHS0^(|iCp?t({tQR zM+H51E?|o3GdOdUzE(VecfC(m<=ghr)=U@t9F(<|n=Q}Ph8ktatX8x>rC`JAQV)7! zgb}lr*j0NwUdiAShX@$|zxRAw1G1#ydY*Jl5Ih>KNf9Ed%eY>!x4n7?oYzZd%jFiD z>GeTe;kei{H$QqOE{qo zifnjx(QB)j<8!U_pDiJWX-p`XgGOp}^p-^Q^M%jMl4i22tI!4d?p{+oo=({#Lzl%wQ<=Y%@%V9ZYy;w*YZfg9JX>GKi~5qcb&3~1a?aF zc}VHM?6>(jXaGW%?Q%AtQ^hADQpact4(Kk$=!&Oo%ddbt;=Kv zUbf|X7wtZ5_Ho3~{nLQp#j%RuQ z91o#v$z{)D)TK)~A@he}32K$lh=&T=vZVg6zZgz`&Br~M>!-hiUN9aqU$^jlDxPwg zt)79>&xaq92(8UY=^0FvP|*U5;Spa;7o z44Xn{>)NW;CmxepFUx&ufkP()#x<I|xylB8FQu#tez|O%zS35*i8qKT3qz^|O z8S1U%{LQi8{oIUfWtYpxc{*My+us#nTb>;1YkfVsOZCp`DiFQI(c3Fu*gx8< zMMwuhX@gx9U-#D>5}1wMjPxCrzT7O2QX08W@{?cn-Aud}(IWc#pcN&_{TK1ZK2DyH z+%zd`SCPzV@FcC=eR2CUg-L0yY!i(Ee>o(rx9>0c@1~J0k#1YhFA3r-fB#V?d6m9< zV#|{chvwgrQP)}@7uPnZ51SOvctlb4*?I9pCnC3r81hzPr%JF-4MW;=wJI4?9MG*I z8eFb5M9x3;5E!;OqRjbpy-uE+?{s~!!85-wMs}J!<^@+MXtc(sw4gnMGuWfKj&L3L z&3ub(oRF{L@?s;q zjB|8>IN$*Z6M4RhfzFkIInh*a!(gKw>fTb_5T)F_9tq0&SJH8>W>FMWshV$ME&MQn zplewM;Lvwp>8#d<$T9ix?o2zT;-ci6im=<9dCgIErWC~%rjeu(JxG7$?(7)f8i_hb zyQ#>(Xw5aX*En$7jdy6d{X;cXH>%C?(7JtgQmjrDLA3@GkyPSTJKCo8Pi}=b??#0T zCgcI$6x3LmnmWF9X)t$8kTCpl53NgkqRgD)yh@2-{$K=iH=wVk4{A&FeV^{1Gewf;so<^A=vH%B(#!rcNH%?rlOOf z9yWPK#lrq^0bnTRXBaRuV*c!fx6~rjqjI;RYCq}EzK#eeSOXAh$wQoG1%9#c#q>2J z041ON#X=RVDM_~wFI%c$UQw-%abS1BI3YC9^Nfgn!%G=W3REILW;U zK-I$W07VgUP^`23XYd=#u#nZiY~0Z9KXa)`I$2+yv{}E>ehbx#OFr`@>dc9kZ4z|C z2u7Xfi+Ak6$4ZKwjRG1)rak&fO1YL#K_I# z>mq48CiPf9ER$tdHO%+(z*bS1%ednnEc+B!;6%w@1C+<_g|3}p9@pg zS0jMY>)skgUNJSM0(5>({kxH7({ ztmrZaTMTc9Wgqj2pIqKoD@+}mPRrV>9iw1S$@)EmB$bku^nqE##%UF6)8|MWMcS{w zb`^xVp0y#97nv~RPcnNJrnHxHD@TiaWarR{wumXlpJ z!uSgvZ%l<%D3G5IuReS%$Aii4fK=->%D7znjv=aAv4(Mu^>(L)TxQy^C~oJzX_^;d zQqt0YUwr)etyE_zFm?bAPw|R6uf?Uk{6(d6eCOyMZb3e8_4Ob6Eq$ev*)x}$Rr%tHHB%EuZYH&GOYSEL_sHUz z{F)KyWgUIVy^HV7r>+Fu(^VcFoB7%-MlEU6fNnB?=Tbg342nz3x&L)eUOBV>&_w-V2)SI;aRf5Y+Z6X(CI&U}j*};#w8!ytn$1Dorh};sQ zdh%IcEx+BY&8OzJY8FTsQ3@7HNy^iwV;dX(GE|93qB?rx0rIC%IGOPQ7i0_Fcl43s2{(|=2^Nwg& z|j*CAYXnCGC7qTjcRGpq8YH_oI;qgs4M2vu6g4w~Z1J185JsDg!o z=4n~qQu@P<)%%z9aABMKd#`wJ}W6IDV-I$f12j%6z4I7$yNb^k4o8VRnhzhAC!rSnv6 z8Jx4|sSWHH&)>jmceT2+t6ofmX2(Y51~ECpK>lh$;@)jrq$R_o`cpLM~Z*ajCQqS zOx_oazRs^N?5Y;R|0gmaLptxac!0Q~>?sy)Sav9@6kO>>Zfzh5{oHwfhgAtLMNPE@ z#e8^h1&yspzFRZeVOF!lWQEwlCjSVf@FKv&K7Nq7>>oG0NAWnz$W}j9u#Xm!rqnJV zq_I^@9FJ^vKRVXE-J1sTbIbMvJ~NHmY-v*{=lHiDf^@c&_7#V{7`z2eD&cIuKf5N) zxBHG5NkO7+kI)b(1tfQE!TT1=>81lkC@!_Mn;AhsLlZR=_=T%w*LLqs6d^s^r;tmz zHj8^a&`z8~%hC^SeJD|4)TMijxK!J>lhXdnFwo`hhAWnYb$|HzwU=Y2D>&~jqgb-? zn5#wX)w`!ngwsv|U5m_nywM@|1@K#;0PWfxz#C|yyv^h1Ot*xZNI68I)>`&FOF9-8 zE2Ns;Eff#ZA$#IHS1*iL>MXSbzR5hEryh=PD_%l?5=0)-noMcil}O_TDeM@MHk|q9 z6Lt@)XVM1r1zSL@dW9p^g!_Ku^;3Mk(pZdkBm)BCnx!x!??#agSCL$3 zifKLnEo+p^F9h`TdaG}mCSr9~kO3raYkEo?!tP)d@rVgT zjr;5y5Ook5>s*^sYX%L2zv_f)Qby>4Csk6d2Wd85QV!+8E-D9@jIIsk$JY`jPmkCi_fnkCvl_t^7B% zi#urPL3_6|D@*mIf7f=K)pLxOLmdT3Gf>p6*#aO=()2I^H5zl}0dW3K{zn!cTY61%~5K`tewSHDj##6u%%a@Ht;5*tK zvxdLldyDe=8z7r8mMk!s0|8lW;?fo(k9j-hZ) zXV=ZW-v3DD$Jc9?LU^?3R&L^-VjF(9W&00iAC4UQkEq+h5PPl>+qsDWAEl>&Si9|G zT{1`pvbwoI!j%W(o{c}hQ&=v~JlX757c4n? z68tOA*=81IVU(@(^xcKe!P|&V4}vu=wO|mh{whdx<}Lk zRYGw0?m)wu;b{E2fLhr*(Xottl$bXi&9}Xd8Ap?)b*x)PHu|aoCyMwCg!}O>^s6As zO2>BA$$x*4Q}Zz6text4m(vf;KBuhabOi2#eIL()9QD z*Q)Qi=w1dc$+c{oSDhdV|B^`wU_Yx)IrS`wi+dmJz)>>T+A48j^Y^9C)$M>>{Vj-2 z2VU?Y{-&%n?qv;g|Fdt?3Nz;plwG>X@5CUR&Bx8rgK89u&OZ=8rdM{yuNFu@K!!6* zDCtRoNS)hHL?`6jT_G#LfvJls47#;;H^#jD>))zxm)GZ^g*nj@lz@iF9na@i!kc0~ z%&ZlpEY~3#@g8?Meh!4qyq~{Zm;TIINgMR1mFGMiesF%!)UKCT&;lkQo*1soc(IoN z8J>V5IAup-+K4%*GEaT)ZCg+Ajh|*h6BZQDydhx+AG7X_fw$i00%tvIOe!$%J;!Q7 zi={raY4s5JD91_fQ~0m&t6MecZ564W-S-(H<7q%Q{dccNs-z71GOJ6_Sq2FdQOT#pkV>f7eAR`RZUj03;7cppwGKSAK_|G5H&F~}+nLJVxVHJo zDlvHPP62&Xq}eArari@FwoM*==Ez^;_uuB^-aR-~bzaF@RJi5>OyI`(2G*^DRDM@;wQmrXq|=KM!P?O~kDKAw;XA5lT%g`|1|Y zF2PY`kk>}!3ax$ZO!)ClZQ-1>9M|{n^Qe9$EqP&h%gFQSES6|)F66*}zo|nizj`yKCfJ!fo#B9`gKQ;*X*^@3xpFLH0|NeDqCs z!pKB|#!@BB!vf`rm9e{-`~1twaVF*NMv!NTA=)%QZG&wYSSZgV8QIm5S<&l2kiBgj zhH_us3GWN##~sXo&1)?QNt6Q4fF&@+(iokz*G|0dPcVh(@qa%Gx>tRuSTav$TFs(u zZ0cVg+v8v|kL;@7%`e-*w%?H7id3J?&n{9kk@rlzTsteuY#chX@^?$Av++6y z)28bj#n0XNII?ZebHCe)3??ah;2he?ja>T6X!(!ZwFkC`yI3j$TYkzhn>9Jo#*0-q zV{8gpZLGbzAAj|Q_cC~(BVdl3M8cvP<+b4I+!tPrzc+7TG~8OJ;+2lXpfwIk*DJRN zP0K|({xd#g2EIZ+DDKdVn%@+(%W4?@XDa#v4vocUZ$bVt2NQDObL;Z)&ByGtq z7bssj4=r&Qin3oHn}pYYbovvxJJ2vUDOwik@3?a}B81YI=1@MAE2{KES*^S3O8`w9#be9WgU4`smS{hXl()*x~1+2dNf~A{a z)DZO*!pq<`W;~l(2mgzm(lf)%r3-=mia8>C_P#Pd|iO(!< zg*1*bA2&s&!rDE9TBQ8uO<(jdzPqj7tEjyC7>biFtye=J3!sZ7VaDTo^a0ZGW36q0 z+;{l)eeM=GVhqkWmXm(=dz5ujMYy}5B|BJ>;V%J{u9y?|JMeR0bKTd*cJGm!E^g&~ z&*>d#RnGke$0hA18Yd6x^7Ul18DE!Q2X6x!RcGmmGtpL~b0~Ue%AMe)N?^18!iDhWG#LHo z9$GDlaV%}(6a6{{;Q44F=VcWj>nhIhA-zwW+V(L^9MT>_>nuly7>|5xD&gxWv7Ut6 z5h#zndfR?<-kP*|C3qZI{56EXc=>&|3rlo~6|AWj{jR+6hpSUh zA>hDFomW#7c8g+CN(=yv>kex8K*r&HR_OY4wZ2MOecgJJWSU9i zZM3#WMaxNORLIE5rr4t12o6Q!`VS?kMRXpCsfE@1Xk0moqmYjQW-gCgT6_YWXSF3w z?FZCN-;<*`PxXgGStr=lsQm(MsEJddOC9S3@-LMCA8@mU|Mw31*9oe=>|JeoU3qc# zR{+WEsm*oup$#{xU6J&apEy6x5q`euc0T(fj+ZUsVl94Oe_DZdCE0->rV;ZUrnz(s zn0vND1MGd8CZ1&UNl(Wt7eezv;fE~(5+3gPFzT6DoCAWd4ij26xt%{<_qgjYx(eF> z++sgBbM3Jqwd@ZjOBpDn+dF(%|3VALRn6qC=td6-3k;}XMC_J)-Iw3fj@E(sr8)?Bt4c-h}e zPA=Aa3(Yj|NV-Jsl!Bg^-t65rUNn7aE)ed?)FPh`2qGYx{|bqVMu8Z}j@1q*)Q20(~z_Fy1Lo{$1ldCgN!B)?ykV&vaBH zt;&9PDi^QuHe#&gOF{3m!XJdtN=j2g9pkuuR#X*{c%KrJ@bOYjvgs!a%I%kH6d zA>3XJWBo6pxQDje99Q_X%Xd5lZ}2L!EB`QUUEek!v$GlQ4jOMWz0}=mLV@Oeyh*Q( zYh0SMKB3}xYu*1ccWT2om7;@`7Dz8K`)zxScMs?rkvE)*uiB0@FXPb%pu>>jxEzCz zKh%QlgnWB@awF$rZIORLt84G*3+~Oqus4iN56+dn-LK6pSIlZ}qN}`qOS^gRqZhSL zBW`EEy399O6XhFud-l&>zSlP^IA`Trg@mk&?5QR7%JNU2WlA;VZQ#REhVj%~iuL6u zgp@oor8l^~W~TWc^_b#GH5NN61wjIIgM~u$Y;oklhS$>njVP&xWmmtQ{_?rf!P#PA zH5M;YTxbQqc$V2}WNH6rg-OhwIIg!J@KbA0iQb-Wys7kHf;GW`0uJ_!`;VzS6r$=(v+{?3zPs?!}ja^o9TUu zep(4n>|1|y!f8Vj3~ORdH9aF=t{fXuhC1<+BOsMQnrLr$b4D-B=u2Yfq*L!8XX=Ayc zQfBRRqY6Qvd2)LzU@fo7q8GCg!u|dAiiNwO3Dy!y1Qe}_CPY31@2%6T1R$+!#IUxc@qAX41MHs*wETC9iVLdeg6nrHa4$};#Ed`bb?TyNn&_CAhBbKeOEb&lF;$jR$@i^eTH5 z=3T`wKDq^J`7;r8aE}n2KaNrV>~c!B(%#MJIJKi*3GA43XOqpD3dEwx@S3c2-0=J_ z?t2oy+USj;&6IB@B{X#^fjDdvx=l%Urn@kcJn2sADEerCJ=trXT2dH7*Ckz#?+wEd zK=jeJOAwgu-GP!BcP7Asrttuo7|3T=nnYfutv zpF6FWue$WN7vwNm(M{lUk4TlYxKVci>|cGf^36oc0ZG2PUO4~ofP7!5SCWdhgttVI zik@3AG$-HlDVGkImDhA>`$12bgz-yoqgl5hkdxaR)fn%Z-uk5=`Liv1x=AR#Y|a$< z#@nHTzSBR5LhS6b=P3%c+f;~HBCnX3%<~2BzYEfiTK4n4(>qNYW*A@$x0q@~fkO%E zum!l?PTzkF{X97?)D+JRC?jACce+W6-pctZg3b6oGbEiltNAW%vl#9`;VJ6VQED6I3(gO=Xx!^M=#rUrWwiMi#(^BO@-Sr4MWXH*nz`wY{BebT-($Dz8QFwx|8EaEc@-O`)8yr3ai)!@5ZiHGGwp+@_mEn z_m7>9)sKG-K)fWoND+jve(ug5YskS<)P^>k{{4tRgzWRo;?lIb|ifL!q5ALx-%I>GyS(45%8aBq8AW>3}c|re=B<^ zvP{28dUHH`HYiM7aQ>HFFV|E);!dv%TEEe(d-O#gH!rm`>X23GizS89IlSX!%IS7= z=3g1#mlF>XX&Tz{(%p4c=(L-mRgS5vzO>@vw%c;0Hv+f3G2WLut3bk&QTH$><6x9@ zrg_@{*;=I&jryx1cXRVYF_)1TrsU{lYe1j!dKTJ!NhEV)x9h9;|*)q z#0#tgjnA*xHd=jjn8Ht`WeQ^z_e)>A5Aqw@5_x4$ZPBT?8t}u=1|nZ&yL-T@eJy_A z(kgoK$Fndq>Q?Q*M8Ki=IHUYhyu^C|DeL%!2^x2{kP2E_c+1Ss z;+LU6iXYQRW_aFPqL?fa)%zmAP2mGQVE0Y}E-j4B;f>EtD*c*6Do|iGqTTpYP}N)| zQ0T_o$R+EqC-mJ{!GTx+Yg1o$pjs&!@o@d@ui`WRY|BzL;pMn%Nq=O1rnT%&A!`)- z6n@!(yPyNMO%V&nb)7d9TW(K%8myI%RNVV_hN(re@BX!>zWKRe)4rRv(XCuzS(rV7 zK5+~8W7MI#p1ZSrU__2M`a-|3z47w(I-gm%^2o+b*$RaWMr-_H$cKk1DOEE@W#Nk- zaKE`~u1DVC9c%t@h1EJcZ_)0eHmV;=OS&AqTOr7)=OL93d1LTNE8^+%pzSQwEA?c> zS@Y%r=h##jjq@jsbydpe5uTfuk$t|PnE;Zz1JdDAYF-K=mRx#r#Ecj#MKmsvG8fEk zq>md&ujkgCBbgahdia+iM0NT}IsjFAV}*sba&|nZ%>1UreDh2GIjdX0p2#G|C13Vo z{34VcuM7zLi)7Y$BZpkG(v^Clw#5H_ue{rDSJ|3GBGF9hCIYurRSWm6EG!?i{PKcc z*=*gzZjN!kSK43HM0CwmKXt5j8VYR!aPG+PIB~kzUeuX+$0}ks9;bNSIxf%J%1|{0 z+xRf^G50Qz+g3L-)yCbVJaIO=UR4p$6kOIoFJBxT{lTX)#LjxS3sTP-eq(b?JzGZD zgA~q;*Prk!L*JDEe|vS$=>eF1K-7LzIfICJ2`3RDc#ZucS_r)fW^{t{ zK888~b;Yi3;nD=0n!pX>%IWE&=`7FRV4L=j-Ru;PQZFo0n=3qzYUvR}NPJgz?`$P3cn`^cxMQAru z3PB*CNm}u|8CAlXdYI?1QG}o(0`+YJ=SdbR1#zUe&KIqC_6O<_sI z7b=Xd5}R~MG&aVccLs>7?^H88ECX4K2a}>&DKh~gYxjV(Z%p=jCh55}G(PKPZ2&!| z6n|wCXn8H?(|Cj_pXK?hn?)vCg71PJRRLkNt9rQ)x4U@!@IWqzg?t=~ndR>NqEY|pWTyEnx5>Hq^gu>Ig6H(yOr{W=1MH<%@JM=L5WO!RQB$^^!9JQF8#VybJob> z1jUm~4O!Nq@7J&q!lI9B^SIY~@{2Gv0c!euQV0UboGkJM$2uuRMcT|00GjyCZcbw} ztl2PjPv~%#v=kkmZCJBmyO~PNOWsWDKVI7=TL?Bey+~#Ey(Cn*8-t*U|KI?2`o*Ot?b>8HN zofyo_6RXQEk7NJ+?OQypI#4=XbahradN-jbMgDAQdN7-G5zY*#xS>w zPr|IjtEjS$2@X2M9Fch~>IYU#q4{p$e^`fz+ zXtHeb+ZXh|#E{?WpmH^piP0%MI7y30H=6s!#$Xait5J_%U2mB(^NfC(xb#q40wt@&N?TO@j5dLk}Mn0ZG%r7 zlyZ7o<(wm$rNamHjDKCYaL$)UE6E0veX6hN@NYQ$4tGD#D^6#C7zT%EkS}OCHI`_m z)C-@Ce~oAp`E=6+YjRF|;B?2z(f_Y{&wGD|?mKz!7O$scPb*D<0p}kfHWva*fk?kU z^gbA##x?)=v}>mc9ujxxLI(m_13T-&GVR|1mz0 zqv?|AjRIGojsenYa0o3cPmT1EnJs!Cmo61zttSx|Mh^W!`xE|iIxLL_qk%E#j!7b+ zML0}C)nGE+*LmjmqJi|;G&_f}Q=k-~$=|~AYg+uIeHv8tQ2cm%&KGjIMj>;A=Fp0j zoR8XfT!X)W*L74GZ>+UhZNu?2Yja*A>vkH%@*b5?O=lX15fw}7kgq|$asQDs`)JM2 z>DlzZ$k$E@5p;|UtGo>Hb%Q(wwd`Lp;EsY#+F84~%WFW#p$h%#46~r_NMB<+Pp&B*b6EhvTqDawWZ+ z?U2EAmq0E8i!A|3Tao04@EP}$kYZB5J9L5J;K@cVXn`?M8*chJh-ueO@puFIBayv! zVqWoh4TLe_?o~$>xb6AmdE-u#-^_89a^K4g`7e51Vj$Ev8Y(far7?s$5*zRYh_keH)|0?oHLN8jKvWq{3)U^#3KPIZe#n zH}C#e5g+U{u-^TeH+FkJ^bo+!iQ}@Z@`Y4{*i*7HZ*snFziXT_CKB8HpJa(DR6`P( zfhMW!)GZb?$$~2<8%sLvPA|9pNC6Yv4^}cmh>o`wvx=CNQ@KKCre&k++;lsJ=2e)- zu4Vo6ndP7K^aoTg7VriBYYAc~hJDx6pTP$ZCS?1*wTAAAT-$wqzr5cNJXYJ_*;BJr zU_ZMwnHG5k3>Cew9ePW4`uL(3+ufgch)J04DevmKI8?dpu>qN|3#wNm%?YT>ph)%f zouvtrA}yOzX{j%}qAd#3XlT0r*#bZK@OZ|$r)+hO51J8i;aY|!o~)@<7czxA5H0^a zlkr93nWV7iWi^wUYK!6NG~dPHe$r#oXK7Y3QOC)+#2rg$>0Nu>p~wD4b~{C1vM0v@ z{-~O?uYaL(GG)xhfdoVcysyp&RMi>2gF_4RJ~TkNUaXGk9N-c6fa{=Qw3N0YvHK3{ zbKX~s(9*PGlk`weQKbYCP4}p@+ONU>G0KngbjLr~&LdpAe7X8h0FQD6Uo@{gsy&GY(CA%m zzu?Hllr*M5KGK065hc|w^gW2D(Lud$cB5t#(a(n=ISpQEdS`duyhNLgpHXRWZ%yf1 zo8XtE0Q!PB$43KgNbmQ}5&{6G^BW32=Jp9Qe$tiN5lFXP@LCU8754ExvkFbzgiV$;}*8ziRfloL>?i~~vBGfuC( zSPUw24o@c#$QQy(rXcs4O2o|qe9DMX7L9wL`w=jL`4Q;Vh0t=umkxRqjc7s+$c>TD zUDyFN4hp==_U)`4Z@x528~kFL|BE zuh>v;G61+9(DIz&dLteyMv4p0?8}QjpYIH!(J?dzW~coF%xegW!}3x zqUYuR#JqWjKH?G;eLs|R>wD3GEjZz-PG{d{O}8eDR`VuM6S^(hNq+x9Vkw&Mo`>)! zkCqB!wi~+c>T&|!KAKu@$9Tox4+DNtDTg#FcKZyMImHv?&SgCuj#5{!tFe8NV)Ng` z5BpD05(f-KRzL?eyuh0xh3L=@F z8R>Qh-|e>XWUadoue)0P%QbO}ww!0~&bpYev4H_VoI;RU;hrZON0euv+WheNe~RE4 zb(xd!;~MSS`e$c?VQbr?R@RhsXz=L8r^o%*R;)qn`{a_)v4FQGAF-0|17=8CFLj!x z@%b?ISB@Qxe>T1|B$~NnC&x@P@t1U!uFIz>aFUOjtKn6S3?T_Hs;~r-yL6)@3jf=V!uP1i+W4vrX8 z3x_87M*X!zUtF&Fy>(ZtvHnHJju~{vPIEQ9;?~}0SSW3~=*kgm6Uk{r zjsD@1d=)EGMHA68`Mm*ZoYc_&4gxES3?};*zc3OfaAxbSCTk>-4h)e*6?Hl%!}Zr6a0t-95@Wg(Ee=$%TM zQ@aNc1izW1b@^!uZN%_V)!&wGb@(3*Zv?9C{e=$4(yjLOCCh-1UF$5iZS-)q+|)?(f&K@lszcz%{z`#QYy!H2Qe;W^gX2JiR6 zto$>~T*DT5yA)4EUN5|5JA8BF5o~0Fa0v?}9Xo~)WEbHFGcAF#CDO#kNuL37JAc$KGBwf_$1R9whE1_P}F!k}PjHTkf;m zWjifMm_FRn9kRybyury81bC5x)N?mYA8qy6KO0aI*$xOvPS3lZ#|c;I3%=?gC)`+# z@@ZMBEL4feM)4s)@wx98n-#R{;%Uzg4byOY&#P^@_)KRcSxy?B9dG!m&Ac$%XS%A5 zn+EbZFMJ|5!o~$t{wVe~&&(GEom~m7lQoP-8}w&Z)|WY zLk6=Kss?wyEALGOwp?pg5I@d;Ss#mEn}XINY|@=~fuVv0`d3y&UmDYZ+VqXy=0447 zC!-$C<`9}tR(@`J4b8g>DWcEOaEua%(F+;w`8a*IJC1V>4mVowcdnK}`q6$^M!$@# zw@bus!2cUy2}dDXsQO}n>PLayvmJ8FN|#A@ayH^zRE zewZVwKP+L#RdKqg8fe=Sb)6QK>Hw!Yxmh3gSY7B++!su(>FduZ7%%|-`M15S4j}F> z0DO*F(F=AW9OBc`KO6sdSTzXiFUJq2W%Uk_`PKZ$1qq1`*rm$9{`4?^o%7>M+2k}l z)$hIUGmj4%Ak=3x@&tdiCO!f5qS`u}5p?u+0$# z)yRPj&bS(5XG>1_$L>R*vtx1t&w4UsOXg`@3eOa!hr7PqpJLTDcM$=(YG>4vVu_Eo zKUcF%+5#f*l3zeCx(z+wp`0MXK#OlH&_|av&!=fK#alwJ5mw)`EJnUUhj#LmF6OY} zGp~hbVgUTto{aH?4GD}tn^)Tu=jni(Yr(%wT*~dR@x_ZM&m7!Lm18r->ctdnEURl z9&Hw#WI*6h+AF!}VkPzfVZI-1&bdV&t~eNc)M}b}|5_iiwjVl}gmbCUQ+F51_Irh) z1YNw-qA=-+_jQM4I`Kdu?Yp8!;_QF==+mkV+_i`n%eNJ7e(hO;V*&AG zdG)WL5Q%=Co2fQl)Je&It!Vf^OXIT_%hE8jYH}&~$jkV!5}96@05E#8vRW16C31+z z4R#1aw!WpnbNnnw=@}InmTm) zoGg&x|0W?dah70%S>|QH(8JXyL^l*h z<)$|v2k_hvksGpA;;imb{ep7E_KI%4`y&*^i2e4L;RS5aVK?yrOhMZin3OoNte3%m zQSE*@d*2j^U|pf63r&q-OS}nr{|Y$3{dC66FPKsW-;KUh?QhuSaX39IVt`fcVKu5R zg|kags^}ANh5W}ezx@l@)-8=?c80gfR2Q?ZCoCm;G)OVGXxRqo44v3hN+RllztQ5Q zgay@c`CkjDn0Hi8ONxwT zV>Mul+Fqu&(HTB7u3VHfoIHEtG5f7TIlY3yOlh#wYZs(RUTT7yNwO$gmpdtLN<$3)Tiz*j-RgIrpu~f*@BTBn2v==X%!#M-vmn zpvRD>4dRx^r}}@@4aE0k5$e&9BLVh3R}Q*^RGjFC`^NCNcU8vxHLMHN4v6S>zZCrT1VMd-khe(x zfI`4%tH$)}Iv&mD!G(|Z*hTBTqS9f(@8eIO+?Kq`@38U)k%q&$T$1B!3GvC|pD~o* z#Cg9F&F>lEdPRSMaHJ4jUcdD#O6ha80B3L9CC!^iyBNNBlOeVb^--63!D;-%s&!a^ z9%({3=Oiq9eVcbJUr>!|a$`Dn1qD4!;Cn?sC;tl{eU(FHVIB^BuEE5?+xb$hL2||n zg;n{nF?J)wmw?rVSIH}h0c3~CR0EMiLLDhx82j<5lVBT^mDj9!V3TSrUj~gE(AovN z70GE-Mz$wzY+kn^t*uOr^gz3#5d0SG-FzyG9H z^=AQc>nVnAt2i#6TGMff^bc2}>%Zfzf;QiB)c^*L=ESV0zo|penT~a=@ET(br;=<1 zn0y^z{$>wrz%GKho3u5cm0lb87Zb=OW?I>180mTSck2!6Rht_jLHTdFV@Ie*6g#mO z*E=u%B3RSYvm40=Cbw4~4TiOD4_|$N^FIN{SnzdC9n?H94ZxOO4@7wzcWG z5zP7MYK3Hc-JDYsN}0@X3x*mJc+V1Ys!8uz1o!1~{SIh%iElhxOq zrRZxd+^Ud&Us+|~*!=4LTj<@kvb8GG=eNZ-`vNg7YWDo-Zvy_*87WB?pfY zF6ROdj@0dC2*i3mw~O7(eP%}KE_91H?MEEjR(+g53rOt3bw|p3! zW|Q`xQSuD^n38m2MgqcV{x1>uCB9F;br7|r%sZcA2NxA)QRtPAz%S(Je%&TaHM|=K zi$R-_cz#rG9>})Hp9#i4onz?mkDvLY*=i1dk|R_&SKj{zefAAJo!R5!SUsUSw8eD} z&wj%PAZc=jp*u$5YOFJv<&~pufjivm6yS@G{LqlG&2QCe5NsVjM251_iI-)5XlUga za29CPoaGYDa(6CE^0`yKRclks{vuW7AAi`P0fjxyofA10v&F1V~!T5uQ!Yb#Q+xUw(Y<_W6|k#*>?|9ljAmn?(54R7fBdQb(#?P53HF}NM|jh)gc>>E~>)oK$-0QQ>x7X$cN7y|CWq~l&w z&~dW2PuDR6^B#bN6XO3&(D#Xe)bRu$0(5LFe0S*8Y~~VO!9HRA2nWW3)lLo&ahB;#7?j$)<(V(Iej!S!I8IsA~Y7@W5H@DrFaiV6VRg%bB?0TM#^C1}*{Z}n2 zFF-8A@@2|QSZ7Mt^w}|?S$;H+AK*HxIIjsVq03EVHY5}pS4Go9L4r9bC5a9 zk1geId?Qu#p0;^;;_$ZmPc0KYmd0%tl|z}WW&Tv9X3(v;_Gcpk+HmpoqVpTq7Z}I@ zRaeTDcJuy4&CmQUYj=wdcGG_ACrmO|X$8C{>#(8QuZ?)yTu|#dseJ%wTqUYQ9~)Y+ zN0Yu)8%oJ-7$t`u1Ej2auX6D4=^ATPQ3e}pm|UssKXL5vLmL^7e;`%R7q+E+ z9LfgqT(2y-I|lj2v!p!~MOu+IQgLUWhHwIKaUk_6lk3 zN_`9u%qEE=mBlsepCe~3XfTXf?g*hK)i{lI<9Z{@B>X}Qo`2~zFTJ_{hz8{ zOCJBeyFy00g-4Yx2#Y%-PqlAN)rFKc;8Xg#yF=ptqUZ90LTHZlhWG}V%HDx}^(Wj+ z3~}d;cueEu_sF>O(N#=u`EQqt?8=2q^bMCc5VTed;OF|4nU|u+Qd|cz>hs<&d>r-{ zAy1?L>M48h^Fpv0hA^(9UBd_T_dji9IDy(r6OFz13;0xJhTpmiUw5AwvD@hRQPM%Y zn#I=M&YRg{`uT}pF7-fVgRwevIyMupzs2cyPrvu5wKr!^s>A=BC0S~Wh-}|N&iL5W zW=g;%qIF2wLUD11mn82SO+{@t!KgKRxTYn6WhK3t9hurKKl|%p9u@pH1R${VueYE; z4zw$c2Ko)O3Gx=e!a5@zF6bUSgWD$)4BF#cN1`4A3L*)qR7BCJa|@@T>bVC*$0DYI z8MInlCfVu&J&@)bw$3M?Sx9Gpa;h|Nc~m(!)VR;tt4C?=uT@;J>sbRm`9laVTS74J zXv6!Fi4nP-6S%^kcl$U={wK+ArSOT*72*>~U^J*HL2u>rM5vRmV003{94FGiO0#?l z6{NSs-6vmIfIJJ6KJ&{4ZplZ|tkHj-#=&x1Dh{aCR%6dd=nK!W6Z12=xaV+(&zf3- zT0&D8H@=cA8trBlemow|^qL&$NTi0>bE@cOLDkBHqqud8P|*Hs#)U>Y_$$kslNX+vI&pls*%^ zK;{+oIA1e@pY@8!0=pMzn89=Y0e)liJfu&ayVK}zDTv5 zgr8i`-uAGrghV=Ph|I`e z{PXx~<;%<%`N_irGC+Y;lTDSqu{;7i02&HrgO&l0w(S)qByWZ+D%8;JAA9MLkr!0~ z9_znF=CFCf!#mCwQXLduK^7_jY*Yws?*}Y=8BWb0^}0#;Dy{C#4&A|0it)C3_f2OF zzikhHNng!a&;iW^F=td?+f_AVqiPa~SqgTje2(k|F4LZbhavroPc5gOcdfWbY z76$^E7suO+zDN`mJSMZr$fe$|lK6%tM+%jkH_B~E+eOr?8@)+?zg)_%% zgZaQUUD9z{sfE$F(?_x(Fegg}K;CPc^sPz@2tT_b3M+m1(2q~4w`zF>rm=SH9=*Qu z<~ISX($(Esm>cDb_DxRRxpqQT*0D`Q!+Y|MOi{r0Y-ZLC=hCXI&qK+d@vMI=>lc(} zuO|w=`(Pr=%wxUQv+$WwEp_bGU=Gqa`quc|vtPV5RU!Y%=;mqb7u5W;C%&w#4zjyE z2DC8h``L5i?>*<*M@oeYz$)j3Kv#;Jx26t0^Uh+>EuUFkjGIDja&faBq1+z=rva$L z&W-y~i8zFK1@0^Cg#No^O#D&ujCXuGeV+8hv5*({?w`$Tuwp=PuyF#Q9XB|X+MlM< zufjcDROT}rS0Z(im_wALvXXl4uNC;q_fQQG$m{8aQ*f#&`@V*#9AWN@-Dx0d4RTD&**X=6>)Ao{W(^Zjj%bDup*E_7(7ftdVc%Q@>tJ zV5jMouAxnx8TO~m^o;}KFKJ&u?Q|DVs_|hHE+EIVUYUiaRU)bGjG`hmt&uWs=GKYs z1z~RdBI%Q@5RSDVE^=+{G8MG7DgvEX&cd>VXyJ!L0$tv5#zyw<9Q0;W&Xxtw6N5u& zPG6+&cc*)!fEp*$T?PCYVxQd-i6g=W0_)hJX*}n#ePSI6;o*C<9y!b4XsK8X>wY31!HgwR1U~pP-p(lo@56sCS2_AY zYL{^V-{P@EQ=LC$L)F@JvnsFHkD%Szk2O(E9_PnSsBJrwY|F^AE45D+%#PksAS~^# zY{s9yNpw-soh0C9(>Yv<)#(Z$90$C{}1p2ckr69K)uhtz~eowH4DF7DMb8rOPjE{fCE9^e|)hD&7fjE=HK1rhf{N;lz~ zT(MQ3c@zs)3Bh>xsio!^Xnc!07E8@PRfG1|(n_|G7mQT)dHt>3vEWANR@bc+0thbN zy)Cib{_)_+=HerGO$Ymi$vJEQ-N}z3UuwTQVTKS<^Id{tdl}2ufoD#o`_lBmP!Yp_ z9Dc9hC`M~haV+>-A27|^}x6rKdx>K4ZED%#Zr(b%b zrjcE+$(<;|g?(VQy~MXH#SSrt$EUwOMNPe37L-&;pFf{OQj6M(==`o!h6>HAH|uo> z(cH#$eg5!LIiTt-1Z4$dpnw@Got!pcr*XJWqvQ6ZNUH{(XQKYLj;D4VEd%8G@Yxh`J0{5dV;a* znX(wql4TCXizT4bW3A7*$eGk^|4OfeCms(K;lDWVGXS7$YCtZR{DbZn^!O0Jdg+UA z60VBzxz^2`bx2)0$mv2*a zC0HO=URkZlbH5Ecf=}`NwCYnM{SI)w{hcp$g@N}XH2RkvqN+hcW=5O--oy8KDKJ7K zs`s7ZFOO(wfFF}#5SD@U}VaFTB-V_YB306yqm4A}P+w<2w2)GE0P zoDK>XB=WfTRIm>1@isUaVba8ly^@991tt|K@CmcPM|(pruTI{1r1^9U12$r+ zhs7B~P++_x9wqQv!^M<$xbW*65dn0q;MPkK+c*87hWAO@A&#jur-fRLptV!g#t**p z3CfJO;$xhglP4zPGd%mABWLUEH(u$ScZ#ikC-xd7@5_59Q71CCe^xPmde%3|u8gI~ z0xwvoJPtx*09uy)O!L_wgv;?L+tLKea3#~vB^b+#d0o@XVgGLj1A4U}BF&>F7rBd& zvII3c>R;CCLH*Q7lOXL=x4L97b2yZG#Yh8WCmboXO z{=U7DD&EpJU%k#-qED&AbtO0<&|MxjV&oun- z_f3~sZ@d3oaOW?R1qi|&ySnPWJ{SLcK5HB2%%;@Tefl|0YozohX|?gBFKnmDrEdK# zU2^E~Gpf(T18*%T^PaFYJOQk#^PAVMZyejYGW}p(*pun!1jBsR?&Dkh=im%k%CSE$QTp;q-KNi68Plhi0)5w=a35B zxvlH0^mP5ZE4LP&XR6(CU`xIViD2cecW@MtS<0%X7^40in>ll=EszFNDTT6g$?e1^&2-d5OjW{(m{j3fU!phL&(OY8-xK zPqEX1fgJBaqW)&K4WE`JW)f!t-+Qb9NvJ9@K_a(6FJeNTDl+?7E z8t0#%-|VHXUTxiC(deT7*?gdx3sS419SBodjJ0dy7}fhl&U)_}FFS4TI=_K>czubB z*ul+`*3(Y6C4o;?px6KY6IW7ve>|V_Zf{rBx!DE*TB|zW0n{=YRMZgDbxpoGC5c9n zx;eJ(zo7R(wQ+p}3TDGR9?}I_6|WJ#xtsmq{`p6gYt1TSD7rtbB8sMTb-zXw$_B>c zMBTh&^lW1M-`^^d>O45k`F1=n^n7bAn?P)uCJ}IiuiBSIw>!79EZLVpbXXDMQ?tZ3 zzpR&c;+O+iMAUBl<;*O1DHgkSHQ1|-fG*0qW_=|~=;GKkSnJGAzx8VH1HyY=%P5iS z&J-!~(RUPDDzTGui{tD02j<*cz(=`s(sOzge`vk?;Pq@bZ*#xSxIAR3SiwDR3P_@VqPk#P>Gkn#4Tf{i5lFTA-g=Y@ zH1~ie>EZfmv+5x9Arh7E0p9f%Rdr=Deo=Qx{5<L*9n~JM9@XH9GddjLKf!^Ba8tEYX!=RN=!Z&#e*w!BCn%0SBmfy2u^>t*8a2 zlg_m=@Zc=>7wJ=CT>n`6v3>}`^b;DO_F&ahf^%=X%%edKRzA` zY3xJH00ZJpf(rrNYzr0Xj>*+8hV>|O0XZvit`EPROw?x??DhS{Ag=!_7>*i1`xTQCq@?2ODvCElPQuz-LsSst%Oo3zbOz8>wI z*&Nu!ZPWdn*1}6*l^q+Go^C_?gHp+~ZgGt&D#cCAL3S2$HaMxM`c|bKWkQ;B(LA%` z86Ar6&ihR3H;7h~6k2H$fy=q<)JgoE*+Q^jGT~ro+_I6Za_@D>4DKM<-xx#N13ek@ z|FGJLd3;B0mHjASt^IFg=w0~v)IX$gb%4aU&J@kXtJfyCh4c0D92!n#wD=9_&cWtV z%@)hG4;VfY_XTE@)_;R#B%L3i$R)@Mwy|p zumTff#IdB=ZvzB{9`eu#&Hbs4`9dSM`ad44Yc1?4%eIB*zGLp=j{a8)#;O(G zX{W88YwoW7!!0PZ{peD7W^^0?D$x7L3Md-Kbn)RiY)gIMgzD6j_kvN|3I025{qn%6fMq&kVJc`@~0|F5F+aD@8*<2WfQB2=~uMWyV$E-B-y zT&0qEMn?9QxVt1IGcq%ZB70?z!`bWXvvT&~>~rV#{ro=v!{_sPzhBSS^YJ*n(*djE z4{q)u#8!Vr9z0P2+X}%tHE7d)j4;(JTt=L?W7s#~e6bp|-bd2B86o7QAJtoL* zd!>hoRoxEc5cdYiLJCR}oIpajNYKvjThwlXMyFlh@+OIYcE{(ig{Yz#{ z^<8zf&)kVUh8l#d!*%v?DxillBAg9(hh-xxKeK&y{^4vFuK3-;At6FK`wDz0%kOzr z=E=<4&leZS=m|tUP)(8r1|(w8NS#s zKnJcrdQ$L5#~U;FDNGejUy|{J_?)Wb*?e20b~OM z?fe1Xw_t|+1d}3}9&9prPT{3+0R{;^MM|EDOK596U-b-X_YT+qb?=d!&MTFLpmObp zmy4WYL7#Oz=N0oZOuB)wV2Ap*x& zm7%vwkBRl$ewAW&x?fTCLAg{#qlY5S)?m!=s=&yuH0j_mXr&JpI#nSKpYj+RHR3s; zgYn<$qcq8(TsjzIPCuV{!(kDD+;YSJ7oP=WAjHl`R1Q$TF}5)SE$HCF<<8>D{lp(L zc>4{f^qo-oPy~_#A|%N^5pxO1hZX{#iCtA?3v6&-%lrEJF+H^pucH1M8{VKU+2(uq z5L7l2v*147ZF;EZusSs{2EhWKdU14|72lBA?g?FZydv1#eXufiemXbYuRtyi|FN{{ z`0(b|(AAWNE=o)65SH|v>ED$w&k)4i4gY!GGUa-hd&CU*TkO5z(wf(hD;>68Ft_lh z=n|AbT_&7J130UTe+fG4AD=9ecC85PSJ8MdEce`O5BHDS1n4|fgLvCJF(#UhKBxyP zb>c5H?6Y^^7AGHSdEby04pkqU*#utu*L$JMCz#$NQ?ko@ieoeB)JN{&ymTUXGmzhx zmbOM7H2Lw%6z@2@3_rLd*hN|J-}_N%flg8H{7j`T|G1FT=;cQ*fchoGGF;gxLNZ_v*w#_oYvctaN*ucP*3M7TY)6lw9lMLYL$=my7m-oy= zcPW&xNrK5Jpd5pfs>uvf#ds+AEksw9U&x1Ri$5nN3W0-UoD@LSLBuszFm5DInuq%@ z#qr|-7pkm2>(gck5V-QeNm!YwX=Am{QLPk>n+vx;Vm95+y7wR{Vb8`}fVqO%rM(`T z-BmC6aKP-xj&5h~PCQF*TBs$LzxJ~s-CNcf9zMaM}0f4#Rey8wt*c1z?3+jjrQG$o zFtv*I9aib@x7}4-9z-qqOmwPyOWfv7XAy;QIUD|Uu{k=TR3zKFNNQPYS{Y0GD}U4l zUaE zO{t6x>icB#^3qvklJTbip(NINlZ+Uj>sW!Y1Ur`|z7y#P%{af+wt**5~Yco!SLn?}`ce8q%N%K6s^<4}wR&bB8S9qLl z7TTIA^C-q;8#ZO&HsZY+7{?BeF5vJ#_RyYh{L9F!ziE5DROfMIxr2Z7SUu#dixR*} z?clANDD+mt{Kz^?3UZb3he0Pv)MAUj%zrA)p@96pWNa|QKI|0~M7_OJWzjr40qgsm ztEq@=d|YnRdz!wl^~wvKBv44}yN#4sqwXG?6o(GOT%+sKkcE{Gh&VBgrOyR}z0p$W1wAcK6y`D-wq-aBUfnFG__ zD9|ld0su^_=H{Gv-^AkZB6mwLs^`O2{ow^ymj%fj!{8p$I!-mK<7S<_I-`1PP$>XM z-EANM6qUCJi4%WK;p}Pk0UG+)il7JSh~N$c$LepKqWF&)%1k!pLG$6g=+!;09%-e6(p8Woe zJ?oHYbCOeIcw}yAqLX*(q`&NLNSEpvVcWYuyq|&}OykPP=X%h_2T3|)<3f=iX8o6B zCXme~ESRAhrW*_W);1m0S$v~+2qMTC3NHl)bAYSOB8~gCEMU*M@}YOmySEeQ_OvT& z|M)KjRlxeRYv;hiq(J)n-d;6=;wrlGhu=FS9k7GkETr=~R2f&e?JeucHqDw(9|rqc z$3ux&jjPA7vtt)K&&gcPR<1jeA5I@hhDdgsF$XpJEupMlXbE4%g8508^xY;?e9k@4%!nYevtdN}=; zhbPkE0Jq6Mm7w!@19v4upa`zaEAsNK?)HrWC+-G%@E9w5&#f&v0mu^sRTrG|aC2H6 zkImI$WOH$zX3(R;PcI5v&fHJq^2dkR+iUVWbth9v#+UP9>x5Czk8=C0D@g4~3XNZ7 zX)Q<2^w-St*Kon?H7SUJR%g{O<-%$q+iT2sFMP@f=?!H)%ROwZ<~Jt-=1z}~xQekW z5yEU56+T~ok@lMcjKs7L0Y9w7Eq zs#e9CSMssyormLTRnbSM(c*S)`MDv2%9&$nL`unu8tnQJ;CR|SGx3D^aLmiA7_<1p z;23>e`rk~gWY{jEyV5FJgEHf8`mCuNmcxt+fk;_ChwD)?Xa zy8>%Jt`d*(?zaVnE?Cb$8@b>UN6a{f4%ykg zaDQZ@mQiW)xdaDA^iqfZ?9bS{zz5cS5Gnr?lziY%w?>goDo5f+Q+PR0B9=H5d zhuu1#NL$ho{;@2!1Hoz zmlmV#Z5KPfwSQDh-qx=Zk%?1KKCA=-{tW+^LG$mmD9c4WE4}WTs$c)HfQ(M$T(8q<}2J2lD~jG z7ImB3c0%yPEmvwMKjZ|SqHdDjJ;=l*p;OM`8-l-z&=%3&B=V55zQ^Ci*E&D1Z4c|4 z_R>WN^U!Xvz2~`chkRyDRW{p$$kZtR!6a4Z<@=oxB-#KFs>W;lomRd_0o-9(yQ~0_ zl0?E|9UORK{qT-8)|}$QQQN}j=XpNix!XwBfBDE4KYX>>te3;botk%glrP+Bba>_B znjZRKuC(up)4x;tr`NdiaE8R4{29dR$^Lb#63W^oF;cX2n{nChM7D-VzRNurF2{)X z`~m1n;J_GV)HCDkJ!WMQK_|Zlg1;%cZ&b+N?~5m0#7O}T-M(kyv>uAzyd!vqd6?Bi zy)A2PJuKmCVkM}d6z6V@_i7yF`7`({3Gdy(|MGtL@C(t$*=iM^EGjKpqz)9e~6K%N!GaB zGw!Jq=ksnIWOvagvFjOR`L8kd3+%EHZ)pU$jcrtvd}z*33Kd@{mSB9?ifA`i!|MQH zg|W+qlU&ELb@@CW^8>V0F*podT{mKTZ%f58E9-Epz9e1QHF_gQ_bx|KfZ_U3{f$C&d;AzqQuI-o}B)gOZ|#APvW3|J5Ifc|q_G!I}zB zocM)m@bjG)3*NUXh1~hPNspC4+Fc>6lh}h4{ASAlf;CM^cKxLKHd?g9?t~ab(&ba#pR%b9lb~<`1YD1q2Cpf9t+GYLm+cEWW z(Cs#Z-1Q#M?r`;3_r>nP1gJl`&d?V8@rIsDg-~-)psHjbmLC^Ihr2T%3VUdn<2=lV zp?;@kR{OiUv^H-I!-2zJNoNa}bxe)uGzRK45&eboGWJ(6<%fsVWPpxDxvgLZLkz;&aWCm~P`WOB?_crMwPwEOVygP%7B7w+wXZ!b zx)GFW%2@B<8)1A9uPry?{F~8u9qi0}c z`Y|Pnoc!N5YT?lZ1l^`Fd3oOykE(fHcm^s>6s)1HIG(dd%2=$DpR63Z1tzk=Ww|Nqfpa3fC$&*2-O3y$^LS=vgr)Gzwv3eC5O_U|Kld z{Un#^Zjn$6zUQMeMK}Iw!n$(&uji0*JP-|hQ_B2|?KU~9BhFZ7J#2(R5`sjr>zRBJ znBJ^caXC0>W6C#XEVy2L%i5EI!Qi`%;KvC8eIh+2byI1G+OG%flDEG^y%6Di{dMDQ zeQl~@83}iK{)JI<8LO}jHjnnuzPJY7i`=OcRn32qZ`9u1D=`0N%j%iK{K?V`f*V&p z>juM(12+dN$xI@@EmweB&2~K(aK*A3k$$_iWHn(F+b7LBCFIB$=-Mlu>#!eavKIui z#c!?8H8519tJr7-WOsm1vwhcfhdtGY(XT(8elrz!)zdytWm!M2?eUgWRct;oQ}5cp z#g3)MZB@xJ$J_ccmt^oYk}6mmE^%@{OQ{yZ2ZfB%9ZA{V2b^VAm6eyn&Q}EvokNu6 z;B`aGxXf@K4BXFefU^kZk2a7Bu)FAfWe>p|T^kQ2NaHaHF(dSP`le<|zxvL|aLACx zX?8_PiWQ}yp<$0vyvC1_K>wp+&s>3JjS&uZ;bQLm%C<%`0{{o0Yjx6tpGqGS{!^BD zz_+l`di)HW7(G%`pw|Wd5)&8tD6CDbGeaGAd2bm58@0`n7Ol1)CWZ6z)|tZihs8@+ zBhfsosCjFk&ZQMnMOqV-F`PrvgJ#f9j#w^^_ZuVe?Dq#+aMU!UQjqo8)HK^T_`!Oe#p~d=hD~gqN;*}i{bDgH__{Amn&?&@CR`QcRp@f{ygU|){HDAxb<`wpt30Dg z!I3EKCTPFSnL=(U|IVKWo#pdl;f=lEto0F8_)4`y7=rRZ=Sk=+e1{*w9c5nql+VVC2gvNX?kv|Di_yidOE zjctk)%q}7~nK%evJQv|x-MYaXHGlz~?3O5G?6s{+7`{YELysv^Hm0@>hG?m7@MWIVxwe=7~UA-vA4HLxrQ2O8Q? z5e9!nUUYM@Kh%=FA}xGqDxL{3LGiwdyKKs0`;=aRg2z3($+z)n{>%l+`(zHw4NZ`4 z_QGYmo-jWXLk<$6}Nk#p7l6D(be8>Q*hsnZH@^;x#JU8NhXlK;+>Y&OxqNuZ}c zY1{vmeU6TKwrb(LdT|2FYVi3>4FLdT$mgC^=hzz$1=N82jx>+Azi09>97d1+Eve{_eq5){$+eW0WG{1Eqw>4Hu|82U zegB`vNr<1(SH+3j>yd1Bc|w-&wUM(* zLvQcPj3Pskd7#jSaFt7r)5($oNAqq8{NgpYc;Y@r?0atfE|aZzxopH{y*R3Y3m1n^y*Z;*iS-R5!+>peNh1Z0WH z?%3A?ePJ7L#jAUS>c*WGFwTg}3i{$c=S0GsHUE#)@kgD27)tQ%hl-!_^Cc$N18XvX0( ze>K`|F>G+Di;5b*t==mmzu7P%HBH^_y#w=+10{fRjX&xBPTWgDxfgO$)-)>^*|6vx z4ZmCRPxG;o!7(9EK7;F^6?UMCD@EssZzG5OQeHZ;!x`-r)43hvoby5 zAqI~umHLe2O#bx9Lz8lwA>&KLvSFx{j@<<#aMd6`=WwIskb6>#LDy^fK9Rk}T`7f= zxG2cAe??PgF)gj!med1LY4zn}1#@`iv{jd$+L42n`)-Ez(Jh^ydhU-`*r_Rs*)^t- z=;y@W>QrVUlVIeZ{Cw{CeTShUm|p3IOXHihp`#U4Xyw68x;?u@Xt*Bd8vf5(IhWQK zF2{(kH`IBShZvKVs|H`fJyjf@>oT-EO+ zn+e03C*VP)geMr((^PpOx)wuTCmZc{57&>@S^#3sYpV$MQ~0hNY(cV(mn45sUoPanO)IR@m+Aqf*KH9~5_cZ- zUn1>OJ$^Ol?wnNIw#^&3(wi89@@R+pToZk{M#t!~XIO-+R$W?75yVAiBwba%w1rWm zd6cK)^Q7WJ=3xs1!Tmz`v(rhsuS(o1qTSx}z;M824<2Eg%u5u3)v#Uwi3-DGns=s< zv?qIw_YNya&L%SLTh30DwlxF^$v+jZMiZ5XPXnwd<`FkEJfiiFgr8IkW<~4EmW9}5 zsasZWq?~uUJYRSH8gxS_C$z68kW6kp~RK<;}6Ye^`kI7ACcdnp2)Sj+gN3Uk8{L`DKj+p1{N-~o4!i>!JbKQBRlcs{GvrXH?54{w z>qYm!Z`FHS?L(-)Tem^6w=V@cC9+D)K&bHUT;Y~nyjN-I`~suzudhvjrkkbo?Zfww zAF9(XWekg<>p!_Q69Uwrv?n87Cy7|};}t~ML7=SSLp@vy?<3Xu3-KGDOasBZVv@+jF$+l5{Q$Q~1hv>2@tH})ehl>bnJh}(KUb;9S z%Q=lKQZQae*LCmX&GR*uPAKp|vw-AxyG6Pk(`3|&Smsz_!jgF8JyB3>YD1)4Hy?vD zd+G=M5RT*0xBr>O`bzs$FYs2prdkC?TnWFmbRU5>RNPlCwc>Ao#}2RbrSaiEenoM9 zyunPW<0HTi>@Esn#`RzaY$(6I;wXj)3}ndyP0@3!=`jD=2tZ*z0k7a$y zIQj{*J8f_w{&=qp-Gfiw7M2PY=q-TUKK+!?WMu`}(V_zhyY7Svl7UsG*Sn27bW@_p ziJ)xo>)w%!=#{QaMhe`T3g`hI%_o;!`nakJn|NL`zZDSI`EBbgfr(v)pxL6Tm^9pwcu1 zSgsd#XAqP*(Sx!aZAWrfTA<$Q*I*P^v&>xPCk`$NM>yI2>be-4pbOiaK=m3c_?|N8 zdtG^1T2`QruhVoW{%4ATGe!^>CPqsC_QT$NWCIhh(C|r^*0H+CXvIt|ekeN;k4KrgJX=~WW43FVqWx8Aq0PzQSl)&ly_gARjJ?Or{ z3|^V%{Km4Ouu7$LsxgXM-h2@5;hN>mQFS4{G7W!%SZ<{rnfMKZmo4=H>hTLtja$>= z$!@^tO8?)$ZCF*9!!Vl;MaQCz3o3E01Q+>vA)6b1OsWXypK!;Bl1lk%iXAEq+SY-7 z4lTapW}lZT3;yYs#sjGdfA_2;Fe`8yV(U|W(dBxi*K$-Ry{KT3_ zV)W`KYy}EESfy3}HnfC{#qRI?I2Fwi)XHJ&usHaUHVN~-O7iyEdvIKh4P#6(hiD*E zYvaK9`UTTUk3LLE!0fxq;a#UD->YJoY4t7WS`NW7M<0+*xSJ9{b?1n8`~0* z`+COm)TvCTiuFFL^Ym50y67bQTkqvl>tp91(S#)ZG|hp#di2r&+8b{^US)w;eyErO z9nM~A{i56Y=ZBY0_9QTrJ|wK+IDb-7f3QE5OX4*knuC~Dz5Kav)DfayKWE?Xv08t-ng$`~aK2_-i5zfd`dIPPaJQf*{w;N<8)-JtmtQ zIIo5=dT5v@)XA62!d47vS|4!DlUT5E_Wbqh>c(23)_RpX$yE*mCqMJ4*Yr`_Kr0$W z=axyPbpRJspE8Wkzh51+SkI{a_YVsUhD1@hqBwEL#Vdg3o`YjKTHlJ_Q7{nxS>GoO zwqwRdZKX=>!jB3dgX-@Z8SG8Bm!AsFa9*A7^V=aRKY*Wr!-xVoRr8r)64a~twAm5{ zx69LC7`OMI-K_2sev(Bb^vE`6kz*(jrRhiv+#rG*s z@$>arDH0Tf(V_4GXnv(D?IvCAX)iAcVHQH^JdvX>4-IWuu7EU_FeLbjlyS%*GBoZ( zb`OFG=#;%4y0EIbCRG?`jXCM^T9lyLq}>E~t@UbeI}r`jtXvtIw;4gJ|B!6*6W8LE zp`d$yv7n8#?9dio*~3^OPzko~dceKS)eS2D40fwM(1W){ivI?PGft+^bTVRCu&>DV zxQE6E&LI3$Cg3gKV@mHwD~GO$2~()HV?&uW%}EJGj+|4xSY)s$UX}EuRtv#Q5+m|H zKjhT;a|QV)iu;%3rrVx&w^t4~qluB!Inv7w4YmXKOd^h800xxWo$^DOD7FGzrW-?> z8a)M)*=il|QK6f`iB(5%@cw6XkF2QL+_}|{<{rx!Z4NkN#*a&F6?sgft)qQJPvsM> zMf7OqW>1LQnS5cuUeZtY;Zoh8MV%S4TlV5B#(oMzj?VCermTN2hqrms*Qo4& zDyF`A`GfxKdt=kalN<(rY@haLQv-NXKL6WT;kkV zTql9kxn^ODDQGeOE>Z8NluD`t!*7n0sQrmiNnf9S4f8c|vt$vGN#7X5HfkBiWnMSS z83=89PpD1VW00%MQO&mThwM_dHwKj%3O`9YyEff7vRhBkdM|)vlFlqB(&M=_ z9d%)agvmmQF``#34?>MbLZ_P! z?5}5NJXe67bX2vaECh*8I`sS*fg!`WbG^zdCSTH+KdYqg^|O&vU1awqu}i{#wB(dP)6mt|*@<0I+uj}&y*sM~(`xJaeiCj>S*zu!O>++M?MEBs4i8_wV?NLb z&bbgU1mEPOt*p;Y|93s-(g)uQcCKeLK2_JW?Pfe=!LNCH8*gMjqutDn?rN{Q|I;s< z*1Muz%P~h2G~(w$K~ACR*evY=AMegjhgu;u5!DDjyCq8|^=m+KI2^9hj~qhNXPc_F z0{li&V5{kAt!ncBDIRF7f>uo8-FsU|og&au@A~7ZeTwYd;%ha;O_7mM!y&q14sjWY zdr%?bd#1%abP!z7nUeb{jj9B6hGy(>UC95C?1tdN`Q@5Q>|4nmG~Ryj{H}Uj(;>vn zxmmV-ZG1v7j5kU+w`mPt0go5(AkV}Tw@OTe6+tr{layUZWZC-T? z7oTp(e{gTgNW+?dH*UyC>WQ~C^`0Bo82abyp~go%%c4RUeZ9m9-KwcsXDJH3{20*p zsyqXu9@$W(nl^pD*v~p9wBaA%Vv0`PyA8L8xSlAp0j=bj&*5)|#17^JUcVpD02B;q z81@IcP!MzE#PZw{rJmDUt`zi8ucI~wtcGpL<})MRzxHF|7vq&h4FMUD7hO_PGH^H? z__JvPoZwGgdq!hl4|BdD==PPCgnjxI%jUoTQsbnFw-|T#!||#RGO?$_=WaJMFjz{I z?akHc+aXV2uXSb)P*LEQylsm+d`QsBWmbxE{CA-L)26tPZ2#3<-_Y(R_IlT8?5AvE z#ky?3fki;T?H#w--PeA{%AW7Gb5kkII|iARu^yh~=&n8-80|onO~@-W-@n}r+8I$M z71F!7%qX!HGOFd2;@Z-tM2>=FQpdS0FU{uw$!WliNk}*L1Le8Dj=2!dnU<}m)*u;S zBw7TsrOdV{{@7ai2!;SYS|8I{ICK(Cti#uZSCrzbb3zTR{bn{Sh60k_J!n_H&jq2x zmA8#<=_6<2Mc%HQ;8Y3Tm(QwDm)NC-$Cjnt^01r`Y*>CIXBn}um1$C#@BBuhbC*-& z$}8Fl+Yy3Ggz}JziKxWgF<+@5_ZALhK(5$;^=5)@Nsiy5_W(e?qpC0_-i4jnt|I$C zL{mn20HsUgEj*BVd4#yMrTlQ@as1F9BU`|aGNMmA#S6o$UPtyZgA(cair_`wZ>t2= z_tkb4AM>b@B{!0ad)ukAy`Sy~s9T(XW0hDDPflT2JFufD;a@t-38gsgBU$a_e$S+F z>m!gY=g5sOFdN1!j*P(S-tTFfZA9>?C(7$Ka@&&J-2M5TuUQ7|0;-F3ixOc6!fwl% z?8;lojB@zqh3HUC(2rs+zU@h%L)9e?%{~{X6%xOSfe27}WwD7N z(Qg*Izr&B>AzGchroY1%nlhAOgTi0d1Z&U&_Z3i?ZbL${Lm{e+^Om}K3@Byu~y)E32^s0#|lP3FX%>e`v5&=e?}d)RB6yNi=G9=t5e7R!;DsoKkyJrYzaY6gE8` zA>~M~=}XTlfJB>M&8K(Nw{BTO99(HkoGqn-y_+e#&m#eEN##(SI&x_~w=M?V_r4Xu zCe{QwFOJ{ANNsDpc$O?`XX_?T zzRVv*D8JhM3mR>pFCPXtJV|C{i))bAAPzCXTPg_9$Vyr%wNZu1OhRR!?>GAQ2dg_) zZnJvEfS(rP(pJWw;$8%<=GdtZ%xw0ikNeQx#_~h#g(+aW{FoF!ep8XJ{4&~Z>5AG) zzO>bvuV0dbF|1lPZcX$p-XMY&wf@qV>eWGcb64k8g+rxsvK68TZ0^EqN9(06{5`C5 z3*3Q4Ow{VymNTbIL(hA;wH}cRv22a)Q&36*d|dC?ts>-N&aKJzLWvMMA{+^$uI_dZ zf+m6U<;O$V*23et`m?uwuCj@{eVNOa99s5z@*s_ZOoF-o*WUG{2snnrm@y7c=65{{ z9Z_y)cGEC($yI9k*M326w(iRY&68H8=0Q+;&8`K!c?tH`yDu|5DjZpt&PExc+F_L^ z)ZOl#vp?_nmpw7`&D4Lr!F}3iLT!HM+>U}%js|x(@L1wafs@NeoGHb&^Uv5Z3H7K^@R1U&#M#Usq%B-HM6 zw|+<;BR_f#gUt2FrFHW`Upe7?Aw0}#S)n_e`9$Lu9F0Q(bUCZfmRtlUdZrE3-_P&0 zxSac*JvX2uY3TOHI(LclLZs){9p_8=3mW4mJ=~2~`#2u2eqO0ZUGC=0db-fd7b46I zSwwzim}9@7eO^$BJu6I?ld_Zp)iQmk&ylSy4WqvUhBnMf`{EE6+}~Ism8EEebG*G? z^DAjO$h94oYuI!u!24<|jbQPg#j8CCtwqhMoT5a@l)TGF4%|+V1kVTnH^Kk#{+)*;h0EPChr~Xo{TbMYZ);N_v0K zylUU%cr_pURB>FIYb;4r9i#K>_S8qrV9>TgkZ8YbLu7e9jImwfaWbsBD!|e#*SQ+& zY66j*4E3789}{N{=AFTz9dV;=c8+o7Kw!hb{lI+5j%#>2o~>9?Zd%wf%0&6D*q!rJ zSuiw+=j3nP8IVsl>}UsNJPy)fHuEPRzJ6yD6ESh4mb3rdw z%zZ9|GL0U70e%vQE{J}m2|+#jo~{l*2bBkF!zDvCzFpN`m0PtPb)#9p zLYaA+SI+frCw25(fv?W&wxMlkIJi3s-8!8t{GafooTpXK67dDn>iL={8xjYyahGLK z6@d;?`$y4`uxaYm^NnZc7$0l;wYaST{SqXQ4n!vFRpy}-pY00UNQv7E|2Z&LLN={^ ztCf}D*^!d7k9jUrI+QOEAM7QWI>)XY#h(9aC*koOx>`4psm%6p+FCA^2FPtey;D%0 zqHdfHes3=@4?+3q#3$vfkgO%c&V>~?sVf(2gKf8w(#)Bq;58}oI&~s{`m-yKcZcS^ zlrF2u2Zm#+7T_y2m}klVW#(Xl8P8PoCQTuP+OHNtS;XfkW1*W~3fJ3Kz^7r>Tg|NZ zN@4+gP^$!oJ^sQIR*HvZnGvqH-Nr=b=$oN9@2ifV=YdCS97e>DxcMNb&0cVMu&Z@l z0ArVSN`@X9Pb&yj`m1fe8OO4>X7Era;_sc*+`f(0RAzie4gPSjyiQ6x>YG!+rpqMB z!1L13HzYn-@|EyJ=&+Gy9npx>Pei2z=iIg7g$<6ZXbCD^8%*M6xEcfN!Uvhmllyp@ z{iLiHV=zI%XhtufuA~C~Pjm`03FVa_C~ZZ4fBM<_jMuBKloUtOJJ8lEcnIkjhpdk& z1hruB`_X0RQz2(~Mwc29S(a;i9}8uTCaYzZj&TXt_L>j>@j6ovuEfx&5-gP>pE>)2 zEQ)^Q6mZVy_>5q0m57;zyS*^6W+1F0hm=<<^=x4;g&s|-pVWLPm}ljz=LQCUwv3L3 zzD*k$m2%qf=S&FIWjl9hDpa@jq4-YtNjNcUc<%@wSagCeKh6oq-Q(CBbYdJ@qv4gOxC~kbwb=C*WA{um`=uXPT$=3zj|SUtBwS2({`zM4?$t^?C>P!L&vpD#lM_010D$Z)gPuZ2yrr!Tzbn(uDZB)tdEz`62YK@o19k%pn-3#-fs1gg0FmM9s4V!Es7Tvq&*- z54RSkFrLaxiF%xn6Xyi4s-djbIb~U0GaQaJe)_1sZc4`*9-j zYTG<&fT%T+!%H@98r@HsW}s)I*p2wl6!33NcL78t0Y5D(F+68^296MQh zm0gyd-^kdndl^URk-O3ee}Zvzww`hze&|t%aXN;p6HMOJZA@3RH>#A2+*?GDi(}Oq z@nC0r)stCAPkh?=@y=Hf@=wBN7=l_B_imC|k$aKXwVmF8tEA7E*S8bOM`7rg|R_mqIZI?eKw>C6S|r2 z1c^g=^0YGbcGPoILrzUBF8@43y3uQxPye#Norr2yFKJJ#i|+Pibp;tLBJ7SXL<X?(qHWojlDe1DDhAQsn9<7GOja=cKD{$THots$$h@@ z@LCacwxh=RzrCym5O@{D{QeI6;R-&c23zM=e3370XNUX6Z3nJ?d2a^*w6*+;&yXX_6l?(DSzB?2dFUIno_3iK@MWrnj;jDgDa@DbHfuXVN=VM{L8svMN}I;U85>1j7ck|OObX*TI?X=V~7?z#5hqbgdLb7y#! zX_c2t!J2P>+8WyG!ZOQ0)>Hu$RvVN&%RB-6Q9K+xHDoqI ze5U)meP+^rPR=f!E|ZJyW?_qQy^y;m@vSwkA6@47)cEwAGWgJWdt7aueHVFt#Z~hxZSvmbdq!msw=(Xy`sGc#Y1tLH9L8hM7Ot(;x-%x=hHG1%-${` z_te#_!yIc|Jp@UuIAereCq|{GGp5P5Sf;0hoKrYbx`d``@70pcSk46bKJgW(+wfI< z!_{fMXuBxuC+$~sX>@tStT-$;3`Jt5;z?yrrG3QCCS>pP<(z6DwKH`*^}=xE%gQG@ zF%Y#8b%%J>XrMJ~b>I}`Dg_^V35(oaW-e==(MJ0Tdk6PD9%tR_;-eP{yrW?Ee#k9 zhz~e|B14&Qt6xjeb;(u5<)$#p*ve6--+6DXNK8b@<9l$NtU5B-KS+v~drvOO-uK-_ z(2n+mbh#-}-3FJYXQ$8g=cDQ00 z>u$&{IJ7bpe8#spQd)<}`dPETXwYV*#k9$^!IV4Zly#<3%tUf0M4G8JFV{fQK&@Q$h zKjo*Fn&-VQb8}nW?C?T4eZemxib5w+mj5SW#B2=>%e7f8`|E$%(b5Z!M z&*JBx6S2uq8`ov2gYJgFzeQl`pQ5@;c zSLZhj3*QkFBh^eJBXJTVkqD$HwRH6OeSFr|lY1Za0xu>7$Fv#aDc|uW#T5FbZ57gJ zIR-^tYOOXSl9DRYoB-15x`1v_x8+Bt^b+h@UPGrZBl|VZ+jb#mopA9<;c}7eRTN*_ zOEl8}Z-*P2*UW&NBF0qn!4r9TBu3yEgoK8Si*yY*LI(aKA(J4XeLF@%dWcN=pJQcY z`hV_0K|%_$KtlcJ9&O+^;?GOq2N?a&?`wYtBB2BS0z4q@hS_5zm zNmNDr!2{s8iixACsjZW_oilf-d_8dDy1k5+6A}`^UBnOa1LZs0NJuDC7OI-gn(}gd zCU!QgMvv``O+Ua2*Lwl`)AnCmwr1`>xZEn z+#Ej+{o&FNLlK+cQ#N(7vvxrUQO(xES?In1_;;s&9;Nx;VL}iN4lv}OVLzV#d5qQ{ z#{78x=P`Ao^_U$a7ZbCN%!2eNQp&M#AVo)R` z5u^taqN?u5>r?18dTL4F?dY%fsH5*-Q|(94$iElI4Y@_D+_Z~CPHtwMQq)<)&Bx9+ z$CK9M5TcUHp0zAfbo%u<1`g``=TW_0vLH_Cq?ad~enBoDdn%VE^}7X+s)bS-$9xJ7 zrk3<~dF!f&NlG_L^tdw=I@JLCXRv%!ln{=in#Q{fjJc$V>t0pOc{|dgM2baDbJJh zlLL#fj|(dcu?DvG3g=xm2izKVNgNi&@%K$17CDTC+_mWY+pNC|!zvr=qtwsy{rH4> z?3>ndYux$rOd8+^IqG1=*Y~X7+>=jC%uq~;i2)nDQqR{N+c+s5a+RJOytLngzot`^ z1Ac603Lz}sw!RJnU0y6WKhF5m;;DMWP&Qr}Ywz^W?eE6N_J>)pPw-CT|$tT8%H$^Q9pJ!ngu`{3ku=`);=6G8_egIAUB*2z0DpwS<#T z24u$=6eP?EmVzdhBW~)a7{-^fgy_=!v(N zoy3cuW&7jK{D*Ng%jTNjL3r`32R|NCLFhsgFfB+Y)bG4p8!nK~!LS%_>vH`c#rpaA z%7*8Gu>&WE%=WrotURvkafcO!f?#I-jjqpqMyFmu6wvwBa3+!(=dn4XG5hFyKR*8F zouxYYN9U;DMh_$9uATKyr*crK;c=ZDJ$%lcp_Ze;CGZ*Zs->U?7SzX==7dfM&9_K# zY1TzOYm!GVDJ^v~um-OU*VR}&zr_7%^*>q+Rj)D%DOWytoIN8i�Pf3yKNdFzs9> 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 |$lLVL@BYruQnHeu>< z0PRJLSx9VJ=ahrf8SGw&oFqgnT|r5Xo|D&4aa+cD=5vL3o`l|g=n+*`H4l$gm$2VS z_jp?QxuLt5)J3^#9A=x~j{D4>_~E3{tzW_I>>6)U9}%Z1&2M z&o8&dvwiHtF|&r2AMxUyvvIF=xLcFQz0h%HdBeRbGtwWnWIL7!x@t}~+i8RSdWNT3 zem_@zak$Erx8X(b&Lu68w zhlO$gjKKWPO3Qk>9R#isXi*V{H?2tk)XdcrY9bQuIr?<^>r|M)T2C!y1jDeUP(cQ* z0kPO>cp%uRuri~z1S3TRukp_m&AqcZR`Q;O^!=QPR|6uN%EKK!d`7)i6Z`!`I=hlI z`SXu=f-H^p8^tFF-VxLk6T~RL#~|<25XBBAx8Set=kB>pwBeA(7LwqV8}EbI!nD?C z>GX5;LX&ZipoT6A79HVRg$kl>=M}LsZDzX|3!ay!IGmhiK+IvqT3@5$EGW0hX|8aY zOxf%@V%M-7Bn|e`E@iIzE&uW*hYru zo?FeQ(WWuT`q(RQoxaDnafE0MBp*2SmO!2^YvnOQ8vnQlb(8a%Z;j7INhiP722ALz zR<>3Jd8c$NAt~O7e!mXnQTjxkU$dEc)&*FS#4HA8yFwwM50O7p&(-xDCMusTM~oZ} zfr-r9>IayZ+Xb!hqP3HiOK&F{xKj1#mDnf8VS|V1;z#}xXWu)QV=}*^!4ZPuqt7FJ zMh-$O@@^SwBzTw3cQS4GEk-WR&Rppu(RhG&=Zvs~E~i=t!eK&EAUI-d$C#^j?okLh z+C-mj)0;`t7|u!J<>ZYr)SM@F9FF&x9S6g4&HYKO*tE8l*UDhW`VgO%0AMkQ7`{#?i^BFs{joQG@ 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�!KU zhue!u=`T(>YU?vs+PSSpibqx>njZUFkz1Ri-WKx4*H90>-eq(+JcLS?!zFR(*4AwY z0rQ@F{LNhW4vm-1#g)xRRkgOJ`}3h{)ri>cz6mCDbTSq#D=-hV#plQ_TUA-*0>A)8Y?ezNxg= zW*SXDl8??P2UCSFiK;4nOj4bI$^@+{piDZhw)m5u0v<~DDh@M(kzGBTQOmC90n<~7 zL)Z*mek`tfln+PhO;=1pD8x1siMSw%dOd-YpVg#%(!7A%!B^XpYw3A_NbwoPMRHcN zfWLmI@TJ@;Epk!n-TrzDRVIEp;S;W`ETVDdW}Bhi`{Tq2|AE{bA#>F{k>bT+O!hpA z4TWOJeQ)TpeVa?T{IVR*AGXvX13ZT8~l z^y&We^t#ImUD43vE_XPP#YsdMD(U z23WWRPe@vRzV7nc%~gcx!M9Z}HQefMvL>FXg|{ykuFglaTB!kY|y?n|QQ8&GgzsOvur+vzQv-QZ4ORQg>KlQ$F%t=`WJ+h@z$&+@qqFXTiT5v7Fiwwf@1H z{h#=J;1Bte$eE?Owhlg>pyG!zk)fC{`+MPH_Ilw$*4M(h%w58-7~4%wz3!*jP%?fz zYgD?0)DDhJPGRpN>d}$gkg|MDhX0bT8k5?SK_o2c)VpEFS}vqqz_|!_AZ93 zhWH$jRFSW{+PcZrb!?8%pYd^V%ihzN`?uHebLKDx!Pu@BMSd_a^lzXuRglsST^@rZ zfoF3%cJL>MzX4Wd8CLA^1xafe{Vq0p(yx8s+AmIP+%Odvd@2$o}sl$pJyc^hx50KRz7~4!QAj9r~Oc zp3*y2=p5P%hb{@9pGnOxQ()(Jk;l#$J%5r$)Y}aUEqV|Rq)Nl2Q)3T)>gNr^im|;Z z+s}S7Un-!UO!Wg>I7)WpscR_U}Y#p1>M8|J`r= z6UAnMu`49ItwRv~=ilZbA`5_73OA||vj&sgjfs7c+RFH+(FWqO5S2qtPEHE}s2phw z3XXeJ4)lMfa;TtTTmyD-AtIrF9Q7mE%+E?&+`WTsNn)hKn<1R~<&yk@1A4&! zJ`jltj8?VZH1!AmUlZ2Hr+cRqLV+B=RT2fw+mz&?EE0MSIM4e z)gP{N5?tss?SEyJ%>Lo)dw2N%{jij+9EaR{gjSy)-(rAoq&?+^zb{nWt9{3`->lnse(4VS8ZyeQ8s0wf=Wp{y(T>c0k z5L5l2R!Eu0`&-W;_@3v`l5l8&J>Xa6TmPhx@SFw458}!?TQ&FYu&DfomWRaJ^Blr4 zdUg38sQfA;Gxk^@9N#t zNyOS&wemv9sHmuHi-CfaasV&xO4H~0O{8ah@{b2WTsK%?`Z_c_T_j*RG%+*N2&Zzr z2c#u)W1g@d9`LKNuzqyyv&s!>Rc=gH*xJRLX7R}%IG{DvOoH`>*Zel5X0~<(*yO}d z1j_zq`tF!7r03(tlR!j{4b%5-J70c^1y$fCvqyzLIqP^u(cLC*~!NKDK^;TP@I~?Rs##t-9bHm0yQu>TWqY_0kIuFD_T7 zEe{o8PeJWBe3lk$CyNhZa|w;`kpBMukW<9e*;D=qO|CNvp526@>2iP-?9A`9JIkwx zJ;gpk!i}IH77{NLc6W>3445(*gOgE@Da5MyyJ|Q``!~BCup9!Qkq?lk5y0spY;A3W z3yXl$N0S7r>D9rfv>9`0VWiNTh54MQ6i)<>BGEWrTvQSp*OXVK)O<20cn?iG*by9n z_6==FdO)IogrgBJ{Nhc@BOzKlExR%Y{7M>aP<*J5fBN^c%Gb;ncAQdv$9we6fmlw8 z^{>wYptxH0a7SAkcW1++5BGSLHkh&pNVKzjtbhkwFM^H;Dwj+H(MKhPTZ^)s*-YVaX= zV$yGjSO44=>={(Y-oP>uJv6xgeC97C92$tXNwR<3g287`fu@Yv5B$W{eK-2g9q;}z z3D!o+|I>ri-12q0%V}pIn_pp>o0~&!WC&1pcn^9mSM{C_;pTh~y_Rrj7LBle1ll;+ zpuP;rYG&(IxKBaTv@!MZnmUw@zD+#6^P`-SSP9oYj~rQOEvHdF3? zxB52i^-7>p_E1s0l16{)D>-1wd{b3uNqBF)-#i_5iu9gE2p12)B0>I-4`Gv

;6cpR-eAqyA>tr##_DW@6WY`_%tIuFA>3|CnHk{3s zmPnhyl@_>D8-xM+NR+Su+T7kgZ`W{0>EOZ#hC`K}km1lJz?__NwpiQ(20WW5OvIpB zaWxnQ6!pV_T2g1iMnF>hWK82Pp=&Q9{9-tCV6!I%gr!<|5t!l7OeaMb&m4MaJU}Dq zU+_lgC;(bT!{E5&Of+rA%k-$+o$aIT_;*)f2nvc?ix>Y*G`hZQL?iT`0 zb>KGy2vGNn8@FGZT*J~j{HBc_@3KEqz7+N~4*-9q#nCngXk3hVkznbjNNePp8Rw>< zesgj}%IsdT;@}l!UN^6cHGt&6{PQ6CKw|>BCzid8EVX%DayphaLm@rF?muoFv0&@) z&rdph_rGi%iC|ZdEPmYkAH9V9!G{EglMWf5{Swb%v490bu~cjPXBaZ%rJTR`B z#BF^wY9EIi%6fa5wS+fSGs~gBFX704JE8*?$K}~8+*AeI=TR}6vbPY^cB*vi{ef_I z3l*mEsi}wvJHM{QnmFe%nn?eCyY^=RgRi$XLZjcmnc2{u)Gl?JD44pY3l;4Y$_0Mo z$htdULAdu76}J0E(e@HIS}DK9z2d}aDVRVh$%|^Vnp82v=C@AiRwbVj-JoH-jVVDV zaGL&+I`v1VMiTk2&nud4F;H)HUdQpwIZc3T5P(t(5dPkQ^1SN+uc8sthC7>l97v(( zGyy-Ah@!lCc!%8m7vF@kDC^U=5~%Gh-o|rM89&J%A0%!qa=!e2U@R};d{$p;5X$_6 zwSM|!ydP7lR!5*RJNj0DX#OR(5<^q?L`mw=zv<s`;Xl)`kYgF}Iot37x{tz&8 z600gaw5OBZ*8R4XkZ>;2;hLT#o&QBx1XnT}m4gGKcbkby?U8C~I&tCMaQ-~D2G(MX zfbMmO%wa!RBrt%fVKW{zaE{I)Yl|%Twn!7dz1kqu`c8-=RXKGD+nuesv!|zLTmz^~ z7EOJVN~G~uYH;t=YG@jlm2d8-DoEz|$dTbj-mRzj z>^H{&ZmLmvWGAx!8#F=F0mt95mZH_#-$jQG&iCpstNEZ@o61{}sIT;WrmYx_^r2T< zKhSqRAk3o^8Isq>yPWv7oEL8J2*`;r8&|IDE%uJf5`OdjAT$2_+3H&Ie7cMc5T;>Fhu2cPfXC}0PU>ynqi8mDMzt@-fqGzMu zV61dtGLUP>Fwy}{yh@nZj}OzRpwijfT*1bvwH6Bu@1OZk+(b)X8*cSjbN5;onaR&K zRF@*#WGl)Hh;v}u-8+E_lOR}^iF@YGA+A#w6eV|(BIX?(73iGW82;;g1eE*{O`JrR|CgA zN(HtjBFjGFRBurTPsR7_*+MbCD+ANGu;O7PKs+(IE)8*&S3$NLebmU|N8YGA9Tys#Br zRv~n|Ev)k!(zD{8r?nJCCa0A~jKlRWoUCWD=ph*)iMl;Qv9cFf!SqBdp(ACcX`kYq zHk4Gfl(Yw1u5Sz4Wm~4^IRhYH8Z3 z=!u7x((KQcNC$TbmReLeLZ8rDDKVz~^;XHXzIMA=Qsyz;k)pg1@{!?=xpYm0COHv* z@1zotX-Mo95xF#}CWdVfZV6haVJ%{3FQrW)POB~y%GFECM5Usau5 zIAd^cxEzP$R@Vl~XVZQutSknM(X}0L2DHf~9rqo-7u(T$-#G(YIZZPxYPo3qY_bBq zQ3K>N1938lDD_l+oymlWp=HPvBWDnVlBDa~y=mkTETYSp=-fpp?s82V3sZ1%1g}?e1vlOFHJ0^Igao?3O+7rQ z+y-=9cKUc=;pk(S7+z4T-iS$u&6Tt`_l@s$wdG+* zJZu*6@**!H(kQTER%?=G>B9!I&r89ovz8&v_o-DcP#Tj3{%ej($=!tOcHmGB%(Ne_ zSFh{FfwEPk<5(DqNzUpRta9LsbA@np{lQ*);iR zl4&cXsPbT&*P{Qm3vlLG6p+id1c0%I&Vff2r%(`}CnS2Mk|92{==-If>_iCXy#`Dq zUbq0!=Y(&vG;1k_A}pH&Lz`Oga^k2L%0O%yGFJj(-J6VTIwiu%V!7i@$-cZd`X-g^ zzz^F122ET7;O;PmSOOQ4dZBnY)h#bmSBNSD=_jYE=P+-M@s-{xU8&;89R1cwY|am` zVy)m#qN&d0T1}?|t(b4hdb^Uyd#S#!Pnqa~Kl#GKY16Cv!Gu-;#eG0nmbkj8K|GSP zm&6>gQZoH*d}LfiWWZ^B*+a114(ry73F)8TR{aW0Fr+u7NXDWK`uuC5&Gwr3-=F=x z6#N@h#~LHwuoq0cd)x(}oTb@z)4lWKwQhh{vIr^F7cpOt6Lw%pXJvc7Ew;TNme5_A zSu|stE)76WUvg7{8n!bSs3u-1G6AsV*J{<(32CT2e;&Nq2N)~0wl&wY=?Ko00?(v4 zOQ#VE6u7i3RGM%s#oK(BqLIfADSe}WWLP zu5jL*sm{9k>L+r@cxT=B#kBQTStkeJ1`rKIp0`-00s7e4#Ieyj3SfWI?Bk+Z#du5C zI@04IK%H~$^7fCAyrN50kSMz|?~Ukp5{WBGD#gs3Tg#=hS;h0>`Az_F{`b@R+NBK2 z_yEy0BMkMo_rLB-$O|XxqYEF&yx{?>ODJt|ws>{jV%vWDHLnvH!<$k|1bkw!mB2(A ztefpOVuo*Nt;j6wZhdfQ$xq(L9q>}_*a?TQ!h#DMX;fh?EGt&Ac_!ak&?S-a32G(%XE9y5%q~IcB%we zp%LH_EePu0AAK{lF$N(FS#^~1mP3K(k{W-Hm_&-Oo^bmXSIc@BOyKj&7 zzR{7$U~eQHWv0 zTg$plIm=}-+f}+{8(o(A7{S_=nYLw1up|)A;Rmyt8?GAFiWPy3%-V>gC|{=HZv%KI zWKTFRI+xNwW*!!bM{aOY`+?WX9ZL>H83v7}Gm3vJ=U$S8VF(;XR()N8S3xcPDTAN~ zGS=atMkBy~Bhs}#{+geme>L|lmb$qbn&^`Cf!PohXFx{TaY$QT05qr8aUr6%M3+$( z9VW{Fx0R^Md&vsJ>kA<977$qoYpNGrC-`;aBe|hl`@YAZHRv&|>a>~A38FkIVq2N8 z+|8l!jwJH*rIuVH0~u5D2PtMX$)$}NLZI9<&Dya`TTs7C`_%uXtXctm;stllmO-)( z$Q2DCb%$oboWt>p^qQ~=XA}>aq7sI~e$dg7^y7`Pd#UZ2X(r=|xm!I=E_Ts`To@li zeo02MSp0>U#g7%IS#bXkVP72=)%Jd^h?f#61tb*|r9la46a=M_?viE*=@yifFlZ#C zW9V*$Ata?61THb8bTjWh=>1;nzQ2F?V9cC-c09G8wN?OBti_V^ zn=D>T0>b1-z$VsuxMp%qjJ?TZmwrBW&3q zVU(w;QK3xjWp$u)cJWRUd;HpvkZ6#*Cs3p_>W!&gc);3v5jT>wu>!!Vwh%W33%ZI} zXWWhfoNNK044rr(@EDLUID&`d2bn&h?NjgPevjHgiP>5Khf5XsqFyJR+i1Quf_gugKDLb#W@@e=iC1&-qAuFTR zIFN9?nD?>EW2fknp2`dH=i%xDoT|tD1C1PT_U(Dy8);jb6;BQK_x&)aoOGSbApNM> zXY9&im?}B^K+g<`qqBE^2aYg1RLoslSa^82Ql>MTbuZF@tiKweSh!A>g-}d)4w$D< zjvxWj7_*_>b2zNk`9~F~`&-<(#!^co3J2omFT&&j>-kA0;HWQPS28Ohq$S+E%3eRB zQaycnxCMN<#*f!EUPhMyKq$+dT%Tk5RkKQt(-GHJX+`<_`MpnfH+4Zw_E8c3PfOtz zk-yv=i1wGtN)MVb1N7B9Tq2w|ONF|wdZ)jakXlz`eh4?z5-CZ3>KYU=CXclVq|i7= zZ>0UzAt^N&6N%YlSw7`^G?Tc-?(($*$buz~E|%ODlkQ9q5?TTJNyFx#;~mM<@_u7&_J$n~`klowOHq?3^pV-<8 zh2^ag6a7nrdDM20(vG}#9q8HIcv|AKlvh{VB@~slLb7CV{cj-RQMY0eX)&sMZ2`a& zreYgrwLxI7B#xes<(Yy&V)ZFXaJjKD7fUc>H|+Zpn9u^tVW+>Ao%~Pub%V ziu1Q8Fd)Y|ruSJx!h*6T>qqE1K*v?5KXj68DYm zb@)frK_04A=;D&V{i-NI&IATKRgCS?%tCj7SeLEKX*j&=ys?l#U3jPYVxIlZk6_ae zE$GT{kEMX7x`z4-#8euy5QUMUogc_T-q(jbXVvFt+-cXoR^bPPe|vxevNM zy%AHlhQIS(WmG-Gx3QjXwa!FQv9A~l-nP2iwFU4HGY2a2Cz@@Qt>FVUQy(#?nFguO zs-pYs+oH9RGY~^=QPC~yczPbNw+mj=KWbpA|KKD5aNDNCg@(fqn{NsrA0fkmKTO2+ zN7~Z93VOOX<(IzZHqZBbwJbRtYG??DCNFqg?skEB(DF)1;~U zX``yAb~7}y&G|5tg<|n~|4tV$Jtwa*xKiEmn2eSQVQrGd&ftG-hE8BD%OyrlE>Lm} zi+!`;iT-Gy)T8YJY?+}8C3ZYAZPNi9BLeZ(tYuISg zaF3i#*OlIgDaZAzRV>DM4JKnUth=dnnIHsay51A}@-q|6yPKpsa!OW4iXExTBsxubdt^FOsZPJq5}bx<5@2{p_Yw>G_*-*Nj&%4bbwmp&PHXc zPnYM(rfJ!@L$+qWaYcmvc4oN@HI%minzu64xfNRK{f90f=oMNR);{QoOjD5IG5icG zQLO;SFdg&h<_4sU_uSXN;P?Tni+t_qvt7ss&Dyg+Ef^^Yiql7*GZx&82KrkhsSsjP zN=r*?xB!xqs0aZUcB}az8zIC$IS4r~S7IFv|A_4?!Kwr_bICv|s&Us+#$4Ib^TMNR zWIAS|#q=Y@H>{QfUU~wc95o;!0Ubj(o_wbyV6*VTJSR>>7w>tp-ykS{XSp0GjBVJx z=}rJN6-8!ckbaHgcqz~avfCXWO{WPkm4V`hv~&SLKyR=EMDmzS$jn5wnU@$6sylJQ zY4HJSsRwc~Tiztqi4^e<%6HSaYv>_`czf6*!9X^lM^f~>st|^r7f4$EH5!(ay)4_e z5Bz%7V(t2c=3ZGLfhDV;rglk`@E%A!+PHC@LJ8oW0Mg$B5S(vn^e?6U9QR|vHH+>F zd|e3Uw0fMNo9|m9{?M^GX+^<*Ab&9~i(w=T!(YDpxum7UA1o^~TMrw1{VQcRL4AHc zR#s@>y|xL5V@C!%g5a`u3z94Bh`y8Fb#Ov0Be?%}F%U4=SQNR)bDeM13xn$6?xd$@ zAiY5sfaY4bqDS#Dl)%l!=QI0DPjN!Kb(1GJt(X@LUTAL#i0zI8?gr#J>OJ9|v5(9e zi@PsB-yN*9UuqpcfV7K)NtyC)F)stS8xle!gZ?GB=D0DBHv;fCZB#m?&4Tjm=zJ8E z_<^KINC5a8<~5S!JKPY5YKXbVpq67esM6?w;J6nwv$rnkUrUpzff!!2U01^0o2M%R zkJDeS*gnJiDOtGbC4`!7HgKH_B=EDDHhVv_vn?<>GI;3Gw!PF`TGMcMbcbuZbiK6h zXpJqT5XVdV?7bwb?*t%nwqBS-e%P1>f9nS&nm6LJe_#cw(}jlsirb?CFh_O`xZEk! z04%4r=Lp1rx38$FPE<_Z=htBOZaKN87xek%XL?owxj2w_?>FC@G*=r;yqVF^x)(11 zq9S**5L0c&=S6${v!GJ2s0d5ZO?WQ8Kh;EDhPuy{rh43_bMi(%1_&?K@#Ann@z#!M zuWovPIcaZ_as+qv6fP1}@jC9e?0JlVs)2j1!4`9UPb*=UE_~S>9YNr50+fR#RJ5H9 zcOdPFg`__vO(vBW^T_%+_FvYr8Huamx0N00*o&oI zs<|&qMPoMzQ6ZXkgFCK-Pz5#%0C=)LseTV-mcxY6Ul44Fs*3HltYzH2nZbWWf=^#meX?&}xFOI!`2?}3%OA^aQAlh>GB#@$15C6U?RMFso*n+Qt(&FI}Esu9M$kF*4cWEOw2?x32EA{}WY8F6R zNyGO7RjTzrI9^Lr)&e?zfxE4Qdh<|`qE+c9c&i-gX&3o+nfBwT9Z`|2U?4B0bNI5v zbmqV}yT1s1y-bF(BUspo4|@dk|#^*NO=h`ux2AGp^iSAYIc7sA%5itWNs6O#%q+UGk1S zfLOgA>s?$pULXtjd0^)J8n(cT@9Viw7@+?RFnV#*`^oGN%(m)01L$?3;%zFVFn!Fu ze@e*v{V;mn$I>iW*hIEG?^@hktL)}t!#n&-pmwtE^5OERmB!@EjCjI_za2RK;Q|;% z#SPaOnO9DWXZIF$MNK%Cv7cOm`Ii=#Y@fukolv@TB-Gw*%CW8#BQar=b}l&{)moH3 z>fwhxvW@l!_+78t&sAX((Yoa*$DeGa zr=#{0Q1n*XK&{sW)Ye)P%xm%?l;1~v&9@Njmsv-!QpdGvcj~lQXq@2Q1E>Uwapm1@k? zTr2s>9WCb>_@mNnhM$F3^9J1`4G4Gn(0Kh|w zwW76B*nZ`Nnvp~TP?C`=xO7V_Lsh-5WXoeD+c@ne)fjo-1(!}w3Ett?P?ptgXgIJ(8Z_eOZxQmm8`bd}7bj`TsDW-ZPwzAR{B1rog9`74O@Z90Eo#OCBC~oG zP;4Ne<$1gf@?sZ-ouE%c__XUXK)Sma1QSpFNtc$6s}Xnoestw$(Mm|lk6Q7z?w z3dWF?2{n6s=pN-d{=(SSGhUWUo?oHOIIU^Z3AZp8c@cwh?XT-!3R{Fd1z3&PBeW$d zusXhsx}ww8sf$$!I{N*CWmn80LDB^2IG!O^OarpEkMY4IUF&>@%S9O0pipo&e9-g( zKch9E$~|Y6H?SLZd#9qy-BP{AW&4@I&;0ma(>P3HsI9H(w}M=YzH_wL7&*G53-xXq z3GSP({YK+`hCHw92k8V6_@|~6Ig08B8IP4#+b>0I!FwI00WBSKUM0&Kw{{Kh@pRAS zRM)dB!?zF?9QtOGLX{itNLfde^=I3Q4nlgLDVOql-1B)8Ly{zD3B|qU@V{46gp)DH zfDk%_TPE9b_5>A#J&bmU%IKa5V!?`eiHxxh@*(7~VU*kPA=M~r-O&bg0gX*?Xz;VC z`HN81Zax)hJm_X(p;65&3is%VUx}4a2#9!G{n)L{y;%Q+y-=N<^TFgAizNBLuAqv| z;aR@AOZH;pHX*ILY$IQ@msm2$XjYG+`#)o&onF#X1|##5>>M3ca!XIm8YJqq>nUZG z0j}^s&9vxk9w-AIkxjMZ-psc{_H2P^W&r^fJ-HX8eh9Jt>j<&{uEp4qO(0Z%&jt9G zXsE=$mhTBdD!-dq-A#LIa3}+U7!71WpK$8|wR`AQ_7l_sBq|A!arKG|ZoF3Hxoj3J zlSlSr4GNzW!|RZ`;u>tMm}_OXd}hgEM=+Vd(K@09*MLKRl2Cm2iJty!ggDjEE6bDP ztUjIs=9LOZSbVHggA${pLbPBE)zN4ZEE#{M!k?&cp7vz%0H?>k%%jAr_rN{t0@Wcb z>rj06UIe-pL7M3vApI;*h);K5*edp+E~aud&cHIy|9J3c~{o{`kLS? z%l$S(5oMnEdr617BHHon!+IH+(yj(g?52Tlf2@1{+(ThTi{JZB@L(to**DWE4fTz{ z7$}vP*_muchZ;ze%9)+o)45l0smr7t)v*utUD2P_)mo?>^y5XQ)WqjYj=0u6GM$)s z+XElx?Jd3%XR5El)yEDS`}|fpZ!C<;)lNa(ZL-pCQfD9){*m_>PQ4J zYYorwQ4H!~D8IvKhRgI-v}4dTfBeAhKO1Vu?tgioT9(4Ov9ECV;kU_@)Y zE4$WGhk0d2gkGxsd2>(CInVJ|KFHN+-25v< zBFM{|V5jkFBjy={guS{_i@~9Cn3ic}FD7=jEawP0@tl`F)m1T0@Y!*@ab_Lq>;XZ| zoqXX$Wl(TXf0Xq*(f0QhBIWi9Hz!V~*4h5J6)WUH^G|orm6NdaV=?@Tc|@0|^pMY( z(3x(ys>zW~>HYmeO_!8ha!InyCI%}N)t1KB(W!=wKciq;v0L%dX6`6aHH2_Jz`%8; zA>;2U!?HBKwS7Y*keZTM;)1u7&L4&esa};k2MV>g_)7PF-Y5U&rk6w#U5_{HwmV1+ z^R6h&gPtPF@VPFnsJTwfS4L8?3E%shcK`BJig_1ILxI1bG+fcT_>@vDkrdTUPSmb@o2j0<$DI`FJsH#vfT+v=2Q})In_4>6tVHCo&NT{Cr+(Q-4PXs z@Wdw#2emUri;F*&dA_gCw<1*_3x4t?l5uC#oh(C*vQR1twVY%D%ZwsS0zbk+_hK~m z{oJ3O(vRuVRXJlX7j%#9jH1p9Syoqp;~`(rH)Z(ohWpdXwF~Diojik3z>$< z(n}UyQT^_`S35seGk%&tAHs|W{$+RUm)i??o-i-AENx6wgY}=QDRub+3g+8KFRAKs z=uMb}(6f1^UDo{2mv+8RIOacft~m094cSy-mA$R*F)H`F0zvthXrKNLanNBst*NN9+ zObGsSd4$n|@jr9kCnsNcQzoTwK7iRa(?0CCaekkRj7Z_v&ns!laPO~1a^ob|x%y^%RDW_x|Gt)RVhh>>?A5@&2pXL`uxtPlfLj`z z3atDymp^VQVO<2;1I(|1pM41$ctG=yH=TZssxfPJMG9+wM}K64`&EbMZ~ky!eNfkjPAPtBuXR?duFyJisip zX+5RkqeX{IFC%{L}Ys zrTYw6oHGHJ|9@uzpby+J{%gpm-$Qy8+~WxUpDI(6|FxID9lpQ7gD_tGpZZXaV4mu6 z_?;z;)!8zWzpnH_I+uUiYoDdS_A;uBIk=yQb^ao~kH3zPuH}IP@`jW}Jq}#*&mWRg z1)D&RHQ1Nns`b~uAN%j6@R*9ZYQ&85TyvlQP+{sxOXSY}$HxKrj41F1%`b)@0m6^W z5BE~>*U2&3A5}S6pz<=+QfI9q>k&7l7b#5be<$PqXZ&Kf@{cbbW8xJ_RG5QFm`r%8iKsr-@m-365SuP7D@4sSnV)n9L%ind|Rh3YH3T*Vpj@S_BZN zaj6FaHC7Ji=A8WV$bVmE>pQkkGm!BMi{WYGya|sNsi7+Dy1wTHJ$+AtgxCj=u#TDv z&;yE1l|1-^2Tct9rWZ9}oQ&rK>b1m+Pfad(4P5r0r)s*@fQjj+0m$lXr1)j!uK|4{ z(2vtudD~_hVT63+@%xDI7ieEi9=5LeY!5Gpyhr!-Y_65-7$8MMk9nkvdPIrTzzAUy zZ9k;e(+|?;SB;8#>tto^g-g!$M4$z<`F~wC`2*?+bS0f?E(|@Rgx?AR{p4(s_eC&) z@da}xXl)t8>HXUOIF&}~NQ_>J|4HEMfMb}OCBN5EXnJmLZeMqIw-Y5$U;2Ib@ZtNr zY6Gb#2@h5ajH*$NPO$rIYR|~X0;WP@#6!e62Nu!xW0wX*1@cop;vK^EIri4pRtf<9 z80I7Z;?n0k_ly3Qzy7-@7g%0R0wjd44XYGAV0teY8Wdl`3JDWYFIFd!ywKN8f7%8&Q+X|FC_{tAFQ$S#}Bd z)`6r&T4CKGv@-a3*h$xlWKUp+hM#-89G_U!Uhw0ny)b$rzma|iG@r{ups`fF$^kY| z3pzYVO5@1>;M;YtgDK7hVA0(VVbkEM?4@UL@hf2koGsq~NpmtfnJzK9&PO;t0n*3g zraPTEAhA3&VDL!g1lKV}Yq=-CM;IIx!ecXmu37|Fn`&57*@4{+wuvi#1HN)>q=vp` zW9Q&SfS(NK?SjlYe(8w{rEKL?(Abss=q()Lw!1NX{(w?yyk$YZI;aj+@;1x5A~^N z&j0kC&=hyvz^BFkM{i33=xuQlU*{Uw?omgRX0{$JWwUX{O^7Ddn;wK-z6QKJPn^Y!d%s#V}SQG(w?~1g4C(M3+k$_HS zoS2TvD5h6m+b)Of@zs;h>VWY!&`(Z08f>eWJH|3GJhnzLK)HpOO(yD#XOG{D;&Z>5 zVqq=x=?TRnOu<#9MuF_p2PPo|a>~mt@0N!(5t%S*4aK(_b;WYC9+p4(^yV8oAX^%m zY)oHtt^JpG9NEbZQ!O#f0!TPtL>l>k1x0TyN9(84LR}`f^fL{kD|^B>gIBmm%arz9 z?zfpk$GoJZ`wgn5@l3T3r#MHeYPnFdv>2*jX{cB6Z9P}Ef@)Y|H?5m1rIDA*m>-4q zTgUX0M(>rJn@ed(m!{B4rg)He25r492Z*?*iBmaW&rvO)X{3Hqz(S>%^Y4uQ&n1%L zd6jct-p!cSRvIe;vPU*}ZMP8XG;F140s;c2Kz(S~+@fpQ;&%f9G@}EBVXN(Bfe{{r z5R;!;l+)pxVhe>8F^vaNd;Q18skG_#!OouVUj0Wv!2w7p3*>Xd90*PHysGq{=+jGS zsspMk_xlH+E!HiDt-z;Ft@0bc^=}i*2aNIR!)7itbZpvJJ^^6-1H4j4Kv95gP*vo& z|9v|AL{(tJ^tAvqPFNQM%`tDy-Dvs^Z;+JRfnD#r)n^m`5qO*213nZ-+fIw_a|_xw zV9JV2<2l~&Rzu#>)2H?1EdEud`TKI1F#!k0p0Nld+Uh>&fYYa=9W%GpEv;eZP&mP6 zdW1zLe?T}EUQea@f6NZVExr|C_n?38ZJ9?z#F1C70-jvo6z zf4BwYRU9HKod~L7)vDJ41a#V(*hHc19i|QL)ErTNUKKM)MmZ;a1UP*I zue#jPFm0Q|o-ON+2E=eZg1t6E=0DPzM#woXxtM@H?PUBt4Jljo88(|pEcV;rO$S;K z@|pyGf7r2Lu7vM^Fe7$~VG$f+WIRl7T7;7VvMG@gdef6wMD9O}-v7_=1Ia>kpflKQ zA1z#j-FHWd-%?Das1W(90{B0P5UC;nh1`NP4LGts)TF)+U}XhUTJB3rR0SEva$N^r z?Wmy)9i0Dw2YJbZQGP1{1~OYumYT{?kL9Nt;Rds*{4dnP=CX~!X>Py%H?v_$2e4Rc$8Jsjzig1Ry>ll_8)&$E{W z3OH`Ba2YfxwJ4j?{wxU#YWI{EAHvg)eu{66zrBtwv# zAz&XIsdl!77;bkKkw|1+Y!~jWFChl!v^k{dgmw2o(_GUXB6FS&(-#2=p3`up5At(dw?<3T)vVX6T=%%3ASTU^1H`Zj88(-edou*QT zE0Ae?@JBS&dH@}Z4{YdEw|oLvtK1(Q$e2Ev*48T7&#U2=I%@7|LFinGz8jRS8>x;d z70bme9eq1hQ|YME9D?vO{(n&N!sr3)1_P(UbL}aY-|JTooM4ArNwN)eyTmfa2|&x$qt1?sXqq zG>WuK3T_{@Hw;1&CO!RYdCqq@7*0Mw{%yxk`G~y~bWj$94k3%$eWQg0!QWSrBSDy- zk$qLKu?AkAuH+n=z3(zQCO~+dYj?XJh>9LyJ)tGC(ui5r&>4LlkU;Mf&=rr24md7% zAA96=ga?lz(+4hUR;b#cP~GnjKuuC2uOq*88!JX2;4KtI{q`;2BWVzy0Tkr* zd?$mo7KE!$K(O7gdSMO(NjUisC{zsE@Q2_0#rr#8^Yb3q1dMn@Gx3opPT|qypdfF8Zz6&|{^NtPemTrL{L2n?Pe*BXROq_v1B3;P0xr&yjAkCTV&B z*k=RHn>p8o6EC9Sg^SVER&TWvxsIIAhVDPM!F_W80Co+4(Yv)tfA7|-XB^@VD&5m>(7KIFCk#+c zHG0#9TZ3dWwq$zKJ|L3ZFOs%Z&s!R>*q-}_Sst!T6Z-w#(QkhPA77BP0am)PhD%-S z*@wHB{FQ(!w-F}Ut7Aq%=P`|Srx(X)S8&&oqH;D2_xfjW`%uD#GRX3Z$<6%3clzG= zmOSAuUF8dY2@-wHp}4R!UNon1_#z=)tz4Aq-;z51r6px$#w$a>v|SrX{*wl-8S}R< z>aXXxb0KZAXeSVd1k}=(thK(tszLRF zi==@OmE7-bS^slK&@bolTh`oXck8h~Uzg6H0d5q{fD=S`8*J;j_Oa%^1bWlWg>2ox zocd<{hu6;luT{VTXSgApsD>WV)Pfj|Oc?=8Dm^caaEM}OU6ZK)FfRboEe1}&9c?9d z8sWq=w6+%koZE_jV9bGnWDbZ`^BZ!WtrJ-H)1$&?ezybp0`zLDAsfZ$LN@#DUH%+c zkOF${yHSDmU=*aHUkW->O=TqYrYV=Wa0~72vT3BMzhD*hAZ_VFbJ4_qPkT=7mlrQY zsEVGg4zgZ_L~aoAZL+N&xf`cNViLt}N+zrP`3>d38$Q>*+X0-?5qg9%Em36JXq7qN z?e%KleSO(%j#%J-;5CAtC`=7LN_~+U#8hnjUQANe?xvMFO?uPfVC0fM0S#4{KlLI0 z8x?s~LRj$D?5AL)YPt`=ag7EipsVB}Q3BhY8n;|yI<8Ge@yS2Nnx8SD=&f90*~xtdxPW%s&CjkG}|Sf`}m&MYaT)A7X#DbyVLq zsiRPLM`>ehq9wO&#UJ}}e@K1$fpPAC0tXXd2c4unHAjq3x{)m~ zae=*sU}Tr){-a7{=UOVDwDikuqe2&>2c^{;@1W3^?eVw67|6E%)wF~>dJk3V6QDy# z7qazcDB;)D7ETO6*Wa2dz?qB+;opPT2Xj#@nw zw?vZLs5K%(Vg|zJ>`Mj{n5}w1P~sHi($@F zGiV*T9eDoNbMpZo?IwkXj7#GulGGXpp<=dc`Z)~^A2Ib^2KK8cW8zQ#9t`KQlHL`x z8`rJ6{50-Rx3QdwlCs9&q6!E^O`ZomqzG$-=ui4&byo)B?UX@$rsLkTY$r-D2Ul{Q zoJmVpjNv|}p(QeZkVW0`qWkv1PMvwgf)N)NkV|rd`E0#e=#VOboVcuG8>XcdN{n4;3{o_w5om@ED>j-DnS9uwcA`}`jiJ>{bkgW9}9T>}}x1uO`uZgD)__!48> z(yaFzIuztXT;V4e$IWenk=}>^QxBDuzx=6nV&;lnC1nq0Fw=QBOH7aR_N_a0CH(&F zBmbX)GO_nEh~MztI+_tw^vAckPK$q2)>KkFfuCJqb1T5Kt7fzpky}cj(|VUK#C=1a z(sZK_%kq;ym&*hGWjX>yd0qHclz6#1E2uCe^0`mbf_ODcdgXrAJ@*2d}!fX|yO zd&$CN(~sO$=+WQF6_u`WdEVz;@DC~WfXS*K$W3;i0_gAi1pu1!W%GQ6%ea@X4_IQh z%W(F71ZLMn%WIWcqt|@Rg-NSgSDDw$WhFj(FTT0s;rh)_#?C}Fk*HwJ5L7Ed3%Z#l>p&nN1RUT?n=>SGh*yxSb$Fjqs+ROoEj=|UQ^`@6V`d^ZLc!GD_xih5& z%x1#QyV9cmyYU}@tHC5lCUAbnlXy@0*PKY2HGlq{NTD%Jh@-eTFX6hgu|q#-t10$R zyxrMf_s(H@pMLogS~7$N7dsV-$#^adV&~3OWDF>hqBhErNa@WN0rurjn6+kALq*{T zsxDiV(uQBzZa{qua96CB3lg!TA-Z4qA5yS6$V&kTKa|t)ZkfvpGn4Czv z)=Tj1gpWtWZ&iYTWjhO(Q{WTdZcKb9G2K9)q9GKR34^1?3*lSAoyIaOi18nFtZy?+ zs(H%20s1|LzK}QTuKbI@Cu_rJH}WITvfiB1-OXdC28IZH{737n&f%@yk~Ze`Adq_J`e`}`St?|? zYR?!f!TLnJw$yu*$4TC4sg)yO0ZW_RcwYl}a zEB&DIki`5tgcrKQtX+NA6=Dfb&awwY=)>!f=DQvn>;9SNYeYLx&s&>L+WuT~NwHk1!=w?@gh z1_(V>m52r77yk14Po}E?nzps$r#4*S#Czx=T6;}4u|0Mi*QQf4VaTYrlC)^e6{6%x z%xd)K-+|7<0vy!Z-Lh6Bxiq*>HBpgr1uuBTi(jfbtEu;0t^LW?R#!bDVxQ`AYBD5X zQu)Ojrw5sy5MQ$cL_(Hr;fzlM*jUiAoI0Y|4HTv0Ajq(KM}{#}mhs$m^yJQ}>=Zm) ze(IX!Z3YW`?ZiFdWWc-iS;TPHPB;<0FEd}JG z4{7*-Ins4I&lQ%&nQOG7 zfQ^GwO&@nplHiyy@?rN`M|t zduOd${4P&^K)54$Coe2bXIS}Uiu&Z5&ekvG{U)tb3Z}gAi{!fw7e<~1ddjL;>g4Aq zZx~#QI4q-=YEZt$M&UK>p6u6ab_k{$)PX^Qopipa7wb-?8Qs^p$5Etj$=wVjJF*lB z0Fzl7^NLUp#G%nqN@?59K75DpP@$2Xz_M}2h!xu9y;YOPt9tgE?`%7fcUtpD?y-;L z7eW9i_|aY6eTeiR?WjF8R>;%CIf3*ONtdH0Xrp%4a&>j(T`BHuO)$vnt6Hn&JETaa zGEg)KYuz3W^gtDW_UhEAEY4O+$FbLzK&#fn)dEHOaRJzm=zhvBc=c?AMh~P%w&f>u zq<1Kz6fqqgmLBh7W<=5(+hj}SsHmS}A~i|25(}=pxNt4rt$|TmjubX}K3Z+*1a}_) zp2a>9UBFk>pFBc2zyt60SGtc7*s+vUNGGv6QU-XVov-ero>E79&a$%Hll#Y%>O-eu z&b1hj=fCO|3@YJPw}PdP>cM>m;!0H?eAXD;>zjf&abDRHWsqbPo}F>yd{!_M`~v2o zUl30pP~PnAyQd#?CWs(l{X#>O+Q=|nPjuW8uM1alkphALZh63=Lo=(yPg8VmZWXiwWpwH*LdHYYBp_fxkZOEhZF6U0!*E{z8pl=hX00bLV47(ln{l>3F}( zlO>P3%ZC(eA8ZJgIJb>Y?ttTnOJE91_Tg#YEr8H7sDwK0L&$YVJ~+$QUtUifghDex zcWx(x8|2_Uii`gXaiL$ly0O~hDs=5ILZ&m~046-nYV~MZfSNr$!$M=ro(Z&Gv?|18i4Vje(3 z{1pIsRdph?vx+VlcyNN+yGernuso?{#p|)$I{LjpZwy_5?9y$sl9KK8fg+{RI`xw6 ztU#3<0e0#SZ^e7uYI{;svUPxwV>4Qo=*p{QzDn(mY3#=%a(_%IL9 zT$;DIKep>pH>sQBEtg{(ib3thHbgvI570e)3Rd;jYK2b%OijiHbv(zx&YrhoU|=XD zpcQ-J*k?pVNx?0}QsFJ&afJpJmkGiaFq{@@4^ZtjT> zwoS6@oId8Zal@)_hK=$@7_LQbJuiisoBQ?jC5R(*81po8&xpj9j=6S)(>@ap!MP>H z--Sbj%6B#9O9FyBlf#BN)gN)&S2YP?q0JQYY5UukQ#7pnr;{Dy2e9NxZbK3?f!IRf}Ghu`~AnOW6rE4O=83!gcQj{olu zf9*uA*un)yX*mOYOuC`DJc-LRmV9FN#f%*jSLI;}wFnJId|^9!$|8n{E# zXuy8=FVsI;Rcs^j$HP#-Lf`=rkAlp_jyc$r^C5?(@huvfb0N0wvqk$1gpjVNa+W#r-N_@ zQ>TGFeEB6$zzo&L*ggtkTLa%9B~}FZ%Xzh0w+e{Vid}%{vi{>A-U@m@z;c$64{JzB zsWtw3UyMYQxTJI9YIjM8RrcWAyZoHBnyI~q=$M4GdMSipLK2bam*`H0aKL5p6&POq zn&VDAf~8-;I%ak8uB|OWIS>hct1WTFmJvggUl9qh`6w$X&FZAho#O{$(uCR@^y%*i z;htOF;?HMCh%GB-iR;SZ>zhR%+#3h2`OAKGIv)F}rlh?V^vPnu*fB}kVGwNcE3d~? zaj#6#h>LO)^^A4`0F+yH<6%Ki$}jdu-g7G#cEcz+OyrJOs>Oa@w-))cBxrOn59S&I za{)oqM(MI^B%@hGejzTSnl|K|(nWK2>_=CDX2IP`#q{VYNS zcG%88=@LR!GXsc1no8U#r;yMjHLv1I_fv()&Nw~{={;cgpU;ZofM%>x5Eot_QC#93 zE-!T1HdD~bYz25s?+$EF9BgdwL8gCC=jm@8LBfXpzP_1v$JNcT2pakq>c$zl``?MP zSIa7}WW&so8Ko_k$m(qea5#?BAE?QSo+A)G<28n#v2}tk*M*2wwhSu%XzZ*veffed zS*EFEhE&5_x)@2>8obN57=-(1$J!)W0zyo4wYkTvMXXJ0Tz5-r-4FlDE5X00cvC7$ z_mc}r6GhmUM!*(f20T?M#MCoTWGw3$C3F5IU=0Wz))M`5rSHe+k@66WE;IovgH%%y8F$ z9gnQs(=riJW>PMLxgHL{R3k30BoPd=3crdv-t{M@0UtC4W~f?sPU27pp*I~p!ImyW zD%sXGo``!xq#jcpD8Ms=J1!yPwXs8Wj3qL*uD%NmM)XB#s>jhFcyusUL z91u2{d*lzL%To8^XHPu^GT%NrT%Vpgc_8fW*8^&qzRWn-sAYn&!Bo9Z$pAY@&Z69b zLiKkE}f;-WYGk}+u|dQX5=>WD{ApLlYA*+RWiPhS#;V0;|P^v07Y zfnA()nb87dksl9$n571nfI*Vz2se{AR!f}&W5w+{z6#g zu2<%+;O>4M0|X}KedKleUp{!TXZIi*No~)t{$d$!6RTD}6>DlvaTRu3s~-uGEUm+t zvpbr04lhyaeKOhrQ;3bseK-6BHif9T0oFoe_vOIpT43$zO~b=??t`UptYKSk&22O- z@ruK@Mni7hmNKSR(Xn+=_Aj$BuwTgI+4TURtHVe~5SwE}I-`zvG1^L)-&xmVIRNS6 zy->S)_I^h|EYPIr+H%bgQJvfN60lmO@=G<0(lN#e^@IaFa5FQV`zjDQ?tx`;G3nI0 zJH1;SuSy^3pX7Sd@+!)GafIl08lmYZ&O*wu!+U1dvkzm$*t3)T|`n90^Pmh&x&;_>mD( zKXpl0j+lp4I?FpxQ>wl^gLVarf4fiNq}qpf0R++S>A!%B@^Bq-B_*ZcDRBiQ2!tI? zUbqRQR7-);Zcp1f zkK;Ehb9s{hBA!!R%rPtYi7P8|9`G!Du~Pn;Sy?}b@2TlDG-z$rw0GS?Q&Vb!+oXPTU7X z@&-khfNphBb&lpGU^L~J6WP}F!QQk&2oT9`)+4f!(JiAFydI)kRwC12lb9R|X8@{k z@cee|R*z(wGj1<)jAM5=a1LD#fP827HnM2xJkr6RT8xvw&qPmeV=YlSD*sq$_0lDW z)v;lvE1Pbu^yw)VP!O@4E^23G^d|1(&CSh~MiQMZ)XdGhSD*VpAsM@C-Pd}YG+v@` zh#S?YQ=;R}qkBI)023##{w3m}>Kkuqgyf~zNcC2*k%9@;?kRDY*|{o8W^Zx$l)8^n zsiQ6EF;i$??e)H~3wc5fxqh#A_;OKB0VH&SW&9&NM6%oU2pv1v%&ts37ADzn3fg+j zL`*Ten#0p=;Ugez`drz^bqE0J>#zsXi+~ua{9zq1a%uZFi7w;LLwVXLAXFi+h-WwO zg*q^ua?a=2KA2Rk1~HF!1;x0FKpoIy|0ub#3-XR$^)gFJc(1pwb`6*_gMr4nasY1C zukQs^GqDZ;x*g@~VV^4EcX0<4M;ctV7N(R9kKpeg2?4O;m-2W4*8_Wo>I;!GA$*;= zz@q7fpEOARb?L`=2E1Mq!QPXB&0t#^N8+`*!}=R)3+3)Lqjd-SGrNUWm-1F%S(Y>D zMcNm1XxcDSEa@yNPxrn~ak(GZO-k6RFl5+` zj;#Zc*F+yzkIHR+D7yQ>?|l=^?IUYdBAe4pDIw~CX%A! z7C3pQASyoKbrx4$D+|DBrjUf+s+OpmZ_bib)KH1z`J|n+kl$_tge}m?oCi8(8D%pcrdTX+G_1z?zFD&3Z$Rws|<_b zY+Dc!pj51q*PP_?c$H%?{`#kz3B`c7lrGse|IUwdboH6=F*;XRUh!_)ajHkSsGD8k zgumtS3zY$l2hP2oE7~wQ4MojS!M(rN=oGNgkl6Uw(-<2)z$^>j0cUZK2v{6h$fWb|daU=(M!3AK&^B_(5qDGV%g<@4-jSNSd0{Y@$|+Y-$@KQ-B4K>!ha6jQ&DXYr zx&^w(p3@ggDAsTLL^d2UEI+oY0)YM(Dub%ZuAo#mjp2;~39OlgBO{=%RIHkhcLn`T zhL+(d3Qqwb7E?MCDl{?I5o2y#*OB&6K? zwNX4Li`ub{4l=8R-|&e6PV3nP!<_+iH|-VH)fEL;%$MkKR8RKYCf|sgN$SJ=8Zx21FXuGsY7aDCO}Y1|O*qfT9mj_) zPVIq>0s7f{AIEdY@e-{h>q$YZOQ`oNiv_pR!x{I}jA&Q~uKjebg6Y|gKD=DX_Y%t4 zr8lVmxHmFgUmxWzGCFnu>Nq02=k3&Y2CEF$_P-KI!X~eEOW(OPIi{F*Q+7xc^p9TKi z1Pz2>j!t^h+_V>oP_sS(b)W%ild>aRC^6;$kAGg#*yN(<&rSw%7DRj90kUdcEQf>H z<1FY>s*i3l_3cEtm%(h8vc!?=+7;XPG8WDUVqdP=)~KE*>RfzMwWdVbcb(t(9Q++m z&e+Lji$vS*+yh0`jH@;u3p01V-bo+0tD)cspVOF^aX-#N zk(P{b!@HBMmzQ_8Hi9jcu6NyZv@on&9`NNMqU~;WKXY&tU zG#?dGLx;Iq_?-4ZXe}%@-ovS);~nwJyj5nd)_f1oabXTFHm44SqkC4vkgxFLvsUQo z-a5WzmDln(xbe=PMncXwCKgMP%CKVX9Go1_(WDlZQcoK%d*;?M?g3Z=IZI({tn&jX zOS+s32tu>-wm|$}s9oc-AKGM*aUTIlO2_Ryuz$7@z^oQCdD)Xk3}uz*sG+pPjk|qR zx~S6S?`v5-VD@QCe>9&3+;q4J*;LrIW7UnvvQl zltcX{r(q~UbDx6gn&ut#Or*KuK&~`@p7Hj8k=;kl)5i)Mp=ngtnX@F+^aPF;7bK6S z?hz{)^^XKlzN{8fZO_#x?6>8TW*k*F#6FYEkd=+0r$6!zJ-}3< zfcE!A)&=K`aj>(*qbg_vtr)YGRL4B8L3C&}dvkSov^iV+Y?6+*k?DKh7&v^$tVnQJ zm%6U5DJ!c~{ZPh78?Uil@TEpkRu5gUjzO0|B_ho|efsO>~LL!R=|0j^v|1#_64m%jar z43!Bk*5%$Er8e%-r7o7T!FV+@0Y}Et3HK4z-3b`nHj;*MTTs%xU)?@N$zsIJTt#Ih z@J4v4?y6WUpLue}VUnBcnn-`v8F_ox(DQ9+Lv3qEBgA=oeM0dlk;Gaw^nmTle>;KI zPK?Gv*GqELy7}M=orA^fvHV-(I^9l$(N4(J(_ivAD7;7`QY~LLaQ&J|1l#i>8TCKs zIqiAUXP1K&$8+hH8O***$S26@f*g>(4>xTV?He#1V&{CvJ@OZ0kdyp}+q{K*z#(ed;eMBJ@XaUGFlE z=ISwKzte=_IO^eEXXv`a!+U&9wqZ(VB$5ytug2gA|MQ_-2OjoiDu$a|=R{yz1Fmhn z!Q8R$>q1fY&n9U*lb2eO6LMl+f9|lr-@koWgID8D!kl2#J6~-^-R08BWvO1`E*tmE zTlfVSD1rXt%g{i_(6<~rx3!}(rex}R=_}&{nr}&MoupNmofRO89d-3x`oq4AQP&mO zmmn9KJ&WpopHj8bT&^nQ`6a1L4#4shOD3(lafq|IB4cxnJ1Tuj^|vWB7S8)` z5_?AF@9J$#1etO~XyHGk0R;eb-~Q8RrXQ3&tuz%^>-=v^@mIQUv!$yL(rqY<{OU9z zXM6SR_TzW_$CD?ttqK-v0#Rx?_5!)3MffxWbcmfwY?H5A-z_fvdCjQ3z1G06L&M5- za_uN5$z3kx#5_&;KkXxYlQ}e8f;~>rxQ-((Yv(JN_}7h|HReK*q$DxO>fR3CSziwi ze|?(*`1djgD|4TqNvcf7@SlT^Z=uv8iw?36GaJ+Fcpf%`S7KCtoiO=nif}nn7I{SAX zrp2z0w?C6oy=K46%>F${^9p#+e>rK#|77zII)`ocf9xslI(m947!9jIZ245r!`8-)Iks z+leK7^TF#S_vTj4>V!ms&G}wOS9k8UiXCk!>!fym>A${Wu(E#O~n+hMRO1x5+CN&Yg6 z6aGQe9f2?S=thU5a3Kf`SPOkIu?WHH?$G6{1ey3PE&O@$QfpraVHB*gv6&mQ}HB?J; zG?0B1@mT%Or?KLQOS!5$vnzidCfR?~Ys^XD-K=*ZXbriH^W)2bp%i>m)Qh|1>&>k& zs0A)Dl;mQ&D}SX+ry5*Dr^C(zuTdF6L1PPTx68n}tjh<+@ zIV#|+FUha+?RzqKp5vx`E5{h!NXU0~p0D|0Y&3t7<#Rvdb8y#aEO7ZFBRLJDe1`rg|HJ~2YWqT4SD*B!DqRuGY&k+=|H#*>NyRmUP zp1s#L%%!qUa_o6g9P6iF%*GWQc12~YGQY5;+`DOlu{(p)Xp94>QPYd4R$+#Q7lcLh_4a!+WM+r=c)S0c>ZQTE@+n41y}!A)Z=QqVBG|Z0SXjGpZSN zodbb?*&r~ya5k`pm%k>SA{rbNx}f z!o%-lVqCNgf7=|wLfxgdYK+upSm(Y?u<0-4)JVry14D7b_u_`T>Dj@sa+5>av#+ot z5`+-an^z@BlaJ5lACF_j1K+Cbh`CQ5j4D;>oYXY9mKt1I7RWhU!CNwgv$3>)zptci ztlp}kpqO;n`%d1L#zc!9!4Ch6mvH>_OF$QJx*Mh-zf*g50PUpD zXy4O%if}@ZV}?f80Hrs2)Gb3 zm?!*Ih?yZXfuR?BK6=VAU{&m*HRE!>t?EHSJmpWbrC$&>{o&+T^gpB*SlDGSz7gMG zD;C0F1BjWo=TzQEsn{7=`E4~TcIoLG^)WYW$+tS*rDjKLG7YBrwqzin|6|?25q<>f zUD(|67zpx~I!W-HBC9QD4}If?MJ?iTDc2DWZSIfS)1jsc-o(M>JmpUgi6bm$LpC&Dp9#OPt(;(-A5%paaz14{T0LYgK})?91JF3 zr9!&{ED4KDn9YCx=uiV1WT}q7{Mg{J`ZrG139Nqr7Tsrzde{fjqZkN8&Tl3#WNKwV zK>A`!tm{4Nw-xuzlRvKs-ux}t`v0aL&L!s&@_As+_;|Wl+MQZDPKOB__bj>{C7o?B zcRW(Sc`m!l{mChuqN}~ba@L3780yhYTkZ+&|8dlS9=ZfB-ntXy^v9YcDxxuihi7R{ z>DS^?{I<-gI)P80osO3+gy1(xJhVCfw$)SrcCc1=`Bk>=N_2hs{*_^JYwZ#A z+T72sjK05$LHP-=*0fI1HHrkG5+{{P{_%J=_j~%BH>~<^HXh8O<1zROW4)I!)3G2L zPN#?iMa;uh?ta1XtI_|OrN)c(fzq|?-m8RZ_9rFAVpF6MZ__A{ms>RAxH4cD^7em9xJQI>12(#1q(xz zduO45vn!sxbBJ|)4^vzf5D<{*NE8?X`j=OLgzhkakUVvn?^Z=Px{QG~LSj27Z7nRa zOuT-@Ser~*#F{*lTq=3lunO{}mLS7T5g~cBzgg(9I@yF#Bn3PRp8$8_cTUy#r=X|r z{qom=m@7ih-VoruGrk3XLBTAX;rdS>`4>kqTIlC>1!pf@HnU9j%4YJ}>Z?eG zNZ;rBt0)ZUykHJ>i}`W;c!vsTc7Vs`fIY-@I@mvd5~oGx2#pidn-wyUsLQME1K5`j zMq4RkmG&51(HIEZs;0#;=cM=|cnwNhLFAjRjGzA&Rh)zyJP((~gQhXm)t$rX4@AMa zgIRp5D{Kb8f`pxQ6+_QohoT7FlgnJ!|G8v6ecjlgrvpM7Mzh6r0)h>`Ozrf)-bHK# ziFM7fYPxJnZ+;Ux&pYsN1%Nb5fYj`aQAn-H1+>0;v{*bK@QIX;ufX{QQ5%8fk<&aT zO(FQw)gg^1#D7tXa@s_1JZNIBVvn`P)1=0J2t~s>1H81zB$Qsbm0_~nCxYA&p6o(s z735@afX7jMpyIWv?sAwwj5PY6vIjurs`T`9#oBAeIjr^|ZCi2YnG5Isa?Vit!-W#qdSvk5C=>@j14PFdXd}g7?SdONrx*iu_i8nYByxo7=^y5% z{)F@;FOK6s2tV|H2pprOQeAO3`wZlas!K&~P6`jmnz+AiDyt;4v^=k%xSaV|vqx%E zMH0ZfUz(3M1K9Tuilq1(iUTqvoPO)CO|KRhA(;ro;IG)yBXs1v0J*(E5mrsRM^O*J zqu&1lxRElK9%&STMt>OaB{NwJ{?(C-G6%Xq+`Yw$k020o%S5rR*7maBK2d7wiBy~T z$IN+ANzUmL8YAs{;Ro!nA7H;?^lXfq2voIZm%jr-n~!rR_77J5903S4#U8K-G#$1x zc_g;stfY2-M)UF)L(?BF!+NA~!{K6+R_ZdlnV^B#xU6nFqu>7e9cjZ}L4a)YpW@Ig z?(FOYy_21{0Ymn#{XkR!cVJ+k?{M4~%KSrr)g359`fz;B%G#F|8z-==1k@^tda zKaTDFw*dtTmXWq2e0}oy<+x*P**W2&#x}{yN|u-khw~WylgP{Gpd_ zqbsNnAl8GU=x>z+1(#iOR)?A$beZxKA)}+`1C1v#8d8R=clrd)KNIKz0!#pBJ(U*! zZDM_rBWe|dlcw~Uu?pMy)mpoeTOc)y5BR|eAV2_7SD9ag_`2Gc>!iB;9Ek;a!z){l z26hQpE<)bbZy#iM_60QC(Gm|HJXivl!wLW#=FXKhq6@lkWwu9faWuy^6yBjWV`pIS z(bOV+GD|b*^d7m1Z;Uj06vbB4&}u`>fllbcTo?GE9T&-l z4G-A<3S}0b^2&)@lSPmOAhyPz+nxV7&xE70Nd<0EzPR^11lPkbu`v>PV!iGeB|G{v zjc4TJKpj!(&XsieRzl`n#BeZ8;Vh;vBbbGqyISjo2LLUO7FJE#@aPr288L0KAZNVY zyN6p{#TE4@z8akhd@CsF2-7q$u%>U;Zt;R|Esga1g64a>Z0SK7AU_SCvh5}_KrENA zDh}8ZCxgxz31iwn490YX^`2N;=gIEdgeR3+1w#E~K=+gLFu!M-Le_t~V}fKcn8O*d zw+{*XU|8C?3whyLk7D>F9&@o!Y%Im)X8<7Cu!nkYk68M?7_Rkjl#OB#wTqJm=!qts z8|MfoTq`K3soR;9aIisQ{p-NP;_B+*DfpT*fCg-^5Rl_tiQ@f)B)gffB5}YB$V#pu z6gz>hpz!(56F95zA>-l-9#nXA((*$X8H?B;>L8_jRDtgGe)}5`<6rVZZwM{|X@Pkx z$4)}iX=+xu*b^5XJhek*1hH48&E`;IjW8Jte0NJt_Q18FE55TQ2J}qq2YuZfYhr!X z+eXSP@sH!?W{hgx3#a{U_fT<{!u<6D8zK+%(L~n?V2WSb6WY#&Zxe%5KO-nJXyOh` z`uG7Tv{8U3U}SU$h^W(@zav8bvC0JA)KIdt2T8|PnvByaf{qL9bCy7I5$yL%D;E&5e zO;97UylN84qu>4XPSfI0;h@4KTZ$$g+FZF zGqxz$1XDb*B;B#MuR-Sz>|Et*Be{?p3>G2ulUwUIuS{wyJWqzA^8~9@F~ajHK}!RS z{zXR5+1@;Hy88oG- z-Im5{Tn-?wl$qS#gBHj}%w zlssRb2c19Q6y{gw7~Wbo1vY3DpIDkUPZ5BvdpH z5N5aPHm|36KLL)}BTpT}P73L*D3j-3uKDKXouZE5UK`-h)TGQ6wT@^-(2`L|dajxI z)wiXmvrB?@21~L>yXwtofLyG4g=yiTX+^MV&XhD8>IpCL9AgN6+xXO9Bm(8uok*Oq zIKku#5n006X0uExgBis8*Px-O5<>Mr{>K&FzewOAjs{{MC zzukt)_n}?__2A~)^Rh=HOz-;2y8VF57YCL75F2}4S{Kiyp(8ml9=!!AAxsuj8|uEC(>j-e-w1Dg+Bsu4brL}2pB ztz>El`=MD0CqR|XrEC}ka>;Cjj zDEpZzp{WFRXKib&Ky=ds+CLS_Kl=PGDHR(1(h+Fm&k9|I}{6W;aDOY|pDt#8oEBwFv25fXjO_Rlu2em3PO{`&wy ze(t%%y>FXDE$Pjoy88Ndfy9NS>anzJFXUd+=8hUa1~n171{HmsbmwXMy@W2<7@5Uh zVjoH!ZLm*sk&irqeS%S~jt3f0#QEr`F;h2LNtsy&5?TM1`@Gq~Sdm9}?)SvQ74?Un z_~+rr!uR_RVM+f)y!Im`#cQKjL*HbvS6qY>+j0J+&u&^0a2AYqvnzc0+Y+tZsYITK zqZU^d2V)L1eC{NN-{30m1BQLtJy3TbplrBrQYzHXNV8ATBe0)A;88;-}wLXgPGFraEuRW0AYLt8XJLy1> z*9<_#)8Mc{J`;HYJ+yj)Dh?TSySLB(@YWR zKi+V!leS2Wbpw8lfeaJhWTrVXtoV1>1s<+aUEb83bUsaKp(FX?*3aH!&U}BdSisdR zms10e4;#J2Ub#@kMHdOY>0UaHN{5LjG%*bEQ*9#6G=)>8gUOpjO46fqvG|r0Zf&Vn zOyMx%N^ls6daupRQvbO&g!Q64_tYm!Uqj<(SLm>el>jODl$^`O-qp%3BX0Z6xvz82 z@2fs%VyM$t-xUFS5KhOW=%^ZVq!E%UpqZB5+$K8d zlv@LFC02H`vY_CfdXI^f$N!IWarShn#J!u`H!A}Ibj2I*Q4v%K;{1X~qAyBEHwINm z6!CytqrPqFSB1`@LQ9g(aKGl{T29MD66B1AijE4{$ z?9>|41rH{`6gK%w)u;=y9wa-M5fjTs&XY$@qwJYxT+2vGBT{Ewl`dtZzi2}JH&aBg zOjdIK1!R{XcUk4`?1i zEa`g54Go)MIMk*H3{yag(hGyc*=d@%r!L(kn+~z;KoJr;yl_ zQxh(5r4#-)sdEpLs$@uwhMvb~YOHs;=^SR<;O_}4=UG!|Ye7!>EpL`}J}#am!f3vC z+~h%qvi?1u2;}b6`KR_#ajRsT%7o;SVc3a=%~Fh-9*Db}BQ-Q5F`HlQOX#>Gwuss| z>cnXzpWat*>suyW?&(Z;=GhP20$@;*D(uIG%8m6q8b(I2A&oUT)~U_wL;|tQF}sNASkD_ z3 zl1_A`!RX-iW}#lbHy)nu93*BxRgYW-O<LMx-pJLX z?mT2mXSf3g_s%2v>U!#W*TqLhWzST<9oEUQG7+S*-&zX)FaKYgC;_~D3M;Q9?Eo=$ zI9r*QtfiUu#DF6(ECcBxUG1&)lFD^yxbNspf?8&;6Ba#q=<+fpj_RMU|F=fYS=55P%vfAs7ksnm=O~bAJVnb2p0i}`SRZI#gpd+d~d9t`bP(%xl%QpXM?)3Az{Hi z#5R>QW;)muq|=f_9{$ z%sXf)wO0@vAje5Wc69zJXW`?2UDci&o4uyvu3rrdgYH8=jrg_^iy{=>GHE`tlB7|> zA0+ugCM01k3BDt8EeST4FNh`P)i+gwY9Yo3N#WyL^?$pXz=JkI=0V4!vg5@xQ?Lu2 zvm{ptH6WDB*W(ux-}?OHLV&#{p^+U2$X$qf+gl;j$VXF$l7^z(k~W>mppdT%+e#M) zwael`VIQ7n@RTN%i`L& zoHtjA7f$v^&+XiW7(W(y`pV;Q^ zyS5ksr|_%&{MA2{2>_Rzt7Z;eDNDI4&UO8ZwSUk@eXgAQR#N{Qy%DxG>s?xWdENL5 zH4e>Up_5?3a>w26qQ7@ zQpSuMQFpI=r)v=n!sBI&4!r~|1w`-NId9$ikre~Pmk9h5WResNIZB|zXC4O5w>#Nx&uO;uEefr#Z^tzcc z;Vu5p_ys0NX|UBOQrbZV;0?dUu0wDB^~e!EeFKCgF}Ys5G_k`Lv8IfSKJCl6;T>nH zcR?>nDET)d&Yumvp5h7pe(*A^%sb6-YC?6>vMc$(;zQN@xns{j%WN*2SJb6Hd(O+* z_!#2w=c)+jfpYPow@1^}lOZHDN7#Xk>=%OdR!NmLlzmu5?UG^bED&!8YQAaPZ$8<+ zYRao@!VAT_-QUSqY91l|m4xIwW^iLzmgSRJ`(e*#bH#QVFFt9qL`WBY+Z zDm@bj5Bu`X=j?w->;DnnRIbwtZ}pYk=t$stX*`ESfn%l%Ow&f`!)3<>XV7 z&w9EhEPfjh4b;sjXzD+E|iaJzYZ;2uP^8 zIZ^&8LH|+3Q3P0@TeTM7Y@33RyjZ4n3=NG=Lm)_{-jq?4T3SzYf0Tm%02pPS&#h5< za*~#_+3}Ksb*2h@re1@;+}E$oqizR68Tky$hfSxlIwN#-hs4j()2vA!wwf+YPEA^h zO@IvVCz6ZBM}uANZ8WilgL7T(Kgg;++o4`Jy*xV#ismrIQ?|v2B9&!C|9R(Meq)6Z zB-zOk0ALiQNumQo*K?fP5s29;z8y*rOw*$ExOIfiHGV&3Z9^cA#W}khOmh53`eVoXcsSKKd zqp(8kCRzr6;oNpt4}S@jJd!cTXTzYGRp>TrdSJbeN7dm$!yHO?Oxy!gmQOYeQ}>(d zkxc=8Gewa@x>gY#=8*?MOh3tfjMjSaCrILWU`Ge{w~Mc*6k+w<|M$GWG)oOYw42;x zemd*dQ!#S5n)o^ZRl#cv>k4;ATTfLsHxv1x zR+GF8RibthV4sI4Pr+YSp&&l}-M0_y{2GFpBbHC*#lU|=;v6X;?coV#Qxc08{EmY5 z8zff{ZD+{Gr(~7v=j(P+4dpW}!Mk|1c;S%<8Fc1*ReaOPRGDqjK@AAKaXxEUJ({j{ zAB$tC6Tj;CNtyW&_D%Hn3gZ8^TQvXxtsgA;D~LnYL#9$jC zP=>Nc?QXW%5gT~Tb2R1VJ9xDEHD&Z#tnS&+n3x#%wqJTVZeQ6H$V=6dB(f@s-MMdcsKcgi zcmPkl^sz$Z*1XaM6bxf8HvG}jJ_WaNi1)L_uZjuRk#_#uSiU%F%b%Tn0&0M=a^|+;5PoeFANw&BXhf$9_O6AxIeKD0M-CpiefFSF3Xq=0lx;#YX$~)I3Dxfzw84 z&RDtn6h&pqL5t9G5XSL5q>NyM%7y(w<#6ZT)`*OwBLdX`nwfKw>VLO4*IE{P(t6Go z+-LmuK%S*>t|ukMS<8LY`nn|O#I33jg#l@$3;3;mb)h2Vv(>NyGnL4yDc>;=uKZ9^ z6c9i};3g>qazpDnwwJ_7V3RWoP_qv1g^r^d{Ut7qv1F&x5 zCPcN$;r9KIrmuJDa(jBrcJy($Cp$#VV=b7L&OI-!s66GKWa(uP-rj1#t;slu?@Lx! zHtbFa{sF*c^+))i2Z)xaH<*?JeSO#FvCIRd(2q6g7J=cTMU$bU4VAO#eqR#imYJva z?L!v$V3yB8Cbg@5?a#X7VoKn=6yK02%Nt7)CYmc3&Y$vdb)femXF3Wu6Q2kKZuHsO z?!;ZCl5s}5OFm_iBW}!2)4pFsi7~YvtF$+Z4UrQ6c7gouXf=wPz5|alAs6C5!zK~U zl-sM|R(lIn^W#A(n^#70z`d(*XQPw9eG5Jc(0CJRKpJ0MPlXf!a8V3^>KwhkLhk`m zlY(77zmq`7v629wRd(9Koa}%=b_LCH{&XKx#(_!X=QLB6OJ((yi1gw5aSRQr!U#Ja zlyR5ov4usF{q6>hwN4=gE654KC|**??%XK+QR=X=`%DIHrL_L)L1ytCo9-K{lP)NA}R^eNLBPN#?HnsQGjLTxX)-n@& z*hP9YISI7W6C@AYWr;In58^a}JZQlWFZ6|e0>hAQB}PvGeo6inCU zA==m`0hW>@QB*XxC6twNo=gNYIS-9Q4Rx>WKFxz=xnnHlR`HnrmBhe~Vu$jI z58G%2T_`{jRi^OArR7W)F(rdaR|BU}J`?u~0MX})84~G3zrv7j1hi^fte%7!KAzcj z3}}#?L2B2Qkr6y`R#pE=Bn;oOW9>nF63~1`fCB%U=N6j>Z`kcFWJKCrIDh*|Ysi|z zVW~V-*Tno+KqsW)G9382`MnQr0>w~?u=I2*DTq>NzZ!3 zY^rWaNSQv%#+3lvLX&q~=t`kvN;1tGgp>B;oS>LD{7`;Ir^b^*g=5=&XPfc4RlfjQ zlOCdDZlIt+0H+*61I+kxUq zfqxda2w*@*czOS4>FFst2NCz?k#P$^SsOQmdk&Ov9s0^Umg|i!e_kD z_;t%styQrNtE(bxmq$uFArl(mnCo@~-LQ7-$nd&@MaOs!4(gpQjt1bXO+Rn75`!t$ z9^ngPr53hMb$GK|`hE9ESL=iXZ$}3-cPHh;UY_Qu;!S*x{xT^x_;6P5x)0!`;IG|) zcTzd%smEMT**E%D*>L!aMX>lED6xj$Nn&Q;JE&e}hr8QP`5he;I!@JNWj@Nhmz@pa zco!5R;onR`%(9rM?m`ULGZ&>fFj{S98wots{B(I7;ADL)?e)|}h@X53gQ5c;rpWj- z^HcHhjB6vIR+roDZXkM~{8vdY4&Ehxs}OYIyd8Sfq03FoX}U3!Egh|Muh1oHv;JWY z6A7=#Jfu`kABlH8m|;fFK;4!}pwWRLqg8|eiTBQ0W)MK9;$Wz(J-p^gOs;0eyJY2= zPrl6HGd95icTFC`D{UH#Z&U;x);N)sA9J<*=Ss;cNg$@1^U;*cWey}cC87;hx?ig9 zzDMnJyKIGJ@_}V<&}%-Ko*+i=sHBZ$AzSYoITY>=3@#a5`lPWS^pRl*yY>o)+IX`l z^ipR}?hzK^Gstf~XMe%nDm4%Vf%W^k9Sr&|+qC>R+JDUi`&RWNs8nL+mAT!wWigBK zfY3F%8*f;XU4s+z_>e(q-ejOb<0)*Ny@rBGjKiB4OKnTLIG4^?7=6P|?MyGc;Is0_kFa&n4a)p8dT^BiaB3ZHp$pE;PYG ztm7clzT?i_;g*(qh{OYO`A26$B_Jps20iNci)pF%6?AN>4ZFk)jJ|9!59yjB#<0H5 zCo3Z~^*6z1hdd+U?TdU|@`Iz@IgM&=)#?qGrIw{p)+Krl>}ATW)ek(TzrL00Vq7CpCCD1G}nBmQaB6 zE22FZN3i2veIv#X|M2Uh9)RRQjM}&;nWn^HYya}bX~O+yx6K)5iR$e1gT^3tKaXwK zPEB3$PB7*ja7xCnnoex8*0=5T&NZE7uEZ2|)m0^BOcpSMXW&uTycVgq*)Jx~8Bo8s^*}qfX!9C3 z)pfPF@0*qJD^DO{(ol1ob>qme%%+BM6?lk708CF5YQH;bTWHEI*9GAtg zCtMc^Wk6t|t2ZbI_p{cOaQ7PM#_?*XcdzfH*SDr>Xg7c~eJp!3r-Sq#H5da*g!qh2 z=-i!e+pL-}XH;m;aPq|H#585EJumrgbbEP# zWmuiRwnI(!hvX#X^Ff7PYuJv$9UmJCnQCUG1t-?;_bj&*N#&KW+S zI2^*bjqon;&TjYjW*p%%UN3zxD)z{)qj;3xu*+N!Vx+;}b1|6Nf?|KsV^VC^BXSJR zOqVj66}$gUCK-Wje-NIe{}1rb(O=s?6k0VXc2B#PlKH!^X2=4c{Cs~@4&S-HwXpR~ zB81N%jNj-rR3Fi(A}vl+-AW-1=l@kbnTUvZiWH|Z$tW^;95Xlba6m}sWPG!LG<8t! ze0D%aHlIzbJii{e|CG@ywAR}1Nh+T-t*%NP`_NqmZLdj(c+!iC7-;TfO?q`d!rdI~ zQ7VOwL$O1z8>So*0-hmRgs%e7UM6~Gu6Us51#<;W;ETOojZlhR8byQ~f_CC)hgGAV zB#SC$Z9JLeMs(L$p2QZ!<4$^jDcO~=ffmy12+o6oYUVhH+WL;{Db<-qgR!kLEMRr5 zo%kcr1_}cK;|J%rLJ~q8IhgDyNUU8YF9|wYwQPH^z1GlVyy&wa;D#1%I6IShU+eoG z<*$VdH8^&5uzwXLHnk%A^{WJo<#|OJkz+@mIHY?1>&7phf-yCp@y<6XFxV@ev*%;iV5K3j$j3H=x}7Hij`=K%?{aN|Wl^uBu)FU)^IPK}pI z%Jk2V7V*?eOQeuqqDp!w3qy0|t&K?6ipx_i7vlmGerV5SC`WF?1h`)e!FUZi7SUlx zAKg~XtE30Z>Q7HYwX;WyKUIAZNSb2UBeNa)A4v!!dJ%Ef| z>f|GO_D}U$m22E#$x1VmAvUWa7dgH=RLVywDoLkpbO7~i6%5Q(9urd}>-A#aL`A+a2&RZ&8= zpoQK%+ksN61-?|m8jb;<{G|yspQuIDWj|Rh><71S-36Uk*1kYj_;pSFIkZR5jL+=Y z;`aS{gO(?tYzi}K@*)=!RJ1Tol4^2pVaRf$VAB?~RB?vy-k^8l4MEz;Kf12a^U;T4r(aT#>sp8C2DH9-N&Mfr8UQx}w8;PA zT(W`?t-F+24>xMJ1)d@iZJtqso0mE#jLO2c?PR}c;;GTqHLJ5Qjv$4^8^ub}-PDf= z^trwjB>XhoZBx-Vdh!tC(g2{!W>kHn7hb4mXA*p6FbYXOq@%P+Y;&&%FkW-z`pnKJ ztGOBPi(bL(X-#O^Qv}0i<3UI^$6=WeQ}$V~XT0!Gc0 zNUcq+&lE=Rno%6^R$5(X`rz~JtizQaS>?bb$~R=;*C2i@&lcG zS}8OBlCMwZ3zYJ6ie8f@oK@t<7}iqP&1sC%kTf{$nU;$=c<21d?uDXD(c(+*wGpDNBgHWtZbd zlF0yn1xrLjzb^~sZwH;iXs>2y+o#;J2qUokH}L`CF18KA2MS}`~>|h@HyMiDwJN9A0KmkI2Yn$BZ`}4FgNc=nxw4~DDeSVJu{R~HX{>y*q7n)XEwYB))=(|?yRH4OTzU}U z)N?z~Aup^*lJV-$5KK_VWK?%-cec2b*b^FEywqjK~Ho8y4XqY z&91l~%{X?uoHYd7Lr)nctV|(qrn`M;!y#CY8r3V(n0-)MOB$isLGR0dn&A(mc`E4W z6^d>Aq46)#?=bOq>Uewegnoms&o|1fQ)kJAv2_o0x5pf1LFr4&e(>B*C-xTTD?fdS znjQ2FC~Crd6tXVe}&-shw3241^l895LV5fBY`yH7#%0l|7xN=($rDsth`7 zJy)xohT+NfGrhw1v0QrjkS@twan=^4wB(`M8iop9Moxav<6ziiHCk~dC%}-{<4agj z?Vt?Fn6S3h{_eOlN%@38jUgR#n2!5Ql;(_I`eSW3W@P(T89Z2i(Me#rI|gmAn!nal z<172-vLO586Wl0fY3NRaY_prqx#2zP18d)zTM@TvjdTf_fS=EKqtoQbz$uu6>|{NIp}L)pG$z!0u|{{ zYW5qw3xHT$r7@lD4u)aj>2qn&63S0S{gXDR#FZ4ysN}jy(xa7&XpyGTO5&+gWscYC z!`f)GW<@ElAm~c9Ph6Yd5&ucOW))Gl^KM02dpI5cD@a6#UxX|;Pe8lH3GKaj;e6io zJtXm9#v`TWK}I){B3B=hcjMyaCJN3$FU1NU<}5(3t0h_yig!wC<<$yNcrB$S%iH<` zi1SpO3waQwd5xY%P_nekRw^&C+lnK9uT+i8xX}EWM3!KJC?fMu=r<)L-~f^7>k-g~7fF(dfTNKv58oQIQnP`^eV-d?NVUzY<>8LGoI8gw|zkr;jkwLR?KxnFO|DT@mlm$ zQ~Z1>pX_RAcc;W}hHad{_3SVyX7~?zG+-@RIJN4^TtQ5My`!;qajHed{?YWsqqK(R zZ%)OcNqYYN(8C-0t}N5G$mW+fh?oXr?%!|M!oLdkSIO}uW}1ePaciJOR7CF=7$cE-I8up;Vma$tV zA8N*p`(Tn%DS1XLz8{n&BAt4A*4BS#t|(^&u)hy3#Wj!qS@U=mxyKqN4{kSpU!Q?C zcZQKGblh4p7Z%Rn(dNjg1-L&o@+w#&2@5T?Oyxh0U&1mLL+*P-?m`~Wk_fG z^AJQcK5y-luKsuffi7NaXoq+jnS9Vm>E_B=i%Kfut1wV-u0Pzv2>Pdu6)~rSP6=U- z1&G<#0r(yBAGqj-edFtIw5`J^9M(INc9)zCd^ ztm}YuFJ(pr((h?z)F$ZDrn={nS(&+cc&^F-d8UPyP@?bHT`l9`w141?@%oLD#!8&X zYjU4g@F=F(aS=X%lg-6E9Inr_^~s+m5GJzboE|C|n>>}lMZYqq4R?(EkZlEXk+4J+ z4IUi^!hQ<3VQailvoMH=k`X;75q&3f5=wG0Ixw(^7j2Ry{&OHh`SCknhg%2JQ-g!= zQU?1~kr%Ny{b)vb>@V!!MTY^uwUIAew0efd{6km!vYzt=Q&MIxo z#$~zmbvo~&aqwt9r7^`HRrvM`kQ86QJ*kmuu{GV_?f2-4_qW8w@YS`m>GLKQ>XHV}W#hwxi z<@|g7$q6D}6;|7qt=xb&Wn1^>^NUs^MEl*gBe;}&<^P1x|LeC>P4ERpZ1+fM7B@qe z6@f{VGVg^is*gkP(If7^(LEd^qC(^dUo$aM`t|u7-&=0N6>y1m+QYFnv}xYJKvD8tp)?U~joVO?>(CjApGj)SXfG;TOp_o{I0UiVS5%YPbt{htn( z8lwL4XD^*{ak7GqsQiD`eP>vcSre!RP!yFas4RkjbOe>9m#84UD~NPZLq|k<&Dv-J zN>!vNO*#k(N_UAMMNlF|f>Z(Ngc3r485KIo19+e)OX$3{Dd0i`)gj#~6|lf{lowI6gEO z%1Hj=KpFh)%rQ(jzMDrEbfy$x*p2c=f>L`Ffuy~JWYY5Pu^`pOJBXLmzKmQ@3El-i zN{1>HNwH_z+I?=z_X4k=_K;9`k5Vy07B(Eo?bpl>-t-h^XfO7T|1G5NkhmAHo89Xw zJnQe@TTRYheJm6=Ywl$V8eT(B&K6s7+~Vx;4jQKPo1Yj4q>5!cZr{!<)X-(sb8=j4R7wi-64?z|6cblejIYLvU*c%K zefzc@(e?Ww>M=d5Yu7Req;3t|(PIlMau3Q*fhqqw(;i32r+#L^-auZ+Sw?~DT&KmZ zNVKk~j;ved?l~-HsOkrEaGZJ>*t>ASpBeNFJV(>e*oemC?QnnBe}CEkfG%wAhP#ls zy!MKrY^?zPRSg*s{s2G&gun zP0eRC+Au&rI~^M?9rGV7LHj&Ch))#i#|U-aX=n9s9oU3ocNz|&xHnE(l-WJ9vI+03 z9%dpp3)_Oh2SEn02rn-$*u54^;M39!jXx70kWlxWiK{oajUTp8#!0>~OuQBlzW?y+nPI@RPFac^zQ2ar!|qPB_6NqogOb}<6f?8stqR$zjE zp#`{IY$^GHI1LRr7xx%QX~$$|UMXh^xNoY(!^2}D?q+8vuy&k-!};7%70_O8E8VGS zSyZ_o_Zj6Q*xruFaW+fbI-1RFFM|~Dr_}A5_?yhgs(9ONXnyH~`teyu&f1k*{Fnu_bbqWwbWeOmW&9Q3KJi^V1+>9}y{7n)(3 z2Y8W5i>G@Y5OPyFI=S}=#8+F4Ztt;9CS(D(UIo-%+FWP%fFH19gRxk(*{n`>fTbTJ}zIDYfjp`@8e=$IH7AyiPTqSv>#_4Mo>pX6b z5b7}tE{n(zSd#KDGVv4DFd;oW)J9bm=AnbSuCg2>1~>xDTRYOb;kQO71agm__f+no z-2wpnG!q*6k*A0oap4rCcsFE}P2e_HN$IPXy{6fD>&+T~QE+?e;iGKrvXsQ0ObHh4 zw2yG*#RrFH+EoH+84~Gtw^yv{d1zCXl^#R*-+P$kdWC&?X6Jwn0R*ai!^r+pHybp8HQ3!=_1LIS z{+geYlSrk5pPw~}O@ThsQ+*qLa3iMon3@G-v5}D9m*%TIM$Mk}>v1!#>Vf+hdZ@rK z3U!XJ3_&Z(QYK(&B}|%F{!y!2?MhuW#0O*C&)Sgrnv6GcB2>Sx_LvM0)T)g}esSzs zSsB|OM~^lw^mk^$0_}zM8@4+>p2E@P0i({=l?pv=)k1oGP#XtKp12F>GYh}RVz=08 zsy2Im!13ly@fJ&>ZSKb>aWdPcvKw-c_M5Y%kLeYvgqzKfeJqmEuc4z}?3*v@3BcDI z4T0gyy(Dz6IjQv*nfxIYfJ=6ZVaOsiAJd)`3vim5pDS8A2wAALDV8@xflrY_SX(Py z^!4+D1=KK85O5X~F4x5{$znUYm@rYU=quBNM{;EFcIU_@J^wQ{J-4*9l!k`o$u>bu zJ4*ASK$xC)%-QP0m9`r~F;JVcomsEQctQn+htQ0pgzjL zpeCZK&~%b4T4iZWjJ^Rc^V;%kRaA$LAx&p_}tr-Zs$gh7EJU0ax*`=V*W3GJ54>2bHN8@p_Z z3Dj}lx3{PxN{XbR!_4}PFyO=?#AD;P6OaWGr*U!_hr5yb{$`n*imviGl)44;A;L}qJ@lG4(N_wV0-)&BjvU6*@__nQPB3iM&Kb9L3_ z;NZx~%M)I^?d8=SRs}4kJ9n2vb2;F1jcg34tp@n44^O=7Yh}en$J=m|0edH(sA>}a zNmYlfBi^5% z?8X5?py-Rh#fcji&V7TUjtFu0qs0DpTq))sGTXxo(?9UwzkcRV?M*fdyWyy{lNEEpJVfb?iM?%#{K*?c`hoKF zx0&~7c`cUS1Zn8{Og^goV7+wXOHF`kFaCiXT7}L0@u{l8ML`gx-#Xe>#RG((K-lU` zrpf03MX6ykYDSnFMnU%Wmxb$Jo|&9>?Yf=X-``($<3r8FrzoFGvWxkoWS6xM?Hv=a zDp=I))HX@}DOB)Vz#WaRB#xb2NluPi3Nxt<=O%lJ7Y@lt2W%u+s_T09 z#W-R_DCnhsCtP+P6s;`KZ%4=9S{xId=snn-S=zR)=i6$ntKsTjZ_3{q^_oO2%oJkCAYkZm3mR1GizUuDT532uJAd)8Sj|nyDs3Yu*-yn6 zpe@QPE9Evm(50px*Pr={uiHDD3KT*-C~ViYRAg)!1A5zy*|#S-G+J^jMl69&=!zWp zXeuehsR>4`h7c&8dTj z4(Z7D@7V$8CLnn++E)WxbOZfu2|cRqnng+zh$kx4EV}a8&WQ-Ll5`W_n4vt$kW*7P zh>)6%!!>c34G@qq=(#{IRava7uFe3dpPoP2vUcd9tG~H#eG`8ckPpI#2|Sy;lxbAj zu%@N&c|yO3Qets!;3)HWa!g9V^y%fK4s;6f^Hq~m#J{@}!*@n_ezc-z9psT$Hl^>Zk5djFyD zNKK^*>kDDKUjEK?BCqJ`VCe9Yq-gDUMMX-`Y2)F-i4HM~MBG;|59dXo*9n(Bq|xE0 zDtMh=wpI3YcN=5as*eo>;p`^{FC5BsZeb%f%IP-w9vqv(27of3*)3uu16k6#ZZ^9M zzNokGbz4q$wJ=A??0hfsN{Gdyy?@LP_98K^By-;&59zKLiy)1Ph2|i2uYu|uq-!n0 zu|wTex&-M0|GC!ws~xRg1-qEUXgjT@*BRF?AZ~wqH1!H`1X-4sm)E67>5s z;lM{0hBKY`xAguQo{=;=NN6a;mse-0*oc2V&+@BLd3?tOPG2kM4Me95^CF7^W9oA2 z2pkK+yIcS79y%4?RB^I_H^s=j?A z$75`y(Q1r?`Ils0jpDnnCs>%6wy|AQRYjjAO|DLijHje3`Ve6q{EEaJ{{+_^@Drq7 zQhNq@m*qz@i~q{OEYLMuYY942CYAOFJotQ2-*@z|rH<6Vddt4XuA)CysuD8TT?y9C zhD&?oHv(X=sdhzNVlVC?`IYYJ&YTR7<+Ao~Tzw#~#q7XZd>t$!6cSeH z>up9jXIs?{Ne`YA1UEm4gO=YuaJMnUOCHpFNS>kH!{ z)wb2f9M4Qs*9{LsjFOBrW(D++7uc8{SJD9Iam_2f4YzcFF55AC_U_G=Z@;($!E$I0 zILji!3ogT{I2Q)^r2B5Q6nr6Ep!a=$cZQ_T;kiUKSdwf-KmBuUEF58Rw`7RG*{_FD z#N11${`M#HeWRJ_{ES3ntSu)=uVO|@DvLyD@|gIH?vFDn?1Lc_Jmvo@`TwIz+DV!v zHK!(rRFmhaxTWl_LlHgYm4`J54BFbndijeiHz>lGZ<6p6tD{K zF@=o7fM<-$xg_+Z7(Fx7PcL-oWYdp`(!a(B*rhZTYVP|C>H8xiBCeI(4dIV4&K8Ji z7E60qvhE@6dQy7fy$8Y(q}h)=aSC27;WOyWp}%6)Xc@O_!gAG zkS{PP(FTz|Lwe6w(kS!K6qZG~3|+P|J`lt@1HQHz~|wZ?^JCYZqShPA&QQ&CYN z)>?VFOe){IunucKh)VSf#D&(|w4tPGM>B4()1{bB<=|Uk9Lb{Hd(U{et5*U<^l0Ir zJYg0nUfaFE)Lsd+|1`6!zfV@D9R=eqk_M$_l9QD+Fg7;Eg+40det9Gn`1x6&pre?T zOP|9j;L5XqHUn;9S>Z9LV?&uIX``c(G?dI7<~iHgR#ZSDMk-|t4LzDnqFy1cu75F% z)LLG1+)H#D`gnmeMJO(^cMQ0Yd7=ZpQ$=VV&eag74QqNiUcZmZw)jhe_mvfB~M4U27ATBdoBy+7IU6ddBn?5q^r8y$@d7QtN#g1OY4gSq2H5L;((B2LBCA zq^v`LEVzHv0m?2a3?*I(EkAUscGw*;bDD1frsO_AP+_xp-0wwDy0$g~zlA-Ss?(@M z%0!GzvDMuCLLr;aHi*8gV*_u2l9GOF~C&7bLW# z=Gw$#{9`gt?clWBz=cyZ5u3!H7~5<7JWq3Mi_rbEN^(KS#J|jTd1a;BB05U45Y(up z@o2xYrWmg7VDAyG&g*$%cCR zF*e}cWwvax0SpYEmh(NE;zd;Db6T543?vo1+ymM{g(YNg2wW*NLFG3wZ`W7wultoT zU7%93r(Zb(+pB zHxQu1pH*A^9ha2zQ-yDi!P;iun^T3Jm63yZbek;(q4O+#Y$UU=x5t$k7Ti0n^=u65^YR#VR*DQ=$Z^uez(`FQzgY2yU5%CWRJ6`#wx zLx)rs-yF!66BuLvv8pDie%yF^X-XNm?G7CBP_8~i$~qXNHW1cM%%L4jzoj&KWnvlDG6VR2zJ zF@HH#X(MW)N%i>Y=PTCJQG<2|s(r_fa%!#QnDWb?m&kRshGuRfMt;iRjp%c=#+ z=u#P&jk6D|<2Lr3@T%5n4SgNB!D#O*bUL<1+i=8xEukBcnZMlHfWeIntFRocqxtauNMrGe$-5CNBU;AYn7i*V#y>q zfZ&ay2Si?i93(pJao9tp$PTqjbKh5nLNP|Yy|tUev`UqO%#kh z**=t2K%Y~E>dV}@fHAF(j0M4NK9KHq9B#fWLDAKYHA|a^qlO;suJ+IXwr7o+R!fvY zfpO$0|L^h+-1}J+qmS58-NF2cWWyGzrhvfP6)s2!*6Ftia(x;NMzsS~M7U_Dl}(U7 z$0#`yaF#U$W+IQK6hI?$NbefFgPMt|B*@CqqYcHOf{T>`6PPyQO0mX@{1(zD8X=YT z!NS$>i}**6-hTdy;JqyLwQ?3oj%1(Tk8&4Iu}rtEzt@_o^}Fer(`c}%ML?7<_z%>L zeg5<*u0lw`1X@y1a4A{Xt6=XGi1$CQ!{e{uhU@h_1kj&8J?9g7&P{nV=vlhhGtr60 zYX7fkY|0`ko(;)7#M`B*yft4^W`9%5v+=hJ_V3`LXEmCl_)+tT(w z-`NFkAiL$|?tI(*q5nOBXOYvDy}6ggDN6l6iuNJdj<}3#?evbeFfcG>m-DPB^W?`& zkFf!0eQi&6dgrMTFdz1LMsLX!+cKU1;Y|KR;uL`PI{EDO6wS}CBnpC|HfW=QzbFgc z4;I*&0cdV=u$>~qc2@ywvkI=#@cb4ZASAB=wEw#x#Xv$wMn<$vuk1J&lq*x7FEL2> z`WZo>$0a2@-H*W@p24N1S&e3^eT<#3%c2c}eNZ zZhSOMJd;Pvk5pDxX3O?V?j%pt8Y1GdvQN3AkDPvMvaA+yW@UN#x{BqiYwDraAP8p!-V?GeW{u6-`_{=6x9Lgi%^;uQZ`_p%SsoKI5^u8 z3r9&?ui<9C_<-{heP35`JMuvf0(M}hKnJN7`{Q(d=E&@WyttJWm;&?2w*YX8*Q>iY zYDdf=bjl2F;6}g6p>%#56l6|Jn_Vq}nY;%z&oId0RbZZr>IfuLjr|Dj&aPdM5q0Hr zmwvZO-Z6)8*(hdOQ#0`Fk&Y?DKyA#dz>NVxzN-;$m_QMq~d%H-=ZA|ljA-@kvarQ@|NB=gH6 zrsHLJTd#IH)*hgx;v{xoB3avEYI^#Q)QNqawrFr+#c?FN!RNw-3tz~a@k%Xa$<3n; z0;$j{0VYA;=fBCa=qbVz3&j-~(Jkn@I%scAfM2t%&noVTf4fk0qGd5ih=H7&PKeFe z8u?7rFBtuzjEYyNU#Nn;K>CQVeKCX90jE}^qpt*&Twzu2yNr_kMUnlwOyR4{Ay&iw8O>&v674U8 zhs|0lj_>sP8uh~Kz5vrPPy05iP#@gn*;6kQ^YGga^=tw1@ijEyKp{4-b-LAuj<;(d z5J|)2o!?#hBYpf+d2anAA5!`-T{NTqFKQ;3X&U#P4@i+na4hb(lB{ Date: Wed, 18 Dec 2024 23:41:59 +0530 Subject: [PATCH 19/41] updated some text --- README.md | 2 +- app/commit.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index cbd3f20f4..b55fda8ca 100644 --- a/README.md +++ b/README.md @@ -188,7 +188,7 @@ For providers that support custom base URLs (such as Ollama or LM Studio), follo -## Setup Option 3: Git Clone (For Developers only) +## Setup Using Git (For Developers only) This method is recommended for developers who want to: - Contribute to the project diff --git a/app/commit.json b/app/commit.json index 2c5ff869f..8239a4129 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "a1e902fe7963fa2008c8b30f1cb8be9281146bb2" } +{ "commit": "1398344c11f227c167ad1d726a734ea534d3e03a" } From 906cc38e7932de05d96e369665f2c9c3d52b0e74 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 09:20:48 +0000 Subject: [PATCH 20/41] chore: update commit hash to 95dbcf1eb76b308435eae3e58ce47acef3e5fc44 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 71f2fed69..5dc1da43d 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "50e677878446f622531123b19912f38e8246afbd", "version": "0.0.3" } +{ "commit": "95dbcf1eb76b308435eae3e58ce47acef3e5fc44", "version": "0.0.3" } From 1d716c09254bed51d0a2ab773a27b370e28c9a6b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 11:25:23 +0000 Subject: [PATCH 21/41] chore: update commit hash to de640076978bd15f3a62f235f14332b08b76b98a --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 5dc1da43d..7d25e1ed3 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "95dbcf1eb76b308435eae3e58ce47acef3e5fc44", "version": "0.0.3" } +{ "commit": "de640076978bd15f3a62f235f14332b08b76b98a", "version": "0.0.3" } From 7e344aaa5c201a6f208e5a9adcfbcc76c0ef556a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 12:33:56 +0000 Subject: [PATCH 22/41] chore: update commit hash to 381d490f1f8cf87a0262f9e35df388b1e9a134f2 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 7d25e1ed3..4f6763b3a 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "de640076978bd15f3a62f235f14332b08b76b98a", "version": "0.0.3" } +{ "commit": "381d490f1f8cf87a0262f9e35df388b1e9a134f2", "version": "0.0.3" } From d4400a57046357fbb260932ce63ffe7a58b2d703 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 15:53:04 +0000 Subject: [PATCH 23/41] chore: update commit hash to a53b10ff399c591e898182e4b3934c26db19b6d6 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 4f6763b3a..f2fdb14f7 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "381d490f1f8cf87a0262f9e35df388b1e9a134f2", "version": "0.0.3" } +{ "commit": "a53b10ff399c591e898182e4b3934c26db19b6d6", "version": "0.0.3" } From a7551ecfcca491600a720751b5af778bd1b77143 Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Thu, 19 Dec 2024 12:57:59 -0500 Subject: [PATCH 24/41] Update ProvidersTab.tsx --- .../settings/providers/ProvidersTab.tsx | 228 +++++++----------- 1 file changed, 90 insertions(+), 138 deletions(-) diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index d52d42b47..c9dc27cf2 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -6,17 +6,14 @@ import type { IProviderConfig } from '~/types/model'; import { logStore } from '~/lib/stores/logs'; // Import a default fallback icon -import DefaultIcon from '/icons/Default.svg'; -const ADVANCED_PROVIDERS = ['Ollama', 'OpenAILike', 'LMStudio']; +import DefaultIcon from '/icons/Default.svg'; // Adjust the path as necessary import { providerBaseUrlEnvKeys } from '~/utils/constants'; - export default function ProvidersTab() { const { providers, updateProviderSettings, isLocalModel } = useSettings(); const [filteredProviders, setFilteredProviders] = useState([]); - const [advancedProviders, setAdvancedProviders] = useState([]); - const [regularProviders, setRegularProviders] = useState([]); + // Load base URLs from cookies const [searchTerm, setSearchTerm] = useState(''); useEffect(() => { @@ -35,76 +32,88 @@ export default function ProvidersTab() { newFilteredProviders = newFilteredProviders.filter((provider) => !LOCAL_PROVIDERS.includes(provider.name)); } - // Split providers into regular and advanced - const regular = newFilteredProviders.filter( - (provider) => !ADVANCED_PROVIDERS.includes(provider.name) - ); - const advanced = newFilteredProviders.filter( - (provider) => ADVANCED_PROVIDERS.includes(provider.name) - ); - - // Sort advanced providers in specific order - OpenAILike at the end - const advancedOrder = ['Ollama', 'LMStudio', 'OpenAILike']; - advanced.sort((a, b) => { - return advancedOrder.indexOf(a.name) - advancedOrder.indexOf(b.name); - }); + newFilteredProviders.sort((a, b) => a.name.localeCompare(b.name)); - // Sort regular providers alphabetically - regular.sort((a, b) => a.name.localeCompare(b.name)); + // Split providers into regular and URL-configurable + const regular = newFilteredProviders.filter(p => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const urlConfigurable = newFilteredProviders.filter(p => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); - setRegularProviders(regular); - setAdvancedProviders(advanced); - setFilteredProviders(newFilteredProviders); + setFilteredProviders([...regular, ...urlConfigurable]); }, [providers, searchTerm, isLocalModel]); - const ProviderCard = ({ provider }: { provider: IProviderConfig }) => ( -

-
-
- { - e.currentTarget.src = DefaultIcon; + const renderProviderCard = (provider: IProviderConfig) => { + const envBaseUrlKey = providerBaseUrlEnvKeys[provider.name].baseUrlKey; + const envBaseUrl = envBaseUrlKey ? import.meta.env[envBaseUrlKey] : undefined; + const isUrlConfigurable = URL_CONFIGURABLE_PROVIDERS.includes(provider.name); + + return ( +
+
+
+ { + e.currentTarget.src = DefaultIcon; + }} + alt={`${provider.name} icon`} + className="w-6 h-6 dark:invert" + /> + {provider.name} +
+ { + updateProviderSettings(provider.name, { ...provider.settings, enabled }); + + if (enabled) { + logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); + } else { + logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); + } }} - alt={`${provider.name} icon`} - className="w-6 h-6 dark:invert" /> - {provider.name}
- { - updateProviderSettings(provider.name, { ...provider.settings, enabled }); - if (enabled) { - logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); - } else { - logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); - } - }} - /> + {isUrlConfigurable && provider.settings.enabled && ( +
+ {envBaseUrl && ( + + )} + + { + let newBaseUrl: string | undefined = e.target.value; + + if (newBaseUrl && newBaseUrl.trim().length === 0) { + newBaseUrl = undefined; + } + + updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); + logStore.logProvider(`Base URL updated for ${provider.name}`, { + provider: provider.name, + baseUrl: newBaseUrl, + }); + }} + placeholder={`Enter ${provider.name} base URL`} + className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" + /> +
+ )}
- {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( -
- - { - const newBaseUrl = e.target.value; - updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); - logStore.logProvider(`Base URL updated for ${provider.name}`, { - provider: provider.name, - baseUrl: newBaseUrl, - }); - }} - placeholder={`Enter ${provider.name} base URL`} - className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" - /> -
- )} -
- ); + ); + }; + + const regularProviders = filteredProviders.filter(p => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const urlConfigurableProviders = filteredProviders.filter(p => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); return (
@@ -118,77 +127,20 @@ export default function ProvidersTab() { />
- {filteredProviders.map((provider) => { - const envBaseUrlKey = providerBaseUrlEnvKeys[provider.name].baseUrlKey; - const envBaseUrl = envBaseUrlKey ? import.meta.env[envBaseUrlKey] : undefined; - - return ( -
-
-
- { - // Fallback to default icon on error - e.currentTarget.src = DefaultIcon; - }} - alt={`${provider.name} icon`} - className="w-6 h-6 dark:invert" - /> - {provider.name} -
- { - updateProviderSettings(provider.name, { ...provider.settings, enabled }); - - if (enabled) { - logStore.logProvider(`Provider ${provider.name} enabled`, { provider: provider.name }); - } else { - logStore.logProvider(`Provider ${provider.name} disabled`, { provider: provider.name }); - } - }} - /> -
- {/* Base URL input for configurable providers */} - {URL_CONFIGURABLE_PROVIDERS.includes(provider.name) && provider.settings.enabled && ( -
- {envBaseUrl && ( - - )} - - { - let newBaseUrl: string | undefined = e.target.value; - - if (newBaseUrl && newBaseUrl.trim().length === 0) { - newBaseUrl = undefined; - } - - updateProviderSettings(provider.name, { ...provider.settings, baseUrl: newBaseUrl }); - logStore.logProvider(`Base URL updated for ${provider.name}`, { - provider: provider.name, - baseUrl: newBaseUrl, - }); - }} - placeholder={`Enter ${provider.name} base URL`} - className="w-full bg-white dark:bg-bolt-elements-background-depth-4 relative px-2 py-1.5 rounded-md focus:outline-none placeholder-bolt-elements-textTertiary text-bolt-elements-textPrimary dark:text-bolt-elements-textPrimary border border-bolt-elements-borderColor" - /> -
- )} + {/* Regular Providers Grid */} +
+ {regularProviders.map(renderProviderCard)} +
+ + {/* URL Configurable Providers Section */} + {urlConfigurableProviders.length > 0 && ( +
+

Providers with Custom Base URL

+
+ {urlConfigurableProviders.map(renderProviderCard)}
- ); - })} +
+ )}
); -} +} \ No newline at end of file From bbd9a17d3b1bb4010b75d88162aa03eedb5646f5 Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Thu, 19 Dec 2024 13:04:26 -0500 Subject: [PATCH 25/41] Update ProvidersTab.tsx --- app/components/settings/providers/ProvidersTab.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index c9dc27cf2..58c8dac6b 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -135,7 +135,10 @@ export default function ProvidersTab() { {/* URL Configurable Providers Section */} {urlConfigurableProviders.length > 0 && (
-

Providers with Custom Base URL

+

Experimental Providers

+

+ These providers are experimental and allow you to run AI models locally or connect to your own infrastructure. They require additional setup but offer more flexibility. +

{urlConfigurableProviders.map(renderProviderCard)}
From 01599caf38ad960d80ad10d45ec39fc2f0a3e56b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 18:08:12 +0000 Subject: [PATCH 26/41] chore: update commit hash to 75ec49beb8cb40561a493f0822455b8339b200f9 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index f2fdb14f7..74c23b657 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "a53b10ff399c591e898182e4b3934c26db19b6d6", "version": "0.0.3" } +{ "commit": "75ec49beb8cb40561a493f0822455b8339b200f9", "version": "0.0.3" } From 0733813af8ba0129ee22e4b656fb61b2e1edf452 Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Thu, 19 Dec 2024 15:12:21 -0500 Subject: [PATCH 27/41] docs: updated style in faq updated style in FAQ docs to be an accordion like style added a TOC to the index page in the docs --- docs/docs/FAQ.md | 57 +++++++++++++++++++--------------------------- docs/docs/index.md | 15 ++++++++++++ 2 files changed, 39 insertions(+), 33 deletions(-) diff --git a/docs/docs/FAQ.md b/docs/docs/FAQ.md index 1b645d3fc..a09fae885 100644 --- a/docs/docs/FAQ.md +++ b/docs/docs/FAQ.md @@ -1,6 +1,7 @@ # Frequently Asked Questions (FAQ) -## What are the best models for bolt.diy? +
+What are the best models for bolt.diy? For the best experience with bolt.diy, we recommend using the following models: @@ -11,10 +12,10 @@ For the best experience with bolt.diy, we recommend using the following models: - **Qwen 2.5 Coder 32b**: Best model for self-hosting with reasonable hardware requirements **Note**: Models with less than 7b parameters typically lack the capability to properly interact with bolt! +
---- - -## How do I get the best results with bolt.diy? +
+How do I get the best results with bolt.diy? - **Be specific about your stack**: Mention the frameworks or libraries you want to use (e.g., Astro, Tailwind, ShadCN) in your initial prompt. This ensures that bolt.diy scaffolds the project according to your preferences. @@ -28,72 +29,62 @@ For the best experience with bolt.diy, we recommend using the following models: - **Batch simple instructions**: Combine simple tasks into a single prompt to save time and reduce API credit consumption. For example: *"Change the color scheme, add mobile responsiveness, and restart the dev server."* +
---- - -## How do I contribute to bolt.diy? +
+How do I contribute to bolt.diy? Check out our [Contribution Guide](CONTRIBUTING.md) for more details on how to get involved! +
---- - -## What are the future plans for bolt.diy? +
+What are the future plans for bolt.diy? Visit our [Roadmap](https://roadmap.sh/r/ottodev-roadmap-2ovzo) for the latest updates. New features and improvements are on the way! +
---- - -## Why are there so many open issues/pull requests? +
+Why are there so many open issues/pull requests? bolt.diy began as a small showcase project on @ColeMedin's YouTube channel to explore editing open-source projects with local LLMs. However, it quickly grew into a massive community effort! -We’re forming a team of maintainers to manage demand and streamline issue resolution. The maintainers are rockstars, and we’re also exploring partnerships to help the project thrive. - ---- +We're forming a team of maintainers to manage demand and streamline issue resolution. The maintainers are rockstars, and we're also exploring partnerships to help the project thrive. +
-## How do local LLMs compare to larger models like Claude 3.5 Sonnet for bolt.diy? +
+How do local LLMs compare to larger models like Claude 3.5 Sonnet for bolt.diy? While local LLMs are improving rapidly, larger models like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b still offer the best results for complex applications. Our ongoing focus is to improve prompts, agents, and the platform to better support smaller local LLMs. +
---- - -## Common Errors and Troubleshooting +
+Common Errors and Troubleshooting ### **"There was an error processing this request"** This generic error message means something went wrong. Check both: - The terminal (if you started the app with Docker or `pnpm`). - The developer console in your browser (press `F12` or right-click > *Inspect*, then go to the *Console* tab). ---- - ### **"x-api-key header missing"** This error is sometimes resolved by restarting the Docker container. -If that doesn’t work, try switching from Docker to `pnpm` or vice versa. We’re actively investigating this issue. - ---- +If that doesn't work, try switching from Docker to `pnpm` or vice versa. We're actively investigating this issue. ### **Blank preview when running the app** A blank preview often occurs due to hallucinated bad code or incorrect commands. To troubleshoot: - Check the developer console for errors. -- Remember, previews are core functionality, so the app isn’t broken! We’re working on making these errors more transparent. - ---- +- Remember, previews are core functionality, so the app isn't broken! We're working on making these errors more transparent. ### **"Everything works, but the results are bad"** Local LLMs like Qwen-2.5-Coder are powerful for small applications but still experimental for larger projects. For better results, consider using larger models like GPT-4o, Claude 3.5 Sonnet, or DeepSeek Coder V2 236b. ---- - ### **"Received structured exception #0xc0000005: access violation"** - If you are getting this, you are probably on Windows. The fix is generally to update the [Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170) ---- - ### **"Miniflare or Wrangler errors in Windows"** You will need to make sure you have the latest version of Visual Studio C++ installed (14.40.33816), more information here https://github.com/stackblitz-labs/bolt.diy/issues/19. +
--- diff --git a/docs/docs/index.md b/docs/docs/index.md index 389e74ffa..ef08de6eb 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -1,6 +1,21 @@ # Welcome to bolt diy bolt.diy allows you to choose the LLM that you use for each prompt! Currently, you can use OpenAI, Anthropic, Ollama, OpenRouter, Gemini, LMStudio, Mistral, xAI, HuggingFace, DeepSeek, or Groq models - and it is easily extended to use any other model supported by the Vercel AI SDK! See the instructions below for running this locally and extending it to include more models. +## Table of Contents +- [Join the community!](#join-the-community) +- [What's bolt.diy](#whats-boltdiy) +- [What Makes bolt.diy Different](#what-makes-boltdiy-different) +- [Setup](#setup) +- [Run with Docker](#run-with-docker) + - [Using Helper Scripts](#1a-using-helper-scripts) + - [Direct Docker Build Commands](#1b-direct-docker-build-commands-alternative-to-using-npm-scripts) + - [Docker Compose with Profiles](#2-docker-compose-with-profiles-to-run-the-container) +- [Run Without Docker](#run-without-docker) +- [Adding New LLMs](#adding-new-llms) +- [Available Scripts](#available-scripts) +- [Development](#development) +- [Tips and Tricks](#tips-and-tricks) + --- ## Join the community! From 2638c1a704118b411f942e1b17b6765abce46721 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 19 Dec 2024 20:17:35 +0000 Subject: [PATCH 28/41] chore: update commit hash to 636f87f568a368dadc5cf3c077284710951e2488 --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 74c23b657..0b3f44a2c 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "75ec49beb8cb40561a493f0822455b8339b200f9", "version": "0.0.3" } +{ "commit": "636f87f568a368dadc5cf3c077284710951e2488", "version": "0.0.3" } From 7e70dc5d8e29cf9747a328125e75307a399fa14d Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Fri, 20 Dec 2024 09:37:34 -0500 Subject: [PATCH 29/41] docs: updated Contributing updated Contributing in the docs updated Contributing and FAQ in the GitHub part as well --- CONTRIBUTING.md | 316 +++++++++++++++++++------------------- FAQ.md | 84 ++++++---- docs/docs/CONTRIBUTING.md | 283 +++++++++++++++------------------- 3 files changed, 343 insertions(+), 340 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bdb02ff19..3a8d5be8f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,217 +1,219 @@ -# Contributing to bolt.diy +# Contribution Guidelines -First off, thank you for considering contributing to bolt.diy! This fork aims to expand the capabilities of the original project by integrating multiple LLM providers and enhancing functionality. Every contribution helps make bolt.diy a better tool for developers worldwide. +Welcome! This guide provides all the details you need to contribute effectively to the project. Thank you for helping us make **bolt.diy** a better tool for developers worldwide. 💡 + +--- ## 📋 Table of Contents -- [Code of Conduct](#code-of-conduct) -- [How Can I Contribute?](#how-can-i-contribute) -- [Pull Request Guidelines](#pull-request-guidelines) -- [Coding Standards](#coding-standards) -- [Development Setup](#development-setup) -- [Deploymnt with Docker](#docker-deployment-documentation) -- [Project Structure](#project-structure) - -## Code of Conduct - -This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers. - -## How Can I Contribute? - -### 🐞 Reporting Bugs and Feature Requests -- Check the issue tracker to avoid duplicates -- Use the issue templates when available -- Include as much relevant information as possible -- For bugs, add steps to reproduce the issue - -### 🔧 Code Contributions -1. Fork the repository -2. Create a new branch for your feature/fix -3. Write your code -4. Submit a pull request - -### ✨ Becoming a Core Contributor -We're looking for dedicated contributors to help maintain and grow this project. If you're interested in becoming a core contributor, please fill out our [Contributor Application Form](https://forms.gle/TBSteXSDCtBDwr5m7). - -## Pull Request Guidelines - -### 📝 PR Checklist -- [ ] Branch from the main branch -- [ ] Update documentation if needed -- [ ] Manually verify all new functionality works as expected -- [ ] Keep PRs focused and atomic - -### 👀 Review Process -1. Manually test the changes -2. At least one maintainer review required -3. Address all review comments -4. Maintain clean commit history - -## Coding Standards - -### 💻 General Guidelines -- Follow existing code style -- Comment complex logic -- Keep functions focused and small -- Use meaningful variable names -- Lint your code. This repo contains a pre-commit-hook that will verify your code is linted properly, -so set up your IDE to do that for you! - -## Development Setup - -### 🔄 Initial Setup -1. Clone the repository: -```bash -git clone https://github.com/coleam00/bolt.new-any-llm.git -``` -2. Install dependencies: +1. [Code of Conduct](#code-of-conduct) +2. [How Can I Contribute?](#how-can-i-contribute) +3. [Pull Request Guidelines](#pull-request-guidelines) +4. [Coding Standards](#coding-standards) +5. [Development Setup](#development-setup) +6. [Testing](#testing) +7. [Deployment](#deployment) +8. [Docker Deployment](#docker-deployment) +9. [VS Code Dev Containers Integration](#vs-code-dev-containers-integration) + +--- + +## 🛡️ Code of Conduct + +This project is governed by our **Code of Conduct**. By participating, you agree to uphold this code. Report unacceptable behavior to the project maintainers. + +--- + +## 🛠️ How Can I Contribute? + +### 1️⃣ Reporting Bugs or Feature Requests +- Check the [issue tracker](#) to avoid duplicates. +- Use issue templates (if available). +- Provide detailed, relevant information and steps to reproduce bugs. + +### 2️⃣ Code Contributions +1. Fork the repository. +2. Create a feature or fix branch. +3. Write and test your code. +4. Submit a pull request (PR). + +### 3️⃣ Join as a Core Contributor +Interested in maintaining and growing the project? Fill out our [Contributor Application Form](https://forms.gle/TBSteXSDCtBDwr5m7). + +--- + +## ✅ Pull Request Guidelines + +### PR Checklist +- Branch from the **main** branch. +- Update documentation, if needed. +- Test all functionality manually. +- Focus on one feature/bug per PR. + +### Review Process +1. Manual testing by reviewers. +2. At least one maintainer review required. +3. Address review comments. +4. Maintain a clean commit history. + +--- + +## 📏 Coding Standards + +### General Guidelines +- Follow existing code style. +- Comment complex logic. +- Keep functions small and focused. +- Use meaningful variable names. + +--- + +## 🖥️ Development Setup + +### 1️⃣ Initial Setup +- Clone the repository: + ```bash + git clone https://github.com/stackblitz-labs/bolt.diy.git + ``` +- Install dependencies: + ```bash + pnpm install + ``` +- Set up environment variables: + 1. Rename `.env.example` to `.env.local`. + 2. Add your API keys: + ```bash + GROQ_API_KEY=XXX + HuggingFace_API_KEY=XXX + OPENAI_API_KEY=XXX + ... + ``` + 3. Optionally set: + - Debug level: `VITE_LOG_LEVEL=debug` + - Context size: `DEFAULT_NUM_CTX=32768` + +**Note**: Never commit your `.env.local` file to version control. It’s already in `.gitignore`. + +### 2️⃣ Run Development Server ```bash -pnpm install +pnpm run dev ``` +**Tip**: Use **Google Chrome Canary** for local testing. -3. Set up environment variables: - - Rename `.env.example` to `.env.local` - - Add your LLM API keys (only set the ones you plan to use): -```bash -GROQ_API_KEY=XXX -HuggingFace_API_KEY=XXX -OPENAI_API_KEY=XXX -ANTHROPIC_API_KEY=XXX -... -``` - - Optionally set debug level: -```bash -VITE_LOG_LEVEL=debug -``` +--- + +## 🧪 Testing - - Optionally set context size: +Run the test suite with: ```bash -DEFAULT_NUM_CTX=32768 +pnpm test ``` -Some Example Context Values for the qwen2.5-coder:32b models are. - -* DEFAULT_NUM_CTX=32768 - Consumes 36GB of VRAM -* DEFAULT_NUM_CTX=24576 - Consumes 32GB of VRAM -* DEFAULT_NUM_CTX=12288 - Consumes 26GB of VRAM -* DEFAULT_NUM_CTX=6144 - Consumes 24GB of VRAM +--- -**Important**: Never commit your `.env.local` file to version control. It's already included in .gitignore. +## 🚀 Deployment -### 🚀 Running the Development Server +### Deploy to Cloudflare Pages ```bash -pnpm run dev +pnpm run deploy ``` +Ensure you have required permissions and that Wrangler is configured. -**Note**: You will need Google Chrome Canary to run this locally if you use Chrome! It's an easy install and a good browser for web development anyway. +--- -## Testing +## 🐳 Docker Deployment -Run the test suite with: +This section outlines the methods for deploying the application using Docker. The processes for **Development** and **Production** are provided separately for clarity. -```bash -pnpm test -``` +--- -## Deployment +### 🧑‍💻 Development Environment -To deploy the application to Cloudflare Pages: +#### Build Options +**Option 1: Helper Scripts** ```bash -pnpm run deploy +# Development build +npm run dockerbuild ``` -Make sure you have the necessary permissions and Wrangler is correctly configured for your Cloudflare account. +**Option 2: Direct Docker Build Command** +```bash +docker build . --target bolt-ai-development +``` -# Docker Deployment Documentation +**Option 3: Docker Compose Profile** +```bash +docker-compose --profile development up +``` -This guide outlines various methods for building and deploying the application using Docker. +#### Running the Development Container +```bash +docker run -p 5173:5173 --env-file .env.local bolt-ai:development +``` -## Build Methods +--- -### 1. Using Helper Scripts +### 🏭 Production Environment -NPM scripts are provided for convenient building: +#### Build Options +**Option 1: Helper Scripts** ```bash -# Development build -npm run dockerbuild - # Production build npm run dockerbuild:prod ``` -### 2. Direct Docker Build Commands - -You can use Docker's target feature to specify the build environment: - +**Option 2: Direct Docker Build Command** ```bash -# Development build -docker build . --target bolt-ai-development - -# Production build docker build . --target bolt-ai-production ``` -### 3. Docker Compose with Profiles - -Use Docker Compose profiles to manage different environments: - +**Option 3: Docker Compose Profile** ```bash -# Development environment -docker-compose --profile development up - -# Production environment docker-compose --profile production up ``` -## Running the Application - -After building using any of the methods above, run the container with: - +#### Running the Production Container ```bash -# Development -docker run -p 5173:5173 --env-file .env.local bolt-ai:development - -# Production docker run -p 5173:5173 --env-file .env.local bolt-ai:production ``` -## Deployment with Coolify +--- -[Coolify](https://github.com/coollabsio/coolify) provides a straightforward deployment process: +### Coolify Deployment -1. Import your Git repository as a new project -2. Select your target environment (development/production) -3. Choose "Docker Compose" as the Build Pack -4. Configure deployment domains -5. Set the custom start command: +For an easy deployment process, use [Coolify](https://github.com/coollabsio/coolify): +1. Import your Git repository into Coolify. +2. Choose **Docker Compose** as the build pack. +3. Configure environment variables (e.g., API keys). +4. Set the start command: ```bash docker compose --profile production up ``` -6. Configure environment variables - - Add necessary AI API keys - - Adjust other environment variables as needed -7. Deploy the application -## VS Code Integration +--- + +## 🛠️ VS Code Dev Containers Integration -The `docker-compose.yaml` configuration is compatible with VS Code dev containers: +The `docker-compose.yaml` configuration is compatible with **VS Code Dev Containers**, making it easy to set up a development environment directly in Visual Studio Code. -1. Open the command palette in VS Code -2. Select the dev container configuration -3. Choose the "development" profile from the context menu +### Steps to Use Dev Containers -## Environment Files +1. Open the command palette in VS Code (`Ctrl+Shift+P` or `Cmd+Shift+P` on macOS). +2. Select **Dev Containers: Reopen in Container**. +3. Choose the **development** profile when prompted. +4. VS Code will rebuild the container and open it with the pre-configured environment. -Ensure you have the appropriate `.env.local` file configured before running the containers. This file should contain: -- API keys -- Environment-specific configurations -- Other required environment variables +--- -## Notes +## 🔑 Environment Variables -- Port 5173 is exposed and mapped for both development and production environments -- Environment variables are loaded from `.env.local` -- Different profiles (development/production) can be used for different deployment scenarios -- The configuration supports both local development and production deployment +Ensure `.env.local` is configured correctly with: +- API keys. +- Context-specific configurations. + +Example for the `DEFAULT_NUM_CTX` variable: +```bash +DEFAULT_NUM_CTX=24576 # Uses 32GB VRAM +``` \ No newline at end of file diff --git a/FAQ.md b/FAQ.md index dcf250d7b..a09fae885 100644 --- a/FAQ.md +++ b/FAQ.md @@ -1,8 +1,7 @@ -[![bolt.diy: AI-Powered Full-Stack Web Development in the Browser](./public/social_preview_index.jpg)](https://bolt.diy) +# Frequently Asked Questions (FAQ) -# bolt.diy - -## Recommended Models for bolt.diy +
+What are the best models for bolt.diy? For the best experience with bolt.diy, we recommend using the following models: @@ -13,51 +12,80 @@ For the best experience with bolt.diy, we recommend using the following models: - **Qwen 2.5 Coder 32b**: Best model for self-hosting with reasonable hardware requirements **Note**: Models with less than 7b parameters typically lack the capability to properly interact with bolt! +
-## FAQ +
+How do I get the best results with bolt.diy? -### How do I get the best results with bolt.diy? +- **Be specific about your stack**: + Mention the frameworks or libraries you want to use (e.g., Astro, Tailwind, ShadCN) in your initial prompt. This ensures that bolt.diy scaffolds the project according to your preferences. -- **Be specific about your stack**: If you want to use specific frameworks or libraries (like Astro, Tailwind, ShadCN, or any other popular JavaScript framework), mention them in your initial prompt to ensure bolt scaffolds the project accordingly. +- **Use the enhance prompt icon**: + Before sending your prompt, click the *enhance* icon to let the AI refine your prompt. You can edit the suggested improvements before submitting. -- **Use the enhance prompt icon**: Before sending your prompt, try clicking the 'enhance' icon to have the AI model help you refine your prompt, then edit the results before submitting. +- **Scaffold the basics first, then add features**: + Ensure the foundational structure of your application is in place before introducing advanced functionality. This helps bolt.diy establish a solid base to build on. -- **Scaffold the basics first, then add features**: Make sure the basic structure of your application is in place before diving into more advanced functionality. This helps Bolt.diy understand the foundation of your project and ensure everything is wired up right before building out more advanced functionality. +- **Batch simple instructions**: + Combine simple tasks into a single prompt to save time and reduce API credit consumption. For example: + *"Change the color scheme, add mobile responsiveness, and restart the dev server."* +
-- **Batch simple instructions**: Save time by combining simple instructions into one message. For example, you can ask Bolt.diy to change the color scheme, add mobile responsiveness, and restart the dev server, all in one go saving you time and reducing API credit consumption significantly. +
+How do I contribute to bolt.diy? -### Why are there so many open issues/pull requests? +Check out our [Contribution Guide](CONTRIBUTING.md) for more details on how to get involved! +
-bolt.diy was started simply to showcase how to edit an open source project and to do something cool with local LLMs on my (@ColeMedin) YouTube channel! However, it quickly grew into a massive community project that I am working hard to keep up with the demand of by forming a team of maintainers and getting as many people involved as I can. That effort is going well and all of our maintainers are ABSOLUTE rockstars, but it still takes time to organize everything so we can efficiently get through all the issues and PRs. But rest assured, we are working hard and even working on some partnerships behind the scenes to really help this project take off! +
+What are the future plans for bolt.diy? -### How do local LLMs fair compared to larger models like Claude 3.5 Sonnet for bolt.diy/bolt.new? +Visit our [Roadmap](https://roadmap.sh/r/ottodev-roadmap-2ovzo) for the latest updates. +New features and improvements are on the way! +
-As much as the gap is quickly closing between open source and massive close source models, you’re still going to get the best results with the very large models like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b. This is one of the big tasks we have at hand - figuring out how to prompt better, use agents, and improve the platform as a whole to make it work better for even the smaller local LLMs! +
+Why are there so many open issues/pull requests? -### I'm getting the error: "There was an error processing this request" +bolt.diy began as a small showcase project on @ColeMedin's YouTube channel to explore editing open-source projects with local LLMs. However, it quickly grew into a massive community effort! -If you see this error within bolt.diy, that is just the application telling you there is a problem at a high level, and this could mean a number of different things. To find the actual error, please check BOTH the terminal where you started the application (with Docker or pnpm) and the developer console in the browser. For most browsers, you can access the developer console by pressing F12 or right clicking anywhere in the browser and selecting “Inspect”. Then go to the “console” tab in the top right. +We're forming a team of maintainers to manage demand and streamline issue resolution. The maintainers are rockstars, and we're also exploring partnerships to help the project thrive. +
-### I'm getting the error: "x-api-key header missing" +
+How do local LLMs compare to larger models like Claude 3.5 Sonnet for bolt.diy? -We have seen this error a couple times and for some reason just restarting the Docker container has fixed it. This seems to be Ollama specific. Another thing to try is try to run bolt.diy with Docker or pnpm, whichever you didn’t run first. We are still on the hunt for why this happens once and a while! +While local LLMs are improving rapidly, larger models like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b still offer the best results for complex applications. Our ongoing focus is to improve prompts, agents, and the platform to better support smaller local LLMs. +
-### I'm getting a blank preview when bolt.diy runs my app! +
+Common Errors and Troubleshooting -We promise you that we are constantly testing new PRs coming into bolt.diy and the preview is core functionality, so the application is not broken! When you get a blank preview or don’t get a preview, this is generally because the LLM hallucinated bad code or incorrect commands. We are working on making this more transparent so it is obvious. Sometimes the error will appear in developer console too so check that as well. +### **"There was an error processing this request"** +This generic error message means something went wrong. Check both: +- The terminal (if you started the app with Docker or `pnpm`). +- The developer console in your browser (press `F12` or right-click > *Inspect*, then go to the *Console* tab). -### Everything works but the results are bad +### **"x-api-key header missing"** +This error is sometimes resolved by restarting the Docker container. +If that doesn't work, try switching from Docker to `pnpm` or vice versa. We're actively investigating this issue. -This goes to the point above about how local LLMs are getting very powerful but you still are going to see better (sometimes much better) results with the largest LLMs like GPT-4o, Claude 3.5 Sonnet, and DeepSeek Coder V2 236b. If you are using smaller LLMs like Qwen-2.5-Coder, consider it more experimental and educational at this point. It can build smaller applications really well, which is super impressive for a local LLM, but for larger scale applications you want to use the larger LLMs still! +### **Blank preview when running the app** +A blank preview often occurs due to hallucinated bad code or incorrect commands. +To troubleshoot: +- Check the developer console for errors. +- Remember, previews are core functionality, so the app isn't broken! We're working on making these errors more transparent. -### Received structured exception #0xc0000005: access violation +### **"Everything works, but the results are bad"** +Local LLMs like Qwen-2.5-Coder are powerful for small applications but still experimental for larger projects. For better results, consider using larger models like GPT-4o, Claude 3.5 Sonnet, or DeepSeek Coder V2 236b. +### **"Received structured exception #0xc0000005: access violation"** If you are getting this, you are probably on Windows. The fix is generally to update the [Visual C++ Redistributable](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170) -### How to add an LLM: - -To make new LLMs available to use in this version of bolt.new, head on over to `app/utils/constants.ts` and find the constant MODEL_LIST. Each element in this array is an object that has the model ID for the name (get this from the provider's API documentation), a label for the frontend model dropdown, and the provider. +### **"Miniflare or Wrangler errors in Windows"** +You will need to make sure you have the latest version of Visual Studio C++ installed (14.40.33816), more information here https://github.com/stackblitz-labs/bolt.diy/issues/19. +
-By default, many providers are already implemented, but the YouTube video for this repo covers how to extend this to work with more providers if you wish! +--- -When you add a new model to the MODEL_LIST array, it will immediately be available to use when you run the app locally or reload it. +Got more questions? Feel free to reach out or open an issue in our GitHub repo! diff --git a/docs/docs/CONTRIBUTING.md b/docs/docs/CONTRIBUTING.md index 7b18010da..3a8d5be8f 100644 --- a/docs/docs/CONTRIBUTING.md +++ b/docs/docs/CONTRIBUTING.md @@ -1,246 +1,219 @@ # Contribution Guidelines -## 📋 Table of Contents -- [Code of Conduct](#code-of-conduct) -- [How Can I Contribute?](#how-can-i-contribute) -- [Pull Request Guidelines](#pull-request-guidelines) -- [Coding Standards](#coding-standards) -- [Development Setup](#development-setup) -- [Deploymnt with Docker](#docker-deployment-documentation) +Welcome! This guide provides all the details you need to contribute effectively to the project. Thank you for helping us make **bolt.diy** a better tool for developers worldwide. 💡 --- -## Code of Conduct +## 📋 Table of Contents -This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers. +1. [Code of Conduct](#code-of-conduct) +2. [How Can I Contribute?](#how-can-i-contribute) +3. [Pull Request Guidelines](#pull-request-guidelines) +4. [Coding Standards](#coding-standards) +5. [Development Setup](#development-setup) +6. [Testing](#testing) +7. [Deployment](#deployment) +8. [Docker Deployment](#docker-deployment) +9. [VS Code Dev Containers Integration](#vs-code-dev-containers-integration) --- -## How Can I Contribute? - -### 🐞 Reporting Bugs and Feature Requests -- Check the issue tracker to avoid duplicates -- Use the issue templates when available -- Include as much relevant information as possible -- For bugs, add steps to reproduce the issue - -### 🔧 Code Contributions -1. Fork the repository -2. Create a new branch for your feature/fix -3. Write your code -4. Submit a pull request +## 🛡️ Code of Conduct -### ✨ Becoming a Core Contributor -We're looking for dedicated contributors to help maintain and grow this project. If you're interested in becoming a core contributor, please fill out our [Contributor Application Form](https://forms.gle/TBSteXSDCtBDwr5m7). +This project is governed by our **Code of Conduct**. By participating, you agree to uphold this code. Report unacceptable behavior to the project maintainers. --- -## Pull Request Guidelines +## 🛠️ How Can I Contribute? -### 📝 PR Checklist -- [ ] Branch from the main branch -- [ ] Update documentation if needed -- [ ] Manually verify all new functionality works as expected -- [ ] Keep PRs focused and atomic +### 1️⃣ Reporting Bugs or Feature Requests +- Check the [issue tracker](#) to avoid duplicates. +- Use issue templates (if available). +- Provide detailed, relevant information and steps to reproduce bugs. -### 👀 Review Process -1. Manually test the changes -2. At least one maintainer review required -3. Address all review comments -4. Maintain clean commit history +### 2️⃣ Code Contributions +1. Fork the repository. +2. Create a feature or fix branch. +3. Write and test your code. +4. Submit a pull request (PR). ---- - -## Coding Standards - -### 💻 General Guidelines -- Follow existing code style -- Comment complex logic -- Keep functions focused and small -- Use meaningful variable names +### 3️⃣ Join as a Core Contributor +Interested in maintaining and growing the project? Fill out our [Contributor Application Form](https://forms.gle/TBSteXSDCtBDwr5m7). --- -## Development Setup +## ✅ Pull Request Guidelines -### 🔄 Initial Setup -1. Clone the repository: -```bash -git clone https://github.com/stackblitz-labs/bolt.diy.git -``` +### PR Checklist +- Branch from the **main** branch. +- Update documentation, if needed. +- Test all functionality manually. +- Focus on one feature/bug per PR. -2. Install dependencies: -```bash -pnpm install -``` +### Review Process +1. Manual testing by reviewers. +2. At least one maintainer review required. +3. Address review comments. +4. Maintain a clean commit history. -3. Set up environment variables: - - Rename `.env.example` to `.env.local` - - Add your LLM API keys (only set the ones you plan to use): -```bash -GROQ_API_KEY=XXX -HuggingFace_API_KEY=XXX -OPENAI_API_KEY=XXX -ANTHROPIC_API_KEY=XXX -... -``` - - Optionally set debug level: -```bash -VITE_LOG_LEVEL=debug -``` +--- - - Optionally set context size: -```bash -DEFAULT_NUM_CTX=32768 -``` +## 📏 Coding Standards -Some Example Context Values for the qwen2.5-coder:32b models are. - -* DEFAULT_NUM_CTX=32768 - Consumes 36GB of VRAM -* DEFAULT_NUM_CTX=24576 - Consumes 32GB of VRAM -* DEFAULT_NUM_CTX=12288 - Consumes 26GB of VRAM -* DEFAULT_NUM_CTX=6144 - Consumes 24GB of VRAM +### General Guidelines +- Follow existing code style. +- Comment complex logic. +- Keep functions small and focused. +- Use meaningful variable names. -**Important**: Never commit your `.env.local` file to version control. It's already included in .gitignore. +--- -### 🚀 Running the Development Server +## 🖥️ Development Setup + +### 1️⃣ Initial Setup +- Clone the repository: + ```bash + git clone https://github.com/stackblitz-labs/bolt.diy.git + ``` +- Install dependencies: + ```bash + pnpm install + ``` +- Set up environment variables: + 1. Rename `.env.example` to `.env.local`. + 2. Add your API keys: + ```bash + GROQ_API_KEY=XXX + HuggingFace_API_KEY=XXX + OPENAI_API_KEY=XXX + ... + ``` + 3. Optionally set: + - Debug level: `VITE_LOG_LEVEL=debug` + - Context size: `DEFAULT_NUM_CTX=32768` + +**Note**: Never commit your `.env.local` file to version control. It’s already in `.gitignore`. + +### 2️⃣ Run Development Server ```bash pnpm run dev ``` - -**Note**: You will need Google Chrome Canary to run this locally if you use Chrome! It's an easy install and a good browser for web development anyway. +**Tip**: Use **Google Chrome Canary** for local testing. --- -## Testing - -Run the test suite with: +## 🧪 Testing +Run the test suite with: ```bash pnpm test ``` --- -## Deployment - -To deploy the application to Cloudflare Pages: +## 🚀 Deployment +### Deploy to Cloudflare Pages ```bash pnpm run deploy ``` - -Make sure you have the necessary permissions and Wrangler is correctly configured for your Cloudflare account. +Ensure you have required permissions and that Wrangler is configured. --- -# Docker Deployment Documentation +## 🐳 Docker Deployment -This guide outlines various methods for building and deploying the application using Docker. +This section outlines the methods for deploying the application using Docker. The processes for **Development** and **Production** are provided separately for clarity. -## Build Methods +--- -### 1. Using Helper Scripts +### 🧑‍💻 Development Environment -NPM scripts are provided for convenient building: +#### Build Options +**Option 1: Helper Scripts** ```bash # Development build npm run dockerbuild - -# Production build -npm run dockerbuild:prod ``` -### 2. Direct Docker Build Commands - -You can use Docker's target feature to specify the build environment: - +**Option 2: Direct Docker Build Command** ```bash -# Development build docker build . --target bolt-ai-development - -# Production build -docker build . --target bolt-ai-production ``` -### 3. Docker Compose with Profiles - -Use Docker Compose profiles to manage different environments: - +**Option 3: Docker Compose Profile** ```bash -# Development environment docker-compose --profile development up +``` -# Production environment -docker-compose --profile production up +#### Running the Development Container +```bash +docker run -p 5173:5173 --env-file .env.local bolt-ai:development ``` --- -## Running the Application +### 🏭 Production Environment -After building using any of the methods above, run the container with: +#### Build Options +**Option 1: Helper Scripts** ```bash -# Development -docker run -p 5173:5173 --env-file .env.local bolt-ai:development +# Production build +npm run dockerbuild:prod +``` + +**Option 2: Direct Docker Build Command** +```bash +docker build . --target bolt-ai-production +``` + +**Option 3: Docker Compose Profile** +```bash +docker-compose --profile production up +``` -# Production +#### Running the Production Container +```bash docker run -p 5173:5173 --env-file .env.local bolt-ai:production ``` --- -## Deployment with Coolify +### Coolify Deployment -[Coolify](https://github.com/coollabsio/coolify) provides a straightforward deployment process: - -1. Import your Git repository as a new project -2. Select your target environment (development/production) -3. Choose "Docker Compose" as the Build Pack -4. Configure deployment domains -5. Set the custom start command: +For an easy deployment process, use [Coolify](https://github.com/coollabsio/coolify): +1. Import your Git repository into Coolify. +2. Choose **Docker Compose** as the build pack. +3. Configure environment variables (e.g., API keys). +4. Set the start command: ```bash docker compose --profile production up ``` -6. Configure environment variables - - Add necessary AI API keys - - Adjust other environment variables as needed -7. Deploy the application --- -## VS Code Integration +## 🛠️ VS Code Dev Containers Integration -The `docker-compose.yaml` configuration is compatible with VS Code dev containers: +The `docker-compose.yaml` configuration is compatible with **VS Code Dev Containers**, making it easy to set up a development environment directly in Visual Studio Code. -1. Open the command palette in VS Code -2. Select the dev container configuration -3. Choose the "development" profile from the context menu +### Steps to Use Dev Containers ---- - -## Environment Files - -Ensure you have the appropriate `.env.local` file configured before running the containers. This file should contain: -- API keys -- Environment-specific configurations -- Other required environment variables +1. Open the command palette in VS Code (`Ctrl+Shift+P` or `Cmd+Shift+P` on macOS). +2. Select **Dev Containers: Reopen in Container**. +3. Choose the **development** profile when prompted. +4. VS Code will rebuild the container and open it with the pre-configured environment. --- -## DEFAULT_NUM_CTX +## 🔑 Environment Variables -The `DEFAULT_NUM_CTX` environment variable can be used to limit the maximum number of context values used by the qwen2.5-coder model. For example, to limit the context to 24576 values (which uses 32GB of VRAM), set `DEFAULT_NUM_CTX=24576` in your `.env.local` file. +Ensure `.env.local` is configured correctly with: +- API keys. +- Context-specific configurations. -First off, thank you for considering contributing to bolt.diy! This fork aims to expand the capabilities of the original project by integrating multiple LLM providers and enhancing functionality. Every contribution helps make bolt.diy a better tool for developers worldwide. - ---- - -## Notes - -- Port 5173 is exposed and mapped for both development and production environments -- Environment variables are loaded from `.env.local` -- Different profiles (development/production) can be used for different deployment scenarios -- The configuration supports both local development and production deployment +Example for the `DEFAULT_NUM_CTX` variable: +```bash +DEFAULT_NUM_CTX=24576 # Uses 32GB VRAM +``` \ No newline at end of file From 58db67683ef54dfc1c625faecfb291cc683c92f9 Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Fri, 20 Dec 2024 09:42:54 -0500 Subject: [PATCH 30/41] docs: added info on updating using docker Added docker-compose --profile development up --build to the update section --- README.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 2ea459d48..6aaf14fc1 100644 --- a/README.md +++ b/README.md @@ -185,14 +185,19 @@ To keep your local version of bolt.diy up to date with the latest changes, follo pnpm install ``` -#### 4. **Run the Application** - Once the updates are complete, you can start the application again with: +#### 4. **Rebuild and Start the Application** - ```bash - pnpm run dev - ``` + - **If using Docker**, ensure you rebuild the Docker image to avoid using a cached version: + ```bash + docker-compose --profile development up --build + ``` + + - **If not using Docker**, you can start the application as usual with: + ```bash + pnpm run dev + ``` -This ensures that you're running the latest version of bolt.diy and can take advantage of all the newest features and bug fixes. +This ensures that you're running the latest version of bolt.diy and can take advantage of all the newest features and bug fixes. --- From 0c07bc9105dd83bf8d09ea0304ac10e13b0bc83b Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Fri, 20 Dec 2024 09:50:47 -0500 Subject: [PATCH 31/41] docs: added info on the Releases Page Added the option to download from the Releases Page instead of git clone in the README --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 6aaf14fc1..8d3f7bcbf 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,9 @@ If you're new to installing software from GitHub, don't worry! If you encounter ``` Look for `/usr/local/bin` in the output. -### Clone the Repository +### Clone the Repository + +Alternatively, you can download the latest version of the project directly from the [Releases Page](https://github.com/stackblitz-labs/bolt.diy/releases/latest). Simply download the .zip file, extract it, and proceed with the setup instructions below. If you are comfertiable using git then run the command below. Clone the repository using Git: From ed5bad36ba0cc4836f3c34960fd441687b3d9f30 Mon Sep 17 00:00:00 2001 From: Dustin Loring Date: Fri, 20 Dec 2024 10:02:06 -0500 Subject: [PATCH 32/41] docs: added info on both ways to set api keys --- docs/docs/index.md | 219 +++++++++++++++++++++++++-------------------- 1 file changed, 121 insertions(+), 98 deletions(-) diff --git a/docs/docs/index.md b/docs/docs/index.md index ef08de6eb..641d45a72 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -3,14 +3,17 @@ bolt.diy allows you to choose the LLM that you use for each prompt! Currently, y ## Table of Contents - [Join the community!](#join-the-community) -- [What's bolt.diy](#whats-boltdiy) -- [What Makes bolt.diy Different](#what-makes-boltdiy-different) +- [Features](#features) - [Setup](#setup) -- [Run with Docker](#run-with-docker) - - [Using Helper Scripts](#1a-using-helper-scripts) - - [Direct Docker Build Commands](#1b-direct-docker-build-commands-alternative-to-using-npm-scripts) - - [Docker Compose with Profiles](#2-docker-compose-with-profiles-to-run-the-container) -- [Run Without Docker](#run-without-docker) + - [Prerequisites](#prerequisites) + - [Clone the Repository](#clone-the-repository) + - [Entering API Keys](#entering-api-keys) + - [1. Set API Keys in the `.env.local` File](#1-set-api-keys-in-the-envlocal-file) + - [2. Configure API Keys Directly in the Application](#2-configure-api-keys-directly-in-the-application) +- [Run the Application](#run-the-application) + - [Option 1: Without Docker](#option-1-without-docker) + - [Option 2: With Docker](#option-2-with-docker) +- [Update Your Local Version to the Latest](#update-your-local-version-to-the-latest) - [Adding New LLMs](#adding-new-llms) - [Available Scripts](#available-scripts) - [Development](#development) @@ -24,72 +27,65 @@ bolt.diy allows you to choose the LLM that you use for each prompt! Currently, y --- -## Whats bolt.diy +## Features -bolt.diy is an AI-powered web development agent that allows you to prompt, run, edit, and deploy full-stack applications directly from your browser—no local setup required. If you're here to build your own AI-powered web dev agent using the Bolt open source codebase, [click here to get started!](./CONTRIBUTING.md) +- **AI-powered full-stack web development** directly in your browser. +- **Support for multiple LLMs** with an extensible architecture to integrate additional models. +- **Attach images to prompts** for better contextual understanding. +- **Integrated terminal** to view output of LLM-run commands. +- **Revert code to earlier versions** for easier debugging and quicker changes. +- **Download projects as ZIP** for easy portability. +- **Integration-ready Docker support** for a hassle-free setup. --- -## What Makes bolt.diy Different +## Setup -Claude, v0, etc are incredible- but you can't install packages, run backends, or edit code. That’s where bolt.diy stands out: +If you're new to installing software from GitHub, don't worry! If you encounter any issues, feel free to submit an "issue" using the provided links or improve this documentation by forking the repository, editing the instructions, and submitting a pull request. The following instruction will help you get the stable branch up and running on your local machine in no time. -- **Full-Stack in the Browser**: bolt.diy integrates cutting-edge AI models with an in-browser development environment powered by **StackBlitz’s WebContainers**. This allows you to: - - Install and run npm tools and libraries (like Vite, Next.js, and more) - - Run Node.js servers - - Interact with third-party APIs - - Deploy to production from chat - - Share your work via a URL +### Prerequisites -- **AI with Environment Control**: Unlike traditional dev environments where the AI can only assist in code generation, bolt.diy gives AI models **complete control** over the entire environment including the filesystem, node server, package manager, terminal, and browser console. This empowers AI agents to handle the whole app lifecycle—from creation to deployment. +1. **Install Git**: [Download Git](https://git-scm.com/downloads) +2. **Install Node.js**: [Download Node.js](https://nodejs.org/en/download/) -Whether you’re an experienced developer, a PM, or a designer, bolt.diy allows you to easily build production-grade full-stack applications. + - After installation, the Node.js path is usually added to your system automatically. To verify: + - **Windows**: Search for "Edit the system environment variables," click "Environment Variables," and check if `Node.js` is in the `Path` variable. + - **Mac/Linux**: Open a terminal and run: + ```bash + echo $PATH + ``` + Look for `/usr/local/bin` in the output. -For developers interested in building their own AI-powered development tools with WebContainers, check out the open-source Bolt codebase in this repo! +### Clone the Repository ---- - -## Setup - -Many of you are new users to installing software from Github. If you have any installation troubles reach out and submit an "issue" using the links above, or feel free to enhance this documentation by forking, editing the instructions, and doing a pull request. - -1. [Install Git from](https://git-scm.com/downloads) - -2. [Install Node.js from](https://nodejs.org/en/download/) +Alternatively, you can download the latest version of the project directly from the [Releases Page](https://github.com/stackblitz-labs/bolt.diy/releases/latest). Simply download the .zip file, extract it, and proceed with the setup instructions below. If you are comfertiable using git then run the command below. -Pay attention to the installer notes after completion. +Clone the repository using Git: -On all operating systems, the path to Node.js should automatically be added to your system path. But you can check your path if you want to be sure. On Windows, you can search for "edit the system environment variables" in your system, select "Environment Variables..." once you are in the system properties, and then check for a path to Node in your "Path" system variable. On a Mac or Linux machine, it will tell you to check if /usr/local/bin is in your $PATH. To determine if usr/local/bin is included in $PATH open your Terminal and run: - -``` -echo $PATH . +```bash +git clone -b stable https://github.com/stackblitz-labs/bolt.diy ``` -If you see usr/local/bin in the output then you're good to go. +--- -3. Clone the repository (if you haven't already) by opening a Terminal window (or CMD with admin permissions) and then typing in this: +### Entering API Keys -``` -git clone https://github.com/stackblitz-labs/bolt.diy.git -``` +There are two ways to configure your API keys in bolt.diy: -3. Rename .env.example to .env.local and add your LLM API keys. You will find this file on a Mac at "[your name]/bolt.diy/.env.example". For Windows and Linux the path will be similar. +#### 1. Set API Keys in the `.env.local` File -![image](https://github.com/user-attachments/assets/7e6a532c-2268-401f-8310-e8d20c731328) +When setting up the application, you will need to add your API keys for the LLMs you wish to use. You can do this by renaming the `.env.example` file to `.env.local` and adding your API keys there. -If you can't see the file indicated above, its likely you can't view hidden files. On Mac, open a Terminal window and enter this command below. On Windows, you will see the hidden files option in File Explorer Settings. A quick Google search will help you if you are stuck here. +- On **Mac**, you can find the file at `[your name]/bolt.diy/.env.example`. +- On **Windows/Linux**, the path will be similar. -``` +If you can't see the file, it's likely because hidden files are not being shown. On **Mac**, open a Terminal window and enter the following command to show hidden files: + +```bash defaults write com.apple.finder AppleShowAllFiles YES ``` -**NOTE**: you only have to set the ones you want to use and Ollama doesn't need an API key because it runs locally on your computer: - -[Get your GROQ API Key here](https://console.groq.com/keys) - -[Get your Open AI API Key by following these instructions](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key) - -Get your Anthropic API Key in your [account settings](https://console.anthropic.com/settings/keys) +Make sure to add your API keys for each provider you want to use, for example: ``` GROQ_API_KEY=XXX @@ -97,81 +93,108 @@ OPENAI_API_KEY=XXX ANTHROPIC_API_KEY=XXX ``` -Optionally, you can set the debug level: +Once you've set your keys, you can proceed with running the app. You will set these keys up during the initial setup, and you can revisit and update them later after the app is running. -``` -VITE_LOG_LEVEL=debug -``` +**Note**: Never commit your `.env.local` file to version control. It’s already included in the `.gitignore`. -**Important**: Never commit your `.env.local` file to version control. It's already included in .gitignore. +#### 2. Configure API Keys Directly in the Application -## Run with Docker +Alternatively, you can configure your API keys directly in the application once it's running. To do this: -Prerequisites: +1. Launch the application and navigate to the provider selection dropdown. +2. Select the provider you wish to configure. +3. Click the pencil icon next to the selected provider. +4. Enter your API key in the provided field. -Git and Node.js as mentioned above, as well as Docker: https://www.docker.com/ +This method allows you to easily add or update your keys without needing to modify files directly. -### 1a. Using Helper Scripts +Once you've configured your keys, the application will be ready to use the selected LLMs. -NPM scripts are provided for convenient building: -```bash -# Development build -npm run dockerbuild +--- -# Production build -npm run dockerbuild:prod -``` +## Run the Application -### 1b. Direct Docker Build Commands (alternative to using NPM scripts) +### Option 1: Without Docker -You can use Docker's target feature to specify the build environment instead of using NPM scripts if you wish: +1. **Install Dependencies**: + ```bash + pnpm install + ``` + If `pnpm` is not installed, install it using: + ```bash + sudo npm install -g pnpm + ``` -```bash -# Development build -docker build . --target bolt-ai-development +2. **Start the Application**: + ```bash + pnpm run dev + ``` + This will start the Remix Vite development server. You will need Google Chrome Canary to run this locally if you use Chrome! It's an easy install and a good browser for web development anyway. -# Production build -docker build . --target bolt-ai-production -``` +### Option 2: With Docker -### 2. Docker Compose with Profiles to Run the Container +#### Prerequisites +- Ensure Git, Node.js, and Docker are installed: [Download Docker](https://www.docker.com/) -Use Docker Compose profiles to manage different environments: +#### Steps -```bash -# Development environment -docker-compose --profile development up +1. **Build the Docker Image**: -# Production environment -docker-compose --profile production up -``` + Use the provided NPM scripts: + ```bash + npm run dockerbuild + ``` + + Alternatively, use Docker commands directly: + ```bash + docker build . --target bolt-ai-development + ``` + +2. **Run the Container**: + Use Docker Compose profiles to manage environments: + ```bash + docker-compose --profile development up + ``` -When you run the Docker Compose command with the development profile, any changes you -make on your machine to the code will automatically be reflected in the site running -on the container (i.e. hot reloading still applies!). + - With the development profile, changes to your code will automatically reflect in the running container (hot reloading). --- -## Run Without Docker +### Update Your Local Version to the Latest -1. Install dependencies using Terminal (or CMD in Windows with admin permissions): +To keep your local version of bolt.diy up to date with the latest changes, follow these steps for your operating system: -``` -pnpm install -``` +#### 1. **Navigate to your project folder** + Navigate to the directory where you cloned the repository and open a terminal: -If you get an error saying "command not found: pnpm" or similar, then that means pnpm isn't installed. You can install it via this: +#### 2. **Fetch the Latest Changes** + Use Git to pull the latest changes from the main repository: -``` -sudo npm install -g pnpm -``` + ```bash + git pull origin main + ``` -2. Start the application with the command: +#### 3. **Update Dependencies** + After pulling the latest changes, update the project dependencies by running the following command: -```bash -pnpm run dev -``` + ```bash + pnpm install + ``` + +#### 4. **Rebuild and Start the Application** + + - **If using Docker**, ensure you rebuild the Docker image to avoid using a cached version: + ```bash + docker-compose --profile development up --build + ``` + + - **If not using Docker**, you can start the application as usual with: + ```bash + pnpm run dev + ``` + +This ensures that you're running the latest version of bolt.diy and can take advantage of all the newest features and bug fixes. --- From 56edbc46994b5cf9ac22af2fd14d7eafac3da47a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 20 Dec 2024 19:17:25 +0000 Subject: [PATCH 33/41] chore: update commit hash to ab5cde30a126f6540f0afb4d6d6e6be6a764ddca --- app/commit.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/commit.json b/app/commit.json index 8239a4129..0b9cd99c0 100644 --- a/app/commit.json +++ b/app/commit.json @@ -1 +1 @@ -{ "commit": "1398344c11f227c167ad1d726a734ea534d3e03a" } +{ "commit": "ab5cde30a126f6540f0afb4d6d6e6be6a764ddca", "version": "0.0.3" } From d8a277f0ace60331753debba461a129a51538b1a Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 01:03:28 +0530 Subject: [PATCH 34/41] refactor: updated vite config to inject add version metadata into the app on build (#841) * refactor: removes commit.json and used vite.config to load these variables * updated precommit hook * updated the pre start script * updated the workflows --- .github/workflows/commit.yaml | 39 ------------------- .github/workflows/update-stable.yml | 3 +- .husky/pre-commit | 11 ------ app/commit.json | 1 - app/components/settings/debug/DebugTab.tsx | 10 +++-- .../settings/providers/ProvidersTab.tsx | 21 +++++----- app/lib/hooks/useSettings.tsx | 16 ++++---- app/vite-env.d.ts | 2 + pre-start.cjs | 23 +++++++++-- vite.config.ts | 16 ++++++++ 10 files changed, 63 insertions(+), 79 deletions(-) delete mode 100644 .github/workflows/commit.yaml delete mode 100644 app/commit.json create mode 100644 app/vite-env.d.ts diff --git a/.github/workflows/commit.yaml b/.github/workflows/commit.yaml deleted file mode 100644 index 9d88605c0..000000000 --- a/.github/workflows/commit.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Update Commit Hash File - -on: - push: - branches: - - main - -permissions: - contents: write - -jobs: - update-commit: - if: contains(github.event.head_commit.message, '#release') != true - runs-on: ubuntu-latest - - steps: - - name: Checkout the code - uses: actions/checkout@v3 - - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: '20' - - name: Get the latest commit hash - run: | - echo "COMMIT_HASH=$(git rev-parse HEAD)" >> $GITHUB_ENV - echo "CURRENT_VERSION=$(node -p "require('./package.json').version")" >> $GITHUB_ENV - - - name: Update commit file - run: | - echo "{ \"commit\": \"$COMMIT_HASH\", \"version\": \"$CURRENT_VERSION\" }" > app/commit.json - - - name: Commit and push the update - run: | - git config --global user.name "github-actions[bot]" - git config --global user.email "github-actions[bot]@users.noreply.github.com" - git add app/commit.json - git commit -m "chore: update commit hash to $COMMIT_HASH" - git push \ No newline at end of file diff --git a/.github/workflows/update-stable.yml b/.github/workflows/update-stable.yml index bcb0ad95a..967c4e38b 100644 --- a/.github/workflows/update-stable.yml +++ b/.github/workflows/update-stable.yml @@ -166,8 +166,7 @@ jobs: - name: Commit and Tag Release run: | git pull - echo "{ \"commit\": \"$COMMIT_HASH\", \"version\": \"$NEW_VERSION\" }" > app/commit.json - git add package.json pnpm-lock.yaml changelog.md app/commit.json + git add package.json pnpm-lock.yaml changelog.md git commit -m "chore: release version ${{ steps.bump_version.outputs.new_version }}" git tag "v${{ steps.bump_version.outputs.new_version }}" git push diff --git a/.husky/pre-commit b/.husky/pre-commit index b95e00d5e..5f5c2b9ed 100644 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -29,15 +29,4 @@ if ! pnpm lint; then exit 1 fi -# Update commit.json with the latest commit hash -echo "Updating commit.json with the latest commit hash..." -COMMIT_HASH=$(git rev-parse HEAD) -if [ $? -ne 0 ]; then - echo "❌ Failed to get commit hash. Ensure you are in a git repository." - exit 1 -fi - -echo "{ \"commit\": \"$COMMIT_HASH\" }" > app/commit.json -git add app/commit.json - echo "👍 All checks passed! Committing changes..." diff --git a/app/commit.json b/app/commit.json deleted file mode 100644 index 0b9cd99c0..000000000 --- a/app/commit.json +++ /dev/null @@ -1 +0,0 @@ -{ "commit": "ab5cde30a126f6540f0afb4d6d6e6be6a764ddca", "version": "0.0.3" } diff --git a/app/components/settings/debug/DebugTab.tsx b/app/components/settings/debug/DebugTab.tsx index b0cde7dd7..3d1860313 100644 --- a/app/components/settings/debug/DebugTab.tsx +++ b/app/components/settings/debug/DebugTab.tsx @@ -1,6 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useSettings } from '~/lib/hooks/useSettings'; -import commit from '~/commit.json'; import { toast } from 'react-toastify'; import { providerBaseUrlEnvKeys } from '~/utils/constants'; @@ -44,11 +43,16 @@ interface CommitData { version?: string; } -const connitJson: CommitData = commit; +const connitJson: CommitData = { + commit: __COMMIT_HASH, + version: __APP_VERSION, +}; const LOCAL_PROVIDERS = ['Ollama', 'LMStudio', 'OpenAILike']; + const versionHash = connitJson.commit; const versionTag = connitJson.version; + const GITHUB_URLS = { original: 'https://api.github.com/repos/stackblitz-labs/bolt.diy/commits/main', fork: 'https://api.github.com/repos/Stijnus/bolt.new-any-llm/commits/main', @@ -524,7 +528,7 @@ export default function DebugTab() {

Version

- {versionHash.slice(0, 7)} + {connitJson.commit.slice(0, 7)} (v{versionTag || '0.0.1'}) - {isLatestBranch ? 'nightly' : 'stable'} diff --git a/app/components/settings/providers/ProvidersTab.tsx b/app/components/settings/providers/ProvidersTab.tsx index 58c8dac6b..e03731f43 100644 --- a/app/components/settings/providers/ProvidersTab.tsx +++ b/app/components/settings/providers/ProvidersTab.tsx @@ -35,8 +35,8 @@ export default function ProvidersTab() { newFilteredProviders.sort((a, b) => a.name.localeCompare(b.name)); // Split providers into regular and URL-configurable - const regular = newFilteredProviders.filter(p => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); - const urlConfigurable = newFilteredProviders.filter(p => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const regular = newFilteredProviders.filter((p) => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const urlConfigurable = newFilteredProviders.filter((p) => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); setFilteredProviders([...regular, ...urlConfigurable]); }, [providers, searchTerm, isLocalModel]); @@ -112,8 +112,8 @@ export default function ProvidersTab() { ); }; - const regularProviders = filteredProviders.filter(p => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); - const urlConfigurableProviders = filteredProviders.filter(p => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const regularProviders = filteredProviders.filter((p) => !URL_CONFIGURABLE_PROVIDERS.includes(p.name)); + const urlConfigurableProviders = filteredProviders.filter((p) => URL_CONFIGURABLE_PROVIDERS.includes(p.name)); return (

@@ -128,22 +128,19 @@ export default function ProvidersTab() {
{/* Regular Providers Grid */} -
- {regularProviders.map(renderProviderCard)} -
+
{regularProviders.map(renderProviderCard)}
{/* URL Configurable Providers Section */} {urlConfigurableProviders.length > 0 && (

Experimental Providers

- These providers are experimental and allow you to run AI models locally or connect to your own infrastructure. They require additional setup but offer more flexibility. + These providers are experimental and allow you to run AI models locally or connect to your own + infrastructure. They require additional setup but offer more flexibility.

-
- {urlConfigurableProviders.map(renderProviderCard)} -
+
{urlConfigurableProviders.map(renderProviderCard)}
)}
); -} \ No newline at end of file +} diff --git a/app/lib/hooks/useSettings.tsx b/app/lib/hooks/useSettings.tsx index cbdc1894a..68d8f6bb8 100644 --- a/app/lib/hooks/useSettings.tsx +++ b/app/lib/hooks/useSettings.tsx @@ -12,14 +12,16 @@ import { useCallback, useEffect, useState } from 'react'; import Cookies from 'js-cookie'; import type { IProviderSetting, ProviderInfo } from '~/types/model'; import { logStore } from '~/lib/stores/logs'; // assuming logStore is imported from this location -import commit from '~/commit.json'; interface CommitData { commit: string; version?: string; } -const commitJson: CommitData = commit; +const versionData: CommitData = { + commit: __COMMIT_HASH, + version: __APP_VERSION, +}; export function useSettings() { const providers = useStore(providersStore); @@ -34,7 +36,7 @@ export function useSettings() { const checkIsStableVersion = async () => { try { const stableResponse = await fetch( - `https://raw.githubusercontent.com/stackblitz-labs/bolt.diy/refs/tags/v${commitJson.version}/app/commit.json`, + `https://raw.githubusercontent.com/stackblitz-labs/bolt.diy/refs/tags/v${versionData.version}/app/commit.json`, ); if (!stableResponse.ok) { @@ -44,7 +46,7 @@ export function useSettings() { const stableData = (await stableResponse.json()) as CommitData; - return commit.commit === stableData.commit; + return versionData.commit === stableData.commit; } catch (error) { console.warn('Error checking stable version:', error); return false; @@ -105,16 +107,16 @@ export function useSettings() { let checkCommit = Cookies.get('commitHash'); if (checkCommit === undefined) { - checkCommit = commit.commit; + checkCommit = versionData.commit; } - if (savedLatestBranch === undefined || checkCommit !== commit.commit) { + if (savedLatestBranch === undefined || checkCommit !== versionData.commit) { // If setting hasn't been set by user, check version checkIsStableVersion().then((isStable) => { const shouldUseLatest = !isStable; latestBranchStore.set(shouldUseLatest); Cookies.set('isLatestBranch', String(shouldUseLatest)); - Cookies.set('commitHash', String(commit.commit)); + Cookies.set('commitHash', String(versionData.commit)); }); } else { latestBranchStore.set(savedLatestBranch === 'true'); diff --git a/app/vite-env.d.ts b/app/vite-env.d.ts new file mode 100644 index 000000000..ab9286583 --- /dev/null +++ b/app/vite-env.d.ts @@ -0,0 +1,2 @@ +declare const __COMMIT_HASH: string; +declare const __APP_VERSION: string; diff --git a/pre-start.cjs b/pre-start.cjs index 841e3eb69..cd24d93c4 100644 --- a/pre-start.cjs +++ b/pre-start.cjs @@ -1,4 +1,18 @@ -const { commit } = require('./app/commit.json'); +const { execSync } =require('child_process'); + +// Get git hash with fallback +const getGitHash = () => { + try { + return execSync('git rev-parse --short HEAD').toString().trim(); + } catch { + return 'no-git-info'; + } +}; + +let commitJson = { + hash: JSON.stringify(getGitHash()), + version: JSON.stringify(process.env.npm_package_version), +}; console.log(` ★═══════════════════════════════════════★ @@ -6,6 +20,7 @@ console.log(` ⚡️ Welcome ⚡️ ★═══════════════════════════════════════★ `); -console.log('📍 Current Commit Version:', commit); -console.log(' Please wait until the URL appears here') -console.log('★═══════════════════════════════════════★'); \ No newline at end of file +console.log('📍 Current Version Tag:', `v${commitJson.version}`); +console.log('📍 Current Commit Version:', commitJson.hash); +console.log(' Please wait until the URL appears here'); +console.log('★═══════════════════════════════════════★'); diff --git a/vite.config.ts b/vite.config.ts index b2f795dde..105444498 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -5,8 +5,24 @@ import { nodePolyfills } from 'vite-plugin-node-polyfills'; import { optimizeCssModules } from 'vite-plugin-optimize-css-modules'; import tsconfigPaths from 'vite-tsconfig-paths'; +import { execSync } from 'child_process'; + +// Get git hash with fallback +const getGitHash = () => { + try { + return execSync('git rev-parse --short HEAD').toString().trim(); + } catch { + return 'no-git-info'; + } +}; + + export default defineConfig((config) => { return { + define: { + __COMMIT_HASH__: JSON.stringify(getGitHash()), + __APP_VERSION__: JSON.stringify(process.env.npm_package_version), + }, build: { target: 'esnext', }, From dbd24142ae3c3611f518eb1388e24f9a2157a055 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 01:09:44 +0530 Subject: [PATCH 35/41] ci: updated the docs ci to only trigger if any files changed in the docs folder (#849) --- .github/workflows/docs.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index ceff50847..0691be2fd 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -4,6 +4,8 @@ on: push: branches: - main + paths: + - 'docs/**' # This will only trigger the workflow when files in docs directory change permissions: contents: write jobs: From 80d9800aa07d35c666d5b01550fcb40baac02d93 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 01:52:45 +0530 Subject: [PATCH 36/41] docs: updated download link (#850) --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 57cbd75e8..5ef41deac 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,11 @@ Let's get you up and running with the stable version of Bolt.DIY! ## Quick Download -[![Download Latest Release](https://img.shields.io/github/v/release/stackblitz-labs/bolt.diy?label=Download%20Bolt&sort=semver)](https://github.com/stackblitz-labs/bolt.diy/releases/latest/download/bolt.diy.zip) ← Click here to download the latest version! +[![Download Latest Release](https://img.shields.io/github/v/release/stackblitz-labs/bolt.diy?label=Download%20Bolt&sort=semver)](https://github.com/stackblitz-labs/bolt.diy/releases/latest) ← Click here to go the the latest release version! + +- Next **click source.zip** + + ## Prerequisites From df6925ac07b62dd88a269bbbfaf2762a5c6e5453 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 02:13:29 +0530 Subject: [PATCH 37/41] fix: add Message Processing Throttling to Prevent Browser Crashes (#848) --- app/components/chat/Chat.client.tsx | 31 ++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/app/components/chat/Chat.client.tsx b/app/components/chat/Chat.client.tsx index d9e57f233..28be779a0 100644 --- a/app/components/chat/Chat.client.tsx +++ b/app/components/chat/Chat.client.tsx @@ -21,6 +21,7 @@ import { debounce } from '~/utils/debounce'; import { useSettings } from '~/lib/hooks/useSettings'; import type { ProviderInfo } from '~/types/model'; import { useSearchParams } from '@remix-run/react'; +import { createSampler } from '~/utils/sampler'; const toastAnimation = cssTransition({ enter: 'animated fadeInRight', @@ -77,6 +78,24 @@ export function Chat() { ); } +const processSampledMessages = createSampler( + (options: { + messages: Message[]; + initialMessages: Message[]; + isLoading: boolean; + parseMessages: (messages: Message[], isLoading: boolean) => void; + storeMessageHistory: (messages: Message[]) => Promise; + }) => { + const { messages, initialMessages, isLoading, parseMessages, storeMessageHistory } = options; + parseMessages(messages, isLoading); + + if (messages.length > initialMessages.length) { + storeMessageHistory(messages).catch((error) => toast.error(error.message)); + } + }, + 50, +); + interface ChatProps { initialMessages: Message[]; storeMessageHistory: (messages: Message[]) => Promise; @@ -169,11 +188,13 @@ export const ChatImpl = memo( }, []); useEffect(() => { - parseMessages(messages, isLoading); - - if (messages.length > initialMessages.length) { - storeMessageHistory(messages).catch((error) => toast.error(error.message)); - } + processSampledMessages({ + messages, + initialMessages, + isLoading, + parseMessages, + storeMessageHistory, + }); }, [messages, isLoading, parseMessages]); const scrollTextArea = () => { From 63abf52000e6145911d96313fecb9449397e7bfd Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 02:24:57 +0530 Subject: [PATCH 38/41] fix hotfix for version metadata issue (#853) --- vite.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vite.config.ts b/vite.config.ts index 105444498..312230a0a 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -20,8 +20,8 @@ const getGitHash = () => { export default defineConfig((config) => { return { define: { - __COMMIT_HASH__: JSON.stringify(getGitHash()), - __APP_VERSION__: JSON.stringify(process.env.npm_package_version), + __COMMIT_HASH: JSON.stringify(getGitHash()), + __APP_VERSION: JSON.stringify(process.env.npm_package_version), }, build: { target: 'esnext', From 7295352a9802d4328cc8cb2bed5de5b874ce35e8 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 11:45:17 +0530 Subject: [PATCH 39/41] refactor: refactored LLM Providers: Adapting Modular Approach (#832) * refactor: Refactoring Providers to have providers as modules * updated package and lock file * added grok model back * updated registry system --- app/components/chat/BaseChat.tsx | 3 +- app/components/chat/Chat.client.tsx | 2 +- app/components/chat/ModelSelector.tsx | 2 +- app/lib/.server/llm/api-key.ts | 111 --- app/lib/.server/llm/model.ts | 190 ---- app/lib/.server/llm/stream-text.ts | 11 +- app/lib/modules/llm/base-provider.ts | 72 ++ app/lib/modules/llm/manager.ts | 116 +++ app/lib/modules/llm/providers/anthropic.ts | 58 ++ app/lib/modules/llm/providers/cohere.ts | 54 + app/lib/modules/llm/providers/deepseek.ts | 47 + app/lib/modules/llm/providers/google.ts | 51 + app/lib/modules/llm/providers/groq.ts | 51 + app/lib/modules/llm/providers/huggingface.ts | 69 ++ app/lib/modules/llm/providers/lmstudio.ts | 73 ++ app/lib/modules/llm/providers/mistral.ts | 53 + app/lib/modules/llm/providers/ollama.ts | 99 ++ app/lib/modules/llm/providers/open-router.ts | 132 +++ app/lib/modules/llm/providers/openai-like.ts | 77 ++ app/lib/modules/llm/providers/openai.ts | 48 + app/lib/modules/llm/providers/perplexity.ts | 63 ++ app/lib/modules/llm/providers/together.ts | 100 ++ app/lib/modules/llm/providers/xai.ts | 47 + app/lib/modules/llm/registry.ts | 33 + app/lib/modules/llm/types.ts | 32 + app/types/model.ts | 2 +- app/utils/constants.ts | 984 +++++++------------ app/utils/types.ts | 7 - pnpm-lock.yaml | 2 +- worker-configuration.d.ts | 1 + 30 files changed, 1625 insertions(+), 965 deletions(-) delete mode 100644 app/lib/.server/llm/api-key.ts delete mode 100644 app/lib/.server/llm/model.ts create mode 100644 app/lib/modules/llm/base-provider.ts create mode 100644 app/lib/modules/llm/manager.ts create mode 100644 app/lib/modules/llm/providers/anthropic.ts create mode 100644 app/lib/modules/llm/providers/cohere.ts create mode 100644 app/lib/modules/llm/providers/deepseek.ts create mode 100644 app/lib/modules/llm/providers/google.ts create mode 100644 app/lib/modules/llm/providers/groq.ts create mode 100644 app/lib/modules/llm/providers/huggingface.ts create mode 100644 app/lib/modules/llm/providers/lmstudio.ts create mode 100644 app/lib/modules/llm/providers/mistral.ts create mode 100644 app/lib/modules/llm/providers/ollama.ts create mode 100644 app/lib/modules/llm/providers/open-router.ts create mode 100644 app/lib/modules/llm/providers/openai-like.ts create mode 100644 app/lib/modules/llm/providers/openai.ts create mode 100644 app/lib/modules/llm/providers/perplexity.ts create mode 100644 app/lib/modules/llm/providers/together.ts create mode 100644 app/lib/modules/llm/providers/xai.ts create mode 100644 app/lib/modules/llm/registry.ts create mode 100644 app/lib/modules/llm/types.ts diff --git a/app/components/chat/BaseChat.tsx b/app/components/chat/BaseChat.tsx index 5db66537c..7c2a9da12 100644 --- a/app/components/chat/BaseChat.tsx +++ b/app/components/chat/BaseChat.tsx @@ -160,6 +160,7 @@ export const BaseChat = React.forwardRef( } initializeModelList({ apiKeys: parsedApiKeys, providerSettings }).then((modelList) => { + console.log('Model List: ', modelList); setModelList(modelList); }); @@ -359,7 +360,7 @@ export const BaseChat = React.forwardRef( modelList={modelList} provider={provider} setProvider={setProvider} - providerList={providerList || PROVIDER_LIST} + providerList={providerList || (PROVIDER_LIST as ProviderInfo[])} apiKeys={apiKeys} /> {(providerList || []).length > 0 && provider && ( diff --git a/app/components/chat/Chat.client.tsx b/app/components/chat/Chat.client.tsx index 28be779a0..1b830fd90 100644 --- a/app/components/chat/Chat.client.tsx +++ b/app/components/chat/Chat.client.tsx @@ -122,7 +122,7 @@ export const ChatImpl = memo( }); const [provider, setProvider] = useState(() => { const savedProvider = Cookies.get('selectedProvider'); - return PROVIDER_LIST.find((p) => p.name === savedProvider) || DEFAULT_PROVIDER; + return (PROVIDER_LIST.find((p) => p.name === savedProvider) || DEFAULT_PROVIDER) as ProviderInfo; }); const { showChat } = useStore(chatStore); diff --git a/app/components/chat/ModelSelector.tsx b/app/components/chat/ModelSelector.tsx index 7571d636d..ec4da63ff 100644 --- a/app/components/chat/ModelSelector.tsx +++ b/app/components/chat/ModelSelector.tsx @@ -1,6 +1,6 @@ import type { ProviderInfo } from '~/types/model'; -import type { ModelInfo } from '~/utils/types'; import { useEffect } from 'react'; +import type { ModelInfo } from '~/lib/modules/llm/types'; interface ModelSelectorProps { model?: string; diff --git a/app/lib/.server/llm/api-key.ts b/app/lib/.server/llm/api-key.ts deleted file mode 100644 index 4b0fc533f..000000000 --- a/app/lib/.server/llm/api-key.ts +++ /dev/null @@ -1,111 +0,0 @@ -import { env } from 'node:process'; -import type { IProviderSetting } from '~/types/model'; -import { getProviderBaseUrlAndKey } from '~/utils/constants'; - -export function getAPIKey(cloudflareEnv: Env, provider: string, userApiKeys?: Record) { - /** - * The `cloudflareEnv` is only used when deployed or when previewing locally. - * In development the environment variables are available through `env`. - */ - - // First check user-provided API keys - if (userApiKeys?.[provider]) { - return userApiKeys[provider]; - } - - const { apiKey } = getProviderBaseUrlAndKey({ - provider, - apiKeys: userApiKeys, - providerSettings: undefined, - serverEnv: cloudflareEnv as any, - defaultBaseUrlKey: '', - defaultApiTokenKey: '', - }); - - if (apiKey) { - return apiKey; - } - - // Fall back to hardcoded environment variables names - switch (provider) { - case 'Anthropic': - return env.ANTHROPIC_API_KEY || cloudflareEnv.ANTHROPIC_API_KEY; - case 'OpenAI': - return env.OPENAI_API_KEY || cloudflareEnv.OPENAI_API_KEY; - case 'Google': - return env.GOOGLE_GENERATIVE_AI_API_KEY || cloudflareEnv.GOOGLE_GENERATIVE_AI_API_KEY; - case 'Groq': - return env.GROQ_API_KEY || cloudflareEnv.GROQ_API_KEY; - case 'HuggingFace': - return env.HuggingFace_API_KEY || cloudflareEnv.HuggingFace_API_KEY; - case 'OpenRouter': - return env.OPEN_ROUTER_API_KEY || cloudflareEnv.OPEN_ROUTER_API_KEY; - case 'Deepseek': - return env.DEEPSEEK_API_KEY || cloudflareEnv.DEEPSEEK_API_KEY; - case 'Mistral': - return env.MISTRAL_API_KEY || cloudflareEnv.MISTRAL_API_KEY; - case 'OpenAILike': - return env.OPENAI_LIKE_API_KEY || cloudflareEnv.OPENAI_LIKE_API_KEY; - case 'Together': - return env.TOGETHER_API_KEY || cloudflareEnv.TOGETHER_API_KEY; - case 'xAI': - return env.XAI_API_KEY || cloudflareEnv.XAI_API_KEY; - case 'Perplexity': - return env.PERPLEXITY_API_KEY || cloudflareEnv.PERPLEXITY_API_KEY; - case 'Cohere': - return env.COHERE_API_KEY; - case 'AzureOpenAI': - return env.AZURE_OPENAI_API_KEY; - default: - return ''; - } -} - -export function getBaseURL(cloudflareEnv: Env, provider: string, providerSettings?: Record) { - const { baseUrl } = getProviderBaseUrlAndKey({ - provider, - apiKeys: {}, - providerSettings, - serverEnv: cloudflareEnv as any, - defaultBaseUrlKey: '', - defaultApiTokenKey: '', - }); - - if (baseUrl) { - return baseUrl; - } - - let settingBaseUrl = providerSettings?.[provider].baseUrl; - - if (settingBaseUrl && settingBaseUrl.length == 0) { - settingBaseUrl = undefined; - } - - switch (provider) { - case 'Together': - return ( - settingBaseUrl || - env.TOGETHER_API_BASE_URL || - cloudflareEnv.TOGETHER_API_BASE_URL || - 'https://api.together.xyz/v1' - ); - case 'OpenAILike': - return settingBaseUrl || env.OPENAI_LIKE_API_BASE_URL || cloudflareEnv.OPENAI_LIKE_API_BASE_URL; - case 'LMStudio': - return ( - settingBaseUrl || env.LMSTUDIO_API_BASE_URL || cloudflareEnv.LMSTUDIO_API_BASE_URL || 'http://localhost:1234' - ); - case 'Ollama': { - let baseUrl = - settingBaseUrl || env.OLLAMA_API_BASE_URL || cloudflareEnv.OLLAMA_API_BASE_URL || 'http://localhost:11434'; - - if (env.RUNNING_IN_DOCKER === 'true') { - baseUrl = baseUrl.replace('localhost', 'host.docker.internal'); - } - - return baseUrl; - } - default: - return ''; - } -} diff --git a/app/lib/.server/llm/model.ts b/app/lib/.server/llm/model.ts deleted file mode 100644 index 308e27d45..000000000 --- a/app/lib/.server/llm/model.ts +++ /dev/null @@ -1,190 +0,0 @@ -/* - * @ts-nocheck - * Preventing TS checks with files presented in the video for a better presentation. - */ -import { getAPIKey, getBaseURL } from '~/lib/.server/llm/api-key'; -import { createAnthropic } from '@ai-sdk/anthropic'; -import { createOpenAI } from '@ai-sdk/openai'; -import { createGoogleGenerativeAI } from '@ai-sdk/google'; -import { ollama } from 'ollama-ai-provider'; -import { createOpenRouter } from '@openrouter/ai-sdk-provider'; -import { createMistral } from '@ai-sdk/mistral'; -import { createCohere } from '@ai-sdk/cohere'; -import type { LanguageModelV1 } from 'ai'; -import type { IProviderSetting } from '~/types/model'; - -export const DEFAULT_NUM_CTX = process.env.DEFAULT_NUM_CTX ? parseInt(process.env.DEFAULT_NUM_CTX, 10) : 32768; - -type OptionalApiKey = string | undefined; - -export function getAnthropicModel(apiKey: OptionalApiKey, model: string) { - const anthropic = createAnthropic({ - apiKey, - }); - - return anthropic(model); -} -export function getOpenAILikeModel(baseURL: string, apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - baseURL, - apiKey, - }); - - return openai(model); -} - -export function getCohereAIModel(apiKey: OptionalApiKey, model: string) { - const cohere = createCohere({ - apiKey, - }); - - return cohere(model); -} - -export function getOpenAIModel(apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - apiKey, - }); - - return openai(model); -} - -export function getMistralModel(apiKey: OptionalApiKey, model: string) { - const mistral = createMistral({ - apiKey, - }); - - return mistral(model); -} - -export function getGoogleModel(apiKey: OptionalApiKey, model: string) { - const google = createGoogleGenerativeAI({ - apiKey, - }); - - return google(model); -} - -export function getGroqModel(apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - baseURL: 'https://api.groq.com/openai/v1', - apiKey, - }); - - return openai(model); -} - -export function getHuggingFaceModel(apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - baseURL: 'https://api-inference.huggingface.co/v1/', - apiKey, - }); - - return openai(model); -} - -export function getOllamaModel(baseURL: string, model: string) { - const ollamaInstance = ollama(model, { - numCtx: DEFAULT_NUM_CTX, - }) as LanguageModelV1 & { config: any }; - - ollamaInstance.config.baseURL = `${baseURL}/api`; - - return ollamaInstance; -} - -export function getDeepseekModel(apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - baseURL: 'https://api.deepseek.com/beta', - apiKey, - }); - - return openai(model); -} - -export function getOpenRouterModel(apiKey: OptionalApiKey, model: string) { - const openRouter = createOpenRouter({ - apiKey, - }); - - return openRouter.chat(model); -} - -export function getLMStudioModel(baseURL: string, model: string) { - const lmstudio = createOpenAI({ - baseUrl: `${baseURL}/v1`, - apiKey: '', - }); - - return lmstudio(model); -} - -export function getXAIModel(apiKey: OptionalApiKey, model: string) { - const openai = createOpenAI({ - baseURL: 'https://api.x.ai/v1', - apiKey, - }); - - return openai(model); -} - -export function getPerplexityModel(apiKey: OptionalApiKey, model: string) { - const perplexity = createOpenAI({ - baseURL: 'https://api.perplexity.ai/', - apiKey, - }); - - return perplexity(model); -} - -export function getModel( - provider: string, - model: string, - serverEnv: Env, - apiKeys?: Record, - providerSettings?: Record, -) { - /* - * let apiKey; // Declare first - * let baseURL; - */ - // console.log({provider,model}); - - const apiKey = getAPIKey(serverEnv, provider, apiKeys); // Then assign - const baseURL = getBaseURL(serverEnv, provider, providerSettings); - - // console.log({apiKey,baseURL}); - - switch (provider) { - case 'Anthropic': - return getAnthropicModel(apiKey, model); - case 'OpenAI': - return getOpenAIModel(apiKey, model); - case 'Groq': - return getGroqModel(apiKey, model); - case 'HuggingFace': - return getHuggingFaceModel(apiKey, model); - case 'OpenRouter': - return getOpenRouterModel(apiKey, model); - case 'Google': - return getGoogleModel(apiKey, model); - case 'OpenAILike': - return getOpenAILikeModel(baseURL, apiKey, model); - case 'Together': - return getOpenAILikeModel(baseURL, apiKey, model); - case 'Deepseek': - return getDeepseekModel(apiKey, model); - case 'Mistral': - return getMistralModel(apiKey, model); - case 'LMStudio': - return getLMStudioModel(baseURL, model); - case 'xAI': - return getXAIModel(apiKey, model); - case 'Cohere': - return getCohereAIModel(apiKey, model); - case 'Perplexity': - return getPerplexityModel(apiKey, model); - default: - return getOllamaModel(baseURL, model); - } -} diff --git a/app/lib/.server/llm/stream-text.ts b/app/lib/.server/llm/stream-text.ts index 6bbf56851..a71792288 100644 --- a/app/lib/.server/llm/stream-text.ts +++ b/app/lib/.server/llm/stream-text.ts @@ -1,5 +1,4 @@ import { convertToCoreMessages, streamText as _streamText } from 'ai'; -import { getModel } from '~/lib/.server/llm/model'; import { MAX_TOKENS } from './constants'; import { getSystemPrompt } from '~/lib/common/prompts/prompts'; import { @@ -8,6 +7,7 @@ import { getModelList, MODEL_REGEX, MODIFICATIONS_TAG_NAME, + PROVIDER_LIST, PROVIDER_REGEX, WORK_DIR, } from '~/utils/constants'; @@ -184,6 +184,8 @@ export async function streamText(props: { const dynamicMaxTokens = modelDetails && modelDetails.maxTokenAllowed ? modelDetails.maxTokenAllowed : MAX_TOKENS; + const provider = PROVIDER_LIST.find((p) => p.name === currentProvider) || DEFAULT_PROVIDER; + let systemPrompt = PromptLibrary.getPropmtFromLibrary(promptId || 'default', { cwd: WORK_DIR, @@ -199,7 +201,12 @@ export async function streamText(props: { } return _streamText({ - model: getModel(currentProvider, currentModel, serverEnv, apiKeys, providerSettings) as any, + model: provider.getModelInstance({ + model: currentModel, + serverEnv, + apiKeys, + providerSettings, + }), system: systemPrompt, maxTokens: dynamicMaxTokens, messages: convertToCoreMessages(processedMessages as any), diff --git a/app/lib/modules/llm/base-provider.ts b/app/lib/modules/llm/base-provider.ts new file mode 100644 index 000000000..ebc2a3a53 --- /dev/null +++ b/app/lib/modules/llm/base-provider.ts @@ -0,0 +1,72 @@ +import type { LanguageModelV1 } from 'ai'; +import type { ProviderInfo, ProviderConfig, ModelInfo } from './types'; +import type { IProviderSetting } from '~/types/model'; +import { createOpenAI } from '@ai-sdk/openai'; +import { LLMManager } from './manager'; + +export abstract class BaseProvider implements ProviderInfo { + abstract name: string; + abstract staticModels: ModelInfo[]; + abstract config: ProviderConfig; + + getApiKeyLink?: string; + labelForGetApiKey?: string; + icon?: string; + + getProviderBaseUrlAndKey(options: { + apiKeys?: Record; + providerSettings?: IProviderSetting; + serverEnv?: Record; + defaultBaseUrlKey: string; + defaultApiTokenKey: string; + }) { + const { apiKeys, providerSettings, serverEnv, defaultBaseUrlKey, defaultApiTokenKey } = options; + let settingsBaseUrl = providerSettings?.baseUrl; + const manager = LLMManager.getInstance(); + + if (settingsBaseUrl && settingsBaseUrl.length == 0) { + settingsBaseUrl = undefined; + } + + const baseUrlKey = this.config.baseUrlKey || defaultBaseUrlKey; + let baseUrl = settingsBaseUrl || serverEnv?.[baseUrlKey] || process?.env?.[baseUrlKey] || manager.env?.[baseUrlKey]; + + if (baseUrl && baseUrl.endsWith('/')) { + baseUrl = baseUrl.slice(0, -1); + } + + const apiTokenKey = this.config.apiTokenKey || defaultApiTokenKey; + const apiKey = + apiKeys?.[this.name] || serverEnv?.[apiTokenKey] || process?.env?.[apiTokenKey] || manager.env?.[baseUrlKey]; + + return { + baseUrl, + apiKey, + }; + } + + // Declare the optional getDynamicModels method + getDynamicModels?( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv?: Record, + ): Promise; + + abstract getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1; +} + +type OptionalApiKey = string | undefined; + +export function getOpenAILikeModel(baseURL: string, apiKey: OptionalApiKey, model: string) { + const openai = createOpenAI({ + baseURL, + apiKey, + }); + + return openai(model); +} diff --git a/app/lib/modules/llm/manager.ts b/app/lib/modules/llm/manager.ts new file mode 100644 index 000000000..38dc8254d --- /dev/null +++ b/app/lib/modules/llm/manager.ts @@ -0,0 +1,116 @@ +import type { IProviderSetting } from '~/types/model'; +import { BaseProvider } from './base-provider'; +import type { ModelInfo, ProviderInfo } from './types'; +import * as providers from './registry'; + +export class LLMManager { + private static _instance: LLMManager; + private _providers: Map = new Map(); + private _modelList: ModelInfo[] = []; + private readonly _env: any = {}; + + private constructor(_env: Record) { + this._registerProvidersFromDirectory(); + this._env = _env; + } + + static getInstance(env: Record = {}): LLMManager { + if (!LLMManager._instance) { + LLMManager._instance = new LLMManager(env); + } + + return LLMManager._instance; + } + get env() { + return this._env; + } + + private async _registerProvidersFromDirectory() { + try { + /* + * Dynamically import all files from the providers directory + * const providerModules = import.meta.glob('./providers/*.ts', { eager: true }); + */ + + // Look for exported classes that extend BaseProvider + for (const exportedItem of Object.values(providers)) { + if (typeof exportedItem === 'function' && exportedItem.prototype instanceof BaseProvider) { + const provider = new exportedItem(); + + try { + this.registerProvider(provider); + } catch (error: any) { + console.log('Failed To Register Provider: ', provider.name, 'error:', error.message); + } + } + } + } catch (error) { + console.error('Error registering providers:', error); + } + } + + registerProvider(provider: BaseProvider) { + if (this._providers.has(provider.name)) { + console.warn(`Provider ${provider.name} is already registered. Skipping.`); + return; + } + + console.log('Registering Provider: ', provider.name); + this._providers.set(provider.name, provider); + this._modelList = [...this._modelList, ...provider.staticModels]; + } + + getProvider(name: string): BaseProvider | undefined { + return this._providers.get(name); + } + + getAllProviders(): BaseProvider[] { + return Array.from(this._providers.values()); + } + + getModelList(): ModelInfo[] { + return this._modelList; + } + + async updateModelList(options: { + apiKeys?: Record; + providerSettings?: Record; + serverEnv?: Record; + }): Promise { + const { apiKeys, providerSettings, serverEnv } = options; + + // Get dynamic models from all providers that support them + const dynamicModels = await Promise.all( + Array.from(this._providers.values()) + .filter( + (provider): provider is BaseProvider & Required> => + !!provider.getDynamicModels, + ) + .map((provider) => + provider.getDynamicModels(apiKeys, providerSettings?.[provider.name], serverEnv).catch((err) => { + console.error(`Error getting dynamic models ${provider.name} :`, err); + return []; + }), + ), + ); + + // Combine static and dynamic models + const modelList = [ + ...dynamicModels.flat(), + ...Array.from(this._providers.values()).flatMap((p) => p.staticModels || []), + ]; + this._modelList = modelList; + + return modelList; + } + + getDefaultProvider(): BaseProvider { + const firstProvider = this._providers.values().next().value; + + if (!firstProvider) { + throw new Error('No providers registered'); + } + + return firstProvider; + } +} diff --git a/app/lib/modules/llm/providers/anthropic.ts b/app/lib/modules/llm/providers/anthropic.ts new file mode 100644 index 000000000..099f02d62 --- /dev/null +++ b/app/lib/modules/llm/providers/anthropic.ts @@ -0,0 +1,58 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { LanguageModelV1 } from 'ai'; +import type { IProviderSetting } from '~/types/model'; +import { createAnthropic } from '@ai-sdk/anthropic'; + +export default class AnthropicProvider extends BaseProvider { + name = 'Anthropic'; + getApiKeyLink = 'https://console.anthropic.com/settings/keys'; + + config = { + apiTokenKey: 'ANTHROPIC_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { + name: 'claude-3-5-sonnet-latest', + label: 'Claude 3.5 Sonnet (new)', + provider: 'Anthropic', + maxTokenAllowed: 8000, + }, + { + name: 'claude-3-5-sonnet-20240620', + label: 'Claude 3.5 Sonnet (old)', + provider: 'Anthropic', + maxTokenAllowed: 8000, + }, + { + name: 'claude-3-5-haiku-latest', + label: 'Claude 3.5 Haiku (new)', + provider: 'Anthropic', + maxTokenAllowed: 8000, + }, + { name: 'claude-3-opus-latest', label: 'Claude 3 Opus', provider: 'Anthropic', maxTokenAllowed: 8000 }, + { name: 'claude-3-sonnet-20240229', label: 'Claude 3 Sonnet', provider: 'Anthropic', maxTokenAllowed: 8000 }, + { name: 'claude-3-haiku-20240307', label: 'Claude 3 Haiku', provider: 'Anthropic', maxTokenAllowed: 8000 }, + ]; + getModelInstance: (options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }) => LanguageModelV1 = (options) => { + const { apiKeys, providerSettings, serverEnv, model } = options; + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings, + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'ANTHROPIC_API_KEY', + }); + const anthropic = createAnthropic({ + apiKey, + }); + + return anthropic(model); + }; +} diff --git a/app/lib/modules/llm/providers/cohere.ts b/app/lib/modules/llm/providers/cohere.ts new file mode 100644 index 000000000..9233b966b --- /dev/null +++ b/app/lib/modules/llm/providers/cohere.ts @@ -0,0 +1,54 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createCohere } from '@ai-sdk/cohere'; + +export default class CohereProvider extends BaseProvider { + name = 'Cohere'; + getApiKeyLink = 'https://dashboard.cohere.com/api-keys'; + + config = { + apiTokenKey: 'COHERE_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'command-r-plus-08-2024', label: 'Command R plus Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-r-08-2024', label: 'Command R Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-r-plus', label: 'Command R plus', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-r', label: 'Command R', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command', label: 'Command', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-nightly', label: 'Command Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-light', label: 'Command Light', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'command-light-nightly', label: 'Command Light Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'c4ai-aya-expanse-8b', label: 'c4AI Aya Expanse 8b', provider: 'Cohere', maxTokenAllowed: 4096 }, + { name: 'c4ai-aya-expanse-32b', label: 'c4AI Aya Expanse 32b', provider: 'Cohere', maxTokenAllowed: 4096 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'COHERE_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const cohere = createCohere({ + apiKey, + }); + + return cohere(model); + } +} diff --git a/app/lib/modules/llm/providers/deepseek.ts b/app/lib/modules/llm/providers/deepseek.ts new file mode 100644 index 000000000..dac0d23f1 --- /dev/null +++ b/app/lib/modules/llm/providers/deepseek.ts @@ -0,0 +1,47 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class DeepseekProvider extends BaseProvider { + name = 'Deepseek'; + getApiKeyLink = 'https://platform.deepseek.com/apiKeys'; + + config = { + apiTokenKey: 'DEEPSEEK_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'deepseek-coder', label: 'Deepseek-Coder', provider: 'Deepseek', maxTokenAllowed: 8000 }, + { name: 'deepseek-chat', label: 'Deepseek-Chat', provider: 'Deepseek', maxTokenAllowed: 8000 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'DEEPSEEK_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openai = createOpenAI({ + baseURL: 'https://api.deepseek.com/beta', + apiKey, + }); + + return openai(model); + } +} diff --git a/app/lib/modules/llm/providers/google.ts b/app/lib/modules/llm/providers/google.ts new file mode 100644 index 000000000..edc8e1dd3 --- /dev/null +++ b/app/lib/modules/llm/providers/google.ts @@ -0,0 +1,51 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createGoogleGenerativeAI } from '@ai-sdk/google'; + +export default class GoogleProvider extends BaseProvider { + name = 'Google'; + getApiKeyLink = 'https://aistudio.google.com/app/apikey'; + + config = { + apiTokenKey: 'GOOGLE_GENERATIVE_AI_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'gemini-1.5-flash-latest', label: 'Gemini 1.5 Flash', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-2.0-flash-exp', label: 'Gemini 2.0 Flash', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-1.5-flash-002', label: 'Gemini 1.5 Flash-002', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-1.5-flash-8b', label: 'Gemini 1.5 Flash-8b', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-1.5-pro-latest', label: 'Gemini 1.5 Pro', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-1.5-pro-002', label: 'Gemini 1.5 Pro-002', provider: 'Google', maxTokenAllowed: 8192 }, + { name: 'gemini-exp-1206', label: 'Gemini exp-1206', provider: 'Google', maxTokenAllowed: 8192 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: any; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'GOOGLE_GENERATIVE_AI_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const google = createGoogleGenerativeAI({ + apiKey, + }); + + return google(model); + } +} diff --git a/app/lib/modules/llm/providers/groq.ts b/app/lib/modules/llm/providers/groq.ts new file mode 100644 index 000000000..034dab12e --- /dev/null +++ b/app/lib/modules/llm/providers/groq.ts @@ -0,0 +1,51 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class GroqProvider extends BaseProvider { + name = 'Groq'; + getApiKeyLink = 'https://console.groq.com/keys'; + + config = { + apiTokenKey: 'GROQ_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'llama-3.1-8b-instant', label: 'Llama 3.1 8b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + { name: 'llama-3.2-11b-vision-preview', label: 'Llama 3.2 11b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + { name: 'llama-3.2-90b-vision-preview', label: 'Llama 3.2 90b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + { name: 'llama-3.2-3b-preview', label: 'Llama 3.2 3b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + { name: 'llama-3.2-1b-preview', label: 'Llama 3.2 1b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + { name: 'llama-3.3-70b-versatile', label: 'Llama 3.3 70b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'GROQ_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openai = createOpenAI({ + baseURL: 'https://api.groq.com/openai/v1', + apiKey, + }); + + return openai(model); + } +} diff --git a/app/lib/modules/llm/providers/huggingface.ts b/app/lib/modules/llm/providers/huggingface.ts new file mode 100644 index 000000000..5ae1d1b46 --- /dev/null +++ b/app/lib/modules/llm/providers/huggingface.ts @@ -0,0 +1,69 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class HuggingFaceProvider extends BaseProvider { + name = 'HuggingFace'; + getApiKeyLink = 'https://huggingface.co/settings/tokens'; + + config = { + apiTokenKey: 'HuggingFace_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { + name: 'Qwen/Qwen2.5-Coder-32B-Instruct', + label: 'Qwen2.5-Coder-32B-Instruct (HuggingFace)', + provider: 'HuggingFace', + maxTokenAllowed: 8000, + }, + { + name: '01-ai/Yi-1.5-34B-Chat', + label: 'Yi-1.5-34B-Chat (HuggingFace)', + provider: 'HuggingFace', + maxTokenAllowed: 8000, + }, + { + name: 'meta-llama/Llama-3.1-70B-Instruct', + label: 'Llama-3.1-70B-Instruct (HuggingFace)', + provider: 'HuggingFace', + maxTokenAllowed: 8000, + }, + { + name: 'meta-llama/Llama-3.1-405B', + label: 'Llama-3.1-405B (HuggingFace)', + provider: 'HuggingFace', + maxTokenAllowed: 8000, + }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'HuggingFace_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openai = createOpenAI({ + baseURL: 'https://api-inference.huggingface.co/v1/', + apiKey, + }); + + return openai(model); + } +} diff --git a/app/lib/modules/llm/providers/lmstudio.ts b/app/lib/modules/llm/providers/lmstudio.ts new file mode 100644 index 000000000..404045342 --- /dev/null +++ b/app/lib/modules/llm/providers/lmstudio.ts @@ -0,0 +1,73 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import { createOpenAI } from '@ai-sdk/openai'; +import type { LanguageModelV1 } from 'ai'; + +export default class LMStudioProvider extends BaseProvider { + name = 'LMStudio'; + getApiKeyLink = 'https://lmstudio.ai/'; + labelForGetApiKey = 'Get LMStudio'; + icon = 'i-ph:cloud-arrow-down'; + + config = { + baseUrlKey: 'LMSTUDIO_API_BASE_URL', + }; + + staticModels: ModelInfo[] = []; + + async getDynamicModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, + ): Promise { + try { + const { baseUrl } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'LMSTUDIO_API_BASE_URL', + defaultApiTokenKey: '', + }); + + if (!baseUrl) { + return []; + } + + const response = await fetch(`${baseUrl}/v1/models`); + const data = (await response.json()) as { data: Array<{ id: string }> }; + + return data.data.map((model) => ({ + name: model.id, + label: model.id, + provider: this.name, + maxTokenAllowed: 8000, + })); + } catch (error: any) { + console.log('Error getting LMStudio models:', error.message); + + return []; + } + } + getModelInstance: (options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }) => LanguageModelV1 = (options) => { + const { apiKeys, providerSettings, serverEnv, model } = options; + const { baseUrl } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings, + serverEnv: serverEnv as any, + defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', + defaultApiTokenKey: '', + }); + const lmstudio = createOpenAI({ + baseUrl: `${baseUrl}/v1`, + apiKey: '', + }); + + return lmstudio(model); + }; +} diff --git a/app/lib/modules/llm/providers/mistral.ts b/app/lib/modules/llm/providers/mistral.ts new file mode 100644 index 000000000..c5becee00 --- /dev/null +++ b/app/lib/modules/llm/providers/mistral.ts @@ -0,0 +1,53 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createMistral } from '@ai-sdk/mistral'; + +export default class MistralProvider extends BaseProvider { + name = 'Mistral'; + getApiKeyLink = 'https://console.mistral.ai/api-keys/'; + + config = { + apiTokenKey: 'MISTRAL_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'open-mistral-7b', label: 'Mistral 7B', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'open-mixtral-8x7b', label: 'Mistral 8x7B', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'open-mixtral-8x22b', label: 'Mistral 8x22B', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'open-codestral-mamba', label: 'Codestral Mamba', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'open-mistral-nemo', label: 'Mistral Nemo', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'ministral-8b-latest', label: 'Mistral 8B', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'mistral-small-latest', label: 'Mistral Small', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'codestral-latest', label: 'Codestral', provider: 'Mistral', maxTokenAllowed: 8000 }, + { name: 'mistral-large-latest', label: 'Mistral Large Latest', provider: 'Mistral', maxTokenAllowed: 8000 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'MISTRAL_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const mistral = createMistral({ + apiKey, + }); + + return mistral(model); + } +} diff --git a/app/lib/modules/llm/providers/ollama.ts b/app/lib/modules/llm/providers/ollama.ts new file mode 100644 index 000000000..ebe6b1b1a --- /dev/null +++ b/app/lib/modules/llm/providers/ollama.ts @@ -0,0 +1,99 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { ollama } from 'ollama-ai-provider'; + +interface OllamaModelDetails { + parent_model: string; + format: string; + family: string; + families: string[]; + parameter_size: string; + quantization_level: string; +} + +export interface OllamaModel { + name: string; + model: string; + modified_at: string; + size: number; + digest: string; + details: OllamaModelDetails; +} + +export interface OllamaApiResponse { + models: OllamaModel[]; +} + +export const DEFAULT_NUM_CTX = process?.env?.DEFAULT_NUM_CTX ? parseInt(process.env.DEFAULT_NUM_CTX, 10) : 32768; + +export default class OllamaProvider extends BaseProvider { + name = 'Ollama'; + getApiKeyLink = 'https://ollama.com/download'; + labelForGetApiKey = 'Download Ollama'; + icon = 'i-ph:cloud-arrow-down'; + + config = { + baseUrlKey: 'OLLAMA_API_BASE_URL', + }; + + staticModels: ModelInfo[] = []; + + async getDynamicModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, + ): Promise { + try { + const { baseUrl } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', + defaultApiTokenKey: '', + }); + + if (!baseUrl) { + return []; + } + + const response = await fetch(`${baseUrl}/api/tags`); + const data = (await response.json()) as OllamaApiResponse; + + // console.log({ ollamamodels: data.models }); + + return data.models.map((model: OllamaModel) => ({ + name: model.name, + label: `${model.name} (${model.details.parameter_size})`, + provider: this.name, + maxTokenAllowed: 8000, + })); + } catch (e) { + console.error('Failed to get Ollama models:', e); + return []; + } + } + getModelInstance: (options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }) => LanguageModelV1 = (options) => { + const { apiKeys, providerSettings, serverEnv, model } = options; + const { baseUrl } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings, + serverEnv: serverEnv as any, + defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', + defaultApiTokenKey: '', + }); + const ollamaInstance = ollama(model, { + numCtx: DEFAULT_NUM_CTX, + }) as LanguageModelV1 & { config: any }; + + ollamaInstance.config.baseURL = `${baseUrl}/api`; + + return ollamaInstance; + }; +} diff --git a/app/lib/modules/llm/providers/open-router.ts b/app/lib/modules/llm/providers/open-router.ts new file mode 100644 index 000000000..45defb2a8 --- /dev/null +++ b/app/lib/modules/llm/providers/open-router.ts @@ -0,0 +1,132 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenRouter } from '@openrouter/ai-sdk-provider'; + +interface OpenRouterModel { + name: string; + id: string; + context_length: number; + pricing: { + prompt: number; + completion: number; + }; +} + +interface OpenRouterModelsResponse { + data: OpenRouterModel[]; +} + +export default class OpenRouterProvider extends BaseProvider { + name = 'OpenRouter'; + getApiKeyLink = 'https://openrouter.ai/settings/keys'; + + config = { + apiTokenKey: 'OPEN_ROUTER_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'gpt-4o', label: 'GPT-4o', provider: 'OpenAI', maxTokenAllowed: 8000 }, + { + name: 'anthropic/claude-3.5-sonnet', + label: 'Anthropic: Claude 3.5 Sonnet (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { + name: 'anthropic/claude-3-haiku', + label: 'Anthropic: Claude 3 Haiku (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { + name: 'deepseek/deepseek-coder', + label: 'Deepseek-Coder V2 236B (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { + name: 'google/gemini-flash-1.5', + label: 'Google Gemini Flash 1.5 (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { + name: 'google/gemini-pro-1.5', + label: 'Google Gemini Pro 1.5 (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { name: 'x-ai/grok-beta', label: 'xAI Grok Beta (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 8000 }, + { + name: 'mistralai/mistral-nemo', + label: 'OpenRouter Mistral Nemo (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { + name: 'qwen/qwen-110b-chat', + label: 'OpenRouter Qwen 110b Chat (OpenRouter)', + provider: 'OpenRouter', + maxTokenAllowed: 8000, + }, + { name: 'cohere/command', label: 'Cohere Command (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 4096 }, + ]; + + async getDynamicModels( + _apiKeys?: Record, + _settings?: IProviderSetting, + _serverEnv: Record = {}, + ): Promise { + try { + const response = await fetch('https://openrouter.ai/api/v1/models', { + headers: { + 'Content-Type': 'application/json', + }, + }); + + const data = (await response.json()) as OpenRouterModelsResponse; + + return data.data + .sort((a, b) => a.name.localeCompare(b.name)) + .map((m) => ({ + name: m.id, + label: `${m.name} - in:$${(m.pricing.prompt * 1_000_000).toFixed(2)} out:$${(m.pricing.completion * 1_000_000).toFixed(2)} - context ${Math.floor(m.context_length / 1000)}k`, + provider: this.name, + maxTokenAllowed: 8000, + })); + } catch (error) { + console.error('Error getting OpenRouter models:', error); + return []; + } + } + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'OPEN_ROUTER_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openRouter = createOpenRouter({ + apiKey, + }); + const instance = openRouter.chat(model) as LanguageModelV1; + + return instance; + } +} diff --git a/app/lib/modules/llm/providers/openai-like.ts b/app/lib/modules/llm/providers/openai-like.ts new file mode 100644 index 000000000..44fb1ab9c --- /dev/null +++ b/app/lib/modules/llm/providers/openai-like.ts @@ -0,0 +1,77 @@ +import { BaseProvider, getOpenAILikeModel } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; + +export default class OpenAILikeProvider extends BaseProvider { + name = 'OpenAILike'; + getApiKeyLink = undefined; + + config = { + baseUrlKey: 'OPENAI_LIKE_API_BASE_URL', + apiTokenKey: 'OPENAI_LIKE_API_KEY', + }; + + staticModels: ModelInfo[] = []; + + async getDynamicModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, + ): Promise { + try { + const { baseUrl, apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'OPENAI_LIKE_API_BASE_URL', + defaultApiTokenKey: 'OPENAI_LIKE_API_KEY', + }); + + if (!baseUrl || !apiKey) { + return []; + } + + const response = await fetch(`${baseUrl}/models`, { + headers: { + Authorization: `Bearer ${apiKey}`, + }, + }); + + const res = (await response.json()) as any; + + return res.data.map((model: any) => ({ + name: model.id, + label: model.id, + provider: this.name, + maxTokenAllowed: 8000, + })); + } catch (error) { + console.error('Error getting OpenAILike models:', error); + return []; + } + } + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { baseUrl, apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: 'OPENAI_LIKE_API_BASE_URL', + defaultApiTokenKey: 'OPENAI_LIKE_API_KEY', + }); + + if (!baseUrl || !apiKey) { + throw new Error(`Missing configuration for ${this.name} provider`); + } + + return getOpenAILikeModel(baseUrl, apiKey, model); + } +} diff --git a/app/lib/modules/llm/providers/openai.ts b/app/lib/modules/llm/providers/openai.ts new file mode 100644 index 000000000..9a5411893 --- /dev/null +++ b/app/lib/modules/llm/providers/openai.ts @@ -0,0 +1,48 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class OpenAIProvider extends BaseProvider { + name = 'OpenAI'; + getApiKeyLink = 'https://platform.openai.com/api-keys'; + + config = { + apiTokenKey: 'OPENAI_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'gpt-4o-mini', label: 'GPT-4o Mini', provider: 'OpenAI', maxTokenAllowed: 8000 }, + { name: 'gpt-4-turbo', label: 'GPT-4 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, + { name: 'gpt-4', label: 'GPT-4', provider: 'OpenAI', maxTokenAllowed: 8000 }, + { name: 'gpt-3.5-turbo', label: 'GPT-3.5 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'OPENAI_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openai = createOpenAI({ + apiKey, + }); + + return openai(model); + } +} diff --git a/app/lib/modules/llm/providers/perplexity.ts b/app/lib/modules/llm/providers/perplexity.ts new file mode 100644 index 000000000..eb58d7456 --- /dev/null +++ b/app/lib/modules/llm/providers/perplexity.ts @@ -0,0 +1,63 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class PerplexityProvider extends BaseProvider { + name = 'Perplexity'; + getApiKeyLink = 'https://www.perplexity.ai/settings/api'; + + config = { + apiTokenKey: 'PERPLEXITY_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { + name: 'llama-3.1-sonar-small-128k-online', + label: 'Sonar Small Online', + provider: 'Perplexity', + maxTokenAllowed: 8192, + }, + { + name: 'llama-3.1-sonar-large-128k-online', + label: 'Sonar Large Online', + provider: 'Perplexity', + maxTokenAllowed: 8192, + }, + { + name: 'llama-3.1-sonar-huge-128k-online', + label: 'Sonar Huge Online', + provider: 'Perplexity', + maxTokenAllowed: 8192, + }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'PERPLEXITY_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const perplexity = createOpenAI({ + baseURL: 'https://api.perplexity.ai/', + apiKey, + }); + + return perplexity(model); + } +} diff --git a/app/lib/modules/llm/providers/together.ts b/app/lib/modules/llm/providers/together.ts new file mode 100644 index 000000000..1a908b849 --- /dev/null +++ b/app/lib/modules/llm/providers/together.ts @@ -0,0 +1,100 @@ +import { BaseProvider, getOpenAILikeModel } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; + +export default class TogetherProvider extends BaseProvider { + name = 'Together'; + getApiKeyLink = 'https://api.together.xyz/settings/api-keys'; + + config = { + baseUrlKey: 'TOGETHER_API_BASE_URL', + apiTokenKey: 'TOGETHER_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { + name: 'Qwen/Qwen2.5-Coder-32B-Instruct', + label: 'Qwen/Qwen2.5-Coder-32B-Instruct', + provider: 'Together', + maxTokenAllowed: 8000, + }, + { + name: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', + label: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', + provider: 'Together', + maxTokenAllowed: 8000, + }, + { + name: 'mistralai/Mixtral-8x7B-Instruct-v0.1', + label: 'Mixtral 8x7B Instruct', + provider: 'Together', + maxTokenAllowed: 8192, + }, + ]; + + async getDynamicModels( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv: Record = {}, + ): Promise { + try { + const { baseUrl: fetchBaseUrl, apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: settings, + serverEnv, + defaultBaseUrlKey: 'TOGETHER_API_BASE_URL', + defaultApiTokenKey: 'TOGETHER_API_KEY', + }); + const baseUrl = fetchBaseUrl || 'https://api.together.xyz/v1'; + + if (!baseUrl || !apiKey) { + return []; + } + + // console.log({ baseUrl, apiKey }); + + const response = await fetch(`${baseUrl}/models`, { + headers: { + Authorization: `Bearer ${apiKey}`, + }, + }); + + const res = (await response.json()) as any; + const data = (res || []).filter((model: any) => model.type === 'chat'); + + return data.map((m: any) => ({ + name: m.id, + label: `${m.display_name} - in:$${m.pricing.input.toFixed(2)} out:$${m.pricing.output.toFixed(2)} - context ${Math.floor(m.context_length / 1000)}k`, + provider: this.name, + maxTokenAllowed: 8000, + })); + } catch (error: any) { + console.error('Error getting Together models:', error.message); + return []; + } + } + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { baseUrl, apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: 'TOGETHER_API_BASE_URL', + defaultApiTokenKey: 'TOGETHER_API_KEY', + }); + + if (!baseUrl || !apiKey) { + throw new Error(`Missing configuration for ${this.name} provider`); + } + + return getOpenAILikeModel(baseUrl, apiKey, model); + } +} diff --git a/app/lib/modules/llm/providers/xai.ts b/app/lib/modules/llm/providers/xai.ts new file mode 100644 index 000000000..032b01bfe --- /dev/null +++ b/app/lib/modules/llm/providers/xai.ts @@ -0,0 +1,47 @@ +import { BaseProvider } from '~/lib/modules/llm/base-provider'; +import type { ModelInfo } from '~/lib/modules/llm/types'; +import type { IProviderSetting } from '~/types/model'; +import type { LanguageModelV1 } from 'ai'; +import { createOpenAI } from '@ai-sdk/openai'; + +export default class XAIProvider extends BaseProvider { + name = 'xAI'; + getApiKeyLink = 'https://docs.x.ai/docs/quickstart#creating-an-api-key'; + + config = { + apiTokenKey: 'XAI_API_KEY', + }; + + staticModels: ModelInfo[] = [ + { name: 'grok-beta', label: 'xAI Grok Beta', provider: 'xAI', maxTokenAllowed: 8000 }, + { name: 'grok-2-1212', label: 'xAI Grok2 1212', provider: 'xAI', maxTokenAllowed: 8000 }, + ]; + + getModelInstance(options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }): LanguageModelV1 { + const { model, serverEnv, apiKeys, providerSettings } = options; + + const { apiKey } = this.getProviderBaseUrlAndKey({ + apiKeys, + providerSettings: providerSettings?.[this.name], + serverEnv: serverEnv as any, + defaultBaseUrlKey: '', + defaultApiTokenKey: 'XAI_API_KEY', + }); + + if (!apiKey) { + throw new Error(`Missing API key for ${this.name} provider`); + } + + const openai = createOpenAI({ + baseURL: 'https://api.x.ai/v1', + apiKey, + }); + + return openai(model); + } +} diff --git a/app/lib/modules/llm/registry.ts b/app/lib/modules/llm/registry.ts new file mode 100644 index 000000000..fb5a31f93 --- /dev/null +++ b/app/lib/modules/llm/registry.ts @@ -0,0 +1,33 @@ +import AnthropicProvider from './providers/anthropic'; +import CohereProvider from './providers/cohere'; +import DeepseekProvider from './providers/deepseek'; +import GoogleProvider from './providers/google'; +import GroqProvider from './providers/groq'; +import HuggingFaceProvider from './providers/huggingface'; +import LMStudioProvider from './providers/lmstudio'; +import MistralProvider from './providers/mistral'; +import OllamaProvider from './providers/ollama'; +import OpenRouterProvider from './providers/open-router'; +import OpenAILikeProvider from './providers/openai-like'; +import OpenAIProvider from './providers/openai'; +import PerplexityProvider from './providers/perplexity'; +import TogetherProvider from './providers/together'; +import XAIProvider from './providers/xai'; + +export { + AnthropicProvider, + CohereProvider, + DeepseekProvider, + GoogleProvider, + GroqProvider, + HuggingFaceProvider, + MistralProvider, + OllamaProvider, + OpenAIProvider, + OpenRouterProvider, + OpenAILikeProvider, + PerplexityProvider, + XAIProvider, + TogetherProvider, + LMStudioProvider, +}; diff --git a/app/lib/modules/llm/types.ts b/app/lib/modules/llm/types.ts new file mode 100644 index 000000000..337b110c7 --- /dev/null +++ b/app/lib/modules/llm/types.ts @@ -0,0 +1,32 @@ +import type { LanguageModelV1 } from 'ai'; +import type { IProviderSetting } from '~/types/model'; + +export interface ModelInfo { + name: string; + label: string; + provider: string; + maxTokenAllowed: number; +} + +export interface ProviderInfo { + name: string; + staticModels: ModelInfo[]; + getDynamicModels?: ( + apiKeys?: Record, + settings?: IProviderSetting, + serverEnv?: Record, + ) => Promise; + getModelInstance: (options: { + model: string; + serverEnv: Env; + apiKeys?: Record; + providerSettings?: Record; + }) => LanguageModelV1; + getApiKeyLink?: string; + labelForGetApiKey?: string; + icon?: string; +} +export interface ProviderConfig { + baseUrlKey?: string; + apiTokenKey?: string; +} diff --git a/app/types/model.ts b/app/types/model.ts index b449363b3..d16b10ae4 100644 --- a/app/types/model.ts +++ b/app/types/model.ts @@ -1,4 +1,4 @@ -import type { ModelInfo } from '~/utils/types'; +import type { ModelInfo } from '~/lib/modules/llm/types'; export type ProviderInfo = { staticModels: ModelInfo[]; diff --git a/app/utils/constants.ts b/app/utils/constants.ts index dca3320b8..64e08a739 100644 --- a/app/utils/constants.ts +++ b/app/utils/constants.ts @@ -1,8 +1,7 @@ -import Cookies from 'js-cookie'; -import type { ModelInfo, OllamaApiResponse, OllamaModel } from './types'; -import type { ProviderInfo, IProviderSetting } from '~/types/model'; -import { createScopedLogger } from './logger'; -import { logStore } from '~/lib/stores/logs'; +import type { IProviderSetting } from '~/types/model'; + +import { LLMManager } from '~/lib/modules/llm/manager'; +import type { ModelInfo } from '~/lib/modules/llm/types'; export const WORK_DIR_NAME = 'project'; export const WORK_DIR = `/home/${WORK_DIR_NAME}`; @@ -12,619 +11,334 @@ export const PROVIDER_REGEX = /\[Provider: (.*?)\]\n\n/; export const DEFAULT_MODEL = 'claude-3-5-sonnet-latest'; export const PROMPT_COOKIE_KEY = 'cachedPrompt'; -const logger = createScopedLogger('Constants'); - -const PROVIDER_LIST: ProviderInfo[] = [ - { - name: 'Anthropic', - staticModels: [ - { - name: 'claude-3-5-sonnet-latest', - label: 'Claude 3.5 Sonnet (new)', - provider: 'Anthropic', - maxTokenAllowed: 8000, - }, - { - name: 'claude-3-5-sonnet-20240620', - label: 'Claude 3.5 Sonnet (old)', - provider: 'Anthropic', - maxTokenAllowed: 8000, - }, - { - name: 'claude-3-5-haiku-latest', - label: 'Claude 3.5 Haiku (new)', - provider: 'Anthropic', - maxTokenAllowed: 8000, - }, - { name: 'claude-3-opus-latest', label: 'Claude 3 Opus', provider: 'Anthropic', maxTokenAllowed: 8000 }, - { name: 'claude-3-sonnet-20240229', label: 'Claude 3 Sonnet', provider: 'Anthropic', maxTokenAllowed: 8000 }, - { name: 'claude-3-haiku-20240307', label: 'Claude 3 Haiku', provider: 'Anthropic', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://console.anthropic.com/settings/keys', - }, - { - name: 'Ollama', - staticModels: [], - getDynamicModels: getOllamaModels, - getApiKeyLink: 'https://ollama.com/download', - labelForGetApiKey: 'Download Ollama', - icon: 'i-ph:cloud-arrow-down', - }, - { - name: 'OpenAILike', - staticModels: [], - getDynamicModels: getOpenAILikeModels, - }, - { - name: 'Cohere', - staticModels: [ - { name: 'command-r-plus-08-2024', label: 'Command R plus Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-r-08-2024', label: 'Command R Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-r-plus', label: 'Command R plus', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-r', label: 'Command R', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command', label: 'Command', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-nightly', label: 'Command Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-light', label: 'Command Light', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'command-light-nightly', label: 'Command Light Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'c4ai-aya-expanse-8b', label: 'c4AI Aya Expanse 8b', provider: 'Cohere', maxTokenAllowed: 4096 }, - { name: 'c4ai-aya-expanse-32b', label: 'c4AI Aya Expanse 32b', provider: 'Cohere', maxTokenAllowed: 4096 }, - ], - getApiKeyLink: 'https://dashboard.cohere.com/api-keys', - }, - { - name: 'OpenRouter', - staticModels: [ - { name: 'gpt-4o', label: 'GPT-4o', provider: 'OpenAI', maxTokenAllowed: 8000 }, - { - name: 'anthropic/claude-3.5-sonnet', - label: 'Anthropic: Claude 3.5 Sonnet (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { - name: 'anthropic/claude-3-haiku', - label: 'Anthropic: Claude 3 Haiku (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { - name: 'deepseek/deepseek-coder', - label: 'Deepseek-Coder V2 236B (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { - name: 'google/gemini-flash-1.5', - label: 'Google Gemini Flash 1.5 (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { - name: 'google/gemini-pro-1.5', - label: 'Google Gemini Pro 1.5 (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { name: 'x-ai/grok-beta', label: 'xAI Grok Beta (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 8000 }, - { - name: 'mistralai/mistral-nemo', - label: 'OpenRouter Mistral Nemo (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { - name: 'qwen/qwen-110b-chat', - label: 'OpenRouter Qwen 110b Chat (OpenRouter)', - provider: 'OpenRouter', - maxTokenAllowed: 8000, - }, - { name: 'cohere/command', label: 'Cohere Command (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 4096 }, - ], - getDynamicModels: getOpenRouterModels, - getApiKeyLink: 'https://openrouter.ai/settings/keys', - }, - { - name: 'Google', - staticModels: [ - { name: 'gemini-1.5-flash-latest', label: 'Gemini 1.5 Flash', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-2.0-flash-exp', label: 'Gemini 2.0 Flash', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-1.5-flash-002', label: 'Gemini 1.5 Flash-002', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-1.5-flash-8b', label: 'Gemini 1.5 Flash-8b', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-1.5-pro-latest', label: 'Gemini 1.5 Pro', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-1.5-pro-002', label: 'Gemini 1.5 Pro-002', provider: 'Google', maxTokenAllowed: 8192 }, - { name: 'gemini-exp-1206', label: 'Gemini exp-1206', provider: 'Google', maxTokenAllowed: 8192 }, - ], - getApiKeyLink: 'https://aistudio.google.com/app/apikey', - }, - { - name: 'Groq', - staticModels: [ - { name: 'llama-3.1-8b-instant', label: 'Llama 3.1 8b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - { name: 'llama-3.2-11b-vision-preview', label: 'Llama 3.2 11b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - { name: 'llama-3.2-90b-vision-preview', label: 'Llama 3.2 90b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - { name: 'llama-3.2-3b-preview', label: 'Llama 3.2 3b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - { name: 'llama-3.2-1b-preview', label: 'Llama 3.2 1b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - { name: 'llama-3.3-70b-versatile', label: 'Llama 3.3 70b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://console.groq.com/keys', - }, - { - name: 'HuggingFace', - staticModels: [ - { - name: 'Qwen/Qwen2.5-Coder-32B-Instruct', - label: 'Qwen2.5-Coder-32B-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: '01-ai/Yi-1.5-34B-Chat', - label: 'Yi-1.5-34B-Chat (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'codellama/CodeLlama-34b-Instruct-hf', - label: 'CodeLlama-34b-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'NousResearch/Hermes-3-Llama-3.1-8B', - label: 'Hermes-3-Llama-3.1-8B (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'Qwen/Qwen2.5-Coder-32B-Instruct', - label: 'Qwen2.5-Coder-32B-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'Qwen/Qwen2.5-72B-Instruct', - label: 'Qwen2.5-72B-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'meta-llama/Llama-3.1-70B-Instruct', - label: 'Llama-3.1-70B-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'meta-llama/Llama-3.1-405B', - label: 'Llama-3.1-405B (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: '01-ai/Yi-1.5-34B-Chat', - label: 'Yi-1.5-34B-Chat (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'codellama/CodeLlama-34b-Instruct-hf', - label: 'CodeLlama-34b-Instruct (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - { - name: 'NousResearch/Hermes-3-Llama-3.1-8B', - label: 'Hermes-3-Llama-3.1-8B (HuggingFace)', - provider: 'HuggingFace', - maxTokenAllowed: 8000, - }, - ], - getApiKeyLink: 'https://huggingface.co/settings/tokens', - }, - { - name: 'OpenAI', - staticModels: [ - { name: 'gpt-4o-mini', label: 'GPT-4o Mini', provider: 'OpenAI', maxTokenAllowed: 8000 }, - { name: 'gpt-4-turbo', label: 'GPT-4 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, - { name: 'gpt-4', label: 'GPT-4', provider: 'OpenAI', maxTokenAllowed: 8000 }, - { name: 'gpt-3.5-turbo', label: 'GPT-3.5 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://platform.openai.com/api-keys', - }, - { - name: 'xAI', - staticModels: [ - { name: 'grok-beta', label: 'xAI Grok Beta', provider: 'xAI', maxTokenAllowed: 8000 }, - { name: 'grok-2-1212', label: 'xAI Grok2 1212', provider: 'xAI', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://docs.x.ai/docs/quickstart#creating-an-api-key', - }, - { - name: 'Deepseek', - staticModels: [ - { name: 'deepseek-coder', label: 'Deepseek-Coder', provider: 'Deepseek', maxTokenAllowed: 8000 }, - { name: 'deepseek-chat', label: 'Deepseek-Chat', provider: 'Deepseek', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://platform.deepseek.com/apiKeys', - }, - { - name: 'Mistral', - staticModels: [ - { name: 'open-mistral-7b', label: 'Mistral 7B', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'open-mixtral-8x7b', label: 'Mistral 8x7B', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'open-mixtral-8x22b', label: 'Mistral 8x22B', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'open-codestral-mamba', label: 'Codestral Mamba', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'open-mistral-nemo', label: 'Mistral Nemo', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'ministral-8b-latest', label: 'Mistral 8B', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'mistral-small-latest', label: 'Mistral Small', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'codestral-latest', label: 'Codestral', provider: 'Mistral', maxTokenAllowed: 8000 }, - { name: 'mistral-large-latest', label: 'Mistral Large Latest', provider: 'Mistral', maxTokenAllowed: 8000 }, - ], - getApiKeyLink: 'https://console.mistral.ai/api-keys/', - }, - { - name: 'LMStudio', - staticModels: [], - getDynamicModels: getLMStudioModels, - getApiKeyLink: 'https://lmstudio.ai/', - labelForGetApiKey: 'Get LMStudio', - icon: 'i-ph:cloud-arrow-down', - }, - { - name: 'Together', - getDynamicModels: getTogetherModels, - staticModels: [ - { - name: 'Qwen/Qwen2.5-Coder-32B-Instruct', - label: 'Qwen/Qwen2.5-Coder-32B-Instruct', - provider: 'Together', - maxTokenAllowed: 8000, - }, - { - name: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', - label: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', - provider: 'Together', - maxTokenAllowed: 8000, - }, - - { - name: 'mistralai/Mixtral-8x7B-Instruct-v0.1', - label: 'Mixtral 8x7B Instruct', - provider: 'Together', - maxTokenAllowed: 8192, - }, - ], - getApiKeyLink: 'https://api.together.xyz/settings/api-keys', - }, - { - name: 'Perplexity', - staticModels: [ - { - name: 'llama-3.1-sonar-small-128k-online', - label: 'Sonar Small Online', - provider: 'Perplexity', - maxTokenAllowed: 8192, - }, - { - name: 'llama-3.1-sonar-large-128k-online', - label: 'Sonar Large Online', - provider: 'Perplexity', - maxTokenAllowed: 8192, - }, - { - name: 'llama-3.1-sonar-huge-128k-online', - label: 'Sonar Huge Online', - provider: 'Perplexity', - maxTokenAllowed: 8192, - }, - ], - getApiKeyLink: 'https://www.perplexity.ai/settings/api', - }, -]; - -export const providerBaseUrlEnvKeys: Record = { - Anthropic: { - apiTokenKey: 'ANTHROPIC_API_KEY', - }, - OpenAI: { - apiTokenKey: 'OPENAI_API_KEY', - }, - Groq: { - apiTokenKey: 'GROQ_API_KEY', - }, - HuggingFace: { - apiTokenKey: 'HuggingFace_API_KEY', - }, - OpenRouter: { - apiTokenKey: 'OPEN_ROUTER_API_KEY', - }, - Google: { - apiTokenKey: 'GOOGLE_GENERATIVE_AI_API_KEY', - }, - OpenAILike: { - baseUrlKey: 'OPENAI_LIKE_API_BASE_URL', - apiTokenKey: 'OPENAI_LIKE_API_KEY', - }, - Together: { - baseUrlKey: 'TOGETHER_API_BASE_URL', - apiTokenKey: 'TOGETHER_API_KEY', - }, - Deepseek: { - apiTokenKey: 'DEEPSEEK_API_KEY', - }, - Mistral: { - apiTokenKey: 'MISTRAL_API_KEY', - }, - LMStudio: { - baseUrlKey: 'LMSTUDIO_API_BASE_URL', - }, - xAI: { - apiTokenKey: 'XAI_API_KEY', - }, - Cohere: { - apiTokenKey: 'COHERE_API_KEY', - }, - Perplexity: { - apiTokenKey: 'PERPLEXITY_API_KEY', - }, - Ollama: { - baseUrlKey: 'OLLAMA_API_BASE_URL', - }, -}; - -export const getProviderBaseUrlAndKey = (options: { - provider: string; - apiKeys?: Record; - providerSettings?: IProviderSetting; - serverEnv?: Record; - defaultBaseUrlKey: string; - defaultApiTokenKey: string; -}) => { - const { provider, apiKeys, providerSettings, serverEnv, defaultBaseUrlKey, defaultApiTokenKey } = options; - let settingsBaseUrl = providerSettings?.baseUrl; - - if (settingsBaseUrl && settingsBaseUrl.length == 0) { - settingsBaseUrl = undefined; - } - - const baseUrlKey = providerBaseUrlEnvKeys[provider]?.baseUrlKey || defaultBaseUrlKey; - const baseUrl = settingsBaseUrl || serverEnv?.[baseUrlKey] || process.env[baseUrlKey] || import.meta.env[baseUrlKey]; - - const apiTokenKey = providerBaseUrlEnvKeys[provider]?.apiTokenKey || defaultApiTokenKey; - const apiKey = - apiKeys?.[provider] || serverEnv?.[apiTokenKey] || process.env[apiTokenKey] || import.meta.env[apiTokenKey]; - - return { - baseUrl, - apiKey, +const llmManager = LLMManager.getInstance(import.meta.env); + +export const PROVIDER_LIST = llmManager.getAllProviders(); +export const DEFAULT_PROVIDER = llmManager.getDefaultProvider(); + +let MODEL_LIST = llmManager.getModelList(); + +/* + *const PROVIDER_LIST_OLD: ProviderInfo[] = [ + * { + * name: 'Anthropic', + * staticModels: [ + * { + * name: 'claude-3-5-sonnet-latest', + * label: 'Claude 3.5 Sonnet (new)', + * provider: 'Anthropic', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'claude-3-5-sonnet-20240620', + * label: 'Claude 3.5 Sonnet (old)', + * provider: 'Anthropic', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'claude-3-5-haiku-latest', + * label: 'Claude 3.5 Haiku (new)', + * provider: 'Anthropic', + * maxTokenAllowed: 8000, + * }, + * { name: 'claude-3-opus-latest', label: 'Claude 3 Opus', provider: 'Anthropic', maxTokenAllowed: 8000 }, + * { name: 'claude-3-sonnet-20240229', label: 'Claude 3 Sonnet', provider: 'Anthropic', maxTokenAllowed: 8000 }, + * { name: 'claude-3-haiku-20240307', label: 'Claude 3 Haiku', provider: 'Anthropic', maxTokenAllowed: 8000 }, + * ], + * getApiKeyLink: 'https://console.anthropic.com/settings/keys', + * }, + * { + * name: 'Ollama', + * staticModels: [], + * getDynamicModels: getOllamaModels, + * getApiKeyLink: 'https://ollama.com/download', + * labelForGetApiKey: 'Download Ollama', + * icon: 'i-ph:cloud-arrow-down', + * }, + * { + * name: 'OpenAILike', + * staticModels: [], + * getDynamicModels: getOpenAILikeModels, + * }, + * { + * name: 'Cohere', + * staticModels: [ + * { name: 'command-r-plus-08-2024', label: 'Command R plus Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-r-08-2024', label: 'Command R Latest', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-r-plus', label: 'Command R plus', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-r', label: 'Command R', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command', label: 'Command', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-nightly', label: 'Command Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-light', label: 'Command Light', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'command-light-nightly', label: 'Command Light Nightly', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'c4ai-aya-expanse-8b', label: 'c4AI Aya Expanse 8b', provider: 'Cohere', maxTokenAllowed: 4096 }, + * { name: 'c4ai-aya-expanse-32b', label: 'c4AI Aya Expanse 32b', provider: 'Cohere', maxTokenAllowed: 4096 }, + * ], + * getApiKeyLink: 'https://dashboard.cohere.com/api-keys', + * }, + * { + * name: 'OpenRouter', + * staticModels: [ + * { name: 'gpt-4o', label: 'GPT-4o', provider: 'OpenAI', maxTokenAllowed: 8000 }, + * { + * name: 'anthropic/claude-3.5-sonnet', + * label: 'Anthropic: Claude 3.5 Sonnet (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'anthropic/claude-3-haiku', + * label: 'Anthropic: Claude 3 Haiku (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'deepseek/deepseek-coder', + * label: 'Deepseek-Coder V2 236B (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'google/gemini-flash-1.5', + * label: 'Google Gemini Flash 1.5 (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'google/gemini-pro-1.5', + * label: 'Google Gemini Pro 1.5 (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { name: 'x-ai/grok-beta', label: 'xAI Grok Beta (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 8000 }, + * { + * name: 'mistralai/mistral-nemo', + * label: 'OpenRouter Mistral Nemo (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'qwen/qwen-110b-chat', + * label: 'OpenRouter Qwen 110b Chat (OpenRouter)', + * provider: 'OpenRouter', + * maxTokenAllowed: 8000, + * }, + * { name: 'cohere/command', label: 'Cohere Command (OpenRouter)', provider: 'OpenRouter', maxTokenAllowed: 4096 }, + * ], + * getDynamicModels: getOpenRouterModels, + * getApiKeyLink: 'https://openrouter.ai/settings/keys', + * }, + * { + * name: 'Google', + * staticModels: [ + * { name: 'gemini-1.5-flash-latest', label: 'Gemini 1.5 Flash', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-2.0-flash-exp', label: 'Gemini 2.0 Flash', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-1.5-flash-002', label: 'Gemini 1.5 Flash-002', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-1.5-flash-8b', label: 'Gemini 1.5 Flash-8b', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-1.5-pro-latest', label: 'Gemini 1.5 Pro', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-1.5-pro-002', label: 'Gemini 1.5 Pro-002', provider: 'Google', maxTokenAllowed: 8192 }, + * { name: 'gemini-exp-1206', label: 'Gemini exp-1206', provider: 'Google', maxTokenAllowed: 8192 }, + * ], + * getApiKeyLink: 'https://aistudio.google.com/app/apikey', + * }, + * { + * name: 'Groq', + * staticModels: [ + * { name: 'llama-3.1-8b-instant', label: 'Llama 3.1 8b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * { name: 'llama-3.2-11b-vision-preview', label: 'Llama 3.2 11b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * { name: 'llama-3.2-90b-vision-preview', label: 'Llama 3.2 90b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * { name: 'llama-3.2-3b-preview', label: 'Llama 3.2 3b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * { name: 'llama-3.2-1b-preview', label: 'Llama 3.2 1b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * { name: 'llama-3.3-70b-versatile', label: 'Llama 3.3 70b (Groq)', provider: 'Groq', maxTokenAllowed: 8000 }, + * ], + * getApiKeyLink: 'https://console.groq.com/keys', + * }, + * { + * name: 'HuggingFace', + * staticModels: [ + * { + * name: 'Qwen/Qwen2.5-Coder-32B-Instruct', + * label: 'Qwen2.5-Coder-32B-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: '01-ai/Yi-1.5-34B-Chat', + * label: 'Yi-1.5-34B-Chat (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'codellama/CodeLlama-34b-Instruct-hf', + * label: 'CodeLlama-34b-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'NousResearch/Hermes-3-Llama-3.1-8B', + * label: 'Hermes-3-Llama-3.1-8B (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'Qwen/Qwen2.5-Coder-32B-Instruct', + * label: 'Qwen2.5-Coder-32B-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'Qwen/Qwen2.5-72B-Instruct', + * label: 'Qwen2.5-72B-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'meta-llama/Llama-3.1-70B-Instruct', + * label: 'Llama-3.1-70B-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'meta-llama/Llama-3.1-405B', + * label: 'Llama-3.1-405B (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: '01-ai/Yi-1.5-34B-Chat', + * label: 'Yi-1.5-34B-Chat (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'codellama/CodeLlama-34b-Instruct-hf', + * label: 'CodeLlama-34b-Instruct (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'NousResearch/Hermes-3-Llama-3.1-8B', + * label: 'Hermes-3-Llama-3.1-8B (HuggingFace)', + * provider: 'HuggingFace', + * maxTokenAllowed: 8000, + * }, + * ], + * getApiKeyLink: 'https://huggingface.co/settings/tokens', + * }, + * { + * name: 'OpenAI', + * staticModels: [ + * { name: 'gpt-4o-mini', label: 'GPT-4o Mini', provider: 'OpenAI', maxTokenAllowed: 8000 }, + * { name: 'gpt-4-turbo', label: 'GPT-4 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, + * { name: 'gpt-4', label: 'GPT-4', provider: 'OpenAI', maxTokenAllowed: 8000 }, + * { name: 'gpt-3.5-turbo', label: 'GPT-3.5 Turbo', provider: 'OpenAI', maxTokenAllowed: 8000 }, + * ], + * getApiKeyLink: 'https://platform.openai.com/api-keys', + * }, + * { + * name: 'xAI', + * staticModels: [{ name: 'grok-beta', label: 'xAI Grok Beta', provider: 'xAI', maxTokenAllowed: 8000 }], + * getApiKeyLink: 'https://docs.x.ai/docs/quickstart#creating-an-api-key', + * }, + * { + * name: 'Deepseek', + * staticModels: [ + * { name: 'deepseek-coder', label: 'Deepseek-Coder', provider: 'Deepseek', maxTokenAllowed: 8000 }, + * { name: 'deepseek-chat', label: 'Deepseek-Chat', provider: 'Deepseek', maxTokenAllowed: 8000 }, + * ], + * getApiKeyLink: 'https://platform.deepseek.com/apiKeys', + * }, + * { + * name: 'Mistral', + * staticModels: [ + * { name: 'open-mistral-7b', label: 'Mistral 7B', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'open-mixtral-8x7b', label: 'Mistral 8x7B', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'open-mixtral-8x22b', label: 'Mistral 8x22B', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'open-codestral-mamba', label: 'Codestral Mamba', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'open-mistral-nemo', label: 'Mistral Nemo', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'ministral-8b-latest', label: 'Mistral 8B', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'mistral-small-latest', label: 'Mistral Small', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'codestral-latest', label: 'Codestral', provider: 'Mistral', maxTokenAllowed: 8000 }, + * { name: 'mistral-large-latest', label: 'Mistral Large Latest', provider: 'Mistral', maxTokenAllowed: 8000 }, + * ], + * getApiKeyLink: 'https://console.mistral.ai/api-keys/', + * }, + * { + * name: 'LMStudio', + * staticModels: [], + * getDynamicModels: getLMStudioModels, + * getApiKeyLink: 'https://lmstudio.ai/', + * labelForGetApiKey: 'Get LMStudio', + * icon: 'i-ph:cloud-arrow-down', + * }, + * { + * name: 'Together', + * getDynamicModels: getTogetherModels, + * staticModels: [ + * { + * name: 'Qwen/Qwen2.5-Coder-32B-Instruct', + * label: 'Qwen/Qwen2.5-Coder-32B-Instruct', + * provider: 'Together', + * maxTokenAllowed: 8000, + * }, + * { + * name: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', + * label: 'meta-llama/Llama-3.2-90B-Vision-Instruct-Turbo', + * provider: 'Together', + * maxTokenAllowed: 8000, + * }, + * + * { + * name: 'mistralai/Mixtral-8x7B-Instruct-v0.1', + * label: 'Mixtral 8x7B Instruct', + * provider: 'Together', + * maxTokenAllowed: 8192, + * }, + * ], + * getApiKeyLink: 'https://api.together.xyz/settings/api-keys', + * }, + * { + * name: 'Perplexity', + * staticModels: [ + * { + * name: 'llama-3.1-sonar-small-128k-online', + * label: 'Sonar Small Online', + * provider: 'Perplexity', + * maxTokenAllowed: 8192, + * }, + * { + * name: 'llama-3.1-sonar-large-128k-online', + * label: 'Sonar Large Online', + * provider: 'Perplexity', + * maxTokenAllowed: 8192, + * }, + * { + * name: 'llama-3.1-sonar-huge-128k-online', + * label: 'Sonar Huge Online', + * provider: 'Perplexity', + * maxTokenAllowed: 8192, + * }, + * ], + * getApiKeyLink: 'https://www.perplexity.ai/settings/api', + * }, + *]; + */ + +const providerBaseUrlEnvKeys: Record = {}; +PROVIDER_LIST.forEach((provider) => { + providerBaseUrlEnvKeys[provider.name] = { + baseUrlKey: provider.config.baseUrlKey, + apiTokenKey: provider.config.apiTokenKey, }; -}; -export const DEFAULT_PROVIDER = PROVIDER_LIST[0]; - -const staticModels: ModelInfo[] = PROVIDER_LIST.map((p) => p.staticModels).flat(); - -export let MODEL_LIST: ModelInfo[] = [...staticModels]; +}); +// Export the getModelList function using the manager export async function getModelList(options: { apiKeys?: Record; providerSettings?: Record; serverEnv?: Record; }) { - const { apiKeys, providerSettings, serverEnv } = options; - - MODEL_LIST = [ - ...( - await Promise.all( - PROVIDER_LIST.filter( - (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(p.name, apiKeys, providerSettings?.[p.name], serverEnv)), - ) - ).flat(), - ...staticModels, - ]; - - return MODEL_LIST; -} - -async function getTogetherModels( - name: string, - apiKeys?: Record, - settings?: IProviderSetting, - serverEnv: Record = {}, -): Promise { - try { - const { baseUrl, apiKey } = getProviderBaseUrlAndKey({ - provider: name, - apiKeys, - providerSettings: settings, - serverEnv, - defaultBaseUrlKey: 'TOGETHER_API_BASE_URL', - defaultApiTokenKey: 'TOGETHER_API_KEY', - }); - - if (!baseUrl) { - return []; - } - - if (!apiKey) { - return []; - } - - const response = await fetch(`${baseUrl}/models`, { - headers: { - Authorization: `Bearer ${apiKey}`, - }, - }); - const res = (await response.json()) as any; - const data: any[] = (res || []).filter((model: any) => model.type == 'chat'); - - return data.map((m: any) => ({ - name: m.id, - label: `${m.display_name} - in:$${m.pricing.input.toFixed( - 2, - )} out:$${m.pricing.output.toFixed(2)} - context ${Math.floor(m.context_length / 1000)}k`, - provider: name, - maxTokenAllowed: 8000, - })); - } catch (e) { - console.error('Error getting OpenAILike models:', e); - return []; - } -} - -const getOllamaBaseUrl = (name: string, settings?: IProviderSetting, serverEnv: Record = {}) => { - const { baseUrl } = getProviderBaseUrlAndKey({ - provider: name, - providerSettings: settings, - serverEnv, - defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', - defaultApiTokenKey: '', - }); - - // Check if we're in the browser - if (typeof window !== 'undefined') { - // Frontend always uses localhost - return baseUrl; - } - - // Backend: Check if we're running in Docker - const isDocker = process.env.RUNNING_IN_DOCKER === 'true'; - - return isDocker ? baseUrl.replace('localhost', 'host.docker.internal') : baseUrl; -}; - -async function getOllamaModels( - name: string, - _apiKeys?: Record, - settings?: IProviderSetting, - serverEnv: Record = {}, -): Promise { - try { - const baseUrl = getOllamaBaseUrl(name, settings, serverEnv); - - if (!baseUrl) { - return []; - } - - const response = await fetch(`${baseUrl}/api/tags`); - const data = (await response.json()) as OllamaApiResponse; - - return data.models.map((model: OllamaModel) => ({ - name: model.name, - label: `${model.name} (${model.details.parameter_size})`, - provider: 'Ollama', - maxTokenAllowed: 8000, - })); - } catch (e: any) { - logStore.logError('Failed to get Ollama models', e, { baseUrl: settings?.baseUrl }); - logger.warn('Failed to get Ollama models: ', e.message || ''); - - return []; - } -} - -async function getOpenAILikeModels( - name: string, - apiKeys?: Record, - settings?: IProviderSetting, - serverEnv: Record = {}, -): Promise { - try { - const { baseUrl, apiKey } = getProviderBaseUrlAndKey({ - provider: name, - apiKeys, - providerSettings: settings, - serverEnv, - defaultBaseUrlKey: 'OPENAI_LIKE_API_BASE_URL', - defaultApiTokenKey: 'OPENAI_LIKE_API_KEY', - }); - - if (!baseUrl) { - return []; - } - - const response = await fetch(`${baseUrl}/models`, { - headers: { - Authorization: `Bearer ${apiKey}`, - }, - }); - const res = (await response.json()) as any; - - return res.data.map((model: any) => ({ - name: model.id, - label: model.id, - provider: name, - })); - } catch (e) { - console.error('Error getting OpenAILike models:', e); - return []; - } -} - -type OpenRouterModelsResponse = { - data: { - name: string; - id: string; - context_length: number; - pricing: { - prompt: number; - completion: number; - }; - }[]; -}; - -async function getOpenRouterModels(): Promise { - const data: OpenRouterModelsResponse = await ( - await fetch('https://openrouter.ai/api/v1/models', { - headers: { - 'Content-Type': 'application/json', - }, - }) - ).json(); - - return data.data - .sort((a, b) => a.name.localeCompare(b.name)) - .map((m) => ({ - name: m.id, - label: `${m.name} - in:$${(m.pricing.prompt * 1_000_000).toFixed( - 2, - )} out:$${(m.pricing.completion * 1_000_000).toFixed(2)} - context ${Math.floor(m.context_length / 1000)}k`, - provider: 'OpenRouter', - maxTokenAllowed: 8000, - })); -} - -async function getLMStudioModels( - name: string, - apiKeys?: Record, - settings?: IProviderSetting, - serverEnv: Record = {}, -): Promise { - try { - const { baseUrl } = getProviderBaseUrlAndKey({ - provider: name, - apiKeys, - providerSettings: settings, - serverEnv, - defaultBaseUrlKey: 'LMSTUDIO_API_BASE_URL', - defaultApiTokenKey: '', - }); - - if (!baseUrl) { - return []; - } - - const response = await fetch(`${baseUrl}/v1/models`); - const data = (await response.json()) as any; - - return data.data.map((model: any) => ({ - name: model.id, - label: model.id, - provider: 'LMStudio', - })); - } catch (e: any) { - logStore.logError('Failed to get LMStudio models', e, { baseUrl: settings?.baseUrl }); - return []; - } + return await llmManager.updateModelList(options); } async function initializeModelList(options: { @@ -632,46 +346,16 @@ async function initializeModelList(options: { providerSettings?: Record; apiKeys?: Record; }): Promise { - const { providerSettings, apiKeys: providedApiKeys, env } = options; - let apiKeys: Record = providedApiKeys || {}; - - if (!providedApiKeys) { - try { - const storedApiKeys = Cookies.get('apiKeys'); - - if (storedApiKeys) { - const parsedKeys = JSON.parse(storedApiKeys); - - if (typeof parsedKeys === 'object' && parsedKeys !== null) { - apiKeys = parsedKeys; - } - } - } catch (error: any) { - logStore.logError('Failed to fetch API keys from cookies', error); - logger.warn(`Failed to fetch apikeys from cookies: ${error?.message}`); - } - } - - MODEL_LIST = [ - ...( - await Promise.all( - PROVIDER_LIST.filter( - (p): p is ProviderInfo & { getDynamicModels: () => Promise } => !!p.getDynamicModels, - ).map((p) => p.getDynamicModels(p.name, apiKeys, providerSettings?.[p.name], env)), - ) - ).flat(), - ...staticModels, - ]; + const { providerSettings, apiKeys, env } = options; + const list = await getModelList({ + apiKeys, + providerSettings, + serverEnv: env, + }); + MODEL_LIST = list || MODEL_LIST; - return MODEL_LIST; + return list; } // initializeModelList({}) -export { - getOllamaModels, - getOpenAILikeModels, - getLMStudioModels, - initializeModelList, - getOpenRouterModels, - PROVIDER_LIST, -}; +export { initializeModelList, providerBaseUrlEnvKeys, MODEL_LIST }; diff --git a/app/utils/types.ts b/app/utils/types.ts index 1fa253fa4..5f8bc392b 100644 --- a/app/utils/types.ts +++ b/app/utils/types.ts @@ -19,10 +19,3 @@ export interface OllamaModel { export interface OllamaApiResponse { models: OllamaModel[]; } - -export interface ModelInfo { - name: string; - label: string; - provider: string; - maxTokenAllowed: number; -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efec89864..da73295af 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11957,4 +11957,4 @@ snapshots: zod@3.23.8: {} - zwitch@2.0.4: {} + zwitch@2.0.4: {} \ No newline at end of file diff --git a/worker-configuration.d.ts b/worker-configuration.d.ts index ed2afcac3..fb5157da6 100644 --- a/worker-configuration.d.ts +++ b/worker-configuration.d.ts @@ -1,4 +1,5 @@ interface Env { + DEFAULT_NUM_CTX:Settings; ANTHROPIC_API_KEY: string; OPENAI_API_KEY: string; GROQ_API_KEY: string; From d8943f94749e669c591ea3ebc364bb4970a9be0f Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sat, 21 Dec 2024 23:31:19 +0530 Subject: [PATCH 40/41] fix: provider menu dropdown fix (ghost providers) (#862) --- app/lib/hooks/useSettings.tsx | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/app/lib/hooks/useSettings.tsx b/app/lib/hooks/useSettings.tsx index 68d8f6bb8..3f5515102 100644 --- a/app/lib/hooks/useSettings.tsx +++ b/app/lib/hooks/useSettings.tsx @@ -60,15 +60,18 @@ export function useSettings() { if (savedProviders) { try { const parsedProviders: Record = JSON.parse(savedProviders); - Object.keys(parsedProviders).forEach((provider) => { - const currentProvider = providers[provider]; - providersStore.setKey(provider, { - ...currentProvider, - settings: { - ...parsedProviders[provider], - enabled: parsedProviders[provider].enabled ?? true, - }, - }); + Object.keys(providers).forEach((provider) => { + const currentProviderSettings = parsedProviders[provider]; + + if (currentProviderSettings) { + providersStore.setKey(provider, { + ...providers[provider], + settings: { + ...currentProviderSettings, + enabled: currentProviderSettings.enabled ?? true, + }, + }); + } }); } catch (error) { console.error('Failed to parse providers from cookies:', error); From 8b58c7a0fbe9a2fe053dcfa610c0b7d5ae49e175 Mon Sep 17 00:00:00 2001 From: Anirban Kar Date: Sun, 22 Dec 2024 01:25:48 +0530 Subject: [PATCH 41/41] fix: ollama provider module base url hotfix for docker (#863) * fix: ollama base url hotfix * cleanup logic --- app/lib/modules/llm/providers/ollama.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/lib/modules/llm/providers/ollama.ts b/app/lib/modules/llm/providers/ollama.ts index ebe6b1b1a..2c99be3cf 100644 --- a/app/lib/modules/llm/providers/ollama.ts +++ b/app/lib/modules/llm/providers/ollama.ts @@ -81,13 +81,20 @@ export default class OllamaProvider extends BaseProvider { providerSettings?: Record; }) => LanguageModelV1 = (options) => { const { apiKeys, providerSettings, serverEnv, model } = options; - const { baseUrl } = this.getProviderBaseUrlAndKey({ + let { baseUrl } = this.getProviderBaseUrlAndKey({ apiKeys, providerSettings, serverEnv: serverEnv as any, defaultBaseUrlKey: 'OLLAMA_API_BASE_URL', defaultApiTokenKey: '', }); + + // Backend: Check if we're running in Docker + const isDocker = process.env.RUNNING_IN_DOCKER === 'true'; + + baseUrl = isDocker ? baseUrl.replace('localhost', 'host.docker.internal') : baseUrl; + baseUrl = isDocker ? baseUrl.replace('127.0.0.1', 'host.docker.internal') : baseUrl; + const ollamaInstance = ollama(model, { numCtx: DEFAULT_NUM_CTX, }) as LanguageModelV1 & { config: any };