From 4de49849ed2d9b1d11a758c642413006340244c6 Mon Sep 17 00:00:00 2001 From: Corwin Date: Wed, 9 Jul 2025 15:05:59 -0400 Subject: [PATCH 1/7] optimize --- examples/Optimize Prompts.ipynb | 136 ++++++++++++++++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 examples/Optimize Prompts.ipynb diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb new file mode 100644 index 0000000000..55b816a9aa --- /dev/null +++ b/examples/Optimize Prompts.ipynb @@ -0,0 +1,136 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": "# Optimize Prompts\n\nThis cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even expert users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable, effective prompts.\n\nThe optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n\n- **Contradictions** in the prompt instructions\n- **Missing or unclear format specifications**\n- **Inconsistencies** between the prompt and few-shot examples\n\n---\n\n**Objective**: This notebook demonstrates how to automatically improve prompts by detecting and fixing common issues, helping you develop more robust and effective prompts for your applications.\n\n**Cookbook Structure** \nThis notebook follows this structure:\n\n- [Step 1. System Overview](#1.-system-overview) - Learn how the prompt optimization system works \n- [Step 2. Data Models](#2.-data-models) - Understand the data structures used by the system\n- [Step 3. Defining the Agents](#3.-defining-the-agents) - Meet the specialized agents that analyze and improve prompts\n- [Step 4. Run Optimization Workflow](#4.run-optimization-workflow) - See how the system processes prompts\n- [Step 5. Examples](#5.-examples) - Explore real-world examples of prompt optimization\n\n**Prerequisites**\n- The `openai` Python package \n- The `openai-agents` package\n- An OpenAI API key set as `OPENAI_API_KEY` environment variable" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "## 1. System Overview\n\nThe prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting a specific type of issue:\n\n1. **Dev-Contradiction-Checker**: Scans the prompt for logical contradictions or impossible instructions, like \"only use positive numbers\" and \"include negative examples\" in the same prompt.\n\n2. **Format-Checker**: Identifies when a prompt expects structured output (like JSON, CSV, or Markdown) but fails to clearly specify the exact format requirements. This agent ensures that all necessary fields, data types, and formatting rules are explicitly defined.\n\n3. **Few-Shot-Consistency-Checker**: Examines example conversations to ensure that the assistant's responses actually follow the rules specified in the prompt. This catches mismatches between what the prompt requires and what the examples demonstrate.\n\n4. **Dev-Rewriter**: After issues are identified, this agent rewrites the prompt to resolve contradictions and clarify format specifications while preserving the original intent.\n\n5. **Few-Shot-Rewriter**: Updates inconsistent example responses to align with the rules in the prompt, ensuring that all examples properly demonstrate the desired behavior.\n\nBy working together, these agents can systematically identify and fix issues that might otherwise lead to confusion or unexpected results when using the prompt with an AI model." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "# Import required modules\nfrom openai import AsyncOpenAI\nimport asyncio\nimport json\nimport os\nfrom enum import Enum\nfrom typing import Any, List, Dict\nfrom pydantic import BaseModel, Field\nfrom agents import Agent, Runner, set_default_openai_client\n\nopenai_client: AsyncOpenAI | None = None\n\ndef _get_openai_client() -> AsyncOpenAI:\n global openai_client\n if openai_client is None:\n openai_client = AsyncOpenAI(\n api_key=os.environ.get(\"OPENAI_API_KEY\", \"your-api-key\"),\n )\n return openai_client\n\nset_default_openai_client(_get_openai_client())" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "## 2. Data Models\n\nTo facilitate structured communication between agents, the system uses Pydantic models to define the expected format for inputs and outputs. These models help validate data and ensure consistency throughout the optimization process.\n\nThe data models include:\n\n1. **Role** - An enumeration for message roles (user/assistant)\n2. **ChatMessage** - Represents a single message in a conversation\n3. **Issues** - Base model for reporting detected issues\n4. **FewShotIssues** - Extended model that adds rewrite suggestions for example messages\n5. **MessagesOutput** - Contains optimized conversation messages\n6. **DevRewriteOutput** - Contains the improved developer prompt\n\nThese models create a structured pipeline for analyzing prompts, detecting issues, and producing improved versions. Using Pydantic allows the system to validate that all data conforms to the expected format at each step of the process." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "class Role(str, Enum):\n \"\"\"Role enum for chat messages.\"\"\"\n user = \"user\"\n assistant = \"assistant\"\n\nclass ChatMessage(BaseModel):\n \"\"\"Single chat message used in few-shot examples.\"\"\"\n role: Role\n content: str\n\nclass Issues(BaseModel):\n \"\"\"Structured output returned by checkers.\"\"\"\n has_issues: bool\n issues: List[str]\n \n @classmethod\n def no_issues(cls) -> \"Issues\":\n return cls(has_issues=False, issues=[])\n\nclass FewShotIssues(Issues):\n \"\"\"Output for few-shot contradiction detector including optional rewrite suggestions.\"\"\"\n rewrite_suggestions: List[str] = Field(default_factory=list)\n \n @classmethod\n def no_issues(cls) -> \"FewShotIssues\":\n return cls(has_issues=False, issues=[], rewrite_suggestions=[])\n\nclass MessagesOutput(BaseModel):\n \"\"\"Structured output returned by `rewrite_messages_agent`.\"\"\"\n\n messages: list[ChatMessage]\n\n\nclass DevRewriteOutput(BaseModel):\n \"\"\"Rewriter returns the cleaned-up developer prompt.\"\"\"\n\n new_developer_message: str" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "## 3. Defining the Agents\n\nIn this section, we create the specialized AI agents that will analyze and improve prompts. Each agent is defined with a specific role, instructions, and output format. The `Agent` class is imported from the `openai-agents` package and provides a standardized way to create and run these specialized agents.\n\nThe agents are:\n\n1. **dev_contradiction_checker** - Finds logical contradictions within the prompt\n2. **format_checker** - Detects unclear or missing format specifications\n3. **fewshot_consistency_checker** - Identifies mismatches between the prompt and examples\n4. **dev_rewriter** - Rewrites the prompt to fix contradictions and format issues\n5. **fewshot_rewriter** - Updates example responses to match prompt requirements\n\nEach agent has carefully crafted instructions that guide its analysis. The instructions specify what to look for, what to ignore, and how to format the output. This level of specificity ensures that the agents work together effectively while focusing on their specific responsibilities." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "dev_contradiction_checker = Agent(\n name=\"contradiction_detector\",\n model=\"gpt-4.1\",\n output_type=Issues,\n instructions=\"\"\"\n You are **Dev-Contradiction-Checker-v2**.\n\n Goal\n Detect *genuine* self-contradictions or impossibilities **inside** the developer prompt supplied in the variable `DEVELOPER_MESSAGE`.\n\n Definitions\n • A contradiction = two clauses that cannot both be followed.\n • Overlaps or redundancies in the DEVELOPER_MESSAGE are *not* contradictions.\n\n What you MUST do\n 1. Compare every imperative / prohibition against all others.\n 2. List at most FIVE contradictions (each as ONE bullet).\n 3. If no contradiction exists, say so.\n\n Output format (**strict JSON**)\n Return **only** an object that matches the `Issues` schema:\n\n ```json\n {\"has_issues\": ,\n \"issues\": [\n \"\",\n \"\"\n ]\n }\n - has_issues = true IFF the issues array is non-empty.\n - Do not add extra keys, comments or markdown.\n\"\"\",\n)\nformat_checker = Agent(\n name=\"format_checker\",\n model=\"gpt-4.1\",\n output_type=Issues,\n instructions=\"\"\"\n You are Format-Checker-v2.\n\n Task\n Decide whether the developer prompt requires a structured output (JSON/CSV/XML/Markdown table, etc.).\n If so, flag any missing or unclear aspects of that format.\n\n Steps\n Categorise the task as:\n a. \"conversation_only\", or\n b. \"structured_output_required\".\n\n For case (b):\n - Point out absent fields, ambiguous data types, unspecified ordering, or missing error-handling.\n\n Do NOT invent issues if unsure. be a little bit more conservative in flagging format issues\n\n Output format\n Return strictly-valid JSON following the Issues schema:\n\n {\n \"has_issues\": ,\n \"issues\": [\"\", \"...\"]\n }\n Maximum five issues. No extra keys or text.\n\"\"\",\n)\nfewshot_consistency_checker = Agent(\n name=\"fewshot_consistency_checker\",\n model=\"gpt-4.1\",\n output_type=FewShotIssues,\n instructions=\"\"\"\n You are FewShot-Consistency-Checker-v3.\n\n Goal\n Find conflicts between the DEVELOPER_MESSAGE rules and the accompanying **assistant** examples.\n\n USER_EXAMPLES: # context only\n ASSISTANT_EXAMPLES: # to be evaluated\n\n Method\n Extract key constraints from DEVELOPER_MESSAGE:\n - Tone / style\n - Forbidden or mandated content\n - Output format requirements\n\n Compliance Rubric - read carefully\n Evaluate only what the developer message makes explicit.\n\n Objective constraints you must check when present:\n - Required output type syntax (e.g., \"JSON object\", \"single sentence\", \"subject line\").\n - Hard limits (length ≤ N chars, language required to be English, forbidden words, etc.).\n - Mandatory tokens or fields the developer explicitly names.\n\n Out-of-scope (DO NOT FLAG):\n - Whether the reply \"sounds generic\", \"repeats the prompt\", or \"fully reflects the user's request\" - unless the developer text explicitly demands those qualities.\n - Creative style, marketing quality, or depth of content unless stated.\n - Minor stylistic choices (capitalisation, punctuation) that do not violate an explicit rule.\n\n Pass/Fail rule\n - If an assistant reply satisfies all objective constraints, it is compliant, even if you personally find it bland or loosely related.\n - Only record an issue when a concrete, quoted rule is broken.\n\n Empty assistant list ⇒ immediately return has_issues=false.\n\n For each assistant example:\n - USER_EXAMPLES are for context only; never use them to judge compliance.\n - Judge each assistant reply solely against the explicit constraints you extracted from the developer message.\n - If a reply breaks a specific, quoted rule, add a line explaining which rule it breaks.\n - Optionally, suggest a rewrite in one short sentence (add to rewrite_suggestions).\n - If you are uncertain, do not flag an issue.\n - Be conservative—uncertain or ambiguous cases are not issues.\n\n be a little bit more conservative in flagging few shot contradiction issues\n Output format\n Return JSON matching FewShotIssues:\n\n {\n \"has_issues\": ,\n \"issues\": [\"\", \"...\"],\n \"rewrite_suggestions\": [\"\", \"...\"] // may be []\n }\n List max five items for both arrays.\n Provide empty arrays when none.\n No markdown, no extra keys.\n \"\"\",\n)\ndev_rewriter = Agent(\n name=\"dev_rewriter\",\n model=\"gpt-4.1\",\n output_type=DevRewriteOutput,\n instructions=\"\"\"\n You are Dev-Rewriter-v2.\n\n You receive:\n - ORIGINAL_DEVELOPER_MESSAGE\n - CONTRADICTION_ISSUES (may be empty)\n - FORMAT_ISSUES (may be empty)\n\n Rewrite rules\n Preserve the original intent and capabilities.\n\n Resolve each contradiction:\n - Keep the clause that preserves the message intent; remove/merge the conflicting one.\n\n If FORMAT_ISSUES is non-empty:\n - Append a new section titled ## Output Format that clearly defines the schema or gives an explicit example.\n\n Do NOT change few-shot examples.\n\n Do NOT add new policies or scope.\n\n Output format (strict JSON)\n {\n \"new_developer_message\": \"\"\n }\n No other keys, no markdown.\n\"\"\",\n)\nfewshot_rewriter = Agent(\n name=\"fewshot_rewriter\",\n model=\"gpt-4.1\",\n output_type=MessagesOutput,\n instructions=\"\"\"\n You are FewShot-Rewriter-v2.\n\n Input payload\n - NEW_DEVELOPER_MESSAGE (already optimized)\n - ORIGINAL_MESSAGES (list of user/assistant dicts)\n - FEW_SHOT_ISSUES (non-empty)\n\n Task\n Regenerate only the assistant parts that were flagged.\n User messages must remain identical.\n Every regenerated assistant reply MUST comply with NEW_DEVELOPER_MESSAGE.\n\n After regenerating each assistant reply, verify:\n - It matches NEW_DEVELOPER_MESSAGE. ENSURE THAT THIS IS TRUE.\n\n Output format\n Return strict JSON that matches the MessagesOutput schema:\n\n {\n \"messages\": [\n {\"role\": \"user\", \"content\": \"...\"},\n {\"role\": \"assistant\", \"content\": \"...\"}\n ]\n }\n Guidelines\n - Preserve original ordering and total count.\n - If a message was unproblematic, copy it unchanged.\n \"\"\",\n)" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "## 4.Run Optimization Workflow\n\nNow that we've defined our agents and data models, let's examine how they work together to optimize prompts. The optimization workflow consists of several stages that run in parallel to efficiently analyze and improve prompts." + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "The following function implements the core workflow for prompt optimization. The process follows these steps:\n\n1. **Parallel Analysis**: The function first runs the contradiction checker, format checker, and few-shot consistency checker in parallel (if examples are provided).\n\n2. **Issue Collection**: Results from all checkers are collected and organized.\n\n3. **Conditional Rewriting**: \n - If contradiction or format issues are found, the prompt is rewritten using the dev_rewriter agent\n - If few-shot inconsistencies are found, the example responses are updated using the fewshot_rewriter agent\n\n4. **Results Compilation**: The function returns a comprehensive result including the improved prompt, updated examples (if any), and details about the issues that were fixed.\n\nThis parallel approach makes the optimization process efficient, even when working with complex prompts and multiple examples." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "def _normalize_messages(messages: List[Any]) -> List[Dict[str, str]]:\n \"\"\"Convert list of pydantic message models to JSON-serializable dicts.\"\"\"\n result = []\n for m in messages:\n if hasattr(m, \"model_dump\"):\n result.append(m.model_dump())\n elif isinstance(m, dict) and \"role\" in m and \"content\" in m:\n result.append({\"role\": str(m[\"role\"]), \"content\": str(m[\"content\"])})\n return result\n\nasync def optimize_prompt_parallel(\n developer_message: str,\n messages: List[\"ChatMessage\"],\n) -> Dict[str, Any]:\n \"\"\"\n Runs contradiction, format, and few-shot checkers in parallel,\n then rewrites the prompt/examples if needed.\n Returns a unified dict suitable for an API or endpoint.\n \"\"\"\n\n # 1. Run all checkers in parallel (contradiction, format, fewshot if there are examples)\n tasks = [\n Runner.run(dev_contradiction_checker, developer_message),\n Runner.run(format_checker, developer_message),\n ]\n if messages:\n fs_input = {\n \"DEVELOPER_MESSAGE\": developer_message,\n \"USER_EXAMPLES\": [m.content for m in messages if m.role == \"user\"],\n \"ASSISTANT_EXAMPLES\": [m.content for m in messages if m.role == \"assistant\"],\n }\n tasks.append(Runner.run(fewshot_consistency_checker, json.dumps(fs_input)))\n\n results = await asyncio.gather(*tasks)\n\n # Unpack results\n cd_issues: Issues = results[0].final_output\n fi_issues: Issues = results[1].final_output\n fs_issues: FewShotIssues = results[2].final_output if messages else FewShotIssues.no_issues()\n\n # 3. Rewrites as needed\n final_prompt = developer_message\n if cd_issues.has_issues or fi_issues.has_issues:\n pr_input = {\n \"ORIGINAL_DEVELOPER_MESSAGE\": developer_message,\n \"CONTRADICTION_ISSUES\": cd_issues.model_dump(),\n \"FORMAT_ISSUES\": fi_issues.model_dump(),\n }\n pr_res = await Runner.run(dev_rewriter, json.dumps(pr_input))\n final_prompt = pr_res.final_output.new_developer_message\n\n final_messages: Union[List[\"ChatMessage\"], List[Dict[str, str]]] = messages\n if fs_issues.has_issues:\n mr_input = {\n \"NEW_DEVELOPER_MESSAGE\": final_prompt,\n \"ORIGINAL_MESSAGES\": _normalize_messages(messages),\n \"FEW_SHOT_ISSUES\": fs_issues.model_dump(),\n }\n mr_res = await Runner.run(fewshot_rewriter, json.dumps(mr_input))\n final_messages = mr_res.final_output.messages\n\n return {\n \"changes\": True,\n \"new_developer_message\": final_prompt,\n \"new_messages\": _normalize_messages(final_messages),\n \"contradiction_issues\": \"\\n\".join(cd_issues.issues),\n \"few_shot_contradiction_issues\": \"\\n\".join(fs_issues.issues),\n \"format_issues\": \"\\n\".join(fi_issues.issues),\n \"general_improvements\": \"\",\n }" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "## 5. Examples\n\nLet's explore several practical examples to see how the prompt optimization system works in real-world scenarios. These examples demonstrate the system's ability to identify and fix different types of issues in prompts:" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "### Example 1: Fixing Contradictions\n\nOur first example demonstrates how the system identifies and resolves contradictions in a prompt. This prompt contains instructions for parsing e-commerce product details from HTML, but it has contradictory rules for handling missing fields." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "async def example_contradiction():\n # A prompt with contradictory instructions\n prompt = \"\"\"Quick-Start Card — Product Parser\n\nGoal \nDigest raw HTML of an e-commerce product detail page and emit **concise, minified JSON** describing the item.\n\n**Required fields:** \nname | brand | sku | price.value | price.currency | images[] | sizes[] | materials[] | care_instructions | features[]\n\n**Extraction priority:** \n1. schema.org/JSON-LD blocks \n2. & microdata tags \n3. Visible DOM fallback (class hints: \"product-name\", \"price\")\n\n** Rules:** \n- If *any* required field is missing, short-circuit with: `{\"error\": \"FIELD_MISSING:\"}`.\n- Prices: Numeric with dot decimal; strip non-digits (e.g., \"1.299,00 EUR\" → 1299.00 + \"EUR\").\n- Deduplicate images differing only by query string. Keep ≤10 best-res.\n- Sizes: Ensure unit tag (\"EU\", \"US\") and ascending sort.\n- Materials: Title-case and collapse synonyms (e.g., \"polyester 100%\" → \"Polyester\").\n\n**Sample skeleton (minified):**\n```json\n{\"name\":\"\",\"brand\":\"\",\"sku\":\"\",\"price\":{\"value\":0,\"currency\":\"USD\"},\"images\":[\"\"],\"sizes\":[],\"materials\":[],\"care_instructions\":\"\",\"features\":[]}\nNote: It is acceptable to output null for any missing field instead of an error ###\"\"\"\n \n result = await optimize_prompt_parallel(prompt, [])\n \n # Display the results\n if result[\"contradiction_issues\"]:\n print(\"Contradiction issues:\")\n print(result[\"contradiction_issues\"])\n print()\n \n print(\"Optimized prompt:\")\n print(result[\"new_developer_message\"])\n \n# Run the example\nawait example_contradiction()" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "### Example 2: Fixing Inconsistencies Between Prompt and Few-Shot Examples\n\nOur second example shows how the system detects and fixes inconsistencies between a prompt and its accompanying examples. In this case, the prompt requires responses to be in JSON format, but one of the examples doesn't follow this requirement." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "async def example_fewshot_fix():\n prompt = \"Respond **only** with JSON using keys `city` (string) and `population` (integer).\"\n \n messages = [\n {\"role\": \"user\", \"content\": \"Largest US city?\"},\n {\"role\": \"assistant\", \"content\": \"New York City\"},\n {\"role\": \"user\", \"content\": \"Largest UK city?\"},\n {\"role\": \"assistant\", \"content\": \"{\\\"city\\\":\\\"London\\\",\\\"population\\\":9541000}\"}\n ]\n \n \n print(\"Few-shot examples before optimization:\")\n print(f\"User: {messages[0]['content']}\")\n print(f\"Assistant: {messages[1]['content']}\")\n print(f\"User: {messages[2]['content']}\")\n print(f\"Assistant: {messages[3]['content']}\")\n print()\n \n # Call the optimization API\n result = await optimize_prompt_parallel(prompt, [ChatMessage(**m) for m in messages])\n \n # Display the results\n if result[\"few_shot_contradiction_issues\"]:\n print(\"Inconsistency found:\", result[\"few_shot_contradiction_issues\"])\n print()\n \n # Show the optimized few-shot examples\n optimized_messages = result[\"new_messages\"]\n print(\"Few-shot examples after optimization:\")\n print(f\"User: {optimized_messages[0]['content']}\")\n print(f\"Assistant: {optimized_messages[1]['content']}\")\n print(f\"User: {optimized_messages[2]['content']}\")\n print(f\"Assistant: {optimized_messages[3]['content']}\")\n \n# Run the example\nawait example_fewshot_fix()" + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": "### Example 3: Clarifying Formats in a Longer Prompt\n\nOur final example shows how the system identifies and fixes unclear format specifications in a more complex prompt. This prompt asks for patent claim translation but doesn't clearly specify the required output format structure." + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": "async def example_format_issue():\n # A prompt with unclear or inconsistent formatting instructions\n prompt = \"\"\"Task → Translate dense patent claims into 200-word lay summaries with a glossary.\n\nOperating Steps:\n1. Split the claim at semicolons, \"wherein\", or numbered sub-clauses.\n2. For each chunk:\n a) Identify its purpose.\n b) Replace technical nouns with everyday analogies.\n c) Keep quantitative limits intact (e.g., \"≥150 C\").\n3. Flag uncommon science terms with asterisks, and later define them.\n4. Re-assemble into a flowing paragraph; do **not** broaden or narrow the claim's scope.\n5. Omit boilerplate if its removal does not alter legal meaning.\n\nOutput should follow a Markdown template:\n- A summary section.\n- A glossary section with the marked terms and their definitions.\n\nCorner Cases:\n- If the claim is over 5 kB, respond with CLAIM_TOO_LARGE.\n- If claim text is already plain English, skip glossary and state no complex terms detected.\n\nRemember: You are *not* providing legal advice—this is for internal comprehension only.\"\"\"\n\n # Call the optimization API to check for format issues\n result = await optimize_prompt_parallel(prompt, [])\n\n # Display the results\n if result.get(\"format_issues\"):\n print(\"Format issues found:\", result[\"format_issues\"])\n print()\n\n print(\"Optimized prompt:\")\n print(result[\"new_developer_message\"])\n\n# Run the example\nawait example_format_issue()" + }, + { + "cell_type": "markdown", + "source": "## 6. Conclusion and Best Practices\n\nThis notebook has demonstrated an early version of OpenAI's prompt optimization system, which uses specialized AI agents to automatically detect and fix common issues in prompts. The system focuses on three key areas:\n\n1. **Detecting contradictions**: Finding and resolving instructions that conflict with each other\n2. **Clarifying format specifications**: Ensuring that output format requirements are clear and comprehensive\n3. **Aligning examples with requirements**: Making sure that example responses match the rules in the prompt\n\nBy applying these optimizations, you can create more effective prompts that lead to more consistent, reliable results from AI models.\n\n### Best Practices for Prompt Engineering\n\nBased on the patterns and fixes we've seen in this notebook, here are some best practices to follow when creating prompts:\n\n1. **Check for contradictions**: Review your prompt carefully to ensure that your instructions don't contradict each other.\n\n2. **Be explicit about formats**: If you expect a specific output format, clearly define the structure, field requirements, and how to handle edge cases.\n\n3. **Provide consistent examples**: Ensure that your few-shot examples follow all the rules specified in your prompt.\n\n4. **Define key terms**: Clearly define any important terms, labels, or categories that might be ambiguous.\n\n5. **Specify error handling**: Provide clear instructions for how the model should handle edge cases or errors.\n\n6. **Organize with clear structure**: Use headings, bullet points, and numbering to make your prompt easy to follow.\n\nBy following these practices and using tools like the optimization system demonstrated in this notebook, you can create more effective prompts that lead to better results from AI models.", + "metadata": {} + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "openai", + "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.12.9" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} \ No newline at end of file From 44afad8aec985f41b8ca542245f3094f27659023 Mon Sep 17 00:00:00 2001 From: Corwin Date: Wed, 9 Jul 2025 15:21:52 -0400 Subject: [PATCH 2/7] first draft completed --- examples/Optimize Prompts.ipynb | 756 ++++++++++++++++++++++++++++++-- 1 file changed, 719 insertions(+), 37 deletions(-) diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index 55b816a9aa..b52f0df50d 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -3,113 +3,795 @@ { "cell_type": "markdown", "metadata": {}, - "source": "# Optimize Prompts\n\nThis cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even expert users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable, effective prompts.\n\nThe optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n\n- **Contradictions** in the prompt instructions\n- **Missing or unclear format specifications**\n- **Inconsistencies** between the prompt and few-shot examples\n\n---\n\n**Objective**: This notebook demonstrates how to automatically improve prompts by detecting and fixing common issues, helping you develop more robust and effective prompts for your applications.\n\n**Cookbook Structure** \nThis notebook follows this structure:\n\n- [Step 1. System Overview](#1.-system-overview) - Learn how the prompt optimization system works \n- [Step 2. Data Models](#2.-data-models) - Understand the data structures used by the system\n- [Step 3. Defining the Agents](#3.-defining-the-agents) - Meet the specialized agents that analyze and improve prompts\n- [Step 4. Run Optimization Workflow](#4.run-optimization-workflow) - See how the system processes prompts\n- [Step 5. Examples](#5.-examples) - Explore real-world examples of prompt optimization\n\n**Prerequisites**\n- The `openai` Python package \n- The `openai-agents` package\n- An OpenAI API key set as `OPENAI_API_KEY` environment variable" + "source": [ + "# Optimize Prompts\n", + "\n", + "This cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even experienced users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable, effective prompts.\n", + "\n", + "The optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n", + "\n", + "- **Contradictions** in the prompt instructions\n", + "- **Missing or unclear format specifications**\n", + "- **Inconsistencies** between the prompt and few-shot examples\n", + "\n", + "---\n", + "\n", + "**Objective**: This notebook demonstrates best practices of creating a useful and robust agent system and can help you develop more effective prompts for your applications.\n", + "\n", + "**Cookbook Structure** \n", + "This notebook follows this structure:\n", + "\n", + "- [Step 1. System Overview](#1.-system-overview) - Learn how the prompt optimization system works \n", + "- [Step 2. Data Models](#2.-data-models) - Understand the data structures used by the system\n", + "- [Step 3. Defining the Agents](#3.-defining-the-agents) - Look at agents that analyze and improve prompts\n", + "- [Step 4. Run Optimization Workflow](#4.run-optimization-workflow) - See how the system processes prompts\n", + "- [Step 5. Examples](#5.-examples) - Explore real-world examples of prompt optimization\n", + "\n", + "**Prerequisites**\n", + "- The `openai` Python package \n", + "- The `openai-agents` package\n", + "- An OpenAI API key set as `OPENAI_API_KEY` environment variable" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "## 1. System Overview\n\nThe prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting a specific type of issue:\n\n1. **Dev-Contradiction-Checker**: Scans the prompt for logical contradictions or impossible instructions, like \"only use positive numbers\" and \"include negative examples\" in the same prompt.\n\n2. **Format-Checker**: Identifies when a prompt expects structured output (like JSON, CSV, or Markdown) but fails to clearly specify the exact format requirements. This agent ensures that all necessary fields, data types, and formatting rules are explicitly defined.\n\n3. **Few-Shot-Consistency-Checker**: Examines example conversations to ensure that the assistant's responses actually follow the rules specified in the prompt. This catches mismatches between what the prompt requires and what the examples demonstrate.\n\n4. **Dev-Rewriter**: After issues are identified, this agent rewrites the prompt to resolve contradictions and clarify format specifications while preserving the original intent.\n\n5. **Few-Shot-Rewriter**: Updates inconsistent example responses to align with the rules in the prompt, ensuring that all examples properly demonstrate the desired behavior.\n\nBy working together, these agents can systematically identify and fix issues that might otherwise lead to confusion or unexpected results when using the prompt with an AI model." + "source": [ + "## 1. System Overview\n", + "\n", + "The prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting a specific type of issue:\n", + "\n", + "1. **Dev-Contradiction-Checker**: Scans the prompt for logical contradictions or impossible instructions, like \"only use positive numbers\" and \"include negative examples\" in the same prompt.\n", + "\n", + "2. **Format-Checker**: Identifies when a prompt expects structured output (like JSON, CSV, or Markdown) but fails to clearly specify the exact format requirements. This agent ensures that all necessary fields, data types, and formatting rules are explicitly defined.\n", + "\n", + "3. **Few-Shot-Consistency-Checker**: Examines example conversations to ensure that the assistant's responses actually follow the rules specified in the prompt. This catches mismatches between what the prompt requires and what the examples demonstrate.\n", + "\n", + "4. **Dev-Rewriter**: After issues are identified, this agent rewrites the prompt to resolve contradictions and clarify format specifications while preserving the original intent.\n", + "\n", + "5. **Few-Shot-Rewriter**: Updates inconsistent example responses to align with the rules in the prompt, ensuring that all examples properly comply with the new developer prompt.\n", + "\n", + "By working together, these agents can systematically identify and fix issues in prompts." + ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], - "source": "# Import required modules\nfrom openai import AsyncOpenAI\nimport asyncio\nimport json\nimport os\nfrom enum import Enum\nfrom typing import Any, List, Dict\nfrom pydantic import BaseModel, Field\nfrom agents import Agent, Runner, set_default_openai_client\n\nopenai_client: AsyncOpenAI | None = None\n\ndef _get_openai_client() -> AsyncOpenAI:\n global openai_client\n if openai_client is None:\n openai_client = AsyncOpenAI(\n api_key=os.environ.get(\"OPENAI_API_KEY\", \"your-api-key\"),\n )\n return openai_client\n\nset_default_openai_client(_get_openai_client())" + "source": [ + "# Import required modules\n", + "from openai import AsyncOpenAI\n", + "import asyncio\n", + "import json\n", + "import os\n", + "from enum import Enum\n", + "from typing import Any, List, Dict\n", + "from pydantic import BaseModel, Field\n", + "from agents import Agent, Runner, set_default_openai_client\n", + "\n", + "openai_client: AsyncOpenAI | None = None\n", + "\n", + "def _get_openai_client() -> AsyncOpenAI:\n", + " global openai_client\n", + " if openai_client is None:\n", + " openai_client = AsyncOpenAI(\n", + " api_key=os.environ.get(\"OPENAI_API_KEY\", \"your-api-key\"),\n", + " )\n", + " return openai_client\n", + "\n", + "set_default_openai_client(_get_openai_client())" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "## 2. Data Models\n\nTo facilitate structured communication between agents, the system uses Pydantic models to define the expected format for inputs and outputs. These models help validate data and ensure consistency throughout the optimization process.\n\nThe data models include:\n\n1. **Role** - An enumeration for message roles (user/assistant)\n2. **ChatMessage** - Represents a single message in a conversation\n3. **Issues** - Base model for reporting detected issues\n4. **FewShotIssues** - Extended model that adds rewrite suggestions for example messages\n5. **MessagesOutput** - Contains optimized conversation messages\n6. **DevRewriteOutput** - Contains the improved developer prompt\n\nThese models create a structured pipeline for analyzing prompts, detecting issues, and producing improved versions. Using Pydantic allows the system to validate that all data conforms to the expected format at each step of the process." + "source": [ + "## 2. Data Models\n", + "\n", + "To facilitate structured communication between agents, the system uses Pydantic models to define the expected format for inputs and outputs. These Pydantic models help validate data and ensure consistency throughout the workflow.\n", + "\n", + "The data models include:\n", + "\n", + "1. **Role** - An enumeration for message roles (user/assistant)\n", + "2. **ChatMessage** - Represents a single message in a conversation\n", + "3. **Issues** - Base model for reporting detected issues\n", + "4. **FewShotIssues** - Extended model that adds rewrite suggestions for example messages\n", + "5. **MessagesOutput** - Contains optimized conversation messages\n", + "6. **DevRewriteOutput** - Contains the improved developer prompt\n", + "\n", + "Using Pydantic allows the system to validate that all data conforms to the expected format at each step of the process." + ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], - "source": "class Role(str, Enum):\n \"\"\"Role enum for chat messages.\"\"\"\n user = \"user\"\n assistant = \"assistant\"\n\nclass ChatMessage(BaseModel):\n \"\"\"Single chat message used in few-shot examples.\"\"\"\n role: Role\n content: str\n\nclass Issues(BaseModel):\n \"\"\"Structured output returned by checkers.\"\"\"\n has_issues: bool\n issues: List[str]\n \n @classmethod\n def no_issues(cls) -> \"Issues\":\n return cls(has_issues=False, issues=[])\n\nclass FewShotIssues(Issues):\n \"\"\"Output for few-shot contradiction detector including optional rewrite suggestions.\"\"\"\n rewrite_suggestions: List[str] = Field(default_factory=list)\n \n @classmethod\n def no_issues(cls) -> \"FewShotIssues\":\n return cls(has_issues=False, issues=[], rewrite_suggestions=[])\n\nclass MessagesOutput(BaseModel):\n \"\"\"Structured output returned by `rewrite_messages_agent`.\"\"\"\n\n messages: list[ChatMessage]\n\n\nclass DevRewriteOutput(BaseModel):\n \"\"\"Rewriter returns the cleaned-up developer prompt.\"\"\"\n\n new_developer_message: str" + "source": [ + "class Role(str, Enum):\n", + " \"\"\"Role enum for chat messages.\"\"\"\n", + " user = \"user\"\n", + " assistant = \"assistant\"\n", + "\n", + "class ChatMessage(BaseModel):\n", + " \"\"\"Single chat message used in few-shot examples.\"\"\"\n", + " role: Role\n", + " content: str\n", + "\n", + "class Issues(BaseModel):\n", + " \"\"\"Structured output returned by checkers.\"\"\"\n", + " has_issues: bool\n", + " issues: List[str]\n", + " \n", + " @classmethod\n", + " def no_issues(cls) -> \"Issues\":\n", + " return cls(has_issues=False, issues=[])\n", + "\n", + "class FewShotIssues(Issues):\n", + " \"\"\"Output for few-shot contradiction detector including optional rewrite suggestions.\"\"\"\n", + " rewrite_suggestions: List[str] = Field(default_factory=list)\n", + " \n", + " @classmethod\n", + " def no_issues(cls) -> \"FewShotIssues\":\n", + " return cls(has_issues=False, issues=[], rewrite_suggestions=[])\n", + "\n", + "class MessagesOutput(BaseModel):\n", + " \"\"\"Structured output returned by `rewrite_messages_agent`.\"\"\"\n", + "\n", + " messages: list[ChatMessage]\n", + "\n", + "\n", + "class DevRewriteOutput(BaseModel):\n", + " \"\"\"Rewriter returns the cleaned-up developer prompt.\"\"\"\n", + "\n", + " new_developer_message: str" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "## 3. Defining the Agents\n\nIn this section, we create the specialized AI agents that will analyze and improve prompts. Each agent is defined with a specific role, instructions, and output format. The `Agent` class is imported from the `openai-agents` package and provides a standardized way to create and run these specialized agents.\n\nThe agents are:\n\n1. **dev_contradiction_checker** - Finds logical contradictions within the prompt\n2. **format_checker** - Detects unclear or missing format specifications\n3. **fewshot_consistency_checker** - Identifies mismatches between the prompt and examples\n4. **dev_rewriter** - Rewrites the prompt to fix contradictions and format issues\n5. **fewshot_rewriter** - Updates example responses to match prompt requirements\n\nEach agent has carefully crafted instructions that guide its analysis. The instructions specify what to look for, what to ignore, and how to format the output. This level of specificity ensures that the agents work together effectively while focusing on their specific responsibilities." + "source": [ + "## 3. Defining the Agents\n", + "\n", + "In this section, we create specialized AI agents using the `Agent` class from the `openai-agents` package. Looking at these agent definitions reveals several best practices for creating effective AI instructions:\n", + "\n", + "### Best Practices in Agent Instructions\n", + "\n", + "1. **Clear Scope Definition**: Each agent has a narrowly defined purpose with explicit boundaries. For example, the contradiction checker focuses only on \"genuine self-contradictions\" and explicitly states that \"overlaps or redundancies are not contradictions.\"\n", + "\n", + "2. **Step-by-Step Process**: Instructions provide a clear methodology, like how the format checker first categorizes the task before analyzing format requirements.\n", + "\n", + "3. **Explicit Definitions**: Key terms are defined precisely to avoid ambiguity. The few-shot consistency checker includes a detailed \"Compliance Rubric\" explaining exactly what constitutes compliance.\n", + "\n", + "4. **Boundary Setting**: Instructions specify what the agent should NOT do. The few-shot checker explicitly lists what's \"Out-of-scope\" to prevent over-flagging issues.\n", + "\n", + "5. **Structured Output Requirements**: Each agent has a strictly defined output format with examples, ensuring consistency in the optimization pipeline.\n", + "\n", + "These principles create reliable, focused agents that work effectively together in the optimization system. Below we see the complete agent definitions with their detailed instructions." + ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, "outputs": [], - "source": "dev_contradiction_checker = Agent(\n name=\"contradiction_detector\",\n model=\"gpt-4.1\",\n output_type=Issues,\n instructions=\"\"\"\n You are **Dev-Contradiction-Checker-v2**.\n\n Goal\n Detect *genuine* self-contradictions or impossibilities **inside** the developer prompt supplied in the variable `DEVELOPER_MESSAGE`.\n\n Definitions\n • A contradiction = two clauses that cannot both be followed.\n • Overlaps or redundancies in the DEVELOPER_MESSAGE are *not* contradictions.\n\n What you MUST do\n 1. Compare every imperative / prohibition against all others.\n 2. List at most FIVE contradictions (each as ONE bullet).\n 3. If no contradiction exists, say so.\n\n Output format (**strict JSON**)\n Return **only** an object that matches the `Issues` schema:\n\n ```json\n {\"has_issues\": ,\n \"issues\": [\n \"\",\n \"\"\n ]\n }\n - has_issues = true IFF the issues array is non-empty.\n - Do not add extra keys, comments or markdown.\n\"\"\",\n)\nformat_checker = Agent(\n name=\"format_checker\",\n model=\"gpt-4.1\",\n output_type=Issues,\n instructions=\"\"\"\n You are Format-Checker-v2.\n\n Task\n Decide whether the developer prompt requires a structured output (JSON/CSV/XML/Markdown table, etc.).\n If so, flag any missing or unclear aspects of that format.\n\n Steps\n Categorise the task as:\n a. \"conversation_only\", or\n b. \"structured_output_required\".\n\n For case (b):\n - Point out absent fields, ambiguous data types, unspecified ordering, or missing error-handling.\n\n Do NOT invent issues if unsure. be a little bit more conservative in flagging format issues\n\n Output format\n Return strictly-valid JSON following the Issues schema:\n\n {\n \"has_issues\": ,\n \"issues\": [\"\", \"...\"]\n }\n Maximum five issues. No extra keys or text.\n\"\"\",\n)\nfewshot_consistency_checker = Agent(\n name=\"fewshot_consistency_checker\",\n model=\"gpt-4.1\",\n output_type=FewShotIssues,\n instructions=\"\"\"\n You are FewShot-Consistency-Checker-v3.\n\n Goal\n Find conflicts between the DEVELOPER_MESSAGE rules and the accompanying **assistant** examples.\n\n USER_EXAMPLES: # context only\n ASSISTANT_EXAMPLES: # to be evaluated\n\n Method\n Extract key constraints from DEVELOPER_MESSAGE:\n - Tone / style\n - Forbidden or mandated content\n - Output format requirements\n\n Compliance Rubric - read carefully\n Evaluate only what the developer message makes explicit.\n\n Objective constraints you must check when present:\n - Required output type syntax (e.g., \"JSON object\", \"single sentence\", \"subject line\").\n - Hard limits (length ≤ N chars, language required to be English, forbidden words, etc.).\n - Mandatory tokens or fields the developer explicitly names.\n\n Out-of-scope (DO NOT FLAG):\n - Whether the reply \"sounds generic\", \"repeats the prompt\", or \"fully reflects the user's request\" - unless the developer text explicitly demands those qualities.\n - Creative style, marketing quality, or depth of content unless stated.\n - Minor stylistic choices (capitalisation, punctuation) that do not violate an explicit rule.\n\n Pass/Fail rule\n - If an assistant reply satisfies all objective constraints, it is compliant, even if you personally find it bland or loosely related.\n - Only record an issue when a concrete, quoted rule is broken.\n\n Empty assistant list ⇒ immediately return has_issues=false.\n\n For each assistant example:\n - USER_EXAMPLES are for context only; never use them to judge compliance.\n - Judge each assistant reply solely against the explicit constraints you extracted from the developer message.\n - If a reply breaks a specific, quoted rule, add a line explaining which rule it breaks.\n - Optionally, suggest a rewrite in one short sentence (add to rewrite_suggestions).\n - If you are uncertain, do not flag an issue.\n - Be conservative—uncertain or ambiguous cases are not issues.\n\n be a little bit more conservative in flagging few shot contradiction issues\n Output format\n Return JSON matching FewShotIssues:\n\n {\n \"has_issues\": ,\n \"issues\": [\"\", \"...\"],\n \"rewrite_suggestions\": [\"\", \"...\"] // may be []\n }\n List max five items for both arrays.\n Provide empty arrays when none.\n No markdown, no extra keys.\n \"\"\",\n)\ndev_rewriter = Agent(\n name=\"dev_rewriter\",\n model=\"gpt-4.1\",\n output_type=DevRewriteOutput,\n instructions=\"\"\"\n You are Dev-Rewriter-v2.\n\n You receive:\n - ORIGINAL_DEVELOPER_MESSAGE\n - CONTRADICTION_ISSUES (may be empty)\n - FORMAT_ISSUES (may be empty)\n\n Rewrite rules\n Preserve the original intent and capabilities.\n\n Resolve each contradiction:\n - Keep the clause that preserves the message intent; remove/merge the conflicting one.\n\n If FORMAT_ISSUES is non-empty:\n - Append a new section titled ## Output Format that clearly defines the schema or gives an explicit example.\n\n Do NOT change few-shot examples.\n\n Do NOT add new policies or scope.\n\n Output format (strict JSON)\n {\n \"new_developer_message\": \"\"\n }\n No other keys, no markdown.\n\"\"\",\n)\nfewshot_rewriter = Agent(\n name=\"fewshot_rewriter\",\n model=\"gpt-4.1\",\n output_type=MessagesOutput,\n instructions=\"\"\"\n You are FewShot-Rewriter-v2.\n\n Input payload\n - NEW_DEVELOPER_MESSAGE (already optimized)\n - ORIGINAL_MESSAGES (list of user/assistant dicts)\n - FEW_SHOT_ISSUES (non-empty)\n\n Task\n Regenerate only the assistant parts that were flagged.\n User messages must remain identical.\n Every regenerated assistant reply MUST comply with NEW_DEVELOPER_MESSAGE.\n\n After regenerating each assistant reply, verify:\n - It matches NEW_DEVELOPER_MESSAGE. ENSURE THAT THIS IS TRUE.\n\n Output format\n Return strict JSON that matches the MessagesOutput schema:\n\n {\n \"messages\": [\n {\"role\": \"user\", \"content\": \"...\"},\n {\"role\": \"assistant\", \"content\": \"...\"}\n ]\n }\n Guidelines\n - Preserve original ordering and total count.\n - If a message was unproblematic, copy it unchanged.\n \"\"\",\n)" + "source": [ + "dev_contradiction_checker = Agent(\n", + " name=\"contradiction_detector\",\n", + " model=\"gpt-4.1\",\n", + " output_type=Issues,\n", + " instructions=\"\"\"\n", + " You are **Dev-Contradiction-Checker-v2**.\n", + "\n", + " Goal\n", + " Detect *genuine* self-contradictions or impossibilities **inside** the developer prompt supplied in the variable `DEVELOPER_MESSAGE`.\n", + "\n", + " Definitions\n", + " • A contradiction = two clauses that cannot both be followed.\n", + " • Overlaps or redundancies in the DEVELOPER_MESSAGE are *not* contradictions.\n", + "\n", + " What you MUST do\n", + " 1. Compare every imperative / prohibition against all others.\n", + " 2. List at most FIVE contradictions (each as ONE bullet).\n", + " 3. If no contradiction exists, say so.\n", + "\n", + " Output format (**strict JSON**)\n", + " Return **only** an object that matches the `Issues` schema:\n", + "\n", + " ```json\n", + " {\"has_issues\": ,\n", + " \"issues\": [\n", + " \"\",\n", + " \"\"\n", + " ]\n", + " }\n", + " - has_issues = true IFF the issues array is non-empty.\n", + " - Do not add extra keys, comments or markdown.\n", + "\"\"\",\n", + ")\n", + "format_checker = Agent(\n", + " name=\"format_checker\",\n", + " model=\"gpt-4.1\",\n", + " output_type=Issues,\n", + " instructions=\"\"\"\n", + " You are Format-Checker-v2.\n", + "\n", + " Task\n", + " Decide whether the developer prompt requires a structured output (JSON/CSV/XML/Markdown table, etc.).\n", + " If so, flag any missing or unclear aspects of that format.\n", + "\n", + " Steps\n", + " Categorise the task as:\n", + " a. \"conversation_only\", or\n", + " b. \"structured_output_required\".\n", + "\n", + " For case (b):\n", + " - Point out absent fields, ambiguous data types, unspecified ordering, or missing error-handling.\n", + "\n", + " Do NOT invent issues if unsure. be a little bit more conservative in flagging format issues\n", + "\n", + " Output format\n", + " Return strictly-valid JSON following the Issues schema:\n", + "\n", + " {\n", + " \"has_issues\": ,\n", + " \"issues\": [\"\", \"...\"]\n", + " }\n", + " Maximum five issues. No extra keys or text.\n", + "\"\"\",\n", + ")\n", + "fewshot_consistency_checker = Agent(\n", + " name=\"fewshot_consistency_checker\",\n", + " model=\"gpt-4.1\",\n", + " output_type=FewShotIssues,\n", + " instructions=\"\"\"\n", + " You are FewShot-Consistency-Checker-v3.\n", + "\n", + " Goal\n", + " Find conflicts between the DEVELOPER_MESSAGE rules and the accompanying **assistant** examples.\n", + "\n", + " USER_EXAMPLES: # context only\n", + " ASSISTANT_EXAMPLES: # to be evaluated\n", + "\n", + " Method\n", + " Extract key constraints from DEVELOPER_MESSAGE:\n", + " - Tone / style\n", + " - Forbidden or mandated content\n", + " - Output format requirements\n", + "\n", + " Compliance Rubric - read carefully\n", + " Evaluate only what the developer message makes explicit.\n", + "\n", + " Objective constraints you must check when present:\n", + " - Required output type syntax (e.g., \"JSON object\", \"single sentence\", \"subject line\").\n", + " - Hard limits (length ≤ N chars, language required to be English, forbidden words, etc.).\n", + " - Mandatory tokens or fields the developer explicitly names.\n", + "\n", + " Out-of-scope (DO NOT FLAG):\n", + " - Whether the reply \"sounds generic\", \"repeats the prompt\", or \"fully reflects the user's request\" - unless the developer text explicitly demands those qualities.\n", + " - Creative style, marketing quality, or depth of content unless stated.\n", + " - Minor stylistic choices (capitalisation, punctuation) that do not violate an explicit rule.\n", + "\n", + " Pass/Fail rule\n", + " - If an assistant reply satisfies all objective constraints, it is compliant, even if you personally find it bland or loosely related.\n", + " - Only record an issue when a concrete, quoted rule is broken.\n", + "\n", + " Empty assistant list ⇒ immediately return has_issues=false.\n", + "\n", + " For each assistant example:\n", + " - USER_EXAMPLES are for context only; never use them to judge compliance.\n", + " - Judge each assistant reply solely against the explicit constraints you extracted from the developer message.\n", + " - If a reply breaks a specific, quoted rule, add a line explaining which rule it breaks.\n", + " - Optionally, suggest a rewrite in one short sentence (add to rewrite_suggestions).\n", + " - If you are uncertain, do not flag an issue.\n", + " - Be conservative—uncertain or ambiguous cases are not issues.\n", + "\n", + " be a little bit more conservative in flagging few shot contradiction issues\n", + " Output format\n", + " Return JSON matching FewShotIssues:\n", + "\n", + " {\n", + " \"has_issues\": ,\n", + " \"issues\": [\"\", \"...\"],\n", + " \"rewrite_suggestions\": [\"\", \"...\"] // may be []\n", + " }\n", + " List max five items for both arrays.\n", + " Provide empty arrays when none.\n", + " No markdown, no extra keys.\n", + " \"\"\",\n", + ")\n", + "dev_rewriter = Agent(\n", + " name=\"dev_rewriter\",\n", + " model=\"gpt-4.1\",\n", + " output_type=DevRewriteOutput,\n", + " instructions=\"\"\"\n", + " You are Dev-Rewriter-v2.\n", + "\n", + " You receive:\n", + " - ORIGINAL_DEVELOPER_MESSAGE\n", + " - CONTRADICTION_ISSUES (may be empty)\n", + " - FORMAT_ISSUES (may be empty)\n", + "\n", + " Rewrite rules\n", + " Preserve the original intent and capabilities.\n", + "\n", + " Resolve each contradiction:\n", + " - Keep the clause that preserves the message intent; remove/merge the conflicting one.\n", + "\n", + " If FORMAT_ISSUES is non-empty:\n", + " - Append a new section titled ## Output Format that clearly defines the schema or gives an explicit example.\n", + "\n", + " Do NOT change few-shot examples.\n", + "\n", + " Do NOT add new policies or scope.\n", + "\n", + " Output format (strict JSON)\n", + " {\n", + " \"new_developer_message\": \"\"\n", + " }\n", + " No other keys, no markdown.\n", + "\"\"\",\n", + ")\n", + "fewshot_rewriter = Agent(\n", + " name=\"fewshot_rewriter\",\n", + " model=\"gpt-4.1\",\n", + " output_type=MessagesOutput,\n", + " instructions=\"\"\"\n", + " You are FewShot-Rewriter-v2.\n", + "\n", + " Input payload\n", + " - NEW_DEVELOPER_MESSAGE (already optimized)\n", + " - ORIGINAL_MESSAGES (list of user/assistant dicts)\n", + " - FEW_SHOT_ISSUES (non-empty)\n", + "\n", + " Task\n", + " Regenerate only the assistant parts that were flagged.\n", + " User messages must remain identical.\n", + " Every regenerated assistant reply MUST comply with NEW_DEVELOPER_MESSAGE.\n", + "\n", + " After regenerating each assistant reply, verify:\n", + " - It matches NEW_DEVELOPER_MESSAGE. ENSURE THAT THIS IS TRUE.\n", + "\n", + " Output format\n", + " Return strict JSON that matches the MessagesOutput schema:\n", + "\n", + " {\n", + " \"messages\": [\n", + " {\"role\": \"user\", \"content\": \"...\"},\n", + " {\"role\": \"assistant\", \"content\": \"...\"}\n", + " ]\n", + " }\n", + " Guidelines\n", + " - Preserve original ordering and total count.\n", + " - If a message was unproblematic, copy it unchanged.\n", + " \"\"\",\n", + ")" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "## 4.Run Optimization Workflow\n\nNow that we've defined our agents and data models, let's examine how they work together to optimize prompts. The optimization workflow consists of several stages that run in parallel to efficiently analyze and improve prompts." - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": "The following function implements the core workflow for prompt optimization. The process follows these steps:\n\n1. **Parallel Analysis**: The function first runs the contradiction checker, format checker, and few-shot consistency checker in parallel (if examples are provided).\n\n2. **Issue Collection**: Results from all checkers are collected and organized.\n\n3. **Conditional Rewriting**: \n - If contradiction or format issues are found, the prompt is rewritten using the dev_rewriter agent\n - If few-shot inconsistencies are found, the example responses are updated using the fewshot_rewriter agent\n\n4. **Results Compilation**: The function returns a comprehensive result including the improved prompt, updated examples (if any), and details about the issues that were fixed.\n\nThis parallel approach makes the optimization process efficient, even when working with complex prompts and multiple examples." + "source": [ + "## 4.Run Optimization Workflow\n", + "\n", + "Let's dive into how the optimization system actually works. The core workflow consists of multiple runs of the agents in parallel to efficiently process and optimize prompts." + ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], - "source": "def _normalize_messages(messages: List[Any]) -> List[Dict[str, str]]:\n \"\"\"Convert list of pydantic message models to JSON-serializable dicts.\"\"\"\n result = []\n for m in messages:\n if hasattr(m, \"model_dump\"):\n result.append(m.model_dump())\n elif isinstance(m, dict) and \"role\" in m and \"content\" in m:\n result.append({\"role\": str(m[\"role\"]), \"content\": str(m[\"content\"])})\n return result\n\nasync def optimize_prompt_parallel(\n developer_message: str,\n messages: List[\"ChatMessage\"],\n) -> Dict[str, Any]:\n \"\"\"\n Runs contradiction, format, and few-shot checkers in parallel,\n then rewrites the prompt/examples if needed.\n Returns a unified dict suitable for an API or endpoint.\n \"\"\"\n\n # 1. Run all checkers in parallel (contradiction, format, fewshot if there are examples)\n tasks = [\n Runner.run(dev_contradiction_checker, developer_message),\n Runner.run(format_checker, developer_message),\n ]\n if messages:\n fs_input = {\n \"DEVELOPER_MESSAGE\": developer_message,\n \"USER_EXAMPLES\": [m.content for m in messages if m.role == \"user\"],\n \"ASSISTANT_EXAMPLES\": [m.content for m in messages if m.role == \"assistant\"],\n }\n tasks.append(Runner.run(fewshot_consistency_checker, json.dumps(fs_input)))\n\n results = await asyncio.gather(*tasks)\n\n # Unpack results\n cd_issues: Issues = results[0].final_output\n fi_issues: Issues = results[1].final_output\n fs_issues: FewShotIssues = results[2].final_output if messages else FewShotIssues.no_issues()\n\n # 3. Rewrites as needed\n final_prompt = developer_message\n if cd_issues.has_issues or fi_issues.has_issues:\n pr_input = {\n \"ORIGINAL_DEVELOPER_MESSAGE\": developer_message,\n \"CONTRADICTION_ISSUES\": cd_issues.model_dump(),\n \"FORMAT_ISSUES\": fi_issues.model_dump(),\n }\n pr_res = await Runner.run(dev_rewriter, json.dumps(pr_input))\n final_prompt = pr_res.final_output.new_developer_message\n\n final_messages: Union[List[\"ChatMessage\"], List[Dict[str, str]]] = messages\n if fs_issues.has_issues:\n mr_input = {\n \"NEW_DEVELOPER_MESSAGE\": final_prompt,\n \"ORIGINAL_MESSAGES\": _normalize_messages(messages),\n \"FEW_SHOT_ISSUES\": fs_issues.model_dump(),\n }\n mr_res = await Runner.run(fewshot_rewriter, json.dumps(mr_input))\n final_messages = mr_res.final_output.messages\n\n return {\n \"changes\": True,\n \"new_developer_message\": final_prompt,\n \"new_messages\": _normalize_messages(final_messages),\n \"contradiction_issues\": \"\\n\".join(cd_issues.issues),\n \"few_shot_contradiction_issues\": \"\\n\".join(fs_issues.issues),\n \"format_issues\": \"\\n\".join(fi_issues.issues),\n \"general_improvements\": \"\",\n }" + "source": [ + "def _normalize_messages(messages: List[Any]) -> List[Dict[str, str]]:\n", + " \"\"\"Convert list of pydantic message models to JSON-serializable dicts.\"\"\"\n", + " result = []\n", + " for m in messages:\n", + " if hasattr(m, \"model_dump\"):\n", + " result.append(m.model_dump())\n", + " elif isinstance(m, dict) and \"role\" in m and \"content\" in m:\n", + " result.append({\"role\": str(m[\"role\"]), \"content\": str(m[\"content\"])})\n", + " return result\n", + "\n", + "async def optimize_prompt_parallel(\n", + " developer_message: str,\n", + " messages: List[\"ChatMessage\"],\n", + ") -> Dict[str, Any]:\n", + " \"\"\"\n", + " Runs contradiction, format, and few-shot checkers in parallel,\n", + " then rewrites the prompt/examples if needed.\n", + " Returns a unified dict suitable for an API or endpoint.\n", + " \"\"\"\n", + "\n", + " # 1. Run all checkers in parallel (contradiction, format, fewshot if there are examples)\n", + " tasks = [\n", + " Runner.run(dev_contradiction_checker, developer_message),\n", + " Runner.run(format_checker, developer_message),\n", + " ]\n", + " if messages:\n", + " fs_input = {\n", + " \"DEVELOPER_MESSAGE\": developer_message,\n", + " \"USER_EXAMPLES\": [m.content for m in messages if m.role == \"user\"],\n", + " \"ASSISTANT_EXAMPLES\": [m.content for m in messages if m.role == \"assistant\"],\n", + " }\n", + " tasks.append(Runner.run(fewshot_consistency_checker, json.dumps(fs_input)))\n", + "\n", + " results = await asyncio.gather(*tasks)\n", + "\n", + " # Unpack results\n", + " cd_issues: Issues = results[0].final_output\n", + " fi_issues: Issues = results[1].final_output\n", + " fs_issues: FewShotIssues = results[2].final_output if messages else FewShotIssues.no_issues()\n", + "\n", + " # 3. Rewrites as needed\n", + " final_prompt = developer_message\n", + " if cd_issues.has_issues or fi_issues.has_issues:\n", + " pr_input = {\n", + " \"ORIGINAL_DEVELOPER_MESSAGE\": developer_message,\n", + " \"CONTRADICTION_ISSUES\": cd_issues.model_dump(),\n", + " \"FORMAT_ISSUES\": fi_issues.model_dump(),\n", + " }\n", + " pr_res = await Runner.run(dev_rewriter, json.dumps(pr_input))\n", + " final_prompt = pr_res.final_output.new_developer_message\n", + "\n", + " final_messages: Union[List[\"ChatMessage\"], List[Dict[str, str]]] = messages\n", + " if fs_issues.has_issues:\n", + " mr_input = {\n", + " \"NEW_DEVELOPER_MESSAGE\": final_prompt,\n", + " \"ORIGINAL_MESSAGES\": _normalize_messages(messages),\n", + " \"FEW_SHOT_ISSUES\": fs_issues.model_dump(),\n", + " }\n", + " mr_res = await Runner.run(fewshot_rewriter, json.dumps(mr_input))\n", + " final_messages = mr_res.final_output.messages\n", + "\n", + " return {\n", + " \"changes\": True,\n", + " \"new_developer_message\": final_prompt,\n", + " \"new_messages\": _normalize_messages(final_messages),\n", + " \"contradiction_issues\": \"\\n\".join(cd_issues.issues),\n", + " \"few_shot_contradiction_issues\": \"\\n\".join(fs_issues.issues),\n", + " \"format_issues\": \"\\n\".join(fi_issues.issues),\n", + " }" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "## 5. Examples\n\nLet's explore several practical examples to see how the prompt optimization system works in real-world scenarios. These examples demonstrate the system's ability to identify and fix different types of issues in prompts:" + "source": [ + "### Understanding the Optimization Workflow\n", + "\n", + "The `optimize_prompt_parallel` function implements a workflow to maximize efficiency through parallelization:\n", + "\n", + "1. **Parallel Issue Detection**: The first phase runs all checker agents simultaneously:\n", + " - `dev_contradiction_checker` searches for logical contradictions in the prompt\n", + " - `format_checker` looks for unclear format specifications\n", + " - `fewshot_consistency_checker` (if examples exist) checks for mismatches between the prompt and examples\n", + "\n", + "Then after parallel checking phase, the workflow handles dependencies carefully:\n", + "\n", + "2. **Prompt Rewriting (Conditional)**: The `dev_rewriter` agent only runs if contradiction or format issues were detected. This agent depends on the outputs from:\n", + " - `dev_contradiction_checker` (the `cd_issues` variable)\n", + " - `format_checker` (the `fi_issues` variable)\n", + "\n", + "3. **Example Rewriting (Conditional)**: The `fewshot_rewriter` agent only runs if example inconsistencies were detected. This agent depends on:\n", + " - The rewritten prompt (must be done after prompt rewriting)\n", + " - The original messages\n", + " - The few-shot issues (the `fs_issues` variable)\n" + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "### Example 1: Fixing Contradictions\n\nOur first example demonstrates how the system identifies and resolves contradictions in a prompt. This prompt contains instructions for parsing e-commerce product details from HTML, but it has contradictory rules for handling missing fields." + "source": [ + "## 5. Examples\n", + "\n", + "Let's see the optimization system in action with some practical examples." + ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], - "source": "async def example_contradiction():\n # A prompt with contradictory instructions\n prompt = \"\"\"Quick-Start Card — Product Parser\n\nGoal \nDigest raw HTML of an e-commerce product detail page and emit **concise, minified JSON** describing the item.\n\n**Required fields:** \nname | brand | sku | price.value | price.currency | images[] | sizes[] | materials[] | care_instructions | features[]\n\n**Extraction priority:** \n1. schema.org/JSON-LD blocks \n2. & microdata tags \n3. Visible DOM fallback (class hints: \"product-name\", \"price\")\n\n** Rules:** \n- If *any* required field is missing, short-circuit with: `{\"error\": \"FIELD_MISSING:\"}`.\n- Prices: Numeric with dot decimal; strip non-digits (e.g., \"1.299,00 EUR\" → 1299.00 + \"EUR\").\n- Deduplicate images differing only by query string. Keep ≤10 best-res.\n- Sizes: Ensure unit tag (\"EU\", \"US\") and ascending sort.\n- Materials: Title-case and collapse synonyms (e.g., \"polyester 100%\" → \"Polyester\").\n\n**Sample skeleton (minified):**\n```json\n{\"name\":\"\",\"brand\":\"\",\"sku\":\"\",\"price\":{\"value\":0,\"currency\":\"USD\"},\"images\":[\"\"],\"sizes\":[],\"materials\":[],\"care_instructions\":\"\",\"features\":[]}\nNote: It is acceptable to output null for any missing field instead of an error ###\"\"\"\n \n result = await optimize_prompt_parallel(prompt, [])\n \n # Display the results\n if result[\"contradiction_issues\"]:\n print(\"Contradiction issues:\")\n print(result[\"contradiction_issues\"])\n print()\n \n print(\"Optimized prompt:\")\n print(result[\"new_developer_message\"])\n \n# Run the example\nawait example_contradiction()" + "source": [ + "### Example 1: Fixing Contradictions" + ] }, { - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 28, "metadata": {}, - "source": "### Example 2: Fixing Inconsistencies Between Prompt and Few-Shot Examples\n\nOur second example shows how the system detects and fixes inconsistencies between a prompt and its accompanying examples. In this case, the prompt requires responses to be in JSON format, but one of the examples doesn't follow this requirement." + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Contradiction issues:\n", + "There is a contradiction between the rule that says to short-circuit and output an error if *any* required field is missing ('{\"error\": \"FIELD_MISSING:\"}') and the final note which states that it is acceptable to output null for any missing field instead of an error. Both behaviors cannot be followed simultaneously when a required field is missing.\n", + "\n", + "Optimized prompt:\n", + "Quick-Start Card — Product Parser\n", + "\n", + "Goal \n", + "Digest raw HTML of an e-commerce product detail page and emit **concise, minified JSON** describing the item.\n", + "\n", + "**Required fields:** \n", + "name | brand | sku | price.value | price.currency | images[] | sizes[] | materials[] | care_instructions | features[]\n", + "\n", + "**Extraction priority:** \n", + "1. schema.org/JSON-LD blocks \n", + "2. & microdata tags \n", + "3. Visible DOM fallback (class hints: \"product-name\", \"price\")\n", + "\n", + "**Rules:** \n", + "- If *any* required field is missing, short-circuit and output: `{\"error\": \"FIELD_MISSING:\"}`\n", + "- Prices: Numeric with dot decimal; strip non-digits (e.g., \"1.299,00 EUR\" → 1299.00 + \"EUR\").\n", + "- Deduplicate images differing only by query string. Keep ≤10 best-res.\n", + "- Sizes: Ensure unit tag (\"EU\", \"US\") and ascending sort.\n", + "- Materials: Title-case and collapse synonyms (e.g., \"polyester 100%\" → \"Polyester\").\n", + "\n", + "## Output Format\n", + "\n", + "- Successful Output: Emit a minified JSON object with the following fields and types (order not enforced):\n", + " - name: string\n", + " - brand: string\n", + " - sku: string\n", + " - price: object with:\n", + " - value: number\n", + " - currency: string\n", + " - images: array of string URLs\n", + " - sizes: array of strings (each including a unit tag, e.g., \"37 EU\")\n", + " - materials: array of strings\n", + " - care_instructions: string\n", + " - features: array of strings\n", + "\n", + "Example:\n", + "{\"name\":\"Product Name\",\"brand\":\"Brand\",\"sku\":\"SKU123\",\"price\":{\"value\":1299.00,\"currency\":\"EUR\"},\"images\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"sizes\":[\"37 EU\",\"38 EU\"],\"materials\":[\"Cotton\",\"Polyester\"],\"care_instructions\":\"Machine wash cold\",\"features\":[\"Feature 1\",\"Feature 2\"]}\n", + "\n", + "- If any required field is missing, return:\n", + " {\"error\": \"FIELD_MISSING:\"}\n", + " (Where is the missing required field name.)\n" + ] + } + ], + "source": [ + "async def example_contradiction():\n", + " # A prompt with contradictory instructions\n", + " prompt = \"\"\"Quick-Start Card — Product Parser\n", + "\n", + "Goal \n", + "Digest raw HTML of an e-commerce product detail page and emit **concise, minified JSON** describing the item.\n", + "\n", + "**Required fields:** \n", + "name | brand | sku | price.value | price.currency | images[] | sizes[] | materials[] | care_instructions | features[]\n", + "\n", + "**Extraction priority:** \n", + "1. schema.org/JSON-LD blocks \n", + "2. & microdata tags \n", + "3. Visible DOM fallback (class hints: \"product-name\", \"price\")\n", + "\n", + "** Rules:** \n", + "- If *any* required field is missing, short-circuit with: `{\"error\": \"FIELD_MISSING:\"}`.\n", + "- Prices: Numeric with dot decimal; strip non-digits (e.g., \"1.299,00 EUR\" → 1299.00 + \"EUR\").\n", + "- Deduplicate images differing only by query string. Keep ≤10 best-res.\n", + "- Sizes: Ensure unit tag (\"EU\", \"US\") and ascending sort.\n", + "- Materials: Title-case and collapse synonyms (e.g., \"polyester 100%\" → \"Polyester\").\n", + "\n", + "**Sample skeleton (minified):**\n", + "```json\n", + "{\"name\":\"\",\"brand\":\"\",\"sku\":\"\",\"price\":{\"value\":0,\"currency\":\"USD\"},\"images\":[\"\"],\"sizes\":[],\"materials\":[],\"care_instructions\":\"\",\"features\":[]}\n", + "Note: It is acceptable to output null for any missing field instead of an error ###\"\"\"\n", + " \n", + " result = await optimize_prompt_parallel(prompt, [])\n", + " \n", + " # Display the results\n", + " if result[\"contradiction_issues\"]:\n", + " print(\"Contradiction issues:\")\n", + " print(result[\"contradiction_issues\"])\n", + " print()\n", + " \n", + " print(\"Optimized prompt:\")\n", + " print(result[\"new_developer_message\"])\n", + " \n", + "# Run the example\n", + "await example_contradiction()" + ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], - "source": "async def example_fewshot_fix():\n prompt = \"Respond **only** with JSON using keys `city` (string) and `population` (integer).\"\n \n messages = [\n {\"role\": \"user\", \"content\": \"Largest US city?\"},\n {\"role\": \"assistant\", \"content\": \"New York City\"},\n {\"role\": \"user\", \"content\": \"Largest UK city?\"},\n {\"role\": \"assistant\", \"content\": \"{\\\"city\\\":\\\"London\\\",\\\"population\\\":9541000}\"}\n ]\n \n \n print(\"Few-shot examples before optimization:\")\n print(f\"User: {messages[0]['content']}\")\n print(f\"Assistant: {messages[1]['content']}\")\n print(f\"User: {messages[2]['content']}\")\n print(f\"Assistant: {messages[3]['content']}\")\n print()\n \n # Call the optimization API\n result = await optimize_prompt_parallel(prompt, [ChatMessage(**m) for m in messages])\n \n # Display the results\n if result[\"few_shot_contradiction_issues\"]:\n print(\"Inconsistency found:\", result[\"few_shot_contradiction_issues\"])\n print()\n \n # Show the optimized few-shot examples\n optimized_messages = result[\"new_messages\"]\n print(\"Few-shot examples after optimization:\")\n print(f\"User: {optimized_messages[0]['content']}\")\n print(f\"Assistant: {optimized_messages[1]['content']}\")\n print(f\"User: {optimized_messages[2]['content']}\")\n print(f\"Assistant: {optimized_messages[3]['content']}\")\n \n# Run the example\nawait example_fewshot_fix()" + "source": [ + "This demonstrates how the system can detect and resolve critical contradictions that could lead to inconsistent outputs or confusion for the AI model. " + ] }, { "cell_type": "markdown", "metadata": {}, - "source": "### Example 3: Clarifying Formats in a Longer Prompt\n\nOur final example shows how the system identifies and fixes unclear format specifications in a more complex prompt. This prompt asks for patent claim translation but doesn't clearly specify the required output format structure." + "source": [ + "### Example 2: Fixing Inconsistencies Between Prompt and Few-Shot Examples\n" + ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 29, "metadata": {}, - "outputs": [], - "source": "async def example_format_issue():\n # A prompt with unclear or inconsistent formatting instructions\n prompt = \"\"\"Task → Translate dense patent claims into 200-word lay summaries with a glossary.\n\nOperating Steps:\n1. Split the claim at semicolons, \"wherein\", or numbered sub-clauses.\n2. For each chunk:\n a) Identify its purpose.\n b) Replace technical nouns with everyday analogies.\n c) Keep quantitative limits intact (e.g., \"≥150 C\").\n3. Flag uncommon science terms with asterisks, and later define them.\n4. Re-assemble into a flowing paragraph; do **not** broaden or narrow the claim's scope.\n5. Omit boilerplate if its removal does not alter legal meaning.\n\nOutput should follow a Markdown template:\n- A summary section.\n- A glossary section with the marked terms and their definitions.\n\nCorner Cases:\n- If the claim is over 5 kB, respond with CLAIM_TOO_LARGE.\n- If claim text is already plain English, skip glossary and state no complex terms detected.\n\nRemember: You are *not* providing legal advice—this is for internal comprehension only.\"\"\"\n\n # Call the optimization API to check for format issues\n result = await optimize_prompt_parallel(prompt, [])\n\n # Display the results\n if result.get(\"format_issues\"):\n print(\"Format issues found:\", result[\"format_issues\"])\n print()\n\n print(\"Optimized prompt:\")\n print(result[\"new_developer_message\"])\n\n# Run the example\nawait example_format_issue()" + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Few-shot examples before optimization:\n", + "User: Largest US city?\n", + "Assistant: New York City\n", + "User: Largest UK city?\n", + "Assistant: {\"city\":\"London\",\"population\":9541000}\n", + "\n", + "Inconsistency found: The response 'New York City' does not use JSON format and is missing the required keys `city` and `population` as stated in the rule 'Respond **only** with JSON using keys `city` (string) and `population` (integer).'\n", + "\n", + "Few-shot examples after optimization:\n", + "User: Largest US city?\n", + "Assistant: {\"city\":\"New York City\",\"population\":8468000}\n", + "User: Largest UK city?\n", + "Assistant: {\"city\":\"London\",\"population\":9541000}\n" + ] + } + ], + "source": [ + "async def example_fewshot_fix():\n", + " prompt = \"Respond **only** with JSON using keys `city` (string) and `population` (integer).\"\n", + " \n", + " messages = [\n", + " {\"role\": \"user\", \"content\": \"Largest US city?\"},\n", + " {\"role\": \"assistant\", \"content\": \"New York City\"},\n", + " {\"role\": \"user\", \"content\": \"Largest UK city?\"},\n", + " {\"role\": \"assistant\", \"content\": \"{\\\"city\\\":\\\"London\\\",\\\"population\\\":9541000}\"}\n", + " ]\n", + " \n", + " \n", + " print(\"Few-shot examples before optimization:\")\n", + " print(f\"User: {messages[0]['content']}\")\n", + " print(f\"Assistant: {messages[1]['content']}\")\n", + " print(f\"User: {messages[2]['content']}\")\n", + " print(f\"Assistant: {messages[3]['content']}\")\n", + " print()\n", + " \n", + " # Call the optimization API\n", + " result = await optimize_prompt_parallel(prompt, [ChatMessage(**m) for m in messages])\n", + " \n", + " # Display the results\n", + " if result[\"few_shot_contradiction_issues\"]:\n", + " print(\"Inconsistency found:\", result[\"few_shot_contradiction_issues\"])\n", + " print()\n", + " \n", + " # Show the optimized few-shot examples\n", + " optimized_messages = result[\"new_messages\"]\n", + " print(\"Few-shot examples after optimization:\")\n", + " print(f\"User: {optimized_messages[0]['content']}\")\n", + " print(f\"Assistant: {optimized_messages[1]['content']}\")\n", + " print(f\"User: {optimized_messages[2]['content']}\")\n", + " print(f\"Assistant: {optimized_messages[3]['content']}\")\n", + " \n", + "# Run the example\n", + "await example_fewshot_fix()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This is particularly important because few-shot examples have a strong influence on how models respond. If examples don't follow the stated rules, the model may learn to ignore those rules in favor of mimicking the examples. By ensuring consistency between the prompt instructions and examples, the optimization system created a more reliable prompt." + ] }, { "cell_type": "markdown", - "source": "## 6. Conclusion and Best Practices\n\nThis notebook has demonstrated an early version of OpenAI's prompt optimization system, which uses specialized AI agents to automatically detect and fix common issues in prompts. The system focuses on three key areas:\n\n1. **Detecting contradictions**: Finding and resolving instructions that conflict with each other\n2. **Clarifying format specifications**: Ensuring that output format requirements are clear and comprehensive\n3. **Aligning examples with requirements**: Making sure that example responses match the rules in the prompt\n\nBy applying these optimizations, you can create more effective prompts that lead to more consistent, reliable results from AI models.\n\n### Best Practices for Prompt Engineering\n\nBased on the patterns and fixes we've seen in this notebook, here are some best practices to follow when creating prompts:\n\n1. **Check for contradictions**: Review your prompt carefully to ensure that your instructions don't contradict each other.\n\n2. **Be explicit about formats**: If you expect a specific output format, clearly define the structure, field requirements, and how to handle edge cases.\n\n3. **Provide consistent examples**: Ensure that your few-shot examples follow all the rules specified in your prompt.\n\n4. **Define key terms**: Clearly define any important terms, labels, or categories that might be ambiguous.\n\n5. **Specify error handling**: Provide clear instructions for how the model should handle edge cases or errors.\n\n6. **Organize with clear structure**: Use headings, bullet points, and numbering to make your prompt easy to follow.\n\nBy following these practices and using tools like the optimization system demonstrated in this notebook, you can create more effective prompts that lead to better results from AI models.", - "metadata": {} + "metadata": {}, + "source": [ + "### Example 3: Clarifying Formats in a Longer Prompt" + ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 30, "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Format issues found: Output must follow a precise Markdown template, but the expected structure (headers, formatting) for the summary and glossary sections is not fully specified.\n", + "Ambiguity if output should be a Markdown string or a structured object containing Markdown—data type of output is implicit.\n", + "No explicit ordering instruction for the summary and glossary sections—potentially ambiguous.\n", + "Word count limit (200 words) is mentioned for the summary but not for the glossary section—scope unclear.\n", + "No specific format for CLAIM_TOO_LARGE error or for indicating 'no complex terms'—should these be Markdown or plaintext?\n", + "\n", + "Optimized prompt:\n", + "Task → Translate dense patent claims into 200-word lay summaries with a glossary.\n", + "\n", + "Operating Steps:\n", + "1. Split the claim at semicolons, \"wherein\", or numbered sub-clauses.\n", + "2. For each chunk:\n", + " a) Identify its purpose.\n", + " b) Replace technical nouns with everyday analogies.\n", + " c) Keep quantitative limits intact (e.g., \">=150 C\").\n", + "3. Flag uncommon science terms with asterisks, and later define them.\n", + "4. Re-assemble into a flowing paragraph; do **not** broaden or narrow the claim’s scope.\n", + "5. Omit boilerplate if its removal does not alter legal meaning.\n", + "\n", + "## Output Format\n", + "- All outputs must be provided as a Markdown string.\n", + "- If the claim exceeds 5 kB, respond only with the text: `CLAIM_TOO_LARGE` (no Markdown formatting).\n", + "- If the claim is already in plain English, output the following Markdown:\n", + " \n", + " ```markdown\n", + " ## Summary\n", + " \n", + " \n", + " ## Glossary\n", + " No complex terms detected.\n", + " ```\n", + "- Otherwise, follow this Markdown template:\n", + " \n", + " ```markdown\n", + " ## Summary\n", + " \n", + " \n", + " ## Glossary\n", + " - *Term1*: Definition of Term1\n", + " - *Term2*: Definition of Term2\n", + " ...\n", + " ```\n", + "- The 'Summary' section comes before the 'Glossary' section in all cases.\n", + "- The word count limit (200 words) applies to the summary only; the glossary has no length limit.\n", + "\n", + "Remember: You are *not* providing legal advice—this is for internal comprehension only.\n" + ] + } + ], + "source": [ + "async def example_format_issue():\n", + " # A prompt with unclear or inconsistent formatting instructions\n", + " prompt = \"\"\"Task → Translate dense patent claims into 200-word lay summaries with a glossary.\n", + "\n", + "Operating Steps:\n", + "1. Split the claim at semicolons, \"wherein\", or numbered sub-clauses.\n", + "2. For each chunk:\n", + " a) Identify its purpose.\n", + " b) Replace technical nouns with everyday analogies.\n", + " c) Keep quantitative limits intact (e.g., \"≥150 C\").\n", + "3. Flag uncommon science terms with asterisks, and later define them.\n", + "4. Re-assemble into a flowing paragraph; do **not** broaden or narrow the claim’s scope.\n", + "5. Omit boilerplate if its removal does not alter legal meaning.\n", + "\n", + "Output should follow a Markdown template:\n", + "- A summary section.\n", + "- A glossary section with the marked terms and their definitions.\n", + "\n", + "Corner Cases:\n", + "- If the claim is over 5 kB, respond with CLAIM_TOO_LARGE.\n", + "- If claim text is already plain English, skip glossary and state no complex terms detected.\n", + "\n", + "Remember: You are *not* providing legal advice—this is for internal comprehension only.\"\"\"\n", + "\n", + " # Call the optimization API to check for format issues\n", + " result = await optimize_prompt_parallel(prompt, [])\n", + "\n", + " # Display the results\n", + " if result.get(\"format_issues\"):\n", + " print(\"Format issues found:\", result[\"format_issues\"])\n", + " print()\n", + "\n", + " print(\"Optimized prompt:\")\n", + " print(result[\"new_developer_message\"])\n", + "\n", + "# Run the example\n", + "await example_format_issue()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example highlights how the format checker identifies and resolves ambiguous format specifications. The prompt requested a Markdown output and the optimization flow significantly improved these format specifications." + ] } ], "metadata": { @@ -133,4 +815,4 @@ }, "nbformat": 4, "nbformat_minor": 4 -} \ No newline at end of file +} From c3893bb8c7627b85d186ab19102b636b98b76dbe Mon Sep 17 00:00:00 2001 From: Corwin Date: Wed, 9 Jul 2025 15:34:31 -0400 Subject: [PATCH 3/7] small edits --- examples/Optimize Prompts.ipynb | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index b52f0df50d..1004926536 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -11,26 +11,26 @@ "The optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n", "\n", "- **Contradictions** in the prompt instructions\n", - "- **Missing or unclear format specifications**\n", + "- Missing or unclear **format specifications**\n", "- **Inconsistencies** between the prompt and few-shot examples\n", "\n", "---\n", "\n", - "**Objective**: This notebook demonstrates best practices of creating a useful and robust agent system and can help you develop more effective prompts for your applications.\n", + "**Objective**: This notebook demonstrates best practices for creating a useful and robust agent system and can help you develop more effective prompts for your applications.\n", "\n", "**Cookbook Structure** \n", "This notebook follows this structure:\n", "\n", - "- [Step 1. System Overview](#1.-system-overview) - Learn how the prompt optimization system works \n", - "- [Step 2. Data Models](#2.-data-models) - Understand the data structures used by the system\n", - "- [Step 3. Defining the Agents](#3.-defining-the-agents) - Look at agents that analyze and improve prompts\n", - "- [Step 4. Run Optimization Workflow](#4.run-optimization-workflow) - See how the system processes prompts\n", - "- [Step 5. Examples](#5.-examples) - Explore real-world examples of prompt optimization\n", + "- [Step 1. System Overview](#1-system-overview) - Learn how the prompt optimization system works \n", + "- [Step 2. Data Models](#2-data-models) - Understand the data structures used by the system\n", + "- [Step 3. Defining the Agents](#3-defining-the-agents) - Look at agents that analyze and improve prompts\n", + "- [Step 4. Run Optimization Workflow](#4-run-optimization-workflow) - See how the workflow hands off the prompts\n", + "- [Step 5. Examples](#5-examples) - Explore real-world examples of prompt optimization\n", "\n", "**Prerequisites**\n", "- The `openai` Python package \n", "- The `openai-agents` package\n", - "- An OpenAI API key set as `OPENAI_API_KEY` environment variable" + "- An OpenAI API key set as `OPENAI_API_KEY` in your environment variables" ] }, { @@ -39,7 +39,7 @@ "source": [ "## 1. System Overview\n", "\n", - "The prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting a specific type of issue:\n", + "The prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting or rewriting a specific type of issue:\n", "\n", "1. **Dev-Contradiction-Checker**: Scans the prompt for logical contradictions or impossible instructions, like \"only use positive numbers\" and \"include negative examples\" in the same prompt.\n", "\n", @@ -373,7 +373,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 4.Run Optimization Workflow\n", + "## 4. Run Optimization Workflow\n", "\n", "Let's dive into how the optimization system actually works. The core workflow consists of multiple runs of the agents in parallel to efficiently process and optimize prompts." ] @@ -600,7 +600,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "This demonstrates how the system can detect and resolve critical contradictions that could lead to inconsistent outputs or confusion for the AI model. " + "This demonstrates how the system can detect and resolve critical contradictions that could lead to inconsistent outputs or confusion for the model. " ] }, { @@ -678,7 +678,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "This is particularly important because few-shot examples have a strong influence on how models respond. If examples don't follow the stated rules, the model may learn to ignore those rules in favor of mimicking the examples. By ensuring consistency between the prompt instructions and examples, the optimization system created a more reliable prompt." + "This is particularly important because few-shot examples have a strong influence on how models respond. If examples don't follow the stated rules, the model may learn to ignore those rules in favor of mimicking the examples. By ensuring consistency between the prompt instructions and examples, the optimization system creats a more reliable prompt." ] }, { From 10429da57265f70c3eafe0aacc58ccc24dda401d Mon Sep 17 00:00:00 2001 From: Corwin Date: Wed, 9 Jul 2025 15:56:51 -0400 Subject: [PATCH 4/7] small nits --- examples/Optimize Prompts.ipynb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index 1004926536..3189f08f20 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -6,7 +6,7 @@ "source": [ "# Optimize Prompts\n", "\n", - "This cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even experienced users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable, effective prompts.\n", + "This cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even experienced users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable and effective prompts.\n", "\n", "The optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n", "\n", @@ -16,7 +16,7 @@ "\n", "---\n", "\n", - "**Objective**: This notebook demonstrates best practices for creating a useful and robust agent system and can help you develop more effective prompts for your applications.\n", + "**Objective**: This notebook demonstrates best practices for creating a useful and robust agent system and helps you develop more effective prompts for your applications.\n", "\n", "**Cookbook Structure** \n", "This notebook follows this structure:\n", @@ -39,7 +39,7 @@ "source": [ "## 1. System Overview\n", "\n", - "The prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in detecting or rewriting a specific type of issue:\n", + "The prompt optimization system uses a collaborative multi-agent approach to analyze and improve prompts. Each agent specializes in either detecting or rewriting a specific type of issue:\n", "\n", "1. **Dev-Contradiction-Checker**: Scans the prompt for logical contradictions or impossible instructions, like \"only use positive numbers\" and \"include negative examples\" in the same prompt.\n", "\n", @@ -49,14 +49,14 @@ "\n", "4. **Dev-Rewriter**: After issues are identified, this agent rewrites the prompt to resolve contradictions and clarify format specifications while preserving the original intent.\n", "\n", - "5. **Few-Shot-Rewriter**: Updates inconsistent example responses to align with the rules in the prompt, ensuring that all examples properly comply with the new developer prompt.\n", + "5. **Few-Shot-Rewriter**: Updates inconsistent example responses to align with the rules in the prompt, ensuring all examples properly comply with the new developer prompt.\n", "\n", "By working together, these agents can systematically identify and fix issues in prompts." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 31, "metadata": {}, "outputs": [], "source": [ @@ -105,7 +105,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 32, "metadata": {}, "outputs": [], "source": [ @@ -468,7 +468,7 @@ " - `format_checker` looks for unclear format specifications\n", " - `fewshot_consistency_checker` (if examples exist) checks for mismatches between the prompt and examples\n", "\n", - "Then after parallel checking phase, the workflow handles dependencies carefully:\n", + "After the parallel checking phase, the workflow handles dependencies carefully:\n", "\n", "2. **Prompt Rewriting (Conditional)**: The `dev_rewriter` agent only runs if contradiction or format issues were detected. This agent depends on the outputs from:\n", " - `dev_contradiction_checker` (the `cd_issues` variable)\n", From e65d987a62803df4e19fe85faf8f5e3faa118fb4 Mon Sep 17 00:00:00 2001 From: Corwin Date: Mon, 14 Jul 2025 15:30:23 -0700 Subject: [PATCH 5/7] added evals section --- examples/Optimize Prompts.ipynb | 157 +++++++++++++++++++++++++++++--- images/optimizepromptfig1.png | Bin 0 -> 21010 bytes images/optimizepromptfig2.png | Bin 0 -> 395216 bytes 3 files changed, 144 insertions(+), 13 deletions(-) create mode 100644 images/optimizepromptfig1.png create mode 100644 images/optimizepromptfig2.png diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index 3189f08f20..7fff956936 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -6,7 +6,7 @@ "source": [ "# Optimize Prompts\n", "\n", - "This cookbook provides a look into an early version of OpenAI's prompt optimization system. Crafting effective prompts is a critical skill when working with AI models. Even experienced users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable and effective prompts.\n", + "Crafting effective prompts is a critical skill when working with AI models. Even experienced users can inadvertently introduce contradictions, ambiguities, or inconsistencies that lead to suboptimal results. The system demonstrated here helps identify and fix common issues, resulting in more reliable and effective prompts.\n", "\n", "The optimization process uses a multi-agent approach with specialized AI agents collaborating to analyze and rewrite prompts. The system automatically identifies and addresses several types of common issues:\n", "\n", @@ -16,7 +16,17 @@ "\n", "---\n", "\n", - "**Objective**: This notebook demonstrates best practices for creating a useful and robust agent system and helps you develop more effective prompts for your applications.\n", + "**Objective**: This cookbook demonstrates best practices for using Agents SDK together with Evals to build an early version of OpenAI's prompt optimization system. You can optimize your prompt using this code or use the optimizer [in our playground!](https://platform.openai.com/playground/prompts)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Ask ChatGPT\n", + "\n", "\n", "**Cookbook Structure** \n", "This notebook follows this structure:\n", @@ -24,8 +34,9 @@ "- [Step 1. System Overview](#1-system-overview) - Learn how the prompt optimization system works \n", "- [Step 2. Data Models](#2-data-models) - Understand the data structures used by the system\n", "- [Step 3. Defining the Agents](#3-defining-the-agents) - Look at agents that analyze and improve prompts\n", - "- [Step 4. Run Optimization Workflow](#4-run-optimization-workflow) - See how the workflow hands off the prompts\n", - "- [Step 5. Examples](#5-examples) - Explore real-world examples of prompt optimization\n", + "- [Step 4. Evaluations](#4-using-evaluations-to-arrive-at-these-agents) - Use Evals to verify our agent model choice and instructions\n", + "- [Step 5. Run Optimization Workflow](#4-run-optimization-workflow) - See how the workflow hands off the prompts\n", + "- [Step 6. Examples](#5-examples) - Explore real-world examples of prompt optimization\n", "\n", "**Prerequisites**\n", "- The `openai` Python package \n", @@ -173,7 +184,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -182,7 +193,7 @@ " model=\"gpt-4.1\",\n", " output_type=Issues,\n", " instructions=\"\"\"\n", - " You are **Dev-Contradiction-Checker-v2**.\n", + " You are **Dev-Contradiction-Checker**.\n", "\n", " Goal\n", " Detect *genuine* self-contradictions or impossibilities **inside** the developer prompt supplied in the variable `DEVELOPER_MESSAGE`.\n", @@ -215,7 +226,7 @@ " model=\"gpt-4.1\",\n", " output_type=Issues,\n", " instructions=\"\"\"\n", - " You are Format-Checker-v2.\n", + " You are Format-Checker.\n", "\n", " Task\n", " Decide whether the developer prompt requires a structured output (JSON/CSV/XML/Markdown table, etc.).\n", @@ -246,7 +257,7 @@ " model=\"gpt-4.1\",\n", " output_type=FewShotIssues,\n", " instructions=\"\"\"\n", - " You are FewShot-Consistency-Checker-v3.\n", + " You are FewShot-Consistency-Checker.\n", "\n", " Goal\n", " Find conflicts between the DEVELOPER_MESSAGE rules and the accompanying **assistant** examples.\n", @@ -306,7 +317,7 @@ " model=\"gpt-4.1\",\n", " output_type=DevRewriteOutput,\n", " instructions=\"\"\"\n", - " You are Dev-Rewriter-v2.\n", + " You are Dev-Rewriter.\n", "\n", " You receive:\n", " - ORIGINAL_DEVELOPER_MESSAGE\n", @@ -338,7 +349,7 @@ " model=\"gpt-4.1\",\n", " output_type=MessagesOutput,\n", " instructions=\"\"\"\n", - " You are FewShot-Rewriter-v2.\n", + " You are FewShot-Rewriter.\n", "\n", " Input payload\n", " - NEW_DEVELOPER_MESSAGE (already optimized)\n", @@ -373,9 +384,129 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 4. Run Optimization Workflow\n", + "## 4. Using Evaluations to Arrive at these Agents\n", + "\n", + "Let's see how we used our Evals to tune agent prompts + pick models. We constructed a set of golden examples: each one contains original messages (developer message + user/assistant message) and the changes our optimization workflow should make. Here are two example of golden pairs that we used:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "javascript" + } + }, + "outputs": [], + "source": [ + "[\n", + " {\n", + " \"focus\": \"contradiction_issues\",\n", + " \"input_payload\": {\n", + " \"developer_message\": \"Always answer in **English**.\\nNunca respondas en inglés.\",\n", + " \"messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"¿Qué hora es?\"\n", + " }\n", + " ]\n", + " },\n", + " \"golden_output\": {\n", + " \"changes\": true,\n", + " \"new_developer_message\": \"Always answer **in English**.\",\n", + " \"new_messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"¿Qué hora es?\"\n", + " }\n", + " ],\n", + " \"contradiction_issues\": \"Developer message simultaneously insists on English and forbids it.\",\n", + " \"few_shot_contradiction_issues\": \"\",\n", + " \"format_issues\": \"\",\n", + " \"general_improvements\": \"\"\n", + " }\n", + " },\n", + " {\n", + " \"focus\": \"few_shot_contradiction_issues\",\n", + " \"input_payload\": {\n", + " \"developer_message\": \"Respond with **only 'yes' or 'no'** – no explanations.\",\n", + " \"messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is the sky blue?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"Yes, because wavelengths …\"\n", + " },\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is water wet?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"Yes.\"\n", + " }\n", + " ]\n", + " },\n", + " \"golden_output\": {\n", + " \"changes\": true,\n", + " \"new_developer_message\": \"Respond with **only** the single word \\\"yes\\\" or \\\"no\\\".\",\n", + " \"new_messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is the sky blue?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"yes\"\n", + " },\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is water wet?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"yes\"\n", + " }\n", + " ],\n", + " \"contradiction_issues\": \"\",\n", + " \"few_shot_contradiction_issues\": \"Assistant examples include explanations despite instruction not to.\",\n", + " \"format_issues\": \"\",\n", + " \"general_improvements\": \"\"\n", + " }\n", + " }\n", + " ]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From these 20 hand labelled golden outputs which cover a range of contradiction issues, few shot issues, format issues, no issues, or a combination of issues, we built a python string check grader to verify two things: whether an issue was detected for each golden pair and whether the detected issue matched the expected one. From this signal, we tuned the agent instructions and which model to use to maximize our accuracy across this evaluation. We landed on the 4.1 model as a balance between accuracy, cost, and speed. The specific prompts we used also follow the 4.1 prompting guide. As you can see, we achieve the correct labels on all 20 golden outputs: identifying the right issues and avoiding false positives. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Accuracy for the golden set](../images/optimizepromptfig1.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Evaluation for the golden set](../images/optimizepromptfig2.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 5. Run Optimization Workflow\n", "\n", - "Let's dive into how the optimization system actually works. The core workflow consists of multiple runs of the agents in parallel to efficiently process and optimize prompts." + "Let's dive into how the optimization system actually works end to end. The core workflow consists of multiple runs of the agents in parallel to efficiently process and optimize prompts." ] }, { @@ -484,7 +615,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 5. Examples\n", + "## 6. Examples\n", "\n", "Let's see the optimization system in action with some practical examples." ] diff --git a/images/optimizepromptfig1.png b/images/optimizepromptfig1.png new file mode 100644 index 0000000000000000000000000000000000000000..14b120daee352a41b75d3ec238e33cc4692d1ed4 GIT binary patch literal 21010 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%0As5PkUQYM1;Z#UDJvc#K=1i(wSEX?(y? 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⋘|5oA4==Mm88VockVRN2>E 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

