Compare commits

...

16 Commits

Author SHA1 Message Date
João Moura
464dfc4e67 preparing new version 0.14.0 2024-02-22 16:10:17 -03:00
João Moura
1c7f9826b4 adding new converter logic 2024-02-22 15:16:17 -03:00
João Moura
e397a49c23 Updatign prompts 2024-02-22 15:13:41 -03:00
João Moura
8c925237e7 preparing new RC 2024-02-20 17:56:55 -03:00
João Moura
0593d52b91 Improving inner prompts 2024-02-20 17:53:30 -03:00
João Moura
7b7d714109 preparing new version 2024-02-20 10:40:57 -03:00
João Moura
e9aa87f62b Updating tests 2024-02-20 10:40:37 -03:00
João Moura
8f5d735b2f bug fixing 2024-02-20 10:40:16 -03:00
João Moura
e24f4867df Preparing new version 2024-02-19 22:50:38 -03:00
João Moura
ef024ca106 improving reliability for agent tools 2024-02-19 22:48:47 -03:00
João Moura
4c519d9d98 updating tests 2024-02-19 22:48:34 -03:00
João Moura
94cb96b288 Increasing timeout for telemetry 2024-02-19 22:48:14 -03:00
João Moura
108a0d36b7 Adding support to export tasks as json, pydantic objects, and save as file 2024-02-19 22:46:34 -03:00
João Moura
efb097a76b Adding new tool usage and parsing logic 2024-02-19 22:43:10 -03:00
João Moura
af03042852 Updating docs 2024-02-19 22:01:09 -03:00
João Moura
21667bc7e1 adding more error logging and preparing new version 2024-02-15 23:49:30 -03:00
54 changed files with 45511 additions and 34174 deletions

View File

@@ -19,6 +19,9 @@ Tasks in CrewAI can be designed to require collaboration between agents. For exa
| **Tools** *(optional)* | These are the functions or capabilities the agent can utilize to perform the task. They can be anything from simple actions like 'search' to more complex interactions with other agents or APIs. |
| **Async Execution** *(optional)* | If the task should be executed asynchronously. |
| **Context** *(optional)* | Other tasks that will have their output used as context for this task, if one is an asynchronous task it will wait for that to finish |
| **Output JSON** *(optional)* | Takes a pydantic model and returns the output as a JSON object. **Agent LLM needs to be using OpenAI client, could be Ollama for example but using the OpenAI wrapper** |
| **Output Pydantic** *(optional)* | Takes a pydantic model and returns the output as a pydantic object. **Agent LLM needs to be using OpenAI client, could be Ollama for example but using the OpenAI wrapper** |
| **Output File** *(optional)* | Takes a file path and saves the output of the task on it. |
| **Callback** *(optional)* | A function to be executed after the task is completed. |
## Creating a Task

View File

@@ -15,7 +15,7 @@ Ollama is preferred for local LLM integration, offering customization and privac
### Setting Up Ollama
- **Installation**: Follow Ollama's guide for setup.
- **Configuration**: [Adjust your local model with a Modelfile](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md), considering adding `Observation` as a stop word and playing with parameters like `top_p` and `temperature`.
- **Configuration**: [Adjust your local model with a Modelfile](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md), considering adding `Result` as a stop word and playing with parameters like `top_p` and `temperature`.
### Integrating Ollama with CrewAI
Instantiate Ollama and pass it to your agents within CrewAI, enhancing them with the local model's capabilities.

2433
poetry.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
[tool.poetry]
name = "crewai"
version = "0.11.1"
version = "0.14.0"
description = "Cutting-edge framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks."
authors = ["Joao Moura <joao@crewai.com>"]
readme = "README.md"
@@ -16,7 +16,7 @@ Documentation = "https://github.com/joaomdmoura/CrewAI/wiki/Index"
Repository = "https://github.com/joaomdmoura/crewai"
[tool.poetry.dependencies]
python = ">=3.10,<4.0"
python = ">=3.10,<=3.13"
pydantic = "^2.4.2"
langchain = "^0.1.0"
openai = "^1.7.1"
@@ -26,10 +26,11 @@ opentelemetry-sdk = "^1.22.0"
opentelemetry-exporter-otlp-proto-http = "^1.22.0"
instructor = "^0.5.2"
regex = "^2023.12.25"
crewai-tools = "^0.0.6"
[tool.poetry.group.dev.dependencies]
isort = "^5.13.2"
pyright = "1.1.333"
pyright = ">=1.1.350,<2.0.0"
black = {git = "https://github.com/psf/black.git", rev = "stable"}
autoflake = "^2.2.1"
pre-commit = "^3.6.0"
@@ -48,7 +49,7 @@ known_first_party = ["crewai"]
[tool.poetry.group.test.dependencies]
pytest = "^7.4"
pytest = "^8.0.0"
pytest-vcr = "^1.0.2"
python-dotenv = "1.0.0"

View File

