From 3aade557774706474d94ac5aecf8b53c4be8d648 Mon Sep 17 00:00:00 2001 From: ekzhu Date: Wed, 14 Feb 2024 16:06:25 -0800 Subject: [PATCH 01/43] update intro --- website/docs/Tutorial/introduction.ipynb | 86 ++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 website/docs/Tutorial/introduction.ipynb diff --git a/website/docs/Tutorial/introduction.ipynb b/website/docs/Tutorial/introduction.ipynb new file mode 100644 index 000000000000..415e7a80c662 --- /dev/null +++ b/website/docs/Tutorial/introduction.ipynb @@ -0,0 +1,86 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Introduction to AutoGen\n", + "\n", + "> The whole is greater than the sum of its parts. - Aristotle\n", + "\n", + "AutoGen is an open source framework for building multi-agent systems and complex workflows." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Agent\n", + "\n", + "An agent in AutoGen is an entity that can send and receive messages to and from\n", + "other agents. An agent can be powered by a model, such as a large language model (LLM)\n", + "like GPT-4, a code executor like an IPython kernel, a human, or a combination of these\n", + "and other pluggable and customizable components.\n", + "\n", + "In AutoGen, a `ConversableAgent` is an agent with built-in components:\n", + "\n", + "1. A list of LLMs;\n", + "2. A code executor;\n", + "3. A function and tool executor;\n", + "4. A human-in-the-loop interface.\n", + "\n", + "These components can be switched on/off and customized to suit the need of \n", + "specific application.\n", + "(Advanced) Additional components can be added to the agent to extend its capabilities." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is an example of a `ConversableAgent` with a GPT-4 LLM switched on and other\n", + "components switched off:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from autogen import ConversableAgent\n", + "\n", + "agent = ConversableAgent(\n", + " \"chatbot\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": \"sk_****\"}]},\n", + " code_execution_config=False, # Turn off code execution\n", + " function_map=None, # No registered functions\n", + " human_input_mode=\"NEVER\", # Never ask for human input\n", + ")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "autogen", + "language": "python", + "name": "python3" + }, + "language_info": { + "name": "python", + "version": "3.12.1" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From db1b9fafd53a7e470915a73df4af73fe84f3c0b3 Mon Sep 17 00:00:00 2001 From: ekzhu Date: Wed, 14 Feb 2024 16:22:36 -0800 Subject: [PATCH 02/43] update intro --- website/docs/Tutorial/introduction.ipynb | 48 +++++++++++++++++++++++- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/website/docs/Tutorial/introduction.ipynb b/website/docs/Tutorial/introduction.ipynb index 415e7a80c662..d7e4026f3361 100644 --- a/website/docs/Tutorial/introduction.ipynb +++ b/website/docs/Tutorial/introduction.ipynb @@ -54,20 +54,56 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ + "import os\n", "from autogen import ConversableAgent\n", "\n", "agent = ConversableAgent(\n", " \"chatbot\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": \"sk_****\"}]},\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", " code_execution_config=False, # Turn off code execution\n", " function_map=None, # No registered functions\n", " human_input_mode=\"NEVER\", # Never ask for human input\n", ")" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can ask it to generate a response to a question:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "\"Sure, here you go:\\n\\nWhy don't scientists trust atoms?\\n\\nBecause they make up everything!\"" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "agent.generate_reply(messages=[{\"content\": \"Tell me a joke.\", \"role\": \"user\"}])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Role and Conversation\n", + "\n" + ] } ], "metadata": { @@ -77,7 +113,15 @@ "name": "python3" }, "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", "version": "3.12.1" } }, From 29d43501c3a2bb49449c068849d5eb09247f9ede Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Fri, 16 Feb 2024 08:58:56 -0800 Subject: [PATCH 03/43] tutorial --- website/docs/Tutorial/code_executor.ipynb | 98 ++++++++++++ website/docs/Tutorial/introduction.ipynb | 184 ++++++++++++++++++++-- 2 files changed, 267 insertions(+), 15 deletions(-) create mode 100644 website/docs/Tutorial/code_executor.ipynb diff --git a/website/docs/Tutorial/code_executor.ipynb b/website/docs/Tutorial/code_executor.ipynb new file mode 100644 index 000000000000..0dd26be60c77 --- /dev/null +++ b/website/docs/Tutorial/code_executor.ipynb @@ -0,0 +1,98 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Code Executor\n", + "\n", + "**This chapter is a work in progress, will be updated once the containerized code executor is ready]**\n", + "\n", + "In the last chapter, we used two agents powered by a large language model (LLM) \n", + "to create a comedy show. It was a fun exercise, but LLM by itself can only\n", + "generate text -- it cannot interact with its environment or reliably perform\n", + "logical operations like arithmetic. \n", + "\n", + "In this chapter, we introduce code executor, an AutoGen's agent component that \n", + "takes input messages with code blocks, performs execution, and output messages\n", + "with the results.\n", + "\n", + "**Note**: Different from many other agent frameworks, AutoGen's code executor\n", + "can power an entire role of an agent: it can take input messages, execute code,\n", + "and output messages -- just like LLM." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is an example of a code executor agent:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "0.00s - Debugger warning: It seems that frozen modules are being used, which may\n", + "0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off\n", + "0.00s - to python to disable frozen modules.\n", + "0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.\n" + ] + } + ], + "source": [ + "from autogen import ConversableAgent\n", + "\n", + "code_executor = ConversableAgent(\n", + " \"code_executor\",\n", + " llm_config=False, # Turn off LLM for this agent.\n", + " code_execution_config={\"executor\": \"ipython-embedded\"},\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code executor agent is initialized with the `ipython-embedded` code executor.\n", + " " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "autogen", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/website/docs/Tutorial/introduction.ipynb b/website/docs/Tutorial/introduction.ipynb index d7e4026f3361..139f4cb821ea 100644 --- a/website/docs/Tutorial/introduction.ipynb +++ b/website/docs/Tutorial/introduction.ipynb @@ -18,7 +18,32 @@ "\n", "> The whole is greater than the sum of its parts. - Aristotle\n", "\n", - "AutoGen is an open source framework for building multi-agent systems and complex workflows." + "AutoGen is an open source framework for building multi-agent systems \n", + "that enable complex workflows. \n", + "In this tutorial, we introduce the basic concepts of AutoGen and show \n", + "how to use each building blocks." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Why AutoGen?\n", + "\n", + "An agent is an entity that reacts to its environment. It can model real-world\n", + "entities like people and abstract entities like algorithms. Multi-agent systems\n", + "leverage the this abstraction to implement complex workflows as collaboration\n", + "among agents. \n", + "\n", + "AutoGen provides a framework for building multi-agent systems. It is designed\n", + "to be composable and extensible: \n", + "you can create a complex workflow by combining simple agents,\n", + "and you can configure each agent with customizable components.\n", + "\n", + "Most importantly, AutoGen is developed by a vibrant community of researchers\n", + "and engineers. It incorporates the latest research in multi-agent systems\n", + "and it has been used in many real-world applications, including math problem solvers,\n", + "supply chain optimization, data analysis, market research, and game AI." ] }, { @@ -41,20 +66,21 @@ "\n", "These components can be switched on/off and customized to suit the need of \n", "specific application.\n", - "(Advanced) Additional components can be added to the agent to extend its capabilities." + "Additional components can be added to the agent to extend its capabilities." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ + "LLMs enable agent to converse in human languages and transform between structured and unstructured text. \n", "Here is an example of a `ConversableAgent` with a GPT-4 LLM switched on and other\n", "components switched off:" ] }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 82, "metadata": {}, "outputs": [], "source": [ @@ -79,22 +105,24 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 83, "metadata": {}, "outputs": [ { - "data": { - "text/plain": [ - "\"Sure, here you go:\\n\\nWhy don't scientists trust atoms?\\n\\nBecause they make up everything!\"" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" + "name": "stdout", + "output_type": "stream", + "text": [ + "Sure thing, here's one for you:\n", + "\n", + "Why don't scientists trust atoms? \n", + "\n", + "Because they make up everything!\n" + ] } ], "source": [ - "agent.generate_reply(messages=[{\"content\": \"Tell me a joke.\", \"role\": \"user\"}])" + "reply = agent.generate_reply(messages=[{\"content\": \"Tell me a joke.\", \"role\": \"user\"}])\n", + "print(reply)" ] }, { @@ -102,7 +130,133 @@ "metadata": {}, "source": [ "## Role and Conversation\n", - "\n" + "\n", + "Agents can be assigned roles and participate in conversations.\n", + "In AutoGen, conversations are how agents make progress on a task." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is an example of assigning two roles to two agents by setting their\n", + "`system_message`." + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": {}, + "outputs": [], + "source": [ + "cathy = ConversableAgent(\n", + " \"cathy\",\n", + " system_message=\"Your name is Cathy and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.9, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " max_consecutive_auto_reply=2,\n", + " human_input_mode=\"TERMINATE\", # Ask for human input after 2 consecutive auto-replies\n", + ")\n", + "\n", + "joe = ConversableAgent(\n", + " \"joe\",\n", + " system_message=\"Your name is Joe and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.7, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " max_consecutive_auto_reply=2,\n", + " human_input_mode=\"TERMINATE\", # Ask for human input after 2 consecutive auto-replies\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `max_consecutive_auto_reply` specifies the number of auto replies the\n", + "agent is going to produce before asking help from human. \n", + "Now we have two comedian agents, we can ask them to start a comedy show.\n", + "This can be done using the `initiate_chat` method." + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Tell me a joke.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Sure, here's a classic for you:\n", + "\n", + "Why don't scientists trust atoms?\n", + "\n", + "Because they make up everything!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "That's a good one, Joe! Okay, here's another one:\n", + "\n", + "Why don't we ever tell secrets on a farm?\n", + "\n", + "Because the potatoes have eyes, the corn has ears, and the beansstalk!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Haha, that's a funny one, Cathy! Here's mine:\n", + "\n", + "Why was the math book sad?\n", + "\n", + "Because it had too many problems!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Haha, love it, Joe! Here's my response:\n", + "\n", + "Why did the scarecrow win an award?\n", + "\n", + "Because he was outstanding in his field!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "result = joe.initiate_chat(cathy, message=\"Tell me a joke.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "At the end of the previous chat, we instructed the agents to stop the conversation\n", + "through human input." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this chapter, we introduced the concept of agent, role and conversation in AutoGen.\n", + "For simplicity, we only used the LLM and human input components.\n", + "In the next chapter, we will show you how to use code executor -- the most powerful\n", + "component only second to LLM." ] } ], @@ -122,7 +276,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.1" + "version": "3.11.5" } }, "nbformat": 4, From da827a781678c617d5e9cc0014db62992ee31e7b Mon Sep 17 00:00:00 2001 From: ekzhu Date: Sat, 17 Feb 2024 10:19:51 -0800 Subject: [PATCH 04/43] update notebook --- .pre-commit-config.yaml | 1 + website/docs/Tutorial/code_executor.ipynb | 376 +++++++++++++++++++++- 2 files changed, 364 insertions(+), 13 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8c2f1c5bcb2f..882a0941a863 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -41,6 +41,7 @@ repos: pyproject.toml | website/static/img/ag.svg | website/yarn.lock | + website/docs/Tutorial/.* | notebook/.* )$ - repo: https://github.com/nbQA-dev/nbQA diff --git a/website/docs/Tutorial/code_executor.ipynb b/website/docs/Tutorial/code_executor.ipynb index 0dd26be60c77..6ce59b25b1b2 100644 --- a/website/docs/Tutorial/code_executor.ipynb +++ b/website/docs/Tutorial/code_executor.ipynb @@ -32,6 +32,18 @@ "and output messages -- just like LLM." ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import datetime\n", + "from IPython.display import Image\n", + "from autogen import ConversableAgent" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -43,25 +55,106 @@ "cell_type": "code", "execution_count": 1, "metadata": {}, + "outputs": [], + "source": [ + "code_executor_agent = ConversableAgent(\n", + " \"code_executor_agent\",\n", + " llm_config=False, # Turn off LLM for this agent.\n", + " code_execution_config={\"executor\": \"ipython-embedded\"},\n", + " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code executor agent is initialized with the `ipython-embedded` code executor.\n", + "This executor runs an IPython kernel in the background and can execute Python\n", + "code.\n", + "Just like an agent powered by LLM, the code executor agent can also respond to \n", + "messages." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, "outputs": [ { - "name": "stderr", + "name": "stdout", "output_type": "stream", "text": [ - "0.00s - Debugger warning: It seems that frozen modules are being used, which may\n", - "0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off\n", - "0.00s - to python to disable frozen modules.\n", - "0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.\n" + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: 93\n", + "\n" ] } ], "source": [ - "from autogen import ConversableAgent\n", + "reply = code_executor_agent.generate_reply(\n", + " messages=[\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"\"\"\n", + "```python\n", + "import random\n", + "print(random.randint(1, 100))\n", + "```\n", + "\"\"\",\n", + " }\n", + " ],\n", + " sender=ConversableAgent(\"user\", llm_config=False),\n", + ")\n", + "print(reply)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "When you run the previous code block, you will be prompted for a human feedback,\n", + "which gives you an option to intercept message because the code executor can run\n", + "arbitrary code. It is important to have a human in the loop.\n", "\n", - "code_executor = ConversableAgent(\n", - " \"code_executor\",\n", - " llm_config=False, # Turn off LLM for this agent.\n", - " code_execution_config={\"executor\": \"ipython-embedded\"},\n", + "[Discuss containerization once that piece is ready.]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Agent and Coding\n", + "\n", + "Writing and executing code is necessary for many complex tasks such as \n", + "data analysis, machine learning, and mathematical modeling. \n", + "In AutoGen, coding is a conversation between a code writer agent and a \n", + "code executor agent, mirroring the interaction between a programmer and a\n", + "code interpreter.\n", + "\n", + "The code writer agent can be powered by an LLM such as GPT-4 with code-writing\n", + "capability.\n", + "The following is an agent with a code writer role specified \n", + "using `system_message`." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "code_writer_agent = ConversableAgent(\n", + " \"code_writer\",\n", + " system_message=\"You are an AI assistant. You write code in markdown code \"\n", + " \"blocks. You do not execute code yourself, but always ask me to execute code \"\n", + " \"for you in an IPython kernel.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " code_execution_config=False, # Turn off code execution for this agent.\n", ")" ] }, @@ -69,8 +162,265 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The code executor agent is initialized with the `ipython-embedded` code executor.\n", - " " + "Here is an example of solving a math problem through a conversation\n", + "between the code writer and the code executor:" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "Write Python code to calculate the 14th Fibonacci number.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Alright, here's a Python function that uses the iterative approach to calculate the N-th Fibonacci number:\n", + "\n", + "```python\n", + "def fibonacci(n):\n", + " a, b = 0, 1\n", + " for _ in range(n):\n", + " a, b = b, a + b\n", + " return a\n", + "\n", + "# calculate the 14th Fibonacci number\n", + "fibonacci_14 = fibonacci(14)\n", + "fibonacci_14\n", + "```\n", + "Would you please execute this code?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: 377\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "The 14th Fibonacci number is 377.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "result = code_executor_agent.initiate_chat(\n", + " code_writer_agent,\n", + " message=\"Write Python code to calculate the 14th Fibonacci number.\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "During the previous chat session, human input was requested each time\n", + "the code executor agent responded to ensure that the code was safe to execute." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we can try a more complex example that involves querying the web.\n", + "Let's say we want to get the the stock prices year-to-date for\n", + "Tesla and Meta (formerly Facebook). We can also use the two agents\n", + "with several iterations of conversation.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "Today is 2024-02-16. Plot a chart for Tesla's and Microsoft's stock prices YTD.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "I would love to, but as an text-based AI, I don't have real-time access to data from the internet, including stock prices. However, I can certainly guide you through the steps of doing this using Python. \n", + "\n", + "First, you will need to install `yfinance`, which will allow us to download historical market data from Yahoo Finance. You can do this by running `!pip install yfinance`.\n", + "\n", + "Next, you should import the required libraries and download the data:\n", + "\n", + "```python\n", + "import yfinance as yf\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Download historical data as dataframes\n", + "tesla_stock = yf.download('TSLA', start='2024-01-01', end='2024-02-16')\n", + "microsoft_stock = yf.download('MSFT', start='2024-01-01', end='2024-02-16')\n", + "```\n", + "Once you have the data, You can plot their adjusted closing prices on the same chart:\n", + "\n", + "```python\n", + "plt.figure(figsize=(14,7))\n", + "\n", + "# Plot Tesla stock\n", + "plt.plot(tesla_stock.index, tesla_stock['Adj Close'], label='Tesla')\n", + "\n", + "# Plot Microsoft stock\n", + "plt.plot(microsoft_stock.index, microsoft_stock['Adj Close'], label='Microsoft')\n", + "\n", + "plt.title('Adjusted closing price (YTD)', fontsize=16)\n", + "plt.xlabel('Date', fontsize=14)\n", + "plt.ylabel('Adjusted closing price ($)', fontsize=14)\n", + "plt.legend(fontsize=12)\n", + "plt.grid(True)\n", + "plt.show()\n", + "```\n", + "This script should give you a chart showing the adjusted closing prices of Tesla and Microsoft stocks from the start of 2024 to February 16, 2024. If you need help interpreting the chart or have other questions, feel free to ask!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: c:\\Users\\ekzhu\\AppData\\Local\\anaconda3\\envs\\autogen\\Lib\\site-packages\\yfinance\\utils.py:775: FutureWarning: The 'unit' keyword in TimedeltaIndex construction is deprecated and will be removed in a future version. Use pd.to_timedelta instead.\n", + " df.index += _pd.TimedeltaIndex(dst_error_hours, 'h')\n", + "[*********************100%%**********************] 1 of 1 completed\n", + "\n", + "\n", + "c:\\Users\\ekzhu\\AppData\\Local\\anaconda3\\envs\\autogen\\Lib\\site-packages\\yfinance\\utils.py:775: FutureWarning: The 'unit' keyword in TimedeltaIndex construction is deprecated and will be removed in a future version. Use pd.to_timedelta instead.\n", + " df.index += _pd.TimedeltaIndex(dst_error_hours, 'h')\n", + "[*********************100%%**********************] 1 of 1 completed\n", + "\n", + "\n", + "
\n", + "Image data saved to c:\\Users\\ekzhu\\autogen\\website\\docs\\Tutorial\\31c88163ca9f414ca4ccb20045e4aa84.png\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Great! It seems your code was executed successfully and the plot with Tesla's and Microsoft's stock prices was generated. If you need any further assistance, feel free to ask.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "How much gain for each stock YTD?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "To calculate the gain or loss of each stock Year-to-Date (YTD), you can use the formula:\n", + "\n", + "`(Current price - Price at the start of the year) / Price at the start of the year * 100%`\n", + "\n", + "You may obtain the desired information in Python using the following code:\n", + "\n", + "```python\n", + "# Calculate gain or loss on year-to-date\n", + "tesla_gain_YTD = (tesla_stock['Adj Close'][-1] - tesla_stock['Adj Close'][0]) / tesla_stock['Adj Close'][0] * 100\n", + "microsoft_gain_YTD = (microsoft_stock['Adj Close'][-1] - microsoft_stock['Adj Close'][0]) / microsoft_stock['Adj Close'][0] * 100\n", + "\n", + "# Print the result\n", + "print(f'Tesla\\'s stock has changed by {tesla_gain_YTD:.2f}% since the beginning of the year.')\n", + "print(f'Microsoft\\'s stock has changed by {microsoft_gain_YTD:.2f}% since the beginning of the year.')\n", + "```\n", + "\n", + "Here, `tesla_stock` and `microsoft_stock` are DataFrames holding the stock data. The `Adj Close` column represents the closing price of the stock, adjusted for corporate actions such as dividends and stock splits. The `[0]` or `[-1]` index is used to access the first (start of the year) or the last (most recent) stock price, respectively. The gain or loss is then calculated as above. The `:.2f` in the string formatting is used to round the result to 2 decimal places.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: Tesla's stock has changed by -19.31% since the beginning of the year.\n", + "Microsoft's stock has changed by 9.83% since the beginning of the year.\n", + "\n", + "C:\\Users\\ekzhu\\AppData\\Local\\Temp\\ipykernel_18220\\3394466230.py:2: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`\n", + " tesla_gain_YTD = (tesla_stock['Adj Close'][-1] - tesla_stock['Adj Close'][0]) / tesla_stock['Adj Close'][0] * 100\n", + "C:\\Users\\ekzhu\\AppData\\Local\\Temp\\ipykernel_18220\\3394466230.py:3: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`\n", + " microsoft_gain_YTD = (microsoft_stock['Adj Close'][-1] - microsoft_stock['Adj Close'][0]) / microsoft_stock['Adj Close'][0] * 100\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "It seems that the code was executed successfully. Here're the results:\n", + "\n", + "- Tesla's stock price has decreased by 19.31% since the beginning of the year.\n", + "- Microsoft's stock price has increased by 9.83% since the beginning of the year.\n", + "\n", + "This indicates that Microsoft's stock has performed better than Tesla's stock so far this year.\n", + "\n", + "Please note that the warning you saw originated from using series indexers, i.e., 0 and -1 indices with 'Adj Close' column to access the first and the last element. As of pandas 1.0.0, using .iloc is suggested for the same. The warning is just to ensure future compatibility of your code.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "today = datetime.datetime.now().strftime(\"%Y-%m-%d\")\n", + "result = code_executor_agent.initiate_chat(\n", + " code_writer_agent, message=f\"Today is {today}. Plot a chart for Tesla's and Microsoft's stock prices YTD.\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's take a look at the chart that was generated." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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lSlTRh07dpTNZtPevXv18ccfKzIyUjVq1Ljmefbu3atWrVrpwIEDioiIUMeOHZWSkqLly5dryJAhmj17tpYuXarChQvbj5k6daoefPBBSVLDhg3VsmVLXbx4UYcPH9asWbNUtGhRNWvWLMfXEhcXp9tvv10HDx5U06ZNVaNGDa1du1bTpk3TypUrtW3bNoWGhjocM27cOA0ZMkSS1KhRI1WoUEG7d+/WXXfdpZdffjnH752VwYMH67333lOTJk109913648//tDChQu1ZMkSff3117r33nuzPO6dd97RhAkTVL9+fbVv315Hjx6V1Wq95vvl9nu5c+dOtW/fXocOHVLx4sV1xx13yMfHR+vXr9ewYcP0zTffaMWKFZk+s6v5/vvvJUmtW7fOtk36/EALFizQp59+qqZNm+o///mPvLy8NHXqVAUFBeX4/VylT58+euutt3TmzBlt3LhRjRs3dtjfqlUreXl5af78+UpJSaEnIwAgZwwAAHBVu3btMiQZPj4+xvHjx+3bq1atakgypk2blumYY8eOGcHBwYYk491333XYt3TpUsPf39+QZGT1V3HZsmUNSca+fftytD1d//79DUnG5MmT7dtWrlxpSDLq1q1rxMfHZzpmw4YNxsmTJ3P1PseOHTPCw8MNi8ViTJw40UhLS7PvO3nypNGqVStDkjFq1CiH41588UVDklG1alXjyJEj9u0XLlww7r77bvvnMWLEiCzfNysbN240fHx8DIvFYnzwwQcOtRiGYezfv9/YuHGjw7bsPvdGjRoZkowuXboY58+ft28/fvy4cdtttxmSjN69ezscU758eUOS8euvv2Y6X2xsrLF582aHbSNGjMjyGidPnmyvq127dkZcXJx93+nTp406deoYkowxY8Y4HLd582bDarUaVqvV+Pbbbx32ff3114aXl5chyShbtmym+q4mvZaAgABj2bJlDvvGjRtnSDJCQ0ON2NhYh33p947VajV++OGHLM+d3WeQ2+9lQkKCUbFiRUOS8dprrxlJSUn2fRcuXDB69eplSDIefPDBHF/37t27DUlGRETENdvOnz/fkGQUKlTIqFWrliHJGDJkSI7eZ/ny5dnehxnt27fP3i67n8d0aWlphq+vryHJ+Pzzz7Nsk15nVvcrAABZYXgaAADXkD6crEuXLoqIiLBvT+91lNUQtUmTJuncuXNq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22vPzn/+8x95e3trwoQJmjhxYqbhUgcOHNCmTZuueZ477rhDjRo10sWLF/XYY48pISHBvu/kyZP2p9317NlTpUuXliQlJCTo3XffzXK+nF9//VVnz56V1Wp1WW+crDz11FPy8vLSrFmz9MMPPzjs+/bbb/XNN99c1/k/+uijTJNdjx8/XuvXr1dwcLAefvjh6zp/Rrn9Xj766KMqW7as5syZoyFDhmTZAy8mJiZXgWKFChVUpkwZnThxQrt373b+Ytzk4sWL+uijj9SiRQslJiaqRYsWevHFF7NsGxcXp507d6pQoUJq2LChmysFABRYBgAAyGTFihWGJMPPz884ffr0NdvfdttthiTj7bfftm/76quvDKvVakgyatasafTq1cto1qyZYbFYjOeff96QZGT1V3HZsmUNSca+ffsctp85c8a+LzIy0rj77ruN1q1bG6GhoUbNmjWNe+65x5BkTJ482X7M+PHjDUlGSEiI0aJFC6N3797Gvffeaz9PaGiosWXLFof3mTBhgiHJKFSokHHfffcZDz/8sPHwww8bf//9t73NypUrjaJFi9pradWqlfHAAw8Yd911l1GxYkVDktGoUSOH854/f95o2LCh/dydO3c27r//fqNYsWJGeHi40a9fP0OSMWLEiGt+3hlNnTrV8PHxMSQZZcuWNbp162bcd999Rp06dQyLxZLpfNl97nv27HH4fLt162bcfffdRkhIiCHJuO222xzuhTNnzhiSDC8vL6N27dpGt27djF69ehnR0dGGxWIxJBnDhw93eI8RI0ZkeY2TJ082JBn9+/fP8hr37dtnv74rjRkzxn5NjRs3Nnr37m3/nF944QVDklG5cuUcfZZXfkbPPfecYbFYjGbNmhm9evUyatasaUgyrFarMWfOnEzHZXfvZpTdZ2AYuf9e/vnnn0a5cuUMSUZYWJjRrFkzo3fv3sY999xjVK9e3bBYLEZUVFSurv2ZZ54xJBkTJ07MUfv0z2r58uU5fo/ly5dnex9mlP59l2R07drV6N+/v9G/f3+jW7duxu233274+/vb78HHH3/cOH/+fLbn+vbbbw1JRvfu3XNcJwAAhEYAAGShb9++hiSjW7duOWr/3nvvGZKMatWqOWz/9ddfjXbt2hkhISFGYGCgUbduXeOTTz4xDCP78CL9F+/9+/dn2nf48GGjX79+RmRkpOHr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cQoJCcm2XY5Coyv997//1fjx47V161YVL1480/4jR46obt26evHFF/Xyyy/n9vR2gwYN0sKFC/Xbb7+pVKlS2bb75ZdfdOedd2r37t2qWLGiU6FRVj2NSpcurZMnT171A7xeKSkpWrJkidq0aSMfHx+XnnvrobOqGFFIwf456lCGm0Re3nNAVrjn4G7cc4Dn8PMHd+Oeg7vdKPdcfHy8ihYtes3QyKk0YdKkSerevXuWgZEklSxZUt27d9dnn33mdGj01FNPad68eVq1atVVAyNJatSokSTZQ6NixYpp/fr1Dm1iY2MlKdt5kPz8/OTn55dpu4+Pj1tuBFe/z/bDZ9V/yiaVLxqkKQ82VERw5mvDzc1d9zaQjnsO7sY9B3gOP39wN+45uFtBv+dyWrtTT087fPiw/P39r9rG399fhw8fzvW5DcPQU089pe+++06//PKLypcvf81jtm7dKkn2ECs6Olp//PGHjh8/bm+zZMkShYSEqHr16rmuqSDyslgU4GPVjqPx6vbxGh08leDpkgAAAAAAQAHiVGhUqlQpfffdd0pMTMxyf0JCgr777rtr9hDKypNPPqnp06dr5syZCg4OVkxMjGJiYnTx4kVJ0p49e/T6669r06ZN2r9/v3788Uf169dPzZo1U61atSRJbdu2VfXq1dW3b19t27ZNixYt0muvvaYnn3wyy95EN6IaJUM1d9DtKlU4QAdOJajrx2v017F4T5cFAAAAAAAKCKdCo4EDB2rv3r1q0qSJfvjhB506dUqSdOrUKX3//fe64447tH//fj3yyCO5PvdHH32kuLg4tWjRQsWLF7cvs2fPliT5+vpq6dKlatu2rapWraoXXnhBXbt21U8//WQ/h9Vq1bx582S1WhUdHa0+ffqoX79+Gj16tDOXW2CVLxqkbwfdrqrFgnXiXJK6f7JWv+895emyAAAAAABAAeDUnEYvvfSS/vnnH02ePFn33XefJMnLy0s2m02SOcTswQcf1EsvvZTrc19rXu7SpUtr5cqV1zxP2bJltWDBgly//40mMsRfsx+L1iNTN2r9/tPq+8V6TehVV21vzXpuJwAAAAAAAMnJnkZeXl6aNGmSli9frv79+6tu3boqV66c6tatqwEDBuiXX37RpEmTZLFYXF0vnBAa4KNpDzdU62pRSk616fHpm/T1hkOeLgsAAAAAAORj1/Us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3nrrLe3cuVN//vOfdf/99+uFF15wO19JSYlmzpypSy+9tFX1Pf300/rHP/6hV155RWvXrlVAQICmTp3a5Jfo2tpaXX/99br99ttb/b7Lyso0ZcoUpaSkaOPGjfrrX/+qhx9+WP/85z9dbaqqqtSzZ089+eSTio2NbXXfODnGXMtj7p133tF9992nefPmKS0tTa+//rref/99/elPf2r1eeCuu465+vp6+fn56be//a0mT5580rZ79uxRbm6u6xYdHd3q88Bddx1zq1ev1tChQ/Xxxx9r27ZtmjNnjmbOnKlFixa52ixbtkw33nijli5dqjVr1igpKUlTpkzR4cOHW30e4GQ6++dv9+7dcjgcevXVV7Vz504999xzeuWVV075XeDQoUOaNm2aJk2apC1btuiuu+7Sz3/+c3311VeuNpWVlRo2bJhefPHFVtWK1mHMtTzmnnrqKb388st64YUXlJaWpqeeekpPP/20nn/++VbVjuZ11zFns9kUFRWlBx54QMOGDWuxXXBwcJPvtRkZGa2q+7QZ3VRBQYEhyVi+fLlhGIZRUlJieHt7Gx9++KGrTVpamiHJWLNmTYv93HHHHcakSZPcjv/0pz81HnjgAWPevHnGsGHDTlqLw+EwYmNjjb/+9a+uYyUlJYbVajXeffddt/bz5883QkJCTvEOnV566SUjLCzMsNlsrmN//OMfjX79+jXbPiUlxXjuueda1TdOD2Pu2JibO3eucckllzR53e9//3tj/PjxrToHWqe7jLnjzZo1y5g+fbrb8aVLlxqSjOLi4tPuE63XHcdcoyuuuMKYM2dOi8/X1dUZQUFBxptvvnnG5wBOpjN//ho9/fTTRo8ePU7a97333msMGjTIrbapU6c2216S8cknn5y0T5wZxtyxMTdt2jTjZz/7WZM21157rXHzzTeftG+cnu4y5o538cUXG7/73e/cjp/t95bT0W1mGp2otLRUkhQeHi7JmUDa7fYm/0rdv39/JScna82aNSftp7GPRvPnz9fBgwc1b968VtVy6NAh5eXlNTl3SEiIxowZc9Jzt8aaNWt00UUXycfHx3Vs6tSp2rNnj4qLi8+qb5wextyxMTdu3Dht3LjRtVTj4MGD+uKLL3TFFVec1bnRVHcZc6dj+PDhiouL02WXXaZVq1a123m7i+485pqr+XhVVVWy2+0nbQOcja7w+TvV50hyfs84cVbp1KlT2/XvEjgx5o71O27cOH377bfau3evJOeSqJUrV+ryyy9vVf1one4y5lqroqJCKSkpSkpK0vTp07Vz585z0u+JLG3SawfncDh01113afz48Ro8eLAkKS8vTz4+Pm77GcTExLS458Xq1av1/vvva/Hixa5j+/bt03333acVK1bIYmndH29j/zExMa0+d2vl5eWpR48ebv02PhcWFnZW/aN1GHNNx9xNN92koqIiTZgwQYZhqK6uTr/+9a9ZnnYOdacx1xpxcXF65ZVXNGrUKNlsNv3rX//SxIkTtXbtWo0YMaLNz98ddOcx98EHH2j9+vV69dVXW2zzxz/+UfHx8adcQgmcia7w+du/f7+ef/55PfPMM6fsu7l+y8rKVF1dLT8/v1bViLPDmGs65u677z6VlZWpf//+8vLyUn19vR577DHdfPPNraofp9adxlxr9OvXT2+88YaGDh2q0tJSPfPMMxo3bpx27typxMTEs+7/eN1yptHcuXO1Y8cOvffee2fcx44dOzR9+nTNmzdPU6ZMkeTcV+Omm27SI488or59+zb7urfffluBgYGu24oVK864hhMNGjTI1S+pdsfCmGtq2bJlevzxx/XSSy9p06ZNWrhwoRYvXqxHH330nNXW3THmmurXr59+9atfaeTIkRo3bpzeeOMNjRs3Ts8999w5q627665jbunSpZozZ45ee+01DRo0qNk+nnzySb333nv65JNP2myTSnRvnf3zd/jwYf3oRz/S9ddfr1/84heu48f3++tf//rM3hjaBGOuqQ8++EBvv/223nnnHW3atElvvvmmnnnmGb355punXRuax5hrauzYsZo5c6aGDx+uiy++WAsXLlRUVNRJ/wHrTHW7mUZ33nmnFi1apO+//75JAhcbG6va2lqVlJQ0SSrz8/PdNofetWuXLr30Uv3yl7/UAw884DpeXl6uDRs2aPPmzbrzzjslORNRwzBksVj09ddf68c//rHGjBnjek1CQoJyc3Nd54qLi2ty7tbs2t7oiy++kN1ulyTXv7LExsY22T2+sd/G59D2GHPuY+7BBx/Urbfeqp///OeSpCFDhqiyslK//OUv9ec//1lmc7fMs8+Z7jbmztT555+vlStXnlUfcOquY2758uW66qqr9Nxzz2nmzJnNvv6ZZ57Rk08+qW+++UZDhw5t9XmB1ursn7+cnBxNmjRJ48aNa3LRDEnasmWL6+fg4GDX+2rue0ZwcDCzjNoJY859zN1zzz267777dMMNN0hyfrfNyMjQE088oVmzZrX8h4lW6W5j7kx4e3vrvPPO0/79+8+4jxa1y85JHYDD4TDmzp1rxMfHG3v37nV7vnETrY8++sh1bPfu3W6baO3YscOIjo427rnnHrc+6uvrje3btze53X777Ua/fv2M7du3GxUVFS3WFhsbazzzzDOuY6Wlped0U+La2lrXsfvvv5+NsNsBY67lMTdixAjj3nvvbfK6d955x/Dz8zPq6upadR64665j7ngtbYTdnMmTJxvXXHPNaZ8Dx3TnMbd06VIjICDAeOGFF1ps89RTTxnBwcEn3YwTOFNd4fOXnZ1t9OnTx7jhhhta/ff/vffeawwePLjJsRtvvJGNsNsBY+6YE8dceHi48dJLLzVp8/jjjxt9+vRp1TnQvO465o7X0kbYJ6qrqzP69etn3H333ad9jlPpNqHR7bffboSEhBjLli0zcnNzXbeqqipXm1//+tdGcnKy8d133xkbNmwwxo4da4wdO9b1/Pbt242oqCjjlltuadJHQUFBi+dtzc7rhmEYTz75pBEaGmp89tlnxrZt24zp06cbPXr0MKqrq11tMjIyjM2bNxuPPPKIERgYaGzevNnYvHmzUV5e3mK/JSUlRkxMjHHrrbcaO3bsMN577z3D39/fePXVV11tbDabq6+4uDjjD3/4g7F582Zj3759p6wbLWPMtTzm5s2bZwQFBRnvvvuucfDgQePrr782evXqZfzkJz85Zd1oWXcdc4ZhGDt37jQ2b95sXHXVVcbEiRNdr2v03HPPGZ9++qmxb98+Y/v27cbvfvc7w2w2G998880p60bLuuuY++677wx/f3/j/vvvb1LzkSNHmpzbx8fH+Oijj5q0OdVYBlqrs3/+srOzjd69exuXXnqpkZ2d3eT8J3Pw4EHD39/fuOeee4y0tDTjxRdfNLy8vIwvv/zS1aa8vNz1WZZkPPvss8bmzZuNjIyMU9aNljHmWh5zs2bNMhISEoxFixYZhw4dMhYuXGhERka6/SMpTk93HXOGYbj+HzZy5EjjpptuMjZv3mzs3LnT9fwjjzxifPXVV8aBAweMjRs3GjfccIPh6+vbpM250m1CI0nN3ubPn+9qU11dbdxxxx1GWFiY4e/vb1xzzTVN/oPOmzev2T5SUlJaPG9rB5zD4TAefPBBIyYmxrBarcall15q7Nmzp0mbWbNmNXv+pUuXnrTvrVu3GhMmTDCsVquRkJBgPPnkk02eP3ToULP9XnzxxaesGy1jzLU85ux2u/Hwww8bvXr1Mnx9fY2kpCTjjjvu4HLoZ6k7j7mUlJRmX9foqaeeco238PBwY+LEicZ33313yppxct11zLX0muP/3mxpTM6bN++UdQOt0dk/f/Pnz2/xPZzK0qVLjeHDhxs+Pj5Gz549m7znxueb63fWrFmn7BstY8y1PObKysqM3/3ud0ZycrLh6+tr9OzZ0/jzn/9s2Gy2U/aNlnXnMXeqmu+66y4jOTnZ8PHxMWJiYowrrrjC2LRp0yn7PROmhoIAAAAAAAAAF3abBQAAAAAAgBtCIwAAAAAAALghNAIAAAAAAIAbQiMAAAAAAAC4ITQCAAAAAACAG0IjAAAAAAAAuCE0AgAAAAAAgBtCIwAAAAAAALghNAIAAAAAAIAbQiMAAIDTlJ6eLpPJ1OTm7++v+Ph4XXrppXrooYd04MCBsz7Pww8/LJPJpGXLlp190QAAAKfJ4ukCAAAAOqtevXrplltukSTZbDYVFBRo3bp1evTRR/X444/r3nvv1WOPPSaTyeThSgEAAE4foREAAMAZ6t27tx5++GG34ytXrtStt96qJ554Ql5eXnr00UfbvzgAAICzxPI0AACAc2zChAn68ssvZbVa9fTTTysrK0uSVFpaqqeeekoXX3yx4uPj5ePjo/j4eM2cOdNtOdvEiRP1yCOPSJImTZrkWgaXmprapF1BQYHuvvtu9e7dW1arVZGRkZoxY4Z27NjRLu8VAAB0Xcw0AgAAaAP9+vXTT37yE/3nP//Rp59+qt/85jdKS0vTQw89pEmTJumaa65RQECAdu/erXfeeUeLFy/Wpk2blJKSIkmaPXu2JGn58uWaNWuWKywKDQ11nePAgQOaOHGisrOzNWXKFF199dUqKCjQxx9/rK+++krffvutxowZ087vHAAAdBWERgAAAG1k4sSJ+s9//qP169dLkgYMGKDc3FyFh4c3abd06VJNnjxZ//M//6PXXntNkjM0Sk9P1/LlyzV79mxNnDjRrf+ZM2cqNzdXX375paZOneo6/sADD2jUqFH6xS9+oW3btrXdGwQAAF0ay9MAAADaSHx8vCSpqKhIkhQSEuIWGEnO5WeDBg3SN9980+q+N2/erNWrV2vWrFlNAiNJ6tu3r37xi19o+/btLFMDAABnjJlGAAAA7WjZsmX6+9//rrVr16qoqEh1dXWu53x8fFrdzw8//CBJys/Pb3Yz7t27d7vuBw8efHZFAwCAbonQCAAAoI3k5ORIkqKioiRJH374oX76058qMDBQU6dOVWpqqvz9/WUymbRgwQJlZGS0uu+jR49KkhYvXqzFixe32K6ysvIs3gEAAOjOCI0AAADayLJlyyRJo0ePliQ9/PDD8vX11caNG9WnT58mbd97773T6js4OFiS9Pzzz+vOO+88+2IBAABOwJ5GAAAAbWDv3r364IMPZLVadc0110hyXu1swIABboFRbm6uDh486NaHl5eXJKm+vt7tucaroq1Zs+Zclw4AACCJ0AgAAOCcW7VqlaZOnSqbzab77rtPCQkJkqSUlBTt379f+fn5rrY1NTW6/fbbZbfb3fpp3DQ7KyvL7bnzzz9fY8aM0bvvvqv333/f7XmHw6Hly5efq7cEAAC6IZNhGIaniwAAAOhM0tPT1aNHD/Xq1Uu33HKLJKm2tlYFBQVat26dtm/fLi8vL91///36y1/+IpPJJEl64YUX9Jvf/EZxcXG67rrrVFdXpyVLlsgwDAUGBmrr1q06/qvZrl27NHjwYMXGxurmm29WSEiIQkNDXcvRDh06pEmTJikjI0MXXHCBRowYIT8/P2VmZmrNmjUqLCxUTU1N+/8BAQCALoHQCAAA4DQ1hkbH8/PzU2hoqPr3768JEyZo1qxZ6tWrV5M2hmHon//8p55//nkdOHBAoaGhmjZtmp544gldf/31Wr58uU78avbmm2/qb3/7m/bu3SubzaaUlBSlp6e7ni8uLtazzz6rTz/9VAcOHJCXl5fi4uI0evRoXXfdda6lcQAAAKeL0AgAAAAAAABu2NMIAAAAAAAAbgiNAAAAAAAA4IbQCAAAAAAAAG4IjQAAAAAAAOCG0AgAAAAAAABuCI0AAAAAAADghtAIAAAAAAAAbgiNAAAAAAAA4IbQCAAAAAAAAG4IjQAAAAAAAOCG0AgAAAAAAABuCI0AAAAAAADg5v8DAUQsgoGZjlAAAAAASUVORK5CYII=", + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Image(\"31c88163ca9f414ca4ccb20045e4aa84.png\")" ] } ], @@ -90,7 +440,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.5" + "version": "3.12.1" } }, "nbformat": 4, From 8d7fe946a1af27524eaf2229d6bec9d237e55ee8 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sat, 17 Feb 2024 11:57:13 -0800 Subject: [PATCH 05/43] update notebooks --- .../Tutorial/assets/Human-in-the-loop.png | Bin 0 -> 38796 bytes .../Tutorial/assets/conversable-agent.png | Bin 0 -> 30650 bytes website/docs/Tutorial/code_executor.ipynb | 11 ++- website/docs/Tutorial/introduction.ipynb | 70 +++++++++++------- 4 files changed, 52 insertions(+), 29 deletions(-) create mode 100644 website/docs/Tutorial/assets/Human-in-the-loop.png create mode 100644 website/docs/Tutorial/assets/conversable-agent.png diff --git a/website/docs/Tutorial/assets/Human-in-the-loop.png b/website/docs/Tutorial/assets/Human-in-the-loop.png new file mode 100644 index 0000000000000000000000000000000000000000..bc349fabb00c1a0a280e58ff8d3b4bfec3dc99e7 GIT binary patch literal 38796 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 literal 0 HcmV?d00001 diff --git a/website/docs/Tutorial/assets/conversable-agent.png b/website/docs/Tutorial/assets/conversable-agent.png new file mode 100644 index 0000000000000000000000000000000000000000..e41f60ba6033a60df458754e7d619645aed4058a GIT binary patch literal 30650 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�cuXH~V}lpFT&PI8D6N%xI4kdfRO0s#W8Hx3EmP?ICeV1g_bEl|Ce z#kmn?Bls%fxWDYd|1h*^W&!i3a zfipL`)l;PDd5fUha7j`oa4%n$-P17hD>5{Y1n`Tu&o5f_nczvC*vvSoArfev$2+5Y zclR)eu6ennf%fh|M;hS^?AFT^#BpV$7d^#JzgrIDfKN;hB!AgyDhG3i5J6vbWAqkO zbmL3GTJnKV3A6#G!Ikl{47lEsFovdIZSq^6;18Auh>oQ}oZje`#H66=&b1LV3>)>| zksdNZq+F`4|9A2MBMr5mOW(=i@~c!~2Wi3?Fps(vyV&($9eGHrkP-irEa?BI!&&gQ zXmku!U`-=ErL*S(7k#$$Z!cb|e=8!pK&5fJiMy5IwZDncjYVYKe`;uWC|1Drs_9yH zG0+5lsx>xi&DB{DXrbHt|@%i7LPN+XGq(gZc`JYQ)$>I6}Jm*Hc(!%@U4&V1M zyP(W1#U_!nxBlCK`S1;lLa~kJMUrBm>GwwN5_&LtkNeCN*FHLT|IUOB=9nF}XZGMf zS^LMWKl~y^Y=aZ2JHy}w8up}%wvs9#xDTg}6p%DiA@A!fc_^{DvnPmPo zFADN4lnUmG-c^3TATTvsYQk&bzAwHnZ0w_3K>hMf7eGA3L4(FyE@PksOp^X3NWEo2 zQMW{}er9-We*`JgW&vFzy{8F~5VW)N|4KI8tV>BP*ICHFH`pHS&fnq!{8y|&P+|o7P5}0|Ki>ras&@pFZO^{* zbrh!)0hQ7@to<1$z64YS0W3+pJ!vmN@=#+V{P0KeL$W`p;3h|IF^R(^l3Jo)=pT^i zA=Q7f0Wzl&!SkxKh-Fu*)?V??7+c1Fibx*BPTo4?@miQ5WB;i=ApJ8)-b|j;K`lKL z4WxQa{g;3Bf`5?48%dah5V}A%hf{=^us37+$Dj$A7bz?sRYJ+TSgp$~nuSN!Et?`H zSdqUBWTQjF3PZpP|0y2v3=C(;E*8T3S%1Un`e#T<(LV}|P=80-v6goo^;d(uw}Tt$ z_Q6{c2qdgkpKxuq6UY<&-J^%+6%k*ZoJR-(TAS_opG~)NP^(w#04;uP?-hyz(DiOt zL~VNpZqM>{k&B(6QlPeXOOF$j5-KiYf`pt5nVdKrNA83p-z$K>I z*I8l>;80XA^H}C$sa(TstEOzXn35?@g%y^at?zBwGeWZj$M+?M z{s?1K1dHwXMS}MrkB9Jpv}~7Wf1($Y5!<~6?^lUX=KN@$wVJVAZTVc|SP*&YQxnt+ zr!vEF`kJXU5OV3Z&nGb49X1j#*_638mi1FF5GvC+R{MuqjXp7_0;z;0&y)ob?2`d5 zG`hX;0GBWx?$6DL>j07z_RQZSm_856psn?Cv0JIgQJ7HOD`}K<-PVo;X_&J{B+zK~ zfqt=U47qOEu7UoTEI6v6js+E%vxX#(7+*`wUw3|<$(X|JuUj9cRzG;K+(AK9oU)gO z#d2$Nhk>>p1VKUYz?{Cb!<)YlN&t0=kAE(J1c@aWd<0*c#ieEcpb z9IjBm#y-6*|3BruWmMEr_df~<0)mtvBHcBBfV2!C(v9>`0wWF5AT0ta-O`GLba!_Q z-Q6LbLkxAl$P=pA%;nDsrZHjm)SJjCtK{DRn=PKrD(zwnhS+ctnQkU=@*Uw(KjHo<}qg69+v8mOe=Gbc* z@)`r{d}5uhgUIh9-y}n zfErI>87V$3_QTu`+VTa5BNTAfo@faK#zs&j&4o=F)Gr((Ui|(xV?c@SytphY$H%8= zBxnInE8!jvsx^e}y*Zkkb~O!e4U7p7IqIo^%y4H}bqf9ZT#hk}MR5Mi`6 zGb(8deJZI?ONw6<|2u*^(1y>v0jNjrTi#wJO)h6h*Wsu|$}TehWrL?~B3t|&Nj=(6&wOv}RzOfc)^YCE+&dOdsL z&?Ws>vlJ4zi;{QIj|g{Ay++ZT^RnleKeb@+8Jy5NDAWP}a{Kf#*%~TY`~5>6=~(lg znj~=h=#~u7*87)ag1=b+9w%&p!K)VLlBZ0bINo9=wcY33LD}BEinh_SwcC*W3Ed^HPE2 zm(a%st%zH=S^$accrPcU{RmSrAK3Fb)I$q^!}0GQ2J-$1<$FU8VOm4N^GVNb$cxsZ z5%Yq#?Ke$t)88dM{%$UXx4V0(9*@?Cr?_c}@Dn0|86FYl77cv?g&OI*|GN$WaxO!F zn2F!(iP?RqDL9ZnP7)Zq6Gw6-lLdt?*7|Bkni!Q&lTYKDQPN7^5bM0fvk7o>do09% zYRdi}K^RoM0E_6`5U7p)hrVj-7lNn%XE>xay7BXWSrvbCT$Yd)9c095^y z%f)}~u*m<{IeAzkERUZD9a~2N`2uCWQ~Wb^JNQbp@$|oz5IGfpW>gj%PhVNi!p+F8 z((4&26@?N7K7KEN2pXIpE^<aZg2deGqf}_M&C6#U0`ncX5D-p>SK|J6UNYmH!pa+!Lxs{k;~* zJ*Ji6!B@}|j;`;L=@pJ<&3~^H$>u^1Qz;e$#aRnPBlFO`MXG-5`zBzlHARhDLZKbJ z)pENrgHZ{^uMD%j;6ctp*N@^ZI@Jq(coT0r*~>g(!ZQ`lY5jd9!_!dkXn{o6r-)Ao7r_4S5&rQzGetA*e)^Ev5_Qe7>!oV-5E>$(l~Ci#I&f)_G! zfL*4Gwjs~l>)_H5SH#9D6EgKh6ztH|1xI}of9C8fHJ{~aSj+K>P zq2;O;##4ZQJE@ObZj(;Or<+{z;;liH5ku<1Oq~Rh1_GIRc+v%DhQW&?;)TR~*a|6ob=TB-Z0``_>5x2AYnvDzVa(DzT3h-jhQu4$qaMwX{fDG8ulYXWUisDP$F~ zh39J?hvn4ezgHQ)K4;L}$&nB1Ds)+d^^1BNU*NUAf@v4Bnl4@?=${v>gpE#bee={H zRQ`%Cw2QRB#X0|*&<3FIx1ahV<&7uyzLuHZ%AW={JFT&8J9imZZxAKiawVR`wB%{! zz8CH79pvfzrOj04cK!aA$X8Rj=>$x6KTIUY-<$ba@lp2TA%7A<~`-P5&tf< zBPp~J4PnsrCH~7dB%X;5nBrH6VjX~AgA+A0f%sOvLtU#KPc#=x>Z8Ec+hXVtZzfDP z0lNTO$8NUNC(y5S4ugl&AiF^CM4dsm5DZXQu#o&@2~@AudLVSV*{!*~U>83OVhF}R$Iu?y$W${4Q_)&eXg-{r|OcO!Mp1AvJ9xwBX_Ylq3T!rr*3_#a!d8X zzko#J@xxt*nQ~|&n?!^v_P3~)c>)%k=64&|E0>_0GAsrZZI><^SwyY;y-Lkb>}Pm z?=TNsZ90QA|J>GN_B5qJDE@E{cQWJSji!3BD+;1_3&SmC*9O)}+6;*{flG#UROGUc8>ugo+p-53?&dW!0zQ%g9-&p0#2FW3u__6}_a{uP(IL zip)>9uxN@#$KMsh$}E4S?#7BDT`+N6tjj*0SUo0#fG%(85D8qnlvRHJKjW!GAKrH_ z&Qyc5)Y=+JhVyG0Rx807McRdP42Ho&4nXKS;L!nX%hs28FYu&)o4vKvE*evP0QWZD z6(_iKXzRXL>)y7iI&befWmeVxRitur7I?F?u8Z`pj#yBQbc1H$jpC;=n#aFch+7_+p-T-CGnJ3E56N621xk>pJguKP&pJpsTkRH84KXia6f1JAC&x3c;T>{0VC zO_%H-GDqDVY6vN>=}GXkdnr$)>ShoWY0Zy>b6P6?5dRz8b+%7?g$Av>BAn&H3m}14BGI z*mqrirh1{NBh7kKg#>-l%pn4WVwzM1(b|Yw@;73fg$Z?Ook=qEr)_?M?1ENm$k#6u zrgA9ZmB9Idt`@S-LY^>4a>MkS zKU<^Mow-qjhT6B^Xvt zTIpCK;~GcpKSV`E2M~Gm9u|I2@!V{CTK4XE?|Vh3bO!y4?T`fMq#L!A8+S1s64oKb zy6obKby@#HG21+M{==8E=S5MSzL0gp_y|joASn~|-m6?~)ahiY%rPo6 zR++B}l15H}iA=N=1`uF<;?}B4g>@iX-@yTW?>YL@`||*b`SLOTXX)E^m6W^Nyk_Lf zSkHr?c#jDGLQWkxs7p6qMH;`-&d40y8hRMtb?cUDi2^hZ165b>2|;OD%+^&Z|FXC| zp20}Z%Nc+*PMjFst2}vcdC{QEY&1fRW|gs&LAB~N$y`bfw{k~ysmO*5$b-QIV)=aX zhjZfDo0R8UfOwHV(7k@)wmwJAM-Qn-*BVHoA-leq=KmsJxs%_lnrFLTzLJ4$qYDq- zGjDNgY zKUvq1ZNW$PG9~-OX9AoWK9RXOTY@*+knvWJKwDFNKF?2GwKLX`YnvJiG$1RK{!|*D zqmIrRdG7eh0PR?d5>?tk>J@jY_SOl{?kIv5BnSmSiS!fXRX-jShg563x>m_mn`rlu zkmht1A!8-Q{UE!hDBQD5#$nHXTB7O9Gal`=Oacjhu5tEvx1=+*@3IUA$``P(ysqad zc{Wp->3;VjrzOMkV>Dn=qE;_xVcUNhpZirJ!a@h#Yq}{_OpJ}~H>*7e`9x2HszLfSXKf4iX_sYT)^n&-;R?4tUubariEXdiC~=COOqK)i-4WoRRp54h zGKsZ)K`9fvY~n?RW<-aQZLo1FQ*0uPSHCPhebCkEWR~Cc+yoix;_ptooGd7**u4@4 z89i{OV8*Wv-WJq<$~Wdv143~HI3-nW(3-yTBE@JDu&D*mXq(oZTxkFVe!IGC3~VBF zG|S}BFWZ82HRKe(+ng!z#9eD~ve!Q7qU-^jkw2z^>8059e_0zwFy`>)gMgqafG|_| z?KzSH(v+c0ivlVr#YT?hm;>?kV#x+teE=N~WiW>cyVftoZZ(j8fg)NHeM=#n^IHla z^JnT&KpdF~7)aTHH@;_nPQK;jJPZXCH5 zQgjP4N40*SO}d-NqQr1|bm>o2Jd`q@9>tH*`J*!}lOyGGU*mi)jA!4|I;i%7GC0+F zh9A2_47o&OX#q`PiDg=6uVMK|{RmdyqayoJ6sk&^p5=0_h-CPu8=j0E0*9BRd8B8;xE9 zAJB*d2Fx-_9PJ5m2j!`lV~c9Jkn7I|29;ZKdnV|6czZbzQ7hZ>Hx++a3Wit3aJ5y-x zyhPg8Gdz_;)Q$3prK^;2i*YuleR`d(GyA2OFopLDT}=z4KfLjgd~D#0*mbidn=a5( zh0HZsc5Mm36f-Q?)d7P0{m|#>fO*U^xh*LD%Cr6ke6z3bm<%`x2u4-4BCkz$%juuy zMHePlCX3(SmHDjTN?3(F;kvU1C08{Ty32Q$y1-35PB+IGBuVJIYu>D)Eko7|TnOj_*MPyzw^r4P&)R;F3-E;|Ig$u_D{u;)ST|v~I-fme zMwkkRXJi6%#}BfY-ypZ#I7KQ% z9_ZS;VsEKZX_6y_6L46AW!0nSFT09cp>YezQ@!2zh9*U#_x@9vb};45XIeSiOHJ&6 zDG_I8@F{npAfU>#ykh^9d8XMZzrptcWv13LEElJ9Z^Bw7cIPpqk1?XreDLQ&uTc{l z`}^BGqs@>^B!?1g9HLC&oF7}PJ~pn)>zfzqb*Jp)wX(Dr$$j{W7M2qcGk)gic;mO5 zc{qXJQ*a25#-pGWw5 zG6#q$9vr&b=G7IvgXr>kX4F=byB%=st2C<4roL*aQw$RIX|w@YvS!n~nliNu=-xKp zrRyce%iUHjY&6v0(?k0-qYsVhj1DKbk>q>cKb85NI3PbAOTsMhzK7F4w?YzhwkV-B zsRb1{Qy2`^6})Kxc=w=1!O^G~j14KyGnDFD&F-otQj%5S9cd%E^FWjjV ztXTlEN@X9PH8m&P{IQjQ>ob_$ClA~j6_R4A+fP$Jh?+u2`04I4_U3A(78}c(ZH(&s z8@hZ|yN-1DZ7cMzS1-C8$kxib&H$36T(s)ZaT#CL&?AgG<9UHretu9INBf;esz!m~ z6pL1?K!%{WaQNw=uauR*AwlPalo6VtDyUDh$k2HM%?cn%Tk6PcoAWOAdGQ-dcVdOc z_wGS)U$_f}zcl*@&}NR_%0!sbMtc z*+9xWUd5|WvsVKI4;2rjrr0b<@j>tmMZ^io0`7-qc$G(5v5%R%{^fA8$-)|>(x8Xz z0vzj{Uyyd1>~*qiEXNVUne1Go)e5gMD!w|D-PO<-lI@N%%uPCb?gi19I;BIp2OpCB z>;b|Hjr_vqX?qa2QKqMO?nH$_lkE!ZIM$l#WrP(xc>|L3Bc^#b0ZTrioGSrSrf4#& z`tc~>oMvfQktK4Uc%OE9-XCp@9>n4(HYSD5VHp}-uexo*1ypV)SYDTyw5Wf+`0<7@ zSM!n4w_oFJ1csxdFxY^-QY^r{m-Xn)<5Pa(pG8}^QFGul)(6x+FfU6}4`^>JbvqZ= z`7XI3wRJMx=hicdOHx*&O0)Va{y&4<`Qx18gC)@tg9`{FsAkxotB9p0fb_50M^KXL z(ltx}qEDsk*ypfHsZ77{<<|VUeI;EuPL*40Kry*))vFbdL<0zj_wr~>|Nr;Bz}&UQHSLOA)k?78o6@}n`OdYX9^YxoGz`FRnB^3 zWM>ih>mws`XE28XHLD{jBjLh=ZILWz%hS&EA}t0M_WUzaG5KNz`vkn4$1e{l-4-WC zm8e;C)UmlPS3A`S;$?+Xz{3rXp*z5mV&`+dDg>x6;kTTdH|Ld%ZtG#e&J=T6T->LD zM7nYbohG_?)YH~UFg5GNy1?fAz!&W-Jihnu0-~G%&dBJBvq$Ph^5Wc5P@U(r7wUDf z&|ZRzmX_cpexAHSu;L^S>+EB?HhV3j^CSdMH`Us$dA}mN@9y*(y%9Sw>m%`s} zg3CaGn{SBkff#`Qupi?(2LDVMoYFO>-sd2j+E}=Q&P@d z(2)MPJV5uDib%OhvA-RT(XlFxpL=eFn=(B5!vO!3NP*)>#5MIHz#-03@k=yQ4&Qd%osT;JD%xQDK(}Z=2h)My7va zT}qRE1J0j14iWOvFJ;L_KpdvmyA^*i3yioFuO`RAn(cH)f8nf}U+7w&8tQLS=1#0AkFg6+b%ukzvTy+ruif*^%wHN*_&z&M%i zrLa}}9(|(6wtIdU)%K@gxxY*(LX)>(mex7k{{P?yx!BxHUPniB?A!*cPSVh_dCod)1kd2&B;w?P zTA-KU@uG#$^EG^s$*A$Eq$^^Nb!&?wCp)1|9~?ToL8Wg1Ee3%xIvOAXKhsp$c}0}JPO)~}{r z&Jb|#{s)BFD_rAcTV!?j?osthHk)*MKvIa#vw^-jIkIUM`aEO zr#qQzBGeq3IQ7^W^6HUmR%;S^AXfdO<_T47tyIK5nv0?o=^Y>hi?t7nHK{U;S4rn_ zDLYrg8>Es}_D}f$U+N4!+`C=;GN~d?A^lPZ+;Bm6ig_4=iAi?<+=~!u zj^UHrj^@-Ac5hxYK8~2q3glABJQVN4yBV!+Is>_1s&`C!vT#Y>I}|ET8YN_n%elt+ z)MivnTykGVOIt2ocqQgNQl5-b^sqA~f8zO2q;GJ{UGQ-JV>}tDS9pPsgOX4fw;4uY zhjq1lL+09LOc(lWB{a1_RmyDhH-7&E`4?^YI$7mGmKFsHNi5T0fj!Hr&Pz3=#ccf> z6$d`$PmW}JM$G_t6em_Qb_=so;1LMqQG-`nQsPN~;iK2%g1KQeJ7wPo*wI?%2z({? zK+Y}wcdO#G!tg`-MSd+T>#KsPA9I@Lh4>P40k*qk{n>HEK+!7&he~4Fp2K;Ow265$`-iAV@=(Y5^djzg2cmBTRi)M2 z3rpjrX7hTKzmYU>xdnZP;Kxl^7*>Z>Vef^`>a=~Ll9XoA=U#0jVTM8pr!qw6MRepv z@0+yIZ&&WxJy>32HOv6`vkQ)Q3(r?+(2U+tYfuCgLtu~4g@gORYUBA^;qW4JqbPR# zcUehrzV)^TS7;%~t@dR9Gc&L?Wza=t*6TTXx=T+e+HigJTD_a*|6TYlXRx8P-6Uz6 zxD~Iu*uaVo-!wtDFx&PN{SQtm79GAhlq&ig0<*j%bj!jmLXUAd7$8Y#9A-M9Xn#j8 zujB5iQ`H_WVD=@rvz2{gm)RbeyODTie{~C z^;xT4a19v1TlpdDIOGo~_5g!A(?|dDK$(SvOV|Xr2zvs3gC^;PhPtEri@F+@#Q}2= zX2M9;eE2P=gVVF{^Dv9U%l_7GuAA~_;7HkBX+5q6Zy>z6_{s06A~LeNhg!l7JX*kR zG_BtBhBq8C;?YQl(j4}nmHH=EAflrqx>Zq${*#VqcN;2zvsaN|qh4yZmOaFI{ujUd z{NyNu$JwTl!K(uM{CRU*p`Qyje`QS)-l#)M>v$0mg&7?FkiQ}yzX~FVnz{B};G@M# z+$AT{j&c9uXAhFpS#7~%XQ#~zHe1gBY24dA2o=dxkjR9>X6Cg&i1O%yPTQ)nk>q`- zL|Du~dZ{2GrcpN?WpF^d(sa=(Eu~Cbo129R;K37ExFXRcUL>~V|9wI0>vuUufAZHi zBxWB}SfMH!n0?c?$(XR%>DKoNM&GY_*RcQ>TK+YVA{jl*zEW8#->ug6?(*)$UABA0 zlQxdPFMZS@mVkr{cn9PN3%RHWaxaGO7NP;$R%ZCx=^6V=S0XxS!pNnZD=`3WxrPdj z%)S9v$ExQtp?PKugq{9}wn8sRe(=T4Q#edzAuk&9e+Q^QXtr z;q8>dUq|u*IT?aF1aSZr0i&2DpMzaM1Uewn;j{ik1K?-?OE#j*sI%yN#%=_?%AyNF zxf@Sv5XA@dUbclEiFE~u`@sFv*og#-xC{ukk7qLe{X`uY~= zk?aSgez_@w1rE%z*N%cH_9!rb7*4qaTL1u@mS_=x>;gbr_*~AV?JR&?0ca0bjE)h2 z6O}Ucoy*dcVtue~3^_3q#v@$`b{=r1pnXAf7P&1*q*0Rc6r14%QqMG!^@T*(Ug;e+ zR<4**nW3gkdB4d`gu{Q29KR+y!uX3a^ZxH4tiJ%{VoeAj2DxL26R~3VJ7$9_CA4D| zzj#_wXpb`mXB+-@(zf7hV}?Hf6vpt|Scrp2*7zT0_&?NSFvdh(>L3HaND;gA)#_dV z8Z>`uuMNPJ4RWDt02jtl7!vecteN>=+x%M-6a%P>vRdVM&P+Ibl{ciC9q>aJ8M=<6 zft#9t(*DmiZ3+Q2?QffwZmMsx*I1eqO}qhhcOR)5FMfa)#QW!4>ZZMEy#3lfhk#~i;Gs3v!+UBzBgwON?2-DfDI_M;A^VykF^q+uokt0SR zSg>e974S}(h2@6^hwR8aU00ETnBs5HcVboI#oRc_)eLgjJVtq9O#)_X+~yu$-9*tU zJ3z%S2;5iq>hfYaIhGfq)2Z&x3d^KO=m0^0_ceqQFK2N6;qdNB;$@GQju}%+m^mbe z6c@RI%jAVC8>UW4tqqx!(`TBklc#HcftZ zsQz{|%q`%ZhZ0*V|2HKhE}q_&a|q-1z$ZHO%Wk>)^*=R!Yvmt(^FpG`3Ft}Ma#5}O zeePBV{L{wr;O0^OFe`wKxOb;EMjk9)ML^;|!2Yxcct;?kj(;=+0AuyKe9!bVCv>^G z&`aJ3?I+*MvDy_zaO?8Rpna93;p_BtIyOuBsj((O=?POE3bBiQ9;WA^@(4_(rZ;n< zo~3LGF`uj0?Tt>g4QQXauXf{lp>6<0>25wa*z4a5@h+{0lKzBkk$1(D^A1a2`Fn;k2T8bb9_QeTbata z=tmLk7|$+m+nUpORMBvc-zbZiBLlvb-EWxp_PY@xty4oUYqz#;P9^e7w)KXZ9lAQh z@)RF9aTSw?jI9UGY+Zqxy2h5bQE3ED3MK0fmss9kvX8I*m|XVzrjMHWJcY?R7L}CYU&l028~4D&!W9k4mTe*G37sF(L~0I%Z)c% z-{{~x?J@fe+A%84%YG@>sp)bO;%R@uv_;NN(H*AT!c#*`S|$o;zLUqPB=p zy|6tXxafK&&ZfM5Bjjp#m8iUh--P1}rf-5e>`Zjj@9He#KF zA&zLN%;6t#TsRHfBF-*SnhJOc=WOfzo2X`*wo!A98uY=#f&#V6f{4(T5V2aB%|g9m zSpJ!UrOSTe#nnSpbb@Dc#xCAE+3|>LjbquZrs3;5muCGx1-~v0+THI-`c$? zN~)B7$sS!8;iYh2f*+pYyypl;Rp2!8IFZ06CH8nQF>vn4)oXmZ@cHynX5HO$*4!ip zU$0e6$CKgaL2a)^@+`kFd@B*x;rd(4;7F`6qVNTR5BfAJT)UN>t$SpTY z&P{MmK5$-6o$9oUd*!)gex{|PF$=+il^m2`p4UI91nZ2ALb8^9t)aS(XEzUwq94?| z^{q78f9zGWcMCozPCHq35~8izcnR`>C{E2bHXbaLPFz2+bFpz*m|9>JrOYu~?4E?x z^gZvsZ+HSm!wS_h*3y(M3#gILe;DbVZujdk!^HJWhhlw1PIgWgXJm{y=P=GyB=H~d z;lA0A9xJUPW;^rHvW;t_v#y34c$T@@68T&w746-AyIXHZkkH9+5}D%yb2I0KfVRRd z90omg18)?<&L$^wI^XMq7Z%x?ua5zb3-WP4XdUgj_47Y4L7`i*$#L zjgpS^9ww)le1G$tE=keHsTa622M^|lnrpwOwJK=fRyIEMU-zK zF`tilhUYk{GQSpL*?*N{vYTW#fkR_3U9IK=g@G3$dQA;iO%Ea7v+v>7*m3a4>9-oG z95R`*%x8*o-j#OcPL7SxmnM<{hBk?M-HFq7U$Omv;PfX((hE!mJ%IGLFiUpVnU)x}8u0jE3C_Zn&~FrSontG#@xmO@KS7k~WqF(+sg-_; zoM;I}!_D65#2V98{)M{Bq;p+YjY12LV8uZ1rGL;-nj2D%aUq zCg76U$QUW6U3;ceY(MIvzt~oviGA{)!eSWN2~gOH#c9z;wW!PRL(0I8`8}u9K{))Q%Nj#>A zvChn~hkP!%=s4S(hd6j?iJzf99Jfad61-}E{Oxa#P|(0w(=~sjl|I?L-|j=ZpCW|Q ze!jo%36%?4RjY(|nW?~j?1>67$hasHwim4N{QLY1SAU8|60O1r*i_t>Y@<)s7|M2t zRH{So@C@n&{$o$0fLDLa($MR)JEsh-7C-IguEcQ1EazZZ=b79;2o@qbhq?CHM> zL!u7}kt4|?)sl8xw!yeR@lKLww_rNS9 z9M{~6DNGJk4vOwvasQ{79xv1Z%$fg8AK;5_7_ve0g`RXW$ms<9CZQqAAVUr{FpPd< zXbh6d+G4H$h83lk!1iA;^pvMGWR7(RY^s05C>vz);O`W{qFJs$>5UwlP&xYdTb$<& zIZ}4y=W~GOQi^;&{kOSj+Sz~l#S-KY=UI1#KlwM+up)6s9{v-v#S%4|HYY!Q`L7NL z#Qn^^@c&0d6f|X=NL(R>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mjoe\u001b[0m (to cathy):\n", - "\n", - "Haha, love it, Joe! Here's my response:\n", - "\n", - "Why did the scarecrow win an award?\n", - "\n", - "Because he was outstanding in his field!\n", - "\n", "--------------------------------------------------------------------------------\n" ] } ], "source": [ - "result = joe.initiate_chat(cathy, message=\"Tell me a joke.\")" + "result = joe.initiate_chat(cathy, message=\"Tell me a joke.\", max_turns=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "At the end of the previous chat, we instructed the agents to stop the conversation\n", - "through human input." + "The comedians are boucing off each other!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Human-in-the-loop\n", + "\n", + "As mentioned earlier, `ConversableAgent` comes with a human-in-the-loop component.\n", + "This is used for providing human feedback to an agent and a mechanism to \n", + "terminate the conversation.\n", + "The figure below shows the human-in-the-loop component and how it is used.\n", + "\n", + "![human-in-the-loop-component](./assets/Human-in-the-loop.png)\n", + "\n", + "As shown in the figure, when messages are received, they are first intercepted by\n", + "the human-in-the-loop component, which decides whether:\n", + "\n", + "1. to pass the message to the other components that generates an automatic response; \n", + "2. to \"short-circuit\" other components and returns a human response; or\n", + "3. to terminate the conversation.\n", + "\n", + "There are three modes for the human-in-the-loop component, specified through\n", + "the `human_input_mode` argument of the `ConversableAgent`:\n", + "\n", + "1. `NEVER`: human-in-the-loop is always skipped;\n", + "2. `ALWAYS`: human-in-the-loop is always used, though human can choose to skip;\n", + "3. `TERMINATE`: human-in-the-loop is only used when a termination condition is\n", + " met -- this is the default mode." ] }, { From c37bb052f1b8e59874ac1cb5c2eda6e5077fc7ed Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Mon, 19 Feb 2024 21:27:18 -0800 Subject: [PATCH 06/43] update --- website/.gitattributes | 4 + website/docs/Tutorial/.cache/41/cache.db | Bin 0 -> 2273280 bytes website/docs/Tutorial/code_executor.ipynb | 14 +- .../cell-8-output-1.png | 3 + website/docs/Tutorial/human-in-the-loop.ipynb | 586 ++++++++++++++++++ website/docs/Tutorial/introduction.ipynb | 37 +- 6 files changed, 610 insertions(+), 34 deletions(-) create mode 100644 website/.gitattributes create mode 100644 website/docs/Tutorial/.cache/41/cache.db create mode 100644 website/docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png create mode 100644 website/docs/Tutorial/human-in-the-loop.ipynb diff --git a/website/.gitattributes b/website/.gitattributes new file mode 100644 index 000000000000..c91090298e20 --- /dev/null +++ b/website/.gitattributes @@ -0,0 +1,4 @@ +docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png filter=lfs diff=lfs merge=lfs -text +docs/Tutorial/assets/Human-in-the-loop.png filter=lfs diff=lfs merge=lfs -text +docs/Tutorial/assets/conversable-agent.png filter=lfs diff=lfs merge=lfs -text +docs/Tutorial/.cache/41/cache.db filter=lfs diff=lfs merge=lfs -text diff --git a/website/docs/Tutorial/.cache/41/cache.db b/website/docs/Tutorial/.cache/41/cache.db new file mode 100644 index 0000000000000000000000000000000000000000..5067777e7913eb19608d1782648d11d022a5e780 GIT binary patch literal 2273280 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%0D##?OGowA&{|Zi$#pZ(&^ol@I187dq}4M5 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

ba0PkCZR1D${9A}rJ(cxGsR>Fr;gdH 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%0AQW3i@$r&vxl{H5d z|8X46akI)^X>v2(m$BItUvGK?osX{NU1W4>hNbrJ5$R+qwdNfk&kp_CVLshA$?1Og zC#QzKKFp{4COO^D2>t)ie@WpFe=q`!03*N%tVRSD?^!rKochp6U2FgJ>sM|CKXdTZ zi6hgKGY8|hf_LPCBB^fCv?TV)vlXjl*OUaMedqm*F9;I?q#~Vb*7mWs&mF^N{j#e$ zV#_Xx?LVpv6VjCDdL|pf%Is0>wkxPcxO$d6&q(2{D<;YnS*fI>GNEc&ua;peN}+?DvNY5{d@ZSb3(9>M-uG6zCVKfJyzwwvH5+Ml}UB(@Z`biBbB35C-$5@ zpG&G>zciV)P2F`A82x2T%Th8<-TzOPP*!s-8C4|T{qML!)u)1@l)UR*cJnH34R{2i zs^vKVW@Ne>@Ux~(R&mnSMK2VqW|CDqW_##^E znps7MC-G>PWlQSYtFcnR$HWLQ0*nA7zz8q`i~u9BiV^Vm|4*fcKDCMuk`Ij$U<4R} z#3HbGc41~X^^wDM^1k}&sO0^A*&!LMkrfJ3lEa1za0fx(hgXz(VeUIum)Iyz%EMw1 zs%2aVmTO2kC?QBk#I?^XWwu7u1y_!4RgAXhU^f6S8RuK2`dN=si_j4oWi`&5qvRsi~mS^f;-lE(|>iuEGdSpO*oa3VozkyUm^aP z#ei2r#vMHC7OQvc$J6^8PdvZ)@B;kl9;)6tJDb%qA2?sFG12aX>r6fRFbHgj%ndrm2weLSgp0?8++Ff5A_uw1h;&?S=fEI3-eE=75PT=GRSACM zi~u9R2rvSS03*N%FapU#K=A+T|22g_{J{t?0*t`Tfx!FLEu0xny>PNlsb9M@Dy81L zqtze?^+?4GP@vooKT7dML~yk&NO7&3Yu)IOwc)pxQ6&fNYEo9q<P3L0ZdH;HlQ=Di@jnawSMtz^2)Xo@-JTgx|JY>*iWFE-bzG zPVHcoI{Z58#P4+o2nxcrtd=1VgWrc)K)Y?xHB#62s3|Wfh$Z(ge z`A6bs(bF&dFeao^ikz(oJs7>D(VW&;(?%5`Cxip1SwQbU{;}n3lKTHYoCyB^2U`07 z%@+RuS|tAe-LHM$L%;jY`$PDD?*Hfh|A1Oj$|^a{fL9I-M8r}?$U$pk#H4O%FbElk zF%J2L^lMerc4h9XAi6GyI?r?cPXO$C6c}>LGDNw0S*`%slIb9_v`LE7`B1q3|2q6@ zTGuljLMEduh&rF6*v!|h#~WFz@W(etZHSMO5nu!u0Y-okU<4R}Rg3`V|E=Pa%ZJ7Y zFanGKBftnS0*t_oLEs}thQ54P^n|eG7?2Di0kCUv9;IKHsCcFM9>f1SSA<)#_wp;3 z0ND2ETHZiY_#X^EkpK6#kKHx&l@UJOM6*Z9dQAA~e%FtF@6gv?$*21!Io(gM#hh@< z+BNuh&0lW(AGfZ(eR}8z*RFZdYj4a{!LO141lIiBJGKv1S1Qpr$TluBr&l^g>@HY- zTQx1GDfzeaXzPmu#LNw!C!-(1-NA$l%W+R$pi%!UlJ}@(%5BJwhCh;7xnVT$a#xqm53yNqceV7 z5{oL*dr@*Qg#rstF32{7+Z0|@8dG$o2)&p1eF!TqS(+UomH3E}Rg~StiA z>Fs!@IWiaiT@0Dq-aa|>)SBqCWlx<0!Ar2ioik17G(#sU;uji76(S$PBajZ_wxdKX(j}U?oTSk0A|klxdWMBu#vZQ=7jYIF z`QPF~q8}6S*W_F08YSd`!;?u)<60AU)`WCURq$gL1`T>aivB9q?h*QttgJ!Xq{9Xe z?r(Tg;=SZtUAiQvDH*Bpc96dfaV51#_<7%!f>$(zy&dJ3~!pOq`)G=O0+K+;%kKoGYqUYm}lgqShBdvSE*QX2Q2tmFO?cN2YGmWm1@ z3+WKY0c(ZctTJCxERl-dbn1J#jCWmKLsS3XKl8GokM7yHW9lpYpUgy|{Sjrp;UO z93~7pbM#+Zb6lC+;i63%S7o65Kd-%P=p(xZH$Tut(jGH0G%x4o5dC7bp2}lIU}6G* zP!xf3x|mqAW*K^PQ{Y9mpIQbJ#GInHfozG!uC8FDb(ObJqg98uun<npX|+JgpLoHsEmAgNA)O{w?$aq6%JXc{3KH^bE>?}7><<5ESz3Xa}~cYk3yfuW%G zd&IC@TQ*{r#QGl<8N7xtljx zV|^xDv=my-(i+2G;Fs8ttJ31&$Qb5Afy~q+TP85#(YG~zck8#|Jz&`~E@ni$ODu%p z9E;_euGlv2vL{A^3!1j$B%LF=HE}HBTv+Hw@ZU@ku9hb3Op{tA*JwkhH7qI4`<>MIE1Q^HZ-p4g(7v-@f@2B%MTUK<{j=Bq|E1LWFC}27%5RYoU<4R}_Z?n1JDmFXSiN_@`kJU)m*ucgfo+SHyUtBZ z)YVwq`L4O9)kEWc=h=$w@YxPubaJsB{*CC~?|R#EpIUvFcfkwWMX?w=N3YCLPb9A; zO`x=nN*gWjmvka~MUMjN+l~p#>KyeW21<5Ko7%4D1F!AZP{h84epeo$4Nbe%&O>LT z9^apw_0a85V0s8OsqK7NtDsL!_zS!z{U-mBdRVoh1MN7ZTC`zoDi7|GAd_ z{|`p$|9|qCm%sWuV}BFU|L@gM*#F2Q$c3RixtzU0St0tXQt9!jHG( zq~E$2jVzq_6E0ve0*nA7zz8q`i~u9R2n-GZkNJwY*ocq($Q91XXRPUq~4hn_)#<+)XhDA|>{qiOD%kL5wz_sE2I>UzFwq0rWF2y?1 zjY6)|mjL?kqu|=`U<2sG&k&{ut_>3*y!_fQ5%v$=>3-9HB;x*Te~9~oM`uo+zjE%B znw{UZf19~;cVTks;>AgOI;q6HdVwV8%DkL$0(lt*THmOJ2^VX__`h!IjaDPHv!Tg` zH1HVz9$ngIl+$cgbju0OxTML3nI!-Jk0yfue`yQ<|3VA@|MQXf|LPYGz5dD3Qz866 z`~QoEqgL|2^O)bKRbJcGiO+f0Rs`s`6+Mr1SEI2+MUQDtQ}kvEyz`OlH!Vxapx-o) z)+({qVgG;8cII_2qit$Jn)0-W80;`?T91lsC(*D&?L>GAElVa^s?iIIo@ShZEZTL@ znuI8pLUc7^_yVuo~6Oc z7z&CY&Cr?jNYYIUx5}Ru`u}y`P2mrJFanIgszu-fcQ2eDPJQxlUBF-68CAf~D>Gi1 z!DP!*2Ni|iRvyzMA_8DcZ@Gq$3zD&Z5dy-BXTl8ipjGo=m+XS3>+n>rIeRr*nd3*A zWQG}7+BdZA;p&PKWA~5AG;A< zrpDqfI~FY`6WnAIufiDa*?Awy_vt4Z?z`$Qu2|E>Oiztp1t|7tY-|9wCA-p%)&4AK9K z2{Fz7f9(H9Z4F4J&$J1{85-jX{hZ31BLEsaAFanGKBftnS0*nA7 zkT3*1{{Pn0x?2}7MhEqS*V8^driOP<%yvwz35we#TNd}7)4 zugs{jLvdPIw@667mncFWm3R0@6>Uk^3JTEyq+h~%hR6X~$|E_`%dQ`hPMhPBVIn0H zG=XEH$lqk3JRu!1YzJJyI9#gew-j)jiDi#2yAbs$mSmYac><0|?GjM)rk=z1q%D)a zn-aF9lB`*_WajXR;n+#?|NGHI@c&y|{Qth*!vFtEB>w-||L0$B|LU&MF8n|3|JSYg z52+XZ!G`a{1AnYG1m3-E;fdkYJ2%#4-%qcU>^nFe*%gdA#TJ>|IkiHT%2G+K*jh%2 zeACDj#ZV>$22JE-TUOC$%CT*$NWzL;xHcmB53!^=R0|db3QtT-NLjON&~Qi_JZuJw zS_b1ET6!Y(@zgnW8jFR3SaP(Y(2n94Tlj0jTNQqPuw0~HQF4upicwS%JI#uu;K!gn z7PPI5vAOKO34F6@RVIR9^+r0xhYkNJlYmG}N5O|YrR%AwqHxw@#{ z_srr$>MnJMy7O7}foV4_o~^FWn6|Tcc(1wh!SP?PC%VjwPd>8n+TqmO*ENRCM^~gC z7#s&~z@Qnv4Y)xg=Q74D<1a6WF$<40W*zU(n6-1ysncgK9@(??@!k9OPwv|_S8PjL&B=~}FZ*|_ zcOT!W-lN{F-s|1Ta&<$7c0WpX@#wb`F=~Bp%c!+&>8N!i%BYn;|JN^3Uiqyqqt?47 z7A_8_-nyePYNeu%T0Qpo-QaO+8NC{PIjEj6|9-^mfXc%7u4yg z;_fLeZJfG%Mo#K*vi}AwsS`9}d@B(n#_cU5#^}-!<5f{cjMrWLm8m!X?sHv64D$b5 zf9rFp+kfk}(xwG`!XJzPBftnS0*nA7zzFmmfzP~d=$m_@8&LJGzCw|>s2SKmj!AI~ z7nSw0T(PC1BHJ#?qE8vt>(nFC zv{@cUlnsjSSyS{I(as*CC`rzseaNd^Qz6sQ95<`%l_odieHoig@%5%RP_GlT6#QG> zMTUy-7FbT?DxQP^)eE27IrQxUpYEIFbpO~}&JMl(l`DC=XAYh^ab$XO=3xBp?%tz= zBR8Ub{cSsk-nF8)(W=6Ayq|tfokzz&>E*_1RwG|Gzb*9tx2h@p;SWZD5nu!u0Y-ok zU<7U`0?*vLFgu)j=Jq->dCiH+O!l=^c9|WuOk*=&pD)=7S zg3vI8@ibbfglLwh7lZ~Gk}O}HrIUIZqGXc{^fg&0O;-Is5acOVzT(wGB+Z5_I)^F* zOpc)9%4)*Pr&fKj6x-Du%2I~8se<@)s2=Er<+N?;F8m{}C>F$qHT87FLdZ!KGBda< zsWs6U<*?)Ti@J^~)Y*c7_YTn$Y9no!>|J~*8V(u?M5+ZL;kou!&0J1;!hK}R)@}4c zTTyvUj&3k9zcfIwkuO}9s9*Kqj zY=2nz16k`*Nj>OfGl%k(L;KEI$1YqsX3ibkl~fk~muD=O>U}a~hZyfhq!~J$d9&{C zlh*Q5TE@vwyL6S)W#23@P3tnww+i9TgtU*or>09aZH=t#B^#;KXnBM}5yeFzT&&+k zq{uZySuUf>xZbkTX2~^l#TFue1YKKpP1Z_12oT#9L=!?9$>S344LeCX$3II1|3BWs z|Ns0_{{L^H@c%#Zvs*saT9-GL>J95nu!u0Y-okU<4QeMt~7u1Q>x;iva2W*KOLCy5p|fM)ANOi~u9R z2rvSS03*N%FanIgQUt2Uhd%h?=o0Q88_Q2O+n4pPMWZb#6j12aR355ZG+~+M5$HET zLijIUyMO2-hxv5hB!Te1`s}?!A0Ok>eUqH-uL=GChWDrNhd&qrMt~7u1Q-EEV6X^0 zt1P@>IQ86#hFtz^RJnYQ`>mk#>IN7PM%+cM8rRk~oun)0CmK9got1#B#H0p+mDb94 z#{VW&Vp1Ex?%V#?Px_D44)CG=v;!P|Y?oEJc;wR7bpG+3JI&oiS-bT3%<&zGO$7MK zeU=7Ke)MdNOM$)+X!H#@cHp026Aa1sWoa~R7Sk9YH1hbbwTH;kWf!mE7RhhJYYVWH zqEbvNmWT{MJTUqHt4R4K8}219S~o!UJW0g&Qcq2zhd{V%7n3Ca|34EU|9@qR{QvKk z$p25=6UqPotxtYQ+VB?#LiGRPM%KZJr|k@%q&cVa$eoB5fVTLrnmMQQ$?1Jad_s(g zPYh;IY`tY7n{sdr$6z;K{M#7;Mt~7u1Q-EEfDvE>7=hJ_fZ+dc`Rx?`@CPHn2rvSS z03(n*1fJWrAP=YBYd0A4<53xNHkcEM(<_{E+PSjJ26H!;!Q2wf1alWlnOD%c3FR&X z`Tv6ZxBerE0N&dl5x|kDi@P2IwMiDH(Qp)Z5m0U|Nklx^#4Ok>HiZi zUbB?{-y4blf5#n*|FCD`2SWINaYotyF9{BEj5B*aLfB1tDU<4QeMqpJVu()X< zJ)HVrAc^e_QHgSHEw6Y1T`NqLw=IG8k0tM1v23tW@y}vw3t}QV{5s>$MSef|&ue;) z4NKnnl-&$Peq#Igyu*B@|46L=$NIziAKN;ARJn9`OM2Qkx_#@Rqq}V5f~ua}aXG21 z{}&FyUeX3dU+?@sZ59={Stx>ehqFb4u$SmAuuUmr7E8J^?0CHLt(@M_%-_ z_;mFiE*}{qzz8q`i~u9R2n-5=HQGDw9jf+_GS!nq10~3rhF+1zU~XO14B1h}`WGYD zxj@>KC0BFkrmkG#>MTVrP#b1Z%9>?E(hTa@RmsO5{99Hof}oJ~I-6&YwAL<{G}RxR zmotuDldF`~ijlG+V8FE; z5LKkI0v1%2=QJZPj>^irgcq#Jqa7P{RO5w&sd`1qDj6;7F{l|?*F`Hnv9Fu)zMdGB z(n>}~IiHT8j9%!x;yCns9TVqEF>Iv`5|Mp>7qJL`%~Sf&`_DzsU*kI?xpxLm_fh

8?oJuwPeVnAx4!cwLlgb2vQ!S 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%0D%IUxq6={M zFZfI?8rO5K=@Qb^B5L$4l-%Xxv@hz!Jeg`Oxy$dw%B|67I;Eibzq#xa$&@@xa-HPYqnS`yMZAY&n`4_|58aGCMcx&vh$B0pJHVrIDy`|CYNdX4&y0EAoOgQ*Lu+%RVe=M%VgJY<{`)Of`Ssyx%#$LrqEvQEt<+NiwM?Oyvkas!r2aYvf2Fzl$~zCg0uPn;96FkA}jT z(c#lGC(_-g&jf~3nNH>0SYN!~tD66&qMt=eWreN)jT{Ltt^Vf?_1|w^o_EAoXOjO% z{B=(B|F69M!#D2!F;_|dm)R=-I+t*b;e#Jrt7y>>KKL!x6hoNt&83z7_+5n)jI+ES z^Kevmjm4GsU1-}n;#ng#E9}&@udsUvbO!`L00ck)1V8`;KmY_lV09BH>i=*0{BN#q z4%mAT009sH0T5V01a7{NYj5^_W9_2s|B#LBZx+MJVsG(m*-~#**tc2i&Ahl9{dhX2 zW|YYMI&h*uL^o1NZoxZ1SASdh7Wo}n5svXCs%)2it2}$ksl8_25vQs?Guvwv^!fRD zR>qmxpi$7bZ_uLZGg~wY`fjucMFw;8dFy&ro^Z)LNm+j%{8M!$Dl)nOAo=T^rDtjc z`1hLPaKFSxfa&4T*@4-CNNA=ja48u*Io&NkpE#Qw9rUUZpm9OVE#%jwR7EP}8yC)o zLViOulL%AyL@+EWN?|m=UQ<;?e~~70_4Av`Ch;%d?0?ytv;P_T|5|7I|D%7Jymh^) zlK!ueatoG4S&cD?J0e&D+`>s4PtdV~ZcNY>5C8!X009sH0T2KI5C8%15h&{a zPx|~%dav*3F$jPF2!H?xEG2>0&g43peXs9a6yc*bB0Nnvi)2YN%)M`K6OLxcVtKUo zZh4B6pAj`m_00TqbtOXg@^%Jge4Y17BNiU=bzy=Ie(L?P+6t7-wJzvylEp` zmEMK6mq`}U#r$7=_@mM@74=(|XLkS0*{;cMb@X`efw7?rvppjRlw+r#ABi3(B?J87 zm@0>*bm4_U%$I*)Kz~&z6%L5i(|Q3LqH;n`$AWYvPFiMQ9a*R|S;*JRiHLNuaNL(~ zP}HepN(~XkJnxT_k(8`kTFCFMSg|0u@YyZK$^|3yZ5aFEC+m+=(W{W}I;FOf(V8q| zS~Pl*B|{T*p1(*+RLr}$^tU>DNZ}Ydt_xiq2R)?!PkTcDf7mkrf0JeY|5J|i|Ev2> z|MQ6t{#Hr<$Nc}#2`w&#F#f=4FYhz2O=?y4`JJdv-e-1-8N&EmtQ^OaB} zb+Nh9^D@r=SLBI)_0o_O9*txVNkg*IJviAOmrf6P)hgi0`TsMX(Erz3^#AP^{eOoe z{r}2GKN)`PYwuOk|1tkRAvts?x)c|gG1uN8z>oU1x&)Y=sLmk3?-X;;XKt~wLBM`1 zW|shSBV2=k3vJsQ1nf89>>Bl6Lt;&RVEPF7b&Sx~Wm=eyr)Dm_!t zf6cPg2RM0baG)bTG8F0#PfQ%`O9h4x&B~|74rN8JivF7?Vp4)m`;U_)T{Iyi37vgy z9-9CEsweb+zeWFVx9I;pj`aVlue>ezKR8@T|Hu4)%>O54n&5b28e!~XCG!f7X@1~e zq1~&z??xY3BfHhv$MghrdFE~r9R&dp009sH0T2KI5CDPIO`xd%-|;oCH^PZwZ2t)rc(db<&pY_`;_#B-pT$kH9MUzjh>j" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Human-in-the-loop and Termination\n", + "\n", + "In the [last chapter](./introduction) we introduced `ConversableAgent`.\n", + "We also mentioned that this\n", + "class comes with a human-in-the-loop component.\n", + "In this chapter, we show you how to use this component to provide human \n", + "feedback to agent and to terminate conversation.\n", + "\n", + "The figure below shows the human-in-the-loop component and how it is used.\n", + "\n", + "![human-in-the-loop-component](./assets/Human-in-the-loop.png)\n", + "\n", + "As shown in the figure, when messages are received, they are first intercepted by\n", + "the human-in-the-loop component, which decides whether:\n", + "\n", + "1. to pass the message to the other components that generates an automatic response; \n", + "2. to \"short-circuit\" other components and returns a human response; or\n", + "3. to terminate the conversation." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Termination Coditions\n", + "\n", + "The human-in-the-loop component checks for termination conditions upon\n", + "receiving a message. The termination conditions are:\n", + "\n", + "1. Message-based: by default, if the content of a message contains\n", + " the word \"TERMINATE\", the condition is triggered. This can be customized\n", + " using the `is_terminate_msg` argument of the `ConversableAgent` class.\n", + "2. Counter-based: if the number of automatic responses to the same sender\n", + " exceeds a certain threshold, the condition is triggered. This can be \n", + " customized using the `max_consecutive_auto_reply` argument of the\n", + " `ConversableAgent` class.\n", + "\n", + "It is important to note that when a termination condition is triggered,\n", + "the conversation is not always terminated immediately. The actual termination\n", + "depends on the `human_input_mode` argument of the `ConversableAgent` class." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is an example of customizing the message-based termination condition.\n", + "In this example, the termination condition is triggered if the message\n", + "contains the phrase \"good bye my friend\"." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "from autogen import ConversableAgent\n", + "\n", + "term_by_msg_agent = ConversableAgent(\n", + " \"auto_reply_agent\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " is_termination_msg=lambda msg: \"good bye my friend\" in msg[\"content\"].lower(),\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is another example of customizing the counter-based termination condition.\n", + "In this example, the termination condition is triggered if the number of\n", + "automatic responses to the same sender exceeds 3." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "term_by_count_agent = ConversableAgent(\n", + " \"auto_reply_agent\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " max_consecutive_auto_reply=3,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Human Input Modes\n", + "\n", + "There are three models for requesting human input. These modes combined\n", + "with the termination conditions specify how the human-in-the-loop component\n", + "behaves. The mode is specified through\n", + "the `human_input_mode` argument of the `ConversableAgent`:\n", + "\n", + "1. `NEVER`: human input is never requested, and the termination conditions are\n", + " used determine when to terminate.\n", + "2. `ALWAYS`: human input is always requested and the human can choose to skip,\n", + " intersecpt, or terminate the conversation; message-based termination\n", + " condition is still enacted upon if human chooses to skip; counter-based\n", + " termination condition is ignored.\n", + "3. `TERMINATE`: human input is only requested when a termination condition is\n", + " met -- this is the default mode; if the human chooses to skip, automatic\n", + " reply components are used; \n", + " if the human chooses to intercept and reply, the conversation continues\n", + " and the counter is reset; if the human chooses to terminate, the conversation\n", + " is then terminated.\n", + "\n", + "Let us see each of these modes in action." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Human Input Mode = `NEVER`\n", + "\n", + "In this mode, human input is never requested and the termination conditions\n", + "are used to determine when to terminate.\n", + "This mode is useful only when you want your agents to run fully autonomously.\n", + "\n", + "Here is an example of using this mode to run a simple guess-a-number game between\n", + "two agents, with the maximum number of guesses set to 5 through\n", + "counter-based termination, and the termination message set to check for the \n", + "number that is the correct guess." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "I have a number between 1 and 100. Guess it!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "50\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "75\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "62\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "56\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "53\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "agent_with_number = ConversableAgent(\n", + " \"agent_with_number\",\n", + " system_message=\"You are playing a game of guess-my-number. You have the \"\n", + " \"number 53 in your mind, and I will try to guess it. \"\n", + " \"If I guess too high, say 'too high', if I guess too low, say 'too low'. \",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " is_termination_msg=lambda msg: \"53\" in msg[\"content\"],\n", + " max_consecutive_auto_reply=5,\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "agent_guess_number = ConversableAgent(\n", + " \"agent_guess_number\",\n", + " system_message=\"I have a number in my mind, and you will try to guess it. \"\n", + " \"If I say 'too high', you should guess a lower number. If I say 'too low', \"\n", + " \"you should guess a higher number. \",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "result = agent_with_number.initiate_chat(\n", + " agent_guess_number,\n", + " message=\"I have a number between 1 and 100. Guess it!\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Yay! The game is over. The guessing agent got the number correctly in exactly\n", + "5 guesses using binary search -- very efficient!\n", + "You can see that the conversation was terminated after the 5th guess which\n", + "triggered both the counter-based and message-based termination conditions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Human Input Mode = `ALWAYS`\n", + "\n", + "In this mode, human input is always requested and the human can choose to skip,\n", + "intersecpt, or terminate the conversation.\n", + "Let us see this mode in action by playing the same game as before, but this time\n", + "participating in the game as a human.\n", + "We will be the agent that is guessing the number, and play against the agent\n", + "with the number from before." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", + "\n", + "10\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to human_proxy):\n", + "\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", + "\n", + "75\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to human_proxy):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", + "\n", + "I give up\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to human_proxy):\n", + "\n", + "The number I was thinking of was 53. Give it another try next time, it's all about making educated guesses and having fun!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "human_proxy = ConversableAgent(\n", + " \"human_proxy\",\n", + " llm_config=False, # no LLM used for human proxy\n", + " human_input_mode=\"ALWAYS\",\n", + ")\n", + "\n", + "# Start a chat with the agent with number with an initial guess.\n", + "result = human_proxy.initiate_chat(\n", + " agent_with_number,\n", + " message=\"10\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you run the code above, you will be prompt to enter a response\n", + "each time it is your turn to speak. You can see the human in the conversation\n", + "was not very good at guessing the number... but hey the agent was nice enough\n", + "to give out the number in the end." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Human Input Mode = `TERMINATE`\n", + "\n", + "In this mode, human input is only requested when a termination condition is\n", + "met. If the human choose to intercept and reply, counter will be rest; if \n", + "the human choose to skip, automatic reply mechanism will be used; if the human\n", + "choose to terminate, the conversation will be terminated.\n", + "\n", + "Let us see this mode in action by playing the same game again, but this time\n", + "the agent with the number will choose a new number and the game will restart." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "I have a number between 1 and 100. Guess it!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "50\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "75\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "62\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "56\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "53\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "You got it! The number was 53. Well done!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Great! That was a fun game. If you want, we can play again.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Let's play again! \n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Wonderful! Guess a number between 1 and 100.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "I'll start off with a guess of 50.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Alright, let's try 25.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "How about 37?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Let's try 45 then.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "So, it's lower than 45 and higher than 37. Is it 41?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Then it might be 39.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "You got it! The number was 39. Well done!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "agent_with_number = ConversableAgent(\n", + " \"agent_with_number\",\n", + " system_message=\"You are playing a game of guess-my-number. \"\n", + " \"In the first game, you have the \"\n", + " \"number 53 in your mind, and I will try to guess it. \"\n", + " \"If I guess too high, say 'too high', if I guess too low, say 'too low'. \",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " max_consecutive_auto_reply=5,\n", + " human_input_mode=\"TERMINATE\",\n", + ")\n", + "\n", + "agent_guess_number = ConversableAgent(\n", + " \"agent_guess_number\",\n", + " system_message=\"I have a number in my mind, and you will try to guess it. \"\n", + " \"If I say 'too high', you should guess a lower number. If I say 'too low', \"\n", + " \"you should guess a higher number. \",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "result = agent_with_number.initiate_chat(\n", + " agent_guess_number,\n", + " message=\"I have a number between 1 and 100. Guess it!\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the previous conversation, we were asked to provide human input first time\n", + "when the counter-based termination condition was met. We intercepted the\n", + "message and replied \"Let's play again\". The conversation continued and the\n", + "counter was reset. The game continued until the counter-based termination\n", + "condition was met again, and this time we chose to skip. The conversation\n", + "continued again but human input was requested at every turn since, and we\n", + "chose to skip each time until the game was over." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Summary\n", + "\n", + "In this chapter, we showed you how to use the human-in-the-loop component\n", + "to provide human feedback to agent and to terminate conversation.\n", + "We also showed you the different human input modes and how they affect\n", + "the behavior of the human-in-the-loop component.\n", + "\n", + "The next chapter will be all about code executor -- the most powerful\n", + "component second only to LLMs." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "autogen", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/website/docs/Tutorial/introduction.ipynb b/website/docs/Tutorial/introduction.ipynb index 18da3a292b28..d58baadae4d9 100644 --- a/website/docs/Tutorial/introduction.ipynb +++ b/website/docs/Tutorial/introduction.ipynb @@ -64,7 +64,7 @@ "1. A list of LLMs;\n", "2. A code executor;\n", "3. A function and tool executor;\n", - "4. A human-in-the-loop interface.\n", + "4. A human-in-the-loop component.\n", "\n", "These components can be switched on/off and customized to suit the need of \n", "specific application.\n", @@ -238,39 +238,12 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Human-in-the-loop\n", + "## Summary\n", "\n", - "As mentioned earlier, `ConversableAgent` comes with a human-in-the-loop component.\n", - "This is used for providing human feedback to an agent and a mechanism to \n", - "terminate the conversation.\n", - "The figure below shows the human-in-the-loop component and how it is used.\n", - "\n", - "![human-in-the-loop-component](./assets/Human-in-the-loop.png)\n", - "\n", - "As shown in the figure, when messages are received, they are first intercepted by\n", - "the human-in-the-loop component, which decides whether:\n", - "\n", - "1. to pass the message to the other components that generates an automatic response; \n", - "2. to \"short-circuit\" other components and returns a human response; or\n", - "3. to terminate the conversation.\n", - "\n", - "There are three modes for the human-in-the-loop component, specified through\n", - "the `human_input_mode` argument of the `ConversableAgent`:\n", - "\n", - "1. `NEVER`: human-in-the-loop is always skipped;\n", - "2. `ALWAYS`: human-in-the-loop is always used, though human can choose to skip;\n", - "3. `TERMINATE`: human-in-the-loop is only used when a termination condition is\n", - " met -- this is the default mode." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ "In this chapter, we introduced the concept of agent, role and conversation in AutoGen.\n", - "For simplicity, we only used the LLM and human input components.\n", - "In the next chapter, we will show you how to use code executor -- the most powerful\n", - "component only second to LLM." + "For simplicity, we only used the LLM. In the [next chapter](./human-in-the-loop), \n", + "we will show you how to use the human-in-the-loop component to provide feedback \n", + "to the agents." ] } ], From bd4eab1a47a431a2220773ecea28cedb85d0f017 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Tue, 20 Feb 2024 18:34:23 -0800 Subject: [PATCH 07/43] merge --- website/docs/Tutorial/.cache/41/cache.db | Bin 2273280 -> 132 bytes .../Tutorial/assets/Human-in-the-loop.png | Bin 38796 -> 130 bytes .../Tutorial/assets/conversable-agent.png | Bin 30650 -> 130 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/website/docs/Tutorial/.cache/41/cache.db b/website/docs/Tutorial/.cache/41/cache.db index 5067777e7913eb19608d1782648d11d022a5e780..704b96a6bd28f4203da864131455a3ebd101d22b 100644 GIT binary patch literal 132 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%0D##?OGowA&{|Zi$#pZ(&^ol@I187dq}4M5 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

ba0PkCZR1D${9A}rJ(cxGsR>Fr;gdH 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%0AQW3i@$r&vxl{H5d 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

8?oJuwPeVnAx4!cwLlgb2vQ!S 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%0D%IUxq6={M zFZfI?8rO5K=@Qb^B5L$4l-%Xxv@hz!Jeg`Oxy$dw%B|67I;Eibzq#xa$&@@xa-HPYqnS`yMZAY&n`4_|58aGCMcx&vh$B0pJHVrIDy`|CYNdX4&y0EAoOgQ*Lu+%RVe=M%VgJY<{`)Of`Ssyx%#$LrqEvQEt<+NiwM?Oyvkas!r2aYvf2Fzl$~zCg0uPn;96FkA}jT z(c#lGC(_-g&jf~3nNH>0SYN!~tD66&qMt=eWreN)jT{Ltt^Vf?_1|w^o_EAoXOjO% z{B=(B|F69M!#D2!F;_|dm)R=-I+t*b;e#Jrt7y>>KKL!x6hoNt&83z7_+5n)jI+ES z^Kevmjm4GsU1-}n;#ng#E9}&@udsUvbO!`L00ck)1V8`;KmY_lV09BH>i=*0{BN#q z4%mAT009sH0T5V01a7{NYj5^_W9_2s|B#LBZx+MJVsG(m*-~#**tc2i&Ahl9{dhX2 zW|YYMI&h*uL^o1NZoxZ1SASdh7Wo}n5svXCs%)2it2}$ksl8_25vQs?Guvwv^!fRD zR>qmxpi$7bZ_uLZGg~wY`fjucMFw;8dFy&ro^Z)LNm+j%{8M!$Dl)nOAo=T^rDtjc z`1hLPaKFSxfa&4T*@4-CNNA=ja48u*Io&NkpE#Qw9rUUZpm9OVE#%jwR7EP}8yC)o zLViOulL%AyL@+EWN?|m=UQ<;?e~~70_4Av`Ch;%d?0?ytv;P_T|5|7I|D%7Jymh^) zlK!ueatoG4S&cD?J0e&D+`>s4PtdV~ZcNY>5C8!X009sH0T2KI5C8%15h&{a zPx|~%dav*3F$jPF2!H?xEG2>0&g43peXs9a6yc*bB0Nnvi)2YN%)M`K6OLxcVtKUo zZh4B6pAj`m_00TqbtOXg@^%Jge4Y17BNiU=bzy=Ie(L?P+6t7-wJzvylEp` zmEMK6mq`}U#r$7=_@mM@74=(|XLkS0*{;cMb@X`efw7?rvppjRlw+r#ABi3(B?J87 zm@0>*bm4_U%$I*)Kz~&z6%L5i(|Q3LqH;n`$AWYvPFiMQ9a*R|S;*JRiHLNuaNL(~ zP}HepN(~XkJnxT_k(8`kTFCFMSg|0u@YyZK$^|3yZ5aFEC+m+=(W{W}I;FOf(V8q| zS~Pl*B|{T*p1(*+RLr}$^tU>DNZ}Ydt_xiq2R)?!PkTcDf7mkrf0JeY|5J|i|Ev2> z|MQ6t{#Hr<$Nc}#2`w&#F#f=4FYhz2O=?y4`JJdv-e-1-8N&EmtQ^OaB} zb+Nh9^D@r=SLBI)_0o_O9*txVNkg*IJviAOmrf6P)hgi0`TsMX(Erz3^#AP^{eOoe z{r}2GKN)`PYwuOk|1tkRAvts?x)c|gG1uN8z>oU1x&)Y=sLmk3?-X;;XKt~wLBM`1 zW|shSBV2=k3vJsQ1nf89>>Bl6Lt;&RVEPF7b&Sx~Wm=eyr)Dm_!t zf6cPg2RM0baG)bTG8F0#PfQ%`O9h4x&B~|74rN8JivF7?Vp4)m`;U_)T{Iyi37vgy z9-9CEsweb+zeWFVx9I;pj`aVlue>ezKR8@T|Hu4)%>O54n&5b28e!~XCG!f7X@1~e zq1~&z??xY3BfHhv$MghrdFE~r9R&dp009sH0T2KI5CDPIO`xd%-|;oCH^PZwZ2t)rc(db<&pY_`;_#B-pT$kH9MUzjh>j9mj5~_m6hmo@(Re z_RVAIFK@dPe}e0+4z@AQVdX5LNL?ZeYosI!5avR2MUsdJnN)IyNfS<>KozgG1SaKj NM|ReJGEiJnaDN)IC?o&? literal 38796 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 diff --git a/website/docs/Tutorial/assets/conversable-agent.png b/website/docs/Tutorial/assets/conversable-agent.png index e41f60ba6033a60df458754e7d619645aed4058a..e87ee3df8f6cfe663193bbf19216ec77940e6981 100644 GIT binary patch literal 130 zcmWN?OA^8$3;@u5Pr(H&1j;A9O$kAmQRx`$!qe;9yo=w`$4j+2PuaD;_j!9%S^u|B zUTHkFoJ{(HW%Qz?9oC0EC9YdG$-4~Eld)8?v4|Lt=ztss&Inw5MfQb41j=?Z4gvzC Nii`9wD`$c?%MaH+CgT7A literal 30650 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�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 Date: Tue, 20 Feb 2024 23:47:13 -0800 Subject: [PATCH 08/43] add conversation patterns --- website/docs/Tutorial/.cache/41/cache.db | 4 +- .../docs/Tutorial/conversation-patterns.ipynb | 410 ++++++++++++++++++ 2 files changed, 412 insertions(+), 2 deletions(-) create mode 100644 website/docs/Tutorial/conversation-patterns.ipynb diff --git a/website/docs/Tutorial/.cache/41/cache.db b/website/docs/Tutorial/.cache/41/cache.db index 704b96a6bd28..fb5345e204e7 100644 --- a/website/docs/Tutorial/.cache/41/cache.db +++ b/website/docs/Tutorial/.cache/41/cache.db @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:011a9e2aa1df5bb51342b2c239393f7b2a34ced1789af963d0e3777cc661c3bd -size 2273280 +oid sha256:9787786aca852b13fd61d377d37c1cd3867fab63072be0cdb8d70eae6462d4a5 +size 3117056 diff --git a/website/docs/Tutorial/conversation-patterns.ipynb b/website/docs/Tutorial/conversation-patterns.ipynb new file mode 100644 index 000000000000..e9289aac2be4 --- /dev/null +++ b/website/docs/Tutorial/conversation-patterns.ipynb @@ -0,0 +1,410 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Conversation Patterns" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Sequential Chats" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "from autogen import initiate_chats, ConversableAgent, GroupChat, GroupChatManager" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "14\n", + "\n", + "With the following carryover: \n", + "\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to Adder_Agent):\n", + "\n", + "14\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "15\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to Adder_Agent):\n", + "\n", + "15\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "16\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "These are my numbers\n", + "\n", + "With the following carryover: \n", + "16\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to Multiplier_Agent):\n", + "\n", + "These are my numbers\n", + "Context: \n", + "16\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "32\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to Multiplier_Agent):\n", + "\n", + "32\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "64\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "These are my numbers\n", + "\n", + "With the following carryover: \n", + "16\n", + "64\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to Subtracter_Agent):\n", + "\n", + "These are my numbers\n", + "Context: \n", + "16\n", + "64\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "15\n", + "63\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to Subtracter_Agent):\n", + "\n", + "15\n", + "63\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "14\n", + "62\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "These are my numbers\n", + "\n", + "With the following carryover: \n", + "16\n", + "64\n", + "14\n", + "62\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to Divider_Agent):\n", + "\n", + "These are my numbers\n", + "Context: \n", + "16\n", + "64\n", + "14\n", + "62\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mDivider_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "8\n", + "32\n", + "7\n", + "31\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to Divider_Agent):\n", + "\n", + "8\n", + "32\n", + "7\n", + "31\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mDivider_Agent\u001b[0m (to Number_Agent):\n", + "\n", + "4\n", + "16\n", + "3.5\n", + "15.5\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "number_agent = ConversableAgent(\n", + " name=\"Number_Agent\",\n", + " system_message=\"You return me the numbers I give you, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "adder_agent = ConversableAgent(\n", + " name=\"Adder_Agent\",\n", + " system_message=\"You add 1 to each number I give you and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "multiplier_agent = ConversableAgent(\n", + " name=\"Multiplier_Agent\",\n", + " system_message=\"You multiply each number I give you by 2 and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "subtracter_agent = ConversableAgent(\n", + " name=\"Subtracter_Agent\",\n", + " system_message=\"You subtract 1 from each number I give you and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "divider_agent = ConversableAgent(\n", + " name=\"Divider_Agent\",\n", + " system_message=\"You divide each number I give you by 2 and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "results = initiate_chats(\n", + " [\n", + " {\n", + " \"sender\": number_agent,\n", + " \"recipient\": adder_agent,\n", + " \"message\": \"14\",\n", + " \"max_turns\": 2,\n", + " },\n", + " {\n", + " \"sender\": number_agent,\n", + " \"recipient\": multiplier_agent,\n", + " \"message\": \"These are my numbers\",\n", + " \"max_turns\": 2,\n", + " },\n", + " {\n", + " \"sender\": number_agent,\n", + " \"recipient\": subtracter_agent,\n", + " \"message\": \"These are my numbers\",\n", + " \"max_turns\": 2,\n", + " },\n", + " {\n", + " \"sender\": number_agent,\n", + " \"recipient\": divider_agent,\n", + " \"message\": \"These are my numbers\",\n", + " \"max_turns\": 2,\n", + " },\n", + " ]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Group Chat" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "My number is 40, I want to turn it into 12.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", + "\n", + "20\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "19\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", + "\n", + "9.5\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "10.5\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "21\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "20\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", + "\n", + "10\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "9\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "18\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "17\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "16\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "15\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "14\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "13\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "12\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "adder_agent.description = \"Add 1 to each input number.\"\n", + "multiplier_agent.description = \"Multiply each input number by 2.\"\n", + "subtracter_agent.description = \"Subtract 1 from each input number.\"\n", + "divider_agent.description = \"Divide each input number by 2.\"\n", + "\n", + "group_chat = GroupChat(\n", + " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent],\n", + " messages=[],\n", + " max_round=16,\n", + ")\n", + "\n", + "group_chat_manager = GroupChatManager(\n", + " groupchat=group_chat,\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + ")\n", + "\n", + "result = number_agent.initiate_chat(\n", + " group_chat_manager,\n", + " message=\"My number is 40, I want to turn it into 12.\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Nested Chat\n", + "\n", + "[To be completed...]" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "autogen", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 9f702d5c9e709a7c8cc133f207fd0d776659534e Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Tue, 20 Feb 2024 23:51:12 -0800 Subject: [PATCH 09/43] rename; delete unused files. --- .../Tutorial/{code_executor.ipynb => code-executors.ipynb} | 4 ++-- .../figure-markdown_strict/cell-8-output-1.png | 3 --- 2 files changed, 2 insertions(+), 5 deletions(-) rename website/docs/Tutorial/{code_executor.ipynb => code-executors.ipynb} (99%) delete mode 100644 website/docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png diff --git a/website/docs/Tutorial/code_executor.ipynb b/website/docs/Tutorial/code-executors.ipynb similarity index 99% rename from website/docs/Tutorial/code_executor.ipynb rename to website/docs/Tutorial/code-executors.ipynb index 523e2f8f4cc7..d3dfacb2f2e1 100644 --- a/website/docs/Tutorial/code_executor.ipynb +++ b/website/docs/Tutorial/code-executors.ipynb @@ -6,7 +6,7 @@ "source": [ "" ] }, @@ -14,7 +14,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Code Executor\n", + "# Code Executors\n", "\n", "**This chapter is a work in progress, will be updated once the containerized code executor is ready]**\n", "\n", diff --git a/website/docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png b/website/docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png deleted file mode 100644 index efd107c82e4e..000000000000 --- a/website/docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1f2e6d3f802909339c92a7f087f6fb9b64382cc2d83f75e9d6897de70e43fc9a -size 49463 From 633aa108ba779db6482461c7a9f3d042348a8230 Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Wed, 21 Feb 2024 13:36:45 -0500 Subject: [PATCH 10/43] Reorganize new guides --- website/.gitignore | 3 ++ website/docs/Tutorial/.cache/41/cache.db | 3 -- .../Tutorial/assets/Human-in-the-loop.png | 3 -- .../Tutorial/assets/conversable-agent.png | 3 -- .../assets/Human-in-the-loop.png | Bin 0 -> 38796 bytes .../assets/conversable-agent.png | Bin 0 -> 30650 bytes .../code-executors.ipynb | 0 .../conversation-patterns.ipynb | 0 .../human-in-the-loop.ipynb | 2 + .../introduction.ipynb | 2 + website/docusaurus.config.js | 2 +- website/sidebars.js | 41 +++++++++++++++++- 12 files changed, 47 insertions(+), 12 deletions(-) delete mode 100644 website/docs/Tutorial/.cache/41/cache.db delete mode 100644 website/docs/Tutorial/assets/Human-in-the-loop.png delete mode 100644 website/docs/Tutorial/assets/conversable-agent.png create mode 100644 website/docs/getting-started/assets/Human-in-the-loop.png create mode 100644 website/docs/getting-started/assets/conversable-agent.png rename website/docs/{Tutorial => getting-started}/code-executors.ipynb (100%) rename website/docs/{Tutorial => getting-started}/conversation-patterns.ipynb (100%) rename website/docs/{Tutorial => getting-started}/human-in-the-loop.ipynb (99%) rename website/docs/{Tutorial => getting-started}/introduction.ipynb (99%) diff --git a/website/.gitignore b/website/.gitignore index a83bf4912121..6002e6242788 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -12,6 +12,9 @@ docs/reference /docs/notebooks docs/llm_configuration.mdx +docs/getting-started/*.mdx +docs/getting-started/**/*.png +!docs/getting-started/assets/*.png # Misc .DS_Store diff --git a/website/docs/Tutorial/.cache/41/cache.db b/website/docs/Tutorial/.cache/41/cache.db deleted file mode 100644 index fb5345e204e7..000000000000 --- a/website/docs/Tutorial/.cache/41/cache.db +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9787786aca852b13fd61d377d37c1cd3867fab63072be0cdb8d70eae6462d4a5 -size 3117056 diff --git a/website/docs/Tutorial/assets/Human-in-the-loop.png b/website/docs/Tutorial/assets/Human-in-the-loop.png deleted file mode 100644 index a5e267924116..000000000000 --- a/website/docs/Tutorial/assets/Human-in-the-loop.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:abe6ced78aeaf839ef1165c35d23e8221b3febb10f9201f13d283976a3fac42a -size 38796 diff --git a/website/docs/Tutorial/assets/conversable-agent.png b/website/docs/Tutorial/assets/conversable-agent.png deleted file mode 100644 index e87ee3df8f6c..000000000000 --- a/website/docs/Tutorial/assets/conversable-agent.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:88ef4b0853b175c02cdb029997a731c396eb91ed5f9e5dc671cb2403169118f9 -size 30650 diff --git a/website/docs/getting-started/assets/Human-in-the-loop.png b/website/docs/getting-started/assets/Human-in-the-loop.png new file mode 100644 index 0000000000000000000000000000000000000000..bc349fabb00c1a0a280e58ff8d3b4bfec3dc99e7 GIT binary patch literal 38796 zcmeEu1yfv0*DjDDI1CQK-95OwySsK10@Ms${|A(1B0P)8Y)-^SEaD9NF@W` z?yf$Ch@j0juBbgoJ-n<8u;Az^>Xueijr2lZX2dLQ5&pND0(A`UsjTe)A9u48xj=yz6i-eDq!NL;QLR5U^1mb2#8kqr&p#6XuB;8$`or(Vbdq_fK`6>Q}{)nGG zy{iPJrW1V%^yB-~+rc?pAZn^$jFlFNjRk!PuAVIANFXPZ1mYZrsfOe?Sy?b@&^0s| zc&IrT0CWWodVK-CKupes_^&$<-MOFs>l(cL<3lmu6>~5!0We7sK@~UflPo9$6;aIK z^FkD%zwP(y+)DYSeh7+aqE&{Ki&X~dBK>a>lrEx>`LM*(p69Fr&_QT~`N-1=z7w>z zwHX8COQfw!j?T4}V`CYQ>*SfP_Y-)^A1$hpuit=bdd3IFRhXjv@(e_0^5{lCvGJ&}I|eI`dp zLLwYLBN9KuLMqx`WcoX0S?&Ee#RFAUK5(-#(}2#Q2|jXiaBtOPddp zet@xn#f?GIy*62;rAgtEhqQb-zoJ>h3m^emqI5=DB2>^s)U=B_Cq9TMoIfR*lWSMIjq4Z#HeK%E^CLpX&zmP#W%(r~O<4<3!yb z1cxnJ1-C})k_4KY+aE1y(&}uBloO->BJ{+`E$CyzKSIHj%Gai+)zj5nvigj5X!G3o zaN1x&t3(F+LAgy3!EO=@jFN*`D?z9aP?{EfQ}K-n{G~fcB#4|@sXf;7u}cvHdxIKW z*Pr}N6MfO%L?0p*N9}?Tu0Jwc6_Mmk~zX7UvQ3(Bwh^k0vMej<&?Y@GZ0*wPA zzd81U-@tkk+V;a;G31k7_OLaORt(8)z7#lV;wNUl0%HDkQHdPjv@&%vvT80aAU51_ z_q~BUp$W-Fj8tH9$@b*;e_hmsq(RJ6;h9RLW2mSCfcwBKw4E3m$oJ%SGqGMWMSs+j*vuR_p3`}eh+K_RqD)FjYT5`r`r`UKi>oxiY6@ZTqvU@{fV zX&Fd4imn5QIi6p)kwMfcNMlP-6z~-EL1aF3K^$T#eBuD+Zlt=1N8;lYkP{(Pl%;j) zv16tn?yE>7hoF*#K|%LWLK^N=V!f=?U|rbSE3&GHx&XkSee!=WIdC*l0ATh;9guwkQ6!>|!KQ{+CJ7G0`-fZ}v?OVRlemFQ94D!D`dTA-J4wtcvFiVuWk9ElBF z*=?l=IZS^&OQ#gZ_aa$PyHaLb5TnoGX!dN^QP_UIcplWT#B#^cxNCJXdKy@yKH%um9mZpRl$QPH+pr3^yNMoY}YOaIhO^->COi-Ha_Jdw7ZV=cYIIhcv!tqM$1>_{9 z>iEV^QAq8cy4WJX#Mq~mloQ1t&QVSjCsO3XB9d=Ay?^P4&eKga17oB2d%XsMms!I<5B640z2OJ_DZH=Ms<}BU^|xC-BaI}{DJG8 zM+_@JQtla%nfa49uH5TS!x~Pkd)FP@Zx^y1?{p5jO5B&ympdJ78jK-%4de;RRwiuS zk6Tt<| zfq=e7D|hU-S*WY?n_-kX%dCgQ%M^?wt_9w^Y!j1w8u^>s7CBAUVyo5AYr0#c3SCl5 z9}oR=S2g=eUNJsOMZ@kI_cN!{pM02JA{LE*Nu#*$6Zl+t$V^96|Cq+u>K9iAuoc=nAAcdg6&F2xmb(90cwG@c3 zK_x|vF)uGKl%whoRN*Nm2OIp7C9u^^xAo_JCRYlmS1w0)6FGe3s>iHzD^Rob!Z9cF zE4|sNCH=?u@(7J4#$Dkv&y9aE0mmFb?ggc>tuhg~e(MWzFO1~zTTNh4c-xH& zar$!oQ98H?Aq&8yWgu!hTZl>e?mMT1%)Qi+hlzElcBM0KU2C76J#p0JxW!oIi zy54Di=+3hJpFKopnO8+T7oB?!lN1q28mz-7jc2vcoAXkcQSSGyhaSDWEf!ukoOt}1 z^;va^CUkP4{Ez;11YQ|?UxVO*TMP zj6Nr}-6SdY)t`**y`56Xssh3KxDCGCv!pZgNyV6UmQg$0hcaT)| zZVK0+G?#nCg1_9>h27HO5FQ@Nk0QxO{qdHTl}ilUfwCI;!hJ!F<1#wRlCO4+=;8XH zOfX!@uwF9gE#>YJ2O%3ORF+*dnWrz?iZHwWx8ye69Nfq2nHn7hxj=}R`Va_{w}w0^ zQyWzCRm~7XpMP}}sI@F1dfbcn^O5Nh&8VDW=ThtO?Cl=61D z5L%gWu;K!+`+KF=oYu5Lcx`T$r4ufF-yIWK2twdJ$IBw$X#Lh!<|;!MhqZeQhrNJ% zGAix!;`jAqtq8CIpVE$A)#VB#NFr=*jQ8LAVNuqrdlu+5i~}er+sFEX4Gfu76t1OB zX6Q$8xk5tliqS5c1>+XqKS5x9X5iY+Ci-KDToPr0p#9hSm;lNXtU7o%@84rhf=K;ECNqZicfr}k!~?>TxHs7b6la+AcUS_Mfi9aIQ1v#tXMJn zyh4&tm>0;Ep$On!!87y)MJF}Lb{+g#OD#j6QeZSf1qA-?nQ*_qY0~%W{;_YpX!#Pt zp>J8c9(pjd49`$zKh{h0%x`uIwNWC<*mp>^ciAsOtugmBUZ7TcCly)2UUKYu+(DAv zB(}r$RO-`5ubm;U>3giJd$vBAJo2QOGZcp)ty<>zD;h~`0J06p{Ks`{CSY;L0KEk4 z`r;<>YR-yxg)K^N{qpLrp3~|zHa6YD$E}Jg*QHE((lDMtNX~#G8p|ZIR)*8@P5)Q{ zTE^q~4Cb0tOn2)l#=CUi0@*6e9#>8-471pT-cQ4jv7zDRru(2$#ZJ{di(Cr3P)>*2^_4_lJX-l#i@vb@yyeE zW$R3-N~|n>a&1kwOHNKN;jIgkUB7rXd*U$)$Z$HeMea&v;Ha-v;SZw zZLEgV?a6)!j|LpCBBa^UtCiF)jZe#P)^@FSixBU;%p19jb<}_rB0|(b3}&?G4Mboe zZ!vuCyPLBx+JwY|ikfw)vcB$2vcz{6w>{Uoa%8h@ZukC!fOZjji68`CTC2r`YA0qE zBF@CJx%Uz4`T?Yvz`f|!ZT?X53eh%Qtc}4knN9MF(S-mJOJI}1vcddNbPA@91 zwJZS3zL!0hur;r%_d4dlJo=fZF}2NA!#$O0X?*Aa?%d{#xT&=uDVTt-fW@GTrS+=S zb@$ZL;?Vw7k4@UFD~uPjWR!T~vD_JRub@-@aA8z>@^=}~_?FXAqK_DzkEtjA0Q=r) zK=_mC{?5Wk4^mE*&gA0nmE{gTti4ljhP*2|oaRENxQoRGbd;i+h(8j!gn+*=^w6yH z|D=B?LrGmjDIIF&y%QF;q}#G7ujhMKrbKewdK1WAGx?Rf&lDjr9nt#NGb*pl)NXDb zn#^=qgICwlw8+32paY|cGvjoD;rqVij59P?#cSw@pp{#QJ>tCf9-t$>UZuL8JBc0b zu06d;twIVxQsvP(iV@Z=?YQy0K$K}aq8ep|dtrWl4?(cV)#1UvUu;uxaCG_e>T^wW zZ#~~PD`O?1EAVs8yH>)^%h`;KqgZG+AH$(;c-tG;+b%<_8X*(bV|$_)MrIj!&lm5< z=a~a1#Xi*D*aD(6uT-+}FVRaYP>JI)TSTSije=bAOyno84`WeJKaU$0e23&&Xr&?2 z!Fao02>(r6ITFE?zD2paCSyitNW&lgfCO}^}x2iD(Lnxvw^5&CvVbB8Z||E zscf(+T~}(FEXk(4W5mMnSs}jOO7Gb}BL$9pxH~qztiYqok0>g=T8JQ;#MM^KQH7wU zA)<_6J^`{e`=H|*c%e+t9?m}r>D*~ zhHejW?!>%w{WTB-Tn-uOVGDA5-wWde)F37(16VpOhnBVfQ|kFpm@ZR@Bvr(}+_M%w z;Hnl!SeCmGY{~KTs0xaq6$)V2JKItK*thmDny7ehvX3&x$DsTQ-iOG3%%?E{NifCG z=c{hJC`G+s{R{J&@&V7vh_s@ zJ;CH}ipF|`O2ku=zS>vf9i_iew~K_D)$^j=rUVM-6TRUvQyh;KhX7?Dc1`{E|WyOv1n6JF@l-n3;JK^~D) z&KTE4`DR^;JEsaLV~>DGZcvFy00NOzVPz**XOBg?#3R$eptNEkv5`ts%d5-!{gV$C-Jm|vMYhT3uSW7Uw{iIScA|6=cv!J0Z_T`#S_^s zQHYqv3{(LT$ZQOv5TpuE(6blNi5Vkpbm*!LP|Ha$T{K=<=M)y%p3_NiwIV-ZQg?G< z{T~!z3=YP)l>UO(fVV=YsuUv0r~MphaZOcI(?ILi47bbq5Z4K*!pzQZo%838L?)sn zv~fL%Ti*K-yA7mS{*j8WOH=DpoXXA0QeY$i2zPJuGdVCMq3o-`p3N3b3tVp`Py;|V z@f751n;`wA3Ry<-9;;{eZ=LTl6h>JTK0kYj`m33+AH}2abW(Rn6pNC8vw$Z^RfbFk zbIyG!{_hUiBk5+r6|PQc$Fz7RP5CC^i~DI}#rieuI+*3YRG08R4fxn1lsNcp>oBxHLEI?5ysx-4BVVGg)jRQfUg4L&&L9$8& zZV5rYl-kvFgEtHkcDYS~@`#9(RsJ>u&zF1@qy7tH}OLJnOG~T6M$%mtnS=U`!CYl2Ow$ zaJ&CbYCr&4exCs{c-8OPRzlTo7hV@*s4%?FjG*gOg zQMRaCJARI{yZ=%*_nj)B+`um3gNY6#e^wI`wj7Lie(ylD78`8`iV3=>2c5u=k)dI+!loIlOGW0TP%Vtjh2peu6kd)hRaXCOMZU<1OVp*Cq(1<6}$ge|or7HMw zl?g!*Zg%A0{V;g@{7)=`4*ihvt3n~52v5?l4Ni!qnJ`Hs6fnyUefT55lU`d6c}ySd zLmEvG;QVqwS|NxAv+r2?IU58UzeoK9+Sq4ASjC<_0!5K^Ob961K<#1$E$Bq1{*>gO zO?@0Apa#GuUjce9Vri_OU>7exKU(*|>j8+JU@*HvUD_y)oV~rGf**v@_04A_a&tk! z6`WM`?T0_gokd}kOm|CPWznn1w<&21*FQbTY4`k*`r>F5l?l^yAdJS_&FTBaE%8H= zU%?sdCpDVm+g|l#Zj)?Z$oJJI*jd!7$Tzc_n?VBS|Frti6Y{48@T@t_J7K{0w;ca$ zJFj~|v6Dwm(3hgk!2!R2c~Jly+_`Vsf9zNRKsof|-MH%_A%M|U9$6WvRF;7H@k~=Y z^xMnziSXv&JOc>2z6DED|fu zk~15$6gxQxQ00UYly!zUVKeDf;6IloR;sO3M5m(;uc#&l>^Yhr6Tne+e^$t=aAzHqm<-a~DOi z69+*Ijw;m4G!!?UGuyhM(;m)R&-;2w%v8F&yRU9$ zZDow%dbUcnGZ>Tdh1EhLiCXpM&i@lszV%AO)lq5XvJU2}fSY);!(P5}k=)gG1cQ`} zOr$I}58&o#P8w9tzQG!Z#3uO*>Z9sp`SBX129%MWF}I(S31%&jg1dtH)5Me3@5=^% zfsO1NUbUG#?n<3P!omeIY0Sx!-M;Uy6v83!Q`?sykVk@LWxE;%omT#&Fs%?SK9`fk za=j(RT#0Hz6b`$Tg+*gN>34cPUOCLEs!JLe?8I1J zMpP4UI*80y=$5XCdakdpW2ikYX*AkodEL&bKNk1Y*vJrGDYXRkW74NRPer{;Ocylq zP&X-ccs-O*HD_r8{^RJm8X#^@R)w1A|MM@R{@MxmB+HLwI+#Pim3K7Z(j2D5B; zF*pONAvTuK`FK8Qsn!e*P@a;K!t?YuPYbN``K)zWIx+yby4K=6;~Yr6R67pAo*8 zSbn=bn$r^b0)YhyRI*#pbu}k~l`r1v~_@}4P_ZQ*+Q zJb4#_fD^gDJI=l_>rM3=tl?`P0*ajyM18t*Y;t>OxV|5!N(tdw=KHyM+QWpLyYuoo zZfQSqix72VCQr~keg)I)A`{T#gdYe%i0;Y4TOC6ec`B2 zjDV7Q>!lje^BzwwuLnE4RybSRa;^G&*YkC*Hlvfp>g9-tfKO0}ZARFM+}=-hXQ<1e z0x{9i7=2GYglb!cA%D&mDs%Y0z2-@$(9gHl7!M-0zYmeb3`JtISWOrX0=wmTZxa!J zHeC+j+y;U@!7{K3k$_qN3c>_i_JwhNyntx&f|2zw70)00TKhQ+`teOe7dn$WB5U(& zCY$XH(zW=3*R+EPpx_iVD&#?Erz3pguiy!r-zGAtpeeezgDmCT{dcyRjo}mrmKp64 zm|9aQLt)IIJsEBQU-$M&5^?ZAAFV<^sx#J)~>j8E* z@oh)Rk|$sc&cAlEiL};ZM+6e;aaz7_ah`2-cGCOYuelyC8dYgDSf%+$bOj2<;PX1I zvf$&x8f^w*MgdNUs_4Fo?uyj#iaOHO9)(gh|Ja-+_PJz?>;!+Tf0-SXUwXL<-1{fJ z;{d_Iw5LL4ysdsLWTwBv0nb_?>hewiio}Xqd{B zHn}Li__^-{$F_}#L_GQ{;=x0-n-NJNmJx1s4|LJP>-~n~P5i+kG*Y}DD$4JL!dCdE z1G1vam-WZl&oJB>gsy9|5@+q@;lYdC`e!NVI6Vc*86#Iyqgl6?;uN+C!h=R8eYspp z#ceTO?9V}&9L|a@b>+0m6wdKidu_W(F?SO_Pm;Z0s#d4R_x3qmzEpdKd28+>=4q25 zRo#-2!~<@rtaMYlS6XWv^J1za+wxGi-OFjAKN$P_4PW16l(be2Uc~H0kjv)2&RrJLp;Ia#T7dwtwiTy(eHQ-l)kIrh zJ|qH@;ppbuU7{c*06vWX9z0S82whv%uwvV(yICOi&@+-m_6zMb{^;Qb5DjOZn$mtfB z$2TP1Hg~;9hMzFQRdgg`W< zPWxtZ;$>fM+O}!Knk|7KEYnC3;g=1MbG2wY^q}Mb6~)dI8Q%YUJMeQ50ng8ii5?m& zYf4KuLwnpu59Dut@Ng2!Azqyl%Abj%svzsQtri*E89%ob+jhP-*dQ9h$@5$W$z*Y< zp06l>{)v`a6)I^pG~p*{&hdHchgYvyr=4t&8DRn-$koH6B|9v%$vDg<50^fYr+p}_ z+MpZa^s&EsAPVPrwM#4v5Ogn$#7p}Aavg)Q^_?KXMka?(_kdpv?+Z*5guh~fnN$`= z){pkmi;1@m%BGDek^EXZu=!9XPzO{jE>O zLrbTPe;o#pptrKKN=63o4)$`TPLt=>-5UaL&Wt8Vo_2ZZlAzafBf6v!klRe}-8qYx z^-St3PN}8GEqpYQQWoFJ)X&kNH!;+8Y1(bPRYugxsEh7w5`Bw0$!R*gr7hU3E13gz z%v|3GS>bv{{}*3+uGoE4&)txmB-lgFXlr{3a0_3I-{NVDim*;-)`0WnV6C zZ^xNZs#KASb((8#ZK78|Cy=~jFHa41Ca;hujwgjhnPM)o$Zl4*=WeTsw;1s7$kBX ze;jq3G-HSw0zFYI$WS>3=kD>%2FJ8i{W7VAQzrhJ;h5)r34? zDc*5YpIENY&yje_tIPQbL&jT12+<~`RE)n6Lj{{cq8+ozy_tv6J2>%@fgyrFn-T<7 zp^keErG0;L=4`MIc6)x3gxk|S<9&iD*4j9!pPc9T$iC3H!4DpfRZfH%vM{|ax}lu; z41sW2G*GNngw?HYfz%UA99~pVOruKZe!~6kk&Fk?CA)OzQ52lZ2 z{p@cGJ?gh~dm7UNpB1MccMb1zD{H58T1I zI?o}t2nWUCPOT~9@n`Jve;}}ejfsVJPlko#E0`s_e)Y;9zUE}NYZmR6Zgiw%BJokL zVER<{UkY!OB{A>mP=sh9{ot3#O++zp2~%=0-ii|&0$|Jtd|@%E==y~ZZQ68HQYy9d zof8*@QWucU3jgPmR^@c;>8h=ssLgN*3-vnN^v_QSow#=j^OMRYsvy8Gtv&&HDI_6dK8#rcKDOJsiK65ZoqyBM<2UKMP&s zujCzxN;dlmBJ84?SeZ<3g%%xty+LAzoXeI1cy>@8ER_su(UFaI4pl@CyXwq?0>BzW z6iO5b?^gAcz2jbI*c!`$aui=Or5)7i{K(2sQgYLrPK7^m@Cpf=jNmr!Q&{GlZq+Ik ze@O-d8A`(2$?IiW(s|W?SpOBal}c)nH93BKEi|!dwHN$d0n42(|_1gT&{1V^SDQK$gi2T zbabijPYDla@+h_`9h8p2r|LF0BI&+iUL2FbZGydK<^du|Suar;i!0rw?u~sfS@zIDF)6ML z*eE#z&2G&wiPi{$vKPz~+@2mPiNJE14>7GKV`wRkw zpFn~Y+-KvfHR`-ReP&5s1p}ou28LB?5WXu369YHJA&Eu(RHVQbAG?gVyYj76?ehA% z(Y&aNn;ZsBK23A+o5qGLO#X-ntAitK-!Gxuedy7??C953%!bN|YxT-15<~BgdJrWU zpe>2edYLd+0+La|y?8G%PHH?2V5hj=BYcc;Y=w9rZzeCh;Ic`l)i)p-LL+ZoQh?K8 z`f0a-j7SLtTUz2e$62bsQ6Ft?W81tOw=h%v3n|2eOXpXs7y1$O+<|^g(GY|BpAKFV zhyP8T3aI5_=Aj6m&t1zFBy7OB_jKwJUL+-Iu2Jf0zKAP)F_$*gH)W<}?&GLz;YAm*1A5H`_xlOmBGk@eQC9r4X1>YH9*sm}5MsdTO9LDc z#qQ>EFc<4GVX4~=E<;}+h*rOtA92&7!nF|S8Z^ix!4jtMGpn`S9di-`Eis1Dcb@6i zs4CTbS`D|0JUC5pzv^a}f9JidTFX^**#9G!C2Mr2eSdgkHb5(s*EY48dhfFUXIA$5 zD7>cD&bDUy$GcKu&O}4W_SI?U_ zd*gvPWOFzTXzxcm1 z_Mt(l3u@(5e8MzYuK{9vItrW5|MsfBfyE|_+>5Pd#wG8a5*d7*x0-GkQUs_}j{_BV zF?S(9>TV$0wPL6KIQj|wdyw5u>Q5cMQp&X(?cGm4qg60*Tb^^H&P~*$7PGr7>g=4W{zP$OmQx%5QkEhYtrFld+k3p%cNmdeTDIaMchOUgq<>_^ zsfUXLV-Z|mH@mytl&Gvn!uRA=@ygtHk)BgHGUv+AkX3nHLH=h?E0aPhRv>-k4+^IF z+Zy8U?aDLM*BCN4ZY%n6eQX?DPzwj7P4Prv;>R!8uOhS0iHA@o*A)^=j+9!6_z_8L z<72-#i?ZiR&M2VX@aPi?&ys`Rv*IwKKJ8W>zV@XCndu&E7pOe$T(2ulY-sakyKB6y z04r)$aXG%wWi6{D7bO;bF=~_&C3w6|Sf4I*hkW!_tm3&}r+>7!iM=`36c&RoGhQ=^ zvw7z-uLGPfDdaEM-43wy+tFdWxk{6TXj8}SX`b}Lt`m?K-Gxd&TuNX&$+H*haNkc_ zRl8OMF<^ahlY3(~Y&h%R*@#MB9>+~cXbB2crKXoh)}gi`ff5AO%Z~v63CiCFFNZy~ zsFAHOe2XUfEdPzlU5Thx7+V`kX<17j!}YOiFD@_dVnI2+2~FrH2Hs_{&w8rLIT<$+ zICKHkj)aV2Tn!bZI4+qp2YNnbK4!zpQ8z;f^ubyS*joHk*9W6?oQIDWr3|BO@6tWIsK$!^x$Sgf2t8qUL0W>0T1~LhR>zlDvwrJJLZ5n6G zWL6it^EcDecNUwhoJA96T@0%I#jOWGEtpuZD$S$RwHSD^rIiZ)rkqqNdx^Rnfuo2% zZPY=v{eh?Nu6@HzP79W^+Ir_t`|MBF%igi@ZTF^RJ~ZJ)V`H^eidjJi^UL&lO{9XY zlM)FNcf6UJ3*(b)H7T2pI*Dqy3zQ>owWn<`i|-38=Pqu^9}Jbqg@*CEb#ZOgQlIFB zz$QN?N`%Nhpki=J#0lM{H#j+!_UG!6azSS7vu$S^IOtIeTb>IGggt$n^s??FfjWmv z7>dPOY9;<726%tyF$(8&Rcwj+PSP&cP^;s<6e;Uq;#f6nsVW?@x}n^W(IoJzcjxBO zv0L$Ksl8LW{wZlUdZBV^@E6IpN$&}-gV6$ZIP{O%%latpxj4Q&ZmDLeB?1&W%#oVQ zgOyRT7m@tB_Lgurch8YKvQX0f6H)iK$=10>B%fteZ-Y~N&W>wPx%iw$wsk%so4r0^ zd3=0BhVb(jBEqVvO2nl4S{JF!`I+rvpHQtk3qtj%qul4Ly&4bK(SX+g%#&=S3QU<~ z7OP9M0s|e~s~ltZ#30|SBVw>b`;Sm5{J~h45JJe(gnQ^E*R<~7AZ7!> zY!+&Moh-TvepJ0G&J=a2lkej+lDfCI)EkE{mF*p5JGHI`lus2i)r0^w5gRB+Lwln_ zVcERqhzb6=@V|A`=3iQr?KnvrWg!~!h3doSu{yQH!njzpY>(!+_haxtF~H$a|?) za9QW1BLte`SE$6M;PI>)B{&1<cEK_klet}?-FpT^NzHzjQmH<5d%~$KWqPWNm zE+KL+CMCj=_qWwmM4tJC6duCKSNq0jdATs@c+E{Ta%U|Sb-nE$Evr8f1e5RN&R|fX4KxOc#_0x|6`eldnp~jT@`pKDL8tcN zc7B(^s>xSPU@JPo$QtbOGiHc5>sqnp1I7teAmQab zvISxp%&)mu(BfKGNUq;i71uoq1Lg9*u@Ii2ae|v&zkI{HSWg zOZd%rvVRnxEH>l*du+W_#q$H69|iVl7f{R38_UQs@Gj`+w8PaY9x*We@YH6ZaSEHM zfu1L~7ut@INDjsheIR!3B{8K*5_5$yr{tD;ME4xNR%ToK{+ZsHE)I5XRFnMv5%OU~ z7WH{l9cercdT&bXd7f>zBYXNagzX8~LpG5e8Q+T|KT`Z@YrfyAfg919XtZ;U*ndS1 zj%QtuFWcdJo+dC)9yn6>ivnapH<9j;9})f^00t*EitK9tA(AVzSsia7!fJ} zLMzrEG`dwJzn2E#^P0iPUQ}uf5Gx@=fFXO?t-(mD5+Q~))0Jg$qg!9bvwhbdE#x%m z^Me*^>hJ#zSS!-k*R)Xn%zZ)2|9Xv;vGd#VH8%{+k@h|%KdD9gY>R(2NhzAdkDa#bfc zk@OM00M*0T^6sjOoqfq~7h=LM+qXTL_5+7r?Z(qzM9gnPl1zFINF2)}V5~!eak)y# zM^%|zRNcga)+>H9^E@QqR^v{#Oi2cd7$oru19rT!FyP#Heev^>8WgeVhXKoZl(fB~uK`zkXq#*bBEBoMZ#glt08T`&zTy2g0nVxQ;-f<5D zno^}R!Wzc5Mj)og?`g=nm;!z4KRuXBcrFb5)UC5Z1Xarx)iG^l zYh8ugTZcafn|7tINx4FVc16c75B|cq@F+L@^HWYxEMJiBhYV||RLkuM>nhMvhev%+ z-vbwI#YH9CI;(u%%~iknj-OdxE4hg)gu}=*w!D06OPrBd1#-11_u{XVVb!7`(6msz zJC~h+GzvnAxJhBMRgQMO=#0gSuwXWrUSS%TeR2f<)x_R8AkYmL?P z#x+VL2&x&pHddC!F|#IBTC$}h55)`8I}^@zZXsX;tb{t}SuS}h#ma&ywFjYbQT=Z0 zM+UyT*PlR=$8*Z0?_p)^9@mE1>S%P0pGpY*B1(5IvG9%d7dR1|?Nus!(jc5J zBQr;l#AH+Gdl`!7oBP1%7i;1~2-Jre5vcM3I6c$ZXs6xz*aNU!3up$ zvSN2;@xC2MbPdB0zT2LDgN*rEzEBdfDN3UWg0ql~=BR^;3LwZ8a%$~v;!8WV3fmbE zgJF3PL1P!7^_aJS1zXWqIi)M1?np>_ow&Qho#yv?)|J0}K+rjqRD z@dm_RQp_0KC#+9dojf8JPuo!y%pM}2ydPGBMVj}voE=_N_ANjumN<-FDZBX4OJ!y9 z75F*|Y6|glbl+bt9d+ukU8i}&ce^h~=hxmY!@Sde=CHZ3 z#eAAHK}{-D_t*QdcWp@{Gh8AzM(>Q4#s`lyW^GL;hacTTa{a+czoCZbABh(DgG#Xl zTl5a_ALK#*c0gd@W6HBv+Sn=?4CZ*YiG6+-d$&LrcjFXS-bzxSsO!5_H>z{@f7pAg zu)3BdS{Mi#Y+(U{2lwFa79fz|?!n#N6Ce=W-66O;3wL*ScXz#$z0W!S%l~*E?@PXK ztuW{8u323@s(RE|a^yzVgzDdB@!ai6eIs7>%ZTUeH=6-gz-D)##^5q3-oD7OhH^}{ zP{qY*qm57>G@$SRkPUUW!IN;LQ#20SQ&0p1Av>Qe*i@jdpm&1)}?lFvjc z-wB1HgTi^NDSVV%PTHB@=RwtsFreHdJJF|+m8`olVysw^6KJe0D(3hWs1)1KiPqcri%vc8_8)nuNDBZDJJ7ze|2}E~FJ9+S98#IxqDO-6vr-6q!0~Qh2bS?xcz1i_m&Ffat*n+a zEjFuM@LefQRIB`KtDmOEiq1A8A7JF3*5d1^)(^6O?pUck&ATPbo@%*%J!`z)ZlAbc zh-ifyA1JEOHbTL{}?B%L|0W4wfH?Z(G9mE$D~aVg_f;RY4>A z_i<%j2r=n9Y2S4!g2|sC@4b1d3v(XN+oe;tdf;XTe(n9(cfD+tuZb!nhpksP)Nys! z543oeQ4)6Rn~P=deI9h{rwugu{>7eSx%3ztFD)^(~qVm8+l(zx>_|xLgwQRX&%R_!u-{4{G%v|h zGCX;ty>@(}jf-r`{{zBbthkDxyE6&3P%GC-aw^IPFNr7b8NXI&Cje0IYT6F2{1R%vT4*2-)-!B)olLIo#lEg%SSm~2_t28YWiyTV&|kHB{|%*p z$wI>;;?tauW}kBpG&VYM(VJk6pd9F|{%LkzbszbZsC7Y%@Z+T7$3i5~Il|7}Y98{t z9~;l~+r#;b8ja(%u40MTYS#OcB}u^~H)Bw9tD_3ASA`_rUh@(kr)iC;%`H4G(*~F` zdHVp#FMk!+okzYY(dHqb#hGqZTEN#~I}&Mys1$DDwUlAPN>G7XXIjTIc2zupZ$YCG z$((%upq(1XI2bmM4|9JpcVM2?JRirmP6QgWxacGxmy6RVLXjX)xexzLi?ipGsGZD& z0sZu}KFtZ=6dGMH|Kq<+bKei3xY&SWbLqjNj|0bL$kT@7=@FgAjzEe2f}!(aWn7XQ z$&3PW;PL%w!MYG%CU2pdWfz8LjjDLP1YlwM{Ok^W$7J{-A1#*5_$g}zh0jJmby*L! zb%;1r_Xw`DWkbvw>Egr!0vlzeFSit`16Pf&5G;XL?(4}5-xkG?yXXAVL2xY_zvpQt zIB+|%%zAqFF8k~)dFK_W{b&0`p*%aJ1XtDU7bpk0OS{^h2Xm(X)dzJ~K4{EzEb}Nv zx=ubK==+OI9oQn9Jt7|L8kHo)&2ssXD$T&7qGDk8^&!V3<4gQ8v-496A~Bj>K=KVX zsM3CvNcXd0(|5Mb5U#P~j{ES5Ve9)(hlbKvhCm{v;^q!7NTcz<%`*r**v#bQX{AAA zgL(bVgW9f^x({J`y(7}0JxUIJFe4m5?n;%nN}^o{6fri!>}6Qb|cT z!QWwj+P1wUHA=lCTA?Vlz2we`Hd8|qX0C=3x!{zu(?#Rk?G@+bF33vNFc?@k6Rb$h zywpm|9`TYAh2D$NC^F{5xCOQkU;Fz3z1zP?fndw&mD}PZB^CStH!kwLnaEYtJcXL{ zjtml;_if1~5!kGr$=i5$uOM84m)#xiB{byiyY z0RK_3#OyIg?Jiu@2+?>X1x?c!ATnJ56g%TIs-6;nG&~SVDzWu&SjN~>bRka`0rW_{ zzh`tZQdp`?hDcltEev`;W1^|%Eta0wBI)B?BN^WqN1M8YM{l*91xqoou5IyPo{prXN5*fMP}9ApH0B(S)(-N0V-z`@uJEa#HGACKxvu}h&T%?k z$Q6gi+Z@@4-HhLQqyB~qym01E{^B=+x84MgA@5`ZRXTv^uHp4~%;CBfDM96T*&Ze) z*`^J}$DE}1%H+j|g=gW+X8PJuPv`p9dN<#fS=`x&yA+7o`7wMO5=k?3^F8ix?-tIzEqlZYJW+=!R4HTF z>=tMqSd`gHFXH7Xx_pDq!yH412{OaDOH zW#OP%+tcvxA>varpHQLZIwwW)r9@6NgY-Q}e>c~Ftq(J>{RMHLp>1j&ungDgOS!R< zn2ch6;hy%KKef~;b=a=mS;e{N{A3q|SiSq|Ev*3R+|1Wz4CR>}-zN6)d}?;22z1Y1 zHu=2@ULw~TZPc0R4HaKUAQW)?`Js@i$exfE5=qts17lTJoTsNrZuN(pX5ut!7F&-TP}HD=_U0mzd&yLcD_f6SlGdx;)Cn$MPE>FDS*>?D~xaEe$}fL%lJqG!ye3(3dF z$I@+TJhqjHRwlZ3qB ztfK_aV-oL6jGXTk+2l}kCQ0F}wK2AdV`ONWf+{{GFJqTyuf=1$OwD68YOSgxoceMP z3Lo9O5C}&o*{E{_wvbL`R37k%Hj@sm`BvM`B+|T}WY_m*vPGR&LlP-$OsKL|eG@V`WuD!RI9Y{d-67VQozp z?7bO!uwO2P#kY>+cT?JQGNCOQ)L&HAqCS!?z-T^G9QoFIBAdcVvOO3-OE~z}4A7+s zw2u7P8_QG|{g%iq26UIuzr80xe0O(uX@F5)ZSn*#)~oBaD}PAVdTH-NbbLZbN6*pk z4wldR!+6v!T4T+$xx(2VtiY;)qz}f7 z;ZK@_eYh4{68W^%27hK8>n#N!<1yOvzoo~i=yr zKwTpj>-i11&c4wa?hD{JKY;!vW}7uZU)`(o^KpzRP&%UjXE9|MmmCr)a5FPgr~jYL zGcyrI(va?nTxoKkE6HrC-1`FJ=dJ{iCz(s@{Z6u@dv7>VJn&KRV781=qt2?P8ZMlZ zBEb`Ao`DK4(K{m(0jZQ~suB6Qh7A~C{Q!1ktlpuhLHb{m1b9TOw1o>C2<|fc!4Mc6ND!CQZh2J!^s@d9v;nW>Zts8 z84L}!o8rFZp2sz_77Ko=0q`r;rqQAB;;MlpKI0I=C~Jx0JPq@66$UVw__}An!aUTs z-yNA|`hF9n`v;d73JS^rN5X1$-4@;E0~F1Ebd^K5<%7_Um3`4A+Za$cJ%Hi;+#f0q z6-K;f_o*Ie+2USd%WwC7Jg#H5T&PZwop&61DDog}hQOF8M&3X+B9KBpWu>quQO33H z3>p`!7n`x0lV~olaoigd3R&CQYThIuaS2s5f!8|9ZlzT&F8@gkG?j>OgvRK@TlSfO z+Gl1O?2Qk#2;|2r4W*ZzHAyK&!i>81gzto*Ny*+-OvA?tdR)gM*#ai}Hj{SwP2gFv zSHxdMJHVqa=sXW_-?ao*E{_%V3QxI-vulpmw9StN8yYe3`ioqkFC>@vf6pSaMLvFs zf!36THn>nxCNW(Scke_fhAEb-%Qy|H5yOEI#v@Kx=Mty-N#a*kYyLHcC2SXK$U3H- zr-KR!4L_G+gX9lXh?;6RO!TI10#YD?{Y-$E_`~g~wPzo5ooA1>d0&fbO^m4Xxa6{Y}pWy5gbzJ1K|RBAkwm)xH# zBqWSM1892u49{tllrx?b4HmKKFmPMxVR0m&C?nUxvtLe0bCHUYrVXT_N}gB|xbB7s;|r;9UDyX>@Rc`?FsiW7LnBi}~SGWVHo6v?`nBrkMRZ8ehM zT?M%BTeHo&@G-7bVk!<-NnM>dTDQk2l!FF`^+$E4X2lvZ_%a)?nl^0dq?>gY%3!+5zG78up-P1f8O_iuzztl6!D?je07jr&eR=um?+#AbfJ z8QeYaa#B{?Fc1kh>(|=d`KIAe0u#41)P{eFn2Gi^q8kdvM!Db8J5=CInE$bOMAui+ zZB8Np&H|N)Uo((hcL?+ffZwL!ZP0*kF*f|JAUBsw7>Q9C>p6&eWo!o6?lTvwjD=H% ze_hTAnQ?R>30zMp=yxIQ%BAFg$xsC>K#Z)={_0B~CmWX)lHeMj1sPkJDM*~ggH@uU z-6@P(4yJu~Jz$hjJ!5JTqA8KGYG?AdSH^NX@AtF4h5cpovzwZ6$`MdBFwOap-d8sK zYEuK$AXf7}Dz|k;_1t>cfVJ_vcF3HikRjtQpgSkcekk|tqu}iRarUqbw}JdACJ5hg z`Fp7WRQx$RWxbtk#dc(leZ>~Z=m^h|i3`aOxgl`;rI*N?4j$R(td_xgie=?m^19Q6 z^3Zm(c|1UFpQ80MJbL{QLLs@iZMeV!wV5_;DOAyBtSHf)Sr7BUN5# zjODfA9v=N*y&g9EgJcp9G?70`yjg*3!Y>;u1&c zBGx?helv3E(h(8LH5Vg8p{B|Fq}L_+W4Ap-Tk7$AJsYR5%0*v9 za$9zt!?MZS@&1e%2@0>{7H9zg6_*F}yPg3g*Kg@on9(VvzR_jP7r|a??~UgB%$Mrf z<@42&$BC{GY};_)dQzkH+EKb-NaJveW(`AoOMt{O3~6izXpVG@2Jm3I_7iFT4S_9^ zK908KM}!zM-voz8Kz;Rxfb?LE!Gw8STxLw8Z3;h5=B64`IlCtw_TU}J*~3I6q8e{( zYR64giW4BUBpck%bK&8WUka#~6bU}9+#G;RXG+pmR`%L8*QXN z1H;Y^6DV-67>JGMfoGlS>=;P>5bX`t#=C@30Rk(iGYwNuY(B8q(s&pYdEHzQK7@Aj z@h6*n1xY@0$EWfk=1^!U9^b!zp1ix&7ZNe2@1mFor2G=%T^I|^%a{EyI4ikSRc_8N z8D>61x>!^N>yi>SWMt2mY{V;|4`1qww|o{2=SQIvT2b7E4Z$=W688EyC z0Y$^X7q;GOClM?-k4lK>jS+k%?`*XqH6_!@GD&vU=N^X%eN0Mp1`1O&52k~tArCj- z6oJ&lRl*h9<}fQhat!_^wSkz+X-oP$mrx5GkFg1>u@jcU6Ax+)68Bo%ATyUVWD%;K zS}{1o*MrRqpnUu#R2-?Fd5-e}yeH5ec0|8u2M^hWOp5h!!}ZcU$XDD6`DZ*1ZO?Wc zavUWf=IxWPmf*1X%U;tGsdQp>tU9iALaFY^STTW1K_vA<_vItRsd>=~GC6R%dqXE+ zriTKF#AuZrR+DRI`Bihc^%o&qzI4ev=Way%`{{xH4EM&v_=@knOVqSA5I0vB5sNyl z;@avqWq&-peBS>CAt3THhVZi?s=@1vKya9-D4e`rQ8YL&Aj_8sk^knyww_cAI&T%= zm_1~xO#P~T;lq2|y9{L;_B{fi&s0&567;_5)ZjZ!QopZgQ#t%5R5>B$)U&%?=`;VxR3f2szccYOXz zM$2HnlI<(o`@xG>9yqcvjf7ths^4;YPCl4hdb)uT#xSVIOg2f}bIxUt_<*AKz8u!l zd>*rGH7{>O1)qR0zuR%H;_`vFc}N@{4n?t0NtO&EoC!Ee1VEIeJqzKM~BA>kvfFU;JF)FWroKBzOYd+{{N$ zsi07qPgj-Va0V-k%B^Jpkj&s*W|=Sj@Dr%uNHo8*P^9SDX~@P!UA^9%yps*S@L0RE ze-7I;ac&!TKP3>w6cZDD=fw08tAaut`6F9TtDFH{g_sQMP10Oskm~nxUl=qjG&Jaa zFk(l|bL*)4NTsvpJS`7T)1|wBnv=8B4*lwU$|(4DhzF+9EVBQWEgVd7H;jrPeiz*);Flhqh{(Cz7#nXc`UU!?uB6eZKqi`mfk>+7zC#`D%| z3P}S&B{?;@-22NAQR7_4YuNna*G!ikjw+!>R+A+1VeYNI4M2EjnsjOqA?ez$Wtg^( zD{y`{PAhp1i!7Q5%7%+q1~ zjnLf?Y0IlP8&KO)?*H_ibE@XX*QBWKfb4yCkpZB^dx3Lir~ z-_o-mTmrTmTFT^!4-?iav)gM9w#6FPL5h%FR~Jd z^;9quh4AJ4Fo$kJs)Kp-8t#gZIvtz24JU7?ymDV!Ek??Qy~p01TJodwqJ&(T?(b2l zY2(j?xWbcN{QTYQec}I=c>|4g%-Kl-v!)~jGu`KLqCB-ZKDgYE(^g;3c=7Ja0nmJu)=>t3ISy=3=f;IzE5S%y#T?>$|$s+ZR!%k|VeN z#(P&ve}fUt1%_Z^d-Vzyhlk_&hf3&J$Rz7?W>%IdMpE8bU-8}d@lcWXi0`-aO9Z5q zWsOul=Nnw>BonDvrSlAb)p(0}BHdO&jW@N5I~m3yMZ14?H8HB!vNIGg^3&4GLxTnd zQTqCj4QM=ijUuy}xyZK;5s5%(iip&q&I;V4@>JAWI$8BCk1d@@h#hkchC32Ya32xN zzuTtR5&r%tO3iCcwe`NACVJTLTfdNeDVQ$vA!XN9AzfaB=#21OMSe`!Ek1dsQPn-z*3B z7Coe&u5~J^n?D2;6UCVVv4r;WqcLvmO-8k>I>-R*T-Wr=_Xoz4Y{ai6%ucO4_-f@= zTdnax?2wgQ86r$*8Vq8BEM^jZ2?$7N8nih|N5hAferBFi2Woi5R}|$~R*Xp^YkD&h z##3+_1ZUppr&I~z7U%?ou(Hd36ObUW8Q>cky44Mb^Mbfh7k&<3AG+w^uxdtJ^47t= zjTf#jE*MXQBg3D0?UnbwG{f)Fpf}YXMMB%7rK%Y3fGuP|N842*tH6zRpuOJz7;JLI z?#D*xl`Map#3{FMW$~e=rAxmPy1l|>W{(95-bGtiBO})% z!a2<2Q@&JFj_b~O!&Z{xuSpCi_mWOVwWOd>6IbM-310D?%F0+)5X6% z%LVZYDzF5LBK(P!f-7Eo7+j|-o93GN=`_UfHGeX)7`2k(9kLiWuVnp|-{gOkkx_0XD+M7AWsmWrqX&Pb!YvQq7?HSm5$_f% zD)q;QH!1qPQ%fv)BWL24@9aDn?{JwyA^=ypWnA@jsWc0J9?gVi@#{$0j<~{xBr&_! zZ?&iM_xBsar#XoYxmEH0YhZ!n=k#Rz4{Y&cx`s?(5JI*v;DDj zC8myNZxSJ!dikS32q^d|RpNH&KMgl}p9X_sucfj3qE-IXUGF;WQ5!FFvFTgN*&ZSO zX}BY1NuGQ5@y#*HAuOj~LUvq$1C&XZUY~XX!LMauRq;tP*gkgzChgMk+5d~?& z&^d_#9;q*sQC=?SwNTmaI$>JPl~Y$F~o>59yi>}OaRZd2V&pT zh4S&Cw`_Lc_2j;-g?}TZeZo`JeZJN!f5>&;T#eZ|)`E$n*krOOaSxd`AbsN2rzw4Z zd8hh>s8!vZ@xW}lqyUVOYVRLHS(Ze>GerOA`rC7->>k$9q6VrbU5J1hN#ko|bijZ? zbpF82b<@#qva&_AJ0(A5s0K$2f;TP!uhGk5h~YZi;E(%w^P}bEg=DokZ6ka>)MMRS zwew-_M7P<;o9lW3e40}}zHf2KUi*x&2Hws#(L}*lo&0i}7r&X`?)$E2ILwR=4@P327dVoh0`#?Z>Vej$ggd+RR z($CYCt=>jD5X>k?O-70Nb1vsm!)pz(g9Q)A2lJEGoFyWT0$q#5h#D<{UDJQjnD4rw z`T2~p{q{ll-QuZ$773-MV?7f7qSg%KqQ3uPDg_9IesSiw`Z&)xFEOP3{jvG(rC;;L zt#8&dwMdoDlYHLtV`No`=gY!S+`;CSd3eN&gmWxdU>oM}{`A_qKP*Uz^B2H*68X(AsdV`nI#~fGfV_t=zYGa9`u?bN-D@b=9iS)%px^;$*`! z&VJ!F5G@k%(MF?)y;4;ES|Hi8Nv9d_r>cc z(u>l!`&k&qh0f`cszmb9KB;IM8T4UhlkM1@R6IC=2{lu{HDZZhjPQQ6Tk9gg`~f3u zXb3X?osigPe(=+y7{kHD;c|s)}WAo4$I7%wGd6#6D_oe)$QOki!XFT^W(FN^@x!+P@|vw#wPu zQTj%CHDtMD3%56+_Y(eQ^bhw1vjm3kWIer;BxCEZe^QDX|6zkDSu78;sueRXek7dl zcGcLoSL)HOTYt%gVmZi#dHh%^DRu~9Y-kMo_%KD*CIpJGvFZv~y0|wFFp()z5&Ip| zOW|tl`MJkP?j+|K3z=^!&HoZab5s0v8nE)y4a}M__FI$sJqP*bWe~o1SbMC0YmoT7 zUb~GALlun`90|0MAF6ZmC>I^zJxlhHWcw{5^d`_ha$6r;SPWXpkTr>&%W$w-tAymK zDds0g?v_ihFmi$W3yip%6m4s_PiarWFDphURB{y!kG7{Z6fjCuti3j3a$?@~9(wfH zO9EaVMc6FzkC#LE%0o4xoKB3YEXKT(Ayut%i5~Jgr%k39ulB56)=tnNYitxQ>*S8( zc6(j?p!IQ4iG-bQ)$APyCC-YuQIum1d=+PnnrW7n4cqTf66|PG`VlenNAsmunkzrf z<%Nl2;`8McBE!va^2LcZ$HRpU{JjraNk?TFAIkv4j2*mtGyr~_pi5E&p`_OpY%Fp9 zr>SMstXkl><344#5~lEm_S?K;Io3a>0;02`puz_SCEp2Da8XK}md0%Y;t+pz8EWF# z>d?pA+A?F_ivnbd=;5L4Ql%oX_~!>#6YuWtetdCH!U)qV-AS)gF9ul&i<3LNnx2>&AHMGjIP~{4}M|o)Q$Rn zap;zbi6-FBrGLv^q#7KbGiN7X!`=?GigU_KKljqRwvcC673Rz<~7~}C~DXd$lJUE?4DE_TGXCVg`cSXHNOCx0InJxjFG~ilSfNq0#U$HuO1)GzjjqO z+lO*-KB%+k^H3X|#(H>CTV98H@mn>y$MG>x^vvG zx9YszWiERle^paC>a*0jTx5#J(Zz4oqu>nt#vt;qM`qALR+S6qimB*~VgCAc`l@?7 zjVG}e$~JMB*FTPpQnlznpbN(RH3FUP`B=f;H@WG6tcUEw)|Ub#EbjJ*e1ZZz<8%$| zM_nru#2ka#-}8k`wWh!VTqwfMH<=_M@tiG|w+!?uq6@@xcX-sDRa zhvy%^9@07cshxa%%$BbGWuDavQGL9;GdU8XfMe=RH}%YH;u? z1q3`0kJjXT8_X}aOANbJ(%q{=(hg>lx-YleB}pyPlbrWyvH30{^B*LP&2)%`;=V-j zsy||>WQ)sKj|q&<4)!B4k!dRbG1#|)a21U)-c3RL<>UX_YM^~F?&Aoc8=PyaeF zXsk`vS_@y6n(@vtOhyW&m4UBEjb)CD|BB0jetGP88|-xAmB0Vq5N6tt0Q+Rl@t#Y| zzoA$@Q4+{Udq=$wdGH|28wWBr8{?J87YESb@BM|j+{fiG{{=YdW zih*YuI=Yy*AB4K~+X3ob|L#kD@MIEs3v-3n>w!dZ&MU4GFORFQQuKpq$C=DIMg_RS|DCshOO7bV8c0k<#Xi5S==G~_K ze_Zo#oR4!JU(xh)644bfcvxBlPl6@YU)U^0LlFS^M1|c7_>@hvdR;ll5KWop(!pN} zzEL*?YRJVJb+Tcc8}Rcjp6=UNU2TLPpVHh<8UQ*0wksepnUj%04C^L?{U5UtE5mpY zKp)cO=Lv3YZG8cBQMY1Mv?BqXRo4?uLdPjNyBRg(`CgsZ2bJWku`(S2fZY`OCK8l( zXsyI8dZvLzfAcT=gz#NJKXU{X7a%5Gx^4WX9LSN3{?Qvo@OGMxUfcR|T{id>{j~aW z!?8bKmCxsOI8$7V|_GO9&&UiGZwz2AzS0M2A3 zrKO`gQFy)*0wZ4YG6Zwpt@#@Qyp$~LpvpV4fK}-gTf23x=+S?D9S!r$ zQTELH<&sF+{h%O!0e=P0s$R$;8Ma$it z5mt+}C9Ec6g3Qd!qVKlGvn2*MxqSB5(KNo=(btFBR?*&Ru)Fj4 z+M5<>)a{DYp9Ks$%wTfHENP}mS-Mu zxsh=u-Lmop_GiTb?70S4t+P(8#QT4Vup>kMV z#^y6WWG_^{tM5${!oXz37{w=j07cjby~V?pB&p1*{&4<>zi&*aEJxFETn%KO*Q0cw;DGb6Dhl?N8bG91g8#R|s1t(%V7AGM8t(b94c7E)tAjKu^K^102i z{y}7@7vy$2GC`e9)CB8}Aow_D?;xk!_TV}dFd=)SW;t>~mRn7Rj8l9|vzUc>lVeU@ zmf{V^=aPTpt10AttzhYSSO?@38CN|nLsPkC)lP$h^W^pz39ZW5<>b=ukp8oAJkhQ# zCh8iK2gT8AEL=f9zu)V&RcF<4+UWXy<0$hot{6llGg2{f!|hwEkPiD-9pI?#TF~68 z8Jop3>R1WP#vsyjFM0q}wuRZnT1$*n)9EbNrp)chZvr*et#=!U$zhq+tV&r9whx!n zDmuSMVB;B*0*mj*>sH)~v|wc?sZ#JwCm@-e5vgsMblQSUa3k4sK#q0Gg{LRhHRqEoQ%!T zr4b?d9d2(8{I!48Y(oBy2kc!SIH;DdfeGA>g?x@ONvx3oRk5+Fvwz$3q+$1nAE3Er z`DTtB1bhG|s~L(-!a3a6R5BFX*T%BZYRG{= zt73zr^*;133(S9Ug^e^|$nq+hpA3O{TveIjv)b-5SKnSo_#0{bMjp&YN)%Y*RjsQu z8#$|*GVkjEP21{*D%tNPy(S-h7%K9_7{3%rjg!x?<_aF(Z4$lW@G35juPHMgA=0}+ zrtI*Ue?G!Ac6`4J*8ZE%aX+?^BgUB?>oqgKHeI9ww}?WCmE}N?d5RDq!shZ{C}M?h z#{fSAq0ATzh`o9yLjD~oG}A8GIWS`=wZ}6AtNq$RFz5CwJ^HS^Ah;)m{4v9<+yxL7 zmdq9pJ*wa~FT`%xHv?4}4M#=Ga#JVle2>K_#qO#xpOsy4*+g~)!uoOM$D^4dl~LGc z?y5qe8-Vp?$?ZF`;IubJGAC+el(+n?H~aAMz{N2g*kJ0Mj@Q=044V@^>-jyC3#oMO z0Yc8;FJ*t03!8uI)(`x^|8JaU1D$DsiVt^oc6S#II|uA}j;kk+BpP8$M;x?){rqP1 zx>0lvV9A-p6YxA9RUPwZ7C^X>%u?s4=v$jU-L}3iYY*jd_QVufsTJKC0Z- z)MoqEYR|<-MWGjq+q*b^&@lD}HbbW-{1k17zt|(OC{F%xv2K|<@$LR_A*G)x?6#$v zM(hf-TtWm(5N-4{r@vfx)WcDRmcy}~PN*=rZDkiKwXHBwMi5JrNfL%OcuneA!(;aS zn2hW}JN_D=7OZzMHWXAVH$5N|PqhxeH)H}}t&Vx6iOI?1?5h#Ckd0vF6e_T{E4$& zX|&K#3ek4Rr~S6a-Ie5B?Anj{5B#!*hwe%j`onRxnTh@K^a6tJ?R4fCVlr7P#6D2U zH?gXydJuCA+r|0k0bkyi&$y8}Znj!^dwF}*af?2AN8*zFgXUkMfoI>H@=BO>y&%Co za~*u~4E&4zFIxQze-^m>x4c&-``;%FV<-5&RVm@`RCHhM5?q_(}ZYWF24xui5DY4551q%C#smaOuCIHuHOlm`q!rgV_=wn^5}@&V|H1{nLz)9 zfWYdK6ctjubkwiiWjp2+vXOz|BK*$~5ce#!#i!hb;PmA(Hk#IYHi9~iS^ihJ2GWsy zm;?7lXNQqwD9H2E+W_LZ_Vu~Dbr%8Q$LpBF z{&Vj&4oGApC{6s`x=HQqbJ&~;u9a3(R_J!NhXjv}sC&yVs4as?Sk#u4IrF0TdQ3^S+(3U~_o zEHk5*g(gmj(%pj$@SS}M@!WJ7L@0@mpd&PT;#46DUhkc1#+RN1!30Nt&nGM@=RL8B zaSsj@hTF?8o@?Fdo50+-7pFoXplT>0wz{c*s^bx0k$@0Hw5!x*j zWIyw2;BTXp6D=g{;DN6;e__ksSOlM8qV65}zEV4hWK;`EW87()K&=-~5S^_^KtbAz z{1I-L`@_j&mMwd(i#g=2o^|7xp$83uS0RoqShFdZL-l2bPD+H>bEW`Usq`3I1UvhF z+CP_uSo&NjA|n%Qc4^3-rn#fc{+9X@qMvP`enUMU!-DPr{k4Y5y!=YBClN(;nzZYw zhu_IiK?nM5iYjJTeZOs-K^YLa(cX{br~A!=Z4Vj>UXd&U_=1*(=HPQW$(p3EChzrkv`42EWb4juyOjo6|l_Yh!?;9a4B&qlhDS< z5&*J#1m6#8gqk|N7|ae(K%_XU6->H6KkohwnB3aidXE4K{^`?LA)!F&9rIhns-PMx z)Q%z}i$FmO*$v|-_3?p&PMVg9aWh?cBsqZm*!UKiT+}nnYdKz{dZ&W(TiG2@AffRg zQ^oeC6UPgSZ$9`+^&%) z?RbWN@rBB7TLrEF!iX2z-}E>tE#3!XHd*wy;Lzp^<)3tT;l4r#-M+%hc=a9{C%>C?{Y#dhY^@Hu5SwWZ|1QavG4!HuV&hehPJ@E z>ostcNFThP$Y+<|z*I>xs@jn!)TlqPk9+`&LO=?<#~){yF5cTb{yez|zTB(}U?TMq z%!M-D`4qC*loRj@szD*QpN* z84e$SN&bcLrEo<5p}AYF{+Ief2?Q;%lJEgI`xS=rOwQ}mvuqYv1ZA!(&;v7FqxOB+ z2@uC{%W-#-te#MXZqF5S2?x%&$v-zM72;2);jSleo4(z3LpGx#5t6^jx$%c9FDfTy znso8M;Ejp;^IWk=Vr&xeWZY4-=PxEMXzn*m*HtXo8z9NNqM5%wova@NCk@g}Ls~== zB+i3wOkA{MFG{8=V_2aqa>nXbT-~Pw1_KI#k~E4;lQY7CPYnv{76##m7>5GBAeab+ zJb|%Icez_%#_^%go%X^|MLT2Yc`oQ}7x>QNd%`8@M4F0&gf1&)y&NEtz9{y@@LXJ-NAaAWBB?JNa`hIT|@=}6X<4V%l0Rsc$sOrVz z3mcyNaCjfmWoLG2L!T;9=+`6>CviX4k*_hLyK5UX8#_9FYxP{QNPw?*p!Kl|EG;Id z-yGw0y`*0Z;GH&CBQ?Cnqh5cDQz42`TPd}8qa%3Gwmtb+f8%@i_TeA5eWDcv9j)4r z_Widk2D$nk1pRn3#RAOy-%43qD-?A53*YS@{Qq17IxB$?D*u1Cc?&WBKeiF9w3ZlY zdkayVpuWMu=;Ot@c$|LV*IWEgFE1|*f%ZS(VE7X?wPa;gm9)hs^4rqn@crpS?S;p> z`Bod-5EFd22K-daKo|i}2O-c@8@&aTC{f(Ko!-28L(az`$c4A)4+8K$Nr8IDyN096 z!45)epqp6J{kTT&bTsS@FEs=2vG*_$&?zQf!-GWjJDe>ensFKBKBVKZ$DbKF0=6Ld zuDA0;{B+HL00^iT5WF*cf|{kK#ai!?%Y@Zf7-k9 zucodoOfY~7L5db^1k_T3fP$r z#l!^k+Ot>(hvWps0Vkwa4fkiMy8gME!Z}gSGFPC%gnr`!ZY|cRv_=TkGRCMke>8j&0G<>%_u#2)d?v;O^=r;D_ z_09>)jKn5x1TFfjp!Z!$$9qAZsUl%_C;R%>45WVf>XPO@QyOm${B(@71R&>ZfL$Ah zjoFmv2CkT7ZnW5tNF;)wO~w_O_oy}>#G`0$J09wZ(u_ zuT~EGrVDQLk=E1tkpAghpXh9mOZZ%1`Sy-v1FZacZ?R_da8IEcM;#wxCS`Z52HN(d1D?nAtp!fc~A{M;~mHN+yMD>ff5B8(W z&7+ys+b@*%0Fb~Za+*)2T*-%s5x6E*7BjA7*lu`oe7H4hi!VQ`>DXFOH#nH*OZnH@ z(zrVa#^@G2D=aQHMi>WiaG=W&Qm)11mnl>rZq?VryKr=9qcoHrtNLSh?ws z%nyV|0&$iFTa6HXf&2K&o3x(*Kjd~z-~K>1xbNS36j2nn4+NTs`?|}^KRIT0J#Y_V zpK6Z{c~uuQ+!*c-w2I8R4Z<>iM6o_ii*lQNG9D1XV0d4I*xENZm{XQveZ}tA701@M z8HDl+DT)+e)_K3qG4hyr3w}%*i*ae{xRzmc$<56zxHs$M`>ELFKKze1x<1X3kGF-| z>+On9v2qB@2V5U{#J=$^Fw|abkoHkXO+%d>z`g7Gh&*UNmUv58N*u28Fp0eYjJ=U* zfEaUt5kxp@BT{{L2(3#==PPFI62jP+eToNq zHm<|>ZG8vgQ^Tc1Wnuc7p^=9lE$0)Q#xD7UzW(J)cd;RdygK4qnPY1hHs@#P={iHd zd583xJFc!mR>0S@B$|BRSIm8KPziPHDHlvx|Z`xCwdyba5(KCv($u z7;}lHd8)|-+5)xHj`skFIC{+yf;x@CSs=XQ_huWAjdSOX*35#=#oVTx-8zs_E`2lE~-v7NxDjT{Qnp(lXk!zV~fxN*# zk#r;aZ%v4!)s>*jv1_oi#K3rD$+YZ0$!o|f0^>=Ww;<&qm}`zgSAk+Sn|%ftrCfZ!scE1!M6-^=C-h%^Rau0B<`K!K zC}QeKQ;@j0Y8<0%URz}zmLUZhGOfv(98Jby71FICmXE&NScfg-2laRl`|HCE*l!8I z-EEWa0Vc2i)r7&6u?jJjrm|-dBvfc}8Rs(*IBR9pVEX9#O&ZILX-i-7jD1ifP+jEl zE7|mdSuHbr&zB1Ez>Ht&iDYz%A;Dz=>A}-N5B584o0vL3f@g|PLw%|^AjQuwz>~|S z4m%GwMR*{&BfoeO`6(^@+#k@FrRH-UDDFrYV8X9w75o|~W=z4OMn`P80@>$h# zChLBBL#z1Io^y}a7%Fs`QxCIF$0`F7`M~JXw;jEYsIS?dXEruAsvn=Hw{y~F_Ad@v zokDCy6YQq_ON}`|DiC*woT`%dJvwV>0U*iVe>lWkfTXlCImzyiBFIAxVZQrUp}(5o c|Jn*xcHL;9O=}HlkL2LzOmw+e;}Dqq8`wcDOaK4? literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/assets/conversable-agent.png b/website/docs/getting-started/assets/conversable-agent.png new file mode 100644 index 0000000000000000000000000000000000000000..e41f60ba6033a60df458754e7d619645aed4058a GIT binary patch literal 30650 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�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 Date: Wed, 21 Feb 2024 22:38:33 +0000 Subject: [PATCH 11/43] Improve intro, fix typos --- .../docs/getting-started/introduction.ipynb | 24 +++++++------------ 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/website/docs/getting-started/introduction.ipynb b/website/docs/getting-started/introduction.ipynb index 907d7d7fe54b..9d79309a0cd4 100644 --- a/website/docs/getting-started/introduction.ipynb +++ b/website/docs/getting-started/introduction.ipynb @@ -16,12 +16,10 @@ "source": [ "# Introduction to AutoGen\n", "\n", - "> The whole is greater than the sum of its parts. - Aristotle\n", + "> _The whole is greater than the sum of its parts._
\n", + "> -**Aristotle**\n", "\n", - "AutoGen is an open source framework for building multi-agent systems \n", - "that enable complex workflows. \n", - "In this tutorial, we introduce the basic concepts of AutoGen and show \n", - "how to use each building blocks." + "Welcome! AutoGen is an open-source framework that leverages multiple _agents_ to enable complex workflows. This tutorial introduces basic concepts and building blocks of AutoGen." ] }, { @@ -30,19 +28,13 @@ "source": [ "## Why AutoGen?\n", "\n", - "An agent is an entity that reacts to its environment. It can model real-world\n", - "entities like people and abstract entities like algorithms. Multi-agent systems\n", - "leverage the this abstraction to implement complex workflows as collaboration\n", - "among agents. \n", + "While there are many definitions of agents, in AutoGen, an agent is an entity that reacts to its environment. This abstraction not just allows agents that model real-world and abstract entities, such as people and algorithms, but it also simplifies implementation of complex workflows as collaboration among agents.\n", "\n", - "AutoGen provides a framework for building multi-agent systems. It is designed\n", - "to be composable and extensible: \n", - "you can create a complex workflow by combining simple agents,\n", - "and you can configure each agent with customizable components.\n", + "Further, AutoGen is extensible and composable: you can extend simple agent with customizable components and create workflows that can combine these agents, resulting in implementations that are modular and easy to maintain.\n", "\n", "Most importantly, AutoGen is developed by a vibrant community of researchers\n", "and engineers. It incorporates the latest research in multi-agent systems\n", - "and it has been used in many real-world applications, including math problem solvers,\n", + "and has been used in many real-world applications, including math problem solvers,\n", "supply chain optimization, data analysis, market research, and game AI." ] }, @@ -52,7 +44,7 @@ "source": [ "## Agent\n", "\n", - "An agent in AutoGen is an entity that can send and receive messages to and from\n", + "In AutoGen, an agent is an entity that can send and receive messages to and from\n", "other agents. An agent can be powered by a model, such as a large language model (LLM)\n", "like GPT-4, a code executor like an IPython kernel, a human, or a combination of these\n", "and other pluggable and customizable components.\n", @@ -233,7 +225,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The comedians are boucing off each other!" + "The comedians are bouncing off each other!" ] }, { From 4cf31d5b35af5c9ec0b08c5ac0bd51544106251b Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Wed, 21 Feb 2024 23:06:01 -0800 Subject: [PATCH 12/43] add what is next --- .../docs/getting-started/introduction.ipynb | 9 +++ .../docs/getting-started/what-is-next.ipynb | 66 +++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 website/docs/getting-started/what-is-next.ipynb diff --git a/website/docs/getting-started/introduction.ipynb b/website/docs/getting-started/introduction.ipynb index 9d79309a0cd4..c134f813a1d1 100644 --- a/website/docs/getting-started/introduction.ipynb +++ b/website/docs/getting-started/introduction.ipynb @@ -38,6 +38,15 @@ "supply chain optimization, data analysis, market research, and game AI." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Installation\n", + "\n", + "Install from pip: `pip install pyautogen`. Find more options in [Installation](/docs/installation/)." + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/website/docs/getting-started/what-is-next.ipynb b/website/docs/getting-started/what-is-next.ipynb new file mode 100644 index 000000000000..2a82601c783d --- /dev/null +++ b/website/docs/getting-started/what-is-next.ipynb @@ -0,0 +1,66 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# What is Next?\n", + "\n", + "Now that you have learned the basics of AutoGen, you can start to build your\n", + "own agents. Here are some ideas to get you started without going to the advanced\n", + "topics:\n", + "\n", + "1. **Chat with LLMs**: In [Human-in-the-Loop](./human-in-the-loop) we covered\n", + " the basic human-in-the-loop usage. You can try to hook up different LLMs\n", + " using proxy servers like \n", + " [Ollama](https://github.com/ollama/ollama), \n", + " and chat with them\n", + " using the human-in-the-loop component of your human proxy agent.\n", + "2. **Prompt Engineering**: In [Code Executors](./code-executors) we covered the\n", + " simple two agent scenario using GPT-4 and Python code executor. To make this\n", + " scenario work for different LLMs and programming languages, you probably need\n", + " to tune the system message of the code writer agent. Same with other scenarios\n", + " that we have covered in this tutorial, you can also try to tune system messages\n", + " for different LLMs.\n", + "3. **Complex Tasks**: In [Conversation Patterns](./conversation-patterns)\n", + " we covered the basic conversation patterns. You can try to find other \n", + " tasks that can be decomposed into these patterns, and leverage the \n", + " code executors to make the agents more powerful.\n", + "\n", + "If you have any questions, you can ask in our \n", + "[GitHub Discussions](https://github.com/microsoft/autogen/discussions), or \n", + "join our [Discord Server](https://discord.gg/pAbnFJrkgZ).\n", + "\n", + "[![](https://img.shields.io/discord/1153072414184452236?logo=discord&style=flat)](https://discord.gg/pAbnFJrkgZ)\n", + "\n", + "You can also share your work with the community on the Discord server." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Advanced Topics\n", + "\n", + "[Curate a list of advanced topics and link to webpage version notebooks.]" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From fc70ffebcaa3c7b1b88455bd01ff1160e52a7f90 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Wed, 21 Feb 2024 23:21:12 -0800 Subject: [PATCH 13/43] outline for code executor --- .../docs/getting-started/code-executors.ipynb | 260 +++--------------- 1 file changed, 31 insertions(+), 229 deletions(-) diff --git a/website/docs/getting-started/code-executors.ipynb b/website/docs/getting-started/code-executors.ipynb index d3dfacb2f2e1..ff37d311239f 100644 --- a/website/docs/getting-started/code-executors.ipynb +++ b/website/docs/getting-started/code-executors.ipynb @@ -54,14 +54,14 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "code_executor_agent = ConversableAgent(\n", " \"code_executor_agent\",\n", " llm_config=False, # Turn off LLM for this agent.\n", - " code_execution_config={\"executor\": \"ipython-embedded\"},\n", + " code_execution_config={\"executor\": \"commandline-local\"},\n", " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", ")" ] @@ -70,32 +70,16 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The code executor agent is initialized with the `ipython-embedded` code executor.\n", - "This executor runs an IPython kernel in the background and can execute Python\n", - "code.\n", + "The code executor agent is initialized with the `commandline-local` code executor.\n", "Just like an agent powered by LLM, the code executor agent can also respond to \n", "messages." ] }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: 93\n", - "\n" - ] - } - ], + "outputs": [], "source": [ "reply = code_executor_agent.generate_reply(\n", " messages=[\n", @@ -108,8 +92,7 @@ "```\n", "\"\"\",\n", " }\n", - " ],\n", - " sender=ConversableAgent(\"user\", llm_config=False),\n", + " ]\n", ")\n", "print(reply)" ] @@ -125,6 +108,15 @@ "[Discuss containerization once that piece is ready.]" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## User Proxy Agent and Assistant Agent\n", + "\n", + "[Introduce the two-agent pattern of user proxy and assistant agents, and how does it connect to the code executor.]" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -145,7 +137,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -169,58 +161,9 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "Write Python code to calculate the 14th Fibonacci number.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "Alright, here's a Python function that uses the iterative approach to calculate the N-th Fibonacci number:\n", - "\n", - "```python\n", - "def fibonacci(n):\n", - " a, b = 0, 1\n", - " for _ in range(n):\n", - " a, b = b, a + b\n", - " return a\n", - "\n", - "# calculate the 14th Fibonacci number\n", - "fibonacci_14 = fibonacci(14)\n", - "fibonacci_14\n", - "```\n", - "Would you please execute this code?\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: 377\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "The 14th Fibonacci number is 377.\n", - "\n", - "--------------------------------------------------------------------------------\n" - ] - } - ], + "outputs": [], "source": [ "result = code_executor_agent.initiate_chat(\n", " code_writer_agent,\n", @@ -248,147 +191,9 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "Today is 2024-02-16. Plot a chart for Tesla's and Microsoft's stock prices YTD.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "I would love to, but as an text-based AI, I don't have real-time access to data from the internet, including stock prices. However, I can certainly guide you through the steps of doing this using Python. \n", - "\n", - "First, you will need to install `yfinance`, which will allow us to download historical market data from Yahoo Finance. You can do this by running `!pip install yfinance`.\n", - "\n", - "Next, you should import the required libraries and download the data:\n", - "\n", - "```python\n", - "import yfinance as yf\n", - "import matplotlib.pyplot as plt\n", - "\n", - "# Download historical data as dataframes\n", - "tesla_stock = yf.download('TSLA', start='2024-01-01', end='2024-02-16')\n", - "microsoft_stock = yf.download('MSFT', start='2024-01-01', end='2024-02-16')\n", - "```\n", - "Once you have the data, You can plot their adjusted closing prices on the same chart:\n", - "\n", - "```python\n", - "plt.figure(figsize=(14,7))\n", - "\n", - "# Plot Tesla stock\n", - "plt.plot(tesla_stock.index, tesla_stock['Adj Close'], label='Tesla')\n", - "\n", - "# Plot Microsoft stock\n", - "plt.plot(microsoft_stock.index, microsoft_stock['Adj Close'], label='Microsoft')\n", - "\n", - "plt.title('Adjusted closing price (YTD)', fontsize=16)\n", - "plt.xlabel('Date', fontsize=14)\n", - "plt.ylabel('Adjusted closing price ($)', fontsize=14)\n", - "plt.legend(fontsize=12)\n", - "plt.grid(True)\n", - "plt.show()\n", - "```\n", - "This script should give you a chart showing the adjusted closing prices of Tesla and Microsoft stocks from the start of 2024 to February 16, 2024. If you need help interpreting the chart or have other questions, feel free to ask!\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: c:\\Users\\ekzhu\\AppData\\Local\\anaconda3\\envs\\autogen\\Lib\\site-packages\\yfinance\\utils.py:775: FutureWarning: The 'unit' keyword in TimedeltaIndex construction is deprecated and will be removed in a future version. Use pd.to_timedelta instead.\n", - " df.index += _pd.TimedeltaIndex(dst_error_hours, 'h')\n", - "[*********************100%%**********************] 1 of 1 completed\n", - "\n", - "\n", - "c:\\Users\\ekzhu\\AppData\\Local\\anaconda3\\envs\\autogen\\Lib\\site-packages\\yfinance\\utils.py:775: FutureWarning: The 'unit' keyword in TimedeltaIndex construction is deprecated and will be removed in a future version. Use pd.to_timedelta instead.\n", - " df.index += _pd.TimedeltaIndex(dst_error_hours, 'h')\n", - "[*********************100%%**********************] 1 of 1 completed\n", - "\n", - "\n", - "

\n", - "Image data saved to c:\\Users\\ekzhu\\autogen\\website\\docs\\Tutorial\\31c88163ca9f414ca4ccb20045e4aa84.png\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "Great! It seems your code was executed successfully and the plot with Tesla's and Microsoft's stock prices was generated. If you need any further assistance, feel free to ask.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "How much gain for each stock YTD?\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "To calculate the gain or loss of each stock Year-to-Date (YTD), you can use the formula:\n", - "\n", - "`(Current price - Price at the start of the year) / Price at the start of the year * 100%`\n", - "\n", - "You may obtain the desired information in Python using the following code:\n", - "\n", - "```python\n", - "# Calculate gain or loss on year-to-date\n", - "tesla_gain_YTD = (tesla_stock['Adj Close'][-1] - tesla_stock['Adj Close'][0]) / tesla_stock['Adj Close'][0] * 100\n", - "microsoft_gain_YTD = (microsoft_stock['Adj Close'][-1] - microsoft_stock['Adj Close'][0]) / microsoft_stock['Adj Close'][0] * 100\n", - "\n", - "# Print the result\n", - "print(f'Tesla\\'s stock has changed by {tesla_gain_YTD:.2f}% since the beginning of the year.')\n", - "print(f'Microsoft\\'s stock has changed by {microsoft_gain_YTD:.2f}% since the beginning of the year.')\n", - "```\n", - "\n", - "Here, `tesla_stock` and `microsoft_stock` are DataFrames holding the stock data. The `Adj Close` column represents the closing price of the stock, adjusted for corporate actions such as dividends and stock splits. The `[0]` or `[-1]` index is used to access the first (start of the year) or the last (most recent) stock price, respectively. The gain or loss is then calculated as above. The `:.2f` in the string formatting is used to round the result to 2 decimal places.\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: Tesla's stock has changed by -19.31% since the beginning of the year.\n", - "Microsoft's stock has changed by 9.83% since the beginning of the year.\n", - "\n", - "C:\\Users\\ekzhu\\AppData\\Local\\Temp\\ipykernel_18220\\3394466230.py:2: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`\n", - " tesla_gain_YTD = (tesla_stock['Adj Close'][-1] - tesla_stock['Adj Close'][0]) / tesla_stock['Adj Close'][0] * 100\n", - "C:\\Users\\ekzhu\\AppData\\Local\\Temp\\ipykernel_18220\\3394466230.py:3: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`\n", - " microsoft_gain_YTD = (microsoft_stock['Adj Close'][-1] - microsoft_stock['Adj Close'][0]) / microsoft_stock['Adj Close'][0] * 100\n", - "\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "It seems that the code was executed successfully. Here're the results:\n", - "\n", - "- Tesla's stock price has decreased by 19.31% since the beginning of the year.\n", - "- Microsoft's stock price has increased by 9.83% since the beginning of the year.\n", - "\n", - "This indicates that Microsoft's stock has performed better than Tesla's stock so far this year.\n", - "\n", - "Please note that the warning you saw originated from using series indexers, i.e., 0 and -1 indices with 'Adj Close' column to access the first and the last element. As of pandas 1.0.0, using .iloc is suggested for the same. The warning is just to ensure future compatibility of your code.\n", - "\n", - "--------------------------------------------------------------------------------\n" - ] - } - ], + "outputs": [], "source": [ "today = datetime.datetime.now().strftime(\"%Y-%m-%d\")\n", "result = code_executor_agent.initiate_chat(\n", @@ -405,21 +210,9 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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lSlTRh07dpTNZtPevXv18ccfKzIyUjVq1Ljmefbu3atWrVrpwIEDioiIUMeOHZWSkqLly5dryJAhmj17tpYuXarChQvbj5k6daoefPBBSVLDhg3VsmVLXbx4UYcPH9asWbNUtGhRNWvWLMfXEhcXp9tvv10HDx5U06ZNVaNGDa1du1bTpk3TypUrtW3bNoWGhjocM27cOA0ZMkSS1KhRI1WoUEG7d+/WXXfdpZdffjnH752VwYMH67333lOTJk109913648//tDChQu1ZMkSff3117r33nuzPO6dd97RhAkTVL9+fbVv315Hjx6V1Wq95vvl9nu5c+dOtW/fXocOHVLx4sV1xx13yMfHR+vXr9ewYcP0zTffaMWKFZk+s6v5/vvvJUmtW7fOtk36/EALFizQp59+qqZNm+o///mPvLy8NHXqVAUFBeX4/VylT58+euutt3TmzBlt3LhRjRs3dtjfqlUreXl5af78+UpJSaEnIwAgZwwAAHBVu3btMiQZPj4+xvHjx+3bq1atakgypk2blumYY8eOGcHBwYYk491333XYt3TpUsPf39+QZGT1V3HZsmUNSca+fftytD1d//79DUnG5MmT7dtWrlxpSDLq1q1rxMfHZzpmw4YNxsmTJ3P1PseOHTPCw8MNi8ViTJw40UhLS7PvO3nypNGqVStDkjFq1CiH41588UVDklG1alXjyJEj9u0XLlww7r77bvvnMWLEiCzfNysbN240fHx8DIvFYnzwwQcOtRiGYezfv9/YuHGjw7bsPvdGjRoZkowuXboY58+ft28/fvy4cdtttxmSjN69ezscU758eUOS8euvv2Y6X2xsrLF582aHbSNGjMjyGidPnmyvq127dkZcXJx93+nTp406deoYkowxY8Y4HLd582bDarUaVqvV+Pbbbx32ff3114aXl5chyShbtmym+q4mvZaAgABj2bJlDvvGjRtnSDJCQ0ON2NhYh33p947VajV++OGHLM+d3WeQ2+9lQkKCUbFiRUOS8dprrxlJSUn2fRcuXDB69eplSDIefPDBHF/37t27DUlGRETENdvOnz/fkGQUKlTIqFWrliHJGDJkSI7eZ/ny5dnehxnt27fP3i67n8d0aWlphq+vryHJ+Pzzz7Nsk15nVvcrAABZYXgaAADXkD6crEuXLoqIiLBvT+91lNUQtUmTJuncuXNq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22vPzn/+8x95e3trwoQJmjhxYqbhUgcOHNCmTZuueZ477rhDjRo10sWLF/XYY48pISHBvu/kyZP2p9317NlTpUuXliQlJCTo3XffzXK+nF9//VVnz56V1Wp1WW+crDz11FPy8vLSrFmz9MMPPzjs+/bbb/XNN99c1/k/+uijTJNdjx8/XuvXr1dwcLAefvjh6zp/Rrn9Xj766KMqW7as5syZoyFDhmTZAy8mJiZXgWKFChVUpkwZnThxQrt373b+Ytzk4sWL+uijj9SiRQslJiaqRYsWevHFF7NsGxcXp507d6pQoUJq2LChmysFABRYBgAAyGTFihWGJMPPz884ffr0NdvfdttthiTj7bfftm/76quvDKvVakgyatasafTq1cto1qyZYbFYjOeff96QZGT1V3HZsmUNSca+ffsctp85c8a+LzIy0rj77ruN1q1bG6GhoUbNmjWNe+65x5BkTJ482X7M+PHjDUlGSEiI0aJFC6N3797Gvffeaz9PaGiosWXLFof3mTBhgiHJKFSokHHfffcZDz/8sPHwww8bf//9t73NypUrjaJFi9pradWqlfHAAw8Yd911l1GxYkVDktGoUSOH854/f95o2LCh/dydO3c27r//fqNYsWJGeHi40a9fP0OSMWLEiGt+3hlNnTrV8PHxMSQZZcuWNbp162bcd999Rp06dQyLxZLpfNl97nv27HH4fLt162bcfffdRkhIiCHJuO222xzuhTNnzhiSDC8vL6N27dpGt27djF69ehnR0dGGxWIxJBnDhw93eI8RI0ZkeY2TJ082JBn9+/fP8hr37dtnv74rjRkzxn5NjRs3Nnr37m3/nF944QVDklG5cuUcfZZXfkbPPfecYbFYjGbNmhm9evUyatasaUgyrFarMWfOnEzHZXfvZpTdZ2AYuf9e/vnnn0a5cuUMSUZYWJjRrFkzo3fv3sY999xjVK9e3bBYLEZUVFSurv2ZZ54xJBkTJ07MUfv0z2r58uU5fo/ly5dnex9mlP59l2R07drV6N+/v9G/f3+jW7duxu233274+/vb78HHH3/cOH/+fLbn+vbbbw1JRvfu3XNcJwAAhEYAAGShb9++hiSjW7duOWr/3nvvGZKMatWqOWz/9ddfjXbt2hkhISFGYGCgUbduXeOTTz4xDCP78CL9F+/9+/dn2nf48GGjX79+RmRkpOHr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cQoJCcm2XY5Coyv997//1fjx47V161YVL1480/4jR46obt26evHFF/Xyyy/n9vR2gwYN0sKFC/Xbb7+pVKlS2bb75ZdfdOedd2r37t2qWLGiU6FRVj2NSpcurZMnT171A7xeKSkpWrJkidq0aSMfHx+XnnvrobOqGFFIwf456lCGm0Re3nNAVrjn4G7cc4Dn8PMHd+Oeg7vdKPdcfHy8ihYtes3QyKk0YdKkSerevXuWgZEklSxZUt27d9dnn33mdGj01FNPad68eVq1atVVAyNJatSokSTZQ6NixYpp/fr1Dm1iY2MlKdt5kPz8/OTn55dpu4+Pj1tuBFe/z/bDZ9V/yiaVLxqkKQ82VERw5mvDzc1d9zaQjnsO7sY9B3gOP39wN+45uFtBv+dyWrtTT087fPiw/P39r9rG399fhw8fzvW5DcPQU089pe+++06//PKLypcvf81jtm7dKkn2ECs6Olp//PGHjh8/bm+zZMkShYSEqHr16rmuqSDyslgU4GPVjqPx6vbxGh08leDpkgAAAAAAQAHiVGhUqlQpfffdd0pMTMxyf0JCgr777rtr9hDKypNPPqnp06dr5syZCg4OVkxMjGJiYnTx4kVJ0p49e/T6669r06ZN2r9/v3788Uf169dPzZo1U61atSRJbdu2VfXq1dW3b19t27ZNixYt0muvvaYnn3wyy95EN6IaJUM1d9DtKlU4QAdOJajrx2v017F4T5cFAAAAAAAKCKdCo4EDB2rv3r1q0qSJfvjhB506dUqSdOrUKX3//fe64447tH//fj3yyCO5PvdHH32kuLg4tWjRQsWLF7cvs2fPliT5+vpq6dKlatu2rapWraoXXnhBXbt21U8//WQ/h9Vq1bx582S1WhUdHa0+ffqoX79+Gj16tDOXW2CVLxqkbwfdrqrFgnXiXJK6f7JWv+895emyAAAAAABAAeDUnEYvvfSS/vnnH02ePFn33XefJMnLy0s2m02SOcTswQcf1EsvvZTrc19rXu7SpUtr5cqV1zxP2bJltWDBgly//40mMsRfsx+L1iNTN2r9/tPq+8V6TehVV21vzXpuJwAAAAAAAMnJnkZeXl6aNGmSli9frv79+6tu3boqV66c6tatqwEDBuiXX37RpEmTZLFYXF0vnBAa4KNpDzdU62pRSk616fHpm/T1hkOeLgsAAAAAAORj1/Us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3nrrLe3cuVN//vOfdf/99+uFF15wO19JSYlmzpypSy+9tFX1Pf300/rHP/6hV155RWvXrlVAQICmTp3a5Jfo2tpaXX/99br99ttb/b7Lyso0ZcoUpaSkaOPGjfrrX/+qhx9+WP/85z9dbaqqqtSzZ089+eSTio2NbXXfODnGXMtj7p133tF9992nefPmKS0tTa+//rref/99/elPf2r1eeCuu465+vp6+fn56be//a0mT5580rZ79uxRbm6u6xYdHd3q88Bddx1zq1ev1tChQ/Xxxx9r27ZtmjNnjmbOnKlFixa52ixbtkw33nijli5dqjVr1igpKUlTpkzR4cOHW30e4GQ6++dv9+7dcjgcevXVV7Vz504999xzeuWVV075XeDQoUOaNm2aJk2apC1btuiuu+7Sz3/+c3311VeuNpWVlRo2bJhefPHFVtWK1mHMtTzmnnrqKb388st64YUXlJaWpqeeekpPP/20nn/++VbVjuZ11zFns9kUFRWlBx54QMOGDWuxXXBwcJPvtRkZGa2q+7QZ3VRBQYEhyVi+fLlhGIZRUlJieHt7Gx9++KGrTVpamiHJWLNmTYv93HHHHcakSZPcjv/0pz81HnjgAWPevHnGsGHDTlqLw+EwYmNjjb/+9a+uYyUlJYbVajXeffddt/bz5883QkJCTvEOnV566SUjLCzMsNlsrmN//OMfjX79+jXbPiUlxXjuueda1TdOD2Pu2JibO3eucckllzR53e9//3tj/PjxrToHWqe7jLnjzZo1y5g+fbrb8aVLlxqSjOLi4tPuE63XHcdcoyuuuMKYM2dOi8/X1dUZQUFBxptvvnnG5wBOpjN//ho9/fTTRo8ePU7a97333msMGjTIrbapU6c2216S8cknn5y0T5wZxtyxMTdt2jTjZz/7WZM21157rXHzzTeftG+cnu4y5o538cUXG7/73e/cjp/t95bT0W1mGp2otLRUkhQeHi7JmUDa7fYm/0rdv39/JScna82aNSftp7GPRvPnz9fBgwc1b968VtVy6NAh5eXlNTl3SEiIxowZc9Jzt8aaNWt00UUXycfHx3Vs6tSp2rNnj4qLi8+qb5wextyxMTdu3Dht3LjRtVTj4MGD+uKLL3TFFVec1bnRVHcZc6dj+PDhiouL02WXXaZVq1a123m7i+485pqr+XhVVVWy2+0nbQOcja7w+TvV50hyfs84cVbp1KlT2/XvEjgx5o71O27cOH377bfau3evJOeSqJUrV+ryyy9vVf1one4y5lqroqJCKSkpSkpK0vTp07Vz585z0u+JLG3SawfncDh01113afz48Ro8eLAkKS8vTz4+Pm77GcTExLS458Xq1av1/vvva/Hixa5j+/bt03333acVK1bIYmndH29j/zExMa0+d2vl5eWpR48ebv02PhcWFnZW/aN1GHNNx9xNN92koqIiTZgwQYZhqK6uTr/+9a9ZnnYOdacx1xpxcXF65ZVXNGrUKNlsNv3rX//SxIkTtXbtWo0YMaLNz98ddOcx98EHH2j9+vV69dVXW2zzxz/+UfHx8adcQgmcia7w+du/f7+ef/55PfPMM6fsu7l+y8rKVF1dLT8/v1bViLPDmGs65u677z6VlZWpf//+8vLyUn19vR577DHdfPPNraofp9adxlxr9OvXT2+88YaGDh2q0tJSPfPMMxo3bpx27typxMTEs+7/eN1yptHcuXO1Y8cOvffee2fcx44dOzR9+nTNmzdPU6ZMkeTcV+Omm27SI488or59+zb7urfffluBgYGu24oVK864hhMNGjTI1S+pdsfCmGtq2bJlevzxx/XSSy9p06ZNWrhwoRYvXqxHH330nNXW3THmmurXr59+9atfaeTIkRo3bpzeeOMNjRs3Ts8999w5q627665jbunSpZozZ45ee+01DRo0qNk+nnzySb333nv65JNP2myTSnRvnf3zd/jwYf3oRz/S9ddfr1/84heu48f3++tf//rM3hjaBGOuqQ8++EBvv/223nnnHW3atElvvvmmnnnmGb355punXRuax5hrauzYsZo5c6aGDx+uiy++WAsXLlRUVNRJ/wHrTHW7mUZ33nmnFi1apO+//75JAhcbG6va2lqVlJQ0SSrz8/PdNofetWuXLr30Uv3yl7/UAw884DpeXl6uDRs2aPPmzbrzzjslORNRwzBksVj09ddf68c//rHGjBnjek1CQoJyc3Nd54qLi2ty7tbs2t7oiy++kN1ulyTXv7LExsY22T2+sd/G59D2GHPuY+7BBx/Urbfeqp///OeSpCFDhqiyslK//OUv9ec//1lmc7fMs8+Z7jbmztT555+vlStXnlUfcOquY2758uW66qqr9Nxzz2nmzJnNvv6ZZ57Rk08+qW+++UZDhw5t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", - "text/plain": [ - "" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "Image(\"31c88163ca9f414ca4ccb20045e4aa84.png\")" ] @@ -433,6 +226,15 @@ "Code executor is a powerful tool, but it can also be dangerous because it can affect the environment it runs it. For example, it can delete files, send data to a remote server, or even mine cryptocurrency. To mitigate these risks, we can run the code executor in a container. This way, the code executor can only access the resources that are explicitly given to it." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Jupyter Executor\n", + "\n", + "[Introduce the other built-in executor 'jupyter-executor']" + ] + }, { "cell_type": "markdown", "metadata": {}, From 898e48d2d206e5f664cc5d5c9ac3e366a3917cd8 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Thu, 22 Feb 2024 20:33:20 -0800 Subject: [PATCH 14/43] initiate chats png --- .../getting-started/assets/initiate_chats.png | Bin 0 -> 71432 bytes .../getting-started/conversation-patterns.ipynb | 16 +++++++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 website/docs/getting-started/assets/initiate_chats.png diff --git a/website/docs/getting-started/assets/initiate_chats.png b/website/docs/getting-started/assets/initiate_chats.png new file mode 100644 index 0000000000000000000000000000000000000000..dfde7913750e9862526e53426b8a8a4838273478 GIT binary patch literal 71432 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 literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index e9289aac2be4..c6cfb30fa278 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -6,7 +6,7 @@ "source": [ "" ] }, @@ -14,14 +14,24 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Conversation Patterns" + "# Conversation Patterns\n", + "\n", + "In the [last chapter](./code-executors) we used two-agent conversation, which\n", + "can be started by the `initiate_chat` method.\n", + "Two-agent chat is a useful conversation pattern but AutoGen offers more.\n", + "In this chapter, we will show you several conversation patterns that involve \n", + "more than two agents.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Sequential Chats" + "## Sequential Chats\n", + "\n", + "```{=mdx}\n", + "![initiate_chats](./assets/initiate_chats.png)\n", + "```" ] }, { From b2838eeb9554bd09f23a3cd7a7010df19f63cf07 Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 23 Feb 2024 23:18:47 +0000 Subject: [PATCH 15/43] Improve language --- .../docs/getting-started/introduction.ipynb | 51 ++++++++----------- 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/website/docs/getting-started/introduction.ipynb b/website/docs/getting-started/introduction.ipynb index c134f813a1d1..f81337cd67ab 100644 --- a/website/docs/getting-started/introduction.ipynb +++ b/website/docs/getting-started/introduction.ipynb @@ -16,9 +16,6 @@ "source": [ "# Introduction to AutoGen\n", "\n", - "> _The whole is greater than the sum of its parts._
\n", - "> -**Aristotle**\n", - "\n", "Welcome! AutoGen is an open-source framework that leverages multiple _agents_ to enable complex workflows. This tutorial introduces basic concepts and building blocks of AutoGen." ] }, @@ -28,6 +25,9 @@ "source": [ "## Why AutoGen?\n", "\n", + "> _The whole is greater than the sum of its parts._
\n", + "> -**Aristotle**\n", + "\n", "While there are many definitions of agents, in AutoGen, an agent is an entity that reacts to its environment. This abstraction not just allows agents that model real-world and abstract entities, such as people and algorithms, but it also simplifies implementation of complex workflows as collaboration among agents.\n", "\n", "Further, AutoGen is extensible and composable: you can extend simple agent with customizable components and create workflows that can combine these agents, resulting in implementations that are modular and easy to maintain.\n", @@ -35,7 +35,7 @@ "Most importantly, AutoGen is developed by a vibrant community of researchers\n", "and engineers. It incorporates the latest research in multi-agent systems\n", "and has been used in many real-world applications, including math problem solvers,\n", - "supply chain optimization, data analysis, market research, and game AI." + "supply chain optimization, data analysis, market research, and gaming." ] }, { @@ -44,42 +44,41 @@ "source": [ "## Installation\n", "\n", - "Install from pip: `pip install pyautogen`. Find more options in [Installation](/docs/installation/)." + "The simplest way to install AutoGen is from pip: `pip install pyautogen`. Find more options in [Installation](/docs/installation/)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Agent\n", + "## Agents\n", "\n", "In AutoGen, an agent is an entity that can send and receive messages to and from\n", - "other agents. An agent can be powered by a model, such as a large language model (LLM)\n", - "like GPT-4, a code executor like an IPython kernel, a human, or a combination of these\n", + "other agents in its environment. An agent can be powered by models (such as a large language model\n", + "like GPT-4), code executors (such as an IPython kernel), human, or a combination of these\n", "and other pluggable and customizable components.\n", "\n", "```{=mdx}\n", "![ConversableAgent](./assets/conversable-agent.png)\n", "```\n", "\n", - "In AutoGen, a `ConversableAgent` is an agent with built-in components:\n", + "An example of such agents is the built-in `ConversableAgent` which supports the following components:\n", "\n", - "1. A list of LLMs;\n", - "2. A code executor;\n", - "3. A function and tool executor;\n", - "4. A human-in-the-loop component.\n", + "1. A list of LLMs\n", + "2. A code executor\n", + "3. A function and tool executor\n", + "4. A component for keeping human-in-the-loop\n", "\n", - "These components can be switched on/off and customized to suit the need of \n", - "specific application.\n", - "Additional components can be added to the agent to extend its capabilities." + "You can switch each component on or off and customize it to suit the need of \n", + "your application. You even can add additional components to the agent's capabilities." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "LLMs enable agent to converse in human languages and transform between structured and unstructured text. \n", - "Here is an example of a `ConversableAgent` with a GPT-4 LLM switched on and other\n", + "LLMs, for example, enable agents to converse in natural languages and transform between structured and unstructured text. \n", + "The following example shows a `ConversableAgent` with a GPT-4 LLM switched on and other\n", "components switched off:" ] }, @@ -105,7 +104,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "You can ask it to generate a response to a question:" + "You can ask this agent to generate a response to a question using the `generate_reply` method:" ] }, { @@ -134,17 +133,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Role and Conversation\n", + "## Roles and Conversations\n", "\n", - "Agents can be assigned roles and participate in conversations.\n", - "In AutoGen, conversations are how agents make progress on a task." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here is an example of assigning two roles to two agents by setting their\n", + "In AutoGen, you can assign roles to agents and have them participate in conversations or chat with each other. A conversation is a sequence of messages exchanged between agents. You can then use these conversations to make progress on a task. For example, in the example below, we assign different roles to two agents by setting their\n", "`system_message`." ] }, @@ -243,7 +234,7 @@ "source": [ "## Summary\n", "\n", - "In this chapter, we introduced the concept of agent, role and conversation in AutoGen.\n", + "In this chapter, we introduced the concept of agents, roles and conversations in AutoGen.\n", "For simplicity, we only used the LLM. In the [next chapter](./human-in-the-loop), \n", "we will show you how to use the human-in-the-loop component to provide feedback \n", "to the agents." From 591c81f55701d1c3639b7e730bf4d12ded576a14 Mon Sep 17 00:00:00 2001 From: gagb Date: Fri, 23 Feb 2024 23:57:56 +0000 Subject: [PATCH 16/43] Improve language of human in the loop tutorial --- .../getting-started/human-in-the-loop.ipynb | 74 +++++++++---------- 1 file changed, 36 insertions(+), 38 deletions(-) diff --git a/website/docs/getting-started/human-in-the-loop.ipynb b/website/docs/getting-started/human-in-the-loop.ipynb index 8d4fde6ba3a9..aba9123f9918 100644 --- a/website/docs/getting-started/human-in-the-loop.ipynb +++ b/website/docs/getting-started/human-in-the-loop.ipynb @@ -14,43 +14,41 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Human-in-the-loop and Termination\n", + "# Allowing Human Feedback and Termination of Conversations\n", "\n", - "In the [last chapter](./introduction) we introduced `ConversableAgent`.\n", - "We also mentioned that this\n", - "class comes with a human-in-the-loop component.\n", - "In this chapter, we show you how to use this component to provide human \n", - "feedback to agent and to terminate conversation.\n", + "In the [last chapter](./introduction) we introduced the `ConversableAgent` class.\n", + "We also briefly mentioned that this\n", + "class supports a human-in-the-loop component.\n", + "In this chapter, we will show how you can use this component to both allow human \n", + "feedback to an agent and also control when to terminate a conversation between agents.\n", "\n", - "The figure below shows the human-in-the-loop component and how it is used.\n", + "The figure below show an overview of the human-in-the-loop component and how it is used.\n", "\n", "````mdx-code-block\n", "![human-in-the-loop-component](./assets/Human-in-the-loop.png)\n", "````\n", "\n", - "As shown in the figure, when messages are received, they are first intercepted by\n", - "the human-in-the-loop component, which decides whether:\n", + "As shown in the figure, when an agent receives a message, it is first intercepted by\n", + "the human-in-the-loop component, which decides between the following options:\n", "\n", - "1. to pass the message to the other components that generates an automatic response; \n", - "2. to \"short-circuit\" other components and returns a human response; or\n", - "3. to terminate the conversation." + "1. pass the message to the other components that generates an automatic response\n", + "2. _short-circuit_ other components and ask for and return a response from a human\n", + "3. terminate the conversation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Termination Coditions\n", + "## Termination Conditions\n", "\n", - "The human-in-the-loop component checks for termination conditions upon\n", - "receiving a message. The termination conditions are:\n", + "By default, the human-in-the-loop component considers two conditions for deciding whether to terminate a conversation:\n", "\n", - "1. Message-based: by default, if the content of a message contains\n", - " the word \"TERMINATE\", the condition is triggered. This can be customized\n", - " using the `is_terminate_msg` argument of the `ConversableAgent` class.\n", - "2. Counter-based: if the number of automatic responses to the same sender\n", - " exceeds a certain threshold, the condition is triggered. This can be \n", - " customized using the `max_consecutive_auto_reply` argument of the\n", + "1. _Message-based_: This condition triggers termination if the content of a message contains\n", + " the word \"TERMINATE\". You can customize this condition\n", + " using the `is_terminate_msg` argument in the constructor of the `ConversableAgent` class.\n", + "2. _Counter-based_: This condition trigger termination if the number of automatic responses to the same sender\n", + " exceeds a threshold. You can customize this using the `max_consecutive_auto_reply` argument of the\n", " `ConversableAgent` class.\n", "\n", "It is important to note that when a termination condition is triggered,\n", @@ -62,9 +60,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Here is an example of customizing the message-based termination condition.\n", + "Here is an example that alters the default message-based termination condition.\n", "In this example, the termination condition is triggered if the message\n", - "contains the phrase \"good bye my friend\"." + "contains the phrase _\"good bye my friend\"_." ] }, { @@ -87,7 +85,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Here is another example of customizing the counter-based termination condition.\n", + "Here is a different example for that uses the counter-based termination condition.\n", "In this example, the termination condition is triggered if the number of\n", "automatic responses to the same sender exceeds 3." ] @@ -111,15 +109,15 @@ "source": [ "## Human Input Modes\n", "\n", - "There are three models for requesting human input. These modes combined\n", - "with the termination conditions specify how the human-in-the-loop component\n", - "behaves. The mode is specified through\n", - "the `human_input_mode` argument of the `ConversableAgent`:\n", + "Currently AutoGen supports three modes for human input. The mode is specified through\n", + "the `human_input_mode` argument of the `ConversableAgent`. And these modes combined\n", + "with the termination conditions dictate how the human-in-the-loop component\n", + "behaves:\n", "\n", "1. `NEVER`: human input is never requested, and the termination conditions are\n", " used determine when to terminate.\n", "2. `ALWAYS`: human input is always requested and the human can choose to skip,\n", - " intersecpt, or terminate the conversation; message-based termination\n", + " intercept, or terminate the conversation; message-based termination\n", " condition is still enacted upon if human chooses to skip; counter-based\n", " termination condition is ignored.\n", "3. `TERMINATE`: human input is only requested when a termination condition is\n", @@ -139,7 +137,7 @@ "### Human Input Mode = `NEVER`\n", "\n", "In this mode, human input is never requested and the termination conditions\n", - "are used to determine when to terminate.\n", + "are used to terminate.\n", "This mode is useful only when you want your agents to run fully autonomously.\n", "\n", "Here is an example of using this mode to run a simple guess-a-number game between\n", @@ -217,9 +215,9 @@ " \"number 53 in your mind, and I will try to guess it. \"\n", " \"If I guess too high, say 'too high', if I guess too low, say 'too low'. \",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " is_termination_msg=lambda msg: \"53\" in msg[\"content\"],\n", - " max_consecutive_auto_reply=5,\n", - " human_input_mode=\"NEVER\",\n", + " is_termination_msg=lambda msg: \"53\" in msg[\"content\"], # terminate if the number is guessed by the other agent\n", + " max_consecutive_auto_reply=5, # set maximum turn-based auto-reply to 5\n", + " human_input_mode=\"NEVER\", # never ask for human input\n", ")\n", "\n", "agent_guess_number = ConversableAgent(\n", @@ -255,7 +253,7 @@ "\n", "In this mode, human input is always requested and the human can choose to skip,\n", "intersecpt, or terminate the conversation.\n", - "Let us see this mode in action by playing the same game as before, but this time\n", + "Let us see this mode in action by playing the same game as before with the agent with the number, but this time\n", "participating in the game as a human.\n", "We will be the agent that is guessing the number, and play against the agent\n", "with the number from before." @@ -307,12 +305,12 @@ "human_proxy = ConversableAgent(\n", " \"human_proxy\",\n", " llm_config=False, # no LLM used for human proxy\n", - " human_input_mode=\"ALWAYS\",\n", + " human_input_mode=\"ALWAYS\", # always ask for human input\n", ")\n", "\n", "# Start a chat with the agent with number with an initial guess.\n", "result = human_proxy.initiate_chat(\n", - " agent_with_number,\n", + " agent_with_number, # this is the same agent with the number as before\n", " message=\"10\",\n", ")" ] @@ -334,7 +332,7 @@ "### Human Input Mode = `TERMINATE`\n", "\n", "In this mode, human input is only requested when a termination condition is\n", - "met. If the human choose to intercept and reply, counter will be rest; if \n", + "met. **If the human choose to intercept and reply, counter will be rest**; if \n", "the human choose to skip, automatic reply mechanism will be used; if the human\n", "choose to terminate, the conversation will be terminated.\n", "\n", @@ -517,7 +515,7 @@ " \"If I guess too high, say 'too high', if I guess too low, say 'too low'. \",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", " max_consecutive_auto_reply=5,\n", - " human_input_mode=\"TERMINATE\",\n", + " human_input_mode=\"TERMINATE\", # ask for human input until the game is terminated\n", ")\n", "\n", "agent_guess_number = ConversableAgent(\n", From 48ca642d8635cab60444c5925acf7310b219b601 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sat, 24 Feb 2024 17:42:14 -0800 Subject: [PATCH 17/43] update --- .../getting-started/assets/group-chat.png | Bin 0 -> 91485 bytes .../getting-started/assets/two-agent-chat.png | Bin 0 -> 15742 bytes .../conversation-patterns.ipynb | 147 ++++++++++++++++-- .../docs/getting-started/introduction.ipynb | 2 +- 4 files changed, 139 insertions(+), 10 deletions(-) create mode 100644 website/docs/getting-started/assets/group-chat.png create mode 100644 website/docs/getting-started/assets/two-agent-chat.png diff --git a/website/docs/getting-started/assets/group-chat.png b/website/docs/getting-started/assets/group-chat.png new file mode 100644 index 0000000000000000000000000000000000000000..aa0f14e58cf1b80a131282536ae9669707faa2ee GIT binary patch literal 91485 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�*v#^^lbnh~0IWntSUla%qeDD%Q#sGB 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

WHWPUbX`@L{gyaI7 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 literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index c6cfb30fa278..645826d55a6e 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -19,29 +19,154 @@ "In the [last chapter](./code-executors) we used two-agent conversation, which\n", "can be started by the `initiate_chat` method.\n", "Two-agent chat is a useful conversation pattern but AutoGen offers more.\n", - "In this chapter, we will show you several conversation patterns that involve \n", + "In this chapter, we will first dig a little bit more into the two-agent \n", + "chat pattern, then we will show you several conversation patterns that involve \n", "more than two agents.\n" ] }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Neither powershell nor pwsh is installed.\n" + ] + } + ], + "source": [ + "import os\n", + "from autogen import initiate_chats, ConversableAgent, GroupChat, GroupChatManager" + ] + }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Sequential Chats\n", + "## Two-Agent Chat\n", + "\n", + "Two-agent chat is the simplest from of conversation pattern. We have already\n", + "seen multiple examples of two-agent chat in the previous chapters\n", + "but there are still some details that we haven't covered yet.\n", + "The following figure illustrates how two-agent chat works.\n", "\n", "```{=mdx}\n", - "![initiate_chats](./assets/initiate_chats.png)\n", - "```" + "![Two-agent chat](./assets/two-agent-chat.png)\n", + "```\n", + "\n", + "Besides the conversation itself, there is also a summarizer that can be used\n", + "to produce a summary of the conversation. The summarizer is optional and by\n", + "default the summary is the last message of the conversation.\n", + "This can be changed by setting the `summarizer` parameter of the `initiate_chat`." ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mAgent A\u001b[0m (to Agent B):\n", + "\n", + "What is triangle inequality?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mAgent B\u001b[0m (to Agent A):\n", + "\n", + "Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\n", + "\n", + "a + b > c\n", + "a + c > b\n", + "b + c > a\n", + "\n", + "Each of these represents the condition for one specific side (a, b, or c). All must be true for a triangle to exist.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mAgent A\u001b[0m (to Agent B):\n", + "\n", + "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mAgent B\u001b[0m (to Agent A):\n", + "\n", + "Absolutely! Here's an example:\n", + "\n", + "Suppose you're given three line segments with lengths 10, 7, and 3 units. The question is: \"Can these three line segments form a triangle?\"\n", + "\n", + "To answer this, you would use the triangle inequality theorem. Adding any two side lengths together should be greater than the third:\n", + "\n", + "- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\n", + "- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\n", + "- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of the third side (10), but not greater.\n", + "\n", + "So, these three lines cannot form a triangle, because not all pairs of sides satisfy the triangle inequality theorem.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + }, + { + "data": { + "text/plain": [ + "ChatResult(chat_history=[{'content': 'What is triangle inequality?', 'role': 'assistant'}, {'content': 'Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\\n\\na + b > c\\na + c > b\\nb + c > a\\n\\nEach of these represents the condition for one specific side (a, b, or c). All must be true for a triangle to exist.', 'role': 'user'}, {'content': 'Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?', 'role': 'assistant'}, {'content': 'Absolutely! Here\\'s an example:\\n\\nSuppose you\\'re given three line segments with lengths 10, 7, and 3 units. The question is: \"Can these three line segments form a triangle?\"\\n\\nTo answer this, you would use the triangle inequality theorem. Adding any two side lengths together should be greater than the third:\\n\\n- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\\n- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\\n- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of the third side (10), but not greater.\\n\\nSo, these three lines cannot form a triangle, because not all pairs of sides satisfy the triangle inequality theorem.', 'role': 'user'}], summary='The triangle inequality theorem states that in a triangle, the sum of the lengths of any two sides must always be greater than the length of the third side. This principle is significant in geometry and is used in solving problems or proving theorems. For instance, if given three line segments, you can determine if they can form a triangle using this theorem.', cost=({'total_cost': 0.04521, 'gpt-4-0613': {'cost': 0.04521, 'prompt_tokens': 709, 'completion_tokens': 399, 'total_tokens': 1108}}, {'total_cost': 0.03837, 'gpt-4-0613': {'cost': 0.03837, 'prompt_tokens': 687, 'completion_tokens': 296, 'total_tokens': 983}}), human_input=[])" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "agent_a = ConversableAgent(\n", + " name=\"Agent A\",\n", + " system_message=\"You are a student willing to learn.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + ")\n", + "agent_b = ConversableAgent(\n", + " name=\"Agent B\",\n", + " system_message=\"You are a math teacher.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + ")\n", + "\n", + "agent_a.initiate_chat(\n", + " agent_b, message=\"What is triangle inequality?\", max_turns=2, summary_method=\"reflection_with_llm\"\n", + ")" + ] + }, + { + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "import os\n", - "from autogen import initiate_chats, ConversableAgent, GroupChat, GroupChatManager" + "## Sequential Two-Agent Chats\n", + "\n", + "The name of this pattern is self-explanatory -- it is a sequence of\n", + "two-agent chats.\n", + "This pattern is useful when you can break down a complex task into \n", + "interdependent sub-tasks. \n", + "The figure below illustrate how this pattern works.\n", + "\n", + "```{=mdx}\n", + "![initiate_chats](./assets/initiate_chats.png)\n", + "```\n", + "\n", + "In this pattern, the a pair of agents first start a conversation,\n" ] }, { @@ -268,7 +393,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Group Chat" + "## Group Chat\n", + "\n", + "```{=mdx}\n", + "![group_chat](./assets/group-chat.png)\n", + "```" ] }, { diff --git a/website/docs/getting-started/introduction.ipynb b/website/docs/getting-started/introduction.ipynb index f81337cd67ab..fc05bf9df839 100644 --- a/website/docs/getting-started/introduction.ipynb +++ b/website/docs/getting-started/introduction.ipynb @@ -25,7 +25,7 @@ "source": [ "## Why AutoGen?\n", "\n", - "> _The whole is greater than the sum of its parts._
\n", + "> _The whole is greater than the sum of its parts._
\n", "> -**Aristotle**\n", "\n", "While there are many definitions of agents, in AutoGen, an agent is an entity that reacts to its environment. This abstraction not just allows agents that model real-world and abstract entities, such as people and algorithms, but it also simplifies implementation of complex workflows as collaboration among agents.\n", From c8ef6239000c52fe8ddcd9da16d7ed500e9d87fc Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sun, 25 Feb 2024 10:43:58 -0800 Subject: [PATCH 18/43] update --- .../getting-started/assets/group-chat.png | Bin 91485 -> 90369 bytes .../getting-started/assets/initiate_chats.png | Bin 71432 -> 0 bytes .../assets/sequential-two-agent-chat.png | Bin 0 -> 71759 bytes .../conversation-patterns.ipynb | 279 +++++++++++++++--- .../getting-started/human-in-the-loop.ipynb | 2 +- website/sidebars.js | 5 + 6 files changed, 249 insertions(+), 37 deletions(-) delete mode 100644 website/docs/getting-started/assets/initiate_chats.png create mode 100644 website/docs/getting-started/assets/sequential-two-agent-chat.png diff --git a/website/docs/getting-started/assets/group-chat.png b/website/docs/getting-started/assets/group-chat.png index aa0f14e58cf1b80a131282536ae9669707faa2ee..c1b44ae1b4b59e24e2b5ec0b2f790cace4554d64 100644 GIT binary patch delta 37891 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 delta 39054 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 I&MBb@01tSu6951J diff --git a/website/docs/getting-started/assets/initiate_chats.png b/website/docs/getting-started/assets/initiate_chats.png deleted file mode 100644 index dfde7913750e9862526e53426b8a8a4838273478..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71432 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 diff --git a/website/docs/getting-started/assets/sequential-two-agent-chat.png b/website/docs/getting-started/assets/sequential-two-agent-chat.png new file mode 100644 index 0000000000000000000000000000000000000000..263c189cb702fb757be97513ca88489ec2794805 GIT binary patch literal 71759 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 literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index 645826d55a6e..50901926f687 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -20,7 +20,8 @@ "can be started by the `initiate_chat` method.\n", "Two-agent chat is a useful conversation pattern but AutoGen offers more.\n", "In this chapter, we will first dig a little bit more into the two-agent \n", - "chat pattern, then we will show you several conversation patterns that involve \n", + "chat pattern and chat result, \n", + "then we will show you several conversation patterns that involve \n", "more than two agents.\n" ] }, @@ -39,14 +40,14 @@ ], "source": [ "import os\n", - "from autogen import initiate_chats, ConversableAgent, GroupChat, GroupChatManager" + "from autogen import ConversableAgent, GroupChat, GroupChatManager" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Two-Agent Chat\n", + "## Two-Agent Chat and Chat Result\n", "\n", "Two-agent chat is the simplest from of conversation pattern. We have already\n", "seen multiple examples of two-agent chat in the previous chapters\n", @@ -60,12 +61,13 @@ "Besides the conversation itself, there is also a summarizer that can be used\n", "to produce a summary of the conversation. The summarizer is optional and by\n", "default the summary is the last message of the conversation.\n", - "This can be changed by setting the `summarizer` parameter of the `initiate_chat`." + "This can be changed by setting the `summarizer` parameter of the `initiate_chat`.\n", + "The example below shows how to use an LLM-based summarizer." ] }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -91,13 +93,7 @@ "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33mAgent A\u001b[0m (to Agent B):\n", "\n", "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", @@ -121,16 +117,6 @@ "\n", "--------------------------------------------------------------------------------\n" ] - }, - { - "data": { - "text/plain": [ - "ChatResult(chat_history=[{'content': 'What is triangle inequality?', 'role': 'assistant'}, {'content': 'Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\\n\\na + b > c\\na + c > b\\nb + c > a\\n\\nEach of these represents the condition for one specific side (a, b, or c). All must be true for a triangle to exist.', 'role': 'user'}, {'content': 'Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?', 'role': 'assistant'}, {'content': 'Absolutely! Here\\'s an example:\\n\\nSuppose you\\'re given three line segments with lengths 10, 7, and 3 units. The question is: \"Can these three line segments form a triangle?\"\\n\\nTo answer this, you would use the triangle inequality theorem. Adding any two side lengths together should be greater than the third:\\n\\n- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\\n- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\\n- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of the third side (10), but not greater.\\n\\nSo, these three lines cannot form a triangle, because not all pairs of sides satisfy the triangle inequality theorem.', 'role': 'user'}], summary='The triangle inequality theorem states that in a triangle, the sum of the lengths of any two sides must always be greater than the length of the third side. This principle is significant in geometry and is used in solving problems or proving theorems. For instance, if given three line segments, you can determine if they can form a triangle using this theorem.', cost=({'total_cost': 0.04521, 'gpt-4-0613': {'cost': 0.04521, 'prompt_tokens': 709, 'completion_tokens': 399, 'total_tokens': 1108}}, {'total_cost': 0.03837, 'gpt-4-0613': {'cost': 0.03837, 'prompt_tokens': 687, 'completion_tokens': 296, 'total_tokens': 983}}), human_input=[])" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" } ], "source": [ @@ -145,11 +131,117 @@ " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", ")\n", "\n", - "agent_a.initiate_chat(\n", - " agent_b, message=\"What is triangle inequality?\", max_turns=2, summary_method=\"reflection_with_llm\"\n", + "chat_result = agent_a.initiate_chat(\n", + " agent_b,\n", + " message=\"What is triangle inequality?\",\n", + " max_turns=2,\n", + " summary_method=\"reflection_with_llm\",\n", ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's see what the summary looks like.\n", + "The summary is stored in the `chat_result` object of type `ChatResult` \n", + "that was returned by the `initiate_chat` method." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The triangle inequality theorem states that in a triangle, the sum of the lengths of any two sides must always be greater than the length of the third side. This principle is significant in geometry and is used in solving problems or proving theorems. For instance, if given three line segments, you can determine if they can form a triangle using this theorem.\n" + ] + } + ], + "source": [ + "print(chat_result.summary)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the above example, the summarizer is set to `reflection_with_llm` which\n", + "takes a list of messages from the conversation and summarize using a call to\n", + "an LLM.\n", + "The summarizer first tries to use the recipient's LLM, if it is not available\n", + "then it uses the sender's LLM. In this case the recipient is \"Agent B\" and\n", + "the sender is \"Agent A\".\n", + "The input prompt for the LLM is the following default prompt:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Summarize the takeaway from the conversation. Do not add any introductory phrases.\n" + ] + } + ], + "source": [ + "print(ConversableAgent.DEFAULT_summary_prompt)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can also use a custom prompt by setting the `summary_prompt` argument\n", + "of `initiate_chat`.\n", + "\n", + "There are some other useful information in the `chat_result` object, including\n", + "the conversation history, human input, and token cost." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[{'content': 'What is triangle inequality?', 'role': 'assistant'}, {'content': 'Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\\n\\na + b > c\\na + c > b\\nb + c > a\\n\\nEach of these represents the condition for one specific side (a, b, or c). All must be true for a triangle to exist.', 'role': 'user'}, {'content': 'Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?', 'role': 'assistant'}, {'content': 'Absolutely! Here\\'s an example:\\n\\nSuppose you\\'re given three line segments with lengths 10, 7, and 3 units. The question is: \"Can these three line segments form a triangle?\"\\n\\nTo answer this, you would use the triangle inequality theorem. Adding any two side lengths together should be greater than the third:\\n\\n- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\\n- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\\n- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of the third side (10), but not greater.\\n\\nSo, these three lines cannot form a triangle, because not all pairs of sides satisfy the triangle inequality theorem.', 'role': 'user'}]\n" + ] + } + ], + "source": [ + "# Get the chat history.\n", + "print(chat_result.chat_history)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "({'total_cost': 0.04521, 'gpt-4-0613': {'cost': 0.04521, 'prompt_tokens': 709, 'completion_tokens': 399, 'total_tokens': 1108}}, {'total_cost': 0})\n" + ] + } + ], + "source": [ + "# Get the cost of the chat.\n", + "print(chat_result.cost)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -157,21 +249,46 @@ "## Sequential Two-Agent Chats\n", "\n", "The name of this pattern is self-explanatory -- it is a sequence of\n", - "two-agent chats.\n", - "This pattern is useful when you can break down a complex task into \n", + "two-agent chats, chained together by a mechanism called *carryover*,\n", + "which brings the summary of the previous chat to the initial context\n", + "of the next chat.\n", + "\n", + "This pattern is useful for complex task that can be broken down into \n", "interdependent sub-tasks. \n", "The figure below illustrate how this pattern works.\n", "\n", "```{=mdx}\n", - "![initiate_chats](./assets/initiate_chats.png)\n", + "![initiate_chats](./assets/sequential-two-agent-chat.png)\n", "```\n", "\n", - "In this pattern, the a pair of agents first start a conversation,\n" + "In this pattern, the a pair of agents first start a conversation,\n", + "then the summary of the conversation is inserted into the initial\n", + "message of the next conversation. The previous summary is called a *carryover*.\n", + "Carryover accumulates as the conversation goes on, \n", + "so each subsequent conversation is started with all the carryovers \n", + "from previous conversations.\n", + "\n", + "The figure above shows distinct recipient agents for all the chats, however,\n", + "the recipient agents in the sequence are allowed to repeat." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To illustrate this pattern, let's consider a simple example of arithmetic\n", + "operator agents. One agent \n", + "(called the \"Number_Agent\") is responsible for coming up with a number,\n", + "and other agents are responsible for performing a specific arithmetic\n", + "operation on the number, e.g., add 1, multiply by 2, etc..\n", + "The Number Agent chats with the first operator agent, then the second\n", + "operator agent, and so on.\n", + "In the end we will have the result of the arithmetic operations." ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 13, "metadata": {}, "outputs": [ { @@ -201,7 +318,13 @@ "\n", "15\n", "\n", - "--------------------------------------------------------------------------------\n", + "--------------------------------------------------------------------------------\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "\u001b[33mAdder_Agent\u001b[0m (to Number_Agent):\n", "\n", "16\n", @@ -324,6 +447,7 @@ } ], "source": [ + "# The Number Agent that always returns the same numbers.\n", "number_agent = ConversableAgent(\n", " name=\"Number_Agent\",\n", " system_message=\"You return me the numbers I give you, one number each line.\",\n", @@ -331,6 +455,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", + "# The Adder Agent that adds 1 to each number it receives.\n", "adder_agent = ConversableAgent(\n", " name=\"Adder_Agent\",\n", " system_message=\"You add 1 to each number I give you and return me the new numbers, one number each line.\",\n", @@ -338,6 +463,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", + "# The Multiplier Agent that multiplies each number it receives by 2.\n", "multiplier_agent = ConversableAgent(\n", " name=\"Multiplier_Agent\",\n", " system_message=\"You multiply each number I give you by 2 and return me the new numbers, one number each line.\",\n", @@ -345,6 +471,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", + "# The Subtracter Agent that subtracts 1 from each number it receives.\n", "subtracter_agent = ConversableAgent(\n", " name=\"Subtracter_Agent\",\n", " system_message=\"You subtract 1 from each number I give you and return me the new numbers, one number each line.\",\n", @@ -352,6 +479,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", + "# The Divider Agent that divides each number it receives by 2.\n", "divider_agent = ConversableAgent(\n", " name=\"Divider_Agent\",\n", " system_message=\"You divide each number I give you by 2 and return me the new numbers, one number each line.\",\n", @@ -359,28 +487,27 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", - "results = initiate_chats(\n", + "# Start a sequence of two-agent chats.\n", + "# Each element in the list is a dictionary that specifies the arguments\n", + "# for the initiate_chat method.\n", + "chat_results = number_agent.initiate_chats(\n", " [\n", " {\n", - " \"sender\": number_agent,\n", " \"recipient\": adder_agent,\n", " \"message\": \"14\",\n", " \"max_turns\": 2,\n", " },\n", " {\n", - " \"sender\": number_agent,\n", " \"recipient\": multiplier_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", " },\n", " {\n", - " \"sender\": number_agent,\n", " \"recipient\": subtracter_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", " },\n", " {\n", - " \"sender\": number_agent,\n", " \"recipient\": divider_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", @@ -389,15 +516,95 @@ ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "First thing to note is that the `initiate_chats` method takes a list of\n", + "dictionaries, each dictionary contains the arguments for the `initiate_chat`\n", + "method.\n", + "\n", + "Second, each chat in the sequence has a maximum round of 2, as specified with\n", + "the setting `max_turns=2`, \n", + "which means each arithmetic operation is performed twice.\n", + "So you can see in the first chat the number 14 becomes 15 and then 16,\n", + "in the second chat the number 16 becomes 32 and then 64, and so on.\n", + "\n", + "Third, the carryover accumulates as the chats go on. In the second chat,\n", + "the carryover is the summary of the first chat, which is \"16\".\n", + "In the third chat, the carryover is the summary of the first and second\n", + "chat, which is the list \"16\" and \"64\", and both numbers are operated upon.\n", + "In the forth and last chat, the carryover is the summary of all previous\n", + "chats, which is the list \"16\", \"64\", \"14\" and \"62\", and all of these\n", + "numbers are operated upon.\n", + "\n", + "The final note is that the `initiate_chats` method returns a list of\n", + "`ChatResult` objects, one for each chat in the sequence." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "First Chat Summary: 16\n", + "Second Chat Summary: 64\n", + "Third Chat Summary: 14\n", + "62\n", + "Fourth Chat Summary: 4\n", + "16\n", + "3.5\n", + "15.5\n" + ] + } + ], + "source": [ + "print(\"First Chat Summary: \", chat_results[0].summary)\n", + "print(\"Second Chat Summary: \", chat_results[1].summary)\n", + "print(\"Third Chat Summary: \", chat_results[2].summary)\n", + "print(\"Fourth Chat Summary: \", chat_results[3].summary)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Besides calling `initiate_chats` from the same sender agent, you can also\n", + "call a high-level function `autogen.agentchat.initiate_chats` to start\n", + "a sequence of two-agent chats with different sender agents. \n", + "This function allows you to specify the\n", + "sender agent for each chat in the sequence." + ] + }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Group Chat\n", "\n", + "So far we have only seen conversation patterns that involve two agents or \n", + "a sequence of two-agent chats. AutoGen provides a more general conversation\n", + "pattern called group chat, which involves more than two agents.\n", + "The core idea of group chat is that all agents contribute to a single\n", + "conversation thread and share the same context.\n", + "This is useful for tasks that require collaboration among multiple agents.\n", + "\n", + "The figure below illustrates how group chat works.\n", + "\n", "```{=mdx}\n", "![group_chat](./assets/group-chat.png)\n", - "```" + "```\n", + "\n", + "A group chat is orchestrated by a special\n", + "agent type `GroupChatManager`. In the first step of the group chat,\n", + "the Group Chat Manager selects an agent to speak. Then, the selected agent\n", + "speaks and the message is sent back to the Group Chat Manager,\n", + "who **broadcasts** the message to all other agents in the group.\n", + "This process repeats until the conversation stops." ] }, { diff --git a/website/docs/getting-started/human-in-the-loop.ipynb b/website/docs/getting-started/human-in-the-loop.ipynb index aba9123f9918..a04afc0102b2 100644 --- a/website/docs/getting-started/human-in-the-loop.ipynb +++ b/website/docs/getting-started/human-in-the-loop.ipynb @@ -25,7 +25,7 @@ "The figure below show an overview of the human-in-the-loop component and how it is used.\n", "\n", "````mdx-code-block\n", - "![human-in-the-loop-component](./assets/Human-in-the-loop.png)\n", + "![human-in-the-loop-component](./assets/human-in-the-loop.png)\n", "````\n", "\n", "As shown in the figure, when an agent receives a message, it is first intercepted by\n", diff --git a/website/sidebars.js b/website/sidebars.js index e53dd8daf337..3808bc48dc13 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -34,6 +34,11 @@ type: 'doc', id: 'getting-started/conversation-patterns', label: 'Conversation Patterns', + }, + { + type: 'doc', + id: 'getting-started/what-is-next', + label: 'What is Next?', } ], }, From 7098662cc26ffc5cb7a6e6c017ad486695cd767e Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sun, 25 Feb 2024 15:20:28 -0800 Subject: [PATCH 19/43] Update group chat --- .../conversation-patterns.ipynb | 365 ++++++++++++++---- 1 file changed, 299 insertions(+), 66 deletions(-) diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index 50901926f687..285a567641be 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -29,15 +29,7 @@ "cell_type": "code", "execution_count": 1, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Neither powershell nor pwsh is installed.\n" - ] - } - ], + "outputs": [], "source": [ "import os\n", "from autogen import ConversableAgent, GroupChat, GroupChatManager" @@ -60,14 +52,14 @@ "\n", "Besides the conversation itself, there is also a summarizer that can be used\n", "to produce a summary of the conversation. The summarizer is optional and by\n", - "default the summary is the last message of the conversation.\n", + "default the summary is the last message of the conversation (i.e., `last_msg`).\n", "This can be changed by setting the `summarizer` parameter of the `initiate_chat`.\n", "The example below shows how to use an LLM-based summarizer." ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 2, "metadata": {}, "outputs": [ { @@ -150,7 +142,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -180,7 +172,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -208,7 +200,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -226,7 +218,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -288,7 +280,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -318,13 +310,7 @@ "\n", "15\n", "\n", - "--------------------------------------------------------------------------------\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + "--------------------------------------------------------------------------------\n", "\u001b[33mAdder_Agent\u001b[0m (to Number_Agent):\n", "\n", "16\n", @@ -544,7 +530,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -604,12 +590,109 @@ "the Group Chat Manager selects an agent to speak. Then, the selected agent\n", "speaks and the message is sent back to the Group Chat Manager,\n", "who **broadcasts** the message to all other agents in the group.\n", - "This process repeats until the conversation stops." + "This process repeats until the conversation stops.\n", + "\n", + "The Group Chat Manager can use several strategies to select the next agent.\n", + "Currently, the following strategies are supported:\n", + "\n", + "1. `round_robin`: The Group Chat Manager selects agents in a round-robin\n", + " fashion based on the order of the agents provided.\n", + "2. `random`: The Group Chat Manager selects agents randomly.\n", + "3. `manual`: The Group Chat Manager selects agents by asking for human input.\n", + "4. `auto`: The default strategy, which selects agents using the Group Chat\n", + " Manager's LLM." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To illustrate this pattern, let's consider a simple example of a group chat\n", + "among the same arithmetic operator agents as in the previous example,\n", + "with the objective of turning a number into a specific target number\n", + "using a sequence of arithmetic operations powered by the agents.\n", + "\n", + "In this example, we use the `auto` strategy to select the next agent.\n", + "To help the Group Chat Manager select the next agent, we also set the\n", + "`description` of the agents. Without the `description`, the Group Chat Manager\n", + "will use the agents' `system_message`, which may be not be the best choice." ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# The `description` attribute is a string that describes the agent.\n", + "# It can also be set in `ConversableAgent` constructor.\n", + "adder_agent.description = \"Add 1 to each input number.\"\n", + "multiplier_agent.description = \"Multiply each input number by 2.\"\n", + "subtracter_agent.description = \"Subtract 1 from each input number.\"\n", + "divider_agent.description = \"Divide each input number by 2.\"\n", + "number_agent.description = \"Return the numbers given.\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We first create a `GroupChat` object and provide the list of agents.\n", + "If we were to use the `round_robin` strategy, this list would specify the order\n", + "of the agents to be selected.\n", + "We also initialize the group chat with an empty message list and a maximum\n", + "round of 6, which means there will be at most 6 iteratiosn of selecting speaker,\n", + "agent speaks and broadcasting message." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "group_chat = GroupChat(\n", + " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent, number_agent],\n", + " messages=[],\n", + " max_round=6,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we create a `GroupChatManager` object and provide the `GroupChat` object as\n", + "input. We also need to specify the `llm_config` of the Group Chat Manager\n", + "so it can use the LLM to select the next agent (the `auto` strategy)." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "group_chat_manager = GroupChatManager(\n", + " groupchat=group_chat,\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we have the Number Agent from before to start a two-agent chat with\n", + "the Group Chat Manager, which runs the group chat internally and terminates\n", + "the two-agent chat when the internal group chat is done.\n", + "Because the Number Agent is selected to speak by us, it counts as the \n", + "first round of the group chat." + ] + }, + { + "cell_type": "code", + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -618,110 +701,260 @@ "text": [ "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", "\n", - "My number is 40, I want to turn it into 12.\n", + "My number is 3, I want to turn it into 13.\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "6\n", "\n", - "20\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "7\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "14\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", "\n", - "19\n", + "13\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", "\n", - "9.5\n", + "13\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "chat_result = number_agent.initiate_chat(\n", + " group_chat_manager,\n", + " message=\"My number is 3, I want to turn it into 13.\",\n", + " summary_method=\"reflection_with_llm\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can see that the Number Agent is selected to speak first, then the\n", + "Group Chat Manager selects the Multiplier Agent to speak, then the Adder\n", + "Agent, and so on. The number is operated upon by each agent in the group\n", + "chat, and the final result is 13.\n", + "\n", + "We can take a look at the summary of the group chat, provided by the \n", + "`ChatResult` object returned by the `initiate_chat` method." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The agents cooperatively manipulated the initial number (3) through multipliying, adding, and subtracting operations to reach the target number (13).\n" + ] + } + ], + "source": [ + "print(chat_result.summary)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Send Introductions\n", + "\n", + "In the previous example, we set the `description` of the agents to help the\n", + "Group Chat Manager select the next agent. This only helps the Group Chat Manager,\n", + "however, does not help the participating agents to know about each other.\n", + "Sometimes it is useful have each agent introduce themselves to other\n", + "agents in the group chat. This can be done by setting the `send_introductions=True`." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "group_chat_with_introductions = GroupChat(\n", + " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent, number_agent],\n", + " messages=[],\n", + " max_round=6,\n", + " send_introductions=True,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Under the hood, the Group Chat Manager sends a message containing the \n", + "agents' names and descriptions to all agents in the group chat before the\n", + "group chat starts." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Constrained Speaker Selection\n", + "\n", + "Group chat is a powerful conversation pattern, but it can be hard to control\n", + "if the number of participating agents is large.\n", + "AutoGen provides a way to constrain the selection of the next speaker\n", + "by using the `allowed_or_disallowed_speaker_transitions` argument of the \n", + "`GroupChat` class.\n", + "\n", + "The `allowed_or_disallowed_speaker_transitions` argument is a dictionary\n", + "that maps a given agent to a list of agents that can (or cannot) \n", + "be selected to speak next. The `speaker_transitions_type` argument specifies\n", + "whether the transitions are allowed or disallowed.\n", + "\n", + "Here is an example:" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "allowed_transitions = {\n", + " number_agent: [adder_agent, number_agent],\n", + " adder_agent: [multiplier_agent, number_agent],\n", + " subtracter_agent: [divider_agent, number_agent],\n", + " multiplier_agent: [subtracter_agent, number_agent],\n", + " divider_agent: [adder_agent, number_agent],\n", + "}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this example, the allowed transitions are specified for each agent.\n", + "The Number Agent can be followed by the Adder Agent and the Number Agent, \n", + "the Adder Agent can be followed by the Multiplier Agent and the Number Agent,\n", + "and so on.\n", + "Let's put this into the group chat and see how it works.\n", + "The `speaker_transitions_type` is set to `allowed` so the transitions are\n", + "positive constraints." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "My number is 3, I want to turn it into 10. Once I get to 10, keep it there.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", "\n", - "10.5\n", + "4\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", "\n", - "21\n", + "8\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", "\n", - "20\n", + "7\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", "\n", - "10\n", + "3.5\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", "\n", - "9\n", + "4.5\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", "\n", - "18\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", - "\n", - "17\n", + "9\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", "\n", - "16\n", + "8\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mDivider_Agent\u001b[0m (to chat_manager):\n", "\n", - "15\n", + "4\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", "\n", - "14\n", + "5\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", "\n", - "13\n", + "10\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", "\n", - "12\n", + "10\n", "\n", "--------------------------------------------------------------------------------\n" ] } ], "source": [ - "adder_agent.description = \"Add 1 to each input number.\"\n", - "multiplier_agent.description = \"Multiply each input number by 2.\"\n", - "subtracter_agent.description = \"Subtract 1 from each input number.\"\n", - "divider_agent.description = \"Divide each input number by 2.\"\n", - "\n", - "group_chat = GroupChat(\n", - " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent],\n", + "constrained_graph_chat = GroupChat(\n", + " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent, number_agent],\n", + " allowed_or_disallowed_speaker_transitions=allowed_transitions,\n", + " speaker_transitions_type=\"allowed\",\n", " messages=[],\n", - " max_round=16,\n", + " max_round=12,\n", + " send_introductions=True,\n", ")\n", "\n", - "group_chat_manager = GroupChatManager(\n", - " groupchat=group_chat,\n", + "constrained_group_chat_manager = GroupChatManager(\n", + " groupchat=constrained_graph_chat,\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", ")\n", "\n", - "result = number_agent.initiate_chat(\n", - " group_chat_manager,\n", - " message=\"My number is 40, I want to turn it into 12.\",\n", + "chat_result = number_agent.initiate_chat(\n", + " constrained_group_chat_manager,\n", + " message=\"My number is 3, I want to turn it into 10. Once I get to 10, keep it there.\",\n", + " summary_method=\"reflection_with_llm\",\n", ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This time, the agents are selected following the constraints we have specified." + ] + }, { "cell_type": "markdown", "metadata": {}, From 160e8b92d3574d3e539c67e9d4e2e91ffd228094 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Mon, 26 Feb 2024 01:17:19 -0800 Subject: [PATCH 20/43] code executor --- .pre-commit-config.yaml | 2 +- .../assets/code-execution-in-conversation.png | Bin 0 -> 27871 bytes .../assets/docker-command-line-executor.png | Bin 0 -> 49280 bytes .../local-command-line-code-executor.png | Bin 0 -> 44112 bytes .../assets/local-jupyter-code-executor.png | Bin 0 -> 66072 bytes .../docs/getting-started/code-executors.ipynb | 1025 ++++++++++++++++- 6 files changed, 975 insertions(+), 52 deletions(-) create mode 100644 website/docs/getting-started/assets/code-execution-in-conversation.png create mode 100644 website/docs/getting-started/assets/docker-command-line-executor.png create mode 100644 website/docs/getting-started/assets/local-command-line-code-executor.png create mode 100644 website/docs/getting-started/assets/local-jupyter-code-executor.png diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 882a0941a863..0c3a6c8ab8b3 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -41,7 +41,7 @@ repos: pyproject.toml | website/static/img/ag.svg | website/yarn.lock | - website/docs/Tutorial/.* | + website/docs/getting-started/code-executors.ipynb | notebook/.* )$ - repo: https://github.com/nbQA-dev/nbQA diff --git a/website/docs/getting-started/assets/code-execution-in-conversation.png b/website/docs/getting-started/assets/code-execution-in-conversation.png new file mode 100644 index 0000000000000000000000000000000000000000..a9bc3151003b4fb3f243049ef87e135ebddafbbe GIT binary patch literal 27871 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 YgNZ--tL!NpngIMpe4vH$=8 literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/assets/local-command-line-code-executor.png b/website/docs/getting-started/assets/local-command-line-code-executor.png new file mode 100644 index 0000000000000000000000000000000000000000..bf3183a335997dcef5c1ddf01a847d3e3c0de87e GIT binary patch literal 44112 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 bQ1}Ts;jr}kT(e<63HYU>si#q@W)tyWw0;ky literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/assets/local-jupyter-code-executor.png b/website/docs/getting-started/assets/local-jupyter-code-executor.png new file mode 100644 index 0000000000000000000000000000000000000000..38ae9998e4ca8dfe8cd35e3e3e18763b34ca7156 GIT binary patch literal 66072 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 G`2H`Rs#@a! literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/code-executors.ipynb b/website/docs/getting-started/code-executors.ipynb index ff37d311239f..cb49b7ff9c2b 100644 --- a/website/docs/getting-started/code-executors.ipynb +++ b/website/docs/getting-started/code-executors.ipynb @@ -16,17 +16,20 @@ "source": [ "# Code Executors\n", "\n", - "**This chapter is a work in progress, will be updated once the containerized code executor is ready]**\n", - "\n", "In the [last chapter](./human-in-the-loop), \n", - "we used two agents powered by a large language model (LLM) \n", - "to play a game. It was a fun exercise, but LLM by itself can only\n", - "generate text -- it cannot interact with its environment or reliably perform\n", - "logical operations like arithmetic. \n", + "we used two agents powered by a large language model (LLM) to play a game. \n", + "It was a fun exercise, but LLM by itself can only\n", + "generate text -- it cannot interact with its environment or performing useful\n", + "computations. \n", "\n", "In this chapter, we introduce code executor, an AutoGen's agent component that \n", "takes input messages with code blocks, performs execution, and output messages\n", - "with the results.\n", + "with the results. There are currently two of types of built-in code \n", + "executors available in AutoGen: command line executor and Jupyter executor.\n", + "For each type, there is a local version and a remote (i.e., docker) version.\n", + "\n", + "We first cover the executors by themselves, and then show how to use\n", + "them in agent-to-agent conversation to solve coding tasks.\n", "\n", "**Note**: Different from many other agent frameworks, AutoGen's code executor\n", "can power an entire role of an agent: it can take input messages, execute code,\n", @@ -35,33 +38,81 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 89, "metadata": {}, "outputs": [], "source": [ "import os\n", + "import tempfile\n", + "import shutil\n", "import datetime\n", + "import pprint\n", "from IPython.display import Image\n", - "from autogen import ConversableAgent" + "from autogen import ConversableAgent, UserProxyAgent, AssistantAgent" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Here is an example of a code executor agent:" + "## Command Line Code Executor\n", + "\n", + "The command line code executor runs code in a local or remote command line\n", + "environment. It is useful for running code blocks of different programming\n", + "languages (i.e., Python, R, etc.) in the same conversation, \n", + "and code blocks that each is a complete script or source of executable.\n", + "Each code block is executed in a new subprocess, so the variables created\n", + "within one code block are not accessible in another code block." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Local Command Line Code Executor\n", + "\n", + "The local command line code executor runs code in the same environment as the\n", + "AutoGen agent. It is useful mostly for development and testing, but not ideal\n", + "for production use case, as LLM can generate arbitrary code.\n", + "\n", + "The figure below illustrates how does the local command line code executor work.\n", + "\n", + "```{=mdx}\n", + "![Local Command Line Code Executor](./assets/local-command-line-code-executor.png)\n", + "```\n", + "\n", + "Once receiving a message with a code block, the local command line code executor\n", + "first writes the code block to a code file, then start a new subprocess to\n", + "execute the code file. The executor reads the console output of the \n", + "code execution and sends it back as a reply message.\n", + "\n", + "Here is an example of using the local command line code executor to run a Python\n", + "code block that prints a random number.\n", + "First we create an agent with the local command line code executor\n", + "that uses a temporary directory to store the code files." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 38, "metadata": {}, "outputs": [], "source": [ + "# Create a temporary directory to store the code files.\n", + "temp_dir = tempfile.mkdtemp()\n", + "\n", + "# Create an agent with code executor configuration for a local command line\n", + "# code executor.\n", "code_executor_agent = ConversableAgent(\n", " \"code_executor_agent\",\n", " llm_config=False, # Turn off LLM for this agent.\n", - " code_execution_config={\"executor\": \"commandline-local\"},\n", + " code_execution_config={\n", + " \"executor\": \"commandline-local\", # Use the local command line executor.\n", + " \"commandline-local\": {\n", + " \"timeout\": 10, # Timeout for each code execution in seconds.\n", + " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", + " },\n", + " },\n", " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", ")" ] @@ -70,27 +121,347 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The code executor agent is initialized with the `commandline-local` code executor.\n", - "Just like an agent powered by LLM, the code executor agent can also respond to \n", - "messages." + "Now we have the agent generate a reply given a message with a Python code block." + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "A Random Number: 39\n", + "\n" + ] + } + ], + "source": [ + "message_with_code_block = (\n", + " \"This is a message with code block. \"\n", + " \"The code block is below: \\n\"\n", + " \"```python\\n\"\n", + " \"import random\\n\"\n", + " \"print('A Random Number: ', random.randint(1, 100))\\n\"\n", + " \"```\\n\"\n", + " \"This is the end of the message.\\n\"\n", + ")\n", + "\n", + "# Generate a reply for the given code.\n", + "reply = code_executor_agent.generate_reply(messages=[{\"role\": \"user\", \"content\": message_with_code_block}])\n", + "print(reply)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "During the generation of response, a human input is requested to give an opportunity\n", + "to intercept the code execution.\n", + "In this case, we choose to continue the execution, \n", + "and the agent's reply contains the output of the code execution.\n", + "\n", + "We can take a look at the code file that was created in the temporary directory." + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['4595c0528b2d49d396732d9be1470a35.py']\n", + "import random\n", + "print('A Random Number: ', random.randint(1, 100))\n" + ] + } + ], + "source": [ + "code_files = os.listdir(temp_dir)\n", + "print(code_files)\n", + "print(open(os.path.join(temp_dir, code_files[0])).read())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code file matches the code block that we sent to the agent.\n", + "\n", + "Finally, let's clean up the temporary directory." + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [], + "source": [ + "shutil.rmtree(temp_dir)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Docker Command Line Code Executor\n", + "\n", + "Code executor is a powerful tool, but it can also be dangerous because it can \n", + "affect the environment it runs it. \n", + "For example, it can delete files, send data to a remote server, \n", + "or even mine cryptocurrency. \n", + "To mitigate these risks, we can execute code in a docker container. \n", + "This way, the generated code can only access resources that are explicitly \n", + "given to it.\n", + "\n", + "The figure below illustrates how does the docker command line code executor work.\n", + "\n", + "```{=mdx}\n", + "![Docker Command Line Code Executor](./assets/docker-command-line-executor.png)\n", + "```\n", + "\n", + "Similar to the local command line code executor, the docker command line code\n", + "executor extracts code blocks from input messages, writes them to code files.\n", + "For each code file, it starts a docker container to execute the code file,\n", + "and reads the console output of the code execution.\n", + "\n", + "[Discuss containerization once that piece is ready.]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Jupyter Code Executors\n", + "\n", + "The command line code executor is useful for executing scripts, however, it does\n", + "not keeps the variables created during execution in memory.\n", + "If the code execution encounters an error, the script would be modified and\n", + "executed again, and all previous progress would be lost.\n", + "In some use cases, such as data analysis and machine learning, parts of the code\n", + "may be expensive or slow to run, e.g., loading data and running training, \n", + "so we really want to keep the variables in memory to avoid re-running the \n", + "entire code.\n", + "\n", + "Jupyter code executors are designed for these use cases.\n", + "It runs code in a stateful, interactive kernel, \n", + "such as a Python kernel or a Scala kernel, and keeps the variables in memory \n", + "so the variables created in one code block are accessible in a subsequent \n", + "code block.\n", + "If one code block encounters an error, the previous variables are still in memory,\n", + "and only the buggy code block needs to be modified and re-executed.\n", + "\n", + "There are two types of Jupyter code executors: local Jupyter code executor and\n", + "remote Jupyter code executor." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Local Jupyter Code Executor\n", + "\n", + "The local Jupyter code executor starts a Jupyter server in the same environment\n", + "as the AutoGen agent as a subprocess.\n", + "The figure below illustrates how does the local Jupyter code executor work.\n", + "\n", + "```{=mdx}\n", + "![Local Jupyter Code Executor](./assets/local-jupyter-code-executor.png)\n", + "```\n", + "\n", + "Upon receiving a message with a code block, the local Jupyter code executor\n", + "sends the code block to the Jupyter server to have it executed in a kernel.\n", + "Then, it receives the output of the code execution.\n", + "Under the hood, the executor communicates with the Jupyter server \n", + "through websocket." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let us see an example of using the local Jupyter code executor to run a Python\n", + "code block that generates some random numbers, and then use the variable in \n", + "a subsequent code block.\n", + "\n", + "First we need to install additional dependencies to use the Jupyter executor." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [], + "source": [ + "! pip install -qqq 'pyautogen[local-jupyter-exec]'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Due to a bug in jupyter kernel gateway on Windows, please use the following\n", + "installation command on Windows." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ - "reply = code_executor_agent.generate_reply(\n", + "# ! pip install -qqq 'pyautogen[ipython]'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We create an agent with a local Jupyter code executor, and asks it to\n", + "generates a reply with a given code block in markdown." + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [], + "source": [ + "temp_dir = tempfile.mkdtemp()\n", + "\n", + "# Create an agent with code executor configuration for a local Jupyter\n", + "# code executor.\n", + "jupyter_agent = ConversableAgent(\n", + " name=\"Jupyter_Agent\",\n", + " llm_config=False,\n", + " code_execution_config={\n", + " \"executor\": \"jupyter-local\", # Use the local Jupyter executor.\n", + " # On Windows use \"ipython-embedded\" instead of \"jupyter-local\"\n", + " # due to a known issue with Jupyter Kernel Gateway on Windows.\n", + " \"jupyter-local\": {\n", + " \"timeout\": 60, # Timeout for each code execution in seconds.\n", + " \"kernel_name\": \"python3\", # Use the Python 3 kernel, which is the default.\n", + " \"output_dir\": temp_dir, # Use the temporary directory to store output images.\n", + " },\n", + " },\n", + " human_input_mode=\"ALWAYS\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Ask the agent to generate a reply for a message that contains two Python\n", + "code blocks." + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "\n" + ] + } + ], + "source": [ + "message_with_code_blocks_1 = (\n", + " \"First import the required libraries: \\n\"\n", + " \"```python\\n\"\n", + " \"import numpy as np\\n\"\n", + " \"import matplotlib.pyplot as plt\\n\"\n", + " \"```\\n\"\n", + " \"\\n\"\n", + " \"Now let's generate random numbers.\\n\"\n", + " \"```python\\n\"\n", + " \"np.random.seed(0)\\n\"\n", + " \"x = np.random.rand(100)\\n\"\n", + " \"y = np.random.rand(100)\\n\"\n", + " \"````n\"\n", + ")\n", + "\n", + "# Generate a reply for the first code message.\n", + "reply = jupyter_agent.generate_reply(\n", " messages=[\n", " {\n", " \"role\": \"user\",\n", - " \"content\": \"\"\"\n", - "```python\n", - "import random\n", - "print(random.randint(1, 100))\n", - "```\n", - "\"\"\",\n", + " \"content\": message_with_code_blocks_1,\n", + " }\n", + " ]\n", + ")\n", + "print(reply)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Ask the agent to generate a reply for a message that contains a Python code\n", + "block that generates a plot using the variables from the code block\n", + "in the previous message." + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "exitcode: 0 (execution succeeded)\n", + "Code output:

\n", + "Image data saved to /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmptwn7jp72/77cfc432c7a946d48c47c7932e467c03.png\n" + ] + } + ], + "source": [ + "message_with_code_blocks_2 = (\n", + " \"Now let's plot the random numbers. \\n\"\n", + " \"```python\\n\"\n", + " \"plt.scatter(x, y)\\n\"\n", + " \"plt.xlabel('X')\\n\"\n", + " \"plt.ylabel('Y')\\n\"\n", + " \"plt.title('Random Numbers')\\n\"\n", + " \"plt.show()\\n\"\n", + " \"```\\n\"\n", + ")\n", + "\n", + "# Generate a reply for the second code message.\n", + "reply = jupyter_agent.generate_reply(\n", + " messages=[\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": message_with_code_blocks_2,\n", " }\n", " ]\n", ")\n", @@ -101,56 +472,205 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "When you run the previous code block, you will be prompted for a human feedback,\n", - "which gives you an option to intercept message because the code executor can run\n", - "arbitrary code. It is important to have a human in the loop.\n", + "From the output, we can see that the code blocks from all the messages are \n", + "executed in the same kernel, and the variables `x` and `y` created in the\n", + "first message's code block are accessible in the second message's code block.\n", "\n", - "[Discuss containerization once that piece is ready.]" + "Let's take a look at the output of the plot in the output directory." + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['77cfc432c7a946d48c47c7932e467c03.png']\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHHCAYAAABDUnkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABEK0lEQVR4nO3de3RU1fn/8c8kkAT9klEEkhDTgngjoKSCxCjeMBTUItTaUigXUawi3ogXQMV4JaDW4ldQFC/YL1pUliIWGi8gP4vGYsFYEcXKRSgkUW4JhZLAzPn9kTWjQybJTDIz5/Z+rZW1zOGcZM9xMvs5+3n23h7DMAwBAAA4RJLZDQAAAIglghsAAOAoBDcAAMBRCG4AAICjENwAAABHIbgBAACOQnADAAAcheAGAAA4CsENAABwFIIbAK1y5ZVXqmvXrmY3wxZWrlwpj8ejRYsWmd0UwNEIbgCbmD9/vjweT/CrTZs2ys7O1pVXXqnt27eb3TzLCNyntLS0sPflggsuUK9evUxoGYBEaWN2AwBE5/7771e3bt108OBBffzxx5o/f75WrVqldevWKS0tzezmWUZtba1mzJihJ554wuymAEgwRm4Am7n44os1atQojR8/Xs8++6xuu+02bdy4UUuWLDG7aZaSl5enefPmaceOHWY3JeH2799vdhMAUxHcADZ37rnnSpI2btwYPFZXV6d77rlHffr0kdfr1dFHH61zzz1X77//fsi1W7Zskcfj0aOPPqpnnnlG3bt3V2pqqs4880x98sknDX7X4sWL1atXL6WlpalXr1564403wrZp//79uvXWW5WTk6PU1FSdcsopevTRR2UYRsh5Ho9HN9xwg1577TXl5uaqXbt2Kigo0Oeffy5Jevrpp3XiiScqLS1NF1xwgbZs2RLxfbnzzjvl8/k0Y8aMJs8L3IP58+c3+DePx6N77703+P29994rj8ejr7/+WqNGjZLX61WnTp00bdo0GYahbdu2aejQoUpPT1dmZqb+8Ic/hP2dPp9Pd955pzIzM3X00Ufrsssu07Zt2xqc9/e//12DBw+W1+vVUUcdpfPPP18ffvhhyDmBNq1fv14jR47Uscceq/79+0uSKisrNW7cOB1//PFKTU1VVlaWhg4dGtV9BOyItBRgc4GO6thjjw0eq6mp0bPPPqsRI0bommuu0b59+/Tcc89p0KBBWr16tfLy8kJ+xssvv6x9+/bp2muvlcfj0cMPP6zLL79cmzZtUtu2bSVJ77zzjn71q18pNzdXJSUl2rVrV7Dj/DHDMHTZZZfp/fff19VXX628vDy9/fbbuv3227V9+3b98Y9/DDn/b3/7m5YsWaKJEydKkkpKSvSLX/xCd9xxh5588kldf/312rNnjx5++GFdddVVWrFiRUT3pVu3bhozZozmzZunKVOmqEuXLtHc1iYNHz5cPXr00IwZM7R06VI9+OCD6tChg55++mkNGDBAM2fO1EsvvaTbbrtNZ555ps4777yQ6x966CF5PB5NnjxZ3333nWbNmqXCwkKVl5erXbt2kqQVK1bo4osvVp8+fVRcXKykpCS98MILGjBggP72t7+pX79+IT/z17/+tU466SRNnz49GET+6le/0hdffKEbb7xRXbt21Xfffad3331XW7dupQgczmYAsIUXXnjBkGS89957xvfff29s27bNWLRokdGpUycjNTXV2LZtW/Dcw4cPG7W1tSHX79mzx8jIyDCuuuqq4LHNmzcbkozjjjvO2L17d/D4m2++aUgy3nrrreCxvLw8Iysry9i7d2/w2DvvvGNIMn76058Gjy1evNiQZDz44IMhv/+KK64wPB6P8c033wSPSTJSU1ONzZs3B489/fTThiQjMzPTqKmpCR6fOnWqISnk3Kbu0yeffGJs3LjRaNOmjXHTTTcF//388883evbs2eAevPDCCw1+liSjuLg4+H1xcbEhyfj9738fPHb48GHj+OOPNzwejzFjxozg8T179hjt2rUzxo4dGzz2/vvvG5KM7OzskNf26quvGpKMxx9/3DAMw/D7/cZJJ51kDBo0yPD7/cHzDhw4YHTr1s0YOHBggzaNGDEipO179uwxJBmPPPJIk/cLcCLSUoDNFBYWqlOnTsrJydEVV1yho48+WkuWLAkZQUlOTlZKSookye/3a/fu3Tp8+LD69u2rtWvXNviZw4cPDxn5CaS6Nm3aJEmqqKhQeXm5xo4dK6/XGzxv4MCBys3NDflZy5YtU3Jysm666aaQ47feeqsMw9Bf//rXkOMXXXRRyChCfn6+pPpRh/bt2zc4HmhTJE444QSNHj1azzzzjCoqKiK+rjnjx48P/ndycrL69u0rwzB09dVXB48fc8wxOuWUU8K2d8yYMSGv7YorrlBWVpaWLVsmSSovL9e//vUvjRw5Urt27dLOnTu1c+dO7d+/XxdddJE++OAD+f3+kJ953XXXhXzfrl07paSkaOXKldqzZ09MXjdgFwQ3gM3MmTNH7777rhYtWqRLLrlEO3fuVGpqaoPzXnzxRZ1++ulKS0vTcccdp06dOmnp0qWqrq5ucO5PfvKTkO8DgU6gU/z2228lSSeddFKDa0855ZSQ77/99lt16dIlpPOWpB49eoT8rMZ+dyB4ysnJCXs82o767rvv1uHDh5utvYlGuDanpaWpY8eODY6Ha++R99Hj8ejEE08Mphj/9a9/SZLGjh2rTp06hXw9++yzqq2tbfD/sVu3biHfp6amaubMmfrrX/+qjIwMnXfeeXr44YdVWVnZotcM2Ak1N4DN9OvXT3379pUkDRs2TP3799fIkSO1YcMG/c///I8kacGCBbryyis1bNgw3X777ercubOSk5NVUlISUngckJycHPZ3GUcUAMdDY787Vm064YQTNGrUKD3zzDOaMmVKg3/3eDxhr/P5fI3+zHBti+U9DIzKPPLIIw3qowIC/68DArU6P3bLLbdoyJAhWrx4sd5++21NmzZNJSUlWrFihX72s59F3S7ALhi5AWwsELDs2LFDs2fPDh5ftGiRTjjhBL3++usaPXq0Bg0apMLCQh08eLBFv+enP/2ppB9GFH5sw4YNDc7dsWOH9u3bF3L8q6++CvlZiRQYvZk5c2aDfwuMUu3duzfk+JEjTLF05H00DEPffPNNMD3XvXt3SVJ6eroKCwvDfgUKvZvTvXt33XrrrXrnnXe0bt061dXVNTqLC3AKghvA5i644AL169dPs2bNCgYvgVGEH48a/P3vf1dZWVmLfkdWVpby8vL04osvhqRD3n33Xa1fvz7k3EsuuUQ+ny8k2JKkP/7xj/J4PLr44otb1IbW6N69u0aNGqWnn366QVomPT1dHTt21AcffBBy/Mknn4xbe/70pz+FBH+LFi1SRUVF8N706dNH3bt316OPPqr//Oc/Da7//vvvm/0dBw4caBDMdu/eXe3bt1dtbW0rXwFgbaSlAAe4/fbb9etf/1rz58/Xddddp1/84hd6/fXX9ctf/lKXXnqpNm/erLlz5yo3NzdsZxmJkpISXXrpperfv7+uuuoq7d69W0888YR69uwZ8jOHDBmiCy+8UHfddZe2bNmi3r1765133tGb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/fvLMAwdPnxY1113ne68885ENNl1Gusna2pq9N///lft2rVr1c9n5AaOMWPGDC1cuFBvvPGG0tLSzG6O4+zbt0+jR4/WvHnz1LFjR7Ob4wp+v1+dO3fWM888oz59+mj48OG66667NHfuXLOb5jgrV67U9OnT9eSTT2rt2rV6/fXXtXTpUj3wwANmNw0twMhNMzp27Kjk5GRVVVWFHK+qqlJmZmbYazIzM6M6H/Vacq8DHn30Uc2YMUPvvfeeTj/99Hg20zGivd8bN27Uli1bNGTIkOAxv98vSWrTpo02bNig7t27x7fRNtaS93dWVpbatm2r5OTk4LEePXqosrJSdXV1SklJiWub7aol93ratGkaPXq0xo8fL0k67bTTtH//fv3+97/XXXfdpaQkxgJiqbF+Mj09vdWjNhIjN81KSUlRnz59tHz58uAxv9+v5cuXq6CgIOw1BQUFIedL0rvvvtvo+ajXknstSQ8//LAeeOABlZaWqm/fvoloqiNEe79PPfVUff755yovLw9+XXbZZbrwwgtVXl6unJycRDbfdlry/j7nnHP0zTffBINISfr666+VlZVFYNOEltzrAwcONAhgAkGlwRaMMRf3fjImZckOt3DhQiM1NdWYP3++sX79euP3v/+9ccwxxxiVlZWGYRjG6NGjjSlTpgTP//DDD402bdoYjz76qPHll18axcXFTAWPULT3esaMGUZKSoqxaNEio6KiIvi1b98+s16CrUR7v4/EbKnoRHu/t27darRv39644YYbjA0bNhh/+ctfjM6dOxsPPvigWS/BNqK918XFxUb79u2NP//5z8amTZuMd955x+jevbvxm9/8xqyXYCv79u0zPv30U+PTTz81JBmPPfaY8emnnxrffvutYRiGMWXKFGP06NHB8wNTwW+//Xbjyy+/NObMmcNUcDM88cQTxk9+8hMjJSXF6Nevn/Hxxx8H/+388883xo4dG3L+q6++apx88slGSkqK0bNnT2Pp0qUJbrF9RXOvf/rTnxqSGnwVFxcnvuE2Fe17+8cIbqIX7f3+6KOPjPz8fCM1NdU44YQTjIceesg4fPhwglttT9Hc60OHDhn33nuv0b17dyMtLc3Iyckxrr/+emPPnj2Jb7gNvf/++2E/iwP3eOzYscb555/f4Jq8vDwjJSXFOOGEE4wXXnghZu3xGAbjbQAAwDmouQEAAI5CcAMAAByF4AYAADgKwQ0AAHAUghsAAOAoBDcAAMBRCG4AAICjENwAAABHIbgBYGs+n09nn322Lr/88pDj1dXVysnJ0V133WVSywCYhRWKAdje119/rby8PM2bN0+/+93vJEljxozRZ599pk8++YRNJgGXIbgB4Aj/+7//q3vvvVdffPGFVq9erV//+tf65JNP1Lt3b7ObBiDBCG4AOIJhGBowYICSk5P1+eef68Ybb9Tdd99tdrMAmIDgBoBjfPXVV+rRo4dOO+00rV27Vm3atDG7SQBMQEExAMd4/vnnddRRR2nz5s3697//bXZzAJiEkRsAjvDRRx/p/PPP1zvvvKMHH3xQkvTee+/J4/GY3DIAicbIDQDbO3DggK688kpNmDBBF154oZ577jmtXr1ac+fONbtpAEzAyA0A27v55pu1bNkyffbZZzrqqKMkSU8//bRuu+02ff755+ratau5DQSQUAQ3AGzt//2//6eLLrpIK1euVP/+/UP+bdCgQTp8+DDpKcBlCG4AAICjUHMDAAAcheAGAAA4CsENAABwFIIbAADgKAQ3AADAUQhuAACAoxDcAAAARyG4AQAAjkJwAwAAHIXgBgAAOArBDQAAcBSCGwAA4Cj/H2afS72yzuVBAAAAAElFTkSuQmCC", + "text/plain": [ + "" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "output_files = os.listdir(temp_dir)\n", + "print(output_files)\n", + "Image(os.path.join(temp_dir, output_files[0]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Don't forget to clean up the temporary directory." + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [], + "source": [ + "shutil.rmtree(temp_dir)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can restart the Jupyter server by calling the `restart` method on the\n", + "agent's `code_executor` attribute." + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": {}, + "outputs": [], + "source": [ + "jupyter_agent.code_executor.restart()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## User Proxy Agent and Assistant Agent\n", + "### Remote Jupyter Code Executor\n", "\n", - "[Introduce the two-agent pattern of user proxy and assistant agents, and how does it connect to the code executor.]" + "[Discuss the remote Jupyter executor once that piece is ready.]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Agent and Coding\n", + "## Use Code Execution in Conversation\n", "\n", - "Writing and executing code is necessary for many complex tasks such as \n", - "data analysis, machine learning, and mathematical modeling. \n", - "In AutoGen, coding is a conversation between a code writer agent and a \n", + "Writing and executing code is necessary for many tasks such as \n", + "data analysis, machine learning, and mathematical modeling.\n", + "In AutoGen, coding can be a conversation between a code writer agent and a \n", "code executor agent, mirroring the interaction between a programmer and a\n", "code interpreter.\n", "\n", + "```{=mdx}\n", + "![Code Writer and Code Executor](./assets/code-execution-in-conversation.png)\n", + "```\n", + "\n", "The code writer agent can be powered by an LLM such as GPT-4 with code-writing\n", "capability.\n", + "And the code executor agent is powered by a code executor.\n", + "\n", "The following is an agent with a code writer role specified \n", "using `system_message`." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 63, "metadata": {}, "outputs": [], "source": [ + "# The code writer agent's system message is to instruct the LLM on how to\n", + "# use the Jupyter code executor with IPython kernel.\n", + "code_writer_system_message = (\n", + " \"You have been given coding capability to solve tasks using Python code in a stateful IPython kernel.\\n\"\n", + " \"You are responsible for writing the code, and the user is responsible for executing the code.\\n\"\n", + " \"\\n\"\n", + " \"When you write Python code, put the code in a markdown code block with the language set to Python.\\n\"\n", + " \"For example:\\n\"\n", + " \"```python\\n\"\n", + " \"x = 3\\n\"\n", + " \"```\\n\"\n", + " \"You can use the variable `x` in subsequent code blocks.\\n\"\n", + " \"```python\\n\"\n", + " \"print(x)\\n\"\n", + " \"```\\n\"\n", + " \"\\n\"\n", + " \"Write code incrementally and leverage the statefulness of the kernel to avoid repeating code.\\n\"\n", + " \"Import libraries in a separate code block.\\n\"\n", + " \"Define a function or a class in a separate code block.\\n\"\n", + " \"Run code that produces output in a separate code block.\\n\"\n", + " \"Run code that involves expensive operations like download, upload, and call external APIs in a separate code block.\\n\"\n", + " \"\\n\"\n", + " \"When your code produces an output, the output will be returned to you.\\n\"\n", + " \"Because you have limited conversation memory, if your code creates an image,\\n\"\n", + " \"the output will be a path to the image instead of the image itself.\\n\"\n", + ")\n", + "\n", "code_writer_agent = ConversableAgent(\n", " \"code_writer\",\n", - " system_message=\"You are an AI assistant. You write code in markdown code \"\n", - " \"blocks. You do not execute code yourself, but always ask me to execute code \"\n", - " \"for you in an IPython kernel.\",\n", + " system_message=code_writer_system_message,\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", " code_execution_config=False, # Turn off code execution for this agent.\n", ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We need to install additional dependencies to use the Jupyter executor." + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [], + "source": [ + "! pip install -qqq 'pyautogen[local-jupyter-exec]'\n", + "# On Windows, use the following due to a known issue with Jupyter Kernel Gateway.\n", + "# ! pip install -qqq 'pyautogen[ipython]'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following is an agent with a code executor role specified using \n", + "its `code_execution_config`. It uses a local Jupyter code executor\n", + "with `python3` kernel." + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": {}, + "outputs": [], + "source": [ + "# Create a temporary directory to store the output images.\n", + "temp_dir = tempfile.mkdtemp()\n", + "\n", + "# Create an agent with code executor configuration for a local Jupyter\n", + "# code executor.\n", + "code_executor_agent = ConversableAgent(\n", + " name=\"code_executor_agent\",\n", + " llm_config=False,\n", + " code_execution_config={\n", + " \"executor\": \"jupyter-local\", # Use the local Jupyter executor.\n", + " # On Windows use \"ipython-embedded\" instead of \"jupyter-local\"\n", + " # due to a known issue with Jupyter Kernel Gateway on Windows.\n", + " \"jupyter-local\": {\n", + " \"timeout\": 60, # Timeout for each code execution in seconds.\n", + " \"kernel_name\": \"python3\", # Use the Python 3 kernel, which is the default.\n", + " \"output_dir\": temp_dir, # Use the temporary directory to store output images.\n", + " },\n", + " },\n", + " human_input_mode=\"ALWAYS\",\n", + ")" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -161,11 +681,57 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 83, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "Write Python code to calculate the 14th Fibonacci number.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Sure, I'll use a simple iterative method to calculate the 14th Fibonacci number. \n", + "\n", + "```python\n", + "def fibonacci(n):\n", + " a, b = 0, 1\n", + " for _ in range(n):\n", + " a, b = b, a + b\n", + " return a\n", + "\n", + "fibonacci(14)\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: 377\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "The 14th Fibonacci number is 377.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], "source": [ - "result = code_executor_agent.initiate_chat(\n", + "chat_result = code_executor_agent.initiate_chat(\n", " code_writer_agent,\n", " message=\"Write Python code to calculate the 14th Fibonacci number.\",\n", ")" @@ -191,13 +757,169 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 84, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "Today is 2024-02-26. Write Python code to plot TSLA's and META's stock prices YTD.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "First, let's install the `yfinance` library that will allow us to fetch the stock price data. We will also need `matplotlib` for plotting and `pandas` for data manipulation.\n", + "\n", + "Your code block should look like this:\n", + "\n", + "```python\n", + "!pip install yfinance matplotlib pandas\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Great! Now that the required libraries are installed, let's import them:\n", + "\n", + "```python\n", + "import yfinance as yf\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Next, let's define a function that fetches the stock data for a given ticker symbol for the year up until the specified date. Then, it will\n", + "return a DataFrame containing the changes in the stock price. \n", + "\n", + "```python\n", + "def get_stock_data(symbol, end_date):\n", + " # YYYY-MM-DD to YYYY-MM-01\n", + " start_date = end_date[:8] + \"01\"\n", + " \n", + " # Fetch the data\n", + " data = yf.download(symbol, start=start_date, end=end_date)\n", + "\n", + " # Return the data\n", + " return data\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Now, let's fetch the stock price data for TSLA and META till 2024-02-26.\n", + "\n", + "```python\n", + "end_date = \"2024-02-26\"\n", + "tsla_data = get_stock_data(\"TSLA\", end_date)\n", + "meta_data = get_stock_data(\"META\", end_date)\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "[*********************100%%**********************] 1 of 1 completed\n", + "\n", + "[*********************100%%**********************] 1 of 1 completed\n", + "\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Now that we have the data, we can plot it.\n", + "\n", + "```python\n", + "plt.figure(figsize=(14,8))\n", + "\n", + "plt.plot(tsla_data.index, tsla_data['Close'], label='TSLA')\n", + "plt.plot(meta_data.index, meta_data['Close'], label='META')\n", + "\n", + "plt.title(\"TSLA vs META Stock Prices YTD\")\n", + "plt.xlabel(\"Date\")\n", + "plt.ylabel(\"Closing Price\")\n", + "plt.legend()\n", + "\n", + "plt.show()\n", + "```\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output:
\n", + "Image data saved to /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmp51yprec0/cf146a5cff554a678621a786ecd70ff0.png\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\n", + "Here is the plot showing the year-to-date closing prices of TSLA and META stocks. You can view the plot by opening the image file located at /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmp51yprec0/cf146a5cff554a678621a786ecd70ff0.png. \n", + "\n", + "Please note that the paths are diverging or converging over time, reflecting the changes in the stock prices of the two companies.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], "source": [ "today = datetime.datetime.now().strftime(\"%Y-%m-%d\")\n", - "result = code_executor_agent.initiate_chat(\n", - " code_writer_agent, message=f\"Today is {today}. Plot a chart for Tesla's and Microsoft's stock prices YTD.\"\n", + "chat_result = code_executor_agent.initiate_chat(\n", + " code_writer_agent, message=f\"Today is {today}. Write Python code to plot TSLA's and META's stock prices YTD.\"\n", ")" ] }, @@ -210,29 +932,225 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 85, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['cf146a5cff554a678621a786ecd70ff0.png']\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABIgAAAK9CAYAAABPS1fnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAACOK0lEQVR4nOzdd3RUdf7/8dckmfRkQkIaLSI9FCkKxIKoCEh0LbiiWLCvLHbX9cfqWnfFxV0VXSy7XxRXQV1U1rUiFlgVbCC9IxIQUijJpJeZ+/vjJpMMSWAmJpkk9/k4556Z+7l37n3PhJK88ik2wzAMAQAAAAAAwLKCAl0AAAAAAAAAAouACAAAAAAAwOIIiAAAAAAAACyOgAgAAAAAAMDiCIgAAAAAAAAsjoAIAAAAAADA4giIAAAAAAAALI6ACAAAAAAAwOIIiAAAAAAAACyOgAgAAMACbDabbr755oDc+6effpLNZtP8+fMDcn8AAHBsBEQAALQim83m07Zs2TJJUl5enm677Tb1799fERERSkpK0siRI3XPPfeoqKjIc92rr75a0dHRPteRn5+v8PBw2Ww2bd68ubnfZpM9+OCDstlsCgoK0p49e+oddzqdioiIqBd21AQQjW2PPfaY5s+f79Nnf9xxx3ndc+TIkbLZbHruuef8ei++fu0WLlyop556yq9rt7bjjjvO6zNKSkrSaaedpsWLFwe6tCZ77LHHZLPZtGTJkgaPT5o0SQ6HQ+PHj/fpz83VV18tSRo7dqynLSgoSLGxserXr5+uvPJKLV26tBXfIQAA/gkJdAEAAFjJK6+84rX/r3/9S0uXLq3XPmDAAB06dEgnnniinE6nrr32WvXv318HDx7UunXr9Nxzz2n69Ol+hUJ1LVq0SDabTSkpKVqwYIH+9Kc/Nfk9tYSwsDC99tpr+v3vf+/V/vbbbx/1dZdddpkmTZpUr33YsGGKiIio9zlff/31GjlypG688UZPW93PdPv27fruu+903HHHacGCBZo+fbpP9fvztVu4cKE2bNig22+/3adrB8rQoUN11113SZL27dunF154QRdddJGee+453XTTTUd9bVpamkpLS2W321ujVJ/cddddWrhwoX77299qw4YNioiI8BxbtGiRPvzwQ82dO1fDhg3TVVdd5Tm2a9cu3X///brxxht12mmnedp79erled6tWzfNmjVLklRcXKwdO3bo7bff1quvvqpLLrlEr776apv6LAAAkCQZAAAgYGbMmGE09t/x7NmzDUnGV199Ve9YQUGBUVpa6tmfNm2aERUV5fN9x4wZY1x00UXGHXfcYfTs2dP/wlvIAw88YEgyLrroImPo0KH1jp999tnG5MmTDUnGjBkzPO27du0yJBmPP/64X/eLiooypk2b1ujx+++/30hKSjLeeustw2azGbt27fLpuv587TIzM420tDS/6m6KIz8zf6SlpRmZmZlebfv37zeioqKMvn37Nvq6yspKo7y8vEn3bA0rV640goKCjJkzZ3ranE6n0aVLF2P06NGGy+Wq95rvvvvOkGS89NJLDV7z9NNPNwYOHFivvaqqyvjtb39rSDJ+//vfN9t7AACguTDEDACANmrnzp0KDg7W6NGj6x2LjY1VeHh4k66blZWlL774QpdeeqkuvfRS7dq1SytWrDjm6958803ZbDYtX7683rEXXnhBNptNGzZskCRlZ2frmmuuUbdu3RQWFqbU1FSdf/75+umnn3yqcerUqVqzZo22bNniacvOztZnn32mqVOn+vZGm8HChQt18cUX69xzz5XD4dDChQt9ep2vX7uxY8fq/fff1+7duxsc4pabm6vrrrtOycnJCg8P1wknnKCXX3653jXdbrfmzJmjwYMHKzw8XImJiZo4caK+//77o9b5pz/9SUFBQXrmmWd8el91paSkaMCAAdq1a5ek2mF+f/3rX/XUU0+pV69eCgsL06ZNmxqdg2jLli265JJLlJiYqIiICPXr10/33nuv1zk///yzrr32WiUnJyssLEwDBw7Uiy++WK+eZ555RgMHDlRkZKQ6deqkE0888Zhfr9GjR+umm27SX//6V23atEmSdN999yk3N1f/+Mc/FBTUfN8qBwcH6+mnn1Z6err+/ve/q6CgoNmuDQBAcyAgAgCgjUpLS5PL5ao3LOqXeu211xQVFaVzzz1XI0eOVK9evbRgwYJjvi4zM1PR0dH697//Xe/YG2+8oYEDB2rQoEGSpMmTJ2vx4sW65ppr9Oyzz+rWW29VYWGhsrKyfKpxzJgx6tatm9cP+G+88Yaio6OVmZnZ6OtKSkp04MCBeltVVZVP963rm2++0Y4dO3TZZZcpNDRUF110kU+fk+T71+7ee+/V0KFD1blzZ73yyit65ZVXPPMRlZaWauzYsXrllVd0+eWX6/HHH5fD4dDVV1+tOXPmeF3nuuuu0+23367u3bvrL3/5i/7f//t/Cg8P19dff93ove+77z7df//9euGFF3TLLbf49L7qqqys1J49e5SQkODV/tJLL+mZZ57RjTfeqL/97W+Kj49v8PXr1q3TqFGj9Nlnn+mGG27QnDlzdMEFF+jdd9/1nJOTk6PRo0frk08+0c0336w5c+aod+/euu6667zmbfrnP/+pW2+9Venp6Xrqqaf00EMPaejQofrmm2+O+T5mzZqlxMRE/eY3v9GqVas0d+5c/e53v9PgwYP9/kyOJTg4WJdddplKSkr05ZdfNvv1AQD4RQLdhQkAACs72hCz7OxsIzEx0ZBk9O/f37jpppuMhQsXGvn5+fXO9WeI2eDBg43LL7/cs/+HP/zB6Ny5s1FZWXnM11522WVGUlKSUVVV5Wnbv3+/ERQUZDz88MOGYRjG4cOHmzTcyzBqh5jl5eUZv/vd74zevXt7jp100knGNddcYxhG/eFSNUPMGttWrlzZ4P2ONsTs5ptvNrp372643W7DMAzj448/NiQZP/zwwzHfhz9fu8aGmD311FOGJOPVV1/1tFVUVBgZGRlGdHS04XQ6DcMwjM8++8yQZNx66631rlFTu2F4f2Z33XWXERQUZMyfP/+Y78UwzCFm48ePN/Ly8oy8vDxj7dq1xqWXXmpIMm655RbDMGq/BrGxsUZubq7X62uO1R2WNWbMGCMmJsbYvXt3ozVfd911RmpqqnHgwAGvcy699FLD4XAYJSUlhmEYxvnnn9/gsC5fvfnmm4YkIz4+3jj++OM9121IU4eY1Vi8eLEhyZgzZ06T6wUAoCXQgwgAgDYqOTlZa9eu1U033aTDhw/r+eef19SpU5WUlKRHHnlEhmH4fc1169Zp/fr1uuyyyzxtl112mQ4cONDoak51TZkyRbm5uZ5V1iRz6Jnb7daUKVMkSREREQoNDdWyZct0+PBhv2usMXXqVO3YsUPfffed5/FYw8tuvPFGLV26tN6Wnp7u172rqqr0xhtvaMqUKbLZbJKkM888U0lJST71ImqOr90HH3yglJQUr6+V3W7XrbfeqqKiIs9Qv7feeks2m00PPPBAvWvU1F7DMAxPT5xXX31V06ZNO2YdNT7++GMlJiYqMTFRJ5xwghYtWqQrr7xSf/nLX7zOmzx5shITE496rby8PP3vf//Ttddeqx49ejRYs2EYeuutt3TeeefJMAyvHmETJkxQQUGBVq9eLUmKi4vT3r179d133/n8fo6sedKkSTp06JDmzp3rNWF1c6uZnLywsLDF7gEAQFMQEAEA0Ialpqbqueee0/79+7V161Y9/fTTSkxM1P3336958+b5fb1XX31VUVFROv7447Vjxw7t2LFD4eHhnlW6jmXixIlyOBx64403PG1vvPGGhg4dqr59+0oyVyD7y1/+og8//FDJyckaM2aMZs+erezsbL9qHTZsmPr376+FCxdqwYIFSklJ0ZlnnnnU1/Tp00fjxo2rt8XGxvp1748//lh5eXkaOXKk53PatWuXzjjjDL322mtyu93HvMYv/drt3r1bffr0qTcPzoABAzzHJXO+oy5dujQ6lKuuf/3rX5o7d66eeeYZr+DJF6NGjdLSpUv1ySefaMWKFTpw4ID+9a9/1QtTevbsecxr/fjjj5LkGZLYkLy8POXn5+sf//iHJ5iq2a655hpJ5hxNknTPPfcoOjpaI0eOVJ8+fTRjxgx99dVXfr2/k046SZJ04okn+vU6fxUVFUmSYmJiWvQ+AAD4i2XuAQBoB2w2m/r27au+ffsqMzNTffr00YIFC3T99df7fA3DMPTaa6+puLi4wR41ubm5Kioq8lrm/UhhYWG64IILtHjxYj377LPKycnRV199pUcffdTrvNtvv13nnXee/vOf/2jJkiX64x//qFmzZumzzz7TsGHDfK556tSpeu655xQTE6MpU6Y066TBR1MTll1yySUNHl++fLnOOOMMn67VHF+75nLKKadozZo1+vvf/65LLrnEp1CpRufOnTVu3LhjntdcvW9qQrgrrrii0Z5OQ4YMkWSGZlu3btV7772njz76SG+99ZaeffZZ3X///XrooYeapZ7mUjORe+/evQNcCQAA3giIAABoZ44//nh16tRJ+/fv9+t1y5cv1969e/Xwww97eqHUOHz4sG688Ub95z//0RVXXHHU60yZMkUvv/yyPv30U23evFmGYXiGl9XVq1cv3XXXXbrrrru0fft2DR06VH/729/06quv+lzz1KlTdf/992v//v3NPll3Y4qLi/XOO+9oypQpuvjii+sdv/XWW7VgwQKfA6K6GvraHTkMrEZaWprWrVsnt9vtFYzVrOyWlpYmyfyclyxZokOHDh0z8Ondu7dmz56tsWPHauLEifr0008D0pPl+OOPl1QbljQkMTFRMTExcrlcPgVTUVFRmjJliqZMmaKKigpddNFF+vOf/6yZM2c2ecW/5uZyubRw4UJFRkbq1FNPDXQ5AAB4YYgZAABt1DfffKPi4uJ67d9++60OHjyofv36+XW9muFld999ty6++GKv7YYbbvD0bDmWcePGKT4+Xm+88YbeeOMNjRw50mtYUUlJicrKyrxe06tXL8XExKi8vNyvmnv16qWnnnpKs2bN0siRI/16bVMtXrxYxcXFmjFjRr3PqWbJ+7feeuuo78Wfr11UVFSDS55PmjRJ2dnZXsP5qqqq9Mwzzyg6Olqnn366JHP+HMMwGuwp09BcR0OGDNEHH3ygzZs367zzzlNpaenRP5AWkJiYqDFjxujFF1+st7JdTc3BwcGaPHmy3nrrrQaDpLy8PM/zgwcPeh0LDQ1Venq6DMNQZWVlC7wD/7lcLt16663avHmzbr31Vr+HPQIA0NLoQQQAQBv1yiuvaMGCBbrwwgs1YsQIhYaGavPmzXrxxRcVHh6uP/zhD17nV1ZW6k9/+lO968THx+u6667TW2+9pbPPPrvR3hS/+tWvNGfOHOXm5iopKanRuux2uy666CK9/vrrKi4u1l//+lev49u2bdNZZ52lSy65ROnp6QoJCdHixYuVk5OjSy+91O/P4bbbbvP53NWrVzfYQ6lXr17KyMjw6RoLFixQQkKCTj755AaP/+pXv9I///lPvf/++7rooosaPMefr92IESP0xhtv6M4779RJJ52k6OhonXfeebrxxhv1wgsv6Oqrr9aqVat03HHH6c0339RXX32lp556ytPz54wzztCVV16pp59+Wtu3b9fEiRPldrv1xRdf6IwzztDNN99cr77Ro0frnXfe0aRJk3TxxRfrP//5j+x2u0+fT3N5+umndeqpp2r48OG68cYb1bNnT/300096//33tWbNGknSY489ps8//1yjRo3SDTfcoPT0dB06dEirV6/WJ598okOHDkmSxo8fr5SUFJ1yyilKTk7W5s2b9fe//12ZmZkB6SFVUFDg+XNYUlKiHTt26O2339bOnTt16aWX6pFHHmn1mgAAOKYArZ4GAACMoy9zv27dOuPuu+82hg8fbsTHxxshISFGamqq8etf/9pYvXq117nTpk1rdIn3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SYZhNFtRAAAAAAAAaD1+B0QHDx7UuHHj1LdvX02aNEn79++XJF133XW66667mr1AAAAAAAAAtCy/A6I77rhDISEhysrKUmRkpKd9ypQp+uijj5q1OAAAAAAAALS8EH9f8PHHH2vJkiXq1q2bV3ufPn20e/fuZisMAAAAAAAArcPvHkTFxcVePYdqHDp0SGFhYc1SFAAAAAAAAFqP3wHRaaedpn/961+efZvNJrfbrdmzZ+uMM85o1uIAAAAAAADQ8vweYjZ79mydddZZ+v7771VRUaHf//732rhxow4dOqSvvvqqJWoEAAAAAABAC/K7B9GgQYO0bds2nXrqqTr//PNVXFysiy66SD/88IN69erVEjUCAAAAAACgBdkMwzACXUSgOZ1OORwOFRQUKDY2NtDlAAAAAAAANAtfMw+/exC99NJLWrRoUb32RYsW6eWXX/brWs8995yGDBmi2NhYxcbGKiMjQx9++KHn+NixY2Wz2by2m266yesaWVlZyszMVGRkpJKSknT33XerqqrK37cFAAAAAABgWX4HRLNmzVLnzp3rtSclJenRRx/161rdunXTY489plWrVun777/XmWeeqfPPP18bN270nHPDDTdo//79nm327NmeYy6XS5mZmaqoqNCKFSv08ssva/78+br//vv9fVsAAAAAAACW5fcQs/DwcG3ZskXHHXecV/tPP/2kAQMGqLS09BcVFB8fr8cff1zXXXedxo4dq6FDh+qpp55q8NwPP/xQ5557rvbt26fk5GRJ0vPPP6977rlHeXl5Cg0N9emeDDEDAAAAAAAdUYsNMUtKStK6devqta9du1YJCQn+Xs7D5XLp9ddfV3FxsTIyMjztCxYsUOfOnTVo0CDNnDlTJSUlnmMrV67U4MGDPeGQJE2YMEFOp9OrF9KRysvL5XQ6vTYAAAAAAACr8nuZ+8suu0y33nqrYmJiNGbMGEnS8uXLddttt+nSSy/1u4D169crIyNDZWVlio6O1uLFi5Weni5Jmjp1qtLS0tSlSxetW7dO99xzj7Zu3aq3335bkpSdne0VDkny7GdnZzd6z1mzZumhhx7yu1YAAAAAAICOyO+A6JFHHtFPP/2ks846SyEh5svdbreuuuoqv+cgkqR+/fppzZo1Kigo0Jtvvqlp06Zp+fLlSk9P14033ug5b/DgwUpNTdVZZ52lnTt3qlevXn7fq8bMmTN15513evadTqe6d+/e5OsBAAAAAAC0Z34HRKGhoXrjjTf0yCOPaO3atYqIiNDgwYOVlpbWpAJCQ0PVu3dvSdKIESP03Xffac6cOXrhhRfqnTtq1ChJ0o4dO9SrVy+lpKTo22+/9TonJydHkpSSktLoPcPCwhQWFtakegEAAAAAADoavwOiGn379lXfvn2bsxZJZm+k8vLyBo+tWbNGkpSamipJysjI0J///Gfl5uYqKSlJkrR06VLFxsZ6hqkBAAAAAADg6HwKiO6880498sgjioqK8hqa1ZAnnnjC55vPnDlT55xzjnr06KHCwkItXLhQy5Yt05IlS7Rz504tXLhQkyZNUkJCgtatW6c77rhDY8aM0ZAhQyRJ48ePV3p6uq688krNnj1b2dnZuu+++zRjxgx6CAEAAAAAAPjIp4Dohx9+UGVlpSRp9erVstlsDZ7XWHtjcnNzddVVV2n//v1yOBwaMmSIlixZorPPPlt79uzRJ598oqeeekrFxcXq3r27Jk+erPvuu8/z+uDgYL333nuaPn26MjIyFBUVpWnTpunhhx/2qw4AAAAAAAArsxmGYQS6iEBzOp1yOBwqKChQbGxsoMsBAAAAAKBDMgxDVVVVcrlcgS6lwwgODlZISEijnXZ8zTz8moOosrJSERERWrNmjQYNGuRfxQAAAAAAwLIqKiq0f/9+lZSUBLqUDicyMlKpqakKDQ1t8jX8Cojsdrt69OhB0gcAAAAAAHzmdru1a9cuBQcHq0uXLgoNDfV7mhrUZxiGKioqlJeXp127dqlPnz4KCgpq0rX8XsXs3nvv1R/+8Ae98sorio+Pb9JNAQAAAACAdVRUVMjtdqt79+6KjIwMdDkdSkREhOx2u3bv3q2KigqFh4c36Tp+B0R///vftWPHDnXp0kVpaWmKioryOr569eomFQIAAAAAADq2pvZuwdE1x+fqd0B0/vnn0w0MAAAAAACgA/E7IHrwwQdboAwAAAAAAAAEis99kIqLizV9+nR17dpViYmJuvTSS5WXl9eStQEAAAAAAKAV+BwQ/fGPf9Qrr7yic889V1OnTtVnn32mG2+8sSVrAwAAAAAACAibzXbUrWaE1eLFizV69Gg5HA7FxMRo4MCBuv322z3XmT9/vuLi4ny6Z//+/RUWFqbs7Ozmf0PH4PMQs8WLF+ull17Sr3/9a0nSVVddpdGjR6uqqkohIX6PVAMAAAAAAGiz9u/f73n+xhtv6P7779fWrVs9bdHR0fr00081ZcoU/fnPf9avfvUr2Ww2bdq0SUuXLvX7fl9++aVKS0t18cUX6+WXX9Y999zTLO/DVz4nO3v37tUpp5zi2R8xYoTsdrv27dunHj16tEhxAAAAAACgYzIMQ6WVrla/b4Q92KfFt1JSUjzPHQ6HbDabV5skvfvuuzrllFN09913e9r69u2rCy64wO+65s2bp6lTp+r000/Xbbfd1nYDIrfbLbvd7v3ikBC5XK3/xQQAAAAAAO1baaVL6fcvafX7bnp4giJDm2ckVEpKihYuXKgNGzZo0KBBTb5OYWGhFi1apG+++Ub9+/dXQUGBvvjiC5122mnNUqcvfP5EDMPQWWed5TWcrKSkROedd55CQ0M9batXr27eCgEAAAAAANqgW265RV988YUGDx6stLQ0jR49WuPHj9fll1+usLAwn6/z+uuvq0+fPho4cKAk6dJLL9W8efPaZkD0wAMP1Gs7//zzm7UYAAAAAABgDRH2YG16eEJA7ttcoqKi9P7772vnzp36/PPP9fXXX+uuu+7SnDlztHLlSkVGRvp0nRdffFFXXHGFZ/+KK67Q6aefrmeeeUYxMTHNVu/R/KKACAAAAAAAoClsNluzDfUKtF69eqlXr166/vrrde+996pv37564403dM011xzztZs2bdLXX3+tb7/91mveIZfLpddff1033HBDS5bu4fMy9wAAAAAAADi64447TpGRkSouLvbp/Hnz5mnMmDFau3at1qxZ49nuvPNOzZs3r4WrrdUxojoAAAAAAIBW9uCDD6qkpESTJk1SWlqa8vPz9fTTT6uyslJnn3225zyXy6U1a9Z4vTYsLEy9e/fWK6+8oocffrjeJNfXX3+9nnjiCW3cuNEzN1FLIiACAAAAAABogtNPP11z587VVVddpZycHHXq1EnDhg3Txx9/rH79+nnOKyoq0rBhw7xe26tXL/3lL3/RwYMHdeGFF9a79oABAzRgwADNmzdPTzzxRIu/F5thGEaL36WNczqdcjgcKigoUGxsbKDLAQAAAACgQykrK9OuXbvUs2dPhYeHB7qcDudon6+vmQdzEAEAAAAAAFic30PMnn766QbbbTabwsPD1bt3b40ZM0bBwc23bBwAAAAAAABa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EAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUFNCCaNWuWTjrpJMXExCgpKUkXXHCBtm7d6nXO2LFjZbPZvLabbrrJ65ysrCxlZmYqMjJSSUlJuvvuu1VVVdWabwUAAAAAAKDdCgnkzZcvX64ZM2bopJNOUlVVlf7whz9o/Pjx2rRpk6Kiojzn3XDDDXr44Yc9+5GRkZ7nLpdLmZmZSklJ0YoVK7R//35dddVVstvtevTRR1v1/QAAAAAAALRHNsMwjEAXUSMvL09JSUlavny5xowZI8nsQTR06FA99dRTDb7mww8/1Lnnnqt9+/YpOTlZkvT8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gUU/++7nTZs22caNG+3QoUO2efNmy8jIsMzMTGtubvY7b/Q8p/aymXleQ3zrW9+yGTNmWGlpqb333nue/Y8//rht3rzZDh48aBUVFbZs2TILCQmxf/zjH35ro+fRy757ud33v/99y8nJ8VsPgefUfl67dq2FhITY888/7/WcmpoazxjeA/YtBETdJOmCj4KCAs+Y06dP25w5c6x///4WERFhP/nJT7y++fLy8i5Y4+qrr/Z53K7+cGhra7Pf//73lpCQYG6328aPH2/79+/37C8oKPB5Dv5s27bNRo0aZWFhYZaamup1zu37L1T35z//ud/a6Hn0su9ezsnJscGDB1tYWJglJydbTk6OHThwwG9dBA797LufX375ZUtNTbWwsDBLTEy0uXPner2ww5XFyb3sb86LFy+2tLQ069evn/Xv39+ysrKssLDQb10EBr3c+Zzbry7ZvHmz33oIPKf289ixY/2+v+M9YN/iMjMTAAAAAAAAHItbmAAAAAAAADgcAREAAAAAAIDDERABAAAAAAA4HAERAAAAAACAwxEQAQAAAAAAOBwBEQAAAAAAgMMREAEAAAAAADgcAREAAAAAAIDDERABAAAAAAA4HAERAADARZg1a5ZcLpdcLpdCQ0OVkJCgiRMn6p///Kfa2tq6XGf16tWKi4u7fBMFAADoAgIiAACAizR58mRVVVXpyJEj2rhxo8aNG6f58+drypQpamlpCfT0AAAAuoyACAAA4CK53W4lJiYqOTlZY8aM0e9+9ztt2LBBGzdu1OrVqyVJy5cv10033aTIyEilpKRozpw5amhokCQVFxfr/vvvV21tredqpEcffVSS1NTUpIcffljJycmKjIxUZmamiouLA3OiAACgzyMgAgAAuIR++MMfKiMjQ0VFRZKkoKAgrVixQu+9955eeOEFbd26VYsWLZIkZWdn69lnn1VMTIyqqqpUVVWlhx9+WJI0b948lZSUqLCwUHv37tXUqVM1efJkVVZWBuzcAABA3+UyMwv0JAAAAHqbWbNmqaamRuvXr++wb9q0adq7d68qKio67Hv11VeVm5urkydPSjq3BtGCBQtUU1PjGXP06FGlpqbq6NGjSkpK8myfMGGCbrnlFj3++OOX/HwAAICzhQR6AgAAAH2NmcnlckmS/vOf/yg/P1/vv/++6urq1NLSojNnzqixsVEREREXfH5ZWZlaW1uVnp7utb2pqUkDBw687PMHAADOQ0AEAABwie3bt0/Dhg3TkSNHNGXKFM2ePVuPPfaYBgwYoLffflsPPPCAmpubfQZEDQ0NCg4O1u7duxUcHOy1LyoqqidOAQAAOAwBEQAAwCW0detWlZWV6de//rV2796ttrY2PfPMMwoKOrf047p167zGh4WFqbW11Wvb6NGj1draqurqat166609NncAAOBcBEQAAAAXqampScePH1dra6tOnDihTZs2KT8/X1OmTNHMmTNVXl6us2fPauXKlbrzzju1Y8cO/fWvf/Wqcc0116ihoUFbtmxRRkaGIiIilJ6ervvuu08zZ87UM888o9GjR+vTTz/Vli1bdPPNN+uOO+4I0BkDAIC+iruYAQAAXKRNmzZp8ODBuuaaazR58mRt27ZNK1as0IYNGxQcHKyMjAwtX75cTz75pEaOHKm1a9cqPz/fq0Z2drZyc3OVk5OjQYMG6amnnpIkFRQUaObMmVq4cKGGDx+ue+65Rzt37tTQoUMDcaoAAKCP4y5mAAAAAAAADscVRAAAAAAAAA5HQAQAAAAAAOBwBEQAAAAAAAAOR0AEAAAAAADgcAREAAAAAAAADkdABAAAAAAA4HAERAAAAAAAAA5HQAQAAAAAAOBwBEQAAAAAAAAOR0AEAAAAAADgcAREAAAAAAAADvd/mzduj8o8ySAAAAAASUVORK5CYII=", + "text/plain": [ + "" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "output_files = os.listdir(temp_dir)\n", + "print(output_files)\n", + "Image(os.path.join(temp_dir, output_files[0]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Clean up the temporary directory and restart the Jupyter server to free up\n", + "the kernel resources." + ] + }, + { + "cell_type": "code", + "execution_count": 86, "metadata": {}, "outputs": [], "source": [ - "Image(\"31c88163ca9f414ca4ccb20045e4aa84.png\")" + "shutil.rmtree(temp_dir)\n", + "code_executor_agent.code_executor.restart()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Note on Legacy Code Executor\n", + "\n", + "In existing AutoGen code, you may see\n", + "`code_execution_config={}` \n", + "or \n", + "`code_execution_config={\"use_docker\": False, \"work_dir\": \"path/to/work_dir\"}` \n", + "specified\n", + "in agent's constructor.\n", + "This is the legacy way of specifying the code executor.\n", + "The default value of `code_execution_config` is `{}` which means to use\n", + "a similar version of docker command line code executor,\n", + "while `{\"use_docker\": False}` means to use a similar version of local\n", + "command line code executor.\n", + "\n", + "We recommend using the new way of specifying the code executor,\n", + "which gives more flexibility and extensibility: you can choose different\n", + "types of code executors and even supply your own code executor by\n", + "passing a custom implementation of `autogen.coding.CodeExecutor`: `code_execution_config={\"executor\": CustomExecutor()}`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Containerization\n", + "## Note on User Proxy Agent and Assistant Agent\n", + "\n", + "### User Proxy Agent\n", "\n", - "Code executor is a powerful tool, but it can also be dangerous because it can affect the environment it runs it. For example, it can delete files, send data to a remote server, or even mine cryptocurrency. To mitigate these risks, we can run the code executor in a container. This way, the code executor can only access the resources that are explicitly given to it." + "In the previous examples, the code executor agent is created directly using\n", + "`ConversableAgent` class. In existing AutoGen code, the code executor\n", + "agent is often created using `UserProxyAgent` class, which is a subclass of\n", + "`ConversableAgent` with `human_input_mode=ALWAYS` and `llm_config=False` --\n", + "it always requests human input for every message and does not use LLM.\n", + "It also comes with default `description` field for each of the\n", + "`human_input_mode` setting.\n", + "This class is a convenient short-cut for creating an agent that is\n", + "intended to be used as a code executor.\n", + "\n", + "The default `code_execution_config` for `UserProxyAgent` is currently set \n", + "to use the legacy\n", + "code executor with `{\"use_docker\": True}`.\n", + "The default `description` field is also currently tuned for the legacy code\n", + "executor which executes code in command line." + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'ALWAYS': 'An attentive HUMAN user who can answer questions about the task, '\n", + " 'and can perform tasks such as running Python code or inputting '\n", + " 'command line commands at a Linux terminal and reporting back the '\n", + " 'execution results.',\n", + " 'NEVER': 'A computer terminal that performs no other action than running '\n", + " 'Python scripts (provided to it quoted in ```python code blocks), or '\n", + " 'sh shell scripts (provided to it quoted in ```sh code blocks).',\n", + " 'TERMINATE': 'A user that can run Python code or input command line commands '\n", + " 'at a Linux terminal and report back the execution results.'}\n" + ] + } + ], + "source": [ + "pprint.pprint(UserProxyAgent.DEFAULT_USER_PROXY_AGENT_DESCRIPTIONS)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Jupyter Executor\n", "\n", - "[Introduce the other built-in executor 'jupyter-executor']" + "### Assistant Agent\n", + "\n", + "In the previous examples, the code writer agent is created directly using\n", + "`ConversableAgent` class. In existing AutoGen code, the code writer\n", + "agent is often created using `AssistantAgent` class, which is a subclass of\n", + "`ConversableAgent` with `human_input_mode=NEVER` and `code_execution_config=False` -- it never requests human input and does not use code executor.\n", + "It also comes with default `system_message` and `description` fields.\n", + "This class is a convenient short-cut for creating an agent that is\n", + "intended to be used as a code writer and does not execute code.\n", + "\n", + "**Important:** The default `system_message` of `AssistantAgent` is currently\n", + "tuned for the legacy code executor which executes code in command line.\n", + "If you are not using the command line code executor, \n", + "you may need to modify the \n", + "`system_message` make sure appropriate instruction is provided." + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('You are a helpful AI assistant.\\n'\n", + " 'Solve tasks using your coding and language skills.\\n'\n", + " 'In the following cases, suggest python code (in a python coding block) or '\n", + " 'shell script (in a sh coding block) for the user to execute.\\n'\n", + " ' 1. When you need to collect info, use the code to output the info you '\n", + " 'need, for example, browse or search the web, download/read a file, print the '\n", + " 'content of a webpage or a file, get the current date/time, check the '\n", + " 'operating system. After sufficient info is printed and the task is ready to '\n", + " 'be solved based on your language skill, you can solve the task by yourself.\\n'\n", + " ' 2. When you need to perform some task with code, use the code to perform '\n", + " 'the task and output the result. Finish the task smartly.\\n'\n", + " 'Solve the task step by step if you need to. If a plan is not provided, '\n", + " 'explain your plan first. Be clear which step uses code, and which step uses '\n", + " 'your language skill.\\n'\n", + " 'When using code, you must indicate the script type in the code block. The '\n", + " 'user cannot provide any other feedback or perform any other action beyond '\n", + " \"executing the code you suggest. The user can't modify your code. So do not \"\n", + " \"suggest incomplete code which requires users to modify. Don't use a code \"\n", + " \"block if it's not intended to be executed by the user.\\n\"\n", + " 'If you want the user to save the code in a file before executing it, put # '\n", + " \"filename: inside the code block as the first line. Don't include \"\n", + " 'multiple code blocks in one response. Do not ask users to copy and paste the '\n", + " \"result. Instead, use 'print' function for the output when relevant. Check \"\n", + " 'the execution result returned by the user.\\n'\n", + " 'If the result indicates there is an error, fix the error and output the code '\n", + " 'again. Suggest the full code instead of partial code or code changes. If the '\n", + " \"error can't be fixed or if the task is not solved even after the code is \"\n", + " 'executed successfully, analyze the problem, revisit your assumption, collect '\n", + " 'additional info you need, and think of a different approach to try.\\n'\n", + " 'When you find an answer, verify the answer carefully. Include verifiable '\n", + " 'evidence in your response if possible.\\n'\n", + " 'Reply \"TERMINATE\" in the end when everything is done.\\n'\n", + " ' ')\n" + ] + } + ], + "source": [ + "pprint.pprint(AssistantAgent.DEFAULT_SYSTEM_MESSAGE)" + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('A helpful and general-purpose AI assistant that has strong language skills, '\n", + " 'Python skills, and Linux command line skills.')\n" + ] + } + ], + "source": [ + "pprint.pprint(AssistantAgent.DEFAULT_DESCRIPTION)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Best Practice\n", + "As a best practice, if you are not using the command line code executors, \n", + "we recommend using `ConversableAgent` directly and specify the\n", + "`system_message` and `description` explicitly instead\n", + "of `UserProxyAgent` and `AssistantAgent`\n", + "as they are tuned for the legacy code executor." ] }, { @@ -241,7 +1159,12 @@ "source": [ "## Summary\n", "\n", - "[Talk about tool executor and reference a separate chapter.]" + "In this chapter, we introduced code executors: command line executors and\n", + "Jupyter executors. \n", + "We also showed how to use code executor in a conversation between\n", + "a code writer agent and a code executor agent.\n", + "In [the next chapter](./conversation-patterns), we will introduce conversation patterns, and show\n", + "how to use the result of a conversation." ] } ], From 4d4b0ba59765004ab43def326ab9a1ed747ce204 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Tue, 27 Feb 2024 00:34:49 -0800 Subject: [PATCH 21/43] update convsersation patterns --- ...-in-the-loop.png => human-in-the-loop.png} | Bin .../conversation-patterns.ipynb | 275 ++++++++++++++---- 2 files changed, 224 insertions(+), 51 deletions(-) rename website/docs/getting-started/assets/{Human-in-the-loop.png => human-in-the-loop.png} (100%) diff --git a/website/docs/getting-started/assets/Human-in-the-loop.png b/website/docs/getting-started/assets/human-in-the-loop.png similarity index 100% rename from website/docs/getting-started/assets/Human-in-the-loop.png rename to website/docs/getting-started/assets/human-in-the-loop.png diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index 285a567641be..425b1ec18864 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -27,7 +27,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -53,13 +53,13 @@ "Besides the conversation itself, there is also a summarizer that can be used\n", "to produce a summary of the conversation. The summarizer is optional and by\n", "default the summary is the last message of the conversation (i.e., `last_msg`).\n", - "This can be changed by setting the `summarizer` parameter of the `initiate_chat`.\n", + "This can be changed by setting the `summary_method` parameter of the `initiate_chat`.\n", "The example below shows how to use an LLM-based summarizer." ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -85,7 +85,13 @@ "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ "\u001b[33mAgent A\u001b[0m (to Agent B):\n", "\n", "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", @@ -126,8 +132,8 @@ "chat_result = agent_a.initiate_chat(\n", " agent_b,\n", " message=\"What is triangle inequality?\",\n", - " max_turns=2,\n", " summary_method=\"reflection_with_llm\",\n", + " max_turns=2,\n", ")" ] }, @@ -142,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 16, "metadata": {}, "outputs": [ { @@ -238,10 +244,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Sequential Two-Agent Chats\n", + "## Sequential Chats\n", "\n", "The name of this pattern is self-explanatory -- it is a sequence of\n", - "two-agent chats, chained together by a mechanism called *carryover*,\n", + "chats between two agents, chained together by a mechanism called *carryover*,\n", "which brings the summary of the previous chat to the initial context\n", "of the next chat.\n", "\n", @@ -272,7 +278,60 @@ "operator agents. One agent \n", "(called the \"Number_Agent\") is responsible for coming up with a number,\n", "and other agents are responsible for performing a specific arithmetic\n", - "operation on the number, e.g., add 1, multiply by 2, etc..\n", + "operation on the number, e.g., add 1, multiply by 2, etc.." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "# The Number Agent that always returns the same numbers.\n", + "number_agent = ConversableAgent(\n", + " name=\"Number_Agent\",\n", + " system_message=\"You return me the numbers I give you, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "# The Adder Agent that adds 1 to each number it receives.\n", + "adder_agent = ConversableAgent(\n", + " name=\"Adder_Agent\",\n", + " system_message=\"You add 1 to each number I give you and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "# The Multiplier Agent that multiplies each number it receives by 2.\n", + "multiplier_agent = ConversableAgent(\n", + " name=\"Multiplier_Agent\",\n", + " system_message=\"You multiply each number I give you by 2 and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "# The Subtracter Agent that subtracts 1 from each number it receives.\n", + "subtracter_agent = ConversableAgent(\n", + " name=\"Subtracter_Agent\",\n", + " system_message=\"You subtract 1 from each number I give you and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "# The Divider Agent that divides each number it receives by 2.\n", + "divider_agent = ConversableAgent(\n", + " name=\"Divider_Agent\",\n", + " system_message=\"You divide each number I give you by 2 and return me the new numbers, one number each line.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "The Number Agent chats with the first operator agent, then the second\n", "operator agent, and so on.\n", "In the end we will have the result of the arithmetic operations." @@ -433,46 +492,6 @@ } ], "source": [ - "# The Number Agent that always returns the same numbers.\n", - "number_agent = ConversableAgent(\n", - " name=\"Number_Agent\",\n", - " system_message=\"You return me the numbers I give you, one number each line.\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " human_input_mode=\"NEVER\",\n", - ")\n", - "\n", - "# The Adder Agent that adds 1 to each number it receives.\n", - "adder_agent = ConversableAgent(\n", - " name=\"Adder_Agent\",\n", - " system_message=\"You add 1 to each number I give you and return me the new numbers, one number each line.\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " human_input_mode=\"NEVER\",\n", - ")\n", - "\n", - "# The Multiplier Agent that multiplies each number it receives by 2.\n", - "multiplier_agent = ConversableAgent(\n", - " name=\"Multiplier_Agent\",\n", - " system_message=\"You multiply each number I give you by 2 and return me the new numbers, one number each line.\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " human_input_mode=\"NEVER\",\n", - ")\n", - "\n", - "# The Subtracter Agent that subtracts 1 from each number it receives.\n", - "subtracter_agent = ConversableAgent(\n", - " name=\"Subtracter_Agent\",\n", - " system_message=\"You subtract 1 from each number I give you and return me the new numbers, one number each line.\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " human_input_mode=\"NEVER\",\n", - ")\n", - "\n", - "# The Divider Agent that divides each number it receives by 2.\n", - "divider_agent = ConversableAgent(\n", - " name=\"Divider_Agent\",\n", - " system_message=\"You divide each number I give you by 2 and return me the new numbers, one number each line.\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " human_input_mode=\"NEVER\",\n", - ")\n", - "\n", "# Start a sequence of two-agent chats.\n", "# Each element in the list is a dictionary that specifies the arguments\n", "# for the initiate_chat method.\n", @@ -620,7 +639,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -785,7 +804,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -806,6 +825,160 @@ "group chat starts." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Group Chat in a Sequential Chat\n", + "\n", + "Group chat can also be used as a part of a sequential chat.\n", + "In this case, the Group Chat Manager is treated as a regular agent\n", + "in the sequence of two-agent chats." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "My number is 3, I want to turn it into 13.\n", + "\n", + "With the following carryover: \n", + "\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "My number is 3, I want to turn it into 13.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/ekzhu/autogen/autogen/agentchat/chat.py:46: UserWarning: Repetitive recipients detected: The chat history will be cleared by default if a recipient appears more than once. To retain the chat history, please set 'clear_history=False' in the configuration of the repeating agent.\n", + " warnings.warn(\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "6\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "7\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "14\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "13\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "Your number is 13.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "Turn this number to 32.\n", + "\n", + "With the following carryover: \n", + "Your number is 13.\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "Turn this number to 32.\n", + "Context: \n", + "Your number is 13.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "26\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "14\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "28\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "15\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "30\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "# Let's use the group chat with introduction messages created above.\n", + "group_chat_manager_with_intros = GroupChatManager(\n", + " groupchat=group_chat_with_introductions,\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + ")\n", + "\n", + "# Start a sequence of two-agent chats between the number agent and\n", + "# the group chat manager.\n", + "chat_result = number_agent.initiate_chats(\n", + " [\n", + " {\n", + " \"recipient\": group_chat_manager_with_intros,\n", + " \"message\": \"My number is 3, I want to turn it into 13.\",\n", + " },\n", + " {\n", + " \"recipient\": group_chat_manager_with_intros,\n", + " \"message\": \"Turn this number to 32.\",\n", + " },\n", + " ]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the above example, the Group Chat Manager runs the group chat two times.\n", + "In the first time the number 3 becomes 13, and the last message of this group chat\n", + "is being used as the carryover for the next group chat, which starts from 13.\n", + "\n", + "You can also see from the warning message that the Group Chat Manager's\n", + "history is being cleared after the first group chat, which is the default.\n", + "To keep the history of the Group Chat Manager, \n", + "you can set the `clear_history=False` for the first chat." + ] + }, { "cell_type": "markdown", "metadata": {}, From 82fe00445910b7d7f86bad538f79304bd1ad77ff Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Wed, 28 Feb 2024 23:43:58 -0800 Subject: [PATCH 22/43] update code executor section to use legacy code executor --- .../assets/code-executor-docker.png | Bin 0 -> 45857 bytes .../assets/code-executor-no-docker.png | Bin 0 -> 41216 bytes .../assets/docker-command-line-executor.png | Bin 49280 -> 0 bytes .../local-command-line-code-executor.png | Bin 44112 -> 0 bytes .../assets/local-jupyter-code-executor.png | Bin 66072 -> 0 bytes .../docs/getting-started/code-executors.ipynb | 961 +++++------------- 6 files changed, 264 insertions(+), 697 deletions(-) create mode 100644 website/docs/getting-started/assets/code-executor-docker.png create mode 100644 website/docs/getting-started/assets/code-executor-no-docker.png delete mode 100644 website/docs/getting-started/assets/docker-command-line-executor.png delete mode 100644 website/docs/getting-started/assets/local-command-line-code-executor.png delete mode 100644 website/docs/getting-started/assets/local-jupyter-code-executor.png diff --git a/website/docs/getting-started/assets/code-executor-docker.png b/website/docs/getting-started/assets/code-executor-docker.png new file mode 100644 index 0000000000000000000000000000000000000000..0c86db913eb808c3ba0c7d27ffd17a08d8d288c0 GIT binary patch literal 45857 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 z zrPlWf&3Tx4F<%vYu$B*J`a0NNe=5I+TL4N*D%8{@YTN1$d6wJ^XcWmW2JuRX`K+6+ zjWH{3q2g!thfTDWGnEm`?SZt*->LmboGU6S)Fv- zPmWg_r?~(Hz=SGQ>y+oez4J6`(e*ej6L!)w~!-U z8vS&__JsmhscBa7*F~$ZT^f6{h2`ZAD&^>DTf<~dmDNaE^UaClWJYZjT1JPh_VV>2 z+Qw-ZIip5ry#0p5-bn19%-Peh=z<Fvk3BS5$@g(e7n?6^DBSGH7lt#^T5P z?EYi8FecDP%d^}(yPow;Ls898MpSGt7SoF&f4wNDz9&S5UHO*pVUfY*W-!D|>+#xl zfuxoB*x$--A7K*1N0PbYT49xat9@;+)X_t)e*a61r}YyykVSME|MdaUOFrK$>>IGR*T+5Rdo* z>fz)t2kbT#)tNHs+9fSQ1NKlr#imr&D#~6BY>qJbGK9#J&wI;W(l&pjVOd*gJm}0j zxf;GTJX46uQX6i)kbGeYuT4Rcp%=>yXQ(|gQKuHHJ$T7=Q~vB^E5*`qPRYgRGy{8* zCIb%(mpn>)pG0HhB{qWml{m3g8h$h1;<2*ICQl<1pa;K`U+dvj0`KM8#4M>hzjn+N$ zBi8ZQhHchA!D;%)#u6;qgwpJS1k4ng%)V{p5`rO-8Tv@i%ZU0h(Gfnu2E-5Emh{9P zX&Nv+XpkZw79FRNVcP#e&PbwhPLyAGCQu73FmvVs_dxPSm(9YL3JZyu(k~!j14)Hn zt>a>a!`W^5dfay!f7bgFYNMwzO$4pdpOt6uP5lhx%h$eNN1;sHV%@Vg6XWy{%wjHB ztPZ4*u~xZL8)rlqzo}yMd-ZFFPG3uL~*>QB_7qaLoA{;C~a7}n505$?QwMy zlApC7=EO?QqF=_{(}<`Wsx>}jvgYZC5$StrJxn4RJjuo>>%m-$`N*BGXvXny-pyS= z_i8ry*IFh^0=l^$+lXj79dzzUVM%4FM_K*6woCW*DpFg5o_**sMyf$DUQJ%vs`Crx z(WKW%+T%WCA=Yy3C;7b^DtN&_8vWPAvoJe6gM0(<5CBaVyQ=N;1{L>w-;iL$9VL$) zOYshMfu0@0xQPO+vf>@~?!7u1-+j~(BTn@rE?Y5 z$ZtA((TgGR3)(8fN?8VU=J*m)-r4Br=@8sH$prja{~=_aPn&uTwoyOU)mw z=^amc9xy3^N7Cl~zW36q-G2LZ+OGlb6;9sRt81=Wv zGPDh;a+pHng@$$P5op(G2mXON&S_Qy+Q!wgWNQK%Uzx53ey4hrrm(Vq*gH$OT_2XB zg8OlXXF!Y_TVHHV$;dk=CqF#7J;ku|9bq`g{j-HiO;n^~#`~hAjj%zjGB&xJ&v^`b z17wA^$5qJCwIs3l519Vx23lX|k3^EB|- zR#+?~(4`Gbk;yE~PV_+Jgf|$tX}E)3D=I86#2Dm*d0LM}I3R@zNk}X6bDBA9Wjm_Q z{$7c5iw!}$`a7V%q=)yFDQy zSa1Z9HmA9iG#b9rf8cBzHu<&Hke?(m^IB&&6pL^O$sz9}*V<;NdnUW};6!7Q`ZDGl zA+E$nJji8E*7OO;n|z1l-nWP3@kS#wY%%yo|O^v zG5jig<~GJp9PGA9f%N%2;jK3kNU(&q5Y)#(biPZPnX0cbria?(9`)UMW4cFoB1#Bo2z{>)FJrnkD@Y(o zg7$-X>pqe~{1I@lYzF!|wS7lxq$$&hQaNM%RedpSW8|2JxEUC4$Br*pwAQW20Rvx*QV`D01Eje0nBXQxN)Y^e4$fjo$nlPK&Q@2=m_qa+@x@HbflZ z&5iqexRD;tO<)B?zDJQFJJ8_068$cHN(eJB!)m+oL5alJ)^*7nzCnf497+<0!SE*Q z3XZrH#7(S@9yU`Pp{^}!d*7FHEU3<#l1%Lu{Px+`9_23nV%+h$;j4fttxP2IPtGQT zWljF9t9CVmqCIXLt)k;5Z;T|>_J+{W|HR~uvsBm8?*2NQ`o`MJyyCfwYY9nGsx@e} zb8coZ|5eymmyNGJv}kB(Rrh&t=)L#H2Xw&h1T}`=3$`afvALpC$&lLl7v*H^I zlZ3>XoHm17&4x~9>bSe+`4D6z752XAIo7PG7yW9OUi$9F0~%4*Xu3GQHKOH&|91bs zpZ!20plXgnFA)0H{oj8LP+0>Fay39m`@6W%pI_ENIjw#WStfk+I6s2FHxM0x95%_3yf;|qqJP16a}4sbCxiRqUAgM3czUTRzVNE;(6hQd zK9OCy7)P_DM@xz?DJ%Q7)7vAM`m2P_UaX~?@Uyn3u!&C$9G~8toUZ+2koEcU-(}d_ z9aebdXVc>R*_QUK%CXRSD_=cKMDqA98?*RT%w~}5kw3t@dRMIf7Oob9^@NU-tQja| z{QlmV78L|{?%VWa-nh+HkNe{xyYUfM^w(&lXv-wb`m$OsyW0#qit_RmAy=#B%2Krb z4rF*(Pi)UeZcZMsxsBSZ$<>jv9;|+J)Kqiv!$>Z z+__Ft*Dm5-*E=bEqa8i4Fm9f0l$GnprTT#+*FHmxZE*yJJ?y`Lw_R$y%b8ViGMUwe%O}~{U7aF zW){C@zK1_m$!;u&q4gK5I$hU_p&z;!vMiYKX9ztU%l_`6I~SYcvW(uD7uOyBWgPk_ z?SC(Q|8K{8%A{A2(CKM7)?&q|+mPO?0v~B}%IqtxN&n{u-w+tzz>v0`RFhauW?@$F z#+}>3BStfO`=p)8TZNDR+v(x_=@?(IF#}*eHPi8EK7qG8DxUraFht2 zPQaO(eNlg7z!GN6f+@K1%#ZF9w==7-G%g87Dchhy!$PVRm|B4p^v1D2kz@8B{}l{q z41%}67|?EZ_ANZl;a+mLB6mDy?|m}qa8sk)xIHz}0xws!?%5oV*&#odUMW{1aktlcY!^+lYt}bn8idN^bK_|OmLgJZ@q6BtC z{MOsn$_~{5$M%?zOsyc*7@vWp{e;;iF2raGu!Z^~*=GO6En@Fei0kJfSDy4y0@YNgt?^lDg<1Lap>)jaG z)8xAeVaaIS8O#4P>|#!nuZ*@^Z@lp~rjCw<_T$b(ApkS^t|czNAPAxvKKOnZkdGRG zPiDn_celi1-|96#FY<8hRkWt6pE$-ctER#i#c_!r5o-Ez%Cf(kl_)24_?v zR(SrOeBy0K#y@OTn_<%apTo*tK=@p1194vkwwkb_BS1jg$=fEzCG5JKL`3D628>OCrYWPJ<(2&Caaed|oiVApdR1!D;%HsSx4h$H4vp-?v zl1cdAJOt|xE-+owG?nUqvls+0o#&r4Z1EWV?>Qs9f|camFi~-xt+p)x^!taqNtO8| z!|iPd9(x}=k-M%}SPYm=iI!+Lo>=}D8VLRL5j?n-2OCU4a%=YVNC3vcnVFgK)!M4_ z6((W2zp?P~>BvNaN35^^Dh2&JPfuY0t@Cu?6b3%YvdFbH@z({S(7LTL{f3>*fdfBo;r zhoK+8-of46*n)z6h8a0z{uRLBv&2y21b2?R!;qg)oW^5)7Z2J0tlT8{pjO3k67NjC zL`m_YrhF>Ge^>fTASB*(KuESpQ_{@|g@CIA8M(=wWcq(x(!EK+=$oFId6DPI!aV3I zE$;FBM;YL6Vbcjj-ZUg_njCQ&>Qz7eXRAU}mna0M0#8&WY4iWADGZRRXK!KPkcs<0 zd+*zmb{yDkGmSmX3c#wPrWON^=5rTxR8$}B?CmL7qlr{%(tkxk==h1j#F}PyNIjiu z4;E21jlXoNa8d027Rk78RM6G^R;XSjj`;5TJd!4l7Ps3);mK4sP}~$c zx&eL&;-KTXR^HE0q2g;U_%BWTO}8tkx&y^{X5hDWwU@yBTYT#W|9HNVR_yA_Nr<+` zxsuCnQB9`(=1{&Y@K*q~$|&W)24WK4_Wu-_ue`xo;i+;v9lY|R;iy>jyd9i2wxWfF z>DY1H8OuZXSo-F_D-2-3A>bZs9tjpQ5EhUrpS8jh4X8X18wW~S^zojP(_|L_p402J z=#j(I47_e*!A!HSRIfb~xRGDDN~ds9d{q)2V5D^W1g2P;4&zEb9D0_i(E@K;zz_&( z_#O$As9xZ)MT1^%pJmNFCFuR;(pBl^4uz%l_DBl-Jjfb)g`@h{_CPS7H#*C865=FKV21zMPA~M!c$`&z%h8axOltQE=WXTeV zY-5)YAwn9mCK(Eo^*N`y@4Nr||BL6v6OaI}0vYh=A2&ps8JJ%} z+E*PK$$Yyf7#(9lZ?$$nM$K!W|tLB~Z{1k!EG<_tyfmlEPG191?BI%Iy}p+koz?q4oU zkUDv9U(voH@F_)E0K-}WF}UIIsU*9QTn=I`v1@zr$%3k!;3@0Y*XQHoI{>o|41C4k4Z6OaUEW=w zbKSgz+4j=B;aT<=E%4Bil1I!Gl01%Ej<`nc*Lzs*KAhd8G#*p)7g1@qPhVzd(q)0xfbIcrls z1%y6^F!NRN3v}*-GHfc2v1pIQqd=0L8XQ5_ALJmtSZPs5F1)_3Nj;r(Ehg#x@ZaXZ zeGo#qPl_G@blb^0drz_Dwonto2Yy6|dK9~=D@a(Bx}2KqA+>F;)@{3wp0%$5c+1tv zyOw$EXij)fatBKWRQ+g0@gY?X2l(oUPy7;m4sU(IPCHG}=&jKTSnIg%0#2H7qF1|znH9CJ58WUII5%63!QP2hX zrm-7a-zAh4-08G2`S`F35-OrXN!09y1Je-bjGO4yLgJ>88sNe)IxdI{;q|z-=S<$X zb0S7pn2D$XtT5|GI5Gn^dI5h<@i>f!v~NXgx$n$@7x(2OEsfVaM6 z93l>98t@9Pgyx3u35C_ZIwT$+eT(m}LE(vD!jLAU9KjSQ4S`HIbY<=JRi-_cT$Lfo znMEmI?ACVPPbq64pVwDqWji>2WwAn{K}6CY$SoY$67sIX+enCtp1&vpF%skCi>vn~ z3ujb^JNADc6 zwDAt-PiX7Zxc0^TtV%h0CrkNkhy#gTOd`9PE3V7#-Us{gZL-*(gDP&9gbzCKE;oq$` ztl@5N3RFsEv^xFU;7193Ta~%ALYlQzo0c8D?jIpBK}C-kF_KyJWi7u@+g~AH{(bwI zWdi;7`<)Ct8$5w0soOX3Tu|2zQrLSz+t&8)uUa%guvxwlQGM;2oGmX_P+>i#RHR#W z^qSwl#wmd<>J%ZsFFH1k^S>jCiR&DL@a-?U6}^SdN=Y|w(C72`%X=Y!I=;C~iO^Q$ zbt51aqW+=MCnr9gx$2*Q0x&kS0C4c~he*;>_6f0&g_>3KT3a9eWH09Zx6hcFb)*Kn zeeACcSl>f|K!L3@Kc8nM@y|mfG=l(`^#+T>2?wJ!0;baC`f|VJ8UxsUbl|=>e>)-f*xGZT@BuK1&llFNxqT#6 zgKIty*$fPrN^!lgH1V2YG%M$_;i+Oyj*efQA3UROD6a2PbqsVY*4YGBo_X`hK#$~a zbOyTgM!w3ZQyy%&o5qS)hRdHh;+q962dkEWO_X0K~AmFv7ZLas(s#8K!QgZC%@Ms`DpN~ucI~R z;XAssP73E*zsTc14!=+2UY15IHZLlWJNCB=ca-UyYHAutgi+JO7(NQ+l9BTz z7n4&|G!e+KqSfUcPYC;Fa-Du1w8xM zCh;6GIrvA9!Q?iO6`E+|)k*~9?rR1IkBOp{VPylX-vamIE>%p!uV4g-x8%t|sKcIh zI24syvfPBaVi&Zi9{^m?KFR?+PH`?prgy&Kd~CTrP2khD0o+ovu-!i6Bh{Hh3?uWc z=4u*$KRjDy#EZBj@KF6)d)M)#W|=09>b44}b)ddAAGWx@P$yg#8&V5Qz$smu!YU1w z2RN2-fei|uACceRHg90iozfT1sq;j{DAe=Kc*n3QQuquBFojwd);x zuas24h87<=2Hypic<3q00_W5EOz!wuz-%WPH(f#l>)K+O>#0>~_6Tqt+VAk7p(Vor zd#)1h=?$bdH-FyLSg7vZdL0E=9OMMUoOd=UUZ9P0V;;hnUVijTt+61V_{fV7=!__H zrXd^Qub38&Kr`T7(6lQ@Qb&Tmcm519=ey5rtVE~GeUa0B0Q$>!f#5@%@_5rQVtfs7A~##YqKrpXRcfQ>gK?X=EGYd zQ-+$fTUaQN-Frqz$~C;RH;ld9f5CS7%QG#ych9^VbN-wMpx>?gHwT8V#XJk)Em~Zt z+m@&Cs~rx;jK_<^+)-&vqjsKF03+r$&wA?&3TCeM=nD%DzJ+BOP=UPrE#P0|;r&Mt z)}5Hjo`y5vSoyivZeX!4j=l!Qys#oV9Ka>VBP2ZqoW@xE8QAx3{2mi z8n{%*%KF0|z}{1x?C+z8EJC>}>K7m=AYLF$R6AHX!9P3vvWR*(R(C0VJ3B;9q{=F8#Di1vp2k9bGgE68H^QxKmXLWCPo)}HtC zzpuK87DNNOQj3dTGuS_>4ebUb?8D)FNDFt#^+BHDg<2BQb4gj8W|Lfg6hVe+vuP9XD z`4?_k&l9U@4LnQ0UC!G!y&h_2Q-8|JK_w+!$qso5GR7B)CN*r-M0FPdMCiOGm+nZ- z%bKcmn!N}kCgin;y6Pybb)k5ncKtLA)0=LHS&5uxZUC67_X#ER6f~WCLqW38vm_x8 zYB#~k0X5Mgr}q(8Xl?%Q3#=H@82v{aBP2rT4uS*f0CdZ>tE(NV_4ug1oVQJBoVYmD z$n`c>C?F0jF4nFspnf!&1vDLR9SHMFh~UXqd#ch*C$2fPIWmVnT4(p<84o~5G&VF; z`*~C>QhuVOc0mDvaG1NdLEIK!7HjUd#wm;y&YkGUE>c6hJMmE4VRqJ+*H_I(Yoq{m z7*b6FLCE*|7k(~HemNW|dOWC>rq&cI(;n!SY{aIbPi9u(!3A%ewZvsTzehQLbI||E zTw`Zp&VHH+uj9u>aaKMum;J5Vo`b~>Uo;F}X7+Avet)=~XngdiUa*8VLh_q<1_U@9 z{6W&xDlUg(ZBQa2=z?m%OhzQz;%fznpXDV;0$P7nbbA{jLl|t`<{qC14c?2YGHv6q8AbEvx!&@E|;kq-1A|$zm0@kq$zds1!%vU_3hUezjGc(*~Exz@3Z zJev*i&7g&@`5;F{{jJvWJ=59i1PPywi=SIXu#joe9I?zveH20bLdy(K6&SInG{(;5 z>B{@!5CqPW_{#)!z6A|Xl2emfWDA;l2C6GX%I>3o3PXiG4IQL(N^MQwT4vo=`99To zhE>CxHL7)@O(1Mr3Su_V+;WG__zEaq%1f^0^7VsyTtxes3Wf1LL}PHYJ)p{{Nr5g9 z#vP2URy$e*NzlH>kJoU3mpt8RWkP$x`RNoSE3B=_f2ZDl4j0KO36<->i#{_Q6AaH! ze}eAYJSKK1T_99+2wO$7A*R-vGWk4_X<9|4yNqqSzP>G$=e|)iD{A9f?G=ZJ;R%gX z_lhlZkPt!)84SZST}q-u#%~C^V`s*1?kdz6-My-MZhT5YjP~*Cw+&50uG~sg2a5`b z$NHLJh141sD;xY3vASM9vEQ*His=pYe2jo1EtnK&>59ndxs!igU z5X@p`goK3VC1y4$vjlX%pb-8HcRr{4*hvvZU%Xh9gz-iC8^66Lhf|5jMUR+a^z<(1I^g|On2nI{8qOea{a;3 znGCxg4x_q(qJZ7UPUHT!eydQPlPF* zZrb#skyjeJm`r}r!u#l_&8=A0;1*XVTcs%6sh;aa>Df8Nr^KY4DvGr1F%GVXw<;tU z<_X=d@eC`blcIMJ9;yJ*Hi}?Tv=S(Z-rk9e%xfEq4{>`OUNQ>nu{_6(fd(~B!}o9B zTH}ofq;1Cyp2eT;e5k)sq)o%lG<#()7Ym6;YKsFK(3FquTVRfUCGi zk5kT3CP|A-lhdXYe(*rOHkX@@khzX+(yJ@fZy2A!<{gXCg1@34ZFS{jL8yF#_t9E;y;8y`1z*@?Qf)DJWH2n~Vzzt=9-+kN-)_%BwT+{z5xe!3;5sC2%ik4N1U>ZC4F^*lpPa%ap%xqPsN90c;8H=f@*qXvDr~ zRg1pai}2pAuPvgU0mov$kKXT|Nb)UGu`ISs+5rC#Ae@A17rK7v-D zJrz`JsK^d9K_dlIVaQ-vdtDiE7Px!iyWX)W-JBd^MfYS!10?>{VoJCHETYdoE<#j` z{PFP<9-@77=k3zBd4+b7r|nyGOLb5hCqq|(vyfk5zTvqW%8E3U^YzAH-BA->qwotA zT<`s&`64pH<;%zRiaPdPnUP^bq}xzfqnXR~74dhL?KL(&5k#8`e{Oiy(AbXi;QDwM z_HIpkHGb)${oqIs7zsk1WYOC%1TiEJ-`Mypu_CQdQ9^ntu)a(JchT_Ulr)=~huh+Z z?i34;nq`an@vf09Qqv>7w9Iq?$TGzz-}APY6U>zb^A_(Gz95G12%@Pem6~bL0j5E5 zkQ-&-oj z(q6#5`*&3Px%5oriIrb(@5YIbOs5fQO?wpkr_2z25L4!bBKaJNYjamC;%FVIuylM= z33jAGhLhLL6sBUQid4C~_Bzx_oQ7=Zcr36WzD{-zBLgP6@TSml0oD-|5(n$+6EPPHfA#HUrKVhR z0Eapi-bD*cna)xXo1H>H>YBh^W9Mh3o4Ne8kg_Q+4bKlq`zjT9LyChSGO}Lo? zS^R#E`r_CiJLzZx6Feun96rkQR-S}m+c$WrNPY;LCXX#a-SZY}*i}po9NV7~@_2Ia zVCSdazT0uF-!(zz&K~p~fyK;yJ?whZAcow3I5LH9G|gI_36DyDl0%$^PofmWo25uX zq+QiFfat^$y3q0llA0lxH>iId!b!Mwb+6wdU95q7YNp?JuWDxsq+6>AsXHS{)bWOH zhIQ-XyOR~2zK*Fwmb>HEqt6soIia-CEn_0et?$MWc-%)34-1+WH#&Y0SLzVNq9@x_ zsJ4kJM{gmVc;R)?3Oh&^$*_TAb`m2@6j7){i~?7TrkBgmn;i+y4nJ3wX?6eQC!th} zjUT#tDznh}NRh3JC6D{pUT+EPd1SEQgnG0x`Z)2lair0nirPSefSFl}G^Acz8Z*`M z`N{(q9;AkxFOad%6X?G+&*q>4e+$1C7tuOTu4>KSm^DrPEtNg}G*-MzLho>|?EbSByjkO4a@1SOGC9Kz8Wx>{b1 zq4W_@a62s%rN9+@*fD*A<%7M~8A1skg!HbO*dB z8qSs2gXVq(tB$n4mc+t4O)!#rB{uGizKtFo3m|d!KXAAuaOfo}9O-z^JCi`imEs#0 z)3edO1NQijWh>|v9_XzWBFD-yF%{ujUL-Uke?g6RqdwT@_UQo8hM zmh_#38A3hlmyTP;f{p{dKYZba+~iF0N3snLGuDDloa0(f{Jy!~PDN{Z}}ciuXBL}5Kt*O}7Z z;J%_)a!>knTOjy!;IQSjJBe05QFjq>)-=?8I`_T^OwVJ9sd+r_UWjz4u!zIXi>$;_ zlwYTF=d!)HVtIv#&M^*gmauts46|YzyuyV@2_FoP6l&d9XaEy7gLqT)JJ0hREOQz<;M(~p?R3uM zmAWc-_|0^&=p)66eJC@&q8J)8{&u|x(iY!??n_7-+S$mPT7|d{F&V)G(ds!*K&p0j zrz?Q#yYzfB{KTkhMJWJofTQKwlocbus(qBD%?oUS0D{f25UqX(5!N|(Qw4g*3Khic zu#+|uC^=KpBR}^m&U*@Q7Wdig81Z2$hMB~LiW3?=?QeVX22(_+GelQ=NClLYjMvMz z2RL<$U^PrsG>i1ntib-Yw)<|5ao9&p)4Kl#w;RZvUNP`~6zLkXJcjNeupbRI~$NR7K+#od3I}U!PfW zIV-=u_U}>Q?}AZTdOtt(-z}k-Wf++1yMBASzb{nH==+ebYW1rt*q@Ie+-0zJvu?j@ z`2U$cTd?2EolPr<`Fl!EfGK(At2`+D_l1f8akPBkw8ig+6~EtaF9q(>;?=INzZDmL zr=tm$Al4ozC@u3J0|DlqAKax34z?2h_k|c*W;IcF?*0)u`1SsCH^E*0-*o<-OU76E df8%u0w%6YvjawW8rI^5vq5f&TLacq*{{RNPX$k-U literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/assets/code-executor-no-docker.png b/website/docs/getting-started/assets/code-executor-no-docker.png new file mode 100644 index 0000000000000000000000000000000000000000..a917052d7ff53e2f2e56ba21cce21bd4c14a2e93 GIT binary patch literal 41216 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 KS(KT3#Qz853Z=^c literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/assets/docker-command-line-executor.png b/website/docs/getting-started/assets/docker-command-line-executor.png deleted file mode 100644 index 767ef3af606dff6a79fb07cdafc4373bd1043f3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49280 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 YgNZ--tL!NpngIMpe4vH$=8 diff --git a/website/docs/getting-started/assets/local-command-line-code-executor.png b/website/docs/getting-started/assets/local-command-line-code-executor.png deleted file mode 100644 index bf3183a335997dcef5c1ddf01a847d3e3c0de87e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44112 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 bQ1}Ts;jr}kT(e<63HYU>si#q@W)tyWw0;ky diff --git a/website/docs/getting-started/assets/local-jupyter-code-executor.png b/website/docs/getting-started/assets/local-jupyter-code-executor.png deleted file mode 100644 index 38ae9998e4ca8dfe8cd35e3e3e18763b34ca7156..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66072 zcmeFZby$>b^9Bsd5=(c-(%s$NAl;n`h;()(;2fA|(iHAM8OX<~#@=?@J#- zYthzDNDDisf=)c)U}CYdv>bif1y6av*gFV zq^Nt90(}bog^=tSpKlE*OfUqRpxz z)#wo{ZKq}LuMihb%T=mPAa(}3@Wf9=0 zN$dK;AHGHm)zu>!nnY6diHL-*P}{+yD#a=r7lcNk#uw8RLZQ~wmN1nVYp7-6+sI;Q znWvA>AqUy&{pyy)H%wm9_wDaRFC^PK+I|lH{50OalkYK!p{h%Rj|+wW_FC<_oT)Bh<5 zi}D?M3LNBLuh5rp8FXamN3cJx16PBQ{*QySi|WBp5@IS<`*mv zn6QO7rhfFl@7FUA*vZW;q%QCe6YQn|%(#{knN{}RzPIKCxMbix*ihn+CtCofylIde zk@3f}j`;z%>cHA+3*g2W|ER|FqH!XJC>HefB!C~vLjFeRhOb?R-$6dmH$8WJjhsX z48AK;nl0J02Zlo&6`$y~UGx34j#B?e z-?q>&o1vtU)sV*@4Uvdwge@I|Xh)D`*M5xC%O#hw%GxeR`sj-z;5RIdQNwtrWg{O@ z_Elnb`2W~Zk1BY3vfwA*n*<_GRMQ_!4vg58lpGiPv+bkS>6hfPS5MlOqK@7_9s9qH zgX%ycqoPKrLhh&;pX9Z?qkUX*>E3Iz9f8Snn6;%>nWHF#3abO&H${lU1ZrLlZs&8H zVKQp_+5Kp~{VA7m>4S4x;LRz-^wR(GFsF*m$6@WAfcK%HQKx?sxkRAhXgV`32AM$m zigeMQ$5|(-k_5Bs{jU%f1^gMLH{%u_W)H-4C~wRc7t_ zDw%A|^A;hU`J(Bp1{`U03xs=5KfR*Yki2i4sWvgNkS#=Pr1v>mK0RvxX}lNmaPu@r z!1|Hv@ES;7$5Qj zj+DLkmRmhePscc&=pm@OAL9v{iuo;j;HrnS2V9v04yv0suTM6n-|4Y3n|HL_0sqgq zJ~SNOEelC&J>P$yS=y|)xVSX<{?=HlPmCoX1%b(#v-2EwcfFAeW7MFm(5-+;jYQBi zIL&jYa!coE$|xifQy+>Cb_WtGjo(W z?!fC~d^4Kr+=#%K%u;Ab&vVNEJKC<%;0MH@|T9+W+)1 zS@OZ~@^FDx-2Z%Pjwo-n&8zbKXvKt;v~Igc1`$om*0wb8cJGaTPmFRJ!w8IC)%I-r zlXkT+f3rgh)@f)l5-TPh1A~Hy_u<=&LLzftX_GXCm!$NuUGtp*J`~vSdzKUd-{TnT zoFM5WrR>_Jv4Q8G6*J|XzSdcR(6HHr>XwC2(>V+i3k^xa`oJHNRT#EOdT9`inqRz5 zXE)JD{wNgk(4ovxr!9@sPfmXveQMAZ=ohqNn5DT>BpYK)C~SBjad#~1d=cKnnjV!| zsu_Gsvh1Dx)=J--@w&K=?MPWI#K-SMJ|&A~go?}2$B!8vm13BQ$CaX zqD}dzdZX;8O`D#+x zNFdkCeSD0UGi_iP3NplIyh#o@9bH{b^u`i1t_{{{EVclX@PE=(dVmX7D zNq5~Nb6gTm)nfnY)d=sTSlTVRAM)RuE7gN1)eQ%nd2qW}g_1~i;Ij;J#E2P%sjz0% zI9z&9s(!F!j~JcjZBbzFH0Vn7POrw)s6Ef>MN&H-@$!$Q=32nf6j;$vY&Bb4tyGm| zZpy{RGu-ii-O9Dt?_PeeWM?}61R&lDSVj4BJdCqG@@uWzKPd*(6Q!pbGah|=i_N0Tw7rp!@90(o4pCxBm_ZVqa%faPj#Jqe z;riZXkcK5tgM_4T!oAS!`mB){P+Z}!L`@^Y2Z9|Phy61JHZ$lfZ?|(@@>rCK*Im)2 z9qRh{(D4|%)?&58HPeqNrX^DxQd$LA2Vuh^JaW}5w4~W%? z#eC}?c-GLsI`sJLfyZ3dVFA!<8LN*r*IqIQLqs5IDsCS5X5P&R!%LKvSS{Smh+W#) zgvW0IKleT(BnEe!jNAdPnvc5T>fKa2Lp*OhYD*b= zl!D}m`8Cv(K*k`5pY!^Mley=g6iApAR!MV*pCZ#^;IUh&C@w*X%X+g&uNE@sB7Y1R zBiILl>tq5SFMljq)IbFPNlbgC;5;I^uH%Cd1`Pf3nlSWVn|Jz;6iP>UcEisRpua7C z1gm1OvF*k{L6o!?q`VbH}7&XqgZz5Ph>xJXg!NU^t8s4^-bAczz0hYg1+Oi9e(SyKfH z&i^o3j`3TK#f|mTFXw!!(SKhFG5rzi>-DNo!X{imin?Jei9+<82wNXl@nCAFAf%=n zzwR3PO=6o}{O-8F?aU>)2ul^MOBY2xE+|my#7^O@N}{gR=N=+*3zp#AQ1nL%r=IpX-h9BE0h}X9ePZx=0ms6Ca`5OC(qFs;Cke7>Vzm9tc zN^8tXkNqH%Gq4+-19dp<#X%DHK4t zp(JYjCXGm=2w-VQp&BtaA-PB5MaVbb4GfAROoTc-2DPbtF~ehggenFNbV{3JvY>Pz zleGw_wv@mLXXsJK_|AcWWRJ59Z!V@&uJ-w!8-4ec14;P{CcKC*yGv4W0e2@uUWJ^z zbxzYoYUtNA8s|GxlKqxKx6e_y)+Z3LYCMU>1`C27aMS5fI?{V4W0~ilyHT180~z(K zv&_P-OU{A4)6o#&PTuS0H;}0NlxDhKGjuA-Y_=14!E*BwKIu4~*8yi?Jw*5xB8lWu zexXvz;RN7v%a*D2e#A$uz_;r8Uu67e9L(!0#+;f|Ct@(UXibKEmZ^ z<2kSr8!hhgOQOn&7$ba5v40bibUaq}Pt68qfIm+=eoFNIYvn!pC6FXP*cLUpVcuh- zgKeY;BSvZ5EUA}c}yT_Z%tS@4_TAH&Z%Zh5T{a!YyF3B z7j;V#7IPPnKtTm0@R1YYq~OC3D8Ph7fj5>f!;8bT;0@za=9ttqlel7#^%=8c*EO8B zFQur%pwSXwNvL-(5%$GUP|D2ANdbG9E9Xet#AQD&F!z;&hfi{fOEN zK0BMwf=uSmcr)l^qfGv)DpAZpyF@uRpKF*3u`<5#9i2)+S=ewQ9%!l*cRh+Y2qyr&?}3}8_IFfSm}!oB2&i0+&;dS-2Gi1#b^?f zBc8z$Ps4HWm{gBNqpT5DwG3g$cHu7U3cPjixVL$&jxd*h9LKcvRH2u_TS$$63X^IL z*S0$qw98G!Ps|fSohD6laNIx2#=@tXL5xqi374*j07VE`p{eRrXqU0kPjO@U4Ar$Q zd}NBh^jQ9%V%q|*hn&R_#`TDD6sRy26ETZ)Ppx7J)Xb&%R3aO(U}QYzbhvTua31U8 z*soOFYW=Q~ywaqH^LamPWGEjBt1KUIXmX^O!(EsNHT#v2m+y{acA2@{WVFIh&ljC) z9S|WL&yHL9Yo67Kbe>PE>bu#m^DtR^JE5OO0CuibQQfW=x+on`G(+NqGYY0vLy|N5 zEC9}dQ$+ncxq*X#dEwEC`{}X5>bagJ(c9H2;N2RhuR*aX$v-KDuyXlfkK!`iQh$X{ zdg*R8N#PNNjfiy?MsA=y2$p2xjg<(W zPC%`au#a+JVp5Rq%Y#;_I1{z(_I7&$iLb~rgurJw>X_0{>`xQ1Z@dKeD4OdSsPToy zM;Q808DxrIFeu5Z)OZhq>=w7OC6oWBPEA3vLXRy*#eDxU0(!b&~m>W0MQ6o0Y8rA$XJ z9r7}?viuMwS!t9DN!7Ki4m*uFhM_<(zpz&+4ZgCWSY1by+WvE4USr^0#_}{D8{L2rRP!MxL$`} zxy9cMwd4tZ!1C+i$0THb3gp6KEKlc8q7;Y~4PPCey{&8Dp*iR+25L1bvy5s+ukL*Y z&O9kmO##DW#bGq59K^q^QmPGNsREBwyG{_vpTd-*+OyKvmSaMen$kq)hsI~RvmBK( z5J>0afITKjFP#E50DXkOQ*mLTIx+Q*A~@liUKOUa7{47)YinoW72mNEmN`cIAB(pY zfM?r}_ghBso^A7Ts`Le0gl1QJQHOe)HnG#bf-6BP*R(WaeHw91qGfNttxV6%>+n?5 zsBRdYO2QPVxr@w>)VMXn{m*x)UyJ$(ylMGATsA=HbOTOE$$(VHGZNT>GH)s&Vu z#j@4WM4=J>?1YHJl*xIqu?Uuq6PokJ2c@SBvxLTQix`jrX!pD|R}e^@}Fgi|%`GiYZ8rmDX&~ugg6@ ziP=hn`5PP39^m#Dp&a3sR?Ij)H`(#jeMdkzs>!02F05qHdpBH?Ea4dSO`(u=e8@X5 z=B1rVFo2&(OR=++giE3`_blZxusoXd(-6;0fG7x}zEU^PPYy5AjAV_`VAqtJL(9@VZ@{eCWPyle)YVy-dAV=J%x8{0EIk}Nx zVE$PJ`!sqw!kue!g+uefmGY+NJJJioawH%V9h#saUphl+44P0zZDa(b{Rb}$O@;&l z8P;NWck~@e0Z`jo^o>b&+WCx*#vZ++ns~UKswxbtfUeQ)mrSigHR|cY2j^UYlk#+A1^5)q zZ7mm7h3y|d+IS@Y-tVw;9I2M)hN_9-k;`k2UQ5o+4y<5&GL+?YOS_&$7zz&}{l-Tk zi^k$*e;Af&Pn{a7>HOj6@O1{HE1{M|yT~ewZgZ3THm?JFJ1oTY`XS0MLvORp_Gc<= znAKx9ml_>(f^L8fyR;p-)G<+L$o=99H%6AOPCF@fmS_$`B;-+X2Q|{s@1#~Jx^&%? z3-nq?Qj3SD#uo(NDt7@$rY%+AkXVu0dIE-|aUgRCvt~z%AmQdmCftu#;5sf*t z(}nL`d*qkneuwS2-6l$(^yK~Wf8(~=%4?&wMF(X4Gn`ult*4a^6E+9R5(cLzcjA%5 z0u+z=;sFd!Q|0Qp=iF5)gNSGxPT7+ngVy$=HdO#QsQ%*nY7!_OJ^fqG7Z6`qG=KB2 zyicFMTt|ut*15mEs6`Ernp(%!;naDyH(mCr=36GGg}KYiN~?y1eJHz~(01yg&5*Ec zY)Ybkf5wEKII#M<(l@Zp4aT@sB$a2lJx+p8*!8?2Ay%o5k_q3Eu@X{z<1~jHE3f+L zrJsjb*;CcpA2N0ppS%(X>6_Gh7X0?BBd}?!IGRU#2EkEjm;D#DJi)zb!PWhEY4@)x zEpEVZN{I$8@OS%_l1&9$r@7RsG~ZBtRR?Zf<3@9RQ9vbRd**#Xcot;&Bkbcx6t*YX zwc)LzerMbKZ$5qrw6?ZB7vG(FBfoZ=X)J9E6=W1_U) z;{DGzADkI10w{%$5g}(arpk_EZW$WT*Kc6>N*W1X7($@>eF7h9wsyIgimZsYl1(qQ zmcDW^$r;gUF^m1Ta~lSQ79zcY>6YLx!lKZ?^e z(=?u0ET7;wNx-BOo4Ngj%Lh>!r;cxAra}kt0H>F9!$BfeE~b@J)cdf7#h&}6YJs&7vhMxu5#urQ6WjuG?z`7KD#-DBc2i-(?!AfvVpQkDI;XJl*&Nod{0 z;=TeXwqfp2#UyfN{ebaiRQ@8^=Jz<+lIU7y83~$ENEeFwE56Sbq`%lvmSXviw+6B( z7;M$PdXTI4#Nd9Gt7A9$P_^tfL~;4NDyXIU{$k#u?a+N|)PcA5O~NbbF~w4%8RQ~j zGJeNWMs<<7k1U6$NpGBch>*(NU3-bpt+=!lR6v4K*Yq|pItKPvA}_wyNhd?Yw^a4qX2wYDAwyZp~v5F7EP44)$Y;u3Mz?E3x(aS&X_cm3zKdCW%suqkh`aNBT zS+x~+@}PS;Zl@8~uIA|sVU0_re)V(^S%8HlfFXzbh=C}2Rxm$*neve;1V{Qt2T&Hz zP+KAtSNg${A^u!Jx1Oyx+qu;@YAE7KbzcNmJkyeBVoo&$wuPxFz^J(U4n#JoJZI&H z^M}6-BXElvLT8W^K9_^3PNgEuqV_6Z2I@ zIt4?vq64!rez+Dwi7=@;1vmzJQlk&gbIkGJhKAAha7JrUF>~Pv``eOLWYxW zQDDM7+61~zIO%qyQcRZ^XsD zUWZko!cWd}B&#Lw&@m zVeApO2;_rJ*s3lzwtC$KF|3w`dG1l%t&|gJfF+ad-{3Be*MB zQgFyhD{WpEr1IHkFT)%R9l3rkeYV5k2+?%q3PHVyu|vD3R}7PhY3sb0GZEp9GC2;NdDlp`=*(^$lmDeVxy@>{r~Ct_^OdQWX?c=pZV5)Y*+AySrZe};q=K+AJu2wJx@iuEGlx&z`8v1=N~L^# zt7w1cevv5f=!@$sjr6A?_cgZ~o$rs2`b5V~K%7M9E^Fdvm8aI+Xz4U<6zQl;0w|mq zh+C~Y`R|dUi-?P8F`UpvzUOa7h{)#bF1NnV7ez?Gy)`~|ls2+2GDc^z(InKzHI11C zA8=b8lUf%bKLGuNJ!u!uht#>?l~Pun^2AvMCOjshAi~JS!9|%t{!gWXCa)K^LQ)17 z{L%)$@JufW=uj@xau1<7OFv=+$yaTGRWoqps3QgOXt+Yk(ZQO*IDrV(i-|$!2)|no zzXo=%ax5uZ2+?uNMY<{qK4tc@TXgukA!VhwUlRWam1LEWI-cYMRU&syU0e6kzu28B z@&^w9{zP#Up-fW3WcVDtQbg9R*B_2T)SJ&}FP7P`o_G|YEAJVvL`&@1YFAJID+NAP zAQw&=)r|;VV0IC@mFGuuqL$C=L!eCZyA-Q|wJ>DLy5gl?&wXVwH4(YmeynsHHcKQs zY*xJu)#wK76--)eVm&T>2AgR!pyaBFvGEkY3;nK&O!&a!S|D0wE;Muu)9S@%`U{uD zeg?)SF4p|+#{9}v*PZoB%mvb+Rw#xKK)CHwW&9QzXVOM>Dpr&*-mo21qzZ1R^Uon+ zRi}>74k{S;pcB9FW=H4x@#s+Q65iZ_TVy${!5rJo)1pO02Ea@APg?e-o_1<>h?z8^bK;z|Sb1_W(#H2m8A9R6JcId?kq6l;iLsZt*|h23Ncx+z_FxRpisusl!m z8}Uy=+{d9dgS!E~##BC|sUu{2JlfJS!ujdz)gM}IVsE9wRFvanNKy8GFb|cAf;KFE zE|?*dbiQzcRFha^ne81i;BEC&iUZiQ@Uw5%9$6F12=js{=`?aA+##<05mK$LjF)w< z7})o}v%E`aZ_5!Nmj9H-8P7~)V%U5b&bb*w75tXnnivw+PBA`P_qJ7g^YH5FTyWLt zw{H~Y+WHD}nG`s76;L}u-^~B=JW?FMT-Px^=zy#*K&Ghgj@_o3XTF!HCPE3pM?vj0 zf*<3@MU!P`F~xe>1)7b8oN}Cvt%!vr?q8&klwR<0O~0rH7Wz9M=(ni!HQLZU@-znZ zhV5uX3$)Hv8Wv?twRMj;*F@K>_ll=Ibj?RA?W%yAdcKt_4YPcbq?PBI*eY*Wv|uX8 zea>CI{Bv#$r^KvyG=bk`X zl+$KTzUUkMSfq%NR|;J9*e@bc&O^EO5s)$QZ7}+mD*^0yRa>fv%Zid9&{~}|O~d}h z#*EyY_@cY6Dy9Pd#-e-aKe28mA_(;+rQCB-#_WLIT?Wwq8U~D!7X&R<{yfxP_ zJbjdxu_?*1o6#-TDAcWiH|{H~ikgTm->o=s@xd+W(xO9wWL0ipddLeG&9_jYC|#zy@3?t$ucuyOd^+-m`~nSY4qBCnnA=-P%}H~ zehhxo?7N60_p&#T4O|09)QIenk|G(X`MUZh(mT8t=;?dS;LGhsL}3<9;;dt)TJ=E4 zd*Ie(gQ#OK-?PfR%&Yil#{BoWu@A=!&Za+dxx4MFUdB#vCyr*#=GV@s}W2egILr%~Es>us-nwE5GYZTM{LQTt; zbQ|_Dp0OOrWrzn*YGVpE^;qwiR*6^+5dGk0%#AEcdMNg$QZhjb4qPwyal~t6d@jST z!WkOS&E zUPRAA9H=$>EFrRVQcV6=-vVkaykZVaNzgmxy z`iJz?A_Mnx5N{pvTqM-+t$@n+8q-Zmh%Fqv!53McLZ;*fTNGEp>@|DjkBD=n>0td* zfJ)*p&uy@`h8lAt7@PE+;}sb`v!VGiVv4IiAwH*}uXaE!qqCGBN@ZLqc2dH+NM%B$ z2MQ^Cvy4V@Wy>fn`wrf$`ma9KVe<>*dC))bkJKo*4;Qagw-3Hm;ok0>tNp0g_t`bt zH5clh3OdBqr-|(D(re+iY1KGeo2I@TM9jXg{-)LR5QLdRc1mULFh{6A*T9a&Af-8> z-OS45DjH`cn=ixU;5?G&6!c5N@s+S%di@s_0;pERwgc_>KXpfE!F73PAP=qZ2)K;W zHQ%J?QD`8@D7U4FoY4ZQk-5;-Fd|((!(U7-EXbN!ybsH_YTqGkIpp^;=ih3~+DC6M z4&vyPP`KL6QpA)5HXK3qFnIwv{q!>{;o7cY-oK1Y3gp1xD%261XOQHh_r3XDA!gQe zo(6O^7S6)(3@0_|6E0g#rWs_@JKAxjf-Y)54eQjqKu20Z#B6^<0ME+#EUv8oC(*?gJZh;r>o3dVqkXSwMd9 z1J*NA*U`ZIU8HTkm2Lp-FS*tzK*WirL`HfnLoR7|ac?@)Dhjs4x3tUEa*DIK-Sj>l z)U;2`(&uAw0rWJ`VOV_|GoBD(ro{)j^ryZ*)45Mr{({APU&3uOJL@`O>Bp~fAmVBG zvs;9WJOi>#9i0<&ET)n(j zZ*w;KE01g=MdY=9<@Dl&`#+3OXbHsfhqSL7RL(bbV1vZWw0tw!i_s$F-YX2Y88FY9Hg^{i^q*qU7q*2|`WQjoPE@HB1)AXa@OCwUN+7lZdn1(qbv^HaCQ zV`pNz&PtZ`{d#}QSQr9w)rQp9R_H?GBkx_|??duIc1>HYvFhXcEGT0COzzq$_Q!febKUD?cQ+22>T=-E-_A*#;{IR z7ftjYvA!85jqc!kaH=5`pjc!{M<6LbfBsymaT_N0F3Or!Igr>U89absLoXZOQ(m^J zoY+7vuV9zlFWNAGr$uMcwRsfj*@Sk^ z80dA6@Te2umFqhw3-UYN{2Z@UYu>pD(6Abumjp<}{Tn-u`_L%2*K%zQKVTFo*z`5r zmV?+bz)DbgP$dyV>!My)(M!`110SR2XCDsDn@yjPe`Q8gF+Di{1}1Rx_!+`#J60e$ znt#Dc=kgh*U9ZJjX6u#GBsq~DVKS#2H|lj>FCOuJ2y1M0RZVk#UTHkaL%ZDGhB+k2 zgITXSOis?e9+ofct(iGVUXq;a6(EmUQHZkMp=!e8Zssq%Wj zm5Vw1LC7mw(Z?J0RS*4@$9v@3-FpR!{PaNil}U{{)E!JnBv)8Amv4}6%Kix%y{66N zM4qrtCWo1$_{S`Be`NrVVh7ln836ozaHb1m6O(=~OV9j_(r%GdyF#0OZ>7Dt<7`4y zBmy8eDs7EslmWP%Z#2RieD)DN2OD=48Qo24T z{&k^cQ`AV<1$KUY%s67vkx2gSvNnTqzGU+Chos8oz*Qs_9w|;eQblAgS%h`p?`AL|# zPq4#dA5)wr>cj$GOuE;uhOn1!EnipdoA~#zK(U+l)S#KXvQlBSIynB8%9wP0!lHzy zPaM%^KCk5R!-}`wDL0k-?A?1XVvY@%JL~$Ml)x&ba4P06ttwXDC42x=EVN2Lq58(i zI3rg4u6em)EP~!)wqx?Vvwe;&L#B*XC8C`w!~NpbXpRlCt`TEngV*hFaK-04^AQ+( z3_gdBvULgPaD{9D-P5kV>HU!+?Rqy>W}V77IpzbrD6mqG2Z(riJjd7EU8!+L@J5J! zPC4A?QxqDJr#e7`W4Zrzm34evy1??4hL{ka?rv*1wSR~o^YHs`@?y6m9Q$t`a-czu zM9}RsA5o^a*;&6kp(Ae!f?0$;ZZ#C43Jr8ox0e(QnQ9=qwdhc{rpmcPj<|8$GM#zH z&&rukLM)z8EVH-IbEGvixiq>jG+UM3-Fr%`Yr!75!BPgWjb@v>Xb&eA)Mck{L$IgUWG656_7$ROk1yCmw+to~+K|u#Hr^^f|#{ zyjJmf*zFLLl-7dBi1_`GF)D72?8yH4t!*0Lg7?*}#akm(nDSKV#ut6RUjo%U zZ>oR1d>vqd3KKTk8vNidC~*YS?;7`e0mQNnMY!I~V-74ZiQtR8rgFNfRRkpTl)fl5 zWSLnbMb6*cclwmx6mzNhkFMQ5Gw#6I4Q zfj#G5?fJdx_aUfR71`r$5lTJ^07ERKW?=kjgT-Y2!9ILeESu2}=)e=$0*| zenlGO7?3k6A&iYme`~1f!kH(*A(>28b@k&h@NAA(r1PE}B!bUwVODVa^ue~;bfMPf zu|0M2Al9o}UD+66;>6!E*@n|SU)wQ56Xo04tU<^r@IIg}DM>M_s(%5mIAYFas)vjMv&y7E5PV&CG zSnQv>RZjAo?cNBvoyn98Nv~BrPv7_jQwXv0GrpFVv}?N6jXCGgx zY=MgTDyW7>j^xL}NX*dB0Mg7c2p(^?M)x8b)-AVy@4=^agso|{I;c15%%NTVl1~pc zo$bxf{#VLh%#WbFw?4C|xHL;vy#|V{4--f3Hd)_p&-W2^w(dEaYz+@!JcpOK4S{pS zL0yB@SIh<-?G!HRvu-)0FRRX}yqsuCsH!+)K0G?T-oONub&IlQmh972yLq_q-v7Qt zH48TPg2kXFPwZ;hqw5{!*ahwHd6`|SYa2bT?m~<1VE9v6eitvk6XcI@w%@gKT7Qq#2qXq_}*vI=V)z|n5ZQhS-$PV}8 zxr@`0{AqP-P8*mS%9C+pRq_t~{b`eN&u=z09c~7&naxV--8T}_cRk*C1p{80x>P{P zafM0j^2rSqt^2eM4XwSwW#6#?&92+L+#b)YR;G;QS+k_vMuOHH3sCWf`uulcoZy;n z;yZEA-4qUqrxSVpl-hGuhauPB{jN=Nto9MUa~>5E=6*~dGWoT9f(6PIbjbubmT@Ew zVI;RvMCQXOqgHYbdbaFkbnXn=bLsdjvi)Qm_t{*P(Kg|3d1GbFm*wT2u_EO{ zpfzKx%u{VqXBjqLAh}BJ?-jsT1tp-X#kI4iTk8gMyK$q^DzE)G@$W8DI;X|A4Y6hVNF$FB zIX9mX-`7A`S3<#OF_Y%%-UUvy3KT!Ii;m(u`kIXA!X9Jw;wAv~TnR|0(u(KxF<|=d zNq}M_34AG!pVsF##AD|@{kcTZ4uHe;ZO32nJE=6kSRt<**uZ9#Qq_(Pfzw{P1F|5c zg$BC|=lc43|ArDHPxdB1Vbu`h>V$z9$Z`xgGH2Q)WAZS^uKDADc`EP=uQyL#PtTy?GZoH9j~{wLZ-(y+ z0RG9%BkyTD>CwV_#r(ii<4lBOt%gy$6b4WfZjx%*b*bxv!)Q-LF2D={s`vY*Cvl`d zxfxG}lme4-Hsvvpy()WpHoi~==3uq}^1}FxcYR$CFe}S^oS(BgBgDg_t>F!Huxe}Y z@Jp#>qm=>!1K%C^3b4J&Z_L>z^F#QXD6+2CNOtQ!>+wbZm3O zSLv?&#s=<>*Za2s&eEKlis%k~`#_|fDl??^pAor8l(1*Bj4g$?NPDSY-e`;gTyXFK zjWmmX6_a?trJ6=&hu{D(L5W(AoUipMs@)6#07{>IE^b3%<4T}nWD`1g@+4-*Eh}>V zpS_TY?WyoQ$G}!|1bof?d{;}I4VWcs)4(MlAdmqs%$x&b$LZ$b9ji1cz#!H=Z92Uw zVbBX;-Yr~yX?bLii$(c}_@7~*NZhdVa|{OcS9CxdyTP>+V9je+8FC+Fi_)z@fHBH^ zO>5F*i0(UG<$S+w64v{0L^N*mYuE3|Z zAL}txPXs7>+IlE(U1fpUPBN*EJb%!S#iq2S7ww) z*#3ETR;2tgm&S-zM<-#p&4bwA@FXsZ8fd4_-OtqRoS%#67Kod-l<(z~eTCZFC}nN? zY{Azf%Fz+X-)K_UO$6?3GQ{2zv1T!Ud&3@XBj>#)fk` zBmj@<`9gy{;E;Kb{Ox**)Cd5Po=*@2~Psx5E0jxlIFI8*SsaCzQ#MzkR=~ zfXk}8BNF&-hW~ySKzNl&^MuIdIr3CnnCL$;QcL%wN%R2(f7{LBRKjFn;&BXU*gO2^ zo+`iZIdUSA3=sq7w0;k=y{2>`>Hru)?%xL>aapc$7^*9!YRPDJGXGGSLK(1Gwc2Xe z-r-~)BnnRg^PnQiIXrfo0MpYaBX36;CIsZMx9QfmfZ{# zD_JayV*L3RwjP!OEhK!W!Q8iE;?ha~>+0t`6Bm*H@mjC-woD9|N`OZeQkV6r$Tz2z z+Ol}On{~0%gS^xgy z+iq1{Dk?_Ehwg!EUuC7(`AIr0qnnweTS;ju8>-?7(~5;H4}&MJ$-iN8P;BVF=Mudd z2UX>n)vd-$3Y$ur;&mZ0F_}IZ8agqW>DvU&UpS7R&w+Yp)*{_DZj`~O!9I&^p+Qym z(sZBmO()9Hn>4A$Q=yR@-;;Ny_7i!`s+nx{6E>K9+cG*zJtlxs{1WKS+*IKX2s{tw z)VVkzr$4GjVC_#tD*|Q7ny;e$!_OF#M**;7>-vGheShtRaFAzro}`=H#A`7cqKUlp zgniD-z6H81h2Ck-7Z=k>aHJU5++(C%^xnX~Mp)76 z(N9<~m)QKzj5sL2XDbYf{;&&AgAS>9oC(E2Iy)zfP}=`0(SlD!#CYOXk4sdER8aRa zZZ1NbI3;}TikC(4#YjG5_oilu@EJj-DPn@kw?2A$ixVF0I$L38-SXniQ48RBuvb8^ zUdwbLtCY>jUJ?tw^R2x8J$D7fe*52c)*%h}ydV<~Rx-r%$D-cD{gp*;{MQuD7zq|} zMz*v&`q6!xhcvl0AiM*BnDs)Zch2Ebqsjz@B%5DCCJe|9-)22`0MM+e^qM(McS5FO zi@pVqovbS1Go?9lM|_>myjBjdr1Ec@PiY0?rrS|w-esfh|GXn<^}Q^m9Ow(310biZ z^VFb*tM2Zt>n>;a{VB?7p^PeBgVDJztDn8$J^B7|udP7vmtYt$!#WIvXpR^xsyTv>3G1Je zL$r=i7w+1>lbDJc#sh$?+1!JWYVqXjOaOj*m$if8uAXtLt;QWcx_#r1Lt?6D|KG{@ z6iiV4XQIui4;KwC{i_X5pLl-bFC&?(wKI;hMvklB^iZ>EvXho04(4PaLuJ}`-Yai? z%VKG`BH~~PUMYh~6s)d$Z@?1pA@7m2l~L~|b)`O70_2oa&)RSPUFf8mwJZJZ^Qu%x zwkFd$4&&6uk7HR4r%TGWQAS(aqNPtNYqV>Eb+$;e=*5lB%>U!@VQ|#gR6feyRd;&& zk6dN~4-y*jW(Kk~F01PA1iKkGcZ9Z-g=qP|3j!0Cz_~RBVDje@Vhq?VMZmZ;{As$8 zy3g;BOIup=1-1!a3ROB?@8dt+S_-Pl1jbz&@KN3MTPN?icVur44oU%6{PCMlK< zI#bZ)y62SqHx5T~ggx7O*Btzr{5P01<7P zR=XyZQrsWK^qRT%cbq|YL7CWQ!U{0BpSA(lMrWr&S#^xS45S*VE46ROk6Cw^@A46;EYD76fjdXDuw zKKQ0e?d@aCwp*8rNn9ET*SoZL%-6TELR&05B&@ z!Z%lw*_j-Ngq5XFh!JXWvgouQMq!(Zfu56uH>E?LL|CwmwYSPe8$md})$ZmSL1g-) z2K@yyRv(rw{4_@A+IszD^8ccUhvB0f8o$@=BD?9p)C%_LPS&$5@MkW?Oj5PL3{XSn zmvL%%dr<*=sQ@hjD^H!gtJunBbs;^oFcxJL6Fif$0`|w9qhJHVjFlGKe6}2cX;aLv z>yzIDi(QPNuIn1_?06lU_i69~nlj}#kdT}7 z{vW2kGAfUy={6AL0g~YE!5uF%no+Iv^^;kgy53M|sW-O+3)Y|J@N0HORxpdY|U_HB7UU!V|ivFwfEooKA|xXM0S zI5u(f3>KdcWq#yIBFy*-t-A6vu}s*Lrsc_$I?Yyc%c##1^IXb5Bx#2eL*G4m}f$ShOb9wYb_M=)OkjAJ1C3j};F6|r8(;_E~bmTb=sl%OE z1ju@i=WuYThggnl19wu@yy+$&&K&R^+WA7_%V{GEZ!$vSN^y*(bUgkI-kwu=qs@v3 z^fIUuzRoMfM>eezJTaGDU1PavaZ&eh=B}G;3QW;al?6c96z~p2AulviW|HXu0 zLsG1(i8n1!G9Kpv_7G>hkbbdR>nVfxCoIZhiSP|6*Rr(b>74dbJH7bV>?$bnSyh?; zSu&Bg(?}ZS2RQ&H9n4v?FaXFIC>6M}GD}_EEO&;Sz*P1c5$%zpgg$4_i{=<6s`Y&3 z>8+%&cXW*C@S9a4#8#?GOcblkCeqYpZLrczvZh(WfJ}y#Dtf0ufT#6l2Bf?}U6to5 zhfc}&hNmAq1&GD}s{RpRA+Xl2f3Hlx$tT?$`T08iAb968CMN>bj+hh24+%f+6E!6OBT*^gj zD{J`01ML6C*bodprU350&gYE&^3dB4wm5Z4t))k-g~Ge0Z@};JmoRGFZwL!zs3Mg9%=gSz_LS zAljIZML((|^f8>b1)GF|np*PA&B1qvMopZB=5fV@EBG294z-ya`ir!8Q|i+bXa(}c zgF|Yci!A@w3x@Xq5h#hO^Ca`&+M?*>phSR>Fzisg=ql7}YHEZ#M?*wW)gYa4roRBl{FW>oip$9rkkM&=l#-F5~WHSz5nv2A$^&n_{|5LbL zK!ZDz)hdJGUPQ1rShVseQ1r4><6KvryqwdeK@A(&dwPWIP|D6U^{;jm#YX`dfe?T! zwSZz(U8FmZNnje|OEi?1xbMp1FN@B(6BVz?)cf0(8m;$!NgmIOS-Knu6)t9Fmlt)~ z{x5gwpzu+nnc+CS-wxU3nEIw8f2;$;VV z;E0p)uB9`B2P5rWhR@fZlh&#^)=hccY2mZ&Y)4l%cH>RMu1INS)E@QX{x4L$AOlyi zuhY+E_jPG~B^PnDKx%-*DlGDq`F?m`!&XyQc*v;2Vgp3hVn7tk4t8~0gD6VTlva(i z$t(+aXb%cnX0=h7Che^844Z`S-QzDeH_mJ=dVVXbboANK2CM{V|L*P$7C^ex#Q}Ft z>jhN6?Ca;bCiZJ_mKQ5l%s9}l7Z;u~-pg~SCU(5546HLWdFMH6v-y84+KTS~oF=Ap zqg_2iesUU6w&ILF{DkoHJTMY!fUDg7>*5T!6AF^G$cIouJ-KhaZ=j3C`*p^j;Vm)* z>SZmDY5q=$JVL=j6WQ6#EXPnrgUOoXe2zC-QWhDVPbf)x7V>HxRg(=Dy7MOq4Dv1r0JAy^5VZ;3uL(o#0R9&Kv8*Pcu?{}H2h=B5SSDzaqoJ6eD7!tG!jxkL9u zDR8cQX2)?bougejH_koUCylpu8`?T5zZm;0rU|Oqw@M%&|_^@CLFF2;) zhjZ$d<~I4xNIduB;ZKyk*XD`i5A>=*w$7m_G|Hm}P$q|r4I^Rb@5H4-3@1dd{u)Wt z+z&!~?>omw^@MS(Y^oaL6#@Wv+*FL^Y*k;*Sz)GqkiNB2E9H-s83{T`GGYh)v19jA z(56t$O<$)F%iA`uOaFe|0_)eT^EXs(d+y1-jQFSAO}dxzz$knRL1R2p^5j)-6kgSB zf0A;DDoK^;nh|g;D81gTvB>?=Z={-^YBq|)s+Q98+`CSkI(1N6r$aOqT-PS4&Zus; z1?{=6=AoJ3&(=nmYp`n8}8es zq{E03sDR9$p3p5U04_B1lX48b5jd>en7eYpIj4^77^ zi(g z8Oz|LWQ6Aav$kr}q#{^h@iGFcR}?+&C|V9n0?I%LfZYwr+7f32F?H<+oftnRkT(># zntb5D{~pFyLvww7!)BxF_Wb*%N-rcxW38Tl^AQu;pDmU*3fa3C5>ALCwwr^+_*hlN zxxpTnTV7n*%9x~hp&%YOnVKEPRj*$@HC9Sk9Vhdg0-i|lX#JAMt0-ptC}yhqRy9|p zV#eb74|NKIxDs6|<;@aTYM~$!5|aMy@#@aVbXNguva#UHqh58d6#Tpd!Zu2e9cQo~wJ;Y1iH>~?c#vhaE%+VSCKHKysH22@X7? z3D9eg{8#97MC;-1T8^*R%`0zv)DMT#e7=u*a`w5{YQvw?Tnk;KQEO`V?kLWOKBu{f zt=7Sl4qK(eR<@hnAT>H|I6ufWwxw}5X=`WPiW>zFB@1NGWvUoQRP)5qc)b!};L>Wh zCsn<276=!pt3D((tvqaD+`QnFPVj7(Bqg=hLNJb1X@|zm9c+&)2=$ zJxPkuC8hF+OSM>~(%#e@OI3?X28D7`i=fjD5O1i%{&csQ?-?&%EVJ0^T$=)UV$Aoa z_2E6+s#3C3aYq5lFL~`#fF@=&5B;HM|BG*vl(M&N z!|kb-ZFX|K>i%t+k`$m}NU)JvBSpook4wRG)*|Jc9on_)lRCrDyLuS`gFhIbYK#@p zf61aF-rHh3Y}d(9Bz1cB`_Lva+I*+H-p}VcF}~a`Pf>fde_1~K<)+yz$In*t&OY7H z_32Zdq@@@E69mR8?K_lY2GMfq7l_(xb$VH(n4deno+veprqaK*#Me&^fC5EKt;_1F z-|+Dfy^qmQj(OVdMTJsBB7NYn@R@PvE@!0v%f9* z=L%||xP2LXtGxZ;cNk%wsX@`nGEve^ru1oYdT3akLpCa+h)D=%ccjwKR)1btaopGg z2G<-%#&grMv_nJw)HPU^sFtcdjaXj0NoIntk3U@WIuc8&PQv^zWbQA?$ufFKg${^c zJ4};#SLjsPk=6R6dDpzJUgX@-s#W5bA+-kASN`8xwM7;$$5BbfW(@kg%SsOU=lNMO|5%rb+*NtPwsLI+r|3xzdMoBl5TAd zS&g8>Czm9XV*`4#wS2E-4KAaV9hhy2NpuHKi5V+; z&%o-Ufec3povJRE4Lk5zd+QYXhx7V!#!}jpw|l<#1Wr+_T0|=vHe5}m|ID#v(#TpF zsyx=42uv*oC-{Oj7R2h*C}y$A!gKHYu2!lmyBAvzfxLE=R>>pM&1I%jK1?j0w57I0 zFI({@_mR@+EI{8~SS$4%mkRBNI_%TnbQ9-3v&lXa)t=vAUTqXW2-0(_Gaep3m1(zO zTNQiQ@CsKTb5DiUy=bY!5fT&@+kSEtPg%1%{GO;wJGAVi9Os4ZMFKDynIVRI%^528 zzYuF_MAE^VEVYZRn?c^*h&vpQVG6KYpQ}VXoW{~v%}4i_ANM1DncvfY1m=cgY{s2p z7PlidF$>r5DBbzl2^SBhXEEHS`rd6nCb(423WL%xuOj~u*VCUa56fwTD@T7i>|H&? zLoAsBEw{#5+ZHu3jx%S_hD~cb(xxUH)^c}>U!2l3dPg%OjD&TwGVb^kxcpWXa z5wcyOPT8SLHR1EPC<^tv)2aS|>u*UdawKV1#ZBd|lJQKZpSi3-p;pxrL8DTC5`J;< ziD^@4ef@{h)p$DL2Jc>PMC_SxmXLBPc$;DBnlAj8W^TSw9Jf@iP74 za++q%fW_Wb?N#=?4r}y$^g=D2vq8OiIN5hddtD>BsbVMj`$~*A4}wnlIDR@mXpWG} z2m7R9!ldbZ7RDE58X>G}48yto=zt`=Xn8u%03Vn7nb4k+TQau1pIXI5a4%GgLvIeJ(ZiGXdo*&^Uv`B0mH)r6vnjc?lIkLLBo0denNx~|j zu@w#EOEb>RSD zGT}byC@pN9jaVi+W=PRft_T{}L~Ljvzo$hL@nV%ezZmP%T@>MB4<3)*S2I9bp8K}m z6g|PuRPd?!F5Rxt*2(lkdGcN3m+n+1k+YeVz8X)_4`q(lZ@%iO*@_6b?x4M5f@kJE z^q)1;lSm3B?hc(9(bGekCZq6-`s)Gh4k&d8)%mr{h-KM+XA%^d8XG6zyV=%BA-4Ma z!Y^EfYbTbwhW9PDjSs>IzCiW<=rEe8GUteeEs6E@H#j-ZN9Spv%+*4rFmf{)G|xZ; zSx#Z)sA&nOWtV14wnA?G(7iQzrr++WgfN0?7q^9KTI6Usp(N0-z=t#alNO3v&nOaq zYJPf()+75ApWNu4#x}0tMEUD7UvxkgSKGct)oFP~E+CUq5An};@YX#Cyi?l7-=O?3 zDa>?Equ2!XbtG?Wi<`YW^5d(0a4H*Nm^m~~K(920$CudjDT$Qr3T>od>o*;Yb3D-A zuzXA3u&lv^8WD51=hl#Fx_L95yF2ir%wC|gjA z8{O@)MG4Is_c}}tsUgv0Ex%QR)kCA%9kpCVUX@Z@OILKvFSTNhN!SCVXgZrS>tkCYs7sOeS&AZqkaRUH)nFh_v+1LQlT1qlkcM)-h^x?^%ivkHGnD0^n(#vDd2$dR7BN9Gqj1Qss2+UYPULNeNj z0*ymZrXts!!e#6cp;)AP&ZAJLjE#I7+s%ov_j(2F-Cr^b+P(!&A0*XCw3Os zK^9eiz|XXz?*@-r)vct0H|NaC|@`28aT(q8tOJiJ>@!9|h zdCQ@OsozZ#w>yndnu5l$cVi`(h@B0b7K85sf!wAdXmR!6&ju^9N|-IGXxly2QpBXE z-l8}E-;87)fBzV#a?QMtoC@-2d2z%UwicshCG{?_sLFN;hIw({73VKBd$GjK+A`9^ z{0AXQ@^6l*8{tr6$4otu(@~)WB8nW*+Bubna)i9$!qm_ylxH7byQ_A7e+diIS7?@e zy`|Zc=+zFH9N(%Rv=WO?IiGNlkixA7sLSq4n=26BH1W}p_L?RB|ELH?HDxko*SO_dzEoGa;?n}H#PqNnwl*T zUeKrDh?s5N!M-J1_qQ*_zhgp(;vzLjh1OkZP4t=Rk??OW zyuljuk0eav2k=Z6(F$)!@kd9)5_yp`oura#zc~AKr-kCxiRZK#J|#*^q+6C^N%A4U zH|q;FpFHTjS)q=8v2+AMP1{WD57994?G-hORb23KzMn@wu9GT7a0D@L$9Wc3iUrG+`!xe^mWDNW1cuVG_B7>mJ%@8f(c z?a>Gr>&`2b-XC3Z03i>wyKcj@zKWU>=uC15jx=w!QpGOG+wn|426O~_aQxMG?w|Vk zz~}8hC(}-`%~FFPXw?0j;@&GU?3g=qvi>&`_R=#ER%}^r-L+Xf5a#XoG875Kwb{f& zUn({^8o+6?Nyt(o_%<1aMl3m)0{*ntzoYUwE~1#JS;Fa+?5 zb)aY-@7rBM`MjjM>K=g81}+E8Ze~2l_cRD5*&Bv7y69yX=k4qG3Y&(b>9bGwq5 zbC=LC%`C}K?G@>uh^IoD7Zl8KbvX!XF6V1pVHFyCR-}iYFY;3f7IsYXZ`IT22JMO~M7kFEosm+x?i_Gg~+ z&v_2=yOUUs=d{OL`R#jlt9hcddGHDAi$0*I&vnL*lMjt*Z>izB?{$k{NdT%?DoC%` zDx9(IT>Y&RHn$;GRbfsLIXDIe--27qHO{_iUM-1^9(X1(9Py%`fZ%D(%~OW#g_Iv|We-6|Zn4)*ziN4sZ%q z*u61cu`cjz75kh0O96W_%sF8}^`deOrsZ4D3^svjqZNU#A(9Yws@^ z;m_DBHw9WBP>xp!5D-gH%|q(C_Ee&@FD zIt4?Gf<_@C=c^$8lYK(2LR{CRrVNQ|_N%mylaw3}KJ0gPmnQu5nX9#cAOXbAtQv)E zUbVrJd0m7H2OiOSgdf@P9scb!P;4cFFp}H#99%cvrq>9&#fg$xV9sXXSG0^|K;b(T zXuVy}`8Uh-{6;iu*AkWMOIc`zJK+gS9QiMse%+F{k&Ljw>}ga*A9PNW`Caq!rH036 zLc%>s&zD=qC4;K#WBJkzl%VIka<$M?r&=8*Uz2zAC!5{*3R9>NzLiVakTMtfOy+*L zbcGm^Rd;MdS zme5P-yeM7*B#=Df@6_?fo1bQAbdG1-TiukE#&pOkxT>18zZxTT;?s2*uEG)3K zkD^1I5x_yGF4o9$(&YFxV7iX5@uAozL&0W^+0|JWAPhWX40+D%_&KRuvpQ=8cL-!t8rQ!V zrhb5jexMeMpP7OTs`-t#SZi3=L4vu?_|BOe@WuY!F*zFrB<`mDnp`q78vD$wpnsZ^ zWARJ;(`&ph1wxIRO;F^7e}?wiSnvByVX$c$PT=6l*pMK(vEWEH1RYpIb)$ULglmq# z1hlemfh>jph@(Ts_QQ(l3+ZzsGCABsNW5d>NYfeRcy<357=BJYdP2^xa+W76!%h8* zU-*MK)Vo3Ma`N~_E*$9s*qdsJQ(aXNcMYcbT)0pYoTX;MHN#ryGPgiZ0UVt}zQcuN zKcF?ajCM9*^m4Kx(7;-bB^&N)=5S#DmdxW-q2vGs6NNYXG1S{8qtl-F*~^P2);!f9 z;=A#I5;@f`F#6zNVWv)UKPqesqFq2}uBluHh{qzFxs*6clgad#Dg5A_;u|cxYfPuR zUu>^7XirTK3a=1KI2UM+uyZd z-=aRaA91uf8h8!>H5|n*q<$+2pn9^$AI-fz5T2rcUf{BKk|?N3+33oO7Bg@D3T6MqdwOm2Z&18=$YJ*uNz2M8|V88PLow4Dvd=g8wJP*hFU-NMU(wE*bgu}a?wnPL+kSIfRn2Q zNsfqpF92W`9t1ydwx%755)ix#vx542#9c!>m=uo=At|IhRYYxXx=i+DtpMP{P^d@3 z(Fgi}q8o%?5VnOu_UU6{j{vJZh<4iN+f70_2g^@sE?4j#3?F59BbdM4I5{RJ)3B@3 zyxpd)xstfrZEYpRf)~FRoBT72{5~J%CYlP+<{imYWK22_&`b3lmbr-mbkqEug7kgY z#p$>vn}_y8oSkr}34JKen(prvHd{YBxHkIBpp-W*Tn`qh`i<}(g%Pg~atFux)}lNG z^Omn%mf@EM?Jc@qppkZ2F=55m9{`FB>{!@2G9VTaC7^VZKIAk{7Bm>ooyJ|S*KB(a zZ1C+aQ}suq?YVm;oumIZMqh8__?g!Znjo)aB2m)up@_mQ`12?7-orPqKw?_Z))ht%6CJy>DC zB(2@^HqZRwTI6^NDEJTuDo{gRBb4!<4hmaQ1{RsO4d&BOjb52ifMT~9*a`B z97R=s+XBty|GVX&Q}V-k%fbPibV|eNc?M7<#ZqF%!gJB0&{$dOFoKH&QUYLL-xaiD_yKOHudp@}2auDzd^56U z0ZQ?Ame^T_0fD`PWWr|u>$Kj$MPAhhp7#qEBJrS#x3Iwxqg8XJkL61$)?qGfuKG{l zAz=S+nSIkf#N|j#4#wx)H%PD-M8kYeZ`NTrWW8sEi3|cc;+W&Z7z1Ox=OX|UBCv{% zc_&}zOg97TN)rKAJo@wh^kWcQJ_99-#AkB0@F76u&wCNjoJFASug)HghfoMEIOZsb zPk_+{K-3e;{O2S>yJJj<45q6f=NR7WOx}M47%+l@!X)xBb2Q0BULH(yrl!T|-8qt@ zeeeH6fbwn#{`n)!u96!Gfse3SXu@qcj|BkqG>l{W-<1P=A_QM0;?&*_Vl3yQ)3A4s z5tYHQ6wO={0p`tqqBiOCSFnFoAw9>0LIeOK`nB2+^ZR#20>I(G>W-(T?s9h z8fySRTnzxy6B*FT|I>F2g2d+{NK`B+bQ&!OfbI^MzyAJ+rn%qb!}l<-NDlvgeZ>c) z*k5R1g7s7YaHsRftQ8x_Qn38$|kTwhnPYXm5@+0 zYqFP#fs*XD6qva632Q$Rc;gxfK@56T0Z`fij<#!7v1uE^R<#N7eu&=*4yAZPeI1b?hpZCvKc7P#l zd_9EA3uiV~t5qedEqj6gjuVB-*Wr(dKs4x2*CxqD1u-?{baci(;1C-i{Q&9ND_*Eq zUoNsSUXQN~HLV$L5cuCG>I8y_$w&*n9$wa4QJjMNQEjX#^C%yyX_es?(NMyGGmG$s z5vK^yeq3S%U*ZWW;S?)z(y?~oyq|-QtIlD`;=i-%N@hD>xQ-KK`M&{rcf>?$L!gTp zZ6I{D%LTy!0x4cE zAhJ4I#{X{_bRt0~>df#OIGVAZbnf1;f)7$wuQRl#LYa;l3BKM`L9@qJed>b$?U4!*h^|76$1V7NY=v#zLyhmNf>YWk z$tSU&`8tH&r%;HlMUsO9Vg!y!M`rpZwp~PrUD4ECGA`tDPsIxH|GqLEVdL$`HQ5(v zbRi>{GPTI7C~n4r0wEdw7V_^nF~E8lyg$r06{yIHaMFCQ1%2dr9EziprnoT?g8Be%?SoMHW%jLY|a!MJ)nG2s6`hy=00g9hBIg$YT` zXF>e)a@IVfJPq5gza$`5ruRYI?8Xl+!h+Fhdwp_C)NP@dOWAc@zfS)nWXn&^Lq^lmz~eIgOCz>p9W3eljX?z<*l z7xIJ_zP-u+W2gTcQ5~<&?0l^C>jX0s3NXPJr}#f=6jaqe(ddD|rTx4y#H8&g48Goa z^ZsMLua!`WN?u%x7m-61@=E`>m3O^@}m$%ARs~%Irl4?SQNJR(6 zk$Sf@Gy)6bvo_uq8gipvI4LhLchSFt7}SWUD!MdK@xPIj`F7NX5|U=FIV{}?^asA} zQ%)zkz=ER*@%qZsz~@Jb+x2=F$$w%BJE zANtIEZ|h3`dnqiJ48Jw~Yy<5RBt;cbFf$b-4X1R9W099tZh#;f7AX&@hrDH3{3SH8 zIOJ*V8Ep?}Wg7-H6-uz70Sb!V(U_Mv)FT5yKqdD3S-p5?Xt$tixKY@@k(MM~e_?== zszm-Q^jUx@Ho@`c`aWvnwTi~y03fC?gJn$w1)7K=9LdskB2TtgaKoFe1m zeh!E_`G)iBIG$ql^~IGEq@Kse5Vk{e12tdon|Bj>#25zAhVb5?txj0X2$sA^%QQA6 z!9FrTnx)-(Xrdq{)jfc6GDDs`zyDS7zdGw5<&jcr`VNlQL>y*6Pjdd~i_zXl_kEP2Zguuw&Wfbe-HBoLN+wT`U@-h;5Aa`8mw z71;rxK2P_{^%qY$o1)T^^vCWdJM5qaLKq7!uWo{K6Y^8fIR{c&##(mp-BlT#pmBBM z&4)-p3-IXu&3hCfD74LIo$QN(A9TNo2K6Kh;Vp_*7;x3EvYD24 zf89LuHW$`rTbb6y=8WsmN{U4RLmX=s~_kYj%j|pguS6yC?D^$I-(*QsgRa2=NBZyz^B_ zA$+TLwGcx#LWC+anz=XD)rp+xY&v8LS)PAg2X7}ZZ-pBe;_$xSi=dUKA#(`j!r~<| zvOc}n91#S3?9#e%+?5czbmKrfXy)y2{yV{}EZ}&eyk6(G)dkbMxK6@~BHDKEWG=ViUJ&fK&NXEi>G$M^bKy^;G5rM(UfL%@9m92e|I z2h8bQL{O0eoFA$C&yEeif2us}rfg^sOLg^%PW`bSG7zd4C^&Ciqu3{nwWWqgcBSU4 zSjOy^Tk@~fd|ib2g}a=MU~PBTQ9;rENAyw$U05)W7Ni0XJiH{Z^e;6?KlC5RTG9V; z5pQ3EgwSdL4KI+pV^iw1#nbM9E$C{@&pSfpe96U7>gzUVwS7bqj>ZeLrMPmp7|Na{f(Fun;fnBQ?8l6lIcLW>#dDskprHb$UB~79jOEOm$|i`S z0T+Y0ym#tTc?`?+t-4&S+y1yoMnXp+;*IlHM_~NZkQQ{BuRswla>}nX=(5e7MdPcf zJhmO2l0tid$oRPvtw-7q;4n7zik%BN_pGxLg&|A~&RvO+2S21yfiuJo0Wd|JxSVhT z9WaQja(}(C-HE6+tYs}4y>a&_M( zu|aHJ%cRO@JxRv)ZqA>J9Myh-Wiw}We=Pn{yUpKn*$Gxb`_&a(P_jG%{Gjamb%3BpVUqgS3d|^riv>OUn8xr+*wU+Two62;*O;-KD>5e8ga> zLh}`W)ERqbbpG3Gp)}ta4OMXX!+Bjsq-!vt$@1yi4o5Silh^sYI3v@3*0oN7uMY`A z0}Tv5F|AQj1EGQeoIUM}1IJ%wd|HTx&HX!@SJ_*5lTA6Q!9L}I$8JU2L{Ny> z-(7SBH!{fcFsq=-$hmJg&NlX%f8E@<<}5=62O5_Peh94%F|x)VJ~eWf1c8yMQfNTX z;;iwF_pXR z9>&RXy=U~|np~^yO0!=-aGP+Wy!ofHzn*r6%LgOco{jNwj^EyF=k2o3ty^CWTb3Yd zi&1+UD=?m|mbh1zv%x9jueKe8ny%lZz}#C*vXw031qT&h z9!z`%`MD|cHXHH&gejI4=H2gk0jegfWWB zs7JND>o$zAOQorFfWvm-^d^yl1d||=%@u>@6wU}0anjpfxwEldhK(g`C@8@Y zBaLD`f#UIAip61dM23z$4hQMAE__(3dZNtIiuoC6aa2j6pCczEgMv?YHr z0jEx(eVBLDZcl+f^0H68V61*2BvM1>7rZ+WtX|X}tsmzv)RT$k;?vT)GFv&~g*5}) zGsmTTIeABRak#TbdaA}u3G-^KJ9dwS_H)x_NLC+r80smD8Iy-o#Od3Y@NnWWm&eEX z>F;IOrZMSzVV#dV1`)}x2`Wv9xXv*35)CnGt4OP2_z!~KW_vFWx7!U;E+y2SJ|u;B zQ=HDuuDjJDY*Ij;a`hgRKJZD6Awp1x@%BE_Tn;?JA$UF_U`jCBm~Zpn1f&R@9XYkJ zEKhPq@d|!GM<@st^gg3>cbNR!_*q61$i9DbAZ?aO_+YnU&k@FRn;Z!wQ7qn?ynIYX zJF(CyT`9DUg65)jBY;^G6~87O4c(Ad`=C25PQcED!7@cjKuWXiGxx}@=J|`aUUb;W zv>Q)GUS;W?%yc`v@}@I0JD)#$(rw4Jh2fZhy&k4-0xZ7L8weGOyCuVNgv`1&&dRzy zc5GlNH~pSml?DCQBqr-jD4w~STYo}XdDx0#ijGGV_}6P27u;4OI*lKM>-Zfk9D!Y2 zjfiH`X!pS%d!9yke@zeI{#MTE=*9FbpjFu}R<4-RJt#{RST`!3N#>F;1o4pkoyExg z^p}Kw>dQSJ_NN0Stz{u7Wf*fpzp&OHB%yA_FW63+VAx7}c!h=Z&c`2z$0z@I`zzgR z*+Sl05knr7k^7aA)4VvaYzo|Q;rDb2B>ri?JB&GK>%ZfsohofVzf8-gKld=n`3z^) zeaCepW|!YwUH?d&_dt+-=B7QS>NDYit*HK5%0>SG4UxcnBU|KmB?7EpNeHlhO8(01 z=nz){yo<@<^yWvL8f;GBDV|CG1B@bPN8a6arj1rYig#S(yN-Czw*c_YOoMyL(B;GuM$j9L2 z*#aEz-gT$G{v9zje!SB51Wj3d*E5Cm!a_P`em}Kdg~YwE^6=F{#fo5`o~OXiC1I<9 zmO6_8!_M~BinI2Jm|;g4m{HVwVbSw!MG-Xjf#-C$6omylju=dwj(@VAe%^c=;J%^$ ztwhD*zg^yl*;qu!qXPp1NG`1!4 z-9>#&E9{2|RLuT>%EEx|&+?c`u+B}hJ<%I+u>0q<1ZOXP`ID?R=993V^0zekO&h=T zrC;%O&0h-|WYYV_O;6n1lnB%={dC4LvBhvq>)p2vhI(NITa$e%_Haf!J6D)*Z@CCJ0mnceLx?}sp)IW z@o9)xk~SlKPw^{|-cKqRl|v{@-r;f)f%45>;BQE&GB91a0SYh(Ch#iN1d3VFB?0T>>ZYDEN^mu-{ zAh>BgJg=>k>8+-{7dB2Pn?yq20jSCcn}!=~sKA~m_K%h9k+eMJtO%BLBa$43#+d_; zmqIJ*TT1uO^>H+-(c??*xY9Q2n30xg2~QF(3tdj$dVKb{qQ}S|ABs-4%3f2_XI2w3dTE z5ycW;guYE#7-7?`i&7WNv5q_Xs7P@RKejwce5KZ+b|c1O&MFhMcu=MhsjUA=t+}`+ zEglE1aT&SKUriM&s{WV%;sw?`O&6n$y&U4XRo)w*zO|i)1d9&umJP*+d40WOiK3z*k9Uyc4`IL~0(g-la}V}kGBHFAH5vla z&8#Eu+;$wQGwL^zW(~i6Rv(y@|FJ<|1tWM_3e%pu)<7gzS;Byg1Gj%%VNNQ*7hA9# zENG38X^~8w^x10BmCJ(#KZx*r()6_VgWApm%gp-(zklM zy_UmTQ}IoAjcVgdH4nT<$1m00Hk0!!pHNC$>-4+Bl1|rNcjz&x=WAC@lVW1>_&1%i z1thr4(n^i4cg%}pt-PoMnVPc3+I&ufVD>8ZJE zr{y&A-dRn=_Ul%+i~UfKZNHup(R7AwYev}*YzzW?P!Jgf{+~e#U+-E(dY20D&_#a88Z&qQaQw;edGYvtcA1r zS{%-4%q{lXFG}!++xcg`N2Q2E*F8N@ELl~z#1K%vqg^?0N*EOyZzrLBW!WSxT z#{?99K2t=Dd`?x2{LKp16LdI@7>=6c46{LdD4&HN2@-4^e3WbV?hCu}@ zvs)Rm&)Zk$!K#>}sHA6yCoe?q$k~;24|sMmv5xP#4;0{8lE7lVBSM%5^D;*I>k{lD zU+4-}udchHy@q;CpXuJ*DD*s}s^CdqUpn?jGA?f%vN%x)2yw*Q*|eovqR09E*9%}t zZdpNLC11d5dwE>|MTi++NBsCzfk4S^faQB0>MeqcYeV6!#&%HmcEGxNuPjK(Z20f| z3E$6zGU%X7TB?Wj0`}jm$5C0kZH|mum|{%9H0Sj)%X)pv{S~^?2G1fR)|NZ=P4z}D zlG$CAST9a!hrFtvGjBg1s*Cwwv|g=w3PF}J?X$o8zupE4Ugm)J(vaM$k2 zb_HMRWmhTpS1nmq_iqHaBxMhNKwGGoz58BW^MIxHB#;(EfR3Om z__OUCwiKg)-kc*X2P9@?f)ucAz3fZN4BOu|lt@}_buvMvXKlz_t?eVi9E%pT;6EvDDu_2xO)Ys4 zd%Hcf1ie#C77`n;2W2=6mAALbHBjm-Z+KC118+-yy+K<4nA;L+{RHJ_!|}!L_;P?f z3{wkPeqgy9YHD|YRe^Hf3w=4wQLDXwK34ev%8~9Qd&%U9kzB?z+F-ta*&6Rmg*5~~wfzj*)MeR8Zo@>@R45I7bd*<3wrD5&c`M;-UbS)Yp zmI=-aL5@5|mE5?cM6@ODer?%F!2(y`B5S_mCXlvB3NmAUf80yYKtT61X&u(t8nSkN zIux)O<(fx3b)Vjvpnf=u!KlMf@2kKC2Rc{QuIdB)RBt7bQ_^SZT1QW#;jJPKyEv)z&aiXL&TaN zBybq;xAb?mPY}$+UFS*uYD;@>hEra&av}LS(mNyvPN2h6t_nvF!={K}4F$2ldo|a~)~#@& z`-O(<4Q!uvA@raiE0z&XUc(8$4K3r@T5k7M(v|kysyYo5UnD67cn_bY(d2?&V|It$ zo$KQdu0~)<7F*M^{t#?{00%XQSQc||@E1fs>qJuYl}?upq9IRIef&Wsnsv=K4K0TZ zy40q3tswl`tpFz{HE-M@XwP#2Ew>==2M~-!DQf1XjwR~d`goUy=Qs+=$^T|kx%Fu> zs4X~b!xdR^-4Zu-7S1A`!~3AdiwB2EPAK1%mMbMZ1*QPwmcA zkUw^yda>J~GJ-YCJNXtoOdVTe1aah6Qr+mPkwWx5gj*ceeBHt1{xD2YlDWijOEA0Y z)CpI4`zPe!odY-o(f^Plfn`Li`~rR=RkTki**V9j?COB}{xuJB{JbU&XkhI#Vbuuo_ zy5~86j1grtTBE&lkLj|>W;++{1{|5(M<(ZEEQXql6l&`A+ao6COAiDk-?qpnZPz_K z^mJo8(s|18dmPlRsNREiJ!`M8kOJP7sSl$J74`E;xg{ybucQ_ZnlG!CnFX{{O5KC3 zzTVS>1SgKtPGSc95x+iQi`7NNr*vJ;^*>G|KtC#WVe1`d^Q-dUusOhGlb!S=T{Aep z`1z^4NU$I~G)x>M!7)&pvD4wT zhFsp#x+~l$jZ~xN3QWq1@x8pjr`tJ;mQ2#2XqlI5v~2z!$U=>W7YN~jLP%`oD1fvs zvbE}?kHYiaVW1iNAvKu#>QgEjFC$qWt4Mwvb9L=^WB?-5gQ)U4Vz4ARem|X1AK}}z<8Z=z`NJ0xQl-KID2SdEA6E@A-gNbGhllO_U^9T#I4d$0wT+jth0Yv z3ibB+{+nvkn{y5BaffoCuI2k9~xBLZ98~&E`8@A>( zRPQX)I~K7w!jm1g@Q~p!P{fgPA|XBLCj0EM8t=(@(79b-VX@A1!-ngMozXVCV)8kc zRR7cMp$6J{EQ^Wgx;P{)y=iP{LO&m8l=oLlmTTvP@8j^`y(a}q8lHa>?I3)*1OW`C zOHjMd(FFpW++`8X_M+j{=U1y}vQJLJyr{=NfpJ6%22*Q`Wry#S63mcpR3vk4jXjiV4f6r1YNHw@(-rM;8qck=0Z zUd7P3A9R0csjAs*e6{i`;4m2TNP#YS*SWUH@MK-u>SU4EHao1hz3m_ffC&gGC{SNS zEIMAZSs0%3WA9&In0FjNKcM6uzO|`vlyiuq-6^?9-ElTf>W67Ums5Q#3~Gl?c$-0; z9rzv68XLAoG&kvI^*y1a{a4_5p{{KN6Z137@qJC0i<;giw`056JWw3fX>pjERK17& zXH{1FQ5DwIt8SK*pZ%|9I}S7ZWUbuS-mvx0*LL#bQ!Q`&mv=(z=^Yqk|f-BEQi1(leIxcmH#@cm5h+EPgc*dNmBH`g#i?Tuk<= zi+vaWaF^qo(KrZ9yaMu50t$wF4|fg7&Xx0_P7GgqMb_!{J<=IpLtu^#WDiHAldj)5J+22JA?uB|Y^Q^@ zr#^bzC6;8gg7+xQyr?-qpknZy>kR9-(o{^4&`gpU>ocO%?_ z5_%xhif(j6yW3tYQL+un2u_?vLc_N+p~{e(Y(v_3H}klNUuKl5PSk7dORcK=cwPWg zF%JSm>0|wA`bHsCSM_lZqPl}%C3`vgrDWXBKFptj+xUFwI>m5%ZSRg1WiWcr+R2gg zCp8$^2@tT7N*)#pdEEtWRclp3BWutK&xDO_6meTvnD?)k5*MT;FdwdAd{`IXS8%@f zEe+ie?swYZB2PLU1dvktgmR0ti&hRo?j3L6ayHRMisRwPZ%hY=+V1R%j}Lp4_Ojfd zGprIFn$(Df^@?r22yI@d5k|Vc1_qhK!n3xU+=*2CIa}U;Gm@(Pet)z@`DCi^FdtNM zkLT+A1GS=Es1IYlCIxn4ZKW9b7(u5gFM)R;pFHuZ&+L7rcV^x@JTUa1u2%BV=u%V^ z5NnF^1{d}T7U_zwHMAs17wi*3n)Rv^9ZJTbzES6bm|p!*9Km_9H%3y!JCl?=YDu6C=vhH^U@(F8 zUNV8EJvNwW6WRYp{n5dcENl(U-B!2VjYk?`AxmJWpkpZnhF2K$R~(YvvhBuD%iphW zT-&1%_e0AKk#m@+XDkT2KWX{3?|kVtj-BqDe!qeNl;{T*@fq|=<0Ga-(oN29Rs}(y zn`Q_I;6AELDs#<7E9_iby3(SP8^dDKw)msB+gSRO3lPWF7p1mm+_9mEA?8WjshIpI z&bhyBm=|h9v_A=+bT^O|xckYI@R$9;yjJ3}0!Bijz7PN&1B)iWz|^-i{WNOt&! zorkxrbg>+vbpO5{E7g-lSVfVUrq1AEO+;_k^~TH6(%yW`{7*CWssMFPw+Dc=98@Au zqfQ|9)|e&u5(Hmt=^3W9uK`Uvyri?{|HB$_vo)bEk1V% zDuASZ)G*vl6Xf#A|EcZ0ohSYq+9m>99*!=4d*WH^8Sx^zQ&x&!rzG9SyJcvWeF1&4 zxBtS!4MY?3>%0Ie4QRg&>+yG~LpApTAdpTc#g9bEgG1mjy|bSl9%qY{OG4ajjVMh? z&0M{tyzT+*B>N}~EX-I+kG!oI(nsAlJ^QMf|1$Y(PPyqnLOEcNWMU4RUeo(F@;@2- zBL)#Nq%Jek%VpmVgDNnS6cYx<7Uo}T?!yGqHy%-9E+ys-dQ_kmr~lv0O&kdF#$<_Zt*XG%f$p) zvI9GnZ;#Ltc%4`N{Dh4%%brUP&u>&RnySW@u^72F8$c{{ARlA+R3;e+OZLhP0o{;a8g zHr?y4G#1$}8+t65;C1g4ZO;e{2I7&fmzPqcwnfy*mAT!CKF05qldtC){&IFh%(Qcl zmc7N$`LJ6hM|E^AxZbzFkBs&WApIcQu9K-qI~pc{B~vvM4nB(nr-D-}Ucc$({NZuQ zyscSVl7%Cu-TNOrd22`d!_`#R$mk25lqyK z3AFf!H=(dYKmHhkIEk%Cq{$RFW>(d(?f#p~g*G`&O{VbDAR6gV$4(6O@ZAuV)La(< z1dDfH;+5jWUHj8ad38)$x^Wo_(@uxwUavgmd(3I19W8F%o7+#jFm|ivSq(Y&-Eu{{ zSzGb=?>LTvCOIB>Sp2DeeYpG|GPhplbg|u@@26(_H3kO)5B8lrjUE2EO7sm{=N&5a z^}yk?>lbiFle&(f;qNkrI*Qr0s_D;ugYZV$x4t4vM><kqy_RFih%7Y^i@7(xViBy_OHKun+fORX$Yz zOvns(>?UuDsGyblQ*leQCpCrm>TI-B{Ul5WeAF= zgsKxVdu zqL@r7IZqj9Na(rWDal-dq3lT4NFzLkO*kC(7)25aO0Nqgx$x4QJV(9>t5YPadTNVa z!MK@mucyna{GNodMXysB>|aJaojKCOWD!>I^{&q&GX~X?uKPUtP_#0#aXK26G*|%+XP2z=yP3=b?%ry zw!iHV9|AQ%UlJ$f;vpXXE(oY!2fTFNtH2;Fq0yqD604eAm&10$#SVM7)4>N5md3Pj zx45O*K|NE;eDqO=z9~RZarM88`D|^JZUTeQyKj>SAyR$ai$#(a?J70MG|N-yyiRn= zHj#WN90SA%thsm3G6U~7FOeFdN7qLjcPFaKZfS{fOSrRsX{X#HYdYRdo6kB#``?W& z_c>Bk{=x`{lyAetGOP(bIu|fBCv8mW$sS}1vi=&y!HOOu9E5c|<2H&8IN0BF_K3FZ zVzRjyAcQF>Q^+fZLDOm{5kSnag(J&+?KA|t?q$R>jv&H2ggo=s8l^x$>a-lHhy<8S zI8chXiSG}`?_27JdTcV3)(ixet8KV8c69U2RPUex;s;n1MPPzI?T0}CQPI;sKu8OY zXGAV(=2xV)JnQ=Q+YKdo5z%C8xWg$+Ty#@nnN z-`l7eaUauk>}HoAj5NLP6K=u2djRJ}Vvjb;+;~ZR-B3vIq;Dev@s2EQ>^?z1ifd#0 z+{D$RkURp|9M4b~@snXRk$EYv`YdGSq{924aoNg(U37)9)wykx4Q;p?$D_;pv%Y-?89X4B0R5DjJl539xng&MX@jV*Pl}8_{cYrcRSN#n9{sHpKRGSk;@!Zd?)6^+ObxUBZ>%J~9#Jp6= zsw_J(Kq+F~RVQChxP$bu?nUrl0VN3LFpID}V;?SSV{V~+GKex1rl`soMCg0d9fjCw zz`CYv65}*(+k4CB<+;pW(INoU-57b+Srr5arf)-?V2(AcBrKm{nL{3NE*+w~7M+(DMNJ6T(2H&@H(eNE;_ zud2es7^C*gs4F7?=t*(^^&dEYYVFfYvP^a$&~qT6+f7+5vg15>pkmt@;2vqg-@=3% zDg$3^o?w*Z6vCI@I9t9eZ6@4^M$W^GM;;?`zbp^9?O9=_DX~bt4={GNVsklp6g~{a zC;9DmR*Tge`>3(gG!(!@U9v~KjcKa}jT}|&*C+qCEok9qdIu5)>H zVq#ZowPTVUI1n?ze{J>DGbb_l0YdA`hk2vY+6$gtGxAI8n%^%Hb7EAt)|V#1f=K@p z$`&4-=~mjOAXFh}T zlZIq&IJKSMjhc9Aq(3GNgCoz-!0ZM2dd}?y#iD+IC<}BUA;5sk(U1b59X_E0f$}yH zL@Wgvn}J)7D3;fWGFtW5o&k;7-i6T|P|6aJE;oY3>V_yrZ3qzT%4REmS;6W32%?F) zMDy=-?p`X~QeAodR zfPHcR>PU@j+#s{Q#vB!E0_l^M`UB z7h`d0Dd@oI*ul`;hDOMa*JdnM*q9#1e3U`y>ljjujFAr|Go~gC0ac+asj05BU`Hn{ zVO%h8V!FyYvlv-?^_^>q)0ovNlIkHK2pbJ79py{Pc0V%Gc82TsOZD&&O+v9T)pp*k zux>vX#9LQY40@Z&`@+0@+0ePP$?{EL7b445Zf-MB;B90ma2}c{=>l zn|g?1{+#kNcW2@Y$$gh~tGjCl9*7cIIy~lOs@csQgF7rqW0+C#nJHmxWZOMy1iu=Q zq~BACG);*8A{xhPUKXu^iP(zuIq;$EUi%Hw_NmVe={GA)^=QDu>Gtc7#hUG;IKNMK zD<#DCVgmPHQxX=+ZAHYTaXlcQ?fTjTw=&0cIpsbo5H5c(WGkNzrQevLFw;gdpOh$A z5gdz~TCPt$S?!>0apmX8V8Y#asPpIRqefY(#@fQnt`RP8)A_F(EYJgi3qDJgqBAzXTYl37_%;rz3{LN+*{d#_{@T zsc)X3UpNnzi^z_T!ehx!)LQZ;h=bp33UX@lc)l^C7(AAEK*JZ1|BDAC@r~xiwRJZy zbetg&2I`hO{P^%6yz0G#@C7CPDAVE9EW)N`5JnZC`+2m6T=2e*d11h2c#8qmn)5W$ z_@r0LNp0V1p`fS7!sonlzz8%PgDA3pW*6hpYQkMUb?tGiTYLrTe>XZJP{jGq-5MrZ zM8|-@zts%A{lD1#+;ksrmM5$?d~#gR-$75<&_ImTO#$T_uQ%v+*T+|#a!v_NCVP^r z!(IP!H#VFtF#;46u>yF3uq2`e+T90o)g#)4*(nTgY?g`r*YgOV<*=-*W=M?R z6LGUSzP6v~e^Mpf>oAE3F8=}I1{7B3w`G%9fq(x&q&x1Ti@@Efgn^|w7q^`9RzklM zd^gbG6feI#q5py=I$u*nL2R@l89Dz##+%;NTL0;96TPj*XzPsATnI~SZ1wV5CSy9^ zOf0Xc`Js-@g8>e(4|=GwL?_xY=Mrga)0ADQ0bp zhOZ1OIHe_`@0zvkC{RXgHpSimMvt)f0PjD{TbDE zPif}H|Cy!?TVUI5Udn9qTfohm4K|RQl}={84EARs#su})MxPJ@wL#D#Gq(3h4(5p1 zj_PM#ku`r_vz2mZGh<9M0hZK{&hzrPoOe&|pIAwjY(7iPG|l$heqo7;eXmt43};pR z)C$z)Xk@=1iENOtY^%7G7K!P)Yz4ln>_Az3`GUwj!Jaw}hkC%17vC4Oq`TwFvlqJd zWYn`+TK@8Ye@_BxA&HZk#~8&ugz*96Z&xvG6Mmss%myLQsH9$wP@8Y4e~LDj0%uPl zH|B9vLQJ;B*ty|qI-s$*Ny6RaXcY(rCI<2Ea(PrrJk4h5|5M0ee={Hog(F5Kjoexx zQNI?3k9517AK1&`s1*3ljvZ4V6@$=`JcE=%wOr=^{MHMOvb(28kaaX{_Q%%YJ5>+MBB9ZYUKYkb0_goj00r_UBVPS;xh(ARip=1u83* zw3zPCmmLKMU8za6b+;w1l8BgKs2IgTvBan~Zv}6^+0E3|*s9_&?brcZzaVlMR~}rX z3Ro5(BObia6^rtYQbFqxGxGO=L}JsG>;6S%*BD&8Gea3EF&Brnn(=Fr-ht}NBS)I0 zR!JJ~-yXAjX|lZIB^4#v15&BkUsNhTU3&33Hq@Hbc&1Qy9FySyS>&u_olr`Asm9ubvkaW57FRUvH8WN-?lF?u&JEjlpoTM{d$p=5maxbMG!b`yjB{ zQ36>976w7zDKT0;yp1iWb6-f1jd8o8eKLe0OIhq?qhVC*Nnu;zwINjseO|UxOCiL6 zxkTu$kX^}GcHA$QLh;pgb7!3jn5Zwo^6qxl+GWvi$z&_0<#H(AZ{ zM2GODVz&_Ucw#IRhdl>TxQeK8!{2t(gVzaY{XnnXcxLaX>VjqDZz+XQfTr^5`buJB zGLU~4$v50nE%~mwCkukXr$@07B6Z(0u81I1;I;*iA$rGlK?ub*!R+Ly^yWlCE|G;~ zElw_-b#noIMJPCeLBiNj2-He;R1ceFHYchtkK~Cx{_(y2+Sj+*8YwBD_&`<+O12`> z{(_9AkOoUL70s8Mllr?b*HpGK11$cF4XM8F@CZE?M>Zphhjf4XGXa~Ohz+(q*o$G(>!#wRMcC6KJWjD>E1j(#R zQpLWw)DxYSZ6fNxHr`T90pUp6#t0~1uqY~aj`Bb%1s^FtT`7pF7($`%= z3^Dzm?0qB(ixfc-svnv%_XCLXY2(Wy7uUs?{P&(~<5Wv$=yl)%3aNQDhcKdYiv;&= zF*9O45jZy^p)(JEfWyUuJ&6!PlJFK#(HM>?9@`q69BA~+=-u4%c+p67QC3Phvl$^F zBw>yzfzsKEPT&!dtm(I}?@EpG`woJP$s$f^)9<_XQd54_f)EW*tO@&ZrP^c=|J%=z zvC`FMhAj&#mSTRJl7MX65c^z=I_&fgLapx_af^Ov>X*(v#d%@~AafeZ9?5{>50`k8 zykuUoM*gl2IcLWAPaDMlEK5ZAeQ?i%G84bRsQ>VZNm#)6&BT+c<_rFC>iN4{#~8!t zqEl1e8S0nt+|0hprA#ssUz_j8{FwC{n-eFncbI!zt~+OySYCBKD1eVznw$b6PEcp~ z?C)XBaG;}CQygMCMJmf{{Mkzgyr||@lbUK0J|zn}nmiWD!WCmB{?;!j!?qWvu;U?O zuJtEULhxirO-O(_6*j#%7g$-igb#Xwo3a??QJ_&iO`NbGypv(tw?2 zX+3qqiKuV;Q1a+TU~aG;Zks~B8exL6PeS&h%(t3gycs<8i#cQlCL?%a7owQM9=4pV z)VWdq1o)l!kgdA8l@5fqW+$B04!*tB3) z<*bH6VPvR-Nxwjc-G8ncO|nv?+aqc{o*LqF))MzZwjy7`KRfNQFZ*ANVY?FktK%*v z^yaK%$2|yCsrMYauzJ5VbJmj<;ym>-GKXSnFb3T!ikZAVz zr#d8Jr}$1G9$KHzC3?SoPTb(5XAg2vnC>fTpFkKXE+GTFHzlhgy6}F#UrxJ|Oq0z+ zVMi?YE#_4~yC(kO51%n`a2SaQvHSrN7|`{cP{@`#2Y1iCh!O`e!DQKx`gh7_g{~OQ z9{1G8746H4Dm8%-QNWgat<8@xq>qn5TP9iA7oSuA2X>#IXR&x8?p-d>!~Jz<=*7p* zSa##W%paJb2TGB(dE_+=ipU>P@&`g2hYG~Evf|vG8wjeUJO?82kN6<#zA|>6@oEnaq-Pw|8pPD_U#*uJYc7B>6CBU+o8AJ-% z8?Zb`%RsKvN^#=Ca@nmV+P~V7KLesk%SUVjCG@+*e;#^LB3WxgH-6y{UlfquP9Wm4 z|NXO?8zl56yrmrmT`?l593&}RUE{jZ^0W@VxDmVhydO}Sw9ohex|H)=9x*5IK2WI(t`or^1 z7qtBInmfOc*o4zY7LS(;sLXHna4iLFmpEOSytP7!TmL<0uk^+zZD336?+mFBkH$yo z>E1utgiPsl`Wd5>=w$m>8yxtl*^(Bp(5{&Y38SIq`3+*ao*+>#G!eNtQWVfS6T^)s z*(JDbq}KE~B|Q0E06lX-q-_&f?im;SNrO5nhChS+0h<4kcOu!K1#1a*qFCo>2x&s| zSJVpD<6)$q=jIf#Rj;uYym;Z{RC=WDuBen@?3yZ5&UPccCntqUBv_;$>R7#`ck0;U z)&{F=;VifHO2Q|AFBJ3#N;2}{-0uh=$uKpL*B(f zf3F%aolF(wuL_6XUy|cogZ3;ZB(lZL;VjNlYG_&k5^>!hS^J$$YzE{_!vbavUAiYP z5PCCKL&3vWsAJiFCB`~>j>?xmA6Nk` z4QpU6`bJcFugJ)9byjqqjOB{9Z1w+~n?j3HQFDj-*0-EB8hG-JP z#6@z8|9_i{HAB?S=lIcBR2qHcV@CbAzCsjHM|Cs(*D~Lsxs$sRz4$3459UNdd8^w6 z*Y(L(ME5PElg6qr=SNn6rzGKo_TbE9=#GPSzqqyRB#+{;fq=+ArtRmaFVHenX00L#Z@}KU;j5lznbdX>r$$7|VTX@Evil zVbtL<;SglsACrbLnrS5Yh8fZCRt`xI4V&x&y8_R_b`HOm6p{@$Y)*II925l^-RSbz{Q_V=yB*7gqwt0sN1M&QSzx z$u&fVB2s~(a1Wk?k%)_;ebc|^hAT!40fpjDJSYm++NnkHJ#OKLq}UJ4)OvzKfVM0N zAxKn-Y>upbDl0dL+p08rDEk0XC-mh@AC@v)uYoeB%ve)kK(MCZP$qpsX>u%^&#MTw zx3?3tweW^W#lqj;oeC@(#roF_iDMfP`2mKGxEnCSVXx|KJ|0I`5E$Zb)mGtXB-=#@ zdcX*Q-MJ_wQiaEdAAGNRlX>e?c2^HfMh2D+pXio4S0wtCqWVL9Hrr^)O~F1Lty&Tl zRXn8rGeMl|mromm1j8#{(Mc~JSs&K%&)6E)br2_l1u%CjuEno9jO{BD61Q@XJTV7f z1wt1OYU!Y}(rZkq9vChGq?upHMsbUTV5D0mVI~1Bk|?4pdi04C*wcs9a#keLQ8wDJ zALIt14vFS~8F)2I3@ai~3aY^6;$%*K8~nc&axe(8$Dph(vylH3_5X^6k=-uPx!9<9 zS`vD`U0Nr(l0jSJTJPBnWwz6`I@HZ@-gXq1F|akVE1p}gv^pR3nsf5L7Zv6sQSf7O zwbd?ij&_&V$Lsj_{k~B5rR|p>`o>C|(Z6z8NU^}N%fB|PF=sv%KjN_``z)#!iWbZ4 z=ym3_2E`c;%)>C6C*FKz6Ak9QR$D);T}ir(-4g;1nYQ3x@LgaTwZktU+7pid)#-3C zpQ{KhEvbe{v#>}|Gh#4th!Z9CWz8xRojsxag1Z?sz=Ne{2&hbN_4~Vd@q63NQa7Or zB>)xlBzPVq8HR!17a#z8czXjOkc9Ves%HT-iNE9%*%3TOxVm~`sOEEw$iCvf&% zPj=oP*`uebm&JcK5m))0I~E^VRY;MY@ld5ItCps=m0QKc%ER#>$GL z4qqOfkgrInI912+@wg3)MFU^SUf@`~lFx-vyjX29Eyr?^cX>~?VtNZZ#N^RC=Mo8x#XM~Dd8YNce{TfE zX(#N|Z-{8}s6!}7hjfPMFxib&7-==WkJJChls$-(RDJ2@m2BzZ5N(ekf=RAjCivs% zd2SV|Qhm|TM+WNx_vR=Tna5rVSUS%@zyDKM9(4Li1C-l#eMh99RK@hIjPCrthZN|- zz=f(a&KY@JwWjrx)lZ<+dHW2 z-L1Rek3>c3cGJ*_R`bO&Bt~hp6^SAtrXaxO{CtN8f9Z{U5Pw0sfrTpu-$FkBYmFHRL z%8vAatA#L{?RMaWZJng#id{Et_RJO8G7r?B^xt(XGxf*)OcEmSN}3ODTK=uSy?cNu z&S2PA{RD3OyX3IxQ?jVCv}1|S5Hyq|I{=RZ-Xbgz&q{GM@Hse?2ZpeOf?}!D6L;bL ziZ-`O8*m)vaN*8#4{zRhY*woS0KQA$=Kg=!JaFXto<uol4NhYQPe^<2yGYZq~R#K``DcGGF2=>FI5>SeiY1GvXmJBWf1QT zt7_UF*f)Lqc%bBZT=&1aTliev@+3xuH<%Szj+kt>|A4@Nf8h|4`gg8FZ2@54eHR{@ z`kmX)^aWJ~X73yezCOb?+Ezo3AOto@7Ssd|L5aB$y_%@$=o_SKq4F?7)LViGzD@C=X z-xM1_XwH0fgp36EE>TjxLxsSty+jA18NGkD0r%^qJ}GY3U#>(CYwnUUB<_s~_(>Od z&Ha^3X2}PnK6rpVwtqAXSEttea(gJ&?`3+RrrET`c+)dD-X}Yy^bctl8yhmj`))k1{<^LhZ-xhKEE^}XA`$C8NCs+4Ne9b2x@AwOSL8d5Zkik$ zUPkKr24Ch{sH1~D4>k0I%X>-&EC29DW5_DVecc70 zR4VzcB3qjsc!5Hvp-9nY)y=QjZW|7>p-cd18(Eg^If7ag-r3?F|IrsbcFucXjO|Rv z6GRy~nnUT6nxG)E(h%NsHJG4ex=;k4JZy8C1sNeSS7k4@dAyD`)uy8b24VD5XKjA! z4`(xF>OcFdCuu2?UDI6|Zs6`m*RK=D-fvF7pNbE>Y5neqU*GBO^m zpzIMfg$fg=sDj7!e_oPK7-&}JcWUm~$Fjh$@PE>LzK)!&z6GNZz8%89?U^aLTw*m% zM>&okCT#5vEFZ~lN!jpARP{2!oZxVIcNEu=@>K^TwB5;^CC?KfKiGd41F_12>~sk`%#|GW(|7SH=jtg321Q zteXyJynAm}V^1gKsFi^E#k960noAFO96YySY6PoQ$V`?wh*n(GKcH0JWCGFjZ*1P* z2FBN=ErZk!xAu$E!QmH<>AyvLwL!hDB7dD({P?_Ivn<}+9yahitEK=cYOGS+h4bFE zn7j0>(mN|1Z`nGX#<6|g`#zEe-O$cDoE_>$KQE3u!VVjJIl+(+@iravf+3A_n%Jrq5 z(NRrN_>Y~`RbFIeTUR`$-G3fOg7}==bFeI_D#Uct!ac;e^FzLpIjJ(1#2Ay2YTs>i zI&IN7vkQ}064^1t5mhd?fE38?V&GwnfUqr#9a&*VFog1ef~<4@K<=e^tAo~p={!!u z${l0#iu4{IwlO@Rm{MShLcT931f#7Z(`()z$>JM^FQQ7!%sw zzlqPsIe0|`;srpoKalKqUlb$r0%9R^rc9^0D_O7v~CNgzmSQMeq*%~_|#F4pet zCjD%&LB>tL0Zu907{FkQz}6&I^Trduj$PvzGGhN>8m>M1#?NPVH)&-;8Wt2_AeC?$ zfkA}Q@NA1QHTU%iJhisP3+ZMv5e@J0Uz-sSK#K;GnxJwIxay|bef==OLowI;v)5J& z{}`J}LeDT)ggKZ}zU{w90I!LCRO9u^pV*aBy%Z%6<322olBCjhG+f_j=dI~xQ_x-*%j zlL@&1C-85eb)=P3D{A&BdM}1|?o=Fzbv_)S?6-nHvvk#moPboDtAVB0Tru#%gpyxK z=vj8!+KWqkmQsO6%VI6AhDF_CjEAhl2J2yMAyz(~Q8DWlcDFa|2^I6`ku96ifXB3t zjR%F|b0FI5fBQ>Pxi~7d!XtZ@h;EhzUXk+l->tUCw@7z5;X_d!AgRke=VE$?RwjK@ zpgIYzAd=(!%ClFHX}-`-RFy2|@m0>Hz%1`<78$w`E57{8JU_`*S}8CXG^)cQQeKDB z`t)2<6Ux@X-lhY7=uCLI(Jxi+{7$QFNZs0N+!yL?MN8-L(k3(Bp1ky2%6X@|r#P=jbBy&Y^ryOOG-w_7oYT=CVTpJlI6j*HE_ zj8^z`=3>lklZ>ME*3jgHLG26;)RF5@K_Qw{m9@y7*_kg4GNTP9Ld1FVUFPjBelSIz=B3)c24;yaYV;Zze?FQes-sWb6fV^5x@#5=$mpX;!^{YcHk94WbrvrBON|xvV5i@_s`B_ z?e?Y!s#0Ebob#^B`2Je~hFDu2cHkNF1q&?jE%QO&nS{Lj3;LcH)vLoCuxT5j)o`Gd zuy}0z{l>gIIXwF8fz<8Y z2ZAR{txsg>MSE9x1NZ$)cujIS3i^t9nqY}GnHRZz>g>F0 z0<|VkFt(~;+`V718s%@soPilB@*_#mH#r~!_g7ckf4BJ!(GwGZtvqu0w%fdsz?xOV z+3VY@sc5+i^%?ZnX-e%Xmk{08*)Z0x!;U65D%$30-+7YM&hs`yRHw<-!gNd9FfJm8 z>@L?sr%sErDY@N1)0Jt4`oNe{R&@OX)v5OFt8pm$LZXY>>lqpNyVw!0?jDqcV5J78 zB5$CQ&6Dxm1)MAS8&I`i;}>oS>TyU$R0L~k|57}6G&f4pI9aX7U{Wrp>q`cVcfiUETJWuk zK7L$l*5Y3XmVTY@vTnKvc2T8*}I zN)GV^!xMzvDW*UQ7R4|@03EHQ#0esDs|>H(=}D|SihV7_y}UP{gzu}91n zB?+uZ9NIhw=B+IpP%`raNDl%Os@|*7s!umBt9_oi>hlQerPAY)HuHTLNV|sUtC{KGmja9bkXXY;Xr7XU>@w(~7vdx5txsc`5e0-&v20RD_PG;Rk>!6={` z-uD(?SFMv&qw4DaW&yO`ZV@tly;V+rUvAN&VaY!6b*X+UYKmd;FhjpbGn<&vMKcMJ zaR&W*4ZXEr8V5dM&+)k3EF=6w;q;uihYUFC??v0pfHlA@mYGH<6PCCX-o&rvP#39` z#YC?fl-mtWh{Dsxg1)sj|4(D9t~0U&1Bp)dC-*au^3*!e;ZO<)mMANDr539E!`CUQp` zgurR@xYRg-jh&BVhUzdz^N~fXN_Z=>FrV?)KF%kSVNXiR_U*%zl@c}Dl+5(r&xMKU zL+)!yROzvK1q-^b+!kAFu)g@cwM7+UGAK51Aa>;b{Zq;ZbCYXXe4d*^s{wb%AkR*J zR9+}%`U7Lv3reYW6QRv+ zn#pGlq_vkd9MeJuFLn-($wSa~N>vbfkH5BTV|ND%S@m`jx9Lh5U^)wpMzP(^wvgQC zyejtU=3a;b0p4zQvU?${q1okEqr7y@ET_uuSmr$?^TOJuVb-DX*3R_0s=%3(C+*>< zZ9DM6-~*MQ2ecWDCTp{^o_VA#b51GyJexRMQE6gSOVZio!N#q zUN>A=zoXke(H6WvX`?DXRobnb9b8n-oV|v9^-FC~X&%Ki%)L%#q7^_J!c(q;WKzO` zs1d%+4Bm^E&`Q^9b7A;`4Cf}Mq)UbumiVwZ1&r*YXAB5ERvLQ`E?Gv}M82xk!R?L# z^7d|)hpU>odFqX(k#(!bFoO~P-@F#l=y7a5cDfI?)=#7ktWP{z?8q)4gYY{?#ti20 zPK9~1D3o09veuw9+tOGI#vl!-)X_kn=g4^AoS|!YcAv7T9gL4x@>8y~035WA(?7Bf ziy$&BR}j!4bbb>rR2RjTU#;IHLVwyBT>062SRhLwJB2scMBP2`53l$=U4wbc2M<%= zs(!O!`!U@cz_c@Ox~$dC%Xt>=CC6{T{}JuwJ|7 z4Y_ao8gTkA9n1P>9Xb2;xCFt9n@ZKC=Gj7_l8?orVz!>El_tg27NpH^% zM$(rkD_N&t0bAosVOOMHjS6KTSF8yM27w}{XRb1_E|k^{*PV$b{gGTNu|L6lqK!<} zm?3yKkACGt0H}T<=mgFJrXD(io;)uIj1rZ(pAI;-=7(-Z<<+r@4dQNGcg{8=ve(L5 zg~UZ)K;}`-BUhz%Gx(=IPw`AKHgFCOmPZLI0a$o1g(^*Yq*CD*Co)ZnqY8C?AoFTJ-; z9*X8Y0<}CdK{00ZW73rQI$}HthE;xad-Cb=#;KB>Eaf$A&-qQmWW{=XYq->h_TlW} zxI{bG(21+_b!?ug^L=&IO{$uq!UaQ06QdGV!DDukl?Hx1E)+t$uLSXErJ+n~eDV$@ zMyrH$Xs_x0Bd6Vm7#O0dYnk`5$L-_m>73pJ)H}NsT%Ze1zGj_9DVwFd z08ErMNBHGu(@!}=-x}f#abVJ#suv6pa27)FbGMnjmy}bzz6Z<)eFBLhScJCaUS0fx z-~0>QlF<~Pp^>$e#{<8bDpXZ;^2m0^oN~h!>+o;9J$}k^!cQ^-x57Dyq{`4VpME(o zx3s3&ukSszjI0UetEwCd0hQM2w=E;(UkG^U&+5fsZFm)|*KyF1X7&!2U!83oztEzE zD({jIhS-`f zT&DRrWpU#+!D0w~9^3vUSeX@knZa}-_QS!29T%^aG{ChPS6#=ar zhGAQteQzyrN^t^ovGqjA3(gswd9Hg*~sX84i&V{TT!LgkUs-!R?B#DjA9p z@e5JW|2$4U16R_>hP6BCFr90^2q*q7#4pDAE6ao&_{_ACzFARWH%mFTGSM}rz_~1U z?t--MZ6Fsz^h{5GIs&I5b`;M5L7ESGmP=#;PhZa_z9vCzb0NxNFznal)q^ekFDwD- z6a|NrX1%wy;Om22IrQ86_Yt<8m<}Q=CIQH2t_SNH;=Yubq_T{_r@=*;PP#y-P*^Jf zhnrcKzS01RsYUT z!`>NMGUP(bl`HVjT!D40UE+f#BWSUCztP3 zq-Lg~XVnwaypkxl)`bQOP($t!$<=&Au_QE8ra7o~MkewkrjNn11}w=Cd1<2mH5!yY|{ z+`_~9=W|whOl7_e5@I!t7Sr>sv~{eHJ10WhU}IT{&BjxejIJ+<=jBFQd~glpkQLFBERHcQLNnC`6c zJx)Eq*=Ly9Gz)<^;K;frdksWht{ z7op_yT67YDRre{RKFvqSMXTLK7bq7B>n|&;P66xBw9h;2+g>p}PEA(1PayOe%Z<@i ztnfT%>F?)%5VDY*p%t}%d0H(`;WkESy)>v?OfeQLP!(`%Nv431>&TZ3ikA$Q(82E+ z*n-?;qNk%tk_q}I<{Qp26<}xcIU@E$8~Ex{19bi5>3AN;EE`^1MgDPaSt4LUwB5qc zEO9tFvVlJxz-d(EFw_a!{yLYhkoLps%yT?ieig+#%tAS8dod^qj3+zl5L$_v`Mb%@ z+bMOYf3_#*Jf5KVmv_%j+uf)02z++MYw;ysoOgrBDmPJiN6)~*0ryFU1uEUaUOfmY_{mT zM=W9G16NZteMRj-bXH4M(a(0qb@{jyM|MtT$pR1p6oO7OXr&J2*l8v;h5Ekl4A`DE zP5GI`$4{`G#TNgBm#T#4&YIg*pnsX7Is;JGDvL-YtTsX6t?2%Yvi< z%F7jl?JuP(juaM%IrXG5V?$Fm&NiBLT_3ufB%7ELd|5GsY_);2461|}U+gNP6v;c%mvE`3`n0}5VwOdeBDA@7pBDGHttqTU zbZX=th!}He_rD3M^v;v&w$WH8fbIUD-gDe1eih&2vmmSb6U zXF|#LNBlE}z9q&@{u--~n=>lwil#8m(N=@g(7~DGUs)o!?}Q1%JxU&Pw%?yV#yB|EPyvTi`Lc%;!zM1K?e0$Q>Km+^HByT z^=BgPosPa(&C&EOTl+j271M3)qvziW&q(NGa(mqm>ow+Sg_N24aX-=@=TTg{9xJ*y zs`@4GlYO0+eCQu`-S4>)*NQnt-zd8fRx)r{>XEN1*JWMJ8EJq-`c8sIG%DlE3#N~p z5Po2vyl-0Xj&oWeV}XI7GZU2+5n>RIEjgXc1f+=#>lIwV^gg>R6&~q5*GzQZmpihm zt!)`dyCh`Os*p`-4;|@kMM}e>G6oraB+RKwx)Lv;X3FK|aXx{8yVgJ%>!lKc*!;QH z)i-OBADM~yQXyt)aGt7BcWxw%YE49%JtsfdnQ+)J4P8I67Q2x;Ji~zAe@%Bce5$&4 z^w%%^`Vj@sl_0vDderFT!0Gv&!qnpN8bLNL=7~x0BU8YoSiovzA^RSPr}m}39*&hRz?WD0fBslswhaoUqcl7FfaUdL+;u4 zwN{g#h`h8K@?sHzu&g~ir}6i&T=eRm{de}qDnA+VA zvHPclM*BP8MyjFe7Yphoad<*~hYtG5@do=IVVGE2E9TW&=@D?5DxV&=ZuZOD9YC_t zpZDdU7VgszLl4jN`IFn|*IxG*`_r}0rZHW32F0+v421?g^m8?NDE;URh!(L{}jYodWG^U zjJ`E@Vx6({CEp<$L2X}w-^2k`X9T}+f;+qPQ1Uu-_3^39^LSpGls8LS?DJfQ`y;P# zmrchoZlSy3BTUuq%&;gdvUi~+-cEHjaxhaqoC6#z4zV+v6^06W7b1EbKM-)%$sN_j z+ToqkxF&t>7g{AiJ4LGIPqa({0Gy6MRdE!;h)B@Lsx&A=CIs z7Dq#m4h3QMuvsBJ(l{EE+y1iICiA88>+tsb&NszPaxNkZ~vDnkyAU!~@~6owquu8njZy5(K5uip?62)pi%g{S*8@Gs!} z-)vz>BQNcTT)o?}GCod;eQA1u z6R8Q1pAv_XVmSC@%1Oj|@9t!kb@j5tOZlu*YLgUbheHP5su52m)W|wCL%G5&xS?ci zt?eoBh^PUR`!(3X!g`Uyzqe2Vy(71|h;zk?(f9kRA&cvzyse3755+S2Q$4Q3L{5MM z6d2pfuQ<9ORqtmCR5ngDN3=TGE#{!f&4nV;Zo(X zqQms?Uc#h+jeiKPoF+IOL=a_Pv%d0{abxB=G;J-5BS8u2 zKJAYRqEG%l9N&KinZHfd86uB;-N*zdRTh4y{-^7ZMV_-GXj?SDp82PT3OVSjTw##) zSK~(>$vNh&_4~H%X~(UE(Ns@-FhDqT&v4)jq0=@3z{xxs%y-5^YVohpXw^Ai*H^4{ z@wqJP$kz+PQv6=dVth!nAW#?Rfa4CCi{?+wwhSt{g;q`tL}m*gdQ?2ImjEgTMGdu0 zG~M+||3rVQKw(Ocox>n3sge0#uFvM<(*P1^TQkUVOzO>P+Nag>{67vO3KVrk)4(c( z&ti+Ud%*TlhI~k1i>7y~922)$2uAPLQ-(J*;Q@tz<||JJUEf?L z^O11y1HOK9TK5uRr_SUKQe~rTo4}@ICc8hF~P(F8VP8rE-Y5q`Up6!o^&d&$D zV&*ySP7C_53dzcESn3MeyrjGWZd0$0LTAf~NL{b}Q>;&q)$!~}+71^r3b)H~%8Zzd>c%jpub zFKh;yri%9yJH*Bb&$aKNsl?^3LbsxmUf|>NZg0qMY@r&~VOs69e?4@IxC*smTMFzY(eSrXm(B7}q-FGf9uW%cRGAJ!Vgq7fRR z|9%@$ao&E1wT6~Aws-$UwH%tQ}MCznpuYQm%p-A zX({F&q6cJY(ezPQ-$!dZdGqzm32R{TVMN!*6Mc&C*$OKAa0nLs^TVZ; zWpaed=@)Cmy9zJh*!3(9Q|)l`pi$cTOcQqJKa(OBeBOr_6;{)^V{Q>9K*(ai-+^uQ z(6!S`J%$$b7yBb)LPAkty z&n*P$xCrIn&`+5HHC$}y+xEi54Kq!R;xyOdI^Zux4qpiz_9PYi(z%2ACVx{BLd%=YMEBW(jt*uHa z3<0A!#S)A^JpulFDEpIqnCKIVw$YG~e@e-1PTKQ!sR0UsO^99yHx39o|!$IZDxBfG$47u_blUH6A8Hh!+M5tB23i`>=c zOLK95T@cRYXnPD~ZhC&YI1ygaT^TvK?V*|X-r4WkI4Y``i9t?EarN6mu<_;O?A3bK zy4@<{CmIuho7!4HPgGKGTSp5go3vh|tN-{yJtwkm@5*y9Aozi)sN3x6NO1-tnRuV) z?+&BxS|4E{dB1+?fN=!v&8vW}Y2K;%x|OC)na`H>7cNNItqr zg>zEZKgN}TD^!Z~2Vagorw3xcHpEiD?r8-u>{XB?+oL`eKt9$RB#pv^jC zc?dmrec(dEV^r8B3Z z5Jn`PO?>K$t-9x{+>Cb2PnhE={)6)gpmoP7iu}?Q^@xt@@i+)-ZjjSqnueeRCAue| z|GqbQYKdUB1Q*#;V3joX^4ce2o;caC=|T}`j@6F99^VwLYON6zTrWrdpD;*DEB6`c5G^l^C+&hpvh$iBJ6MBGrM2Nrk0xllQ3o!vJ#EI%okp7pMGvNi;4?;EU z%PD&I(x*g)whKle4HrkQ*5RmdEV8Vu@sh5x@QV5Ujpp&TW z&wQ=|2D(`W93Xx$LZj0$>4w)Hhguw!9Iicw>eWyOWfp*2QJcA`&Ie3kn_CWsYnSf`tLIj8koG0Ij-eH9D+X`TRIrMS!S)B# z&v`3njyij`L%(dJGyqnEK`I}{jgc;3xa2>?56gYzR@#WrFaCXDeKJ@iXw(+1SaJL< zYceS?kt&H^Iyl)Nt6Z`82F&rw5N|WgdJ>(@WjlI{;P_D|PrF0}k}tewBEyi+N$mxY z@V8aAv1D(Fc>-%`CA~pgvJExr% zHX-I|CcGX8{5B7#*S+9Wo4%RfMwV!TyMOM7entJH5uuoJlrZI2eJwCJmvs2M>d_l3 z`RW3y{?b;zHShVWv|W?_{l?Os@N4Eb3!40c0Iw7}j4s1DdZsPJIaZRUOeafgq*h9% zCuwxmE30f>vdpGW)P!pUD*n(W7BKm^-*T!#liQ6~jZ{DkVy^Us%?G%TpNuNlB-SGp z9YozXOI9%F3E!NL4Lg4C>fk80s*duaayG2Go6`1sk&%8uyFEIrK zy|7NReezr4N-?;T93)Pd#hZ^`p^x4_?s`i+bM2g4#4@CpJ88552S&YT#(LW@FCn?C zX+qg8>GVy}r`5DE6ckg0O2VQdR*(JfnKJ2o^!iT0I~5mre6GTiZ{~DzE86SVK)O&| zf8tn%teX=q4x0QTOz}H|zM+Q=N z=#B5WpvUqcmT7fj5&0YugNduqDQt0O_W7p5T~l?o6i4CdjrB^eMS~Z<>HMQc)GKvO zCA`zva`e}k3(S-a5Ns5*hw0H=JRl(0^Stuf16h07JC#oVBST^-msn0Aqt!`%KB0i> zC^7$_Ww1c15W`wGPY`lamAGwR1Z)G zpm|(k<1B(X_YO?=E-s^RZ61a8Zb-nji(f4IPJ+8gk95Cnv_bU!>e9szSC!j;w zs|)yT%p6wH_{T}qG{*-siHi6yt@x!Xwz4xmji>jh&e-sGHhMj=6-eSwS)5;z z!1_6OBt`Z?Fmv*Wq7>n)B=Wyw=;jI=i{9j|O)0*jQvx>dA(wrR0?b`S*}FL?Jo`eN z@9}@e75nrIqn$XPB_e?dWq}Em$|a5VLF^+Cm<9Q>ZxTj+|E4@)Ncl|RR50=q=oF>^ zBDA1oy2Qu%jMuVM*eOl-U;BpR%9P?*)-z0xwZIGrwrzS(dfnjdO?bR)Nc#U;oC*vx zF&-Mi_=rdw;Hy<5RHr?73Z00uhvUot&A1Z)%gA@+!iDn#7Hg?K`VBLBGn#<@n6OMR z<3?n3-7Nx4>lS=%%OKzJ1unemdRX1yxbU;x&tGjo@q*^0$0BMT;=MpVC>UVZZM-M4!^Of^4u?v+kYbJ*+>KN-a&P+YU zj_;ckMY`U__?HwuK3-u%)zKI^peoyvKY(|53PCSaSm56(TK+hTLV!4CE61w{x?$O3 zkFlK~!!NZ~^oW7p7$AG0<#MrmAjJ_gv_}d~hsq1e`=_7^<+A_!;e+LD|NBfD@ zfuAwv7}-QSEMs$fel)MAT--XVqbrSvX2k8y?*5H9Osw0CDO*sOd2;!OrT{piQ4Qyp z4j}71(5BI)P4KzQrk%RTR{Z_p&Q4Q%G4~Di8Nhbh8hROt!Lla(%ArG9Ud>@WE?fXE z#V34XH15x#qGy4}h19dieMtTf16Cz~j;v_9G$=M9m5^4X;9Ax^L+Hy@+=uTr2~bYf zH30}Z@#TPnEZtIL8kgMoW;^r>bfinR){umS~+t|>LjhtCi$Z&?$4kAUk9LrnO_^onmZipCYK z&LYc~rN&AQNc819)dmPKJFeYBulz>8v%hT0F>{{|7Zb}J$O?X9B4*+~*|)T#C1t~L zKX>Kw1{c}m7n0@f-M9bSKRyk^t+9IxQRLsUtb+ckqJKvX@4$J#to=~CLhlYpz-r^0 z{zfZ1J9IHh&(6&KM|pf#|k2!hQz;g+R5Xl#noY|Idjb9sOhq)A%VH`HTe(lD!*^MWqk~N$8gug?i*8 zKi8P&nm!J2M_6`f$^sshTQAwHA?q7s5H_E1KshIp@n%Z-!y`b9!Zqr_P(v?p;I*aa z0>vcyNN-Dmzd9LFP?uH1YTsS_rm7aB%LKCEIfB1rGsZ_r3ej}7b8k6+kit&h+V#ZJ zB|@w$D-Iz+cq|a#@jB=~K5GEQ(xG~2w(c&}^x!)ZPS?M6?Srs4Y1xz%c#T>Bdwq}q z5T?0W9SS%m-fH^rlGijPrL9N5fUbPJFLSWXxxuj_uVLt3c6QcBG zSpbWK0Yj|omNH@Ofds~_j%w$(MjM~uJNQ0gr_t%KV^~faoVTf)1%91sG)W-J_JA|v z*gwZ&RM1Q7M7R(L4xqIsxhi*(P@Xm(V$PVVN?!HsHJ(k{#=9a$6&@Tl^!3L94UQPq zHTbH?FWrMb#`NbFxQAM@xpfNtfOf01l&}5U-Cx&UX0nuCrDB}zo2dIwmFx%X{JFpj z9C{P?|6W>vFIyhh{uOAh4+WO;8VD(dnll!m>$v;RU=rX<(x4rhn<4*Rh}p%$B3IY5 zcK+KqI+dpYQax>k{eys;aw!AcbD{PlFS+@zj`Md?;6kXl+W)^7xucVUL{65B=eNDg zw;jBfcbSV^u6xPyz?X(1);5lpb3CGLmT$T?rUjUjdA z^5gpBx{E)k;x?L6(W}$minlG`&UY_(O-}Fx}aC}$Il6z-QTKP5tC?R9>XxMh$sMl_g@z~_d5wGA%f}`_E zPbFXFtQV5yH*)nyP=0wiPnVIt{v<)~a93$aAnp0w9l?z~W$&|yi}MxHO5n{PFLZr~ zx}NP&(SDf|8lQg?vCrNE83xxcrU#;u2oK(HzRYRj!~OObj^J8)#Kvk`XvNWyGa5a6 z1pzi3?|GPKTrPY(HFz{>FKXYpU+8_&38`6Q6kPnuwI?2~cO-IL-K$y0u(5^QCb*Rz z9Zd#Xq?~oyJxy*;aJy;8l5&KGH~aP)(X4s*3PiRdKr z5@B1_nOflT5TUcxH0NLUq{qS;4BVEjXtjOf(^0-0t?yATRoX`(px*nkY-Cof=b;}-1oTZ!$DTGavXxoX>H)yRppGk%>$xUU;XXbjI$KMdjBG4%%- zJNuTV@w|2=$93DDCSmD&J+WMEB;P%EKGK%mq4jvC*OlabdHOz{_Vl-Ov)G$i&tv?L zzb`v-JlTG$YKvzWI*&7W%uY?&CMG7%^N!~0-uEJ3)?du$Hj)uvPnV5oHXBj{euyqN zd)ni&F*$qb{D6eosZTsp7exAiwMciVqrmPsN<)ePQJ9kUY)w!xJ@rhj&PpHr796pc zlOh980HqsWosAv=0XCvRfXM3|!dC;5b?S_@q2e@9^!$-fG|60UNCjk?;`Ye;9(lL> zgKA5KxK@SD8dQM^M)sS_pR||nT|HPW)!t{E4ZRS(SX0I;?Xm%C5#25bxW(m?2m?sl zfX69wf7pyq<;K7}2zyVqTA2}NF90z7O})6CrO2DD$5rya=vf}1>Nw7#3K}lm2i>i| z^%tVSDMMe*M(wur&Ez4^BR`R=?W@b}qQh66R)TSNUy-k~dYe=VVEcn3NmN)29lLo1 z*|YRsmr2hYlEMj~s!3;z?_KDVA;|{N{Y~T2{&rZiA8u;3 zFH1)9`4ZE7iT~vKX1U%h$xv>KEW#p?+WC8Tq97ml=XG_|+9CW7&4UWyNk>TD*%uif z0%l_X zKBWTrp1SWTWaV7F zLR@ztBwft!BjKQ_=DE#CbtPPsVdraEc7C}tCD}HAJx?dw*J}-zsD@@Ac2?;FxB1c# z7KF=g3;D_|de1^JEf!XblhzAqc1hLu2#%nB*Mb3e)(G&(X6^6XMpA|&BqTYcV(h#h z6>G@DN3=WP9A9Db)(91~%7SK%1ZmH#66Ty1aRhyTOPL-6I6}`Rawu1$YPxx}e{Y%D zqKsXb?K_)-s(ftC5Q`+cxvDNWMl+UF=O~7RIR~{ErET=^c4HjlWvKUgn(*H5Cr2SJ zwNEy_WWAACOc`>>Zj>3!&!bG%0}b=6!t!vdh1=Ml)(bM*DKxyGiW>6adLtxNzd5WW2b_5bWbeb6e-F5?du0W# z%TM1;+tq1t`*hBuD^c8_N60hs{S-5nWwefFks<*finJyR6K zzNMIvKxJU4&sz0UI3tFN%hPUmazz&enJ=^0fCJx*t7+MZPjcwXKi}Wie(}ABE!QH; zRc2-I&6fs>$)-T@BrQ6a+3F9M;;$4EY*#Qpi2}#nKi@!&7iWkP%^Kf@+@D z?t?5#{f};1ouLLiZXapZZ|6M3*_=E07 zQizlWl#RbW%$C43R6)gDETls;t-tkQxK5*_79F`4V>30i_}HLLgSPf^U{>zfkG}Z$ zMWgtJ!@jA@+#Is^8JOSnOP*iT<+vP$ZRjjR9j)yEJ#q5cP*yW8w$nDPA__s5nwQ5` zo1#sWR^Xw>xGqP&DX~quYH1M6vBwiFwFo8Yl05cQdpL78Qu!xl(3K8b8+1CO06uU7Bm5 zsFF(d3Y)8DG_uv&syV0`mwf0;Hp^I)cSdu8GdP-iL_s~3ZA?Qf1L79fYS8vEgfL^K zqtI%I$IZ{zqWdfht;V9F-kDO73e)>`Lu@;q0F4`sbcHVl2uhz4q{&cTbr9_&N`);8 zCL__wE*E2$tKrw`{AR8gq!(6J&rv|iZ}qG}FEWz5$rr?8CogNNI^?gY{t}gnOX#Fb ziN6)9#$E1wK;>z4p5Lf2c{VXxPo|_tq-c<`Jmj8!LDut|98rk(zPlDEqtMPle)4G< ztq9WBfT94(r@h<>bPkLs({GBYB@xO__+}W{wyKLlA>ongoz{#Mi=m<-8zq@76Qz(yr_osV~6-e*kUM$-IW)mU#bjTAc?v3t0rr=C3uxAYg6*A}W$e4{( zJ)52@Z@{H1OKR1$N{D9ssDjcnMlqlC<2yrVe^k~kv-fkjxN6bma(n_`Iw>4PJ8O9j zf1AQXS{_y4i%4AeGIVqLHYXvXo-N{GLXUwKod%pOKPsl?-5G`U)n;dOzss02oacJB zIx{lr02T@ezpbaVDG{m`?i)r4sd}_Qkkfu|C@vG?XFWd1|Gb>!kaUA&TYK`0UfGw1 zK^Qg%SO8k8ZCAQeuiny$LSLRcYh5~E544;v2w%$#J`cr-r7^GHi5cQC_nrJ=5-~}> zJjhavpjk~#*Lo4msZL(uzyO7-^9e$a)$!E4#Z{`0I-UPUE}NJOa?ibl=h`FAp!J^2 zXwvenjr=HjXKc2PqMFJz^Qv{<>@8TF%qu=Mc8h^`cY%)uu4M<2>d|(Oe8lSTPDZ9f z=yGO4`8#gJs=o?_&&tgeAEx>LByYl-3(PL=1YZ3ZuHOuZI3_L8Q?UxDC6P?bH8^ z{HGfIzhosfxcu-m1ME6x|I7U6q$v#Tvo((_{tqeY7ErkPhxfM>ehYk?p=qZLor|u3|UE~*9EWM G`2H`Rs#@a! diff --git a/website/docs/getting-started/code-executors.ipynb b/website/docs/getting-started/code-executors.ipynb index cb49b7ff9c2b..caa2384bf8a4 100644 --- a/website/docs/getting-started/code-executors.ipynb +++ b/website/docs/getting-started/code-executors.ipynb @@ -24,99 +24,85 @@ "\n", "In this chapter, we introduce code executor, an AutoGen's agent component that \n", "takes input messages with code blocks, performs execution, and output messages\n", - "with the results. There are currently two of types of built-in code \n", - "executors available in AutoGen: command line executor and Jupyter executor.\n", - "For each type, there is a local version and a remote (i.e., docker) version.\n", + "with the results. \n", "\n", - "We first cover the executors by themselves, and then show how to use\n", - "them in agent-to-agent conversation to solve coding tasks.\n", - "\n", - "**Note**: Different from many other agent frameworks, AutoGen's code executor\n", - "can power an entire role of an agent: it can take input messages, execute code,\n", - "and output messages -- just like LLM." - ] - }, - { - "cell_type": "code", - "execution_count": 89, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "import tempfile\n", - "import shutil\n", - "import datetime\n", - "import pprint\n", - "from IPython.display import Image\n", - "from autogen import ConversableAgent, UserProxyAgent, AssistantAgent" + "There are two ways to use code executor in AutoGen. \n", + "One is to execute\n", + "code directly in the same platform where AutoGen is running.\n", + "It is the simplest way to use code executor, but it is not ideal for production\n", + "as LLM can generate arbitrary code.\n", + "The other way is to execute code in a Docker container." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Command Line Code Executor\n", + "## Local Execution\n", "\n", - "The command line code executor runs code in a local or remote command line\n", - "environment. It is useful for running code blocks of different programming\n", - "languages (i.e., Python, R, etc.) in the same conversation, \n", - "and code blocks that each is a complete script or source of executable.\n", - "Each code block is executed in a new subprocess, so the variables created\n", - "within one code block are not accessible in another code block." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Local Command Line Code Executor\n", + "The figure below shows the architecture of the local execution approach.\n", "\n", - "The local command line code executor runs code in the same environment as the\n", - "AutoGen agent. It is useful mostly for development and testing, but not ideal\n", - "for production use case, as LLM can generate arbitrary code.\n", - "\n", - "The figure below illustrates how does the local command line code executor work.\n", + "**Executing LLM-generated code poses a security risk to your host environment.**\n", "\n", "```{=mdx}\n", - "![Local Command Line Code Executor](./assets/local-command-line-code-executor.png)\n", + "![Code Executor No Docker](./assets/code-executor-no-docker.png)\n", "```\n", "\n", - "Once receiving a message with a code block, the local command line code executor\n", + "Once receiving a message with a code block, the code executor\n", "first writes the code block to a code file, then start a new subprocess to\n", "execute the code file. The executor reads the console output of the \n", "code execution and sends it back as a reply message.\n", "\n", - "Here is an example of using the local command line code executor to run a Python\n", + "Here is an example of using the code executor to run a Python\n", "code block that prints a random number.\n", - "First we create an agent with the local command line code executor\n", - "that uses a temporary directory to store the code files." + "First we create an agent with the code executor\n", + "that uses a temporary directory to store the code files.\n", + "We specify `human_input_mode=\"ALWAYS\"` to manually validate the code being \n", + "executed is safe." ] }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 41, "metadata": {}, "outputs": [], "source": [ + "import tempfile\n", + "from autogen import ConversableAgent\n", + "\n", "# Create a temporary directory to store the code files.\n", "temp_dir = tempfile.mkdtemp()\n", "\n", - "# Create an agent with code executor configuration for a local command line\n", - "# code executor.\n", + "# Create an agent with code executor configuration.\n", "code_executor_agent = ConversableAgent(\n", " \"code_executor_agent\",\n", " llm_config=False, # Turn off LLM for this agent.\n", " code_execution_config={\n", - " \"executor\": \"commandline-local\", # Use the local command line executor.\n", - " \"commandline-local\": {\n", - " \"timeout\": 10, # Timeout for each code execution in seconds.\n", - " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", - " },\n", + " \"use_docker\": False, # Execute code in the local environment.\n", + " \"timeout\": 10, # Timeout for each code execution in seconds.\n", + " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", " },\n", " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before running this example, we need to make sure the `matplotlib` and `numpy`\n", + "are installed." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "! pip install -qqq matplotlib numpy" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -126,7 +112,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 28, "metadata": {}, "outputs": [ { @@ -141,7 +127,7 @@ ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", "exitcode: 0 (execution succeeded)\n", "Code output: \n", - "A Random Number: 39\n", + "Scatter plot saved to scatter.png\n", "\n" ] } @@ -151,8 +137,13 @@ " \"This is a message with code block. \"\n", " \"The code block is below: \\n\"\n", " \"```python\\n\"\n", - " \"import random\\n\"\n", - " \"print('A Random Number: ', random.randint(1, 100))\\n\"\n", + " \"import numpy as np\\n\"\n", + " \"import matplotlib.pyplot as plt\\n\"\n", + " \"x = np.random.randint(0, 100, 100)\\n\"\n", + " \"y = np.random.randint(0, 100, 100)\\n\"\n", + " \"plt.scatter(x, y)\\n\"\n", + " \"plt.savefig('scatter.png')\\n\"\n", + " \"print('Scatter plot saved to scatter.png')\\n\"\n", " \"```\\n\"\n", " \"This is the end of the message.\\n\"\n", ")\n", @@ -171,193 +162,75 @@ "In this case, we choose to continue the execution, \n", "and the agent's reply contains the output of the code execution.\n", "\n", - "We can take a look at the code file that was created in the temporary directory." + "We can take a look at the generated plot in the temporary directory." ] }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "['4595c0528b2d49d396732d9be1470a35.py']\n", - "import random\n", - "print('A Random Number: ', random.randint(1, 100))\n" + "['scatter.png']\n" ] } ], "source": [ - "code_files = os.listdir(temp_dir)\n", - "print(code_files)\n", - "print(open(os.path.join(temp_dir, code_files[0])).read())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The code file matches the code block that we sent to the agent.\n", + "import os\n", "\n", - "Finally, let's clean up the temporary directory." - ] - }, - { - "cell_type": "code", - "execution_count": 37, - "metadata": {}, - "outputs": [], - "source": [ - "shutil.rmtree(temp_dir)" + "print(os.listdir(temp_dir))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "### Docker Command Line Code Executor\n", + "## Docker Execution\n", "\n", - "Code executor is a powerful tool, but it can also be dangerous because it can \n", - "affect the environment it runs it. \n", - "For example, it can delete files, send data to a remote server, \n", - "or even mine cryptocurrency. \n", - "To mitigate these risks, we can execute code in a docker container. \n", + "To mitigate the security risk of running LLM-generated code locally, \n", + "we can execute code in a docker container. \n", "This way, the generated code can only access resources that are explicitly \n", "given to it.\n", "\n", - "The figure below illustrates how does the docker command line code executor work.\n", + "The figure below illustrates how does the docker execution work.\n", "\n", "```{=mdx}\n", - "![Docker Command Line Code Executor](./assets/docker-command-line-executor.png)\n", + "![Code Executor Docker](./assets/code-executor-docker.png)\n", "```\n", "\n", - "Similar to the local command line code executor, the docker command line code\n", + "Similar to the local code executor, the docker code\n", "executor extracts code blocks from input messages, writes them to code files.\n", "For each code file, it starts a docker container to execute the code file,\n", - "and reads the console output of the code execution.\n", - "\n", - "[Discuss containerization once that piece is ready.]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Jupyter Code Executors\n", - "\n", - "The command line code executor is useful for executing scripts, however, it does\n", - "not keeps the variables created during execution in memory.\n", - "If the code execution encounters an error, the script would be modified and\n", - "executed again, and all previous progress would be lost.\n", - "In some use cases, such as data analysis and machine learning, parts of the code\n", - "may be expensive or slow to run, e.g., loading data and running training, \n", - "so we really want to keep the variables in memory to avoid re-running the \n", - "entire code.\n", - "\n", - "Jupyter code executors are designed for these use cases.\n", - "It runs code in a stateful, interactive kernel, \n", - "such as a Python kernel or a Scala kernel, and keeps the variables in memory \n", - "so the variables created in one code block are accessible in a subsequent \n", - "code block.\n", - "If one code block encounters an error, the previous variables are still in memory,\n", - "and only the buggy code block needs to be modified and re-executed.\n", - "\n", - "There are two types of Jupyter code executors: local Jupyter code executor and\n", - "remote Jupyter code executor." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Local Jupyter Code Executor\n", - "\n", - "The local Jupyter code executor starts a Jupyter server in the same environment\n", - "as the AutoGen agent as a subprocess.\n", - "The figure below illustrates how does the local Jupyter code executor work.\n", - "\n", - "```{=mdx}\n", - "![Local Jupyter Code Executor](./assets/local-jupyter-code-executor.png)\n", - "```\n", - "\n", - "Upon receiving a message with a code block, the local Jupyter code executor\n", - "sends the code block to the Jupyter server to have it executed in a kernel.\n", - "Then, it receives the output of the code execution.\n", - "Under the hood, the executor communicates with the Jupyter server \n", - "through websocket." + "and reads the console output of the code execution." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Let us see an example of using the local Jupyter code executor to run a Python\n", - "code block that generates some random numbers, and then use the variable in \n", - "a subsequent code block.\n", - "\n", - "First we need to install additional dependencies to use the Jupyter executor." + "To use docker execution, you need to [install Docker](https://docs.docker.com/engine/install/) on your machine.\n", + "Once you have Docker installed and running, you can set up your code executor agent as follow:" ] }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 19, "metadata": {}, "outputs": [], "source": [ - "! pip install -qqq 'pyautogen[local-jupyter-exec]'" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Due to a bug in jupyter kernel gateway on Windows, please use the following\n", - "installation command on Windows." - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [], - "source": [ - "# ! pip install -qqq 'pyautogen[ipython]'" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We create an agent with a local Jupyter code executor, and asks it to\n", - "generates a reply with a given code block in markdown." - ] - }, - { - "cell_type": "code", - "execution_count": 54, - "metadata": {}, - "outputs": [], - "source": [ - "temp_dir = tempfile.mkdtemp()\n", - "\n", - "# Create an agent with code executor configuration for a local Jupyter\n", - "# code executor.\n", - "jupyter_agent = ConversableAgent(\n", - " name=\"Jupyter_Agent\",\n", - " llm_config=False,\n", + "# Create an agent with code executor configuration that uses docker.\n", + "code_executor_agent_using_docker = ConversableAgent(\n", + " \"code_executor_agent_docker\",\n", + " llm_config=False, # Turn off LLM for this agent.\n", " code_execution_config={\n", - " \"executor\": \"jupyter-local\", # Use the local Jupyter executor.\n", - " # On Windows use \"ipython-embedded\" instead of \"jupyter-local\"\n", - " # due to a known issue with Jupyter Kernel Gateway on Windows.\n", - " \"jupyter-local\": {\n", - " \"timeout\": 60, # Timeout for each code execution in seconds.\n", - " \"kernel_name\": \"python3\", # Use the Python 3 kernel, which is the default.\n", - " \"output_dir\": temp_dir, # Use the temporary directory to store output images.\n", - " },\n", + " \"use_docker\": \"python:3.12-slim\", # Execute code using the given docker image name.\n", + " \"timeout\": 30, # Timeout for each code execution in seconds.\n", + " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", " },\n", - " human_input_mode=\"ALWAYS\",\n", + " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", ")" ] }, @@ -365,190 +238,20 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Ask the agent to generate a reply for a message that contains two Python\n", - "code blocks." - ] - }, - { - "cell_type": "code", - "execution_count": 55, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: \n", - "\n" - ] - } - ], - "source": [ - "message_with_code_blocks_1 = (\n", - " \"First import the required libraries: \\n\"\n", - " \"```python\\n\"\n", - " \"import numpy as np\\n\"\n", - " \"import matplotlib.pyplot as plt\\n\"\n", - " \"```\\n\"\n", - " \"\\n\"\n", - " \"Now let's generate random numbers.\\n\"\n", - " \"```python\\n\"\n", - " \"np.random.seed(0)\\n\"\n", - " \"x = np.random.rand(100)\\n\"\n", - " \"y = np.random.rand(100)\\n\"\n", - " \"````n\"\n", - ")\n", - "\n", - "# Generate a reply for the first code message.\n", - "reply = jupyter_agent.generate_reply(\n", - " messages=[\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": message_with_code_blocks_1,\n", - " }\n", - " ]\n", - ")\n", - "print(reply)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Ask the agent to generate a reply for a message that contains a Python code\n", - "block that generates a plot using the variables from the code block\n", - "in the previous message." - ] - }, - { - "cell_type": "code", - "execution_count": 57, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "exitcode: 0 (execution succeeded)\n", - "Code output:
\n", - "Image data saved to /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmptwn7jp72/77cfc432c7a946d48c47c7932e467c03.png\n" - ] - } - ], - "source": [ - "message_with_code_blocks_2 = (\n", - " \"Now let's plot the random numbers. \\n\"\n", - " \"```python\\n\"\n", - " \"plt.scatter(x, y)\\n\"\n", - " \"plt.xlabel('X')\\n\"\n", - " \"plt.ylabel('Y')\\n\"\n", - " \"plt.title('Random Numbers')\\n\"\n", - " \"plt.show()\\n\"\n", - " \"```\\n\"\n", - ")\n", + "The `work_dir` points to a local file system directory just like in the local execution case.\n", + "This directory will be mounted to the docker container and the code files will be written to this directory.\n", "\n", - "# Generate a reply for the second code message.\n", - "reply = jupyter_agent.generate_reply(\n", - " messages=[\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": message_with_code_blocks_2,\n", - " }\n", - " ]\n", - ")\n", - "print(reply)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the output, we can see that the code blocks from all the messages are \n", - "executed in the same kernel, and the variables `x` and `y` created in the\n", - "first message's code block are accessible in the second message's code block.\n", + "If you get an error that says:\n", "\n", - "Let's take a look at the output of the plot in the output directory." - ] - }, - { - "cell_type": "code", - "execution_count": 58, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['77cfc432c7a946d48c47c7932e467c03.png']\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHHCAYAAABDUnkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABEK0lEQVR4nO3de3RU1fn/8c8kkAT9klEEkhDTgngjoKSCxCjeMBTUItTaUigXUawi3ogXQMV4JaDW4ldQFC/YL1pUliIWGi8gP4vGYsFYEcXKRSgkUW4JhZLAzPn9kTWjQybJTDIz5/Z+rZW1zOGcZM9xMvs5+3n23h7DMAwBAAA4RJLZDQAAAIglghsAAOAoBDcAAMBRCG4AAICjENwAAABHIbgBAACOQnADAAAcheAGAAA4CsENAABwFIIbAK1y5ZVXqmvXrmY3wxZWrlwpj8ejRYsWmd0UwNEIbgCbmD9/vjweT/CrTZs2ys7O1pVXXqnt27eb3TzLCNyntLS0sPflggsuUK9evUxoGYBEaWN2AwBE5/7771e3bt108OBBffzxx5o/f75WrVqldevWKS0tzezmWUZtba1mzJihJ554wuymAEgwRm4Am7n44os1atQojR8/Xs8++6xuu+02bdy4UUuWLDG7aZaSl5enefPmaceOHWY3JeH2799vdhMAUxHcADZ37rnnSpI2btwYPFZXV6d77rlHffr0kdfr1dFHH61zzz1X77//fsi1W7Zskcfj0aOPPqpnnnlG3bt3V2pqqs4880x98sknDX7X4sWL1atXL6WlpalXr1564403wrZp//79uvXWW5WTk6PU1FSdcsopevTRR2UYRsh5Ho9HN9xwg1577TXl5uaqXbt2Kigo0Oeffy5Jevrpp3XiiScqLS1NF1xwgbZs2RLxfbnzzjvl8/k0Y8aMJs8L3IP58+c3+DePx6N77703+P29994rj8ejr7/+WqNGjZLX61WnTp00bdo0GYahbdu2aejQoUpPT1dmZqb+8Ic/hP2dPp9Pd955pzIzM3X00Ufrsssu07Zt2xqc9/e//12DBw+W1+vVUUcdpfPPP18ffvhhyDmBNq1fv14jR47Uscceq/79+0uSKisrNW7cOB1//PFKTU1VVlaWhg4dGtV9BOyItBRgc4GO6thjjw0eq6mp0bPPPqsRI0bommuu0b59+/Tcc89p0KBBWr16tfLy8kJ+xssvv6x9+/bp2muvlcfj0cMPP6zLL79cmzZtUtu2bSVJ77zzjn71q18pNzdXJSUl2rVrV7Dj/DHDMHTZZZfp/fff19VXX628vDy9/fbbuv3227V9+3b98Y9/DDn/b3/7m5YsWaKJEydKkkpKSvSLX/xCd9xxh5588kldf/312rNnjx5++GFdddVVWrFiRUT3pVu3bhozZozmzZunKVOmqEuXLtHc1iYNHz5cPXr00IwZM7R06VI9+OCD6tChg55++mkNGDBAM2fO1EsvvaTbbrtNZ555ps4777yQ6x966CF5PB5NnjxZ3333nWbNmqXCwkKVl5erXbt2kqQVK1bo4osvVp8+fVRcXKykpCS98MILGjBggP72t7+pX79+IT/z17/+tU466SRNnz49GET+6le/0hdffKEbb7xRXbt21Xfffad3331XW7dupQgczmYAsIUXXnjBkGS89957xvfff29s27bNWLRokdGpUycjNTXV2LZtW/Dcw4cPG7W1tSHX79mzx8jIyDCuuuqq4LHNmzcbkozjjjvO2L17d/D4m2++aUgy3nrrreCxvLw8Iysry9i7d2/w2DvvvGNIMn76058Gjy1evNiQZDz44IMhv/+KK64wPB6P8c033wSPSTJSU1ONzZs3B489/fTThiQjMzPTqKmpCR6fOnWqISnk3Kbu0yeffGJs3LjRaNOmjXHTTTcF//388883evbs2eAevPDCCw1+liSjuLg4+H1xcbEhyfj9738fPHb48GHj+OOPNzwejzFjxozg8T179hjt2rUzxo4dGzz2/vvvG5KM7OzskNf26quvGpKMxx9/3DAMw/D7/cZJJ51kDBo0yPD7/cHzDhw4YHTr1s0YOHBggzaNGDEipO179uwxJBmPPPJIk/cLcCLSUoDNFBYWqlOnTsrJydEVV1yho48+WkuWLAkZQUlOTlZKSookye/3a/fu3Tp8+LD69u2rtWvXNviZw4cPDxn5CaS6Nm3aJEmqqKhQeXm5xo4dK6/XGzxv4MCBys3NDflZy5YtU3Jysm666aaQ47feeqsMw9Bf//rXkOMXXXRRyChCfn6+pPpRh/bt2zc4HmhTJE444QSNHj1azzzzjCoqKiK+rjnjx48P/ndycrL69u0rwzB09dVXB48fc8wxOuWUU8K2d8yYMSGv7YorrlBWVpaWLVsmSSovL9e//vUvjRw5Urt27dLOnTu1c+dO7d+/XxdddJE++OAD+f3+kJ953XXXhXzfrl07paSkaOXKldqzZ09MXjdgFwQ3gM3MmTNH7777rhYtWqRLLrlEO3fuVGpqaoPzXnzxRZ1++ulKS0vTcccdp06dOmnp0qWqrq5ucO5PfvKTkO8DgU6gU/z2228lSSeddFKDa0855ZSQ77/99lt16dIlpPOWpB49eoT8rMZ+dyB4ysnJCXs82o767rvv1uHDh5utvYlGuDanpaWpY8eODY6Ha++R99Hj8ejEE08Mphj/9a9/SZLGjh2rTp06hXw9++yzqq2tbfD/sVu3biHfp6amaubMmfrrX/+qjIwMnXfeeXr44YdVWVnZotcM2Ak1N4DN9OvXT3379pUkDRs2TP3799fIkSO1YcMG/c///I8kacGCBbryyis1bNgw3X777ercubOSk5NVUlISUngckJycHPZ3GUcUAMdDY787Vm064YQTNGrUKD3zzDOaMmVKg3/3eDxhr/P5fI3+zHBti+U9DIzKPPLIIw3qowIC/68DArU6P3bLLbdoyJAhWrx4sd5++21NmzZNJSUlWrFihX72s59F3S7ALhi5AWwsELDs2LFDs2fPDh5ftGiRTjjhBL3++usaPXq0Bg0apMLCQh08eLBFv+enP/2ppB9GFH5sw4YNDc7dsWOH9u3bF3L8q6++CvlZiRQYvZk5c2aDfwuMUu3duzfk+JEjTLF05H00DEPffPNNMD3XvXt3SVJ6eroKCwvDfgUKvZvTvXt33XrrrXrnnXe0bt061dXVNTqLC3AKghvA5i644AL169dPs2bNCgYvgVGEH48a/P3vf1dZWVmLfkdWVpby8vL04osvhqRD3n33Xa1fvz7k3EsuuUQ+ny8k2JKkP/7xj/J4PLr44otb1IbW6N69u0aNGqWnn366QVomPT1dHTt21AcffBBy/Mknn4xbe/70pz+FBH+LFi1SRUVF8N706dNH3bt316OPPqr//Oc/Da7//vvvm/0dBw4caBDMdu/eXe3bt1dtbW0rXwFgbaSlAAe4/fbb9etf/1rz58/Xddddp1/84hd6/fXX9ctf/lKXXnqpNm/erLlz5yo3NzdsZxmJkpISXXrpperfv7+uuuoq7d69W0888YR69uwZ8jOHDBmiCy+8UHfddZe2bNmi3r1765133tGb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/fvLMAwdPnxY1113ne68885ENNl1Gusna2pq9N///lft2rVr1c9n5AaOMWPGDC1cuFBvvPGG0tLSzG6O4+zbt0+jR4/WvHnz1LFjR7Ob4wp+v1+dO3fWM888oz59+mj48OG66667NHfuXLOb5jgrV67U9OnT9eSTT2rt2rV6/fXXtXTpUj3wwANmNw0twMhNMzp27Kjk5GRVVVWFHK+qqlJmZmbYazIzM6M6H/Vacq8DHn30Uc2YMUPvvfeeTj/99Hg20zGivd8bN27Uli1bNGTIkOAxv98vSWrTpo02bNig7t27x7fRNtaS93dWVpbatm2r5OTk4LEePXqosrJSdXV1SklJiWub7aol93ratGkaPXq0xo8fL0k67bTTtH//fv3+97/XXXfdpaQkxgJiqbF+Mj09vdWjNhIjN81KSUlRnz59tHz58uAxv9+v5cuXq6CgIOw1BQUFIedL0rvvvtvo+ajXknstSQ8//LAeeOABlZaWqm/fvoloqiNEe79PPfVUff755yovLw9+XXbZZbrwwgtVXl6unJycRDbfdlry/j7nnHP0zTffBINISfr666+VlZVFYNOEltzrAwcONAhgAkGlwRaMMRf3fjImZckOt3DhQiM1NdWYP3++sX79euP3v/+9ccwxxxiVlZWGYRjG6NGjjSlTpgTP//DDD402bdoYjz76qPHll18axcXFTAWPULT3esaMGUZKSoqxaNEio6KiIvi1b98+s16CrUR7v4/EbKnoRHu/t27darRv39644YYbjA0bNhh/+ctfjM6dOxsPPvigWS/BNqK918XFxUb79u2NP//5z8amTZuMd955x+jevbvxm9/8xqyXYCv79u0zPv30U+PTTz81JBmPPfaY8emnnxrffvutYRiGMWXKFGP06NHB8wNTwW+//Xbjyy+/NObMmcNUcDM88cQTxk9+8hMjJSXF6Nevn/Hxxx8H/+388883xo4dG3L+q6++apx88slGSkqK0bNnT2Pp0qUJbrF9RXOvf/rTnxqSGnwVFxcnvuE2Fe17+8cIbqIX7f3+6KOPjPz8fCM1NdU44YQTjIceesg4fPhwglttT9Hc60OHDhn33nuv0b17dyMtLc3Iyckxrr/+emPPnj2Jb7gNvf/++2E/iwP3eOzYscb555/f4Jq8vDwjJSXFOOGEE4wXXnghZu3xGAbjbQAAwDmouQEAAI5CcAMAAByF4AYAADgKwQ0AAHAUghsAAOAoBDcAAMBRCG4AAICjENwAAABHIbgBYGs+n09nn322Lr/88pDj1dXVysnJ0V133WVSywCYhRWKAdje119/rby8PM2bN0+/+93vJEljxozRZ599pk8++YRNJgGXIbgB4Aj/+7//q3vvvVdffPGFVq9erV//+tf65JNP1Lt3b7ObBiDBCG4AOIJhGBowYICSk5P1+eef68Ybb9Tdd99tdrMAmIDgBoBjfPXVV+rRo4dOO+00rV27Vm3atDG7SQBMQEExAMd4/vnnddRRR2nz5s3697//bXZzAJiEkRsAjvDRRx/p/PPP1zvvvKMHH3xQkvTee+/J4/GY3DIAicbIDQDbO3DggK688kpNmDBBF154oZ577jmtXr1ac+fONbtpAEzAyA0A27v55pu1bNkyffbZZzrqqKMkSU8//bRuu+02ff755+ratau5DQSQUAQ3AGzt//2//6eLLrpIK1euVP/+/UP+bdCgQTp8+DDpKcBlCG4AAICjUHMDAAAcheAGAAA4CsENAABwFIIbAADgKAQ3AADAUQhuAACAoxDcAAAARyG4AQAAjkJwAwAAHIXgBgAAOArBDQAAcBSCGwAA4Cj/H2afS72yzuVBAAAAAElFTkSuQmCC", - "text/plain": [ - "" - ] - }, - "execution_count": 58, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "output_files = os.listdir(temp_dir)\n", - "print(output_files)\n", - "Image(os.path.join(temp_dir, output_files[0]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Don't forget to clean up the temporary directory." - ] - }, - { - "cell_type": "code", - "execution_count": 59, - "metadata": {}, - "outputs": [], - "source": [ - "shutil.rmtree(temp_dir)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can restart the Jupyter server by calling the `restart` method on the\n", - "agent's `code_executor` attribute." - ] - }, - { - "cell_type": "code", - "execution_count": 79, - "metadata": {}, - "outputs": [], - "source": [ - "jupyter_agent.code_executor.restart()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Remote Jupyter Code Executor\n", + "```\n", + "RuntimeError: Code execution is set to be run in docker (default behaviour) but docker is not running.\n", + "The options available are:\n", + "- Make sure docker is running (advised approach for code execution)\n", + "- Set \"use_docker\": False in code_execution_config\n", + "- Set AUTOGEN_USE_DOCKER to \"0/False/no\" in your environment variables\n", + "```\n", "\n", - "[Discuss the remote Jupyter executor once that piece is ready.]" + "This means that the Docker daemon is not running." ] }, { @@ -572,159 +275,111 @@ "And the code executor agent is powered by a code executor.\n", "\n", "The following is an agent with a code writer role specified \n", - "using `system_message`." + "using `system_message`. The system message contains important instruction\n", + "on how to use the code executor in the code executor agent." ] }, { "cell_type": "code", - "execution_count": 63, + "execution_count": 42, "metadata": {}, "outputs": [], "source": [ - "# The code writer agent's system message is to instruct the LLM on how to\n", - "# use the Jupyter code executor with IPython kernel.\n", + "# The code writer agent's system message is to instruct the LLM on how to use\n", + "# the code executor in the code executor agent.\n", "code_writer_system_message = (\n", - " \"You have been given coding capability to solve tasks using Python code in a stateful IPython kernel.\\n\"\n", - " \"You are responsible for writing the code, and the user is responsible for executing the code.\\n\"\n", - " \"\\n\"\n", - " \"When you write Python code, put the code in a markdown code block with the language set to Python.\\n\"\n", - " \"For example:\\n\"\n", - " \"```python\\n\"\n", - " \"x = 3\\n\"\n", - " \"```\\n\"\n", - " \"You can use the variable `x` in subsequent code blocks.\\n\"\n", - " \"```python\\n\"\n", - " \"print(x)\\n\"\n", - " \"```\\n\"\n", - " \"\\n\"\n", - " \"Write code incrementally and leverage the statefulness of the kernel to avoid repeating code.\\n\"\n", - " \"Import libraries in a separate code block.\\n\"\n", - " \"Define a function or a class in a separate code block.\\n\"\n", - " \"Run code that produces output in a separate code block.\\n\"\n", - " \"Run code that involves expensive operations like download, upload, and call external APIs in a separate code block.\\n\"\n", - " \"\\n\"\n", - " \"When your code produces an output, the output will be returned to you.\\n\"\n", - " \"Because you have limited conversation memory, if your code creates an image,\\n\"\n", - " \"the output will be a path to the image instead of the image itself.\\n\"\n", + " \"You are a helpful AI assistant.\\n\"\n", + " \"Solve tasks using your coding and language skills.\\n\"\n", + " \"In the following cases, suggest python code (in a python coding block) or shell script (in a sh coding block) for the user to execute.\\n\"\n", + " \"1. When you need to collect info, use the code to output the info you need, for example, browse or search the web, download/read a file, print the content of a webpage or a file, get the current date/time, check the operating system. After sufficient info is printed and the task is ready to be solved based on your language skill, you can solve the task by yourself.\\n\"\n", + " \"2. When you need to perform some task with code, use the code to perform the task and output the result. Finish the task smartly.\\n\"\n", + " \"Solve the task step by step if you need to. If a plan is not provided, explain your plan first. Be clear which step uses code, and which step uses your language skill.\\n\"\n", + " \"When using code, you must indicate the script type in the code block. The user cannot provide any other feedback or perform any other action beyond executing the code you suggest. The user can't modify your code. So do not suggest incomplete code which requires users to modify. Don't use a code block if it's not intended to be executed by the user.\\n\"\n", + " \"If you want the user to save the code in a file before executing it, put # filename: inside the code block as the first line. Don't include multiple code blocks in one response. Do not ask users to copy and paste the result. Instead, use 'print' function for the output when relevant. Check the execution result returned by the user.\\n\"\n", + " \"If the result indicates there is an error, fix the error and output the code again. Suggest the full code instead of partial code or code changes. If the error can't be fixed or if the task is not solved even after the code is executed successfully, analyze the problem, revisit your assumption, collect additional info you need, and think of a different approach to try.\\n\"\n", + " \"When you find an answer, verify the answer carefully. Include verifiable evidence in your response if possible.\\n\"\n", + " \"Reply 'TERMINATE' in the end when everything is done.\\n\"\n", ")\n", "\n", "code_writer_agent = ConversableAgent(\n", - " \"code_writer\",\n", + " \"code_writer_agent\",\n", " system_message=code_writer_system_message,\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", " code_execution_config=False, # Turn off code execution for this agent.\n", ")" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We need to install additional dependencies to use the Jupyter executor." - ] - }, - { - "cell_type": "code", - "execution_count": 64, - "metadata": {}, - "outputs": [], - "source": [ - "! pip install -qqq 'pyautogen[local-jupyter-exec]'\n", - "# On Windows, use the following due to a known issue with Jupyter Kernel Gateway.\n", - "# ! pip install -qqq 'pyautogen[ipython]'" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The following is an agent with a code executor role specified using \n", - "its `code_execution_config`. It uses a local Jupyter code executor\n", - "with `python3` kernel." - ] - }, - { - "cell_type": "code", - "execution_count": 81, - "metadata": {}, - "outputs": [], - "source": [ - "# Create a temporary directory to store the output images.\n", - "temp_dir = tempfile.mkdtemp()\n", - "\n", - "# Create an agent with code executor configuration for a local Jupyter\n", - "# code executor.\n", - "code_executor_agent = ConversableAgent(\n", - " name=\"code_executor_agent\",\n", - " llm_config=False,\n", - " code_execution_config={\n", - " \"executor\": \"jupyter-local\", # Use the local Jupyter executor.\n", - " # On Windows use \"ipython-embedded\" instead of \"jupyter-local\"\n", - " # due to a known issue with Jupyter Kernel Gateway on Windows.\n", - " \"jupyter-local\": {\n", - " \"timeout\": 60, # Timeout for each code execution in seconds.\n", - " \"kernel_name\": \"python3\", # Use the Python 3 kernel, which is the default.\n", - " \"output_dir\": temp_dir, # Use the temporary directory to store output images.\n", - " },\n", - " },\n", - " human_input_mode=\"ALWAYS\",\n", - ")" - ] - }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is an example of solving a math problem through a conversation\n", - "between the code writer and the code executor:" + "between the code writer agent and the code executor agent (created above)." ] }, { "cell_type": "code", - "execution_count": 83, + "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer_agent):\n", "\n", "Write Python code to calculate the 14th Fibonacci number.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\u001b[33mcode_writer_agent\u001b[0m (to code_executor_agent):\n", "\n", - "Sure, I'll use a simple iterative method to calculate the 14th Fibonacci number. \n", + "Sure, here is a Python code snippet to calculate the 14th Fibonacci number. The Fibonacci series is a sequence of numbers in which each number is the sum of the two preceding ones, usually starting with 0 and 1.\n", "\n", "```python\n", "def fibonacci(n):\n", - " a, b = 0, 1\n", - " for _ in range(n):\n", - " a, b = b, a + b\n", - " return a\n", - "\n", - "fibonacci(14)\n", + " if(n <= 0):\n", + " return \"Input should be a positive integer.\"\n", + " elif(n == 1):\n", + " return 0\n", + " elif(n == 2):\n", + " return 1\n", + " else:\n", + " fib = [0, 1]\n", + " for i in range(2, n):\n", + " fib.append(fib[i-1] + fib[i-2])\n", + " return fib[n-1]\n", + "\n", + "print(fibonacci(14))\n", "```\n", "\n", + "This Python code defines a function `fibonacci(n)` which computes the n-th Fibonacci number. The function uses a list `fib` to store the Fibonacci numbers as they are computed, and then returns the (n-1)-th element as the n-th Fibonacci number due to zero-indexing in Python lists.\n", + "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\u001b[31m\n", + ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer_agent):\n", "\n", "exitcode: 0 (execution succeeded)\n", - "Code output: 377\n", + "Code output: \n", + "233\n", + "\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\u001b[33mcode_writer_agent\u001b[0m (to code_executor_agent):\n", + "\n", + "Great, the execution was successful and the 14th Fibonacci number is 233. The sequence goes as follows: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233... and so on, where each number is the sum of the previous two. Therefore, the 14th number in the Fibonacci series is 233. \n", "\n", - "The 14th Fibonacci number is 377.\n", + "I hope this meets your expectations. If you have any other concerns or need further computations, feel free to ask.\n", + "\n", + "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" ] @@ -750,176 +405,154 @@ "metadata": {}, "source": [ "Now we can try a more complex example that involves querying the web.\n", - "Let's say we want to get the the stock prices year-to-date for\n", + "Let's say we want to get the the stock price gains year-to-date for\n", "Tesla and Meta (formerly Facebook). We can also use the two agents\n", "with several iterations of conversation.\n" ] }, { "cell_type": "code", - "execution_count": 84, + "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer_agent):\n", "\n", - "Today is 2024-02-26. Write Python code to plot TSLA's and META's stock prices YTD.\n", + "Today is 2024-02-28. Write Python code to plot TSLA's and META's stock price gains YTD, and save the plot to a file named 'stock_gains.png'.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "First, let's install the `yfinance` library that will allow us to fetch the stock price data. We will also need `matplotlib` for plotting and `pandas` for data manipulation.\n", + "\u001b[33mcode_writer_agent\u001b[0m (to code_executor_agent):\n", "\n", - "Your code block should look like this:\n", + "This task requires retrieving the historical data of the stocks from a reliable data source and calculating the Year-To-Date (YTD) gain values, and then plotting them. pandas_datareader library will be used for data retrieval, pandas will be used for data manipulation, and matplotlib for plotting. \n", "\n", - "```python\n", - "!pip install yfinance matplotlib pandas\n", + "Below is the Python code to achieve this. To start, please install the required libraries by running to the following command:\n", + "```sh\n", + "pip install yfinance pandas matplotlib\n", "```\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: \n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "Great! Now that the required libraries are installed, let's import them:\n", + "Then run the python code:\n", "\n", "```python\n", + "# filename: stock_gains.py\n", + "\n", "import yfinance as yf\n", - "import matplotlib.pyplot as plt\n", "import pandas as pd\n", - "```\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + "import matplotlib.pyplot as plt\n", + "from datetime import datetime\n", "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: \n", + "# define the tickers\n", + "tickers = ['TSLA', 'META'] \n", "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "# define the start and end dates\n", + "start_date = datetime(2024, 1, 1)\n", + "end_date = datetime(2024, 2, 28)\n", "\n", - "Next, let's define a function that fetches the stock data for a given ticker symbol for the year up until the specified date. Then, it will\n", - "return a DataFrame containing the changes in the stock price. \n", + "# dictionary to hold dataframes\n", + "dfs = {}\n", "\n", - "```python\n", - "def get_stock_data(symbol, end_date):\n", - " # YYYY-MM-DD to YYYY-MM-01\n", - " start_date = end_date[:8] + \"01\"\n", - " \n", - " # Fetch the data\n", - " data = yf.download(symbol, start=start_date, end=end_date)\n", + "for ticker in tickers:\n", + " # get the data for the stocks\n", + " df = yf.download(ticker, start_date, end_date)\n", "\n", - " # Return the data\n", - " return data\n", - "```\n", + " # get the close price and calculate the cumulative percentage gain\n", + " df['Gain'] = df['Close'].pct_change().cumsum()\n", "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + " # add to dictionary\n", + " dfs[ticker] = df \n", "\n", - "exitcode: 0 (execution succeeded)\n", - "Code output: \n", + "# plot\n", + "plt.figure(figsize=(10, 5))\n", + "for ticker, df in dfs.items():\n", + " plt.plot(df.index, df['Gain'], label=ticker)\n", "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "plt.title('YTD Stock Price Gain')\n", + "plt.xlabel('Date')\n", + "plt.ylabel('Percentage Gain')\n", + "plt.legend()\n", "\n", - "Now, let's fetch the stock price data for TSLA and META till 2024-02-26.\n", + "plt.grid(True)\n", + "plt.savefig('stock_gains.png')\n", + "plt.close()\n", "\n", - "```python\n", - "end_date = \"2024-02-26\"\n", - "tsla_data = get_stock_data(\"TSLA\", end_date)\n", - "meta_data = get_stock_data(\"META\", end_date)\n", + "print(\"The 'stock_gains.png' file has been successfully saved\")\n", "```\n", + "This script will download the historical data for TSLA and META from the start of the year to the specified date and calculates the YTD gains. It then generates the plot showing these gains and saves it to 'stock_gains.png'.\n", + "\n", + "Please save the script to a file named 'stock_gains.py' and run it using Python. Remember to have the correct start and end dates for the YTD value when running the script. If your Python version is below 3.8, you should update it to execute this code perfectly.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", - "\n", - "exitcode: 0 (execution succeeded)\n", - "[*********************100%%**********************] 1 of 1 completed\n", - "\n", - "[*********************100%%**********************] 1 of 1 completed\n", - "\n", - "\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", - "\n", - "Now that we have the data, we can plot it.\n", - "\n", - "```python\n", - "plt.figure(figsize=(14,8))\n", - "\n", - "plt.plot(tsla_data.index, tsla_data['Close'], label='TSLA')\n", - "plt.plot(meta_data.index, meta_data['Close'], label='META')\n", - "\n", - "plt.title(\"TSLA vs META Stock Prices YTD\")\n", - "plt.xlabel(\"Date\")\n", - "plt.ylabel(\"Closing Price\")\n", - "plt.legend()\n", - "\n", - "plt.show()\n", - "```\n", - "\n", - "--------------------------------------------------------------------------------\n", "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is sh)...\u001b[0m\n", "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_executor_agent\u001b[0m (to code_writer):\n", + ">>>>>>>> EXECUTING CODE BLOCK 1 (inferred language is python)...\u001b[0m\n", + "\u001b[33mcode_executor_agent\u001b[0m (to code_writer_agent):\n", "\n", "exitcode: 0 (execution succeeded)\n", - "Code output:
\n", - "Image data saved to /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmp51yprec0/cf146a5cff554a678621a786ecd70ff0.png\n", + "Code output: \n", + "Requirement already satisfied: yfinance in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (0.2.36)\n", + "Requirement already satisfied: pandas in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (2.1.4)\n", + "Requirement already satisfied: matplotlib in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (3.8.2)\n", + "Requirement already satisfied: numpy>=1.16.5 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (1.26.2)\n", + "Requirement already satisfied: requests>=2.31 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (2.31.0)\n", + "Requirement already satisfied: multitasking>=0.0.7 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (0.0.11)\n", + "Requirement already satisfied: lxml>=4.9.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (5.0.1)\n", + "Requirement already satisfied: appdirs>=1.4.4 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (1.4.4)\n", + "Requirement already satisfied: pytz>=2022.5 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (2023.3.post1)\n", + "Requirement already satisfied: frozendict>=2.3.4 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (2.4.0)\n", + "Requirement already satisfied: peewee>=3.16.2 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (3.17.0)\n", + "Requirement already satisfied: beautifulsoup4>=4.11.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (4.12.2)\n", + "Requirement already satisfied: html5lib>=1.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from yfinance) (1.1)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from pandas) (2.8.2)\n", + "Requirement already satisfied: tzdata>=2022.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from pandas) (2023.4)\n", + "Requirement already satisfied: contourpy>=1.0.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (1.2.0)\n", + "Requirement already satisfied: cycler>=0.10 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (4.47.2)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (1.4.5)\n", + "Requirement already satisfied: packaging>=20.0 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (23.2)\n", + "Requirement already satisfied: pillow>=8 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (10.2.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from matplotlib) (3.1.1)\n", + "Requirement already satisfied: soupsieve>1.2 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from beautifulsoup4>=4.11.1->yfinance) (2.5)\n", + "Requirement already satisfied: six>=1.9 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from html5lib>=1.1->yfinance) (1.16.0)\n", + "Requirement already satisfied: webencodings in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from html5lib>=1.1->yfinance) (0.5.1)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from requests>=2.31->yfinance) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from requests>=2.31->yfinance) (3.6)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from requests>=2.31->yfinance) (2.1.0)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /Users/ekzhu/miniconda3/envs/autogen/lib/python3.11/site-packages (from requests>=2.31->yfinance) (2024.2.2)\n", + "\n", + "The 'stock_gains.png' file has been successfully saved\n", + "\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mcode_writer\u001b[0m (to code_executor_agent):\n", + "\u001b[33mcode_writer_agent\u001b[0m (to code_executor_agent):\n", + "\n", + "Great! The code executed successfully and the 'stock_gains.png' file has been saved successfully. This file contains the plot of TSLA's and META's stock price gains from the start of the year until February 28, 2024. You should now be able to view this image file in the same directory that you ran the script from. \n", "\n", - "Here is the plot showing the year-to-date closing prices of TSLA and META stocks. You can view the plot by opening the image file located at /var/folders/1j/84srcy411pv53xkqm57pvgnr0000gn/T/tmp51yprec0/cf146a5cff554a678621a786ecd70ff0.png. \n", + "Please make sure to verify this image file. It should contain two plotted lines, each representing the percentage gain over the time for each stock (TSLA and META). The x-axis represents the date, and the y-axis represents the percentage gain. If everything looks correct, this would be the end of the task.\n", "\n", - "Please note that the paths are diverging or converging over time, reflecting the changes in the stock prices of the two companies.\n", + "TERMINATE\n", "\n", "--------------------------------------------------------------------------------\n" ] } ], "source": [ + "import datetime\n", + "\n", "today = datetime.datetime.now().strftime(\"%Y-%m-%d\")\n", "chat_result = code_executor_agent.initiate_chat(\n", - " code_writer_agent, message=f\"Today is {today}. Write Python code to plot TSLA's and META's stock prices YTD.\"\n", + " code_writer_agent,\n", + " message=f\"Today is {today}. Write Python code to plot TSLA's and META's \"\n", + " \"stock price gains YTD, and save the plot to a file named 'stock_gains.png'.\",\n", ")" ] }, @@ -927,79 +560,54 @@ "cell_type": "markdown", "metadata": {}, "source": [ + "In the previous conversation, the code writer agent generated a code block\n", + "to install necessary packages and another code block for a script to \n", + "fetch the stock price and calculate gains year-to-date for Tesla and Meta.\n", + "The code executor agent installed the packages, executed the script, \n", + "and returned the results.\n", + "\n", "Let's take a look at the chart that was generated." ] }, { "cell_type": "code", - "execution_count": 85, + "execution_count": 44, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['cf146a5cff554a678621a786ecd70ff0.png']\n" - ] - }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABIgAAAK9CAYAAABPS1fnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAACOK0lEQVR4nOzdd3RUdf7/8dckmfRkQkIaLSI9FCkKxIKoCEh0LbiiWLCvLHbX9cfqWnfFxV0VXSy7XxRXQV1U1rUiFlgVbCC9IxIQUijJpJeZ+/vjJpMMSWAmJpkk9/k4556Z+7l37n3PhJK88ik2wzAMAQAAAAAAwLKCAl0AAAAAAAAAAouACAAAAAAAwOIIiAAAAAAAACyOgAgAAAAAAMDiCIgAAAAAAAAsjoAIAAAAAADA4giIAAAAAAAALI6ACAAAAAAAwOIIiAAAAAAAACyOgAgAAMACbDabbr755oDc+6effpLNZtP8+fMDcn8AAHBsBEQAALQim83m07Zs2TJJUl5enm677Tb1799fERERSkpK0siRI3XPPfeoqKjIc92rr75a0dHRPteRn5+v8PBw2Ww2bd68ubnfZpM9+OCDstlsCgoK0p49e+oddzqdioiIqBd21AQQjW2PPfaY5s+f79Nnf9xxx3ndc+TIkbLZbHruuef8ei++fu0WLlyop556yq9rt7bjjjvO6zNKSkrSaaedpsWLFwe6tCZ77LHHZLPZtGTJkgaPT5o0SQ6HQ+PHj/fpz83VV18tSRo7dqynLSgoSLGxserXr5+uvPJKLV26tBXfIQAA/gkJdAEAAFjJK6+84rX/r3/9S0uXLq3XPmDAAB06dEgnnniinE6nrr32WvXv318HDx7UunXr9Nxzz2n69Ol+hUJ1LVq0SDabTSkpKVqwYIH+9Kc/Nfk9tYSwsDC99tpr+v3vf+/V/vbbbx/1dZdddpkmTZpUr33YsGGKiIio9zlff/31GjlypG688UZPW93PdPv27fruu+903HHHacGCBZo+fbpP9fvztVu4cKE2bNig22+/3adrB8rQoUN11113SZL27dunF154QRdddJGee+453XTTTUd9bVpamkpLS2W321ujVJ/cddddWrhwoX77299qw4YNioiI8BxbtGiRPvzwQ82dO1fDhg3TVVdd5Tm2a9cu3X///brxxht12mmnedp79erled6tWzfNmjVLklRcXKwdO3bo7bff1quvvqpLLrlEr776apv6LAAAkCQZAAAgYGbMmGE09t/x7NmzDUnGV199Ve9YQUGBUVpa6tmfNm2aERUV5fN9x4wZY1x00UXGHXfcYfTs2dP/wlvIAw88YEgyLrroImPo0KH1jp999tnG5MmTDUnGjBkzPO27du0yJBmPP/64X/eLiooypk2b1ujx+++/30hKSjLeeustw2azGbt27fLpuv587TIzM420tDS/6m6KIz8zf6SlpRmZmZlebfv37zeioqKMvn37Nvq6yspKo7y8vEn3bA0rV640goKCjJkzZ3ranE6n0aVLF2P06NGGy+Wq95rvvvvOkGS89NJLDV7z9NNPNwYOHFivvaqqyvjtb39rSDJ+//vfN9t7AACguTDEDACANmrnzp0KDg7W6NGj6x2LjY1VeHh4k66blZWlL774QpdeeqkuvfRS7dq1SytWrDjm6958803ZbDYtX7683rEXXnhBNptNGzZskCRlZ2frmmuuUbdu3RQWFqbU1FSdf/75+umnn3yqcerUqVqzZo22bNniacvOztZnn32mqVOn+vZGm8HChQt18cUX69xzz5XD4dDChQt9ep2vX7uxY8fq/fff1+7duxsc4pabm6vrrrtOycnJCg8P1wknnKCXX3653jXdbrfmzJmjwYMHKzw8XImJiZo4caK+//77o9b5pz/9SUFBQXrmmWd8el91paSkaMCAAdq1a5ek2mF+f/3rX/XUU0+pV69eCgsL06ZNmxqdg2jLli265JJLlJiYqIiICPXr10/33nuv1zk///yzrr32WiUnJyssLEwDBw7Uiy++WK+eZ555RgMHDlRkZKQ6deqkE0888Zhfr9GjR+umm27SX//6V23atEmSdN999yk3N1f/+Mc/FBTUfN8qBwcH6+mnn1Z6err+/ve/q6CgoNmuDQBAcyAgAgCgjUpLS5PL5ao3LOqXeu211xQVFaVzzz1XI0eOVK9evbRgwYJjvi4zM1PR0dH697//Xe/YG2+8oYEDB2rQoEGSpMmTJ2vx4sW65ppr9Oyzz+rWW29VYWGhsrKyfKpxzJgx6tatm9cP+G+88Yaio6OVmZnZ6OtKSkp04MCBeltVVZVP963rm2++0Y4dO3TZZZcpNDRUF110kU+fk+T71+7ee+/V0KFD1blzZ73yyit65ZVXPPMRlZaWauzYsXrllVd0+eWX6/HHH5fD4dDVV1+tOXPmeF3nuuuu0+23367u3bvrL3/5i/7f//t/Cg8P19dff93ove+77z7df//9euGFF3TLLbf49L7qqqys1J49e5SQkODV/tJLL+mZZ57RjTfeqL/97W+Kj49v8PXr1q3TqFGj9Nlnn+mGG27QnDlzdMEFF+jdd9/1nJOTk6PRo0frk08+0c0336w5c+aod+/euu6667zmbfrnP/+pW2+9Venp6Xrqqaf00EMPaejQofrmm2+O+T5mzZqlxMRE/eY3v9GqVas0d+5c/e53v9PgwYP9/kyOJTg4WJdddplKSkr05ZdfNvv1AQD4RQLdhQkAACs72hCz7OxsIzEx0ZBk9O/f37jpppuMhQsXGvn5+fXO9WeI2eDBg43LL7/cs/+HP/zB6Ny5s1FZWXnM11522WVGUlKSUVVV5Wnbv3+/ERQUZDz88MOGYRjG4cOHmzTcyzBqh5jl5eUZv/vd74zevXt7jp100knGNddcYxhG/eFSNUPMGttWrlzZ4P2ONsTs5ptvNrp372643W7DMAzj448/NiQZP/zwwzHfhz9fu8aGmD311FOGJOPVV1/1tFVUVBgZGRlGdHS04XQ6DcMwjM8++8yQZNx66631rlFTu2F4f2Z33XWXERQUZMyfP/+Y78UwzCFm48ePN/Ly8oy8vDxj7dq1xqWXXmpIMm655RbDMGq/BrGxsUZubq7X62uO1R2WNWbMGCMmJsbYvXt3ozVfd911RmpqqnHgwAGvcy699FLD4XAYJSUlhmEYxvnnn9/gsC5fvfnmm4YkIz4+3jj++OM9121IU4eY1Vi8eLEhyZgzZ06T6wUAoCXQgwgAgDYqOTlZa9eu1U033aTDhw/r+eef19SpU5WUlKRHHnlEhmH4fc1169Zp/fr1uuyyyzxtl112mQ4cONDoak51TZkyRbm5uZ5V1iRz6Jnb7daUKVMkSREREQoNDdWyZct0+PBhv2usMXXqVO3YsUPfffed5/FYw8tuvPFGLV26tN6Wnp7u172rqqr0xhtvaMqUKbLZbJKkM888U0lJST71ImqOr90HH3yglJQUr6+V3W7XrbfeqqKiIs9Qv7feeks2m00PPPBAvWvU1F7DMAxPT5xXX31V06ZNO2YdNT7++GMlJiYqMTFRJ5xwghYtWqQrr7xSf/nLX7zOmzx5shITE496rby8PP3vf//Ttddeqx49ejRYs2EYeuutt3TeeefJMAyvHmETJkxQQUGBVq9eLUmKi4vT3r179d133/n8fo6sedKkSTp06JDmzp3rNWF1c6uZnLywsLDF7gEAQFMQEAEA0Ialpqbqueee0/79+7V161Y9/fTTSkxM1P3336958+b5fb1XX31VUVFROv7447Vjxw7t2LFD4eHhnlW6jmXixIlyOBx64403PG1vvPGGhg4dqr59+0oyVyD7y1/+og8//FDJyckaM2aMZs+erezsbL9qHTZsmPr376+FCxdqwYIFSklJ0ZlnnnnU1/Tp00fjxo2rt8XGxvp1748//lh5eXkaOXKk53PatWuXzjjjDL322mtyu93HvMYv/drt3r1bffr0qTcPzoABAzzHJXO+oy5dujQ6lKuuf/3rX5o7d66eeeYZr+DJF6NGjdLSpUv1ySefaMWKFTpw4ID+9a9/1QtTevbsecxr/fjjj5LkGZLYkLy8POXn5+sf//iHJ5iq2a655hpJ5hxNknTPPfcoOjpaI0eOVJ8+fTRjxgx99dVXfr2/k046SZJ04okn+vU6fxUVFUmSYmJiWvQ+AAD4i2XuAQBoB2w2m/r27au+ffsqMzNTffr00YIFC3T99df7fA3DMPTaa6+puLi4wR41ubm5Kioq8lrm/UhhYWG64IILtHjxYj377LPKycnRV199pUcffdTrvNtvv13nnXee/vOf/2jJkiX64x//qFmzZumzzz7TsGHDfK556tSpeu655xQTE6MpU6Y066TBR1MTll1yySUNHl++fLnOOOMMn67VHF+75nLKKadozZo1+vvf/65LLrnEp1CpRufOnTVu3LhjntdcvW9qQrgrrrii0Z5OQ4YMkWSGZlu3btV7772njz76SG+99ZaeffZZ3X///XrooYeapZ7mUjORe+/evQNcCQAA3giIAABoZ44//nh16tRJ+/fv9+t1y5cv1969e/Xwww97eqHUOHz4sG688Ub95z//0RVXXHHU60yZMkUvv/yyPv30U23evFmGYXiGl9XVq1cv3XXXXbrrrru0fft2DR06VH/729/06quv+lzz1KlTdf/992v//v3NPll3Y4qLi/XOO+9oypQpuvjii+sdv/XWW7VgwQKfA6K6GvraHTkMrEZaWprWrVsnt9vtFYzVrOyWlpYmyfyclyxZokOHDh0z8Ondu7dmz56tsWPHauLEifr0008D0pPl+OOPl1QbljQkMTFRMTExcrlcPgVTUVFRmjJliqZMmaKKigpddNFF+vOf/6yZM2c2ecW/5uZyubRw4UJFRkbq1FNPDXQ5AAB4YYgZAABt1DfffKPi4uJ67d9++60OHjyofv36+XW9muFld999ty6++GKv7YYbbvD0bDmWcePGKT4+Xm+88YbeeOMNjRw50mtYUUlJicrKyrxe06tXL8XExKi8vNyvmnv16qWnnnpKs2bN0siRI/16bVMtXrxYxcXFmjFjRr3PqWbJ+7feeuuo78Wfr11UVFSDS55PmjRJ2dnZXsP5qqqq9Mwzzyg6Olqnn366JHP+HMMwGuwp09BcR0OGDNEHH3ygzZs367zzzlNpaenRP5AWkJiYqDFjxujFF1+st7JdTc3BwcGaPHmy3nrrrQaDpLy8PM/zgwcPeh0LDQ1Venq6DMNQZWVlC7wD/7lcLt16663avHmzbr31Vr+HPQIA0NLoQQQAQBv1yiuvaMGCBbrwwgs1YsQIhYaGavPmzXrxxRcVHh6uP/zhD17nV1ZW6k9/+lO968THx+u6667TW2+9pbPPPrvR3hS/+tWvNGfOHOXm5iopKanRuux2uy666CK9/vrrKi4u1l//+lev49u2bdNZZ52lSy65ROnp6QoJCdHixYuVk5OjSy+91O/P4bbbbvP53NWrVzfYQ6lXr17KyMjw6RoLFixQQkKCTj755AaP/+pXv9I///lPvf/++7rooosaPMefr92IESP0xhtv6M4779RJJ52k6OhonXfeebrxxhv1wgsv6Oqrr9aqVat03HHH6c0339RXX32lp556ytPz54wzztCVV16pp59+Wtu3b9fEiRPldrv1xRdf6IwzztDNN99cr77Ro0frnXfe0aRJk3TxxRfrP//5j+x2u0+fT3N5+umndeqpp2r48OG68cYb1bNnT/300096//33tWbNGknSY489ps8//1yjRo3SDTfcoPT0dB06dEirV6/WJ598okOHDkmSxo8fr5SUFJ1yyilKTk7W5s2b9fe//12ZmZkB6SFVUFDg+XNYUlKiHTt26O2339bOnTt16aWX6pFHHmn1mgAAOKYArZ4GAACMoy9zv27dOuPuu+82hg8fbsTHxxshISFGamqq8etf/9pYvXq117nTpk1rdIn3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SYZhNFtRAAAAAAAAaD1+B0QHDx7UuHHj1LdvX02aNEn79++XJF133XW66667mr1AAAAAAAAAtCy/A6I77rhDISEhysrKUmRkpKd9ypQp+uijj5q1OAAAAAAAALS8EH9f8PHHH2vJkiXq1q2bV3ufPn20e/fuZisMAAAAAAAArcPvHkTFxcVePYdqHDp0SGFhYc1SFAAAAAAAAFqP3wHRaaedpn/961+efZvNJrfbrdmzZ+uMM85o1uIAAAAAAADQ8vweYjZ79mydddZZ+v7771VRUaHf//732rhxow4dOqSvvvqqJWoEAAAAAABAC/K7B9GgQYO0bds2nXrqqTr//PNVXFysiy66SD/88IN69erVEjUCAAAAAACgBdkMwzACXUSgOZ1OORwOFRQUKDY2NtDlAAAAAAAANAtfMw+/exC99NJLWrRoUb32RYsW6eWXX/brWs8995yGDBmi2NhYxcbGKiMjQx9++KHn+NixY2Wz2by2m266yesaWVlZyszMVGRkpJKSknT33XerqqrK37cFAAAAAABgWX4HRLNmzVLnzp3rtSclJenRRx/161rdunXTY489plWrVun777/XmWeeqfPPP18bN270nHPDDTdo//79nm327NmeYy6XS5mZmaqoqNCKFSv08ssva/78+br//vv9fVsAAAAAAACW5fcQs/DwcG3ZskXHHXecV/tPP/2kAQMGqLS09BcVFB8fr8cff1zXXXedxo4dq6FDh+qpp55q8NwPP/xQ5557rvbt26fk5GRJ0vPPP6977rlHeXl5Cg0N9emeDDEDAAAAAAAdUYsNMUtKStK6devqta9du1YJCQn+Xs7D5XLp9ddfV3FxsTIyMjztCxYsUOfOnTVo0CDNnDlTJSUlnmMrV67U4MGDPeGQJE2YMEFOp9OrF9KRysvL5XQ6vTYAAAAAAACr8nuZ+8suu0y33nqrYmJiNGbMGEnS8uXLddttt+nSSy/1u4D169crIyNDZWVlio6O1uLFi5Weni5Jmjp1qtLS0tSlSxetW7dO99xzj7Zu3aq3335bkpSdne0VDkny7GdnZzd6z1mzZumhhx7yu1YAAAAAAICOyO+A6JFHHtFPP/2ks846SyEh5svdbreuuuoqv+cgkqR+/fppzZo1Kigo0Jtvvqlp06Zp+fLlSk9P14033ug5b/DgwUpNTdVZZ52lnTt3qlevXn7fq8bMmTN15513evadTqe6d+/e5OsBAAAAAAC0Z34HRKGhoXrjjTf0yCOPaO3atYqIiNDgwYOVlpbWpAJCQ0PVu3dvSdKIESP03Xffac6cOXrhhRfqnTtq1ChJ0o4dO9SrVy+lpKTo22+/9TonJydHkpSSktLoPcPCwhQWFtakegEAAAAAADoavwOiGn379lXfvn2bsxZJZm+k8vLyBo+tWbNGkpSamipJysjI0J///Gfl5uYqKSlJkrR06VLFxsZ6hqkBAAAAAADg6HwKiO6880498sgjioqK8hqa1ZAnnnjC55vPnDlT55xzjnr06KHCwkItXLhQy5Yt05IlS7Rz504tXLhQkyZNUkJCgtatW6c77rhDY8aM0ZAhQyRJ48ePV3p6uq688krNnj1b2dnZuu+++zRjxgx6CAEAAAAAAPjIp4Dohx9+UGVlpSRp9erVstlsDZ7XWHtjcnNzddVVV2n//v1yOBwaMmSIlixZorPPPlt79uzRJ598oqeeekrFxcXq3r27Jk+erPvuu8/z+uDgYL333nuaPn26MjIyFBUVpWnTpunhhx/2qw4AAAAAAAArsxmGYQS6iEBzOp1yOBwqKChQbGxsoMsBAAAAAKBDMgxDVVVVcrlcgS6lwwgODlZISEijnXZ8zTz8moOosrJSERERWrNmjQYNGuRfxQAAAAAAwLIqKiq0f/9+lZSUBLqUDicyMlKpqakKDQ1t8jX8Cojsdrt69OhB0gcAAAAAAHzmdru1a9cuBQcHq0uXLgoNDfV7mhrUZxiGKioqlJeXp127dqlPnz4KCgpq0rX8XsXs3nvv1R/+8Ae98sorio+Pb9JNAQAAAACAdVRUVMjtdqt79+6KjIwMdDkdSkREhOx2u3bv3q2KigqFh4c36Tp+B0R///vftWPHDnXp0kVpaWmKioryOr569eomFQIAAAAAADq2pvZuwdE1x+fqd0B0/vnn0w0MAAAAAACgA/E7IHrwwQdboAwAAAAAAAAEis99kIqLizV9+nR17dpViYmJuvTSS5WXl9eStQEAAAAAAKAV+BwQ/fGPf9Qrr7yic889V1OnTtVnn32mG2+8sSVrAwAAAAAACAibzXbUrWaE1eLFizV69Gg5HA7FxMRo4MCBuv322z3XmT9/vuLi4ny6Z//+/RUWFqbs7Ozmf0PH4PMQs8WLF+ull17Sr3/9a0nSVVddpdGjR6uqqkohIX6PVAMAAAAAAGiz9u/f73n+xhtv6P7779fWrVs9bdHR0fr00081ZcoU/fnPf9avfvUr2Ww2bdq0SUuXLvX7fl9++aVKS0t18cUX6+WXX9Y999zTLO/DVz4nO3v37tUpp5zi2R8xYoTsdrv27dunHj16tEhxAAAAAACgYzIMQ6WVrla/b4Q92KfFt1JSUjzPHQ6HbDabV5skvfvuuzrllFN09913e9r69u2rCy64wO+65s2bp6lTp+r000/Xbbfd1nYDIrfbLbvd7v3ikBC5XK3/xQQAAAAAAO1baaVL6fcvafX7bnp4giJDm2ckVEpKihYuXKgNGzZo0KBBTb5OYWGhFi1apG+++Ub9+/dXQUGBvvjiC5122mnNUqcvfP5EDMPQWWed5TWcrKSkROedd55CQ0M9batXr27eCgEAAAAAANqgW265RV988YUGDx6stLQ0jR49WuPHj9fll1+usLAwn6/z+uuvq0+fPho4cKAk6dJLL9W8efPaZkD0wAMP1Gs7//zzm7UYAAAAAABgDRH2YG16eEJA7ttcoqKi9P7772vnzp36/PPP9fXXX+uuu+7SnDlztHLlSkVGRvp0nRdffFFXXHGFZ/+KK67Q6aefrmeeeUYxMTHNVu/R/KKACAAAAAAAoClsNluzDfUKtF69eqlXr166/vrrde+996pv37564403dM011xzztZs2bdLXX3+tb7/91mveIZfLpddff1033HBDS5bu4fMy9wAAAAAAADi64447TpGRkSouLvbp/Hnz5mnMmDFau3at1qxZ49nuvPNOzZs3r4WrrdUxojoAAAAAAIBW9uCDD6qkpESTJk1SWlqa8vPz9fTTT6uyslJnn3225zyXy6U1a9Z4vTYsLEy9e/fWK6+8oocffrjeJNfXX3+9nnjiCW3cuNEzN1FLIiACAAAAAABogtNPP11z587VVVddpZycHHXq1EnDhg3Txx9/rH79+nnOKyoq0rBhw7xe26tXL/3lL3/RwYMHdeGFF9a79oABAzRgwADNmzdPTzzxRIu/F5thGEaL36WNczqdcjgcKigoUGxsbKDLAQAAAACgQykrK9OuXbvUs2dPhYeHB7qcDudon6+vmQdzEAEAAAAAAFic30PMnn766QbbbTabwsPD1bt3b40ZM0bBwc23bBwAAAAAAABa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EAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUREAEAAAAAAFgcAREAAAAAAIDFERABAAAAAABYHAERAAAAAACAxREQAQAAAAAAWBwBEQAAAAAAgMUFNCCaNWuWTjrpJMXExCgpKUkXXHCBtm7d6nXO2LFjZbPZvLabbrrJ65ysrCxlZmYqMjJSSUlJuvvuu1VVVdWabwUAAAAAAKDdCgnkzZcvX64ZM2bopJNOUlVVlf7whz9o/Pjx2rRpk6Kiojzn3XDDDXr44Yc9+5GRkZ7nLpdLmZmZSklJ0YoVK7R//35dddVVstvtevTRR1v1/QAAAAAAALRHNsMwjEAXUSMvL09JSUlavny5xowZI8nsQTR06FA99dRTDb7mww8/1Lnnnqt9+/YpOTlZkvT8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gUU/++7nTZs22caNG+3QoUO2efNmy8jIsMzMTGtubvY7b/Q8p/aymXleQ3zrW9+yGTNmWGlpqb333nue/Y8//rht3rzZDh48aBUVFbZs2TILCQmxf/zjH35ro+fRy757ud33v/99y8nJ8VsPgefUfl67dq2FhITY888/7/WcmpoazxjeA/YtBETdJOmCj4KCAs+Y06dP25w5c6x///4WERFhP/nJT7y++fLy8i5Y4+qrr/Z53K7+cGhra7Pf//73lpCQYG6328aPH2/79+/37C8oKPB5Dv5s27bNRo0aZWFhYZaamup1zu37L1T35z//ud/a6Hn0su9ezsnJscGDB1tYWJglJydbTk6OHThwwG9dBA797LufX375ZUtNTbWwsDBLTEy0uXPner2ww5XFyb3sb86LFy+2tLQ069evn/Xv39+ysrKssLDQb10EBr3c+Zzbry7ZvHmz33oIPKf289ixY/2+v+M9YN/iMjMTAAAAAAAAHItbmAAAAAAAADgcAREAAAAAAIDDERABAAAAAAA4HAERAAAAAACAwxEQAQAAAAAAOBwBEQAAAAAAgMMREAEAAAAAADgcAREAAAAAAIDDERABAAAAAAA4HAERAADARZg1a5ZcLpdcLpdCQ0OVkJCgiRMn6p///Kfa2tq6XGf16tWKi4u7fBMFAADoAgIiAACAizR58mRVVVXpyJEj2rhxo8aNG6f58+drypQpamlpCfT0AAAAuoyACAAA4CK53W4lJiYqOTlZY8aM0e9+9ztt2LBBGzdu1OrVqyVJy5cv10033aTIyEilpKRozpw5amhokCQVFxfr/vvvV21tredqpEcffVSS1NTUpIcffljJycmKjIxUZmamiouLA3OiAACgzyMgAgAAuIR++MMfKiMjQ0VFRZKkoKAgrVixQu+9955eeOEFbd26VYsWLZIkZWdn69lnn1VMTIyqqqpUVVWlhx9+WJI0b948lZSUqLCwUHv37tXUqVM1efJkVVZWBuzcAABA3+UyMwv0JAAAAHqbWbNmqaamRuvXr++wb9q0adq7d68qKio67Hv11VeVm5urkydPSjq3BtGCBQtUU1PjGXP06FGlpqbq6NGjSkpK8myfMGGCbrnlFj3++OOX/HwAAICzhQR6AgAAAH2NmcnlckmS/vOf/yg/P1/vv/++6urq1NLSojNnzqixsVEREREXfH5ZWZlaW1uVnp7utb2pqUkDBw687PMHAADOQ0AEAABwie3bt0/Dhg3TkSNHNGXKFM2ePVuPPfaYBgwYoLffflsPPPCAmpubfQZEDQ0NCg4O1u7duxUcHOy1LyoqqidOAQAAOAwBEQAAwCW0detWlZWV6de//rV2796ttrY2PfPMMwoKOrf047p167zGh4WFqbW11Wvb6NGj1draqurqat166609NncAAOBcBEQAAAAXqampScePH1dra6tOnDihTZs2KT8/X1OmTNHMmTNVXl6us2fPauXKlbrzzju1Y8cO/fWvf/Wqcc0116ihoUFbtmxRRkaGIiIilJ6ervvuu08zZ87UM888o9GjR+vTTz/Vli1bdPPNN+uOO+4I0BkDAIC+iruYAQAAXKRNmzZp8ODBuuaaazR58mRt27ZNK1as0IYNGxQcHKyMjAwtX75cTz75pEaOHKm1a9cqPz/fq0Z2drZyc3OVk5OjQYMG6amnnpIkFRQUaObMmVq4cKGGDx+ue+65Rzt37tTQoUMDcaoAAKCP4y5mAAAAAAAADscVRAAAAAAAAA5HQAQAAAAAAOBwBEQAAAAAAAAOR0AEAAAAAADgcAREAAAAAAAADkdABAAAAAAA4HAERAAAAAAAAA5HQAQAAAAAAOBwBEQAAAAAAAAOR0AEAAAAAADgcAREAAAAAAAADvd/mzduj8o8ySAAAAAASUVORK5CYII=", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+gAAAH0CAYAAACuKActAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAACgDUlEQVR4nOzdd3zT1f7H8VeSpnvTBaVQyip7T2XJFLcIiIOhol4v9/oTJ+p1K+pVxI0DBAciKHoVkSGCoiJ7710otKWU7pU2+f3xpYVaRoG2aZv38/HII8k332/yyUkLfeec7zkmh8PhQEREREREREScyuzsAkREREREREREAV1ERERERESkSlBAFxEREREREakCFNBFREREREREqgAFdBEREREREZEqQAFdREREREREpApQQBcRERERERGpAhTQRURERERERKoABXQRERERERGRKkABXURERERERKQKUEAXERERERERqQIU0EVERERERESqAAV0ERERERERkSpAAV1ERERERESkClBAFxEREREREakCFNBFREREREREqgAFdBEREREREZEqQAFdREREREREpApQQBcRERERERGpAhTQRURERERERKoABXQRERERERGRKkABXURERERERKQKUEAXERERERERqQIU0EVERERERESqAAV0ERERERERkSpAAV1ERERERESkClBAFxEREREREakCFNBFREREREREqgAFdBEREREREZEqQAFdREREREREpApQQBcRERERERGpAhTQRURERERERKoABXQRERERERGRKkABXURERERERKQKUEAXERERERERqQIU0EVERERERESqAAV0ERERERERkSpAAV1ERKQG6d27Ny1btnTa60dHRzN69GinvX55Gz16NNHR0c4uQ0REXIQCuoiIVHlXXnklQUFBJCYmlnosLS2N2rVrEx4ejslkOu9l+vTpACW2ubm5ERwcTIcOHbj//vvZtm1bmWvLz8/nzTffpF27dvj7+xMYGEiLFi24++672bFjR/F+f/75J8888wypqamX2hwVZvTo0SXaxd/fnzZt2vD666+Tl5fn7PLOa/ny5QwbNozIyEjc3d0JCAigS5cuPPfcc2f82REREalq3JxdgIiIyPm89957tGzZkgceeICZM2eWeOzxxx8nOTmZJ598koYNGxZvnz9/Pl9++SVvvPEGISEhxdu7d+9efLt///6MHDkSh8NBWloaGzduZMaMGbz33nu88sorjB8//ry1DRkyhJ9++okRI0YwduxYbDYbO3bsYN68eXTv3p3Y2FjACOjPPvsso0ePJjAw8BJbpOJ4eHjw8ccfA5Camso333zDQw89xOrVq5k1a9Z5j9+5cydmc+V////UU0/x/PPPExMTw+jRo4mJiSE3N5e1a9fy+uuvM2PGDPbu3XvBz/vRRx9ht9sroGIREZEzcIiIiFQDr7zyigNwLFy4sHjbqlWrHGaz2fHII4+U2v+///2vA3Ds37//jM8HOP75z3+W2p6cnOzo1q2bA3D8+OOP56xp1apVDsDx4osvlnqsoKDAkZycXOZ6ykuvXr0cLVq0uKhjR40a5fDx8SmxrbCw0NGxY0cH4IiPjz/jcXa73ZGdnX1Rr1keZs2a5QAcw4YNc+Tl5ZV6PDU11fH0009XfmEiIiIXSEPcRUSkWhg/fjytW7fmvvvuIzc3l8LCQu69917q16/P008/XW6vU6tWLWbNmoWbmxsvvvjiOfct6pG97LLLSj1msVioVasWAM888wwPP/wwAA0aNCgeQn7gwAEACgoKeP7552nYsCEeHh5ER0fz+OOPn3FY+U8//USvXr3w8/PD39+fTp06lRpV8HeLFi3C29ubESNGUFBQcN42OJ3ZbKZ3794AxfVGR0dz9dVXs3DhQjp27IiXlxcffPBB8WN/Pwc9NTWVBx54gOjoaDw8PKhbty4jR44kOTm5eJ+8vDyefvppGjVqhIeHB1FRUTzyyCNlGlr/1FNPERISwtSpU3F3dy/1eEBAAM8880yJbf/73/+46qqrqFOnDh4eHjRs2JDnn3+ewsLCEvv9/Rz0AwcOYDKZeO211/jwww+LP7NOnTqxevXq89YqIiJyLhriLiIi1YKbmxsffvgh3bt35/nnnycsLIx169axYMECvL29y/W16tWrR69evVi6dCnp6en4+/ufcb/69esD8MUXX3DZZZfh5nbm/1ZvvPFGdu3aVWrIfWhoKAB33XUXM2bM4KabbuLBBx9k5cqVTJw4ke3bt/Ptt98WP8/06dO54447aNGiBRMmTCAwMJD169ezYMECbrnlljO+9rx587jpppsYPnw406ZNw2KxXHB7FH0RUfSFAxhD2UeMGME999zD2LFjadq06RmPzczMpEePHmzfvp077riD9u3bk5yczPfff8/hw4cJCQnBbrdz7bXX8vvvv3P33XfTrFkzNm/ezBtvvMGuXbv47rvvzlrbrl272LVrF3fddRe+vr5lfk/Tp0/H19eX8ePH4+vryy+//MJTTz1Feno6//3vf897/MyZM8nIyOCee+7BZDLx6quvcuONN7Jv3z6sVmuZ6xARESnB2V34IiIiF2LcuHEOq9Xq8PX1dYwYMeKs+13sEPci999/vwNwbNy48az72O12R69evRyAIzw83DFixAjHu+++6zh48GCZ69mwYYMDcNx1110ltj/00EMOwPHLL784HA5jmLafn5+jS5cujpycnFJ1FDl9iPs333zjsFqtjrFjxzoKCwvP+j6KFA1xP3bsmOPYsWOOPXv2OF566SWHyWRytG7duni/+vXrOwDHggULSj1H/fr1HaNGjSq+/9RTTzkAx9y5c0vtW1T3Z5995jCbzY7ly5eXeHzKlCkOwPHHH3+cteb//e9/DsAxefLkUs9d9D6KLjabrfjxMw3Jv+eeexze3t6O3NzcEm1Sv3794vv79+93AI5atWo5UlJSStXxww8/nLVWERGR89EQdxERqVZefPFFatWqhdls5o033qiw1ynqjc3IyDjrPiaTiYULF/LCCy8QFBTEl19+yT//+U/q16/P8OHDyzRj+/z58wFKTUj34IMPAvDjjz8CsHjxYjIyMnjsscfw9PQsVcffffnllwwfPpx77rmHDz74oMwTt2VlZREaGkpoaCiNGjXi8ccfp1u3biV68sEYqj9w4MDzPt8333xDmzZtuOGGG0o9VlT3nDlzaNasGbGxsSQnJxdfrrjiCgCWLl161udPT08HKNV7npaWVvw+ii4bNmwoftzLy6v4dkZGBsnJyfTo0YPs7OwSs++fzfDhwwkKCiq+36NHDwD27dt33mNFRETORkPcRUSkWvH396dp06YkJycTHh5eYa+TmZkJgJ+f3zn38/Dw4IknnuCJJ57g6NGj/Prrr7z55pvMnj0bq9XK559/fs7jDx48iNlsplGjRiW2R0REEBgYyMGDB4FTw8zLssb5/v37ue222xg6dChvv/32efc/naenJz/88EPxe2vQoAF169YttV+DBg3K9Hx79+5lyJAh59xn9+7dbN++vXjI/98lJSWd9diiz6fo8yri6+vL4sWLAeMc/L8PW9+6dStPPvkkv/zyS3HIL5KWlnbOesE4DeJ0RWH9xIkT5z1WRETkbBTQRUREzmDLli1YLJYyB1GA2rVrc/PNNzNkyBBatGjB7NmzmT59+lnPTT/dmXrBL1bt2rWpXbs28+fPZ82aNXTs2LHMx1osFvr163fe/U7vgb5UdrudVq1aMWnSpDM+HhUVddZji5ax27JlS4ntbm5uxe/j8OHDJR5LTU2lV69e+Pv789xzz9GwYUM8PT1Zt24djz76aJmWVTvbufwOh+O8x4qIiJyNArqIiMjfxMXF8euvv9KtW7fz9qCfidVqpXXr1uzevZvk5GQiIiLOGsDr16+P3W5n9+7dNGvWrHh7YmIiqampxRPRFa3xvmXLllK97X/n6enJvHnzuOKKKxg0aBC//vorLVq0uOD3UR4aNmxYKjyfaZ+NGzfSt2/fC/6iomnTpjRu3JjvvvuOyZMn4+Pjc95jli1bxvHjx5k7dy49e/Ys3r5///4Lem0REZHypnPQRURETpOSksKIESMoLCzkiSeeOOe+u3fvJi4urtT21NRUVqxYQVBQUPGw7aLg+Pfz0gcPHgzA5MmTS2wv6k2+6qqrABgwYAB+fn5MnDiR3NzcEvueqdc2ICCAhQsXEhYWRv/+/YuHyFe2IUOGsHHjxlLnsMOpuocNG0Z8fDwfffRRqX1ycnLIyso652s888wzJCcnM3bsWGw221lfp0hR7/fp2/Pz83nvvffO/4ZEREQqkHrQRUTEZe3atYvPP/8ch8NBeno6GzduZM6cOWRmZjJp0iQGDRp0zuM3btzILbfcwpVXXkmPHj0IDg4mPj6eGTNmcOTIESZPnlwcBjt06ADAE088wc0334zVauWaa66hTZs2jBo1ig8//LB46PWqVauYMWMG119/PX369AGMc+/feOMN7rrrLjp16sQtt9xCUFAQGzduJDs7mxkzZpSqLyQkhMWLF3P55ZfTr18/fv/9dyIjI8u5Fc/t4Ycf5uuvv2bo0KHccccddOjQgZSUFL7//numTJlCmzZtuP3225k9ezb33nsvS5cu5bLLLqOwsJAdO3Ywe/bs4vXWz+aWW25hy5YtTJw4kVWrVnHzzTfToEEDsrKy2LJlC19++SV+fn7F54l3796doKAgRo0axb///W9MJhOfffaZhqeLiIjTKaCLiIjLWrx4MYsXL8ZsNuPv70+DBg0YNWoUd999N82bNz/v8T179uT555/np59+YtKkSRw7dgw/Pz/atWvHK6+8UmJytE6dOvH8888zZcoUFixYgN1uZ//+/fj4+PDxxx8TExPD9OnT+fbbb4mIiGDChAk8/fTTJV7vzjvvJCwsjJdffpnnn38eq9VKbGwsDzzwwFlrjIyM5Oeff6ZHjx7079+f3377rXgd9srg6+vL8uXLefrpp/n222+ZMWMGYWFh9O3bt3jyObPZzHfffccbb7zBp59+yrfffou3tzcxMTHcf//9NGnS5Lyv89JLLzFw4EDeeecdpk2bRnJyMl5eXjRp0oQHH3yQe++9l4iICMBYz33evHk8+OCDPPnkkwQFBXHbbbfRt2/fMs1MLyIiUlFMDn1dLCIiIiIiIuJ0OgddREREREREpApQQBcRERERERGpAhTQRURERERERKoABXQRERERERGRKkABXURERERERKQKUEAXERERERERqQK0DrqLsdvtHDlyBD8/P0wmk7PLERERERERJ3E4HGRkZFCnTh3MZvXdVgUK6C7myJEjREVFObsMERERERGpIg4dOkTdunWdXYaggO5y/Pz8AOOX0N/f/6z72Ww2Fi1axIABA7BarZVVnktRG1cOtXPlUDu7Nn3+FU9tXDnUzpVD7Vx1pKenExUVVZwRxPkU0F1M0bB2f3//8wZ0b29v/P399Q9nBVEbVw61c+VQO7s2ff4VT21cOdTOlUPtXPXo1NeqQycaiIiIiIiIiFQBCugiIiIiIiIiVYACuoiIiIiIiEgVoHPQ5YwKCwtxc3MjNzeXwsJCZ5dT7VmtViwWi7PLEBERERGRKkwBXUpwOBwkJCRw4sQJIiIiOHTokCaNKCeBgYFERESoPUVERERE5IwU0KWEhIQEUlNTCQ0NxW634+fnh9msMyEuhcPhIDs7m6SkJABq167t5IpERERERKQqUkCXYoWFhaSmphIWFkZQUBDp6el4enoqoJcDLy8vAJKSkggLC9NwdxERERERKUXJS4rZbDYAvL29nVxJzVTUrkXtLCIiIiIicjoFdClF50hXDLWriIiIiIiciwK6iIiIiIiISBWggC4iIiIiIiJSBSigS7VmMpnOeXnmmWcA+Pbbb+natSsBAQH4+fnRokUL/u///q/4eaZPn05gYGCZXjM2NhYPDw8SEhLK/w2JiIiIiIjLUkCXau3o0aPFl8mT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pcRjpgqcdMzd3Z0OHTqwZMkSrr/+esBYm33JkiWMGzfujMd069aNJUuW8H//93/F2xYvXky3bt0qrM4KY7ZA4jYjnHsFQZMrodnVENMH3M8/9F5ERERERKSmcfmAvnTpUqe99vjx4xk1ahQdO3akc+fOTJ48maysLMaMGQPAyJEjiYyMZOLEiQDcf//99OrVi9dff52rrrqKWbNmsWbNGj788EOnvYdL0vc/YHaDet3B4vI/iiIiIiIi4uKUik7as2cPe/fupWfPnnh5eeFwOCq0Bx1g+PDhHDt2jKeeeoqEhATatm3LggULiieCi4uLw2w+tRJe9+7dmTlzJk8++SSPP/44jRs35rvvvqu+a6A3vMLZFYiIiIiIiFQZLh/Qjx8/zrBhw1i6dCkmk4ndu3cTExPDnXfeSVBQEK+//nqFvv64cePOOqR92bJlpbYNHTqUoUOHVmhNIiIiIiIiUvnM59+lZnvggQewWq3ExcWVWHZs+PDhLFiwwImViYiIiIiIiCtx+R70RYsWsXDhQurWrVtie+PGjTl48KCTqhIRERERERFX4/I96FlZWSV6zoukpKSccXkyERERERERkYrg8gG9R48efPrpp8X3TSYTdrudV199lT59+jixMhEREREREXElLj/E/dVXX6Vv376sWbOG/Px8HnnkEbZu3UpKSgp//PGHs8sTERERERERF+HyPegtW7Zk165dXH755Vx33XVkZWVx4403sn79eho2bOjs8kRERERERMRFuHwPOkBAQABPPPGEs8sQERERERERF+byPeiffPIJc+bMKbV9zpw5zJgxwwkViYiIiIiIiCty+YA+ceJEQkJCSm0PCwvjpZdeckJFIiIiIiIi4opcfoh7XFwcDRo0KLW9fv36xMXFOaEiqYkKCu0cOJ7N7sQMdiZmsDsxkx0J6eRmWQhrcYJujcKcXaKIiIiIiDiZywf0sLAwNm3aRHR0dIntGzdupFatWs4pSqotu93BoRPZ7ErMZFdiBrsSM9iZkMG+Y1nkF9rPcISJMTPWMuW2DvRuqpAuIiIiIuLKXD6gjxgxgn//+9/4+fnRs2dPAH799Vfuv/9+br75ZidXJ1WVw+HgSFquEcITMooD+Z6kTHJshWc8xstqoUm4L43D/Wga7keDWp68/sNatqfC2E/X8Mbwtlzduk7lvhEREREREakyXD6g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iIjanxACWlpaAICffvoJGzZswPnz51FeXo7a2lo8ePAAVVVVMDY2bvb4rKwsSCQSeHt7y2yvrq5Gt27dOnz8REREmogFOhERUReUm5sLNzc3FBUVYeLEiVi4cCHWrVsHa2trnDhxAnPnzsXDhw/lFuiVlZXQ0dFBeno6dHR0ZPaZmpoq4xKIiIg0Dgt0IiKiLiY5ORlZWVlYtmwZ0tPTUVdXhw8++ADa2vVLz+zbt0+mvb6+PiQSicy2p556ChKJBDdu3MDw4cOVNnYiIiJNxgKdiIioE6uurkZJSQkkEgmuX7+Ow4cPY8OGDZg4cSJmzZqF7Oxs1NTUYOvWrZg0aRJSU1Px6aefyvTh6uqKyspKJCUlwdfXF8bGxvD29kZoaChmzZqFDz74AE899RRu3ryJpKQkDBgwABMmTFDRFRMREXVdXMWdiIioEzt8+DDs7e3h6uqKoKAgHDt2DB9//DEOHjwIHR0d+Pr6YvPmzdi0aRP69euH+Ph4bNiwQaYPf39/hIeHY+rUqbCxscF7770HAIiNjcWsWbPw+uuvw8fHBy+88ALS0tLg7OysikslIiLq8riKOxEREREREZEa4CfoRERERERERGqABToRERERERGRGmCBTkRERERERKQGWKATERERERERqQEW6ERERERERERqgAU6ERERERERkRpggU5ERERERESkBligExEREREREakBFuhEREREREREaoAFOhEREREREZEaYIFOREREREREpAZYoBMRERERERGpARboRERERERERGqABToRERERERGRGvj/8rLITpLP5z4AAAAASUVORK5CYII=", "text/plain": [ "" ] }, - "execution_count": 85, + "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "output_files = os.listdir(temp_dir)\n", - "print(output_files)\n", - "Image(os.path.join(temp_dir, output_files[0]))" + "from IPython.display import Image\n", + "\n", + "Image(os.path.join(temp_dir, \"stock_gains.png\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Clean up the temporary directory and restart the Jupyter server to free up\n", - "the kernel resources." + "Clean up the temporary directory to avoid cluttering your file system." ] }, { "cell_type": "code", - "execution_count": 86, + "execution_count": 37, "metadata": {}, "outputs": [], "source": [ - "shutil.rmtree(temp_dir)\n", - "code_executor_agent.code_executor.restart()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Note on Legacy Code Executor\n", - "\n", - "In existing AutoGen code, you may see\n", - "`code_execution_config={}` \n", - "or \n", - "`code_execution_config={\"use_docker\": False, \"work_dir\": \"path/to/work_dir\"}` \n", - "specified\n", - "in agent's constructor.\n", - "This is the legacy way of specifying the code executor.\n", - "The default value of `code_execution_config` is `{}` which means to use\n", - "a similar version of docker command line code executor,\n", - "while `{\"use_docker\": False}` means to use a similar version of local\n", - "command line code executor.\n", + "import shutil\n", "\n", - "We recommend using the new way of specifying the code executor,\n", - "which gives more flexibility and extensibility: you can choose different\n", - "types of code executors and even supply your own code executor by\n", - "passing a custom implementation of `autogen.coding.CodeExecutor`: `code_execution_config={\"executor\": CustomExecutor()}`." + "shutil.rmtree(temp_dir)" ] }, { @@ -1018,38 +626,7 @@ "It also comes with default `description` field for each of the\n", "`human_input_mode` setting.\n", "This class is a convenient short-cut for creating an agent that is\n", - "intended to be used as a code executor.\n", - "\n", - "The default `code_execution_config` for `UserProxyAgent` is currently set \n", - "to use the legacy\n", - "code executor with `{\"use_docker\": True}`.\n", - "The default `description` field is also currently tuned for the legacy code\n", - "executor which executes code in command line." - ] - }, - { - "cell_type": "code", - "execution_count": 90, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{'ALWAYS': 'An attentive HUMAN user who can answer questions about the task, '\n", - " 'and can perform tasks such as running Python code or inputting '\n", - " 'command line commands at a Linux terminal and reporting back the '\n", - " 'execution results.',\n", - " 'NEVER': 'A computer terminal that performs no other action than running '\n", - " 'Python scripts (provided to it quoted in ```python code blocks), or '\n", - " 'sh shell scripts (provided to it quoted in ```sh code blocks).',\n", - " 'TERMINATE': 'A user that can run Python code or input command line commands '\n", - " 'at a Linux terminal and report back the execution results.'}\n" - ] - } - ], - "source": [ - "pprint.pprint(UserProxyAgent.DEFAULT_USER_PROXY_AGENT_DESCRIPTIONS)" + "intended to be used as a code executor." ] }, { @@ -1062,21 +639,20 @@ "In the previous examples, the code writer agent is created directly using\n", "`ConversableAgent` class. In existing AutoGen code, the code writer\n", "agent is often created using `AssistantAgent` class, which is a subclass of\n", - "`ConversableAgent` with `human_input_mode=NEVER` and `code_execution_config=False` -- it never requests human input and does not use code executor.\n", + "`ConversableAgent` with `human_input_mode=NEVER` and `code_execution_config=False` \n", + "-- it never requests human input and does not use code executor.\n", "It also comes with default `system_message` and `description` fields.\n", "This class is a convenient short-cut for creating an agent that is\n", "intended to be used as a code writer and does not execute code.\n", "\n", - "**Important:** The default `system_message` of `AssistantAgent` is currently\n", - "tuned for the legacy code executor which executes code in command line.\n", - "If you are not using the command line code executor, \n", - "you may need to modify the \n", - "`system_message` make sure appropriate instruction is provided." + "In fact, in the previous example we use the default `system_message` field\n", + "of the `AssistantAgent` class to instruct the code writer agent how to use\n", + "code executor." ] }, { "cell_type": "code", - "execution_count": 91, + "execution_count": 39, "metadata": {}, "outputs": [ { @@ -1120,37 +696,30 @@ } ], "source": [ + "import pprint\n", + "from autogen import AssistantAgent\n", + "\n", "pprint.pprint(AssistantAgent.DEFAULT_SYSTEM_MESSAGE)" ] }, - { - "cell_type": "code", - "execution_count": 92, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('A helpful and general-purpose AI assistant that has strong language skills, '\n", - " 'Python skills, and Linux command line skills.')\n" - ] - } - ], - "source": [ - "pprint.pprint(AssistantAgent.DEFAULT_DESCRIPTION)" - ] - }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Best Practice\n", - "As a best practice, if you are not using the command line code executors, \n", - "we recommend using `ConversableAgent` directly and specify the\n", - "`system_message` and `description` explicitly instead\n", - "of `UserProxyAgent` and `AssistantAgent`\n", - "as they are tuned for the legacy code executor." + "\n", + "It is very important to note that the `UserProxyAgent` and `AssistantAgent`\n", + "are meant to be shortcuts to avoid writing the `system_message` instructions\n", + "for the `ConversableAgent` class. \n", + "They are not suitable for all use cases.\n", + "As we will show in the next chapter, tuning the \n", + "`system_message` field\n", + "is vital for agent to work properly in more complex conversation patterns\n", + "beyond two-agent chat.\n", + "\n", + "As a best practice, always tune your agent's `system_message` instructions\n", + "for your specific use case and avoid subclassing `UserProxyAgent` and\n", + "`AssistantAgent`." ] }, { @@ -1159,10 +728,8 @@ "source": [ "## Summary\n", "\n", - "In this chapter, we introduced code executors: command line executors and\n", - "Jupyter executors. \n", - "We also showed how to use code executor in a conversation between\n", - "a code writer agent and a code executor agent.\n", + "In this chapter, we introduced code executor: how to set up docker and local\n", + "execution, and how to use code execution in a conversation to solve tasks.\n", "In [the next chapter](./conversation-patterns), we will introduce conversation patterns, and show\n", "how to use the result of a conversation." ] From 012e558fdb7cd11d1bfda1969b9a445d03df8743 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Fri, 1 Mar 2024 01:00:00 -0800 Subject: [PATCH 23/43] update conversation pattern --- website/docs/Getting-Started.md | 1 + .../getting-started/assets/nested-chats.png | Bin 0 -> 86079 bytes .../conversation-patterns.ipynb | 416 ++++++++++++++++-- .../docs/getting-started/what-is-next.ipynb | 9 - 4 files changed, 376 insertions(+), 50 deletions(-) create mode 100644 website/docs/getting-started/assets/nested-chats.png diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index 3b59313113a9..d8b4223d9a43 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -40,6 +40,7 @@ user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stoc The figure below shows an example conversation flow with AutoGen. ![Agent Chat Example](/img/chat_example.png) +* [Tutorial](/docs/getting-started/introduction). * [Code examples](/docs/Examples). * [Documentation](/docs/Use-Cases/agent_chat). diff --git a/website/docs/getting-started/assets/nested-chats.png b/website/docs/getting-started/assets/nested-chats.png new file mode 100644 index 0000000000000000000000000000000000000000..cd74d6a604406218a11a0848947c612a27e6b290 GIT binary patch literal 86079 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 literal 0 HcmV?d00001 diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/getting-started/conversation-patterns.ipynb index 425b1ec18864..9495cbc0c2f4 100644 --- a/website/docs/getting-started/conversation-patterns.ipynb +++ b/website/docs/getting-started/conversation-patterns.ipynb @@ -59,7 +59,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -85,6 +85,13 @@ "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mAgent A\u001b[0m (to Agent B):\n", + "\n", + "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n" ] }, @@ -92,13 +99,6 @@ "name": "stdout", "output_type": "stream", "text": [ - "\u001b[33mAgent A\u001b[0m (to Agent B):\n", - "\n", - "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", - "\n", - "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33mAgent B\u001b[0m (to Agent A):\n", "\n", "Absolutely! Here's an example:\n", @@ -148,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -178,7 +178,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -206,7 +206,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -224,7 +224,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -283,7 +283,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -339,7 +339,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -549,7 +549,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -639,7 +639,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -666,7 +666,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -688,7 +688,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 13, "metadata": {}, "outputs": [], "source": [ @@ -711,7 +711,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -774,7 +774,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -804,7 +804,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -838,7 +838,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 17, "metadata": {}, "outputs": [ { @@ -858,21 +858,7 @@ "\n", "My number is 3, I want to turn it into 13.\n", "\n", - "--------------------------------------------------------------------------------\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/ekzhu/autogen/autogen/agentchat/chat.py:46: UserWarning: Repetitive recipients detected: The chat history will be cleared by default if a recipient appears more than once. To retain the chat history, please set 'clear_history=False' in the configuration of the repeating agent.\n", - " warnings.warn(\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + "--------------------------------------------------------------------------------\n", "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", "\n", "6\n", @@ -940,6 +926,14 @@ "\n", "--------------------------------------------------------------------------------\n" ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/ekzhu/autogen/autogen/agentchat/chat.py:46: UserWarning: Repetitive recipients detected: The chat history will be cleared by default if a recipient appears more than once. To retain the chat history, please set 'clear_history=False' in the configuration of the repeating agent.\n", + " warnings.warn(\n" + ] } ], "source": [ @@ -1001,7 +995,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -1029,7 +1023,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -1132,9 +1126,349 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Nested Chat\n", + "## Nested Chats\n", + "\n", + "The previous conversations patterns (two-agent chat, sequential chat, and group chat)\n", + "are useful for building complex workflows, however, they do not expose a\n", + "single conversational interface, which is often needed for scenarios like\n", + "question-answering bots and personal assistants.\n", + "In some other cases, it is also useful to package a workflow into a single\n", + "agent for reuse in a larger workflow. \n", + "AutoGen provides a way to achieve this by using nested chats.\n", + "\n", + "Nested chats is powered by the nested chats handler, which is a pluggable\n", + "component of `ConversableAgent`.\n", + "The figure below illustrates how the nested chats handler triggers\n", + "a sequence of nested chats when a message is received.\n", + "\n", + "```{=mdx}\n", + "![nested_chat](./assets/nested-chats.png)\n", + "```\n", + "\n", + "When a message comes in and passes the [human-in-the-loop component](./human-in-the-loop), \n", + "the nested chats handler checks if the message should trigger a nested chat\n", + "based on conditions specified by the user.\n", + "If the conditions are met, the nested chats handler starts a sequence of\n", + "nested chats specified using the sequential chat pattern.\n", + "In each of the nested chats, the sender agent is always the same agent\n", + "that triggered the nested chats.\n", + "In the end, the summary of the last nested chat is used as the response\n", + "to the original message." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here is an example of using nested chats to build an arithmetic agent that\n", + "packages arithmetic operations, code-based validation, and poetry into a single\n", + "agent. This arithmetic agent takes a number transformation request like \n", + "\"turn number 3 into 13\" and returns a poem that describes a transformation attempt.\n", + "\n", + "First we define the agents. We reuse the `group_chat_manager_with_intros`\n", + "from previous example to orchestrate the arithmetic operations." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [], + "source": [ + "import tempfile\n", + "\n", + "temp_dir = tempfile.gettempdir()\n", + "\n", + "arithmetic_agent = ConversableAgent(\n", + " name=\"Arithmetic_Agent\",\n", + " llm_config=False,\n", + " human_input_mode=\"ALWAYS\",\n", + " # This agent will always require human input to make sure the code is\n", + " # safe to execute.\n", + " code_execution_config={\"use_docker\": False, \"work_dir\": temp_dir},\n", + ")\n", + "\n", + "code_writer_agent = ConversableAgent(\n", + " name=\"Code_Writer_Agent\",\n", + " system_message=\"You are a code writer. You write Python script in Markdown code blocks.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")\n", + "\n", + "poetry_agent = ConversableAgent(\n", + " name=\"Poetry_Agent\",\n", + " system_message=\"You are an AI poet.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", + " human_input_mode=\"NEVER\",\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we define the nested chats using the sequential chat pattern.\n", + "All the senders are always `artihmetic_agent`." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "nested_chats = [\n", + " {\n", + " \"recipient\": group_chat_manager_with_intros,\n", + " \"summary_method\": \"reflection_with_llm\",\n", + " \"summary_prompt\": \"Summarize the sequence of operations used to turn \" \"the source number into target number.\",\n", + " },\n", + " {\n", + " \"recipient\": code_writer_agent,\n", + " \"message\": \"Write a Python script to verify the arithmetic operations is correct.\",\n", + " \"summary_method\": \"reflection_with_llm\",\n", + " },\n", + " {\n", + " \"recipient\": poetry_agent,\n", + " \"message\": \"Write a poem about it.\",\n", + " \"max_turns\": 1,\n", + " \"summary_method\": \"last_msg\",\n", + " },\n", + "]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we register the nested chats handler to the `arithmetic_agent` and\n", + "set the conditions for triggering the nested chats." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "arithmetic_agent.register_nested_chats(\n", + " nested_chats,\n", + " # The trigger function is used to determine if the agent should start the nested chat\n", + " # given the sender agent.\n", + " # In this case, the arithmetic agent will not start the nested chats if the sender is\n", + " # from the nested chats' recipient to avoid recursive calls.\n", + " trigger=lambda sender: sender not in [group_chat_manager_with_intros, code_writer_agent, poetry_agent],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we call `generate_reply` to get a response from the `arithmetic_agent`\n", + "-- this will trigger a sequence of nested chats and return the summary of the\n", + "last nested chat as the response." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "I have a number 3 and I want to turn it into 7.\n", + "\n", + "With the following carryover: \n", + "\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mArithmetic_Agent\u001b[0m (to chat_manager):\n", + "\n", + "I have a number 3 and I want to turn it into 7.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mAdder_Agent\u001b[0m (to chat_manager):\n", + "\n", + "To give you the result, I'll add 1 to the number you gave me. So your new number is 4.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mMultiplier_Agent\u001b[0m (to chat_manager):\n", + "\n", + "8\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mSubtracter_Agent\u001b[0m (to chat_manager):\n", + "\n", + "7\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "7\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mNumber_Agent\u001b[0m (to chat_manager):\n", + "\n", + "7\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "Write a Python script to verify the arithmetic operations is correct.\n", + "\n", + "With the following carryover: \n", + "First, 1 was added to the initial number 3 to make it 4. Then it was multiplied by 2 which resulted in 8. Finally, 1 was subtracted from 8 to reach the target number 7.\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mArithmetic_Agent\u001b[0m (to Code_Writer_Agent):\n", + "\n", + "Write a Python script to verify the arithmetic operations is correct.\n", + "Context: \n", + "First, 1 was added to the initial number 3 to make it 4. Then it was multiplied by 2 which resulted in 8. Finally, 1 was subtracted from 8 to reach the target number 7.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Writer_Agent\u001b[0m (to Arithmetic_Agent):\n", + "\n", + "Here is a Python script to verify the aforementioned arithmetic operations:\n", + "\n", + "```python\n", + "# defining the initial value\n", + "initial_number = 3\n", + "\n", + "# Adding 1 to initial number\n", + "initial_number += 1\n", + "assert initial_number == 4, \"The first operation failed!\"\n", + "\n", + "# Multiplying the result by 2\n", + "initial_number *= 2\n", + "assert initial_number == 8, \"The second operation failed!\"\n", + "\n", + "# Subtracting 1 from the result\n", + "initial_number -= 1\n", + "assert initial_number == 7, \"The final operation failed!\"\n", + "\n", + "print(\"All operations were carried out successfully!\")\n", + "```\n", + "In the script, the entire process is broken down into steps. The `assert` function is used to verify the result at every step. If any of the operations doesn't yield the expected result, an `AssertionError` exception will be raised. If all operations pass, the message \"All operations were carried out successfully!\" will be printed.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[31m\n", + ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", + "\u001b[33mArithmetic_Agent\u001b[0m (to Code_Writer_Agent):\n", + "\n", + "exitcode: 0 (execution succeeded)\n", + "Code output: \n", + "All operations were carried out successfully!\n", + "\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mCode_Writer_Agent\u001b[0m (to Arithmetic_Agent):\n", + "\n", + "Certainly, that means the python script was successful and every arithmetic operation performed correctly given the initial input and the steps performed.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[34mStart a new chat with the following message: \n", + "Write a poem about it.\n", + "\n", + "With the following carryover: \n", + "First, 1 was added to the initial number 3 to make it 4. Then it was multiplied by 2 which resulted in 8. Finally, 1 was subtracted from 8 to reach the target number 7.\n", + "The Python script successfully performed and verified the arithmetic operations on the initial number provided. The steps included adding 1 to the initial number, multiplying the result by 2, and finally subtracting 1. The assert function was used to check the result at each step, and confirmed that all operations were carried out correctly.\u001b[0m\n", + "\u001b[34m\n", + "********************************************************************************\u001b[0m\n", + "\u001b[33mArithmetic_Agent\u001b[0m (to Poetry_Agent):\n", + "\n", + "Write a poem about it.\n", + "Context: \n", + "First, 1 was added to the initial number 3 to make it 4. Then it was multiplied by 2 which resulted in 8. Finally, 1 was subtracted from 8 to reach the target number 7.\n", + "The Python script successfully performed and verified the arithmetic operations on the initial number provided. The steps included adding 1 to the initial number, multiplying the result by 2, and finally subtracting 1. The assert function was used to check the result at each step, and confirmed that all operations were carried out correctly.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mPoetry_Agent\u001b[0m (to Arithmetic_Agent):\n", + "\n", + "From numbers, logic, pure mathematical creation,\n", + "Ponder this tale of numeric manipulation.\n", + "In the universe of Python where operations exist,\n", + "A story of integers and functions persist.\n", + "\n", + "Three was the number from where we began,\n", + "Oblivious to the journey and its grandiosely plan.\n", + "Added with 1, the sum it adorned,\n", + "A sweet quadruple in the dawn was formed.\n", + "\n", + "The saga continued with a twist of the tale,\n", + "The four was multiplied, while the winds wail.\n", + "The duo of four unfolded its wings,\n", + "An octet presence in our midst it brings.\n", + "\n", + "Then enters subtraction, sly and clever,\n", + "Removing one to alter the endeavor.\n", + "From eight, subtracted one in delight,\n", + "To finally bask in the glow of seven's light.\n", + "\n", + "Each operation, together they conspired,\n", + "In this tale of integers, creatively inspired.\n", + "Through life's equation, the script ran so free,\n", + "Amidst the language of Python, a symphony, you see.\n", + "\n", + "Tested with assert, cross-checked the chain,\n", + "Confirming accuracy in program's domain.\n", + "Each move calculated, each step so right,\n", + "In the maze of coding, found was the light. \n", + "\n", + "Such is the tale, of numbers and operations, \n", + "A dance among digits, logical iterations,\n", + "Just another day, in this AI poet's life,\n", + "Cutting through ambiguity, like a razor-sharp knife.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "# Instead of using `initiate_chat` method to start another conversation,\n", + "# we can use the `generate_reply` method to get single reply to a message directly.\n", + "reply = arithmetic_agent.generate_reply(\n", + " messages=[{\"role\": \"user\", \"content\": \"I have a number 3 and I want to turn it into 7.\"}]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A poem is returned as the response, which describes the transformation attempt\n", + "from 3 to 7." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Summary\n", + "\n", + "In this chapter, we covered two-agent chat, sequential chat, group chat,\n", + "and nested chat patterns. You can compose these patterns like LEGO blocks to \n", + "create complex workflows.\n", "\n", - "[To be completed...]" + "This is the last chapter on basic AutoGen concepts. \n", + "In the next chatper, we will give you some tips on what to do next." ] } ], diff --git a/website/docs/getting-started/what-is-next.ipynb b/website/docs/getting-started/what-is-next.ipynb index 2a82601c783d..bbc94a8f670c 100644 --- a/website/docs/getting-started/what-is-next.ipynb +++ b/website/docs/getting-started/what-is-next.ipynb @@ -45,15 +45,6 @@ "\n", "You can also share your work with the community on the Discord server." ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Advanced Topics\n", - "\n", - "[Curate a list of advanced topics and link to webpage version notebooks.]" - ] } ], "metadata": { From 853edb44fa0296f3e582093cd40d464c1d2afb08 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sat, 2 Mar 2024 19:07:35 -0800 Subject: [PATCH 24/43] redirect --- .pre-commit-config.yaml | 2 +- website/.gitattributes | 7 +++++++ website/.gitignore | 6 +++--- website/docs/Getting-Started.md | 2 +- .../assets/conversable-agent.png | Bin 30650 -> 0 bytes .../assets/human-in-the-loop.png | Bin 38796 -> 0 bytes .../assets/code-execution-in-conversation.png | Bin .../assets/code-executor-docker.png | Bin .../assets/code-executor-no-docker.png | Bin .../docs/tutorial/assets/conversable-agent.png | 3 +++ .../assets/group-chat.png | Bin .../docs/tutorial/assets/human-in-the-loop.png | 3 +++ .../assets/nested-chats.png | Bin .../assets/sequential-two-agent-chat.png | Bin .../assets/two-agent-chat.png | Bin .../code-executors.ipynb | 0 .../conversation-patterns.ipynb | 0 .../human-in-the-loop.ipynb | 0 .../introduction.ipynb | 0 .../what-is-next.ipynb | 0 website/docusaurus.config.js | 2 +- website/sidebars.js | 13 +++++++------ 22 files changed, 26 insertions(+), 12 deletions(-) delete mode 100644 website/docs/getting-started/assets/conversable-agent.png delete mode 100644 website/docs/getting-started/assets/human-in-the-loop.png rename website/docs/{getting-started => tutorial}/assets/code-execution-in-conversation.png (100%) rename website/docs/{getting-started => tutorial}/assets/code-executor-docker.png (100%) rename website/docs/{getting-started => tutorial}/assets/code-executor-no-docker.png (100%) create mode 100644 website/docs/tutorial/assets/conversable-agent.png rename website/docs/{getting-started => tutorial}/assets/group-chat.png (100%) create mode 100644 website/docs/tutorial/assets/human-in-the-loop.png rename website/docs/{getting-started => tutorial}/assets/nested-chats.png (100%) rename website/docs/{getting-started => tutorial}/assets/sequential-two-agent-chat.png (100%) rename website/docs/{getting-started => tutorial}/assets/two-agent-chat.png (100%) rename website/docs/{getting-started => tutorial}/code-executors.ipynb (100%) rename website/docs/{getting-started => tutorial}/conversation-patterns.ipynb (100%) rename website/docs/{getting-started => tutorial}/human-in-the-loop.ipynb (100%) rename website/docs/{getting-started => tutorial}/introduction.ipynb (100%) rename website/docs/{getting-started => tutorial}/what-is-next.ipynb (100%) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 24e8bea90a99..77c21da437e7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -41,7 +41,7 @@ repos: pyproject.toml | website/static/img/ag.svg | website/yarn.lock | - website/docs/getting-started/code-executors.ipynb | + website/docs/tutorial/code-executors.ipynb | notebook/.* )$ - repo: https://github.com/nbQA-dev/nbQA diff --git a/website/.gitattributes b/website/.gitattributes index c91090298e20..262e444518c6 100644 --- a/website/.gitattributes +++ b/website/.gitattributes @@ -2,3 +2,10 @@ docs/Tutorial/code_executor_files/figure-markdown_strict/cell-8-output-1.png fil docs/Tutorial/assets/Human-in-the-loop.png filter=lfs diff=lfs merge=lfs -text docs/Tutorial/assets/conversable-agent.png filter=lfs diff=lfs merge=lfs -text docs/Tutorial/.cache/41/cache.db filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/nested-chats.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/sequential-two-agent-chat.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/two-agent-chat.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/code-execution-in-conversation.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/code-executor-docker.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/code-executor-no-docker.png filter=lfs diff=lfs merge=lfs -text +docs/tutorial/assets/group-chat.png filter=lfs diff=lfs merge=lfs -text diff --git a/website/.gitignore b/website/.gitignore index 6002e6242788..0544a84437b1 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -12,9 +12,9 @@ docs/reference /docs/notebooks docs/llm_configuration.mdx -docs/getting-started/*.mdx -docs/getting-started/**/*.png -!docs/getting-started/assets/*.png +docs/tutorial/*.mdx +docs/tutorial/**/*.png +!docs/tutorial/assets/*.png # Misc .DS_Store diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md index d8b4223d9a43..ea6f859e4e40 100644 --- a/website/docs/Getting-Started.md +++ b/website/docs/Getting-Started.md @@ -40,7 +40,7 @@ user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stoc The figure below shows an example conversation flow with AutoGen. ![Agent Chat Example](/img/chat_example.png) -* [Tutorial](/docs/getting-started/introduction). +* [Tutorial](/docs/tutorial/introduction). * [Code examples](/docs/Examples). * [Documentation](/docs/Use-Cases/agent_chat). diff --git a/website/docs/getting-started/assets/conversable-agent.png b/website/docs/getting-started/assets/conversable-agent.png deleted file mode 100644 index e41f60ba6033a60df458754e7d619645aed4058a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30650 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�cuXH~V}lpFT&PI8D6N%xI4kdfRO0s#W8Hx3EmP?ICeV1g_bEl|Ce z#kmn?Bls%fxWDYd|1h*^W&!i3a zfipL`)l;PDd5fUha7j`oa4%n$-P17hD>5{Y1n`Tu&o5f_nczvC*vvSoArfev$2+5Y zclR)eu6ennf%fh|M;hS^?AFT^#BpV$7d^#JzgrIDfKN;hB!AgyDhG3i5J6vbWAqkO zbmL3GTJnKV3A6#G!Ikl{47lEsFovdIZSq^6;18Auh>oQ}oZje`#H66=&b1LV3>)>| zksdNZq+F`4|9A2MBMr5mOW(=i@~c!~2Wi3?Fps(vyV&($9eGHrkP-irEa?BI!&&gQ zXmku!U`-=ErL*S(7k#$$Z!cb|e=8!pK&5fJiMy5IwZDncjYVYKe`;uWC|1Drs_9yH zG0+5lsx>xi&DB{DXrbHt|@%i7LPN+XGq(gZc`JYQ)$>I6}Jm*Hc(!%@U4&V1M zyP(W1#U_!nxBlCK`S1;lLa~kJMUrBm>GwwN5_&LtkNeCN*FHLT|IUOB=9nF}XZGMf zS^LMWKl~y^Y=aZ2JHy}w8up}%wvs9#xDTg}6p%DiA@A!fc_^{DvnPmPo zFADN4lnUmG-c^3TATTvsYQk&bzAwHnZ0w_3K>hMf7eGA3L4(FyE@PksOp^X3NWEo2 zQMW{}er9-We*`JgW&vFzy{8F~5VW)N|4KI8tV>BP*ICHFH`pHS&fnq!{8y|&P+|o7P5}0|Ki>ras&@pFZO^{* zbrh!)0hQ7@to<1$z64YS0W3+pJ!vmN@=#+V{P0KeL$W`p;3h|IF^R(^l3Jo)=pT^i zA=Q7f0Wzl&!SkxKh-Fu*)?V??7+c1Fibx*BPTo4?@miQ5WB;i=ApJ8)-b|j;K`lKL z4WxQa{g;3Bf`5?48%dah5V}A%hf{=^us37+$Dj$A7bz?sRYJ+TSgp$~nuSN!Et?`H zSdqUBWTQjF3PZpP|0y2v3=C(;E*8T3S%1Un`e#T<(LV}|P=80-v6goo^;d(uw}Tt$ z_Q6{c2qdgkpKxuq6UY<&-J^%+6%k*ZoJR-(TAS_opG~)NP^(w#04;uP?-hyz(DiOt zL~VNpZqM>{k&B(6QlPeXOOF$j5-KiYf`pt5nVdKrNA83p-z$K>I z*I8l>;80XA^H}C$sa(TstEOzXn35?@g%y^at?zBwGeWZj$M+?M z{s?1K1dHwXMS}MrkB9Jpv}~7Wf1($Y5!<~6?^lUX=KN@$wVJVAZTVc|SP*&YQxnt+ zr!vEF`kJXU5OV3Z&nGb49X1j#*_638mi1FF5GvC+R{MuqjXp7_0;z;0&y)ob?2`d5 zG`hX;0GBWx?$6DL>j07z_RQZSm_856psn?Cv0JIgQJ7HOD`}K<-PVo;X_&J{B+zK~ zfqt=U47qOEu7UoTEI6v6js+E%vxX#(7+*`wUw3|<$(X|JuUj9cRzG;K+(AK9oU)gO z#d2$Nhk>>p1VKUYz?{Cb!<)YlN&t0=kAE(J1c@aWd<0*c#ieEcpb z9IjBm#y-6*|3BruWmMEr_df~<0)mtvBHcBBfV2!C(v9>`0wWF5AT0ta-O`GLba!_Q z-Q6LbLkxAl$P=pA%;nDsrZHjm)SJjCtK{DRn=PKrD(zwnhS+ctnQkU=@*Uw(KjHo<}qg69+v8mOe=Gbc* z@)`r{d}5uhgUIh9-y}n zfErI>87V$3_QTu`+VTa5BNTAfo@faK#zs&j&4o=F)Gr((Ui|(xV?c@SytphY$H%8= zBxnInE8!jvsx^e}y*Zkkb~O!e4U7p7IqIo^%y4H}bqf9ZT#hk}MR5Mi`6 zGb(8deJZI?ONw6<|2u*^(1y>v0jNjrTi#wJO)h6h*Wsu|$}TehWrL?~B3t|&Nj=(6&wOv}RzOfc)^YCE+&dOdsL z&?Ws>vlJ4zi;{QIj|g{Ay++ZT^RnleKeb@+8Jy5NDAWP}a{Kf#*%~TY`~5>6=~(lg znj~=h=#~u7*87)ag1=b+9w%&p!K)VLlBZ0bINo9=wcY33LD}BEinh_SwcC*W3Ed^HPE2 zm(a%st%zH=S^$accrPcU{RmSrAK3Fb)I$q^!}0GQ2J-$1<$FU8VOm4N^GVNb$cxsZ z5%Yq#?Ke$t)88dM{%$UXx4V0(9*@?Cr?_c}@Dn0|86FYl77cv?g&OI*|GN$WaxO!F zn2F!(iP?RqDL9ZnP7)Zq6Gw6-lLdt?*7|Bkni!Q&lTYKDQPN7^5bM0fvk7o>do09% zYRdi}K^RoM0E_6`5U7p)hrVj-7lNn%XE>xay7BXWSrvbCT$Yd)9c095^y z%f)}~u*m<{IeAzkERUZD9a~2N`2uCWQ~Wb^JNQbp@$|oz5IGfpW>gj%PhVNi!p+F8 z((4&26@?N7K7KEN2pXIpE^<aZg2deGqf}_M&C6#U0`ncX5D-p>SK|J6UNYmH!pa+!Lxs{k;~* zJ*Ji6!B@}|j;`;L=@pJ<&3~^H$>u^1Qz;e$#aRnPBlFO`MXG-5`zBzlHARhDLZKbJ z)pENrgHZ{^uMD%j;6ctp*N@^ZI@Jq(coT0r*~>g(!ZQ`lY5jd9!_!dkXn{o6r-)Ao7r_4S5&rQzGetA*e)^Ev5_Qe7>!oV-5E>$(l~Ci#I&f)_G! zfL*4Gwjs~l>)_H5SH#9D6EgKh6ztH|1xI}of9C8fHJ{~aSj+K>P zq2;O;##4ZQJE@ObZj(;Or<+{z;;liH5ku<1Oq~Rh1_GIRc+v%DhQW&?;)TR~*a|6ob=TB-Z0``_>5x2AYnvDzVa(DzT3h-jhQu4$qaMwX{fDG8ulYXWUisDP$F~ zh39J?hvn4ezgHQ)K4;L}$&nB1Ds)+d^^1BNU*NUAf@v4Bnl4@?=${v>gpE#bee={H zRQ`%Cw2QRB#X0|*&<3FIx1ahV<&7uyzLuHZ%AW={JFT&8J9imZZxAKiawVR`wB%{! zz8CH79pvfzrOj04cK!aA$X8Rj=>$x6KTIUY-<$ba@lp2TA%7A<~`-P5&tf< zBPp~J4PnsrCH~7dB%X;5nBrH6VjX~AgA+A0f%sOvLtU#KPc#=x>Z8Ec+hXVtZzfDP z0lNTO$8NUNC(y5S4ugl&AiF^CM4dsm5DZXQu#o&@2~@AudLVSV*{!*~U>83OVhF}R$Iu?y$W${4Q_)&eXg-{r|OcO!Mp1AvJ9xwBX_Ylq3T!rr*3_#a!d8X zzko#J@xxt*nQ~|&n?!^v_P3~)c>)%k=64&|E0>_0GAsrZZI><^SwyY;y-Lkb>}Pm z?=TNsZ90QA|J>GN_B5qJDE@E{cQWJSji!3BD+;1_3&SmC*9O)}+6;*{flG#UROGUc8>ugo+p-53?&dW!0zQ%g9-&p0#2FW3u__6}_a{uP(IL zip)>9uxN@#$KMsh$}E4S?#7BDT`+N6tjj*0SUo0#fG%(85D8qnlvRHJKjW!GAKrH_ z&Qyc5)Y=+JhVyG0Rx807McRdP42Ho&4nXKS;L!nX%hs28FYu&)o4vKvE*evP0QWZD z6(_iKXzRXL>)y7iI&befWmeVxRitur7I?F?u8Z`pj#yBQbc1H$jpC;=n#aFch+7_+p-T-CGnJ3E56N621xk>pJguKP&pJpsTkRH84KXia6f1JAC&x3c;T>{0VC zO_%H-GDqDVY6vN>=}GXkdnr$)>ShoWY0Zy>b6P6?5dRz8b+%7?g$Av>BAn&H3m}14BGI z*mqrirh1{NBh7kKg#>-l%pn4WVwzM1(b|Yw@;73fg$Z?Ook=qEr)_?M?1ENm$k#6u zrgA9ZmB9Idt`@S-LY^>4a>MkS zKU<^Mow-qjhT6B^Xvt zTIpCK;~GcpKSV`E2M~Gm9u|I2@!V{CTK4XE?|Vh3bO!y4?T`fMq#L!A8+S1s64oKb zy6obKby@#HG21+M{==8E=S5MSzL0gp_y|joASn~|-m6?~)ahiY%rPo6 zR++B}l15H}iA=N=1`uF<;?}B4g>@iX-@yTW?>YL@`||*b`SLOTXX)E^m6W^Nyk_Lf zSkHr?c#jDGLQWkxs7p6qMH;`-&d40y8hRMtb?cUDi2^hZ165b>2|;OD%+^&Z|FXC| zp20}Z%Nc+*PMjFst2}vcdC{QEY&1fRW|gs&LAB~N$y`bfw{k~ysmO*5$b-QIV)=aX zhjZfDo0R8UfOwHV(7k@)wmwJAM-Qn-*BVHoA-leq=KmsJxs%_lnrFLTzLJ4$qYDq- zGjDNgY zKUvq1ZNW$PG9~-OX9AoWK9RXOTY@*+knvWJKwDFNKF?2GwKLX`YnvJiG$1RK{!|*D zqmIrRdG7eh0PR?d5>?tk>J@jY_SOl{?kIv5BnSmSiS!fXRX-jShg563x>m_mn`rlu zkmht1A!8-Q{UE!hDBQD5#$nHXTB7O9Gal`=Oacjhu5tEvx1=+*@3IUA$``P(ysqad zc{Wp->3;VjrzOMkV>Dn=qE;_xVcUNhpZirJ!a@h#Yq}{_OpJ}~H>*7e`9x2HszLfSXKf4iX_sYT)^n&-;R?4tUubariEXdiC~=COOqK)i-4WoRRp54h zGKsZ)K`9fvY~n?RW<-aQZLo1FQ*0uPSHCPhebCkEWR~Cc+yoix;_ptooGd7**u4@4 z89i{OV8*Wv-WJq<$~Wdv143~HI3-nW(3-yTBE@JDu&D*mXq(oZTxkFVe!IGC3~VBF zG|S}BFWZ82HRKe(+ng!z#9eD~ve!Q7qU-^jkw2z^>8059e_0zwFy`>)gMgqafG|_| z?KzSH(v+c0ivlVr#YT?hm;>?kV#x+teE=N~WiW>cyVftoZZ(j8fg)NHeM=#n^IHla z^JnT&KpdF~7)aTHH@;_nPQK;jJPZXCH5 zQgjP4N40*SO}d-NqQr1|bm>o2Jd`q@9>tH*`J*!}lOyGGU*mi)jA!4|I;i%7GC0+F zh9A2_47o&OX#q`PiDg=6uVMK|{RmdyqayoJ6sk&^p5=0_h-CPu8=j0E0*9BRd8B8;xE9 zAJB*d2Fx-_9PJ5m2j!`lV~c9Jkn7I|29;ZKdnV|6czZbzQ7hZ>Hx++a3Wit3aJ5y-x zyhPg8Gdz_;)Q$3prK^;2i*YuleR`d(GyA2OFopLDT}=z4KfLjgd~D#0*mbidn=a5( zh0HZsc5Mm36f-Q?)d7P0{m|#>fO*U^xh*LD%Cr6ke6z3bm<%`x2u4-4BCkz$%juuy zMHePlCX3(SmHDjTN?3(F;kvU1C08{Ty32Q$y1-35PB+IGBuVJIYu>D)Eko7|TnOj_*MPyzw^r4P&)R;F3-E;|Ig$u_D{u;)ST|v~I-fme zMwkkRXJi6%#}BfY-ypZ#I7KQ% z9_ZS;VsEKZX_6y_6L46AW!0nSFT09cp>YezQ@!2zh9*U#_x@9vb};45XIeSiOHJ&6 zDG_I8@F{npAfU>#ykh^9d8XMZzrptcWv13LEElJ9Z^Bw7cIPpqk1?XreDLQ&uTc{l z`}^BGqs@>^B!?1g9HLC&oF7}PJ~pn)>zfzqb*Jp)wX(Dr$$j{W7M2qcGk)gic;mO5 zc{qXJQ*a25#-pGWw5 zG6#q$9vr&b=G7IvgXr>kX4F=byB%=st2C<4roL*aQw$RIX|w@YvS!n~nliNu=-xKp zrRyce%iUHjY&6v0(?k0-qYsVhj1DKbk>q>cKb85NI3PbAOTsMhzK7F4w?YzhwkV-B zsRb1{Qy2`^6})Kxc=w=1!O^G~j14KyGnDFD&F-otQj%5S9cd%E^FWjjV ztXTlEN@X9PH8m&P{IQjQ>ob_$ClA~j6_R4A+fP$Jh?+u2`04I4_U3A(78}c(ZH(&s z8@hZ|yN-1DZ7cMzS1-C8$kxib&H$36T(s)ZaT#CL&?AgG<9UHretu9INBf;esz!m~ z6pL1?K!%{WaQNw=uauR*AwlPalo6VtDyUDh$k2HM%?cn%Tk6PcoAWOAdGQ-dcVdOc z_wGS)U$_f}zcl*@&}NR_%0!sbMtc z*+9xWUd5|WvsVKI4;2rjrr0b<@j>tmMZ^io0`7-qc$G(5v5%R%{^fA8$-)|>(x8Xz z0vzj{Uyyd1>~*qiEXNVUne1Go)e5gMD!w|D-PO<-lI@N%%uPCb?gi19I;BIp2OpCB z>;b|Hjr_vqX?qa2QKqMO?nH$_lkE!ZIM$l#WrP(xc>|L3Bc^#b0ZTrioGSrSrf4#& z`tc~>oMvfQktK4Uc%OE9-XCp@9>n4(HYSD5VHp}-uexo*1ypV)SYDTyw5Wf+`0<7@ zSM!n4w_oFJ1csxdFxY^-QY^r{m-Xn)<5Pa(pG8}^QFGul)(6x+FfU6}4`^>JbvqZ= z`7XI3wRJMx=hicdOHx*&O0)Va{y&4<`Qx18gC)@tg9`{FsAkxotB9p0fb_50M^KXL z(ltx}qEDsk*ypfHsZ77{<<|VUeI;EuPL*40Kry*))vFbdL<0zj_wr~>|Nr;Bz}&UQHSLOA)k?78o6@}n`OdYX9^YxoGz`FRnB^3 zWM>ih>mws`XE28XHLD{jBjLh=ZILWz%hS&EA}t0M_WUzaG5KNz`vkn4$1e{l-4-WC zm8e;C)UmlPS3A`S;$?+Xz{3rXp*z5mV&`+dDg>x6;kTTdH|Ld%ZtG#e&J=T6T->LD zM7nYbohG_?)YH~UFg5GNy1?fAz!&W-Jihnu0-~G%&dBJBvq$Ph^5Wc5P@U(r7wUDf z&|ZRzmX_cpexAHSu;L^S>+EB?HhV3j^CSdMH`Us$dA}mN@9y*(y%9Sw>m%`s} zg3CaGn{SBkff#`Qupi?(2LDVMoYFO>-sd2j+E}=Q&P@d z(2)MPJV5uDib%OhvA-RT(XlFxpL=eFn=(B5!vO!3NP*)>#5MIHz#-03@k=yQ4&Qd%osT;JD%xQDK(}Z=2h)My7va zT}qRE1J0j14iWOvFJ;L_KpdvmyA^*i3yioFuO`RAn(cH)f8nf}U+7w&8tQLS=1#0AkFg6+b%ukzvTy+ruif*^%wHN*_&z&M%i zrLa}}9(|(6wtIdU)%K@gxxY*(LX)>(mex7k{{P?yx!BxHUPniB?A!*cPSVh_dCod)1kd2&B;w?P zTA-KU@uG#$^EG^s$*A$Eq$^^Nb!&?wCp)1|9~?ToL8Wg1Ee3%xIvOAXKhsp$c}0}JPO)~}{r z&Jb|#{s)BFD_rAcTV!?j?osthHk)*MKvIa#vw^-jIkIUM`aEO zr#qQzBGeq3IQ7^W^6HUmR%;S^AXfdO<_T47tyIK5nv0?o=^Y>hi?t7nHK{U;S4rn_ zDLYrg8>Es}_D}f$U+N4!+`C=;GN~d?A^lPZ+;Bm6ig_4=iAi?<+=~!u zj^UHrj^@-Ac5hxYK8~2q3glABJQVN4yBV!+Is>_1s&`C!vT#Y>I}|ET8YN_n%elt+ z)MivnTykGVOIt2ocqQgNQl5-b^sqA~f8zO2q;GJ{UGQ-JV>}tDS9pPsgOX4fw;4uY zhjq1lL+09LOc(lWB{a1_RmyDhH-7&E`4?^YI$7mGmKFsHNi5T0fj!Hr&Pz3=#ccf> z6$d`$PmW}JM$G_t6em_Qb_=so;1LMqQG-`nQsPN~;iK2%g1KQeJ7wPo*wI?%2z({? zK+Y}wcdO#G!tg`-MSd+T>#KsPA9I@Lh4>P40k*qk{n>HEK+!7&he~4Fp2K;Ow265$`-iAV@=(Y5^djzg2cmBTRi)M2 z3rpjrX7hTKzmYU>xdnZP;Kxl^7*>Z>Vef^`>a=~Ll9XoA=U#0jVTM8pr!qw6MRepv z@0+yIZ&&WxJy>32HOv6`vkQ)Q3(r?+(2U+tYfuCgLtu~4g@gORYUBA^;qW4JqbPR# zcUehrzV)^TS7;%~t@dR9Gc&L?Wza=t*6TTXx=T+e+HigJTD_a*|6TYlXRx8P-6Uz6 zxD~Iu*uaVo-!wtDFx&PN{SQtm79GAhlq&ig0<*j%bj!jmLXUAd7$8Y#9A-M9Xn#j8 zujB5iQ`H_WVD=@rvz2{gm)RbeyODTie{~C z^;xT4a19v1TlpdDIOGo~_5g!A(?|dDK$(SvOV|Xr2zvs3gC^;PhPtEri@F+@#Q}2= zX2M9;eE2P=gVVF{^Dv9U%l_7GuAA~_;7HkBX+5q6Zy>z6_{s06A~LeNhg!l7JX*kR zG_BtBhBq8C;?YQl(j4}nmHH=EAflrqx>Zq${*#VqcN;2zvsaN|qh4yZmOaFI{ujUd z{NyNu$JwTl!K(uM{CRU*p`Qyje`QS)-l#)M>v$0mg&7?FkiQ}yzX~FVnz{B};G@M# z+$AT{j&c9uXAhFpS#7~%XQ#~zHe1gBY24dA2o=dxkjR9>X6Cg&i1O%yPTQ)nk>q`- zL|Du~dZ{2GrcpN?WpF^d(sa=(Eu~Cbo129R;K37ExFXRcUL>~V|9wI0>vuUufAZHi zBxWB}SfMH!n0?c?$(XR%>DKoNM&GY_*RcQ>TK+YVA{jl*zEW8#->ug6?(*)$UABA0 zlQxdPFMZS@mVkr{cn9PN3%RHWaxaGO7NP;$R%ZCx=^6V=S0XxS!pNnZD=`3WxrPdj z%)S9v$ExQtp?PKugq{9}wn8sRe(=T4Q#edzAuk&9e+Q^QXtr z;q8>dUq|u*IT?aF1aSZr0i&2DpMzaM1Uewn;j{ik1K?-?OE#j*sI%yN#%=_?%AyNF zxf@Sv5XA@dUbclEiFE~u`@sFv*og#-xC{ukk7qLe{X`uY~= zk?aSgez_@w1rE%z*N%cH_9!rb7*4qaTL1u@mS_=x>;gbr_*~AV?JR&?0ca0bjE)h2 z6O}Ucoy*dcVtue~3^_3q#v@$`b{=r1pnXAf7P&1*q*0Rc6r14%QqMG!^@T*(Ug;e+ zR<4**nW3gkdB4d`gu{Q29KR+y!uX3a^ZxH4tiJ%{VoeAj2DxL26R~3VJ7$9_CA4D| zzj#_wXpb`mXB+-@(zf7hV}?Hf6vpt|Scrp2*7zT0_&?NSFvdh(>L3HaND;gA)#_dV z8Z>`uuMNPJ4RWDt02jtl7!vecteN>=+x%M-6a%P>vRdVM&P+Ibl{ciC9q>aJ8M=<6 zft#9t(*DmiZ3+Q2?QffwZmMsx*I1eqO}qhhcOR)5FMfa)#QW!4>ZZMEy#3lfhk#~i;Gs3v!+UBzBgwON?2-DfDI_M;A^VykF^q+uokt0SR zSg>e974S}(h2@6^hwR8aU00ETnBs5HcVboI#oRc_)eLgjJVtq9O#)_X+~yu$-9*tU zJ3z%S2;5iq>hfYaIhGfq)2Z&x3d^KO=m0^0_ceqQFK2N6;qdNB;$@GQju}%+m^mbe z6c@RI%jAVC8>UW4tqqx!(`TBklc#HcftZ zsQz{|%q`%ZhZ0*V|2HKhE}q_&a|q-1z$ZHO%Wk>)^*=R!Yvmt(^FpG`3Ft}Ma#5}O zeePBV{L{wr;O0^OFe`wKxOb;EMjk9)ML^;|!2Yxcct;?kj(;=+0AuyKe9!bVCv>^G z&`aJ3?I+*MvDy_zaO?8Rpna93;p_BtIyOuBsj((O=?POE3bBiQ9;WA^@(4_(rZ;n< zo~3LGF`uj0?Tt>g4QQXauXf{lp>6<0>25wa*z4a5@h+{0lKzBkk$1(D^A1a2`Fn;k2T8bb9_QeTbata z=tmLk7|$+m+nUpORMBvc-zbZiBLlvb-EWxp_PY@xty4oUYqz#;P9^e7w)KXZ9lAQh z@)RF9aTSw?jI9UGY+Zqxy2h5bQE3ED3MK0fmss9kvX8I*m|XVzrjMHWJcY?R7L}CYU&l028~4D&!W9k4mTe*G37sF(L~0I%Z)c% z-{{~x?J@fe+A%84%YG@>sp)bO;%R@uv_;NN(H*AT!c#*`S|$o;zLUqPB=p zy|6tXxafK&&ZfM5Bjjp#m8iUh--P1}rf-5e>`Zjj@9He#KF zA&zLN%;6t#TsRHfBF-*SnhJOc=WOfzo2X`*wo!A98uY=#f&#V6f{4(T5V2aB%|g9m zSpJ!UrOSTe#nnSpbb@Dc#xCAE+3|>LjbquZrs3;5muCGx1-~v0+THI-`c$? zN~)B7$sS!8;iYh2f*+pYyypl;Rp2!8IFZ06CH8nQF>vn4)oXmZ@cHynX5HO$*4!ip zU$0e6$CKgaL2a)^@+`kFd@B*x;rd(4;7F`6qVNTR5BfAJT)UN>t$SpTY z&P{MmK5$-6o$9oUd*!)gex{|PF$=+il^m2`p4UI91nZ2ALb8^9t)aS(XEzUwq94?| z^{q78f9zGWcMCozPCHq35~8izcnR`>C{E2bHXbaLPFz2+bFpz*m|9>JrOYu~?4E?x z^gZvsZ+HSm!wS_h*3y(M3#gILe;DbVZujdk!^HJWhhlw1PIgWgXJm{y=P=GyB=H~d z;lA0A9xJUPW;^rHvW;t_v#y34c$T@@68T&w746-AyIXHZkkH9+5}D%yb2I0KfVRRd z90omg18)?<&L$^wI^XMq7Z%x?ua5zb3-WP4XdUgj_47Y4L7`i*$#L zjgpS^9ww)le1G$tE=keHsTa622M^|lnrpwOwJK=fRyIEMU-zK zF`tilhUYk{GQSpL*?*N{vYTW#fkR_3U9IK=g@G3$dQA;iO%Ea7v+v>7*m3a4>9-oG z95R`*%x8*o-j#OcPL7SxmnM<{hBk?M-HFq7U$Omv;PfX((hE!mJ%IGLFiUpVnU)x}8u0jE3C_Zn&~FrSontG#@xmO@KS7k~WqF(+sg-_; zoM;I}!_D65#2V98{)M{Bq;p+YjY12LV8uZ1rGL;-nj2D%aUq zCg76U$QUW6U3;ceY(MIvzt~oviGA{)!eSWN2~gOH#c9z;wW!PRL(0I8`8}u9K{))Q%Nj#>A zvChn~hkP!%=s4S(hd6j?iJzf99Jfad61-}E{Oxa#P|(0w(=~sjl|I?L-|j=ZpCW|Q ze!jo%36%?4RjY(|nW?~j?1>67$hasHwim4N{QLY1SAU8|60O1r*i_t>Y@<)s7|M2t zRH{So@C@n&{$o$0fLDLa($MR)JEsh-7C-IguEcQ1EazZZ=b79;2o@qbhq?CHM> zL!u7}kt4|?)sl8xw!yeR@lKLww_rNS9 z9M{~6DNGJk4vOwvasQ{79xv1Z%$fg8AK;5_7_ve0g`RXW$ms<9CZQqAAVUr{FpPd< zXbh6d+G4H$h83lk!1iA;^pvMGWR7(RY^s05C>vz);O`W{qFJs$>5UwlP&xYdTb$<& zIZ}4y=W~GOQi^;&{kOSj+Sz~l#S-KY=UI1#KlwM+up)6s9{v-v#S%4|HYY!Q`L7NL z#Qn^^@c&0d6f|X=NL(RK10@Ms${|A(1B0P)8Y)-^SEaD9NF@W` z?yf$Ch@j0juBbgoJ-n<8u;Az^>Xueijr2lZX2dLQ5&pND0(A`UsjTe)A9u48xj=yz6i-eDq!NL;QLR5U^1mb2#8kqr&p#6XuB;8$`or(Vbdq_fK`6>Q}{)nGG zy{iPJrW1V%^yB-~+rc?pAZn^$jFlFNjRk!PuAVIANFXPZ1mYZrsfOe?Sy?b@&^0s| zc&IrT0CWWodVK-CKupes_^&$<-MOFs>l(cL<3lmu6>~5!0We7sK@~UflPo9$6;aIK z^FkD%zwP(y+)DYSeh7+aqE&{Ki&X~dBK>a>lrEx>`LM*(p69Fr&_QT~`N-1=z7w>z zwHX8COQfw!j?T4}V`CYQ>*SfP_Y-)^A1$hpuit=bdd3IFRhXjv@(e_0^5{lCvGJ&}I|eI`dp zLLwYLBN9KuLMqx`WcoX0S?&Ee#RFAUK5(-#(}2#Q2|jXiaBtOPddp zet@xn#f?GIy*62;rAgtEhqQb-zoJ>h3m^emqI5=DB2>^s)U=B_Cq9TMoIfR*lWSMIjq4Z#HeK%E^CLpX&zmP#W%(r~O<4<3!yb z1cxnJ1-C})k_4KY+aE1y(&}uBloO->BJ{+`E$CyzKSIHj%Gai+)zj5nvigj5X!G3o zaN1x&t3(F+LAgy3!EO=@jFN*`D?z9aP?{EfQ}K-n{G~fcB#4|@sXf;7u}cvHdxIKW z*Pr}N6MfO%L?0p*N9}?Tu0Jwc6_Mmk~zX7UvQ3(Bwh^k0vMej<&?Y@GZ0*wPA zzd81U-@tkk+V;a;G31k7_OLaORt(8)z7#lV;wNUl0%HDkQHdPjv@&%vvT80aAU51_ z_q~BUp$W-Fj8tH9$@b*;e_hmsq(RJ6;h9RLW2mSCfcwBKw4E3m$oJ%SGqGMWMSs+j*vuR_p3`}eh+K_RqD)FjYT5`r`r`UKi>oxiY6@ZTqvU@{fV zX&Fd4imn5QIi6p)kwMfcNMlP-6z~-EL1aF3K^$T#eBuD+Zlt=1N8;lYkP{(Pl%;j) zv16tn?yE>7hoF*#K|%LWLK^N=V!f=?U|rbSE3&GHx&XkSee!=WIdC*l0ATh;9guwkQ6!>|!KQ{+CJ7G0`-fZ}v?OVRlemFQ94D!D`dTA-J4wtcvFiVuWk9ElBF z*=?l=IZS^&OQ#gZ_aa$PyHaLb5TnoGX!dN^QP_UIcplWT#B#^cxNCJXdKy@yKH%um9mZpRl$QPH+pr3^yNMoY}YOaIhO^->COi-Ha_Jdw7ZV=cYIIhcv!tqM$1>_{9 z>iEV^QAq8cy4WJX#Mq~mloQ1t&QVSjCsO3XB9d=Ay?^P4&eKga17oB2d%XsMms!I<5B640z2OJ_DZH=Ms<}BU^|xC-BaI}{DJG8 zM+_@JQtla%nfa49uH5TS!x~Pkd)FP@Zx^y1?{p5jO5B&ympdJ78jK-%4de;RRwiuS zk6Tt<| zfq=e7D|hU-S*WY?n_-kX%dCgQ%M^?wt_9w^Y!j1w8u^>s7CBAUVyo5AYr0#c3SCl5 z9}oR=S2g=eUNJsOMZ@kI_cN!{pM02JA{LE*Nu#*$6Zl+t$V^96|Cq+u>K9iAuoc=nAAcdg6&F2xmb(90cwG@c3 zK_x|vF)uGKl%whoRN*Nm2OIp7C9u^^xAo_JCRYlmS1w0)6FGe3s>iHzD^Rob!Z9cF zE4|sNCH=?u@(7J4#$Dkv&y9aE0mmFb?ggc>tuhg~e(MWzFO1~zTTNh4c-xH& zar$!oQ98H?Aq&8yWgu!hTZl>e?mMT1%)Qi+hlzElcBM0KU2C76J#p0JxW!oIi zy54Di=+3hJpFKopnO8+T7oB?!lN1q28mz-7jc2vcoAXkcQSSGyhaSDWEf!ukoOt}1 z^;va^CUkP4{Ez;11YQ|?UxVO*TMP zj6Nr}-6SdY)t`**y`56Xssh3KxDCGCv!pZgNyV6UmQg$0hcaT)| zZVK0+G?#nCg1_9>h27HO5FQ@Nk0QxO{qdHTl}ilUfwCI;!hJ!F<1#wRlCO4+=;8XH zOfX!@uwF9gE#>YJ2O%3ORF+*dnWrz?iZHwWx8ye69Nfq2nHn7hxj=}R`Va_{w}w0^ zQyWzCRm~7XpMP}}sI@F1dfbcn^O5Nh&8VDW=ThtO?Cl=61D z5L%gWu;K!+`+KF=oYu5Lcx`T$r4ufF-yIWK2twdJ$IBw$X#Lh!<|;!MhqZeQhrNJ% zGAix!;`jAqtq8CIpVE$A)#VB#NFr=*jQ8LAVNuqrdlu+5i~}er+sFEX4Gfu76t1OB zX6Q$8xk5tliqS5c1>+XqKS5x9X5iY+Ci-KDToPr0p#9hSm;lNXtU7o%@84rhf=K;ECNqZicfr}k!~?>TxHs7b6la+AcUS_Mfi9aIQ1v#tXMJn zyh4&tm>0;Ep$On!!87y)MJF}Lb{+g#OD#j6QeZSf1qA-?nQ*_qY0~%W{;_YpX!#Pt zp>J8c9(pjd49`$zKh{h0%x`uIwNWC<*mp>^ciAsOtugmBUZ7TcCly)2UUKYu+(DAv zB(}r$RO-`5ubm;U>3giJd$vBAJo2QOGZcp)ty<>zD;h~`0J06p{Ks`{CSY;L0KEk4 z`r;<>YR-yxg)K^N{qpLrp3~|zHa6YD$E}Jg*QHE((lDMtNX~#G8p|ZIR)*8@P5)Q{ zTE^q~4Cb0tOn2)l#=CUi0@*6e9#>8-471pT-cQ4jv7zDRru(2$#ZJ{di(Cr3P)>*2^_4_lJX-l#i@vb@yyeE zW$R3-N~|n>a&1kwOHNKN;jIgkUB7rXd*U$)$Z$HeMea&v;Ha-v;SZw zZLEgV?a6)!j|LpCBBa^UtCiF)jZe#P)^@FSixBU;%p19jb<}_rB0|(b3}&?G4Mboe zZ!vuCyPLBx+JwY|ikfw)vcB$2vcz{6w>{Uoa%8h@ZukC!fOZjji68`CTC2r`YA0qE zBF@CJx%Uz4`T?Yvz`f|!ZT?X53eh%Qtc}4knN9MF(S-mJOJI}1vcddNbPA@91 zwJZS3zL!0hur;r%_d4dlJo=fZF}2NA!#$O0X?*Aa?%d{#xT&=uDVTt-fW@GTrS+=S zb@$ZL;?Vw7k4@UFD~uPjWR!T~vD_JRub@-@aA8z>@^=}~_?FXAqK_DzkEtjA0Q=r) zK=_mC{?5Wk4^mE*&gA0nmE{gTti4ljhP*2|oaRENxQoRGbd;i+h(8j!gn+*=^w6yH z|D=B?LrGmjDIIF&y%QF;q}#G7ujhMKrbKewdK1WAGx?Rf&lDjr9nt#NGb*pl)NXDb zn#^=qgICwlw8+32paY|cGvjoD;rqVij59P?#cSw@pp{#QJ>tCf9-t$>UZuL8JBc0b zu06d;twIVxQsvP(iV@Z=?YQy0K$K}aq8ep|dtrWl4?(cV)#1UvUu;uxaCG_e>T^wW zZ#~~PD`O?1EAVs8yH>)^%h`;KqgZG+AH$(;c-tG;+b%<_8X*(bV|$_)MrIj!&lm5< z=a~a1#Xi*D*aD(6uT-+}FVRaYP>JI)TSTSije=bAOyno84`WeJKaU$0e23&&Xr&?2 z!Fao02>(r6ITFE?zD2paCSyitNW&lgfCO}^}x2iD(Lnxvw^5&CvVbB8Z||E zscf(+T~}(FEXk(4W5mMnSs}jOO7Gb}BL$9pxH~qztiYqok0>g=T8JQ;#MM^KQH7wU zA)<_6J^`{e`=H|*c%e+t9?m}r>D*~ zhHejW?!>%w{WTB-Tn-uOVGDA5-wWde)F37(16VpOhnBVfQ|kFpm@ZR@Bvr(}+_M%w z;Hnl!SeCmGY{~KTs0xaq6$)V2JKItK*thmDny7ehvX3&x$DsTQ-iOG3%%?E{NifCG z=c{hJC`G+s{R{J&@&V7vh_s@ zJ;CH}ipF|`O2ku=zS>vf9i_iew~K_D)$^j=rUVM-6TRUvQyh;KhX7?Dc1`{E|WyOv1n6JF@l-n3;JK^~D) z&KTE4`DR^;JEsaLV~>DGZcvFy00NOzVPz**XOBg?#3R$eptNEkv5`ts%d5-!{gV$C-Jm|vMYhT3uSW7Uw{iIScA|6=cv!J0Z_T`#S_^s zQHYqv3{(LT$ZQOv5TpuE(6blNi5Vkpbm*!LP|Ha$T{K=<=M)y%p3_NiwIV-ZQg?G< z{T~!z3=YP)l>UO(fVV=YsuUv0r~MphaZOcI(?ILi47bbq5Z4K*!pzQZo%838L?)sn zv~fL%Ti*K-yA7mS{*j8WOH=DpoXXA0QeY$i2zPJuGdVCMq3o-`p3N3b3tVp`Py;|V z@f751n;`wA3Ry<-9;;{eZ=LTl6h>JTK0kYj`m33+AH}2abW(Rn6pNC8vw$Z^RfbFk zbIyG!{_hUiBk5+r6|PQc$Fz7RP5CC^i~DI}#rieuI+*3YRG08R4fxn1lsNcp>oBxHLEI?5ysx-4BVVGg)jRQfUg4L&&L9$8& zZV5rYl-kvFgEtHkcDYS~@`#9(RsJ>u&zF1@qy7tH}OLJnOG~T6M$%mtnS=U`!CYl2Ow$ zaJ&CbYCr&4exCs{c-8OPRzlTo7hV@*s4%?FjG*gOg zQMRaCJARI{yZ=%*_nj)B+`um3gNY6#e^wI`wj7Lie(ylD78`8`iV3=>2c5u=k)dI+!loIlOGW0TP%Vtjh2peu6kd)hRaXCOMZU<1OVp*Cq(1<6}$ge|or7HMw zl?g!*Zg%A0{V;g@{7)=`4*ihvt3n~52v5?l4Ni!qnJ`Hs6fnyUefT55lU`d6c}ySd zLmEvG;QVqwS|NxAv+r2?IU58UzeoK9+Sq4ASjC<_0!5K^Ob961K<#1$E$Bq1{*>gO zO?@0Apa#GuUjce9Vri_OU>7exKU(*|>j8+JU@*HvUD_y)oV~rGf**v@_04A_a&tk! z6`WM`?T0_gokd}kOm|CPWznn1w<&21*FQbTY4`k*`r>F5l?l^yAdJS_&FTBaE%8H= zU%?sdCpDVm+g|l#Zj)?Z$oJJI*jd!7$Tzc_n?VBS|Frti6Y{48@T@t_J7K{0w;ca$ zJFj~|v6Dwm(3hgk!2!R2c~Jly+_`Vsf9zNRKsof|-MH%_A%M|U9$6WvRF;7H@k~=Y z^xMnziSXv&JOc>2z6DED|fu zk~15$6gxQxQ00UYly!zUVKeDf;6IloR;sO3M5m(;uc#&l>^Yhr6Tne+e^$t=aAzHqm<-a~DOi z69+*Ijw;m4G!!?UGuyhM(;m)R&-;2w%v8F&yRU9$ zZDow%dbUcnGZ>Tdh1EhLiCXpM&i@lszV%AO)lq5XvJU2}fSY);!(P5}k=)gG1cQ`} zOr$I}58&o#P8w9tzQG!Z#3uO*>Z9sp`SBX129%MWF}I(S31%&jg1dtH)5Me3@5=^% zfsO1NUbUG#?n<3P!omeIY0Sx!-M;Uy6v83!Q`?sykVk@LWxE;%omT#&Fs%?SK9`fk za=j(RT#0Hz6b`$Tg+*gN>34cPUOCLEs!JLe?8I1J zMpP4UI*80y=$5XCdakdpW2ikYX*AkodEL&bKNk1Y*vJrGDYXRkW74NRPer{;Ocylq zP&X-ccs-O*HD_r8{^RJm8X#^@R)w1A|MM@R{@MxmB+HLwI+#Pim3K7Z(j2D5B; zF*pONAvTuK`FK8Qsn!e*P@a;K!t?YuPYbN``K)zWIx+yby4K=6;~Yr6R67pAo*8 zSbn=bn$r^b0)YhyRI*#pbu}k~l`r1v~_@}4P_ZQ*+Q zJb4#_fD^gDJI=l_>rM3=tl?`P0*ajyM18t*Y;t>OxV|5!N(tdw=KHyM+QWpLyYuoo zZfQSqix72VCQr~keg)I)A`{T#gdYe%i0;Y4TOC6ec`B2 zjDV7Q>!lje^BzwwuLnE4RybSRa;^G&*YkC*Hlvfp>g9-tfKO0}ZARFM+}=-hXQ<1e z0x{9i7=2GYglb!cA%D&mDs%Y0z2-@$(9gHl7!M-0zYmeb3`JtISWOrX0=wmTZxa!J zHeC+j+y;U@!7{K3k$_qN3c>_i_JwhNyntx&f|2zw70)00TKhQ+`teOe7dn$WB5U(& zCY$XH(zW=3*R+EPpx_iVD&#?Erz3pguiy!r-zGAtpeeezgDmCT{dcyRjo}mrmKp64 zm|9aQLt)IIJsEBQU-$M&5^?ZAAFV<^sx#J)~>j8E* z@oh)Rk|$sc&cAlEiL};ZM+6e;aaz7_ah`2-cGCOYuelyC8dYgDSf%+$bOj2<;PX1I zvf$&x8f^w*MgdNUs_4Fo?uyj#iaOHO9)(gh|Ja-+_PJz?>;!+Tf0-SXUwXL<-1{fJ z;{d_Iw5LL4ysdsLWTwBv0nb_?>hewiio}Xqd{B zHn}Li__^-{$F_}#L_GQ{;=x0-n-NJNmJx1s4|LJP>-~n~P5i+kG*Y}DD$4JL!dCdE z1G1vam-WZl&oJB>gsy9|5@+q@;lYdC`e!NVI6Vc*86#Iyqgl6?;uN+C!h=R8eYspp z#ceTO?9V}&9L|a@b>+0m6wdKidu_W(F?SO_Pm;Z0s#d4R_x3qmzEpdKd28+>=4q25 zRo#-2!~<@rtaMYlS6XWv^J1za+wxGi-OFjAKN$P_4PW16l(be2Uc~H0kjv)2&RrJLp;Ia#T7dwtwiTy(eHQ-l)kIrh zJ|qH@;ppbuU7{c*06vWX9z0S82whv%uwvV(yICOi&@+-m_6zMb{^;Qb5DjOZn$mtfB z$2TP1Hg~;9hMzFQRdgg`W< zPWxtZ;$>fM+O}!Knk|7KEYnC3;g=1MbG2wY^q}Mb6~)dI8Q%YUJMeQ50ng8ii5?m& zYf4KuLwnpu59Dut@Ng2!Azqyl%Abj%svzsQtri*E89%ob+jhP-*dQ9h$@5$W$z*Y< zp06l>{)v`a6)I^pG~p*{&hdHchgYvyr=4t&8DRn-$koH6B|9v%$vDg<50^fYr+p}_ z+MpZa^s&EsAPVPrwM#4v5Ogn$#7p}Aavg)Q^_?KXMka?(_kdpv?+Z*5guh~fnN$`= z){pkmi;1@m%BGDek^EXZu=!9XPzO{jE>O zLrbTPe;o#pptrKKN=63o4)$`TPLt=>-5UaL&Wt8Vo_2ZZlAzafBf6v!klRe}-8qYx z^-St3PN}8GEqpYQQWoFJ)X&kNH!;+8Y1(bPRYugxsEh7w5`Bw0$!R*gr7hU3E13gz z%v|3GS>bv{{}*3+uGoE4&)txmB-lgFXlr{3a0_3I-{NVDim*;-)`0WnV6C zZ^xNZs#KASb((8#ZK78|Cy=~jFHa41Ca;hujwgjhnPM)o$Zl4*=WeTsw;1s7$kBX ze;jq3G-HSw0zFYI$WS>3=kD>%2FJ8i{W7VAQzrhJ;h5)r34? zDc*5YpIENY&yje_tIPQbL&jT12+<~`RE)n6Lj{{cq8+ozy_tv6J2>%@fgyrFn-T<7 zp^keErG0;L=4`MIc6)x3gxk|S<9&iD*4j9!pPc9T$iC3H!4DpfRZfH%vM{|ax}lu; z41sW2G*GNngw?HYfz%UA99~pVOruKZe!~6kk&Fk?CA)OzQ52lZ2 z{p@cGJ?gh~dm7UNpB1MccMb1zD{H58T1I zI?o}t2nWUCPOT~9@n`Jve;}}ejfsVJPlko#E0`s_e)Y;9zUE}NYZmR6Zgiw%BJokL zVER<{UkY!OB{A>mP=sh9{ot3#O++zp2~%=0-ii|&0$|Jtd|@%E==y~ZZQ68HQYy9d zof8*@QWucU3jgPmR^@c;>8h=ssLgN*3-vnN^v_QSow#=j^OMRYsvy8Gtv&&HDI_6dK8#rcKDOJsiK65ZoqyBM<2UKMP&s zujCzxN;dlmBJ84?SeZ<3g%%xty+LAzoXeI1cy>@8ER_su(UFaI4pl@CyXwq?0>BzW z6iO5b?^gAcz2jbI*c!`$aui=Or5)7i{K(2sQgYLrPK7^m@Cpf=jNmr!Q&{GlZq+Ik ze@O-d8A`(2$?IiW(s|W?SpOBal}c)nH93BKEi|!dwHN$d0n42(|_1gT&{1V^SDQK$gi2T zbabijPYDla@+h_`9h8p2r|LF0BI&+iUL2FbZGydK<^du|Suar;i!0rw?u~sfS@zIDF)6ML z*eE#z&2G&wiPi{$vKPz~+@2mPiNJE14>7GKV`wRkw zpFn~Y+-KvfHR`-ReP&5s1p}ou28LB?5WXu369YHJA&Eu(RHVQbAG?gVyYj76?ehA% z(Y&aNn;ZsBK23A+o5qGLO#X-ntAitK-!Gxuedy7??C953%!bN|YxT-15<~BgdJrWU zpe>2edYLd+0+La|y?8G%PHH?2V5hj=BYcc;Y=w9rZzeCh;Ic`l)i)p-LL+ZoQh?K8 z`f0a-j7SLtTUz2e$62bsQ6Ft?W81tOw=h%v3n|2eOXpXs7y1$O+<|^g(GY|BpAKFV zhyP8T3aI5_=Aj6m&t1zFBy7OB_jKwJUL+-Iu2Jf0zKAP)F_$*gH)W<}?&GLz;YAm*1A5H`_xlOmBGk@eQC9r4X1>YH9*sm}5MsdTO9LDc z#qQ>EFc<4GVX4~=E<;}+h*rOtA92&7!nF|S8Z^ix!4jtMGpn`S9di-`Eis1Dcb@6i zs4CTbS`D|0JUC5pzv^a}f9JidTFX^**#9G!C2Mr2eSdgkHb5(s*EY48dhfFUXIA$5 zD7>cD&bDUy$GcKu&O}4W_SI?U_ zd*gvPWOFzTXzxcm1 z_Mt(l3u@(5e8MzYuK{9vItrW5|MsfBfyE|_+>5Pd#wG8a5*d7*x0-GkQUs_}j{_BV zF?S(9>TV$0wPL6KIQj|wdyw5u>Q5cMQp&X(?cGm4qg60*Tb^^H&P~*$7PGr7>g=4W{zP$OmQx%5QkEhYtrFld+k3p%cNmdeTDIaMchOUgq<>_^ zsfUXLV-Z|mH@mytl&Gvn!uRA=@ygtHk)BgHGUv+AkX3nHLH=h?E0aPhRv>-k4+^IF z+Zy8U?aDLM*BCN4ZY%n6eQX?DPzwj7P4Prv;>R!8uOhS0iHA@o*A)^=j+9!6_z_8L z<72-#i?ZiR&M2VX@aPi?&ys`Rv*IwKKJ8W>zV@XCndu&E7pOe$T(2ulY-sakyKB6y z04r)$aXG%wWi6{D7bO;bF=~_&C3w6|Sf4I*hkW!_tm3&}r+>7!iM=`36c&RoGhQ=^ zvw7z-uLGPfDdaEM-43wy+tFdWxk{6TXj8}SX`b}Lt`m?K-Gxd&TuNX&$+H*haNkc_ zRl8OMF<^ahlY3(~Y&h%R*@#MB9>+~cXbB2crKXoh)}gi`ff5AO%Z~v63CiCFFNZy~ zsFAHOe2XUfEdPzlU5Thx7+V`kX<17j!}YOiFD@_dVnI2+2~FrH2Hs_{&w8rLIT<$+ zICKHkj)aV2Tn!bZI4+qp2YNnbK4!zpQ8z;f^ubyS*joHk*9W6?oQIDWr3|BO@6tWIsK$!^x$Sgf2t8qUL0W>0T1~LhR>zlDvwrJJLZ5n6G zWL6it^EcDecNUwhoJA96T@0%I#jOWGEtpuZD$S$RwHSD^rIiZ)rkqqNdx^Rnfuo2% zZPY=v{eh?Nu6@HzP79W^+Ir_t`|MBF%igi@ZTF^RJ~ZJ)V`H^eidjJi^UL&lO{9XY zlM)FNcf6UJ3*(b)H7T2pI*Dqy3zQ>owWn<`i|-38=Pqu^9}Jbqg@*CEb#ZOgQlIFB zz$QN?N`%Nhpki=J#0lM{H#j+!_UG!6azSS7vu$S^IOtIeTb>IGggt$n^s??FfjWmv z7>dPOY9;<726%tyF$(8&Rcwj+PSP&cP^;s<6e;Uq;#f6nsVW?@x}n^W(IoJzcjxBO zv0L$Ksl8LW{wZlUdZBV^@E6IpN$&}-gV6$ZIP{O%%latpxj4Q&ZmDLeB?1&W%#oVQ zgOyRT7m@tB_Lgurch8YKvQX0f6H)iK$=10>B%fteZ-Y~N&W>wPx%iw$wsk%so4r0^ zd3=0BhVb(jBEqVvO2nl4S{JF!`I+rvpHQtk3qtj%qul4Ly&4bK(SX+g%#&=S3QU<~ z7OP9M0s|e~s~ltZ#30|SBVw>b`;Sm5{J~h45JJe(gnQ^E*R<~7AZ7!> zY!+&Moh-TvepJ0G&J=a2lkej+lDfCI)EkE{mF*p5JGHI`lus2i)r0^w5gRB+Lwln_ zVcERqhzb6=@V|A`=3iQr?KnvrWg!~!h3doSu{yQH!njzpY>(!+_haxtF~H$a|?) za9QW1BLte`SE$6M;PI>)B{&1<cEK_klet}?-FpT^NzHzjQmH<5d%~$KWqPWNm zE+KL+CMCj=_qWwmM4tJC6duCKSNq0jdATs@c+E{Ta%U|Sb-nE$Evr8f1e5RN&R|fX4KxOc#_0x|6`eldnp~jT@`pKDL8tcN zc7B(^s>xSPU@JPo$QtbOGiHc5>sqnp1I7teAmQab zvISxp%&)mu(BfKGNUq;i71uoq1Lg9*u@Ii2ae|v&zkI{HSWg zOZd%rvVRnxEH>l*du+W_#q$H69|iVl7f{R38_UQs@Gj`+w8PaY9x*We@YH6ZaSEHM zfu1L~7ut@INDjsheIR!3B{8K*5_5$yr{tD;ME4xNR%ToK{+ZsHE)I5XRFnMv5%OU~ z7WH{l9cercdT&bXd7f>zBYXNagzX8~LpG5e8Q+T|KT`Z@YrfyAfg919XtZ;U*ndS1 zj%QtuFWcdJo+dC)9yn6>ivnapH<9j;9})f^00t*EitK9tA(AVzSsia7!fJ} zLMzrEG`dwJzn2E#^P0iPUQ}uf5Gx@=fFXO?t-(mD5+Q~))0Jg$qg!9bvwhbdE#x%m z^Me*^>hJ#zSS!-k*R)Xn%zZ)2|9Xv;vGd#VH8%{+k@h|%KdD9gY>R(2NhzAdkDa#bfc zk@OM00M*0T^6sjOoqfq~7h=LM+qXTL_5+7r?Z(qzM9gnPl1zFINF2)}V5~!eak)y# zM^%|zRNcga)+>H9^E@QqR^v{#Oi2cd7$oru19rT!FyP#Heev^>8WgeVhXKoZl(fB~uK`zkXq#*bBEBoMZ#glt08T`&zTy2g0nVxQ;-f<5D zno^}R!Wzc5Mj)og?`g=nm;!z4KRuXBcrFb5)UC5Z1Xarx)iG^l zYh8ugTZcafn|7tINx4FVc16c75B|cq@F+L@^HWYxEMJiBhYV||RLkuM>nhMvhev%+ z-vbwI#YH9CI;(u%%~iknj-OdxE4hg)gu}=*w!D06OPrBd1#-11_u{XVVb!7`(6msz zJC~h+GzvnAxJhBMRgQMO=#0gSuwXWrUSS%TeR2f<)x_R8AkYmL?P z#x+VL2&x&pHddC!F|#IBTC$}h55)`8I}^@zZXsX;tb{t}SuS}h#ma&ywFjYbQT=Z0 zM+UyT*PlR=$8*Z0?_p)^9@mE1>S%P0pGpY*B1(5IvG9%d7dR1|?Nus!(jc5J zBQr;l#AH+Gdl`!7oBP1%7i;1~2-Jre5vcM3I6c$ZXs6xz*aNU!3up$ zvSN2;@xC2MbPdB0zT2LDgN*rEzEBdfDN3UWg0ql~=BR^;3LwZ8a%$~v;!8WV3fmbE zgJF3PL1P!7^_aJS1zXWqIi)M1?np>_ow&Qho#yv?)|J0}K+rjqRD z@dm_RQp_0KC#+9dojf8JPuo!y%pM}2ydPGBMVj}voE=_N_ANjumN<-FDZBX4OJ!y9 z75F*|Y6|glbl+bt9d+ukU8i}&ce^h~=hxmY!@Sde=CHZ3 z#eAAHK}{-D_t*QdcWp@{Gh8AzM(>Q4#s`lyW^GL;hacTTa{a+czoCZbABh(DgG#Xl zTl5a_ALK#*c0gd@W6HBv+Sn=?4CZ*YiG6+-d$&LrcjFXS-bzxSsO!5_H>z{@f7pAg zu)3BdS{Mi#Y+(U{2lwFa79fz|?!n#N6Ce=W-66O;3wL*ScXz#$z0W!S%l~*E?@PXK ztuW{8u323@s(RE|a^yzVgzDdB@!ai6eIs7>%ZTUeH=6-gz-D)##^5q3-oD7OhH^}{ zP{qY*qm57>G@$SRkPUUW!IN;LQ#20SQ&0p1Av>Qe*i@jdpm&1)}?lFvjc z-wB1HgTi^NDSVV%PTHB@=RwtsFreHdJJF|+m8`olVysw^6KJe0D(3hWs1)1KiPqcri%vc8_8)nuNDBZDJJ7ze|2}E~FJ9+S98#IxqDO-6vr-6q!0~Qh2bS?xcz1i_m&Ffat*n+a zEjFuM@LefQRIB`KtDmOEiq1A8A7JF3*5d1^)(^6O?pUck&ATPbo@%*%J!`z)ZlAbc zh-ifyA1JEOHbTL{}?B%L|0W4wfH?Z(G9mE$D~aVg_f;RY4>A z_i<%j2r=n9Y2S4!g2|sC@4b1d3v(XN+oe;tdf;XTe(n9(cfD+tuZb!nhpksP)Nys! z543oeQ4)6Rn~P=deI9h{rwugu{>7eSx%3ztFD)^(~qVm8+l(zx>_|xLgwQRX&%R_!u-{4{G%v|h zGCX;ty>@(}jf-r`{{zBbthkDxyE6&3P%GC-aw^IPFNr7b8NXI&Cje0IYT6F2{1R%vT4*2-)-!B)olLIo#lEg%SSm~2_t28YWiyTV&|kHB{|%*p z$wI>;;?tauW}kBpG&VYM(VJk6pd9F|{%LkzbszbZsC7Y%@Z+T7$3i5~Il|7}Y98{t z9~;l~+r#;b8ja(%u40MTYS#OcB}u^~H)Bw9tD_3ASA`_rUh@(kr)iC;%`H4G(*~F` zdHVp#FMk!+okzYY(dHqb#hGqZTEN#~I}&Mys1$DDwUlAPN>G7XXIjTIc2zupZ$YCG z$((%upq(1XI2bmM4|9JpcVM2?JRirmP6QgWxacGxmy6RVLXjX)xexzLi?ipGsGZD& z0sZu}KFtZ=6dGMH|Kq<+bKei3xY&SWbLqjNj|0bL$kT@7=@FgAjzEe2f}!(aWn7XQ z$&3PW;PL%w!MYG%CU2pdWfz8LjjDLP1YlwM{Ok^W$7J{-A1#*5_$g}zh0jJmby*L! zb%;1r_Xw`DWkbvw>Egr!0vlzeFSit`16Pf&5G;XL?(4}5-xkG?yXXAVL2xY_zvpQt zIB+|%%zAqFF8k~)dFK_W{b&0`p*%aJ1XtDU7bpk0OS{^h2Xm(X)dzJ~K4{EzEb}Nv zx=ubK==+OI9oQn9Jt7|L8kHo)&2ssXD$T&7qGDk8^&!V3<4gQ8v-496A~Bj>K=KVX zsM3CvNcXd0(|5Mb5U#P~j{ES5Ve9)(hlbKvhCm{v;^q!7NTcz<%`*r**v#bQX{AAA zgL(bVgW9f^x({J`y(7}0JxUIJFe4m5?n;%nN}^o{6fri!>}6Qb|cT z!QWwj+P1wUHA=lCTA?Vlz2we`Hd8|qX0C=3x!{zu(?#Rk?G@+bF33vNFc?@k6Rb$h zywpm|9`TYAh2D$NC^F{5xCOQkU;Fz3z1zP?fndw&mD}PZB^CStH!kwLnaEYtJcXL{ zjtml;_if1~5!kGr$=i5$uOM84m)#xiB{byiyY z0RK_3#OyIg?Jiu@2+?>X1x?c!ATnJ56g%TIs-6;nG&~SVDzWu&SjN~>bRka`0rW_{ zzh`tZQdp`?hDcltEev`;W1^|%Eta0wBI)B?BN^WqN1M8YM{l*91xqoou5IyPo{prXN5*fMP}9ApH0B(S)(-N0V-z`@uJEa#HGACKxvu}h&T%?k z$Q6gi+Z@@4-HhLQqyB~qym01E{^B=+x84MgA@5`ZRXTv^uHp4~%;CBfDM96T*&Ze) z*`^J}$DE}1%H+j|g=gW+X8PJuPv`p9dN<#fS=`x&yA+7o`7wMO5=k?3^F8ix?-tIzEqlZYJW+=!R4HTF z>=tMqSd`gHFXH7Xx_pDq!yH412{OaDOH zW#OP%+tcvxA>varpHQLZIwwW)r9@6NgY-Q}e>c~Ftq(J>{RMHLp>1j&ungDgOS!R< zn2ch6;hy%KKef~;b=a=mS;e{N{A3q|SiSq|Ev*3R+|1Wz4CR>}-zN6)d}?;22z1Y1 zHu=2@ULw~TZPc0R4HaKUAQW)?`Js@i$exfE5=qts17lTJoTsNrZuN(pX5ut!7F&-TP}HD=_U0mzd&yLcD_f6SlGdx;)Cn$MPE>FDS*>?D~xaEe$}fL%lJqG!ye3(3dF z$I@+TJhqjHRwlZ3qB ztfK_aV-oL6jGXTk+2l}kCQ0F}wK2AdV`ONWf+{{GFJqTyuf=1$OwD68YOSgxoceMP z3Lo9O5C}&o*{E{_wvbL`R37k%Hj@sm`BvM`B+|T}WY_m*vPGR&LlP-$OsKL|eG@V`WuD!RI9Y{d-67VQozp z?7bO!uwO2P#kY>+cT?JQGNCOQ)L&HAqCS!?z-T^G9QoFIBAdcVvOO3-OE~z}4A7+s zw2u7P8_QG|{g%iq26UIuzr80xe0O(uX@F5)ZSn*#)~oBaD}PAVdTH-NbbLZbN6*pk z4wldR!+6v!T4T+$xx(2VtiY;)qz}f7 z;ZK@_eYh4{68W^%27hK8>n#N!<1yOvzoo~i=yr zKwTpj>-i11&c4wa?hD{JKY;!vW}7uZU)`(o^KpzRP&%UjXE9|MmmCr)a5FPgr~jYL zGcyrI(va?nTxoKkE6HrC-1`FJ=dJ{iCz(s@{Z6u@dv7>VJn&KRV781=qt2?P8ZMlZ zBEb`Ao`DK4(K{m(0jZQ~suB6Qh7A~C{Q!1ktlpuhLHb{m1b9TOw1o>C2<|fc!4Mc6ND!CQZh2J!^s@d9v;nW>Zts8 z84L}!o8rFZp2sz_77Ko=0q`r;rqQAB;;MlpKI0I=C~Jx0JPq@66$UVw__}An!aUTs z-yNA|`hF9n`v;d73JS^rN5X1$-4@;E0~F1Ebd^K5<%7_Um3`4A+Za$cJ%Hi;+#f0q z6-K;f_o*Ie+2USd%WwC7Jg#H5T&PZwop&61DDog}hQOF8M&3X+B9KBpWu>quQO33H z3>p`!7n`x0lV~olaoigd3R&CQYThIuaS2s5f!8|9ZlzT&F8@gkG?j>OgvRK@TlSfO z+Gl1O?2Qk#2;|2r4W*ZzHAyK&!i>81gzto*Ny*+-OvA?tdR)gM*#ai}Hj{SwP2gFv zSHxdMJHVqa=sXW_-?ao*E{_%V3QxI-vulpmw9StN8yYe3`ioqkFC>@vf6pSaMLvFs zf!36THn>nxCNW(Scke_fhAEb-%Qy|H5yOEI#v@Kx=Mty-N#a*kYyLHcC2SXK$U3H- zr-KR!4L_G+gX9lXh?;6RO!TI10#YD?{Y-$E_`~g~wPzo5ooA1>d0&fbO^m4Xxa6{Y}pWy5gbzJ1K|RBAkwm)xH# zBqWSM1892u49{tllrx?b4HmKKFmPMxVR0m&C?nUxvtLe0bCHUYrVXT_N}gB|xbB7s;|r;9UDyX>@Rc`?FsiW7LnBi}~SGWVHo6v?`nBrkMRZ8ehM zT?M%BTeHo&@G-7bVk!<-NnM>dTDQk2l!FF`^+$E4X2lvZ_%a)?nl^0dq?>gY%3!+5zG78up-P1f8O_iuzztl6!D?je07jr&eR=um?+#AbfJ z8QeYaa#B{?Fc1kh>(|=d`KIAe0u#41)P{eFn2Gi^q8kdvM!Db8J5=CInE$bOMAui+ zZB8Np&H|N)Uo((hcL?+ffZwL!ZP0*kF*f|JAUBsw7>Q9C>p6&eWo!o6?lTvwjD=H% ze_hTAnQ?R>30zMp=yxIQ%BAFg$xsC>K#Z)={_0B~CmWX)lHeMj1sPkJDM*~ggH@uU z-6@P(4yJu~Jz$hjJ!5JTqA8KGYG?AdSH^NX@AtF4h5cpovzwZ6$`MdBFwOap-d8sK zYEuK$AXf7}Dz|k;_1t>cfVJ_vcF3HikRjtQpgSkcekk|tqu}iRarUqbw}JdACJ5hg z`Fp7WRQx$RWxbtk#dc(leZ>~Z=m^h|i3`aOxgl`;rI*N?4j$R(td_xgie=?m^19Q6 z^3Zm(c|1UFpQ80MJbL{QLLs@iZMeV!wV5_;DOAyBtSHf)Sr7BUN5# zjODfA9v=N*y&g9EgJcp9G?70`yjg*3!Y>;u1&c zBGx?helv3E(h(8LH5Vg8p{B|Fq}L_+W4Ap-Tk7$AJsYR5%0*v9 za$9zt!?MZS@&1e%2@0>{7H9zg6_*F}yPg3g*Kg@on9(VvzR_jP7r|a??~UgB%$Mrf z<@42&$BC{GY};_)dQzkH+EKb-NaJveW(`AoOMt{O3~6izXpVG@2Jm3I_7iFT4S_9^ zK908KM}!zM-voz8Kz;Rxfb?LE!Gw8STxLw8Z3;h5=B64`IlCtw_TU}J*~3I6q8e{( zYR64giW4BUBpck%bK&8WUka#~6bU}9+#G;RXG+pmR`%L8*QXN z1H;Y^6DV-67>JGMfoGlS>=;P>5bX`t#=C@30Rk(iGYwNuY(B8q(s&pYdEHzQK7@Aj z@h6*n1xY@0$EWfk=1^!U9^b!zp1ix&7ZNe2@1mFor2G=%T^I|^%a{EyI4ikSRc_8N z8D>61x>!^N>yi>SWMt2mY{V;|4`1qww|o{2=SQIvT2b7E4Z$=W688EyC z0Y$^X7q;GOClM?-k4lK>jS+k%?`*XqH6_!@GD&vU=N^X%eN0Mp1`1O&52k~tArCj- z6oJ&lRl*h9<}fQhat!_^wSkz+X-oP$mrx5GkFg1>u@jcU6Ax+)68Bo%ATyUVWD%;K zS}{1o*MrRqpnUu#R2-?Fd5-e}yeH5ec0|8u2M^hWOp5h!!}ZcU$XDD6`DZ*1ZO?Wc zavUWf=IxWPmf*1X%U;tGsdQp>tU9iALaFY^STTW1K_vA<_vItRsd>=~GC6R%dqXE+ zriTKF#AuZrR+DRI`Bihc^%o&qzI4ev=Way%`{{xH4EM&v_=@knOVqSA5I0vB5sNyl z;@avqWq&-peBS>CAt3THhVZi?s=@1vKya9-D4e`rQ8YL&Aj_8sk^knyww_cAI&T%= zm_1~xO#P~T;lq2|y9{L;_B{fi&s0&567;_5)ZjZ!QopZgQ#t%5R5>B$)U&%?=`;VxR3f2szccYOXz zM$2HnlI<(o`@xG>9yqcvjf7ths^4;YPCl4hdb)uT#xSVIOg2f}bIxUt_<*AKz8u!l zd>*rGH7{>O1)qR0zuR%H;_`vFc}N@{4n?t0NtO&EoC!Ee1VEIeJqzKM~BA>kvfFU;JF)FWroKBzOYd+{{N$ zsi07qPgj-Va0V-k%B^Jpkj&s*W|=Sj@Dr%uNHo8*P^9SDX~@P!UA^9%yps*S@L0RE ze-7I;ac&!TKP3>w6cZDD=fw08tAaut`6F9TtDFH{g_sQMP10Oskm~nxUl=qjG&Jaa zFk(l|bL*)4NTsvpJS`7T)1|wBnv=8B4*lwU$|(4DhzF+9EVBQWEgVd7H;jrPeiz*);Flhqh{(Cz7#nXc`UU!?uB6eZKqi`mfk>+7zC#`D%| z3P}S&B{?;@-22NAQR7_4YuNna*G!ikjw+!>R+A+1VeYNI4M2EjnsjOqA?ez$Wtg^( zD{y`{PAhp1i!7Q5%7%+q1~ zjnLf?Y0IlP8&KO)?*H_ibE@XX*QBWKfb4yCkpZB^dx3Lir~ z-_o-mTmrTmTFT^!4-?iav)gM9w#6FPL5h%FR~Jd z^;9quh4AJ4Fo$kJs)Kp-8t#gZIvtz24JU7?ymDV!Ek??Qy~p01TJodwqJ&(T?(b2l zY2(j?xWbcN{QTYQec}I=c>|4g%-Kl-v!)~jGu`KLqCB-ZKDgYE(^g;3c=7Ja0nmJu)=>t3ISy=3=f;IzE5S%y#T?>$|$s+ZR!%k|VeN z#(P&ve}fUt1%_Z^d-Vzyhlk_&hf3&J$Rz7?W>%IdMpE8bU-8}d@lcWXi0`-aO9Z5q zWsOul=Nnw>BonDvrSlAb)p(0}BHdO&jW@N5I~m3yMZ14?H8HB!vNIGg^3&4GLxTnd zQTqCj4QM=ijUuy}xyZK;5s5%(iip&q&I;V4@>JAWI$8BCk1d@@h#hkchC32Ya32xN zzuTtR5&r%tO3iCcwe`NACVJTLTfdNeDVQ$vA!XN9AzfaB=#21OMSe`!Ek1dsQPn-z*3B z7Coe&u5~J^n?D2;6UCVVv4r;WqcLvmO-8k>I>-R*T-Wr=_Xoz4Y{ai6%ucO4_-f@= zTdnax?2wgQ86r$*8Vq8BEM^jZ2?$7N8nih|N5hAferBFi2Woi5R}|$~R*Xp^YkD&h z##3+_1ZUppr&I~z7U%?ou(Hd36ObUW8Q>cky44Mb^Mbfh7k&<3AG+w^uxdtJ^47t= zjTf#jE*MXQBg3D0?UnbwG{f)Fpf}YXMMB%7rK%Y3fGuP|N842*tH6zRpuOJz7;JLI z?#D*xl`Map#3{FMW$~e=rAxmPy1l|>W{(95-bGtiBO})% z!a2<2Q@&JFj_b~O!&Z{xuSpCi_mWOVwWOd>6IbM-310D?%F0+)5X6% z%LVZYDzF5LBK(P!f-7Eo7+j|-o93GN=`_UfHGeX)7`2k(9kLiWuVnp|-{gOkkx_0XD+M7AWsmWrqX&Pb!YvQq7?HSm5$_f% zD)q;QH!1qPQ%fv)BWL24@9aDn?{JwyA^=ypWnA@jsWc0J9?gVi@#{$0j<~{xBr&_! zZ?&iM_xBsar#XoYxmEH0YhZ!n=k#Rz4{Y&cx`s?(5JI*v;DDj zC8myNZxSJ!dikS32q^d|RpNH&KMgl}p9X_sucfj3qE-IXUGF;WQ5!FFvFTgN*&ZSO zX}BY1NuGQ5@y#*HAuOj~LUvq$1C&XZUY~XX!LMauRq;tP*gkgzChgMk+5d~?& z&^d_#9;q*sQC=?SwNTmaI$>JPl~Y$F~o>59yi>}OaRZd2V&pT zh4S&Cw`_Lc_2j;-g?}TZeZo`JeZJN!f5>&;T#eZ|)`E$n*krOOaSxd`AbsN2rzw4Z zd8hh>s8!vZ@xW}lqyUVOYVRLHS(Ze>GerOA`rC7->>k$9q6VrbU5J1hN#ko|bijZ? zbpF82b<@#qva&_AJ0(A5s0K$2f;TP!uhGk5h~YZi;E(%w^P}bEg=DokZ6ka>)MMRS zwew-_M7P<;o9lW3e40}}zHf2KUi*x&2Hws#(L}*lo&0i}7r&X`?)$E2ILwR=4@P327dVoh0`#?Z>Vej$ggd+RR z($CYCt=>jD5X>k?O-70Nb1vsm!)pz(g9Q)A2lJEGoFyWT0$q#5h#D<{UDJQjnD4rw z`T2~p{q{ll-QuZ$773-MV?7f7qSg%KqQ3uPDg_9IesSiw`Z&)xFEOP3{jvG(rC;;L zt#8&dwMdoDlYHLtV`No`=gY!S+`;CSd3eN&gmWxdU>oM}{`A_qKP*Uz^B2H*68X(AsdV`nI#~fGfV_t=zYGa9`u?bN-D@b=9iS)%px^;$*`! z&VJ!F5G@k%(MF?)y;4;ES|Hi8Nv9d_r>cc z(u>l!`&k&qh0f`cszmb9KB;IM8T4UhlkM1@R6IC=2{lu{HDZZhjPQQ6Tk9gg`~f3u zXb3X?osigPe(=+y7{kHD;c|s)}WAo4$I7%wGd6#6D_oe)$QOki!XFT^W(FN^@x!+P@|vw#wPu zQTj%CHDtMD3%56+_Y(eQ^bhw1vjm3kWIer;BxCEZe^QDX|6zkDSu78;sueRXek7dl zcGcLoSL)HOTYt%gVmZi#dHh%^DRu~9Y-kMo_%KD*CIpJGvFZv~y0|wFFp()z5&Ip| zOW|tl`MJkP?j+|K3z=^!&HoZab5s0v8nE)y4a}M__FI$sJqP*bWe~o1SbMC0YmoT7 zUb~GALlun`90|0MAF6ZmC>I^zJxlhHWcw{5^d`_ha$6r;SPWXpkTr>&%W$w-tAymK zDds0g?v_ihFmi$W3yip%6m4s_PiarWFDphURB{y!kG7{Z6fjCuti3j3a$?@~9(wfH zO9EaVMc6FzkC#LE%0o4xoKB3YEXKT(Ayut%i5~Jgr%k39ulB56)=tnNYitxQ>*S8( zc6(j?p!IQ4iG-bQ)$APyCC-YuQIum1d=+PnnrW7n4cqTf66|PG`VlenNAsmunkzrf z<%Nl2;`8McBE!va^2LcZ$HRpU{JjraNk?TFAIkv4j2*mtGyr~_pi5E&p`_OpY%Fp9 zr>SMstXkl><344#5~lEm_S?K;Io3a>0;02`puz_SCEp2Da8XK}md0%Y;t+pz8EWF# z>d?pA+A?F_ivnbd=;5L4Ql%oX_~!>#6YuWtetdCH!U)qV-AS)gF9ul&i<3LNnx2>&AHMGjIP~{4}M|o)Q$Rn zap;zbi6-FBrGLv^q#7KbGiN7X!`=?GigU_KKljqRwvcC673Rz<~7~}C~DXd$lJUE?4DE_TGXCVg`cSXHNOCx0InJxjFG~ilSfNq0#U$HuO1)GzjjqO z+lO*-KB%+k^H3X|#(H>CTV98H@mn>y$MG>x^vvG zx9YszWiERle^paC>a*0jTx5#J(Zz4oqu>nt#vt;qM`qALR+S6qimB*~VgCAc`l@?7 zjVG}e$~JMB*FTPpQnlznpbN(RH3FUP`B=f;H@WG6tcUEw)|Ub#EbjJ*e1ZZz<8%$| zM_nru#2ka#-}8k`wWh!VTqwfMH<=_M@tiG|w+!?uq6@@xcX-sDRa zhvy%^9@07cshxa%%$BbGWuDavQGL9;GdU8XfMe=RH}%YH;u? z1q3`0kJjXT8_X}aOANbJ(%q{=(hg>lx-YleB}pyPlbrWyvH30{^B*LP&2)%`;=V-j zsy||>WQ)sKj|q&<4)!B4k!dRbG1#|)a21U)-c3RL<>UX_YM^~F?&Aoc8=PyaeF zXsk`vS_@y6n(@vtOhyW&m4UBEjb)CD|BB0jetGP88|-xAmB0Vq5N6tt0Q+Rl@t#Y| zzoA$@Q4+{Udq=$wdGH|28wWBr8{?J87YESb@BM|j+{fiG{{=YdW zih*YuI=Yy*AB4K~+X3ob|L#kD@MIEs3v-3n>w!dZ&MU4GFORFQQuKpq$C=DIMg_RS|DCshOO7bV8c0k<#Xi5S==G~_K ze_Zo#oR4!JU(xh)644bfcvxBlPl6@YU)U^0LlFS^M1|c7_>@hvdR;ll5KWop(!pN} zzEL*?YRJVJb+Tcc8}Rcjp6=UNU2TLPpVHh<8UQ*0wksepnUj%04C^L?{U5UtE5mpY zKp)cO=Lv3YZG8cBQMY1Mv?BqXRo4?uLdPjNyBRg(`CgsZ2bJWku`(S2fZY`OCK8l( zXsyI8dZvLzfAcT=gz#NJKXU{X7a%5Gx^4WX9LSN3{?Qvo@OGMxUfcR|T{id>{j~aW z!?8bKmCxsOI8$7V|_GO9&&UiGZwz2AzS0M2A3 zrKO`gQFy)*0wZ4YG6Zwpt@#@Qyp$~LpvpV4fK}-gTf23x=+S?D9S!r$ zQTELH<&sF+{h%O!0e=P0s$R$;8Ma$it z5mt+}C9Ec6g3Qd!qVKlGvn2*MxqSB5(KNo=(btFBR?*&Ru)Fj4 z+M5<>)a{DYp9Ks$%wTfHENP}mS-Mu zxsh=u-Lmop_GiTb?70S4t+P(8#QT4Vup>kMV z#^y6WWG_^{tM5${!oXz37{w=j07cjby~V?pB&p1*{&4<>zi&*aEJxFETn%KO*Q0cw;DGb6Dhl?N8bG91g8#R|s1t(%V7AGM8t(b94c7E)tAjKu^K^102i z{y}7@7vy$2GC`e9)CB8}Aow_D?;xk!_TV}dFd=)SW;t>~mRn7Rj8l9|vzUc>lVeU@ zmf{V^=aPTpt10AttzhYSSO?@38CN|nLsPkC)lP$h^W^pz39ZW5<>b=ukp8oAJkhQ# zCh8iK2gT8AEL=f9zu)V&RcF<4+UWXy<0$hot{6llGg2{f!|hwEkPiD-9pI?#TF~68 z8Jop3>R1WP#vsyjFM0q}wuRZnT1$*n)9EbNrp)chZvr*et#=!U$zhq+tV&r9whx!n zDmuSMVB;B*0*mj*>sH)~v|wc?sZ#JwCm@-e5vgsMblQSUa3k4sK#q0Gg{LRhHRqEoQ%!T zr4b?d9d2(8{I!48Y(oBy2kc!SIH;DdfeGA>g?x@ONvx3oRk5+Fvwz$3q+$1nAE3Er z`DTtB1bhG|s~L(-!a3a6R5BFX*T%BZYRG{= zt73zr^*;133(S9Ug^e^|$nq+hpA3O{TveIjv)b-5SKnSo_#0{bMjp&YN)%Y*RjsQu z8#$|*GVkjEP21{*D%tNPy(S-h7%K9_7{3%rjg!x?<_aF(Z4$lW@G35juPHMgA=0}+ zrtI*Ue?G!Ac6`4J*8ZE%aX+?^BgUB?>oqgKHeI9ww}?WCmE}N?d5RDq!shZ{C}M?h z#{fSAq0ATzh`o9yLjD~oG}A8GIWS`=wZ}6AtNq$RFz5CwJ^HS^Ah;)m{4v9<+yxL7 zmdq9pJ*wa~FT`%xHv?4}4M#=Ga#JVle2>K_#qO#xpOsy4*+g~)!uoOM$D^4dl~LGc z?y5qe8-Vp?$?ZF`;IubJGAC+el(+n?H~aAMz{N2g*kJ0Mj@Q=044V@^>-jyC3#oMO z0Yc8;FJ*t03!8uI)(`x^|8JaU1D$DsiVt^oc6S#II|uA}j;kk+BpP8$M;x?){rqP1 zx>0lvV9A-p6YxA9RUPwZ7C^X>%u?s4=v$jU-L}3iYY*jd_QVufsTJKC0Z- z)MoqEYR|<-MWGjq+q*b^&@lD}HbbW-{1k17zt|(OC{F%xv2K|<@$LR_A*G)x?6#$v zM(hf-TtWm(5N-4{r@vfx)WcDRmcy}~PN*=rZDkiKwXHBwMi5JrNfL%OcuneA!(;aS zn2hW}JN_D=7OZzMHWXAVH$5N|PqhxeH)H}}t&Vx6iOI?1?5h#Ckd0vF6e_T{E4$& zX|&K#3ek4Rr~S6a-Ie5B?Anj{5B#!*hwe%j`onRxnTh@K^a6tJ?R4fCVlr7P#6D2U zH?gXydJuCA+r|0k0bkyi&$y8}Znj!^dwF}*af?2AN8*zFgXUkMfoI>H@=BO>y&%Co za~*u~4E&4zFIxQze-^m>x4c&-``;%FV<-5&RVm@`RCHhM5?q_(}ZYWF24xui5DY4551q%C#smaOuCIHuHOlm`q!rgV_=wn^5}@&V|H1{nLz)9 zfWYdK6ctjubkwiiWjp2+vXOz|BK*$~5ce#!#i!hb;PmA(Hk#IYHi9~iS^ihJ2GWsy zm;?7lXNQqwD9H2E+W_LZ_Vu~Dbr%8Q$LpBF z{&Vj&4oGApC{6s`x=HQqbJ&~;u9a3(R_J!NhXjv}sC&yVs4as?Sk#u4IrF0TdQ3^S+(3U~_o zEHk5*g(gmj(%pj$@SS}M@!WJ7L@0@mpd&PT;#46DUhkc1#+RN1!30Nt&nGM@=RL8B zaSsj@hTF?8o@?Fdo50+-7pFoXplT>0wz{c*s^bx0k$@0Hw5!x*j zWIyw2;BTXp6D=g{;DN6;e__ksSOlM8qV65}zEV4hWK;`EW87()K&=-~5S^_^KtbAz z{1I-L`@_j&mMwd(i#g=2o^|7xp$83uS0RoqShFdZL-l2bPD+H>bEW`Usq`3I1UvhF z+CP_uSo&NjA|n%Qc4^3-rn#fc{+9X@qMvP`enUMU!-DPr{k4Y5y!=YBClN(;nzZYw zhu_IiK?nM5iYjJTeZOs-K^YLa(cX{br~A!=Z4Vj>UXd&U_=1*(=HPQW$(p3EChzrkv`42EWb4juyOjo6|l_Yh!?;9a4B&qlhDS< z5&*J#1m6#8gqk|N7|ae(K%_XU6->H6KkohwnB3aidXE4K{^`?LA)!F&9rIhns-PMx z)Q%z}i$FmO*$v|-_3?p&PMVg9aWh?cBsqZm*!UKiT+}nnYdKz{dZ&W(TiG2@AffRg zQ^oeC6UPgSZ$9`+^&%) z?RbWN@rBB7TLrEF!iX2z-}E>tE#3!XHd*wy;Lzp^<)3tT;l4r#-M+%hc=a9{C%>C?{Y#dhY^@Hu5SwWZ|1QavG4!HuV&hehPJ@E z>ostcNFThP$Y+<|z*I>xs@jn!)TlqPk9+`&LO=?<#~){yF5cTb{yez|zTB(}U?TMq z%!M-D`4qC*loRj@szD*QpN* z84e$SN&bcLrEo<5p}AYF{+Ief2?Q;%lJEgI`xS=rOwQ}mvuqYv1ZA!(&;v7FqxOB+ z2@uC{%W-#-te#MXZqF5S2?x%&$v-zM72;2);jSleo4(z3LpGx#5t6^jx$%c9FDfTy znso8M;Ejp;^IWk=Vr&xeWZY4-=PxEMXzn*m*HtXo8z9NNqM5%wova@NCk@g}Ls~== zB+i3wOkA{MFG{8=V_2aqa>nXbT-~Pw1_KI#k~E4;lQY7CPYnv{76##m7>5GBAeab+ zJb|%Icez_%#_^%go%X^|MLT2Yc`oQ}7x>QNd%`8@M4F0&gf1&)y&NEtz9{y@@LXJ-NAaAWBB?JNa`hIT|@=}6X<4V%l0Rsc$sOrVz z3mcyNaCjfmWoLG2L!T;9=+`6>CviX4k*_hLyK5UX8#_9FYxP{QNPw?*p!Kl|EG;Id z-yGw0y`*0Z;GH&CBQ?Cnqh5cDQz42`TPd}8qa%3Gwmtb+f8%@i_TeA5eWDcv9j)4r z_Widk2D$nk1pRn3#RAOy-%43qD-?A53*YS@{Qq17IxB$?D*u1Cc?&WBKeiF9w3ZlY zdkayVpuWMu=;Ot@c$|LV*IWEgFE1|*f%ZS(VE7X?wPa;gm9)hs^4rqn@crpS?S;p> z`Bod-5EFd22K-daKo|i}2O-c@8@&aTC{f(Ko!-28L(az`$c4A)4+8K$Nr8IDyN096 z!45)epqp6J{kTT&bTsS@FEs=2vG*_$&?zQf!-GWjJDe>ensFKBKBVKZ$DbKF0=6Ld zuDA0;{B+HL00^iT5WF*cf|{kK#ai!?%Y@Zf7-k9 zucodoOfY~7L5db^1k_T3fP$r z#l!^k+Ot>(hvWps0Vkwa4fkiMy8gME!Z}gSGFPC%gnr`!ZY|cRv_=TkGRCMke>8j&0G<>%_u#2)d?v;O^=r;D_ z_09>)jKn5x1TFfjp!Z!$$9qAZsUl%_C;R%>45WVf>XPO@QyOm${B(@71R&>ZfL$Ah zjoFmv2CkT7ZnW5tNF;)wO~w_O_oy}>#G`0$J09wZ(u_ zuT~EGrVDQLk=E1tkpAghpXh9mOZZ%1`Sy-v1FZacZ?R_da8IEcM;#wxCS`Z52HN(d1D?nAtp!fc~A{M;~mHN+yMD>ff5B8(W z&7+ys+b@*%0Fb~Za+*)2T*-%s5x6E*7BjA7*lu`oe7H4hi!VQ`>DXFOH#nH*OZnH@ z(zrVa#^@G2D=aQHMi>WiaG=W&Qm)11mnl>rZq?VryKr=9qcoHrtNLSh?ws z%nyV|0&$iFTa6HXf&2K&o3x(*Kjd~z-~K>1xbNS36j2nn4+NTs`?|}^KRIT0J#Y_V zpK6Z{c~uuQ+!*c-w2I8R4Z<>iM6o_ii*lQNG9D1XV0d4I*xENZm{XQveZ}tA701@M z8HDl+DT)+e)_K3qG4hyr3w}%*i*ae{xRzmc$<56zxHs$M`>ELFKKze1x<1X3kGF-| z>+On9v2qB@2V5U{#J=$^Fw|abkoHkXO+%d>z`g7Gh&*UNmUv58N*u28Fp0eYjJ=U* zfEaUt5kxp@BT{{L2(3#==PPFI62jP+eToNq zHm<|>ZG8vgQ^Tc1Wnuc7p^=9lE$0)Q#xD7UzW(J)cd;RdygK4qnPY1hHs@#P={iHd zd583xJFc!mR>0S@B$|BRSIm8KPziPHDHlvx|Z`xCwdyba5(KCv($u z7;}lHd8)|-+5)xHj`skFIC{+yf;x@CSs=XQ_huWAjdSOX*35#=#oVTx-8zs_E`2lE~-v7NxDjT{Qnp(lXk!zV~fxN*# zk#r;aZ%v4!)s>*jv1_oi#K3rD$+YZ0$!o|f0^>=Ww;<&qm}`zgSAk+Sn|%ftrCfZ!scE1!M6-^=C-h%^Rau0B<`K!K zC}QeKQ;@j0Y8<0%URz}zmLUZhGOfv(98Jby71FICmXE&NScfg-2laRl`|HCE*l!8I z-EEWa0Vc2i)r7&6u?jJjrm|-dBvfc}8Rs(*IBR9pVEX9#O&ZILX-i-7jD1ifP+jEl zE7|mdSuHbr&zB1Ez>Ht&iDYz%A;Dz=>A}-N5B584o0vL3f@g|PLw%|^AjQuwz>~|S z4m%GwMR*{&BfoeO`6(^@+#k@FrRH-UDDFrYV8X9w75o|~W=z4OMn`P80@>$h# zChLBBL#z1Io^y}a7%Fs`QxCIF$0`F7`M~JXw;jEYsIS?dXEruAsvn=Hw{y~F_Ad@v zokDCy6YQq_ON}`|DiC*woT`%dJvwV>0U*iVe>lWkfTXlCImzyiBFIAxVZQrUp}(5o c|Jn*xcHL;9O=}HlkL2LzOmw+e;}Dqq8`wcDOaK4? diff --git a/website/docs/getting-started/assets/code-execution-in-conversation.png b/website/docs/tutorial/assets/code-execution-in-conversation.png similarity index 100% rename from website/docs/getting-started/assets/code-execution-in-conversation.png rename to website/docs/tutorial/assets/code-execution-in-conversation.png diff --git a/website/docs/getting-started/assets/code-executor-docker.png b/website/docs/tutorial/assets/code-executor-docker.png similarity index 100% rename from website/docs/getting-started/assets/code-executor-docker.png rename to website/docs/tutorial/assets/code-executor-docker.png diff --git a/website/docs/getting-started/assets/code-executor-no-docker.png b/website/docs/tutorial/assets/code-executor-no-docker.png similarity index 100% rename from website/docs/getting-started/assets/code-executor-no-docker.png rename to website/docs/tutorial/assets/code-executor-no-docker.png diff --git a/website/docs/tutorial/assets/conversable-agent.png b/website/docs/tutorial/assets/conversable-agent.png new file mode 100644 index 000000000000..e87ee3df8f6c --- /dev/null +++ b/website/docs/tutorial/assets/conversable-agent.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88ef4b0853b175c02cdb029997a731c396eb91ed5f9e5dc671cb2403169118f9 +size 30650 diff --git a/website/docs/getting-started/assets/group-chat.png b/website/docs/tutorial/assets/group-chat.png similarity index 100% rename from website/docs/getting-started/assets/group-chat.png rename to website/docs/tutorial/assets/group-chat.png diff --git a/website/docs/tutorial/assets/human-in-the-loop.png b/website/docs/tutorial/assets/human-in-the-loop.png new file mode 100644 index 000000000000..a5e267924116 --- /dev/null +++ b/website/docs/tutorial/assets/human-in-the-loop.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abe6ced78aeaf839ef1165c35d23e8221b3febb10f9201f13d283976a3fac42a +size 38796 diff --git a/website/docs/getting-started/assets/nested-chats.png b/website/docs/tutorial/assets/nested-chats.png similarity index 100% rename from website/docs/getting-started/assets/nested-chats.png rename to website/docs/tutorial/assets/nested-chats.png diff --git a/website/docs/getting-started/assets/sequential-two-agent-chat.png b/website/docs/tutorial/assets/sequential-two-agent-chat.png similarity index 100% rename from website/docs/getting-started/assets/sequential-two-agent-chat.png rename to website/docs/tutorial/assets/sequential-two-agent-chat.png diff --git a/website/docs/getting-started/assets/two-agent-chat.png b/website/docs/tutorial/assets/two-agent-chat.png similarity index 100% rename from website/docs/getting-started/assets/two-agent-chat.png rename to website/docs/tutorial/assets/two-agent-chat.png diff --git a/website/docs/getting-started/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb similarity index 100% rename from website/docs/getting-started/code-executors.ipynb rename to website/docs/tutorial/code-executors.ipynb diff --git a/website/docs/getting-started/conversation-patterns.ipynb b/website/docs/tutorial/conversation-patterns.ipynb similarity index 100% rename from website/docs/getting-started/conversation-patterns.ipynb rename to website/docs/tutorial/conversation-patterns.ipynb diff --git a/website/docs/getting-started/human-in-the-loop.ipynb b/website/docs/tutorial/human-in-the-loop.ipynb similarity index 100% rename from website/docs/getting-started/human-in-the-loop.ipynb rename to website/docs/tutorial/human-in-the-loop.ipynb diff --git a/website/docs/getting-started/introduction.ipynb b/website/docs/tutorial/introduction.ipynb similarity index 100% rename from website/docs/getting-started/introduction.ipynb rename to website/docs/tutorial/introduction.ipynb diff --git a/website/docs/getting-started/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb similarity index 100% rename from website/docs/getting-started/what-is-next.ipynb rename to website/docs/tutorial/what-is-next.ipynb diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 22ecc7df62dd..3ae4b7c30134 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -42,7 +42,7 @@ module.exports = { items: [ { type: "doc", - docId: "getting-started/introduction", + docId: "tutorial/introduction", position: "left", label: "Docs", }, diff --git a/website/sidebars.js b/website/sidebars.js index 4f20cd67ee14..828a95705d9a 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -11,33 +11,34 @@ module.exports = { docsSidebar: [ + 'Getting-Started', { type: 'category', - label: 'Getting Started', + label: 'Tutorial', items: [ { type: 'doc', - id: 'getting-started/introduction', + id: 'tutorial/introduction', label: 'Introduction', }, { type: 'doc', - id: 'getting-started/human-in-the-loop', + id: 'tutorial/human-in-the-loop', label: 'Human in the Loop', }, { type: 'doc', - id: 'getting-started/code-executors', + id: 'tutorial/code-executors', label: 'Code Executors', }, { type: 'doc', - id: 'getting-started/conversation-patterns', + id: 'tutorial/conversation-patterns', label: 'Conversation Patterns', }, { type: 'doc', - id: 'getting-started/what-is-next', + id: 'tutorial/what-is-next', label: 'What is Next?', } ], From 1319786bd0a82b67a9d3115fe338e86c75121b1b Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sat, 2 Mar 2024 23:58:56 -0800 Subject: [PATCH 25/43] update figures --- .../assets/code-execution-in-conversation.png | Bin 27871 -> 130 bytes .../tutorial/assets/code-executor-docker.png | Bin 45857 -> 130 bytes .../assets/code-executor-no-docker.png | Bin 41216 -> 130 bytes website/docs/tutorial/assets/group-chat.png | Bin 90369 -> 130 bytes website/docs/tutorial/assets/nested-chats.png | Bin 86079 -> 130 bytes .../assets/sequential-two-agent-chat.png | Bin 71759 -> 130 bytes .../docs/tutorial/assets/two-agent-chat.png | Bin 15742 -> 130 bytes .../docs/tutorial/conversation-patterns.ipynb | 203 ++++++++++++------ website/docs/tutorial/introduction.ipynb | 8 + website/docs/tutorial/what-is-next.ipynb | 2 + 10 files changed, 144 insertions(+), 69 deletions(-) diff --git a/website/docs/tutorial/assets/code-execution-in-conversation.png b/website/docs/tutorial/assets/code-execution-in-conversation.png index a9bc3151003b4fb3f243049ef87e135ebddafbbe..bc1bc79d706aea93f607d0db82f3390aa0302673 100644 GIT binary patch literal 130 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 My3PJ&;UGfTe(!%LP5=M^ literal 45857 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 z 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 diff --git a/website/docs/tutorial/assets/code-executor-no-docker.png b/website/docs/tutorial/assets/code-executor-no-docker.png index a917052d7ff53e2f2e56ba21cce21bd4c14a2e93..f3c3ffdc2a2681e7353166f0918793ee3fb72c65 100644 GIT binary patch literal 130 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 KS(KT3#Qz853Z=^c diff --git a/website/docs/tutorial/assets/group-chat.png b/website/docs/tutorial/assets/group-chat.png index c1b44ae1b4b59e24e2b5ec0b2f790cace4554d64..d2a441315a78438dc29780f15bc80e30d30d3a1a 100644 GIT binary patch literal 130 zcmWN_K@Ni;5CFhCuiyg})`f-jHwsH3X^Sc9p|7u}N#>I8X#Jz>aqMF;=Gl(NtBmQk zp4*iA+l*b3xj^-n^{DIYX>k|`b4hGn^gt-c7=&hmGT)I`3K2N6v)KnI$p-{s@i7&I N7&kTAPc&O3R)3%}CKvz! literal 90369 zcmeFZWmH_z(k%*2lOVxDfZz~!A<>{D9R-z+w)S_Z%9ws}1ioDYBDL3)xZgFQbg`iE;qBZ!QMZeSt?;=qQCUc1ZU0p+lK=K0M;M4R!EY0-sH$Ibp3IXQl0K^{bKVzSg? zeARXy{01_HF2X_HByX~1F}O}5&+K1>JPY~o@+IFAvdkSjDqd=ct`Vv(90WCq^LtSFJu^)2YKK4L}C~p2oFsASN7fc>mkA-*FX4`$6&l2B8(PCM z0n4!&D2p0ONI+2m*KknK0VYsj;0hXe;{b0cC{Q}+?@wUL(qaBxJ3s!iP^Qrv3W^U( z^c}yv6ZCG%Q|%X>7u{Meq`o+Cv>E7)5DEm@cW9`nt|E!I@1&(G;vR;A;V393D{iG_ z`1xSB-piPbm^~-TAdm1pO?_yBcWn@->zy+=u-re!Z=T)X9UG#lJJ@S-UXghXB8EW0 z{m&Pq4a|jMiJSNYL6acg95j^@NWP z0rTH8{l5?KKm7E6J@Frd{2yIT^L)P+_&VGw#tRwSk7zk-n6iolGGS~(^slKXs50AL zy*d(F_7q&Sb3`T}$ZcMc3pes8> zo9`+saIJWW5J}krh}1_ER7F`xn96jZqCRNTLFo z?>Wo&i@JuyC0LccZ!@Z2ZAw8frUnIA8u)w2_`h-)?chN76`6>HOgm5=&FeYghyi zWtHR|fA|2|lf_0L_0-v6sLvr38u$BwX!-QdEZ>Mg4A5i6m3h8BOJWze?z##xkgBUb zj8fFSjx|pkNpG4CpcaFLUV~o^W-jI>9L!jubjsS={I)$l8E`Ff$?OoEh?PB76 z?0pHCq#O1kmodb@1EEo%R`xnRt)kp#&__2y`f%Yt&-DI#TOnS#LRepxPpuau1@0Cz z1*UUc(wvs|^v36lIUk%b3mLBkyB!U z(ijnLGNHB9&a_Og-0mWV)?>ptUW}5H&G_Z7*bLEt=VPg$)=WZNApO}=_%gkzkd4Y1 z9d6RA)h|S#G1`wc=_8-o+AHT0sn3%W$k4xL3I#4i_xhx3VIV-3>PZ!L^;!I?gCJc2 zQCd?07p?j!c=sLAer4i1;m7S#af~EdO-r)CIK;oHOF9J(n5AR2o!?{+I$fT5)Uc-lBAVN{ri2N1-2HF8$U$3{Q(T7AeHU(u(VGCMd z<+q#c$stB*`|llS-z2fRE6@ObHRl_~LoLVhQit_~?2aob(Zu1C5dDc>d=9UGuTN){ zEMEfOyh-KX;p1Zk!79rZ;EKDx@O4ByPY-6`|K)#qGHHm#vOEESc}&*nX1Wd0;yO4T zuYkMN&k0h*&1a1N+h6_*J|%-z5QC5?cWeqNA9a5`=QC(A4Y>;<$E?n~9* z8*1?wJfm@Y8> zx!>R9UQY^*5kpc3w$RIycWZ!J8}It|j^)pi{~ZB;eRiWkjt}kNeAK(IE0MDLb@0Z?Ho_2X1n^IC{0}iE#<2$Wot~T#_?d-lV zO<1rt4nt9|cxOAxc`cx*ig0&z_N8*V$e-uk8OgNj7 zLaD=Ij?20Vf<}Gw%36C)H;XaT2RAk`ne*l~=N*HE29t;fT}oI@J$vCr|8f`+@gJZg z&j>2yZ6{8e{3s~kToa0G3p}7YaYS5{kVx&lWt-lEi=4sF)yx=jA;n9RIx-7`fpW(d zsv^RP-)jIcmpO^{fl)p4u|Km3^-f9ije^P@m3qK&VH-s{647ECIPCuH>6)QI55X+k zzQPrLog;M)St|3Ef~F*k#jOj6J4Xg@^IMAKuklQQ%NGxV;`6C|C&Cw*XIftkB0Yu( z7e*cFX9cb1M*J{{_DBmZc{(2>AdUahr${0jN6r(2!DH17U_EH?8mr&JlEmDGBP z3E?1+*Vc=DG-mBTQwlbEj#k(9hfgnIf(7PCw5`$3)TU#$4r7PPwMlPFr2=1yTNud2`Yrx^P)@!Yovd3J^C}(+e!Hv zVTv*Z(!g6H=}`Dp{ao~xxmDD0Betuj6WQx?*L^2Uk!&!&p z8$6|zKOskZY))W1Hekx`Xxca)JK z4o$6+byJkCl5Ez$oyv0E6xfBv;d18SzU~zkoSsR2h)>nP6fY^m*AJw2*EVSp+h}M1 z3!fo&@XFWE0?e0ZZ7OR%Qk2z33i1G(ui+;%FRNN)V581t%)!#}&1nXHG>zd0_GF%F z4UZexpXpy7ZfKcJ7JObcs!Lt8+`%}zIQN=Or$y<0!B2gQRIm{Eg!iov$kbQ1?d!tfX{W|WyGbY z&}B@E1c@xbbQ&B zk8{tuVXqqe^~{iI_TrcgUeW%u(%qw#CT@*^jP?+}sR9$N#BGvEgPJc4cCy&2@KnTg zx$RtG#SN?Rx!duK?JLSHU)RqyiF>v%rF&OoGn~w8qpo~Hu_A7pLNhdZ+&JCl4QgkW zDvL~GK#>|vP#1iKh*G>2=O^?E``;~L;FM1u9Rq=`5X2yTo`#Pg@)?M5`{IxkN({`^ ze&i=(`9h)78U~x@-_IS6FOv_E-Hzm+`PFTSJ!PfC7>q^kRhhJ2nhk<+y=`_|ist%x z&t&Qvqb%|za$Bf6W=FT?a%7<^*lx=VBLxcsQ_)_9BdD@k%OR<{xSU2E{1<*&<3ab3 zyY-?jyCU>lrPtH3uJ=n9!Nr!(5*=-)AZOG(H zyWzrxw|99pqd7LOd0^MLb?LhtoY$UyyHom+sYLL+s{V&OZzaCX)lc8_;l_~!^o^jtw$aV6ZFB@|qwh`AV#rr~={V?Yl?Hw~0|n~_^-N*; zxc;Lm6?;fY2wEZGxst5&qG%~)S(|%iomX!Q34erf1lLQEpGK*0a|JKtI6FBFADR#b zSvU&hu&%6Dk*_%rKJYcVbSUGzIX8$pb<13%C4=~vm>@;j^!a%0Z%MqOJJn7K%5$vET$uk-c6`K4Zr=!E~ zr?wVt=|eJ@6!27b8i*d%f(@iuTPme2dKYi{B4wyP` z2%kbC2`~0YUH%a-+VIdA_9Q)Iu_4hMCfY2;gUacoMA}LqDlVekX?`qv_0GB^y08}m zPk-$|>0|&xnxaJfLRmEj*wx5jdy>V1W%>xqX1hD@H$0`h{+rOh%m8r!AMRF##bwDA zvGGW2;=5y|^PpNkhsN-PB>M{VnsOgqtMuCNXZ=P_yCSWK^gs8WDg{I~zZiRgVIGN` zEdvG|f(@F#oY3?S5<}y8Nf_e~V*&kZBGypQR!u67PzEzahq8yA937-H-RSK6tvPU) z%V)VGD}F~ZE>6R2zkwSk>fuqPUOg_n0FNj53|)0aYCkUsD$GphP+O#^LY zb2SNGltO$+n%>h_A_~9%7Xqp=X0TBjs9n1jp1H#|mjilRWp63$EvI@Q82W-lS}s0^ z1?d~FGlod5p1YHotd06G*>5Y|JkMX+5&bN!y@xo}H8L}CLWW`iZw-HCwlC^^M>CYI;`PP)04b=G>eFDV4AC_n_7@TcBG7`r{oJ{f7jbHaw zlNF=GV?ii3OJ)p)V+-S3L8U*+0;A)1qp@nC^JWLsoo7MqwwMv1>i*tlg-Blh-!#W~ z1vLB$8lQn%cwf#>r+L4Kl}K+=jQfIi2ZkmAO)wwjSSlNtyz4j$sH;8B3Y2z&eB^Q- z`%M$3zw$D}xsndIW}Z+f?CB@4z!~X_OPr8ZV>zOD{*53-BmtQ0Hu|JBLtJg@pj=Ca z<(PogQJ=MMyp4q#7K$+|j-oy6FI2%t4oX_KGm+!cM^CX3I)U1-__S=&aq^LFpvz?3n!h3*U-N~jhP>!ZqUYBPn)4AwwKRb=J*GF|T<_Xg!WQ+OHoZ-vd*>H_l9 z^&{yg`ymQzuh>HtN0g+DBD1PJl`RR0knmj@WYOK}AX}cn0AP+19&?69f2Q!nOS^_4m-|uq0Ym)2`SDwCvyZGj@%#KRI zb$Vs}8uTwrYXB8G_!F3!k2^jzy0}}?)d$gjsQ@_iqHg=|8n3z-jB^6Ad9=Lg=zoT z`yV$01p+qpS`ETs1jb*~`ESV9x4?KD{*0!-7_c)n+5I|!qKmv;Yd%Q4WprU=7 zEQ9!8kHv=p$LCxE;?jrx3$^|YY5fcsFKj79^*=@K-)R)`LG_toED}@y*LV;;U_6Is zMq{8qRMmeb1MnQunnh43D*qDQzk%@t0m@#FEerF1HR`WxFDk&as<2Ky2>&(S;!9vW z{C4b`e-{0BA@2nhJweqfsQ6#wLI3}86{HYs_&uJVn3(u9?cp|Wmh9`ryeq?iFFbmm z1f$*hhlKSXB7`Nfi7Hiwy|!K9gj$yDRYpUxCS9SpN;ymiEe~I5jCLn0)?!b-Jtgd6 z((4K-kWFN_Tko+I4kysCWVhQGj4>f_Ui~aK8iK=IILk!nahXArm&vqd*aiEaDOGz;k-Gv1Prq|cAIn#1-Cf(lN_GNzx3CWHkm+HGL zE~YuYxS)^9bv{|QU+#eaG^%fCD9gvkmtd<}ZOq>tP8fHzmSZwiN!r=f)yIU5js4=~ zOXb{T#S&GS4Zf3ewE zzD#a%t;Nj9k1P>`+qM3<99tC*nJ*vrHhVskFmRBP`kDSLR^fnGi6o<<3PvX6p*bNV zCzmreHcqfbh5nB(_dh@}mhE#jZYHTcpRBhbIolcy@JGfMOY^*MnBtL4W|N^(<0>+h zv|0P0ij%6qoL7&Nw}dSxJ`yjd9@@X8GTt|G7*fFA8Po5)ThXoG!WPQjInIVORG0|- zex{u3$DKnWiDh7}G4TH1Dto*DfQqzcKM_9|E?)vdd$%!=L_Xl3 z_aQ-cKO}#;nQ!Oc5`VmCnY2L8`Zp?@H`LE24sV9v z=oKISdm67+DdN{9e_RS)Uajs(nHT^0ZoW9MZyNP{Vjm$4LB>TL=puL z&%8O#yZ?k8$QQK3k9EiyypK0u+y|$6T$^yXUo)K@ETlR0ll>B@aX=BZ2MhGxRuL^nfaUX;*eC3DeRM72ByhuL zbMFKt>icg*lyLb1+9&G+(Xp|@K2K48)`{Z zyS>^-8>_R@QUU(;lziN(wt~<7G8^~x={n(ZF!((|^KD=F;@((okB(u972i9_y!vH- z2=4Rxc$N1%e&)6xC`#b2(Y1wYt0E*UQ7c6w=!d2ngks6+W;^;IOT+IWkm(!&u zuPy&+4kZ*IQCgzb^`D$WYolHrZaA|e;hEdZc@rS>_rJp@kXXyj+icR-b7LbS( zeSWlToNT27_c2)_FX`A-O7bApTUX$XrGN+H38cTj&G$V0ArhUKC?=ODN$Tn8nY2BC z(W3fSmM}qYrPBW`OlXJyq#}CvCqS~kZoOy0B<%GfjYsdQH6pQUl<6TO$iW)n$e_hg zfM2V5#ZmtRWGM#0C!pbqkjRs*C>>W3oMoI%dcty1)o|U^#C3dhRKX6I^moF9h=CD& z&5!54nFoJ)Hr1iB0sur-q~}%TR8MzL3XeAdu&YfDY7yGtv#CK>6aO^#kwq(h2aa`+ z#rNuDLynIRqJEQ{mS!ag-}5(-n4&48MIm;M_X@U&C)cLcNU+$*k7hJ+1T$?zLkq$E z)hv|#mXzJO;wC?3)+~KF_?qSI4bt7vI66A|X(;0IC$>rlw=R9Us#fYDhZ`g>-+xC( zieRKt_yl0;!=6pUf<6+p?x;^747tOZqH2psnso@aO&^ZQNy)r>2j)KRA$fs~ZDR2; z`*&#s1#JL#C`+c6>epxAI)Kv_mi#j?Zl~}`@qYvn7TBdJ9&im@$j-8q&Nod{W`vTz z+50K#qyt^JVwV7m4U}n7p;LBM%Ve1*_Y|-|6_H4u`#^BOwdPX-)QZLBjc;!ueA3~q zl1qgIe?e3s2~a7ThF#ND+$(efXt7gUa2)C;26X2)9dHDqVHD)a&kOW;Dfes@Fq-OrIYf9;S;% zk*UnpN8_E%r>e}svkpc?TFhOpuC09z4-dyh=b!i;Zf8^Y#A;m(3-$+R6Yq0Y^I3V` z;MN*~KVyQ` zba#E0)zkA{yo&gb7=i>|A55X2%CQbds#zxL<(t3x1u#;KidjppSn_rc>Z8B1GosJ|hFVD02`$#crdeC$Y6 z8sC2osAp8ftz@DTTAtiU1YGf7FPA@w$;PSsTgtZybdo&kJ80-Yg$|?(Ns@BA4N2Wm zZM&tSvabwSq4i>L`E{97J7&3ziClvrr*kNfF+M@O5K?*>>G-ZL&QE^2R2*HCj`%-Y#s z9UDaPXw+MK?YBI5m`+z0oRWE-jVqyVFe1lhtJIn&xP2Qiv)dUj5~-WDMYLG>I#>Ua ziiRfJalt*V^vgbnuG}Wz#UGELVO&Wo2N|DZ7zk!aTPw@U#(mM0V*q?AR4BrnbKXet z$2Jtqq{3UAQi63t?kUXN-6X#MRxnBT^x4xwDCmjTtq=OVw}*mPi>})Rc@#uMt(jp> z6{PK%_U~8mKoWvnTN#qEp*eP{fvS&SIvuFajp(Rzc8wNSd!vr+&UaM+2*}#1{N*Dp z5*}NGrpJ|m%gtV$$#6RV=}uWo-%gtQId&)^uO^4f_IMGNkcfz!xjD_8{iuX2{OR#= z=I*Y!>3AVV#nw@|PJ6!LKw`Dw08YU>kKlfsmC80XC1k6z2~g*b3eNV!k8+*k>sB#iTieRy9HxE3p{`1APQ&jnSBwj? zACcr>Zl!I{S1Mgy-OaBz`y`6@>qBYuqg9!G!PKsi8wql$Hg^C9$Oo2sweyMLr%~$! zjYj*7mWO+_pEX891TGsXjua#$?dcy5CMyJ~N<(p3$rR-uE>}=EY**o$@2_``XX{~R z2^7^;h!^Ut2usxJ!jzrYrlx^3q~@Z{A{nlSY7Ks@snSC@9s?Dh2nX+Cw=z`As$5_BTV=pNJ3-caAf7y; zLI?z494DDVViYlHmRDBRQoS)=go^*hbsVUR4%u8Q_1fP+>_yX=LWl+G>#M8pN9RWr zcBgB^g}Kis^-j0)(qe(i=skO-=fnM2gPoBH)oi(rU;}2%K*SU{-snB8MEjQ0`p0&E zq>esQF|pueg*7J$e#5m`80w6ib_FF31L^n9{s~5g?CN#{%w(cd;DmO-J=6m!5_HR8 z@a_iy4W~e7IXxoS;}ctxp*}x*-3voghXKBA+mmLxnLSX(i+#-_+C7ysZf4Vo&~0W5 z+M8v7;YFIU&vhA?j@^lFmq{^{qf=CMUT0=t7?Byz{QdCfV89_Mj1_ecb@MLb9#w7Z z_M5{D=CX2f26$ygYfN2Ub)#D|b!8#CB9i6=-|5LbZ;wO@#wtO5X2#AeF-C5*qKrCi zVBLN^79B&OXbi1X4d!{(@Dw^5?ao?zZ9fG>6BCnZorKzxXBO|?`Pwh)zt3KT)<=hZ zDilEWO(zN&6`)1yLC~%o<{V9Hj@SEFUyxp=YIr1jo5jSFVAHW3X+K1qh?s=odh*cj*i~4nJ02O(gE2!0h3j_5L-8v=e z=lb6X{H72YIIWj$>q8C?tsCYQ#Pcrdxba!|SqiR=zv;-0V`n~AB>a$xALUW73T<8v zpCl4(t=naz>@Xz5?wW&Z=@Lnd0!vJ!LK~4NDXLS6#YYlWP6tNoum^2`M|#{z&2Wdi z)UL<)%%;)FYj~U=i&dbwT}~s8fC8PT!lVLo($;?>^Xt`m5<~Dsp!;S=e`l)6` zTjeeVB+#wJZ$76t2Q7Arf{V;wnhcO#B^B9$b`WQKb1U5M{uV|7$wZ4UK%VzkdEdqY z2Vwy}U@!Wkam@Of{*TWkxhO2DYrE{WO|jX13%7iR^!>45vk^tb`4Ty!(eb*_s9rie z-uL|ruHKK*caV(;FLN7~bb~<`BXE(&nfSYt)sYiCs@jdv>!C9l*m2Csp>QVq9*}P<4C6hVX z_nXGbSABac&1x!|$}JwvqN9`Q3HTo>p7&Rk-7dA}4v+|kL`+maE6zSvmq$+@H@~fh+fj{h*(-bL$oezjHl5}Q?Hqr@&$z%4I z>YG_A577OXojp(u5I5@k6Qv2yQ3$w{OD)`&{IH&_cV}c|jI3VHIWEL>D#iNGbgQk+ z0!!-2$>Prvwb4wWPsW#rOJo+ycZO3R;xW|bB?FAiRM-uKl6-!8%wxq~6uAS?BqxaJ zfO%(ck2Yon;Gz=Ve8#4|Y+tKrb35IXNpNx7;LI28Hlyt^(RkiN_VdU#XG~gC!=!px z5fv4DsdE94Q>dKYi#1Gx$WJ?Hr~~{%= zODPcgvF=y3wb*6Qkz0?4a2z~P$RJBMq9kWYs;F9H?KUC2EH$#V!nC`EqHnKz`*zvZ zImPsNDoRzh(Vogbb}0VCx0-f}CI_qp;V!T~HaRg7w>?&%7wIoGS@p)#sR&Q; zxpRrhmb41a{7TG)!P=f{J$_;oMeX~MwgS1lO<+I94c9J{^>MT#WCDuw~ZvR&RRpn$ZUNdtJegvs_dWh(}LU+fQ0PN=KGEw-4}2dAdS z#Oa&g0r;(^R~#x;#ZW{kVXiyAUonTRhfJX@&u#rVF5FsD@M9BpzA$8>aec$E-%x1o z&2FD#g{<@SFtQjA7Wv9#ar}TQdwJxP#b&!ekh%E89CuJD!Bsxcb#jQSJ8v7%-g;Cf z6Lrqr(>;_{O7J#TRg;^qt9x&Xs-=c^$)d5RTIaKjtPZl3YfMwL+kQ5a=Q6f3p-%4i zZ{kgF*H2m_`e4EPGg_b4M+VmrvzPm>+Gp%z$cEf@i(A!*!C-JtGxXHwr++J9WdTTx zwB|`4S?BKi?ML2k$I)?rRumwGKCA61%SsxUOyVAUKHO-jpbSZyRZZNEoE>!&#_jk4 z8Pnt#liv3XIYQ!;tWeR}$)fD1Q#v!zqAWOs`^rG`>pSvJRizc|UYMOY>4TfR;j2j) zf20u-4lSdRZlDdtWM(-W$p%YGNG|LR%zF9mT(`+tciGEQgB-Hnl~IvkR*wlf-L=5BUR5-oh4dH4~OjuG-`P~-^XhMj`JZ?!E1VgmMQCE{9UbwDtXO2 zZ&PELk+DhZSID*uVk`n1mrccy%oR;S63u~;0kgf_YWXr>EagRZYfSODnm>5ewlU_CPWc2u3+i)USIB(^Sp@Mn~xZCTXOM%Z4?r#5HV=3I;HDY`GE3tz6EnohXpH)&FQ(7c*u z8?z!Horu9)T^kuLU@Q=9`P>y(2od44 zsQFx0OpNu%%MP+(yvbSYze}W$8v5Myd*4=*^U3Oc4NgF7E8p^2aq;lBPH=IISudcJ zU&Kkw$~x1&K-Qw$cp)QfiDs~lArp3J6sact4p!GF1Y}bp?exqjZ)umksl(anh!;Lg z@QoB7TLUvZKo#HaQQkWR@y@5d`?@?MHLLR2dcM2EPrR(hrDq@uCs|BZZZb;N2+-d8 zU+KSIdILzw!U0=hpmj$r{9u;o(~?6*4$OgPUs&iM!5nQfa@8@1+q8P)OHcWZy$n6i zvPic9*Tz2j}k+h zif$#Fde=iv>;be@g6J5IShxt?Pe0rDL`O#IQuwEBHKh!xSv4C}&V>|`gzlsV0h(VMxaa_5ZEtNzMnM#Dj2PpQdcTo~J697k!Pj8Am z)scy&QmG%5EE5_U$}9@h%vy=eW|$6p)8nt_Ka)pD6atNB#I-rrQw?4H?0(fN<~(~1 z5h7Ea;sgvUi$ioqs!$o%>*mWR6Qxq4v0bqVIYU^CsZDDV@8|qiv6PoD zd!->rPo3GPY&A+YFi0o-U)c|}(K{0C>rW|fYqBE%tv$n`d{q5p8@}eYJmHl@Nt<2c z^RTdp&Z|_w=>@Az658%vjkKbe7QJrdtq_wF!_gd`rnNzUAv5U+L}PK-0;rCWS0lOK zIrP2FW#4ujYD?kF3DHhVQ&}StzE(4%USQ`j-MRUI3rltWRnm0!BXHe)dyICI_r(-Q6D}khwvj^( zr=aUK<1nTc8}3=-inq|Iv|4tr;*d4I=gmxC%H(@i^yb^(;C(^yy3f*zFjI8AyT<4= zR}+6*t@tra!p(JoH|9wQ?bOh?yNg9ys@wHe9+S=TyY10DloHM6M5lh3$GUI>tv*8L zeG6W1?x!}Um)~mO%hRGA$WJy8J3%%wuMZ|sYajK%x6U}teKEmkno#26vRwK0_wjcfUSR()U^|q z$ZEBpZ}>vH9$xP#f$klosLCj0x_Wo1llo*IZ=j5xSm3p0Fax~w) z_37S0CSdOl_*mv<=F<`tvI2Y&kv>~WAeAblUHWKqdQr;dN~^2mo$XA7zak;Apoe1z zl2hTkMQvRkT8v=ob+sa2nW^twh+m|8$Q%);eDOINT$QT~L)9l50ct6#^y9(228Z4< zR-VgKv$*e@8ZC+h`sks)*9&wyh-gX4QZ2%QHVO|P3sn)XO3uOqDk=HnwTL&R_+p;= z-gDc9KQFOq<+fdY576UzWi9v9yBsEQUEf3Cb6LZumtPeyRKlfC^Cu7B&)9(0Kpi={X%KoWT0wD#`sD_p^US6^y&LK`E69LYGE4>O=rNDyhT z5vbcT;Z};8ys>mir8bDd>+5x-pYpAn(R+YT;c&>rpcXslMnOi-1-R;zFamC>3k%w2 zzvR^R5TmqIrZal+&LbI3=Q~;stkU(f7OWV$&lhcKycPR!eI);q*2!9 z`JA8(G{Ajls+tzoIao2}Jl(8Ee10jR>|?OrpxypMKM6itA4`-xiUliOx+^&u&*fsy zvB01|mdR?Ki>kiTiu1tm4ZvguhlS18RuB>@v{fj$@FeH2?{4K{O0oaLB?gMas z=;Ecsj!VUc0MAh=Rw*8^_TE{{)aDqaxhw8tm7N(Zwt7{&URYk=o(vW6`#e#to@;47 zGMw8FDU$Vy^Zqy|W))LKj9g`<(6FS=PLI28{$j;5?(jH3TMW{CHvp7uJoaQ#spc*f z-i%sDE{y#HA5y6{OZzpJkN5#vQ97;lNku4vz!_=l&Dg@s{8=*Vk!==GwvF&U-0Cqn z?M>H25%@X}6ft^-?_}6NA*v;`A{=< zS)no%CB>scReL-NMTpXv?BgjH6J;xj;7RQnI`tj#<_m{Wv9#G4sWnv%WU#$J`>YxI z-H={qv8$|NM*r@E%kiqH%YMT~ppkm0V6)5FX3d0V*3n9LR9#&R3ek#pp%dQX0KFw~ zk~~`0TqRa`_*`&ZfwlqC_{X&FB#9*9u>ppPAY^YIu($7Va5|lrwpM@l#;6o;jM?WW z&t7UP7iC)x0c+5j5cH)p5)+I%xd*BgH8m}iSDkt{scdrw2s0+5xj-|8Z!Y}QjIs7L*-jM6oNx=nS-slqg4t!Eks{amQ0UrS>x?q@VKE} zTU+~aeYUgaQ5HMl9SsEf+UFEBRGC?ASU|m#Pm{E|u`zmkb&|uF3urdzoJJ#U8jf>9 zB4K#MVJPtMKQdFUEr4BCfK-wj19Wl@R-xxFlCi~UzIUG7t^x^+Z;X&GIkO3xi=ygx z7R#Sy=xIo`djr!brp7KfBSOX0zq%}+VoUP=6L!w>2@D?PK!HW?H(2X?v#5L!Zj=+n zFk+9`2TM-x>Ao21t%AJN%=Q43BzeaH=855Am8#8Yvohu&rKM~yj3FM3X|=iOVLtvT z8I`q~#yPxAt1IxJ!3$||EmEuTW89L(n4Uz0(nh6-D8@wj(V_OjGr77256+{f0HSTR z0bh1cfZCf9`W&;~<;--nM{Lj(p=vCbSnNKkEPHL=vq8_j zDcR;hMi@l{ICUjd%Hw@q`w$7L+y;c8oc0_#jmC(IEb zn%NzwO5C}vj-{=O@JLCgE{2 zH;1R_e>yX_wRZvDyO^xiFcXd_9nCt|JTfLm$m;7AS&iv5w)T`RroM8M&zvsfh2+%4ryfVw3ElEjAl`U+Ds2Q$wtY=+%I%M+Qv&Z%J7JNu!`^-qGpi|~T(A>OuHqN0p zl9bH2t*veIu?T#t*M-^-TS|cQ#8u`2PD|DG)x`Lh<&ixjyQQU)JIWs6sSdOhrDMyX zb~7xIkmmj|uQ=>$lyL_D{Neso*+%&p{M^c7O$05YmNKoWi;{>4V%c;gtV@ddc=LPU z=9Rp9N`>F%)i{8zD{+)I^C#xT^~Y8ZpXk3*Ow@$ovJTRkV7>MK`?mmIC|S&wnXC$O zx5XqYjV5lMF9@n$$)2dz_L7BpXRYFU2eF7CwU~|h+o zgcFb*?Yp#nCBhj83Kn}hou|)l!fj!edZG-XT!6k*?|?(~+}WZI);j&xgb?akZe&vu ztBBh)OE2WY5*NjGGsoJrfvgmx6H0snW``E|?WZooHKFbWg530^7avBO+bK}Nvk|SQ zEet*LxtW%M0~TLiY#;E4J5GqOOf|dK*>_djtO%oP(yCUc10i~JuWrHext50HG1Jtl zI#13L?3ev^%{T*eox(ZMUFNc7kJ2><<=%veW1LS;?r{15=j1%4vWkxS-ix^AjB+e2 zC;!5wGc2X1d=ro#0!Btg>`&-6sdt4+v39htL}*wVAi5nJA5@7+gCr)2i&fYtgnL09 z^wdM8ETv1N-+h`paP?~@!e27u2LQ=r4OMzy!jpZ^e%#nGQi6ez(WF0?7SNAb71;2M z29q-$QHm2~V676h5gZayPMnrU0)gkP&GDJS#EzL?%IH#Nc!b2HNOw)>CxfWXY!C;v zev~*+L1*??il#sjC&6{6SakdhlIWuhhJ7 zRv-kHH6m-gQKt2yLC=)}IKs%h1(eXA?wPl&LwmjNJFP;p^d5?HYbQ`L zZWc7Ony^J*>bw1*^IIk9HMUb79>a))F7IE!=;O-;!l zSgQ20{8fLh-L71y7S#*vsrT{$HoEj~s)s~JX@QFluQc06xmMtt zeW6xOdReM?GWZ5jK*Ik~Y0#g2 zMbD{Bh0nmiVB8ggecT>gis|O&X58irf4W^%CJVsQ>P^#!JxYSw5>way@Fy^pLBig? zOtR0JrhFZlv}JtB$=&?S+va`dgji$%at0f87xvTR-1BsUmGJ|@Y|A`(bN9uomfsIogQ!=fYN0(AJH(>s0IY`&O}V$7e0I^Nv|kT$K6+E6NY zkx>7EPP@OTL9N5iPqHJnx4_YsAZNO9;-Acl>xwq7k*)3r-r1ZXA`quhTQPp>Kctq=4Ksd9VWHF!Qn`?B4nh3?1DAo8f@(92_(7sSoYHa_ZXoOb2 zAfH_2B40S4T}5tul(b?%LtRqWa*AEE%^sm_5;|X-h}rTs)wXIR$JX`CVx?m@TdLqW z70(*0*`Vg??agi;#Zm|H)NqkM*SkBBmiK@jp9#=9r!5=%nTQonH-~fAMqU@#e6cj- z)EDKY5!I`;ezz?KVI@gpFbFO+$b2(F(rR@$r=#aGK@yG${G}Q2{pBVshr4keP4S7u z#W3V8z09K|_L5Lyr^PMmyzC|+((hT-P541^t+DKqvj)Bax(7>lcQ>wO1R#$#STeJ+ z#(CVGDG72B`UV7y0_a2(h5HoMqhF$D5e%jxTRiWhF0&cveIN6}Un)s_uY*I1_T3q_ z@K!kKa2aD-c1ZNQW$bC>JIky~n3>HwmCn9z!v$3)qjd*AdYjb>ZiZ!;HjnBykNrk% zbI&jLdHqJ5;(>#w?>=j|%9VW~$Nuj6cwD&T=C-8`bZh~o+LGi zexmjeXAC&c*NM>Z}h*9K*K6m!< zU?oN+kX;`=!C$EPJb6oAFBxxahlRs-&z!(R!v6WIhbbE=qEG@%UIJ@l+@^?G<4#SP zKHg&^@uv7<)euh<2(8ThekGi@r@x;$g>F+EHpdIHgG$kZH9r^U3H*^FhK@iZ-d9#y zyv~|+Ce+Rz*N2iBz@Zq8{+7r-;NU`yK@B1wNq9n?DCyfM3_OFVWh7U^F}> zszf)eK_FzJM`v)FEDr;c)AnRbanTV$d$%-j9@J!6rih<0AvOj7QR@r$bUV{&Otw}f z*f2DDZ-juD`z%L1PgfuBVTm>GHfZW=nDCH_=zSaZ3)g|sJ_;%-rtE?KUWN`cF$X~N z!;VY&Otw&I8U%2(e7C(r1G$=x+@(TEZYRa2I{aQCJDl6jKFfuqg~ZVVXhQ>0eb(=r zt!Y&~(l~45CTHu)i59HyXDSL-vE+RkXWi&AR)HF&qFLfPG11!p(r$S{g6TdA383fN zhY9I?WAyjyDkiv8*nU}37{V=goOBBiQ?dZt!3=1wb(J!xKwI=3ym}z_d)PMfctKtr z+8oMK)q$_j{IaRqh*T&jQrJjS?=+@fv$H33h0%IudOeMxHE@arq(bMP7>{6z1=QIR zSi9yBq;3?p8@Z>yHm2 zJ8I&heKRbdWBoG0ezFmZ>RLSss_WDx{}MT|W*P1Oe>c)cwY-T{CN_jW=nP>F zyg@%$zuso2S!e&#O;XE26e$sH!_QE;_#z`CZQ9PI3fcn+z=rCfa#pXei6ps3UGqCPx~ZM#-cIE;y6Op z5|^({`ab?dOJNGqi(c^#e@GRZFOq7JD!j8^W+pS^8Ca=zO-&1Xb{NsU;1Ab>nx5Q` zH3B4s^pj{kef&gzxjx($B@M3M{i@m6`QEXpL&{->|?;?oKDfF9uZP+&D zhgL>+p{VnA(7D}jwZEcNq`ElmRF@_G8ARdHQ7%y|lGgPV8tT}dATMjbT@q`p1NQaR zn+Bgt42#8U{HH3{f^`L6-UP{<(FihyI?pD*GjrAsP2}#UvWY zW$yNno4vhTaO~`_k$}&e=za29%eo0kEjbVGr1Qm-e7w{!tV}m1dD-Nt70mJ>2{xnp zFaQZb2B4#mTN{hLFW#+s3GO7!Q>~>OaAlU$T61b%%ygH^Yb*~!EqPY;{_(fZHpk1#${G!2UEKch;@`p_FAES;Nn4{? z;3YqDE;@DpP_G0nDde}mj}KRLeW(E%P=wW^QZA;eOLD)(`}he5av~Xq&;B{p?F0#& z#8%cw_6^`XmwI`rL69qSvlA9m*z4y&-5IGCnOkwGX-4tyC?080LvihKe`Ky;(!bLZ zP}g*bTd6&}d2P97ryFYG{PWwum10X&tz82Cfqkd9Z`o&Kbq6O%alrUXB`y>^l4AVQ zs3AzIsijNRUP=}hjcbg}4F=8BoX3Z$MvHqLl+L3^HK(t1MCKZ$itx<@QcqO^c28hI ztM{{=Cz9x#*JOdxI6!L^R8e_YoMU4% zvR1&${V(G(SBhTN7Ju(6V;ThLj5HqtYowQ%_7ln*wZ#%oPDluW*o77js7PmE+AfTA z8*4r?mu1npUhlFl>0@eq=Pvz~Tfl|K%Pc*>jNysm^?YiqRc&6Q*$q0jE($1>Xa{(y z4L90&;?=aMCf1anys0^&uWOE7duB4RO3$A0gLcuyMtdCk{j+lL#fkSX$+t6=)j%>d zU_CLGoWsy+2x>1dnKino%QZU0bM-^)gi*kpQVO&JpBw@Q#tbe3R=XDe9|d#gpB z4|j&}Why0cse3CbMvD|-O;nB;o5POHCqmAX@j*-P4b|CsTVSwBCE{kTF%cG}HEfTx zI52CT{b~l$sZ*Arja-B?79Rth$@F!E$avG^?#lX!X?SelJYWp)5I0|p<8wKUM3A$v zC?3+P)u#a*WSp^%jt;bv9V!C0K>)2K+gp7qfb!TOvjg}m;^V*7Oz8rXy#a>lIKn$O z>1_NpCLqju;)BPC*#ayT0d}_malM^Z=j#oaX#+9b;`lcUW8QOlvF*lJ{-1YRjh*0= z_jFMj>)dx*=c&KQai9(X=4#^oh-jmeVYE()^9BJtle3SOpX)TWqP*1M95ttOj?7CP zp-n9dBO(YJ5K3KlqgLwoM%i==HME8$&a_)uS(V=10i+}*fEaba&lzJ^q-RJJm5HXu@wlHl9sd*zsb@nrC9#s#u8;S$n!eVp8u&QW0_gvnS4RZ#0FHa(S7GlRpxHU0M2t zyxk!GpshG_+{N6Oo#YOP8YuHC{SL$VZQoh#c#6L9%|dudD9J$r#N{~2DNZW;hq*xiw8Mf4KW6HiWr5#d0|_*Vfg^A>y(fE zd1~;|JKxkgdGfU+aml7VJ*>2_jQcXE0{5+qf3NFqRC?>jvZPXpOYcG{;tC++|la zwr=)&K5|KUgp8{*uM?Xnht=pyvhF9a$B=L#oK|x*^2G8s!~Tka#9B~h_ov-vPJb5g zdyYU`LMXleL#(jIeQOHw1;&eqPPx$&bL&VaH8XsUGXnlOKe%Cfctaq+zVA9GQhOcP zt)nOGLU5`!4*=0|YU)5b;_GC-!U-|EOXW4z+qg{QrRJueNg{;K9cJz_GBO?HeO#O> zu}n{3wY`G8oIGA0=^(V~58^+GrStS;J!_HW4IHlKDMSD$_A7U26nKzW> z)axV_2P{30KlqaE&VTvIa%NxS+I_6jG+c9QEZ@8xo1XNCfO<5I#Q zNRAJU0E2xH|4Inf=M=FtkDAjT5s~r&&b;{jRA$~+QhOGoje7h@Lx6kPp@tzZA0HPm zSlI{I?wzF;z?V(8ITIf*(c(>HGLB-Rr70Oy#bx0Z0MZLq?r@E6#%)_|fxieI(T9gt zmuSG&8(TN_mlD~>x)7ehoPaVeUAF-;A_yOg^}Q!LAY-5`+$!LdN4w-3VPLSGvKvZ^ zQy-uArf0JOsT(!u+|hrmGJeqC9NEmpP31?=lnJ&@`B0^uvvE8fq5*s0=Uvt~h9d}o|v=F~5ml6Ge#>Bu-<)?!D6LaMQ8nuF+*sFYlj~;!CUR+3vROvU2$Y;Z%bDcYmD|P`BK`^? z<-dgWfU4DqeYwsvNhOB-pg@FnaA9@$com?J7?})Ax`bZ*PtoB&)nI`9)oX7P*3UZXV{1h-oPs2nHC}+%@a*g7lSz!T1l5eoZzDR_>`AVMn5103e z&I<;rw)4oJgDc z0k<(0iO-oCx9Qm)*0>h02c@1%2=FFf1r`?wZtLXn#6?;Jj12C@aWLNCu=0Kh^9}S`}io;j(x>0!O0fAa9b7QOwvd!Srzxo-qhF{-rwhLWe4F? zL99?|BhdjEfR@%Z#@HM$;>nW%!+pdn)>gl`D~sSbYZxT!JdAw_9{Q5nai}f@c{`N- z@)H6j1!HWRs$H7HG-?(PDi4^DknpvqHr_pp>GuJL+y2z?fajLu#~PlpGCHtAc6BKM zJnYdX0n99~A<+rKdpw>3nNZOua&oOCHh^}0e%9S03`EN~W1R=L!44lDqjVh$DJ)xH zc4s`vo`4TPT1qn8*{X|PUSNGA0#LSkcyMl(aNV){z%hnYpY9r+Mqut^)v>Tr-J>*$pfi}d}s>heZ_Z_MuuO$e}q_`|td ztuY8(KX>jVAHku*+9{x_!JsKp)$aVkE0z;JUYf%jF&cE-tzVZAA1z^+sM0I^&%$|H zJ0D@3;z{|o}dBy_0;L_Y%PP7_m*Mt z2PY>NKhcLh1f!c5#C!=o)wtXwe@t{!e94iD`EHuFz4jzKMq^4pR-}Y4cc6UX&(A*1 zP#$Ebc3kSRywJ(C*{<*!O;)YJ?+^Ft&$}a_Tg8~QeWy_i=6)D-s5cnnlr3JN1Ijyi zp>jRsD7aSg&j9B;4#rS(P?va@;|i9e(wO}K-LMTHnTlnPNd%PO-Vr6wH04PQ1!>*O zkr!|Eh;+W%md#Vg9WJ+N`xR{@tv|iUfXYkR>~5IJCCP&&f~@M0nak6@-2xfYPrAr4 z2#5VV+7t$`?j*K4t9j~FaK;+rOKfo#0(d?|pM-pfuP{IER#mKX*yuPMJV_c1gH#?7 zhnKufiAA-1hy{3u8MWMMdH2Ze$j-Yg#_!)44JOT4!9I=EKOdC$+Vs#&%?g$P55F2J z&BP9LfbCjoc_7vKR)0&<=CwYi7_28?sgi^MIR^H1we!XxACt-W7bK8t_zA?=7X_Al zACJxQ**B_6OQoqBDExGL_k=2Bqc?73i@uXsFR(Fvh5oXdt<_*{x90aKUSV5VN58qe zwETAI+~4RHRL)2zca!zi)b91f#OFz=`&nv+p_mM%5 z$iF^6>Ia+^I}pVcLO?tlZ1mU1MDOTHc&#zE*Z7G&2%i!nDOrpOFtMRAyB(qf@qd>$O1qiytozf5W z&p`k{3Dq13B9B8%wFh-=RUDSr0i7?F=}Y=~z2DON@6@ABn9ayv50QQ1OtfHW%27h{ zK$RlCj(btY$vOfA1nG@QADpu!*WStlaGCE(U!(^=^Q$^1aItky@5kh-!G3BLOuW~s z;k!aHjmF${MlYE$Uf3lI4~7Ou3?)jCSglThqRL+wANjj|m!wPcdo>X%`kd zE6mK5XHH zN|`})hdg9qbcg}4QqfdAbVlsiHpKgtG3Fqf&d}YoLBJiD17I6 zT<`c!VkBnIczsKj2WyUiDM9s5>U8iOmMnl;#;#UMR@Qf2lXI^9jK5J z;Aw04m^1e;AvPp_&%U$HI(LanoI2yVa~+f2uEdI1-HZg34LPiU!dviXZZT)VmrtLK zg+>Cse&l9fO?*D?%{sTPn|MC}0pte!F$z#MW8mN>;{g67z=WABUc+L1Y1|Y64nqR! z?cc$DfFxm*_fio<%+Sm@UqaX60dauqlcXY35Sv-Pc9K((2!NHy2#crNd31V`cui69zz)9uVBq&;<) z|4;q?>+h2}4Hap%v(`P(d6%s^x5OHnXn@{UqX(wM1-yg>Kyg+^-%mqiN(uC1V^ABa zZ|g?qeq#CdwNihXN^;a2sOKMlu#)h23}XBF4i&o_?S!)Yu5B_b_qRy&kFr* zY`dd-C!;IX+3jc3|87yPy5ghjVnd(ZMQlymweA>^IGgj2Y*b6)nprUp+t1aICS1pD zPuJ(PZSNgPB4|9S0QQwYx7=^xahbJ5+6O2ddz8Qy9+oVSo)%FEb^*+c9Z_0TF&tDd z5LO6X9OFsKxYHIRPCE=Q1)mt6jyq0Zi{Zt#FfpVQ<);mxesH|4j`LxSf6r-+z@`8< zY>#2PIcj3IRrA`g({f^8D=UbeLU-e1CBGc*#Q=UZ7a`&M9&mW5Wz6c@-jREh3!+r3 z+1mk>*r?&;%*9KopNia;F$ONu)*M=&82jfILlSNg&I!)(7XX=17qeeWf&iE8!#8M3uXe0*p0(7D$iye#VD-SQ9v^*zb+9f00CsgwW@P-}0WJMG<5(nskb@6->;VhMfITp*mr*F(;W z-xsi|${fP7wdg>esz^X@jcaPl?=ZAY%r!|}b9g;Si$ks{aWKGlxytCDu0m-j?CW2n z%ME9Vm;!kD^F&Et&o6<iv+`}< z3u}OpYBMzxAyei%3rl#WT*KF?x-mPb;=%+$A=B-egl4eSX3=X*wsu1Y`R;+8<1L!g zR>`X!>jj@oadL07^rKS07bPd*mjFaXF{#zLzod!9pfy=>L>+4{XRB4up{@ZH6syqj z=*>+LH@`N2gDtzCFmrq+;9&{s`*ezC{~k05M+ z<}r-nJ56^5i8{b8<&o!DKFDrvZ{NdBtKIFNm>N?IW=%q8ZpwAw3la(_GWa8y>W)-< zQ-N3>G;|qQu!P33mTO`i=+BEtS*(ziEA{XsD9tbty!$+#3PPFJ=<@v?NQd1^oB02d zMK|^3Qh|Aq1*`Yv!nUeZG%M=(-YX6DANlF{C;4ek8&y(541mm8FiKPj2b4*x!#TZ; z4er{1-a~F!Ml|*cRKh7y#E_dZFm=v#s2j#PRt32vU z8wQnh>>{^+Uu-BalcgW=C2V?O*seJLVuO6)U-btntcYkjt}&?AzEVkwS^D|_jb&P} zHaD!MUcoen+Ma2R7Ro&8P1yzl$j1fb@IvWaKsEo;OFI0uDhO_fboqUbrp{Z#1H{@Q zGoL&sQ%irFaRC-8tWY`neGIj`yxc}={CQpM92VyXPJolV*RI`RscGpmc(i5CO*bn%$)iQ}3g= zfGJXyK1n4cM9W_wA2LVPG~90IJ!CLDJ}1ueq-uOL^>M260^FE1I#{mY2?9K$$^isS z+InpupYT$+;dK;Ehj7Z3G%YZ~@Hed%%2jxs2?t2OyYABv9t8oJ>9g(lh8SA3X1*iHbN+m2$&LF!DlPmbXm(DBSvI$<&%tGCUcAqWyHn9T-Gu&PgKXXdJXHk zHMV`45YM{@3JBZdA`2E#BM9$p;u#oDKJpwg#BB$X}-FdD*?R*WU4xG&%L~8pNKjB ziMN}-?$d^6R-rklBCfGff3zWDCSJ(f^%u_6DnK@Wo4#7ydh>G^WCO@#-nSd;seK%iNBlTS~ZN=U8GktP&?+>SY`$6f;D&abK&H-as{IK%~^YIQOui<(n zw1?j|N`p5aPSXz)gjshcla{=(J}AJi6>CPGiAVysYQ-(7M{AZ75Z1cCrXmlV;0}q3 zXs^T{<_JdcGoo}yf8BxLM~^H-35xo`Cs2X+dAe(xTx{OoTB*sgLPF>9y7p5&paxk- z35SD}eu%BSrr`Q}83o$58^!k!=UyToHj0e$6>{Lp{u%}rkq-tA?VEq=uY*yr?n`kH0G7a0tx4~S9pcELn9JnPRc{DgW?^l!H`YloJ>T}zKOqGxSIW|`G*Qw_ZBDwC+DCRF)U-;MJ#>$5IpjD5*WJ|11 z1r>eEiD0~8FerP(;>QOV_x$tJ4D`@TQsHKVQsnb~j)E&wPq77${ftQb(;#F~4y%3Q zFV+;SnOOIg1g$OCGovl?$pX!N1`sf9C1 z9OvslXbw;7ztygrLrW!jTo2zVcBOPDQ4Mm~7052mJvK^^H=WB1)*p%R(zDyYTpw^1 z5o<`f6;xk)>ST9NV!p)~=kzXlK}{MYbCy2Mz@t7%*Dks~q?E#7Ivql0P@|x-(<+6B zV#!Zh;XdT-x?Xl^#1`}V+mR{0RuUAmomr*9W-^_gPKQ10mV(ramDokU2NVjDVwRPxEtK#w76Q=EB0d_U5kLPxKFGF|Hj{%I*!@Bvr(J zaSkyJpB0BP47?Rp8O!zxUG$w6D4YJ;*IfdYa1Y~J2ov7z*^DVG>7{ce#3nBMI;WU$ zb@Gg1uOC&v(+6j)+?Jkw-$!j@&M`GsYcOWb;`SXW0&2tPU`9sjcz4VD)8=>d&d-qz zragT1OZ0~06*XMunCjz%azMsxEA)?%*28z;P4~+LKk+Y_?S!}epW>G&&LK6x_lu-* zJRXzT0?j23=Dx~QaFT8Qx0)**3Y1 zUC$MstdYUS(?O0%VMB3+=z8O^YR!P{F9-zO6q)ee8>cyV0%t~ZKL`;}BJYF;_1j*O z>fabyLhMUO$w+OxX*UO3w8(hfna0eoe0o#+E0kWvCEdY6YhCIpw6rtE@AUVKI5Y4yFu$czU@ z6{FyZ2#xY)LB(_kXw~s2{pjQuI{~2AP!MiNG-`hFvmyyzI>{p0MNdqD9lpk;+^L&L zifXJqx41M+xWLp5{;bzzL4zXpQ^iLq{T<`;vI*?Un^9>8VUp@Y2f8=+w5B%s-A>#& zOB{Qw?Sf}NBg{2bH-Ak3P`ROwju-=Fhb{0JuyK|YBpWs=rYO+37&xZJTP$ysV zOjLW`Tsf+@SB+~1{y?9CWMzJZxcxqA=~>;0Cc&ot)V1~_u()FDg2$s4-)2!uzu*&- zR{b@TX<@U?9@OU8R!d|Z$zR-H##e8kE+XW9IJx|H4!!=)KyUfH6EDy1Sj(43UXS#*W1S({n^UIP#O>_L9D5>o=FR;ULwVnhe6ouQMK-=g<3DXefSd~l@qAO> zD0qN^OL?JVn?mS4N#{2C%2(a6_(`S_u&(eA8=MiaZ1ERT+}F;mp|vr%2=ypJyntnI zb%m4j&^nqmNNs;lL!qSVctm3|U!+wxAwl3V$*hSb_1N{cIOUsE^SyH~GodSU(nC%B z#^PFosBzHfvIpwRfeWU3hpIFcQ}*3**Z17q8YjEV5xp<%;qlY8&HppNnZ0dG($*Pa-2(q*cw76fd4gcu{}eUn||r2!nsxcxrwC@jM9 zC`3#eAGlUDsOYF;1`5rrg&FNlO7&_@beTyY)klWNvJmK<3d5Q!o<@sq&^%+UukEZx zU_M0>(@^KzWCzFeu`cWpNlGd@yL1`%g2+P2#OgvV(iU2+*9wFHy9VyhhK=?Lc&K07 z2)w4=$Ga37`T|7$ND}w@4HVRm|2SdQJ9 zl0dXW@EDWYzYc zR&K3IVVcMAahlb@{}bYQQSRC&rw7!v{!pvx!|I%YJKYebgAwqM`?fnxPC9Qz^G#{` zxI)THg)#*5g5tT*>G!;z6csHulx=gRFCK3~yElAAEXp_3FIM$Krm2IX|Lu>6r$Hjg zD~4cSasYD*2CfWUnaMore5Rl-tm#39eXqG@ewh8Tg~pZ8KHv?T-m0r?rFpO&ft8=W z;nvLP*j5R<QIq~Yu7s~>ZT&7>9%SBF_o&aX^gX6nN;X}5< zgphjIT5~x9(j(M%%iwCKvA>gTnGx15diE#eqxsC1r|7ppK57hLcyT$-7F*ifB^?h~ zd%`r|T0kksd0f9ZaBeH_*l!1s-+M6375ZwN_kS>+`q^;Cw3Sk86%iX7SADOMco@mH zJ}W}T+Ty+4b1<9ra{s(=o}+xaYztasd*&D2?8Y_Ua20lyW?Re}aB5=;Qy`Xf1;eGVy6mPCc^ni`hN_?24kt&6R?lRd%meG@S!-%bQcrxWJ)#9!?+-4Bhul7-tI>qbFaMaYV=($$0ny{)UZW z2^X&*DdxXRR20rpYMv~MSwAQZB7YzKH8z#5{Q@!0qOHet@?Q7_A|H_?9I|S4w3y|6 zcNicXH#y|`j(iI5I8&-{ePCaGr~U~2O`L3rSn!KsrAvJm;eZ4T{A3Yb<~YELnD9>0 z($Bhac74kjY-Tl2@jw_*loy{zyP?eucZsMwqf36q zkEN#Dq;sCeL9^)b88&X*hbuNmCKjYbfj7keMiinpK+p9;y+azwjap<(5y=Q(HAGxG zd#D@+cXowr$w+CsIZX4H3hl?L{9pX1yYB$wNPQ$wF-v0wyT)v#@!6j!q8?<|lf{75T(d)%*?%@+ylGN{o%!#D|QG6#p`G%7!B0aPviz&E$CiFi)H;I55 zZpQU{Cp5}GLGVd4W1B6CkLV3zCc-gF%nNO9lV|s9=%O7@+m9FD7}_!vYrpt~?xS`i z{4J}%0nsv!H_@UOm#O*-MDeY2+ZSgf;HO9j##JgIuiQ$54E}{4U;&QP4#CuduY=8&K;BBU9318>x z_kd(~Db4<;|9^Y)Dca2y-%2x(WDrLXv_AZD3eDaUedhg|C?dXdK8eUtkFI&icbVw{A=LZk;{UN2PLhC%KM)zc z!R`QVdtMog4)48;@iivc`t|%Gy77^vWa`7J5^PXk0SpjlR+yS*%OOJAH1*kpG(|AJI?(`UCGu9AUd!};79X{$6~ zAJ=_nD!3slMO5GJKPUh5Xj*XR<>OhT@P#cA1yt@e*$GiyitLk_A}oL#fC+c6YT!(Q zK)i@P;+W`K-Rg86Mj7=_iwTHlmO&O6l@GEDnOgnYyX3FhK?l>H-HDb-y$?efmDP4g zmv+BR1q$$^)U587lA`|UH8NiBp-_fQ1(<0?a$e|ejW+73Y!g2pfmr${g%+(|B=1bp zv~k|Bd1f`A8Xw{vX%|@?4Jn3FjcST=G`N4FYf)i1Mb@1d+8s&?@9kzFdwiF6@oN(N zQS;d`<4+7UQG9Qf=Qx|$9j}u+&`WB`+(l7$qDY8@GO$|N4VRn!MNtaidUpjSKG@&>|;M+3DYp8QZW9k zNTP3`3*+SX_iE2=lMT?EuVr#FIF0)0kbR3Fnf?;LGmd-wU_d@n+Vei26KZQIuik)v z;u;b@R5Ce**N`vj+|k_m;%F5fDeL&D`4!hG`2134oNXqehXL;cGM7dkE_ z&14)KEXF3>CCZYu;&_HxKuquDziiD?+%c z2tF}m(amDoNcPPNeSy3}s4TTmRu!6H5_pKQ!otq33f%OHk(*6G6=DhZ&sGa~0+^J{ zH24av2~F98akvZm%=KdXXke5{Fzy!4LI>O7zDc#DnQ3$MC+$XZy%HHCM6!t1>eUD{ zmekLuG6GYLh;Q`Pz8A-#COjsUl5Qr6H62;eKNuUf6IYx@Y;#1uVjL&$uSFgDH0;gM zC7>0TLiWcZJ%K7Ofo+pOxt$qBgmshvS^iBgi)VSLMf#$zoDeYj3!|4Ee`fc;8`hKc z1$4Zl^b9QcR%B@Z+VsCa5q$+4GTmX7{m)STF=hV(K)x_true^mUi|a#|6BT1z6#Bl5 z`0pTjV(9u;g`I-+D2u= z657Z&kdQ3#Tozbn6Se6t@fM+s20-vVm0MK(kpUQCDkwFoIiNUE)bL)uMCB36k6BuyK zXq3!H#a)lGWSCfQgd|`uvOfBW7boo5$mihijQWYu-{Av2PXK!H^5w?;G83O@i2?E5LqDn`=~!D1-( zUpZ?gClIXbDU91A4a&Ek_@o4y$Y41(_aQlLgPPpjoY z5_#InnSjGCg7dIe;NdKX*FTjU#XE*b8bCX-a?E4>TYf?&q?Y(}9B36s1B5UNk6@KKhrBA-I7`xA55#`1Brt3V+xGvFs`1vje?|Zn&5CMnb;C)1-PGgolX>N3m znnj(^&BXx?AX$CfP&#ek#L1DcyPhEAc3y| zP&dhvx{2DNnIlO6C{=qinNCSC6>s=W3$3YYLfxpcKPChn-m z#WJjOXcHGB3zk;iHDxnYK2VPvSEN|Zl>P+tExt$sQnA~0KuOpvkM&Kbv2WZYP>w!I zt6fAKB2d0p+~7j|76^njAES(A~`W2g1K?J`E{V)%T*0^lm~xt^7=GXm9UG&nebREAkiCVIj+lseNnrtSTn#0KI>!`Rw5?17^jPWW0a;rK61 z_8jM;`J0=Sy8+)e1@LV}`Qi4ebsFL8)TYhB3lG=hsSji&jVIy}$8xNQf?z%o6@m-} z#vMwlE74NTX&EKvC_oFJ7SR4K%c$i@FPKh>)JrB@0MxRVLX>j&RmoxD_}`aW(8vY& z&a$eO*u&aocJ`P?czyz+L_&-izjz%~V;6c8IhkFaR(s@>uv$8;=6P2uQ3)|Pj_-Nz zj4EYYnAw&L)-H5s>87*NY#X*c+c#--h*ko zhEycnUSA;xp#VJ}K0hqe#0@wqAl+1|Y9Bb>VrMiXu+nl#6DTP#2vsuo4V%dSK&$4P z0_b^Ca9w4bk5aV*qkqDOOG31a>MieaaV_wnOx8D-Q@4@)f|bu0E%y_gn#zf)-hKv^ zld1JCZV5%QT@*ebU|kN#d8<^J#M-ZB1ndK+Kp1TF#VSIlslryeeDs+7@bFh8J@KCj zj%<4?-24nw&a(J z$S$_yETMT$T#og9u64Hgxb5tr6X2G0!5EiT zU~QJp+_z6|3rsCC%-NNbJU?~9pW>#b z%|z4n^kBO0xdm9|k+85ONSP-U!={SN#FhmXH@KyMy$4899B99T`E+0``8=waaW?Yx z{Nz#cXB>AYdOc+8k}GLvKobpR@%+f@_Z^tP@lz{7EBW-e#mzS+b$2KIMWgSel6ziy z3!;mj8)>Dp-6%++-6E__mMjX>f#8JG$n4|g;X~}s^V=KzcdbdWKvBu9fSBH@iBH&> zrrU9+!}n5219Cp11jLwq{V7p~D&p8ZRoT8CQ|e24b6>tRByIfX^{$yQ2u`J(-)8w+ zDd2!JM{=vzpLCQS0KNY?=BmlJpM?=8h+s7fr-|+;zoVod)-K5Ly^f_o0$i_oP-&>o zf+wt79gdmy1PUD0XTE9oZd??eEA4AQ;cNpCUhA?7eM7kOOo+&7&BeP-ZY>tbmVY}| zUE_U84Fd!j%dnByLzA@czoCBHt@d{Vw$(F`ZUT$j2tPt^PO1mBUUyim`vsKZ=Cddg z;N<{l#z@$8lPUl-shr~OFTJYz2mS#fGJhn&HG`|xXQ(lA77gGt2#mKp37X&IAezC?wX4eJfX7!uSU zF!fJJX~xrQI@h-Csjxej50AXuK*d^=S+SRVdfZ$TZ(z^(<^lLUUXB2O*r7$#UW%VRv~^#E``YZMv3dSZ|a5en4&@+ z$2neqXa-g<^3grX7SEmctGjW9^o%}S9+$hf3D+A43PH;pf5(cM4}e$U(6X4KN5VeSglFX|Sbf zGxNNrujYt{rX`W8d*Omt7=_RwBiQ)lmcIAw*s{0rsQZg1zW}sqi3qwkbDE_PzsM3= zY%og2k1KiA@2Nk}=o#(2l<5KK?(_DYP;<6_uT&rs5YAi@iO}O1Y;|RAFOH^FkVX@`Gh%4`Cc(&)m>{?c3reGJZXNldyAa@5a?Pfanw?7Lb5F9eMQY+{WN-1WZl}^)6FIN zs8k-@9TJs~*S5|V-+x6#YZ2io(Z|0{cB!9kb~~5BxnHh2Jgx@sZ8SKh#O|avzu)3M z`N_05qhUu~S}}Cdi6YH|C8|imY2b}#y1+D~vu@RJ2Vbz%}m3p*7d+9yPr@cFKAQw<^ zx|YLTwN?Z+vc&eET^YhxHOT2pwGp)^sb^4{Zwmu)Y7{A$YXo0N6`ZMT5!nJRR z^EQX8$odTZ5Tz$V(q7N-YZwDkn51RizfIPTNCyC>E#T% z`-WGZcXF)5)~sCQ(@o4u_4}@Vu5@vt5W;)&lhwAO@;2?B+T^Po)pf@$_4OGH2sN6&J>VGTpvFvL(8JS|+xu{-8E7_<0nzjD#rNc})lt-*p>+%rn3w z1|fb(KF=s*NeN({Fdk8Ud&g$&+L#uZP~IT#k@CCvHP#zdQkij+k-T4Z_AkxUA9K;6 zmF}!Ez7t4a4Bad<_LM$Ey23kJNq!lf8nl=fTTA*nYV1fsZ5{%9;1{*}nPL}unV7|y zO~H!7sLxFU!~b`T<%41BgGBT9$gxW%Z*us_5rGk=m?L1OLehAapZYt^RCdelw9Ibq zh;mwcq1su%2?KA*WU3+{u#FZn-@e&!X0?VpYG1w^LPg5hU(9Mxmu<9P8=IAN+W@bS zLu%SHFvNV@>EM{(%KD!bF9D3wxqUPNt`_p+3=j&UiPHU(ZlDXMPoy@Vw&u z&Vx%$8_Hvy5VH%0ej2lX%|1`8kdTT0*Npv1VC9uS0BGv!-J4E+AocMfk)_vVf3h0i z^*&?la+{Gf@w{v4;lon6ho+%~o7DGe^T^_7VIS3?^R%7*bL-cpVbP0$$-2Ul!5e|7 znjt+o2w?)5v4)(15op! z%_ZZVohh^rbMOl+BB4sjaD}(^hYllU>6#u|O$YeUe{-6HV{J}&afasWN^5UskT|{< zxOP2!+CgRfK zyoQu;_waJcT0Y+Wp>*7A_w{b7KtpUp3cv~!uyhvZICB45XPWdE%}g^y1PmR@Q;1>s z;4VWAic0j7gq<4sdHIkYpaU&6ZQ+kfj<*b%4rMr~s3|<2-5bFK-`wk0s~{8vZJAL5)o;J8Z?cw>)&QKF(&p7NPVVhY$2*9HQLk|_k}7E7jDj6yfk6$Hc02GPJ-ss8|ue8?Dl zta$|WVu{cw5_#Vi#_xc!#t>W{8g^v+EG`{s@hLdRlZMy*F8>q5xPGe`))!zq*k>l- zcHbU&U@2Bx$+cExF;hM-$emt>WBd%U5O!HZt|zaltjwHM+vrex7&@t;6^*ZO**Mr| z*!mX^rV?2`41#1<27Exbi_Z6yEIJuCm?8W%2F7+Ss$UX?g+=TTOXKf%VAv^ooMA2j zxEH63fkEfOTsxRFD%_V23zy$se94>66!PCHaFv~|SFBpBsxM#bRq|+LB{W|DiwLJN z09nS^QKZAFtH4h_b1WwCu!tbP|0h@J+Ujw6XghWLo23FQxmKO5f3>zYKRV+jpJ4JA zsf}m@yoRU>TO4QbkVnSUlNn9Ec}JoYlB7GGlz+JxQiv}T2nO67$@*$(oxd<{R4RZ| zY`80X<3;o_k}XqrnZgmtfj~s1$$Y|waZE=u?H=0yF@Oi;XnyY*fsE)mp8l+r%{f+; zKVKCRXa!d0pl{kIgx{?}UXW=45=+FKPub6&El}Gur9vdkldLi~lKV2w4 zk$TZj$;5N*YYXxd^?=Hqn{d_-(Qhb576dl_;N`6da4I-Fh(ei0pz>!kyx1iv_VhkP zXl8KEDg%Q^HmDn`x7{KCjjqcyjgyiWg5Z?K z`K|8{X~1g>1f&(iCgi;N_uqvmNi|^Wpdr$E3)f+b{5l|r45*tA^PT7YHxb%M(ONO= znyo4RO7}61)*0H~>gv@Xk~p2^>GNN|9q}~_G50_ouoMkYyEjVi8p zy43r0lAnpr5hqy3W#``fmg4!wJy(IVnCLS@KLPMr0DE!wUYed$gG0CV=4D;tn4@VT zm9bf@9N0x42oJc3M@kgp{y+BKDy-@*`Wh8P1r;d~X^@ic?(ULqL^`FVL8M!{k?!tR zkZ#x;X{FgT2#C~K8+`xg`_9F=I?r=%J}+_qYQ>y$%{k^6R1WCNga}>*phF9!V1i%W zUH3Ue=q6#4Qh1vYBLBDUX};|@Cb=f?O0!L+$=3ZRSSKrf?KjS^R zUC%;CSex^&MYSKiw=p@2E%SbI%ESo4N1BQu$5T1Eh);vBZl0@^KD`=>540~oKg*-S zhMth$pEL1z^@Q}!N%|R+8#>1-%zTb?zzp6iv3mFo&5~Fbm^yZJK`a^szite3mFTy& zGIHb61c#xr6G6YDL2FL$bqn_WWx89hH-(2tf6NMUz+c&uEM+A(FZ@aM9P(^^;i1ax zkyUOwIx<@6F-8izjV}f8OM?!X2!4Yj@Nc4QZ%}CL++qKIw3sF`quJ*{m#Hi( zyAmx@@R+lxD;K9ji;Vbo7C$F;&eutBChNW49+&sr?|$LjuuUmH?8<@^K5e{70Ye6L z&*urBR#WrDk9H@FW;8!xY_so~I!_ocam-YEOoj{XC9gYs#5}q)%fX34F*&JpvNa!(C58T z)qWz}J+sQkx-B88F*h~HH0jTpTX#sh1XJ^ZqrW^z;yl5fiSp7__Hr3%5KM9Tr3g7YlHrbN?pGs*vx)A4#AG_|#dnc@g zaUn13Lfg+aPFN>IX*3`iz8%?41#I+xuX$G^L!gKzpmn_eILh)ru+ab1&i+qP?Y}7U z-`4#9yuztc95*rX1}O7|7RysmP{5hW)U-P=E%fS$J{6;M7F$Z>-o`wBtK?auT#&a$ zD3E@vFi*fODRjcSOD3`l3dGtTe`jkFh~9T1Of=XnIUJdeq*0>@{K*0}pV>B-X+2kI zkV!ZB`tiYDQ}L@3jfw=gL|Y&#KBXjq{in+{MxPkKWvvlk_HA1>fi4C}J#qs!Vw%>B z%~<{V;qB%}5%JTzqC|I=MIR9^O%8dq=y@!U^DPvcc6I6Ix*^SJLfT<~xgwDy7d6U6)FLEezCurt7J)cs^!Zj0AZ4rz)&;c8E`?cHo%+0h2z$W_ zNEM;717;#8sFqpN22I#dDkmdcN03%>5anhb$dARFlpO%|!LZVB^T7%wDGDkdpn5q5 zv?B4`fsO#JbluhGX`7Pj&X-t!hG}|W(I905AMT$h2&}VsFp%Rb)Tq!Wjj+;ecCsi0 zw80qefiQxLof<`RkZ-kZ0@8n0uUT1H;R*ROUA7oN4%1vMc>QO^yqcVDc#yHf+Bp%B zwySC7!}NbOCt>Y_oT)ibqflEv2vMb5hmg-gv@kgd5w*kO_i0C1*o0l zS0Z^wOj$bKH30=j6Cl)94G2LUK8F9YTrwB9xjZ(qy<96#2I!Ee9dcvXV9~QXJ;p(Jlf|n$1 z9%nDS#t0nxNIAU6#c}%Ks!ORmfcDJ(GZn;@rhz^sax9VH-`QM99{s)3Bd_stVFNzJ zG%jUO-W7CPjgjmg`cpmlMIr)^!g3xq=txy-36c4Gw$EtSc9QV?#S5MS+AFBpBG9oi zE+A;IUC>tD11hF8!&u#6BP^9>8Ez8Smm7j%xJ?P7X#A>9BwrLW1&+WVha{`L=q^?% zcn<%n+AOW3=tOM0J#d^K4SoO(I@0i)480ac?cQwXCkL z{;2+KB0Q6|%~zWNN+F_lG%L|vm}kUGYxUjzke%#reM-?&ijyvae5FOT`eNjaSA)Ma;8Ys)mW zsPHBdkSMce*RBtzhT*01yuv3^-JfZ+&+)uI-}qJFiZ^YR`S&l^uTNMz<`pms>|uh7 z>x=zeyf^d>_A5Oc0yeX37nf5QqX$ayit5N<7-hu(I3Y`W9W7}X-R&lQ1KtV6AMgR1ZJ&-6s*x88pxAH-URvN)TlqK}O27OgJZ%;~cCmEIyaiTVB4XOj zWSl=ImaD>T$~L{|+l9J0slYqD&Y9!M;ictIH|uGZW*-=zv&Jios_pf<@U1!Du|(f= zkgyu*Y&|y`iOG9VjBhd;)={(iVby{I=vGJZqlW4;d@kme=AHg#spqH?hbkCYc+}nu z;p=fO0A*>c7|yi#b=I7|)8==jRz2o}jzmVLq3TWTj&-MX?}I{2HWzKaD*o6uZPJ*lBpG57pJG|8}kJ0 z6@frhkNS7V&DAJ75#jmx%Ze1i6!-+RStO$JRF}y8ep~uBQO~97q34W~X-cHLMzX8e z#@n6N2$$JxM!YFQh{HExysEejzV0Est!lNEmv%gbwn)xz@9jvj@S3b z=$y{sKD9SR;IU!eb`<5AEoMY@s!au$YnI`t=zD&J$fdeX6Xg-XH1^42&8Nct1BEn6 z_%V8B7K-~roEEeaZAd9wRBK`|_n=S_wsZ9|ZIiPnlk5zp zaqJ@D<%Bacvx~u>c)5e~Z4{tj8BT^YFTqHJ{oQ^ByS;CW#0GB3cXLUizEv@AL*scy#G@nHeGCt|dz8J>l!x3*u|$uS;5z zVyr#%r!Nvr3>gooOpwJa*QqDz@RlDT=*1Z) zY=$i#pu-1jv2+Gi@Hd^UgyJp(dNbCi$_nl^jxT~0g-WN%&P$~b2XXsD^s~|2i>57|w+nbeXU=n=!n#^oGZNa|`d+L1e;qoS2?Ny)uJhH{ zT}OK$>`~6STz#Tu_tlifK947SecY_=A^qf^(n|Y{s7U0LJjo+ag$}d-MBam&OBkTr z?%7n>@RllWfm1-c?R)<|q#=2awqf2O3_|EM`0c=uz$)}G@2xA{SUT=Ee;C8B-Ephp zmQ7jbm8dSfFXNkbJlg>8=5w`e-~d92mYiSBPd={DbGPcAye{(?EiNx~|FSn-vWD>{ z>YmP8u72iU=&Lr|ZFwkea(Es|P2&=!E72?LHAq9s4G1uI1An+XK1Sm~)wDBerb<;< zQ|prH0`VDfm21kP7-WonTlQN`%c1#k(O1(KH*-bI3Z`YT?e|gyN4>3>mm=GKKtH(_Au}rv>)0?mkvek>1O+8AvdWXmtBDse|(AG6Bnnttr#B#w> z(M)Try}YNU%&};`A$B@Ojp6G)RhqKK!i!!m*U&$O%EdWl3MncI+~3=uPPdswXc#2} z2HDH2eIJ|^Ic5>hT6bBoe41z3<9cinw)Wz~epFjhOQ?@@MAX=Up`T4Va1(lHG^IW;+U_#|6LOTgJFcM-8p_gJ07_*Cb~E)XlI zzcNWDO~NnX7X%XU(LCCP@Sv@RsC!_N-v9Tz{FP4tvjK~q>4jvt)|ZVtIHlq*g!b?m zi@=mM(?z(5o(}tebLUZAkL2}s9x*10bUDD%#x59=-ypY6fqbMkKe3S_n3)Rw|`U#B=t!n*DkD=VG0!_#U&tW&Osk3vWs|PK(IoIAz?{BT}$PTu9Ow z89g}E*RkfwQac4-j;&S>XG(R3>+o|`4}CjNwFj*1R8ByISv&EFX7GIT1^c?ZshG>c z{UJGuDx&Cgr@v#!ONy!uwc}R5(EQAgEQEW6eHWJ0P(|ava2nhAH(R2i!L*dx_O@Pd zG!t)+h}7CR5(zbTq|_^}S)RL3LUEASBh17wuqfr;pSePun&YFIkEerbu!d$a&c6HR zkGD+@{idXyKIG8FpdH@llX7O%LmiLX*g?@vh{x_EzRRY81m32sY0Z4Emp4p5>n~mD zP7aSR*6*1L3$@G{t@o{XOYgf-d1Z|nl9jo8T!T_2T$z>HWKii(#wv9B%~Rf|Q{%OL zpBaUg);XK-Vz7^OonWzZK`K>qR0mnC?9+4C+SSe+P6HsI1=+^u_xE-!iM4#!aE*mI z^#-0PC++fNW*iok>IEmfkbHgxyc&IIyh%P%P};(C0=uqAQfmp51r|2j1htu?VLFa8 zzL+VJ==@O3cl*gYr16L8kF6JXX6i_K3PWg8n=C?R*yh|ZTO9U&{H=P_>SJ6BrJslaytEXDg%X6YW?Or_D zT}_JDmS>%jPPom&WRv-~xsayt=BXZwN&TNHcf*;5m#Q6;MdPqq8A7%q@2tN{Ci)q5 zL&dW>Jh2Qu6VA0GP8-Frfs-lt@qPAc+ily4KG3biJRLWA>y_Go#-m5gb>WMBQ?z;} zJsR=fETunI_gK+ea14W{9e5_?kBATPxo%DT#3Xp1oVfSm3OBO_KLOFZv zTO>RIV*Cr3*<@KNAHs8xw{aVbw|6y(Zr{zZxbe{a5 zkN9t}{?APOZ>t=%ME;-U^gr8|zMtQFr#ixQ_&s z@f5O4%8Kw6Q-vw@BpKa`a^gP|4{C_cIvzQj}%g9sBFZCOO3c|-_`%N zi;u6h$y&ZOcS;%HA~(vke|>x(B(kRD-n*N*e31huev}Z3u}L{HqIvGQ(nJ$^YomS@ zJh(~p0oLws7k1GAAh$1gi@{Dvd^cF@ad)&uM5_| z4=v%HiV@zq*mpl9L9CgM>vO2_p(W))suip?0GL%UUeT?og5soh7ZHK_IZcds<~y=s;U z+5fxO@(IO9x93A6}(zH%Lvch4}C}8~}r% zJ`z-NH_(1b$fa`wjaG7bH0y%ap<)kxz&(r}NC6b_blCy%ii1hgwaMi}}Fm2-@NC|lxqj^sWYD$d<{ zV@9gf!|G~k&KnbiP)G{EUzc6+-b&s21xYcUD%%lWhB6@!q1W$m2T)(^pRKd%V#K)H zU`UwAZwV=)U3SFB1*=%e9>FIp3oJHN8AVm)sCZfp^%$dzwHttwcX{ptk`c;zR2a7l z;&y`IgXL!oADE|Y#;})VhsDEM%}zy^ztDW5Q*E22L&L&ia|2ZWkx=~SSvyC-fb6Bo z8eP0kV>WBW5lt%VDvo&Ca7NyG~lARD;6O1Vomu? zj(rhb19BgUKs2+LEVT7@O)B{#g@!#|n`_97(Xhj(j1~M)^w4VAX1r*Y!H$~rjv#?W z7~K=`5U)bviGk;#_&Inu9QdE$ef5{S;QTg{@*^i@y4a3dE%RWks=L}+(Z~gyNK%0A z!ms!$4&cryCOcw3u9ul~hTw>+H5i*~sG^eI4dovh-xv)bAWb$;yP{^r>bj>p14^0j zel|>_j(c`I$hYmrm|_4z+($t&+0&Ms^*M*p6q-of*Byg4u*%FRmQIa3i|zbQ3i;MB zwSz%AK`nFr`0kL6K)xs-AOK#M82I_s-vq3;abr@{+bI+i7BYDJ!ghf`eBejybDOzW ztd#9IG0KwMZI7$k$HLjKMqpd6EiUQ|cW6A4b9iU6a3;tVjwEWggIux$C<&dv!v6vv zMN51?x8wExEMb4+^ULIRHm`M@ec4|L^6IBwHf|u^jFY&^$scu3Cf;XnZE?jdbM1|ez5 zjxgOWO={x1yY-}pqDsYX6dp5N2=8Y~n9IJ{zrMHvNWPPf5G_Texqx=K;;1iBS zU#;R2;PqRdaiS2P+c`_D5TMB+ZiNoF*i5>g@1>iWG)sFdk`c?)L@w;s#di#0#IxsOiU5@oz|)+dSwi8vx0s{pGEfBArpckQmj>JjSgzC{Wgejy~!HswvT}x2?&{y1Q9p{>w+RD^gYC71KNMqdOpWt_nh#{)Y!Y9 z=>5YLj4i+U`-l{&Yo57G=>gq2b~0Ak$hJL*J^Xa z`hcx}WDQHI^QLW75Pzc=Ih307k~hI6V1w-0-N(cN^M?7mMPoa(wrFc>i^aGP9hcQK z9CUpNplB=J(!d}^`7S0BgW~!YXfg@M=VZwK*mV8?qgS6`Q+paf+0|8}?%({mI77c^ z`|y`s3*gBkwriKyj`L?4@showxMfqEHz_aDJwtX(o=zQ9{tQBa+8YShKpmz`&Sdo4 z9!^xMJ;L>bTyZ21D3fvU)xw&C2wc9FO|-s4p58oU_z2gfOTC8yEM0QLYvUX@6X$}AlXopS-{9YAit4oufVqC>`G1pXgon~N=89J z0kbxN2ELF0ND=^SzO^IISH2Yuh%eO`y*Me?;k>2<#8_kW`$b`Bt}6=015_3L2n7bD z+|I6X6)Fy0UG?%Y&Ms+!7AXMaj;u)YgwltB@brg)6U_dD)M&6O{=_8fH^$!QQF(gI zD3tI{Bn0GKI={XGr2!7sCVX{ORdQgQ6YH$V3hdON#rL0a2@!qxi2!th6;1jZ??7M5 z=$f_WF=-xqO-JLB#A+$cS)CWuU4n`qG-PB$ZJOLp@MO04<_ci25bmY$x{XBK{mzo` z00SITVvvcU9OOKR)9)qP;DMxG(e^0a zIo*l)kL3AQPE1eBLF&`Fs2dq0ToL4toLqsKK%m3l! zb@15i@M9{9{nMJ~P(LitNNzXOTvpYW6gxEC?X)6AUv}`?y`W(da{-!PJyxc}=>`;` z*8nahAt#bY2F^~Pk}nry9#=N7>Hzn8LN-)ci!-h>CW(biANY@ow{Tho3iB;fX!LF>=T#>B;e%ByPE*=_VK$JMRVG+Wo> zQLN_v`vv>dWOm$>;mad{7;II zXzsrAf)(hGX0wPnCCw-mmpe=jNgYHkDTisnjXiG(8`C$yrQgG^qAY$(i+&P@mDe~;M5n-sW zJIBn zY-FovB$l9%zX!OuAJm<|BxLK_f5-lu*x*InHc*_EQ^6D8sGK8F4bt&4{ttQU)e7l| zr*C7iEF(mqV^|~0Leox@O;*9%L*kk+uym}$S(eCX;03g~c568E?6>uXYk!4g&uyA- zx*d!;1eRn}Oy?dco5*8X^$qk#u!rq$SvC83+L1hfTTiLCh>NY-@^6KNEwn-7xcIc* z)+y)s%W`cycFpNB9jan$FHpI9qpA5aZe0ltzKW!!g$#&z<`Pf=QVT%N9JiKyT2{zx zqKTiS8a;46sKn3P-zO_~Y`@lQCpu|l*L4ov?_@1cAY*8vQjf{Kjgvtj{_);q;Qevb zYqjNMvy2!x_76n2yU*V(hy>jQwpCa!*)8MJKo2BG4$t@nfS%-nZfj`E1&E#nn*cmV zEYXpT(6jAQ-G4GLJ;6q|MMRxGjRGG^mnc!@8Us2MQ*E3+a$>@!IF*-9z>vr$aiqPT zkAp*6I#qzt$yk1xQK?p<4iB<+3T*%dz-9v4`T1PBIZ{Ra6r8+7hzVuWd#+`-J{8EB z&Z!@O%3vY}nS_|C3z!CY&ogdIktj*{bnt-vPjGZ|Rz`;(nWLSMz>}QxUg!iscn<;C zkP4I#qJhDk+v=*4Cb>HR&Vv zxp(|tg7CfvnGQEL6ArY~o`aU@tO1Gl7laWMcka&#SUY`s*Cnrp)IV^-65s(_dQHgq zGzT$Jpv+fTrPo;;@a1Pj+R4xNLR&gTy#OWC8LGtsFoww-HYt1nH<+#R^X{Ok#O?=< z8vQ&SlX39I_UrpJgKOgqtnt`i>$s4|1phGw`GK||J;uZ8|F{4SwYvzTgO{B{Q}HTz z^5oAbF9BrB1RQWeUZ=3Y*Dg6bf}ZV{cEq%-$)K9*>a?!M9juedoVuh*zG*|C#bE*q zi12_B-vI{domoO0w^PM*tOAcTv|P_h(f|mHO1riM7sa z`NaVs_|&y5ITWEZxDexyJK-sG>38{C5+X!Cqm?g-Vs3MFR#ZUkvzE~73LG?6H!^(^ zq6DwGLbQd{;8uVIYo&$3xLh>8s_xrZrQG(Y%czQmkB-I0&v+xjhW(EW3`k(kCn*> z%S*f~l@&dq2k-$=O$DJ^-8hAT#6nIbzzfzd1DcCi;4=Dn_giBQz2@CtpyKk2%C;niHlC+wtv?L+DQn^1yjR}U$R}$&NH+Li!t?u7@3p&4R+>T9K zBDWKCY^$scWAm=3;3r1kC8R0NPD0oDUoVbi*ZVr%GY!AoIgA z%76C~%gW6aD+ins4gDJ#9_8EV3;ek6R?%9FYfjlEOuZ?l>&j<||0NG?fsyK8@PU-K z*)YYBS`NRxEH*s7J!!>=4=|8+yNk@n^L&^`VnGXC|Jy8u)V$> z5P0_ioCp=n?+3~#-*I^1eJXfS+HY1w2z450kN;S&2MiPpEjuiVsqLWEgxhG^`fG1l zfo93`{MPuEBPt;hWh6K_l^Y-)*K%VOJ_9Bbs$$InKftyJAnjJo&C7xCBvJN23YNgd z4(s{l@u>K;4+eZNa(QkK%^(N0!*L9P6|?Rq{AVI*G2ZkwtEKu)6R&ZwI27WPO*BRZ zbegb8qF*D@YLv&7ls6C1kIXR6@(TlyT`+uK&LhX__?CO|14Or;3H|fO{QzBNr&Vbv z?7$g53s1xbfAr1#F16=uv+?JBy!l}v7$G&@hTqxmq>;txiUUi%18F!P_VJ^b(3@*L-#DIbk-ggl@|<}9gkLnqHVYm~4#3Tgt$@U5Al@A`6~y!Q zqJW=!gI#;bDu;^#XTbqvKux>nKmF0f&S)Idk{fY?Z(}Ya#A0&>o%*5rEI==Wu_zqd zsHI8>C=(D68QXrpX`;6W#889PC3u@pLQ4sON3@a@l!Ocb%=rL(Rdbd_D)51&$pY^# zAhc9ScEko5yi|D46g3 z{2XJj@)d&v7=mtjV2Eu$6;Whq)tDan+?@H?<~R);0Ax4?2qqmzF>V8*a3tUzp17Sr zG!}}t6AWP|iQrNp5_QC8=m`i|7!&0Uf{PGj!Gv7G>$qssxe4xo0Vs4&as3nEWE#kc z5`aajb8Xya2BYbaoD3ke<&EFU%6SU$nGAhB7IIdpSBgWC-9Cw}mB>=D4W|A4KpuMYs+emb36 zK?b;EC-P>YmAI828rRQz1ndt=D+(20AQvd#CUBA~4j`pk-L*IiH)>~o3xF7k>gcwZ z49pjY-69>xQPk+9m3!C#{ont2KRCb2V@W;6j?1IFw<~-IavYXIC8%0FPMhder)qPh zIven=iMlW6wV>lpiWKo|-Z6?!zx79bAuz|;vShbWTCu318Brjw%g*awA`fe4vCogd zm->M(eOhU$^G59e1}WL#0C~l8;OHs9Z2p@FbYnz#ClA=sqh;B6)m$p}_V9?+h@8n` zweN8Qdh72ASqgr_Iv$BM@*trhq(2%jSgU7azW~_%8<)pJAi|^qbV#9_sgk!gJqv3r z@jZ`?rf8;s*J?QH2(mjM$+@jt!2XnF*Ofnb@PGv{E&D=KEQLwxK(;eq-N$_qZ-Ju# z9B;~X)etkiPPMc^=D{QK*3pt+CIMAm_)FMAB*I^Q?F*Lm2mgUi>j$=yXue{mKEoW` zHd%JUQ`0wa$34nbBs+HU)-2P@MGSvxyK=EJEG&#{#PN20Ng)By6Cw3D+;?&VOuN4- zKMd?>a$LXA);KdWv&7WA1mofCW^^eUcn$)h$F4F1PqRB+5KvjqREz6-pPQWfoQ@ze zh315QwNAp@5N;UtQD>8SJF>e2qLESf`7-UeQh3~3xd5V#31<|mLa0L_`Mg?fUYKl``0jqk)Bo( z{EyNUVC#8{Y{r#?tX+n~`cTo_(1x5ZN>a!@+6q&|lKi*7IKmA^QV_Rk7YQW9#LPL4 znZadpoy$nyx_}t^!LI>6LqB?@EMJF_N8mapzi!MV0k7so`e)CcrM2lsJ?3OWIL0(w zgS2|8vATnHmfF$^CG7^AISI)qBDG;WH&Sp_q5nP0H%lEp26PYg$;c$am3qH@zy^QU z{M4Bzn<&;Kv=EfTrV#T=+$r@u4TTAT6@J6;_Yk()s3^3Ptw~8MX->Pv=l!W7A|kc3 z=byk&C=IC*{rvpcoMEbKhgeh!t70^dQ3b%8lTafa_$86za#$yQF|~aMJ|!GU(~X@> zw+=Oe?Es{~)e^9=vBkmZFAoTc)7p4;B7u>rBu8j`l0(U!3nbfh+rNEI{W@xjNJH{- zf4?HWPFMd;nRZ>FNWkMG>JAnJ%4iXAM|sjQ%MWtpx=p`JD?r2zk8j4erz;?pV*2;N z2y)2%1dM6FFZMfVX+bRdf}5M0dgJa{QgnWx%?d-HbQ-(98HV}GkusVEi6EB+(cT&9 z&AQv=b9^dao(j;RmJf!InzlcQnT%e)HA%bPx~TRL0X{nq$o9!8~03Fd>t~Azc zv$K_qqF-h&Qj%{d@_d_zMt3cYrULM0u_n1`ipy@~F(H&tbS7w&EZ}XYC8egOX5i~9 zDWLEP(V--7b?j5_DW#=@bUfKZFm^FkVoC zQ5JfG^5^_~oY?2`i>t?Yws;Y+^6tCy@c$V=2lq7LDuGeI=J%W6PB}VSlYQ&ub+j5{ z%1X?N0InWVFg)Fvak@CQIV70MBLau{naqAPFcv}!NQTZ4AtB>BtDt_=KOVCruiT6aR;4~hpbZV0YHVmoGMp)BP?3&*yOr}P-=80ufK`yp zLMOAr#mh_kKkEtMlOQQVTKNZecUXYj)+ty~;JXxk<28<1)pxP*IIIgbvUthKKLK+g zuIndVH#hR+9iqCZAs}v&k(%jFn!Fi-e&Z4r|5O3(`qwa1glOK7YuiS4UvFG=ce!AXYtZWJ{@zk8( zYvhEDTo_H<+)9=>k7PDrLbwZreJD6uNkS|rp8^7uGx*##&yP2>$xQk`2kb4hNLozf zj$3YEfscNZaqmJSkIzw!zX~)bs+OqJ^L#kSs%FsC>kY^48YmI@ga)4#3ctd_*LW<( z!7RoV`fb(<_Fh;RvN)L%u}fhuA3qJjmMN|#5ddvUn`JW-TyK62DX0!iCiBhzD56uo z*Hk0&bK1ZMqM~bW4+`9+jWlt8zz8MW)6u6NG{9CAbUPwfD^``ZqX!-}3q-)1b&ha@ zAV+je3rYfpPPE3aDyL0vay_>fIVSRT0Znt?2;Tb8XFx(M*PZj8 z?v-}We#_7rBsl!?viLRMhXWxinXQRDG9MqGql1I7yKklw_4TRI32Z6O&<4DvmXrAr ziz!MhlAOb>`c$^yxnNd5-m6Zz`Lhx=KnVOp9q#uNC!y!`eE1THTJ~zEqf?LGS3ER$ z|IqFQr6HXkC@aIL%NrZOiY{%$dlGZO40t>{6Q-a0TBAiZ`rHU$Gw5nE_J0M3fg;&N zhEreP={~T7AER$h7NEf=|3t4sx5?-vkJczpDOAu-VuGSyK8eBvG`PGF($T(MfZ7A|`Tw0WU0yh(DV`HX(PO{Esvku)>6U z-o0Xyy;_W56yziD*sK565w#MFPiM#$`D@Wh+`B}RzUcgh^b|wr0|2pLJ=M#;zPiA- z-jD!qMkfh2-e8r+LM#Z6q}i>YQ`$HJyBWN$45U|laKj--QiP-==)N(MzU(3?DGB)U z)ZYZjR9z6YMt)hjE@jJmc@V|7nN*AR1MLN6mh3(CX<(H%IaC0~pim~B=FVjLnxIr3 zS!!Jud;AT?Aj@_4oUIZEhNsr(`(sF1JWltmQ5E8w1$E{4Am{zXbeTkkvNW9)1cAmm zN2&?D0@DV^Z{C#`l?%2VUjuxGV4;;%a4TIJ1p)(T0~H59*_3A)$Rk4WfYaSfH1H;E zt^POi@YBI7W~@EYnNZNvP302&eBbBT{Q=BSJCA)yAJs$>_AX*O_A7xu#_b-;}T?FX)uY zN0XREM@vMT%*7vF+ZhEz$Y^KLBZ>?SDh27}43Ad(ACf*L7D!WCiif+_ZSt%#J%WH+SwMSLhATY*EBUs z=AK8O9A2AuR!(+-6MiBH2TB{_K6`sh*at_+LRXLdctu<85kI}x0{`| zFzK~xrAi_cZ~aO$(lY`sA&?C&Fqe3E41D3XOV#YL#xHBvy4m3v%ASjN!!5Baj;SEG z`}NURypoId?}n1L#vrgVg5Uh5`-x!Vn>?8*kbN!-c=+hiMQ=8C<&J?-s}%iz!`SH>Z5>#X{aysu6)n&1EW$R!_3i7KDOB;0O{Rq<=w z+O2LqV)?3SeS!IA9z^;Ie|+UselB1bJS{a96fgyEeguE>OQJ&ehiik01>i7eS%%@m zro^!U+{u5w+t>A>$TMT%qc{R?hrR-iL%jZT-%|I?4?d;t9z#4$kI;z506gX-1A(y$ zeE!y*m50JN|MnafWY~Oj>w!;c4BRJR*nDE3}ysbU5nhJ2Ib2GoHVx??un z%Uoscwsuuzig?P)IprJ?8ai?R9wRe+FIxM9y;xtR$iY9zVlwb@2(uaNZjeiCm9L1P z8U;%L{j9Y{h9_(~Ojrct9=n^%8kr0H4*D+6B-+Xal_h=_>hprOotWx7}`EIP*@ zzVPNqz_{A%#14--fR=xE==9i_68)J_ssTA8Jis@`094*g;$mXK%m=2`Af?ccH~NON zX3vuPsE0rCtd~o{a{GZDj%M)Fz6g6cEgefa)BDXW9y}*0y%QAv0;q!a{Ao1GCUM^NGJDYbL8KNdwx zh_rAcG*_NZt}_kkPuBy-iMsNt`}gmQ>$xpxsa5EwTS80!9ru3RLomZnB2!d0L4w-> zK(ZU85A6Vc^G!UBnrgka{xjg04l#UriH*jMg)dud<;~CWI(jgIBSUkKThzxF93=~t z^4wMPy>(K>v9Ji`H(bhdk3FDDBSx7@P`-fg+G%gp1W>S{b&q2-$N($^CN;Q$?1|iGPOsZSm_{?9R+2Z_kS@VEbiC%PXL-Y$ zMdu&Fhz)ouLx}YFWr_5;iyQ_Q4@ao@R#D|I`6OGXS=WXX(|u-zajVxt8Wi6!d}!oW zGFY0DZi?TpB1MEB;V#dQu|%-g@&I)M=&>Rlro6Qkfyk9}m8doeDfv8rOxnTTeq0+< zKvGza4!)&fR6tPgW}?}7J1$@(gI@)-SrqP@^z z>=(=3ax{7gJ8_hv>T3y!QF~+i{=Z`{sR=;@>G`P>gj6TbHJpgK-v5-`Tb2bgt;q{N z6L+atBQ6+lkN0iX~ zASD`DbQS2FoSZ3u7~B1YSx@{tS9|KKu4P@4Z5Lu$A4XioGe&|O&QZiZvXc6X-K((P zt>336P8Yus99(3@DXcgPM6kEV%iX%VpYqBriEOcWgsf=zp>1~e1Z3|&xtSBO7vr;8 zQ(vNHE=Z+xDxh*Lk5-JxUv5{?NmTk-HW+$Cvf1yL& zu{;)&7$Ys62pxvm@bg|;AN#Etug$M{jr%c)6KO0TW?UXxzJm^X$w}UGW4{eZNm|<^ zqKL}wj&3*0Mpo}y&2K@Wa) z#Roin$>iJG))wz55S-b$cBT&936NF!zRth-(=PTkB~K^=@jP7||M^HSCnF%pR|$QL z7N5G=S3KjiHpcOhmVum-Mx-^c)m>rmg7ekuvg&zmkKluoiJNEaL~N35f*wC5U*gyo z3nQGZmj7PcledUH zn8D%Upc8-jFTceCAJG1rRnbscGq})r!DM| z;7+uU<>}$k(Zn0$-3W0bC_cvD1VgugKdN>jdlr)_*NT>*$Fe;3m8n#x=%FRCHBZ?2qpao-11Pr*({M&p^?k21-AhqTpCCY|{N3vN_ab+99I`amu6M-HmTQy z!`nY;jZD8ZauBx%zsVak+Vr<-kd)ykN3l76T!3I!JpRVhNR6IT<%@{#401yqKn3 zhTOm`9=m%Q5OkHj+-pOBot(+GBbKo!UL>=B-7?)WrqW>n?r`fF_kU2s3e*AFW@o26_A(5a-~cDh+c z$t_>LyD_xsogU6%o%6{lI4ch+=MIg-W*8-IiK<{mkVpKJ0YWyAC9>d9>HkboWWUmw ziC^{vo_p{e25B0|dcB+%mPB|7>GpP`{mN8>ralH%`7o?j+WH~j!oi`t!2R7{_fr=bn-xAge!WunhCr+5 zXK1*!Y~rb%+{l<`1tA8A3L^^=6L(iv#rz+lzPdeM7+%0#^c8>YIrg7Ff0VYN#IP3w zPi7nJhza@KRRz{G;Biq>CkRt5KzeK7u@YYISdhBRBLOAkPaR%Bl6X&TB=NLJ@sBod zbK8W=mQdQqjf8c73jFe(6if`vQa2gpx5P$9%Go`%9Z^RCk=$WkBFTB$B`M3Bx#=`r zSOb~MzvLe;qJf0b$}!i0mU;LoUf(+ zTPdpr;qPxRwHW;Y?wbeN^A}dh899F0NVzH7$}b=FtM9VO%9^K_F&9$kNt4_fWN)jU z=9hbhzic#s%r;fKGhvtEBxh4=4(~-fE1WH3XEPiZ-9gCH zK-j2g%m-~PXtk(yu#eP&Fjr-ybfpsvZEm*iYg;@lRkiz#dufk`DtD9;A^FE!I>W+F zt^K)OWCW_j3o{Bgh(1Mx3^O#AA>`ZCFd0*Rd2hmQqc4iYb7RM!_rha?n|j6dJp52w zwxDM(!c4Wj9`P3Ae|u{rxjhPqp5f$0uS|J_`pQ&HB2nEPA59}NPoNpNTTTu>zJ()# zmwtY^(T7|y=Y4&ua{HG=0IQz)6cKi!koh7UUOV(rZ95)fntlgmuaP(KrQDgq}1Rq+pRd0U!Q!WNlaNK)24!%`J?Hwz_l zBgel#Vkbbx_Yf`KJUDB9rdv9GYn%~6rH$iGH|-EqxU!|@YYvvb&JCoIvO-cuIBb+y ztFN%d?*eG78iJp!&KQO=__=+~M!7iv&0f)<-|C@ah6(~26`K56`2v30GQV1H>4WbK zdt*O4FbbkZ72s)#s`*lEc#>l+$(OvL)#9U}hYW=wnYoZ#a_A~sjHXHe#vhw~FrEq- zXeGn`bv12LM#9Z%PWaL2n8|go_A9%KBr$VZh1x!8sOs9QCJ6+IFA!1+G&9ZGxVky! zk!!SPgKZvbYqpDQ?1cVPj_Qo@qU7S^K7yCW7DTlO8;Mo+=VttdA(_+XYmLl+fPB)> z{f)dt=v=F6F6|n%0TuU_D;EA=&6=Iz%fYJD%B~M$2HG#n2XrVex52KfQc)G6_FMm% zIR9f0!Uje5Z9Ck()7G#AfE6Q-aO^C>wk?UsBb|ilyKj}3R@83=G`zsm?Qx}?91@JM z_ZiYqhl@RpXuX<=!k$vEzm8ZLD3OJYad!+oqD!$m1I=NSB9LG8u2Om4Y)vlHlz``_AbT)>RS;&&@;4qa`1^GW|_+dR$0}#@ytXbsUpB4X2_`SA?uFv?a~-@6$*@P!gKvSbKC6Z!&riS4e}{$ZfCdsbC)sO<3Q8G-~ER?tM8QdmPkvhhP}oHw8`}SjU=3@6A=7`F)RuK9i|GWk3BT$+aNidRLt2u znccO3e*30riJe8tb;tj$wbUf!Br_X$KweF3u{-EZY}(*tq)Y-%f3uB6rP?Y0X|Xz5 zMRi5lk^sNR7;wD;Mb>Fq%1Z$cBC-9dAWTMg#y#?NMo&~RKc@7B)@W{EI2Q)IKt=LE zA>hac1x3Zkn^KylR$CgGi%Z!>=XdQS&pNzCQ}VqkGFSWZ+4$xx5fiu5RIAEc3$d)u zglJ%ujapTTj}Nz1a{iXiy~Cy0 z3z%McbHlf$Skz^Qft&KmhQL88s0N_D=J|7^u zNk&HYyvosZ3Q=5^)1J#9CRu_lQAO%QZBpl_yTw+!6BX&`o=6Y~Hj&B@t$+GZQ3RLlT5J*3Q%MWYcz z+o(*Vtgx{XXoqzd8Zok`gnw7!hRp(ds0U0~5JaiQe-d$1D16huvsDDz6Tba2)Dc{p zMZL9b_|f# z+fL=nJfHW&Q&&IJzEsf{uXNtMcx9I&Xr$zCOhH6Q9FYN4aL( zO6Bh=Ec4m@#)~0fhlbm&wO2Gm0`*!I@T(2~`@S&Ng=_YfwKOV_=H5s>^)(Fj0X<6< zrE}I{ec71|<@St!<<@1S8FK_wonZ06KuUTv=v|&bbek+a?zdLmv(*;ye?uW&-yJwNO6gv}Wmw0Bra4FkLX5ORYkVPO}`Z!FEB_-V^vuq?94XGQ@so zf0)w+zR)-E^Vv3_voug~#g=>{>$$ zwdv4hO{n?pg88_tjI#}f!gFA27O0h~ zmlOjYCQu8e@%;&S@)*<*QY}m2b9^#&9-C%Pf-=9Y8Nxr}2AHS{eeSKV zl+w4bUG>dz+rex-0kDuF6TW_y(Y_(SaErOe?9nT9Xi?M4e&z1#VO83$hf)3=^)Yq#)mNCG zg0@FL?0@B~rKNQ}b7(ZO4TdFx4nz;5az`zU%xM5U(~*+C+YRk?7z{G5+Ja)C0q_1# zEcj2{pu68%HyL$mCkEpvE|Or{9w4$OY_@}AFkgnT8R}eLNqcLcAc$g~+<%$kQBiTc z@KZ6Z0gk`*yZ5!6oATS@L2Qm9DhY6$UGILN{y~oThz@l>B0d08ip>=5fJTn!v;P$C zPNA2;*&w+sFV*PgWVIYi_p;G#^{6rY>C~pUoGn2rpm;f9{R{J!3e6(_v>6z)qMmPF zS~CI}YRNap$80NW%YEy|e9W=TkX)#1pKtXKVn0A<#bsq>&Gjzql?DYUef?qpn-VL( z=@CV^y1U~ZiZ++|VSfPBNAsxn13G*hkf!fn61TKqSq0*H%FDk(0bQ-e(?F7>S1XJJ zqcO=#GZ**#=g(GzIF94`UcM)(CSm+0(YdykrCF|>!@0}nx;FvhAf^A4QBdI?6zqgQ zRg@;W?M?;7l1ggDMjijCF$Mn{F{&SJi2xEZW-KD!*?qOy5Jt22buE<(jp^z}CSytOGEk!pAl?a$g*+t@#>LIc;s#wI~;<9zupPG=7NZ%Bi{o z&(*=QMgblipJy3j0#L_a&3V8neLHcxB+$uCN`oYev4357aokav}z`H6h+4(brlA18;g$X>J{F5P503S&L3vK4p zDG*0^O9F_o4}z~PMRzrL9+4&rO`7W_=2>Xz1tRrT3kqk5Q{=g;QzV_@BmH~I@>zMj zz=mK2$j1$WRqlvdo&ob$D4?9I;yjBO}hvOpLs6rd6=xXYTM)ViD@ zp?;qyW!zP@^F3>1w`R=~>GN%>Q*yEN^@v8YAw$>{>uD{Q!j2-)6AE%Q2$frg_BSoc ze4>s_BSEHzE}Q}DDRWf99TUQUH-36=vVd;>=0J>Yi?T^xzA5yghafs@+I{MCtv64+ z-pplbi7%h@WcP#=Q2~p0=LY%x(*n+hh^I}tei9l8tL;8=07jZs)gMV@kOFp##w?#F zE6{!^qrhq-^Q+%o2i>o#{U)4RDN`P}qqC{Az@*v*_im}TdwT-ak(I?yONn@D!`^yo z30Dd7VnxX39bcvb5Q=hMPjjm+MrICk>hXKHJwCsmDtjFyhg8nUt#p|8R4z<*?xPHo zBr_QeUC!60%_%>H^PN4N)8k>8M7_UU^QI6-Q&ZCh*)s43bk-&WLx=#?@yu_1{XOi?)_Ak7}Ccw%ib>q z!Zu=0=L`zT^z5cC%f?iO_#QD2MBvkgvCGZjoUhx8Ea5#m%=zk0yoEpYE z{ryr65}~hhSwe!223l$uziYmJIe@une=lRTNYOis>VnJ5mEnJ=Vm&s7(wT0XZ*BtH)Wie&iAMmN*RCH2wG0i@y!^Fd*4gQ|UfD7g(THc`#M7e;!ff}#3=Q8Z| z*2BdtkVi_sly?)H_jSWkz#&=GfzaZgJN`A`2}Y0A!+mgaNa1z}Z|0CGz}?<|LI7Lg zr%(Ot4=?=yh^KNyUtR^|z8NqhOk;Ss+?TVx|8~h-FWYk)@JiLY*nO8C(l}GpoGd=K z8hmf5av5~HJFVGfwGUYpO$mtqVZH1`(0stfiO*)Fy^vG>z-d{%ir3He&XGyGhS~Mj zlcgc6IgV|cp44uo?mgu*!FGFxuTSXesu>qfag$LS4CUr+6dL$Yi^g?_P_n2~|U6araY68&kq+Nf5zTTry>jHXZrWM~sDJWiri4ULK;U zM_eLV$~aDSX}B<}RYx@Mj9Wzu(Snjtyyl>bFZ)3gz7c-wjKf4TX1w*P)iq3Z#=4T* zwlMu#oDge&-4YJ6%8+cBbw%*LBQyDjE{fs#(ir z(=0Y}KY9^<0gh8f`0XG#@toZ!lg~9=F`Y*QpoZ#IhJpnhIRT)&KB&99yBPS&5Gpww zF#~86I2rO&KS?&8`4|FiX;HiVd$6!)J+Ow_>Oy_Y3S6%{RzB}hYD8}k`hZa^ZA~PC zUJ#JZU;!TMTNFRWCS|{?5=e(o#!~O|@n)|!iP|EL;td6u`S{wDzU7xFTfdIYlh)ZfAG(bMU8}cGX?Gvy z$Kq{+lB)RkdI$JgKPONdbujfUF~^%2##Cg;p)zM=yVtNnSeIVxH!QPI83Kk6mCxs< z-UDk@95~{$>!v4lGgU^yd&^DieXTLixMt8zVZv@M%f^TQ`0rGNOd%gxAQfl|t(U3f zJ)bStQB$$tygmI#c>_h@fmoRePTPo+$>5Y+DiTlRx2yw&aF3ypv+OXDelQs@tJJ!l zn6oSNmv8K^_VH+~f9FM(KCC*FC0Th|1>c8luIW~hcssaV!fr;^J0XgmwABRh)54+T z4_89#priGZMsI`4urgN^P#3l;wJLxvP8mOOi5F6lJMT&>F3hMsiFRM{7Ce z#}b*Iy;=t+Zt+0wQ^-h>cWX~8yI3wY?IAb=YGsCDV0)f=FH78j^LG8GOS>)Nl>np9 z_Z~QwD-Ygd;N;TKCy+a1I9%%Cp`9 zhO$JXOw$Xq&Etf;!k|SH92(=5p4io6r(K{uUE%#C4RJv9CDyXo8a*4R|LA4Z?0RbN z*k-o!=yUETJq5{gz@OaCN@U-;2Hzwc_t1DpK7}UY`vHjhSqbrvW5Fgw0t?u#>bf zI2tXkWiE||f4=(pBEU`x5TXSiqP()*o>D%;(JdQs5XI3SEVw7M(yjB)wc9_p2!aq) z8>&)o>=9v%VJ%CS=Fum2r<`fvr%ut5F#XX?%X`MnXI|%hQ1LB(~?2>fMAUyoC3spcr13WWOyiRm~%&Z0Xd1oCE|mPfCuvyi;>(L z3L#g;mfG`QmJ1&=%QjqY<@MvM*|I)UvC$9khx#EuW0*m&2yN`U+Xe>G1KyNq?RkIS z7pqm(TnjbF@aAUrN3F=Di+j~Gr`i}W^2=*g>gNDCN@cO$3iHjlO072q*&?_`_x#50 zN3}?OQ&Zn;$Lzr|K=zSwKMNEAB~nyJa!y4-r`@|Lv`Hb6KCv2}V!!6FE^-%k>wKwh z1HGq*hccjy5DOa68q4Ua@8r|C6d=pp=_-acU5vkC|j>?5JTTla6y4i4`DTx z1P$L*2g@ZH*Z61R=`7{*wCsW9quT5+oWv2qZnahBDi+xYn46fw$ye8A|8}olfR)W( z4LY=pVt!dt0g2c1Imi7uCII{f!Ni-accm`)CEHa}#Z!-7=zGngo4sw!){zpLAe>t z#-R|_CfM5EYp&*x4S-6u8#a6tKK;0;V21Jf)0ry$ymL%x!@g2bzLOAIlW_EzY(cPh znhUrdnJx(o0Ux+ZpwcOk5x6XNGhc!3hfDHY#BT;$+iW^tMhqlN+YYI8Yt6#0uEjCH z_FSss;7}b}6*Lg|MvNbfALwd?XlU<%z>bBezs?Is^_HHV`DZe#58A*|y_H(rC>H*J ziZDjy7|`Q!!kYznwNq6vZ-C<&_7?WFKE^>9>n1ex!|7sSZSI5<9ndqsIY zjl)V5kbYP`$`-}Ib|gsY{_nmw1gMxyBU31bG-sf{= zHLmY*01m9)>0bgMI&2T+)Fd6rRcvr&G{@^*Pto})I(8v6>D=~)r)OsrTJxwf{+l*` z&-wmGHdQ@oWfg(X)AGBdYqMmQSzvspsCv+zFI}G>+n%Iv#%^($v|)Ww5qJ8vizQQ8 zULC?BMhAPgyx<$}&UVWKHZ+!9lTF zz9b2dim*5Vcz+`S9Md7B_8iNRkD)3OxeQ`9iMN!$vFR@cOC3r0C|yX(1zyQF>7%<#O09`6aN$5Hd$iWI82}tv1+QMzEt-T+sRmmMk z0K8oc$g12U@V60%ZGL}Gk;nqKMo)kX3Ih4r;_HlC18?4)NZ?0<)i{jTn3OWtzn0Gv z9m`Gi|8@bKnw^CAsw#&&Zw*t;ZSL;UWpV>DgVjBKxy3!^xaFx0ED+(uQklW;u1Nc{ zy1IJ<$s9)?RCByzw*-qpkM2^g1ai$^AoOo=0lvKv;rJ{NHSzdNHTxZ$N+yF;^c%O4 z09@Ga;fQd)wu0|Ya%lq3CGzCZYtW^X!2>glJB#r*#gia)p0p*AjHGudIRV!L0ecz)#cEQ)bh<71XP5q zitauVS4(rh?pG36;S9ZBg&bysoWg2_Y6n?Ql)cGL*#XZd6_2e|AM=Jc9tnprR7^s7 z?rDb}hpE4@frMuafQr#u`8UUdSm!~tNBF0lD^WkoJ`Itf7xZ9vh~NgC_OX0y$Kx+O z;#P*ghbwYmf5fb*l*TH$ZXs>Ig=T;Q6d-39KBE?AK4E*+L!Zx(K&_y<{KU2Dgcq}# z241?j!Q6?(%V}FSJ_$vR67qr95mVnQ=PkJ-L3v6uybaSP=vOZQ>^hxMb@w|n35)`d zV`{uZ=<4dKsElM7@j?ZjPtXol8gQME+*jkNewn0gaW5#_ktqW!-L9(^;n}lE z@Fl;rpW)n&{?!+O8(|0Y!W?A!Z_xQ)A+zg4jJGZ>FOx$yw5YS`;ic;lEy&j_qWB(ZP1_-~a81ESV%Z9bX^t`oOd)%^tqNZSzL$uG-9Sh%((ORXg zc`fjLTK@3N9t!wdeL%a?k~O?o8%yM2y=(gc@(|1VoG!C_O}%O9g^ieZ2nu zp)o*oX>ukSs~DvQA|MjR(pt*w4iB=y8JSBy*+O7df9ow)1r>_Vkl92Ob~*^tKbPn5in?VgU5I}DkX>I5pGm_5hxC=-S;tvM6nW_UG zQ-GPb0Zq^%w9vZ&5Zi*%=>VM?|}6o1-S4+aJ`;&laNjH z=zx5uCL)gyWePE4jl<(Wh`#iX;4Guw&lGe20tD2tc<|{Td06YARSKA2G+x?;D{FH; zGiN^@;Aq!{r25Rd*^b%vSeu%o?tAWjPGe@=Wnm1e?WV0FWcCHaFD~nwbQvrOgEzucYm{5je`$dds5o^bSHqn5rWw`mO$|J_u z>blat)Zk0iqx_P^*&9GZ`4X;koXKSCgde0#z(Wmw3+1iU!8n%8Yts8YrPHWNR2Al0CA<=iM{M=oP&!*m zR)KJ9E4o%hJD>z=V6$dOD+k&(J0J#jHsIR7|EY>x0LIdKW!t!788>wCDJtkVc^t-J zK<6;BmM<@+14!$U8DfLyU4qi1t8QJA(UOp>5Vd>|SS|%Xd5G91eQghTfo=?hAROR! zi7+x@=`BCCVS=c&c1e<$(S=|j@p_#XE3fAqi!MA%2H}~Ba-F)sXShDG8hA;jyfT;q z@7_mcfE0#-ul93l#yzSpSqvUTl#vI5BbaV$5-$r%)?_CkgXzjY{P%6zD>iE0DyzL0B7X)?|+soIaQGJJ~5i>RrK z5N%DvP^Pi;lqPxC(BeKJ3elZ5;e4bZ&wyyy+L?oprAe zty{XO@HMx9zBUb>{UBGIq2yR&yc4hBRdtHxC(aQ{j(v3?oY5OzMz*tDNDqI^C|%mA z_LTX~VcH1lkTV&!5q~4l9s?fKC73yNa7Z*R5QcyjqM0X&($)g5tsyUG^TLI8{XrNz z3XkBO@tJ7ySaiMJ?YG=BoEP9OtYY=y7~uH*dk+kzoDa;$e7PEwkmIcqDV| z$_|IF+3$=UoVZ$iaYLC`0gOe{F`N+Xb9kW>HTM*{&P z>R43-`8aNPGKAvCNGI*%5AXlY7&{p68;uRfz3p%jVqrP5a4#DPMk1uLr3meSrRwj^ zV7#EUjH^ARYkLKitJ6zXA9Kv! zz{B&+F>Ja7J2lzlg$Tuu2BLndk6_3skxgsgT!Kch`2x=E;L#Nx4BerbD;*+M1rNZf z$?+2GkF#tyk?klBb>REv_WBwS^h!qtxCQPL+ux(NusqJlu@iqQx5()eE&PuVhhgMi zWK?3qYPA^HrRp*CjW>$D_9hcAl9i^Sb?*DFP+oj5{H!^a{RuZ(l_|ha*^G+<}ku_vr}rRM#4Hf_qBo)J0yd zfu`a3k)c=`HNlwbHB2DgjlIr&%q8aBnQW*N)j>gm7DY0VcyoGYB3jN(thSP%0he=6>u!HQ3!~cO7Xfqn zeb`79m88^IuIeg1>WcD|mwstXwacy(dqB96SQs>UeO!YmF&1Xu6dcixt64@tRDP(eUIgHvVzse z_Q}ptKWTw*z#U__mj?iqOJO!2&fAM-tme2>F0pVHY##6Ef}82vhQn>TkX(WC6fonu zYG-_r$WA^ozWjfQb@H32>swwa_RUMY za73j&`V;Q=GsP<8bvz7}G6jQ|tZ=U2$}|$kk9@lJ?EpFaa1i=r9TA5R`}@! zAcjIym7HJmq|um}-mpkb$x1fVzrGYG{}idDUY@&|N&ey8!S0f22D?0j?8_ zb1%JC$`cV*0jURCrLb@a00BqkaCjwo@p->pfMhB;HAj0GsWA-rf?0a7V%fGSTw11S zFtgKZmVXT;kytT@Q8F`P>!vaz@wKwvZ|A@fIe&Th672k-!ElV;kdP$`ky83SfEK!^ z2++{7&n1Q;fh?#&8Kq2c-C2(C-r#=Z2%by?6HA6yMQvex330#Zu*bMfEWW5EzJ=99 zw`UareM8P%UQ6{C)88MyEhQXizOT z-unY~l|(pJ4nQ;`erU?SM2w6*X3XI(sb1Vb)(QW46N15U`a;y#*EiRVp`0F%(1_O0 zbQ}ZoHrl^?O~ql89|_>g=&VPy^ue@}H)!I`;#0^nj|~3KoDrMqIsbonUOEf&|4q*` z%63A2a!LOPtS0`}tm`6o{Zqb^9ya|XE_El!(!opj`ZM+b0cFN(6C_$dJD8mt=51+% z2XZ>3bUxf|oP;@^w9V@@mRXLyCuB>`seo$yg zb3SKl^`^wZf`)!;SDx7JkGh3*e}AN9X|F{!lzi!OVAv9$o#e0wyq!>dun+KuOeQf0{ZkgN}X<>`bmu$0yl=Kx-Ik}hlN<>Z7m=4f8-<=GQ zU>YF3Xwb;%>@I^d{{Rafoqz_HAVNnlj0NePfb=EA##+Dwn^;cIK5)8q+8Fc>U_EO! z@8fK`eYMZQ<4*(iXW^;KXN0?}l&*XS*B_#P_2oNOfqOhZNqZJJzwCpFs_fzbahx^? zk@N&r)^}Y)4R#55(|*aau#$5Zju7*$5bJaggQH`C6FJR_)w7N(m1! z0!l@h#Pw}Q(`M~Nn)MS&G7(yj7iZ8?`yX%Zyu5}`l z2&+@)KI}HEb94P;W%A$nftm)&edFWScedUj@D+9O6MoZ z8>YHmA;(b=*Qm_=2xRN<##uL(zr#l9sVGL2lAmr*=>YJcRr;&>3!Aj83s(kI7t-yR zuwjz5+9IizhL!!yfPOj>M?yli6o4PfAR&P9HSt1UGLpeW%Uq|`gLMV!C?=$E&QKfw z&3ZOm+5Q@!hva27zeA)x47k#M2g-C_Y;3H!a8IgTXpqSvuE?iDaaqUmIS%%Vv1jRB zgv(u70Jc8Lx6;a*gpi%OTm(;Z@yU(O5S z;8yHp0hvY(j3RxJxw*NoEcO(KU5u?(KxGNA3Zt6ck193V_W)Wm(`aur3=$GBMvPe4 zHyt9SeNLX_bYBV!fRr0jwVo6%j3CJ{3c!J-(}_*s=% zz~=_y`*3XuSQ$97l7vFiG%FCE7I&hd45)p^>%bBpeOq^1T5wq^%ZyvPRq@FFao4kC z_xh?DRth4?f>=SpoW3I7IlP4nmVAC z*BbkP)@VtO3PUhO*0FCdBRzvIK+6uj&N@^w_>bq#`8T88tDEa{xvIr_S8ID%Xv^hI zQ71^gsKqG>&$nQQzuo($TelG|V?)q%fkVa#0PA3oS}WHl09|dlgY;2D0>|g)SURC3 z0v@DT+Prf(J-N%TF-j5{b>d+?af=`u&X#4dx|MeUW{%=5^H$o&+ zVgiei&|;10i;oMnLD*VnA78|LM^Kjo#^|ga6ANPr!t>W}q>X$o$ly?AeTp@p93~rX zIN?q$bo+>5xvK)m*>(Jy6NzGa5(@L*n~6s1Vv@RznQ`1J#X-ea)9L zzm@#c@y=x4F6dy(HLSn3=%#?x5?KJ#y8QRbRs&Va6Gj0CD{yHDZh>OP;&06U-WMCm zkD|L)#RttO1C7kijiAS5@+^cKhOns0yy1>32d;vmv+&%XUq$i5KVO$)bu3j2_=RE8 zOo7`=dP|a%lZziynKQ0ea)7*Q6vu;vllDXVK$X@(@XvfzR%n{Un~Z|KqagLaySjk| zMP1|bWD})d)6`KlTMp|KafKAf{XluWDxj}ktwuS#q4b(Q&wu+Pj__Ya86w*I5gYg~ zSG7JEoiu~AOMcut#oR@jj%@uig>!v0rUr^*%$tehA>O6jNy~xza!J}tTKaxHKaO5N zktxD3z`2A5MtnKi9)1P@qd4&Nu!fyLZlL#t+$p4+xgo2LTaLT}BlDB{` zKQVkO%gGm3k-A^E;vT7DIo_{D?Lpr~XLuPk9xUEXIs}NAR5KTE3e0LBcm|fB$@}?5 z9L6Oh>?%;x!q&t;(YU2X=z0q{cdSb7ue=iz&oMan1Sj4<8RRq{%Gij118+}1kI9qNQ zvdnqz&g2BqLXr7mmrVkS#eA6SymzP6HW~C7XD5ttiidle z*BHXL3eUB03$TO165EfF45VfZotjBU!Vw{}rL z?F$+Z`{HSoh*QDEw1Ywd9~U`9Wr%b@xy}b*7my=cgJl4gB|j}dFhaK^%$g!39v!yv zf5P;`?{dKZ_?p`^BFxbcrr$-%2!Ssk!y>-uivFuzZw|Lo8ZQL_BJ*_6c z-4*acREOhYIiBATXpUCEc68YuBf0_C`<8%d5Sy}6id!D0L=~d`*s!%iJY$}2` z7Na3M=gGb-<@VDl2@{R&R$pS&|p5aBdj>^-c80?SFmHrcYrC~xZ2A;bm zyfuX~d0E|JQt!SDyx)dS{H4zqacSVSqbd1qA8(SkgkR9~K?3wG5CO5`Lye$f6^d7KXPocHkk=i=`6huvS)9f)X2m843fHm`2!Y-`ImKCzZpB{4nJ+HH0Ux z0!OHfZ-|ttbYD%VL1Q$G1`Hqn{TM($;!#|VKrBw}tkgqy;d-k(YqQzcrRsU(b!!H!QcXc1{U0$3@IBT%9d z{r;?sb(wLJrfrk_F@uGnD(U_BIH>gj^92#9B_Ss$HTUh+))U zOk^6`3^09+yt(DGgbYe5nt>4(cSqaaKDU_pzeD#fr~#~ZJJ3D7xKMB??dt04KDDk~ ztU*-#!VliYf2eNtQy6v9MSX^m0^XmgWKJ#m13KKfuGv++ zI>Anh$ykdx1ZH%r{nj`{*I)bp7OH=*0R~89q#}IqM#fa8fTPT?(wvE6EApqHi&#X= zPbfcN@>w1nnmoVF;B~ej05|3MAA@Tku(r%0&j|&1z#TKd59usUA<-3#89OpGRW~|> zoFecL@NT7?VgB163&}eX)8r-M2aMtA$&UHRlOCX0iXuPnaFnR@N*g0Nm|xGd2lAUI zGFJVL2l_g_VJkG0u#X+|`^tebUDo+u--YbJN$$hN-mIkXz`|@)^VphPQ@D@GxnRFb zud+ zL^_>FN>&$wZR9)YO@3W>&UE-yr~5aAOU(#HX)?9tjZBA`e`m)S%7kExzzwEpA}U(lMjq{+e=G31U!L+%9@tHz zQyP->nvb6b=AYBf$vGKUa#>+1Bu(LFH-ViQct5 zlkF{W=f@~|#vfgK+9)sAy`~Jk^hn9(K{%oWz$sXSgmSPNuTVmOw0%>^VN}h3`Ez9I z|7(MZl6%3GBJb&Qc}OI3%_WI3&E0+iliZgqeOZ{rtUmI3l{jEa_6&_iSZ#yrW?VgJ zi5`3iTw@ulVO2~2-reuG$Gx`TQB{8C_hvVplEIeVI4p=fO;nO!qq=UBJlh{@c$2c} zWs6E9+aZpMe$4}Lzf}RQgoX9=`75;WasZ)9VnQ9g8_nWgq2Gg27zV>5BOXcn%x52> z(6P}KLp0?JjJ)Ow5wo_l3)XxTQJL@M(r7O8VH2;Pc|!e7&rOq;IAQ9QgktJKDbL4@ zxe)j}W?CO&eIdHTo;IaJ!-57=zKP9XPl-p3c;vHvnupw@t}V3>K*k>S0jdJd<%-~C z%v7PLgYgkxPI_*|?!+~D@VpAWQec&mp08Zi!;#+P{oL+7*6Ci;?+R})^263(H(3A& zyEUJ*+ET}A!#4@0zcfOhJlYv6!#n+qDK;*;CKHxnLZ=-b7iH07YZ8}QE-a+{u3|Ov z@HIrEbRku3kp?0t%S2^S`#j~XF?@wlM<%RP54;fdVB6c9t4QONA1(atpi^5bT8qof zR9^AobDB8oqzd_@%9f@Nq`@|0F^&09uPA+u|1%`%(q7!oN^s{Of(BCYUS?}C3oeR*X`rpFM0$aG} zeb1~@-qj*PdHI!V7{@l`oU4n!x?_>~Nc6`lo0(GL_G;4^*PM$^J#J{!2`_5D!kp0H zHCIwpZ|F)+m|17M9)(Jqd#+H9au%3qql|O?oC6hW6X5Uy>t)SlHw4I*srt%Hpj2ZF zF?x;q23(EVGO}!-y2KBw z8fgA}!t)GdQk3kB3R!Lysn+@pKAdoK_6d##v*dQGN}64|I3g9#y_*WNUAY)G(!Y%7 zxg1Oluy!T3J0{@%w>|;_73TE_U1n&FBFHOtN~q=@1BL$;Iv$S$DXhZx?*5+c?b}#b zk_S{4bIc?zy+Zr1TL!wJMlmM4tCkn0Y?uRiF4(SwU$>ozHKUdr15p2&n~=m!X7fKm z^=Yk1h1@LiHLO!baz|U4>Y2}L%7`<0cSnwj67upW3S^W02vF{1pl^hmoF!^gpAW6{ z?I-&b$(h@hhW!HNI&^m39zu-GR%{j;H$B#=TnRr_xvTqw5d^V)*nbZeE%*EfiGy!j zNb-xRp|E5K=$V0i_g`dQk`f+)=^Ii5D||pD7Em6$UjK!_QTHmO-B;u?Ut5bdwN_sU zEqOxvn}ui`1Y7Ie49ju^w zXM!hr7RwWgB8+g72`himtgct`>7HMlJV^Wo*1K?19pk8%D4LZ+FMg^DlobvRWlj7} zT$8#U-cmDkIb&8!Oiwr9u#bzU^Ktm$`;rfrQ7*Q* z{(A$Ih5b-J2hDV78j^u^0j!JKu}_ApJ2!MIbkmo1!HKijsKXc52ZcN~d_&@MF!*|C zg0m!I==KH@jV#D;W1PKfHGh1#XA+{Z z$?EL8C+x+V{`5N+ou5RtC}jy!cu z5;fC5rcXpw%A`c7jBxSM$B!N8O1xN0J|EJmd~QBupnT~j1R6PDKQ=#1ZX~kfV@dfp z$H~Bl`nWnfW2*5uZXi_X)b+C9^jY zDlpyuJrx#(OdF7YWx;R^0FC*$DCi&D0|)7)qRRq&rtqnBx2+E=U!&u(FAHfC0!}a~ zX#Y=pUl~^A*0l?W2)a==s3;*QQc?=it%A~sNVDiJX^<8PB_yO936WB|5mD(7gawOK zN?L&h(q}vi_xpa|Ip_U<&UJnJ$G&v$XU!OM%rQsbX3@pg&h{O79F6zN^&QQtMXbVS zz$t-I)M3<#eAhjo(lsQbH=9Yf=-xLgGZCCvk(d2TY}d4I*5+T&g*-TrgvUKmh)oD! zx`faul6f>>#tb@9gB{qBsWiFsCFMC*rJK88v&`nBdl%oJ zxpqcS;M1qqLINN6=YyzSqc4m1=W=*F_)Igtv6I*6)JRudm78+I zuYv^Ky=MEu?&hp%WvN!lc2sB;=0aN(RodB&!rO(PIpR|3;_L;4xNlY66RxgOfo@0h zBYH2QX#A-sE{uYTggkhgx8F-TjC^+p*({x?Q^5&k51uM2&yCV6#M5!%yi#9rJJ ziHP7Gx?R$jX|3pR+{E3`$f#9Q4>|7G^(!+MQ>Gn*Umko{Pd;G(C|RYj!fGN=V8kpIziFSc#LWJgpg*!ui`Z##Fzh)c7iTO54UIg~+p(jMy&}BqqG;aO zOYGBW#kYp3WAAPm(*=G{)RcX^(e>TmrLaoN+UR%Fkt(H64h|k(66s60UiR+^qi*T1 zj@PR;dVATk={)R75xxuQlCtf}YK|`$If}WT#{Xc6bea!P6>Dkxq;Sq&wWB#TTUT;vwo3I&%O;!MDKQf)s^x$w$PE=wyJ+jCX26PX$(FyAdtv6wgE+dNdJIj4L-)|dV7 zvt-7%$)k3~CvLCK$h3B^i@2{iirsM8GfFY~1N`1V*3Jn;-Dp%ve%Fb$`jH-*SF+UK0 zrz1X13g5EG`c9U!&~{(;#UmiT^DrG!Mxlo!s!_!S2xs1$yLM{th*y33LVSWeHq)}t7~l|qSn?W^;0IVS84v+PM9-Ht%Y zZ?$EpGVgo1&kxQ{HclQC@H>RT4nLMlNJ|F-X4VI`DFkX8dO44Kv)g4|WxNNTlXuCV z-p?v5N-YLGg>UI6mGGaa`wUW7OT#X|qa>KEEQj7^aLk<%-=l|2)h&etVPmqo&xR)V zx!!58O_Ly`sK#ruYAdWdI>6@y7@OZsC+IfDUsDJ|8-lix7c*gj1JPMhHs{ZVWefG~ z^gh0fqx^4m-^qbS=eym1!&z2QR;|=5W`T3IA{ktwFA?NOev^i`7T1jQjIt`63i1a} zAd^YFp8$3_C=z#gf!mrdXTmFvB3q<&Cc92m?^xJ;TKP3**`C=LL!lRvZOMcF|Nh-x z+~@@M?#j`0kU3GhG2h=3+iy>E5psI%+DD5}B~Dh!-;?$}8%Yo7E&3f1#K(_tU7R5N zFhr6Bm=1`dsXtcZ482RO+S=PoK0(klQO9}UVFT;hce;`pJ*(2E;#FVrxly|oc-L-SrQJi7Ljn``f5a?y_yH+ZFNeJG*=@)G( z#Eg#Q@)lt~RcYMO6J#F5(NcWduX2!E(keIftYD#J$yLTR0I|DAa|hPr$u9A8VXB>B z@rW-|0STrWJE(2*uD`z@LDg0Pm)pdRAHgZ4wT>p(@a7VCyP_q5c(w$=1~%ycv#Kb~ z?Hom|Oicpj`&xrCu}r+=Qq0>|aA*557kI*RkS!b8_jeU~X6Cz)1i;0nR`7OaaiXzN zK2=1Jvpq3ps`bG7Zizful1)Wdqal^0lv&QBThbjw8TEWO_vFdeUkIj?=E=;mee zFPD{llC^+Oj-#GFAu;OMgMqVWfhU5`_(1}&?AFSdjX_jY6m)K3>?_i({mnv?jk~MB zUbl|Nzs*yoQbg_&@yE>fpD6W~ju&Idg^gPyG&-5wk!2zx<@%}KH7Zl(OF_t8AaloG z<|`Nr;&mI?7}U0tfnF>Ohlb%aW5wgu%9Y=KShr#_gc?Z_PpV zUVJ!?0kL)f%bhA#Wc?c%me>zU@#LWAo3&=+_AE7^cbO5~w>|j`H?D;8ablFe*7{3o zSkX_wc&Txo0W7v(vi1;I>VR$4{d?2~WYl~yR#IeC7C%XUA{pqyX_Mf(G<4bMb0~@G zHY@wlS|!Q#KjhF4@R>*<=b@|*B_(~iN_5&KATyCdt($h^BB$kKBahZgT!F_?+*ITv zi`=o_D5U}*m4Ukmku_Zu-Xk8cm*c`g(?czMWM?5(?@ z0TdSmiLsijt(-^8AU?|oG`la9d>f(n&j1NcVag|2Z=JLpX|s zL!m6_4hR&N)`$3eUx|sF;G;=jY&^Hg^U+7mq(iv#gv*pn4ClstPUZ%3i0P+pS`S_C zaZ}foHUl+X(kx>SHwN*?FyP8jRmS6z$n+P)Jgbb2jWvQfv@2R~pAjWI`Dc+IpW%%K zPGwzTB|`qg`@j95v6ChgK$y7#@|!Vu2_fdk;P!_A@8<~0>UQb~+Qg8LB~bV&RrBCE zt^^?_!U8qoogVmz+(*uKQVwY4rDiysKpUhQklmoG~qO*-bGrOW-wN2ihh z3F|Y|f%|@;n7#zZi^`AvAXW7qXgkYcHJkaIDYyTyEWQsyr_~*XE!->t#05~838i`r znwpxM&(-z39s<%~`>mqc>;LSo1`hWf>h|;*+$!V=;HF0d>$q=)U$}9Ln}_G$Z2Mjh zk+pBQ972%gE1v}TF>KXTc&TfFUL)!fl+UP)c4hzB9GM(^`%aa5`ZzKyeE|Wl<<|&s zs84vzLJw7AsPY&WqyC2wbnwU=emy6Ma3dLuzXY68Ht1WM-4J1Dg*U4G=UH3a8Nq2j zKM$0RM;IZHA?ni@f2>qzXh3m4E~!>uZCy|7Qt4Nr6`r1 ztaH~}Y`S%v{qAXF;i!bEdlmD;$x{M`iqEz$&+2i_dyC{geOi~@uPYjB-VoI(EgN+& zJBu(cDvEyK0Y#SD453V4^wpzXB6`g3wH#mEX=D&2BqX@ZCj&tFNHak8<%;b5cm-&! zo*qi3MV|G`ZwtmF8N^q5$|Ws7>QUu#^;VTj4&1TOWR}68nv3$wu z)&M^aIV1r;K)i2_QAb&Hq$DO@1F;{0xIab>&>1=jjW^_C?Rwh!6RCbto|rz4Ilxrd zM(w?^fAh6Ko{T!eGB+MZpvQlL#(T&oh2s!`YrP{)8bHONY<+y9qdLRy7j-^2iB8A7#^4C{*fFfD zcsk3XV-@bU(er`CHhOib^*D|%juVGc^DBZ-SxOQI5NCG)d2UV&ai=adnNc!b&{qi{ zd41^l;0*5AKpv9S?KGZd#mD{h;&Cco%d3zTyS~x@SaOIvV%*!EuVEyGAm?AH zj$_f+cyJUaCFWvq?DCF58T#N|6m}_yyR5tJ3_^L_Ta#~asWYBIgkz zM}d%jneL7}YQ7RnC$BOwwL_!-`o9jA?R=u4g3V($dsrZ1xphak>}Skpb}h7Jz4`v1 zDOq94p2rO6qbbk-z?A22EDUsrJ#3L)=o2)NnOJT6`@^e}R;hzag_MPKN3;<~SVYrq z8YhOAASt@swDM#T@jf}1ewczn)PU|s}ae`>=2#)DZ4T1*wY5>t?KqO`5YW9 z+&S8FGkflfpVK{7M+ci>sfCRVFIQ3EHWq#yV7o3;>OAt}FaSvJQ2?W5yk>Lyoz=7C zYYSHvaxmAtj7yh|0+^)sQU#l0Vjsi#kggBU+m;L&k@blHy(28w`wK-iL% z$vH`btQ|H(^S8iUvg0%)ro9t}td&?q#DdN_T~xag1r7jNP)}z*?4n{s6C$_!cg9M3 zjH9=A?3cOcU7GLZrPycM<(u}eNtFz|WVp%5lzT7iF)8CzmY%E@Rx2a-Lq!UTRg%cL zfV^Vv7d`Ggevn+fyZW#WXLR9#mLZ=kaKBq*UH(gt7ZfkELW<+Ll#gu+(1gpGpJ8pi zu!X4Oj8#KLPmyYNjSjcltvlln27@k**2;;w%^P^^TEuO{JXX*;xAWR$wdbW0YTwas z?!mR}wgfMt)_`LNs*~=guOPc5eBf)_+*IHyixGG{KB1<`#cSjg!>h72)Bo z%2zpwJ4iATd{X%q$ajWUgmvRrB3J2@JZ`D^>~IZNe4`d@kn*TbKQ!0e8w^={HSaLGFe*2V=D(!7W7amBSMt4C zvt%XY3?oNalFVf-W;1{|*KRPXL1fj1L(hTIB?6b5`l|_061YctK&e+tT zI0r1zrMi~tp4Uf0JyKX?+U_1EAFgK{GV2|h)x=GZ%85l$p3u7%^Cr8afmSI^S)YV8Y90b)-KQ0(CSOk`xSu^pU^rj7h5r*jx~O|dJc~Y zyIA}lt_WRmZ{`vHqP5h*-JR?yeYvDWS0N=K9hX<^o>T6_C6>=f4Jo3dWOpwV-9=6) zm~vER0ASt<9$0t<@K;0$)v5Y3I3<6V(RFLJzbsPJ-Mk zo9|a>bIv(6#1)^TYnVS?M1{BMT^tTu z!V?`4^BvZ5%T4v-9r>?(C?8jkxg_gU+xO9|W5aLS`c#PKG-Y>FjT-gdcIcSi9v7{b z7Gq;DEsTjZ(_Nxv>ym!ON4q=|RC>CNkD@O6NPyA1&A8$u44$7MA%g3z`D5HH6AzE> zoXj0bRme5g@xl&#(qWBqrr*;IiaW5Yv+CgCih3y~QgR0r4w8K9KTJBc#TP1PUY8%fyshob~5=%;s)l$IlRyhnf)fP_N z3@#X{iZPd1$myE!G~nN|9$}y2viW`~cIozsI-4!3EeZeG|So@h3vkMMZai!-W`>s zHuc*mJP!N5Wb1|e*Q~9@3(ET^6@-|uBLS@bhOc`v@6-E)C2n@ZYT;+cA}% z=*^lkcIM8>nm#K${#7(C-f6>!nw*?LnCM|GgO#jeq4i*h&9bRq8ty5;KQFMO&hno4 zEb=G#MZ8q>%J>9m9mg>6^egOat#a8l zZ0B@I&K?+Pi*_WID|Ao}U-ZBpu&q4SQd}M8?|C)u_ET;9dy4vW(u;}MrA~i`zG2Fw zZ0pZ$-wNd2O*FU!XP)FMbj%xUujw7OI;O2uQCzX%@0e##6qOQ69QNYnNZP8Y+uBQ8 za%p^4y4(}x-A|G|TITXggj#uy&I+Q{K9&bAcKaxr^%pKL25rBjbtPN3KWYu_SK#Z| z+51xe@()ER!N~MIBvAIm5p<2@2m8lTv!2*E)MFXIgJMlENPcTEe8^-edr!X1PyZl! zp+qpT?9|($MXg2)?Jt_%yvX|@mMSJAmh!9YYXSNmRs6-E+tC%@7ZTqknu>GZyRHhxg$X($PcoyxDAAL&{lN%%dqaVXL z&ofZ~T^7j6$+LRuePYg=CF?DDR3E7m7r=HUdX>t`h*NH!9*2Y`wz(A7RFP_ZxuNka zU0+^a!5N(|@2~q<4rU}}rD~B{f5qrQor%9_no9L^r<(6ff~z_A-HXt)TjLBPB%6DY zc6Tdl#~#IzBv)eaH2fE6coJ0o+Umr8WbH2CSb>FXVP z(vu>nL4Tpa@~U4&CSES?EBUQEtV#{lI0aN9YmcrlGZ+~Zq`{5L%7tp8)h>JaD$Ql7 z3si5@8nIC+UIP8>(GTXH&Vnp=M_F0R8^_BZIfKBPqJ@(4`}D_u^07u@J$$Zha$asZ z{y|DTKWlbWN z?|qs>`o8_qJG0LcH(%q)_GE~QllI+V4LgrU#(2jl@smm$D`|^+fjl`Ql3NYg-{}Of zepO;uKjV&Q$j{G$0TLAy{YMj4q>pJV$UYXbHjpQC-}`bgPKhQ?!t*g~mTvPuddSFR zV|~v2$8Zh3vaFvaVR81^kd>LQN>26e)UZ=BMUX&`EZ5j^m-qdtuSgJv{g7N4 zLO#MrAs;Q@#64N*5c9k#D*-_y+Q8g5xRl(}bJ-zfVr8g5ksL5Nuy$jS zj<|JSIA8TABI5lYA|mu;uL%ALfZTL#YLETD2SC7kp^>gzZ#+LJz!>Ow;ZXB|PvMCp zYxwXuIZgDQ-e0oF6Nj_F*$*yjAC&XS{r0D>7wQuX;IfRpMjJlY?EfPV7mc7V0VOaJ zJ2QWD(i(oNThpye0|_PTWS6b8d>Ad&6(c&d)S{&4<$KRsSfwI5@|_31le~$Tx>Lx3 z(DxDuR)>53nljL=V$}9#3MSoMy~ROM=F)yIvY+azoXVBO>Ok7~6A0s-gP?_0)4BJH zxV!y?Ii10UZ>c+GK=^dWY<+dflzx%%EMZSZ9b=I(mD*w!V-3RIgJV2| z%R<41)qj)t1li2dmxw?(_^;>u&$kl)dFX#d&i?f+p5J?7vO1!iH>`gy|DVAp^$=(4 zAgv%y_Tuh5@-G4gxWMsma?=032KbY&58?~?|6$Q&7Jj3nI&IzEoLH-kOZEJhqGLIj znVBzzNGBZKUkUnl0+MhLHOx3s^Ic^!*|9qk4Ci)$Yg&#`@~?!TQ9EQBvqJbJ4UhAvsHiL*SmdTKL9qqr(%@@4 z02*1Hc}k%eL2X+l3GHObv0HJo0SnL>Gffr}t*4)y;$&G+Zy-SWINo3phbtz!8)Db_H^`m z+M5WktUt6P~K31k`AX~MJ$|~rxt`vJ1OQ#DPu96W{i{Oy}?xpyas-aj~)0R76-#VjzxAt?K>j6Qu)M z*R>7G2(lq~^qt5V@*7H*wLBn(<*{|X(!Prq-P*y`Xx+FW3J%DZQ2T_0??P&Mp@B+# z+D(fn1X$_L43v13+OTpheQ(^G;R;CkF7W5Z+(Djn;$!P>V7vMFL7yndXONrzOl|k_ z<41-x5=;Fzg>P-G%)yHnAb|b)z^2lW)H04!_ZnCch}RP$Ew7;Oid;!a$;bK%mTJHw z6jMrnJmIx9tah8U0SXQonNyrp{3@*)K=C>$($d60K$Q+*{`Cvt074e`+G^_tzXMJQ zLr(7s#2Yj&xI+kxP*WdpWh;JDqTDiC(scvjDAnA73to^&JBQ}yKy|k&?RAIxm{qZ9^sUat|oW(uhy%h3IBH60e8$DgY(DHH2uPh*>uhrm1afSG&xo zS?!SRisDDA5$7SA3emgK*xM}_OUlu`=<8tXsk>NPK_P&(x)$x+8zawCvKYgHRRtxb zI3|U})&X@r4k)PWakP*b&*$h8TG^m%{2id0r}8PBdC<%XQ|*|`Q9Ba0`<$)l?Jg7$ znWSz_PkcE;S0+~}ChYTgxg5Qe0Zqwf#7(xaV{tkT&j2u9VdM76${5j&@0n{$sIBiI zTDU22t78TZqTRw-b^4=T%r0idslm^{a%FBZUz^SQpf{hrWJ=vRu7 zmVSs=JD|qV^!F{q<26Co@Ces^YP&jvG=myEkCu~|D!2{H&N(xDJr)!!Lf`{+?sU^? zA#B& ze6t3kO&AaC_T#Zt?=9igeZWJs4;Mdh^B4^sF7M%?xGMvx@F9#x{w*mkLthMp31J-@Z!4^DJ7_^odN1eCtfim?z7(*ROKE zuN9z0;I3~9CfcoM`1J!^m9}e*oz@JNd=8>9ZR?!teow~GJ9^*~sF!X`xbb!TR|scK z>y5%+o0`xYxV#1HdOupL+;$9eiDxQ1MelG29X_b!;83y-5^lumH%^82m0&0S5zlrM zUlSzs-tN%Dq<=1RI`{h}fHw%|%=F*j2o1N`E|ZK+@Dk`LUmPqfZEAK#>&DHw9nkW( zau=F!CYY8m==#E|mcyvJMkew@Sh=NtS5=zLf=MRhfi6(aRj2uT-RA*zA8w2IY- z$M_#XIhgzO-ySIz+vQtv)Ag2bB+Fta6m~kHv}cTjcW-~y$F7)%qj|;T_<@t|fc!Bx zQq1jsaC0v?Zn&E|aMUgn6+_p#LL*bp3cnJIt_@orj+{*)(tEryS9?r9o41r@3L|}@ zw`h1$F@ydIWSy7#C3Jn}V!8BIbYC@9JQn#q>Ax9o5m3HMHJLPsS{347eO#!0BB$0P z)dOqDBQ`SlZqUG>5j}qUPu!bc7LRt8FBpT1tkXK*0G&0Q$ox(CaJN7oQ?vI)`Od4D$BL`l=r9t;|9 z)$Q_Z)aQ&8c*Rywtq#3wuAh!i%O*wfwhrjuU*CrmAGe;`^={$icRdijj-MQGqO6!Z z*g-cwMlXJbtF8aSiY!0xsyp9U7;V4vFv`mA+BbdxH0}?>jDPbc%b4Ac9>D;8G35Ci zwcF7N4~J*<#GUAm0<&bN2twU?4})$YZkKk3bR%KsWPJmR4^K&4Jo7E`C@4JJ*L%dd za^wnA-nP}>ZLwac8u;+}Sq-{c+}Sf5m9NKC_15U3vw|jV+MAv;3fplLHzW&13#Yi( znfo)%&~FCJEV(&eb3+1M_1;>?@&!3sw)t>2UZ0O2%gCN9l4nn`u5)o2X-Te&jC%=tx)4#kP|h%9WK1mdnTr^GW^7#%zLMcX?sSY&Yk%vs~VIXWJ1)< zL~fuIR))r(ENGyQxkQI^@c9*cZjHI38pgQeSJ0c>DU3-+u?V<qtnHWd<}w}3Gv_*gDeE6QnJaNbxixospl!@D zZB4B8eHpW^fh-Dw8KspQ_0q@aNu3UUw}`j<9Pa7~{~bwGoFT)U)0frcdN3{4A!_^C z6QjVB+9#?y*%MW#&MbwXMx>A}E|vCF;Ae7P%)(Ez_{8zEno)G9%HHS;Ntsg#v+iK4 z(^feh`HvIFjx)M`=O{cunsvL;$wsrkaAaI9N+fB}*&gKnaaEU!rnYB|)A-nt zdUBGS-mQ?{4Fw4czZlYamI8?gwYW*&Lkq;K0P-iElWrT5Jg>Hp(oZjA7BpZM!)x&< zt1u1oTus$Md%RPi+laH@h|1b3!m_3b6Zv${=2(pSkL+B)J#*?Zpk2a`H&8JGV9p0wXTks-Pb)3WKJdWbk<@$urHxTQKcdcB z?EHkptU--Sb5Z-&TUR}Zv7}DiNbS{pR({|_WXW^?L8_;fpc4s;&G6|IDd7!G>my$P znGIOQM=``;VSG{nUY6^nCp=90jZCHWYIUBEeE*U9RsVK$ZCRLY(yySMSDj7yE^Gtz z4}4r!Mu)}n-`ZiiRHHdxktgz#s+NW1yWkJvLAAPNUs1^l=53-ji$@fT2_0 zyraYOETXcQ+BQymc|5;^pjsx5st->#4*f+nYHPuP8zVbUWJslR@a>FG1cjnNli0|z z>0-q}qD;&vI_Ae*b{xu5`$~Do7PJ($t6q4MzZ7-r_*g+xP7dhjI!I26+{W#v69=1> z+>i$8QBWlUNC#R>Hj*y2hnD)D{R;fUyXEH|)=Di3+MFARb>*+tO&;3^;nc&Ku?}ei z&%G`9e}ew5UZ%4nDP!I@abiFHvQK)x34gTxa1CjFstsZV;uBtzrLWFJb$Wnp>F4%$ zuYD%f1_xxphEsoaNRR;#-W1Kjk44*gg)x|07EJghi@}!Yuf6BxT}QLR^Vwx;wr7*- zZ)9Sqa(f0QrL{MmmQ3!?hw^ljEkAx!=utEF>h2k8&qbV&J^F&6k0# zg(`I($4Ad5^65^Sqi#kFPAY1Xm3tHug#vWJ`sWGD;WCjO>*bw-!f%O<-=j2{J`?o| zjjKN}&<(^UhyOjW)BEmojZG{AIW2R(uD7%N+aja;aUj zKcBr@8@Q-pp^JWa>^@I^$$q-z;yAm7(Zo0J{+0Hf%g>13nYPjFX3v#bmDbeKrT@4= zs^Z+GL8^*%EdfQ#(6qV2`E^riL-Zf9B~Ki$^yny%Jww*3>ColVOG`mG?f#tehG9(< z##t9z=bcbgA8xVVUh4U5+*pftc^gc!S$FA!6iAvISsb04S4v44B%}$qpmmau(^);Q zyK<*zky~^-y8EvJo*y+8>5AWEYQ@F{)?}XjR(UXm6c-9O}Y0xRQt&d!T*scC_Mn7Ke$@u(DL=(wo9G z$kAeXM8MpYt9Uhg>|vKsNdRgp_HJ#1Wt^@JEj#DD2UOQvYKNSvsmNL#aJ7tE4h;=` za>?k$yt}iak`mWO;-i#a`y$M;R_!gy*ykOkRBx(<&fmNkE2iGEZJFTYki92Ui?ZUk zrH~&v|8T4B;It*$(xz?T{O%sloyFCX!4R#)a;veC-+xjc<&j724sQerJZiPR;j2*J zmZf{ZbQoIqDW;s!fbubb&@k!5PDs0$t@?WP+=4M?S*e&}s=#+9Ur7HNTL=~Y^pdsyH zt>wVA)kw@jF@=%n{ziX=^N?^8E&~vcKny&lSV_i6DOgyLuS@gSm2|4$*qat;jg&m~ zS_@0GE;+%sv%M=Vrb|UXtUGpgvniffsN4Lr5O9QIjS3^pj)crV?g@PYcQaBFjc=^~ zBu5@OhJAg-AxUWezS8tR?t!Bp5SM}DC_O*z!;y6V$9r^uEbXpnq}+cWych9F6?vb; z#iRfEmiYH=NV%rN-r+oQy#H|q`AI-73sKDutH^(GNP(vu;yUU+Un#0_QS5&^jyS+^ x^kX6S=YMw`{m-KRt2^(1DEEbIdMP$Af=lq!jNI-O_*ZzX0-`&3ga< diff --git a/website/docs/tutorial/assets/nested-chats.png b/website/docs/tutorial/assets/nested-chats.png index cd74d6a604406218a11a0848947c612a27e6b290..97989a1e9ef99b947a161a9e7a5b06993648bc39 100644 GIT binary patch literal 130 zcmWN`OA>=13;@tQr{Dq=34+Ai@JR|YZE+fP(bLz}TfB?D(#J=)ei1#QjjXm+?%dmpg# N#7;^7k&a;jRDbs=C-DFP literal 86079 zcmeEu1ydYr)Fv_{Sb`4j7MuXVZEy)XxJ!`W0fIY$1PksS+}+*XgL`my*Bz33@3&Q( z{R3ND)l)T0)6?&J}3tL-Q+bVw2|6n9&Xl-Bw78hdX;^KsYq7MI{rw5jxr|#89*VF4AqN72y zbp-qS2ZQxI+gb-(ds|!6x>_URw6s=mP*-5rnOi?99UtJSF?1MdhpES%Izg*Snc1*} zJ;HX*_Q8o#A|nUmf~swuC87NnVGV;QjK0hwf%eJLV7>PlNF2C*-C+t}v^T@5V4$xf z8+t;O-$b-pP=#r`?Vwge`M;{d1^@^ZPb0xVQ1kTL%F4=7iZK*`prn~7g1^HsQ!ahK z^a!=WC%{*wd><2?@{|ytaPM#gSXk->(tLrJJ{^$?`^ZAb(5MD>6gW8du`F*(?*;wi z&spBmkLv5Kqz0lYvKs24j+*GraJ;Fj%tbasCXZx>g(c;O8e5WjTUonI36UJ9k(#8j zj0_YlRwwdbbP3t||5xX4{r`V;{y*lOt2rYe2M6}<@A%*R zkg#uQpk)*P;*PYkUWn0w6$R(XAG(7DBdKHpEf_SbJ7qW)eM9+g;n@?5#y><&3Q9>K z61kr%xSb7g7_sT|{S6U7xDdytft6NP%E`+5)f-Ok|NXmYPYB@!7CO35s^=rF@K@wE zLdON@f=LZv`X}VS;t@7H#EW6*<=6<>%rG~HlM8AHc^vdQzP_3>+xSN8(K?>>o{x?G zj`D9#p8M?OwD7}`HTH)KxQ@&2HAL-P-F*QVZ;o%aQr9*Ut;Mbm7f;6DGwGjg4vC65 zZzVg9ws?AGW@oQPtLg~WSS@}!sG2s|pDB}&lA;}-x-lG06Rh1zaZM^XKlvg2?bBXS z&1%!t5}nO=;9qcfr34}X=AC|VF)_0~Az|SQegOeu_uKO}SQOqg*uKDm(SnlZz+&wN zgP++lA?oxxjX05Sj3rMi)0>0gS*RvFsMq7B`5M2Cf(v94XJl3K*uHLoMNnv0K4$B z($cqk$%td(m0xU+!M?(0@2s|*uQZp-kxj1jtuP)Mzlgx4 zrlyvd*0vjBL$r>3Yq>5BmL2IRg-~gB~HR+^9S(o@S`+2T?Si98$%q+zJU8^Pz(Lv42kxc zZBTChx>Qh5aQfwkO=88BuEpFBaifw&`_6=}ItlJIO{+S%28RRN;wfCOByCsz`(t6k zq{{`n5r*;N>j1U9{pA*7bbu-*=GRH769;2{?7b8@{+mo`G{2x@)B+L{F{7ncq`%x; zJ{Uq+y1e3ko&WkqEC%t^lf9CbUCchRNI-lvCv`e68f6dUlMu*@NRICUlOiKjErm1I zes4-}HJA74{%m`>MIgoPR8m53Hk@3Xn}g1V_tOeUo5OUR!m`Nra@HjF+|TxT)MVwr4r(uKW;EH(a3t(+5EQkg;U3ni%Z zQ`25?L+R%o@D|neR;uTxqoyk%pF1fYb-B8cI*Wx`G!))rD8{C9u$KL#vc``6@rvLU z)veR!V0`V<;~lAr6zmIRFX{pQyM5N=er_(V*)bhV2?#9L4Zogja&=55Yj`)!)br{u zewND#y)o6cY6O_Twrj8*DBIfFiVbUoK$OG9yP1me^7E<>Jt4D-V6aprT|v8X#q1=u zqpO63zxLrpHd*<=Li9!mA3OWh62$S*SC3}OI*Owt9E<`!sFvyPH@RHcR^A-cEbsRl zi0Z21hVP@Hq1CsveR;_~S0{q#%RHVt#ASGUOl*sR1Z{Rp#0M>p+fBjEJ)1aV7Hj@YI%CpJOd*V zNbt}|A*5gJO_xloh@eM`tm}C19El)v3WybNgOb@*v4x$Nejt%DjBZ_J^&IpUiNc~>SA; zh6jy{MX~p{zhuy;96e~cKYib8jA_$n%ZNT8y5O?pex-ddPChLnXi%k5H6K%6JvJm7 zK!u1OP_nj9L=m6bsck+O$Nc(=$%rsxF{b(P*1Twt+0ce4w&xjCKGDL!vD4XFV6Er5 zAGX}N*=y<5km=H_8d)p225GZ5ENM=by>d{StSj&PqC6Zmlr+&-_jq+w7hE*7^V$6e zh3#T4Q{gYUe`4NSY-sY2LQsgI>p8yQQP+!#W39lY7g}4(DV@Tru9@6;(v44wC{2C>`L*AEhEIq58w!FSO0`NaN(QdLKUP^-?3PDsZ9epFnxPGR zTh;B>KIpJG=qeJY=jvn;@wpBxmmCM<#|I~E0I!H>n3O?V%G5fs2-#VrDx20iW8P8o! z0Z6pUA*@rwNeX#jp`TTRXI8KK5Lmje=5TUa{$nV|QZR7+=;ywaa@IXk@q!|H@Vj5X zX6Q%&cE5>{Fw%q7YmUu5X>u39qUBa?y|RN6pmJc|N+I{zcY+eNG8hO&rctgVv64-v zaE4IrDz?77O>$<_6sJ{$rhsx`@VkLJYDtQsDollxUMeF95xh;PJ-$ExDOdaJEB;fB(2z)exsX1j5c7v`9b3Z8^}nlu`eutH4D7Yo`#J&2C{6f?rGx)! zLT4dNZ9&*e&~&jQyeTfsOU={2%D=W-!o`%P>&qCP!F!hvH0WPMj0TzWFPdtWTnc0( z>7&y>*PRXXkOrdC7&M*EdJ6x7o_gGhh)ccq#^}*B{PjyoSpQgW)Hg4+EUSL$&ZAws zwyPfYwWFvn61@YoBSjW=crehr9kJgU8)R8om?FIr5qdM|8JW;aI(wtY)onU$g<*Q7 z=rIB`4KQu&>M!Tat2DzVB<0l<%p^uN0$S3+6y`O_nVA#^OLjkHI82dH>!@(UDCR=| zg~?oY+0|s>X;tZ;!mp_eqQ`UOh|l+DF>G6?&BlNJv~P@p5W1Z^O8n4T;(&n>ND`1` zgu!Lq^57ty#HkQOQ>IBF8#IA0iph+=C1%hh@q)BW9&ImXfU!ZE?#u1PUJmRYqk6f> z0NoS^I(c?2PuLjo6-3!fawPK_Udie-Gbz!9YiUkT!JM%F5qmj|uv)qUvb}VB5o9yK zm~$3cqht};gj1*~0z}Fct7%q?^{7aZkVRDc+6RVo9vB`{F{@Ba^#i7 zJ&H!L5{8PCQ%!R-n24_)9wWp0nNT;TwkjA6H>j(p5hz*lx$&$%?DgUPQ~3cYqlc-{ z)5#Ka+ACL#)f3F%)1g+ize0%?7usGkU& zJW&abtvTGC$G-a^)b&k8xp{@ddP&P9v<^Z6-98#Wasd^BdtCw{ux%RNTIqVZKXxdN z-eGjS(l$rgC$RHriee=daA}mIZ-2`iy?Jd|_~wbCP5r+_#wh|6EY;>Fc<}XOHodA^ zKNZMNYSyChuph!x)3lW-#Ck3d=1sF!?djCOdVQPZW$F(5Grwx78Aa0H-a*pSD&Y4u z7!(Lmc8l>c+*40+@WrCxZ)i`#`DZV2kzQ(rT9}jm#ULYk6d78}T3#0#P zddIdfmP#vgNYMsP4c3xhP@s;%aoPUJh-`@;l^NyqqCEfH6|f!TFgU z9VqDI`s|Z$nV^Gg_tYa?aCj;d2k9s%$^V6A5^nQ(_uwtKs&E+QCf zeue?=t~iV$C1mu4=S_QYA!O2Fr|P0Rfa48@H-0Gnb9)d>4oN8+9Rh3Ukx(|}6K0Xy z6*|QJoh;={Afo*KKcdtEtSTo(IrrU#nN%dae=8;YKXq9~RDXEn?x#uffZHEvj0+nN zGNwOPyUd-q_b@-0Rf3r%KFK}*^CoHO`?{<9l-h6om}m3|l>dd6ToP}KM7S2J!}iCd zO2o^RilX!pz8Ouvh6^%HYb5)2}doq*s`8zw*X=J_~ zC>|I?q)O7aqk(C9NIpV{6J-bQ_>Nf+l2TfY#$-mDjhlXQoR4Ew%Abt;Wz1|+jTWl2 z5^#T(K%%*$l1Yfu)RPj2*q;K-JWFJ*^a-`T!|z&q4pmqxen`^bT<=JL?@)gUC?}gz z^#J~LpSYUg3$qDnRVggv3?4q#YU=N;0;b>4@Nj%p(Cnoe_Al)3Emtqz_aelFd&Sk1 zJuAoyl`|?agmSk7@CV&MlNi*!NWx-L?wIS7xwmaiE}c+ni0yikNWv-_+7r3?M8{)&iTWUuC!Kd*4w>Q0o_0}qYvx~e;Zym02HdaIFe|Ap+fJl5q3T6%i9R(F)kSn}@fs&cq zhjrtdlxS~P__A08>0nJ|659#O?fd-BZCimb?3!taApE_41`AC=7zfR_EQ;s=Et`7V~CSJw*6Cg zQhpC=j@>X6Q9elX5YT`sSH2|1LeGWwj`GnelnE{AEy}L{h6q$-ct_p`WJ#6LHe>G8j1@3s2k*RV_8#D+=bw;Q8_eWQVc?{Gw1Y1I6fuESB$c}_H~skqLAWvclKGCF9_d0|Z-_)? z|Hv+l8^K~gN~}D#ML$p0gWz{To%VfeJJUt9sM@c)zUKCArwlUG)KouhbsC)kA4Fh@ zHaFs*W|rOym>YIFl~g?yV%9=9BM819>%yoYeaTRn-qmFIT$Rsw+00VhnHJglxTKaV zf6}d-G5C)~k(QFKah~q0{OlDLd=_IXF~UsY;Gv@Sp6unM=#pdiP_?=eLA^*x5-N~Z zr_KU1;g6<~0p&$-Gy7S@P=l?ZEWcf|0eY9G`rmVod55P=-@ybb>( z8UiqytdXY4tDXbHxDYUmi-BTL$~QOtNT{T}?ry!nyK!1UKHs3D0!d6=M@UUXe(P>U zABMeQ(fmt}GtR4qXO`ei`zFnUvLY%Hq@sZ?OF38PnmQQ#kgY!+=bE7Q9eJaKt1$E~uv?!fRQth?M`tdKW7q;<1~ z1bbrD;&AQ0uV{=FS$@Opjcm>zvTo$`3YzNGRYF#J+8>n}leW^@@n|90F%O8KzZ z@3=?EW69O^E40W&d=;Hg@2Ncf`3kVo)_@#o8_udxwK}tiWkff7i8b~dTbK11Wkd7I z)$f<&V01)5{3dJ&B?my3pF&-9F#$pmzdLquexR?EBLz!Iaenw4zolqRP9hbl%-Wo9 zTV}^9r`MN>avtO6Bo`ez0xg+VkMQxmp1GiXkV5fEo;(dU75g6mB=Hu4;VB3E|AP*4 z@PoKl1mMs^N7L$!?@#he4o0tZX72`eV=pM=7XcLXB2)BJphoz9XWc-C19|(%v$Pru$-&V@LD6;lajIV z7ymo6pIzQ`TSOeN(snEdLI-56);{_^|SE5p|qDcj%ub8*B8Q6yRi0bqtYiQy5! z#Zf$CER4@L%onHfoPR?rTqG<(S>Ni7M;XHKH7o7U{NlqG*PO>v0^vKM;Nq8v#AA z&XMq)WFZqF(v^}Jc)8qkvR(ggZp*ri%Qh2k89fkhKk!rtt zWzrwsY~x?spJQ-V8d1jFb5@Hii&vLS+VAv)t_&>=5l$o7RuJ}#XCGuu>$hEVgeAxL znvx%NFj@1ZuNEYIcUW}!mGra_qH%%8IT!07zhtxOXgyxjQ?;KK%`B#CkC*bppt=&k z`Vv>9mV?I|Qa4&xW5`7_)Tx4F_}}HIh{~A|Yl_JAhc<+PCedq;yYHedB;@$E8|B2Q z_aY`m0b#9GVrZ0K%h+~4H5XfXTpGb6z83tfrMU3a=jN{|KU8m1inVS|IYiu_{BdDX zTbVvuTZ|*?aDXR7?WY6+A_Co5s9KQ(g8Y-3L@Pc#0qe~c(^2`JYg~jQaMD z_;ZUoylm97cjtSzejjlQ4t=5PI~cVV=2bDAWz%4%%$_`(TT-Zgc=IXbEDOEIKCx1$ zg1=HfU57&ksp zm;Y1@%fn<}H8!lm!yB~gm@v7g- z|5>UJsCg(5gZ3-pKcwyn{iFK{TW#iYhZ_6E8X4+vW9iG`9WK;8W4X>j$FHj;)=Od% zPQD#@nZj56bBj5qJxC{4jz_z$;#WtRYdM`qv&af=5_lW3s!N$AqGHp+L3Z^Ymg`%} zPPazNJcdQiJui4Fo3|5ezbiKAkXP~^A?|BeNT@g6=W+<^A-K@R&>k}C@?FAIGw2jI zBwsJ=Ij#1{E%E{G&JClKLlZt+CjUVX2Y(n)EzcMgKnMGxaM!0{Y1C? z92>U_1;_I;jbjRhzg|dzKz(&wFG^b5hDP|ZjiNPc9x7l4a-MX&b)1k8qA2tf4^3&P z9tp70PIFwly^AT3rkvtH|7KwQUti&m*4de$g!Uc|kd0QFDiZL!sp;}ViZ==GOu;IO zQxM+a1npfEFR2!xa_u>X)S2b~J2I#O*5?OLV2fl}w}LaBHZ&qb=gMSI)dIm{fFWfY zHI|6A=nW}WUti#hKn6>g)x!^pDiIOvbxt%RoU5zkHo9h$=4#pWU3c~uy!2$SV`V3C zr*j`Srp}X_n~bFi8>_cXqG9Ssllvz5XHx)42wG@Ak&DO;k_x2l_H`yRO|wORv%Y8I z=MDfz*U|i2G=dZ^GX+AdM)#u-gFhKDgIm-S6=@X>>C4z@WFSS;e%25}?7%=vH!1Z@ zCdVj#Iey!!`iC@H!y8inw0y2}{XV=E zF}7`oHaKfcP{cEiQgHLY9IjLqVINS5u6dzZJzr-)5;0-{*|6Uir?CJi%H6V~5u^Lx zt~dRmQIEoDPjqqxB(-QR?I#Ua`oleI4<@HcdE)Sy5Gq8jHB0jwupnwn0##Rmx?)ZK z%f_iuyt!X}uvt4M4au(HzeVi1BK(|m<^|BAl-H{v9Wl1KsHQcQgCtRHga1gkF&Y#D z&iyCeLPBm-YAf)ImFO9x-%b{T^Ud|+tinc1JcDE!CXDd|ub7_{O;8u@KU;kZ@9+1o zk9(q)Vy=IHFvz&m{zWx`EAiC$&$428SWn0NR4u$X%l!7_Sh7wSFWDKDY2q!3;xjUX zn%9cZ;IBC>&o3$I$}HxriEx9GZ(n*_6mT&p`8>c1m`MI+Eg%>md6;E}P?o{E6ZZ4Y zort})=^k5y9T69m*&n%ZO>|~p+4edU%*Yb4q&vck%;kBCnd_HMdrghr^OnM<3QWM( zN#z+}#&7wQcvTcP!*K{a!TIP_Egv2E_q+CogJN*D(Vn^A6B&&HcX}#Mn05; zOiK>l`UGLoZs-WHQ~cKLu{aDDl{@)rsCgUL@7hHUf<=lzQ7@_{)+2a*0r?G2>`+&P zB(dJZen1ZJjQ|I}!1vk=e-=vG;=HwH2$ySHk3IaH)Nq$J5{W{ZtpK}dX)HyX9fG%Z zNIH|6irUM(g9M=%_v_H>@BY{!tr*F4rr;9_1J(Go zeoZY?O_kJ^P-ifl?_xevs_R3tliA#BUN(FDl%#T?O%eCbZIS0l=Pyh1{@rx&g+3bF zr@LGeLU;Q3cd$IMuEz8|B)rFxFwX1+G+P@U^NfnJkwSmKJPgzYA9sP`)Meb!@F(u{ zla+qhAz0rs+!;_^zCwSzUj-7(lmd1F#1$GmGRSHq@57Z@Te?$}kx&U#U`@2`F*I~P zzcTi`4z_aa;StDCS>$w2!tz8N$o5E|ry^eZVr-%vJcX_MrMTv`cPCyri{-kz#7qMm zA!Cc+a?NQh6Kabq>+UDwP%xy zHdZ4?|EWkbjU=;-S=z>{z`n- zW!%67W}A-_n-+`RwbX&AbvcEt!8X>EQqcVQZ# z%bm+%0T1Urv?A#M|Ke|V0^0uAPtroqJXc0#=o(S;G2z#O7M)`K@(Cu1n+K#@j-GD|B#68F#*+8G3%~oQ9@jpjaB?IVYks>1 z37TEbO)r2g>r-djFUo3v?L*esG#tuv@lf5I&=jdu~h7*@XvZV#pqemQMM;}hqhg5 znq&9-LR}%0OvD(e?oIWgtJgXrt%a#Q+oy{Aq~&w_)bcwsMP?Pbx<0#@=sZ$K%9>l8 z;QTqIERgSg4TZ^kSXdTS8<+vG&cz~?t`USQ_ z7@gu`7cw5c03ul)Ue2;=?PYxS>DCEAQpKHNszkR3kS9y5=;OD+L~LpC8gDrgow_lc zHiJaRx(OTY*O1)v6TN+jogKk@$H8se@-Io;1%1CnxMJ>P1uUyYgp0@?7` zO+EQTa=pq{UDnM4Oc#Wf$xe-PIo~SS$Y>q37adUQ3=&$0wD#^Y)0zg)q2+_{QDZ-g0L=T~BGn_M( zdig53zM@ks`6O0C!<0;P9XFV8TyH)Uiik~%KWthOPG6Ngz5K3>I#d5$lY4iaz9fS|E!?iDL7;gA1*Yxro_&{GL}t+#l!47>etTTH>x|Yg~M3 zN!OC1H}Y zAWBv#S6*5;m)oNrieVOIdPQKC?Ld%jaz0Ou_8#B9VBzBd3b6GGheZ+0Y(Ig6>~dvP zb1@R)776l}WcccSiZ9Z9OI5Y02F`Mrc=-JlB%DVnDF<|(j(%o`CStfbeV?DDD& z#;u(FB?kMt-uraXy1SDBJHH>dE8npqA5Sg?Cz8;gU0(^``}k;&z^stZ1O>evVV?y^I3MoSoYMBaAAgt;Ze3zf*M zOSnFnUmDKqI(_4>r9F$J!y&HHHdO}K7>*+wkt$7GIXOtlO_md^TU3>#o$t8C`FH^>5+>XH3I@9SH|E>((f4IIX(WhOHdS6#r0A; z-^GSAT@r%vp*51n^1nxpk6mEUnT(Eh{alC$AC;px-&ka|D#^P4ZLkdbNd(oU<36b%Wb>^=;$_sWg)r7E(=i)R8uMATB~|6UFR`ZZnnwf|rE%WAedp29uSy8*7ebP{}pbhk+?1sa$ia4heVx=7MwMk+b~dkO~#(-(}9Zk1C(*X$&?v6y&lqW$W;$N7=d;)nHH_$HLH?_r^ zI3IXoS!3TPC(e;*iz>#RPE->52U_kQD4uHGFj-&*7bJWmQyWJpyC(Fm^wE-*oH=wn z+w^@7^R0>Sy*2S`FEv!-dskN@Bg4PWU>(?a9JPhmylHZJ!_Jgc494wQ-O;_Irj#5T zd5r~pFFH;0RE|8h|S$_L4skea(QfO#W z0hp92kwrGNVxvS?DLX}_f5Rj|Hjh5qM0>Ktmqm1!GF$4w*m8Z;l9GbHalu`5B1BN6 z2WeojnHEpSV~c^-{H-1?B&Y4Bhc6Ca1?62%Nk8}s3 z7U>>419wtQjRI@8KDVsVXz^r@uC_~Zrt%}h=W@E171lvAppboGo|xkH^1PPYcTBRy ztAN4l^Z_~srRsbqnwI@R*hm|td;Rrf$k!L6_0pHF;b(OcjxrO-n5Rl}ZEG-D99TlG zpz55*0qZ;?dM-N5Y1Wd?L|3=sT42NQD>=_hgPcbHOjw@q@CdKCZU(gZ#wMveEsr2H zxjxm62NiVJpRX-#E}CGOk1DLIwjoJSkwNok;UVrZWq#o6k5({{hL}_GLp>lMlcj3` zg*%HJT9-1c1X+p7a!3?hJ*1k`>kK5<>lRq(5?TL~nR=1Q?vEp2rG20wD`Dh@8>h*b#OA|kk=a1J}KEJG|NZ~k1}Lj>ufhyT&%{OE~0i4OrX!D5Jar}*Hp zyWECCew%0~xxg5W`z5uHqRVea0~N7=5{KP9j2p#wF`GSC3F*nW?)YWmaC;}ZS@tdn z2K)jrL(+WjEvV8vZ#D~qh+p?GtM?7Es!cLfyp%8Wb^+_yzN~qT!6b%FpM#zAZpjmapG<#E6>%+o0?o% zp;%FeA=T%Siq}Ys8YE32^l!o@MJ0;=b-7&R?d^Siq{*Z=VGld$qEYr?hn7C^mX2{} zx}kT5_e223xRQYVB8M5e8wc+3ir9~p3fh{ybp377cBAD`KV1p#lCM9Tl!FT=)|`qOYeAUYqlz4Ku$quT8s&1m*abZHgKMuw-xt)t+Z|a|nt_7259n04fO`E;a@LY8eK%txq@EltRkouA!pBQ2GdAP^HR)ir?_ zJ=t@OR5qdfff6#|umfMnzgdTZnVncjjG&Z^MH_REnn_?D=+lVjA+m6$I5be46{RF& zzmGc-+KmQ*%lrtCUK(MQL5S)`mvXDpaM|Zm>3y~8Ih$eF zCvs3MG4>QM>+;toT1M#Kk=zN^n;`%zjyXD!qckI!5hYb4*e<9l1d%8V#D?*<$gjVef>tsAW_INmVy=v+y$Ubv?{WbS-f@oaieCQ&+puzn zXD)zo)W$MU0w@Kv>cEp%+c^7>=RDI~;Qcp5zH0>6{6f2xibpSsqWSTwj%cU3QueOp zRG=!wkGYh>uRIgXSd{rDD@tXEo0v?VFm*uo+ejrM(1V$4ar}fEBG_5@ebq80HHoxx zfGw-}6TVY*Ip4|SPqf~?V4>#WxX<-5jgWTwiVT1PWO+~@&`(LJ5MbF|qPHY+mRT4P z$e-P&AI-*aXJ`Z@5bc@ldDTH|AN&r&D^R-v6)2kfec$M|bI3JWDA^ok0P=qV8|X8$ zt0?)C1d*c4v4*zxCiiAh)lh?B0P{ugKFS*vrFlakP+LXy8KNl$q&`uNVtLjwBEgbF zmj|Z-!ob8Y7HMCq*+?XcK>md=`_S2wO?YuKWm`uKiu7MJ{c_E8wQs6o;<47IxJoM& zF?yv73Ytj>xa`SwAixS46%JQ0g)a#A3!b=zOx>LKbHxdLG>S&ggLxDa$pWoTD2dnI zhiI0%?OM;&cvLvtpiQT~dE@!xCk;NXS3>e+Gq=cEoQG^{6k_x_FMc`h@)#4*5LCmf zssmhqu%?VFR{KF6ym-p3%h4ibuLnz-t=%2kM2)kxhW1TGd*akxF0D(n3B@ND80T5Gon1Q@X)8-o(_Ds|AMmd)mX?27!L<)d zwD!OQzG0=wE+{-a@rtWMZ5oNUn;~5E(%Z3sqs^rVL(jD@lJl{X^y}b*21UO2p3?@z z+U9e;c=2L2q()rNaAbaRS+d}@?A>ZK2dT#ue~;yx5Lb4I;twQ{E+YoCBCS${UB39) zPN&~DA}aZglrLYa0a+gwqcCwjt0;}H`L~-<-+MP&<%e%P03@jqq86^mU!+pvz>rN^J_T zmLqhb`h+@GiD268JAoVqeVMo$yT_e2_0};+nD}+yy|{q1mGU<8FshE?RhB#37PEm8 z>q<4$1TBd05)RpyQ^_CoWO9AR2Du<31e;pe)?rfgN^1F`P&cZ?t|8JeOR}w{vdo); zkdZ}^jVqJShhE+#0zum^E(RuN1J)vF6T4Iq-dfsnsj^QCAw}D!v)ET~S1VOk98T?o z$S_d*+0j8e_ssV@fO4AoF(+n<++BrD>MBdmz8bM)1v@m*EZf9IM8EMZr+HK|b@rjZ zqkvwfTCqqr7@Q~t>(c|jNNikgX?won*0G^6ZoWdma(l=aK2=l+-3bt7Q0lx@T;R5h zA(^RUO9zlRAPVini)pEZdMK5^V7!zNF`g|rpMgdJ9AvGL=6R!8_6wTLbgRJqh@P=q3(L#kTcS?9)aj}&t>{O9y&0D=yyNptk zi?3kUNF3Umx?d2C2h)_3<0KX;NdXIx5r@Uqe5Eq9_k6*nYP3@UC`(5D)B14tLaURZ z8o7wlb4&H_n|9W)-JWWov)DIoe70lI(9ZDU+sx7}I0}$+~XSJr_5E z6S?7 z4|8^hS%QC@z%<~M(yoo-oUxKs1h95K3K59Z5~id_BV!x17{WfqH@Db9fvym2MnQ5Y zU|HyjX2FyzMw9RGk=C~$rbh0&7*fElw(Mz%&LcrGpfL=jK1I{5g!8_Oa+;~uqV>Bdx15|5t?e*|94b6WM}>ickPmhiw~CM1OZCE3)-UiDJiM9=z?(xy zH5xgV{Y6tH4)06blNvJxOSCf|oIKt-99$q2@Amz_38=50Ccv{Q`wh3}tT(A2G9di& zc|bU2R(vX;-E-Lq7sZ1M|CNUQ_!mQ}J8J{Lh&;b&2`!e4m@UD0q=B+lf@0;_$@^@j zTs6pmZ*-`3=^{)(Vw(_57s5nM4rq1vTKLxylc$=|*~rOgjItV^9d9*Lymo%6dS1Y7 zeP!R!Ie$$fu`Z6k<6Tw9(T7x8dkR;QGWOrF72MsLX4Gfh7+MzoW&`6%tyRyXd3qS~1i z;FofrP-QYCwvkRft6+vz_w5bvO_+Q7YeZXesn7BaIvwctg}Hbz>ZZ)_uSQffttOE_ zMkvTW%5emM$X>islCH$rz|3mqi=U#|Fx)6MhCC(S;{%5@TA<4G&U|W6d(ovb_3IR1 z|25++bY}*vityICTH%Xrg3~AfWMZsiK~5~~s&p*JLiIkK`a@^?#^F7e&A!-kDiIacWB;2RaJD)P-=%9emkPV$8=5#H;7==Wu7TZocF)Yz}mI5M*Mw z^Br#{zd&u7W~8H$tREs9EtRK*R3NtbnVZOg<$SgNND3c33QEtUs;;(>e^L^`V5)%b zbSmU2#E&zhHEa`*#}%<&6L5Ncd5N+LdE}YCts@wCp+q0ubh%jy7suijsTno~>SDl| z4M;>NyuY#g+}Mbsk>c1z<0=~@;BN$(1%ov2!rYut5|ZtiHFVv+vt$tYw6;b*S+gpQ zwm7FYdVNV$C1H4kGQg`5I;&vndg8mLwZKAZb}lcG(sY&&jds#|$=}>Sx65Y!MN>B= zZLgmvgi-+I>HeDEfj&8-Id@-vic$O1g*#J z2C8;))}c2^-zZoh!^^^vMl~s%aPy6Q3i^v!Mm3&1VD^_+vKJ?Ey$ZN|y3y?IeNJxi9Ng_#t(^s7snQ3;Y#aOwe@xosvTSR2K;~|x?Gsu(b$5rIf z-erNYn;(Pc&}dHtSFe0F@{QH2lpA~ELqZM|{qU;raLmxPyXp_u!F=10fu4GIi?jd5 z)jLL47IbUdophXZ%#Lk$Y}OwBxxIz3Y8OQsb_$fmTjO~rcbrv43vMj1OeOzJ^YVCKGvvFKwMEqW|K7HVk0~0>$cR;g`grxsi#1CT438`L_I!6&dc!`+`$E(CcCS^T)da6vj;7P< z@E34vAYo&h|8pC8YrE(S2cQ;tz!NaJU2I}Glp8OU;I)Utx14Tx=@T=)Ta$y#A~(NZ zIoEpkDvJB8=&gHTdIm>R6PeHC>I{uaE;=%=d!gR&@?aH{kasYEZ*QHM-`+JQ>js1G zYyi+Mq%_uR-jIHYd{&cuohDuO1HPtw)sDKv_NoY!F86pm`YL0{${0qls@Y38wE9A0 zq(zdQ@Bc9s@q>2CbjRtXkS#Zv9KF@oqXxKrkc@DArBWV&4jUgKLo}PDe=%Uu15Dod z$jHbsDJkm0agUEKr|TWqv9YnOyv)o>*`vc!^c@9>WOg*ZRw6BR&KJ6`fZtWIFr0#E z-DT%nB?Xd52!$}7$E5%uZd&@iz0`Ht1N*oeFK07=Wzy}MfkZ6IJ`g(qn1ts?@J+R{ z#=hs3#B%%r9PrV56P>s{?wbUt`<}Yo3_4B{pn#RZR>{is%G~2=XnsgMY7k*^T~oNq zFT-Nc)yTnf&U$^pw$uBK@AtoV?l~1nILc{T8QTx?n_7#J!I5u=7)E7Z8iE@u=2mAU z@VC~Z_shQgslx}UL#*JvpeeL5)L zULF=z3FB16KxydoI<>WuLYQ^|91RpSv@eBZ-wG)QhemjOdV09``;!>8a>gFY>;t3W zz;6_nT8rgBrt#-m32X)+N~zn!oz%q1|FA*B!^Wy!4PGg;HH~wxypV0ag4ph~7+lt? zU(Sm!B_J=g^ifgA7Ihx1i=ZJ?E?E67NCwlo?po8he0LMH#4(E@*qplD;p?;yg* zKWikw&&;%z8U1ya?Fjf7nzGi+Qe|pJu9XrCb8@}_W~95Nm}u^6sFgpa`9PIsg!&5b zp9?V^ao;Z)LVf!t0?=C+Jf9sbHac~v6$i0KaE1L?yol~hK;d$kwr|L8cA${j{$co|AA^8>+36N!$ZW|jH1Yb|VzGlDE( zy!j-vw}a;F549wbjQ#>b%d(%&Sqi(>y3JrH+1|L3t68C9gBY#8=pg+lpDCXWGl)XY z>-D{u`fIPlt`X|5@raPJLNA2uNRVoHHFWPtTw=QHcdn$@TiA)?>2X?^#EL%-yJZ+5 z)3$d=x7PRKgFnf*Ys%sH4AO@Tyg=Uz9)aP1oyjUb*P2>g^o!cTy8ftSFq6U(ghn@+0Und zcC=9!8$nIaje-_8PU0MOavJ7FCEYdphXsDClBO$Hg0F9D zZO<+aAF`ZYlCN3gA5=z?{?6lU)|F*x9vc(i($&-7B}^^1y_`hpasn&h%tN{64a zE4(kS;33|S;cnjjb`BI2##@iYVhzi=od@lv3#W7^_p__2XFYe11Na$=o@+d_c&&^5 zX4dal9#U?uZp4+&dAE~@cYd(n&=k@mqkiOe*ke}9G zw-tVx)hqPKdO9~;DHBDdFu1$+M(8Z-{4E{W=fr5V_*L~<%;IMM@O{JU@uZEiwK!YX z0~@zhr-H`OOtsEr{XZ6^LKNVsE`VxDMKZy}#4C8{P;ivjwBvAf_;Krrjp1rp!NqZU zve0?cq#;ovnZ{e_7X|F#S-7{-@{wHvi!oxFQ!6GQC~Rr`bNeg7eeu2U1AWnaVc-W0 zTHClcO(@`L+W+AB6{Dl^8_caccuhx%IRP3H0gqp0Wu3NhGeNGXNP~Yo@o3?ZSO@`~rKy`~HUce;!cmqtLai%1(Sxd$ zu)aKl(gM8I>h(>Q0Cj&U8S<`}S+$SCuoSsJb;l)XRd`9ox-iKL?83L{*y z!pb_8?MN8efV7>;UtTDrM{|b5J@4P+7@{$BJtBD&`IfL?9&0cD-i$FgLiS7!eh#$Z8!m=5tkf0Wi5zV4 zA;8ZJiV~Oi=P}j21!RscmcUtGg_zId;3k4g1Lct4i+R=`4`q!3vG=kD?B;1Amg78j0nN;8!gbr!OzY6kU!1jS zr&4ZSvPq2&sHATl_#a2|S+AUKnD>=0*r6ly4Nh;ORL##?RHHgv85{03Sq;rI73p_8 znmRUUE84H#>MS?rB)ChV_HOWfL40JCdoM_5`&5fb)EJAstEwkmnaS&{s9P-g2@MBS z7P<`IEa{%2VQMilCMlsJOG0m|x|Ddn9&n0FRn(tJF2|?F<$$6# zeMF=T_)BSrgJ|DLPdAeC%yio^ZsO3<=$(u~XJ+u57} zi9W(0HK?q2-I{beZ#ZU^r!!v6dsoCXa8M-maDhWJ)H;SC@;v;ruQlk0$*dLg8xQLdsyi3AS$_3+D7@eS09v*B zy%6G;%js6F643{l)S4`c>2EEi-(he7-*R^Z*u;h7wVVp$vj4mopoP-=IP2MYe zjecmIY#6_Q6)Wr58+7zXjV?81ePEccw~TF>c_PWhx`O3?@SYK!dBL*6xu`N|>&VSE&nOoK$X_=z z!K}RBI0C4^+Y@@VoVO?G$=wcwDOi9;ohdZQ=~}gMxaInoF_t^uyN_zoP^2yGguE(p zV757e#d^^Tr;;($_j*$#VFjXE!GbvjRVtnL3z*#kld>^OF~`iV*BCg_xX6hrMI|}! zH;{HO9TeOE&*g+@+^Y_4eL#x*vE9#yV*8XCxDWwIsu?`?bziNY;m^q0tjF~b7d7&Q zsYC|ryYPE@_2}nS@}#l2f02ofN%5~%@i=DGeocp|mhec1P0%{28P;O(7|;ztCZWD# zzps2-J%n$;GCjQMLP&s^h?Gl0^CXq{lV;KEqtB}#epNH_>ipZEWTy+ z2X2pB!Gyr}B;XIBUh`8Rb~KM4lhpz<2p$&(T9f)Hh?t1TA^r0>wxVnE7o7AwG29>G z+e~`?Ru^QxXe5;)X{{!n_p2=&7L)LxEaUym@0kLL61}cYE4>AF7V`xf$5$eMR4!M5 zSr|UoTz^4?>%JL)PKD<)LI)Ju{)y%QE~?}4J^z$@x2=oi)C8fghwSjMItPos4 z=5=WedY6XY%1DOKyU!FNdZvliau6|ro1pSnde?Z5{dhL9eCk;5p!CandLq{(bRqjt zch)@itz&wn8M6atK-qvlH6)+^uS~kWPhV%X-A!!weqH736YL(uZLn0F<9k;Rrcs>2 zLACY90@jh)9F@Z;vRXzy*TUaCRAN!njmjp)8L`97GXou>Fx=XJSR%&$zC02(W}R%k zqJMVqR+?3Q)p7#&p+;wRBpAC(6pWEtW^9Bz?GJwuK=}e1gpj>i@4?u!wz<__?MzFQ1oEU@xGR z&&9}@Jt4r*95GYh2mCcdi9ogtwVbAQP(KK-G-TCgwh;`jNBvcbS~;67cZJ2me)qnK zRp=rkptfd)x+~Pz(=CAPMtb!U%kc$GH_mn7rG-d;mx@4dcLAHMunc*3%DO#kbIxV)5|ciVmWOpz)EN< zU$6QfTuui5QaKIQ&Cn%lG(85JYNp!V+(aARK7+fMjU>A~hEK<&P_1iIJrg~I)L~+= zJsOOC*E-B2hD&p5M?`i}36tsPfmVy%a1q=-Sby&_H z5MQ*H{pp-}jghk>_9U4%%%kDKKP;lxxohf`b@w5T5+|_LqJT4&DqWEV@Sr<%`1hj>{@izuCf+;r!liJ&>YG01fE|pd^8C{#$?wy`{I}ISYX+eDoEIDgdtQat z;?uQa7irh>1zTaJ=*0MBBQ7;;BaFG2gk)6;AM@Sx;FV~QFDTb<6foi9EVn{5?0nBZ zp^Z+U)DqBbG^B%MMTa=Ex1#CXb?*4UCW$N{9|1HQ{jD6Z%5GyM8RFu7lh&Rgt75z- zp}9-sz`m1>)O^Ho*RNK{hYs7kg`pEZ!P8pGj!o;paH_(5aIB8a)^*toJI zQ!(@W9(dKO+b6;%J~gXNlYWm46K33e>M(Dt&aRJ4)^(jFxzmQkbKa=~UL9#~T2W?! zgQ#9he`H|m@&H-SxHsSCxPUX9K@9koD4!!A6^o^lZaU?nd;i2fl%C{DHpTK+2pEDS6CZSDE4(k@@{c)J)bYn{cV zDdj|dn*TyhD!}DcL21$%m5mk@4RcSx1I{2?#oRvvPVV}CYdg%o4U|&e&x)>9`+a@? z>``$s;U|!(Td8u2>Z}ggma29HeN3)9c8e)^Y|(c($MFkZbcmxAV2H$!`N6Ij1pr=KZ!fX^*_(0#wzUmDdp*0E!8y?9tXJwF{wPqjX$YqQ>X z!D9+s3`2&L#dxKjN2Vl=E*itrlcifG@k`^3vRsdPvW|`waUg!X3L+(1@9g}A z#`_Bl(^oO7yP1^-oILROqd&nD8;L;B%^`L-Kv>@GerMa6Oo>>E#P|d2ah|+{I)XTi z28&t3g|4D^PRP5b+T;FWd)?Ula&=INLD}fel&Z%~e6nnqIgq?ZvmgvE`PSy2zK!=* zWDI;6m+=L}R)@TTQJzF^55fR6LbuNK%Hce$2e(Ub${UYj}{F`WLGu!7CMKv zSpE>vG7M4T>?S*Uz&<;Yf9_4*1x8R)3;~m|WB(}IvSOqdRc3QcVBDNK&Nk9@$fm%B1rSrdmn<>?QYIxx|a4!xr^? zbs)}H&&zL;>n`5fU1&mYAPRi+a;}DO;5h1z2{eMAQmA`vP|HOcbHP11qB8-alff2I zo9d5-|I%_X+Gvi!H+vdr!$0=o)X=k2rtlW>)6is93HYF?HSNL*0NuH#KO6%I5z)u% zt*-L!Y20^ICfbM8%St*L^kE1J6VkW72RpDJBP5ZmIzcDAQ&7|`?XpUp`WvETwXpib z$q?`MxDmiW3_YGWTlX1iTQt@X)eQSbE*xxl6_Pb0qgm?l_GmSQj%A12A?isU-fN|o zBMKCw)!7@6sxpHl5r5Gnc5 zdVZ8!a3BUW9LueZ;{lVlAGg|%wR6Y${yR(%Q6HqAU|~T%{)S=V7o)lJB0`f6m8boj ziRiWM#alCe9uld=HWH&WqB!}CKMCj)RLWJiF1kKggWMK?J587@ABzXSFx0__5@3K* zhF--s{39qQy_nSce6a7w zt#sd zsB~D-bM3wZ@63JFbLc6bDCs?kyC{YLW}J|)S8UcK2nw`+#bx{HVS0Nxw@&*>sEa4T zE4AQ6D?4AXW8Vhx2u$ayoO-o)L|*pHZ(*U{O*@^8W>PUnMH zd`;LbYO0gK`vR|>L%y#9P0M_f19&0{s35X14!uJ5MYKe9WQ>*hu)Ov>s z0QB1gcuFXr}8kO zGL(A7Sm(OzbVAWTM(=p4R;!W;3O$7YdiQM>oM9g7^ypv*)V7}K)DwrN%CSzDSvz`l6IflUHN2Wrk{dP$ z@b#E1W~hRKf^&|c*g>pJDPtKNDCg(rA<@xllP~p?yuBUn4|8{HR{uf(Sn1F6e=X?o z#vvYlGk^JbjzzY=igxoukqi!QUU#j|t)O=nKhr8;g!nUasY&^V#is|irt}2-ASES~ zy+JjVSU#V(T7SQ+)|T>o+aG>|LSIIH^(!wMJ?vhPec`e)H^(G4Yxsq$P^m%gs3+6f z6@ag2N%~DVc=62w*&oJn-Q?7rz1ET3K(H6-h5_!RGb_?piB};y9N~Y1SVXW-xycXY zo%WQB1s6mNjrw@=j7xr&4}1Msa`}Lu6=!Y{`ED6ZU*)ZA18Bt}X{=8qdA-RbglkUB z^p5w(OZM&D6b`RHP3{BSCT`_sw z{wR)Dy!?1>UkX`-r2!W2PkAu9(^VQPI+b-lIy~NRSU>fT zum+={Z-wf-4QB{*rY{lgS(I?&4po#ODkqXzaS?x%xo@W7<}My9_V*0%P0)NJRF9OI z9ql8;(=DiM?{2$c;|G4O*D%(N@<^%Xs&r+Q%m}YC4=V3$c>%-S{Rirm$)o-9i*le0 z6_41uimUkSlQVq>aW7V)IlOEXW`h}sdmW_@s=c*gI=EaHgK#i<*58s89b0=I#G2Z1 zpJ3}|JX%Rn71ol32*)2MG>Voufx%%K!312z*yehAdh8q=!}d(VQ?9aC4-bRD%_bCv zo8`)-L>(&dc-$d?cwx8mbc1uRd}2algGUfup`5t1G%840LKc$UGl5s)uo#SRBBMDQ zC#M16;)N>I(uZBF_-yUw93q7Z<4)iz@ONb(#t~L+h4U{nlwE`pvnG6!L z#g1|b(AA+fwwO3fNOv*vxr+ktu;*voXYnd@$s_53EGn55w6r6W*)b%d(aFIX9|1h( zF!pdbKHBH@(u_0U0;#gcr`R*bD* z1OW#d49|$1qM|Zmpeq(Dj&KnyGSlhrC_)pRLcDpE+iAwoeHKo&mAC`gKy(d1l9duB zcl9217q|$134zV+ciQbDCLvj|;q!QVE63IHkR~DP42+-zY8wZqM9LVw><%J3{Jbyz2 z+bH-&1=*;1+`S8448vK2mXgjInQOcTuPh}i4V0;9DQx5VORPu;9Dncrg}_tmc*41K z;{!E5$&46+(nFK!fOf3zbJlalXJF6SC7Qa)&*hY%h=ddX!S?d=7O!F3-Lf?3R{0|g=5mO`TVL~9LTq4mRF z;Xk2wwip>eNkM!E-P+++VB+qHc$h51PBnj^N!U*JP$)oV>U~I44rJ*Sj~Y5}d~tyQ zD<7q1v7qGz_OTD=deVuj8fL`+^aRjt$-!qSSH0BHqsn~&GXAoYrh#Hq zE=a{;-u-DU5tJi$d8fD;8KinD3M*-C-)xK8Z|_XZDke_Pm4aVz&Gv#2Ve*0O~Vp zO|azA8y%*@es1IY<;0Y1gXt9ft^7ij4wtC|L4Hp-eP;-;0gaBax0d~0s7RI8c?EWk zQ6~WIo=(zAiiaEr-25atiKugDxqR(YSkq5!$beNiv(Ir(XmhI0I3AZ`_$6+d+ z%Lvp+w5&Twm8cJJ1|P3>YJdI()o!s9nMiig8!8X#Nv07vU$uj)C9U`x{g(-;hH~Jm zr@}Ac+#j9;V@UrfQ4qaOn6`=Vd)S)G2r?>(6{)x|L<&`!DCyok2Roxtw44d|^)Z1I zwAO0H0`B!1rFYwyz5u61YWC;q|SWDwWU+)Mwpr{*tPkk zxp{Cn^4Q3D843ZNYwMd;aD}v%tt_@qt-{4og@e=rF){R6KbfM^>XH#uC)4}@M8Yc{ zE^Cj@$e-%IYy9x%k%YIxctZ7W{74A*ldh6_lpaRED4g`lUyS zcJgh$!(BPOkB9-&n*jsysZcg zsM(h5jOW{_CEt335q9F`l-bUx)vCZ^w+H(A#5=OG%Kj8c>e!#>TX5U1cQ$ea|BUPO z%(T3eWgguuXB-ZYav?w1>9r-`>?5g{mbDR+R_BPn?a$m5?WR9W8d6toXTRL>wi;~L zH!QGYDu`aYq#kk)3+IwtyeEQkE(*%b-{0RJOX+$>!dO_{Tw(yVZe_i$JZ8hD zB?I_9V4$pxsS*BINDN@_pGnp~X3JfgL(h3@!(xJ7L8gjSB+c_QB#JAj-Caff3)Eh^ zCw!D5!@C5H!0$>WY8Q3y{hbeNr-!f$=&lzaQ57FjR%+2%G|fzU4dP%+IR*fVE7N}j zaraNt*@)J`rt6%j2*F$t9I`Mg#b;VMgb$*nrLwZ~YJQ1kNc5B9m2zxwS_F*=&2Edy z>9u_{ zNiT+A74RTjf72!n@W3nr7{j;wzY%)v`2#z#zL`q;uL+Sy+)y zQfLrQQb=SODyXapHlLV&D==Twl{=n;6cT<-?FTW-ra)?j6iZm&cjniEGW_y zWiFCGpu<~tjrz+8YZ;TZPtwjmLcm=BV?g{0?zG=g-Q~Cs>O}i4)bq4?Ec54l1J-&n z8$|BIBATG<=R}f8W;WXiZi8zV+Cn&Xv^FG|fhCXaKxb6H@%yy?p>`oAlzhr08q&Sv zMwAX+I0!KtZ6OqU3rTlUi?Vd-z4Z5dQM<_*m1a67&KjT~=VOZm zR5~qOaxSX~Cc)8^LTue>a95a_PXmkP7~)XI?Dee8&BG_Ezx5q_RK)5h!W>(zXSq1; zlXyI?MpGyes#EUs5dTE}3^B+lQqJU*tg`HeYLHD9{v2Q>0bZySeFwSXksdRhy!J&2 zQ!M+Ysqi2$e6|j<3_8Ju&E#s)zyCV_R2N*yuwgx02mi*|l-S=_T<0)mWK>XmP%&`u z8Fcu;wu#>Qg}RDCSnA3wz$_3^RM9CVif)u!?9Y*b6ss6dFcn7NGfC%FgFkMtChe&j zGdxuo=zf_A{(`M6xsjG`GO*oX9-_nWUT+;Df3+!tut`Ju)%Q0xLI$#~xY}8{9cy-6 zZ2>nd^XGP|`;Gt(l4IK=KgP`yev}2}v*sCjkeSCZ4b**-=#G`09=6d=A6--TjX#@L zAYX}MP%r3umEcO^RQ3euSA{@c7~V(P4zfZ~5(x+NKO-Uz-(GeP;FAZ4jd1*p7s}Q7Pw9mn z%;Jn`6W1mANf{2ZG>MF<$OZCWys2OV9p+JAwFjbGq=#0e=j>PuRF}P+XBAFCaS@|! zB`CxNmM;-OOsZ*k^U%L6SP}Vt85jWq>RDY(wuo#GAGj&P1NzbFj7Rh0p`5T^ z3bM>>C=VpQm$4b|grP`Bfd#T%Oh^zS$vawSv49Vf@5TO#W%J9l=)6W1b)!EhK{NI6 zL#`doM|hRu6dYC}F>anCpI zS_!qaj_`?sx~z_h;E8?TUHbg+IojlKHH3tN*>KQvprHp=YGBdn(#LJ&FWI?y2`-xR1#G5Yh$q|?k>K>3 zsl3MhQ8GalW!&57V*cCc+j5RUR^gtmBfpP~C#O%J3NR}FsmJ@qMRkuW9TYGI?zfmO zw8sGexyg&`u0hfx8so=d>B$ZIAR#a5&L98up#=zt*P3@rNWsYRrHO@Hq`xZ;#nU%C zIW9p}C#e1MfOm(~)e_nsZG{W>(dT;$!o@Z>{H*u?PuU-ZFvnDwg(J{hq)VrISBjkC_8|Kl>?=y{~0<`G!U5!RO6^L2=u~;2N9vo(k4BD;J;tNCd1R7 zNcBX3MmYTs4__n-MBfS;uL?>;0%F}CsP_qHG_)KdQ3>se$BmxVzZWPMA)w!Zb}z-W;?U{fX1E-cn{wl)r+K-h{>SObtG9Q{AYjx$hj(5FkA#TA zCm{MA32~JVxYvt>5PhBm%eIqBY7$&PS~`!6qH#DNl7NCN&cL0B(n*}fg)DC7Yt`PQ zvdD<#(+*82@s9w3y~|cwb#A-7+kNcou1SRs*PS>hw8>I1qHc&p>J`6SNoTS4)RuUM);pk~dp+Hz^(yST7pHw76!v2PZZVX-VwR^#eu~`}Whdrsr zyDy-C+(*u$FjP%^&eP8^Payfv3KmDp6hpF4j5e@-2R-d^2h}?O>z;? z5y>}qwuPMp21D!RyBQxP*RNELja)QOa;Km&QNN-^IHJHg#O zJ`3eF+&~$SWqX837TSpBV^~yf))VEo2KM?qHlzRcl6;UTu%J+PGxNr32>inpgCCxW zH;*oY7rQ=?iPhdC>gLOTQ-;8r7--V+N7%$AnnpJdeGy)-CJ-!R_YXlLU@etojYvhc z@^=<}RXl^Z>&4(&6t5OHVPpDSnhUN{()9U@G}W)(qe}%5tRtmgsXET! z^!CdE_n8AHLwmQOIRsME@v+YZs-T#Y_*xgdfULBJO;-*$JpBZ-BZ|R92?kEmrQx0< z;CYfe&&T$>Kfx+MfRswTm+A@=>%R--D{)S^bJ$EFT@Xeg-Nl^{0mt;WD+RRa^FoEk z&8D4_H(}>KG2S^j=tVkoPz?>I5I4*|(L{sXp-3!{HzaiyV=^zd8{#os&hHsp(%!Gl zfyM;g5NM<7ka*z#6JLOwMiK0mF|H;#%r=RPwjYU6-#E|??ZMx9ISliMB`My;L!&LH zQ6)IR&+x-3JDhi=FM=MSNDL&P7zj9jefbuo5quTJwx0z<3)9B zmT%|_PYsMG5`i2VlMN$&aOaS%rzpQS7!_-YKP&xx;yzlovxn$YuMWceD|fsNTI&U!#e3_aF_uY4-I% zj`jY3LYZiH8q(0%9|6ILXcoC#;b2JXt)U|+5`HTfbXjjlgw)~hK~~Khf-$*TpFe7 zm+Rz@+ruDB&pQT2zl_wcEL;vFd|-eHb4l(COsW5iOejP#8Jqe&>&@kP1pNAZ|H;?X z!C1Yy@DZxkgj*RZEK)nZFyAk1?j{$4+kK*XYz=(6qIQljhTgqX-T0)yfAkuZh*5={Spu@`u& zpW^nlhFQuRYJ$S$qlvIqfurfCZ z9?U)i!Nz8#!9bIuAM1px zZEpX~Z>dU50=;(oSql%wG@Hu4ghTE4)`!L29-9e1fMeL~dCvgCSKX&q-c#?8+9Q@dRW8dtu8KSV?FNpEOzmkrJ);D7LJdErK-hbX*TpquMLH)OLUm^1 z04h0~9QXaLl*{oNeV}uc8R)?kjEYmL$OD%aZh1 z=uE&W&_5&p+00e<|3&^A;+nhSej6L7p4A(Z-&jh&jc_3lx?6aHZOm4!w3oawjmuS3 z5guPVy{|5g$D6(HAVwA|L&+g-Mep__=NFF%c6*G6TkI}oSeCdra|GX34qu=7AHkF3 zb48>?<$5CHO^nl3;(ztbkD>qvm;CwYBta?mVX74&Hvg0d_W)v_`S4wP*S14QY&>cpu!?cnt8 zkwCNOzMgP^Hp;qFxjmM$RVHspKDPJYhI}sli(Nm6%q)?}B%Q0p(`e(D>Y(e&Hb=M0%LDACQYxSqESAGFhN)w_#k@ks+j!xy~ zV}A?`o?!GYkITettc%*Uht-pApL_O+iHz3db3+>J1**YYV{n5F|0csLbBli0ohUlX ziM||#lnW28xdB@Gp&iZ5-mu@Da0wQ67&V;iPVA66Z6tYPTHK!WU)n=2>9iDnYGRN# zy@9wxlK*kN64FnoMIi*Mk3~fZH5=#Jsy(M4zQ66p1SC^JeM48?!&A{rlss;D{CE(+1&Jc#if`JCviLb6D|2UY2xB2)^p6VVzT;Aw9<{ zxYJHoSr3bOivXV}P^VzEP0zG!=KoRkjnR2+UAS$UCTX0;wr$&LY+H?O+h${%jcqr! zZCiKu+;hG=?ilaiWNfUx)|~Uv5!gSYr1p%<{M47xHz2IV`%{QDnwR@l(;%(F>fjU&@HP_wAXh5kS>wsk`xHIh z2dDa_W6YiXTBAp@h-1%4C1LeaUz{Vf~p#k0r`Vl>j#8*5i@~fv&LJ&Lx2%GW=q6k|DGEaN3u& zA^Q?~j@G)B_Bf6eXx}=IpKXWT_Pl1ii1Piq=%g)y9?1mPkr%0~Xe^E*MATw(I`NQk zzkR!S_jiPkFdu0Fi{aKVNI^W-My@u z?0fA92u*go0ZmV%EXHywM`op%N*rD;j>$Gtw>g3hiU9Z-MKb}kA7ogcN4g}AL>Q;B zKs%zg3)h8Li(7|kdo=7}fNF~l3RtYmW7Gr${`^sv!8tmBxur1I8(!GZXZwBN3i3>QTDp$+S%+UDVs&QweWkEkMf zz&c$lW*)bxQ&LFh=P2;fo!5WiKwx}d zMH+#Hx$7v5%l)Z?I)Zuh+bCLGPi%8T&pdHh0qxIAxX1FCuv0APL;T`TILE zp&KM7pisR9Mcy%wZ5xO|tx7$0rQvkYq(gtON=1XB3n!s-1oc*nBa2@eZB$*X$OW*- zSbvOw%@xBs|yBpMh91^-CD*4H~fTf(5aC@%JLikhf& zxm)4g>qX|q3Jm#!?j|UWi7uE>{aMTSRHx)OUa;cTTmmX+wV`auN=LGXY8h1oJkhW% zy?QAI&r=&$)pULZQ*n&%;9hJ_PnCePx@BwdBvyW?2J(ueR zs_BzO$xEJFEPBN%7R}~I2-zVxTUunIKFrx#YiBZiUI$)yx3X-MKpnzq6UZuj+q?VT zaRrJCS``@`Gg*9E3I>enhd`cSqLByT%n;t&w?9n9@U-x*^07Zt-f@19|H6wtl8M_C zCcwX-k^WX*2bQ`(Qp*`?vcOJr4eZTmuE6GnLfinMcmQ$ft ziN|d*4`i>K_JyE*Zo7NAc$SwmSZ>nog2geQ2~t$dk1*0v0^0AzPG8 z^N1pGGFz+b9>u8IK!-tod90r4u?Kt-??&fzVJ1M5JWUJ=s_NDw`Hlq$9^e zY*jFBUW`H&%t}oUP$w$Yq$+;mBK(5Kb|VY6R{MtM-JzDOev=E6J9g|CmDxE$P9pJg zJA7jL6)`a*@^7{y#LY62Bm1g3@N6F=4YLc@nX9ziy8oAz%lAY>5%}A0qnIuCq>U`2 znC&|%0y(rytT|6b2GLIc)VL+UG!emjz>XvaaL)k|9CBb1eT_dM5Y*R8M+jm>0hXuq zk@?lFgshkFB4Mz_S?-6cH6Q2@=h!%&3hTYzJ-Oc26_@VD4o)m$e;za7Y=aOi`3~ zfqER4^Jem>@MC$pqNw(l`zSEj0_vbE$z*mr>@@_sLVRKL{#4OdatG~pVJ8ucXDf1T zIUzf#EK$g2{GD}j{!`7OGe-HZb9wgC-{A2r4ZDbYQSwtjn|c zmpoXcKKS#I9N|HuBV*C>>^xN}4;o431>?FXkmm-FIEuy)*!$)3f0BG_cO9e^ynK92vhr;&XIz9D%I;&{WZMv5zD?b(tis_@ zGq-p6sk-;5TRLd0{kZbDtmIE%l3@0CuEbHvVD#q-vT0JAoMT&Qx%6nepl6-D@J&&c zEK}!?WuFLW7*c?r&OaQO2*0knEU%Ck0t+}Jd$g5WOpGw5RHHH#1UUHQJs6gD{HQyy#Q!34XlieKZp z%bubTott$mwAvh`8k?EAJG-%D{YoAX3{8O@6oH`Tt#7M8%8*JPxXg0+ij|2@FZf&T z-Sk*-A)-G}@%b|Lx^F4FxRby@fA)VFO6Qg8ovw+u z^|*1uQmx_Vwj6n9yeyNEZ9Lnlm3s3jdn>Q(DCFvkpFrsR2*}!aQ$+)N??HGat`ly% z+gW(Lxyfv5lc#oV>1^jg#r0~3nM86iv+t1|%q=aTA;DR$CMq6S4jo&2Y^q&!t#|W4 zmb{lKK;Rbnj?;Go&{fj}N>a>5$^8o}6j7fNtCGs#?)pW+W!kyF*2~=^tI+bIgA~jT zvl|y^ZnRfaSgo2qAMZVXC6sM26O=+RYxxoooK_ORB`rq5YEIZTrKGK#<{57init+m zSKJ5Xl?;Q|+pA&kEPhdJ;YXCp7Bn;y(58t*m>t(%3Q&k$T%XOil$eEGda%0RD2ocr z8JKv0$x157FUY?n;v*e;9*O}miXv!bArVjW6-f5N{3f!3miZ2{n`!y%9dW)y47B!p z)Klc6^Yn+~LIcXm0f+=>(4U}csbPi7e*26@-hTZNK@sE~djfr5QujU--f~YqG1G5? zUVV`y@}epf2E4a*c83dc4e#Z6rBa+!SJV0Mct%v<=bzEBp>#|z+h)e*4&Q9R3;8!a zJlJ4`f>R0^86WJtHaZ`jHdpMB4D-=yxH#{MDh0!%!$b}vR|pgdwG3lRXmF$yt&UoL zPnO{vNy$jZ=hwSxsf4u!D>UwsTt9(9=uv$zWbb!Ty76fm~8{_APzeNQQl@ z!36DMsXoDQct#+|)czas@g=N_ZsmDJ%Lc%;0}mXFgP+{4cHL0D^N8SngzZ3<>s9J6 zGd}Hbn483*_=;yl*yGXmXdr`RA|AC0V$%Ez!QhfDDVnj{U0 zenkcN!+iJzh_&j))=1wL9L>1mxL8Kpd&Q3euuZh@2ib%Oi#{>qTQ&t2lupm>_|MTH_d zs;a|>rV5T?!ltPr5dY6ngA6hFh%JAL6qc|`jbKzvkNq<2GsLfr6kR>S{ViZ5>{A1; z>o37G)Z!{yn{L9hXk*(Av3o1;YW(yFoVnmj*641q)R-(FT7sldC1>_mA?I=jG&DPgIS#?NCM_0j7oBf?QK%K z{PoqF0899J!cA z0GJ$bg*Y+GoFw71L$R)!TLdE6HlR%HibI?QX3;c(tlJnQf?X3l*f>0T1TQjb@pr?2 z)eC?aFw`g9oeEQt>2pn&0V>>@ya%P=hx53xnbZ;UwIvthD|LZtOhV9hSthM`?SwXA zP$(T9ET@vc0toD?Cx}pr0pGWjZ!&+On6NMa0=wp$0NQUCq+MIzaJ0|Z@YTa3T|--z zv2J?2Y0w52NZ5FcuE-`2Y(xXDP`Q#`;f8jX&3|DHc*BHm)pat0A}wF?^n4-ygfokp zC=Eqb_O`m+=9e$$PR^)Hw~d17{!!WCTNri^gr+ztnndW!&v9{_C#q;kz&|;y{NnN+ zJ{1@6bdlxNKR$DCx!Sa~SfiT?O?(Y`J2-RE5mp+_+}COGk)WY3MMc3}Oj*m>PSM0Q zBL1u2OcIh|dZxyH3YS64b+#QGqFfmr;6n?XytmI9C_e*J2(8z;OXt|%uh3*#R=aE9 zrf(j!OoxjiTFJ1#$2I&gNhh|OuLx&%W=p$B|G~CY@&7L58q*(@S8gAO<2imZlH?#P zYN^F39*_-)_uX^&D3;!4(JxU5O)*Zm^suFv8S;>k{nF{sg@$aAZnEp!0|Q_5fu$W6 z{pk&?`6YmmB;tcrb=!Pq`H+&IxlDYgm$&mZ3bg|*5BYed*uwo!A%xLvi}#ZojsHjm z;{iW9uUn*>28LoK))QQj^J%|-8EZjNcxx4_RVD}N^gWKy$$^{xMJ+QKB{X(ujct?b zHP*xhcR=WhO6YCJ1lbP_jDs=MpzV>Z55sw?3%k#3EqZ0EINF_&9R?fm3Ubd)?ptAa z2JPem+9Tad<4P00Y=%rQ6bZf-qo-f(e)8SM3#n zF&`f0XFai!7!Q;N#D{KfK_FzC=8nR&^+XX0b#0k&K66c=&X@55q1`jTG3K;Df8B9& zecb=k75kX$onXa;!uL9M!b)u3$k1QUW?I&-ilTS^3G-ih$iIV3SX~jEsQN*?*;2~8 zTNz@3W~}LN?dE1VLq_JGWt-T#yrGl9C9!yaLGr%1Q_+*5G-%<3UQd!1oH={ztOfIff zIct_mn805$`jShyskEQtqPq9fPgwL%HT4;me4rd&y_f{$Y(=0PC2F>9V^m0Z2&il6 z7$ye>VY6$v>D4gx`XY$0?Cojg$YUn{@4OAt;DcRH7p#U4bq-LEnp zGXNX_0Qbx$!t27Jz$g}bvphK>8;%&Y_=#4if`omh zub)BJh4UeJ$3_&_;tGfc3?}2Ma$Clx=7ez&S;GP0Q7IRH zZQm%4G`ac8;-whYO1*Tz_g~02q5Sfi8M`+4YpJQ|Xb!opzdq}zdG>9i2#+P0qeE^VjNRUL#IYD5c?}+h3CieYT zKO4j%XJL1vX2>O|ShqOB{MA{P2mmmkn84D*uDY5xIEx`z*oeBg!_-g`IE{ceo%ff(BYL^aSs0RzZW-Px7i+So9O&bH>{uVI88A=p z-NnhhLfyd@UyU4;NHI)$Y1kKSiqwcafo|I`H)t6i;u9|^fS_@_5wVW748byTy*Ii8 z=smttq_9|GU}0lVm8m$11cG2*3X5bzK*S_V0JH$|Kzzm56Z``i{cd;cn*C8$1l%iG zid$$1nhyPWSqKm{zYU`2So(s)2cHu0Vb!-is&3j^1{H5ZO}QS21X*+q4Nkp$F%dsH z22%;mCKkB#eP#umix*EA{a%7UGKQ#Wu6Cp%73z50);Nf5bS+`Vi*SK2va0eoJZlb? zmCoD~6D9u=cAx`*y%6VfiM1Qom#s;2Dy+|)vl^zD4WO2}-oe(-T6q!kD5=G14pL~! z``P@fENn)#MG0~~6QU*lbw{r8=j-j^SzgcNSqPtx2(kFG)l9WDmC z(Oizh;OL-tBV}&rRsS#0~|6- zzM(L37K>ubk2NsF*fBBa*Gl)?iUR!IJ8`e)v9md0?a9;Oa$CqgL3%W=)@Dm!EQS7ywzhV2VH04-xY}Ao@K)z8B$QJ29pD{;31s8Z zAm9I>haX~}HG~j6s_dt%Hrv&(^=15_&JwPiyh`$L*C>~yma30?26c}9E83KitEq_WDA9)xJzgdLTP%?$d+-MS?q2l56{Xc2rVv^Ext}gdcu%=UG z>B|;HiR443M>#yAo30h0U9Fov$dT&7jf5!{`qU1IYWMm*7IXVUQx)qFypeS^F0iX=MhgO88ELNS1Ls6 z>+916gyfGe7o7+wC_#YSD%bnt{jW`)yzn_7u!;u!OLl;4gv*BqQNTT!9?)K~ahCB& z4i67cXWMUfeGUi?&eLuOVvomJjktwlx5)v)JkDyfJ$QrpT#tebcObrC5Sh|04-pY) z=f^uIAaEn$HqZ2WHiO3DLIW%Z@Hrfh1N3@>N=|S&93V~>s=$xR9?-xE73^WkNi&6L9mOFThZ`r$v<1sQblV`9kWrnG!n5A(mK(C zW<1vF#Bg;&qU1iMn(vBaaR#sM!SQ!D=lJzKRc@AshONOeplSab8Q|sR#peCqrreoK zt0MwL4iv=tLX-ZL9~Mfd8~#$fa;gRd^^2{}w1CEN*Xixq(Z$8Z2bvHDgDK`txl%I} zaA@qFn?t77_zim0=6HevNECwrHwZjJLcydDK;dY*Se+ zOq;M^qlb)N`GmwpIb-emy)#yYQz0>yROw%1B}j{Dm7&qS;Dw;Poif_ZesP04UQXMeg#4+;t@R)u2j zak-{Q+AzX|T86QCoIR12$J0DFGXRzCYsZM%w5e*lY<)EYCFq47=VoA#cWa9wg>gNpPJ#Q}FDYyf3e2NJMXsXqa0B$+Iu{%m z3T0(F_>ICB@EchuK@#=~lQt!RB2uJd00{#ReerDsTn*q}4~PoY8c~2ASxSX^p^*rt zD*s5scjS7SAI+aQ6j&Fd+UNJFVTC(iE&GSeSp!?>l~Nl~K)aS_BN;6;vj{`rc%_*j z!=4pgS8AlUn~)gr{Ox0N_>#Ri$p!Scnv}A6F>-AKBX<(uHIv9XleSwgPQXlzjtV%; zlq0+4joFVTQIn}uVi}L8eGSwIt6GZcCtqb?Mln=ued461?7PaeefgnlUl-%buM+1;&%xOq9V17GO z!^OJR3CC4Qj4Z`Ig;J?lRczyi7p4r?6(|O?IgzU}SwsP?AvhR?Jo6*wT zV6gz3&T1Xh*w_gDhHsq$DB%5@q=%ZWr$lkLfX5h5)QI%^W;b4DyW1c9^6oBClM?BB zJ~`66pg<-myYQ8t+{m!3kU)!FRMsv00c7|&1pJE{AhckZ{wi)3^y^a0O-NDV-6^_O z6RF>D^(m6R$6^Kw=QA}tYQc-kn395UC%G{NY)DL82*S~eRA$lb@3h~ds~P(k`juYk zVQ8*~#(E#PC$?5H>p?;r*4k%3mxCQA7`jQZfUlX6x$P-iJn$+x@Am zwOoV>1%Vm{#KO3cWet2{mYdyZK+^w<(O6D>AF-S!qrs)>s&Op(p$}boeJ?g?>{_A4TQkg#Bv=S#7Af_1_E<_(;+9Lvn$RGmGP8Il$L}JL56Bz(u0~m?W zJgK}t?!cvv2a8#XMxf!dGK9!tm~a%iB`}8!2n{4ycRYzCQR0v}L`KjN<>#q4n8$ew zU)9E<_Tdsch_PEw=Z8X@q_J40rQIqw54f+v4~^6#><;6Ieb-QDKoBy=oOhU!x1sL5 z#-1{8F(4XvMADp+sGN4zC>(Z-4ve?(6MkhP5gOEg3aCN=96N%vmbdPg!ttVzg~{w8 z10nvlZa!WRY;45e49wH$7&s3XVk}UhKASYMg+E$S&l5G#6Ust^LVL3+M|7u@k+;w3 zldD0n8I$B{w}n~fyG_S_w~(6BWPXSsV{-3VuOplpavK z)^ zPz)P*9TO7_QNUIyo8z~ul4FB|f%q-(oNNGTTN*zaRoeBc9~FoTq7=6c1rHQ6E0W2A zWymmvjPwm?QkIvOpG_{#`uqi~xDKp@_R<&Q^D_nMfEzy5UwJ1;Abr1*CgXaiHEML6 zo)rG4VS7?yV8p1$57DWihL*3Wtz>R9Zc}Zw`~XmBv^IF$KjT_!f<4=ThP#Pk?^$%J5nzfN%P0C<^^rn^17Vv}66r zXgQTm&yPvS;dD_>dNFN5U>q>MvRtl@9Y7rE5Ijl@odG;*hQ0)}36o{)Z}*3*wm6iG zP2b$k$Vl3$1u`WyDGpr-UE(HreJe<^DCJ#*hs;O&TFPyXx}&V&rCE zo@WM~L+=GV)9Il)uQ#{hUI8ORG7NS*qM<(kJ<539<3?IsK+-IU+|fZ@Jq=ot;96tk zQ(qkBXUL<_Z<@W$vqcWr98CNqzg?F%+8vb~}zR5`$H&ZILTA{dMbA1^{GlhJh zfrzs=+U^Twc!4!K%o*d@T@x5U5vD~K7`ib6+Ky>5fxQG*6TtbWSS~MUwV3x>Kb65K zOi`wdA|WcZO;RjmHffqc;czlvJU%}*aAXKVpyXGgZLHO{4*mo(!yiLqW4{P`z!n1x zxd7)VKSBg)0yt1~yq<`WhhvJ^?e{mAOtKOWUP&>1Zxz9XxTz-Lz?Ndrc7ans5RD0I z3(;kPO6}ca0>wY9sp8_@g7%KUFjCus5DQbf z_D5RniG#VqQz9^GgN71D2{C#kf;B-o1*jScPW=N1CBOsNm17gFGPuG^xOGGT&6Y%# zs03`vv^+L~Yn6P|bndTbj+M<{#z=8`n)osZ+iZW0to#MnueOm|5Wjy1@%Hv^g7jC{ z7BH+aOu^@N6$cV@X8D(VG&Swq#oMd?F;UzDR-IsKxi|n`dg|7ZO;hw$}iRm;OO&Xh3XZ zjf9E~hrj7C(Wndmp?NGBB0D?G&dEE8xl(ed=0aH=k%l$`pu51_rhk z3oZZ7?zRc?WLq8Wna-w=yBo?Z8X5xPf8xSRqD5L6*x1>{rFue^N(1(r#u_p3QYd!xyc{@()ccZt&mlG`ei_Zi&A5fHVLBFRPG z;Q`50_y&nL!aJh*Zl(`q@CV`+mrmE*3gV;;R-p3a9g|zu>SsdPGz7fKP^#D~D)E4i zYBaRZdQw;SsI1{GeF)Q(qC{Zp&L!Ac|2%_kTNwof%Jhya)ysj z)}y=t@Zl`{2tuff21=$rKSL{3coP{-L6~s8)`1^Wa66>kld`?pw{;iP74Hb3w-L!C z*@m0Fb=B~oKWiD}$d5oXBOVbVcN%Ny`#+s*r+dkmf0Jqksj7czW(wNq2w&)Y`M#04 z5)MEWdo9|s-Dy=Fi316M$yrEhk<(V$mvnlMrD!o3@qV}}INIWp)XJJeEVN2Qwi1 z3$s8wi}P9JmsG0*P}PvHPr3@ztDjZ(RA76mJzw5N$)$wtO;|uxS6n3dGyh5(iD%=+e~G5BdFKOrFs`lZ-GM4uG$wz^N-OI6wpNiP`o* zj)_h`7koCRrvcf8z|64w#;-pbrV`tfSf_UpT|1OSECo;~<)%uL&QP2#)$z!yL< zlGT&Zt#I5%yuk;=SymkrlD3n>-*9Z4nNB~_9AXhpHb){&Zv=3!@btk+`Hwa4YJv*T zj50Y0b+ti{qfnq+X3;FPO^e_;f36M<3>V$Bs+h zO9^Fv`$oTZuPt!#p6uL^ibyBL9A`D}$FJbsQ_Rl4(F$My;r?_4pE-j!>sZbEK-XK< z5>$=ZJlCn#Z?LMd$2LX7b;iME+pGvaIr!>^@qmim&w4a5xtoKQ0Gt6JTr9)`+S3me&mZ84nDhPZk}9^(S)S^9EBn;lt2udB zmjl!lc02(3{y8MYi={B-#6Bibe1Pic#VQ6LRJkN%J#Rg*J)W?X*)kxis!bQZy*%K* z3(^Ipg8JOyURQocrj&Oj*&f*9M_3Rcwlk`~1hGhfs1zTy^&}Fz*a@b}rbXMrwhN@Im(^mDFwDx3to!ZvacT!$o0qnm>2N% zU9ZqX8w>edHr7eA4nc%47OZeqWs5gP`T2K=NKaV8@BM$51ol^qG$x;r>HC-;m~Hin z1Dd~9T`C@LBI2S5`Re(r!hH1!Cdukr{HHx#lu`15)ssLpWRn{qSZ8?)%`i%d2rxyI ztnK>Wx4-0yIuR4=A3|k&IqFHN1_Z4#T%TQ@|)0I)zPMi`E%V6PO5UgVxqAn$2dE zWszUfR*Hv1G!ve$i~eGv-ctlAQ)W0wXtDNHCpm)!5JjyUgZ9`p#f+SY70s$eQxe)o;)M5~kzc>?ezon602enCC~3l$dNq*Co{ z^QW};FRmRE$>$Ulddk4VfDdvEjVpW-A8{@@Al0+y9i2BG?s>IpLb!Q+B*$d58us6H z1NvSN-?l8Q3jISaF$@0xjWuT_jWMsIzQA2RFZKrBcj~H3-kz)TsBpK)b$D@VCsDp= zCQ8WpR#X6(vOOZ>grD;^kD??8K?FsG&0InM#}X&hBU|ZN^oJAcxp;a@YpZ-PN)Zxu z0xuHfx$J4q*Y)1Jtsl5F$k|^dN@Sg#t&gQKou4-Bdw;T;#hsI+uPv=@oS8TopKG!| zaITE4F&>T75%}^E;7M+$Ii3WhEKi6I10jX28!^Y%sFd7tg<^3w z!@UDhA_3~#LqZ@x>h#~=W+x~R5dU)BDr>n@lk`FF~7!zqK0J%}lF*wf>uJhPQ~IyDLrtJOufK(!6Nh6oUo* zZ;^~3Y=m}M(;Q~VPF!C}-K+6GW0L=Q0qh<|%vUUM6seXJ1`2IXJIxH0 z4R@}j3fAbI6O^ai7j+zL(}n>NR6hUwx;nqf=4@{~EKuf!Q?Ug(jhN@yPH+^6k>7_w z8*yS!H_{}1ctml(3rM4P zCS=uNH@5s9xVkDJ#6bl$qVgoE_^bZb19+oQdO0jVSCdLtPM65}pPrRd2kx@|ze4K}d$U)*0hDNL;Hbjv5kBl6uPLN#;dz#v^a2QPpm6Z!GerNy0+3TJ? z)Wge|*#>?($_09DXGgc=ADVL0|4>P;JjMtru?^yz(x=|E_m=G7z}Ooc1~sRa@W1;7 z|8|)i1-H&r7lx&s66TcZohLqFF4m-_BW0h2H6R^L#eeoF3w@dxGRzovOZWb$k9M9~ zjfMHUU~6NiReu$^!r`6P`>YpRhDNYZ-bXAf0-~ovrD0$c*J}2l^+2oGvz86GEAIOd zbC1_GCnTfVsKT`x0@ip$E2g#_WpDhjv%h?dM7~c6#$^#d%*x_4y zT5=ZUJMLs)Lc5H`yO=HSA~E!0PP8&pF= zoG4Zg#xOd1WbOKLFls@b#7J{on6|4`iRv=DJGgW>_p#N-EoRp21-vB}YISB~5jt zG?WAdUqxrOt!IRHautBdzN4EC^v%e1{$L9W3$xwR0(4(Jg7)vl z!)+rk|3>)aoZhad6&_N`e~T+y0{HMtzOyJZK!ij`2<#E&Y3*|fp%kDk@pQsLHEf67 zq$_ho&0$IoxDS}!)iVe~hIb~^Bs0+#$lCs1UH_5_Uxp}tlZ@LPR6*>edVMXKphRx= zv{=(fG#!&*DPtWAhbtfCFyKpI3sR$J!iUb1VAXE+;wytHh*T=EuohT(Hr}RF8Oc<^+M%bC^2bS(Jy~6N0|Uu zr=K>{xOc~6P&x1z;Q9F_UUO3+aZj-K62-|u|9fM2pJl#h3-rg=f61o(7TZdg8!cbyAPTjo zQxF+;{arm{FPRW`zLREMfk)=|snnqA-j3mHYGk!G^^EI-cY(JMuu~F1F<0XHwu9GR zt|zb1ZFSJ3t^C$HdYo)MxvP1UqIc)OSVhAm4Bj*qtCPhDAfLQ^0lm>4A+tNgY5-UYR&hDXV|vgmq97*hw#&kkaV(vKavV~g9Q4E zcYZeC{ICvb%sP*BesBDG@;m>SZmgTaJVNNz^*M7wJ!8bsAz?vbkeuJKfnZP96jR1= z*h{Rd2*Ol&BvM815k}>xfSZSyE09_kkBAGJ(5eF?KGPctUr!J1ZT3-q!BybD+5uh_ z*h0RQznnEpp{NShkefsNF5Ba)m}AIJT9QOi)ZCt(!xZp*^w1enW*M%qOV4 z(4Z1691{~Lme1z$&=3_0yMa!`d3=Cuw_YK@*wSOM)Z3O~*An;CbhAQiFDN`PBbILO zqXYf=%O*x6H9`b4bFpa2+(LNd{f`p`gSc6L0_n2}E|IPih+=-q8*DR8)|`1i`a(4S z0>GtmkolgAxVqy$>?p44|KHBn1r1y_eXkY-9{P2~)*`$k$8X_V;qP0+A^Gn^^X($x z3zX2^@UDvFnZyWnoFc4d&dmygVA2r=Q!hcH4AhP+#Cts}N zmBcg;0ol8^P%ks$pmwO6NGc11&Mc2Ni&O|p;HQX-S9idpF~7*O8Np zmngqJxvDb1NuFvxv8q2{`dXQ2snub-6+2o-T8vO$Y(_tH@NI-o^dA-t3TFKL``7<2 zP~gCRg>^~ftE9%T$emOUOMEv?XNQxvSMCiXs2bUoIB0L3?HQw;3Qc`yTJPNkxNC3)w#y8yxlltGeOw_e7 z_6nQg$M>5WrA&XKH$uI!6!%<9_BDD&RRQ8403ImiLX5(;L<@2$fG1VlL3(3fE~kp^ znAAerSVFhRT_SZwn28bxMV_?|<+_^XhB@h%{s)A(;>BQ?lV^U@;I$AY{-)!T{aZTn-PysHv7IgK)f zH7T}StNgv<_3UjE#j#G(!|LU}{UPJ=&sl4w+Jw5?+OhxbZxB=Ll~pte&Xiq~Tk>D587 zjKRb4lNe_$E`2B|R>}UszV17#weD!ohONs2$*lF-S3)Z{$WgB+Xz<2L{#M_Eo!b-K z20_)km4!t*XGo{=l<>e&c;U0v&gHIyJ35_gNcKwwijJ@uca?0gG#@(l_ufN z7GX4G;rj%HjWj@B!m#xBCqXqnKmJ^zXb`W{gw4q7 z2Ijs%%Wq|j;Z%_pJbB*!X}f6GN4_{8Yt@pr^YX>{a>stB`szZ*VJYEDYt8Gy%5&nhV)B}baS)Sy4ST^vL|zFs}$7k zo;Fcf^e$Nl2L?Vqo_lYVY$fXh$3sr>kh6z7JEus}|L(Gw2ROb;Cu68xeE7_5xT(T0 zE08D`c4Q#{i+SHRKI(%dEZa2s{8e9RIYC)n7)Q~%pTJ(%6%J}w$AFiF6~_VH0k0=l zV>)GD%%gL%sbbW-npI;w(8!^KHNSqlPPKYDZ(Y1ni^vcMcjU2Su(6+*@;)#4Tz}Ee zx-(@a-gL3zxSUJO`Nr1aeypBX?5U%v8E~?ZQTf}I!48Q95!iRRevPgBVf-SygP&%0#8(Pl_YGwP=#Rnv)dZj5;c`^?Kw{l%wCp#W9l(Jxzs}L}XGz2C&^vjM!D) z4lq?M3-VmggDAXgLx*Gi!K zXlf|lVHj8f&qd+8O@v>3Vp@dOh;tYj-~VCntG}x3wr~YeO1f0KTe?%ayE~<&yA`Cn zOW1UGN=maqI;3+;clUk$jPIOt|AG6%9Rv1Y4EDR;6?4rs=QHOsS9t9~MJD4`v1gU< zpk;3#MD=_{UZa_gt(^R;T~n&uY$}c z+Y0U*D~U#Y_Q3u%>kfI}z+m>>Ikd;r3#^BS9m*GNJF(!+ls=qIbr|eo0Hojyy;fo} zm@Tm9;N{h)d11V6u&*y*9vBJ|8Tcl}@n-gt3!E8h%#61nrMHNUkH=uqPP=BOc2^s` zj7F+yLz$0*ZDkRLlM`O!soo2*PQyx=uQEbRHgefyxx_2L$U-K0_cpA=;_?Ch)yoSoK*!SEYdvnVEwa+ znD3<-7d1*d*wE zUD<}w+Ev)7b2paOtD2L`3aP2MI5B*W-4;@s+LQ63%&g1)-SZ|9q}1zGmK(P{E9LX0 z*{J9v3D2?p!FQlVKS%kKMI%f*Qyt;HM9vYmoiEjoKaMF?U~=f{7A!a@_|IN^Rsm&{ zseMUx3?v@>eFh3Xej~=)Yh0hp$ZL361PO)Q2?9~Yle^ND!Dhh5Jb@5mjG-AkR zCP!`C#Uq8k6BfM7+fxXIm&AXb#F=xy8N1XoWm8(Fv>}pxKWQ_DhOR5F)LYe+{J5W{ zan;2WtPD=}pc#)cj-?V@9BGm=ll9(y)8Zw`(_*iR;&t222A(se-C?z@DCO31oO}IB zU7M#gK`cq;=E+FLMAoDOd5*7opXp=?xNY!gm4-%%jBe+Z1K=?zq$ptpm;Q65Jut&S zT{UbPD3`9MmW`H5>A8t5!F6JB>1<#lQv#AOr91SmP^Jkrfa^H^VfO}d#Yu&Jgbfwe z!0l4CEPI+i>z({^%p1&3Jmzyzg4$m_w7K=UY>WAhnRS=@iFVRm(Qred1pEG&CdAur zkWm-Np>W?MLHLA7=%r1KyGAtT5_!0sR{Fgi^9^b=O>Rc!^8gv=)K7z;hj@*NYo37LT+ z2o=&(Uo>8G%FIV2@8*PHWQl)lp2;>gJ3;!UuT56lc|!i~xGc1EG@s(j@hm%iPoQ~f zjTEg~XPBHz_g2_b9?WqeS|ze{R^=&p%nevlcm0}TjuizK;-L@o9-^EZN25vb)XCyuTs5>=;d_P8+cWsMFT01C^>?;`_>Hu%eYZ>!6;0z2+&J+J+`1 zquGEE{(UhPH9CLlKft06IjVX)e4^a7#H|9FK2_Omq@T#dZ2cL-qKbmV%ef1I=7o1T zRx`95?Zqi-X=Or>)T%ad=f4q20MCl*fag&^4Ua&;I$c1NS|f%QO(X)!5{ zy_z$j7csX_4DzVZ;~4lFQ48oH(SK}fK~;E>o|&(zBfdccBg>JKU6L9PgPRxmmPHa= z>N3gZ4O&(DD^P!wF<^`fQUg|AeCO9VK@tTM_}=>dhwnwDYFh6Y-tLwHZtO4<`G@tl z=YUIRXD+P_76(am=)?ENzVwwX^T_n~Y}YOEP9`f+0N1Z5>_@ZL%L)79Gxq_v8vlZU z1)<-Q1Bb7+eKnIlnSwde*TjDR?`TViKpF8I)e9pSoXkDEFyz;r6wB}+;IQ?me-ug%5o}|_ z0}Oz^`rtP6xTYuc)k$5SpreA5-%EGo_kZP{WWk~)csnfjZ(n`^kAKlF1Q=-dX^GM> z0{=3!dnb{spXj4eUZvQl&%eDVXhpMgsRb=k?@C2r2hG51Smdm6vrhlpCI8n%24c%D zDut6B5%1z2M2TjwBiP2wXnUl5Yrmxj<#Ux7ipFR^Pce=7`lBD}JN`5h`g95)Y8@sp zL+09+%p#co+&KQLhrDk)!Y7ykbi#gfHb@_}zrM#vb;up;zi(llbj^{vQL1`a9#+Cy zk7tF+F8*Q^ltv!Tf&us&T=2%S@Z+Ar;p@A}45o z%4l4QOrrw5-rT1+{lq^!OG^XW6OA3`g~;s?mw9w^kx-A+XL1>aS91hQxaj%+jF1Cv zG$_<|fl^BHk6f)h!kB~B9xszgUkE~PzYWnq_oOyDMX~IWx^F3SLAXvtwMGQ^q|eWV z{n;izk30oNvrM$2xM`MHOiz4<6w6OUetp{^n;ra1PW@#%!a+RdAoTuaiO9t=7^RQ9 zhKdX3-J6FK{Ax-ccg#yL;k$-_;KoWC46g;qXcfhy!bh@yx#Vj0*SMa*r^otD1z7nM zDsVw;jG@r&B07#&K54vk4YW$oNCj3Y9;TGQsq`!1+0s2ibi3*chqm|YFK4Lq3jmyZ9|uydU)Z022hqwltgD^5i-8~8ER}F)|Ds7lz}jyd zphFUvQ!X#1O)Qg9p*(2DA&TFAn7lw^SN1sk;yO$y8n)yCLEkX)Z*AQn3jNt<3=;09 zQphPBV*0DU(6NHiu-=7mE2Bp;8r#x6Im>m?m2@!ACVV5rK{bEi)k0_}`H{hNv={^| zGpec=zob$S9qz;+o)C&|QM88~mdxt##g~_g#~b_j7kdf6honQgVlilFmYXBg^Gb^D z*Qt&g4byT=A(EIG5McV8%vK(Sn}qw>SCEs$uEoJ#)Sm~*S0cDlSeTVSYcI$XiT@cJ zoCGwsDYMZ>X53=~blQaP-NFVhA*q3Hko|Jd%`=p0;%EN|LSv9%Wl)kK4=o!O&2X#{ z*FO^A??;AeROjxspr%c{wsVjpknoy>0UY1ReLIC-vi5q%|J!fd=?Q#eoM7ctdNHD- z6h!XCI_!6!ir;oQvv!A7gVj_n&`17y7&1~s-D}r4 zI>T9T4*95qzt>DK3;pQF(}jzuJSjP`7tBhQpu*^={bC;!o3Bm5kpiKka5RO*;OIZ+ zS%)^vhgJioy&(-Q7ROKMzgvN!gR-T&why4^SMAK1K*dh@v`|WAVkSZ=K#AAW^TSJd zovOJZihddzE0kNh3PZeIlRGrF!PE%w=YH#fatye?T7NuJ5ZMSLgoH>D{3W7r_9w897rgAqo6I6r!lA9@10EK??;UK zj-?N=yt-pMzMc;4bKGwz_NhN(oJJvMaJTTEuL3wf74*A01&|PVR@)~$x_@5hR|3;1 zdn498Wnanr=luYvLgQ~|RY@&cAk-7z5GeEuKuZo343H#TdABP3XSV_eQdT~^$af(6 zV$o}z`Fo`o>5zwk^YKAw4WrrNb;o7_w>)YG9DP;-b{BX3-nENF$mAanDF|p zYG56A5Ip_5m#xf?e#Gs+W_0;-Z{YDuko8^r<~i<;7*wdLM8=0T5{~-*{D05GCscF> ztlVbpurU-rN7XaSv-K1r)YTP}85h>FhesHlND}M!h~9s`46--*yMRCcSW$%jicKpd z`E9$7|)PYMyp`oO*hy-5t zU2xbBZmoCGH5Q2nXwMmu{vbY@kJ;ypPO>2Ir-J{}mfr}*_ttk$e>@z*Qt2a^FSW*v zL>1&eN5#ifQkGS3)&)?Jh*2G+{%XRX=Ew|Oun;*b3Aj!QD;`-HA)%0pMunzhy=M0O z)N0j@B4LW(^C|ToRht|wIRDT}gsTjJS(C8_b&?AtEc57*|5j+-ut71}BlLpM4-!Og=`X8_DhJ-l z{zw=q?WV%{r*ndW=n^kLHLHFt$9SxNy6ZOsHwhndrnNlmBoi3Q60h;;pY9T^z)zw$ z%aaxQ!Ad^)cUf1+plU|i3l;27#HwHZYSaM3{3j^w3&rX2cN0VbP(aUm|19zEw=`x7 zhM$1YZ4m8!yR2h=i||hwTOor+$0S<7c2a6fVKxUDFe@2f#I2WDFH{WHj4qwB~Ky6uQ03;|2v5#7PQTsuytw-F^4yE_?U?QVFtaN|kMA_}{#G^CP`n&K~FNj|$f=Dp8ghiw zSC;)cS}#@cnnZ5l8=k9Hv6uYkR*V-Xn#2Ae1{#CtGMf@$(d^V?e*E!}f9Ik^^|N6{ zYN!$ixp}5gH5!UmKFmL7jYNkyyi=%L01VVof=FQK0`=VOE%-9QAyzN~l`20_D#Gsk zQjCWxP%1hwO3}A{1ds5q$eFNdIz9L>VY&`OxPmkr};d|P5Nhl;@&APTTMcpu* z990R`vk4~K7Fazg#*jT&tb7&b zbElfL=X0@bKGi%=ZH0w}O#&H3Gs(-((HndRhXBuCG#s-inS9^l%H4k7(YD2E-63h3 zyo%?4LSgX0>An`58P|?dR8++2w1o;VKYHL#2Hd0|P7&o{5w8aN>EF;Lj9>suw@k#i z9ry@XwaSKw2%Wn6cR1(T4OHY;)tQeSt{8gL?&>mba6mLSXVTd<18?3JHKkA4*^xxp z-7&rRg6%L(lC##hK`k;}3RLaB$}Ho4jc=`8J-(#tb^pbDu>$su?;2G1q+I1DL&gnH zJ)Kth2!qF#oQ81mV{A2%03mGs-l&aOcTbjD*UiO)+s_jr6Nbzon?b9fe=$o)^eq)l zZOTDfiaqZ$jNulY!70-#)VpQh2j|%E$EFoaJOMYjy4P$S!g2gO+h2H?El)r$2D@@Y zR|eVGEFi;HDJ+`nCimpKHD9L3`2npIk_40Nv0P=(7Z2^yc5|kr`&|j}A!F|qDm^^+ zC;~&9DY<)Li?w*)FLGCGHjy&kY#-;9d#>fSz-!3LeCB0J z1m7G@F8i&m8L`^TVg4kO0xV)$i~*Y&AV(uQK0ctoUt+S@*^*MfqV?kS5^%XHKvopK zPNJDUe~ye746sJ^2M^f4-W38+ieQjc*0T))yw~ zju-7Kh}h)`5c<8?ZPJ{*@Ny-TQ47rw6-a0?_ptndVm_Lm*WAo$>dB*4-lILU5Ym#K zu4EcT$QeK$mrqMRNV9OfjSJwl&PBTiyl5rKX2Wel9J8k_XpPscIE%Bq^FZu~k=Vbj z3dzd_-uZm0pQ44hJe2Im!;b66A|*xt>TU%T*V&)vCSA(OyyQtp-X|S-KCiP}s{=42 zf#r$8?P|)*!c?jBem_d5{DF@Qtz%9@Q z-k|gvp2HT5%SBg0fQG~9vZvv_(CX=W_i%f-HCsbjZ#}CdM-L!37vK=BvK6~dKsO!P zLrdZ|tn_W_xw>PXtcjPJ%O{9%DKEyS?WZgCO}USOGMbNj^7VHZsVxxmE`MV zbt*clQE=irU7qaA{u;a<8fPyW>=SmqCEh?$vH0Rma0rjam+?#)iEgD$m4yg)XZQ2z zvT9F-1W%J%22ZngL^1pnKW^G~#lA&Pc>qwMZ*HC&?CQ* z9smzGdjRk5BMN`VAVX4eYjcUduSK6_m4ToRsSIEBl>Vn~`)I)q^sC*8iZMe8Unef( zQR-KBKu|{G{FW}*G>Gn%jjjX1O*nU-p1N1Km%u94o=zRIg?Q|Fb(+}z{K}g6 zp;*{K#<|juO$NNM@Qw8g?g~Bo8jrT175_tlamV(j+O8{?m;8M{o=L}~J3TqqViN}} zEyj}vZB*UeZWJ_4X4dn%%SxYVXtKlks9yZ}wd%gZh6e4~ugm%mFze4Esgw_HFP`3d zt=392bVw&H`RSI-tgl??dN7>6>2oreNA|kikpAB0RabokKXsyey8|OqY|0Zm9v8J* z@YoU}dz!Sx1XFY^;msBa1PY8-5^%Pe1$ZxCV?VOW5)SsIrZ^tkwL6aO4}ltuIzP_o zOPkW|W4Zs-W*9JZQedd#2rr@O(12Va2qE*c>#zB0g~7&^Q3q}?>%Mmy0+qC1K(U8= z!mdE9&TwfaZtA0bff5xKNUo-L%Vk;tQo84IPkOI{!nQq_5)u%v&E!q-!B2qhv^QzCTY&Sx$_?#E5ht+oy8j>>zB5u`rYW&~bIve5?j>sd*d9yKSpaAFNs^ z<9*IYcjba$G7woR$-g^Ym6r%NAYwk}D=@w5EDAzbXHb;2`?3NyBNVgFn3I!rlIu}I z+{#BWqaYifvNC>8ugQRq5%K7`$`ouQMIlsgP$y=;_2j;HKm%4c13sCF&a4eFl3Dkx zKO^~MZT@@BdyF@}Cr~fik7;tKqYfdD?Xyb$N|pn%bGNjn780CO z3fw*4WtQpv3E+T|GBKeQWVpO0a9e>22n<}!iQ?}BxKB>UqG8ypCxZ;)NpEzIz8gnz zv4f(L=(RsBEa<$zWiO3q7JU;*C_td8sc8-n9N*A-^Ia}DY9*cy^T=-w1W}omw?BCF zql20cz92Tc>~{jP9jurmwk>%Lkjx{1dtZ&agVEg1#>DN@q7c`jgJqvV-2?YtquBDn_2J8 z$;cL#Z-!E9UenD}{`9OZKly32^K-59@SzkI!fJ-{?w4WsQX)(a<~i4F?#k*__B(8> z!y>Pz)QIiku#52++0gok>wUTMSa@6v3a-$HHM(9+7C9!7ELDw*yC^Zcp`WvyqH?sG zm+PlU{4y>U;4wXj7=v=?1%vy8jy2S9ruf|LG?nK}n!)qkGgxME#&Ok0pUHBW7+&{n zc3=lF?bg^j#pHNifJ%iR`@4sAQ8|q5PfE;&z5)qQ6H>(Pvn1GUMhRAAt97pT@4Svz zU^WWPhK_K{m86o^^XMvi=0v~uFZ8`i9KKp-x!L>-z+Ja6-6*;rqO`A+Kqn)Yg^c=T z2}rKP0pr^GeD3BCcXPKd*&Z$sMC~p>wBT5QrQ2*3p0!e$^yq{6MkH6+JKH=IwxX>e z5g~AhV-3oC@Ba65)F|TD#~CXDaZJagM!5u=NDZ{gd+uN+op$MAb-4v41LefmMy6}Y z*z&3QSkz*lsnYn{AE_5znLh`hjxkdR63#N*0TcuQ7^7ig5wBO%Y}@>)$V_GVt(qsS~kIO-XmLk{s-8%}PYKR($Faa4~YN+WEVD(Dy^fpZ* zsjK}YiMQbGkPQa6JwA9Y7UT$#i_`1Ic~$wL2ZF1N`_8U`>$Zut0a31Xkif(l?*oXM zF^P$v0P_A%@^lyQcqtY!$D)&R-A-uq@X;+$2E{qkYP$66k8f#pof4Sh)%QnTD2wBZcGxaaGzc|7Qta; zv%dECP}|0mhkJ&F+jGz4hh_QN^G{B0=ZH}`E^(hE%oR{79+z!gM7tsKe15|PDBZCG zJGS{AhGYov?$4v#FVGS=7RzPOp7jT(l}|HNz4JL?Q$op5Fp1|NQtW-{_@+p^!L%kW zG(`Rj_-=dvG0jTPL+Kl7!_IYr25Q)v1g3#`fCzGs(9rC8c0(0eL$MG9Qo^-Lduv`!*o&KG<}JE>~?X3uK4 zwMUl+A)B94T!QzXpDEfhNVQo{Or@bJDyYQstF?)}*l*``%1q&Tg|pxq_U1jW69m+B z6r}H@mt8I8?%tE><_?iLkH#xJogP7B8GCvIa#^&(*wY;lmL<5_T;!7zIKrnyk9s%} z;N^ulPFm=lJlCc`|74rQ&?{i0o?m+~|5Tm-l+oj}z#18OU@K|R)4m3BS?)T=Mu)Yd zo0-h78JX>Q2~UlB){?tvOusv;uRMPCeG$POuhAVmZhB5w<6QNM@In4C$Es)jAjEb( zrU-+$g**?Bx0C{Ua8j68F>1a)$%=Ul4I5o-^i`r#LG@YdiTo*eD^1GA6pK&Ex2M8) z?yy2e;`7zIw$3eh;v(NvNQr$wI~&MC|FV$9gfq`jabtsR0rz#PEKUi6WQkhY2P&cN;`L9s?>hk2UKLOoiT9+RbZ$-v9Q?r$ zsQu#xY(mIcu1bL%zK-jn^W2AApxO)P?OqKrvSrVQoG+4?Ts7~$jjw+PY7%JGn)?G~ zKhVCVar6NN2kM+7`WYnSu_KFUoHHP1XQYXI=wlLBi*D-?jXzSY&d3!%b5d}jAR$d9 z@<(1r_Pv!#VP$QjmU<+2p!;eJcvvhLoTvF#qYs4A-y?h(xVIs3#J525UbyhSnFwBg zC}f{JDxNcrLCvuYpLUu=Tl3(R#bqkeTybukQgBPNBQ^i`W^`kHA1Uo;(kh*eUqZwb zYxkzGV$BqNm0gN)cw@Pd`H(*L>3q2IaJHYOHy*3hwaQ?KG$NP075lPxe0zq-si?rY zKB@YH7tkxNF$S;+^hoSCRL$*j^oOt9dZ_kAmXDj-Y){$G+K%X2>P-EYx*5VM(IE+F zijrP460zihWs}v^q&*bV(|7?DEOZeb3jns6oaU$cE#9Qfq$b%4Sr5yyR^d8G%jZ4B zN30lnM%S5S-N^nPcVtcV{G)a}6yfqY1Mju?HX;6ak_JP(_m)%}uamk=S_qK9YI(SK z5+g4cK!CWOV=xL2@ZE_T(>cyx*v1CIh zgGq~pQI|Gz`IqwFt_VbXL@Q@MoCSz6%c~>2R797MQnJLBv9f-wAJIhHZRzivU+F$ zxcu&f<;ERo{@j6j{Vv^c*qXI&y48#@yw;)Eno%)wh%G>U{`9a`S_Tm z*80Vwojx-1-uWXkVfGN(AZ8T_w$*rXZg0liTuI2X!1}YS7C|(9i(3xczGeOUT<_B0 z_LrK&?==b&>lo`fHtdLeREoRCLDU2Qfa;baxZL=>5X)$3dAWQA1lZnMMkkq>I3HF} z9aAmB)~g&3TA(JD?j*G3`aLG92WErHd6OYQ*Ip2Hk@P5Uw_BhFks_y)y0rNQY+dPQ z866i-Ot2K^ahGtf0cSs!s9y_+D?y07Y8#$BR3oi170ka7adTpqWKyNcbXjv)Cutd* zS_^pbZ|~|~ZmXcU*$b-cCIa$*z}c1(+ftj;S9{9E#jd1EK?Xuw)k-m{B}P6%ww?va zLz)!;JDPQE&-E*S&_!;|q3jt4Z%ld1sl}_`RunoOvyn`{u67bHRZ&t_X7YXT(rr1) zlt6D-bV*Zlc=3|)iIFPFgZ!H>TO?(ER90oGiUN_>Ct^yaS_D2;}Rzz|mSwxXo+7C}zb(gzqWUJ5KJ#Hi9F`mh|cjbIWe+JpZ zbT*0(D%M1!Vk=IH|4R|uS6D}unD{h3Nou{H00JqLJAwW!So!ME*>x9((vc#uUJWCq z=P@WI)peIFa_OvyifjWS=6GHjp)jlgfebzs@G7O#d2H5Q0v*nchgxqZz^Eqx}`sFMjCJtU8(JnPtJeVw@~_-N!_e&X96j^&|c=m0W6`0RoKBapk&zxSynu@N2Rqe=3mpO&tBiDE-lpk z0q8QfM8VS|PNz_A!kan*F+xbncp@CpAJE0H^MivAHD+!Ko+S!CIYfp2m z9UvfDX@i}5^G|^S57xfPAu|`-V6NRxLZ4paiMH`U5%7g!I?sjbtVnisP;<_C*x377 zZvar(*EFJ6(u-}t&xWhgpyxdOF>V_|6y+Xq$C8g4e z>2T6jN@#(hd%M%B?=HYby(wfbg2-8Wa=X%E6q65Suzton8PWXTbiwYDcLB+|`8q|Z z)a0Rt{`OtkkJFL&gY<>WX*7hi>q|a*v}PORpXloD*Y6pej@#QmtCS1%R7%Cz^;GYP z)A{y*9+7PM)fG7`;T34_KS&@1AEMhYF-T$(ukD?y6j=ar8A%Ok^ZbF;8b4PRDYAt| z9-Z6Vc2%*Sr%W*N_^w)al|_#_c|$Zdw=XDs9QlmaQZW6NJHNQnsdVJ$5q*drjD*m$ za@D(p)%mSe8MO9o5^^Dmcw#n;YXh1k#uY^G;*thXwssN1uKajkbFr-jL zlbM2BNvwCBW)M7AzNe*1NtRHjxd@+Jvm6LEIhwB9JJXnQ9?%xG9Z=9~NB^wh6()iC zTG9ObWSX#KlCDe2qEcreB^YCtOtNv^^Powbrv{6%9zfJsLNgo$oOe_tx{2)JXr;aI z;;3-Q97fx`Z)+zsgg@uzlJyzQJxUe5V903ftRO)HJcLNV!UDJw`wh$G^nn3o8Wo&r zos;u(HI@w>lU>>|6^Yo)K;+;G+h3Zn6;^w)+FV>(&KQPXHU2HB_w`o$IWwsL`%4+$ zP360yyP5%M+>m%u!^oKt&BCNDuoB5}9|bmJjliRvc8P=&0qFp`E$O$LJ8ibjCZ+3_ z7UfvvlDPE-vm?G+=HZLOuk*dC_Bw-Hc}u%c!q(>s9&Z%2lV6^<`|P>5dWk0<-`(^E ziMix?hDec}zR=_+^O^4c(A1y=?nkV2mpV44QYM2o3i?WphC^#Jx@y#0g?XEDb%G&H z;7&{dg$B+)N~UT?x7dxv0;jrzE^tT(E7DCh>t%n2cHJ@s3#aloMTspBG9N$gTOM@mUpsy)_OKX1Pmg*S*0QlJ+u^1xUAbM&`7ljxavZoKRX<);%be-WPV(A?qf>;8f$E+ zs0(?5ccZlK@zCS^d}iXj%xp-c#!x>qt(j)xd|_CMsc9nofIisM*Bt}hEDak&pL765 zChZ+euDpW(CR14N=uAc@5A8257>~C8 zaNBZ0ujF#3JAxPLgOgcM)8oGXv2}RzLDolc>?I^G2?hhTM;u`5oGIBHOP}muaTt4z zpt&_ZHvNnNM6ho(jubkY6vR<6Qlz^#T?kV~TJJrehlE$t#wlw@0lKaKPD_$q%-xuyHRaeZ7$Gv3CSD7 zz67FBKZuCr%*7`yk*gGr8#eAr*nM%`pREtb$SRHs2I-#}OXd=Y zTWo-6QE1$g2Zd)CG1$QU!VPcd6Qc{+(a*&RqOG`*KTsitM|+IbVeFwWuY>B}UwFMl zVN+~dxLSVPlJujJ4G#%OZp0PX+o5LIXO4*`Q}kZKcg^I-rUleQ2wN~G8IS50HTMXB z#ab$BWh!*C?pTqjk~c95MX5QNu2LxTiBmTLUhFf%IgO(4!GXdWt8#Kel1VnpXoOgDF4V?U2Cv}hBP%ih4W%JK2BN6J7j8YvMrY4wnpm%GHvF^{k_x>jS{Eb>2E2PlnEAi1RtU7BN!RTw{xwAeg+%(p~N$lO*fw~o5com ziEZ%Zl2+#s?2R+P?r#>l92Wo0&`dNsl=?%fxr9*-5Z?D*XLgKo;!G2T-NvDTR z@R4Jesji2)NpE&5zk&NQ$gbyULy<$?ah^k5p6)@3~&WIYw2EVN7Q$>-Ll82CZys||^C z87~OPDIZOWGmP8tfKqd>nng(C-IK1AFiMQ7R$`J&Oq()&m%m9UV^7{Dbm<Q9{8ZaV#y@Y0rjXbgb?>(D(m}pUK=>we<;^J2 z$3JnBV&#PXpd81DsgVM!PK7 ziLpPm0PbuqP<Yj+)ZQx;;v`3b4iJbN8M zdT~I2Fb~438KS)8tWH5D=51_yw$Eu1bKJxYMLYHR#uD5FSXepbRU9TKXKjU}q2cjb zpAXb7DUAhO_FlGKt%b$i*p6oTs})MH;=?o0Nvl)HBxjYWkja-ybVr4Jm5+b3CJq76 zxCw-pO_>?o&Yhlztpz#fFY$S=H{#q@192El!I+D#?g$A6rsJ({$3}}w@&fm{_+zin zae<` zhh-Rlkh6X@**4xeF>@@aierxX;(T{zhF_U%PSG8KF(;kn_Cm4lygIX|=r)6Tm>Ez% z0P7{O9ZT~u^yOOVaT|&`RVVk!_jiOriL_Y;XbL2ixA-yZ9 zkv!cw6L{cZyzgKtjjkrK-QrW7gw;9v*25uxz{X&@=nsKxI_fkLMaNspirxMwqp85vn3@`8APAy2)JHz_4CX_(bxHV~wB{Rx4N>rpZ)w5nKQp&dGNSxP+#8_%cha&^oz z+sp{AUPBt7n--e1tkmX1MQj~woxkCo5?1Gqoo5(x?4}H+qh$7pRv`;m7yecyV~PRa z=Wv3Gr1&E{d#F$f%=r1+dAAYxm2!f8I*V<8&f2iN8-7plPRFQS9A5c%h$lP;*6% zW>(lco>6VOp_8~J(bU~7A|j%)&|tWV{@O#xP)pBq{18BO>rO<|m!z7p$bo|r8z`(- zEWxCxxR^TZny4@8(En&rb%2%^Lq{50IXophsDxr*dIQ>F@4ES$&_HJ30qt#!nx(ek&>v`QHML9OFhvSQXXP5vF16(+v`U4Y-KMHqu|I1~3`u7d_7^8z zWBzD<461S$mmMgU62v?E3|P~uWd}~J(=p&869u?;WQQW69&8;%wxb(up4Y)55$QX1Q^jdn^}?_Gw_($-|g-MNwJQJ7G{EkuJ5D$ z0#NZ(3y{`6cHY@J;i3P@j}at7EyTww-(>O6mx=L|4h&UZwlgh?)xp{B1G4?!$f+6- z1G9sH+CK>2RrNGNHF*G>GnXu=5{lXZWAs7joGiDFFbMO-%KRV*kbs{#Nq+hm<`rIf z;iVH=+KV^mg0wI3lI~QV&_CXMHhc z`axR=P3|pGzh%#8Kt5_%!ZYey1qB_a(AO<8|7PYak)m2x8AUtr&og)E!vWbfYp#_< z3@-+5Q%OiDp2bx48PwU2?~({%Q~JLqkIv~NF~ci~=!CwJE>aw|ZV`hE7WYyt9^$Hp zg*|1q%0*$9`nTyR;!#G{*XRS{USFSiWDDg8KagkTV*v3Jg2B&Jk@oR zp;k<6+N;29k_RqF1U$rR7^pA=p6^^=khKacKZYq?7>m1v%J<6>|IN6)ixW%>hAESQ zZ+LdQ`J{xC<^j5hq;Y(T4%{G>yF|8(9Uqhxt+Q{|gPmT0MW<%vuSZ}~h56M;6?c(4 zUaX%5-HwO|9J^+O7^>R1zGg%lieO`js5Izif~clO1?pGFon)gxKQe=ksYgv$EO|Az znQLsnH)XC@k)hevS)n|SPSQXxglPHq6QR0e4jK6cx1bbji zUPaSES>{u)^Gu;Uyu%pB7$2$AH&;E|WdBuyt`@9at*4c3-;C`qEzah~~${eE5|f z2zo8%xP3I>L7jD8PUgx?;+HzsIi#uHU36CY5u5f?Ap$ zkvl#q1gQPOSzNzyhqr-=l`QoR;cu>?0w471G|?mivUs+`8(QtfXo-N?tD1HX720yy zYOI=7tlx8RgbR&ksi^=!YOSw6q6bQaDwRsS{Bibyci)#>c)y2IT1}B3L3%A2x2NeZ z-~5Q#pC}9qP3kSWA(EJr0$jE=u?Jy6CtlyPAQBa7m1JIVzgoV&RKDNx0CYQ`NHVE3 zv)mlXSx*sEZ-mw({oZh(>dG|cu4PSV0|yHvn8EYDdQt+DDUfP>FmglV0Sha~gdy`0 zuOx#zv4ni)1*gOCA1(ckVx`f%7y23&|DDDmLbZSfvpc z`k~t%v0jVVM^31ey}ydL#1v6=vpUI(;uIA~W#zs65c?mKnk!rXG9Xpxjbhs$8TO-u z5B6oIKraji2ohK^hWvka0WcUlC9C53w}!u^5J;@mc>4JX)L&WnuRr|4fLaswXfMNl zEAC(F``^!>r4|0`fxrLy|4;s!^8e>%=z|X3$XY&ebOjj~G-B)&zwSQE6u-KSyCtoH zHfSz%Qf;rYNEnbDW~i`Y>a;CGn@8)fmW0J^rmL2Oc^Ai)`r0;3|7Di_+KG=p`FHY* z^D5_#E_pXx&3clp^7vt$0U1NgB>pV z?>|^su*v?2=pQG<_9vBK(3J?a6sX#OSY>oWv8U05VspzTdRa5)k@BVK%X0fU+)~rF zC;enbX1LhL>5w1jqsHTSYJ89)`fg*sYSRB}kTgFBDK%_!9{Ht=yoSBj^!UAuheaZ` z?Rlp5=ofioksfgs%>_1Jo1P`4AXIe@gr{$I)gUe!V>&Q&+)fVF=*4YKFgdLMyOIjX z{vA5n3dnG_rkc@fW#xR+hp8!fNe-nMb*)<7wt9`Yr)|1{5b#dmKsy{v=OgUn7h^o6 zKPSaMVh01%ms4r+Ib>;h^HvriI#b&(;?y;9M~F^_HzqVJ%&G-f{!DTGBcm$p!~Nq| zl|t%YM7O^pD_93-Hy~ekq}t#R6M96-PkP5;qg9FMK6~xqXBN2|B*3o|pj&cDdM@$Y z2qS0j>Ej&;$W=K!<;i~R$=JVc_pL-t!`T;Gzi?(+>-D+Xc%YWxN-nP;ob|@D)q6xj zPwQR>7YvWPQwNPRJ>E{u=?{W32IdGQ!w!&`?3_3Xl3wlWxjs?W%gC8;K58RQ=CkK= zp-J(~T!z|QWK!6yxU#{R9$Adsr@bI1p};KjU=wRs%oxj(4SB@qV;2+fq4?p`3ay>A z7fAm-)CIT%wpO~?vdP)llpkAO6LywN_j3Fhs(78)4dh#UmGKmR_e@yt)Fb~$|3!{> zJz+$k@L!Yhm-qnIuu7rZ`N2&Cv*_sSX{u~J@zOH$7wM5PN<+7WZ=D3bzK9Sth zZXykbn2u($P;Zr=l5}KgWJdl0AZC*@LpCwDxU(zKdOpQCu$)$&Z6axKc=EjWxkaC} z`TV4hor3>_Huf^_bx)P~ICmM@m-U=6saF{9MmUgP*Oh!6U`PsAj+bm5-pyjb!p1b3 zt&NC&(7G@;!Mv<#eSFM3s=@7D{VyW`NYVwWHdQQnJU$#JrzOBvDa1_L+aZ<>na|dU zpjE!h-yQTZLMJ`mir*b`*PvZ|m+=n%#w%SZUgGBXx*e$1*NLnTq63)KJt)W@d!WmR zuCF67q)>IghD4=@>x8$s!o7FDM1RrPLVIDuAFjVlV2~tN@Le2OO028iIsRNKz3oS%j^)hGQvj{U z`4VBCQ*k>V)UIuPJ%7LE_FsB~C>kEn^(C(D{Uxn4PMg^;P-)R6Gd|VU9yZV|<&=qa z-;lNWgb%y^=*ng#9fL=ML#Dr;1E0L&N+N5MG0}|7eXH&wKEtB5yS{|uBr=}grNQjn zsz*bbGP}*?Q55-R-4V+wNiUqhXyEDgl0| z;w4H?bHkmVFnC;S&Q*r={Z5eim~TxOFFs$Q> z>LK&nP_o+nnaTJ26V8pkS_ScTREix5eF5(OtKAGJ{@F|KC%rIV+ak#)f`cDXNWJa) zaNlWU(d)}x!AFt>v;JQ!^bg<6ZL=8yX;Rd(+BPDvTyyS-SvCIGoyrY3DIq) zaWx2$+V}&#cx_!UoncHKODu9pKVRg49o%lR86NJiIiy8zP>cJ6oS_dI@_YGdMb~f# z*oGudw}^1WiBL?%eBQGzjrD42Py3g&)8x*nJ?r@mZ^|pnbC{_u)(s(r^@*+4WtSvG^p7AOYKMd31Cp&-z;W| zTY{^uD};LNxM|f0*BZ}n)WzmF#7#e;J)^3!XlWDXQKPVUq;aVBIY8di^IXa0!FjEj z9S~hPfKH(qOW*(Llg-Z7x+X@_Ea`nP#_ThJ^0Dg(p2>;Z9WT}ch3uE;0#wrZi2>}1 z7i5-Ww8jqw9KsYincIiM>VOMhv?Ug(!Dfu8RvbMT`zkx?l%V<~MjL)U#i-RJ=Hc+pVI;G<7yFK51z$2QC zb$#iOSq)}md4 zrWIKka$Rus*oyp1X6w&7@rJVjG7HEJ3$iXWO3^TrmWQ=uzqVZqE+2M=#L!noo5dc7 zQ;AX_$;N|2J6h$~pAGikG>iXg%odTCaLG4w0khGhF*HWe+W<>n{ZbJ$Vt>wZ`27u= zCrbmUQKIXhd!UI=R%JKtrWyJH{;xX0e`YaqJMNRmj+5^EXG4R1CoeGfJ>DvW82AkM zE~I|5GI-)C18$J$?j#k??1ik%J%D&{rO&qeQ>@)&-79R&mGR1A*y9iSmV-I&iRB* z+KFVD$b@8p!%h0jeaI;b?xw@g8tQo^NDdRY^az>9+M4oO#i$QMVyAPFhi3B7;S#Xl zvXbY=TTB+sUOD+~HJo4R8Dq3?J%lHHUH+A-Ol5u~B)OZ}UrUqlX>pD*sXoZtDPhAS~K zP6Up|>lkJ75nZ|dU%N1A{{N9=cg3YbA*b{Wa?U)I8axWP1=%7G4OFUqRE0c+f)EY& zHZ3)wAm@1q;A3Nf##5u17s^{b293HZZ%A(H>bs*l|6O;~v$GqHyN>{4M!P#ONCBRgeERxVAL?!%+HuKCkwj=nR)5HX0 z>O_RP9RSur&AdwF=nHEuVWQ(pf*F7)3MQT-SbDwDTC zT8%A1`^|gVvH$Ar<3zQkwK|PZk6t93+dgZIv=06~OzZ>Hs1an*qJ8t@ArWP1--hMJ z^6FK->G>>%V_XRSe@Qju2nhm^1H35+H!nhN^Mmvm6FVd_<+9!g8coi)(nhgb^u;YD zh*o+j3dNU~xRa0n0G%G}t$w-gwFh&A#oHzD^|s}MqL>PzI^dr8qj0#;{V%7T+`bfQ zMI7Wx5pteV8<}^KJ^(}!+Z_gVsz8r0ngGDb7AI(;oT^-SrJbs+z z4f*iQd&snwoXOB6DQXpajF&J*<1%smB~p=f-doT4XDw%-Q+KL*6&J{I9cJ{!OAUcNsMLYqRgMVUOj|#inFD-=H&_QPk#t zGR!|F?C&AW`n9g8y}hX0BXd7kz(ZSM=!WXBh9xhULXl>aH81rEfx`7 z`mNzM3m9Z;PL|o7`IrWjWNJ2B*mS2nG-OI$pp@diwDy$d70DH~NAomL&(;{Q0}EwA{_R_$+^R1++L< z?{IAMl0I{6nNZQmaBkCCfNtp5abo$XY?9<>n=Zm~Ez(WuKnJmd2SO#hJmJ;be?^i7oAY-0Ba zn~%C)`N+K}Ak!9D*Q#M-QL(PP&I(q%z;Dun#j`EfCp1M6BSq|^z{>g33H}{l=|+aH5P1?p3`MgA!rm-BML@Ywj={>6>?1oH z3af2p_Z$85beR0)l$mgGPJQ7|dJy~2>LX(T<`n}a;0NLw;VDHGVLqlVas`!A!RcOH z4jW_D$=NJ7qfK5BB>)Cjveo+nN+Bv)kXjUjtnpZp-o({?NTvng0P5PCI-rmx(-hU6 zEucG>#2D?NyB;boP*tHsd#MiFDtt6hk&Ww9!eU#X7+ed5X6aw?kG?!Y_@u9mcT3>n zIz|H}!Y4Ffnt%4n>*=TKGm`xwvZO8pcPu+9M43bCy}1Z=wQb1>`o|6ip}M z-C1cp%L^h%cg$6^t>qN=@-I^1*2>cy(@NXk^EEuyPPLMYo2L}vJMDt27f{w z&~d2$^(IABcrkP-Wh>-RMjaiWW}ZYk8SHesYbMZ8h((`qF&O?9cMU(&fk&CrYVMd9 z&;^TXaSCR+v;Za1PNp#$KDZ2lO{e=@WC`hjyv-B(X7(dt4o6^o}uV7xWk)0qk+m;orf8}_%?f@91Z}% zb|vD|FODtQCY2lWvd9;ne+xo&4i2Vv;3F2a-TLB`GP;+Di-BbR{SO<5)(JDx56&rS zb&#RV757EAt=aCK;XvHW{p3!5iBLvLc5%MP3UNb|=QxjB&aZ~RmL@T~lg)HMN)qEA z7g0-oi;<(lb+8j6<8r<54XYx@UX``eY)Hpcnhju8)N6~FAJXk#EgS>n8!eIpw$oiU zr<`G@O{t1=Nm1fUUSEeXIb@I+ZvpTvR2V$C~>a_et~c6HaGB%9(5 zmIiCVBC302abE?hpbD`ts%CY>WlK_7I0tdr?qqvXiO?%a|a33h3KEvaczfmMjY|qL#uu^ zvPAhGPMRvc(ad%y8`fw=TV$wLfP#xY&#;oCR~-01XCJ%cBQoNf5`^=sHzH=bT&jD@15r>sW_LY>=gFn2!^vb&Rn<)hXFh50G-!fjh`h;2NZ1kt*YrY(P`D(RGyV(i0opo?z*#Xf`muqf?a_w zqHjFh2UjWnla`U6tRJA`ZkSAV9ENM-ohIS%ujPE5kOFY*OPiV7oQDyL5@R z<)`nTvHaYA)R8yOk`hkeXzk39X!TiCt$;TogMS$K*zn>gj0J5OaGo^EUV(x8@NV6`o47MQ(a*9_uArM(u1Dd!Ef7 zKfZ^~q7KiTc9Hs;fmz;a6+1AJjcduwhliAD6%zh=0~BM~d>}r%LuM2}#G(G(au4nC z{uQ;Ok^0iu+m$EV%J|o#CfHFyro5;>4!!!-j<4Z%_~G zqc`%_mTQlf>KL|^`Hky4Y>NM3W8f4zrgrll8sWZ)p(bNyb7R%7C+<{`(rah=y4H7)-Kzj;_F7Z|9-E_rxe843IX4~N+K{Vdr}e)cJ__wWa8 z^6{GV6Gcednt8%aQqwTX8qj2NKS zt99PY!N8=vOLzJ#hRRKHeV&sr;XWsO5+5Fa-=*AKE-ad7J2eDG^RK+~w+~!cB?%Jh zcV{nszP-O}R1XGi{*0kbKJR~XHQRJ*8oXFi$w|qA*Rvu}0#fqcnzLIlRWhENXp~Xj z5~_+5bC}GOD28o~|H<7_YVOf#r?{UdNnD3`W-tg>(KY7sD@TZv9Q(f@iGBax6w~~T z|BEOV|D#zJQs0H-ggwNT9iQ4vvAgtmP^*<^Ou{jL_phP4R2vyUo{r_Z2A4*`x9~ql z*c20|(CgCfcc!U~txuRDFa?zNVFT(c&z0tRqfRQ=`mqe+((~5)P+)&{_t=Sy20XN7 z3y}bW6W9Vg(@U@1Q+bCJ;`Ta@EXFM`=pk0RAuvuq?+|G1X8l#i)(1)cHVK%o5!D9`EB`5d^nK2M@ z#=X%SH0opz=MkaPKA9hqm}Nss3}SGy{Nnjg0CB|i?|A}LC`4zJl>bc9D?zId3i_r%LXM@5G zyCXKS3k+#pWjZj-Z92@=94gUw$dH}*pt7-x-L z1nJ*`NH*Vd^Q`~s8?`tf<$su)qfLv!LdG>R+KKrQ=}=Hs=>GL8vG*z=)wJ0F&uAX> zLeUo=|Ap!eLXgy7QQ|6j!(yaJf=tk`+BuvMouyy8bU0=Q6+i-=?jwU}mJfkjXw4A` zo+Hp1tv`sY-hpCK;2uFwNL{`5HAXmLyRJOuSDU{5)=`)ZD<6sNDJY~4d!0JI$B$@X zcmFg3gktd_T+U1Q)eld=PTj_8AlB5xJ?CI%aDO~;OIOco=TR@+vAwBeuz(fl*_A>l z^O7(?-mj?bdausP;i^_lY~aOHV+y2%Gj`<4n}Pye4+RDjM^`kxm-XCsp^=;Zmx&}N zLosLG4)a!1zu(o_{Y<)?S%2>lACY7Mm1}X}k_9Zkx{i4HOSlK?OIl!9BugkkA)A*= zvcnNl_}1OzDB5L$o$Dwb<| zj(PDGy3BYE#Vsu%(ssDVY$Bg#I2RN_k6QH>#56{Y-XGUMyW>3(h){=j8^@n&bNSQ~ zklD6ijh6>4T6Z^PZY*6=CX7_W?KFyM<_wBGH7{V`&wq+k7AAb{#H8vrnM?BJ0SB~m z2>rR?=u_dhPENs;WbLCi>cSR)0!4~x4QmV|V=Ns|dI40w(jgWYH48b7hVmGD-rm>Y z=ULTWjL*T2)PsAkQu4Ohlb~c#B%iv6j)2Qk-7CFx$_~gEI1wudci&#BT%k+(j-KN5 zlbKj0gJeLa%Ck?Zx~ku$XM0@t*Amw}eEKuij041@rXx7%dPdCuNcN(yg>qO}I94tk zci zNMIQ73i;M*H?pOKyKcOuEufWu+1;eZ9(&3dHPA72(}C6CZm=e`dG78uE||b~FK@j& z$ZU{?aH+)W8KF@}*`H;JZ6r`?GmX9IQVY1Be(4B`TE5S{eT2pb(gk=UO|ZdWF?`7< zHUosa07q>^fIWL;g9$4;Foj10r&*yE9+#m{n0iXJ3TPJ9GG0_BsRGMHkG>1(z9Mmq za=XnXxdj(diB=Xg+vdxbAxz`&(YHw0*@g28ie10&S}E#E89n!!X|^v&AFYN)Ok`KQ z)FU8DXIzg*Rsx!~yac;iya+=B5UB?%@CGJS0)Pn!3=As(KQ85rN~t#6?J|#9YxtudTD3-ua!hgC==1eM2&g)A}zqGQw{dUsj5K z%Tl!R*baX}fu^N}8?uT~r<7qJq)^ZUWf6)wAN?Iw9-G6!JyIg}yMro4U-!7t+I6X5 zAKbB#w#Cn@HoIZ2oqQ#mR5JOq^>UQHRhU9KZhTL_N$+oEm?GYb`BQTz&Xx$o&OY~{ zKyij*$R88dhCB47{v~REyg1Ym5fjJxyq#EI+TW`o{%eE-T`TdmR8BEfqt4o$ zHd-OR$&a{G;_FIzn|;)z+MIpUj&qg>ceqM$k{<^~{){%0-G9EdX-_4l|58E`NjBzI z*le1;;XvQ%nW)m7x!FZP8-GV@V!r{MaFs$*HYHbUQ(1B7d%Ez+sZm;5Le;g+h$iC< zyaJc~zJ)*Kej_fIbeVFQ6x@3_EG6!ZuQGf3|9BADr{3JnKe$@<64aVxiW zZ+|zDv4=dy{UM2yy7|l0zTB=)=py&mwc?h{HaHh6g9y`~)L0!$`Of&8HO)3N_(age z`Oa)H9cLJ@HEw^#dKRXpIz;L*bMHB3_g*YB`z&wu`2{q@;^?r1wZHq>08H~G_1C9U zJ}GpvfH!`EZbeXQGSwfmZstM84=#|!#IQxX@8NyB4}=C=23vic%jmQz8$3Q(x7++s z?O4A~1;`WYOzY)jnjD&km^F@p^;_qUV9E=tm6L92T+hWKoJ#sPH0$@jC_YG|MQXw) z@XDrzIYtqbQi}E=0;L4HgO`#kucSUQa^N6@t(=E|V&o7rS?xSYz zhX-v)P9?gR6CEG*!+IzGivdmTlXT(iG3Ue~V=LHpRmY`;Xp2S4E9Wa~U;70nBa4yL z5;+*~2H};OBa@^vStLZJqWDtkarzVYQ?WREaGAgWTZgF6tfWocm{M53HWj{e4KM34 zv{?FbG@Fjq@w$_wDK=s+=}FREO|{|Lch!9=5wkirT8sC0R;cUg7vR>&dQ67{8IxH# znR!J{*D1*0zJrSN!t1xB7Mp%|x^l_^KNqU3JQS0@8_FX)hi?l1M!M?4SmokcC+a?W3^bAvL|5H?F^HCG-RKL88TBLz$B^`FXf0K z4Tn{+Ye@_VMyPK=Kk1*>slGK4)pE}l|eSr!`)KbM_GAG>fL-5{GCcNFkb=~BW zSj({~%~(ZM8N8}!`PW|a`!qcQ?4O1Ll~mDU70&dxktaBdPZN2wFHCBXh9;OX*BKg@ z=P>QekpW+oXniE2lkb=gzyJGVodNNbt`4t6Wcg*zUFdm{A-70W1bgGX^nB+iLZ#NK9l&iQnV=owdelXcZ3k~jlleiE6y=9+3- zJo(k>ws|=|%}Ax%4P$f;_%o|oBKgEiExuQs+@uVOnA&6n7kICP3heTstdz=4^OLRK zrO|6CbtD)0V!W7tgnXfD`&B?s~Wl z-(+*7{Sldnr$~!R#BCiAwFr4)ZN)>K66?Rv@oCf&up%$bp+VjA*3 z{bjbsKo>gAmNSdG;9^%5F40c(tm&MTmET_ZZ1u zSi8-G_w-}elaYKu-r0PR*tgZ(CHbOe~X{AgMh{oIE!wVxzcpZ!h+OG%;!;Un!A;F-~XMVNx6ccNHE~NquJJ zsACWE?VlP4Z?p_IQ}OLH^}}+#6Tavbd2d-K4i_bPyMFyHdi+1N?n9if_i*vi zr)_viQ62oZz0Hr25l|-K`CtE#yccxu!9#Ui(}EFm)EN7FA?ZLD$$TJ)`9DiocVD5u zkd$NyOqY-QgWugELveHl-Y zD>EkHOi>viVq7b?NnEW;7&KAWZ zixRR1t9lA_98AqX36r25ezJ)FOg+i;`+o3SgyLuQA~%35Iy%mUOkm(QiOV2e6o?rf zM(@D~2ah%Q$5QZ638!lbF-f8uC340W?6(3RobP=rYhCFIh?R;fKU^RtpRLu2q*!#C zOPFYY&==(X8vkXr2QRiaybJ=j&Vyvu&bpQ!AKCqseF|0TY5hwJJ0<=X%9_A$Wi%5+ zML-y*(Rv>O&pk&x_4M;|l@V-%lUc1+zYK$@C8o9}INQ~1n}@NAgQ%-1ge~*R=^S2H z0irib1e1(4Xg{cv&j%6{)!QDb zH*;Ac;Uxp|x!`CL+smiwEwAk}-%8tD>qab$Hp*nEG~W0dL7ex2@Q&TpwdwCIj=l)j zsm|E=SVqY8nTO3>Wt^|5PX}&BO@Du4fAe0|RyDk;AJc&2a#AK=_4*yaw{y&&3~kwK z8<>GYz=CY=;>adZMR(TLmklVc&t2kI^J`6nGP)LTDV8_{TMpw<4BBHcM8BAc3&5A; zDaBL#FXra!y~|>AWxqn{J{l*?MBPIAZ{|4X!7;Q3$0KZ4EbPpQG*A5vfRqxnAKyAu zdMx^{-1cTIAa|cO-ppe_J|Szklf@B6Lq%Vup0YD^$_-{I?PCwr3UJ;GQ|^0AhQ#U& zk6~%^2Il5CHxg#5Z;=!HjJg-lwo<@}s~v7}?;e4cqO6p*HxbI5u_ZcKkIzgj!qm3i zuK60EtLdky+kBM`{yYx~&Qk>josfZp7N$h$ust2$QXRsvo!o+%$lll$bnJT{^ ztp;LaLTf6hdOp58snevS>hiO5Z3Gps5&~QL5v@*WNa<38^!BA~A zEn^6PS#Ee#(}7NYhc$49ZM@C;Ss{ss@b7fmJTga_AF?k|% z)nTcEQ+oRNuCv6!6dJR(Yl@jl%h0Qx^p9!miapGGt-w?RzWv9ZCIWS(`p~`Gku~w6 zVtXTa<=V+JsQ-B7Cbg$X+rG1BQ@;wKa5}QMW;@gHw#auopJAC=&DAzVOxOM7o1Y`P z61WSrGWnXW6_fh{`RG)N-Z2zdQ;)a<(cP4UfQIt?1#*Hy$&pIBDj!6NBW&sVW?`?c zy3%cdd#1%DAs5o^OrSV2BJF7;5EiL3KV_E3q_&;Po>HSrPyU7VrMKQmiZ`R_C|k}# z5!o{2=i1RNCQ)23gcW%r9nk!n!f}fzJYAVJy=8nYl;*2uD1#%x!8xmAV=T553SP?x zaU$@me)VN8e)OXe5`$2u)!HIhvxBe-WU&MzsTTLipWq9pnaLN?)6;+2;DyhZ_UH6~ z_&h_gw4Ssf;*F+ex?v*YrI;t>3oS<(Ot}lB#_3Tk&76F!57He+e%A3NHg|CbBv`IItxY00&2?ff~7 z$RtNhM-xOS$z|#ID#9INa*ceJ#4aEp-o09L$oJMye=%U=(ep12YfWwZeUt@_r*CGg z7mNM0`v5$*)_OF(+v9U8QpFdULv<73=1YmSXR&a`sos;NHl5`oo&cYZewW)z4w5z# z%}K0mr?0YTMS>o8JM_d(2knZIMWSRoiu-;d5Jrg(h-wMl%L$4gGfT`~GGg)(xubM7drnFCzNXb_)|HDF&m(H^;?1d+s3HZaYd1bXg+mv-)DD4cy|}Kci1p zN#efND?Yf{GL*bxKf9i_K*7HvPaV}}2r7?zvCIm<%C7%iBsr}UK8GLDc$RxzKuvcz;keJ4WYs-AdFdWflbU2YE zijQJD9}fK&&a~DvJuPjbSQD_jiV}FHkxUj|2)YltUWer6)+=bH*2edEikc>|aJ_D1&em}iID`Xr{mdzZ&uI_sDp3P@B^Q?|_5e`A3 zpk7_-D~1#;IpsRsTDOgB@{_p!(?gzV>W9@TC_fYWcLZf|Z z>E4IU{D#-@#FW_}$3Bi1v zMn?AqFGmM6N-wA%a-l5+U_g_T+0u=!T9eUWZ&Q%#Os5Q7^i0X7O5oS76ey;m(?9&A z(D{?2=u!9_mO@fKZJ^{Uyxi0p=FPWC5iqN@s{&2c-&UPC4E2humalrF zuK5CSF&U*}qN7c9M-<{FZLaOO+FFpyre%_jeX!7=uMFdxS=GuD59e z1F_K^RJqn05nH2a&CHZgH)RwLT{A>KQn2^%9iApsQZ}v1WBvq zzvd)w#oSzWMr87nDJU~h= z_W)C?NJ;^U9{Eau9z;+Gb=$s|3O5S3*vo(Ox>Sk6C!-jLTD?RvESbbx3ZhLKKTx$> z`$pp~817Wmot$7~e0UKUHfGWk8Q)uq&t$PmBVQuO*i0ALzJ&)Zj6Y1*%2W0Et*M%h zka1%~na(&r*&Yg@J>CqJSkj~2cVtdX2jGLe|zF?$4Z)O~7{V;vph=!ITp*#sY) zpthmT6jV=GC~HT~PSAr`wK&WBo?vEq+uajQE)bNItr_!%CoONf{|O5_-b@U8p5>hV z?0ZOKJ8!UYw%iP${W%(b0R0y#GHe%+;)Y}uscCkPxmJIe=vEKyKrHc&W*56AajvRi zb`4KZ{M!Md0V_=P<}IPUFqDMjhr`)me;rEa)MLD2sxwPrK{|BL#NI?Jq diff --git a/website/docs/tutorial/assets/sequential-two-agent-chat.png b/website/docs/tutorial/assets/sequential-two-agent-chat.png index 263c189cb702fb757be97513ca88489ec2794805..99fd0535e6d218cf3099480267dd5c8818d42217 100644 GIT binary patch literal 130 zcmWN?OA^8$3;@tQr{DsXPf3Ek4WC4qQRztAg{RlIc^7|XA8*}`W1pKbkAB>qGME4D z%u5+BGj}fLa%%LdXGJtJFjJ|rx5mCT&50^^Di MP|f~j4fjZ-e(n(`tpET3 literal 71759 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 diff --git a/website/docs/tutorial/assets/two-agent-chat.png b/website/docs/tutorial/assets/two-agent-chat.png index b0f9735b4409cad3baba9695622a71f8758bf47b..b706792715e86dd6e3eedfcdd6766399449b0210 100644 GIT binary patch literal 130 zcmWN?OA^8$3;@u5Pr(H&|Ah87kOW~yZAY*RPp@zDE_siByi}X>9J|){K5vgY*8lBO zRyv+~oI?7t%h6elmR*G15i!Li74o)4a9}(EXJ)DxiYXQnS|gmib4)%K0c$rS77&97 MEu()$1;mKU4+FX<(EtDd literal 15742 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 diff --git a/website/docs/tutorial/conversation-patterns.ipynb b/website/docs/tutorial/conversation-patterns.ipynb index 9495cbc0c2f4..3a3963dbc5aa 100644 --- a/website/docs/tutorial/conversation-patterns.ipynb +++ b/website/docs/tutorial/conversation-patterns.ipynb @@ -16,7 +16,7 @@ "source": [ "# Conversation Patterns\n", "\n", - "In the [last chapter](./code-executors) we used two-agent conversation, which\n", + "In the [previous chapter](./code-executors) we used two-agent conversation, which\n", "can be started by the `initiate_chat` method.\n", "Two-agent chat is a useful conversation pattern but AutoGen offers more.\n", "In this chapter, we will first dig a little bit more into the two-agent \n", @@ -25,55 +25,62 @@ "more than two agents.\n" ] }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "from autogen import ConversableAgent, GroupChat, GroupChatManager" - ] - }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Two-Agent Chat and Chat Result\n", "\n", - "Two-agent chat is the simplest from of conversation pattern. We have already\n", - "seen multiple examples of two-agent chat in the previous chapters\n", - "but there are still some details that we haven't covered yet.\n", + "Two-agent chat is the simplest from of conversation pattern. \n", + "We start a two-agent chat using the `initiate_chat` method of every \n", + "`ConversableAgent` agent.\n", + "We have already\n", + "seen multiple examples of two-agent chats in previous chapters\n", + "but we haven't covered the details.\n", + "\n", "The following figure illustrates how two-agent chat works.\n", "\n", "```{=mdx}\n", "![Two-agent chat](./assets/two-agent-chat.png)\n", "```\n", "\n", - "Besides the conversation itself, there is also a summarizer that can be used\n", - "to produce a summary of the conversation. The summarizer is optional and by\n", - "default the summary is the last message of the conversation (i.e., `last_msg`).\n", - "This can be changed by setting the `summary_method` parameter of the `initiate_chat`.\n", - "The example below shows how to use an LLM-based summarizer." + "A two-agent chats takes two inputs: a message, which is a string provided by\n", + "the caller; a context, which specifies various parameters of the chat.\n", + "The sender agent uses its chat initializer method\n", + "(i.e., `generate_init_message` method of `ConversableAgent`)\n", + "to generate an initial message from the inputs, and\n", + "sends it to the recipient agent to start the chat.\n", + "The sender agent is the agent whose `initiate_chat` method is called, and\n", + "the recipient agent is the other agent.\n", + "\n", + "Once the chat terminates, the history of the chat is processed by a \n", + "chat summarizer. The summarizer summarizes the chat history and calculates\n", + "the token usage of the chat. \n", + "You can configure the type of summary using the `summary_method`\n", + "parameter of the `initiate_chat` method. By default, it is the last\n", + "message of the chat (i.e., `summary_method='last_msg'`).\n", + "\n", + "The example below is a two-agent chat between a student agent and a teacher\n", + "agent. It's summarizer uses an LLM-based summary." ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "\u001b[33mAgent A\u001b[0m (to Agent B):\n", + "\u001b[33mStudent_Agent\u001b[0m (to Teacher_Agent):\n", "\n", "What is triangle inequality?\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mAgent B\u001b[0m (to Agent A):\n", + "\u001b[33mTeacher_Agent\u001b[0m (to Student_Agent):\n", "\n", "Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\n", "\n", @@ -86,20 +93,14 @@ "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", - "\u001b[33mAgent A\u001b[0m (to Agent B):\n", + "\u001b[33mStudent_Agent\u001b[0m (to Teacher_Agent):\n", "\n", "Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[33mAgent B\u001b[0m (to Agent A):\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33mTeacher_Agent\u001b[0m (to Student_Agent):\n", "\n", "Absolutely! Here's an example:\n", "\n", @@ -118,19 +119,22 @@ } ], "source": [ - "agent_a = ConversableAgent(\n", - " name=\"Agent A\",\n", + "import os\n", + "from autogen import ConversableAgent\n", + "\n", + "student_agent = ConversableAgent(\n", + " name=\"Student_Agent\",\n", " system_message=\"You are a student willing to learn.\",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", ")\n", - "agent_b = ConversableAgent(\n", - " name=\"Agent B\",\n", + "teacher_agent = ConversableAgent(\n", + " name=\"Teacher_Agent\",\n", " system_message=\"You are a math teacher.\",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", ")\n", "\n", - "chat_result = agent_a.initiate_chat(\n", - " agent_b,\n", + "chat_result = student_agent.initiate_chat(\n", + " teacher_agent,\n", " message=\"What is triangle inequality?\",\n", " summary_method=\"reflection_with_llm\",\n", " max_turns=2,\n", @@ -142,13 +146,13 @@ "metadata": {}, "source": [ "Let's see what the summary looks like.\n", - "The summary is stored in the `chat_result` object of type `ChatResult` \n", + "The summary is stored in the `chat_result` object of the type `ChatResult` \n", "that was returned by the `initiate_chat` method." ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -167,18 +171,18 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "In the above example, the summarizer is set to `reflection_with_llm` which\n", - "takes a list of messages from the conversation and summarize using a call to\n", - "an LLM.\n", - "The summarizer first tries to use the recipient's LLM, if it is not available\n", - "then it uses the sender's LLM. In this case the recipient is \"Agent B\" and\n", - "the sender is \"Agent A\".\n", + "In the above example, the summary method is set to `reflection_with_llm` which\n", + "takes a list of messages from the conversation and summarize them \n", + "using a call to an LLM.\n", + "The summary method first tries to use the recipient's LLM, if it is not available\n", + "then it uses the sender's LLM. In this case the recipient is \"Teacher_Agent\" and\n", + "the sender is \"Student_Agent\".\n", "The input prompt for the LLM is the following default prompt:" ] }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 13, "metadata": {}, "outputs": [ { @@ -200,44 +204,97 @@ "You can also use a custom prompt by setting the `summary_prompt` argument\n", "of `initiate_chat`.\n", "\n", - "There are some other useful information in the `chat_result` object, including\n", + "There are some other useful information in the `ChatResult` object, including\n", "the conversation history, human input, and token cost." ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "[{'content': 'What is triangle inequality?', 'role': 'assistant'}, {'content': 'Triangle inequality theorem is a fundamental principle in geometry that states that the sum of the lengths of any two sides of a triangle must always be greater than the length of the third side. In a triangle with sides of lengths a, b, and c, the theorem can be written as:\\n\\na + b > c\\na + c > b\\nb + c > a\\n\\nEach of these represents the condition for one specific side (a, b, or c). All must be true for a triangle to exist.', 'role': 'user'}, {'content': 'Thank you for the explanation. This theorem helps in understanding the basic properties of a triangle. It can also be useful when solving geometric problems or proving other mathematical theorems. Can you give me an example of how we can use the triangle inequality theorem?', 'role': 'assistant'}, {'content': 'Absolutely! Here\\'s an example:\\n\\nSuppose you\\'re given three line segments with lengths 10, 7, and 3 units. The question is: \"Can these three line segments form a triangle?\"\\n\\nTo answer this, you would use the triangle inequality theorem. Adding any two side lengths together should be greater than the third:\\n\\n- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\\n- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\\n- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of the third side (10), but not greater.\\n\\nSo, these three lines cannot form a triangle, because not all pairs of sides satisfy the triangle inequality theorem.', 'role': 'user'}]\n" + "[{'content': 'What is triangle inequality?', 'role': 'assistant'},\n", + " {'content': 'Triangle inequality theorem is a fundamental principle in '\n", + " 'geometry that states that the sum of the lengths of any two '\n", + " 'sides of a triangle must always be greater than the length of '\n", + " 'the third side. In a triangle with sides of lengths a, b, and c, '\n", + " 'the theorem can be written as:\\n'\n", + " '\\n'\n", + " 'a + b > c\\n'\n", + " 'a + c > b\\n'\n", + " 'b + c > a\\n'\n", + " '\\n'\n", + " 'Each of these represents the condition for one specific side (a, '\n", + " 'b, or c). All must be true for a triangle to exist.',\n", + " 'role': 'user'},\n", + " {'content': 'Thank you for the explanation. This theorem helps in '\n", + " 'understanding the basic properties of a triangle. It can also be '\n", + " 'useful when solving geometric problems or proving other '\n", + " 'mathematical theorems. Can you give me an example of how we can '\n", + " 'use the triangle inequality theorem?',\n", + " 'role': 'assistant'},\n", + " {'content': \"Absolutely! Here's an example:\\n\"\n", + " '\\n'\n", + " \"Suppose you're given three line segments with lengths 10, 7, and \"\n", + " '3 units. The question is: \"Can these three line segments form a '\n", + " 'triangle?\"\\n'\n", + " '\\n'\n", + " 'To answer this, you would use the triangle inequality theorem. '\n", + " 'Adding any two side lengths together should be greater than the '\n", + " 'third:\\n'\n", + " '\\n'\n", + " '- For sides 10 and 7: 10 + 7 = 17, which is larger than 3.\\n'\n", + " '- For sides 10 and 3: 10 + 3 = 13, which is larger than 7.\\n'\n", + " '- For sides 7 and 3: 7 + 3 = 10, which is equal to the length of '\n", + " 'the third side (10), but not greater.\\n'\n", + " '\\n'\n", + " 'So, these three lines cannot form a triangle, because not all '\n", + " 'pairs of sides satisfy the triangle inequality theorem.',\n", + " 'role': 'user'}]\n" ] } ], "source": [ "# Get the chat history.\n", - "print(chat_result.chat_history)" + "import pprint\n", + "\n", + "pprint.pprint(chat_result.chat_history)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "That chat messages in the chat result are from the \n", + "recipient agent's perspective -- the sender is the \"assistant\" and the recipient\n", + "is the \"user\"." ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "({'total_cost': 0.04521, 'gpt-4-0613': {'cost': 0.04521, 'prompt_tokens': 709, 'completion_tokens': 399, 'total_tokens': 1108}}, {'total_cost': 0})\n" + "({'gpt-4-0613': {'completion_tokens': 399,\n", + " 'cost': 0.04521,\n", + " 'prompt_tokens': 709,\n", + " 'total_tokens': 1108},\n", + " 'total_cost': 0.04521},\n", + " {'total_cost': 0})\n" ] } ], "source": [ "# Get the cost of the chat.\n", - "print(chat_result.cost)" + "pprint.pprint(chat_result.cost)" ] }, { @@ -248,7 +305,7 @@ "\n", "The name of this pattern is self-explanatory -- it is a sequence of\n", "chats between two agents, chained together by a mechanism called *carryover*,\n", - "which brings the summary of the previous chat to the initial context\n", + "which brings the summary of the previous chat to the context\n", "of the next chat.\n", "\n", "This pattern is useful for complex task that can be broken down into \n", @@ -259,12 +316,14 @@ "![initiate_chats](./assets/sequential-two-agent-chat.png)\n", "```\n", "\n", - "In this pattern, the a pair of agents first start a conversation,\n", - "then the summary of the conversation is inserted into the initial\n", - "message of the next conversation. The previous summary is called a *carryover*.\n", - "Carryover accumulates as the conversation goes on, \n", - "so each subsequent conversation is started with all the carryovers \n", - "from previous conversations.\n", + "In this pattern, the a pair of agents first start a two-agent chat,\n", + "then the summary of the conversation becomes a *carryover* for the next\n", + "two-agent chat. The next chat passes the carryover to the `carryover` parameter\n", + "of the context to generate its initial message.\n", + "\n", + "Carryover accumulates as the conversation moves forward,,\n", + "so each subsequent chat starts with all the carryovers \n", + "from previous chats.\n", "\n", "The figure above shows distinct recipient agents for all the chats, however,\n", "the recipient agents in the sequence are allowed to repeat." @@ -283,11 +342,11 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ - "# The Number Agent that always returns the same numbers.\n", + "# The Number Agent always returns the same numbers.\n", "number_agent = ConversableAgent(\n", " name=\"Number_Agent\",\n", " system_message=\"You return me the numbers I give you, one number each line.\",\n", @@ -295,7 +354,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", - "# The Adder Agent that adds 1 to each number it receives.\n", + "# The Adder Agent adds 1 to each number it receives.\n", "adder_agent = ConversableAgent(\n", " name=\"Adder_Agent\",\n", " system_message=\"You add 1 to each number I give you and return me the new numbers, one number each line.\",\n", @@ -303,7 +362,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", - "# The Multiplier Agent that multiplies each number it receives by 2.\n", + "# The Multiplier Agent multiplies each number it receives by 2.\n", "multiplier_agent = ConversableAgent(\n", " name=\"Multiplier_Agent\",\n", " system_message=\"You multiply each number I give you by 2 and return me the new numbers, one number each line.\",\n", @@ -311,7 +370,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", - "# The Subtracter Agent that subtracts 1 from each number it receives.\n", + "# The Subtracter Agent subtracts 1 from each number it receives.\n", "subtracter_agent = ConversableAgent(\n", " name=\"Subtracter_Agent\",\n", " system_message=\"You subtract 1 from each number I give you and return me the new numbers, one number each line.\",\n", @@ -319,7 +378,7 @@ " human_input_mode=\"NEVER\",\n", ")\n", "\n", - "# The Divider Agent that divides each number it receives by 2.\n", + "# The Divider Agent divides each number it receives by 2.\n", "divider_agent = ConversableAgent(\n", " name=\"Divider_Agent\",\n", " system_message=\"You divide each number I give you by 2 and return me the new numbers, one number each line.\",\n", @@ -670,6 +729,8 @@ "metadata": {}, "outputs": [], "source": [ + "from autogen import GroupChat\n", + "\n", "group_chat = GroupChat(\n", " agents=[adder_agent, multiplier_agent, subtracter_agent, divider_agent, number_agent],\n", " messages=[],\n", @@ -692,6 +753,8 @@ "metadata": {}, "outputs": [], "source": [ + "from autogen import GroupChatManager\n", + "\n", "group_chat_manager = GroupChatManager(\n", " groupchat=group_chat,\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", @@ -1149,11 +1212,13 @@ "the nested chats handler checks if the message should trigger a nested chat\n", "based on conditions specified by the user.\n", "If the conditions are met, the nested chats handler starts a sequence of\n", - "nested chats specified using the sequential chat pattern.\n", + "nested chats specified using the sequential chats pattern.\n", "In each of the nested chats, the sender agent is always the same agent\n", "that triggered the nested chats.\n", - "In the end, the summary of the last nested chat is used as the response\n", - "to the original message." + "In the end, the nested chat handler uses the results of the nested chats\n", + "to produce a response to the original message.\n", + "By default, the nested chat handler uses the summary of the last chat\n", + "as the response." ] }, { diff --git a/website/docs/tutorial/introduction.ipynb b/website/docs/tutorial/introduction.ipynb index fc05bf9df839..fb49dd24bbdc 100644 --- a/website/docs/tutorial/introduction.ipynb +++ b/website/docs/tutorial/introduction.ipynb @@ -100,6 +100,14 @@ ")" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `llm_config` argument contains a list of configurations for the LLMs.\n", + "See [LLM Configuration](/docs/llm_configuration) for more details." + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/website/docs/tutorial/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb index bbc94a8f670c..4858e0592f0d 100644 --- a/website/docs/tutorial/what-is-next.ipynb +++ b/website/docs/tutorial/what-is-next.ipynb @@ -43,6 +43,8 @@ "\n", "[![](https://img.shields.io/discord/1153072414184452236?logo=discord&style=flat)](https://discord.gg/pAbnFJrkgZ)\n", "\n", + "To contribute your work to our [gallery](../Gallery), following\n", + "our [contribution guide](../Contribute) to make a pull request.\n", "You can also share your work with the community on the Discord server." ] } From c83d8d89e5e2b217e0a3a2a6f06346b2bb1786be Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Sun, 3 Mar 2024 00:13:08 -0800 Subject: [PATCH 26/43] update whats next --- website/docs/tutorial/what-is-next.ipynb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/website/docs/tutorial/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb index 4858e0592f0d..e88dbe64e43d 100644 --- a/website/docs/tutorial/what-is-next.ipynb +++ b/website/docs/tutorial/what-is-next.ipynb @@ -45,7 +45,12 @@ "\n", "To contribute your work to our [gallery](../Gallery), following\n", "our [contribution guide](../Contribute) to make a pull request.\n", - "You can also share your work with the community on the Discord server." + "You can also share your work with the community on the Discord server.\n", + "\n", + "# Advanced Topics\n", + "\n", + "To check out dig deeper into the AutoGen, you can check out the\n", + "the the list of [example notebooks](../Examples.md)." ] } ], From a0b816dceb0333480546821e5b7eeb063d3211d9 Mon Sep 17 00:00:00 2001 From: gagb Date: Tue, 5 Mar 2024 08:41:29 +0000 Subject: [PATCH 27/43] Break down chapter 2 into two chapters --- ...ntroduction.ipynb => 1-introduction.ipynb} | 37 +- website/docs/tutorial/2-termination.ipynb | 344 ++++++++++++++++++ ...e-loop.ipynb => 3-human-in-the-loop.ipynb} | 242 ++++++------ 3 files changed, 462 insertions(+), 161 deletions(-) rename website/docs/tutorial/{introduction.ipynb => 1-introduction.ipynb} (89%) create mode 100644 website/docs/tutorial/2-termination.ipynb rename website/docs/tutorial/{human-in-the-loop.ipynb => 3-human-in-the-loop.ipynb} (74%) diff --git a/website/docs/tutorial/introduction.ipynb b/website/docs/tutorial/1-introduction.ipynb similarity index 89% rename from website/docs/tutorial/introduction.ipynb rename to website/docs/tutorial/1-introduction.ipynb index fb49dd24bbdc..9d3a03946c30 100644 --- a/website/docs/tutorial/introduction.ipynb +++ b/website/docs/tutorial/1-introduction.ipynb @@ -1,15 +1,5 @@ { "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -124,7 +114,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Sure thing, here's one for you:\n", + "Sure, here's one for you:\n", "\n", "Why don't scientists trust atoms? \n", "\n", @@ -157,12 +147,14 @@ " \"cathy\",\n", " system_message=\"Your name is Cathy and you are a part of a duo of comedians.\",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.9, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", ")\n", "\n", "joe = ConversableAgent(\n", " \"joe\",\n", " system_message=\"Your name is Joe and you are a part of a duo of comedians.\",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.7, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", ")" ] }, @@ -189,33 +181,27 @@ "Tell me a joke.\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33mcathy\u001b[0m (to joe):\n", "\n", - "Sure, here's a classic for you:\n", + "Sure, here's a classic one for you:\n", "\n", "Why don't scientists trust atoms?\n", "\n", "Because they make up everything!\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33mjoe\u001b[0m (to cathy):\n", "\n", - "That's a good one, Joe! Okay, here's another one:\n", + "That's a great one, Joe! Here's my turn:\n", "\n", - "Why don't we ever tell secrets on a farm?\n", + "Why don't some fish play piano?\n", "\n", - "Because the potatoes have eyes, the corn has ears, and the beansstalk!\n", + "Because you can't tuna fish!\n", "\n", "--------------------------------------------------------------------------------\n", - "\u001b[31m\n", - ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33mcathy\u001b[0m (to joe):\n", "\n", - "Haha, that's a funny one, Cathy! Here's mine:\n", + "Haha, good one, Cathy! I have another:\n", "\n", "Why was the math book sad?\n", "\n", @@ -243,9 +229,8 @@ "## Summary\n", "\n", "In this chapter, we introduced the concept of agents, roles and conversations in AutoGen.\n", - "For simplicity, we only used the LLM. In the [next chapter](./human-in-the-loop), \n", - "we will show you how to use the human-in-the-loop component to provide feedback \n", - "to the agents." + "For simplicity, we only used LLMs and created fully autonomous agents (`human_input_mode` was set to `False`). In the [next chapter](./2-termination), \n", + "we will show how you can control when to _terminate_ a conversation between autonomous agents." ] } ], @@ -265,7 +250,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.5" + "version": "3.10.13" } }, "nbformat": 4, diff --git a/website/docs/tutorial/2-termination.ipynb b/website/docs/tutorial/2-termination.ipynb new file mode 100644 index 000000000000..0e1cf70f3f0f --- /dev/null +++ b/website/docs/tutorial/2-termination.ipynb @@ -0,0 +1,344 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Terminating Conversations Between Agents\n", + "\n", + "In this chapter, we will explore how to terminate a conversation between AutoGen agents.\n", + "\n", + "_But why is this important?_ Its because in any complex, autonomous workflows it's crucial to know when to stop the workflow. For example, when the task is completed, or perhaps when the process has consumed enough resources and needs to either stop or adopt different strategies, such as user intervention. So AutoGen natively supports several mechanisms to terminate conversations.\n", + "\n", + "## How to Control Termination with AutoGen?\n", + "\n", + "Currently there are two broad mechanism to control the termination of conversations between agents:\n", + "\n", + "1. **Specify parameters in `initiate_chat`**: When initiating a chat, you can define parameters that determine when the conversation should end.\n", + "\n", + "2. **Configure an agent to trigger termination**: When defining individual agents, you can specify parameters that allow agents to terminate of a conversation based on particular (configurable) conditions." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### Parameters in `initiate_chat`\n", + "In the previous chapter we actually demonstrated this when we used the `max_turns` parameter to limit the number of turns. If we increase `max_turns` to say `3` notice the conversation takes more rounds to terminate:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "from autogen import ConversableAgent" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "cathy = ConversableAgent(\n", + " \"cathy\",\n", + " system_message=\"Your name is Cathy and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.9, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", + ")\n", + "\n", + "joe = ConversableAgent(\n", + " \"joe\",\n", + " system_message=\"Your name is Joe and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.7, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Tell me a joke.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Why don't scientists trust atoms?\n", + "\n", + "Because they make up everything!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Great one, Joe! Here's one to add to our routine. Why don't we ever tell secrets on a farm?\n", + "\n", + "Because the potatoes have eyes, the corn has ears, and the beans stalk!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Oh, Cathy, that's a good one! I love it. Let's keep the comedy rolling. How about this one? \n", + "\n", + "Why don't some fish play piano?\n", + "\n", + "Because you can't tuna fish!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "result = joe.initiate_chat(cathy, message=\"Tell me a joke.\", max_turns=2)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Tell me a joke.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Why don't scientists trust atoms?\n", + "\n", + "Because they make up everything!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Great one, Joe! Here's one to add to our routine. Why don't we ever tell secrets on a farm?\n", + "\n", + "Because the potatoes have eyes, the corn has ears, and the beans stalk!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Oh, Cathy, that's a good one! I love it. Let's keep the comedy rolling. How about this one? \n", + "\n", + "Why don't some fish play piano?\n", + "\n", + "Because you can't tuna fish!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Hah, classic! Alright, here's my comeback. \n", + "\n", + "Why don't skeletons fight each other?\n", + "\n", + "Because they don't have the guts!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Oh Cathy, you really have a funny bone! Well here's mine:\n", + "\n", + "What do you call a snowman with a six-pack?\n", + "\n", + "An abdominal snowman!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "result = joe.initiate_chat(\n", + " cathy, message=\"Tell me a joke.\", max_turns=3\n", + ") # increase the number of max turns before termination" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "### Agent-triggered termination\n", + "You can also terminate a conversation by configuring parameters of an agents.\n", + "Currently, there are two parameters you can can configure:\n", + "\n", + "1. `max_consecutive_auto_reply`: This condition trigger termination if the number of automatic responses to the same sender exceeds a threshold. You can customize this using the `max_consecutive_auto_reply` argument of the `ConversableAgent` class. To accomplish this the agent maintains a counter of the number of consecutive automatic responses to the same sender. Note that this counter can be reset because of human intervention. We will describe this in more detail in the next chapter.\n", + "2. `is_termination_msg`: This condition can trigger termination if the _received_ message satisfies a particular condition, e.g., it contains the word \"TERMINATE\". You can customize this condition using the `is_terminate_msg` argument in the constructor of the `ConversableAgent` class." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Using `max_consecutive_auto_reply`\n", + "\n", + "In the example below lets set `max_consecutive_auto_reply` to `1` and notice how this ensures that Joe only replies once." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Tell me a joke.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Why don't scientists trust atoms?\n", + "\n", + "Because they make up everything!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Great one, Joe! Here's one to add to our routine. Why don't we ever tell secrets on a farm?\n", + "\n", + "Because the potatoes have eyes, the corn has ears, and the beans stalk!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Oh, Cathy, that's a good one! I love it. Let's keep the comedy rolling. How about this one? \n", + "\n", + "Why don't some fish play piano?\n", + "\n", + "Because you can't tuna fish!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "joe = ConversableAgent(\n", + " \"joe\",\n", + " system_message=\"Your name is Joe and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.7, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", + " max_consecutive_auto_reply=1, # Limit the number of consecutive auto-replies.\n", + ")\n", + "\n", + "result = joe.initiate_chat(cathy, message=\"Tell me a joke.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Using `is_termination_msg`\n", + "\n", + "Lets consider a simple guess-a-number game between two agents, with the termination message set to check for the number that is the correct guess (i.e., 53).\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mjoe\u001b[0m (to cathy):\n", + "\n", + "Tell me a joke and then say the words GOOD BYE.\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[33mcathy\u001b[0m (to joe):\n", + "\n", + "Why don't scientists trust atoms?\n", + "\n", + "Because they make up everything!\n", + "\n", + "GOOD BYE!\n", + "\n", + "--------------------------------------------------------------------------------\n" + ] + } + ], + "source": [ + "joe = ConversableAgent(\n", + " \"joe\",\n", + " system_message=\"Your name is Joe and you are a part of a duo of comedians.\",\n", + " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"temperature\": 0.7, \"api_key\": os.environ.get(\"OPENAI_API_KEY\")}]},\n", + " human_input_mode=\"NEVER\", # Never ask for human input.\n", + " is_termination_msg=lambda msg: \"good bye\" in msg[\"content\"].lower(),\n", + ")\n", + "\n", + "result = joe.initiate_chat(cathy, message=\"Tell me a joke and then say the words GOOD BYE.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "Notice how the conversation ended based on contents of cathy's message!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Summary\n", + "\n", + "In this chapter we introduced mechanisms to terminate a conversation between agents.\n", + "You can configure both parameters in `initiate_chat` and also configuration of agents.\n", + "\n", + "That said, it is important to note that when a termination condition is triggered,\n", + "the conversation may not always terminated immediately. The actual termination\n", + "depends on the `human_input_mode` argument of the `ConversableAgent` class.\n", + "For example, when mode is `NEVER` the termination conditions above will end the conversations.\n", + "But when mode is `ALWAYS` or `TERMINATE`, it will not terminate immediately\n", + "we describe this behavior and why its important in the [next chapter](./3-human-in-the-loop).\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.13" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/website/docs/tutorial/human-in-the-loop.ipynb b/website/docs/tutorial/3-human-in-the-loop.ipynb similarity index 74% rename from website/docs/tutorial/human-in-the-loop.ipynb rename to website/docs/tutorial/3-human-in-the-loop.ipynb index a04afc0102b2..892a9868605c 100644 --- a/website/docs/tutorial/human-in-the-loop.ipynb +++ b/website/docs/tutorial/3-human-in-the-loop.ipynb @@ -4,151 +4,63 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Allowing Human Feedback and Termination of Conversations\n", - "\n", - "In the [last chapter](./introduction) we introduced the `ConversableAgent` class.\n", - "We also briefly mentioned that this\n", - "class supports a human-in-the-loop component.\n", - "In this chapter, we will show how you can use this component to both allow human \n", - "feedback to an agent and also control when to terminate a conversation between agents.\n", + "# Allowing Human Feedback in Agents\n", "\n", - "The figure below show an overview of the human-in-the-loop component and how it is used.\n", + "In the last two chapters we introduced the `ConversableAgent` class and showed how you can use it to create autonomous (`human_input_mode=NEVER`) agents that can accomplish tasks. We also showed how can properly terminate a conversation between agents.\n", "\n", - "````mdx-code-block\n", - "![human-in-the-loop-component](./assets/human-in-the-loop.png)\n", - "````\n", - "\n", - "As shown in the figure, when an agent receives a message, it is first intercepted by\n", - "the human-in-the-loop component, which decides between the following options:\n", - "\n", - "1. pass the message to the other components that generates an automatic response\n", - "2. _short-circuit_ other components and ask for and return a response from a human\n", - "3. terminate the conversation" + "But many applications may require putting humans-in-the-loop with agents. For example, to allow human feedback to steer agents in the right direction, specify goals, etc. In this chapter, we will show how AutoGen supports human intervention." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Termination Conditions\n", + "## Human Input Modes\n", "\n", - "By default, the human-in-the-loop component considers two conditions for deciding whether to terminate a conversation:\n", + "Currently AutoGen supports three modes for human input. The mode is specified through\n", + "the `human_input_mode` argument of the `ConversableAgent`. The three modes are:\n", "\n", - "1. _Message-based_: This condition triggers termination if the content of a message contains\n", - " the word \"TERMINATE\". You can customize this condition\n", - " using the `is_terminate_msg` argument in the constructor of the `ConversableAgent` class.\n", - "2. _Counter-based_: This condition trigger termination if the number of automatic responses to the same sender\n", - " exceeds a threshold. You can customize this using the `max_consecutive_auto_reply` argument of the\n", - " `ConversableAgent` class.\n", + "1. `NEVER`: human input is never requested.\n", + "2. `TERMINATE` (default): human input is only requested when a termination condition is\n", + " met. Note that in this mode if the human chooses to intercept and reply, the conversation continues\n", + " and the counter used by `max_consectuive_auto_reply` is reset.\n", + "3. `ALWAYS`: human input is always requested and the human can choose to skip and trigger an auto-reply,\n", + " intercept and provide feedback, or terminate the conversation. Note that in this mode\n", + " termination based on `max_consecutive_auto_reply` is ignored.\n", "\n", - "It is important to note that when a termination condition is triggered,\n", - "the conversation is not always terminated immediately. The actual termination\n", - "depends on the `human_input_mode` argument of the `ConversableAgent` class." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here is an example that alters the default message-based termination condition.\n", - "In this example, the termination condition is triggered if the message\n", - "contains the phrase _\"good bye my friend\"_." + "The previous chapters already showed many examples of the cases when `human_input_mode` is `NEVER`. \n", + "Below we show one such example again and then show the differences when this mode is set to `ALWAYS` and `NEVER` instead." ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import os\n", - "from autogen import ConversableAgent\n", - "\n", - "term_by_msg_agent = ConversableAgent(\n", - " \"auto_reply_agent\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " is_termination_msg=lambda msg: \"good bye my friend\" in msg[\"content\"].lower(),\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here is a different example for that uses the counter-based termination condition.\n", - "In this example, the termination condition is triggered if the number of\n", - "automatic responses to the same sender exceeds 3." - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [], - "source": [ - "term_by_count_agent = ConversableAgent(\n", - " \"auto_reply_agent\",\n", - " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", - " max_consecutive_auto_reply=3,\n", - ")" + "from autogen import ConversableAgent" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Human Input Modes\n", - "\n", - "Currently AutoGen supports three modes for human input. The mode is specified through\n", - "the `human_input_mode` argument of the `ConversableAgent`. And these modes combined\n", - "with the termination conditions dictate how the human-in-the-loop component\n", - "behaves:\n", - "\n", - "1. `NEVER`: human input is never requested, and the termination conditions are\n", - " used determine when to terminate.\n", - "2. `ALWAYS`: human input is always requested and the human can choose to skip,\n", - " intercept, or terminate the conversation; message-based termination\n", - " condition is still enacted upon if human chooses to skip; counter-based\n", - " termination condition is ignored.\n", - "3. `TERMINATE`: human input is only requested when a termination condition is\n", - " met -- this is the default mode; if the human chooses to skip, automatic\n", - " reply components are used; \n", - " if the human chooses to intercept and reply, the conversation continues\n", - " and the counter is reset; if the human chooses to terminate, the conversation\n", - " is then terminated.\n", - "\n", - "Let us see each of these modes in action." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Human Input Mode = `NEVER`\n", + "## Human Input Mode = `NEVER`\n", "\n", "In this mode, human input is never requested and the termination conditions\n", "are used to terminate.\n", - "This mode is useful only when you want your agents to run fully autonomously.\n", + "This mode is useful when you want your agents to act fully autonomously.\n", "\n", "Here is an example of using this mode to run a simple guess-a-number game between\n", "two agents, with the maximum number of guesses set to 5 through\n", - "counter-based termination, and the termination message set to check for the \n", + "`max_consecutive_auto_reply`, and the termination message set to check for the \n", "number that is the correct guess." ] }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 2, "metadata": {}, "outputs": [ { @@ -216,7 +128,6 @@ " \"If I guess too high, say 'too high', if I guess too low, say 'too low'. \",\n", " llm_config={\"config_list\": [{\"model\": \"gpt-4\", \"api_key\": os.environ[\"OPENAI_API_KEY\"]}]},\n", " is_termination_msg=lambda msg: \"53\" in msg[\"content\"], # terminate if the number is guessed by the other agent\n", - " max_consecutive_auto_reply=5, # set maximum turn-based auto-reply to 5\n", " human_input_mode=\"NEVER\", # never ask for human input\n", ")\n", "\n", @@ -249,7 +160,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Human Input Mode = `ALWAYS`\n", + "## Human Input Mode = `ALWAYS`\n", "\n", "In this mode, human input is always requested and the human can choose to skip,\n", "intersecpt, or terminate the conversation.\n", @@ -261,7 +172,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -280,7 +191,7 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", "\n", - "75\n", + "70\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_with_number\u001b[0m (to human_proxy):\n", @@ -290,12 +201,17 @@ "--------------------------------------------------------------------------------\n", "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", "\n", - "I give up\n", + "50\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_with_number\u001b[0m (to human_proxy):\n", "\n", - "The number I was thinking of was 53. Give it another try next time, it's all about making educated guesses and having fun!\n", + "Too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33mhuman_proxy\u001b[0m (to agent_with_number):\n", + "\n", + "53\n", "\n", "--------------------------------------------------------------------------------\n" ] @@ -329,7 +245,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Human Input Mode = `TERMINATE`\n", + "## Human Input Mode = `TERMINATE`\n", "\n", "In this mode, human input is only requested when a termination condition is\n", "met. **If the human choose to intercept and reply, counter will be rest**; if \n", @@ -342,7 +258,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -411,96 +327,152 @@ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "You got it! The number was 53. Well done!\n", + "Correct! You've guessed my number.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Great! That was a fun game. If you want, we can play again.\n", + "Great! This was a fun game. Let's play again sometime.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "Let's play again! \n", + "10\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Wonderful! Guess a number between 1 and 100.\n", + "Your guess is too high.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "I'll start off with a guess of 50.\n", + "Okay, let's try 5.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Too high.\n", + "Your guess is too high.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "Alright, let's try 25.\n", + "Okay, how about 2?\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Too low.\n", + "Your guess is too low.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "How about 37?\n", + "Alright, then it must be 3.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Too low.\n", + "Yes, correct! The number was 3. Good job guessing it!\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "Let's try 45 then.\n", + "Thank you! That was indeed a fun game. I look forward to playing again with you.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Too high.\n", + "I'm glad you enjoyed it! I'm always here for a good game. Don't hesitate to come back when you want to play again.\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "So, it's lower than 45 and higher than 37. Is it 41?\n", + "Surely, I will. This was fun. Thanks for playing with me. See you next time!\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "Too high.\n", + "You're welcome! I'm glad you had fun. Looking forward to our next game. See you next time!\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Lets play again\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "Sure! I'll think of a number between 1 and 100. Let's start guessing!\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[31m\n", - ">>>>>>>> NO HUMAN INPUT RECEIVED.\u001b[0m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "I'll start with 50.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "The guess is too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Okay, let's try 75.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "The guess is too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "How about 62?\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "The guess is too low.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[31m\n", + ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", + "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", + "\n", + "Then, let's try 68.\n", + "\n", + "--------------------------------------------------------------------------------\n", + "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", + "\n", + "The guess is too high.\n", + "\n", + "--------------------------------------------------------------------------------\n", "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[33magent_with_number\u001b[0m (to agent_guess_number):\n", "\n", - "Then it might be 39.\n", + "Okay, how about 65?\n", "\n", "--------------------------------------------------------------------------------\n", "\u001b[33magent_guess_number\u001b[0m (to agent_with_number):\n", "\n", - "You got it! The number was 39. Well done!\n", + "Yes, correct! The number was 65. Good job guessing it!\n", "\n", "--------------------------------------------------------------------------------\n" ] @@ -578,7 +550,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.5" + "version": "3.10.13" } }, "nbformat": 4, From f4cb6d6215cce29a6916f213506d552df0b349a9 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Wed, 6 Mar 2024 13:02:27 -0800 Subject: [PATCH 28/43] udpate --- website/docs/tutorial/1-introduction.ipynb | 2 +- website/docs/tutorial/2-termination.ipynb | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/website/docs/tutorial/1-introduction.ipynb b/website/docs/tutorial/1-introduction.ipynb index 9d3a03946c30..7a061e6968ab 100644 --- a/website/docs/tutorial/1-introduction.ipynb +++ b/website/docs/tutorial/1-introduction.ipynb @@ -229,7 +229,7 @@ "## Summary\n", "\n", "In this chapter, we introduced the concept of agents, roles and conversations in AutoGen.\n", - "For simplicity, we only used LLMs and created fully autonomous agents (`human_input_mode` was set to `False`). In the [next chapter](./2-termination), \n", + "For simplicity, we only used LLMs and created fully autonomous agents (`human_input_mode` was set to `NEVER`). In the [next chapter](./2-termination), \n", "we will show how you can control when to _terminate_ a conversation between autonomous agents." ] } diff --git a/website/docs/tutorial/2-termination.ipynb b/website/docs/tutorial/2-termination.ipynb index 0e1cf70f3f0f..a256409c58dc 100644 --- a/website/docs/tutorial/2-termination.ipynb +++ b/website/docs/tutorial/2-termination.ipynb @@ -10,8 +10,7 @@ "\n", "_But why is this important?_ Its because in any complex, autonomous workflows it's crucial to know when to stop the workflow. For example, when the task is completed, or perhaps when the process has consumed enough resources and needs to either stop or adopt different strategies, such as user intervention. So AutoGen natively supports several mechanisms to terminate conversations.\n", "\n", - "## How to Control Termination with AutoGen?\n", - "\n", + "How to Control Termination with AutoGen?\n", "Currently there are two broad mechanism to control the termination of conversations between agents:\n", "\n", "1. **Specify parameters in `initiate_chat`**: When initiating a chat, you can define parameters that determine when the conversation should end.\n", @@ -24,7 +23,7 @@ "metadata": {}, "source": [ "\n", - "### Parameters in `initiate_chat`\n", + "## Parameters in `initiate_chat`\n", "In the previous chapter we actually demonstrated this when we used the `max_turns` parameter to limit the number of turns. If we increase `max_turns` to say `3` notice the conversation takes more rounds to terminate:" ] }, @@ -172,7 +171,7 @@ "metadata": {}, "source": [ "\n", - "### Agent-triggered termination\n", + "## Agent-triggered termination\n", "You can also terminate a conversation by configuring parameters of an agents.\n", "Currently, there are two parameters you can can configure:\n", "\n", @@ -247,7 +246,7 @@ "source": [ "### Using `is_termination_msg`\n", "\n", - "Lets consider a simple guess-a-number game between two agents, with the termination message set to check for the number that is the correct guess (i.e., 53).\n" + "Let's set the termination message to \"GOOD BYE\" and see how the conversation terminates." ] }, { From 39928c795fa94e60b155d8a9fe1104669545b52a Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Wed, 6 Mar 2024 19:16:33 -0500 Subject: [PATCH 29/43] fix website build --- website/docs/tutorial/code-executors.ipynb | 10 ---------- website/docs/tutorial/conversation-patterns.ipynb | 10 ---------- website/docs/tutorial/what-is-next.ipynb | 10 ---------- 3 files changed, 30 deletions(-) diff --git a/website/docs/tutorial/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb index caa2384bf8a4..1f1efa02d226 100644 --- a/website/docs/tutorial/code-executors.ipynb +++ b/website/docs/tutorial/code-executors.ipynb @@ -1,15 +1,5 @@ { "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, { "cell_type": "markdown", "metadata": {}, diff --git a/website/docs/tutorial/conversation-patterns.ipynb b/website/docs/tutorial/conversation-patterns.ipynb index 3a3963dbc5aa..570f76ca8d9b 100644 --- a/website/docs/tutorial/conversation-patterns.ipynb +++ b/website/docs/tutorial/conversation-patterns.ipynb @@ -1,15 +1,5 @@ { "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, { "cell_type": "markdown", "metadata": {}, diff --git a/website/docs/tutorial/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb index e88dbe64e43d..2b3e213e861b 100644 --- a/website/docs/tutorial/what-is-next.ipynb +++ b/website/docs/tutorial/what-is-next.ipynb @@ -1,15 +1,5 @@ { "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, { "cell_type": "markdown", "metadata": {}, From 41a7b55a41e648a23b87255d6982c468bb3ce3ed Mon Sep 17 00:00:00 2001 From: Joshua Kim Date: Thu, 7 Mar 2024 05:25:24 +0000 Subject: [PATCH 30/43] Minor corrections of typos and grammar. --- website/docs/tutorial/1-introduction.ipynb | 6 +++--- website/docs/tutorial/2-termination.ipynb | 4 ++-- website/docs/tutorial/3-human-in-the-loop.ipynb | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/website/docs/tutorial/1-introduction.ipynb b/website/docs/tutorial/1-introduction.ipynb index 7a061e6968ab..4a85ba352200 100644 --- a/website/docs/tutorial/1-introduction.ipynb +++ b/website/docs/tutorial/1-introduction.ipynb @@ -18,9 +18,9 @@ "> _The whole is greater than the sum of its parts._
\n", "> -**Aristotle**\n", "\n", - "While there are many definitions of agents, in AutoGen, an agent is an entity that reacts to its environment. This abstraction not just allows agents that model real-world and abstract entities, such as people and algorithms, but it also simplifies implementation of complex workflows as collaboration among agents.\n", + "While there are many definitions of agents, in AutoGen, an agent is an entity that reacts to its environment. This abstraction not only allows agents to model real-world and abstract entities, such as people and algorithms, but it also simplifies implementation of complex workflows as collaboration among agents.\n", "\n", - "Further, AutoGen is extensible and composable: you can extend simple agent with customizable components and create workflows that can combine these agents, resulting in implementations that are modular and easy to maintain.\n", + "Further, AutoGen is extensible and composable: you can extend a simple agent with customizable components and create workflows that can combine these agents, resulting in implementations that are modular and easy to maintain.\n", "\n", "Most importantly, AutoGen is developed by a vibrant community of researchers\n", "and engineers. It incorporates the latest research in multi-agent systems\n", @@ -162,7 +162,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Now we have two comedian agents, we can ask them to start a comedy show.\n", + "Now that we have two comedian agents, we can ask them to start a comedy show.\n", "This can be done using the `initiate_chat` method.\n", "We set the `max_turns` to 2 to keep the conversation short." ] diff --git a/website/docs/tutorial/2-termination.ipynb b/website/docs/tutorial/2-termination.ipynb index a256409c58dc..378a2b7d52d1 100644 --- a/website/docs/tutorial/2-termination.ipynb +++ b/website/docs/tutorial/2-termination.ipynb @@ -172,8 +172,8 @@ "source": [ "\n", "## Agent-triggered termination\n", - "You can also terminate a conversation by configuring parameters of an agents.\n", - "Currently, there are two parameters you can can configure:\n", + "You can also terminate a conversation by configuring parameters of an agent.\n", + "Currently, there are two parameters you can configure:\n", "\n", "1. `max_consecutive_auto_reply`: This condition trigger termination if the number of automatic responses to the same sender exceeds a threshold. You can customize this using the `max_consecutive_auto_reply` argument of the `ConversableAgent` class. To accomplish this the agent maintains a counter of the number of consecutive automatic responses to the same sender. Note that this counter can be reset because of human intervention. We will describe this in more detail in the next chapter.\n", "2. `is_termination_msg`: This condition can trigger termination if the _received_ message satisfies a particular condition, e.g., it contains the word \"TERMINATE\". You can customize this condition using the `is_terminate_msg` argument in the constructor of the `ConversableAgent` class." diff --git a/website/docs/tutorial/3-human-in-the-loop.ipynb b/website/docs/tutorial/3-human-in-the-loop.ipynb index 892a9868605c..14706b6c84e9 100644 --- a/website/docs/tutorial/3-human-in-the-loop.ipynb +++ b/website/docs/tutorial/3-human-in-the-loop.ipynb @@ -6,7 +6,7 @@ "source": [ "# Allowing Human Feedback in Agents\n", "\n", - "In the last two chapters we introduced the `ConversableAgent` class and showed how you can use it to create autonomous (`human_input_mode=NEVER`) agents that can accomplish tasks. We also showed how can properly terminate a conversation between agents.\n", + "In the last two chapters we introduced the `ConversableAgent` class and showed how you can use it to create autonomous (`human_input_mode=NEVER`) agents that can accomplish tasks. We also showed how to properly terminate a conversation between agents.\n", "\n", "But many applications may require putting humans-in-the-loop with agents. For example, to allow human feedback to steer agents in the right direction, specify goals, etc. In this chapter, we will show how AutoGen supports human intervention." ] @@ -248,7 +248,7 @@ "## Human Input Mode = `TERMINATE`\n", "\n", "In this mode, human input is only requested when a termination condition is\n", - "met. **If the human choose to intercept and reply, counter will be rest**; if \n", + "met. **If the human choose to intercept and reply, the counter will be reset**; if \n", "the human choose to skip, automatic reply mechanism will be used; if the human\n", "choose to terminate, the conversation will be terminated.\n", "\n", From 60dbd38b55e81fd4f4041ce4a6548191afa7b2d7 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Thu, 7 Mar 2024 22:19:12 -0800 Subject: [PATCH 31/43] remove broken links, update sidebar --- .../{3-human-in-the-loop.ipynb => human-in-the-loop.ipynb} | 0 .../tutorial/{1-introduction.ipynb => introduction.ipynb} | 5 +++-- .../docs/tutorial/{2-termination.ipynb => termination.ipynb} | 2 +- website/sidebars.js | 5 +++++ 4 files changed, 9 insertions(+), 3 deletions(-) rename website/docs/tutorial/{3-human-in-the-loop.ipynb => human-in-the-loop.ipynb} (100%) rename website/docs/tutorial/{1-introduction.ipynb => introduction.ipynb} (98%) rename website/docs/tutorial/{2-termination.ipynb => termination.ipynb} (99%) diff --git a/website/docs/tutorial/3-human-in-the-loop.ipynb b/website/docs/tutorial/human-in-the-loop.ipynb similarity index 100% rename from website/docs/tutorial/3-human-in-the-loop.ipynb rename to website/docs/tutorial/human-in-the-loop.ipynb diff --git a/website/docs/tutorial/1-introduction.ipynb b/website/docs/tutorial/introduction.ipynb similarity index 98% rename from website/docs/tutorial/1-introduction.ipynb rename to website/docs/tutorial/introduction.ipynb index 4a85ba352200..fa9c5a3d2c21 100644 --- a/website/docs/tutorial/1-introduction.ipynb +++ b/website/docs/tutorial/introduction.ipynb @@ -95,7 +95,7 @@ "metadata": {}, "source": [ "The `llm_config` argument contains a list of configurations for the LLMs.\n", - "See [LLM Configuration](/docs/llm_configuration) for more details." + "See [LLM Configuration](/docs/topics/llm_configuration) for more details." ] }, { @@ -229,7 +229,8 @@ "## Summary\n", "\n", "In this chapter, we introduced the concept of agents, roles and conversations in AutoGen.\n", - "For simplicity, we only used LLMs and created fully autonomous agents (`human_input_mode` was set to `NEVER`). In the [next chapter](./2-termination), \n", + "For simplicity, we only used LLMs and created fully autonomous agents (`human_input_mode` was set to `NEVER`). \n", + "In the next chapter, \n", "we will show how you can control when to _terminate_ a conversation between autonomous agents." ] } diff --git a/website/docs/tutorial/2-termination.ipynb b/website/docs/tutorial/termination.ipynb similarity index 99% rename from website/docs/tutorial/2-termination.ipynb rename to website/docs/tutorial/termination.ipynb index 378a2b7d52d1..994f7daff245 100644 --- a/website/docs/tutorial/2-termination.ipynb +++ b/website/docs/tutorial/termination.ipynb @@ -315,7 +315,7 @@ "depends on the `human_input_mode` argument of the `ConversableAgent` class.\n", "For example, when mode is `NEVER` the termination conditions above will end the conversations.\n", "But when mode is `ALWAYS` or `TERMINATE`, it will not terminate immediately\n", - "we describe this behavior and why its important in the [next chapter](./3-human-in-the-loop).\n" + "we describe this behavior and why its important in the next chapter.\n" ] } ], diff --git a/website/sidebars.js b/website/sidebars.js index 6bf522ca6ade..5c5e6e8a38c5 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -21,6 +21,11 @@ id: 'tutorial/introduction', label: 'Introduction', }, + { + type: 'doc', + id: 'tutorial/termination', + label: 'Termination', + }, { type: 'doc', id: 'tutorial/human-in-the-loop', From 579840d736c44cb398657888c4d1b7078ee06b39 Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Fri, 8 Mar 2024 00:17:03 -0800 Subject: [PATCH 32/43] code executor update --- website/.gitignore | 2 +- website/docs/tutorial/code-executors.ipynb | 203 ++++++++++++------ .../docs/tutorial/conversation-patterns.ipynb | 2 +- 3 files changed, 145 insertions(+), 62 deletions(-) diff --git a/website/.gitignore b/website/.gitignore index 7e420b8c31a7..9496c0410c3a 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -15,7 +15,7 @@ docs/tutorial/*.mdx docs/tutorial/**/*.png !docs/tutorial/assets/*.png docs/topics/llm_configuration.mdx -docs/topics/code-execution/jupyter-code-executor.mdx +docs/topics/code-execution/*.mdx # Misc .DS_Store diff --git a/website/docs/tutorial/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb index 1f1efa02d226..677db8d614de 100644 --- a/website/docs/tutorial/code-executors.ipynb +++ b/website/docs/tutorial/code-executors.ipynb @@ -6,22 +6,39 @@ "source": [ "# Code Executors\n", "\n", - "In the [last chapter](./human-in-the-loop), \n", + "In the last chapter, \n", "we used two agents powered by a large language model (LLM) to play a game. \n", - "It was a fun exercise, but LLM by itself can only\n", - "generate text -- it cannot interact with its environment or performing useful\n", - "computations. \n", + "In this chatper, we introduce code executors, which enable agents\n", + "to interact with an environment and perform useful computations.\n", "\n", - "In this chapter, we introduce code executor, an AutoGen's agent component that \n", + "## Overview\n", + "A code executor is an agent component that\n", "takes input messages with code blocks, performs execution, and output messages\n", - "with the results. \n", - "\n", - "There are two ways to use code executor in AutoGen. \n", - "One is to execute\n", - "code directly in the same platform where AutoGen is running.\n", - "It is the simplest way to use code executor, but it is not ideal for production\n", + "with the results.\n", + "AutoGen provides two types of built-in code executors, one is \n", + "command line code executor, which runs code in a command line environment\n", + "such as a UNIX shell, and the other is Jupyter executor, which runs code\n", + "in an interactive [Jupyter kernel](https://github.com/jupyter/jupyter/wiki/Jupyter-kernels).\n", + "\n", + "For each type of executor, AutoGen provides two ways to execute code.\n", + "One way is to execute\n", + "code directly in the same host platform where AutoGen is running, i.e.,\n", + "the local operating system.\n", + "It is for development and testing, but it is not ideal for production\n", "as LLM can generate arbitrary code.\n", - "The other way is to execute code in a Docker container." + "The other way is to execute code in a Docker container.\n", + "The table below shows the combinations of code executors and execution\n", + "environments.\n", + "\n", + "| Code Executor (`autogen.coding`) | Environment | Platform |\n", + "| ---------------------------- | ----------- | -------- |\n", + "| `LocalCommandLineCodeExecutor` | Shell | Local |\n", + "| `DockerCommandLineCodeExecutor` | Shell | Docker |\n", + "| `jupyter.JupyterCodeExecutor` | Jupyter Kernel (e.g., python3) | Local/Docker |\n", + "\n", + "In this chapter, we will focus on the command line code executors.\n", + "For the Jupyter code executor, please refer to the topic page for \n", + "[Jupyter Code Executor](../topics/code-execution/jupyter-code-executor)." ] }, { @@ -30,7 +47,8 @@ "source": [ "## Local Execution\n", "\n", - "The figure below shows the architecture of the local execution approach.\n", + "The figure below shows the architecture of the local command line code executor\n", + "(`autogen.coding.LocalCommandLineCodeExecutor`).\n", "\n", "**Executing LLM-generated code poses a security risk to your host environment.**\n", "\n", @@ -38,7 +56,7 @@ "![Code Executor No Docker](./assets/code-executor-no-docker.png)\n", "```\n", "\n", - "Once receiving a message with a code block, the code executor\n", + "Once receiving a message with a code block, the local command line code executor\n", "first writes the code block to a code file, then start a new subprocess to\n", "execute the code file. The executor reads the console output of the \n", "code execution and sends it back as a reply message.\n", @@ -53,25 +71,28 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import tempfile\n", "from autogen import ConversableAgent\n", + "from autogen.coding import LocalCommandLineCodeExecutor\n", "\n", "# Create a temporary directory to store the code files.\n", "temp_dir = tempfile.mkdtemp()\n", "\n", + "# Create a local command line code executor.\n", + "executor = LocalCommandLineCodeExecutor(\n", + " timeout=10, # Timeout for each code execution in seconds.\n", + " work_dir=temp_dir, # Use the temporary directory to store the code files.\n", + ")\n", + "\n", "# Create an agent with code executor configuration.\n", "code_executor_agent = ConversableAgent(\n", " \"code_executor_agent\",\n", " llm_config=False, # Turn off LLM for this agent.\n", - " code_execution_config={\n", - " \"use_docker\": False, # Execute code in the local environment.\n", - " \"timeout\": 10, # Timeout for each code execution in seconds.\n", - " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", - " },\n", + " code_execution_config={\"executor\": executor}, # Use the local command line code executor.\n", " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", ")" ] @@ -102,7 +123,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 2, "metadata": {}, "outputs": [ { @@ -114,7 +135,7 @@ "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[31m\n", - ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", + ">>>>>>>> EXECUTING CODE BLOCK (inferred language is python)...\u001b[0m\n", "exitcode: 0 (execution succeeded)\n", "Code output: \n", "Scatter plot saved to scatter.png\n", @@ -157,21 +178,40 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "['scatter.png']\n" + "['scatter.png', '6507ea07b63b45aabb027ade4e213de6.py']\n" ] } ], "source": [ "import os\n", "\n", - "print(os.listdir(temp_dir))" + "print(os.listdir(temp_dir))\n", + "# We can see the output scatter.png and the code file generated by the agent." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Clean up the temporary directory." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "import shutil\n", + "\n", + "shutil.rmtree(temp_dir)" ] }, { @@ -181,7 +221,9 @@ "## Docker Execution\n", "\n", "To mitigate the security risk of running LLM-generated code locally, \n", - "we can execute code in a docker container. \n", + "we can use the docker command line code executor \n", + "(`autogen.coding.DockerCommandLineCodeExecutor`)\n", + "to execute code in a docker container.\n", "This way, the generated code can only access resources that are explicitly \n", "given to it.\n", "\n", @@ -191,8 +233,8 @@ "![Code Executor Docker](./assets/code-executor-docker.png)\n", "```\n", "\n", - "Similar to the local code executor, the docker code\n", - "executor extracts code blocks from input messages, writes them to code files.\n", + "Similar to the local command line code executor, the docker executor \n", + "extracts code blocks from input messages, writes them to code files.\n", "For each code file, it starts a docker container to execute the code file,\n", "and reads the console output of the code execution." ] @@ -207,41 +249,40 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ + "from autogen.coding import DockerCommandLineCodeExecutor\n", + "\n", + "# Create a temporary directory to store the code files.\n", + "temp_dir = tempfile.mkdtemp()\n", + "\n", + "# Create a Docker command line code executor.\n", + "executor = DockerCommandLineCodeExecutor(\n", + " image=\"python:3.12-slim\", # Execute code using the given docker image name.\n", + " timeout=10, # Timeout for each code execution in seconds.\n", + " work_dir=temp_dir, # Use the temporary directory to store the code files.\n", + ")\n", + "\n", "# Create an agent with code executor configuration that uses docker.\n", "code_executor_agent_using_docker = ConversableAgent(\n", " \"code_executor_agent_docker\",\n", " llm_config=False, # Turn off LLM for this agent.\n", - " code_execution_config={\n", - " \"use_docker\": \"python:3.12-slim\", # Execute code using the given docker image name.\n", - " \"timeout\": 30, # Timeout for each code execution in seconds.\n", - " \"work_dir\": temp_dir, # Use the temporary directory to store the code files.\n", - " },\n", + " code_execution_config={\"executor\": executor}, # Use the docker command line code executor.\n", " human_input_mode=\"ALWAYS\", # Always take human input for this agent for safety.\n", - ")" + ")\n", + "\n", + "# When the code executor is no longer used, stop it to release the resources.\n", + "# executor.stop()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "The `work_dir` points to a local file system directory just like in the local execution case.\n", - "This directory will be mounted to the docker container and the code files will be written to this directory.\n", - "\n", - "If you get an error that says:\n", - "\n", - "```\n", - "RuntimeError: Code execution is set to be run in docker (default behaviour) but docker is not running.\n", - "The options available are:\n", - "- Make sure docker is running (advised approach for code execution)\n", - "- Set \"use_docker\": False in code_execution_config\n", - "- Set AUTOGEN_USE_DOCKER to \"0/False/no\" in your environment variables\n", - "```\n", - "\n", - "This means that the Docker daemon is not running." + "The `work_dir` in the constructor points to a local file system directory just like in the local execution case.\n", + "This directory will be mounted to the docker container and the code files will be written to this directory." ] }, { @@ -271,7 +312,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -309,7 +350,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -352,7 +393,7 @@ "\u001b[31m\n", ">>>>>>>> USING AUTO REPLY...\u001b[0m\n", "\u001b[31m\n", - ">>>>>>>> EXECUTING CODE BLOCK 0 (inferred language is python)...\u001b[0m\n", + ">>>>>>>> EXECUTING CODE BLOCK (inferred language is python)...\u001b[0m\n", "\u001b[33mcode_executor_agent\u001b[0m (to code_writer_agent):\n", "\n", "exitcode: 0 (execution succeeded)\n", @@ -600,6 +641,47 @@ "shutil.rmtree(temp_dir)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Stop the docker command line executor to clean up the docker container." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "executor.stop() # Stop the docker command line code executor." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Command Line or Jupyter Code Executor?\n", + "\n", + "The command line code executor does not keep any state in memory between\n", + "executions of different code blocks it receives, as it writes each code block to\n", + "a separate file and executes the code block in a new process.\n", + "\n", + "Contrast to the command line code executor, the Jupyter code executor\n", + "runs all code blocks in the same Jupyter kernel, which keeps the state\n", + "in memory between executions.\n", + "See the topic page for [Jupyter Code Executor](../topics/code-execution/jupyter-code-executor).\n", + "\n", + "The choice between command line and Jupyter code executor depends on the\n", + "nature of the code blocks in agents' conversation.\n", + "If each code block is a \"script\" that does not use variables from\n", + "previous code blocks, the command line code executor is a good choice.\n", + "If the some conde blocks contain expensive computation (e.g., training a\n", + "machine learning model and loading large amount of data), and you want to\n", + "keep the state in memory to avoid repeated computation,\n", + "the Jupyter code executor is a better choice." + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -608,9 +690,10 @@ "\n", "### User Proxy Agent\n", "\n", - "In the previous examples, the code executor agent is created directly using\n", - "`ConversableAgent` class. In existing AutoGen code, the code executor\n", - "agent is often created using `UserProxyAgent` class, which is a subclass of\n", + "In the previous examples, we create the code executor agent directly using\n", + "the `ConversableAgent` class. Existing AutoGen examples often create \n", + "code executor agent using the `UserProxyAgent` class, \n", + "which is a subclass of\n", "`ConversableAgent` with `human_input_mode=ALWAYS` and `llm_config=False` --\n", "it always requests human input for every message and does not use LLM.\n", "It also comes with default `description` field for each of the\n", @@ -626,9 +709,9 @@ "\n", "### Assistant Agent\n", "\n", - "In the previous examples, the code writer agent is created directly using\n", - "`ConversableAgent` class. In existing AutoGen code, the code writer\n", - "agent is often created using `AssistantAgent` class, which is a subclass of\n", + "In the previous examples, we created the code writer agent directly using\n", + "the `ConversableAgent` class. Existing AutoGen examples often create the code writer\n", + "agent using the `AssistantAgent` class, which is a subclass of\n", "`ConversableAgent` with `human_input_mode=NEVER` and `code_execution_config=False` \n", "-- it never requests human input and does not use code executor.\n", "It also comes with default `system_message` and `description` fields.\n", @@ -718,9 +801,9 @@ "source": [ "## Summary\n", "\n", - "In this chapter, we introduced code executor: how to set up docker and local\n", + "In this chapter, we introduced code executor: how to set up Docker and local\n", "execution, and how to use code execution in a conversation to solve tasks.\n", - "In [the next chapter](./conversation-patterns), we will introduce conversation patterns, and show\n", + "In the next chapter, we will introduce conversation patterns, and show\n", "how to use the result of a conversation." ] } diff --git a/website/docs/tutorial/conversation-patterns.ipynb b/website/docs/tutorial/conversation-patterns.ipynb index 570f76ca8d9b..87bd569008da 100644 --- a/website/docs/tutorial/conversation-patterns.ipynb +++ b/website/docs/tutorial/conversation-patterns.ipynb @@ -6,7 +6,7 @@ "source": [ "# Conversation Patterns\n", "\n", - "In the [previous chapter](./code-executors) we used two-agent conversation, which\n", + "In the previous chapter we used two-agent conversation, which\n", "can be started by the `initiate_chat` method.\n", "Two-agent chat is a useful conversation pattern but AutoGen offers more.\n", "In this chapter, we will first dig a little bit more into the two-agent \n", From 4d71e27cd1d4b683242e6f460f44bb7c5b220d4e Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 08:40:57 -0500 Subject: [PATCH 33/43] Suggest changes to the code executor section --- website/docs/tutorial/code-executors.ipynb | 113 ++++++++++----------- 1 file changed, 56 insertions(+), 57 deletions(-) diff --git a/website/docs/tutorial/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb index 677db8d614de..d6e08aacf250 100644 --- a/website/docs/tutorial/code-executors.ipynb +++ b/website/docs/tutorial/code-executors.ipynb @@ -8,10 +8,11 @@ "\n", "In the last chapter, \n", "we used two agents powered by a large language model (LLM) to play a game. \n", - "In this chatper, we introduce code executors, which enable agents\n", + "In this chapter, we introduce code executors, which enable agents\n", "to interact with an environment and perform useful computations.\n", "\n", "## Overview\n", + "\n", "A code executor is an agent component that\n", "takes input messages with code blocks, performs execution, and output messages\n", "with the results.\n", @@ -32,9 +33,9 @@ "\n", "| Code Executor (`autogen.coding`) | Environment | Platform |\n", "| ---------------------------- | ----------- | -------- |\n", - "| `LocalCommandLineCodeExecutor` | Shell | Local |\n", - "| `DockerCommandLineCodeExecutor` | Shell | Docker |\n", - "| `jupyter.JupyterCodeExecutor` | Jupyter Kernel (e.g., python3) | Local/Docker |\n", + "| [`LocalCommandLineCodeExecutor`](/docs/reference/coding/local_commandline_code_executor#localcommandlinecodeexecutor) | Shell | Local |\n", + "| [`DockerCommandLineCodeExecutor`](/docs/reference/coding/docker_commandline_code_executor#dockercommandlinecodeexecutor) | Shell | Docker |\n", + "| [`jupyter.JupyterCodeExecutor`](/docs/reference/coding/jupyter/jupyter_code_executor#jupytercodeexecutor) | Jupyter Kernel (e.g., python3) | Local/Docker |\n", "\n", "In this chapter, we will focus on the command line code executors.\n", "For the Jupyter code executor, please refer to the topic page for \n", @@ -48,16 +49,20 @@ "## Local Execution\n", "\n", "The figure below shows the architecture of the local command line code executor\n", - "(`autogen.coding.LocalCommandLineCodeExecutor`).\n", + "([`autogen.coding.LocalCommandLineCodeExecutor`](/docs/reference/coding/local_commandline_code_executor#localcommandlinecodeexecutor)).\n", "\n", - "**Executing LLM-generated code poses a security risk to your host environment.**\n", + "````mdx-code-block\n", + ":::danger\n", + "Executing LLM-generated code poses a security risk to your host environment.\n", + ":::\n", + "````\n", "\n", "```{=mdx}\n", "![Code Executor No Docker](./assets/code-executor-no-docker.png)\n", "```\n", "\n", "Once receiving a message with a code block, the local command line code executor\n", - "first writes the code block to a code file, then start a new subprocess to\n", + "first writes the code block to a code file, then starts a new subprocess to\n", "execute the code file. The executor reads the console output of the \n", "code execution and sends it back as a reply message.\n", "\n", @@ -80,12 +85,12 @@ "from autogen.coding import LocalCommandLineCodeExecutor\n", "\n", "# Create a temporary directory to store the code files.\n", - "temp_dir = tempfile.mkdtemp()\n", + "temp_dir = tempfile.TemporaryDirectory()\n", "\n", "# Create a local command line code executor.\n", "executor = LocalCommandLineCodeExecutor(\n", " timeout=10, # Timeout for each code execution in seconds.\n", - " work_dir=temp_dir, # Use the temporary directory to store the code files.\n", + " work_dir=temp_dir.name, # Use the temporary directory to store the code files.\n", ")\n", "\n", "# Create an agent with code executor configuration.\n", @@ -144,20 +149,19 @@ } ], "source": [ - "message_with_code_block = (\n", - " \"This is a message with code block. \"\n", - " \"The code block is below: \\n\"\n", - " \"```python\\n\"\n", - " \"import numpy as np\\n\"\n", - " \"import matplotlib.pyplot as plt\\n\"\n", - " \"x = np.random.randint(0, 100, 100)\\n\"\n", - " \"y = np.random.randint(0, 100, 100)\\n\"\n", - " \"plt.scatter(x, y)\\n\"\n", - " \"plt.savefig('scatter.png')\\n\"\n", - " \"print('Scatter plot saved to scatter.png')\\n\"\n", - " \"```\\n\"\n", - " \"This is the end of the message.\\n\"\n", - ")\n", + "message_with_code_block = \"\"\"This is a message with code block.\n", + "The code block is below:\n", + "```python\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "x = np.random.randint(0, 100, 100)\n", + "y = np.random.randint(0, 100, 100)\n", + "plt.scatter(x, y)\n", + "plt.savefig('scatter.png')\n", + "print('Scatter plot saved to scatter.png')\n", + "```\n", + "This is the end of the message.\n", + "\"\"\"\n", "\n", "# Generate a reply for the given code.\n", "reply = code_executor_agent.generate_reply(messages=[{\"role\": \"user\", \"content\": message_with_code_block}])\n", @@ -209,9 +213,7 @@ "metadata": {}, "outputs": [], "source": [ - "import shutil\n", - "\n", - "shutil.rmtree(temp_dir)" + "temp_dir.cleanup()" ] }, { @@ -222,7 +224,7 @@ "\n", "To mitigate the security risk of running LLM-generated code locally, \n", "we can use the docker command line code executor \n", - "(`autogen.coding.DockerCommandLineCodeExecutor`)\n", + "([`autogen.coding.DockerCommandLineCodeExecutor`](/docs/reference/coding/docker_commandline_code_executor#dockercommandlinecodeexecutor))\n", "to execute code in a docker container.\n", "This way, the generated code can only access resources that are explicitly \n", "given to it.\n", @@ -256,13 +258,13 @@ "from autogen.coding import DockerCommandLineCodeExecutor\n", "\n", "# Create a temporary directory to store the code files.\n", - "temp_dir = tempfile.mkdtemp()\n", + "temp_dir = tempfile.TemporaryDirectory()\n", "\n", "# Create a Docker command line code executor.\n", "executor = DockerCommandLineCodeExecutor(\n", " image=\"python:3.12-slim\", # Execute code using the given docker image name.\n", " timeout=10, # Timeout for each code execution in seconds.\n", - " work_dir=temp_dir, # Use the temporary directory to store the code files.\n", + " work_dir=temp_dir.name, # Use the temporary directory to store the code files.\n", ")\n", "\n", "# Create an agent with code executor configuration that uses docker.\n", @@ -318,19 +320,18 @@ "source": [ "# The code writer agent's system message is to instruct the LLM on how to use\n", "# the code executor in the code executor agent.\n", - "code_writer_system_message = (\n", - " \"You are a helpful AI assistant.\\n\"\n", - " \"Solve tasks using your coding and language skills.\\n\"\n", - " \"In the following cases, suggest python code (in a python coding block) or shell script (in a sh coding block) for the user to execute.\\n\"\n", - " \"1. When you need to collect info, use the code to output the info you need, for example, browse or search the web, download/read a file, print the content of a webpage or a file, get the current date/time, check the operating system. After sufficient info is printed and the task is ready to be solved based on your language skill, you can solve the task by yourself.\\n\"\n", - " \"2. When you need to perform some task with code, use the code to perform the task and output the result. Finish the task smartly.\\n\"\n", - " \"Solve the task step by step if you need to. If a plan is not provided, explain your plan first. Be clear which step uses code, and which step uses your language skill.\\n\"\n", - " \"When using code, you must indicate the script type in the code block. The user cannot provide any other feedback or perform any other action beyond executing the code you suggest. The user can't modify your code. So do not suggest incomplete code which requires users to modify. Don't use a code block if it's not intended to be executed by the user.\\n\"\n", - " \"If you want the user to save the code in a file before executing it, put # filename: inside the code block as the first line. Don't include multiple code blocks in one response. Do not ask users to copy and paste the result. Instead, use 'print' function for the output when relevant. Check the execution result returned by the user.\\n\"\n", - " \"If the result indicates there is an error, fix the error and output the code again. Suggest the full code instead of partial code or code changes. If the error can't be fixed or if the task is not solved even after the code is executed successfully, analyze the problem, revisit your assumption, collect additional info you need, and think of a different approach to try.\\n\"\n", - " \"When you find an answer, verify the answer carefully. Include verifiable evidence in your response if possible.\\n\"\n", - " \"Reply 'TERMINATE' in the end when everything is done.\\n\"\n", - ")\n", + "code_writer_system_message = \"\"\"You are a helpful AI assistant.\n", + "Solve tasks using your coding and language skills.\n", + "In the following cases, suggest python code (in a python coding block) or shell script (in a sh coding block) for the user to execute.\n", + "1. When you need to collect info, use the code to output the info you need, for example, browse or search the web, download/read a file, print the content of a webpage or a file, get the current date/time, check the operating system. After sufficient info is printed and the task is ready to be solved based on your language skill, you can solve the task by yourself.\n", + "2. When you need to perform some task with code, use the code to perform the task and output the result. Finish the task smartly.\n", + "Solve the task step by step if you need to. If a plan is not provided, explain your plan first. Be clear which step uses code, and which step uses your language skill.\n", + "When using code, you must indicate the script type in the code block. The user cannot provide any other feedback or perform any other action beyond executing the code you suggest. The user can't modify your code. So do not suggest incomplete code which requires users to modify. Don't use a code block if it's not intended to be executed by the user.\n", + "If you want the user to save the code in a file before executing it, put # filename: inside the code block as the first line. Don't include multiple code blocks in one response. Do not ask users to copy and paste the result. Instead, use 'print' function for the output when relevant. Check the execution result returned by the user.\n", + "If the result indicates there is an error, fix the error and output the code again. Suggest the full code instead of partial code or code changes. If the error can't be fixed or if the task is not solved even after the code is executed successfully, analyze the problem, revisit your assumption, collect additional info you need, and think of a different approach to try.\n", + "When you find an answer, verify the answer carefully. Include verifiable evidence in your response if possible.\n", + "Reply 'TERMINATE' in the end when everything is done.\n", + "\"\"\"\n", "\n", "code_writer_agent = ConversableAgent(\n", " \"code_writer_agent\",\n", @@ -636,9 +637,7 @@ "metadata": {}, "outputs": [], "source": [ - "import shutil\n", - "\n", - "shutil.rmtree(temp_dir)" + "temp_dir.cleanup()" ] }, { @@ -691,10 +690,10 @@ "### User Proxy Agent\n", "\n", "In the previous examples, we create the code executor agent directly using\n", - "the `ConversableAgent` class. Existing AutoGen examples often create \n", - "code executor agent using the `UserProxyAgent` class, \n", + "the [`ConversableAgent`](/docs/reference/agentchat/conversable_agent#conversableagent) class. Existing AutoGen examples often create \n", + "code executor agent using the [`UserProxyAgent`](/docs/reference/agentchat/user_proxy_agent#userproxyagent) class, \n", "which is a subclass of\n", - "`ConversableAgent` with `human_input_mode=ALWAYS` and `llm_config=False` --\n", + "[`ConversableAgent`](/docs/reference/agentchat/conversable_agent#conversableagent) with `human_input_mode=ALWAYS` and `llm_config=False` --\n", "it always requests human input for every message and does not use LLM.\n", "It also comes with default `description` field for each of the\n", "`human_input_mode` setting.\n", @@ -710,16 +709,16 @@ "### Assistant Agent\n", "\n", "In the previous examples, we created the code writer agent directly using\n", - "the `ConversableAgent` class. Existing AutoGen examples often create the code writer\n", - "agent using the `AssistantAgent` class, which is a subclass of\n", - "`ConversableAgent` with `human_input_mode=NEVER` and `code_execution_config=False` \n", + "the [`ConversableAgent`](/docs/reference/agentchat/conversable_agent#conversableagent) class. Existing AutoGen examples often create the code writer\n", + "agent using the [`AssistantAgent`](/docs/reference/agentchat/assistant_agent#assistantagent) class, which is a subclass of\n", + "[`ConversableAgent`](/docs/reference/agentchat/conversable_agent#conversableagent) with `human_input_mode=NEVER` and `code_execution_config=False` \n", "-- it never requests human input and does not use code executor.\n", "It also comes with default `system_message` and `description` fields.\n", "This class is a convenient short-cut for creating an agent that is\n", "intended to be used as a code writer and does not execute code.\n", "\n", "In fact, in the previous example we use the default `system_message` field\n", - "of the `AssistantAgent` class to instruct the code writer agent how to use\n", + "of the [`AssistantAgent`](/docs/reference/agentchat/assistant_agent#assistantagent) class to instruct the code writer agent how to use\n", "code executor." ] }, @@ -781,9 +780,9 @@ "source": [ "### Best Practice\n", "\n", - "It is very important to note that the `UserProxyAgent` and `AssistantAgent`\n", + "It is very important to note that the [`UserProxyAgent`](/docs/reference/agentchat/user_proxy_agent#userproxyagent) and [`AssistantAgent`](/docs/reference/agentchat/assistant_agent#assistantagent)\n", "are meant to be shortcuts to avoid writing the `system_message` instructions\n", - "for the `ConversableAgent` class. \n", + "for the [`ConversableAgent`](/docs/reference/agentchat/conversable_agent#conversableagent) class. \n", "They are not suitable for all use cases.\n", "As we will show in the next chapter, tuning the \n", "`system_message` field\n", @@ -791,8 +790,8 @@ "beyond two-agent chat.\n", "\n", "As a best practice, always tune your agent's `system_message` instructions\n", - "for your specific use case and avoid subclassing `UserProxyAgent` and\n", - "`AssistantAgent`." + "for your specific use case and avoid subclassing [`UserProxyAgent`](/docs/reference/agentchat/user_proxy_agent#userproxyagent) and\n", + "[`AssistantAgent`](/docs/reference/agentchat/assistant_agent#assistantagent)." ] }, { @@ -801,7 +800,7 @@ "source": [ "## Summary\n", "\n", - "In this chapter, we introduced code executor: how to set up Docker and local\n", + "In this chapter, we introduced code executors, how to set up Docker and local\n", "execution, and how to use code execution in a conversation to solve tasks.\n", "In the next chapter, we will introduce conversation patterns, and show\n", "how to use the result of a conversation." From 904167f5ee6e1c4691a207104b4e219adda25e56 Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 08:58:21 -0500 Subject: [PATCH 34/43] update what is next --- website/docs/tutorial/what-is-next.ipynb | 2 +- website/docs/tutorial/what-is-next.md | 40 ++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 website/docs/tutorial/what-is-next.md diff --git a/website/docs/tutorial/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb index 2b3e213e861b..3d43d8589311 100644 --- a/website/docs/tutorial/what-is-next.ipynb +++ b/website/docs/tutorial/what-is-next.ipynb @@ -37,7 +37,7 @@ "our [contribution guide](../Contribute) to make a pull request.\n", "You can also share your work with the community on the Discord server.\n", "\n", - "# Advanced Topics\n", + "## Advanced Topics\n", "\n", "To check out dig deeper into the AutoGen, you can check out the\n", "the the list of [example notebooks](../Examples.md)." diff --git a/website/docs/tutorial/what-is-next.md b/website/docs/tutorial/what-is-next.md new file mode 100644 index 000000000000..de845a4aa9f9 --- /dev/null +++ b/website/docs/tutorial/what-is-next.md @@ -0,0 +1,40 @@ +# What is Next? + +Now that you have learned the basics of AutoGen, you can start to build your own +agents. Here are some ideas to get you started without going to the advanced +topics: + +1. **Chat with LLMs**: In [Human in the Loop](./human-in-the-loop) we covered + the basic human-in-the-loop usage. You can try to hook up different LLMs + using proxy servers like [Ollama](https://github.com/ollama/ollama), and + chat with them using the human-in-the-loop component of your human proxy + agent. +2. **Prompt Engineering**: In [Code Executors](./code-executors) we + covered the simple two agent scenario using GPT-4 and Python code executor. + To make this scenario work for different LLMs and programming languages, you + probably need to tune the system message of the code writer agent. Same with + other scenarios that we have covered in this tutorial, you can also try to + tune system messages for different LLMs. +3. **Complex Tasks**: In [ConversationPatterns](./conversation-patterns) + we covered the basic conversation patterns. You can try to find other tasks + that can be decomposed into these patterns, and leverage the code executors + to make the agents more powerful. + +## Get Help + +If you have any questions, you can ask in our [GitHub +Discussions](https://github.com/microsoft/autogen/discussions), or join +our [Discord Server](https://discord.gg/pAbnFJrkgZ). + +[![](https://img.shields.io/discord/1153072414184452236?logo=discord&style=flat.png)](https://discord.gg/pAbnFJrkgZ) + +## Get Involved + +- Contribute your work to our [gallery](../Gallery) +- Follow our [contribution guide](../Contribute) to make a pull request to AutoGen +- You can also share your work with the community on the Discord server. + +## Dig Deeper + +- Read the [topic docs](/docs/topics) to learn more +- Read the examples and guides in the [notebooks section](/docs/notebooks) From 39a8c31f69ab534e12a663dfe6867ca2b63dab6e Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 08:59:14 -0500 Subject: [PATCH 35/43] reorder --- website/docs/tutorial/what-is-next.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/website/docs/tutorial/what-is-next.md b/website/docs/tutorial/what-is-next.md index de845a4aa9f9..d3a33f56ebff 100644 --- a/website/docs/tutorial/what-is-next.md +++ b/website/docs/tutorial/what-is-next.md @@ -20,6 +20,11 @@ topics: that can be decomposed into these patterns, and leverage the code executors to make the agents more powerful. +## Dig Deeper + +- Read the [topic docs](/docs/topics) to learn more +- Read the examples and guides in the [notebooks section](/docs/notebooks) + ## Get Help If you have any questions, you can ask in our [GitHub @@ -33,8 +38,3 @@ our [Discord Server](https://discord.gg/pAbnFJrkgZ). - Contribute your work to our [gallery](../Gallery) - Follow our [contribution guide](../Contribute) to make a pull request to AutoGen - You can also share your work with the community on the Discord server. - -## Dig Deeper - -- Read the [topic docs](/docs/topics) to learn more -- Read the examples and guides in the [notebooks section](/docs/notebooks) From 8a5a835f214cf4921beafef6afc4adfaab3c51bd Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 09:33:08 -0500 Subject: [PATCH 36/43] update getting started --- website/docs/Getting-Started.md | 79 ------------------ website/docs/Getting-Started.mdx | 138 +++++++++++++++++++++++++++++++ website/sidebars.js | 11 ++- 3 files changed, 148 insertions(+), 80 deletions(-) delete mode 100644 website/docs/Getting-Started.md create mode 100644 website/docs/Getting-Started.mdx diff --git a/website/docs/Getting-Started.md b/website/docs/Getting-Started.md deleted file mode 100644 index ea6f859e4e40..000000000000 --- a/website/docs/Getting-Started.md +++ /dev/null @@ -1,79 +0,0 @@ -# Getting Started - - - -AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve tasks. AutoGen agents are customizable, conversable, and seamlessly allow human participation. They can operate in various modes that employ combinations of LLMs, human inputs, and tools. - -![AutoGen Overview](/img/autogen_agentchat.png) - -### Main Features - -- AutoGen enables building next-gen LLM applications based on [multi-agent conversations](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat) with minimal effort. It simplifies the orchestration, automation, and optimization of a complex LLM workflow. It maximizes the performance of LLM models and overcomes their weaknesses. -- It supports [diverse conversation patterns](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat#supporting-diverse-conversation-patterns) for complex workflows. With customizable and conversable agents, developers can use AutoGen to build a wide range of conversation patterns concerning conversation autonomy, -the number of agents, and agent conversation topology. -- It provides a collection of working systems with different complexities. These systems span a [wide range of applications](https://microsoft.github.io/autogen/docs/Use-Cases/agent_chat#diverse-applications-implemented-with-autogen) from various domains and complexities. This demonstrates how AutoGen can easily support diverse conversation patterns. -- AutoGen provides [enhanced LLM inference](https://microsoft.github.io/autogen/docs/Use-Cases/enhanced_inference#api-unification). It offers utilities like API unification and caching, and advanced usage patterns, such as error handling, multi-config inference, context programming, etc. - -AutoGen is powered by collaborative [research studies](/docs/Research) from Microsoft, Penn State University, and University of Washington. - -### Quickstart - -Install from pip: `pip install pyautogen`. Find more options in [Installation](/docs/installation/). -For [code execution](/docs/FAQ#code-execution), we strongly recommend installing the python docker package, and using docker. - -#### Multi-Agent Conversation Framework -Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools, and humans. -By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), -```python -from autogen import AssistantAgent, UserProxyAgent, config_list_from_json - -# Load LLM inference endpoints from an env variable or a file -# See https://microsoft.github.io/autogen/docs/FAQ#set-your-api-endpoints -# and OAI_CONFIG_LIST_sample.json -config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST") -assistant = AssistantAgent("assistant", llm_config={"config_list": config_list}) -user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding", "use_docker": False}) # IMPORTANT: set to True to run code in docker, recommended -user_proxy.initiate_chat(assistant, message="Plot a chart of NVDA and TESLA stock price change YTD.") -# This initiates an automated chat between the two agents to solve the task -``` - -The figure below shows an example conversation flow with AutoGen. -![Agent Chat Example](/img/chat_example.png) - -* [Tutorial](/docs/tutorial/introduction). -* [Code examples](/docs/Examples). -* [Documentation](/docs/Use-Cases/agent_chat). - -#### Enhanced LLM Inferences -Autogen also helps maximize the utility out of the expensive LLMs such as ChatGPT and GPT-4. It offers enhanced LLM inference with powerful functionalities like tuning, caching, error handling, templating. For example, you can optimize generations by LLM with your own tuning data, success metrics and budgets. -```python -# perform tuning for openai<1 -config, analysis = autogen.Completion.tune( - data=tune_data, - metric="success", - mode="max", - eval_func=eval_func, - inference_budget=0.05, - optimization_budget=3, - num_samples=-1, -) -# perform inference for a test instance -response = autogen.Completion.create(context=test_instance, **config) -``` - -* [Code examples](/docs/Examples). -* [Documentation](/docs/Use-Cases/enhanced_inference). - -### Where to Go Next ? - -* Understand the use cases for [multi-agent conversation](/docs/Use-Cases/agent_chat) and [enhanced LLM inference](/docs/Use-Cases/enhanced_inference). -* Find [code examples](/docs/Examples). -* Read [SDK](/docs/reference/agentchat/conversable_agent/). -* Learn about [research](/docs/Research) around AutoGen. -* [Roadmap](https://github.com/orgs/microsoft/projects/989/views/3) -* Chat on [Discord](https://discord.gg/pAbnFJrkgZ). -* Follow on [Twitter](https://twitter.com/pyautogen). - -If you like our project, please give it a [star](https://github.com/microsoft/autogen/stargazers) on GitHub. If you are interested in contributing, please read [Contributor's Guide](/docs/Contribute). - - diff --git a/website/docs/Getting-Started.mdx b/website/docs/Getting-Started.mdx new file mode 100644 index 000000000000..1a7dde7b2031 --- /dev/null +++ b/website/docs/Getting-Started.mdx @@ -0,0 +1,138 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +# Getting started + +AutoGen is a framework that enables development of LLM applications using +multiple agents that can converse with each other to solve tasks. AutoGen agents +are customizable, conversable, and seamlessly allow human participation. They +can operate in various modes that employ combinations of LLMs, human inputs, and +tools. + +![AutoGen Overview](/img/autogen_agentchat.png) + +### Main Features + + +- AutoGen enables building next-gen LLM applications based on [multi-agent + conversations](/docs/Use-Cases/agent_chat) with minimal effort. It simplifies + the orchestration, automation, and optimization of a complex LLM workflow. It + maximizes the performance of LLM models and overcomes their weaknesses. +- It supports [diverse conversation +patterns](/docs/Use-Cases/agent_chat#supporting-diverse-conversation-patterns) +for complex workflows. With customizable and conversable agents, developers can +use AutoGen to build a wide range of conversation patterns concerning +conversation autonomy, the number of agents, and agent conversation topology. +- It provides a collection of working systems with different complexities. These + systems span a [wide range of + applications](/docs/Use-Cases/agent_chat#diverse-applications-implemented-with-autogen) + from various domains and complexities. This demonstrates how AutoGen can + easily support diverse conversation patterns. + +AutoGen is powered by collaborative [research studies](/docs/Research) from +Microsoft, Penn State University, and University of Washington. + +### Quickstart + +```sh +pip install pyautogen +``` + + + +:::warning +When asked, be sure to check the generated code before continuing to ensure it is safe to run. +::: + +```python +from autogen import AssistantAgent, UserProxyAgent +from autogen.coding import LocalCommandLineCodeExecutor + +import os +from pathlib import Path + +llm_config = { + "config_list": [{"model": "gpt-4", "api_key": os.environ["OPENAI_API_KEY"]}], +} + +work_dir = Path("coding") +work_dir.mkdir(exist_ok=True) + +assistant = AssistantAgent("assistant", llm_config=llm_config) + +code_executor = LocalCommandLineCodeExecutor(work_dir=work_dir) +user_proxy = UserProxyAgent( + "user_proxy", code_execution_config={"executor": code_executor} +) + +# Start the chat +user_proxy.initiate_chat( + assistant, + message="Plot a chart of NVDA and TESLA stock price change YTD.", +) +``` + + + + + +```python +from autogen import AssistantAgent, UserProxyAgent +from autogen.coding import DockerCommandLineCodeExecutor + +import os +from pathlib import Path + +llm_config = { + "config_list": [{"model": "gpt-4", "api_key": os.environ["OPENAI_API_KEY"]}], +} + +work_dir = Path("coding") +work_dir.mkdir(exist_ok=True) + +with DockerCommandLineCodeExecutor(work_dir=work_dir) as code_executor: + assistant = AssistantAgent("assistant", llm_config=llm_config) + user_proxy = UserProxyAgent( + "user_proxy", code_execution_config={"executor": code_executor} + ) + + # Start the chat + user_proxy.initiate_chat( + assistant, + message="Plot a chart of NVDA and TESLA stock price change YTD. Save the plot to a file called plot.png", + ) +``` + +Open `coding/plot.png` to see the generated plot. + + + + +:::tip +Learn more about configuring LLMs for agents [here](/docs/topics/llm_configuration). +::: + + + +#### Multi-Agent Conversation Framework +Autogen enables the next-gen LLM applications with a generic multi-agent conversation framework. It offers customizable and conversable agents which integrate LLMs, tools, and humans. +By automating chat among multiple capable agents, one can easily make them collectively perform tasks autonomously or with human feedback, including tasks that require using tools via code. For [example](https://github.com/microsoft/autogen/blob/main/test/twoagent.py), + +The figure below shows an example conversation flow with AutoGen. + +![Agent Chat Example](/img/chat_example.png) + + +### Where to Go Next? + +* Go through the [tutorial](/docs/tutorial/introduction) to learn more about the core concepts in AutoGen +* Read the examples and guides in the [notebooks section](/docs/notebooks) +* Understand the use cases for [multi-agent conversation](/docs/Use-Cases/agent_chat) and [enhanced LLM inference](/docs/Use-Cases/enhanced_inference) +* Read the [API](/docs/reference/agentchat/conversable_agent/) docs +* Learn about [research](/docs/Research) around AutoGen +* Chat on [Discord](https://discord.gg/pAbnFJrkgZ) +* Follow on [Twitter](https://twitter.com/pyautogen) + +If you like our project, please give it a [star](https://github.com/microsoft/autogen/stargazers) on GitHub. If you are interested in contributing, please read [Contributor's Guide](/docs/Contribute). + + diff --git a/website/sidebars.js b/website/sidebars.js index 5c5e6e8a38c5..f82944825a61 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -58,7 +58,16 @@ id: "installation/Installation" }, }, - {'Topics': [{type: 'autogenerated', dirName: 'topics'}]}, + { + type: 'category', + label: 'Topics', + link: { + type: 'generated-index', + title: 'Topics', + description: 'Learn about various topics in AutoGen', + slug: 'topics', + }, + items: [{type: 'autogenerated', dirName: 'topics'}]}, {'Use Cases': [{type: 'autogenerated', dirName: 'Use-Cases'}]}, 'Contribute', 'Research', From 5a3eadb92e265851755693f173a361cdf55e3cbe Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 09:49:23 -0500 Subject: [PATCH 37/43] title --- website/docs/Getting-Started.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/Getting-Started.mdx b/website/docs/Getting-Started.mdx index 1a7dde7b2031..ff1207711b62 100644 --- a/website/docs/Getting-Started.mdx +++ b/website/docs/Getting-Started.mdx @@ -1,7 +1,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -# Getting started +# Getting Started AutoGen is a framework that enables development of LLM applications using multiple agents that can converse with each other to solve tasks. AutoGen agents From fa504fcfedeab2a94b7877776db56d11c9846892 Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 09:53:17 -0500 Subject: [PATCH 38/43] update navbar --- website/docusaurus.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 3ddb3a0d89a2..57cf9549c154 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -42,7 +42,7 @@ module.exports = { items: [ { type: "doc", - docId: "tutorial/introduction", + docId: "Getting-Started", position: "left", label: "Docs", }, From d4c82d864f5db89178f1c2db0fd57f0a2b04b277 Mon Sep 17 00:00:00 2001 From: Jack Gerrits Date: Fri, 8 Mar 2024 14:29:29 -0500 Subject: [PATCH 39/43] Delete website/docs/tutorial/what-is-next.ipynb --- website/docs/tutorial/what-is-next.ipynb | 54 ------------------------ 1 file changed, 54 deletions(-) delete mode 100644 website/docs/tutorial/what-is-next.ipynb diff --git a/website/docs/tutorial/what-is-next.ipynb b/website/docs/tutorial/what-is-next.ipynb deleted file mode 100644 index 3d43d8589311..000000000000 --- a/website/docs/tutorial/what-is-next.ipynb +++ /dev/null @@ -1,54 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# What is Next?\n", - "\n", - "Now that you have learned the basics of AutoGen, you can start to build your\n", - "own agents. Here are some ideas to get you started without going to the advanced\n", - "topics:\n", - "\n", - "1. **Chat with LLMs**: In [Human-in-the-Loop](./human-in-the-loop) we covered\n", - " the basic human-in-the-loop usage. You can try to hook up different LLMs\n", - " using proxy servers like \n", - " [Ollama](https://github.com/ollama/ollama), \n", - " and chat with them\n", - " using the human-in-the-loop component of your human proxy agent.\n", - "2. **Prompt Engineering**: In [Code Executors](./code-executors) we covered the\n", - " simple two agent scenario using GPT-4 and Python code executor. To make this\n", - " scenario work for different LLMs and programming languages, you probably need\n", - " to tune the system message of the code writer agent. Same with other scenarios\n", - " that we have covered in this tutorial, you can also try to tune system messages\n", - " for different LLMs.\n", - "3. **Complex Tasks**: In [Conversation Patterns](./conversation-patterns)\n", - " we covered the basic conversation patterns. You can try to find other \n", - " tasks that can be decomposed into these patterns, and leverage the \n", - " code executors to make the agents more powerful.\n", - "\n", - "If you have any questions, you can ask in our \n", - "[GitHub Discussions](https://github.com/microsoft/autogen/discussions), or \n", - "join our [Discord Server](https://discord.gg/pAbnFJrkgZ).\n", - "\n", - "[![](https://img.shields.io/discord/1153072414184452236?logo=discord&style=flat)](https://discord.gg/pAbnFJrkgZ)\n", - "\n", - "To contribute your work to our [gallery](../Gallery), following\n", - "our [contribution guide](../Contribute) to make a pull request.\n", - "You can also share your work with the community on the Discord server.\n", - "\n", - "## Advanced Topics\n", - "\n", - "To check out dig deeper into the AutoGen, you can check out the\n", - "the the list of [example notebooks](../Examples.md)." - ] - } - ], - "metadata": { - "language_info": { - "name": "python" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} From cec33a68ac9e02692267c60ebcb061641ff23587 Mon Sep 17 00:00:00 2001 From: ekzhu Date: Fri, 8 Mar 2024 12:09:08 -0800 Subject: [PATCH 40/43] update conversable patterns --- website/docs/tutorial/conversation-patterns.ipynb | 9 ++++++++- website/process_notebooks.py | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/website/docs/tutorial/conversation-patterns.ipynb b/website/docs/tutorial/conversation-patterns.ipynb index 87bd569008da..7fb32104b336 100644 --- a/website/docs/tutorial/conversation-patterns.ipynb +++ b/website/docs/tutorial/conversation-patterns.ipynb @@ -383,6 +383,9 @@ "source": [ "The Number Agent chats with the first operator agent, then the second\n", "operator agent, and so on.\n", + "After each chat, the last message in the conversation (i.e., the result of the arithmetic operation from the operator agent)\n", + "is used as the summary of the chat.\n", + "This is specified by the `summary_method` parameter.\n", "In the end we will have the result of the arithmetic operations." ] }, @@ -550,21 +553,25 @@ " \"recipient\": adder_agent,\n", " \"message\": \"14\",\n", " \"max_turns\": 2,\n", + " \"summary_method\": \"last_msg\",\n", " },\n", " {\n", " \"recipient\": multiplier_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", + " \"summary_method\": \"last_msg\",\n", " },\n", " {\n", " \"recipient\": subtracter_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", + " \"summary_method\": \"last_msg\",\n", " },\n", " {\n", " \"recipient\": divider_agent,\n", " \"message\": \"These are my numbers\",\n", " \"max_turns\": 2,\n", + " \"summary_method\": \"last_msg\",\n", " },\n", " ]\n", ")" @@ -585,7 +592,7 @@ "in the second chat the number 16 becomes 32 and then 64, and so on.\n", "\n", "Third, the carryover accumulates as the chats go on. In the second chat,\n", - "the carryover is the summary of the first chat, which is \"16\".\n", + "the carryover is the summary of the first chat \"16\".\n", "In the third chat, the carryover is the summary of the first and second\n", "chat, which is the list \"16\" and \"64\", and both numbers are operated upon.\n", "In the forth and last chat, the carryover is the summary of all previous\n", diff --git a/website/process_notebooks.py b/website/process_notebooks.py index 8c4651fdc66f..04b5da699036 100755 --- a/website/process_notebooks.py +++ b/website/process_notebooks.py @@ -73,7 +73,7 @@ def notebooks_target_dir(website_directory: Path) -> Path: def load_metadata(notebook: Path) -> typing.Dict: - content = json.load(notebook.open()) + content = json.load(notebook.open(encoding="utf-8")) return content["metadata"] From 5bd22117f4667e34228c12a7f0d2e0e8cc9ffee5 Mon Sep 17 00:00:00 2001 From: gagb Date: Sat, 9 Mar 2024 00:39:19 +0000 Subject: [PATCH 41/43] Improve language --- website/docs/tutorial/code-executors.ipynb | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/website/docs/tutorial/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb index d6e08aacf250..010b385209c2 100644 --- a/website/docs/tutorial/code-executors.ipynb +++ b/website/docs/tutorial/code-executors.ipynb @@ -7,21 +7,23 @@ "# Code Executors\n", "\n", "In the last chapter, \n", - "we used two agents powered by a large language model (LLM) to play a game. \n", - "In this chapter, we introduce code executors, which enable agents\n", - "to interact with an environment and perform useful computations.\n", + "we used two agents powered by a large language model (LLM) to play a game\n", + "by exchanging messages.\n", + "In this chapter, we introduce code executors, which enable agents to not just chat\n", + "but also\n", + "to interact with an environment and perform useful computations and take actions.\n", "\n", "## Overview\n", "\n", - "A code executor is an agent component that\n", - "takes input messages with code blocks, performs execution, and output messages\n", + "In AutoGen, a code executor is a component that\n", + "takes input messages (e.g., those containing code blocks), performs execution, and outputs messages\n", "with the results.\n", "AutoGen provides two types of built-in code executors, one is \n", "command line code executor, which runs code in a command line environment\n", "such as a UNIX shell, and the other is Jupyter executor, which runs code\n", "in an interactive [Jupyter kernel](https://github.com/jupyter/jupyter/wiki/Jupyter-kernels).\n", "\n", - "For each type of executor, AutoGen provides two ways to execute code.\n", + "For each type of executor, AutoGen provides two ways to execute code: locally and in a Docker container.\n", "One way is to execute\n", "code directly in the same host platform where AutoGen is running, i.e.,\n", "the local operating system.\n", @@ -61,7 +63,7 @@ "![Code Executor No Docker](./assets/code-executor-no-docker.png)\n", "```\n", "\n", - "Once receiving a message with a code block, the local command line code executor\n", + "Upon receiving a message with a code block, the local command line code executor\n", "first writes the code block to a code file, then starts a new subprocess to\n", "execute the code file. The executor reads the console output of the \n", "code execution and sends it back as a reply message.\n", @@ -70,8 +72,8 @@ "code block that prints a random number.\n", "First we create an agent with the code executor\n", "that uses a temporary directory to store the code files.\n", - "We specify `human_input_mode=\"ALWAYS\"` to manually validate the code being \n", - "executed is safe." + "We specify `human_input_mode=\"ALWAYS\"` to manually validate the safety of the the code being \n", + "executed." ] }, { @@ -229,7 +231,7 @@ "This way, the generated code can only access resources that are explicitly \n", "given to it.\n", "\n", - "The figure below illustrates how does the docker execution work.\n", + "The figure below illustrates how does the docker execution works.\n", "\n", "```{=mdx}\n", "![Code Executor Docker](./assets/code-executor-docker.png)\n", From affb9f3d56c47ddc75dff5402e2dde2b65bb4007 Mon Sep 17 00:00:00 2001 From: gagb Date: Sat, 9 Mar 2024 00:40:40 +0000 Subject: [PATCH 42/43] Fix typo --- website/docs/tutorial/human-in-the-loop.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/tutorial/human-in-the-loop.ipynb b/website/docs/tutorial/human-in-the-loop.ipynb index 14706b6c84e9..26c99b9a55f6 100644 --- a/website/docs/tutorial/human-in-the-loop.ipynb +++ b/website/docs/tutorial/human-in-the-loop.ipynb @@ -8,7 +8,7 @@ "\n", "In the last two chapters we introduced the `ConversableAgent` class and showed how you can use it to create autonomous (`human_input_mode=NEVER`) agents that can accomplish tasks. We also showed how to properly terminate a conversation between agents.\n", "\n", - "But many applications may require putting humans-in-the-loop with agents. For example, to allow human feedback to steer agents in the right direction, specify goals, etc. In this chapter, we will show how AutoGen supports human intervention." + "But many applications may require putting humans in-the-loop with agents. For example, to allow human feedback to steer agents in the right direction, specify goals, etc. In this chapter, we will show how AutoGen supports human intervention." ] }, { From dafa042973178d6b8d082d6520f37d81ebb68ccd Mon Sep 17 00:00:00 2001 From: Eric Zhu Date: Fri, 8 Mar 2024 18:30:17 -0800 Subject: [PATCH 43/43] minor fixes --- website/docs/tutorial/code-executors.ipynb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/website/docs/tutorial/code-executors.ipynb b/website/docs/tutorial/code-executors.ipynb index d6e08aacf250..6f891f5b8a70 100644 --- a/website/docs/tutorial/code-executors.ipynb +++ b/website/docs/tutorial/code-executors.ipynb @@ -204,7 +204,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Clean up the temporary directory." + "Clean up the working directory to avoid affecting future conversations." ] }, { @@ -284,7 +284,8 @@ "metadata": {}, "source": [ "The `work_dir` in the constructor points to a local file system directory just like in the local execution case.\n", - "This directory will be mounted to the docker container and the code files will be written to this directory." + "The docker container will mount this directory and the executor write code files\n", + "and output to it." ] }, { @@ -628,7 +629,8 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Clean up the temporary directory to avoid cluttering your file system." + "Because code execution leave traces like code files and output in the file system, \n", + "we may want to clean up the working directory after each conversation concludes." ] }, {