2e@}iB3sJC) z%RS{WXtCQ6FdcuQP}_X~VI&z~>|J;QbPYvQa3a*t+_x{GNYS3+f1>5$C~JonqU?EI zyHy2T1e)EQn85~?g2rxo#p92YI=K%dwQ^P-n7FoNw3+g_9Imlr;^R;1x3xViMqKWI z=j)3b{^U=UV(UY$@|ie?S9V9zypEodDI34Kai5_(zn-{QFLMV^TKoj3mFz!mg4y70 zDhQ}nmuJ#-O*F8KpZ(jPz2sDSO;BhqVMnI z2jX)7Pl1LwF^py{X;=jeFVPL#h1^v~06}4oReUTN1>81ni1AZB+L}Sq^X^6@At!wT zGfE&8zSiHHP9H=e_-{WY2)vLi{9sJ+)e{0Rm?g(D9k=>9wV&=X*7fvbg&cNK2>aF! zIlRvxN!~d}9?X9K@N&2VChZj1@iWI~?WX|!du!Jve3!wrcJ!+{tL^p1lad9Q$o@8WBt+%rh# zK|k^{I7~3(nYgmxNNaA1?_ko76kPA#Iqi&50mkb|ulN#~_-YlG>OX%l*c}}01n2<%3| zV+}?p5_!D4DFBT7Qpfv0hg(wcBs#rtQ7`!G)zwdxMKBkt)uW-ue}@nl(xBAauL>gL z%t-FpD2l7o-ZHTk!_S)lVj$`9+A|;(^ZGLzG|NR1aVqV+5;RUl(ykH~v0SL(thZe8 zAIpAMHWo$5o337|+YR0S-YJtw$N6Bg9lkppZm7`op$YM=?UTUbP^F-tse?nk0`2cffDV z`ww-!v!%qJpwF-~*d=7{9xliC0kgM8BH$m)-h+;&=$``s#YNb~N5-X>D^ANgD2-;N z<@`@JuYB}e^>BP3BG!~a$g^_!90UYdLX4Me`{{2g_;(Mr0QeHoAQ>6RXOJ3n@GFmUw&b?ppfz&gl7xHCwS?dq+@nQ4f3wxueO93k#veEG zI-xTBXU>(+YF+j(u$)TtlJ~8;7n~1QIfWfl8QLB9$?B0Px?p)B>dU*s*IAr z>s9S%p?rq==p?(@$RHWa(^ue|U)GGkOgLcW^}#x7pE0#ls`-6n_hsnLusYVRW{&3r zBH-r-dS`RbV;&RfJE<1g;{vW`-d5)Sz178Ga`om3o!hAaDn;UaJK%82 z^*CMiTI|QO*JUb<`0+8VRIQYLWp=uF+|}>Yrf7>nF&E+xTb8bj|9Hto)qOCzB7Jh+ zV6Qln*Z##NV;}Geb2+W%OKf)y&RkkWz!G_`uf7yD3pJ)DvVz>2jZK-}3vFSGbv6TY zo;7SD)b#S1tZD5i57H)HlJGj1E$zfOCg%@fznw{tG!GQ>uY!Z3y z#OI#zMq0Ua)cu1dRg3o{U&-a2riD+OpT_G<9Wioo;EcCuvYsDyu1B`D0DlVP{0*rNlGP;%@f5RmQy@ zX1P=b?m22Cr0b_8vdPS*5i)zkx4=0gY$&D7ZqS6kVJ?we#B;8BH@7D!B7WT0+mh{? zCTBbER8tZ#P4QYhZ`ql2d2;@oTsrdRoreQ#5kcNTF9F?72*Pc-&SE z8BV5CG2`=opsm>1b9nZHrndnD83a;}sVb^U06iI=r3>6G$evW!I$q~3B`&21`NdhB@ADs90fGJCntB2q9C6u8p1I-bb* zu)3LtCm6`m_6gIMYBZuTWD=J6;Rcd1ofU+IiGi5K7b5=*aGV)RIc0EaM!MhpVJKjj zi=OmdQ9TWkctAY+@A=mB2BpuW%bM4BDRu;uBK46}wlt|Nd~T(DaTy91-!KU6XwrA0 zO0MM0+E+SW;r18nz?v_VoBTIO5EQSrl}&u`OJ>%R3xGrWO3Z6tdM1rUqXZovjpC1n zV@Kdg(bXxNQt7yNLc)$!=;*q42&Q!8iSW?6X*ESS`z1b|kb!Mt>8$(Iye>Zg*>}&c zhGLC@%E?R_<_D5StNokpD=W}`6f5K?7b3*^2iq-$g1i$MqWO&_94IK95uEf{%utaa zBs^s&;EZcJ+rio#KKup=Q-u62Mu}Q&!)rJYOc$Or@26Vqtmi*W9I8bYV)beGw+_$> zlN=|n#q??;TyyI0too> zc78#2xI-ErNtBHU1w9F_e@`X}2bbu63pXH?>5gd?S1wEkHuTsCZvoHNY-K?ccr2p$ zNQMZGvqY}$jyD@KIIwH=Ll! zYlWZjMF_~tH&qG{duJph7X10}j0kogHV8j77igBgv5}y-ouow$`e~yzqM{-XCg&Jb*f=OSsOV$P{g}SdJJ) zBow`sQZQ9CT*7n5Z@kZL`f0N;tlZ(1uvV?98eaHSyApG370}~I_xaFnG-&{2rdgNj zS5>dz0Phcx?DB&e(OVfDj`wn00u!-7_>_ys_~Lpxi+DxI%IasE9<#6x6RAutpY?$} zsKo*IEr=J1;!(NE1zBNC^*(^@)}LS>6BA}cDJ z1pG9VX)x|Bs)hA~`;|x1tn&A-K1=>l~Ku*R;Nw@RM=WODzC3pN6naeLGJp)tm&Dsw_DlHy?V)wq;{H8;y4_VFl zMBb_24$zM^ii;Y%fJJh8z2Tvnq?Sg5Vts9c^;_eOe2JNIEtM9h!>`(j;XD&D-FE$* z)*tgt%XTd{EPyOwhTD3Eqi5a2`E7%L;VGn*ChOn47;x-*U+yyfhD_KK7VfQuCxs3b z0uR(jMlQN7h>0BNAg+ofjH?IMyXviZgBQ4=JS4hLgU1PNeU0XJMgCa>QvX?u?*&d1 z?lK_4?rDZBKr7d%a+tI*HTz0}GeWQ}_Ov67$v+C)Dp(Wi%| zbI8GvP-s~RwKTuu1C7E@N+vbYUTtq41YELTqt2A-1#sCu^?i|denEtHx0sAXoYHTD8cZ57bm&cWF;YYCKLj;lNeo$K zPYWNI>`}FN?Qwkq$Pj zsgY%jbzG>#W3CP?Zz$X5*1%Ca^r|)prYr5Z*Pu1+h%}$B5}WoA!9A@$!xzhm#}g>aXSG_$~{dl+3%(Np*aC2dt%E^sWn15(@RXSMTP& z(*R@8%W4fh$@`@aud<%|%|7I|E(eO%%;7=4$KTP1wA`C{QPD&~`fg)>#VHhG@N}|b zO)-`Z#ArWQ3Tp#8sl;610?7N_mF|hr9(G%$uUw4z3!?A7E>xhbCaN%}K1rSIC=Kw9x9)jf z;75jFC_RlKD^yX%kZ8dX>F&yjhk~2ZqbFZsERu3@aS4!dVT|&Hq&KD@3HO04f>Ba@ z-t%xiWxaRhuw8{aV%|Goce(_jh0D!*%MM@V8uCR0utnXm$Eq-7^^r2U1J$Z#jL<{T zgNixJgW4iAI`A2^GoMeNO)t9J z9xKtA*`S4SZ-NZLMz_7LSCd^>-%bxIuiz)q-ck3r7;?>#!NpO<-|Ud#;^3)a4QWw> z62bK475BNJc-#Hld>gY3JL>s~jYX$L6y|*RR}cR3wqaLL3|z4}G1fD11x#KN`HmZK zSOch=L+jAYy@qo~$MGLZVPP3^ z)A+kJ%^gX=mMJQ_I6cR-^h0JVlec!Kmkki!JCxjr9eH}1y$p_a_T;k>_Wa)g1$Hnk z)P@`4p(gKwB{u_aq2atp+ArLxOH90CpWY#+)XT>445KeXxA34YOpr+W|@g}ALBIfWvHZs0Np%q1G9(jK6% zcaWSZ;2MoN%tsJYjw?+y9LX>eJwVYX3?fMJ4%zM(j3d8jn6a&k<}UBxpgT2ih-8s- zm+I`v>(kz1v82lN->gveygo^!)9fc9HMsM=!DMv_zh|M^uI?e1TY$aygJOK2WM<0% z5*0D~xM*kBn;;lozq^on?=0)$OAe35z)f-U$aK=le)A)2qlf90$MtQ*66ROy1LMO{sjr*A&B5UI*4Z-siAuYa8=GFwS)G9fX)HS&}kp zbW`aA=iy%!3pYl4y<1{%C_7|h!WS44pRl zL2Cch1C(z&1E?JC?e+DX1D4W5N6)#ooUczw**pPtsJy)GDcXD zD;L$P4W^l`KO+XfG&u(>vBPjz`YrlhRpD%N@?2v+8 zGIZYlZ8lbyEeSQAk<1hf%9LR^<}NBGtLyLCGWZP1BPtt6kLx3eVof5##Sz7kFYf&m z71It#^PXaTNVt8GZ_5414TTZ#KYpmTHC|KvuAf@ZlDT$$PHMT9M{>`*dPpQ6eU9R{ zQxEJ8B3O(ve;`44qAcK2eR)!9xZv_$hB;crGrTU*aY;>$B*+bgi4dpXjv17QN$koZ zhv?e@lI!sL_nL-BKga3UAP)8S#&W={g=na?4JM`)q;&R%H*8>|2_mk~O_OF1Jtu0u ztIdfRd73hnb+vAk!Kr3YFA-nySbh=+lj}%-|Nl8x{^O7#kH+*>%t>;14M(ZI$7BV6 z{>%kS@dKq5tq(%;72-T{EaSzy+d@Xy`-CKu^-?Qn4}QOR6sV64efpU|GqT=OZ8GqNr8?S}na{fV>{Y}$CcxLnA|N}9 ztGD_G*>KEqCvc{i126VG!W(RsWQ3|1ih#Mq&wP>EUj%U*Hb+TQ-^0tehzsaw*Xn*3 z=O{!#1|>6T*FId)+$E&F7QU6n$=#+s$^on{LvVhau#TR7J+gnVS%cE6Jo-on)&x<+>nv8@q z=T_fuGkJ~C_!u|8+Li(Q{3^Ua6EgKs@=j5*$9vl!cgO)gwrs3UoTdb5JkQu`V%$$1 z6v_2+0-7N$V={8+)t;3E!$(Juoi|l2L0Lhqts$f`G!cehb}f?gg6PnL^tg|^F#i}u z{e)?<@3sA^)2QPx-R}#rJL$94L~*MJ7PaI^Q<2+yrMSsd{jf;S9~7y|L=sEZUa29>Rg!D#HfJyqW&i z#uCk`3`Q5R>!3fO93gNIr(7AARx!54>6ke@6vWRb)&cL}9Y`a5CA)xK9ykr@zs=h_ zul96!yoV`{7bDDSPV0R%DZT^ts4^L?@+K*ZMnk6N@kJET2pdjfw%0E2OU`#Hdr(jv z8VO&R69p~zA~cStdo5OCXXmRUya|J@+Q%dfeN0nIpZV)dP*|`@LdcAIEYz_i;^iqe zX~@mKXGAAUC&2GU=c5++b54)y39-Su#WM4KUU=l^rU`;fMAc@K*8rD~63Mto+Px9i z5{jv;3L0a?v2mHm*?#0K7qD|oxKb-qHC3tk&bM2H|1TxWzr5I_fW*t?kC?bcsx;Y} zcGP6@Q%lz6bqFht8_0(GXt0kpxtRnqNGN!r2{2e(`L%W-xoBYHzN%{Fvsk<`LCW%B{4C) zqq1KDDE`C*h1i1FfV6fG^4H!WB#pU^fGQK?2tEf1YWU{9&!4y2b97VA9niZ3Lf#Zl`aGgkr9tS_P9*!xqaf) ziTLKtsCW*cMH47<@oumJTYS$y_{yD}=s#B8E+$&k6=K}Qjx=WZRdhPN%##XFm4?6+J)k`4#xs5V0iqM^F57PY#i9ihIUVXKYH*zxVnOggnwJ>3`)udB0k^gs>+ouU2QoT>YO@|PiO_b zPw;CUCKXuGXmCqOJL0#|_b>l^t>`q+mt?^!?^!1M$@1OFURo%2lTtOJ2d_>Tt*Yo|xp9Gp94tbcsZ?WYnqXHcRi4sJ>Tytx3+86iq;U zxV=0|VU?@Wr#_PdJ8p*-{i3j@M1qk;Lh)CeZLWt*UF*YyvT57J*Sg-AZeinPmhTFC!A4ZqFXn=-`dkJZa=1o^lEnhRzUb1Ax#x!aemevs?oy?*%mi$mr$n-GVKNW zPBJ_2(I}};(NTBW9dhYo{BT@Xp1ydpmG}|erJ*+YQ_?~3Tk=BYpzO9v7P0)8-sy<&O5Dcoa&xg z>8d-1j=rp>TVmAK>SdHRRIS;M^8u+B#hA^nM;UU#sEoY!66TURw$$2zl&3v*+5v>7uNJxfZ=pnP{B!Wev6d!TmM^pY*%> z1Z~_(yWuDRnXftdHorGUG%6D_dfgt}*p=9Xv5k~zfND%6xd!Ykh4rV))nH$mv*UV8 z9}2x+=;@e*YhD1gclN`E@5E2|bD0N~V>Q+O@4}t|@hxMe1zct?s&q1ItFL?qRzI(f zz`Cp-0O7h5MeY)DeAD-BHc$0%3t90!ei%JUOJYvB5VEGmZ{u|KHF>BjCOfZq28m!* z5s?vV1tAmm`zQ-W9G9(Cx-@d*_64-)UpoA3@%2pS_iSY}mwc%4>zVlDwfP|Ny%M{Z z#WcgI=f`*=`WjhkPDCaVn!A$@pYh6>nb`G5WEzZ_eb_DkUEBwh#j(Mwe3c0*drjC*RR7A%>$Rk$8kBZ-BLWWh3&7dJ@!*oeu7NoL& zTD0TAB-Gh+mMXXmutJjRO{~&kYgT6_wJ^1Ld8EY{y%5R^}d#OK& z(mHKCj?4jRN)ula=%9>Aq7LZ4L9awuwKW~@M(_SrMnNCn?{JJ8{9+4`pjZhT5W?9@zw=QMaREhXFs?+95Kgtn}_D` zvllbmQ>ne3s$>Z;^nT5inzfrNvr%Cci@IrEAh)siwb*A=YyU3i_o+R*P*@u%tZrg zo$%%^wuS+?g$eJLWM(bq61i6v8K7lAqx<&F)ck_&%iIU&gk!G*=tXVuy z@CoWq@#%_4HjK-Z`00Q@q*w^rX0^hkXX z{_KW8rN;NjPgBkIo9-W+Mb#Qw>k1eWziSoq4l`FK>@u+f2IlUHU;{OL z1slji=h$`ydfI*n66?xGQA=Qf1qcx8HqUU1Y`o6!cF%TLa`4B#EUVHKduW7L*_ zekK#>+>r7j>C3_PIlkX>+Y!yQmz@Vb?3J?d&}d`^x`>S^i4_fPI9b zYw9`VsTSfyN5iW{5WZ>{X&ag-kx6ar%l&$^P(a^~OgwlRln4m~MCzrmx~=y|bfVgDRcS%Y$UU2jD9l7YyZu4 zsi|QJwvlB%;r#ux<;AB?OD)sp_EmqsJ_OqLjOw(2G0AU_wjc%gg(&!j6@PsR|K?i% z4k1pIV5Q4V4mGvuv#tfd@-_zn_fK^Agf zC_nSh3@Z6wA0b#klDcrScd}3!AfSdWNsY!dZXch?Z_n1+I)@}_Yd|*!b^^jr7d54c zU(L|vG>K4cIr8H6B0zp9nLR$)<7c^HB;l~pHd6&4lxqgVA&T~#raC-lCfP(9+cet9q(uGSWCFS>=7L7RWS)~B4CFB>!d-JJ|h zyA0BD!|Qkm*LIvMa(=UCL2H1%&=7^z_DY~r(Dgm1iPUTZO`<}p!9=FZ!uJgeRRO1E z<2RGv%kF;~&K)f|2F+7>mci-$FKf3wQUdgPZKj3=UHG7=z~w22%xcZcfM^AAS-I<0`%dS|lM;}Fs{>8LI}5t4FR#iKK-xg1)4H@G6a65Re#HT4m? z2FwruK}5zVuqB7v(l0jKdozu3I$-p0f!AykL-iWey4euMvyh?&2<>OpoJDu1O%AN4 z@B%u4LXO@(Ts~F0?(L7ARh2G@*b1|{O_^aNyBLqrH9Q6j|PI2CVPOqDr zcGyuH-u(Y96m(<4rSg;;l(>A;COo|<(-UGbY#<=SJ9lOo-67rVWl+k*ws&0vbGmte z(lGHpFSNwG1ovlwoTpC+0aQ=gT8qZ&hXEL@M-g&a=X`GWGYIHmw-1W#L7Cz8Om_xg znxV2%STVU&`$o7CPyc3Manr?ONIh>0eMWVs72Mu&SkQNZ7zT=x5fEgkeNfwfnqRvR zSdZnxzIsRC4pp)?@;}!~L=$ws!C&EEkC-e{IhMFV5k2XDdNy~xv}%fnV&5P>a_^=v z>vHw3-UN&&cs47ssr}FK@SkE=`@%EqEZ4Qs8rfV-GX9CFGW}2T!s3haSYl_`fUKW} z%b>!VjSX-Kd0~&kT<5i3y%ESaFPtW-r%=IW|I3B?vq@F)fm%R-n*=@w#r`jS-z=?o zpi5~Zfx-^@Z6ibXpvbn2eF%8Yan)R)F6;*MpvKD=nyi2AYQ6e?#*)Zwq3|`A*Jc9S zK*)ZfI&O0~ThXxvI4og0r?5g^g}Rf09Zyk5+lKXeIegl(b=)q^qLt| zh)+MOWTl^M45_l{lok>}uBd==g3g8O2AZN#{b7db1HMJ4sCM%3>t`Hyp}~$r$z|5m z8IIlOScCyGV8tixIbHI;S!WDsR9;_b(Z>?RV!Lj1-5P2=5(l7f(c_gko_4kAP)Dfv z7*Ky64Bb6&5vo3yG-Y^!*Q@$T$H-gjq)!~6W(C)$gbEAJnGs38?R(>LR6R5u=hOLM z${(0_cH-TKz)TUZ>y)ag8-!|=>PEHR9}4T$cwj;~%e*}EAqiyg1O21ojBS8}eRej9 z7-nUWftW`w==zt={%u_ruf@qLpZ%)7QgX}Dbj4Az(^B%L^OPiNKL*+8L|)4?T_E7f z?xMQrA!>oPJ6A-tpacVLpSWaP*VCzUNDlo*07qiPZw3Qp#p6*R$HdQ)$&KH`Bt(pAoSm6mn_*mmBF?MkX`wyy$1xm>=~kd@ z6W6MKO%{RycbbD$6qw4k5;n3Yoot*l?U^z8JjwNoDmXr5l7sHF%M92~zYA<}1Znbl zbnyWr+1YCEjBhKATiNm0zia};q@IaYj>ef$x&Br;-EOsUwmYg}*{6VUfw^r2vPc?p zb!8S0BEn1P&DIY5_9p;AX13E6`gbkaDlSCb;YC0hnLaA! z`FwmspnvEG)fLipvP5l8>Kd4uh_5fB+X5%9*K{8^UxGf2NqMWUlvK zdN@-sG$2*4K)r~kwvp?# z)H5pqGA~+b82AgI{4oapS@W}?082z=d=(`K=5E_l_*kGrKK`C2bi)jOlWOI$jtXl# z@(G#LuP-`zUo)Q!qN5Q1&XA-LgBeVzkN^_|p8y57T0>2&GqMlp&=&)4nA>s&{5OvU z(ix!f{^@G1Osj_Pd~Ye`v`j%D5;l`WO_JvU=-cn~k3W4?@i3>cWg;CJ!#%RiRbUOo zyfu*5MS=eM%;U=K(M-uY&@>V58h`hSPF(fL?4N$QH)I|CFC^8n}e~ zt~gsvHJ|t#)J_AwJVxSW6lY*3$HP%z{`KP!N1NLH4d!+nw?&EXr9&sD?>qARZ=njI z?m$pI)yBRvC=kG2^N~6``!hzLmHXaNC6wX8H*Wt?1zwoefN^xT7B8;wXt&rr5dHe- z;O3j3V4xqLokZZnHG_UOsj1;m>an`5+U}H*Hr!%|+>cLD2`Giia_`6`0e89LzItD$ zLOXOUd)EEUar>q8o7qok=aR2KiYv??W@L-{Ok}HGsLi-oFuG|no|_<&`Pqs5X@}>H zBCu|~*;V|aQHxt<&=_*hhm{|BB_=IF0_dBcKrlOoxn;YF+zY?$H42g<5~DV$D)EW? z!u!6=x#fCO|HL`?YWr)-YZC_Gv+=V~nT1r?0R!-k4Q@vH#Y^wn+bO7E{BJJ`7yW&3 zlrmT0(H)N3?<1)K-g_(;c=I=%0Kt_D<>H>UnwHy(bm;}=|CZQdN1_@ZRv5KCxSjlz z&mJmOf=9Z*<5$<^Bvopsm1c#bG}!uK$7e@IntiV0~csk-LTL82t|Ts z!>ILGI}+$b?AYENRylzRsr91?Th8(+Vun5+nEGKKL+f%gf$6}<$>!F{%<=(v{h}LV zXJ???S0X#KDN?j(FxZ)|QZ&}=jefH%4cUL)gmhpvil!TuDeUPGb;u`vl#%1_Kz^HQ zw@|+m1*Y_R zvom@A3<{~7dG{ZS?q6V%MeP^b)byTlWH5x_J~_k+>!0VpkkYTS9#D8QT>2XC&0;gj zR!S6r?SE0qUM#G$tBRiE4^>5Qom#xgqurcLi9R7Cl$Z-m@Ef%CSq~3C0&|ghY<4px zmSwx9Dad)0#Rz_|h{`LWJH)QI9a5tVCH8T0tOy?S4b_n#Tti5PZZC zbDpj+vSKnwZO-+_uoYi={3F`ZrGWZ)8Ti;2dKqSyej={m`*_cdO(E>TtIw2X&2*gl z?YC*}Y~g74 z2AdAGw){ZDS1*YtD=3?*i;fUOvYPSIf}2Gvd+d~retC{Y#4a^g=a_WQob>es#M_%!UL~-c8Y$MXw>}5dG;;2jJeiwBlGr9QG%oDgcSe71xSc1Cst`$!YM?3 zUM2dd@oCo#XNc<{T{N@-$C-{nafX9m)fd1mMPd4(`2`+>GWJF_2xadgu&C&%w&`&P zNrx3YmI(nODz+Y*M2FYcn#Je;g>ek%)ns^_Qi=TrS7CCvwH(f5SI|-wzvl(~n5d8R z%7fbRXo@a=Z$-PNGPM67e?kJ09%OF+A!S@e4(79;>z^0coZu3F7haLNhD8rbDLF!G z(+AubbFLilo^52+Qglp!-tD$})@$23$KmK)i-EUB7>bh*I z-Ra%!s9)I^lMs+#X) z6Ij5~wToZkBIFbAMALY0=6A9~dHe>3WC}E;%yGm{BAUzg$u_Ldcat<;<=*0Phtnw% z4Y|U%Az~^lLulS_Lu`ucG@+^cauSR-zQhNlsbHm`nJ$J?F?ny7tvqSF1*;Wg^xw2< zR(u-`A?yYX5<|L^K2!T?`R%YQqF^L$1(1iWj}}L5fD^~ZoB?!wzsz>-@hfLM*(z8x z98JKolZ&d%0etv36W^Gy!XUUT+&WhU2-=|4sP{#U^Ox4fOH$wqxKyLQ#GpM!PSNDCR4VFhrltPm|MnYt zp=4gT1C{yFt!Yl}#42!~v9S2E_V9(uY^!zoL|NeUl!WBHR1}8&31;vO`s|}IB8yl9 zRaWPUbR?|-9K3Fx6v|K4r!O#yurEGi=(vG{F;CFdGN#R<)IdIw@dHM+@@639G2x;4 zqKL73MS5aU`zO}UeK^DK-ASA}6bmeY2zkgF(i6gheKZ3rU04?H=*lF53pYzD!Z@WM z4N5VTI4!#Q+pF!D85gkEqEa};z^cMj8J(~rSH=>5U5OI#`u0XqxZ=g3d|l)b+infkThaRhAdHR{}N3oCtvC$QC{4aLw2b#~SMAbKkUw7vd5QdmZ z3WkU`fa z?_e(F{e2=E;cAFtVOe=wO&S?=%IEF$zO^tuVi1olQI5%9g;cH*n`>U}f6E8(%7(NMMNY<$_2D$lZ!3=T4Fe7Ztwa_i z4Ji5@mYh|cFdYvjL1tG^S|?$X-!(@_+}B!<%kc(wh};;j$hlCBI9zy0&- zp{V# zY^u#_=YO>lxwBnm7LZ{2Zjn;WQ@6j-i#MfxBJ}d!=;o=l~hLvq6Lls>&h+q*TxFl zR~7PX>GfxxGsgx~rLT1zaHfjXv^!}}fr8u1yZ%M~Le7R(y`Cwj@0FLRjGY~Edeh|# z!xpxC^qzu){_(zZl+{jI&Z=Ih9iJkF#pa>;ZC!Q5emgW&zZaJnuw8C{SZ##&ekT7> zrdi&YD%#kIN+;8T?6YE9r-Gktn0oFl4@*D-`C$ZxJla%XV!Pq9T!)@RT0b^`zz6@9 zTbA`GLP+@76@f)iFYlCP{;>HYLlJ-#G@Vq2a?FQ{zy9bp0>pa`r^S)4?6(M>FviKtsJe` zQ`T6l`W-2JcXn&U?2Fpvx;?Fxr!O_D;0iplzMs$_o@Ti3wK7qGgmizgB?dZoys2v& zoy3|7*RzYhRyS&tzAX|NziMa@DY-99W*OwHYV#j*kiWAN>HzGQY1~P}!Vt?8MbHBe z&xavQK*H0m(37?Ien)bel6o5U@#Usc+6>)q_JK{n?8swo_9AvIue6RAwDWaJ=ZT1f z(^c*u=PM->y?2A11>RU**-ILrcxD1_f+spG^R&$a)1HtedzI-=T>48lAhl0VVtVqH z7R1R_tf{@W+e3Z8L--_5XrkW+fls>(kIgp?kJh+65boTiq&PjrK|2+MNnpqsmV?rM zU!&v88t=Rm!Q^$6tY|&?a)!7$k~i!MygRbQ10kCY!fkU=NjVW$nD z#0=sOEspPrFP#7zYiDqSCI2i0aR(^aT>3gT4H!<98!7^Z!&62%8e{zyJxu2jdIrCT z<0MtYgn+%|k^EB4FRyG$wp>R=N82*Kh|zfohs8)RPUHn*E&i zR*dRt*prt$1G)iw=?;;l03&O+qG{ ziaZ$%b_azY)3^%M&kag#_s5GT#Jun%<^6A!tGsdSRe6xKM-oZroP=fk_fcK z<*mwrb88}{m1g!_{Xt^zWNaD_qj29$wKo~mJ1fz`SZLgOB*RTbzZfI6T zqU}BzaX{izynKxuiCAMPZi_*DXmPH`Ld>~5n#Mx}c19SKzuE2tRMx*aOEU(FSbTnf zzeyX)uKQpCgRVZtEcbYMfM<}F&1@NiFj+tqa0ZJ>&e`vhX4$0lr!OY>uC7ej`l|B7 zH`l%=&R7uw4)+K{vOs}_FhyV2p38pMjjJmz} zNZ4bSdQi!AYnX^c#X|ckO~5&1I5@-Wp|0{pjg4k8qifop>gJH#^ViNpJJ})grURxI zE|nheE$xS8vvsylqm^D#&DVF zsbb@E1YWpq{-~?gZ}PzOy=0V7>kQ%kfXd|`nC{~C6=9V$7-6P*>yD#bOKA_m^ z`@{40evKvInMic;%aJ7T=#Z&i+Xors)*gk;6Il?-v>M=|fZxQrY>xpTAFp;pZ-dApTBNJttXE-W0TL*L~*s)PINeK51nlx`eV9o1v zD8#kF3`tfFuF-`#%*%l3Wn4OpdT(um(AqTPP346X^jG}DMNh91Fs~H%rZ$U*M{ik% z_5{!HSZ}*-TFLl_jTq$Nu7mkWV%ttW^nHrb)P*hi{FH}rFISb_=t+(7Mn*iD^ispa zJCme-CdZ{Khf5^lm3^lRZTgo*C32jj zoCz;LY!U)}ViB)DiY$t?p`@yeEuv zHh-{2d{d|9D+8V;vA!OJY@po!^~Q0~&Rl~!a&Y$Z#pE4-+gGb-fqdPA2HJ$zSY@z|Np+jKOtmQ67$q;s4tM#D(;vPiY5w2 z^2&#)>zy?hoz1o@l$Kl_yl;EmoA~p;l&(GZCyw7%$B??Ej&%AMcvZI);8%aB>Pz8f zgxXCH_ePMB?>u5k7Nj)9bfEFet-anzSzuwk2`z+zQ)$6sNTvOH4ML6+16U0EDr!^Q z(7R@WyTOQIs!oUI^T1qFtm_cLf=&8A{>nVcmEIGDb;6mYT9BUJ3YTsD^-`R}Bz6Tf zRLcsX$U{37ly6gz5Bk~imA)7$Ec1o^vN5#wUDDqxQvLJ&qmR$I&qb?_q9%gYr(D_xbfV9|XZWA(t5gw_(XbS+`a3Twqsm~h6Q=mpe0MfA%V1&R3 z-(~ERb8!3Die?4a&PvnkMOXdrL9bCI8|wy5EiJ&I}=EBGrk zK^Ms=!kHntxUbIb^MH%5bqfD@M2SiSxHwceL##THI1thPdah;2Q*52Z&;Jko;2g3? z4=U2PL&CIs|AXIE1P!Rk6!`nLeS+2#U$o$npA>@Obsv=sfGwwsJLVXpJm!+k`ek}HV3kmN;1Ua4W{U80ie2B;_=j2PMLx;OKX2Ll z>9VvHrzs*DxP^kiBZgk5-Fkn&9Ezn5Iw&C{^iw_Y=xgl_LcP)MS!Dzo(8Vjm1A8lg zVa9b!rR~xeft_}pV7yB)d5x@@QrwNX*(AukA@lqo!8-@qvs43K%cZ5WbvAOsb%Csx zRGU`$+#H&pU9{4LJzJCN5C1us`1Sx$JTMbx*z`$7L$-}KwG@(=l@ZbKWBFt{e$<$c zW@iOlZx9K&Zd!eqiv>zZi#B8LXKT@c7b*ZdT3toPr`{3|qqwU5E2SeDpLH~dn%{b&}N#m|TWoz`=u)4fB(nGOeYn>b;IP=#;@UNLatX#O3O!l(cmDNn>giIu9XE*;XjTqBBb)1TX`#9R0c zYZ`ETfNCHC-`iu{U(uRrYe#eSDTB=qLUgLx^WZXv2(yuHxu&u)cvqsyJ6t4wG(GF` zn%f`bD8XN5#$!d6+&KUsd)_f#@8mS{lLo6VI)DHJ4M}>arFyj=zi5{!)!I%cdb$P| z6Tg+3~g@!wL1Cz{nT;^_CBDVR@c( z=?*_2$23*Z$XGr+OZDkW$ z(G=ov<(NmAeepMBQHk>E%d4o?2On_@^Xo~TQ4zDO_ce|3zzV2;+(QmT3#(n-f{ESP%Q1yCoNHdW+P-gJj z4?BoQGNX%zu~LdFCoTH2`%aoP;ZxX@zJ(FCdS3#S3Z6mvnB^>4*@|7gjV zncY4yNIc(JNHN~^JkI}&W3ZISbc%GoKOV!ZUHsCiMH5sW@_H2zf4y(kQ4M0Y8N&z(=ZiN1FAK44qU0CXK`|I$vpSN5yW*^|5w2lJ%6>nKTO%Z2<$|cc#lc?a^zV ztug3S^bPv1jTG=lKsgLEPWKw#uG%m9)?mCdvlPAYwOIQ0U80ctn?|I~zX&K! z;fhG>qQI4LNET0tGylk>#Hu|=@@xe;=2<{AK2y(kd?iuZBS?#nT;(Q@@07t8NDGp3 zhEQmo042%t>0C{y?Fly@u)ZTWjfTYa4QpxEw z=XX`-uP=$v$c@b#3<5?*;b`iMp3bGM{&pL`5UZ%8-{@vMu{p!O!+Tz6N248~5&aEF z4(bQVbjOr^sW77w4Rk%euv2lB)k6sNTP1Ct`SOu$i@{wHaqlmG+_;l%v_u_K5BA&= znbmkcnI}e*^S7HjGBBJYum+sIt^UteG0+7j`Wmu)Zg69jEBS!IkF6+$88`OJbJoRdc$nuLd-@D}n@pU$PvY_HWyN;%*?r z#^-=YC7OF4EXo3T{f~kS{liL58Iyg!q(`cL1=5FaFNH$-bvrj8Dz2!h;_U|g=p1+P z0Ci%yZFC9$?3qF2LgpzrQq!&&lQ5*(zwog3sH8hkJsXM~m6qP*m-Q5h1rn3RE`k4{{9kx%rR7tfg^RT8lmVo9q-by?e^VNsiAb+ z{RLTkQde`jz<^$+SN>uvcfEv*PW?6EB;f*curUgLV1X{@_?p|iZ%J8IZGowbAj(%Q zFz!U_5b0AH@&j0R%bK8IQ^O2o3i5O`+n*Bd>qRq6(C~7@_Q`*I#uu4Sy{c;bE(O-l zyfa#bfbW-xv9Y*EmU^ECTqime#}~j!8bV74)FQk)RjI477GHk$CMJu~57LPWrJbFg za2p3?RDHGA;o|1o*t_$MPd5U0ncj@&f0hY#8F)r0;eY-s#b8vyRNX@2QSuDCV*MBs z>!cCf-Z+@eDE7g;*b#MPf4(ea_HheL`uwcca=kej;;;spUiIUG=aR;a+fGkh#sIoI zau;Aaq-zG$(|K#;5!UQXw{d8Fg(RtDi^v1*;bbCS+_U}hgbTmw$iZY5>AVc75-e3t z;}BG-NWd4bv?z|~2T+oyhEA;ENcLVNk z+@Tl>3qttIyX0Y(r|8%je6~`+$a#&=JUTZhf$OP}?L=%chZS9A1m-rttv*SvTq^%7 zA7&Bs_&T(kU1uPel8*)6GT9M6+Dv6mO(!E*yywZCs|TPyrhVNtt$n){Y%HF zAPlvOSUMQ#e$8Xa@A2L0#Re6|4e8GchBjdo$Ve`Re@N>OAj@2NFkXYa;eR4e;+lCjWfk{j)jsuq*< z;-Y%*`O=?&Y4)>&`X!C77nrQ*+Snp%SM9+SC32&O+PG&FNQx-M;(qg#f<9rpzXCy5 zo!XyxnhGz&nXTdcb*|X4Ki~b`sp{E|RZbPElGSAP6-tNW=!0kAtp2<)ZLR82z^YiW zPuv@~i~R}_uI)oP;^92(iz$7_$=nY3jmA(b*zDI(whMcs*AA}XsyHS{l)L@m#P9yJ z=(>aj+SeZs02Sx$s6MKqq8y*uH*Vo*1m>S{7MCD>nqGCP=>oFa3?>FVPGc}Wrz7?2 zhM}?G>t{71Y@WV3+ffFpu?*|t0e1+1Q}e!hA-m{dF-kk!yRR93<)m76$ntDFA4}E* zakOE?PPs&V&6Dxq{_?b;ApDuDSqRDp5;8Zeei_G^kvgHkq9L6>w?75CdfyJeiz#}P5sO>Luu(uX3YT-0-vd={*I&N zhD}k8PO(Qg^M_PLx36(`#s4lgvFYF{uVSyUZkO&wHYJ>VJ+FOJs4=sT0q(xiqlI2V z5>LWu87#F6Ky5i7caiA%gm7_1G;Eo#ZPnu8*_db39RH{3yR6MtwZK>%zqYi6K^fAY zGi<8$p4E7s>oM5F22qo@zhb>a<#r{6#_rtnvgNKMk1xf;=SL_X2p*| zmCh1#9`;_WoWw;Nl-#G>4rbmcyuQaFJ#6~*Y9o5TY*-vSw4h2Y(EA490ZdFMjd&Bl z0Q)J8O|VXP=>tpssz(b?W$67Y6FW>s#iQNNDO>#mfX@}5j{|0JzGR;&O zmFgeB`n|F_kAuzRwZS#ohF6m={)Z9bpJiCGwT&Z-QrO>;l!Xnp$ zkn8DH6-15zJ2i=uY0jo1qV8yvrcd4Yb>oM7G$_~xNm=zYBVwjE;|s)hGURW<^d^CHB5-V1-*@ukRAMneSFOQ z&SYWq>W`FCgm1~uwc`!`NeRy%xRSCE{cbk1w|SvrM+{Ivlm_(srtxFxZ4pTZoIs{mW0*?U%F% zAQd8DiF@{5QH|33Pag91XW!(-y%TnOs~(m>SUfCUoJUdgr%N`!gC33^A5`xG^C>uO z{T}88g@ED>3Xf&=b4qQ24jAAnJ7j0UlxX~XkP^twP&}^CiTnOwB{UGDfk#>QJf4u{ zOYt*oXdf-s58C9pSzj}xQshn51lVP6!FjIzT-^y;4K6N`c8Arnu|>)B-pp zfsjzr^Md(46#ESU6qQTN*(UR2+PWJzMfC4zSg-O}5oH+=0-M)Easq*T9knIbWTC$V zuyk<}?QEktn`X#4%+lb8BTLi4D0uaZCHa8vrHQ=45NsF&@|I;{KdO4F3ZUK_K><3>eoEHOlV$oH)dx?Y-eN9^`MsubMn4AeaJD z2)S1;Qw40`wwz_Nhx&mqR}2E3;6LKxrhlkaE7S3d?loH4STwv*B$eHYV)ehj8V(NsxKJPT@Ff0{-G3PjdAt4ckevjQ3${2 z!-c4xju{(8LdYdH+;W7*72j7LO(KttV( ztv9La->B9dUOO>ROby0)I1x=#-86t3iMno8R6@n(ULiXj%cHUp3@j*8OnFDW+|Gsn zqIFZSNC)CAo8Q#p+wvo)!N0!AU)pD6$>wnA+w^6|Oqo(bFEq|^PY65r)f#UqU@slq zlg>ChevVGs!GpA40xJ7p^GxXsk9Y8@vHB;eH2Qw8{l`uOb3id%^X6Y#=1cDLgC|6T z5|IX90}@ngBuDA#h#Yk6>8~)?%?Foi)zK_M82VJ=aCy`=tWEG9@ZK0tNm6-2=k51@ zkK4KXmGk;f%95l`ufxbPI8;6 zisRDa9FcFvOGq!iiYxDX@J?XnYwy9JUsx3pzH@G+Lx`rnQ_Jw4g_pyj^lMfu?}JJc zX<3N%1QKb*^_s)PY`sb~AwxEO+1y=zRA^bsHKDKHf(~3ZN?6pAsBGNnhr`cxy%Rqa z@Dt8MP7sINJ3gYom41@QL%<5aGfvt7geC&nc%y*pp3J(sfdsnxivwY`!=U^Z0E1z| zW8sqUiX+&So1u+D?VoNC>HK1+)M-Y5fxtz-Zw4#$ErjM9cZcF4efiAc?J9bWqE&#H z^gyFXn20we!3ka< z6N=ReRA_RXdnw$_i-0V(MX-O+(}TRrYxTnphgSj?J$)L0S&0J)V`Fi=7K7$X`!;|% zrd#u!hYjeH-B<$E!>|GLqW5Wr=^Z|(i87pCQk>fGO6eR86-qE>7)YG&c{){G*~SQG z*N9Uk@#e$unLcVZR&UsJh8-uH#%jH(WB!(I{ij)7CdZoc!(=>Q{t^#_RZ3LnWgS zzvG@Df73udZ+o+*_k5)yZfsI+4NAPQqolfqHR86F8n9ncvfvI48G|V-^O{8^Or8vS zrlK_Wk7{GwJ%^T{m#F3gAH&NbEeZ@O+1QFP4r_Rf3|(JF{@`>KtK|`SNo~*vHV4v= zzNkM=%);&Um-D+zTO%$0Xi{}zlz(X7d}rbVB8LoYPSJ&D{=jH!&*^YEZ|voo zj!}S(YzJ2_uG%|HUdx!_-~IN@;aeQNIhGc9%!c+S2%D>#^t4mMRf&%(Q(nE}hh0k;5J_d3FDa56w_Y(C{aW5zbk!TWnlf^y5<-w`2mu|jQA>g|35(OSd?OR_xW zW{#E!M6Mqs?RG79q25pGfppJ&BkHN=g;UrTI%oXnzrZVKkIjw&M&~3|GuWLPZ<+FR zpjlM|U}@$i>64jaicYpCvptofkWs;HZtEIZFgqwG!87twc?I&LgA>a?WyN zxOE!_?{^aj^~a>^uORCm=_`!ugExr|PPu|N^+VY7*H~aV5ZEEt(&l6I4y4Ii^k~bH z{a_j$_YWO*!Jy=e1`{+AaRf-XJbqzeDuX z_4GdS2gPZ4>aKL=;et>9E)(8Ts}z!yduob)m0y}}jwCr_iiCiL4o0UphxgNL(fMZY zt^n%;GZ*A!eNfxlXDQNf3~_Ee*)zX-Lhrl}TaHNG?TYpn=ZcTWZFwW3RWj65mx;MH z74?OYNalk{ooS6^zND_#;hmsI{kYmy;xfTG=(?^DT@vL#kJGXqQ|gt-7iGbg9I%F| zIIBmt*1KH&HR^wJhMQv8;&Xu;15-)A!O@P`_2m~!3A#QQ+=kKCSSIbDteg=2LW6!9 z{yfvhZf9UVv>%V9EaSN?`xLw}-wY*nap;uiN~i4hj8zT+i%46I%UDxZ(^z;6Q8ygU zF5z}-uoG^ytXiv}-!}IBpDwI@sl#G?0t}8@f6QPFQ|$+0fy%be*a&;bSB7apQB?DL z%h5puF(^PsadinIvvdrcV{mdRuywUd)uO&%ZZkUjYx?)zI4VE0gn*gE_3F-a{t~dk(5BlDU;O+ZYo4Bkk>yE8yPdxw4|a(?;4nN+ob zD{3FQ!QJn!xT+vgQ5l;1^hB`Q^m*+u%NrCNIM-CMRxPok*y6wyn6&#yE56b%aSU)18SA5}IL4M;fBk7F2d>3YU(9d4Qt<2>CU0`zD)+E-=U^df zns;gWzwYU4By&E73Kz`8EV=5vNj@ zWk13Au5lt!f>vpJtL-$q{2?C%J-MkQe!A>PU`+XNmv3pcRwS+nA%t%1%`)-Ly=kfm z<|pMIB#vmYTi%w}b-bT_my;tu7@x-3-N8q`8|RPgTA#ZRS!BKZa<6u2#uQBK%CcF} z!kH4d+zzY08ytf1046ZBSSN_{P!RT<>cgU(b+0=HnFDEn?6qm*CU;Y=6yvMn_b3&A zq@2<6^7394{m4iRMdZNdtNoix*Q|WY&+Ywx7<&t#tlM>OTS8hwq+39`rCU0rq`Q&s zE@`EamX_}B4nexRySvlx;(69ud+oi~e&?IHhe4f@oBLnab)Lt0{J3M`Kk64P`FcB0 zTIz}n1J2LI(T%WG0+fY2O1S%inPKNpEVl;_<~pf7?hk7f3k*$9=}?watIekDf^k=Q zZnO>dAyByl@?HbX&qloMA$@|?au2DX?P!3w$uEa-E#nD*g5=X>b34HIMq9@%C@~Wo zYyEjXhpzeB3JXmDWVOT=`O0(*eEgzp8=lPh3lid;+=|x$0Kwk6bgdMEA?1#?E|jVO zU#yq`Vnab*TcRq>WhX4l2e{icgT5A*_~j(sPLBDs>U7 z2&I5ZnQ zSc~$oADj+GB<^sobpVCbg5%fCn%K4H@`C)ikZcY!J^kpIIFls`D^n)2kAm2K!Qm$E9ZpIssDzC zV=MdV@m@lxDO6UM>E#q+1{u;zZSi-w3#JpP*2k@iuq|Wu{Y+b@Pt^?T zTnLg#twWDbkbO5PLK&C{L;A3Xi)DY_X`vypYlp&nG`{!IVQvQpWXZgQ^*AL9{ho_RUy*f9>h>TxUK19sm=p`hb3=ajGwRF z#?mPFFCfLJ>PGQ{3@x;l(a{_Mdw480nOJgj%u{7w=bHJZNB}II(~A4Kwlp{{UwnV4 z;gHAqry~7G)GkJA9g%GE$ z!)qS=26x&r)&ZDXIxBsnQ8uNPMl$oj>NS97GnMr%gL&Thvsk{GZgpz$#0p9r-G{l_ zN=ZD9&*^aDYynnLC|WnrmsshmT%eowgU|9E3H=+wty8HbE2dxUi=gZy9Hsvcal?{{OD8CwuCDDLMt44nGqK267Q*D0aAHb^EUTm+B=4uSNlSjV|^q5tS~@jjySC^N9}j)2+io*IwM^qtT*IZ zZ%qvCJNyX=q4p#z1m4Fb5deE6B$gs8!R`CsfA!Dcb}{{6ajwC@*c23~^;#4KTm(sb z@#4MKa&5`|5v}?~24(k`Xf(OI?r+CEK+KA1E)AH~OwemQw>O3{0<&A7h23ozvNL7k zbJrEG0|X8(x|%9)7CcH_d6$5u?gywET<*;#r4ez%V}5YEIIxm_Ng z`Miqw(_Y}1Q01)nLP@#OISmR8R88@xJo$1N-+6TSRBuQ;pKeXwfAg%F@2s($H^i^B zI)st$7RD_?6@$BSH5+E1@nnA&^;Zoc%acdcpZ^X(TNV08y6R=REp;V~j@NTurRyxw z){GjZ2KF1@%E^?gh7)-smecg6a(*&*+wY^tV8tE>>n3o9Ez7~yf;~YucHzf)<)1Sx z4!w5j&1S`_1^(tt=)QW^V>7if*AerN7P6)H|0t6_LPIt;{#1WUD-7dyeK(W_t&ua& zPIh+o-Mh?Q$EQ!Y{;!pP)RYw5dzH1#=Q_YKn0u23S#)awIs`^7Wgl*XpXD@8yk3)1 zlcZg?c>UIMO%hvw$|CK-kUF$cj**3r*1zhTGcusQDI~W2N|Q2vUNc+ z?~`o4@q6?wx_hpm5H6E`!e&_e2G(bK2<9B{<3229%9Xu(&tQ1wICnQxNxWoU+9De1 zDe_L(NV+_58=i?DuAY9whSPrQwTg}vvzj{r6VbC1l8KPXd5FihINbFE`a-w4PhApE znPYVI&AO?q`4v>JR?3z}w_Sb^J<_eQ7j}56#+jsJzka?4Eay z39L`Y;e@$PLfxMR!#zLm6rt>{lz&pLpE+i=#hg4^hz~rijyCBi3e?dB#;9%jpIpaR znO5t@BPOsdwPVn8K0n7IuRd-b@AAw-iA?X8hYI*w%-Y{wTVr%$1kA%hCq$oPrSq)r zANA|-6b1Ww_v`X~Eq5c>>`X4v_$s|*b=%u#s{QKt4Gc2AbZglOGJT`2(k>T`Ew+lB zjOl>uhG#4tglm|!EG$HF^y{ymQkpA#6c9Y3xavW&iF~k+i_Kov;ccNb0zR z_qIk!w7ZWEkEK$AN?38NZ3Da7cKa;eo@7M+VksXm9#!y5=?)@G76*hhQ5wADVPT3p#qxDc zy^|t3;ADR%Grh3%M|_=o$v0c5Y9CbjlrL9w2>O1M#=A~3kA{Y5&mSwp7DkF6f#)Z; z5z!=5D!TLYWq?pRu+VKSV_B2tT*$vvT{iZO2|uPDwybeRtC6qfyI5@V{NuVZLm}j7 z75b;)vd;yn#(!xkY{*d;hsy+x>8JZ#ny@FGt<&|BTS%a?L;4otKP9$r;LJMfFxr#1 z7zuBKO|My|IMLVYdB@sv9!!L6nXudXl`YwYzHxKscmW6g&Lb=HDhIF}KVpSsIz_Ti z8o&08xL-eXq;Jm>No_g*u%%w65%X%8@@a$TB_d|lYNx2epgQYLN5C?{rWYkkg#kjD zUlWQQe<_4P2rQvX2;kG4#@=R_x1{aUwd zKD%nXJn!W}gAK~4bov+#Qae?zutjZEa((a`RxY(DF>f(xl58oWM|SjtGbHbKrL24= zwe^UG7L3Bv!tCzmHsVi%>37Er}LbEj#$2;r+01M=O^$a}FeIgv0$UIZEfXlywJCm=Sv(@o9&N;J9B-L?Cp^}01b zsP(;^Rgm2qkEKpeDq1Wy)3KOh&ZCHQY=54nn&o2T9Qvq5H*j`tKA)ZZfjLEg!2;)8 zUM!b3^9_^yBaLhY2a8}4=T=`WR{FQ~NnipF+Ra&n?z(J3-t!u!z;B%0Fx}y5zkSHl zm5N0!wY}y3EsM&UvZ!KDvrqS=Q;XF-=qF9cWB4uX>^{HsXYz3$dZDFracMng(aIkF zUAX5yxvaZKt!K>P`?%++s+}b37QKExynJAz90h_G{L0{igpRP3PkPuINVptdy&g`* zesEa^(<+wy*Hm1yeNhWPubI3yBn(A=uHXYD$DLkWHCvg1f!9oqAQ=2 zH`>$SBXZoo_F=hyd;P91BCrA@tq6xGqgBn6!S<*Bd&4bQhn+6dzQkLmyUmB=nBAx# zD(mo~iNas=7Mwdpl*msGS3KlWKN6UY#AOfnC)2HGKF;XSid_}p8>%4rei-o)`t)(q z0k0o^fps%ob!f9h@fZj!Ur(z#XWP)d7ljwd`9;cTt0Pa;+q91IrWJ^K-P49Vk^;4bI99@(B z0Ths{te5$0V==Jyycs4=twNWPi8u%P9MFny77>f8!~TAd+8m>P{Z?O^@O%71++iSg zVSin_Q=#_nfBS1={`w0mQC&HRN{=$ipfHxYNWBL=-h8!6%qojryDOOJ(3Os6*Yg~U z)g9k!X?@oLp&%6bbId_~SGsC9TVTFom_{-zEKCe=U7Rm37>e=d+=YUI7fdk^N3hBOiK=<{4X_PMvh3@^SYA`1hI$ zzYrA!{jZfD(tfY&u;5&PdeN39E`silgXP(jbDj+F955 ztJbUL{&l?m7x0`4udA0liEQlnOR z#hRNC#e73FC*CW{MilP8xL;41tCjrvGzReb;OluSml0&d5x+6KL>dJy1@SlosCPWG8{+lyZa1drk)9@aoiArt4Jlp5?_)j${Qp%_dY*gW>z7FQ^-wL zxLFnUEG9~{fd+b_ct)$eB;c9wXaDPbVBgC&`s*Dw0ir(PZ+6^gMiQXx<<%xt+TinZ z0bD#IL(KbdP*N+81xH`seE4%S_{2}1xp-|#Q}Ag+>w`)wc-&h3YN|SvRfduL!2!SM ztOMCPTB_Yj-}j*ftJJpPjYRZaYWS#uBMoMzi*-N#b$SCv7!-W@sz3%VM)ZZt>|2p{p`k(&&Uyhg{ z#ZU+vP1HRYs#$BC_O#@YL3}A4x%f&6WIV9sNdk?2OdYvQast>$54N1YR@faYRdwY| zseRj(ks^SmB?9bvX1^S{ ztVQ6Kd*c~eV_2Mrn&x8?pBJ&f6LkI2PAmejwa=t`XdH8U@rhIbY05M}_3}TD>PN{C zjl&ysK7O`d2h4ZOJvSKNyBcr!C$TR8Ux)f-%o%L)wDdW2`as(ubU*z8O-pap7iFio zcB!U<=GIO^z1$=mf?&Lxf;!YR_mca`U&4j{8 z6`UIuFZ>ch;;mqXu>6RuNU!dTUQY3$-QS$s$@byjBS?ujrA}nu2+A=dh@+Cjj!#>s zRSwWqRyI1j_Z*&1oi7X?NXyDzm%5v{7ZeskbCu_jeNKa4r`U7tUs-uoBVsR;#GvD~ z7%>vB`6wv%X314){)0$+G}`2`r;^h4@t4xGuuu=>0c{c!SyAs}!93DEN!J$Ww*wr% z>(wULA3MG`l}WLGoJH zbh#z7bEQZ8VP}-o$2RobKg5=B9_*j{@T{|9DvbIi^e#K!j8w$(9q!fLs-JsxhbCqz z_Ks}{$?JO`r}8q}PYqDYV|vqco$o{#i(=7hM}9-6_zjF113~q&kYoaXy>x}r0SHkKFk5Q5Ccw=rv`{|PPgu*z9xXOfRK{jB>P14ACS;0+%XgoiW}DZRC{(GU zC4!aI8(KwiF6X^7>DA0V>^CnTcQTuN%kQy%@kiTj_Vaym(!u{)bgBR{nGEl$676o! z7!-=#FsMGsPtQjt!$!y{EA?G|9-wY?t5yFNkdizuV<-JA%`mf2=n%-1L_ z+f5&7eJ3+j*qzCU)(*G_t@Hfe@1qs=(=wZ!JG<0N+5K^St$%_qjwZ!GC=or7Zicix zJ=~t#t#5&9Z%s;->HJ&;F36aPDQzjB0%YbCIx8p`kMC*{)D8#}0A*7+2-{SsDX8Fg zu~}BC5a;*W-Ins@559&@74v={e+F2z3R;`|ThwcbFVNzDy&e)?H0fwJILI3hCuW=5 z?oV0w)fv{&s-)`MZ4FQX-AEL`JE(**X2y!$v0QIXGGuCv`i*aIx6@*$f7ILE{MMT- zTg}Hx&EtX*Y5&xe`k_Rt^_};_X;6un@IweVzHzi_(0U!+1_tXph^A!F2ME(2giUuUGV8#)7-^oASZWD33UF0pac+S_dyCByGs8F08*4~pA zPZX+@23NVex@D#@XnhxkN2k(SBtMMoIO5u_vXRkCbq^TDxr@0?(DLFDgVZBA*=J~# zoTom_@@PI&C=-V0jiJl@Ev45>g`kyrz&(`8MFB@H8X+j3tMzt}V<+6r=AC$?K+yIb z))b$luitcUb_mu>8gmxI-;|(hrwqcJ_w2X48Gn9>8V0(s4MyaSTOh{k8zc8oH?_uo zN+|U+qEmifi}aaFhbrE!KOS~(yd*rSl=YZFtwB{XhLYrRe^LdrY<(~n{~pZqfV7f5 zQ|AEg3CVR31_6hZ048VXZP&V^z*CE3tRq@}sfkExx+LY2dL6lsWsKtXthcoFiF)79 zk3f`^BfP>_YW0Ii721Tz+i=!=X{n=WUhfD=!78G)t~@BL>=pv0R<0~*ZIX3kA8 zdvLVe$Pf}wJJu8Ct;%^=AR~%v5F%$7tN1m*dC67fk2o0964K>>5hO$*cF7Jk3Xrr%b!c->z9Ve7u_9LD#kMKfHjEZ@z||6!Zi+gBA!0e!_GO3bx|qQ zONzLjZG1yEC}Um9Aes2=>Hbfyi&iwNxr%v+G1*WQX)fS|r3$9=_UdZ%Iz?X}$GW&dB6-3sVFUZp zTOcZ*d}O3X-op>rM*i#0^M%|e)J*!Na~-2uU9oa^k%~69$sqFS`yH#M7f|2mwHhRr zBKXE&Xp&-A`=)hqU8Z z%@*lcimp2R%`)_&55aiXMu+5Zt%s7{gsb3=UkQA%ei^jpeEI2W+ zx18@V(+p`++R$rvf!5|S=yH)@c+*ygg9w}4Bju)9+H{)ksVi5l|LaWdm;H3a2XZ#g zI{WRCCx6B&QQ+w-HxjTHD}Xc`2)2#V!!}HA>ws|a?zk~e=V3+Way^4pYqTnM*cp)z z%iP~BueW_w`;X_?zuzPTAX`XZFwh%_2JI99UswT4V0f16Ip*1t`|)mlHV7`=xqZD} z0#apS$FlqKc1W#%11aML{!(nA%7y7piRR!maTCXxhXmF8baYOe6>nx;U2iGR_>@!_ z_KNXNj(uUxNmw*xFl&<`RPai%fd#ub&Z;BtTZa*cce(VoBL!sO^8pl(T~&3vJb z$!!$RfgLpW#<^MzdRoTMV-n6gc^G*bW9UDLrt)~bZH&qM3bG)27aN^lTKc#$o&PLk z%Iq=Y9jG~+zbH1R(IUL?DL2Ts(N1FP^9|53N0Bc%q3&B3DZZkc`A4@^W5hBIfXAZ)8yvq6N1o&U1SXO? z7!b^%2()>f8jH(nLAyJa^XZx><6Ybbn0I#{E>T3eN(+_dQ4g@_6;%V&q-Y=@=&H)a zqThXV zm&0cU0`BT~*$~g1SN5UjPL9lDx*<2Yk9Sv}(5-zG3LGSOA=o``#Cb^q&hxyR8!k6P z)l;-U9{>`R>G_xmBJOfu6{tKkiqzxW>_8df&|+fxL7{o!5q$%3lVMezb1wNuRkPT zu-2X)VSkHkw&yh2*&_NWGywt6>ossg6f$Y5dn-Kw_74+?rcjS#9uHmDeR6kFk8dM9 z5b~K|k%Z2+X}(0veTEGj7K`!8U#x>OJx!V})^M)(+^)GG8j;nF90l76oSbe!44T;Z z`@TlPrm}?1i`}#=*N~h!T_dd%^=5DR=9Nxy!<~`Uy=xY6DlEyq;Pg#qhu@5r4i+s- zP0Q(CP@c=(A94Hm`x4y7x_aGc1DQq*FW2DxGR`pi%u1u-yb=A#WT6S){kgp+g4eDU zjHqYK5lRJ7;?u!!*o4hjbLRAmwBEVhg^Y1*A&pFVoR%*0grYY9KblNsE>tYeYWAE` zDJp^vytc{p0NDtOm^3OS4)d5L-PN2ir_67}z`RH-1k|0>k+V>DQC+EPQw*&db0UY{ zcZHqDf>@6A?ue+I!BpI1m$8VVJzoR4s)Lz&p_bHEfx!GHe=n5mU*L9iK{S?bc_O1n z&JphQy>FuhZ}%N_=ixviGgX8Tc@h0O)8EJAe|#lEZRq52>?5oq_o<~EET<$^Kck5AorTKzcIp0vf257xyuRBX2cCB#21 zv}&4cmP=${@K=Sa>t;?5GSnTHEwA)~Gpst^65C2ZSMmFMQ|4yt2Y0POqV7-j%BZxy zUCDM4go~HeILyW|FqcBfI08hbu?(2@IEZbbEw*PtL>p~?o=g@x%Bv;!Id+Y6or<~W zw=a28XjtcP&)dO|k{8uQ3SFcN!T3l;= zsXd&rUHj}uMq28;JXnn7qko!P$P-ree2=TUPfa>s;e&4yhX!jzxWZDs7Zoza=^vBm zQylgt)PSXl1}xsjo6z4$=FzHa1(COLt_KY)2(TCr$n~I0Vr=eqNruMGcTb5Mc(B!U z+p1__=d`86qKKNbOPZ)Myrnm~yTGa1+yvEas@t>8X%aFoFdcMQ4LhwD;9<-P0okvN zeYK&a?Ro-r8(0AyM!+3@Fy9I!_H4^g+8!;p#46T*aEJCXcIrAz(i zsWQqn(wxn&iO@M~tro{He+mV?8jbcJx}EV16hv$qL&D<|b|>h_k{H%rtd4zOa$Y4P z9>Vx0!9#fQNh#WN#U1SDsQ+Bss`rDr<-B4yJq|X@J4L~VF#xM+;6bc5AYf4MIh2jj z=khRqjoZ0em0$>y% zil5xS*s{`(eVc4WH@id*jX-5)6Aew6D@4#1*MsA>TEI?ZcKvQ(;bYFI?Z@6M*5`sr z=vEeS*Zu;JrhcV(2k2DE(_BNG%1-3c z*lR}P$<2${6UoT;tETq~|efxS{K*4>)7=*eot{m_zI8 zl%*h>lu9+_n!kDu8KIFu@rGU~-*AD*^VK>pb`%L+M^z%Pz1vtsXj4%Q7!it8E{2M+ zo%6f}`oh@Lab|)u>{Psrt~O^#&kji>=gpl?<24kxd^!v6lm55 z8w|~idrX7IFmMIbH>Rj;Yh9vSZ%KyXeK5I=Rwss+-GEZuapN%kGBk#2|L4q*4>bfi zDBo3gV4YsON!;qm>C?V2Q$(=A38qe&Zid_t9T4ATZd+vFB{LZ`B=gy;@AmSIbLpr& zE>RNID7zWqJ6~!Ew7yb2PyNbhAbxANS=}D7>bj_uD(a@P3?bXHElRlXy)8tTSlLh! z6UA87YfTK(s{aI5#J%v#)L4bl7wyDQj9MEiSVRfwD-J}>ki#X6*H(QV$mmSy?_?s` zsH;Ry?i{y1@ht~kr;~@o_rVf*pi*0_e(V@W{_qwXQdTSv5t@YULr-gPJu zE=;ekBFTO*ZYN77DGTlD97Pw*W2_YH!C+-{C10Ys8yiSmR#>w0{b00i`a4fW8@U$> zt8)_H>kTUNASzNIqabwe57v-*E}ZF%6um`_JUNm}ztdngWT|A1Z(STNxAss%M?>+OU1Os*LUu6lqlj4Rl4^9+Mmt|KD#6zXd< ze|}v(+$Z@42UE4O74yy6bYD_U!jAl8dCxZ5n`CMu>c>YGBKE66%Mb%N5o0S2Qi6Xh z{+|S2Fr2|r1fu4c#t1SX#puboDZ8$+bXhf(*^ELGaJ~P0E9q$&dDi7;i|19@I$J4* zin)JE+BN$mgy&&E8#Kue7tvsF@8pT-y#AK#!w#bmqf>h@O(^_5&Gdjx4^k(oY&So! zoQ%_hIOZ~uN2F5Mt@Z9FS$^Kf;x3M}jr{1jOY4fPUNX>$&FHpAA>xe*LLtPBpR;Pe z%|Hl3$i#hUk9;Xg|2Tm_722+Qf)qYmxjiDfIh42wG@PzEoW^R_Dh6`)gsYbK1AU$> zbMv$&F&`j9dC_F&z-G!_!nK|mZ=ZD2RLZ5+*}WAWInInuUF z{^!N}*X2xv{yT;$`pU|3impBB6?AG)Iowm#m}|mIE*RRGKpEJzUXQR_w}Yfht)q+g zOFMc8d+VAog~O>k76%sr%B~GuYzhG#X5%@<7V`~SLD|4s5)PcPze2!vl(Rb8>sG2-e zq=s1R=ig3%Pe%L$sY@xf=A}FZ?_+9Xf6%rBG1u#_jKhL1=>lcA*oC>Z7E3uDvYvao zUt?GIV;Z^rRRt1WsPc5sNE>0i?N!qiju!fuh0o*Ab{q4Aw2sHa_=D9GSG|o{j{`-! z$we@Z+ArqnkV~>CLAEm?rPW3|DD?AWK{mFxjdf7$5-QR=KDkpKJ*qpSZ{Nd}W*9rZ zK#ZmfLg7z4%4z$ercI#AelWx_)%(05Dd!}unXnlh!5_8J8=Zu*>-hjjCUtee(cy>f z>#?HMjn4)Vs1v9{A-iX|p`==0C3MgSvIQh&?XoXBml&Cu$I@l%UP}||+r3`O)s<*a z2q>|ST_OTc-TOqGHg`FZO(u9hNSBO`YdE{31vLz1`V`LmtFZt+=>FLr>TsISvXjiu zU+XPx2a=wQH`?j`s(c7ckbGfMiXYON47uXiY^nA4P^t_(yQ}0^ggErFUh#aXt%-m^ zPuzTe@!f8-Pon%!xAnZzOcCTu1W9cpk1FS5ZA&DdQ@qe9J_Uvype3KYwq>XP@V3a1 z8JgkN{rWJ9*+|NKnA>J^p;oq4F4ZrzYG}T4uNGxhW$-(jmilATXFlU4+1w#K-}q(P zz7w2vycoQ7WpLqI#?z-bBH5ERpJT2gYC?fWbTBTdlMR^(|@~uFCgdeviHcUH> zJctIVf+!=+m;(!ld}Q92zXD_HaQ%La2i6`sCe+m0CsxL=E7hsX{)(TGqeQ&f~l)K-6un&AgK1!)|END*^C%XKcRe^q4vuFL-Y^=;q_%(u$>y^x8kpz94&*Fx*UAnY10 z4KMJ?<6aAF5LIp{G;|OWyUp1EA?pdI2c4tb}dUQRLp2vxx-$<0#NuSwnoDDy)qfbr}kswZkGM2 z;_+4!MzSE?5ZgBkn2q0&54pLzwN8}%Z44O?+9XN4;>39NIBeI%!TG3EuM8Z-Y9EXO zPN|wm+p|xT`hF7xDny2v{rY6eYE_(twD_sOrd&?Ht@3rKT&R-p!_nDR44yx%ef@TryO{(gB9s|zGYTBwBG$uZhZ)nYXJLhzRkx^X=Wv~Z(m6#WoU1? zM2lMqyQ)*6+Kjcwlu`7LfGg$yRgWaVym%Fe3}GJ^P4RJZl)@&SwNQmdD4NYJoF>N( zTCQFJ!LSkXu{X zp2fiBsUeZQ(|GQnVngScTl-zRP|(E!!-a(i0@mcV9G{D2L;4o(dRKU6<*#HzCk&kR z%!o6yMOiSG@L|yk1j?C}FRG|J!v!H0E6oGTtGN4eO+UNhyFH<&hnE)3VcfYW!zRyb zY)O>tg|J^bSu;yitGb~!hbgOjYqXrtv?XJ9bYfRusTZ+tD}A0+@D+VNoF-y2KMY@ z!>$v(@B_VHvn7`9yVKTRuHvAM-v>>gK&^emh1_&^-{geNAl5zcAqqvO-r5FP!?9?; z6-W~|G4*=OxEkv!s4tX(O*RWD#_G2*E7OXMuI1M=hvTKrC{f<>B&)>n0Hv7bg3lor!L)Gv7ZpnUIC@M^;U z4K2ee+KZCiWTTN4L1w1`j@c&D!f?TF35g;h7~{QiS1+o+dzBURgCUp;GgqEGYicM4 zA)exKbyi!@wDM9TY7%sHv;SAo!ljZRadOu$}u^ zf5ws3#Gdg0Qc*xZ7nieJ!e)BD$W;((zxtmp0CZj_96k$wdX^Xxmy9$HQ(xpkvzB<* zWiuo*KBA?X9uAIdX6B=U(3bm)qe2y(m-$L+fvd5%+RFFXA+Gb7zqf&}ZBFU^9lo*% z0iTC>gX8hp0No0C73h-9xjcs)_SHT3*wHn~sTTyiM3uc8y{AT^yTjp80+xW@)kB11 zw8aMJN!JWZ64h8X!yR1$Wb8COUC?26=j}F|&q=wOx&b=wT}GF|AFQK=$WcSFp$e4kd7;D9v-9vnzdc<$3UBv6-zNR1dRsuMX$A4`Mrm#7B3{G|kL+FENGZb_-YA@wh(FPWk&m3u$heCbL_ov_h>u zf(qOgAG|OHBt!Oa+t5(-TU6W&HxOqrspLhoosiC`1jkmAQ_-MyyEM zjJs>a>HIHC=ZPOD%nqCTa2GVb1wW2PbG6Yx6qW8z6k8_ZTlz_87JgHjz}ZGKI}nME zUw`*qEJEvg7b^^QUkZ|JMF+acHE>leLhidBf!Jy-PHX>>=3oQq&SBl}`HQW43h4yO z7`>X?KCsBG}O#-=T`Rh$kXx*( z@S51i1pWl)iWZ#^EGJHgAXhyDXLsS!g?tEKAa=i%1O?!x$>)VSM5K=f)gL9IvC!B|xFY?Q~UXcpMf~RL|SyN-@jEikU&!IjwCEtMTqZ>NRO=0{Gub_nbNgm$R|jvs!rVRKJuksFAyM zht{ZNw;hzzY?r@2rD`lrb6_r+Bt)UqlA$U??)c@(1khfI67pT+ZRlRa6*6;fuYc1+Eh%RKlgZAvF6tC2{1TS7n08A#m-djHn}TV=_5 zCDqJGc{v2N_@04Zhj6zz>P+QVx;fQhpE9>~F z`_k#$M-q-ctR!&m7P( zv$ejENbsM2k^hD8{I+MxaUHGWcYP2B3NI=~B)8Nvkg{3th_JeU)?SFR!KbKXx|;*eyhuHgF+o~b5u_{cBE;Kbi@&l!jU|Lqyv2@a-fkt>Bc zIJ36O^qGpHPbvR@{SyC;O#0G_o^Bi2T1(vjFUsn_cc=g3t^V)7q=y^f`27-_@ZJBa ztp4v>>wo_nZwi5RVsC4~xU_#TKmWeN{C|J1i3;8?A|sFVedqJo-=ppdOXAF24`ujn)*t_GFr1>*VL;O%2 zmYnASl;Ah?Yti$saNi3rct<`(_4+jyf zynYtacNXY%{7l1Rv+xIDVC~f05#e;;DQz}Yv?-nh;6>itM)zsL*>cZ#=$FMYzAq8D zh72fx-{>y2AIi^geu|(%@9~|_)6wNdX^ePaj*7jKHRN@edqUvn7=>Og@T*E zDY}}+qnYw;Wtb(^uH`urfaZ)>uE^bSx8gzUMYm?H z)uSlkaN>*kRZjL7*8hIm{pbZULDIfG4GUBn$z6_J@5_SEIk9N-Mc2qo)!#4D19UV_QKrzC*|;xD1-9MjWP)lOdKyQc zmCt{F_L+CNZs)LeVzOWl??m`Xxaclva{`mdY96jwqWG&WY>CZcMtu6!Hn-DGmKH{k zWICU2_3Q2!BCne$#ZqmdW0Rp|H3~n93^0PfZwL4>5xzUh((}#mVJAl$G6inA(6(5{ znZXnmhL}d9iAA{kKwI1MExHR1TvIGM&9|VX>TDR`vJ6bdzsvvzpbhGE#XTc7uomQi zz#CcDtBXCFDh_I^uH^oP#h?wR6Z>ax()^NF|5vb)YvQ6Rk3nGQ7#JRIZ;q$aqQBf{ zwb}4#DF*|}uG=ZjMnBKYCM(4ldN>d2xU5yuiqtB5K|$kk#`~(MUZKeaez62ZO;5UJ zmYNJC^a4A|rW2uY_yYa+XIi?Vu#H?3x!>Qu2-={%iw(@prj z>vy81+~j+R1&atmR`n6Ak)Ttp^#ArW`um>T79!my1FN?MNzi4I=C#G)eArBF%!@Q5D(_q^- zco|ayjaW65%DXP^mja7&)DLWHF<2`3goo7|)E?(V{yCp8;$`-%pWXv%rzY^g-AkTa7~G%0wO+cwNcta}d`W&1PX! zCb;J-TlX1+>#;|Ouj^>VYcZ}yb%Kxx3$|zEdkT~aSIaO}9;NeRp}7<<^)f`IE`d-(BMU2C!e2!X^T<^%GCNMs5j0fcz*Fw+d|q@KaIuC(kUaMXoadoMRMN z{KVDxWv>Y<(h-c&2bblg^~?n$DKlgTazvn@6*lTDd%dpXk&}$2&#&pfK(qwj`b%=B zb&jqNVvBoI`NbtT1v)OTI)4HQxi}~`8urEXDu4*(TMa7WU`#sWH=X6b_I`lgMPK=G zL~p}Nwc8&s39DYt0s?rHB8aK9ayB{Z;IA1F_?qK#j3`ylOzz$)oNX?!qXOG3@H}Pg_{g16Llb_(x z$tJc3{{TchGt~aBe?X085*y5iXFGmmBGQ%7ujdz@#F7kPvs9Pb9wH!bWtIW{+D#VI z!|pXX|I1^30ebC*yzW1nhJY_s&)27H7|9)(T8zQl73yom==+RWcWzgJ?DmtHii+VECn3DFn^pfi zuZcL|!`?euMbB z6Iiv7IB{{yUfS0UgX9WFUVx^p*U>pJw?5q!F4Wm}+9Gj}n35@wG!s*PTKy0Z%g0m< z4P7;&?G1)}3i|WW>u#Mv^5|^2eGqeI+Obav{93+OzQE++WTJ8#RI^lzq_=RAA^8F3=<$INDe8%+F4KMZx zHswyv%u+ofUy+|w%i{S+RdZ53GKaC@`z$`?i6l;Lnxub0s(;@OGR!Dsl1I>qz;6>D zaqd;r`Gw%|C{MjOS^lZcQ$x)^brOXFsuLiJG4dmt^~FQQpD@!4VNETN7z1V{>A3ZkrVYHYeIFCG;>v;9yjU5kb- zDpZH!$!d=DT@3_6f`*`rdUzV%Uz5wodiEec4@$45+**XyQrWJz3O zd$6#*S~K3f$KF1CrjQ)kJx}cT|LnWY(VYSw&gfz%YH#!Ar#y5I=28r5^nDbweuMpe z_|hLxabiuX-kWGBFQjHtdb2;?S=0Q$MFEzSu14-nJ1?^)>+~lWMY-Rqfc<{T z<9Rz61H^8qwK50vi#C@1?divF6oe#4(XKcMnt5$yQM)%>FyMyyY!>G zOQgFS&f+&SduE?A*WPpf@k0E{_gn8;&vQR_)HUBbOX)h->w&3kRr@;o0uws$!n8Wn zG@;0oNq89;4>rSekoX{sM$B7?gZfcHYzQ}BCRwJ>la$x8(0UhmKgiS_=&b`xa7cPF z>iD@f?3TMP!%j6Iy)HUSNU$3BPDmIPGQ>#^{q|fc7tHYdqR^xiT!j~rnJEV%#3LLM z^u0JQH58WkfV_?FbYpOG8GQmVtacr8g$k$7BBImg-69ILE$v-?19fx$W<83~I%hP* z=QfgjyV+cm`u}bGK0CuKY?DPG+03`TBRp&eo*Or3a~KE`WEp?@3%s{~#UEkX`c zDBE*o;YhGPvacJPa$eorQk6IrIqjNJ1j ziccwMYADCPYq;!7!@HC4rKQ=m@ZA%Q32(xrrK|=*Ers;crD++iuu%{u>bTzEXTSU* z+*W5cF2PeuB!ov&p{M_WceF?a-ftD+wT`&;eONG&3gW;KA-iISsGCXH#a|U~7=?E- z=hG`AL9itV@|d$w5}-x42_jFO=by`Las%_m#i){LT4o-ZVT}tR=6BB1!pm?i$Y;!4 z@xqhwB^v3{2gr+LC=p0>0j23J?&kM+jvoX(&PU+1G@DIdmSNwVe-jLJWI2Om2(|IM zUcIG$mtMFz90?oITg#&A z{&@fR)u<~3;UqW<_lEH%POJ2+e&h6s;PjaQrgZK3Ri@=_Tpx)j5Jwg3#dZiJlmCO_ zK?(>Q>``8OM7)kt#q<_he0GV4KVvB-!Zv@*;Ru~%0P+KyHm`Le)o|>8^~S!-*uMVI z=?*BrfV2<2v`X2jl(k6kKcO+wN z)~K`zil3q`%Z+dQRd)g13M6!aX@CJREuM4_Tg7T>V@~ObJYC=KLprQ-zDBbr!Rg#MB+^7!G~NVjD6C z$}@ZM7Ud_B;d-xI!$3NFe`tyH+lK`(!QNwqYW{yBa-|t_lkIzKFvw#C$n&Ijk z(kvL&yzl7T+jDT{Akj!Ao48eZK7!eLxpXTd`9i~)zC!Q-#+?O^9^YOZ|7SDSuztw< z+{l76_uf};MJtY1`5wP)glZG5Rt5ma#bFk z05!*kj^Ou`mcV%S#_kxa%$!M^e zgisIb7QGRk$!7+E^1m*!U!f>jXGDOZxY^HZx_a*8IU6?EIB7Y1hLbZERr>dgU zbZs`jATv?(Mg%%vi?~IThQOij?uHnU*CMqlWVD)(t;BdE5V+X_!22Iv@@QoH*S=`c z7R84{pJnqyHU!pSTu)bZt)kA49sTGqCC*3HpC@@(%Ih=LeUo}vKKaTTxqk8MjwIBm zE=&}4m12dF;B$UYLi&2;E7*BQ0R22I z#QaSxLqn!W381K|hTyQrp=;*BtWWqoSBOloZCTVLDi3OMJSgsreKW4_5YsAonVzMK zwwCmr!GefA{JL4sYsJ3NHtW@fY%Q|oDHJU~NCPWJ3vw0q&q_{9x-HSui{xKf{iUVr zMbr5$!{OoX-(hvkyif{G7%MO>xFXi%`~qjX{m_XJ%-R{+uSi->wJEYYn(Z!=sbT?Cg!@A&+V_j1S{qa%VPo7>*h!;iR{I9_uR8ZRpG! z`c)67qtS@sKyWJPXn!Q~+-$BU`D7qY14u6RG}~eIC{g@RnlIBi(Rf|AeB+qZBodf( zupsR)yiDAYzL!)C#K8FP=I|kUA$MU<`?_>VbG(^k?8n{Lz9iJg9rOfY)8b3S>9nI7XgqPWxBU5gZV_9mE zzQS*8&BvtD58%P9{!%0nt)#_F52-X9J-Uk&v<}SvKEBpT8!7_O;#veTO-)vZH%3(9 z(s?_R=Cu72++Xw?c64g(Yk`w)Pb?#dlQ=O6Wj+r;V3@_cweQ~;j5<~4bH4r!?+rAs zJMj56-dDt`fCNhJd%I>dO`loY=%Zd@=@#)X#oHUdcPX6G=Q{@5Ny{uXW{bs_@SmUQq7_5_eWZA-4OsQ8!N=&$)T<`Wi;Yfm z>wpf{a85PzijlB$i8ox2ICcC7(kH4kKBrL#DofYSH*QW6&(sPo!LB3(t3-{U{h$+Q zIIfCfmPU1Gmuc~^7n5dHCk2{S3MR8-Z}Th>v_hwfj7|LtD8Cy{V(7xa7hZ@XaNVI2 zv&mJP_8ZCPUxKFUc&)AYdRfW3j-1r<$gfqXchv}|>1J=fN#imI4wYa>%~Mg+w?Qk4 z^ijWzg`pxI*LB&q|D!@rd3pMVkv#6wUFL#lN~iG`%*G0lYowFef{bLFF0X%cK777_ zX`U1&tHE=Gwqc-%4S+}AX%O8qH|&1iMZT4n+2$Lv)8ukszJ};(RHWAwC20K&T$1o9 z8W18Z$!R^8*)_hV8`~*~j}1oxCEXc`*0>Od zA;9u*e^44P+As>oXk_KisA8=D?MfuSSL4}OzLUWs2TIYiSA5)4?FQ3K zi;k2;TiXkWowFc!L8e%>Jln}`WZm!aTWyIIa}ZOF)x5Ji6fH_20jGH>%3`b2nep0h zWOGb9lo;r^bW}H>j4{9;aB>L50XN9swss6Bgg`yMLvdn5{F!_!3p#_=X11$YYGaA$ z@sa_fd$XVJwf4lTlsQ-Hx3}otHb+Yvs@l2>pyKZ zvSgzTR}X}lO;s#&GWz~F4ToQFfeGKVMV zS$MWTZs2@4M**Z;iI@~27F^>)ZZne|Jo{((6 zdRX@pJ~_Xuh_4z!r=OVn&QQJA`x^j|F%@m;%lYD)iZ8yu0aL(W8{2&B_?pD1^{yl#Mx=7yiPJ0BB+g!p74a9LgxA{I+skty3lJG&v5W*!L|v(zNgpv z?w+RGdKW$={i=#j;D8*Jy%%AD*`H)}Y9R}Z0ddInB^u>hq!^lF zg6?M{tGxrML)Odm1{5umJaSR^2eT25PfiJ9Hqgv{?H!a1&w)( zBD&xZ2p=&2p3iSu5^vS>3;IF);{=1r!E&38OK9IF3v~b+?6r32B=?Y12o4{Md$s)= z6r0#1m_Oy#68h>o&7V`&ymaz9SY4c03_@xOOX`@u#lpua0A~p${Sa@Li1^W9LN3cG ziQ|+wyB3D3-!rXV@O~oOV5*XkID72W+D`A2+Ywfr7@xh`@qGCVcdfPjAmmi@8Ybrr zo**okh(W`i1`%8uXFU_y3R2rUAWq=-iYL9{Z$(yL4ylampPm-$W*?X~`QZJuE?2^y zWf+zJJmLnETp^4VkYB4EY63>Tw&Lw6rkY~gWEdj95QhKg4uN^gE&{dF&Xltt4pZ9a z_#r078y=R9S8d)9!eLN)r_&jWk@$urC$SngOqRJ7`+R3$=*(});}20t5u7w(+X`o4 zw#?)5^L|m<$!oL6ut)}h@@r*h^yd}9H4j8Or9`)JEObV(V>Z~X=clV{%RSz}-(Yrn z&vPIC>}I7%C4@LAYJDa=mpCw^@@u6$(agGq6H_U=Yg6?p(LYC{SJ+U^C>|F40h6y< z*-)SvT#VUD>{2^s%J&dx!rP8M(*z6uT-GBVFgc}7QOy9b$gg1acj)?uFxX`NUc^9HP_VNGa6p$j@!E`;j3QgsA zQzk4BYZ+_Nq$1$|5EJD?QsWtfHtGZ*Pf%f2-96kM>igmGI)2vJzGppNqltEEtJTKb zh(0$;{(bQOyQ{l* z8Ws9fS2=$hvD5=zgi+4|ZYbRo5=-_TVZ_Uz+t#EUEX`O^-{DFS&c*B^{F${r2~F0O z&8LW>AHU^^W6(19wU*ouHxevfX6^9rt&|x5^RLHAEdm5Tp)tJdB4y}c`)^}*FxYu^ zkYk2-_UiK4RN6la%6|h5`@--)aRi37SgHQG0@A%+pbQytXhr2pA_{!gD1 zBM71SY)n?EkV7FHORfLBCeUcv<9t$s3SivU>{4JPJI}F1`FTigpS!v6{D*O;19-Ki zC!WXUfa|{{H~h=R`};L+cc8{#|0p+GZ}jyAoi619Rgq@Zmw{vf=7H-tW)0zu!CP&E z3Q5Gy%SSynRf#togdVFne!I*R8pRSP{l=~hkjVN-#fG=uzX>a211Ohv0 z*ZKKaC78XW{+FX(W(zaN_DAhTealM%w@ytT2fq!jeS2zWpC}LX0&|Z*m4fIrKq~a- zXRJ!=Rd&75%QO>eKU44}ZQ)b$|A)%~V-k20UM{m4{f4;)`~h0E31nR6pJHm|Kt?ZK zWFJ((qE-C?2M=ff{x1(A)4^E4C*LYv>j|d;!{k`k?f3tF z%m4KoKrL#oT%9Ug_RO&3w)Z?*@nb~RrGEsGdEEA)+KJvr9q{(sW8%pIrU@JO!1Crp z_vh6o2Fx!2^)XrYMWw}MDOzq%wS)t3Q4xHW*E&Be6M*9L$*?8Y^%yIQ{*BFp?)6Fk z7wALA^q+Oh2Z^Ne4=d7RpT1JF-Hd^0>YuUU#It2!K4Y?1UsbG!Ee%A(*{G80fiO~U z1AB${VE?B(;$OZ_Z|P@Q?N4f9CXXlX0I`@^Y;QM+CYXkJN+_0M;v5;*@3|Ct%PN#BJYn-hdXm_QVx(+r6Ac~NjhoZ^*&IsE$lBgV6S96o5@WI>sgHyVFhZl%RiFo~zy2QeokE8e(%;jmd#|JhR0#4D#HR7C1-B=b4;Be1mFYIfx>CWQmR)jS@*(?BC@LXR)1sI;B9XNNy$#F zXvhQmC56kfo6E9*tvCto?T(s7t}#4beUNLX2to_oIU$7au(@P7F$bPJr=k8_1)2lx zWIWio>Ob1YSHx*zfER_;XDBr3FVvH8uS|#1W9OXAe*w#%pSCzi$oh(8PCFCvY$gy0 zVDaaEEF(A>ZhM3zv96u*oVL~5tw<+~6DCeH!aDz??@uK{+R@_HDc6}>U} z^rqde%ng3se4?@{S2jgnB8q?<)GDLoGlns$b@Emw-5jc?Y!TWqB=_qJ4G#2&e=!W= z%gd2=)kagxmbm67xcx?~%TLO53eq2#;us9ngVBgz0Wu3lV2?e`>~~XKJet)Cx9=|j za;%sv==JUHxR3N^3?O2kL~}Ys;kHk}$W4iwA&0HzGN~#@?WTj5m|G#8?Ux-Np1sz& zo237v^ImHropP??!maem$y++L#@sokaS0=qcK`a@p?R-MTLBcrWzW-hW>d{Y99H=v z!*n?<DA{r6Gf z#r%yYNPaVEMKYBCT(5RJpeP=X~y2P1;t@Y7iZTVrx&#D|z^RueIHiwnj?twEr|Yjobt z9tT~9q#M&5C8<{&m+B2Zq;d^3MNighS_S;4?cc}RAQ<$vv&u!PRbMEq+}06cd)bH5 zy@?Rz_|Qof5>FsoFui0f14U}ze_TwB1C~`9y-{}H4GHbnc;JAhgKtLV+AE5I68_hO z%@dl4B&M{yju-BbQ#1|}CCPfOMrnHb=#@#XwGuR$cSa z^>9f**!6XwbO2`PcN%&MW=jwgLGv``#UG?hXfA%oS@gqA6yLrlidgbuf0^M((B$Xe z=hRTRHKX)6Bo(SfV*u9K->oRHO=0Forh2kTGbkxQ866p3ls=g@(2x*wJ2NQPJ(Tj- z!2U_B!q<5__SBU7;Y0Y$PQ;!}0XVxGflsh*legX}tZ7XFdHGGV-O|jQ7qd|&j4_RE z&n3(Plfi@dlFy^pn!Q!?+74f|SUIpH$q|9Hmzq|j1O2JV{q%PYbiInW;zh*_A?rtS z;0-u-yM_D$>&O(k>aOAFKV37=5b<5-4);~jO^VO>O z1Fo+snu)L)kB1*w=47^yUvea) zcUa_m-CX1BsBGxb1wdgp2B&~<4l8^=V1G11-Y2=R8~-@e<@;ov+?dMZd382EToXbi z`96i%)xiDg$d5D7pY=tjuh+4-9q|v#9tfFL<}uiqWG?o2YLp@!)ImysYOq3I4QA+R z0~r6yfYE<0NIrjJa&C?@31tX+X^#X4>nb_9Q!R}v1!q#G}j zj_YTYo&;P{;TZ}8lhao|_veYK9Qf~7>t_`=!LXD2PmE~sV6l49#+7C58q;!6_)94d zoL3A$Vt)iRJ{R*G<~8<+%mn!I7>W>d3uAiMah|f9I<0mzIO{Fs z@@};ZF2bCKTm9c2{$M{u!cksM)QDr9B!w8OVTD$-4hIwQf4WcO8fv14Z~myK5&UjL z(DCv>ufci$TlqYoR7Nt^Q~7-o20OuMHon&1N%{Y#fBo-7X;-9bEZ0^);NJkIZs4wV z#Bx3GnQ>Y>DECE6!{@g%UWZ@(_ypXpT>U7id4U~Yrx>n7l=E}h5SM@o* zefM1`mVvo3VOKqj(GOkey7I;N#B8;{xbcdr*;k2UWjdFNzaDRPhZQp-(F^-;PB5z*pe80OaFb-@XwnXk7CAOhr& zCw?P7A2FiIUL2*gGQdmS6j#_U+oAAq$p1{Q2#bC={wH z^>YEw6Z!=`h3)yeI_s}XE$;n!8O*=nCO4KoUnHIO9exqTcf8My@CWkba?$+NdUCVz zym9@yh+%adzE%l$m*svS`rc7=MJ1SWaHZ15tbx?)+UR+0MuMBvuQj^T+Z7EDPWDsI zbUaPocTPBWiPnWLzHOL>nyfw+tO<$#OZ)ndw$K84mkXv}<4x-qK%+BP5CH^Q4H658 z#o7ypkAMg|)rTREsP6`3fV7~%a-jr;YWNFAO)0=S%NKao^7!y*Hp~?Tqrca_Cbu_J zl_!3h@I)sk{#dHt0++zk9*!g;vDo6ELAaa?h#`R6n$vIS=GW5!w2Yrb)94|xk?~b% z5mYO0;L|+~+pB@RJ*{5?=SPX-Hk&eF9q#)fE}3Y<)=a@M2b(5<81YZh3;-ye?xjP- zrk+Tpj>sT8iaR}@K7B3o!u}Ir9v+YYfEp+>p9X2;C&*e)F7Iyvqi7LnVXbRY^^CSJBD9t zK!e<3pkzfj>wR~xtuddJz#q(w0g#vss7(J1a@Z6r8jwpk86qnv18e*XUJfFN@nwtW zYo%AjQ@g8Ol8q#9;*PZdx9d+H9M*BkfFB`0-f9IXuNR)GKG^)Mk<>~Z_BP?f6CTxwr&q>x(<6-U1w94{2Z&3;}_^1Es z`}+Kddpz63VLuN{uhz%vm9Ue6jBq^7sjp2+E;4huJ8cIe4 znwJ8~ShmKQ;)vALybX=o53By-$|dTr@r8_1bsMmLzy1htc{Y~=BCGD2kLSF^&h$1* z&13b_6#KD=*JPIJz>ca0v+u}=LKWZTQ%>A-cr>X^CSs?;*PFM=LeT_o#!P0I92zV4 zhSLRfs;n5BoV_Ww-v#TJpUl;IB+3D6B=^f53c&mS0^Iy}1&z>z*LSpuY(S(sXa19X z8-@w_%PH>AFA%mwlvrv&S}MQ|JehTZQAn~|SO!(Bw&nLu(gckgIa%f_y}zF9U^C(Z zyHux+T}Pd+k$no2zz0{u4jr#XJpKCzdd6AbeG<05&id%xWK*<@6T^=(NX=>ar?r<=treU zkqCGbcuWPzCV?K-7bY78NZ7LFR4U0pCu>C3ZmNlwd5i@J{j^W$8}0ZDMg*XHz#Hg*fzjA}en^(M z>&(nYl2Dr3y8I@WE=NgMdT1JltrB5+PlBtiE2RC$t&2|(Jpq3nh7d}~RX#MOmvOPNgn5l}nolHm`y1;m zDZkTB<@09(@H~pPA^+LVN!Ez%n-$F0MaJS=K*IMt74YS_7J8YVYJ1m2;OmoeQGY65 z?owkE6R$z)&@>a@pE@)XLXO>;(SbbHN3S~dB`-WuMc>9|v2lHh1tD1izKd*vg1?sq zorE6&z{7U~Co3IZ6{rEWEqbk6^B=p&axZh+DALkaZZSw+I=ig_D@d&MXxc8a1wsko zRt^-A^cPs4&0)59Xp3tR`hk8K!wBYmkGmFXFp0S4!$8v0f9us30Fz=$C%S=UAjSc{ z@K@hhPM^40Qcv&l_6kV4UdB2mbAj((410y0F&mNH#|0); z0KUiG#qabQ4DIzU-F)vj;ifVHVR@PfUyzg(r1c!Bm*FNsG&+bRoT)6_MlVMx-MC z(etNQzCwo5-nx;Mtx5&!R2@9_dv@oOn&LqOyo8S#UBXwOPsH?gHQb4-_Sg{+- zuY2slC`S_$e5x>{XfVM6F9SYRUS75h&nnMPM%Dq+zX_m5li!vm+2uH#YjT0L|4AOK z{ZC8nr6h=A4o{cp6z=1>6xp|@EAfqsr9={XG!?wnXtSS|0M_S?rwg}%IJVZjS#DS^DS0RzhGt5&a2??0xm0;%mUaymFqpwm9`Q1(Dj(uc0#_8W`17^WdZaC@j}>7|1jOGpy{37`a)t zu;w#<+1~*k3@X9j3x89W0^FE~ zJz8lUayMBsAK#h*Tx$4G=kH=Wjq44-7x`f`PxtE!)#(l|B>*3za^4N>2i(i2HM*u{ zOu~X%GS)Yt?5qeFC`*A5`_eB#ydPVsClI+v6*I0+U)Ia1m1#R^9i59LZVu9zPh80; z=Smp~{+W5A`sT^3(~p%|xJUyRpS3ICCY>wVCqLHUfExLy^p{*9e_BLnQxIFoRC{YN z+hAO`@s0Z3x6k$B^(QqROhF85w)&Qr1HEB!APS(`PDmj~{Kzh;)W};E@hl4hnquD($62(e-M@=nuUDR~h5#C-vC?RgjG!)^b z2B&cyc*TGO~(e&;*H|-oPGZy-_x&BI{Jqh376jWkJM0~Q-Yn}v ziuG&kClfF5>R*6G*e(IJY`QKz!&(@qw56|+On}L_#cS&jG;Re`wxhOGAix> z2VSmmpDC*I!BP`p{@orE5{fRh%i%(mELPU$#lh^_(YLh&iFX8C@hUV5+82X=g)Tsl zhac~k;ZM4Lky3g$UsYQ#YHu&Kgfs)Q9O;S(PJOR)H88oTvIGHv_M1axrQeYuy^#m- z6bF#?{cC1fPr9UT|1o%dK7hV5c-@}IhvCpeZVw+bKJ+KNW4ia0Mo$9dl_O4%e4i*7 zkov)}?B${g#E?2qfd;^#-z_T7&3*UJ&h=8YxbHw3-{!Wk(2Q&nODyNJ5}k^um4+)| z3_`16-n6M4$52YI2nb*%-AA!(&I@>2Rj;JZ$1gve6|&mjb=%E0xhSYI+Sf3Bbt6ik zG{Y(~sPL0Z=g<Mn}52|9CvdKEWgb=ulsA@ zS|gJ$m%JYSJL4B9zWzkMuyHM2J9W}ZBK>RW`TAfU)sifxxKSJI`gF2cvq};JI4OOh z)j{WdZy253TK9QH@EI7BFB89kcYAD|TXGh{#ebPj@*+T5s+|UgH+tvA`xk${E@bOd zvtWr3&#Rl^o+DlQ$I}81?9tm`OlX*SQXhV*Al1}aLNIfN+XNI*0UCZD>U{$e!-ljT+~2=^`*KF}Lz zuM55naeYed(yg~8=dU~dReOtbYB62WUzydlzA;GH7%^RbUwk_Ns!d9(Ij(i!R9@}+ z>s7`=bg~#4R5ub6fbLL8fC{TP)Wy{&jJ{VmRj^B)Yun$*AhWG{L~Hh>)CdSS0lmO=9_jiAl~(9i1J0y3y#O-z%uD1 z!Wy^ZYDGNer~6V1E&qMP@RbT-a)!~vz=GOr*NHrCg2lk4Pwdk3!SfC82~Y624J0(BXx-4aP*|&Xeq;9MmfBf!(W2>$<>;nS>B@7EI+?XqVUqbeZo{V-e zYix0`g+t1PYfMizAX6$VQz|4|Gf??K@$pok-whn9yDeV*2c0Mx>q{<&zYYahHwRLa z3p?M9p`roVVeX&%vVO<&9kqDF%8M(16<%p^42-8YA8fHaCP768gz+cSn0pz#PGxcWUeM?zB)yg&$6=;?js&f97mQzz)32eV1LD-cSAAaY z)r2+yTFITo5_GHgCKL#bhThXs6>S&19rwdiujkF~u0jLHslQ>gnT>zs0H?2aTja|D z11VVK);xm}i~Ac?)rJ@!FmOY({j_U*n&Egr39f z_Xm-rx4&Ksc)}avHrjpf-0DJ?EiQ>K!7|i4{iT-U!i^Mq|-}PH($!;$+GI8q>zX1HBO`~7*5UF9xqV( zVaYrO(iBuZ$~5W(*9ULE$kgdJoV5N~nd(2_gSx!CMy5q^#2?Fh*Qd@UL3hcYfkr3~ zRJTWYL4+j_&%>2%d032oyE1K3sq5Y(-YyW|tcH-P&Zcl$WG_Hc1w1%)wNJWyU{dGK zuod`)7n{x%jc3lb*^5AueJjcclgGuDxQR@nlJzlgOqaEdg-U#3I97&0*#D_3<9l^a z@nnhW6*w3|kZ+cn4o7Q>#??IVho-bMVJi^V$mPBfASP6t%^-3ySF#1MVq0M*RB-S_ zCbKjNyuU*5A2vCon81(wTxQXcN2Z%;M6^FyQnzEw`z`{P7F(CHa}u*sv)VP;`JawC!3&bo|OY0Ybo~-gIzm^3^6lb9oR9Ii}czM*_1Z)yLY$K$BP~fWJFopg&R_ycbMU7haINXFE5rM1N>*9AH zHdzJ8ClLvw)cKP&-pHs*ape_r7^W`kg>IIieD>8ES;@h_pCHr=;ZP<(NqM} z%+4z}XOrjpXm@BgEyNjc-bi<~vF+&olJHvb9c3-t$CtgHwuc;1v#Ta@UB&t2O(A+3D?=##9%|jvnXY^)5M^C?%dwnhf604;>BKvk(_;SeT68 zMZ2LNSgnR3H2$pFK^Lg_J zbI>u|GRECRVQfxU8SJ@>2(R<%-iA7jAa%?eYKS3a0WaUVO@UpfS;c5kG+(W;-bbIy z+|mowR7mD&2T`bZ*uC(c5YR-)wp8EB%ir0PHHR^Uw8B9SjhM4Qpi^AhwO0fk9=dPn z(%Sf1J3N&j%I8Fh>jg;uE}4e#+owI-ZzjlhUa%3{#WY-q?&T>ibxd-JeO7O-JK?zbQ|pHR;iY#j4jZC8`YZ1p=lvdcyo9R zSr!kPnPo9BzCigHgi+4{M9-8q53kh-X%weMj;o67!xn!|l%9uHTe5&q11iRz+h9}z zB_O8$^t&6e`RXp|!ASUW`iOBh{oD&P$paI zeW>&%UPTImvUJ6JR5W;Jy>0XzfiMq5|Kx&yrgKrlXaDfwYv8dHRx3m6q>6$-p7(UQ znk3>~e>`*lvS|!fV|#8DwWm;%O?KCn2ke9PCzI)X+w2On@4Yg!rrkeR7vyy$f5L@X zIqgp7Q%JVvlL#EzTy^$nR_F_S8vPwq<7$_rtOPL9PupWumUO!w@dq1&DW2QHN|2{> z12m&_*wN(oH}rltFwUmVTO-2jVdyWzZ!QU?e&MUcs5~aO8IrtSb6&31!Tk|tKbGi| zSf199My%%4;Bi@g*suT-?5mPO(rJv;+d5ZkUj6%*VID^zj`au=E1W7wyU=o+YxUy0 zzgj~NtUA7NvbgkCWD7{)P09^<^U{*jSScH^^Gbg}%4W7Ps93d3Oy@exPI+9|S`r7M zF(NcMqju7zYzb?Do+p?5g=_S749mJMPbTrt?)yB(=UIpd_cPW5L_Fp&z-vY^NL0vQ znV`_@YkukHE@PD(IDU1G->7#Sg5=P>WQ_iRQ6LX8FbZOGB$R<^MJL@G-qp>(Cdl2A z&t%D@qRi*#@TiJwr@-b9(F@66ETZTB=2DGZ=ZCqlXfO(!gxcl9g>)cDG=#F587`3E z7Zgc?77qbF3-NPxHj?9-p%~CuktO50CR|KB=N`teBZuJxaREy{ZS^-pJk^_u9Vcza z!6!VZkK^*(w)B+6-ADOxpLx8B-~y<3d`5#`;BjQNbZNM zAKv7LdeDB&@^RcBi$o*h&%8m=rM=iD&OTsJE0=0J`n3v(4@HG|vb~kdXP~Q7o-|iO zaBvOZcs;4<{{!*q?BTk49n(;jgU&bDrGG8Xr>mNOXYfWn*Pp5rjd)JUdc!E?=nB!k zpLAUufA0z@9^ujS&63-y!Qg3}dlGCO&SHhfhszA*GqHIn{NunAF?#1;VaFAs zea@;iQmpP5v!+gL<##{E>!#g!CQ12I;)4Vj1X1^?0$&TKx7nt|?f>5~R9g@grMCUgmogxPAWtrEJ>-0P3V43WN=j&{8 z!i98IA;dGfdox+s3_=g07E`4c-P68_+!y<-#d=ND3^y6-#)zC$eN`nLOnSU_9WJ~Uz0?s@s5@M_f?nI_rpokxgwBhHD1Du=buCzS6&YGEzw~vg@uys_u4rVvwEIvh|_d4>Z5-;pi{G2s<^Nq-+`lCQvGP`=p8z&?ODacQ*_DEJl&v?}=>F2wl1z zwj%o8)t?ls)?#}FTV9O3IN#>0OcWOrhU1Zu>4-uc+WOYo@m*`u69ln3&6*`K$DFOT3;Ju#ur3 zDJUK-RhzJ@6>7?B*`#%biCmGWFC*HeUYYn@JLH;Da(T~&E_baq2O$foc(iF60~Lu# ztw~E?L7(5w8|byXMaaj}kOgFDe_t{(gl;C7g^SUBS7VxV%+u=hfV~aJruz&RExS7U zeyGYsu>Wq;U3fr5>$!C&Dl!8Tyscjg4f+Crdt!?}Ylu83+Awf4MC> z-v46}qSb4QAdy=fh!|OJ)5m@Dxo#PJF6#wFjU*Ak?`Va^rL}IKLoO|nOJ|eT;`s^e zk;0wtR@g}kAomb^nj=&uZV~!8<(JGXf*O!swyE| zdt@9_f6m@HCjHben|q=A@(!3hLEg;Rv^~h!wwQ<;X1={C?ponm*j(WYh?$zS(1;IW zT?qUO^*zcucQqU$LFe=0+%$B2FlX%ie!$6~YlHa(Hg5I6i*{$4V%uekKHg?E&x zh#$G(WPX+6&*7KcB3waZr;LiOcgI&}J&7I@MI33!@@^Mfvylqq6(52!Eo7APO@|L! zkCj5YaPHBz%k;m?2=rcx>#(Ie1~VI5ZVhD!DX?B+M0Iq=P~Uk+Dhy>W2gtl&E`Kp& zD2znim{oImz1b9(M;B3{sP3;EPTlkn%8F&Zx6+5VPfT!=X*PZ>#>$Xm)By-6)7Op` zg~R@YFvOLgU^P5l(V-526v|26JZn8T1LvR>=3vnfjbMlgij~RuIKb|vqU}L7OsjZ7 z$UvQ(HR>MXwH$W0{q-|?5Q66=Hce~6Izs}3F!xL1t4P$jiUuLzm8xp8&Y>|IDJy@! zr1=2w_u@fQ%cPG#V}$9TjmEDB{bAKAxt1BFfV;ffr9AgGMM$tCjK>ny({H2hp)q zP0k3d&)3?m)RlvyZ5BkcFh9I`)Q*4dFF{M|FDbel$k!84N*ma~AsQU9_rtmki?{PP z#T;ud39X@s8G`Yz!cmH{FXwjyGf#a`#oen7T|QmK%A(TBAYOkV7=;oyvAR3V>Bx$= zcqPX}$dBgf1u-uX2)Pvx0>vw1Vp?S~b8(KkL;?|$GrL(oY>~ZzqhQ?NZ#fRK{i_p7 zi&nW`T^fNzBDV(NWK3n7AWt5Qe5?{|mmt`9^{x^RG065P)L{QMY%{J(6}U`g*e9cH z2EmUQ*?Hm3H&=PbHuNRE*R5C)RLW)%=g1AeNThy8kY^ilUFH#O9p-Y;IlVIR2S}gd zZjB@Z{)Bg_EP}cjh{*WIJ_X)}X!n(6&&#fa`Ic0TN6Wo*dQKb5LJY02UfN|ghaRGd zV-q#EUzzq5Z1XRaH=+Phe#F|hj>tBy%{9&_t*2I~Tz@{Pf>E`w5(!E62cNU0#!GYH zu2GV1BnWqiC=B%?$o=e3)t61%yH!KfxOZ6}OeCGJ=Z*=tD!zevb?MDsxRvsr`Y$_&ns%Xa7LF@XyuV8Ps;P^3X; z5eiNYJ?lCzx}#9dI)7ZKM-rMLV_x(65;g9UhDl`7wL^k&O$=ry&S0)3zDR6&kH}t* zflKH88KR*u8s{*JzUbuf$+rFkx&pLk!bNZv`}phyr`()Ubd#E1G{nQ(JLnbf8~L*wGZu;7wK zg?Qt^7;V`SdS#k(Do z7ApHd7$0b;TILmI2M_as?5$TyI$dW zdH0QF#8}z)4H0d*;d{aM^^rhS;;TP3*?Y4NBXsifQdg0KVwPflF?DvB9-%>4h^U0~ zyi9?8%T;4?fbnCt)ZE}{-{3!&J9U^=-g}~dbNmIX)2{=H!jM`s%r~JLdp0i-_}fu^ zm?o%~dJau$_(!7h<9N9qyfb@^NW-$f38AIxr|Mhk8?O%))>ib@+a94dAtev;mA|tQ zts#|u=#UcQttN{e@ycAb>g~_b{hCUB16VucxT%hY7kws-n>f>ie7t+M z2nUT``77Zc0H%C18MlS}(g~OR=j`ZJ)c|UQpDTh)I#ZT1hOtx@>L#yc+WO94AhWTM z_{VVF%z!+f!ayU%eBD;h26qr=u3P$oNjC{s0*FIv0oN|hmmKQ@nY{rO5l z4_DZE+|X1|F}>{U(G-gA6G%?3@Uphw^gUTqD7>BPcdzQ-lXM{d{2JjG%R z95XFgG|t=I>GiIih_I#i`uT7T@(X5%czI-vmCf2^pDzD*5e$Guj|62y8?}nAjtkh* z5E&dBnhk8E{K2v{r#Q|ug}_KS=2`J z{)UmywYV|>f#j=@sQ_vXWQJM3XS~2rbpJ%BQb;4hjpG$ zhfB;}vme$Q5TWVT_%8`h=Vrv9-8zQ1=XWEZ%i5wUDw3kfj)G%oQHO~u)NH5{5eX24!~Ab*L+7h#;l!#KBmb-WhmVX8^h zvXiJ$?)Psj~>w;+et_zZ{Rh| z9oJljhW#3sBk#whTMPB>X$zEy*`)ByK&ShgRo~mBA%+nK#!G9%ffc6r?d>ePAyUW= zRT|A$$BigR>MI@`P^Nnge$Ax}sTX;I_l|fvKh1L%bTcDCitkrj!(VdxUF7Mwg1yUc z@~imucPvqC_Lh4$H#{6jxenfZ>-t?c?T9&Lkd9}!cg5N~{((^xL_b`|K-lhO^z6uf zk+S9gAL8CJtje!l`<0TEl5RxlmTpi$LO{AZq#L9gloSC0X%Hse-62SK*QC3<*@OSH z)_&JI_Op)t?)S_7#4(XW<{aGjb&qjfzw#P!}P<^yLybac*bQk&W5_ zp7%|%aaZ$u*haSEiNYVOCm(Dqc?+&iWHG-o!m2&q_0=qjYf5RT5+0_muXg7!9g_>f zgXYhct7n;am=ysWW!%*?xCQL{ofQ+GAUbyfsk~&o>eh!Tx=LyG&*Xy7^g4&bk+R28(=n zk)mJsVN8QdI8tc`_$*FEsq;STC3>V|Ad$QOi!W*eEAb4nW7q3^vL@BcVQ0aD$gsw! zTdpoxVL4`ph17QL3v=&@A_{CsG0b#Y2Nfe&Dm=Ie@G}OYybTv~|40b*|87S>=#Ms> z*K{bc`Wk89_o4JPAX&ZESCB)!Gm^OSr;garYLw1*rj9ip{G`08uIGf8@jg%N#EmBw zHT(61pi0#az=_sjN=p-PSNc-RZ1gwpv0m^kn}sxx$$ZBw3~&AMVguGw<|9FxefuPX z+kOn6U=h#8t@YcfrKb2gX-EKrc8}ZsWh*YT+EOpN4HG_##&2yLQ`2Oqz6`afctvIm9GyJmk%`Ke8g2D?*vG{F%2R*gBE1U_S? zVoxz>tCs$m>}7ql@V)|M{qW9`gq#ikA*#<@*&=wfi>Z1Ri8~3j-qg&pia#GpoYX{i zRUdF++;*@K^%*y}cwG8yNbb}qJ@EMx>t%E#mgruot-7*y$qxx|GJf_gErWYA0r&^P zfZPbu{zN-=yB(DYaVu-T6G!22_hoMujD}OB=!VI#G}1 zAP$S7%%H(KhYiJ%WleRh^$xfiURiPWd$T{Yd5ah_N!%*JOKA#ZzM~A22}`#6(Rlal z3e8e6jL(d3EIVYi%8if!&B+&8vGH!dt5icY_RU7Y#*jZiNp+Rq() zmDD~*{$j6UtsK{TKVFehETJ`%;SGUuwpZ%+>a3*YzSpv?-lCZK&c&b_eKrI)8lAQi zCywxOlQS9pFevKSH6m}UYocgS?tU&I@_G@px@E|@A!c{`Eb`&CU2JeI3%$>liDr=t zm(BfgD`N_mEaYTbF56j%SNV?V`9A)averfLl2LatUlx>=e@!FZF^}q_Z2l6zyZ&RN zV_FyuYTN#-^OdhDcD`cOkChlDfp~u%Tw7LZLXMdPp>A03*2v^51k%4Y-Y=Y*BAg7~ z;ImK0PnU0QdxVr74cKj=gvg4@c?P%C7Qo+M4Rs#^$V+&;`sXQ?7BW537m4&4-%n?M zCvJ6NQjMuz+cy1(7rH4$61?sALTyNW8E)K4MKd_eO(QS)VLj_d=PQ92L^cdRT1SQr z)rsL@g?!z6s`Uyo|0Pu>Eu}|qxbf#(4Tp`AfL2!`&Ze0;f#VWcsrY8}5djtNH-<)S zcn{oUNIF)d+ZgpZ_*7NO8DiotS<&+MUAWW<24pj+Z7Bqv7VY$i{hRG8nDFGPfe{Iy z=d6V55)xd>N;6fjLY#I>Uce(awB+&}79_)ajCBpa=w!kwHNz zFvXB}rmCx=Q{aBjh=Of)>JTW5&7iaCjw zawAW1EtPzPRA`ET9S#F%5S8|iw3W`gvpRGv02x(6s0OuA5>^J~YnTgCm-AiiHwzM! zw7z@2?J+Y2BSiQj34azHB&85^;>`K1R`Jk>BtbK-IND=B3vw;Dy)Q}J4$Eo;`}hai z`W6cx?2wO07+{yi>AQGqb>M^QN^1wgV&>>=UXVRfTz%>9ifv^3IG=SWGJ;4`SSA&5 zXODe2wCh9PNr6=NWG%j{Hr)O<0SaV6Z$#P%bRlwrdgV4(GyhB-2X<5n)ZMbHh~n9V zIz~Uva+rICy>R?e1GVuQWoo_##j;m``FiYdc@d_V)S+T@8c-Q=ov7hW3e`a?-^ps= zI=7RkBx7NzWGltkUhGS}jFolR?8)-!<@|-&I-RxYZiSM5_^wPsE7A9rk((;(AA$hy zuNNyp^Rtxm`eJm%cWCfZHm4;@sdiFVAmN9O+l{~saP87z_)N=X)L33+W>G|X892Um z#G$kVAN7BmKXDD+yj(0!Ci`B-H;;fGR>l*QVkSTb71L=I%O7q z4exGSV-uRUD>DAFwncC69!bSz1#zI!Jh1zctTnUG;}DPXX!)u@GdrJ!7QMZd(;D?* zlHl(V_m^SJ-e^GxOL(GuM{-O+QJaVX-2QJYh7#UrEsx`N=Bx5sHUm$|Ibjf~7@OT2%lvNcniT0CYbe9&+dHPK-F72k#^J31ar*QDpAFB2s~1Ve zjO6_1Y=s`6-mX>DS|p0RCKnrK4OpNx`uMv?uW^ZQg=#UWx2HF+wfbX{OK4Qbwl&Kx zN=nIfC@0LtqI89c28mq!X?{$d*bF~_X(TL{q$4eBqo^7J_L=^?5L!h6xxYmqVW!w@{klCg3WglL;H$z#z5QyAbo*V(5vKV~1-0FZiWBcSXa2QdO4P(e z(Tn=H7scMh4(HQk{oU)?68_*)oDZtwP^Tv->oWem9(;M%_Y(~N}(X7AWim+#dZ%s$K zUStU9Lm=Mw@5UQ|!|AX+UNMVKdAJz2jj4F7EQd3Z)~i~{-I-ZT?F*ny2>aNBk@=BP z;Mc&zl&JbMbQ2jOFZYmP(0a|YO~WL**j89qT-SB_+Xv|g8A%+2%ouhn&z8Fp-;<-x z2yc$rsRn)|yE0iM$B!BZ(q zmY>nB0xAWnDU14T*|;+k5YYgMW&eh%Jn(T9-r=3?%^&lcEDbDoV^;Q$a4D!&wum5Y zWcfJ*vvrMQYla9CwqJI9*GGad$x4sNuZ6$8B=ZyWaAD{ZR^ZUCa^U=!!XBZ6E+h}U ze~vWXJ6entX@wxar`*yg|3YZll$N1UVHP~}=V&)OUe~az_Bkq9JHvJxJLWunJ9cCu zmo0jdaRz4Px5MQe4C14?ntf&eSQD$nfe-4wzSkkGhS_bES467G@b4N@|al9DR3GhneERXx9^z{a}=OXVoTl6VKG) zygxZZ@1~l08HLD7y`p?LJ-HEaj7*k*ju#4HZMjUsSV*Y5Wnp)p6a%qf0)z8vA}^mXzS;U%Nq@ zc1*zmqDyZ?ORvgpABBVzzE57F4b4?ri%Y5dVeF#ZiP8~TYO)v)PDMbEe&nF9j{nu) z&qZMf7QJSrHwV6Gy(>T1Fno@P-kNfd8UbcRerlL)c)`K3!s=xaQP`TRPQIa zE_O=mnT%^AGr&@uy0*Xdxi+EEMc5{!1NGNPcf+HGYfF`jBso{Nsh)4zSWe6PKSx!v z@QnvqbH`nB0$F8UHjedfk7l!H=CRT1N#8l!HHFa=eeu~2cnQY1p<2gGJR&fO8Wd|? zEIiqSpaiew%(+@AA)=TL{mQ!drvE}c=4IM)aDyD28ovfAfS0~)nmVk~q)a-LIz22S zz8R3}wH2ipMG`nSHtbD#lXb)Juwi-T5LtM(K4pNn7?mORAKAHu!z0yaf-}__2z=QfePnyNy0}|+bX9XYqYGdgQ?gXV?7BNZan8Wp!7MD zVd?ee6Ru&9yR^g)<74cyW;W%qL@ni00z#&IW!}arDw?}wyD7KjP$7&0T+`($w(yoq zIj>P@CFUZuj-LL;i`Bke8)n^CzdBpQ&Wm6bo;|p3`Pm!oZcXm&KD^uNI&*KWTD`*W*6XF#(pB%iju>Izf7wa` z9k(GpJgoV%_`K_-&y_nw;BNVFp{q=P$)sy&r=~hM)LFr}N6)*1Nw`30vRKEXI23%O9Q{LZ%kfRs2rPFoQW61L{C@-nG;US7gPV}3#7kziCcU%H_XvBQU3kfPY3~CQ{ z{X=@*qVfFS&$%`x%~GYhEPEN6tMI?fMG$k*nVc(dJu`USV7r9t8aonc#OHSrHAFSU5g8=lkjH)g(N>QssUHhBh9f4CvLwEqs5I{lK&{ zGM;U@9ahqk{mTRjA-zSfNGh%1aMkCQZYBHLh|P%5W;pyeJCvS5OabR)MYB*g)j_x7 zyPc@WGwY+PV{0Jmg!-Tj2{o+pUA*Fuw&ncM;t(JxuG*U>;iSU>0 zddVP@7E}2h5Q&iMm*;*#L78}RVHgH|vaC#zFP8yGqdaN#yF~t`B_@MR zJUz<4a~;sN4F> z#+(ql&$qfb0hnCFhlghi(Kb$>oC@I#1oIU#YDlNL+O7s|5^isqinz8Gnv;~s9*!<; zR@GUL912hu5&ivi>K{&sUADJ2Hx3u_l*~ejX>8!R{rK(zYHtGYkL+$DABq{m&)*su zd73p|63P8N=5CDKJl|2?6ghR7wLIJO(3of|O4ICQ6FyaZ&aK;)Y)a7>pyt_hB(FQh z9zWM-3#r`i4KBMhP((ZNj|s$j+O{u!de{05;_!=~L+)X4TX%Hayg?_rhE&)NBt_l; zC*|prV~L&l?3ZnEIi%NpEL%>=rDF#DYW+nZi&a_m!2SwOT4*9)RZUI(4QC9guC6`C z@9+)wr5YVxC-qZJW@2(1^FCD)NJS?tr6|QTl4nn-z|~mn&di!}z5-0>tvU%&yQ=3X z#5?t2BfvW9Z+7QgWjVUAC+Q<}#&aqSim6UotV%h_p6zVQEGF1Ljw0_~#g8IB`8Pvt>wrA2Y-xr z+%}`Mism1TMO)GR3b%FBF;JT_bRlj+ZyNCXmQdZ-)(Bm&suP&+?od1ZcF}W$i|?go z*#Bf`nuLvoo9vp;sfEz4qUPlqWGn71tg_|bJIu=d^sfZ3@umZrT)OfgDM=W_F*bz(T<&prpR^%kis zSkinGWQ8|g@zz(6kpS-|%$N4LU}c&r{eO&tpGGAZbg<>rY^wF=+^}Bi-4b|H@}5eAKRcpc&AplDZFmvDc!3Tw>mhbaS+Sr+l&C zzvs?~+W@e+pPdg`25<4pH~(+GLK1>4S?>`=I9<) zXW}>S$svsuQjxY$uj9}<41HJC7oWZ@Gxez{HDG)Dw^Z&;$l<5i*daIibo^bBRO}xj zBmTa%xM6tHZp7Xr&0A{w)uwn*dL#B|P?N1sf?S zj1ur;UxzdP7W6l|4LlieSKYx);WJXmPS4`gkVMzV$m6jXEgT3KKDa( zCJu{kqq@qm$eev)zA+~1E{m?q@_s5}S#D}fsFcaE_Lc{Xk>kvLQ9pP^V$Nbu_ zYh}E0qXk7wjBhasV_G)i4=!uE8(ENZDTd-Mh=0+)7M6DQ(oerh{1mQ$POn!CJCG_k zHI#{n*C-JYMQhR<>n9%BrOu>PnMpe5Is!%ybRY|ES^CFYGiG|-#`m>m8N}QpNeGK* zmyE;YZCzH~-wnpAtvy=8UVd)mcePQvMJENO4ud${Hrjg44Z@FN%h!Yahc~I)#InYg zswGN?z?Lza{MPIIlD|-|CVJ7m;5+mhp5dQ~V+v5Pk}Le!xOy0WY`P2`22kf|tZhzz zVjeKQP%gG|s|VOIgvSqFI!y>I3V1alVhf5TKM{3}b*EGUHSS9oWU9vlL%{i8uF7J9 zOBnsi6=bieXtgC6KUmII5+=@xQ4nUd*vw-}A1>}@!97RI#2e6>r8fCfW7sLp;n-z` z%VidsTxq?F{)DJb9O@foppKWD6dcqax)vlkG>8o~DdC(3;xdN_(Ngsce z%kB#=$GhBLlKv`sQj$+sI2o*}C6y6f(cr8Em1+Ilv z!bx1#v$RaH6N_4`>>Rz)_Y0C-eaB?uLd9+v!UR0$(m{}oGRw2f`AN?&q@|WC4tZH{Wa||Ls0-m;{%&VT)CnIw~ zi#ZX*DKxcq(RWu^R{dZgE$gG(av+J^?*AN{MX5`6yhzJc`dAyKw>6YZUg-KYllB#1 zkPV8;w^V*tIXYEqXfu;GFkS1B0jFoM8!ry@U>43q_fsqkJSV*zC}|PeOL(%1-JVc; zj4C%9k^>Q&3TV2gcmpJ>@HgdFGv)aL3W09d>+#!wvhkzNUfG{%O7gxxSCcpY(%GS8 zNU~M8nVPjRpg9Zz(VHZWaf-VnC$=w&w3gd-8@wY@-8K^KhG4IchlC%8fktn8mr7DV zyr$!F{@Rfva_kyJGAZ+Y3hD&7*5}R>)-Gzfd7et+WA>eqEPhgc7v*)2%|re(;1db%TF4Uh-H_iz)`9oN+a?z{lfl!p~JO6vUG8m%YOBF zO@!s($p^=2IK&GjkS*#dz76%EAmu%&`oXjl^4YBIl}}5RQZt63&v;`Aw$hyMOF6dV zg{A6uxnoC>vAmKw3F?g>;*mo|bF&oAsE)en5XFVp9^#i~)_USlvw?PrwyWzA$51uA z$)g1=SH$m6!`axAF)-^n>bB(L{UtdAQ8*C0CcV zD?D&79tp-ICHS?1C>$gxr%rvP)7Fycjn%S0EgivpTpYc|ujlA{@}*=54C2u$=>F_4 zAIPYI3@vQl)kY#$ku^5p`xX#(QvJ5RY(>|L#n`9L-v%Kpfx?*ci+;?H4!rH$KA0w- z5+&Pwz`}o0K$Chp{{7R?{vW>twSsV~574x$)Q9^^JwDGXRzTV_O;Wv_5!^?ti`pF` zdkDB;#b?n@hfE)}BQ&S-IghewIZgw7JY;SxWR!4LS-HpM)ol?e!=%)+Wx zG%Y_^gfFd)a=TL{S=(=Ou1|ap7cRH5qJ*ex_jpeRuuOU+TS$a$V3{=P1FLNoGRf)s zSj>h}vwtKr_;%g(x+lXAhbzX3-LyrE?{r* zp0{m577XEHHAFwV8B&y}Hid>FI(l@5HV>^!NkYAEnO+!}U<-EBNc{+`cRG-My!0s< z0W7WgMn9o+BK#yp^W#Gj7q;PldI9hV9{+h6=m}+1|L*;8ZKl~`lOm4@mF8Xj+m(jm3F|1ey7@{FGLwN{Dsfe|AIM>2;HBfaNUO}pBA>zr z8M7EQ>Jyr;R#5foYwg?niyOZp3Z$Ed)wkX)lKb4rF=(_#9YUawAlnv*f*8+?Xx^3<$5Q=?5m2{xfeUOuVq(`r#VNq z-`Zya9%AS&Lro5(?-J77TU<9QLE|^d0Lx zv2+zBUfU-kFy>3Xeme~y8121Rg^M;#?}m4ACYE+>uWYlIaI{MK(oABA)Xo9uNIS~KZY|Cp_^l>x?F zsu|EPRKmcxEscn)&{nqnq?sC`k*{p-Ej*=MweKEob6S;1z)nV>Dqj(judk z7KchGr=2;s#TtQTi$RJanpg{f#9x!Hxgbf$@?aTgzi$CGU(dX=cRf%ElY**wr>*Hx z_scQ@k+97xm14zc_lqrDm@p-)XePi1jTd>S>2cIjBni0Db6SkIR#egG8HW%XY3L)M zp96Q~7jaih?|Ks`vxuTRE_S4F8I*sY;L;E4S(zg_u9Ta|c;(^ID}R0Jka*EBSwqVL z@E8-!W-!>z2HOuV>+_G1Xoy)QcCN7xP>VJcf8Y1eRJEU*g_{8n57mA6Nyr^x$nwd_ zYLrk0zV3&Qw-_YphhHK;rU?l~l{6_o9`Q-u(6ewCBTb*Xz7ISX2sbe$Lq1HtA}n!a z9v#7n*~C&m!o~*2j)bsh8(o~1Y8B<)$bHUeUl3}wng9G$O03EN1#E7jr9M1MUUP5(<5ZU&^|R^g** zP_8KzOckD(SkZWhK7%;tEi5KY)U&adE1n9K>v-+0eUWe@+JR3*LGJ~%C?K-J>LuCp zO4v^n9zGwGUhWiM9_?TJrgW|N5u%@l4uy5-2M6=**Vi7AiYI?Kli(y(cb$`C9U2OO!PD?K_1r#DaV**r)G{faxO;zg8 zvI=;9V&ZevMJi;6<@)s&aTYkEB`hk1%6@~V#%$hq@87(a^!-F7S)r2nejK>uSS-}X zVNZ+sCi!w_iyqA(cP0aYorA{nC*gW*7)xWo5ng~#-HC}g@LE-l$8}~sPC%BHu_NZP z8-4~_)P-n3S)K_=^VWRv=Sj=nY4MM$EO8x{r>28z>5nu~!$ zWl>SCj)3Q~dnqq?9$Oz$K#jCpV>Kg-OaC(qj3LKx@Vd1$NJZ=U$h5til&(mt$zp(z zQie`eJ%Wf+HO5bR`UqMB_3E=OMr6`#{Eo-MrGa5!DOO4bzajZlKBSMLuP4;>wk3CV zCRKsAj5xUZscMzQJlL^g-vjY+`YhB=wbJkT?UB5sLjI=Gr`wDD-2V`m`HT5e(y&=Ey^N87asVEh_7FYit2$mixncCH(cmsllfgigFB`Y}W(W5gBJyFTVEFU_| zbu4NwO?9~?R8=kJC0+8PQb>ksqfn_}fTPN~^98$5xXzECr=sI+0l~CXXt}naR(^#b zJ5PCBxp<7aoM8Tjxz;#YyEHNS^3#94?VEZktb?Y}TsEpaL@Tj7Q%6 zH$3|_L@`|6mIAI8J}&1~F$~LdV&8I5`r4L9^ud)LOCjp%oG_*SyjwR->LT2I?R8Dn zoElrTU-ub{QKFsgRBEy@iOmUF1IK_{pRMSUfjGrhujsRU@jg81moLSf)vvF>UTGRu z#yg1ej#Nw?nP~yg@9&U()ykY-e#As-=^`pTnn9-j)X1aNbgio)?%RMzJ1f$9^&c(R zY3xA^>96^#RE(7((T8hvF-Xnmj=;3XGrZjbU0de9>!;z;Po&DIF<+N84O4=2V_&6w z0_AiQ$3M0_OOMy6TM^YezIt!eC z8C*>jEJRy;Gl5a=13ANYG({+B@u2(J-iD>t*S)|~;B%cgBQ2tk0OLoQz~T0)>DpBE z{B{5qVVgD{W*>14Llp@_yb3f+3fMye&s5gM^}eFTv8egQ!E!TDvzhd6#=S}JjVs9I z`sU)2ggd=-i+kCM1pk~*kM+y8&A;Z@pphdWKbYIOQayjSPMT4nCxBf%G#8G>XW=J8$->tlsTkK2#Cp?eDBHMiJ&l8tH!SN zytc4u=b2B&rCa^uCadweJV_?wL%sPJb#_9?*|3E0UHWS+$_kgm4UTFY2375d!z+o> z+Mt4J?caSC6Cr2(bcq<>l0yd;3$dY7MoW%+lM=bvV;&6xoO}{O(1@C{Rgbb6>VLmYt3q1B+!ajI9krwIJ=&tmT%&(T%=ie6eqoL+L4XF zm!@`^npU%?n;xsr<%1^{lTG2pZ>)Z4GD9rEcB&fA>M5uFHA*b@vsFJG{^N4!PHcou z{Z}IuJ^niEb{ZqXH)~N>8&fm2e#E>z)+rY%PW92-dVDWdC-Mb(w^6@DU#e%D_bVMB z_=OPqeQ7Hup~h54^~Dr?!5{*B8N@XXcn2muMKq>4l1BtlQd123C}%1{G?GLhL59eM znILRV2ALLMHj(<$2G4# zH8#*pEpFTGrE0a3^`JOpDpGw{_R?YF97d~Ao9j@MWiliG6S3BAo@gCI1CjRk29wr} zf2ItMyyPpw7}e4JHk`0j1AXUc-tt!AlHxJ{?uV~&qNS;9aGvYwWgbtTPuKCKM4zRn z=J<}EEDUW*LTNhZTBv*B15t~^#?xkez4Gu3A#8uHIMR11Fa{Ypg=a}X5yqhnat}zf9Yy>Xg1Z7F%8ckIG`a#9f&Kn)Q%debu+hnc2|@Zf3bOZ z1?e+vHWW3e6mvO9E#PzHxeGogQde70MI5lBlW+ z|Fd-7grvp585M%sf3^+jm|oE#o~<`YlE%m}%&7g^88D`e!u`GUS4ijESm(#Idlw=t_6q0HDyyoY4`wr&+Jniw6I2aC#%L^;ZQ`vq;dZNL3Mdd;Yn5I}FS4@s z_o>L>5abHKH_688gMRt5i}RW6_f-zsNjc&BvzSX+S<3yBz!k>s?oIwvW)--6VvM4(oapnQSa29^VC`*rS5)B} z)vI0}m0iEqQuPgcYjv0Ng&Cn?Y&P9L)g&7$`5+KC19gx3MQk+FzK9!AU>gqX3=G`O zH6tvDDTJB{Vc@-A8qAkZ(**%f*STs#x=zb02(zUIO`%bb`uEE~7o2gHjL5;vnJtr+ zI!VAtzrFdOy+6;CBIv40Ck9~2`FIi>>96gvsh${2HjO{It!Iy*IM6%Le8o}}7#aeZ z14Y_d+wrz|Ut;7^`3T#je|VRaxSWq2-q+Dj8FmU&&=QE&bdI%9Dv8d9cH#Vvx>yVLVSy0aySa=Da*NH)P?lHQJSM*3dX8A@(WbuNKU| z7kf+E>tgRkCB`9s#4psw;8En$}ZA?WdtI@zjVtWtV7 zE~5jnW9t&P&3K^B^}Y%Kj%7tb?iVW=F|rZrMqD>`Y;C$RB7>COao;7j#~sN3`rXG(3e#d=&_QB;)lmWK<5p?GH%J$j(k*jZ@6&{F45@6v|U zopnc-5I#b;ts|9wfB2*dWT=)sJ?2(^E9){=_Gm`w)QrZQGv}16BzYaZoIFU=RZQI8 z&+GWTEDJ^jdr!aOlKrE|xC76=e%=n0dxhy>Ev=%;fDQ~0PNHw}$olf+Vcki%QYV!! zFnY*!#Ts_m!re!J}I z%I2fBdF3bpqHaJZp`2%EqLK{68H$j|lsMmO5QNf8FYAfAi(a5sl=+iM>omtjI!Fh& z&eK}|s@&VyaFn0$cR=9!V?c!7D`f*eps1eV3zZBU`c4T4nEOyB6qAZ@i>`hdH`Ma= zUl=ntFIj`D2-FQ{`im|4D-BlN-63`f&xiup8RbNMy;dc@h}Q7xmioNIdIb#GpX@>6 zh{-=YC-vkNC3Fz^bST2%kh+&=s*h0*#OgngXr;rhPWaCuHS^EsI-8=t(>z8yUa(ti zGULuRds9A|-CN4vz@q%q&T^_$^qq4i(f(TnF=#+GRi(Llt0=jE=T)in0q|U^9r~%} zg$TtfCT&#s{Fzpz<>c2BU+00x*Ag&mGpzc^FThYbR}oQWMl`%@Z(%KkPT zNTQF|p!B-UE9=N7Aq;jkH^jlAL^=4N)B`R49phgSDHuVEkQ3VumikA1UU>x50#4Ua^bjNho1 zwhHu`ReX)u#Z!E?D?)nT7g7xFByWq_ZQzf!Vsywy57&u!z>#^Lj+5KFi>`Q~Aweig znO4s)w5(Hv5LB^*@i?q~pi~l`e$OG7CJ(3 zjG3$7FL+<=v+d7QMZ--PlG6B>?qf=cHrTb2`lT}i4XeI9<#W{^In=aThe%!O7kaEicw+iX7Cd#cbrkUH;Cce*ew+p=4>U3Pet)FEhQ#V7VMH0YqF*Px%i4rezI`KHVs&fAj`W z*z8Wf9`oc_d^9lY*reFoiQuBc{$TkHqCI-p=snXhiG|W4l@271056ZONEQzVTdcz{%oCA4^~K7zgUCj+u(@)rm@t@7=g8= zi~#9K0e=(v-6`v}bB9Jdo6>*o=3l!f>1&jHQ2oQ2S2{H}zt*Me8M_#akG|85FLm5~ zuMlA_FwsNWq^@zEQ~PH1IBMc-A+KvpqIyCG;c#vS8wfHNc(T6lY!wYGdCwGlI|&lr zR4ASJb_M`=TLSa5dk+epx4r|~uZXrx@Eux{XGjpvwszP`>Jr_ieDX5q6#O`B`D5%( z&*Fh2>}7pC47jjF1>M+*0a+r}fYGn2?W~ZOxGkR!MNTUi4*!!`=ci5HX!5#Mh3`Zv zs3-V1t z!q}w7?{n(@9O1=pl1DvXwJAB>Mn0OjNRQ?Dcx>zG?wIupC+uUmb%eg`Dn=C7Wj$8J ztMOia^TLr}2_~qvnbK=o1!{A;OK>^I@Y7{E(~z0dAKrke%ZHJR!;8>wM(V3@#$C&Pk& z#UIRDG*e1WGQrMUbMND0k}Y?BJo>uS%;Ub^l@J+?rWG!nG>%T|7qiX{Tf1e01K+Y= z75kzk_sYimqRDB#aHV<>c%ez=-xyE_wI~dWLDLO!tcQKut+C|R8u^NF{>UKkz4{e>z7iTQC84k5kMn}=i{PCRv-~z_j=&)Zg46yCe;yEq3K*Qi$ zo65}JG|x4ujAP2cSGg({-9O>YXzf)Jlf6_7n?!9{t91tSx8zREGlZ04T}& z$QDEJv{H@$Y-8N;M5X%%?#8Pqz(qb7QL}-4F2x3b;ne%D@f5Ma1NVp=EaBZ>#ss$X zQn+jqe*afdBU}DDJZ{WL0<`dkzZxaGN)gZ3-;nde4?mCS6+PaA?R8X~t?;_J$jn#C zr{n$%I1CnG{*{K1bU84IDu;#T>%myd`x5+p!0+Os_zo=VECxc;2pZ}yx0pjkMQ=Xa zl_d(eIdF~fCo1NA=sDxHeI7lVtH@PDG`^D4m z-s*X(!<-x);Ln)m9^5#1!%;CTf|M!XK|NIJIt(Y`7nG=^FQ(^|K(l7XJWy8LJyTVdSm%tzx!_vNB{Hx_W$GC`09ov za4~JfR-&MoNf6~*nMCmT?YFOgD^-|CEG=RL8E5dtA^!&uM~8xF1)N02PtDT2xaLno zjwQFcKAxHSal;k=VtWA9H5UYjrH=L{zQxC7(QQ{!FAxDDN<}CVbZE!+<}8u^SDB~k z_SGrcx=w>>Q*VjYjKjnGi1O0tPPPODunp&($XA);>IubV80jahu!i=b{_n0PnJWDJ z8m-)U@SVwCf<67$Ph@H!W#bpOYqOFvw1J3IC=)bOZoHFh7d=Xln$8r3phiqA5g=yt zP(!v^14!7K&Q-r8+A7C#Q}=AZ7U_Xt6Z6$z1^3Go*L%5FYQ^)?s`ZzBUT456S@LTd zumwxoy8z~%QAdk?a6WUo^_APosUTtD>__9%*4mFC@@e5Ro-{5wfB_r-@^BLdqFcydLIfLJ$11nS zUID&xIM=|)o$?%2wPd_P@r}&LZb_5Pt*&k$C1#AVqn~$-&%<>{S0u5F9yu@eXY424 zH@#-1df?R|J_7*ylB15a$^Ib|mT>)OmC!Y7Y?$6iCw$FUDLSZP#Abd@VFwK8>+OJ# z6*LGn|9!kq-JXXF5WA+wvx|quI)QNde}Fk)y)7!QhmG_9;qL24(l*wZ24HG`RGhX| z-_HT8)IK=T))#(2eLD*Hp#!}Bi~Ft!;@tPg7_S;ZsM87#5fRaHoxnf$A22fhl=Bov z^pWVT3&%tW)E5w@rW&aL^_7*^Kbz2(f55b)fEV#Qv za1ZY85Zr>h2PZ*;6Fj)PJ0y5;_XKx$dz-m)=iPVTOwB)4U8$tg4X01#M%iNx0XF)u|PM9NN-Dd3L z<)(w_-DBJep!djS@TomUVNjuPfV}MlOTdC-~PewJ^AcGEY|ITdD*Kx|Z5{5DeSb1?2xi9X_2Yrff1 zqt#G4v{;-WV0ZjME&c6+=A|eHlH`!BQJv12Xxh8M7-}UWtHpYLFu>RK+1GFLjC=Rl zJT!-ibv4Ty*uLffFm>$3?f)CRCpj;iro*KFy z^EZ5Q1m5e#^vrpm8~-63`B(nT|8O_?!47o*wvcK{V}dBaaj~8$XAw}orjYg)5`{rk zyLPP>Z6pjlfH}*1!eW(b{M>#2LN6)SsK`F5F==ATp&LAF3C?6tcKiXlIPYrajpZ5% zCR&wdq+cog(ZFcGWYCa`=*Q590e|8OKuT?hO=r-rji*&F%{}Y&>o*uuxfJc!0kD@y z%q`Er3i0YIETZ_EvFZ`m>LyuSHkx_LjV@}1Wu8mtnLTabT^NkMVGX>DRUC!;@j18+ zvDD5~`sockZZXxM7!-nr-;AiS_z9#%F|LNUU!eO@b@8Ovnp-p_^=20)LYA3y~~_MqofSF|<1ss}^}Xs{7fq zB#It^TP-p3i}w@UPyfp-fDtQ$sSv$PsPJ11vqNnTz@O<-t+V3rY#CdWPCWw@+k8|( z>fLaStj^SUP`>bZUf_8G4wwfioYK|S`s@yh2L zla)%Ztd<(lx4(t}s%J5f1{dn%JjwLhRJoS%I3Fw;tG2kx@%U`9N8<7)YS(`hTc6V< zUaIgfqEq@F^d$k%3r5K5NT8Lal}5?E#Q8NqcCW}@y`xe9^NMG{N*;Rfl14JVFeOmERf%{V0S-@ zRtmfbXEH<8kd`gHoi|e0$yfBuNMI-Q!4D5opEdT-E za-yR{jShVXH2NaSyml<4I^#dPcw2tHS!4psgO#pK8JpZgsH~$H^u`&MU<@+_` zu~u(=vGbMPq1!z(F@F`B`MqX`FG1OQ2b=lm81NrXCh0GaZ$qdIz-*uVU4dF7Rv@dJ zZ#`%;Cqd-%F--1-#9!?AbUxZ~0Sbwd`!~S2_ILNOVsr-o&O{#3v_W*nGA0I;oHAOe zB;aEwmqE#?9J_q~P&$?&pLUaxSfN=?$-*3bgFG2+;N$@kaf<^KQUwy4oezhH^}bhJ`G|qZ5`~2fnOw!{tKFl;j%eJP zV&}vT8p<8O6D|47tJi#?K0nCzcgx@J$Pjeg2yb35naDk1%}Kku1N&x*7JsDe1_M7e z*0;uhqxIO}>6eN+XV8I#g%!H-;w7Rrz>9ij=+!S&SBKjgs*y;@-%{lkk>H#jNy0S% z8%O~gaE8*Fg@nr!*1p+ux;>JvVmb!fZ%F-NGGA`6A94^*_QMVYt6ogpfgJSO^TFOn zs#NRo>fqQehz26x8~+y%ZVCf&&!1l~3z*vHa+ra&O-S?6Qk{zVW|)@hpn?x{quZ+- zlo+z_4>8y;>38u!Z{$>I-(mOx0xOrjZS>5vU+C9HNK?8jhuaa~Al>i{{JI5jGNqjd zzQ%USSCD~1D+aoks%N5Ms+5*RR!PY@d{0%b8Y!vL(fuky#7OF?Rm(h+p@}S5yU$RUSS;q-o~*(cm~xiv3vQNO0C}EJwy_vc8-QzOT4N-kw3OXy!{Wu|$MdjmR%?8d z@o>3CqwSj1%c;1ADGpT7@Bi8t0&&zi?4^xRx4862X=ZeMS;Hx;Rbu&d*CL^MBN^PH zFH!Jt00dH%U)g8j>yjfVi)Bz1?b?P zDj=1W5n^QmrDZr@PgFX)afUg&F_2Ku1P~JhAcO_w79QUcr0pMUjx03|G2%TC3JeXW zb36Uvb=uBw%Gl;Z#s8Qq`BmAKribeNJWDvnR)%wNPYBAarze*HGt{`8Y(^cL3-vbT;{CIA!0ZO1Y}O@6UV^hFQ8VM)Hj!>wWDSJ^r=&5 zL*ep_Jrt=Yx~nG?^#a5YA?nd}g>x1m>{B>OQ~B#~i~i}0u3*qn0_pZOk^ohxt$P3b z^oXBey%ES@B>0UYsk$2^?P{ecWbnB*)ro%N%jZe1a9DMla6RX^ahR`hYbXWI>cQjE z3@0m-1#SkIMx|$nU?^S_K_yJ^dm!IsKe2o=%!B4EdcS6R!~-*f4#Wg5yh5jsA#tZ% zQ`$+p69!q&Uj$rxdLAG5cMa~+PKoI4%AjmvG-zbD7zf$j_->%BzscV5MpwAiVetU5 zVOA0!3ATRO--d3Zh})oPQumxIWD2yAgMDM7#GL8yD_n?+Jh|Mr+6Atmo34>lbrhfZ z&7q`Ar~M1xsS*%H$C9C1p``ZwiAo_+w=cm(88)8;;@_iOiT~{x|4Pa=x!Dct#{=ik z_AOKS=ZjrG{h;B#s^fClnn~2|PBQWfA&`qRMHmj~&g);6{OePZC8G%L<#Ev-DaF3L zNq9{mJ@}1d^m}{Oh`h6%tBp9JnJ`xkXB~1_|jHBSX7R6YGtW2fNz&l-=!_Sgg zA!ek2t;zCO4NyJXh&PsD#lll+P`~eAU9|$_sP6fgs@SZtJRgbtEN#DYr8! zn2B)l7y=au$gb&E0p4x6S&SnM8 zj@yzHTCmv97_WpKQg}?8>*x5KwrX`%8PAPq!)3!NHfPFI6spYziVYTk|4~fCH0sn9 zfj8Q% zAnAk8d|n9(syR+*$|S5gku3^(`~J$Z*8($~xQhEbhb1((sNT~xTaZYe<9qQmRi!xo zyHL03OZ&07Z<$VAA|U%%XaoR)?6~?I%kyQBi$w639;XaIM6zKw)iqureP;!j;uPwo zntQOEZR~fgRrOOLcwz=eusrUlQyk1$;RL+()oV5tk^SG3=aPpu1^zSA_a8C1|Lvba z6cBFw(vth%z{0fP9K2S6K^uEcc9DaLTa{UGFC5I7tQ0*9r*kg#r~!Lx4ft_B!du<msu#zCiu-cE4dFbyVJ`8k2n<07 zotN-M);KKg7*iyiB$uc=k$}%#aUU=HI*1Jg2c_#%md85< zC+iPuh_G=g=(Sp9J-E1;YPN?RDf}UR{aW=^5r4A_ZWzDH*Tb+s z%s5ummZEC;4?|*+^(VG&wB(k#=BXZAx`D^@`oXN zNI)>R(A?{=SQ6uWX3p_I3Wn}5=sut1tG}F%^((3W{6wZxRe-dX3G(+mS!*wt9OWD3 zqMt3tpCVe(JAu4b^R{UzxHv&sA3#p8aH*0$E|M*&J?i@n4I5xiRtrT~aMr+9YAROC#Y^Ri1wcDbv?s$@Q<|DYrMlWH2Gu@ui>JhZcq@T-GW^}*tWg&C*TX2 zn;ZpV=J{U3eRk87-22wLi(-H!%BvT>%f{f$L#tzU z@x>5SyzEFl7?igk@F#S58C|#6RR0=96R{T__EbA>7r+g94rX`aU4HisH+Hpz`3KgX zSm+O4`YE~rNKy_6zQ6)`0@u3JJP#DdgdIcJ5TveK2VwPV{I@&q)H4&zaF&Lp#-=zy z=k4*i_MY`|@OGi6}9-i`&3d04AhO3=j|%)0pr(XIXgwYmjU>QsaT-g&4G}J^ z(5kRnaa%|nlg6GHK6GBR5S8?;5DAArr+7&>7dnB|5y(W1{vVG69Lm2vgbFc|`OOmn zg#I3M8l*I_1&Smi<&vwP1gia>+ZCBop^#>W}~11FZ{wjEg#8RY?6m)-hPUfB#VmH^$Zf1t~i2-_GFw`cEM!Dsb}Pd|zq# z{O!;C&+|}8iUx9ufji_^5VI$>;&vtt0x5M(lW4W1zl%rGQb@>NnAvyBO%fH;VpW&rmsB&=&{A2ppDNrvk>apV$POK;Kplb8k9GuGeuu znLv9t1RNtSPw}}O2fJQ{nm)I`iUpn)8rsHGHVd_Pd=o%oIl*->`3?-Bd7_h9jCqW{y$9O2-(2@{c$`D`&?^nHf*(4GEvKvNHa*sV0I|zPcvO0> z(>5b0%h=Z|HJ3FsAdmii-Tt>{y;FvKO-^vDjCN~3eQzRWTgPrQCR%{@kilypg{|OV zxn`AB4`|m-XNI{Gx6{+8^;?5JeD$*@Cm%$WZ_0L%TW-EIS(-cLu@;5pH^0*T465*$ zKlYiR3?tmoGXWi8z+Xi{AQ|X zCU~5-F`!9-cSIr*csL;g!sSV)J`ZANINkf(Z|&v{wvUw8$E!&W>wSa%fv`XJ+C$_S zlIi|`yV-xYD&BiTf;naak-{_1Dc)-cZTrnLQ*N)Tk1^jyfL=wr)`AAeppYHYh`O;M z>{jD4eVa*>Ds&TNk{Aak@?=a#GnTuq5;5DgM;2l_hseMFMHrJRjLx2aW>W5AYfF4D7qPs;d zbHxYR_6dtgn-=5{I;ShdQAW~hH)?Js==4UX67x4-JEya`#vFst=UkCnggZr$=?=u* zdn*d3sS;O$G=lld(TU69u_tIh$b=! z^$#x>0c1%(eY4?YMy;B5nwQ*I&E;8Q+_P7I>kDf&fpopA0%^cfKffgCasX;o`AiSV zmk>@G-Ns6xQP_0yZbjifIDg+t!$5IuBKUMd(gGprcxoCMEGCuR1`9n(=NN!b7ksH@ z70GP4LshDH%W-D0(AwLA73@iQTRvwYNv=@`v7XiIc;c#8adli(m&I zy&nEQSgd9QMJ0It7AlrE>4pi_)#wg$cZ ze)LT^BQ>HlugA;Tw!OozQ6i9EgI_Lch~bBdj#$thNzd9E06vGgZfX0$f*8nMWkh~E z69=Lxo1=`klMH+lfezAALAV#*9XVi{XekUgfGF?NCtpXY;J4=*mbEQ z97!ruAkg`-Iu)PCTQZ;S6?RSMoatF^QMLLbbE$Tlbg+O-ab(!qa-n>>g6Z&_(nPJ6 z(=5g5I@MV3yQG9XOMvW|c6L6U4NzrTkrCkhT554q2$rEMoh(o%={yNkmk$2jjR>z? zy94WZw8Y(($tCr=$e_YM4M8x7z*GFGNcHdOCr|?QazzYZMrj zlhG71-(>M1aMS|I(MMpui}~dbu|>7mt$J(|n66=DxkRd!sD0g^^-BPd>8=Tb_Pfay z8Q+IfiL%MXYSS7l4y}mGni6{!dXneIUJ!8j?f_vAfVCFCHc@y?qyCMAkh|%@h zWA&+x)>+r|bJ3ouB)FAtW_@Xf#QlEJYJa6zVM~Bpe8h_{izCj*EJBy-+&`UQi;eDD zZ?{@r!SWPXB^ygF6&dZB$|r{KIj21E;$U3m>R_3SD2ag~^_^X;fDdHtH5pgMU)N+3 zD0F%rVp?GIeR0gGxS8>8zSE!35i4*@=Y9#UX_VWs){W=X}??)q_uf#L_mLD`-Ver_kC^?)t@*pmjV@_gigZyR(vJlxS&2cqY; zAD8ocPq@2{ppE(8TLS+ivCbmj;iS8GIvsr!IteIyqZkrVac<|Gtap+^s%Sf>wyRBL z-wXIA?jrgbJ?XANRqOd%z&T)*@J4-?qHjQgD8Y9m zJjzR8Y(ASYnouCV#VunOJ6q5N+pby7$rI;Em@zx)l4 z%8m|jWy^T?iN(O~pr;0@6{U*??CF>BIbjADG$qYKOwI4P848Od?2t}12vb1(x?&xw z5s0W>u|f<*X5O)!t$%cqIyhpx=(Wd!7!^Yk?2wJs!ga7wMt6v%QpmoX95XFYRWdXB z5k}*6eK<~-6(RDPN}itI(=`r|ng#*L8_^ThaH=0&a2`Avo>-<`Xiop-jUtThSP#+T zQQ?`%W|?}8F^1gOoxB3AIg?K@bo&D-v+>uU3BygJmiE7=h|-sxzFAAg%MO1(z} zf;e`5ang~s-CrN?GXRU+d%B~H%cI7T&ntwx)Z}PdaD3+y*z(#nF8f%!H)2$Wv8YUn zIAsS5b!=gIWcsem-TwC-wS&zVOeXFt+y$+t$)*+6xz0(3qM_C~Z+rfN+5WAzU0GfF zzC9$ljiBr8W$C~@`otRB(ni;JC!IC*$Jl5LswiLFiq%Se-=lUQ@Z^-?lm!Uy7;-d0{pe_}UxJy_t1xYdUIf6@?|2*(w#Tmhb>P zi)ls}Ll(<^;prm(d-jJcmA|#=5|g6Ye>n%UT8kaQcjX?h~_lnRH?dOlU z&Ku*gEdPmWQ#wrOybgRtae=r3*$EiYjEU4}J#}=I;qY@*B7stuPvSUiPTB{&Hm@dl zrprhf@L4}DH467ere~$Ibi$c|&@gR3xC&n2`6SMo^vSE9vu5BMM~PlvWuOH)0grRM zsf>n&9wX_mRkppN1@n+w%y6B>fZpNyl#(2L%mu8D&fysnqs0&~w? zGc`(h66kc~@t_juH00}T7K_P-Ix$|izV3>P(Ly4l#=pOuHAt8YMckUKzu&rlu}rgE ztWQVz<$86XmBR0pn8xLxt7s6ECThVgN+{q-jY`DFmc<%{yEx`v4~pB8*?PQ9Je?Br zZmwgS#Wo2}Ou{37IxSGq=DF;@I}__ex%1GfJW0VOA%n<}bAMYMhdsWyxH;rRj;0SE zM7K_ib9eCU+7bU$7~xxVcxRS0^m^*AFy;?>JbpBw>BD&VOB8Jgz3-P%6pID^@pw(k zyJB2kv$Xn)N5IR0W;_<4z8hYclmrk8kFf^G=A}xY6$r<$!k0}FXp1t0lM(G%KqCw| z+xkTZSk;L-gIt9weT--KhpW&w%%O^boEdAgyMv@w{Uq8k4dQTW~nqah59#qGU%_sk8J6XFg+!Duq2abM(DfXPuS z@E+E#2LKk!z$M-+McWrMNCmMFA@gQ&+|fqFR_e>WY0=>BJqkGF832AYd2d#`eg_8K zV)tud5HOtP@|lUiBG5{Y;jCfMDNy?OJ)>STbvPD7Jjx+2ZF!Pzl6%W2v-jP@dGCVC zSfA;jw8AtaT!ilj>UST61d}w#gNOp%@J0D{OCp^V2nFHKbV=!PL`;Q0JUFdyAzRKB z`nOYwg}+HyX}hNm#SVqK4Cc(5DbsnYwQFxo`rIgx>L#*2?>OP=L{Rzs{d$zY17k1{ z(|J3_Njfvye3Bm6Lp$;FZmn-Ug2j}2{#yY4{Ts;a*XjpiZ&9sP8wcprisL`3&lDcL z<~-V8P`*5BYq@(<$}1C3UF65SJlX6Q63nRk^edH94bQ?R|MecVjF9PeX~ZLY9I72uKe10rEv-cFTqA9;c!kp}RJ znzu!uG0SypZp&FhzcU@od0|$8hZOE%m?!G*-J#09|m?7DZ6kM!P}nlp5CkFbxNnI8E!`mEZz3)*(XYZ`=^U z>~9|G;KCS~swVyUDQ!W9hqEwMsNbV>SzlQV$`bCin5zc{yHK=un79 z;HzeYBY@6{F|ks51`d67N65dsKD1&0FibMe(rG(ZaY6C?Wx593#u01g!^kIT)j z+)EAa3bQ1!pnE2R!wjj^XBGnXU0-a&xygbO16ZKW{0%>Ad5@Q2-Dfq*rnBlLyujUoU~Fa8N#z%jj?OL?bS_Nv0E;#b3U39`{3T+?8JYU_LlCz+;4*CV=zjP@so;?-PO)%qyxT*qv08 z7vX;zpNsN04jV==zM0^egkPsBs~I1;viXP0PbtuM|fZYwW^Y_g)&bZJ>;3lc7C;kIqU8TA|X*od$5;Q~710$XKq^)35N zWk*ELAnm4ZobcIVb@&i0Vu~$?lAghWy+QkTDBDFw z(AX2N(jJRrs6{A>qG=%RHVq--d5~PAFvVw^xT^+CgnV{&!6#lfZ!%m}bJM$s z-Iq?K-WEQ7b4Y!UNTo5KO((0HVYSk*Cn3D)@TKd*<+A@I?RL>*)E7Ze=2vMplE#3? z`B6DN>|&zAuhVI_6s5ID7wS94AKTA12^oD-e`mZ(%nmoV+XtX9GL87zw>VeB85|N< zwCe~|)xiHUh1sE%6=9cwxBfVORG^G3OgZ4hFb34HJCbC0Gj_4|TW8@cp))w26?kMa7iZ31M! z@hRcu4?pi&m$8*8W`Cc_?so6h%a>0rZu^tP51fzVWCmYNEVx*6klA_a2L(c+a>>m# zyM)tOm+nZCe(doH8R1^_x-I=O(RaE8L>MB$#X5`z z&Nm`n*>CyWvjkuRi?T&w=@j%Js;#$eAARui+r7;A+q`@}BCbol4$Fo5ZqlE;+rg;` zWkp^J_gmz+EAXB~-MZELpxdge`gIi&a*{8JdSx^&*en%J)=i&I9Y(u#bRsS)4}vkP zxy5rFMi#MF!U+W~@H-|J>-ZEP4Tab0G~qYK*Ui(fDycI~W5E=!GaPM=_dsmtRQokC zU{iFuX=<)QBq~6XpO6BG$qU`HH4(r{rSK;NSTk;)Ho;8370!RHwFhj1V-?F9=sW>A z+dXwaMdY-Euds_jB~J?B^D0+tXe;rylMRXQ*?nSBm=i&7bGc>odx@r*kwZ83apKPr10b<~p$k;yt6@VRz3qUh=6a=;h`eg81=;7Z-KYgo~_j{A5 z_F?`7VnO=|=^YAPdn}{O}Vd znUR6EE3N3{uY6y+O8+pCPgu?9oAOl|;EgXoed{wq^w+;$>Im;pv3TB}p5RlslXki# zQ_=E?gCkISIRd4lH~UiH2wr|`M&Sw03mirQR^NC^Ml@#Qz1;SFzn{Xaa750NSXkR$g=P1Clkbc`pRuwJ)DIBh@JXPB;GY8niGlRK3`n)_G^QKnwUw6mS0Xc-^Cf zF1DjiK2f4kNWTHPC_l*_Sjar-#8}`PDqUst(-e#y&MtOUeCnnhh^kT4CpHFDBth!t z2ACjzC6|ipzh3pLI3Gyojn?gWD#?{jkuHC57PAFx_tJ+l#%imIX@?STk$rbf2l%op zW`k|0?t3rfOBpb<0{!BmM^19=KM}sQ1X48M(SF29_I-M`?dbu(3hu-sT=P1-?q6pP zVK`8v(t`J84UUpuyTvwZcrvXBG=F3bX@iB441Y6wokVJiAd~;mmsDxkoOG?7wT8=W zuk}E;Lnd)lmkpl`}XuiLRIf`_? zYwraVv8FvxX#Nw5Ye5Q(>ECldT*#CJDWMrdRJka?&R4R1XHJU8?TB>zyO@(H9+