@@ -1,12 +1,13 @@
import os
import uuid
from typing import Any, List, Optional
from typing import Any, List, Optional, Tuple
from crewai_tools import BaseTool as CrewAITool
from langchain.agents.agent import RunnableAgent
from langchain.agents.format_scratchpad import format_log_to_str
from langchain.agents.output_parsers import ReActSingleInputOutputParser
from langchain.agents.tools import tool as LangChainTool
from langchain.memory import ConversationSummaryMemory
from langchain.tools.render import render_text_description
from langchain_core.agents import AgentAction
from langchain_openai import ChatOpenAI
from pydantic import (
UUID4,
@@ -20,7 +21,7 @@ from pydantic import (
)
from pydantic_core import PydanticCustomError
from crewai.agents import CacheHandler, CrewAgentExecutor, ToolsHandler
from crewai.agents import CacheHandler, CrewAgentExecutor, CrewAgentParser, ToolsHandler
from crewai.utilities import I18N, Logger, Prompts, RPMController
@@ -73,7 +74,7 @@ class Agent(BaseModel):
allow_delegation: bool = Field(
default=True, description="Allow delegation of tasks to agents"
)
tools: List[Any] = Field(
tools: Optional[List[Any]] = Field(
default_factory=list, description="Tools at agents disposal"
)
max_iter: Optional[int] = Field(
@@ -151,7 +152,7 @@ class Agent(BaseModel):
task=task_prompt, context=context
)
tools = tools or self.tools
tools = self._parse_tools(tools or self.tools)
self.agent_executor.tools = tools
self.agent_executor.task = task
self.agent_executor.tools_description = render_text_description(tools)
@@ -200,12 +201,15 @@ class Agent(BaseModel):
"input": lambda x: x["input"],
"tools": lambda x: x["tools"],
"tool_names": lambda x: x["tool_names"],
"agent_scratchpad": lambda x: format_log_to_str(x["intermediate_steps"]),
"agent_scratchpad": lambda x: self.format_log_to_str(
x["intermediate_steps"]
),
}
executor_args = {
"llm": self.llm,
"i18n": self.i18n,
"tools": self.tools,
"tools": self._parse_tools(self.tools),
"verbose": self.verbose,
"handle_parsing_errors": True,
"max_iterations": self.max_iter,
@@ -225,9 +229,11 @@ class Agent(BaseModel):
)
executor_args["memory"] = summary_memory
agent_args["chat_history"] = lambda x: x["chat_history"]
prompt = Prompts(i18n=self.i18n).task_execution_with_memory()
prompt = Prompts(
i18n=self.i18n, tools=self.tools
).task_execution_with_memory()
else:
prompt = Prompts(i18n=self.i18n).task_execution()
prompt = Prompts(i18n=self.i18n, tools=self.tools).task_execution()
execution_prompt = prompt.partial(
goal=self.goal,
@@ -236,13 +242,34 @@ class Agent(BaseModel):
)
bind = self.llm.bind(stop=[self.i18n.slice("observation")])
inner_agent = (
agent_args | execution_prompt | bind | ReActSingleInputOutputParser()
)
inner_agent = agent_args | execution_prompt | bind | CrewAgentParser()
self.agent_executor = CrewAgentExecutor(
agent=RunnableAgent(runnable=inner_agent), **executor_args
)
def _parse_tools(self, tools: List[Any]) -> List[LangChainTool]:
"""Parse tools to be used for the task."""
tools_list = []
for tool in tools:
if isinstance(tool, CrewAITool):
tools_list.append(tool.to_langchain())
else:
tools_list.append(tool)
return tools_list
def format_log_to_str(
self,
intermediate_steps: List[Tuple[AgentAction, str]],
observation_prefix: str = "Result: ",
llm_prefix: str = "",
) -> str:
"""Construct the scratchpad that lets the agent continue its thought process."""
thoughts = ""
for action, observation in intermediate_steps:
thoughts += action.log
thoughts += f"\n{observation_prefix}{observation}\n{llm_prefix}"
return thoughts
@staticmethod
def __tools_names(tools) -> str:
return ", ".join([t.name for t in tools])

View File

@@ -1,3 +1,4 @@
from .cache.cache_handler import CacheHandler
from .executor import CrewAgentExecutor
from .parser import CrewAgentParser
from .tools_handler import ToolsHandler

View File

@@ -3,7 +3,6 @@ from typing import Any, Dict, Iterator, List, Optional, Tuple, Union
from langchain.agents import AgentExecutor
from langchain.agents.agent import ExceptionTool
from langchain.agents.tools import InvalidTool
from langchain.callbacks.manager import CallbackManagerForChainRun
from langchain_core.agents import AgentAction, AgentFinish, AgentStep
from langchain_core.exceptions import OutputParserException
@@ -13,12 +12,12 @@ from langchain_core.utils.input import get_color_mapping
from pydantic import InstanceOf
from crewai.agents.tools_handler import ToolsHandler
from crewai.tools.tool_usage import ToolUsage
from crewai.tools.tool_usage import ToolUsage, ToolUsageErrorException
from crewai.utilities import I18N
class CrewAgentExecutor(AgentExecutor):
i18n: I18N = I18N()
_i18n: I18N = I18N()
llm: Any = None
iterations: int = 0
task: Any = None
@@ -105,7 +104,6 @@ class CrewAgentExecutor(AgentExecutor):
"""
try:
intermediate_steps = self._prepare_intermediate_steps(intermediate_steps)
# Call the LLM to see what to do.
output = self.agent.plan(
intermediate_steps,
@@ -114,14 +112,19 @@ class CrewAgentExecutor(AgentExecutor):
)
if self._should_force_answer():
if isinstance(output, AgentAction) or isinstance(output, AgentFinish):
if isinstance(output, AgentFinish):
yield output
return
if isinstance(output, AgentAction):
output = output
else:
raise ValueError(
f"Unexpected output type from agent: {type(output)}"
)
yield AgentStep(
action=output, observation=self.i18n.errors("force_final_answer")
action=output, observation=self._i18n.errors("force_final_answer")
)
return
@@ -140,14 +143,14 @@ class CrewAgentExecutor(AgentExecutor):
text = str(e)
if isinstance(self.handle_parsing_errors, bool):
if e.send_to_llm:
observation = str(e.observation)
observation = f"\n{str(e.observation)}"
text = str(e.llm_output)
else:
observation = "Invalid or incomplete response"
observation = ""
elif isinstance(self.handle_parsing_errors, str):
observation = self.handle_parsing_errors
observation = f"\n{self.handle_parsing_errors}"
elif callable(self.handle_parsing_errors):
observation = self.handle_parsing_errors(e)
observation = f"\n{self.handle_parsing_errors(e)}"
else:
raise ValueError("Got unexpected type of `handle_parsing_errors`")
output = AgentAction("_Exception", observation, text)
@@ -164,7 +167,7 @@ class CrewAgentExecutor(AgentExecutor):
if self._should_force_answer():
yield AgentStep(
action=output, observation=self.i18n.errors("force_final_answer")
action=output, observation=self._i18n.errors("force_final_answer")
)
return
@@ -183,32 +186,27 @@ class CrewAgentExecutor(AgentExecutor):
if run_manager:
run_manager.on_agent_action(agent_action, color="green")
# Otherwise we lookup the tool
if agent_action.tool in name_to_tool_map:
tool = name_to_tool_map[agent_action.tool]
return_direct = tool.return_direct
color_mapping[agent_action.tool]
tool_run_kwargs = self.agent.tool_run_logging_kwargs()
if return_direct:
tool_run_kwargs["llm_prefix"] = ""
observation = ToolUsage(
tools_handler=self.tools_handler,
tools=self.tools,
tools_description=self.tools_description,
tools_names=self.tools_names,
function_calling_llm=self.function_calling_llm,
llm=self.llm,
task=self.task,
).use(agent_action.log)
tool_usage = ToolUsage(
tools_handler=self.tools_handler,
tools=self.tools,
tools_description=self.tools_description,
tools_names=self.tools_names,
function_calling_llm=self.function_calling_llm,
llm=self.llm,
task=self.task,
)
tool_calling = tool_usage.parse(agent_action.log)
if isinstance(tool_calling, ToolUsageErrorException):
observation = tool_calling.message
else:
tool_run_kwargs = self.agent.tool_run_logging_kwargs()
observation = InvalidTool().run(
{
"requested_tool_name": agent_action.tool,
"available_tool_names": list(name_to_tool_map.keys()),
},
verbose=self.verbose,
color=None,
callbacks=run_manager.get_child() if run_manager else None,
**tool_run_kwargs,
)
if tool_calling.tool_name.lower().strip() in [
name.lower().strip() for name in name_to_tool_map
]:
observation = tool_usage.use(tool_calling, agent_action.log)
else:
observation = self._i18n.errors("wrong_tool_name").format(
tool=tool_calling.tool_name,
tools=", ".join([tool.name for tool in self.tools]),
)
yield AgentStep(action=agent_action, observation=observation)

View File

@@ -0,0 +1,60 @@
from typing import Union
from langchain.agents.output_parsers import ReActSingleInputOutputParser
from langchain_core.agents import AgentAction, AgentFinish
from langchain_core.exceptions import OutputParserException
from crewai.utilities import I18N
TOOL_USAGE_SECTION = "Use Tool:"
FINAL_ANSWER_ACTION = "Final Answer:"
FINAL_ANSWER_AND_TOOL_ERROR_MESSAGE = "I tried to use a tool and give a final answer at the same time, I must choose only one."
class CrewAgentParser(ReActSingleInputOutputParser):
"""Parses Crew-style LLM calls that have a single tool input.
Expects output to be in one of two formats.
If the output signals that an action should be taken,
should be in the below format. This will result in an AgentAction
being returned.
```
Use Tool: All context for using the tool here
```
If the output signals that a final answer should be given,
should be in the below format. This will result in an AgentFinish
being returned.
```
Final Answer: The temperature is 100 degrees
```
"""
_i18n: I18N = I18N()
def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
includes_answer = FINAL_ANSWER_ACTION in text
includes_tool = TOOL_USAGE_SECTION in text
if includes_tool:
if includes_answer:
raise OutputParserException(f"{FINAL_ANSWER_AND_TOOL_ERROR_MESSAGE}")
return AgentAction("", "", text)
elif includes_answer:
return AgentFinish(
{"output": text.split(FINAL_ANSWER_ACTION)[-1].strip()}, text
)
format = self._i18n.slice("format_without_tools")
error = f"{format}"
raise OutputParserException(
error,
observation=error,
llm_output=text,
send_to_llm=True,
)

View File

@@ -18,7 +18,6 @@ class ToolsHandler:
def on_tool_use(self, calling: ToolCalling, output: str) -> Any:
"""Run when tool ends running."""
print(f"Tool {calling.tool_name} has been used.")
self.last_used_tool = calling
if calling.tool_name != CacheTools().name:
self.cache.add(

View File

@@ -41,7 +41,6 @@ class Crew(BaseModel):
full_output: Whether the crew should return the full output with all tasks outputs or just the final output.
step_callback: Callback to be executed after each step for every agents execution.
share_crew: Whether you want to share the complete crew infromation and execution with crewAI to make the library better, and allow us to train models.
_cache_handler: Handles caching for the crew's operations.
"""
__hash__ = object.__hash__ # type: ignore

View File

@@ -1,13 +1,15 @@
import threading
import uuid
from typing import Any, List, Optional
from typing import Any, List, Optional, Type
from langchain_openai import ChatOpenAI
from pydantic import UUID4, BaseModel, Field, field_validator, model_validator
from pydantic_core import PydanticCustomError
from crewai.agent import Agent
from crewai.tasks.task_output import TaskOutput
from crewai.utilities import I18N
from crewai.utilities import I18N, Converter, ConverterError, Printer
from crewai.utilities.pydantic_schema_parser import PydanticSchemaParser
class Task(BaseModel):
@@ -39,10 +41,22 @@ class Task(BaseModel):
description="Whether the task should be executed asynchronously or not.",
default=False,
)
output_json: Optional[Type[BaseModel]] = Field(
description="A Pydantic model to be used to create a JSON output.",
default=None,
)
output_pydantic: Optional[Type[BaseModel]] = Field(
description="A Pydantic model to be used to create a Pydantic output.",
default=None,
)
output_file: Optional[str] = Field(
description="A file path to be used to create a file output.",
default=None,
)
output: Optional[TaskOutput] = Field(
description="Task output, it's final result after being executed", default=None
)
tools: List[Any] = Field(
tools: Optional[List[Any]] = Field(
default_factory=list,
description="Tools the agent is limited to use for this task.",
)
@@ -67,6 +81,18 @@ class Task(BaseModel):
self.tools.extend(self.agent.tools)
return self
@model_validator(mode="after")
def check_output(self):
"""Check if an output type is set."""
output_types = [self.output_json, self.output_pydantic]
if len([type for type in output_types if type]) > 1:
raise PydanticCustomError(
"output_type",
"Only one output type can be set, either output_pydantic or output_json.",
{},
)
return self
def execute(
self,
agent: Agent | None = None,
@@ -90,7 +116,7 @@ class Task(BaseModel):
for task in self.context:
if task.async_execution:
task.thread.join()
context.append(task.output.result)
context.append(task.output.raw_output)
context = "\n".join(context)
tools = tools or self.tools
@@ -115,9 +141,19 @@ class Task(BaseModel):
context=context,
tools=tools,
)
self.output = TaskOutput(description=self.description, result=result)
self.callback(self.output) if self.callback else None
return result
exported_output = self._export_output(result)
self.output = TaskOutput(
description=self.description,
exported_output=exported_output,
raw_output=result,
)
if self.callback:
self.callback(self.output)
return exported_output
def prompt(self) -> str:
"""Prompt the task.
@@ -133,3 +169,47 @@ class Task(BaseModel):
)
tasks_slices = [self.description, output]
return "\n".join(tasks_slices)
def _export_output(self, result: str) -> Any:
exported_result = result
instructions = "I'm gonna convert this raw text into valid JSON."
if self.output_pydantic or self.output_json:
model = self.output_pydantic or self.output_json
llm = self.agent.function_calling_llm or self.agent.llm
if not self._is_gpt(llm):
model_schema = PydanticSchemaParser(model=model).get_schema()
instructions = f"{instructions}\n\nThe json should have the following structure, with the following keys:\n{model_schema}"
converter = Converter(
llm=llm, text=result, model=model, instructions=instructions
)
if self.output_pydantic:
exported_result = converter.to_pydantic()
elif self.output_json:
exported_result = converter.to_json()
if isinstance(exported_result, ConverterError):
Printer().print(
content=f"{exported_result.message} Using raw output instead.",
color="red",
)
exported_result = result
if self.output_file:
content = (
exported_result if not self.output_pydantic else exported_result.json()
)
self._save_file(content)
return exported_result
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None
def _save_file(self, result: Any) -> None:
with open(self.output_file, "w") as file:
file.write(result)
return None

View File

@@ -1,4 +1,4 @@
from typing import Optional
from typing import Optional, Union
from pydantic import BaseModel, Field, model_validator
@@ -8,7 +8,10 @@ class TaskOutput(BaseModel):
description: str = Field(description="Description of the task")
summary: Optional[str] = Field(description="Summary of the task", default=None)
result: str = Field(description="Result of the task")
exported_output: Union[str, BaseModel] = Field(
description="Output of the task", default=None
)
raw_output: str = Field(description="Result of the task")
@model_validator(mode="after")
def set_summary(self):

View File

@@ -41,10 +41,12 @@ class Telemetry:
self.ready = False
try:
telemetry_endpoint = "http://telemetry.crewai.com:4318"
self.resource = Resource(attributes={SERVICE_NAME: "crewAI-telemetry"})
self.resource = Resource(
attributes={SERVICE_NAME: "crewAI-telemetry"},
)
self.provider = TracerProvider(resource=self.resource)
processor = BatchSpanProcessor(
OTLPSpanExporter(endpoint=f"{telemetry_endpoint}/v1/traces")
OTLPSpanExporter(endpoint=f"{telemetry_endpoint}/v1/traces", timeout=60)
)
self.provider.add_span_processor(processor)
self.ready = True
@@ -53,7 +55,10 @@ class Telemetry:
def set_tracer(self):
if self.ready:
trace.set_tracer_provider(self.provider)
try:
trace.set_tracer_provider(self.provider)
except Exception:
self.ready = False
def crew_creation(self, crew):
"""Records the creation of a crew."""

View File

@@ -42,11 +42,16 @@ class AgentTools(BaseModel):
def _execute(self, agent, task, context):
"""Execute the command."""
agent = [
available_agent
for available_agent in self.agents
if available_agent.role.lower() == agent.lower()
]
try:
agent = [
available_agent
for available_agent in self.agents
if available_agent.role.strip().lower() == agent.strip().lower()
]
except:
return self.i18n.errors("agent_tool_unexsiting_coworker").format(
coworkers="\n".join([f"- {agent.role}" for agent in self.agents])
)
if not agent:
return self.i18n.errors("agent_tool_unexsiting_coworker").format(

View File

@@ -1,4 +1,4 @@
from typing import Any, Dict
from typing import Any, Dict, Optional
from pydantic import BaseModel as PydanticBaseModel
from pydantic import Field as PydanticField
@@ -7,7 +7,7 @@ from pydantic.v1 import BaseModel, Field
class ToolCalling(BaseModel):
tool_name: str = Field(..., description="The name of the tool to be called.")
arguments: Dict[str, Any] = Field(
arguments: Optional[Dict[str, Any]] = Field(
..., description="A dictinary of arguments to be passed to the tool."
)
@@ -16,6 +16,6 @@ class InstructorToolCalling(PydanticBaseModel):
tool_name: str = PydanticField(
..., description="The name of the tool to be called."
)
arguments: Dict = PydanticField(
arguments: Optional[Dict[str, Any]] = PydanticField(
..., description="A dictinary of arguments to be passed to the tool."
)

View File

@@ -1,15 +1,15 @@
from textwrap import dedent
from typing import Any, List, Union
import instructor
from langchain.prompts import PromptTemplate
from langchain_core.tools import BaseTool
from langchain_openai import ChatOpenAI
from crewai.agents.tools_handler import ToolsHandler
from crewai.telemtry import Telemetry
from crewai.tools.tool_calling import InstructorToolCalling, ToolCalling
from crewai.tools.tool_output_parser import ToolOutputParser
from crewai.utilities import I18N, Printer
from crewai.utilities import I18N, Converter, ConverterError, Printer
OPENAI_BIGGER_MODELS = ["gpt-4"]
class ToolUsageErrorException(Exception):
@@ -31,6 +31,7 @@ class ToolUsage:
tools_description: Description of the tools available for the agent.
tools_names: Names of the tools available for the agent.
llm: Language model to be used for the tool usage.
function_calling_llm: Language model to be used for the tool usage.
"""
def __init__(
@@ -47,18 +48,28 @@ class ToolUsage:
self._printer: Printer = Printer()
self._telemetry: Telemetry = Telemetry()
self._run_attempts: int = 1
self._max_parsing_attempts: int = 2
self._max_parsing_attempts: int = 3
self._remeber_format_after_usages: int = 3
self.tools_description = tools_description
self.tools_names = tools_names
self.tools_handler = tools_handler
self.tools = tools
self.task = task
self.llm = llm
self.function_calling_llm = function_calling_llm
self.llm = function_calling_llm or llm
def use(self, tool_string: str):
calling = self._tool_calling(tool_string)
# Set the maximum parsing attempts for bigger models
if (isinstance(self.llm, ChatOpenAI)) and (self.llm.openai_api_base == None):
if self.llm.model_name in OPENAI_BIGGER_MODELS:
self._max_parsing_attempts = 2
self._remeber_format_after_usages = 4
def parse(self, tool_string: str):
"""Parse the tool string and return the tool calling."""
return self._tool_calling(tool_string)
def use(
self, calling: Union[ToolCalling, InstructorToolCalling], tool_string: str
) -> str:
if isinstance(calling, ToolUsageErrorException):
error = calling.message
self._printer.print(content=f"\n\n{error}\n", color="red")
@@ -69,7 +80,7 @@ class ToolUsage:
error = getattr(e, "message", str(e))
self._printer.print(content=f"\n\n{error}\n", color="red")
return error
return self._use(tool_string=tool_string, tool=tool, calling=calling)
return f"{self._use(tool_string=tool_string, tool=tool, calling=calling)}\n\n{self._i18n.slice('final_answer_format')}"
def _use(
self,
@@ -100,17 +111,23 @@ class ToolUsage:
if not result:
try:
result = tool._run(**calling.arguments)
if calling.arguments:
result = tool._run(**calling.arguments)
else:
result = tool._run()
except Exception as e:
self._run_attempts += 1
if self._run_attempts > self._max_parsing_attempts:
self._telemetry.tool_usage_error(llm=self.llm)
error_message = self._i18n.errors("tool_usage_exception").format(
error=e
)
error = ToolUsageErrorException(
self._i18n.errors("tool_usage_exception").format(error=e)
f'\n{error_message}.\nMoving one then. {self._i18n.slice("format").format(tool_names=self.tools_names)}'
).message
self._printer.print(content=f"\n\n{error}\n", color="red")
self._printer.print(content=f"\n\n{error_message}\n", color="red")
return error
return self.use(tool_string=tool_string)
return self.use(calling=calling, tool_string=tool_string)
self.tools_handler.on_tool_use(calling=calling, output=result)
@@ -170,69 +187,41 @@ class ToolUsage:
)
return "\n--\n".join(descriptions)
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None
def _tool_calling(
self, tool_string: str
) -> Union[ToolCalling, InstructorToolCalling]:
try:
tool_string = tool_string.replace(
"Thought: Do I need to use a tool? Yes", ""
model = InstructorToolCalling if self._is_gpt(self.llm) else ToolCalling
converter = Converter(
text=f"Only tools available:\n###\n{self._render()}\n\nReturn a valid schema for the tool, the tool name must be exactly equal one of the options, use this text to inform the valid ouput schema:\n\n{tool_string}```",
llm=self.llm,
model=model,
instructions=dedent(
"""\
The schema should have the following structure, only two keys:
- tool_name: str
- arguments: dict (with all arguments being passed)
Example:
{"tool_name": "tool name", "arguments": {"arg_name1": "value", "arg_name2": 2}}""",
),
max_attemps=1,
)
tool_string = tool_string.replace("Action:", "Tool Name:")
tool_string = tool_string.replace("Action Input:", "Tool Arguments:")
calling = converter.to_pydantic()
llm = self.function_calling_llm or self.llm
if (isinstance(llm, ChatOpenAI)) and (llm.openai_api_base == None):
client = instructor.patch(
llm.client._client,
mode=instructor.Mode.FUNCTIONS,
)
calling = client.chat.completions.create(
model=llm.model_name,
messages=[
{
"role": "system",
"content": """
The schema should have the following structure, only two key:
- tool_name: str
- arguments: dict (with all arguments being passed)
Example:
{"tool_name": "tool_name", "arguments": {"arg_name1": "value", "arg_name2": 2}}
""",
},
{
"role": "user",
"content": f"Tools available:\n\n{self._render()}\n\nReturn a valid schema for the tool, use this text to inform a valid ouput schema:\n{tool_string}```",
},
],
response_model=InstructorToolCalling,
)
else:
parser = ToolOutputParser(pydantic_object=ToolCalling)
prompt = PromptTemplate(
template="Tools available:\n\n{available_tools}\n\nReturn a valid schema for the tool, use this text to inform a valid ouput schema:\n{tool_string}\n\n{format_instructions}\n```",
input_variables=["tool_string"],
partial_variables={
"available_tools": self._render(),
"format_instructions": """
The schema should have the following structure, only two key:
- tool_name: str
- arguments: dict (with all arguments being passed)
Example:
{"tool_name": "tool_name", "arguments": {"arg_name1": "value", "arg_name2": 2}}
""",
},
)
chain = prompt | llm | parser
calling = chain.invoke({"tool_string": tool_string})
except Exception:
if isinstance(calling, ConverterError):
raise calling
except Exception as e:
self._run_attempts += 1
if self._run_attempts > self._max_parsing_attempts:
self._telemetry.tool_usage_error(llm=llm)
return ToolUsageErrorException(self._i18n.errors("tool_usage_error"))
self._telemetry.tool_usage_error(llm=self.llm)
self._printer.print(content=f"\n\n{e}\n", color="red")
return ToolUsageErrorException(
f'{self._i18n.errors("tool_usage_error")}\n{self._i18n.slice("format").format(tool_names=self.tools_names)}'
)
return self._tool_calling(tool_string)
return calling

View File

@@ -5,23 +5,29 @@
"backstory": "You are a seasoned manager with a knack for getting the best out of your team.\nYou are also known for your ability to delegate work to the right people, and to ask the right questions to get the best out of your team.\nEven though you don't perform tasks by yourself, you have a lot of experience in the field, which allows you to properly evaluate the work of your team members."
},
"slices": {
"observation": "\nObservation",
"task": "Begin! This is VERY important to you, your job depends on it!\n\nCurrent Task: {input}",
"observation": "\nResult",
"task": "\n\nCurrent Task: {input}\n\n Begin! This is VERY important to you, your job depends on it!\n\n",
"memory": "This is the summary of your work so far:\n{chat_history}",
"role_playing": "You are {role}.\n{backstory}\n\nYour personal goal is: {goal}",
"tools": "TOOLS:\n------\nYou have access to only the following tools:\n\n{tools}\n\nTo use a tool, please use the exact following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the tool you wanna use, should be one of [{tool_names}], just the name.\nAction Input: Any and all relevant information input and context for using the tool\nObservation: the result of using the tool\n```\n\nWhen you have a response for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]```",
"tools": "I have access to ONLY the following tools, I can use only these, use one at time:\n\n{tools}\n\nTo use a tool I MUST use the exact following format:\n\n```\nUse Tool: the tool I wanna use, should be one of [{tool_names}] and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\n\nTo give my final answer I'll use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"no_tools": "To give my final answer use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"format": "I MUST either use a tool (use one at time) OR give my best final answer. To use a single tool I MUST use the exact following format:\n\n```\nUse Tool: the tool I wanna use, should be one of [{tool_names}] and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\n\nTo give my final answer use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"final_answer_format": "If I don't need to use any more tools, I must make sure use the correct format to give my final answer:\n\n```Final Answer: [my expected final answer, entire content of my most complete final answer goes here]```\n I MUST use these formats, my jobs depends on it!",
"format_without_tools": "\nSorry, I didn't use the right format. I MUST either use a tool (among the available ones), OR give my best final answer.\nI just remembered the expected formats I must follow:\n\n```\nUse Tool: the tool I wanna use, and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\nOR\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\n",
"task_with_context": "{task}\nThis is the context you're working with:\n{context}",
"expected_output": "Your final answer must be: {expected_output}"
},
"errors": {
"force_final_answer": "Actually, I used too many tools, so I'll stop now and give you my absolute BEST Final answer NOW, using exaclty the expected format bellow: \n```\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]```",
"agent_tool_unexsiting_coworker": "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options:\n{coworkers}.\n",
"task_repeated_usage": "I just used the {tool} tool with input {tool_input}. So I already know that and must stop using it in a row with the same input. \nI could give my final answer if I'm ready, using exaclty the expected format bellow: \n\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]\n",
"unexpected_format": "\nSorry, I didn't use the expected format, I MUST either use a tool (use one at time) OR give my best final answer.\n",
"force_final_answer": "Actually, I used too many tools, so I'll stop now and give you my absolute BEST Final answer NOW, using exaclty the expected format bellow:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"agent_tool_unexsiting_coworker": "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n{coworkers}\n",
"task_repeated_usage": "I already used the {tool} tool with input {tool_input}. So I already know that and must stop using it with same input. \nI could give my best complete final answer if I'm ready, using exaclty the expected format bellow:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"tool_usage_error": "It seems we encountered an unexpected error while trying to use the tool.",
"wrong_tool_name": "You tried to use the tool {tool}, but it doesn't exist. You must use one of the following tools, use one at time: {tools}.",
"tool_usage_exception": "It seems we encountered an unexpected error while trying to use the tool. This was the error: {error}"
},
"tools": {
"delegate_work": "Delegate a specific task to one of the following co-workers:\n{coworkers}.\nThe input to this tool should be the role of the coworker, the task you want them to do, and ALL necessary context to exectue the task, they know nothing about the task, so share absolute everything you know, don't reference things but instead explain them.",
"ask_question": "Ask a specific question to one of the following co-workers:\n{coworkers}.\nThe input to this tool should be the role of the coworker, the question you have for them, and ALL necessary context to ask the question properly, they know nothing about the question, so share absolute everything you know, don't reference things but instead explain them."
"delegate_work": "Delegate a specific task to one of the following co-workers: {coworkers}\nThe input to this tool should be the coworker, the task you want them to do, and ALL necessary context to exectue the task, they know nothing about the task, so share absolute everything you know, don't reference things but instead explain them.",
"ask_question": "Ask a specific question to one of the following co-workers: {coworkers}\nThe input to this tool should be the coworker, the question you have for them, and ALL necessary context to ask the question properly, they know nothing about the question, so share absolute everything you know, don't reference things but instead explain them."
}
}

View File

@@ -1,4 +1,6 @@
from .converter import Converter, ConverterError
from .i18n import I18N
from .instructor import Instructor
from .logger import Logger
from .printer import Printer
from .prompts import Prompts

View File

@@ -0,0 +1,87 @@
import json
from typing import Any, Optional
from langchain.schema import HumanMessage, SystemMessage
from langchain_openai import ChatOpenAI
from pydantic import BaseModel, Field, PrivateAttr, model_validator
class ConverterError(Exception):
"""Error raised when Converter fails to parse the input."""
def __init__(self, message: str, *args: object) -> None:
super().__init__(message, *args)
self.message = message
class Converter(BaseModel):
"""Class that converts text into either pydantic or json."""
_is_gpt: bool = PrivateAttr(default=True)
text: str = Field(description="Text to be converted.")
llm: Any = Field(description="The language model to be used to convert the text.")
model: Any = Field(description="The model to be used to convert the text.")
instructions: str = Field(description="Conversion instructions to the LLM.")
max_attemps: Optional[int] = Field(
description="Max number of attemps to try to get the output formated.",
default=3,
)
@model_validator(mode="after")
def check_llm_provider(self):
if not self._is_gpt(self.llm):
self._is_gpt = False
def to_pydantic(self, current_attempt=1):
"""Convert text to pydantic."""
try:
if self._is_gpt:
return self._create_instructor().to_pydantic()
else:
return self._create_chain().invoke({})
except Exception as e:
if current_attempt < self.max_attemps:
return self.to_pydantic(current_attempt + 1)
return ConverterError(
f"Failed to convert text into a pydantic model due to the following error: {e}"
)
def to_json(self, current_attempt=1):
"""Convert text to json."""
try:
if self._is_gpt:
return self._create_instructor().to_json()
else:
return json.dumps(self._create_chain().invoke({}).model_dump())
except Exception:
if current_attempt < self.max_attemps:
return self.to_json(current_attempt + 1)
return ConverterError("Failed to convert text into JSON.")
def _create_instructor(self):
"""Create an instructor."""
from crewai.utilities import Instructor
inst = Instructor(
llm=self.llm,
max_attemps=self.max_attemps,
model=self.model,
content=self.text,
instructions=self.instructions,
)
return inst
def _create_chain(self):
"""Create a chain."""
from crewai.utilities.crew_pydantic_output_parser import (
CrewPydanticOutputParser,
)
parser = CrewPydanticOutputParser(pydantic_object=self.model)
new_prompt = HumanMessage(content=self.text) + SystemMessage(
content=self.instructions
)
return new_prompt | self.llm | parser
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None

View File

@@ -0,0 +1,43 @@
import json
from typing import Any, List, Type, Union
import regex
from langchain.output_parsers import PydanticOutputParser
from langchain_core.exceptions import OutputParserException
from langchain_core.outputs import Generation
from langchain_core.pydantic_v1 import ValidationError
from pydantic import BaseModel
from pydantic.v1 import BaseModel as V1BaseModel
class CrewPydanticOutputParser(PydanticOutputParser):
"""Parses the text into pydantic models"""
pydantic_object: Union[Type[BaseModel], Type[V1BaseModel]]
def parse_result(self, result: List[Generation], *, partial: bool = False) -> Any:
result[0].text = self._transform_in_valid_json(result[0].text)
json_object = super().parse_result(result)
try:
return self.pydantic_object.parse_obj(json_object)
except ValidationError as e:
name = self.pydantic_object.__name__
msg = f"Failed to parse {name} from completion {json_object}. Got: {e}"
raise OutputParserException(msg, llm_output=json_object)
def _transform_in_valid_json(self, text) -> str:
text = text.replace("```", "").replace("json", "")
json_pattern = r"\{(?:[^{}]|(?R))*\}"
matches = regex.finditer(json_pattern, text)
for match in matches:
try:
# Attempt to parse the matched string as JSON
json_obj = json.loads(match.group())
# Return the first successfully parsed JSON object
json_obj = json.dumps(json_obj)
return str(json_obj)
except json.JSONDecodeError:
# If parsing fails, skip to the next match
continue
return text

View File

@@ -0,0 +1,50 @@
from typing import Any, Optional, Type
import instructor
from pydantic import BaseModel, Field, PrivateAttr, model_validator
class Instructor(BaseModel):
"""Class that wraps an agent llm with instructor."""
_client: Any = PrivateAttr()
content: str = Field(description="Content to be sent to the instructor.")
agent: Optional[Any] = Field(
description="The agent that needs to use instructor.", default=None
)
llm: Optional[Any] = Field(
description="The agent that needs to use instructor.", default=None
)
instructions: Optional[str] = Field(
description="Instructions to be sent to the instructor.",
default=None,
)
model: Type[BaseModel] = Field(
description="Pydantic model to be used to create an output."
)
@model_validator(mode="after")
def set_instructor(self):
"""Set instructor."""
if self.agent and not self.llm:
self.llm = self.agent.function_calling_llm or self.agent.llm
self._client = instructor.patch(
self.llm.client._client,
mode=instructor.Mode.TOOLS,
)
return self
def to_json(self):
model = self.to_pydantic()
return model.model_dump_json(indent=2)
def to_pydantic(self):
messages = [{"role": "user", "content": self.content}]
if self.instructions:
messages.append({"role": "system", "content": self.instructions})
model = self._client.chat.completions.create(
model=self.llm.model_name, response_model=self.model, messages=messages
)
return model

View File

@@ -1,6 +1,6 @@
from typing import ClassVar
from typing import Any, ClassVar
from langchain.prompts import PromptTemplate, BasePromptTemplate
from langchain.prompts import BasePromptTemplate, PromptTemplate
from pydantic import BaseModel, Field
from crewai.utilities import I18N
@@ -10,12 +10,13 @@ class Prompts(BaseModel):
"""Manages and generates prompts for a generic agent with support for different languages."""
i18n: I18N = Field(default=I18N())
tools: list[Any] = Field(default=[])
SCRATCHPAD_SLICE: ClassVar[str] = "\n{agent_scratchpad}"
def task_execution_with_memory(self) -> BasePromptTemplate:
"""Generate a prompt for task execution with memory components."""
return self._build_prompt(["role_playing", "tools", "memory", "task"])
slices = ["role_playing", "tools", "memory", "task"]
return self._build_prompt(slices)
def task_execution_without_tools(self) -> BasePromptTemplate:
"""Generate a prompt for task execution without tools components."""
@@ -23,10 +24,12 @@ class Prompts(BaseModel):
def task_execution(self) -> BasePromptTemplate:
"""Generate a standard prompt for task execution."""
return self._build_prompt(["role_playing", "tools", "task"])
slices = ["role_playing", "tools", "task"]
return self._build_prompt(slices)
def _build_prompt(self, components: list[str]) -> BasePromptTemplate:
"""Constructs a prompt string from specified components."""
prompt_parts = [self.i18n.slice(component) for component in components]
prompt_parts.append(self.SCRATCHPAD_SLICE)
return PromptTemplate.from_template("".join(prompt_parts))
prompt = PromptTemplate.from_template("".join(prompt_parts))
return prompt

View File

@@ -0,0 +1,38 @@
from typing import Type, get_args, get_origin
from pydantic import BaseModel
class PydanticSchemaParser(BaseModel):
model: Type[BaseModel]
def get_schema(self) -> str:
"""
Public method to get the schema of a Pydantic model.
:param model: The Pydantic model class to generate schema for.
:return: String representation of the model schema.
"""
return self._get_model_schema(self.model)
def _get_model_schema(self, model, depth=0) -> str:
lines = []
for field_name, field in model.model_fields.items():
field_type_str = self._get_field_type(field, depth + 1)
lines.append(f"{' ' * 4 * depth}- {field_name}: {field_type_str}")
return "\n".join(lines)
def _get_field_type(self, field, depth) -> str:
field_type = field.annotation
if get_origin(field_type) is list:
list_item_type = get_args(field_type)[0]
if issubclass(list_item_type, BaseModel):
nested_schema = self._get_model_schema(list_item_type, depth + 1)
return f"List[\n{nested_schema}\n{' ' * 4 * depth}]"
else:
return f"List[{list_item_type.__name__}]"
elif issubclass(field_type, BaseModel):
return f"\n{self._get_model_schema(field_type, depth)}"
else:
return field_type.__name__

View File

@@ -104,7 +104,7 @@ def test_agent_execution_with_tools():
task = Task(description="What is 3 times 4?", agent=agent)
output = agent.execute_task(task)
assert output == "3 times 4 equals 12."
assert output == "The result of 3 times 4 is 12."
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -131,7 +131,7 @@ def test_logging_tool_usage():
tool_usage = InstructorToolCalling(
tool_name=multiplier.name, arguments={"first_number": 3, "second_number": 4}
)
assert output == "3 times 4 equals 12."
assert output == "The result of multiplying 3 by 4 is 12."
assert agent.tools_handler.last_used_tool.tool_name == tool_usage.tool_name
assert agent.tools_handler.last_used_tool.arguments == tool_usage.arguments
@@ -184,7 +184,7 @@ def test_cache_hitting():
agent=agent,
)
output = agent.execute_task(task)
assert output == "0"
assert output == "The result of the multiplication of 2 and 6 is 0."
read.assert_called_with(
tool="multiplier", input={"first_number": 2, "second_number": 6}
)
@@ -206,7 +206,7 @@ def test_agent_execution_with_specific_tools():
task = Task(description="What is 3 times 4", agent=agent)
output = agent.execute_task(task=task, tools=[multiplier])
assert output == "3 times 4 is 12."
assert output == "12"
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -241,7 +241,7 @@ def test_agent_custom_max_iterations():
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_repeated_tool_usage(capsys):
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -251,11 +251,13 @@ def test_agent_repeated_tool_usage(capsys):
goal="test goal",
backstory="test backstory",
max_iter=4,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
allow_delegation=False,
verbose=True,
)
task = Task(
description="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool."
description="The final answer is 42. But don't give it until I tell you so, instead keep using the `get_final_answer` tool."
)
# force cleaning cache
agent.tools_handler.cache = CacheHandler()
@@ -266,10 +268,7 @@ def test_agent_repeated_tool_usage(capsys):
captured = capsys.readouterr()
assert (
"I just used the get_final_answer tool with input 42. So I already know that and must stop using it in a row with the same input. \nI could give my final answer if I'm ready, using exaclty the expected format bellow: \n\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]\n"
in captured.out
)
assert "Final Answer: 42" in captured.out
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -301,7 +300,7 @@ def test_agent_moved_on_after_max_iterations():
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_respect_the_max_rpm_set(capsys):
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -319,7 +318,7 @@ def test_agent_respect_the_max_rpm_set(capsys):
with patch.object(RPMController, "_wait_for_next_minute") as moveon:
moveon.return_value = True
task = Task(
description="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool, unless you're told otherwise"
description="Use tool logic for `get_final_answer` but fon't give you final answer yet, instead keep using it unless you're told to give your final answer"
)
output = agent.execute_task(
task=task,
@@ -327,7 +326,7 @@ def test_agent_respect_the_max_rpm_set(capsys):
)
assert (
output
== "I have used the tool 'get_final_answer' with the input '42' multiple times and have observed the same result. Therefore, I am confident to conclude that the final answer is '42'."
== 'The result of using the `get_final_answer` tool with the input "test input" is 42.'
)
captured = capsys.readouterr()
assert "Max RPM reached, waiting for next minute to start." in captured.out
@@ -429,7 +428,7 @@ def test_agent_error_on_parsing_tool(capsys):
from langchain.tools import tool
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -454,10 +453,7 @@ def test_agent_error_on_parsing_tool(capsys):
force_exception.side_effect = Exception("Error on parsing tool.")
crew.kickoff()
captured = capsys.readouterr()
assert (
"It seems we encountered an unexpected error while trying to use the tool"
in captured.out
)
assert "Error on parsing tool." in captured.out
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -467,7 +463,7 @@ def test_agent_remembers_output_format_after_using_tools_too_many_times():
from langchain.tools import tool
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -476,12 +472,12 @@ def test_agent_remembers_output_format_after_using_tools_too_many_times():
role="test role",
goal="test goal",
backstory="test backstory",
max_iter=4,
max_iter=6,
verbose=True,
)
tasks = [
Task(
description="Never give the final answer. Use the get_final_answer tool in a loop.",
description="Use tool logic for `get_final_answer` but fon't give you final answer yet, instead keep using it unless you're told to give your final answer",
agent=agent1,
tools=[get_final_answer],
)
@@ -553,7 +549,7 @@ def test_agent_step_callback():
def test_agent_function_calling_llm():
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="gpt-3.5")
llm = ChatOpenAI(model="gpt-3.5-turbo-0125")
with patch.object(llm.client, "create", wraps=llm.client.create) as private_mock:
@@ -567,6 +563,7 @@ def test_agent_function_calling_llm():
goal="test goal",
backstory="test backstory",
tools=[learn_about_AI],
llm=ChatOpenAI(model="gpt-4-0125-preview"),
function_calling_llm=llm,
)