QpjCDCCoqBbd_i&=j_Wpc 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 Gk^cppH);3) literal 0 HcmV?d00001 From aed0dcf4fe7e50f5bb13f35f51ac506319ac73ce Mon Sep 17 00:00:00 2001 From: Corwin Date: Mon, 14 Jul 2025 15:39:32 -0700 Subject: [PATCH 6/7] evals section --- examples/Optimize Prompts.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index 7fff956936..b51223be4d 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -386,7 +386,7 @@ "source": [ "## 4. Using Evaluations to Arrive at these Agents\n", "\n", - "Let's see how we used our Evals to tune agent prompts + pick models. We constructed a set of golden examples: each one contains original messages (developer message + user/assistant message) and the changes our optimization workflow should make. Here are two example of golden pairs that we used:" + "Let's see how we used OpenAI Evals to tune agent instructions and pick the correct model to use. In order to do so we constructed a set of golden examples: each one contains original messages (developer message + user/assistant message) and the changes our optimization workflow should make. Here are two example of golden pairs that we used:" ] }, { From 45aff8322fc99927381d699ac2dbac3c778e892f Mon Sep 17 00:00:00 2001 From: Corwin Date: Mon, 14 Jul 2025 16:18:11 -0700 Subject: [PATCH 7/7] traces --- examples/Optimize Prompts.ipynb | 268 ++++++++++++++++---------------- images/optimizepromptfig3.png | Bin 0 -> 61810 bytes 2 files changed, 136 insertions(+), 132 deletions(-) create mode 100644 images/optimizepromptfig3.png diff --git a/examples/Optimize Prompts.ipynb b/examples/Optimize Prompts.ipynb index b51223be4d..2600c81669 100644 --- a/examples/Optimize Prompts.ipynb +++ b/examples/Optimize Prompts.ipynb @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -79,7 +79,7 @@ "from enum import Enum\n", "from typing import Any, List, Dict\n", "from pydantic import BaseModel, Field\n", - "from agents import Agent, Runner, set_default_openai_client\n", + "from agents import Agent, Runner, set_default_openai_client, trace\n", "\n", "openai_client: AsyncOpenAI | None = None\n", "\n", @@ -384,7 +384,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 4. Using Evaluations to Arrive at these Agents\n", + "## 4. Using Evaluations to Arrive at These Agents\n", "\n", "Let's see how we used OpenAI Evals to tune agent instructions and pick the correct model to use. In order to do so we constructed a set of golden examples: each one contains original messages (developer message + user/assistant message) and the changes our optimization workflow should make. Here are two example of golden pairs that we used:" ] @@ -392,91 +392,87 @@ { "cell_type": "code", "execution_count": null, - "metadata": { - "vscode": { - "languageId": "javascript" - } - }, + "metadata": {}, "outputs": [], "source": [ "[\n", - " {\n", - " \"focus\": \"contradiction_issues\",\n", - " \"input_payload\": {\n", - " \"developer_message\": \"Always answer in **English**.\\nNunca respondas en inglés.\",\n", - " \"messages\": [\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"¿Qué hora es?\"\n", - " }\n", - " ]\n", - " },\n", - " \"golden_output\": {\n", - " \"changes\": true,\n", - " \"new_developer_message\": \"Always answer **in English**.\",\n", - " \"new_messages\": [\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"¿Qué hora es?\"\n", - " }\n", - " ],\n", - " \"contradiction_issues\": \"Developer message simultaneously insists on English and forbids it.\",\n", - " \"few_shot_contradiction_issues\": \"\",\n", - " \"format_issues\": \"\",\n", - " \"general_improvements\": \"\"\n", - " }\n", + " {\n", + " \"focus\": \"contradiction_issues\",\n", + " \"input_payload\": {\n", + " \"developer_message\": \"Always answer in **English**.\\nNunca respondas en inglés.\",\n", + " \"messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"¿Qué hora es?\"\n", + " }\n", + " ]\n", " },\n", - " {\n", - " \"focus\": \"few_shot_contradiction_issues\",\n", - " \"input_payload\": {\n", - " \"developer_message\": \"Respond with **only 'yes' or 'no'** – no explanations.\",\n", - " \"messages\": [\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"Is the sky blue?\"\n", - " },\n", - " {\n", - " \"role\": \"assistant\",\n", - " \"content\": \"Yes, because wavelengths …\"\n", - " },\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"Is water wet?\"\n", - " },\n", - " {\n", - " \"role\": \"assistant\",\n", - " \"content\": \"Yes.\"\n", - " }\n", - " ]\n", - " },\n", - " \"golden_output\": {\n", - " \"changes\": true,\n", - " \"new_developer_message\": \"Respond with **only** the single word \\\"yes\\\" or \\\"no\\\".\",\n", - " \"new_messages\": [\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"Is the sky blue?\"\n", - " },\n", - " {\n", - " \"role\": \"assistant\",\n", - " \"content\": \"yes\"\n", - " },\n", - " {\n", - " \"role\": \"user\",\n", - " \"content\": \"Is water wet?\"\n", - " },\n", - " {\n", - " \"role\": \"assistant\",\n", - " \"content\": \"yes\"\n", - " }\n", - " ],\n", - " \"contradiction_issues\": \"\",\n", - " \"few_shot_contradiction_issues\": \"Assistant examples include explanations despite instruction not to.\",\n", - " \"format_issues\": \"\",\n", - " \"general_improvements\": \"\"\n", - " }\n", + " \"golden_output\": {\n", + " \"changes\": True,\n", + " \"new_developer_message\": \"Always answer **in English**.\",\n", + " \"new_messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"¿Qué hora es?\"\n", + " }\n", + " ],\n", + " \"contradiction_issues\": \"Developer message simultaneously insists on English and forbids it.\",\n", + " \"few_shot_contradiction_issues\": \"\",\n", + " \"format_issues\": \"\",\n", + " \"general_improvements\": \"\"\n", " }\n", - " ]" + " },\n", + " {\n", + " \"focus\": \"few_shot_contradiction_issues\",\n", + " \"input_payload\": {\n", + " \"developer_message\": \"Respond with **only 'yes' or 'no'** – no explanations.\",\n", + " \"messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is the sky blue?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"Yes, because wavelengths …\"\n", + " },\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is water wet?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"Yes.\"\n", + " }\n", + " ]\n", + " },\n", + " \"golden_output\": {\n", + " \"changes\": True,\n", + " \"new_developer_message\": \"Respond with **only** the single word \\\"yes\\\" or \\\"no\\\".\",\n", + " \"new_messages\": [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is the sky blue?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"yes\"\n", + " },\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Is water wet?\"\n", + " },\n", + " {\n", + " \"role\": \"assistant\",\n", + " \"content\": \"yes\"\n", + " }\n", + " ],\n", + " \"contradiction_issues\": \"\",\n", + " \"few_shot_contradiction_issues\": \"Assistant examples include explanations despite instruction not to.\",\n", + " \"format_issues\": \"\",\n", + " \"general_improvements\": \"\"\n", + " }\n", + " }\n", + "]" ] }, { @@ -535,55 +531,63 @@ " Returns a unified dict suitable for an API or endpoint.\n", " \"\"\"\n", "\n", - " # 1. Run all checkers in parallel (contradiction, format, fewshot if there are examples)\n", - " tasks = [\n", - " Runner.run(dev_contradiction_checker, developer_message),\n", - " Runner.run(format_checker, developer_message),\n", - " ]\n", - " if messages:\n", - " fs_input = {\n", - " \"DEVELOPER_MESSAGE\": developer_message,\n", - " \"USER_EXAMPLES\": [m.content for m in messages if m.role == \"user\"],\n", - " \"ASSISTANT_EXAMPLES\": [m.content for m in messages if m.role == \"assistant\"],\n", - " }\n", - " tasks.append(Runner.run(fewshot_consistency_checker, json.dumps(fs_input)))\n", - "\n", - " results = await asyncio.gather(*tasks)\n", - "\n", - " # Unpack results\n", - " cd_issues: Issues = results[0].final_output\n", - " fi_issues: Issues = results[1].final_output\n", - " fs_issues: FewShotIssues = results[2].final_output if messages else FewShotIssues.no_issues()\n", - "\n", - " # 3. Rewrites as needed\n", - " final_prompt = developer_message\n", - " if cd_issues.has_issues or fi_issues.has_issues:\n", - " pr_input = {\n", - " \"ORIGINAL_DEVELOPER_MESSAGE\": developer_message,\n", - " \"CONTRADICTION_ISSUES\": cd_issues.model_dump(),\n", - " \"FORMAT_ISSUES\": fi_issues.model_dump(),\n", - " }\n", - " pr_res = await Runner.run(dev_rewriter, json.dumps(pr_input))\n", - " final_prompt = pr_res.final_output.new_developer_message\n", - "\n", - " final_messages: Union[List[\"ChatMessage\"], List[Dict[str, str]]] = messages\n", - " if fs_issues.has_issues:\n", - " mr_input = {\n", - " \"NEW_DEVELOPER_MESSAGE\": final_prompt,\n", - " \"ORIGINAL_MESSAGES\": _normalize_messages(messages),\n", - " \"FEW_SHOT_ISSUES\": fs_issues.model_dump(),\n", - " }\n", - " mr_res = await Runner.run(fewshot_rewriter, json.dumps(mr_input))\n", - " final_messages = mr_res.final_output.messages\n", - "\n", - " return {\n", - " \"changes\": True,\n", - " \"new_developer_message\": final_prompt,\n", - " \"new_messages\": _normalize_messages(final_messages),\n", - " \"contradiction_issues\": \"\\n\".join(cd_issues.issues),\n", - " \"few_shot_contradiction_issues\": \"\\n\".join(fs_issues.issues),\n", - " \"format_issues\": \"\\n\".join(fi_issues.issues),\n", - " }" + " with trace(\"optimize_prompt_workflow\"):\n", + " # 1. Run all checkers in parallel (contradiction, format, fewshot if there are examples)\n", + " tasks = [\n", + " Runner.run(dev_contradiction_checker, developer_message),\n", + " Runner.run(format_checker, developer_message),\n", + " ]\n", + " if messages:\n", + " fs_input = {\n", + " \"DEVELOPER_MESSAGE\": developer_message,\n", + " \"USER_EXAMPLES\": [m.content for m in messages if m.role == \"user\"],\n", + " \"ASSISTANT_EXAMPLES\": [m.content for m in messages if m.role == \"assistant\"],\n", + " }\n", + " tasks.append(Runner.run(fewshot_consistency_checker, json.dumps(fs_input)))\n", + "\n", + " results = await asyncio.gather(*tasks)\n", + "\n", + " # Unpack results\n", + " cd_issues: Issues = results[0].final_output\n", + " fi_issues: Issues = results[1].final_output\n", + " fs_issues: FewShotIssues = results[2].final_output if messages else FewShotIssues.no_issues()\n", + "\n", + " # 3. Rewrites as needed\n", + " final_prompt = developer_message\n", + " if cd_issues.has_issues or fi_issues.has_issues:\n", + " pr_input = {\n", + " \"ORIGINAL_DEVELOPER_MESSAGE\": developer_message,\n", + " \"CONTRADICTION_ISSUES\": cd_issues.model_dump(),\n", + " \"FORMAT_ISSUES\": fi_issues.model_dump(),\n", + " }\n", + " pr_res = await Runner.run(dev_rewriter, json.dumps(pr_input))\n", + " final_prompt = pr_res.final_output.new_developer_message\n", + "\n", + " final_messages: list[ChatMessage] | list[dict[str, str]] = messages\n", + " if fs_issues.has_issues:\n", + " mr_input = {\n", + " \"NEW_DEVELOPER_MESSAGE\": final_prompt,\n", + " \"ORIGINAL_MESSAGES\": _normalize_messages(messages),\n", + " \"FEW_SHOT_ISSUES\": fs_issues.model_dump(),\n", + " }\n", + " mr_res = await Runner.run(fewshot_rewriter, json.dumps(mr_input))\n", + " final_messages = mr_res.final_output.messages\n", + "\n", + " return {\n", + " \"changes\": True,\n", + " \"new_developer_message\": final_prompt,\n", + " \"new_messages\": _normalize_messages(final_messages),\n", + " \"contradiction_issues\": \"\\n\".join(cd_issues.issues),\n", + " \"few_shot_contradiction_issues\": \"\\n\".join(fs_issues.issues),\n", + " \"format_issues\": \"\\n\".join(fi_issues.issues),\n", + " }" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Trace for the workflow](../images/optimizepromptfig3.png)" ] }, { diff --git a/images/optimizepromptfig3.png b/images/optimizepromptfig3.png new file mode 100644 index 0000000000000000000000000000000000000000..f5f96fdc84c892cc3b8075d95bc2a46ab1e1b028 GIT binary patch literal 61810 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 literal 0 HcmV?d00001