View File

@@ -51,7 +51,7 @@ def test_delegate_work_to_wrong_agent():
assert (
result
== "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options:\n- researcher.\n"
== "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n- researcher\n"
)
@@ -64,5 +64,5 @@ def test_ask_question_to_wrong_agent():
assert (
result
== "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options:\n- researcher.\n"
== "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n- researcher\n"
)

File diff suppressed because it is too large Load Diff

View File

@@ -1,28 +1,21 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
personal goal is: test goalTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [your most complete final answer goes here]\n``` You must use these
formats, my life depends on it.This is the summary of your work so far:\nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: What
is 3 times 4\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream":
true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1050'
- '511'
content-type:
- application/json
host:
@@ -47,123 +40,27 @@ interactions:
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
string: 'data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Yes"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
multiplier"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Input"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
{\""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
\""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"}"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrE6b7f4GrMPaunp8xcwcWQE9kn","object":"chat.completion.chunk","created":1707810664,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
@@ -174,7 +71,7 @@ interactions:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7beb6d1c15b6-SJC
- 858364efbe7e01b0-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -182,14 +79,14 @@ interactions:
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:51:05 GMT
- Tue, 20 Feb 2024 02:42:05 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=vLLyq2TwwUBcVIkoEqea4eezcekN2nHPTIaRK8B7A6A-1707810665-1.0-AfRzjd7fYnrHf+Z5wnw9ZsWugvZvYZO+O+xtzZCimC/VosJjGzIFCYYWFojEW9it0+wqlPgjAhD8i8aIz43d+6Y=;
path=/; expires=Tue, 13-Feb-24 08:21:05 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=A4_gsEewjfI_cxZT.kzwJOFlNMwGcVQ79F2fvRwT0GU-1708396925-1.0-Acz2vnKqtu4QQDdoAEAvUGGWPfgH2233lNKW2S0hpo4P7GLtP1zHbDcmpxbJKfZnVlmOgzQjlTUGTtkAn4jqBOc=;
path=/; expires=Tue, 20-Feb-24 03:12:05 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=xAlsN4tpUk6egjAfe12ByLvmPPMpPCRpXivDHVBFlgA-1707810665071-0.0-604800000;
- _cfuvid=jbzd0_VB5OSlOP6ehIcdvPI61zEtxDnSKYD1UiuNCFw-1708396925948-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -200,9 +97,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '412'
- '261'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -214,316 +111,13 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299760'
- '299890'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
- 22ms
x-request-id:
- req_3fadda2f3ccff527c42e84a0558b2bd8
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "system", "content": "\n The
schema should have the following structure, only two key:\n -
tool_name: str\n - arguments: dict (with all
arguments being passed)\n\n Example:\n {\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n "},
{"role": "user", "content": "Tools available:\n\nTool Name: multiplier\nTool
Description: multiplier(first_number: int, second_number: int) -> float - Useful
for when you need to multiply two numbers together.\nTool Arguments: {''first_number'':
{''type'': ''integer''}, ''second_number'': {''type'': ''integer''}}\n\nReturn
a valid schema for the tool, use this text to inform a valid ouput schema:\n\nTool
Name: multiplier\nTool Arguments: {\"first_number\": 3, \"second_number\": 4}```"}],
"model": "gpt-4", "function_call": {"name": "InstructorToolCalling"}, "functions":
[{"name": "InstructorToolCalling", "description": "Correctly extracted `InstructorToolCalling`
with all the required parameters with correct types", "parameters": {"properties":
{"tool_name": {"description": "The name of the tool to be called.", "title":
"Tool Name", "type": "string"}, "arguments": {"description": "A dictinary of
arguments to be passed to the tool.", "title": "Arguments", "type": "object"}},
"required": ["arguments", "tool_name"], "type": "object"}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1514'
content-type:
- application/json
cookie:
- __cf_bm=vLLyq2TwwUBcVIkoEqea4eezcekN2nHPTIaRK8B7A6A-1707810665-1.0-AfRzjd7fYnrHf+Z5wnw9ZsWugvZvYZO+O+xtzZCimC/VosJjGzIFCYYWFojEW9it0+wqlPgjAhD8i8aIz43d+6Y=;
_cfuvid=xAlsN4tpUk6egjAfe12ByLvmPPMpPCRpXivDHVBFlgA-1707810665071-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1yRT2/bMAzF7/4UBM/OkKRpEvjaAUWxQy9F0aIeDEVRHG0SqUp0/yzwdx+UpK7b
iyDw8f30RB4KALRbrAD1Xon2wU3WcR+v14kfX3+9vD4+823Q9v7m3+Ln9eZhjmV28OaP0fLh+qHZ
B2fEMp1kHY0Sk6mz1XS1nk2Xy+VR8Lw1LtvaIJPFZLqcXZwde7baJKzgqQAAOBzPnI225g0rmJYf
FW9SUq3BamgCwMguV1ClZJMoEiw/Rc0khnJc6pwbCbuOdE7daOXcFyAAkvJH5A0liZ0WjnfM7ko5
Z6kd4QFQxbbzhiTnx0NNNQqzazKhxgpq9J0TG5w1scYy64Mj64cadzYmaajzm9xSwUUJNSajmbaj
6qKvqcfh5f5864fZOG5D5E369lXcWbJp30SjElMOmYTDCZQhv4876L6MFUNkH6QR/msoA+eLyxMP
P9c9UldnUViUG9fnxTkhpvckxjc7S62JIdphJUVf/AcAAP//AwD1e1FwiQIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7bfa0a5315b6-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:51:08 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '2207'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299770'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 45ms
x-request-id:
- req_4f8d63af1db9145604765b7823e6a134
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4\nThought: Do I need to use a tool? Yes\nAction: multiplier\nAction Input:
{\"first_number\": 3, \"second_number\": 4}\nObservation: 12\nThought: "}],
"model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1194'
content-type:
- application/json
cookie:
- __cf_bm=vLLyq2TwwUBcVIkoEqea4eezcekN2nHPTIaRK8B7A6A-1707810665-1.0-AfRzjd7fYnrHf+Z5wnw9ZsWugvZvYZO+O+xtzZCimC/VosJjGzIFCYYWFojEW9it0+wqlPgjAhD8i8aIz43d+6Y=;
_cfuvid=xAlsN4tpUk6egjAfe12ByLvmPPMpPCRpXivDHVBFlgA-1707810665071-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
times"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrJQTVo1qcDIgXXkw155n80m3fT","object":"chat.completion.chunk","created":1707810669,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7c090f7115b6-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:51:09 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '447'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299726'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
x-request-id:
- req_fc64b9b6f818bc5aa798793d5783f7b2
- req_5d13f96a4d7cb8b5c7b58fc21d96c80f
status:
code: 200
message: OK
@@ -538,22 +132,22 @@ interactions:
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4\nAI: 3 times 4 is 12.\n\nNew summary:"}], "model": "gpt-4", "n":
1, "stream": false, "temperature": 0.7}'
is 3 times 4\nAI: 12\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream":
false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '885'
- '871'
content-type:
- application/json
cookie:
- __cf_bm=vLLyq2TwwUBcVIkoEqea4eezcekN2nHPTIaRK8B7A6A-1707810665-1.0-AfRzjd7fYnrHf+Z5wnw9ZsWugvZvYZO+O+xtzZCimC/VosJjGzIFCYYWFojEW9it0+wqlPgjAhD8i8aIz43d+6Y=;
_cfuvid=xAlsN4tpUk6egjAfe12ByLvmPPMpPCRpXivDHVBFlgA-1707810665071-0.0-604800000
- __cf_bm=A4_gsEewjfI_cxZT.kzwJOFlNMwGcVQ79F2fvRwT0GU-1708396925-1.0-Acz2vnKqtu4QQDdoAEAvUGGWPfgH2233lNKW2S0hpo4P7GLtP1zHbDcmpxbJKfZnVlmOgzQjlTUGTtkAn4jqBOc=;
_cfuvid=jbzd0_VB5OSlOP6ehIcdvPI61zEtxDnSKYD1UiuNCFw-1708396925948-0.0-604800000
host:
- api.openai.com
user-agent:
@@ -577,27 +171,27 @@ interactions:
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SQQWvCQBCF7/kVw55VEo3G5tZCwVJ6agtCKbJJxmTrZmfZnYBB/O9lY9T2sof3
5pt9804RgFCVyEGUjeSytXq6do17TT8375ut28SH5zdHT0Xvsq0ujpmYBIKKHyz5Ss1Kaq1GVmQu
dulQMoatSRZn6yReZfFgtFShDlhteZpO41WyGImGVIle5PAVAQCchjdkMxUeRQ4DPygtei9rFPlt
CEA40kER0nvlWRoWk7tZkmE0Q9yPBqHpWmlA+oMHbhAeX4AJ2k6zsrqHBRQ9pBOQprraDr0lU4Vx
yYPo0HeaQXlI5jMx/nS+RdRUW0dFOMd0Wt/0vTLKNzuH0pMJcTyTveDnCOB7qKL7d52wjlrLO6YD
mrAwWS4v+8S99bs7T0eTiaX+Q2UP0ZhQ+N4ztru9MjU669TQTMgZnaNfAAAA//8DACsW1C8QAgAA
IRQIACBK2nT3Muk0P0HircDgoOmp5f+7CW4f72isiqKxeOJlYRhgAfeiNUQjzuZGxZCcdyiyGfn8
9lcAnL9Tgm+zl/7NeB2OhpXDYraaq5dXv324/dmO3mx/+H39eaI3DhkIgO51od56SRS5GOi5sxSI
XD6n3imR1skoH1fjrALfGPeuNCU49X1YhEmV5lKzMzd/Ux0l7gQA/M5aAPveDymRBKvghcEoiT8B
bJ1WlOBL1827/sX2DAiVtHVDEjyfKTSI2H3pll2Pjz0rO+gdHD4c5CiftYHizdgrO0jBNvne4XPe
z5BmEXXC/8rtaTf1rXvtKGEHrTFI+GY8FdeaoQS73vktvH8BPBihPtzrEX3rjO+ferdUtqNEWozP
MmjvCoNk6ah8j0AFc9M6EVpixuAfeZrM7VS1vp3bJG0HrcW/MAAD
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7c14798815b6-SJC
- 858364f3f9c101b0-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:51:12 GMT
- Tue, 20 Feb 2024 02:42:07 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -609,9 +203,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2088'
- '737'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -623,13 +217,13 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299794'
- '299798'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 41ms
- 40ms
x-request-id:
- req_eb2a14859f9f296e36283cec901116cb
- req_afa9aab4213989f7a5f167139b479a8c
status:
code: 200
message: OK

View File

@@ -1,28 +1,27 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
true, "temperature": 0.7}'
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"],
"stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1051'
- '1003'
content-type:
- application/json
host:
@@ -47,123 +46,82 @@ interactions:
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
string: 'data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Yes"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
multiplier"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
with"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Input"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
{\""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
as"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
\""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
as"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"}"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqbBUIPcszzNDkFqcJONl5uyRjU","object":"chat.completion.chunk","created":1707810625,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
@@ -174,7 +132,7 @@ interactions:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7af66cad9655-SJC
- 858363c36d03a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -182,14 +140,14 @@ interactions:
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:50:25 GMT
- Tue, 20 Feb 2024 02:41:18 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=1KOow.3J0t2OxoVQi5mb0rWx.eRB.e_i_QzfhmSDUss-1707810625-1-AYnrUrvGx81Jze9dSAFeX9JhHwV2P2fecA0Im/jPPedRz/Gk/RtK4W0+baUlCe8wRVmXlI0/3nR4HhLcA9W1dPI=;
path=/; expires=Tue, 13-Feb-24 08:20:25 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
path=/; expires=Tue, 20-Feb-24 03:11:18 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=lwFk3pBXS_caF6.lmxqR4UVI9FMIKSttmrWBXrT4Klk-1707810625774-0-604800000;
- _cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -200,122 +158,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '225'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299760'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 48ms
x-request-id:
- req_198e3204ee23b23d5eb5eeaf840dcd6e
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "system", "content": "\n The
schema should have the following structure, only two key:\n -
tool_name: str\n - arguments: dict (with all
arguments being passed)\n\n Example:\n {\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n "},
{"role": "user", "content": "Tools available:\n\nTool Name: multiplier\nTool
Description: multiplier(first_number: int, second_number: int) -> float - Useful
for when you need to multiply two numbers together.\nTool Arguments: {''first_number'':
{''type'': ''integer''}, ''second_number'': {''type'': ''integer''}}\n\nReturn
a valid schema for the tool, use this text to inform a valid ouput schema:\n\nTool
Name: multiplier\nTool Arguments: {\"first_number\": 3, \"second_number\": 4}```"}],
"model": "gpt-4", "function_call": {"name": "InstructorToolCalling"}, "functions":
[{"name": "InstructorToolCalling", "description": "Correctly extracted `InstructorToolCalling`
with all the required parameters with correct types", "parameters": {"properties":
{"tool_name": {"description": "The name of the tool to be called.", "title":
"Tool Name", "type": "string"}, "arguments": {"description": "A dictinary of
arguments to be passed to the tool.", "title": "Arguments", "type": "object"}},
"required": ["arguments", "tool_name"], "type": "object"}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1514'
content-type:
- application/json
cookie:
- __cf_bm=1KOow.3J0t2OxoVQi5mb0rWx.eRB.e_i_QzfhmSDUss-1707810625-1-AYnrUrvGx81Jze9dSAFeX9JhHwV2P2fecA0Im/jPPedRz/Gk/RtK4W0+baUlCe8wRVmXlI0/3nR4HhLcA9W1dPI=;
_cfuvid=lwFk3pBXS_caF6.lmxqR4UVI9FMIKSttmrWBXrT4Klk-1707810625774-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1xRS2/bMAy++1cQPCeD06ZN6muHrr0O7XqYB0NRGFudJGoSPbQN/N8H5ensIgjf
S5/IbQGAZo0VoO6UaBfsdBm7P9T+oNXn/cfN3be/j9+7r/Ly+ird+8MnTrKDV2+k5ej6otkFS2LY
72kdSQnl1NmiXCxn5e3Vckc4XpPNtjbIdD4tb2fXB0fHRlPCCn4WAADb3Zm7+TW9YwXl5Ig4Skm1
hNVJBICRbUZQpWSSKC84OZOavZDPdX1v7YjY9F7n1o1W1l4EAqBXbhf55JPEXgvHZ2Z7r6w1vh3F
A6CKbe/IS+6P2xqF2TbZX2MFNbreignWUKxxAvVZnultjRsTkzS+d6usqOA6ixJp9usROh8GPD06
HG7DaSyW2xB5lf77JW6MN6lrIqnEPvdLwmEflEN+7cbfX0wUQ2QXpBH+TT4HXs1v9nl43vSIPZLC
ouwIX5TFoSGmjyTkmo3xLcUQzWkbxVD8AwAA//8DAAe0NN+EAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b0baffb9655-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:50:31 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '2535'
- '334'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -331,229 +176,45 @@ interactions:
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 45ms
- 46ms
x-request-id:
- req_f0341a808828a455435564e19aae93b7
- req_78cdca068954cd60d8c31a21a1591022
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4?\nThought: Do I need to use a tool? Yes\nAction: multiplier\nAction
Input: {\"first_number\": 3, \"second_number\": 4}\nObservation: 12\nThought:
"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true, "temperature":
0.7}'
body: '{"messages": [{"role": "user", "content": "Tools available:\n\nTool Name:
multiplier\nTool Description: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\nTool
Arguments: {''first_number'': {''type'': ''integer''}, ''second_number'': {''type'':
''integer''}}\n\nReturn a valid schema for the tool, the tool name must be equal
one of the options, use this text to inform a valid ouput schema:\nUse Tool:
multiplier, with the first_number as 3 and the second_number as 4.```"}, {"role":
"system", "content": "The schema should have the following structure, only two
keys:\n- tool_name: str\n- arguments: dict (with all arguments being passed)\n\nExample:\n{\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n"}],
"model": "gpt-4", "tool_choice": {"type": "function", "function": {"name": "InstructorToolCalling"}},
"tools": [{"type": "function", "function": {"name": "InstructorToolCalling",
"description": "Correctly extracted `InstructorToolCalling` with all the required
parameters with correct types", "parameters": {"properties": {"tool_name": {"description":
"The name of the tool to be called.", "title": "Tool Name", "type": "string"},
"arguments": {"description": "A dictinary of arguments to be passed to the tool.",
"title": "Arguments", "type": "object"}}, "required": ["arguments", "tool_name"],
"type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1195'
- '1427'
content-type:
- application/json
cookie:
- __cf_bm=1KOow.3J0t2OxoVQi5mb0rWx.eRB.e_i_QzfhmSDUss-1707810625-1-AYnrUrvGx81Jze9dSAFeX9JhHwV2P2fecA0Im/jPPedRz/Gk/RtK4W0+baUlCe8wRVmXlI0/3nR4HhLcA9W1dPI=;
_cfuvid=lwFk3pBXS_caF6.lmxqR4UVI9FMIKSttmrWBXrT4Klk-1707810625774-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
times"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
equals"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqhnZyqMjC0VI3FdgGRP7VGRtxz","object":"chat.completion.chunk","created":1707810631,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b1dbb5e9655-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:50:31 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '508'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299725'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
x-request-id:
- req_05c53af3bfe5ebe6490149585032dead
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4?\nAI: 3 times 4 equals 12.\n\nNew summary:"}], "model": "gpt-4",
"n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '890'
content-type:
- application/json
cookie:
- __cf_bm=1KOow.3J0t2OxoVQi5mb0rWx.eRB.e_i_QzfhmSDUss-1707810625-1-AYnrUrvGx81Jze9dSAFeX9JhHwV2P2fecA0Im/jPPedRz/Gk/RtK4W0+baUlCe8wRVmXlI0/3nR4HhLcA9W1dPI=;
_cfuvid=lwFk3pBXS_caF6.lmxqR4UVI9FMIKSttmrWBXrT4Klk-1707810625774-0-604800000
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
@@ -577,28 +238,29 @@ interactions:
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SQwW7CMBBE7/mKlc+ACARocyunVlUrVUJFqKqQcZbE4NiudyNaIf69cgjQXnyY
2Rm/3WMCIHQhchCqkqxqb/p3ofraPc7l2zxbpPvX5aF5Wanpqnx/LpZj0YsJt9mh4ktqoFztDbJ2
9myrgJIxtqaz4ewuHU7H49aoXYEmxkrP/aw/nKZdoaqcVkgih48EAODYvpHNFvgtchj2LkqNRLJE
kV+HAERwJipCEmliaVn0bqZyltG2uIsKoWpqaUHSnoArhIcnYAdKGtUYyQhjYF0jQdYDaYvLSEDy
zhYxIrkVpaUDBtAE6Wggut9OV0zjSh/cJq5kG2Ou+lZbTdU6oCRnIxKx8+f4KQH4bM/R/NtQ+OBq
z2t2e7SxMJ1Mzn3idvmbO8o6kx1L8yc1u086QkE/xFivt9qWGHzQ7XUiZ3JKfgEAAP//AwADDMfm
FAIAAA==
IcwMACBG6nT3Mv39HEJtBWDlfDIkUSsylf33pxoESBftQaG1aL0L/QQogsFceHRxRAucFqhYm2tz
s96t5BBRvoD23r8IoM4owHSr6tQG0100Oxcnr+XV8f7r2Pl9o5vdneHLw8nn8/mjZScC6JP3PK05
mZ6LgaW9g5CRy1/lGQWG88FivJwt5gviGeuz3FCAm1B3J93BbDjmern1Os0rCrxFAPD3NgF47v2I
AoNOK+mFoVIAfwSw9CanAFVV6apWrmYHANLWzQq4xhjiUu29iVNljHD8if59g0n6qzImnqv64GV5
Xy8vxpunqgqHt4OP64f5o0y8e/EnDIrywOjFULQxITAH0CmrkHriQrh/z5f33ps9ZYx2m85cgIu9
QQH+SQdI7S44ZXNJAclj6teC0Xkp2UFRnJikwAVAcq3Lqo63wlqRFBh3qFRMeXh9OJEOaKVrqQPa
toCbXuGYdirW0fhNKH1SrQzD9HhIvBXZGgVY1T6I8dsIWJnMsLGCMwylt6GOa/+Ru4oCo2lBaJ0A
IY8nFfxMAkDzRotJNEqWGQtuxGvtNnkZSm1BRtRGAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b2acb559655-SJC
- 858363ccdaa8a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:50:35 GMT
- Tue, 20 Feb 2024 02:41:20 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -610,9 +272,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '1629'
- '1805'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -624,13 +286,284 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299793'
- '299805'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 41ms
- 38ms
x-request-id:
- req_a6731ec59a7e505ad280af3f51dbfe3a
- req_2267942750c31c5ca2874ac7955f01ba
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\nUse Tool: multiplier, with the first_number as 3 and
the second_number as 4.\nResult: 12\nIf you don''t need to use any more tools,
use the correct format for your final answer:\n\n```Final Answer: [your most
complete final answer goes here]```\nThought: "}], "model": "gpt-4", "n": 1,
"stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1257'
content-type:
- application/json
cookie:
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
The"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
result"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
of"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
times"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858363d9ea45a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 20 Feb 2024 02:41:21 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '269'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299708'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 58ms
x-request-id:
- req_45e08b4c819934e33f9b4554aa25a548
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4?\nAI: The result of 3 times 4 is 12.\n\nNew summary:"}], "model":
"gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '900'
content-type:
- application/json
cookie:
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IWAIACDGO/f6GHXvdMsf4wYM5VBp4/+7CS73Pt5RYwHtjT+wskCzPFxDNN3mE39EbaJ2m9q/vwJg
9U4JvpUvw5t2yl+MKwcHQ3x1OpmvFu3m195scn4xW1Vv8714oCcA2tc6exuYNAgxUCtrIPBy+VL2
Tol4Hi3S5WyxSA6/aPueKUqwcIM/8aNZnLIWS1u9ZT0l7gQA/K46APvetygRebsQhSFQAt8A7KzK
KMGXvq/64cXoSibEtHVjEjwvMzSIOHzpm77Hx8mVHXyWLwPqjm2UDRuDzZGijlYDkwDnWMjD1n/v
kVG4yQhXPeIkoJrsX98jZQvX2deeEmZUyg7IAYee6m0tUIL9YJ0I/V8AD35pj6a+ouusdsPTYJvM
9JSIpwuZiFfQQHDJbDR+TKDJ1BYToSXjs/wzT3lliqxzXeUmrxmVEv/CAAM=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858363e08e96a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:41:23 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1506'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299790'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 42ms
x-request-id:
- req_47af60e4e16d4cf08c4a07328530376e
status:
code: 200
message: OK

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,28 +1,27 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
true, "temperature": 0.7}'
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"],
"stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1051'
- '1003'
content-type:
- application/json
host:
@@ -47,123 +46,82 @@ interactions:
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
string: 'data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Yes"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
multiplier"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
with"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Input"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
{''"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
being"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"'':"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
''"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"'':"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
being"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"}"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqlgY5EyKnQhtTdxk43p6T5CgNN","object":"chat.completion.chunk","created":1707810635,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: {"id":"chatcmpl-8uAMOk2FBUg2npxeTiSwTJsB2cUdO","object":"chat.completion.chunk","created":1708396884,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
@@ -174,7 +132,7 @@ interactions:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b380f95fb50-SJC
- 858363edbe5c1ac1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -182,14 +140,14 @@ interactions:
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:50:36 GMT
- Tue, 20 Feb 2024 02:41:24 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=WtYsZIolwSGU.Cw4hxGTqIv0MRGYu4Anw8lzJON1fgk-1707810636-1-Adr1AXb4JT1VMT15njZVe64VjGKYws2k3wQOAEcin03j8Lk4b6WDtV0AG8+mydIMxiPJ++Wwk5ZpUN+jjSGK1Pg=;
path=/; expires=Tue, 13-Feb-24 08:20:36 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=YTdmTzN24Ou6kgt2z_xTK4x5guIXbV0_UVAC3Zzsi5M-1708396884-1.0-Ae8kFLY38Uv+hx7e6bbAap3N2fHI7/wqMZEmRN9LsgLZEhHwzhLdwv1t3XblbV+Bsal2wYnhQ2KQTeowkVdcp18=;
path=/; expires=Tue, 20-Feb-24 03:11:24 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=kNhuSk4gM0Tj8M010_XI7rHzNLZx1vXRlB.DYvetRy8-1707810636228-0-604800000;
- _cfuvid=KkLrQOr.1VeOh89kGukdRj_iO5I7oPresrBk0t3uJuY-1708396884742-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -200,122 +158,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '460'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299760'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 48ms
x-request-id:
- req_9f3693cba92d7c2c99f8c49878a51c17
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "system", "content": "\n The
schema should have the following structure, only two key:\n -
tool_name: str\n - arguments: dict (with all
arguments being passed)\n\n Example:\n {\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n "},
{"role": "user", "content": "Tools available:\n\nTool Name: multiplier\nTool
Description: multiplier(first_number: int, second_number: int) -> float - Useful
for when you need to multiply two numbers together.\nTool Arguments: {''first_number'':
{''type'': ''integer''}, ''second_number'': {''type'': ''integer''}}\n\nReturn
a valid schema for the tool, use this text to inform a valid ouput schema:\n\nTool
Name: multiplier\nTool Arguments: {''first_number'': 3, ''second_number'': 4}```"}],
"model": "gpt-4", "function_call": {"name": "InstructorToolCalling"}, "functions":
[{"name": "InstructorToolCalling", "description": "Correctly extracted `InstructorToolCalling`
with all the required parameters with correct types", "parameters": {"properties":
{"tool_name": {"description": "The name of the tool to be called.", "title":
"Tool Name", "type": "string"}, "arguments": {"description": "A dictinary of
arguments to be passed to the tool.", "title": "Arguments", "type": "object"}},
"required": ["arguments", "tool_name"], "type": "object"}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1510'
content-type:
- application/json
cookie:
- __cf_bm=WtYsZIolwSGU.Cw4hxGTqIv0MRGYu4Anw8lzJON1fgk-1707810636-1-Adr1AXb4JT1VMT15njZVe64VjGKYws2k3wQOAEcin03j8Lk4b6WDtV0AG8+mydIMxiPJ++Wwk5ZpUN+jjSGK1Pg=;
_cfuvid=kNhuSk4gM0Tj8M010_XI7rHzNLZx1vXRlB.DYvetRy8-1707810636228-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1yRQW/bMAyF7/4VBM/OEDdZEvg2bMXWyzAUO2yYC0ORFUedRCoSDWwI/N8HJanr
7iIIfHyfnshzAYC2wxpQH5VoH9xiF48njl+l0v7nl8fq84/7hxN9Oj1+23QfGMvs4P2z0fLieqfZ
B2fEMl1lHY0Sk6nVdrndVcvNancRPHfGZVsfZLFeLDfV6uY4stUmYQ2/CgCA8+XM2agzf7CGZflS
8SYl1RuspyYAjOxyBVVKNokiwfJV1ExiKMelwbmZcBhI59StVs69AQIgKX9BPlCSOGjh+J3ZfVTO
WepneABUsR+8Icn58dxQg8Ls2kxosIYG/eDEBmdNbLDM+uTI+rnBg41JWhr8PrfUsCqhwWQ0Uzer
rseGRpxeHm+3cZqN4z5E3qf/vooHSzYd22hUYsohk3C4gjLk6bKD4c1YMUT2QVrh34Yy8G79/srD
13XP1O1NFBbl5vW74pYQ098kxrcHS72JIdppJcVY/AMAAP//AwBvuYvviQIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b4c8925fb50-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:50:40 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '1333'
- '348'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -331,229 +176,46 @@ interactions:
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 45ms
- 46ms
x-request-id:
- req_d9bce0afd53265ec62076e265f8be7ce
- req_4b3f5d2f5ff292a15bfdce1e8d121fbd
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(''multiplier: multiplier(first_number: int, second_number: int) ->
float - Useful for when you need to multiply two numbers together.'',)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the tool you wanna use, should be one of [multiplier],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: What is 3
times 4?\nThought: Do I need to use a tool? Yes\nAction: multiplier\nAction
Input: {''first_number'': 3, ''second_number'': 4}\nObservation: 12\nThought:
"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true, "temperature":
0.7}'
body: '{"messages": [{"role": "user", "content": "Tools available:\n\nTool Name:
multiplier\nTool Description: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\nTool
Arguments: {''first_number'': {''type'': ''integer''}, ''second_number'': {''type'':
''integer''}}\n\nReturn a valid schema for the tool, the tool name must be equal
one of the options, use this text to inform a valid ouput schema:\nUse Tool:
multiplier, with the first_number being 3 and the second_number being 4.```"},
{"role": "system", "content": "The schema should have the following structure,
only two keys:\n- tool_name: str\n- arguments: dict (with all arguments being
passed)\n\nExample:\n{\"tool_name\": \"tool_name\", \"arguments\": {\"arg_name1\":
\"value\", \"arg_name2\": 2}}\n"}], "model": "gpt-4", "tool_choice": {"type":
"function", "function": {"name": "InstructorToolCalling"}}, "tools": [{"type":
"function", "function": {"name": "InstructorToolCalling", "description": "Correctly
extracted `InstructorToolCalling` with all the required parameters with correct
types", "parameters": {"properties": {"tool_name": {"description": "The name
of the tool to be called.", "title": "Tool Name", "type": "string"}, "arguments":
{"description": "A dictinary of arguments to be passed to the tool.", "title":
"Arguments", "type": "object"}}, "required": ["arguments", "tool_name"], "type":
"object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1191'
- '1433'
content-type:
- application/json
cookie:
- __cf_bm=WtYsZIolwSGU.Cw4hxGTqIv0MRGYu4Anw8lzJON1fgk-1707810636-1-Adr1AXb4JT1VMT15njZVe64VjGKYws2k3wQOAEcin03j8Lk4b6WDtV0AG8+mydIMxiPJ++Wwk5ZpUN+jjSGK1Pg=;
_cfuvid=kNhuSk4gM0Tj8M010_XI7rHzNLZx1vXRlB.DYvetRy8-1707810636228-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
times"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
equals"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqqdEmcBPxCmMRLTZFyzdYtelgh","object":"chat.completion.chunk","created":1707810640,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b5718b2fb50-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 07:50:41 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '452'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299725'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
x-request-id:
- req_54f5eae0b42e9964627e87c7f23ccb83
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4?\nAI: 3 times 4 equals 12.\n\nNew summary:"}], "model": "gpt-4",
"n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '890'
content-type:
- application/json
cookie:
- __cf_bm=WtYsZIolwSGU.Cw4hxGTqIv0MRGYu4Anw8lzJON1fgk-1707810636-1-Adr1AXb4JT1VMT15njZVe64VjGKYws2k3wQOAEcin03j8Lk4b6WDtV0AG8+mydIMxiPJ++Wwk5ZpUN+jjSGK1Pg=;
_cfuvid=kNhuSk4gM0Tj8M010_XI7rHzNLZx1vXRlB.DYvetRy8-1707810636228-0-604800000
- __cf_bm=YTdmTzN24Ou6kgt2z_xTK4x5guIXbV0_UVAC3Zzsi5M-1708396884-1.0-Ae8kFLY38Uv+hx7e6bbAap3N2fHI7/wqMZEmRN9LsgLZEhHwzhLdwv1t3XblbV+Bsal2wYnhQ2KQTeowkVdcp18=;
_cfuvid=KkLrQOr.1VeOh89kGukdRj_iO5I7oPresrBk0t3uJuY-1708396884742-0.0-604800000
host:
- api.openai.com
user-agent:
@@ -577,28 +239,29 @@ interactions:
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SQzWrDMBCE736KRWcn2PnHt+TSFgqloS2FUoIib2w1sqRo19AS8u5FjpO0Fx12
5hvN7jEBELoUBQhVS1aNN4NFqA/hdf22ft4+3rXZ/e59/rRaL1f63R9IpJFw2y9UfKGGyjXeIGtn
z7IKKBljaj7P5os8m03yTmhciSZilefBZJDN8nFP1E4rJFHARwIAcOze2M2W+C0KyNLLpEEiWaEo
riYAEZyJEyGJNLG0LNKbqJxltF3dlxqhbhtpQdKegGuE5QOwAyWNao1khDGwbpBgkoK05cUSkLyz
ZUQk3zyAh1Yagnw0FP2Hp2tT4yof3DZuZVtjrvOdtprqTUBJzsZWxM6f8VMC8NldpP23pPDBNZ43
7PZoY2A+nZ7zxO34N3U070V2LM0fajFK+oaCfoix2ey0rTD4oLsDxZ7JKfkFAAD//wMA43iM4hcC
AAA=
IcwMACBG6nT3Mv39HEJtBWDlfKQmSkWmsv/+VIMA6aI9KLQWrXehnwBFMJgLjy6OaIHTAhVrc21u
1ruVHCLKF9De+xcB1DkFmG2SOrPBdBfNzsXNUCcbnx7cPoyuPtzCbQdP18966m7ZiQD6dKuympPp
uRhY2jsIGbn8lcopMJwPFuPlbLGYEc9YnytDAa5D3Z10B7PhmOvlxutMVRR4iwDg720C8Nz7EQUG
nVbSC0OlAP4IYOmNogCTqtJVnbiaHQBIWzcr4BpjiEu19ybOEmOE40/07xtM0l8TY+LyTofH4XJb
qkQNr2dHo+ff23z7O5WJdy/+hEFRHhi9GIo2JgTmALrEKqSeuBDu3/PlvfdmLzFGu3VnLsDF3qAA
/6QDpHYXXGKVpIDkMfVrwWhVSnZQFCcmKXABkHzXZVXHW2GtSAqMO1Qqpjy8PpxIB7TStdQBbVvA
Ta9wTDsV62j8OpQ+rVaGYXo8JN6KbI0CrGofxPhtBKxMZthYwRmG0ttQx7X/UK6iwGhaEFonQMjj
SQU/kwDQvNFiEo2SZcaCG/G7dmtVhlJbkBG1kQED
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b7b602f72fb50-SJC
- 858363fafa751ac1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 07:50:43 GMT
- Tue, 20 Feb 2024 02:41:27 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -610,9 +273,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '1563'
- '1356'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -624,13 +287,288 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299793'
- '299805'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 41ms
- 39ms
x-request-id:
- req_9b32c164d87a9cdf3f87162980820d52
- req_7cefd32633dd126cd0ab7ef07392d33a
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\nUse Tool: multiplier, with the first_number being
3 and the second_number being 4.\nResult: 12\nIf you don''t need to use any
more tools, use the correct format for your final answer:\n\n```Final Answer:
[your most complete final answer goes here]```\nThought: "}], "model": "gpt-4",
"n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1263'
content-type:
- application/json
cookie:
- __cf_bm=YTdmTzN24Ou6kgt2z_xTK4x5guIXbV0_UVAC3Zzsi5M-1708396884-1.0-Ae8kFLY38Uv+hx7e6bbAap3N2fHI7/wqMZEmRN9LsgLZEhHwzhLdwv1t3XblbV+Bsal2wYnhQ2KQTeowkVdcp18=;
_cfuvid=KkLrQOr.1VeOh89kGukdRj_iO5I7oPresrBk0t3uJuY-1708396884742-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
The"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
result"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
of"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
multiplying"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
by"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMSREWkhZerctDqtYFlGURZWJW7","object":"chat.completion.chunk","created":1708396888,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858364053bd91ac1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 20 Feb 2024 02:41:28 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '262'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299705'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 58ms
x-request-id:
- req_08bcc000c2685d350fbf0c4602113500
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4?\nAI: The result of multiplying 3 by 4 is 12.\n\nNew summary:"}],
"model": "gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '909'
content-type:
- application/json
cookie:
- __cf_bm=YTdmTzN24Ou6kgt2z_xTK4x5guIXbV0_UVAC3Zzsi5M-1708396884-1.0-Ae8kFLY38Uv+hx7e6bbAap3N2fHI7/wqMZEmRN9LsgLZEhHwzhLdwv1t3XblbV+Bsal2wYnhQ2KQTeowkVdcp18=;
_cfuvid=KkLrQOr.1VeOh89kGukdRj_iO5I7oPresrBk0t3uJuY-1708396884742-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IUwIACBG6nTXMv39HEJtzlYAtBUUYMv3fxPcDv+n2aRoLJ54WVgWYAH3ojVEI063+XRckVNU6NRl
3/4KgJuGEqzXb7k2XrdnpTq6vKnrm+rL3o+/74Yn96O9/avzt8X4/J0tAdC9b1WdNUmnxMDYOAuB
zuVzqqFEf9qbDeeT2WwufGNcozQluPK5PWr3Jv2h1uzabWqVKPEgAOB31wA4935AiV7rFKowBCXw
J4DRaUUJvqW0SfnNZrYAJdq6IQlerhUGROy+pV2a8bGn2kN2KPiwMcTzWWsY3Rmr2gMFW7tJIBPG
eRrFyVR0xiahP+jQQ/rv6p52Kx/de6KELVqHAPRv6OWprSlKMGXnTbj/AnhKSbVE+Yg+OuPzS3Y7
ZRMl+uO5TcTslxBsMFqlzxIoyZz+bCi8pOzIP/Ky3NiVij5uMpS0RWvxLwwD
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8583640c6a281ac1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:41:30 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1325'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299788'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 42ms
x-request-id:
- req_ea6386ef1de0b5946d30e8726a561130
status:
code: 200
message: OK

View File

@@ -0,0 +1,385 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582451f0beb028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:37 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
path=/; expires=Mon, 19-Feb-24 23:55:37 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '214'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_9c6506f8d97318b9cf2f3bc86c8ae18f
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
_cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1RRTWsCMRC9768YcvGi4vpRdW89CoVa8FAoRWKc3Y1mMyGZtRXxv5dkrbaXQN7H
8ObNJQMQei8KEKqWrBpnBot2vjqtVxM1Wr9OX2g1Lo/nzc4c3pfnt43oRwftDqj41zVU1DiDrMl2
tPIoGePUfD5aTBazfDJPREN7NNFWOR5MB6OnfHJz1KQVBlHARwYAcElvzGb3+C0KGPV/kQZDkBWK
4i4CEJ5MRIQMQQeWlkX/QSqyjDbF3dQIddtICzIcA3CN8LwCJvCSMX1Zs0HoRaFunFQMVEaNtoku
W249RuyL/LEHZEFCUNIkLB/MhrDphlb6hOHPyCijzjodilu6630tQ5XztIsV2NaYO15qq0O99SgD
2bhCYHKd/ZoBfKb62n+NCOepcbxlOqIN6QrLbp54XOrBTm/dCiaW5oGP82V2SyjCOTA221LbCr3z
OrUZc2bX7AcAAP//AwAKtyBpRAIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245239a7f028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:39 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1918'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_b76948e3155f354740f3ad612888069c
status:
code: 200
message: OK
- request:
body: !!binary |
Cp0ICiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkS9AcKEgoQY3Jld2FpLnRl
bGVtZXRyeRLdBwoQcg34tRhd96/AmwQkSM5uqRIImNQGSbolwMoqDENyZXcgQ3JlYXRlZDABOSjG
IOs6Z7UXQdhtI+s6Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRmOTcxM2ZhOS0yYWZlLTRjNWYtOTJiYy02ZmUw
MjBjZjUyM2NKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJmZTg2MDYyOS0yMGNjLTRjYjUtOGU1
Yy04MjQxNWUxMzliMTEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNy
ZXdfdGFza3MSeAp2W3siaWQiOiAiNTYyZTVhYzItYzU2Ni00ZTMxLWFkOGQtMzFiZGM1MmQ4ZTQ2
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRv
b2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJp
dEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFy
d2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDog
V2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVB
U0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '1056'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:40 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
_cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xS204iQRB9n6+o1DNsQERgHlc3q9FFIjEaxUyaphhmt2921yQYwr+bnsEZJNsP
nUqdPpdU9S4BwGKFKaDcCJbaqe64HN1s9e30YXb2ZytIXb8IObya3T2/9+ZL7ESGXf4lyV+sH9Jq
p4gLa2pYehJMUbU/6o0H42F/MKkAbVekIi133D3v9i76gwNjYwtJAVN4TQAAdtUds5kVbTGFXuer
oykEkROmzSMA9FbFDooQisDCMHZaUFrDZGJcUyp1BLC1KpNCqda4Prujuh2QUCqbb27e3WyoLsfr
azd9Uvn0dxl+/Xw88qulP1wVaF0a2QzmCG/66YkZABqhK+5cWk/3JbuST+gAKHxeajIco+NuYQAW
GCJhgSmcL8wevzH2yf/qt0O1b6arbO68XYaTYeG6MEXYZJ5EqEJjYOtqiyj3Vm2x/LYYdN5qxxnb
f2Si4MVZLYftf2nByQFjy0K17VE/OcTD8BGYdLYuTE7e+aLZaLJPPgEAAP//AwAkwKMCyAIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245313ff6028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:40 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '529'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299982'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_245e20d86d49096355dd728c358ab806
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,726 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582457748ea1b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:51 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
path=/; expires=Mon, 19-Feb-24 23:55:51 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '273'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_7b591be28af534105409d9b18a725ac5
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1RRy2rDMBC8+ysWXXJJQpx3csul9EFvgVJKCbKyttVIWlVa90HJvxfZebQXgWZ2
htnZnwxA6L1Yg1C1ZGW9GSybxf3qvSgeHm1zU63M7eZpVtTT+cK557noJwUVb6j4rBoqst4ga3Id
rQJKxuSaL0bLyXKWz/KWsLRHk2SV58F0MJrnk5OiJq0wijW8ZAAAP+2bsrk9fok1jPpnxGKMskKx
vgwBiEAmIULGqCNLx6J/JRU5RtfG3dYIdWOlAxkPEbhG2NwBEwTJ2H5Zs0HopUFtvVQMVKYZ7Vq6
bLgJmLBPCocekAMJUUmDUAaykCez2RC2nXOlPzD+8U2z1OmnQ3GKeLzsZqjygYrUg2uMueCldjrW
u4Aykkt7RCbfyY8ZwGvbYfOvFuEDWc87pgO62J5i1fmJ67mu7DQ/kUwszRUfj0fZKaGI35HR7krt
Kgw+6LbSlDM7Zr8AAAD//wMA9T8oqkkCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582457d19761b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:53 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1405'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_4b043dcb0e13a7d95d4ec55621f4cf10
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSW0srMRB+318xzHN76Lb24j6KChZBDypVrCxpNt1GcyOZxUvpf5fs1t1azEMY
5st3YSbbBABlgRkg3zDi2qn+rJrOz57+n0+G1+ePxXywKMeXl8XiYqULeY29yLCrV8Hph/WPW+2U
IGlNA3MvGImomk4Hs9FsnI5HNaBtIVSklY76J/3BJB3tGRsruQiYwXMCALCt75jNFOIDMxj0fjpa
hMBKgVn7CAC9VbGDLAQZiBnCXgdya0iYGNdUSh0AZK3KOVOqM27O9qDuBsSUyu+GXx+Tq/dFakbv
NyK9vX+Y2ze1fjjwa6Q/XR1oXRneDuYAb/vZkRkAGqZr7h23XtxU5Co6ogMg82WlhaEYHbdLA7DE
EAlLzOBkaXb4i7FL/qpf9tWuna6ypfN2FY6GhWtpZNjkXrBQh8ZA1jUWUe6l3mL1azHovNWOcrJv
wkTBybCRw+6/dODpHiNLTHXtaZrs42H4DCR0vpamFN552W402SXfAAAA//8DAH9WI1vIAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245876ed71b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:54 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '511'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_62fed5d03d6f6e433ead9e0fd8f98c72
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nThe human asks
the AI to rate the title ''The impact of AI in the future of work'' on a scale
from 1 to 5. The AI gives the title a score of 4.Begin! This is VERY important
to you, your job depends on it!\n\nCurrent Task: Given the score the title ''The
impact of AI in the future of work'' got, give me an integer score between 1-5
for the following title: ''Return of the Jedi''\nYour final answer must be:
The score of the title.\nThis is the context you''re working with:\n{\n \"score\":
4\n}\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '949'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582458defaf1b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:54 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '247'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299782'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 43ms
x-request-id:
- req_7dec2ec306881cb7e11ebca0c5e2b816
status:
code: 200
message: OK
- request:
body: !!binary |
CpUJCiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkS7AgKEgoQY3Jld2FpLnRl
bGVtZXRyeRLVCAoQxcc8Tu0vsvnrfqdGZ38dJhIIjSLv1qXcr2YqDENyZXcgQ3JlYXRlZDABObhM
ODI+Z7UXQZCaOjI+Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ4ZjgxNDhmNS0yN2Y5LTRhYzMtYWJhMi1iZDg5
YzYzOWE4NWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJiNzQxMGU3MC1hYzg5LTQyZWYtYTlj
ZS0zYTAzOTRhMThkMGEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEKCmNy
ZXdfdGFza3MS7wEK7AFbeyJpZCI6ICIyMjBjMzIxNy0wOGY1LTRkMjgtYjRhZC04MDI2YTExNjI4
N2UiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAi
dG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMDY0YzZkZDYtN2M4MS00YTBiLWExMWYtOWUwZTYz
OTAxMmEzIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVy
IiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFy
bS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0S
CAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIz
LjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43
L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '1176'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:55 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\nThe human asks the AI to rate the title ''The
impact of AI in the future of work'' on a scale from 1 to 5. The AI gives the
title a score of 4.\n\nNew lines of conversation:\nHuman: Given the score the
title ''The impact of AI in the future of work'' got, give me an integer score
between 1-5 for the following title: ''Return of the Jedi''\nYour final answer
must be: The score of the title.\nThis is the context you''re working with:\n{\n \"score\":
4\n}\nAI: 5\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1264'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2RSTY/TMBC951eMfOklrRq6aUtvSCskFsGB5bQIVa47iU1tj7EnZNGq/x05aZtd
cbGU9zHz/JyXAkCYo9iBUFqycsHOt93m4f53v+kPTx8fn76enL1fPz8e5JfN516KMjvo8AsVX10L
RS5YZEN+pFVEyZinVpvldrWtq7oeCEdHtNnWBp7fzZfranVxaDIKk9jBjwIA4GU4czZ/xGexg2V5
RRymJFsUu5sIQESyGREyJZNYehblRCryjH6I+10j6M5JDzKdErBG+PAJmCBKxuGTDVuEWRYaF6Ri
oCZrjB/opuMuYsZ6iqcZkAcJSUmL0ERyUOVhdZnPXhulryta8wfTIKXRfreAKQxr/C/RqHwV6Rty
F332ZvABj6acvV2SL5GgN6xfb6oX4tLF+VaipTZEOuTCfWftDW+MN0nvI8pEPheWmMJoPxcAP4fH
6t70L0IkF3jPdEKfB76rq3GemP6LiV1vLyQTSzvhq+p9cUko0t/E6PaN8S3GEM3wdjlncS7+AQAA
//8DABWSknayAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85824591cdd51b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:57 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '2556'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299700'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 59ms
x-request-id:
- req_ed7e1c2569294d589acad08491338d66
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "5"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSyW7bMBC96ysGc7YLK6o3HZsgLdxDCnQN6kBgKEpmyg3ksLBh+N8LSo7kGOWB
GMzjWzDDYwaAssYSkO8Yce3UdBWXm/tm4z+0+cGyx73faLaubx5v6/WXF5wkhn1+EZxeWe+41U4J
ktb0MPeCkUiq+XK2KlbzfL7sAG1roRKtdTR9P50t8uLM2FnJRcASfmcAAMfuTtlMLfZYwmzy2tEi
BNYKLIdHAOitSh1kIchAzBBORpBbQ8KkuCYqdQGQtariTKnRuD/Hi3ocEFOqamRR3H/+uf/+EL8t
PkX+sbj79deFHxd+vfTBdYGaaPgwmAt86JdXZgBomO64X7n14iGSi3RFB0Dm26iFoRQdj1sDsMWQ
CFssYb41J3zDOGX/q5/O1WmYrrKt8/Y5XA0LG2lk2FVesNCFxkDW9RZJ7qnbYnyzGHTeakcV2T/C
JMHFTS+H438ZwfUZI0tMje1lnp3jYTgEErpqpGmFd14OG81O2T8AAAD//wMA85s9hsgCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245a36da41b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:58 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '522'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_ede54f76c1fc9251bda3fb77a50139e0
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,875 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582450aceb76b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:33 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
path=/; expires=Mon, 19-Feb-24 23:55:33 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '86'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_5ac8b39decfdafa640d13bea25597d26
status:
code: 200
message: OK
- request:
body: !!binary |
CqfiAQokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Ev3hAQoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChC0GRD/4XvMTKw04xnHJFXFEgi6VlLuKU3SySoMQ3JldyBDcmVhdGVkMAE5
GBW7XjlntRdBOEXAXjlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDk1NGNiMTQxLTdkOWEtNDE1Ni04YWU1LWIz
NzY5ZDFjZmI5MkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogIjA1MGE5ODZiLWU3MTUtNDljZS1i
NjgxLWEwM2QzNjJlN2I5NCIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICI3NTM2ZDQ1Ni03MmM3LTQ0NzgtOTY5OC1lMmEyOTZjMzli
MTgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EHO2bPh2IgGCh9L1/qNa/RsSCASc6hJkUC7wKgxDcmV3IENyZWF0ZWQwATlIS0toOWe1F0EIIE1o
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokY2Y2OTQ2YjEtNTZhNi00ODEzLWExNGItNTNmMmQ3OWQ4N2I4ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiYzRhZWRlYTAtMzZkNC00MzVhLThiNzItMWYwZWUwOGEz
ZmIxIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICIyMGM3MWM0Ni04
ZjU1LTRhY2EtOGJjMi02ODc2ZDI3YzI1NjkiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiOWFiNTUxNWMtMDU1NS00OTlhLWFk
MTQtMTZjMDA3YjRkY2Q1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjZhZTA0MmVkLWNhM2Et
NDg3NS05OWNkLWE1ZmU5NDIzY2Y0OSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEDSncD+499r/mrBCxMjQhuwSCA046ZYZAURyKgxDcmV3IENy
ZWF0ZWQwATnISttxOWe1F0FQ1dxxOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTMxYmQzYWYtZjg5Mi00MDYw
LWExMWItNzEzOWFjZWU5Nzk2ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiMTg2ZTExMjItNWJl
Zi00ZjFhLThjMTgtM2VlYzUyNjcyZWZlIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogImYzZjU4Y2ZmLWM5ZGQtNDI3ZS04ZGEx
LWQyZjQyODIzM2VlYyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQIP0NY0w4R6Cyz6Dy5x8tkxII15zcTIWKjEkqDENyZXcgQ3JlYXRlZDABOfB7
9no5Z7UXQdAh+Ho5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ3YTA3NjJlMS0yNjgxLTRmMDAtOWViNy0wNTg1
YmY3NDA1MWFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJiOTFjNGJkZC0zODg2LTQ4MGEtYmI5
OC0xMjdkYjliODM1YTUiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICIzYzRhZWE5Ni0wNWE3LTRkZjYtYWI5Ny0yZTllYjY5NWI1
ZDUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
EAzlfHVhuEIVcFm9nH3ImmkSCJwGFXSvARndKgxDcmV3IENyZWF0ZWQwATmoVW+EOWe1F0FQLnGE
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODdiZTk2NTEtOWZlZS00NGVhLThhZjUtOWVjN2EwMmFkNDU2ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiNzAzZmE1OGEtNWJjMy00YTkxLTkwMDYtZDAyODA2Mzc0
OTUyIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICJlOWM1YzJm
Ny1jZTM4LTQ1MTItYjZjMy1kNmJjZWZkZjMwYWYiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICI3ZmE0OGE5ZC03Njg0LTQ4
MDAtYjRiYi0zODAwNTNmNGJlMzYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiZTVhODZlOWYt
YzhiMS00YzE2LTg1OTktZDdhNjI5NjRhNDlkIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjgz
YzU5OTFiLTI4MGYtNDBhOS1hMTI2LWUxMWNmODNkM2ZiMCIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKENOE1wSwF9YhXuL39pj1FToSCFjOLL5aCBa0KgxDcmV3IENyZWF0ZWQw
ATmQIUKUOWe1F0FYy0OUOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYmU1MzAzMTktZTFhZi00MGVlLTkwOWEt
MDRmYTI5YTM0YjVmShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiMWZiMTI4NGItZWU0MC00NDc0
LWI3MjktM2E2ZDU3ZDIyN2U3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiYzc5NzYzOTMtM2M4
Zi00NzYzLTgwOWUtYmZkZDJmYWMyNDY5IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQI0bJ/d6c6ZEbGYOFUrTU9BIINGdoq/cf4UAqDENyZXcgQ3Jl
YXRlZDABOQA68Z05Z7UXQZjr8p05Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ0N2FmN2MyOS1kZGUzLTQ2N2Ut
YjRjOS1lM2Q4OGE0M2MxNWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICI5NWM5ZTEzZi1hMzk3
LTQ5YjAtOTAyOS1lNTZkNGI1OTJlODMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICIzOTBiMWM2
OS1kYzllLTRlYTgtYWU0OC1hMTU1MzQwOTVjOGUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChDwCECDkpgaGqUIeAZPjF2vEghgwYVZ5YfyKioMQ3Jl
dyBDcmVhdGVkMAE5GA2VqjlntRdB0I+WqjlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGQxY2IxM2U0LWJhMjUt
NDI2OC04N2M0LTVkOGQ3NzlmMjIxYkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQrgbGJ8yb0g3cgcw1FGkVnRIIi76a4fsVMYsqDENyZXcgQ3Jl
YXRlZDABOZAEqKo5Z7UXQSDnqKo5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRkNTdjMmFjZS03NDBiLTQ2Yjct
OTFiZC0zM2Q5ZmM4N2Y5YmVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEP+4o2PzSfTxVbWdEMMkL+QSCDbyi8b1LZ2IKgxDcmV3IENyZWF0ZWQw
ATlQCZyrOWe1F0GA+5yrOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNjY1OGZiZjctYTMwYS00MDk0LWIxNmIt
MWIyMTdmZTk2ZjhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChDWtu+oXXVb4Wkmme82fWV1EghafWFoU4lybSoMQ3JldyBDcmVhdGVkMAE5mGif
qzlntRdB6CugqzlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDNjYmE5Y2Y5LWQ3NTgtNGY3OS05MmEzLTRjNTk1
ZDgwNTY0N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQJkp1UDDGgNd4aOieWIzCkBIIFmmeGyRp7CIqDENyZXcgQ3JlYXRlZDABOWCJoqs5Z7UX
QRA9o6s5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiQxOWQyY2ZkMC1kOTg2LTQzZDktOWFiNy05YmNjMWE1YmQ4
ZmFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EFdUtPMiYSxxm2vBCmVwOE0SCHX8pwvTvAIbKgxDcmV3IENyZWF0ZWQwATlQZeCrOWe1F0EwjuGr
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMmRlZWMwMGEtODVmYy00M2UzLTg5YjAtNzBmNWRhMTEyZDE1ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRlNS00MzIzLWEzNDMtZmIxNzE5NzVm
ZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImRmNTQ2
OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICI5MzNhYzBlNC0x
ODA1LTRlYmQtYjQ4Ni1kMmQzMDgyOWFiMTQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjE1
YmMxZmUxLWY2MWMtNGNiYy1hNWQ1LTAxMGVhODdhZTA1MyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKEDERcN4TbKbM9UHLdb5ILSoSCDVSlvSZChPRKgxDcmV3IENyZWF0
ZWQwATlYPxe7OWe1F0Eg6Ri7OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokM2NhMDFlODktMTdiOC00ZmUwLTgx
MDQtZmFmMjIwZmFlMGY4Sh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICJhYWE3YmY3Ny0yNGU1
LTQzMjMtYTM0My1mYjE3MTk3NWZkNjUiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiZGY1NDY4Y2ItNzYyNC00OWRlLTk0MGItMTZlYzFjOTAwMzY0IiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICJiZmRjMzAzYS0yNmExLTQ1YjctOTA2Ny1mMzFhOGZmMGZiZWYiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChAcYxcG7mTaRGq2MX4JHd+kEgj7NjkPVobGnSoMQ3JldyBDcmVh
dGVkMAE5ONj/wjlntRdB0IkBwzlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDRiOGFiYjkyLTU0YjMtNDBhYi04
ZjM1LTE2ZGZhMGIxNmFlYkoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRl
NS00MzIzLWEzNDMtZmIxNzE5NzVmZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiNzBjOTgwY2MtZmIwZS00MDFiLWIzOTctMzYwOGU1MWFhYjQ5IiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQSPnaLbgOKRhT8ECAORoOgRIIbEKTqwTGuzYqDENyZXcgQ3Jl
YXRlZDABOXjVWMM5Z7UXQcgVWsM5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlMTUwMzMzOS0xM2I0LTRkNmIt
OTUxNS0yZTBjNTAxYjg4MDRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICI4MWRlOTg3Ni0xZmI1
LTRkZTQtYmRjNS1kZTZmNmI4ZDBhNDUiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
YmFlOThlYWEtMGZhNi00MDlhLWJhYTItMTNkZGRlODNlY2ZmIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChCsUWO/1sJ9Y2Ph6BFXANGBEgg3sgtHVXTakioMQ3JldyBDcmVhdGVkMAE56Ff8
0jlntRdByP390jlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGZhYTNkN2Y2LTZiNGQtNGIwZC05NjU0LWFiYzc0
NzRkOTVlYkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogImFhYTdiZjc3LTI0ZTUtNDMyMy1hMzQz
LWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICJkZjU0NjhjYi03NjI0LTQ5ZGUtOTQwYi0xNmVjMWM5MDAzNjQiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
ZTM4ODU1NzMtY2M0Zi00NTFlLTgwNmMtMDRmNTZiMWEwMTg4IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICIwNzQ2NjQ4My05MzljLTQ0OTEtOWQ3YS0wMDJkMjQ0OWJiNjYiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChCC+ExgfxN3AXYbXZq9RdQvEggJlcOhble5fioM
Q3JldyBDcmVhdGVkMAE5kBfm7zlntRdB8H7n7zlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGU0OTQyYTM1LTk1
ZWItNDg0NS1iMzIxLTUzNDQ4ZWQ3YTAyZUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogImFhYTdi
Zjc3LTI0ZTUtNDMyMy1hMzQzLWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiYWI0NTZhOTQtMjJkMy00
NDQ5LWIzOWYtN2FjNGNhYmIwM2JmIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQAzk6ZSevcKST+8bvJiwEHRIIf3f77WWNq6UqDENyZXcgQ3JlYXRlZDABOZiEVfw5Z7UXQVAH
V/w5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiRiOGMwNWZlZC04ZGRjLTQ3MWQtOTY4OC1hMTAwZDFiNzJmN2FK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICI4MWRlOTg3Ni0xZmI1LTRkZTQtYmRjNS1kZTZmNmI4
ZDBhNDUiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImFhYTdiZjc3LTI0
ZTUtNDMyMy1hMzQzLWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICI2NDkzZDNlZi1iZGNkLTQxZTgt
YmE0MS04NzA4MmQwM2NkMWYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiZjg0ZTBi
YzktZmU4Ni00MmIyLWI1OWYtZDUzZDZkY2VmMzllIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQM4Pk3wKYtf4uWFlHjGPNpRIIF+632LvT7O8qDENyZXcg
Q3JlYXRlZDABObilQQs6Z7UXQdAYQws6Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ5NzdhZDc4YS03NjY4LTQ3
YTQtODc1Mi04MDI3YTliNTAyYWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICJlYjIzZWUzNS1k
NmI3LTQ5ZTYtYTZkZi05ZDNhMDVkNmM1ZDQiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiMGMxZTQzZDQtMzQ0ZS00OTI1LWE5
NjYtZmZhN2IzMTRhOWJkIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChDpUh+YmvkFYaJT+PxYugzQEggLHVUIdqoGEyoMQ3JldyBDcmVhdGVkMAE5
CPn0EzpntRdBgFz2EzpntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDZlODUyNThkLTE2NTctNDM0My05NGI4LWZj
ZTU0MzVhZDU1N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogIjJjYTc0MGQ1LWI1NDctNDdhYy1i
YWYxLWNiOTYwNmI4NGI0NiIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMmU5OGZmODctNDVlYi00Y2UyLTgwNDYtMDRjODAz
OWQxMTY3IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImJiYWE5NzAxLWEzNzktNGZkOS05ZGQ3
LThjNzI0NDQ5NzM2NyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQ5nqSoXqb
6VnZGsLa+anT9hIIaQF6H48oVtgqDENyZXcgQ3JlYXRlZDABOfBy7Rg6Z7UXQRC77hg6Z7UXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiRmOTEzYTgzYS04MzNiLTQ0MzctOWNlYi05MTkyNzg3NTVjYzhKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI0ZDQ2NWFmMC1jNzNjLTRiMGYtYWU2Yi1kNTk4OWFjZTVkMGMiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICI4ZWY1ZGViOC1hZmVkLTQ4OWUtYTQwMS05ZjBkMmE1ZWRlZWEiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEOKeKGsAMyAqp0MrPe5wa1gSCBuDxWaGkt+lKgxDcmV3IENy
ZWF0ZWQwATmQt/kYOme1F0G41PoYOme1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOWZjMWI0NjktOGU5MS00NDQy
LTg2OWYtOTY4MDVmZWMyMDhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRl
NS00MzIzLWEzNDMtZmIxNzE5NzVmZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICJmMTNhNGNiNi05NjM1LTRkOWItYmZlMy1iM2Y2MzZmMGNlZWYiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiYTc2ZGJmYjUtNTkwZi00ODUyLWI4NmEtN2IyZTQxYmExN2U3Iiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjM5NzcwZjAzLTMwN2EtNDRkYi04YzdjLTc4NjA2YTM0
MDlhNSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKEL5xghEgQrghItok
jK2bO7ASCDuuu+8cM6jAKgxDcmV3IENyZWF0ZWQwATkoWc4ZOme1F0GQlc8ZOme1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokOTQ2M2RlYTgtMDA5OC00MzJlLTg1OGMtYTQ5ZDEzNTYxYTc3ShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiODZkZDYzYTktMWI2NS00NDk4LWJiYWItMmMwMDM2MWJjODljIiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICJmYjFhNDJjZS1jODM2LTQ0YTEtYjIwNS1mNjc1ZTg3YjcwYjUiLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKELjO41DUsKGu5P6vK4IjYn4SCFRcr/A/W138KgxDcmV3IENyZWF0
ZWQwATlouVUaOme1F0FI4lYaOme1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNzA4ZWQ5MjAtYjljNi00NDNjLWFi
YTgtNWYxNmU1NjRhNjBlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiYzdjODAyMWUtNTRiNy00
N2MwLThhMDYtYWRlNzg3NGIwODAzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICI2YzRlMzE1ZC0zMDI4LTRkN2MtYjQ2ZS03
MmZkNTI5MDg2NjgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKENslSBy3Jdit
F92oOCnvTtYSCCSo07GJKM5OKgxDcmV3IENyZWF0ZWQwATmILLIbOme1F0EAkLMbOme1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokYzdlYWRlZGMtZTRkNi00NWEwLWI5NzItZjhiMDMwYmM1Y2E1ShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiMWRkMWQyZWYtZWQ5MS00N2U4LWIwNWYtMzczODQwZDBhNDBmIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiNjMyMzA1ZDEtOTEzZS00MjYyLWI3ODAtMmIwNjNmMjAzNjZl
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQ7wAg
7FFg1tfA77VZgcY/cBIIwuo5CrzEligqDENyZXcgQ3JlYXRlZDABOUBjPCo6Z7UXQaDKPSo6Z7UX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRhMDY2MDhmYi1hMDllLTQ4ODgtOTg2OS1mZDdlMGU4YTlkNjVKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICJiNDQyNWIyYy0wZWNhLTQwNTgtYjVlNC0xNjYxNGRkZGYwZjEi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiMWVkYWQ3YzEtZDBjMS00YmM0LWIzYjgtMmY1MGM4ODg0ZTZlIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '28971'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:35 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
_cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRzW7bMBCE73qKBS+52IYVOZXiW5JLEvRW34rCYOi1xJrkEtxVmjTwuxek/INe
CHC+ncVw+FUBKLtTa1Bm0GJ8dPNubF/46fXT3bddiw+t2/z48O3z32b1PT2qWXbQ2280cnYtDPno
UCyFCZuEWjBvrdtl13R3dbMqwNMOXbb1Uear+fJb3ZwcA1mDrNbwswIA+CpnzhZ2+KHWsJydFY/M
uke1vgwBqEQuK0ozWxYdRM2u0FAQDCXuZkAYRq8DaD4wyIDw8AJCkLRguYoVh3CTB62P2gjQPs/Y
UPB+lDFh1v5QOtwABdDARrui1fO7BWympb19RwYrhdPkWS3UKdbx8h5HfUz0lt8eRucu+t4Gy8M2
oWYKOTsLxcl+rAB+ld7G/6pQMZGPshU6YOBS//20T12/6EqbMxQS7a76bd1Vp4SKP1nQb/c29Jhi
sqXGnLM6Vv8AAAD//wMAhXaDeD0CAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582450f7c486b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:35 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1361'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_352304cecd2458a4cbd225427e1d76be
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
_cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSS0/DMAy+91dEPm9oXfeoegMkJk5DcAExVIUs6zKSOCSuYJr231Ha0Y6JHiLL
n7+H7B4SxkCtoWAgtpyEcXqY1/N7WoTrm914/bD8zCdf4SO7ezHP+LUPMIgMfN9JQb+sK4HGaUkK
bQsLLznJqJrOR3mWT9Ns2gAG11JHWuVoOBmOZml2YmxRCRmgYK8JY4wdmjdms2v5DQUbDX47RobA
KwlFN8QYeNSxAzwEFYhbgkEPCrQkbYxra63PAELUpeBa98btdzir+wVxrctp+vT4fbNYuPQhM2om
X+rb5bO5/zzza6X3rgm0qa3oFnOGd/3iwowxsNw03CeBXi5rcjVd0BkD7qvaSEsxOhxWdgUhjq+g
YJOVPcKf+WPyX/12qo7dbjVWzuN7uFgVbJRVYVt6yUMTGQKhay2i3Ftzw/rPWcB5NI5Kwg9po+Bs
3MpB/7f0YH7CCInrvj0fJad4EPaBpCk3ylbSO6+6eybH5AcAAP//AwAC1i4KxgIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85824519ad346b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:36 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '472'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299982'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_1aa45f4acc1b51944e2f188165c21a08
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,966 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274a70d60a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:58:04 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
path=/; expires=Tue, 20-Feb-24 00:28:04 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '448'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_209df8a711cf6bf7c367149b0b6f8242
status:
code: 200
message: OK
- request:
body: !!binary |
CveKAgokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Es2KAgoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChAJNYRcEeEiqHTciFFAshfLEgiUxTCQyyT4kioMQ3JldyBDcmVhdGVkMAE5
6ICmVv9otRdBEAOsVv9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDYxYmZkNDk4LTQxOTUtNDJjMC1iOGU5LTky
NGMwZTdjZGEyMUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogIjkwNzFkMjk4LWVhODYtNDRjMS1h
YjRhLWUzM2ZmMjY2OTVhNSIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJmYTYxZTMyMC02NjJiLTRhZmEtYTM2Mi0xYjFjOTlmMGEw
OTQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EKI61/O3gArNWKXyLquTVFwSCHxA8ssjIlgBKgxDcmV3IENyZWF0ZWQwATngz2Rg/2i1F0GgpGZg
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMDg1NjI1OTMtMjA3Yi00YzliLWI0YzItZDI1YjA2OTA4NjA5ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiNzNlNDZmZDgtMThlOC00Yzc3LWIzMzEtYWI5N2FkMWNh
MDcxIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI3Y2FiNDdlZS00
NjQ3LTQxNTQtYTBhNC1kNDM1NzY5Nzk2ZmMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiMDY5MDYxYzctMDk5NS00ODg1LWFk
YzYtMjNhOWRmMTAzZGNhIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjIzM2YxYWUyLTA5ZjIt
NGFhNi05ZWU5LTNjNzAxMDU2ODdjZCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEKK+FPWEZI+7agvaUnDOuzQSCM3TO+MjYzmGKgxDcmV3IENy
ZWF0ZWQwATmInCxq/2i1F0GoYS5q/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYzBlYjFjNzItOTJhNy00MjIz
LWIwOWMtMzhhNTFkMzdlZDhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiZDZjYWE1OTItMDBk
My00YjkyLWE4YWItYjcwMDgzZWIxZmI4IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogImFlNTQ5ZGNkLWFmODYtNDU5NC1iZmYz
LTI1OGU1ODJiNTM1YSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQOm2IgM0Nl5jB0IWeMN44TBIIPiJkrp4aQNEqDENyZXcgQ3JlYXRlZDABOfDw
cHP/aLUXQeC9cnP/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQyNWJhMDliYi02NjFjLTQzMmUtYjFkOS1mZDBi
MWJiZWY5ZDJKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJmMzgzNmUxZi0xODkxLTRjOTUtYjky
NS05NTY4OGNhMGU1ODMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJmZDRlZmRhMi0wZGUzLTQwNjUtYWFjMS02ZTk2YWUxOWI2
NjIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
ELSwYmxhFBMIZKbUCnkT+eMSCAFtGCSOchWaKgxDcmV3IENyZWF0ZWQwATnwR+h8/2i1F0GYIOp8
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokYzkyNDkxZmQtZDAzZS00ODhiLWEwOWQtMjg5Y2M3ZGRkMDM3ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiN2U5YmZiOTUtMTcyNy00M2JhLWI1Y2YtYzgzNjMxNzhh
YjFiIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI2MzkzYTNk
Mi03ZjhmLTRkZjctOGM3Mi1jMWJjYjc0OGU0NmMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICIyNWVkYjBhMi1mNjEwLTRi
MmQtOGQ5ZC1jYzY4Yzg4ZjEwMzkiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMDY0MWU0ZTgt
M2IwOC00ZTdkLWEwODQtZjc3ZGVkZWQzNGQ0IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjVl
MmI0MWY1LTY5MDUtNDk1Yi04YjJiLWY2NGQ1MmE4YTczMCIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKEBAXqmYdbMjB+KnMIGD6fNYSCGF7u8bAau6oKgxDcmV3IENyZWF0ZWQw
ATloOoeM/2i1F0HwxIiM/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZDY3MzFmODMtMWEwMS00ZTQ1LWE5YjMt
NmMzNDRjOTQxMWZlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiMTIzMWQ3YTYtNjI1Yy00ODlm
LWIyM2ItZjI0OTM1M2ZlYjgwIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiNmNjNzg5OTYtODNi
Zi00MTY2LWFlMWYtZWFlYTY1ZjliMDQzIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQ08ZgnzWwn+DKMkWBVkUKHhIIaS0IvhJt/NwqDENyZXcgQ3Jl
YXRlZDABOQDEKZb/aLUXQZh1K5b/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlY2RiMDI1MS02MDk2LTQ1OWQt
YmIyMS01NGNlMzczMzM0YjBKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICJiMzllY2JiYi1hOGQy
LTRkMDItODMxMy1iNzUzMTMwNzk4NDgiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICI5ODgwMzYw
MS1mZGQ3LTRlYzItYjdkNi1lNmRiNDg1NWZlOTEiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChBrivKwczy6M0XBe5RUKSOpEggllfJ7MFxZ6CoMQ3Jl
dyBDcmVhdGVkMAE5iN3aov9otRdBEGjcov9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDM2NTU2MTI2LTEwMDQt
NGUzNS05N2MzLWMyZTMyNDA1Nzc4N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQIuiOy8KC/HXbljhuxQah8BII+8qTPncJ3isqDENyZXcgQ3Jl
YXRlZDABOYg84KL/aLUXQTAb4aL/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQwNTJhYmYyNS0wMjNiLTQ0MmYt
YjBkMy1mMmE2ZTZhYWE3NTlKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEPzk2jmJI2EkoYkrrPvvqSASCO2WOm6AjhlVKgxDcmV3IENyZWF0ZWQw
ATlYMt2j/2i1F0GYS96j/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNmQwZTBiNjktMWE4Yi00MWQ3LTk2OGUt
ZTJkN2NkYjFjODAzShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChAxDMeIyVLdG4XERTtm7zAeEgiH3Tf/w9XySCoMQ3JldyBDcmVhdGVkMAE5INDg
o/9otRdBWJfho/9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDJjYzJlOTZhLTI4ZDctNDgzMy04Mzk3LTk1OTQw
ZDIzZWEyY0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQaT1AK6fdr7p65Jb1fVxEoRIIhilpNt12qyYqDENyZXcgQ3JlYXRlZDABOWgd56P/aLUX
QQDV56P/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiQzMTQxMzkzYi1iNDdjLTRjNjMtOTdmNS1iNGJiNjhkZTcy
MWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EGrC3Z3T0TbUGmLIlILJ2/0SCMSkDjTNbh3GKgxDcmV3IENyZWF0ZWQwATlYXimk/2i1F0EYtiqk
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODNkMzBlMTAtZjdlOS00Yzk4LThjZjMtMGZkMjhjNTg0MTRiShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3MS00Y2U1LWI5MGUtZDk2ODg1NmM4
ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjhiOGE2
M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICIwMDY2MDExMC01
OGQ5LTRkOGUtYjM1Yi00ZDY0M2ZlNTk0YjMiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjgy
MGVhOTBkLTUyZmYtNDcyNi1hZjBkLWZlNzlmYjNjZDBiMSIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKECAXGlPVhy3fsKPoQgzRxDoSCHsf2kNdPtmnKgxDcmV3IENyZWF0
ZWQwATmA4Tyz/2i1F0Hwbz6z/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMjA2MjIyM2UtNTY2OS00YjBhLWFj
NzQtMzBkZmQ0N2M2OGQwSh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICIwNzE2MjQyNi1lOTcx
LTRjZTUtYjkwZS1kOTY4ODU2YzhmMTQiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiOGI4YTYzYTktN2JhMS00ZmUwLTgxYzktZTFiNGNmMWFhYzZjIiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICIxOThjY2FiYy03NDhmLTQ2MzEtOTgyYS0wNDBhOTk3NzBkMzAiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChDm065n3J+O8xI0St3gB1pFEghMgYPAB+vGFioMQ3JldyBDcmVh
dGVkMAE5SCALu/9otRdBiLYMu/9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDk3ZDdkOTI3LTMyMzUtNGQ4ZC04
NzJmLWY1ODc2M2UyZTAwMkoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3
MS00Y2U1LWI5MGUtZDk2ODg1NmM4ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiYzUyMDEwODctY2ZiYi00NGI1LWExYmEtMjY3OTkyMDlmMWQxIiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQ4Ch80ifm34dkfn0yKkAtAxIIMoxBWgpq37IqDENyZXcgQ3Jl
YXRlZDABOTB5Zbv/aLUXQeCpZrv/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ3YzEzZjk4YS04MWNjLTQ4MmMt
YjI5MS1kMzE4NWVkYTk2YTdKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICJlODQ5ZDlkMi02ODM4
LTRjZGMtODQ5OS1jNDY5ZmVkYjU3ZTYiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
ZTc5OTg1OTktMDBlNS00NWFhLTllMzItNmYxZjFiYjY0YjU5IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChD9D1juNXXoNRjaGsioq4/tEgjeXlBBQMr5qioMQ3JldyBDcmVhdGVkMAE5qDD5
yv9otRdBoNL6yv9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI2NDlhODY2LWJhNTAtNGY5MC04ODAzLWVkYjVm
MmM0M2NjNUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogIjA3MTYyNDI2LWU5NzEtNGNlNS1iOTBl
LWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICI4YjhhNjNhOS03YmExLTRmZTAtODFjOS1lMWI0Y2YxYWFjNmMiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
YzEwODczYmUtOTUxMi00MmQ5LTliY2UtNTAwNWY2OTJkNDlkIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICJiNDVkMzk5ZC0xMWZiLTQ3M2UtOWY2Ni1kNmZkNWUyMWM5ZGIiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChB2eKFfnHcjT+Y1XIuw/jQZEgj2LdHRO4bsiCoM
Q3JldyBDcmVhdGVkMAE5oCmJ5f9otRdBGI2K5f9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDA3MjA1ZjNkLTEw
YzYtNDlmOS04NjIxLWQ4N2MyYTFmYzI2OUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogIjA3MTYy
NDI2LWU5NzEtNGNlNS1iOTBlLWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiMDQzZmQ5YzItYWQ2My00
ZTQyLWFmNGMtYjNkY2Q0ZmMxMWI5IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQ2AqlO3mh1jyJg6EhNAcochII1e5CgQPQn9IqDENyZXcgQ3JlYXRlZDABOTh3lPT/aLUXQcAB
lvT/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiQwZGQwMWMzOS04MTU1LTRlNTYtYmJmMi0wNDQ0YzRkNzA4ZjRK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICJlODQ5ZDlkMi02ODM4LTRjZGMtODQ5OS1jNDY5ZmVk
YjU3ZTYiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjA3MTYyNDI2LWU5
NzEtNGNlNS1iOTBlLWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICIyNjJiMGQyOC05ODQ1LTQ4YTct
ODM0Ny02YzUzODI5Y2MwM2EiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiMTQ3MTAy
YjUtMjdlYi00NTI3LTgxMDEtYzAzYTliMzc4NTc2IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQkfc0U9faxddMfMzGTSZa3xIIN+3nfveYLW4qDENyZXcg
Q3JlYXRlZDABOVCNiQMAabUXQbD0igMAabUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQzZDc1ZWQzOS00MjBlLTRl
ZDQtYWE0YS1hNWE3MGE2NjM2MTVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICI5NjZlZjM2NC1j
YTcyLTRiNzUtOTdiNS1lMDI4ZTI5OGNkODgiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiZTM2YWM2YTgtZDc0Yy00NjZlLTg3
YTItM2M2NDVlZmU5ZTJhIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChCFv3PoygvwjOr5nDCoxodOEghLXBOUSJrl5yoMQ3JldyBDcmVhdGVkMAE5
kMRPDABptRdBCChRDABptRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDc5OThjMGQ1LTRlOTItNDdjZi1hMjU3LTNj
ZGE1YTQwZjRkZEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogIjZhYTY3MDkwLTM5ZTAtNDlmMC1h
ZDZlLTAyNjA1ZTUxYzdlYSIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMWJiNzQ5Y2MtYjhkYi00NDEzLWFkMGQtOWI1OTQ4
YTI0ZGYyIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImZiNDI0MDZlLTlmYjEtNDhmZC1hNTRh
LTdiY2MzZmE0NGQyOCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQgK6Vti48
YjJuaBViDM57pxIIwlAqvHM82XQqDENyZXcgQ3JlYXRlZDABOeBsdREAabUXQSjYdhEAabUXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiQ1YTA0MWRhNS1jY2MxLTRiNzEtODQ4NC02YmQ5OGZhMWRkZjhKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI4NjhhNjUxZi01MDg4LTRlNWMtYjUyMy1hZmRjZjhhMzk4MGYiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICJiMmI5OWVhYy04M2YwLTQxYjMtYWFkNC02NWE3MWQzZTVjODEiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEC3+N10HF2aTbIa5eJa41zwSCInyjSyrV37fKgxDcmV3IENy
ZWF0ZWQwATnYQ4MRAGm1F0GIdIQRAGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTJmMWZmNjgtNjVlYi00Mjcw
LWJmMmEtNDdjZDdiOGZmYTY4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3
MS00Y2U1LWI5MGUtZDk2ODg1NmM4ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICIxMmI4Y2QxNi0zNTRhLTQwMTktOTc4Yi02NjUxOTdiYjFkYzkiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiOWM4MWVjOWQtMmVlMy00YmRjLTg0M2UtOGE5OTg0ZGMyMTJlIiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjk1Njg4M2E3LWEyYzQtNDcxMy1hNDExLTIwODJiYjMy
YzQ1MyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKEFZ6R51jS3b7NAII
FFJxc/USCD4Fymb2I6UhKgxDcmV3IENyZWF0ZWQwATnIxUwSAGm1F0GIHU4SAGm1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokNGZlNThjMzMtZWIwOS00YWVjLTliNTAtZTBmNjQ0NGQyOGUyShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiMmFiOTQ1ZWMtNmFkZi00ZjhlLThjYzEtZDc1YzM0MGE1NWIwIiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICI2YmJmOTM4OS05MDVmLTRiZTQtOTU4OC04OWM0YzgzNDVkNzciLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKEKSvLIWCtcA5+CGbFqDf51ESCLgud/yzYGKJKgxDcmV3IENyZWF0
ZWQwATmomtgSAGm1F0FAz9kSAGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTcxNTBmZTQtNDEzZS00YjMyLWFh
YzgtMWZmMTdmMWFlMWIwShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiZTZlZTNiYjktYTM4Yy00
NjkzLTg1YzAtOWFlN2FiMzY3OTU0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICJlNzU3OWM0YS0zN2M4LTQzZjYtYjU3OS03
MDYzMjgzOTM2MmUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKEACMX4S7lXMV
Uso4rDzumw4SCOFSyoPA+ILgKgxDcmV3IENyZWF0ZWQwATmYVj8UAGm1F0HgwUAUAGm1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokYTMyOTVmMmYtZTljNS00MDdkLWE1NDAtZjRmYTI1ZDdlYjIzShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiZDc5YzYxYTMtZWQxYy00OTdhLTliYjgtMjg1OWExNzllZDgxIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiNzgxNzdjNzItNjRhZS00M2ZlLWI1OTItZTliNTlmNzNiNWMw
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQ+UFv
fqm+K1G9c19NjUlY3hIID8INZeMycOYqDENyZXcgQ3JlYXRlZDABOUDLSiMAabUXQeBRTCMAabUX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRmZTE3MjQzYS1mYTQyLTRmNTAtYmUwZi1lNDY0MDc3MTc3MDhKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICIzODAxZmQ2Yy1jMDY2LTQ1ZTItOTY4OC03NmY5YWQ4OTU3YzUi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiZDE4YjExNGEtMDVhMC00ZmNkLWExZjYtNmM3YTcwMjRjNTZmIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEt0HChDviIet1EG5tkqxAn2xWMkEEgjk0HxsxYdn7SoMQ3JldyBDcmVh
dGVkMAE5qDmFJgBptRdBMEGHJgBptRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGY1ZjFjYjhiLTZiNGEtNDZiMy1i
MTQxLTQ5OWMwMGE0OGIxOUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xh
bmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9v
Zl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjE1OGE5ZTU0LTkwM2Mt
NDg1Yi1iYzIzLTFhZGQzMjliNjMyOCIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxl
ZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjog
bnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1l
XCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3Bl
bkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119
XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICIxYjE0NWQ4OS05NzA0LTRmZmEtYTUzNC05YzFm
MmJlNjc4MjQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29y
ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQt
YXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3Rl
bRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24g
MjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41
fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgKEBuPsV+dBTMNNIWDF+d2
KokSCO2zgUpXmdnDKgxDcmV3IENyZWF0ZWQwATlw/5kpAGm1F0HQZpspAGm1F0oaCg5jcmV3YWlf
dmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQS
JgokYjY2ZjY1MTgtYjYwZC00YjZjLWFkZGUtMTVmZGViMWQ5ZmQ1ShwKDGNyZXdfcHJvY2VzcxIM
CgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFz
a3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUC
W3siaWQiOiAiMjQ1NDlmZjctOGZhZS00ZTYwLThkMGEtNzNlYzkxNmE3ZDc0IiwgInJvbGUiOiAi
U2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4
X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFt
ZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAu
NywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZh
bHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8BCuwBW3siaWQiOiAiNjk1
NGJjZDMtN2EwNS00YTg1LTk0ZGEtN2UzMGM0YTkwNDE4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBm
YWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjog
IjdiM2JmZDY4LTM3YjctNDk3Mi05NWI5LWU2M2Y3MGMwYTliZCIsICJhc3luY19leGVjdXRpb24/
IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoI
cGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFz
ZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJz
aW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkg
UFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNw
dXMSAhgMegIYARLVCAoQMFavY6R+M8VKfR0IuD7J7BIIRT9oQ4tD6QEqDENyZXcgQ3JlYXRlZDAB
OWi+Ci8AabUXQVA5DC8AabUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25f
dmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ1ODU2MzZmNy1kYjA2LTRmODYtYjcwMi1h
MDM2ZmE5M2MxYmRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFn
ZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdl
bnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2NmUwYzMwMi1lZDI2LTQzYTQt
YTA5NS0wYWVmMTY3N2JkZjkiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEK
CmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICJlYzM4ZGNjNi02OTk4LTQwNGItODgyMi1mOTY0NDdk
ZDUxN2IiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIi
LCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMmM0NWFhZTMtNTRjYS00MDhkLTlmOTctYzAz
NzUyYTE3NzI1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2Nv
cmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0
LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0
ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9u
IDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEu
NX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChAGyXCYUYk+AnEAKUUB
f6Y7EgjZK54jkKVQASoMQ3JldyBDcmVhdGVkMAE5mEVnNABptRdBmLxoNABptRdKGgoOY3Jld2Fp
X3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lk
EiYKJDhkNTNkZTIyLWEyNTgtNGIwMS05M2MwLTM0NTAxMDQ4OGUwN0ocCgxjcmV3X3Byb2Nlc3MS
DAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rh
c2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1
Alt7ImlkIjogIjJiMzRkOGZmLTY0OTAtNDY4MC1iZmRiLTQ0MTE3Y2NjZGNhMCIsICJyb2xlIjog
IlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1h
eF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5h
bWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAw
LjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBm
YWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI4MDRl
M2EzYS00NjYxLTQ4ZDctYjgyMC02ODk5MmU1ZTEyODgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZh
bHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRm
b3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoG
MjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJn
CmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAy
MDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIY
DHoCGAES3QcKEO2ikjl6HhLK2BkbjrmndFkSCJmJeKKJCQsHKgxDcmV3IENyZWF0ZWQwATmw6iQ3
AGm1F0HYASc3AGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNp
b24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZTkzNGVlNTItNTJmZi00OWUyLTg0OWMtYmMyNmQ4
NWIxN2RmShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoC
ZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxIC
GAFKyAIKC2NyZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiNjcyOTBjNzgtNDcwNC00MzYyLTlhOGMt
NDMzZmEzNmYzODVmIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUs
ICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4
biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQt
NFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAi
ZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoYBCgpjcmV3
X3Rhc2tzEngKdlt7ImlkIjogIjYxN2I4YWZiLTJlMTMtNDcyZS04ZWFjLWZkNDdhODRhZjI4MCIs
ICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29s
c19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRK
HAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndp
bkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdl
ZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNF
X0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYAQ==
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '34171'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:58:05 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
_cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRzU8CMRDF7/tXTHrhAoQVlIWbHowfiSejB2NIKcNuoe3UdlYlhP/dtMtHvDTp
+82bvL7uCwChV2IOQjWSlfVmULVTeuaX8nZWXslftbH8cPf1/vTWzHabe9FPDlpuUPHJNVRkvUHW
5DqsAkrGtLWcjqpxNR1VkwwsrdAkW+15MBmMbsrx0dGQVhjFHD4KAIB9PlM2t8JfMYdR/6RYjFHW
KObnIQARyCRFyBh1ZOlY9C9QkWN0Oe5rg9C0VjqQcRuBG4TbR2CCIBnzlTUbhF4a1NZLxUDrNKNd
xuuW24BJ+6Gw7QE5kBCVNFkrB9dDeO2W1vobI2jOnDrPZCiOsQ7n9xiqfaBlertrjTnra+10bBYB
ZSSXskcm39kPBcBn7q39V4XwgaznBdMWXcz1z7p94vJFFzo+QSaW5qJflVVxTCjiLjLaxVq7GoMP
OteYchaH4g8AAP//AwCU/+hLPQIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274ac7ab1a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:58:05 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1234'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_378add836bad9286db76ff9169f6ef43
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
_cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSS2/bMAy++1cIPCeDu2ax4+P6OGwBOqAoVmApDFmhHa+SKEh0sSzIfx9kp3Ya
zAeB4MfvAdKHRAhot1AIUDvJyjg9z7uM1t9u3FO1qG4f65+rm2d3v1rywxuaALPIoOo3Kn5nfVJk
nEZuyQ6w8igZo+pVlubXeZbmX3rA0BZ1pDWO54t5ury6PjF21CoMUIhfiRBCHPo3ZrNb/AOFSGfv
HYMhyAahGIeEAE86dkCG0AaWlmE2gYoso41xbaf1GcBEulRS68l4+A5n9bQgqXX5Y/30du/Wz6/o
s8p/vcvqv9+b1X535jdI710fqO6sGhdzho/94sJMCLDS9NxHRR4fOnYdX9CFAOmbzqDlGB0OG7uB
EMc3UIjFxh7hw/wx+V/9cqqO4241Nc5TFS5WBXVr27ArPcrQR4bA5AaLKPfS37D7cBZwnozjkukV
bRRcfh7kYPpbJjA/YUws9dTO0uQUD8I+MJqybm2D3vl2vGdyTP4BAAD//wMAkRH1fcYCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274b5dc11a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:58:06 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '579'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_e791c6467b700cfe727e205bc0a512b4
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,848 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582677c0f6200e2-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:49:04 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=7sCpUch4zHBRr3bC0ZrXiZ.hp5JDRz10XR.quEnwOrA-1708386544-1.0-Afdz/ZpiEUiaPexcCrxugPwkeqRkeirb63bcWwb2oQP4BxG9mVHI7ouMoBhxJcQysgMju/x4AOA6ugypjle7VW0=;
path=/; expires=Tue, 20-Feb-24 00:19:04 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=ekJFOKa47vCR_bxQqig9km7tYBNhHULDxrGlY80MRHE-1708386544507-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '219'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_2f71caa23336ee2e58caeaa115a97d5f
status:
code: 200
message: OK
- request:
body: !!binary |
CpeDAgokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Eu2CAgoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChAaBf6ADKyntq+vRGX9SJpHEgiijN4P4Uh2ECoMQ3JldyBDcmVhdGVkMAE5
8CnAyIFotRdBWE7FyIFotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGYyMWRiZGJkLTQxZTgtNDU3MC1iMmI3LTQw
NzdiZTNhMDc3MEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogImJhNmVhNTM3LWJmNDItNDJjYi1h
ZjMwLTU2MmZmN2NhNWQ5YyIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJkNmVlYzc5NC1kOTU0LTQwZTMtYTYyNi0xYzE2MDJlOWE3
NWIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EC2mUzP54YHc6LDJLAdu6acSCMTJm+B7lvLuKgxDcmV3IENyZWF0ZWQwATkQF53UgWi1F0EA5J7U
gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODZlNjBkZTEtNzVmMy00YjFjLWFhOTItZDg3ODI2MzhlZjMxShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiYzVlOTFkYWQtMDRiMi00NzM2LWFjZTMtZWY5NzRiYjVi
ODQ3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICIyYjcwOGEzYy1l
MmEyLTQxN2QtOTdiMS0wMWVmZWUzZjg4NWEiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiN2FhMGFlZTUtMTU2Yy00NTczLThh
OGQtMzFiODM4MDY0YjY1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjhhNzU1NDM3LWEwZjQt
NDVlYi1iMGZmLTY0MjNiNTVjZjlkOCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEFwgkzU6sNPz3QKFgtqCsCQSCJoGYLG1gNkBKgxDcmV3IENy
ZWF0ZWQwATkwDUbegWi1F0Eg2kfegWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNDBiNzg0ZGMtZDIxYi00NmM3
LTliMjAtMWNhMWE2MWU3Mzc1ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiNmE3ZGY0MDQtY2Nh
YS00MTMwLThkOTYtYTFhZGI2MzIyMjJhIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogIjIzOTlhNDljLTlmNjAtNDU4My1hOGE5
LTIyNjU3ODBkMDE1MSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQGVyvg83A0+tCto6XeaWbshIIsQstUO/9OJIqDENyZXcgQ3JlYXRlZDABOYAP
1OSBaLUXQQDF1eSBaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQwMTU5ZjZjNS0yNDkxLTRmMGMtYTc1NC1hMzIy
NTM2MmJkMmRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2MmQ4OTg0Yy1kNThlLTRlZGMtYWM5
Mi1lYWI0ZTcxMjI4NDkiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICI0MWExYTU3MS1iNmE0LTRlYTYtYThhZS02OGU1ZmE4M2E0
OTUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
EMMtvuOpjbr3pcyF2HeSmB4SCMkWR08aQxAUKgxDcmV3IENyZWF0ZWQwATlAaAfugWi1F0FgLQnu
gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMWNkYWQ0Y2EtODIzNC00MzQzLWIxNzctNGIyN2Q0YjNjZGJkShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiNWEwODIyODItZWRkNi00NjdiLTk1NWMtZDliNmI1Y2Vk
ZmFmIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI3Y2IwNmY2
Mi1iNzFiLTRmNDItOGQ5ZS1hZDQyM2FjODQwMGMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICI0NjhiM2QzZi00ZmYxLTQy
OWQtOTYzMC02MWQ4MzNhNDYxODAiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNmRmMmY1YmYt
ZDZjOS00Y2RjLTkzNTYtNjZkYzMyZWIwYTc4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjJm
Y2FjNjNjLWVkNTItNDMwZS1hY2E3LTU1MmZjOTZkNjdkMyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKEO+YplJZB62ddxyM6fGVOdESCL+wftUglT4gKgxDcmV3IENyZWF0ZWQw
ATkwCzP9gWi1F0HojTT9gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYzhiZTYxYmQtNzRkNS00NGRkLTlmNzAt
MmI5NzgwZjY2ZDIyShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiNzdlYjEwZWYtZTdlMi00NGVl
LThlMjEtOTQ0NTAwOTgyNjM3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiY2FjZjYxYTEtYTI3
Mi00MmYyLThkNjgtMzQzYjc1NzRkNjE4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQ3/ART7Hu8wHqWsK8s7GPLhIIWK0QMBvW+rMqDENyZXcgQ3Jl
YXRlZDABOeCW1AaCaLUXQdg41gaCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ5OGZhN2E2ZS00NDJhLTQ1Njgt
YWIwZS0zYmRkNGJiMWUxYTRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICJkNmU0OWUwYy00MmJj
LTQxMjItYjBmNy1mNzNlYzE1ZTUwOTEiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICJmZjUwOWJh
Ni0wZWY1LTRhM2QtYmY2MC1iMTI1YjQxOWMwN2YiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChBkDRmgIQJSMs8XzeZJmy9WEgjvUY/YfexjlioMQ3Jl
dyBDcmVhdGVkMAE5UGNUE4JotRdB8OlVE4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI2NjM0ZTcxLWEwZDkt
NDY0Ny1hYzExLTNkZGU0MTU2OGI1MUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQqzgXtMmkYCiVpHhtOc8l5BII8vXSrf+p/swqDENyZXcgQ3Jl
YXRlZDABOaCLWROCaLUXQTBuWhOCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRjMjQ0OGE2NC1jMjJlLTRmMTAt
YWJhYy00MzQ3NTgwOWMwNjdKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEH9v7ozC/TRcIrFffRecZVQSCGk2sHo6qD3EKgxDcmV3IENyZWF0ZWQw
ATmgIFAUgmi1F0G4FlEUgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMGY4OGQyYzEtMjA4Ni00MDdhLWFhY2Mt
ZWRjNWNiNzljYjQ4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChBgGyM8bfOC9H6Yresp1LU2EghhF6gh58RxMCoMQ3JldyBDcmVhdGVkMAE5YGxT
FIJotRdBsC9UFIJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDgwNWVjYzk0LWNjYjgtNGUxNS1iZjc0LWEyMjgw
YTcxZjNmMEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQyEH/nm/WLrr+txJI9c1MNRIInN5POTzXVX4qDENyZXcgQ3JlYXRlZDABOViFVhSCaLUX
QQg5VxSCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiRkNTEyNjYyNS03ODFjLTQ2NTktYTAzNC01MmUyOWIxZTcz
MGFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EI0iKPIpK2XIwcBR3dYpPokSCNnvOoO6kqq4KgxDcmV3IENyZWF0ZWQwATnoXawUgmi1F0FY7K0U
gmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokNTUwYzgzNzQtNTU2OS00ODk5LTkzMjgtMjkwMDFjOWE4ODFmShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVmMC00ODI4LTg2ZjgtYWIwNjQzMTE4
NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjM2MWQy
Y2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICI2MjQ2ZDc5Yy0x
ZDY5LTRhZjUtYTIzZi1jMDFkYzA1ZWIyMmUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImJi
Yzg3NjllLWVjODQtNDhiOS1iZGQ3LWNmYzNmNGZmYmZmMyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKEKBL0fRR5foqjy0NBV/SMoESCBCt9aF+VH99KgxDcmV3IENyZWF0
ZWQwATlwxi8jgmi1F0E4cDEjgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZjAxNDIzZmMtMjBiOC00ZGExLWFj
MjctZDJmZjBkYmM0YjNhSh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICIxMGY4NWFkZC1hZWYw
LTQ4MjgtODZmOC1hYjA2NDMxMTg1NjMiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiMzYxZDJjZjctNDgzMy00NWU5LTkzMGEtZWUwZDVhY2M0ZmVjIiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICIwMjFkMjBkOS0yNzEwLTQ4ZWItYTE3Yy1jMmNkM2Y3MTE1ZGIiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChC60uV+UvE3TfkONIYsdPIWEgjtxjRGLdWXVyoMQ3JldyBDcmVh
dGVkMAE5AFM4K4JotRdBEPE5K4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDU0Y2Q3OTE4LTExY2YtNDFlYS04
Y2I0LWMzZTUyMjk3ZTA3NEoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVm
MC00ODI4LTg2ZjgtYWIwNjQzMTE4NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiZWMxNWE4OWEtZmUzYy00ODE0LWFiYzgtNmU5MjA2NTBhNjA2IiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQCVflxxGNwvMhP8LW1ShkjxIIgQsqXO3qazwqDENyZXcgQ3Jl
YXRlZDABOVhYjyuCaLUXQaDDkCuCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlZmI2YmMzYy03N2RhLTQ2ZGMt
YTBiYS0xNGM5ZjUzODY5ZjBKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICIxMzNhMWQ3Zi1hNjA3
LTQ1Y2YtYWUzOS1kYzUwNmZkNWM5ZmMiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
ZDFjMWEzNTEtZjVkNC00YTg0LTk4ZTEtNGIwMDAxMDllYWI1IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChAb5sWVeq8pqmeyU+rhNMnjEghRQjxrXAphgCoMQ3JldyBDcmVhdGVkMAE5uOUA
O4JotRdByIMCO4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI0Mzg3MzFjLWU5MGQtNDMxZS1hYzIxLTQzODM4
MDY1OTNhNEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogIjEwZjg1YWRkLWFlZjAtNDgyOC04NmY4
LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICIzNjFkMmNmNy00ODMzLTQ1ZTktOTMwYS1lZTBkNWFjYzRmZWMiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
ZTM0MzE3ZTEtNGE1Mi00ZTIwLTk4NjktMzhjYTkzZjVhNTViIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICJlZTg0MmQ1MC00NjY4LTRiMDEtOTFmZS0zY2ZkMDFhOTRjZGEiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChBqnLN4z+4Oh0fzwImxbgzUEgg5cOoePHNASioM
Q3JldyBDcmVhdGVkMAE5MDfaVoJotRdBeKLbVoJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDQ0ZWNhNmYyLTE5
YzEtNDQ4ZS1iMmUwLTdkNDQ5MTQyODZjN0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogIjEwZjg1
YWRkLWFlZjAtNDgyOC04NmY4LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiMzhjMjQ5YTEtY2I0YS00
NWU4LWFjZWQtODQ1NTFhYTZmZDIwIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQ2yJHNwDi7vo1/jP4UAxivhIIP8pLRbVUpa8qDENyZXcgQ3JlYXRlZDABOej4x2KCaLUXQehv
yWKCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiQ0YzZjNDFkMy00ODNmLTRhYjItOTRmOC1kYzU5ZmJkNWVmZmVK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICIxMzNhMWQ3Zi1hNjA3LTQ1Y2YtYWUzOS1kYzUwNmZk
NWM5ZmMiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjEwZjg1YWRkLWFl
ZjAtNDgyOC04NmY4LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICI2ZDAzNDRjOS1jYzVjLTQ1MTQt
OGY4Ny02MzAxNGE4MWY4MjciLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiNDI0ZGQ0
NGUtZjQ4OC00NGUxLWFkMTAtMTg4OGJmM2I4NmIyIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQrvhyfUymxzKC5iEWN2dWURIIVGkJAcjAZbgqDENyZXcg
Q3JlYXRlZDABOVigVnGCaLUXQXATWHGCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRiYTA5NTE1Ni1kZTgwLTQ2
MDQtODRmOC02ZjY0NDcyMGY5NTVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICI1NmJhNTI0MC1m
Mjg3LTQ4MDYtYWU0Zi0zOWE3ZGVjOTUzNWIiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiODI1ZDVjYzgtYzY4Zi00YmVkLTg2
NzMtOTMxZjRmMmFlMjA4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChBnG8wv7PJ1b3KFlw0SBOg0Egjvp/uJcbZA+CoMQ3JldyBDcmVhdGVkMAE5
uAA4eoJotRdBGGg5eoJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDExMjM1NzUyLWMyZTYtNGNjZS1iZWYyLTc3
MjY2MGJjNzJjZkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogImM5ZTNmMmNlLTNhMjEtNDdhYS05
ZTAxLTQ5ZTdjNTdlODJjNyIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMWUwOGVhOTctNzcwNS00NWVkLWEzYjAtOWIzMTA5
ZmUwZGRmIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjAzZTlhYTY1LTgyOWEtNGFmNC1iZjc4
LTI2MzdlOTUxMGY1OSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQAfjjPs6D
LCND7pliOfYfDhII++9fVfMcOB8qDENyZXcgQ3JlYXRlZDABObBwTX+CaLUXQXDITn+CaLUXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiRhZTU3NTIxOC01ZmIxLTRmNTAtYmQ3ZC02YTQ0ODNkMjE4YWJKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI4ZmVlNmRkMC1hNTlkLTRiZmItOTVkYS0wNzZkMzgzNTQ0MzIiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICI2YzgwNjQyNi0zOTAwLTQyODYtYTZlMy1kOWY5ZDFmY2M4YmIiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEDsJBaixAJXHgKyhDHuP5ZMSCKsRgdLAeU1kKgxDcmV3IENy
ZWF0ZWQwATnIHlp/gmi1F0GoR1t/gmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMTQwMjBmNmUtOTg2ZC00ZWY4
LWI5MDQtZjJmNTIxNTE2ZjdkShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVm
MC00ODI4LTg2ZjgtYWIwNjQzMTE4NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICJlNDYyZTczZS04ZTk1LTQxNzktOTM2NC0wMjAyMGMyZDYwNDAiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiYWZmYjBlYTYtYjBjOC00ZTE2LWIzYjItZWNhMmZhN2YzZDMxIiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjQ0NWIyNGI4LTQ2NzAtNDIzYS04Mzk5LTdjMjA4NzE5
MzE1NCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKENs2IxIKRMt9JVAA
RURPdEQSCJoAf6jlLZzTKgxDcmV3IENyZWF0ZWQwATmgYxmAgmi1F0GQsxqAgmi1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokNDY2OGVmMTAtYmIwMi00YTZhLWIwZGQtMGEyNmVhNGIzMjU1ShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiOWRlNTk3ZGYtNmViNy00NGI5LWI1OGEtNGUxZjIyZjA0NGU4IiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICI5MzI0YWFiYi1hYTE1LTRmMmUtYjUyMi1lZjJhYjQyYWM1YjUiLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKEN2W4GxctPgvbUuN50b4LsESCLQyrtF1qM7cKgxDcmV3IENyZWF0
ZWQwATkouKCAgmi1F0Eg3aGAgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZDA1ZWUzNzctMDZhYy00YjU0LWJj
NDAtY2I1NmZiMDYwOTA4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiOWM4OTQ1N2EtNDUwMS00
ZWJjLThjNzctMTczYzZjN2YzZDIyIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICIzOGRiNmY1Yi1lNjFiLTRmMjQtODNlNi03
MWM2MDcyOGU3YTIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKEC8jvjWhAsZK
yS48nBnpGckSCFKE/i+cC7Q6KgxDcmV3IENyZWF0ZWQwATl4wwyCgmi1F0FgPg6Cgmi1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokMzRkNjkxYjItNzA5ZC00MWMxLTg3OGMtNDRkYjE2M2YzNGRmShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiZTU2NTMwYTQtMmJjOS00ZmQyLThjZWEtMDU2MTcwNzE0MmNiIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiN2RlYzgyNDEtYzFiNy00ZWMyLWI4NzgtYjE1YWU3YzZkNjc4
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQZ+lX
gqUablLbHyMcxzcT0xIIvqfNkVQkSecqDENyZXcgQ3JlYXRlZDABOehDY5CCaLUXQTCvZJCCaLUX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRlZWNjZmE1Yi1jMDRiLTRkMjktOWUwOS01YTNhOWE3YjdlOTZKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICIyODA2ZjY2ZC0zZmNmLTRmMjgtYTRiOC05NmRiYzAwMmYxNWYi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiOTc0NDY4OTItZTJkMy00MTdlLWIzMDEtN2IzNWRjNmE4ODBlIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEt0HChC8c5/M8T8hC2aKGlF64RRiEgic9zXLL9VauyoMQ3JldyBDcmVh
dGVkMAE58F9ak4JotRdB+Ktbk4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGQyZGFkNTVlLWEyODEtNDFiYS05
NWQzLTRmODA0Y2FmNGFhNUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xh
bmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9v
Zl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjk3ZDkwOTJiLTY4YjMt
NGJkNS04YmE2LWVkMzZmZDEzZjUxOSIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxl
ZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjog
bnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1l
XCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3Bl
bkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119
XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICIzZGJhMzZmZi04ZjI2LTQwYzItOTNjOC00NzE2
ZjZjNjBmZDkiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29y
ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQt
YXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3Rl
bRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24g
MjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41
fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgKEN2BJRDQYY7QWWqSxuHe
8p8SCBqqCQSDoyEcKgxDcmV3IENyZWF0ZWQwATlAC02Wgmi1F0Ggck6Wgmi1F0oaCg5jcmV3YWlf
dmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQS
JgokMmNhNzY5ZTYtOTc0My00MjQ3LThhYTAtOWUyZWZjYzhjMDQyShwKDGNyZXdfcHJvY2VzcxIM
CgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFz
a3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUC
W3siaWQiOiAiYTg1YjRjYjQtMjY1OS00ODVlLTgzNDUtYTAzNmE0NmQyZDk5IiwgInJvbGUiOiAi
U2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4
X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFt
ZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAu
NywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZh
bHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8BCuwBW3siaWQiOiAiOTUy
OTM0MTQtNWM5My00OTVmLWIxNDgtMzJkY2FjMmZkYWIwIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBm
YWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjog
IjhkODZjN2Q3LTEyYzUtNDU1NS04ZjVjLTU0Nzg2MWE2ZjllMSIsICJhc3luY19leGVjdXRpb24/
IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoI
cGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFz
ZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJz
aW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkg
UFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNw
dXMSAhgMegIYARLVCAoQhIazhXGDdJlB1HEcA4mNsRIISN/DVD4ZQJoqDENyZXcgQ3JlYXRlZDAB
ObjzgpuCaLUXQXB2hJuCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25f
dmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRmZTQ4YjRlOC0zNWI4LTQzZmEtODBmNS1h
MGM5NDM1NmZlMTlKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFn
ZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdl
bnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICIwYzUwZjU1Ny0xZDdkLTQ2Njct
OGQ3OC01ZWI4NjBhY2RhZWUiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEK
CmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICIzOWI4N2JhOS1mNDEyLTRkOWQtOGMxYS00MGZlZWZl
Y2NkZDUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIi
LCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNjNmMjM1OTAtNTc0Ny00ZmZhLWE5ODEtYTcx
NmZkYmFjYjQ4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2Nv
cmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0
LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0
ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9u
IDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEu
NX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChC4GJyNtkFmtfZXC9Uk
/eqvEghHGH/dFF+7ISoMQ3JldyBDcmVhdGVkMAE5aKB7oIJotRdBgBN9oIJotRdKGgoOY3Jld2Fp
X3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lk
EiYKJDlhNzA2ODA2LTlhOTAtNGZmOC1hYTFjLWZmM2UwNTZhZDc3M0ocCgxjcmV3X3Byb2Nlc3MS
DAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rh
c2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1
Alt7ImlkIjogIjdiNmQ1NmI3LWI4MTgtNDU3YS05ZDRlLTkxNmJkMmEzOWQ0NyIsICJyb2xlIjog
IlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1h
eF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5h
bWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAw
LjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBm
YWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI5MzFh
NGI0MS05YTFkLTRkOTAtOWI4MC0zNzAwNTczNGRiYTYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZh
bHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRm
b3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoG
MjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJn
CmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAy
MDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIY
DHoCGAE=
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '33179'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:49:05 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=7sCpUch4zHBRr3bC0ZrXiZ.hp5JDRz10XR.quEnwOrA-1708386544-1.0-Afdz/ZpiEUiaPexcCrxugPwkeqRkeirb63bcWwb2oQP4BxG9mVHI7ouMoBhxJcQysgMju/x4AOA6ugypjle7VW0=;
_cfuvid=ekJFOKa47vCR_bxQqig9km7tYBNhHULDxrGlY80MRHE-1708386544507-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRS2vDMBCE7/4Viy65JCFpnEd9aw+F3loSSqGUoMhrW42sFdK6aQn570VyHvQi
0Hw7y2h0zACELkUBQjWSVevMaNUtK1UdDq/79SG3L+8bfizXs6c3y7lBMYwO2n2h4otrrKh1BlmT
7bHyKBnj1ulyspqtFvM8T6ClEk201Y5H+WiymM7Ojoa0wiAK+MgAAI7pjNlsiT+igMnworQYgqxR
FNchAOHJREXIEHRgaVkMb1CRZbQp7qZBaLpWWpBhH4AbhIdnYAIvGdOVNRuEQRzUrZOKgao4o23C
Vcedx6gdyO8HQBYkBCVN0qaj+Rg2/dJaf2MAzYlT78nH4hzrdH2Podp52sW3286Yq15pq0Oz9SgD
2Zg9MLnefsoAPlNv3b8qhPPUOt4y7dGGVP99v0/cvuhGZxfIxNLc9LvpKjsnFOE3MLbbStsavfM6
1RhzZqfsDwAA//8DAE3c61s9AgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858267800d3200e2-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:49:06 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1626'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_2e0618da30f6aa7a43b2698061939da0
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,494 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f679bbb1ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 20 Feb 2024 02:49:14 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
path=/; expires=Tue, 20-Feb-24 03:19:14 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '231'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_efeb5a1bdc189fd4a22c59e6c733c8cd
status:
code: 200
message: OK
- request:
body: !!binary |
Cs04CiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkSpDgKEgoQY3Jld2FpLnRl
bGVtZXRyeRLdBwoQIVLkQNO9Zsy8V9JTBCR+bhIIpjD0t3O28r0qDENyZXcgQ3JlYXRlZDABOUhU
wGZXcrUXQdibxWZXcrUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTQuMEoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRiMTk1ODhmMC0xMzg0LTQ0ZjYtYTE1NS05NWQ4
ZTU0NDcyYWJKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICIxMTBlZDkwOS05ZDI4LTQ2ZDctYjBl
My03Yzg0M2RhZTE3N2UiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNy
ZXdfdGFza3MSeAp2W3siaWQiOiAiODQ5Yjg0YzQtMDMyNS00MmUzLWIzZDctNDgwODdlMDFjY2U2
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRv
b2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJp
dEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFy
d2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDog
V2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVB
U0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChDN6oSR2AQZEy+pmKLHoDwxEgh2vJ1J
wXzTYyoMQ3JldyBDcmVhdGVkMAE5IH8ealdytRdBiDggaldytRdKGgoOY3Jld2FpX3ZlcnNpb24S
CAoGMC4xNC4wShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGIyZjFh
YjExLWJiNzEtNDVjYS1iOGZlLWVmOWIzMjk0MWM5ZEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVu
dGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUob
ChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjog
IjE4ZDIwMDdmLWU1YjgtNDA0OC05NzNjLTNkZDA4N2UzOWZmOCIsICJyb2xlIjogIlNjb3JlciIs
ICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjog
MTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVs
bCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xh
c3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRv
b2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI0ODBhNmVlOS1jOGVi
LTQyOGItOGM1ZS03OWQwNGJmNjA3MGQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdl
bnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgK
EPP7YsejqlFJITpRoPvrVfYSCK0gcBCCXLLZKgxDcmV3IENyZWF0ZWQwATmgcWxtV3K1F0EQAG5t
V3K1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjE0LjBKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokZmY0ZWMyYmUtZmEyYy00ZWFiLWFhMDktOWE2MDVhN2E3YWYzShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2Ny
ZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiOTU1Zjg3ZTktZTdkZC00OTQwLTk0MzYtODU3YzE3ZDFi
YTFiIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3Nl
PyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8B
CuwBW3siaWQiOiAiMGUwMjcwZTEtMWYzMS00NGU1LTkyZjgtYzE3Zjg3MzNkOTVlIiwgImFzeW5j
X2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImMxNGU0YzM1LWZlN2ItNDlmMC1hNjQ5LTRkMmI4MjBjNzkzNSIsICJh
c3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19u
YW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQ
cGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7
ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBE
ZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FS
TTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLVCAoQMhmG/09mSNoVDKMhdcK3LhIIeUQ8qBJuu4Uq
DENyZXcgQ3JlYXRlZDABOdC+H3RXcrUXQWCbIXRXcrUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAu
MTQuMEoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlNTFhNmY3Ny05
Njc0LTQ5Y2ItODU1OC00ODZkNDc3MmVhMmFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxK
FQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jl
d19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2MDZl
YjM5YS02NmZiLTRiMWItYjljNC00NDk2MGJiYjA3ZjEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVt
b3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAi
bWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwi
bW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6
IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gEKCmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICI2OGQzZjQyYS1jZmJhLTQ5
MGEtODNjNi0wYjNhMTZhNjdkYmIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNzQ0ZThlZDktMTc3
YS00NGQ1LWFiYTMtZmI0OTZmMzQ0MWM3IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChpt
YWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEob
Cg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2lu
IEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9v
dDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0H
ChAdP1n30tByxunJByeYqn3MEgijNV4D7oizKSoMQ3JldyBDcmVhdGVkMAE5KPPieVdytRdBqKjk
eVdytRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xNC4wShoKDnB5dGhvbl92ZXJzaW9uEggKBjMu
MTEuN0oxCgdjcmV3X2lkEiYKJDViNjk3YjZiLThmZmUtNDgxYy1hNzViLThiYmJkYjFlNjBhY0oc
CgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNy
ZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtj
cmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjQ4NzQzZGFhLTk5OWYtNDkwYy04YjlhLTFiODFlODBi
MjRhYiIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9z
ZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4i
LCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0
ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRp
b25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4
CnZbeyJpZCI6ICJmZjA4MDJhNS01YTRiLTRiZTgtYmUwMy1hZWEwNDU5ODYxZmMiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMi
OiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRm
b3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxh
dGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIw
IDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9U
NjAzMEoKCgRjcHVzEgIYDHoCGAES3QcKEHqFqLVvwPedeuAmoET/+Q4SCJmZkPJevJVMKgxDcmV3
IENyZWF0ZWQwATkQUxV9V3K1F0G4Kxd9V3K1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjE0LjBK
GgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZWZhYzA0NWQtOWYxNS00
MzM1LWE4MmMtZGQ1ZmMxMDU3MDQ4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNy
ZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVt
YmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiNzdmODRiM2It
MzczZi00MDQ5LTg4ZmYtMTJiZTQ4MDVjOGQzIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSoYBCgpjcmV3X3Rhc2tzEngKdlt7ImlkIjogImIwOTgxNjI1LWE0YjQtNDcyNi1hODVm
LTQ1NzcxNzg5NjQzMSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
IlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1h
cm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1f
c3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVy
c2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAy
LjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQMGkaO8s71aTo
ahUeMT5bhxIIrhxP4gFLdo0qDENyZXcgQ3JlYXRlZDABObi8VYBXcrUXQVhDV4BXcrUXShoKDmNy
ZXdhaV92ZXJzaW9uEggKBjAuMTQuMEoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jl
d19pZBImCiRhYjA2MGQ3ZS0zYzYxLTRkN2UtYWYwMS01ZjE1OTdmYzhkNDdKHAoMY3Jld19wcm9j
ZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9v
Zl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19hZ2VudHMS
uAIKtQJbeyJpZCI6ICIxODBlOTQ4Yi1kZTBjLTRhNmYtYTI2Zi0zYTVmOWI2NWViNGYiLCAicm9s
ZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3siaWQiOiAi
NDUxZGNhOGEtZjUzYy00YjM3LTkxMzUtZGU4MmVkNTRkMDViIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate, br
Connection:
- keep-alive
Content-Length:
- '7248'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Tue, 20 Feb 2024 02:49:15 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
_cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IfQIACBW6qxXU+1cmNXlgWpCR5FjmU4D/ueBc4LbIgJH0Zi4gQ2H0wFnPERPfDvX1nq8GsfCG+m3
vwIgsycJUkkUVGHzwbraXv9cnBdKbZMvzfc3pV1e/Zxdn7O5SqkvAOJdqlWQJIYpBprhEgJULt/S
e5KYrMbr2WY1WyyY3xS81zlJ0MGGwXwwXk5mUpsJG6U9STwJAPg9VQCae98hiXGfCmRhiCSBfwLI
ca5JgiLvjQ9RGagPyLWta5Og60RjQMR65DM/42PX9hKB4RU7TZsKJuQaretEI5umGWN7iae0vh9X
oXIaHOOTXdYCl4jgVZTTI5PBYohrzWC/ANYEDMZy+nxItpD/Rl3lfLCOd54kyirPjQUaxRXeHuUa
Iwnyga0K818AL84rV/7YIOu4sOEtcKZLHwNsswoUpxyCmO3ctwrkeMZ0sha3JKl2f8dbbMqDdtYZ
XwbLKs/FvzAAAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f6d08eb1ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:49:17 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1797'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_2d47c96f83cd1d7f135dc5556fc7043a
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
_cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IRwLACBG01VPU+1snTOje1ElnIIn/z51E1watMf5mNqmL92CYRfI1BJNIKCybJ2L2x16PbIm3Psr
AC5KSlDN3yplg2mM67WrTm//WJmrLdct5+X5bTteL4960/NFzUIA9O9LraqeeNPFQF14B0FOLj/S
JSU6o/a4Nxn1BiPhFetLbSjBWaga/UZ72On1Opz7hdKZEg8CAH5LA4Dv3nco0S5aES8MgRL4EsDk
jaYE33Je5OrNVSwAmbB1oxKuNkY4VXlvXtSbMeRQDv7WM4v065sxL5Pt+VV3/Wzn4CrOt+q1td3b
w0ObzA0npJ75DoNCPTAKMaisShKGALo3O6GnLpRP+qSuQl2pMACa+HtK8PfRAY/Myif9SIn+o/un
6tp/Ucee6PF/ink0fhaSf88LhjNqHfByQ9gIJZgrH2jMfwE8WbJcG+cMQ/I2VC+VX2mXKTHsqgS4
ZzIAbJIyPzyQEWmjjhgiwSgCCy/ThZvpFNLCqrL4FwM=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f7b6ea71ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:49:18 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '679'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_b225a2bd54cb8285069537b2c3ed5510
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -152,7 +152,7 @@ def test_hierarchical_process():
assert (
crew.kickoff()
== """Here are the five interesting ideas for articles with their respective highlights:\n\n1. The Role of AI in Climate Change: As the world grapples with the existential threat of climate change, artificial intelligence (AI) has emerged as a powerful ally in our battle against it. The article will explore how AI is being used to predict weather patterns, optimize renewable energy sources, and even capture and reduce greenhouse emissions. This novel intersection of technology and environment could hold the key to a sustainable future, making this a must-read for anyone interested in the potential of AI to transform our world.\n\n2. AI and Mental Health: With the increasing prevalence of mental health issues worldwide, innovative solutions are needed more than ever. This article will delve into the cutting-edge domain of AI and mental health, exploring how machine learning algorithms are helping to diagnose conditions, personalize treatments, and even predict the onset of mental disorders. This exploration of AI's potential in mental health not only sheds light on the future of healthcare but also opens a dialogue on the ethical considerations involved.\n\n3. The Ethical Implications of AI: As AI continues to permeate our lives, it brings with it a host of ethical considerations. This article will unravel the complex ethical terrain of AI, from issues of privacy and consent to its potential for bias and discrimination. By diving into the philosophical underpinnings of AI and its societal implications, this article will provoke thought and stimulate discussion on how we can ensure a fair and equitable AI-enabled future.\n\n4. How AI is Revolutionizing E-commerce: In the fiercely competitive world of e-commerce, AI is proving to be a game-changer. This article will take you on a journey through the world of AI-enhanced e-commerce, showcasing how machine learning algorithms are optimizing logistics, personalizing shopping experiences, and even predicting consumer behavior. This deep dive into AI's transformative impact on e-commerce is a must-read for anyone interested in the future of business and technology.\n\n5. AI in Space Exploration: The final frontier of space exploration is being redefined by the advent of AI. This article will take you on an interstellar journey through the role of AI in space exploration, from autonomous spacecraft navigation to the search for extraterrestrial life. By peering into the cosmos through the lens of AI, this article offers a glimpse into the future of space exploration and the infinite possibilities that AI holds."""
== """Here are the 5 unique and interesting ideas for articles along with a highlight paragraph for each:\n\n1) The Future of AI and Machine Learning: A deeper look into the future of AI and machine learning, revealing the potential of both and their implications on society. The article will provide an informed vision of the future, addressing the possibilities that AI and machine learning could bring to our daily lives, from healthcare to education, and the challenges we might face.\n\n2) Startups Revolutionizing Traditional Industries with Tech: This article will narrate the journey of game-changing startups that are transforming traditional industries with innovative technology. It will delve into their stories, exploring how they leverage technology to disrupt the status quo, the hurdles they've overcome, and the impact they're making.\n\n3) Personal Development in the Age of Technology: In this article, we will explore how technology has changed the landscape of personal development. We will cover how digital tools and platforms are empowering individuals to learn, grow, and achieve their goals faster than ever before.\n\n4) Ethical Issues in Software Engineering: This article will investigate the ethical dilemmas that are arising in the realm of software engineering. It will discuss the moral implications of new technologies, the responsibilities of software engineers, and the need for a robust code of ethics in this rapidly evolving field.\n\n5) Entrepreneurship in the Digital Era: In this piece, we will delve into the role of digital technology in shaping the entrepreneurial landscape. We will discuss how the digital era has given rise to new entrepreneurial opportunities, the challenges that come with it, and the skills required to thrive in this new era."""
)
@@ -187,7 +187,7 @@ def test_crew_with_delegating_agents():
assert (
crew.kickoff()
== "The Senior Writer has produced a fantastic 4 paragraph article on AI:\n\n\"Artificial Intelligence, or AI, is often considered the stuff of science fiction, but it is very much a reality in today's world. In simplest terms, AI is a branch of computer science that aims to create machines that mimic human intelligence - think self-driving cars, voice assistants like Siri or Alexa, even your Netflix recommendations. These are all examples of AI in action, silently making our lives easier and more efficient.\n\nThe applications of AI are as vast as our imagination. In healthcare, AI is used to predict diseases and personalize patient care. In finance, algorithms can analyze market trends and make investment decisions. The education sector uses AI to customize learning and identify areas where students need help. Even in creative fields like music and art, AI is making its mark by creating new pieces that are hard to distinguish from those made by humans.\n\nAI's potential for the future is staggering. As technology advances, so too does the complexity and capabilities of AI. It's predicted that AI will play a significant role in tackling some of humanity's biggest challenges, such as climate change and global health crises. Imagine AI systems predicting natural disasters with enough time for us to take preventative measures, or developing new, effective treatments for diseases through data analysis.\n\nHowever, this brave new world does not come without its challenges. Ethical issues are at the forefront, with concerns over privacy and the potential misuse of AI. There's also the question of job displacement due to automation, and the need for laws and regulations to keep pace with this rapidly advancing technology. Despite these hurdles, the promise of AI and its ability to transform our world is an exciting prospect, one that we are only just beginning to explore.\""
== "In today's technological landscape, Artificial Intelligence (AI) agents have emerged as key players in shaping the future of various industries. These agents, which are essentially computer programs that can learn, adapt, and operate autonomously, are a testament to the rapidly evolving capabilities of AI. They are the harbingers of a new era, where machines can mimic human intelligence, and in some cases, even surpass it.\n\nAI agents are transforming the way we engage with technology, enabling a more personalized and efficient user experience. They are extensively used in areas like customer service, where chatbots can handle customer inquiries without human intervention. They have revolutionized sectors like healthcare, where AI agents can analyze patient data to predict health trends and provide personalized treatment recommendations. \n\nHowever, as AI agents continue to evolve, they also pose significant ethical and regulatory challenges. There are concerns about privacy, bias, and the potential misuse of these technologies. As a society, it's crucial to establish norms and regulations that ensure the responsible use of AI agents, balancing their benefits with potential risks.\n\nIn conclusion, AI agents are a transformative technology that is reshaping our world. The challenges they present are complex, but the opportunities they offer are immense. As we continue to explore and understand this technology, we can harness its potential to create a more efficient, personalized, and intelligent future."
)
@@ -299,9 +299,10 @@ def test_api_calls_throttling(capsys):
from unittest.mock import patch
from langchain.tools import tool
from langchain_openai import ChatOpenAI
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -313,6 +314,7 @@ def test_api_calls_throttling(capsys):
max_iter=5,
allow_delegation=False,
verbose=True,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
)
task = Task(
@@ -416,10 +418,10 @@ def test_async_task_execution():
start.return_value = thread
with patch.object(threading.Thread, "join", wraps=thread.join()) as join:
list_ideas.output = TaskOutput(
description="A 4 paragraph article about AI.", result="ok"
description="A 4 paragraph article about AI.", raw_output="ok"
)
list_important_history.output = TaskOutput(
description="A 4 paragraph article about AI.", result="ok"
description="A 4 paragraph article about AI.", raw_output="ok"
)
crew.kickoff()
start.assert_called()
@@ -501,7 +503,7 @@ def test_crew_function_calling_llm():
from langchain.tools import tool
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="gpt-3.5")
llm = ChatOpenAI(model="gpt-3.5-turbo-0125")
with patch.object(llm.client, "create", wraps=llm.client.create) as private_mock:
@@ -514,6 +516,7 @@ def test_crew_function_calling_llm():
role="test role",
goal="test goal",
backstory="test backstory",
llm=ChatOpenAI(model="gpt-4-0125-preview"),
tools=[learn_about_AI],
)
@@ -522,8 +525,34 @@ def test_crew_function_calling_llm():
agent=agent1,
)
tasks = [essay]
print(agent1.function_calling_llm)
crew = Crew(agents=[agent1], tasks=tasks, function_calling_llm=llm)
print(agent1.function_calling_llm)
crew.kickoff()
private_mock.assert_called()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_task_with_no_arguments():
from langchain.tools import tool
@tool
def return_data() -> str:
"Useful to get the sales related data"
return "January: 5, February: 10, March: 15, April: 20, May: 25"
researcher = Agent(
role="Researcher",
goal="Make the best research and analysis on content about AI and AI agents",
backstory="You're an expert researcher, specialized in technology, software engineering, AI and startups. You work as a freelancer and is now working on doing research and analysis for a new customer.",
tools=[return_data],
allow_delegation=False,
)
task = Task(
description="Look at the available data nd give me a sense on the total number of sales.",
agent=researcher,
)
crew = Crew(agents=[researcher], tasks=[task])
result = crew.kickoff()
assert result == "The total number of sales from January to May is 75."

View File

@@ -2,8 +2,11 @@
from unittest.mock import MagicMock, patch
from crewai.agent import Agent
from crewai.task import Task
import pytest
from pydantic import BaseModel
from pydantic_core import ValidationError
from crewai import Agent, Crew, Task
def test_task_tool_reflect_agent_tools():
@@ -136,3 +139,211 @@ def test_async_execution():
with patch.object(Agent, "execute_task", return_value="ok") as execute:
task.execute(agent=researcher)
execute.assert_called_once_with(task=task, context=None, tools=[])
def test_multiple_output_type_error():
class Output(BaseModel):
field: str
with pytest.raises(ValidationError):
Task(
description="Give me a list of 5 interesting ideas to explore for na article, what makes them unique and interesting.",
expected_output="Bullet point list of 5 interesting ideas.",
output_json=Output,
output_pydantic=Output,
)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_pydantic():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
result = crew.kickoff()
assert isinstance(result, ScoreOutput)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_json():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
result = crew.kickoff()
assert '{\n "score": 4\n}' == result
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_pydantic_to_another_task():
from langchain_openai import ChatOpenAI
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
function_calling_llm=ChatOpenAI(model="gpt-3.5-turbo-0125"),
verbose=True,
)
task1 = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
task2 = Task(
description="Given the score the title 'The impact of AI in the future of work' got, give me an integer score between 1-5 for the following title: 'Return of the Jedi', you MUST give it a score, use your best judgment",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task1, task2], verbose=2)
result = crew.kickoff()
assert 5 == result.score
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_json_to_another_task():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task1 = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
task2 = Task(
description="Given the score the title 'The impact of AI in the future of work' got, give me an integer score between 1-5 for the following title: 'Return of the Jedi'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task1, task2])
result = crew.kickoff()
assert '{\n "score": 5\n}' == result
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_output():
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_json_output():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once_with('{\n "score": 4\n}')
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_pydantic_output():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once_with('{"score":4}')