From 41a0a6e67cddd799f70945f7aebc672eee996ecc Mon Sep 17 00:00:00 2001 From: Nils Blach Date: Mon, 21 Aug 2023 03:33:46 +0200 Subject: [PATCH] Initial commit --- .gitignore | 32 + LICENSE | 52 + README.md | 140 + examples/doc_merge/README.md | 38 + examples/doc_merge/doc_merge.py | 765 ++ examples/doc_merge/documents.csv | 10195 ++++++++++++++++ examples/doc_merge/plot.py | 170 + examples/doc_merge/pure_documents.json | 52 + examples/keyword_counting/README.md | 45 + examples/keyword_counting/countries.csv | 101 + .../keyword_counting/dataset_gen_countries.py | 535 + examples/keyword_counting/keyword_counting.py | 1457 +++ examples/keyword_counting/plot.py | 167 + examples/set_intersection/README.md | 52 + .../dataset_gen_intersection.py | 92 + examples/set_intersection/plot.py | 184 + .../set_intersection/set_intersection_032.csv | 101 + .../set_intersection/set_intersection_032.py | 730 ++ .../set_intersection/set_intersection_064.csv | 101 + .../set_intersection/set_intersection_064.py | 760 ++ .../set_intersection/set_intersection_128.csv | 101 + .../set_intersection/set_intersection_128.py | 812 ++ examples/set_intersection/utils.py | 99 + examples/sorting/README.md | 46 + examples/sorting/plot.py | 186 + examples/sorting/sorting_032.csv | 101 + examples/sorting/sorting_032.py | 726 ++ examples/sorting/sorting_064.csv | 101 + examples/sorting/sorting_064.py | 785 ++ examples/sorting/sorting_128.csv | 101 + examples/sorting/sorting_128.py | 883 ++ examples/sorting/utils.py | 78 + graph_of_thoughts/__init__.py | 0 graph_of_thoughts/controller/README.md | 117 + graph_of_thoughts/controller/__init__.py | 4 + .../controller/abstract_language_model.py | 92 + graph_of_thoughts/controller/chatgpt.py | 156 + .../controller/config_template.json | 49 + graph_of_thoughts/controller/controller.py | 152 + graph_of_thoughts/controller/llamachat_hf.py | 119 + graph_of_thoughts/operations/README.md | 70 + graph_of_thoughts/operations/__init__.py | 14 + .../operations/graph_of_operations.py | 69 + graph_of_thoughts/operations/operations.py | 900 ++ graph_of_thoughts/operations/thought.py | 117 + graph_of_thoughts/parser/__init__.py | 1 + graph_of_thoughts/parser/parser.py | 90 + graph_of_thoughts/prompter/__init__.py | 1 + graph_of_thoughts/prompter/prompter.py | 86 + paper/README.md | 5 + paper/final_results_gpt35.tar.bz2 | Bin 0 -> 6593955 bytes paper/pics/preview.svg | 2935 +++++ paper/plots.py | 337 + pyproject.toml | 32 + 54 files changed, 25134 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 examples/doc_merge/README.md create mode 100644 examples/doc_merge/doc_merge.py create mode 100644 examples/doc_merge/documents.csv create mode 100644 examples/doc_merge/plot.py create mode 100644 examples/doc_merge/pure_documents.json create mode 100644 examples/keyword_counting/README.md create mode 100644 examples/keyword_counting/countries.csv create mode 100644 examples/keyword_counting/dataset_gen_countries.py create mode 100644 examples/keyword_counting/keyword_counting.py create mode 100644 examples/keyword_counting/plot.py create mode 100644 examples/set_intersection/README.md create mode 100644 examples/set_intersection/dataset_gen_intersection.py create mode 100644 examples/set_intersection/plot.py create mode 100644 examples/set_intersection/set_intersection_032.csv create mode 100644 examples/set_intersection/set_intersection_032.py create mode 100644 examples/set_intersection/set_intersection_064.csv create mode 100644 examples/set_intersection/set_intersection_064.py create mode 100644 examples/set_intersection/set_intersection_128.csv create mode 100644 examples/set_intersection/set_intersection_128.py create mode 100644 examples/set_intersection/utils.py create mode 100644 examples/sorting/README.md create mode 100644 examples/sorting/plot.py create mode 100644 examples/sorting/sorting_032.csv create mode 100644 examples/sorting/sorting_032.py create mode 100644 examples/sorting/sorting_064.csv create mode 100644 examples/sorting/sorting_064.py create mode 100644 examples/sorting/sorting_128.csv create mode 100644 examples/sorting/sorting_128.py create mode 100644 examples/sorting/utils.py create mode 100644 graph_of_thoughts/__init__.py create mode 100644 graph_of_thoughts/controller/README.md create mode 100644 graph_of_thoughts/controller/__init__.py create mode 100644 graph_of_thoughts/controller/abstract_language_model.py create mode 100644 graph_of_thoughts/controller/chatgpt.py create mode 100644 graph_of_thoughts/controller/config_template.json create mode 100644 graph_of_thoughts/controller/controller.py create mode 100644 graph_of_thoughts/controller/llamachat_hf.py create mode 100644 graph_of_thoughts/operations/README.md create mode 100644 graph_of_thoughts/operations/__init__.py create mode 100644 graph_of_thoughts/operations/graph_of_operations.py create mode 100644 graph_of_thoughts/operations/operations.py create mode 100644 graph_of_thoughts/operations/thought.py create mode 100644 graph_of_thoughts/parser/__init__.py create mode 100644 graph_of_thoughts/parser/parser.py create mode 100644 graph_of_thoughts/prompter/__init__.py create mode 100644 graph_of_thoughts/prompter/prompter.py create mode 100644 paper/README.md create mode 100644 paper/final_results_gpt35.tar.bz2 create mode 100644 paper/pics/preview.svg create mode 100644 paper/plots.py create mode 100644 pyproject.toml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..90f2398 --- /dev/null +++ b/.gitignore @@ -0,0 +1,32 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +dist/ +build/ + +# Installer logs +pip-log.txt + +# IDEs +.idea/ +*.vscode/ +*.pycproj +*.user +*.pyproj.user + +# Data +results/ +*.out +*.err + +# Environments +env/ + +# Config File +**/config.json diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8c58509 --- /dev/null +++ b/LICENSE @@ -0,0 +1,52 @@ +Copyright (c) 2023 ETH Zurich. + All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer listed + in this license in the documentation and/or other materials + provided with the distribution. + +- Neither the name of the copyright holders nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +The copyright holders provide no reassurances that the source code +provided does not infringe any patent, copyright, or any other +intellectual property rights of third parties. The copyright holders +disclaim any liability to any recipient for claims brought against +recipient by any third party for infringement of that parties +intellectual property rights. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +Citation +======== + +Any published work which uses this software should include the +following citation: + +---------------------------------------------------------------------- +Maciej Besta, Nils Blach, Ales Kubicek, Robert Gerstenberger, Lukas +Gianinazzi, Joanna Gajda, Tomasz Lehmann, MichaƂ Podstawski, Hubert +Niewiadomski, Piotr Nyczyk, Torsten Hoefler: Graph of Thoughts: Solving +Elaborate Problems with Large Language Models. In: arXiv preprint +arXiv:2308.09687 +---------------------------------------------------------------------- diff --git a/README.md b/README.md new file mode 100644 index 0000000..bd2ba9a --- /dev/null +++ b/README.md @@ -0,0 +1,140 @@ +# Graph of Thoughts (GoT) + +

+ +

+ +This is the official implementation of [Graph of Thoughts: Solving Elaborate Problems with Large Language Models](https://arxiv.org/pdf/2308.09687.pdf). +This framework gives you the ability to solve complex problems by modeling them as a Graph of Operations (GoO), which is automatically executed with a Large Language Model (LLM) as the engine. +This framework is designed to be flexible and extensible, allowing you to not only solve problems using the new GoT approach, but also to implement GoOs resembling previous approaches like CoT or ToT. + +## Setup Guide + +In order to use this framework, you need to have a working installation of Python 3.8 or newer. + +### Installing GoT + +If you are a user and you just want to use `graph_of_thoughts`, you can install it directly from the source with pip. +If you are a developer and you want to modify the code, you can install it in editable mode by adding the `-e` flag to the pip command. +Activate your Python environment (if any), and run: + +```bash +git clone https://github.com/spcl/graph-of-thoughts.git +cd graph-of-thoughts +pip install . +``` + +### Configuring the LLM + +In order to use the framework, you need to have access to an LLM. +Please follow the instructions in the [Controller README](graph_of_thoughts/controller/README.md) to configure the LLM of your choice. + +## Quick Start + +The following code snippet shows how to use the framework to solve the sorting problem for a list of 32 numbers using a CoT-like approach. +Make sure you have followed the [Setup Guide](#setup-guide) before running the code. + +```python +from examples.sorting.sorting_032 import SortingPrompter, SortingParser, utils +from graph_of_thoughts import controller, operations + +# Problem input + +to_be_sorted = "[0, 2, 6, 3, 8, 7, 1, 1, 6, 7, 7, 7, 7, 9, 3, 0, 1, 7, 9, 1, 3, 5, 1, 3, 6, 4, 5, 4, 7, 3, 5, 7]" + +# Create the Graph of Operations +gop = operations.GraphOfOperations() +gop.append_operation(operations.Generate()) +gop.append_operation(operations.Score(scoring_function=utils.num_errors)) +gop.append_operation(operations.GroundTruth(utils.test_sorting)) + +# Configure the Language Model (Assumes config.json is in the current directory with OpenAI API key) +lm = controller.ChatGPT("config.json", model_name="chatgpt") + +# Create the Controller +ctrl = controller.Controller( + lm, + gop, + SortingPrompter(), + SortingParser(), + # The following dictionary is used to configure the inital thought state + { + "original": to_be_sorted, + "current": "", + "method": "cot" + } +) + +# Run the Controller and generate the output graph +ctrl.run() +ctrl.output_graph("output_cot.json") +``` + +To run the more sophisticated GoT approach, you can use the following code snippet. + +```python +from examples.sorting.sorting_032 import SortingPrompter, SortingParser, got, utils +from graph_of_thoughts import controller, operations + +# Problem input + +to_be_sorted = "[0, 2, 6, 3, 8, 7, 1, 1, 6, 7, 7, 7, 7, 9, 3, 0, 1, 7, 9, 1, 3, 5, 1, 3, 6, 4, 5, 4, 7, 3, 5, 7]" + +# Retrieve the Graph of Operations +gop = got() + +# Configure the Language Model (Assumes config.json is in the current directory with OpenAI API key) +lm = controller.ChatGPT("config.json", model_name="chatgpt") + +# Create the Controller +ctrl = controller.Controller( + lm, + gop, + SortingPrompter(), + SortingParser(), + # The following dictionary is used to configure the inital thought state + { + "original": to_be_sorted, + "current": "", + "phase": 0, + "method": "got" + } +) + +# Run the Controller and generate the output graph +ctrl.run() +ctrl.output_graph("output_got.json") +``` +You can compare the two results by inspecting the output graphs `output_cot.json` and `output_got.json`. +The final thought states' scores indicate the number of errors in the sorted list. + +## Documentation +The paper gives a high-level overview of the framework and its components. +In order to understand the framework in more detail, you can read the documentation of the individual modules. +Especially the [Controller](graph_of_thoughts/controller/README.md) and [Operations](graph_of_thoughts/operations/README.md) modules are important for understanding how to make the most out of the framework. +We took extra care to fully document the code, so that you can easily understand how it works and how to extend it. + +## Examples + +The [examples](examples) directory contains several examples of problems that can be solved using the framework, including the ones presented in the paper. +It is a great starting point for learning how to use the framework to solve real problems. +Each example contains a `README.md` file with instructions on how to run it and play with it. The code is fully documented and should be easy to follow. + +## Paper Results + +You can run the experiments from the paper by following the instructions in the [examples](examples) directory. +However, if you just want to inspect and replot the results, you can use the [paper](paper) directory. + +## Citations + +Any published work which uses this software should include the following citation: + +```bibtex +@misc{besta2023got, + title = {{Graph of Thoughts: Solving Elaborate Problems with Large Language Models}}, + author = {Besta, Maciej and Blach, Nils and Kubicek, Ales and Gerstenberger, Robert and Gianinazzi, Lukas and Gajda, Joanna and Lehmann, Tomasz and Podstawski, Micha{\l} and Niewiadomski, Hubert and Nyczyk, Piotr and Hoefler, Torsten}, + year = 2023, + eprinttype = {arXiv}, + eprint = {2308.09687} +} +``` diff --git a/examples/doc_merge/README.md b/examples/doc_merge/README.md new file mode 100644 index 0000000..a1c34a5 --- /dev/null +++ b/examples/doc_merge/README.md @@ -0,0 +1,38 @@ +# Document Merging + +The use case in this directory generates new Non-Disclosure Agreement (NDA) based on several input ones that partially overlap in terms of their contents. +We provide implementations of five different approaches: +- IO +- Chain-of-Thought (CoT) +- Tree of Thought (ToT) +- Graph of Thoughts (GoT): + - GoT: aggregation of fully merged NDAs + - GoT2: aggregation of partially merged NDAs + +## Data + +We provide an input file with 50 samples: `documents.csv`. + +## Execution + +The file to execute the use case is called +`doc_merge.py`. In the main body, one can +select the specific samples to be run (variable samples) and the +approaches (variable approaches). It is also possible to set a budget in +dollars (variable budget). + +The Python scripts will create the directory `result`, if it is not +already present. In the `result` directory, another directory is created +for each run: `{name of LLM}_{list of approaches}_{day}_{start time}`. +Inside each execution specific directory two files (`config.json`, +`log.log`) and a separate directory for each selected approach are +created. `config.json` contains the configuration of the run: input data, +selected approaches, name of the LLM, and the budget. `log.log` contains +the prompts and responses of the LLM as well as additional debug data. +The approach directories contain a separate json file for every sample +and the file contains the Graph Reasoning State (GRS) for that sample. + +## Plot Data + +Change the results directory in line 158 of `plot.py` and run `python3 +plot.py` to plot your data. diff --git a/examples/doc_merge/doc_merge.py b/examples/doc_merge/doc_merge.py new file mode 100644 index 0000000..6cb733f --- /dev/null +++ b/examples/doc_merge/doc_merge.py @@ -0,0 +1,765 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import os +import re +import logging +import datetime +import json +import csv +from statistics import fmean +from typing import Dict, List, Callable, Set, Union +from graph_of_thoughts import controller, operations, prompter, parser + + +class DocMergePrompter(prompter.Prompter): + """ + DocMergePrompter provides the generation of prompts specific to the document + merge example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + merge_doc_prompt_start = """Merge the following {num} NDA documents - into a single NDA, maximizing retained information and minimizing redundancy. Output only the created NDA between the tags and , without any additional text. +Here are NDAs - +""" + merge_doc_prompt_block = """ + +{document} + +""" + + merge_doc_prompt_cot_start = """Merge the following {num} NDA documents - into a single NDA, maximizing retained information and minimizing redundancy. +You can generate any intermediate thoughts and documents you want, but the final output should be the merged NDA, placed between the two tags and . +For instance you might want to follow this approach: +1. Split each NDA into their logical subparts. +2. Merge the subparts of the {num} NDAs. +3. Combine the merged subparts into a single NDA. +4. Place the merged NDA between the tags and . + +Here are NDAs - : +""" + + improve_summary_prompt_start = """The following NDA merges initial NDAs - . +Please improve the summary NDA by adding more information and removing redundancy. Output only the improved NDA, placed between the two tags and , without any additional text. + +Here are NDAs - : +""" + + improve_summary_prompt_block = """ + +{document} + +""" + + improve_summary_prompt_end = """ +Here is the summary NDA : + +{summary} + +""" + + score_prompt_base = """The following NDA merges NDAs - . +Please score the merged NDA in terms of how much redundant information is contained, independent of the original NDAs, as well as how much information if retained from the original NDAs. +A score of 10 for redundancy implies that absolutely no information is redundant, while a score of 0 implies that at least half of the information is redundant (so everything is at least mentioned twice). +A score of 10 for retained information implies that all information from the original NDAs is retained, while a score of 0 implies that no information is retained. +You may provide reasoning for your scoring, but the final score for redundancy should be between the tags and , and the final score for retained information should be between the tags and , without any additional text within any of those tags. + +Here are NDAs - : +""" + + score_prompt_block = """ + +{document} + +""" + + score_prompt_end = """ +Here is the summary NDA : + +{summary} + +""" + + aggregate_full_prompt_base = """The following NDAs - each merge the initial NDAs - . +Combine the merged NDAs - into a new one, maximizing their advantages and overall information retention, while minimizing redundancy. +Output only the new NDA between the tags and , without any additional text. + +Here are the original NDAs - : +""" + + aggregate_full_prompt_block1 = """ + +{document} + +""" + aggregate_full_prompt_mid = """ +Here are the summary NDAs - : +""" + + aggregate_full_prompt_block2 = """ + +{summary} + +""" + + aggregate_sub_prompt_base = """The following NDAs - are summaries of some other NDAs. +Combine them into a new one, make sure to maximize their advantages and overall information retention, while minimizing redundancy. +Output only the new NDA between the tags and , without any additional text. + +Here are NDAs - : +""" + + aggregate_sub_prompt_generate = """ +NDA : +{nda} + +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + """ + + if len(state_dicts[0]["parts"]) > 0 and len(state_dicts[0]["parts"]) < len( + state_dicts[0]["documents"] + ): + prompt = self.aggregate_sub_prompt_base.format( + num_ndas=len(state_dicts), + ) + for i, state_dict in enumerate(state_dicts): + prompt += self.aggregate_sub_prompt_generate.format( + nda=state_dict["current"], num=i + 1 + ) + return prompt + else: + prompt = self.aggregate_full_prompt_base.format( + num_ndas=len(state_dicts[0]["documents"]), + num_ndas_summary=len(state_dicts), + ) + for i, document in enumerate(state_dicts[0]["documents"]): + prompt += self.aggregate_full_prompt_block1.format( + document=document, num=i + 1 + ) + prompt += self.aggregate_full_prompt_mid.format( + num_ndas_summary=len(state_dicts), + ) + for i, state_dict in enumerate(state_dicts): + prompt += self.aggregate_full_prompt_block2.format( + summary=state_dict["current"], num=i + 1 + ) + return prompt + + def generate_prompt( + self, + num_branches: int, + documents: List[str], + method: str, + parts: Set[str], + current: str, + **kwargs, + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param documents: The list of documents to be merged. + :type documents: List[str] + :param method: Method for which the generate prompt is generated. + :type method: str + :param parts: Indices of the already processed document parts. + :type parts: Set[str] + :param current: The intermediate solution. + :type current: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If method is not implemented yet. + """ + + prompt = "" + if method.startswith("io") or method.startswith("cot"): + if method.startswith("io"): + prompt += self.merge_doc_prompt_start.format(num=len(documents)) + else: + prompt += self.merge_doc_prompt_cot_start.format(num=len(documents)) + for i, document in enumerate(documents): + prompt += self.merge_doc_prompt_block.format( + document=document, num=i + 1 + ) + return prompt + elif method.startswith("tot"): + if current is None or current == "": + prompt += self.merge_doc_prompt_start.format(num=len(documents)) + for i, document in enumerate(documents): + prompt += self.merge_doc_prompt_block.format( + document=document, num=i + 1 + ) + return prompt + else: + prompt += self.improve_summary_prompt_start.format( + num=len(documents), + ) + for i, document in enumerate(documents): + prompt += self.improve_summary_prompt_block.format( + document=document, num=i + 1 + ) + prompt += self.improve_summary_prompt_end.format(summary=current) + return prompt + elif method.startswith("got"): + if current is None or current == "": + prompt += self.merge_doc_prompt_start.format(num=len(parts)) + for i, part in enumerate(sorted(list(parts))): + prompt += self.merge_doc_prompt_block.format( + document=documents[part], num=i + 1 + ) + return prompt + else: + prompt += self.improve_summary_prompt_start.format( + num=len(parts), + ) + for i, part in enumerate(sorted(list(parts))): + prompt += self.improve_summary_prompt_block.format( + document=documents[part], num=i + 1 + ) + prompt += self.improve_summary_prompt_end.format(summary=current) + return prompt + else: + assert False, "Not implemented yet." + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + :raise AssertionError: If more than one thought state is supplied. + """ + + if len(state_dicts) > 1: + assert False, "Not implemented yet." + else: + # perform individual scoring + parts = ( + [ + state_dicts[0]["documents"][part] + for part in sorted(list(state_dicts[0]["parts"])) + ] + if len(state_dicts[0]["parts"]) > 0 + else state_dicts[0]["documents"] + ) + prompt = self.score_prompt_base.format( + num=len(parts), + ) + for i, part in enumerate(parts): + prompt += self.score_prompt_block.format(document=part, num=i + 1) + prompt += self.score_prompt_end.format( + summary=state_dicts[0]["current"], + ) + return prompt + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + +class DocMergeParser(parser.Parser): + """ + DocMergeParser provides the parsing of language model reponses specific to the + document merge example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def strip_answer_helper(self, text: str, tag: str = "") -> str: + """ + Helper function to remove tags from a text. + + :param text: The input text. + :type text: str + :param tag: The tag to be stripped. Defaults to "". + :type tag: str + :return: The stripped text. + :rtype: str + """ + + text = text.strip() + if "Output:" in text: + text = text[text.index("Output:") + len("Output:") :].strip() + if tag != "": + start = text.rfind(f"<{tag}>") + end = text.rfind(f"") + if start != -1 and end != -1: + text = text[start + len(f"<{tag}>") : end].strip() + elif start != -1: + logging.warning( + f"Only found the start tag <{tag}> in answer: {text}. Returning everything after the tag." + ) + text = text[start + len(f"<{tag}>") :].strip() + elif end != -1: + logging.warning( + f"Only found the end tag in answer: {text}. Returning everything before the tag." + ) + text = text[:end].strip() + else: + logging.warning( + f"Could not find any tag {tag} in answer: {text}. Returning the full answer." + ) + return text + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + """ + + new_states = [] + for text in texts: + if len(states[0]["parts"]) < len(states[0]["documents"]): + # subpart aggregation + text = self.strip_answer_helper(text, "Merged") + new_state = states[0].copy() + new_state["current"] = text + new_state["parts"] = set() + for state in states: + new_state["parts"] = new_state["parts"] | state["parts"] + + new_states.append(new_state) + else: + # full NDA aggregation + text = self.strip_answer_helper(text, "Merged") + new_state = states[0].copy() + new_state["current"] = text + new_states.append(new_state) + return new_states + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + new_states = [] + for text in texts: + text = self.strip_answer_helper(text, "Merged") + new_state = state.copy() + new_state["current"] = text + new_states.append(new_state) + return new_states + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + :raise AssertionError: If the number of thought states is not one. + """ + assert len(states) == 1, "Only one state is allowed for scoring." + if len(states) == 1: + # individual scoring + redundancy_scores = [] + retain_scores = [] + for text in texts: + answer = self.strip_answer_helper(text, "Redundancy") + res = re.findall(r"\d+\.?\d*", answer) + if len(res) == 1: + redundancy_scores.append(float(res[0])) + elif len(res) > 1: + logging.warning( + f"Found multiple redundancy scores in answer: {text}. Returning the last one." + ) + redundancy_scores.append(float(res[-1])) + else: + logging.warning( + f"Could not find any redundancy score in answer: {text}. Ignoring this answer." + ) + answer = self.strip_answer_helper(text, "Retained") + res = re.findall(r"\d+\.?\d*", answer) + if len(res) == 1: + retain_scores.append(float(res[0])) + elif len(res) > 1: + logging.warning( + f"Found multiple retained scores in answer: {text}. Returning the last one." + ) + retain_scores.append(float(res[-1])) + else: + logging.warning( + f"Could not find any retained score in answer: {text}. Ignoring this answer." + ) + if len(redundancy_scores) == 0 or len(retain_scores) == 0: + logging.warning( + f"Could not find any valid score in any answer. Returning 0.0." + ) + return [0.0] + mean_redundancy = fmean(redundancy_scores) + mean_retain = fmean(retain_scores) + f1 = 2 * mean_redundancy * mean_retain / (mean_redundancy + mean_retain) + return [f1] + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(3, False)) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(3, False)) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + branch_factor = 10 + + operations_graph.append_operation(operations.Generate(1, branch_factor)) + operations_graph.append_operation(operations.Score(3, False)) + keep_best_1 = operations.KeepBestN(1, True) + operations_graph.append_operation(keep_best_1) + + for _ in range(2): + operations_graph.append_operation(operations.Generate(1, branch_factor)) + operations_graph.append_operation(operations.Score(3, False)) + keep_best_2 = operations.KeepBestN(1, True) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method, where full documents + are merged. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + branch_factor = 10 + + operations_graph.append_operation(operations.Generate(1, branch_factor)) + operations_graph.append_operation(operations.Score(3, False)) + keep_best = operations.KeepBestN(3, True) + operations_graph.append_operation(keep_best) + operations_graph.append_operation(operations.Aggregate(5)) + operations_graph.append_operation(operations.Score(3, False)) + keep_best2 = operations.KeepBestN(1, True) + keep_best2.add_predecessor(keep_best) + operations_graph.append_operation(keep_best2) + operations_graph.append_operation(operations.Generate(1, branch_factor)) + operations_graph.append_operation(operations.Score(3, False)) + keep_best3 = operations.KeepBestN(1, True) + keep_best3.add_predecessor(keep_best2) + operations_graph.append_operation(keep_best3) + + return operations_graph + + +def got2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT2 method, where partial + documents are merged. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + sub_parts = [] + for i in range(0, 4, 2): # should be at most 16 parts + sub_text = operations.Selector( + lambda thoughts, list_id=i: [ + operations.Thought( + state={**thoughts[0].state, "parts": {list_id, list_id + 1}} + ) + ] + ) + operations_graph.add_operation(sub_text) + gen_nda = operations.Generate(1, 5) + gen_nda.add_predecessor(sub_text) + operations_graph.add_operation(gen_nda) + score_nda = operations.Score(3, False) + score_nda.add_predecessor(gen_nda) + operations_graph.add_operation(score_nda) + keep_best_nda = operations.KeepBestN(1, True) + keep_best_nda.add_predecessor(score_nda) + operations_graph.add_operation(keep_best_nda) + + sub_parts.append(keep_best_nda) + + while len(sub_parts) > 1: + new_sub_parts = [] + for i in range(0, len(sub_parts), 2): + if i + 1 == len(sub_parts): + new_sub_parts.append(sub_parts[i]) + continue + aggregate = operations.Aggregate(5) + aggregate.add_predecessor(sub_parts[i]) + aggregate.add_predecessor(sub_parts[i + 1]) + operations_graph.add_operation(aggregate) + score = operations.Score(3, False) + score.add_predecessor(aggregate) + operations_graph.add_operation(score) + keep_best = operations.KeepBestN(1, True) + keep_best.add_predecessor(score) + operations_graph.add_operation(keep_best) + + gen_nda = operations.Generate(1, 5) + gen_nda.add_predecessor(keep_best) + operations_graph.add_operation(gen_nda) + score_nda = operations.Score(3, False) + score_nda.add_predecessor(gen_nda) + operations_graph.add_operation(score_nda) + keep_best_nda = operations.KeepBestN(1, True) + keep_best_nda.add_predecessor(score_nda) + keep_best_nda.add_predecessor(keep_best) + operations_graph.add_operation(keep_best_nda) + + new_sub_parts.append(keep_best_nda) + sub_parts = new_sub_parts + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "documents.csv") + data = [] + with open(path, "r", encoding="utf8") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + row[0] = int(row[0]) + data.append(row) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + DocMergePrompter(), + DocMergeParser(), + { + "documents": [data[2], data[3], data[4], data[5]], + "parts": set(), + "current": "", + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + for operation in operations_graph.operations: + for thought in operation.thoughts: + thought.state["parts"] = list(thought.state["parts"]) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input (x1, x2, x3, x4): Four NDAs + Output (y): A new combined NDA + Evaluation: According to information coverage without repetition (scored by the LLM) + """ + budget = 30 + samples = [item for item in range(0, 50)] + approaches = [io, cot, tot, got, got2] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/doc_merge/documents.csv b/examples/doc_merge/documents.csv new file mode 100644 index 0000000..e3257b7 --- /dev/null +++ b/examples/doc_merge/documents.csv @@ -0,0 +1,10195 @@ +id,problem,document1,document2,document3,document4 +0,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +1. Agreement between [Your Company Name] and [Recipient Name] on [Date]. +2. Information sharing for the purpose of [specific project or purpose]. +3. ""Confidential Information"" includes all potentially commercially valuable information, specifically software development tactics, processes, and in-house research results. +4. Receiving party is obligated to protect the Confidential Information, use it solely for the disclosed purpose, and not disclose it without consent. +5. Breach penalties include injunctive relief, other remedies, and a $200,000 fee per breach. +6. The Agreement applies to the Parties and their successors and assigns. It contains all related agreements and lack of enforcement doesn't imply waiver. +7. The Agreement is under the laws of [State]. +8. Signed by [Your Company Name] and [Recipient Name] at the above date.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective from [Effective Date], this NDA involves [Your Company Name] (""Disclosing Party""), and [Recipient Name] (""Receiving Party""). + +1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose]. + +2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party. + +3. Receiving Party's Obligations: + a. Use, reproduce, or distribute the confidential information only for the agreed purpose. + b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality. + c. Return or destroy all confidential information upon request or at the end of the agreement. + +4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party. + +5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination. + +6. Term and Termination: The agreement is valid for [e.g., ""two years""], unless terminated earlier with [e.g., ""30 days""] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination. + +7. General Provisions: + a. Governing Law: [Your State]'s laws apply. + b. Amendments: Only valid if written and signed by both parties. + c. Entire Agreement: This contract overrules previous related agreements. + +Signed as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.","CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT + + Entities Involved: + Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity. + + Objective: + To safeguard classified data during talks of a potential technological alliance. + + Specification of Protected Information: + Particularly: + +a. System designs and architectural schematics. +b. Proprietary computational algorithms. + + Receiver's Obligations: + a. Maintain strict non-disclosure using best practices. + b. Employ solely for the aforementioned aim. + c. No unveiling without explicit authorization. + + Violation Ramifications: + A charge of $280,000 for every infringement, plus possible legal proceedings. + + General Terms: + Binding for both parties and any successors. This encapsulates the entire accord. + + Legal Reference: + Governed as per [State]'s legal framework. + + Attestation: + Duly signed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","SECRECY & DISCLOSURE AGREEMENT + + Contracting Parties: + Dated [Date], drawn between [AquaBlue Innovations], a [State]-based corporation, and [PineTree Solutions], a licensed organization. + + Aim: + To protect exclusive insights amidst dialogues for a technological partnership. + + Categorization of Sensitive Data: + Includes: + +a. Internal software blueprints. +b. Intellectual property awaiting patents. + + Commitments of Recipient: + a. Uphold confidentiality, ensuring data integrity. + b. Utilize strictly for collaborative ventures. + c. No exposure without prior consensus. + + Repercussions for Non-Compliance: + $295,000 fine for each transgression, and the option for legal recourse. + + Overall Provisions: + Legally enforceable for signatories and successors. Complete and sole agreement. + + Juridical Standpoint: + Under the auspices of [State] laws. + + Ratification: + Confirmed and endorsed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]" +1,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Effective from [Effective Date], this NDA involves [Your Company Name] (""Disclosing Party""), and [Recipient Name] (""Receiving Party""). + +1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose]. + +2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party. + +3. Receiving Party's Obligations: + a. Use, reproduce, or distribute the confidential information only for the agreed purpose. + b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality. + c. Return or destroy all confidential information upon request or at the end of the agreement. + +4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party. + +5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination. + +6. Term and Termination: The agreement is valid for [e.g., ""two years""], unless terminated earlier with [e.g., ""30 days""] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination. + +7. General Provisions: + a. Governing Law: [Your State]'s laws apply. + b. Amendments: Only valid if written and signed by both parties. + c. Entire Agreement: This contract overrules previous related agreements. + +Signed as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.","This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]" +2,Merging four documents with complementary information,"CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT + + Entities Involved: + Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity. + + Objective: + To safeguard classified data during talks of a potential technological alliance. + + Specification of Protected Information: + Particularly: + +a. System designs and architectural schematics. +b. Proprietary computational algorithms. + + Receiver's Obligations: + a. Maintain strict non-disclosure using best practices. + b. Employ solely for the aforementioned aim. + c. No unveiling without explicit authorization. + + Violation Ramifications: + A charge of $280,000 for every infringement, plus possible legal proceedings. + + General Terms: + Binding for both parties and any successors. This encapsulates the entire accord. + + Legal Reference: + Governed as per [State]'s legal framework. + + Attestation: + Duly signed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________" +3,Merging four documents with complementary information,"SECRECY & DISCLOSURE AGREEMENT + + Contracting Parties: + Dated [Date], drawn between [AquaBlue Innovations], a [State]-based corporation, and [PineTree Solutions], a licensed organization. + + Aim: + To protect exclusive insights amidst dialogues for a technological partnership. + + Categorization of Sensitive Data: + Includes: + +a. Internal software blueprints. +b. Intellectual property awaiting patents. + + Commitments of Recipient: + a. Uphold confidentiality, ensuring data integrity. + b. Utilize strictly for collaborative ventures. + c. No exposure without prior consensus. + + Repercussions for Non-Compliance: + $295,000 fine for each transgression, and the option for legal recourse. + + Overall Provisions: + Legally enforceable for signatories and successors. Complete and sole agreement. + + Juridical Standpoint: + Under the auspices of [State] laws. + + Ratification: + Confirmed and endorsed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state]." +4,Merging four documents with complementary information,"This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written." +5,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]" +6,Merging four documents with complementary information,"EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]" +7,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above." +8,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms." +9,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes." +10,Merging four documents with complementary information,"The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written." +11,Merging four documents with complementary information,"NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties." +12,Merging four documents with complementary information,"DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties." +13,Merging four documents with complementary information,"DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms." +14,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement." +15,Merging four documents with complementary information,"UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""]." +16,Merging four documents with complementary information,"SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement." +17,Merging four documents with complementary information,"LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement." +18,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment." +19,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment." +20,Merging four documents with complementary information,"This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""]." +21,Merging four documents with complementary information,"BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions." +22,Merging four documents with complementary information,"CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract." +23,Merging four documents with complementary information,"LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract." +24,Merging four documents with complementary information,"NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written." +25,Merging four documents with complementary information,"AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties." +26,Merging four documents with complementary information,"AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written." +27,Merging four documents with complementary information,"AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""]." +28,Merging four documents with complementary information,"This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement." +29,Merging four documents with complementary information,"APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +30,Merging four documents with complementary information,"APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +31,Merging four documents with complementary information,"AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +32,Merging four documents with complementary information,"BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +33,Merging four documents with complementary information,"APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws." +34,Merging four documents with complementary information,"APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +35,Merging four documents with complementary information,"APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +36,Merging four documents with complementary information,"APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws." +37,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties." +38,Merging four documents with complementary information,"APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties.","CONFIDENTIALITY AMENDMENT TO NDA + +This Amendment, effective [Date, e.g., ""August 15, 2023""], modifies the NDA dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Responsibilities: + +a) Protection: Parties must safeguard Confidential Information at least as they do their own. + +b) Access: Access is limited to those needing it who are also bound by confidentiality. + +c) Breach Notification: Parties must immediately inform the other of any breaches. + +d) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information. + +e) No Reverse Engineering: Receiving party shall not reverse engineer any provided items. + +2. Remedies: +Unauthorized disclosures permit injunctive relief and other legal remedies. + +3. Original Agreement: +Except for this Amendment, the NDA remains unchanged. + +Governing Law: +As per the NDA." +39,Merging four documents with complementary information,"CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","CONFIDENTIALITY AMENDMENT TO NDA + +This Amendment, effective [Date, e.g., ""August 15, 2023""], modifies the NDA dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Responsibilities: + +a) Protection: Parties must safeguard Confidential Information at least as they do their own. + +b) Access: Access is limited to those needing it who are also bound by confidentiality. + +c) Breach Notification: Parties must immediately inform the other of any breaches. + +d) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information. + +e) No Reverse Engineering: Receiving party shall not reverse engineer any provided items. + +2. Remedies: +Unauthorized disclosures permit injunctive relief and other legal remedies. + +3. Original Agreement: +Except for this Amendment, the NDA remains unchanged. + +Governing Law: +As per the NDA.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings." +40,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +41,Merging four documents with complementary information,"This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","CONFIDENTIALITY AMENDMENT TO NDA + +This Amendment, effective [Date, e.g., ""August 15, 2023""], modifies the NDA dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Responsibilities: + +a) Protection: Parties must safeguard Confidential Information at least as they do their own. + +b) Access: Access is limited to those needing it who are also bound by confidentiality. + +c) Breach Notification: Parties must immediately inform the other of any breaches. + +d) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information. + +e) No Reverse Engineering: Receiving party shall not reverse engineer any provided items. + +2. Remedies: +Unauthorized disclosures permit injunctive relief and other legal remedies. + +3. Original Agreement: +Except for this Amendment, the NDA remains unchanged. + +Governing Law: +As per the NDA." +42,Merging four documents with complementary information,"BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +43,Merging four documents with complementary information,"CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings." +44,Merging four documents with complementary information,"LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws." +45,Merging four documents with complementary information,"NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings." +46,Merging four documents with complementary information,"AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""].","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +47,Merging four documents with complementary information,"AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings." +48,Merging four documents with complementary information,"AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","CONFIDENTIALITY AMENDMENT TO NDA + +This Amendment, effective [Date, e.g., ""August 15, 2023""], modifies the NDA dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Responsibilities: + +a) Protection: Parties must safeguard Confidential Information at least as they do their own. + +b) Access: Access is limited to those needing it who are also bound by confidentiality. + +c) Breach Notification: Parties must immediately inform the other of any breaches. + +d) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information. + +e) No Reverse Engineering: Receiving party shall not reverse engineer any provided items. + +2. Remedies: +Unauthorized disclosures permit injunctive relief and other legal remedies. + +3. Original Agreement: +Except for this Amendment, the NDA remains unchanged. + +Governing Law: +As per the NDA.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""]." +49,Merging four documents with complementary information,"This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""]." +50,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written." +51,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment." +52,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract." +53,Merging four documents with complementary information,"The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""]." +54,Merging four documents with complementary information,"NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties." +55,Merging four documents with complementary information,"DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written." +56,Merging four documents with complementary information,"DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement." +57,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +58,Merging four documents with complementary information,"UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws." +59,Merging four documents with complementary information,"SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""]." +60,Merging four documents with complementary information,"LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +61,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties." +62,Merging four documents with complementary information,"APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties.","BUSINESS CONSULTING CONTRACT + +This Consulting Contract (""Contract"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Client Name], with its principal office at [Client Address] (""Client""), + [Consultant Name], with its principal office at [Consultant Address] (""Consultant""). + +Purpose: +The Consultant will provide professional consulting services to the Client as described below. + +1. Scope of Services: +Consultant agrees to offer services including, but not limited to: +a) Business strategy development +b) Market analysis +c) [Other services as needed] +Any additional services will require an amendment to this Contract. + +2. Compensation: +For services rendered, the Client shall pay the Consultant [e.g., ""$100""] per hour. Invoices will be issued [e.g., ""monthly""] and are due within [e.g., ""30 days""] of receipt. + +3. Duration: +This Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier. + +4. Termination: +Either party can terminate this Contract with [e.g., ""30 days""] written notice. In case of termination, the Client will pay for services rendered up to the notice date. + +5. Confidentiality: +The Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose. + +6. Non-compete: +For [e.g., ""six months""] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., ""50 miles""] of the Client's primary location. + +7. Independent Contractor: +The Consultant is an independent contractor and not an employee of the Client. + +8. Governing Law: +This Contract shall be governed by and interpreted under the laws of [State/Country, e.g., ""California""]. + +9. Entire Agreement: +This Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements." +63,Merging four documents with complementary information,"APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings.","BUSINESS CONSULTING CONTRACT + +This Consulting Contract (""Contract"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Client Name], with its principal office at [Client Address] (""Client""), + [Consultant Name], with its principal office at [Consultant Address] (""Consultant""). + +Purpose: +The Consultant will provide professional consulting services to the Client as described below. + +1. Scope of Services: +Consultant agrees to offer services including, but not limited to: +a) Business strategy development +b) Market analysis +c) [Other services as needed] +Any additional services will require an amendment to this Contract. + +2. Compensation: +For services rendered, the Client shall pay the Consultant [e.g., ""$100""] per hour. Invoices will be issued [e.g., ""monthly""] and are due within [e.g., ""30 days""] of receipt. + +3. Duration: +This Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier. + +4. Termination: +Either party can terminate this Contract with [e.g., ""30 days""] written notice. In case of termination, the Client will pay for services rendered up to the notice date. + +5. Confidentiality: +The Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose. + +6. Non-compete: +For [e.g., ""six months""] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., ""50 miles""] of the Client's primary location. + +7. Independent Contractor: +The Consultant is an independent contractor and not an employee of the Client. + +8. Governing Law: +This Contract shall be governed by and interpreted under the laws of [State/Country, e.g., ""California""]. + +9. Entire Agreement: +This Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""]." +64,Merging four documents with complementary information,"APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","CONFIDENTIALITY AMENDMENT TO NDA + +This Amendment, effective [Date, e.g., ""August 15, 2023""], modifies the NDA dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Responsibilities: + +a) Protection: Parties must safeguard Confidential Information at least as they do their own. + +b) Access: Access is limited to those needing it who are also bound by confidentiality. + +c) Breach Notification: Parties must immediately inform the other of any breaches. + +d) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information. + +e) No Reverse Engineering: Receiving party shall not reverse engineer any provided items. + +2. Remedies: +Unauthorized disclosures permit injunctive relief and other legal remedies. + +3. Original Agreement: +Except for this Amendment, the NDA remains unchanged. + +Governing Law: +As per the NDA.","BUSINESS CONSULTING CONTRACT + +This Consulting Contract (""Contract"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Client Name], with its principal office at [Client Address] (""Client""), + [Consultant Name], with its principal office at [Consultant Address] (""Consultant""). + +Purpose: +The Consultant will provide professional consulting services to the Client as described below. + +1. Scope of Services: +Consultant agrees to offer services including, but not limited to: +a) Business strategy development +b) Market analysis +c) [Other services as needed] +Any additional services will require an amendment to this Contract. + +2. Compensation: +For services rendered, the Client shall pay the Consultant [e.g., ""$100""] per hour. Invoices will be issued [e.g., ""monthly""] and are due within [e.g., ""30 days""] of receipt. + +3. Duration: +This Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier. + +4. Termination: +Either party can terminate this Contract with [e.g., ""30 days""] written notice. In case of termination, the Client will pay for services rendered up to the notice date. + +5. Confidentiality: +The Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose. + +6. Non-compete: +For [e.g., ""six months""] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., ""50 miles""] of the Client's primary location. + +7. Independent Contractor: +The Consultant is an independent contractor and not an employee of the Client. + +8. Governing Law: +This Contract shall be governed by and interpreted under the laws of [State/Country, e.g., ""California""]. + +9. Entire Agreement: +This Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements.","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +65,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +1. Agreement between [Your Company Name] and [Recipient Name] on [Date]. +2. Information sharing for the purpose of [specific project or purpose]. +3. ""Confidential Information"" includes all potentially commercially valuable information, specifically software development tactics, processes, and in-house research results. +4. Receiving party is obligated to protect the Confidential Information, use it solely for the disclosed purpose, and not disclose it without consent. +5. Breach penalties include injunctive relief, other remedies, and a $200,000 fee per breach. +6. The Agreement applies to the Parties and their successors and assigns. It contains all related agreements and lack of enforcement doesn't imply waiver. +7. The Agreement is under the laws of [State]. +8. Signed by [Your Company Name] and [Recipient Name] at the above date.","This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties." +66,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Effective from [Effective Date], this NDA involves [Your Company Name] (""Disclosing Party""), and [Recipient Name] (""Receiving Party""). + +1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose]. + +2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party. + +3. Receiving Party's Obligations: + a. Use, reproduce, or distribute the confidential information only for the agreed purpose. + b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality. + c. Return or destroy all confidential information upon request or at the end of the agreement. + +4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party. + +5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination. + +6. Term and Termination: The agreement is valid for [e.g., ""two years""], unless terminated earlier with [e.g., ""30 days""] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination. + +7. General Provisions: + a. Governing Law: [Your State]'s laws apply. + b. Amendments: Only valid if written and signed by both parties. + c. Entire Agreement: This contract overrules previous related agreements. + +Signed as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.","This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms." +67,Merging four documents with complementary information,"CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT + + Entities Involved: + Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity. + + Objective: + To safeguard classified data during talks of a potential technological alliance. + + Specification of Protected Information: + Particularly: + +a. System designs and architectural schematics. +b. Proprietary computational algorithms. + + Receiver's Obligations: + a. Maintain strict non-disclosure using best practices. + b. Employ solely for the aforementioned aim. + c. No unveiling without explicit authorization. + + Violation Ramifications: + A charge of $280,000 for every infringement, plus possible legal proceedings. + + General Terms: + Binding for both parties and any successors. This encapsulates the entire accord. + + Legal Reference: + Governed as per [State]'s legal framework. + + Attestation: + Duly signed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written." +68,Merging four documents with complementary information,"SECRECY & DISCLOSURE AGREEMENT + + Contracting Parties: + Dated [Date], drawn between [AquaBlue Innovations], a [State]-based corporation, and [PineTree Solutions], a licensed organization. + + Aim: + To protect exclusive insights amidst dialogues for a technological partnership. + + Categorization of Sensitive Data: + Includes: + +a. Internal software blueprints. +b. Intellectual property awaiting patents. + + Commitments of Recipient: + a. Uphold confidentiality, ensuring data integrity. + b. Utilize strictly for collaborative ventures. + c. No exposure without prior consensus. + + Repercussions for Non-Compliance: + $295,000 fine for each transgression, and the option for legal recourse. + + Overall Provisions: + Legally enforceable for signatories and successors. Complete and sole agreement. + + Juridical Standpoint: + Under the auspices of [State] laws. + + Ratification: + Confirmed and endorsed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above." +69,Merging four documents with complementary information,"This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""]." +70,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""]." +71,Merging four documents with complementary information,"EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties." +72,Merging four documents with complementary information,"APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","APPENDIX: BREACH CONSEQUENCES + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Notification: +Suspected breaches must be reported in writing by the non-breaching party. + +2. Rectification: +The breaching party has [e.g., ""14 days""] from notification to rectify, unless irreparable. + +3. Fees: +Breaches incur a penalty of [e.g., ""$10,000""], aside from claimed damages. + +4. Legal Actions: +Unresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees. + +5. Termination: +Repeated or severe breaches can cause Agreement termination by the non-breaching party. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings.","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +73,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +1. Agreement between [Your Company Name] and [Recipient Name] on [Date]. +2. Information sharing for the purpose of [specific project or purpose]. +3. ""Confidential Information"" includes all potentially commercially valuable information, specifically software development tactics, processes, and in-house research results. +4. Receiving party is obligated to protect the Confidential Information, use it solely for the disclosed purpose, and not disclose it without consent. +5. Breach penalties include injunctive relief, other remedies, and a $200,000 fee per breach. +6. The Agreement applies to the Parties and their successors and assigns. It contains all related agreements and lack of enforcement doesn't imply waiver. +7. The Agreement is under the laws of [State]. +8. Signed by [Your Company Name] and [Recipient Name] at the above date.","This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement." +74,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Effective from [Effective Date], this NDA involves [Your Company Name] (""Disclosing Party""), and [Recipient Name] (""Receiving Party""). + +1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose]. + +2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party. + +3. Receiving Party's Obligations: + a. Use, reproduce, or distribute the confidential information only for the agreed purpose. + b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality. + c. Return or destroy all confidential information upon request or at the end of the agreement. + +4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party. + +5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination. + +6. Term and Termination: The agreement is valid for [e.g., ""two years""], unless terminated earlier with [e.g., ""30 days""] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination. + +7. General Provisions: + a. Governing Law: [Your State]'s laws apply. + b. Amendments: Only valid if written and signed by both parties. + c. Entire Agreement: This contract overrules previous related agreements. + +Signed as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""]." +75,Merging four documents with complementary information,"CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT + + Entities Involved: + Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity. + + Objective: + To safeguard classified data during talks of a potential technological alliance. + + Specification of Protected Information: + Particularly: + +a. System designs and architectural schematics. +b. Proprietary computational algorithms. + + Receiver's Obligations: + a. Maintain strict non-disclosure using best practices. + b. Employ solely for the aforementioned aim. + c. No unveiling without explicit authorization. + + Violation Ramifications: + A charge of $280,000 for every infringement, plus possible legal proceedings. + + General Terms: + Binding for both parties and any successors. This encapsulates the entire accord. + + Legal Reference: + Governed as per [State]'s legal framework. + + Attestation: + Duly signed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties." +76,Merging four documents with complementary information,"SECRECY & DISCLOSURE AGREEMENT + + Contracting Parties: + Dated [Date], drawn between [AquaBlue Innovations], a [State]-based corporation, and [PineTree Solutions], a licensed organization. + + Aim: + To protect exclusive insights amidst dialogues for a technological partnership. + + Categorization of Sensitive Data: + Includes: + +a. Internal software blueprints. +b. Intellectual property awaiting patents. + + Commitments of Recipient: + a. Uphold confidentiality, ensuring data integrity. + b. Utilize strictly for collaborative ventures. + c. No exposure without prior consensus. + + Repercussions for Non-Compliance: + $295,000 fine for each transgression, and the option for legal recourse. + + Overall Provisions: + Legally enforceable for signatories and successors. Complete and sole agreement. + + Juridical Standpoint: + Under the auspices of [State] laws. + + Ratification: + Confirmed and endorsed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement." +77,Merging four documents with complementary information,"This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company]. + +1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship. + +2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations. + +3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year. + +4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof. + +5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies. + +6. Governing Law: The Agreement is governed by the laws of [Your State]. + +7. Entire Agreement: This document replaces all previous agreements and understandings on the subject. + +Both parties acknowledge understanding and voluntarily accepting the Agreement. + +Signatures required from [Your Company Name] and [Contractor Name/Company].","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +78,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written." +79,Merging four documents with complementary information,"EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties." +80,Merging four documents with complementary information,"This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., ""12""] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., ""California""] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Tech Company Name], located at [Tech Company Address], (""Company"") and [Contractor's Full Name], located at [Contractor Address], (""Contractor""). + +Purpose: +Contractor will access Company's confidential information during their engagement. + +1. Definition: +""Confidential Information"" means proprietary data related to the Company’s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds. + +2. Obligation: +Contractor shall: + + Use Confidential Information solely for engagement purposes. + Prevent unauthorized disclosure. + +3. Duration: +Obligations persist for [e.g., ""two years""] from disclosure date. + +4. Return: +Contractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies. + +5. Remedies: +Breach may result in legal actions, damages, and costs. + +6. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +81,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company. + +2. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +3. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +4. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property and data. + +5. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +6. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +7. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory +Date: _______________________ Date: _______________________","SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +82,Merging four documents with complementary information,"B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT + +This Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows: + +Section [Specific Section Number, e.g., ""2""] - Length of Engagement + +The period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date]. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +83,Merging four documents with complementary information,"The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].","FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +84,Merging four documents with complementary information,"NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","APPENDIX B – CHANGE IN TIME OF DELIVERY + +This Appendix is an addendum to the contract (the ""Contract"") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party"". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract. + + Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., ""September 15, 2023""]. + + Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., ""October 10, 2023""]. + + Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., ""Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.""] + + Consequences of Delay: Unless otherwise stated in the main body of the Contract: + + a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date. + + b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix. + + Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time. + + Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays. + +This Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +85,Merging four documents with complementary information,"DATA ANALYSIS EMPLOYEE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Employee Name], an individual residing at [Employee Address], herein referred to as the ""Employee."" + + Position and Duties: + a. The Company hereby employs Employee in the capacity of Data Analyst. + b. The Employee's primary duties will be to [specific data analysis tasks, e.g., ""analyze sales data, forecast trends, and produce reports for managerial review""]. + + Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company. + + Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Employee agrees to return all company property and data. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written. + +[Company Name or Authorized [Employee Name] +Representative Name, Title]","This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws." +86,Merging four documents with complementary information,"DATA ANALYSIS SERVICE AGREEMENT + +This Agreement (""Agreement"") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., ""corporation""] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the ""Company,"" and [Contractor Business Name], a [legal structure, e.g., ""limited liability company""] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the ""Contractor."" + + Scope of Work: + a. The Contractor agrees to provide data analysis services to the Company. + b. The specific services will include [specific data analysis tasks, e.g., ""analyzing sales data, forecasting trends, and producing reports for managerial review""]. + + Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date]. + + Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., ""$5,000""] payable on [payment schedule, e.g., ""a monthly basis""]. + + Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services. + + Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company. + + Termination: Either party may terminate this Agreement with [e.g., ""30""] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials. + + Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country]. + + Amendments: This Agreement may only be amended in writing and signed by both parties. + + Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties. + +The parties hereto have executed this Agreement as of the date first above written.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","APPENDIX: LOYALTY CLAUSE + +Effective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Loyalty Commitment: +For one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement. + +2. Consequences: +Breaches may result in Agreement termination and legal action as per the original terms. + +3. Governing Law: +Governed by the laws of [State/Country, e.g., ""California""].","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties." +87,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Date: [Insert Date] + +Parties: [University Name], [University Address] (""Disclosing Party"") and [Researcher's Full Name], [Researcher's Address] (""Receiving Party""). + +1. Purpose: For the research of [Briefly Describe the Research or Project]. + +2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material. + +3. Obligations: +a. Confidential Information must remain secret. +b. It's for the specified purpose only. +c. No third-party disclosure without consent. + +4. Exceptions: Public knowledge, third-party shared info, or independently developed. + +5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure. + +6. Return: All Confidential Information must be returned or destroyed upon request. + +7. No Transfer: This doesn't grant property rights or licenses. + +8. Law: Governed by [State/Country] laws. + +9. Amendments: Only in writing and signed. + +Agreement: By signing, parties agree to the terms.","NON-COMPETE AND LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement. + +2. NON-COMPETE: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 24 months following its termination""], neither party shall: + +a. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., ""the State of California""]. +b. Invest in, partner with, or advise any business entity that competes directly with the other party. + +3. LOYALTY AND NON-POACHING: + +Both parties pledge their commitment to a loyal business relationship. Specifically: + +a. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business. +b. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees. + +4. CONFIDENTIALITY: + +Both parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information. + +5. BREACH AND REMEDIES: + +A violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., ""the State of California""]. + +6. GOVERNING LAW: + +This Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties. + +ACKNOWLEDGEMENT: + +By signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws." +88,Merging four documents with complementary information,"UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is part of the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name] (""Company"") and [Contractor Name] (""Contractor""). + +1. Confidential Information: +Both parties may access or receive the other's confidential information (""Confidential Information"") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations. + +2. Obligations: +The recipient shall: + + Use the Confidential Information solely for the Agreement's purpose. + Prevent unauthorized disclosures. + Not disclose without prior written consent. + +3. Duration: +Obligations persist for [e.g., ""two years""] post Agreement termination or expiration. + +4. Return/Destruction: +Upon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","BUSINESS CONSULTING CONTRACT + +This Consulting Contract (""Contract"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Client Name], with its principal office at [Client Address] (""Client""), + [Consultant Name], with its principal office at [Consultant Address] (""Consultant""). + +Purpose: +The Consultant will provide professional consulting services to the Client as described below. + +1. Scope of Services: +Consultant agrees to offer services including, but not limited to: +a) Business strategy development +b) Market analysis +c) [Other services as needed] +Any additional services will require an amendment to this Contract. + +2. Compensation: +For services rendered, the Client shall pay the Consultant [e.g., ""$100""] per hour. Invoices will be issued [e.g., ""monthly""] and are due within [e.g., ""30 days""] of receipt. + +3. Duration: +This Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier. + +4. Termination: +Either party can terminate this Contract with [e.g., ""30 days""] written notice. In case of termination, the Client will pay for services rendered up to the notice date. + +5. Confidentiality: +The Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose. + +6. Non-compete: +For [e.g., ""six months""] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., ""50 miles""] of the Client's primary location. + +7. Independent Contractor: +The Consultant is an independent contractor and not an employee of the Client. + +8. Governing Law: +This Contract shall be governed by and interpreted under the laws of [State/Country, e.g., ""California""]. + +9. Entire Agreement: +This Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements." +89,Merging four documents with complementary information,"SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY + +This Supply Agreement (the ""Agreement""), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., ""corporation""] having its principal office at [Supplier Address], hereinafter referred to as the ""Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., ""Department of Chemistry""], hereinafter referred to as the ""University"". + +1. Purpose: + +The Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory. + +2. Terms of Supply: + +a. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith. + +b. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe]. + +c. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified. + +3. Payment Terms: + +Payments will be made by the University within [e.g., ""30 days""] of receiving the invoice from the Supplier. + +4. Warranty: + +The Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., ""12 months""] from the date of delivery. + +5. No Disclosure Clause: + +a. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent. + +b. This clause remains effective for a period of [e.g., ""5 years""] from the date of the last delivery of the goods under this Agreement. + +6. Termination: + +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period. + +7. Governing Law: + +This Agreement shall be governed by and interpreted in accordance with the laws of [State/Country]. + +8. Amendments: + +Modifications to this Agreement must be in writing and signed by both parties. + +IN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.","AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY + +This Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +AMENDMENT: + +The parties hereby agree to amend the Agreement as follows: + +Section [Specific Section Number, e.g., ""3""] - Fees for Late Delivery + +a. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., ""$100"" or ""5% of the total contract value""] shall be applied for each [time period, e.g., ""day""] of delay. + +b. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., ""$1,000"" or ""20% of the total contract value""]. + +c. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party. + +GENERAL PROVISIONS: + + Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect. + This Amendment, together with the original Agreement, represents the entire understanding between the parties. + +ACKNOWLEDGEMENT: + +Both parties, by their signatures below, indicate their acceptance and approval of this Amendment.","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement." +90,Merging four documents with complementary information,"LABORATORY SUPPLY AGREEMENT + +Date: [Insert Date] + +Parties: + + Supplier: [Supplier Name], [Supplier Address] + University: [University Name], [University Address] + +1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory. + +2. Delivery: Within [specific timeframe, e.g., ""30 days""] to [specific lab address]. + +3. Payment: University will pay within [e.g., ""30 days""] of invoice receipt. + +4. Warranty: Goods are defect-free for [e.g., ""12 months""] from delivery. + +5. Non-disclosure: University will not disclose Supplier’s proprietary details for [e.g., ""5 years""]. Breach will result in a penalty of [specific amount or formula, e.g., ""$5,000 per incident or actual damages, whichever is greater""]. + +6. Termination: [e.g., ""30 days""] notice for breaches unresolved within said period. + +7. Law: Governed by [State/Country] laws. + +8. Amendments: Both parties must sign written changes.","This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. + +Milestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. + +Milestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. + +Each milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +91,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +5. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +6. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +7. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +8. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","APPENDIX: EXTENSION OF CONTRACT DURATION + +This Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., ""August 15, 2021""], between [Party A Name], located at [Party A Address] (""Party A"") and [Party B Name], located at [Party B Address] (""Party B""). + +1. Duration Extension: +The duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., ""August 15, 2025""]. + +2. All Other Terms Remain Unchanged: +Except for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","BUSINESS CONSULTING CONTRACT + +This Consulting Contract (""Contract"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Client Name], with its principal office at [Client Address] (""Client""), + [Consultant Name], with its principal office at [Consultant Address] (""Consultant""). + +Purpose: +The Consultant will provide professional consulting services to the Client as described below. + +1. Scope of Services: +Consultant agrees to offer services including, but not limited to: +a) Business strategy development +b) Market analysis +c) [Other services as needed] +Any additional services will require an amendment to this Contract. + +2. Compensation: +For services rendered, the Client shall pay the Consultant [e.g., ""$100""] per hour. Invoices will be issued [e.g., ""monthly""] and are due within [e.g., ""30 days""] of receipt. + +3. Duration: +This Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier. + +4. Termination: +Either party can terminate this Contract with [e.g., ""30 days""] written notice. In case of termination, the Client will pay for services rendered up to the notice date. + +5. Confidentiality: +The Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose. + +6. Non-compete: +For [e.g., ""six months""] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., ""50 miles""] of the Client's primary location. + +7. Independent Contractor: +The Consultant is an independent contractor and not an employee of the Client. + +8. Governing Law: +This Contract shall be governed by and interpreted under the laws of [State/Country, e.g., ""California""]. + +9. Entire Agreement: +This Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements." +92,Merging four documents with complementary information,"FREELANCER AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Client: [Client Full Name or Company Name], located at [Client Address]. + Freelancer: [Freelancer Full Name], located at [Freelancer Address]. + +1. SERVICES: + +Freelancer agrees to provide the following services: [Brief description of services, e.g., ""web design, content creation, graphic design""]. + +2. PAYMENT TERMS: + +For the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., ""$1,000""]. Payments shall be made as follows: [Payment structure, e.g., ""50% upfront, 50% upon completion""]. + +3. DEADLINE: + +The services will be completed by [End Date, e.g., ""December 31, 2023""]. + +4. PENALTIES: + +a. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., ""$50""] per day will be deducted from the final payment until the service is delivered. + +b. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., ""$2,000""]. + +5. CONFIDENTIALITY: + +Freelancer agrees to maintain confidentiality regarding all proprietary information of the Client. + +6. TERMINATION: + +Either party may terminate this agreement with [X days, e.g., ""14 days""] written notice. Upon termination, payments will be adjusted for work completed. + +7. INDEPENDENT CONTRACTOR: + +Freelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement. + +8. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +9. AMENDMENTS: + +Any changes to this agreement must be in writing and signed by both parties.","AMENDMENT TO CONTRACT + +This Amendment (the ""Amendment"") is entered into on [Date], between [Party One Name], hereinafter referred to as the ""First Party', and [Party Two Name], hereinafter referred to as the ""Second Party'', collectively referred to as the ""Parties"". + +WHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the ""Original Contract', for [Brief Description of the Original Contract, e.g., ""provision of IT services to First Party""]; + +WHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems; + +NOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows: + + Additional Responsibility: + + The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to: + + a. Regular monitoring of the IT systems for any anomalies or issues. + + b. Prompt troubleshooting and rectification of any issues identified. + + c. Routine updates and patches to ensure the systems are secure and up-to-date. + + d. Any other related tasks as deemed necessary by the First Party. + + Compensation: + + As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., ""$XXX per month""]. All other payment terms as outlined in the Original Contract shall remain unchanged. + + Duration and Termination: + + The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties. + + Miscellaneous: + + All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail. + + Entire Agreement: + + This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment. + + Governing Law: + + This Amendment shall be governed by the laws of [Jurisdiction, e.g., ""State of New York""].","NON-DISCLOSURE AGREEMENT (NDA) + +Effective [Date, e.g., ""August 15, 2023""], between [Client Name], (""Client"") and [Business Name], (""Business""). + +Purpose: +Protection of confidential information exchanged due to potential collaboration. + +1. Confidentiality: +Business agrees to keep secret all Confidential Information shared by Client. + +2. Definition: +""Confidential Information"" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints. + +3. Duration: +Obligations last [e.g., ""two years""] from the date of disclosure. + +4. Return/Destruction: +Upon Client's request, Business will return or destroy all Confidential Information. + +5. Remedies: +Unauthorized disclosures may lead to legal action by Client, including damages. + +6. Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +93,Merging four documents with complementary information,"This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.","APPENDIX: TERMS OF CONTRACT TERMINATION + +Related to the Agreement on [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Termination for Breach: +If either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party. + +2. Termination by Notice: +Either party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice. + +3. Obligations Upon Termination: +Upon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.). + +4. Governing Law: +This Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES + +This Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name]. + +1. Breach Fees: +If a party breaches confidentiality: + +a) Immediate penalty: [e.g., ""$50,000""]. + +b) For reputational harm or business loss: Additional [e.g., ""$100,000""]. + +c) Full reimbursement for direct financial losses caused by the breach. + +d) All associated legal and remedy costs borne by the breaching party. + +2. Remedial Actions: +The breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information. + +3. Payment: +Due within [e.g., ""15 days""] of breach notification. + +4. Termination: +Non-breaching party can immediately terminate the main contract upon a breach. + +5. Governing Law: +This Appendix adheres to [State/Country, e.g., ""California""] laws." +94,Merging four documents with complementary information,"BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract.","CONFIDENTIALITY AGREEMENT + +Effective [Effective Date, e.g., ""August 15, 2023""], between [Company Name], located at [Company Address] (""Company""), and [Supplier Name], located at [Supplier Address] (""Supplier""). + +1. Definition: +""Confidential Information"" means proprietary data of the Company, excluding: + + Pre-disclosed or publicly known data. + Info from third parties without confidentiality bounds. + +2. Obligations: +Supplier will: + + Use Confidential Information solely for business purposes with the Company. + Protect its secrecy and prevent unauthorized disclosure. + Return or destroy all Confidential Information upon request or business completion. + +3. Duration: +Obligations last for [e.g., ""two years""] from disclosure date. + +4. Remedies: +Breaches may result in legal actions, damages, and costs by the Company. + +5. Governing Law: +Governed by [State/Country, e.g., ""California""] laws.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""]." +95,Merging four documents with complementary information,"CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","APPENDIX TO BUSINESS COOPERATION AGREEMENT + +EXTENSION OF CONFIDENTIALITY CONDITIONS + +This Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (""Original Agreement"") between [Business A Name], located at [Business A Address] (""Business A"") and [Business B Name], located at [Business B Address] (""Business B""). + +1. Extension of Confidentiality Period: +The confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date]. + +2. Continued Obligations: +All other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect. + +3. Entire Agreement: +This Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein. + +4. Governing Law: +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""]. + +IN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.","APPENDIX: OBLIGATIONS UPON TERMINATION + +Pertaining to the Agreement dated [Original Agreement Date, e.g., ""August 15, 2023""], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Return of Property: +Upon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement. + +2. Confidential Information: +Both parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party. + +3. Outstanding Payments: +All due payments must be settled within [e.g., ""14 days""] of termination, as per the terms of the original Agreement. + +4. Non-Disparagement: +Both parties agree not to make any derogatory or disparaging statements about the other party post-termination. + +5. Survival of Provisions: +Any provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect. + +6. Notifications: +Each party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties. + +7. Transition Assistance: +To ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., ""30 days""] after termination. + +8. Governing Law: +This Appendix is governed by the laws of [State/Country, e.g., ""California""], consistent with the original Agreement.","APPENDIX A: CONFIDENTIALITY BREACH FEES + +This Appendix is attached to and made part of the Contract (""Original Contract"") dated [Original Contract Date], between [Party A Name] (""Party A"") and [Party B Name] (""Party B""). + +1. Purpose: +This Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract. + +2. Confidentiality Breach Fee: +In the event of a breach of the confidentiality provisions in the Original Contract by either party: + +a) The breaching party will be liable for an immediate penalty of [specific amount, e.g., ""$10,000""]. + +b) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss. + +c) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach. + +3. Payment Terms: +Payment of any penalty or reimbursement as defined above shall be made within [e.g., ""30 days""] of written notification of the breach. + +4. Disputes: +Any disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract. + +5. Continuation of Original Contract: +Except as modified by this Appendix, the Original Contract remains in full force and effect. + +6. Governing Law: +This Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., ""California""]." +96,Merging four documents with complementary information,"LOYALTY AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Party A: [Full Legal Name of Party A], located at [Party A Address]. + Party B: [Full Legal Name of Party B], located at [Party B Address]. + +1. LOYALTY COMMITMENT: + +Both parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives. + +2. NON-POACHING OF EMPLOYEES: + +For the duration of this Agreement and [specific time after termination, e.g., ""for 12 months following its termination""], neither Party A nor Party B shall, without the prior written consent of the other party: + +a. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere. +b. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months. + +3. BREACH: + +Any violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law. + +4. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +5. AMENDMENTS: + +Any modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.","BUSINESS COOPERATION AGREEMENT + +This Agreement is between [Business A Name], at [Business A Address] (""Business A""), and [Business B Name], at [Business B Address] (""Business B""), effective [Day, Month, Year]. + +1. Purpose: +Both businesses will cooperate in [brief description, e.g., ""joint marketing""]. + +2. Responsibilities: + + Business A will: [Key obligation, e.g., ""Promote Business B in newsletters.""] + Business B will: [Key obligation, e.g., ""Display Business A products.""] + +3. Term: +Effective from the above date for [e.g., ""12 months""]. Either party can terminate with [e.g., ""30 days""] notice. + +4. Confidentiality: +Confidential information remains private, during and post-agreement. + +5. Governing Law: +Governing laws of [State/Country, e.g., ""California""]. + +6. Amendments: +Changes must be written and signed by both parties.","IT SERVICES AGREEMENT + +Effective Date: [Date, e.g., ""August 15, 2023""] + +Parties: + + [Client Name], located at [Client Address] (""Client"") + [Service Provider Name], located at [Service Provider Address] (""Provider"") + +Scope of Work: +Provider agrees to offer IT services, including [e.g., ""network setup, software installation, and routine maintenance""], as detailed in Attachment A. + +Payment: +Client shall pay Provider [e.g., ""$1,000""] per month. Invoices will be sent monthly and are due within [e.g., ""30 days""]. + +Duration: +This Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier. + +Termination: +Either party may terminate with [e.g., ""30 days""] written notice. Upon termination, any unpaid fees for services rendered become immediately due. + +Confidentiality: +Both parties agree to keep all business and technical information confidential. + +Limitation of Liability: +Provider's liability is limited to the amount paid by the Client for the specific service causing damage. + +Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +Entire Agreement: +This constitutes the full agreement between both parties.","LOYALTY AGREEMENT + +This Agreement (""Agreement"") is made as of [Date, e.g., ""August 15, 2023""], between: + + [Party A Name], with its principal office at [Party A Address] (""Party A""), + [Party B Name], with its principal office at [Party B Address] (""Party B""). + +Purpose: +The parties wish to collaborate and establish a loyal relationship in their joint business endeavors. + +1. Loyalty Commitment: + +a) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement. + +b) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party. + +c) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration. + +2. Non-Solicitation: +During the term of this Agreement, and for [e.g., ""one year""] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party. + +3. Duration: +This Agreement will begin on the Effective Date and remain in effect for [e.g., ""two years""] unless terminated earlier by mutual consent. + +4. Termination: +Either party may terminate this Agreement with [e.g., ""30 days""] written notice if the other party breaches any term herein. + +5. Confidentiality: +Both parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration. + +6. Governing Law: +This Agreement is governed by the laws of [State/Country, e.g., ""California""]. + +7. Entire Agreement: +This document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings." +97,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +1. Agreement between [Your Company Name] and [Recipient Name] on [Date]. +2. Information sharing for the purpose of [specific project or purpose]. +3. ""Confidential Information"" includes all potentially commercially valuable information, specifically software development tactics, processes, and in-house research results. +4. Receiving party is obligated to protect the Confidential Information, use it solely for the disclosed purpose, and not disclose it without consent. +5. Breach penalties include injunctive relief, other remedies, and a $200,000 fee per breach. +6. The Agreement applies to the Parties and their successors and assigns. It contains all related agreements and lack of enforcement doesn't imply waiver. +7. The Agreement is under the laws of [State]. +8. Signed by [Your Company Name] and [Recipient Name] at the above date.","EMPLOYEE LOYALTY AGREEMENT + +This agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. + +1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. + +2. Non-competition: Employee will not work for or establish a competitor within [e.g., ""50""] miles from the company for [e.g., ""12""] months post-employment. + +3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., ""12""] months post-employment. + +4. Return of Property: Employee will return all company property upon termination. + +5. Remedies: Company can seek injunction for a breach or potential breach of this agreement. + +6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue. + +7. Governing Law: This agreement will be governed by the laws of [State, e.g., ""California""]. + +8. Agreement: This is the entire agreement and supersedes prior negotiations. + +9. Amendments: Any changes must be in writing and signed by both parties. + +Signatures of both parties indicate agreement to these terms. + +[Company Name] - Authorized Signatory [Employee Name]","UNIVERSITY-BUSINESS COOPERATION AGREEMENT + +This Cooperation Agreement (the ""Agreement"") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., ""corporation""] located at [Business Address], hereinafter referred to as the ""Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the ""University"". + +1. Objective: + +The purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., ""jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________""]. + +2. Scope of Cooperation: + +a. Research Collaborations: Joint research initiatives, sharing of resources, and publications. + +b. Internships and Placements: Facilitation of student internships, projects, and job placements. + +c. Seminars and Workshops: Organizing joint seminars, conferences, and workshops. + +d. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc. + +3. Intellectual Property: + +All intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution. + +4. Funding and Resources: + +Both parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis. + +5. Confidentiality: + +Both parties agree to maintain the confidentiality of shared proprietary information. + +6. Duration and Termination: + +This Agreement will remain in effect for [e.g., ""three years""] from the date of signing, unless terminated earlier by either party with [e.g., ""30 days""] written notice. + +7. Dispute Resolution: + +Any disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country]. + +8. Amendments: + +Changes to this Agreement must be in writing and signed by both parties. + +9. Liability: + +Each party assumes responsibility for its actions and is not liable for the actions of the other party. + +10. Governing Law: + +This Agreement is governed by the laws of [State/Country]. + +IN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.","APPENDIX C – ADDITIONAL CONFIDENTIAL INFORMATION + +This Appendix is an extension of the contract (the ""Contract"") dated [Original Contract Date], between [Party One Name] (""First Party"") and [Party Two Name] (""Second Party""). It outlines additional categories of confidential information beyond those detailed in the Contract. + + Additional Confidential Information Includes: + + a. Non-public financial data. + + b. Unpublished marketing strategies and materials. + + c. Upcoming product or service details. + + d. Proprietary software codes and processes. + + e. Personnel records. + + f. Any data labeled as ""Confidential"" or ""Proprietary"" after the Contract’s execution. + + Protection & Exclusions: + +Both Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations. + + Duration: + +The confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., ""five years""] from the disclosure date. + + Prevailing Terms: + +If there’s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information. + +Executed as an integral part of the Contract." +98,Merging four documents with complementary information,"NON-DISCLOSURE AGREEMENT (NDA) + +Effective from [Effective Date], this NDA involves [Your Company Name] (""Disclosing Party""), and [Recipient Name] (""Receiving Party""). + +1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose]. + +2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party. + +3. Receiving Party's Obligations: + a. Use, reproduce, or distribute the confidential information only for the agreed purpose. + b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality. + c. Return or destroy all confidential information upon request or at the end of the agreement. + +4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party. + +5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination. + +6. Term and Termination: The agreement is valid for [e.g., ""two years""], unless terminated earlier with [e.g., ""30 days""] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination. + +7. General Provisions: + a. Governing Law: [Your State]'s laws apply. + b. Amendments: Only valid if written and signed by both parties. + c. Entire Agreement: This contract overrules previous related agreements. + +Signed as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.","B2B CONTRACTOR LOYALTY AGREEMENT + +This Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (""Company""), and [Contractor Company Name], located at [Contractor Address] (""Contractor""). + +1. DEFINITION OF CONFIDENTIAL INFORMATION + +For the purposes of this Agreement, ""confidential information"" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public. + +2. CONFIDENTIALITY + +Contractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company. + +3. NON-COMPETITION + +For 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location. + +4. NON-SOLICITATION + +For 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company. + +5. RETURN OF PROPERTY + +Upon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information. + +6. PENALTY FOR BREACH + +In the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000. + +7. GOVERNING LAW + +This Agreement is governed by [State, e.g., ""California""] laws. + +8. ENTIRE AGREEMENT + +This Agreement supersedes prior discussions and agreements between the parties. + +By signing below, the parties agree to these terms. + +[Company Name] - Signatory [Contractor Company Name] - Signatory","BUSINESS AGREEMENT + +Effective Date: [Date] + +BETWEEN: + + Business A: [Full Legal Name of Business A], located at [Business A Address]. + Business B: [Full Legal Name of Business B], located at [Business B Address]. + +1. PURPOSE: + +This Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service]. + +2. TERMS OF SERVICE: + + Business A agrees to: [Specific tasks/responsibilities, e.g., ""Supply 500 units of Product X monthly.""]. + Business B agrees to: [Specific tasks/responsibilities, e.g., ""Pay $50 per unit of Product X within 30 days of delivery.""]. + +3. PAYMENT TERMS: + +Payments shall be made as follows: [Payment structure, e.g., ""Payment due within 30 days of invoice.""]. + +4. CONFIDENTIALITY: + +Both parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement. + +5. TERMINATION: + +Either party may terminate this Agreement with [X days, e.g., ""30 days""] written notice. If breached, the aggrieved party may seek remedies as per governing laws. + +6. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of California""]. + +7. AMENDMENTS: + +Modifications to this Agreement must be in writing and signed by both parties. + +ACKNOWLEDGEMENT: + +By signing below, both parties affirm their understanding and acceptance of this Business Agreement.","AMENDMENT TO NON-DISCLOSURE AGREEMENT + +This Amendment (the “Amendment”) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (“Party A”), and [Party B Name], having an address at [Party B Address] (“Party B”), collectively referred to as the “Parties.” + +RECITALS + +WHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the “Original Agreement”); + +WHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein; + +NOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows: + + Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., ""two (2) years""], is hereby amended and extended to [New Time, e.g., ""five (5) years""] from the date of disclosure of the Confidential Information. + + Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern. + + Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument. + + Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., ""the State of California""], without regard to its conflict of laws principles. + +IN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written." +99,Merging four documents with complementary information,"CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT + + Entities Involved: + Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity. + + Objective: + To safeguard classified data during talks of a potential technological alliance. + + Specification of Protected Information: + Particularly: + +a. System designs and architectural schematics. +b. Proprietary computational algorithms. + + Receiver's Obligations: + a. Maintain strict non-disclosure using best practices. + b. Employ solely for the aforementioned aim. + c. No unveiling without explicit authorization. + + Violation Ramifications: + A charge of $280,000 for every infringement, plus possible legal proceedings. + + General Terms: + Binding for both parties and any successors. This encapsulates the entire accord. + + Legal Reference: + Governed as per [State]'s legal framework. + + Attestation: + Duly signed on [Date]. + +[AquaBlue Innovations] [PineTree Solutions]","NON-DISCLOSURE AND NON-COMPETE AGREEMENT + +Effective Date: [Date] + +PARTIES: + + Company: [Full Legal Name of Company], located at [Company Address]. + Supplier: [Full Legal Name of Supplier], located at [Supplier Address]. + +1. CONFIDENTIALITY: + +Supplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., ""5 years""] from the date of disclosure. + +2. NON-COMPETITION: + +For [X years, e.g., ""3 years""] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., ""50-mile radius""] of Company's primary business location. + +3. PENALTY FOR BREACH: + +Should Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., ""$50,000""], in addition to any other legal remedies available to Company. + +4. RETURN OF INFORMATION: + +Upon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing. + +5. GOVERNING LAW: + +This Agreement is governed by the laws of [specific country/state, e.g., ""the State of New York""]. + +AGREEMENT ACKNOWLEDGEMENT: + +__________ [Company] __________ [Supplier]","CONFIDENTIALITY: + +4.1. Confidential Information: For the purposes of this Agreement, ""Confidential Information"" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service. + +4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent. + +4.3. Exclusions: Confidential Information shall not include any data or information which: + + Is or becomes publicly known through no wrongful act of the receiving party; + Is independently developed by the receiving party without the use of the Confidential Information; + Is rightfully received from a third party without any obligation of confidentiality; + Is disclosed under legal requirement or order. + +4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies. + +4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., ""five years""].","APPENDIX: CONFIDENTIALITY CLAUSE + +This Appendix is appended to the B2B Contractor Agreement (""Agreement"") dated [Original Agreement Date, e.g., ""August 15, 2023""] between [Company Name], hereinafter referred to as ""Company', and [Contractor Name], hereinafter referred to as ""Contractor"". + +1. Confidentiality: + +1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (""Confidential Information""). + +1.2 Confidential Information shall not include information that: + + is or becomes public knowledge without breach of this clause; + was known by the receiving party before receipt from the disclosing party; + is received from a third party without breach of any obligation of confidentiality. + +1.3 The receiving party shall: + + use the Confidential Information only for performing under the Agreement; + take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information; + not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party. + +2. Duration: + +The obligations set forth in this Appendix shall continue for a period of [e.g., ""two years""] from the date of termination or expiration of the Agreement. + +3. Return or Destruction: + +Upon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information. + +4. Governing Law: + +This Appendix shall be governed by the laws of [State/Country, e.g., ""California""], consistent with the Agreement." diff --git a/examples/doc_merge/plot.py b/examples/doc_merge/plot.py new file mode 100644 index 0000000..02495e2 --- /dev/null +++ b/examples/doc_merge/plot.py @@ -0,0 +1,170 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import json +import os +import matplotlib.pyplot as plt + + +def get_complete_results(base_directory): + results_complete = {} + for folder_name in os.listdir(base_directory): + folder_path = os.path.join(base_directory, folder_name) + if os.path.isdir(folder_path): + results_complete[folder_name] = [] + for file_name in os.listdir(folder_path): + if file_name.endswith(".json"): + file_path = os.path.join(folder_path, file_name) + with open(file_path, "r") as f: + data = json.load(f) + results_complete[folder_name].append( + {"key": int(file_name.split(".")[0]), "data": data} + ) + for key in results_complete.keys(): + results_complete[key] = sorted( + results_complete[key], key=lambda x: x["key"] + ) + return results_complete + + +def get_final_scores(results_complete): + scores = {} + for method in results_complete.keys(): + scores[method] = [] + for result in results_complete[method]: + score = 0 + solved = False + cost = 1 + prompt_tokens = 0 + completion_tokens = 0 + for op in reversed(result["data"]): + if "cost" in op: + cost = op["cost"] + prompt_tokens = op["prompt_tokens"] + completion_tokens = op["completion_tokens"] + if "operation" in op and op["operation"] == "score": + try: + score = max(op["scores"]) + break + except: + continue + scores[method].append( + [result["key"], score, solved, prompt_tokens, completion_tokens, cost] + ) + scores[method] = sorted(scores[method], key=lambda x: x[0]) + return scores + + +def get_plotting_data(base_directory): + results_complete = get_complete_results(base_directory) + scores = get_final_scores(results_complete) + results_plotting = { + method: { + "scores": [x[1] for x in scores[method]], + "solved": sum([1 for x in scores[method] if x[2]]), + "costs": [x[5] for x in scores[method]], + } + for method in scores.keys() + } + return results_plotting + + +def plot_results( + results, + methods_order=["io", "cot", "tot", "got", "got2"], + model="GPT-3.5", + num_ndas=4, + y_lower=0, + y_upper=10, + cost_upper=1.8, + display_solved=True, + annotation_offset=1, + display_left_ylabel=False, + display_right_ylabel=False, +): + methods_order = [method for method in methods_order if method in results] + scores_ordered = [ + [score for score in results[method]["scores"]] for method in methods_order + ] + total_costs = [sum(results[method]["costs"]) for method in methods_order] + + # Create figure and axis + fig, ax = plt.subplots(dpi=150, figsize=(3.75, 5)) + + # Create boxplots + positions = range(1, len(methods_order) + 1) + ax.boxplot(scores_ordered, positions=positions) + + fig_fontsize = 12 + + # Set the ticks and labels + methods_labels = ["IO", "CoT", "ToT", "GoT", "GoT2"] + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticklabels(methods_labels) + # ax.set_xlabel("Approach") + + ax.set_ylim(y_lower, 12 if display_solved else 9.75) + plt.yticks(fontsize=fig_fontsize) + + if display_left_ylabel: + ax.set_ylabel( + f"Score (out of 10); the higher the better", fontsize=fig_fontsize + ) + + # ax.set_title(f"Document Merging") + + ax2 = ax.twinx() + ax2.bar( + positions, + total_costs, + alpha=0.5, + color="blue", + label="Total Cost ($); the lower the better", + ) + ax2.yaxis.set_tick_params(colors="#1919ff", labelsize=fig_fontsize) + ax2.set_ylim(0, cost_upper) + number_of_ticks = len(ax.get_yticks()) + tick_interval = cost_upper / (number_of_ticks) + ax2_ticks = [tick_interval * i for i in range(number_of_ticks)] + + # Set custom tick positions for ax2 + ax2.set_yticks(ax2_ticks) + + if display_right_ylabel: + ax2.set_ylabel( + "Total Cost ($); the lower the better", + color="#1919ff", + fontsize=fig_fontsize, + ) + + if display_solved: + annotation_height = y_upper + annotation_offset + count = 1 + for method in methods_order: + if method not in results: + continue + solved = results[method]["solved"] + ax.text( + count, annotation_height, f"Solved: {solved}", ha="center", va="bottom" + ) + count += 1 + + model = model.replace(".", "").replace("-", "").lower() + fig.savefig(f"doc_merge_{model}_{num_ndas}.pdf", bbox_inches="tight") + + +plot_results( + get_plotting_data("results/"), + num_ndas=4, + display_solved=False, + model="GPT-3.5", + y_upper=10, + display_left_ylabel=True, + cost_upper=15, +) diff --git a/examples/doc_merge/pure_documents.json b/examples/doc_merge/pure_documents.json new file mode 100644 index 0000000..b40a3a6 --- /dev/null +++ b/examples/doc_merge/pure_documents.json @@ -0,0 +1,52 @@ +[ + "NON-DISCLOSURE AGREEMENT (NDA)\n\n1. Agreement between [Your Company Name] and [Recipient Name] on [Date].\n2. Information sharing for the purpose of [specific project or purpose].\n3. \"Confidential Information\" includes all potentially commercially valuable information, specifically software development tactics, processes, and in-house research results.\n4. Receiving party is obligated to protect the Confidential Information, use it solely for the disclosed purpose, and not disclose it without consent.\n5. Breach penalties include injunctive relief, other remedies, and a $200,000 fee per breach.\n6. The Agreement applies to the Parties and their successors and assigns. It contains all related agreements and lack of enforcement doesn't imply waiver.\n7. The Agreement is under the laws of [State].\n8. Signed by [Your Company Name] and [Recipient Name] at the above date.", + "NON-DISCLOSURE AGREEMENT (NDA)\n\nEffective from [Effective Date], this NDA involves [Your Company Name] (\"Disclosing Party\"), and [Recipient Name] (\"Receiving Party\").\n\n1. Purpose: The Disclosing Party will disclose confidential information related to [Topic of Research] to the Receiving Party for [Purpose].\n\n2. Confidential Information: Defined as all non-public reports, data, designs, and other materials provided by the Disclosing Party to the Receiving Party.\n\n3. Receiving Party's Obligations:\n a. Use, reproduce, or distribute the confidential information only for the agreed purpose.\n b. Restrict access to the information to necessary parties, ensuring they abide by strict confidentiality.\n c. Return or destroy all confidential information upon request or at the end of the agreement.\n\n4. Exclusions: Information will not be classified as confidential if it is already known to the Receiving Party, publicly known, or independently developed by the Receiving Party.\n\n5. Non-Competition: The Receiving Party will not engage in any competing business against the Disclosing Party during the agreement and one year after its termination.\n\n6. Term and Termination: The agreement is valid for [e.g., \"two years\"], unless terminated earlier with [e.g., \"30 days\"] written notice. The Receiving Party's non-disclosure and non-competition obligations persist post-termination.\n\n7. General Provisions:\n a. Governing Law: [Your State]'s laws apply.\n b. Amendments: Only valid if written and signed by both parties.\n c. Entire Agreement: This contract overrules previous related agreements.\n\nSigned as of the Effective Date by [Your Company Name] - Disclosing Party [Recipient Name] - Receiving Party.", + "CONFIDENTIALITY & NON-DISCLOSURE AGREEMENT\n\n Entities Involved:\n Effective [Date], between [AquaBlue Innovations], established in [State], and [PineTree Solutions], a registered entity.\n\n Objective:\n To safeguard classified data during talks of a potential technological alliance.\n\n Specification of Protected Information:\n Particularly:\n\na. System designs and architectural schematics.\nb. Proprietary computational algorithms.\n\n Receiver's Obligations:\n a. Maintain strict non-disclosure using best practices.\n b. Employ solely for the aforementioned aim.\n c. No unveiling without explicit authorization.\n\n Violation Ramifications:\n A charge of $280,000 for every infringement, plus possible legal proceedings.\n\n General Terms:\n Binding for both parties and any successors. This encapsulates the entire accord.\n\n Legal Reference:\n Governed as per [State]'s legal framework.\n\n Attestation:\n Duly signed on [Date].\n\n[AquaBlue Innovations] [PineTree Solutions]", + "SECRECY & DISCLOSURE AGREEMENT\n\n Contracting Parties:\n Dated [Date], drawn between [AquaBlue Innovations], a [State]-based corporation, and [PineTree Solutions], a licensed organization.\n\n Aim:\n To protect exclusive insights amidst dialogues for a technological partnership.\n\n Categorization of Sensitive Data:\n Includes:\n\na. Internal software blueprints.\nb. Intellectual property awaiting patents.\n\n Commitments of Recipient:\n a. Uphold confidentiality, ensuring data integrity.\n b. Utilize strictly for collaborative ventures.\n c. No exposure without prior consensus.\n\n Repercussions for Non-Compliance:\n $295,000 fine for each transgression, and the option for legal recourse.\n\n Overall Provisions:\n Legally enforceable for signatories and successors. Complete and sole agreement.\n\n Juridical Standpoint:\n Under the auspices of [State] laws.\n\n Ratification:\n Confirmed and endorsed on [Date].\n\n[AquaBlue Innovations] [PineTree Solutions]", + "This Non-Disclosure and Non-Competition Agreement is made between [Your Company Name] and [Contractor Name/Company].\n\n1. Confidentiality: The Contractor acknowledges access to the Company's confidential information during their relationship.\n\n2. Non-Disclosure: The Contractor agrees not to disclose, use, reproduce, or distribute this confidential information unless necessary for their obligations.\n\n3. Non-Competition: The Contractor agrees not to compete with the company or assist others in doing so for one year after the termination of their relationship. They also agree not to solicit the company's clients or customers for the benefit of a competitor for one year.\n\n4. Return of Confidential Information: At the end of the relationship or upon the company's request, the Contractor will return all confidential information and copies thereof.\n\n5. Remedies: For any breach, the Company may seek specific performance and injunctive relief, in addition to other remedies.\n\n6. Governing Law: The Agreement is governed by the laws of [Your State].\n\n7. Entire Agreement: This document replaces all previous agreements and understandings on the subject.\n\nBoth parties acknowledge understanding and voluntarily accepting the Agreement.\n\nSignatures required from [Your Company Name] and [Contractor Name/Company].", + "This Loyalty Agreement is between [Company Name] and [Employee Full Name], where the company agrees to provide specialized training at no cost to the employee, who in turn commits to work for the company for a specified period. If the employee leaves the company within two years after completing training, they must pay $50,000 as compensation for training costs, payable within 30 days of termination. Exceptions to this repayment include termination without cause, resignation due to breach of agreement by the company, or other agreed upon circumstances. Any changes to this agreement must be in writing and signed by both parties, and the agreement will be governed by the laws of [State/Country]. This agreement is binding to all involved parties and their successors. Both the company and the employee sign to attest to these terms.", + "EMPLOYEE LOYALTY AGREEMENT\n\nThis agreement is entered into by [Company Name] and [Employee Name] to protect the company's business interests, goodwill, and confidential information, and affirm employee's loyalty. \n\n1. Non-disclosure: Employee agrees to not disclose or use company's confidential information, during or post-employment. \n\n2. Non-competition: Employee will not work for or establish a competitor within [e.g., \"50\"] miles from the company for [e.g., \"12\"] months post-employment.\n\n3. Non-solicitation: Employee will not solicit clients or employees of the company for [e.g., \"12\"] months post-employment.\n\n4. Return of Property: Employee will return all company property upon termination.\n\n5. Remedies: Company can seek injunction for a breach or potential breach of this agreement.\n\n6. Severability: If any provision of this agreement is held invalid, the remainder of the Agreement will continue.\n\n7. Governing Law: This agreement will be governed by the laws of [State, e.g., \"California\"].\n\n8. Agreement: This is the entire agreement and supersedes prior negotiations.\n\n9. Amendments: Any changes must be in writing and signed by both parties.\n\nSignatures of both parties indicate agreement to these terms.\n\n[Company Name] - Authorized Signatory [Employee Name]", + "This Loyalty Agreement is between [Company Name] and [Contractor Company Name]. The Agreement ensures the Contractor's loyalty and confidentiality towards the Company during and post engagement. Contractor agrees not to use or disclose the Company's confidential information, or engage in competing business or solicitation for a period of [e.g., \"12\"] months post termination. Contractor must return all Company property upon termination. In case of breach, Company can seek legal remedies including injunction. The Agreement remains valid even if a provision is held invalid. The Agreement follows [State, e.g., \"California\"] laws and replaces all previous understandings. It can be amended only in writing with both parties' signature.", + "B2B CONTRACTOR LOYALTY AGREEMENT\n\nThis Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (\"Company\"), and [Contractor Company Name], located at [Contractor Address] (\"Contractor\").\n\n1. CONFIDENTIALITY\n\nContractor agrees not to disclose, use, or allow the use of the Company's confidential information during or after the relationship, except as required for their services to the Company.\n\n2. NON-COMPETITION\n\nFor 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location.\n\n3. NON-SOLICITATION\n\nFor 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company.\n\n4. RETURN OF PROPERTY\n\nUpon relationship termination or on Company's request, the Contractor will immediately return all Company property and data.\n\n5. PENALTY FOR BREACH\n\nIn the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000.\n\n6. GOVERNING LAW\n\nThis Agreement is governed by [State, e.g., \"California\"] laws.\n\n7. ENTIRE AGREEMENT\n\nThis Agreement supersedes prior discussions and agreements between the parties.\n\nBy signing below, the parties agree to these terms.\n\n[Company Name] - Signatory [Contractor Company Name] - Signatory\nDate: _______________________ Date: _______________________", + "B2B CONTRACTOR LOYALTY AGREEMENT\n\nThis Agreement is made on _____ day of ______, 20, between [Company Name], located at [Company Address] (\"Company\"), and [Contractor Company Name], located at [Contractor Address] (\"Contractor\").\n\n1. DEFINITION OF CONFIDENTIAL INFORMATION\n\nFor the purposes of this Agreement, \"confidential information\" shall refer to research results, software created, devices produced by the Company, and any other information deemed proprietary or not generally known to the public.\n\n2. CONFIDENTIALITY\n\nContractor agrees not to disclose, use, or allow the use of the Company's confidential information, as defined herein, during or after the relationship, except as required for their services to the Company.\n\n3. NON-COMPETITION\n\nFor 12 months post-relationship, the Contractor won't provide similar services to any entity competing with the Company within a 50-mile radius of any Company location.\n\n4. NON-SOLICITATION\n\nFor 12 months post-relationship, the Contractor won't solicit or induce any entity or individual connected to the Company to cease or reduce their relationship with the Company.\n\n5. RETURN OF PROPERTY\n\nUpon relationship termination or on Company's request, the Contractor will immediately return all Company property, including all items containing or pertaining to confidential information.\n\n6. PENALTY FOR BREACH\n\nIn the event of a breach of this Agreement, the Contractor shall pay the Company a penalty of $50,000.\n\n7. GOVERNING LAW\n\nThis Agreement is governed by [State, e.g., \"California\"] laws.\n\n8. ENTIRE AGREEMENT\n\nThis Agreement supersedes prior discussions and agreements between the parties.\n\nBy signing below, the parties agree to these terms.\n\n[Company Name] - Signatory [Contractor Company Name] - Signatory", + "The Non-Disclosure Agreement (NDA) dated [Date] is between [Company], based in [Country/State], and [Supplier], also incorporated in [Country/State]. The Company intends to disclose confidential information to the Supplier for [purpose]. This confidential data can include business strategies, financial data, customer information, and product designs. The Supplier agrees to refrain from sharing this information, barring any legal requirements. Exceptions to this confidentiality are in cases where the information becomes public or was already known by the Supplier before the Company's disclosure. If the Supplier breaches this agreement, they face a financial penalty of [$]. The NDA is valid for [X years], unless the Company provides written termination. Upon the Company's request, the Supplier must return or destroy all copies of Confidential Information. This agreement supersedes previous agreements and can only be altered by a written document approved by both parties. The NDA is governed by the laws of [specific country/state].", + "NON-DISCLOSURE AND NON-COMPETE AGREEMENT\n\nEffective Date: [Date]\n\nPARTIES:\n\n Company: [Full Legal Name of Company], located at [Company Address].\n Supplier: [Full Legal Name of Supplier], located at [Supplier Address].\n\n1. CONFIDENTIALITY:\n\nSupplier shall not disclose Company's confidential information, which includes business strategies, financial data, and customer details, to any third party. This confidentiality obligation lasts for [X years, e.g., \"5 years\"] from the date of disclosure.\n\n2. NON-COMPETITION:\n\nFor [X years, e.g., \"3 years\"] following the termination of their business relationship, Supplier agrees not to engage in or start any business that directly competes with Company within a [X mile/km radius, e.g., \"50-mile radius\"] of Company's primary business location.\n\n3. PENALTY FOR BREACH:\n\nShould Supplier breach this Agreement, they shall pay Company a penalty of [specific amount, e.g., \"$50,000\"], in addition to any other legal remedies available to Company.\n\n4. RETURN OF INFORMATION:\n\nUpon request, Supplier shall return or destroy all of Company's confidential information and confirm its deletion in writing.\n\n5. GOVERNING LAW:\n\nThis Agreement is governed by the laws of [specific country/state, e.g., \"the State of New York\"].\n\nAGREEMENT ACKNOWLEDGEMENT:\n\n__________ [Company] __________ [Supplier]", + "DATA ANALYSIS EMPLOYEE AGREEMENT\n\nThis Agreement (\"Agreement\") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., \"corporation\"] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the \"Company,\" and [Employee Name], an individual residing at [Employee Address], herein referred to as the \"Employee.\"\n\n Position and Duties:\n a. The Company hereby employs Employee in the capacity of Data Analyst.\n b. The Employee's primary duties will be to [specific data analysis tasks, e.g., \"analyze sales data, forecast trends, and produce reports for managerial review\"].\n\n Term: The Employee's engagement will commence on [Start Date] and will terminate on [End Date].\n\n Compensation: For the services rendered by the Employee under this Agreement, the Company will pay Employee a total sum of [specific amount, e.g., \"$5,000\"] payable on [payment schedule, e.g., \"a monthly basis\"].\n\n Confidentiality: The Employee agrees not to disclose or use, either during or after the term of employment, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of performing their duties for the Company.\n\n Intellectual Property: Any works, developments, or inventions created by the Employee in the course of this employment related to the Company's business will remain the sole property of the Company.\n\n Termination: Either party may terminate this Agreement with [e.g., \"30\"] days written notice. Upon termination, Employee agrees to return all company property and data.\n\n Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country].\n\n Amendments: This Agreement may only be amended in writing and signed by both parties.\n\n Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties.\n\nThe parties hereto have executed this Agreement as of the date first above written.\n\n[Company Name or Authorized [Employee Name]\nRepresentative Name, Title]", + "DATA ANALYSIS SERVICE AGREEMENT\n\nThis Agreement (\"Agreement\") is made and entered into as of [Date], by and between [Company Name], a [legal structure, e.g., \"corporation\"] incorporated under the laws of [State/Country], with its principal place of business at [Company Address], herein referred to as the \"Company,\" and [Contractor Business Name], a [legal structure, e.g., \"limited liability company\"] organized under the laws of [State/Country], with its principal place of business at [Contractor Business Address], herein referred to as the \"Contractor.\"\n\n Scope of Work:\n a. The Contractor agrees to provide data analysis services to the Company.\n b. The specific services will include [specific data analysis tasks, e.g., \"analyzing sales data, forecasting trends, and producing reports for managerial review\"].\n\n Term: The Contractor's engagement will commence on [Start Date] and will terminate on [End Date].\n\n Compensation: For the services rendered by the Contractor under this Agreement, the Company will pay the Contractor a total sum of [specific amount, e.g., \"$5,000\"] payable on [payment schedule, e.g., \"a monthly basis\"].\n\n Confidentiality: The Contractor agrees not to disclose or use, either during or after the term of this Agreement, any proprietary or confidential information or data of the Company without the Company's prior written consent, except as necessary in the course of providing the services.\n\n Intellectual Property: Any works, developments, or inventions created by the Contractor in the course of providing the services related to the Company's business will remain the sole property of the Company.\n\n Termination: Either party may terminate this Agreement with [e.g., \"30\"] days written notice. Upon termination, Contractor agrees to return all company data and any other proprietary materials.\n\n Governing Law: This Agreement shall be governed by and construed under the laws of [State/Country].\n\n Amendments: This Agreement may only be amended in writing and signed by both parties.\n\n Entire Agreement: This Agreement contains the entire agreement between the parties and supersedes all prior negotiations, understandings, and agreements between the parties.\n\nThe parties hereto have executed this Agreement as of the date first above written.", + "NON-DISCLOSURE AGREEMENT (NDA)\n\nDate: [Insert Date]\n\nParties: [University Name], [University Address] (\"Disclosing Party\") and [Researcher's Full Name], [Researcher's Address] (\"Receiving Party\").\n\n1. Purpose: For the research of [Briefly Describe the Research or Project].\n\n2. Confidential Information: Includes data, studies, reports, patents, and other valuable business-related material.\n\n3. Obligations:\na. Confidential Information must remain secret.\nb. It's for the specified purpose only.\nc. No third-party disclosure without consent.\n\n4. Exceptions: Public knowledge, third-party shared info, or independently developed.\n\n5. Duration: Confidentiality lasts [X years, e.g., 2 years] from disclosure.\n\n6. Return: All Confidential Information must be returned or destroyed upon request.\n\n7. No Transfer: This doesn't grant property rights or licenses.\n\n8. Law: Governed by [State/Country] laws.\n\n9. Amendments: Only in writing and signed.\n\nAgreement: By signing, parties agree to the terms.", + "UNIVERSITY-BUSINESS COOPERATION AGREEMENT\n\nThis Cooperation Agreement (the \"Agreement\") is made and entered into on [Insert Date], by and between [Business Name], a [business type, e.g., \"corporation\"] located at [Business Address], hereinafter referred to as the \"Business', and [University Name], a higher education institution located at [University Address], hereinafter referred to as the \"University\".\n\n1. Objective:\n\nThe purpose of this Agreement is to define the terms under which the Business and the University will cooperate to [Objective e.g., \"jointly conduct research, promote innovation, and facilitate the exchange of knowledge in the field of _________\"].\n\n2. Scope of Cooperation:\n\na. Research Collaborations: Joint research initiatives, sharing of resources, and publications.\n\nb. Internships and Placements: Facilitation of student internships, projects, and job placements.\n\nc. Seminars and Workshops: Organizing joint seminars, conferences, and workshops.\n\nd. Facilities and Resource Sharing: Providing access to labs, equipment, libraries, etc.\n\n3. Intellectual Property:\n\nAll intellectual property developed jointly will be shared, and a separate agreement will detail the rights, ownership, and any revenue distribution.\n\n4. Funding and Resources:\n\nBoth parties agree to jointly contribute [Specify Amount or Percentage], and additional fund sourcing details will be determined on a project-by-project basis.\n\n5. Confidentiality:\n\nBoth parties agree to maintain the confidentiality of shared proprietary information.\n\n6. Duration and Termination:\n\nThis Agreement will remain in effect for [e.g., \"three years\"] from the date of signing, unless terminated earlier by either party with [e.g., \"30 days\"] written notice.\n\n7. Dispute Resolution:\n\nAny disputes arising from this Agreement will first attempt resolution through mediation. If unresolved, disputes will be subject to the jurisdiction of [State/Country].\n\n8. Amendments:\n\nChanges to this Agreement must be in writing and signed by both parties.\n\n9. Liability:\n\nEach party assumes responsibility for its actions and is not liable for the actions of the other party.\n\n10. Governing Law:\n\nThis Agreement is governed by the laws of [State/Country].\n\nIN WITNESS WHEREOF, both parties have executed this Agreement as of the date first mentioned above.", + "SUPPLY AGREEMENT FOR UNIVERSITY LABORATORY\n\nThis Supply Agreement (the \"Agreement\"), made as of [Insert Date], is entered into by and between [Supplier Name], a [business entity type, e.g., \"corporation\"] having its principal office at [Supplier Address], hereinafter referred to as the \"Supplier', and [University Name], a higher education institution located at [University Address], acting through its [specific department or laboratory, e.g., \"Department of Chemistry\"], hereinafter referred to as the \"University\".\n\n1. Purpose:\n\nThe Supplier agrees to provide specific products/materials/equipment, as detailed in Annex A, to the University for use in its laboratory.\n\n2. Terms of Supply:\n\na. Description of Goods: The goods to be supplied are detailed in Annex A attached herewith.\n\nb. Delivery: Goods will be delivered to [University Address or specific lab address] within [specific timeframe].\n\nc. Pricing: The price for the goods is set out in Annex A and includes all packaging, transportation, and delivery costs unless otherwise specified.\n\n3. Payment Terms:\n\nPayments will be made by the University within [e.g., \"30 days\"] of receiving the invoice from the Supplier.\n\n4. Warranty:\n\nThe Supplier warrants that all goods supplied under this Agreement will be free from defects for a period of [specific duration, e.g., \"12 months\"] from the date of delivery.\n\n5. No Disclosure Clause:\n\na. The University agrees not to disclose, reproduce, or distribute any proprietary information, trade secrets, or other confidential details related to the products/materials/equipment provided by the Supplier without the Supplier's prior written consent.\n\nb. This clause remains effective for a period of [e.g., \"5 years\"] from the date of the last delivery of the goods under this Agreement.\n\n6. Termination:\n\nEither party may terminate this Agreement with [e.g., \"30 days\"] written notice if the other party breaches any term of this Agreement and fails to remedy such breach within the notice period.\n\n7. Governing Law:\n\nThis Agreement shall be governed by and interpreted in accordance with the laws of [State/Country].\n\n8. Amendments:\n\nModifications to this Agreement must be in writing and signed by both parties.\n\nIN WITNESS WHEREOF, the parties hereto have executed this Supply Agreement as of the date first above written.", + "LABORATORY SUPPLY AGREEMENT\n\nDate: [Insert Date]\n\nParties:\n\n Supplier: [Supplier Name], [Supplier Address]\n University: [University Name], [University Address]\n\n1. Purpose: Supplier will provide goods as listed in Annex A to the University's laboratory.\n\n2. Delivery: Within [specific timeframe, e.g., \"30 days\"] to [specific lab address].\n\n3. Payment: University will pay within [e.g., \"30 days\"] of invoice receipt.\n\n4. Warranty: Goods are defect-free for [e.g., \"12 months\"] from delivery.\n\n5. Non-disclosure: University will not disclose Supplier\u2019s proprietary details for [e.g., \"5 years\"]. Breach will result in a penalty of [specific amount or formula, e.g., \"$5,000 per incident or actual damages, whichever is greater\"].\n\n6. Termination: [e.g., \"30 days\"] notice for breaches unresolved within said period.\n\n7. Law: Governed by [State/Country] laws.\n\n8. Amendments: Both parties must sign written changes.", + "FREELANCER AGREEMENT\n\nEffective Date: [Date]\n\nBETWEEN:\n\n Client: [Client Full Name or Company Name], located at [Client Address].\n Freelancer: [Freelancer Full Name], located at [Freelancer Address].\n\n1. SERVICES:\n\nFreelancer agrees to provide the following services: [Brief description of services, e.g., \"web design, content creation, graphic design\"].\n\n2. PAYMENT TERMS:\n\nFor the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., \"$1,000\"]. Payments shall be made as follows: [Payment structure, e.g., \"50% upfront, 50% upon completion\"].\n\n3. DEADLINE:\n\nThe services will be completed by [End Date, e.g., \"December 31, 2023\"].\n\n4. CONFIDENTIALITY:\n\nFreelancer agrees to maintain confidentiality regarding all proprietary information of the Client.\n\n5. TERMINATION:\n\nEither party may terminate this agreement with [X days, e.g., \"14 days\"] written notice. Upon termination, payments will be adjusted for work completed.\n\n6. INDEPENDENT CONTRACTOR:\n\nFreelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement.\n\n7. GOVERNING LAW:\n\nThis Agreement is governed by the laws of [specific country/state, e.g., \"the State of New York\"].\n\n8. AMENDMENTS:\n\nAny changes to this agreement must be in writing and signed by both parties.", + "FREELANCER AGREEMENT\n\nEffective Date: [Date]\n\nBETWEEN:\n\n Client: [Client Full Name or Company Name], located at [Client Address].\n Freelancer: [Freelancer Full Name], located at [Freelancer Address].\n\n1. SERVICES:\n\nFreelancer agrees to provide the following services: [Brief description of services, e.g., \"web design, content creation, graphic design\"].\n\n2. PAYMENT TERMS:\n\nFor the services rendered, Client agrees to pay Freelancer a total of [Total Amount, e.g., \"$1,000\"]. Payments shall be made as follows: [Payment structure, e.g., \"50% upfront, 50% upon completion\"].\n\n3. DEADLINE:\n\nThe services will be completed by [End Date, e.g., \"December 31, 2023\"].\n\n4. PENALTIES:\n\na. Late Delivery: If Freelancer fails to deliver the completed service by the specified deadline, a penalty of [specific amount, e.g., \"$50\"] per day will be deducted from the final payment until the service is delivered.\n\nb. Confidentiality Breach: Breaching the confidentiality clause will result in a penalty of [specific amount, e.g., \"$2,000\"].\n\n5. CONFIDENTIALITY:\n\nFreelancer agrees to maintain confidentiality regarding all proprietary information of the Client.\n\n6. TERMINATION:\n\nEither party may terminate this agreement with [X days, e.g., \"14 days\"] written notice. Upon termination, payments will be adjusted for work completed.\n\n7. INDEPENDENT CONTRACTOR:\n\nFreelancer is an independent contractor and not an employee of the Client. No benefits, rights, or obligations of employment are conferred by this agreement.\n\n8. GOVERNING LAW:\n\nThis Agreement is governed by the laws of [specific country/state, e.g., \"the State of New York\"].\n\n9. AMENDMENTS:\n\nAny changes to this agreement must be in writing and signed by both parties.", + "This document outlines the terms of cooperation between Company A and Company B for a joint research project. The duties of each company are designated, with a detailed financial contribution outlined in Appendix A. Confidentiality is strictly enforced, and any intellectual property created will be jointly owned. All published findings will be reviewed by both parties for protection of proprietary information. Termination of this agreement requires 30 days' written notice, and each party assumes any risks or liabilities during this collaboration. Amendments must be in writing and signed by both parties. The duration of the agreement lasts from the start date to the end date, unless extended. By signing, both parties acknowledge and agree to these terms.", + "BUSINESS AGREEMENT\n\nEffective Date: [Date]\n\nBETWEEN:\n\n Business A: [Full Legal Name of Business A], located at [Business A Address].\n Business B: [Full Legal Name of Business B], located at [Business B Address].\n\n1. PURPOSE:\n\nThis Agreement outlines the terms of the collaboration/project/service between Business A and Business B regarding [Brief Description of the Collaboration/Project/Service].\n\n2. TERMS OF SERVICE:\n\n Business A agrees to: [Specific tasks/responsibilities, e.g., \"Supply 500 units of Product X monthly.\"].\n Business B agrees to: [Specific tasks/responsibilities, e.g., \"Pay $50 per unit of Product X within 30 days of delivery.\"].\n\n3. PAYMENT TERMS:\n\nPayments shall be made as follows: [Payment structure, e.g., \"Payment due within 30 days of invoice.\"].\n\n4. CONFIDENTIALITY:\n\nBoth parties commit to maintaining confidentiality regarding all proprietary information exchanged during this agreement.\n\n5. TERMINATION:\n\nEither party may terminate this Agreement with [X days, e.g., \"30 days\"] written notice. If breached, the aggrieved party may seek remedies as per governing laws.\n\n6. GOVERNING LAW:\n\nThis Agreement is governed by the laws of [specific country/state, e.g., \"the State of California\"].\n\n7. AMENDMENTS:\n\nModifications to this Agreement must be in writing and signed by both parties.\n\nACKNOWLEDGEMENT:\n\nBy signing below, both parties affirm their understanding and acceptance of this Business Agreement.", + "CONFIDENTIALITY:\n\n4.1. Confidential Information: For the purposes of this Agreement, \"Confidential Information\" refers to any data or information, regardless of its form, proprietary to or maintained as confidential by either party, which is not publicly known and which is disclosed during the term of this Agreement or in relation to the collaboration/project/service.\n\n4.2. Protection and Non-Disclosure: Both parties agree to use the Confidential Information solely for the purposes of the Agreement and will exert reasonable efforts to prevent the unauthorized disclosure or use of the Confidential Information. Neither party shall disclose, reproduce, or distribute any portion of the Confidential Information without the disclosing party's prior written consent.\n\n4.3. Exclusions: Confidential Information shall not include any data or information which:\n\n Is or becomes publicly known through no wrongful act of the receiving party;\n Is independently developed by the receiving party without the use of the Confidential Information;\n Is rightfully received from a third party without any obligation of confidentiality;\n Is disclosed under legal requirement or order.\n\n4.4. Return or Destruction: Upon the termination of this Agreement, or at the request of the disclosing party, the receiving party shall return all copies of the Confidential Information to the disclosing party or certify in writing that it has destroyed all such copies.\n\n4.5. Duration: The obligations set forth in this Confidentiality section shall survive the termination or expiration of this Agreement for a period of [specific time, e.g., \"five years\"].", + "LOYALTY AGREEMENT\n\nEffective Date: [Date]\n\nBETWEEN:\n\n Party A: [Full Legal Name of Party A], located at [Party A Address].\n Party B: [Full Legal Name of Party B], located at [Party B Address].\n\n1. LOYALTY COMMITMENT:\n\nBoth parties acknowledge the mutual value of their business relationship. They commit to work in good faith, ensuring a collaborative environment that prioritizes trust, loyalty, and shared objectives.\n\n2. NON-POACHING OF EMPLOYEES:\n\nFor the duration of this Agreement and [specific time after termination, e.g., \"for 12 months following its termination\"], neither Party A nor Party B shall, without the prior written consent of the other party:\n\na. Directly or indirectly solicit, induce, or encourage any employees of the other party to terminate their employment or to engage in employment or other services elsewhere.\nb. Hire, employ, or contract the services of any employee of the other party who has been employed by the said party within the last 12 months.\n\n3. BREACH:\n\nAny violation of the clauses in this Agreement will be deemed a material breach and may result in legal action or other remedies as available by law.\n\n4. GOVERNING LAW:\n\nThis Agreement is governed by the laws of [specific country/state, e.g., \"the State of California\"].\n\n5. AMENDMENTS:\n\nAny modifications to this Agreement must be in writing and signed by both parties.\n\nACKNOWLEDGEMENT:\n\nBy signing below, both parties affirm their understanding and acceptance of this Loyalty Agreement.", + "NON-COMPETE AND LOYALTY AGREEMENT\n\nEffective Date: [Date]\n\nBETWEEN:\n\n Business A: [Full Legal Name of Business A], located at [Business A Address].\n Business B: [Full Legal Name of Business B], located at [Business B Address].\n\n1. PURPOSE:\n\nThis Agreement is designed to protect the proprietary and business interests of both parties by ensuring loyalty and preventing competition during and after the period of collaboration or engagement.\n\n2. NON-COMPETE:\n\nFor the duration of this Agreement and [specific time after termination, e.g., \"for 24 months following its termination\"], neither party shall:\n\na. Engage in or support any venture that directly competes with the core business of the other party within [specific geographical region, e.g., \"the State of California\"].\nb. Invest in, partner with, or advise any business entity that competes directly with the other party.\n\n3. LOYALTY AND NON-POACHING:\n\nBoth parties pledge their commitment to a loyal business relationship. Specifically:\n\na. Neither party will, without the prior written consent of the other, solicit, induce, or encourage any employees or contractors of the other party to terminate their engagement or to join another business.\nb. Neither party shall disparage or encourage others to disparage the other party, its products, services, or its employees.\n\n4. CONFIDENTIALITY:\n\nBoth parties agree to maintain confidentiality regarding any proprietary or business-sensitive information exchanged during the course of this Agreement, ensuring that such information isn't disclosed without the explicit consent of the party owning that information.\n\n5. BREACH AND REMEDIES:\n\nA violation of any provision in this Agreement will be deemed a significant breach. The aggrieved party shall be entitled to seek injunctive relief, damages, or any other remedies available under the laws of [specific country/state, e.g., \"the State of California\"].\n\n6. GOVERNING LAW:\n\nThis Agreement shall be governed by and interpreted in accordance with the laws of [specific country/state, e.g., \"the State of California\"].\n\n7. AMENDMENTS:\n\nModifications or amendments to this Agreement must be in writing and duly signed by authorized representatives of both parties.\n\nACKNOWLEDGEMENT:\n\nBy signing below, representatives from both businesses affirm their understanding and acceptance of this Non-Compete and Loyalty Agreement.", + "AMENDMENT TO CONTRACT: LENGTH OF ENGAGEMENT\n\nThis Amendment is made on [Date], and amends the Non-Compete and Loyalty Agreement dated [Original Agreement Date] between:\n\n Business A: [Full Legal Name of Business A], located at [Business A Address].\n Business B: [Full Legal Name of Business B], located at [Business B Address].\n\nAMENDMENT:\n\nThe parties hereby agree to amend the Non-Compete and Loyalty Agreement as follows:\n\nSection [Specific Section Number, e.g., \"2\"] - Length of Engagement\n\nThe period of engagement between Business A and Business B as stipulated in the original Agreement is hereby extended/shortened/set to commence from [New Start Date] and conclude on [New End Date].\n\nGENERAL PROVISIONS:\n\n Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect.\n This Amendment, together with the original Agreement, represents the entire understanding between the parties.\n\nACKNOWLEDGEMENT:\n\nBoth parties, by their signatures below, indicate their acceptance and approval of this Amendment.", + "AMENDMENT TO CONTRACT: FEES FOR LATE DELIVERY\n\nThis Amendment is made on [Date], and amends the Agreement dated [Original Agreement Date] between:\n\n Business A: [Full Legal Name of Business A], located at [Business A Address].\n Business B: [Full Legal Name of Business B], located at [Business B Address].\n\nAMENDMENT:\n\nThe parties hereby agree to amend the Agreement as follows:\n\nSection [Specific Section Number, e.g., \"3\"] - Fees for Late Delivery\n\na. If Business A/B fails to deliver the products/services by the agreed-upon deadline, a late fee of [Specific Amount or Percentage, e.g., \"$100\" or \"5% of the total contract value\"] shall be applied for each [time period, e.g., \"day\"] of delay.\n\nb. The total late fees shall not exceed [Specific Maximum Amount or Percentage, e.g., \"$1,000\" or \"20% of the total contract value\"].\n\nc. The fees will be deducted from the final payment or invoiced separately, as deemed appropriate by the non-defaulting party.\n\nGENERAL PROVISIONS:\n\n Except as specifically amended herein, all other terms and conditions of the original Agreement remain unchanged and in full effect.\n This Amendment, together with the original Agreement, represents the entire understanding between the parties.\n\nACKNOWLEDGEMENT:\n\nBoth parties, by their signatures below, indicate their acceptance and approval of this Amendment.", + "AMENDMENT TO CONTRACT\n\nThis Amendment (the \"Amendment\") is entered into on [Date], between [Party One Name], hereinafter referred to as the \"First Party', and [Party Two Name], hereinafter referred to as the \"Second Party'', collectively referred to as the \"Parties\".\n\nWHEREAS, the Parties entered into a contract dated [Original Contract Date], hereinafter referred to as the \"Original Contract', for [Brief Description of the Original Contract, e.g., \"provision of IT services to First Party\"];\n\nWHEREAS, the Parties now wish to amend the Original Contract to add additional responsibilities pertaining to the maintenance of existing IT systems;\n\nNOW, THEREFORE, in consideration of the mutual covenants contained herein and for other good and valuable consideration, the receipt and sufficiency of which is hereby acknowledged, the Parties agree as follows:\n\n Additional Responsibility:\n\n The Second Party shall assume the responsibility of maintaining and ensuring the smooth functioning of the existing IT systems of the First Party. This responsibility includes, but is not limited to:\n\n a. Regular monitoring of the IT systems for any anomalies or issues.\n\n b. Prompt troubleshooting and rectification of any issues identified.\n\n c. Routine updates and patches to ensure the systems are secure and up-to-date.\n\n d. Any other related tasks as deemed necessary by the First Party.\n\n Compensation:\n\n As a result of this additional responsibility, the Parties agree to a revised compensation of [New Compensation Details, e.g., \"$XXX per month\"]. All other payment terms as outlined in the Original Contract shall remain unchanged.\n\n Duration and Termination:\n\n The duration and termination clauses from the Original Contract shall remain applicable to this Amendment unless otherwise agreed upon in writing by the Parties.\n\n Miscellaneous:\n\n All other terms and conditions of the Original Contract, which are not specifically amended by this Amendment, shall remain in full force and effect. In the event of a conflict between this Amendment and the Original Contract, the terms of this Amendment shall prevail.\n\n Entire Agreement:\n\n This Amendment, along with the Original Contract, constitutes the entire agreement between the Parties and supersedes any prior understandings, written or oral, relating to the subject matter of this Amendment.\n\n Governing Law:\n\n This Amendment shall be governed by the laws of [Jurisdiction, e.g., \"State of New York\"].", + "This appendix, part of the Contract between Party One and Party Two, sets milestones and deadlines for Party Two. \n\nMilestone 1 involves tasks such as gathering requirements, designing user interface etc. with the objective of developing initial prototype of a software application. Delivery Deadline: September 15, 2023. \n\nMilestone 2 involves tasks like incorporating feedback and conducting beta testing, aiming at finalizing and testing the software application. Delivery Deadline: October 15, 2023. \n\nEach milestone's completion will be reviewed by Party One; if requirements aren't met, Party Two may correct and resubmit. Payment terms and penalties are outlined in the main Contract. This appendix is executed adhering to main Contract's terms and conditions.", + "APPENDIX B \u2013 CHANGE IN TIME OF DELIVERY\n\nThis Appendix is an addendum to the contract (the \"Contract\") dated [Original Contract Date], entered into between [Party One Name], hereinafter referred to as the \"First Party', and [Party Two Name], hereinafter referred to as the \"Second Party\". The purpose of this Appendix is to amend and modify the delivery time as specified in the original Contract.\n\n Original Delivery Time: As per the terms of the original Contract, the delivery time was set for [Original Delivery Date, e.g., \"September 15, 2023\"].\n\n Revised Delivery Time: The Parties, through mutual agreement, have now decided to amend the delivery time. The new delivery date shall be [Revised Delivery Date, e.g., \"October 10, 2023\"].\n\n Reason for Change: [Provide a brief explanation for the change in delivery time, e.g., \"Due to unforeseen challenges in the production process, additional time is required to ensure that the deliverables meet the agreed-upon quality standards.\"]\n\n Consequences of Delay: Unless otherwise stated in the main body of the Contract:\n\n a. If the Second Party fails to meet the revised delivery time, penalties or consequences as outlined in the original Contract for late delivery will apply from the revised delivery date.\n\n b. All other terms related to late delivery, including but not limited to penalties, refunds, or rights to terminate, remain effective and unchanged by this Appendix.\n\n Prevailing Terms: All other terms and conditions of the original Contract not specifically amended by this Appendix shall remain in full force and effect. In the event of any inconsistency or conflict between the original Contract and this Appendix, the terms of this Appendix shall prevail with respect to the change in the delivery time.\n\n Acknowledgment: By signing this Appendix, the Parties acknowledge and agree to the revised delivery time and any associated consequences of delays.\n\nThis Appendix is executed as an acknowledgment and agreement to the revised delivery time and shall be considered an integral part of the original Contract.", + "APPENDIX C \u2013 ADDITIONAL CONFIDENTIAL INFORMATION\n\nThis Appendix is an extension of the contract (the \"Contract\") dated [Original Contract Date], between [Party One Name] (\"First Party\") and [Party Two Name] (\"Second Party\"). It outlines additional categories of confidential information beyond those detailed in the Contract.\n\n Additional Confidential Information Includes:\n\n a. Non-public financial data.\n\n b. Unpublished marketing strategies and materials.\n\n c. Upcoming product or service details.\n\n d. Proprietary software codes and processes.\n\n e. Personnel records.\n\n f. Any data labeled as \"Confidential\" or \"Proprietary\" after the Contract\u2019s execution.\n\n Protection & Exclusions:\n\nBoth Parties shall extend the same protection to this Additional Confidential Information as previously agreed upon in the Contract. Information that becomes public, is received rightfully from a third party, is independently developed, or gets written release authorization is excluded from confidentiality obligations.\n\n Duration:\n\nThe confidentiality obligations for this Appendix shall persist as defined in the Contract or, if unspecified, for [e.g., \"five years\"] from the disclosure date.\n\n Prevailing Terms:\n\nIf there\u2019s any conflict between this Appendix and the Contract concerning confidentiality, this Appendix takes precedence concerning Additional Confidential Information.\n\nExecuted as an integral part of the Contract.", + "AMENDMENT TO NON-DISCLOSURE AGREEMENT\n\nThis Amendment (the \u201cAmendment\u201d) is made and entered into as of [Amendment Date], by and between [Party A Name], having an address at [Party A Address] (\u201cParty A\u201d), and [Party B Name], having an address at [Party B Address] (\u201cParty B\u201d), collectively referred to as the \u201cParties.\u201d\n\nRECITALS\n\nWHEREAS, the Parties entered into a Non-Disclosure Agreement dated [Original NDA Date] (the \u201cOriginal Agreement\u201d);\n\nWHEREAS, the Parties desire to amend the Original Agreement to extend the duration of certain restrictions therein;\n\nNOW, THEREFORE, in consideration of the mutual covenants and promises made by the Parties hereto, the Parties agree as follows:\n\n Extension of Time Restrictions: The time restriction set forth in Section [X] of the Original Agreement, currently stating a period of [Original Time, e.g., \"two (2) years\"], is hereby amended and extended to [New Time, e.g., \"five (5) years\"] from the date of disclosure of the Confidential Information.\n\n Full Force and Effect: Except as expressly modified by this Amendment, all terms, conditions, and provisions of the Original Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the Original Agreement, the terms of this Amendment shall govern.\n\n Counterparts: This Amendment may be executed in counterparts, each of which shall be deemed an original and all of which together shall constitute one and the same instrument.\n\n Governing Law: This Amendment shall be governed by and construed in accordance with the laws of [Governing State or Country, e.g., \"the State of California\"], without regard to its conflict of laws principles.\n\nIN WITNESS WHEREOF, the Parties hereto have executed this Amendment as of the date first above written.", + "BUSINESS COOPERATION AGREEMENT\n\nThis Agreement is between [Business A Name], at [Business A Address] (\"Business A\"), and [Business B Name], at [Business B Address] (\"Business B\"), effective [Day, Month, Year].\n\n1. Purpose:\nBoth businesses will cooperate in [brief description, e.g., \"joint marketing\"].\n\n2. Responsibilities:\n\n Business A will: [Key obligation, e.g., \"Promote Business B in newsletters.\"]\n Business B will: [Key obligation, e.g., \"Display Business A products.\"]\n\n3. Term:\nEffective from the above date for [e.g., \"12 months\"]. Either party can terminate with [e.g., \"30 days\"] notice.\n\n4. Confidentiality:\nConfidential information remains private, during and post-agreement.\n\n5. Governing Law:\nGoverning laws of [State/Country, e.g., \"California\"].\n\n6. Amendments:\nChanges must be written and signed by both parties.", + "APPENDIX TO BUSINESS COOPERATION AGREEMENT\n\nEXTENSION OF CONFIDENTIALITY CONDITIONS\n\nThis Appendix is made as of [Day, Month, Year], and is appended to the Business Cooperation Agreement dated [Original Agreement Date] (\"Original Agreement\") between [Business A Name], located at [Business A Address] (\"Business A\") and [Business B Name], located at [Business B Address] (\"Business B\").\n\n1. Extension of Confidentiality Period:\nThe confidentiality period stipulated in Section 4 (or the appropriate section number) of the Original Agreement is hereby extended. Previously set to expire [Original Expiry Date], it will now extend to [New Expiry Date].\n\n2. Continued Obligations:\nAll other confidentiality obligations and conditions outlined in the Original Agreement remain unchanged and in full effect.\n\n3. Entire Agreement:\nThis Appendix, in conjunction with the Original Agreement, constitutes the entire agreement between the parties regarding the subject matter herein.\n\n4. Governing Law:\nThis Appendix shall be governed by the laws of [State/Country, e.g., \"California\"].\n\nIN WITNESS WHEREOF, both parties hereto have executed this Appendix as of the date first above written.", + "APPENDIX: LOYALTY CLAUSE\n\nEffective [Day, Month, Year], attached to the Agreement dated [Original Agreement Date] between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Loyalty Commitment:\nFor one year from the Effective Date, both parties pledge loyalty by refraining from activities harmful or competitive to the other within the context of the Agreement.\n\n2. Consequences:\nBreaches may result in Agreement termination and legal action as per the original terms.\n\n3. Governing Law:\nGoverned by the laws of [State/Country, e.g., \"California\"].", + "APPENDIX: CONFIDENTIALITY CLAUSE\n\nThis Appendix is appended to the B2B Contractor Agreement (\"Agreement\") dated [Original Agreement Date, e.g., \"August 15, 2023\"] between [Company Name], hereinafter referred to as \"Company', and [Contractor Name], hereinafter referred to as \"Contractor\".\n\n1. Confidentiality:\n\n1.1 Both Company and Contractor acknowledge that they may have access to or receive information during the term of the Agreement which is confidential to the disclosing party (\"Confidential Information\").\n\n1.2 Confidential Information shall not include information that:\n\n is or becomes public knowledge without breach of this clause;\n was known by the receiving party before receipt from the disclosing party;\n is received from a third party without breach of any obligation of confidentiality.\n\n1.3 The receiving party shall:\n\n use the Confidential Information only for performing under the Agreement;\n take all reasonable precautions to prevent any unauthorized disclosure of the Confidential Information;\n not disclose, reproduce, or distribute Confidential Information without the written consent of the disclosing party.\n\n2. Duration:\n\nThe obligations set forth in this Appendix shall continue for a period of [e.g., \"two years\"] from the date of termination or expiration of the Agreement.\n\n3. Return or Destruction:\n\nUpon the expiration or termination of the Agreement, or upon the disclosing party's request, the receiving party shall return or, if directed by the disclosing party, destroy all copies of the Confidential Information.\n\n4. Governing Law:\n\nThis Appendix shall be governed by the laws of [State/Country, e.g., \"California\"], consistent with the Agreement.", + "APPENDIX: CONFIDENTIALITY CLAUSE\n\nThis Appendix is part of the Agreement dated [Original Agreement Date, e.g., \"August 15, 2023\"] between [Company Name] (\"Company\") and [Contractor Name] (\"Contractor\").\n\n1. Confidential Information:\nBoth parties may access or receive the other's confidential information (\"Confidential Information\") during the Agreement term. Confidential Information excludes publicly known details, data known prior, or information obtained from third parties without confidentiality obligations.\n\n2. Obligations:\nThe recipient shall:\n\n Use the Confidential Information solely for the Agreement's purpose.\n Prevent unauthorized disclosures.\n Not disclose without prior written consent.\n\n3. Duration:\nObligations persist for [e.g., \"two years\"] post Agreement termination or expiration.\n\n4. Return/Destruction:\nUpon Agreement conclusion, or on request, all Confidential Information copies should be returned or destroyed.\n\n5. Governing Law:\nGoverned by [State/Country, e.g., \"California\"] laws.", + "NON-DISCLOSURE AGREEMENT (NDA)\n\nEffective [Effective Date, e.g., \"August 15, 2023\"], between [Tech Company Name], located at [Tech Company Address], (\"Company\") and [Contractor's Full Name], located at [Contractor Address], (\"Contractor\").\n\nPurpose:\nContractor will access Company's confidential information during their engagement.\n\n1. Definition:\n\"Confidential Information\" means proprietary data related to the Company\u2019s business, excluding publicly known details, prior known information, or data from third parties without confidentiality bounds.\n\n2. Obligation:\nContractor shall:\n\n Use Confidential Information solely for engagement purposes.\n Prevent unauthorized disclosure.\n\n3. Duration:\nObligations persist for [e.g., \"two years\"] from disclosure date.\n\n4. Return:\nContractor shall return all Confidential Information items upon engagement completion or Company's request, retaining no copies.\n\n5. Remedies:\nBreach may result in legal actions, damages, and costs.\n\n6. Governing Law:\nGoverned by [State/Country, e.g., \"California\"] laws.", + "APPENDIX: EXTENSION OF CONTRACT DURATION\n\nThis Appendix is a part of the Agreement initially dated [Original Agreement Date, e.g., \"August 15, 2021\"], between [Party A Name], located at [Party A Address] (\"Party A\") and [Party B Name], located at [Party B Address] (\"Party B\").\n\n1. Duration Extension:\nThe duration of the Agreement referenced above is hereby extended for an additional two (2) years from the original expiration date. With this extension, the new expiration date of the Agreement will be [New Expiration Date, e.g., \"August 15, 2025\"].\n\n2. All Other Terms Remain Unchanged:\nExcept for the extension of the contract duration as described herein, all other terms and conditions of the Agreement remain unchanged and in full effect.\n\n3. Entire Agreement:\nThis Appendix, in conjunction with the original Agreement, constitutes the entire agreement between Party A and Party B. Any previous understandings, written or oral, relating to the subject of this Appendix are superseded by the terms herein.\n\n4. Governing Law:\nThis Appendix shall be governed by the laws of [State/Country, e.g., \"California\"], consistent with the original Agreement.", + "CONFIDENTIALITY AGREEMENT\n\nEffective [Effective Date, e.g., \"August 15, 2023\"], between [Company Name], located at [Company Address] (\"Company\"), and [Supplier Name], located at [Supplier Address] (\"Supplier\").\n\n1. Definition:\n\"Confidential Information\" means proprietary data of the Company, excluding:\n\n Pre-disclosed or publicly known data.\n Info from third parties without confidentiality bounds.\n\n2. Obligations:\nSupplier will:\n\n Use Confidential Information solely for business purposes with the Company.\n Protect its secrecy and prevent unauthorized disclosure.\n Return or destroy all Confidential Information upon request or business completion.\n\n3. Duration:\nObligations last for [e.g., \"two years\"] from disclosure date.\n\n4. Remedies:\nBreaches may result in legal actions, damages, and costs by the Company.\n\n5. Governing Law:\nGoverned by [State/Country, e.g., \"California\"] laws.", + "APPENDIX: BREACH CONSEQUENCES\n\nRelated to the Agreement on [Original Agreement Date, e.g., \"August 15, 2023\"], between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Notification:\nSuspected breaches must be reported in writing by the non-breaching party.\n\n2. Rectification:\nThe breaching party has [e.g., \"14 days\"] from notification to rectify, unless irreparable.\n\n3. Fees:\nBreaches incur a penalty of [e.g., \"$10,000\"], aside from claimed damages.\n\n4. Legal Actions:\nUnresolved or damaging breaches may lead to legal actions, including injunctive relief, damages, and legal fees.\n\n5. Termination:\nRepeated or severe breaches can cause Agreement termination by the non-breaching party.\n\n6. Law:\nGoverned by [State/Country, e.g., \"California\"] laws.", + "APPENDIX: TERMS OF CONTRACT TERMINATION\n\nRelated to the Agreement on [Original Agreement Date, e.g., \"August 15, 2023\"], between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Termination for Breach:\nIf either party breaches any conditions of the Agreement, the non-breaching party may terminate the Agreement immediately upon written notice to the breaching party.\n\n2. Termination by Notice:\nEither party may terminate the Agreement for any reason by providing a written notice to the other party. The termination will become effective 30 days after the receipt of such notice.\n\n3. Obligations Upon Termination:\nUpon termination, all rights and obligations under the Agreement will cease, except for those which by their nature should survive termination (e.g., confidentiality, liability for prior breaches, etc.).\n\n4. Governing Law:\nThis Appendix, and any disputes arising from it, will be governed by the laws of [State/Country, e.g., \"California\"], consistent with the original Agreement.", + "APPENDIX: OBLIGATIONS UPON TERMINATION\n\nPertaining to the Agreement dated [Original Agreement Date, e.g., \"August 15, 2023\"], between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Return of Property:\nUpon termination, each party shall promptly return to the other all property, materials, and assets belonging to the other party, unless otherwise specified in the Agreement.\n\n2. Confidential Information:\nBoth parties shall continue to abide by any confidentiality obligations set forth in the Agreement. Any confidential information must be returned or destroyed, as instructed by the owning party.\n\n3. Outstanding Payments:\nAll due payments must be settled within [e.g., \"14 days\"] of termination, as per the terms of the original Agreement.\n\n4. Non-Disparagement:\nBoth parties agree not to make any derogatory or disparaging statements about the other party post-termination.\n\n5. Survival of Provisions:\nAny provisions in the Agreement that, by their nature, should persist beyond termination (e.g., indemnity, liability, confidentiality) will continue to be in effect.\n\n6. Notifications:\nEach party must inform their respective stakeholders, if necessary, about the termination in a manner that maintains the goodwill and reputation of both parties.\n\n7. Transition Assistance:\nTo ensure a smooth transition, both parties agree to cooperate, as reasonably requested by the other, for a period of [e.g., \"30 days\"] after termination.\n\n8. Governing Law:\nThis Appendix is governed by the laws of [State/Country, e.g., \"California\"], consistent with the original Agreement.", + "NON-DISCLOSURE AGREEMENT (NDA)\n\nEffective [Date, e.g., \"August 15, 2023\"], between [Client Name], (\"Client\") and [Business Name], (\"Business\").\n\nPurpose:\nProtection of confidential information exchanged due to potential collaboration.\n\n1. Confidentiality:\nBusiness agrees to keep secret all Confidential Information shared by Client.\n\n2. Definition:\n\"Confidential Information\" is non-public data shared by either party, excluding info that's publicly available, already known, or received without confidentiality constraints.\n\n3. Duration:\nObligations last [e.g., \"two years\"] from the date of disclosure.\n\n4. Return/Destruction:\nUpon Client's request, Business will return or destroy all Confidential Information.\n\n5. Remedies:\nUnauthorized disclosures may lead to legal action by Client, including damages.\n\n6. Law:\nGoverned by [State/Country, e.g., \"California\"] laws.", + "IT SERVICES AGREEMENT\n\nEffective Date: [Date, e.g., \"August 15, 2023\"]\n\nParties:\n\n [Client Name], located at [Client Address] (\"Client\")\n [Service Provider Name], located at [Service Provider Address] (\"Provider\")\n\nScope of Work:\nProvider agrees to offer IT services, including [e.g., \"network setup, software installation, and routine maintenance\"], as detailed in Attachment A.\n\nPayment:\nClient shall pay Provider [e.g., \"$1,000\"] per month. Invoices will be sent monthly and are due within [e.g., \"30 days\"].\n\nDuration:\nThis Agreement starts on [Start Date] and ends on [End Date], unless terminated earlier.\n\nTermination:\nEither party may terminate with [e.g., \"30 days\"] written notice. Upon termination, any unpaid fees for services rendered become immediately due.\n\nConfidentiality:\nBoth parties agree to keep all business and technical information confidential.\n\nLimitation of Liability:\nProvider's liability is limited to the amount paid by the Client for the specific service causing damage.\n\nGoverning Law:\nThis Agreement is governed by the laws of [State/Country, e.g., \"California\"].\n\nEntire Agreement:\nThis constitutes the full agreement between both parties.", + "CONFIDENTIALITY AMENDMENT TO NDA\n\nThis Amendment, effective [Date, e.g., \"August 15, 2023\"], modifies the NDA dated [Original Agreement Date] between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Responsibilities:\n\na) Protection: Parties must safeguard Confidential Information at least as they do their own.\n\nb) Access: Access is limited to those needing it who are also bound by confidentiality.\n\nc) Breach Notification: Parties must immediately inform the other of any breaches.\n\nd) Return/Destruction: Upon request or agreement end, parties must return or certify the destruction of Confidential Information.\n\ne) No Reverse Engineering: Receiving party shall not reverse engineer any provided items.\n\n2. Remedies:\nUnauthorized disclosures permit injunctive relief and other legal remedies.\n\n3. Original Agreement:\nExcept for this Amendment, the NDA remains unchanged.\n\nGoverning Law:\nAs per the NDA.", + "LOYALTY AGREEMENT\n\nThis Agreement (\"Agreement\") is made as of [Date, e.g., \"August 15, 2023\"], between:\n\n [Party A Name], with its principal office at [Party A Address] (\"Party A\"),\n [Party B Name], with its principal office at [Party B Address] (\"Party B\").\n\nPurpose:\nThe parties wish to collaborate and establish a loyal relationship in their joint business endeavors.\n\n1. Loyalty Commitment:\n\na) Both parties commit to act in good faith and refrain from engaging in any activity or partnership that might conflict with the interests of the other party during the term of this Agreement.\n\nb) Neither party shall assist, collaborate, or engage with third parties that may cause harm or disrepute to the other party.\n\nc) Each party shall prioritize the other's interests in situations where opportunities arise from their collaboration.\n\n2. Non-Solicitation:\nDuring the term of this Agreement, and for [e.g., \"one year\"] thereafter, neither party shall solicit or attempt to entice away any clients, customers, or employees of the other party.\n\n3. Duration:\nThis Agreement will begin on the Effective Date and remain in effect for [e.g., \"two years\"] unless terminated earlier by mutual consent.\n\n4. Termination:\nEither party may terminate this Agreement with [e.g., \"30 days\"] written notice if the other party breaches any term herein.\n\n5. Confidentiality:\nBoth parties agree to maintain the confidentiality of all proprietary or non-public information obtained during the collaboration.\n\n6. Governing Law:\nThis Agreement is governed by the laws of [State/Country, e.g., \"California\"].\n\n7. Entire Agreement:\nThis document constitutes the full understanding between both parties, superseding all prior discussions, agreements, or understandings.", + "BUSINESS CONSULTING CONTRACT\n\nThis Consulting Contract (\"Contract\") is made as of [Date, e.g., \"August 15, 2023\"], between:\n\n [Client Name], with its principal office at [Client Address] (\"Client\"),\n [Consultant Name], with its principal office at [Consultant Address] (\"Consultant\").\n\nPurpose:\nThe Consultant will provide professional consulting services to the Client as described below.\n\n1. Scope of Services:\nConsultant agrees to offer services including, but not limited to:\na) Business strategy development\nb) Market analysis\nc) [Other services as needed]\nAny additional services will require an amendment to this Contract.\n\n2. Compensation:\nFor services rendered, the Client shall pay the Consultant [e.g., \"$100\"] per hour. Invoices will be issued [e.g., \"monthly\"] and are due within [e.g., \"30 days\"] of receipt.\n\n3. Duration:\nThis Contract begins on [Start Date] and ends on [End Date], unless extended by mutual agreement or terminated earlier.\n\n4. Termination:\nEither party can terminate this Contract with [e.g., \"30 days\"] written notice. In case of termination, the Client will pay for services rendered up to the notice date.\n\n5. Confidentiality:\nThe Consultant shall maintain the confidentiality of all proprietary information received during the engagement, unless obligated by law to disclose.\n\n6. Non-compete:\nFor [e.g., \"six months\"] after Contract termination, the Consultant agrees not to provide similar services to any direct competitor of the Client within [e.g., \"50 miles\"] of the Client's primary location.\n\n7. Independent Contractor:\nThe Consultant is an independent contractor and not an employee of the Client.\n\n8. Governing Law:\nThis Contract shall be governed by and interpreted under the laws of [State/Country, e.g., \"California\"].\n\n9. Entire Agreement:\nThis Contract represents the entire understanding between both parties, superseding all prior negotiations, discussions, or agreements.", + "APPENDIX A: CONFIDENTIALITY BREACH FEES\n\nThis Appendix is attached to and made part of the Contract (\"Original Contract\") dated [Original Contract Date], between [Party A Name] (\"Party A\") and [Party B Name] (\"Party B\").\n\n1. Purpose:\nThis Appendix defines the fees and penalties associated with any breach of confidentiality as stipulated in the Original Contract.\n\n2. Confidentiality Breach Fee:\nIn the event of a breach of the confidentiality provisions in the Original Contract by either party:\n\na) The breaching party will be liable for an immediate penalty of [specific amount, e.g., \"$10,000\"].\n\nb) If the breach results in any direct financial loss to the non-breaching party, the breaching party shall additionally reimburse the non-breaching party for the full amount of such loss.\n\nc) The breaching party will also bear all costs, including legal fees, that the non-breaching party incurs while addressing or remedying the breach.\n\n3. Payment Terms:\nPayment of any penalty or reimbursement as defined above shall be made within [e.g., \"30 days\"] of written notification of the breach.\n\n4. Disputes:\nAny disputes related to this Appendix shall be resolved as stipulated in the dispute resolution clause of the Original Contract.\n\n5. Continuation of Original Contract:\nExcept as modified by this Appendix, the Original Contract remains in full force and effect.\n\n6. Governing Law:\nThis Appendix, consistent with the Original Contract, is governed by the laws of [State/Country, e.g., \"California\"].", + "APPENDIX A: STRICT CONFIDENTIALITY BREACH PENALTIES\n\nThis Appendix is annexed to the Contract dated [Original Contract Date] between [Party A Name] and [Party B Name].\n\n1. Breach Fees:\nIf a party breaches confidentiality:\n\na) Immediate penalty: [e.g., \"$50,000\"].\n\nb) For reputational harm or business loss: Additional [e.g., \"$100,000\"].\n\nc) Full reimbursement for direct financial losses caused by the breach.\n\nd) All associated legal and remedy costs borne by the breaching party.\n\n2. Remedial Actions:\nThe breaching party must swiftly rectify the breach, potentially including public apologies or recalling disclosed information.\n\n3. Payment:\nDue within [e.g., \"15 days\"] of breach notification.\n\n4. Termination:\nNon-breaching party can immediately terminate the main contract upon a breach.\n\n5. Governing Law:\nThis Appendix adheres to [State/Country, e.g., \"California\"] laws." +] \ No newline at end of file diff --git a/examples/keyword_counting/README.md b/examples/keyword_counting/README.md new file mode 100644 index 0000000..f923fdc --- /dev/null +++ b/examples/keyword_counting/README.md @@ -0,0 +1,45 @@ +# Keyword Counting + +The use case in this directory computes the frequencies of occurring countries +in a long passage of text. We provide implementations of seven different approaches: +- IO +- Chain-of-Thought (CoT) +- Tree of Thought (ToT): + - ToT: wider tree, meaning more branches per level + - ToT2: tree with more levels, but fewer branches per level +- Graph of Thoughts (GoT): + - GoT4: split passage into 4 sub-passages + - GoT8: split passage into 8 sub-passages + - GoTx: split by sentences + +## Data + +We provide an input file with 100 samples: `countries.csv`. It is also possible to use +the data generator `dataset_gen_countries.py` to generate additional or +different samples (using GPT-4). The parameters can be updated on line 54 (number of samples to be generated). +Note that not every generated sample will be included in the dataset, as each sample is +additionally tested for validity (observe script output for details). + +## Execution + +The file to execute the use case is called +`keyword_counting.py`. In the main body, one can +select the specific samples to be run (variable samples) and the +approaches (variable approaches). It is also possible to set a budget in +dollars (variable budget). + +The Python scripts will create the directory `result`, if it is not +already present. In the `result` directory, another directory is created +for each run: `{name of LLM}_{list of approaches}_{day}_{start time}`. +Inside each execution specific directory two files (`config.json`, +`log.log`) and a separate directory for each selected approach are +created. `config.json` contains the configuration of the run: input data, +selected approaches, name of the LLM, and the budget. `log.log` contains +the prompts and responses of the LLM as well as additional debug data. +The approach directories contain a separate json file for every sample +and the file contains the Graph Reasoning State (GRS) for that sample. + +## Plot Data + +Change the results directory in line 150 of `plot.py` and run `python3 +plot.py` to plot your data. diff --git a/examples/keyword_counting/countries.csv b/examples/keyword_counting/countries.csv new file mode 100644 index 0000000..9940649 --- /dev/null +++ b/examples/keyword_counting/countries.csv @@ -0,0 +1,101 @@ +ID,Text,Countries,Sentences,Characters +0,"One evening, Sarah, an archaeologist from Norway made a surprising discovery about ancient trade routes between Sweden and Norway. As per her research, the artifacts that were found in Norway were identical to those in Sweden, indicating a deep-rooted cultural connection between Sweden and Norway. This piqued the interest of her colleague, James, who was from Canada. He had been researching the indigenous tribes of Canada and found many similarities with tribes from his neighboring country, the United States. James had always been interested in the historical ties between Canada and United States, and his study further confirmed the age-old connections between the two countries. Upon hearing James's story, Sarah shared a fascinating anecdote from her travels in Portugal. She recalled how locals loved to tell the tale of the shared history between Spain and Portugal. Her anecdotes about Spain and Portugal echoed the same sense of shared culture and past, just like in the case of Norway and Sweden, and Canada and United States. Their conversation reminded James of his stay in South Korea, where he had learned about the close relationship between North Korea and South Korea, despite their current political divide. He recalled stories about the shared history of North Korea and South Korea, whose deep-seated cultural ties transcended political boundaries. Sarah, who had been to Australia, reciprocated with her own experiences of the bond between Australia and New Zealand. She described how, despite geographical separation, Australia and New Zealand shared a unique camaraderie and close historical ties. As they exchanged stories, their conversation moved to South Africa and its various connections with its neighbouring country, Zimbabwe. Sarah shared stories she had heard about the intricate bond between South Africa and Zimbabwe, showcasing the age-old interactions between these two nations. It left them both reflecting on the timeless bonds that connect nations across the world, from Norway to Australia, Canada to Zimbabwe, and all the countries in between.","[Norway, Sweden, Norway, Norway, Sweden, Sweden, Norway, Canada, Canada, United States, Canada, United States, Portugal, Spain, Portugal, Spain, Portugal, Norway, Sweden, Canada, United States, South Korea, North Korea, South Korea, North Korea, South Korea, Australia, Australia, New Zealand, Australia, New Zealand, South Africa, Zimbabwe, South Africa, Zimbabwe, Norway, Australia, Canada, Zimbabwe]",15,2090 +1,"My friend, Alex from Peru, once recounted his journey to Argentina where he learned about the strong cultural ties between Argentina and Brazil due to their shared history. He spoke fondly of his time in Argentina and Brazil, marveling at the similar music, dance, and culinary traditions that seamlessly bridged the borders of these countries. It reminded me of a documentary I'd watched about the ancient Silk Road that spanned across Iran and China. It touched upon the shared historical narratives of Iran and China, highlighting how goods, ideas, and culture flowed between these two countries for centuries. Intriguingly, the documentary also brought up some parallels between this eastern route and the vibrant exchange between Italy and France during the Renaissance. The cultural and intellectual bonds between Italy and France were indeed profound, just as the resilient trade relations that existed between the United States and Canada. The United States and Canada, apart from their geographical proximity, shared an economic bond that strongly influenced their policies and international standing. Similarly, the ties between Australia and New Zealand shed light on their gestalt identity in the Pacific region. Despite their unique characteristics, Australia and New Zealand were often viewed as a single entity due to their remarkably similar backgrounds in terms of culture, language, and colonial history. Inspired by these chronicles of interconnectedness, I decided to delve deeper into history and found a fascinating account of how Ukraine and Poland had influenced each other through years of coexistence. Despite their tumultuous past, Ukraine and Poland shared a cultural tapestry that was deeply woven into their histories. It was quite similar to the complex relationship between North Korea and South Korea, which, despite their political differences, shared common heritage and traditions. Thus, from Argentina to South Korea, the world was an intricate web of countries intertwined with each other through shared histories, cultures, and sometimes, shared destinies.","[Peru, Argentina, Argentina, Brazil, Argentina, Brazil, Iran, China, Iran, China, Italy, France, Italy, France, United States, Canada, United States, Canada, Australia, New Zealand, Australia, New Zealand, Ukraine, Poland, Ukraine, Poland, North Korea, South Korea, Argentina, South Korea]",13,2095 +2,"Annie, a marine biologist from Ireland, had always been fascinated by the diverse sealife surrounding the coasts of Australia. She often said that the waters of Australia were some of the most biodiverse in the world, enticing researchers like her from faraway lands like Ireland. Through her explorations, she developed a particular interest in the migratory patterns of certain species, noting that they often ventured towards New Zealand. Annie noticed that from Australia, these marine creatures would cross oceans to reach the coasts of New Zealand, proving the interconnectedness of these ecosystems. Driven by this curiosity, she published her research, attracting the attention of a fellow scientist, Greg, from Canada. Inspired by her findings, Greg shared his own studies on migration patterns, noting a similar scenario between Canada and the United States. He'd found that many animal species in Canada would cross the border into the United States during certain seasons, emphasizing the interplay between these two nations. Annie and Greg started to collaborate, which led their research towards Mexico, where they discovered another fascinating migration phenomenon. They found it intriguing that birds from the United States would fly south, bypassing their own habitats to spend the winter in the warmer climates of Mexico. Their research in Mexico led them to another colleague, Maria, from Spain. Maria had been studying the movements of the Iberian Lynx which often roamed between Spain and Portugal. Maria's research had shown that just like the animals in North America, the Lynx in Spain had established territories in Portugal. Intrigued by the similarities, they expanded their study to cover the movement of bird species between Belgium and the Netherlands. Just as they'd seen in the Americas, they noticed that certain species of birds in Belgium would travel to the Netherlands during certain periods of the year. These fascinating findings opened up new dimensions of understanding for the interconnectedness of the world. From the sealife in Australia to the birds in Belgium, the animal kingdom had its own ways of establishing connections between countries.","[Ireland, Australia, Australia, Ireland, New Zealand, Australia, New Zealand, Canada, Canada, United States, Canada, United States, Mexico, United States, Mexico, Mexico, Spain, Spain, Portugal, Spain, Portugal, Belgium, Netherlands, Belgium, Netherlands, Australia, Belgium]",16,2190 +3,"During their adventurous journey around the world, Jack and Emily first found themselves in the vibrant markets of India, enamoured by the rich traditions from India reflected in every corner. Their journey then led them to the bustling cityscapes of China, filled with modern marvels that somehow coexisted with ancient traditions from China's past. They then travelled to Australia, where they got lost in the wilderness, and shared stories of the rich biodiversity found in Australia under the southern constellations. Their travel then took them to Argentina, where they were captivated by the diversity of landscapes, from the colossal mountains to the serene lakes of Argentina. They couldn't help but notice the stark contrast to Brazil, which boasted its own unique geographical features and diverse environments, mirroring the diversity of lifestyles in Brazil. Jack, recalling his childhood passion, mentioned his fondness for Italy and its rich history. Emily, sharing his sentiment, mentioned the transcendent beauty of Italy's architecture and the remarkable tales from Italy's past. Soon, their discussion shifted to the dynamic nightlife of South Korea, which they said was unlike anything they had experienced before. South Korea, they described, was the perfect blend of the old and the new, where rich traditions met modern influences. They expressed their shared love for Ireland, with its lush green landscapes and the warm hospitality of the people of Ireland. Their tales also touched upon the unparalleled tranquility of Switzerland and the cultural harmony they found there. Switzerland, they both agreed, was a testament to the beauty of diversity, coexistence and peace. Their curiosity then led them to discuss their memorable visit to Mexico, and the unmatched flavors of cuisine from Mexico that left an indelible mark on their taste buds. As the night grew darker, their conversation veered towards the mystical landscapes of Egypt, where ancient history whispered from every corner of Egypt. As they traversed through their memories, they couldn't help but look forward to their upcoming trip to Kenya, hoping that their experiences in Kenya would be just as enriching and unforgettable. As they parted for the night, they went to sleep with dreams of their world journey, from India to Kenya, brimming in their hearts.","[India, India, China, China, Australia, Australia, Argentina, Argentina, Brazil, Brazil, Italy, Italy, Italy, South Korea, South Korea, Ireland, Ireland, Switzerland, Switzerland, Mexico, Mexico, Egypt, Egypt, Kenya, Kenya, India, Kenya]",16,2350 +4,"The origins of James, an anthropologist from Australia, traced back to Ireland, a land of heritage and folklore. He often marveled at the similarities between the indigenous cultures of Australia and the rich, traditional societies of Ireland. His fascination grew more profound when he learned about the ancient ties between Ireland and the United Kingdom. Both the United Kingdom and Ireland, he discovered, had histories deeply intertwined, from shared rulers to common cultural practices. His friend, Laura, an archaeologist from the United States, shared his interest in tracing historical connections between nations. She had closely studied the cultural exchanges between the United States and Mexico, intrigued by their shared border and the resultant blend of customs and traditions. The bond between the United States and Mexico was a testament to their shared history of migrations, trade, and even conflicts. Laura also recounted her research on Peru and the cultural parallels it held with Brazil. She discovered that both Peru and Brazil shared ties through the Amazon rainforest, with indigenous communities trading goods and knowledge over centuries. James, on his part, spoke about his recent research on the historical relationship between South Africa and Zimbabwe. He found that South Africa and Zimbabwe shared a lot of similarities in terms of language, culture, and history, owing to their geographical proximity. Drawing on her experience from a trip to Asia, Laura mentioned her encounter with the intriguing links between China and North Korea. She noted that China and North Korea, despite their political differences, shared historical and cultural ties that dated back centuries. The conversation ended on a lighter note, with both of them reminiscing about their culinary adventures in Italy and France. Both Italy and France, they agreed, had unparalleled culinary scenes, deeply rooted in their culture and history. Their discussion underlined the beauty of shared narratives and cultural exchanges across the world.","[Australia, Ireland, Australia, Ireland, Ireland, United Kingdom, United Kingdom, Ireland, United States, United States, Mexico, United States, Mexico, Peru, Brazil, Peru, Brazil, South Africa, Zimbabwe, South Africa, Zimbabwe, China, North Korea, China, North Korea, Italy, France, Italy, France]",16,2048 +5,"On his journey across the globe, Mark found himself fascinated by the cultural blend in Argentina where the tango originated. His time in Argentina sparked his interest in Brazil, and he took a short plane ride to the country known for its vast Amazon rainforest. The allure of Brazil was intoxicating, its vibrant festivals and unique wildlife were unlike anything he'd previously seen. He'd soon learn that the wildlife in Australia, however, was equally captivating. While in Australia, Mark found himself charmed by the affectionate kangaroos and aloof koalas. After Australia, he headed towards Asia, beginning at the vibrant country of India. India's cultural diversity, historical grandeur, and the warmth of the people enticed him to spend more time exploring the country. Another country that captured his heart in the same way was China, with its rich history and splendid landscapes. China amazed him with its ancient monuments and the Great Wall, leaving him yearning for more such experiences. Such yearning led him to Egypt, home to the majestic Pyramids. The history and mysteries that shrouded Egypt kept him intrigued, so much so that he extended his stay. Encouraged by his experiences in Egypt, Mark decided to venture further into the landscapes of Africa and arrived at Kenya. In Kenya, he was awestruck by the vast savannahs and spectacular wildlife. His adventures in Kenya made him realize the untapped beauty of Africa, prompting him to extend his African journey to South Africa. In South Africa, he was spellbound by the natural beauty of the landscapes, making him fall in love with Africa. His next destination was Europe, where he found himself fascinated by the architectural grandeur of Italy and the historical stories that surrounded every alleyway. Italy, with its enchanting cities and delicious food, left an unforgettable impression on him. The final leg of his journey led him to cold but beautiful Norway, where he witnessed the spectacular Northern Lights, ending his journey on a high note.","[Argentina, Argentina, Brazil, Brazil, Australia, Australia, Australia, India, India, China, China, Egypt, Egypt, Egypt, Kenya, Kenya, Kenya, South Africa, South Africa, Italy, Italy, Norway]",18,2032 +6,"As Hannah walked down the bustling streets of Tokyo, Japan, she felt the energy of the city. Japan, with its blend of tradition and modernity, was nothing like her quiet hometown in Ireland. Upon returning to Ireland, she was greeted with the serene green landscape, a stark contrast to the skyscrapers of Japan, but equally beautiful in its own way. After her time in Japan and Ireland, she couldn't help but feel restless, wanting to explore more of the world. Her next adventure took her to the vibrant city of Rio in Brazil, famed for its lively carnivals. Brazil’s rich culture and friendly people left a deep impression on Hannah, making her yearn for more such experiences. Her friend, Alejandro from Mexico, suggested that she visit his home country next. In Mexico, she was awestruck by the historic architecture and the vibrant, bustling markets. The food of Mexico, in particular, was a revelation to her. After Mexico, she headed to France. France's elegance, be it in their language, fashion, or gastronomy, left her fascinated. She spent hours sitting in cafes in France, watching the world go by, and feeling a sense of peace that she hadn't felt for a long time. After France, her journey took her to the far East, to China. In China, she found a dynamic cityscape intermingling with centuries-old architecture. China’s history fascinated her, and her journey through the country felt like traveling through time. Her last stop was Australia and she spent weeks exploring the diverse landscapes of the country. From the bustling cities to the serene Outback, Australia was a beautiful end to her travels. Her experiences in Japan, Ireland, Brazil, Mexico, France, China, and Australia had given her a new perspective, a deeper appreciation for the beauty in diversity.","[Japan, Japan, Ireland, Ireland, Japan, Japan, Ireland, Brazil, Brazil, Mexico, Mexico, Mexico, Mexico, France, France, France, France, China, China, China, Australia, Australia, Japan, Ireland, Brazil, Mexico, France, China, Australia]",18,1784 +7,"During his travels in Italy, John discovered a remarkable tale about the intricate trade networks of the past that connected Italy, Greece, and Turkey. Drawn in by the fascinating history, he began researching further about Italy, particularly its ancient maritime links with Greece and Turkey, as well as their shared cultural heritage. This sparked a memory in his friend Anna from the United States, who'd been studying the historical exchanges between the indigenous cultures of the United States and Canada. She mentioned how these groups from both the United States and Canada had a rich history of sharing knowledge, customs and even conflict, demonstrating an age-old connection between the two countries. Fascinated, John shared snippets from his trip to Brazil, where he'd learned about the cultural and historical ties between Brazil and Argentina. He revealed that despite their political differences, Brazil and Argentina share profound cultural links, with their histories deeply intertwined. This reminded Anna of her journey to the United Kingdom. She vividly recalled an exhibition she had visited in the United Kingdom, showcasing the country's historic ties with Ireland. It was intriguing, she narrated, how the United Kingdom and Ireland, despite their tumultuous history, have shared and shaped each other's destinities. John then told Anna about his visit to Egypt, where he encountered the millennia-old bond between Egypt and Israel. Intriguingly, Egypt and Israel, despite their conflicts, have a shared history that can be traced back to the times of antiquity. Finally, Anna ended the conversation with a quirky fact about Australia and New Zealand. She revealed that despite their friendly rivalry on the sports field, Australia and New Zealand share a deeply ingrained kinship, both in terms of history and culture. Their conversation, filled with tales from Italy to Australia, was a testament to the interconnectedness of our world's history through the lens of different countries.","[Italy, Italy, Greece, Turkey, Italy, Greece, Turkey, United States, United States, Canada, United States, Canada, Brazil, Brazil, Argentina, Brazil, Argentina, United Kingdom, United Kingdom, Ireland, United Kingdom, Ireland, Egypt, Egypt, Israel, Egypt, Israel, Australia, New Zealand, Australia, New Zealand, Italy, Australia]",14,2014 +8,"Upon his visit to Norway, David, an avid history buff, learned that the Vikings, who hailed from both Norway and Sweden, were not just raiders and traders, but also skillful navigators who discovered new lands. Both Norway and Sweden shared a rich Viking heritage, with numerous historic sites and artifacts revealing their past. He later shared these insights with his friend Susan, who lived in Canada and was equally passionate about history. She told him about the first European settlers in Canada, most of whom were from France and United Kingdom. Both France and the United Kingdom had made significant contributions to the early development of Canada, she explained. Her fascination with history also led her to explore the ancient civilizations of Egypt, with its magnificent pyramids and intriguing hieroglyphics. She mentioned that her visit to Egypt opened her eyes to the true grandeur of ancient civilizations, something she felt was often overlooked. David shared her sentiment, recounting his own experiences in Greece, where he had explored the renowned archaeological sites. He revealed that Greece’s rich history, from its mythical heroes to its philosophical legacy, truly captivated him. In response, Susan brought up her travels to Mexico, where she got to witness the remnants of the great Mayan civilization. She also spoke about the complex Aztec culture in Mexico, which she found just as fascinating as the Mayans. This discourse on ancient civilizations prompted David to talk about his trip to Italy, famous for its Roman heritage. He said that visiting Italy was like a journey through time, with landmarks and ruins offering a glimpse into the past. They both agreed that whether it's the Viking heritage of Norway and Sweden or the ancient civilizations of Egypt, Greece, Mexico, or Italy, every country has a rich and captivating history to explore and learn from.","[Norway, Norway, Sweden, Norway, Sweden, Canada, Canada, France, United Kingdom, France, United Kingdom, Canada, Egypt, Egypt, Greece, Greece, Mexico, Mexico, Italy, Italy, Norway, Sweden, Egypt, Greece, Mexico, Italy]",14,1898 +9,"In the heart of Portugal, Jack, a historian, found aged parchments detailing a fascinating relationship with Spain. The parchments spoke of a time when merchants from Portugal would regularly travel to Spain for trade and cultural exchange, hinting at a deeply entwined history between Portugal and Spain. Jack shared this discovery with his colleague, Laura, an anthropologist from Switzerland who was researching similar cultural exchanges. She had observed that Switzerland historically had a close relationship with Italy. She spoke of trade routes and shared cultural practices that had bridged gaps between Switzerland and Italy for centuries. Intrigued, Jack mentioned an old map he'd found which suggested an age-old connection between the United States and Canada. Apparently, during certain historical periods, the borders between the United States and Canada were fluid, with peoples, culture, and trade often transitioning seamlessly. Laura confessed her interest in Asian histories, particularly those of India and Pakistan. She found it fascinating how India and Pakistan, despite their conflicts, shared a deep-rooted cultural and historical bond. She also mentioned the ancient ties between China and Japan, a relationship marked by both cooperation and conflict, with cultural exchanges and wars shaping the relationship between China and Japan. Jack agreed and shared that he was equally fascinated with the shared history of Australia and New Zealand. The indigenous cultures of Australia and New Zealand, he explained, had rich oral histories that spoke of ancestral spirits crossing the sea between the two countries. As the day ended, they both realized how intertwined the world was, united by shared histories and cultural exchanges from Portugal to New Zealand.","[Portugal, Spain, Portugal, Spain, Portugal, Spain, Switzerland, Switzerland, Italy, Switzerland, Italy, United States, Canada, United States, Canada, India, Pakistan, India, Pakistan, China, Japan, China, Japan, Australia, New Zealand, Australia, New Zealand, Portugal, New Zealand]",13,1786 +10,"John, an avid traveler from Canada, had spent his summer exploring the heart of Australia, specifically, the Outback. The vast, arid landscapes of Australia presented a stark contrast to the snow-filled winters of his home in Canada, and he reveled in the difference. He then shared stories of his trip to Brazil, where he fell in love with the vibrant rhythms and the people's warm hospitality. Indeed, Brazil left such a strong impression on him that he visited the country again, this time to explore the dense Amazon rainforest. As John recounted his travels, his friend Sarah, a history buff from the United Kingdom, couldn't help but gush about her trips to Italy and Greece. She explained how she had spent weeks soaking up the culture, history, and mythology of Italy and Greece. Intrigued by Sarah's stories, John revealed his fascination for Northern countries, particularly Norway and Sweden. He cherished his memories of hiking through the scenic landscapes of Norway and the breathtaking fjords of Sweden. Sarah, not to be outdone, discussed her recent visit to Mexico and Cuba. Highlighting the unique colonial architecture of Mexico and the vibrant music scene in Cuba, Sarah couldn't conceal her wanderlust. She ended the conversation by expressing her desire to visit South Korea and Japan. She was particularly interested in the modern cities and ancient temples of South Korea, as well as the unique blend of tradition and technology in Japan. As they parted ways, both agreed to continue exploring and understanding the world, one country at a time.","[Canada, Australia, Australia, Canada, Brazil, Brazil, United Kingdom, Italy, Greece, Italy, Greece, Norway, Sweden, Norway, Sweden, Mexico, Cuba, Mexico, Cuba, South Korea, Japan, South Korea, Japan]",13,1569 +11,"On a balmy day, Thomas from Ireland was engrossed in a book detailing the luscious landscapes of South Africa. The text painted images of South Africa's mesmerizing coastlines and diverse wildlife that had always enchanted Thomas, who had a particular fondness for this unique and captivating land. His fascination for South Africa led him to discuss his interest with his friend Maria, who hailed from Brazil. During their conversation, Maria started reminiscing about her visit to Mexico where she discovered a rich culture steeped in history. There seemed to be a silent agreement that Mexico, with its vibrant traditions and ancient Mayan ruins, was a country that intrigued them both. Maria also revealed her fascination for Argentina, pointing out its dynamic cities and beautiful landscapes. Thomas quickly chimed in, saying he too had always wanted to explore Argentina, enthralled by its history, and was planning a trip soon. The discussion soon veered towards Thomas's recent trip to Belgium, where he was impressed by its medieval towns and gothic architecture. Maria, too, expressed her interest in Belgium, particularly fascinated by the intricate lacework and delicious chocolates. Their conversation then took a turn towards the Far East, with Maria excitedly talking about her unforgettable experiences in Japan. She spoke about the unique mix of tradition and modernity, making Japan a fascinating destination. Thomas, a lover of sushi, agreed and mentioned that Japan, with its rich cultural history and delectable cuisine, was certainly on his bucket list. Filled with a sense of wonder and shared experiences, they parted ways, promising to meet again over a cup of coffee from Colombia.","[Ireland, South Africa, South Africa, South Africa, Brazil, Mexico, Mexico, Argentina, Argentina, Belgium, Belgium, Japan, Japan, Japan, Colombia]",13,1708 +12,"John, a history professor from the United States, had always been fascinated by the ancient civilizations of Egypt and their influence in Greece. He spent considerable time studying how Egypt had shaped the thought processes, cultural practices, and literary works of Greece. His colleague, Laura from Argentina, invited him to visit Argentina and Brazil, since these countries also had rich historical relations. Indeed, Argentina had been greatly influenced by the immigrants from Brazil who had shaped its local culture and traditions. She also spoke of North Korea and South Korea, two oddly paired countries that had multiple common threads in their history. Despite being seen as adversaries, North Korea and South Korea shared a lot of similarities linguistically and culturally. On the other hand, John shared his recent research on India and China, the two enigmatic giants of Asia. He described how India had been swayed by the powerful cultural and historical waves from China over centuries. Both India and China, he narrated, had a long history of philosophical exchanges and cultural learnings. They further discussed Australia and its unusual connections with New Zealand. Both Australia and New Zealand shared a unique bond in terms of natural heritage and sports. The lively chat shifted to Europe, with Laura speaking about her visit to Poland and Ukraine. Laura shared her experiences in Poland and Ukraine which, despite their complicated historical relations, had strong cultural links. They wrapped up their conversation reflecting how every corner of the world, from the United States to Ukraine, was interwoven with intriguing historical connections.","[United States, Egypt, Greece, Egypt, Greece, Argentina, Argentina, Brazil, Argentina, Brazil, North Korea, South Korea, North Korea, South Korea, India, China, India, China, India, China, Australia, New Zealand, Australia, New Zealand, Poland, Ukraine, Poland, Ukraine, United States, Ukraine]",14,1674 +13,"Alice, a renowned historian from Australia, had always been fascinated with the intriguing ancient cultures of Egypt. These cultures of Egypt, as she discovered, had a profound influence on the art of Greece, which was a testament to the exchange of thoughts and ideas between the nations of the past. While studying ancient cultures, Alice met Daniel, a scholar from Sweden, who was equally interested in historical exchanges and was researching on the close bonds between the United Kingdom and Ireland. The United Kingdom and Ireland, Daniel explained, shared a tumultuous but enriched history that shaped the cultural landscape of both the countries. Their discussion led Alice to remember her trip to Argentina, where she was told about the shared history of Argentina and Brazil. The history between Argentina and Brazil, Alice recalled, was marked by both rivalry and camaraderie, which shaped their identities in a distinctive way. Much like the ties between Australia and New Zealand which was defined by geographical proximity and cultural exchanges. Australia and New Zealand, she elaborated, had a dynamic relationship characterized by joint endeavors in several fields. In a similar vein, Daniel shared his findings about Portugal and Spain, two countries with a deep shared history. Portugal and Spain, he explained, have a history of battles and alliances that have changed the course of Europe. With a keen interest in Asian history, Alice narrated her understanding of India and Pakistan, two countries divided by a line but bonded by shared history. India and Pakistan, despite their political differences, she said, have a profound shared cultural heritage and history. The dialogue ended with a discussion about North Korea and South Korea, two nations with an inseparable shared past. North Korea and South Korea, as Alice knew from her readings, were divided by political ideology but shared a common history and culture. This discussion reaffirmed their belief in the interconnectedness of countries, from Australia to Korea, all sharing an intricate weave of histories and cultural exchanges.","[Australia, Egypt, Egypt, Greece, Sweden, United Kingdom, Ireland, United Kingdom, Ireland, Argentina, Argentina, Brazil, Argentina, Brazil, Australia, New Zealand, Australia, New Zealand, Portugal, Spain, Portugal, Spain, India, Pakistan, India, Pakistan, North Korea, South Korea, North Korea, South Korea, Australia]",15,2116 +14,"John, an enthusiastic historian from Norway, recently uncovered a document referencing a series of secret expeditions from Norway to Russia during the time of the Vikings. Intriguingly, these expeditions didn't go to Russia alone but also to Ukraine, suggesting a robust trading network in the region during that historical period. The document also highlighted the close cultural connections between Russia and Ukraine, despite their turbulent history. Excited, John shared his findings with his colleague Sarah, an anthropologist from Canada, who was equally fascinated. Sarah, in turn, introduced John to her recent work on the deep-rooted exchanges between Canada and the United States. This work illustrated the complex interweaving of cultural, political, and economic ties between Canada and the United States, dating back hundreds of years. She also mentioned a paper she had read about the ancient links between ancient civilizations in Peru and Mexico. The research suggested that the civilizations in Peru and Mexico, although separated by geography, shared similar cultural practices and beliefs, likely due to extensive trade networks. John then mentioned his own trip to Australia, where he had uncovered the historical connection between indigenous peoples of Australia and New Zealand. These connections, often overlooked in history, highlighted the shared heritage and extensive trade between Australia and New Zealand. Sarah shared her own travel experience to China, where she had studied the historical relationships between China and Japan. Despite their turbulent history, she explained that China and Japan both had a rich cultural exchange that influenced their arts, philosophy, and customs. To their surprise, they realized that despite being from different continents - Norway and Canada - they both shared a fascination for exploring interconnected global histories.","[Norway, Norway, Russia, Russia, Ukraine, Russia, Ukraine, Canada, Canada, United States, Canada, United States, Peru, Mexico, Peru, Mexico, Australia, Australia, New Zealand, Australia, New Zealand, China, China, Japan, China, Japan, Norway, Canada]",13,1894 +15,"James, an avid traveler from Australia, had just returned from a trip to Argentina where he had been fascinated by the cultural and historical similarities between Argentina and Brazil. He had found that Argentina and Brazil shared not just physical borders, but a rich and intertwined past as well, bringing about a complex yet beautiful tapestry of shared cultures. He excitedly shared these stories with his friend, Lisa, from Canada, who herself had an interesting experience from her visit to Mexico. Lisa said that, during her travels in Mexico, she had found a deep-rooted connection between Mexico and the United States. Stories of migration, trade, and cultural exchanges between Mexico and the United States were embedded in the very spirit of the two nations. James then brought up his forthcoming trip to Europe, focusing on Spain and Portugal. He hoped to explore the interconnected history of Spain and Portugal, two nations that were not just geographically close but historically linked with an indelible bond of shared kings, wars, and cultural influences. Lisa, intrigued by his plan, shared her own European experiences, particularly her visit to Poland and Ukraine. Lisa shared how she was deeply moved by the shared history and resilient spirit of both Poland and Ukraine, two countries that had seen their share of turmoil yet maintained their unique identities. Finally, they discussed their plans to visit Asia, with China and Japan being at the top of their list. They were both intrigued by the complex relations between China and Japan, two nations with ancient civilizations and tumultuous histories. As they sipped their coffee, they marveled at the fascinating tapestry of global history, from Argentina to Japan.","[Australia, Argentina, Argentina, Brazil, Argentina, Brazil, Canada, Mexico, Mexico, Mexico, United States, Mexico, United States, Spain, Portugal, Spain, Portugal, Poland, Ukraine, Poland, Ukraine, China, Japan, China, Japan, Argentina, Japan]",12,1743 +16,"Emily was a well-known archaeologist whose work had taken her across the globe, from the ancient pyramids of Egypt to the uncharted jungles of Brazil. Her research had revealed hidden connections between cultures across time, such as the shared aspects of ancient rituals between Egypt and Greece, a connection that remained a mystery. Meanwhile, her expeditions in Brazil had led her to uncover a long-lost civilization that showed astonishing similarities with ancient societies in Argentina. Brazil and Argentina, despite being geographically close, had surprisingly similar, yet distinct, ancient civilizations. Emily's work had also taken her to Ireland, where she examined the ancient Celtic ruins and unearthed links between Ireland and the United Kingdom. The level of similarity between the ancient structures and culture of Ireland and the United Kingdom was fascinating, providing a deeper understanding of their shared history. Emily's travels next took her to India, where she studied ancient Sanskrit manuscripts, uncovering connections between India and China. It was surprising to find so many parallels between the ancient traditions of India and China, hinting at a shared past. Emily's fascination with the ancient past didn't stop at historical sites. She had previously spent time in Japan, where she had delved into the historical links between Japan and South Korea. She discovered that Japan and South Korea had a shared past that predated the modern political ties. Lastly, Emily had traveled to Mexico, where she had explored ancient Aztec structures and found cultural links between Mexico and Peru. Mexico and Peru, although separated by distance, had shared striking similarities in their ancient civilizations. The more Emily traveled and studied these nations, the more she understood that countries from Egypt to Peru had intertwined and complex shared histories.","[Egypt, Brazil, Egypt, Greece, Brazil, Argentina, Brazil, Argentina, Ireland, Ireland, United Kingdom, Ireland, United Kingdom, India, India, China, India, China, Japan, Japan, South Korea, Japan, South Korea, Mexico, Mexico, Peru, Mexico, Peru, Egypt, Peru]",14,1895 +17,"In the grand museums of Italy, visitors are often amazed by the rich collection of artifacts that tell a story of Italy's vibrant past. Among these artifacts are rare gems and stones that were once believed to have been imported from Egypt and were a sign of Italy's prosperous trade with Egypt. Speaking of gemstones, Jim remembered his visit to South Africa, where he had learnt about diamond mining. As he discovered, diamonds were not only mined in South Africa, but also in neighboring Zimbabwe. The vast diamond mines in both South Africa and Zimbabwe are a testament to the abundant mineral wealth these countries hold. While discussing his travels, Jim's friend Lisa spoke of her fascinating visit to China. She recalled how she was in awe of the Great Wall of China, which demonstrated the country's rich history and the military might of ancient China. While in China, she also learned about the country's historical connections with North Korea. It seems China and North Korea have shared cultural and political ties for centuries. Recalling her travels, Lisa mentioned her trip to Ireland where she had discovered the ancient history of the Celtic people. She also pointed out that the connection between Ireland and the United Kingdom is not just geographical but also deeply historical. The shared history and cultural exchanges between Ireland and the United Kingdom have shaped the identities of both nations. Reflecting on their conversations, they both marveled at the fascinating historical and cultural links between countries like Italy and Egypt, South Africa and Zimbabwe, China and North Korea, and Ireland and the United Kingdom.","[Italy, Italy, Egypt, Italy, Egypt, South Africa, South Africa, Zimbabwe, South Africa, Zimbabwe, China, China, China, China, North Korea, China, North Korea, Ireland, Ireland, United Kingdom, Ireland, United Kingdom, Italy, Egypt, South Africa, Zimbabwe, China, North Korea, Ireland, United Kingdom]",13,1654 +18,"In a small cafe in Norway, Thomas and Maggie were discussing their travels around the world. Thomas started narrating his adventures in Iran, mentioning how he had been fascinated by the ancient architecture and the rich history of Iran. He spoke of the intricate details of Persian carpets from Iran and the fragrant aroma of the local cuisine. Maggie, in turn, shared her experiences from her travels to Poland. She reminisced about the charm of the old towns in Poland and the friendly locals who generously shared details about the incredible history of Poland. Intrigued, Thomas asked about her journeys to South Korea. He was particularly interested in the blend of modern and traditional cultures in South Korea. Maggie described how the ancient palaces in South Korea coexisted with towering skyscrapers and how the tech-savvy people of South Korea were also fiercely proud of their rich heritage.Thomas then spoke about his time in Zimbabwe. He described the stunning wildlife and the warm hospitality of the people in Zimbabwe. He fondly remembered the local markets in Zimbabwe, vibrant with color and full of life. Maggie then mentioned her trip to Mexico. She had been impressed by the lively music, delicious foods, and colorful festivals of Mexico. She shared that it was in Mexico where she had learned about the Day of the Dead, a unique tradition of Mexico.They ended their conversation on Australia, where they had both traveled. They fondly remembered the serene landscapes and the hospitable locals of Australia. They narrated tales of their adventures in the outback of Australia, reminiscing about the unique flora and fauna that Australia is known for. As they spoke, they marveled at how travel had allowed them to connect with diverse cultures, from Iran to Australia, enriching their lives in unimaginable ways.","[Norway, Iran, Iran, Iran, Poland, Poland, Poland, South Korea, South Korea, South Korea, South Korea, Zimbabwe, Zimbabwe, Zimbabwe, Mexico, Mexico, Mexico, Mexico, Australia, Australia, Australia, Australia, Iran, Australia]",18,1838 +19,"On a global excursion, John's first stop was at Argentina, where he learned about the country's fascinating history and its profound influence on Brazil. He discovered that Argentina and Brazil had a long-standing relationship, marked by cultural exchanges, shared regional cuisine, and a fervent football rivalry. From South America, he made his way to the Middle East, where he was drawn to the historical sites of Iran. He spent a few days in Iran, exploring the ancient cities and learning about the country's many cultural layers, which he found were equally respected and mirrored in neighboring Iraq. Next, he traveled to Ireland, a country known for its lush landscapes and rich folklore that reminded him of the verdant hills and vibrant culture of its neighbour, the United Kingdom. Struck by the similarities, he found that Ireland and the United Kingdom shared deep historical ties, language influences, and even traditional music. After Ireland, he ventured into the heart of Europe, finding himself in the charming lanes of Belgium. The intricate architecture and delicate cuisine of Belgium enticed him, and they seemed all the more familiar when he moved on to the Netherlands. He learned that Belgium and the Netherlands had shared monarchies and currencies in the past, highlighting a linked history. From there, his journey took him halfway across the globe to South Korea. The bustling cities and fascinating traditions of South Korea captivated him, and he noticed many similarities when he crossed the border into North Korea. Despite the political differences, he found cultural threads that connected South Korea and North Korea, from food to language. Looking back on his travels, John was intrigued by the deep-rooted ties between these pairs of countries: Argentina and Brazil, Iran and Iraq, Ireland and the United Kingdom, Belgium and the Netherlands, and South Korea and North Korea.","[Argentina, Brazil, Argentina, Brazil, Iran, Iran, Iraq, Ireland, United Kingdom, Ireland, United Kingdom, Ireland, Belgium, Belgium, Netherlands, Belgium, Netherlands, South Korea, South Korea, North Korea, South Korea, North Korea, Argentina, Brazil, Iran, Iraq, Ireland, United Kingdom, Belgium, Netherlands, South Korea, North Korea]",13,1913 +20,"John, an archaeologist from Canada, always had an intrigue for the mystery that surrounded the ancient civilizations of Mexico. From the Aztec temples to Mayan ruins, Mexico had always held a special place in his heart. On one of his travels to Mexico, he stumbled across a significant finding that led to the revelation of a forgotten connection between Peru and Mexico. The ruins unveiled a history of trade and cultural exchange between Peru and Mexico, which had faded away with time. John was intrigued by this deep-rooted connection between Mexico and Peru, which prompted him to delve deeper into other such unexplored historical ties. During his research, he came across references to a trade route between Italy and Greece. As per the ancient texts, Italy and Greece had a deep connection, which was not only reflected in their foods but also in their architectural style. This connection between Italy and Greece brought a new perspective to the way he viewed these countries. Further in his research, he discovered ties between Russia and Ukraine. Ukraine had a prolonged history of being under Russia's dominion, which greatly influenced Ukraine's culture, language, and political structure. The connection between Russia and Ukraine was something that had always been known but was never deeply explored. The relationship between Australia and New Zealand also caught John's attention. The proximity and shared history between Australia and New Zealand, coupled with the similarities in their culture and people, fascinated him. His research on Australia and New Zealand unveiled how these two countries had so much shared history, yet they had maintained their distinct identities. The deeper he delved into the history between these countries, the more he was amazed by the interconnectedness of the world. The relationships between Canada and Mexico, Italy and Greece, Russia and Ukraine, and Australia and New Zealand were examples of how the world was intertwined historically and culturally.","[Canada, Mexico, Mexico, Mexico, Peru, Mexico, Peru, Mexico, Mexico, Peru, Italy, Greece, Italy, Greece, Italy, Greece, Russia, Ukraine, Ukraine, Russia, Ukraine, Russia, Ukraine, Australia, New Zealand, Australia, New Zealand, Australia, New Zealand, Canada, Mexico, Italy, Greece, Russia, Ukraine, Australia, New Zealand]",16,2010 +21,"Emma, a history teacher, recently visited Egypt for an archeological expedition where she unearthed coins from the ancient Egypt era bearing the emblem of Greece. These coins, she learnt, were a solid proof of a powerful alliance between Egypt and Greece during the period of Ptolemaic Pharaohs. Intrigued by her findings, her colleague David, a history enthusiast from Canada, stressed upon a similar historical connection between Canada and the United States. He explained that despite being two separate nations today, Canada and the United States share a common history of colonial times and have closely influenced each other's cultural development. Emma further shared her experience of visiting the breath-taking ruins of ancient Rome in Italy, where she had found scrolls mentioning strong trade relations between Italy and Spain. These scrolls showed that during the Roman era, Italy and Spain had a strong bond based on mutual respect and trade. David smiled and shared his own experience of visiting China, where he found evidence of a deep-rooted bond between China and Japan. During his tour in China, he saw ancient scrolls that depicted the cultural and philosophical exchanges between China and Japan. These exchanges played a crucial role in the development of their unique, yet interconnected, cultural identities. Intrigued by each other's narratives, Emma and David marvelled at how distant countries such as Greece and Japan, and closer ones like Canada and the United States, or Italy and Spain, were linked. They concluded that despite geographical boundaries, the world has always been a single interwoven tapestry of connected histories and cultures.","[Egypt, Egypt, Greece, Egypt, Greece, Canada, Canada, United States, Canada, United States, Italy, Italy, Spain, Italy, Spain, China, China, Japan, China, China, Japan, Greece, Japan, Canada, United States, Italy, Spain]",11,1675 +22,"In his travels, John had discovered the rich biodiversity of Australia, with its unique flora and fauna unlike anywhere else on earth. Australia's landscapes, from its vast deserts to lush rainforests, were a testament to the country's geographical diversity. John's next destination was Argentina, a country that greatly contrasted with the landscapes of Australia. Argentina with its sprawling Pampas grasslands, snow-capped Andes, and vibrant cities had left an indelible impression on John. He found himself comparing the cultural richness of Argentina with that of neighboring Brazil. The lively rhythms of Brazil, its stunning architecture, and its multicultural society were a sharp contrast to the quieter, more rural beauty of Argentina. This reminded him of his visit to Ireland and its relationship with the United Kingdom. Ireland, with its breathtaking landscapes and charming towns, stood in marked contrast to the United Kingdom, a country known for its regal history and bustling cities. The cultural difference between Ireland and the United Kingdom was as fascinating to him as the contrast between China and Japan. China, with its vast history and iconic landmarks, fascinated him just as much as Japan, a country blending tradition with modernity in an intricate dance. His mind then wandered to his time spent in Canada and its southern neighbor, the United States. He had marveled at the similarities and differences in culture, geography, and history of Canada and the United States. Engulfed in his memories, John realized how every journey had expanded his understanding and appreciation of the world's diversity.","[Australia, Australia, Argentina, Australia, Argentina, Argentina, Brazil, Brazil, Argentina, Ireland, United Kingdom, Ireland, United Kingdom, Ireland, United Kingdom, China, Japan, China, Japan, Canada, United States, Canada, United States]",13,1638 +23,"Lucas, an avid traveler from Canada, had recently returned from his excursion in Norway. In Norway, he had heard tales of ancient Vikings, their voyages and their mysterious connection with Ireland. Intriguingly, these legends suggested that some of these Vikings had not only raided but settled in parts of Ireland, influencing its early history. Lucas was fascinated by these stories and shared them with his friend Sofia, who hailed from Brazil. Sofia, fascinated, narrated her own experiences in Mexico where she had learned about the historical links between her native Brazil and Mexico. Both Brazil and Mexico, despite their geographical distance, shared legends of ancient gods and mythical creatures. Intriguingly, she mentioned the tales from New Zealand she had heard during her travels. Similar to Mexico and Brazil, New Zealand had its share of mythologies, but what fascinated her was the more modern link between the two regions - New Zealand and Australia. New Zealand, just like Australia, was known for its wild, untouched landscapes and unique wildlife. Their conversation then turned to the memories of her trip to Egypt. In Egypt, Sofia had learned about the once powerful empire’s relations with its neighbor Israel. The two countries - Egypt and Israel - had an intricate, complex history relationship spanning over thousands of years. Shifting gears, Lucas then shared his experiences from Vietnam, particularly the rich historical connections between Vietnam and its neighbor China. Just like Israel and Egypt, Vietnam and China had their share of ancient histories and conflicts, shaping the countries as they were today. Their exchange of travel tales and cultural learnings proved to be a fascinating journey itself, moving from Canada to China, and witnessing the rich, interwoven histories of the world.","[Canada, Norway, Norway, Ireland, Ireland, Brazil, Mexico, Brazil, Mexico, Brazil, Mexico, New Zealand, Mexico, Brazil, New Zealand, New Zealand, Australia, New Zealand, Australia, Egypt, Egypt, Israel, Egypt, Israel, Vietnam, Vietnam, China, Israel, Egypt, Vietnam, China, Canada, China]",15,1833 +24,"Joan, a historian from the United States, stumbled upon an ancient journal detailing the age-old trade relations between Canada and the United States. She was intrigued to find how inhabitants from both Canada and the United States took perilous journeys across the border to exchange goods and knowledge. Keen to share this, she contacted her friend Lars, a fellow historian from Sweden, who had also been studying the ties between Norway and Sweden for years. Based on his research, he found that the Vikings from both Norway and Sweden embarked on several maritime expeditions together, revealing the profound connections between these two nations. Their conversation shifted towards the East when Lars shared his fascination with the historical links between China and Japan. He pointed out that despite their conflicting histories, China and Japan had significant cultural influences on each other, dating back to centuries. Joan, intrigued by Asia, mentioned her recent trip to South Korea, where she learned about the age-old diplomatic and cultural links between North Korea and South Korea. Despite the current political divide, North Korea and South Korea share deep cultural roots that could be traced back to ancient dynasties. This reminded Lars of his journey to Israel, where he gained insight into the complex history between Israel and Iran. The journal he had come across in Israel cited instances from the past when trade and diplomatic relations between Israel and Iran were prevalent. They ended their conversation reflecting on the interconnectedness of nations, from Canada to Iran, how despite their distinct identities, their paths had intertwined in the annals of history.","[United States, Canada, United States, Canada, United States, Sweden, Norway, Sweden, Norway, Sweden, China, Japan, China, Japan, South Korea, North Korea, South Korea, North Korea, South Korea, Israel, Israel, Iran, Israel, Israel, Iran, Canada, Iran]",11,1698 +25,"Robert, an avid bird watcher from Canada, packed his bags for his most awaited trip to Brazil. He aimed to explore the biodiversity of Brazil, especially the bird species endemic to the region. His trip to Brazil was an eye-opener as he marveled at the varied and vibrant birds he saw, some of which were critically endangered. After a successful expedition in Brazil, his next stop was Australia. He was thrilled to observe the distinctive bird species in Australia, such as the Emu and the Kookaburra, that make Australia a paradise for bird watchers. Australia, he discovered, also had a significant number of migratory birds that added to its rich diversity. His next destination was South Africa, a country known for its unique fauna. He spent several days in South Africa, amazed by the incredible diversity and uniqueness of its bird species. Not only were the birds in South Africa unique, but also the landscape was breathtaking. From South Africa, Robert set off for his next adventure in Vietnam. He discovered that Vietnam bore a diverse range of habitats that are home to various bird species. The bird species in Vietnam, he concluded, make the country a bird watcher's paradise. His final stop was France, known for its rich cultural heritage and gastronomy. In France, he observed a range of fascinating birds, each species as unique and captivating as the country itself. France, he noted, is not only a treasure trove of historical and cultural richness but also holds a significant number of bird species. As he reflected on his trips from Canada to France, Robert felt grateful for these experiences that allowed him to appreciate the diverse bird species each country had to offer.","[Canada, Brazil, Brazil, Brazil, Brazil, Australia, Australia, Australia, Australia, South Africa, South Africa, South Africa, South Africa, Vietnam, Vietnam, Vietnam, France, France, France, Canada, France]",16,1702 +26,"John, an avid traveler from Canada, had recently returned from a remarkable trip to Australia. During his time in Australia, he was introduced to the country's ancient aboriginal culture and traditions, which had a profound impact on him. His fascination grew so much that he decided to share his experiences with his childhood friend, Lucy, who was living in the United States. Lucy, intrigued by John's experiences in Australia, shared stories of her own travels to Mexico. Mexico, she said, was a country rich in history, boasting enigmatic pyramids and ancient civilizations that rivalled even those of Egypt. She recounted her adventures in Mexico, detailing the vibrant colors, the cuisine, and the generosity of the locals she had encountered. This conversation led John to recall his journey to Russia, where he had been especially fascinated by the grand palaces and the resilient spirit of the local people. Russia, he said, was a country that held countless stories in its vast stretches of land. Lucy, listening intently, mentioned her expedition to South Africa. It was in South Africa where she had seen the majestic African wildlife and met the diverse communities that called the nation home. She went on about her time in South Africa, noting how the country's challenges were as immense as its inspiring landscapes. John, in response, shared his experience in Japan. He talked about the harmonic blend of Japan's past and future, its cherry-blossom-lined streets, and its bustling urban areas. Japan, he concluded, was a country that treasured both its history and its future. Sharing their adventures, they reveled in the wonder of exploration and the rich diversity of cultures from Canada to Japan.","[Canada, Australia, Australia, United States, Australia, Mexico, Mexico, Egypt, Mexico, Russia, Russia, South Africa, South Africa, South Africa, Japan, Japan, Japan, Canada, Japan]",15,1719 +27,"Lucia, an adventurous globetrotter from Argentina, had an insatiable curiosity about the ancient connections between Argentina and Brazil. She had heard tales of a secret path between Argentina and Brazil that the indigenous people used for trade and escape during conflicts. Her interest piqued, she embarked on a journey to South Korea to meet an old historian who specialized in ancient globalization. The historian shared with her intriguing stories about the ancient relationship between South Korea and China, involving wars, trade, and cultural exchanges. Specifically, he highlighted stories of South Korea sending tributary missions to the court of China, deepening her understanding of the intricacies of ancient relations. These stories from South Korea and China fascinated Lucia, prompting her to plan her next adventure to Norway. In Norway, she met with a renowned archaeologist who offered insights into the historical ties between Norway and Sweden. These ranged from the Viking ages, when Norway and Sweden were often in conflict, to the union period when they were under the same monarch. Lucia couldn't help but connect these inter-country relationships to those between Egypt and Israel. She had heard that Egypt and Israel had shared a tumultuous history marked by conflicts and peace treaties. As she delved into the historical records of Egypt and Israel, she found out about the fascinating dynamics of their past relations, painting a complex picture of friendship, rivalry, and everything in between. Reflecting on her global expeditions, Lucia mused about the rich and diverse histories of countries from Argentina to Israel and how their interconnections form a global tapestry of human civilization.","[Argentina, Argentina, Brazil, Argentina, Brazil, South Korea, South Korea, China, South Korea, China, South Korea, China, Norway, Norway, Norway, Sweden, Norway, Sweden, Egypt, Israel, Egypt, Israel, Egypt, Israel, Argentina, Israel]",12,1729 +28,"It was a bustling afternoon in the local market of South Korea, as Liam, a historian from Australia, was talking to a shopkeeper about the local lore. The shopkeeper shared tales about the history of South Korea and its cultural exchange with Russia, their distant neighbor. He said that it was not uncommon for traders from South Korea to travel to Russia for trade, despite the geographical distance and harsh climatic conditions. Intrigued, Liam shared this story with his friend, Emma, who was in Japan, conducting some anthropological research. Emma narrated her encounters in Japan, about the deep cultural influences from China, which had significantly shaped Japan in the past. Both Japan and China, she said, had a rich history of cultural exchange, ranging from art and literature to philosophy and religion. The conversation reminded Liam of his research in Argentina, where he had discovered similar historic ties with Brazil. He described how Argentina and Brazil, in spite of political differences, have shared a rich cultural and historical connection since ancient times. Emma, in response, mentioned her time in Mexico, reminiscing about the cultural similarities she found with its neighbor, the United States. Both Mexico and the United States, she claimed, had histories strongly intertwined by migrations, trade, and shared cultural influences. It fascinated them both how far apart countries like Australia and the United States, or close neighbors like Japan and China, were all threads in the intricate tapestry of global history.","[South Korea, Australia, South Korea, Russia, South Korea, Russia, Japan, Japan, China, Japan, Japan, China, Argentina, Brazil, Argentina, Brazil, Mexico, United States, Mexico, United States, Australia, United States, Japan, China]",11,1554 +29,"Eva, an historian from Poland, was working on uncovering the story of a secret society from Ukraine. This society, according to the chronicles she found in Poland, was said to have originated from Ukraine and established a network of operations in various European nations. Intrigued, she decided to collaborate with her colleague, Adam, from Norway who specialized in societies like these. Adam was fascinated with the historical connection between Norway and Sweden, often speaking about the Viking roots that influenced both nations. He believed that the society from Ukraine may have also touched Norway and Sweden, given their close geographical proximity and shared cultural elements. Their research got a surprising twist when they discovered an old map, possibly hinting at the society's reach to the United States. Detailed around the map were accounts of clandestine operations carried out by the society, extending from the United States to Canada. The United States and Canada, owing to their geographical closeness and shared history, seemed like a plausible area of influence for this secret society. Their bond deepened when Eva shared her research about the society's ties with Argentina. She postulated that members from Argentina and Brazil could have been part of the society, due to certain cryptic symbols found in the ruins of both Argentina and Brazil. As their work progressed, they stumbled upon clues pointing towards the society's presence in the Middle East - specifically Iraq and Iran. It seemed, as confirmed from records found in Iraq, that through a series of underground networks, the society managed to infiltrate regions as far as Iran. As they delved deeper, they marveled at the society's widespread reach, from Poland to Iran, their narrative spun across continents and centuries to create an enthralling tale of history.","[Poland, Ukraine, Poland, Ukraine, Norway, Norway, Sweden, Ukraine, Norway, Sweden, United States, United States, Canada, United States, Canada, Argentina, Argentina, Brazil, Argentina, Brazil, Iraq, Iran, Iraq, Iran, Poland, Iran]",13,1860 +30,"John, an eminent historian from South Africa, was intrigued by the ancient tribes of Australia, whose unique cultural practices presented a rich historical tapestry. He observed a striking similarity between the indigenous cultures of Australia and South Africa, despite being geographically distant. His fascination led him to the United Kingdom, where he dove into the country's vast archives. Here, he unearthed records that illustrated the historical interactions between the United Kingdom and Australia during the colonial era. His research led him to Canada, drawn to the shared colonial histories between Canada and the United Kingdom. Interestingly, both Canada and the United Kingdom had experienced similar cultural transformations post-independence. His next stop was Brazil, a country known for its diverse cultural influences. He found intriguing parallels between the indigenous cultures of Brazil and Australia, opening new vistas for his research. Meanwhile, Maria, a sociologist from Poland, was exploring the unique cultural fabric of Ukraine. Her research highlighted the historic ties between Poland and Ukraine, two countries that shared borders and histories. Her work took her to the United States, a melting pot of cultures, where she discovered tales of immigration from Poland that heralded a new chapter in the history of the United States. She also studied the close political connections between the United States and Ukraine, unravelling the intricate web of international relations. Together, John in South Africa and Maria in Poland, though miles apart, were uncovering the hidden threads of our global tapestry, from Australia to Ukraine, revealing how history weaves us all together.","[South Africa, Australia, Australia, South Africa, United Kingdom, United Kingdom, Australia, Canada, Canada, United Kingdom, Canada, United Kingdom, Brazil, Brazil, Australia, Poland, Ukraine, Poland, Ukraine, United States, Poland, United States, United States, Ukraine, South Africa, Poland, Australia, Ukraine]",13,1718 +31,"As a renowned anthropologist, Alice had journeyed to every continent, but her heart always returned to India. Within India, she had explored the lively markets, sacred temples, and remote villages, each more captivating than the last. After years of fieldwork in India, she had recently turned her attention to the musical traditions of Iran. Mesmerized by the distinctive melodies and rhythms, she found in Iran an entirely different cultural fabric woven with time. In Iran, she learned about the ancient tradition of storytelling through music, echoing the enchanting tales she had heard in China. The folk tales from China often shared elements with those from Vietnam, a country she was now eager to explore. She recalled her visits to Vietnam where she had discovered a vibrant culture rich in history and tradition. Her journeys took her from India to Vietnam but it was the deep connections between the people that fascinated her the most. Drawn by art and culture, she planned to spend her next summer in France exploring the local museums. In France, she hoped to uncover links to the artistic movements in Italy. While Italy was renowned for its Renaissance art, she found that France and Italy shared a mutual influence in the world of impressionist art. After France, Italy was next on her list. Alice had always been enchanted by the history of Italy, which was steeped in art, architecture, cuisine, and music. Having studied the cultural links between France and Italy, she was also eager to explore the connection between the United Kingdom and Ireland. She had read about the shared history, the shifting boundaries, and intertwined cultures of the United Kingdom and Ireland. As her thoughts wandered from the bustling streets of India, through the rhythmic heart of Iran, and over to the picturesque landscapes of Italy, her mind spun with anticipation for what the future held in Ireland. Each journey fuelled her curiosity and deepened her understanding, as she followed the intricate web of culture and history that spanned from India to Ireland.","[India, India, India, Iran, Iran, Iran, China, China, Vietnam, Vietnam, India, Vietnam, France, France, Italy, Italy, France, Italy, France, Italy, Italy, France, Italy, United Kingdom, Ireland, United Kingdom, Ireland, India, Iran, Italy, Ireland, India, Ireland]",17,2069 +32,"Tom, a history scholar in the United Kingdom, had always been enraptured by tales of bygone eras, particularly those involving trade and cultural exchange. One day, he stumbled upon a curious old map from Iraq. This map documented ancient trade routes between Iraq and Iran, revealing a deep sense of camaraderie between these historic rivals. Excited by this discovery, he shared these maps with his friend, Carla, in the United States, who was an anthropologist researching the cultural influences in North America. Carla was excited to tell him about her recent findings about the interactions between Canada and the United States, specifically during the times of the fur trade. She mentioned how the United States and Canada had shared not just borders, but histories, economies, and even conflicts. The exchange of ideas triggered Tom's memory about Australia's rapport with New Zealand, as he had once read about their shared history in an old manuscript. He told Carla about this, noting how Australia and New Zealand had fought together in wars, pioneered in the sheep farming industry, and even shared a similar passion for rugby. Carla reciprocated the excitement and brought up her research on South Korea and Japan, detailing the cultural give-and-take between the two East Asian nations. While there were numerous historical conflicts between South Korea and Japan, there was also an undeniable exchange of ideas, trends, and even cuisines. Their conversation took a detour to Europe, specifically France and Italy, as Tom remembered the documented cultural interactions he had studied. Here, France and Italy, despite being known for their unique contributions to art and cuisine, had shared a long history of influences on each other. Their discussion made them reflect on the interconnectedness of nations, from the United Kingdom to Italy, and how cultural exchanges made the world a tapestry of shared histories.","[United Kingdom, Iraq, Iraq, Iran, United States, Canada, United States, United States, Canada, Australia, New Zealand, Australia, New Zealand, South Korea, Japan, South Korea, Japan, France, Italy, France, Italy, United Kingdom, Italy]",13,1931 +33,"On a summer vacation, Jane, an archeology enthusiast from the United Kingdom, decided to embark on a journey to Egypt to explore the mystical pyramids. This fascination had been ignited by her reading about the ancient civilizations of Egypt, specifically the Pharaohs and their majestic reign. She also held a deep interest in the historical ties between the United Kingdom and India during colonial times, drawn by the cultural exchanges and conflicts that moulded both nations. Her journey to India was transformative, as she discovered the myriad influences from ancient civilizations like China that had left a profound impact on India's rich tapestry of history. Captivated by these transboundary influences, Jane thought of her friend Larry, a historian from Canada, who had done extensive research on trade relations between China and North Korea. According to Larry, China and North Korea, despite their political differences, share a vibrant history of trade and mutual influences, which he discovered during his visits. This reminded Jane of her trip to Argentina, where she learned about the historical relations between Argentina and Brazil. She was intrigued by how Argentina and Brazil, despite their geographical proximity, had distinct cultural identities interwoven with shared histories. This led her to envisage her next destination, the quaint and picturesque country of Norway, known for its ties with Sweden. Norway and Sweden, she knew, had a shared history as well as a unique cultural differentiation which she was excited to experience firsthand. As she wandered through the streets of Norway, Jane couldn't help but think about her childhood trip to Australia and its relations with New Zealand. The way Australia and New Zealand have constantly influenced each other, she reflected, was a testament to the connections forged by sharing a region. Her adventure affirmed to Jane that despite distances, countries from Egypt to Australia are bound by shared histories and cultural reciprocities.","[United Kingdom, Egypt, Egypt, United Kingdom, India, India, China, India, Canada, China, North Korea, China, North Korea, Argentina, Argentina, Brazil, Argentina, Brazil, Norway, Sweden, Norway, Sweden, Norway, Australia, New Zealand, Australia, New Zealand, Egypt, Australia]",13,2021 +34,"In her recent journey, Lisa, an adventurous traveler from the United States, was fascinated by the similarities she noticed between indigenous art forms from Australia and New Zealand. She found that story-telling through art was a common practice among the native people of both Australia and New Zealand, a captivating way to pass down their rich cultural heritage through generations. Intrigued by this, she contacted her good friend, Robert, who had spent many years studying and exploring both South Africa and Kenya. Robert told her about the strong tribal culture in South Africa and Kenya, where art was not just an expression, but a way of life. He also shared heartwarming stories about his travels through the lesser-known parts of India and Pakistan. Robert explained that despite the political differences, India and Pakistan shared a rich tapestry of history and culture that was evident in their food, music, and traditional wear. Interested in this common cultural thread, Lisa recalled her experiences in Portugal and Spain, how the architecture, music, and food in both Portugal and Spain were influenced by centuries of shared history. Then, she asked Robert about his travels to North Korea and South Korea. Robert shared his observations about North Korea and South Korea, how despite the division, the shared roots reflected in their traditions, language, and festivals. Lisa then shared her memories of her trip to Brazil and Argentina. She marveled at how the indigenous cultures of both Brazil and Argentina had shaped vibrant festivals, music, and dance that were celebrated with great fervor. In the end, they both agreed that the cultures, traditions, and histories of countries from Australia to Argentina were beautifully intertwined, forming an intricate tapestry of shared human experiences.","[United States, Australia, New Zealand, Australia, New Zealand, South Africa, Kenya, South Africa, Kenya, India, Pakistan, India, Pakistan, Portugal, Spain, Portugal, Spain, North Korea, South Korea, North Korea, South Korea, Brazil, Argentina, Brazil, Argentina, Australia, Argentina]",12,1823 +35,"One evening, Sarah, an archaeologist from Norway made a surprising discovery about ancient trade routes between Sweden and Norway. As per her research, the artifacts that were found in Norway were identical to those in Sweden, indicating a deep-rooted cultural connection between Sweden and Norway. This piqued the interest of her colleague, James, who was from Canada. He had been researching the indigenous tribes of Canada and found many similarities with tribes from his neighboring country, the United States. James had always been interested in the historical ties between Canada and United States, and his study further confirmed the age-old connections between the two countries. Upon hearing James's story, Sarah shared a fascinating anecdote from her travels in Portugal. She recalled how locals loved to tell the tale of the shared history between Spain and Portugal. Her anecdotes about Spain and Portugal echoed the same sense of shared culture and past, just like in the case of Norway and Sweden, and Canada and United States. Their conversation reminded James of his stay in South Korea, where he had learned about the close relationship between North Korea and South Korea, despite their current political divide. He recalled stories about the shared history of North Korea and South Korea, whose deep-seated cultural ties transcended political boundaries. Sarah, who had been to Australia, reciprocated with her own experiences of the bond between Australia and New Zealand. She described how, despite geographical separation, Australia and New Zealand shared a unique camaraderie and close historical ties. As they exchanged stories, their conversation moved to South Africa and its various connections with its neighbouring country, Zimbabwe. Sarah shared stories she had heard about the intricate bond between South Africa and Zimbabwe, showcasing the age-old interactions between these two nations. It left them both reflecting on the timeless bonds that connect nations across the world, from Norway to Australia, Canada to Zimbabwe, and all the countries in between.","[Norway, Sweden, Norway, Norway, Sweden, Sweden, Norway, Canada, Canada, United States, Canada, United States, Portugal, Spain, Portugal, Spain, Portugal, Norway, Sweden, Canada, United States, South Korea, North Korea, South Korea, North Korea, South Korea, Australia, Australia, New Zealand, Australia, New Zealand, South Africa, Zimbabwe, South Africa, Zimbabwe, Norway, Australia, Canada, Zimbabwe]",15,2090 +36,"My friend, Alex from Peru, once recounted his journey to Argentina where he learned about the strong cultural ties between Argentina and Brazil due to their shared history. He spoke fondly of his time in Argentina and Brazil, marveling at the similar music, dance, and culinary traditions that seamlessly bridged the borders of these countries. It reminded me of a documentary I'd watched about the ancient Silk Road that spanned across Iran and China. It touched upon the shared historical narratives of Iran and China, highlighting how goods, ideas, and culture flowed between these two countries for centuries. Intriguingly, the documentary also brought up some parallels between this eastern route and the vibrant exchange between Italy and France during the Renaissance. The cultural and intellectual bonds between Italy and France were indeed profound, just as the resilient trade relations that existed between the United States and Canada. The United States and Canada, apart from their geographical proximity, shared an economic bond that strongly influenced their policies and international standing. Similarly, the ties between Australia and New Zealand shed light on their gestalt identity in the Pacific region. Despite their unique characteristics, Australia and New Zealand were often viewed as a single entity due to their remarkably similar backgrounds in terms of culture, language, and colonial history. Inspired by these chronicles of interconnectedness, I decided to delve deeper into history and found a fascinating account of how Ukraine and Poland had influenced each other through years of coexistence. Despite their tumultuous past, Ukraine and Poland shared a cultural tapestry that was deeply woven into their histories. It was quite similar to the complex relationship between North Korea and South Korea, which, despite their political differences, shared common heritage and traditions. Thus, from Argentina to South Korea, the world was an intricate web of countries intertwined with each other through shared histories, cultures, and sometimes, shared destinies.","[Peru, Argentina, Argentina, Brazil, Argentina, Brazil, Iran, China, Iran, China, Italy, France, Italy, France, United States, Canada, United States, Canada, Australia, New Zealand, Australia, New Zealand, Ukraine, Poland, Ukraine, Poland, North Korea, South Korea, Argentina, South Korea]",13,2095 +37,"Annie, a marine biologist from Ireland, had always been fascinated by the diverse sealife surrounding the coasts of Australia. She often said that the waters of Australia were some of the most biodiverse in the world, enticing researchers like her from faraway lands like Ireland. Through her explorations, she developed a particular interest in the migratory patterns of certain species, noting that they often ventured towards New Zealand. Annie noticed that from Australia, these marine creatures would cross oceans to reach the coasts of New Zealand, proving the interconnectedness of these ecosystems. Driven by this curiosity, she published her research, attracting the attention of a fellow scientist, Greg, from Canada. Inspired by her findings, Greg shared his own studies on migration patterns, noting a similar scenario between Canada and the United States. He'd found that many animal species in Canada would cross the border into the United States during certain seasons, emphasizing the interplay between these two nations. Annie and Greg started to collaborate, which led their research towards Mexico, where they discovered another fascinating migration phenomenon. They found it intriguing that birds from the United States would fly south, bypassing their own habitats to spend the winter in the warmer climates of Mexico. Their research in Mexico led them to another colleague, Maria, from Spain. Maria had been studying the movements of the Iberian Lynx which often roamed between Spain and Portugal. Maria's research had shown that just like the animals in North America, the Lynx in Spain had established territories in Portugal. Intrigued by the similarities, they expanded their study to cover the movement of bird species between Belgium and the Netherlands. Just as they'd seen in the Americas, they noticed that certain species of birds in Belgium would travel to the Netherlands during certain periods of the year. These fascinating findings opened up new dimensions of understanding for the interconnectedness of the world. From the sealife in Australia to the birds in Belgium, the animal kingdom had its own ways of establishing connections between countries.","[Ireland, Australia, Australia, Ireland, New Zealand, Australia, New Zealand, Canada, Canada, United States, Canada, United States, Mexico, United States, Mexico, Mexico, Spain, Spain, Portugal, Spain, Portugal, Belgium, Netherlands, Belgium, Netherlands, Australia, Belgium]",16,2190 +38,"While studying the complex geopolitics of the Cold War, Harry found it fascinating how the United States and Russia had played pivotal roles. He wondered how the United States, a country dedicated to democracy, and Russia, with its communist regime, had become superpowers competing for global influence. On the other hand, his friend Anna from Australia, a political science expert, was studying the lengthy conflict between North Korea and South Korea. Both North Korea and South Korea, despite sharing the same peninsula, developed vastly different political systems causing a taut geopolitical situation. Anna also shared her interest in the Middle East, particularly the tension between Iran and Iraq. The conflict between Iran and Iraq had shaped the political landscape of the Middle East, influencing regional alliances, she explained. Later, Harry discussed his recent project on the relationship between the United Kingdom and Ireland. He highlighted how the political and cultural ties between the United Kingdom and Ireland have significantly influenced each other's history. Meanwhile, Anna brought up a book she'd read about the historical connections between Argentina and Brazil. The book illustrated how Argentina and Brazil, despite their varied history and culture, shared an intricate bond. Harry countered with an interesting trivia about China, pointing out its longstanding relationship with Japan. In the past, China and Japan, despite instances of conflict, had exchanges that enriched both nations' cultures and philosophies. As the conversation took a culinary turn, Harry discussed the famous rivalry between Italy and France over culinary supremacy. The ongoing debate between Italy and France over gastronomic traditions and wine production, he asserted, was a reflection of their vibrant cultures. Their engaging conversation came to a close as they agreed to travel to Canada next summer, to study the influence of its neighbor, the United States on its cultural and political landscape. Clearly, every country, from the United States to France, has a unique story to tell, a story that is intertwined with another's.","[United States, Russia, United States, Russia, Australia, North Korea, South Korea, North Korea, South Korea, Iran, Iraq, Iran, Iraq, United Kingdom, Ireland, United Kingdom, Ireland, Argentina, Brazil, Argentina, Brazil, China, Japan, China, Japan, Italy, France, Italy, France, Canada, United States, United States, France]",16,2149 +39,"After reading a fascinating book about Australia, John decided to take a journey himself to truly experience the wonders of Australia firsthand. He started his journey from Sydney, exploring the bustling city life before moving towards the quieter parts of Australia, eventually reaching the outback. On returning home to Canada, he shared his incredible experiences of Australia with his childhood friend Sarah, who lived in the United Kingdom. Sarah, in turn, shared her tales of a recent trip to Kenya, where she had interacted with local tribes and learned about their history. She spoke passionately about the vibrant culture of Kenya and how it had touched her deeply. Sarah revealed that her journey to Kenya was inspired by her grandmother, who had a similar experience when she visited Zimbabwe in her youth. She shared stories her grandmother had told her about Zimbabwe, including its rich wildlife and bustling markets. John loved the tales of Zimbabwe and began to think about his next journey. He said that he had been considering a trip to Ireland for a while. Sarah immediately chimed in, saying she had been to Ireland last year and found it to be a beautiful experience. She said that the hospitality and warmth of people in Ireland reminded her of her time spent in New Zealand. She shared that New Zealand, much like Ireland, had a charm that was both invigorating and relaxing at the same time. She particularly remembered the peacefulness of the countryside in both Ireland and New Zealand. After hearing about Ireland and New Zealand, John was even more intrigued and decided to visit them both in his upcoming holidays. As they finished their conversation, they felt grateful for the opportunity to learn about various countries from personal experiences and stories, from Australia to New Zealand.","[Australia, Australia, Australia, Canada, Australia, United Kingdom, Kenya, Kenya, Kenya, Zimbabwe, Zimbabwe, Zimbabwe, Ireland, Ireland, Ireland, New Zealand, New Zealand, Ireland, Ireland, New Zealand, Ireland, New Zealand, Australia, New Zealand]",15,1823 +40,"During their adventurous journey around the world, Jack and Emily first found themselves in the vibrant markets of India, enamoured by the rich traditions from India reflected in every corner. Their journey then led them to the bustling cityscapes of China, filled with modern marvels that somehow coexisted with ancient traditions from China's past. They then travelled to Australia, where they got lost in the wilderness, and shared stories of the rich biodiversity found in Australia under the southern constellations. Their travel then took them to Argentina, where they were captivated by the diversity of landscapes, from the colossal mountains to the serene lakes of Argentina. They couldn't help but notice the stark contrast to Brazil, which boasted its own unique geographical features and diverse environments, mirroring the diversity of lifestyles in Brazil. Jack, recalling his childhood passion, mentioned his fondness for Italy and its rich history. Emily, sharing his sentiment, mentioned the transcendent beauty of Italy's architecture and the remarkable tales from Italy's past. Soon, their discussion shifted to the dynamic nightlife of South Korea, which they said was unlike anything they had experienced before. South Korea, they described, was the perfect blend of the old and the new, where rich traditions met modern influences. They expressed their shared love for Ireland, with its lush green landscapes and the warm hospitality of the people of Ireland. Their tales also touched upon the unparalleled tranquility of Switzerland and the cultural harmony they found there. Switzerland, they both agreed, was a testament to the beauty of diversity, coexistence and peace. Their curiosity then led them to discuss their memorable visit to Mexico, and the unmatched flavors of cuisine from Mexico that left an indelible mark on their taste buds. As the night grew darker, their conversation veered towards the mystical landscapes of Egypt, where ancient history whispered from every corner of Egypt. As they traversed through their memories, they couldn't help but look forward to their upcoming trip to Kenya, hoping that their experiences in Kenya would be just as enriching and unforgettable. As they parted for the night, they went to sleep with dreams of their world journey, from India to Kenya, brimming in their hearts.","[India, India, China, China, Australia, Australia, Argentina, Argentina, Brazil, Brazil, Italy, Italy, Italy, South Korea, South Korea, Ireland, Ireland, Switzerland, Switzerland, Mexico, Mexico, Egypt, Egypt, Kenya, Kenya, India, Kenya]",16,2350 +41,"In her travelogue, Emily wrote about the striking cultural similarities between Mexico and Spain. She felt the powerful impact Spain has had on Mexico's language, food, and traditions during her stay in Mexico, which reminded her of the time when she was in Spain. Intriguingly, Emily's friend, Marc, an avid traveler himself, had fascinating stories about the subtle cultural ties between China and North Korea. Having lived in China for a few years, he noted that North Korea's strong cultural and political ties with China were evident in their shared festivals and traditional customs. His stories stirred a memory of Emily's own journey to Australia and New Zealand. The unity between Australia and New Zealand, carved by shared history and geographic proximity, had left a deep impression on her. Their adventurous spirits and friendly rivalry had always amazed her, much like the lively competition between Argentina and Brazil. She was fascinated by the healthy sporting rivalry between Argentina and Brazil, and how it symbolized the love and unity between these two nations. Marc then spoke about his recent travels to Sweden and Norway. His account of the breathtaking landscapes of Sweden and their similarity to the majestic fjords of Norway struck a chord with Emily, who had been longing to visit these countries. She then recalled her trip to Portugal and Spain, where she was captivated by the intricate architectural designs and the warm hospitality of the people. The cultural similarities between Portugal and Spain, deeply entrenched in their shared history and common language, had left a lasting impression on her. Their shared love for music, dance, and festivals was evident in their vibrant local life, much like the shared heritage between Iran and Iraq. It was during her travels in the Middle East where she had discovered a rich tapestry of shared history and traditions between Iran and Iraq, leaving her with an enriched understanding of these ancient lands. Their conversations always ended with a sense of awe for the interconnectedness of countries and their cultures, spanning from the lands of Australia to Iraq.","[Mexico, Spain, Spain, Mexico, Mexico, Spain, China, North Korea, China, North Korea, China, Australia, New Zealand, Australia, New Zealand, Argentina, Brazil, Argentina, Brazil, Sweden, Norway, Sweden, Norway, Portugal, Spain, Portugal, Spain, Iran, Iraq, Iran, Iraq, Australia, Iraq]",15,2149 +42,"While trekking through the dense forests of Argentina, Rebecca came across a map pointing towards an unexplored cave in Brazil. The map evidently indicated that these caves in Brazil were speckled with ancient drawings that supposedly revealed a deep-seated connection with Argentina. Her curiosity piqued, she decided to delve into this further and bring it to the notice of her friend Jack, who was a historian in Russia. Jack, fascinated by her findings, revealed that he had stumbled upon something similar in Russia that alluded to an ancient bond with Ukraine. The historical artifacts found in Russia had signs pertaining to some age-old customs of Ukraine, suggesting a shared cultural heritage. He also mentioned his recent visit to China where he learned about its intriguing historical ties with North Korea. There were ancient scrolls in China that depicted tales of kings who had traveled to North Korea in search of wisdom and alliances. Intrigued, Rebecca couldn't help but share her adventurous experiences in Mexico and its shared history with its neighboring country, the United States. While in Mexico, she had stumbled upon tales of shared traditions and alliances with the United States that had been created and broken over the centuries. Jack reciprocated with his ventures in Egypt that gave him insights into the country's links with neighboring Israel. In the heart of Egypt, he found stories etched in hieroglyphics and ancient paintings that spoke of a past that was deeply intertwined with the history of Israel. This exchange led to an elaborate discussion about their recent in-depth exploration of Italy and its historical ties with Spain. Both Italy and Spain had a rich and shared history of trade, conquests and alliances that cemented their connection over the centuries. Their discovery drew attention to the intricate tapestry of human history and how borders merely separated lands, not the shared stories woven from Argentina to Spain.","[Argentina, Brazil, Brazil, Argentina, Russia, Russia, Ukraine, Russia, Ukraine, China, North Korea, China, North Korea, Mexico, United States, Mexico, United States, Egypt, Israel, Egypt, Israel, Italy, Spain, Italy, Spain, Argentina, Spain]",14,1975 +43,"Fredrick, a globe-trotting historian, was working on a project studying the bonds between pairs of countries and their shared histories. He began his research in Sweden, intrigued by the historic ties between it and neighbouring Norway. He discovered that despite their geographical proximity, the histories of Sweden and Norway were both intertwined and fiercely independent. As he delved deeper into this relationship of Sweden and Norway, he found numerous fascinating anecdotes of cooperation and rivalry. Next, he flew to Egypt and immersed himself in the ancient relationship between Egypt and Israel. The dynamic relationship between Egypt and Israel, he noted, was filled with faith, conflict, and a shared ethos of survival amidst desert landscapes. From the warm desert sands of Egypt, Fredrick then ventured to the chilly landscapes of Canada where he explored its historic ties with the United States. He learnt about the deep-rooted kinship and friendly neighbourly associations between Canada and the United States, as well as their conflicts, negotiations and shared ambitions. Intrigued, he then voyaged to South America, where he delved into the shared histories of Colombia and Venezuela. Colombia and Venezuela, he found, had a rich history of shared culture, colonial struggles, political debates, and interwoven economies. Fredrick then travelled to Asia, where he studied the complex historical ties between China and Japan. He unveiled tales of ancient trade, invasions, cultural exchanges and diplomatic negotiations that marked the relationship between China and Japan. His expedition concluded in South Africa, where he delved into the liberating tale of South Africa's journey towards freedom - a story echoed by its neighbour, Zimbabwe. Just like South Africa, Zimbabwe had also battled against colonial rule to embrace freedom. Sitting in a cafe in Cape Town, he marvelled at the world's intricate tapestry of interconnected histories, from Sweden to South Africa, reflecting on how distance and borders mattered so little in the shared narratives of the human spirit.","[Sweden, Norway, Sweden, Norway, Sweden, Norway, Egypt, Egypt, Israel, Egypt, Israel, Egypt, Canada, United States, Canada, United States, Colombia, Venezuela, Colombia, Venezuela, China, Japan, China, Japan, South Africa, South Africa, Zimbabwe, South Africa, Zimbabwe, Sweden, South Africa]",15,2097 +44,"Growing up in Norway, Erik was always fascinated by tales of the Vikings who had once ruled the lands and seas. He remembered reading about the journeys of the Vikings from Norway to the far-off lands of Ireland, carrying with them a rich cultural exchange and influence. Intrigued, he decided to travel to Ireland, a country rich in lore and legends. He was not disappointed by his visit to Ireland, which was inundated with an array of ancient structures that narrated a tale of a powerful maritime history that was interconnected with Norway. His next destination was Canada, where he had always dreamed of exploring the expansive wilderness and learning more about the indigenous peoples. In his journey across Canada, he uncovered stories of the country's close connection with the United Kingdom, mainly through their shared history and culture. The relationship between Canada and the United Kingdom not only had deep historical roots but was still evident in Canada's modern society. His travels then led him to the United States, known for its diverse landscapes and vibrant cities. While in the United States, he could not help but notice the clear influence of Mexico in several regions due to their shared border and history. The vibrant culture, food, music, and art of Mexico was reflected in various aspects of life in the United States, especially in the southern regions. Intrigued by this, he made his next stop in Mexico, a country filled with rich history, traditions, and culinary delights. His journey through Mexico introduced him to the deep bond between this country and the United States, a relationship molded by shared borders, history, and an ongoing exchange of ideas and cultures. His travels ended in Egypt, inspired by the tales of its ancient civilization. The influence of Greece was also quite evident in the architecture and mythology of Egypt. Both Egypt and Greece, he found, were bound by their shared love for philosophy, arts, and science, deeply entwined through centuries of exchange and influence. Despite the geographical distance, the connection between Egypt and Greece was a testament to the fascinating interconnectivity of our world's cultures and histories.","[Norway, Norway, Ireland, Ireland, Ireland, Norway, Canada, Canada, United Kingdom, Canada, United Kingdom, Canada, United States, United States, Mexico, Mexico, United States, Mexico, Mexico, United States, Egypt, Greece, Egypt, Egypt, Greece, Egypt, Greece]",16,2209 +45,"On a trip to Norway, Jake stumbled upon an old journal that mentioned a secret Viking expedition from Norway to Canada. It was believed that this expedition had taken place before the known explorations, involving a small group of Vikings from Norway who had discovered and briefly settled in Canada. Intrigued by this revelation, he shared the information with his friend Lucy, who lived in the United Kingdom. Lucy, an avid historian, excitedly recalled a similar story that originated in the United Kingdom, involving a clandestine journey to Australia. The United Kingdom, she explained, had a history of covert voyages to Australia in search of new territories and resources. Shifting the conversation, Lucy spoke about a book she'd recently read which gave detailed accounts of the complex relationship between Japan and China. This book claimed that in the ancient era, Japan and China had significant cultural exchanges and trade relations despite ongoing conflicts. She also mentioned the fascinating history of Iran and Iraq, two countries with intertwined destinities. Iran and Iraq, despite their political turbulence, had a shared historical and cultural legacy that often gets overlooked. Jake then added a story from his recent travels to Spain, where he learned about the country's ancient connections with Portugal. He explained that Spain and Portugal, though culturally distinct, had a shared maritime history that led to significant exchanges between the two. While on the topic of shared histories, Lucy mentioned her visit to Zimbabwe where she discovered the country's profound historical ties with South Africa. Zimbabwe and South Africa, she said, were bound together by a shared struggle for independence and a deep-rooted sense of brotherhood despite geographical boundaries. The conversation fueled their wanderlust, casting a light on the fascinating interconnectedness and shared legacies of countries spanning from Norway to South Africa.","[Norway, Norway, Canada, Norway, Canada, United Kingdom, United Kingdom, Australia, United Kingdom, Australia, Japan, China, Japan, China, Iran, Iraq, Iran, Iraq, Spain, Portugal, Spain, Portugal, Zimbabwe, South Africa, Zimbabwe, South Africa, Norway, South Africa]",14,1969 +46,"Beginning her journey in France, Jane was mesmerized by the art and culture sensibilities that defined France. Intrigued by the architecture, history, and fashion that was distinctive of France, she was compelled to dig deeper into the historical ties that connected France with neighboring Italy. Italy, with its rich history and cultural heritage, shared an artistic bond with France, both historically and contemporarily. Jane next decided to visit South Africa, where she found a stark contrast to the art and sophistication of Italy, yet an enticing allure in the vibrant traditions and natural wonders that South Africa had to offer. The wildlife in South Africa, she found, was unmatched and the conversations she had with locals revealed tales of connections between South Africa and neighboring Zimbabwe. Zimbabwe, she learned, had been a trading partner with South Africa, their histories intertwining in ways she found fascinating. Next on her list was the United States, where she was taken by the diverse cultures and the sprawling metropolises. The technological advancements of the United States astounded her, and she was interested to learn about the political and economic ties between the United States and Canada. Canada, she found, held its unique charm, with its breathtaking landscapes and welcoming locals. She found out about the historical bond between Canada and the United Kingdom through her conversations. Finally, she ended her journey in the United Kingdom, where she was captivated by the rich history and architectural marvels. The United Kingdom had historic ties with Canada and it was fascinating to see the influence each country had on the other. This journey taught her a lot about the world and its intricate links, promising to revisit these countries and explore more connections.","[France, France, France, France, Italy, Italy, France, South Africa, Italy, South Africa, South Africa, South Africa, Zimbabwe, Zimbabwe, South Africa, United States, United States, United States, Canada, Canada, Canada, United Kingdom, United Kingdom, United Kingdom, Canada]",13,1823 +47,"James, a historian, found himself engrossed in the medieval stories of knights from the United Kingdom, where armor and chivalry were the symbols of bravery. He was particularly interested in the historical ties between the United Kingdom and Ireland, how the two countries, despite their conflicted history, had shared traditions, myths, and legends. Inspired by these narratives, he wrote to his friend Rosa in Mexico, telling her about his research. Rosa, a linguistics expert, was intrigued and wrote back about the rich history of Mexico and the indigenous cultures that shaped the country. She also spoke about the vibrant traditions indigenous to Mexico and Peru, and how both Mexico and Peru had a shared history of ancient civilizations, with languages, rituals, and architecture that had a profound influence on their respective societies. She then shared about her trip to Russia, which she found so diverse and captivating. The historian in James was excited by the detailed descriptions Rosa gave about Russia and Ukraine, about their shared history, the influence of the Byzantine Empire, and the development of Cyrillic script. He then reminisced about his visit to South Africa where he explored the local folktales. He mentioned how South Africa and Zimbabwe's stories were intertwined, with themes of resilience and liberation echoing through their histories. Rosa responded, sharing her fascination with Japan and its unique cultural heritage. She wrote about Japan and South Korea, their shared past, cultural exchanges, and how they had influenced each other's art and literature. They both concluded that the fascinating journeys of these countries, from the United Kingdom to South Korea, suggested a world much more interconnected than generally perceived.","[United Kingdom, United Kingdom, Ireland, Mexico, Mexico, Mexico, Peru, Mexico, Peru, Russia, Russia, Ukraine, South Africa, South Africa, Zimbabwe, Japan, Japan, South Korea, United Kingdom, South Korea]",12,1780 +48,"In the heart of Mexico, a historian named Marta unearthed a series of artifacts that were traced back to the ancient civilization of Peru. This led her to believe that during prehistoric times, there might have been a direct route from Mexico to Peru, allowing a fascinating exchange of ideas, cultures, and traditions. Thrilled by the discovery, she shared the information with her friend Leo, an anthropologist from the United States who had recently been studying cultural connections between the United States and Canada. Leo was intrigued as he had discovered similar links between the United States and Canada, suggesting that there might have been prehistoric connections between these seemingly distant regions. Leo then shared his recent study about the intriguing relationship between South Africa and Kenya. The two African nations, South Africa and Kenya, had a rich tapestry of legends suggesting a shared ancestry and rich cultural exchanges. Marta was reminded of a book she read about the historical ties between Russia and Ukraine. This book discussed extensive trade routes and cultural exchanges between Russia and Ukraine, adding another layer to their complicated history. Similarly, her team had recently found artifacts in Australia, which surprisingly pointed towards a connection with New Zealand. It seemed that Australia and New Zealand, despite being known for their unique isolated biodiversity, also shared a deep historical bond. Leo, smiling, told Marta that his recent visit to Italy had been enlightening as he learned of the ancient interactions between Italy and its neighbor, Greece. He explained that Italy and Greece, despite their renowned and distinct ancient cultures, had influential exchanges in art, language, and governance. Finally, they chatted about their shared trip to South Korea and North Korea where they had learned about the deep ties between the two nations. Their conversation was a testament to the intriguing web of connections between countries from Mexico to Greece and beyond, adding another dimension to the study of human history.","[Mexico, Peru, Mexico, Peru, United States, United States, Canada, United States, Canada, South Africa, Kenya, South Africa, Kenya, Russia, Ukraine, Russia, Ukraine, Australia, New Zealand, Australia, New Zealand, Italy, Italy, Greece, Italy, Greece, South Korea, North Korea, Mexico, Greece]",14,2095 +49,"Alice, an archeologist from France, spent her career uncovering the ancient history between France and its neighboring country, Spain. She specialized in the medieval age, focusing particularly on the cross-cultural influences between France and Spain at the time. These nations shared a border and a rich, intertwined history, filled with wars, alliances, and cultural exchange. Her work in France led her to the involvement of another country, Italy, in this historic web. She launched an expedition to Italy, hoping to uncover clues about Italy's relation with Spain in the past. There, she discovered the influence of Italy on Spain's art and architecture during the Renaissance period. Alice's fascination with history drove her from Europe to the Middle East, focusing on the ancient civilizations of Iraq and Iran. She uncovered that Iraq and Iran, despite their modern political differences, share a vast historical connection dating back thousands of years. The Persian Empire, centered in Iran, and the Mesopotamian civilizations, centered in Iraq, had left indelible marks on each other. Alice's research also took her to East Asia, specifically to China and Japan. Alice was captivated by China's ancient dynasties and their influence on Japan through Buddhism and Confucianism. Her investigation revealed that China and Japan had a complex relationship spanning centuries, shaped by the exchange of ideas, trade, and occasional conflicts. Inspired by her findings, Alice decided to delve into the history of North and South America, focusing particularly on Mexico and the United States. She learned that Mexico and the United States shared a layered history, marked by conflicts, treaties, and profound cultural exchanges. The captivating tales of France, Spain, Italy, Iraq, Iran, China, Japan, Mexico, and the United States sparked an unforgettable journey across the globe for Alice, deepening her appreciation for the interconnectedness of the world's history.","[France, France, Spain, France, Spain, France, Italy, Italy, Italy, Spain, Italy, Spain, Iraq, Iran, Iraq, Iran, Iran, Iraq, China, Japan, China, Japan, China, Japan, Mexico, United States, Mexico, United States, France, Spain, Italy, Iraq, Iran, China, Japan, Mexico, United States]",15,1978 +50,"Often in his dreams, James would find himself in the enchanting landscapes of Sweden, the country where his grandfather was born, raised, and met his grandmother. Stories of Sweden, of their meetings by the pristine lakes and under the northern lights, would always be his favorites. But his grandmother was from Norway, a land equally captivating with its fjords and vibrant cities. She too, had tales to narrate about Norway, featuring the midnight sun and her expeditions to the icy Svalbard. Curiosity piqued, James decided to visit these lands his grandparents hailed from, starting with a trip to Sweden and then making his way to Norway. In his travels, he befriended a fellow adventurer, Laura, who was from the United States and on a similar journey. Laura, like James, was tracing her roots that lay in the heart of the United States where her parents ran a farm. Yet, she was also fascinated by the history of United Kingdom, the birthplace of her paternal grandparents. She would revisit stories her grandparents spun about United Kingdom, its beautiful countryside and bustling cities, the ancient monuments and the modern marvels. It struck James that while he was drawn towards Sweden and Norway, his grandparents' childhood homes, Laura was drawn towards the United States and United Kingdom, where her family's history was rooted. Sharing stories, they soon found common ground in their love for Canada, a place they had both visited during their respective journeys. They laughed over shared memories of Canada, of the breathtaking wilderness, the cosmopolitan cities, and the kind locals, and made plans for a future visit to Canada together. As they continued their explorations, their respect for the past deepened, and their hearts filled with gratitude for the present, realizing the interconnections of countries from Sweden to Canada.","[Sweden, Sweden, Norway, Norway, Sweden, Norway, United States, United States, United Kingdom, United Kingdom, Sweden, Norway, United States, United Kingdom, Canada, Canada, Canada, Sweden, Canada]",13,1859 +51,"Sophie, an avid traveler and photographer, had recently visited the naturally diverse landscapes of Canada. She was particularly struck by the wildlife in Canada, where she had the rare opportunity to photograph the grizzly bears and orcas. Inspired by her experiences in Canada, she decided to plan her next adventure to Australia, known for its unique flora and fauna. She had always dreamed of photographing the kangaroos and koalas that Australia is famous for. With the memories of Canada still fresh and the anticipation for Australia building, she started sorting through her photographs from her trip to South Africa. She remembered the breathtaking sunrises she had captured in South Africa and the wild Safari experiences where she got close to the Big Five animals. After South Africa, her journey took her to New Zealand, where she was truly enchanted by the magical landscapes. The mountains and the clear blue waters of New Zealand had left a deep imprint on her soul. While reminiscing about her past travels, she remembered her unforgettable journey to Brazil when she had covered the carnival and the vibrant life of the people there. She loved the music and the street art of Brazil and the country's spirit of celebration. She then recalled her time in Mexico, where she was fascinated by the ancient Maya and Aztec civilizations. The diverse culture and the colorful festivals of Mexico were something she would never forget. With these beautiful memories in mind, she was also looking forward to her upcoming visit to Japan. She was particularly excited to witness the cherry blossom festival in Japan and capture the stunning pink hues that blanket the country during spring. Recalling the thrill she felt every time she stepped into a new country, from Canada to Japan, she started packing for her next adventure to Australia. As she packed, she held close the experiences she had gathered so far and looked forward to creating new ones.","[Canada, Canada, Canada, Australia, Australia, Canada, Australia, South Africa, South Africa, South Africa, New Zealand, New Zealand, Brazil, Brazil, Mexico, Mexico, Japan, Japan, Canada, Japan, Australia]",16,1960 +52,"Robert, an experienced traveler, decided to narrate tales of his adventures in Brazil and Argentina to his friends at a cozy get-together. He described the vibrant culture in Brazil, the passionate people, and how his journey took him all the way to Argentina, where he was welcomed by the warm locals. His descriptions of Argentina and Brazil made his friends eager to hear more about his travels. Next, he took them on a verbal tour of Japan and China, two countries he had visited repeatedly due to their rich histories and contrasting cultures. Robert described the tranquility he experienced in Japan, followed by the bustling energy he witnessed in China - a country with ancient roots and a bright future. China, he mused, was a country of contrasts much like Japan, with its fusion of tradition and modernity. Struck by his tales, one of his friends, Sarah, shared her experiences from her visit to Russia and Ukraine. Sarah expressed how despite the harsh winters in Russia, the warmth of the people was unforgettable, and how moving across the border to Ukraine, she was amazed by the shared history but distinct identities of the two nations. Unlike Russia, Ukraine had a different atmosphere, yet there were undeniable shared experiences between the two nations. Next, their friend James chimed in about his time in Italy and France. As an art lover, James found Italy to be his paradise, filled with awe-inspiring architecture and art. He then journeyed to France, where he was equally enchanted by the art scene and the shared passion for art between Italy and France. The evening ended with everyone vowing to travel more, from Brazil to France, inspired by the shared stories and the cross-cultural bonds that tie the world together.","[Brazil, Argentina, Brazil, Argentina, Argentina, Brazil, Japan, China, Japan, China, China, Japan, Russia, Ukraine, Russia, Ukraine, Russia, Ukraine, Italy, France, Italy, France, Italy, France, Brazil, France]",13,1749 +53,"John, an archaeologist based in Australia, recently discovered a connection between artifacts found in his home country and those discovered in South Africa. This fascinating link between Australia and South Africa had never been explored before and offered a new perspective on ancient trade routes. Inspired by this discovery, John reached out to his colleague, Sarah, in Canada. Sarah was a leading expert in ancient civilizations and had been studying long-lost connections between Canada and the United Kingdom. Drawing parallels between the cultures of Canada and the United Kingdom, Sarah explained how shared cultural symbols suggested ancient migratory patterns. Meanwhile, in South Korea, a curious historian named Lee had uncovered records from North Korea, detailing ancient diplomatic ties with China. These documents showed that North Korea and China had shared a significant cross-border exchange in the past, influencing the culture of both nations. Intrigued by these findings, Lee reached out to his colleague in Russia, Elena, who had recently been studying the historical association between Russia and Ukraine. Elena had found evidence that Russia and Ukraine, despite their turbulent history, had once shared a mutually beneficial trade relationship. John, Sarah, and Elena, and Lee decided to publish their findings together, sharing their unique insights into the historical connections between Australia and South Korea, Canada and the United Kingdom, and Russia and Ukraine. A celebrated historian from Sweden, Olaf, upon reading their research, was reminded of the ancient connections between Sweden and Norway. Sweden and Norway, being closely situated, had a history of deep cultural and social exchanges. As they all delved deeper into their research, they realized how interconnected the world truly was, from Australia to Sweden, and how history echoed through the ages in surprising and fascinating ways.","[Australia, South Africa, Australia, South Africa, Canada, Canada, United Kingdom, Canada, United Kingdom, South Korea, North Korea, China, North Korea, China, Russia, Russia, Ukraine, Russia, Ukraine, Australia, South Korea, Canada, United Kingdom, Russia, Ukraine, Sweden, Sweden, Norway, Sweden, Norway, Australia, Sweden]",13,1937 +54,"When Lara visited Spain, she was drawn to the stories of the local people, their traditions, and history. Spain, with its rich culture, was a treasure trove for Lara, who was an anthropologist from Sweden. She found that the architecture in Spain bore a striking resemblance to the structures she had seen in Italy, leading her to delve into the historical connections between Spain and Italy. While in Italy, she also explored its ties with neighboring France, learning about the shared histories, cultural exchanges, and rivalries that shaped the identities of these two countries. Lara's fascination with cultural connections did not stop there; she traveled to Argentina, where she found it intriguing how the country's history was intertwined with Brazil. It was intriguing how Argentina and Brazil, despite historical conflicts, managed to share music, dance forms, and food traditions. Her journey then took her to the United States where she learned about its historical ties with Canada. The United States and Canada, she found, had a history of peaceful coexistence and cooperation despite the occasional disputes. In the Middle East, she explored the deep-rooted historical connections between Iran and Iraq. She discovered that these countries, Iran and Iraq, despite modern-day conflicts, shared a rich history of cultural and economic exchanges. Lara's last trip was to Australia, where she explored its ties with neighboring New Zealand. The closeness between Australia and New Zealand, she found, went beyond geography and was deeply etched in their shared history and culture. As Lara journeyed from Spain to Australia, she found herself marvelling at the way these countries, despite their differences, were interconnected through history and culture.","[Spain, Spain, Sweden, Spain, Italy, Spain, Italy, Italy, France, Argentina, Brazil, Argentina, Brazil, United States, Canada, United States, Canada, Iran, Iraq, Iran, Iraq, Australia, New Zealand, Australia, New Zealand, Spain, Australia]",13,1769 +55,"John, an historian from Mexico, always had a fascination for the ancient civilizations of Egypt. His interest in Egypt ignited when he discovered that there were ties between the Mesoamerican cultures of Mexico and the ancient dynasties of Egypt, possibly through a network of trade routes lost to the annals of history. His research led him to Italy, famous for its connection to Greece through shared mythology and cultural exchanges. He was intrigued to learn that both Italy and Greece, despite being separate nations, had histories that were intertwined and filled with shared tales of heroism and mythological gods. His interests soon expanded to the Far East, focusing on South Korea and its neighbor, North Korea, despite the political standoff between the two. He learned that South Korea and North Korea, both with a common past, presented a stark contrast in their modern development paths. On his return from Asia, he made a stopover in Ireland and was captivated by the country's rich folklore and legends. Intriguingly, the historical ties between Ireland and the United Kingdom were far more complex than he had assumed, showcasing a mix of conflict and cooperation that had shaped the destinies of both nations. His next stop was the United States, with its vast melting pot of cultures and its dynamic history. Specifically, he was drawn to the deep-rooted cultural and historical links between the United States and Canada that depict a story of neighborly relations, shared values, and common defense interests. Lastly, he found himself in the Middle East, exploring the intricate relationship between Iran and Iraq that spanned millennia. Despite their modern conflicts, he was surprised to find that both Iran and Iraq shared a long history of cultural exchanges, even during periods of strife. His journey, touching on countries from Mexico to Iraq, was a testament to the intricate web of connections historic and modern societies share.","[Mexico, Egypt, Egypt, Mexico, Egypt, Italy, Greece, Italy, Greece, South Korea, North Korea, South Korea, North Korea, Ireland, Ireland, United Kingdom, United States, United States, Canada, Iran, Iraq, Iran, Iraq, Mexico, Iraq]",13,1960 +56,"During his adventures in Brazil, Jack discovered an ancient map detailing trade routes between Brazil and Argentina. The map indicated that spices, precious metals, and unique textiles were frequently traded between Brazil and Argentina, highlighting their historical connection. Intrigued, he shared his discovery with his historian buddy, Mike, who lives in Canada. Mike reminded him of the notable similarities between such trade accounts and the historical exchanges between the United Kingdom and Ireland, both of which had profound cultural and economic influences on each other. They also recalled a famous book detailing the fascinating expeditions linking South Africa with Australia. The book portrayed their marine adventures, unraveling the rich biodiversity found in both South Africa and Australia's marine ecosystems. Their discussion shifted to the lively bazaars of Pakistan, remembered by Jack from his past travels. He elaborated on the apparent cultural crossovers between Pakistan and Iran, evident from their cuisine, music, and architectural styles. Mike, moved by this story, reminisced on his trip to Sweden. He narrated his experiences about the historic and cultural ties between Sweden and its neighboring country, Norway, deeply rooted in their shared Viking heritage. The conversation then drifted towards the East, to the land of the rising sun, Japan. They discussed the influence Japan had on South Korea and vice versa, especially in areas such as technology and pop culture. Fascinated with these tales of global connections, they reflected upon how countries, from Brazil to Japan, have shared rich histories, thus knitting a beautiful tapestry of human legacy.","[Brazil, Brazil, Argentina, Brazil, Argentina, Canada, United Kingdom, Ireland, South Africa, Australia, South Africa, Australia, Pakistan, Pakistan, Iran, Sweden, Sweden, Norway, Japan, Japan, South Korea, Brazil, Japan]",13,1697 +57,"In his quest to decipher the mysteries of the world, Tom began his journey in Iraq, where he uncovered antiquated texts that revealed hidden knowledge from Iran. This knowledge was believed to be carefully guarded secrets of Iran's ancient civilization, preserved for millennia and eventually moved to Iraq for protection. The texts sparked Tom's curiosity about the historical intricacies of other countries and led him to continue his journey to China. The land of China unraveled the mysteries of its neighbor, North Korea, sharing ancient myths and legends that intertwined the histories of China and North Korea. This ignited his interest in the connection between neighboring nations and he traveled next to Italy. There he discovered the intertwined history of Italy and France, with tales of kings and queens, wars and peace, and a shared love for art and culture between Italy and France. His travels then led him to South Africa, where he uncovered the deep historical ties between South Africa and Zimbabwe. Tales of migrations and cultural exchanges between South Africa and Zimbabwe intrigued him, revealing a shared history that transcended modern borders. His fascination with history took him next to the United States, where he discovered the profound influences that the United Kingdom had left behind. The United States and the United Kingdom, he found, were more intertwined than he had initially thought, sharing a common language, legal systems, and cultural trends. The final leg of his voyage took him to South America, to Peru, where he learned about the strong connections between Peru and Argentina. Both Peru and Argentina, he discovered, had a shared history of ancient civilizations and the Incas, creating an incredible bridge between the two nations. This journey had taken him from Iraq to Peru, unraveling the shared history and relationships between nations, highlighting both the uniqueness and similarities of the world's cultures.","[Iraq, Iran, Iran, Iraq, China, China, North Korea, China, North Korea, Italy, Italy, France, Italy, France, South Africa, South Africa, Zimbabwe, South Africa, Zimbabwe, United States, United Kingdom, United States, United Kingdom, Peru, Peru, Argentina, Peru, Argentina, Iraq, Peru]",13,1968 +58,"Once, on a voyage from Argentina to Australia, Captain Fredericks discovered links between these two countries based on the indigenous art forms. The indigenous people of Argentina and Australia, as he noted, shared similar creation stories depicting a great serpent, which was fascinating. Later, he journeyed to the cold regions of Canada and found evidence of ancient trade links with Russia. He unearthed artifacts in Canada that traced back to Russia, suggesting a deep historical connection between these distant lands. This discovery reminded him of the time he spent in China, where he chanced upon cultural parallels with its neighbor, North Korea. China and North Korea, though politically distinct, seem to share a lot in common in terms of their folklore and traditional practices. This sparked his interest in the connectivity of cultures and he decided to visit Egypt, with its long and rich history. Fredericks found astonishing similarities between the ancient civilizations of Egypt and Iraq. Both Egypt and Iraq, he found, possessed complex structures and writing systems that have baffled historians for centuries. These findings led him to his next destination, the colorful land of India, where he found intriguing links with its neighbour, Pakistan. India and Pakistan, despite their bitter history, had much in common culturally speaking, from their cuisine to their shared history of colonial rule. On his return, he stopped by in Spain, where he met scholars who spoke about the shared history of Spain and Portugal. Both Spain and Portugal, having been great maritime powers, left their mark on many parts of the world. Finally, he landed in the United States, where he decided to pen down his travels, highlighting the surprising bonds countries share, from Argentina to the United States.","[Argentina, Australia, Argentina, Australia, Canada, Russia, Canada, Russia, China, North Korea, China, North Korea, Egypt, Egypt, Iraq, Egypt, Iraq, India, Pakistan, India, Pakistan, Spain, Spain, Portugal, Spain, Portugal, United States, Argentina, United States]",14,1816 +59,"Cora, a history enthusiast from the United States, found an old journal that belonged to her great-grandfather who was a sailor. The journal had detailed accounts of his travels and adventures, and it particularly highlighted his experiences in Cuba. In Cuba, he had discovered a community that was deeply influenced by traditions from Spain. He wrote extensively about the uncanny similarities between Spain and Cuba, from the vibrant music to the architecture. There were also multiple stories of the shared history between the United States and Canada. He described how the border between the United States and Canada was more than just a political boundary, but a symbol of a robust relationship formed over many years. Intriguingly, he also wrote about his travels to Argentina and Brazil, noting the rich shared culture and rivalry between Argentina and Brazil. His reflections on Argentina were filled with admiration for its landscapes and the warmth of its people, while Brazil filled him with wonder with its rich history and natural beauty. Cora, moved by the stories, shared the journal with her friend Bill who had just returned from Italy. Bill was fascinated and narrated his own experiences from Italy, particularly enchanting were his tales about the ancient links between Italy and Greece. He spoke vividly of how the art, architecture, and philosophy of Greece were deeply engrained in the culture of Italy. Bill, intrigued by her great-grandfather's travels, decided to embark on his own adventure, taking with him the insights from the journal and his own experiences from Italy to Greece, naively hoping to write a sequel to her great-grandfather's journal. They both were left in awe, at how interconnected the world was, despite the distances, borders, and years that separated these nations.","[United States, Cuba, Cuba, Spain, Spain, Cuba, United States, Canada, United States, Canada, Argentina, Brazil, Argentina, Brazil, Argentina, Brazil, Italy, Italy, Italy, Greece, Greece, Italy, Italy, Greece]",13,1816 +60,"Maria, a renowned historian, stumbled upon a century-old document in Argentina, which pointed out that the Incas from Peru had travelled to Argentina for trading purposes. It illustrated the extensive ties between Argentina and Peru, showcasing an intertwining history of trade and influence that lasted several centuries. The document also suggested intriguing overlaps with similar trade routes between Brazil and Colombia. Traders from Brazil had reportedly journeyed to Colombia in pursuit of valuable resources, creating a significant impact on both Brazil and Colombia's cultural and economic landscapes. Enthralled by her findings, Maria shared them with her friend Jack, a professor from Canada. Jack was deeply engrossed in researching the ancient connections between Canada and the United States. He explained that the indigenous tribes from Canada would often travel to the United States for ceremonies and trade, leading to profound interconnections between Canada and the United States. Jack also mentioned his fascination with the historical ties between Australia and New Zealand. Australia and New Zealand, he explained, had been closely linked due to their geographical proximity and shared roots among the indigenous peoples. Maria, intrigued by Jack's findings, recalled her own research into the ancient connections between Egypt and Israel. She elaborated on the complex and layered history between Egypt and Israel, marked by centuries of warfare, trade, and cultural exchanges. Their fascinating conversation underscored the rich tapestry of interconnected histories that spanned from Argentina to Israel, and the profound influence these connections have had on shaping the world we know today.","[Argentina, Peru, Argentina, Argentina, Peru, Brazil, Colombia, Brazil, Colombia, Brazil, Colombia, Canada, Canada, United States, Canada, United States, Canada, United States, Australia, New Zealand, Australia, New Zealand, Egypt, Israel, Egypt, Israel, Argentina, Israel]",12,1718 +61,"Studying world history, Alice was fascinated by the parallel developments in science and technology in Japan and South Korea. She observed that Japan and South Korea had both made significant advancements in robotics and electronics in the recent past. This prompted her to dive deeper into the technological revolutions of Canada and the United States. In both Canada and the United States, she discovered, the growth of technology was heavily driven by the rise of Silicon Valley and the numerous tech start-ups it inspired. She shared these findings with her friend Ben who was researching on the political history of Iraq and Iran. Ben said that he'd observed a similar pattern, where Iraq and Iran, despite their long-standing conflicts, exhibited parallel political transformations throughout history. This made Alice curious about the indigenous cultures of Australia and New Zealand. She found that both Australia and New Zealand had rich Maori cultures that had significantly influenced their history and traditions. Ben, in response, mentioned his interest in European history, particularly the intertwined histories of France and Italy. He shared how France and Italy, besides sharing borders, had a shared history of art and cuisine, influencing each other in profound ways. Alice found this intriguing and decided to look into the cultural exchanges between Brazil and Argentina. She learned that Brazil and Argentina, both known for their love of soccer, had a lot of cultural exchanges due to the sport. As they continued to delve deeper into their research, they marveled at how interconnected the world truly is, from Japan to Argentina, learning from each other and growing together.","[Japan, South Korea, Japan, South Korea, Canada, United States, Canada, United States, Iraq, Iran, Iraq, Iran, Australia, New Zealand, Australia, New Zealand, France, Italy, France, Italy, Brazil, Argentina, Brazil, Argentina, Japan, Argentina]",13,1701 +62,"In a quaint coffee shop in France, a group of friends were engaged in a spirited debate about the finest arts and literary traditions around the world. The discussion began when Adam, an aspiring novelist, mentioned how he always admired the elegance of literature from France, citing famous authors who inspired him. He then passed the conversation onto Lisa, who had spent a few years studying in Italy. She described the history of Italy, where art and architecture stood as a testament to its sprawling cultural legacy. Lisa also mentioned Greece, drawing parallels to Italy in terms of the historical significance of its art and philosophy. She elaborated on her visits to Greece, explaining how she was captivated by the timeless beauty of the ancient ruins and the enduring spirit of its philosophies. The discussion then turned to the East, to India, where Mike, a devout yoga practitioner, extolled the spiritual wisdom inherent in the ancient scriptures of India. He also spoke about China, sharing how his travels there had enhanced his understanding of Eastern philosophies. Mike's vivid descriptions of the grandeur of China's historical architectures, and his recollections of the Great Wall fascinated everyone. Carla, who was known for her love of adventure, spoke about her time in Australia. The wildlife, landscapes, and the stories of indigenous tribes of Australia captured the group's imagination. Conversing about Australia, she couldn't help but mention New Zealand as well, expressing her fond memories of its breathtaking landscapes and rich Maori culture. She detailed her exhilarating experiences of nature in New Zealand, leaving everyone longing for a taste of such adventures. Their discussion evolved into an appreciation of global diversity, linking arts, literature, and cultures from France to New Zealand.","[France, France, Italy, Italy, Greece, Italy, Greece, India, India, China, China, Australia, Australia, Australia, New Zealand, New Zealand, France, New Zealand]",14,1841 +63,"Steven, an adventurer from Canada, decided to visit the exotic wildlife in Kenya. One could not help but marvel at the vast diversity in Kenya, where everything seemed part of an intricate web of life. As he explored, tales of another country resonated in his mind - Australia. Steven had read about the immense biodiversity in Australia, ranging from its unique marsupials to its thriving marine life, and he dreamt of experiencing it someday. During his stay in Kenya, Steven came across traditional art that he found was remarkably similar to the native art forms from Australia. This prompted him to study further, leading him to the indigenous people of Australia and their distinct culture. Next, he planned a visit to South Korea, intrigued by stories of its advanced technology. He was amazed at the rapid strides South Korea had made in fields like robotics and AI. His fascination with technology then took him to Japan, the birthplace of many technological advancements. As Steven navigated the intricate lanes of Japan, he found himself admiring the delicate balance the country had struck between preserving its traditions and embracing modernity. Inspired by his experiences, he decided to write a book on the cultural exchanges and developments between Canada and the United States. The interconnected histories of Canada and the United States, from the founding of their nations to their shared cultural practices, offered a wealth of material for his book. His travels and his book were a testament to the intricate tapestry of global cultures, showing how countries like Kenya and the United States had narratives that were deeply intertwined with others around the world.","[Canada, Kenya, Kenya, Australia, Australia, Kenya, Australia, Australia, South Korea, South Korea, Japan, Japan, Canada, United States, Canada, United States, Kenya, United States]",13,1690 +64,"As a professor of ancient civilizations, John spent most of his time studying archaeological sites in Mexico. He cherished every moment he spent in Mexico, exploring its rich history and culture. His most significant discoveries, however, came from his expeditions in Peru, where he unearthed ancient artifacts that provided a glimpse into the life of the Incan civilization. Peru, with its breathtaking landscapes and deep-rooted customs, had always fascinated him. It reminded him of his earlier work in Egypt, where he spent years studying the Great Pyramids and other historical marvels. The allure of Egypt, with its iconic structures and timeless tales, was undeniably captivating. During a symposium in the United Kingdom, he met Lisa, a fellow archaeologist from Israel. She had conducted extensive research in Iran, unearthing the secrets of the Persian Empire. She spoke enthusiastically about the enigmatic ruins and inscriptions she found in Iran. She also showed him photographs of the sites she had explored in Iraq. The artifacts she discovered in Iraq suggested complex trade relations that once existed between the civilizations of the Middle East. Drawn to the mysteries of the Far East, Lisa was currently researching the ancient civilizations of China. The abundance of historical wealth in China was mesmerizing, and only added to her fascination with the region. Intrigued, John suggested they collaborate on an archaeological project in South Korea, a country he had always wanted to explore. South Korea, with its unique blend of tradition and modernity, offered a compelling cultural context for their research. They agreed, looking forward to unraveling the mysteries of South Korea together. As the meeting ended, they marveled at the historical tapestry that stretched from Mexico to South Korea, promising more adventures and discoveries to come.","[Mexico, Mexico, Peru, Peru, Egypt, Egypt, United Kingdom, Israel, Iran, Iran, Iraq, Iraq, China, China, South Korea, South Korea, South Korea, Mexico, South Korea]",17,1875 +65,"Sarah, an archaeologist from the United Kingdom, had been involved in numerous expeditions in Egypt and was intrigued by the historic similarities between key artifacts in both the United Kingdom and Egypt. It was a fascinating correlation she discovered during her research - that both the United Kingdom and Egypt had a shred of commonality in their ancient cultures. She shared her findings with her colleague John from the United States, who was equally interested in the historical interconnections between different countries. He highlighted an interesting parallel between Russia and Ukraine. He pointed out that Russia and Ukraine, despite their tumultuous history, shared an array of cultural motifs and traditions. This struck a chord with Sarah, who had recently been researching the history of Italy and France. It had seemed to her that Italy and France, despite being distinctive in their cultural styles, had a common thread of influences in their art and architecture. With keen interest, John recalled his expedition to China, where he had noticed an intriguing connection with its neighbor Japan. According to his research, China and Japan, despite their contrasting lifestyles, had a profound influence on each other's ancient practices and philosophies. Sarah then mentioned her recent visit to South Africa, where she spotted a surprising similarity in ancient artifacts with those in Kenya. She explained that Kenya and South Africa, for all their unique cultural variations, appeared to share a historical bond. As their exploration deepened, they realized more profound connections. Sarah brought up her knowledge about the historical links between Canada and the United States. She noted that Canada and the United States had deeply intertwined histories, due to their geographical proximity and shared colonial past. Both archaeologists agreed that these instances of historical interconnections were fascinating, demonstrating how our world is much more interconnected than it might first appear.","[United Kingdom, Egypt, United Kingdom, Egypt, United Kingdom, Egypt, United States, Russia, Ukraine, Russia, Ukraine, Italy, France, Italy, France, China, Japan, China, Japan, South Africa, Kenya, Kenya, South Africa, Canada, United States, Canada, United States]",15,2023 +66,"On a crisp autumn day, Jack, an esteemed professor from the United States, began sharing with his class tales of hidden architectural wonders of Mexico. Mexico, he explained, was home to ancient civilizations whose remnants were still visible in the form of grand pyramids and intricate carvings. After Mexico, he turned the discussion towards Italy, and the architectural marvels that stand in testament to their centuries-old history. The Roman coliseum and the tower of Pisa were favorite examples when discussing Italy, he said, as they represent different periods and styles prevalent in Italy. He also touched upon Iran, describing how the country's rich history is evident in its architecture, from the elaborate mosques to the ancient city of Persepolis. Iran, he said, was a treasure trove for historians and architects alike, offering insights into the glorious past of Persia. As the lecture advanced, he started talking about Egypt and its awe-inspiring pyramids. Egypt, he said, was a living museum with countless artifacts and structures that had survived thousands of years. Stepping outside architecture, Jack described a trip to South Korea, where he had explored the technological advancements of the country. He explained how South Korea was on the cutting edge of technology, with high-speed internet and tech giants that were globally recognized. South Korea, he held, was a testament to how technology could drive development. Towards the end, Ireland was brought up, as he detailed how the country's landscapes and traditions were equally captivating. Ireland, he stated, was an enchanting blend of history and natural beauty, with its numerous castles and lush green landscapes. The students left the class, minds brimming with stories of Mexico to Ireland, eager to see the world's wonders firsthand.","[United States, Mexico, Mexico, Mexico, Italy, Italy, Italy, Iran, Iran, Egypt, Egypt, South Korea, South Korea, South Korea, Ireland, Ireland, Mexico, Ireland]",14,1825 +67,"On a recent cultural exchange trip, Mia from South Korea learned fascinating historical links between North and South Korea. Despite the contemporary political divide, she discovered common roots in their shared history, culture, and tradition, and this was true for both North and South Korea. She discussed this with her roommate, Anne, from Australia, who shared a similar story about Australia's relationship with New Zealand. Anne explained that Australia and New Zealand, despite being separate nations, shared a profound bond due to their geographic proximity and shared history. This conversation triggered Mia's memory of a book she had read about the long-standing ties between Venezuela and Colombia. In the book, the author made a compelling argument about the common cultural heritage and intertwined history of Venezuela and Colombia. Inspired by their exchange, Anne brought up her cousin's travels to Zimbabwe and South Africa. She recalled the stories about the cultural exchanges between Zimbabwe and South Africa, the shared struggle against colonial rule, and the enduring bonds of friendship. Mia found the stories fascinating and told Anne about an article she read about the historical connections between Italy and France. This piece detailed the centuries of economic, political, and cultural exchange between Italy and France, pointing out how the Roman Empire's influence stretched across both regions. As they continued to discuss, Anne remembered her teacher's colorful anecdotes about the United Kingdom and Ireland. The United Kingdom and Ireland, she learned, shared complex and layered histories, with influences from literature to politics making their relationship an intriguing study. As they ended their conversation, they realized that whether one talks of South Korea or Ireland, the story of humanity is deeply interconnected and beautifully complex.","[South Korea, South Korea, South Korea, Australia, Australia, New Zealand, Australia, New Zealand, Venezuela, Colombia, Venezuela, Colombia, Zimbabwe, South Africa, Zimbabwe, South Africa, Italy, France, Italy, France, United Kingdom, Ireland, United Kingdom, Ireland, South Korea, Ireland]",13,1890 +68,"On her journey around the world, Rebecca discovered a fascinating link between the countries of Ireland and the United Kingdom. She had always been intrigued by the rich history shared by the United Kingdom and Ireland, the tales of conflicts, and the long-standing cultural exchanges that have shaped both nations. Her interest in historical bonds didn't end there; while in the United Kingdom, she came across a book that described the past relations of the United States and Canada. The book detailed how the United States and Canada shared a border and a long history of trade, migration, and sometimes contentious diplomacy. This reminded Rebecca of the complex history between Russia and Ukraine. Having lived in Ukraine, she had firsthand experience of the intricate relationship between Russia and Ukraine, a story of shared heritage, conflicts, and divergent paths. It was a stark contrast to the peaceful coexistence she had witnessed between Norway and Sweden. Norway and Sweden, she reminisced, shared a harmonious relationship, full of mutual respect and cooperation, making them a model for neighboring countries. Her thoughts then wandered to her time in South Africa, where she had learned about the country's connections with Zimbabwe. Historically, South Africa and Zimbabwe had a great deal of interaction due to their geographic proximity and similar colonial pasts. She also recollected her visit to Australia and the stories she'd heard about the country's ties with New Zealand. Australia and New Zealand, as she learned, had a fascinating history of competitive friendship, shaped by geographic proximity and shared culture. From there, her mind drifted to Asia, where she had spent time in both China and Japan. Despite their historical tensions, China and Japan had periods of cultural exchanges that had greatly influenced both nations. Finally, her thoughts turned to Italy and France, two countries inextricably linked by art, cuisine, and mutual history. Italy and France, she realized, epitomized the interconnectedness of the world's countries, from Ireland to Japan.","[Ireland, United Kingdom, United Kingdom, Ireland, United Kingdom, United States, Canada, United States, Canada, Russia, Ukraine, Ukraine, Russia, Ukraine, Norway, Sweden, Norway, Sweden, South Africa, Zimbabwe, South Africa, Zimbabwe, Australia, New Zealand, Australia, New Zealand, China, Japan, China, Japan, Italy, France, Italy, France, Ireland, Japan]",16,2099 +69,"One sunny afternoon, Emily and Robert, an adventurous couple from Spain, decided to visit the beautiful landscapes of Ireland after hearing stories about its mesmerizing beauty. Their friend, who had traveled throughout Ireland, had shared tales of emerald valleys, ancient castles, and warm-hearted locals, compelling them to see it for themselves. Having experienced the charming sites of Ireland, they set their sights on Argentina, inspired by the journey of their close friend Jack, who had raved about his experiences in Argentina and Brazil. He described Argentina as a place of magnificent mountains and vast pampas, while Brazil offered magical rainforests and vibrant city life, creating an irresistible wanderlust in Emily and Robert. After exploring the stunning sights of Argentina and Brazil, they got an unexpected call from their friend in Australia. She told them about a festival in Australia that celebrated the cultural ties between Australia and New Zealand, where the exchange of arts, music, and cuisines took center stage. Intrigued, Emily and Robert decided to witness this amalgamation of cultures, which further solidified their respect for Australia and New Zealand's bond. They later received word from another friend residing in Belgium who spoke of an exciting event commemorating the historical ties between Belgium and the Netherlands. Intriguingly, both Belgium and the Netherlands had histories steeped in similar traditions of craftsmanship, resulting in shared architectural and artistic styles. Finally, Emily and Robert decided to conclude their journey in South Korea, where a friendly local spoke about the influence of China in their country. He explained that South Korea and China had a dynamic relationship, a product of centuries of trade, and sometimes conflict, that shaped their current culture and way of life. Thus, this epic journey took them from Spain to South Korea, with experiences that deepened their understanding of the world's shared histories.","[Spain, Ireland, Ireland, Ireland, Argentina, Argentina, Brazil, Argentina, Brazil, Argentina, Brazil, Australia, Australia, Australia, New Zealand, Australia, New Zealand, Belgium, Belgium, Netherlands, Belgium, Netherlands, South Korea, China, South Korea, China, Spain, South Korea]",12,2005 +70,"In the heart of Africa, there is a story that connects Kenya to Egypt. The tale suggests that the ancient kingdoms of Kenya and Egypt shared a bond, trading goods and knowledge across the harsh desert. Jack, a traveler from Ireland, always dreamt of retracing the steps of these ancient traders, from the humid coasts of Kenya, through the barren Sahara, to the marvels of Egypt. On his journey, he was accompanied by his friend Hiroshi from Japan, who was fascinated by the ancient cultures and their connections. Japan itself had a vibrant history of exchanges with its neighbor, China. Hiroshi would always recount the tales of how samurais from Japan used to visit China to learn new strategies and martial arts. The mention of martial arts brought back memories to Jack about his trip to South Korea, where he experienced the discipline and beauty of Taekwondo. He learned that Taekwondo, despite being indigenous to South Korea, was influenced by ancient martial arts from China. Just as Jack was talking about martial arts, Hiroshi spoke of his visit to the United States, where he saw how baseball, considered America's pastime, had been embraced by Japan. Interestingly, the United States also had a deep connection with Canada, its historical ally and neighbor. Both the United States and Canada not only shared the world's longest international border, but also a rich history of cultural exchange and friendship. It suddenly dawned on Hiroshi and Jack that they were not just travelers, but links in a chain that stretched generations and across the globe, from Kenya to Canada, and from Japan to the United States.","[Kenya, Egypt, Kenya, Egypt, Ireland, Kenya, Egypt, Japan, Japan, China, Japan, China, South Korea, South Korea, China, United States, Japan, United States, Canada, United States, Canada, Kenya, Canada, Japan, United States]",12,1627 +71,"John, a renowned historian from the United States, specialized in studying the historical ties among nations. He found himself deeply immersed in researching the bond between North Korea and South Korea, noting that despite their political divide, shared history still tied them together. He discussed his findings with his colleague Lisa, who had an expertise in tracing the historical links between India and Pakistan. Both India and Pakistan share a similar language, culture, and history, suggesting traces of a shared past despite their political differences. These shared elements in culture and history also reminded John of the complex relationship between the United States and Canada. A shared border and common language allowed the United States and Canada to collaborate in various sectors like trade, technology, and arts. Lisa brought up her recent trip to Australia and New Zealand, and their unique relationship, sharing histories of colonialism, indigenous cultures, and a fierce sporting rivalry. She found the bonds Australia and New Zealand shared were reminiscent of the ties between Belgium and the Netherlands, two countries she explored during her sabbatical. Belgium and Netherlands, both located in Western Europe, share a rich history of trade, art, and cultural exchange. They concluded their discussion by drawing parallels with South America, particularly the close alliance and shared cultural history between Argentina and Brazil. They marveled at how interconnected these countries were, from North Korea to Brazil, illustrating the intricate web of shared histories and cultural exchanges across the globe.","[United States, North Korea, South Korea, India, Pakistan, India, Pakistan, United States, Canada, United States, Canada, Australia, New Zealand, Australia, New Zealand, Belgium, Netherlands, Belgium, Netherlands, Argentina, Brazil, North Korea, Brazil]",11,1640 +72,"In a quaint coffee shop in Portugal, Alice found herself immersed in a riveting book about the deep-rooted historical rivalry between Portugal and Spain. The book elaborated how despite their disagreements, Portugal and Spain had a shared heritage that was hard to ignore. Her friend Ben, who had lived in both Spain and Portugal, often spoke about the shared traditions and culture that overpowered their differences. Their discussion then shifted to the exotic travel stories of Ben who had recently returned from a trip to China. He spoke about the beautiful landscapes, bustling cities, and enchanting history of China, and how it beautifully contrasted with its neighboring country, Vietnam. The elegance of China and the charm of Vietnam had left a profound impact on him. He also mentioned how Vietnam and China, despite their past conflicts, shared a deep cultural bond. Ben's travel stories reminded Alice of her friend Claire who had recently moved to Canada. Claire had spoken at length about the differences between Canada and the United States; how the two countries, while very close geographically and often compared to one another, had very distinct identities. She shared stories about her experiences in both Canada and the United States, highlighting the unique cultural facets of each nation. Intrigued by such narratives, Alice too expressed her desire to explore these countries. After a day filled with tales from Spain to the United States, they walked out of the coffee shop with a newfound appreciation for the world's diverse cultures and histories.","[Portugal, Portugal, Spain, Portugal, Spain, Spain, Portugal, China, China, Vietnam, China, Vietnam, Vietnam, China, Canada, Canada, United States, Canada, United States, Spain, United States]",12,1576 +73,"John, an avid lover of history, had always been fascinated by the ancient civilizations of Egypt and their influence on Greece. The tales of how the Pharaohs' knowledge shaped the philosophies of Greece had amazed him ever since his childhood. His fascination wasn't limited to Egypt and Greece though; he was equally captivated by the historical exchanges between the Persian empires of Iran and the Indus valley civilization in Pakistan. These two countries, Iran and Pakistan, despite being so geographically apart, had a rich and intertwining history. One day, while reading a book on world history, he stumbled upon the cultural and political exchanges between the prosperous kingdoms of India and China in ancient times. The way India and China, two colossal civilizations, had intermingled their philosophies fascinated him. As he delved deeper, he discovered the lesser-known naval expeditions from the royal fleets of China visiting the archipelago of Indonesia, trading silk for spices. These maritime interactions between China and Indonesia reflected the strategic significance of the latter. His interest deepened when he read about the exploration expeditions between the United Kingdom and Australia, with the latter once seen as the ""Land of Golden Opportunities"" by the UK. Intriguingly, the connection wasn't just limited trading but was rather a complex relationship between the United Kingdom and Australia involving colonization, settlement, and later, independence. This led him to learn about the profound relationships between neighboring nations like Portugal and Spain, with their shared culture, history, and rivalry. The more John read about Portugal and Spain, the more he found himself engrossed in their fascinating intertwining histories. He was equally intrigued about the historical bonds between Belgium and the Netherlands, two countries that despite being distinct, shared a common past that was still evident in their culture. These complex ties between Belgium and the Netherlands made him even more passionate about world history. His extensive readings affirmed that the world was wonderfully intricate and deeply interconnected, right from Egypt to the Netherlands.","[Egypt, Greece, Greece, Egypt, Greece, Iran, Pakistan, Iran, Pakistan, India, China, India, China, China, Indonesia, China, Indonesia, United Kingdom, Australia, United Kingdom, Australia, Portugal, Spain, Portugal, Spain, Belgium, Netherlands, Belgium, Netherlands, Egypt, Netherlands]",15,2207 +74,"In the peaceful calm of Canada, Bob, a history enthusiast, stumbled across accounts of ancient trading routes between Canada and China. The documents hinted at merchants from China voyaging across the Pacific Ocean to trade with tribes in Canada, creating a bond between these two different worlds. This sparked his curiosity and led him to his friend Maria, a linguist from Brazil who had deep knowledge of ancient languages and cultures. Maria was excited about Bob's discovery as she had recently learned about ancient routes between Brazil and Argentina. These routes were a reflection of the intertwined histories of Brazil and Argentina, supposedly established by indigenous tribes for trade and cultural exchange. Maria then shared an interesting story about the historic relations between Russia and Ukraine, where shared cultural, linguistic, and political experiences have largely influenced their intertwined destinies. This symbiotic relationship between Russia and Ukraine reminded Bob of an ancient story he had heard about the ties between Ireland and the United Kingdom. The story spoke of a time when Ireland and the United Kingdom, despite their tumultuous history, had shared literary and cultural traditions. Maria, further intrigued, shared her travels to the Middle East, specifically to Iran and Iraq, countries inseparable in their shared history and geography. Her tales about Iran and Iraq's common heritage, despite recent conflicts, fascinated him, as they mirrored the similar situation between Israel and Egypt. Israel and Egypt, despite their political differences, have a rich shared history dating back to biblical times. Enraptured by these tales of intertwined histories, both Bob and Maria marveled at how interconnected the world truly is, from Canada's ancient ties with China to Israel's shared history with Egypt.","[Canada, Canada, China, China, Canada, Brazil, Brazil, Argentina, Brazil, Argentina, Russia, Ukraine, Russia, Ukraine, Ireland, United Kingdom, Ireland, United Kingdom, Iran, Iraq, Iran, Iraq, Israel, Egypt, Israel, Egypt, Canada, China, Israel, Egypt]",12,1853 +75,"In his youth, John had always been fascinated by the heroic tales of the samurais of Japan. He read voraciously about these warriors from Japan, their rigorous discipline, and their peculiar code of honor. Inspired, he decided to learn more about martial arts and ended up in South Korea, enrolling in a Taekwondo academy. Spending years in South Korea, he noticed parallels between the samurai culture of Japan and the martial philosophy of South Korea. His time in Asia also exposed him to the rich spiritual traditions of India. He was particularly intrigued by yoga from India, which he found to be a potent combination of physical discipline and mental concentration. On his return to the western hemisphere, he met Maria in Peru, who had a similar passion for spirituality and mysticism. She enlightened him about the Inca civilization of Peru and its unique spiritual practices. Intrigued by the Inca civilization, John became fascinated with the Mayan civilization of Mexico. He read books about Mexico, about its ancient pyramids and astronomical knowledge. Maria, inspired by John's interest in ancient civilizations, shared her experiences of visiting the pyramids in Egypt. She described Egypt with such passion that John decided to plan his next adventure there. In Egypt, he found connections with Peru and Mexico, each bound by their ancient civilizations. Through their travels, Maria and John realized how interconnected the world is, from the samurais of Japan to the pyramids of Egypt, and it only deepened their passion for exploration and learning.","[Japan, Japan, South Korea, South Korea, Japan, South Korea, India, India, Peru, Peru, Mexico, Mexico, Egypt, Egypt, Egypt, Peru, Mexico, Japan, Egypt]",14,1569 +76,"John was a seasoned traveler and had been to numerous countries around the world. He began his journey in Canada, exploring the vast wilderness and rich cultural heritage of the country. John spent a year in Canada, initially living in the vibrant city of Toronto, then making his way west to the picturesque Rockies. From Canada, he flew to its southern neighbour, the United States, where he was mesmerized by the diversity and spirit of the country. He spent another year traveling through the United States, visiting the bustling cities like New York and Los Angeles, and the beautiful national parks like Yellowstone and Yosemite. From the United States, he ventured further south to Mexico. He was enamored by the history and food culture in Mexico and spent several months traversing the country. The ruins of ancient civilizations in Mexico fascinated him and he learnt about the country's rich past. The next leg of his journey took him to Australia, a land of stunning landscapes and diverse wildlife. John found himself captivated by Australia's unique flora and fauna, and the friendly nature of its people. From Australia, he made his way to Japan. Japan's unique blend of tradition and modernity captured his heart and he spent a sizable chunk of his journey exploring the country. He admired Japan's commitment to its traditions, its technological prowess, and its obsession with perfection. From Japan, he flew to Norway, a country he had always dreamed of visiting. On his first day in Norway, he was awestruck by the fjords and the northern lights. The more he explored Norway, the more he fell in love with the country, its people, and its culture. As he boarded the flight for his next destination, South Africa, he looked back at his journey from Canada to Norway, and was filled with gratitude for the incredible experiences he had had. South Africa awaited him with its own set of adventures and wonders, and he was ready to embrace them.","[Canada, Canada, Canada, United States, United States, United States, Mexico, Mexico, Mexico, Australia, Australia, Australia, Japan, Japan, Japan, Japan, Norway, Norway, Norway, South Africa, Canada, Norway, South Africa]",18,1961 +77,"John, an avid traveler from Canada, had recently returned from an exciting trip to Japan, a country he had always wanted to visit. He was mesmerized by Japan's rich history and unique culture and was intrigued by the stories he heard about the ancient samurai warriors of Japan. In his conversations with locals, he heard tales of the historic trade relations between Japan and China, and how both Japan and China had influenced each other's art, culture, and technological progress. Captivated by these historical narratives, John decided to take his next adventure to China. Upon reaching China, he was fascinated by the Great Wall, which served as a symbol of China's strength and resilience. The locals in China also shared stories about the Silk Road and how it connected China with Iran, leading to the exchange of goods, ideas, and culture. Intrigued by this, John penciled in Iran as his next destination. Upon his arrival in Iran, John was amazed by the grandeur of the Persepolis and the many tales of Iran's ancient civilizations. In Iran, he learned of the country's deep-rooted connections with Iraq, from the shared religious beliefs to the common history of the Persian Gulf. Curiosity piqued, John subsequently decided to visit Iraq. In Iraq, he witnessed the remnants of Babylon, illustrating Iraq's significance in world history. Iraq's historical narrative also emphasized its ties with Turkey, a country known for its rich history and diverse culture. John then mapped out his route to Turkey, eager to explore another chapter in the grand tale of interconnected nations. In Turkey, the grandeur of the Hagia Sophia awestruck him, sparking conversations about Turkey's unique position at the crossroads of Europe and Asia. Stories of Turkey's past reminded him of Greece's history, particularly Turkey and Greece's shared heritage and sometimes tumultuous coexistence. This made John eager to continue his historical exploration in Greece. The links that had drawn him from Canada to Japan, from there to China and Iran, and eventually to Iraq, Turkey, and Greece, reminded him of the intricate web of connections that made up human history.","[Canada, Japan, Japan, Japan, Japan, China, Japan, China, China, China, China, China, China, Iran, Iran, Iran, Iran, Iran, Iraq, Iraq, Iraq, Iraq, Iraq, Turkey, Turkey, Turkey, Turkey, Turkey, Greece, Turkey, Greece, Greece, Canada, Japan, China, Iran, Iraq, Turkey, Greece]",17,2161 +78,"Jenny, a travel enthusiast from the United States, had a particularly fascinating story to tell about her time in Russia. She insisted that the more she traveled around Russia, the more it felt like she was navigating through a book of diverse and complex tales. She further mentioned that the art, culture, and history of Russia left a profound impact on her, making her visit all too memorable. Recently, she met Kazuo, a friend from Japan, who had a completely unique experience in Iran. He claimed Iran to be a nation of warm hospitality and stunning heritage, contrasting drastically with the public perception of Iran. Kazuo explained how Iran, despite controversies, held immense beauty and complex history that would surprise many. He also had a chance to explore Pakistan, and he found it equally diverse and intriguing. Each city in Pakistan, he noted, told a different story and held fascinating secrets that often went unnoticed in the world's eyes. Meanwhile, Jenny also had a fantastic experience during her visit to Australia. The wildlife, the landscapes, and the laid-back lifestyle of Australia were both thrilling and relaxing at the same time. She stated how Australia's natural beauty and its unique flora and fauna were truly captivating. Speaking of natural beauty, Jenny and Kazuo were both eager to visit Canada. Stories of the breathtaking landscapes, wildlife, and multicultural cities of Canada had always intrigued them. Canada, they believed, symbolized a perfect blend of urban life harmoniously co-existing with nature. After exchanging tales of travel and their shared yearning for Canada, they concluded that exploring different nations like Russia, Iran, Australia, and Pakistan opens doors to learning about diverse cultures, histories, and lifestyles. It was the shared understanding of the immense beauty each country held, and the desire to see more of the world that strengthened their bond.","[United States, Russia, Russia, Russia, Japan, Iran, Iran, Iran, Iran, Pakistan, Pakistan, Australia, Australia, Australia, Canada, Canada, Canada, Canada, Russia, Iran, Australia, Pakistan]",16,1931 +79,"As a historian, Alice was fascinated by the ancient civilizations of Greece and Egypt. She loved reading about how scholars from Greece and Egypt exchanged ideas, contributing to the foundation of philosophical and mathematical thoughts. Alice, who was from the United States, had a longtime friend, Ying, from China. Ying, who studied ancient arts, was particularly interested in the historical links between China and Japan. She explained that the cultural exchanges between China and Japan had fostered a significant development in arts, religions, philosophy, and social organizations. It was evident that Alice and Ying shared a profound interest in the historical connections between countries. Alice, fondly reminiscing about her trip to Australia, mentioned its curious connection with New Zealand. She mentioned how Australia and New Zealand shared a similar culture and history, with both being colonies of the United Kingdom. Ying, reminded of her visit to South Korea, shared how she learned about the deep cultural and historical connections between North Korea and South Korea. Despite the current political divide, there was undeniable shared heritage and history between North Korea and South Korea. Both excitedly shared stories about their visit to Europe, Alice had been to Ireland and Ying had visited Poland. Alice brightened up talking about the shared culture of Ireland and the United Kingdom, while Ying shared her fascination with the rich history and cultural ties between Poland and Ukraine. As they connected these dots, they found themselves growing more passionate about history and decided to plan a trip to explore more connections around the world.","[Greece, Egypt, Greece, Egypt, United States, China, China, Japan, China, Japan, Australia, New Zealand, Australia, New Zealand, United Kingdom, South Korea, North Korea, South Korea, North Korea, South Korea, Ireland, Poland, Ireland, United Kingdom, Poland, Ukraine]",13,1682 +80,"In the heartland of Argentina, a team of archaeologists unearthed ancient artifacts believed to have links to the indigenous cultures of Brazil. These artifacts were a testament to a historical bond between Argentina and Brazil, bonds that spanned commerce, culture, and shared histories. Intrigued by this, a historian from the United States began researching historical records, asserting there were similar cultural exchanges between United States and Canada. The evidence suggested that despite the political boundaries, the indigenous communities of the United States and Canada were interconnected in their beliefs, customs, and trading routes. This reminded the historian of his colleague from South Korea, who had dedicated her life to unraveling the historical ties between South Korea and North Korea. Despite modern tensions, she explained, the past of South Korea and North Korea was full of shared mythologies, philosophies, and even royal lineages. Recalling her work, the historian was encouraged to delve deeper into European histories, particularly of Poland and Ukraine. He discovered that Poland and Ukraine, despite distinct identities, shared common historical threads; they had alternately been allies or enemies over centuries, shaping each other's history. While exploring this, he stumbled upon an interesting account of Australia's relationship with New Zealand. Both Australia and New Zealand, isolated in the Pacific Ocean, had closely knit bonds since ancient times, with migration, trade, and even sports. The historian's wife, a botanist from Ireland, had her own tales to share; she had unearthed fascinating links between the native flora of Ireland and Scotland. The plants of Ireland and Scotland, she proposed, told a story of ancient land bridges and shared ecosystems. As they shared their findings, they marveled at the complex web of relationships that spanned from Argentina to Scotland, demonstrating the interconnectedness of our world's histories.","[Argentina, Brazil, Argentina, Brazil, United States, United States, Canada, United States, Canada, South Korea, South Korea, North Korea, South Korea, North Korea, Poland, Ukraine, Poland, Ukraine, Australia, New Zealand, Australia, New Zealand, Ireland, Ireland, Ireland, Argentina]",13,1991 +81,"On a historical expedition in Vietnam, professor Albert uncovered evidence of an ancient civilization that had moved from China. The artifacts had intricate designs and symbols that were distinctly from China's long-lost dynasties, suggesting an unknown migration. Elated from his discovery, Albert decided to share the news with his colleague, professor Catherine, an archaeology expert residing in Canada. She expressed excitement and revealed an interesting fact about the indigenous tribes within Canada and their ancestral connections to the United States. Many tribes in Canada, she revealed, had migrated from the United States, carrying with them rich cultural traditions and histories that continue to thrive today. Catherine had also collaborated with an archaeologist from Australia, who had discovered ties between the indigenous cultures of Australia and New Zealand. Both Australia and New Zealand housed tribes that shared certain hunting techniques, artistic styles, and even linguistic patterns, pointing towards a common ancestor. Albert recalled his recent trip to the exotic landscapes of Peru, where he had learned about its historical connections with Argentina. Peru and Argentina, he learned, had strong historical links due to shared Inca traditions and the movement of people between the two territories in ancient times. Speaking of South America, Catherine shared her intriguing research on the pre-colonial connections between Mexico and Cuba. She explained that Mexico and Cuba had ancient ties, probably linked through trade and the Caribbean sea currents. Albert then reminisced about his experiences in Greece where he had discovered links between Greece and Italy. Both Greece and Italy, it seemed, were part of an ancient network of intellectual and commercial exchanges that shaped the western civilization. As the conversation ended, they realized how interwoven the world truly was - from Vietnam to Italy, human history had created countless connections across continents.","[Vietnam, China, China, Canada, Canada, United States, Canada, United States, Australia, Australia, New Zealand, Australia, New Zealand, Peru, Argentina, Peru, Argentina, Mexico, Cuba, Mexico, Cuba, Greece, Greece, Italy, Greece, Italy, Vietnam, Italy]",14,2011 +82,"Travelling through Norway, Anna came across ancient tales of Viking expeditions to Ireland. The stories described how the fierce Vikings from Norway had established settlements in many parts of Ireland, transforming its landscape and culture. After her trip to Norway, she journeyed to Ireland, hoping to unearth more about the Viking history hidden in its verdant valleys. In Ireland, the Vikings' influence was still palpable through the myriad of artifacts displayed in the local museums and the intriguing tales spun by the locals. While in Ireland, she met a researcher from Australia who was studying the movements of the Vikings. He shared some fascinating insights about the Vikings' travels to the United Kingdom, and how they had left a profound impact there too, raiding and settling in what are now England, Scotland, and Northern Ireland. This sparked Anna's curiosity about Australia, prompting her next career move to the continent down under. Once in Australia, she discovered an entirely different narrative of indigenous cultures and European colonization. Interestingly, she found parallels to the history of colonisation in New Zealand. Discussions with locals and historians led her to understand that Australia and New Zealand share a complex cultural and political history, their paths shaped by European interventions. Recalling her earlier passion for the Viking history, she decided to travel to Sweden, another country with a rich Viking past. The country's history reminded her of the tales she had heard in Norway, especially the exploits of the Vikings in Sweden and their adventures across the North Sea. In Sweden, she delved deeper into the history of Viking travels to Russia, a country that had been significantly impacted by the Vikings. She found the connections between Sweden and Russia fascinating, the imprint of Viking trade routes still visible through the historical sites scattered across Russia. Her journey through Norway, Ireland, Australia, New Zealand, Sweden and Russia had been a fascinating exploration of historical links and cultural exchanges, leaving her with a deeper understanding and appreciation of the interconnected world.","[Norway, Ireland, Norway, Ireland, Norway, Ireland, Ireland, Ireland, Australia, United Kingdom, Ireland, Australia, Australia, New Zealand, Australia, New Zealand, Sweden, Norway, Sweden, Sweden, Russia, Sweden, Russia, Russia, Norway, Ireland, Australia, New Zealand, Sweden, Russia]",15,2185 +83,"In his travels, John had the opportunity to visit Vietnam, where he learned about the country's long-rooted cultural ties with China. It seems that ancient dynasties in Vietnam were deeply influenced by the philosophy, art, and culture from China. He then flew to Japan, another country that shared an intricate and complex history with China. The two nations, Japan and China, have shared a heated rivalry and mutual respect over the course of history. After returning home to Canada, he read a book about the historical relationship between Spain and Portugal. The book shed light on the intense competition and cooperation that existed between Spain and Portugal during the era of exploration. On a lunch break one day, he chatted with a friend from Iran who mentioned the ancient trade links between India and Iran. Apparently, merchants would sail from India to Iran, trading spices, textiles, and precious stones. Intrigued, John started researching more about Iran and discovered that the Persians had even established trade connections with Russia. It was arresting to learn that both Iran and Russia were linked through centuries of trade, cultural exchange, and occasional conflicts. His friend from South Africa then told him about a fascinating documentary showcasing the historical ties between the United Kingdom and South Africa. The documentary illustrated how the United Kingdom had a significant influence on South Africa, shaping its institutions and infrastructure. Swapping stories about her own travels, his friend mentioned her unforgettable trip to Argentina and its stunning landscapes that reminded her of neighboring Brazil. Interestingly, Argentina and Brazil share not only borders but also cultural elements, football rivalries, and a history of political alliances and tensions. Their conversation left them both astounded at the interconnectedness and shared histories of countries from Vietnam to Brazil.","[Vietnam, China, Vietnam, China, Japan, China, Japan, China, Canada, Spain, Portugal, Spain, Portugal, Iran, India, Iran, India, Iran, Iran, Russia, Iran, Russia, South Africa, United Kingdom, South Africa, United Kingdom, South Africa, Argentina, Brazil, Argentina, Brazil, Vietnam, Brazil]",15,1937 +84,"As Alice walked the bustling streets of Mexico, she couldn't help but marvel at the vibrancy and warmth that reminded her of her home country, India. She began comparing the street food markets of Mexico with those in India, realizing that despite the wide geographical and cultural distance, there were uncanny similarities. On the other hand, her friend John, who hailed from Australia, shared stories of his homeland. He spoke fondly of the stunning landscapes that defined Australia, the wildlife, and the serene beaches, drawing a stark contrast to the rugged beauty of Canada. Canada, where Alice had visited once, was indeed a magnificent land boasting snow-capped peaks, lush forests, and vast open space. Subsequently, their conversation shifted towards Europe, and John reminisced about a trip he took some years ago to Spain. Landmark buildings, rich history, and exquisite cuisine were some of the things that made Spain unforgettable for him. However, he noted, there was a unique charm about neighboring Portugal. Both Spain and Portugal, he explained, had a lasting impact on world history due to their exploration and colonization efforts. Alice, on her part, shared fascinating details about her recent trip to Iran. Iran's rich history, she said, was deeply intertwined with that of Iraq, prompting her to visit Iraq next. She recounted tales of the beautiful landscapes, ancient ruins, and friendly locals in Iran and Iraq that mesmerized her. Lastly, both friends agreed that no travel conversation could be complete without mentioning Italy. While Alice had always been enchanted by the architectural grandeur and artistry of Italy, John couldn't stop praising Italy's delectable cuisine and wine culture. They both dreamed about their next adventure, hoping to explore more wonders that lay within the borders of countries like India, Australia, Canada, Spain, Portugal, Iran, Iraq, and Italy.","[Mexico, India, Mexico, India, Australia, Australia, Canada, Canada, Spain, Spain, Portugal, Spain, Portugal, Iran, Iran, Iraq, Iraq, Iran, Iraq, Italy, Italy, Italy, India, Australia, Canada, Spain, Portugal, Iran, Iraq, Italy]",15,1915 +85,"In his travels, Jake had been fascinated by the natural wonders of Australia, from its towering cliffs and eucalyptus forests to the bustling wildlife of the outback. His next stop was New Zealand, a land equally renowned for its scenic beauty including shimmering lakes and towering mountains. In contrast to Australia, New Zealand was characterized by a milder climate and more hilly terrain. He then traveled to South Africa, intrigued by stories of its diverse wildlife and breathtaking landscapes. South Africa offered him an opportunity to explore the subtropical regions, different from the temperate zones of Australia and New Zealand. On his return, he visited India, drawn by its rich culture and historical significance. The architecture in India, particularly the ancient temples and palaces, held him in awe. The contrast between India's bustling cities and tranquil rural areas was striking. He then decided to explore the United States, home to a broad variety of landscapes and cultures. The United States, with its buzzing metropolises and vast natural parks, presented a unique blend of modernity and wilderness. On his journey to Cuba, he was enchanted by the country's vibrant culture and its love for music and dance. Cuba, with its rich history and distinctive architectural styles, was a photographer's paradise. His final destination was the United Kingdom, a place steeped in history and tradition. The United Kingdom, with its dramatic landscapes and magnificently preserved castles, offered a dive into a fascinating past. As Jake looked back on his travels from Australia to the United Kingdom, he was reminded of the diversity and richness of our planet, a world teeming with history, culture, and natural wonders.","[Australia, New Zealand, Australia, New Zealand, South Africa, South Africa, Australia, New Zealand, India, India, India, United States, United States, Cuba, Cuba, United Kingdom, United Kingdom, Australia, United Kingdom]",15,1743 +86,"Jane, a seasoned traveler from the United States, had a deep fascination with the cultural ties between countries. She had recently come across some documentaries highlighting the historic threads connecting the United Kingdom to Ireland. In the documentaries about Ireland and the United Kingdom, she learned about the shared history, bloodlines, and contentious political past. Intrigued, she decided to call her friend Carlos, a historian from Mexico, to discuss these findings. Carlos, having spent years studying Latin America, was keen to share his knowledge about the intertwined histories of Mexico and Argentina. He told Jane about the migration patterns between Mexico and Argentina and their shared revolutionary pasts. Meanwhile, Jane remembered her visit to South Africa, where she had learned about the country's deep connections with Zimbabwe. She elaborated on the dynamics between South Africa and Zimbabwe, discussing their shared struggle against colonialism and their ongoing economic interdependence. Feeling adventurous, Jane shared her dream of visiting Egypt, fascinated by the country's ancient ties with Israel. Carlos marveled at the intricate relationship between Egypt and Israel, from their Biblical connections to the modern political landscape. Jane, in return, expressed her longing to experience the cultures of Japan and South Korea firsthand. She had read extensively about Japan and South Korea, their shared history, their wars, and their fragile peace. As Jane and Carlos ended their call, they marveled at the rich tapestry of interconnectedness, stretching from the United States to South Korea, revealing a world that was complex, diverse, and beautifully connected.","[United States, United Kingdom, Ireland, Ireland, United Kingdom, Mexico, Mexico, Argentina, Mexico, Argentina, South Africa, Zimbabwe, South Africa, Zimbabwe, Egypt, Israel, Egypt, Israel, Japan, South Korea, Japan, South Korea, United States, South Korea]",13,1708 +87,"Ella and John are writers who love to travel, drawing inspiration from their journeys. They first set off to Italy, visiting Rome and Venice, finding hidden tales in every corner of Italy. Fascinated by the romances in Italy, they decided to explore France next, getting absorbed in the rich culture and vibrant arts of France. In Paris, they spun tales about knights of France, which were met with much appreciation from their readers. They decided then to journey to the realms of Spain, leaving behind the streets of France for the majestic castles of Spain. Spain, with its flamenco music beating at its heart, lent vibrant hues to their stories. John, having a deep interest in history, suggested a visit to Egypt after their tour of Spain. They visited the pyramids, the Sphinx, and the ancient temples of Egypt, constantly marveling at the grandeur of Egypt. From Egypt, they traveled to Greece, immersing themselves in the myths and legends that abound in Greece. The mythical creatures of Greece and its ancient gods colored their stories beautifully. Their adventures then took them to Japan, where they learned about the samurai and the geishas of Japan. Japan, they felt, was a unique blend of tradition and modernity. Inspired by the tranquility of Japan, they decided to visit India next, where they explored the mystical temples and tasted the exotic spices of India. They were enchanted by the diverse culture and rich traditions of India. As they journeyed from Italy to India, Ella and John realized how much their stories reflected the diversity of cultures, the essence of the countries they visited, and their own growth as storytellers.","[Italy, Italy, Italy, France, France, France, Spain, France, Spain, Spain, Egypt, Spain, Egypt, Egypt, Egypt, Greece, Greece, Greece, Japan, Japan, Japan, Japan, India, India, India, Italy, India]",15,1658 +88,"Sarah, an avid traveler from the United States, had spent a considerable amount of time in France and was fascinated by its history and culture. Her experiences in France had given her a deeper understanding of the world, inspiring her to visit more countries to learn about their histories. She shared her experiences with her friend John from Australia, who was interested in the wildlife and ecology of different regions. He mentioned his travels to Kenya and how the local tribes in Kenya had a culture vastly different from Australia. His stories about Kenya intrigued Sarah, piquing her interest in the African continent. Sarah, in turn, told John about her visit to Colombia, where she dived deep into the country's history of emeralds and other precious gems. During her time in Colombia, she had visited the emerald mines and learned how the mining industry had shaped the country's economy. It was the richness of Colombia's history that led her to her next destination, Peru, known for its Incan heritage. She shared tales about Peru, filled with myths, mysteries, and ancient civilizations that fascinated John. Intrigued by Sarah's tales, John spoke about his visit to north, to Russia. He found Russia vastly different from Australia, with its vast landscapes and rich history that dated back many centuries. His fascination for Russia led him to explore more about its neighboring country, Ukraine. He found the shared history of Russia and Ukraine intriguing, with its many cultural, political, and historical overlaps. This led them both to ponder about how interconnected the world is, from the United States to Ukraine, each country with its unique story to tell. They ended the evening with a promise to explore the world more and find the hidden stories within the landscapes of these incredible countries.","[United States, France, France, Australia, Kenya, Kenya, Australia, Kenya, Colombia, Colombia, Colombia, Peru, Peru, Russia, Russia, Australia, Russia, Ukraine, Russia, Ukraine, United States, Ukraine]",15,1827 +89,"Once upon a time, there was a history professor from the United States who led an epoch-making expedition to the deep jungles of Mexico. The expedition aimed to uncover the lost cities of Mexico, rumored to hold ancient artifacts dating back thousands of years. Just the thought of setting foot on the same soil that had been tread by ancient civilizations filled the professor and his team from the United States with a surge of adrenaline. As they ventured deeper into Mexico, they found themselves coming across remnants of civilizations that hinted at strong ties with Colombia. The artifacts, they believed, symbolized a time when traders from Mexico traveled south to Colombia, exchanging goods and ideas. The professor, fascinated, decided to take his team next to Colombia, where they would attempt to dig deeper into this historical connection. During their time in Colombia, the professor and his team discovered more clues to ancient civilizations that mirrored those they had found in Mexico. They learnt about the great voyages undertaken by seafarers from Colombia to the distant shores of Venezuela. Hearing this, the professor was anxious to return to the United States to share his findings and plan another expedition, this time to Venezuela. His time in Colombia had only heightened his curiosity about the possible links between Venezuela and Colombia in the past. As expected, his voyage to Venezuela opened up another chapter of history that reflected the intertwined past of Venezuela and Colombia. The professor's voyages from the United States to Mexico, then to Colombia, and finally to Venezuela created ripples in the world of archaeology. His journeys brought to light the interconnectedness of these countries, uniting continents and people through their shared pasts. He returned to the United States a changed man, profoundly moved by how, despite the vast distances, the similar threads of human history connected countries as disparate as Colombia and the United States.","[United States, Mexico, Mexico, United States, Mexico, Colombia, Mexico, Colombia, Colombia, Colombia, Mexico, Colombia, Venezuela, United States, Venezuela, Colombia, Venezuela, Colombia, Venezuela, Venezuela, Colombia, United States, Mexico, Colombia, Venezuela, United States, Colombia, United States]",14,2004 +90,"John, a travel blogger from Australia, had been mesmerized by the vibrant culture and history of Mexico, where he was currently exploring. He had taken a particular interest in the ancient Mayan civilization, which once flourished in Mexico and whose influence could still be seen in the country's architecture and traditions. While in Mexico, he had also discovered a shared history with Peru, where Mayan traders were believed to have ventured for trade. By studying the artifacts and tales in Peru, John was able to see a reflection of Mexico's bygone era. His adventures in Mexico and Peru fueled his interest in indigenous cultures, leading him to plan a trip to Canada. His journey to Canada introduced him to the rich and colourful traditions of the First Nations. In Canada, he found echoes of Australia's own native tribes, reinforcing his belief in the interconnectedness of cultures. His exploration in Canada led him to learn about the country's historical ties with the United Kingdom. Having spent a year in the United Kingdom earlier, he couldn't help but see the shared patterns of history, architecture, and societal structures between Canada and the United Kingdom. The following year, he decided to explore Asia, starting with South Korea. He was taken by the technological advancements in South Korea, a stark contrast to the traditional cultures he had been studying. South Korea fascinated him with its unique blend of tradition and modernity, reminding him of his own hometown in Australia. The urban fabric of South Korea, he thought, was reminiscent of the United Kingdom's bustling cities. His travels didn't stop there, as he ventured to India, drawn by its rich history and diversity. He found that, much like Australia, India was a melting pot of cultures, languages, and traditions, just with a different flavor. He realized that no matter where he went, be it Mexico or South Korea, India or Canada, each country had its unique charm and a story to tell.","[Australia, Mexico, Mexico, Mexico, Peru, Peru, Mexico, Mexico, Peru, Canada, Canada, Canada, Australia, Canada, United Kingdom, United Kingdom, Canada, United Kingdom, South Korea, South Korea, South Korea, Australia, South Korea, United Kingdom, India, Australia, India, Mexico, South Korea, India, Canada]",16,1985 +91,"Maria, who hailed from Australia, gathered with her friends to discuss their recent travels and discoveries. They began with their visits to the United States, reflecting on the mesmerizing cityscapes and diverse cultures that define the United States. They then moved on to describe Canada, reminiscing about Canada's breath-taking landscapes and friendly locals. The conversation shifted as they recounted their experiences in Mexico, marvelling at the vibrant festivals and centuries-old traditions that shape Mexico. Oliver, the anthropologist, regaled them with tales from Brazil. He spoke about Brazil's wildlife, the Amazon rainforest, its indigenous cultures, and the sense of adventure the country offered. From Brazil, the conversation moved to Argentina, discussing the country's rich history, from its colonial past to a thriving nation today. Argentina, they mused, had as much charm as Brazil, with a unique blend of European influences alongside indigenous traditions. Grace, who studied linguistics, shared her recent journey to China and the deep immersion she had experienced into the Mandarin language there. She also recalled the ancient history of China and how it still influences modern China in many ways. Grace's twin, Hannah, spoke excitedly about her recent trip to Japan. She recounted how Japan was a country that seemed to effortlessly blend traditional cultures with ultra-modern technology. Japan, she said, was a country where one could feel a deep sense of spirituality amidst neon-lit cities. As the night grew older, the friends reflected on their shared trip to India, where they had experienced a stunning array of cultures, cuisines and landscapes. They reminisced about India's architectural marvels, the warmth of its people and the mystic allure of its spirituality. Towards the end of the evening, they found themselves talking about their dream destinations, and Italy was a unanimous choice. They all shared a collective dream of experiencing Italy's rich history, exquisite cuisine, and the romance that the country promised. Italy, they agreed, held a charm that seemed to beckon travellers from across the globe.","[Australia, United States, United States, Canada, Canada, Mexico, Mexico, Brazil, Brazil, Brazil, Argentina, Argentina, Brazil, China, China, China, Japan, Japan, Japan, India, India, Italy, Italy, Italy]",18,2160 +92,"In the picturesque landscapes of Norway, a budding archaeologist named Peter uncovered a peculiar artifact that hinted at an intricate connection between Norway and Sweden. The artifact insinuated that ages ago, traders from Sweden might have voyaged to Norway, bringing with them unique cultural elements. As he dug deeper, Peter discovered more artifacts resembling those found in Poland, showing evidence of a historical connection between Norway and Poland. It seemed that at one point in history, Norway might have had significant interaction with Poland, possibly through trade or migration. Sharing this discovery with his university professor in Canada, Peter was encouraged to explore this further. Interestingly, the professor also recited legends from Canada, detailing the migration stories and cultural exchanges with the United States. Canada, it seemed, shared a rich and intricate history with the United States, a testament to their geographic proximity and socio-political ties. During this conversation, Peter recalled his time in Argentina, where he came across narratives of exchanges between Argentina and Brazil. Intriguingly, Argentina and Brazil, despite their differences, had a shared heritage rooted in indigenous cultures and European colonization. Thinking of his time in Brazil, Peter remembered how stories of sugar-exporting routes to Portugal were common. Brazil and Portugal, bound by colonial history, had a complex relationship that shaped their identities. The professor, listening intently, shared that he had spent time in India, where he had learned about the nation's historical links with Pakistan. The shared history between India and Pakistan, he explained, was an intricate narrative of culture, conflict, and camaraderie, just like those of Norway with Sweden and Poland, Argentina with Brazil, or Canada with the United States. As they ended their conversation, they both reflected on the complex web of connections that linked countries across continents.","[Norway, Norway, Sweden, Sweden, Norway, Poland, Norway, Poland, Norway, Poland, Canada, Canada, United States, Canada, United States, Argentina, Argentina, Brazil, Argentina, Brazil, Brazil, Portugal, Brazil, Portugal, India, Pakistan, India, Pakistan, Norway, Sweden, Poland, Argentina, Brazil, Canada, United States]",14,2004 +93,"While Sarah was excited about her upcoming trip to Italy, she fondly remembered her previous journey to Australia and New Zealand. She had made lifelong friends in Australia and had been amazed by the diverse wildlife and stunning landscapes of New Zealand. Back in Italy, she was planning to visit the vineyards, flooded with memories of her visit to France where she had tasted the world's best wines. Her experiences in France had enraptured her with a love for wine that she hoped to find again during her stay in Italy. That's when her friend Mark, from Canada, suggested she try the ice wines there. He boasted about the unique sweetness of the ice wines produced in Canada, explaining that the freezing weather conditions in Canada had a role to play in its incredible taste. This made Sarah think of her trip to Russia, where she had endured the harsh winters, but had been equally mesmerized by the beauty of its snow-covered landscapes and the warm hospitality of the people there. Russia, with its tumultuous history and magnificent architecture, had left a profound impact on her. Mark then recalled his adventures in South Korea and North Korea. While South Korea offered him a blend of modernity and tradition, his visit to North Korea was both mysterious and challenging. South Korea's energetic cities and North Korea's secretive aura had both left an indelible mark on his traveler's soul. They then talked about their combined trip to Mexico and Cuba, where they had experienced vibrant colors, rich history, and spicy foods. From the ancient ruins in Mexico to the stunning beaches of Cuba, they realized how much they had learned about themselves and others during their travels. As they bid goodbye, they promised to meet again, maybe in a new country, where they would write another chapter of their unending travel stories.","[Italy, Australia, New Zealand, Australia, New Zealand, Italy, France, France, Italy, Canada, Canada, Canada, Russia, Russia, South Korea, North Korea, South Korea, North Korea, South Korea, North Korea, Mexico, Cuba, Mexico, Cuba]",14,1846 +94,"As a diplomat from the United States, Michael had the opportunity to travel widely and learn about the intricacies of global politics. Striking up a conversation with a fellow diplomat from Canada at a summit in New York, he learned about the nuanced relationship between the United States and Canada; how they shared not only a border, but a multitude of cultural and economic ties. He was fascinated by the unique dynamics between Australia and New Zealand as well, as he had recently been posted there. Being neighboring countries, Australia and New Zealand shared a deep bond cultivated over the years through a shared history, culture, and friendly competition. This stirred his interest in similar dynamics between other nations such as South Korea and North Korea. Despite their political differences, the shared history and culture between South Korea and North Korea is undeniably profound. He then recalled his previous posting in Iran, where he had learned a lot about its complex relationship with Iraq. The adversities and struggles between Iran and Iraq had shaped their histories in the most significant of ways. His thoughts shifted towards Europe, particularly Norway and Sweden. He had always been inspired by the peaceful co-existence of Norway and Sweden, two nations known for their progressive societies. When he returned to the United States, he remembered his interactions with diplomats from Mexico and how they often discussed underlying bonds and issues between the United States and Mexico. Both the United States and Mexico had strong economic ties and a shared border, along with a history filled with conflict and cooperation. Little did he know that a career in diplomacy would offer him such a deep understanding of how interconnected the world truly is, from the United States to Sweden, Mexico to Norway, and beyond.","[United States, Canada, United States, Canada, Australia, New Zealand, Australia, New Zealand, South Korea, North Korea, South Korea, North Korea, Iran, Iraq, Iran, Iraq, Norway, Sweden, Norway, Sweden, United States, Mexico, United States, Mexico, United States, Mexico, United States, Sweden, Mexico, Norway]",13,1851 +95,"In the bustling markets of India, Marie, a trained archaeologist, overheard stories of an ancient wall built to protect against invasions from Pakistan. Intriguingly, it seemed that the wall, although iconic in India, was also a point of historical significance for Pakistan, marking a shared past of conflicts and collaborations. Inspired, she recounted the tales to Thomas, an avid historian from Australia, familiar with tales of interlinked histories between Australia and New Zealand. The Maori folk tales from New Zealand were echoed in Aboriginal stories of Australia, painting a parallel tapestry of rich cultural history that linked Australia and New Zealand. Thomas, in turn, shared the tales from South Africa, where he worked on a dig, unearthing connections between the Zulus of South Africa and the Maasai of Kenya. South Africa and Kenya, despite their geographical distance, seemed to share migration stories that connected their people in extraordinary ways. Moving onto a different continent, Marie spoke of her recent expedition to Poland, where she discovered evidence of ancient trade links with Ukraine. The traditional crafts found in Poland bore striking resemblance to those in Ukraine, indicating a significant crossover of culture and trade. On a similar note, Thomas disclosed his knowledge about the age-old ties between Argentina and Brazil. The indigenous cultures of Argentina shared uncanny similarities with that of Brazil, further exemplifying the interconnectedness of histories. Marie, remembering her visit to Israel, shared stories of its linked history with Egypt, where artifacts identical to those found in Israel were discovered. Both Egypt and Israel, holding a complex shared history, reflected in their art, culture, and archaeological remnants. Through their discussion, from India to Israel, Marie and Thomas marveled at how intricately histories of different countries were intertwined, creating a fascinating web of shared cultures and experiences.","[India, Pakistan, India, Pakistan, Australia, Australia, New Zealand, New Zealand, Australia, Australia, New Zealand, South Africa, South Africa, Kenya, South Africa, Kenya, Poland, Ukraine, Poland, Ukraine, Argentina, Brazil, Argentina, Brazil, Israel, Egypt, Israel, Egypt, Israel, India, Israel]",13,1998 +96,"In Emily's journey across the globe, she found a peculiar connection between North Korea and South Korea. It was evident that North Korea and South Korea shared deep cultural ties, despite political differences. Emily's travels also led her to the bustling streets of India, where she learned about its longstanding relationship with Iran. Historically, India and Iran worked together to establish trade routes and cultural exchanges, which strengthened their bond over time. She then visited Russia, intrigued by its historical connections with Ukraine. The intertwined histories of Russia and Ukraine often mirrored each other, reflecting their shared past and complex dynamics. Emily's journey then brought her to Italy, where she discovered an ancient route that linked it with Greece. She learned that Italy and Greece, despite their unique cultures, had distinct influences on each other in terms of architecture, philosophy, and cuisine. Emily's path then led her to South Africa, and she was surprised to learn about its connections with Zimbabwe. South Africa and Zimbabwe, despite being geographically close, had surprisingly divergent histories, yet shared certain cultural elements. This prompted her to visit the United States, where she had always been intrigued by the relationship it had with its neighbor, Canada. She found that the United States and Canada, though distinct, share a long history of cooperation and shared culture. Finally, Emily journeyed to Australia, fascinated by its ties with neighboring New Zealand. Here, she discovered that Australia and New Zealand have a unique relationship; they’re distinctly different yet undeniably interconnected. Intriguingly, her journey gave her a unique understanding of how these nations, from North Korea to Australia, even with their contrasting cultures, shared a tapestry of interconnected histories.","[North Korea, South Korea, North Korea, South Korea, India, Iran, India, Iran, Russia, Ukraine, Russia, Ukraine, Italy, Greece, Italy, Greece, South Africa, Zimbabwe, South Africa, Zimbabwe, United States, Canada, United States, Canada, Australia, New Zealand, Australia, New Zealand, North Korea, Australia]",15,1876 +97,"James, an avid traveler from the United States, found himself in Argentina, fascinated by the rich history and vibrant culture. His curiosity about Argentina's past was sparked by stories about the Indigenous people who had been there long before European settlers arrived. Interestingly, he learned that Argentina had a profound cultural exchange with Brazil, due to their geographical proximity. Argentina and Brazil, despite their political differences, shared many similar cultural practices and traditions. Inspired by the intertwining histories of Argentina and Brazil, James planned his next journey to Italy. While in Italy, stories of how Italy had been profoundly influenced by Greece fascinated him. From Italy's architecture to philosophy, the impact of Greece was truly remarkable. Italy and Greece, in many ways, seemed like siblings separated at birth. After Italy, James was drawn to the unique cultures and histories of Asia. He decided to visit China, where he learned about China's one-time most influential ally, North Korea. Despite the significant changes in their relationship over the years, China and North Korea share a dynamic and complex history that defies simple categorization. Then, the stories of North Korea's estrangement from South Korea intrigued him. Intrigued by Korea's split, he traveled to South Korea to understand the other side of the story. South Korea, he discovered, had a completely different narrative to share about their relationship with North Korea. As he ended his trip in South Korea, he realized how compelling the stories of different nations are, from Argentina to South Korea, and how their histories are interconnected.","[United States, Argentina, Argentina, Argentina, Brazil, Argentina, Brazil, Argentina, Brazil, Italy, Italy, Italy, Greece, Italy, Greece, Italy, Greece, Italy, China, China, North Korea, China, North Korea, North Korea, South Korea, South Korea, South Korea, North Korea, South Korea, Argentina, South Korea]",15,1680 +98,"John, a history enthusiast from Australia, had always been drawn to the intriguing stories of ancient civilizations and their hidden treasures. During his studies, he found that Australia had been a crossroads of cultures, with influences flowing from the far clubs of Indonesia, enriching the local societies. Indonesia, with its diverse culture and rich history, had a lot more to offer than it had received. Similarly, according to an ancient text John discovered, there was evidence of strong connections between the cultures of Egypt and Iran. The text suggested that Egypt and Iran might have influenced each other's architectural styles, owing to the trades and nomadic migrations between the two. Intrigued by this interplay of influences, John decided to delve deeper, leading him to the complex relationship between Brazil and Argentina. The historical records revealed that Brazil and Argentina, despite their differences, were tied together by a shared history of colonial conquest, rebellion, and periods of peace. To his surprise, he stumbled upon a document about a significant trade agreement between Poland and Sweden in the 15th century. It appeared that Poland and Sweden, despite political tensions, had formed alliances for mutual benefits, resulting in interesting overlaps in their folklores. As he researched further, John discovered that the United Kingdom and Ireland had a similarly complicated yet intriguing shared history. The United Kingdom and Ireland, despite their tumultuous past, have witnessed cultural exchanges and shared literary traditions. Lastly, a short anecdote about the close-knit relationship between South Korea and Japan caught his interest. The story revealed how South Korea and Japan, two nations with a complicated history, have influenced each other's cuisine, art, and music. Reflecting on his research, John marveled at the intricate web of relationships that exists between countries such as Australia and Japan, revealing the fascinating tapestry of human history and cultural evolution.","[Australia, Australia, Indonesia, Indonesia, Egypt, Iran, Egypt, Iran, Brazil, Argentina, Brazil, Argentina, Poland, Sweden, Poland, Sweden, United Kingdom, Ireland, United Kingdom, Ireland, South Korea, Japan, South Korea, Japan, Australia, Japan]",14,2046 +99,"On a recent trip to Mexico, Adam unearthed a collection of old artifacts that seemed to tell the story of a long-gone civilization. The artifacts gave insights into the ancient history of Mexico, revealing a society that was both culturally sophisticated and technologically advanced. Intrigued by his findings, he reached out to his childhood friend Lily, an archaeologist based in the United States. Lily had previously worked on archaeological sites that dated back to the prehistoric period in the United States and the neighboring country, Canada. Both the United States and Canada were replete with archaeological sites that testified to the existence of advanced indigenous societies. Adam's discoveries reminded Lily of her own findings in China, where she explored ancient tombs and artifacts. In China, she observed, the preservation of ancient historical sites was a matter of national pride and was taken very seriously. She also mentioned her visit to Japan, where she had discovered connections with China in their shared artifacts and folklore. The historical ties between Japan and China were profound and their histories intertwined in many ways. Adam, meanwhile, shared his experiences in South Africa, where he closely studied the rock paintings and cave art. He explained how South Africa had been a hub for early human civilizations, and was rich with history. Lily agreed with him, mentioning her visit to Egypt, which she described as a treasure through of archaeological wonders. The ancient pyramids and tombs of Egypt held within them the untold stories of a fascinating civilization. Recalling her research in Australia and New Zealand, she also highlighted the strong historical ties between these countries. Both Australia and New Zealand had shared indigenous cultures, whose traditions were reflected in their art and folklore. Their conversation ended with a sense of wonder, at how the far-flung corners of the world, from Mexico to New Zealand, were linked through a shared tapestry of history and culture.","[Mexico, Mexico, United States, United States, Canada, United States, Canada, China, China, Japan, China, Japan, China, South Africa, South Africa, Egypt, Egypt, Australia, New Zealand, Australia, New Zealand, Mexico, New Zealand]",16,2040 \ No newline at end of file diff --git a/examples/keyword_counting/dataset_gen_countries.py b/examples/keyword_counting/dataset_gen_countries.py new file mode 100644 index 0000000..8e1c315 --- /dev/null +++ b/examples/keyword_counting/dataset_gen_countries.py @@ -0,0 +1,535 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Ales Kubicek + +import csv +from typing import List, Tuple +from graph_of_thoughts import controller + + +def find_country_indices(text: str, country: str) -> List[Tuple[int, str]]: + """ + Finds the indices of the occurences of a given country in the input text. + + :param text: Input text. + :type text: str + :param country: Country to search for. + :type country: str + :return: List of tuples, where each tuple consists of index and country. + :rtype: List[Tuple[int, str]] + """ + + indices = [] + index = text.find(country) + while index != -1: + indices.append(index) + index = text.find(country, index + 1) + return [(index, country) for index in indices] + + +primary_countries = [ + "Afghanistan", + "Argentina", + "Australia", + "Brazil", + "Canada", + "China", + "Colombia", + "Cuba", + "Egypt", + "France", + "Germany", + "Greece", + "India", + "Indonesia", + "Iran", + "Iraq", + "Ireland", + "Israel", + "Italy", + "Japan", + "Kenya", + "Mexico", + "Netherlands", + "New Zealand", + "Nigeria", + "North Korea", + "Pakistan", + "Peru", + "Philippines", + "Poland", + "Portugal", + "Russia", + "Saudi Arabia", + "South Africa", + "South Korea", + "Spain", + "Sweden", + "Switzerland", + "Thailand", + "Turkey", + "Ukraine", + "United Arab Emirates", + "United Kingdom", + "United States", + "Venezuela", + "Vietnam", + "Yemen", + "Zimbabwe", + "Belgium", + "Norway", +] +primary_adjectives = [ + "Afghan", + "Argentine ", + "Argentinean", + "Australian", + "Brazilian", + "Canadian", + "Chinese", + "Colombian", + "Cuban", + "Egyptian", + "French", + "German", + "Greek", + "Indian", + "Indonesian", + "Iranian", + "Iraqi", + "Irish", + "Israeli", + "Italian", + "Japanese", + "Kenyan", + "Mexican", + "Dutch", + "New Zealander ", + "Kiwi", + "Nigerian", + "North Korean", + "Pakistani", + "Peruvian", + "Filipino", + "Philippine", + "Polish", + "Portuguese", + "Russian", + "Saudi ", + "Saudi Arabian", + "South African", + "South Korean", + "Spanish", + "Swedish", + "Swiss", + "Thai", + "Turkish", + "Ukrainian", + "United Arab Emirates", + "Emirati", + "British", + "American", + "Venezuelan", + "Vietnamese", + "Yemeni", + "Zimbabwean", + "Belgian", + "Norwegian", +] +rest_countries = [ + "Albania", + "Algeria", + "Andorra", + "Angola", + "Antigua and Barbuda", + "Armenia", + "Austria", + "Azerbaijan", + "The Bahamas", + "Bahrain", + "Bangladesh", + "Barbados", + "Belarus", + "Belize", + "Benin", + "Bhutan", + "Bolivia", + "Bosnia and Herzegovina", + "Botswana", + "Brunei", + "Bulgaria", + "Burkina Faso", + "Burundi", + "Cabo Verde", + "Cambodia", + "Cameroon", + "Central African Republic", + "Chad", + "Chile", + "Comoros", + "Congo", + "Costa Rica", + "CĂŽte d’Ivoire", + "Croatia", + "Cyprus", + "Czech Republic", + "Czechia", + "Denmark", + "Djibouti", + "Dominica", + "Dominican Republic", + "East Timor", + "Timor-Leste", + "Ecuador", + "El Salvador", + "Equatorial Guinea", + "Eritrea", + "Estonia", + "Eswatini", + "Ethiopia", + "Fiji", + "Finland", + "Gabon", + "The Gambia", + "Georgia", + "Ghana", + "Grenada", + "Guatemala", + "Guinea", + "Guinea-Bissau", + "Guyana", + "Haiti", + "Honduras", + "Hungary", + "Iceland", + "Jamaica", + "Jordan", + "Kazakhstan", + "Kiribati", + "Kosovo", + "Kuwait", + "Kyrgyzstan", + "Laos", + "Latvia", + "Lebanon", + "Lesotho", + "Liberia", + "Libya", + "Liechtenstein", + "Lithuania", + "Luxembourg", + "Madagascar", + "Malawi", + "Malaysia", + "Maldives", + "Mali", + "Malta", + "Marshall Islands", + "Mauritania", + "Mauritius", + "Micronesia", + "Moldova", + "Monaco", + "Mongolia", + "Montenegro", + "Morocco", + "Mozambique", + "Myanmar", + "Burma", + "Namibia", + "Nauru", + "Nepal", + "Nicaragua", + "Niger", + "North Macedonia", + "Oman", + "Palau", + "Panama", + "Papua New Guinea", + "Paraguay", + "Qatar", + "Romania", + "Rwanda", + "Saint Kitts and Nevis", + "Saint Lucia", + "Saint Vincent and the Grenadines", + "Samoa", + "San Marino", + "Sao Tome and Principe", + "Senegal", + "Serbia", + "Seychelles", + "Sierra Leone", + "Singapore", + "Slovakia", + "Slovenia", + "Solomon Islands", + "Somalia", + "Sri Lanka", + "Sudan", + "Suriname", + "Syria", + "Taiwan", + "Tajikistan", + "Tanzania", + "Togo", + "Tonga", + "Trinidad and Tobago", + "Tunisia", + "Turkmenistan", + "Tuvalu", + "Uganda", + "Uruguay", + "Uzbekistan", + "Vanuatu", + "Vatican City", + "Zambia", +] +rest_adjectives = [ + "Albanian", + "Algerian", + "Andorran", + "Angolan", + "Antiguan and Barbudan", + "Armenian", + "Austrian", + "Azerbaijani", + "Bahamian", + "Bahraini", + "Bangladeshi", + "Barbadian", + "Belarusian", + "Belizean", + "Beninese", + "Bhutanese", + "Bolivian", + "Bosnian and Herzegovinian", + "Botswanan", + "Bruneian", + "Bulgarian", + "BurkinabĂš", + "Burundian", + "Cape Verdean", + "Cambodian", + "Cameroonian", + "Central African", + "Chadian", + "Chilean", + "Comorian", + "Congolese", + "Costa Rican", + "Ivorian", + "Croatian", + "Cypriot", + "Czech", + "Czech", + "Danish", + "Djiboutian", + "Dominican", + "Dominican", + "East Timorese", + "Timorese", + "Ecuadorian", + "Salvadoran", + "Equatorial Guinean", + "Eritrean", + "Estonian", + "Swazi", + "Ethiopian", + "Fijian", + "Finnish", + "Gabonese", + "Gambian", + "Georgian", + "Ghanaian", + "Grenadian", + "Guatemalan", + "Guinean", + "Bissau-Guinean", + "Guyanese", + "Haitian", + "Honduran", + "Hungarian", + "Icelandic", + "Jamaican", + "Jordanian", + "Kazakh", + "I-Kiribati", + "Kosovar", + "Kuwaiti", + "Kyrgyz", + "Laotian", + "Latvian", + "Lebanese", + "Basotho", + "Liberian", + "Libyan", + "Liechtensteiner", + "Lithuanian", + "Luxembourger", + "Malagasy", + "Malawian", + "Malaysian", + "Maldivian", + "Malian", + "Maltese", + "Marshallese", + "Mauritanian", + "Mauritian", + "Micronesian", + "Moldovan", + "MonĂ©gasque", + "Mongolian", + "Montenegrin", + "Moroccan", + "Mozambican", + "Myanmarese", + "Burmese", + "Namibian", + "Nauruan", + "Nepali", + "Nicaraguan", + "Nigerien", + "Macedonian", + "Omani", + "Palauan", + "Panamanian", + "Papua New Guinean", + "Paraguayan", + "Qatari", + "Romanian", + "Rwandan", + "Kittitian", + "Nevisian", + "Saint Lucian", + "Vincentian", + "Samoan", + "Sammarinese", + "Santomean", + "Senegalese", + "Serbian", + "Seychellois", + "Sierra Leonean", + "Singaporean", + "Slovak", + "Slovenian", + "Solomon Islander", + "Somali", + "Sri Lankan", + "Sudanese", + "Surinamese", + "Syrian", + "Taiwanese", + "Tajik", + "Tanzanian", + "Togolese", + "Tongan", + "Trinidadian ", + "Tobagonian", + "Tunisian", + "Turkmen", + "Tuvaluan", + "Ugandan", + "Uruguayan", + "Uzbek", + "Ni-Vanuatu", + "Vatican", + "Zambian", +] + +lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", model_name="chatgpt4" +) + +prompt = """ Generate a continuous passage (single paragraph) of 16 sentences following the provided restrictions precisely. + + +The following restrictions must apply to the generated text: +1. Single continuous passage of exactly 16 sentences without any paragraphs (line breaks). +2. Countries appearing in the passage must be only from the provided list. No other countries can be mentioned. +3. When a country is mentioned in the passage, it must be mentioned multiple times consecutively in the same or following sentences. +4. Passage should be creative and coherent. +5. Using adjectives of a country is NOT allowed (e.g., "Colombian coffee" should be "coffee from Colombia" instead) + + + +List of countries: [Afghanistan, Argentina, Australia, Brazil, Canada, China, Colombia, Cuba, Egypt, France, Germany, Greece, India, Indonesia, Iran, Iraq, Ireland, Israel, Italy, Japan, Kenya, Mexico, Netherlands, New Zealand, Nigeria, North Korea, Pakistan, Peru, Philippines, Poland, Portugal, Russia, Saudi Arabia, South Africa, South Korea, Spain, Sweden, Switzerland, Thailand, Turkey, Ukraine, United Arab Emirates, United Kingdom, United States, Venezuela, Vietnam, Yemen, Zimbabwe, Belgium, Norway] +Passage: +While exploring the ancient ruins in Greece, Sam discovered manuscripts that hinted at the hidden treasures of Egypt. It seemed these treasures were once stolen from Egypt by rogue merchants and secretly moved to Greece, only to be buried under layers of time. Intrigued, he shared the findings with his friend Maya from India, who was an expert in decoding ancient languages. She pointed out that there was a similar legend in India about treasures from China that had somehow ended up in the southern parts of India, possibly through trade or conquest. She also recounted tales from China that spoke of incredible artifacts from Indonesia, suggesting a rich tapestry of cultural exchanges throughout history. Their conversation took an interesting turn when Sam mentioned a book he'd read about the mysterious connections between Argentina and Brazil. The book detailed how both Argentina and Brazil, despite their differences, shared tales of lost civilizations and forgotten cities deep within their jungles. Maya excitedly mentioned that she'd been to the Philippines and had heard local legends about ancient ties with Indonesia and how traders from the Philippines would journey to Indonesia in search of spices and other goods. Thinking of spices, Sam fondly recalled his trip to Spain, where he had learned about the country's historical links with Portugal. Spain and Portugal, both maritime giants of their time, had extensively explored unknown lands and established trade routes. Maya, remembering her travels, said that she had been to Belgium once and was fascinated by its connections with the Netherlands. Both Belgium and the Netherlands, she explained, had rich histories of art, trade, and diplomacy that intertwined them for centuries. They both sat back, marveling at the interconnectedness of the world and how countries from Greece to the Netherlands shared tales of adventure, discovery, and mystery. + + +List of countries: [Afghanistan, Argentina, Australia, Brazil, Canada, China, Colombia, Cuba, Egypt, France, Germany, Greece, India, Indonesia, Iran, Iraq, Ireland, Israel, Italy, Japan, Kenya, Mexico, Netherlands, New Zealand, Nigeria, North Korea, Pakistan, Peru, Philippines, Poland, Portugal, Russia, Saudi Arabia, South Africa, South Korea, Spain, Sweden, Switzerland, Thailand, Turkey, Ukraine, United Arab Emirates, United Kingdom, United States, Venezuela, Vietnam, Yemen, Zimbabwe, Belgium, Norway] +Passage: +""" + +num_samples = 100 +sample_id = 0 +result = [["ID", "Text", "Countries", "Sentences", "Characters"]] + +""" +Generate passages of text that contain country names to be used as input for the +keyword counting. + +Input(x) : Number of samples +Output(y) : Passages written to a file in the CSV format. + File contains the sample ID, the passage, the countries the passage + contains, the sentences of the passages, number of characters of the + passage. +""" + +# For x batches of y responses +for _ in range(num_samples): + response = lm.query(prompt, 1) + texts = lm.get_response_texts(response) + for text in texts: + # Clean paragraphs - single long passage + text = text.strip().replace("\n", "") + + # Get all occurrences of all primary permissible countries + occurrences = [] + for country in [country for country in primary_countries if country in text]: + occurrences.extend(find_country_indices(text, country)) + # Order exactly how they appear in the text + ordered_occurrences = [country[1] for country in sorted(occurrences)] + + # Check invalid countries and adjectives + invalid_primary_adjective = [ + adjective for adjective in primary_adjectives if adjective in text + ] + invalid_rest_country = [ + country for country in rest_countries if country in text + ] + invalid_rest_adjective = [ + adjective for adjective in rest_adjectives if adjective in text + ] + invalid_count = ( + len(invalid_primary_adjective) + + len(invalid_rest_country) + + len(invalid_rest_adjective) + ) + + if invalid_count > 0: + print( + f"Invalid countries or adjectives present: {invalid_primary_adjective}, {invalid_rest_country}, {invalid_rest_adjective}" + ) + continue + + result.append( + [ + sample_id, + text, + "[{0}]".format(", ".join(map(str, ordered_occurrences))), + len(text.split(".")) - 1, + len(text), + ] + ) + sample_id += 1 + +# Writing to csv file +with open("countries_script.csv", "w") as csvfile: + csvwriter = csv.writer(csvfile) + csvwriter.writerows(result) diff --git a/examples/keyword_counting/keyword_counting.py b/examples/keyword_counting/keyword_counting.py new file mode 100644 index 0000000..810233d --- /dev/null +++ b/examples/keyword_counting/keyword_counting.py @@ -0,0 +1,1457 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# The source code is adapted from the sorting source code written by +# Nils Blach. +# +# main author: Nils Blach +# contributions: Ales Kubicek + +import os +import logging +import datetime +import json +import csv +from collections import Counter +from functools import partial +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + + +def string_to_list(string: str) -> List[str]: + """ + Helper function to convert a list encoded inside a string into a Python + list object of string elements. + + :param string: Input string containing a list. + :type string: str + :return: List of string elements. + :rtype: List[str] + :raise AssertionError: If input string does not contain a list. + """ + + assert string[0] == "[" and string[-1] == "]", "String is not a list." + return [ + item.strip().replace("'", "").replace('"', "") + for item in string[1:-1].split(", ") + ] + + +def list_to_freq_dict(lst: List[str]) -> Dict[str, int]: + """ + Helper function that converts a list of string elements, where each element + can occur multiple times, into a dictionary, where the elements are the keys + and the number of their occurrences in the input list is the value. + + :param lst: List of string elements. + :type lst: List[str] + :return: Frequency dictionary of string elements. + :rtype: Dict[str, int] + """ + + return dict(Counter(lst)) + + +def valid_aggregation(state: Dict) -> bool: + """ + Helper function to determine whether the aggregation of two intermediate + solutions produces valid results. + + :param state: Thought state resulting from an aggregation of thoughts. + :type state: Dict + :return: Returns whether the aggregation produced valid results. + :rtype: bool + """ + + aggr1 = json.loads(state["aggr1"]) + aggr2 = json.loads(state["aggr2"]) + current = json.loads(state["current"]) + + if set(aggr1.keys()) | set(aggr2.keys()) != set(current.keys()): + return False + + for country in current.keys(): + aggr1_freq = aggr1[country] if country in aggr1.keys() else 0 + aggr2_freq = aggr2[country] if country in aggr2.keys() else 0 + if aggr1_freq + aggr2_freq != current[country]: + return False + + return True + + +def num_errors(all_possible_countries: List[str], state: Dict) -> float: + """ + Function to locally count the number of errors that serves as a score. + + :param all_possible_countries: List of keywords. + :type all_possible_countries: List[str] + :param state: Thought state to be scored. + :type state: Dict + :return: Number of errors. + :rtype: float + """ + + try: + if ( + "sub_text" in state + and (state["sub_text"] != "" or state["current"] == "{}") + and len(state["sub_text"]) < len(state["original"]) * 0.75 + ): + text = state["sub_text"] + correct_freq_dict = dict() + for country in all_possible_countries: + # find number of times country appears in text + num_occurrences = text.count(country) + correct_freq_dict[country] = num_occurrences + else: + correct_freq_dict = list_to_freq_dict(string_to_list(state["ground_truth"])) + current_freq_dict = json.loads(state["current"]) + countries_not_in_current = set(correct_freq_dict.keys()) - set( + current_freq_dict.keys() + ) + countries_not_in_correct = set(current_freq_dict.keys()) - set( + correct_freq_dict.keys() + ) + # count the number of errors + num_errors = 0 + for country in countries_not_in_current: + num_errors += abs(correct_freq_dict[country]) + for country in countries_not_in_correct: + num_errors += abs(current_freq_dict[country]) + for country in set(correct_freq_dict.keys()) & set(current_freq_dict.keys()): + num_errors += abs(correct_freq_dict[country] - current_freq_dict[country]) + return num_errors + except: + return 100 + + +def test_keyword_counting(state: Dict) -> bool: + """ + Function to test whether the final solution matches ground truth. + + :param state: Thought state that represents the final solution. + :type state: Dict + :return: Returns whether the solution matches the ground truth. + :rtype: bool + """ + + try: + ground_truth = state["ground_truth"] + correct_freq_dict = list_to_freq_dict(string_to_list(ground_truth)) + current_freq_dict = json.loads(state["current"]) + # check that the keys are the same + if set(correct_freq_dict.keys()) != set(current_freq_dict.keys()): + return False + # check that the values are the same + for key in correct_freq_dict.keys(): + if correct_freq_dict[key] != current_freq_dict[key]: + return False + return True + except: + return False + + +class KeywordCountingPrompter(prompter.Prompter): + """ + KeywordCountingPrompter provides the generation of prompts specific to the + keyword counting example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + count_prompt = """ Count the frequency of how many times each country is explicitly named in the input text. Output only the frequency of each country that appears at least once in the following json format; make sure to keep the same spelling and output no additional text: +{{ + "country1": frequency1, + "country2": frequency2, + ... +}} + + + +Input: +Alexandra boarded the first flight of her grand journey, starting from Canada. With a globe-trotting itinerary in hand, she was filled with excitement. Her first stop was Mexico, where she marveled at the Mayan ruins. From there, she explored the rainforests of Brazil and danced the tango in Argentina. +Output: +{{ + "Canada": 1, + "Mexico": 1, + "Brazil": 1, + "Argentina": 1 +}} + +Input: +The adventure led him to the peaks of Peru where he trekked to see the mysteries of Machu Picchu. He then headed to Chile to gaze at the vastness of the Atacama Desert. A quick detour to Uruguay and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Output: +{{ + "Peru": 2, + "Chile": 1, + "Uruguay": 1, + "Paraguay": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Output: +{{ + "Italy": 2, + "France": 1, + "Spain": 1, + "Greece": 1, + "Norway": 2, + "Sweden": 2, + "Finland": 1, + "Denmark": 1, + "Ireland": 1, + "Scotland": 1, + "Germany": 2, + "Russia": 1 +}} + + +Input: +{input} +Output: +""" + + count_prompt_cot = """ Count the frequency of how many times each country is explicitly named in the input text. You can generate any intermedate lists and states, but the final output should only contain the frequency of each country that appears at least once in the following json format, prefixed with "Output: " (make sure to keep the same spelling for each country in the output as in the input text): +{{ + "country1": frequency1, + "country2": frequency2, + ... +}} + + + +To count the frequency for each country follow these steps: +1. Split the input passage into four paragraphs of similar length. +2. Count the frequency of each country in each paragraph. +3. Combine the frequencies of each country from each paragraph by adding them together. + + + +Input: +Alexandra boarded the first flight of her grand journey, starting from Canada. With a globe-trotting itinerary in hand, she was filled with excitement. Her first stop was Mexico, where she marveled at the Mayan ruins. From there, she explored the rainforests of Brazil and danced the tango in Argentina. +Paragraphs: +Alexandra boarded the first flight of her grand journey, starting from Canada. With a globe-trotting itinerary in hand, she was filled with excitement. + +Her first stop was Mexico, where she marveled at the Mayan ruins. From there, she explored the rainforests of Brazil and danced the tango in Argentina. +Sublist frequencies: +{{ + "Canada": 1 +}} + +{{ + "Mexico": 1, + "Brazil": 1, + "Argentina": 1 +}} +Output: +{{ + "Canada": 1, + "Mexico": 1, + "Brazil": 1, + "Argentina": 1 +}} + +Input: +The adventure led him to the peaks of Peru where he trekked to see the mysteries of Machu Picchu. He then headed to Chile to gaze at the vastness of the Atacama Desert. A quick detour to Uruguay and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Paragraphs: +The adventure led him to the peaks of Peru where he trekked to see the mysteries of Machu Picchu. He then headed to Chile to gaze at the vastness of the Atacama Desert. + +A quick detour to Uruguay and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Sublists: +{{ + "Peru": 1, + "Chile": 1 +}} + +{{ + "Uruguay": 1, + "Paraguay": 1, + "Canada": 1, + "Peru": 1, + "Brazil": 1, + "Mexico": 1 +}} +Output: +{{ + "Peru": 2, + "Chile": 1, + "Uruguay": 1, + "Paraguay": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Paragraphs: +Journeying westward, she admired the art in Italy and sipped coffee in France. + +The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. + +She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. + +Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Sublists: +{{ + "Italy": 1, + "France": 1 +}} + +{{ + "Spain": 1, + "Greece": 1, + "Norway": 1, + "Sweden": 1, + "Finland": 1, + "Denmark": 1 +}} + +{{ + "Ireland": 1, + "Scotland": 1, + "Germany": 1, + "Russia": 1 +}} + +{{ + "Italy": 1, + "Norway": 1, + "Sweden": 1, + "Germany": 1 +}} +Output: +{{ + "Italy": 2, + "France": 1, + "Spain": 1, + "Greece": 1, + "Norway": 2, + "Sweden": 2, + "Finland": 1, + "Denmark": 1, + "Ireland": 1, + "Scotland": 1, + "Germany": 2, + "Russia": 1 +}} + + +Input: +{input} +""" + + count_prompt_sentence = """ Count the frequency of how many times each country is explicitly named in the input text. Output only the frequency of each country that appears at least once in the following json format; make sure to keep the same spelling and output no additional text: +{{ + "country1": frequency1, + "country2": frequency2, + ... +}} + + + +To count the frequency for each country follow these steps: +1. Create an empty dictionary. +2. Iterate through the text word by word. +3. If the word corresponds to a country, add the country to the dictionary and set its value to 1 if it is not already in the dictionary. If the word is already in the dictionary, increment its value by 1. + + + +Input: +Alexandra explored the rainforests of Brazil and danced the tango in Argentina. +Output: +{{ + "Brazil": 1, + "Argentina": 1 +}} + +Input: +In Norway she found stones that were identical to those in Sweden, indicating a deep-rooted cultural connection between Sweden and Norway. +Output: +{{ + "Norway": 2, + "Sweden": 2 +}} + +Input: +A quick detour to Uruguay and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Output: +{{ + "Uruguay": 1, + "Paraguay": 1, + "Canada": 1, + "Peru": 1, + "Brazil": 1, + "Mexico": 1 +}} + +Input: +Italy, Sweden, Sweden and Germany will always stay her favourite destinations to visit. +Output: +{{ + "Italy": 1, + "Sweden": 2, + "Germany": 1 +}} + + +Input: +{input} +Output: +""" + + tot_improve_prompt = """ The following two inputs represent an initial input text and a dictionary of countries and their frequencies of explicit appearance in the input text. The dictionary is incorrect and might not contain all countries, extra countries or incorrect frequencies. +Fix the dictionary such that it has the correct frequencies for each country that appears at least once in the input text. + + +To fix the incorrect list of countries follow these steps: +1. Iterate through the input text and find all countries that are explicitly mentioned. +2. Count the frequency of each country in the input text. +3. Compare the frequency of each country in the input text with the frequency of the country in the incorrect dictionary and update the frequency in the incorrect dictionary if they are different. + + + + +Input: +Alexandra boarded the first flight of her grand journey, starting from Canada. With a globe-trotting itinerary in hand, she was filled with excitement. Her first stop was Mexico, where she marveled at the Mayan ruins. From there, she explored the rainforests of Brazil and danced the tango in Argentina. +Incorrect Dictionary: +{{ + "Canada": 1, + "Mexico": 1, + "Argentina": 1 +}} +Reason: The input text names Brasil once but the incorrect dictionary does not contain Brasil at all, the remaining countries are correct. +Output: +{{ + "Canada": 1, + "Mexico": 1, + "Brazil": 1, + "Argentina": 1 +}} + +Input: +The adventure led him to the peaks of Peru where he trekked to see the mysteries of Machu Picchu. He then headed to Chile to gaze at the vastness of the Atacama Desert. A quick detour to Uruguay and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Incorrect Dictionary: +{{ + "Peru": 3, + "Chile": 1, + "Uruguay": 1, + "Paraguay": 1, + "Argentina": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} +Reason: The input text names Peru twice, but the incorrect dictionary lists it with a frequency of 3 instead of 2. The incorrect dictionary also contains Argentina which does not appear in the input text. +Output: +{{ + "Peru": 2, + "Chile": 1, + "Uruguay": 1, + "Paraguay": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Incorrect Dictionary: +{{ + "Italy": 1, + "France": 1, + "Spain": 1, + "Greece": 1, + "Norway": 1, + "Sweden": 1, + "Finland": 1, + "Denmark": 1, + "Ireland": 1, + "Scotland": 1, + "Germany": 1, + "Russia": 1 +}} +Reason: The input text names Italy, Norway, Sweden and Germany twice each, but the incorrect dictionary lists them with a frequency of 1 each instead of 2. +Output: +{{ + "Italy": 2, + "France": 1, + "Spain": 1, + "Greece": 1, + "Norway": 2, + "Sweden": 2, + "Finland": 1, + "Denmark": 1, + "Ireland": 1, + "Scotland": 1, + "Germany": 2, + "Russia": 1 +}} + + +Input: +{input} +Incorrect Dictionary: +{incorrect_dict} +""" + + sentence_improve_prompt = """ The following two inputs represent an initial input text (usually a sinlge sentence) and a dictionary of countries and their frequencies of explicit appearance in the input text/sentence. The dictionary is incorrect and might not contain all countries, contain extra countries or countries with incorrect frequencies. +Fix the dictionary such that it has the correct frequencies for each country and only contains countries that are explicitly named in the text/sentence. + + +To fix the incorrect dictionary of countries follow these steps: +1. Iterate through the input text/sentence and find all countries that are explicitly mentioned. +2. For each of these countries, count how many times they are explicitly mentioned in the input text/sentence. +3. Compare the frequency of each country in the input text with the frequency of the country in the incorrect dictionary and update the frequency in the incorrect dictionary if they are different. + + + + +Input: +Alexandra boarded the first flight of her grand journey, starting from Canada. +Incorrect Dictionary: +{{ + "Canada": 1, + "Mexico": 1, + "Argentina": 1 +}} +Reason: The input text only names Canada once, but the incorrect dictionary contains Mexico and Argentina which do not appear in the input text. +Output: +{{ + "Canada": 1 +}} + +Input: +A quick detour to Peru and Paraguay allowed him to experience the vibrancy of the local cultures before returning back to Canada through Peru, Brazil and Mexico. +Incorrect Dictionary: +{{ + "Peru": 3, + "Argentina": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} +Reason: The input text names Peru twice, but the incorrect dictionary lists it with a frequency of 3 instead of 2. The incorrect dictionary also contains Argentina which does not appear in the input text and is missing Paraguay. +Output: +{{ + "Peru": 2, + "Paraguay": 1, + "Canada": 1, + "Brazil": 1, + "Mexico": 1 +}} + +Input: +She danced in Ireland and Russia, explored castles in England, and marveled at the architecture in Germany and Russia. +Incorrect Dictionary: +{{ + "Ireland": 1, + "England": 1, + "Germany": 1, + "Russia": 1 +}} +Reason: The input text names Russia twice each, but the incorrect dictionary lists Russia with a frequency of 1 instead of 2. The incorrect dictionary also contains England which does not appear in the input text and is missing Scotland. +Output: +{{ + "Ireland": 1, + "Scotland": 1, + "Germany": 1, + "Russia": 2 +}} + + +Input: +{input} +Incorrect Dictionary: +{incorrect_dict} +""" + + got_split_prompt = """ Split the following input text into 4 paragraphs of approximately same length. +Only output the final 4 paragraphs in the following format without any additional text or thoughts: +{{ + "Paragraph 1": "Some paragraph text ...", + "Paragraph 2": "Some paragraph text ...", + "Paragraph 3": "Some paragraph text ...", + "Paragraph 4": "Some paragraph text ..." +}} + + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Output: +{{ + "Paragraph 1": "Journeying westward, she admired the art in Italy and sipped coffee in France. ", + "Paragraph 2": "The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away.", + "Paragraph 3": "She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia.", + "Paragraph 4": "Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit." +}} + + +Input: +{input} +""" + + got_split_prompt2 = """ Split the following input text into 8 paragraphs of approximately same length. +Only output the final 8 paragraphs in the following format without any additional text or thoughts: +{{ + "Paragraph 1": "Some paragraph text ...", + "Paragraph 2": "Some paragraph text ...", + "Paragraph 3": "Some paragraph text ...", + "Paragraph 4": "Some paragraph text ...", + "Paragraph 5": "Some paragraph text ...", + "Paragraph 6": "Some paragraph text ...", + "Paragraph 7": "Some paragraph text ...", + "Paragraph 8": "Some paragraph text ..." +}} + + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. However, nothing compared to her experiences in Egypt, where she began her journey as an archaeologist. One evening in Egypt, she discovered a mysterious artifact that existed not only in Egypt but also in distant lands like Peru and Canada. The artifact was said to harness the energy of the earth, which she only started believing when experiencing it while traveling in Sweden and Notway. A similar relic was rumored to exist in the bustling streets of Thailand and the snowy landscapes of Sweden. +Output: +{{ +Output: + "Paragraph 1": "Journeying westward, she admired the art in Italy and sipped coffee in France. ", + "Paragraph 2": "The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. ", + "Paragraph 3": "She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. ", + "Paragraph 4": "Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. ", + "Paragraph 5": "However, nothing compared to her experiences in Egypt, where she began her journey as an archaeologist. ", + "Paragraph 6": "One evening in Egypt, she discovered a mysterious artifact that existed not only in Egypt but also in distant lands like Peru and Canada. ", + "Paragraph 7": "The artifact was said to harness the energy of the earth, which she only started believing when experiencing it while traveling in Sweden and Notway. ", + "Paragraph 8": "A similar relic was rumored to exist in the bustling streets of Thailand and the snowy landscapes of Sweden." +}} + + +Input: +{input} +""" + + got_split_prompt3 = """ Split the following input text into individual sentences. +Output each sentence in the following format without any additional text or thoughts: +{{ + "Sentence 1": "Some sentence text ...", + "Sentence 2": "Some sentence text ...", + "Sentence 3": "Some sentence text ...", + ... +}} + + +Input: +Journeying westward, she admired the art in Italy and sipped coffee in France. The music of Spain and the history of Greece deepened her love for Europe. The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away. She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia. Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit. +Output: +{{ + "Sentence 1": "Journeying westward, she admired the art in Italy and sipped coffee in France. ", + "Sentence 2": "The music of Spain and the history of Greece deepened her love for Europe. " + "Sentence 3": "The Nordic beauty of Norway, Sweden, Finland, and Denmark took her breath away.", + "Sentence 4": "She danced in Ireland, explored castles in Scotland, and marveled at the architecture in Germany and Russia.", + "Sentence 5": "Italy, Norway, Sweden and Germany will always stay her favourite destinations to visit." +}} + + +Input: +{input} +""" + + got_aggregate_prompt = """ Combine the following 2 dictionaries, each containing the frequency of countries in a text, into a single dictionary. +Simply add the frequencies together for each country and if a country is not present in one of the dictionaries, add it to the final dictionary with the frequency from the other dictionary. +Only output the final merged dictionary without any additional text or thoughts! + + +To combine the 2 dictionaries into single one, follow these steps: +1. Create a new dictionary to store the combined frequencies. +2. Iterate through the keys of the first dictionary and add the frequency of each country to the new dictionary. +3. Iterate through the keys of the second dictionary and add the frequency of each country to the new dictionary and if it is already present, add the frequency to the existing value. + + +Combine the following 2 dictionaries into a single dictionary: +{input1} + +{input2} + +Combined Output: +""" + + got_improve_aggregate_prompt = """ The following 2 dictionaries were combined into the third dictionary below. +However, some mistakes occured and the third dictionary is incorrect. Please fix the third dictionary so that it contains the correct frequencies for each country. +The correct frequencies are the sum of the frequencies from the first 2 dictionaries. If a country is not present in one of the dictionaries, add it to the final dictionary with the frequency from the other dictionary. + + +Dictionary 1: +{{ + "Peru": 2, + "Chile": 1, + "Uruguay": 1, + "Paraguay": 1 +}} +Dictionary 2: +{{ + "Peru": 1, + "Argentina": 1, + "Canada": 1, + "Chile": 3, + "Germany": 2 +}} +Incorrectly Combined Dictionary: +{{ + "Peru": 3, + "Chile": 2, + "Uruguay": 1, + "Paraguay": 1, + "Argentina": 1, + "Chile": 3, + "Germany": 2 +}} +Output: +{{ + "Peru": 3, + "Chile": 4, + "Uruguay": 1, + "Paraguay": 1, + "Argentina": 1, + "Canada": 1, + "Germany": 2 +}} + + +Dictionary 1: +{input1} +Dictionary 2: +{input2} +Incorrectly Combined Dictionary: +{input3} +Output: +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If more than two thought states are provided. + """ + assert len(state_dicts) <= 2, "Expected 2 states for aggregation prompt." + if len(state_dicts) == 0: + state_dicts = [{"current": "{}"}, {"current": "{}"}] + elif len(state_dicts) == 1: + state_dicts.append({"current": "{}"}) + return self.got_aggregate_prompt.format( + input1=state_dicts[0]["current"], input2=state_dicts[1]["current"] + ) + + def generate_prompt( + self, num_branches: int, original: str, current: str, method: str, **kwargs + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param original: Input text. + :type original: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if current is None or current == "": + input = original + else: + input = current + if method.startswith("io"): + return self.count_prompt.format(input=input) + elif method.startswith("cot"): + return self.count_prompt_cot.format(input=input) + elif method.startswith("tot"): + if current is None or current == "": + return self.count_prompt_cot.format(input=input) + return self.tot_improve_prompt.format( + input=original, + incorrect_dict=current, + ) + elif method.startswith("got"): + if (current is None or current == "") and kwargs["phase"] == 0: + if method == "got8": + return self.got_split_prompt2.format(input=input) + if method == "gotx": + return self.got_split_prompt3.format(input=input) + return self.got_split_prompt.format(input=input) + + if kwargs["phase"] == 1: + if method == "gotx": + return self.count_prompt_sentence.format(input=kwargs["sub_text"]) + return self.count_prompt_cot.format(input=kwargs["sub_text"]) + + if ( + "sub_text" in kwargs + and kwargs["sub_text"] != "" + and len(kwargs["sub_text"]) < len(original) * 0.75 + ): + original = kwargs["sub_text"] + if method == "gotx": + return self.sentence_improve_prompt.format( + input=original, incorrect_dict=current + ) + return self.tot_improve_prompt.format( + input=original, incorrect_dict=current + ) + + def improve_prompt(self, current: str, aggr1: str, aggr2: str, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param current: Intermediate solution. + :type current: str + :param aggr1: Partially solution 1 before aggregation. + :type aggr1: str + :param aggr2: Partially solution 2 before aggregation. + :type aggr2: str + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + return self.got_improve_aggregate_prompt.format( + input1=aggr1, input2=aggr2, input3=current + ) + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class KeywordCountingParser(parser.Parser): + """ + KeywordCountingParser provides the parsing of language model reponses + specific to the keyword counting example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def strip_answer_json(self, text: str) -> str: + """ + Helper function to retrieve a text from a json string. + + :param text: Input json string. + :type text: str + :return: Retrieved text. + :rtype: str + """ + + text = text.strip() + if "Output:" in text: + text = text[text.index("Output:") + len("Output:") :].strip() + # find the last "{" and "}" and only keep the text in between including the brackets + start = text.rfind("{") + end = text.rfind("}") + if start == -1 or end == -1: + return "{}" + text = text[start : end + 1] + try: + json.loads(text) + return text + except: + return "{}" + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If more than two thought states are provided. + """ + + assert len(states) <= 2, "Expected 2 states for aggregation answer." + if len(states) == 0: + states = [ + {"current": "{}", "sub_text": ""}, + {"current": "{}", "sub_text": ""}, + ] + elif len(states) == 1: + states.append({"current": "{}", "sub_text": ""}) + new_states = [] + for text in texts: + answer = self.strip_answer_json(text) + new_state = states[0].copy() + new_state["sub_text"] = ( + states[0]["sub_text"] if "sub_text" in states[0] else "" + ) + (states[1]["sub_text"] if "sub_text" in states[1] else "") + new_state["current"] = answer + new_state["aggr1"] = states[0]["current"] + new_state["aggr2"] = states[1]["current"] + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + :raise AssertionError: If there is not exactly one response text. + """ + + assert len(texts) == 1, "Expected 1 text for improve answer." + text = texts[0] + answer = self.strip_answer_json(text) + new_state = state.copy() + new_state["current"] = answer + return new_state + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + + new_states = [] + for text in texts: + try: + if ( + state["method"].startswith("got") + and state["current"] == "" + and state["phase"] == 0 + ): + answer = self.strip_answer_json(text) + json_dict = json.loads(answer) + if len(json_dict.keys()) != 4 or len(json_dict.keys()) != 8: + logging.warning( + f"Expected 4 or 8 paragraphs in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "Paragraph" not in key and "Sentence" not in key: + logging.warning( + f"Expected key to contain 'Paragraph' or 'Sentence', but found {key}." + ) + continue + new_state = state.copy() + new_state["current"] = "" + new_state["sub_text"] = value + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + else: + answer = self.strip_answer_json(text) + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + except Exception as e: + logging.error(f"Could not parse step answer: {text}. Error: {e}") + return new_states + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def cot(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def tot(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(3): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def tot2(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(5): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation( + operations.Score(1, False, partial(num_errors, all_potential_countries)) + ) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def got4(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT4 method, which splits the text + into 4 passages. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + sub_texts = operations.Generate(1, 1) + operations_graph.append_operation(sub_texts) # generate the sublists + sub_paragraphs = [] + for i in range(1, 5): + paragraph_id = f"Paragraph {i}" + sub_text = operations.Selector( + lambda thoughts, list_id=paragraph_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_text.add_predecessor(sub_texts) + operations_graph.add_operation(sub_text) + count_sub_text = operations.Generate(1, 10) + count_sub_text.add_predecessor(sub_text) + operations_graph.add_operation(count_sub_text) + score_sub_text = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_sub_text.add_predecessor(count_sub_text) + operations_graph.add_operation(score_sub_text) + keep_best_sub_text = operations.KeepBestN(1, False) + keep_best_sub_text.add_predecessor(score_sub_text) + operations_graph.add_operation(keep_best_sub_text) + + sub_paragraphs.append(keep_best_sub_text) + + while len(sub_paragraphs) > 1: + new_sub_paragraphs = [] + for i in range(0, len(sub_paragraphs), 2): + aggregate = operations.Aggregate(3) + aggregate.add_predecessor(sub_paragraphs[i]) + aggregate.add_predecessor(sub_paragraphs[i + 1]) + operations_graph.add_operation(aggregate) + val_im_aggregate = operations.ValidateAndImprove( + 1, True, 3, valid_aggregation + ) + val_im_aggregate.add_predecessor(aggregate) + operations_graph.add_operation(val_im_aggregate) + score_aggregate = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_aggregate.add_predecessor(val_im_aggregate) + operations_graph.add_operation(score_aggregate) + keep_best_aggregate = operations.KeepBestN(1, False) + keep_best_aggregate.add_predecessor(score_aggregate) + operations_graph.add_operation(keep_best_aggregate) + new_sub_paragraphs.append(keep_best_aggregate) + sub_paragraphs = new_sub_paragraphs + + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def got8(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT8 method, which splits the text + into 8 passages. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + sub_texts = operations.Generate(1, 1) + operations_graph.append_operation(sub_texts) # generate the sublists + sub_paragraphs = [] + for i in range(1, 9): + paragraph_id = f"Paragraph {i}" + sub_text = operations.Selector( + lambda thoughts, list_id=paragraph_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_text.add_predecessor(sub_texts) + operations_graph.add_operation(sub_text) + count_sub_text = operations.Generate(1, 10) + count_sub_text.add_predecessor(sub_text) + operations_graph.add_operation(count_sub_text) + score_sub_text = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_sub_text.add_predecessor(count_sub_text) + operations_graph.add_operation(score_sub_text) + keep_best_sub_text = operations.KeepBestN(1, False) + keep_best_sub_text.add_predecessor(score_sub_text) + operations_graph.add_operation(keep_best_sub_text) + + sub_paragraphs.append(keep_best_sub_text) + + while len(sub_paragraphs) > 1: + new_sub_paragraphs = [] + for i in range(0, len(sub_paragraphs), 2): + aggregate = operations.Aggregate(3) + aggregate.add_predecessor(sub_paragraphs[i]) + aggregate.add_predecessor(sub_paragraphs[i + 1]) + operations_graph.add_operation(aggregate) + val_im_aggregate = operations.ValidateAndImprove( + 1, True, 3, valid_aggregation + ) + val_im_aggregate.add_predecessor(aggregate) + operations_graph.add_operation(val_im_aggregate) + score_aggregate = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_aggregate.add_predecessor(val_im_aggregate) + operations_graph.add_operation(score_aggregate) + keep_best_aggregate = operations.KeepBestN(1, False) + keep_best_aggregate.add_predecessor(score_aggregate) + operations_graph.add_operation(keep_best_aggregate) + new_sub_paragraphs.append(keep_best_aggregate) + sub_paragraphs = new_sub_paragraphs + + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def gotx(all_potential_countries) -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoTx method, where each sentence + is considered a different passage. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + sub_texts = operations.Generate(1, 1) + operations_graph.append_operation(sub_texts) # generate the sublists + sub_paragraphs = [] + for i in range(1, 33): + paragraph_id = f"Sentence {i}" + sub_text = operations.Selector( + lambda thoughts, list_id=paragraph_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_text.add_predecessor(sub_texts) + operations_graph.add_operation(sub_text) + count_sub_text = operations.Generate(1, 10) + count_sub_text.add_predecessor(sub_text) + operations_graph.add_operation(count_sub_text) + score_sub_text = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_sub_text.add_predecessor(count_sub_text) + operations_graph.add_operation(score_sub_text) + keep_best_sub_text = operations.KeepBestN(1, False) + keep_best_sub_text.add_predecessor(score_sub_text) + operations_graph.add_operation(keep_best_sub_text) + + sub_paragraphs.append(keep_best_sub_text) + + while len(sub_paragraphs) > 1: + new_sub_paragraphs = [] + for i in range(0, len(sub_paragraphs), 2): + aggregate = operations.Aggregate(3) + aggregate.add_predecessor(sub_paragraphs[i]) + aggregate.add_predecessor(sub_paragraphs[i + 1]) + operations_graph.add_operation(aggregate) + val_im_aggregate = operations.ValidateAndImprove( + 1, True, 3, valid_aggregation + ) + val_im_aggregate.add_predecessor(aggregate) + operations_graph.add_operation(val_im_aggregate) + score_aggregate = operations.Score( + 1, False, partial(num_errors, all_potential_countries) + ) + score_aggregate.add_predecessor(val_im_aggregate) + operations_graph.add_operation(score_aggregate) + keep_best_aggregate = operations.KeepBestN(1, False) + keep_best_aggregate.add_predecessor(score_aggregate) + operations_graph.add_operation(keep_best_aggregate) + new_sub_paragraphs.append(keep_best_aggregate) + sub_paragraphs = new_sub_paragraphs + + operations_graph.append_operation(operations.GroundTruth(test_keyword_counting)) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "countries.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2]]) + + all_potential_countries = list( + set([country for row in data for country in row[2][1:-1].split(", ")]) + ) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + # create a results directory for the method + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method(all_potential_countries) + executor = controller.Controller( + lm, + operations_graph, + KeywordCountingPrompter(), + KeywordCountingParser(), + { + "original": data[1], + "ground_truth": data[2], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input (x) : an input text with many occurrences of different countries (names) + Output (y) : dict of all countries in the input text with their frequencies + Correct : y == correct given list of x (dataset) + Input Example: + The music of Spain and the history of Spain deepened her love for Europe... + Output Example: + {Spain: 2, ...} + """ + budget = 30 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got4, got8, gotx] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/keyword_counting/plot.py b/examples/keyword_counting/plot.py new file mode 100644 index 0000000..d63d9d2 --- /dev/null +++ b/examples/keyword_counting/plot.py @@ -0,0 +1,167 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach +# contributions: Ales Kubicek + +import json +import os +import matplotlib.pyplot as plt + + +def get_complete_results(base_directory): + results_complete = {} + for folder_name in os.listdir(base_directory): + folder_path = os.path.join(base_directory, folder_name) + if os.path.isdir(folder_path): + results_complete[folder_name] = [] + for file_name in os.listdir(folder_path): + if file_name.endswith(".json"): + file_path = os.path.join(folder_path, file_name) + with open(file_path, "r") as f: + data = json.load(f) + results_complete[folder_name].append( + {"key": int(file_name.split(".")[0]), "data": data} + ) + for key in results_complete.keys(): + results_complete[key] = sorted( + results_complete[key], key=lambda x: x["key"] + ) + return results_complete + + +def get_final_scores(results_complete): + scores = {} + for method in results_complete.keys(): + scores[method] = [] + for result in results_complete[method]: + score = 100 + solved = False + cost = 1 + prompt_tokens = 0 + completion_tokens = 0 + for op in result["data"]: + if "operation" in op and op["operation"] == "ground_truth_evaluator": + try: + score = min(op["scores"]) + solved = any(op["problem_solved"]) + except: + continue + if "cost" in op: + cost = op["cost"] + prompt_tokens = op["prompt_tokens"] + completion_tokens = op["completion_tokens"] + scores[method].append( + [result["key"], score, solved, prompt_tokens, completion_tokens, cost] + ) + scores[method] = sorted(scores[method], key=lambda x: x[0]) + return scores + + +def get_plotting_data(base_directory): + results_complete = get_complete_results(base_directory) + scores = get_final_scores(results_complete) + results_plotting = { + method: { + "scores": [x[1] for x in scores[method]], + "solved": sum([1 for x in scores[method] if x[2]]), + "costs": [x[5] for x in scores[method]], + } + for method in scores.keys() + } + return results_plotting + + +def plot_results( + results, + methods_order=["io", "cot", "tot", "tot2", "got4", "got8", "gotx"], + model="GPT-3.5", + y_lower=0, + y_upper=40, + cost_upper=1.8, + display_solved=True, + annotation_offset=1, + display_left_ylabel=False, + display_right_ylabel=False, +): + methods_order = [method for method in methods_order if method in results] + # Extract scores based on the order + scores_ordered = [ + [score for score in results[method]["scores"] if score != 100 and score != 300] + for method in methods_order + ] + total_costs = [sum(results[method]["costs"]) for method in methods_order] + + # Create figure and axis + fig, ax = plt.subplots(dpi=150, figsize=(3.75, 4)) + + # Create boxplots + positions = range(1, len(methods_order) + 1) + ax.boxplot(scores_ordered, positions=positions) + + fig_fontsize = 12 + + # Set the ticks and labels + methods_labels = ["IO", "CoT", "ToT", "ToT2", "GoT4", "GoT8", "GoTx"] + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticklabels(methods_labels, fontsize=10) + + ax.set_ylim(y_lower, (y_upper + 2) if display_solved else y_upper + 1) + plt.yticks(fontsize=fig_fontsize) + if display_left_ylabel: + ax.set_ylabel(f"Number of errors; the lower the better", fontsize=fig_fontsize) + + ax.set_title(f"Keyword Counting") + + ax2 = ax.twinx() + ax2.bar(positions, total_costs, alpha=0.5, color="blue", label="Total Cost ($)") + ax2.yaxis.set_tick_params(colors="#1919ff", labelsize=fig_fontsize) + ax2.set_ylim(0, cost_upper) + number_of_ticks = len(ax.get_yticks()) + tick_interval = cost_upper / (number_of_ticks) + ax2_ticks = [tick_interval * i for i in range(number_of_ticks)] + + ax2.set_yticks(ax2_ticks) + + if display_right_ylabel: + ax2.set_ylabel( + "Total Cost ($); the lower the better", + color="#1919ff", + fontsize=fig_fontsize, + ) + + if display_solved: + annotation_height = y_upper + annotation_offset + count = 1 + for method in methods_order: + if method not in results: + continue + solved = results[method]["solved"] + ax.text( + count, + annotation_height, + f"{solved}", + ha="center", + va="bottom", + fontsize=fig_fontsize, + ) + count += 1 + + model = model.replace(".", "").replace("-", "").lower() + fig.savefig(f"keyword_counting_{model}.pdf", bbox_inches="tight") + + +plot_results( + get_plotting_data("results/"), + display_solved=True, + annotation_offset=-0.3, + model="GPT-3.5", + y_upper=35, + display_left_ylabel=True, + display_right_ylabel=True, + cost_upper=9, +) diff --git a/examples/set_intersection/README.md b/examples/set_intersection/README.md new file mode 100644 index 0000000..a780dae --- /dev/null +++ b/examples/set_intersection/README.md @@ -0,0 +1,52 @@ +# Set Intersection + +The use case in this directory computes the intersection of two input +sets. We provide implementations of five different approaches for 32, 64 +and 128 elements: +- IO +- Chain-of-Thought (CoT) +- Tree of Thought (ToT): + - ToT: wider tree, meaning more branches per level + - ToT2: tree with more levels, but fewer branches per level +- Graph of Thoughts (GoT) + +## Data + +We provide input files with 100 precomputed samples for each set length: +`set_intersection_.csv`. It is also possible to use +the data generator `dataset_gen_intersection.py` to generate additional or +different samples. The parameters can be updated in lines 24 to 28 of +the main body: +- set_size = 32 # size of the generated sets +- int_value_ubound = 64 # (exclusive) upper limit of generated numbers +- seed = 42 # seed of the random number generator +- num_sample = 100 # number of samples +- filename = 'set_intersection_032.csv' # output filename + +## Execution + +The files to execute the use case are called +`set_intersection_.py`. In the main body, one can +select the specific samples to be run (variable sample) and the +approaches (variable approaches). It is also possible to set a budget in +dollars (variable budget). +The input filename for the samples is currently hardcoded to +`set_intersection_.csv`, but can be updated in the +function `run`. + +The Python scripts will create the directory `result`, if it is not +already present. In the `result` directory, another directory is created +for each run: `{name of LLM}_{list of approaches}_{day}_{start time}`. +Inside each execution specific directory two files (`config.json`, +`log.log`) and a separate directory for each selected approach are +created. `config.json` contains the configuration of the run: input data, +selected approaches, name of the LLM, and the budget. `log.log` contains +the prompts and responses of the LLM as well as additional debug data. +The approach directories contain a separate json file for every sample +and the file contains the Graph Reasoning State (GRS) for that sample. + +## Plot Data + +Change the results directory in line 170 of `plot.py` and update the +length parameter in the subsequent line and run `python3 plot.py` to +plot your data. diff --git a/examples/set_intersection/dataset_gen_intersection.py b/examples/set_intersection/dataset_gen_intersection.py new file mode 100644 index 0000000..8e26e21 --- /dev/null +++ b/examples/set_intersection/dataset_gen_intersection.py @@ -0,0 +1,92 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Robert Gerstenberger + +import csv +import numpy as np + + +def scramble(array: np.ndarray, rng: np.random.Generator) -> None: + """ + Helper function to change the order of the elements in an array randomly. + + :param array: Array to be scrambled. + :type: numpy.ndarray + :param rng: Random number generator. + :type rng: numpy.random.Generator + """ + + size = array.shape[0] + + index_array = rng.integers(0, size, size) + + for i in range(size): + temp = array[i] + array[i] = array[index_array[i]] + array[index_array[i]] = temp + + +if __name__ == "__main__": + """ + Input(u) : Set size. + Input(v) : Range of the integer numbers in the sets: 0..v (exclusive) + Input(w) : Seed for the random number generator. + Input(x) : Number of samples to be generated. + Input(y) : Filename for the output CSV file. + Output(z) : Input sets and intersected set written a file in the CSV format. + File contains the sample ID, input set 1, input set 2, + intersection set. + """ + + set_size = 32 # size of the generated sets + int_value_ubound = 64 # (exclusive) upper limit of generated numbers + seed = 42 # seed of the random number generator + num_sample = 100 # number of samples + filename = "set_intersection_032.csv" # output filename + + assert 2 * set_size <= int_value_ubound + + rng = np.random.default_rng(seed) + + intersection_sizes = rng.integers(set_size // 4, 3 * set_size // 4, num_sample) + + np.set_printoptions( + linewidth=np.inf + ) # no wrapping in the array fields in the output file + + with open(filename, "w") as f: + fieldnames = ["ID", "SET1", "SET2", "INTERSECTION"] + writer = csv.DictWriter(f, delimiter=",", fieldnames=fieldnames) + writer.writeheader() + + for i in range(num_sample): + intersection_size = intersection_sizes[i] + + full_set = np.arange(0, int_value_ubound, dtype=np.int16) + + scramble(full_set, rng) + + intersection = full_set[:intersection_size].copy() + + sorted_intersection = np.sort(intersection) + + set1 = full_set[:set_size].copy() + set2 = np.concatenate( + [intersection, full_set[set_size : 2 * set_size - intersection_size]] + ) + + scramble(set1, rng) + scramble(set2, rng) + + writer.writerow( + { + "ID": i, + "SET1": set1.tolist(), + "SET2": set2.tolist(), + "INTERSECTION": sorted_intersection.tolist(), + } + ) diff --git a/examples/set_intersection/plot.py b/examples/set_intersection/plot.py new file mode 100644 index 0000000..55a3e7b --- /dev/null +++ b/examples/set_intersection/plot.py @@ -0,0 +1,184 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach +# contributions: Robert Gerstenberger + +import json +import os +import matplotlib.pyplot as plt + + +def get_complete_results(base_directory): + results_complete = {} + for folder_name in os.listdir(base_directory): + folder_path = os.path.join(base_directory, folder_name) + if os.path.isdir(folder_path): + results_complete[folder_name] = [] + for file_name in os.listdir(folder_path): + if file_name.endswith(".json"): + file_path = os.path.join(folder_path, file_name) + with open(file_path, "r") as f: + data = json.load(f) + results_complete[folder_name].append( + {"key": int(file_name.split(".")[0]), "data": data} + ) + for key in results_complete.keys(): + results_complete[key] = sorted( + results_complete[key], key=lambda x: x["key"] + ) + return results_complete + + +def get_final_scores(results_complete): + scores = {} + for method in results_complete.keys(): + scores[method] = [] + for result in results_complete[method]: + score = 100 + solved = False + cost = 1 + prompt_tokens = 0 + completion_tokens = 0 + for op in result["data"]: + if "operation" in op and op["operation"] == "ground_truth_evaluator": + try: + score = min(op["scores"]) + solved = any(op["problem_solved"]) + except: + continue + if "cost" in op: + cost = op["cost"] + prompt_tokens = op["prompt_tokens"] + completion_tokens = op["completion_tokens"] + scores[method].append( + [result["key"], score, solved, prompt_tokens, completion_tokens, cost] + ) + scores[method] = sorted(scores[method], key=lambda x: x[0]) + return scores + + +def get_plotting_data(base_directory): + results_complete = get_complete_results(base_directory) + scores = get_final_scores(results_complete) + results_plotting = { + method: { + "scores": [x[1] for x in scores[method]], + "solved": sum([1 for x in scores[method] if x[2]]), + "costs": [x[5] for x in scores[method]], + } + for method in scores.keys() + } + return results_plotting + + +def plot_results( + results, + methods_order=["io", "cot", "tot", "tot2", "got"], + model="GPT-3.5", + length=32, + y_lower=0, + cost_upper=0.0, + display_solved=True, + annotation_offset=0, + display_left_ylabel=False, + display_right_ylabel=False, +): + methods_order = [method for method in methods_order if method in results] + # Extract scores based on the order + scores_ordered = [ + [score for score in results[method]["scores"] if score != 1000] + for method in methods_order + ] + total_costs = [sum(results[method]["costs"]) for method in methods_order] + + # Create figure and axis + fig, ax = plt.subplots(dpi=150, figsize=(2.5, 5)) + + # Create boxplots + positions = range(1, len(methods_order) + 1) + ax.boxplot(scores_ordered, positions=positions) + + fig_fontsize = 12 + + # Set the ticks and labels + methods_labels = ["IO", "CoT", "ToT", "ToT2", "GoT"] + plt.yticks(fontsize=fig_fontsize) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticklabels(methods_labels, fontsize=fig_fontsize) + + y_upper = length + + range_increase = 1 + if display_solved: + if length < 48: + range_increase = 2 + elif length < 96: + range_increase = 4 + else: + range_increase = 8 + + ax.set_ylim(y_lower, y_upper + range_increase) + ax1_yticks = range( + y_lower, y_upper + 1, 2 if length < 48 else (4 if length < 96 else 8) + ) + ax.set_yticks(ax1_yticks) + if display_left_ylabel: + ax.set_ylabel( + f"#incorrect elements; the lower the better", fontsize=fig_fontsize + ) + + ax.set_title(f"{length} elements") + + ax2 = ax.twinx() + ax2.bar(positions, total_costs, alpha=0.5, color="blue", label="Total Cost ($)") + ax2.yaxis.set_tick_params(colors="#1919ff", labelsize=fig_fontsize) + if cost_upper > 0: + ax2.set_ylim(0, cost_upper) + number_of_ticks = len(ax.get_yticks()) + tick_interval = cost_upper / (number_of_ticks) + ax2_ticks = [tick_interval * i for i in range(number_of_ticks)] + + # Set custom tick positions for ax2 + ax2.set_yticks(ax2_ticks) + + if display_right_ylabel: + ax2.set_ylabel( + "Total Cost ($); the lower the better", + color="#1919ff", + fontsize=fig_fontsize, + ) + + if display_solved: + annotation_height = y_upper + annotation_offset + count = 1 + for method in methods_order: + if method not in results: + continue + solved = results[method]["solved"] + ax.text( + count, + annotation_height, + f"{solved}", + ha="center", + va="bottom", + fontsize=fig_fontsize, + ) + count += 1 + + model = model.replace(".", "").replace("-", "").lower() + fig.savefig(f"set_intersection_{model}_{length}.pdf", bbox_inches="tight") + + +plot_results( + get_plotting_data("results/"), + length=32, + display_solved=True, + model="GPT-3.5", + display_left_ylabel=True, + display_right_ylabel=True, +) diff --git a/examples/set_intersection/set_intersection_032.csv b/examples/set_intersection/set_intersection_032.csv new file mode 100644 index 0000000..25f80b5 --- /dev/null +++ b/examples/set_intersection/set_intersection_032.csv @@ -0,0 +1,101 @@ +ID,SET1,SET2,INTERSECTION +0,"[11, 60, 1, 49, 21, 33, 14, 56, 54, 15, 23, 40, 45, 22, 7, 28, 20, 46, 51, 6, 34, 37, 3, 50, 17, 8, 25, 0, 35, 47, 18, 19]","[31, 11, 4, 63, 38, 58, 59, 24, 61, 14, 32, 39, 27, 46, 48, 19, 52, 57, 50, 56, 3, 2, 53, 29, 5, 37, 62, 41, 36, 12, 49, 16]","[3, 11, 14, 19, 37, 46, 49, 50, 56]" +1,"[28, 58, 36, 18, 37, 31, 44, 39, 34, 51, 12, 56, 21, 27, 7, 24, 46, 1, 25, 2, 41, 6, 45, 29, 49, 42, 35, 30, 54, 55, 10, 50]","[4, 16, 28, 46, 49, 21, 58, 30, 19, 1, 37, 15, 3, 59, 51, 24, 10, 12, 34, 20, 40, 44, 35, 23, 36, 0, 43, 54, 2, 31, 57, 41]","[1, 2, 10, 12, 21, 24, 28, 30, 31, 34, 35, 36, 37, 41, 44, 46, 49, 51, 54, 58]" +2,"[32, 24, 17, 27, 51, 19, 50, 59, 8, 18, 41, 36, 43, 39, 49, 4, 5, 31, 30, 60, 48, 61, 10, 16, 47, 58, 9, 54, 40, 37, 1, 11]","[44, 27, 33, 46, 51, 17, 28, 18, 4, 23, 32, 49, 58, 1, 20, 40, 39, 52, 30, 55, 26, 19, 63, 31, 57, 13, 47, 61, 10, 6, 38, 41]","[1, 4, 10, 17, 18, 19, 27, 30, 31, 32, 39, 40, 41, 47, 49, 51, 58, 61]" +3,"[22, 38, 13, 31, 63, 6, 59, 17, 27, 20, 21, 42, 24, 4, 25, 15, 28, 29, 19, 49, 40, 30, 34, 0, 53, 23, 12, 62, 36, 51, 39, 45]","[21, 29, 30, 28, 31, 55, 2, 22, 19, 4, 46, 32, 37, 43, 23, 15, 58, 56, 11, 50, 48, 54, 41, 45, 51, 7, 42, 38, 18, 9, 6, 1]","[4, 6, 15, 19, 21, 22, 23, 28, 29, 30, 31, 38, 42, 45, 51]" +4,"[4, 26, 48, 7, 42, 60, 31, 36, 25, 20, 14, 50, 21, 30, 12, 10, 23, 8, 39, 13, 46, 32, 11, 34, 6, 2, 57, 0, 17, 33, 18, 24]","[1, 37, 48, 28, 39, 58, 53, 10, 6, 50, 17, 9, 51, 56, 38, 52, 8, 30, 46, 62, 5, 24, 61, 22, 57, 14, 44, 11, 47, 35, 63, 36]","[6, 8, 10, 11, 14, 17, 24, 30, 36, 39, 46, 48, 50, 57]" +5,"[48, 50, 19, 59, 57, 63, 49, 61, 14, 11, 29, 39, 4, 17, 21, 12, 3, 35, 23, 2, 58, 60, 38, 43, 28, 47, 5, 44, 15, 55, 8, 26]","[50, 12, 30, 23, 11, 61, 17, 58, 19, 55, 62, 43, 33, 2, 37, 21, 56, 4, 15, 24, 38, 45, 1, 28, 59, 48, 35, 6, 47, 8, 27, 22]","[2, 4, 8, 11, 12, 15, 17, 19, 21, 23, 28, 35, 38, 43, 47, 48, 50, 55, 58, 59, 61]" +6,"[34, 2, 12, 54, 13, 41, 57, 42, 21, 59, 26, 10, 6, 35, 27, 16, 1, 44, 8, 11, 14, 7, 62, 20, 30, 19, 32, 9, 43, 39, 22, 24]","[18, 41, 49, 56, 1, 3, 45, 36, 17, 34, 50, 46, 29, 30, 61, 32, 14, 52, 24, 51, 5, 25, 31, 55, 37, 0, 23, 40, 28, 20, 22, 63]","[1, 14, 20, 22, 24, 30, 32, 34, 41]" +7,"[49, 61, 9, 23, 27, 21, 47, 37, 54, 32, 18, 14, 22, 13, 62, 46, 0, 26, 4, 11, 60, 34, 25, 50, 6, 51, 59, 8, 35, 41, 29, 17]","[33, 21, 49, 54, 6, 27, 3, 47, 4, 20, 43, 41, 8, 24, 0, 57, 28, 35, 15, 17, 46, 23, 13, 9, 45, 31, 22, 12, 5, 29, 50, 7]","[0, 4, 6, 8, 9, 13, 17, 21, 22, 23, 27, 29, 35, 41, 46, 47, 49, 50, 54]" +8,"[55, 59, 60, 13, 41, 15, 38, 52, 35, 5, 9, 61, 57, 34, 47, 22, 21, 1, 27, 11, 36, 2, 6, 58, 62, 51, 23, 50, 8, 39, 28, 54]","[37, 14, 4, 55, 50, 17, 8, 19, 10, 44, 0, 31, 27, 53, 39, 35, 30, 5, 62, 24, 26, 29, 54, 45, 40, 3, 43, 11, 12, 25, 41, 42]","[5, 8, 11, 27, 35, 39, 41, 50, 54, 55, 62]" +9,"[20, 12, 52, 56, 36, 51, 59, 40, 55, 33, 41, 38, 28, 45, 13, 2, 43, 27, 35, 7, 9, 0, 10, 37, 29, 15, 14, 49, 17, 63, 25, 32]","[11, 13, 19, 6, 21, 54, 36, 14, 58, 26, 2, 39, 53, 22, 50, 51, 24, 16, 5, 17, 1, 60, 57, 23, 35, 33, 42, 18, 61, 29, 47, 8]","[2, 13, 14, 17, 29, 33, 35, 36, 51]" +10,"[24, 21, 51, 37, 54, 22, 18, 38, 14, 30, 48, 49, 28, 47, 10, 44, 58, 29, 3, 45, 26, 15, 9, 6, 33, 2, 34, 17, 20, 25, 0, 1]","[3, 0, 20, 1, 24, 45, 25, 52, 13, 43, 38, 15, 22, 53, 27, 8, 42, 40, 59, 32, 21, 60, 30, 46, 51, 47, 14, 50, 5, 62, 57, 28]","[0, 1, 3, 14, 15, 20, 21, 22, 24, 25, 28, 30, 38, 45, 47, 51]" +11,"[58, 52, 51, 15, 42, 26, 19, 30, 28, 6, 40, 11, 25, 53, 18, 47, 21, 12, 41, 45, 43, 7, 35, 48, 27, 3, 32, 2, 4, 62, 17, 29]","[41, 4, 0, 35, 25, 29, 14, 62, 45, 2, 37, 11, 15, 8, 30, 39, 58, 19, 56, 42, 17, 51, 24, 28, 44, 27, 13, 18, 26, 47, 53, 43]","[2, 4, 11, 15, 17, 18, 19, 25, 26, 27, 28, 29, 30, 35, 41, 42, 43, 45, 47, 51, 53, 58, 62]" +12,"[8, 17, 23, 38, 24, 47, 61, 3, 46, 43, 58, 39, 27, 21, 26, 14, 62, 1, 15, 19, 37, 53, 55, 6, 51, 57, 52, 25, 16, 22, 33, 54]","[2, 18, 15, 17, 23, 45, 14, 36, 53, 7, 27, 32, 31, 21, 8, 38, 16, 61, 6, 58, 3, 39, 49, 19, 22, 42, 0, 12, 30, 60, 26, 46]","[3, 6, 8, 14, 15, 16, 17, 19, 21, 22, 23, 26, 27, 38, 39, 46, 53, 58, 61]" +13,"[58, 10, 28, 52, 51, 48, 49, 13, 53, 25, 55, 6, 4, 15, 30, 56, 54, 41, 38, 42, 21, 33, 44, 18, 37, 43, 31, 20, 3, 2, 50, 0]","[54, 3, 32, 44, 26, 49, 0, 9, 35, 51, 25, 33, 62, 55, 47, 2, 29, 11, 42, 18, 4, 23, 31, 41, 20, 7, 58, 52, 13, 36, 5, 53]","[0, 2, 3, 4, 13, 18, 20, 25, 31, 33, 41, 42, 44, 49, 51, 52, 53, 54, 55, 58]" +14,"[12, 18, 22, 38, 6, 23, 54, 37, 40, 44, 19, 46, 35, 47, 7, 10, 16, 24, 4, 42, 31, 30, 0, 63, 25, 57, 39, 51, 3, 60, 49, 28]","[40, 6, 12, 18, 19, 34, 17, 47, 4, 29, 53, 3, 15, 7, 37, 1, 59, 42, 33, 35, 52, 16, 61, 13, 9, 51, 32, 60, 24, 54, 38, 46]","[3, 4, 6, 7, 12, 16, 18, 19, 24, 35, 37, 38, 40, 42, 46, 47, 51, 54, 60]" +15,"[61, 62, 10, 53, 17, 20, 28, 54, 55, 59, 4, 1, 11, 34, 5, 35, 56, 38, 60, 29, 43, 42, 63, 50, 24, 40, 47, 52, 16, 39, 31, 19]","[60, 24, 50, 45, 23, 18, 20, 31, 29, 35, 43, 44, 59, 41, 51, 46, 16, 63, 38, 3, 42, 25, 4, 17, 5, 9, 61, 7, 27, 54, 19, 39]","[4, 5, 16, 17, 19, 20, 24, 29, 31, 35, 38, 39, 42, 43, 50, 54, 59, 60, 61, 63]" +16,"[12, 2, 21, 59, 49, 30, 31, 14, 23, 39, 5, 15, 4, 19, 27, 43, 6, 34, 0, 22, 16, 60, 17, 48, 40, 9, 56, 1, 63, 8, 45, 51]","[40, 4, 38, 7, 1, 47, 44, 16, 58, 11, 25, 35, 3, 51, 26, 10, 41, 60, 46, 6, 34, 19, 2, 61, 21, 31, 8, 22, 12, 53, 15, 50]","[1, 2, 4, 6, 8, 12, 15, 16, 19, 21, 22, 31, 34, 40, 51, 60]" +17,"[26, 8, 53, 37, 45, 60, 32, 44, 19, 39, 36, 16, 25, 9, 6, 50, 38, 47, 30, 63, 42, 52, 57, 10, 7, 27, 14, 1, 41, 58, 59, 62]","[28, 12, 29, 21, 63, 34, 17, 49, 56, 4, 15, 39, 1, 46, 22, 62, 9, 43, 0, 50, 23, 54, 44, 31, 5, 51, 11, 37, 8, 61, 13, 42]","[1, 8, 9, 37, 39, 42, 44, 50, 62, 63]" +18,"[9, 58, 28, 53, 3, 18, 45, 33, 11, 5, 2, 47, 4, 59, 38, 30, 61, 15, 21, 48, 41, 25, 26, 13, 60, 23, 6, 55, 17, 36, 62, 10]","[43, 15, 16, 10, 33, 5, 13, 62, 41, 53, 0, 32, 54, 23, 26, 19, 25, 9, 37, 49, 38, 21, 28, 27, 40, 45, 4, 61, 29, 3, 55, 18]","[3, 4, 5, 9, 10, 13, 15, 18, 21, 23, 25, 26, 28, 33, 38, 41, 45, 53, 55, 61, 62]" +19,"[26, 63, 42, 19, 6, 62, 39, 14, 24, 17, 44, 31, 8, 7, 10, 16, 1, 56, 45, 43, 50, 57, 54, 51, 58, 59, 5, 37, 3, 21, 13, 30]","[60, 3, 1, 34, 17, 55, 50, 21, 0, 46, 62, 59, 47, 36, 15, 22, 19, 5, 2, 38, 58, 12, 32, 27, 28, 18, 24, 31, 26, 63, 51, 53]","[1, 3, 5, 17, 19, 21, 24, 26, 31, 50, 51, 58, 59, 62, 63]" +20,"[30, 31, 28, 56, 54, 29, 61, 18, 1, 46, 34, 5, 15, 63, 26, 45, 4, 47, 40, 21, 3, 9, 2, 27, 7, 6, 24, 19, 42, 11, 35, 41]","[57, 5, 54, 42, 41, 31, 12, 13, 9, 34, 21, 23, 7, 48, 22, 29, 19, 14, 0, 43, 3, 27, 26, 4, 16, 25, 53, 51, 10, 11, 52, 20]","[3, 4, 5, 7, 9, 11, 19, 21, 26, 27, 29, 31, 34, 41, 42, 54]" +21,"[9, 12, 51, 48, 23, 6, 50, 14, 53, 15, 58, 44, 32, 59, 24, 42, 27, 41, 29, 10, 45, 34, 0, 46, 3, 36, 25, 16, 13, 63, 49, 52]","[16, 15, 51, 37, 20, 27, 47, 36, 45, 59, 0, 41, 40, 2, 28, 31, 17, 1, 21, 22, 5, 58, 18, 57, 34, 39, 54, 9, 53, 33, 60, 19]","[0, 9, 15, 16, 27, 34, 36, 41, 45, 51, 53, 58, 59]" +22,"[57, 44, 59, 3, 16, 5, 17, 6, 52, 0, 18, 40, 47, 11, 45, 14, 1, 49, 30, 55, 27, 12, 50, 10, 7, 39, 46, 22, 23, 38, 34, 41]","[44, 48, 9, 58, 28, 40, 4, 56, 49, 19, 53, 42, 47, 35, 25, 34, 29, 43, 33, 32, 6, 55, 37, 26, 20, 11, 2, 27, 31, 62, 54, 39]","[6, 11, 27, 34, 39, 40, 44, 47, 49, 55]" +23,"[32, 25, 2, 13, 11, 23, 54, 49, 9, 57, 59, 6, 61, 47, 37, 34, 18, 29, 46, 45, 56, 31, 14, 17, 48, 55, 7, 50, 27, 51, 63, 44]","[49, 34, 46, 32, 17, 50, 51, 54, 61, 14, 52, 21, 56, 16, 44, 33, 25, 57, 2, 28, 35, 19, 55, 11, 22, 9, 48, 20, 53, 29, 45, 18]","[2, 9, 11, 14, 17, 18, 25, 29, 32, 34, 44, 45, 46, 48, 49, 50, 51, 54, 55, 56, 57, 61]" +24,"[23, 16, 41, 14, 10, 42, 9, 27, 35, 51, 24, 4, 59, 47, 55, 12, 18, 58, 7, 63, 28, 32, 22, 49, 37, 31, 13, 1, 21, 39, 36, 30]","[39, 6, 63, 37, 27, 19, 40, 16, 18, 54, 22, 20, 2, 30, 23, 59, 46, 52, 43, 10, 21, 41, 31, 4, 12, 24, 32, 38, 3, 13, 47, 53]","[4, 10, 12, 13, 16, 18, 21, 22, 23, 24, 27, 30, 31, 32, 37, 39, 41, 47, 59, 63]" +25,"[20, 5, 41, 40, 24, 60, 2, 6, 59, 50, 34, 47, 10, 0, 14, 29, 35, 28, 39, 58, 13, 16, 27, 4, 18, 52, 56, 21, 45, 15, 32, 30]","[2, 23, 40, 31, 7, 52, 55, 18, 59, 56, 60, 44, 38, 54, 35, 4, 46, 1, 12, 47, 10, 3, 13, 29, 48, 43, 6, 11, 20, 24, 45, 34]","[2, 4, 6, 10, 13, 18, 20, 24, 29, 34, 35, 40, 45, 47, 52, 56, 59, 60]" +26,"[60, 39, 4, 62, 16, 57, 49, 41, 25, 59, 55, 35, 53, 33, 17, 5, 18, 13, 46, 30, 45, 38, 1, 20, 22, 44, 11, 15, 42, 7, 21, 28]","[57, 27, 24, 15, 44, 13, 60, 35, 62, 47, 38, 59, 42, 52, 49, 43, 10, 0, 53, 6, 37, 18, 19, 36, 51, 58, 3, 34, 23, 21, 63, 40]","[13, 15, 18, 21, 35, 38, 42, 44, 49, 53, 57, 59, 60, 62]" +27,"[9, 48, 28, 3, 61, 4, 1, 22, 62, 57, 18, 21, 34, 26, 25, 8, 12, 38, 27, 49, 46, 6, 40, 56, 10, 16, 36, 5, 45, 44, 51, 42]","[10, 36, 20, 5, 45, 34, 16, 18, 21, 51, 60, 17, 57, 50, 42, 54, 46, 63, 39, 38, 58, 3, 24, 53, 37, 26, 27, 48, 22, 44, 49, 8]","[3, 5, 8, 10, 16, 18, 21, 22, 26, 27, 34, 36, 38, 42, 44, 45, 46, 48, 49, 51, 57]" +28,"[17, 42, 40, 38, 58, 19, 63, 22, 50, 18, 8, 16, 12, 15, 61, 10, 52, 9, 44, 13, 60, 24, 41, 56, 35, 46, 21, 36, 28, 0, 48, 6]","[6, 33, 10, 5, 23, 41, 53, 30, 58, 22, 45, 42, 61, 7, 12, 19, 56, 60, 2, 28, 62, 36, 39, 43, 27, 20, 16, 55, 37, 40, 9, 32]","[6, 9, 10, 12, 16, 19, 22, 28, 36, 40, 41, 42, 56, 58, 60, 61]" +29,"[1, 4, 35, 57, 2, 11, 43, 56, 16, 9, 51, 8, 26, 0, 59, 31, 22, 25, 29, 50, 13, 44, 12, 32, 30, 27, 19, 36, 42, 61, 7, 38]","[59, 35, 54, 49, 7, 45, 33, 57, 32, 41, 18, 47, 55, 56, 58, 5, 4, 46, 21, 9, 63, 52, 34, 2, 62, 8, 48, 22, 51, 11, 1, 16]","[1, 2, 4, 7, 8, 9, 11, 16, 22, 32, 35, 51, 56, 57, 59]" +30,"[54, 2, 52, 36, 21, 37, 13, 28, 39, 17, 27, 0, 42, 56, 10, 4, 60, 48, 49, 24, 20, 16, 5, 62, 14, 47, 53, 1, 7, 32, 34, 12]","[38, 41, 13, 32, 31, 63, 11, 62, 1, 18, 52, 58, 56, 51, 7, 37, 36, 22, 9, 35, 43, 0, 46, 4, 55, 44, 25, 8, 24, 14, 34, 47]","[0, 1, 4, 7, 13, 14, 24, 32, 34, 36, 37, 47, 52, 56, 62]" +31,"[6, 32, 2, 58, 25, 19, 31, 0, 30, 28, 46, 49, 41, 48, 45, 44, 59, 51, 22, 3, 38, 36, 1, 15, 11, 26, 37, 24, 55, 9, 14, 61]","[10, 56, 39, 4, 34, 11, 29, 14, 57, 15, 60, 20, 9, 43, 53, 40, 8, 44, 50, 27, 47, 19, 36, 52, 6, 62, 45, 63, 12, 21, 51, 58]","[6, 9, 11, 14, 15, 19, 36, 44, 45, 51, 58]" +32,"[24, 51, 50, 19, 63, 42, 29, 59, 41, 9, 38, 28, 25, 4, 18, 40, 12, 1, 58, 34, 15, 30, 54, 6, 46, 27, 39, 55, 23, 61, 5, 36]","[56, 17, 24, 11, 35, 20, 15, 10, 3, 45, 26, 33, 21, 60, 8, 32, 22, 48, 25, 49, 41, 14, 13, 18, 19, 61, 2, 43, 52, 16, 5, 27]","[5, 15, 18, 19, 24, 25, 27, 41, 61]" +33,"[27, 37, 6, 7, 2, 32, 28, 11, 24, 43, 5, 15, 12, 18, 36, 26, 55, 35, 57, 56, 29, 54, 30, 9, 3, 20, 38, 48, 63, 25, 16, 10]","[21, 34, 3, 20, 2, 13, 56, 32, 25, 58, 61, 51, 59, 53, 6, 27, 8, 48, 50, 43, 46, 52, 63, 11, 42, 12, 19, 45, 9, 39, 55, 54]","[2, 3, 6, 9, 11, 12, 20, 25, 27, 32, 43, 48, 54, 55, 56, 63]" +34,"[22, 52, 23, 8, 46, 5, 19, 37, 31, 51, 6, 17, 21, 13, 29, 4, 58, 0, 32, 40, 9, 33, 55, 34, 11, 30, 24, 20, 3, 39, 2, 25]","[51, 20, 56, 37, 9, 19, 38, 53, 43, 35, 39, 23, 46, 8, 11, 3, 28, 49, 13, 22, 52, 2, 42, 26, 21, 30, 58, 24, 59, 40, 5, 6]","[2, 3, 5, 6, 8, 9, 11, 13, 19, 20, 21, 22, 23, 24, 30, 37, 39, 40, 46, 51, 52, 58]" +35,"[9, 37, 45, 60, 18, 38, 55, 14, 44, 49, 27, 19, 6, 2, 51, 26, 11, 24, 54, 32, 48, 57, 34, 3, 42, 5, 39, 31, 53, 62, 43, 41]","[61, 28, 30, 25, 33, 43, 46, 56, 58, 62, 21, 17, 16, 50, 29, 41, 13, 38, 54, 63, 40, 18, 35, 10, 36, 20, 7, 9, 8, 45, 19, 52]","[9, 18, 19, 38, 41, 43, 45, 54, 62]" +36,"[45, 26, 14, 2, 25, 41, 59, 58, 42, 39, 56, 46, 1, 48, 30, 31, 63, 36, 33, 5, 60, 19, 21, 57, 62, 35, 17, 37, 6, 3, 38, 13]","[43, 32, 60, 56, 36, 22, 59, 6, 39, 63, 46, 8, 26, 38, 57, 31, 29, 25, 45, 18, 55, 52, 13, 10, 62, 35, 30, 7, 47, 14, 37, 21]","[6, 13, 14, 21, 25, 26, 30, 31, 35, 36, 37, 38, 39, 45, 46, 56, 57, 59, 60, 62, 63]" +37,"[47, 52, 1, 22, 16, 56, 5, 30, 43, 54, 3, 48, 21, 17, 33, 9, 57, 11, 4, 46, 15, 26, 12, 7, 32, 44, 6, 41, 31, 14, 49, 59]","[42, 44, 49, 59, 58, 61, 57, 6, 46, 3, 7, 31, 43, 1, 34, 22, 12, 16, 4, 54, 55, 45, 27, 5, 26, 48, 13, 17, 19, 51, 39, 47]","[1, 3, 4, 5, 6, 7, 12, 16, 17, 22, 26, 31, 43, 44, 46, 47, 48, 49, 54, 57, 59]" +38,"[28, 27, 51, 11, 2, 31, 14, 6, 33, 25, 42, 49, 59, 60, 17, 10, 56, 12, 23, 36, 37, 53, 18, 52, 26, 21, 62, 63, 38, 22, 16, 44]","[52, 53, 6, 9, 40, 47, 14, 3, 34, 29, 18, 48, 7, 58, 20, 50, 51, 22, 5, 46, 28, 37, 60, 61, 55, 27, 1, 4, 49, 45, 39, 24]","[6, 14, 18, 22, 27, 28, 37, 49, 51, 52, 53, 60]" +39,"[41, 11, 6, 43, 60, 48, 37, 55, 31, 39, 7, 13, 58, 42, 62, 44, 21, 56, 35, 19, 49, 9, 36, 34, 14, 10, 8, 54, 30, 32, 52, 2]","[0, 36, 42, 58, 13, 38, 31, 45, 11, 61, 18, 28, 32, 60, 17, 57, 10, 2, 3, 59, 51, 35, 12, 9, 7, 50, 63, 41, 48, 34, 39, 49]","[2, 7, 9, 10, 11, 13, 31, 32, 34, 35, 36, 39, 41, 42, 48, 49, 58, 60]" +40,"[27, 26, 20, 51, 10, 56, 49, 22, 31, 61, 44, 24, 32, 17, 50, 29, 30, 19, 3, 4, 12, 0, 43, 41, 35, 58, 33, 15, 37, 34, 57, 25]","[54, 29, 52, 49, 45, 30, 48, 7, 11, 19, 47, 46, 10, 38, 16, 36, 40, 5, 41, 1, 23, 8, 42, 33, 56, 14, 59, 2, 58, 0, 63, 62]","[0, 10, 19, 29, 30, 33, 41, 49, 56, 58]" +41,"[44, 7, 43, 52, 38, 18, 47, 2, 49, 41, 36, 42, 57, 1, 23, 27, 39, 50, 31, 51, 16, 29, 30, 26, 40, 24, 10, 20, 6, 11, 62, 19]","[47, 21, 60, 51, 62, 55, 28, 48, 16, 2, 52, 36, 10, 18, 63, 3, 45, 32, 50, 43, 19, 44, 27, 56, 26, 1, 8, 29, 25, 41, 11, 38]","[1, 2, 10, 11, 16, 18, 19, 26, 27, 29, 36, 38, 41, 43, 44, 47, 50, 51, 52, 62]" +42,"[11, 29, 26, 5, 13, 32, 53, 10, 25, 60, 52, 39, 35, 55, 23, 17, 49, 47, 28, 20, 4, 50, 2, 31, 19, 48, 34, 6, 0, 54, 16, 37]","[59, 30, 29, 23, 49, 57, 25, 16, 37, 27, 1, 17, 20, 42, 55, 47, 41, 7, 33, 6, 52, 48, 34, 51, 13, 3, 56, 11, 26, 50, 54, 46]","[6, 11, 13, 16, 17, 20, 23, 25, 26, 29, 34, 37, 47, 48, 49, 50, 52, 54, 55]" +43,"[2, 21, 7, 46, 49, 10, 25, 20, 32, 23, 55, 26, 4, 34, 15, 16, 28, 50, 30, 42, 37, 45, 44, 1, 39, 5, 6, 13, 24, 11, 38, 14]","[29, 45, 42, 8, 21, 9, 1, 5, 15, 61, 62, 51, 54, 41, 38, 31, 7, 56, 43, 13, 36, 0, 60, 10, 59, 48, 25, 3, 34, 19, 23, 27]","[1, 5, 7, 10, 13, 15, 21, 23, 25, 34, 38, 42, 45]" +44,"[53, 2, 10, 19, 21, 8, 35, 56, 49, 5, 45, 42, 39, 16, 38, 32, 20, 9, 25, 41, 15, 29, 61, 7, 1, 11, 6, 47, 57, 36, 40, 28]","[23, 59, 3, 54, 22, 50, 47, 18, 37, 24, 27, 26, 48, 6, 34, 45, 16, 28, 55, 60, 33, 30, 52, 19, 7, 17, 13, 58, 35, 46, 62, 2]","[2, 6, 7, 16, 19, 28, 35, 45, 47]" +45,"[46, 13, 6, 58, 35, 57, 18, 2, 53, 30, 31, 28, 60, 5, 21, 56, 52, 48, 55, 39, 59, 12, 23, 45, 36, 22, 50, 0, 20, 4, 29, 32]","[45, 2, 20, 60, 13, 35, 22, 57, 24, 55, 5, 58, 51, 32, 56, 4, 0, 8, 7, 54, 41, 36, 48, 53, 23, 34, 38, 39, 28, 29, 61, 30]","[0, 2, 4, 5, 13, 20, 22, 23, 28, 29, 30, 32, 35, 36, 39, 45, 48, 53, 55, 56, 57, 58, 60]" +46,"[49, 54, 43, 3, 33, 63, 61, 57, 53, 42, 58, 48, 11, 51, 50, 55, 39, 1, 9, 28, 30, 6, 21, 20, 7, 47, 32, 19, 15, 5, 36, 40]","[44, 18, 40, 59, 58, 54, 0, 29, 38, 30, 48, 24, 55, 17, 52, 43, 11, 60, 31, 53, 20, 45, 41, 63, 3, 36, 23, 56, 35, 19, 14, 39]","[3, 11, 19, 20, 30, 36, 39, 40, 43, 48, 53, 54, 55, 58, 63]" +47,"[20, 13, 57, 11, 8, 58, 9, 4, 43, 10, 12, 61, 48, 40, 22, 32, 50, 2, 25, 41, 17, 21, 33, 5, 1, 37, 34, 19, 31, 47, 15, 3]","[58, 10, 51, 3, 1, 39, 41, 38, 46, 8, 42, 12, 20, 32, 43, 5, 2, 50, 25, 17, 18, 55, 27, 40, 16, 19, 30, 57, 31, 47, 48, 37]","[1, 2, 3, 5, 8, 10, 12, 17, 19, 20, 25, 31, 32, 37, 40, 41, 43, 47, 48, 50, 57, 58]" +48,"[39, 3, 45, 11, 22, 60, 1, 19, 25, 55, 18, 40, 35, 4, 58, 28, 8, 36, 41, 44, 30, 61, 50, 9, 2, 5, 15, 48, 12, 32, 31, 56]","[26, 19, 24, 8, 39, 44, 22, 30, 18, 31, 58, 11, 12, 63, 57, 17, 49, 45, 55, 23, 2, 42, 59, 60, 47, 0, 5, 21, 1, 29, 41, 27]","[1, 2, 5, 8, 11, 12, 18, 19, 22, 30, 31, 39, 41, 44, 45, 55, 58, 60]" +49,"[39, 40, 9, 0, 34, 57, 30, 43, 7, 35, 6, 24, 41, 63, 44, 36, 8, 13, 45, 15, 28, 55, 61, 42, 11, 48, 12, 38, 5, 27, 50, 59]","[9, 40, 0, 15, 52, 31, 45, 7, 57, 55, 28, 44, 26, 29, 11, 56, 38, 17, 3, 63, 42, 43, 5, 60, 30, 10, 58, 47, 41, 50, 54, 48]","[0, 5, 7, 9, 11, 15, 28, 30, 38, 40, 41, 42, 43, 44, 45, 48, 50, 55, 57, 63]" +50,"[27, 33, 14, 63, 0, 59, 54, 9, 62, 31, 21, 53, 39, 19, 10, 2, 22, 16, 29, 44, 17, 24, 60, 35, 12, 56, 4, 34, 36, 57, 30, 26]","[24, 36, 50, 3, 63, 58, 17, 22, 56, 0, 60, 7, 27, 55, 4, 11, 40, 31, 62, 14, 19, 35, 39, 33, 43, 21, 10, 6, 45, 59, 8, 18]","[0, 4, 10, 14, 17, 19, 21, 22, 24, 27, 31, 33, 35, 36, 39, 56, 59, 60, 62, 63]" +51,"[2, 27, 29, 42, 14, 34, 24, 58, 31, 4, 43, 62, 7, 1, 9, 5, 10, 53, 21, 49, 26, 23, 32, 3, 35, 51, 59, 55, 30, 39, 13, 16]","[57, 4, 11, 56, 37, 33, 63, 21, 30, 24, 55, 60, 48, 19, 46, 54, 44, 47, 7, 25, 31, 17, 18, 15, 45, 13, 10, 29, 0, 6, 61, 1]","[1, 4, 7, 10, 13, 21, 24, 29, 30, 31, 55]" +52,"[26, 63, 60, 20, 62, 17, 52, 35, 56, 12, 51, 10, 31, 42, 50, 18, 4, 39, 11, 44, 22, 25, 33, 5, 32, 13, 45, 0, 28, 23, 48, 59]","[36, 4, 35, 53, 22, 42, 55, 7, 18, 19, 13, 54, 52, 29, 27, 40, 25, 46, 15, 31, 63, 43, 57, 33, 38, 37, 1, 39, 9, 41, 45, 16]","[4, 13, 18, 22, 25, 31, 33, 35, 39, 42, 45, 52, 63]" +53,"[30, 10, 36, 20, 63, 2, 43, 62, 25, 33, 9, 4, 24, 60, 21, 57, 26, 40, 53, 18, 17, 45, 23, 50, 3, 48, 41, 12, 52, 47, 59, 0]","[15, 55, 6, 43, 41, 46, 32, 30, 48, 39, 9, 28, 58, 16, 8, 7, 33, 56, 20, 2, 21, 24, 34, 49, 1, 23, 17, 11, 45, 0, 44, 60]","[0, 2, 9, 17, 20, 21, 23, 24, 30, 33, 41, 43, 45, 48, 60]" +54,"[34, 24, 6, 4, 11, 52, 45, 54, 27, 49, 63, 16, 1, 28, 44, 33, 20, 22, 2, 57, 3, 40, 23, 30, 7, 41, 8, 62, 43, 58, 17, 46]","[61, 27, 43, 59, 55, 46, 10, 24, 12, 60, 1, 22, 23, 19, 52, 29, 40, 50, 39, 37, 26, 0, 63, 49, 56, 35, 6, 17, 41, 33, 9, 25]","[1, 6, 17, 22, 23, 24, 27, 33, 40, 41, 43, 46, 49, 52, 63]" +55,"[40, 62, 51, 34, 3, 26, 52, 29, 5, 44, 18, 23, 61, 10, 50, 24, 47, 43, 37, 7, 38, 11, 15, 59, 36, 49, 53, 42, 48, 45, 56, 58]","[4, 28, 22, 9, 35, 30, 5, 2, 54, 33, 26, 11, 13, 6, 25, 31, 20, 17, 34, 27, 36, 55, 48, 8, 32, 19, 56, 42, 46, 21, 57, 41]","[5, 11, 26, 34, 36, 42, 48, 56]" +56,"[49, 63, 30, 15, 54, 9, 6, 42, 8, 27, 3, 12, 48, 2, 36, 1, 26, 11, 43, 16, 61, 0, 62, 25, 53, 24, 51, 7, 19, 20, 14, 41]","[37, 55, 44, 8, 35, 43, 10, 36, 17, 32, 51, 7, 9, 59, 56, 16, 33, 19, 14, 58, 15, 6, 28, 53, 60, 50, 30, 41, 2, 23, 61, 34]","[2, 6, 7, 8, 9, 14, 15, 16, 19, 30, 36, 41, 43, 51, 53, 61]" +57,"[26, 10, 13, 42, 6, 50, 47, 34, 27, 36, 46, 3, 14, 61, 5, 44, 15, 55, 30, 41, 52, 28, 8, 2, 21, 38, 40, 11, 0, 62, 1, 16]","[19, 26, 14, 7, 13, 1, 15, 29, 4, 63, 22, 59, 47, 60, 51, 35, 23, 50, 58, 30, 57, 2, 49, 31, 62, 25, 24, 53, 20, 45, 54, 12]","[1, 2, 13, 14, 15, 26, 30, 47, 50, 62]" +58,"[43, 24, 41, 12, 33, 52, 34, 30, 39, 51, 1, 37, 49, 14, 50, 40, 23, 42, 17, 6, 31, 7, 3, 61, 21, 38, 63, 57, 20, 45, 9, 36]","[60, 34, 57, 3, 41, 49, 50, 23, 40, 14, 42, 58, 55, 19, 54, 22, 59, 21, 15, 20, 9, 28, 63, 17, 51, 27, 37, 13, 4, 2, 33, 1]","[1, 3, 9, 14, 17, 20, 21, 23, 33, 34, 37, 40, 41, 42, 49, 50, 51, 57, 63]" +59,"[5, 19, 20, 41, 52, 7, 49, 50, 28, 18, 1, 40, 33, 55, 53, 2, 22, 47, 27, 62, 29, 17, 58, 4, 43, 39, 14, 15, 45, 26, 10, 21]","[62, 61, 27, 26, 7, 25, 40, 4, 32, 14, 42, 50, 20, 39, 24, 3, 58, 2, 57, 5, 1, 17, 11, 9, 8, 38, 18, 46, 51, 29, 23, 33]","[1, 2, 4, 5, 7, 14, 17, 18, 20, 26, 27, 29, 33, 39, 40, 50, 58, 62]" +60,"[33, 32, 31, 53, 61, 4, 40, 55, 1, 43, 26, 25, 18, 17, 45, 46, 59, 21, 23, 35, 10, 27, 12, 50, 38, 42, 30, 2, 13, 29, 5, 14]","[13, 26, 30, 15, 50, 61, 2, 42, 52, 46, 32, 23, 17, 14, 21, 44, 40, 53, 8, 33, 59, 31, 28, 20, 4, 5, 55, 60, 56, 41, 24, 27]","[2, 4, 5, 13, 14, 17, 21, 23, 26, 27, 30, 31, 32, 33, 40, 42, 46, 50, 53, 55, 59, 61]" +61,"[44, 60, 25, 59, 56, 22, 42, 5, 12, 4, 31, 35, 50, 2, 43, 19, 62, 53, 24, 15, 47, 13, 37, 6, 29, 9, 34, 49, 1, 27, 55, 0]","[48, 18, 47, 60, 25, 34, 3, 13, 36, 15, 54, 35, 2, 57, 9, 40, 42, 4, 24, 43, 51, 61, 62, 26, 56, 0, 53, 11, 5, 28, 58, 19]","[0, 2, 4, 5, 9, 13, 15, 19, 24, 25, 34, 35, 42, 43, 47, 53, 56, 60, 62]" +62,"[16, 53, 6, 40, 31, 42, 45, 61, 37, 33, 27, 17, 57, 44, 2, 28, 15, 41, 8, 35, 5, 62, 1, 0, 22, 34, 21, 4, 18, 25, 36, 3]","[19, 28, 56, 32, 47, 62, 48, 43, 39, 3, 26, 38, 52, 31, 12, 33, 24, 46, 36, 51, 61, 27, 8, 57, 2, 63, 6, 9, 29, 54, 5, 13]","[2, 3, 5, 6, 8, 27, 28, 31, 33, 36, 57, 61, 62]" +63,"[46, 10, 18, 3, 15, 4, 23, 13, 31, 6, 30, 39, 16, 35, 56, 59, 28, 25, 27, 26, 50, 54, 34, 36, 12, 37, 33, 42, 40, 32, 0, 5]","[56, 41, 25, 26, 3, 4, 63, 30, 20, 59, 23, 35, 39, 62, 53, 47, 52, 27, 28, 6, 50, 18, 46, 55, 33, 13, 34, 32, 10, 29, 16, 0]","[0, 3, 4, 6, 10, 13, 16, 18, 23, 25, 26, 27, 28, 30, 32, 33, 34, 35, 39, 46, 50, 56, 59]" +64,"[47, 11, 4, 10, 52, 54, 43, 50, 18, 60, 34, 39, 36, 30, 37, 23, 41, 32, 5, 15, 2, 58, 40, 28, 27, 38, 12, 0, 20, 42, 26, 19]","[22, 18, 31, 62, 33, 15, 38, 4, 49, 17, 26, 50, 41, 27, 46, 35, 48, 36, 29, 9, 16, 24, 23, 56, 19, 5, 1, 12, 34, 61, 8, 55]","[4, 5, 12, 15, 18, 19, 23, 26, 27, 34, 36, 38, 41, 50]" +65,"[34, 4, 44, 39, 29, 25, 16, 35, 10, 51, 62, 40, 5, 20, 6, 32, 48, 42, 23, 22, 7, 33, 3, 19, 8, 27, 52, 21, 13, 53, 36, 12]","[38, 2, 46, 35, 7, 44, 1, 49, 45, 27, 57, 0, 19, 61, 59, 11, 16, 18, 51, 8, 60, 9, 12, 15, 23, 6, 40, 22, 14, 30, 50, 31]","[6, 7, 8, 12, 16, 19, 22, 23, 27, 35, 40, 44, 51]" +66,"[28, 39, 33, 2, 21, 53, 14, 12, 18, 7, 45, 43, 37, 60, 54, 42, 11, 38, 23, 9, 50, 26, 22, 62, 15, 5, 8, 0, 20, 13, 56, 30]","[51, 18, 47, 54, 4, 60, 48, 62, 61, 56, 50, 40, 14, 28, 39, 2, 25, 9, 0, 7, 13, 32, 33, 35, 30, 11, 8, 20, 23, 49, 12, 22]","[0, 2, 7, 8, 9, 11, 12, 13, 14, 18, 20, 22, 23, 28, 30, 33, 39, 50, 54, 56, 60, 62]" +67,"[56, 61, 32, 49, 34, 25, 16, 14, 0, 28, 10, 55, 46, 53, 27, 52, 39, 37, 63, 6, 43, 21, 19, 30, 29, 50, 41, 8, 31, 18, 33, 40]","[22, 51, 50, 8, 32, 45, 6, 38, 34, 3, 10, 43, 54, 37, 1, 13, 61, 55, 47, 5, 20, 23, 9, 11, 58, 59, 48, 27, 17, 42, 31, 25]","[6, 8, 10, 25, 27, 31, 32, 34, 37, 43, 50, 55, 61]" +68,"[32, 56, 63, 19, 46, 60, 23, 2, 62, 44, 53, 51, 49, 54, 33, 4, 31, 6, 47, 34, 61, 21, 12, 26, 55, 5, 27, 29, 15, 45, 52, 38]","[49, 8, 24, 36, 0, 3, 33, 51, 16, 11, 43, 40, 2, 29, 41, 38, 7, 39, 17, 55, 18, 62, 25, 20, 48, 14, 10, 13, 30, 22, 19, 50]","[2, 19, 29, 33, 38, 49, 51, 55, 62]" +69,"[10, 62, 7, 61, 52, 43, 6, 14, 42, 13, 23, 30, 11, 22, 3, 8, 21, 63, 1, 34, 35, 4, 19, 36, 27, 26, 33, 28, 29, 59, 60, 16]","[31, 63, 8, 6, 32, 52, 48, 30, 53, 49, 5, 26, 2, 14, 47, 43, 51, 18, 44, 33, 55, 4, 20, 17, 42, 7, 15, 10, 24, 3, 59, 39]","[3, 4, 6, 7, 8, 10, 14, 26, 30, 33, 42, 43, 52, 59, 63]" +70,"[9, 22, 57, 5, 0, 10, 56, 20, 8, 23, 4, 3, 58, 50, 38, 18, 1, 14, 17, 40, 21, 11, 48, 36, 27, 31, 2, 30, 34, 37, 49, 7]","[41, 36, 45, 4, 6, 42, 30, 10, 33, 54, 44, 47, 18, 40, 27, 9, 2, 21, 49, 60, 34, 1, 5, 23, 50, 46, 57, 32, 22, 26, 7, 11]","[1, 2, 4, 5, 7, 9, 10, 11, 18, 21, 22, 23, 27, 30, 34, 36, 40, 49, 50, 57]" +71,"[57, 29, 41, 52, 62, 54, 6, 11, 36, 0, 44, 9, 35, 59, 63, 32, 47, 49, 38, 34, 8, 53, 18, 13, 27, 60, 3, 10, 19, 61, 25, 28]","[10, 62, 39, 11, 16, 28, 14, 37, 23, 8, 17, 25, 58, 45, 7, 56, 36, 61, 48, 12, 13, 4, 33, 55, 27, 42, 20, 46, 32, 31, 43, 21]","[8, 10, 11, 13, 25, 27, 28, 32, 36, 61, 62]" +72,"[63, 8, 51, 13, 28, 52, 10, 41, 46, 34, 14, 9, 20, 39, 11, 25, 7, 21, 59, 5, 56, 23, 43, 47, 27, 35, 54, 30, 16, 37, 57, 2]","[19, 18, 24, 37, 58, 17, 9, 13, 2, 50, 16, 63, 3, 39, 53, 4, 35, 49, 22, 42, 45, 43, 20, 14, 47, 32, 12, 52, 26, 56, 11, 29]","[2, 9, 11, 13, 14, 16, 20, 35, 37, 39, 43, 47, 52, 56, 63]" +73,"[56, 35, 29, 20, 24, 27, 31, 12, 2, 4, 33, 11, 60, 16, 7, 8, 58, 63, 46, 49, 36, 52, 53, 41, 30, 32, 51, 47, 62, 21, 15, 0]","[51, 26, 31, 25, 47, 60, 49, 45, 9, 34, 61, 33, 38, 44, 53, 59, 3, 14, 48, 8, 22, 4, 19, 55, 6, 43, 37, 5, 50, 27, 40, 17]","[4, 8, 27, 31, 33, 47, 49, 51, 53, 60]" +74,"[17, 33, 36, 34, 27, 54, 37, 29, 38, 57, 21, 40, 43, 20, 48, 10, 41, 28, 22, 4, 32, 30, 31, 59, 47, 23, 14, 5, 1, 42, 50, 44]","[13, 23, 10, 14, 51, 12, 21, 40, 32, 3, 29, 56, 33, 50, 37, 22, 63, 47, 24, 38, 35, 43, 5, 26, 16, 27, 31, 1, 49, 46, 8, 52]","[1, 5, 10, 14, 21, 22, 23, 27, 29, 31, 32, 33, 37, 38, 40, 43, 47, 50]" +75,"[57, 37, 60, 46, 20, 41, 33, 42, 26, 55, 39, 4, 36, 10, 32, 31, 58, 9, 3, 59, 22, 2, 34, 17, 0, 61, 16, 53, 12, 25, 50, 23]","[54, 19, 15, 49, 33, 31, 8, 28, 17, 38, 27, 55, 14, 4, 45, 6, 9, 60, 10, 24, 61, 63, 13, 47, 46, 2, 20, 36, 48, 7, 53, 23]","[2, 4, 9, 10, 17, 20, 23, 31, 33, 36, 46, 53, 55, 60, 61]" +76,"[20, 56, 53, 3, 34, 4, 2, 6, 27, 15, 63, 23, 55, 39, 14, 36, 42, 25, 35, 38, 43, 1, 37, 51, 16, 29, 31, 47, 26, 28, 10, 45]","[33, 19, 20, 42, 10, 11, 48, 4, 47, 26, 9, 37, 55, 30, 58, 8, 41, 46, 59, 50, 34, 43, 18, 5, 62, 49, 23, 21, 61, 57, 51, 15]","[4, 10, 15, 20, 23, 26, 34, 37, 42, 43, 47, 51, 55]" +77,"[23, 14, 10, 28, 7, 25, 2, 0, 29, 1, 35, 8, 54, 58, 51, 24, 21, 41, 3, 38, 44, 45, 39, 5, 53, 55, 17, 48, 6, 20, 18, 34]","[2, 53, 46, 41, 62, 43, 12, 63, 10, 32, 22, 59, 51, 13, 25, 23, 14, 36, 16, 11, 58, 57, 9, 61, 42, 47, 37, 50, 33, 3, 6, 15]","[2, 3, 6, 10, 14, 23, 25, 41, 51, 53, 58]" +78,"[41, 50, 43, 38, 1, 44, 15, 61, 23, 26, 19, 9, 6, 31, 54, 18, 56, 10, 16, 29, 42, 39, 11, 12, 60, 52, 45, 63, 0, 30, 20, 53]","[58, 44, 4, 38, 11, 39, 60, 59, 22, 46, 50, 7, 15, 13, 8, 36, 5, 26, 28, 10, 53, 1, 23, 20, 43, 61, 51, 40, 57, 9, 54, 14]","[1, 9, 10, 11, 15, 20, 23, 26, 38, 39, 43, 44, 50, 53, 54, 60, 61]" +79,"[33, 36, 54, 26, 59, 28, 0, 10, 1, 63, 45, 11, 53, 56, 6, 4, 27, 40, 39, 61, 55, 18, 3, 48, 9, 22, 2, 34, 15, 16, 60, 42]","[54, 63, 16, 12, 53, 27, 34, 8, 1, 41, 36, 52, 58, 24, 59, 23, 30, 6, 44, 32, 37, 48, 3, 42, 9, 45, 51, 14, 22, 61, 50, 4]","[1, 3, 4, 6, 9, 16, 22, 27, 34, 36, 42, 45, 48, 53, 54, 59, 61, 63]" +80,"[50, 47, 26, 38, 60, 19, 14, 61, 55, 2, 31, 9, 29, 11, 62, 58, 5, 24, 25, 17, 13, 53, 37, 1, 34, 6, 43, 54, 33, 12, 41, 7]","[16, 62, 31, 60, 50, 29, 10, 20, 39, 2, 42, 14, 22, 1, 13, 59, 0, 26, 11, 34, 19, 6, 7, 54, 8, 38, 33, 61, 17, 25, 58, 47]","[1, 2, 6, 7, 11, 13, 14, 17, 19, 25, 26, 29, 31, 33, 34, 38, 47, 50, 54, 58, 60, 61, 62]" +81,"[61, 3, 10, 49, 21, 43, 46, 18, 16, 57, 4, 2, 19, 14, 34, 62, 26, 25, 1, 5, 6, 52, 63, 13, 36, 7, 45, 39, 48, 15, 54, 33]","[47, 48, 6, 16, 31, 13, 56, 17, 21, 55, 36, 40, 35, 2, 50, 3, 53, 38, 51, 23, 12, 11, 24, 34, 15, 46, 45, 8, 1, 20, 22, 39]","[1, 2, 3, 6, 13, 15, 16, 21, 34, 36, 39, 45, 46, 48]" +82,"[30, 47, 32, 19, 28, 45, 23, 13, 37, 0, 40, 16, 14, 26, 5, 43, 12, 41, 3, 6, 53, 51, 63, 24, 7, 61, 20, 22, 39, 11, 33, 34]","[9, 38, 46, 16, 6, 21, 39, 51, 1, 54, 13, 18, 57, 58, 8, 48, 29, 10, 31, 44, 17, 28, 27, 45, 34, 47, 60, 4, 5, 42, 15, 50]","[5, 6, 13, 16, 28, 34, 39, 45, 47, 51]" +83,"[18, 15, 28, 52, 23, 43, 45, 19, 34, 37, 21, 8, 27, 14, 2, 4, 47, 42, 16, 17, 60, 29, 39, 0, 58, 5, 46, 33, 12, 32, 55, 10]","[51, 27, 18, 40, 45, 32, 60, 0, 53, 4, 23, 28, 10, 15, 29, 17, 24, 2, 5, 34, 21, 22, 52, 11, 12, 50, 44, 9, 3, 42, 39, 48]","[0, 2, 4, 5, 10, 12, 15, 17, 18, 21, 23, 27, 28, 29, 32, 34, 39, 42, 45, 52, 60]" +84,"[16, 49, 22, 56, 0, 53, 12, 26, 9, 51, 20, 14, 38, 29, 36, 13, 19, 40, 6, 44, 48, 43, 32, 15, 42, 62, 39, 52, 23, 7, 60, 50]","[45, 50, 38, 19, 63, 9, 26, 20, 31, 4, 62, 54, 29, 61, 47, 16, 18, 10, 52, 39, 35, 17, 23, 56, 51, 14, 27, 49, 40, 30, 58, 15]","[9, 14, 15, 16, 19, 20, 23, 26, 29, 38, 39, 40, 49, 50, 51, 52, 56, 62]" +85,"[41, 56, 11, 28, 36, 57, 6, 23, 49, 29, 20, 5, 63, 39, 58, 51, 42, 37, 18, 0, 19, 31, 47, 10, 32, 48, 38, 7, 13, 44, 45, 8]","[29, 5, 60, 63, 11, 12, 43, 20, 42, 30, 21, 3, 6, 49, 58, 17, 36, 15, 1, 44, 24, 41, 59, 51, 53, 32, 38, 56, 37, 57, 23, 33]","[5, 6, 11, 20, 23, 29, 32, 36, 37, 38, 41, 42, 44, 49, 51, 56, 57, 58, 63]" +86,"[19, 38, 45, 33, 6, 24, 36, 10, 29, 30, 21, 9, 59, 25, 32, 11, 4, 2, 5, 57, 20, 40, 35, 55, 15, 1, 34, 44, 3, 8, 23, 18]","[37, 42, 17, 16, 6, 55, 43, 0, 56, 53, 31, 14, 21, 44, 26, 61, 49, 25, 12, 27, 28, 18, 32, 51, 13, 50, 52, 19, 54, 58, 30, 48]","[6, 18, 19, 21, 25, 30, 32, 44, 55]" +87,"[28, 38, 31, 55, 61, 37, 62, 60, 25, 6, 41, 15, 9, 4, 18, 7, 12, 49, 24, 0, 23, 46, 44, 3, 30, 59, 5, 8, 2, 34, 13, 11]","[22, 34, 53, 40, 60, 36, 27, 43, 1, 10, 17, 15, 25, 51, 48, 57, 13, 33, 54, 7, 30, 16, 38, 29, 26, 0, 44, 14, 12, 19, 42, 31]","[0, 7, 12, 13, 15, 25, 30, 31, 34, 38, 44, 60]" +88,"[60, 43, 34, 28, 48, 25, 29, 15, 16, 46, 26, 54, 4, 38, 11, 61, 39, 20, 17, 50, 27, 2, 49, 14, 36, 24, 5, 53, 41, 55, 10, 3]","[56, 48, 63, 6, 54, 38, 21, 42, 39, 47, 20, 11, 49, 14, 28, 46, 53, 61, 23, 9, 24, 34, 10, 43, 0, 52, 5, 29, 44, 59, 27, 16]","[5, 10, 11, 14, 16, 20, 24, 27, 28, 29, 34, 38, 39, 43, 46, 48, 49, 53, 54, 61]" +89,"[24, 23, 8, 45, 17, 37, 35, 10, 58, 57, 3, 61, 18, 29, 15, 4, 13, 43, 5, 19, 26, 49, 0, 1, 27, 39, 6, 20, 16, 50, 14, 34]","[38, 63, 5, 49, 47, 18, 39, 60, 29, 26, 44, 3, 0, 10, 52, 61, 14, 4, 15, 35, 59, 8, 57, 50, 54, 20, 28, 24, 16, 1, 55, 25]","[0, 1, 3, 4, 5, 8, 10, 14, 15, 16, 18, 20, 24, 26, 29, 35, 39, 49, 50, 57, 61]" +90,"[21, 35, 6, 49, 16, 39, 20, 27, 28, 57, 13, 29, 32, 61, 33, 46, 60, 38, 54, 45, 19, 59, 43, 36, 51, 31, 24, 4, 52, 50, 9, 63]","[13, 2, 42, 49, 59, 5, 27, 53, 33, 44, 16, 25, 15, 48, 52, 11, 47, 32, 7, 56, 17, 10, 14, 43, 24, 31, 0, 37, 51, 4, 30, 19]","[4, 13, 16, 19, 24, 27, 31, 32, 33, 43, 49, 51, 52, 59]" +91,"[38, 36, 34, 17, 18, 46, 20, 3, 15, 57, 23, 42, 4, 25, 2, 7, 55, 24, 19, 51, 52, 31, 21, 28, 16, 62, 9, 12, 27, 13, 48, 1]","[52, 28, 54, 22, 51, 18, 19, 8, 26, 43, 55, 4, 21, 35, 1, 37, 46, 9, 44, 39, 0, 23, 15, 42, 57, 25, 27, 49, 34, 17, 13, 11]","[1, 4, 9, 13, 15, 17, 18, 19, 21, 23, 25, 27, 28, 34, 42, 46, 51, 52, 55, 57]" +92,"[59, 17, 41, 57, 60, 46, 5, 52, 20, 38, 28, 45, 50, 58, 22, 54, 36, 56, 47, 32, 27, 3, 1, 10, 53, 24, 31, 23, 49, 6, 35, 0]","[59, 41, 20, 24, 53, 19, 46, 5, 35, 31, 38, 37, 36, 0, 52, 16, 2, 45, 17, 33, 21, 57, 50, 61, 56, 11, 8, 29, 18, 54, 10, 47]","[0, 5, 10, 17, 20, 24, 31, 35, 36, 38, 41, 45, 46, 47, 50, 52, 53, 54, 56, 57, 59]" +93,"[11, 52, 33, 43, 9, 23, 21, 61, 10, 49, 20, 15, 58, 63, 62, 16, 45, 2, 37, 28, 35, 34, 31, 24, 3, 44, 29, 30, 19, 8, 32, 38]","[49, 29, 32, 0, 20, 53, 39, 26, 44, 23, 6, 35, 10, 15, 57, 7, 61, 56, 60, 17, 4, 42, 18, 55, 46, 28, 21, 41, 24, 33, 13, 47]","[10, 15, 20, 21, 23, 24, 28, 29, 32, 33, 35, 44, 49, 61]" +94,"[8, 3, 10, 61, 33, 57, 38, 37, 20, 0, 35, 40, 58, 19, 25, 4, 24, 22, 13, 56, 45, 16, 27, 51, 46, 29, 59, 34, 15, 31, 44, 39]","[58, 55, 44, 60, 31, 8, 40, 18, 13, 26, 7, 61, 38, 19, 37, 51, 57, 53, 29, 4, 50, 46, 35, 33, 39, 5, 45, 24, 36, 34, 3, 63]","[3, 4, 8, 13, 19, 24, 29, 31, 33, 34, 35, 37, 38, 39, 40, 44, 45, 46, 51, 57, 58, 61]" +95,"[12, 23, 31, 47, 17, 22, 27, 29, 16, 37, 0, 7, 4, 50, 39, 45, 46, 19, 20, 3, 30, 41, 62, 60, 8, 18, 35, 56, 11, 32, 14, 24]","[16, 13, 5, 49, 42, 12, 40, 34, 23, 48, 36, 51, 18, 7, 62, 31, 19, 61, 25, 58, 53, 54, 60, 17, 46, 59, 41, 52, 10, 33, 63, 26]","[7, 12, 16, 17, 18, 19, 23, 31, 41, 46, 60, 62]" +96,"[22, 41, 48, 14, 11, 34, 2, 16, 3, 6, 21, 56, 61, 29, 19, 52, 18, 38, 49, 15, 12, 43, 62, 50, 63, 46, 55, 28, 0, 30, 51, 27]","[5, 2, 11, 26, 30, 40, 49, 47, 62, 54, 4, 17, 60, 44, 61, 28, 18, 35, 39, 24, 37, 57, 8, 7, 20, 45, 10, 12, 25, 3, 38, 36]","[2, 3, 11, 12, 18, 28, 30, 38, 49, 61, 62]" +97,"[2, 62, 8, 22, 15, 60, 59, 14, 0, 10, 33, 34, 50, 4, 19, 31, 58, 1, 16, 53, 17, 24, 27, 18, 32, 11, 51, 43, 54, 42, 28, 39]","[57, 54, 13, 47, 2, 15, 7, 58, 43, 16, 22, 0, 36, 35, 23, 38, 21, 55, 33, 19, 46, 8, 29, 42, 60, 27, 32, 53, 49, 31, 9, 28]","[0, 2, 8, 15, 16, 19, 22, 27, 28, 31, 32, 33, 42, 43, 53, 54, 58, 60]" +98,"[62, 54, 43, 14, 61, 0, 42, 40, 15, 12, 50, 30, 29, 47, 37, 27, 20, 33, 7, 38, 2, 5, 53, 60, 11, 16, 35, 25, 6, 21, 55, 17]","[38, 7, 54, 31, 47, 28, 34, 8, 12, 20, 3, 63, 0, 52, 36, 55, 60, 25, 17, 15, 13, 46, 33, 56, 26, 11, 14, 16, 40, 4, 37, 45]","[0, 7, 11, 12, 14, 15, 16, 17, 20, 25, 33, 37, 38, 40, 47, 54, 55, 60]" +99,"[2, 41, 3, 17, 26, 4, 9, 58, 7, 42, 49, 21, 55, 40, 53, 8, 50, 18, 29, 0, 13, 44, 63, 5, 39, 48, 24, 36, 47, 54, 19, 38]","[10, 45, 1, 18, 8, 0, 16, 15, 55, 39, 25, 6, 61, 14, 3, 34, 49, 51, 43, 46, 36, 33, 28, 57, 52, 12, 9, 35, 23, 42, 11, 31]","[0, 3, 8, 9, 18, 36, 39, 42, 49, 55]" diff --git a/examples/set_intersection/set_intersection_032.py b/examples/set_intersection/set_intersection_032.py new file mode 100644 index 0000000..19b3f5a --- /dev/null +++ b/examples/set_intersection/set_intersection_032.py @@ -0,0 +1,730 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# The source code is adapted from the sorting source code written by +# Nils Blach. +# +# main author: Robert Gerstenberger + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + +from . import utils + + +class SetIntersectionPrompter(prompter.Prompter): + """ + SetIntersectionPrompter provides the generation of prompts specific to the + set intersection example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + intersection_prompt = """ Find the intersection of two sets of numbers. Output only the set of numbers that are present in both sets, no additional text. + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Output: [40, 15, 5, 24, 35, 59, 16, 63] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Output: [115, 35, 90, 117, 63, 40, 30, 33, 15, 89, 50, 12, 2, 84, 7, 57, 96] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + intersection_prompt_cot = """ Find the intersection of two sets of numbers. You can generate any intermediate solutions, but the final output should be the set of numbers that are present in both sets, prefixed with "Output: ". + + +To find the intersection of the two sets follow these steps: +1. Split the second input set of numbers into two to four subsets, each containing an equal number of elements from the original set (make sure they don't overlap). +2. For each subset find the set of numbers that are present in the subset and the first input set. +3. Merge the resulting sets into a single output set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Subsets of Input Set 2: +[25, 24, 10, 4, 27, 0, 14, 12] +[8, 2, 29, 20, 17, 19, 26, 23] +Intersected Subsets with Input Set 1: +[24, 10] +[8, 20] +Output: [24, 10, 8, 20] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Subsets of Input Set 2: +[16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53] +[58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Intersected Subsets with Input Set 1: +[16, 15, 5, 24] +[35, 63, 40, 59] +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Subsets of Input Set 2: +[13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122] +[85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12] +[65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81] +[124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Intersected Subsets with Input Set 1: +[35, 96] +[15, 33, 57, 30, 89, 12] +[84, 40, 7, 50, 90] +[63, 117, 115, 2] +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + tot_improve_prompt = """ The following three sets represent two sets and an intersection set of those two sets. The intersection set is not correct. Fix the intersection set so that it is correct. +Make sure that the numbers in the intersection set can be found in both input sets. + + +To fix the incorrectly intersection set follow these steps: +1. Check for each number in the incorrect intersection set, whether it can be found in both input sets. If not, remove that number from the intersection set. +2. Iterate through the second input set and check whether each number is already in the incorrect intersection set and if not, check whether that number can also be found in the first input set. If so, add that number to the intersection set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Incorrect Intersection Set: [24, 20, 25] +Reason: The incorrect intersection set contains the number 25, which is not present in the first input set and is missing the numbers 10 and 8. +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Incorrect Intersection Set: [57, 16, 15, 24, 35, 10, 40] +Reason: The incorrect intersection set contains the numbers 57, which is not present in the second input set, and 10, which is not present in the first input set, and is missing the numbers 5, 63 and 59. +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Incorrect Intersection Set: [35, 96, 44, 15, 33, 57, 30, 50, 90, 119, 123, 63, 117, 115, 2] +Reason: The incorrect intersection set contains the numbers 44 and 119, which are not present in the second input set, and 123, which is not present in the first input set, and is missing the numbers 89, 12, 84, 40 and 7. +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2} +Incorrect Intersection Set: {incorrect_intersection} +""" + + got_split_prompt = """ Split the following list of 32 numbers into 2 lists of 16 numbers each, the first list should contain the first 16 numbers and the second list the second 16 numbers. +Only output the 2 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [13, 16, 30, 6, 21, 7, 31, ...], + "List 2": [25, 24, 10, 4, 27, 0, 14, ...] +}} + + +Input: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Output: +{{ + "List 1": [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22], + "List 2": [33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 lists of length {length1} each, into one list of length {length2} by appending the second list to the first list. +Only output the final list without any additional text or thoughts! + +List 1: {input1} +List 2: {input2} +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + else: + length = 32 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, + num_branches: int, + set1: str, + set2: str, + current: str, + method: str, + **kwargs, + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param set1: First input set. + :type set1: str + :param set2: Second input set. + :type set2: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if method.startswith("io"): + return self.intersection_prompt.format(set1=set1, set2=set2) + elif method.startswith("cot"): + return self.intersection_prompt_cot.format(set1=set1, set2=set2) + elif method.startswith("tot"): + if current is None or current == "": + return self.intersection_prompt.format(set1=set1, set2=set2) + return self.tot_improve_prompt.format( + set1=set1, set2=set2, incorrect_intersection=current + ) + elif method.startswith("got"): + if kwargs["phase"] == 0: + return self.got_split_prompt.format(input=set2) + + input_set = set2 + if "subset" in kwargs and kwargs["subset"] != "": + input_set = kwargs["subset"] + + return self.intersection_prompt.format(set1=set1, set2=input_set) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SetIntersectionParser(parser.Parser): + """ + SetIntersectionParser provides the parsing of language model reponses + specific to the set intersection example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_subsets = states[0]["subset"][:-1] + ", " + states[1]["subset"][1:] + new_state = states[0].copy() + new_state["current"] = answer + new_state["subset"] = merged_subsets + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + + new_states = [] + for text in texts: + if state["method"].startswith("got") and state["phase"] == 0: + # We expect a json which contains the two lists named "List 1" and "List 2" + # cut everything until the opening bracket and everything after the closing bracket + + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 2: + logging.warning( + f"Expected 2 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = "" + new_state["subset"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(1): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(2): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(1, 1) + operations_graph.append_operation(plans) # generate the sublists + for i in range(1, 3): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + intersected_subset = operations.Generate(1, 5) + intersected_subset.add_predecessor(sub_list) + operations_graph.add_operation(intersected_subset) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(intersected_subset) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + final_aggregate = operations.Aggregate(10) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "set_intersection_032.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2], row[3]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + # create a results directory for the method + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]} {data[2]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SetIntersectionPrompter(), + SetIntersectionParser(), + { + "set1": data[1], + "set2": data[2], + "result": data[3], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input(x) : a list of 32 numbers between 0 and 63 (inclusive) + Input(y) : a list of 32 numbers between 0 and 63 (inclusive) + Output(z) : a list of the intersection between x and y + Correct : z = intersection(x, y) + Input Example: + [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] + [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] + Output Example: + [24, 10, 20, 8] + """ + + budget = 15 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/set_intersection/set_intersection_064.csv b/examples/set_intersection/set_intersection_064.csv new file mode 100644 index 0000000..4d64f8a --- /dev/null +++ b/examples/set_intersection/set_intersection_064.csv @@ -0,0 +1,101 @@ +ID,SET1,SET2,INTERSECTION +0,"[42, 73, 86, 39, 85, 77, 69, 59, 43, 127, 121, 88, 109, 53, 70, 66, 25, 51, 34, 78, 45, 11, 40, 99, 68, 47, 49, 41, 101, 31, 24, 84, 36, 29, 118, 75, 3, 27, 30, 80, 125, 8, 37, 46, 90, 21, 60, 83, 19, 6, 95, 117, 87, 18, 100, 13, 22, 10, 110, 102, 35, 81, 17, 63]","[34, 49, 116, 106, 112, 23, 5, 80, 18, 62, 90, 54, 32, 103, 37, 43, 9, 25, 92, 16, 111, 79, 64, 91, 107, 58, 72, 94, 7, 60, 33, 14, 19, 104, 28, 74, 96, 76, 38, 52, 114, 50, 17, 0, 3, 100, 69, 98, 2, 1, 99, 12, 95, 97, 123, 4, 126, 124, 82, 27, 67, 57, 115, 46]","[3, 17, 18, 19, 25, 27, 34, 37, 43, 46, 49, 60, 69, 80, 90, 95, 99, 100]" +1,"[50, 23, 70, 14, 54, 85, 106, 108, 6, 113, 79, 48, 99, 112, 28, 69, 0, 19, 64, 37, 90, 4, 15, 30, 94, 109, 96, 87, 71, 43, 21, 117, 8, 63, 35, 66, 83, 40, 119, 26, 46, 5, 53, 62, 12, 126, 116, 100, 111, 29, 97, 27, 25, 36, 82, 42, 127, 11, 56, 121, 59, 52, 124, 2]","[112, 74, 109, 56, 57, 5, 43, 126, 61, 95, 60, 79, 21, 20, 100, 85, 66, 84, 19, 37, 67, 15, 75, 30, 106, 70, 11, 121, 55, 28, 34, 76, 62, 6, 53, 97, 69, 80, 114, 39, 82, 27, 26, 14, 23, 77, 65, 40, 108, 2, 50, 118, 59, 41, 54, 45, 0, 42, 110, 94, 92, 38, 91, 4]","[0, 2, 4, 5, 6, 11, 14, 15, 19, 21, 23, 26, 27, 28, 30, 37, 40, 42, 43, 50, 53, 54, 56, 59, 62, 66, 69, 70, 79, 82, 85, 94, 97, 100, 106, 108, 109, 112, 121, 126]" +2,"[91, 23, 41, 37, 31, 22, 50, 35, 111, 115, 77, 55, 2, 97, 68, 85, 122, 62, 110, 87, 27, 113, 96, 81, 117, 18, 83, 71, 34, 64, 32, 92, 116, 3, 1, 10, 106, 42, 30, 86, 121, 52, 108, 84, 102, 8, 100, 125, 16, 39, 58, 29, 24, 38, 15, 17, 6, 40, 9, 94, 51, 61, 54, 65]","[41, 50, 8, 115, 51, 91, 29, 104, 6, 85, 21, 5, 42, 58, 36, 93, 89, 113, 1, 46, 119, 90, 55, 123, 98, 84, 34, 71, 117, 94, 53, 65, 26, 86, 28, 44, 33, 37, 95, 22, 87, 63, 100, 17, 81, 68, 72, 39, 127, 2, 74, 30, 76, 111, 66, 106, 107, 4, 73, 121, 0, 67, 9, 10]","[1, 2, 6, 8, 9, 10, 17, 22, 29, 30, 34, 37, 39, 41, 42, 50, 51, 55, 58, 65, 68, 71, 81, 84, 85, 86, 87, 91, 94, 100, 106, 111, 113, 115, 117, 121]" +3,"[12, 43, 39, 18, 95, 36, 51, 26, 30, 100, 85, 29, 75, 32, 79, 57, 101, 34, 108, 10, 23, 106, 16, 9, 7, 72, 82, 68, 105, 0, 37, 65, 64, 67, 62, 25, 13, 66, 77, 33, 121, 15, 122, 17, 3, 8, 45, 1, 70, 119, 76, 69, 92, 5, 2, 28, 110, 20, 102, 6, 93, 44, 98, 103]","[83, 118, 32, 94, 115, 39, 91, 74, 34, 70, 79, 76, 61, 126, 106, 31, 25, 11, 123, 5, 40, 58, 78, 24, 101, 82, 4, 109, 71, 86, 17, 29, 37, 92, 73, 66, 50, 111, 95, 30, 124, 116, 62, 0, 84, 108, 63, 104, 107, 38, 27, 18, 33, 9, 49, 64, 26, 13, 42, 35, 20, 43, 77, 127]","[0, 5, 9, 13, 17, 18, 20, 25, 26, 29, 30, 32, 33, 34, 37, 39, 43, 62, 64, 66, 70, 76, 77, 79, 82, 92, 95, 101, 106, 108]" +4,"[20, 116, 36, 54, 27, 67, 105, 51, 43, 57, 55, 44, 113, 38, 114, 64, 63, 37, 92, 76, 90, 35, 42, 117, 69, 2, 14, 81, 6, 78, 68, 11, 30, 52, 58, 98, 104, 21, 4, 85, 13, 47, 87, 62, 48, 109, 101, 0, 34, 53, 56, 59, 19, 88, 112, 28, 71, 18, 80, 50, 121, 75, 111, 49]","[5, 34, 55, 53, 113, 60, 22, 98, 16, 92, 126, 27, 70, 30, 61, 37, 64, 9, 36, 123, 79, 101, 15, 90, 62, 52, 72, 3, 29, 4, 110, 102, 17, 125, 26, 99, 86, 1, 20, 112, 24, 28, 31, 47, 85, 11, 42, 78, 25, 91, 7, 104, 12, 74, 71, 89, 48, 95, 43, 100, 103, 97, 107, 2]","[2, 4, 11, 20, 27, 28, 30, 34, 36, 37, 42, 43, 47, 48, 52, 53, 55, 62, 64, 71, 78, 85, 90, 92, 98, 101, 104, 112, 113]" +5,"[123, 114, 111, 64, 115, 14, 75, 67, 4, 125, 61, 11, 38, 104, 105, 7, 45, 113, 93, 41, 86, 77, 44, 0, 89, 112, 90, 52, 57, 74, 26, 29, 69, 108, 32, 121, 107, 102, 19, 42, 60, 51, 116, 39, 24, 37, 118, 68, 92, 87, 95, 79, 106, 13, 40, 53, 81, 85, 99, 36, 23, 97, 48, 47]","[61, 53, 116, 0, 75, 43, 89, 38, 101, 60, 51, 83, 29, 112, 36, 81, 55, 34, 94, 125, 68, 64, 84, 26, 40, 107, 82, 16, 24, 42, 108, 19, 111, 54, 6, 41, 120, 79, 9, 48, 44, 4, 106, 93, 30, 13, 39, 20, 124, 66, 33, 52, 57, 11, 105, 114, 72, 123, 67, 102, 71, 113, 3, 69]","[0, 4, 11, 13, 19, 24, 26, 29, 36, 38, 39, 40, 41, 42, 44, 48, 51, 52, 53, 57, 60, 61, 64, 67, 68, 69, 75, 79, 81, 89, 93, 102, 105, 106, 107, 108, 111, 112, 113, 114, 116, 123, 125]" +6,"[118, 20, 53, 85, 46, 51, 22, 52, 98, 28, 49, 64, 35, 124, 69, 58, 125, 34, 104, 106, 2, 74, 67, 111, 96, 0, 3, 33, 8, 91, 23, 43, 92, 72, 76, 26, 50, 6, 18, 68, 56, 101, 97, 37, 47, 24, 7, 57, 54, 75, 73, 1, 61, 12, 114, 87, 19, 48, 40, 62, 10, 36, 16, 123]","[94, 59, 117, 86, 6, 22, 110, 82, 34, 13, 89, 19, 122, 30, 7, 27, 44, 85, 112, 42, 17, 24, 31, 56, 43, 39, 115, 23, 15, 46, 83, 57, 127, 116, 47, 63, 102, 78, 121, 21, 103, 113, 88, 38, 16, 76, 100, 84, 9, 14, 49, 8, 60, 109, 41, 79, 99, 37, 105, 55, 108, 107, 77, 4]","[6, 7, 8, 16, 19, 22, 23, 24, 34, 37, 43, 46, 47, 49, 56, 57, 76, 85]" +7,"[2, 67, 120, 31, 16, 77, 61, 75, 4, 8, 76, 111, 23, 85, 97, 7, 19, 36, 54, 55, 124, 20, 74, 92, 90, 25, 114, 32, 123, 21, 38, 50, 6, 109, 70, 26, 64, 47, 45, 51, 60, 63, 62, 41, 53, 12, 11, 28, 122, 103, 105, 49, 68, 91, 100, 46, 17, 52, 121, 73, 1, 42, 37, 48]","[68, 89, 71, 107, 76, 98, 34, 54, 64, 42, 92, 84, 55, 93, 57, 53, 90, 91, 62, 120, 82, 51, 38, 121, 48, 109, 36, 126, 8, 50, 94, 43, 101, 37, 79, 72, 12, 27, 60, 81, 6, 88, 113, 103, 1, 17, 11, 119, 32, 18, 19, 105, 73, 111, 40, 100, 95, 2, 49, 58, 16, 65, 45, 29]","[1, 2, 6, 8, 11, 12, 16, 17, 19, 32, 36, 37, 38, 42, 45, 48, 49, 50, 51, 53, 54, 55, 60, 62, 64, 68, 73, 76, 90, 91, 92, 100, 103, 105, 109, 111, 120, 121]" +8,"[89, 83, 32, 27, 46, 99, 81, 73, 109, 80, 100, 84, 72, 29, 124, 122, 90, 25, 31, 38, 60, 62, 97, 104, 10, 108, 70, 16, 118, 6, 94, 23, 49, 7, 117, 92, 76, 55, 54, 15, 111, 85, 91, 67, 61, 95, 47, 114, 13, 42, 43, 11, 8, 14, 82, 52, 9, 78, 37, 71, 119, 22, 40, 123]","[83, 110, 121, 80, 20, 109, 119, 11, 114, 2, 12, 104, 64, 23, 66, 51, 93, 100, 41, 127, 4, 54, 44, 96, 14, 26, 42, 62, 21, 45, 112, 68, 77, 122, 69, 35, 115, 117, 79, 98, 15, 113, 50, 86, 40, 107, 34, 78, 105, 106, 49, 17, 90, 85, 125, 22, 58, 48, 102, 88, 24, 33, 0, 57]","[11, 14, 15, 22, 23, 40, 42, 49, 54, 62, 78, 80, 83, 85, 90, 100, 104, 109, 114, 117, 119, 122]" +9,"[122, 95, 15, 106, 92, 43, 38, 117, 75, 64, 16, 96, 71, 105, 1, 49, 57, 80, 101, 116, 77, 63, 39, 21, 66, 35, 120, 100, 85, 26, 99, 2, 46, 19, 74, 3, 113, 37, 108, 65, 32, 67, 11, 47, 27, 81, 73, 17, 22, 4, 121, 60, 40, 9, 87, 50, 119, 104, 28, 79, 124, 78, 94, 34]","[100, 37, 17, 8, 7, 75, 51, 107, 10, 93, 94, 124, 38, 6, 109, 24, 26, 47, 59, 86, 123, 0, 5, 54, 70, 18, 27, 19, 4, 56, 101, 68, 48, 61, 41, 112, 117, 125, 77, 69, 13, 102, 35, 97, 111, 110, 89, 72, 115, 83, 52, 76, 2, 44, 120, 42, 30, 53, 36, 88, 31, 55, 64, 103]","[2, 4, 17, 19, 26, 27, 35, 37, 38, 47, 64, 75, 77, 94, 100, 101, 117, 120, 124]" +10,"[55, 57, 69, 7, 29, 14, 73, 18, 10, 94, 8, 38, 25, 24, 78, 30, 84, 51, 60, 65, 28, 44, 116, 3, 81, 62, 26, 102, 120, 118, 125, 91, 4, 99, 106, 100, 52, 54, 74, 80, 17, 49, 19, 0, 47, 53, 108, 46, 1, 5, 86, 2, 107, 93, 109, 43, 50, 59, 33, 87, 119, 115, 40, 12]","[43, 4, 55, 46, 68, 32, 19, 15, 66, 16, 29, 112, 9, 108, 121, 125, 49, 6, 74, 126, 110, 100, 124, 34, 92, 7, 73, 47, 22, 63, 91, 87, 103, 101, 37, 105, 109, 97, 93, 42, 64, 62, 72, 84, 23, 82, 79, 114, 26, 48, 40, 60, 96, 30, 99, 88, 28, 41, 86, 50, 51, 0, 38, 24]","[0, 4, 7, 19, 24, 26, 28, 29, 30, 38, 40, 43, 46, 47, 49, 50, 51, 55, 60, 62, 73, 74, 84, 86, 87, 91, 93, 99, 100, 108, 109, 125]" +11,"[51, 76, 124, 93, 123, 53, 67, 4, 125, 103, 46, 64, 83, 72, 104, 106, 55, 7, 44, 114, 23, 58, 37, 31, 19, 63, 101, 42, 60, 92, 57, 2, 81, 21, 115, 32, 12, 66, 1, 112, 38, 5, 50, 35, 59, 34, 47, 78, 79, 127, 13, 9, 61, 96, 97, 8, 126, 86, 118, 6, 56, 48, 0, 121]","[108, 101, 72, 34, 124, 123, 0, 82, 121, 126, 70, 116, 104, 77, 61, 118, 112, 96, 95, 45, 71, 39, 115, 51, 48, 79, 66, 78, 58, 37, 44, 5, 42, 53, 57, 32, 56, 6, 16, 103, 80, 92, 35, 50, 127, 12, 69, 1, 102, 47, 97, 4, 109, 55, 86, 67, 9, 33, 100, 10, 38, 23, 19, 63]","[0, 1, 4, 5, 6, 9, 12, 19, 23, 32, 34, 35, 37, 38, 42, 44, 47, 48, 50, 51, 53, 55, 56, 57, 58, 61, 63, 66, 67, 72, 78, 79, 86, 92, 96, 97, 101, 103, 104, 112, 115, 118, 121, 123, 124, 126, 127]" +12,"[43, 67, 127, 22, 2, 85, 112, 0, 81, 6, 27, 116, 119, 32, 39, 95, 55, 121, 61, 123, 70, 49, 52, 37, 91, 117, 54, 97, 120, 107, 104, 51, 74, 111, 18, 108, 105, 44, 64, 4, 16, 122, 71, 88, 7, 47, 30, 48, 28, 38, 69, 35, 63, 40, 73, 29, 17, 13, 115, 53, 62, 96, 12, 3]","[2, 60, 126, 55, 39, 16, 97, 51, 12, 49, 122, 35, 116, 13, 25, 54, 69, 21, 87, 100, 31, 120, 92, 44, 23, 34, 85, 40, 96, 111, 67, 117, 108, 70, 95, 113, 99, 28, 121, 103, 37, 36, 68, 61, 42, 115, 91, 27, 10, 79, 72, 86, 77, 45, 29, 32, 7, 46, 105, 93, 53, 127, 114, 71]","[2, 7, 12, 13, 16, 27, 28, 29, 32, 35, 37, 39, 40, 44, 49, 51, 53, 54, 55, 61, 67, 69, 70, 71, 85, 91, 95, 96, 97, 105, 108, 111, 115, 116, 117, 120, 121, 122, 127]" +13,"[113, 60, 114, 85, 127, 46, 104, 111, 1, 68, 97, 109, 2, 108, 0, 36, 73, 65, 93, 43, 37, 67, 59, 116, 38, 121, 90, 98, 42, 35, 75, 78, 7, 8, 52, 3, 15, 81, 25, 57, 101, 69, 33, 13, 58, 72, 11, 99, 86, 4, 27, 107, 64, 30, 39, 18, 17, 100, 122, 32, 55, 54, 14, 76]","[78, 58, 41, 42, 100, 85, 44, 4, 6, 20, 55, 114, 65, 61, 40, 107, 11, 32, 29, 33, 28, 97, 76, 16, 38, 86, 39, 103, 102, 104, 30, 72, 62, 75, 15, 110, 108, 31, 53, 45, 54, 37, 57, 109, 46, 117, 60, 111, 36, 12, 116, 21, 7, 82, 43, 18, 3, 23, 123, 124, 99, 121, 35, 5]","[3, 4, 7, 11, 15, 18, 30, 32, 33, 35, 36, 37, 38, 39, 42, 43, 46, 54, 55, 57, 58, 60, 65, 72, 75, 76, 78, 85, 86, 97, 99, 100, 104, 107, 108, 109, 111, 114, 116, 121]" +14,"[41, 89, 93, 70, 47, 46, 17, 83, 113, 107, 111, 82, 58, 65, 12, 126, 124, 32, 68, 100, 108, 34, 67, 60, 4, 39, 9, 48, 81, 36, 127, 57, 20, 11, 2, 30, 110, 64, 61, 23, 79, 69, 35, 18, 71, 31, 21, 90, 119, 43, 66, 120, 105, 29, 97, 92, 74, 56, 27, 51, 91, 55, 22, 96]","[89, 64, 120, 26, 56, 16, 81, 100, 39, 125, 55, 28, 21, 123, 22, 52, 127, 66, 77, 107, 69, 97, 47, 4, 35, 85, 78, 101, 70, 5, 112, 102, 1, 124, 51, 74, 10, 36, 3, 60, 65, 6, 68, 113, 86, 88, 111, 72, 7, 41, 29, 48, 82, 93, 96, 104, 108, 75, 58, 87, 109, 45, 91, 31]","[4, 21, 22, 29, 31, 35, 36, 39, 41, 47, 48, 51, 55, 56, 58, 60, 64, 65, 66, 68, 69, 70, 74, 81, 82, 89, 91, 93, 96, 97, 100, 107, 108, 111, 113, 120, 124, 127]" +15,"[70, 41, 44, 50, 67, 77, 7, 81, 38, 125, 32, 115, 109, 61, 60, 56, 13, 85, 27, 4, 21, 19, 114, 68, 105, 14, 107, 31, 126, 0, 84, 54, 34, 108, 106, 98, 127, 92, 121, 95, 57, 3, 99, 48, 79, 110, 104, 45, 30, 73, 87, 111, 49, 93, 33, 103, 15, 42, 78, 94, 47, 58, 40, 80]","[90, 30, 17, 119, 56, 80, 16, 105, 34, 97, 48, 58, 19, 93, 84, 1, 98, 23, 110, 117, 118, 75, 126, 35, 25, 123, 114, 121, 33, 86, 67, 54, 49, 91, 41, 78, 15, 77, 14, 7, 61, 113, 79, 102, 109, 47, 92, 101, 31, 0, 72, 32, 52, 103, 68, 42, 100, 122, 13, 95, 3, 81, 18, 38]","[0, 3, 7, 13, 14, 15, 19, 30, 31, 32, 33, 34, 38, 41, 42, 47, 48, 49, 54, 56, 58, 61, 67, 68, 77, 78, 79, 80, 81, 84, 92, 93, 95, 98, 103, 105, 109, 110, 114, 121, 126]" +16,"[44, 65, 118, 22, 68, 125, 1, 34, 18, 58, 121, 63, 7, 23, 117, 6, 64, 105, 67, 25, 51, 88, 116, 40, 123, 53, 87, 13, 27, 8, 21, 16, 84, 48, 32, 26, 94, 19, 10, 4, 103, 2, 3, 41, 69, 127, 82, 50, 86, 78, 107, 20, 62, 79, 24, 52, 59, 106, 33, 36, 55, 70, 60, 29]","[107, 97, 1, 124, 116, 76, 105, 68, 87, 53, 67, 127, 99, 44, 65, 9, 66, 98, 34, 121, 63, 117, 83, 126, 94, 113, 11, 64, 62, 96, 35, 73, 47, 71, 37, 39, 70, 16, 23, 24, 42, 85, 17, 43, 106, 29, 45, 90, 88, 81, 41, 75, 46, 93, 110, 21, 100, 95, 102, 51, 123, 78, 4, 33]","[1, 4, 16, 21, 23, 24, 29, 33, 34, 41, 44, 51, 53, 62, 63, 64, 65, 67, 68, 70, 78, 87, 88, 94, 105, 106, 107, 116, 117, 121, 123, 127]" +17,"[43, 22, 51, 64, 25, 16, 67, 104, 58, 35, 33, 109, 50, 97, 18, 117, 36, 44, 98, 14, 103, 121, 27, 53, 82, 105, 119, 56, 10, 46, 20, 102, 127, 41, 71, 37, 116, 13, 89, 73, 79, 62, 78, 125, 106, 83, 21, 124, 59, 24, 65, 85, 76, 95, 57, 40, 100, 108, 66, 99, 90, 32, 47, 61]","[1, 81, 122, 77, 13, 107, 102, 124, 93, 99, 21, 100, 31, 6, 126, 110, 12, 96, 26, 75, 45, 86, 70, 32, 105, 63, 61, 9, 34, 5, 49, 119, 113, 4, 118, 123, 11, 2, 14, 48, 43, 115, 112, 57, 90, 7, 17, 30, 65, 120, 28, 52, 104, 79, 68, 23, 3, 18, 92, 91, 29, 94, 82, 51]","[13, 14, 18, 21, 32, 43, 51, 57, 61, 65, 79, 82, 90, 99, 100, 102, 104, 105, 119, 124]" +18,"[74, 113, 18, 102, 49, 28, 37, 34, 79, 67, 77, 17, 115, 43, 6, 53, 7, 12, 38, 122, 69, 123, 19, 71, 59, 60, 85, 29, 44, 125, 21, 2, 48, 50, 88, 15, 56, 35, 31, 109, 52, 47, 80, 87, 90, 99, 36, 22, 121, 107, 73, 98, 110, 120, 20, 23, 89, 94, 118, 51, 5, 46, 4, 41]","[125, 113, 1, 4, 34, 118, 37, 27, 75, 79, 92, 94, 87, 107, 46, 120, 106, 49, 52, 59, 124, 28, 41, 21, 72, 102, 29, 5, 67, 26, 7, 6, 89, 112, 111, 35, 65, 98, 93, 23, 69, 31, 96, 85, 80, 110, 9, 8, 2, 127, 50, 76, 71, 36, 19, 10, 33, 60, 25, 51, 17, 32, 16, 73]","[2, 4, 5, 6, 7, 17, 19, 21, 23, 28, 29, 31, 34, 35, 36, 37, 41, 46, 49, 50, 51, 52, 59, 60, 67, 69, 71, 73, 79, 80, 85, 87, 89, 94, 98, 102, 107, 110, 113, 118, 120, 125]" +19,"[38, 0, 14, 10, 87, 56, 113, 94, 45, 86, 39, 88, 111, 121, 74, 98, 102, 52, 107, 48, 50, 95, 90, 112, 118, 82, 19, 109, 49, 58, 99, 92, 110, 124, 59, 20, 43, 80, 73, 68, 18, 63, 78, 42, 77, 126, 15, 115, 57, 75, 53, 25, 83, 1, 5, 36, 104, 46, 61, 71, 119, 33, 81, 93]","[14, 104, 96, 108, 98, 65, 33, 44, 46, 72, 58, 42, 15, 90, 83, 126, 85, 109, 125, 32, 38, 61, 117, 118, 101, 103, 97, 55, 1, 47, 115, 7, 30, 40, 102, 41, 91, 10, 36, 75, 43, 62, 26, 71, 16, 4, 25, 51, 116, 31, 24, 23, 12, 107, 110, 119, 124, 67, 3, 79, 28, 54, 18, 52]","[1, 10, 14, 15, 18, 25, 33, 36, 38, 42, 43, 46, 52, 58, 61, 71, 75, 83, 90, 98, 102, 104, 107, 109, 110, 115, 118, 119, 124, 126]" +20,"[30, 109, 92, 124, 41, 116, 33, 94, 106, 71, 72, 119, 17, 125, 113, 120, 84, 80, 5, 117, 75, 52, 39, 20, 123, 61, 79, 44, 36, 115, 101, 100, 99, 81, 28, 58, 91, 54, 53, 64, 104, 74, 51, 1, 83, 60, 89, 48, 68, 78, 27, 82, 110, 35, 63, 69, 46, 43, 34, 0, 24, 67, 76, 105]","[40, 71, 122, 34, 63, 41, 15, 2, 102, 77, 38, 116, 104, 5, 0, 59, 9, 11, 86, 101, 51, 105, 99, 8, 53, 45, 92, 96, 67, 52, 26, 28, 10, 79, 118, 42, 39, 22, 84, 108, 3, 18, 73, 35, 98, 36, 13, 113, 21, 20, 126, 55, 117, 119, 30, 76, 23, 95, 82, 44, 37, 110, 48, 121]","[0, 5, 20, 28, 30, 34, 35, 36, 39, 41, 44, 48, 51, 52, 53, 63, 67, 71, 76, 79, 82, 84, 92, 99, 101, 104, 105, 110, 113, 116, 117, 119]" +21,"[66, 28, 126, 114, 37, 14, 51, 100, 0, 63, 2, 87, 101, 6, 85, 75, 72, 12, 111, 120, 96, 91, 19, 71, 11, 9, 3, 121, 88, 89, 103, 17, 52, 50, 84, 41, 78, 107, 124, 68, 27, 32, 57, 29, 104, 61, 93, 70, 86, 67, 56, 64, 125, 22, 102, 7, 10, 80, 117, 81, 74, 4, 99, 73]","[87, 47, 88, 38, 14, 52, 122, 77, 23, 126, 45, 4, 2, 85, 28, 70, 48, 98, 32, 13, 109, 94, 61, 36, 68, 121, 116, 108, 100, 95, 26, 92, 114, 58, 76, 123, 115, 112, 11, 99, 79, 6, 35, 20, 24, 9, 17, 65, 80, 25, 60, 39, 113, 19, 30, 71, 63, 18, 34, 44, 105, 37, 83, 74]","[2, 4, 6, 9, 11, 14, 17, 19, 28, 32, 37, 52, 61, 63, 68, 70, 71, 74, 80, 85, 87, 88, 99, 100, 114, 121, 126]" +22,"[37, 119, 60, 45, 97, 34, 12, 69, 89, 61, 112, 42, 77, 44, 51, 126, 100, 13, 17, 43, 66, 106, 25, 28, 15, 122, 101, 86, 49, 23, 83, 14, 48, 74, 39, 62, 80, 76, 71, 117, 96, 125, 114, 59, 67, 52, 79, 47, 113, 98, 50, 33, 118, 107, 57, 99, 70, 31, 1, 56, 55, 68, 4, 41]","[58, 28, 0, 32, 16, 47, 87, 116, 109, 44, 123, 45, 121, 93, 24, 103, 53, 41, 26, 6, 119, 111, 79, 52, 92, 22, 81, 36, 59, 99, 115, 73, 2, 82, 127, 55, 114, 100, 88, 63, 13, 40, 124, 113, 5, 117, 38, 49, 85, 21, 105, 108, 89, 83, 11, 27, 31, 18, 7, 9, 96, 72, 110, 91]","[13, 28, 31, 41, 44, 45, 47, 49, 52, 55, 59, 79, 83, 89, 96, 99, 100, 113, 114, 117, 119]" +23,"[83, 70, 69, 31, 72, 13, 6, 15, 56, 115, 29, 127, 109, 23, 111, 93, 27, 90, 49, 53, 22, 30, 105, 125, 76, 106, 37, 67, 104, 47, 65, 96, 52, 19, 81, 82, 112, 10, 63, 89, 88, 94, 62, 28, 26, 58, 121, 1, 36, 16, 44, 92, 11, 54, 98, 84, 103, 39, 123, 41, 42, 87, 100, 97]","[81, 88, 29, 94, 47, 106, 84, 95, 56, 74, 87, 69, 39, 5, 104, 16, 112, 45, 13, 41, 9, 22, 109, 82, 54, 96, 113, 0, 110, 49, 77, 90, 30, 26, 28, 125, 12, 120, 40, 58, 14, 115, 108, 72, 105, 65, 71, 111, 83, 62, 76, 20, 11, 127, 70, 31, 42, 89, 24, 6, 63, 50, 107, 37]","[6, 11, 13, 16, 22, 26, 28, 29, 30, 31, 37, 39, 41, 42, 47, 49, 54, 56, 58, 62, 63, 65, 69, 70, 72, 76, 81, 82, 83, 84, 87, 88, 89, 90, 94, 96, 104, 105, 106, 109, 111, 112, 115, 125, 127]" +24,"[11, 16, 14, 24, 106, 59, 73, 61, 77, 102, 96, 26, 78, 18, 67, 7, 113, 127, 34, 72, 48, 88, 104, 101, 87, 89, 75, 74, 44, 90, 83, 97, 29, 64, 81, 54, 79, 124, 38, 41, 6, 76, 5, 35, 91, 47, 121, 12, 114, 17, 109, 108, 42, 111, 99, 93, 36, 92, 28, 65, 9, 94, 115, 3]","[87, 54, 90, 3, 85, 42, 5, 36, 113, 49, 41, 10, 115, 114, 117, 59, 33, 105, 100, 108, 18, 19, 55, 65, 47, 73, 77, 37, 101, 99, 45, 44, 28, 83, 13, 63, 53, 98, 64, 25, 96, 12, 16, 6, 23, 14, 46, 88, 15, 52, 93, 71, 48, 97, 116, 92, 17, 124, 95, 89, 9, 75, 78, 72]","[3, 5, 6, 9, 12, 14, 16, 17, 18, 28, 36, 41, 42, 44, 47, 48, 54, 59, 64, 65, 72, 73, 75, 77, 78, 83, 87, 88, 89, 90, 92, 93, 96, 97, 99, 101, 108, 113, 114, 115, 124]" +25,"[66, 46, 43, 29, 31, 35, 69, 79, 113, 49, 108, 84, 18, 61, 65, 72, 104, 115, 47, 98, 2, 75, 76, 19, 73, 114, 119, 89, 101, 105, 125, 23, 16, 17, 6, 50, 88, 56, 52, 20, 24, 27, 34, 95, 38, 116, 15, 39, 77, 83, 51, 100, 106, 44, 107, 4, 112, 71, 36, 30, 41, 67, 14, 55]","[87, 101, 45, 97, 93, 12, 35, 77, 80, 30, 102, 89, 98, 119, 3, 106, 0, 105, 34, 4, 108, 61, 100, 65, 55, 5, 52, 56, 54, 32, 114, 81, 19, 49, 107, 59, 29, 22, 70, 86, 31, 113, 26, 39, 60, 69, 33, 92, 82, 67, 115, 66, 125, 68, 117, 38, 53, 43, 109, 28, 2, 20, 1, 46]","[2, 4, 19, 20, 29, 30, 31, 34, 35, 38, 39, 43, 46, 49, 52, 55, 56, 61, 65, 66, 67, 69, 77, 89, 98, 100, 101, 105, 106, 107, 108, 113, 114, 115, 119, 125]" +26,"[119, 125, 121, 34, 33, 46, 113, 56, 38, 15, 57, 21, 83, 12, 72, 48, 65, 85, 4, 24, 29, 31, 50, 26, 1, 86, 70, 63, 122, 92, 22, 10, 106, 59, 58, 76, 19, 87, 123, 20, 43, 81, 62, 30, 0, 97, 7, 11, 14, 114, 75, 41, 36, 80, 117, 64, 73, 118, 47, 98, 102, 89, 90, 25]","[70, 4, 91, 89, 82, 123, 31, 61, 74, 99, 22, 103, 47, 68, 90, 110, 77, 108, 6, 50, 58, 78, 85, 16, 5, 23, 46, 34, 96, 121, 124, 95, 55, 79, 60, 57, 69, 39, 93, 81, 44, 113, 51, 36, 56, 66, 14, 27, 38, 42, 43, 84, 26, 25, 111, 45, 100, 12, 127, 97, 114, 87, 28, 116]","[4, 12, 14, 22, 25, 26, 31, 34, 36, 38, 43, 46, 47, 50, 56, 57, 58, 70, 81, 85, 87, 89, 90, 97, 113, 114, 121, 123]" +27,"[90, 47, 3, 53, 98, 92, 80, 76, 32, 52, 28, 66, 94, 103, 70, 29, 91, 62, 46, 56, 68, 59, 86, 125, 77, 35, 116, 124, 101, 88, 73, 54, 9, 23, 38, 74, 41, 39, 31, 84, 69, 40, 24, 21, 97, 37, 19, 106, 123, 112, 78, 107, 34, 4, 65, 49, 85, 79, 57, 2, 6, 30, 63, 15]","[52, 107, 33, 85, 38, 8, 105, 2, 63, 117, 40, 77, 44, 20, 90, 94, 23, 116, 76, 84, 65, 86, 21, 29, 60, 97, 9, 22, 34, 83, 35, 124, 3, 16, 69, 72, 67, 39, 98, 37, 99, 45, 58, 25, 28, 112, 15, 127, 11, 17, 30, 24, 66, 78, 14, 41, 89, 113, 49, 19, 31, 57, 73, 92]","[2, 3, 9, 15, 19, 21, 23, 24, 28, 29, 30, 31, 34, 35, 37, 38, 39, 40, 41, 49, 52, 57, 63, 65, 66, 69, 73, 76, 77, 78, 84, 85, 86, 90, 92, 94, 97, 98, 107, 112, 116, 124]" +28,"[28, 75, 38, 70, 106, 16, 99, 7, 37, 0, 110, 33, 120, 65, 127, 19, 66, 95, 50, 67, 34, 52, 105, 71, 93, 36, 125, 41, 55, 43, 54, 15, 4, 123, 46, 63, 11, 22, 109, 27, 13, 48, 81, 58, 49, 103, 45, 85, 31, 112, 92, 44, 89, 56, 62, 42, 2, 104, 25, 84, 77, 24, 61, 102]","[111, 13, 70, 30, 52, 45, 87, 103, 69, 21, 33, 98, 35, 65, 28, 15, 53, 93, 73, 92, 38, 67, 37, 84, 83, 32, 100, 62, 58, 118, 54, 115, 108, 51, 80, 90, 26, 119, 4, 81, 127, 85, 29, 95, 105, 47, 74, 122, 44, 91, 16, 31, 124, 64, 104, 101, 22, 75, 102, 7, 43, 60, 3, 57]","[4, 7, 13, 15, 16, 22, 28, 31, 33, 37, 38, 43, 44, 45, 52, 54, 58, 62, 65, 67, 70, 75, 81, 84, 85, 92, 93, 95, 102, 103, 104, 105, 127]" +29,"[29, 9, 37, 58, 97, 77, 19, 8, 32, 70, 62, 85, 44, 6, 7, 90, 21, 102, 108, 95, 67, 63, 12, 52, 18, 66, 110, 98, 68, 87, 38, 59, 5, 48, 83, 27, 104, 40, 46, 94, 53, 88, 106, 35, 43, 15, 36, 17, 28, 119, 42, 3, 56, 86, 109, 64, 123, 11, 51, 22, 60, 76, 79, 111]","[80, 121, 61, 7, 45, 116, 55, 71, 48, 24, 95, 87, 37, 76, 1, 58, 65, 124, 68, 9, 74, 26, 92, 5, 100, 90, 6, 103, 66, 86, 54, 104, 49, 96, 2, 113, 85, 78, 51, 17, 25, 32, 35, 64, 20, 13, 82, 125, 102, 77, 106, 10, 110, 43, 41, 62, 29, 16, 72, 4, 93, 127, 15, 12]","[5, 6, 7, 9, 12, 15, 17, 29, 32, 35, 37, 43, 48, 51, 58, 62, 64, 66, 68, 76, 77, 85, 86, 87, 90, 95, 102, 104, 106, 110]" +30,"[65, 87, 107, 50, 53, 7, 82, 62, 49, 112, 105, 90, 93, 45, 28, 122, 51, 24, 66, 41, 1, 18, 109, 94, 63, 72, 91, 47, 59, 119, 78, 56, 48, 42, 46, 115, 21, 92, 10, 39, 113, 96, 67, 37, 98, 121, 57, 111, 15, 86, 120, 100, 19, 23, 110, 69, 88, 95, 40, 6, 5, 33, 77, 16]","[24, 120, 43, 47, 12, 28, 69, 66, 113, 8, 23, 51, 25, 89, 14, 78, 114, 91, 101, 54, 32, 90, 31, 42, 116, 29, 76, 107, 64, 105, 40, 39, 70, 109, 71, 18, 127, 68, 111, 73, 87, 58, 13, 126, 121, 81, 30, 115, 77, 63, 5, 82, 124, 60, 21, 86, 65, 85, 74, 9, 17, 3, 2, 80]","[5, 18, 21, 23, 24, 28, 39, 40, 42, 47, 51, 63, 65, 66, 69, 77, 78, 82, 86, 87, 90, 91, 105, 107, 109, 111, 113, 115, 120, 121]" +31,"[89, 62, 125, 43, 101, 24, 123, 16, 113, 55, 8, 14, 3, 98, 65, 78, 57, 64, 114, 59, 110, 103, 30, 12, 72, 126, 42, 97, 74, 20, 69, 22, 91, 51, 109, 48, 81, 23, 6, 27, 2, 67, 49, 11, 111, 83, 73, 35, 66, 53, 25, 18, 120, 56, 115, 58, 4, 28, 32, 105, 41, 38, 124, 40]","[99, 88, 100, 17, 31, 40, 111, 72, 112, 70, 68, 63, 0, 116, 10, 1, 123, 19, 26, 15, 82, 44, 117, 41, 104, 62, 12, 76, 32, 85, 53, 52, 101, 120, 39, 119, 35, 115, 36, 86, 80, 125, 33, 71, 114, 11, 108, 13, 77, 107, 113, 45, 55, 2, 124, 90, 54, 25, 75, 5, 94, 89, 42, 122]","[2, 11, 12, 25, 32, 35, 40, 41, 42, 53, 55, 62, 72, 89, 101, 111, 113, 114, 115, 120, 123, 124, 125]" +32,"[45, 17, 7, 105, 16, 102, 10, 49, 97, 29, 90, 28, 18, 36, 84, 38, 35, 76, 73, 21, 120, 13, 79, 113, 127, 54, 110, 52, 44, 40, 8, 55, 11, 20, 125, 57, 75, 60, 39, 9, 43, 71, 3, 101, 33, 19, 95, 123, 37, 41, 1, 26, 87, 58, 85, 109, 51, 34, 66, 80, 91, 5, 12, 30]","[28, 47, 78, 96, 89, 69, 112, 10, 114, 99, 83, 49, 79, 72, 116, 50, 80, 3, 122, 64, 117, 59, 19, 38, 95, 33, 62, 70, 24, 94, 22, 25, 126, 46, 100, 101, 74, 92, 0, 42, 103, 115, 21, 55, 102, 60, 63, 81, 14, 104, 15, 77, 119, 93, 61, 111, 98, 27, 56, 121, 41, 18, 65, 73]","[3, 10, 18, 19, 21, 28, 33, 38, 41, 49, 55, 60, 73, 79, 80, 95, 101, 102]" +33,"[55, 120, 37, 77, 1, 33, 54, 91, 3, 27, 12, 101, 75, 119, 8, 58, 19, 68, 110, 84, 10, 124, 74, 60, 16, 125, 63, 104, 24, 25, 81, 100, 88, 50, 90, 40, 116, 23, 9, 47, 52, 4, 78, 39, 56, 57, 108, 15, 127, 66, 89, 32, 44, 85, 65, 53, 71, 14, 36, 45, 67, 115, 123, 48]","[14, 16, 49, 2, 101, 120, 74, 46, 64, 6, 78, 110, 5, 44, 65, 9, 92, 112, 57, 8, 15, 81, 40, 102, 100, 4, 34, 24, 22, 82, 90, 7, 70, 26, 80, 13, 42, 41, 73, 59, 123, 18, 33, 12, 125, 36, 1, 107, 122, 105, 98, 23, 63, 47, 77, 53, 97, 89, 21, 114, 38, 54, 96, 45]","[1, 4, 8, 9, 12, 14, 15, 16, 23, 24, 33, 36, 40, 44, 45, 47, 53, 54, 57, 63, 65, 74, 77, 78, 81, 89, 90, 100, 101, 110, 120, 123, 125]" +34,"[17, 28, 1, 97, 85, 70, 65, 68, 98, 19, 6, 55, 60, 82, 90, 41, 31, 125, 95, 112, 48, 86, 14, 49, 127, 92, 99, 15, 122, 43, 106, 58, 34, 80, 16, 91, 119, 46, 81, 2, 64, 8, 51, 52, 89, 20, 74, 12, 113, 72, 66, 36, 121, 37, 30, 115, 40, 44, 62, 117, 32, 123, 87, 79]","[62, 93, 113, 66, 122, 73, 68, 99, 112, 81, 25, 1, 127, 55, 0, 19, 60, 28, 18, 117, 49, 10, 43, 80, 95, 40, 4, 46, 31, 102, 3, 125, 20, 2, 21, 97, 121, 65, 52, 79, 41, 91, 17, 14, 33, 111, 100, 70, 13, 51, 35, 98, 105, 23, 64, 85, 61, 39, 92, 32, 48, 86, 118, 44]","[1, 2, 14, 17, 19, 20, 28, 31, 32, 40, 41, 43, 44, 46, 48, 49, 51, 52, 55, 60, 62, 64, 65, 66, 68, 70, 79, 80, 81, 85, 86, 91, 92, 95, 97, 98, 99, 112, 113, 117, 121, 122, 125, 127]" +35,"[51, 85, 64, 97, 39, 74, 25, 19, 3, 49, 62, 29, 45, 1, 115, 32, 8, 123, 15, 65, 50, 48, 58, 28, 82, 114, 22, 87, 31, 21, 76, 57, 125, 7, 55, 67, 88, 53, 43, 18, 27, 61, 36, 118, 26, 0, 68, 60, 46, 86, 13, 109, 92, 83, 56, 91, 23, 110, 12, 95, 81, 30, 34, 9]","[72, 20, 21, 90, 17, 68, 83, 33, 41, 51, 77, 84, 6, 108, 79, 115, 52, 54, 70, 61, 9, 57, 94, 107, 29, 63, 14, 53, 111, 47, 96, 18, 42, 36, 98, 106, 102, 100, 2, 120, 64, 121, 105, 73, 4, 104, 85, 69, 37, 89, 110, 127, 59, 24, 112, 16, 113, 101, 103, 7, 38, 10, 12, 19]","[7, 9, 12, 18, 19, 21, 29, 36, 51, 53, 57, 61, 64, 68, 83, 85, 110, 115]" +36,"[44, 96, 39, 51, 114, 97, 4, 124, 108, 77, 22, 80, 38, 26, 45, 3, 27, 25, 36, 120, 70, 46, 29, 57, 8, 99, 90, 64, 58, 9, 93, 56, 89, 106, 50, 122, 74, 48, 69, 102, 40, 37, 2, 86, 88, 47, 12, 33, 18, 13, 95, 105, 123, 110, 31, 73, 83, 82, 126, 0, 14, 54, 34, 11]","[39, 95, 123, 86, 88, 70, 89, 79, 50, 80, 56, 73, 25, 36, 71, 57, 3, 101, 21, 31, 30, 0, 121, 22, 12, 105, 2, 51, 82, 81, 9, 28, 14, 58, 4, 64, 108, 1, 109, 100, 23, 119, 61, 102, 63, 26, 29, 47, 53, 114, 126, 74, 54, 8, 16, 37, 69, 11, 60, 94, 62, 113, 27, 46]","[0, 2, 3, 4, 8, 9, 11, 12, 14, 22, 25, 26, 27, 29, 31, 36, 37, 39, 46, 47, 50, 51, 54, 56, 57, 58, 64, 69, 70, 73, 74, 80, 82, 86, 88, 89, 95, 102, 105, 108, 114, 123, 126]" +37,"[13, 43, 88, 51, 44, 101, 30, 71, 34, 127, 120, 28, 17, 60, 16, 4, 93, 107, 117, 75, 118, 18, 64, 50, 67, 46, 11, 52, 78, 27, 95, 12, 14, 97, 56, 5, 82, 74, 53, 15, 58, 54, 86, 36, 68, 47, 119, 87, 35, 8, 83, 104, 108, 76, 55, 29, 24, 21, 9, 92, 19, 102, 41, 91]","[66, 14, 109, 4, 115, 94, 34, 7, 45, 35, 101, 119, 50, 9, 25, 57, 30, 88, 71, 52, 19, 118, 17, 56, 38, 91, 5, 64, 24, 48, 29, 78, 21, 10, 70, 72, 2, 18, 104, 15, 13, 44, 108, 75, 58, 60, 97, 46, 36, 86, 93, 59, 100, 0, 43, 107, 125, 85, 80, 87, 32, 69, 55, 12]","[4, 5, 9, 12, 13, 14, 15, 17, 18, 19, 21, 24, 29, 30, 34, 35, 36, 43, 44, 46, 50, 52, 55, 56, 58, 60, 64, 71, 75, 78, 86, 87, 88, 91, 93, 97, 101, 104, 107, 108, 118, 119]" +38,"[27, 11, 109, 10, 64, 7, 43, 84, 17, 106, 71, 3, 5, 51, 73, 116, 54, 4, 80, 124, 38, 99, 33, 111, 81, 35, 95, 125, 25, 30, 67, 110, 82, 89, 49, 20, 39, 52, 68, 40, 32, 65, 105, 72, 96, 115, 93, 126, 24, 76, 102, 100, 97, 123, 101, 9, 50, 47, 44, 36, 23, 127, 66, 28]","[18, 106, 53, 121, 15, 49, 69, 86, 116, 114, 47, 73, 16, 112, 119, 52, 3, 45, 64, 33, 94, 91, 43, 1, 7, 75, 83, 55, 35, 23, 63, 5, 84, 56, 78, 12, 124, 46, 113, 2, 90, 126, 115, 120, 71, 0, 95, 93, 87, 77, 88, 19, 14, 70, 20, 29, 24, 31, 62, 37, 118, 79, 74, 111]","[3, 5, 7, 20, 23, 24, 33, 35, 43, 47, 49, 52, 64, 71, 73, 84, 93, 95, 106, 111, 115, 116, 124, 126]" +39,"[90, 50, 42, 2, 46, 10, 29, 55, 33, 108, 35, 53, 56, 83, 51, 114, 65, 75, 86, 30, 62, 22, 121, 32, 5, 43, 44, 77, 116, 106, 80, 23, 31, 69, 15, 93, 68, 96, 54, 97, 92, 73, 76, 123, 125, 79, 101, 24, 39, 9, 36, 72, 28, 37, 41, 105, 52, 6, 34, 16, 3, 104, 27, 1]","[76, 96, 83, 69, 104, 35, 15, 100, 33, 44, 91, 58, 10, 9, 29, 86, 70, 125, 112, 13, 108, 53, 65, 72, 66, 26, 117, 127, 126, 1, 120, 49, 109, 88, 43, 111, 39, 3, 123, 64, 54, 23, 77, 118, 30, 14, 12, 106, 37, 6, 19, 27, 48, 36, 63, 121, 74, 119, 22, 84, 50, 8, 107, 28]","[1, 3, 6, 9, 10, 15, 22, 23, 27, 28, 29, 30, 33, 35, 36, 37, 39, 43, 44, 50, 53, 54, 65, 69, 72, 76, 77, 83, 86, 96, 104, 106, 108, 121, 123, 125]" +40,"[34, 28, 122, 54, 84, 37, 59, 107, 5, 99, 80, 20, 73, 91, 88, 21, 50, 76, 1, 15, 100, 108, 78, 109, 7, 36, 6, 112, 114, 2, 16, 85, 118, 77, 49, 62, 66, 63, 95, 60, 19, 56, 105, 104, 57, 117, 17, 113, 92, 68, 102, 86, 23, 127, 11, 35, 69, 43, 74, 61, 3, 126, 47, 98]","[18, 57, 70, 79, 95, 24, 78, 111, 4, 9, 123, 110, 115, 90, 10, 125, 65, 32, 118, 8, 37, 83, 121, 3, 53, 116, 106, 40, 22, 98, 7, 81, 0, 21, 5, 97, 33, 46, 113, 12, 124, 119, 87, 29, 50, 2, 31, 103, 122, 41, 94, 76, 27, 99, 48, 45, 107, 114, 67, 96, 38, 91, 105, 80]","[2, 3, 5, 7, 21, 37, 50, 57, 76, 78, 80, 91, 95, 98, 99, 105, 107, 113, 114, 118, 122]" +41,"[76, 23, 20, 62, 38, 0, 32, 104, 80, 34, 58, 106, 36, 87, 15, 73, 44, 117, 40, 124, 35, 46, 114, 100, 53, 10, 66, 79, 88, 37, 31, 121, 48, 28, 122, 16, 63, 26, 72, 1, 126, 45, 4, 22, 9, 71, 5, 110, 118, 61, 13, 54, 78, 93, 30, 39, 103, 33, 41, 82, 113, 55, 68, 83]","[120, 125, 91, 103, 37, 0, 38, 15, 30, 23, 13, 117, 46, 7, 44, 66, 106, 20, 123, 29, 71, 74, 99, 77, 27, 54, 87, 126, 19, 124, 34, 85, 2, 48, 40, 42, 33, 93, 83, 80, 26, 57, 69, 100, 114, 45, 36, 14, 105, 9, 82, 122, 89, 58, 51, 59, 22, 81, 32, 62, 78, 24, 60, 10]","[0, 9, 10, 13, 15, 20, 22, 23, 26, 30, 32, 33, 34, 36, 37, 38, 40, 44, 45, 46, 48, 54, 58, 62, 66, 71, 78, 80, 82, 83, 87, 93, 100, 103, 106, 114, 117, 122, 124, 126]" +42,"[64, 26, 78, 51, 2, 113, 105, 6, 47, 79, 60, 18, 36, 7, 110, 4, 72, 32, 73, 27, 88, 45, 104, 14, 118, 123, 91, 121, 42, 68, 98, 111, 66, 106, 9, 10, 43, 52, 48, 102, 55, 95, 74, 5, 54, 56, 115, 114, 58, 120, 38, 37, 112, 99, 39, 62, 22, 20, 125, 81, 28, 82, 94, 71]","[85, 56, 80, 10, 91, 36, 126, 21, 18, 27, 86, 34, 121, 23, 72, 92, 50, 106, 70, 62, 12, 93, 7, 66, 52, 22, 81, 14, 47, 101, 64, 61, 90, 28, 41, 40, 99, 111, 74, 98, 94, 63, 120, 33, 45, 122, 123, 48, 82, 32, 0, 42, 57, 96, 110, 31, 71, 39, 44, 87, 5, 26, 54, 102]","[5, 7, 10, 14, 18, 22, 26, 27, 28, 32, 36, 39, 42, 45, 47, 48, 52, 54, 56, 62, 64, 66, 71, 72, 74, 81, 82, 91, 94, 98, 99, 102, 106, 110, 111, 120, 121, 123]" +43,"[5, 8, 7, 105, 3, 17, 46, 1, 104, 82, 118, 106, 91, 54, 102, 0, 39, 38, 19, 88, 94, 25, 85, 55, 113, 14, 18, 52, 35, 76, 57, 112, 9, 124, 123, 29, 80, 97, 33, 89, 78, 43, 22, 109, 126, 10, 34, 11, 108, 12, 96, 79, 121, 125, 86, 50, 92, 119, 42, 13, 58, 110, 60, 56]","[35, 73, 112, 30, 21, 77, 17, 88, 90, 14, 107, 113, 72, 44, 117, 31, 1, 105, 79, 47, 124, 10, 53, 28, 5, 96, 33, 119, 18, 66, 7, 83, 114, 23, 101, 13, 63, 74, 100, 85, 25, 115, 84, 103, 45, 99, 16, 2, 46, 62, 69, 81, 38, 41, 64, 126, 0, 65, 12, 19, 43, 49, 111, 67]","[0, 1, 5, 7, 10, 12, 13, 14, 17, 18, 19, 25, 33, 35, 38, 43, 46, 79, 85, 88, 96, 105, 112, 113, 119, 124, 126]" +44,"[26, 109, 77, 7, 110, 114, 125, 38, 98, 90, 57, 68, 72, 18, 13, 29, 82, 118, 30, 42, 31, 75, 21, 4, 37, 65, 56, 35, 8, 100, 105, 113, 5, 78, 70, 87, 92, 67, 59, 25, 9, 16, 79, 46, 6, 47, 55, 23, 44, 66, 49, 1, 20, 64, 40, 28, 48, 34, 115, 97, 85, 91, 22, 95]","[27, 117, 112, 38, 121, 98, 123, 43, 26, 88, 94, 35, 41, 29, 122, 116, 106, 73, 93, 36, 104, 126, 47, 12, 80, 58, 60, 84, 72, 18, 46, 32, 83, 119, 95, 52, 7, 53, 65, 127, 89, 86, 50, 109, 33, 39, 90, 107, 19, 111, 71, 61, 14, 96, 124, 2, 100, 118, 45, 15, 97, 17, 51, 34]","[7, 18, 26, 29, 34, 35, 38, 46, 47, 65, 72, 90, 95, 97, 98, 100, 109, 118]" +45,"[82, 6, 108, 31, 55, 89, 75, 40, 96, 45, 118, 44, 18, 116, 125, 81, 59, 65, 28, 14, 0, 117, 98, 91, 12, 35, 103, 120, 24, 99, 84, 43, 101, 66, 11, 5, 27, 53, 88, 104, 64, 62, 105, 70, 54, 2, 113, 50, 74, 49, 67, 114, 22, 1, 21, 85, 29, 77, 87, 63, 26, 111, 46, 79]","[35, 73, 18, 11, 5, 40, 113, 95, 2, 122, 103, 4, 104, 87, 58, 28, 125, 47, 118, 97, 85, 52, 124, 1, 72, 108, 44, 26, 55, 50, 81, 64, 117, 78, 92, 37, 76, 43, 66, 0, 98, 63, 91, 12, 75, 27, 53, 62, 99, 33, 45, 14, 20, 77, 105, 89, 101, 65, 84, 82, 49, 59, 21, 102]","[0, 1, 2, 5, 11, 12, 14, 18, 21, 26, 27, 28, 35, 40, 43, 44, 45, 49, 50, 53, 55, 59, 62, 63, 64, 65, 66, 75, 77, 81, 82, 84, 85, 87, 89, 91, 98, 99, 101, 103, 104, 105, 108, 113, 117, 118, 125]" +46,"[47, 75, 82, 0, 40, 46, 1, 6, 61, 66, 27, 55, 116, 71, 126, 12, 123, 69, 107, 49, 112, 28, 77, 120, 30, 88, 16, 91, 15, 21, 36, 124, 13, 81, 34, 70, 17, 68, 85, 22, 95, 53, 51, 39, 80, 5, 7, 106, 89, 19, 60, 44, 72, 25, 9, 64, 97, 42, 58, 35, 114, 57, 115, 59]","[71, 54, 96, 34, 27, 81, 0, 68, 63, 18, 20, 58, 44, 13, 113, 21, 117, 72, 127, 35, 75, 78, 89, 86, 17, 97, 110, 47, 24, 41, 12, 65, 92, 73, 74, 60, 120, 3, 7, 93, 108, 111, 26, 1, 48, 50, 116, 123, 14, 126, 80, 107, 38, 4, 98, 16, 46, 100, 90, 105, 11, 52, 31, 114]","[0, 1, 7, 12, 13, 16, 17, 21, 27, 34, 35, 44, 46, 47, 58, 60, 68, 71, 72, 75, 80, 81, 89, 97, 107, 114, 116, 120, 123, 126]" +47,"[17, 23, 27, 1, 67, 111, 69, 112, 19, 100, 45, 37, 21, 29, 14, 9, 116, 30, 85, 54, 117, 75, 108, 79, 11, 4, 33, 109, 114, 102, 90, 127, 55, 2, 34, 68, 74, 92, 97, 120, 47, 32, 78, 16, 8, 91, 6, 26, 89, 86, 76, 94, 15, 77, 13, 80, 18, 52, 25, 115, 64, 98, 124, 87]","[127, 65, 21, 48, 19, 20, 84, 1, 123, 87, 103, 33, 125, 79, 16, 105, 27, 64, 94, 109, 117, 23, 69, 25, 9, 45, 88, 90, 47, 5, 54, 74, 116, 102, 98, 12, 80, 37, 4, 106, 8, 96, 115, 18, 67, 95, 70, 60, 14, 89, 52, 26, 39, 34, 86, 44, 43, 112, 114, 29, 120, 75, 13, 72]","[1, 4, 8, 9, 13, 14, 16, 18, 19, 21, 23, 25, 26, 27, 29, 33, 34, 37, 45, 47, 52, 54, 64, 67, 69, 74, 75, 79, 80, 86, 87, 89, 90, 94, 98, 102, 109, 112, 114, 115, 116, 117, 120, 127]" +48,"[70, 41, 29, 23, 78, 32, 79, 125, 95, 63, 112, 39, 14, 100, 51, 20, 94, 98, 97, 52, 5, 73, 1, 75, 103, 62, 71, 88, 67, 69, 49, 127, 25, 99, 64, 17, 19, 45, 44, 80, 85, 89, 114, 34, 3, 50, 55, 12, 111, 9, 7, 38, 90, 53, 28, 82, 46, 36, 24, 65, 108, 119, 110, 40]","[103, 116, 24, 105, 82, 114, 56, 88, 39, 74, 63, 104, 36, 99, 32, 22, 61, 71, 51, 26, 72, 79, 57, 41, 43, 29, 83, 54, 62, 5, 106, 94, 64, 37, 110, 49, 98, 127, 112, 91, 3, 9, 84, 76, 10, 77, 8, 60, 34, 40, 78, 93, 44, 2, 102, 12, 45, 87, 1, 118, 19, 53, 125, 97]","[1, 3, 5, 9, 12, 19, 24, 29, 32, 34, 36, 39, 40, 41, 44, 45, 49, 51, 53, 62, 63, 64, 71, 78, 79, 82, 88, 94, 97, 98, 99, 103, 110, 112, 114, 125, 127]" +49,"[94, 92, 8, 3, 95, 14, 49, 69, 44, 105, 77, 74, 23, 81, 36, 35, 126, 127, 96, 123, 76, 62, 72, 104, 118, 65, 28, 70, 102, 4, 54, 0, 10, 12, 98, 122, 60, 108, 33, 84, 40, 87, 110, 43, 15, 97, 29, 16, 93, 83, 18, 11, 99, 64, 34, 75, 48, 53, 86, 125, 85, 116, 90, 66]","[121, 40, 44, 52, 94, 72, 76, 105, 60, 100, 104, 106, 83, 65, 91, 110, 95, 122, 20, 10, 99, 54, 57, 1, 15, 18, 66, 12, 14, 126, 28, 42, 3, 127, 56, 125, 88, 77, 6, 48, 5, 101, 17, 37, 113, 108, 120, 43, 67, 68, 51, 7, 11, 33, 29, 32, 8, 13, 90, 35, 23, 118, 34, 85]","[3, 8, 10, 11, 12, 14, 15, 18, 23, 28, 29, 33, 34, 35, 40, 43, 44, 48, 54, 60, 65, 66, 72, 76, 77, 83, 85, 90, 94, 95, 99, 104, 105, 108, 110, 118, 122, 125, 126, 127]" +50,"[49, 34, 40, 27, 1, 57, 46, 122, 73, 93, 77, 58, 42, 0, 36, 109, 96, 115, 98, 79, 8, 126, 68, 97, 102, 92, 60, 78, 24, 59, 26, 80, 100, 101, 85, 6, 39, 44, 94, 52, 56, 43, 107, 28, 114, 76, 11, 21, 65, 75, 63, 10, 104, 95, 23, 62, 103, 14, 16, 3, 118, 125, 5, 123]","[108, 43, 105, 23, 36, 26, 114, 104, 62, 6, 24, 92, 1, 7, 83, 5, 89, 28, 107, 42, 34, 110, 39, 64, 122, 87, 53, 55, 68, 40, 52, 106, 2, 78, 103, 56, 111, 98, 85, 79, 124, 60, 116, 15, 119, 27, 3, 54, 47, 126, 118, 65, 113, 100, 125, 49, 57, 9, 46, 32, 38, 123, 67, 95]","[1, 3, 5, 6, 23, 24, 26, 27, 28, 34, 36, 39, 40, 42, 43, 46, 49, 52, 56, 57, 60, 62, 65, 68, 78, 79, 85, 92, 95, 98, 100, 103, 104, 107, 114, 118, 122, 123, 125, 126]" +51,"[24, 41, 100, 35, 125, 3, 107, 51, 80, 82, 123, 71, 93, 47, 13, 14, 55, 30, 86, 64, 70, 122, 67, 38, 88, 8, 99, 117, 76, 89, 26, 29, 27, 39, 45, 102, 0, 53, 124, 7, 31, 79, 56, 23, 52, 75, 20, 42, 101, 108, 43, 33, 95, 69, 61, 98, 78, 115, 54, 40, 105, 87, 19, 44]","[1, 13, 122, 37, 35, 91, 54, 6, 89, 71, 50, 58, 16, 104, 116, 5, 25, 0, 95, 73, 2, 126, 110, 97, 103, 12, 90, 117, 72, 17, 53, 3, 43, 60, 68, 11, 109, 107, 105, 4, 62, 65, 34, 46, 81, 82, 40, 84, 106, 75, 74, 78, 9, 45, 15, 123, 111, 48, 41, 119, 83, 125, 28, 96]","[0, 3, 13, 35, 40, 41, 43, 45, 53, 54, 71, 75, 78, 82, 89, 95, 105, 107, 117, 122, 123, 125]" +52,"[89, 51, 33, 37, 49, 0, 84, 4, 65, 87, 125, 67, 90, 7, 19, 68, 11, 17, 46, 106, 39, 82, 62, 126, 120, 72, 45, 86, 93, 16, 50, 54, 105, 104, 55, 36, 58, 73, 43, 57, 103, 94, 76, 75, 70, 64, 127, 85, 53, 10, 35, 107, 31, 113, 47, 24, 124, 32, 108, 26, 60, 42, 74, 80]","[96, 34, 10, 67, 6, 86, 87, 82, 78, 15, 54, 59, 75, 23, 89, 88, 28, 99, 107, 27, 69, 94, 70, 120, 29, 46, 63, 71, 47, 83, 52, 122, 115, 7, 36, 13, 119, 116, 18, 112, 93, 80, 55, 8, 2, 51, 30, 9, 33, 60, 111, 38, 20, 21, 17, 35, 14, 81, 5, 101, 26, 19, 25, 39]","[7, 10, 17, 19, 26, 33, 35, 36, 39, 46, 47, 51, 54, 55, 60, 67, 70, 75, 80, 82, 86, 87, 89, 93, 94, 107, 120]" +53,"[115, 62, 77, 59, 8, 48, 85, 117, 63, 79, 34, 32, 3, 49, 105, 33, 23, 52, 57, 96, 121, 94, 90, 61, 27, 92, 30, 4, 64, 81, 20, 29, 106, 10, 98, 88, 60, 2, 45, 1, 46, 56, 26, 107, 19, 25, 82, 97, 36, 103, 100, 16, 110, 28, 70, 114, 80, 41, 84, 122, 53, 65, 76, 11]","[126, 16, 120, 111, 30, 86, 41, 42, 71, 7, 3, 74, 88, 89, 54, 67, 14, 121, 100, 73, 26, 77, 2, 103, 81, 83, 55, 6, 33, 13, 40, 69, 17, 85, 123, 80, 118, 29, 92, 1, 50, 39, 72, 84, 45, 46, 87, 4, 75, 34, 57, 95, 32, 117, 15, 76, 109, 66, 99, 61, 27, 112, 98, 104]","[1, 2, 3, 4, 16, 26, 27, 29, 30, 32, 33, 34, 41, 45, 46, 57, 61, 76, 77, 80, 81, 84, 85, 88, 92, 98, 100, 103, 117, 121]" +54,"[60, 111, 21, 57, 87, 100, 80, 20, 40, 63, 56, 90, 8, 76, 108, 94, 82, 73, 121, 45, 97, 65, 29, 34, 43, 114, 127, 72, 35, 4, 12, 125, 1, 123, 109, 105, 31, 5, 91, 124, 0, 99, 103, 78, 26, 6, 101, 92, 52, 10, 59, 41, 18, 36, 55, 96, 13, 42, 49, 28, 23, 66, 38, 2]","[90, 79, 63, 78, 29, 76, 106, 16, 103, 38, 48, 64, 82, 89, 73, 61, 60, 62, 21, 26, 18, 43, 2, 22, 52, 95, 70, 56, 102, 32, 33, 114, 53, 4, 111, 101, 15, 20, 113, 30, 3, 84, 44, 110, 119, 35, 68, 7, 91, 118, 57, 31, 55, 112, 14, 75, 0, 77, 121, 115, 46, 105, 104, 108]","[0, 2, 4, 18, 20, 21, 26, 29, 31, 35, 38, 43, 52, 55, 56, 57, 60, 63, 73, 76, 78, 82, 90, 91, 101, 103, 105, 108, 111, 114, 121]" +55,"[54, 42, 53, 36, 27, 101, 62, 3, 32, 20, 93, 122, 12, 69, 97, 46, 66, 5, 47, 19, 48, 10, 22, 6, 116, 91, 35, 63, 75, 45, 96, 14, 82, 59, 72, 102, 33, 76, 15, 23, 99, 4, 65, 52, 81, 114, 113, 94, 1, 43, 80, 24, 104, 31, 95, 49, 44, 120, 51, 118, 103, 106, 86, 8]","[86, 59, 83, 27, 13, 21, 85, 100, 98, 70, 18, 46, 0, 78, 25, 88, 19, 115, 10, 87, 2, 64, 117, 84, 121, 80, 33, 20, 65, 60, 110, 31, 125, 92, 63, 109, 57, 68, 74, 123, 67, 34, 50, 73, 41, 40, 42, 38, 56, 124, 37, 1, 29, 111, 119, 126, 91, 77, 61, 36, 6, 107, 17, 58]","[1, 6, 10, 19, 20, 27, 31, 33, 36, 42, 46, 59, 63, 65, 80, 86, 91]" +56,"[41, 9, 111, 20, 69, 47, 17, 35, 26, 25, 89, 93, 2, 37, 22, 118, 84, 5, 21, 126, 100, 60, 107, 104, 33, 1, 63, 86, 46, 12, 39, 29, 80, 3, 0, 77, 6, 108, 59, 76, 55, 30, 27, 14, 48, 4, 28, 53, 127, 11, 52, 58, 67, 92, 44, 122, 23, 51, 98, 94, 49, 90, 32, 31]","[92, 116, 84, 72, 88, 100, 94, 64, 52, 98, 122, 58, 106, 78, 112, 8, 111, 67, 27, 45, 2, 90, 125, 5, 50, 6, 42, 66, 39, 53, 16, 113, 69, 17, 123, 102, 93, 7, 13, 127, 68, 105, 91, 119, 37, 49, 3, 28, 20, 55, 35, 71, 99, 124, 121, 54, 70, 47, 120, 26, 126, 75, 25, 32]","[2, 3, 5, 6, 17, 20, 25, 26, 27, 28, 32, 35, 37, 39, 47, 49, 52, 53, 55, 58, 67, 69, 84, 90, 92, 93, 94, 98, 100, 111, 122, 126, 127]" +57,"[8, 71, 59, 118, 45, 96, 108, 7, 30, 73, 11, 92, 50, 28, 70, 19, 110, 0, 26, 53, 106, 49, 25, 88, 10, 121, 67, 1, 105, 61, 65, 4, 74, 86, 46, 37, 54, 16, 34, 38, 52, 100, 29, 39, 85, 27, 6, 94, 77, 107, 98, 33, 66, 40, 55, 14, 58, 44, 103, 2, 20, 112, 75, 114]","[95, 18, 101, 50, 108, 54, 126, 104, 62, 16, 76, 15, 99, 83, 115, 30, 3, 80, 7, 72, 125, 84, 117, 85, 28, 127, 79, 27, 56, 89, 78, 13, 2, 9, 68, 61, 22, 17, 5, 43, 40, 35, 102, 75, 121, 12, 63, 51, 23, 42, 109, 39, 21, 59, 49, 29, 81, 77, 48, 47, 73, 123, 113, 97]","[2, 7, 16, 27, 28, 29, 30, 39, 40, 49, 50, 54, 59, 61, 73, 75, 77, 85, 108, 121]" +58,"[32, 108, 121, 15, 20, 54, 115, 109, 19, 48, 9, 81, 57, 127, 27, 98, 60, 21, 47, 100, 76, 23, 126, 1, 36, 52, 2, 25, 66, 70, 31, 50, 46, 78, 14, 116, 45, 96, 92, 120, 93, 72, 4, 10, 17, 49, 103, 29, 82, 69, 102, 88, 125, 13, 110, 118, 18, 80, 62, 55, 39, 67, 94, 59]","[52, 74, 88, 111, 19, 116, 110, 78, 55, 121, 14, 73, 36, 104, 49, 86, 82, 102, 22, 124, 67, 51, 43, 10, 27, 123, 60, 79, 100, 127, 87, 2, 23, 98, 96, 44, 30, 24, 63, 89, 45, 90, 9, 108, 46, 68, 120, 64, 99, 26, 17, 91, 1, 32, 29, 21, 70, 56, 48, 62, 83, 103, 39, 57]","[1, 2, 9, 10, 14, 17, 19, 21, 23, 27, 29, 32, 36, 39, 45, 46, 48, 49, 52, 55, 57, 60, 62, 67, 70, 78, 82, 88, 96, 98, 100, 102, 103, 108, 110, 116, 120, 121, 127]" +59,"[115, 40, 65, 102, 105, 47, 27, 31, 121, 69, 54, 76, 67, 35, 15, 110, 118, 50, 32, 84, 42, 87, 108, 62, 9, 63, 94, 20, 106, 99, 86, 81, 122, 12, 89, 79, 68, 38, 7, 36, 75, 6, 55, 83, 48, 97, 95, 23, 1, 16, 93, 74, 70, 28, 77, 13, 72, 24, 92, 91, 5, 37, 57, 64]","[35, 50, 99, 76, 96, 42, 5, 71, 46, 12, 17, 28, 14, 6, 100, 87, 101, 27, 3, 37, 77, 48, 32, 52, 38, 80, 102, 49, 25, 118, 62, 31, 105, 59, 98, 20, 119, 18, 55, 45, 121, 24, 57, 56, 95, 54, 47, 73, 1, 70, 9, 117, 67, 41, 2, 33, 39, 92, 106, 90, 65, 88, 8, 108]","[1, 5, 6, 9, 12, 20, 24, 27, 28, 31, 32, 35, 37, 38, 42, 47, 48, 50, 54, 55, 57, 62, 65, 67, 70, 76, 77, 87, 92, 95, 99, 102, 105, 106, 108, 118, 121]" +60,"[49, 35, 9, 18, 108, 52, 69, 33, 29, 44, 80, 50, 94, 70, 64, 27, 32, 48, 59, 119, 92, 116, 78, 41, 76, 54, 19, 90, 61, 83, 13, 4, 42, 67, 101, 115, 22, 37, 102, 62, 11, 25, 85, 47, 56, 127, 55, 71, 2, 15, 122, 107, 100, 39, 30, 84, 38, 58, 34, 6, 43, 120, 72, 68]","[49, 114, 22, 29, 76, 94, 39, 4, 67, 16, 122, 36, 55, 47, 84, 74, 20, 6, 79, 100, 88, 44, 15, 14, 69, 119, 32, 64, 63, 52, 53, 72, 34, 102, 118, 57, 30, 11, 125, 35, 85, 21, 71, 83, 43, 18, 59, 40, 48, 50, 19, 60, 2, 37, 101, 86, 70, 98, 9, 93, 116, 58, 33, 61]","[2, 4, 6, 9, 11, 15, 18, 19, 22, 29, 30, 32, 33, 34, 35, 37, 39, 43, 44, 47, 48, 49, 50, 52, 55, 58, 59, 61, 64, 67, 69, 70, 71, 72, 76, 83, 84, 85, 94, 100, 101, 102, 116, 119, 122]" +61,"[87, 24, 107, 84, 36, 60, 94, 63, 57, 52, 82, 15, 13, 49, 114, 39, 0, 89, 74, 78, 44, 5, 102, 9, 28, 80, 90, 59, 27, 53, 73, 123, 124, 33, 119, 7, 45, 2, 50, 108, 75, 37, 69, 62, 66, 64, 79, 4, 14, 76, 29, 25, 101, 40, 20, 111, 51, 35, 121, 103, 96, 47, 58, 126]","[92, 88, 64, 83, 14, 33, 79, 44, 126, 119, 75, 11, 56, 60, 20, 69, 13, 118, 110, 63, 114, 102, 29, 74, 7, 113, 41, 97, 34, 2, 58, 89, 23, 82, 78, 87, 100, 19, 52, 57, 53, 77, 40, 5, 15, 107, 47, 105, 98, 67, 108, 27, 35, 54, 59, 55, 127, 91, 94, 16, 9, 18, 25, 8]","[2, 5, 7, 9, 13, 14, 15, 20, 25, 27, 29, 33, 35, 40, 44, 47, 52, 53, 57, 58, 59, 60, 63, 64, 69, 74, 75, 78, 79, 82, 87, 89, 94, 102, 107, 108, 114, 119, 126]" +62,"[86, 117, 27, 89, 65, 115, 24, 12, 40, 62, 77, 88, 2, 97, 21, 110, 64, 107, 34, 76, 37, 69, 108, 91, 124, 51, 72, 7, 75, 30, 120, 106, 70, 18, 10, 95, 116, 50, 122, 71, 94, 61, 41, 56, 67, 6, 59, 42, 111, 126, 19, 16, 92, 105, 104, 43, 81, 17, 29, 23, 8, 102, 48, 103]","[117, 88, 63, 32, 105, 23, 19, 87, 36, 67, 118, 112, 17, 73, 123, 35, 4, 7, 94, 15, 18, 57, 25, 84, 3, 100, 43, 66, 83, 114, 98, 44, 46, 41, 42, 121, 20, 37, 62, 40, 8, 52, 29, 93, 31, 61, 6, 30, 49, 21, 71, 80, 54, 16, 53, 28, 47, 60, 70, 120, 38, 39, 34, 26]","[6, 7, 8, 16, 17, 18, 19, 21, 23, 29, 30, 34, 37, 40, 41, 42, 43, 61, 62, 67, 70, 71, 88, 94, 105, 117, 120]" +63,"[22, 70, 26, 109, 94, 0, 29, 116, 19, 57, 3, 113, 59, 6, 101, 31, 54, 64, 118, 28, 91, 110, 25, 41, 16, 17, 12, 44, 51, 126, 82, 5, 72, 115, 84, 43, 7, 68, 98, 120, 102, 71, 14, 21, 85, 10, 47, 74, 121, 81, 56, 20, 87, 48, 15, 37, 32, 36, 96, 49, 67, 42, 30, 46]","[64, 121, 120, 62, 71, 46, 68, 84, 56, 82, 115, 78, 34, 59, 49, 57, 54, 116, 90, 47, 48, 21, 110, 102, 119, 75, 126, 42, 2, 67, 92, 3, 25, 127, 12, 32, 89, 74, 73, 17, 5, 30, 99, 26, 51, 1, 20, 58, 28, 100, 70, 0, 18, 118, 109, 91, 6, 36, 16, 113, 72, 106, 10, 66]","[0, 3, 5, 6, 10, 12, 16, 17, 20, 21, 25, 26, 28, 30, 32, 36, 42, 46, 47, 48, 49, 51, 54, 56, 57, 59, 64, 67, 68, 70, 71, 72, 74, 82, 84, 91, 102, 109, 110, 113, 115, 116, 118, 120, 121, 126]" +64,"[4, 0, 113, 53, 97, 107, 15, 18, 84, 54, 82, 110, 74, 11, 13, 39, 92, 115, 87, 116, 28, 37, 106, 99, 67, 111, 90, 88, 21, 96, 51, 64, 47, 26, 36, 30, 5, 3, 78, 9, 32, 75, 98, 73, 14, 89, 71, 2, 27, 19, 77, 69, 12, 49, 20, 63, 59, 101, 85, 65, 120, 124, 80, 91]","[19, 11, 96, 106, 127, 39, 2, 121, 87, 18, 51, 59, 76, 82, 41, 123, 13, 79, 46, 57, 77, 40, 15, 60, 93, 48, 9, 63, 4, 70, 73, 10, 108, 116, 102, 122, 95, 24, 113, 21, 36, 20, 12, 94, 99, 29, 83, 104, 28, 114, 117, 86, 118, 50, 14, 88, 8, 16, 105, 109, 52, 27, 55, 61]","[2, 4, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 27, 28, 36, 39, 51, 59, 63, 73, 77, 82, 87, 88, 96, 99, 106, 113, 116]" +65,"[22, 72, 41, 42, 8, 113, 92, 108, 11, 39, 99, 27, 53, 80, 28, 16, 13, 88, 76, 81, 46, 43, 3, 2, 26, 40, 12, 0, 115, 10, 50, 117, 52, 44, 25, 111, 107, 96, 85, 78, 63, 23, 89, 59, 18, 124, 32, 126, 90, 84, 101, 122, 20, 34, 60, 93, 98, 69, 51, 6, 95, 21, 64, 97]","[62, 93, 117, 8, 61, 114, 98, 57, 16, 1, 47, 119, 99, 121, 32, 11, 66, 92, 110, 38, 53, 113, 77, 44, 85, 112, 28, 25, 17, 107, 71, 73, 68, 67, 116, 4, 56, 19, 120, 87, 29, 31, 7, 127, 50, 79, 72, 75, 27, 83, 21, 24, 109, 108, 80, 118, 26, 34, 58, 9, 86, 0, 22, 94]","[0, 8, 11, 16, 21, 22, 25, 26, 27, 28, 32, 34, 44, 50, 53, 72, 80, 85, 92, 93, 98, 99, 107, 108, 113, 117]" +66,"[42, 117, 88, 35, 1, 25, 45, 85, 123, 105, 27, 54, 74, 46, 47, 24, 40, 36, 52, 29, 30, 53, 93, 122, 99, 39, 98, 63, 121, 50, 94, 72, 89, 84, 70, 2, 126, 112, 75, 69, 34, 95, 37, 71, 125, 66, 118, 67, 12, 33, 62, 101, 115, 65, 13, 55, 17, 14, 51, 76, 10, 120, 92, 59]","[74, 27, 85, 12, 125, 5, 96, 118, 104, 63, 40, 81, 57, 71, 69, 112, 92, 30, 65, 107, 75, 121, 99, 76, 1, 116, 39, 32, 115, 38, 51, 16, 17, 67, 25, 109, 59, 10, 28, 89, 33, 58, 42, 61, 13, 82, 119, 11, 54, 14, 45, 77, 34, 44, 24, 37, 46, 36, 70, 84, 80, 101, 29, 35]","[1, 10, 12, 13, 14, 17, 24, 25, 27, 29, 30, 33, 34, 35, 36, 37, 39, 40, 42, 45, 46, 51, 54, 59, 63, 65, 67, 69, 70, 71, 74, 75, 76, 84, 85, 89, 92, 99, 101, 112, 115, 118, 121, 125]" +67,"[87, 120, 29, 81, 48, 4, 89, 60, 106, 44, 76, 119, 125, 68, 55, 95, 69, 1, 78, 50, 56, 59, 114, 54, 5, 13, 108, 2, 115, 98, 28, 94, 20, 118, 116, 21, 45, 80, 117, 25, 65, 27, 74, 110, 58, 96, 77, 23, 16, 52, 93, 26, 71, 17, 22, 83, 49, 79, 47, 46, 9, 123, 102, 91]","[30, 79, 52, 6, 16, 38, 72, 119, 17, 90, 63, 95, 82, 51, 76, 22, 48, 32, 88, 124, 126, 15, 41, 7, 122, 93, 21, 10, 68, 19, 106, 108, 65, 99, 89, 111, 84, 64, 46, 112, 85, 44, 8, 14, 103, 115, 75, 31, 57, 13, 1, 118, 83, 23, 55, 60, 113, 20, 40, 67, 39, 11, 18, 107]","[1, 13, 16, 17, 20, 21, 22, 23, 44, 46, 48, 52, 55, 60, 65, 68, 76, 79, 83, 89, 93, 95, 106, 108, 115, 118, 119]" +68,"[33, 92, 85, 97, 21, 116, 15, 29, 24, 9, 42, 58, 72, 73, 5, 70, 25, 90, 108, 18, 59, 91, 66, 67, 19, 96, 88, 3, 99, 62, 71, 44, 68, 114, 89, 74, 117, 121, 107, 60, 53, 51, 27, 76, 34, 17, 122, 82, 1, 50, 106, 46, 4, 119, 95, 54, 75, 112, 52, 37, 13, 100, 28, 45]","[17, 23, 62, 9, 120, 22, 55, 61, 10, 105, 77, 49, 78, 84, 89, 36, 70, 124, 48, 79, 106, 101, 32, 34, 38, 109, 8, 66, 81, 97, 63, 56, 47, 42, 126, 93, 69, 7, 113, 43, 39, 87, 21, 115, 6, 0, 20, 123, 25, 86, 104, 102, 11, 33, 50, 98, 16, 24, 112, 12, 65, 28, 76, 80]","[9, 17, 21, 24, 25, 28, 33, 34, 42, 50, 62, 66, 70, 76, 89, 97, 106, 112]" +69,"[28, 3, 77, 42, 16, 67, 63, 24, 78, 23, 109, 45, 118, 7, 88, 30, 43, 76, 59, 21, 99, 37, 52, 25, 5, 19, 89, 115, 35, 95, 93, 13, 2, 121, 57, 80, 8, 17, 101, 98, 1, 106, 9, 96, 82, 111, 10, 22, 107, 113, 20, 38, 56, 79, 36, 91, 74, 31, 126, 29, 64, 71, 55, 60]","[120, 48, 73, 49, 45, 40, 82, 21, 7, 34, 31, 109, 41, 72, 83, 22, 47, 118, 99, 74, 100, 101, 54, 106, 116, 127, 123, 124, 75, 50, 44, 112, 96, 108, 76, 0, 10, 29, 94, 3, 11, 58, 39, 8, 92, 59, 30, 51, 37, 16, 9, 97, 28, 86, 2, 24, 55, 19, 122, 105, 67, 1, 63, 102]","[1, 2, 3, 7, 8, 9, 10, 16, 19, 21, 22, 24, 28, 29, 30, 31, 37, 45, 55, 59, 63, 67, 74, 76, 82, 96, 99, 101, 106, 109, 118]" +70,"[22, 105, 56, 122, 33, 11, 121, 42, 58, 110, 66, 7, 46, 104, 123, 99, 108, 52, 76, 92, 115, 124, 28, 75, 38, 119, 80, 67, 81, 47, 17, 49, 39, 71, 101, 82, 94, 68, 117, 78, 50, 69, 8, 21, 83, 62, 126, 61, 16, 51, 30, 10, 116, 98, 91, 114, 113, 34, 20, 73, 118, 63, 0, 35]","[39, 72, 40, 105, 126, 25, 93, 120, 29, 81, 7, 99, 102, 19, 97, 50, 90, 121, 57, 18, 41, 22, 86, 51, 95, 11, 8, 104, 80, 34, 92, 17, 61, 84, 124, 52, 33, 58, 116, 122, 38, 68, 0, 83, 44, 30, 49, 66, 73, 13, 27, 56, 28, 70, 101, 78, 62, 94, 53, 69, 63, 125, 67, 24]","[0, 7, 8, 11, 17, 22, 28, 30, 33, 34, 38, 39, 49, 50, 51, 52, 56, 58, 61, 62, 63, 66, 67, 68, 69, 73, 78, 80, 81, 83, 92, 94, 99, 101, 104, 105, 116, 121, 122, 124, 126]" +71,"[46, 93, 57, 66, 9, 83, 126, 120, 95, 16, 118, 42, 90, 37, 39, 96, 85, 31, 3, 17, 10, 45, 114, 100, 58, 87, 116, 106, 78, 113, 89, 51, 19, 86, 111, 105, 65, 53, 59, 55, 88, 84, 44, 82, 68, 27, 121, 11, 26, 108, 63, 30, 48, 12, 110, 15, 77, 29, 73, 20, 56, 119, 8, 32]","[23, 30, 37, 57, 65, 47, 106, 50, 25, 15, 49, 28, 77, 22, 43, 127, 12, 39, 112, 81, 52, 90, 2, 36, 35, 62, 115, 101, 109, 21, 103, 97, 92, 80, 104, 19, 67, 69, 29, 96, 86, 122, 117, 73, 125, 120, 99, 83, 20, 60, 3, 33, 61, 91, 38, 89, 26, 87, 123, 0, 6, 41, 14, 72]","[3, 12, 15, 19, 20, 26, 29, 30, 37, 39, 57, 65, 73, 77, 83, 86, 87, 89, 90, 96, 106, 120]" +72,"[37, 123, 98, 88, 11, 6, 14, 25, 23, 79, 59, 8, 18, 74, 110, 119, 109, 118, 7, 117, 78, 27, 56, 81, 101, 1, 47, 32, 48, 77, 46, 70, 52, 96, 116, 40, 71, 122, 85, 26, 2, 112, 125, 49, 42, 10, 36, 13, 22, 102, 68, 38, 19, 73, 89, 45, 62, 43, 55, 35, 121, 58, 114, 24]","[10, 90, 88, 104, 107, 116, 8, 81, 42, 109, 125, 56, 57, 89, 26, 92, 21, 28, 99, 87, 41, 82, 79, 86, 4, 18, 72, 123, 80, 91, 39, 50, 100, 32, 40, 46, 33, 3, 69, 30, 84, 115, 62, 74, 117, 127, 108, 35, 55, 101, 63, 96, 0, 53, 60, 25, 75, 49, 95, 27, 23, 94, 6, 98]","[6, 8, 10, 18, 23, 25, 26, 27, 32, 35, 40, 42, 46, 49, 55, 56, 62, 74, 79, 81, 88, 89, 96, 98, 101, 109, 116, 117, 123, 125]" +73,"[17, 89, 0, 40, 25, 32, 54, 114, 59, 39, 49, 3, 100, 85, 78, 84, 44, 81, 69, 123, 7, 13, 1, 43, 103, 30, 27, 127, 122, 53, 4, 28, 99, 126, 110, 46, 64, 11, 94, 41, 58, 5, 125, 113, 111, 77, 36, 104, 42, 62, 10, 63, 72, 8, 90, 73, 61, 22, 109, 79, 82, 51, 6, 118]","[96, 9, 18, 83, 81, 22, 84, 98, 38, 122, 35, 27, 29, 36, 106, 10, 37, 66, 21, 76, 56, 57, 101, 16, 53, 55, 59, 24, 60, 74, 12, 8, 95, 92, 67, 121, 97, 80, 126, 11, 87, 34, 25, 104, 33, 113, 105, 2, 116, 124, 119, 70, 71, 72, 39, 115, 93, 100, 88, 31, 107, 117, 85, 3]","[3, 8, 10, 11, 22, 25, 27, 36, 39, 53, 59, 72, 81, 84, 85, 100, 104, 113, 122, 126]" +74,"[74, 110, 68, 46, 84, 86, 98, 6, 10, 23, 116, 48, 117, 59, 31, 109, 36, 51, 55, 27, 29, 14, 20, 40, 124, 106, 47, 9, 2, 42, 71, 26, 92, 11, 44, 115, 111, 24, 101, 50, 70, 28, 17, 65, 76, 78, 81, 89, 94, 1, 122, 121, 39, 72, 45, 100, 112, 102, 62, 113, 126, 18, 38, 88]","[29, 98, 46, 11, 15, 24, 7, 42, 117, 106, 99, 60, 78, 108, 116, 72, 18, 110, 123, 20, 45, 31, 121, 5, 37, 23, 68, 69, 113, 94, 71, 38, 12, 61, 51, 120, 82, 127, 81, 102, 104, 16, 6, 115, 95, 28, 84, 59, 10, 73, 70, 80, 79, 32, 96, 22, 50, 25, 47, 49, 107, 26, 13, 27]","[6, 10, 11, 18, 20, 23, 24, 26, 27, 28, 29, 31, 38, 42, 45, 46, 47, 50, 51, 59, 68, 70, 71, 72, 78, 81, 84, 94, 98, 102, 106, 110, 113, 115, 116, 117, 121]" +75,"[82, 37, 121, 60, 8, 56, 98, 39, 14, 112, 87, 119, 85, 71, 36, 33, 11, 22, 81, 123, 83, 91, 99, 43, 126, 42, 9, 49, 64, 4, 68, 72, 84, 26, 78, 10, 5, 27, 76, 51, 12, 93, 48, 38, 75, 20, 25, 63, 124, 62, 21, 73, 47, 100, 46, 107, 103, 23, 28, 34, 61, 104, 53, 52]","[10, 23, 9, 119, 33, 31, 69, 78, 27, 13, 29, 63, 56, 26, 24, 60, 120, 6, 77, 99, 8, 86, 0, 80, 40, 50, 57, 114, 55, 42, 65, 94, 87, 82, 54, 30, 97, 122, 21, 38, 49, 102, 2, 104, 44, 52, 20, 4, 47, 39, 118, 7, 83, 109, 15, 1, 116, 115, 75, 18, 46, 124, 11, 36]","[4, 8, 9, 10, 11, 20, 21, 23, 26, 27, 33, 36, 38, 39, 42, 46, 47, 49, 52, 56, 60, 63, 75, 78, 82, 83, 87, 99, 104, 119, 124]" +76,"[43, 28, 91, 48, 52, 30, 45, 77, 44, 40, 2, 26, 5, 82, 101, 11, 47, 67, 112, 41, 49, 114, 69, 32, 92, 39, 85, 35, 68, 86, 78, 65, 23, 60, 117, 56, 75, 38, 118, 71, 58, 120, 64, 124, 14, 62, 16, 51, 127, 96, 12, 66, 24, 76, 7, 74, 10, 21, 13, 61, 108, 18, 27, 95]","[107, 57, 42, 11, 2, 45, 93, 7, 59, 83, 27, 112, 10, 21, 95, 26, 98, 104, 110, 60, 48, 18, 115, 71, 1, 3, 4, 116, 76, 75, 82, 25, 38, 100, 96, 28, 113, 47, 94, 5, 15, 24, 87, 55, 111, 105, 56, 6, 97, 92, 99, 80, 20, 117, 125, 37, 90, 119, 54, 123, 31, 50, 19, 0]","[2, 5, 7, 10, 11, 18, 21, 24, 26, 27, 28, 38, 45, 47, 48, 56, 60, 71, 75, 76, 82, 92, 95, 96, 112, 117]" +77,"[52, 40, 0, 107, 60, 91, 103, 81, 121, 85, 31, 72, 1, 80, 125, 63, 68, 109, 61, 76, 55, 22, 7, 111, 108, 93, 14, 39, 33, 15, 74, 12, 53, 106, 48, 71, 120, 46, 87, 100, 27, 102, 99, 126, 35, 62, 9, 38, 114, 64, 56, 86, 59, 84, 5, 36, 42, 25, 13, 66, 6, 49, 101, 50]","[84, 106, 72, 57, 82, 125, 34, 42, 19, 96, 89, 118, 103, 24, 23, 50, 124, 97, 17, 110, 22, 100, 107, 27, 9, 45, 43, 98, 47, 104, 109, 35, 16, 26, 60, 12, 90, 31, 69, 38, 11, 77, 95, 115, 5, 41, 44, 92, 21, 120, 25, 2, 105, 20, 78, 67, 123, 81, 83, 113, 51, 10, 122, 74]","[5, 9, 12, 22, 25, 27, 31, 35, 38, 42, 50, 60, 72, 74, 81, 84, 100, 103, 106, 107, 109, 120, 125]" +78,"[38, 19, 81, 65, 13, 100, 120, 33, 64, 66, 113, 63, 101, 107, 123, 46, 79, 109, 114, 7, 3, 91, 124, 35, 111, 60, 47, 68, 57, 4, 27, 110, 10, 5, 77, 62, 115, 117, 54, 84, 75, 44, 59, 72, 98, 83, 73, 92, 28, 82, 6, 99, 76, 58, 49, 88, 103, 9, 94, 22, 50, 40, 121, 21]","[108, 32, 116, 59, 4, 79, 104, 29, 97, 46, 100, 115, 98, 114, 83, 122, 20, 60, 7, 102, 15, 119, 35, 37, 63, 33, 21, 109, 62, 84, 85, 39, 31, 110, 44, 23, 72, 25, 61, 75, 28, 52, 55, 27, 89, 117, 17, 105, 86, 91, 53, 64, 40, 45, 6, 2, 80, 81, 47, 16, 54, 42, 120, 3]","[3, 4, 6, 7, 21, 27, 28, 33, 35, 40, 44, 46, 47, 54, 59, 60, 62, 63, 64, 72, 75, 79, 81, 83, 84, 91, 98, 100, 109, 110, 114, 115, 117, 120]" +79,"[53, 29, 12, 87, 104, 41, 63, 74, 73, 31, 92, 33, 69, 42, 46, 25, 19, 54, 101, 97, 52, 20, 39, 66, 7, 3, 55, 88, 32, 64, 28, 76, 40, 30, 44, 16, 102, 61, 113, 10, 95, 108, 37, 118, 116, 14, 77, 58, 91, 106, 62, 109, 18, 86, 59, 111, 78, 47, 21, 107, 49, 56, 115, 51]","[55, 59, 126, 89, 115, 105, 51, 107, 22, 108, 30, 100, 69, 40, 80, 91, 21, 66, 127, 12, 31, 24, 53, 7, 36, 8, 41, 117, 102, 85, 17, 120, 3, 68, 83, 38, 42, 43, 98, 58, 28, 99, 97, 9, 35, 103, 62, 44, 113, 118, 37, 49, 20, 106, 56, 10, 57, 114, 112, 104, 64, 82, 39, 73]","[3, 7, 10, 12, 20, 21, 28, 30, 31, 37, 39, 40, 41, 42, 44, 49, 51, 53, 55, 56, 58, 59, 62, 64, 66, 69, 73, 91, 97, 102, 104, 106, 107, 108, 113, 115, 118]" +80,"[16, 82, 98, 73, 97, 48, 8, 90, 104, 114, 120, 0, 34, 68, 38, 95, 46, 4, 74, 18, 6, 77, 111, 96, 50, 14, 3, 59, 28, 94, 62, 1, 9, 126, 30, 70, 78, 10, 39, 33, 81, 117, 84, 12, 122, 42, 118, 32, 103, 87, 85, 5, 112, 58, 123, 110, 109, 26, 54, 83, 105, 102, 31, 44]","[110, 4, 60, 31, 0, 28, 74, 59, 125, 48, 61, 87, 95, 54, 118, 94, 83, 45, 90, 38, 91, 73, 109, 78, 82, 51, 46, 2, 16, 85, 18, 10, 92, 56, 43, 111, 9, 70, 79, 8, 93, 3, 98, 50, 63, 53, 75, 96, 34, 104, 27, 126, 105, 84, 62, 39, 114, 42, 6, 113, 58, 29, 1, 44]","[0, 1, 3, 4, 6, 8, 9, 10, 16, 18, 28, 31, 34, 38, 39, 42, 44, 46, 48, 50, 54, 58, 59, 62, 70, 73, 74, 78, 82, 83, 84, 85, 87, 90, 94, 95, 96, 98, 104, 105, 109, 110, 111, 114, 118, 126]" +81,"[52, 46, 35, 22, 33, 103, 21, 19, 54, 40, 28, 27, 77, 127, 9, 44, 16, 39, 53, 29, 30, 65, 23, 70, 55, 118, 72, 6, 24, 0, 62, 32, 38, 69, 63, 47, 79, 67, 13, 20, 41, 66, 105, 64, 14, 112, 85, 25, 60, 100, 1, 59, 106, 113, 50, 17, 88, 82, 76, 80, 26, 92, 89, 49]","[5, 66, 94, 21, 15, 16, 85, 92, 47, 107, 105, 98, 77, 38, 99, 90, 14, 96, 45, 53, 35, 95, 42, 80, 32, 3, 9, 44, 57, 29, 91, 18, 59, 74, 33, 116, 119, 37, 4, 83, 97, 40, 52, 86, 121, 30, 76, 87, 36, 72, 54, 114, 126, 109, 17, 55, 62, 117, 102, 100, 78, 43, 101, 68]","[9, 14, 16, 17, 21, 29, 30, 32, 33, 35, 38, 40, 44, 47, 52, 53, 54, 55, 59, 62, 66, 72, 76, 77, 80, 85, 92, 100, 105]" +82,"[0, 9, 96, 11, 39, 70, 64, 105, 29, 80, 45, 82, 27, 117, 90, 46, 121, 99, 97, 42, 107, 66, 119, 108, 37, 26, 51, 8, 18, 3, 50, 47, 76, 106, 91, 24, 69, 58, 15, 12, 75, 49, 85, 7, 112, 118, 34, 55, 25, 30, 120, 38, 72, 5, 84, 104, 53, 102, 67, 101, 74, 62, 110, 71]","[27, 126, 16, 28, 50, 124, 117, 0, 7, 94, 88, 59, 18, 13, 81, 22, 25, 111, 23, 63, 47, 87, 41, 17, 20, 67, 127, 14, 61, 73, 15, 33, 85, 103, 105, 71, 56, 52, 57, 35, 83, 6, 82, 115, 86, 70, 1, 60, 21, 68, 4, 75, 26, 65, 116, 11, 9, 64, 36, 37, 100, 122, 93, 79]","[0, 7, 9, 11, 15, 18, 25, 26, 27, 37, 47, 50, 64, 67, 70, 71, 75, 82, 85, 105, 117]" +83,"[5, 3, 19, 26, 63, 92, 123, 86, 83, 121, 29, 60, 100, 0, 47, 61, 41, 126, 68, 94, 115, 111, 73, 93, 50, 10, 1, 64, 84, 37, 95, 116, 96, 51, 108, 15, 11, 62, 13, 55, 30, 57, 72, 8, 45, 104, 118, 23, 79, 103, 39, 90, 32, 78, 66, 122, 80, 88, 74, 124, 40, 54, 35, 76]","[63, 96, 39, 71, 15, 111, 87, 83, 95, 86, 54, 26, 122, 0, 22, 115, 66, 10, 107, 73, 58, 61, 91, 32, 90, 14, 34, 37, 44, 88, 93, 57, 70, 64, 40, 33, 74, 78, 46, 41, 84, 2, 82, 110, 77, 104, 5, 102, 3, 113, 125, 1, 116, 29, 9, 30, 59, 51, 72, 126, 108, 45, 120, 62]","[0, 1, 3, 5, 10, 15, 26, 29, 30, 32, 37, 39, 40, 41, 45, 51, 54, 57, 61, 62, 63, 64, 66, 72, 73, 74, 78, 83, 84, 86, 88, 90, 93, 95, 96, 104, 108, 111, 115, 116, 122, 126]" +84,"[110, 117, 67, 83, 25, 2, 27, 123, 127, 59, 57, 95, 68, 118, 73, 124, 50, 63, 71, 12, 8, 46, 106, 3, 7, 1, 16, 40, 49, 77, 55, 15, 94, 89, 125, 0, 108, 4, 80, 38, 10, 85, 79, 122, 9, 61, 11, 22, 105, 58, 18, 75, 92, 45, 69, 23, 62, 41, 26, 51, 24, 35, 52, 33]","[105, 12, 99, 67, 110, 4, 95, 8, 119, 46, 41, 103, 88, 73, 80, 111, 62, 7, 9, 24, 78, 10, 18, 21, 30, 123, 32, 19, 81, 116, 40, 36, 113, 27, 3, 37, 109, 55, 85, 1, 92, 26, 127, 106, 72, 101, 98, 38, 91, 44, 39, 22, 25, 104, 66, 75, 20, 45, 33, 120, 93, 34, 59, 108]","[1, 3, 4, 7, 8, 9, 10, 12, 18, 22, 24, 25, 26, 27, 33, 38, 40, 41, 45, 46, 55, 59, 62, 67, 73, 75, 80, 85, 92, 95, 105, 106, 108, 110, 123, 127]" +85,"[6, 67, 36, 125, 62, 56, 64, 7, 49, 103, 115, 52, 66, 13, 21, 93, 27, 110, 82, 58, 20, 16, 108, 17, 61, 2, 98, 121, 23, 92, 102, 107, 45, 78, 19, 120, 100, 112, 8, 40, 46, 55, 14, 122, 50, 124, 63, 3, 41, 90, 91, 15, 35, 9, 59, 42, 60, 76, 88, 39, 33, 0, 53, 80]","[19, 33, 82, 51, 103, 22, 64, 116, 52, 63, 127, 55, 72, 7, 100, 0, 20, 89, 3, 99, 113, 92, 115, 59, 40, 44, 28, 6, 101, 14, 80, 102, 11, 123, 56, 10, 76, 73, 50, 57, 43, 38, 18, 36, 15, 74, 16, 13, 37, 94, 24, 12, 84, 107, 61, 91, 39, 60, 62, 21, 49, 77, 122, 2]","[0, 2, 3, 6, 7, 13, 14, 15, 16, 19, 20, 21, 33, 36, 39, 40, 49, 50, 52, 55, 56, 59, 60, 61, 62, 63, 64, 76, 80, 82, 91, 92, 100, 102, 103, 107, 115, 122]" +86,"[10, 119, 45, 90, 12, 86, 66, 39, 99, 94, 97, 82, 52, 72, 120, 15, 65, 81, 30, 114, 76, 42, 61, 79, 26, 105, 27, 75, 123, 83, 98, 64, 11, 122, 6, 43, 8, 40, 41, 55, 23, 74, 58, 3, 31, 95, 13, 49, 17, 84, 77, 54, 51, 108, 89, 1, 0, 29, 63, 111, 22, 33, 24, 35]","[19, 100, 87, 102, 92, 73, 58, 112, 53, 35, 70, 52, 107, 119, 106, 48, 26, 85, 2, 47, 34, 14, 6, 117, 80, 4, 104, 12, 91, 13, 20, 56, 113, 96, 84, 18, 126, 38, 121, 60, 88, 114, 69, 46, 116, 97, 16, 71, 9, 124, 93, 120, 22, 109, 42, 29, 10, 44, 118, 63, 67, 15, 21, 11]","[6, 10, 11, 12, 13, 15, 22, 26, 29, 35, 42, 52, 58, 63, 84, 97, 114, 119, 120]" +87,"[47, 94, 0, 113, 89, 21, 105, 77, 80, 114, 12, 53, 64, 70, 10, 35, 123, 118, 30, 119, 85, 23, 111, 101, 8, 54, 125, 59, 60, 13, 14, 49, 124, 42, 65, 120, 74, 62, 108, 18, 103, 90, 9, 46, 121, 11, 81, 22, 16, 25, 93, 63, 33, 107, 102, 1, 40, 76, 45, 88, 73, 37, 7, 5]","[107, 92, 77, 102, 91, 87, 79, 76, 22, 116, 44, 111, 2, 29, 0, 51, 31, 47, 52, 10, 104, 20, 26, 112, 68, 36, 106, 14, 120, 86, 64, 95, 19, 78, 83, 118, 127, 59, 62, 71, 84, 73, 56, 80, 25, 9, 89, 35, 41, 40, 17, 61, 66, 98, 32, 37, 8, 69, 115, 109, 34, 75, 27, 21]","[0, 8, 9, 10, 14, 21, 22, 25, 35, 37, 40, 47, 59, 62, 64, 73, 76, 77, 80, 89, 102, 107, 111, 118, 120]" +88,"[71, 50, 28, 79, 54, 57, 45, 22, 65, 80, 18, 44, 67, 113, 127, 126, 91, 7, 14, 99, 58, 47, 51, 69, 4, 27, 77, 73, 110, 119, 60, 88, 97, 68, 115, 46, 81, 39, 106, 52, 29, 6, 42, 5, 86, 55, 66, 95, 104, 124, 123, 103, 90, 26, 108, 63, 24, 10, 61, 25, 17, 116, 83, 8]","[119, 88, 13, 76, 52, 102, 14, 97, 47, 50, 46, 85, 94, 112, 23, 96, 19, 83, 99, 7, 21, 26, 116, 71, 103, 6, 24, 73, 78, 8, 65, 45, 126, 56, 51, 124, 91, 106, 55, 109, 122, 68, 75, 22, 15, 113, 107, 74, 9, 29, 38, 63, 84, 53, 79, 58, 48, 81, 104, 54, 77, 34, 28, 80]","[6, 7, 8, 14, 22, 24, 26, 28, 29, 45, 46, 47, 50, 51, 52, 54, 55, 58, 63, 65, 68, 71, 73, 77, 79, 80, 81, 83, 88, 91, 97, 99, 103, 104, 106, 113, 116, 119, 124, 126]" +89,"[101, 65, 94, 68, 0, 96, 37, 81, 79, 107, 60, 109, 3, 11, 78, 36, 38, 52, 14, 41, 71, 23, 64, 93, 45, 21, 48, 54, 120, 6, 83, 43, 34, 121, 56, 63, 51, 61, 2, 115, 104, 40, 95, 17, 44, 55, 114, 4, 80, 39, 12, 99, 16, 8, 35, 32, 86, 91, 72, 5, 18, 15, 97, 59]","[83, 13, 45, 6, 66, 108, 5, 124, 99, 35, 119, 10, 43, 107, 94, 82, 15, 86, 65, 81, 95, 16, 101, 80, 4, 97, 56, 72, 39, 0, 77, 102, 69, 37, 122, 91, 114, 74, 41, 89, 11, 113, 64, 32, 21, 61, 53, 90, 63, 24, 48, 71, 60, 93, 120, 59, 20, 54, 23, 123, 7, 76, 36, 46]","[0, 4, 5, 6, 11, 15, 16, 21, 23, 32, 35, 36, 37, 39, 41, 43, 45, 48, 54, 56, 59, 60, 61, 63, 64, 65, 71, 72, 80, 81, 83, 86, 91, 93, 94, 95, 97, 99, 101, 107, 114, 120]" +90,"[25, 2, 118, 120, 0, 53, 21, 7, 55, 117, 37, 97, 72, 94, 122, 88, 29, 13, 24, 91, 19, 115, 27, 34, 4, 75, 112, 65, 116, 119, 31, 80, 42, 82, 79, 78, 111, 33, 93, 85, 41, 48, 49, 123, 95, 64, 108, 92, 32, 106, 12, 105, 38, 46, 124, 103, 77, 26, 30, 125, 8, 23, 16, 74]","[13, 28, 15, 70, 55, 76, 87, 24, 22, 119, 123, 20, 122, 92, 31, 35, 126, 98, 30, 14, 29, 68, 88, 115, 42, 41, 1, 57, 83, 8, 97, 54, 85, 21, 81, 113, 19, 109, 63, 37, 40, 51, 27, 104, 34, 3, 32, 79, 121, 18, 58, 59, 25, 0, 103, 16, 11, 6, 67, 84, 45, 73, 106, 5]","[0, 8, 13, 16, 19, 21, 24, 25, 27, 29, 30, 31, 32, 34, 37, 41, 42, 55, 79, 85, 88, 92, 97, 103, 106, 115, 119, 122, 123]" +91,"[15, 24, 121, 26, 100, 32, 107, 19, 48, 2, 49, 4, 0, 104, 94, 101, 5, 82, 86, 14, 90, 40, 22, 55, 20, 71, 97, 125, 98, 16, 119, 85, 6, 41, 117, 61, 63, 58, 37, 73, 12, 120, 17, 50, 127, 38, 66, 45, 109, 80, 115, 84, 88, 29, 54, 76, 99, 89, 11, 79, 59, 75, 23, 42]","[59, 34, 95, 14, 104, 20, 121, 127, 36, 19, 50, 76, 49, 63, 65, 97, 116, 66, 94, 17, 93, 84, 120, 55, 3, 16, 100, 107, 82, 69, 33, 83, 109, 7, 105, 12, 41, 64, 71, 67, 37, 23, 91, 10, 26, 38, 62, 115, 24, 72, 112, 98, 40, 117, 35, 99, 22, 45, 101, 48, 15, 47, 8, 1]","[12, 14, 15, 16, 17, 19, 20, 22, 23, 24, 26, 37, 38, 40, 41, 45, 48, 49, 50, 55, 59, 63, 66, 71, 76, 82, 84, 94, 97, 98, 99, 100, 101, 104, 107, 109, 115, 117, 120, 121, 127]" +92,"[8, 52, 23, 16, 2, 66, 123, 94, 4, 31, 24, 44, 28, 75, 113, 82, 17, 53, 98, 124, 117, 45, 99, 87, 6, 57, 102, 15, 108, 37, 0, 114, 120, 9, 126, 46, 71, 116, 25, 49, 65, 110, 12, 92, 50, 21, 88, 18, 26, 90, 11, 68, 77, 14, 51, 33, 104, 72, 109, 69, 40, 81, 61, 34]","[100, 1, 76, 125, 54, 82, 67, 45, 2, 127, 116, 123, 6, 52, 0, 41, 124, 27, 77, 58, 57, 72, 25, 104, 8, 75, 5, 34, 30, 9, 91, 51, 95, 15, 113, 71, 35, 79, 87, 73, 24, 83, 126, 110, 66, 90, 49, 117, 16, 81, 31, 50, 23, 37, 120, 43, 68, 106, 40, 46, 55, 26, 85, 109]","[0, 2, 6, 8, 9, 15, 16, 23, 24, 25, 26, 31, 34, 37, 40, 45, 46, 49, 50, 51, 52, 57, 66, 68, 71, 72, 75, 77, 81, 82, 87, 90, 104, 109, 110, 113, 116, 117, 120, 123, 124, 126]" +93,"[18, 26, 30, 96, 37, 115, 48, 29, 31, 42, 24, 64, 47, 81, 8, 41, 59, 14, 25, 105, 110, 52, 70, 17, 10, 127, 54, 76, 124, 88, 82, 63, 67, 9, 100, 90, 92, 84, 0, 66, 51, 79, 68, 20, 97, 72, 62, 28, 60, 7, 33, 65, 95, 35, 5, 23, 119, 2, 106, 108, 102, 22, 123, 12]","[67, 110, 62, 63, 65, 7, 2, 119, 120, 98, 125, 86, 123, 93, 5, 91, 77, 37, 89, 108, 39, 69, 117, 3, 54, 97, 112, 101, 68, 25, 48, 87, 53, 116, 94, 51, 72, 103, 84, 109, 22, 99, 49, 27, 26, 4, 104, 118, 80, 96, 111, 126, 0, 81, 33, 113, 71, 31, 47, 32, 73, 107, 50, 15]","[0, 2, 5, 7, 22, 25, 26, 31, 33, 37, 47, 48, 51, 54, 62, 63, 65, 67, 68, 72, 81, 84, 96, 97, 108, 110, 119, 123]" +94,"[17, 84, 49, 51, 65, 67, 123, 90, 20, 35, 44, 11, 79, 94, 62, 110, 25, 3, 80, 113, 5, 64, 7, 32, 16, 59, 19, 100, 4, 78, 0, 29, 2, 86, 24, 27, 102, 58, 47, 82, 45, 68, 42, 37, 112, 55, 34, 14, 96, 85, 39, 116, 66, 77, 56, 125, 74, 88, 63, 48, 87, 26, 106, 69]","[85, 25, 15, 44, 68, 0, 17, 3, 49, 96, 9, 113, 55, 67, 121, 110, 107, 91, 59, 5, 7, 57, 102, 92, 119, 48, 109, 56, 62, 123, 101, 53, 90, 118, 87, 122, 19, 14, 74, 72, 76, 26, 112, 43, 79, 60, 42, 29, 77, 51, 47, 31, 106, 86, 18, 39, 20, 64, 32, 78, 1, 84, 16, 65]","[0, 3, 5, 7, 14, 16, 17, 19, 20, 25, 26, 29, 32, 39, 42, 44, 47, 48, 49, 51, 55, 56, 59, 62, 64, 65, 67, 68, 74, 77, 78, 79, 84, 85, 86, 87, 90, 96, 102, 106, 110, 112, 113, 123]" +95,"[123, 63, 33, 14, 0, 47, 6, 29, 70, 1, 85, 26, 19, 23, 112, 10, 51, 17, 104, 36, 82, 55, 27, 60, 81, 125, 64, 94, 5, 2, 22, 101, 15, 28, 41, 119, 62, 77, 67, 42, 120, 116, 127, 24, 48, 11, 97, 69, 39, 37, 89, 110, 103, 115, 3, 43, 49, 58, 32, 106, 122, 95, 53, 46]","[2, 80, 104, 109, 21, 7, 91, 123, 37, 78, 41, 35, 22, 33, 38, 4, 47, 34, 114, 108, 56, 81, 8, 39, 43, 124, 51, 0, 71, 113, 83, 3, 74, 87, 26, 59, 73, 10, 95, 52, 20, 17, 119, 99, 53, 58, 121, 107, 65, 111, 93, 69, 96, 49, 127, 29, 25, 18, 105, 50, 13, 100, 30, 40]","[0, 2, 3, 10, 17, 22, 26, 29, 33, 37, 39, 41, 43, 47, 49, 51, 53, 58, 69, 81, 95, 104, 119, 123, 127]" +96,"[19, 119, 55, 69, 33, 44, 6, 88, 20, 62, 8, 41, 3, 71, 101, 26, 65, 22, 53, 77, 84, 100, 57, 106, 5, 47, 80, 16, 114, 116, 112, 32, 12, 79, 60, 102, 35, 70, 87, 117, 11, 83, 66, 10, 113, 120, 61, 0, 118, 90, 108, 98, 68, 39, 36, 54, 111, 31, 7, 28, 86, 92, 126, 23]","[50, 84, 88, 29, 43, 107, 40, 68, 72, 123, 4, 93, 57, 85, 30, 124, 78, 18, 69, 81, 13, 115, 103, 109, 38, 110, 19, 79, 113, 5, 3, 89, 2, 53, 24, 102, 25, 125, 15, 116, 86, 1, 64, 112, 94, 61, 96, 49, 91, 67, 32, 73, 90, 59, 83, 63, 34, 7, 121, 28, 42, 122, 71, 16]","[3, 5, 7, 16, 19, 28, 32, 53, 57, 61, 68, 69, 71, 79, 83, 84, 86, 88, 90, 102, 112, 113, 116]" +97,"[32, 52, 10, 96, 43, 70, 103, 100, 55, 119, 28, 98, 41, 67, 54, 71, 66, 3, 15, 81, 9, 104, 97, 108, 22, 34, 42, 106, 1, 86, 61, 78, 21, 76, 4, 127, 40, 107, 5, 7, 112, 75, 74, 8, 57, 14, 6, 17, 90, 117, 44, 27, 20, 115, 83, 85, 63, 16, 51, 69, 60, 38, 53, 13]","[81, 79, 75, 58, 97, 77, 83, 90, 7, 54, 29, 37, 6, 118, 43, 107, 22, 96, 88, 15, 127, 3, 51, 10, 69, 80, 71, 17, 27, 101, 111, 95, 31, 0, 94, 1, 100, 82, 116, 52, 72, 41, 59, 113, 16, 34, 28, 18, 67, 122, 114, 86, 33, 9, 103, 73, 64, 119, 13, 87, 14, 76, 12, 106]","[1, 3, 6, 7, 9, 10, 13, 14, 15, 16, 17, 22, 27, 28, 34, 41, 43, 51, 52, 54, 67, 69, 71, 75, 76, 81, 83, 86, 90, 96, 97, 100, 103, 106, 107, 119, 127]" +98,"[108, 111, 30, 21, 113, 120, 70, 0, 72, 78, 41, 82, 54, 6, 89, 20, 22, 96, 115, 87, 61, 52, 116, 64, 66, 34, 65, 74, 118, 7, 50, 60, 59, 24, 126, 5, 16, 18, 51, 71, 104, 124, 28, 69, 1, 33, 79, 48, 95, 42, 122, 25, 81, 105, 43, 67, 77, 100, 36, 31, 107, 56, 2, 37]","[34, 12, 76, 98, 82, 96, 102, 70, 75, 113, 116, 125, 106, 63, 122, 3, 10, 57, 49, 84, 6, 72, 11, 83, 118, 37, 52, 31, 20, 4, 123, 46, 62, 108, 38, 69, 54, 25, 95, 119, 126, 100, 45, 124, 103, 71, 51, 41, 115, 67, 50, 86, 53, 78, 88, 42, 21, 2, 87, 13, 28, 39, 1, 81]","[1, 2, 6, 20, 21, 25, 28, 31, 34, 37, 41, 42, 50, 51, 52, 54, 67, 69, 70, 71, 72, 78, 81, 82, 87, 95, 96, 100, 108, 113, 115, 116, 118, 122, 124, 126]" +99,"[58, 108, 54, 110, 77, 65, 56, 98, 83, 99, 61, 12, 15, 116, 14, 67, 103, 63, 17, 39, 104, 51, 52, 5, 100, 49, 76, 48, 41, 25, 35, 111, 43, 81, 23, 47, 62, 127, 1, 88, 26, 69, 75, 85, 7, 24, 18, 112, 66, 71, 42, 73, 40, 107, 64, 87, 11, 9, 109, 45, 0, 31, 28, 29]","[46, 63, 9, 89, 111, 26, 101, 98, 84, 122, 53, 83, 42, 37, 4, 5, 79, 24, 92, 113, 57, 117, 126, 16, 121, 82, 114, 103, 70, 34, 115, 48, 6, 93, 15, 87, 107, 124, 66, 68, 97, 74, 60, 0, 32, 102, 10, 95, 105, 21, 120, 88, 2, 52, 33, 47, 86, 123, 55, 119, 96, 50, 14, 59]","[0, 5, 9, 14, 15, 24, 26, 42, 47, 48, 52, 63, 66, 83, 87, 88, 98, 103, 107, 111]" diff --git a/examples/set_intersection/set_intersection_064.py b/examples/set_intersection/set_intersection_064.py new file mode 100644 index 0000000..3bce8cd --- /dev/null +++ b/examples/set_intersection/set_intersection_064.py @@ -0,0 +1,760 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# The source code is adapted from the sorting source code written by +# Nils Blach. +# +# main author: Robert Gerstenberger + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + +from . import utils + + +class SetIntersectionPrompter(prompter.Prompter): + """ + SetIntersectionPrompter provides the generation of prompts specific to the + set intersection example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + intersection_prompt = """ Find the intersection of two sets of numbers. Output only the set of numbers that are present in both sets, no additional text. + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Output: [40, 15, 5, 24, 35, 59, 16, 63] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Output: [115, 35, 90, 117, 63, 40, 30, 33, 15, 89, 50, 12, 2, 84, 7, 57, 96] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + intersection_prompt_cot = """ Find the intersection of two sets of numbers. You can generate any intermediate solutions, but the final output should be the set of numbers that are present in both sets, prefixed with "Output: ". + + +To find the intersection of the two sets follow these steps: +1. Split the second input set of numbers into two to four subsets, each containing an equal number of elements from the original set (make sure they don't overlap). +2. For each subset find the set of numbers that are present in the subset and the first input set. +3. Merge the resulting sets into a single output set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Subsets of Input Set 2: +[25, 24, 10, 4, 27, 0, 14, 12] +[8, 2, 29, 20, 17, 19, 26, 23] +Intersected Subsets with Input Set 1: +[24, 10] +[8, 20] +Output: [24, 10, 8, 20] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Subsets of Input Set 2: +[16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53] +[58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Intersected Subsets with Input Set 1: +[16, 15, 5, 24] +[35, 63, 40, 59] +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Subsets of Input Set 2: +[13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122] +[85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12] +[65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81] +[124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Intersected Subsets with Input Set 1: +[35, 96] +[15, 33, 57, 30, 89, 12] +[84, 40, 7, 50, 90] +[63, 117, 115, 2] +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + tot_improve_prompt = """ The following three sets represent two sets and an intersection set of those two sets. The intersection set is not correct. Fix the intersection set so that it is correct. +Make sure that the numbers in the intersection set can be found in both input sets. + + +To fix the incorrectly intersection set follow these steps: +1. Check for each number in the incorrect intersection set, whether it can be found in both input sets. If not, remove that number from the intersection set. +2. Iterate through the second input set and check whether each number is already in the incorrect intersection set and if not, check whether that number can also be found in the first input set. If so, add that number to the intersection set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Incorrect Intersection Set: [24, 20, 25] +Reason: The incorrect intersection set contains the number 25, which is not present in the first input set and is missing the numbers 10 and 8. +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Incorrect Intersection Set: [57, 16, 15, 24, 35, 10, 40] +Reason: The incorrect intersection set contains the numbers 57, which is not present in the second input set, and 10, which is not present in the first input set, and is missing the numbers 5, 63 and 59. +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Incorrect Intersection Set: [35, 96, 44, 15, 33, 57, 30, 50, 90, 119, 123, 63, 117, 115, 2] +Reason: The incorrect intersection set contains the numbers 44 and 119, which are not present in the second input set, and 123, which is not present in the first input set, and is missing the numbers 89, 12, 84, 40 and 7. +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2} +Incorrect Intersection Set: {incorrect_intersection} +""" + + got_split_prompt = """ Split the following list of 64 numbers into 4 lists of 16 numbers each, the first list should contain the first 16 numbers, the second list the second 16 numbers, the third list the third 16 numbers and the fourth list the fourth 16 numbers. +Only output the 4 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [13, 35, 20, 96, 34, 18, 47, ...], + "List 2": [127, 126, 9, 21, 16, 77, 22, ...], + "List 3": [111, 122, 85, 73, 42, 105, 123, ...], + "List 4": [15, 33, 59, 67, 57, 104, 8, ...] +}} + + +Input: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Output: +{{ + "List 1": [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1], + "List 2": [118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29], + "List 3": [58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98], + "List 4": [52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 lists of length {length1} each, into one list of length {length2} by appending the second list to the first list. +Only output the final list without any additional text or thoughts! + +List 1: {input1} +List 2: {input2} +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + else: + length = 32 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, + num_branches: int, + set1: str, + set2: str, + current: str, + method: str, + **kwargs, + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param set1: First input set. + :type set1: str + :param set2: Second input set. + :type set2: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if method.startswith("io"): + return self.intersection_prompt.format(set1=set1, set2=set2) + elif method.startswith("cot"): + return self.intersection_prompt_cot.format(set1=set1, set2=set2) + elif method.startswith("tot"): + if current is None or current == "": + return self.intersection_prompt.format(set1=set1, set2=set2) + return self.tot_improve_prompt.format( + set1=set1, set2=set2, incorrect_intersection=current + ) + elif method.startswith("got"): + if kwargs["phase"] == 0: + return self.got_split_prompt.format(input=set2) + + input_set = set2 + if "subset" in kwargs and kwargs["subset"] != "": + input_set = kwargs["subset"] + + return self.intersection_prompt.format(set1=set1, set2=input_set) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SetIntersectionParser(parser.Parser): + """ + SetIntersectionParser provides the parsing of language model reponses + specific to the set intersection example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_subsets = states[0]["subset"][:-1] + ", " + states[1]["subset"][1:] + new_state = states[0].copy() + new_state["current"] = answer + new_state["subset"] = merged_subsets + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + + new_states = [] + for text in texts: + if state["method"].startswith("got") and state["phase"] == 0: + # We expect a json which contains the two lists named "List 1" and "List 2" + # cut everything until the opening bracket and everything after the closing bracket + + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 4: + logging.warning( + f"Expected 4 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = "" + new_state["subset"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(3): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(6): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(1, 1) + operations_graph.append_operation(plans) # generate the sublists + solved_subsets = [] + for i in range(1, 5): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + intersected_subset = operations.Generate(1, 5) + intersected_subset.add_predecessor(sub_list) + operations_graph.add_operation(intersected_subset) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(intersected_subset) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + solved_subsets.append(keep_best_sub_list) + + aggregate_1 = operations.Aggregate(10) + aggregate_1.add_predecessor(solved_subsets[0]) + aggregate_1.add_predecessor(solved_subsets[1]) + operations_graph.add_operation(aggregate_1) + score_aggregate_1 = operations.Score(1, False, utils.num_errors) + score_aggregate_1.add_predecessor(aggregate_1) + operations_graph.add_operation(score_aggregate_1) + keep_best_aggregate_1 = operations.KeepBestN(1, False) + keep_best_aggregate_1.add_predecessor(score_aggregate_1) + operations_graph.add_operation(keep_best_aggregate_1) + + aggregate_2 = operations.Aggregate(10) + aggregate_2.add_predecessor(solved_subsets[2]) + aggregate_2.add_predecessor(solved_subsets[3]) + operations_graph.add_operation(aggregate_2) + score_aggregate_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_2.add_predecessor(aggregate_2) + operations_graph.add_operation(score_aggregate_2) + keep_best_aggregate_2 = operations.KeepBestN(1, False) + keep_best_aggregate_2.add_predecessor(score_aggregate_2) + operations_graph.add_operation(keep_best_aggregate_2) + + final_aggregate = operations.Aggregate(10) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "set_intersection_064.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2], row[3]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + # create a results directory for the method + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]} {data[2]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SetIntersectionPrompter(), + SetIntersectionParser(), + { + "set1": data[1], + "set2": data[2], + "result": data[3], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input(x) : a list of 64 numbers between 0 and 127 (inclusive) + Input(y) : a list of 64 numbers between 0 and 127 (inclusive) + Output(z) : a list of the intersection between x and y + Correct : z = intersection(x, y) + Input Example: + [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] + [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] + Output Example: + [40, 15, 5, 24, 35, 59, 16, 63] + """ + + budget = 15 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/set_intersection/set_intersection_128.csv b/examples/set_intersection/set_intersection_128.csv new file mode 100644 index 0000000..f0aa2f8 --- /dev/null +++ b/examples/set_intersection/set_intersection_128.csv @@ -0,0 +1,101 @@ +ID,SET1,SET2,INTERSECTION +0,"[132, 75, 157, 25, 199, 202, 147, 109, 221, 110, 220, 251, 213, 11, 224, 101, 200, 170, 155, 71, 119, 122, 39, 1, 29, 113, 189, 212, 10, 219, 49, 28, 151, 40, 103, 8, 145, 214, 114, 91, 175, 107, 152, 163, 148, 246, 176, 181, 18, 106, 74, 115, 144, 0, 205, 121, 46, 234, 142, 223, 228, 162, 96, 97, 130, 156, 172, 241, 33, 186, 137, 150, 65, 161, 226, 116, 111, 12, 146, 38, 167, 4, 108, 169, 61, 93, 190, 252, 22, 31, 3, 9, 13, 35, 23, 141, 129, 198, 85, 84, 62, 158, 201, 67, 117, 59, 41, 191, 56, 90, 51, 227, 143, 83, 184, 174, 125, 98, 232, 238, 57, 225, 54, 179, 177, 237, 37, 95]","[27, 162, 187, 254, 128, 227, 2, 165, 143, 109, 140, 46, 160, 26, 139, 171, 42, 199, 207, 30, 205, 117, 213, 48, 40, 212, 185, 196, 197, 94, 136, 35, 229, 193, 36, 7, 15, 43, 4, 203, 142, 144, 49, 31, 240, 124, 116, 69, 37, 250, 95, 105, 103, 168, 126, 64, 73, 206, 24, 157, 135, 118, 34, 134, 45, 62, 153, 5, 47, 239, 216, 222, 80, 231, 102, 21, 57, 215, 149, 141, 236, 32, 188, 204, 194, 23, 233, 83, 154, 210, 159, 70, 202, 253, 20, 71, 166, 242, 221, 228, 78, 230, 29, 145, 147, 81, 104, 235, 66, 100, 131, 132, 244, 195, 68, 72, 53, 182, 79, 248, 3, 82, 211, 173, 180, 17, 77, 51]","[3, 4, 23, 29, 31, 35, 37, 40, 46, 49, 51, 57, 62, 71, 83, 95, 103, 109, 116, 117, 132, 141, 142, 143, 144, 145, 147, 157, 162, 199, 202, 205, 212, 213, 221, 227, 228]" +1,"[95, 68, 8, 76, 195, 92, 25, 19, 109, 146, 36, 2, 191, 164, 200, 189, 113, 203, 45, 52, 244, 210, 167, 91, 133, 139, 231, 202, 93, 22, 158, 239, 39, 94, 97, 40, 6, 213, 56, 16, 153, 14, 145, 172, 182, 226, 161, 130, 174, 44, 84, 112, 99, 204, 105, 64, 227, 198, 196, 42, 38, 129, 4, 208, 107, 70, 47, 49, 243, 178, 28, 148, 125, 80, 55, 104, 132, 90, 100, 175, 229, 185, 46, 154, 187, 63, 18, 184, 241, 12, 31, 218, 29, 72, 21, 255, 103, 150, 83, 73, 89, 71, 157, 11, 9, 188, 220, 65, 140, 27, 162, 66, 119, 116, 152, 205, 143, 147, 61, 88, 235, 5, 141, 33, 75, 13, 102, 128]","[239, 240, 54, 97, 1, 39, 70, 25, 125, 243, 155, 19, 115, 133, 213, 227, 31, 29, 130, 40, 203, 209, 174, 64, 36, 128, 161, 83, 57, 139, 107, 212, 112, 90, 147, 149, 14, 118, 129, 42, 110, 188, 235, 16, 51, 108, 92, 73, 196, 158, 126, 113, 79, 208, 71, 63, 103, 167, 109, 255, 91, 10, 181, 6, 68, 238, 191, 189, 201, 156, 20, 43, 220, 205, 144, 215, 4, 162, 74, 18, 183, 185, 67, 194, 231, 81, 84, 101, 69, 24, 94, 152, 104, 22, 241, 11, 48, 76, 95, 237, 199, 135, 140, 9, 173, 58, 190, 8, 65, 210, 12, 169, 37, 200, 246, 178, 98, 93, 202, 226, 157, 166, 47, 142, 150, 197, 244, 121]","[4, 6, 8, 9, 11, 12, 14, 16, 18, 19, 22, 25, 29, 31, 36, 39, 40, 42, 47, 63, 64, 65, 68, 70, 71, 73, 76, 83, 84, 90, 91, 92, 93, 94, 95, 97, 103, 104, 107, 109, 112, 113, 125, 128, 129, 130, 133, 139, 140, 147, 150, 152, 157, 158, 161, 162, 167, 174, 178, 185, 188, 189, 191, 196, 200, 202, 203, 205, 208, 210, 213, 220, 226, 227, 231, 235, 239, 241, 243, 244, 255]" +2,"[249, 62, 255, 65, 140, 234, 237, 148, 166, 170, 6, 36, 215, 179, 208, 213, 194, 145, 58, 241, 83, 81, 176, 239, 216, 33, 235, 117, 250, 14, 94, 39, 178, 132, 201, 37, 231, 177, 93, 183, 23, 125, 152, 159, 78, 1, 246, 108, 205, 247, 160, 175, 238, 49, 127, 77, 103, 27, 242, 34, 167, 196, 133, 143, 124, 182, 225, 106, 146, 104, 97, 10, 162, 233, 55, 163, 184, 66, 31, 224, 217, 68, 20, 131, 84, 147, 24, 38, 218, 232, 203, 137, 57, 154, 47, 3, 21, 115, 169, 198, 2, 110, 197, 161, 67, 136, 191, 149, 61, 53, 227, 80, 128, 188, 42, 153, 230, 109, 220, 5, 116, 252, 85, 11, 228, 105, 113, 151]","[76, 196, 243, 230, 147, 154, 57, 64, 140, 49, 149, 223, 215, 207, 255, 174, 79, 188, 54, 106, 77, 33, 245, 240, 2, 175, 165, 254, 97, 62, 89, 66, 234, 219, 136, 42, 176, 38, 195, 212, 241, 135, 20, 41, 35, 55, 128, 166, 95, 171, 0, 68, 127, 114, 186, 137, 162, 161, 69, 225, 181, 192, 153, 14, 239, 8, 110, 115, 104, 156, 78, 7, 81, 129, 133, 96, 50, 36, 141, 113, 47, 23, 172, 39, 112, 151, 244, 204, 145, 99, 93, 6, 169, 236, 4, 116, 216, 70, 132, 179, 217, 10, 19, 53, 84, 88, 74, 24, 155, 18, 193, 203, 189, 94, 237, 63, 163, 218, 9, 178, 48, 180, 201, 202, 233, 185, 183, 197]","[2, 6, 10, 14, 20, 23, 24, 33, 36, 38, 39, 42, 47, 49, 53, 55, 57, 62, 66, 68, 77, 78, 81, 84, 93, 94, 97, 104, 106, 110, 113, 115, 116, 127, 128, 132, 133, 136, 137, 140, 145, 147, 149, 151, 153, 154, 161, 162, 163, 166, 169, 175, 176, 178, 179, 183, 188, 196, 197, 201, 203, 215, 216, 217, 218, 225, 230, 233, 234, 237, 239, 241, 255]" +3,"[229, 37, 83, 1, 214, 179, 159, 5, 235, 120, 88, 61, 213, 234, 194, 108, 59, 200, 118, 170, 73, 91, 250, 215, 68, 255, 35, 122, 150, 33, 193, 227, 133, 197, 56, 225, 137, 17, 173, 18, 171, 82, 31, 140, 254, 39, 217, 10, 36, 75, 64, 246, 8, 22, 232, 238, 223, 162, 85, 15, 121, 201, 220, 221, 218, 101, 13, 100, 12, 177, 92, 105, 157, 199, 29, 188, 69, 4, 58, 9, 224, 47, 182, 115, 25, 119, 131, 117, 80, 183, 132, 135, 219, 62, 129, 2, 42, 106, 205, 191, 207, 87, 45, 202, 172, 154, 139, 142, 102, 14, 41, 16, 241, 94, 156, 89, 86, 78, 99, 252, 253, 77, 6, 116, 204, 206, 110, 251]","[61, 155, 205, 169, 2, 83, 114, 74, 191, 131, 185, 130, 172, 0, 95, 84, 118, 76, 78, 213, 214, 195, 8, 234, 173, 64, 59, 113, 48, 170, 109, 244, 41, 183, 23, 248, 73, 68, 150, 149, 223, 46, 91, 133, 175, 212, 33, 165, 29, 108, 94, 79, 227, 249, 112, 138, 70, 89, 232, 164, 245, 250, 87, 30, 202, 57, 174, 101, 1, 242, 67, 239, 148, 188, 126, 143, 21, 226, 122, 102, 19, 97, 129, 7, 134, 56, 182, 60, 81, 45, 32, 28, 34, 186, 22, 176, 208, 159, 136, 24, 43, 139, 194, 85, 26, 75, 218, 254, 111, 217, 50, 233, 144, 36, 82, 147, 16, 128, 222, 90, 241, 203, 51, 189, 15, 58, 251, 211]","[1, 2, 8, 15, 16, 22, 29, 33, 36, 41, 45, 56, 58, 59, 61, 64, 68, 73, 75, 78, 82, 83, 85, 87, 89, 91, 94, 101, 102, 108, 118, 122, 129, 131, 133, 139, 150, 159, 170, 172, 173, 182, 183, 188, 191, 194, 202, 205, 213, 214, 217, 218, 223, 227, 232, 234, 241, 250, 251, 254]" +4,"[96, 78, 17, 90, 12, 255, 235, 160, 229, 219, 83, 102, 163, 158, 142, 215, 28, 106, 45, 47, 95, 36, 65, 30, 181, 146, 59, 197, 170, 118, 42, 13, 29, 178, 192, 186, 168, 79, 222, 39, 161, 26, 56, 88, 180, 33, 179, 69, 206, 144, 230, 38, 32, 82, 250, 99, 72, 159, 204, 9, 140, 58, 14, 50, 22, 19, 116, 169, 173, 35, 80, 200, 183, 149, 124, 213, 171, 216, 24, 141, 148, 175, 242, 86, 37, 221, 245, 1, 48, 157, 184, 89, 34, 54, 214, 198, 93, 6, 109, 44, 125, 153, 208, 132, 52, 211, 165, 167, 251, 147, 239, 103, 98, 240, 61, 203, 143, 67, 226, 176, 66, 131, 166, 207, 43, 232, 133, 15]","[57, 250, 63, 207, 20, 27, 80, 205, 96, 166, 78, 37, 164, 100, 217, 134, 163, 135, 115, 155, 200, 125, 82, 174, 83, 50, 0, 231, 75, 232, 84, 93, 239, 86, 2, 196, 222, 215, 58, 172, 220, 61, 122, 247, 66, 42, 161, 234, 153, 6, 236, 162, 230, 194, 8, 35, 168, 74, 70, 112, 87, 195, 81, 145, 121, 40, 137, 227, 38, 60, 139, 17, 201, 76, 118, 245, 229, 41, 95, 173, 146, 218, 176, 19, 225, 3, 209, 211, 5, 109, 228, 51, 108, 131, 170, 182, 179, 183, 159, 254, 152, 212, 190, 28, 13, 97, 219, 91, 54, 157, 104, 79, 253, 68, 103, 177, 148, 114, 116, 185, 25, 208, 191, 49, 22, 221, 31, 45]","[6, 13, 17, 19, 22, 28, 35, 37, 38, 42, 45, 50, 54, 58, 61, 66, 78, 79, 80, 82, 83, 86, 93, 95, 96, 103, 109, 116, 118, 125, 131, 146, 148, 153, 157, 159, 161, 163, 166, 168, 170, 173, 176, 179, 183, 200, 207, 208, 211, 215, 219, 221, 222, 229, 230, 232, 239, 245, 250]" +5,"[76, 34, 18, 92, 100, 226, 228, 56, 80, 29, 126, 55, 109, 182, 27, 176, 179, 68, 246, 128, 137, 218, 187, 189, 0, 183, 162, 74, 255, 12, 15, 96, 202, 135, 210, 177, 51, 142, 111, 152, 205, 14, 75, 171, 107, 133, 233, 38, 32, 253, 180, 242, 25, 129, 10, 247, 156, 39, 48, 221, 203, 197, 19, 155, 16, 4, 166, 40, 188, 131, 49, 191, 185, 208, 122, 72, 108, 245, 227, 206, 115, 231, 3, 9, 174, 103, 232, 195, 17, 73, 144, 151, 158, 141, 62, 67, 21, 211, 123, 114, 209, 30, 252, 31, 229, 91, 125, 219, 79, 58, 204, 127, 136, 214, 148, 59, 238, 169, 87, 23, 37, 192, 119, 254, 94, 134, 90, 11]","[31, 18, 105, 11, 25, 165, 47, 58, 94, 72, 221, 171, 157, 228, 229, 242, 65, 40, 92, 111, 237, 16, 209, 62, 155, 186, 3, 119, 117, 27, 158, 235, 148, 24, 215, 177, 0, 120, 144, 114, 135, 180, 91, 59, 208, 198, 55, 96, 44, 134, 243, 89, 121, 214, 56, 73, 210, 64, 52, 8, 126, 38, 12, 227, 9, 238, 4, 127, 204, 212, 103, 15, 46, 131, 48, 90, 76, 241, 156, 150, 108, 128, 218, 80, 222, 6, 203, 81, 202, 35, 29, 151, 175, 142, 140, 2, 84, 192, 61, 206, 87, 146, 247, 51, 170, 244, 234, 125, 70, 232, 123, 10, 182, 153, 50, 60, 100, 115, 137, 133, 129, 19, 188, 68, 179, 97, 205, 75]","[0, 3, 4, 9, 10, 11, 12, 15, 16, 18, 19, 25, 27, 29, 31, 38, 40, 48, 51, 55, 56, 58, 59, 62, 68, 72, 73, 75, 76, 80, 87, 90, 91, 92, 94, 96, 100, 103, 108, 111, 114, 115, 119, 123, 125, 126, 127, 128, 129, 131, 133, 134, 135, 137, 142, 144, 148, 151, 155, 156, 158, 171, 177, 179, 180, 182, 188, 192, 202, 203, 204, 205, 206, 208, 209, 210, 214, 218, 221, 227, 228, 229, 232, 238, 242, 247]" +6,"[105, 245, 208, 74, 185, 27, 32, 157, 60, 169, 173, 94, 237, 140, 151, 124, 193, 142, 198, 247, 43, 63, 120, 125, 141, 189, 110, 231, 98, 96, 72, 175, 80, 100, 207, 53, 252, 16, 107, 114, 49, 180, 164, 184, 11, 119, 129, 218, 66, 61, 155, 18, 213, 170, 73, 243, 148, 205, 147, 106, 68, 211, 143, 95, 152, 75, 203, 192, 99, 145, 235, 233, 44, 54, 171, 116, 81, 0, 136, 3, 103, 165, 59, 52, 45, 230, 177, 33, 31, 50, 82, 232, 13, 255, 183, 111, 176, 181, 39, 122, 101, 221, 92, 88, 70, 135, 115, 130, 79, 7, 89, 137, 191, 179, 236, 65, 250, 174, 48, 134, 104, 90, 108, 113, 42, 226, 85, 132]","[43, 187, 54, 201, 121, 66, 163, 154, 109, 62, 171, 19, 166, 81, 135, 227, 240, 238, 246, 172, 78, 10, 223, 241, 108, 58, 250, 107, 239, 153, 191, 204, 149, 15, 210, 150, 213, 180, 103, 28, 131, 17, 184, 1, 57, 86, 29, 138, 162, 206, 159, 243, 127, 199, 79, 136, 37, 75, 235, 5, 216, 14, 133, 20, 93, 32, 77, 67, 118, 234, 190, 25, 76, 217, 44, 7, 147, 249, 160, 175, 219, 174, 35, 12, 102, 47, 41, 94, 61, 55, 46, 170, 69, 16, 214, 53, 242, 194, 140, 168, 165, 228, 244, 202, 9, 161, 56, 2, 157, 142, 117, 114, 40, 233, 123, 6, 182, 36, 18, 26, 87, 146, 71, 224, 139, 222, 212, 23]","[7, 16, 18, 32, 43, 44, 53, 54, 61, 66, 75, 79, 81, 94, 103, 107, 108, 114, 135, 136, 140, 142, 147, 157, 165, 170, 171, 174, 175, 180, 184, 191, 213, 233, 235, 243, 250]" +7,"[22, 201, 171, 46, 62, 25, 104, 220, 219, 160, 91, 200, 174, 42, 145, 26, 80, 255, 234, 214, 11, 228, 44, 147, 69, 167, 73, 185, 115, 162, 252, 4, 105, 64, 72, 126, 204, 157, 249, 92, 88, 202, 27, 203, 155, 111, 5, 15, 124, 61, 208, 224, 0, 1, 18, 85, 28, 239, 76, 55, 79, 48, 140, 19, 36, 8, 21, 66, 217, 169, 142, 56, 35, 113, 193, 103, 131, 39, 130, 45, 161, 84, 143, 141, 232, 97, 94, 209, 57, 173, 150, 41, 159, 53, 86, 23, 49, 17, 250, 40, 213, 241, 195, 50, 78, 121, 178, 137, 199, 149, 106, 74, 235, 226, 245, 135, 166, 144, 134, 120, 186, 102, 148, 225, 132, 125, 70, 89]","[255, 23, 91, 158, 203, 120, 209, 212, 38, 105, 73, 226, 187, 145, 163, 219, 70, 216, 57, 76, 241, 225, 249, 30, 131, 181, 224, 178, 69, 31, 153, 134, 168, 210, 4, 127, 242, 125, 33, 87, 86, 102, 100, 175, 121, 133, 77, 9, 35, 54, 149, 55, 2, 247, 166, 250, 234, 143, 232, 215, 5, 64, 78, 227, 179, 117, 171, 90, 204, 60, 177, 27, 148, 24, 49, 113, 88, 160, 34, 180, 140, 235, 20, 220, 122, 106, 185, 186, 108, 150, 46, 63, 200, 191, 95, 146, 82, 6, 26, 176, 50, 174, 61, 245, 217, 202, 45, 254, 65, 137, 193, 115, 107, 79, 164, 135, 39, 197, 213, 111, 126, 118, 195, 252, 97, 190, 40, 182]","[4, 5, 23, 26, 27, 35, 39, 40, 45, 46, 49, 50, 55, 57, 61, 64, 69, 70, 73, 76, 78, 79, 86, 88, 91, 97, 102, 105, 106, 111, 113, 115, 120, 121, 125, 126, 131, 134, 135, 137, 140, 143, 145, 148, 149, 150, 160, 166, 171, 174, 178, 185, 186, 193, 195, 200, 202, 203, 204, 209, 213, 217, 219, 220, 224, 225, 226, 232, 234, 235, 241, 245, 249, 250, 252, 255]" +8,"[134, 245, 157, 213, 19, 34, 38, 230, 144, 18, 168, 146, 73, 64, 91, 89, 198, 87, 65, 32, 36, 148, 131, 221, 58, 84, 132, 41, 83, 67, 249, 42, 237, 136, 250, 35, 60, 69, 176, 125, 116, 117, 85, 106, 61, 133, 244, 46, 96, 23, 166, 188, 120, 139, 15, 123, 238, 162, 129, 212, 175, 227, 138, 97, 72, 6, 9, 47, 119, 103, 192, 88, 63, 8, 233, 77, 251, 70, 200, 30, 16, 126, 202, 183, 173, 81, 169, 223, 102, 164, 105, 218, 231, 180, 33, 78, 118, 150, 165, 191, 152, 178, 53, 153, 205, 189, 51, 243, 141, 40, 204, 151, 20, 5, 239, 254, 48, 14, 135, 98, 197, 2, 54, 111, 122, 232, 59, 107]","[26, 3, 87, 214, 121, 5, 23, 123, 254, 27, 66, 248, 152, 209, 191, 39, 171, 154, 149, 193, 92, 45, 228, 199, 223, 173, 21, 104, 226, 101, 44, 136, 224, 140, 155, 220, 117, 29, 109, 194, 49, 89, 216, 55, 4, 114, 202, 61, 184, 225, 13, 76, 183, 174, 75, 57, 48, 71, 38, 190, 7, 210, 243, 138, 246, 67, 163, 18, 247, 34, 6, 103, 237, 54, 102, 82, 97, 169, 221, 147, 74, 72, 144, 222, 128, 37, 217, 162, 12, 68, 33, 80, 17, 203, 164, 195, 125, 240, 127, 252, 22, 115, 151, 130, 143, 200, 106, 253, 201, 11, 10, 113, 16, 28, 234, 63, 150, 141, 24, 124, 79, 232, 215, 167, 31, 108, 181, 206]","[5, 6, 16, 18, 23, 33, 34, 38, 48, 54, 61, 63, 67, 72, 87, 89, 97, 102, 103, 106, 117, 123, 125, 136, 138, 141, 144, 150, 151, 152, 162, 164, 169, 173, 183, 191, 200, 202, 221, 223, 232, 237, 243, 254]" +9,"[71, 207, 57, 0, 118, 134, 100, 10, 216, 119, 218, 42, 102, 184, 82, 146, 249, 90, 136, 12, 164, 248, 220, 176, 158, 47, 9, 224, 250, 25, 159, 110, 14, 125, 231, 39, 174, 116, 143, 147, 81, 124, 40, 156, 11, 103, 217, 152, 87, 196, 80, 28, 52, 43, 121, 4, 138, 72, 140, 85, 169, 91, 153, 198, 53, 206, 128, 93, 246, 188, 243, 68, 59, 212, 240, 31, 142, 139, 60, 65, 18, 67, 221, 187, 226, 127, 89, 48, 44, 252, 154, 74, 84, 222, 75, 208, 45, 66, 199, 170, 200, 235, 227, 233, 78, 145, 168, 113, 186, 107, 209, 27, 6, 79, 55, 228, 144, 17, 22, 49, 236, 117, 223, 69, 133, 32, 15, 173]","[128, 234, 195, 96, 104, 83, 34, 78, 120, 244, 97, 189, 239, 38, 139, 188, 56, 6, 185, 109, 46, 26, 89, 118, 157, 35, 243, 170, 115, 108, 226, 49, 213, 123, 149, 225, 71, 184, 74, 64, 165, 2, 182, 15, 3, 162, 31, 20, 137, 155, 135, 177, 4, 114, 196, 151, 207, 29, 132, 88, 105, 214, 197, 167, 211, 92, 242, 99, 179, 144, 42, 41, 166, 201, 63, 18, 16, 222, 230, 28, 163, 101, 194, 241, 106, 255, 13, 36, 32, 130, 70, 7, 161, 229, 171, 205, 183, 21, 235, 95, 176, 145, 50, 73, 191, 200, 215, 98, 58, 77, 164, 236, 47, 175, 112, 212, 129, 190, 192, 227, 55, 125, 79, 238, 86, 208, 148, 76]","[4, 6, 15, 18, 28, 31, 32, 42, 47, 49, 55, 71, 74, 78, 79, 89, 118, 125, 128, 139, 144, 145, 164, 170, 176, 184, 188, 196, 200, 207, 208, 212, 222, 226, 227, 235, 236, 243]" +10,"[182, 73, 5, 39, 24, 235, 225, 81, 15, 153, 123, 80, 93, 46, 247, 91, 69, 236, 185, 212, 184, 42, 135, 168, 54, 19, 230, 72, 76, 211, 180, 97, 86, 40, 109, 51, 63, 206, 37, 115, 34, 100, 102, 158, 237, 103, 137, 251, 234, 6, 204, 68, 117, 29, 244, 49, 111, 165, 85, 224, 161, 146, 90, 176, 10, 56, 28, 189, 213, 202, 245, 178, 58, 50, 220, 107, 129, 243, 171, 195, 13, 122, 66, 149, 33, 166, 20, 104, 144, 105, 45, 89, 2, 152, 193, 98, 145, 38, 155, 229, 120, 191, 163, 143, 57, 95, 113, 92, 17, 154, 12, 41, 106, 7, 132, 84, 227, 133, 249, 157, 83, 164, 101, 118, 179, 170, 71, 138]","[112, 85, 138, 202, 102, 142, 224, 178, 25, 30, 52, 78, 21, 187, 239, 126, 20, 164, 58, 190, 149, 250, 92, 24, 12, 69, 0, 1, 235, 55, 242, 89, 182, 118, 97, 39, 73, 99, 124, 135, 79, 32, 22, 162, 207, 157, 184, 122, 16, 84, 180, 192, 76, 222, 19, 230, 57, 133, 81, 160, 27, 109, 174, 11, 150, 134, 255, 98, 199, 188, 43, 245, 218, 147, 179, 183, 63, 238, 132, 146, 232, 111, 165, 244, 60, 166, 34, 101, 181, 220, 44, 74, 143, 38, 113, 154, 13, 42, 47, 23, 171, 29, 223, 66, 7, 186, 231, 177, 153, 159, 221, 53, 83, 35, 167, 4, 129, 252, 50, 61, 214, 201, 205, 2, 217, 213, 5, 41]","[2, 5, 7, 12, 13, 19, 20, 24, 29, 34, 38, 39, 41, 42, 50, 57, 58, 63, 66, 69, 73, 76, 81, 83, 84, 85, 89, 92, 97, 98, 101, 102, 109, 111, 113, 118, 122, 129, 132, 133, 135, 138, 143, 146, 149, 153, 154, 157, 164, 165, 166, 171, 178, 179, 180, 182, 184, 202, 213, 220, 224, 230, 235, 244, 245]" +11,"[42, 176, 29, 59, 122, 184, 171, 137, 82, 136, 41, 80, 95, 5, 187, 32, 138, 68, 185, 43, 75, 49, 224, 88, 69, 111, 196, 247, 126, 117, 56, 105, 98, 37, 153, 54, 87, 114, 19, 180, 238, 93, 90, 223, 165, 124, 227, 241, 125, 210, 128, 242, 116, 120, 40, 55, 228, 26, 45, 218, 21, 107, 132, 119, 57, 189, 199, 27, 141, 97, 83, 109, 127, 164, 231, 17, 76, 209, 215, 159, 172, 84, 65, 1, 73, 143, 30, 202, 252, 94, 103, 52, 96, 170, 86, 130, 154, 4, 8, 134, 174, 79, 102, 175, 91, 200, 216, 36, 9, 63, 192, 207, 62, 225, 167, 77, 35, 155, 100, 212, 129, 115, 240, 149, 12, 16, 255, 123]","[117, 134, 8, 87, 41, 32, 19, 131, 196, 83, 54, 84, 4, 80, 238, 252, 176, 242, 17, 149, 46, 225, 102, 18, 76, 42, 55, 229, 200, 108, 228, 115, 151, 164, 231, 171, 1, 159, 23, 170, 167, 88, 180, 45, 98, 59, 215, 68, 216, 77, 130, 66, 12, 158, 114, 205, 3, 166, 187, 35, 99, 165, 29, 195, 182, 129, 125, 185, 30, 27, 120, 21, 213, 36, 147, 85, 234, 143, 97, 123, 109, 189, 86, 190, 153, 81, 9, 74, 255, 16, 126, 70, 155, 184, 82, 207, 6, 140, 223, 227, 208, 241, 79, 162, 69, 127, 212, 247, 132, 128, 44, 191, 91, 107, 217, 111, 26, 47, 177, 100, 93, 37, 110, 235, 202, 137, 138, 73]","[1, 4, 8, 9, 12, 16, 17, 19, 21, 26, 27, 29, 30, 32, 35, 36, 37, 41, 42, 45, 54, 55, 59, 68, 69, 73, 76, 77, 79, 80, 82, 83, 84, 86, 87, 88, 91, 93, 97, 98, 100, 102, 107, 109, 111, 114, 115, 117, 120, 123, 125, 126, 127, 128, 129, 130, 132, 134, 137, 138, 143, 149, 153, 155, 159, 164, 165, 167, 170, 171, 176, 180, 184, 185, 187, 189, 196, 200, 202, 207, 212, 215, 216, 223, 225, 227, 228, 231, 238, 241, 242, 247, 252, 255]" +12,"[127, 104, 110, 26, 245, 157, 167, 84, 78, 210, 59, 41, 1, 123, 181, 85, 168, 69, 86, 138, 30, 94, 36, 8, 50, 77, 228, 19, 23, 63, 103, 216, 173, 152, 82, 202, 112, 139, 254, 250, 121, 47, 195, 243, 241, 109, 51, 183, 61, 65, 193, 122, 133, 180, 194, 158, 175, 182, 42, 10, 12, 171, 64, 154, 108, 252, 170, 113, 177, 48, 53, 115, 197, 4, 219, 99, 239, 159, 226, 211, 143, 235, 32, 20, 222, 169, 229, 15, 43, 106, 129, 221, 233, 33, 11, 114, 7, 18, 144, 204, 253, 119, 49, 0, 45, 187, 67, 9, 98, 29, 255, 125, 27, 232, 142, 134, 68, 101, 205, 70, 97, 223, 225, 185, 176, 72, 136, 107]","[32, 37, 144, 113, 109, 179, 87, 176, 108, 107, 152, 129, 254, 170, 211, 169, 174, 246, 42, 171, 187, 41, 99, 225, 11, 186, 85, 64, 63, 101, 136, 68, 159, 57, 19, 95, 156, 104, 224, 189, 110, 103, 138, 219, 117, 131, 229, 172, 163, 72, 194, 123, 3, 112, 21, 165, 139, 202, 177, 185, 60, 40, 197, 52, 88, 114, 124, 226, 73, 150, 216, 164, 133, 175, 118, 44, 50, 10, 121, 127, 77, 234, 46, 1, 151, 206, 115, 245, 241, 36, 223, 147, 56, 205, 61, 28, 94, 180, 141, 166, 83, 247, 132, 240, 192, 157, 204, 74, 193, 217, 86, 196, 30, 243, 78, 98, 53, 120, 49, 119, 250, 238, 236, 48, 232, 13, 65, 182]","[1, 10, 11, 19, 30, 32, 36, 41, 42, 48, 49, 50, 53, 61, 63, 64, 65, 68, 72, 77, 78, 85, 86, 94, 98, 99, 101, 103, 104, 107, 108, 109, 110, 112, 113, 114, 115, 119, 121, 123, 127, 129, 133, 136, 138, 139, 144, 152, 157, 159, 169, 170, 171, 175, 176, 177, 180, 182, 185, 187, 193, 194, 197, 202, 204, 205, 211, 216, 219, 223, 225, 226, 229, 232, 241, 243, 245, 250, 254]" +13,"[76, 5, 56, 132, 218, 246, 20, 237, 225, 62, 23, 58, 175, 177, 34, 183, 12, 67, 199, 164, 117, 93, 174, 171, 255, 130, 244, 36, 0, 249, 112, 4, 11, 221, 111, 113, 137, 253, 90, 166, 95, 241, 7, 138, 88, 63, 180, 185, 213, 26, 220, 208, 210, 105, 242, 8, 124, 158, 92, 9, 181, 135, 103, 35, 81, 106, 97, 94, 27, 204, 155, 205, 184, 32, 142, 17, 121, 89, 141, 245, 53, 151, 82, 98, 45, 233, 6, 198, 71, 195, 128, 161, 109, 226, 172, 129, 86, 201, 157, 217, 19, 99, 70, 122, 165, 28, 46, 209, 29, 131, 116, 57, 152, 176, 43, 230, 178, 119, 194, 40, 30, 190, 232, 143, 51, 48, 169, 216]","[51, 110, 203, 45, 249, 0, 136, 122, 217, 176, 111, 213, 244, 4, 67, 63, 5, 147, 191, 177, 81, 80, 104, 134, 130, 65, 133, 212, 181, 155, 94, 56, 28, 185, 208, 106, 88, 161, 233, 105, 226, 169, 12, 222, 251, 18, 82, 20, 142, 184, 135, 250, 204, 90, 151, 35, 178, 1, 202, 91, 159, 128, 86, 139, 163, 174, 187, 32, 26, 148, 112, 7, 164, 179, 49, 158, 83, 96, 69, 29, 123, 61, 168, 165, 68, 107, 166, 216, 193, 232, 113, 8, 138, 71, 225, 93, 223, 170, 237, 255, 132, 17, 57, 129, 53, 72, 197, 171, 24, 76, 221, 201, 2, 209, 99, 66, 73, 175, 162, 97, 23, 37, 200, 241, 101, 218, 150, 108]","[0, 4, 5, 7, 8, 12, 17, 20, 23, 26, 28, 29, 32, 35, 45, 51, 53, 56, 57, 63, 67, 71, 76, 81, 82, 86, 88, 90, 93, 94, 97, 99, 105, 106, 111, 112, 113, 122, 128, 129, 130, 132, 135, 138, 142, 151, 155, 158, 161, 164, 165, 166, 169, 171, 174, 175, 176, 177, 178, 181, 184, 185, 201, 204, 208, 209, 213, 216, 217, 218, 221, 225, 226, 232, 233, 237, 241, 244, 249, 255]" +14,"[82, 156, 200, 53, 194, 3, 80, 8, 120, 141, 179, 84, 1, 208, 79, 148, 125, 130, 63, 127, 62, 146, 248, 152, 215, 210, 74, 135, 242, 83, 162, 115, 47, 164, 233, 108, 134, 68, 13, 67, 45, 173, 54, 126, 251, 195, 16, 123, 250, 186, 128, 255, 168, 90, 157, 119, 136, 227, 36, 38, 104, 238, 99, 244, 185, 247, 236, 29, 206, 165, 226, 225, 132, 60, 103, 77, 142, 216, 55, 32, 253, 159, 129, 91, 205, 232, 163, 78, 150, 50, 193, 167, 37, 81, 71, 145, 188, 66, 26, 114, 211, 76, 196, 106, 4, 30, 202, 237, 151, 110, 51, 2, 154, 94, 46, 109, 11, 143, 92, 21, 241, 97, 124, 219, 166, 221, 34, 137]","[132, 216, 245, 247, 222, 210, 190, 235, 18, 227, 215, 208, 187, 90, 68, 197, 94, 121, 95, 50, 52, 64, 217, 49, 230, 183, 127, 77, 125, 239, 115, 72, 103, 62, 250, 139, 9, 176, 111, 8, 154, 136, 74, 2, 143, 225, 54, 87, 141, 129, 60, 155, 170, 99, 23, 148, 126, 53, 171, 147, 97, 145, 163, 45, 140, 84, 110, 168, 29, 195, 101, 67, 251, 137, 91, 73, 173, 223, 81, 243, 82, 119, 175, 167, 252, 92, 93, 32, 79, 221, 22, 51, 112, 185, 12, 130, 241, 138, 233, 192, 142, 219, 104, 46, 254, 248, 229, 150, 169, 232, 1, 198, 212, 57, 63, 59, 238, 105, 213, 13, 158, 134, 3, 240, 135, 36, 128, 76]","[1, 2, 3, 8, 13, 29, 32, 36, 45, 46, 50, 51, 53, 54, 60, 62, 63, 67, 68, 74, 76, 77, 79, 81, 82, 84, 90, 91, 92, 94, 97, 99, 103, 104, 110, 115, 119, 125, 126, 127, 128, 129, 130, 132, 134, 135, 136, 137, 141, 142, 143, 145, 148, 150, 154, 163, 167, 168, 173, 185, 195, 208, 210, 215, 216, 219, 221, 225, 227, 232, 233, 238, 241, 247, 248, 250, 251]" +15,"[245, 178, 15, 66, 12, 133, 241, 198, 186, 107, 210, 199, 62, 55, 194, 190, 92, 175, 127, 76, 22, 161, 126, 173, 101, 88, 211, 129, 204, 136, 3, 5, 98, 187, 213, 157, 89, 205, 226, 32, 94, 160, 233, 197, 123, 193, 214, 182, 74, 150, 121, 240, 0, 50, 181, 31, 58, 17, 177, 172, 128, 69, 73, 16, 159, 102, 28, 83, 23, 147, 59, 20, 11, 195, 222, 46, 243, 119, 248, 41, 218, 217, 65, 224, 149, 131, 191, 34, 207, 228, 143, 54, 44, 48, 132, 184, 171, 154, 114, 103, 67, 206, 29, 180, 10, 120, 219, 118, 87, 1, 153, 163, 14, 100, 42, 231, 75, 237, 189, 232, 24, 125, 202, 93, 148, 52, 104, 167]","[42, 139, 183, 54, 228, 208, 238, 146, 177, 22, 73, 32, 231, 132, 151, 57, 148, 154, 122, 218, 240, 6, 194, 0, 134, 28, 128, 76, 15, 119, 166, 232, 173, 165, 17, 244, 193, 131, 120, 121, 205, 3, 104, 46, 1, 147, 78, 11, 49, 62, 30, 60, 214, 140, 13, 69, 10, 143, 171, 115, 108, 101, 178, 58, 40, 124, 251, 220, 235, 103, 59, 82, 160, 102, 107, 249, 48, 174, 118, 185, 230, 74, 44, 229, 210, 138, 7, 213, 5, 94, 136, 87, 239, 190, 180, 20, 27, 182, 162, 142, 167, 252, 129, 172, 31, 170, 159, 243, 181, 222, 184, 158, 197, 155, 92, 211, 242, 90, 163, 88, 175, 187, 24, 186, 123, 81, 80, 133]","[0, 1, 3, 5, 10, 11, 15, 17, 20, 22, 24, 28, 31, 32, 42, 44, 46, 48, 54, 58, 59, 62, 69, 73, 74, 76, 87, 88, 92, 94, 101, 102, 103, 104, 107, 118, 119, 120, 121, 123, 128, 129, 131, 132, 133, 136, 143, 147, 148, 154, 159, 160, 163, 167, 171, 172, 173, 175, 177, 178, 180, 181, 182, 184, 186, 187, 190, 193, 194, 197, 205, 210, 211, 213, 214, 218, 222, 228, 231, 232, 240, 243]" +16,"[240, 13, 120, 4, 65, 20, 250, 254, 84, 22, 220, 105, 121, 95, 112, 46, 8, 150, 238, 99, 114, 171, 182, 55, 41, 122, 90, 6, 60, 23, 44, 235, 64, 50, 123, 162, 133, 30, 205, 125, 29, 115, 109, 151, 199, 40, 159, 212, 241, 37, 2, 88, 80, 74, 106, 131, 253, 0, 32, 86, 153, 113, 39, 7, 58, 208, 179, 14, 28, 19, 201, 166, 203, 149, 25, 27, 107, 119, 219, 152, 76, 18, 140, 12, 234, 138, 168, 144, 216, 164, 67, 239, 173, 102, 198, 130, 89, 81, 177, 77, 62, 26, 53, 213, 48, 132, 129, 193, 135, 35, 10, 214, 194, 137, 127, 170, 209, 101, 185, 141, 233, 15, 190, 21, 71, 229, 202, 155]","[242, 78, 19, 137, 224, 99, 152, 55, 113, 143, 24, 135, 183, 12, 129, 114, 211, 188, 172, 248, 30, 91, 40, 254, 16, 49, 25, 90, 212, 175, 119, 163, 8, 142, 117, 170, 6, 164, 180, 182, 171, 26, 22, 246, 160, 85, 186, 157, 147, 138, 220, 84, 107, 223, 64, 39, 5, 74, 11, 35, 201, 29, 9, 145, 149, 177, 41, 2, 87, 57, 249, 118, 82, 14, 151, 44, 232, 210, 100, 215, 66, 205, 47, 236, 96, 7, 219, 227, 140, 167, 176, 228, 15, 38, 95, 109, 0, 72, 120, 251, 124, 75, 127, 203, 200, 3, 54, 101, 144, 68, 46, 93, 71, 63, 125, 4, 89, 115, 92, 165, 158, 18, 13, 181, 148, 130, 146, 42]","[0, 2, 4, 6, 7, 8, 12, 13, 14, 15, 18, 19, 22, 25, 26, 29, 30, 35, 39, 40, 41, 44, 46, 55, 64, 71, 74, 84, 89, 90, 95, 99, 101, 107, 109, 113, 114, 115, 119, 120, 125, 127, 129, 130, 135, 137, 138, 140, 144, 149, 151, 152, 164, 170, 171, 177, 182, 201, 203, 205, 212, 219, 220, 254]" +17,"[225, 235, 155, 37, 56, 40, 237, 163, 191, 211, 0, 93, 43, 107, 122, 134, 52, 165, 171, 145, 19, 164, 194, 101, 94, 9, 173, 88, 31, 124, 240, 183, 97, 90, 76, 147, 72, 35, 137, 2, 13, 140, 128, 241, 115, 6, 22, 158, 50, 223, 192, 119, 41, 184, 196, 175, 25, 58, 33, 74, 89, 62, 215, 248, 96, 16, 98, 143, 12, 160, 121, 104, 68, 80, 17, 84, 53, 92, 182, 130, 153, 133, 148, 114, 23, 185, 159, 154, 78, 100, 87, 73, 47, 49, 108, 34, 5, 109, 149, 157, 129, 169, 28, 127, 233, 126, 193, 57, 207, 125, 206, 189, 249, 71, 4, 199, 63, 113, 131, 46, 142, 91, 112, 51, 170, 39, 77, 64]","[58, 84, 239, 219, 30, 54, 179, 194, 78, 52, 183, 236, 85, 45, 12, 167, 213, 253, 177, 14, 165, 38, 237, 61, 29, 116, 226, 83, 171, 48, 225, 67, 146, 32, 60, 182, 188, 251, 36, 103, 70, 228, 123, 75, 181, 69, 222, 235, 162, 221, 53, 3, 223, 135, 113, 8, 66, 152, 140, 174, 178, 180, 111, 19, 127, 156, 108, 232, 244, 15, 241, 195, 187, 231, 74, 27, 7, 56, 240, 202, 24, 93, 220, 184, 173, 79, 11, 41, 216, 106, 31, 217, 198, 26, 203, 238, 33, 141, 160, 218, 20, 247, 72, 252, 229, 155, 166, 18, 161, 118, 126, 139, 10, 68, 51, 63, 212, 151, 132, 21, 62, 159, 59, 208, 193, 176, 168, 86]","[12, 19, 31, 33, 41, 51, 52, 53, 56, 58, 62, 63, 68, 72, 74, 78, 84, 93, 108, 113, 126, 127, 140, 155, 159, 160, 165, 171, 173, 182, 183, 184, 193, 194, 223, 225, 235, 237, 240, 241]" +18,"[67, 52, 148, 72, 183, 24, 175, 149, 31, 252, 93, 95, 171, 36, 105, 140, 138, 27, 104, 50, 219, 5, 159, 160, 135, 124, 185, 141, 32, 89, 184, 218, 34, 133, 18, 58, 119, 11, 38, 189, 143, 198, 78, 91, 29, 121, 188, 162, 158, 221, 103, 240, 62, 42, 204, 26, 6, 68, 60, 90, 44, 139, 63, 165, 254, 94, 194, 45, 116, 115, 152, 2, 110, 250, 157, 241, 209, 215, 41, 51, 40, 19, 156, 123, 107, 12, 128, 101, 231, 224, 208, 192, 161, 33, 39, 21, 48, 168, 75, 69, 22, 76, 245, 179, 0, 132, 117, 70, 200, 213, 79, 74, 106, 114, 30, 230, 56, 13, 239, 120, 113, 233, 109, 57, 155, 81, 237, 23]","[72, 40, 133, 181, 24, 153, 179, 187, 232, 90, 51, 225, 152, 115, 13, 254, 188, 158, 218, 30, 175, 138, 107, 71, 32, 19, 5, 114, 228, 79, 184, 219, 91, 0, 6, 62, 239, 233, 54, 48, 183, 140, 68, 69, 159, 155, 148, 162, 207, 9, 120, 34, 87, 29, 75, 38, 17, 56, 76, 246, 104, 176, 142, 78, 147, 25, 211, 247, 241, 44, 11, 80, 251, 177, 221, 99, 16, 50, 204, 88, 61, 165, 199, 112, 116, 89, 171, 123, 121, 197, 226, 65, 42, 168, 41, 136, 173, 31, 36, 198, 244, 119, 150, 97, 58, 193, 7, 190, 45, 93, 216, 2, 110, 101, 57, 74, 94, 185, 70, 83, 245, 126, 39, 27, 195, 157, 18, 161]","[0, 2, 5, 6, 11, 13, 18, 19, 24, 27, 29, 30, 31, 32, 34, 36, 38, 39, 40, 41, 42, 44, 45, 48, 50, 51, 56, 57, 58, 62, 68, 69, 70, 72, 74, 75, 76, 78, 79, 89, 90, 91, 93, 94, 101, 104, 107, 110, 114, 115, 116, 119, 120, 121, 123, 133, 138, 140, 148, 152, 155, 157, 158, 159, 161, 162, 165, 168, 171, 175, 179, 183, 184, 185, 188, 198, 204, 218, 219, 221, 233, 239, 241, 245, 254]" +19,"[48, 72, 149, 243, 127, 11, 222, 132, 158, 183, 90, 191, 179, 74, 186, 87, 26, 232, 42, 20, 43, 201, 193, 190, 167, 122, 199, 161, 92, 86, 100, 235, 54, 130, 57, 231, 224, 123, 139, 140, 65, 152, 254, 83, 49, 192, 202, 221, 62, 197, 73, 156, 27, 189, 113, 160, 252, 40, 157, 207, 106, 103, 217, 94, 150, 47, 169, 219, 71, 69, 151, 204, 203, 10, 15, 182, 31, 29, 39, 107, 8, 118, 24, 177, 226, 155, 25, 81, 110, 97, 131, 168, 214, 143, 237, 115, 55, 23, 176, 144, 244, 22, 12, 227, 93, 185, 223, 95, 4, 56, 76, 121, 208, 109, 129, 146, 242, 88, 145, 17, 5, 6, 18, 236, 163, 80, 200, 141]","[4, 121, 99, 115, 201, 233, 194, 193, 116, 59, 202, 216, 234, 25, 236, 21, 104, 42, 0, 228, 87, 7, 192, 47, 165, 119, 197, 17, 127, 106, 35, 81, 39, 235, 254, 231, 154, 161, 3, 248, 95, 175, 79, 60, 184, 52, 217, 67, 187, 251, 54, 133, 212, 98, 245, 205, 132, 75, 103, 224, 138, 229, 50, 73, 163, 239, 230, 11, 172, 183, 112, 92, 13, 253, 151, 180, 221, 26, 91, 126, 86, 9, 150, 93, 232, 120, 88, 38, 55, 178, 20, 46, 185, 243, 2, 16, 252, 199, 44, 134, 241, 237, 109, 177, 174, 108, 142, 15, 36, 63, 51, 209, 22, 100, 215, 255, 62, 34, 48, 89, 28, 139, 196, 168, 43, 94, 223, 162]","[4, 11, 15, 17, 20, 22, 25, 26, 39, 42, 43, 47, 48, 54, 55, 62, 73, 81, 86, 87, 88, 92, 93, 94, 95, 100, 103, 106, 109, 115, 121, 127, 132, 139, 150, 151, 161, 163, 168, 177, 183, 185, 192, 193, 197, 199, 201, 202, 217, 221, 223, 224, 231, 232, 235, 236, 237, 243, 252, 254]" +20,"[8, 91, 14, 177, 25, 233, 95, 5, 166, 157, 80, 232, 114, 2, 187, 230, 74, 186, 92, 229, 33, 131, 161, 32, 31, 68, 127, 196, 171, 7, 222, 48, 113, 165, 59, 86, 141, 243, 96, 149, 181, 21, 146, 77, 81, 29, 200, 99, 122, 204, 40, 13, 198, 39, 94, 58, 47, 71, 102, 185, 223, 98, 88, 155, 97, 119, 49, 11, 61, 55, 132, 234, 135, 46, 116, 70, 138, 35, 192, 6, 208, 214, 199, 51, 150, 154, 103, 37, 241, 190, 43, 87, 160, 117, 26, 23, 101, 184, 17, 137, 189, 209, 175, 129, 56, 20, 89, 78, 44, 42, 125, 213, 227, 15, 140, 191, 179, 69, 124, 133, 93, 134, 105, 79, 254, 168, 130, 83]","[219, 23, 154, 109, 111, 99, 68, 187, 150, 241, 179, 166, 201, 220, 128, 31, 216, 81, 71, 63, 112, 67, 144, 181, 39, 238, 153, 191, 106, 196, 232, 0, 57, 157, 16, 91, 95, 80, 198, 158, 160, 192, 25, 48, 141, 59, 66, 180, 252, 228, 170, 124, 3, 113, 188, 182, 58, 172, 211, 247, 114, 240, 88, 45, 231, 225, 131, 69, 152, 34, 72, 130, 183, 121, 123, 4, 235, 35, 167, 50, 87, 138, 115, 92, 75, 205, 32, 155, 8, 210, 49, 173, 118, 119, 239, 202, 27, 215, 60, 133, 11, 104, 56, 37, 178, 229, 62, 40, 214, 47, 156, 46, 2, 105, 186, 185, 122, 206, 64, 253, 7, 107, 168, 129, 135, 255, 147, 190]","[2, 7, 8, 11, 23, 25, 31, 32, 35, 37, 39, 40, 46, 47, 48, 49, 56, 58, 59, 68, 69, 71, 80, 81, 87, 88, 91, 92, 95, 99, 105, 113, 114, 119, 122, 124, 129, 130, 131, 133, 135, 138, 141, 150, 154, 155, 157, 160, 166, 168, 179, 181, 185, 186, 187, 190, 191, 192, 196, 198, 214, 229, 232, 241]" +21,"[155, 142, 202, 88, 19, 121, 2, 216, 28, 132, 124, 23, 187, 237, 207, 169, 89, 204, 98, 160, 240, 173, 120, 41, 227, 49, 0, 172, 38, 182, 59, 232, 103, 54, 134, 222, 91, 69, 37, 122, 26, 238, 33, 20, 236, 146, 221, 171, 43, 74, 159, 24, 133, 253, 193, 163, 78, 174, 210, 176, 13, 178, 229, 144, 138, 96, 55, 139, 235, 211, 183, 115, 203, 101, 81, 112, 255, 228, 175, 252, 53, 27, 197, 212, 114, 136, 199, 51, 12, 84, 108, 177, 107, 249, 10, 82, 48, 57, 165, 179, 40, 198, 166, 102, 191, 99, 190, 123, 76, 164, 147, 224, 145, 68, 77, 194, 42, 22, 129, 135, 109, 247, 32, 94, 73, 161, 185, 60]","[50, 116, 218, 37, 100, 194, 107, 212, 31, 12, 213, 167, 4, 228, 204, 169, 155, 30, 156, 102, 94, 206, 91, 226, 14, 232, 105, 121, 227, 98, 56, 18, 170, 185, 178, 166, 8, 149, 162, 58, 158, 202, 73, 97, 69, 172, 99, 223, 147, 234, 211, 32, 33, 145, 131, 214, 5, 200, 229, 0, 140, 19, 254, 103, 137, 208, 123, 207, 62, 217, 118, 49, 80, 219, 109, 101, 237, 184, 46, 195, 65, 72, 183, 153, 24, 28, 23, 242, 54, 113, 110, 90, 151, 16, 47, 1, 230, 83, 87, 15, 78, 187, 245, 251, 177, 17, 64, 7, 240, 157, 129, 10, 128, 89, 114, 29, 67, 55, 86, 63, 246, 25, 92, 179, 70, 96, 44, 205]","[0, 10, 12, 19, 23, 24, 28, 32, 33, 37, 49, 54, 55, 69, 73, 78, 89, 91, 94, 96, 98, 99, 101, 102, 103, 107, 109, 114, 121, 123, 129, 145, 147, 155, 166, 169, 172, 177, 178, 179, 183, 185, 187, 194, 202, 204, 207, 211, 212, 227, 228, 229, 232, 237, 240]" +22,"[132, 44, 226, 229, 117, 145, 14, 169, 177, 1, 195, 235, 71, 21, 99, 101, 184, 32, 178, 139, 134, 173, 74, 93, 66, 18, 26, 180, 73, 67, 54, 196, 191, 162, 157, 10, 128, 107, 222, 38, 144, 142, 53, 102, 237, 233, 137, 59, 39, 97, 200, 230, 82, 171, 160, 212, 158, 49, 114, 8, 77, 94, 165, 141, 122, 188, 154, 4, 198, 143, 9, 55, 13, 105, 106, 227, 210, 2, 80, 95, 203, 201, 118, 152, 252, 187, 156, 116, 125, 199, 151, 197, 243, 79, 228, 185, 170, 96, 121, 84, 186, 214, 78, 64, 127, 255, 253, 164, 98, 103, 100, 3, 146, 48, 211, 30, 75, 245, 155, 153, 92, 81, 22, 7, 194, 27, 206, 131]","[187, 19, 217, 89, 130, 212, 56, 140, 53, 23, 230, 196, 181, 38, 168, 170, 70, 189, 244, 147, 191, 242, 247, 225, 183, 203, 17, 24, 224, 133, 164, 119, 1, 25, 219, 83, 64, 21, 37, 72, 62, 234, 40, 91, 251, 74, 128, 141, 204, 178, 0, 77, 7, 249, 154, 30, 245, 193, 127, 213, 51, 161, 28, 250, 12, 63, 118, 107, 68, 129, 175, 166, 208, 75, 205, 92, 120, 60, 190, 109, 221, 36, 155, 246, 210, 5, 14, 220, 135, 228, 248, 115, 113, 43, 34, 20, 88, 145, 136, 138, 100, 42, 45, 253, 11, 47, 134, 29, 15, 6, 240, 48, 55, 182, 69, 46, 61, 104, 159, 126, 99, 39, 124, 238, 194, 27, 96, 3]","[1, 3, 7, 14, 21, 27, 30, 38, 39, 48, 53, 55, 64, 74, 75, 77, 92, 96, 99, 100, 107, 118, 127, 128, 134, 141, 145, 154, 155, 164, 170, 178, 187, 191, 194, 196, 203, 210, 212, 228, 230, 245, 253]" +23,"[25, 37, 51, 69, 36, 237, 182, 163, 29, 144, 211, 39, 139, 204, 32, 126, 250, 56, 114, 111, 156, 30, 55, 72, 179, 124, 14, 203, 88, 110, 38, 18, 58, 170, 174, 148, 42, 57, 138, 87, 91, 207, 108, 66, 62, 184, 175, 90, 122, 149, 15, 172, 140, 92, 26, 193, 153, 28, 159, 160, 217, 173, 120, 221, 116, 191, 46, 2, 98, 161, 113, 115, 83, 198, 24, 65, 251, 240, 76, 209, 150, 195, 249, 186, 134, 162, 21, 5, 143, 4, 226, 100, 127, 52, 254, 44, 80, 215, 97, 107, 155, 82, 73, 197, 8, 225, 192, 45, 10, 81, 243, 189, 54, 164, 40, 19, 137, 158, 129, 68, 70, 53, 231, 176, 196, 165, 136, 43]","[155, 179, 247, 45, 85, 26, 131, 110, 4, 149, 103, 180, 43, 210, 19, 143, 18, 50, 46, 240, 120, 62, 67, 76, 113, 181, 172, 162, 156, 92, 126, 69, 107, 48, 56, 221, 170, 29, 164, 207, 129, 96, 183, 127, 111, 23, 253, 205, 97, 226, 90, 88, 161, 231, 25, 157, 132, 37, 39, 136, 40, 153, 100, 254, 160, 191, 198, 204, 223, 6, 0, 30, 163, 193, 151, 174, 190, 237, 108, 51, 24, 245, 73, 98, 251, 82, 38, 182, 91, 138, 49, 242, 79, 14, 200, 72, 173, 186, 93, 145, 133, 249, 197, 232, 57, 150, 134, 166, 8, 68, 189, 54, 227, 52, 235, 16, 58, 211, 80, 219, 139, 15, 70, 114, 158, 1, 81, 5]","[4, 5, 8, 14, 15, 18, 19, 24, 25, 26, 29, 30, 37, 38, 39, 40, 43, 45, 46, 51, 52, 54, 56, 57, 58, 62, 68, 69, 70, 72, 73, 76, 80, 81, 82, 88, 90, 91, 92, 97, 98, 100, 107, 108, 110, 111, 113, 114, 120, 126, 127, 129, 134, 136, 138, 139, 143, 149, 150, 153, 155, 156, 158, 160, 161, 162, 163, 164, 170, 172, 173, 174, 179, 182, 186, 189, 191, 193, 197, 198, 204, 207, 211, 221, 226, 231, 237, 240, 249, 251, 254]" +24,"[142, 130, 105, 108, 209, 10, 177, 52, 106, 33, 126, 4, 5, 118, 44, 24, 47, 39, 190, 81, 125, 104, 249, 57, 86, 28, 124, 62, 13, 234, 14, 150, 189, 148, 58, 87, 240, 43, 22, 80, 245, 12, 115, 244, 121, 171, 159, 90, 102, 247, 131, 163, 218, 120, 196, 61, 141, 70, 139, 220, 56, 117, 93, 100, 162, 6, 133, 37, 53, 25, 137, 122, 94, 119, 7, 111, 151, 188, 98, 84, 164, 213, 26, 67, 233, 59, 11, 16, 223, 101, 204, 210, 224, 250, 216, 54, 74, 36, 46, 91, 49, 252, 170, 158, 76, 32, 138, 198, 0, 73, 181, 60, 161, 9, 95, 174, 232, 173, 77, 254, 132, 21, 85, 144, 55, 140, 194, 68]","[5, 94, 118, 244, 186, 15, 138, 101, 198, 164, 209, 204, 57, 180, 21, 56, 182, 217, 93, 80, 223, 205, 140, 183, 59, 250, 150, 91, 72, 192, 137, 45, 4, 87, 120, 16, 58, 126, 194, 134, 30, 35, 151, 73, 26, 195, 13, 153, 33, 83, 95, 224, 191, 55, 131, 75, 129, 254, 113, 0, 202, 188, 90, 156, 46, 96, 201, 108, 218, 216, 144, 103, 53, 251, 11, 184, 111, 125, 88, 61, 104, 25, 114, 84, 36, 24, 8, 127, 106, 48, 231, 196, 234, 133, 2, 64, 77, 197, 68, 132, 67, 161, 154, 181, 149, 42, 115, 155, 121, 74, 245, 6, 52, 167, 38, 34, 158, 78, 28, 100, 208, 82, 81, 232, 105, 10, 62, 43]","[0, 4, 5, 6, 10, 11, 13, 16, 21, 24, 25, 26, 28, 33, 36, 43, 46, 52, 53, 55, 56, 57, 58, 59, 61, 62, 67, 68, 73, 74, 77, 80, 81, 84, 87, 90, 91, 93, 94, 95, 100, 101, 104, 105, 106, 108, 111, 115, 118, 120, 121, 125, 126, 131, 132, 133, 137, 138, 140, 144, 150, 151, 158, 161, 164, 181, 188, 194, 196, 198, 204, 209, 216, 218, 223, 224, 232, 234, 244, 245, 250, 254]" +25,"[24, 28, 167, 253, 5, 86, 156, 224, 164, 97, 66, 87, 171, 95, 124, 99, 240, 137, 14, 200, 209, 210, 185, 198, 148, 234, 25, 9, 64, 108, 184, 59, 30, 121, 149, 195, 150, 130, 117, 89, 191, 93, 225, 84, 161, 199, 16, 172, 173, 182, 63, 162, 21, 113, 189, 54, 70, 129, 19, 128, 165, 49, 180, 114, 122, 177, 220, 231, 135, 141, 69, 250, 73, 105, 212, 232, 183, 136, 140, 160, 96, 205, 211, 27, 35, 88, 252, 103, 203, 100, 174, 127, 197, 223, 42, 46, 222, 236, 77, 85, 106, 43, 82, 41, 152, 10, 18, 153, 65, 229, 142, 76, 36, 45, 22, 192, 169, 34, 71, 217, 90, 79, 201, 111, 33, 179, 2, 1]","[157, 21, 175, 8, 58, 25, 135, 173, 180, 128, 129, 171, 179, 48, 90, 237, 122, 189, 187, 228, 77, 207, 114, 30, 63, 18, 95, 152, 22, 155, 247, 250, 5, 225, 165, 20, 137, 185, 218, 126, 248, 36, 72, 118, 242, 96, 233, 142, 17, 98, 146, 54, 106, 205, 42, 34, 198, 147, 10, 252, 140, 74, 73, 161, 202, 193, 226, 209, 254, 133, 145, 7, 102, 59, 158, 255, 177, 41, 60, 195, 156, 83, 105, 84, 2, 125, 87, 220, 43, 70, 206, 52, 19, 213, 32, 243, 49, 111, 181, 82, 76, 124, 188, 251, 33, 236, 44, 66, 191, 127, 183, 184, 16, 182, 11, 62, 27, 28, 134, 210, 245, 154, 78, 196, 249, 232, 108, 115]","[2, 5, 10, 16, 18, 19, 21, 22, 25, 27, 28, 30, 33, 34, 36, 41, 42, 43, 49, 54, 59, 63, 66, 70, 73, 76, 77, 82, 84, 87, 90, 95, 96, 105, 106, 108, 111, 114, 122, 124, 127, 128, 129, 135, 137, 140, 142, 152, 156, 161, 165, 171, 173, 177, 179, 180, 182, 183, 184, 185, 189, 191, 195, 198, 205, 209, 210, 220, 225, 232, 236, 250, 252]" +26,"[43, 89, 58, 116, 35, 166, 155, 190, 75, 19, 14, 90, 8, 12, 42, 147, 96, 39, 93, 123, 29, 245, 127, 34, 134, 163, 241, 18, 197, 192, 11, 66, 235, 234, 229, 132, 118, 145, 33, 194, 223, 198, 176, 172, 57, 152, 76, 1, 13, 218, 68, 253, 140, 113, 105, 15, 74, 246, 128, 44, 6, 122, 250, 86, 72, 32, 3, 148, 84, 171, 121, 104, 45, 177, 5, 71, 125, 219, 249, 21, 151, 178, 181, 238, 109, 187, 142, 99, 150, 203, 54, 85, 213, 17, 63, 211, 62, 102, 156, 195, 82, 205, 65, 252, 95, 111, 168, 38, 164, 46, 25, 226, 88, 56, 107, 40, 108, 199, 16, 83, 196, 70, 153, 91, 188, 126, 10, 144]","[67, 175, 70, 227, 244, 2, 49, 59, 26, 29, 139, 6, 77, 4, 157, 36, 43, 167, 173, 101, 172, 25, 98, 88, 203, 150, 155, 42, 54, 185, 144, 28, 226, 178, 99, 39, 252, 176, 34, 3, 187, 100, 10, 1, 18, 5, 241, 214, 192, 19, 180, 79, 204, 159, 27, 196, 237, 13, 75, 81, 137, 108, 201, 212, 149, 218, 16, 184, 110, 86, 37, 51, 160, 142, 40, 87, 60, 165, 170, 230, 50, 221, 135, 89, 217, 223, 174, 200, 125, 140, 46, 111, 106, 158, 191, 181, 20, 208, 240, 228, 48, 35, 128, 107, 236, 235, 82, 71, 182, 31, 8, 143, 138, 246, 194, 0, 162, 78, 24, 231, 136, 220, 242, 65, 163, 216, 11, 73]","[1, 3, 5, 6, 8, 10, 11, 13, 16, 18, 19, 25, 29, 34, 35, 39, 40, 42, 43, 46, 54, 65, 70, 71, 75, 82, 86, 88, 89, 99, 107, 108, 111, 125, 128, 140, 142, 144, 150, 155, 163, 172, 176, 178, 181, 187, 192, 194, 196, 203, 218, 223, 226, 235, 241, 246, 252]" +27,"[113, 186, 51, 131, 184, 25, 224, 238, 253, 121, 204, 201, 87, 3, 202, 15, 163, 84, 203, 82, 55, 37, 1, 150, 172, 67, 206, 161, 61, 83, 148, 60, 237, 49, 31, 234, 24, 166, 134, 77, 124, 22, 104, 177, 152, 114, 162, 158, 23, 78, 102, 75, 189, 249, 226, 105, 2, 69, 180, 254, 157, 58, 181, 153, 229, 70, 164, 27, 59, 56, 174, 191, 41, 250, 182, 47, 178, 97, 213, 179, 12, 199, 194, 72, 146, 140, 111, 44, 221, 240, 255, 96, 214, 252, 123, 193, 143, 95, 248, 232, 159, 73, 175, 195, 39, 40, 91, 200, 116, 88, 17, 43, 168, 144, 223, 64, 137, 90, 212, 149, 130, 133, 188, 38, 71, 100, 230, 20]","[147, 36, 25, 228, 20, 111, 120, 184, 165, 75, 188, 35, 217, 189, 70, 114, 45, 15, 177, 16, 104, 65, 24, 23, 44, 238, 94, 30, 105, 195, 163, 87, 102, 204, 159, 166, 97, 154, 182, 124, 5, 214, 221, 183, 67, 113, 220, 93, 109, 131, 91, 3, 203, 199, 146, 71, 142, 4, 66, 148, 175, 193, 82, 230, 74, 19, 49, 200, 108, 96, 73, 149, 253, 106, 140, 56, 38, 69, 81, 122, 179, 99, 255, 144, 245, 78, 224, 169, 153, 46, 89, 186, 47, 229, 12, 248, 254, 137, 37, 158, 205, 234, 201, 173, 246, 202, 6, 85, 170, 150, 90, 168, 152, 22, 134, 222, 161, 232, 247, 180, 32, 100, 55, 194, 125, 164, 50, 112]","[3, 12, 15, 20, 22, 23, 24, 25, 37, 38, 44, 47, 49, 55, 56, 67, 69, 70, 71, 73, 75, 78, 82, 87, 90, 91, 96, 97, 100, 102, 104, 105, 111, 113, 114, 124, 131, 134, 137, 140, 144, 146, 148, 149, 150, 152, 153, 158, 159, 161, 163, 164, 166, 168, 175, 177, 179, 180, 182, 184, 186, 188, 189, 193, 194, 195, 199, 200, 201, 202, 203, 204, 214, 221, 224, 229, 230, 232, 234, 238, 248, 253, 254, 255]" +28,"[48, 238, 196, 250, 226, 236, 129, 187, 130, 169, 167, 94, 110, 122, 138, 114, 56, 165, 184, 14, 220, 18, 149, 132, 45, 46, 71, 252, 108, 237, 76, 69, 73, 180, 245, 34, 163, 171, 195, 159, 41, 248, 151, 51, 131, 228, 9, 103, 16, 158, 241, 235, 12, 64, 136, 77, 81, 142, 58, 135, 203, 70, 198, 125, 234, 4, 75, 80, 90, 5, 182, 153, 23, 208, 112, 183, 244, 47, 50, 86, 141, 100, 38, 162, 115, 178, 113, 26, 200, 177, 22, 19, 249, 150, 83, 33, 181, 223, 209, 35, 140, 253, 215, 144, 102, 246, 85, 118, 13, 20, 105, 55, 123, 119, 225, 239, 172, 63, 72, 44, 15, 188, 166, 65, 157, 43, 201, 78]","[139, 52, 132, 164, 53, 102, 149, 214, 147, 3, 144, 163, 244, 67, 58, 205, 15, 203, 33, 200, 22, 46, 157, 57, 204, 105, 27, 92, 35, 175, 245, 77, 10, 54, 178, 253, 187, 138, 241, 66, 88, 34, 101, 216, 64, 32, 254, 255, 26, 236, 169, 252, 135, 104, 70, 30, 81, 198, 73, 61, 24, 121, 158, 192, 39, 9, 165, 196, 197, 21, 50, 160, 191, 145, 184, 123, 207, 224, 99, 93, 136, 112, 249, 199, 155, 231, 85, 250, 185, 190, 94, 186, 68, 44, 56, 237, 242, 180, 209, 28, 113, 118, 124, 19, 177, 251, 173, 60, 167, 233, 40, 218, 116, 153, 14, 188, 129, 159, 225, 48, 193, 170, 95, 195, 74, 211, 161, 43]","[9, 14, 15, 19, 22, 26, 33, 34, 35, 43, 44, 46, 48, 50, 56, 58, 64, 70, 73, 77, 81, 85, 94, 102, 105, 112, 113, 118, 123, 129, 132, 135, 136, 138, 144, 149, 153, 157, 158, 159, 163, 165, 167, 169, 177, 178, 180, 184, 187, 188, 195, 196, 198, 200, 203, 209, 225, 236, 237, 241, 244, 245, 249, 250, 252, 253]" +29,"[217, 50, 160, 234, 240, 53, 162, 13, 84, 171, 1, 245, 0, 67, 138, 238, 198, 71, 27, 173, 28, 132, 24, 47, 255, 101, 176, 82, 252, 150, 151, 66, 106, 226, 222, 81, 70, 10, 79, 48, 211, 152, 126, 131, 207, 202, 94, 181, 122, 105, 83, 38, 17, 212, 178, 58, 188, 29, 148, 64, 135, 118, 100, 104, 12, 117, 95, 57, 113, 200, 14, 169, 22, 8, 5, 158, 233, 232, 194, 179, 85, 25, 154, 149, 16, 90, 140, 201, 223, 196, 184, 2, 129, 103, 157, 86, 144, 93, 96, 187, 30, 239, 143, 37, 120, 36, 237, 220, 130, 209, 210, 190, 180, 119, 197, 251, 254, 121, 205, 65, 192, 213, 107, 111, 75, 136, 49, 97]","[67, 193, 39, 161, 246, 15, 158, 175, 54, 63, 28, 180, 96, 224, 184, 140, 111, 113, 59, 192, 204, 194, 249, 160, 238, 32, 166, 51, 84, 243, 10, 75, 247, 80, 202, 124, 186, 13, 103, 201, 72, 248, 1, 190, 97, 200, 93, 90, 242, 198, 79, 153, 30, 207, 255, 241, 139, 203, 228, 99, 214, 235, 106, 16, 41, 128, 183, 86, 58, 212, 0, 221, 208, 42, 218, 87, 55, 4, 151, 73, 254, 250, 122, 231, 71, 19, 145, 85, 244, 24, 112, 206, 174, 22, 138, 101, 225, 215, 88, 92, 150, 2, 14, 25, 177, 102, 155, 47, 62, 20, 74, 252, 134, 45, 147, 125, 240, 98, 53, 8, 209, 130, 229, 107, 156, 169, 196, 109]","[0, 1, 2, 8, 10, 13, 14, 16, 22, 24, 25, 28, 30, 47, 53, 58, 67, 71, 75, 79, 84, 85, 86, 90, 93, 96, 97, 101, 103, 106, 107, 111, 113, 122, 130, 138, 140, 150, 151, 158, 160, 169, 180, 184, 190, 192, 194, 196, 198, 200, 201, 202, 207, 209, 212, 238, 240, 252, 254, 255]" +30,"[91, 89, 254, 244, 22, 229, 57, 178, 175, 124, 187, 46, 82, 201, 81, 165, 49, 43, 139, 8, 222, 156, 243, 172, 132, 159, 205, 88, 3, 138, 16, 193, 116, 20, 214, 144, 208, 241, 52, 13, 167, 2, 12, 182, 207, 253, 196, 230, 38, 92, 56, 4, 17, 169, 29, 11, 195, 247, 40, 173, 255, 102, 125, 202, 204, 100, 237, 210, 110, 251, 18, 197, 71, 34, 250, 10, 21, 15, 80, 137, 134, 161, 37, 79, 109, 184, 26, 65, 74, 51, 112, 85, 60, 185, 25, 93, 223, 5, 142, 234, 6, 203, 36, 150, 106, 168, 32, 105, 114, 141, 14, 158, 33, 9, 59, 231, 28, 216, 236, 68, 115, 145, 129, 240, 95, 180, 45, 119]","[81, 189, 225, 86, 113, 64, 168, 62, 129, 22, 84, 145, 56, 112, 229, 103, 108, 132, 41, 191, 98, 59, 65, 167, 138, 73, 51, 159, 11, 28, 176, 158, 100, 165, 74, 208, 245, 38, 219, 150, 164, 3, 6, 152, 200, 90, 94, 232, 50, 154, 171, 174, 239, 102, 151, 221, 27, 126, 34, 30, 178, 179, 139, 17, 131, 63, 36, 5, 123, 141, 52, 244, 235, 10, 210, 172, 121, 31, 220, 201, 144, 99, 248, 125, 8, 24, 107, 215, 49, 42, 39, 162, 190, 161, 228, 14, 58, 116, 160, 70, 188, 209, 43, 253, 55, 170, 227, 230, 207, 237, 78, 66, 157, 68, 12, 18, 242, 163, 47, 236, 7, 224, 46, 184, 197, 203, 1, 198]","[3, 5, 6, 8, 10, 11, 12, 14, 17, 18, 22, 28, 34, 36, 38, 43, 46, 49, 51, 52, 56, 59, 65, 68, 74, 81, 100, 102, 112, 116, 125, 129, 132, 138, 139, 141, 144, 145, 150, 158, 159, 161, 165, 167, 168, 172, 178, 184, 197, 201, 203, 207, 208, 210, 229, 230, 236, 237, 244, 253]" +31,"[94, 211, 43, 174, 255, 68, 1, 254, 0, 183, 198, 160, 64, 79, 164, 38, 97, 167, 220, 70, 35, 87, 54, 76, 75, 10, 213, 148, 212, 133, 22, 56, 14, 85, 197, 141, 236, 137, 202, 244, 31, 184, 143, 182, 93, 72, 168, 52, 50, 130, 246, 46, 17, 120, 203, 139, 81, 101, 151, 229, 116, 9, 95, 221, 102, 3, 201, 19, 176, 173, 59, 65, 108, 227, 224, 129, 53, 241, 172, 121, 251, 30, 234, 44, 84, 34, 159, 214, 2, 6, 24, 126, 88, 125, 112, 175, 189, 29, 163, 13, 240, 92, 186, 181, 238, 57, 4, 71, 122, 131, 178, 144, 158, 250, 61, 247, 216, 135, 231, 41, 170, 82, 98, 40, 217, 199, 243, 195]","[44, 23, 96, 80, 81, 0, 100, 85, 24, 90, 152, 210, 179, 63, 71, 143, 89, 97, 123, 28, 170, 27, 107, 32, 178, 101, 248, 41, 197, 253, 193, 221, 243, 192, 99, 74, 228, 75, 52, 124, 47, 154, 66, 142, 153, 43, 102, 137, 38, 149, 139, 191, 204, 215, 234, 6, 8, 196, 70, 106, 88, 111, 36, 25, 249, 15, 200, 211, 168, 150, 128, 105, 17, 254, 255, 78, 226, 86, 180, 83, 91, 138, 77, 68, 103, 218, 185, 206, 30, 140, 232, 209, 5, 60, 239, 122, 87, 203, 18, 16, 231, 219, 212, 235, 230, 49, 159, 108, 146, 229, 241, 233, 169, 165, 190, 9, 42, 245, 164, 37, 46, 252, 171, 136, 118, 237, 217, 194]","[0, 6, 9, 17, 24, 30, 38, 41, 43, 44, 46, 52, 68, 70, 71, 75, 81, 85, 87, 88, 97, 101, 102, 108, 122, 137, 139, 143, 159, 164, 168, 170, 178, 197, 203, 211, 212, 217, 221, 229, 231, 234, 241, 243, 254, 255]" +32,"[250, 139, 20, 180, 73, 192, 45, 242, 170, 184, 114, 98, 228, 134, 113, 130, 178, 123, 56, 161, 253, 9, 102, 186, 110, 84, 30, 59, 94, 3, 44, 33, 19, 5, 187, 26, 150, 203, 104, 215, 108, 181, 244, 243, 148, 46, 13, 37, 103, 223, 87, 202, 149, 214, 15, 82, 191, 23, 6, 117, 251, 229, 50, 67, 36, 60, 52, 120, 107, 85, 121, 81, 128, 7, 152, 158, 38, 43, 217, 183, 175, 249, 163, 95, 124, 116, 92, 35, 18, 236, 157, 80, 162, 112, 8, 90, 255, 125, 63, 173, 254, 99, 198, 126, 232, 118, 68, 88, 140, 89, 189, 194, 32, 10, 25, 119, 145, 34, 39, 234, 61, 166, 100, 218, 40, 168, 156, 83]","[181, 100, 237, 192, 35, 252, 14, 111, 215, 129, 219, 7, 77, 235, 9, 207, 125, 86, 170, 201, 245, 169, 69, 72, 105, 92, 42, 155, 16, 55, 224, 101, 231, 157, 177, 17, 28, 171, 64, 66, 248, 74, 0, 227, 172, 62, 199, 106, 79, 205, 216, 126, 145, 70, 222, 122, 6, 114, 39, 31, 1, 134, 226, 61, 141, 220, 144, 189, 160, 133, 110, 193, 127, 137, 27, 158, 115, 41, 63, 75, 230, 131, 135, 221, 103, 179, 246, 143, 73, 178, 2, 206, 254, 29, 211, 210, 53, 147, 167, 138, 54, 195, 113, 33, 24, 194, 214, 132, 123, 247, 255, 109, 150, 165, 15, 76, 240, 57, 51, 93, 146, 153, 228, 202, 161, 238, 213, 78]","[6, 7, 9, 15, 33, 35, 39, 61, 63, 73, 92, 100, 103, 110, 113, 114, 123, 125, 126, 134, 145, 150, 157, 158, 161, 170, 178, 181, 189, 192, 194, 202, 214, 215, 228, 254, 255]" +33,"[54, 182, 21, 237, 130, 154, 133, 138, 144, 220, 62, 3, 188, 231, 198, 213, 48, 209, 66, 178, 164, 14, 129, 131, 83, 233, 73, 156, 30, 151, 58, 94, 176, 86, 125, 17, 91, 45, 147, 205, 16, 247, 81, 162, 57, 63, 107, 23, 110, 253, 7, 120, 174, 67, 89, 194, 26, 19, 27, 68, 15, 72, 168, 226, 146, 5, 215, 199, 113, 59, 111, 163, 87, 245, 181, 218, 104, 126, 22, 179, 56, 10, 11, 189, 0, 42, 169, 202, 187, 75, 224, 210, 24, 141, 177, 193, 158, 225, 98, 76, 248, 88, 82, 135, 20, 186, 171, 219, 53, 201, 142, 175, 127, 35, 40, 249, 92, 32, 132, 80, 208, 115, 191, 84, 90, 4, 109, 97]","[143, 58, 8, 76, 173, 87, 241, 213, 54, 180, 136, 156, 107, 193, 38, 147, 82, 75, 68, 30, 174, 28, 59, 78, 245, 72, 185, 135, 69, 191, 138, 92, 225, 150, 45, 226, 234, 109, 81, 130, 190, 52, 62, 90, 247, 103, 211, 154, 37, 108, 46, 53, 157, 22, 146, 84, 220, 73, 91, 224, 232, 79, 231, 26, 121, 2, 229, 116, 66, 228, 182, 152, 55, 153, 210, 160, 218, 131, 246, 127, 149, 238, 70, 235, 250, 114, 117, 183, 165, 196, 33, 199, 163, 12, 142, 178, 115, 113, 16, 243, 64, 99, 105, 171, 10, 132, 63, 244, 44, 118, 96, 161, 122, 255, 40, 134, 188, 39, 110, 200, 187, 14, 219, 41, 42, 0, 221, 24]","[0, 10, 14, 16, 22, 24, 26, 30, 40, 42, 45, 53, 54, 58, 59, 62, 63, 66, 68, 72, 73, 75, 76, 81, 82, 84, 87, 90, 91, 92, 107, 109, 110, 113, 115, 127, 130, 131, 132, 135, 138, 142, 146, 147, 154, 156, 163, 171, 174, 178, 182, 187, 188, 191, 193, 199, 210, 213, 218, 219, 220, 224, 225, 226, 231, 245, 247]" +34,"[118, 74, 66, 206, 224, 64, 238, 170, 37, 113, 27, 82, 105, 67, 63, 134, 24, 35, 81, 40, 42, 189, 55, 214, 87, 204, 34, 232, 144, 159, 31, 195, 116, 91, 59, 123, 152, 28, 72, 254, 175, 6, 162, 45, 234, 223, 176, 245, 76, 211, 142, 241, 120, 61, 137, 210, 36, 166, 225, 71, 124, 22, 209, 103, 92, 203, 133, 10, 83, 213, 228, 236, 14, 136, 46, 255, 68, 197, 243, 149, 54, 160, 193, 191, 77, 168, 218, 49, 114, 230, 32, 147, 125, 121, 172, 151, 226, 178, 16, 110, 251, 235, 84, 132, 252, 192, 180, 97, 38, 39, 237, 102, 58, 139, 13, 246, 78, 70, 150, 108, 248, 85, 33, 4, 26, 143, 201, 186]","[28, 235, 117, 142, 130, 194, 61, 31, 144, 180, 40, 71, 59, 233, 66, 21, 118, 16, 110, 195, 148, 46, 18, 139, 58, 55, 143, 22, 211, 214, 231, 38, 197, 187, 186, 226, 113, 155, 241, 87, 45, 175, 13, 83, 39, 115, 42, 108, 6, 78, 93, 185, 8, 164, 68, 137, 149, 203, 163, 212, 74, 136, 179, 98, 34, 229, 170, 123, 84, 188, 204, 27, 49, 33, 10, 152, 120, 107, 26, 3, 191, 166, 111, 159, 95, 97, 134, 54, 252, 72, 238, 151, 19, 213, 12, 132, 245, 99, 218, 184, 30, 43, 102, 217, 63, 36, 244, 224, 206, 167, 192, 62, 4, 236, 82, 60, 24, 70, 92, 64, 234, 190, 77, 14, 56, 219, 37, 222]","[4, 6, 10, 13, 14, 16, 22, 24, 26, 27, 28, 31, 33, 34, 36, 37, 38, 39, 40, 42, 45, 46, 49, 54, 55, 58, 59, 61, 63, 64, 66, 68, 70, 71, 72, 74, 77, 78, 82, 83, 84, 87, 92, 97, 102, 108, 110, 113, 118, 120, 123, 132, 134, 136, 137, 139, 142, 143, 144, 149, 151, 152, 159, 166, 170, 175, 180, 186, 191, 192, 195, 197, 203, 204, 206, 211, 213, 214, 218, 224, 226, 234, 235, 236, 238, 241, 245, 252]" +35,"[22, 111, 13, 56, 148, 208, 202, 10, 47, 174, 14, 131, 192, 99, 254, 212, 103, 130, 24, 40, 100, 233, 124, 253, 105, 118, 133, 195, 119, 138, 216, 38, 140, 106, 6, 127, 21, 53, 28, 242, 4, 101, 80, 123, 48, 180, 117, 31, 190, 160, 17, 179, 59, 178, 139, 75, 102, 169, 1, 250, 246, 41, 36, 193, 172, 5, 96, 128, 222, 228, 25, 211, 63, 196, 98, 205, 241, 74, 125, 30, 165, 168, 94, 9, 170, 232, 217, 82, 81, 91, 78, 69, 86, 177, 29, 199, 219, 46, 3, 8, 184, 161, 152, 23, 116, 113, 115, 70, 244, 92, 164, 88, 110, 19, 84, 76, 32, 66, 181, 173, 166, 231, 155, 104, 52, 159, 223, 15]","[220, 79, 56, 237, 34, 19, 202, 55, 70, 214, 43, 215, 41, 241, 11, 177, 16, 109, 9, 163, 63, 136, 154, 246, 124, 120, 206, 100, 49, 204, 247, 2, 213, 188, 145, 108, 168, 167, 229, 72, 67, 64, 232, 42, 208, 185, 187, 198, 35, 81, 95, 221, 165, 218, 201, 226, 242, 51, 200, 111, 10, 44, 240, 26, 175, 155, 129, 183, 248, 12, 150, 190, 141, 59, 126, 23, 238, 210, 116, 182, 33, 32, 93, 54, 224, 207, 130, 217, 77, 176, 252, 114, 4, 227, 132, 60, 45, 179, 0, 37, 73, 105, 191, 255, 157, 235, 83, 135, 239, 189, 244, 203, 234, 76, 174, 166, 223, 71, 162, 112, 144, 50, 97, 158, 27, 7, 230, 58]","[4, 9, 10, 19, 23, 32, 41, 56, 59, 63, 70, 76, 81, 100, 105, 111, 116, 124, 130, 155, 165, 166, 168, 174, 177, 179, 190, 202, 208, 217, 223, 232, 241, 242, 244, 246]" +36,"[45, 64, 25, 225, 224, 111, 127, 9, 185, 107, 13, 68, 237, 23, 216, 32, 72, 190, 202, 100, 240, 5, 17, 200, 160, 244, 71, 51, 35, 136, 118, 170, 254, 95, 201, 149, 236, 43, 153, 159, 38, 196, 58, 75, 192, 155, 252, 151, 138, 2, 18, 89, 233, 49, 122, 203, 142, 70, 179, 229, 66, 162, 57, 186, 222, 53, 113, 231, 146, 246, 211, 125, 166, 86, 182, 22, 143, 248, 253, 131, 117, 54, 30, 114, 173, 139, 226, 59, 154, 126, 78, 48, 215, 243, 50, 187, 65, 56, 21, 37, 133, 110, 1, 195, 27, 115, 130, 164, 123, 74, 26, 157, 145, 234, 47, 106, 92, 239, 230, 24, 19, 242, 208, 93, 193, 12, 39, 171]","[91, 145, 33, 196, 35, 20, 203, 79, 26, 184, 59, 88, 72, 193, 25, 39, 105, 24, 46, 215, 217, 65, 201, 110, 186, 225, 198, 250, 144, 239, 125, 19, 120, 75, 127, 149, 77, 222, 10, 53, 218, 138, 92, 113, 213, 171, 38, 178, 192, 182, 100, 23, 154, 168, 226, 152, 32, 43, 190, 70, 64, 132, 212, 161, 208, 58, 86, 183, 179, 48, 130, 45, 2, 244, 34, 129, 31, 22, 200, 68, 37, 90, 162, 18, 51, 112, 156, 232, 139, 160, 27, 180, 123, 111, 4, 204, 253, 89, 74, 142, 93, 249, 47, 214, 211, 6, 67, 119, 153, 21, 243, 252, 3, 254, 187, 95, 185, 155, 57, 126, 216, 150, 151, 81, 195, 122, 56, 9]","[2, 9, 18, 19, 21, 22, 23, 24, 25, 26, 27, 32, 35, 37, 38, 39, 43, 45, 47, 48, 51, 53, 56, 57, 58, 59, 64, 65, 68, 70, 72, 74, 75, 86, 89, 92, 93, 95, 100, 110, 111, 113, 122, 123, 125, 126, 127, 130, 138, 139, 142, 145, 149, 151, 153, 154, 155, 160, 162, 171, 179, 182, 185, 186, 187, 190, 192, 193, 195, 196, 200, 201, 203, 208, 211, 215, 216, 222, 225, 226, 239, 243, 244, 252, 253, 254]" +37,"[90, 131, 196, 213, 45, 24, 38, 142, 147, 158, 118, 190, 40, 76, 245, 3, 170, 100, 37, 126, 140, 6, 246, 129, 194, 181, 111, 5, 85, 73, 46, 167, 54, 211, 89, 87, 74, 117, 183, 161, 15, 7, 136, 1, 200, 239, 19, 180, 207, 124, 16, 47, 27, 224, 187, 145, 144, 98, 165, 152, 134, 184, 235, 159, 55, 34, 219, 4, 30, 164, 252, 202, 191, 41, 56, 214, 21, 249, 238, 229, 23, 78, 67, 75, 139, 60, 250, 226, 110, 17, 18, 59, 8, 2, 137, 209, 189, 77, 72, 102, 119, 132, 188, 148, 61, 91, 69, 113, 66, 174, 208, 22, 58, 168, 70, 153, 138, 169, 146, 84, 48, 35, 123, 221, 106, 29, 151, 154]","[110, 3, 108, 117, 7, 181, 18, 66, 139, 90, 16, 248, 5, 241, 46, 124, 118, 19, 27, 40, 170, 196, 24, 69, 36, 245, 188, 61, 153, 246, 134, 78, 14, 45, 253, 98, 50, 71, 229, 112, 8, 59, 202, 140, 38, 119, 232, 79, 194, 159, 144, 228, 32, 180, 148, 77, 189, 213, 60, 238, 127, 158, 41, 255, 192, 96, 215, 131, 55, 242, 76, 161, 226, 254, 176, 102, 6, 73, 126, 129, 221, 193, 47, 164, 239, 37, 191, 80, 186, 113, 1, 165, 123, 141, 233, 172, 72, 166, 101, 68, 49, 184, 136, 135, 97, 197, 2, 89, 74, 63, 216, 137, 250, 54, 155, 84, 0, 212, 252, 114, 67, 111, 30, 185, 230, 244, 171, 138]","[1, 2, 3, 5, 6, 7, 8, 16, 18, 19, 24, 27, 30, 37, 38, 40, 41, 45, 46, 47, 54, 55, 59, 60, 61, 66, 67, 69, 72, 73, 74, 76, 77, 78, 84, 89, 90, 98, 102, 110, 111, 113, 117, 118, 119, 123, 124, 126, 129, 131, 134, 136, 137, 138, 139, 140, 144, 148, 153, 158, 159, 161, 164, 165, 170, 180, 181, 184, 188, 189, 191, 194, 196, 202, 213, 221, 226, 229, 238, 239, 245, 246, 250, 252]" +38,"[68, 42, 242, 215, 126, 155, 33, 181, 21, 125, 87, 102, 173, 60, 164, 174, 36, 131, 143, 63, 34, 86, 80, 58, 207, 239, 222, 9, 24, 202, 175, 128, 228, 187, 133, 151, 19, 92, 224, 30, 98, 0, 61, 201, 203, 116, 50, 113, 190, 14, 53, 49, 56, 191, 106, 22, 172, 109, 132, 205, 122, 140, 152, 195, 188, 107, 135, 197, 17, 81, 123, 245, 176, 97, 120, 213, 184, 100, 27, 5, 54, 161, 226, 158, 130, 31, 199, 232, 96, 229, 55, 112, 160, 10, 146, 101, 193, 99, 117, 51, 48, 104, 88, 7, 129, 77, 139, 37, 217, 94, 124, 119, 142, 66, 8, 238, 29, 74, 157, 4, 20, 134, 41, 148, 166, 103, 247, 147]","[83, 184, 29, 42, 91, 229, 253, 117, 49, 13, 205, 85, 218, 208, 9, 183, 122, 101, 189, 67, 14, 37, 76, 94, 48, 17, 62, 149, 61, 159, 170, 75, 44, 90, 142, 164, 249, 7, 47, 126, 139, 132, 216, 10, 173, 26, 25, 254, 89, 70, 248, 154, 18, 68, 198, 155, 69, 163, 103, 32, 79, 228, 217, 2, 241, 45, 121, 204, 255, 144, 71, 141, 224, 145, 60, 210, 236, 230, 213, 35, 30, 11, 78, 225, 15, 169, 22, 64, 252, 219, 178, 54, 251, 186, 168, 8, 151, 95, 28, 74, 63, 200, 220, 143, 55, 99, 112, 114, 156, 92, 110, 96, 223, 100, 171, 136, 209, 240, 129, 21, 84, 59, 3, 82, 40, 177, 138, 88]","[7, 8, 9, 10, 14, 17, 21, 22, 29, 30, 37, 42, 48, 49, 54, 55, 60, 61, 63, 68, 74, 88, 92, 94, 96, 99, 100, 101, 103, 112, 117, 122, 126, 129, 132, 139, 142, 143, 151, 155, 164, 173, 184, 205, 213, 217, 224, 228, 229]" +39,"[253, 41, 93, 243, 136, 238, 188, 85, 212, 55, 91, 61, 75, 116, 66, 81, 248, 120, 159, 207, 111, 6, 139, 164, 186, 12, 24, 181, 123, 112, 69, 50, 138, 189, 39, 29, 68, 163, 227, 146, 214, 187, 60, 18, 162, 228, 153, 23, 137, 210, 182, 99, 98, 155, 87, 203, 0, 209, 144, 173, 26, 96, 4, 179, 217, 74, 7, 208, 221, 104, 114, 180, 10, 77, 70, 40, 67, 82, 28, 191, 178, 252, 130, 21, 175, 165, 201, 51, 117, 32, 218, 34, 83, 25, 16, 128, 31, 194, 171, 9, 36, 193, 202, 109, 48, 127, 236, 73, 255, 13, 241, 240, 232, 115, 254, 172, 157, 101, 72, 251, 35, 131, 76, 237, 147, 79, 233, 121]","[0, 143, 97, 32, 13, 85, 181, 228, 114, 218, 17, 38, 72, 186, 23, 252, 12, 69, 1, 238, 197, 88, 116, 99, 81, 75, 10, 248, 173, 100, 115, 92, 198, 162, 237, 70, 167, 255, 193, 43, 172, 241, 156, 188, 149, 203, 184, 199, 21, 145, 242, 253, 26, 66, 15, 20, 146, 120, 147, 7, 61, 98, 179, 30, 196, 180, 57, 102, 229, 240, 121, 125, 76, 91, 174, 42, 243, 50, 127, 158, 68, 141, 117, 207, 110, 175, 164, 122, 227, 190, 39, 3, 126, 47, 206, 166, 89, 101, 35, 140, 134, 123, 132, 239, 29, 194, 33, 73, 235, 195, 65, 182, 189, 64, 109, 246, 220, 159, 254, 202, 103, 19, 25, 60, 58, 78, 124, 170]","[0, 7, 10, 12, 13, 21, 23, 25, 26, 29, 32, 35, 39, 50, 60, 61, 66, 68, 69, 70, 72, 73, 75, 76, 81, 85, 91, 98, 99, 101, 109, 114, 115, 116, 117, 120, 121, 123, 127, 146, 147, 159, 162, 164, 172, 173, 175, 179, 180, 181, 182, 186, 188, 189, 193, 194, 202, 203, 207, 218, 227, 228, 237, 238, 240, 241, 243, 248, 252, 253, 254, 255]" +40,"[255, 12, 158, 117, 69, 26, 154, 159, 219, 109, 70, 245, 136, 49, 127, 167, 128, 124, 94, 32, 152, 96, 142, 112, 46, 92, 139, 48, 18, 161, 236, 134, 57, 45, 53, 211, 192, 133, 30, 52, 17, 223, 71, 50, 232, 213, 33, 61, 156, 40, 4, 103, 146, 137, 121, 25, 1, 63, 244, 87, 175, 165, 64, 157, 11, 180, 107, 222, 37, 31, 101, 99, 191, 42, 148, 183, 65, 56, 111, 77, 5, 58, 227, 108, 78, 179, 166, 212, 120, 125, 238, 215, 131, 2, 171, 89, 116, 234, 114, 47, 36, 196, 151, 93, 230, 9, 155, 68, 15, 59, 119, 110, 35, 226, 126, 178, 23, 209, 170, 16, 248, 22, 144, 203, 143, 186, 100, 206]","[85, 8, 108, 182, 146, 245, 64, 250, 174, 25, 172, 127, 168, 90, 179, 100, 76, 177, 249, 229, 73, 18, 228, 50, 116, 55, 231, 6, 199, 158, 113, 96, 82, 52, 132, 66, 19, 247, 242, 107, 80, 20, 236, 214, 176, 43, 138, 150, 15, 163, 209, 44, 79, 84, 86, 218, 21, 41, 67, 180, 173, 81, 104, 160, 101, 221, 224, 165, 35, 195, 200, 185, 243, 110, 14, 26, 34, 219, 189, 122, 204, 181, 115, 207, 239, 233, 24, 106, 202, 190, 156, 232, 112, 246, 147, 71, 136, 91, 140, 192, 118, 17, 28, 119, 208, 123, 164, 213, 241, 135, 54, 9, 70, 210, 36, 13, 145, 38, 46, 244, 222, 184, 149, 153, 75, 141, 154, 87]","[9, 15, 17, 18, 25, 26, 35, 36, 46, 50, 52, 64, 70, 71, 87, 96, 100, 101, 107, 108, 110, 112, 116, 119, 127, 136, 146, 154, 156, 158, 165, 179, 180, 192, 209, 213, 219, 222, 232, 236, 244, 245]" +41,"[83, 142, 66, 130, 202, 11, 13, 139, 92, 100, 214, 21, 245, 176, 210, 71, 189, 235, 74, 9, 227, 226, 58, 122, 247, 104, 81, 194, 110, 20, 161, 249, 157, 150, 143, 121, 173, 204, 118, 133, 107, 10, 95, 8, 237, 37, 85, 2, 126, 75, 137, 233, 234, 28, 218, 219, 138, 148, 171, 47, 119, 170, 144, 31, 33, 30, 162, 223, 127, 147, 211, 236, 206, 63, 117, 35, 101, 67, 229, 106, 64, 158, 91, 141, 39, 222, 196, 89, 129, 19, 187, 14, 205, 169, 25, 99, 178, 42, 1, 77, 78, 132, 69, 193, 114, 61, 55, 164, 116, 41, 23, 242, 96, 108, 38, 84, 182, 238, 52, 22, 241, 215, 51, 217, 212, 140, 252, 70]","[138, 185, 225, 196, 101, 129, 76, 108, 40, 106, 78, 128, 216, 195, 182, 189, 198, 171, 158, 130, 148, 21, 163, 126, 56, 1, 215, 74, 71, 154, 223, 54, 34, 240, 10, 233, 247, 234, 96, 70, 91, 169, 241, 0, 141, 88, 239, 160, 67, 63, 16, 18, 19, 159, 61, 58, 104, 173, 222, 205, 95, 111, 203, 238, 186, 103, 17, 150, 83, 85, 123, 212, 153, 110, 69, 48, 208, 105, 15, 31, 62, 59, 92, 80, 55, 84, 190, 2, 52, 115, 114, 109, 226, 64, 29, 42, 13, 152, 143, 107, 155, 236, 99, 132, 20, 142, 33, 100, 246, 51, 140, 35, 214, 177, 122, 37, 237, 219, 166, 11, 184, 176, 38, 180, 200, 66, 161, 97]","[1, 2, 10, 11, 13, 19, 20, 21, 31, 33, 35, 37, 38, 42, 51, 52, 55, 58, 61, 63, 64, 66, 67, 69, 70, 71, 74, 78, 83, 84, 85, 91, 92, 95, 96, 99, 100, 101, 104, 106, 107, 108, 110, 114, 122, 126, 129, 130, 132, 138, 140, 141, 142, 143, 148, 150, 158, 161, 169, 171, 173, 176, 182, 189, 196, 205, 212, 214, 215, 219, 222, 223, 226, 233, 234, 236, 237, 238, 241, 247]" +42,"[26, 67, 91, 13, 45, 255, 131, 76, 211, 176, 126, 18, 237, 97, 15, 124, 128, 88, 66, 89, 30, 65, 83, 149, 236, 144, 160, 23, 79, 207, 94, 203, 197, 7, 218, 161, 205, 42, 80, 72, 107, 22, 209, 60, 172, 247, 157, 81, 99, 179, 95, 82, 139, 53, 216, 188, 70, 204, 12, 19, 213, 167, 104, 175, 59, 186, 222, 29, 116, 86, 181, 148, 38, 156, 168, 110, 184, 194, 130, 164, 122, 34, 252, 192, 78, 137, 242, 56, 74, 198, 193, 84, 75, 47, 2, 85, 240, 35, 163, 152, 63, 25, 61, 103, 234, 180, 182, 62, 173, 132, 100, 28, 151, 31, 190, 155, 206, 73, 231, 166, 158, 111, 127, 165, 229, 191, 93, 50]","[95, 224, 84, 10, 143, 18, 91, 223, 104, 42, 140, 221, 179, 32, 186, 144, 236, 216, 164, 200, 247, 109, 110, 29, 85, 210, 2, 241, 71, 252, 19, 23, 135, 234, 211, 150, 168, 66, 159, 92, 141, 4, 48, 240, 245, 127, 3, 61, 57, 129, 125, 250, 130, 182, 38, 230, 166, 36, 83, 94, 111, 207, 249, 22, 72, 193, 116, 58, 12, 45, 112, 167, 74, 215, 190, 103, 24, 98, 138, 30, 147, 183, 16, 56, 152, 99, 217, 59, 96, 148, 142, 79, 105, 194, 254, 222, 47, 41, 9, 160, 205, 60, 26, 25, 35, 73, 49, 7, 123, 184, 65, 177, 227, 176, 87, 82, 67, 76, 237, 128, 6, 77, 157, 149, 131, 62, 97, 220]","[2, 7, 12, 18, 19, 22, 23, 25, 26, 29, 30, 35, 38, 42, 45, 47, 56, 59, 60, 61, 62, 65, 66, 67, 72, 73, 74, 76, 79, 82, 83, 84, 85, 91, 94, 95, 97, 99, 103, 104, 110, 111, 116, 127, 128, 130, 131, 144, 148, 149, 152, 157, 160, 164, 166, 167, 168, 176, 179, 182, 184, 186, 190, 193, 194, 205, 207, 211, 216, 222, 234, 236, 237, 240, 247, 252]" +43,"[132, 30, 65, 191, 88, 168, 60, 170, 142, 146, 53, 250, 75, 143, 155, 57, 100, 4, 208, 243, 56, 246, 157, 120, 113, 206, 77, 21, 121, 255, 166, 227, 117, 219, 40, 89, 147, 254, 198, 144, 45, 141, 134, 164, 108, 232, 63, 245, 150, 66, 221, 48, 222, 0, 44, 167, 55, 244, 138, 26, 46, 3, 10, 237, 145, 54, 223, 95, 105, 11, 42, 160, 188, 27, 71, 24, 131, 51, 230, 76, 185, 62, 127, 156, 91, 234, 178, 13, 172, 73, 50, 86, 165, 87, 28, 96, 129, 217, 158, 114, 111, 8, 242, 136, 7, 201, 2, 41, 133, 104, 52, 94, 203, 162, 9, 124, 173, 37, 139, 70, 194, 115, 43, 161, 163, 205, 204, 72]","[46, 31, 3, 220, 117, 1, 206, 77, 164, 126, 169, 200, 194, 223, 80, 0, 137, 144, 246, 11, 92, 15, 29, 209, 138, 202, 100, 129, 51, 99, 27, 216, 147, 5, 177, 131, 244, 240, 163, 104, 124, 96, 2, 132, 112, 24, 36, 66, 114, 247, 190, 97, 182, 91, 253, 18, 186, 72, 207, 239, 153, 47, 183, 249, 233, 61, 155, 17, 192, 32, 184, 60, 205, 214, 39, 168, 154, 122, 69, 90, 217, 151, 48, 57, 235, 19, 176, 16, 135, 152, 119, 59, 102, 236, 67, 89, 224, 110, 128, 158, 162, 187, 62, 238, 157, 40, 52, 73, 23, 30, 230, 231, 136, 65, 83, 212, 56, 252, 133, 118, 225, 20, 21, 181, 215, 78, 120, 197]","[0, 2, 3, 11, 21, 24, 27, 30, 40, 46, 48, 51, 52, 56, 57, 60, 62, 65, 66, 72, 73, 77, 89, 91, 96, 100, 104, 114, 117, 120, 124, 129, 131, 132, 133, 136, 138, 144, 147, 155, 157, 158, 162, 163, 164, 168, 194, 205, 206, 217, 223, 230, 244, 246]" +44,"[89, 250, 21, 160, 71, 68, 188, 26, 192, 87, 54, 72, 162, 210, 254, 82, 149, 204, 77, 85, 75, 69, 63, 1, 35, 114, 62, 45, 109, 38, 224, 132, 147, 20, 172, 191, 70, 86, 84, 176, 27, 140, 99, 50, 226, 13, 64, 238, 104, 112, 74, 235, 105, 125, 164, 159, 40, 227, 234, 7, 228, 121, 128, 96, 156, 198, 163, 56, 37, 4, 44, 146, 73, 173, 168, 81, 80, 25, 52, 208, 16, 60, 245, 55, 138, 0, 53, 6, 102, 221, 95, 136, 24, 177, 142, 211, 233, 215, 33, 43, 110, 48, 17, 122, 83, 120, 248, 246, 103, 100, 223, 29, 141, 167, 115, 155, 135, 65, 126, 137, 134, 31, 219, 184, 255, 46, 212, 32]","[7, 12, 224, 207, 2, 178, 126, 25, 116, 166, 56, 124, 102, 113, 30, 85, 91, 94, 232, 101, 1, 123, 183, 180, 244, 212, 181, 78, 225, 36, 150, 93, 127, 10, 185, 76, 8, 67, 48, 249, 200, 128, 100, 218, 205, 238, 108, 66, 243, 240, 221, 158, 174, 246, 11, 51, 251, 217, 97, 253, 237, 168, 220, 165, 61, 175, 43, 190, 139, 39, 194, 28, 131, 72, 154, 192, 195, 161, 3, 230, 59, 199, 219, 104, 187, 6, 201, 197, 164, 233, 148, 34, 235, 15, 152, 50, 241, 19, 9, 18, 5, 88, 68, 86, 92, 73, 118, 26, 242, 119, 90, 42, 170, 142, 203, 186, 193, 236, 214, 35, 80, 89, 64, 252, 111, 22, 38, 206]","[1, 6, 7, 25, 26, 35, 38, 43, 48, 50, 56, 64, 68, 72, 73, 80, 85, 86, 89, 100, 102, 104, 126, 128, 142, 164, 168, 192, 212, 219, 221, 224, 233, 235, 238, 246]" +45,"[74, 9, 207, 177, 24, 175, 211, 229, 87, 222, 143, 252, 7, 134, 132, 5, 0, 250, 204, 59, 151, 201, 187, 155, 58, 118, 223, 67, 139, 146, 137, 88, 232, 172, 210, 153, 10, 77, 208, 178, 72, 39, 157, 46, 47, 221, 57, 82, 214, 159, 56, 119, 63, 168, 51, 79, 35, 125, 180, 103, 99, 147, 169, 26, 94, 148, 127, 171, 224, 212, 138, 251, 34, 198, 161, 135, 102, 238, 89, 20, 195, 209, 216, 239, 122, 234, 247, 140, 236, 182, 14, 116, 48, 129, 249, 206, 37, 170, 81, 131, 150, 245, 18, 235, 141, 106, 244, 144, 183, 154, 130, 33, 228, 52, 42, 101, 40, 230, 184, 97, 112, 133, 117, 191, 124, 50, 126, 108]","[25, 171, 74, 148, 207, 177, 237, 143, 59, 57, 150, 123, 35, 70, 40, 37, 19, 139, 144, 228, 122, 132, 155, 94, 211, 89, 138, 80, 160, 72, 226, 81, 14, 244, 252, 219, 233, 206, 126, 247, 20, 255, 184, 5, 198, 117, 169, 214, 120, 168, 108, 39, 232, 127, 216, 251, 182, 239, 51, 115, 201, 170, 79, 110, 209, 175, 88, 134, 26, 16, 87, 235, 50, 130, 77, 92, 161, 188, 137, 102, 31, 180, 124, 55, 56, 157, 222, 199, 119, 86, 32, 145, 61, 0, 68, 186, 42, 78, 142, 146, 34, 82, 103, 125, 221, 204, 128, 212, 97, 196, 141, 147, 241, 250, 236, 49, 191, 249, 99, 245, 44, 58, 7, 116, 159, 224, 63, 43]","[0, 5, 7, 14, 20, 26, 34, 35, 37, 39, 40, 42, 50, 51, 56, 57, 58, 59, 63, 72, 74, 77, 79, 81, 82, 87, 88, 89, 94, 97, 99, 102, 103, 108, 116, 117, 119, 122, 124, 125, 126, 127, 130, 132, 134, 137, 138, 139, 141, 143, 144, 146, 147, 148, 150, 155, 157, 159, 161, 168, 169, 170, 171, 175, 177, 180, 182, 184, 191, 198, 201, 204, 206, 207, 209, 211, 212, 214, 216, 221, 222, 224, 228, 232, 235, 236, 239, 244, 245, 247, 249, 250, 251, 252]" +46,"[25, 113, 164, 213, 27, 166, 238, 202, 149, 130, 30, 197, 127, 143, 174, 24, 240, 63, 89, 126, 139, 175, 26, 173, 35, 237, 169, 115, 16, 241, 234, 88, 68, 154, 137, 8, 190, 97, 110, 21, 224, 236, 170, 140, 124, 232, 13, 81, 57, 9, 228, 181, 94, 233, 69, 204, 7, 47, 18, 17, 128, 201, 251, 105, 243, 43, 176, 199, 117, 39, 46, 112, 100, 101, 82, 239, 3, 151, 62, 203, 98, 158, 119, 72, 231, 247, 210, 198, 165, 150, 83, 65, 152, 193, 12, 48, 96, 93, 15, 219, 19, 29, 131, 206, 54, 85, 230, 148, 211, 45, 120, 160, 122, 207, 161, 133, 147, 36, 156, 185, 6, 10, 90, 53, 87, 220, 1, 168]","[92, 179, 14, 39, 41, 63, 174, 148, 45, 21, 18, 182, 212, 40, 8, 197, 237, 66, 46, 126, 116, 79, 195, 5, 149, 137, 167, 43, 36, 95, 205, 246, 85, 211, 127, 163, 60, 133, 221, 47, 83, 42, 24, 156, 180, 164, 252, 183, 123, 124, 188, 19, 192, 208, 44, 161, 110, 51, 122, 86, 112, 11, 111, 218, 236, 177, 228, 17, 49, 58, 157, 125, 254, 239, 59, 186, 26, 229, 233, 73, 106, 37, 120, 217, 90, 10, 16, 215, 169, 87, 235, 64, 105, 159, 3, 6, 166, 160, 70, 154, 191, 220, 189, 81, 171, 115, 76, 196, 118, 253, 241, 200, 68, 74, 88, 248, 91, 1, 141, 72, 245, 146, 32, 34, 25, 244, 98, 53]","[1, 3, 6, 8, 10, 16, 17, 18, 19, 21, 24, 25, 26, 36, 39, 43, 45, 46, 47, 53, 63, 68, 72, 81, 83, 85, 87, 88, 90, 98, 105, 110, 112, 115, 120, 122, 124, 126, 127, 133, 137, 148, 149, 154, 156, 160, 161, 164, 166, 169, 174, 197, 211, 220, 228, 233, 236, 237, 239, 241]" +47,"[223, 221, 49, 78, 141, 190, 66, 147, 10, 34, 58, 134, 136, 244, 250, 65, 108, 181, 91, 44, 178, 0, 88, 85, 224, 100, 29, 98, 127, 39, 245, 219, 177, 242, 198, 77, 251, 8, 180, 193, 128, 133, 15, 42, 68, 73, 76, 225, 90, 164, 110, 195, 145, 56, 246, 131, 236, 35, 53, 95, 204, 212, 214, 18, 211, 20, 14, 87, 231, 158, 72, 184, 43, 57, 249, 59, 149, 218, 107, 240, 47, 167, 192, 227, 123, 109, 4, 50, 121, 142, 74, 96, 122, 202, 186, 169, 124, 111, 33, 137, 156, 126, 45, 89, 84, 38, 93, 37, 60, 28, 206, 187, 201, 171, 146, 222, 5, 116, 25, 30, 26, 54, 154, 41, 165, 159, 252, 148]","[41, 137, 138, 116, 65, 221, 240, 193, 202, 159, 36, 52, 120, 10, 68, 241, 156, 84, 71, 251, 227, 39, 5, 180, 28, 178, 66, 233, 177, 76, 165, 158, 34, 44, 190, 79, 123, 216, 128, 33, 219, 45, 72, 140, 184, 22, 176, 59, 56, 214, 194, 147, 38, 143, 26, 49, 0, 109, 89, 19, 98, 54, 247, 25, 69, 75, 64, 1, 42, 136, 108, 179, 226, 175, 80, 232, 231, 85, 201, 81, 58, 27, 228, 250, 87, 17, 154, 55, 14, 130, 30, 218, 131, 51, 127, 20, 198, 205, 107, 244, 187, 141, 53, 126, 167, 246, 96, 134, 62, 90, 225, 73, 245, 206, 100, 43, 70, 35, 78, 168, 212, 121, 252, 162, 220, 145, 47, 197]","[0, 5, 10, 14, 20, 25, 26, 28, 30, 33, 34, 35, 38, 39, 41, 42, 43, 44, 45, 47, 49, 53, 54, 56, 58, 59, 65, 66, 68, 72, 73, 76, 78, 84, 85, 87, 89, 90, 96, 98, 100, 107, 108, 109, 116, 121, 123, 126, 127, 128, 131, 134, 136, 137, 141, 145, 147, 154, 156, 158, 159, 165, 167, 177, 178, 180, 184, 187, 190, 193, 198, 201, 202, 206, 212, 214, 218, 219, 221, 225, 227, 231, 240, 244, 245, 246, 250, 251, 252]" +48,"[199, 71, 243, 12, 84, 29, 115, 128, 255, 7, 31, 175, 155, 49, 188, 39, 165, 180, 60, 97, 50, 206, 189, 85, 4, 65, 116, 185, 126, 46, 23, 114, 159, 2, 75, 101, 152, 63, 25, 88, 141, 147, 28, 229, 87, 125, 57, 173, 19, 54, 251, 77, 135, 113, 26, 191, 211, 86, 138, 208, 235, 66, 253, 151, 170, 131, 240, 194, 48, 62, 51, 55, 139, 80, 37, 160, 237, 91, 45, 92, 190, 148, 187, 98, 34, 58, 78, 216, 0, 119, 82, 111, 109, 1, 213, 90, 17, 79, 145, 18, 212, 112, 238, 94, 171, 225, 83, 169, 164, 89, 153, 27, 69, 42, 33, 100, 105, 195, 30, 32, 96, 76, 149, 120, 110, 202, 186, 95]","[93, 185, 78, 251, 128, 153, 4, 237, 16, 69, 148, 204, 233, 224, 84, 60, 213, 252, 126, 81, 196, 255, 244, 113, 31, 71, 98, 243, 77, 229, 19, 219, 49, 163, 138, 190, 159, 100, 183, 18, 23, 54, 51, 27, 234, 228, 231, 7, 58, 35, 2, 14, 130, 73, 162, 123, 157, 67, 175, 179, 248, 12, 253, 86, 217, 24, 85, 116, 68, 53, 74, 109, 95, 189, 182, 239, 250, 43, 191, 211, 26, 235, 207, 104, 197, 34, 240, 133, 142, 227, 174, 29, 42, 76, 247, 117, 226, 1, 202, 110, 83, 145, 63, 135, 212, 90, 170, 147, 129, 88, 242, 176, 38, 173, 57, 225, 55, 177, 156, 201, 238, 39, 3, 194, 152, 64, 120, 112]","[1, 2, 4, 7, 12, 18, 19, 23, 26, 27, 29, 31, 34, 39, 42, 49, 51, 54, 55, 57, 58, 60, 63, 69, 71, 76, 77, 78, 83, 84, 85, 86, 88, 90, 95, 98, 100, 109, 110, 112, 113, 116, 120, 126, 128, 135, 138, 145, 147, 148, 152, 153, 159, 170, 173, 175, 185, 189, 190, 191, 194, 202, 211, 212, 213, 225, 229, 235, 237, 238, 240, 243, 251, 253, 255]" +49,"[208, 165, 238, 245, 104, 110, 220, 233, 95, 70, 122, 60, 117, 244, 47, 135, 76, 154, 216, 97, 0, 180, 204, 255, 7, 181, 211, 75, 100, 72, 91, 49, 144, 124, 38, 232, 65, 251, 230, 137, 241, 50, 20, 193, 174, 80, 162, 224, 57, 142, 133, 253, 1, 202, 147, 148, 158, 191, 43, 41, 126, 85, 13, 27, 82, 222, 196, 182, 30, 68, 221, 141, 112, 134, 212, 2, 44, 113, 74, 176, 153, 52, 164, 9, 78, 48, 189, 121, 219, 84, 198, 105, 73, 163, 6, 127, 28, 225, 194, 145, 66, 160, 123, 203, 16, 71, 35, 101, 23, 33, 188, 90, 125, 237, 139, 63, 99, 40, 24, 128, 118, 248, 214, 69, 231, 177, 161, 39]","[237, 213, 89, 171, 0, 14, 161, 113, 85, 23, 198, 202, 110, 126, 172, 230, 244, 86, 50, 33, 155, 201, 60, 197, 95, 13, 196, 241, 5, 143, 163, 165, 49, 160, 131, 97, 53, 133, 106, 79, 231, 81, 117, 39, 121, 100, 246, 167, 1, 168, 26, 127, 66, 219, 224, 253, 195, 71, 139, 41, 211, 142, 235, 159, 10, 188, 124, 158, 254, 57, 20, 65, 73, 137, 189, 242, 16, 148, 226, 112, 52, 27, 58, 51, 22, 56, 122, 7, 218, 30, 11, 42, 150, 225, 250, 228, 68, 38, 144, 236, 40, 180, 104, 153, 99, 47, 233, 248, 61, 177, 2, 204, 232, 96, 193, 245, 6, 69, 107, 185, 88, 67, 216, 15, 173, 90, 72, 102]","[0, 1, 2, 6, 7, 13, 16, 20, 23, 27, 30, 33, 38, 39, 40, 41, 47, 49, 50, 52, 57, 60, 65, 66, 68, 69, 71, 72, 73, 85, 90, 95, 97, 99, 100, 104, 110, 112, 113, 117, 121, 122, 124, 126, 127, 133, 137, 139, 142, 144, 148, 153, 158, 160, 161, 163, 165, 177, 180, 188, 189, 193, 196, 198, 202, 204, 211, 216, 219, 224, 225, 230, 231, 232, 233, 237, 241, 244, 245, 248, 253]" +50,"[249, 29, 241, 55, 181, 41, 44, 67, 25, 149, 192, 228, 191, 164, 143, 96, 0, 112, 105, 193, 92, 220, 206, 119, 141, 30, 211, 214, 32, 196, 226, 243, 117, 85, 132, 78, 39, 59, 24, 238, 147, 171, 16, 5, 204, 110, 185, 202, 46, 144, 95, 199, 54, 186, 80, 73, 43, 120, 34, 62, 47, 135, 146, 205, 82, 166, 51, 72, 114, 231, 244, 248, 21, 33, 69, 131, 198, 79, 137, 174, 1, 45, 180, 18, 187, 63, 170, 107, 40, 179, 176, 50, 200, 88, 175, 203, 98, 35, 124, 84, 224, 13, 86, 28, 127, 14, 142, 115, 74, 128, 37, 104, 253, 77, 208, 100, 102, 157, 91, 81, 217, 255, 15, 168, 136, 195, 17, 230]","[213, 208, 193, 55, 98, 76, 28, 223, 180, 241, 69, 146, 152, 65, 226, 120, 53, 158, 99, 103, 170, 41, 111, 84, 62, 187, 175, 116, 154, 77, 96, 25, 26, 137, 91, 171, 2, 224, 173, 27, 86, 206, 5, 119, 32, 161, 85, 33, 68, 236, 23, 139, 196, 217, 13, 6, 14, 167, 124, 144, 88, 174, 172, 233, 219, 106, 133, 108, 44, 30, 122, 100, 190, 205, 129, 57, 74, 238, 29, 132, 189, 166, 239, 127, 204, 20, 228, 11, 63, 254, 186, 168, 56, 24, 47, 230, 0, 94, 207, 177, 34, 40, 73, 15, 3, 184, 66, 81, 147, 249, 50, 67, 220, 235, 141, 51, 181, 107, 102, 214, 198, 72, 78, 130, 80, 110, 8, 203]","[0, 5, 13, 14, 15, 24, 25, 28, 29, 30, 32, 33, 34, 40, 41, 44, 47, 50, 51, 55, 62, 63, 67, 69, 72, 73, 74, 77, 78, 80, 81, 84, 85, 86, 88, 91, 96, 98, 100, 102, 107, 110, 119, 120, 124, 127, 132, 137, 141, 144, 146, 147, 166, 168, 170, 171, 174, 175, 180, 181, 186, 187, 193, 196, 198, 203, 204, 205, 206, 208, 214, 217, 220, 224, 226, 228, 230, 238, 241, 249]" +51,"[71, 12, 53, 20, 90, 244, 87, 51, 238, 24, 126, 109, 11, 129, 40, 191, 103, 154, 167, 124, 43, 72, 41, 56, 99, 84, 42, 57, 235, 39, 215, 115, 199, 212, 149, 182, 61, 97, 22, 165, 125, 221, 185, 106, 138, 35, 63, 189, 1, 140, 116, 184, 83, 234, 159, 172, 176, 195, 78, 48, 174, 59, 114, 45, 194, 246, 218, 197, 29, 60, 26, 128, 204, 150, 156, 2, 14, 5, 69, 3, 8, 47, 33, 81, 4, 190, 148, 161, 229, 52, 21, 153, 111, 119, 163, 139, 117, 94, 67, 36, 232, 102, 9, 7, 101, 50, 188, 137, 132, 198, 44, 136, 216, 224, 170, 6, 169, 92, 219, 134, 177, 0, 118, 183, 88, 211, 147, 104]","[252, 212, 160, 236, 209, 109, 202, 143, 255, 105, 228, 106, 156, 54, 62, 229, 58, 82, 223, 139, 68, 49, 136, 126, 253, 254, 187, 52, 217, 129, 124, 19, 41, 99, 247, 190, 91, 173, 33, 40, 220, 18, 46, 115, 231, 107, 164, 240, 64, 29, 59, 83, 76, 70, 86, 179, 26, 237, 55, 251, 79, 174, 137, 71, 180, 225, 207, 241, 37, 140, 153, 192, 81, 51, 80, 93, 61, 16, 171, 249, 60, 155, 245, 53, 210, 121, 222, 43, 244, 130, 34, 213, 122, 248, 108, 10, 158, 239, 196, 98, 205, 185, 32, 238, 57, 120, 227, 145, 191, 21, 193, 141, 165, 206, 150, 89, 38, 250, 135, 24, 200, 157, 168, 0, 87, 39, 66, 214]","[0, 21, 24, 26, 29, 33, 39, 40, 41, 43, 51, 52, 53, 57, 59, 60, 61, 71, 81, 83, 87, 99, 106, 109, 115, 124, 126, 129, 136, 137, 139, 140, 150, 153, 156, 165, 174, 185, 190, 191, 212, 229, 238, 244]" +52,"[207, 108, 194, 18, 182, 186, 195, 117, 223, 222, 92, 132, 235, 40, 127, 107, 189, 228, 31, 101, 119, 97, 28, 42, 116, 155, 204, 93, 241, 89, 21, 149, 27, 252, 14, 202, 104, 206, 34, 163, 136, 177, 248, 209, 133, 237, 78, 190, 130, 16, 10, 70, 175, 11, 167, 60, 20, 148, 32, 154, 231, 110, 173, 103, 105, 114, 17, 123, 94, 251, 232, 214, 152, 96, 210, 122, 12, 64, 215, 75, 196, 69, 197, 98, 166, 63, 48, 128, 198, 181, 54, 184, 255, 246, 76, 1, 67, 147, 211, 52, 65, 129, 139, 137, 242, 143, 36, 102, 8, 22, 55, 200, 15, 165, 77, 185, 134, 58, 82, 39, 205, 124, 45, 157, 26, 191, 106, 49]","[115, 42, 104, 175, 26, 56, 86, 210, 65, 164, 233, 91, 228, 97, 223, 38, 47, 46, 10, 155, 102, 126, 108, 177, 133, 254, 161, 122, 227, 63, 176, 90, 83, 106, 225, 142, 78, 71, 22, 234, 206, 55, 64, 229, 17, 185, 103, 209, 128, 21, 93, 198, 131, 28, 25, 245, 179, 199, 189, 19, 62, 188, 138, 100, 134, 213, 201, 51, 193, 44, 75, 121, 214, 23, 170, 148, 12, 50, 3, 6, 238, 187, 68, 24, 207, 178, 89, 15, 72, 84, 145, 35, 172, 45, 251, 58, 31, 190, 174, 162, 252, 53, 4, 147, 1, 57, 80, 74, 76, 135, 79, 29, 219, 224, 95, 249, 0, 212, 194, 220, 73, 87, 173, 69, 247, 60, 248, 125]","[1, 10, 12, 15, 17, 21, 22, 26, 28, 31, 42, 45, 55, 58, 60, 63, 64, 65, 69, 75, 76, 78, 89, 93, 97, 102, 103, 104, 106, 108, 122, 128, 133, 134, 147, 148, 155, 173, 175, 177, 185, 189, 190, 194, 198, 206, 207, 209, 210, 214, 223, 228, 248, 251, 252]" +53,"[218, 189, 239, 222, 104, 165, 160, 85, 49, 72, 166, 177, 97, 130, 164, 147, 84, 172, 156, 106, 204, 255, 60, 51, 212, 221, 25, 196, 87, 79, 183, 149, 86, 200, 138, 181, 241, 113, 76, 224, 24, 73, 245, 63, 96, 159, 3, 48, 11, 137, 182, 57, 142, 112, 140, 31, 80, 95, 89, 211, 82, 23, 206, 227, 75, 167, 152, 151, 194, 173, 146, 135, 58, 64, 157, 213, 55, 192, 199, 188, 249, 56, 240, 186, 207, 145, 161, 148, 35, 108, 32, 78, 105, 66, 17, 109, 2, 118, 228, 4, 44, 65, 27, 125, 169, 208, 93, 10, 126, 6, 28, 36, 33, 144, 14, 155, 179, 232, 59, 154, 94, 237, 229, 54, 226, 114, 53, 201]","[201, 181, 225, 249, 65, 183, 159, 20, 162, 171, 212, 121, 241, 138, 38, 207, 194, 191, 30, 210, 143, 216, 45, 218, 245, 158, 50, 197, 209, 118, 66, 18, 117, 135, 125, 234, 48, 157, 43, 146, 92, 19, 208, 119, 86, 0, 128, 93, 29, 8, 104, 46, 74, 172, 17, 177, 75, 202, 87, 122, 79, 99, 195, 12, 69, 133, 186, 156, 80, 180, 51, 149, 170, 175, 124, 35, 68, 193, 243, 169, 107, 251, 2, 228, 15, 206, 63, 78, 23, 132, 10, 98, 154, 56, 40, 205, 3, 247, 178, 163, 14, 164, 88, 176, 130, 248, 114, 190, 81, 196, 55, 185, 33, 145, 165, 24, 214, 53, 82, 37, 96, 21, 221, 230, 77, 103, 168, 153]","[2, 3, 10, 14, 17, 23, 24, 33, 35, 48, 51, 53, 55, 56, 63, 65, 66, 75, 78, 79, 80, 82, 86, 87, 93, 96, 104, 114, 118, 125, 130, 135, 138, 145, 146, 149, 154, 156, 157, 159, 164, 165, 169, 172, 177, 181, 183, 186, 194, 196, 201, 206, 207, 208, 212, 218, 221, 228, 241, 245, 249]" +54,"[26, 21, 179, 2, 178, 236, 125, 167, 175, 150, 160, 218, 153, 1, 133, 91, 136, 112, 227, 67, 119, 97, 84, 131, 243, 65, 43, 188, 156, 108, 46, 33, 177, 142, 5, 115, 171, 211, 207, 121, 85, 10, 76, 149, 134, 203, 47, 198, 22, 73, 144, 27, 100, 143, 70, 234, 37, 32, 122, 140, 20, 225, 217, 190, 111, 71, 34, 135, 127, 75, 223, 226, 186, 185, 154, 99, 39, 53, 102, 132, 29, 101, 106, 15, 83, 244, 189, 155, 214, 36, 230, 251, 183, 77, 204, 38, 18, 42, 170, 197, 161, 195, 0, 69, 128, 90, 61, 123, 235, 16, 93, 107, 216, 68, 252, 95, 191, 166, 7, 172, 41, 253, 9, 199, 62, 221, 8, 120]","[5, 43, 162, 166, 67, 134, 12, 214, 13, 137, 149, 181, 188, 39, 7, 109, 139, 41, 237, 80, 210, 128, 60, 99, 154, 21, 100, 165, 204, 61, 226, 152, 83, 224, 192, 48, 88, 253, 55, 73, 132, 160, 126, 174, 219, 178, 11, 247, 122, 96, 143, 74, 69, 78, 133, 118, 10, 163, 213, 175, 177, 225, 25, 233, 199, 236, 6, 53, 54, 216, 52, 235, 56, 14, 158, 205, 92, 58, 142, 117, 108, 249, 114, 200, 66, 62, 120, 63, 238, 57, 153, 197, 230, 155, 182, 18, 2, 0, 141, 22, 27, 107, 159, 26, 82, 85, 90, 202, 30, 33, 16, 176, 211, 157, 76, 242, 189, 35, 196, 59, 40, 203, 91, 215, 212, 254, 187, 190]","[0, 2, 5, 7, 10, 16, 18, 21, 22, 26, 27, 33, 39, 41, 43, 53, 61, 62, 67, 69, 73, 76, 83, 85, 90, 91, 99, 100, 107, 108, 120, 122, 128, 132, 133, 134, 142, 143, 149, 153, 154, 155, 160, 166, 175, 177, 178, 188, 189, 190, 197, 199, 203, 204, 211, 214, 216, 225, 226, 230, 235, 236, 253]" +55,"[248, 222, 131, 31, 201, 184, 74, 197, 154, 88, 137, 226, 82, 217, 255, 171, 9, 6, 219, 57, 161, 145, 155, 100, 234, 106, 77, 191, 12, 37, 199, 229, 200, 85, 118, 22, 69, 47, 90, 177, 214, 183, 60, 46, 38, 20, 249, 81, 196, 190, 34, 108, 56, 231, 241, 114, 211, 54, 243, 207, 78, 232, 136, 61, 45, 179, 95, 27, 185, 122, 125, 192, 83, 59, 166, 18, 63, 208, 151, 170, 93, 147, 14, 115, 101, 120, 104, 167, 41, 29, 159, 25, 92, 213, 209, 216, 124, 17, 33, 188, 19, 10, 75, 181, 228, 142, 50, 66, 253, 238, 130, 0, 4, 113, 133, 84, 202, 21, 76, 129, 237, 138, 99, 91, 148, 127, 52, 157]","[166, 73, 172, 182, 45, 212, 186, 13, 226, 129, 195, 216, 134, 144, 47, 198, 162, 107, 219, 202, 165, 206, 220, 128, 109, 79, 35, 2, 126, 152, 239, 210, 121, 96, 204, 29, 39, 193, 163, 132, 247, 41, 249, 3, 189, 80, 36, 93, 88, 178, 175, 43, 141, 28, 22, 52, 174, 103, 11, 253, 177, 230, 223, 67, 5, 140, 252, 65, 15, 111, 55, 4, 112, 98, 68, 17, 246, 237, 218, 23, 217, 176, 34, 26, 100, 155, 250, 203, 48, 72, 51, 105, 145, 97, 173, 149, 236, 139, 54, 8, 214, 62, 194, 42, 241, 233, 85, 58, 242, 19, 180, 168, 151, 119, 244, 254, 225, 169, 49, 32, 238, 187, 24, 117, 59, 158, 84, 156]","[4, 17, 19, 22, 29, 34, 41, 45, 47, 52, 54, 59, 84, 85, 88, 93, 100, 129, 145, 151, 155, 166, 177, 202, 214, 216, 217, 219, 226, 237, 238, 241, 249, 253]" +56,"[87, 195, 76, 243, 23, 130, 241, 205, 215, 107, 117, 236, 252, 201, 79, 29, 103, 193, 210, 203, 80, 175, 143, 221, 174, 45, 2, 37, 36, 65, 116, 154, 5, 32, 240, 16, 225, 250, 124, 147, 25, 11, 151, 44, 242, 59, 19, 227, 249, 46, 224, 198, 128, 163, 92, 74, 142, 96, 12, 213, 83, 145, 49, 52, 105, 155, 67, 72, 35, 207, 159, 10, 56, 177, 211, 42, 248, 62, 123, 17, 78, 84, 244, 81, 218, 57, 104, 41, 73, 208, 8, 39, 66, 38, 141, 48, 157, 223, 217, 149, 136, 125, 133, 101, 111, 183, 43, 194, 22, 132, 34, 68, 165, 138, 184, 171, 127, 122, 181, 94, 20, 70, 53, 173, 232, 18, 89, 14]","[112, 105, 200, 252, 167, 71, 80, 99, 201, 203, 89, 182, 117, 243, 223, 225, 177, 79, 62, 173, 38, 110, 130, 86, 220, 57, 210, 239, 77, 207, 83, 24, 43, 124, 116, 133, 34, 114, 152, 135, 214, 254, 139, 233, 49, 184, 67, 199, 134, 150, 101, 171, 151, 174, 0, 216, 1, 44, 248, 98, 186, 149, 215, 168, 36, 48, 120, 95, 178, 96, 32, 190, 88, 118, 228, 229, 163, 192, 121, 21, 81, 146, 156, 108, 8, 61, 137, 53, 218, 230, 60, 23, 40, 250, 142, 14, 52, 31, 54, 56, 45, 5, 123, 245, 68, 27, 13, 249, 29, 138, 74, 176, 136, 155, 10, 238, 170, 213, 191, 232, 104, 158, 69, 59, 97, 47, 166, 189]","[5, 8, 10, 14, 23, 29, 32, 34, 36, 38, 43, 44, 45, 48, 49, 52, 53, 56, 57, 59, 62, 67, 68, 74, 79, 80, 81, 83, 89, 96, 101, 104, 105, 116, 117, 123, 124, 130, 133, 136, 138, 142, 149, 151, 155, 163, 171, 173, 174, 177, 184, 201, 203, 207, 210, 213, 215, 218, 223, 225, 232, 243, 248, 249, 250, 252]" +57,"[122, 222, 51, 117, 128, 41, 133, 136, 30, 149, 140, 37, 130, 47, 38, 107, 218, 48, 177, 84, 132, 213, 112, 36, 220, 67, 164, 90, 243, 26, 144, 254, 101, 61, 211, 118, 18, 57, 45, 99, 46, 234, 215, 111, 221, 131, 89, 188, 25, 141, 127, 71, 54, 148, 150, 85, 153, 207, 72, 102, 251, 171, 170, 96, 119, 92, 44, 185, 87, 236, 248, 50, 55, 80, 239, 192, 21, 70, 91, 125, 28, 223, 10, 142, 155, 20, 249, 181, 79, 9, 233, 199, 235, 83, 53, 43, 24, 88, 156, 166, 73, 81, 151, 16, 143, 98, 172, 174, 137, 78, 175, 49, 31, 56, 8, 193, 93, 3, 216, 86, 110, 252, 202, 146, 162, 6, 255, 109]","[73, 173, 100, 98, 99, 253, 86, 40, 164, 245, 171, 128, 5, 12, 218, 201, 63, 53, 181, 160, 229, 68, 153, 19, 147, 179, 233, 158, 212, 85, 197, 91, 42, 97, 0, 113, 39, 69, 204, 194, 64, 29, 228, 249, 200, 106, 183, 241, 220, 76, 244, 89, 15, 10, 105, 242, 232, 255, 166, 94, 108, 152, 9, 135, 95, 122, 22, 23, 170, 163, 189, 208, 178, 203, 167, 18, 214, 165, 168, 141, 58, 49, 154, 65, 44, 247, 33, 190, 92, 2, 77, 226, 195, 224, 180, 134, 60, 14, 117, 75, 32, 188, 74, 62, 126, 121, 4, 206, 37, 192, 176, 116, 198, 82, 34, 139, 110, 28, 182, 236, 26, 25, 54, 6, 38, 205, 84, 115]","[6, 9, 10, 18, 25, 26, 28, 37, 38, 44, 49, 53, 54, 73, 84, 85, 86, 89, 91, 92, 98, 99, 110, 117, 122, 128, 141, 153, 164, 166, 170, 171, 181, 188, 192, 218, 220, 233, 236, 249, 255]" +58,"[98, 26, 62, 141, 81, 214, 132, 127, 158, 160, 15, 195, 103, 153, 61, 56, 254, 228, 181, 152, 213, 130, 203, 197, 43, 251, 220, 71, 164, 2, 165, 194, 146, 46, 94, 76, 240, 5, 140, 65, 83, 134, 167, 151, 29, 52, 120, 136, 105, 128, 119, 112, 122, 217, 216, 123, 173, 116, 25, 107, 115, 74, 55, 226, 21, 60, 87, 96, 243, 176, 182, 20, 8, 200, 38, 121, 91, 129, 66, 64, 7, 222, 183, 187, 84, 209, 117, 114, 180, 199, 40, 168, 14, 33, 193, 102, 82, 13, 99, 162, 3, 234, 67, 31, 238, 19, 157, 93, 161, 17, 241, 9, 172, 125, 166, 135, 126, 24, 139, 48, 111, 92, 225, 106, 150, 50, 49, 95]","[189, 209, 166, 52, 130, 210, 78, 186, 216, 151, 107, 6, 95, 251, 93, 21, 17, 191, 22, 18, 87, 79, 164, 212, 106, 69, 84, 147, 105, 201, 56, 66, 127, 195, 31, 114, 185, 141, 10, 88, 99, 125, 197, 158, 57, 211, 145, 46, 167, 16, 104, 61, 118, 0, 204, 174, 225, 25, 113, 172, 128, 206, 24, 182, 26, 41, 171, 215, 40, 190, 50, 165, 74, 221, 110, 98, 1, 7, 250, 67, 27, 229, 47, 238, 112, 162, 157, 188, 246, 102, 83, 123, 135, 153, 9, 144, 239, 120, 134, 150, 187, 160, 176, 237, 208, 2, 129, 39, 217, 220, 60, 11, 76, 80, 228, 152, 33, 103, 91, 173, 82, 94, 117, 68, 81, 131, 5, 96]","[2, 5, 7, 9, 17, 21, 24, 25, 26, 31, 33, 40, 46, 50, 52, 56, 60, 61, 66, 67, 74, 76, 81, 82, 83, 84, 87, 91, 93, 94, 95, 96, 98, 99, 102, 103, 105, 106, 107, 112, 114, 117, 120, 123, 125, 127, 128, 129, 130, 134, 135, 141, 150, 151, 152, 153, 157, 158, 160, 162, 164, 165, 166, 167, 172, 173, 176, 182, 187, 195, 197, 209, 216, 217, 220, 225, 228, 238, 251]" +59,"[205, 159, 8, 189, 121, 29, 225, 76, 99, 6, 149, 37, 150, 216, 88, 203, 127, 58, 211, 93, 190, 16, 241, 47, 81, 195, 11, 129, 71, 178, 40, 122, 154, 89, 21, 20, 146, 96, 69, 73, 214, 39, 160, 38, 255, 219, 4, 84, 196, 184, 87, 209, 162, 103, 166, 42, 155, 2, 74, 238, 169, 145, 142, 168, 98, 163, 75, 35, 234, 179, 1, 67, 41, 111, 56, 107, 62, 23, 77, 152, 36, 104, 181, 172, 217, 156, 125, 180, 198, 210, 165, 183, 212, 64, 27, 100, 0, 220, 236, 106, 177, 112, 148, 113, 230, 199, 153, 24, 5, 90, 201, 60, 82, 19, 101, 65, 186, 18, 192, 171, 120, 229, 114, 70, 12, 237, 108, 30]","[49, 203, 179, 153, 67, 25, 93, 0, 40, 89, 218, 146, 70, 9, 120, 138, 104, 31, 41, 96, 80, 76, 106, 195, 69, 141, 197, 10, 130, 121, 215, 20, 65, 201, 187, 82, 237, 183, 226, 160, 191, 101, 139, 103, 102, 21, 100, 71, 108, 238, 16, 4, 44, 239, 174, 202, 241, 184, 37, 229, 214, 55, 131, 190, 231, 99, 36, 244, 161, 118, 17, 50, 39, 95, 137, 219, 177, 148, 149, 216, 129, 30, 233, 33, 147, 29, 236, 74, 230, 87, 19, 181, 88, 144, 166, 143, 105, 134, 196, 73, 27, 75, 18, 164, 109, 204, 113, 222, 59, 176, 245, 135, 171, 162, 119, 34, 156, 35, 173, 8, 167, 5, 248, 90, 126, 47, 81, 136]","[0, 4, 5, 8, 16, 18, 19, 20, 21, 27, 29, 30, 35, 36, 37, 39, 40, 41, 47, 65, 67, 69, 70, 71, 73, 74, 75, 76, 81, 82, 87, 88, 89, 90, 93, 96, 99, 100, 101, 103, 104, 106, 108, 113, 120, 121, 129, 146, 148, 149, 153, 156, 160, 162, 166, 171, 177, 179, 181, 183, 184, 190, 195, 196, 201, 203, 214, 216, 219, 229, 230, 236, 237, 238, 241]" +60,"[162, 122, 131, 126, 97, 205, 36, 83, 163, 15, 52, 232, 1, 93, 156, 200, 72, 245, 176, 189, 64, 207, 241, 77, 172, 65, 151, 228, 67, 40, 90, 21, 128, 130, 142, 124, 28, 68, 250, 174, 51, 179, 54, 31, 27, 248, 158, 238, 210, 20, 127, 252, 191, 16, 177, 8, 82, 63, 78, 84, 96, 199, 0, 37, 53, 29, 193, 114, 129, 19, 35, 111, 226, 13, 88, 14, 203, 227, 103, 175, 201, 17, 33, 121, 157, 55, 133, 94, 18, 143, 89, 188, 212, 148, 185, 71, 221, 135, 100, 106, 184, 236, 60, 87, 164, 233, 42, 117, 108, 239, 242, 196, 102, 46, 47, 118, 73, 186, 110, 182, 69, 149, 224, 198, 217, 234, 99, 225]","[31, 130, 4, 99, 187, 88, 213, 103, 205, 162, 93, 117, 192, 200, 225, 155, 236, 151, 242, 252, 181, 253, 89, 165, 7, 66, 10, 85, 37, 223, 204, 87, 77, 20, 138, 21, 241, 65, 0, 72, 13, 232, 206, 212, 108, 51, 133, 42, 18, 122, 209, 69, 142, 12, 248, 60, 16, 196, 239, 110, 136, 102, 164, 17, 221, 73, 55, 174, 226, 134, 220, 234, 27, 54, 145, 52, 158, 63, 71, 15, 104, 100, 157, 105, 149, 215, 36, 70, 128, 57, 97, 120, 129, 189, 111, 179, 78, 148, 34, 107, 240, 67, 19, 44, 47, 175, 40, 53, 125, 94, 182, 201, 191, 127, 245, 80, 166, 171, 118, 14, 217, 203, 186, 84, 227, 82, 83, 32]","[0, 13, 14, 15, 16, 17, 18, 19, 20, 21, 27, 31, 36, 37, 40, 42, 47, 51, 52, 53, 54, 55, 60, 63, 65, 67, 69, 71, 72, 73, 77, 78, 82, 83, 84, 87, 88, 89, 93, 94, 97, 99, 100, 102, 103, 108, 110, 111, 117, 118, 122, 127, 128, 129, 130, 133, 142, 148, 149, 151, 157, 158, 162, 164, 174, 175, 179, 182, 186, 189, 191, 196, 200, 201, 203, 205, 212, 217, 221, 225, 226, 227, 232, 234, 236, 239, 241, 242, 245, 248, 252]" +61,"[247, 207, 102, 61, 8, 6, 189, 186, 219, 213, 148, 200, 98, 248, 129, 35, 109, 174, 240, 69, 106, 160, 146, 40, 48, 107, 224, 208, 175, 90, 122, 123, 209, 149, 62, 126, 110, 236, 85, 9, 68, 217, 121, 137, 24, 212, 50, 65, 203, 71, 187, 56, 76, 178, 222, 158, 156, 30, 143, 99, 54, 112, 111, 7, 130, 125, 183, 100, 53, 152, 227, 46, 211, 170, 167, 241, 5, 182, 173, 74, 23, 171, 80, 242, 243, 124, 27, 39, 221, 72, 190, 89, 153, 141, 215, 206, 231, 3, 0, 66, 17, 169, 44, 16, 25, 131, 210, 2, 154, 97, 192, 163, 179, 84, 63, 28, 14, 57, 250, 114, 161, 92, 191, 249, 75, 188, 103, 15]","[57, 235, 242, 204, 22, 77, 120, 15, 103, 183, 11, 222, 213, 124, 149, 115, 189, 107, 186, 36, 30, 17, 80, 239, 65, 44, 122, 50, 234, 54, 10, 87, 49, 26, 164, 152, 248, 176, 162, 39, 190, 203, 3, 27, 221, 137, 148, 105, 142, 109, 205, 66, 179, 0, 91, 14, 214, 151, 175, 254, 136, 6, 206, 131, 128, 73, 58, 19, 16, 38, 99, 42, 31, 225, 158, 188, 90, 134, 112, 219, 174, 171, 194, 25, 249, 212, 211, 228, 43, 60, 64, 102, 62, 146, 130, 97, 156, 53, 56, 170, 8, 29, 143, 55, 250, 100, 68, 106, 84, 138, 215, 180, 236, 198, 224, 231, 165, 114, 76, 226, 207, 35, 1, 246, 144, 23, 7, 126]","[0, 3, 6, 7, 8, 14, 15, 16, 17, 23, 25, 27, 30, 35, 39, 44, 50, 53, 54, 56, 57, 62, 65, 66, 68, 76, 80, 84, 90, 97, 99, 100, 102, 103, 106, 107, 109, 112, 114, 122, 124, 126, 130, 131, 137, 143, 146, 148, 149, 152, 156, 158, 170, 171, 174, 175, 179, 183, 186, 188, 189, 190, 203, 206, 207, 211, 212, 213, 215, 219, 221, 222, 224, 231, 236, 242, 248, 249, 250]" +62,"[208, 179, 190, 88, 105, 214, 166, 177, 2, 126, 157, 170, 51, 225, 158, 140, 142, 108, 80, 21, 143, 175, 40, 106, 81, 95, 115, 230, 69, 189, 249, 181, 94, 124, 121, 62, 103, 114, 9, 137, 152, 162, 90, 198, 195, 125, 82, 217, 71, 112, 244, 7, 8, 98, 30, 53, 49, 155, 251, 13, 97, 58, 18, 15, 20, 202, 64, 79, 70, 42, 240, 47, 39, 14, 73, 222, 224, 160, 24, 92, 104, 25, 72, 60, 44, 57, 133, 45, 43, 91, 176, 68, 29, 174, 83, 46, 3, 247, 17, 169, 110, 229, 220, 250, 149, 22, 194, 54, 116, 138, 163, 135, 172, 210, 241, 35, 151, 159, 215, 76, 48, 231, 66, 243, 197, 93, 218, 128]","[70, 38, 131, 66, 245, 25, 210, 61, 45, 173, 121, 34, 206, 23, 164, 150, 27, 51, 252, 106, 240, 204, 40, 32, 109, 226, 148, 2, 203, 238, 77, 134, 58, 190, 132, 144, 241, 179, 65, 230, 207, 158, 111, 123, 196, 198, 102, 172, 193, 175, 156, 36, 221, 153, 15, 98, 76, 8, 149, 220, 188, 222, 41, 53, 236, 182, 49, 95, 69, 214, 30, 233, 139, 39, 225, 84, 191, 119, 228, 26, 211, 19, 4, 89, 129, 120, 244, 5, 217, 199, 87, 146, 189, 22, 99, 154, 212, 64, 74, 93, 201, 213, 94, 200, 247, 163, 169, 197, 31, 162, 138, 168, 101, 14, 209, 85, 44, 42, 56, 78, 242, 232, 60, 127, 103, 80, 110, 12]","[2, 8, 14, 15, 22, 25, 30, 39, 40, 42, 44, 45, 49, 51, 53, 58, 60, 64, 66, 69, 70, 76, 80, 93, 94, 95, 98, 103, 106, 110, 121, 138, 149, 158, 162, 163, 169, 172, 175, 179, 189, 190, 197, 198, 210, 214, 217, 220, 222, 225, 230, 240, 241, 244, 247]" +63,"[242, 44, 174, 36, 133, 90, 72, 124, 95, 223, 182, 157, 16, 58, 85, 57, 167, 180, 196, 225, 220, 68, 156, 203, 6, 191, 15, 76, 117, 148, 131, 108, 70, 104, 13, 150, 123, 240, 151, 55, 132, 201, 89, 173, 98, 199, 237, 127, 186, 206, 253, 20, 140, 244, 61, 22, 27, 79, 38, 137, 49, 210, 154, 92, 97, 75, 112, 142, 252, 32, 159, 135, 51, 169, 39, 3, 200, 181, 62, 218, 195, 83, 143, 205, 19, 96, 26, 202, 236, 18, 145, 43, 184, 2, 197, 65, 121, 109, 229, 107, 221, 190, 47, 73, 8, 93, 35, 41, 129, 155, 211, 31, 146, 23, 78, 136, 149, 50, 81, 217, 162, 100, 185, 34, 77, 130, 71, 110]","[75, 136, 163, 146, 228, 117, 112, 154, 184, 78, 77, 164, 63, 242, 43, 62, 200, 193, 202, 93, 35, 87, 123, 20, 122, 26, 220, 14, 131, 165, 148, 185, 142, 172, 2, 8, 197, 237, 130, 240, 222, 1, 253, 86, 182, 196, 76, 84, 135, 36, 18, 73, 90, 114, 236, 143, 103, 229, 214, 167, 181, 232, 129, 157, 124, 221, 15, 34, 223, 206, 44, 38, 169, 16, 195, 89, 175, 141, 115, 6, 159, 186, 155, 210, 145, 180, 219, 42, 32, 156, 56, 137, 246, 11, 92, 65, 127, 201, 107, 108, 51, 91, 191, 179, 70, 58, 31, 10, 160, 94, 48, 3, 104, 208, 85, 27, 133, 194, 121, 71, 13, 151, 68, 96, 9, 162, 203, 41]","[2, 3, 6, 8, 13, 15, 16, 18, 20, 26, 27, 31, 32, 34, 35, 36, 38, 41, 43, 44, 51, 58, 62, 65, 68, 70, 71, 73, 75, 76, 77, 78, 85, 89, 90, 92, 93, 96, 104, 107, 108, 112, 117, 121, 123, 124, 127, 129, 130, 131, 133, 135, 136, 137, 142, 143, 145, 146, 148, 151, 154, 155, 156, 157, 159, 162, 167, 169, 180, 181, 182, 184, 185, 186, 191, 195, 196, 197, 200, 201, 202, 203, 206, 210, 220, 221, 223, 229, 236, 237, 240, 242, 253]" +64,"[122, 85, 222, 137, 183, 115, 151, 4, 68, 161, 72, 254, 251, 216, 13, 248, 141, 60, 153, 110, 90, 9, 191, 185, 36, 109, 174, 98, 166, 46, 38, 41, 242, 233, 203, 130, 143, 80, 17, 78, 99, 255, 34, 39, 89, 158, 40, 220, 120, 214, 69, 223, 45, 84, 202, 81, 65, 5, 207, 170, 201, 199, 239, 77, 209, 43, 25, 107, 11, 96, 102, 194, 240, 140, 2, 200, 111, 27, 87, 52, 1, 234, 6, 18, 227, 197, 21, 83, 106, 173, 231, 148, 70, 213, 159, 128, 224, 252, 103, 75, 145, 236, 92, 243, 135, 178, 226, 117, 86, 19, 55, 112, 14, 119, 57, 79, 28, 238, 94, 168, 164, 132, 229, 88, 190, 249, 37, 108]","[217, 163, 75, 35, 27, 242, 148, 124, 202, 137, 11, 254, 83, 28, 142, 67, 206, 55, 115, 86, 66, 48, 172, 245, 213, 98, 214, 65, 49, 77, 68, 127, 32, 39, 46, 237, 90, 9, 78, 203, 31, 149, 88, 225, 110, 246, 91, 160, 208, 135, 114, 20, 171, 192, 250, 167, 244, 164, 221, 113, 190, 226, 247, 29, 50, 57, 3, 232, 122, 52, 118, 168, 151, 14, 139, 117, 25, 21, 169, 64, 37, 58, 154, 188, 74, 161, 255, 182, 8, 10, 36, 56, 72, 165, 84, 136, 178, 17, 215, 22, 7, 26, 159, 183, 16, 235, 41, 177, 180, 179, 143, 43, 23, 44, 107, 71, 191, 195, 193, 85, 76, 62, 105, 59, 131, 243, 1, 150]","[1, 9, 11, 14, 17, 21, 25, 27, 28, 36, 37, 39, 41, 43, 46, 52, 55, 57, 65, 68, 72, 75, 77, 78, 83, 84, 85, 86, 88, 90, 98, 107, 110, 115, 117, 122, 135, 137, 143, 148, 151, 159, 161, 164, 168, 178, 183, 190, 191, 202, 203, 213, 214, 226, 242, 243, 254, 255]" +65,"[46, 31, 41, 76, 252, 144, 214, 109, 7, 193, 153, 99, 137, 170, 1, 140, 94, 149, 100, 221, 198, 56, 2, 136, 61, 119, 51, 60, 133, 254, 247, 224, 161, 82, 45, 199, 26, 255, 75, 85, 156, 248, 102, 101, 70, 229, 215, 12, 25, 241, 71, 186, 173, 192, 132, 62, 27, 36, 80, 239, 98, 96, 223, 246, 110, 121, 208, 207, 106, 95, 131, 124, 22, 57, 163, 164, 18, 35, 44, 23, 167, 81, 118, 225, 234, 103, 90, 33, 204, 177, 78, 114, 120, 151, 55, 104, 49, 77, 138, 185, 200, 92, 37, 157, 253, 128, 171, 29, 152, 211, 216, 145, 84, 218, 4, 3, 190, 182, 139, 11, 123, 117, 168, 19, 179, 107, 48, 162]","[83, 173, 51, 85, 217, 58, 250, 56, 69, 40, 8, 18, 57, 5, 129, 87, 147, 222, 188, 30, 144, 89, 184, 12, 59, 139, 43, 66, 15, 32, 201, 49, 31, 1, 218, 172, 181, 186, 228, 211, 74, 73, 153, 94, 127, 109, 195, 154, 75, 108, 236, 171, 206, 194, 116, 21, 166, 125, 10, 233, 246, 191, 62, 167, 65, 101, 151, 3, 148, 175, 170, 23, 105, 67, 149, 152, 248, 117, 24, 64, 46, 63, 130, 229, 237, 119, 251, 121, 252, 13, 86, 19, 213, 182, 238, 254, 92, 138, 189, 197, 111, 203, 126, 42, 240, 230, 68, 190, 204, 45, 38, 16, 88, 47, 11, 176, 20, 122, 25, 123, 17, 247, 209, 115, 220, 96, 192, 22]","[1, 3, 11, 12, 18, 19, 22, 23, 25, 31, 45, 46, 49, 51, 56, 57, 62, 75, 85, 92, 94, 96, 101, 109, 117, 119, 121, 123, 138, 139, 144, 149, 151, 152, 153, 167, 170, 171, 173, 182, 186, 190, 192, 204, 211, 218, 229, 246, 247, 248, 252, 254]" +66,"[89, 218, 185, 164, 114, 157, 141, 104, 148, 60, 234, 5, 73, 128, 26, 43, 171, 93, 91, 62, 244, 146, 100, 94, 109, 117, 34, 65, 90, 231, 124, 83, 14, 155, 125, 228, 127, 33, 163, 25, 129, 181, 174, 31, 106, 103, 32, 173, 84, 39, 241, 15, 169, 145, 233, 3, 123, 119, 160, 86, 120, 133, 247, 121, 2, 180, 229, 215, 107, 210, 116, 137, 110, 208, 152, 11, 205, 147, 80, 156, 194, 97, 52, 151, 59, 201, 167, 162, 4, 102, 144, 58, 245, 64, 252, 158, 55, 200, 239, 42, 198, 132, 16, 204, 46, 219, 143, 226, 192, 56, 206, 48, 214, 36, 191, 131, 150, 177, 136, 130, 232, 196, 24, 35, 225, 7, 72, 111]","[130, 92, 249, 210, 134, 95, 226, 102, 141, 247, 155, 64, 220, 26, 80, 160, 232, 159, 245, 229, 248, 191, 166, 183, 208, 136, 145, 129, 25, 42, 36, 132, 218, 217, 51, 231, 93, 164, 196, 176, 146, 152, 137, 239, 185, 66, 241, 215, 49, 103, 135, 175, 94, 110, 48, 13, 120, 44, 99, 128, 4, 7, 233, 173, 214, 234, 131, 158, 167, 197, 124, 83, 252, 91, 97, 23, 228, 148, 157, 27, 35, 165, 238, 121, 65, 168, 212, 52, 106, 211, 174, 89, 24, 127, 209, 72, 206, 243, 151, 180, 161, 111, 114, 235, 117, 73, 60, 162, 5, 169, 56, 242, 12, 79, 223, 195, 78, 201, 216, 34, 138, 33, 43, 3, 107, 59, 119, 171]","[3, 4, 5, 7, 24, 25, 26, 33, 34, 35, 36, 42, 43, 48, 52, 56, 59, 60, 64, 65, 72, 73, 80, 83, 89, 91, 93, 94, 97, 102, 103, 106, 107, 110, 111, 114, 117, 119, 120, 121, 124, 127, 128, 129, 130, 131, 132, 136, 137, 141, 145, 146, 148, 151, 152, 155, 157, 158, 160, 162, 164, 167, 169, 171, 173, 174, 180, 185, 191, 196, 201, 206, 208, 210, 214, 215, 218, 226, 228, 229, 231, 232, 233, 234, 239, 241, 245, 247, 252]" +67,"[79, 188, 139, 172, 53, 200, 153, 31, 60, 61, 156, 145, 215, 30, 90, 255, 248, 144, 147, 87, 182, 131, 196, 163, 243, 114, 120, 104, 242, 160, 224, 138, 107, 42, 164, 73, 99, 191, 125, 43, 25, 216, 94, 86, 148, 178, 194, 8, 212, 170, 204, 74, 82, 195, 254, 197, 106, 155, 158, 231, 228, 180, 124, 113, 143, 173, 140, 17, 58, 103, 12, 190, 189, 48, 203, 136, 27, 223, 142, 67, 51, 57, 102, 141, 64, 151, 121, 209, 133, 11, 183, 134, 177, 240, 137, 171, 72, 55, 16, 165, 135, 3, 47, 222, 122, 146, 205, 201, 33, 202, 18, 83, 157, 59, 95, 34, 52, 226, 97, 2, 29, 207, 150, 213, 192, 41, 44, 229]","[17, 159, 164, 181, 74, 34, 213, 121, 29, 43, 111, 75, 11, 152, 182, 0, 238, 195, 62, 145, 220, 243, 21, 41, 137, 202, 149, 201, 35, 154, 130, 97, 234, 98, 168, 70, 224, 215, 241, 94, 136, 138, 87, 68, 200, 40, 61, 49, 48, 175, 244, 245, 252, 187, 19, 210, 160, 6, 106, 249, 36, 88, 63, 14, 167, 96, 208, 38, 101, 163, 214, 89, 10, 132, 193, 194, 117, 123, 82, 144, 65, 1, 23, 166, 156, 12, 90, 4, 242, 248, 115, 24, 211, 196, 169, 165, 217, 126, 39, 16, 71, 229, 157, 46, 251, 198, 188, 66, 32, 15, 204, 93, 206, 100, 47, 236, 58, 255, 79, 172, 84, 127, 104, 221, 103, 83, 223, 51]","[11, 12, 16, 17, 29, 34, 41, 43, 47, 48, 51, 58, 61, 74, 79, 82, 83, 87, 90, 94, 97, 103, 104, 106, 121, 136, 137, 138, 144, 145, 156, 157, 160, 163, 164, 165, 172, 182, 188, 194, 195, 196, 200, 201, 202, 204, 213, 215, 223, 224, 229, 242, 243, 248, 255]" +68,"[27, 62, 111, 247, 156, 113, 97, 18, 215, 13, 160, 151, 199, 230, 167, 47, 28, 214, 40, 253, 59, 212, 61, 148, 218, 107, 140, 70, 172, 76, 185, 95, 126, 57, 246, 78, 254, 65, 25, 96, 71, 16, 94, 80, 15, 171, 72, 19, 10, 24, 3, 115, 188, 183, 118, 128, 31, 92, 180, 251, 63, 58, 60, 26, 30, 141, 198, 6, 133, 55, 211, 179, 0, 243, 74, 177, 64, 223, 112, 77, 75, 21, 184, 157, 125, 67, 101, 201, 209, 145, 36, 106, 81, 120, 1, 52, 9, 164, 105, 213, 196, 82, 135, 129, 149, 7, 200, 222, 226, 186, 91, 165, 237, 136, 20, 166, 161, 8, 147, 38, 207, 37, 234, 104, 150, 83, 73, 49]","[153, 55, 216, 33, 195, 82, 167, 173, 36, 245, 24, 23, 189, 102, 194, 249, 54, 241, 233, 86, 14, 110, 196, 87, 22, 57, 124, 13, 227, 207, 32, 170, 137, 242, 109, 41, 90, 97, 205, 2, 66, 9, 193, 56, 134, 44, 247, 121, 11, 203, 117, 231, 120, 230, 8, 221, 187, 60, 138, 159, 68, 176, 17, 101, 69, 127, 160, 174, 100, 103, 246, 12, 88, 228, 81, 204, 218, 220, 71, 99, 79, 64, 107, 212, 59, 53, 122, 51, 156, 191, 98, 236, 182, 244, 108, 89, 225, 154, 208, 52, 163, 84, 200, 85, 190, 112, 229, 143, 92, 133, 50, 29, 146, 238, 37, 226, 210, 206, 39, 178, 34, 43, 46, 123, 5, 147, 181, 38]","[8, 9, 13, 24, 36, 37, 38, 52, 55, 57, 59, 60, 64, 71, 81, 82, 92, 97, 101, 107, 112, 120, 133, 147, 156, 160, 167, 196, 200, 207, 212, 218, 226, 230, 246, 247]" +69,"[73, 21, 161, 32, 5, 130, 48, 78, 43, 11, 102, 186, 172, 46, 213, 188, 204, 98, 180, 22, 82, 142, 248, 83, 138, 202, 207, 25, 37, 167, 151, 71, 80, 219, 227, 86, 109, 252, 245, 45, 36, 169, 147, 175, 242, 247, 50, 157, 103, 193, 235, 222, 9, 59, 85, 89, 214, 53, 114, 20, 35, 170, 81, 143, 146, 243, 26, 68, 91, 65, 54, 218, 16, 236, 116, 174, 123, 154, 234, 145, 208, 69, 49, 215, 122, 126, 72, 87, 128, 239, 155, 33, 7, 115, 141, 93, 231, 56, 62, 41, 183, 144, 95, 199, 230, 88, 75, 139, 182, 197, 63, 134, 150, 195, 246, 162, 12, 163, 149, 15, 55, 100, 132, 189, 112, 232, 38, 28]","[63, 221, 61, 189, 252, 198, 14, 146, 246, 242, 41, 175, 140, 170, 116, 158, 135, 204, 186, 80, 156, 173, 219, 215, 128, 117, 169, 55, 110, 240, 159, 144, 58, 45, 120, 171, 51, 190, 137, 200, 168, 213, 253, 53, 142, 99, 207, 193, 96, 153, 67, 39, 81, 69, 4, 11, 161, 86, 237, 91, 68, 40, 78, 203, 233, 65, 244, 228, 172, 113, 187, 12, 194, 184, 202, 25, 88, 148, 62, 84, 208, 9, 178, 238, 220, 160, 214, 47, 147, 195, 15, 44, 212, 138, 76, 201, 209, 19, 35, 196, 255, 174, 192, 254, 199, 155, 56, 176, 90, 105, 133, 102, 104, 106, 21, 29, 118, 49, 234, 179, 166, 241, 82, 230, 151, 43, 239, 26]","[9, 11, 12, 15, 21, 25, 26, 35, 41, 43, 45, 49, 53, 55, 56, 62, 63, 65, 68, 69, 78, 80, 81, 82, 86, 88, 91, 102, 116, 128, 138, 142, 144, 146, 147, 151, 155, 161, 169, 170, 172, 174, 175, 186, 189, 193, 195, 199, 202, 204, 207, 208, 213, 214, 215, 219, 230, 234, 239, 242, 246, 252]" +70,"[95, 195, 213, 163, 33, 172, 98, 70, 4, 56, 83, 232, 227, 21, 89, 119, 5, 94, 197, 127, 223, 130, 108, 156, 199, 205, 63, 75, 206, 198, 170, 61, 136, 80, 160, 154, 147, 161, 209, 74, 228, 171, 186, 238, 13, 182, 251, 29, 179, 242, 178, 233, 104, 84, 46, 219, 49, 48, 105, 194, 114, 116, 222, 151, 153, 100, 117, 188, 193, 77, 14, 200, 248, 244, 102, 234, 62, 26, 162, 246, 87, 22, 67, 166, 155, 212, 236, 96, 68, 176, 34, 167, 134, 247, 144, 66, 69, 208, 53, 60, 164, 1, 73, 42, 132, 91, 216, 252, 231, 28, 146, 86, 52, 128, 8, 9, 131, 175, 183, 241, 250, 174, 152, 191, 12, 215, 220, 221]","[91, 81, 20, 122, 61, 21, 25, 112, 175, 113, 183, 255, 30, 108, 198, 121, 95, 168, 68, 163, 233, 82, 33, 160, 181, 232, 87, 169, 164, 230, 243, 127, 26, 2, 70, 226, 34, 74, 220, 193, 253, 155, 170, 117, 49, 139, 172, 240, 178, 162, 84, 100, 199, 4, 231, 53, 196, 40, 222, 57, 77, 156, 133, 63, 79, 105, 119, 130, 94, 215, 58, 48, 144, 75, 116, 10, 188, 97, 17, 206, 12, 132, 88, 131, 64, 227, 182, 234, 161, 96, 128, 15, 153, 76, 29, 194, 147, 9, 114, 83, 251, 51, 135, 89, 252, 6, 171, 213, 248, 52, 124, 24, 28, 242, 32, 145, 72, 99, 3, 179, 80, 134, 78, 67, 157, 46, 92, 152]","[4, 9, 12, 21, 26, 28, 29, 33, 34, 46, 48, 49, 52, 53, 61, 63, 67, 68, 70, 74, 75, 77, 80, 83, 84, 87, 89, 91, 94, 95, 96, 100, 105, 108, 114, 116, 117, 119, 127, 128, 130, 131, 132, 134, 144, 147, 152, 153, 155, 156, 160, 161, 162, 163, 164, 170, 171, 172, 175, 178, 179, 182, 183, 188, 193, 194, 198, 199, 206, 213, 215, 220, 222, 227, 231, 232, 233, 234, 242, 248, 251, 252]" +71,"[5, 50, 214, 206, 113, 163, 116, 245, 165, 186, 88, 228, 155, 89, 175, 2, 230, 212, 193, 108, 107, 48, 130, 176, 111, 106, 187, 125, 69, 117, 147, 172, 83, 208, 61, 1, 233, 136, 96, 58, 160, 44, 252, 36, 105, 41, 213, 149, 62, 164, 132, 255, 99, 153, 229, 118, 253, 34, 197, 224, 123, 151, 104, 145, 35, 95, 53, 30, 169, 64, 33, 236, 171, 237, 27, 205, 85, 66, 167, 238, 135, 65, 177, 76, 184, 77, 242, 221, 115, 146, 216, 217, 120, 98, 3, 200, 49, 114, 144, 159, 60, 188, 240, 195, 109, 192, 174, 43, 202, 196, 86, 198, 189, 78, 18, 156, 170, 215, 124, 25, 220, 45, 219, 127, 57, 227, 103, 21]","[225, 131, 209, 152, 230, 79, 47, 239, 63, 0, 238, 168, 224, 22, 134, 232, 162, 164, 218, 163, 173, 252, 254, 204, 251, 38, 27, 122, 26, 81, 190, 6, 9, 59, 108, 34, 3, 171, 32, 90, 31, 8, 28, 23, 75, 74, 228, 165, 247, 101, 56, 210, 113, 37, 84, 60, 241, 223, 212, 120, 226, 183, 112, 61, 11, 208, 148, 25, 245, 109, 5, 87, 44, 72, 243, 42, 203, 40, 118, 211, 19, 166, 138, 144, 234, 39, 244, 69, 52, 180, 248, 29, 194, 80, 124, 1, 151, 205, 193, 188, 64, 201, 58, 246, 7, 179, 4, 150, 149, 174, 92, 68, 161, 100, 200, 71, 160, 86, 130, 250, 50, 35, 97, 17, 91, 231, 126, 85]","[1, 3, 5, 25, 27, 34, 35, 44, 50, 58, 60, 61, 64, 69, 85, 86, 108, 109, 113, 118, 120, 124, 130, 144, 149, 151, 160, 163, 164, 165, 171, 174, 188, 193, 200, 205, 208, 212, 224, 228, 230, 238, 245, 252]" +72,"[221, 136, 42, 53, 109, 1, 51, 103, 113, 25, 33, 141, 10, 148, 250, 76, 175, 32, 94, 81, 213, 115, 118, 72, 219, 48, 74, 58, 142, 34, 150, 100, 220, 245, 46, 55, 95, 230, 167, 60, 7, 71, 105, 41, 82, 50, 3, 101, 56, 181, 247, 216, 145, 18, 196, 21, 47, 215, 203, 31, 114, 149, 17, 6, 16, 176, 228, 57, 116, 65, 238, 164, 61, 102, 119, 123, 191, 155, 170, 59, 84, 218, 9, 198, 15, 224, 29, 144, 184, 93, 67, 45, 192, 157, 234, 77, 152, 129, 173, 134, 19, 232, 49, 241, 147, 98, 174, 197, 26, 223, 24, 252, 185, 107, 227, 68, 117, 13, 200, 194, 190, 211, 14, 205, 231, 235, 70, 137]","[164, 99, 107, 117, 211, 251, 114, 26, 40, 97, 84, 60, 138, 147, 77, 230, 233, 98, 177, 13, 54, 110, 213, 245, 25, 195, 85, 42, 129, 156, 0, 113, 122, 142, 9, 170, 92, 46, 8, 18, 29, 246, 49, 243, 212, 141, 15, 192, 56, 191, 35, 95, 250, 108, 159, 23, 79, 100, 204, 154, 131, 165, 244, 182, 232, 180, 200, 111, 45, 22, 66, 36, 72, 4, 83, 139, 7, 158, 144, 102, 183, 160, 128, 223, 91, 229, 228, 58, 217, 241, 21, 106, 215, 197, 80, 253, 186, 133, 239, 136, 187, 17, 220, 234, 103, 20, 169, 61, 52, 155, 12, 39, 10, 43, 126, 64, 193, 227, 90, 73, 34, 14, 63, 71, 38, 189, 19, 132]","[7, 9, 10, 13, 14, 15, 17, 18, 19, 21, 25, 26, 29, 34, 42, 45, 46, 49, 56, 58, 60, 61, 71, 72, 77, 84, 95, 98, 100, 102, 103, 107, 113, 114, 117, 129, 136, 141, 142, 144, 147, 155, 164, 170, 191, 192, 197, 200, 211, 213, 215, 220, 223, 227, 228, 230, 232, 234, 241, 245, 250]" +73,"[168, 98, 228, 244, 44, 78, 37, 23, 50, 73, 254, 90, 134, 215, 25, 84, 156, 20, 95, 127, 190, 143, 30, 39, 140, 234, 123, 13, 86, 210, 62, 2, 14, 173, 255, 225, 132, 151, 180, 24, 224, 105, 96, 38, 76, 160, 233, 16, 128, 150, 223, 51, 120, 226, 0, 15, 252, 48, 110, 251, 113, 40, 213, 47, 185, 19, 9, 89, 43, 131, 35, 77, 183, 216, 109, 181, 83, 21, 157, 125, 31, 27, 107, 52, 201, 172, 235, 102, 74, 1, 179, 97, 207, 58, 218, 56, 117, 81, 69, 246, 115, 85, 64, 28, 135, 243, 142, 170, 196, 227, 68, 220, 169, 103, 4, 212, 6, 10, 71, 144, 198, 54, 8, 200, 22, 250, 82, 165]","[26, 106, 42, 72, 61, 116, 167, 18, 119, 49, 108, 205, 9, 193, 48, 30, 96, 240, 194, 80, 91, 94, 155, 232, 149, 146, 209, 25, 27, 121, 137, 148, 192, 7, 71, 236, 218, 63, 50, 239, 253, 93, 118, 126, 234, 136, 66, 2, 104, 175, 127, 76, 11, 10, 81, 223, 115, 88, 231, 235, 198, 31, 237, 154, 44, 37, 186, 220, 164, 147, 204, 65, 130, 5, 156, 191, 166, 124, 230, 162, 3, 212, 189, 57, 141, 77, 90, 62, 23, 99, 196, 17, 55, 153, 46, 8, 150, 73, 159, 35, 32, 70, 161, 210, 98, 68, 195, 217, 168, 170, 188, 176, 199, 202, 242, 145, 182, 177, 34, 86, 238, 139, 214, 92, 203, 114, 36, 171]","[2, 8, 9, 10, 23, 25, 27, 30, 31, 35, 37, 44, 48, 50, 62, 68, 71, 73, 76, 77, 81, 86, 90, 96, 98, 115, 127, 150, 156, 168, 170, 196, 198, 210, 212, 218, 220, 223, 234, 235]" +74,"[197, 1, 2, 190, 229, 221, 236, 194, 147, 241, 143, 171, 233, 13, 129, 77, 141, 179, 228, 40, 74, 19, 8, 248, 186, 174, 166, 182, 136, 79, 175, 90, 119, 115, 109, 111, 130, 67, 33, 242, 14, 206, 97, 112, 184, 18, 108, 224, 20, 22, 50, 45, 103, 76, 59, 71, 235, 159, 231, 86, 253, 148, 107, 56, 25, 142, 55, 24, 162, 146, 127, 84, 131, 94, 93, 38, 4, 200, 161, 126, 43, 213, 134, 208, 188, 7, 150, 240, 102, 11, 101, 28, 114, 113, 100, 21, 31, 211, 110, 57, 61, 44, 15, 106, 201, 48, 170, 10, 157, 124, 132, 87, 180, 123, 9, 125, 16, 244, 243, 133, 196, 98, 178, 23, 153, 138, 251, 128]","[100, 140, 126, 98, 249, 116, 119, 107, 185, 222, 214, 21, 17, 139, 55, 217, 33, 171, 136, 213, 204, 133, 161, 151, 64, 195, 70, 76, 131, 79, 158, 7, 188, 111, 197, 88, 172, 190, 108, 179, 180, 194, 174, 175, 101, 37, 61, 60, 102, 134, 248, 200, 62, 103, 239, 130, 146, 16, 6, 170, 152, 141, 150, 144, 74, 159, 233, 147, 90, 173, 39, 25, 94, 241, 122, 168, 71, 22, 177, 99, 142, 96, 225, 236, 156, 4, 181, 231, 11, 85, 84, 221, 18, 53, 124, 12, 105, 243, 245, 209, 2, 13, 66, 196, 169, 57, 251, 38, 40, 148, 93, 115, 54, 29, 43, 83, 252, 91, 52, 206, 125, 234, 67, 201, 220, 95, 41, 238]","[2, 4, 7, 11, 13, 16, 18, 21, 22, 25, 33, 38, 40, 43, 55, 57, 61, 67, 71, 74, 76, 79, 84, 90, 93, 94, 98, 100, 101, 102, 103, 107, 108, 111, 115, 119, 124, 125, 126, 130, 131, 133, 134, 136, 141, 142, 146, 147, 148, 150, 159, 161, 170, 171, 174, 175, 179, 180, 188, 190, 194, 196, 197, 200, 201, 206, 213, 221, 231, 233, 236, 241, 243, 248, 251]" +75,"[77, 51, 29, 200, 57, 32, 28, 188, 96, 113, 137, 204, 146, 235, 242, 93, 84, 56, 109, 63, 153, 219, 50, 171, 232, 41, 72, 251, 2, 227, 148, 58, 76, 21, 118, 14, 175, 173, 139, 40, 121, 39, 147, 230, 182, 144, 215, 174, 60, 180, 165, 0, 143, 16, 43, 222, 192, 34, 151, 30, 199, 103, 130, 190, 85, 150, 91, 228, 53, 178, 95, 217, 168, 97, 98, 189, 142, 193, 194, 163, 123, 117, 234, 47, 71, 141, 129, 102, 161, 248, 124, 152, 250, 54, 229, 19, 249, 164, 114, 156, 253, 3, 233, 18, 176, 197, 212, 223, 64, 67, 145, 70, 112, 52, 101, 115, 158, 44, 20, 255, 211, 23, 237, 87, 61, 8, 46, 83]","[38, 29, 220, 104, 206, 165, 246, 221, 126, 173, 222, 223, 148, 116, 53, 41, 43, 114, 241, 228, 23, 120, 129, 162, 59, 224, 57, 122, 156, 45, 183, 111, 54, 187, 215, 40, 58, 235, 35, 227, 247, 83, 219, 163, 20, 137, 239, 185, 3, 101, 196, 194, 108, 32, 67, 117, 8, 75, 204, 179, 86, 167, 55, 121, 39, 21, 152, 88, 177, 110, 84, 31, 47, 19, 142, 68, 65, 181, 184, 95, 202, 230, 205, 232, 42, 172, 89, 123, 132, 87, 158, 24, 7, 125, 138, 107, 73, 96, 208, 214, 70, 195, 237, 243, 105, 72, 143, 85, 66, 154, 115, 131, 186, 99, 134, 124, 25, 211, 1, 171, 36, 74, 113, 146, 189, 151, 119, 79]","[3, 8, 19, 20, 21, 23, 29, 32, 39, 40, 41, 43, 47, 53, 54, 57, 58, 67, 70, 72, 83, 84, 85, 87, 95, 96, 101, 113, 114, 115, 117, 121, 123, 124, 129, 137, 142, 143, 146, 148, 151, 152, 156, 158, 163, 165, 171, 173, 189, 194, 204, 211, 215, 219, 222, 223, 227, 228, 230, 232, 235, 237]" +76,"[73, 143, 50, 223, 38, 182, 76, 201, 119, 172, 142, 149, 65, 101, 140, 79, 35, 33, 47, 229, 165, 234, 215, 192, 173, 102, 136, 219, 78, 174, 111, 153, 162, 159, 122, 220, 178, 34, 147, 13, 133, 239, 245, 80, 68, 124, 171, 237, 110, 87, 199, 6, 154, 92, 69, 21, 17, 95, 99, 186, 37, 112, 202, 49, 134, 151, 22, 26, 39, 148, 118, 168, 98, 43, 139, 54, 114, 120, 10, 189, 167, 75, 81, 224, 66, 246, 163, 193, 9, 108, 161, 179, 51, 117, 197, 41, 24, 30, 255, 225, 194, 209, 125, 82, 19, 5, 187, 141, 230, 127, 100, 253, 218, 93, 184, 181, 158, 8, 106, 115, 7, 175, 105, 40, 48, 150, 14, 83]","[117, 72, 229, 209, 62, 173, 160, 170, 66, 221, 204, 138, 128, 41, 153, 25, 146, 145, 76, 102, 124, 123, 36, 32, 231, 185, 230, 166, 177, 11, 159, 19, 137, 254, 197, 196, 217, 144, 95, 251, 210, 38, 15, 20, 89, 135, 208, 129, 13, 140, 222, 106, 28, 199, 63, 86, 33, 121, 82, 47, 220, 184, 51, 85, 55, 49, 42, 171, 228, 107, 31, 61, 52, 104, 162, 195, 23, 237, 188, 53, 205, 136, 249, 12, 247, 167, 50, 172, 88, 201, 83, 59, 35, 9, 39, 1, 176, 130, 126, 116, 8, 40, 206, 29, 68, 0, 243, 200, 80, 152, 30, 227, 101, 198, 60, 216, 98, 4, 75, 100, 235, 139, 178, 232, 48, 103, 65, 161]","[8, 9, 13, 19, 30, 33, 35, 38, 39, 40, 41, 47, 48, 49, 50, 51, 65, 66, 68, 75, 76, 80, 82, 83, 95, 98, 100, 101, 102, 106, 117, 124, 136, 139, 140, 153, 159, 161, 162, 167, 171, 172, 173, 178, 184, 197, 199, 201, 209, 220, 229, 230, 237]" +77,"[160, 254, 249, 32, 122, 201, 152, 18, 132, 120, 242, 225, 141, 230, 7, 146, 199, 180, 127, 216, 12, 128, 30, 211, 179, 197, 17, 62, 137, 60, 98, 45, 80, 25, 207, 110, 241, 86, 50, 87, 54, 185, 8, 36, 40, 3, 150, 131, 186, 135, 237, 49, 23, 212, 229, 187, 74, 205, 82, 165, 58, 59, 156, 183, 22, 76, 130, 193, 178, 94, 107, 114, 47, 102, 245, 70, 15, 92, 63, 19, 196, 56, 41, 111, 208, 108, 52, 35, 190, 159, 123, 194, 144, 9, 75, 85, 239, 97, 153, 99, 168, 158, 188, 118, 95, 121, 84, 170, 33, 31, 105, 24, 145, 106, 147, 67, 214, 164, 21, 103, 10, 129, 115, 139, 5, 231, 133, 161]","[4, 206, 201, 87, 86, 191, 89, 110, 6, 84, 96, 16, 195, 111, 116, 12, 103, 1, 194, 72, 62, 31, 200, 213, 19, 51, 91, 240, 182, 25, 237, 225, 26, 56, 43, 8, 234, 70, 123, 104, 215, 98, 94, 55, 57, 217, 250, 3, 28, 150, 199, 204, 85, 196, 63, 90, 37, 223, 121, 38, 53, 125, 138, 142, 224, 46, 143, 140, 202, 236, 136, 151, 246, 177, 128, 17, 174, 15, 61, 255, 166, 18, 58, 164, 197, 109, 100, 227, 169, 157, 95, 222, 216, 209, 184, 112, 171, 71, 108, 176, 238, 11, 154, 42, 189, 252, 115, 13, 30, 134, 60, 124, 44, 167, 47, 173, 251, 119, 221, 78, 214, 27, 229, 178, 160, 253, 65, 79]","[3, 8, 12, 15, 17, 18, 19, 25, 30, 31, 47, 56, 58, 60, 62, 63, 70, 84, 85, 86, 87, 94, 95, 98, 103, 108, 110, 111, 115, 121, 123, 128, 150, 160, 164, 178, 194, 196, 197, 199, 201, 214, 216, 225, 229, 237]" +78,"[167, 43, 198, 217, 90, 94, 132, 183, 236, 172, 98, 195, 118, 121, 19, 30, 93, 235, 12, 201, 81, 4, 29, 148, 64, 2, 20, 27, 77, 86, 46, 17, 207, 152, 140, 14, 214, 245, 166, 71, 48, 175, 241, 44, 229, 184, 185, 219, 153, 124, 63, 95, 161, 155, 196, 133, 56, 209, 141, 34, 149, 151, 82, 38, 247, 85, 128, 96, 54, 25, 160, 120, 108, 127, 92, 252, 39, 254, 58, 68, 146, 249, 21, 41, 53, 80, 234, 136, 173, 142, 22, 18, 50, 224, 170, 104, 130, 197, 251, 176, 208, 206, 139, 47, 72, 116, 114, 194, 189, 212, 61, 177, 156, 144, 154, 200, 40, 119, 1, 76, 51, 15, 135, 158, 70, 138, 218, 230]","[152, 37, 128, 234, 23, 219, 28, 108, 254, 31, 19, 36, 173, 231, 217, 154, 122, 30, 235, 106, 248, 58, 212, 33, 26, 155, 123, 135, 158, 216, 16, 90, 4, 71, 15, 180, 185, 86, 238, 196, 85, 65, 195, 104, 161, 214, 151, 107, 13, 126, 125, 247, 134, 236, 43, 96, 119, 245, 177, 109, 98, 87, 11, 47, 174, 178, 60, 181, 78, 226, 127, 191, 81, 64, 82, 242, 80, 164, 75, 246, 250, 102, 156, 218, 77, 194, 241, 160, 171, 232, 157, 150, 175, 130, 120, 103, 51, 101, 53, 144, 118, 39, 94, 2, 32, 227, 167, 210, 52, 153, 48, 179, 211, 42, 3, 131, 69, 129, 165, 132, 67, 20, 139, 0, 184, 62, 46, 73]","[2, 4, 15, 19, 20, 30, 39, 43, 46, 47, 48, 51, 53, 58, 64, 71, 77, 80, 81, 82, 85, 86, 90, 94, 96, 98, 104, 108, 118, 119, 120, 127, 128, 130, 132, 135, 139, 144, 151, 152, 153, 154, 155, 156, 158, 160, 161, 167, 173, 175, 177, 184, 185, 194, 195, 196, 212, 214, 217, 218, 219, 234, 235, 236, 241, 245, 247, 254]" +79,"[71, 63, 10, 149, 82, 115, 8, 20, 162, 142, 199, 120, 218, 214, 210, 174, 42, 163, 105, 197, 116, 238, 50, 55, 154, 26, 16, 134, 220, 117, 64, 194, 87, 157, 173, 213, 180, 196, 2, 241, 123, 60, 159, 183, 83, 225, 191, 107, 126, 90, 39, 27, 224, 86, 146, 53, 219, 138, 128, 170, 91, 156, 187, 85, 176, 160, 54, 236, 45, 179, 204, 141, 161, 145, 30, 21, 195, 244, 182, 110, 245, 52, 114, 235, 240, 51, 246, 32, 155, 175, 88, 84, 7, 136, 234, 168, 131, 73, 229, 100, 254, 185, 217, 221, 148, 121, 216, 206, 188, 43, 34, 76, 125, 144, 253, 104, 94, 66, 230, 99, 127, 227, 208, 97, 178, 232, 31, 250]","[63, 5, 208, 115, 39, 132, 21, 113, 154, 180, 210, 231, 44, 146, 179, 186, 36, 238, 165, 243, 200, 84, 254, 61, 149, 51, 34, 241, 62, 20, 189, 91, 2, 82, 118, 100, 137, 198, 105, 121, 70, 174, 14, 83, 71, 148, 246, 69, 116, 150, 89, 136, 76, 46, 57, 98, 177, 250, 43, 32, 197, 104, 45, 52, 194, 68, 159, 18, 96, 54, 139, 8, 25, 224, 245, 42, 90, 242, 253, 126, 171, 12, 151, 216, 161, 114, 211, 67, 201, 176, 170, 128, 199, 26, 109, 135, 244, 124, 223, 234, 66, 58, 190, 162, 131, 214, 140, 73, 187, 41, 173, 202, 182, 252, 125, 64, 196, 193, 10, 95, 9, 13, 147, 178, 106, 217, 50, 205]","[2, 8, 10, 20, 21, 26, 32, 34, 39, 42, 43, 45, 50, 51, 52, 54, 63, 64, 66, 71, 73, 76, 82, 83, 84, 90, 91, 100, 104, 105, 114, 115, 116, 121, 125, 126, 128, 131, 136, 146, 148, 149, 154, 159, 161, 162, 170, 173, 174, 176, 178, 179, 180, 182, 187, 194, 196, 197, 199, 208, 210, 214, 216, 217, 224, 234, 238, 241, 244, 245, 246, 250, 253, 254]" +80,"[53, 193, 196, 87, 121, 49, 167, 74, 113, 168, 14, 126, 100, 52, 96, 133, 132, 172, 80, 68, 7, 111, 22, 243, 42, 95, 166, 94, 12, 173, 142, 93, 128, 191, 23, 57, 101, 3, 106, 141, 207, 158, 189, 175, 13, 112, 183, 150, 127, 34, 29, 198, 194, 103, 24, 26, 82, 56, 225, 9, 105, 240, 222, 115, 20, 8, 138, 174, 206, 90, 62, 186, 97, 31, 204, 131, 159, 137, 170, 226, 114, 129, 61, 209, 60, 180, 212, 47, 162, 125, 169, 30, 233, 55, 165, 6, 184, 35, 199, 255, 134, 107, 5, 152, 215, 177, 66, 37, 120, 21, 241, 124, 251, 148, 41, 192, 157, 40, 201, 118, 64, 220, 236, 117, 69, 135, 77, 164]","[150, 172, 131, 62, 194, 134, 63, 82, 117, 189, 127, 253, 207, 185, 170, 69, 7, 46, 232, 105, 193, 241, 43, 51, 159, 101, 141, 96, 164, 31, 87, 209, 125, 166, 100, 199, 129, 118, 240, 21, 66, 169, 48, 238, 97, 60, 55, 247, 59, 0, 12, 165, 177, 204, 93, 58, 50, 61, 47, 49, 126, 111, 64, 128, 179, 231, 57, 157, 220, 65, 77, 80, 78, 99, 115, 144, 39, 244, 138, 135, 52, 90, 27, 25, 23, 103, 20, 73, 10, 130, 29, 124, 94, 227, 212, 175, 158, 113, 95, 230, 14, 234, 222, 120, 252, 206, 1, 190, 140, 30, 3, 237, 24, 36, 42, 112, 152, 226, 74, 167, 201, 215, 40, 168, 22, 191, 34, 9]","[3, 7, 9, 12, 14, 20, 21, 22, 23, 24, 29, 30, 31, 34, 40, 42, 47, 49, 52, 55, 57, 60, 61, 62, 64, 66, 69, 74, 77, 80, 82, 87, 90, 93, 94, 95, 96, 97, 100, 101, 103, 105, 111, 112, 113, 115, 117, 118, 120, 124, 125, 126, 127, 128, 129, 131, 134, 135, 138, 141, 150, 152, 157, 158, 159, 164, 165, 166, 167, 168, 169, 170, 172, 175, 177, 189, 191, 193, 194, 199, 201, 204, 206, 207, 209, 212, 215, 220, 222, 226, 240, 241]" +81,"[122, 218, 255, 78, 64, 244, 88, 99, 101, 183, 35, 93, 20, 236, 56, 157, 70, 19, 60, 77, 11, 85, 196, 197, 69, 90, 195, 135, 202, 113, 118, 172, 213, 224, 29, 72, 249, 25, 108, 112, 58, 75, 240, 94, 221, 92, 175, 91, 252, 128, 38, 203, 200, 247, 27, 208, 250, 41, 169, 48, 121, 239, 166, 46, 179, 206, 205, 152, 146, 97, 13, 22, 192, 164, 162, 80, 76, 156, 26, 168, 187, 248, 142, 12, 52, 161, 237, 253, 109, 233, 3, 31, 151, 133, 114, 18, 23, 130, 153, 149, 4, 147, 126, 137, 176, 180, 106, 7, 10, 74, 243, 30, 131, 150, 0, 51, 117, 98, 220, 125, 198, 217, 228, 160, 193, 144, 134, 158]","[14, 211, 147, 6, 186, 27, 134, 155, 77, 37, 65, 34, 150, 10, 4, 2, 115, 195, 218, 138, 73, 213, 222, 180, 187, 235, 193, 229, 89, 233, 91, 54, 214, 209, 153, 46, 17, 103, 83, 234, 129, 161, 249, 239, 237, 196, 41, 171, 64, 253, 85, 11, 181, 84, 90, 245, 159, 59, 21, 170, 177, 116, 104, 148, 208, 45, 119, 183, 28, 133, 61, 248, 51, 29, 48, 108, 143, 5, 96, 52, 106, 165, 136, 42, 13, 39, 75, 250, 242, 125, 216, 95, 87, 44, 212, 200, 189, 123, 107, 122, 162, 207, 190, 74, 231, 240, 128, 226, 230, 141, 78, 247, 243, 58, 36, 174, 191, 157, 168, 68, 63, 97, 23, 50, 164, 194, 252, 20]","[4, 10, 11, 13, 20, 23, 27, 29, 41, 46, 48, 51, 52, 58, 64, 74, 75, 77, 78, 85, 90, 91, 97, 106, 108, 122, 125, 128, 133, 134, 147, 150, 153, 157, 161, 162, 164, 168, 180, 183, 187, 193, 195, 196, 200, 208, 213, 218, 233, 237, 239, 240, 243, 247, 248, 249, 250, 252, 253]" +82,"[158, 147, 85, 53, 35, 103, 30, 155, 111, 36, 139, 87, 91, 28, 220, 186, 239, 164, 75, 203, 191, 146, 222, 79, 125, 250, 167, 223, 27, 54, 58, 196, 80, 229, 26, 76, 136, 83, 50, 177, 120, 182, 157, 32, 121, 254, 143, 245, 71, 246, 23, 230, 199, 106, 37, 130, 131, 151, 96, 137, 231, 134, 107, 135, 174, 127, 38, 13, 59, 179, 189, 145, 208, 184, 166, 154, 141, 17, 9, 110, 16, 227, 34, 39, 1, 224, 202, 4, 77, 228, 5, 212, 185, 68, 140, 180, 93, 104, 232, 144, 49, 152, 29, 173, 101, 81, 194, 205, 129, 210, 124, 176, 86, 74, 25, 117, 66, 178, 61, 201, 119, 219, 200, 181, 112, 97, 198, 42]","[92, 218, 55, 208, 193, 59, 189, 213, 34, 150, 177, 20, 159, 15, 71, 247, 237, 238, 10, 172, 18, 41, 225, 102, 72, 161, 198, 73, 184, 134, 126, 96, 86, 248, 245, 22, 58, 62, 115, 23, 240, 28, 69, 209, 109, 255, 136, 99, 204, 44, 215, 42, 64, 70, 3, 13, 162, 217, 85, 214, 234, 45, 90, 207, 12, 88, 25, 82, 169, 164, 43, 246, 95, 104, 63, 84, 108, 80, 7, 79, 49, 78, 127, 21, 91, 24, 107, 180, 188, 142, 165, 253, 226, 235, 224, 103, 168, 61, 222, 32, 233, 101, 6, 187, 35, 216, 190, 128, 39, 163, 170, 192, 154, 166, 30, 242, 132, 46, 116, 33, 52, 89, 98, 236, 243, 17, 195, 183]","[13, 17, 23, 25, 28, 30, 32, 34, 35, 39, 42, 49, 58, 59, 61, 71, 79, 80, 85, 86, 91, 96, 101, 103, 104, 107, 127, 134, 136, 154, 164, 166, 177, 180, 184, 189, 198, 208, 222, 224, 245, 246]" +83,"[9, 111, 16, 236, 44, 121, 177, 93, 132, 151, 213, 6, 109, 203, 230, 201, 66, 181, 168, 13, 18, 30, 202, 216, 183, 199, 176, 200, 105, 42, 173, 245, 161, 188, 195, 102, 71, 144, 97, 26, 49, 197, 250, 61, 184, 94, 27, 77, 76, 209, 226, 90, 98, 170, 101, 7, 92, 75, 52, 186, 22, 62, 45, 59, 122, 85, 108, 56, 24, 215, 223, 115, 210, 175, 74, 155, 82, 158, 140, 19, 46, 193, 67, 80, 214, 10, 43, 156, 130, 243, 189, 1, 221, 206, 91, 2, 48, 73, 113, 137, 128, 169, 225, 222, 36, 60, 229, 47, 191, 55, 136, 127, 134, 153, 100, 119, 172, 57, 83, 159, 244, 248, 192, 187, 4, 25, 190, 240]","[235, 36, 128, 147, 184, 100, 204, 92, 93, 197, 170, 90, 236, 158, 183, 222, 209, 17, 48, 22, 26, 127, 20, 132, 176, 233, 200, 150, 55, 195, 8, 210, 216, 243, 81, 45, 155, 144, 129, 98, 203, 37, 213, 113, 140, 159, 181, 101, 31, 30, 18, 24, 99, 238, 122, 27, 164, 62, 16, 208, 248, 167, 207, 199, 85, 1, 231, 118, 228, 225, 19, 82, 148, 104, 49, 135, 121, 191, 25, 202, 67, 54, 11, 111, 77, 226, 91, 255, 189, 240, 68, 201, 149, 120, 245, 151, 142, 125, 44, 143, 6, 86, 206, 133, 174, 40, 7, 247, 76, 41, 33, 47, 187, 97, 160, 168, 145, 250, 108, 130, 241, 136, 52, 94, 105, 61, 66, 230]","[1, 6, 7, 16, 18, 19, 22, 24, 25, 26, 27, 30, 36, 44, 45, 47, 48, 49, 52, 55, 61, 62, 66, 67, 76, 77, 82, 85, 90, 91, 92, 93, 94, 97, 98, 100, 101, 105, 108, 111, 113, 121, 122, 127, 128, 130, 132, 136, 140, 144, 151, 155, 158, 159, 168, 170, 176, 181, 183, 184, 187, 189, 191, 195, 197, 199, 200, 201, 202, 203, 206, 209, 210, 213, 216, 222, 225, 226, 230, 236, 240, 243, 245, 248, 250]" +84,"[83, 105, 15, 77, 189, 213, 46, 190, 134, 234, 254, 73, 232, 151, 81, 1, 37, 85, 164, 93, 16, 143, 54, 228, 176, 247, 118, 203, 221, 86, 168, 103, 80, 101, 43, 11, 3, 194, 90, 69, 210, 67, 237, 49, 45, 162, 96, 34, 76, 79, 208, 204, 242, 58, 13, 51, 22, 147, 124, 60, 121, 135, 82, 52, 249, 193, 173, 200, 112, 230, 158, 160, 115, 71, 119, 215, 250, 88, 114, 53, 41, 236, 84, 231, 206, 59, 122, 175, 74, 97, 255, 21, 156, 104, 169, 141, 110, 233, 92, 212, 146, 64, 78, 133, 205, 48, 33, 12, 0, 35, 226, 14, 132, 187, 61, 216, 5, 106, 155, 152, 163, 4, 201, 20, 120, 24, 27, 128]","[51, 22, 185, 127, 203, 246, 237, 133, 31, 54, 193, 93, 72, 145, 83, 52, 82, 107, 249, 61, 220, 25, 216, 104, 59, 1, 34, 197, 149, 23, 135, 123, 78, 236, 180, 224, 74, 40, 163, 189, 157, 9, 192, 15, 117, 222, 18, 29, 144, 207, 119, 122, 114, 150, 183, 24, 199, 8, 154, 5, 85, 254, 204, 241, 103, 165, 247, 194, 43, 96, 223, 158, 140, 97, 177, 2, 7, 116, 187, 162, 75, 118, 239, 109, 242, 46, 244, 131, 186, 188, 12, 206, 99, 47, 210, 53, 68, 91, 77, 124, 218, 10, 20, 35, 14, 184, 232, 173, 49, 86, 128, 87, 84, 4, 80, 178, 175, 67, 198, 3, 16, 221, 255, 160, 228, 182, 234, 201]","[1, 3, 4, 5, 12, 14, 15, 16, 20, 22, 24, 34, 35, 43, 46, 49, 51, 52, 53, 54, 59, 61, 67, 74, 77, 78, 80, 82, 83, 84, 85, 86, 93, 96, 97, 103, 104, 114, 118, 119, 122, 124, 128, 133, 135, 158, 160, 162, 163, 173, 175, 187, 189, 193, 194, 201, 203, 204, 206, 210, 216, 221, 228, 232, 234, 236, 237, 242, 247, 249, 254, 255]" +85,"[92, 30, 150, 106, 205, 143, 89, 62, 231, 63, 86, 119, 5, 66, 204, 209, 167, 28, 108, 147, 23, 69, 153, 162, 164, 14, 55, 90, 88, 29, 118, 148, 171, 180, 145, 253, 238, 215, 41, 199, 61, 75, 9, 202, 131, 242, 31, 227, 72, 240, 217, 109, 73, 239, 140, 241, 2, 194, 77, 95, 24, 195, 48, 187, 50, 160, 121, 96, 100, 65, 82, 128, 222, 44, 154, 243, 146, 101, 93, 105, 110, 193, 183, 250, 225, 78, 151, 18, 47, 22, 11, 117, 216, 188, 49, 26, 36, 0, 33, 6, 85, 179, 184, 57, 255, 114, 220, 247, 53, 173, 102, 125, 172, 12, 126, 139, 221, 133, 141, 212, 165, 149, 7, 3, 144, 59, 35, 191]","[63, 90, 116, 243, 184, 136, 226, 139, 216, 199, 10, 84, 95, 182, 132, 97, 147, 89, 138, 160, 221, 83, 77, 66, 236, 141, 194, 140, 131, 146, 49, 206, 61, 87, 47, 75, 45, 54, 249, 125, 150, 119, 190, 208, 235, 81, 59, 9, 52, 15, 166, 126, 48, 164, 153, 134, 26, 38, 204, 3, 8, 17, 240, 121, 112, 36, 103, 0, 102, 172, 250, 238, 218, 6, 113, 124, 60, 76, 71, 193, 41, 14, 91, 154, 178, 186, 144, 98, 101, 88, 253, 223, 50, 108, 133, 123, 174, 185, 156, 152, 201, 31, 167, 237, 127, 4, 114, 255, 227, 85, 148, 162, 30, 33, 248, 62, 96, 177, 22, 209, 58, 57, 73, 183, 173, 11, 247, 217]","[0, 3, 6, 9, 11, 14, 22, 26, 30, 31, 33, 36, 41, 47, 48, 49, 50, 57, 59, 61, 62, 63, 66, 73, 75, 77, 85, 88, 89, 90, 95, 96, 101, 102, 108, 114, 119, 121, 125, 126, 131, 133, 139, 140, 141, 144, 146, 147, 148, 150, 153, 154, 160, 162, 164, 167, 172, 173, 183, 184, 193, 194, 199, 204, 209, 216, 217, 221, 227, 238, 240, 243, 247, 250, 253, 255]" +86,"[226, 15, 208, 173, 64, 66, 110, 202, 33, 112, 74, 225, 177, 252, 105, 80, 47, 246, 182, 248, 16, 7, 237, 189, 25, 19, 1, 140, 104, 222, 79, 26, 94, 203, 97, 126, 174, 160, 238, 48, 188, 96, 151, 135, 103, 196, 124, 198, 84, 82, 136, 159, 27, 115, 253, 109, 90, 199, 190, 86, 53, 101, 169, 142, 167, 77, 68, 43, 168, 17, 31, 83, 114, 236, 205, 11, 234, 59, 42, 98, 23, 176, 197, 55, 215, 217, 134, 184, 113, 207, 49, 30, 214, 32, 57, 209, 5, 243, 228, 156, 254, 186, 133, 181, 85, 144, 128, 163, 155, 146, 200, 158, 171, 162, 10, 250, 121, 120, 12, 220, 40, 152, 130, 111, 249, 212, 193, 178]","[229, 140, 47, 176, 150, 73, 134, 89, 118, 157, 44, 163, 209, 18, 92, 217, 234, 192, 101, 222, 202, 223, 31, 63, 164, 75, 102, 53, 48, 83, 211, 219, 179, 119, 96, 187, 232, 180, 141, 122, 21, 28, 195, 153, 72, 186, 206, 9, 129, 145, 81, 148, 233, 65, 242, 91, 210, 0, 52, 19, 178, 116, 196, 212, 221, 43, 137, 247, 58, 239, 138, 62, 146, 131, 35, 54, 95, 41, 175, 112, 204, 29, 34, 143, 236, 45, 240, 218, 144, 226, 139, 15, 6, 166, 20, 167, 106, 213, 99, 14, 121, 4, 1, 165, 189, 93, 151, 39, 154, 231, 36, 184, 100, 255, 161, 181, 56, 149, 37, 185, 147, 22, 17, 194, 252, 49, 70, 224]","[1, 15, 17, 19, 31, 43, 47, 48, 49, 53, 83, 96, 101, 112, 121, 134, 140, 144, 146, 151, 163, 167, 176, 178, 181, 184, 186, 189, 196, 202, 209, 212, 217, 222, 226, 234, 236, 252]" +87,"[232, 96, 28, 45, 44, 19, 24, 129, 49, 27, 111, 109, 237, 50, 245, 17, 60, 200, 90, 145, 91, 54, 120, 73, 81, 59, 101, 115, 103, 139, 174, 180, 110, 67, 221, 61, 218, 143, 196, 104, 173, 80, 225, 22, 147, 235, 108, 86, 236, 113, 185, 164, 247, 171, 201, 211, 242, 43, 222, 74, 135, 75, 202, 83, 48, 138, 176, 51, 119, 11, 5, 165, 224, 182, 189, 220, 253, 188, 41, 217, 46, 118, 249, 56, 149, 57, 14, 152, 126, 64, 47, 114, 15, 199, 121, 216, 195, 223, 102, 35, 97, 32, 95, 85, 107, 36, 175, 58, 166, 4, 156, 153, 230, 18, 133, 89, 78, 100, 243, 132, 227, 0, 42, 20, 183, 226, 167, 112]","[194, 230, 112, 78, 30, 52, 32, 90, 27, 42, 71, 61, 191, 83, 164, 202, 208, 29, 56, 176, 25, 130, 68, 64, 118, 66, 123, 167, 21, 147, 209, 174, 210, 190, 163, 155, 206, 224, 221, 158, 10, 117, 166, 110, 105, 82, 192, 50, 254, 143, 70, 6, 33, 136, 92, 31, 236, 138, 3, 24, 170, 44, 131, 88, 151, 89, 93, 36, 146, 18, 228, 172, 231, 133, 28, 137, 182, 195, 248, 94, 19, 240, 76, 65, 127, 212, 237, 62, 187, 197, 139, 2, 162, 60, 108, 116, 213, 34, 140, 53, 100, 46, 169, 252, 159, 196, 38, 72, 7, 128, 26, 47, 156, 200, 111, 1, 91, 80, 253, 148, 40, 79, 142, 20, 141, 23, 178, 106]","[18, 19, 20, 24, 27, 28, 32, 36, 42, 44, 46, 47, 50, 56, 60, 61, 64, 78, 80, 83, 89, 90, 91, 100, 108, 110, 111, 112, 118, 133, 138, 139, 143, 147, 156, 164, 166, 167, 174, 176, 182, 195, 196, 200, 202, 221, 224, 230, 236, 237, 253]" +88,"[163, 37, 59, 83, 95, 242, 175, 250, 67, 185, 135, 66, 228, 157, 53, 105, 60, 43, 180, 219, 164, 99, 78, 162, 179, 29, 82, 130, 30, 189, 36, 199, 57, 144, 26, 19, 155, 160, 87, 223, 126, 134, 64, 46, 0, 159, 24, 212, 55, 54, 100, 85, 48, 96, 65, 178, 10, 6, 149, 109, 112, 153, 169, 4, 232, 137, 139, 9, 237, 102, 16, 113, 1, 77, 90, 84, 238, 63, 49, 91, 146, 123, 25, 121, 94, 235, 131, 211, 114, 214, 174, 45, 209, 231, 129, 103, 72, 142, 172, 246, 251, 61, 190, 215, 218, 140, 208, 161, 33, 191, 50, 197, 40, 88, 222, 220, 27, 31, 71, 234, 184, 230, 249, 217, 150, 76, 154, 115]","[212, 24, 21, 219, 152, 161, 229, 197, 18, 39, 168, 160, 189, 231, 232, 0, 98, 246, 132, 149, 209, 67, 77, 122, 173, 195, 140, 146, 102, 94, 105, 54, 66, 91, 109, 249, 221, 188, 139, 194, 162, 63, 182, 95, 57, 50, 199, 90, 52, 53, 25, 178, 154, 191, 96, 167, 130, 206, 86, 157, 253, 114, 254, 227, 183, 116, 71, 58, 185, 218, 126, 72, 4, 5, 43, 112, 135, 108, 151, 223, 73, 205, 169, 247, 234, 220, 186, 100, 87, 19, 20, 215, 147, 17, 193, 10, 175, 83, 103, 210, 192, 55, 222, 180, 136, 76, 142, 250, 2, 213, 30, 113, 107, 242, 163, 36, 14, 79, 137, 99, 104, 22, 64, 141, 29, 144, 251, 164]","[0, 4, 10, 19, 24, 25, 29, 30, 36, 43, 50, 53, 54, 55, 57, 63, 64, 66, 67, 71, 72, 76, 77, 83, 87, 90, 91, 94, 95, 96, 99, 100, 102, 103, 105, 109, 112, 113, 114, 126, 130, 135, 137, 139, 140, 142, 144, 146, 149, 154, 157, 160, 161, 162, 163, 164, 169, 175, 178, 180, 185, 189, 191, 197, 199, 209, 212, 215, 218, 219, 220, 222, 223, 231, 232, 234, 242, 246, 249, 250, 251]" +89,"[21, 132, 215, 96, 71, 240, 242, 193, 165, 154, 100, 158, 59, 75, 249, 79, 62, 81, 29, 9, 47, 144, 241, 112, 101, 129, 185, 27, 151, 16, 37, 84, 90, 92, 38, 78, 145, 152, 160, 203, 87, 167, 236, 122, 6, 1, 250, 220, 105, 124, 88, 103, 175, 52, 243, 33, 162, 178, 217, 164, 137, 174, 20, 76, 5, 189, 72, 91, 17, 210, 58, 104, 26, 148, 182, 173, 131, 39, 231, 65, 139, 70, 15, 150, 234, 36, 82, 63, 126, 186, 18, 48, 41, 206, 11, 163, 247, 128, 177, 55, 196, 40, 181, 111, 32, 223, 66, 89, 30, 183, 60, 28, 74, 190, 85, 255, 141, 212, 166, 0, 176, 146, 208, 50, 86, 93, 31, 169]","[148, 62, 51, 34, 16, 108, 91, 103, 169, 173, 207, 231, 102, 101, 63, 72, 183, 234, 163, 9, 115, 243, 52, 160, 5, 215, 50, 150, 6, 70, 180, 121, 134, 213, 0, 75, 158, 199, 87, 100, 96, 76, 241, 193, 170, 25, 21, 110, 248, 74, 190, 20, 88, 120, 165, 222, 112, 210, 64, 212, 58, 166, 217, 159, 39, 152, 90, 19, 26, 57, 98, 176, 253, 242, 85, 53, 139, 132, 200, 92, 136, 174, 137, 182, 71, 144, 79, 29, 227, 141, 240, 107, 17, 128, 93, 175, 95, 238, 109, 105, 36, 195, 89, 247, 143, 185, 77, 145, 187, 13, 154, 196, 84, 38, 122, 255, 48, 99, 179, 60, 22, 226, 205, 27, 116, 33, 124, 118]","[0, 5, 6, 9, 16, 17, 20, 21, 26, 27, 29, 33, 36, 38, 39, 48, 50, 52, 58, 60, 62, 63, 70, 71, 72, 74, 75, 76, 79, 84, 85, 87, 88, 89, 90, 91, 92, 93, 96, 100, 101, 103, 105, 112, 122, 124, 128, 132, 137, 139, 141, 144, 145, 148, 150, 152, 154, 158, 160, 163, 165, 166, 169, 173, 174, 175, 176, 182, 183, 185, 190, 193, 196, 210, 212, 215, 217, 231, 234, 240, 241, 242, 243, 247, 255]" +90,"[19, 173, 102, 86, 253, 56, 25, 135, 250, 126, 91, 137, 146, 45, 100, 209, 12, 1, 238, 225, 109, 208, 43, 184, 116, 93, 84, 89, 136, 92, 186, 166, 8, 99, 62, 159, 90, 32, 160, 153, 194, 37, 110, 83, 108, 80, 247, 192, 204, 72, 224, 185, 113, 81, 234, 33, 187, 44, 22, 123, 24, 76, 133, 164, 17, 2, 206, 47, 105, 107, 52, 36, 223, 176, 53, 236, 3, 71, 88, 249, 60, 245, 198, 4, 195, 151, 121, 175, 58, 154, 241, 213, 196, 205, 18, 57, 203, 248, 20, 42, 134, 49, 211, 95, 142, 230, 150, 15, 118, 233, 131, 190, 178, 28, 177, 39, 170, 148, 174, 183, 70, 179, 127, 104, 152, 157, 252, 54]","[59, 222, 183, 169, 127, 24, 158, 85, 204, 152, 115, 37, 136, 1, 47, 72, 198, 214, 252, 75, 8, 98, 148, 0, 248, 108, 167, 23, 49, 62, 182, 99, 199, 64, 225, 162, 41, 84, 22, 220, 137, 56, 65, 42, 7, 101, 6, 68, 138, 243, 126, 143, 34, 106, 18, 172, 224, 30, 102, 231, 55, 161, 170, 173, 97, 189, 200, 124, 219, 160, 44, 46, 146, 235, 73, 79, 70, 234, 40, 150, 33, 10, 216, 178, 88, 230, 129, 105, 166, 197, 19, 14, 109, 87, 63, 147, 181, 188, 130, 168, 236, 104, 195, 95, 144, 254, 51, 132, 128, 202, 26, 131, 134, 5, 193, 61, 107, 226, 60, 4, 17, 139, 89, 103, 58, 180, 39, 93]","[1, 4, 8, 17, 18, 19, 22, 24, 33, 37, 39, 42, 44, 47, 49, 56, 58, 60, 62, 70, 72, 84, 88, 89, 93, 95, 99, 102, 104, 105, 107, 108, 109, 126, 127, 131, 134, 136, 137, 146, 148, 150, 152, 160, 166, 170, 173, 178, 183, 195, 198, 204, 224, 225, 230, 234, 236, 248, 252]" +91,"[231, 211, 124, 114, 87, 47, 213, 139, 111, 176, 113, 103, 163, 20, 202, 174, 54, 53, 158, 19, 0, 29, 39, 179, 105, 6, 102, 92, 122, 226, 232, 162, 195, 233, 194, 67, 12, 91, 149, 65, 35, 27, 245, 48, 125, 108, 248, 96, 78, 64, 198, 30, 38, 212, 9, 109, 200, 132, 61, 217, 100, 94, 24, 76, 119, 218, 249, 222, 57, 237, 106, 28, 137, 210, 167, 135, 49, 225, 110, 221, 240, 214, 189, 14, 242, 123, 16, 21, 165, 197, 82, 68, 4, 26, 36, 42, 193, 80, 169, 55, 129, 89, 5, 33, 10, 227, 157, 229, 219, 187, 13, 126, 185, 160, 17, 152, 107, 171, 177, 164, 146, 25, 51, 70, 203, 97, 18, 134]","[149, 39, 217, 47, 10, 250, 233, 216, 110, 17, 213, 37, 67, 229, 26, 121, 164, 120, 102, 153, 48, 61, 249, 169, 27, 195, 14, 38, 174, 51, 45, 28, 176, 97, 244, 170, 254, 232, 80, 142, 139, 187, 9, 179, 163, 41, 103, 106, 210, 82, 202, 138, 167, 159, 194, 24, 251, 46, 15, 215, 171, 162, 86, 81, 150, 208, 214, 172, 184, 243, 52, 35, 11, 0, 70, 87, 8, 245, 13, 247, 131, 219, 207, 91, 115, 75, 33, 177, 96, 64, 132, 122, 211, 137, 130, 19, 22, 36, 218, 156, 178, 116, 114, 29, 49, 125, 57, 20, 168, 175, 95, 78, 212, 225, 73, 111, 124, 248, 12, 205, 99, 112, 152, 65, 222, 92, 113, 54]","[0, 9, 10, 12, 13, 14, 17, 19, 20, 24, 26, 27, 28, 29, 33, 35, 36, 38, 39, 47, 48, 49, 51, 54, 57, 61, 64, 65, 67, 70, 78, 80, 82, 87, 91, 92, 96, 97, 102, 103, 106, 110, 111, 113, 114, 122, 124, 125, 132, 137, 139, 149, 152, 162, 163, 164, 167, 169, 171, 174, 176, 177, 179, 187, 194, 195, 202, 210, 211, 212, 213, 214, 217, 218, 219, 222, 225, 229, 232, 233, 245, 248, 249]" +92,"[108, 79, 59, 203, 244, 151, 39, 102, 112, 219, 128, 35, 11, 235, 251, 153, 240, 12, 32, 125, 211, 164, 218, 3, 229, 139, 34, 16, 189, 253, 236, 127, 57, 143, 7, 114, 48, 146, 252, 72, 197, 18, 38, 93, 199, 176, 149, 0, 129, 109, 170, 115, 222, 180, 220, 183, 15, 56, 230, 2, 107, 106, 168, 100, 111, 152, 136, 210, 173, 30, 86, 88, 204, 123, 28, 166, 226, 137, 84, 9, 228, 26, 36, 67, 122, 82, 20, 117, 160, 174, 175, 22, 171, 154, 5, 55, 40, 165, 50, 184, 94, 52, 195, 144, 51, 121, 14, 198, 8, 196, 120, 187, 21, 233, 249, 163, 75, 140, 142, 110, 224, 97, 25, 178, 104, 132, 54, 73]","[241, 182, 195, 229, 235, 249, 174, 98, 142, 51, 233, 94, 97, 196, 7, 6, 106, 203, 186, 251, 175, 34, 11, 56, 42, 156, 171, 40, 140, 149, 14, 152, 180, 22, 36, 128, 215, 93, 198, 189, 204, 114, 20, 104, 243, 90, 109, 39, 116, 236, 177, 224, 139, 117, 38, 83, 253, 165, 153, 58, 162, 99, 154, 239, 143, 244, 252, 57, 66, 48, 81, 183, 50, 199, 70, 222, 88, 84, 62, 144, 138, 9, 5, 120, 173, 218, 54, 150, 202, 32, 16, 220, 193, 64, 67, 49, 105, 230, 212, 110, 100, 226, 107, 44, 238, 169, 194, 201, 181, 125, 21, 141, 2, 240, 4, 0, 146, 115, 59, 250, 46, 72, 65, 78, 221, 3, 37, 136]","[0, 2, 3, 5, 7, 9, 11, 14, 16, 20, 21, 22, 32, 34, 36, 38, 39, 40, 48, 50, 51, 54, 56, 57, 59, 67, 72, 84, 88, 93, 94, 97, 100, 104, 106, 107, 109, 110, 114, 115, 117, 120, 125, 128, 136, 139, 140, 142, 143, 144, 146, 149, 152, 153, 154, 165, 171, 173, 174, 175, 180, 183, 189, 195, 196, 198, 199, 203, 204, 218, 220, 222, 224, 226, 229, 230, 233, 235, 236, 240, 244, 249, 251, 252, 253]" +93,"[59, 142, 165, 194, 103, 159, 67, 84, 41, 116, 151, 157, 20, 222, 217, 135, 97, 60, 40, 29, 108, 6, 225, 22, 8, 68, 83, 224, 255, 209, 250, 182, 207, 58, 14, 130, 70, 66, 133, 39, 214, 77, 80, 132, 90, 45, 96, 153, 88, 65, 134, 120, 146, 232, 74, 49, 95, 124, 5, 156, 136, 223, 176, 198, 28, 181, 100, 127, 64, 10, 190, 203, 73, 240, 110, 38, 140, 188, 242, 93, 125, 75, 152, 158, 46, 197, 19, 117, 33, 178, 227, 115, 123, 101, 121, 251, 154, 236, 113, 37, 91, 162, 34, 53, 109, 216, 143, 48, 138, 106, 253, 50, 56, 89, 85, 184, 220, 51, 218, 185, 26, 206, 241, 183, 175, 169, 27, 245]","[214, 30, 120, 101, 162, 126, 167, 182, 193, 109, 96, 83, 90, 3, 146, 69, 179, 129, 84, 213, 68, 184, 40, 119, 206, 176, 152, 21, 192, 29, 150, 72, 144, 139, 220, 174, 180, 57, 191, 202, 2, 200, 246, 231, 199, 147, 195, 127, 161, 56, 170, 238, 80, 12, 27, 212, 141, 128, 92, 219, 243, 148, 164, 172, 241, 158, 64, 81, 208, 151, 14, 248, 115, 177, 88, 252, 181, 201, 215, 225, 15, 35, 7, 205, 60, 228, 85, 54, 42, 61, 10, 137, 6, 36, 18, 229, 67, 204, 169, 66, 47, 166, 132, 31, 65, 138, 253, 190, 91, 19, 48, 103, 232, 133, 226, 125, 16, 249, 32, 185, 49, 175, 244, 70, 247, 230, 183, 99]","[6, 10, 14, 19, 27, 29, 40, 48, 49, 56, 60, 64, 65, 66, 67, 68, 70, 80, 83, 84, 85, 88, 90, 91, 96, 101, 103, 109, 115, 120, 125, 127, 132, 133, 138, 146, 151, 152, 158, 162, 169, 175, 176, 181, 182, 183, 184, 185, 190, 206, 214, 220, 225, 232, 241, 253]" +94,"[76, 151, 57, 73, 22, 42, 24, 90, 186, 139, 200, 16, 128, 137, 160, 74, 165, 152, 38, 66, 21, 156, 205, 54, 198, 102, 81, 176, 122, 202, 61, 65, 159, 111, 167, 179, 226, 8, 109, 210, 10, 101, 146, 1, 185, 4, 112, 204, 192, 168, 115, 41, 108, 121, 64, 217, 119, 44, 103, 83, 241, 232, 148, 30, 55, 104, 140, 199, 173, 71, 120, 9, 93, 164, 123, 252, 191, 78, 97, 184, 117, 182, 126, 189, 197, 143, 194, 247, 37, 26, 222, 45, 15, 105, 216, 27, 62, 39, 246, 130, 153, 98, 47, 174, 135, 82, 35, 13, 234, 211, 40, 209, 195, 110, 154, 229, 17, 89, 106, 29, 99, 178, 113, 136, 212, 18, 129, 158]","[204, 55, 90, 175, 210, 196, 98, 149, 191, 31, 95, 239, 13, 110, 9, 236, 33, 82, 41, 67, 102, 136, 153, 217, 121, 85, 166, 74, 108, 123, 216, 176, 246, 158, 64, 180, 6, 198, 119, 186, 107, 147, 241, 131, 26, 179, 128, 111, 211, 230, 190, 206, 17, 15, 151, 89, 1, 178, 57, 187, 73, 104, 62, 30, 137, 24, 125, 78, 139, 240, 247, 189, 134, 45, 194, 60, 207, 27, 101, 99, 197, 10, 92, 35, 69, 22, 237, 229, 195, 212, 28, 58, 65, 8, 61, 109, 117, 168, 36, 159, 145, 251, 38, 129, 148, 182, 25, 11, 254, 97, 93, 66, 146, 192, 174, 126, 234, 29, 72, 209, 156, 81, 39, 37, 12, 83, 71, 48]","[1, 8, 9, 10, 13, 15, 17, 22, 24, 26, 27, 29, 30, 35, 37, 38, 39, 41, 45, 55, 57, 61, 62, 64, 65, 66, 71, 73, 74, 78, 81, 82, 83, 89, 90, 93, 97, 98, 99, 101, 102, 104, 108, 109, 110, 111, 117, 119, 121, 123, 126, 128, 129, 136, 137, 139, 146, 148, 151, 153, 156, 158, 159, 168, 174, 176, 178, 179, 182, 186, 189, 191, 192, 194, 195, 197, 198, 204, 209, 210, 211, 212, 216, 217, 229, 234, 241, 246, 247]" +95,"[50, 65, 223, 73, 121, 91, 127, 148, 45, 242, 95, 198, 253, 171, 169, 25, 135, 3, 166, 92, 98, 123, 207, 24, 149, 90, 180, 13, 31, 153, 68, 132, 79, 140, 40, 44, 4, 2, 17, 110, 168, 129, 165, 30, 14, 158, 155, 41, 118, 239, 226, 77, 164, 228, 23, 200, 111, 105, 144, 229, 170, 85, 194, 61, 214, 36, 141, 26, 234, 101, 197, 71, 106, 219, 16, 252, 125, 54, 67, 182, 213, 134, 227, 143, 255, 47, 160, 48, 43, 108, 39, 1, 230, 94, 42, 222, 206, 152, 52, 51, 20, 11, 5, 185, 245, 120, 57, 34, 83, 187, 174, 56, 89, 137, 231, 27, 145, 75, 193, 190, 66, 96, 115, 102, 32, 201, 37, 114]","[159, 37, 170, 232, 122, 210, 177, 7, 211, 126, 220, 111, 63, 49, 190, 85, 230, 56, 103, 247, 22, 185, 234, 218, 244, 129, 81, 120, 51, 239, 109, 1, 186, 149, 60, 199, 58, 21, 78, 46, 171, 4, 141, 45, 19, 31, 27, 11, 213, 175, 73, 44, 135, 235, 184, 254, 246, 193, 42, 204, 24, 139, 137, 173, 82, 121, 201, 95, 202, 150, 187, 71, 38, 225, 91, 28, 64, 221, 136, 145, 124, 216, 15, 76, 180, 14, 18, 90, 162, 9, 233, 147, 251, 167, 8, 10, 212, 181, 32, 203, 176, 87, 69, 86, 128, 29, 72, 237, 113, 189, 205, 156, 241, 39, 155, 243, 209, 238, 92, 83, 47, 179, 196, 74, 255, 101, 5, 114]","[1, 4, 5, 11, 14, 24, 27, 31, 32, 37, 39, 42, 44, 45, 47, 51, 56, 71, 73, 83, 85, 90, 91, 92, 95, 101, 111, 114, 120, 121, 129, 135, 137, 141, 145, 149, 155, 170, 171, 180, 185, 187, 190, 193, 201, 213, 230, 234, 239, 255]" +96,"[108, 104, 142, 134, 39, 173, 143, 83, 127, 158, 11, 151, 1, 50, 253, 113, 24, 150, 53, 17, 90, 224, 112, 124, 74, 98, 206, 160, 250, 156, 178, 120, 153, 137, 107, 129, 60, 35, 217, 176, 184, 70, 0, 12, 52, 101, 48, 86, 210, 201, 66, 19, 163, 223, 131, 194, 167, 152, 102, 6, 182, 226, 190, 29, 38, 96, 140, 87, 133, 193, 208, 166, 79, 27, 132, 13, 110, 236, 212, 192, 118, 203, 62, 149, 161, 23, 76, 85, 213, 43, 99, 130, 197, 46, 254, 97, 7, 205, 185, 81, 196, 111, 195, 92, 199, 123, 44, 80, 187, 128, 58, 22, 237, 200, 45, 57, 144, 247, 91, 221, 243, 51, 215, 68, 75, 69, 183, 64]","[83, 19, 171, 79, 167, 177, 207, 46, 229, 126, 10, 241, 64, 168, 238, 121, 115, 235, 85, 141, 231, 213, 89, 15, 82, 243, 230, 35, 5, 191, 189, 17, 12, 44, 119, 218, 156, 86, 215, 33, 67, 142, 219, 109, 129, 169, 249, 179, 93, 214, 2, 7, 61, 244, 140, 147, 111, 209, 22, 133, 103, 223, 37, 25, 41, 188, 114, 106, 248, 23, 53, 155, 31, 84, 175, 148, 6, 196, 255, 246, 154, 50, 87, 192, 228, 165, 232, 245, 34, 202, 159, 96, 158, 73, 63, 130, 138, 78, 247, 65, 220, 125, 80, 144, 240, 252, 150, 117, 206, 236, 16, 132, 18, 194, 47, 251, 174, 1, 94, 66, 105, 71, 99, 134, 239, 42, 13, 136]","[1, 6, 7, 12, 13, 17, 19, 22, 23, 35, 44, 46, 50, 53, 64, 66, 79, 80, 83, 85, 86, 87, 96, 99, 111, 129, 130, 132, 133, 134, 140, 142, 144, 150, 156, 158, 167, 192, 194, 196, 206, 213, 215, 223, 236, 243, 247]" +97,"[176, 194, 118, 22, 208, 218, 108, 242, 33, 62, 157, 211, 17, 89, 213, 214, 49, 178, 142, 103, 150, 141, 54, 171, 126, 229, 45, 201, 240, 99, 2, 97, 82, 162, 192, 102, 18, 121, 66, 190, 151, 12, 254, 138, 198, 137, 155, 173, 71, 179, 90, 0, 129, 147, 161, 223, 46, 215, 234, 57, 28, 125, 60, 196, 250, 177, 123, 225, 159, 205, 139, 243, 37, 25, 128, 120, 131, 24, 111, 8, 56, 42, 1, 85, 156, 72, 195, 92, 26, 93, 187, 36, 81, 64, 228, 226, 227, 53, 167, 59, 210, 52, 189, 83, 95, 116, 182, 135, 132, 79, 236, 9, 148, 237, 169, 55, 199, 222, 105, 20, 255, 140, 113, 217, 122, 124, 146, 143]","[142, 208, 205, 157, 71, 72, 200, 1, 143, 209, 99, 8, 117, 168, 82, 98, 171, 79, 24, 166, 223, 241, 238, 22, 60, 103, 158, 43, 89, 201, 118, 147, 235, 186, 178, 90, 56, 59, 64, 4, 104, 247, 192, 250, 86, 145, 130, 49, 88, 19, 167, 169, 196, 210, 95, 85, 17, 225, 189, 226, 148, 121, 154, 40, 84, 230, 3, 80, 122, 213, 73, 214, 92, 26, 227, 67, 216, 124, 57, 212, 231, 31, 202, 54, 179, 13, 141, 127, 245, 173, 164, 195, 44, 155, 170, 242, 239, 181, 18, 58, 183, 138, 132, 14, 110, 97, 37, 68, 101, 28, 87, 81, 111, 236, 215, 123, 135, 62, 172, 55, 180, 45, 187, 106, 93, 246, 129, 70]","[1, 8, 17, 18, 22, 24, 26, 28, 37, 45, 49, 54, 55, 56, 57, 59, 60, 62, 64, 71, 72, 79, 81, 82, 85, 89, 90, 92, 93, 95, 97, 99, 103, 111, 118, 121, 122, 123, 124, 129, 132, 135, 138, 141, 142, 143, 147, 148, 155, 157, 167, 169, 171, 173, 178, 179, 187, 189, 192, 195, 196, 201, 205, 208, 210, 213, 214, 215, 223, 225, 226, 227, 236, 242, 250]" +98,"[154, 94, 248, 0, 212, 211, 77, 235, 79, 140, 121, 245, 15, 46, 172, 76, 30, 162, 194, 198, 26, 142, 209, 243, 96, 21, 184, 135, 213, 218, 63, 42, 171, 208, 146, 220, 95, 20, 173, 25, 55, 199, 53, 253, 34, 227, 112, 226, 52, 192, 167, 221, 105, 223, 64, 126, 164, 152, 13, 204, 239, 117, 128, 123, 175, 185, 233, 91, 149, 75, 11, 205, 9, 85, 107, 81, 155, 153, 141, 203, 240, 165, 54, 148, 17, 33, 68, 39, 120, 86, 187, 237, 137, 150, 118, 252, 157, 136, 195, 45, 103, 202, 111, 206, 108, 181, 176, 83, 23, 210, 32, 62, 48, 109, 37, 166, 170, 124, 196, 36, 160, 127, 110, 100, 177, 169, 29, 130]","[96, 119, 233, 113, 48, 24, 166, 130, 50, 235, 5, 136, 245, 102, 201, 90, 72, 49, 164, 109, 175, 2, 36, 210, 58, 11, 240, 31, 131, 237, 198, 67, 171, 52, 196, 26, 129, 77, 236, 56, 203, 121, 139, 213, 209, 112, 182, 224, 81, 86, 84, 134, 0, 186, 168, 15, 162, 63, 16, 208, 98, 199, 123, 43, 178, 212, 71, 218, 107, 179, 38, 191, 78, 180, 126, 4, 219, 9, 153, 30, 118, 21, 29, 120, 7, 76, 145, 69, 185, 35, 99, 124, 13, 105, 32, 54, 184, 181, 189, 159, 174, 128, 110, 234, 33, 82, 195, 73, 249, 37, 204, 230, 248, 141, 202, 220, 44, 59, 194, 154, 143, 20, 3, 160, 148, 34, 74, 250]","[0, 9, 11, 13, 15, 20, 21, 26, 29, 30, 32, 33, 34, 36, 37, 48, 52, 54, 63, 76, 77, 81, 86, 96, 105, 107, 109, 110, 112, 118, 120, 121, 123, 124, 126, 128, 130, 136, 141, 148, 153, 154, 160, 162, 164, 166, 171, 175, 181, 184, 185, 194, 195, 196, 198, 199, 202, 203, 204, 208, 209, 210, 212, 213, 218, 220, 233, 235, 237, 240, 245, 248]" +99,"[107, 192, 88, 185, 186, 100, 34, 0, 22, 235, 239, 69, 64, 240, 21, 74, 232, 230, 175, 91, 189, 193, 13, 43, 247, 6, 85, 161, 57, 54, 231, 188, 31, 98, 11, 32, 217, 72, 200, 215, 199, 224, 10, 245, 152, 120, 253, 180, 182, 46, 196, 228, 243, 109, 187, 160, 70, 80, 65, 174, 241, 110, 158, 30, 112, 129, 146, 3, 76, 9, 208, 97, 254, 29, 165, 190, 227, 163, 149, 211, 134, 123, 204, 198, 221, 169, 82, 181, 203, 5, 168, 219, 154, 14, 170, 71, 155, 16, 130, 116, 73, 205, 195, 15, 103, 136, 118, 101, 58, 95, 191, 226, 89, 166, 17, 50, 59, 61, 66, 233, 83, 68, 183, 184, 63, 117, 99, 77]","[100, 229, 45, 88, 62, 52, 119, 22, 233, 91, 4, 27, 138, 24, 158, 48, 6, 255, 242, 145, 167, 41, 205, 28, 237, 47, 126, 139, 248, 85, 197, 30, 246, 14, 69, 58, 102, 65, 214, 225, 130, 131, 223, 107, 108, 251, 201, 37, 97, 204, 238, 78, 44, 73, 218, 86, 232, 244, 149, 216, 212, 38, 79, 92, 230, 196, 173, 2, 169, 179, 87, 156, 254, 54, 93, 206, 101, 143, 147, 89, 209, 252, 25, 104, 249, 127, 96, 81, 153, 114, 133, 36, 122, 241, 82, 150, 176, 171, 162, 98, 178, 210, 188, 181, 148, 42, 203, 164, 90, 213, 33, 144, 105, 175, 39, 70, 3, 222, 236, 240, 128, 111, 226, 51, 202, 56, 31, 113]","[3, 6, 14, 22, 30, 31, 54, 58, 65, 69, 70, 73, 82, 85, 88, 89, 91, 97, 98, 100, 101, 107, 130, 149, 158, 169, 175, 181, 188, 196, 203, 204, 205, 226, 230, 232, 233, 240, 241, 254]" diff --git a/examples/set_intersection/set_intersection_128.py b/examples/set_intersection/set_intersection_128.py new file mode 100644 index 0000000..d1f3802 --- /dev/null +++ b/examples/set_intersection/set_intersection_128.py @@ -0,0 +1,812 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# The source code is adapted from the sorting source code written by +# Nils Blach. +# +# main author: Robert Gerstenberger + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + +from . import utils + + +class SetIntersectionPrompter(prompter.Prompter): + """ + SetIntersectionPrompter provides the generation of prompts specific to the + set intersection example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + intersection_prompt = """ Find the intersection of two sets of numbers. Output only the set of numbers that are present in both sets, no additional text. + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Output: [40, 15, 5, 24, 35, 59, 16, 63] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Output: [115, 35, 90, 117, 63, 40, 30, 33, 15, 89, 50, 12, 2, 84, 7, 57, 96] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + intersection_prompt_cot = """ Find the intersection of two sets of numbers. You can generate any intermediate solutions, but the final output should be the set of numbers that are present in both sets, prefixed with "Output: ". + + +To find the intersection of the two sets follow these steps: +1. Split the second input set of numbers into two to four subsets, each containing an equal number of elements from the original set (make sure they don't overlap). +2. For each subset find the set of numbers that are present in the subset and the first input set. +3. Merge the resulting sets into a single output set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Subsets of Input Set 2: +[25, 24, 10, 4, 27, 0, 14, 12] +[8, 2, 29, 20, 17, 19, 26, 23] +Intersected Subsets with Input Set 1: +[24, 10] +[8, 20] +Output: [24, 10, 8, 20] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Subsets of Input Set 2: +[16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53] +[58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Intersected Subsets with Input Set 1: +[16, 15, 5, 24] +[35, 63, 40, 59] +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Subsets of Input Set 2: +[13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122] +[85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12] +[65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81] +[124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Intersected Subsets with Input Set 1: +[35, 96] +[15, 33, 57, 30, 89, 12] +[84, 40, 7, 50, 90] +[63, 117, 115, 2] +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2}""" + + tot_improve_prompt = """ The following three sets represent two sets and an intersection set of those two sets. The intersection set is not correct. Fix the intersection set so that it is correct. +Make sure that the numbers in the intersection set can be found in both input sets. + + +To fix the incorrectly intersection set follow these steps: +1. Check for each number in the incorrect intersection set, whether it can be found in both input sets. If not, remove that number from the intersection set. +2. Iterate through the second input set and check whether each number is already in the incorrect intersection set and if not, check whether that number can also be found in the first input set. If so, add that number to the intersection set. + + + +Input Set 1: [13, 16, 30, 6, 21, 7, 31, 15, 11, 1, 24, 10, 9, 3, 20, 8] +Input Set 2: [25, 24, 10, 4, 27, 0, 14, 12, 8, 2, 29, 20, 17, 19, 26, 23] +Incorrect Intersection Set: [24, 20, 25] +Reason: The incorrect intersection set contains the number 25, which is not present in the first input set and is missing the numbers 10 and 8. +Output: [24, 10, 20, 8] + +Input Set 1: [26, 40, 42, 57, 15, 31, 5, 32, 11, 4, 24, 28, 51, 54, 12, 22, 33, 35, 7, 13, 2, 59, 8, 23, 43, 16, 29, 55, 25, 63, 21, 18] +Input Set 2: [16, 60, 36, 48, 0, 15, 5, 19, 46, 24, 1, 6, 61, 10, 38, 53, 58, 9, 44, 14, 35, 63, 52, 20, 27, 17, 39, 47, 34, 56, 40, 59] +Incorrect Intersection Set: [57, 16, 15, 24, 35, 10, 40] +Reason: The incorrect intersection set contains the numbers 57, which is not present in the second input set, and 10, which is not present in the first input set, and is missing the numbers 5, 63 and 59. +Output: [16, 15, 5, 24, 35, 63, 40, 59] + +Input Set 1: [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] +Input Set 2: [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] +Incorrect Intersection Set: [35, 96, 44, 15, 33, 57, 30, 50, 90, 119, 123, 63, 117, 115, 2] +Reason: The incorrect intersection set contains the numbers 44 and 119, which are not present in the second input set, and 123, which is not present in the first input set, and is missing the numbers 89, 12, 84, 40 and 7. +Output: [35, 96, 15, 33, 57, 30, 89, 12, 84, 40, 7, 50, 90, 63, 117, 115, 2] + + +Input Set 1: {set1} +Input Set 2: {set2} +Incorrect Intersection Set: {incorrect_intersection} +""" + + got_split_prompt = """ Split the following list of 128 numbers into 8 lists of 16 numbers each, the first list should contain the first 16 numbers, the second list the second 16 numbers, the third list the third 16 numbers and the fourth list the fourth 16 numbers, the fifth list the fifth 16 numbers and so on. +Only output the 8 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [13, 35, 20, 96, 34, 18, 47, ...], + "List 2": [127, 126, 9, 21, 16, 77, 22, ...], + "List 3": [111, 122, 85, 73, 42, 105, 123, ...], + "List 4": [15, 33, 59, 67, 57, 104, 8, ...], + "List 5": [30, 89, 76, 12, 65, 84, 32, ...], + "List 6": [40, 7, 100, 108, 50, 14, 28, ...], + "List 7": [24, 53, 90, 17, 91, 81, 124, ...], + "List 8": [63, 5, 46, 125, 93, 49, 66, ...] +}} + + +Input: [124, 100, 176, 65, 28, 214, 201, 67, 127, 40, 193, 26, 212, 196, 12, 205, 39, 162, 190, 152, 186, 182, 125, 229, 114, 70, 189, 242, 155, 32, 47, 113, 99, 177, 57, 103, 156, 107, 226, 188, 31, 25, 49, 171, 17, 64, 254, 217, 35, 22, 248, 88, 251, 219, 84, 82, 167, 14, 116, 92, 105, 148, 119, 58, 13, 160, 81, 120, 74, 94, 173, 38, 101, 104, 91, 135, 208, 118, 136, 87, 75, 41, 197, 76, 249, 240, 86, 246, 231, 44, 29, 141, 241, 227, 239, 142, 222, 115, 129, 255, 216, 153, 0, 110, 36, 130, 6, 102, 209, 37, 143, 30, 51, 146, 71, 27, 181, 183, 2, 122, 77, 184, 56, 225, 108, 83, 106, 15] +Output: +{{ + "List 1": [124, 100, 176, 65, 28, 214, 201, 67, 127, 40, 193, 26, 212, 196, 12, 205], + "List 2": [39, 162, 190, 152, 186, 182, 125, 229, 114, 70, 189, 242, 155, 32, 47, 113], + "List 3": [99, 177, 57, 103, 156, 107, 226, 188, 31, 25, 49, 171, 17, 64, 254, 217], + "List 4": [35, 22, 248, 88, 251, 219, 84, 82, 167, 14, 116, 92, 105, 148, 119, 58], + "List 5": [13, 160, 81, 120, 74, 94, 173, 38, 101, 104, 91, 135, 208, 118, 136, 87], + "List 6": [75, 41, 197, 76, 249, 240, 86, 246, 231, 44, 29, 141, 241, 227, 239, 142], + "List 7": [222, 115, 129, 255, 216, 153, 0, 110, 36, 130, 6, 102, 209, 37, 143, 30], + "List 8": [51, 146, 71, 27, 181, 183, 2, 122, 77, 184, 56, 225, 108, 83, 106, 15] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 lists of length {length1} each, into one list of length {length2} by appending the second list to the first list. +Only output the final list without any additional text or thoughts! + +List 1: {input1} +List 2: {input2} +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + elif len_input1 + len_input2 - 64 <= 32: + length = 32 + else: + length = 64 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, + num_branches: int, + set1: str, + set2: str, + current: str, + method: str, + **kwargs, + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param set1: First input set. + :type set1: str + :param set2: Second input set. + :type set2: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if method.startswith("io"): + return self.intersection_prompt.format(set1=set1, set2=set2) + elif method.startswith("cot"): + return self.intersection_prompt_cot.format(set1=set1, set2=set2) + elif method.startswith("tot"): + if current is None or current == "": + return self.intersection_prompt.format(set1=set1, set2=set2) + return self.tot_improve_prompt.format( + set1=set1, set2=set2, incorrect_intersection=current + ) + elif method.startswith("got"): + if kwargs["phase"] == 0: + return self.got_split_prompt.format(input=set2) + + input_set = set2 + if "subset" in kwargs and kwargs["subset"] != "": + input_set = kwargs["subset"] + + return self.intersection_prompt.format(set1=set1, set2=input_set) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SetIntersectionParser(parser.Parser): + """ + SetIntersectionParser provides the parsing of language model reponses + specific to the set intersection example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_subsets = states[0]["subset"][:-1] + ", " + states[1]["subset"][1:] + new_state = states[0].copy() + new_state["current"] = answer + new_state["subset"] = merged_subsets + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + new_states = [] + for text in texts: + if state["method"].startswith("got") and state["phase"] == 0: + # We expect a json which contains the two lists named "List 1" and "List 2" + # cut everything until the opening bracket and everything after the closing bracket + + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 8: + logging.warning( + f"Expected 8 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = "" + new_state["subset"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 25)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(3): + operations_graph.append_operation(operations.Generate(1, 25)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(op_1) + + for _ in range(8): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + op_2 = operations.KeepBestN(1, False) + op_2.add_predecessor(op_1) + operations_graph.append_operation(op_2) + op_1 = op_2 + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(1, 1) + operations_graph.append_operation(plans) # generate the sublists + solved_subsets = [] + for i in range(1, 9): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + intersected_subset = operations.Generate(1, 5) + intersected_subset.add_predecessor(sub_list) + operations_graph.add_operation(intersected_subset) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(intersected_subset) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + solved_subsets.append(keep_best_sub_list) + + aggregate_1 = operations.Aggregate(5) + aggregate_1.add_predecessor(solved_subsets[0]) + aggregate_1.add_predecessor(solved_subsets[1]) + operations_graph.add_operation(aggregate_1) + score_aggregate_1 = operations.Score(1, False, utils.num_errors) + score_aggregate_1.add_predecessor(aggregate_1) + operations_graph.add_operation(score_aggregate_1) + keep_best_aggregate_1 = operations.KeepBestN(1, False) + keep_best_aggregate_1.add_predecessor(score_aggregate_1) + operations_graph.add_operation(keep_best_aggregate_1) + + aggregate_2 = operations.Aggregate(5) + aggregate_2.add_predecessor(solved_subsets[2]) + aggregate_2.add_predecessor(solved_subsets[3]) + operations_graph.add_operation(aggregate_2) + score_aggregate_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_2.add_predecessor(aggregate_2) + operations_graph.add_operation(score_aggregate_2) + keep_best_aggregate_2 = operations.KeepBestN(1, False) + keep_best_aggregate_2.add_predecessor(score_aggregate_2) + operations_graph.add_operation(keep_best_aggregate_2) + + aggregate_3 = operations.Aggregate(5) + aggregate_3.add_predecessor(solved_subsets[4]) + aggregate_3.add_predecessor(solved_subsets[5]) + operations_graph.add_operation(aggregate_3) + score_aggregate_3 = operations.Score(1, False, utils.num_errors) + score_aggregate_3.add_predecessor(aggregate_3) + operations_graph.add_operation(score_aggregate_3) + keep_best_aggregate_3 = operations.KeepBestN(1, False) + keep_best_aggregate_3.add_predecessor(score_aggregate_3) + operations_graph.add_operation(keep_best_aggregate_3) + + aggregate_4 = operations.Aggregate(5) + aggregate_4.add_predecessor(solved_subsets[6]) + aggregate_4.add_predecessor(solved_subsets[7]) + operations_graph.add_operation(aggregate_4) + score_aggregate_4 = operations.Score(1, False, utils.num_errors) + score_aggregate_4.add_predecessor(aggregate_4) + operations_graph.add_operation(score_aggregate_4) + keep_best_aggregate_4 = operations.KeepBestN(1, False) + keep_best_aggregate_4.add_predecessor(score_aggregate_4) + operations_graph.add_operation(keep_best_aggregate_4) + + aggregate_1_2 = operations.Aggregate(5) + aggregate_1_2.add_predecessor(keep_best_aggregate_1) + aggregate_1_2.add_predecessor(keep_best_aggregate_2) + operations_graph.add_operation(aggregate_1_2) + score_aggregate_1_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_1_2.add_predecessor(aggregate_1_2) + operations_graph.add_operation(score_aggregate_1_2) + keep_best_aggregate_1_2 = operations.KeepBestN(1, False) + keep_best_aggregate_1_2.add_predecessor(score_aggregate_1_2) + operations_graph.add_operation(keep_best_aggregate_1_2) + + aggregate_3_4 = operations.Aggregate(5) + aggregate_3_4.add_predecessor(keep_best_aggregate_3) + aggregate_3_4.add_predecessor(keep_best_aggregate_4) + operations_graph.add_operation(aggregate_3_4) + score_aggregate_3_4 = operations.Score(1, False, utils.num_errors) + score_aggregate_3_4.add_predecessor(aggregate_3_4) + operations_graph.add_operation(score_aggregate_3_4) + keep_best_aggregate_3_4 = operations.KeepBestN(1, False) + keep_best_aggregate_3_4.add_predecessor(score_aggregate_3_4) + operations_graph.add_operation(keep_best_aggregate_3_4) + + final_aggregate = operations.Aggregate(5) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation( + operations.GroundTruth(utils.test_set_intersection) + ) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "set_intersection_128.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2], row[3]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + # create a results directory for the method + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]} {data[2]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SetIntersectionPrompter(), + SetIntersectionParser(), + { + "set1": data[1], + "set2": data[2], + "result": data[3], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input(x) : a list of 128 numbers between 0 and 255 (inclusive) + Input(y) : a list of 128 numbers between 0 and 255 (inclusive) + Output(z) : a list of the intersection between x and y + Correct : z = intersection(x, y) + Input Example: + [115, 61, 35, 103, 90, 117, 86, 44, 63, 45, 40, 30, 74, 33, 31, 1, 118, 48, 38, 0, 119, 51, 64, 78, 15, 121, 89, 101, 79, 69, 120, 29, 58, 50, 116, 11, 60, 12, 39, 95, 23, 2, 109, 84, 7, 43, 99, 98, 52, 70, 75, 102, 57, 19, 94, 36, 114, 88, 71, 56, 83, 6, 96, 107] + [13, 35, 20, 96, 34, 18, 47, 127, 126, 9, 21, 16, 77, 22, 111, 122, 85, 73, 42, 105, 123, 15, 33, 59, 67, 57, 104, 8, 30, 89, 76, 12, 65, 84, 32, 40, 7, 100, 108, 50, 14, 28, 24, 53, 90, 17, 91, 81, 124, 63, 5, 46, 125, 93, 49, 66, 117, 37, 115, 113, 2, 106, 41, 72] + Output Example: + [115, 35, 90, 117, 63, 40, 30, 33, 15, 89, 50, 12, 2, 84, 7, 57, 96] + """ + + budget = 25 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/set_intersection/utils.py b/examples/set_intersection/utils.py new file mode 100644 index 0000000..a6ada18 --- /dev/null +++ b/examples/set_intersection/utils.py @@ -0,0 +1,99 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# The source code is adapted from the sorting source code written by +# Nils Blach. +# +# main author: Robert Gerstenberger + +from typing import Dict, List, Set + + +def string_to_list(string: str) -> List[int]: + """ + Helper function to convert a list encoded inside a string into a Python + list object of integer elements. + + :param string: Input string containing a list. + :type string: str + :return: List of integer elements. + :rtype: List[int] + :raise AssertionError: If input string does not contain a list. + """ + + assert string[0] == "[" and string[-1] == "]", "String is not a list." + return [int(num) for num in string[1:-1].split(",")] + + +def string_to_set(string: str) -> Set[int]: + """ + Helper function to convert a list encoded inside a string into a Python + set object of integer elements. + + :param string: Input string containing a list. + :type string: str + :return: Set of integer elements. + :rtype: Set[int] + :raise AssertionError: If input string does not contain a list. + """ + + assert string[0] == "[" and string[-1] == "]", "String is not a list." + return {int(num) for num in string[1:-1].split(",")} + + +def test_set_intersection(state: Dict) -> bool: + """ + Function to test whether the final solution matches ground truth. + + :param state: Thought state that represents the final solution. + :type state: Dict + :return: Returns whether the solution matches the ground truth. + :rtype: bool + """ + + # convert string to list + try: + correct_list = string_to_list(state["result"]) + sorted_list = sorted(string_to_list(state["current"])) + return sorted_list == correct_list + except: + return False + + +def num_errors(state: Dict) -> float: + """ + Function to locally count the number of errors that serves as a score. + + :param state: Thought state to be scored. + :type state: Dict + :return: Number of errors. + :rtype: float + """ + + try: + set1 = string_to_set(state["set1"]) + set2 = string_to_set(state["set2"]) + if "subset" in state and state["subset"] != "" and state["subset"] is not None: + set2 = string_to_set(state["subset"]) + common = sorted(list(set1 & set2)) + llm_solution = sorted(string_to_list(state["current"])) + num_errors = 0 + common_idx = 0 + llm_idx = 0 + while common_idx < len(common) and llm_idx < len(llm_solution): + if common[common_idx] == llm_solution[llm_idx]: + common_idx += 1 + llm_idx += 1 + elif common[common_idx] < llm_solution[llm_idx]: + common_idx += 1 + num_errors += 1 + elif common[common_idx] > llm_solution[llm_idx]: + llm_idx += 1 + num_errors += 1 + num_errors += len(common) - common_idx + len(llm_solution) - llm_idx + return num_errors + except: + return 1000 diff --git a/examples/sorting/README.md b/examples/sorting/README.md new file mode 100644 index 0000000..09ab55e --- /dev/null +++ b/examples/sorting/README.md @@ -0,0 +1,46 @@ +# Sorting + +The use case in this directory sorts the provided list of +numbers containing numbers from 0 to 9 (duplicates allowed). +We provide implementations of five different approaches for +32, 64 and 128 elements: +- IO +- Chain-of-Thought (CoT) +- Tree of Thought (ToT): + - ToT: wider tree, meaning more branches per level + - ToT2: tree with more levels, but fewer branches per level +- Graph of Thoughts (GoT): + - GoT: split into subarrays / sort / merge + +## Data + +We provide input files with 100 precomputed samples for each list +length: `sorting_.csv`. + +## Execution + +The files to execute the use case are called +`sorting_.py`. In the main body, one can select the +specific samples to be run (variable sample) and the approaches +(variable approaches). It is also possible to set a budget in dollars +(variable budget). +The input filename for the samples is currently hardcoded to +`sorting_.csv`, but can be updated in the function +`run`. + +The Python scripts will create the directory `result`, if it is not +already present. In the 'result' directory, another directory is created +for each run: `{name of LLM}_{list of approaches}_{day}_{start time}`. +Inside each execution specific directory two files (`config.json`, +`log.log`) and a separate directory for each selected approach are +created. `config.json` contains the configuration of the run: input data, +selected approaches, name of the LLM, and the budget. `log.log` contains +the prompts and responses of the LLM as well as additional debug data. +The approach directories contain a separate json file for every sample +and the file contains the Graph Reasoning State (GRS) for that sample. + +## Plot Data + +Change the results directory in line 171 of `plot.py` and update the +length parameter in the subsequent line and run `python3 plot.py` to +plot your data. diff --git a/examples/sorting/plot.py b/examples/sorting/plot.py new file mode 100644 index 0000000..f1dc5e6 --- /dev/null +++ b/examples/sorting/plot.py @@ -0,0 +1,186 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach +# contributions: Robert Gerstenberger + +import json +import os +import matplotlib.pyplot as plt + + +def get_complete_results(base_directory): + results_complete = {} + for folder_name in os.listdir(base_directory): + folder_path = os.path.join(base_directory, folder_name) + if os.path.isdir(folder_path): + results_complete[folder_name] = [] + for file_name in os.listdir(folder_path): + if file_name.endswith(".json"): + file_path = os.path.join(folder_path, file_name) + with open(file_path, "r") as f: + data = json.load(f) + results_complete[folder_name].append( + {"key": int(file_name.split(".")[0]), "data": data} + ) + for key in results_complete.keys(): + results_complete[key] = sorted( + results_complete[key], key=lambda x: x["key"] + ) + return results_complete + + +def get_final_scores(results_complete): + scores = {} + for method in results_complete.keys(): + scores[method] = [] + for result in results_complete[method]: + score = 100 + solved = False + cost = 1 + prompt_tokens = 0 + completion_tokens = 0 + for op in result["data"]: + if "operation" in op and op["operation"] == "ground_truth_evaluator": + try: + score = min(op["scores"]) + solved = any(op["problem_solved"]) + except: + continue + if "cost" in op: + cost = op["cost"] + prompt_tokens = op["prompt_tokens"] + completion_tokens = op["completion_tokens"] + scores[method].append( + [result["key"], score, solved, prompt_tokens, completion_tokens, cost] + ) + scores[method] = sorted(scores[method], key=lambda x: x[0]) + return scores + + +def get_plotting_data(base_directory): + results_complete = get_complete_results(base_directory) + scores = get_final_scores(results_complete) + results_plotting = { + method: { + "scores": [x[1] for x in scores[method]], + "solved": sum([1 for x in scores[method] if x[2]]), + "costs": [x[5] for x in scores[method]], + } + for method in scores.keys() + } + return results_plotting + + +def plot_results( + results, + methods_order=["io", "cot", "tot", "tot2", "got"], + model="GPT-3.5", + length=32, + y_lower=0, + cost_upper=0.0, + display_solved=True, + annotation_offset=0, + display_left_ylabel=False, + display_right_ylabel=False, +): + methods_order = [method for method in methods_order if method in results] + # Extract scores based on the order + scores_ordered = [ + [ + min(score, length) + for score in results[method]["scores"] + if score != 100 and score != 300 + ] + for method in methods_order + ] + total_costs = [sum(results[method]["costs"]) for method in methods_order] + + # Create figure and axis + fig, ax = plt.subplots(dpi=150, figsize=(2.5, 5)) + + # Create boxplots + positions = range(1, len(methods_order) + 1) + ax.boxplot(scores_ordered, positions=positions) + + fig_fontsize = 12 + + # Set the ticks and labels + method_labels = ["IO", "CoT", "ToT", "ToT2", "GoT"] + plt.yticks(fontsize=fig_fontsize) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticks(range(1, len(methods_order) + 1)) + ax.set_xticklabels(method_labels, fontsize=fig_fontsize) + + y_upper = length + + range_increase = 1 + if display_solved: + if length < 48: + range_increase = 2 + elif length < 96: + range_increase = 4 + else: + range_increase = 8 + + ax.set_ylim(y_lower, y_upper + range_increase) + ax1_yticks = range( + y_lower, y_upper + 1, 2 if length < 48 else (4 if length < 96 else 8) + ) + ax.set_yticks(ax1_yticks) + if display_left_ylabel: + ax.set_ylabel(f"#incorrectly sorted elements; the lower the better") + + ax.set_title(f"{length} elements") + + ax2 = ax.twinx() + ax2.bar(positions, total_costs, alpha=0.5, color="blue", label="Total Cost ($)") + ax2.yaxis.set_tick_params(colors="#1919ff", labelsize=fig_fontsize) + if cost_upper > 0: + ax2.set_ylim(0, cost_upper) + number_of_ticks = len(ax.get_yticks()) + tick_interval = cost_upper / (number_of_ticks) + ax2_ticks = [tick_interval * i for i in range(number_of_ticks)] + + # Set custom tick positions for ax2 + ax2.set_yticks(ax2_ticks) + + if display_right_ylabel: + ax2.set_ylabel( + "Total Cost ($); the lower the better", + color="#1919ff", + fontsize=fig_fontsize, + ) + + if display_solved: + annotation_height = y_upper + annotation_offset + count = 1 + for method in methods_order: + if method not in results: + continue + solved = results[method]["solved"] + ax.text( + count, + annotation_height, + f"{solved}", + ha="center", + va="bottom", + fontsize=fig_fontsize, + ) + count += 1 + + model = model.replace(".", "").replace("-", "").lower() + fig.savefig(f"sorting_{model}_{length}.pdf", bbox_inches="tight") + + +plot_results( + get_plotting_data("results/"), + length=32, + display_solved=True, + model="GPT-3.5", + display_left_ylabel=True, + display_right_ylabel=True, +) diff --git a/examples/sorting/sorting_032.csv b/examples/sorting/sorting_032.csv new file mode 100644 index 0000000..29274f4 --- /dev/null +++ b/examples/sorting/sorting_032.csv @@ -0,0 +1,101 @@ +ID,Unsorted,Sorted +0,"[0, 0, 5, 9, 0, 7, 9, 9, 1, 2, 6, 1, 1, 9, 0, 1, 3, 5, 2, 3, 5, 6, 0, 2, 7, 4, 6, 2, 9, 7, 5, 9]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 9, 9, 9, 9, 9, 9]" +1,"[5, 6, 2, 3, 1, 4, 9, 0, 5, 7, 0, 7, 1, 3, 2, 4, 5, 5, 6, 6, 3, 6, 4, 4, 2, 3, 7, 1, 7, 0, 2, 5]","[0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 9]" +2,"[9, 6, 7, 0, 7, 7, 4, 7, 9, 3, 6, 5, 0, 8, 1, 8, 6, 1, 5, 3, 3, 5, 3, 4, 2, 2, 4, 5, 8, 6, 0, 3]","[0, 0, 0, 1, 1, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9]" +3,"[8, 7, 1, 1, 1, 1, 3, 3, 0, 9, 4, 1, 0, 2, 5, 1, 0, 5, 6, 7, 1, 4, 5, 9, 4, 6, 2, 5, 8, 6, 2, 6]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 8, 8, 9, 9]" +4,"[5, 3, 9, 6, 3, 2, 9, 8, 2, 4, 2, 1, 8, 1, 8, 0, 0, 3, 7, 4, 4, 9, 9, 5, 4, 6, 5, 4, 3, 4, 1, 1]","[0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 7, 8, 8, 8, 9, 9, 9, 9]" +5,"[4, 6, 9, 5, 8, 6, 5, 4, 0, 4, 2, 6, 3, 6, 8, 5, 5, 2, 3, 5, 0, 9, 8, 6, 5, 5, 5, 8, 1, 5, 8, 7]","[0, 0, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 8, 8, 8, 8, 8, 9, 9]" +6,"[9, 6, 4, 1, 9, 6, 3, 1, 1, 7, 3, 9, 2, 6, 2, 9, 9, 4, 2, 7, 4, 0, 2, 3, 1, 7, 9, 8, 3, 0, 7, 3]","[0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 6, 6, 6, 7, 7, 7, 7, 8, 9, 9, 9, 9, 9, 9]" +7,"[9, 2, 4, 7, 4, 8, 8, 4, 7, 5, 8, 9, 0, 1, 0, 0, 0, 0, 7, 3, 4, 7, 7, 7, 9, 8, 6, 3, 2, 6, 6, 8]","[0, 0, 0, 0, 0, 1, 2, 2, 3, 3, 4, 4, 4, 4, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9]" +8,"[6, 6, 9, 1, 7, 3, 5, 9, 7, 9, 1, 4, 8, 2, 5, 7, 0, 8, 8, 8, 9, 8, 1, 0, 5, 6, 5, 9, 2, 1, 7, 7]","[0, 0, 1, 1, 1, 1, 2, 2, 3, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +9,"[0, 3, 5, 9, 3, 1, 0, 2, 9, 9, 8, 1, 7, 6, 8, 1, 7, 1, 7, 1, 3, 2, 4, 2, 8, 4, 6, 8, 3, 2, 7, 0]","[0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9]" +10,"[5, 2, 2, 3, 5, 5, 6, 2, 6, 9, 9, 9, 9, 7, 5, 1, 4, 5, 0, 4, 0, 3, 6, 6, 8, 1, 2, 2, 2, 3, 7, 2]","[0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9]" +11,"[4, 1, 7, 1, 8, 8, 7, 5, 7, 1, 6, 1, 6, 1, 4, 4, 0, 0, 3, 3, 5, 6, 9, 3, 4, 9, 9, 2, 3, 0, 5, 5]","[0, 0, 0, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9]" +12,"[6, 6, 5, 3, 1, 7, 2, 8, 7, 2, 0, 5, 4, 5, 0, 5, 8, 0, 4, 8, 5, 9, 0, 0, 2, 3, 4, 3, 2, 0, 4, 4]","[0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 9]" +13,"[7, 0, 9, 2, 0, 6, 5, 9, 3, 5, 6, 2, 0, 1, 4, 7, 5, 7, 0, 9, 8, 2, 1, 3, 4, 4, 8, 4, 2, 7, 9, 7]","[0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9]" +14,"[3, 4, 7, 1, 9, 8, 3, 0, 6, 4, 4, 1, 9, 9, 9, 2, 8, 4, 7, 4, 7, 9, 7, 6, 9, 7, 2, 1, 4, 5, 3, 1]","[0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9]" +15,"[8, 7, 0, 7, 8, 6, 3, 6, 6, 9, 8, 0, 3, 9, 3, 1, 7, 7, 4, 2, 5, 8, 2, 8, 7, 2, 1, 2, 6, 5, 5, 2]","[0, 0, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9]" +16,"[9, 7, 1, 8, 7, 9, 5, 0, 9, 0, 6, 4, 5, 7, 0, 9, 2, 5, 8, 4, 3, 9, 6, 4, 6, 1, 7, 2, 2, 5, 3, 0]","[0, 0, 0, 0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9]" +17,"[7, 5, 1, 8, 1, 5, 9, 6, 0, 9, 8, 2, 1, 2, 7, 4, 5, 7, 3, 7, 8, 5, 1, 0, 4, 7, 8, 1, 4, 1, 4, 2]","[0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +18,"[4, 3, 6, 3, 7, 8, 5, 6, 5, 6, 8, 3, 6, 5, 5, 6, 0, 8, 4, 9, 2, 0, 4, 3, 2, 2, 5, 0, 8, 5, 2, 6]","[0, 0, 0, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 8, 8, 8, 8, 9]" +19,"[9, 7, 8, 2, 6, 2, 9, 7, 6, 8, 1, 0, 6, 3, 5, 0, 3, 6, 2, 4, 2, 0, 6, 8, 3, 1, 9, 7, 7, 2, 6, 4]","[0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9]" +20,"[8, 7, 6, 4, 5, 6, 4, 0, 2, 1, 8, 0, 2, 0, 8, 1, 8, 4, 4, 9, 7, 6, 0, 9, 6, 6, 1, 2, 5, 4, 7, 3]","[0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +21,"[6, 6, 4, 0, 7, 9, 5, 2, 0, 4, 2, 4, 8, 4, 0, 3, 7, 0, 4, 3, 1, 3, 0, 1, 9, 6, 7, 4, 9, 1, 3, 0]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 6, 6, 6, 7, 7, 7, 8, 9, 9, 9]" +22,"[6, 8, 0, 2, 7, 7, 9, 7, 9, 0, 6, 6, 8, 9, 1, 4, 2, 9, 6, 6, 2, 0, 0, 7, 5, 2, 5, 1, 3, 5, 2, 6]","[0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 3, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9]" +23,"[8, 5, 0, 3, 6, 5, 6, 5, 4, 8, 0, 0, 7, 3, 9, 2, 9, 2, 0, 4, 1, 0, 5, 5, 8, 2, 8, 4, 4, 3, 5, 1]","[0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 7, 8, 8, 8, 8, 9, 9]" +24,"[8, 0, 5, 9, 3, 9, 2, 1, 7, 2, 1, 9, 7, 4, 8, 4, 2, 2, 9, 2, 1, 7, 3, 4, 4, 3, 3, 0, 8, 1, 8, 6]","[0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +25,"[9, 8, 8, 9, 8, 1, 9, 6, 5, 8, 0, 8, 5, 5, 5, 4, 3, 5, 8, 4, 0, 3, 3, 6, 6, 1, 4, 7, 0, 7, 2, 8]","[0, 0, 0, 1, 1, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +26,"[3, 0, 9, 6, 0, 7, 0, 2, 7, 8, 8, 9, 7, 5, 6, 0, 2, 3, 4, 9, 6, 4, 8, 9, 3, 5, 6, 2, 0, 1, 5, 3]","[0, 0, 0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" +27,"[6, 4, 9, 0, 5, 9, 0, 8, 5, 5, 9, 2, 6, 4, 8, 1, 9, 1, 3, 9, 4, 6, 6, 9, 7, 8, 8, 8, 9, 1, 1, 4]","[0, 0, 1, 1, 1, 1, 2, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +28,"[3, 9, 6, 5, 2, 1, 2, 7, 6, 9, 6, 4, 7, 2, 9, 1, 6, 6, 1, 6, 4, 7, 1, 0, 5, 7, 6, 2, 2, 2, 4, 8]","[0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 9, 9, 9]" +29,"[3, 9, 5, 1, 3, 9, 0, 8, 0, 1, 9, 5, 8, 7, 3, 1, 6, 6, 2, 2, 0, 2, 7, 2, 5, 5, 5, 1, 6, 6, 9, 0]","[0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9]" +30,"[5, 1, 2, 2, 1, 9, 1, 7, 7, 1, 4, 1, 1, 3, 7, 0, 2, 0, 7, 8, 0, 1, 9, 2, 0, 4, 5, 6, 6, 1, 8, 9]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9]" +31,"[4, 2, 6, 4, 7, 2, 5, 2, 8, 4, 9, 5, 7, 7, 3, 2, 5, 5, 0, 2, 2, 8, 2, 8, 2, 6, 5, 3, 3, 5, 8, 4]","[0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9]" +32,"[6, 6, 2, 2, 9, 8, 7, 2, 5, 3, 5, 7, 1, 3, 4, 0, 3, 6, 9, 1, 6, 1, 0, 4, 1, 2, 6, 7, 7, 6, 9, 1]","[0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 9, 9, 9]" +33,"[6, 3, 9, 8, 1, 4, 2, 1, 0, 0, 1, 3, 7, 9, 8, 1, 3, 1, 5, 3, 9, 7, 8, 9, 3, 9, 4, 0, 2, 7, 3, 9]","[0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 5, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +34,"[2, 6, 4, 5, 8, 1, 9, 3, 6, 3, 9, 7, 3, 3, 8, 4, 6, 7, 2, 7, 3, 2, 3, 3, 5, 5, 6, 4, 1, 6, 6, 2]","[1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9]" +35,"[6, 6, 0, 8, 0, 6, 8, 4, 9, 8, 3, 8, 8, 1, 7, 1, 5, 0, 9, 1, 9, 9, 8, 1, 5, 3, 2, 2, 7, 0, 5, 6]","[0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +36,"[8, 9, 1, 5, 7, 4, 2, 6, 2, 8, 8, 9, 3, 0, 6, 7, 7, 8, 6, 5, 8, 3, 3, 0, 1, 6, 4, 0, 8, 8, 1, 7]","[0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9]" +37,"[9, 5, 1, 1, 3, 1, 0, 4, 4, 6, 1, 9, 4, 8, 0, 9, 4, 0, 5, 1, 9, 5, 6, 7, 9, 1, 2, 7, 1, 3, 9, 6]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9, 9, 9]" +38,"[4, 1, 1, 8, 1, 7, 9, 1, 5, 5, 1, 9, 0, 8, 7, 7, 9, 0, 7, 0, 4, 9, 8, 5, 9, 6, 6, 2, 6, 5, 1, 1]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9]" +39,"[6, 1, 6, 5, 7, 1, 6, 3, 8, 7, 6, 1, 3, 8, 6, 9, 3, 1, 1, 9, 4, 8, 3, 1, 9, 4, 5, 9, 5, 4, 1, 8]","[1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +40,"[2, 1, 6, 3, 9, 3, 8, 3, 2, 3, 9, 9, 5, 4, 3, 2, 1, 9, 3, 4, 3, 3, 5, 4, 4, 4, 9, 7, 8, 3, 0, 8]","[0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 6, 7, 8, 8, 8, 9, 9, 9, 9, 9]" +41,"[6, 5, 6, 4, 3, 7, 3, 0, 6, 9, 1, 0, 1, 7, 0, 1, 8, 6, 5, 9, 5, 9, 4, 2, 5, 3, 8, 8, 8, 0, 9, 7]","[0, 0, 0, 0, 1, 1, 1, 2, 3, 3, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +42,"[9, 2, 6, 8, 4, 0, 5, 0, 8, 6, 1, 6, 6, 6, 7, 6, 5, 2, 3, 4, 3, 9, 2, 9, 3, 2, 0, 0, 1, 4, 6, 6]","[0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 8, 8, 9, 9, 9]" +43,"[7, 7, 7, 8, 7, 9, 4, 3, 5, 5, 1, 7, 7, 4, 0, 5, 6, 2, 7, 3, 2, 2, 3, 2, 0, 8, 6, 7, 8, 4, 6, 4]","[0, 0, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9]" +44,"[0, 1, 6, 5, 4, 6, 9, 3, 7, 0, 0, 1, 1, 6, 7, 1, 9, 9, 4, 5, 9, 1, 2, 2, 7, 5, 6, 1, 9, 1, 2, 4]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 9, 9, 9, 9, 9]" +45,"[1, 8, 6, 5, 0, 6, 2, 4, 2, 2, 0, 8, 7, 6, 1, 3, 1, 9, 7, 5, 9, 8, 1, 8, 2, 7, 7, 3, 7, 7, 8, 7]","[0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9]" +46,"[4, 7, 0, 6, 4, 5, 0, 3, 0, 3, 4, 6, 5, 2, 6, 5, 5, 9, 7, 1, 0, 8, 0, 4, 9, 1, 3, 5, 1, 7, 2, 0]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 9, 9]" +47,"[9, 6, 0, 1, 8, 4, 9, 6, 3, 6, 0, 7, 0, 8, 9, 3, 6, 6, 9, 3, 2, 2, 2, 9, 4, 9, 3, 8, 1, 9, 6, 1]","[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 6, 6, 6, 6, 6, 6, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +48,"[7, 3, 4, 8, 4, 2, 8, 3, 1, 0, 7, 3, 1, 9, 1, 8, 0, 1, 9, 8, 3, 2, 4, 1, 7, 3, 1, 3, 2, 0, 4, 0]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +49,"[2, 3, 7, 6, 5, 7, 5, 2, 8, 6, 8, 3, 7, 2, 3, 8, 6, 5, 4, 5, 3, 6, 8, 3, 0, 9, 2, 1, 7, 5, 5, 8]","[0, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9]" +50,"[4, 0, 9, 1, 1, 6, 5, 0, 6, 4, 8, 1, 6, 9, 6, 1, 8, 1, 3, 1, 1, 5, 8, 3, 2, 2, 9, 8, 4, 6, 6, 9]","[0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 8, 8, 8, 8, 9, 9, 9, 9]" +51,"[1, 9, 8, 5, 8, 5, 2, 4, 1, 4, 8, 0, 7, 9, 0, 5, 0, 5, 6, 4, 6, 2, 2, 3, 4, 2, 8, 8, 6, 7, 8, 9]","[0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +52,"[3, 5, 2, 8, 8, 5, 4, 6, 0, 7, 2, 0, 2, 5, 2, 6, 0, 1, 8, 0, 9, 2, 8, 2, 8, 7, 3, 5, 6, 8, 0, 8]","[0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 3, 3, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9]" +53,"[2, 4, 1, 8, 9, 8, 2, 4, 0, 7, 9, 6, 1, 8, 1, 5, 6, 5, 8, 8, 7, 0, 4, 7, 2, 1, 9, 4, 4, 5, 5, 6]","[0, 0, 1, 1, 1, 1, 2, 2, 2, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9]" +54,"[4, 9, 4, 3, 2, 0, 9, 3, 9, 7, 7, 5, 9, 4, 3, 1, 6, 2, 5, 1, 9, 7, 2, 1, 9, 4, 6, 0, 7, 4, 9, 4]","[0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 9, 9, 9, 9, 9, 9, 9]" +55,"[2, 3, 6, 7, 2, 2, 1, 6, 4, 0, 0, 9, 1, 6, 9, 1, 1, 2, 5, 1, 8, 1, 7, 1, 2, 1, 6, 0, 1, 6, 4, 1]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 4, 4, 5, 6, 6, 6, 6, 6, 7, 7, 8, 9, 9]" +56,"[4, 7, 7, 5, 3, 5, 9, 9, 3, 1, 4, 7, 8, 3, 4, 7, 7, 3, 3, 7, 0, 0, 2, 9, 6, 5, 3, 7, 3, 0, 1, 1]","[0, 0, 0, 1, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 7, 7, 7, 7, 7, 7, 7, 8, 9, 9, 9]" +57,"[0, 9, 8, 9, 1, 3, 8, 0, 5, 7, 8, 5, 3, 4, 2, 5, 7, 8, 9, 6, 5, 1, 4, 5, 1, 3, 1, 8, 9, 2, 6, 9]","[0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +58,"[6, 1, 5, 1, 3, 5, 4, 0, 1, 0, 6, 8, 9, 8, 1, 7, 6, 8, 7, 4, 6, 2, 9, 0, 8, 0, 7, 2, 6, 6, 7, 7]","[0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +59,"[2, 4, 0, 5, 4, 0, 6, 6, 1, 7, 8, 1, 7, 3, 4, 0, 9, 2, 8, 8, 8, 1, 1, 1, 7, 3, 1, 6, 0, 9, 1, 3]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +60,"[3, 8, 0, 9, 5, 6, 6, 8, 5, 2, 9, 4, 8, 2, 3, 5, 7, 6, 1, 7, 1, 4, 3, 9, 4, 5, 9, 5, 1, 9, 9, 9]","[0, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +61,"[8, 8, 0, 2, 4, 3, 1, 9, 2, 9, 1, 1, 3, 7, 9, 9, 9, 1, 5, 2, 1, 3, 1, 5, 7, 7, 8, 2, 8, 8, 8, 2]","[0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 5, 5, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +62,"[5, 0, 7, 6, 2, 6, 6, 7, 0, 5, 6, 3, 9, 5, 4, 9, 0, 0, 4, 9, 0, 3, 1, 4, 7, 5, 9, 8, 6, 0, 7, 3]","[0, 0, 0, 0, 0, 0, 1, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 9, 9, 9, 9]" +63,"[0, 0, 4, 5, 1, 1, 1, 0, 2, 2, 5, 2, 5, 0, 0, 2, 1, 4, 6, 2, 0, 8, 8, 0, 5, 4, 3, 6, 8, 1, 0, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 8, 8, 8]" +64,"[3, 7, 4, 1, 6, 1, 9, 8, 1, 9, 7, 8, 8, 4, 6, 4, 3, 0, 2, 0, 0, 7, 0, 8, 1, 5, 3, 5, 2, 2, 0, 6]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +65,"[3, 3, 7, 3, 2, 5, 7, 1, 4, 7, 0, 7, 1, 2, 5, 9, 6, 9, 5, 5, 0, 3, 2, 4, 1, 2, 0, 5, 5, 0, 1, 8]","[0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5, 6, 7, 7, 7, 7, 8, 9, 9]" +66,"[9, 1, 9, 1, 3, 4, 4, 5, 0, 1, 9, 8, 0, 7, 1, 8, 7, 7, 6, 0, 0, 6, 1, 4, 4, 5, 8, 5, 4, 4, 4, 8]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9]" +67,"[0, 7, 5, 5, 0, 3, 0, 7, 3, 9, 8, 3, 1, 2, 1, 5, 3, 6, 8, 7, 2, 9, 9, 6, 9, 2, 0, 1, 7, 9, 2, 0]","[0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 5, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9]" +68,"[1, 1, 6, 1, 1, 6, 0, 5, 0, 0, 8, 2, 5, 9, 6, 7, 1, 3, 9, 0, 9, 7, 0, 0, 3, 2, 2, 4, 0, 3, 6, 5]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9]" +69,"[3, 4, 2, 5, 5, 8, 4, 8, 5, 5, 8, 3, 4, 9, 9, 8, 4, 9, 9, 9, 9, 3, 9, 0, 5, 8, 3, 7, 8, 6, 1, 1]","[0, 1, 1, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +70,"[6, 4, 5, 0, 8, 3, 9, 7, 0, 2, 0, 2, 8, 5, 8, 2, 6, 2, 1, 9, 4, 5, 3, 3, 4, 0, 5, 7, 7, 2, 4, 0]","[0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9]" +71,"[0, 4, 8, 5, 2, 4, 6, 7, 2, 6, 2, 8, 3, 6, 6, 2, 0, 9, 7, 7, 5, 1, 0, 8, 6, 0, 7, 7, 0, 3, 2, 6]","[0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 9]" +72,"[5, 1, 7, 2, 4, 5, 0, 2, 7, 2, 2, 9, 7, 0, 5, 8, 5, 2, 2, 1, 2, 6, 9, 7, 8, 8, 4, 5, 1, 8, 2, 8]","[0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 5, 5, 5, 5, 5, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9]" +73,"[8, 9, 8, 8, 3, 5, 5, 3, 6, 1, 3, 2, 6, 3, 1, 3, 3, 5, 1, 7, 6, 0, 9, 6, 8, 1, 1, 0, 9, 5, 5, 6]","[0, 0, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 8, 8, 8, 8, 9, 9, 9]" +74,"[4, 3, 3, 0, 4, 7, 9, 4, 3, 5, 3, 5, 4, 2, 0, 2, 1, 5, 8, 8, 4, 4, 3, 4, 3, 0, 1, 6, 7, 3, 2, 8]","[0, 0, 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 7, 7, 8, 8, 8, 9]" +75,"[7, 1, 9, 4, 7, 4, 0, 5, 0, 7, 2, 0, 8, 5, 8, 4, 2, 2, 5, 9, 2, 3, 8, 2, 7, 4, 6, 6, 8, 6, 3, 3]","[0, 0, 0, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +76,"[7, 3, 1, 7, 2, 0, 4, 5, 6, 5, 8, 3, 2, 8, 8, 2, 2, 5, 3, 9, 1, 3, 4, 9, 2, 7, 7, 3, 6, 8, 3, 7]","[0, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +77,"[9, 4, 1, 3, 1, 3, 4, 8, 8, 8, 7, 2, 7, 9, 5, 0, 2, 6, 4, 8, 1, 3, 5, 4, 1, 8, 7, 4, 7, 7, 0, 8]","[0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9]" +78,"[3, 5, 5, 9, 6, 6, 6, 2, 9, 0, 3, 0, 2, 1, 2, 6, 5, 8, 4, 8, 5, 9, 9, 5, 7, 0, 6, 8, 9, 3, 3, 5]","[0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 8, 8, 8, 9, 9, 9, 9, 9]" +79,"[9, 5, 9, 0, 4, 5, 6, 3, 0, 1, 4, 3, 1, 5, 9, 9, 3, 2, 9, 5, 5, 2, 9, 9, 9, 7, 8, 9, 8, 0, 2, 8]","[0, 0, 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 6, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +80,"[9, 3, 1, 0, 5, 7, 6, 1, 8, 9, 5, 9, 1, 9, 9, 9, 9, 2, 2, 4, 3, 0, 6, 1, 9, 2, 1, 3, 5, 2, 5, 1]","[0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 5, 5, 5, 5, 6, 6, 7, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +81,"[8, 1, 1, 3, 0, 2, 8, 0, 9, 5, 3, 7, 7, 6, 8, 5, 2, 9, 3, 2, 6, 4, 2, 1, 7, 9, 4, 0, 1, 9, 3, 0]","[0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" +82,"[0, 1, 4, 1, 5, 7, 4, 9, 3, 7, 5, 3, 6, 5, 1, 4, 1, 2, 2, 0, 0, 7, 5, 3, 5, 4, 6, 2, 1, 4, 1, 3]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 9]" +83,"[2, 2, 4, 0, 5, 7, 4, 5, 9, 5, 7, 5, 1, 5, 9, 5, 4, 1, 7, 9, 2, 4, 4, 1, 4, 3, 7, 9, 0, 6, 1, 1]","[0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 7, 7, 7, 7, 9, 9, 9, 9]" +84,"[2, 5, 4, 9, 4, 5, 3, 8, 1, 5, 0, 4, 5, 5, 7, 4, 6, 6, 7, 7, 1, 9, 6, 5, 8, 6, 3, 6, 8, 9, 0, 7]","[0, 0, 1, 1, 2, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9]" +85,"[0, 4, 3, 0, 6, 1, 1, 9, 2, 1, 3, 6, 5, 1, 2, 3, 0, 1, 6, 7, 8, 4, 1, 0, 2, 1, 2, 3, 4, 5, 6, 1]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 6, 6, 7, 8, 9]" +86,"[4, 6, 0, 6, 5, 1, 7, 7, 0, 8, 0, 4, 6, 0, 8, 5, 0, 1, 8, 8, 0, 1, 0, 9, 4, 5, 5, 3, 0, 1, 9, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9]" +87,"[6, 0, 1, 6, 6, 0, 7, 9, 2, 5, 8, 4, 5, 8, 1, 4, 8, 0, 6, 4, 0, 7, 1, 2, 3, 9, 4, 8, 7, 3, 8, 2]","[0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9]" +88,"[5, 1, 5, 3, 7, 6, 5, 0, 8, 6, 6, 4, 6, 7, 2, 0, 1, 9, 5, 2, 4, 1, 3, 0, 4, 6, 7, 8, 0, 7, 2, 8]","[0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9]" +89,"[5, 2, 2, 3, 8, 5, 0, 0, 6, 7, 3, 3, 7, 7, 6, 6, 8, 2, 0, 1, 6, 3, 3, 9, 9, 9, 1, 9, 5, 6, 4, 2]","[0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9]" +90,"[3, 0, 3, 3, 0, 9, 8, 7, 3, 9, 7, 0, 4, 0, 9, 4, 3, 7, 5, 1, 9, 5, 6, 6, 6, 3, 6, 3, 2, 8, 6, 8]","[0, 0, 0, 0, 1, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" +91,"[2, 4, 6, 0, 9, 4, 3, 5, 7, 4, 8, 8, 8, 1, 8, 5, 8, 0, 2, 6, 2, 9, 4, 0, 0, 8, 5, 0, 5, 1, 2, 8]","[0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9]" +92,"[6, 5, 3, 4, 8, 2, 5, 9, 1, 3, 9, 6, 7, 4, 4, 7, 9, 7, 2, 2, 2, 8, 5, 8, 6, 3, 8, 5, 0, 8, 9, 1]","[0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +93,"[3, 8, 3, 9, 8, 4, 0, 7, 3, 9, 9, 2, 6, 0, 3, 5, 1, 3, 9, 3, 2, 0, 8, 8, 7, 3, 6, 1, 5, 4, 7, 7]","[0, 0, 0, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +94,"[2, 7, 8, 3, 3, 8, 7, 9, 2, 8, 0, 6, 9, 5, 8, 4, 2, 8, 3, 6, 3, 4, 1, 4, 8, 5, 5, 6, 0, 0, 7, 6]","[0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9]" +95,"[8, 1, 9, 6, 1, 7, 1, 2, 6, 9, 0, 6, 0, 6, 8, 2, 3, 5, 8, 7, 9, 0, 9, 1, 7, 5, 4, 3, 7, 1, 8, 8]","[0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +96,"[3, 7, 6, 2, 0, 4, 8, 7, 1, 1, 1, 1, 8, 2, 4, 1, 4, 7, 4, 0, 8, 4, 9, 5, 0, 0, 6, 8, 3, 2, 1, 2]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9]" +97,"[3, 1, 2, 8, 6, 7, 0, 2, 3, 1, 6, 7, 9, 3, 1, 9, 7, 4, 5, 5, 0, 7, 8, 3, 3, 1, 4, 4, 2, 1, 1, 5]","[0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9]" +98,"[5, 7, 1, 7, 2, 4, 1, 8, 4, 6, 9, 2, 0, 2, 3, 9, 3, 9, 7, 8, 3, 1, 1, 3, 9, 8, 5, 0, 2, 7, 0, 2]","[0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" +99,"[9, 4, 4, 7, 2, 3, 9, 8, 8, 3, 9, 8, 7, 1, 7, 9, 5, 1, 6, 1, 6, 2, 0, 4, 7, 6, 4, 6, 3, 2, 6, 2]","[0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" \ No newline at end of file diff --git a/examples/sorting/sorting_032.py b/examples/sorting/sorting_032.py new file mode 100644 index 0000000..fe960e7 --- /dev/null +++ b/examples/sorting/sorting_032.py @@ -0,0 +1,726 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser +from . import utils + + +class SortingPrompter(prompter.Prompter): + """ + SortingPrompter provides the generation of prompts specific to the sorting + example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + sort_prompt = """ Sort the following list of numbers in ascending order. Output only the sorted list of numbers, no additional text. + + +Input: [5, 1, 0, 1, 2, 0, 4, 8, 1, 9, 5, 1, 3, 3, 9, 7] +Output: [0, 0, 1, 1, 1, 1, 2, 3, 3, 4, 5, 5, 7, 8, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +Output: [0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + sort_prompt_cot = """ Sort the following list of numbers in ascending order. You can generate any intermediate lists, but the final output should be the sorted list of numbers, prefixed with "Output: ". + + +To sort the list of numbers follow these steps: +1. Split the list of numbers into two to four unsorted sublists, each containing an equal number of elements from the original list (make sure they don't overlap). +2. Sort each of the unsorted sublists. +3. Merge the sorted sublists into a single sorted list using the merging algorithm from merge sort. + + + +Input: [4, 5, 3, 3, 7, 3, 0, 5, 0, 2, 8, 0, 2, 1, 6, 9] +Unsorted Subarrays: +[4, 5, 3, 3, 7, 3, 0, 5] +[0, 2, 8, 0, 2, 1, 6, 9] +Sorted Subarrays: +[0, 3, 3, 3, 4, 5, 5, 7] +[0, 0, 1, 2, 2, 6, 8, 9] +Output: [0, 0, 0, 1, 2, 2, 3, 3, 3, 4, 5, 5, 6, 7, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Unsorted Subarrays: +[6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9] +[2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Sorted Subarrays: +[1, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9] +[0, 1, 2, 2, 3, 4, 5, 5, 6, 6, 6, 6, 7, 8, 9, 9] +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1, 9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3, 3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Unsorted Subarrays: +[3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +[4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +[9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3] +[3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Sorted Subarrays: +[0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] +[0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 9, 9] +[0, 1, 1, 1, 1, 3, 3, 4, 4, 6, 6, 6, 7, 8, 8, 9] +[0, 3, 3, 3, 3, 4, 5, 6, 6, 6, 7, 7, 9, 9, 9, 9] +Output: [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + tot_improve_prompt = """ The following two lists represent an unsorted list of numbers and a sorted variant of that list. The sorted variant is not correct. Fix the sorted variant so that it is correct. +Make sure that the output list is sorted in ascending order, has the same number of elements as the input list ({length}), and contains the same elements as the input list. + + +To fix the incorrectly sorted list follow these steps: +1. For each number from 0 to 9, compare the frequency of that number in the incorrectly sorted list to the frequency of that number in the input list. +2. Iterate through the incorrectly sorted list and add or remove numbers as needed to make the frequency of each number in the incorrectly sorted list match the frequency of that number in the input list. + + + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +Incorrectly Sorted: [0, 0, 0, 0, 0, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 7, 7, 8, 8, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains four extra 0s, two extra 4s and three extra 9s and is missing two 2s. +Output: [0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Incorrectly Sorted: [0, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains two extra 4s and is missing two 6s and one 9. +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Incorrectly Sorted: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains one extra 8 and is missing two 2s, one 3, three 4s, two 5s, one 6, six 7s and one 9. +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input} +Incorrectly Sorted: {incorrectly_sorted} +""" + + got_split_prompt = """ Split the following list of 32 numbers into 2 lists of 16 numbers each, the first list should contain the first 16 numbers and the second list the second 16 numbers. +Only output the final 4 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [3, 4, 3, 5, 7, 8, 1, ...], + "List 2": [2, 9, 2, 4, 7, 1, 5, ...] +}} + + +Input: [9, 6, 7, 7, 2, 0, 2, 2, 3, 5, 0, 9, 2, 2, 4, 4, 5, 2, 5, 1, 2, 8, 3, 8, 3, 9, 6, 0, 4, 2, 2, 3] +Output: +{{ + "List 1": [9, 6, 7, 7, 2, 0, 2, 2, 3, 5, 0, 9, 2, 2, 4, 4], + "List 2": [5, 2, 5, 1, 2, 8, 3, 8, 3, 9, 6, 0, 4, 2, 2, 3] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 sorted lists of length {length1} each, into one sorted list of length {length2} using a merge sort style approach. +Only output the final merged list without any additional text or thoughts!: + + +To merge the two lists in a merge-sort style approach, foloow these steps: +1. Compare the first element of both lists. +2. Append the smaller element to the merged list and move to the next element in the list from which the smaller element came. +3. Repeat steps 1 and 2 until one of the lists is empty. +4. Append the remaining elements of the non-empty list to the merged list. + + +Merge the following two lists into one sorted list: +1: {input1} +2: {input2} + +Merged list: +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + else: + length = 32 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, num_branches: int, original: str, current: str, method: str, **kwargs + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param original: Input list of numbers. + :type original: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + if current is None or current == "": + input = original + else: + input = current + if method.startswith("io"): + return self.sort_prompt.format(input=input) + elif method.startswith("cot"): + return self.sort_prompt_cot.format(input=input) + elif method.startswith("tot"): + if current is None or current == "": + return self.sort_prompt.format(input=input) + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + elif method.startswith("got"): + if current is None or current == "": + return self.got_split_prompt.format(input=input) + # if current is just a sublist of the original input, return the split prompt + if kwargs["phase"] == 1: + return self.sort_prompt.format(input=current) + + if ( + "unsorted_sublist" in kwargs + and kwargs["unsorted_sublist"] != "" + and len(kwargs["unsorted_sublist"]) < len(original) - 5 + ): + original = kwargs["unsorted_sublist"] + + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SortingParser(parser.Parser): + """ + SortingParser provides the parsing of language model reponses specific to + the sorting example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_unsorted_sublists = ( + states[0]["unsorted_sublist"][:-1] + + ", " + + states[1]["unsorted_sublist"][1:] + ) + new_state = states[0].copy() + new_state["current"] = answer + new_state["unsorted_sublist"] = merged_unsorted_sublists + new_states.append(new_state) + return new_states + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + new_states = [] + for text in texts: + if state["method"] == "got" and state["current"] == "": + # We expect a json which contains the four lists named "List 1" to "List 4" + # cut everything until the opening bracket and everything after the closing bracket + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 2: + logging.warning( + f"Expected 2 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = str(value) + new_state["unsorted_sublist"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(1): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(2): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(2, 1) + operations_graph.append_operation(plans) # generate the sublists + for i in range(1, 3): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + sort_sub_list = operations.Generate(1, 5) + sort_sub_list.add_predecessor(sub_list) + operations_graph.add_operation(sort_sub_list) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(sort_sub_list) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + final_aggregate = operations.Aggregate(10) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation(operations.Generate(1, 10)) + score_aggr_3 = operations.Score(1, False, utils.num_errors) + score_aggr_3.add_predecessor(keep_best_aggregate_final) + operations_graph.append_operation(score_aggr_3) + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "sorting_032.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SortingPrompter(), + SortingParser(), + { + "original": data[1], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input (x) : an unordered list of 32 numbers between 0 and 9 (inclusive) + Output (y) : a sorted list of 32 numbers between 0 and 9 (inclusive) + Correct : y == sorted(x) + Input Example: + [0, 1, 9, 4, 2, 2, 0, 5, 1...] + Output Example: + [0, 0, 0, 0, 1, 1, 1, 1, 2...] + """ + budget = 30 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/sorting/sorting_064.csv b/examples/sorting/sorting_064.csv new file mode 100644 index 0000000..9bd0e84 --- /dev/null +++ b/examples/sorting/sorting_064.csv @@ -0,0 +1,101 @@ +ID,Unsorted,Sorted +0,"[6, 3, 6, 5, 1, 2, 4, 3, 8, 0, 7, 8, 6, 4, 9, 5, 2, 4, 8, 4, 4, 4, 5, 6, 8, 4, 7, 7, 8, 9, 4, 9, 5, 4, 8, 4, 0, 5, 6, 9, 1, 2, 3, 6, 2, 0, 8, 1, 0, 7, 1, 2, 0, 7, 6, 9, 9, 9, 5, 6, 8, 3, 9, 0]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +1,"[9, 1, 5, 7, 8, 5, 2, 5, 6, 9, 0, 3, 6, 9, 9, 5, 6, 5, 8, 6, 0, 1, 1, 8, 5, 3, 7, 9, 0, 2, 7, 2, 8, 1, 2, 5, 9, 3, 5, 0, 0, 3, 7, 5, 1, 1, 1, 8, 1, 2, 0, 8, 0, 7, 8, 1, 8, 2, 1, 0, 4, 7, 5, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +2,"[6, 7, 0, 6, 8, 3, 0, 6, 1, 7, 8, 5, 5, 6, 1, 9, 6, 7, 2, 7, 2, 3, 3, 2, 0, 8, 4, 7, 1, 7, 2, 1, 4, 8, 6, 6, 6, 8, 9, 6, 0, 2, 9, 4, 8, 3, 3, 7, 9, 7, 6, 0, 3, 5, 9, 9, 2, 3, 2, 2, 3, 5, 6, 8]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +3,"[3, 4, 6, 1, 4, 2, 2, 2, 3, 0, 4, 3, 9, 9, 3, 8, 7, 2, 0, 6, 9, 0, 7, 5, 0, 6, 4, 7, 3, 5, 0, 3, 4, 0, 7, 1, 5, 1, 1, 2, 3, 9, 5, 4, 1, 6, 2, 0, 5, 7, 7, 0, 1, 6, 0, 5, 5, 7, 1, 4, 5, 7, 0, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9]" +4,"[3, 5, 5, 8, 7, 3, 0, 2, 0, 1, 6, 3, 5, 6, 8, 2, 3, 7, 5, 1, 3, 6, 5, 8, 6, 7, 6, 5, 9, 8, 3, 9, 8, 1, 6, 1, 3, 3, 6, 9, 3, 8, 2, 6, 4, 2, 4, 4, 4, 1, 6, 2, 0, 0, 8, 0, 6, 4, 7, 9, 0, 5, 1, 4]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +5,"[9, 2, 1, 2, 4, 9, 5, 4, 3, 5, 3, 9, 9, 9, 5, 1, 2, 4, 8, 7, 5, 8, 6, 8, 1, 7, 6, 4, 7, 7, 1, 1, 4, 9, 3, 2, 4, 5, 2, 6, 0, 5, 6, 8, 0, 3, 1, 4, 3, 9, 0, 8, 7, 3, 1, 0, 9, 3, 0, 3, 8, 6, 1, 4]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +6,"[5, 1, 6, 6, 3, 2, 9, 3, 5, 3, 9, 5, 1, 1, 2, 0, 2, 4, 9, 8, 9, 6, 0, 9, 2, 9, 8, 9, 5, 1, 1, 5, 5, 9, 9, 5, 7, 8, 3, 2, 0, 5, 4, 1, 7, 3, 8, 9, 2, 2, 3, 1, 8, 8, 4, 7, 8, 8, 3, 1, 5, 9, 0, 9]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +7,"[7, 0, 5, 9, 3, 1, 9, 1, 5, 8, 9, 4, 6, 5, 3, 4, 3, 3, 6, 9, 9, 0, 5, 2, 5, 8, 2, 4, 4, 6, 8, 1, 6, 5, 5, 4, 9, 0, 5, 6, 4, 7, 4, 5, 7, 5, 2, 2, 5, 9, 3, 5, 9, 4, 6, 8, 4, 1, 1, 1, 6, 0, 8, 5]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +8,"[7, 4, 9, 1, 0, 7, 1, 4, 3, 8, 3, 0, 8, 4, 7, 7, 0, 7, 3, 9, 7, 9, 6, 4, 4, 1, 5, 0, 5, 5, 8, 9, 9, 6, 9, 9, 9, 5, 6, 6, 3, 4, 0, 7, 7, 5, 4, 0, 6, 7, 3, 3, 6, 9, 4, 2, 5, 8, 2, 5, 1, 5, 6, 8]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +9,"[2, 4, 9, 1, 8, 0, 6, 4, 5, 5, 3, 4, 8, 2, 1, 2, 2, 7, 4, 8, 0, 0, 8, 3, 9, 3, 2, 5, 5, 1, 6, 3, 5, 0, 5, 5, 4, 2, 9, 7, 5, 1, 5, 6, 2, 0, 5, 4, 9, 1, 9, 4, 3, 3, 1, 2, 6, 9, 6, 0, 9, 0, 4, 6]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +10,"[3, 4, 8, 8, 7, 9, 2, 3, 7, 2, 7, 2, 9, 0, 6, 3, 3, 6, 1, 1, 2, 1, 3, 4, 4, 6, 7, 6, 7, 5, 5, 1, 1, 7, 3, 5, 1, 0, 0, 6, 5, 8, 2, 6, 9, 9, 1, 3, 4, 3, 9, 7, 2, 5, 8, 4, 7, 2, 0, 6, 0, 4, 3, 3]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +11,"[1, 5, 0, 4, 9, 1, 0, 1, 7, 9, 4, 8, 1, 0, 0, 8, 2, 2, 6, 0, 7, 7, 2, 5, 2, 7, 5, 0, 5, 9, 0, 5, 6, 3, 5, 2, 6, 1, 4, 2, 0, 3, 7, 3, 7, 8, 6, 4, 7, 4, 4, 0, 3, 1, 2, 0, 9, 2, 0, 8, 8, 0, 3, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +12,"[2, 6, 5, 0, 0, 6, 7, 8, 5, 6, 1, 8, 1, 6, 1, 3, 8, 3, 4, 3, 5, 6, 6, 2, 6, 4, 5, 8, 2, 3, 4, 4, 2, 5, 8, 4, 9, 6, 3, 8, 4, 4, 9, 5, 6, 6, 6, 0, 8, 5, 5, 0, 8, 4, 4, 5, 6, 8, 8, 4, 8, 7, 7, 5]","[0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9]" +13,"[5, 8, 0, 2, 3, 1, 7, 3, 4, 8, 8, 8, 7, 0, 0, 9, 4, 1, 7, 3, 3, 2, 4, 8, 8, 3, 0, 5, 1, 8, 8, 2, 0, 6, 8, 4, 9, 3, 7, 9, 8, 4, 8, 4, 6, 4, 0, 2, 7, 5, 5, 6, 8, 9, 3, 6, 6, 6, 9, 6, 0, 8, 5, 8]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +14,"[7, 0, 2, 5, 2, 9, 7, 1, 4, 9, 1, 6, 5, 4, 3, 1, 7, 2, 3, 5, 6, 4, 4, 6, 4, 8, 8, 1, 2, 7, 2, 9, 0, 3, 4, 9, 7, 2, 1, 9, 0, 0, 7, 8, 8, 6, 9, 5, 9, 5, 7, 5, 0, 2, 6, 0, 2, 2, 2, 9, 9, 4, 0, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +15,"[0, 8, 0, 4, 5, 9, 8, 6, 2, 8, 9, 5, 0, 1, 4, 2, 8, 5, 0, 2, 8, 2, 0, 2, 7, 6, 7, 0, 5, 2, 2, 9, 9, 7, 1, 9, 3, 6, 7, 8, 0, 5, 1, 6, 9, 9, 2, 8, 2, 1, 0, 8, 2, 8, 4, 5, 7, 1, 0, 7, 1, 6, 5, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +16,"[3, 5, 0, 6, 4, 2, 0, 3, 9, 3, 3, 6, 7, 1, 4, 8, 6, 8, 1, 3, 6, 3, 5, 5, 6, 4, 6, 1, 9, 8, 0, 9, 8, 1, 9, 9, 0, 4, 5, 6, 2, 6, 4, 0, 9, 3, 1, 7, 8, 9, 8, 8, 2, 5, 0, 7, 1, 2, 7, 0, 4, 0, 3, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +17,"[0, 5, 7, 5, 1, 0, 5, 5, 6, 5, 4, 4, 9, 9, 3, 3, 4, 9, 4, 6, 7, 6, 8, 9, 8, 0, 4, 6, 6, 5, 3, 7, 2, 2, 5, 4, 9, 2, 5, 1, 7, 4, 7, 1, 9, 4, 2, 0, 1, 2, 7, 3, 7, 5, 9, 9, 9, 0, 6, 3, 4, 3, 3, 2]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +18,"[1, 4, 0, 5, 8, 1, 4, 0, 1, 1, 1, 5, 5, 5, 9, 0, 4, 5, 1, 8, 0, 4, 7, 0, 3, 5, 7, 7, 9, 6, 1, 3, 4, 6, 3, 5, 6, 6, 1, 1, 3, 5, 2, 0, 3, 4, 2, 0, 3, 1, 3, 9, 5, 2, 6, 4, 8, 9, 7, 0, 1, 6, 6, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +19,"[1, 4, 5, 6, 7, 7, 1, 5, 5, 5, 5, 3, 0, 8, 3, 8, 1, 5, 1, 1, 6, 5, 3, 9, 0, 1, 5, 6, 1, 2, 4, 6, 4, 3, 1, 6, 9, 4, 6, 8, 4, 7, 9, 0, 9, 1, 2, 3, 8, 0, 3, 3, 2, 0, 0, 8, 9, 7, 8, 2, 0, 2, 2, 5]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +20,"[5, 5, 1, 5, 4, 7, 8, 4, 1, 7, 2, 5, 9, 7, 2, 6, 3, 5, 2, 4, 2, 1, 3, 8, 9, 6, 3, 9, 5, 4, 8, 1, 6, 6, 7, 3, 5, 4, 9, 6, 3, 4, 6, 7, 4, 4, 0, 4, 5, 3, 7, 9, 7, 8, 6, 8, 3, 6, 8, 3, 5, 1, 3, 7]","[0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +21,"[8, 2, 7, 1, 2, 9, 0, 3, 5, 2, 2, 5, 3, 7, 6, 1, 2, 0, 6, 3, 2, 5, 5, 4, 2, 6, 7, 8, 4, 7, 1, 2, 8, 3, 2, 1, 6, 7, 5, 9, 9, 8, 8, 0, 4, 8, 6, 3, 6, 1, 9, 0, 2, 8, 6, 7, 3, 5, 7, 8, 7, 6, 5, 8]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +22,"[3, 1, 6, 6, 1, 8, 0, 3, 1, 7, 8, 1, 9, 1, 3, 9, 3, 7, 9, 0, 4, 4, 6, 1, 0, 5, 8, 3, 0, 9, 2, 2, 0, 1, 0, 8, 6, 8, 6, 9, 1, 5, 2, 8, 9, 4, 3, 6, 4, 8, 3, 3, 9, 3, 9, 0, 9, 7, 2, 0, 0, 8, 9, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +23,"[8, 2, 4, 6, 0, 6, 2, 2, 5, 0, 0, 3, 6, 7, 8, 4, 7, 6, 6, 6, 2, 9, 8, 4, 2, 3, 2, 2, 1, 3, 2, 5, 9, 7, 5, 2, 8, 3, 0, 5, 0, 4, 4, 8, 1, 6, 2, 4, 3, 7, 0, 1, 6, 2, 0, 7, 6, 4, 8, 4, 9, 9, 9, 3]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +24,"[5, 1, 2, 8, 8, 2, 9, 8, 7, 0, 3, 7, 2, 3, 3, 5, 4, 8, 4, 4, 1, 6, 5, 2, 3, 9, 5, 8, 8, 1, 9, 3, 6, 3, 1, 1, 6, 3, 7, 5, 5, 4, 0, 8, 4, 6, 4, 5, 3, 6, 9, 9, 9, 8, 1, 0, 1, 7, 7, 9, 9, 6, 0, 9]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +25,"[8, 4, 5, 0, 8, 0, 2, 0, 2, 8, 0, 4, 1, 7, 9, 5, 5, 1, 5, 8, 2, 1, 1, 6, 9, 9, 4, 8, 7, 9, 1, 8, 6, 1, 2, 1, 5, 7, 3, 9, 9, 7, 0, 8, 8, 8, 3, 8, 7, 9, 7, 6, 9, 5, 2, 3, 1, 9, 5, 8, 7, 5, 9, 9]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +26,"[8, 3, 6, 9, 6, 7, 3, 9, 6, 2, 8, 4, 1, 8, 3, 4, 0, 2, 0, 6, 0, 1, 9, 4, 5, 9, 3, 2, 1, 9, 8, 5, 2, 9, 8, 8, 7, 6, 3, 0, 5, 3, 8, 5, 3, 3, 6, 6, 7, 1, 7, 6, 1, 4, 1, 7, 4, 7, 5, 9, 4, 5, 4, 0]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +27,"[5, 0, 7, 7, 9, 3, 3, 6, 7, 9, 7, 5, 9, 2, 9, 5, 3, 9, 5, 7, 0, 2, 7, 6, 9, 4, 0, 3, 0, 0, 7, 1, 2, 2, 1, 8, 7, 9, 3, 1, 3, 3, 0, 3, 2, 2, 1, 8, 9, 8, 9, 4, 7, 0, 6, 9, 5, 2, 9, 2, 4, 2, 0, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +28,"[6, 4, 7, 5, 8, 1, 7, 9, 6, 3, 5, 4, 4, 7, 9, 5, 6, 9, 7, 1, 0, 8, 0, 8, 5, 7, 3, 0, 4, 2, 8, 9, 0, 9, 2, 1, 7, 8, 1, 0, 3, 6, 5, 2, 2, 0, 8, 5, 5, 0, 9, 1, 4, 4, 7, 5, 2, 5, 1, 7, 5, 4, 5, 6]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +29,"[2, 1, 1, 7, 3, 3, 7, 3, 3, 7, 3, 1, 0, 6, 0, 3, 0, 2, 1, 8, 9, 5, 5, 1, 1, 5, 4, 8, 9, 3, 9, 3, 6, 7, 0, 1, 3, 8, 7, 8, 8, 2, 6, 7, 4, 7, 2, 9, 0, 7, 9, 4, 0, 1, 8, 9, 0, 3, 5, 3, 1, 9, 4, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +30,"[4, 2, 0, 8, 4, 7, 6, 6, 3, 9, 6, 0, 0, 7, 7, 5, 6, 3, 3, 7, 6, 9, 1, 4, 2, 7, 0, 6, 5, 9, 8, 6, 4, 6, 4, 9, 3, 2, 3, 0, 1, 5, 5, 4, 2, 7, 8, 2, 8, 1, 3, 6, 9, 6, 6, 5, 5, 4, 6, 6, 7, 8, 3, 7]","[0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +31,"[9, 4, 6, 8, 3, 9, 0, 3, 4, 6, 8, 9, 4, 9, 0, 6, 4, 8, 9, 2, 0, 4, 5, 3, 4, 3, 1, 3, 2, 4, 3, 7, 5, 4, 5, 6, 5, 4, 3, 0, 6, 1, 9, 7, 5, 7, 0, 1, 4, 1, 4, 2, 6, 9, 0, 3, 0, 8, 3, 5, 7, 6, 6, 3]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +32,"[9, 2, 3, 5, 3, 6, 0, 9, 2, 0, 7, 9, 7, 7, 5, 6, 5, 5, 5, 5, 3, 8, 0, 0, 1, 9, 8, 9, 5, 0, 0, 6, 5, 2, 0, 8, 7, 3, 3, 6, 7, 4, 2, 7, 1, 7, 6, 9, 4, 5, 8, 0, 8, 6, 5, 1, 3, 5, 2, 3, 4, 3, 6, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +33,"[4, 8, 5, 4, 6, 2, 7, 7, 4, 1, 5, 5, 6, 0, 1, 1, 1, 3, 9, 3, 9, 6, 6, 5, 8, 2, 1, 3, 4, 2, 3, 8, 4, 5, 0, 6, 0, 4, 1, 5, 5, 2, 7, 0, 4, 8, 9, 5, 9, 4, 0, 5, 5, 8, 2, 7, 6, 2, 7, 1, 7, 9, 5, 3]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +34,"[2, 3, 7, 7, 9, 4, 0, 7, 7, 6, 5, 8, 7, 2, 2, 8, 6, 6, 5, 5, 4, 6, 5, 0, 8, 4, 1, 7, 4, 4, 3, 0, 8, 7, 3, 3, 5, 8, 1, 9, 1, 3, 3, 6, 7, 1, 4, 4, 6, 6, 1, 0, 5, 2, 0, 6, 4, 4, 8, 9, 5, 9, 4, 7]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +35,"[9, 7, 8, 8, 4, 3, 0, 9, 1, 4, 4, 8, 1, 8, 7, 9, 6, 4, 7, 9, 0, 4, 0, 7, 8, 9, 9, 7, 8, 0, 4, 5, 8, 8, 0, 3, 2, 0, 3, 9, 7, 4, 2, 4, 5, 1, 9, 3, 0, 5, 2, 5, 2, 5, 4, 4, 9, 6, 0, 4, 9, 4, 0, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +36,"[6, 5, 5, 1, 2, 2, 4, 3, 3, 5, 7, 3, 5, 7, 3, 2, 9, 1, 8, 2, 6, 2, 7, 6, 6, 2, 6, 0, 2, 2, 2, 0, 2, 7, 4, 9, 1, 9, 4, 4, 2, 4, 4, 4, 7, 3, 1, 6, 4, 2, 0, 6, 7, 5, 7, 9, 2, 1, 6, 7, 9, 3, 2, 5]","[0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 9, 9, 9, 9, 9]" +37,"[9, 3, 0, 1, 9, 0, 2, 7, 0, 5, 1, 7, 6, 2, 4, 4, 1, 6, 6, 7, 4, 8, 9, 3, 7, 3, 4, 0, 2, 5, 4, 6, 7, 3, 4, 2, 7, 0, 9, 7, 0, 7, 6, 5, 1, 3, 3, 4, 8, 0, 0, 7, 7, 0, 2, 0, 4, 2, 1, 4, 5, 5, 8, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9]" +38,"[0, 7, 3, 0, 9, 2, 1, 9, 0, 5, 7, 0, 3, 0, 6, 5, 7, 5, 3, 4, 5, 9, 6, 1, 6, 8, 2, 2, 9, 3, 1, 6, 6, 7, 2, 9, 8, 9, 9, 9, 9, 2, 4, 1, 4, 2, 6, 0, 3, 8, 0, 3, 5, 0, 5, 1, 8, 0, 1, 2, 5, 8, 1, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +39,"[1, 8, 8, 5, 4, 1, 1, 8, 7, 5, 6, 5, 7, 8, 3, 0, 1, 5, 7, 9, 3, 9, 6, 6, 2, 3, 3, 1, 5, 8, 9, 6, 4, 5, 7, 0, 2, 7, 2, 5, 3, 2, 3, 8, 1, 9, 0, 6, 7, 4, 6, 7, 4, 3, 6, 1, 7, 9, 6, 6, 0, 1, 4, 1]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +40,"[0, 7, 3, 9, 5, 8, 0, 4, 4, 8, 1, 9, 9, 4, 4, 2, 9, 3, 0, 0, 1, 2, 2, 2, 3, 8, 4, 6, 1, 0, 9, 9, 8, 1, 4, 2, 5, 9, 6, 6, 3, 2, 7, 5, 5, 7, 1, 3, 0, 6, 6, 4, 1, 2, 4, 9, 4, 7, 7, 2, 5, 5, 5, 6]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +41,"[4, 6, 1, 2, 3, 0, 4, 6, 7, 3, 6, 8, 1, 2, 1, 8, 1, 5, 9, 8, 1, 7, 0, 6, 2, 7, 6, 2, 4, 3, 1, 6, 1, 3, 8, 5, 9, 5, 8, 6, 0, 3, 9, 4, 4, 2, 3, 0, 4, 3, 5, 3, 5, 9, 7, 0, 6, 5, 7, 4, 0, 1, 9, 6]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +42,"[3, 0, 2, 6, 0, 6, 6, 0, 7, 1, 5, 7, 6, 6, 6, 1, 3, 0, 9, 7, 6, 7, 8, 3, 0, 7, 5, 5, 6, 4, 4, 6, 0, 6, 7, 2, 8, 5, 4, 4, 5, 1, 1, 1, 6, 1, 0, 4, 1, 6, 4, 8, 7, 3, 6, 3, 1, 8, 7, 6, 0, 5, 2, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9]" +43,"[0, 4, 5, 8, 2, 5, 0, 5, 9, 0, 0, 3, 3, 3, 9, 0, 0, 4, 6, 1, 9, 8, 5, 0, 3, 7, 7, 4, 5, 6, 6, 0, 0, 7, 0, 9, 9, 3, 3, 0, 6, 7, 0, 4, 0, 4, 6, 0, 7, 8, 8, 0, 5, 2, 9, 3, 5, 0, 5, 7, 2, 1, 9, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +44,"[1, 9, 9, 2, 0, 7, 9, 6, 2, 6, 7, 0, 6, 0, 3, 0, 6, 1, 8, 7, 3, 1, 5, 8, 4, 5, 5, 0, 9, 1, 4, 8, 0, 7, 2, 4, 6, 1, 8, 8, 2, 3, 2, 4, 4, 6, 0, 9, 5, 5, 6, 6, 5, 2, 2, 7, 1, 8, 6, 2, 3, 0, 1, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +45,"[8, 5, 9, 6, 7, 7, 6, 8, 7, 6, 2, 0, 2, 1, 4, 4, 3, 9, 5, 4, 1, 6, 8, 9, 6, 6, 0, 1, 7, 5, 4, 0, 1, 3, 8, 9, 5, 1, 7, 6, 0, 8, 0, 1, 5, 4, 1, 6, 0, 7, 1, 6, 3, 2, 3, 0, 0, 2, 0, 5, 7, 7, 2, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +46,"[8, 7, 0, 8, 5, 3, 1, 3, 7, 0, 4, 8, 5, 1, 5, 7, 9, 9, 1, 1, 5, 0, 1, 6, 1, 3, 8, 8, 1, 5, 0, 1, 5, 7, 9, 9, 5, 4, 3, 7, 1, 3, 4, 6, 5, 6, 6, 8, 6, 4, 8, 3, 8, 6, 3, 5, 0, 6, 0, 0, 6, 7, 6, 1]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +47,"[8, 4, 7, 3, 0, 3, 3, 1, 7, 8, 6, 3, 4, 6, 5, 1, 3, 8, 6, 7, 7, 8, 2, 1, 7, 0, 9, 3, 1, 0, 8, 1, 0, 6, 4, 0, 1, 9, 4, 6, 8, 4, 0, 7, 7, 3, 3, 7, 2, 8, 3, 8, 3, 3, 1, 9, 9, 1, 2, 8, 5, 0, 5, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +48,"[5, 3, 2, 2, 5, 7, 3, 4, 8, 5, 8, 0, 1, 9, 6, 8, 9, 1, 2, 0, 0, 9, 0, 7, 7, 3, 8, 2, 4, 5, 0, 9, 9, 9, 8, 4, 5, 0, 9, 7, 1, 6, 6, 5, 1, 8, 5, 0, 5, 9, 0, 1, 0, 1, 4, 6, 0, 3, 6, 6, 6, 7, 6, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +49,"[3, 1, 4, 7, 0, 5, 8, 5, 2, 9, 1, 4, 1, 0, 4, 1, 8, 6, 5, 1, 1, 6, 1, 0, 3, 0, 1, 3, 7, 8, 0, 9, 2, 3, 8, 3, 9, 0, 7, 3, 6, 2, 6, 1, 0, 5, 1, 9, 5, 3, 9, 6, 1, 2, 5, 0, 2, 1, 5, 9, 0, 4, 3, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +50,"[8, 2, 2, 5, 3, 1, 8, 8, 6, 3, 9, 9, 9, 8, 9, 4, 9, 4, 5, 7, 9, 1, 7, 4, 1, 5, 9, 6, 2, 6, 7, 1, 3, 2, 7, 5, 4, 3, 5, 2, 1, 7, 5, 2, 3, 1, 1, 3, 2, 8, 1, 3, 8, 5, 1, 6, 4, 5, 0, 1, 5, 1, 1, 8]","[0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +51,"[3, 1, 9, 1, 7, 9, 6, 7, 4, 6, 2, 9, 9, 7, 2, 2, 5, 0, 0, 0, 3, 6, 6, 5, 7, 0, 0, 8, 4, 1, 1, 3, 4, 8, 6, 0, 0, 2, 7, 8, 7, 1, 3, 4, 8, 5, 2, 7, 9, 9, 5, 6, 9, 5, 7, 3, 8, 2, 8, 4, 1, 6, 8, 1]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +52,"[8, 9, 0, 0, 6, 9, 9, 9, 5, 0, 9, 6, 1, 4, 6, 6, 0, 9, 9, 3, 1, 4, 1, 1, 8, 8, 6, 0, 0, 3, 1, 9, 9, 6, 4, 1, 4, 1, 8, 5, 9, 0, 2, 9, 8, 2, 9, 2, 2, 1, 0, 0, 1, 4, 2, 1, 6, 5, 7, 2, 6, 0, 6, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +53,"[2, 7, 6, 3, 6, 2, 8, 2, 6, 6, 1, 0, 5, 7, 1, 2, 4, 2, 8, 1, 4, 2, 5, 8, 3, 1, 8, 7, 9, 6, 0, 2, 4, 5, 7, 7, 7, 1, 8, 9, 6, 0, 0, 5, 8, 1, 3, 5, 7, 0, 4, 1, 2, 0, 4, 0, 4, 4, 9, 2, 2, 6, 2, 9]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +54,"[8, 7, 8, 9, 6, 6, 8, 2, 5, 2, 2, 1, 9, 5, 6, 1, 2, 5, 3, 4, 7, 8, 2, 9, 3, 0, 6, 9, 5, 0, 4, 1, 0, 2, 5, 5, 9, 0, 9, 8, 4, 2, 5, 6, 1, 2, 8, 4, 3, 1, 3, 6, 7, 0, 7, 8, 3, 7, 6, 6, 3, 1, 7, 5]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +55,"[4, 5, 9, 0, 5, 2, 9, 0, 4, 1, 2, 7, 7, 1, 2, 7, 1, 6, 9, 9, 2, 7, 2, 1, 5, 7, 9, 8, 8, 0, 1, 9, 1, 4, 8, 7, 9, 7, 0, 6, 8, 8, 5, 7, 6, 0, 4, 6, 2, 5, 4, 4, 9, 0, 9, 9, 4, 6, 9, 0, 6, 5, 7, 4]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +56,"[0, 4, 3, 7, 2, 8, 2, 6, 1, 1, 6, 2, 0, 4, 4, 3, 0, 5, 0, 8, 1, 6, 4, 2, 0, 6, 4, 4, 3, 8, 7, 9, 1, 5, 8, 9, 3, 8, 3, 8, 6, 1, 5, 7, 1, 3, 6, 8, 2, 1, 2, 6, 4, 3, 7, 8, 3, 0, 9, 0, 1, 8, 5, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +57,"[1, 5, 8, 0, 6, 2, 0, 3, 4, 1, 4, 1, 7, 9, 5, 6, 3, 2, 7, 5, 0, 2, 4, 8, 0, 3, 1, 8, 8, 1, 7, 1, 8, 0, 0, 1, 5, 1, 5, 6, 9, 2, 1, 4, 5, 4, 8, 7, 3, 3, 8, 6, 0, 3, 1, 4, 3, 3, 2, 3, 2, 9, 7, 1]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +58,"[6, 5, 9, 8, 9, 9, 1, 5, 8, 3, 9, 4, 0, 7, 2, 6, 5, 4, 9, 2, 7, 0, 4, 8, 1, 8, 7, 0, 9, 5, 7, 2, 5, 4, 6, 9, 7, 8, 9, 4, 6, 6, 7, 6, 5, 6, 4, 8, 7, 8, 6, 4, 7, 4, 9, 4, 6, 4, 7, 4, 4, 7, 9, 4]","[0, 0, 0, 1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +59,"[3, 1, 0, 7, 6, 4, 0, 3, 0, 9, 7, 8, 9, 2, 6, 2, 3, 1, 1, 6, 9, 1, 1, 8, 0, 7, 7, 3, 5, 6, 6, 3, 3, 5, 1, 2, 3, 7, 3, 8, 1, 6, 7, 8, 8, 7, 7, 1, 3, 2, 4, 6, 4, 5, 3, 4, 0, 4, 1, 3, 1, 3, 6, 3]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9]" +60,"[6, 3, 3, 5, 2, 7, 1, 9, 5, 7, 3, 4, 0, 8, 1, 0, 7, 4, 0, 3, 5, 7, 2, 9, 7, 3, 8, 1, 6, 5, 8, 4, 2, 1, 5, 3, 0, 2, 2, 3, 9, 5, 6, 9, 0, 5, 1, 4, 3, 1, 8, 4, 5, 3, 8, 8, 9, 4, 6, 5, 7, 6, 1, 6]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +61,"[1, 8, 5, 3, 9, 7, 4, 0, 9, 2, 6, 6, 8, 1, 0, 5, 2, 2, 0, 5, 2, 9, 6, 6, 2, 9, 1, 8, 7, 7, 0, 2, 8, 2, 8, 1, 5, 5, 9, 0, 1, 5, 3, 8, 3, 0, 3, 9, 7, 4, 1, 4, 8, 7, 7, 0, 6, 8, 8, 3, 8, 4, 1, 9]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +62,"[6, 0, 1, 8, 9, 2, 9, 8, 5, 1, 2, 1, 9, 5, 7, 0, 2, 3, 4, 9, 9, 5, 5, 3, 0, 4, 9, 8, 3, 5, 5, 3, 6, 9, 6, 8, 9, 3, 0, 6, 4, 3, 0, 3, 4, 6, 7, 8, 5, 6, 2, 8, 7, 3, 6, 1, 4, 5, 5, 2, 2, 4, 6, 3]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +63,"[9, 2, 7, 0, 4, 3, 4, 7, 5, 7, 3, 4, 9, 0, 0, 4, 9, 7, 3, 5, 3, 8, 4, 3, 0, 1, 3, 8, 7, 8, 6, 0, 7, 9, 8, 8, 2, 4, 6, 4, 9, 1, 8, 5, 8, 3, 3, 6, 3, 1, 4, 3, 3, 5, 3, 1, 5, 9, 6, 8, 3, 5, 9, 1]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +64,"[4, 7, 1, 9, 9, 6, 9, 2, 5, 1, 1, 4, 9, 2, 1, 5, 2, 5, 8, 2, 6, 0, 4, 4, 2, 3, 3, 3, 6, 7, 7, 9, 1, 8, 8, 7, 8, 9, 7, 1, 5, 4, 8, 3, 6, 4, 7, 7, 0, 7, 1, 4, 1, 2, 2, 9, 9, 6, 6, 5, 9, 1, 0, 1]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +65,"[3, 3, 2, 9, 6, 1, 3, 3, 1, 1, 1, 6, 6, 0, 6, 3, 0, 0, 6, 6, 4, 7, 7, 1, 4, 2, 8, 4, 3, 2, 0, 6, 9, 4, 0, 5, 8, 6, 0, 6, 6, 4, 7, 8, 3, 3, 3, 8, 5, 9, 6, 7, 5, 0, 8, 9, 6, 0, 3, 3, 4, 7, 7, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +66,"[4, 8, 5, 9, 2, 7, 0, 1, 5, 7, 4, 4, 2, 6, 0, 4, 6, 1, 3, 7, 0, 1, 5, 4, 7, 1, 0, 3, 0, 5, 8, 4, 7, 6, 0, 9, 6, 0, 9, 4, 0, 1, 1, 5, 2, 4, 6, 7, 0, 6, 5, 6, 0, 0, 5, 9, 3, 5, 9, 1, 4, 2, 7, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9]" +67,"[6, 0, 3, 8, 4, 6, 5, 1, 8, 8, 3, 2, 8, 8, 8, 9, 2, 2, 3, 8, 3, 5, 7, 1, 8, 9, 5, 6, 7, 8, 4, 2, 7, 4, 2, 7, 8, 1, 4, 4, 0, 1, 2, 6, 9, 1, 7, 1, 0, 9, 6, 2, 3, 0, 3, 4, 1, 0, 8, 6, 5, 2, 3, 2]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +68,"[5, 6, 8, 0, 1, 2, 1, 8, 4, 8, 2, 4, 0, 0, 5, 0, 2, 4, 6, 3, 3, 1, 2, 0, 1, 7, 6, 0, 1, 2, 8, 0, 7, 1, 8, 9, 1, 8, 2, 0, 8, 4, 1, 2, 3, 2, 9, 6, 4, 8, 7, 0, 9, 0, 8, 8, 8, 7, 9, 6, 3, 3, 7, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +69,"[1, 3, 4, 2, 7, 2, 8, 2, 9, 5, 2, 5, 7, 0, 4, 8, 1, 6, 7, 1, 7, 1, 6, 4, 5, 7, 9, 7, 5, 3, 9, 2, 4, 2, 0, 8, 2, 3, 2, 4, 5, 7, 6, 2, 5, 2, 6, 7, 7, 0, 0, 3, 6, 7, 9, 3, 3, 6, 0, 8, 4, 9, 1, 4]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +70,"[1, 8, 4, 6, 5, 4, 2, 8, 4, 2, 2, 7, 3, 0, 5, 9, 4, 9, 4, 5, 9, 8, 3, 8, 0, 8, 9, 5, 2, 4, 0, 2, 7, 0, 7, 6, 3, 7, 1, 8, 2, 3, 7, 4, 1, 3, 1, 4, 6, 6, 0, 4, 4, 8, 5, 6, 5, 3, 7, 5, 7, 6, 9, 1]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +71,"[9, 7, 2, 0, 0, 4, 1, 6, 9, 7, 1, 0, 5, 2, 9, 0, 5, 7, 1, 2, 0, 8, 8, 1, 3, 1, 9, 4, 8, 8, 3, 6, 5, 5, 4, 4, 3, 1, 0, 0, 2, 5, 2, 9, 9, 7, 3, 0, 4, 3, 1, 1, 1, 6, 4, 2, 0, 7, 4, 6, 3, 7, 9, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +72,"[7, 1, 0, 2, 8, 6, 6, 8, 5, 9, 9, 5, 8, 2, 7, 2, 4, 1, 8, 7, 7, 0, 8, 4, 7, 6, 6, 0, 0, 8, 5, 3, 8, 6, 4, 0, 4, 3, 0, 6, 2, 0, 4, 4, 8, 1, 7, 1, 5, 7, 9, 5, 0, 8, 6, 1, 3, 4, 9, 8, 5, 4, 5, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +73,"[1, 3, 6, 7, 4, 8, 7, 7, 5, 9, 0, 8, 4, 4, 6, 1, 2, 7, 2, 8, 1, 9, 7, 3, 7, 5, 0, 2, 3, 8, 1, 4, 1, 8, 2, 7, 6, 9, 9, 6, 3, 6, 3, 1, 0, 1, 0, 1, 1, 5, 8, 0, 3, 0, 4, 1, 1, 6, 2, 0, 7, 7, 3, 5]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +74,"[2, 7, 3, 7, 0, 1, 8, 4, 7, 1, 8, 4, 0, 1, 5, 6, 3, 6, 7, 6, 2, 7, 6, 6, 2, 7, 0, 5, 2, 8, 7, 0, 8, 9, 2, 4, 4, 3, 9, 9, 4, 0, 5, 2, 8, 1, 5, 4, 0, 6, 2, 4, 2, 7, 5, 5, 6, 5, 0, 8, 8, 0, 3, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9]" +75,"[9, 9, 1, 3, 6, 8, 9, 9, 8, 2, 8, 2, 0, 7, 7, 2, 6, 9, 4, 6, 9, 0, 5, 5, 5, 3, 7, 4, 3, 8, 1, 6, 9, 9, 6, 7, 0, 5, 3, 2, 0, 5, 6, 8, 8, 3, 8, 6, 5, 3, 4, 3, 7, 5, 2, 5, 6, 9, 8, 4, 6, 7, 2, 0]","[0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +76,"[8, 5, 7, 6, 7, 0, 5, 9, 2, 8, 3, 8, 7, 5, 5, 6, 8, 6, 7, 9, 3, 2, 9, 2, 0, 8, 0, 3, 1, 4, 2, 4, 0, 2, 1, 1, 8, 9, 1, 3, 3, 6, 2, 8, 1, 5, 7, 3, 9, 2, 2, 8, 3, 8, 7, 8, 4, 9, 9, 6, 1, 5, 7, 3]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +77,"[6, 0, 7, 6, 5, 5, 8, 7, 3, 1, 8, 6, 4, 6, 3, 5, 9, 3, 0, 5, 2, 6, 7, 0, 7, 0, 3, 8, 9, 7, 9, 3, 3, 1, 2, 9, 0, 2, 8, 5, 0, 7, 2, 7, 1, 9, 2, 0, 5, 6, 3, 7, 0, 6, 8, 2, 8, 4, 5, 4, 3, 8, 1, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +78,"[1, 8, 1, 1, 1, 4, 5, 8, 1, 0, 3, 3, 4, 0, 6, 5, 5, 1, 6, 1, 6, 0, 6, 6, 8, 9, 3, 8, 7, 3, 5, 3, 4, 8, 4, 1, 0, 4, 2, 3, 0, 1, 2, 0, 7, 9, 3, 6, 8, 8, 3, 2, 5, 5, 1, 9, 4, 7, 8, 2, 1, 9, 6, 9]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +79,"[1, 4, 4, 0, 8, 2, 9, 3, 9, 4, 2, 0, 5, 7, 9, 3, 1, 8, 0, 1, 5, 4, 2, 8, 2, 3, 8, 5, 7, 9, 0, 6, 5, 4, 5, 1, 6, 1, 4, 0, 0, 3, 2, 8, 4, 7, 8, 6, 0, 5, 4, 8, 7, 7, 9, 2, 8, 9, 2, 8, 9, 3, 3, 9]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +80,"[4, 5, 0, 0, 5, 2, 4, 6, 1, 6, 1, 0, 6, 1, 6, 3, 5, 4, 3, 5, 9, 6, 0, 8, 3, 8, 3, 8, 1, 5, 7, 4, 1, 8, 5, 0, 1, 9, 9, 0, 9, 3, 8, 6, 7, 7, 8, 0, 9, 4, 6, 7, 1, 3, 1, 3, 7, 3, 1, 6, 8, 4, 1, 3]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +81,"[7, 9, 4, 5, 4, 3, 6, 4, 6, 2, 5, 1, 4, 1, 8, 9, 4, 0, 5, 4, 8, 3, 4, 1, 3, 6, 1, 3, 7, 3, 0, 2, 7, 6, 3, 5, 1, 2, 1, 9, 9, 1, 0, 0, 5, 0, 6, 4, 5, 2, 4, 8, 3, 5, 0, 2, 6, 7, 1, 3, 5, 4, 4, 8]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9]" +82,"[5, 5, 6, 7, 3, 4, 4, 1, 6, 2, 7, 6, 1, 0, 2, 7, 7, 6, 8, 6, 3, 3, 5, 4, 1, 2, 9, 9, 0, 9, 0, 3, 3, 8, 1, 4, 5, 3, 9, 0, 7, 0, 5, 6, 9, 7, 9, 3, 2, 5, 3, 7, 1, 3, 0, 0, 6, 1, 4, 8, 0, 5, 6, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +83,"[6, 4, 9, 2, 4, 8, 7, 3, 2, 2, 1, 0, 0, 2, 7, 6, 0, 6, 1, 4, 0, 1, 4, 4, 6, 1, 1, 6, 9, 8, 1, 7, 3, 5, 6, 7, 8, 1, 2, 0, 9, 5, 0, 7, 6, 8, 7, 0, 1, 5, 9, 6, 4, 3, 1, 9, 7, 4, 4, 4, 6, 9, 9, 2]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +84,"[6, 6, 3, 3, 6, 2, 8, 0, 2, 8, 4, 2, 1, 7, 0, 1, 8, 0, 2, 5, 7, 8, 0, 4, 0, 5, 0, 5, 2, 3, 9, 0, 8, 6, 1, 0, 8, 2, 5, 9, 6, 6, 6, 3, 7, 5, 7, 8, 5, 5, 2, 8, 0, 6, 0, 7, 7, 8, 2, 0, 5, 7, 0, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9]" +85,"[0, 0, 3, 4, 5, 3, 6, 8, 9, 9, 2, 0, 7, 8, 1, 0, 2, 0, 6, 4, 3, 7, 4, 0, 8, 5, 4, 7, 9, 2, 7, 7, 6, 1, 8, 0, 1, 7, 3, 0, 8, 4, 8, 0, 0, 1, 7, 9, 6, 9, 9, 9, 3, 9, 0, 7, 0, 7, 4, 6, 9, 3, 8, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +86,"[7, 0, 8, 1, 8, 3, 8, 3, 7, 2, 3, 9, 6, 1, 8, 4, 3, 3, 6, 2, 6, 8, 6, 3, 3, 6, 4, 6, 7, 1, 6, 1, 1, 7, 4, 7, 1, 1, 8, 5, 7, 9, 8, 3, 2, 4, 7, 6, 4, 5, 9, 4, 2, 5, 7, 7, 4, 6, 2, 2, 0, 5, 8, 6]","[0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +87,"[3, 7, 2, 5, 8, 9, 5, 9, 5, 4, 2, 1, 4, 3, 1, 7, 4, 6, 6, 6, 2, 9, 2, 7, 9, 6, 4, 1, 1, 0, 9, 5, 1, 1, 9, 2, 1, 0, 2, 2, 3, 7, 7, 1, 1, 9, 7, 6, 0, 5, 5, 7, 3, 4, 8, 5, 8, 5, 9, 3, 7, 3, 1, 6]","[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +88,"[1, 7, 0, 5, 1, 9, 3, 8, 5, 5, 5, 0, 8, 4, 0, 4, 5, 4, 0, 4, 3, 8, 8, 7, 1, 8, 2, 5, 1, 9, 7, 8, 9, 9, 1, 2, 9, 4, 6, 2, 9, 5, 3, 7, 0, 6, 3, 2, 2, 0, 0, 5, 8, 5, 2, 1, 5, 0, 9, 7, 7, 6, 3, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +89,"[4, 9, 2, 8, 8, 4, 7, 7, 9, 4, 8, 0, 2, 8, 2, 0, 2, 1, 8, 3, 1, 8, 7, 1, 3, 8, 9, 9, 7, 8, 9, 4, 4, 1, 7, 9, 9, 0, 4, 2, 8, 1, 4, 4, 5, 6, 0, 7, 5, 9, 1, 8, 6, 7, 0, 7, 3, 1, 0, 3, 1, 7, 8, 4]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +90,"[5, 4, 9, 0, 2, 8, 3, 8, 2, 5, 7, 6, 3, 6, 2, 4, 0, 9, 0, 1, 7, 6, 1, 6, 6, 9, 2, 8, 9, 5, 9, 1, 0, 9, 7, 1, 6, 8, 2, 4, 6, 7, 1, 6, 8, 5, 5, 7, 5, 9, 9, 1, 5, 5, 0, 4, 3, 9, 6, 4, 0, 5, 4, 7]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +91,"[5, 2, 3, 3, 2, 4, 8, 2, 8, 5, 4, 3, 4, 2, 1, 4, 5, 2, 1, 7, 4, 1, 2, 8, 9, 3, 2, 9, 9, 7, 9, 4, 7, 8, 4, 7, 4, 7, 3, 8, 2, 1, 6, 9, 9, 7, 3, 3, 2, 7, 8, 6, 5, 5, 5, 5, 5, 2, 9, 5, 5, 0, 7, 8]","[0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +92,"[9, 1, 8, 8, 4, 1, 2, 2, 8, 9, 4, 3, 2, 4, 3, 8, 2, 4, 3, 6, 6, 1, 8, 0, 2, 0, 0, 9, 6, 5, 8, 5, 1, 2, 7, 2, 2, 7, 5, 8, 1, 0, 9, 5, 1, 6, 1, 5, 3, 9, 0, 7, 4, 9, 2, 8, 2, 6, 2, 4, 2, 7, 5, 2]","[0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +93,"[1, 6, 4, 9, 3, 8, 7, 4, 4, 8, 5, 8, 6, 4, 0, 6, 9, 2, 6, 6, 3, 5, 2, 5, 4, 1, 5, 6, 2, 5, 8, 0, 8, 2, 9, 0, 9, 2, 5, 2, 6, 8, 9, 2, 2, 4, 4, 7, 6, 9, 5, 9, 5, 6, 0, 8, 4, 8, 5, 2, 4, 2, 5, 9]","[0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +94,"[1, 8, 1, 7, 3, 2, 5, 2, 1, 7, 2, 7, 0, 5, 4, 1, 8, 5, 7, 2, 5, 5, 2, 3, 9, 9, 0, 6, 6, 3, 6, 7, 8, 9, 3, 7, 0, 8, 9, 3, 4, 5, 3, 4, 7, 6, 6, 3, 3, 4, 1, 8, 5, 4, 0, 0, 9, 9, 7, 0, 8, 8, 0, 4]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +95,"[1, 0, 0, 5, 2, 5, 6, 2, 7, 6, 3, 8, 4, 2, 2, 9, 2, 4, 3, 2, 3, 3, 6, 6, 2, 3, 7, 4, 0, 2, 5, 6, 7, 3, 6, 7, 4, 9, 6, 6, 2, 9, 9, 5, 2, 5, 2, 2, 1, 9, 5, 0, 7, 5, 4, 7, 9, 1, 3, 3, 9, 1, 2, 1]","[0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 9, 9, 9, 9, 9, 9, 9]" +96,"[9, 0, 9, 7, 7, 6, 4, 6, 0, 4, 4, 3, 9, 2, 1, 8, 8, 3, 7, 1, 6, 3, 6, 6, 4, 4, 3, 4, 8, 9, 6, 6, 6, 2, 2, 0, 1, 6, 0, 1, 3, 0, 6, 7, 6, 5, 5, 9, 3, 5, 0, 8, 6, 1, 7, 0, 1, 7, 4, 0, 5, 7, 4, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9]" +97,"[3, 3, 7, 0, 0, 8, 4, 0, 5, 8, 0, 9, 3, 5, 9, 7, 8, 3, 3, 2, 1, 8, 7, 0, 3, 3, 3, 8, 4, 4, 0, 1, 0, 0, 2, 3, 5, 8, 7, 0, 0, 3, 9, 5, 7, 3, 7, 7, 6, 4, 7, 5, 5, 1, 3, 8, 8, 1, 2, 0, 5, 6, 3, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9]" +98,"[4, 7, 8, 4, 8, 0, 7, 7, 8, 4, 5, 2, 1, 7, 4, 3, 6, 1, 4, 5, 6, 0, 3, 6, 5, 7, 6, 3, 6, 6, 1, 8, 4, 3, 4, 0, 1, 3, 0, 3, 4, 5, 4, 2, 2, 9, 0, 9, 1, 3, 9, 6, 5, 4, 0, 5, 3, 2, 1, 6, 2, 8, 5, 7]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9]" +99,"[0, 5, 6, 5, 0, 0, 2, 6, 3, 2, 0, 6, 7, 4, 7, 9, 2, 7, 8, 0, 5, 5, 8, 8, 0, 9, 0, 8, 5, 3, 7, 9, 9, 2, 0, 6, 9, 2, 4, 1, 0, 5, 6, 4, 6, 4, 4, 0, 2, 2, 9, 1, 3, 0, 0, 0, 3, 4, 6, 3, 8, 1, 5, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" \ No newline at end of file diff --git a/examples/sorting/sorting_064.py b/examples/sorting/sorting_064.py new file mode 100644 index 0000000..c09cf0f --- /dev/null +++ b/examples/sorting/sorting_064.py @@ -0,0 +1,785 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + +from . import utils + + +class SortingPrompter(prompter.Prompter): + """ + SortingPrompter provides the generation of prompts specific to the sorting + example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + sort_prompt = """ Sort the following list of numbers in ascending order. Output only the sorted list of numbers, no additional text. + + +Input: [5, 1, 0, 1, 2, 0, 4, 8, 1, 9, 5, 1, 3, 3, 9, 7] +Output: [0, 0, 1, 1, 1, 1, 2, 3, 3, 4, 5, 5, 7, 8, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +Output: [0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + sort_prompt_cot = """ Sort the following list of numbers in ascending order. You can generate any intermediate lists, but the final output should be the sorted list of numbers, prefixed with "Output: ". + + +To sort the list of numbers follow these steps: +1. Split the list of numbers into two to four unsorted sublists, each containing an equal number of elements from the original list (make sure they don't overlap). +2. Sort each of the unsorted sublists. +3. Merge the sorted sublists into a single sorted list using the merging algorithm from merge sort. + + + +Input: [4, 5, 3, 3, 7, 3, 0, 5, 0, 2, 8, 0, 2, 1, 6, 9] +Unsorted Subarrays: +[4, 5, 3, 3, 7, 3, 0, 5] +[0, 2, 8, 0, 2, 1, 6, 9] +Sorted Subarrays: +[0, 3, 3, 3, 4, 5, 5, 7] +[0, 0, 1, 2, 2, 6, 8, 9] +Output: [0, 0, 0, 1, 2, 2, 3, 3, 3, 4, 5, 5, 6, 7, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Unsorted Subarrays: +[6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9] +[2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Sorted Subarrays: +[1, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9] +[0, 1, 2, 2, 3, 4, 5, 5, 6, 6, 6, 6, 7, 8, 9, 9] +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1, 9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3, 3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Unsorted Subarrays: +[3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +[4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +[9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3] +[3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Sorted Subarrays: +[0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] +[0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 9, 9] +[0, 1, 1, 1, 1, 3, 3, 4, 4, 6, 6, 6, 7, 8, 8, 9] +[0, 3, 3, 3, 3, 4, 5, 6, 6, 6, 7, 7, 9, 9, 9, 9] +Output: [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + tot_improve_prompt = """ The following two lists represent an unsorted list of numbers and a sorted variant of that list. The sorted variant is not correct. Fix the sorted variant so that it is correct. +Make sure that the output list is sorted in ascending order, has the same number of elements as the input list ({length}), and contains the same elements as the input list. + + +To fix the incorrectly sorted list follow these steps: +1. For each number from 0 to 9, compare the frequency of that number in the incorrectly sorted list to the frequency of that number in the input list. +2. Iterate through the incorrectly sorted list and add or remove numbers as needed to make the frequency of each number in the incorrectly sorted list match the frequency of that number in the input list. + + + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +Incorrectly Sorted: [0, 0, 0, 0, 0, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 7, 7, 8, 8, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains four extra 0s, two extra 4s and three extra 9s and is missing two 2s. +Output: [0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Incorrectly Sorted: [0, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains two extra 4s and is missing two 6s and one 9. +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Incorrectly Sorted: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains one extra 8 and is missing two 2s, one 3, three 4s, two 5s, one 6, six 7s and one 9. +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input} +Incorrectly Sorted: {incorrectly_sorted} +""" + + got_split_prompt = """ Split the following list of 64 numbers into 4 lists of 16 numbers each, the first list should contain the first 16 numbers, the second list the second 16 numbers, the third list the third 16 numbers and the fourth list the fourth 16 numbers. +Only output the final 4 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [3, 4, 3, 5, 7, 8, 1, ...], + "List 2": [2, 9, 2, 4, 7, 1, 5, ...], + "List 3": [6, 9, 8, 1, 9, 2, 4, ...], + "List 4": [9, 0, 7, 6, 5, 6, 6, ...] +}} + + +Input: [3, 1, 9, 3, 7, 5, 5, 4, 8, 1, 5, 3, 3, 2, 3, 0, 9, 7, 2, 2, 4, 4, 8, 5, 0, 8, 7, 3, 3, 8, 7, 0, 9, 5, 1, 6, 7, 6, 8, 9, 0, 3, 0, 6, 3, 4, 8, 0, 6, 9, 8, 4, 1, 2, 9, 0, 4, 8, 8, 9, 9, 8, 5, 9] +Output: +{{ + "List 1": [3, 1, 9, 3, 7, 5, 5, 4, 8, 1, 5, 3, 3, 2, 3, 0], + "List 2": [9, 7, 2, 2, 4, 4, 8, 5, 0, 8, 7, 3, 3, 8, 7, 0], + "List 3": [9, 5, 1, 6, 7, 6, 8, 9, 0, 3, 0, 6, 3, 4, 8, 0], + "List 4": [6, 9, 8, 4, 1, 2, 9, 0, 4, 8, 8, 9, 9, 8, 5, 9] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 sorted lists of length {length1} each, into one sorted list of length {length2} using a merge sort style approach. +Only output the final merged list without any additional text or thoughts!: + + +To merge the two lists in a merge-sort style approach, foloow these steps: +1. Compare the first element of both lists. +2. Append the smaller element to the merged list and move to the next element in the list from which the smaller element came. +3. Repeat steps 1 and 2 until one of the lists is empty. +4. Append the remaining elements of the non-empty list to the merged list. + + +Merge the following two lists into one sorted list: +1: {input1} +2: {input2} + +Merged list: +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + else: + length = 32 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, num_branches: int, original: str, current: str, method: str, **kwargs + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param original: Input list of numbers. + :type original: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if current is None or current == "": + input = original + else: + input = current + if method.startswith("io"): + return self.sort_prompt.format(input=input) + elif method.startswith("cot"): + return self.sort_prompt_cot.format(input=input) + elif method.startswith("tot"): + if current is None or current == "": + return self.sort_prompt.format(input=input) + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + elif method.startswith("got"): + if current is None or current == "": + return self.got_split_prompt.format(input=input) + # if current is just a sublist of the original input, return the split prompt + if kwargs["phase"] == 1: + return self.sort_prompt.format(input=current) + + if ( + "unsorted_sublist" in kwargs + and kwargs["unsorted_sublist"] != "" + and len(kwargs["unsorted_sublist"]) < len(original) - 5 + ): + original = kwargs["unsorted_sublist"] + + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SortingParser(parser.Parser): + """ + SortingParser provides the parsing of language model reponses specific to + the sorting example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_unsorted_sublists = ( + states[0]["unsorted_sublist"][:-1] + + ", " + + states[1]["unsorted_sublist"][1:] + ) + new_state = states[0].copy() + new_state["current"] = answer + new_state["unsorted_sublist"] = merged_unsorted_sublists + new_states.append(new_state) + return new_states + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + new_states = [] + for text in texts: + if state["method"] == "got" and state["current"] == "": + # We expect a json which contains the four lists named "List 1" to "List 4" + # cut everything until the opening bracket and everything after the closing bracket + + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 4: + logging.warning( + f"Expected 4 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = str(value) + new_state["unsorted_sublist"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(3): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(6): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(1, 1) + operations_graph.append_operation(plans) # generate the sublists + sorted_sublists = [] + for i in range(1, 5): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + sort_sub_list = operations.Generate(1, 5) + sort_sub_list.add_predecessor(sub_list) + operations_graph.add_operation(sort_sub_list) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(sort_sub_list) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + sorted_sublists.append(keep_best_sub_list) + + aggregate_1 = operations.Aggregate(10) + aggregate_1.add_predecessor(sorted_sublists[0]) + aggregate_1.add_predecessor(sorted_sublists[1]) + operations_graph.add_operation(aggregate_1) + score_aggregate_1 = operations.Score(1, False, utils.num_errors) + score_aggregate_1.add_predecessor(aggregate_1) + operations_graph.add_operation(score_aggregate_1) + keep_best_aggregate_1 = operations.KeepBestN(1, False) + keep_best_aggregate_1.add_predecessor(score_aggregate_1) + operations_graph.add_operation(keep_best_aggregate_1) + + improve_aggregate_1 = operations.Generate(1, 5) + improve_aggregate_1.add_predecessor(keep_best_aggregate_1) + operations_graph.add_operation(improve_aggregate_1) + improve_score_aggregate_1 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_1.add_predecessor(improve_aggregate_1) + improve_score_aggregate_1.add_predecessor(keep_best_aggregate_1) + operations_graph.add_operation(improve_score_aggregate_1) + improve_keep_best_aggregate_1 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_1.add_predecessor(improve_score_aggregate_1) + operations_graph.add_operation(improve_keep_best_aggregate_1) + + aggregate_2 = operations.Aggregate(10) + aggregate_2.add_predecessor(sorted_sublists[2]) + aggregate_2.add_predecessor(sorted_sublists[3]) + operations_graph.add_operation(aggregate_2) + score_aggregate_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_2.add_predecessor(aggregate_2) + operations_graph.add_operation(score_aggregate_2) + keep_best_aggregate_2 = operations.KeepBestN(1, False) + keep_best_aggregate_2.add_predecessor(score_aggregate_2) + operations_graph.add_operation(keep_best_aggregate_2) + + improve_aggregate_2 = operations.Generate(1, 5) + improve_aggregate_2.add_predecessor(keep_best_aggregate_2) + operations_graph.add_operation(improve_aggregate_2) + improve_score_aggregate_2 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_2.add_predecessor(improve_aggregate_2) + improve_score_aggregate_2.add_predecessor(keep_best_aggregate_2) + operations_graph.add_operation(improve_score_aggregate_2) + improve_keep_best_aggregate_2 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_2.add_predecessor(improve_score_aggregate_2) + operations_graph.add_operation(improve_keep_best_aggregate_2) + + final_aggregate = operations.Aggregate(10) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation(operations.Generate(1, 10)) + score_aggr_3 = operations.Score(1, False, utils.num_errors) + score_aggr_3.add_predecessor(keep_best_aggregate_final) + operations_graph.append_operation(score_aggr_3) + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "sorting_064.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + # create a results directory for the method + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SortingPrompter(), + SortingParser(), + { + "original": data[1], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input (x) : an unordered list of 64 numbers between 0 and 9 (inclusive) + Output (y) : a sorted list of 64 numbers between 0 and 9 (inclusive) + Correct : y == sorted(x) + Input Example: + [0, 1, 9, 4, 2, 2, 0, 5, 1...] + Output Example: + [0, 0, 0, 0, 1, 1, 1, 1, 2...] + """ + budget = 30 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/sorting/sorting_128.csv b/examples/sorting/sorting_128.csv new file mode 100644 index 0000000..1646ffd --- /dev/null +++ b/examples/sorting/sorting_128.csv @@ -0,0 +1,101 @@ +ID,Unsorted,Sorted +0,"[2, 9, 0, 0, 4, 2, 1, 2, 7, 7, 7, 2, 7, 8, 1, 3, 1, 5, 9, 1, 2, 8, 5, 0, 1, 8, 8, 3, 1, 9, 6, 9, 1, 4, 8, 0, 3, 5, 8, 5, 9, 4, 9, 8, 6, 1, 9, 6, 4, 9, 2, 6, 2, 9, 6, 3, 4, 0, 7, 4, 7, 5, 9, 6, 3, 5, 3, 9, 7, 2, 8, 7, 3, 4, 2, 9, 9, 9, 7, 0, 0, 9, 3, 7, 5, 9, 8, 4, 4, 5, 2, 3, 9, 4, 5, 8, 3, 7, 1, 4, 3, 0, 1, 6, 2, 3, 2, 1, 2, 1, 9, 3, 5, 8, 8, 1, 6, 0, 9, 6, 6, 7, 4, 7, 6, 9, 1, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +1,"[4, 9, 9, 7, 9, 9, 4, 7, 4, 6, 2, 4, 7, 8, 0, 1, 9, 4, 5, 2, 7, 2, 0, 4, 3, 1, 6, 1, 6, 9, 8, 4, 6, 1, 0, 5, 2, 5, 4, 3, 2, 1, 3, 9, 5, 5, 3, 6, 9, 1, 2, 6, 4, 3, 7, 8, 7, 9, 8, 8, 6, 4, 6, 2, 1, 2, 4, 5, 6, 9, 9, 6, 6, 2, 8, 4, 2, 5, 5, 0, 0, 5, 7, 1, 4, 7, 8, 7, 6, 1, 9, 0, 7, 6, 8, 8, 6, 1, 7, 6, 2, 5, 4, 1, 7, 4, 8, 8, 2, 4, 7, 7, 6, 9, 8, 9, 9, 9, 1, 4, 2, 6, 0, 7, 6, 6, 4, 3]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +2,"[1, 9, 2, 1, 8, 2, 1, 0, 8, 7, 6, 7, 4, 2, 0, 9, 0, 2, 3, 3, 7, 9, 7, 2, 1, 5, 3, 8, 7, 1, 1, 9, 0, 8, 6, 0, 9, 1, 6, 0, 4, 7, 9, 9, 4, 3, 8, 1, 5, 2, 3, 4, 3, 5, 8, 7, 5, 8, 9, 9, 4, 3, 5, 3, 6, 5, 6, 4, 9, 4, 2, 7, 4, 1, 0, 5, 3, 2, 6, 1, 7, 5, 3, 6, 0, 5, 6, 9, 9, 2, 0, 2, 9, 0, 7, 1, 4, 7, 6, 0, 5, 3, 6, 9, 4, 4, 7, 5, 4, 5, 1, 6, 6, 4, 4, 8, 6, 6, 6, 7, 0, 8, 5, 3, 6, 9, 2, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +3,"[7, 1, 9, 5, 7, 0, 3, 9, 8, 5, 8, 2, 0, 3, 3, 0, 6, 4, 8, 6, 8, 1, 8, 9, 7, 4, 8, 6, 7, 5, 6, 6, 2, 1, 6, 5, 1, 4, 8, 4, 1, 7, 9, 6, 9, 2, 2, 5, 0, 3, 5, 1, 9, 6, 0, 0, 8, 6, 7, 7, 1, 7, 5, 1, 5, 5, 8, 9, 1, 0, 3, 6, 0, 0, 5, 4, 4, 4, 0, 7, 9, 8, 3, 3, 5, 7, 2, 0, 6, 4, 9, 5, 6, 3, 7, 3, 3, 0, 4, 3, 9, 4, 0, 8, 9, 5, 8, 7, 0, 9, 4, 3, 2, 2, 4, 6, 9, 9, 8, 9, 2, 4, 8, 1, 2, 5, 7, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +4,"[7, 8, 2, 4, 1, 1, 3, 0, 0, 8, 4, 3, 0, 3, 4, 1, 6, 3, 4, 0, 7, 1, 6, 5, 8, 0, 8, 3, 6, 1, 2, 4, 5, 2, 2, 9, 0, 7, 3, 3, 6, 2, 0, 7, 8, 8, 1, 5, 9, 5, 0, 8, 0, 2, 0, 9, 7, 1, 6, 4, 5, 3, 7, 1, 2, 2, 9, 1, 5, 0, 1, 8, 9, 5, 8, 3, 2, 0, 4, 0, 5, 8, 7, 5, 9, 5, 7, 7, 0, 3, 3, 7, 2, 8, 8, 1, 3, 0, 5, 5, 0, 0, 0, 0, 1, 0, 1, 6, 2, 6, 5, 6, 3, 4, 9, 7, 5, 3, 0, 1, 4, 6, 7, 9, 6, 3, 9, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +5,"[9, 8, 1, 2, 7, 7, 6, 0, 6, 1, 8, 2, 8, 9, 4, 8, 2, 3, 0, 5, 4, 1, 0, 3, 0, 7, 0, 1, 0, 2, 0, 9, 4, 2, 2, 7, 7, 7, 6, 1, 3, 8, 7, 2, 7, 9, 8, 1, 0, 3, 7, 2, 0, 4, 8, 5, 1, 6, 3, 4, 9, 4, 3, 3, 2, 2, 7, 7, 6, 1, 1, 7, 8, 6, 4, 6, 7, 6, 8, 3, 4, 8, 2, 5, 4, 8, 1, 3, 0, 8, 4, 3, 1, 3, 1, 2, 9, 8, 4, 2, 2, 8, 1, 5, 5, 3, 7, 4, 6, 3, 1, 0, 0, 4, 1, 0, 4, 7, 4, 9, 2, 1, 9, 0, 8, 0, 1, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +6,"[8, 4, 8, 3, 6, 1, 4, 4, 8, 7, 5, 8, 9, 4, 5, 6, 5, 6, 1, 3, 7, 0, 7, 3, 2, 3, 8, 5, 8, 5, 3, 7, 3, 4, 1, 3, 1, 6, 5, 2, 6, 7, 7, 5, 3, 7, 3, 6, 4, 4, 6, 9, 9, 6, 4, 6, 4, 7, 4, 0, 1, 2, 9, 6, 2, 5, 2, 3, 0, 3, 8, 2, 1, 0, 5, 8, 1, 4, 6, 5, 2, 8, 3, 3, 8, 1, 2, 1, 6, 3, 7, 4, 4, 9, 9, 5, 5, 6, 1, 9, 7, 7, 5, 9, 6, 2, 6, 7, 3, 2, 5, 4, 4, 1, 2, 5, 0, 1, 5, 5, 5, 6, 0, 1, 1, 7, 7, 5]","[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +7,"[3, 8, 0, 5, 5, 7, 4, 2, 9, 2, 8, 4, 2, 1, 9, 4, 6, 5, 2, 9, 1, 2, 1, 4, 0, 7, 4, 9, 6, 3, 8, 1, 8, 6, 4, 8, 3, 8, 2, 0, 4, 2, 7, 8, 2, 1, 6, 4, 3, 7, 5, 0, 5, 2, 0, 7, 7, 0, 2, 8, 0, 7, 0, 4, 2, 6, 3, 0, 0, 3, 0, 7, 3, 4, 9, 6, 7, 4, 5, 1, 7, 3, 1, 8, 4, 3, 5, 1, 8, 9, 8, 8, 4, 4, 9, 5, 9, 4, 9, 1, 9, 3, 3, 0, 5, 3, 8, 3, 3, 7, 6, 5, 4, 6, 1, 0, 1, 3, 7, 8, 4, 8, 5, 4, 4, 2, 9, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +8,"[6, 2, 6, 9, 5, 4, 5, 2, 7, 3, 4, 0, 7, 8, 5, 2, 5, 0, 7, 7, 5, 5, 9, 9, 1, 8, 9, 1, 0, 3, 4, 6, 2, 6, 0, 6, 0, 2, 2, 3, 5, 9, 5, 7, 4, 2, 4, 5, 2, 2, 5, 0, 9, 7, 2, 6, 1, 6, 2, 0, 9, 7, 4, 3, 6, 5, 9, 0, 5, 6, 2, 9, 7, 7, 7, 7, 2, 9, 7, 0, 5, 5, 2, 3, 1, 8, 9, 1, 0, 1, 3, 6, 8, 1, 8, 1, 1, 9, 7, 7, 7, 4, 9, 7, 9, 4, 8, 0, 7, 3, 6, 8, 6, 6, 8, 5, 5, 5, 8, 2, 7, 1, 1, 5, 0, 7, 2, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +9,"[3, 7, 3, 8, 0, 7, 7, 7, 6, 5, 3, 8, 4, 0, 2, 1, 1, 2, 0, 7, 2, 5, 9, 3, 0, 7, 1, 2, 7, 1, 2, 2, 5, 6, 2, 3, 4, 8, 5, 8, 6, 4, 5, 9, 4, 6, 2, 3, 2, 5, 0, 0, 3, 6, 9, 4, 8, 4, 3, 6, 4, 2, 0, 3, 9, 3, 2, 2, 5, 6, 0, 1, 4, 0, 3, 3, 7, 9, 8, 6, 9, 6, 7, 1, 2, 6, 5, 9, 6, 9, 0, 2, 9, 6, 2, 3, 6, 0, 5, 1, 2, 0, 4, 0, 8, 3, 9, 4, 3, 6, 0, 3, 9, 7, 3, 6, 1, 0, 6, 0, 4, 4, 5, 8, 4, 9, 8, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +10,"[3, 5, 9, 2, 0, 5, 0, 6, 6, 4, 8, 0, 2, 7, 8, 9, 3, 6, 7, 8, 6, 1, 3, 5, 8, 8, 0, 5, 7, 2, 7, 0, 9, 1, 4, 8, 9, 3, 7, 3, 4, 7, 3, 1, 3, 3, 3, 0, 3, 2, 5, 6, 0, 6, 5, 8, 7, 5, 9, 7, 4, 8, 3, 1, 5, 0, 5, 0, 8, 5, 1, 3, 8, 9, 1, 6, 2, 2, 8, 4, 9, 2, 2, 2, 8, 4, 9, 8, 0, 7, 5, 3, 9, 7, 9, 1, 7, 3, 7, 7, 6, 2, 3, 6, 8, 4, 8, 9, 6, 4, 2, 2, 0, 1, 7, 5, 4, 7, 3, 6, 6, 6, 9, 9, 2, 4, 6, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +11,"[6, 6, 7, 8, 6, 9, 0, 9, 4, 2, 9, 0, 0, 3, 8, 3, 2, 3, 1, 7, 9, 8, 8, 5, 4, 7, 2, 6, 4, 3, 4, 0, 2, 6, 4, 5, 6, 6, 1, 3, 1, 0, 9, 6, 1, 5, 1, 5, 3, 5, 6, 9, 5, 1, 8, 8, 0, 9, 1, 5, 5, 7, 2, 3, 9, 1, 2, 5, 4, 4, 8, 2, 1, 2, 4, 6, 4, 5, 3, 3, 7, 4, 8, 4, 2, 2, 3, 7, 2, 9, 4, 8, 2, 3, 3, 0, 1, 5, 3, 8, 1, 9, 9, 0, 9, 0, 5, 8, 3, 2, 5, 8, 4, 9, 0, 9, 4, 8, 6, 0, 4, 3, 2, 2, 1, 0, 2, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +12,"[6, 5, 3, 7, 0, 7, 6, 1, 8, 8, 3, 3, 3, 2, 8, 9, 6, 9, 6, 2, 0, 4, 6, 5, 5, 9, 5, 6, 0, 6, 8, 6, 8, 1, 0, 5, 5, 7, 7, 6, 9, 9, 2, 5, 8, 1, 9, 9, 7, 9, 7, 0, 8, 1, 6, 8, 4, 7, 0, 8, 6, 8, 9, 1, 2, 0, 1, 0, 1, 7, 5, 7, 0, 5, 3, 2, 5, 6, 1, 4, 2, 4, 7, 0, 8, 3, 1, 6, 4, 5, 2, 6, 5, 2, 4, 7, 1, 3, 4, 5, 5, 9, 3, 0, 3, 0, 0, 1, 3, 7, 0, 0, 2, 2, 1, 2, 7, 9, 2, 0, 2, 2, 8, 1, 4, 4, 6, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +13,"[7, 2, 7, 8, 3, 6, 5, 1, 6, 3, 5, 8, 6, 1, 7, 7, 0, 0, 2, 6, 3, 9, 6, 1, 9, 7, 0, 3, 0, 8, 4, 6, 2, 1, 1, 8, 9, 3, 6, 0, 5, 6, 8, 7, 6, 0, 3, 7, 6, 4, 3, 4, 2, 4, 3, 7, 9, 2, 3, 4, 3, 3, 9, 1, 8, 1, 9, 8, 6, 2, 6, 5, 2, 9, 5, 4, 6, 6, 8, 3, 4, 1, 0, 8, 5, 8, 1, 0, 7, 0, 8, 3, 5, 7, 9, 9, 4, 7, 5, 8, 5, 8, 5, 9, 4, 5, 4, 1, 8, 0, 8, 7, 8, 8, 0, 7, 4, 9, 5, 5, 7, 3, 4, 9, 7, 2, 1, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +14,"[2, 2, 1, 1, 6, 3, 1, 7, 8, 2, 8, 9, 4, 0, 6, 9, 7, 0, 8, 4, 4, 6, 4, 6, 4, 3, 4, 8, 7, 7, 5, 2, 4, 4, 7, 0, 1, 7, 5, 2, 7, 6, 6, 0, 0, 8, 2, 2, 5, 0, 1, 6, 6, 1, 1, 4, 6, 7, 5, 2, 1, 4, 8, 4, 6, 0, 7, 2, 5, 9, 6, 3, 9, 8, 3, 2, 1, 1, 4, 5, 7, 4, 1, 8, 9, 2, 3, 6, 8, 4, 5, 3, 4, 0, 3, 1, 4, 5, 5, 5, 2, 1, 8, 3, 7, 3, 9, 8, 3, 5, 5, 9, 6, 3, 5, 0, 6, 6, 3, 0, 9, 0, 8, 6, 8, 7, 8, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +15,"[7, 8, 9, 1, 0, 4, 1, 9, 0, 5, 3, 4, 0, 1, 9, 4, 7, 0, 6, 7, 8, 2, 1, 5, 9, 0, 5, 5, 7, 7, 6, 6, 6, 4, 6, 7, 4, 2, 3, 5, 8, 7, 3, 5, 7, 0, 1, 7, 8, 4, 8, 2, 1, 5, 0, 2, 4, 3, 1, 6, 5, 6, 0, 0, 8, 3, 0, 9, 0, 5, 7, 2, 6, 5, 9, 7, 3, 0, 2, 6, 0, 8, 7, 9, 5, 0, 8, 8, 4, 3, 4, 6, 1, 1, 5, 3, 8, 9, 9, 0, 9, 1, 4, 0, 4, 2, 6, 2, 4, 6, 6, 3, 9, 7, 4, 1, 9, 9, 7, 6, 9, 2, 4, 9, 7, 6, 8, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +16,"[6, 4, 5, 9, 2, 7, 5, 7, 6, 5, 0, 0, 2, 0, 7, 9, 5, 7, 5, 7, 9, 0, 4, 7, 4, 3, 8, 8, 0, 5, 4, 6, 6, 9, 4, 1, 2, 0, 7, 2, 8, 0, 4, 2, 0, 0, 9, 9, 0, 2, 3, 9, 3, 4, 7, 0, 9, 1, 0, 5, 5, 8, 2, 6, 1, 6, 3, 3, 8, 8, 6, 5, 4, 0, 7, 2, 4, 9, 6, 4, 3, 9, 4, 9, 9, 4, 4, 7, 5, 1, 8, 8, 3, 6, 0, 9, 6, 0, 1, 4, 0, 4, 3, 6, 0, 8, 5, 4, 7, 6, 1, 5, 2, 2, 3, 4, 5, 2, 4, 3, 3, 1, 9, 8, 6, 7, 7, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +17,"[8, 3, 0, 2, 5, 3, 6, 1, 9, 9, 6, 6, 7, 7, 6, 4, 1, 9, 9, 9, 2, 5, 1, 4, 8, 0, 7, 6, 4, 2, 0, 0, 4, 1, 1, 2, 3, 2, 6, 7, 1, 1, 2, 1, 0, 9, 1, 0, 5, 2, 0, 2, 7, 7, 8, 1, 3, 8, 5, 0, 1, 4, 5, 5, 4, 4, 6, 1, 0, 7, 5, 4, 6, 0, 2, 9, 1, 7, 5, 5, 3, 2, 4, 2, 4, 5, 7, 1, 8, 4, 1, 2, 0, 5, 8, 7, 3, 2, 3, 6, 7, 0, 2, 9, 1, 8, 5, 5, 3, 5, 1, 0, 7, 0, 4, 3, 5, 4, 5, 5, 5, 7, 9, 0, 9, 0, 4, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +18,"[5, 0, 0, 0, 3, 6, 0, 8, 0, 9, 2, 8, 4, 1, 8, 7, 3, 3, 5, 6, 7, 1, 7, 7, 0, 1, 8, 4, 8, 7, 6, 6, 0, 6, 3, 9, 0, 3, 4, 4, 5, 4, 5, 8, 2, 7, 6, 3, 9, 6, 1, 9, 3, 0, 3, 5, 9, 2, 1, 7, 1, 9, 2, 9, 8, 6, 7, 1, 3, 3, 5, 8, 8, 8, 9, 6, 8, 2, 1, 6, 5, 3, 4, 8, 5, 6, 0, 9, 5, 0, 0, 1, 0, 4, 7, 4, 3, 4, 5, 3, 3, 0, 9, 0, 5, 3, 2, 3, 7, 9, 2, 9, 4, 4, 6, 1, 3, 6, 1, 4, 0, 0, 5, 2, 0, 7, 8, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +19,"[7, 3, 7, 6, 5, 5, 4, 3, 6, 2, 9, 8, 9, 5, 9, 1, 9, 1, 5, 2, 4, 8, 8, 6, 8, 5, 5, 0, 1, 6, 2, 8, 0, 1, 8, 4, 6, 6, 6, 3, 0, 6, 4, 4, 4, 2, 8, 4, 8, 9, 8, 7, 0, 9, 2, 5, 5, 6, 2, 2, 1, 3, 4, 3, 0, 7, 5, 6, 3, 8, 8, 1, 2, 2, 6, 8, 9, 9, 8, 8, 5, 7, 9, 1, 3, 4, 5, 1, 0, 1, 9, 3, 7, 5, 1, 2, 7, 7, 2, 2, 1, 8, 3, 4, 5, 6, 1, 0, 2, 9, 6, 3, 3, 7, 1, 0, 9, 6, 8, 3, 8, 3, 5, 5, 6, 6, 5, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +20,"[0, 1, 1, 4, 0, 1, 8, 4, 1, 3, 2, 7, 9, 8, 2, 9, 7, 2, 4, 5, 4, 7, 9, 4, 6, 9, 1, 5, 9, 6, 7, 6, 1, 5, 0, 5, 4, 3, 6, 9, 0, 9, 3, 8, 9, 2, 7, 3, 1, 5, 0, 5, 6, 7, 5, 2, 2, 2, 8, 1, 3, 8, 0, 2, 3, 0, 0, 9, 7, 4, 2, 8, 3, 5, 3, 0, 6, 8, 2, 0, 1, 9, 9, 7, 7, 3, 2, 7, 9, 5, 9, 7, 6, 4, 1, 6, 8, 5, 8, 8, 3, 1, 9, 2, 3, 5, 4, 5, 6, 5, 2, 6, 6, 6, 6, 5, 2, 9, 1, 7, 3, 8, 8, 1, 1, 8, 5, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +21,"[0, 1, 3, 2, 6, 4, 7, 5, 8, 7, 1, 1, 0, 1, 3, 2, 0, 1, 4, 2, 9, 8, 8, 8, 7, 8, 8, 4, 3, 1, 8, 1, 7, 0, 0, 2, 7, 1, 3, 2, 8, 2, 6, 4, 7, 7, 9, 6, 3, 6, 1, 8, 2, 2, 1, 1, 7, 4, 9, 9, 1, 5, 9, 3, 6, 5, 7, 3, 1, 1, 3, 6, 8, 5, 5, 0, 5, 7, 4, 0, 9, 3, 4, 5, 2, 8, 6, 0, 2, 6, 1, 7, 6, 5, 0, 2, 9, 5, 4, 4, 8, 3, 7, 6, 4, 3, 8, 6, 8, 4, 2, 6, 3, 5, 5, 5, 9, 6, 8, 9, 2, 1, 0, 8, 6, 7, 0, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +22,"[2, 1, 3, 2, 7, 6, 6, 9, 1, 9, 2, 3, 4, 1, 3, 6, 7, 6, 5, 2, 0, 9, 3, 5, 4, 5, 7, 7, 1, 8, 6, 2, 8, 3, 1, 4, 7, 8, 0, 5, 8, 0, 9, 0, 0, 2, 9, 2, 3, 1, 6, 0, 9, 3, 2, 2, 7, 0, 5, 8, 2, 3, 7, 2, 4, 5, 4, 1, 9, 5, 8, 6, 6, 6, 4, 7, 7, 0, 9, 5, 1, 3, 9, 8, 5, 6, 7, 7, 1, 4, 2, 0, 2, 7, 5, 0, 2, 5, 8, 5, 6, 8, 7, 7, 1, 7, 2, 8, 3, 7, 9, 1, 6, 3, 5, 2, 9, 5, 5, 4, 7, 4, 2, 8, 1, 1, 9, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +23,"[2, 6, 6, 7, 3, 1, 6, 0, 1, 8, 8, 9, 8, 6, 7, 0, 3, 0, 6, 8, 3, 5, 0, 0, 8, 7, 6, 0, 6, 6, 1, 9, 4, 2, 3, 3, 1, 2, 5, 9, 1, 0, 1, 5, 0, 6, 3, 1, 3, 7, 5, 2, 1, 8, 0, 5, 3, 4, 8, 3, 5, 4, 9, 5, 1, 2, 7, 7, 3, 6, 2, 5, 7, 4, 5, 4, 2, 6, 6, 9, 4, 9, 1, 1, 0, 6, 4, 4, 4, 4, 8, 3, 6, 1, 0, 2, 5, 1, 5, 3, 0, 8, 2, 2, 7, 0, 9, 6, 1, 5, 7, 1, 6, 7, 5, 6, 0, 8, 9, 2, 7, 2, 9, 2, 3, 2, 9, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +24,"[3, 6, 6, 1, 3, 0, 7, 7, 8, 0, 2, 0, 3, 0, 6, 0, 9, 8, 5, 3, 4, 3, 9, 6, 2, 4, 8, 9, 3, 1, 3, 9, 9, 0, 0, 9, 8, 9, 4, 9, 6, 6, 9, 0, 0, 0, 0, 1, 1, 1, 2, 5, 7, 2, 5, 2, 6, 9, 4, 8, 9, 2, 4, 7, 1, 9, 9, 2, 8, 3, 0, 6, 6, 4, 6, 7, 4, 0, 3, 5, 8, 8, 0, 1, 4, 7, 6, 3, 6, 2, 3, 4, 0, 1, 6, 9, 4, 6, 3, 5, 5, 1, 1, 9, 7, 8, 4, 8, 6, 9, 4, 6, 0, 5, 6, 3, 4, 3, 4, 3, 0, 6, 3, 6, 1, 7, 6, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +25,"[8, 0, 1, 9, 8, 5, 3, 2, 1, 6, 0, 2, 1, 7, 0, 7, 2, 9, 0, 1, 3, 5, 3, 6, 8, 2, 9, 3, 1, 7, 9, 0, 0, 2, 9, 7, 9, 8, 7, 9, 3, 3, 9, 5, 3, 8, 0, 3, 3, 5, 0, 6, 3, 0, 9, 6, 4, 3, 4, 4, 9, 4, 7, 0, 2, 6, 3, 4, 6, 0, 7, 5, 1, 9, 3, 1, 2, 5, 0, 9, 6, 5, 0, 7, 6, 6, 9, 9, 0, 6, 4, 8, 9, 0, 8, 3, 1, 1, 6, 9, 3, 0, 4, 8, 5, 1, 5, 9, 2, 1, 2, 6, 2, 1, 2, 2, 1, 9, 9, 3, 6, 5, 6, 1, 1, 7, 1, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +26,"[1, 8, 6, 7, 7, 5, 0, 5, 5, 8, 8, 3, 8, 4, 4, 7, 8, 3, 0, 0, 8, 4, 8, 5, 9, 6, 3, 4, 1, 5, 1, 1, 7, 2, 6, 6, 0, 4, 0, 4, 6, 6, 1, 8, 0, 4, 5, 3, 6, 7, 1, 7, 5, 5, 3, 9, 8, 3, 7, 6, 3, 1, 0, 6, 0, 6, 9, 9, 3, 6, 0, 1, 4, 8, 0, 8, 4, 8, 8, 0, 1, 0, 6, 6, 8, 6, 1, 8, 2, 8, 4, 0, 6, 0, 0, 4, 7, 4, 3, 8, 7, 1, 4, 6, 7, 6, 2, 7, 5, 3, 8, 7, 3, 0, 5, 0, 9, 2, 6, 3, 4, 9, 3, 0, 2, 3, 2, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +27,"[2, 9, 2, 1, 4, 1, 3, 7, 5, 4, 3, 7, 4, 6, 0, 5, 8, 5, 6, 8, 5, 7, 5, 9, 5, 4, 4, 2, 2, 3, 8, 3, 4, 6, 1, 7, 3, 4, 4, 2, 6, 2, 1, 4, 7, 2, 6, 1, 5, 3, 2, 0, 0, 1, 6, 3, 8, 7, 2, 4, 5, 5, 5, 5, 9, 4, 5, 0, 2, 2, 8, 7, 7, 7, 8, 2, 6, 4, 7, 8, 4, 8, 8, 2, 0, 6, 9, 6, 9, 9, 8, 0, 2, 4, 3, 4, 5, 2, 3, 7, 5, 8, 7, 8, 7, 5, 5, 1, 4, 7, 0, 2, 2, 6, 0, 0, 4, 1, 7, 0, 5, 4, 9, 6, 3, 3, 8, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +28,"[5, 2, 5, 3, 0, 1, 7, 3, 5, 8, 6, 9, 3, 0, 6, 9, 6, 0, 5, 0, 2, 1, 4, 5, 2, 4, 7, 4, 3, 6, 8, 6, 5, 8, 9, 1, 6, 9, 5, 3, 1, 9, 9, 1, 0, 1, 4, 9, 8, 8, 0, 2, 8, 6, 9, 3, 3, 0, 7, 2, 8, 4, 0, 0, 0, 3, 2, 2, 5, 6, 6, 4, 6, 9, 9, 3, 8, 5, 4, 7, 2, 3, 6, 0, 5, 1, 2, 9, 9, 8, 6, 1, 4, 7, 7, 4, 7, 6, 1, 3, 7, 9, 4, 2, 4, 2, 0, 3, 8, 2, 9, 8, 8, 5, 7, 5, 6, 5, 4, 3, 5, 6, 0, 5, 1, 8, 6, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +29,"[1, 9, 2, 4, 6, 8, 4, 3, 0, 9, 5, 5, 2, 7, 4, 8, 4, 2, 7, 7, 0, 5, 4, 8, 4, 9, 5, 9, 8, 1, 2, 7, 0, 3, 7, 6, 2, 5, 4, 6, 8, 5, 2, 3, 3, 6, 5, 4, 6, 6, 1, 7, 0, 8, 2, 9, 5, 5, 2, 8, 1, 9, 7, 6, 5, 1, 9, 3, 8, 7, 4, 9, 0, 4, 0, 1, 8, 1, 0, 8, 9, 8, 2, 7, 1, 9, 4, 9, 4, 4, 1, 2, 7, 6, 1, 2, 5, 3, 1, 0, 7, 6, 2, 5, 8, 4, 6, 4, 4, 7, 2, 5, 0, 6, 3, 5, 9, 2, 0, 4, 7, 1, 3, 5, 3, 9, 9, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +30,"[5, 7, 0, 3, 2, 8, 8, 1, 8, 3, 0, 7, 7, 6, 2, 9, 2, 2, 3, 5, 3, 8, 0, 7, 8, 7, 6, 1, 7, 0, 7, 1, 2, 1, 5, 0, 6, 4, 6, 9, 5, 4, 1, 2, 2, 7, 8, 3, 0, 1, 5, 7, 2, 7, 2, 6, 7, 2, 9, 3, 5, 2, 7, 8, 8, 8, 4, 7, 1, 3, 8, 5, 4, 3, 8, 3, 8, 9, 2, 7, 6, 4, 2, 5, 7, 9, 8, 4, 1, 9, 4, 1, 0, 0, 1, 5, 0, 6, 0, 2, 1, 7, 6, 4, 0, 5, 4, 2, 3, 9, 1, 9, 7, 0, 4, 5, 2, 5, 7, 6, 3, 3, 4, 9, 9, 1, 7, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +31,"[8, 9, 6, 2, 7, 7, 8, 6, 9, 9, 2, 6, 0, 8, 4, 1, 5, 6, 6, 3, 9, 9, 5, 7, 4, 1, 2, 4, 0, 4, 7, 2, 0, 0, 3, 5, 0, 4, 0, 3, 7, 3, 9, 8, 2, 5, 4, 0, 2, 5, 3, 3, 7, 5, 8, 1, 6, 7, 0, 0, 9, 0, 5, 0, 6, 6, 5, 1, 6, 9, 6, 6, 1, 8, 7, 3, 7, 2, 2, 0, 7, 9, 2, 7, 9, 5, 4, 3, 2, 3, 0, 7, 9, 4, 1, 6, 8, 4, 2, 6, 9, 6, 4, 8, 0, 0, 4, 9, 3, 4, 7, 2, 1, 7, 2, 9, 0, 1, 2, 5, 8, 4, 1, 4, 0, 5, 5, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +32,"[5, 6, 8, 1, 2, 0, 6, 1, 5, 7, 5, 4, 2, 9, 6, 6, 7, 0, 5, 3, 5, 7, 2, 5, 8, 2, 4, 5, 7, 5, 1, 0, 9, 9, 6, 8, 2, 0, 8, 4, 9, 3, 4, 2, 1, 1, 2, 7, 6, 1, 0, 2, 8, 9, 9, 4, 7, 5, 3, 6, 4, 6, 1, 4, 9, 2, 3, 0, 9, 2, 1, 5, 6, 9, 1, 2, 3, 0, 3, 4, 4, 4, 8, 9, 2, 3, 5, 5, 4, 8, 8, 6, 7, 9, 3, 1, 1, 8, 0, 4, 9, 9, 3, 1, 4, 6, 2, 1, 7, 1, 8, 9, 5, 3, 2, 1, 7, 8, 7, 1, 0, 5, 4, 6, 1, 1, 9, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +33,"[2, 8, 6, 1, 4, 7, 1, 1, 9, 7, 2, 6, 3, 3, 5, 5, 7, 3, 5, 6, 7, 6, 7, 9, 3, 4, 3, 4, 5, 9, 5, 1, 5, 1, 1, 7, 1, 1, 7, 1, 2, 6, 8, 1, 0, 6, 1, 7, 5, 9, 5, 5, 4, 1, 7, 1, 4, 0, 0, 5, 4, 1, 5, 9, 7, 7, 4, 9, 9, 0, 9, 7, 0, 8, 9, 9, 3, 5, 8, 3, 6, 5, 2, 8, 6, 1, 5, 2, 4, 3, 4, 1, 3, 7, 7, 2, 2, 9, 0, 8, 3, 0, 0, 4, 7, 4, 5, 1, 6, 3, 2, 9, 7, 5, 1, 7, 7, 5, 5, 9, 9, 6, 9, 2, 9, 7, 1, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +34,"[8, 4, 4, 5, 8, 1, 9, 7, 1, 8, 7, 5, 4, 5, 9, 4, 3, 7, 3, 1, 5, 1, 9, 7, 8, 2, 4, 1, 8, 1, 4, 9, 4, 8, 4, 7, 8, 1, 3, 0, 4, 8, 5, 0, 4, 2, 5, 4, 5, 2, 3, 6, 3, 2, 5, 9, 6, 9, 7, 7, 2, 3, 1, 8, 2, 1, 2, 0, 1, 2, 0, 7, 8, 3, 5, 1, 4, 3, 0, 9, 7, 4, 6, 2, 1, 2, 1, 5, 4, 8, 2, 6, 7, 9, 8, 9, 0, 4, 9, 2, 5, 4, 1, 7, 5, 5, 1, 7, 5, 9, 0, 9, 1, 4, 4, 6, 5, 9, 4, 2, 6, 8, 8, 1, 3, 7, 5, 5]","[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +35,"[2, 5, 8, 2, 7, 2, 1, 3, 3, 6, 9, 2, 3, 1, 4, 9, 0, 5, 3, 2, 7, 2, 9, 9, 9, 0, 4, 8, 0, 9, 3, 5, 4, 7, 9, 2, 0, 0, 3, 3, 5, 1, 6, 5, 7, 2, 8, 1, 6, 5, 5, 0, 7, 4, 8, 0, 8, 2, 8, 4, 8, 3, 8, 9, 8, 7, 2, 5, 8, 4, 0, 7, 0, 1, 6, 4, 7, 0, 6, 9, 5, 3, 8, 9, 4, 8, 6, 5, 7, 7, 4, 0, 4, 3, 8, 1, 5, 7, 2, 5, 3, 5, 5, 4, 8, 1, 9, 2, 8, 7, 6, 0, 8, 4, 8, 1, 1, 1, 0, 0, 8, 0, 2, 7, 9, 7, 6, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +36,"[7, 7, 5, 9, 4, 9, 5, 3, 5, 1, 9, 7, 3, 7, 7, 2, 1, 0, 2, 6, 3, 3, 4, 0, 7, 7, 2, 5, 0, 3, 4, 0, 6, 5, 5, 1, 8, 4, 4, 8, 7, 3, 1, 8, 0, 8, 1, 6, 9, 7, 5, 6, 5, 4, 2, 1, 8, 2, 6, 6, 1, 6, 9, 7, 5, 9, 5, 7, 8, 4, 3, 9, 5, 0, 8, 6, 0, 3, 6, 3, 8, 4, 9, 8, 8, 1, 6, 5, 3, 7, 1, 0, 7, 5, 0, 4, 0, 6, 4, 2, 9, 8, 4, 1, 3, 5, 7, 3, 7, 7, 3, 9, 1, 6, 9, 1, 9, 9, 7, 2, 8, 2, 6, 5, 6, 4, 3, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +37,"[1, 0, 9, 2, 1, 0, 3, 4, 1, 6, 3, 6, 0, 0, 9, 2, 9, 0, 3, 3, 6, 6, 8, 8, 0, 4, 6, 5, 4, 1, 8, 5, 1, 2, 0, 7, 2, 0, 5, 8, 8, 0, 3, 7, 5, 7, 6, 4, 1, 5, 0, 9, 4, 9, 1, 7, 9, 4, 1, 1, 3, 8, 7, 5, 7, 0, 9, 5, 9, 9, 6, 3, 4, 2, 4, 9, 4, 8, 2, 5, 5, 9, 7, 9, 7, 8, 6, 6, 0, 9, 7, 1, 6, 0, 9, 3, 2, 0, 4, 1, 8, 8, 7, 4, 1, 7, 3, 0, 4, 1, 8, 7, 8, 9, 0, 7, 6, 7, 3, 6, 6, 4, 7, 1, 1, 6, 5, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +38,"[1, 7, 0, 4, 9, 9, 0, 8, 1, 0, 3, 8, 1, 3, 5, 5, 6, 5, 1, 7, 3, 0, 0, 9, 5, 3, 9, 9, 6, 6, 2, 5, 1, 1, 9, 3, 0, 2, 8, 4, 9, 2, 5, 9, 4, 0, 6, 2, 6, 6, 1, 9, 6, 3, 0, 7, 8, 5, 3, 4, 1, 3, 3, 9, 7, 3, 5, 7, 3, 9, 7, 7, 2, 5, 1, 9, 0, 9, 3, 0, 3, 1, 3, 1, 7, 4, 1, 0, 7, 1, 4, 7, 1, 8, 7, 8, 6, 5, 2, 7, 3, 8, 2, 7, 3, 4, 3, 1, 5, 0, 1, 4, 9, 2, 9, 3, 3, 6, 6, 5, 8, 5, 1, 9, 1, 3, 2, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +39,"[8, 6, 2, 4, 6, 7, 8, 4, 0, 4, 6, 7, 8, 5, 5, 7, 6, 4, 3, 6, 3, 7, 9, 7, 4, 2, 4, 8, 1, 3, 6, 9, 8, 4, 2, 2, 2, 0, 5, 8, 4, 3, 1, 3, 1, 7, 7, 0, 6, 6, 0, 5, 1, 0, 1, 0, 5, 8, 4, 6, 7, 3, 0, 9, 2, 6, 6, 3, 0, 1, 1, 5, 3, 8, 8, 8, 4, 0, 6, 1, 6, 6, 3, 5, 0, 8, 6, 0, 2, 9, 4, 2, 7, 5, 2, 6, 2, 6, 0, 9, 0, 6, 0, 0, 5, 6, 3, 7, 4, 3, 1, 4, 0, 3, 3, 2, 2, 5, 7, 6, 0, 0, 2, 5, 0, 5, 9, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +40,"[8, 6, 0, 6, 5, 8, 9, 7, 9, 3, 8, 8, 0, 8, 0, 7, 7, 4, 5, 1, 7, 7, 4, 9, 0, 7, 5, 8, 3, 5, 8, 7, 2, 9, 9, 0, 1, 8, 0, 6, 5, 3, 3, 8, 0, 6, 7, 2, 6, 4, 9, 5, 0, 4, 1, 5, 2, 0, 5, 5, 7, 6, 7, 5, 0, 8, 9, 0, 1, 9, 3, 1, 8, 6, 2, 5, 7, 1, 1, 0, 3, 7, 3, 1, 3, 5, 6, 4, 5, 8, 7, 4, 0, 1, 9, 2, 8, 5, 7, 7, 7, 6, 7, 0, 0, 0, 7, 0, 4, 6, 2, 6, 5, 9, 8, 4, 8, 8, 1, 0, 7, 8, 7, 9, 9, 2, 0, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +41,"[5, 1, 8, 2, 8, 4, 4, 5, 0, 7, 5, 3, 3, 6, 1, 1, 5, 9, 4, 7, 3, 1, 0, 0, 4, 9, 8, 5, 0, 8, 8, 7, 9, 0, 3, 4, 8, 4, 7, 4, 2, 4, 1, 9, 4, 8, 5, 8, 6, 0, 1, 8, 6, 3, 4, 5, 0, 2, 8, 0, 4, 4, 9, 5, 2, 8, 7, 4, 9, 6, 2, 3, 8, 7, 1, 0, 8, 0, 1, 1, 0, 0, 2, 1, 1, 2, 8, 8, 0, 1, 3, 5, 0, 5, 5, 1, 1, 5, 3, 4, 3, 7, 3, 0, 0, 1, 3, 4, 1, 9, 4, 6, 7, 1, 8, 3, 4, 7, 0, 3, 3, 2, 7, 5, 7, 2, 7, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +42,"[5, 0, 6, 3, 6, 5, 5, 1, 0, 8, 1, 8, 8, 0, 0, 6, 5, 9, 1, 6, 5, 8, 1, 9, 7, 2, 5, 5, 4, 0, 7, 9, 3, 5, 1, 5, 9, 6, 8, 4, 3, 1, 6, 4, 5, 0, 2, 2, 9, 9, 0, 1, 6, 6, 8, 6, 0, 2, 9, 7, 7, 0, 2, 7, 0, 0, 1, 3, 0, 3, 7, 4, 6, 6, 6, 5, 0, 0, 5, 3, 9, 6, 3, 5, 3, 3, 9, 0, 4, 4, 2, 4, 0, 3, 9, 5, 8, 7, 4, 0, 7, 6, 4, 7, 1, 6, 3, 3, 2, 4, 5, 0, 1, 5, 7, 3, 4, 3, 8, 6, 5, 8, 9, 7, 2, 3, 2, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +43,"[4, 1, 0, 8, 1, 0, 4, 2, 0, 8, 8, 7, 8, 0, 2, 6, 6, 8, 3, 3, 6, 0, 5, 5, 3, 0, 9, 9, 6, 7, 8, 4, 2, 8, 5, 0, 9, 4, 4, 5, 8, 6, 4, 1, 1, 6, 5, 4, 6, 9, 6, 4, 3, 2, 5, 4, 3, 8, 1, 7, 5, 9, 4, 2, 0, 5, 9, 0, 3, 6, 1, 3, 6, 8, 5, 4, 4, 6, 6, 1, 7, 1, 5, 1, 1, 0, 5, 5, 3, 8, 7, 8, 8, 5, 3, 2, 1, 1, 7, 7, 4, 0, 8, 7, 6, 2, 9, 2, 6, 8, 8, 1, 6, 8, 3, 2, 2, 1, 3, 2, 9, 5, 1, 8, 8, 0, 4, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +44,"[6, 2, 0, 8, 6, 4, 3, 8, 9, 4, 7, 0, 7, 7, 6, 5, 1, 0, 4, 1, 5, 9, 5, 2, 1, 6, 9, 9, 1, 3, 6, 0, 2, 7, 4, 8, 8, 7, 1, 2, 5, 4, 8, 8, 8, 1, 2, 7, 1, 4, 8, 5, 8, 4, 0, 7, 5, 8, 6, 9, 6, 6, 1, 6, 0, 0, 7, 9, 2, 1, 0, 2, 9, 4, 3, 9, 8, 5, 0, 3, 1, 5, 6, 0, 2, 4, 1, 7, 1, 9, 0, 6, 9, 7, 9, 2, 9, 1, 1, 8, 4, 1, 7, 9, 6, 0, 9, 3, 8, 0, 7, 3, 1, 0, 2, 0, 7, 9, 3, 6, 4, 2, 3, 1, 3, 0, 5, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +45,"[3, 9, 5, 4, 8, 0, 0, 9, 5, 7, 3, 2, 7, 1, 3, 8, 4, 9, 9, 3, 2, 1, 5, 6, 2, 1, 8, 2, 6, 6, 6, 4, 0, 8, 5, 0, 8, 2, 2, 5, 6, 3, 2, 5, 2, 1, 9, 6, 0, 8, 1, 0, 7, 6, 9, 2, 7, 8, 6, 1, 2, 3, 1, 8, 7, 1, 8, 3, 6, 7, 1, 8, 1, 3, 6, 3, 1, 3, 6, 8, 7, 4, 7, 2, 7, 2, 1, 6, 9, 0, 2, 6, 9, 2, 0, 7, 6, 5, 8, 6, 2, 5, 2, 9, 7, 7, 6, 1, 4, 3, 3, 4, 3, 1, 0, 2, 6, 8, 4, 4, 2, 2, 6, 3, 4, 8, 2, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +46,"[1, 6, 0, 4, 0, 8, 3, 5, 4, 9, 5, 9, 2, 0, 9, 5, 5, 0, 1, 3, 6, 7, 6, 6, 5, 0, 3, 0, 4, 3, 1, 1, 3, 6, 4, 2, 0, 2, 5, 1, 2, 5, 0, 9, 9, 3, 0, 5, 8, 3, 2, 0, 3, 3, 2, 9, 9, 0, 5, 5, 5, 7, 0, 5, 0, 9, 8, 8, 9, 5, 7, 1, 5, 8, 4, 0, 8, 2, 9, 0, 7, 9, 6, 6, 1, 6, 4, 1, 6, 8, 2, 3, 0, 2, 6, 9, 3, 2, 5, 3, 9, 0, 9, 4, 5, 7, 8, 4, 5, 4, 6, 6, 2, 8, 2, 3, 8, 1, 5, 1, 3, 4, 8, 2, 0, 6, 7, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +47,"[2, 4, 2, 5, 1, 5, 7, 3, 0, 5, 5, 2, 0, 5, 1, 7, 5, 8, 5, 5, 1, 4, 9, 9, 7, 7, 7, 4, 5, 9, 3, 8, 6, 8, 7, 2, 8, 3, 6, 9, 1, 2, 1, 2, 7, 7, 6, 7, 2, 2, 1, 8, 7, 3, 7, 3, 8, 0, 6, 3, 9, 0, 1, 4, 7, 5, 4, 8, 5, 4, 5, 1, 7, 4, 7, 4, 0, 5, 8, 8, 5, 0, 2, 5, 8, 9, 6, 6, 9, 7, 5, 7, 8, 4, 6, 6, 5, 2, 4, 8, 9, 2, 6, 0, 0, 3, 2, 4, 0, 9, 1, 5, 9, 8, 3, 8, 7, 0, 3, 2, 6, 5, 2, 3, 4, 4, 3, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +48,"[0, 1, 4, 3, 2, 6, 2, 7, 6, 4, 4, 9, 6, 8, 6, 2, 7, 8, 6, 4, 1, 0, 2, 4, 7, 3, 9, 4, 7, 0, 9, 3, 4, 5, 2, 6, 4, 0, 9, 1, 1, 6, 5, 4, 9, 8, 3, 8, 6, 9, 3, 6, 0, 3, 5, 5, 5, 9, 0, 3, 9, 2, 3, 5, 5, 7, 1, 7, 2, 7, 1, 0, 6, 8, 4, 1, 1, 8, 5, 5, 1, 2, 0, 6, 5, 0, 4, 2, 6, 8, 3, 3, 8, 9, 8, 6, 4, 3, 5, 3, 1, 1, 2, 6, 5, 5, 8, 1, 3, 1, 0, 2, 0, 4, 9, 4, 3, 5, 7, 4, 7, 9, 4, 1, 3, 4, 4, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +49,"[2, 2, 0, 6, 0, 1, 9, 3, 8, 4, 7, 2, 6, 1, 5, 7, 5, 9, 7, 1, 3, 3, 3, 1, 1, 7, 4, 0, 7, 9, 1, 4, 9, 6, 3, 1, 1, 6, 3, 7, 1, 1, 9, 4, 0, 7, 1, 1, 1, 2, 3, 8, 4, 9, 7, 1, 8, 2, 7, 1, 2, 1, 6, 0, 7, 5, 8, 1, 8, 5, 2, 5, 3, 8, 0, 1, 0, 9, 5, 7, 1, 8, 7, 1, 9, 5, 3, 7, 0, 4, 0, 5, 9, 6, 7, 1, 2, 2, 0, 8, 2, 3, 7, 1, 9, 4, 4, 6, 9, 0, 6, 4, 3, 9, 3, 8, 6, 5, 3, 3, 6, 7, 2, 8, 4, 2, 8, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +50,"[4, 3, 5, 1, 3, 9, 0, 5, 0, 1, 2, 4, 4, 0, 5, 3, 1, 1, 0, 0, 6, 8, 3, 9, 0, 8, 8, 4, 8, 3, 2, 6, 7, 9, 0, 4, 9, 5, 6, 0, 7, 8, 0, 3, 6, 5, 4, 0, 7, 1, 7, 5, 5, 6, 2, 3, 7, 4, 2, 3, 6, 0, 8, 2, 6, 2, 0, 4, 1, 4, 8, 9, 7, 0, 6, 2, 6, 6, 9, 2, 0, 6, 8, 1, 6, 8, 7, 1, 9, 5, 0, 3, 8, 5, 8, 8, 4, 0, 4, 1, 1, 0, 5, 9, 0, 7, 7, 7, 8, 6, 8, 9, 2, 8, 1, 5, 0, 0, 3, 9, 2, 3, 7, 6, 6, 8, 9, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +51,"[7, 3, 0, 3, 5, 8, 5, 1, 4, 8, 1, 2, 4, 7, 9, 3, 9, 2, 2, 0, 6, 2, 1, 0, 8, 2, 8, 2, 1, 5, 1, 8, 0, 9, 7, 9, 1, 7, 9, 9, 2, 4, 2, 1, 8, 6, 1, 3, 5, 4, 8, 6, 5, 7, 4, 3, 4, 4, 7, 9, 9, 4, 1, 6, 7, 6, 5, 1, 5, 1, 0, 5, 9, 8, 2, 1, 4, 1, 2, 7, 1, 8, 5, 7, 9, 5, 8, 5, 6, 7, 7, 4, 3, 7, 1, 4, 4, 5, 7, 4, 0, 7, 9, 6, 0, 4, 5, 4, 1, 9, 1, 1, 8, 4, 1, 3, 5, 3, 1, 5, 0, 2, 3, 8, 1, 7, 5, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +52,"[6, 0, 1, 9, 9, 9, 6, 1, 2, 1, 1, 8, 2, 3, 2, 8, 8, 1, 7, 5, 3, 5, 0, 7, 8, 5, 3, 5, 1, 8, 0, 9, 0, 3, 4, 3, 4, 0, 6, 5, 0, 0, 1, 0, 4, 6, 3, 3, 5, 3, 5, 6, 0, 4, 7, 1, 1, 5, 0, 9, 7, 8, 2, 6, 8, 5, 6, 6, 3, 5, 1, 3, 8, 3, 3, 4, 7, 6, 4, 4, 2, 6, 2, 3, 0, 3, 4, 7, 4, 2, 7, 6, 9, 4, 5, 7, 8, 7, 5, 6, 6, 3, 3, 5, 0, 8, 3, 1, 1, 9, 7, 7, 8, 5, 4, 3, 0, 3, 1, 6, 1, 3, 1, 1, 5, 5, 2, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]" +53,"[9, 1, 7, 4, 1, 4, 1, 6, 7, 5, 4, 0, 4, 2, 5, 9, 6, 0, 4, 2, 1, 7, 5, 1, 8, 9, 1, 7, 3, 3, 4, 4, 7, 4, 2, 6, 5, 2, 6, 5, 3, 4, 9, 7, 5, 7, 5, 9, 4, 2, 7, 3, 2, 8, 3, 4, 6, 6, 0, 7, 7, 1, 2, 8, 9, 6, 4, 0, 4, 4, 7, 5, 6, 4, 4, 2, 2, 4, 8, 0, 7, 3, 4, 0, 3, 7, 0, 1, 4, 7, 0, 8, 5, 3, 2, 7, 2, 3, 2, 6, 8, 9, 1, 8, 0, 2, 5, 5, 8, 6, 8, 7, 2, 9, 7, 6, 1, 1, 2, 3, 2, 8, 9, 4, 2, 5, 5, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +54,"[4, 2, 7, 0, 0, 1, 6, 5, 3, 4, 7, 8, 5, 9, 6, 3, 4, 5, 1, 2, 0, 9, 7, 7, 9, 4, 3, 8, 1, 2, 0, 3, 0, 8, 1, 1, 8, 1, 7, 2, 9, 2, 8, 5, 6, 9, 2, 7, 7, 5, 1, 6, 0, 7, 6, 8, 2, 0, 1, 7, 3, 4, 5, 6, 0, 3, 4, 4, 9, 0, 5, 7, 2, 4, 7, 7, 5, 4, 1, 8, 0, 7, 6, 4, 4, 1, 7, 9, 3, 4, 3, 3, 1, 0, 2, 6, 0, 6, 2, 2, 4, 5, 8, 4, 2, 7, 2, 5, 9, 0, 9, 1, 7, 7, 7, 3, 2, 8, 2, 5, 5, 9, 8, 7, 8, 2, 7, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +55,"[5, 9, 3, 4, 4, 4, 2, 8, 1, 5, 0, 4, 9, 3, 7, 0, 6, 9, 8, 6, 9, 6, 5, 2, 3, 8, 9, 3, 0, 3, 8, 7, 2, 0, 8, 9, 1, 9, 6, 2, 7, 9, 9, 7, 8, 4, 3, 4, 3, 9, 9, 2, 9, 4, 7, 1, 7, 1, 4, 9, 0, 8, 9, 2, 9, 1, 6, 8, 7, 9, 5, 1, 3, 3, 6, 4, 2, 9, 4, 6, 1, 6, 1, 5, 6, 8, 8, 7, 4, 7, 3, 8, 2, 7, 7, 2, 2, 3, 8, 5, 4, 7, 2, 8, 6, 0, 4, 0, 5, 3, 2, 9, 2, 2, 9, 7, 2, 6, 0, 0, 5, 3, 1, 1, 5, 3, 4, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +56,"[9, 8, 8, 8, 3, 4, 0, 1, 5, 7, 1, 6, 2, 4, 6, 4, 8, 5, 8, 7, 3, 8, 7, 4, 4, 2, 0, 8, 6, 7, 3, 0, 4, 8, 3, 8, 6, 9, 5, 6, 2, 4, 7, 4, 1, 0, 5, 0, 5, 7, 5, 7, 4, 1, 6, 1, 3, 4, 0, 7, 4, 5, 2, 2, 5, 7, 4, 3, 7, 9, 5, 6, 3, 4, 5, 7, 1, 8, 0, 9, 0, 6, 5, 5, 1, 0, 4, 0, 3, 6, 6, 5, 9, 0, 9, 0, 4, 7, 3, 7, 0, 9, 3, 0, 8, 1, 8, 7, 8, 8, 3, 9, 0, 2, 3, 7, 7, 6, 5, 9, 2, 0, 9, 1, 3, 0, 4, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +57,"[6, 1, 5, 5, 1, 7, 0, 1, 8, 7, 9, 7, 2, 3, 3, 1, 9, 9, 3, 3, 1, 9, 1, 0, 0, 0, 3, 4, 2, 8, 6, 1, 3, 5, 8, 5, 2, 1, 0, 4, 8, 3, 7, 9, 4, 6, 9, 1, 5, 3, 6, 7, 0, 7, 0, 3, 3, 8, 2, 4, 9, 9, 5, 1, 3, 2, 4, 8, 3, 3, 4, 8, 4, 1, 4, 9, 2, 5, 2, 9, 2, 8, 2, 0, 7, 0, 2, 7, 9, 2, 5, 2, 6, 9, 4, 8, 7, 1, 0, 9, 4, 4, 3, 3, 7, 4, 7, 4, 6, 7, 5, 3, 7, 9, 7, 5, 1, 3, 1, 5, 4, 0, 5, 5, 5, 5, 3, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +58,"[9, 3, 1, 5, 4, 9, 5, 7, 1, 7, 3, 8, 0, 2, 3, 1, 1, 9, 4, 9, 2, 6, 2, 2, 4, 2, 5, 1, 7, 1, 2, 5, 1, 6, 8, 4, 8, 2, 6, 0, 9, 8, 0, 7, 9, 5, 1, 7, 5, 7, 4, 4, 1, 9, 6, 9, 6, 3, 3, 0, 7, 2, 9, 0, 7, 6, 7, 4, 2, 7, 4, 0, 7, 9, 1, 2, 5, 9, 0, 8, 5, 5, 6, 7, 2, 1, 0, 6, 8, 4, 5, 7, 7, 2, 4, 3, 0, 4, 4, 0, 6, 0, 4, 5, 6, 4, 3, 7, 7, 9, 2, 4, 4, 1, 8, 6, 7, 4, 6, 4, 6, 5, 7, 8, 5, 0, 0, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +59,"[3, 7, 5, 6, 3, 5, 4, 0, 6, 2, 8, 9, 6, 2, 8, 0, 5, 5, 8, 6, 6, 6, 2, 8, 3, 8, 7, 9, 5, 9, 2, 1, 1, 4, 5, 4, 1, 6, 5, 7, 3, 9, 8, 0, 5, 8, 1, 0, 0, 2, 2, 9, 8, 7, 0, 4, 8, 4, 7, 9, 0, 9, 1, 2, 5, 9, 4, 6, 4, 6, 8, 5, 9, 6, 0, 8, 7, 9, 6, 3, 5, 3, 6, 1, 9, 7, 9, 5, 0, 2, 8, 8, 4, 5, 0, 7, 3, 8, 6, 7, 8, 1, 3, 1, 8, 9, 4, 6, 0, 4, 2, 3, 6, 3, 5, 7, 3, 7, 7, 9, 1, 7, 6, 1, 7, 4, 7, 8]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +60,"[8, 8, 1, 2, 5, 9, 6, 6, 6, 3, 6, 0, 7, 4, 2, 5, 6, 9, 2, 8, 1, 5, 1, 3, 1, 6, 9, 4, 0, 8, 7, 4, 2, 8, 7, 4, 4, 2, 3, 0, 7, 7, 2, 5, 4, 3, 1, 9, 6, 3, 0, 4, 8, 1, 8, 2, 9, 1, 7, 1, 7, 2, 1, 9, 4, 7, 4, 3, 3, 9, 0, 4, 6, 6, 2, 0, 2, 0, 2, 3, 0, 7, 6, 2, 7, 8, 2, 6, 0, 7, 6, 5, 4, 0, 0, 8, 9, 6, 2, 7, 1, 6, 8, 7, 1, 8, 0, 7, 5, 8, 9, 4, 1, 1, 7, 1, 5, 3, 4, 8, 7, 9, 6, 4, 8, 5, 2, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +61,"[6, 4, 6, 9, 7, 7, 5, 2, 7, 9, 7, 7, 0, 8, 4, 9, 2, 4, 4, 7, 0, 3, 4, 3, 2, 0, 3, 3, 6, 4, 3, 0, 3, 6, 5, 1, 6, 2, 4, 0, 2, 0, 8, 4, 7, 7, 9, 1, 3, 0, 3, 3, 9, 7, 1, 5, 7, 1, 9, 3, 9, 2, 2, 7, 8, 6, 9, 6, 9, 3, 3, 0, 5, 5, 3, 7, 8, 8, 3, 7, 6, 3, 9, 4, 6, 5, 2, 6, 9, 5, 4, 3, 9, 6, 7, 0, 9, 6, 3, 0, 6, 5, 1, 9, 8, 7, 7, 6, 0, 0, 4, 5, 0, 7, 2, 8, 2, 5, 3, 0, 2, 1, 2, 4, 4, 2, 4, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +62,"[2, 7, 2, 5, 9, 8, 8, 2, 4, 6, 1, 2, 7, 3, 9, 3, 7, 0, 4, 3, 6, 5, 7, 3, 3, 5, 7, 2, 3, 9, 1, 8, 5, 6, 0, 5, 5, 3, 7, 0, 9, 3, 4, 6, 1, 5, 5, 9, 5, 2, 3, 3, 1, 0, 3, 8, 8, 3, 2, 0, 5, 0, 8, 8, 9, 7, 3, 5, 9, 9, 4, 1, 4, 7, 7, 2, 0, 3, 2, 9, 8, 4, 2, 8, 0, 9, 8, 7, 9, 0, 1, 1, 7, 2, 0, 1, 3, 2, 9, 9, 8, 9, 0, 2, 2, 3, 5, 7, 3, 0, 4, 2, 4, 6, 4, 0, 7, 7, 4, 0, 3, 4, 3, 0, 2, 8, 9, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +63,"[9, 5, 9, 9, 5, 8, 1, 7, 0, 4, 4, 7, 7, 9, 0, 4, 8, 4, 7, 9, 9, 9, 2, 1, 6, 4, 5, 9, 9, 0, 8, 3, 0, 8, 0, 5, 1, 4, 3, 9, 5, 4, 2, 1, 4, 0, 2, 3, 4, 7, 3, 5, 2, 3, 1, 7, 3, 2, 6, 1, 6, 5, 4, 7, 4, 4, 1, 3, 3, 7, 9, 5, 0, 9, 3, 3, 7, 0, 5, 1, 3, 4, 0, 4, 0, 9, 5, 9, 2, 3, 6, 4, 0, 7, 2, 3, 8, 1, 0, 1, 0, 1, 6, 2, 5, 0, 9, 8, 5, 2, 4, 1, 5, 4, 7, 5, 6, 8, 2, 5, 6, 0, 5, 3, 1, 8, 3, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +64,"[4, 7, 5, 0, 4, 3, 6, 0, 7, 2, 7, 1, 2, 5, 1, 3, 3, 2, 9, 4, 9, 3, 9, 5, 4, 6, 3, 3, 3, 8, 2, 2, 3, 4, 0, 4, 2, 5, 1, 3, 5, 7, 7, 0, 6, 7, 2, 3, 4, 8, 9, 5, 0, 6, 3, 7, 6, 2, 3, 5, 2, 4, 2, 6, 8, 8, 1, 6, 5, 8, 7, 3, 3, 8, 6, 1, 4, 1, 5, 2, 7, 5, 5, 7, 1, 5, 5, 7, 6, 8, 7, 3, 1, 7, 2, 4, 2, 3, 8, 0, 4, 9, 3, 7, 4, 0, 0, 3, 2, 8, 8, 8, 0, 6, 4, 0, 3, 7, 2, 1, 5, 7, 1, 1, 5, 1, 5, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9]" +65,"[1, 3, 2, 4, 6, 2, 0, 1, 2, 5, 8, 2, 1, 9, 2, 7, 4, 4, 3, 3, 3, 9, 9, 9, 8, 1, 0, 1, 5, 1, 2, 0, 4, 6, 2, 4, 6, 6, 5, 7, 3, 4, 5, 4, 6, 6, 8, 2, 4, 4, 4, 5, 5, 5, 9, 0, 6, 6, 7, 5, 3, 7, 1, 0, 7, 4, 9, 2, 5, 9, 8, 4, 6, 5, 2, 3, 2, 2, 8, 8, 4, 1, 2, 9, 2, 2, 6, 8, 4, 9, 3, 7, 9, 8, 7, 1, 8, 3, 5, 8, 1, 6, 0, 5, 6, 4, 6, 4, 0, 2, 1, 7, 6, 4, 0, 5, 4, 3, 5, 3, 0, 4, 2, 0, 8, 5, 8, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +66,"[7, 0, 7, 4, 0, 7, 7, 4, 6, 2, 4, 8, 0, 3, 9, 3, 8, 1, 4, 1, 7, 6, 5, 7, 9, 7, 2, 5, 4, 1, 8, 5, 4, 2, 7, 0, 8, 0, 7, 2, 7, 9, 1, 8, 5, 4, 8, 0, 6, 9, 4, 7, 4, 7, 9, 4, 7, 9, 3, 5, 1, 6, 7, 6, 0, 8, 4, 3, 7, 0, 9, 6, 2, 2, 6, 4, 4, 1, 1, 8, 9, 5, 7, 9, 8, 1, 5, 0, 4, 0, 3, 8, 7, 5, 0, 7, 2, 6, 1, 6, 2, 9, 8, 2, 1, 5, 8, 4, 3, 0, 8, 7, 2, 5, 5, 7, 1, 8, 0, 1, 2, 6, 7, 0, 5, 5, 9, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +67,"[7, 5, 3, 2, 5, 1, 8, 9, 3, 8, 8, 4, 0, 1, 5, 8, 4, 9, 4, 7, 1, 1, 0, 7, 0, 1, 8, 7, 2, 6, 3, 9, 3, 1, 3, 4, 3, 2, 3, 8, 9, 0, 8, 3, 2, 4, 7, 4, 3, 3, 9, 4, 8, 9, 0, 3, 3, 6, 9, 8, 2, 7, 6, 7, 8, 5, 5, 1, 1, 4, 2, 2, 6, 7, 3, 6, 6, 6, 8, 4, 9, 7, 8, 5, 3, 2, 2, 7, 7, 0, 8, 5, 9, 1, 6, 5, 9, 0, 0, 4, 9, 1, 9, 5, 7, 7, 3, 0, 3, 5, 6, 8, 5, 9, 9, 8, 9, 6, 6, 9, 6, 4, 8, 9, 6, 1, 0, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +68,"[3, 4, 1, 6, 5, 7, 0, 6, 3, 7, 3, 8, 8, 6, 2, 9, 4, 1, 4, 7, 4, 0, 7, 4, 9, 5, 8, 3, 1, 7, 5, 3, 7, 9, 5, 5, 9, 2, 9, 8, 8, 0, 6, 0, 6, 1, 0, 0, 5, 8, 0, 4, 1, 8, 7, 9, 8, 8, 2, 7, 6, 8, 5, 3, 6, 3, 2, 7, 8, 6, 3, 1, 9, 4, 1, 0, 1, 7, 7, 9, 3, 7, 2, 6, 6, 9, 4, 5, 1, 0, 1, 5, 5, 3, 5, 4, 5, 9, 4, 8, 8, 2, 0, 0, 9, 4, 7, 0, 0, 8, 9, 8, 5, 7, 3, 3, 2, 4, 8, 1, 8, 0, 2, 0, 9, 8, 8, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +69,"[3, 2, 9, 2, 2, 2, 3, 5, 1, 2, 3, 6, 3, 7, 0, 8, 8, 1, 4, 1, 2, 1, 7, 9, 0, 9, 3, 2, 6, 5, 8, 7, 5, 3, 1, 6, 8, 2, 5, 4, 0, 8, 8, 1, 5, 4, 6, 1, 4, 6, 2, 6, 7, 4, 0, 2, 1, 9, 6, 4, 9, 2, 9, 1, 1, 3, 9, 0, 2, 7, 8, 3, 5, 0, 3, 1, 8, 2, 0, 5, 3, 5, 4, 6, 5, 2, 9, 8, 4, 7, 3, 0, 6, 5, 3, 2, 5, 1, 6, 3, 3, 4, 9, 1, 5, 2, 3, 8, 4, 7, 9, 5, 0, 6, 8, 7, 5, 5, 0, 9, 3, 7, 7, 4, 1, 4, 0, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +70,"[2, 8, 9, 7, 7, 8, 0, 0, 5, 4, 4, 3, 6, 5, 9, 9, 2, 2, 5, 1, 4, 4, 0, 2, 2, 5, 2, 0, 6, 3, 1, 9, 1, 7, 4, 1, 0, 2, 9, 3, 7, 3, 5, 1, 3, 8, 2, 4, 9, 2, 6, 9, 8, 1, 2, 9, 7, 6, 4, 2, 6, 8, 5, 6, 1, 8, 7, 0, 5, 2, 2, 9, 1, 8, 7, 4, 2, 2, 8, 6, 9, 2, 3, 4, 9, 7, 9, 3, 6, 5, 1, 1, 5, 8, 0, 6, 0, 2, 5, 9, 3, 6, 4, 1, 3, 3, 7, 2, 6, 5, 2, 8, 3, 9, 2, 6, 5, 3, 4, 0, 0, 2, 4, 8, 0, 0, 2, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +71,"[5, 9, 6, 8, 2, 1, 9, 5, 5, 9, 2, 7, 9, 4, 3, 2, 8, 1, 6, 1, 0, 4, 5, 2, 7, 9, 2, 9, 8, 7, 2, 4, 2, 4, 4, 2, 1, 1, 9, 2, 4, 7, 0, 0, 3, 0, 4, 0, 5, 7, 4, 0, 3, 8, 3, 3, 9, 4, 8, 4, 2, 6, 9, 2, 0, 1, 2, 7, 1, 6, 7, 6, 2, 5, 5, 9, 7, 2, 1, 0, 9, 2, 2, 7, 0, 5, 5, 7, 6, 7, 0, 0, 3, 3, 1, 2, 6, 1, 2, 8, 5, 3, 6, 4, 8, 1, 6, 5, 3, 5, 6, 7, 5, 0, 5, 4, 1, 9, 5, 9, 1, 4, 7, 2, 2, 8, 7, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +72,"[1, 5, 4, 6, 6, 1, 0, 0, 9, 9, 8, 7, 5, 9, 3, 8, 4, 7, 0, 1, 5, 0, 5, 4, 5, 0, 6, 9, 3, 6, 3, 8, 1, 8, 2, 9, 7, 7, 3, 7, 4, 4, 8, 4, 9, 2, 8, 6, 5, 7, 2, 6, 1, 8, 3, 9, 0, 6, 9, 0, 6, 2, 4, 9, 9, 8, 5, 6, 7, 3, 5, 8, 4, 3, 0, 7, 1, 3, 5, 6, 8, 4, 8, 0, 9, 2, 9, 6, 9, 9, 6, 7, 0, 9, 5, 9, 8, 9, 0, 1, 5, 6, 9, 8, 0, 6, 7, 5, 9, 5, 4, 9, 1, 2, 4, 6, 1, 4, 7, 0, 5, 4, 9, 2, 9, 7, 0, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +73,"[3, 4, 8, 9, 2, 5, 9, 2, 1, 5, 1, 9, 1, 9, 2, 0, 8, 7, 9, 3, 4, 6, 7, 0, 8, 4, 8, 0, 3, 6, 6, 6, 1, 9, 3, 3, 3, 7, 6, 1, 1, 8, 4, 2, 0, 4, 4, 4, 3, 9, 7, 3, 4, 1, 7, 9, 7, 2, 9, 5, 5, 5, 6, 8, 5, 7, 7, 3, 0, 6, 5, 0, 5, 3, 0, 3, 7, 5, 1, 0, 3, 2, 9, 5, 1, 2, 3, 2, 3, 1, 2, 3, 7, 1, 2, 7, 1, 4, 1, 6, 2, 4, 2, 1, 6, 4, 9, 6, 1, 5, 8, 9, 9, 3, 1, 1, 6, 6, 4, 8, 2, 4, 8, 5, 4, 2, 6, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +74,"[5, 7, 5, 0, 3, 9, 2, 3, 2, 5, 6, 9, 2, 5, 6, 3, 0, 7, 7, 8, 4, 2, 5, 9, 5, 1, 7, 6, 1, 3, 6, 8, 5, 8, 0, 0, 1, 9, 0, 8, 0, 6, 8, 9, 3, 7, 0, 7, 0, 7, 2, 4, 8, 5, 9, 1, 0, 4, 3, 6, 7, 7, 1, 0, 6, 0, 6, 0, 4, 9, 7, 6, 7, 4, 8, 4, 7, 8, 1, 6, 6, 7, 2, 6, 4, 2, 1, 1, 4, 9, 4, 8, 8, 5, 2, 1, 2, 1, 0, 4, 6, 2, 3, 6, 0, 1, 8, 0, 2, 0, 5, 2, 8, 9, 8, 4, 1, 1, 2, 6, 1, 7, 3, 4, 6, 9, 2, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +75,"[7, 5, 4, 5, 0, 9, 1, 4, 5, 3, 1, 1, 5, 6, 1, 1, 8, 6, 9, 8, 2, 7, 6, 7, 5, 7, 4, 3, 9, 6, 5, 5, 0, 2, 5, 0, 8, 8, 9, 0, 2, 5, 9, 5, 0, 4, 2, 7, 0, 8, 1, 8, 0, 3, 9, 3, 2, 3, 8, 8, 3, 9, 4, 8, 2, 1, 6, 6, 6, 1, 1, 9, 0, 3, 3, 7, 7, 9, 0, 9, 8, 4, 3, 1, 4, 0, 3, 5, 8, 0, 3, 6, 5, 4, 5, 4, 4, 3, 8, 3, 3, 8, 8, 7, 5, 3, 9, 4, 8, 9, 9, 9, 6, 5, 2, 0, 1, 9, 7, 5, 2, 9, 1, 0, 5, 1, 7, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +76,"[7, 1, 9, 9, 9, 0, 1, 2, 8, 5, 0, 9, 1, 6, 1, 6, 2, 3, 9, 8, 4, 8, 2, 4, 2, 8, 9, 5, 2, 8, 2, 7, 5, 2, 8, 8, 9, 8, 8, 3, 5, 1, 5, 8, 9, 1, 1, 5, 0, 0, 1, 4, 2, 4, 9, 5, 9, 5, 7, 1, 9, 7, 8, 2, 5, 7, 0, 3, 5, 0, 4, 1, 2, 4, 6, 0, 0, 2, 2, 7, 8, 9, 4, 6, 6, 1, 7, 7, 6, 3, 4, 0, 0, 5, 3, 3, 3, 8, 1, 9, 5, 5, 9, 0, 0, 3, 7, 8, 1, 5, 5, 9, 6, 9, 5, 0, 7, 0, 9, 6, 4, 6, 5, 3, 9, 4, 2, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +77,"[6, 1, 3, 7, 9, 2, 5, 6, 5, 0, 6, 2, 3, 1, 9, 0, 2, 5, 7, 8, 2, 1, 0, 0, 1, 6, 9, 1, 5, 3, 2, 5, 7, 9, 7, 2, 0, 5, 5, 6, 2, 8, 3, 6, 4, 4, 9, 6, 2, 0, 4, 2, 9, 1, 1, 3, 2, 2, 1, 0, 4, 1, 5, 9, 0, 6, 4, 2, 3, 0, 7, 4, 0, 7, 4, 9, 6, 8, 4, 6, 1, 5, 8, 0, 5, 0, 9, 6, 6, 8, 0, 3, 9, 0, 2, 2, 2, 7, 8, 8, 1, 0, 5, 0, 9, 1, 7, 3, 4, 5, 8, 1, 3, 0, 6, 2, 9, 0, 9, 0, 5, 1, 4, 2, 7, 8, 1, 9]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +78,"[3, 9, 0, 9, 2, 1, 6, 7, 0, 8, 7, 2, 0, 1, 7, 7, 2, 0, 8, 7, 7, 4, 1, 3, 4, 2, 6, 8, 6, 8, 3, 9, 6, 8, 2, 1, 7, 7, 7, 4, 6, 4, 0, 6, 0, 4, 0, 4, 2, 7, 6, 3, 0, 3, 4, 1, 1, 5, 9, 2, 3, 4, 9, 4, 4, 7, 4, 0, 4, 4, 1, 0, 1, 5, 7, 0, 8, 9, 7, 0, 0, 7, 3, 5, 3, 2, 2, 2, 1, 1, 0, 8, 4, 2, 2, 8, 5, 2, 8, 0, 7, 8, 4, 3, 1, 6, 7, 4, 5, 0, 9, 5, 9, 1, 4, 5, 0, 7, 6, 7, 6, 2, 7, 0, 6, 9, 6, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +79,"[8, 6, 1, 7, 1, 8, 3, 3, 5, 7, 1, 5, 5, 7, 5, 1, 1, 1, 2, 4, 0, 1, 1, 9, 3, 9, 7, 8, 8, 5, 2, 0, 8, 4, 7, 5, 1, 9, 0, 6, 0, 6, 1, 5, 2, 2, 7, 9, 5, 9, 9, 5, 6, 3, 8, 7, 3, 4, 9, 9, 3, 1, 0, 1, 0, 9, 7, 6, 4, 9, 4, 3, 0, 1, 1, 6, 1, 0, 8, 0, 2, 3, 1, 9, 2, 8, 2, 1, 2, 3, 9, 3, 6, 7, 3, 9, 1, 3, 2, 1, 4, 4, 1, 4, 7, 2, 5, 5, 0, 4, 5, 8, 7, 9, 9, 9, 3, 4, 5, 5, 2, 0, 1, 1, 6, 3, 7, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +80,"[2, 2, 0, 9, 1, 3, 6, 6, 8, 2, 5, 1, 7, 2, 2, 2, 9, 0, 7, 2, 0, 4, 9, 1, 5, 5, 2, 5, 3, 0, 9, 9, 4, 3, 1, 5, 2, 8, 7, 6, 0, 6, 5, 1, 7, 2, 2, 7, 9, 7, 5, 7, 3, 8, 9, 1, 7, 5, 0, 1, 5, 2, 2, 7, 6, 4, 7, 2, 8, 5, 5, 0, 8, 4, 7, 9, 6, 2, 7, 9, 9, 4, 8, 2, 3, 2, 8, 8, 3, 9, 7, 6, 6, 1, 6, 1, 7, 0, 7, 9, 1, 5, 1, 6, 9, 2, 7, 2, 1, 7, 5, 7, 0, 4, 6, 0, 3, 4, 0, 8, 2, 8, 9, 1, 2, 8, 8, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +81,"[4, 1, 2, 5, 6, 5, 7, 2, 2, 0, 6, 8, 2, 6, 2, 7, 1, 4, 6, 3, 3, 7, 4, 3, 9, 7, 2, 4, 2, 0, 6, 8, 9, 0, 2, 0, 9, 1, 1, 2, 2, 8, 0, 9, 0, 2, 0, 9, 6, 8, 6, 4, 0, 5, 3, 6, 4, 3, 3, 7, 4, 8, 8, 2, 8, 2, 6, 3, 6, 6, 3, 9, 1, 0, 5, 4, 0, 7, 3, 2, 7, 3, 2, 2, 3, 6, 0, 7, 5, 1, 4, 2, 4, 6, 8, 2, 5, 5, 3, 2, 3, 2, 7, 0, 3, 6, 9, 6, 7, 4, 9, 3, 7, 3, 5, 2, 0, 1, 8, 0, 9, 1, 9, 2, 4, 5, 9, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +82,"[0, 2, 8, 3, 5, 5, 5, 0, 1, 8, 8, 3, 8, 2, 5, 5, 2, 0, 9, 9, 7, 5, 7, 0, 3, 7, 8, 4, 0, 0, 7, 8, 6, 8, 4, 8, 5, 2, 5, 7, 6, 8, 8, 4, 8, 1, 1, 2, 0, 6, 9, 8, 5, 9, 7, 6, 2, 9, 9, 4, 0, 6, 8, 9, 6, 3, 4, 6, 2, 6, 7, 1, 2, 1, 2, 8, 4, 0, 1, 3, 4, 5, 6, 7, 0, 8, 4, 3, 1, 8, 9, 9, 5, 3, 2, 8, 4, 6, 2, 6, 5, 1, 6, 9, 1, 3, 3, 2, 8, 6, 9, 0, 4, 7, 7, 5, 0, 4, 1, 7, 9, 2, 4, 1, 4, 7, 9, 4]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +83,"[1, 3, 9, 2, 0, 8, 1, 9, 8, 2, 4, 5, 6, 3, 4, 0, 7, 8, 0, 9, 6, 5, 2, 3, 6, 9, 1, 7, 1, 0, 9, 8, 3, 3, 0, 1, 1, 0, 8, 6, 4, 3, 4, 3, 1, 8, 8, 4, 2, 1, 4, 1, 4, 1, 5, 4, 6, 9, 5, 9, 8, 4, 9, 3, 1, 7, 3, 8, 0, 0, 0, 5, 6, 0, 7, 4, 5, 1, 2, 0, 6, 6, 0, 1, 5, 3, 7, 3, 1, 5, 1, 7, 3, 8, 7, 1, 5, 1, 7, 6, 3, 9, 9, 5, 3, 4, 5, 2, 0, 2, 1, 3, 1, 7, 7, 8, 4, 9, 1, 9, 6, 1, 1, 5, 8, 2, 3, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +84,"[2, 3, 3, 5, 1, 0, 5, 4, 9, 9, 5, 1, 2, 1, 1, 7, 4, 0, 9, 4, 3, 4, 8, 5, 7, 4, 0, 2, 3, 8, 6, 7, 1, 7, 2, 0, 6, 6, 9, 5, 4, 6, 6, 9, 0, 5, 3, 1, 3, 9, 5, 6, 6, 7, 5, 3, 1, 0, 7, 9, 1, 2, 3, 3, 1, 6, 9, 5, 3, 4, 1, 3, 5, 1, 6, 8, 6, 4, 4, 9, 4, 2, 3, 5, 1, 5, 0, 6, 7, 9, 0, 6, 4, 7, 0, 1, 3, 1, 0, 4, 3, 0, 6, 2, 1, 6, 1, 0, 5, 0, 4, 2, 8, 1, 3, 9, 6, 9, 3, 5, 7, 5, 5, 7, 4, 2, 0, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +85,"[9, 5, 0, 6, 4, 5, 2, 5, 4, 4, 5, 9, 7, 4, 2, 9, 1, 7, 1, 0, 3, 1, 0, 9, 1, 1, 6, 1, 7, 0, 1, 8, 4, 9, 5, 0, 8, 7, 8, 9, 6, 0, 2, 5, 3, 6, 8, 5, 6, 9, 2, 7, 0, 9, 6, 2, 8, 5, 3, 2, 7, 4, 6, 1, 5, 2, 2, 7, 1, 4, 8, 8, 7, 5, 5, 1, 7, 0, 4, 6, 0, 2, 6, 1, 7, 1, 6, 8, 4, 3, 6, 6, 8, 0, 4, 2, 9, 8, 2, 8, 6, 6, 2, 4, 1, 3, 6, 9, 2, 9, 2, 3, 7, 1, 2, 9, 8, 2, 9, 6, 4, 2, 0, 9, 4, 6, 4, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +86,"[9, 5, 8, 7, 3, 9, 3, 7, 4, 8, 4, 4, 5, 3, 3, 7, 5, 3, 6, 5, 9, 3, 8, 7, 7, 8, 1, 0, 7, 3, 9, 2, 8, 9, 5, 8, 0, 2, 1, 1, 6, 1, 7, 1, 6, 3, 1, 1, 3, 1, 0, 8, 6, 6, 6, 0, 3, 3, 8, 1, 5, 7, 6, 6, 1, 7, 3, 9, 9, 3, 5, 1, 8, 7, 8, 2, 9, 9, 5, 4, 3, 8, 1, 2, 0, 0, 0, 7, 0, 6, 2, 7, 1, 5, 1, 8, 2, 6, 4, 0, 6, 1, 4, 8, 9, 4, 5, 3, 6, 2, 7, 1, 2, 7, 1, 5, 8, 2, 5, 7, 0, 1, 0, 2, 5, 6, 1, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +87,"[7, 6, 8, 7, 6, 9, 9, 4, 1, 0, 1, 8, 5, 0, 2, 3, 0, 3, 9, 1, 4, 4, 6, 1, 6, 4, 5, 4, 7, 7, 9, 0, 7, 3, 1, 9, 1, 6, 1, 1, 4, 6, 0, 2, 1, 4, 6, 7, 9, 7, 2, 2, 0, 7, 9, 9, 2, 0, 1, 4, 0, 0, 7, 9, 2, 7, 7, 4, 5, 3, 9, 0, 2, 6, 8, 6, 7, 8, 6, 8, 5, 5, 9, 1, 8, 5, 9, 1, 4, 6, 1, 8, 4, 6, 1, 0, 3, 0, 3, 4, 5, 9, 5, 6, 2, 8, 9, 8, 1, 3, 7, 4, 0, 4, 0, 7, 1, 8, 5, 2, 0, 8, 7, 6, 3, 7, 3, 2]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +88,"[4, 4, 2, 1, 3, 1, 7, 8, 7, 8, 9, 1, 7, 0, 5, 7, 8, 7, 7, 9, 6, 9, 3, 9, 2, 5, 1, 2, 5, 5, 8, 9, 1, 3, 0, 4, 6, 0, 6, 1, 9, 8, 1, 9, 6, 2, 5, 6, 9, 4, 6, 0, 9, 2, 0, 8, 6, 6, 0, 7, 6, 2, 5, 4, 1, 7, 0, 0, 9, 6, 0, 0, 7, 9, 1, 8, 8, 2, 5, 5, 2, 0, 1, 0, 5, 1, 7, 7, 0, 8, 1, 0, 0, 6, 7, 6, 8, 2, 3, 7, 9, 7, 0, 0, 8, 6, 2, 5, 3, 1, 4, 1, 5, 6, 6, 4, 8, 3, 6, 9, 9, 4, 8, 3, 2, 3, 2, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +89,"[4, 4, 8, 2, 7, 1, 8, 1, 9, 8, 6, 7, 8, 1, 7, 6, 1, 0, 3, 5, 7, 3, 1, 5, 5, 8, 1, 8, 8, 3, 8, 2, 4, 0, 5, 4, 5, 6, 3, 6, 5, 7, 4, 1, 2, 3, 3, 0, 5, 0, 0, 3, 1, 8, 9, 3, 6, 9, 7, 3, 2, 7, 3, 2, 9, 0, 1, 9, 7, 4, 0, 7, 7, 1, 6, 1, 5, 7, 7, 8, 4, 2, 6, 1, 2, 4, 7, 1, 7, 6, 7, 6, 9, 2, 8, 3, 4, 3, 4, 0, 0, 8, 0, 9, 6, 9, 3, 3, 7, 7, 3, 7, 1, 0, 4, 6, 3, 4, 8, 9, 4, 3, 0, 7, 9, 3, 4, 3]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +90,"[5, 0, 7, 6, 4, 2, 9, 1, 1, 8, 1, 0, 2, 3, 9, 1, 3, 8, 1, 2, 1, 4, 0, 9, 9, 5, 0, 7, 6, 7, 8, 1, 4, 9, 2, 9, 8, 4, 0, 5, 5, 8, 1, 4, 1, 1, 4, 5, 1, 3, 6, 7, 0, 4, 1, 5, 8, 1, 6, 4, 0, 8, 8, 8, 3, 5, 9, 5, 3, 3, 5, 4, 2, 3, 6, 5, 3, 8, 4, 8, 6, 4, 7, 7, 4, 2, 3, 9, 5, 5, 8, 3, 6, 1, 1, 7, 0, 1, 1, 6, 9, 4, 2, 4, 3, 1, 0, 2, 0, 6, 2, 1, 0, 3, 8, 0, 1, 3, 0, 5, 7, 0, 1, 2, 2, 2, 2, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +91,"[9, 9, 1, 1, 9, 3, 0, 1, 6, 6, 8, 1, 7, 1, 2, 4, 2, 0, 5, 4, 3, 7, 6, 9, 9, 4, 6, 6, 3, 5, 5, 3, 0, 5, 8, 1, 1, 3, 5, 0, 2, 2, 8, 2, 2, 0, 2, 6, 1, 1, 3, 1, 6, 8, 5, 2, 3, 3, 5, 6, 1, 4, 3, 9, 2, 0, 8, 7, 7, 2, 8, 9, 3, 1, 5, 3, 7, 1, 8, 6, 6, 3, 2, 5, 6, 6, 7, 8, 6, 4, 7, 2, 3, 0, 0, 6, 0, 6, 0, 0, 5, 8, 1, 3, 9, 8, 5, 1, 4, 7, 3, 3, 3, 0, 7, 9, 2, 6, 4, 7, 4, 8, 2, 7, 6, 0, 1, 6]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +92,"[8, 4, 7, 2, 3, 3, 8, 6, 7, 9, 8, 1, 6, 2, 4, 5, 8, 8, 1, 2, 7, 8, 9, 6, 1, 7, 7, 3, 3, 1, 8, 8, 7, 3, 5, 4, 2, 9, 4, 7, 9, 9, 5, 4, 3, 2, 0, 9, 2, 5, 5, 7, 1, 6, 9, 4, 4, 5, 9, 6, 7, 0, 1, 8, 4, 4, 4, 2, 7, 5, 6, 1, 1, 8, 6, 0, 9, 5, 4, 0, 8, 6, 4, 8, 9, 6, 4, 8, 0, 1, 8, 2, 4, 4, 3, 2, 9, 5, 2, 8, 5, 4, 6, 8, 1, 2, 9, 9, 2, 0, 7, 3, 6, 2, 9, 5, 3, 0, 2, 3, 2, 2, 2, 7, 9, 6, 2, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +93,"[4, 1, 2, 4, 5, 2, 7, 1, 7, 5, 6, 1, 8, 2, 8, 6, 1, 4, 9, 2, 2, 2, 8, 0, 7, 8, 0, 8, 9, 0, 2, 8, 2, 9, 7, 7, 7, 8, 3, 7, 3, 1, 5, 8, 8, 5, 3, 7, 1, 3, 6, 0, 0, 7, 6, 4, 3, 5, 1, 1, 0, 0, 6, 9, 0, 2, 0, 2, 7, 6, 4, 0, 7, 2, 7, 4, 4, 2, 2, 5, 4, 7, 6, 3, 1, 6, 0, 4, 6, 1, 0, 1, 3, 8, 9, 6, 4, 2, 4, 4, 9, 2, 8, 8, 2, 0, 7, 9, 6, 6, 5, 6, 1, 9, 0, 5, 7, 3, 1, 1, 3, 0, 3, 7, 9, 3, 3, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +94,"[0, 8, 7, 8, 3, 7, 8, 4, 2, 4, 6, 6, 3, 4, 2, 0, 7, 0, 4, 0, 4, 6, 0, 2, 5, 3, 9, 9, 7, 4, 2, 5, 6, 3, 6, 1, 5, 6, 2, 6, 7, 6, 5, 9, 8, 8, 1, 1, 0, 8, 1, 7, 2, 7, 1, 2, 8, 7, 5, 5, 3, 0, 9, 0, 2, 0, 6, 0, 1, 8, 3, 3, 6, 5, 2, 5, 9, 0, 9, 6, 6, 2, 8, 9, 3, 5, 2, 6, 6, 6, 7, 1, 3, 4, 1, 3, 3, 5, 0, 8, 8, 0, 0, 9, 6, 0, 7, 1, 8, 4, 7, 5, 8, 8, 9, 9, 1, 4, 1, 4, 5, 7, 3, 9, 1, 5, 8, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +95,"[5, 1, 2, 0, 9, 5, 3, 1, 8, 6, 2, 2, 8, 8, 8, 7, 9, 0, 1, 5, 3, 5, 6, 4, 4, 3, 0, 1, 8, 0, 8, 6, 7, 3, 8, 4, 6, 7, 7, 5, 1, 4, 6, 8, 1, 9, 8, 4, 5, 6, 2, 6, 8, 0, 4, 0, 3, 8, 2, 5, 5, 7, 1, 8, 3, 4, 0, 3, 3, 5, 2, 2, 7, 3, 0, 7, 1, 7, 9, 7, 8, 5, 0, 8, 5, 6, 3, 8, 5, 4, 6, 6, 5, 5, 2, 2, 7, 9, 2, 6, 9, 9, 4, 4, 2, 0, 4, 1, 4, 9, 2, 6, 3, 5, 3, 0, 5, 7, 4, 2, 4, 2, 7, 6, 7, 2, 0, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9]" +96,"[8, 4, 4, 2, 4, 8, 3, 7, 7, 3, 9, 6, 6, 4, 5, 6, 1, 4, 6, 7, 3, 1, 3, 3, 7, 4, 0, 6, 5, 1, 7, 5, 6, 8, 4, 0, 4, 8, 7, 9, 8, 6, 8, 3, 2, 7, 1, 2, 6, 6, 1, 1, 9, 3, 2, 1, 0, 1, 2, 5, 5, 1, 1, 9, 3, 6, 3, 1, 8, 4, 9, 9, 4, 0, 0, 3, 0, 7, 1, 5, 9, 4, 4, 8, 3, 9, 3, 4, 3, 9, 7, 3, 6, 0, 2, 2, 5, 7, 6, 2, 5, 5, 2, 4, 9, 5, 3, 2, 1, 3, 8, 2, 6, 9, 0, 1, 2, 6, 9, 3, 3, 4, 5, 6, 3, 9, 4, 1]","[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +97,"[2, 1, 7, 3, 8, 7, 7, 8, 0, 7, 7, 8, 7, 6, 5, 9, 9, 6, 5, 0, 1, 7, 5, 6, 7, 0, 6, 8, 2, 4, 2, 4, 0, 0, 2, 9, 2, 1, 9, 8, 4, 7, 2, 1, 2, 5, 5, 5, 7, 7, 6, 6, 8, 1, 5, 2, 2, 9, 3, 8, 9, 4, 8, 2, 0, 8, 6, 4, 0, 2, 0, 2, 9, 4, 2, 7, 5, 8, 4, 0, 4, 6, 3, 3, 6, 4, 1, 4, 7, 5, 8, 9, 4, 8, 2, 6, 6, 0, 8, 2, 7, 5, 8, 1, 5, 6, 8, 7, 9, 6, 8, 9, 7, 3, 9, 4, 3, 9, 5, 2, 8, 8, 4, 5, 2, 0, 6, 0]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +98,"[3, 8, 0, 0, 1, 0, 0, 4, 0, 5, 9, 3, 4, 0, 5, 8, 5, 4, 6, 1, 2, 7, 1, 1, 1, 9, 1, 2, 1, 9, 8, 3, 4, 6, 8, 6, 9, 9, 8, 8, 7, 6, 7, 4, 4, 0, 3, 6, 3, 4, 3, 2, 1, 8, 9, 7, 9, 3, 3, 1, 0, 1, 5, 3, 8, 6, 6, 4, 6, 3, 6, 2, 3, 4, 7, 3, 8, 9, 6, 1, 0, 6, 1, 8, 4, 1, 9, 3, 1, 9, 9, 2, 8, 9, 8, 7, 1, 1, 4, 0, 5, 2, 9, 6, 0, 7, 2, 5, 7, 3, 3, 1, 1, 4, 6, 3, 7, 3, 9, 4, 2, 6, 0, 2, 7, 8, 0, 7]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" +99,"[1, 4, 7, 9, 7, 4, 1, 4, 7, 4, 6, 7, 7, 8, 2, 1, 3, 7, 2, 2, 1, 6, 2, 5, 5, 3, 6, 8, 1, 6, 1, 8, 0, 1, 0, 7, 6, 8, 9, 4, 9, 8, 3, 1, 2, 9, 8, 3, 5, 3, 7, 5, 9, 0, 0, 2, 7, 0, 5, 7, 5, 3, 3, 2, 0, 7, 8, 6, 1, 7, 8, 8, 9, 4, 2, 1, 3, 1, 3, 8, 0, 5, 5, 1, 5, 0, 6, 4, 6, 0, 6, 5, 2, 7, 1, 5, 3, 2, 6, 9, 5, 7, 1, 8, 8, 3, 5, 9, 4, 1, 7, 7, 8, 0, 9, 8, 4, 5, 8, 2, 9, 6, 0, 2, 9, 8, 8, 5]","[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]" diff --git a/examples/sorting/sorting_128.py b/examples/sorting/sorting_128.py new file mode 100644 index 0000000..1a45ac4 --- /dev/null +++ b/examples/sorting/sorting_128.py @@ -0,0 +1,883 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import os +import logging +import datetime +import json +import csv +from typing import Dict, List, Callable, Union +from graph_of_thoughts import controller, operations, prompter, parser + +from . import utils + + +class SortingPrompter(prompter.Prompter): + """ + SortingPrompter provides the generation of prompts specific to the sorting + example for the language models. + + Inherits from the Prompter class and implements its abstract methods. + """ + + sort_prompt = """ Sort the following list of numbers in ascending order. Output only the sorted list of numbers, no additional text. + + +Input: [5, 1, 0, 1, 2, 0, 4, 8, 1, 9, 5, 1, 3, 3, 9, 7] +Output: [0, 0, 1, 1, 1, 1, 2, 3, 3, 4, 5, 5, 7, 8, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +Output: [0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + sort_prompt_cot = """ Sort the following list of numbers in ascending order. You can generate any intermediate lists, but the final output should be the sorted list of numbers, prefixed with "Output: ". + + +To sort the list of numbers follow these steps: +1. Split the list of numbers into two to four unsorted sublists, each containing an equal number of elements from the original list (make sure they don't overlap). +2. Sort each of the unsorted sublists. +3. Merge the sorted sublists into a single sorted list using the merging algorithm from merge sort. + + + +Input: [4, 5, 3, 3, 7, 3, 0, 5, 0, 2, 8, 0, 2, 1, 6, 9] +Unsorted Subarrays: +[4, 5, 3, 3, 7, 3, 0, 5] +[0, 2, 8, 0, 2, 1, 6, 9] +Sorted Subarrays: +[0, 3, 3, 3, 4, 5, 5, 7] +[0, 0, 1, 2, 2, 6, 8, 9] +Output: [0, 0, 0, 1, 2, 2, 3, 3, 3, 4, 5, 5, 6, 7, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Unsorted Subarrays: +[6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9] +[2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Sorted Subarrays: +[1, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9, 9] +[0, 1, 2, 2, 3, 4, 5, 5, 6, 6, 6, 6, 7, 8, 9, 9] +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9, 4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1, 9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3, 3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Unsorted Subarrays: +[3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +[4, 3, 5, 6, 6, 4, 4, 5, 2, 0, 9, 3, 3, 9, 2, 1] +[9, 3, 1, 8, 1, 8, 6, 0, 1, 6, 1, 7, 4, 4, 6, 3] +[3, 7, 9, 3, 6, 0, 3, 4, 5, 6, 6, 9, 9, 9, 7, 3] +Sorted Subarrays: +[0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] +[0, 1, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 9, 9] +[0, 1, 1, 1, 1, 3, 3, 4, 4, 6, 6, 6, 7, 8, 8, 9] +[0, 3, 3, 3, 3, 4, 5, 6, 6, 6, 7, 7, 9, 9, 9, 9] +Output: [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input}""" + + tot_improve_prompt = """ The following two lists represent an unsorted list of numbers and a sorted variant of that list. The sorted variant is not correct. Fix the sorted variant so that it is correct. +Make sure that the output list is sorted in ascending order, has the same number of elements as the input list ({length}), and contains the same elements as the input list. + + +To fix the incorrectly sorted list follow these steps: +1. For each number from 0 to 9, compare the frequency of that number in the incorrectly sorted list to the frequency of that number in the input list. +2. Iterate through the incorrectly sorted list and add or remove numbers as needed to make the frequency of each number in the incorrectly sorted list match the frequency of that number in the input list. + + + +Input: [3, 7, 0, 2, 8, 1, 2, 2, 2, 4, 7, 8, 5, 5, 3, 9] +Incorrectly Sorted: [0, 0, 0, 0, 0, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 7, 7, 8, 8, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains four extra 0s, two extra 4s and three extra 9s and is missing two 2s. +Output: [0, 1, 2, 2, 2, 2, 3, 3, 4, 5, 5, 7, 7, 8, 8, 9] + +Input: [6, 4, 5, 7, 5, 6, 9, 7, 6, 9, 4, 6, 9, 8, 1, 9, 2, 4, 9, 0, 7, 6, 5, 6, 6, 2, 8, 3, 9, 5, 6, 1] +Incorrectly Sorted: [0, 1, 1, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains two extra 4s and is missing two 6s and one 9. +Output: [0, 1, 1, 2, 2, 3, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9] + +Input: [4, 4, 9, 7, 9, 7, 0, 0, 4, 9, 1, 7, 9, 5, 8, 7, 5, 6, 3, 8, 6, 7, 5, 8, 5, 0, 6, 3, 7, 0, 5, 3, 7, 5, 2, 4, 4, 9, 0, 7, 8, 2, 7, 7, 7, 2, 1, 3, 9, 9, 7, 9, 6, 6, 4, 5, 4, 2, 0, 8, 9, 0, 2, 2] +Incorrectly Sorted: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9] +Reason: The incorrectly sorted list contains one extra 8 and is missing two 2s, one 3, three 4s, two 5s, one 6, six 7s and one 9. +Output: [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9] + + +Input: {input} +Incorrectly Sorted: {incorrectly_sorted} +""" + + got_split_prompt = """ Split the following list of 128 numbers into 8 lists of 16 numbers each, the first list should contain the first 16 numbers, the second list the second 16 numbers, the third list the third 16 numbers, the fourth list the fourth 16 numbers, the fifth list the fifth 16 numbers and so on. +Only output the final 8 lists in the following format without any additional text or thoughts!: +{{ + "List 1": [3, 4, 3, 5, 7, 8, 1, ...], + "List 2": [2, 9, 2, 4, 7, 1, 5, ...], + "List 3": [6, 9, 8, 1, 9, 2, 4, ...], + "List 4": [9, 0, 7, 6, 5, 6, 6, ...], + "List 5": [7, 9, 4, 1, 1, 8, 1, ...], + "List 6": [1, 9, 0, 4, 3, 3, 5, ...], + "List 7": [2, 4, 3, 5, 8, 2, 2, ...], + "List 8": [4, 2, 1, 2, 7, 6, 8, ...] +}} + + +Input: [6, 0, 2, 3, 8, 3, 0, 2, 4, 5, 4, 1, 3, 6, 9, 8, 3, 1, 2, 6, 5, 3, 9, 8, 9, 1, 6, 1, 0, 2, 8, 9, 5, 3, 1, 2, 7, 9, 4, 8, 8, 9, 3, 2, 8, 4, 7, 4, 3, 8, 7, 3, 6, 4, 0, 0, 6, 8, 1, 5, 8, 7, 5, 1, 4, 0, 8, 6, 1, 3, 6, 1, 7, 6, 8, 7, 3, 7, 8, 2, 0, 8, 2, 6, 0, 0, 9, 9, 8, 6, 9, 4, 8, 5, 5, 0, 0, 9, 3, 9, 4, 0, 5, 6, 2, 4, 6, 7, 7, 7, 8, 0, 4, 9, 1, 4, 8, 5, 1, 4, 4, 7, 4, 9, 3, 9, 6, 7] +Output: +{{ + "List 1": [6, 0, 2, 3, 8, 3, 0, 2, 4, 5, 4, 1, 3, 6, 9, 8], + "List 2": [3, 1, 2, 6, 5, 3, 9, 8, 9, 1, 6, 1, 0, 2, 8, 9], + "List 3": [5, 3, 1, 2, 7, 9, 4, 8, 8, 9, 3, 2, 8, 4, 7, 4], + "List 4": [3, 8, 7, 3, 6, 4, 0, 0, 6, 8, 1, 5, 8, 7, 5, 1], + "List 5": [4, 0, 8, 6, 1, 3, 6, 1, 7, 6, 8, 7, 3, 7, 8, 2], + "List 6": [0, 8, 2, 6, 0, 0, 9, 9, 8, 6, 9, 4, 8, 5, 5, 0], + "List 7": [0, 9, 3, 9, 4, 0, 5, 6, 2, 4, 6, 7, 7, 7, 8, 0], + "List 8": [4, 9, 1, 4, 8, 5, 1, 4, 4, 7, 4, 9, 3, 9, 6, 7] +}} + + +Input: {input}""" + + got_merge_prompt = """ Merge the following 2 sorted lists of length {length1} each, into one sorted list of length {length2} using a merge sort style approach. +Only output the final merged list without any additional text or thoughts!: + + +To merge the two lists in a merge-sort style approach, foloow these steps: +1. Compare the first element of both lists. +2. Append the smaller element to the merged list and move to the next element in the list from which the smaller element came. +3. Repeat steps 1 and 2 until one of the lists is empty. +4. Append the remaining elements of the non-empty list to the merged list. + + +Merge the following two lists into one sorted list: +1: {input1} +2: {input2} + +Merged list: +""" + + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate an aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + :raise AssertionError: If not exactly two thought states are provided. + """ + assert len(state_dicts) == 2, "Expected two states for aggregation prompt." + len_input1 = len(utils.string_to_list(state_dicts[0]["current"])) + len_input2 = len(utils.string_to_list(state_dicts[1]["current"])) + if len_input1 == len_input2: + length = len_input1 + elif len_input1 + len_input2 - 32 <= 16: + length = 16 + elif len_input1 + len_input2 - 64 <= 32: + length = 32 + else: + length = 64 + + return self.got_merge_prompt.format( + input1=state_dicts[0]["current"], + input2=state_dicts[1]["current"], + length1=length, + length2=length * 2, + ) + + def generate_prompt( + self, num_branches: int, original: str, current: str, method: str, **kwargs + ) -> str: + """ + Generate a generate prompt for the language model. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param original: Input list of numbers. + :type original: str + :param current: Intermediate solution. + :type current: str + :param method: Method for which the generate prompt is generated. + :type method: str + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + :raise AssertionError: If the requested number of branches is not one. + """ + + assert num_branches == 1, "Branching should be done via multiple requests." + if current is None or current == "": + input = original + else: + input = current + if method.startswith("io"): + return self.sort_prompt.format(input=input) + elif method.startswith("cot"): + return self.sort_prompt_cot.format(input=input) + elif method.startswith("tot"): + if current is None or current == "": + return self.sort_prompt.format(input=input) + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + elif method.startswith("got"): + if current is None or current == "": + return self.got_split_prompt.format(input=input) + # if current is just a sublist of the original input, return the split prompt + if kwargs["phase"] == 1: + return self.sort_prompt.format(input=current) + + if ( + "unsorted_sublist" in kwargs + and kwargs["unsorted_sublist"] != "" + and len(kwargs["unsorted_sublist"]) < len(original) - 5 + ): + original = kwargs["unsorted_sublist"] + + return self.tot_improve_prompt.format( + input=original, + incorrectly_sorted=current, + length=len(utils.string_to_list(original)), + ) + + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass + + +class SortingParser(parser.Parser): + """ + SortingParser provides the parsing of language model reponses specific to + the sorting example. + + Inherits from the Parser class and implements its abstract methods. + """ + + def __init__(self) -> None: + """ + Inits the response cache. + """ + self.cache = {} + + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for an aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: Union[Dict, List[Dict]] + :raise AssertionError: If not exactly two thought states are provided. + """ + + assert len(states) == 2, "Expected two states for aggregation answer." + new_states = [] + for text in texts: + answers = text.strip().split("\n") + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers_stripped = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if len(answers_stripped) == 0: + for answer in answers: + answer = "[" + answer + "]" + try: + answer_converted = utils.string_to_list(answer) + if len(answer_converted) > 0: + answers_stripped.append(answer) + except: + pass + if len(answers_stripped) == 0: + logging.warning( + f"Could not parse aggregation answer: {text}. Returning empty list." + ) + answer = "[]" + else: + answer = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers_stripped + ][0] + states = sorted(states, key=lambda x: x["part"]) + merged_unsorted_sublists = ( + states[0]["unsorted_sublist"][:-1] + + ", " + + states[1]["unsorted_sublist"][1:] + ) + new_state = states[0].copy() + new_state["current"] = answer + new_state["unsorted_sublist"] = merged_unsorted_sublists + new_states.append(new_state) + return new_states + + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the respones from the language model. + :rtype: List[Dict] + """ + new_states = [] + for text in texts: + if state["method"] == "got" and state["current"] == "": + # We expect a json which contains the four lists named "List 1" to "List 4" + # cut everything until the opening bracket and everything after the closing bracket + try: + text = text[text.index("{") : text.index("}") + 1] + json_dict = json.loads(text) + if len(json_dict.keys()) != 4: + logging.warning( + f"Expected 4 lists in json, but found {len(json_dict.keys())}." + ) + for key, value in json_dict.items(): + if "List" not in key: + logging.warning( + f"Expected key to contain 'List', but found {key}." + ) + continue + if not isinstance(value, list): + value = utils.string_to_list(value) + new_state = state.copy() + new_state["current"] = str(value) + new_state["unsorted_sublist"] = str(value) + new_state["phase"] = 1 + new_state["part"] = key + new_states.append(new_state) + except Exception as e: + logging.error( + f"Could not parse step answer: {text}. Encountered exception: {e}" + ) + else: + answers = text.strip().split("\n") + answers = [ + answer for answer in answers if "[" in answer and "]" in answer + ] + if any(["Output" in answer for answer in answers]): + # cut elements until last output is found + for answer in reversed(answers): + if "Output" in answer: + answers = answers[answers.index(answer) :] + break + + answers = [ + answer[answer.index("[") : answer.index("]") + 1] + for answer in answers + ] + if len(answers) == 0: + logging.warning( + f"Could not parse step answer: {text}. Returning empty list." + ) + answer = "[]" + else: + if len(answers) > 1: + logging.warning( + f"Multiple answers found for step answer: {text}. Using the first one." + ) + answer = answers[0] + + new_state = state.copy() + new_state["current"] = answer + new_state["phase"] = 2 + new_states.append(new_state) + return new_states + + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the responses from the language model. + :rtype: Dict + """ + pass + + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass + + +def io() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the IO method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def cot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the CoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 1)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT method. + ToT uses a wider tree, where on each level there are more branches. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(3): + operations_graph.append_operation(operations.Generate(1, 20)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def tot2() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the ToT2 method. + ToT2 uses a tree with more levels, but with fewer branches per level. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_1 = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_1) + + for _ in range(9): + operations_graph.append_operation(operations.Generate(1, 10)) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_2 = operations.KeepBestN(1, False) + keep_best_2.add_predecessor(keep_best_1) + operations_graph.append_operation(keep_best_2) + keep_best_1 = keep_best_2 + + operations_graph.append_operation(operations.KeepBestN(1, False)) + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.KeepBestN(1, False)) + + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def got() -> operations.GraphOfOperations: + """ + Generates the Graph of Operations for the GoT method. + + :return: Graph of Operations + :rtype: GraphOfOperations + """ + operations_graph = operations.GraphOfOperations() + + plans = operations.Generate(1, 1) + operations_graph.append_operation(plans) # generate the sublists + sorted_sublists = [] + for i in range(1, 9): + list_id = f"List {i}" + sub_list = operations.Selector( + lambda thoughts, list_id=list_id: [ + thought for thought in thoughts if thought.state["part"] == list_id + ] + ) + sub_list.add_predecessor(plans) + operations_graph.add_operation(sub_list) + sort_sub_list = operations.Generate(1, 5) + sort_sub_list.add_predecessor(sub_list) + operations_graph.add_operation(sort_sub_list) + score_sub_list = operations.Score(1, False, utils.num_errors) + score_sub_list.add_predecessor(sort_sub_list) + operations_graph.add_operation(score_sub_list) + keep_best_sub_list = operations.KeepBestN(1, False) + keep_best_sub_list.add_predecessor(score_sub_list) + operations_graph.add_operation(keep_best_sub_list) + + sorted_sublists.append(keep_best_sub_list) + + aggregate_1 = operations.Aggregate(10) + aggregate_1.add_predecessor(sorted_sublists[0]) + aggregate_1.add_predecessor(sorted_sublists[1]) + operations_graph.add_operation(aggregate_1) + score_aggregate_1 = operations.Score(1, False, utils.num_errors) + score_aggregate_1.add_predecessor(aggregate_1) + operations_graph.add_operation(score_aggregate_1) + keep_best_aggregate_1 = operations.KeepBestN(1, False) + keep_best_aggregate_1.add_predecessor(score_aggregate_1) + operations_graph.add_operation(keep_best_aggregate_1) + + improve_aggregate_1 = operations.Generate(1, 5) + improve_aggregate_1.add_predecessor(keep_best_aggregate_1) + operations_graph.add_operation(improve_aggregate_1) + improve_score_aggregate_1 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_1.add_predecessor(improve_aggregate_1) + improve_score_aggregate_1.add_predecessor(keep_best_aggregate_1) + operations_graph.add_operation(improve_score_aggregate_1) + improve_keep_best_aggregate_1 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_1.add_predecessor(improve_score_aggregate_1) + operations_graph.add_operation(improve_keep_best_aggregate_1) + + aggregate_2 = operations.Aggregate(10) + aggregate_2.add_predecessor(sorted_sublists[2]) + aggregate_2.add_predecessor(sorted_sublists[3]) + operations_graph.add_operation(aggregate_2) + score_aggregate_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_2.add_predecessor(aggregate_2) + operations_graph.add_operation(score_aggregate_2) + keep_best_aggregate_2 = operations.KeepBestN(1, False) + keep_best_aggregate_2.add_predecessor(score_aggregate_2) + operations_graph.add_operation(keep_best_aggregate_2) + + improve_aggregate_2 = operations.Generate(1, 5) + improve_aggregate_2.add_predecessor(keep_best_aggregate_2) + operations_graph.add_operation(improve_aggregate_2) + improve_score_aggregate_2 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_2.add_predecessor(improve_aggregate_2) + improve_score_aggregate_2.add_predecessor(keep_best_aggregate_2) + operations_graph.add_operation(improve_score_aggregate_2) + improve_keep_best_aggregate_2 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_2.add_predecessor(improve_score_aggregate_2) + operations_graph.add_operation(improve_keep_best_aggregate_2) + + aggregate_3 = operations.Aggregate(10) + aggregate_3.add_predecessor(sorted_sublists[4]) + aggregate_3.add_predecessor(sorted_sublists[5]) + operations_graph.add_operation(aggregate_3) + score_aggregate_3 = operations.Score(1, False, utils.num_errors) + score_aggregate_3.add_predecessor(aggregate_3) + operations_graph.add_operation(score_aggregate_3) + keep_best_aggregate_3 = operations.KeepBestN(1, False) + keep_best_aggregate_3.add_predecessor(score_aggregate_3) + operations_graph.add_operation(keep_best_aggregate_3) + + improve_aggregate_3 = operations.Generate(1, 5) + improve_aggregate_3.add_predecessor(keep_best_aggregate_3) + operations_graph.add_operation(improve_aggregate_3) + improve_score_aggregate_3 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_3.add_predecessor(improve_aggregate_3) + improve_score_aggregate_3.add_predecessor(keep_best_aggregate_3) + operations_graph.add_operation(improve_score_aggregate_3) + improve_keep_best_aggregate_3 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_3.add_predecessor(improve_score_aggregate_3) + operations_graph.add_operation(improve_keep_best_aggregate_3) + + aggregate_4 = operations.Aggregate(10) + aggregate_4.add_predecessor(sorted_sublists[6]) + aggregate_4.add_predecessor(sorted_sublists[7]) + operations_graph.add_operation(aggregate_4) + score_aggregate_4 = operations.Score(1, False, utils.num_errors) + score_aggregate_4.add_predecessor(aggregate_4) + operations_graph.add_operation(score_aggregate_4) + keep_best_aggregate_4 = operations.KeepBestN(1, False) + keep_best_aggregate_4.add_predecessor(score_aggregate_4) + operations_graph.add_operation(keep_best_aggregate_4) + + improve_aggregate_4 = operations.Generate(1, 5) + improve_aggregate_4.add_predecessor(keep_best_aggregate_4) + operations_graph.add_operation(improve_aggregate_4) + improve_score_aggregate_4 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_4.add_predecessor(improve_aggregate_4) + improve_score_aggregate_4.add_predecessor(keep_best_aggregate_4) + operations_graph.add_operation(improve_score_aggregate_4) + improve_keep_best_aggregate_4 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_4.add_predecessor(improve_score_aggregate_4) + operations_graph.add_operation(improve_keep_best_aggregate_4) + + aggregate_1_2 = operations.Aggregate(10) + aggregate_1_2.add_predecessor(improve_keep_best_aggregate_1) + aggregate_1_2.add_predecessor(improve_keep_best_aggregate_2) + operations_graph.add_operation(aggregate_1_2) + score_aggregate_1_2 = operations.Score(1, False, utils.num_errors) + score_aggregate_1_2.add_predecessor(aggregate_1_2) + operations_graph.add_operation(score_aggregate_1_2) + keep_best_aggregate_1_2 = operations.KeepBestN(1, False) + keep_best_aggregate_1_2.add_predecessor(score_aggregate_1_2) + operations_graph.add_operation(keep_best_aggregate_1_2) + + improve_aggregate_1_2 = operations.Generate(1, 5) + improve_aggregate_1_2.add_predecessor(keep_best_aggregate_1_2) + operations_graph.add_operation(improve_aggregate_1_2) + improve_score_aggregate_1_2 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_1_2.add_predecessor(improve_aggregate_1_2) + improve_score_aggregate_1_2.add_predecessor(keep_best_aggregate_1_2) + operations_graph.add_operation(improve_score_aggregate_1_2) + improve_keep_best_aggregate_1_2 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_1_2.add_predecessor(improve_score_aggregate_1_2) + operations_graph.add_operation(improve_keep_best_aggregate_1_2) + + aggregate_3_4 = operations.Aggregate(10) + aggregate_3_4.add_predecessor(improve_keep_best_aggregate_3) + aggregate_3_4.add_predecessor(improve_keep_best_aggregate_4) + operations_graph.add_operation(aggregate_3_4) + score_aggregate_3_4 = operations.Score(1, False, utils.num_errors) + score_aggregate_3_4.add_predecessor(aggregate_3_4) + operations_graph.add_operation(score_aggregate_3_4) + keep_best_aggregate_3_4 = operations.KeepBestN(1, False) + keep_best_aggregate_3_4.add_predecessor(score_aggregate_3_4) + operations_graph.add_operation(keep_best_aggregate_3_4) + + improve_aggregate_3_4 = operations.Generate(1, 5) + improve_aggregate_3_4.add_predecessor(keep_best_aggregate_3_4) + operations_graph.add_operation(improve_aggregate_3_4) + improve_score_aggregate_3_4 = operations.Score(1, False, utils.num_errors) + improve_score_aggregate_3_4.add_predecessor(improve_aggregate_3_4) + improve_score_aggregate_3_4.add_predecessor(keep_best_aggregate_3_4) + operations_graph.add_operation(improve_score_aggregate_3_4) + improve_keep_best_aggregate_3_4 = operations.KeepBestN(1, False) + improve_keep_best_aggregate_3_4.add_predecessor(improve_score_aggregate_3_4) + operations_graph.add_operation(improve_keep_best_aggregate_3_4) + + final_aggregate = operations.Aggregate(10) + operations_graph.append_operation(final_aggregate) + operations_graph.append_operation(operations.Score(1, False, utils.num_errors)) + keep_best_aggregate_final = operations.KeepBestN(1, False) + operations_graph.append_operation(keep_best_aggregate_final) + + operations_graph.append_operation(operations.Generate(1, 10)) + score_aggr_3 = operations.Score(1, False, utils.num_errors) + score_aggr_3.add_predecessor(keep_best_aggregate_final) + operations_graph.append_operation(score_aggr_3) + keep_final_best = operations.KeepBestN(1, False) + keep_final_best.add_predecessor(keep_best_aggregate_final) + operations_graph.append_operation(keep_final_best) + + operations_graph.append_operation(operations.GroundTruth(utils.test_sorting)) + + return operations_graph + + +def run( + data_ids: List[int], + methods: List[Callable[[], operations.GraphOfOperations]], + budget: float, + lm_name: str, +) -> float: + """ + Controller function that executes each specified method for each specified + sample while the budget is not exhausted. + + :param data_ids: Indices of the sample to be run. + :type data_ids: List[int] + :param methods: List of functions to generate Graphs of Operations. + :type methods: Each function generates a Graph of Operation. + :param budget: Language model budget for the execution in dollars. + :type budget: float + :param lm_name: Name of the language model to be used. + :type lm_name: str + :return: Spent budget in dollars. + :rtype: float + """ + + orig_budget = budget + path = os.path.join(os.path.dirname(__file__), "sorting_128.csv") + data = [] + with open(path, "r") as f: + reader = csv.reader(f) + next(reader) + for row in reader: + data.append([int(row[0]), row[1], row[2]]) + + if data_ids is None or len(data_ids) == 0: + data_ids = list(range(len(data))) + selected_data = [data[i] for i in data_ids] + + if not os.path.exists(os.path.join(os.path.dirname(__file__), "results")): + os.makedirs(os.path.join(os.path.dirname(__file__), "results")) + timestamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S") + extra_info = f"{lm_name}_{'-'.join([method.__name__ for method in methods])}" + folder_name = f"results/{extra_info}_{timestamp}" + os.makedirs(os.path.join(os.path.dirname(__file__), folder_name)) + + config = { + "data": selected_data, + "methods": [method.__name__ for method in methods], + "lm": lm_name, + "budget": budget, + } + with open( + os.path.join(os.path.dirname(__file__), folder_name, "config.json"), "w" + ) as f: + json.dump(config, f) + + logging.basicConfig( + filename=f"{folder_name}/log.log", + filemode="w", + format="%(name)s - %(levelname)s - %(message)s", + level=logging.DEBUG, + ) + + for method in methods: + os.makedirs( + os.path.join(os.path.dirname(__file__), folder_name, method.__name__) + ) + + for data in selected_data: + logging.info(f"Running data {data[0]}: {data[1]}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Data {data[0]} has not been run." + ) + break + for method in methods: + logging.info(f"Running method {method.__name__}") + logging.info(f"Budget left: {budget}") + if budget <= 0.0: + logging.error( + f"Budget has been depleted, stopping. Method {method.__name__} has not been run." + ) + break + lm = controller.ChatGPT( + "../../graph_of_thoughts/controller/config.json", + model_name=lm_name, + cache=True, + ) + operations_graph = method() + executor = controller.Controller( + lm, + operations_graph, + SortingPrompter(), + SortingParser(), + { + "original": data[1], + "current": "", + "phase": 0, + "method": method.__name__, + }, + ) + try: + executor.run() + except Exception as e: + logging.error(f"Exception: {e}") + path = os.path.join( + os.path.dirname(__file__), + folder_name, + method.__name__, + f"{data[0]}.json", + ) + executor.output_graph(path) + budget -= lm.cost + + return orig_budget - budget + + +if __name__ == "__main__": + """ + Input (x) : an unordered list of 128 numbers between 0 and 9 (inclusive) + Output (y) : a sorted list of 128 numbers between 0 and 9 (inclusive) + Correct : y == sorted(x) + Input Example: + [0, 1, 9, 4, 2, 2, 0, 5, 1...] + Output Example: + [0, 0, 0, 0, 1, 1, 1, 1, 2...] + """ + budget = 30 + samples = [item for item in range(0, 100)] + approaches = [io, cot, tot, tot2, got] + + spent = run(samples, approaches, budget, "chatgpt") + + logging.info(f"Spent {spent} out of {budget} budget.") diff --git a/examples/sorting/utils.py b/examples/sorting/utils.py new file mode 100644 index 0000000..0bad7b6 --- /dev/null +++ b/examples/sorting/utils.py @@ -0,0 +1,78 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +from typing import Dict, List + + +def string_to_list(string: str) -> List[int]: + """ + Helper function to convert a list encoded inside a string into a Python + list object of string elements. + + :param string: Input string containing a list. + :type string: str + :return: List of string elements. + :rtype: List[str] + :raise AssertionError: If input string does not contain a list. + """ + + assert string[0] == "[" and string[-1] == "]", "String is not a list." + return [int(num) for num in string[1:-1].split(",")] + + +def test_sorting(state: Dict) -> bool: + """ + Function to test whether the final solution matches ground truth. + + :param state: Thought state that represents the final solution. + :type state: Dict + :return: Returns whether the solution matches the ground truth. + :rtype: bool + """ + + try: + correct_list = sorted(string_to_list(state["original"])) + sorted_list = string_to_list(state["current"]) + return sorted_list == correct_list + except: + return False + + +def num_errors(state: Dict) -> float: + """ + Function to locally count the number of errors that serves as a score. + + :param state: Thought state to be scored. + :type state: Dict + :return: Number of errors. + :rtype: float + """ + + try: + unsorted_list = state["original"] + if ( + "unsorted_sublist" in state + and state["unsorted_sublist"] != "" + and state["unsorted_sublist"] is not None + and len(state["unsorted_sublist"]) < len(unsorted_list) - 5 + ): + unsorted_list = state["unsorted_sublist"] + correct_list = sorted(string_to_list(unsorted_list)) + current_list = string_to_list(state["current"]) + num_errors = 0 + for i in range(10): + num_errors += abs( + sum([1 for num in current_list if num == i]) + - sum([1 for num in correct_list if num == i]) + ) + num_errors += sum( + [1 for num1, num2 in zip(current_list, current_list[1:]) if num1 > num2] + ) + return num_errors + except: + return 300 diff --git a/graph_of_thoughts/__init__.py b/graph_of_thoughts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/graph_of_thoughts/controller/README.md b/graph_of_thoughts/controller/README.md new file mode 100644 index 0000000..afddcbf --- /dev/null +++ b/graph_of_thoughts/controller/README.md @@ -0,0 +1,117 @@ +# Controller + +The Controller class is responsible for traversing the Graph of Operations (GoO), which is a static structure that is constructed once, before the execution starts. +GoO prescribes the execution plan of thought operations and the Controller invokes their execution, generating the Graph Reasoning State (GRS). + +In order for a GoO to be executed, an instance of Large Language Model (LLM) must be supplied to the controller. +Currently, the framework supports the following LLMs: +- GPT-4 / GPT-3.5 (Remote - OpenAI API) +- Llama-2 (Local - HuggingFace Transformers) + +The following section describes how to instantiate individual LLMs and the Controller to run a defined GoO. +Furthermore, process of adding new LLM into the framework is outlined at the end. + +## LLM Instantiation +- Create a copy of `config_template.json` named `config.json`. +- Fill configuration details based on the used model (below). + +### GPT-4 / GPT-3.5 +- Adjust predefined `chatgpt`, `chatgpt4` or create new configuration with unique key. + +| Key | Value | +|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| model_id | Model name based on [OpenAI model overview](https://platform.openai.com/docs/models/overview). | +| prompt_token_cost | Price per 1000 prompt tokens based on [OpenAI pricing](https://openai.com/pricing), used for calculating cumulative price per LLM instance. | +| response_token_cost | Price per 1000 response tokens based on [OpenAI pricing](https://openai.com/pricing), used for calculating cumulative price per LLM instance. | +| temperature | Parameter of OpenAI models that controls randomness and the creativity of the responses (higher temperature = more diverse and unexpected responses). Value between 0.0 and 2.0, default is 1.0. More information can be found in the [OpenAI API reference](https://platform.openai.com/docs/api-reference/completions/create#completions/create-temperature). | +| max_tokens | The maximum number of tokens to generate in the chat completion. Value depends on the maximum context size of the model specified in the [OpenAI model overview](https://platform.openai.com/docs/models/overview). More information can be found in the [OpenAI API reference](https://platform.openai.com/docs/api-reference/chat/create#chat/create-max_tokens). | +| stop | String or array of strings specifying sequence of characters which if detected, stops further generation of tokens. More information can be found in the [OpenAI API reference](https://platform.openai.com/docs/api-reference/chat/create#chat/create-stop). | +| organization | Organization to use for the API requests (may be empty). | +| api_key | Personal API key that will be used to access OpenAI API. | + +- Instantiate the language model based on the selected configuration key (predefined / custom). +``` +lm = controller.ChatGPT( + "path/to/config.json", + model_name= +) +``` + +### Llama-2 +- Requires local hardware to run inference and HuggingFace account. +- Adjust predefined `llama7b-hf`, `llama13b-hf`, `llama70b-hf` or create new configuration with unique key. + +| Key | Value | +|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| model_id | Specifies HuggingFace Llama 2 model identifier (`meta-llama/`). | +| cache_dir | Local directory where model will be downloaded and accessed. | +| prompt_token_cost | Price per 1000 prompt tokens (currently not used - local model = no cost). | +| response_token_cost | Price per 1000 response tokens (currently not used - local model = no cost). | +| temperature | Parameter that controls randomness and the creativity of the responses (higher temperature = more diverse and unexpected responses). Value between 0.0 and 1.0, default is 0.6. | +| top_k | Top-K sampling method described in [Transformers tutorial](https://huggingface.co/blog/how-to-generate). Default value is set to 10. | +| max_tokens | The maximum number of tokens to generate in the chat completion. More tokens require more memory. | + +- Instantiate the language model based on the selected configuration key (predefined / custom). +``` +lm = controller.Llama2HF( + "path/to/config.json", + model_name= +) +``` +- Request access to Llama-2 via [Meta form](https://ai.meta.com/resources/models-and-libraries/llama-downloads/) using same email address as for the HuggingFace account. +- After the access is granted, go to [HuggingFace Llama-2 model card](https://huggingface.co/meta-llama/Llama-2-7b-chat-hf), log in and accept licence (_"You have been granted access to this model"_ message should appear). +- Generate HuggingFace access token. +- Log in from CLI with: `huggingface-cli login --token `. + +Note: 4-bit quantization is used to reduce the model size for inference. During instantiation, the model is downloaded from HuggingFace into the cache directory specified in the `config.json`. Running queries using larger models will require multiple GPUs (splitting across many GPUs is done automatically by the Transformers library). + +## Controller Instantiation +- Requires custom `Prompter`, `Parser` and instantiated `GraphOfOperations` - creation of these is described separately. +- Use instantiated `lm` from above. +- Prepare initial state (thought) as dictionary - this can be used in the initial prompts by the operations. +``` +graph_of_operations = ...create + +executor = controller.Controller( + lm, + graph_of_operations, + , + , + , +) +executor.run() +executor.output_graph("path/to/output.json") +``` +- After the run the graph is written to an output file, which contains individual operations, their thoughts, information about scores and validity and total amount of used tokens / cost. + +## Adding LLMs +More LLMs can be added by following these steps: +- Create new class as a subclass of `AbstractLanguageModel`. +- Use the constructor for loading configuration and instantiating the language model (if needed). +``` +class CustomLanguageModel(AbstractLanguageModel): + def __init__( + self, + config_path: str = "", + model_name: str = "llama7b-hf", + cache: bool = False + ) -> None: + super().__init__(config_path, model_name, cache) + self.config: Dict = self.config[model_name] + + # Load data from configuration into variables if needed + + # Instantiate LLM if needed +``` +- Implement `query` abstract method that is used to get a list of responses from the LLM (call to remote API or local model inference). +``` +def query(self, query: str, num_responses: int = 1) -> Any: + # Support caching + # Call LLM and retrieve list of responses - based on num_responses + # Return LLM response structure (not only raw strings) +``` +- Implement `get_response_texts` abstract method that is used to get a list of raw texts from the LLM response structure produced by `query`. +``` +def get_response_texts(self, query_response: Union[List[Dict], Dict]) -> List[str]: + # Retrieve list of raw strings from the LLM response structure +``` \ No newline at end of file diff --git a/graph_of_thoughts/controller/__init__.py b/graph_of_thoughts/controller/__init__.py new file mode 100644 index 0000000..921470f --- /dev/null +++ b/graph_of_thoughts/controller/__init__.py @@ -0,0 +1,4 @@ +from .chatgpt import ChatGPT +from .llamachat_hf import Llama2HF +from .abstract_language_model import AbstractLanguageModel +from .controller import Controller diff --git a/graph_of_thoughts/controller/abstract_language_model.py b/graph_of_thoughts/controller/abstract_language_model.py new file mode 100644 index 0000000..a066eaf --- /dev/null +++ b/graph_of_thoughts/controller/abstract_language_model.py @@ -0,0 +1,92 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +from abc import ABC, abstractmethod +from typing import List, Dict, Union, Any +import json +import os +import logging + + +class AbstractLanguageModel(ABC): + """ + Abstract base class that defines the interface for all language models. + """ + + def __init__( + self, config_path: str = "", model_name: str = "", cache: bool = False + ) -> None: + """ + Initialize the AbstractLanguageModel instance with configuration, model details, and caching options. + + :param config_path: Path to the config file. Defaults to "". + :type config_path: str + :param model_name: Name of the language model. Defaults to "". + :type model_name: str + :param cache: Flag to determine whether to cache responses. Defaults to False. + :type cache: bool + """ + self.logger = logging.getLogger(self.__class__.__name__) + self.config: Dict = None + self.model_name: str = model_name + self.cache = cache + if self.cache: + self.respone_cache: Dict[str, List[Any]] = {} + self.load_config(config_path) + self.prompt_tokens: int = 0 + self.completion_tokens: int = 0 + self.cost: float = 0.0 + + def load_config(self, path: str) -> None: + """ + Load configuration from a specified path. + + :param path: Path to the config file. If an empty path provided, + default is `config.json` in the current directory. + :type path: str + """ + if path == "": + current_dir = os.path.dirname(os.path.abspath(__file__)) + path = os.path.join(current_dir, "config.json") + + with open(path, "r") as f: + self.config = json.load(f) + + self.logger.debug(f"Loaded config from {path} for {self.model_name}") + + def clear_cache(self) -> None: + """ + Clear the response cache. + """ + self.respone_cache.clear() + + @abstractmethod + def query(self, query: str, num_responses: int = 1) -> Any: + """ + Abstract method to query the language model. + + :param query: The query to be posed to the language model. + :type query: str + :param num_responses: The number of desired responses. + :type num_responses: int + :return: The language model's response(s). + :rtype: Any + """ + pass + + @abstractmethod + def get_response_texts(self, query_responses: Union[List[Dict], Dict]) -> List[str]: + """ + Abstract method to extract response texts from the language model's response(s). + + :param query_responses: The responses returned from the language model. + :type query_responses: Union[List[Dict], Dict] + :return: List of textual responses. + :rtype: List[str] + """ + pass diff --git a/graph_of_thoughts/controller/chatgpt.py b/graph_of_thoughts/controller/chatgpt.py new file mode 100644 index 0000000..52da92a --- /dev/null +++ b/graph_of_thoughts/controller/chatgpt.py @@ -0,0 +1,156 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import backoff +import openai +import os +import random +import time +from typing import List, Dict, Union + +from .abstract_language_model import AbstractLanguageModel + + +class ChatGPT(AbstractLanguageModel): + """ + The ChatGPT class handles interactions with the OpenAI models using the provided configuration. + + Inherits from the AbstractLanguageModel and implements its abstract methods. + """ + + def __init__( + self, config_path: str = "", model_name: str = "chatgpt", cache: bool = False + ) -> None: + """ + Initialize the ChatGPT instance with configuration, model details, and caching options. + + :param config_path: Path to the configuration file. Defaults to "". + :type config_path: str + :param model_name: Name of the model, default is 'chatgpt'. Used to select the correct configuration. + :type model_name: str + :param cache: Flag to determine whether to cache responses. Defaults to False. + :type cache: bool + """ + super().__init__(config_path, model_name, cache) + self.config: Dict = self.config[model_name] + # The model_id is the id of the model that is used for chatgpt, i.e. gpt-4, gpt-3.5-turbo, etc. + self.model_id: str = self.config["model_id"] + # The prompt_token_cost and response_token_cost are the costs for 1000 prompt tokens and 1000 response tokens respectively. + self.prompt_token_cost: float = self.config["prompt_token_cost"] + self.response_token_cost: float = self.config["response_token_cost"] + # The temperature of a model is defined as the randomness of the model's output. + self.temperature: float = self.config["temperature"] + # The maximum number of tokens to generate in the chat completion. + self.max_tokens: int = self.config["max_tokens"] + # The stop sequence is a sequence of tokens that the model will stop generating at (it will not generate the stop sequence). + self.stop: Union[str, List[str]] = self.config["stop"] + # The account organization is the organization that is used for chatgpt. + self.organization: str = self.config["organization"] + if self.organization == "": + self.logger.warning("OPENAI_ORGANIZATION is not set") + else: + openai.organization = self.organization + # The api key is the api key that is used for chatgpt. Env variable OPENAI_API_KEY takes precedence over config. + self.api_key: str = os.getenv("OPENAI_API_KEY", self.config["api_key"]) + if self.api_key == "": + raise ValueError("OPENAI_API_KEY is not set") + openai.api_key = self.api_key + + def query(self, query: str, num_responses: int = 1) -> Dict: + """ + Query the OpenAI model for responses. + + :param query: The query to be posed to the language model. + :type query: str + :param num_responses: Number of desired responses, default is 1. + :type num_responses: int + :return: Response(s) from the OpenAI model. + :rtype: Dict + """ + if self.cache and query in self.respone_cache: + return self.respone_cache[query] + + if num_responses == 1: + response = self.chat([{"role": "user", "content": query}], num_responses) + else: + response = [] + next_try = num_responses + total_num_attempts = num_responses + while num_responses > 0 and total_num_attempts > 0: + try: + assert next_try > 0 + res = self.chat([{"role": "user", "content": query}], next_try) + response.append(res) + num_responses -= next_try + next_try = min(num_responses, next_try) + except Exception as e: + next_try = (next_try + 1) // 2 + self.logger.warning( + f"Error in chatgpt: {e}, trying again with {next_try} samples" + ) + time.sleep(random.randint(1, 3)) + total_num_attempts -= 1 + + if self.cache: + self.respone_cache[query] = response + return response + + @backoff.on_exception( + backoff.expo, openai.error.OpenAIError, max_time=10, max_tries=6 + ) + def chat(self, messages: List[Dict], num_responses: int = 1) -> Dict: + """ + Send chat messages to the OpenAI model and retrieves the model's response. + Implements backoff on OpenAI error. + + :param messages: A list of message dictionaries for the chat. + :type messages: List[Dict] + :param num_responses: Number of desired responses, default is 1. + :type num_responses: int + :return: The OpenAI model's response. + :rtype: Dict + """ + response = openai.ChatCompletion.create( + model=self.model_id, + messages=messages, + temperature=self.temperature, + max_tokens=self.max_tokens, + n=num_responses, + stop=self.stop, + ) + + self.prompt_tokens += response["usage"]["prompt_tokens"] + self.completion_tokens += response["usage"]["completion_tokens"] + prompt_tokens_k = float(self.prompt_tokens) / 1000.0 + completion_tokens_k = float(self.completion_tokens) / 1000.0 + self.cost = ( + self.prompt_token_cost * prompt_tokens_k + + self.response_token_cost * completion_tokens_k + ) + self.logger.info( + f"This is the response from chatgpt: {response}" + f"\nThis is the cost of the response: {self.cost}" + ) + return response + + def get_response_texts(self, query_response: Union[List[Dict], Dict]) -> List[str]: + """ + Extract the response texts from the query response. + + :param query_response: The response dictionary (or list of dictionaries) from the OpenAI model. + :type query_response: Union[List[Dict], Dict] + :return: List of response strings. + :rtype: List[str] + """ + if isinstance(query_response, Dict): + query_response = [query_response] + return [ + choice["message"]["content"] + for response in query_response + for choice in response["choices"] + ] diff --git a/graph_of_thoughts/controller/config_template.json b/graph_of_thoughts/controller/config_template.json new file mode 100644 index 0000000..3ec45ae --- /dev/null +++ b/graph_of_thoughts/controller/config_template.json @@ -0,0 +1,49 @@ +{ + "chatgpt" : { + "model_id": "gpt-3.5-turbo", + "prompt_token_cost": 0.0015, + "response_token_cost": 0.002, + "temperature": 1.0, + "max_tokens": 1536, + "stop": null, + "organization": "", + "api_key": "" + }, + "chatgpt4" : { + "model_id": "gpt-4", + "prompt_token_cost": 0.03, + "response_token_cost": 0.06, + "temperature": 1.0, + "max_tokens": 4096, + "stop": null, + "organization": "", + "api_key": "" + }, + "llama7b-hf" : { + "model_id": "Llama-2-7b-chat-hf", + "cache_dir": "/llama", + "prompt_token_cost": 0.0, + "response_token_cost": 0.0, + "temperature": 0.6, + "top_k": 10, + "max_tokens": 4096 + }, + "llama13b-hf" : { + "model_id": "Llama-2-13b-chat-hf", + "cache_dir": "/llama", + "prompt_token_cost": 0.0, + "response_token_cost": 0.0, + "temperature": 0.6, + "top_k": 10, + "max_tokens": 4096 + }, + "llama70b-hf" : { + "model_id": "Llama-2-70b-chat-hf", + "cache_dir": "/llama", + "prompt_token_cost": 0.0, + "response_token_cost": 0.0, + "temperature": 0.6, + "top_k": 10, + "max_tokens": 4096 + } +} diff --git a/graph_of_thoughts/controller/controller.py b/graph_of_thoughts/controller/controller.py new file mode 100644 index 0000000..f42d519 --- /dev/null +++ b/graph_of_thoughts/controller/controller.py @@ -0,0 +1,152 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +import json +import logging +from typing import List +from .abstract_language_model import AbstractLanguageModel +from graph_of_thoughts.operations import GraphOfOperations, Thought +from graph_of_thoughts.prompter import Prompter +from graph_of_thoughts.parser import Parser + + +class Controller: + """ + Controller class to manage the execution flow of the Graph of Operations, + generating the Graph Reasoning State. + This involves language models, graph operations, prompting, and parsing. + """ + + def __init__( + self, + lm: AbstractLanguageModel, + graph: GraphOfOperations, + prompter: Prompter, + parser: Parser, + problem_parameters: dict, + ) -> None: + """ + Initialize the Controller instance with the language model, + operations graph, prompter, parser, and problem parameters. + + :param lm: An instance of the AbstractLanguageModel. + :type lm: AbstractLanguageModel + :param graph: The Graph of Operations to be executed. + :type graph: OperationsGraph + :param prompter: An instance of the Prompter class, used to generate prompts. + :type prompter: Prompter + :param parser: An instance of the Parser class, used to parse responses. + :type parser: Parser + :param problem_parameters: Initial parameters/state of the problem. + :type problem_parameters: dict + """ + self.logger = logging.getLogger(self.__class__.__module__) + self.lm = lm + self.graph = graph + self.prompter = prompter + self.parser = parser + self.problem_parameters = problem_parameters + self.run_executed = False + + def run(self) -> None: + """ + Run the controller and execute the operations from the Graph of + Operations based on their readiness. + Ensures the program is in a valid state before execution. + :raises AssertionError: If the Graph of Operation has no roots. + :raises AssertionError: If the successor of an operation is not in the Graph of Operations. + """ + self.logger.debug("Checking that the program is in a valid state") + assert self.graph.roots is not None, "The operations graph has no root" + self.logger.debug("The program is in a valid state") + + execution_queue = [ + operation + for operation in self.graph.operations + if operation.can_be_executed() + ] + + while len(execution_queue) > 0: + current_operation = execution_queue.pop(0) + self.logger.info("Executing operation %s", current_operation.operation_type) + current_operation.execute( + self.lm, self.prompter, self.parser, **self.problem_parameters + ) + self.logger.info("Operation %s executed", current_operation.operation_type) + for operation in current_operation.successors: + assert ( + operation in self.graph.operations + ), "The successor of an operation is not in the operations graph" + if operation.can_be_executed(): + execution_queue.append(operation) + self.logger.info("All operations executed") + self.run_executed = True + + def get_final_thoughts(self) -> List[List[Thought]]: + """ + Retrieve the final thoughts after all operations have been executed. + + :return: List of thoughts for each operation in the graph's leaves. + :rtype: List[List[Thought]] + :raises AssertionError: If the `run` method hasn't been executed yet. + """ + assert self.run_executed, "The run method has not been executed" + return [operation.get_thoughts() for operation in self.graph.leaves] + + def output_graph(self, path: str) -> None: + """ + Serialize the state and results of the operations graph to a JSON file. + + :param path: The path to the output file. + :type path: str + """ + output = [] + for operation in self.graph.operations: + operation_serialized = { + "operation": operation.operation_type.name, + "thoughts": [thought.state for thought in operation.get_thoughts()], + } + if any([thought.scored for thought in operation.get_thoughts()]): + operation_serialized["scored"] = [ + thought.scored for thought in operation.get_thoughts() + ] + operation_serialized["scores"] = [ + thought.score for thought in operation.get_thoughts() + ] + if any([thought.validated for thought in operation.get_thoughts()]): + operation_serialized["validated"] = [ + thought.validated for thought in operation.get_thoughts() + ] + operation_serialized["validity"] = [ + thought.valid for thought in operation.get_thoughts() + ] + if any( + [ + thought.compared_to_ground_truth + for thought in operation.get_thoughts() + ] + ): + operation_serialized["compared_to_ground_truth"] = [ + thought.compared_to_ground_truth + for thought in operation.get_thoughts() + ] + operation_serialized["problem_solved"] = [ + thought.solved for thought in operation.get_thoughts() + ] + output.append(operation_serialized) + + output.append( + { + "prompt_tokens": self.lm.prompt_tokens, + "completion_tokens": self.lm.completion_tokens, + "cost": self.lm.cost, + } + ) + + with open(path, "w") as file: + file.write(json.dumps(output, indent=2)) diff --git a/graph_of_thoughts/controller/llamachat_hf.py b/graph_of_thoughts/controller/llamachat_hf.py new file mode 100644 index 0000000..0065cf8 --- /dev/null +++ b/graph_of_thoughts/controller/llamachat_hf.py @@ -0,0 +1,119 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Ales Kubicek + +import os +import torch +import transformers +from typing import List, Dict, Union +from .abstract_language_model import AbstractLanguageModel + + +class Llama2HF(AbstractLanguageModel): + """ + An interface to use LLaMA 2 models through the HuggingFace library. + """ + + def __init__( + self, config_path: str = "", model_name: str = "llama7b-hf", cache: bool = False + ) -> None: + """ + Initialize an instance of the Llama2HF class with configuration, model details, and caching options. + + :param config_path: Path to the configuration file. Defaults to an empty string. + :type config_path: str + :param model_name: Specifies the name of the LLaMA model variant. Defaults to "llama7b-hf". + Used to select the correct configuration. + :type model_name: str + :param cache: Flag to determine whether to cache responses. Defaults to False. + :type cache: bool + """ + super().__init__(config_path, model_name, cache) + self.config: Dict = self.config[model_name] + # Detailed id of the used model. + self.model_id: str = self.config["model_id"] + # Costs for 1000 tokens. + self.prompt_token_cost: float = self.config["prompt_token_cost"] + self.response_token_cost: float = self.config["response_token_cost"] + # The temperature is defined as the randomness of the model's output. + self.temperature: float = self.config["temperature"] + # Top K sampling. + self.top_k: int = self.config["top_k"] + # The maximum number of tokens to generate in the chat completion. + self.max_tokens: int = self.config["max_tokens"] + + # Important: must be done before importing transformers + os.environ["TRANSFORMERS_CACHE"] = self.config["cache_dir"] + + hf_model_id = f"meta-llama/{self.model_id}" + model_config = transformers.AutoConfig.from_pretrained(hf_model_id) + bnb_config = transformers.BitsAndBytesConfig( + load_in_4bit=True, + bnb_4bit_quant_type="nf4", + bnb_4bit_use_double_quant=True, + bnb_4bit_compute_dtype=torch.bfloat16, + ) + + self.tokenizer = transformers.AutoTokenizer.from_pretrained(hf_model_id) + self.model = transformers.AutoModelForCausalLM.from_pretrained( + hf_model_id, + trust_remote_code=True, + config=model_config, + quantization_config=bnb_config, + device_map="auto", + ) + self.model.eval() + torch.no_grad() + + self.generate_text = transformers.pipeline( + model=self.model, tokenizer=self.tokenizer, task="text-generation" + ) + + def query(self, query: str, num_responses: int = 1) -> List[Dict]: + """ + Query the LLaMA 2 model for responses. + + :param query: The query to be posed to the language model. + :type query: str + :param num_responses: Number of desired responses, default is 1. + :type num_responses: int + :return: Response(s) from the LLaMA 2 model. + :rtype: List[Dict] + """ + if self.cache and query in self.respone_cache: + return self.respone_cache[query] + sequences = [] + query = f"<>You are a helpful assistant. Always follow the intstructions precisely and output the response exactly in the requested format.<>\n\n[INST] {query} [/INST]" + for _ in range(num_responses): + sequences.extend( + self.generate_text( + query, + do_sample=True, + top_k=self.top_k, + num_return_sequences=1, + eos_token_id=self.tokenizer.eos_token_id, + max_length=self.max_tokens, + ) + ) + response = [ + {"generated_text": sequence["generated_text"][len(query) :].strip()} + for sequence in sequences + ] + if self.cache: + self.respone_cache[query] = response + return response + + def get_response_texts(self, query_responses: List[Dict]) -> List[str]: + """ + Extract the response texts from the query response. + + :param query_responses: The response list of dictionaries generated from the `query` method. + :type query_responses: List[Dict] + :return: List of response strings. + :rtype: List[str] + """ + return [query_response["generated_text"] for query_response in query_responses] diff --git a/graph_of_thoughts/operations/README.md b/graph_of_thoughts/operations/README.md new file mode 100644 index 0000000..fb3f8ff --- /dev/null +++ b/graph_of_thoughts/operations/README.md @@ -0,0 +1,70 @@ +# Operations + +The Operations module contains operations to manipulate and process thoughts represented by the [Thought](thought.py) class. +Operations interface with a language model and use other helper classes like [Prompter](../prompter/prompter.py) and [Parser](../parser/parser.py) for effective communication and extraction of results from the language model. +The [Graph of Operations](graph_of_operations.py) class is the main class of the module and is responsible for orchestrating the operations, defining their relationships and maintaining the state of the thought graph, also known as Graph Reasoning State. + +## Graph of Operations +The [GraphOfOperations](graph_of_operations.py) class facilitates the creation and management of a directed graph representing the sequence and interrelationships of operations on thoughts. Here’s how you can construct and work with the Graph of Operations: + +### Initialization +Creating a new instance of GraphOfOperations: + +```python +from graph_of_thoughts.operations import GraphOfOperations + +graph = GraphOfOperations() +``` + +Upon initialization, the graph will be empty with no operations, roots, or leaves. + +### Adding Operations +**Append Operation:** You can append operations to the end of the graph using the append_operation method. This ensures that the operation becomes a successor to all current leaf operations in the graph. +```python +from graph_of_thoughts.operations import Generate + +operationA = Generate() +graph.append_operation(operationA) +``` +**Add Operation with Relationships:** If you want to define specific relationships for an operation, use the add_operation method. +```python +operationB = Generate() +operationB.predecessors.append(operationA) +graph.add_operation(operationB) +``` +Remember to set up the predecessors (and optionally successors) for your operation before adding it to the graph. + +## Available Operations +The following operations are available in the module: + +**Score:** Collect all thoughts from preceeding operations and score them either using the LLM or a custom scoring function. +- num_samples (Optional): The number of samples to use for scoring, defaults to 1. +- combined_scoring (Optional): Whether to score all thoughts together in a single prompt or separately, defaults to False. +- scoring_function (Optional): A function that takes in a list of thought states and returns a list of scores for each thought. + +**ValidateAndImprove:** For each thought, validate it and if it is invalid, improve it. +- num_samples (Optional): The number of samples to use for validation, defaults to 1. +- improve (Optional): Whether to improve the thought if it is invalid, defaults to True. +- num_tries (Optional): The number of times to try improving the thought, before giving up, defaults to 3. +- validate_funtion (Optional): A function that takes in a thought state and returns a boolean indicating whether the thought is valid. + +**Generate:** Generate new thoughts from the current thoughts. If no previous thoughts are available, the thoughts are initialized with the input to the [Controller](../controller/controller.py). +- num_branches_prompt (Optional): Number of responses that each prompt should generate (passed to prompter). Defaults to 1. +- num_branches_response (Optional): Number of responses the LM should generate for each prompt. Defaults to 1. + +**Improve:** Improve the current thoughts. This operation is similar to the ValidateAndImprove operation, but it does not validate the thoughts and always tries to improve them. + +**Aggregate:** Aggregate the current thoughts into a single thought. This operation is useful when you want to combine multiple thoughts into a single thought. +- num_responses (Optional): Number of responses to request from the LLM (generates multiple new thoughts). Defaults to 1. + +**KeepBestN:** Keep the best N thoughts from the preceeding thoughts. Assumes that the thoughts are already scored and throws an error if they are not. +- n: The number of thoughts to keep in order of score. +- higher_is_better (Optional): Whether higher scores are better (True) or lower scores are better (False). Defaults to True. + +**KeepValid:** Keep only the valid thoughts from the preceeding thoughts. Assumes that each thought has already been validated, if not, it will be considered valid. + +**Selector:** Select a number of thoughts from the preceeding thoughts using a selection function. This is useful if subsequent operations should only be applied to a subset of the preceeding thoughts. +- selector: A function that takes in a list of thoughts and returns a list of thoughts to select. + +**GroundTruth**: Evaluates if the preceeding/current thoughts solve the problem and equal the ground truth. This operation is useful for terminating the graph and checking if the final thoughts solve the problem, but is only useful if the ground truth is known. +- ground_truth_evaluator: A function that takes in a thought state and returns a boolean indicating whether the thought solves the problem. \ No newline at end of file diff --git a/graph_of_thoughts/operations/__init__.py b/graph_of_thoughts/operations/__init__.py new file mode 100644 index 0000000..7b7c545 --- /dev/null +++ b/graph_of_thoughts/operations/__init__.py @@ -0,0 +1,14 @@ +from .thought import Thought +from .graph_of_operations import GraphOfOperations +from .operations import ( + Operation, + Score, + ValidateAndImprove, + Generate, + Aggregate, + KeepBestN, + KeepValid, + Selector, + GroundTruth, + Improve, +) diff --git a/graph_of_thoughts/operations/graph_of_operations.py b/graph_of_thoughts/operations/graph_of_operations.py new file mode 100644 index 0000000..6efc90a --- /dev/null +++ b/graph_of_thoughts/operations/graph_of_operations.py @@ -0,0 +1,69 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +from __future__ import annotations +from typing import List + +from graph_of_thoughts.operations.operations import Operation + + +class GraphOfOperations: + """ + Represents the Graph of Operations, which prescribes the execution plan of thought operations. + """ + + def __init__(self) -> None: + """ + Initializes a new Graph of Operations instance with empty operations, roots, and leaves. + The roots are the entry points in the graph with no predecessors. + The leaves are the exit points in the graph with no successors. + """ + self.operations: List[Operation] = [] + self.roots: List[Operation] = [] + self.leaves: List[Operation] = [] + + def append_operation(self, operation: Operation) -> None: + """ + Appends an operation to all leaves in the graph and updates the relationships. + + :param operation: The operation to append. + :type operation: Operation + """ + self.operations.append(operation) + + if len(self.roots) == 0: + self.roots = [operation] + else: + for leave in self.leaves: + leave.add_successor(operation) + + self.leaves = [operation] + + def add_operation(self, operation: Operation) -> None: + """ + Add an operation to the graph considering its predecessors and successors. + Adjust roots and leaves based on the added operation's position within the graph. + + :param operation: The operation to add. + :type operation: Operation + """ + self.operations.append(operation) + if len(self.roots) == 0: + self.roots = [operation] + self.leaves = [operation] + assert ( + len(operation.predecessors) == 0 + ), "First operation should have no predecessors" + else: + if len(operation.predecessors) == 0: + self.roots.append(operation) + for predecessor in operation.predecessors: + if predecessor in self.leaves: + self.leaves.remove(predecessor) + if len(operation.successors) == 0: + self.leaves.append(operation) diff --git a/graph_of_thoughts/operations/operations.py b/graph_of_thoughts/operations/operations.py new file mode 100644 index 0000000..a5b031b --- /dev/null +++ b/graph_of_thoughts/operations/operations.py @@ -0,0 +1,900 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +from __future__ import annotations +import logging +from enum import Enum +from typing import List, Iterator, Dict, Callable, Union +from abc import ABC, abstractmethod +import itertools + +from graph_of_thoughts.operations.thought import Thought +from graph_of_thoughts.controller.abstract_language_model import AbstractLanguageModel +from graph_of_thoughts.prompter import Prompter +from graph_of_thoughts.parser import Parser + + +class OperationType(Enum): + """ + Enum to represent different operation types that can be used as unique identifiers. + """ + + score: int = 0 + validate_and_improve: int = 1 + generate: int = 2 + improve: int = 3 + aggregate: int = 4 + keep_best_n: int = 5 + keep_valid: int = 6 + ground_truth_evaluator: int = 7 + selector: int = 8 + + +class Operation(ABC): + """ + Abstract base class that defines the interface for all operations. + """ + + _ids: Iterator[int] = itertools.count(0) + + operation_type: OperationType = None + + def __init__(self) -> None: + """ + Initializes a new Operation instance with a unique id, and empty predecessors and successors. + """ + self.logger: logging.Logger = logging.getLogger(self.__class__.__name__) + self.id: int = next(Operation._ids) + self.predecessors: List[Operation] = [] + self.successors: List[Operation] = [] + self.executed: bool = False + + def can_be_executed(self) -> bool: + """ + Checks if the operation can be executed based on its predecessors. + + :return: True if all predecessors have been executed, False otherwise. + :rtype: bool + """ + return all(predecessor.executed for predecessor in self.predecessors) + + def get_previous_thoughts(self) -> List[Thought]: + """ + Iterates over all predecessors and aggregates their thoughts. + + :return: A list of all thoughts from the predecessors. + :rtype: List[Thought] + """ + previous_thoughts: List[Thought] = [ + thought + for predecessor in self.predecessors + for thought in predecessor.get_thoughts() + ] + + return previous_thoughts + + def add_predecessor(self, operation: Operation) -> None: + """ + Add a preceding operation and update the relationships. + + :param operation: The operation to be set as a predecessor. + :type operation: Operation + """ + self.predecessors.append(operation) + operation.successors.append(self) + + def add_successor(self, operation: Operation) -> None: + """ + Add a succeeding operation and update the relationships. + + :param operation: The operation to be set as a successor. + :type operation: Operation + """ + self.successors.append(operation) + operation.predecessors.append(self) + + def execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Execute the operation, assuring that all predecessors have been executed. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If not all predecessors have been executed. + """ + assert self.can_be_executed(), "Not all predecessors have been executed" + self.logger.info( + "Executing operation %d of type %s", self.id, self.operation_type + ) + self._execute(lm, prompter, parser, **kwargs) + self.logger.debug("Operation %d executed", self.id) + self.executed = True + + @abstractmethod + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Abstract method for the actual execution of the operation. + This should be implemented in derived classes. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + """ + pass + + @abstractmethod + def get_thoughts(self) -> List[Thought]: + """ + Abstract method to retrieve the thoughts associated with the operation. + This should be implemented in derived classes. + + :return: List of associated thoughts. + :rtype: List[Thought] + """ + pass + + +class Score(Operation): + """ + Operation to score thoughts. + """ + + operation_type: OperationType = OperationType.score + + def __init__( + self, + num_samples: int = 1, + combined_scoring: bool = False, + scoring_function: Callable[ + [Union[List[Dict], Dict]], Union[List[float], float] + ] = None, + ) -> None: + """ + Initializes a new Score operation. + + :param num_samples: Number of samples to use for scoring. Defaults to 1. + :type num_samples: int + :param combined_scoring: Whether to score all thoughts together or individually. Defaults to False. + :type combined_scoring: bool + :param scoring_function: A function to score thoughts (if not using LM). Defaults to None. + :type scoring_function: Takes a list of thought states or a single thought state and + returns a list of scores or a single score. + """ + super().__init__() + self.num_samples: int = num_samples + self.combined_scoring: bool = combined_scoring + self.thoughts: List[Thought] = [] + self.scoring_function: Callable[ + [Union[List[Dict], Dict]], Union[List[float], float] + ] = scoring_function + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts associated with the operation. + + :return: List of scored thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the scoring operation by scoring the thoughts from the predecessors. + If combined scoring is used, the thoughts are scored together, otherwise individually. + If a scoring function is provided, it is used, otherwise the LM is prompted. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + assert ( + len(self.predecessors) > 0 + ), "Score operation needs at least one predecessor" + + if self.combined_scoring: + previous_thoughts_states = [thought.state for thought in previous_thoughts] + if self.scoring_function is not None: + self.logger.debug( + "Using scoring function %s to score states", self.scoring_function + ) + scores = self.scoring_function(previous_thoughts_states) + else: + prompt = prompter.score_prompt(previous_thoughts_states) + self.logger.debug("Prompt for LM: %s", prompt) + + responses = lm.get_response_texts( + lm.query(prompt, num_responses=self.num_samples) + ) + self.logger.debug("Responses from LM: %s", responses) + scores = parser.parse_score_answer(previous_thoughts_states, responses) + for thought, score in zip(previous_thoughts, scores): + new_thought = Thought.from_thought(thought) + new_thought.score = score + self.thoughts.append(new_thought) + else: + for thought in previous_thoughts: + new_thought = Thought.from_thought(thought) + if self.scoring_function is not None: + self.logger.debug( + "Using scoring function %s to score state", + self.scoring_function, + ) + score = self.scoring_function(thought.state) + else: + prompt = prompter.score_prompt([thought.state]) + self.logger.debug("Prompt for LM: %s", prompt) + + responses = lm.get_response_texts( + lm.query(prompt, num_responses=self.num_samples) + ) + self.logger.debug("Responses from LM: %s", responses) + score = parser.parse_score_answer([thought.state], responses)[0] + + new_thought.score = score + self.thoughts.append(new_thought) + + self.logger.info( + "Score operation %d scored %d thoughts", + self.id, + len(self.thoughts), + ) + + +class ValidateAndImprove(Operation): + """ + Operation to validate and improve thoughts. + """ + + operation_type: OperationType = OperationType.validate_and_improve + + def __init__( + self, + num_samples: int = 1, + improve: bool = True, + num_tries: int = 3, + validate_function: Callable[[Dict], bool] = None, + ) -> None: + """ + Initializes a new ValidateAndImprove operation. + + :param num_samples: Number of samples to use for validation. Defaults to 1. + :type num_samples: int + :param improve: Whether to improve the thought if it is not valid. Defaults to True. + :type improve: bool + :param num_tries: Number of tries to improve the thought before giving up. Defaults to 3. + :type num_tries: int + :param validate_function: A function to validate thoughts (if not using LM). Defaults to None. + :type validate_function: Takes a thought state and returns a boolean. + """ + super().__init__() + self.num_samples: int = num_samples + self.improve: bool = improve + self.num_tries: int = num_tries + self.validate_function: Callable[[Dict], bool] = validate_function + self.thoughts: List[List[Thought]] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the list of final thoughts, after validation and improvement. + + :return: List of final validated and improved thoughts. + :rtype: List[Thought] + """ + return [thought_list[-1] for thought_list in self.thoughts] + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the ValidateAndImprove operation by validating and improving the predecessors' thoughts. + If a validation function is provided, it is used, otherwise the LM is prompted. + If improvement is enabled, the LM is prompted to improve the thought, if it is not valid. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + assert ( + len(self.predecessors) > 0 + ), "ValidateAndImprove operation needs at least one predecessor" + + for thought in previous_thoughts: + thought_list = [] + current_thought = Thought.from_thought(thought) + current_try = 0 + while True: + if self.validate_function is not None: + self.logger.debug( + "Using validate function %s to score states", + self.validate_function, + ) + valid = self.validate_function(current_thought.state) + else: + prompt = prompter.validation_prompt(**current_thought.state) + self.logger.debug("Prompt for LM: %s", prompt) + responses = lm.get_response_texts( + lm.query(prompt, num_responses=self.num_samples) + ) + self.logger.debug("Responses from LM: %s", responses) + + valid = parser.parse_validation_answer( + current_thought.state, responses + ) + current_thought.valid = valid + thought_list.append(current_thought) + if ( + not self.improve + or current_thought.valid + or current_try >= self.num_tries + ): + break + improve_prompt = prompter.improve_prompt(**current_thought.state) + self.logger.debug("Prompt for LM: %s", improve_prompt) + responses = lm.get_response_texts( + lm.query(improve_prompt, num_responses=1) + ) + self.logger.debug("Responses from LM: %s", responses) + state_update = parser.parse_improve_answer( + current_thought.state, responses + ) + current_thought = Thought({**current_thought.state, **state_update}) + current_try += 1 + self.thoughts.append(thought_list) + + self.logger.info( + "Validate and improve operation %d created %d valid thoughts from %d previous thoughts", + self.id, + len( + [ + thought_list[-1] + for thought_list in self.thoughts + if thought_list[-1].valid + ] + ), + len(previous_thoughts), + ) + + +class Generate(Operation): + """ + Operation to generate thoughts. + """ + + operation_type: OperationType = OperationType.generate + + def __init__( + self, num_branches_prompt: int = 1, num_branches_response: int = 1 + ) -> None: + """ + Initializes a new Generate operation. + + :param num_branches_prompt: Number of responses that each prompt should generate (passed to prompter). Defaults to 1. + :type num_branches_prompt: int + :param num_branches_response: Number of responses the LM should generate for each prompt. Defaults to 1. + :type num_branches_response: int + """ + super().__init__() + self.num_branches_prompt: int = num_branches_prompt + self.num_branches_response: int = num_branches_response + self.thoughts: List[Thought] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts associated with the operation. + + :return: List of generated thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the Generate operation by generating thoughts from the predecessors. + The thoughts are generated by prompting the LM with the predecessors' thought states. + If there are no predecessors, the kwargs are used as a base state. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + if len(previous_thoughts) == 0 and len(self.predecessors) > 0: + return + + if len(previous_thoughts) == 0: + # no predecessors, use kwargs as base state + previous_thoughts = [Thought(state=kwargs)] + + for thought in previous_thoughts: + base_state = thought.state + prompt = prompter.generate_prompt(self.num_branches_prompt, **base_state) + self.logger.debug("Prompt for LM: %s", prompt) + responses = lm.get_response_texts( + lm.query(prompt, num_responses=self.num_branches_response) + ) + self.logger.debug("Responses from LM: %s", responses) + for new_state in parser.parse_generate_answer(base_state, responses): + new_state = {**base_state, **new_state} + self.thoughts.append(Thought(new_state)) + self.logger.debug( + "New thought %d created with state %s", + self.thoughts[-1].id, + self.thoughts[-1].state, + ) + if ( + len(self.thoughts) + > self.num_branches_prompt + * self.num_branches_response + * len(previous_thoughts) + and self.num_branches_prompt > 0 + ): + self.logger.warning( + "Generate operation %d created more thoughts than expected", + self.id, + ) + self.logger.info( + "Generate operation %d created %d new thoughts", self.id, len(self.thoughts) + ) + + +class Improve(Operation): + """ + Operation to improve thoughts. + """ + + operation_type: OperationType = OperationType.improve + + def __init__(self) -> None: + """ + Initializes a new Improve operation. + """ + super().__init__() + self.thoughts: List[Thought] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts associated with the operation after improvement. + + :return: List of improved thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the Improve operation by improving the predecessors' thoughts. + The thoughts are improved by prompting the LM with the predecessors' thought states. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + assert len(self.predecessors) > 0, "Needs at least one predecessor" + + for thought in previous_thoughts: + improve_prompt = prompter.improve_prompt(**thought.state) + self.logger.debug("Prompt for LM: %s", improve_prompt) + responses = lm.get_response_texts(lm.query(improve_prompt, num_responses=1)) + self.logger.debug("Responses from LM: %s", responses) + state_update = parser.parse_improve_answer(thought.state, responses) + self.thoughts.append(Thought({**thought.state, **state_update})) + + self.logger.info( + "Improve operation %d improved %d thoughts", self.id, len(self.thoughts) + ) + + +class Aggregate(Operation): + """ + Operation to aggregate thoughts. + """ + + operation_type: OperationType = OperationType.aggregate + + def __init__(self, num_responses: int = 1) -> None: + """ + Initializes a new Aggregate operation. + + :param num_responses: Number of responses to use for aggregation. Defaults to 1. + :type num_responses: int + """ + super().__init__() + self.thoughts: List[Thought] = [] + self.num_responses: int = num_responses + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts associated with the operation after aggregation. + + :return: List of aggregated thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the Aggregate operation by aggregating the predecessors' thoughts. + The thoughts are aggregated by prompting the LM with the predecessors' thought states. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + """ + assert ( + len(self.predecessors) >= 1 + ), "Aggregate operation must have at least one predecessor" + + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + if len(previous_thoughts) == 0: + return + + # applied in order of score + base_state: Dict = {} + for thought in sorted(previous_thoughts, key=lambda thought: thought.score): + base_state = {**base_state, **thought.state} + + previous_thought_states = [thought.state for thought in previous_thoughts] + prompt = prompter.aggregation_prompt(previous_thought_states) + + self.logger.debug("Prompt for LM: %s", prompt) + + responses = lm.get_response_texts( + lm.query(prompt, num_responses=self.num_responses) + ) + + self.logger.debug("Responses from LM: %s", responses) + + parsed = parser.parse_aggregation_answer(previous_thought_states, responses) + + if isinstance(parsed, dict): + parsed = [parsed] + for new_state in parsed: + self.thoughts.append(Thought({**base_state, **new_state})) + + +class KeepBestN(Operation): + """ + Operation to keep the best N thoughts from predecessors based on their score. + """ + + operation_type: OperationType = OperationType.keep_best_n + + def __init__(self, n: int, higher_is_better: bool = True) -> None: + """ + Initializes a new KeepBestN operation. + + :param n: Maximum number of thoughts to keep. + :type n: int + :param higher_is_better: Whether higher scores are better. Defaults to True. + :type higher_is_better: bool + :raises AssertionError: If `n` is not greater than zero. + """ + super().__init__() + self.n: int = n + assert self.n > 0, "KeepBestN operation must keep at least one thought" + self.higher_is_better: bool = higher_is_better + self.thoughts: List[Thought] = [] + + def get_best_n(self) -> List[Thought]: + """ + Returns the best N thoughts from the predecessors based on their score. + + :return: List of best N thoughts. + :rtype: List[Thought] + :raises AssertionError: If not all predecessors have been executed. + :raises AssertionError: If not all thoughts have been scored. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + assert all( + previous_thought.scored for previous_thought in previous_thoughts + ), "Not all thoughts have been scored" + + try: + return sorted( + previous_thoughts, + key=lambda thought: thought.score, + reverse=self.higher_is_better, + )[: self.n] + except: + self.logger.error("Error in KeepBestN operation") + self.logger.error( + "Previous operation: %s", [op.id for op in self.predecessors] + ) + self.logger.error("Previous thoughts: %s", previous_thoughts) + self.logger.error( + "Scores: %s", [thought.score for thought in previous_thoughts] + ) + return sorted( + [i for i in previous_thoughts if isinstance(i.score, float)], + key=lambda thought: thought.score, + reverse=self.higher_is_better, + )[: self.n] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts kept by the operation. + + :return: List of kept thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the KeepBestN operation by keeping the best N thoughts from the predecessors according to their score. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + :raises AssertionError: If not all predecessors have been executed. + :raises AssertionError: If not all thoughts have been scored. + """ + assert ( + len(self.predecessors) >= 1 + ), "KeepBestN operation must have at least one predecessor" + + self.thoughts = [Thought.from_thought(thought) for thought in self.get_best_n()] + + for thought in self.thoughts: + self.logger.debug( + "Thought %d with state %s kept", thought.id, thought.state + ) + + self.logger.info( + "KeepBestN operation %d kept %d thoughts", self.id, len(self.thoughts) + ) + + +class KeepValid(Operation): + """ + Operation to keep valid thoughts from predecessors. + """ + + operation_type: OperationType = OperationType.keep_valid + + def __init__(self) -> None: + """ + Initializes a new KeepValid operation. + """ + super().__init__() + self.thoughts: List[Thought] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts kept by the operation. + + :return: List of kept thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the KeepValid operation by keeping the valid thoughts from the predecessors. + Keeps unvalidated thoughts as well. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessors. + """ + assert ( + len(self.predecessors) >= 1 + ), "KeepValid operation must have at least one predecessor" + + self.thoughts: List[Thought] = [ + Thought.from_thought(thought) + for thought in self.get_previous_thoughts() + if not thought.validated or thought.valid + ] + + if any(not thought.validated for thought in self.thoughts): + self.logger.warning( + "KeepValid operation %d has unvalidated thoughts", self.id + ) + + for thought in self.thoughts: + self.logger.debug( + "Thought %d with state %s kept", thought.id, thought.state + ) + + self.logger.info( + "KeepValid operation %d kept %d thoughts", self.id, len(self.thoughts) + ) + + +class GroundTruth(Operation): + """ + Operation to evaluate if thoughts correctly solve the problem, using a ground truth evaluator + """ + + operation_type: OperationType = OperationType.ground_truth_evaluator + + def __init__(self, ground_truth_evaluator: Callable[[Dict], bool]) -> None: + """ + Initializes a new GroundTruth operation. + + :param ground_truth_evaluator: A function to evaluate if a thought solves the problem. + :type ground_truth_evaluator: A function that takes a thought state and returns a boolean. + """ + super().__init__() + self.ground_truth_evaluator: Callable[[Dict], bool] = ground_truth_evaluator + self.thoughts: List[Thought] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts associated with the operation. + + :return: List of evaluated thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the GroundTruth operation by evaluating the predecessors' thoughts using the ground truth evaluator function. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + :raises AssertionError: If operation has no predecessor. + """ + assert ( + len(self.predecessors) >= 1 + ), "GroundTruth operation must have at least one predecessor" + + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + for thought in previous_thoughts: + new_thought = Thought.from_thought(thought) + try: + new_thought.solved = self.ground_truth_evaluator(new_thought.state) + except: + new_thought.solved = False + self.thoughts.append(new_thought) + + self.logger.info( + "GroundTruth operation %d evaluated %d thoughts and %d solved the problem", + self.id, + len(self.thoughts), + len([thought for thought in self.thoughts if thought.solved]), + ) + + +class Selector(Operation): + """ + Operation to select thoughts from predecessors. + Useful for separating thoughts to perform different, subsequent operations on them. + """ + + operation_type: OperationType = OperationType.selector + + def __init__(self, selector: Callable[[List[Thought]], List[Thought]]) -> None: + """ + Initializes a new Selector operation. + + :param selector: A function to select thoughts from the predecessors' thoughts. + :type selector: A function that takes a list of thoughts and returns a list of thoughts. + """ + super().__init__() + self.selector: Callable[[List[Thought]], List[Thought]] = selector + self.thoughts: List[Thought] = [] + + def get_thoughts(self) -> List[Thought]: + """ + Returns the thoughts selected by the operation. + + :return: List of selected thoughts. + :rtype: List[Thought] + """ + return self.thoughts + + def _execute( + self, lm: AbstractLanguageModel, prompter: Prompter, parser: Parser, **kwargs + ) -> None: + """ + Executes the Selector operation by selecting thoughts from the predecessors using the selector function. + If the Selector has no predecessors, the selector function is called with a thought containing the kwargs as state. + + :param lm: The language model to be used. + :type lm: AbstractLanguageModel + :param prompter: The prompter for crafting prompts. + :type prompter: Prompter + :param parser: The parser for parsing responses. + :type parser: Parser + :param kwargs: Additional parameters for execution. + """ + previous_thoughts: List[Thought] = self.get_previous_thoughts() + + if len(previous_thoughts) == 0: + previous_thoughts = [Thought(kwargs)] + + self.thoughts = [ + Thought.from_thought(thought) + for thought in self.selector(previous_thoughts) + ] + + for thought in self.thoughts: + self.logger.debug( + "Thought %d with state %s selected", thought.id, thought.state + ) + + self.logger.info( + "Selector operation %d selected %d thoughts", self.id, len(self.thoughts) + ) diff --git a/graph_of_thoughts/operations/thought.py b/graph_of_thoughts/operations/thought.py new file mode 100644 index 0000000..efd3bea --- /dev/null +++ b/graph_of_thoughts/operations/thought.py @@ -0,0 +1,117 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main author: Nils Blach + +from __future__ import annotations +import logging +from typing import Iterator, Dict, Optional +import itertools + + +class Thought: + """ + Represents an LLM thought with its state, constructed by the parser, and various flags. + """ + + _ids: Iterator[int] = itertools.count(0) + + def __init__(self, state: Optional[Dict] = None) -> None: + """ + Initializes a new Thought instance with a state and various default flags. + + :param state: The state of the thought. Defaults to None. + :type state: Optional[Dict] + """ + self.logger: logging.Logger = logging.getLogger(self.__class__.__name__) + self.id: int = next(Thought._ids) + self.state: Dict = state + self._score: float = 0.0 + self._valid: bool = False + self._solved: bool = False + self.scored: bool = False + self.validated: bool = False + self.compared_to_ground_truth: bool = False + + @staticmethod + def from_thought(thought: Thought) -> Thought: + """ + Creates a new thought from an existing one. + + :param thought: An instance of a Thought to clone. + :return: A new Thought instance with properties copied from the input thought. + """ + new_thought = Thought(thought.state) + new_thought.score = thought.score + new_thought.valid = thought.valid + new_thought.solved = thought.solved + new_thought.scored = thought.scored + new_thought.validated = thought.validated + new_thought.compared_to_ground_truth = thought.compared_to_ground_truth + return new_thought + + @property + def valid(self) -> bool: + """ + Returns the validity of the thought. + + :return: The validity of the thought. + :rtype: bool + """ + return self._valid + + @valid.setter + def valid(self, valid: bool) -> None: + """ + Sets the validity of the thought and the validated flag. + + :param valid: The validity of the thought. + :type valid: bool + """ + self.validated = True + self._valid = valid + + @property + def score(self) -> float: + """ + Returns the score of the thought. + + :return: The score of the thought. + :rtype: float + """ + return self._score + + @score.setter + def score(self, new_score: float) -> None: + """ + Sets the score of the thought and the scored flag. + + :param new_score: The score of the thought. + :type new_score: float + """ + self.scored = True + self._score = new_score + + @property + def solved(self) -> bool: + """ + Returns the solved flag of the thought. + + :return: The solved flag of the thought. + :rtype: bool + """ + return self._solved + + @solved.setter + def solved(self, solved: bool) -> None: + """ + Sets the solved flag of the thought and the compared_to_ground_truth flag. + + :param solved: Whether the thought contains a solution to the problem. + :type solved: bool + """ + self.compared_to_ground_truth = True + self._solved = solved diff --git a/graph_of_thoughts/parser/__init__.py b/graph_of_thoughts/parser/__init__.py new file mode 100644 index 0000000..2a3855a --- /dev/null +++ b/graph_of_thoughts/parser/__init__.py @@ -0,0 +1 @@ +from .parser import Parser diff --git a/graph_of_thoughts/parser/parser.py b/graph_of_thoughts/parser/parser.py new file mode 100644 index 0000000..6db8ed8 --- /dev/null +++ b/graph_of_thoughts/parser/parser.py @@ -0,0 +1,90 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main authors: Robert Gerstenberger, Nils Blach + +from __future__ import annotations +from abc import ABC, abstractmethod +from typing import Dict, List, Union + + +class Parser(ABC): + """ + Abstract base class that defines the interface for all parsers. + Parsers are used to parse the responses from the language models. + """ + + @abstractmethod + def parse_aggregation_answer( + self, states: List[Dict], texts: List[str] + ) -> Union[Dict, List[Dict]]: + """ + Parse the response from the language model for a aggregation prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the response from the language model. + :rtype: Union[Dict, List[Dict]] + """ + pass + + @abstractmethod + def parse_improve_answer(self, state: Dict, texts: List[str]) -> Dict: + """ + Parse the response from the language model for an improve prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought state after parsing the response from the language model. + :rtype: Dict + """ + pass + + @abstractmethod + def parse_generate_answer(self, state: Dict, texts: List[str]) -> List[Dict]: + """ + Parse the response from the language model for a generate prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The new thought states after parsing the response from the language model. + :rtype: List[Dict] + """ + pass + + @abstractmethod + def parse_validation_answer(self, state: Dict, texts: List[str]) -> bool: + """ + Parse the response from the language model for a validation prompt. + + :param state: The thought state used to generate the prompt. + :type state: Dict + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: Whether the thought state is valid or not. + :rtype: bool + """ + pass + + @abstractmethod + def parse_score_answer(self, states: List[Dict], texts: List[str]) -> List[float]: + """ + Parse the response from the language model for a score prompt. + + :param states: The thought states used to generate the prompt. + :type states: List[Dict] + :param texts: The responses to the prompt from the language model. + :type texts: List[str] + :return: The scores for the thought states. + :rtype: List[float] + """ + pass diff --git a/graph_of_thoughts/prompter/__init__.py b/graph_of_thoughts/prompter/__init__.py new file mode 100644 index 0000000..51f2bf3 --- /dev/null +++ b/graph_of_thoughts/prompter/__init__.py @@ -0,0 +1 @@ +from .prompter import Prompter diff --git a/graph_of_thoughts/prompter/prompter.py b/graph_of_thoughts/prompter/prompter.py new file mode 100644 index 0000000..7ff323f --- /dev/null +++ b/graph_of_thoughts/prompter/prompter.py @@ -0,0 +1,86 @@ +# Copyright (c) 2023 ETH Zurich. +# All rights reserved. +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# main authors: Robert Gerstenberger, Nils Blach + +from __future__ import annotations +from abc import ABC, abstractmethod +from typing import Dict, List + + +class Prompter(ABC): + """ + Abstract base class that defines the interface for all prompters. + Prompters are used to generate the prompts for the language models. + """ + + @abstractmethod + def aggregation_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a aggregation prompt for the language model. + + :param state_dicts: The thought states that should be aggregated. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The aggregation prompt. + :rtype: str + """ + pass + + @abstractmethod + def improve_prompt(self, **kwargs) -> str: + """ + Generate an improve prompt for the language model. + The thought state is unpacked to allow for additional keyword arguments + and concrete implementations to specify required arguments explicitly. + + :param kwargs: Additional keyword arguments. + :return: The improve prompt. + :rtype: str + """ + pass + + @abstractmethod + def generate_prompt(self, num_branches: int, **kwargs) -> str: + """ + Generate a generate prompt for the language model. + The thought state is unpacked to allow for additional keyword arguments + and concrete implementations to specify required arguments explicitly. + + :param num_branches: The number of responses the prompt should ask the LM to generate. + :type num_branches: int + :param kwargs: Additional keyword arguments. + :return: The generate prompt. + :rtype: str + """ + pass + + @abstractmethod + def validation_prompt(self, **kwargs) -> str: + """ + Generate a validation prompt for the language model. + The thought state is unpacked to allow for additional keyword arguments + and concrete implementations to specify required arguments explicitly. + + :param kwargs: Additional keyword arguments. + :return: The validation prompt. + :rtype: str + """ + pass + + @abstractmethod + def score_prompt(self, state_dicts: List[Dict], **kwargs) -> str: + """ + Generate a score prompt for the language model. + + :param state_dicts: The thought states that should be scored, + if more than one, they should be scored together. + :type state_dicts: List[Dict] + :param kwargs: Additional keyword arguments. + :return: The score prompt. + :rtype: str + """ + pass diff --git a/paper/README.md b/paper/README.md new file mode 100644 index 0000000..92fdbb2 --- /dev/null +++ b/paper/README.md @@ -0,0 +1,5 @@ +## Plot Data + +The data used to create the figure of the arXiv preprint article can be +found in the `final_results_gpt35.tar.bz2` archive. Unpack the archive +and run the file `plots.py`. diff --git a/paper/final_results_gpt35.tar.bz2 b/paper/final_results_gpt35.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..965d8149b7f01660899d041dbef647d2a36422cb GIT binary patch literal 6593955 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

Sh!miPoeW4t|fQ1E^X+!1Ks4< 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

;1o|nmGAacXE3TjE(#u)g!`4h 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%0Av|`}rU0F&9n@ zJ-z`O&{2onHGt!rpxLPT`T7C<-;COW4IA8^2cHDlY&74CrD}G{bQq81Y2PJtIKmId+YS-Co6+hGJJ7Cs$+489mfA6}jROUqE<<+Y% zRfKV@WlKv9rol>E=4~Y6J+tq+p6^O;;J*?FOrCa3z=9*rh!`Y3dchozKp}m_+Pm{9 zzG=(dr~LEP%?j>Pfo~k<&fBgOB)xvi-LFcKyzoBImJ|jOn0>`mu<;yX2s9EUdY1s2 z_+udZpD$WJ2QPF5Sk7gqXQw}r;r2$1k6AN1`k`rk&=u)%Glpi=Z_dEj&BTwE&}5-#@^jm;%m!(y zdAoBZKmGKR6Hm=3ze0Ulki%vLLG)nhpe$!+C6y<@fIcq1eww(RJ*)ZaH`sys)(wuy zHuAyEgpzTub>E!VU&NAcwmc4#t=2p`ZBtG(;$5Rd-^jMpxRKB-$^DQ6!EpRDIkVKz zn^QvZ;QbilPigjJr9Yc|FX1m$oEVuqix~&>UoZ$blgN2w+lo7uPRwO#`lfD_vsEG6 z$j68@sl;<{+gd<=0=1%rcd5?nZnZ2+shj?^Ry}ymke~zqKKtedH)+ws-XN)z()#pX zDAY*jo7Yr&mSsL3KOA0IBR<`3%E?89In^3t9~PxQZvzq?1N5J3g2(vZwT^ov@_18K z)Z3(GX64#~#*39zEudG1HGe1G;YI&Y(>K2l#>Ss5rG{32+MWj`z3C=GflVep*;n{w z!|L_fSXk#oM)JoP;+ZktqGdMaoP)95yo?F3zwFn=2XW@nPPuVD1M;bFDCSy^1TufP z5l?l|$_%{Y1I?WnRe!k7W{|eL?vDkUm79cr!&`{Nv~O#6ULz{P89DJTxx`Z)Plrkp zTu%Hj`Q37Mvsk%i;%C9^0y13gVQx^vlXK3pGh`$YsDq8y(aYE@_5Fm z>hrD%4hjdjZ`y_0e=i4gspU4n_+Bbf(>#zL$KS{C_0ng?gJM6RKhrz5G~j!p$RX0o z;oobz=~tt($7arvbys7e|6O2D)NWQ*0EvSR*%d^k*-^EyQx3FMt?8Y(A)|rX{rt(I zzbxi&3huV-_V~CEf%o3o+|Hd`T4*gz?~$>q@7f$Ej!u5~8X28MJmVQF_EiWZ;Agx4 zld+k%^GQ8#gX#Kuw6oEI7-FiuGsjEiTvh`2nFP)`dm;9OkUU|3FT@c*4xf?`pX7R=e+8OPq927lD{WY)$kJs=^ zZ=|}GzyEp;N@UMH6c=&y^R{1KY0|zdt!}!Y=`~wdyUeAt1hnBZcMkv>^}hs zp>p@)Ys8j{BO+wPu{rtyx>AueOiLmU(=UVzZJ>u#Uv-^G@@!u1; zYrNNT18>Sr=A1sxY8~k%4lVLJ;6?9gvntsNCQi1OD*L=+X@38K;~8Z2fTV@l<@qAJ zovx6AjtNMs%yf_T!~|xZe)nQT=F)8G`Skwt$EC_$sH1^TWj(`Rj=;WEQu5~i+-rD-W#^B(20=fm9O9o@d3T#Rb&dH0i_MI$7b1JT zMgE2Crk7u63djFAGcS`mI<3`0bJ}v=blQFpD+23ybe_~l=BX44hHe2ge(J~PuPrUB z$tr=^S)xx)*|Z*|@bE-<+p}aw7USTl`NaEYElr`>(%$|%U9$OhOV2fZ1@~VK33WQ- zTM*>BbVk7Cqz6W?rYdSQ*n}p(X$$BZV!~&KM%Ge^>5}{MoOOGC<%Mwn#15yinB(LP z#3YoJ(DaxjqZgubQqZxS8FJExyC&e(wW@LZ>J5xVN1_TX3w5V7b^EQDrOecYar{nw zKQT_4c~>ml0omBele?jXLdHwul3&p7O{-*6%(K`&w55-svS&ETZfVmI0)APT`BUxx zkO_>QX5KK7VwJcP{w!EkcH}8LAtIZ_o8CD~o8{i|?lFjh^fD&L7q&!}hlwoS&LHF4 z$Ff(Ep{w%=LvMQ0Z^ntON~fBuh&}L8&e7Ujd#oJ+&|zRXiM7qvtKTqyg#{c!i}uHJy=wv4maHEd`T z`S}@VfES{vcoy7gA$MiZ%Se1`d)MJ9EN`|mOjCc0+sBBPX%12A?Hg+AA0C(0OA9NkL7n%4M?i@7rrI-xW z7sK)c6&Ytl7j|cz7d(W%I>iX1hg@HXdP(bvXRNqXX$5{0QTs0OvX>{homH}WQhQkn z^&hSCyY{}W2_;0C-g0bN_Rohm{Zcn%kFt{q82ysnleJ@swy3Vp2{x%)*KMvktYxhR zfG?@5Osne+1yV4V@&2q!keI6);k6}ZYK%Y{{&T&-R;ZL#y6VZJ4I)|b37yMDM(KIC z9DD0uaX(LtQ8Gs(;;w_%CKOjUv-K}-B{NqinM9>FqxM-FjaMW-#U|yH8~@wwf4sM! zF>74n*vW5`ruuFEIMXla7#{jDwy9MI9DaD5|lJ9ZMG8`y0QJuKRbz-^x;4x zcr~HNKgsW(i+i0;?{43jIaNsHDI&KcfmryWIx1TB+zAYmaWS|SlPsAaGrKxPyh0hL12TZ z&4DHCy4T;7Y10QL>e|m+POosQEV&=DGcNFH#M5&Y@r+mp$%6}jm^Z2%zginCpXp5- zu>cSjI+mp14q@x6!UrV3_L=b_2-sIp*M8D9d{OwBsyU16vTV2wB1M0R`qYmeFZnq} zWf1)3*Lv+H+3wRV+Qo+Pcl%^Mp7|g3MPmIB6T@Wt)~*NgCZ2gDu}J@dNh$0h?%erv z)v>dwZHxk(CSrzS6u(jd>3S-K0ne0^AU&6c92&2fY#%qU08Dv9KK`C>=w7$^WU{fz z+Dy&)7T)jpmWpAEy_d|_W{B+3VL`1Q{lIGa; z<5!g0EJb({w2p;S@O_%v0O+I6g2ubGNo+(Gp7fZ=9(c2|-xDW$hMJRTQm4Y5yL|D1 zfnSr~)CZaOd-b!Llz@I0Qw!j#hLuZ;v1DKSz=I0B?+w4l^Tryw_i?-~>g$jRqAR&k zN$CqgTH5&^Xk9FKsAS(^Ubbd>Nbo6H>BUF69fx5p^L_tvTCvL?qzS3^hYGj-|AMz@ zs&qV&4%*00I_1zY8?yL$dcE+SF)fAn+f`f+#$Iw%xtN<=VtbswS`~D z$Cu`YNZS+*VC=@8`YYeXu>-r!ilmH00e{iliMGKVn!1-Xv*S$T_cuerH&$glP69W0 zGZE!aMSzL*BGbk9b4Ph^Ch+s4E4yJbq)*qYQ#bc-e|(eVSF%2O($Duncj>^YVc4n8 zV#mb#OdW-gF-w>A0uARek<7y!)Pq zMWBhs>me9-NPeUE$d1>a$mlkNSO0Fb=AY0urLmP=e$V^{;fEhPan^soeuHsyC@@AO ztJKV3ulVxu#NHv=(2M0suW4@IwHV*@mLfH2muT{NUDxGPr60o?yh*9Y%5ob{w;+8X zJeCFOgG}AE5T%lh-clAE|4o~9)xS6`PMo(Qc&Rh3!2yk|^+r9N^$-7pmwz*^nh~2M zp1Oab@eEPHB0BDr4>Nt@X4GrBFV4ssM)>}8=d&zZ8=~utHi~)nu;$Cr70P%+>sCs; z(k9+=ihgHLds5};Yu^WrEsWoDk{Bb2rUwDgn(#*-z7O8Ibo|dD_N6;9f#wCMTDcm78kcBO z=%uNpY(OJQcq|ZZnH9ipIdek4Kb|BCh01ucX2tl)Z<0&Aeua8yBaD57UnaRuhh!qY==`o5SOfrgmvgI^25fQ zyXS{KUYhFpYW#}|AJXiG+z)&(7Lh$`{7ZRK)@03LLyF)&w%ZdU#V>DcxBPz;or^z{ z{r|_65ayUM=jIffdmlANLv<{V~o>f|)p!D&&BIgOjC`xaIx z-Eqf_kVFn8zy1DzJ+AF~>~UT1&-?XyJzrz!rj2(<|MPMCe0EE|9&hPSN@(}+!-iSn z2h`^Et+bMy@@w#hOhj`Sy@VFA_Uh~0Y6czKwBeA{w4GTM&_MF_#u!xP z6!zVO{&&OwTvz);CB{5vp}V+3(w1|8_)`$fM6&Ea`)jm%UO@%( z5p*kxx}MkqPUuAb2b&z!_It4z`0SbFXt>ms1AVFJul`2nK`m0t$nST5(X1oXO7}iC zg+Q1b3F%R9?!*_&!R!jiH#z9fq@dTf-yOCzQE;OV``$d4mWs@8iHEnmFa7xTVFfv* zUfQ!~^~XKWtmp#j%!Xat1H_?%?FjL0_rzB;sCbEM1CR_E*#7x zCZ|9@CqsvJkSoj{>d)PwE!%HWw9gt7>StbUy^tQbr4VC)T*RvxBAWtt-yHno*Lxqj zZV&wioZs#?y|>zACn>$#HIoFLS7~U@eW_YFosWb+1&6*~7hcO0Yr6T*^LOt)eBB&l zs;YgS@1MLemR2^|H~OzX3`VCB^N zF@5hC{S?_3FBym43ETMV4r`t8!Ee;+?iAEcf{%$0Ka7SS6w29obMx8$AIZO2Bwutj zLc*28XF~^{UyUr!CSg6v2r}oYYt60)5R^H;SL6NpU|s30Vx-c~t;JH|=RL&at$!c- z5{G?4H+dEOBjUx=BgvoCsTohY)GcYu_*dUj)Rdw*ENWxO81`l3;ybDSNkvynr0N-q zVOk(D<aNYz4pH$FZ(Z)O<50{myM9?l9|3(cika!eSR+oa}m6$h$@~ zDRxD5cJ07_&vexZ9rYS)eG)KVxk+lU_vrXOD!=SsMbY=*ApV7~Fx?DKx8?;~em{R> zE3Si>`N!{xgHhj?F4)vtW{NdHnbLnjYl%W$Uw;`fW08k>1*nEI5e*M(ts5Bm+WtHr zkzHD0L9jwes|CO`*GW@8Ita8;1b; z%8M$uzpNkc^juvTJhZYn|99G;yF|dlSwzBo6Q#+vrsv%svM(INdr=BMQd7v(+fRF6 zjDK%>_~(yrf7YsZU{-oFm69JD#p9m@x-ko%O)t)3E zMH?^kj`gbt^}Xg(#_b-J&#cM6exHy_`D6QTz-u>kho>oztgJpfw2Xm2jE{oN4=2a` zc=e}zV^kt{?D@84PcL}(M}or#$*ylJZ@KkN$6o{qB+$#aoFl#jn>!d;Oya zZ?XO@@G{tb{o=3BU1kfv#cr+t^Y{5lm)}3V9jQOy{`>di?b|`GzdZWz@Q@r-t?ohJ zaog!+zE_x%FB~^jhyVBQirjuHu;0uyg*sf=55ND{%|90C z>N1Ht{|-K#xKi3=D=z)e?P9>>^{Hw@85rxw69y9yV$iyZa6qlD{!@vavGam znHh{y%e?M=^C^$}XMEjk#Mb=3xBfOrVmu8DcxZKQ`})d*_enQiuYNiANB-}T+w()C ztC2jZ+O)k0?;| z)6Mxf%L_&R7umOLUr4EhRO%nJIPNj@jCsPQq^HBCMSZV%GnlWWxo} ztsx&xd+IgqPUX}>JW?4byn=de*WqobjZJL>s7$gM;b8ES_{pxqeUf8LK?i0efx(oS zFLHYIGB<2SUQ;2~SnXK(oql-$`3ke}j_6W2cAP8d*i4NQUTyGn)6ej?3pU9So@!B| zaNy~Y^gMiTr#-(z&si61b)0#UZMR%Fs*o)Ot4r@LB5EvM?oQJNzt6tIAv#pZ+m<86 z>H;vPpi%Enp$E%6yqU(2$9EYV^{<&fzt|d;MQ7~Fged%M8b$)Lz4z>H6^^HbdmZ&d z`tUTXDl&Xq&)U~+Gmjcb*3Z^=BszHqV{3y1I*M-Xi+C{h(eQcXS0FHCI(JDo{@4=Z z7p7*D`oX)Sz78C6YV(T6OU6^Jpd2r!Gs^{2c8QLWm>mhhfPnPTtXI-QKsjhYUy|nq z61vldF5}dBN6??4-c$}Bf0<@1kC6;xE+P4!s|+rt5bdsO&WV4i+6DVRW z##yk4!lrKJ+CV+`QRINx7Z8$PE5c!6o@iW*{&~7#5bwR#gGuC=I2Wl1ZV82npy9F* ziIdwX|LX6-O&@WZ5J~g{+IcDs^;&z~_GvhX;vHN3>rN-5^afD4rM_Lbd2hMjc2pjX z%z+iuyO7TXfLk!rn9H`RhyHP-}X4Kx(tqVA&ZV?uL!yQ%dCut$QMfOV?YW_6qG zcO(zpQ!etJg^V%5Bp3a3oGyhiv&9!RzG;52+vN|yx0X}VHj8$tmYK77yLFsZ(W(S> zogWPe{XQ5Qb5GkJg~j|Xz2GL(=Ttd_6%mNAT>{GTiXwtdTS%w(Kv~H)$*^*=5i1wX zzidvO$c%WbrO33x%%%6@?dOH7fN2OhIM^ry$Wiu;w)q_F^y9Vn3>I+s^gI3`)tgO1 zlJzwv%s_{{WM{n{z)FytSx?=oSrg~h->e!@oKisaiZzOPSFn)FQk}wda0ZNPf?^4U zgP?KzMcqKt3jmkNM}BbICD0FPBK3(t(DXeSczPy-vCnWzy~Bx>`fEa*u2dAwh^>#| zqZk7KACSG^31*0br{)`u3lagU9mT1+Aki&(NEpi=$JBGl8aq9zJBoOjCX5@!g8D{r zREm938C#eIrbOfwwjs)h%ij@U?ngW|GE+Xxs}Fv)?N>c%dk3bR|XB zMQF?8YctnrMWeH7N^AiMJL9+x4O0|!+_NwG3R|ZF>Fxq=$jlb6A=td+vLR#S%+E(y zN*b@wv_WX+tjH%_~G6 z_=Ve=6k$U3?DB+6$mpbs*ykQCifG2LZr4ksOI9%n>}zimda{L_Gpt*#DSFlz%_SVY zqJ`%XCcRvuE-ymziYPjm@(|cGLt(zl88 zemYAdX7Fm8XS!TaH)Sq%sKIVz$;m`F-M?Jr3 z7BPqasp}I=9!{->{lXBR^G$zKOtemEPuZEI#{>08cWbg`SE)HnO7Oj+!uu>nxfU-N zp@>(a;(ahT$NPHv(*uKp4XT=N2v#&o`U1HV1CwUqK=<=PU!T->J~=Izr^30ZbO|3@ zPE<7;QdMhW7fCiW)WjHgw1AK@b)PL-fDEjJnd#v-rLvV;Uz7<&0;_*MV(I9z-BGBF z!W*CyR5|pEdgQfi{^zS#CnEChzIcUd+J+YX17nQ@w}4!L;HD!d_?>{yapOmNeKE7j z*sNJaKD#`?k3HcFNKCj;gVPR&!bIAB`sC4x5W6g*UMyoo{ri^Gdf`!u8oNo1xmrY# zKOJlmSD|gR%P|;@$b+#o=CsN9ixU;d8Bd&Aj!Nc)_+jm=irX^5dQeyl+2M61+xsWr zqH(i&gb$Cxw2B|YlVC0IK?#pxZNp=X27DladZ$GlqnAqlvy#7^d+nn>;Vv;f< zN4@NnBPG|Nw6orvF zwL3(ojU5A-sModnK5(u5hKte(b=IJp!`%Cf?9Wizt<1|du?Vb-Z+0D` z@fo|C3zeKMVBPahzzjf~pNX1(E~-#cDwiBse;vwa`qa$s2$o8nyj_IZLv>J?^CB(4 zj~yQXLcK$P)ClU2Y04tTObBCeU7QP55!2!ka)J}0DKMsAtZ47(<5C_flNyXiKoos6 z@a0%U2DL;}dVph+HS95zAU3Oh<)jIIY{)YaL=W^q`@p5c?^bWCZ?wth;8@EXeP}-*by5N(Mb0Odv;7axkQr0EJkyFJZ zD}`YC3tJ$Rv*_z7VU*!A5kyDuHMmz>tL5n_=0}nD4Q|9}#(IdC3aN0cE!~B7UYOb% zaYi@doW0n*cyl<=931LLi|l~pd-%0Tcs@UwLi0EHqynvsd>)Ovnk#y)YbtU%Q;ZoF zqTH=SiDx`RUgr2x$t-G^*U45=)4uN?rtMm>qu%Jc*7ZeyLADCuCpY1yQbh-D_9qn0 z8&-C)#2qbKI(z{uPLT8QipQ|?APU0Md+Oo>e8{#1NReqaK-iV@*+9VV#pax&(?$*A z->ZH+*7j~I9KrzzUb- z9!Gbr5$A-Az}|RCk69%lrYaPjY;4+zgb?RWH=7H8`!WfQsM&n!zOh)Q#xq4U5mFn1Lx(9p8}@jQ zZDvZ(QL%$EUA4G;%)BBn0GX>rwC1%y$fXncl~J?w0iZAvgfswv=iM2f5;GF1%u$-d zHRo3g{dv9vCOPt=cSe1*txfqkKY2TS2LBOwa_A1%#Dx=1(|G|SJjXL*@&pganohg+}t3yv9C=Z2A z2lapBvj}}n_(~9}b&#Atx#-9hF}K*@nDPpjI4rhZx{tmCwy|hHb+R?L#jjqO57V=S zS6GgEZ{5Kwo-Bv;<}Q~) zI%=#;354>V81jPXky*Bu)*2#0?qW<`5X0pJ+fDcO??2ms9Wkzh6U@@eu>e6ZK$l4! zyVHl~n!uLqm$}*V642Ekwzq8;^nipK)W;y?QKK1HK{@wy1fzv)t%WBqQG(U8i6qF- z$kJ7rE==>$eI@9V5}@7fd1!zpuk(#xBjs2Mh|v zKJc&VWRJb&sTt{R*T^hu!rO-aacQ7&Es{w7+>Y|Z`mMau1hx4)i%}DsjGlL~@21WH zfxEv$7gIYG@O2;lic;z0uq&{bj*jkU)eq9r`9&erNFeK)N00P8jfh{r^#gN3;|pSC z@~(245xND47v|=Jty0axZB}68mZ?~4;SBRT@J75cW;YMqV6Jix0g4C=vqqNQ@#0k7vIb1u4k#a{pd zKB%AJi%y2FgO0H!f)mcQVW);SJmw%@lg5~aVM*r`a^)TS1FFkdRdiYgc1WLJk7INc-+dx6CwMjHJ3&%+?%tkVVm4O^$u_gP`a&16b1kZ|r=ck)(nxj4 zT+Q>p!8bzhn}A6|NEcM6-$Hg&I>%VsKhuPb73#&lw+(o6(mK~YmL<6L@~N- zk_8PA2LCuuCL2O{dKJl-XQc7Y!B4X)-f{lO&g>tB9C;5GQX2;$2}-juc}SToj-ePZ z7x20L0w$t<9k!?&{hVL2w=Q@OHC*+)Am?3JJjdrOjy6PA12PS3JmeJb=n zaAASAd)7|za#quDCc`afp>!$jfWdUd+=zfHX}oU%$rR!(v{!j0O`o!F#5trBI%%rY zT~!T$Z;i9`ms7yg;4c{SS!E!adh50G=iOV{Mx*MT-(?SYfy=j|qI5q~Qr<4)*J$o^ z!(Lq3348diYv%gZTHk{ihd7hWsqdlVjXC!joxx75$^7Mp4uS=JSu*^r=-JW*uhWZdX^E&WHRLF3>S>z%0PEoKg_%Ux|pAhubD1 zot~E#bC{Wlr&?Ogl8{de6z+|z$30^#*$q82+~5VeCwYEDJ*Ezx?DA|yFjs<0w0(~6 zm}KX@SR{Ob{p!l08(ku#8vJ7hzGai4o_I}Y9uCI*4cnLA5YJ*HRr`u8x%((kt_R%d z|49{G6dPw8oc`Roud#r7oR_;Umb9&ierA&b1k@q)Pdr4cZ8g=dyaG7+zNo$WATw_aKB7qf10#ND&#cDYov=CO*x);h73+BLEa|^Rf!k~=%p*Rj3Dzl`d=1GH=krKmD#r&H z&jE#3df!A)PpW3%AClU|TNx=?E#UM(-!uR^+iQZky*2L#mzG51vPM zZ|QBr2~F>y3jjl^NOMlI?By_uP2qwr8cU!n0AHa>qPVt?EpKjrc5XmI@WUR}Z%%Jp za>zvDqVAgAj6~W~J*SE4=3KVQG-+@%S#zlL9IRJ)@J<{uOQjX_uFJ!UNSx?cn2c#s z5NLxnK(ivanffeZf?MAJTfCi!{#9!|Wu)=I^JB&mP_O?S^`sh9WC3q&LO(ftSrcpl z?niZNemx@%SF|0z)T~GKAygHH*cHZ8>qNbvs^jk2d#0+)8Od~=NA*oPYv^P~qn4?9 z@JRMLY)z{x2*GN(%wZviRAz@FUovlav*blwB(I9Vn7RodhX{){z(vXr)2i<0cx&sH zaX?zQDfR8AuR)lkfXi#*Vd1w*!D`gcH+8uMjtWn6#U}XKF%yw5X_NDk6;<)6%ij~~ z8c)VgP0AV5GrXDq-9+^e{Z&kQ9PUdtYP($?=pgx|o8jgaF_Xt$Woo;Kl36w1Y(CLa zsjIi@lXyU98jR_P2O*_72s$2@$${atDV8R}d^{J4^Bf`p#z{D`X}I@JOg*uwTUXpW z2~8hwnt=D-8dWxw=G4&DJeQF(%Js>PONY-=cP>sPy?!sdo+9ntCce=<-cAiss9upg zwzID}>forthYh24!q0TGXn{lGwN{nesCMmj%@ax7-V2t`d`zU)^uDt-HhjyqR~4ff zGw2QJgDEa80lNB=hJ26EcoG*hPm=YkA}ZTu>tF@Ah*W(lA>%9`I@UVaA5eL5MHSUz zXCeXq>DZctYR7vyD#Q**eL*dzW2+OQGvyj|X%nhWq6`tD!)uBm*YMb=vTc;z;mLU* z5>)|$x{|n5-|iaeH8R^l>`CT!Rj2KXz8)C)WB&NQHqTdt=*+PRfa?lT?WK>bgn%rS zDTOj7OtO9z?Z>QDPlC7xz*xCqqhwYKWGpN~=OaF}JgMAUe6u5l66Ga5w|wu*#FC;M zPcNGoD#u0CUQM*2f#aAIlMfvaSGaehGHztUetp)sHxh|Y+vg!6l>;~c`#&uoEgvF~ zM>7Exa$K~AZG3(+294CAhHx1f;4CTQwbHF=H{yB5P?F}q-}wp*k)*9!Apt)gtSA*$7@Z(wUcc4NOt#BE&4m-z)=Q7p@5B(=jeemZ|*hQ618n!?3QQ*(3}icb1e6B}|H zY|58N4uJ?u^RT)c1h&kM%tl#DD8imh!4jLD!R|>_=aAzh-Jp)UO>wXu!^jpMP{-MH zL8c?}nXslRPs1F|&o@uJaQDgcyEw-GD;gsPeDFA?f}S7ayT~Xg6r}*x!C3lb-8N9M z3R`mk2b?NtNK^O0f(QSQHl2Ol6@Mcr;#>zGNg}x%C!zgnXB&t^uVb1$2fD3Whr1!M zSW7A*dTxGZQn{z18=Bh^Kd6bVQO zw8V$vti|Q`+i>@btS&DQy+5Y5GB+s8r^e_mk)A2p=Y*o^wZt=bhJMa(SN@6~xiFGU zZVD#Q4oFR-t8ZAy76*$bu*_Q{>I*(*GF{r$Pn zsw$L+>4=jz?nFxOkM;vYQi8!l&-e>IsrU&dG4gr$LvEx0&?>*q0U_1kut8H41UwIA zSsqrXhdl3hVnL=klh;3pW+xkJ^KGy}KrUi&t0||BGD`XrRa4k(WE{i zl|$uPfM9C2yYYDkjr{2zR%+G|gDGZ)VoQyz0*hdMx=w$zZd|2B0qVwuk+@>j)asU( z%;GNeP~-xu;g^o-}krE5vp zv$r;hKi8-M{gjKVnTb-UZ|)as)XK@cux04_a>^#RFr zIfg;l`c*g#PF#k}!a)GUZ(jUY4^dGj*qA(2$d0Tz&4b$!fs(1Ik~AI79b~g%@N?T% zp#y5rNM;1xpg5|@oQHi!BtL+zfg%vqOHv~styNiz%L_n8O6kXqVc#moc7!+t1f}FL zdQT*sBa+U9ugWc@eM1)*H{rX)pXik9Q+I8brm<(yjmHWRz~@K_Cf`+ucA>_lZS{?I zO66Q8UVagbuYdTZtcI<%k;x;>7ZLY{k{5AULFN-gQ!uG-6l>#x*VGQM^YVxoT0ePv zVY)bMfWbvgy{RNHu@#>DRzM&4u|gck>CUVP$etYZ7fI_G$&nLmpea{@lx0eD_&W*G zWgntctaB~%q=ACQu-ka`oS(O>I-xqb0lFg>p5;BzI39wIRz-ak7?l7*7BVsj1N1qq zKD>8^UicJ!?KZzTY@?KR-G-hOo^{Z{2|@7A-a0wVat7nxWhmdbpjJ0L2$)1dAH4Gi zEEXE)Y2F!2Y|h16j+?8X`$IbLqrbi_QZxj@=y>qLQ{3^^3ge#KLKb=8EUCkfNas|K z43_&ydJJKwm8b+w7vugsxlte44k|$~+XsF%vsS{lh-5L`Kro{LHLj=zp|BEp1e?*0 zlpZm{Fe&cKt@k|U)Y8?Tt3OwcEjLaTKo>;oX3m)W#0O3@0)M55MZ-Kf=Z0yiT{l0)*K- z`}@!GIqZyd&Q%DHY&we7RAMkDr8(wfS7Hos5>xjhg{sFQ!kO`F_E5T)n_S5XkeX+| z7GB@r!@HkS1?rVe{(FM=UK)@ypmwC0pCV$wL)p&WD=C!1D={}?SAsRGAv0C1nRZk{D z0(=N#WeM2q^Q#%vbjE=8OD^oc#Bv{(u@h|puTu?bG|tj1W7EB~PdQEjQ7usWsZcQ{ zt2tM??KGWONX$WvX$iwd@(A@q-kn_kA#v$gZdhZ6+Vi+iXMyyZo(zwj+#cB1)2quq z!X_qU_jTWf<0a4mQ)(>9#SS|d*3#TGB5#}X4hCy96vtFQBcZ|-H8=z#eP4SQE_GH? zY!=;7A0f)1XG;paSD{)|>7=1^+aUR}?0apVotDf^2iWdPY!P9wOVC@oH7vt&{oSteS$F!A{;YKjlW98f@ zFy(FGg}CbHwro4+6WQCsDy+DdgcQ-R21sb6o2{!5r$74Be1IUN&JLG%?|P>fYnmRg6+xW zmy%hqSw+~3B{@S>-{BkF5D5%C100tIET|=5vN0?5z`7UqI>_q-*t#`sho><$sAtg;EhdGV43nZC7SM0+e^Ne@^5p zFJ2hc;`EcCF!8`6k(z~Yh^F1Fp$E#c><8!CB2m*9#B_4#49g1>_X-Itn?fULpKz+z zDFL>Nr%Ae?2g1D=>I=pzw-!;R$nBBUFP`6blzKr+$wTVUZ96^j@cqEMMiB*_Ntbyl zsTt97yHt6(JZgw1-b)}QRQnuePnZ@fil7F5&p_}C*{;eT`|iNK%R6%eqKL-Xky$ne zslO7j9=J6AnM;nwolpzzJptd(;hZo0?q9o4&FY8ite?=4Z z?mX12O&aM{HqcxQ<54XgzruFFvB+OT;H=wkG9yr>5h5R-H0Vt9WL=D5UUiqyq2d{% zAQ)RW=`T*WSaO!Nj;Qy#&<94uGUQ+=;LEyH)9eHjZ31eR=Zj#~O-#P3QX~$^RQU8> zbR}L2dLa9wTxTRj-L&+tu?_y}PxHE`ae)l+2t*!h_vN*%zA|c3aeh7FW5l zj17qwoC?|qpDTU#gRli0<8Y_ zwM4axun|BOT!Y$&Aa5h3fAw+xclt#MV3dy6eIdPqSFJV8*W^Mn|BaX~S*0-=J?F^= z8QD_Z`>4{KsQGDXHAjlemCB@Hvmv8`+JwKU=|0BJfER}AK7}F(!%^=8e zA_kphTReT6Eh=V8265HRSRTbdPz%Rp5&4idq|So zuU5r08@|Redi}EBxB_nKXB~s3?mqbs`Q%Or@RGs(Vy}0>vAcGhNXKg0MF7osQxe@3 zuOLcbw2~ZWl`0o)IVLJqIK^ukubuMH!%nTr8Dvv4I97JN@s!TLvUSDq%f^kmWBTFz zL$RL)vCNoioPv1H$ZDpSBKDkF7aoY55!7Nx+zcQzc zNAd|Ebx@ktt^xQgY%tz5Ug{E#zYaOfB3{`)=8Qra$|<erT{T{Cvc2y)QL} zF;(*gI-qj8iDD679We0Zsm$H$;J{^mtuq`A!P0PYS2f))xydO3)&xo{>7-Hwr5q33 zx#9dDfR`|}pP>3>)oE%tOD{1@3(d5MqPK4xDdf~FF#76*p(%H%REH$yr8dA1DeyQE zl*8YFc=s_o&)iYNNI;iU*{${WF%5RD=EW!dg6&GO9MW~b=0lhPeMUR#S|k(;CRAa^ z2ViU<{T$j=PXua=9YioV2*AHZIJFDdqbxaS<5X7rIQn-doXBfgXn? zMO5$5Qsb>fP)8<|X;j^-Y)D%rX(v*y$B_7Ds6wCMa1iyHrhe_Vgy3FCi- zE^YQ+i3j1Fy|JndaloAVgn$40VmQ(8eyryN!uLf;D?I0%$R?C*+4EKs_3?|=eSQ#T zI=_$T4(gGAKb`3tQ9v;N0#~ai0<(X9IMP-tb&M{EzTp%omfF{BohfVH(f+`)2L6`3bZ)-Hlw<;; zcC|@-U^kGrl&H5qWL{}YomafkR{vPfJGL%04#Tlll7*GQ8ZHRgUsx&`j1hdY_aBL;!b$>+R7!?@cj%5s} zghNOKrI0zr1mq3#cbMq?@eW~O!S^a7jh;Vs!zJ&xg048D6mA;yj1SlPL)ZSBHcX&K z#Z3GNjk`LO_u}QVp&edLM^Ql8d5f;rh0NppV)d1op#UE#}|0msN_;*8o zK;eYiNTeDaJJA^Ym$UR(cCD$T$M&^Az#koxXO7um^d?N3!9&hUoPRE29At;h*%4{h z&%T(IBHiZ`OpUPHV&wGVoP~qV$@K!>(XLw7Lc**UYYE5`Q)4cy;xlm?;h8GferkIM zGB@inn-kqa_R_{Z2U`wAywi%c&z_#w`$qEy7MuAV_S#?4@6!-e)A#&iE-(0+R?6x# zo{UQ67Z|tx2h9(tEJ*UvbWDU2korhnjwMxgr)mzy%L&(*>Up5x6ex9hZA_au^|H9f zn;&?p{Jc4O1J`pmzz~cIR``nTo>D-GBbk^|eQ_fh?juj713< zyfds}3H=Q7h3b`7^(#{|Tv1<8#z16qSnGS{hdE*M$s!K7yx=OC4=`f&8+>ehP9~gbXu$OeUw-eO5m&N$RtmK=uVDB{Y!%k= zEZ_0Fu+0aFp$+Vi)za|`Rd*HwQWxfc1%B!ksN7oYP`GominD#q(bDuiGbw5*N|2-* z7saRIUXQuzN}{}Wu?I6F+EpvNQ4`9--oLqpyYd3=8;s?&$31*#HJ5YGldRA~oXIgh z*F3+_o)P)6!6Pcaim7k+nW*hgf_5@x@pU#)9fhy6MhtcN78fKl7sG0if1TAMJp#Y4 z4YZ%do60RhPOe0+c?)z#|7^bHG~LId-T-s}_d5iyZFFB`=4a{-eQxXcR!J!xg5G5H zmfzXD+l4tR>erY`uPr_fvFB$63qCQ`PM?@2=YkHKB@^9tpCK|WYCcVb;is>Aw4Xx^dHy3k1tznC2@tUfOW$?}8Xr}_h_MYWY~4_mO9Wp_fYbP^ zK$({rekHa{-4Sx<1VkwQ&V(X$*ORV&MPS54gWU{aihX>5!wodP^;F35MgiX#uhllH z>Rvw9XhVWyB*6yt3*shO9Qf6AUUpL2>3|iNNJWdsX4rmqiEmX{Q7RQ%mD3o_2s5$E z;yUQYNZ1XjIQgEQr_h;VxsLdZ+GfTus+A-?fvCREsAz*Uf8vElz7p{;&&|dnf(_aP zTb?b3GZlg6wS4HcYd+z4LT<^!JO0(5il2IVVa_|Lq#c_YG1Eb_1dmk* z&|Gz|p)F_g2#N@%liP!X`Xo%ID1uUs8uA!60p+MkH&enORY2vR%R|6yp2PRI3GyX< zNhl`Z_1=<_qJQaqi9Yp);{=3m%B{b>0Z?^P+Z=hIoF)%k&CGmdlz0v^Eb8OGF0en@ zR`s)feeb7ywKD)J&farE>Db_B`@0<(aY)jNd0y)Re{M$_)|xwUN!tG0Auk^0qYdGn z^d6{^%j{HQFvH{O8wp13`JP^%H3#b3!534j>EU|8Oc_dvuzpouvoM=6#neZhgory~ zFNFt#?uKfGU{TF>g#_kF7E+h3lS+39uWv~cJ~?V44i4oi0lpl(BDB^_5ToC+1%IEb z-|VmhIPI_8f&z!7@k5y>`AjQW7W{i_bT%Y*n1>(0KyBK8dJ)nULzFY1Zca zfX6V5ABE4k;cEwGGV-A}GiUIQ^PcCuvARo@8`?v6BV-1c>G6yXkRX+UahE=c}L0hpRTi*!5oaWn$aNh{9Rsu{WadoV4286?yiU zXO(Ig>QIIYRn_BBtH>TLA|sFOlIRIoAhUy(!-j%;ibCooRVKZH=KZr zX1H`p_;=Ol8dxgma-vF1$1d@7V67#mKU~JE3{B=V{DnG49*gve0P-&Yoma8rF-m?& zxJ}lKrJ#(poVm(NhbtUqWSj14LMxvdPWcw>l&foD%cV{)J(=cFvl)u=e2AzVkydL4 z(6K00D7m331FnrA@NEV|O7`fcryT#;t0l{4>1#@@Zp+uB=KN={c%|ni-6SM-)fJjG z>P#v*PQ8e&SK0~1+^J| zUJ82COuKPrbKHbn=ehUy(Mu1k6XlI<^Pa&a?dhX=v%ou!;Etms_oLmT-lL;mcLeSn zhn#ud|5eV(mT^ZwKu%0R7k!r^;K8UA5)%**5&)wFJZ&!NT|(bEW~VFUar};uF5qzt zML$6iJ#nW}pz{BrXO03VPFIQv!L*M%p)}G{ZBW%YV#h8C2vn!q0b&Bx)dGM(p@1l? z$U_K~AtxXvAXX{oAs~i6EymCl5*4V_)$$NJepiE1iM~@?dkj{6N$j$m+;J4_v>e$< zOsuw+;bePSx4K#s=7i4C)%C=nQ*E?u9W}&`r(y&I_}4jJFX|{HVC#uFDb4??C`u*Z zAtojXO0&O%2+skfGb)<$m&G-iIMR%y}AkW%GnA8 zs3OUx@^#&mfLyKZiPM){bzDtd#%+o!y~cHvOx!Pd#we|L{FO>@P;kBa-VYZvCeohAMw{|M2&pquJKi*MA({I{e!73wy=x*TTB>mzPAJ zG?TL5e9|Dp`oEdrIKxO#s16Y~LQI3aRLmp%PrF2&%?Nfsh7heR)0wA2bi{mgbYH$y z>$!#Q3Q|5S@*elpJA8(QS<5kgO4s($t!rUNH-8EKiY@(#J0cex70eDB6+xFWTc;nt z@4ZqwQ=}TVdSv*I_vrpa4|p6xBSL#7dQYD6_dM?p#upvNEibC=cAoLu`@Lf8febBI zUjI1Pr~IyuEZg~4j0+s;GAscZCSOq-38S<7^l5ojN5`z+{QdJO>UJxWUxdbvC?Hz5 z(Y;q|AOClFoA>9ni}^ygEgtOCt#tU+yqP?y9X=cH%quCn`geZq@nFWlWX8bMJqts5 zeP4fQvy#p!vxcQsrz@Ao@1s+wug+wSpQ@|QzXs;y)y=Z%^7w?){Ii{zpi`+xMI}Yi zaFAYzGMy+PS60I>x8l@<4}`n;osnftmsc4x{fZN6_!Rs}`{}FE<@SX$UL7i5Jv%4u zWGJb zb$1mp{L<(C4t*3s{%;GMZDd^b%L%jNu@CaVxSax#rXOp*BRh+`vQ_1uI$gJu1%wFb)&n&CZ9Uqa_tD2KY+H4J_2<;n-tb7a58H1oI~EV z`JQlVK)soCKfB1<6j4L&&?KKj=BRQD`t?0`kg^9;ExRod4vZh~|BO&4TzswGTJRS6 zjh1Z$y%ocX!!#FEDV{z`ah86hw@Y3oxdM3CnpaX)L1x>hHmbHAghC9ao&h6|E-#X+W65#xYAhm?Il33F}n#GGx*l2YnIN8pa-7(RxOi@pDu_F*h4?M6D(S5FY+K~d6$nDkKqgO?#78dl7*I!`U^UuuRJ=t=rdbP9(tS@ahZcrNR!aB3r^uGCG&*xA7 zsWv#56t*(+Lqx30@s~!=-%=pYBdFybJ(0Fb*|eRgi7*9d+WQyJUbFDnRg?@bXEe*C(>Nc$eqj1NOb$`80wLD)qXa*;c}bo@I}4A$3LMn4)O7N?q}+tP0TkF z(PP>Ua#oMeNR(j9HaAHX7u7edRxD^AT>{dax%mNKj$cpy<4@wEl!MI8Zrxp4r(aBW zd-8IFNoeuGD{GxIo+Zz7fd=74Xq|x)wbf%ly*nCz}eCS&ECS}iaENaK=T)efXPfB>S!ve{O`SjDA zbKNR#5)u-!KwFzt%J=nrB|HBCRQQd1vIzw>cK@ zJBfsv&Bk)bV%uu?g$vS49eT60R!h27Mb-0CNtMo1V`DQQx|M!3c=7z`G*4rp=i$kC zBr(F?>*Swdi&S_2+Z$thV$HcM=b8!p{Tg z9((T#J~mTpeo{ZQPj1=8X>1X-DEacymgx?7nMHKo>oOhV+wm9r9*JwX`uWPSv?5E) zz~)>pw8`|<5XxMq>SBQIe0+77i`bHjW}o4TJ6nyb%6XsXKR&uQy!^)RRFP%oOE~?^ zsQvr~)78!gJ!uy@p|+UPx%GD371L$e>8m8hwSPZ8p)PmPt#HoiE0|MU#L)qhDjee( z7hwPKK;)ReZHeedxJ(egb7$1=&l!fwyBN*7^wsQkq(>RDM{>tNd+y-gB8`^c+I2JB zrEzKQ;iJGax;H((u4U%<+s}PCF_)`A0)LBMnal)5@6qC;!1=$1)LwP<1T|POO1P8b zZxQYiY7;KmiKo2%axPB9PCt?v;+qWz9xfA|lTB&ihKefL&&n+=>fTqSu6;#6hebGa z4JcY3DksLrRbQBDSxk-HO^k~RbKc}^3_EUQQr~}Uqz|f=BL!Q*{N|38gbt_JR`E?r z-Kzh~_ym(Zt4FBC%}gybRJ6Tl&IR3FB%>rHXa^>>kIsYMW`!s^ORr!4PET;U=u!5Q zl6X@+;>?@uQCI!AQ<9gL!Z}4d^w_ZH+2A{&|@k zb#iFUIbX(rmFr%1)qhQ^kAZ^cyFluK0UVbnAs}?1W3)gm+F+NFD6bPJVpMvVCav5Sp^Th$d>xSFB7-C6XE*>sxjuILj9S}#S=Ume>1OXn-e>l*$ z!FN~ikc$O)z)TgJ*`1z^zF?PDJ zhlgtPi3P-KQxk@atdwTi6;V|fx)koHhy-#7~4#-*3z zY>X{cH!;~SpK(TgOquU1d93OEi-8IblM5RwFNGs-6B0Xd(R@SR&x@tfOLKrv6*r=c z;vn|drCHPuEKB-W>)e2UCPF&T{%Mw-$LIQS^0{v+q8An&*ICa?iocm8 zdcAWaaHQJ#b@Q{U@z^7-FD^Q11Hz8!Tq=&(2lG8bJpPmYQ9oLn(hK?;ck2xYGKGpR z_mi_y$x^a@DXBGjl>J-`bmEhb&S1GmVVSnE@sJbLdi#Ys$uD#d+lh@OtC$Ejd8c2N zDE{%Av#u}ox`|c(;Lz95PBivRL;da1wgE_{R&takQ7fYdhM~dx>jZJFs)R^3w(&-; zaB$tEK0a~=qBIb){OY?8j53|$A*hn8_`E$R!TS4Jre~iU!_))a!FU~@sE#v5xW45C zoZ_{HTu>bI(hVYu6&C6{%;f~c#SWknM0=YmmqlLegL8!EXCVs+(^_!=azp#_<53^< z^_#qCt@SH#DpbyD(sig={WTduWoF3Yj|vCbGVIS$ZV6Mltx*)L`* z%=rxj=e}BWkrh!d(dqC7(yz4uE1 zc~C4#bw*kJwE!b6*XEhC!tWHw1dk*-*9&9T+s3h=CN_@asU~oZoa8X4?ao;?A)?;1|08*% zr=NNSm@d?V-2arwUYL`*_TdU8OSG-2=3ghPl2Vhi;V#Fj+q0X}1ab7aK<;=~|3pFG zt7W4cz^o6qQN1}n?v4^FA61{Jtwl<7?U{iAM_zIG|4^&OZ|zzEk4}1FH>Vf-ty1Rj zePcl@Y`#10S<{(H%PtF__xoae=l#T4a@W>B&IwPS+ioK2^|tL>Ri8`6J9GWCrE-Gf zQI!@9%2Yj5398-sSG>#^Qk>T_HzpzZ*ZU$6?u3NlP|e>}Mxz8BAm zLhi%+rmfs|!k6mX*3~6*2gZEoEG56{J-7)t8&Z{k9(23p&A={$B-eC>&BxKz4G z)!WNP2+q}4f!*aXE3EZ&=c2fvLDyd25=tXxokZ`W!kG0gx0(l(D=jDWr(;^3jWgTjMQX?drb)r>o;MoLt*n^x0H})%lqJ5OHRwk@3{`gG`(DFp*bl==`--OKE zgz%!Z3Q#K8`OSY6D`2AN0H(}Zv|Ue~cv=ePtP@%}XE$!?(EAwIwfM{u=ea!PtW#=E z`Zm{2dib|n#3zxtn5-*A-{M%~irR zYdIPZxxZn@!v%lEaVr?;dve92XIZK={wB%1Y?8evLiDIwE$fY@Mq%Ght79?<+%AMJ z4YXzua#J@RWpJilp^s|ex^XmD8U6iVqJ7pMS&s)$vwXTn$86^4*K=F)C9Zy_06=Pi$HMLy0PaVSK?EO3pgI|wd) zv5U~DoAk2vYQFOi*RREJyuJuGw{b791>8=#9*wV<>y))_D2q5zk{e{DdZLb zd{%>b|4n`7OAISibVGC3?{|SlO)5|>$r{pQI_Wkk_3-_Fe;NJR?yb)CfnmqIy?~WP z%oNKo=Se-dlj~yoX2NY3?GkOnv@}j6)L}Q>$!P3b>pOmdlFTiY5#(3KI%@|0DTwfv}r7U7;uY^ND%jdM7j*?uJ_6mUVb{YjM$)m`{k81c(MrYT5*5J<)qMo6+G6{H(e4U8U{iXH38DH^$1fyyc8rcdCE+ z9lf{|opWdUd zBAvyOk|A?1(rAeOIdKAQTQh2YIk7NIotY2dM zTlXI9i~V_~a_wJ*ee33Ee9DbabO-d@?7vO%BYT))*5bObFC1Q6==$0zbZBmA zt#4Dml)hJJQWNpaYVWUVPcq82bbOj!>pRn?+FgD!=J_ih)^hde%awg7x5fN) zaOO)2b(t8ak2IaLR(T+WSB?vE{^at)6RuX z=u-a#4VTaV^W~4fFFd@Ssd+2|uvTF4rox0Bi-i zd{D<~T}uD#Mev3TXcL#WJxIVc@GJk7(2?O1=4yi%+3%`w?NOHpfiEVMI-qC# zp5ypf?Bb`VI+5@XlPIbg{7cLY!dHT)rTHJi2}!dtuh5>$HSqQHCux6Ioa-um*d92p zqN{u{W05KS3B#BWblw+KLM_l_)&PEw=yR{H4^i}z5cw_s;l#5?D!E%fa!E`QV;mHO zI#M~33NDnibbWDO$6J$tT_p9o+*JMkiJz4Cv!uS;HA*uS_`L;@|KiU_flrjGX7T#k zhbr%X1(qeXnd2^2T*ndd`#Fj>1&0<^`MC-hv(`IT?7nxFUU(@{chx*B_Crf^SYkbl zHG*2CZLjyfSdTXh91U7*>&kOU^(0Deyne)nPRW5mA~n7P(Ef4JP6z7b`a zR5q^u#QyAuAN3br(8<=tkEbc*(klAT`}4Wg7yioKJHob~{Kd^Ni7hkvsGpP>*#lU^ z#ox33>&Nr1#KRlvVH{tx&5lzTi`EZs+SNa7ehpk%4O`0%DB0aOII=u=*|`i(Y{Xgd z>u9HYFFgi+{I6wpYoT~z@UOA5@A3Pkot^RD=gQ9A_RUI4`n>zC^2VdFHgO(bTI_|H@H*0yZh6*tk=q9{KLfa zzv`7(kZC)*a2Iptd2?>EH4eX7_D7f1PsJ-wRu^{mEe?YYqOET~Gf6jeetmXkK37U< zXB%5jxwyUb^0&7m;hhgI)P4Wl()a3Jb)kX5`}YhF*2Vc}zPZeI9bXgT{*AvCpM-Ya z+Ue@k@7TEb_wCJZBlW~HEidoAER1Kpe4P07W#CZk=0fCRqS42Z7cPW{!4|{y%4O+w z4-+odo&A_A@meA0za^GHv)2Fe{lw2Eo7ca>QTro@C^4~pT)a(V`c3!pC@I4)ssj)g zhnt(2*Y*wxiFQiBnZg*zH|&zwl$b8j0IRZK+le>4Gd9=P_q}>pa(9FI!!Z3P+R}!7 zWXaeql!M+W&A5}3E_`QYX?M`3HO=bfA93#Kh2LD4C50C|-6mdJHXo?|T#@vO%S^e* zC`u2y0RMbj;`x71Ty)B1Bq#M)U$8tM)ra4|uBFdz4_e@!qaA;4CywnVKc~8 ziY-fS%BfrcrmQ;0xa~mmS-Gm+X&WI!-t12 zsg~z|Zj*KPF#E1YuAj`!%{jMDe^yxtRM1ypp8n)FcqCyQTKMHoi*K?U41otBY+vH_ znj4CV2yy?Syg?*g0siZf^{&glra9H-IBD9PhPr%*4cH=;?HLHKvr-BZypGRElpnpY zH!=L@Kb22Gr*tzy)BGP`eTFRZyGDCN>yHPV1L4Rh5Z#sMRdx9ReU#^<+ELkm>Bl4j zOzS@LWE&9U9AL(0H=Odi6bSZG{UxgLT47gXyaarO-rc$obv#O^F}zT^1R+=v;lu|0 zHXn?WtFJD88Inb4$6+7inlN`gQ*SVZjok5&XEmw| zS~?@A58v9z8yh(f-8%VI^yuGc6gD^XiqHb!BWmM_;<5oq=G^w?-ub;ez`8OHkk_oe z-PB#9i{ED5y?W_}oR7#F@}t%~6X(VYQ}W2Lsqqt1JJy6ZuJO82ZYYD(z*!jBjbz!t_zthlX8K=m%9!4@Q-XQ2Mm zo|Ajr!pU!}uk2#Hep%>Mkl}+NzgxE3g-b4Sg|&`*j+R$g0l?%S{E=L-+o((Mjk?{s z{p7?+6L@zK-b#dK7%NGergErIav)HuBDvpw7#RCpErPYjl)*2$Zn%^VX{%kw{5$R> zd&_p^WWKkpf%K4viGiG((DxSQ@TlxUjZ#>Qk`ReWw=-` zEx)&RsOCiKxo#f3gzHaZp!xy#@cU?8pW*&u+afeT^eVV`6aePLW!ex?d}r>N4Le`E z_zD^Yaom&9D0eHPw`QhB=OXdsitdhMk{Iz!f~x@;S|5wPu@imCHJEDbk`^hvnV=EB`9aI#LjwVSTJrZGcie+BaBxnf`9W3a2aF zz-Ys1H=-X}Tc}P~UZ?3HAh}M}EECOfKY7p0&Ko(SK*rM`Mj&b+D3Hg?W)n!?GX2wq zexn){_V}gZUZFMx+2(3?=Bi(`_P>x%80B@}NdQz>jrM?gJ^o37 z0>FMDaMu@SV>{OYmlFlOt!OPSo{O?d-()R|ELOxN$_A()3+J`_3R$P8oc@^egI$oJ zD1gVr%f|FV;NpTZMS_BDEyGi_7ewWuz%{*o6p(hlF@lD2^akKhb~cpuch@hlBJOVU zFt2f)Ru-<0vtn}8O2_A&I0{M4JoC)>WrcYxBg#&(Y zZoq@1WJu)5b~xYBLha6;{~4h)HKHC%K#FMp)cMovlzzitB>=6_m|r=l2~p4}>W72u z$acRn2B!jr&;q<5fT#fOf%WJKs9_?Mh{*~KcC6COFUD&*48l^gbfDsJjo%bdAR4(w zoa>>d$t6?BoIvoEKs1m{gJudi^z>9QIy! z{!_gOtxMBKqDK|smy>8`K2p6ig3;=i31@8ypw1^=HHv}n&cD^Yh^-x<_;XUcNkKAw zs@-*R&F~1YiJbq0&h^viAf^5n4}YDM#KFYljKmbDhI^9;Xmc-FUMhisL8tudTKjNY=0%^O%;t71c`HC)`w2mYAIM1 z#kt2ca|`nW8+@wAg3*n@wP%|7bvtPypJD5EV_zKR4?(8Vd>Av8p}4K_QG(k^&p{Cz zasz1va&Z6p&Mey9yYVKwhU0e=?x*GLWL(XAWM0A1r~F!~nNB zw}j>_3xl0UV(P}7bQXGDghJE>&;7~K66+Bv-=++&Vk;1HLd2VB{%NYI^61P|Lx%)T zwEcZFZK4knH^tu6R`uiz2tw3nkD9}N-l+cU`k5!%fM&GY9{s!Df*O${!01}YK5-TI zvZb1iAJ8pAR=AaFH?3{q^(FTrt~@kQ9(sHI`l)f|2VLj@rP@P1Rm4##6vyVgb^{Y zLXf;s0WhyWQHy`egrq)@>_ID%roy)QG!&* zKz*u;u2nP-xn(=Flz<`IV2{nG$GHx<1lb!t$4||thbpuGgsHR0WJX2^LbZ}C8ca^V zQ4E}x4E3!lmFdmVnN$~ix1eEFK!5&YnMn_|=(N!lpG>v~p?Q=zVF32d;2qZ1898}E zQcx)-&a$DfaB&AgwP4UMM*Z=~{w9c?98o+$-;!RO5EvoRg8u!ew0{XMT7EIt=!TI3TU}<{7 zJWnku_2+`$Ma#^De&l@a%43q|HnJc2qtRLv)(C*?I6d-+jpo)?wyTiRU9TMD@_*sQ zGkBpF^f&}|$0d+%N>-ORrBAK?W9D7ST`y!8*HbzGq~T4|`6{OVzuV`Zu{!eR#YsIu z?o`|kz|pSRvZ8(+u1NrqX46C6?VRigr!qXXv}^-V>du!;XQ_kIjpB~Co!MdT3pTd^ zov&?I0kN0^wc1i!WpLm%m`QSiJp_N6(mtx>jm zl@{M}H6Ja@zo^Qi_m2qu3e-vK_pI2`HbzZ-Q)@lN_2en&1b7Z>(vkz@-Cav?O}&<{ zD`zOR;S$EvzOL_*2%t0?cd0Xc5`b1 z+48@~!8PUc8gN4j4*l)`J%J*GK(1v4hym#$BxvX5P_gp^D53sZ7NJt`ake9*5)@E8 zP=1M5P-YL+NtZxI)`~3H3x{-2$VftfoPe|_(t?S}UQHZT)Aghz$$Pg{Hhrm~1 z??gP6CLH+gB1C{_jlArnID-W}5vG;AmU;#^Eb`<$(FE7*Eq08{RD_G_>3Nd_g@S5z z_{tTf>9(Hls!uvj3}9HA7T7kx$KyP@u9)RC{Ss``8=wc!De9l(!Ig(wlwJAmwSZWT zJ2#*vSt=H#8qXB<@l=g=!XbYmL&88(ZucaR=xaD5Mx0oaUXAz#+AC7mHZ_tlPsjP< zo&!0mJ>wVp0>E`H<@T*1u%=A!I52W^P&W?+cEBeW1WJ)qI=c zK1^#>i3eQ~e)1eU3O|#!nvLsZ?*Utr`>Rs{!o_}|8nnCXVE=)+?(#H(ALdL`ewDJQ z@v?FGY4v46q;rn6A&)E7lp>fto4RV-+reu@b#-Jn55)&;_7&2lX9FA~U+TN{Au%G&6-Bq+p1fO>`6#E8uJOc-pnlVvCo() zZh9URc{+we-a5dwfDSBemkxBTDuDSeCi<#Z|5IyE+0s6nlDOzRoJS6?nb3`o{B)Mv zK?)=gFCO5U-HUd$Ow$}Kqu{vu^!rN#PyHKmwu;;?TeO9mF*nQ4dFaTZ28*^)X2*%Ibk-r~A7oxxNvKDHP$x z((Qie(1jWbZ1i~WnDdzy&+!AZKKEL%--Qvr{QLOYwLeWtNI|Rm%|rCnhl8ce1>AK= zOcuECjTS=!xiC@1jtB-!zlst|Kjs}>;snF@DEUbls9w2oJ?u>u&a6tYBw!@{jG+!e zxs03ke zz@j&TSrS%~^qS4t&?=7myO-7DIfWZtEV_tkgRj}hK7}{=bh+*-Pk{YoXsDEnl=aNd z6EW?zDO(Hsqbsa!mw(hZaY;q#Q8sv*Ud;Sfmr`ybsnEbIB6wjkZq;aSGC$1_j|zEo?NqUj=>Wc?II;mq%=iD>=ku+Q&{es`U9mY(NiL;*9xsz_f>)d!h7Uy}}p zqSnEE?`bpiycu_7SKo1boM0>khB?lp3lmXMJ{VZK*5o;#VPAekUkmCB$3z`xl+8$v z7x(SNnpcKbX`7vz#m*=@<_!I8BnxVBk9-Z^)(A!83wu!unjNMNd#8MKh9SZq4J*sv zH)*yb_t)m8fdV_M=`W3SuDH4$BTt;vgneb2ZaOr3FV%=aLq}l?79}plAsQ35fSAWK9lAqG6UQ&MSGF-Hu^U=;*JmMerR>9OGpOAx-+3Sw$c5~bmUdb)@?DsgH@F?|x&ToN z$fez7DR-KMCuaGjP~EOaQE!fHFJxb52jW_k9$f95)tMWg)2H^dhoxE3I3OM(euEPd zJ>={YC>7s|LMpOSt|Q0&n?3s()8aX_8^)}w*ylZ7;@D`9?#da*Lu1kYi}>Gn@D$(i zpaPwFbarN24cs9RC9fkmT{5 zxFa10#~B5XDS;{tIj>Mv=jwp#>Z6~ne85cypy$Y}+WNT{gV#6hP4PQ|hZ6Z}_^Kt{L z(h{Uqimh6Eqs2oAMQ*%u zHt61A7?X>tz4X%*mgxmofa?iP_<`a?F%1G!FHom;C`$nyAdUjN8F3U)s`A%h^gs|M z2&GBz98}1oW4SxB@r>^qs4i{)zERXh?l3Te+g)3Wz?0CT{iR{x2KUDzHEJz^|8w#L zn}})RcLbVPLG4W%!!Dn?#`bhy%#tm}{#XIm8j*ugAfTWmDH$QIM%JZJyoh)Gi^12h zFdkE`5yuO_4hnf9T&pez704eWXXYD`n*v3Ok!c`11q`VG?4_xIuDk|*1@3JS(+Lov zq8D+IlcHt{eskEPO{_Am>AW{HS>LlV2}I#~%&_iSRKRjV%S6Xjk|04Hl{0uBj^(4! zidc2XNpYknmRGAbhzrW=?a@OL6tMkOa!GARfFM>Y^t({;~`<$Hcy z^SancW!(%9Rpb5q!Vj)Lspj0=E^#3v$e*fKT>ToX#ogZWyFfn@8B#F}_N7%Mgh*;U z#I^RP3vQL3K)Qo##BU#n160pRE++MlJ_u)HI#^F|#zdyhpBTNAAzB7eZVOeYdC|@S zqH@EqDb6~qBA8d8Or>mx!58vDL%zkQB^(AFVV+uYFEi+>_mYVzoVUE>9Zf@_Dy$wa z3zWQ)*7c4n0b>hPexNkLZWcd7Sv(D#p=qu&FOAlmf6x+8qZ;55liBgqi2gC=TuP_o zX|B|YD~}FC=IB_f`8~bbN>f1X*oL8N0sER_AHb+$&1Kb@X8SkzS?xEZcZaIhYVK=@ zF~z**KH=wwS{JNWN@%cjaZJ^DLN7UJ5LZkJDZmYqhH3%A&D3AwW3E4Jy|6*|OE5`O z_*AL9^M{$QvElcmQmp^ztkMf%oG#l|y7lc9^_bfBPIm9r^Lsc!zQ^x; zvQcUpcx^R?HZ$ga^15$=dMwul_VEd%p)SZIvucJDzP!BTw7X8ri}ASG{Q$W*S{z(s zAUse}&kr=PU8wq?6UrQ4o{wYfvHboR*Zf*@EQ0b=lZ$v%4+f=i;a`GSrgy)QxYvNsgJU?>f8ulw!M^sv8@LUgJBa$TqWO^hf?b;tdSV@KMI{sx?j~`IFA=<` z4G<8A3_oT>w)4`XdA{tE3Aww<-gM|51VB*>z7=KVH_AqKsx_ih-?L^QojSR?=!)-z zwr3(7j{)^#SMXt4GTcI`G{zP945@lwrr;AM)nh7m!BenXkd?UP#w&RH)!pkD6`xRR z#gDvtPp?*;@2vJhPXISG8oC-VF23ca^PHRP;_6ta;|VY=7^@VP#%>FdfK{{|V;L@G zMlK+xMf=S}J%`md5cs51uHRh*OgVl-XaE?=vFsVGx};%iZ6q_5M}La7R|AwNdm3d1|H~yIn=)XUsX=6m z#)`n5pkPuhTzXhbX96kDFdEVmlO?)Abc%l;h7FN9dbkF?qSOEdm}7w)Q42~y2PoO4 znyB&8gf_HcPUlO&QL>GO29hg7cL1{J_*l^$xvjLo3uGcqd;$C95C8EnKlr&?eds7>rch`l2V>7A?~~2}kjHsguC!d%KagYj#`6 zl1xK#O-knY{U+{@qvKuRLy}hzLN%Fy>a#cg%2p;{b0ClgWg8_mFkBD5&K*YuxKqL1 z5G)U_<^@a@SPwxjf4&-LBnPS$4TI8Ld!1#AeHszdpvA%D8galWy#Oznd)5wGs(G9g zpJ`Zs(2$|*}<+ z%ygTCZD}vjt|!$KRx6frvPI}M$LO+N1o}nzWhbjD32f7Q z;{jF`w|}9k*JyH#a^=w+b|O`tLw{^Sq;V&c+eHoyuUx(@Ex66*auZu)8wccgv^Bm%G05z#a2eCn}Ms;uqxyVxJ;r1YjHutvwUiLN;5oTL7aOd=Yw=Hw%YIj zteMs)O~wBGc@y6@1H^vrmC(7O6Aj+_CuXBFN=SUa}p_DZRnT2z(Hp z?x0uAqHZG7olHbBVKmAls&lT=;?gThd=(bJ(?9>oaFs@Utyb3?+rVx5d#90;?CoCy zO!g>(nZ&G}5bYdG^b+Zl=1~{9?IA&@cfbuAZTTZ(x~OsJCP`SsO%_I zu32jw&my?zcS<+n`|kxHNYx~|F$(Of%GD}C2je>mD|Ztq#PdV&Opo89OnT7Bj$t-_ zPb9>^VLrcL3r;Pk-p}BgUl&^tw{0p41Xro6>r#1y8W=6339H*G4f4WWxj)YY`P)BZ z!P4?uQPD}V+Tic9^j~Pe^v$|vr5+qgm;3H!RfM16|H1VJ05!gNRyzDL$orl5OGt~nM`vq zQ8rAUh0hVD^CfZqXZ`UZsLo~&fGXKXbX*-<>$)H^U&JD2pi#$&;;DL&GrhTtpLPmR z@kh5-Y;U>pIN|z?%5p6%hyX{2PzK< zR%D_ATEsegcUkcLFP)2tpNcH!98% z>_Cm`^O#NS?(+lfZ9yT7&1>7kXL!``>^D-v`JZp4Wa}4Xd);A-AF|ZX3+v#WOMW4f z+T!XX(#ky8P_6$k-rOt!SxV~42tf|JpPzOgW21Emxd}A8fmB#+a&{)kU$3g7JKJ@@ z62_9^ac(;(9Rtt>K3UJ$Po=t0ys+b#f@5Be{^wYp zh>GVz16+LO6)<1EHjf|RB-e0>OowU)5VaKCJw1mVQ$6W|AN~q=WDr23+RD~B&02rY zEX`nm9V@?@hyNi0R|_~bH(=(O$|{(nnQHo~JzsEnZue8e<|FEvtpzgoS^dp|nG-;l z2QI<^#)Bqs)!;OT=iyd!`B554i!Ve8jz>D5bls~%?AKANDLkVB(PHc{-XFeREr-sK z8t{JPyLwHvfa?+JvDbfS)YKPUu5qh~vn=tFmwNlJ2WmywT25Ri${*IZ#)-2c_(M7r z!Nu6mx|!AeG#hi=@G0KuzV$c|@**Mzh4=Y;J&qGC z`6&Bxj!X)3QTN9ODuv^x<6%$?@_w9B)r=J(Wl1U&YOd87suQ={nhmo zkZ{U%|9=PUPJY>00MYsHKW-|d_}9wv=thhggd>ch;N?mH?@}K|iveBiP{)S=!Y<;R zem#!Vm;C3C%~A$*daPwffy3B6@TXga7f!0DIum|0ACd?#_)ZK#Z3j@gG z9tiu(;~G=N-35Y65P_)yCDGU16!V+JgrDd@Po{c7Zq6KELQ57R=shKRH+Y9TJj4&Vrj zh#|o&rU-F`Mx-eDh(tx273k&7KX%`&@ep%oW%$Do#|OtBT+s-w4SjhwxP(Pf>5`ht zpi+h}#j`;GD%HX>X@-I#Z zRf7>Yv4*pN&>H^@fIAEDmia&=zPi71;T9eM`@W|Wi|NR^>lJF>R>Ei#Xc(c*g&!?U z&PR#7%59P7mQP~#9jre_LgpNA+#kR_6M^CLqOiLsH~q^(YtBRM7S*MdfKo)q-sgln zCem9>Sq$^CWC=Q_C8CiV=sYx#=sg4_V|+f_mtRsZ;2W|))1mAuKbq&a#@%Si?d9;-(R zly*USGS0$Pm2gEZ$SCOJ%DHxAHhUO={{2j|NFz9mj6du84xXklO&0MlMh;gex3OCQ zVb=f}MQH38vQb{N*WK~<%a0Q-|A1+Iz3fq5KBx$y3eD0W5M+C)O@O0^#^4_*LChA( z$#aCKAjwUg0UsF6hMp!9+4iVK-GaU)8zt3zFgnm+Mnk-$j_DQa35y*Gi(pKAE#3*JgB9bmH2A$!S8-_w7wL zS!9msSak#>c}{9P9dA(Xt8}48LNCsuYi`!r^Ckag%_1dCQ3aJ3vxx9IKo7zwi92Y&a&a{hnh_A|#Qjcvm3sAXE zhcQcXbd_9hV)g*%cJG7Ix$OF0b%0c}&dY7^rtQ&O% z-pJ+dhsN5cKUK}z_34GC(GlhhhH+@H2?!+@uO8bNPUi$E<9y`2ZqJuH%z!d)*tUqw z;G0sbe#K(PL4i6&4zKLY67fpSH3+Q>0zvM2$z{6v@8ebHEnI_Bcyw98ly6nK44)Bg z|K#4=buYn{y1GwJ8RN48?drv(3m(GC%E!zT^PMLRkq_Cq=sTIO+)3X{HOl|BHRX|+ zLc>(FBl#X#mxcmqfjv8ZPXHtv+iLfL^DVrC6PPi@xH4*pgjy}YNwuveEhBot>uk9F ziApo;)it5z1*uZ$fgABrs2276>Ho7BefU_!moq6}c`@Jo0ejZto|)?;O4L9C%y*qr zzh*o%sThd&2p(ldmnv3#tMt+hMK%gb463j;Sr|*G1p6;R^I8Y)%+OXGCf9%z&D^Wg zjljj7kODktqx(E`WDF?E9SMB`PaeFbxU=Iq#M64XSdGE=gkaA@*2SP0EAeMzHn=>rNsLaF4TN+QD8rgqDGBhYNrynS#=Mzx=LggKCR^W6 z>S-!h)>^R>u_Y8M=wces#g=$}F#+I$rdnCCzhYVx(RlB`CMDI3VB8o5MIbs(wM4V% zBHuQRb(`tg#BPJ&rfo*%YkI}AxjGSPHuNYL zxwa0`jW|9CWEM)erdNq)-eKqS`>GaLjHTc>V3^@F=~VUbB(q;Ibr#787|=tOajr^A ze{-}?u{5M+p8|VfIN}y-`Y( zJm@8Zb=s)*Jtx*x&1ju*gWn&cjR8UCMxD$krg&C17HHaK1f6B{ zgh)6ENN>r?wdhtYQY)TROF$V>J>fu4-aU@zB-zWmT`aZ310dn0 zHA<*y8o<4Uq(PaW!K||(9dv|(WYziji>X%!=N6x0H!u53?wS$qk&K-8^f>y$glyL` z(JHDBngV^!Bj?A2R&GC<@26xM$-GB^xy{{`>rA0v$}tWRl=rFqtg9(8c_z4a-5Oe` z?XOaCAG@gEn;|;SL`SxjotO{V*mTJ(wYwIZZyl$ai7 z02N27YiiI|g-U3SKGd9a>~Xh4r>@(7f~QbJ)1{J4W71}kvDnZIK6f@;#x$CLcp6ut{krxAXEet6p7TR1%QUo03C%u8Sij3tV30P=M_Tbg&Sy=4neB< z_WAB-ekiJ+tuU2WZNYGw%Q+*j@q1hs)nVkqwq@HzvBS&hz|-dsp?T$li335}?+;!K z%j{EqS)>CzmUYXV?ANj$OsU(2-q^eLA$&G*0=OYrlz#t4y(taU9rS`dMJ zLiSDo#$!9rN%b&i`*}m*7sJ}h=d1O<{G`|7pVcxA6NLvdsz_mOG4af}_RuVdO`g6vdGRMicf!cOXMjQ6W<-0e!+nPhYo$#sROniz#>Qy@h z+>hlbV6#k9G-%rElD?XS2)E)2CE3FaT&L*)wt1}}bR%C0SBRA|LO9xt;)&u# za)Y*w{aV>F8C5VwN+7ndnKi>joGefv=n2=~0q@AX20gseq@@uBN78X^aI6;fz!wn5 z4;?KLEZG9Gi!}yW)d3K2;N2kQb%6(2- zajolZ;1&}k!wL+lA7oXgZDjT;GAM$Ml*;1&Q*<8wZ13M6Z?#m=77?peHA50Bmo8eh zWmu7A6Un{gmW!&{X^T}M2})}PNz4>As*1Nba4v8>=`KCU{Ub-2Vk?Zil^rf_9 zYKgUl%T*e8&)AWeczrKWlCTDUujv%>qUIH9W=&RmOiU=JmzdDwfhEAz(wZx)9bW!y zRq)RH>Mz1(X?t8>9Zv6W7tMt&>Ln(k) zabGL0%2!U>InqkGVs1FMvk+vyn>G@Y#I3BsF!VIJ3dwpL z1wA|4NrgiUIalo6@_d}5!esMga!89Fl5wb}rd+QEB;scw^&PRLcPpjJ6kL-I%X1*K zN=SaGo(2TNaD;GVYjSOKaTu{=y)rup?yPHRIRcw6pJ1o&sENdiT`iNc6U&$4a>cD6 zR%g>_SZh6n`*MzsSZ*@b5u}6F2f6Cy+i7Ui5Vwmv{d zGM^2R2g#Rf=DJqmq&QaAAXo0`*K)ae=%T~-$L{8Ns5~O6 zdgySHs!XB8-9v}2qwVdT;6V~L_BOgA2-whTt*gB%$4vXl-(|aXHx~Z;)Tv4yk-vEfeM`dvFC_>nH5m3jgCA9Sv=oUE^ zbWkDtAD1UiPO0SmDpLPBw1Aj$245XcaoxbIN7)Y0n|rHf*yFk{C9q9*1)N+D5CaBO zRun0o${6mLDvg?U_bX>xZUSc(*~#9BD7XE0{TAjHNwWxoaj!WOeHvQy*T)qMR z)O)^pQo#P2yCD6^eTMyk6Q{Ac56pO*Q{el_c9r`LC@Mm}!`ws$kxLwMao=>4$S;E1zEOdUAN)Q1E$A1C+mYWXcs{4SB|Gbq zK!I-G935-)f9O}oqfrEd8C{)k z0N!=jh)j-Vu)=|$R|R@>7xP2l``=5R4)Hq5Is$BRF@3`U2&?aYmh5LuWiK?HY4mE( zt?n{Pvb+WUq`wD*_;8K#$=_XjZ_;{j2l_-Xkj7MFTsgXL^V&MVNn;-yLT{o;z#ZSz zJYcBOgL|QB9}1*Jw!wAw7nJE2EgcGLR*M(q?WQ)yzhxJ0gSP6=J0p+An2&!C4vy&C zN&f~Y7eyZZ&DZ;xOc36)+rw_yG7H~7W%MsO+eqnHD~M2TLfNJFo9%!mD;5V(fNy3v zgY*KZ)2k_1nxM*wN}M=&JJTt(t2KF`y&BC<9@o;TYUC{Mk3YY38s`^&d2~Pj_ISPF zXXqACGaMP`?_Tka!98*G&B+Kp>(KgyMDa6Qp#h)`x<|CTmW@x;C%BGCZ;4u~+QZN$ z=+#C>sgG2o>DxNF@(VUBGZ+O`i6SrN`e-byR%~;NXK5DN&-xc?<{nngpn4HAY+ALp zNV21)fR{^%;Wno4nn8p(OS%jYYb;|g5--sSe=d}a3g6A4PWeK7P919zoU#2vWeoJO z9(1VH)ds4O!oY6kdM(;3d*+?}VK*(j8%Vsy5?}JI(J!%}Pb4)7SN=xq_28_3{bTve zwaf9xxcr&jJBT^BGQN)>Hmv}aUpW~=9BKCX1VX@AxtLuswY7VDV29s8Wh^Rv2`Ja;PWYu8Ha#~%_Rb<9RU zO`(NTD;TxtO8q#UBg0b?GznA3r=w{wRDuBOqkV=lUw)6Nk+(i!X97D3RWN-T&+C zFzVOZ)Q1N)Y;5f1w0*9?*S|xfZ!0R4F~dl@u{sZl?`UVwvK*q_r^*s&)0cZ9=v%Rj zz|Jo+TKAXYhkuxKgC0d<@&i8?(B!w00}>&zreZYBf1H7)`(mYLb5u=X-zW;@X9fz4%wu z6WgBj-uTqIxrc^SkCR?w&~em^U|t4fKya*JJyEZm8imj50Ns?M*NmyS`WM<% zs;xAGhmAVRW_M3HeOu}9aB_&Y$80MZTte>uHIAEb{^OjBegFKL`OI_N*h!Xs4xA!b zSzP%<-Lk-TaMZ2LEi4FT27s4=M)(GtLDH|cE&=9U1uy72`h=C8%g?o-=f zG4u2_z~V?`wr#iH*^Z|WUdL8U%;mKfi}aZfESJ=}-Dijy@y4~#FHu@BL;xWi-k?b` zm@U6K{y~M{X1S5{{6BG;%RYd{BAKUuoX32V+qo%d-TWrU&$gYwngep_kM%PM<)9n>e8K7y!Q^XpVW85 zy%22pKbo)7yW1~N^Vuy1W*3UHe2dTh$n-QyJ?Xl#;QIu{`q2K&DBRQ~B5-CuFrhA) z*nk{KV{{h-_TP4M$CWGjA3t|?k)F+4qE;53PIP*<0M>_nuD;EqsB9OHzMyxU$6bCW zAN_Hx+uiMk-yhu%PXoH0t)qa}vGSk6?Uxaw52@a6*+h$XQjx*=_1IJN7(PT89j!%* zYO}d_KA75jQT$a-ga=XJyyG76)BfEytn8SY?3(2zkzk<87!ffm9iM1Xz0_zgb$WkuMvTD>o}s|U|D z#;I#JFGO{8zS{s?;65o#PvE_Fenx6^Io|0~S^}wpe?q>9HtI~v!Km1DV0R$jegBEF zlyJ`GydBQoi^eaj< zBM}R_NPJ*nv;DZwx>cywWK5@ijLmG&1I=xlG7E<9*uvtn&O+Ep)}KpYD#5|wBk=Vf zQRtANA|Q=(Q2g&$(#lYt5xN7^+4Vuxb`OD8=CxqgZ-lMBpfYD49C6q4VOA4f7HeHb z3}2Aifspq=L&XS7DJI*Gn8TDgqZt9|HJq&f3st(A$^qJ)HonyP9AFA=L6Kv%*uoP& zQ`VtSwvpp4r}j=4R+r&xg&b~9BHJjn5G?P^x-=2N8CZ^qu-n&ew4OOdWee2A1iVF@ zua*D9)4)F7Y3JBsgwc}EU@9u~1CuHB2Zrtp^#SfqR?(4Jc<85y`_z*g?8rSr% z*2mrE9a1qr&qIVnV4DUWXl4y(H>lVrN&{gk5ag*ibNVp=Gr@ByI3 zk&tFMqa-; zdE?G|xfMcsOcdox{mMq7&!330-_ix-JEdo};7otTLTM~9p6tGOw?V?}iW-P&*K~PO zI%*?I(5Jf`A7$%ED9tyN>| zh3;<}eUcW+c8MQzcy$i+Sg>rX^r<+DS0+ml6;VDqKA>Bb#R@kuQzc0~aOTlH;DLTD zP>9{T6@1$^-X$>otA2*zy^z?(T_4D!U`#X3KrtZSiEyhn<<#>2z&2Im%rv;U@gwQ)=Sa$I>K!yxCtN>sE*H>F!%p&mG6+MnW8u>ULd z&1z9H;`N1Y^fSg;(H~k@kIYnj3j7;T)#&7U8RCt(MU39wAMtM_N{{!~i7L(kaCSn_ zSanawDp;~8nxFc+cnH1z$%(9qPG_IL@E02QshiQ}e1321x^z+`b3>k3@+LU8sqggo z9=BK{t6idqPOfe)l=~#@^_DR1^i3OwcTQ>nmYI69FO#R|bz08k*C)-g%to5dua1Upgq2Sj{_7lKC^Y!W ziFIg6yZzwtgRX_jJwz<{x4S+)*CE&AJY%AL8HT;V?p?Xwsy2V7I|-gd#dPM!hk>Ib zI^INfC>c4I80N@30oE>a-IYsMx3?Eop0z@deP+jZ}XaL`euQp3a7DepcR2+=RPpwr1?;MSx$ z=MP=PY^qQHPJ7%eDE2A7C*B}oTYMuHvQjgn5|3>-)V?@sSf5xV8jay%bc;?r%r`m@ zsoavnxbzNf8tpjv0M85*(Qk8Pk;{ z3Q-oAU%0`ZMD=wP3~@S}4<^p2apAbt;Ey92DH;s-P8mErP;jY9d6!_4NdM9A6!OV(7@NPn?@u* zZocqjuS!$n6LyZjZQ}&CAip+?jHx2)e1@IJkU_%C^clM=tP{(B1el*chBqn4_s^(S zMh3q!%+3}Xrj?Kj0h1@nLZP3{)vnGu9153JLM+1A2Vtf0^PG4-hjq{Z6#<(BQCp~f?Wc4KXTv@Djqjt zmt}{~Jd$dt{T24WtL--3EVS9KQ*t+5*w$rr+a9iKAz$qGfXx!_MC^xfA|hiWb&3d+dMlAj=Y0*TT4;3H$^AC$lkPXBw0ijw z!vN%29mlmSeI&>c-j?jWB{#4tz3KNSlIOB)mvQykem!K&GK^#$IMUhQdS5Ex#JRcA z@q1aHLi>77I6Z1LefZ5pv}3llgpeq$W1#@ z%ctp5VTMPNAB=rlk-}QdfCov7@+;R2>k5_=Vv)tqKHOP&!!{&tz3lKa^8(J!+EfTXT=Tu2>aG1OEiOU0(Xs;Ndj1P*KPJpNyjTntUQ?MTio~$D&rX2)A zTXFj2FX;UD8%i6%?K_z#zX$ssww%xfY-#^wrhU=wo6FgHYFTy?wXbu>_0f%mC4582 zQ@{roRKMTToKKyd4db}K_ZfGRonnCI)3>)S4^#f7DzRS;ykqYJrm_uHJF%S-eml2? z>aP2wgYgdS-E;l7I6kA#SVEF;eIa;_+Lg{qU7Sf(n&6F%rS08lUG0rz#}%Y-J@;&C z*Ik&VOYB6paFUT@RJKi0HTv?bUSMJIPvn&*zaWk?|RyB|io#Xeo#F>Sl$mPf<|u1O;{PBImaCEgzr5Ve^xr ztby5gE4x}z=^es!)i%nekjt{AF79h}O)m#IlR9UU#utMMnr2u5YoNT_{|xlG3r71Qywp`FUL^oQ`;bH(mKJ^T#WxQM5=zWN7sYHS2J;{HKwh zW$M_Y_=IZ3N6G*GmTGG77wd$c_l*Zntp9${_8-HY=}~u07@kt}CwhC=E|wFg&~^WH zNTK`Q#n9@L{{{XzKl$hx`0DKgJhlaORN$j_%AJ|LbE?>m`D)rdRDEb>!AJ?e3OZQt zG|9K9nm%!Ke!xJp12edmXdQ*yzmW0UUv8d^v2m8zZNqxQ*PBfdx|iePebRQhjYaGn zB{vHT%%?zS)xb`v0_-|=jx%-)X3Cux&h(+(d3}m0E5vO9%fa4wIdC05<82Oswnzutgt$_!(V z^o^cdMzIaEMt`sf3Aew!T6O+=w|9QR0)6@OCxjBJY z+pvD8Y47%rN6XyP4`Et8Dv0YN4qr}QzwmO*F2mPou`_Ice`Ra1oI?a~0_pduXuqL|EF)622|O?a%hC{`Eq$Rg(7gNHqqAN5~1{qwrv zuh2K&(yJ#}m#F+c2+7@*n10(_{btU}l>wzcqNkVlH{O9?ym|GWH~T*>ZtjbAJ@9I# zUIT^=m96ndSI+&7D7Yn-c=-L!6E!X2fioh)RKAqc{>f;Wty%oMyWiot{_6Vro7CXoNH9n$PcRO73~x8j z?@1-ebSM7S-;^F`9)_^pm)+zBpsq;Y{%;aG<&tI;?LCM7^2dvw`r9}D>GQdACA{+y zWo9>Y?MC}naJAY+3x^EDy8buSw_jwwnbX;Ff8iogu(>tp<+b^~IIP1vF7|rl^|56z zk)UEqQ-=J#G6y?dxBMi<`YP|zKuf-P?{j2jB-HXcHtaJx`bhsk|`I;|x^j)j;+pU=ei>b#0 z3w_tXiO)JO?XQgy_!8`uhra3fdT<< zAJDsh&RhPiyJGC}ZFCK1dLlS#<@NJ#A%yb>5SLda?-M_6L8cx~)Y|;Awaj>|ExM(j zIXZnjmv51<1{f*;|Nq=cFVbd#u?<{t_(A24KJ33fc3HFQFOZ?*Tj|5(>I}Od5qHu} zsKczqfbY~h8Z#y;goWqt)v#z2WG#e(lH@nR`+MLS;vyd|rZ&Fpr&tuN?T<;W=^Pr{ zu)B7$r-q$yTkJBoojsXy_D(liw_tGEc+f5IF|B^0zWwCanft*oue-lyxKRl^C~e4U zk1d=j_9BjlHNZ3lf-(imH{5o@eoxG`p*Yx^oB4o!)7Ql{%XS-gM@86qT>bp zC2z|0V&wW42=I!=q`brah5i)G^Jms0Uv2wg^1@dwigaRyB!8;F9uPX)qNqVLO(94U z*{QEkqlH%AsY>$210$wA2Eo>?QZu+3nC>SmA6lMhYlafL0i=0Kh1@%Wfl*-cEzm=+ z#l68dtSZ+K&UIK*=+ktD5&aCayq-z~3@Zy9JeeA32}~11=5AkOLDCvZ8$XSTXr5>| zTR=#``K{{btCHOqCbvru{5FBFP+P!=1}f8!q&diovWnGer~ zNG8?-yp`zcOLXb3K&Y}4_wP@n>?^K3g>GW` z*V3=Z1KTNZ5pK#^lLhka{@~K>EY>2WHl?4>PyJsg=L+l3&*BUA3#~R-HXRCQ4BIS$ z=XCo;$SRkc7U{Ibvi)3!;a!0{#8WR8vS8`H(*m({G%g!;P9Uc(jTYI+`A*aiqwK&1 zCq*ZU^pC$VyfQV0_}yB04^SA};T=lz5!FX|Z23MRzoD@RQ^N7P`>?lR2(3Ae>4kGm zZ1jDD{pxv*h344jpC%wC;?o^IFrkF5CfHoU$ht$X1LPv`s1SuM z;@sqIpA5Hfj7OT&zX$t;tBo1`S#B(H)Z>r5(~aR!5c69X5Fu%JJ!7_~7J+8e&&nqm z=+yzOxY+%Zt2(bRUb&VK)?w#NSAi11=jaEy6>i(5BT_xaj1WWw=Q2i+n~7#Hhy%J< zl2%9m*j+w1@aRA$R|P8JIy3^4r%>pPnN25OnBeFS$frCU{Y6~z=E3FxMuriRIrKyO z*_NfggY6Rj(*1EYjdX)TA}(2J=18ym3M1H||JXdvM@^yFm15Jup=XZ~dJJn&MHP*P z^W%hIGVK?GhFIuziJ)$8L&^SvEFo zUG%S(VT_cE{g~kAlDPhOj6m!A#)i#lgoWEBxy8f-#|3$TkNzFB%f4e!eR(91W#ue1 z%vl||cBj0e=FvAy^Js}!XZnzNjetcqhX`R&Ve6?#-*l~xvRT*uOyEy0hs$BO%Z@1m zzX5)Jioz;->))f1F3bi(NXeND-GW@@VS6|TMoPBqsTpgvvV3MNYUUJ@aY^0EnQlx4 zZ@dAq0x%;yF8Y#c#gqC2aCey)esY^=eBz&F+oPG9ZPB3F%^pSFEeI(5+&b! zrWqw?oa1ExG{+kNRrE6hosd7jdU0|jRuJE76Kk31{Q6p5o@_z4jUJri_Ma&k$V*A@ z?-MB%^(l=es`C-I&(`GfqMB6Ctms?_VgWLJkv7*1A`^muWeYoiy@WZ8YNy z00#w26QlL)SInd~oFU+DsKGcvtkG%&;>9K@zc}z;0-D7KzTW9rp%3$W^6>j#LbRfvnFQ=D$bGG@#eeH=?$ zDGPwpyFEbLIQ8Yy7qV;GKc9GkJHKd=E@4`H&zg#|9f8qekK)q_lpXGzv*9Oe56Bu) z6jt{U7>=H znbDwPRUpJux5mS>33_z+#Gz%>h5`jxR4qn9v9PB1Co10-iqqNG6vc#ho1llU6(#R7 zLM9iP)e3wWAhV=@uwTIWJL^Kwx)2p&{reP~=;0QkAW%9wp~yYQw5qz7&o39?OKZ!6 zoJ_cXFI3B+xhBFKH2XSafgl#-%oiCI0$YwPA1TkBVG6PxziMQ#UM_3N!R~gvFH?_c z=uM>D^1$ZstRuA~MRFh&oQW=os7uco3=rP|?tgf=-IY$mr48e4?LI3b<8Y_dhgub$ zcU%;m(rRhN|IT0ig%s^d^^X}!r7UF2lh9;+dJ9HWR!%UndzpuY{wOD(qLWj%hmB7k zhSz*fvD1RU>CPB0fRT0RctO?u0XS~k^^08(G|kuy359H?NVd92T9y_d8w&_u_9DPb z2r7dkQ>dSgCJ$w1B0sqX$iEiR0690LacZZuidgGfLV0h5L7A84bGVuvsu?sROp5Y% zGO-#L2_kDu2VjVZ925}7Cn#SHB2{s{C~80Rs5dqM74Ct&=B!%YnAIXqwX1H-UEQ?68GfmQ zHm?`?^Vl%C%36Jya#5LPSWzQa*)AEKs0kM^acBu`GElM?j`K;xadZ8OdV^)IQVh47 z70hm<-OMxtqeQ6NA+$VykzAlt$mjEDK7Vg@v?@G`0({8C9V^OM9jXmHT5*YwTTf=V zJDH{=y@vb^QjJdJvwNpaLlP+c>}YlXZb{kUHyx2^jviWb>>CssZhy2p6I=mLP7@tH zql+h-M$3OH-<`*Jr;gW*gWBgD!p(tQHdj0Kof)(X0sVug*o_Ns!`&h?fe_o9IQzSi zZ7tT9<(IJns5Poa{qd*DhN6nYbGbgVz=4Ejo@1QYEDFz7wZY=c+W}<^yXeH>I}jJF zWiF=HztFW884Nhkt8={xoZWl-7Pxob)8RLi71O{}_<~IJ0pvT7nZY{u4fTHF2#RP# zD5QBTB<~}yBG=jWM>!SRDY>A8PY%dT>q7@qxI`Dtn9ixw?_`&s#M9a%q`6F?Q{D5W z=r72vFzJPnRQ8fCZ98@BL-x`6{4P`B$h#TkT}mam3=S?c9g`?FVZ$1=oVdQ;*fw^% zy=yj!SmMhc#!#(!`01#%~+t|^G0Ah z?-h1i>XO{_^gzGvG%}}%cyvGD?nsJ4=QGvw3$v)mGX)vb12c=PLnW$ovbw?S)LvFI z?na?V##LU>(NlFdkelU##yNZ7uJJLEy8oe@i#*GyiCvw-vFh{j!pbvA`_Z8vqJb<2 zDu-Tg=OV+1edhW#up;nvxNeq(V3+#|({mAHuHap>$KWcRxE~wayc!eagxOpsoUdfR zTB5H?Pi{WE9KZPZH;>w}EA{gs{2Z~TKC1DZX-i;nMeH-ZM@UZF@$?A;IIo7g*DM_^ z15AXT-SRZ8?2hbWdvQc5s?)8)+)$12p$5~Y1?B~}rJPxmByp%VjfC+)orNP3ZjbrQ z0fJl;>k({D>MbFTzx&` zJ>Cni&@&E{)*+TZ`f-M4h8ugg$-Tt2tZ{qykXn*V$T&M~E~HlfspG~?tF zaFr*T71laFm$l@=+-@|a{-`W||35m_fqG`m`T+$6ASwvIH}md6OMNr2!D^6W-Z+tO z*}sJ01R87CEp3=bu6|=*x4R>!j=dsOKW}^6YU$aguXg=J!<$Iyos@?-;L-qgP%4UD z4JDDE%b6hSxJ}}>tVE;0iW$KMW(%`x^;W6z;r-(GnzsckinCf;kEM4_Z_Xeup&@>u z$2>J-yQJQb>3g}MVD$uoo6343c7qL89(u5nkJmjudGksk;qmLAs z*j+O2P547ekex8T;y`1W8Rq<9Us8NdSMc7=%x%1{U#-eW$6;EY`UJHzHB2BRWTt*_ zc&nR?n#<8bnw$`R<)Cq4XA%30E*kG;H{U}mCoToaEU@vrrki9 z8HR{XTuP2Uc0;ee5CJ~)R`FgCHQ#UM#Q1QX)?qLqG|0X~>H5T)dwGDSavDktEQI6qj`w`K{_t!2@R7!X4-@#eD@ZGz{oREHv0KlM9@$9ii%%adiDCT+(s9%5ZhP; zrH{Lv|5HN0?TorQD8EDDLgM$91n$e)+&t~y;nENffN^>PC83DT&C>C>&+APZM4Y^C zTb*k^(_FcI&ABWF5oANCP5-p_WV)=8+FGkq}1 zvQGa2pe4SXq+~UP?*vK;6DX)fT$yoUs|Jbi(JW#BRm23a4mC>`G4D~oui?D&&Oir_ zU0TJ3_o5azkZ)S19$EQk{fnOp>cnr)Tcnr6SuxdM>%ot|$qq3X zhU;5i`XQ%UR#SWh!>ZjL0j=CR$;BpWze(D;5%TH^x0T<|lw8_73gf3#?q$j(K11Pe>(xg0>@-1C~L-8zWetybV~Zd z4eKcbSI#RWx6yEj49B)6PjCi%&w;mb=vJ?qy7Y8MD*H*V(11adb1wB1A2n!+<|j3D zuoq}`d7I*$w7fZ`2iCqixG4pef34n~0tI6Jb%lq?cFt zPh9!-qi}(}8fBFf9Eyu`%QwW{PRr|1=5sutvf;+^3+$mt=Tq6Tc@&)=nZP=YJ9Jtt zBC{;TM5ZhaPtp@Gl~dsUc_xsT`o=sJkz1|SI8Vg}q9Vc+8KY^#_hoQNq+z$rK;`mo z8Tl)k&mR&zGop9Ql)4O?a%^4RxZTo#X#wE&aE^sXP1T_hWFFR39uA>+P?AW&2~|}{ zk}{0z@^_gb&+gdnu(8ts;WNT~LQT$IR*?9$0FYT(iv}qoyQ{3|P4p&36{sen;J$Kl zE}Tu5kh`Br%+1V$Yr+SW`=sF9fU~`|rA;#VP!lZ^8wi{Om$8PYfMm4v3?beFL6u=W z-+Y~PERc<^7s7OHZ;<46ihYn#47%!KZ*3%lXH790avF6WB2C*3IVVGr6}-cwGCF36 z2{F-0Qn3N#*UB{VLSp^~IxoJVTAFLZnLGUYy;E=cSc zfJ{dFEM^@_cpTR_s@6`B~nh19?Wr1DlUnHs-Jk?IkH_0W^f5*D` z`!d^8&((Hx?1y1mF#^zJAI%d&9>aE%-KohlxgRe0d_W9)(t<1WO*1>Yn{=9-rjav% z^;8eUWqH=ZfP0Fz$u4E=i))X`$&XP*n49irNQBQEG}-YxPV#N~Bt0hjwmd&^-!E%h ze(X#_bNWmLwwXI&ubrvT4I9*fb4Ls6;77#B);}B_=B0c;iS^<(^-*Jj{8n9!IQC-5 zMlgqfa%!x2s%RIYlNAkgQyai`vXMJ-;qeVmPuDW?Jph^T6!8EPw7rA}$wWPpy@&1M z;dGeRg?jJ~hOyIez!PoZPVuCC^N#u3iQ=N?g=|kCrrs-nkSfxgH9Z-1o-nclp7rc# zQh`hv{-u_4^7sDrm6%=_EBxG>-3xD8u%EZss8q*`*G(!$(v}w3eHs@drRHlE%Xe;q zZZ?Tly?XuzxH}$YE<&kLtf@vmU%$L8{R|IMO;6>Ya{Eu`>dR6XP#!zzrc0ED0Z8yN zJkCRMM0DZLG)c~sp`$b@he`c~9QKx0Q^|9b@>=1FE0<0feYjDZLDd2i#Mu;rMQuD3BjZk@6ri zw4rW_OxB1>ACwe3;;0Lib_2!}vdxTmXjp zO7TNgKqaBQ6Shh8?*D*>Rvs4&q3>~hagd+gq}yV*`hUvg3kK!jveSCe*iP-78%Qco z;5tZrF+vL5lM(3@NlkXI_MR==&^gJ%*__=Hwg2iG5t03zW;i<}3FR0DscljrouK@G41k?OyT;t zT$ys-Q4(rhoS_Om#kVhIr%_-D-F!5RTdQFl9i(6GVLR-eqQSA3%PiC}*3}C@$>rnj zHYKAD^(YdxM|69s6}AGFJpVYh@f0K2u~Yjw(d8$`IZb!r4U3RGfL-WOZciM?-R;cd z;S9?OZU`>^rH#CgOS@9b5hIjQ572W`$a_r_?3VP~0Q)0I>KOYu#_Xff6}^O}(7oJ(9gBe{iImH>IR z_;@|v2@X;X<&tY#Kf^7OCdf*a9Z*()N6S>p=o9(513cR?698|> zgs1BP9}d&?gPp(bN_BjFM1?}h&%5W}bn?#{mz8#4q%!^cN=`;|ik}Y7(D~()Ymd&h zh_~d;Pm5xym$1co%o-zS9Y1&lji`Hc!yutCm<@CUyH#M(frn@1sI2JV2zyEI=Zk4o zwo?QTPaA7$?+t8-PAjrSTDui$OXZG$l%-`yT+OtHZ~sX%6uSR$$Qy?advo=*KB@a6 zo9@(z<_bIjH7Vz2Y_KpdAn6)96bcm!V&o6#N^m`!Q(T*lpAQKYI`W}~9*31HDcEr| z`vMFyrzrn2sqRUzTj)EclVj7j$$M2ZT3vaiW-N8i&m703=Yc+JkO* z6D$*v06Vix^)=%C_EH*M@K?Vhfl5`k+twhHyTr)ic2GAO4av|*p8jD z?~~}~<>E@SKqmTBp7w*QeX1OPBG^^sguZr<8IA(;Cuj?x_}Zs78=f|IedByvc`_KD zEPiM~kTHc`Sko!H#G$gM%OmLXVxCdYDwo}#Ch+cEWZcZt^a!}e5Wy21;r5UM>BIgw zhWpVG$=>w!iAp7zWaZk*(|{F?P;QGu`vvX=_v`)A49lYtQ>ZCUc^#xVxXSeYehpPF z*Jqd@8ViS=&~^fO;hHZWy*!N(3`pQj?sEGr%d8@umFX+AW`W*%KfAmU9A!~ZGIjQ~ z0&nL2Vhd&k5ulZzoSUko@I(Y}$G>}tZZu@1r5LAE@(~%Dh_^Mu%0v~68A`RWa#18Q zK)dpCO(1i)`M~sY&srX>5O3<%6Vx1-a1r zOsu;E;yh6oQ=%WxZnX`RRIcnn=@6wFd3q|4uXekjpPFQwCA8@OG_s$5_ljFT^HW6S zPrKx=sKe*U`7g60%mNfbnc6w~#F}vNcT~6SI}9Dh-e~pq*zFnDYv$?daj9c=>mZt? z`b0FmU`!*wLaAc`jc=lrS?thX}_EJ9iU91&FxRRnGO0 z6S6%fGP$?*itP3vM*m}^MRG6RBa6Sp?c~SnnVifugP3Xes6gPUomkJyfZQN74t)wy zQ#qdLct({@&4r^NJ;pFy41WMF7zXd9(;kr1xry>#`7bGHM6jI9qu)PVA^hl9RA|!g ze#o6u#PJ|OHe6OE=xg~M56gRa(Z(=cW7_T~ZeOs?yGxYTamg6y1ke=0-2r$p(auH3 zT@Jb=MC{kE%evGWy`pn(H<{BfA)lxv8`Yt{FOU=udtgaCedIUf3CZekkEEYvyG_ph zF5$Oor3PkLBk8`@ITL;`@%ze{XrC!kR{9Py%fO|_U68cy5^HyFJ(a!#VjgMvI)K_w zDwHTWeC5L?(WZ;FYcEGljxDh5LD}JkNG|JT2~@6s*>|0Igynh##P8gHUz8$Zz{9{~ z8LxbsJ)9As6!JXWeNFp^;geOlk7*>=Uc3&B9x$vw3I-k1OG)rLG>ll~-N5$8;UhPHqk_nCSRjT8n{&o*XNJ}+7P*>1>XT6s`_+Fj*2$x3lg#m2-Fe9V!B z$-haGShoHIv;L>!d{A6BF=?BE?+Gwk*X~XII+3Y;i-@_dPpjprn*P;n4Dm26-@=+zA^-qt3Vg)#UskZw|K6LtnaKvZ_OeVu{vq<|{iaU?|% z%9>)*I#qFR06SV3!VqObp5H9V4}gMXIJe(?c3`hCEHOW7P432vFvW5rW(CgWcQ5u= zz+)WVQKTRE*mNF{aQ$Su!kYGg`rip8Hx$V|)j)?Z7a}=Yx&f&TMkM214x3`nfyXOg zkWH`TOE@@USH!b9_Ti-+DQ_R+Hp{J;O~}66BtPW!XbIA!Ic|7l>F68HXFKli5HGa{ z-^=;r;@*Mc2GF{Yc=@eq8B<#DaUg^OinfjwA8_jh2UtdGu3-drUPV|mx1T50F`=3` z$4PcGbL7-&Oz4pFpNRF=tp9xT>ywq`E4{rIJA6_P^b5q^DwbPpH|Kox0*;Uxq$Rge*>mVV>J9B+mG*7$r!%*&iKk{+iT_mVoDy+^=h(W;h;4 zr{VW|;7zE*f%@K3;UNfU#3}Ktx;+0zU3d-mtxN(FDhHyY6)yW|yHhX`a@jf#Fiaas z>3{By-gaaO?Eu6#kK10HklXF@zsBh3kj3Oy>s$t`rpgtT)ahY^Y51aQnO)J$`i<(R z@2OTXR5HxoK){ z%gPjIrHC`NaG;>&NXwDsKtr^f11n9v=}oVCT{+X%kKZ4hKj1tbaNwN7`}2OkUeA~K zU+kslP@ORCnhK!*nsa=Jd@O~OvvYOGmv9&pwvH@Rh(BKq)!ZiM%AnNBjm?A1UtqYN z#!mLjQ+jxa*fih=J}NL$ge$-KBx~yUqX=Ra&20U_+Pe6;aBSxTNq&{Y-o-~;N<4kW zOYdU?PvS4#opge`0bAQaH$A+no$V=q4#Fu~usn~7T%dNZ>1Dj+vgD?mc=?W@uBf84 zsn7B!W@~S^F0m^zmlyTQinKc0L}n|-S40Y&Cb!Qdlv8*Pu=yYhCU}SzS#>rp10TH1V*3W7PuQiIG%G@ zSA(ZjvAhhOeOw!OZn$u9yrmuf#r5ps+CW-Sv;^dCyxD~M#FMu5FB^iL?ng)%cww61 zZ7HX|<2=Jdl)m}H9KW!TN_-nVq84s)qh&bDH?}4BPyMZMv#4vuWkt0<;d3u$S9J;+iZ>pUVmMzbKc z@JHr{Ek*=|b4vIA=ITU|&@>)KZiXTI@Vr6*PI1|BSt%X|e=b1jRqJHm4YQqj?6QLe z#YuDP6G^ex)iB}Yr69#gq50vCQr|isF9##G!6BjeG|a>E&vro9%JRBAFhDB?Wa*~y z{Np78MZmkbT)9n_$qDTdQ)*5K!)Pkeekze`m+Qr5=&IB=Iac0G+r+$>ubA_lD(C}yHPiej+)bN97 z@_2$Riy)5$SF27DwfkWfrP5!j24yfoiVhMVm>$dkAQN9j)Qj=7)m{1;Hhm1+HIK`x zTkU-)GnnO>U6yUhbL*0>mf8Ja_{j`NU;b+!87AjPjT{bTRYtr|+rqG{AihK=hKmxZ z_+;d;*Ulo6MO(~~N^6SrfBN}llh#`824(>0)x)1;B2pFX6!+gXr|i3Nc&~e(o|Aj~ zjLL;bNxn`ksy-c#$zJQ#;sI&9GH#z(Pw*}(GF_)oE5q)qZ}st~!5;9w=izHDeoeux~*J(0wC z4-q!^jS&8cdu{ZTsJHY*u1Ko~@5>00^chys=@DE|7ofYfrA~|-3#En#O=JAs!tuU6 zw%KA}Q6J$qQl69tS=un<9dA5LYYRLmfHn!ymLm02EAqRtXqt-!Cpu+5R%3%hYV`)% zB8o6Ws6nUde5*cR$9Q#au{{UjCsVsw>kk36JmzNCj~{g9M!diqb2YFL`)!PV9vLaMfl&xo(qtLCNEP{N zQ@jv?k4QyKr;~evRr-xurQk2lsD_Kpa#ckLCzMzH(AiN(5AVl8N_uDMj9^B-NBZNk z673RD8lfhc+xonD!1LnMc2C)I;kdBc)X1#da~NmX`A@M}CHMa+hiKDtVfb!I%aJ^n z51vK;65$MBe6!k`7n6s+AFBk)m(z;ySm6@w0QW-uGs6=L+}eIl&Cr>aLg64KX*5Ch z_45wQvQtc9zu_}MWit|z0$~JZkjn?#!ME1%h3s-^LpcYXd3k+kAyyUla^_B#XS2^e z+uNtMkfh+7^2kPMhdU%?vx0c?dx4f5DP#I)S1VovA&nh4;w$ z_r!Q!T^LDBgiUJ?;O2o8gbg*JAnP*oz8>pCD6$rOA#(mOW61_vv z9a3bAW)A{`?qyZ^AkYrdY$6Z4LC8I)3De^_AhEK%YA9Gi*s!hm(DOg+k=$WTD}j2X z98nxQFn?#i$_1y7*Bh}{q_pZumyeqxgY*@CFMMQlIr~u}i_iQrM}Z{k<`-e3v0BKABEk7ocS#X-n&%jB(GO2M<~akc&*L*&r-AOeHR?Co=ra=m!@ z6Qm_d=yLk^&;3dSkv^x^1Hz_M_9NuF-GHE%lYsQ2e{?lomQ?c%;+dDrPJgyPOcAd6 z!TLSdfuATXlc;$ttC}s6~$WRKZ?ZOZV$cZ_^{JG)#p_lD$LIWRi--_ zScX4m7c(o>pS2nYX=avlb0U}X)7&}AxSv%~m@ns0ol{cs^9Dh%e)atfnfv;DfP zmR&xJm+ATDFjaRVkg1O;l@irdbr03X^hy55A7Q&7yL7wdQdKUjNVlXxkx7ur&Mm89 zXXOgz8*x30GoKFYlof%D`cXfmy|vo3k;K3Z6Bmz%gocwt(A*o2i#)#A#DCYZp;4!- zPy@9Sr)n=dc*3UU|HDkfUse$Q)2o+BEuVO|?~pcDp=u>G6RqRZkQ!E1Y)2BTFQj=C zsumCy-6I&G&cbU`Y$dPeQmmZw+!i%nu;1d&N7%WOBW<;d)x2~VBaQ#zO&llJ-Z&be;lXh-V(j1$pj*Gu@}z7dsk*l;jF^AvkC>wD zt`1Vag?lZsK_#F1LOOc;YE8M+eaS%&cLP>azJsvmNpD<>Rv40n#R1-5;2e8<)tKw- zKIWZImkuxg9(D6TQr{=p)81XYTA{IU^H^6By;_%A+|MId>5fbl5WMGQ5MPYxk0$cL%t(|s&= zk!E+t7L}ciDMTQ(vIO~L*hw(qA?qkYCZ}W+X@s084@hSiRjzUaFfU*ogsExY)Kr^W>Z{ivzENzUnZ)_YI z8p=LTzk{+rYj^U*$#F&-xr`Kka?jbsc+wSl&&1l;VZ46Q;nBBSru(nH`(7CEle>BA z!Pg&yh7;_#M~w>&e&LgGW?Fhm;L+gs+2;zqD5gJN7p&M~!9#!FzjafQ@$`4W&c>ft ze?FMfBjlZ{(X2NcyA$Y+;5~w*JOsTQ_%BLj%AS-~yoixPw?aZ-itH=ixx^n@jg*8M zLVisyqq$VG6@tia@emP)<|oJOegjQ!B+qY4-uf??c6zHSB^Hy5%nVG2-8%&vYg&7J zVfI#^A@e5?^1ZS4i)IhXTj4g{hmfPlsXpua?KSw4@r8xoJyXR$>bBx@mLK{4dlQ$) zOjZ&yU6Kw-_}?(_q3!qfcih9-<^Ia3z!uwl2=mq^8E^R<8_Dvm`t2<9tM~Vo#IbVN zZ$E7c3C}WhU-snrDmWS?H|A;9C?g1BPpi`h&#v1MCg~$5((d_4gQElKt$W*55`IQ-k9LpG#}~yQh6Fo zUy#D!7HCe%oCti9Wdy+rcQESP^s5@V+D#{B9E5-8UjC)IrpEu9YIEpn?Db0?H*1Be z9uaa`YsR*D2SczYTaan&W=M|apb>r1PvqxXop2;11gK=s@dmw83P#6=HJ=|-#_k~I z&^fY?q%Wy|*qw^O+65J+__95BIN=*}U3w1LSD+l_LDUz%H=O01^WMJANx1RF^XEZMx7+mEgA@+VS1qat z?B{%;FU%hldeOC-Yrp0+D%*Wzc8}$y`q&$P zi{-0iyw`}uc2#@;lhkP)H)(So49_!<;8M44T$V1<>iTr@7(`1_m{HD<{FbBZleK>O zqqs((^_NF(mO^nEZc|zv(MJ&09AQ$!K@Z&#a@RnH-24053cWZEk==;Ty}?2JBZsK5 zzVKg55p1ZuCGYEu2FGxjVa`k$;@`>njWiyDX15SSw9(K)vIy7#<^j_h)~O=H2bT3U zhUL#6V|=RXzWjV}_Z0M=TFIp10Qu3q7y2y>`uWMN@YTYY;e|!UYP8#$;%OtU(+u#( zl+G^hVOU43*!XpE*(G!pQHJDFbC1z(fz8r3UgetkQ*M5R$z<kNT2-|3rtmykOxgkOEl8>ZqDTw)yo&Ad?W4=Tf{gVG|CRM} zO*fJFAX+djnz3ixj?4~foDvOeJq2hQ;=&f}aWQU)sRD zHqpyW`6Rn9L2^2@pV>OO$7-USe(9upe_S7a@v3P3#JLTI4xevM#BVD31yq=UgwWjW}c57Aq_NVGv=P7IWB`JdTmt5PtUTAh>HyqFr$sA1( z0GLY17H1bcsuZ~xE53dm$F+p1eO`@2eEn4$ke$Go^At|LaH95RB_rvTYpl)1$kQB+ zG_$a8bMUpnphwAVN`!~ z`S4KV*W65IVtlMlT(+N2gi6LRulY5wFlsq)m;7=4yX1{I+U8eru4_gpNs&{qf$iH7 zxVpDlcPY_4qi3r=W+^@__k{@&+h$Bh_`$Eh6^FRjLCY!`FV_>VGwbGXdnt0xoNMiM zfQTu*$dS3+?g40BefZnA(=R?RBdhDXA4y0>Q3hmt2Qrwy%rUv}yp2hn?Jpb>utU6L>YDfuVw}8b^XuvUNbFt<~&e;u$8G zlm|l^nh&B3){=k|QgI~wyywFN#%c(&$=Kq6u^c^YV;V00(HWlEZvRRZhNQS?ex&nf z$3Wm8@(s&gMGqJLD-SefKclI#ZKx^L~^wU!VR%#*pk2;sM&iP3YgL9+*)D zSu+e>UtzV%heu&GKk+)LCJE86mgnXkNlq@WGrxh$vl4|8n0@+LP)}SBEIZ<>M8jys z!Z>cC)B%)bK>dokJe?r$Ux zedF=qiv8x}5e?(wzZea|mz9vw>!b~BTBoPc*XX@(Df$=Ai>rj?hS1-(r@Tq-?u>p5 ztsbl$B-^+?^n9j*?Jp%51l^}Ds#!q@3OJG)-@mkT#QzmTA2_-9%`Jb$bZ+aCg2!oMg0!V20tVni-a6>C(XctiM3g$C62&`brdXEt&l#ccDV?s8y0q&0`+gX!!X@eh@wISQW8$nt zo3Fs&Xn>4VA_JzjRogw#7wsOQ=z7JB+TX~88K83UwLT)AK?$|lfyI(Pol!m+l3%>V z_5&}M_H!-y4=qDxG|n$s04G`2+H*srA}3$!b_Mu^vYmZ5^$2C|*RUG0#Z}&+1v6@y zR`87L={t$t{xhTx`bJwgc03udK%nIffL;6pR-*jWAPpVGfashr+pSj{T1#;uLaf=t zj9cgs>X$WxZB9=2gvQM|1*s_exjr#UM@GL|rT9DXze)}=;^<}F@a)2NYhQurxbB(g z4P+#7y8kfde*V?FtGpZ5m<@-x$QUiijK2YQ46l15XG+3eIuW5HRH!3|u0Vz5M$TTi zxq(R@hyc3=8W~9Mf;vbFJ%~M{?a9e*_3~GZ42$PGlW)qL9tILDz389b^iV6F%-U>D z>6o|xM#A9(bs6CJ3}yklo5nR>R;PXQfijDJ!U6e7VauQ&*^#GVE}ZDo_2o8zfoIz> zAB#X#7j+HF1DK2E(z5c)`kh~%xMGQn;x;Qk_;e1My197WajoX7IAAA5VFFunhZW{+?8VQu8=_L`HAHNoDzgvFbo1$s+J^Y!^ zrdx~02mDtdmWPYX_zbW!yd+Hdag=y#EeXQBHz1oJP^J?aemxw&tavw8hmXXLCCy<= zUNlI>C*@?u6Q5;(pKcG*QBmUO09+flC45~1?@$;nkB#ZnnSzTqsnITCqcyB@;p^dH zFF(ay?)a(Ldd}0RBU8VLv>HmtqLsBGRDJCTLL#)mG;(DEw ziNtu#qtGZ!m_(V;z=kwyalUfwtEmuGy#9iguTAq|*hukgBhkPBhK-I~ZzME!hIs;F zpEo<%`3{E`c%DbKM1|m8?qlv1U#Ywt^%l#jBRQ=z38wNe4KeE_tM=gU2WsoS(gDyI z5mcML=FCA$Zp^Xi)o%qLgGZt_%ovul1D|jew|8%KSvg*1vaf6H%+^ecP1!tQbq~C> zey7i^s1pkanpduQWw*L0w5TYL4D-;mcerTp|N1B19+>yko{J zb0-DUg>uPm-biZM%Q@Pvz&5$6lGB8_wAgDVQ2dwrrj+%UGURsZVPeK+MqNf2dUYB2 zAl6jonQ~4YDj@^s%dp5$;E$4sLlato`Oy8ERxF)6wK_QvUJ2N)%S?%6cigZpm2jKN z8<<{G&Tu;@n5MXT@?95$17@(4uMwL=53zp=zjk<#1RH=hNf>zkIn=PWw|p40w=kpe z=%l`0Y3BhN&%)0YLqO zXFbS6#OCUyWy33A|G=5o!ldKJze;0uJjL}Fb-<1@IG zAjpbeYCLXDLvLiE{;ODxD(B|qJj;RNoCzMMqo*^k0Kp5sJbRCx` zfThhkyhw)8(sV~F{9{1l3y@jXb@4F{^H8KdDW_+Z=EAHbTA`Ay=amVD%6s_FD^4NR z`fClhy9MJfIa(pDsf)@Y+4uXR5@YDxjRkp-u|8l%nMo)}{v5DY?x|xK|Jnq&C(>RV zX$82Qn9bQ?Jv!aov#_YX5`9S?Z$<`{=5gv0oTrTSWjrIz1vm{Q@z`teh|djA^grfs z^#lF98vco{R)P=)GD(VzJ!Yb%pM8g_PpeW~@^eO*M3QTDL^&^~F*d%XAmS-t)SLmk z>$cRgeyr*n1!AiZwT(vf+VdubJBpLvBHPRoNYNX(K|r^vH9nG?)7Vte-{kl_lJsd3#jJn## z)qwXRvQgqn@ij{$%sOcoPL%9bG2DcbD4E7PKsv2H3YqQR=RrP5Or#hT4OruMml;2PZ|D7!V>DIIB zxe{B7Sr!>tj(d*lb%c9XOQaIKXW~yeUi=><-!H2{4p`p|q?Fo?=r7hiP?jQQCa}?iavm!UWwt^nFSNK`XTCAc6Y#umf>8Js zKkfNmo*Hnp52T@`xeaF~nv9)=;<9U#uv*p{_l~#NAIej=h`izkhs^$7KAI zb+bG9b#cJo)-KuCU+lz8cRw9>xcB1H%~7L!$pQO;j?wliXsB4K)Tvy8^w`N?n7Xn{ zWe!?IoDbIBX)^{85J|Xv^XuJjdRvZ1;GfJb!tpga>Cw&L=_;4vt=FC7o*R^#fr$CS zLaC&h7t({i(#d!evCfFyTj?%db>H)j;E{_;3j1(df55$QBiiEjH)iw#y)0wjZ@^QE zq;??$08NwF0pA)+Uzkve>x4gNmSOEH9?xVQpKLC0ega-j*`L@*1pj!Fx_Szf+3>`r z`Nmp=oFxE#SMD03)|c5|A@8^)12Z(-E_#|E@(egs&AAh*I%``0FW>#b3 zUvrSZ=!^b_s7EGT15US}iBy*nwG?***Tz-%BpJGWOiokRhBx*9Em}z#h`S3Xo$1^g`Mh>L!h$b7dqmh0^T3#URpuQu?5B z=|NttL0KeVM`A`>-QeZ_1*Uv>ySkgxu&p!vv|@gXY7JjmKbmI}DsOLS9U(8ANw%)s zunPP&dqJ=2##+#BoXmzqC;r7SVgj&!`n`r-Q#?BJH$_c$!=2(P>#~!O{3>tBMbp#K zM0{*v`rE6=@z>@dln6E2Zd}H*P4b}x^oEVP;UCXl`gNvk2X%yG48L{H96Z0XbA*kk z7Il)!g619n@#-4%;qkTmCRy>Fq2HUX6g}GM+P_9Br3CBc!}JlU6Hoh?#R)0jsx%%9 z*!;8m?%lsB3ZDN2wqv*dOWJ72X=t!*Ax8Dc1dlxV*XwGzi2l~|Ssd$%UnI0V^8KIa ztL^9C2?l5pHi6qtM67)?`SYu2!Xx8{#y?dbMv`*e*3{sU>=bHs>chWrcS*oyOoVT+dIlF4FEkSZ)@vQFaW zz@b@u^>w;SCI0d(d12YmZB2!Y$Xm6`_~+=4jUGg=0Jq@9{s(W*&xD4^mv$57LN~7! zrVRenkkXKf#HVZ;IPQTznOpk zQ@6UlrSgZgXZv-98!>fR_*;H{N8xX--B2HojdXU?m+ifW8xgKN+RHiQ1kkW=)K@Ft z1?;~VDCzur(ki~|D72ntVN;fRb~!WOCeV$NZ_7SeEl;U8ZOMmOoJn8f;Em`Yjg8oy z%-x0mA`fx6nsb^hH0?ZxGZwG}>`iH6i&^Dks&ZDZaNxq0LbmKb|2~qvKjEOGG9Uk^ z&pV5wL2cQ7MiG3O<4uKF?*8`=;{Cg;he!I?M#kTp|I_`{pnc9`f3ouRr^Ow!g}?v# z@Mc)YKmP57zbjV?HZ#V7pXqqu1NY5J$@sf(YSaT>~Jd+mcw>~`IB1C<@{@S8DW;7r?c;MFt@z)O< z$yW-dOAdK5WFZdhvD}#}+K>4qC!#XZPXvvi&Peya{2uOJYdT!oPT&5gvgf7si}HBC z@6Qjs-+8OH=cpgITgAt{bF17qOnQ1V&VSSN!!S@)@i>BG_Vp$hr90OWJc&Dgvj~C6P0ht(|+lO*NMS@xJ|Xjj7VRXFq*ya zR8{tnd9N_?G+t-_&a&ax;mj6!=y$4L-^AU9gC^f?GyM2prGJRE+was#=_3s(Wt1?g z^RNx-md_&~E>i2dw${U{;Iga;;7%3^*{)OYw#rrbnmqOU<6kCLIZr4ru>a}s7{qhM z1NaN0`tS~QK;eZg#vyG+bpYoKPw%)c-kWTe6)(W|yIFi}jrFK{Lqc+w_c?FdH2=mU z^R~p3P&=m5G3RpMU-8f=R}@b$99Y-76oytJ7w1J_Iio)By+0CW7+V1h4+w z3!53knBT7y!X%ir%@*~B$1mhhK1$F?$jxB;Q&yb%JkFuQPr}(DPCXh%2NfD+2EDjL(E1&{C}*<-73?i;eZn85 zun!&w^kc!L5W*=XtzM%c-DdGB2M}-Wp}EWqbFNpC@4E`BcPc5Wi+ois8idZe*`ic9!#@r%U2wyy&sQjE>Q^GV7#cGwb=tha^zR%Z3 zn32ym-~|k1If#y+(|leL%qK`Q@IywxMYVC~0l^lu086XahNNC!Cg*yV05621sX7U* zXtHFB;I!Du4MG8`MVx~cxzX?ksa=%!(Lle=bD?KesW(4$h!AnAs{#u-~i=l^Ck|J=(CO z5aqcA?!Nsy7eA(GNXiJjV8Q(F%vkY9;5M#jJQfqC{93oj2lTDQi{1LkO$7_c>oq~p z#0K2TQtFAo{78CL!9G>dP_jTXsU4ef#VABLGII*6)uPud#{XFH6#q1y&QYxDlsu}x zF2Cmbo>D?i%e5evA<)=q%#WsuY!6x_ZHZEmJpl7LWuErP=z=ctu_fbjf@bem%>lo`dn55JL@0FHoVQ*|M6u?^Ffs}+%YHw zNX&;3&?VJMfv+ekpgpI^EFyCK?$5+TfyV{3So`m|4Uw+``J!YvPWlIv1Q^%b z=YLPH>xE>u)%Pp6oXch$q<`!Gs3P!E!!ek-$P*|Orm1pEF@fqq%|;D)?Q`j_`yivD z-p}Ge#^+XiO2JD>YyTowxY! zrDSJ;O=<`rw|ODExXo!*1cjeDH;o;Y`M1_Xh=ePl3kBEamCEBRxi%>Oz?6Qb);IP*~M=4X;dm%@U(Mw%rqE@;M` zi25cyG8B@&K5nyKTDw>+;|6BsbYd%V4U`WdlnlsvVY+Ln@{N!1@WqBF&h|;x zYsqOnb^L@}X2V)jp9Qs3Yy0$!@D!rsHSU6}CDXI22~(8TiR-$vLPzynX^)x4qRB`j z{^ww0at%8|kqn~vP@?QoP((~0(d~%!TMY45AhKXrAiL@?Z4g!!CA}gxP%82k$&SUI zg~{9cBK)mtN^Xt~!W1v=kl}Jz&AmQlB$WWo*G9D}iQ>Jg0c5RN9$qEe=_*qZE6(@( z9ZJwXG*OKAsYqL4da7SQ65~>|AKh*_K^~HRaW9UaqLlKbW{Kke?$_ zuilj}m~zCuY!-(qwo~h!wX)xm)A-$_hpB}rW)5b`mEanBQtvuwX1}iRc>FpQlHOeK zQfIdiO?{oKuoMaE4sE<9kJymsyhb!gc@>&ZqSF?{xtL#}!LVU>0_ZlHTJpI-&KOi` zOFRYk8kW&&g}{H*{2EiQ|9zr1CgadnNena($&hof?^*2isfs}!RrMD;cH+kspx5ED zuPvS$PG;Sb_3Jy<{59osw_jXvMl`3^snth#v#wB~Op+C^`x{)AgA~ORVCalrp`|jK zBoSOGG8>8vR+7K?`a2vCdl=Tep*Z=6X!x^mDJS|_y)3W7fvO-x-iuObNQ&c)LQ0OaBGNw+x3T_}+@0iFDD@C{Bi+sUD z{DmDwsV0Rcp+C1DlI>qlYmMX2JFN2H|j=%e#LtVG)pF4>-UQM+E%T`X0Qz zggJOMsDrqi{x`EpXoZz9@tWX;pgAo%LxsK)v{#z(5tLu?pAMEvhy_Z?G+z9&EE_I6 z1frm^qh8}juzM}J1bJva!A6O1k?k3W%7vj}%mkwQfTX!g5VM;16MXdl()6R|Db7W! zRFn+W$=1O+%d%Puc~R&rsPiyP+5T0#QSCk>o7tA5IiZA1i~=>hT~iK62k8(`Ep&v7 zhD3$UIrF!E;-{i%yiwmR6NU~NTLV=PbqOBDs#Jp%H^N^?4#U{Zmj?>m1B*pNjzf>9 z6()X!BkEs&ZfcpcY&~r86oh)dn$X9UIPho`ze9k@0|aFXnqh?e`N`O&-(`#)>Uw`% zZYQHQu4L8}Tk8z}*}j``TJDdTn(gT>+AJt<*q+xe(%B$ue1pl<6YU;-ga0B}k8Qy@ zr64MVs_5t)z0D~=T;8KR)tV3+G#bV2!TIJEQJlIN#;?!e@-Sswd9xE>=EM(97Y=)* z*$3RKT4{J&yjIOKfAklyof>_>tsV%9!--^A&6ETDj2ZLRU%wzJ8q%)m;ELNEZ64ed z{)G%KY7zx}vq02Gu6Sc&NouP0&74!vQS8UdUNQgF(-)@u&XXARQDQH|X|%`;1tRPN z>%!V^`>GCH!Nd1y^Lc|_y{%5NBce=LRuO;UDHI{|Am>@3ahrMP;$%4BNF)|`C(*vG zI{k8M{pGTR?wP8m+EVA-*q!#)UUl_!{u}_Tdc%SC9q^!MS7>DvdP8vvlKY%*YCqh( zP;xro6LauFcvs63F#Y*>V4`Ul_*DWsu-x-;a%M?FXbJ3J10lP$DuIJ(&_!`MA52rw z`c@JNM%myWCFRV}!aMcUK7^u^63Am8V2Mth7m76Y2If`t0Jk3`B<0;2zhlIyEs}+? zcy1EK>}Mw%kq+Qdd~RNdR%@Ua8`9#Q%M1~^0{kDK2nl0X%VUBErw`0PB;{%kBbo8# z)~w7{My5CDP5>m^VC#^vIftyV2qlzjP89!z+{tjRck0C7AzpZ@fh)XK1)8%U|7G~f z@XT{+q#?}N{wAQCTs~nuyR5jLq=0uBwOiCEK!t@Lf|l$3zdXeIv^+jllcR_s$;H(( z=GC$mky8WN1rcb><>W!NQXXRY*)txfeZ9^^eg)0QkFJ`~u5Xcj1AC%N;?zznB!oNP z$-u+Xx%6Q|Ham>Uhz54}*hd%u8cGr~#AZEcAL-PHZ6=#u=ykdcssM$M=N_g%Ur0S3 zPysz;6_d1AioR50&~Uc}S)zQc31My!IWq*)4AUtVH&7DAb&xH{K!ebD@)9&QR*bd_ ze_4=r!8-u#vP0&IqmEIoG?o{&QTG13DPGmOU<$Yi!88i|hm4Z1TGU8`YV+R?gxr-2 z1>WTJY^MM(Ki%0Ce(eX<+47~pH?gvHeKM_MzY;iERt-ho?iAAUqZ=u=FD%1*u=Tam z{X)%t?l2IAc*-t_Qe+DSMZO@qt>e68mz8A$u|zYgNd&RzhNQSVWJtAq&*SZ zj;%6hTCpYWy@vCw4H2PS;j&Am^V)Qj%9lDu~;#z1lX7X!Q>D6p#w0 zea^+8jW8*shjKb;s#9K7z_VCbC>@ z)EC3!R@n4|T}I46@{b2;Z*3$1`m zo`x33E%0KY?`IvuQH6Wg`F{#0Wv;23V~i_kwWb7ffg@fSQPogSis5zdxF^tFtwFA?N1C9DvM~Fors`{o@MhI)N`X&122ts zdD9-ZRhM$LIam%rxlwgsvcD{;2XDQwDh6-EFLuMv{pCI@{tlH$dLucn+H$%j>$HJW zkNadX-~r#1Lz5WZsjeHL_Cxba-8R{N0y|@%-$QG!j~W@Z$dFUL!^A#}oWpu{sh(@4 z!xs%`9m#MVw~Du>_jNqmwc!$&nvgcXftX^qrN>Pi>i3& zCS};8YJL6l>TsQYJ1&MEFm{lESHOg1mto>4VdxlOy{}Ke`TS&|6wRWGEy%oJtR_21 zPBA^W;h>W*605%9!?2PIpykbPQS^Jp_4|WC>3*)E;fSx|n&W8xRQN+o=&%kX?2?{5 z(|KlK80~aQIGB_DXe1K2R`n@M`@=RR7Bu!~0eoN0E}2_$_qfnYFab%?+qgUJInh2~C0l-+!nQcM zeTv+kQrN?(4j+oPUY0Iq2Y@q%T}v+OzMQ(@wrR_{{7T)AlQOxQK(}I6eeN{^wUSY#5d)9I-!Li7<2U^-9u7Q|}L!Y{pt2)O*^TVvjVYU{c0EJP?c+1Y|- z60G3!s^Qx^$LGId5;N+aO=h$OTq%{Bdm!O9d+E=9@xZS+%}roeZ`9XUn5T=6%;F7# zRuNUf8fiX0Om83ori9qd`J$4eUJPnJ9oYgF*~c-z4E<-sQ6n{Za^K2PcM zSvF0}vh^bO@L!)dK&1bR5Za{NShB>}$lB&Zcdp88T%C%Y* zC+uHEL9!hBLY+`ph-Rs1x`z?j9ac326f=h(@CK{f>jzZNe1m;(EB^rA)tP1N$k7x2 z!Fp&p@fEw;+}M>qFh&QeF3m|u9&<~w7l6zX(84NUyz9=dHY+&hGTw9W(nVPHm-_KjwDijl-Ddt@-Wqwj zR7d{yrx^w%y-$=uN0AtX&X>;`<>o|=8*I|*3FU*CL}1?Bxx)OA?1yBL$HsMI-Hi0S z!Qh-6>0AE1&Rn#@$;m+{K&=P(dA${toq@Y~=|^skl1#hnE2VP>E}_L`IvHE$h3NX; zdNvtF%nvTf&*PMewmUZHzT`UFyr+e`Fs&CjTxO66hqhU9@`qOIK8RD`M%&E@bKkq^ zXIzy42h_8#iyC5xE{J&pu=B{iOmx|6-Bz`dG)~EK&HC~4Rcf)UJolFl!Ez37T?w?D zGG~U~SAAl3<5AR>^sw`=Su8F>t!j}nw}FgV6ljp_u}e8}xjpL-Z?mZ3P~P-~)saLZ z^0uP&!L1s)As4$XmDNjmWZZP~>Ki*^t&+I^2aLTI)-ubU z2>GU$DX~WGd2#Ksg?sjdtla^{s_-n?MOJ=&kY<=iLv}$gR`Z9QC^_5J8S$KlBU6K9 zUl?|5;obce>1w7Do6LxUAk3PYrsI@M+i78OIb+>1jlZdHOibOLR|AFGvwI*Sk(m=u z-5sV37-nH_l}=nvZRoK*Lh-~>HxIxuvsO5lHLZ%8#&bWV>|u_bs7t)%*|Lz23(>5N zYdECX;5;Dpl4UdpmueODqNj`ZA9|UHtKxi6>W`!%u={dWfLsi_MfPb0uB247+aiP+ zUFhr{KnfE04sjoEWJR;paJQma=Ea6a z1&4TrcaThiS4(k$9hcxOuQkPVmNRZZ@Gkwf{<6@jMkj4>ugyd0vX*or&mi1zrgKIr zVy5P|z61Zq$n+n?(5lb)U|>4%W*kD1F6;pH7KKZ)X{8X(U@4Ujpn8jf(a=1v$Ne7O z9>R14g$&9p`$K3s~Ucr~X~Xcft@9jFfz0TiO~-lF7_?8e3`!MXT!c~qbx z#T&;CY#srm4T0%!Fq9e}i{ln@6nO-#;LPZ_FihvkL#pQ?+BdUGF!fhmEUv_kt0 zhg8~z73;EH08GXax8Q&$*t+`5m%g~yol_8#pU1w%XE~tZ7)Q>`PpaamS^*^I4b z?S;T1t!C6wvp?;5Erg$f4pOaYrLW!XkpM<+091R83ogbHEIE1rR*@H?r-)ONi0V-Y ze!OM73z7RD`01YwOQHg2*SeKay9zvZiSRdR?Ij?uBL}zh^1Soellt8dH3&s@=4c&| zy+sQz$eRjCd9hE)Wfs+X$(xXB`huOaLjd(*=gzRlRf+YlgAWCDs0}65y+GGL zPGdsIi*g$FHva@v#EZI$}uh6HIDW{e);M40o#GX^U%SvDX@H z?r*Q9kFcyzx8(eh#~(h$Tm{bK=Vs=L(-X3SToGs_y^I-JGwWNk2;%N^ys2t36xU-+ zVoH%A#S(^m;SH6IiQ&s?v%}^h|B6zgzeaxonK!vDG#)?6BRS!`1vmv~lXV{yI%j**9fyD-TBYZB*}!taC54b6X&8{glL6L1 z(e@A+gpgkV3ehagm4#A8LDUdI?FD=nV-NUMH}a?M^9&P((M9ApR>LaI!W`kTqXP1_ zozB1Y$v{!!$%U6g_Wc1Bu$&df7U(M`)cp%`L6gqyXQUN@`_cGxf|pc?q}Q4<7Emfa z;Xd1Zmp_k;hhn}lzQG4JUz&e6^@Mgoc^t?(tNb9U&zacHav96!lqk7h&>gk}BCR7wdfZ<_Ewl@~C zYdgZlP>t|(Q^z)r%v@R-hiC7u_g^x_#&|8<-Hk)qfUrP^-fuegbi}FIm#7R_1$=Ds z$KT~P7mY;I*f(fDaBKopVx{|Wo9kEWu^W$cI@FbLlOaEg7H`sit{y?j?-DlK>Z%8H zH{eqE1r{t9-eUJ^&D@@@NV`zoueYS zRY~5~NX&?yRzl&xg7SKeIEtrqy&O;k*lEc!Vs@A}_+tq@b?E)=KdYY9&tRq$*5N;l zeyB5@yKkGr`?tGQgrDfXNQ;*jY!H5}*CV4ltlD4QRgM_e0~C{|ZN9YJPJr?1Lvu3X zf^fx}tN4~g@(xjfdcobGUttkHk7~mES(Q3zm=%x817?!(phM8+`7JuFFRyPmqr_X- zMp=KNlVS5%AMe^?bUG0cm+G0cns?k&Rf-88_{wLL}t!LPP9{0 zFfcdcs4R^z=s_!j!;}axb`Y!@Tq=reNEIuLP=(8u)sT=i%GH2U+q}^4ORsf{7 z`BDreJ7cQ5>;c)Ng{d&JfsJc9TqI{jF#%_7$X|IdIYqqb185Gl{>1JP*#2e;PvvjtC zop_UN%P&BHv1?7d^YkO6rj^FvgHnZQ1%DDN+S}_pSo+VdHqEgqS&L)cDqPuk^=hym zsij-V2_UWJdsdBJSkcCLN2avGjQZw|X31{{xWH)5z5?AQf!(f!zrYh(g;B#vAM}yO zctz#BIitE7Y!!yDQai_e`7C-s1gr{(W)5k066oq5{SV)Byyl&X9?hnBK zf-fxzrHN~AIG(ihq6-|`36ef{c*aq`Zbx44-5a=BcdIV~wFFi@+tP6zwS-v~jZNq+ zBwAjt&!jzg1WZA}BK#>%Q2S->!OBDxfZZ~JV4efU6gc(GyuD(g^?KKlkE81MAXA#A zgkdr|U9B5Z4vg$II8$teb>ku=I#va@C zr=!yZu|~|?Jtvka!6F!|d1g!z<78HA!ITMg3|gT0XU5~MmNhE~w6OSb%fYD&gM1uWL3CQc{kBG|Ai<%v zQK`Z+fsUN;uhBO3llM_nK-7?0lByi4I7aP!K}7!$c{{7Cv|tc4Ds}rZcrZH4KFFr* z3f1|Obh|YoB%{ldQ0TBje$6fY2G4I4ohN^+%byrB>1>Gl(tE~npB z_M_f_Dmh^!+BLN#+xp+%6x@%J+8<8amYg0Fj?w2f99?%TMj;gQ>Dr46kK)_v=qc(d zdZzP7kQK{~>XT0%T#TE-c};HKR&I-pI_D0to=P!2)gNzT_C1_nHg_E^V5WHd1_>B1 znkf#MSOB#(+t^8^SxXgz$aFK)99K3Efs#Hb$y0!x<&twgpF#G5`r4W_$9$63z;ri_ zn_Z>qQ=SCC!S}aa;5qsbRs2CxwV>XW?k0KB_U}MGTq(> zYk9_vRU^V@HWEWIEF&-RW6f}^qh>hzsCw1=lBu$#J6wLvtTHAgO={@;U}mBUrvl}- zUo-nirYD$M&P-jb7^KB*=|Dwk<$9MIqO;A`rwOhZz zW3J&P@GDa}9Gf6kyuu*MYFy4>EE`5Ho&aIphGeG++BF6tmsqR^Nx4C%Fd=5%dR7RD zQSt+f@3ZoB*e4BOMy;Q|>l8r;-`3o*^rYVNFKb1KVCG+t6z=N6a@6^4YJyECMTB0{ zq)FLG8y32#9bvhP9-&5K9{Uw=Nhq2KR}_!&!y*W#$pknE9j z^cBaLdGhgKmBp_K=zsu*z zQgrNnZ;5^zLMgS0Kr6JsW%H(=#%I~EJm&6uq*byC1v^-F( z>Y)d%3N0wW7eFgKORtr1HREul;FKByoW#`#9Nt*GnPrxZL}OMLoVQPwLgOlPe5)wr1{>A%$wp;9;@O8ZkE0!LJO8X; zdAt|!0FwIlYL=%8h((Z4u*v4gKJ~jL^-!!m@h)MIw&S>96A=nYa%M3>2&Jugo}(_@ zbm7#6L)7U6?tZL3n(?~iGzDW#%2^t7xWJq+I&7gpu(s4D=vpmyM)H04#W|r@=eDj` z20+d?W^Y<~lLtgYtXye=1YO=vlocCOe?qr8pgkn|#11~| zyn!N>Y~dGZmm(WeNVseTmRVY0>TE*3=QC(L0!yt7z#z8yr>|Onr(qec_ZKco*;WiH z7s|-19V&R)WEF`)|Fc?(-gayW^@U$bS{SwOOV6+z?X);V^ z&vDqOq)DLCwKhi5(HUv+w3nk14n@LFd%~pOVMWy`wmn2~oHlPrGpL3ITZ~ETiZiJ# zMDB4*aslf^9AGrH5!Bt9ZBQw)k$(O1v*qa3ae({H ztEj?jfLTEz_tETQ1y=m@!q&8b#)s#EI6YJV>TR~z3PqDhD?-*Zgj8)nBNTsS-I!S) zUBQH5Qzn%AbZAwDTAir;KvuRH7aaV#Wg+`0=g|zRn^~>04I(DHzwkX6ylWMx{0*n- zG*UghGg&mQ%;9a?v0OE9L-Q86k6@}-2e+(Tu6Xla#}Yp+6`pI_b>w0%%M5aPP(h43O&g8VEy zXx0|WA8ri_l_m+D`bJ%8vu=7=qj{GwJmb)3NnTpY<^7gtYD@70GpE?K@;ri%UFcdJ z4kKDQLvjnsWv*is9h4L+3>0hkQDtc;XwNEw=93ggDbFKb$b%aHBLy@hjJ}Yax>(e)pFVv9~U45GFmWg?b(Axf#CXnVg1s z7AxUu#Vhd@EO`n0Tb#V-7!^*6Bz8z$i>%SFU+NMrrAF6`zqr*=+2Y#o_KYy4n$VCp z?Zq(!Yp}ufW7FO?kbH@^Adrab%my25e7EY#1s)&y?V2Q)bgOONF(Opm@%FiWBG^G= zK!#f27+zWETjp(-KMs3@N{%G{rE23e zQIkTZOQySJQH11iGn0COoZ(KC)OLi|vXmbqtPdTBMkIgik5ke^c@{R486N89cBLJ5kC4(N=T#f*x-ZyS8s>aienR5AMk=ASMn@$tD#HvZ z;;YzrQEFt8@$}U38Kktvdbql^IPzr<^RZy~bhe##%1ytbLb1BX9yy{Rg0!oS%WKj# zk!4Tkbj~?$Ri~&V*!Ir~Tk5P-YE{%%edM382`}c}BH}J!Z)Ckm4y0&oX867G3zTG} z9MxG5IK0@uk?A8?#)u0yC>87KW1Wn>`J$=0H-kf^XA$@sIs1PUla)PWRxWvhbkg@G&xyq80EIBYz-tiS& zhB(&xT9Y^lrMm=^VAS9I4dnVUQ#M***+52aR_keZxMf@w)oeaT6=XDv6j|jRD^z?z z6bm)$8s!Rc68BjNz_Pr+Qy=~yPB>-JJcF-KFaIXC*W*qkwCTfS07e$c)SEAH7{I=Ws>1#id|AHMx*fL7lX2h}LGu%&T>QlLbTZ(=MdKGdYva%r zQou@$Vlz3{@rq;%R=U;Ix!V&Pe?>Yg`V#l2G;gj@m0E{jFmIuwd-j=)$w}iG9BH)0 z-*9{fyJIm&+p*lJcUbrYCy6#y=C0Tf88s1i1wa@&(addzh&7t6swn1Ouq130&Qq=o0-QdTh<+ZU|F$)ipblZW0$uxh^ouv*St%gZ2w01(|} zi*)R_R0m1*{Yc4>di|B%|6 zs#FImG9cK#WUW%05`ED zLDXQ?bW4r+G3QdhZjJuj!iQcMf&6hnce8>!e|z&Xvz6hf-U3;y(L@ajy_y-SD6PnY z0~H7$`&?PZ>3!AZJw3<4WxLS+qZg9oOlVOJJyo ztX1qATV%6ruNuHoy*ZQb;?!jphn(nosOX&jX0S~c{Ryqn392#V zc_py+>?>r0Bsl9bwj(|Wh-QSbtsaD3)XwsJ%9EwM+Uohl(9^m?GjnC#4@UI4dnXv< zk=78uVi=x-EVDO_^-!*4ThdeT!T8AMJSoHFo+i_g75(BkPBWBTE+2YGp4CD>=P96~ zgvEP4QG~h+#1Hs-8?)&C+5Bg>f}b*?4tRd8`WR27c4ou zXweg%#mR-lmy$=p(Z<(^8-BmBd!EL}=PwbdF&DUrotm_(CLZEBa7S}exB>N+(XUeSG^^e;4y4wW8>fB)K0noOoOixz zU~nm?DKFB~q5UDPs8aRajdS%a7OV4xikLK*wT*yrEqW+FZrr8Wq&V?gXvk_!a>UdAUF|Dj8HN@}YIcH4n*+$DGRU2)r;#+I+ z9Go7xJFeB+Fszy}x+^s;qn)EcFwU=7a4c3l+Sr@S`nI;J%-Bz*wm7uoZGGnGfK=BGeZCtCw-(Ihn&X&7&jTl87rXl%t1qsQxE4&Od2MQ`!NNV~r zCW8@sW3uMR=l2y?x%QDg(i0CS{y%*uKlq_p-s)r@d1*0Q+U=jV(Iwo#oA*wpPW~Kk zo}8SNoDw@v;86UrN*ZzAU12={eJDtoxp7M=n6GN!6Y^&5xg~}AdPl3#g$N(E| z)l(x?_d)m)K!MsY*v>Q?`yy zOkY0Co}Rr;RUs~_@V3SM;ZtA)SPx}*3Vg~j^E~(cc%SoUaAPto9u*Du=gi|V%$|Xj z?`mY#De~?_RzK=eO#6fAzu26W{=VWRgZ%3+w!d+W43^njqf&i=hi6~zg=Z|= zpm@{7+^j3cFW8JS;Z{R@53UW?KK;_^Yiz%cGqQfixl1t|Ov9L+sS=Q?_m+5FXX+>V zOX3i@r`3V;Y^Bu8pagkaiNR9x zHYmY%06{FIOwxWe1G2LEO=ZwiJV#wa;ZgzIjs6I1uzV6Sdp|+pskC>BD>kbUT#oh? zkTi!nFUHAjOY(HMf2$pYAZll^%`RGQ>DX_HCut&5S|PnN2l(p7)RdYB@s5K(NiRSt zm2k6lSE3j=lU#)oG+yg3aewv*ltPEr=i|veeCq%OPBas2I10yl{mkdv*X^y`#@-v` z!p6xVA>4825hh3Tbor`r7h>oiF^0ZaAg~k6N@#AzdI_5Bumrc?IWtD|Zc5F~w@1ejas!og2JT`e_DZ*Rh1xq{Pw z#$8s4!?HO0$;AEeG!M~-3Qv(HhbU2QYjJW#PqfO?gX4vkm;wU-_B z_v>89M{L00laif0br-@lf1VwzL-i;~CSLXnsI2%@+ye$2__xTnkO2hk1t3|F)<%0R z(LhBg@*p$h80whLQs;73t9076U)m4G*5f1dfXDt_R_YG%Wp$%G%X{HWObO%B<5S;6 zWuY)W^l;ul<`CCg_C6lES}-=;=aI!-A|3cI?a!|AdvX-Vq0t0ipu`g^57)t3IVAi5 zTA^+ngPQp5u|u2yFyLofXe&XiKtQ=6!=aCut)$H5U2y|b*#rZD#%)^$Gne?JZ<+;xZ1wfGvaf*wZaVt=+C{v%j<6JHl>AUB} zzX<>lB7!BUdMNQ8k()xLGZPA9ffIm|M}}kHjTe`{$*Q}ktW3+W-lADD&84erCP|Gn zKj^K92o%CN&*8X+r!%V@T>HUY>j2w^l<*j}l}TWg#juEbz=Dv`43$;KH>IQ=tFNC6 zm$*wD;Bo_*1VV6{fg|h6B?7u;b-7&1fx(#u|*iSjU>e z-Y?<}o9BC$+45K{>Ry@fx9h!P-fWXBdruw1X-M}HpU+%uCK70I*f1lQ>{8`n-#u4-;jm>WNI2N?czx< z)%H>DK_`EFu6I0b*+^*>^pyFmscyV9Wd7W?H^-ZQo@F=umeo@McfAQ8oEcgWs_YZ^ zmQmVXOQKv0S$ZXU3Eb(rG&?pi@oop-WH%fDXXCv~Fd{Sb=AxqTOA8{>Iw*w3)Y!@j z=g=pFbOgb{&ZA`-kcc!h3bLlxOw6we;~*VW4R7pQ(L_=1V36S+Hask47-<*vUj7W?Y@1EoqepGMHW0dt*6qH3@2aL5< z>Dsw*EyrM83gqWYOJg3D(zU665H5E=P#_%Z2?ypIoGLhXymjwYc|tRG;=w2|OrNRL zkaBYi$u<`ZFcWiU?aG!c)cw}Ryc0xRW79l5O@&Jq^)@-9x}4{3aow05@r7e!4BsgC zEM(3!H3JfZjeMRE=ZMJ>_PgY&;6rxJBb-$J^k=1UJE)!qjCPxT^#et!(lxZ7G7 zaxi5tw(=tHpR3`%Rc;aQUJrz=EUk0heA_T6I|?#Q@zg1wg!FJRZP-e&v7(nhe4ipr z-wx1H%mW3q2G10YhdJ};%`Jnw4vGx-I6&NWlz^LB1al80J*nT;ance z5S1TXC97O85Pm1zH^pxszrLyez$SXurC}C$OJ(5#v2A8(dP#32?LHHXptbP5WLxw@ zh;0MUKmO(wq`|lEzrZ!Dl>m(uj9(CX^)6;Mxez};kM95D2aF7bT8%6I>8pQ*WHZcU=S^7YOaV8>Xa z8SKdQgz_dql$a)QsEI4WSGh3Z{KM$d4A-A=vXGOW=_vo1Kj`{050dTWf9=xZ3fgZY%h1 zcka{c-6~&b$Y&LRijnbfe}8TfHor3*^Xx; zrAPMWnqn^cwjlPWHm*v)&S4)va=o+MA~v%r(to9L>A=I`*FqzP5z>3W_jrxPXV(P;+L^yaCItI{KX1%qE!%|YacFL9NzY% z7^3VypFH~)r|9M7-s*_n#dX(Tde4*}m-sKRVcnW{BCKD~RoiQ&?0@n6R?y0ud7!e5 zdJFD~(gX+({#fFh_!!YveO0Fga_Y?t9I(pJLkGFUy)*pY^UMZ2LDn@~!%T^J%9MD= zVc`G|Bv6(hZHu)D&(CbFd;H$>+8uydyoU_Ruwxrg?h)lJSi&!<&d1Za zbnvn~RVkRPvy<}N|BHu~YMsbi{97Ff-wLhh7e-COMpVs&87|UXofwWwF2gt&01ZN~ z@LeTR!}u&7s;2l}n(e+u_@-sDw$>GTdJw3hHi9ry<#V6m+r`tt&?bKbzR@Me&V88` zNB#q3p0~o-fp!ADGe#lf+^xSYLz+H(?;| zy4Ld2ZOd?6?lE)sqGYKeAHCAmcBwmQdZkRo4xVvLzy9#ugy+d#9nCxoK&cL+Q5bY> zO<<;Euy#RFZ0fU!@MGcW_rtmI!YDa{)d}r!vhAxf8yb|#%0QmSStcGH*CfxT0SVZB6y2q<;m4wYtthpp3 zIM#vOx=^O3M8m2Gk5xym#n@w32L;6UFtKt!Zi>@MFd z@cv^5jg$(Ta;Dx~jQ9j!N8rtZtxZ7VQ^uQW#ASeXgvkV8;2ObjA73BECbmY`M2UQ` z*#`JWyopdoe9%>U^T4(&ny>t3A#pcxRIemL@$@VlaL0K>8@~!{x(qQAZ3jt`J)fz3 ztMe(Er>i;ZLVKRzC-{6GL6aZzAO-Qs5Ak#mcHmlq#mX?!9Na6%GQrDtxiJ;Apeqp` z$I24GXLw}L?Hs;ugAQNn*G)FG{B`M}e{|=2u6=#E3|gI7Ag6fhbGZ5Qu@GlKui>|; z^Ij`}>aeidMZSZ8wXM!Jbricsx^4m;ED>wzGBWlZ^4y|`tR7n|JNep%%Yb!SM zd4~cf$l3`BK1;Br7vp2`PGZYIw6>=VW2J?~?t>i=Gko;L!b1-CVmbzwk`1EuG#jwI310MxBA1k1ZbGNYU-3s#e>u%{+`$U8=S{jJ)f&PpEjJ zNJom~$-($OcW}LbTvSw~6*d$d<+B&CetLZqNCH|2p|7xbFl65~FtkipG6#n+gPS*M zM{;Ik5N4!F&Q8f$AX@j8sPNofldZLnR1t-e(lS}*oMoeG zKtxKm0r}CHns*J?s>Au-s#oc@?txL&J?mC6tJU>Lk*&1{USfW5z?>kV#PbS9l}xwW z8s|*3qh2*xfN?Is0YUoWn}8;8*D6rulUl7skxt7LB4KvPx|8elmb2lX>V(xae5_a~ zSS*l|b0K0_HrZFGEXYR|>O8+Ft8y7Yxp}&sa(%1UaP0KN%uZz3_YNIZM4a7JQ2$II z+la>euoht=MwaW|3;MVE-N)_~Z3T^a)dkt$ab-yI|V+WB5 zRxNq)9bF93tF>ajE0({znc%Kz%KZi5(jM7pZq+n1=JZ%0KBBTWtxUbOxIkRa$N zd~yMRp-HrT_3Y)cP|@Hvx-d zIrpIE&E{eH-MY+h-NJ#|8-+15T3Y&Iq02;zM@?xVwB6%d16j{lrSGV=A`D#mz+z`! zL_|AmffniUPCmUmDNy85*Q$`hJnNs$S18QPkgH<`ifW2R8q7{KT?V7jeu&C@f@@

+_ldk(xzuib;vfsc+r9Z4?r|jaYtgRo<=fZK&o%#j z?Na_@y+~^!WaZ_RsnE92*}#K8s%{0QGg2EB4bnMOrU6|(wz1 zQ#&<@ho#BG*&^?aw&sQW;^Y{?fZN>*Dcg|9IxcE!Y=vKfVBD!g>@{;0t$T?eR&kAc zs)^qx7>;j^S^OHm`RyT#roFO*UFwO6?)u5TER@hF^SK6ka^9715~xz=&I%1?D_sCW zO0=RB$Exjk)B$@M%c3TJR`Y2FAMAHwZ;l9sZkv*ma1gtvZsxAZZ}B&CgSzEMJo;N| z$JBdXw-@jI_3LvVaE9-ocm{hnXd9S!dx;oPQoNo({3TM{{UGw5q`BPgYBcPR=dp!$ zEO&>hvR&3#n10;dkg?_YUaJ0J?Uo<79X~^Za1~n$X*^hrjEkL_JFyn?{n3HUSP7`^ zKuAmrfB*CL*#kMw&TQMG_Ey~mrx->t7yd-S(- zBo~N_8_NmHJJrc7Imi2A7jj{&_$<&bEk^%C&|^l_&d-3!a$9l#-<{5nUK#0&xIGnl zw_eeSBsLt?@2edezB$0UrTmy=h_;m<@)$Th9o(U9D~yNJ+9o^jtANvQFNx3O+IWfT z`u&^6_S7=%#*6$PFK=sn>d)WU4+B5U)5#@Y0=}djrz%ckQ`Brs#$TlefdGFR>;^vTbzCOo>r9T z@a|NeR}fOfI8ekm6e50^%e{q9K@-T)Qu_o9D01Au{#)ZG$e!c&D(Rg-=6ovJ>-k`3 zgU+NZzYsIR8u7>9cY+HYZVs-T?v6|MFZvczo3Ak`7zhe?%HtQNJ)>YJX=6?5L{Hsr zx?tGYORyGGOJly5RNPG{DlO-1()JUyhWR7HgKG2g!o3P>>&L7oej7)IWV|nuOt=+3 zkYf_(mbV#5UNt|yeV`7YL(bnr{V?!9S~c+J613mA_sbwKy;!Bt=g;pN$%7q(UVE2M z`^z6M{W$m>8x*iP((ohq4VIQ1!_$cW~F>C@=ZLjPzu18~J z>oPuo?$w-Ze$6;80u}vi`FD8haDXXjsekj2{0+l#^P`dAXE8swepzfVRI_aGnX32i z9+#Ca8t*qkluzs<4SpQ{{Q6N&`1h+5*|W+#UpijgW*N`j3emd-eo(ME5wY+8y}K78 z61E>6zQy;vSgSK4rZyMkAz(=NQh3Hu%k6PM{r<*Fc=k*0?B=K4y%(=zqmS+0zr2Ka z|9(@85cNgq5dD0j;-8k8jw9(12CNSbIGgub_?3|M_CEu2Z*JDv-E3ZuSockv8~)n1 z*18@M_66Q+_aQ@P_QuiP*e2KK?GF)wvv=M+fU<8@(?GoaklerE!WoZZ)Hc5kJeK(# z{7k0f;OE!p+CriiA13tXy^eUP2z$BpRu!?Odo$)*(X_5!$awflbj0}D`>EE(seuoH zE9q)?Lxa=yoQ8xSEzGw4R-YQ0p#5wQ{no!B{4V{|%cpupj2N9o(LuY-y_fCBp z`NVSJQyE!~zV_w$)I{~)ItL&9za~A3@Ol<_U}kseV&_)CGr?`YoiEi9=0FHUb7Qo& z-(v4Jnbrs-i>%gOy!ohV!p-*C*WdQqMO_-pAEWV26e9 zlQq|u?oieT88|(vi&#+BqG-)AF+0%y?OTUdKs0hgPyi0>$`7E3!ibf$^64$L{YqcbMNr6R0wz3_gIAjHRkMy znz?J(Ne}JKFP621=t220_lchYb6FVGWZP_SXmqW-PLC~OY4Ox5y{1$A)D-f zEZv^%W*?fryR|%K4fBE>6(1-zrHYfx9K8fE?t5U2U+wA0@hIs4mp!>@R)BVNru7$v zKj-Iwav6aj^f zEj^J?=c3|Ruv1DOw2WoAhEwUYu5s2G&M%t;otu_L56ddiFbncHHQMM?!%wQLd>kk7 zw}=GW-XnQ1<~P>5Qym+dW6wgho3zndq&zZ9b*EIx*_lSst#<|ppKW$1xtCMCFrYRK zDqZ8_heMtioV}-xJ)pff-4yFk2AmZ_IbK>aGmKe%!eY)TxSUK%mboOWP)1WoF6h>T z9VxfpXOF~xN(7njNqz+mLf%uV;FzP5E?-f1-%1emRW}lmaHbK?R!WX*HBaJOIZd7! zNB78}&V;3ztO_SDaen0z|5b4V?aNh~31VknX8Ux)key44okI#_F7*nH*&x!&Hf;J6 zoa}P!fAia`jAQ$-%uC7Y5TDr0w?ala!l*3Pj241^En#hu!E;kQzPbl4L8O~OX|+;a zxO`CdY0^`xD?tcMG^-E9wKbi&Lu)0T4YWRQ-@^(r&kwTtVa!CrC4Oa&{F)tiPNUUF zpJl3LCkpp8mX0EYSFdx#rD1|fLV<%9tYlK|V55jL!WEr{_r62;sT&TNaQOyyR=EJx zcCG00tXyXkeoS@C(%|g8R3P%rfP;W?K=I&2N{$?aGY^O>T#R&{6;^biyh|sjWK7Py z2PFR6qr{fC?u=(56GFjOkr}!YdPct(f2hADH``HRdM;H;w|9i4;x(pQgt?=VP2(M798%=`@lTzupfYdlHc*9rg%fj;9P&VJfgs6q z;}NgB4N;wEo~)YWrcwY#3B>zB6k#s_HVR0PlU#!mL4l!!@>ETL@tMjL$l<`uCUuki zMw{XNG?{hVSx=6#lOm8J!Tcc zC3k2YRMDeG5yL@8cNoR>RW7y6mrcR+5BlWoG-RD%IM0`?kH#6)i%#<8Yk+(d4HrNO z>ujhaZa>I+Ag!xtTyzj5#Y)eDB>*Fl@>FCJ8Hd3k@6%yfI8|PT!6anw^=d+y=swy# z-RL;~GTZzNjA_u!XKMe89)>@`2(N0aN@k-h_Su)I(S}837d~1oDPl6So_zsW8LWBG zYR?3M@Vz`&OSFm>(YvsLqw%4fhz+#$u+pPXREhP!b%) z?<$W>fOQ3s?vY$6&2Ufx>#3S#6<9seOxzWC>K;pljPDH!;Zu-26G)@WP;lkkUA6MA z>`4|qoa|&zx8@3jr^W~sscDUI+VwW?xq=-anLz^)@uAIT0E~Ps)LCuZ86`HURvORh z6qGFp@yRs`Vy{5Z*CdVmt|web_HNfski%WrH9A&zMv-a{#r~WwIdE3d?foTQU&#L8 zY;-v+En2$i=DY!mA%Sr#LlD=9YlKp!!Q63j>~Lg)7~M5NJV!Je-S>mq0rAke2h604LRL{6+7=j| z(=s#c@wVz$mp)mP{=>cfS@_ed@FIgv_65udLU?d=R7RZ(w#wE`lZ}!)N#oj+-NKVk z)_UR6CorL`8v_nxq?MU?Vu9=QFzF;7+zdd@oXcq-Z;=Y5U*zOHxA-M#Jeq6E)7vb7 zF+DMXnPb-=C##YyKDVdrZqqbKL9=Als)+%Yra%)t%#3xEavBG%9SqLh|4Z15C5Go* zO97Pwl%gatN)`Kfs=x5txC$J2WPh16EMPnhmmzE?_xIVcY|lsOfMlUIb8fZ7DKW3} zV_-mmqImSP^TiwNG1ELEVxA74%;~AWb4tlbo-~SU>ZyiIPB9!P8!Aha9Lra&%Nx(l z9FdiLF5!J{6E&IA-Jy82>-H~ji{}35G}Tw?5l7z4)@boL?{lmDNH~bUUxnde|L_NX z|9WR4Q%~t2je5X(BHG9#C9ay!_qe__hH3N9&HB$Hb)tC?8;iT$<5um ztJjEa5m8tBAG_;3X3F|vp744#MVOU|xMJZG$>XNbUj@ zi~&m_R$w<=6&woDksiV~a9Hk4Q1vvvzE&`v*0?(CMw_|H#ua&4SB^Khds*s#w-c{1O zwmfS}bf6tt(FF+R>m3D9nh*XJfE) zmJ2}X&~r>B4D`n$pGnuq8OsJjKj#ki=Ade!8dJVw|nV zi-OI8;i^g)z7%!9slnQ+M;d+v3*Y*DzJOkS=S)(49jxyro~gQ${@1A)SW^CGy`Pt@ zl$X4-WJi`Vz1Td+t+1}fdA<<@_^zj} z7njN&rNn*mxGug(Np!&}-Si!VyOxW2HKwxCmqJpO(ZlqsCQb6>eqIKvrL9w%EIizl zR@N%XLTSSy@HJfB8tTTb45TnVHAK5i^ediD+qEJph=`|=`Wy$GrE%7!Y&|hLP`lrp zT`sExif2%%dEI8ZFC^jzL5iy?j)G2|B%C<;hk6fXW!Y zL!s4C3y7>jr!(FP-A0Kv(kujqPmOMaZ>teNGQlW|BBNwqK0#VTI?_zgWFnyTpF~x4 zkU};0p!~k!Tz2|&U*L;vj#ut`+9tbMduBNGkLmH z!Hq!fK^`g`z+d3tZsWqk03x!@-?#kzr zB0QtXAgJN^Z?ZEKXA7i)ig+I<*1iI)4)#^+M~+D|h>-y=(Ed5o8ly-yjUeL#fwRt~ zJG3_L+T$u`XVr`nn?_c`2v`C^v)kBOv!vD`9XE_FOXwQ@uKdgKT3y)<9fuhht2;81 z4_*gbUe6NwhLiqVf$M{*X`fWMD*DllG^{IDEk#)FHRO22Ei9M&P-Tmx+hMqsk{sPd z#~~AV>wLzsJy+vzdItk$i-)*!gvrO6Fi?UxNx)LHBAq*ydl2(z1eWNVT%4H={+@eJ zmaWk1s3YF*oZXtKifB86zoX{`|*$Vad;QE?J^C@Lzxk?;h57ep%#e z1ji%PKf|i*6AvO-Je;ZmFh(zbV|rCoHXKk`9aM-P_z2}=N&Z<=#o_H2l{cWY#4Y^e z(q-YkM(pz<)x5v>GX(K9ik+(Ciu|@H`bBHm?BmXkP6s>X4@5{regR-! zsVtlrF$hdqv)fp+M}G)S)(Hkcawgu!)F*Yv=N152!N}ikK1^3KobN#xFIj%@o&=sM zV*C&%NO;|kBVYbuwaQldgMDMA6$#A8fjjV2JKq>#@vYtti+_b^)0;-CWp*qu__9M4 z=81<+??0v?3^x7KWe(NvKHCH~b6pE$yI#7}VmS#9FimvoAmEp(iW+)k!s7=eMa}3 zh#Dgi3Yw_U4=4|y%)c0LX3Ze;5%_8}QdqYwx-1m%uXc3T*8YBYvqL>1WItgE#k`kji1+rp%s_dBvw7(NL`Kv6p69t*M>K|WeW8{hNRh~;PMI^1uwz3_867$Wt-q7>()wkkqha7ftPic~i1a|5U5FM$k9O0ww%0;Rp%?n|# z1*GfJmw{r-LYaOD7N3Zp!8%QF&xv&TfV1z%=sd2xUg?^~Hyzlyr2-FW_U;y40-6RK z2U`!^m2YkJ$&I7|Zl*sA#pR|aKwsde0=z?n;no?C-QhU=zoi3Tur zz$SpsCB8@WQEkyH9hFTMZ4!O)885qMxSZf`>M81dHLDRAsgE9%WO50Wh2s+;nZWNr zE*$F`cn7G0gt@3fdO*PSoF%Ro=5$rQD#Haf!yi~*mvHT%LoDh5^)00@Sdx1a6y1wn zCrE^ER$eTvuw~LdX)wWJVGo`oqKI}Y{xxL%tcxP=%3rEO9_f4N3ztM|1*PEieD^cI zF@+kK5EYM2FmE*DK~CQHke_E>dZzsB8eMzvF75Uw%79hgyp^(h92-^ki@wiN;=bW8 z$BTUqo7|nK-I9Thy#~pn#aM+}6E_MhjX1)_8%7zGJ#V?s{&Tc5;kQrGNHUY_EOAbG zIqn7uw`pY`iNI51zs@3nsmVemu2iLvt&~~*b%^8IPl;f|p9R7CVtW{u^P-kpRx?84 zX-zEHcE^mGMfW~U19^Z{TYGyla%B0-2H^m9;i^Kk7o1n84c{7Y>3#gLotWNZ$3qm? zxXX%>_no_v8+^uEv=+Jyxktvqiw?aaugK~|ISu6*#~AkgEMnHC07pcnLydJu&6_io z+&QyzUHfS^k%|@`d}iZ+qo=`0j+Z6f*2!>8V*L7`3f1CuL4bl&fNi*1@+w_DNax{dWtfK5@SB&>?^)>IlG+lOl^;qGH_&ruEsCO zy`n>sS*$}Iku~<2#->%ayZEiK<&>RplNqbxf(p!tB2N~!I&U?YYq0^g&hpCHA&v-^ zuGJw}Ab3Ku5YYkIdY`ExGyQt~Z&*bjFpBC&wda7dsz0*!CC}HdIlTA-FL3K2fl@aw zZDI!#v?H|*z9;$r`zon zuuwT32lCHZ+jdmR6umq_)+a9`cy(JoA!$=K?698 z9$EzXu>>36>gN)=y*ygL@VP%8NZC$*%O06ku*IL#Db^C66nDEp=uDFuLA?^T%%*1J zP$Oy5jDRKvkTv?{MvN*ieAlR?-i=dR7FCNmMr-sKfHJec;cKGgSo$uJRoMa4*3@x_ zSZ@7#-LBQlQ5jVA-I1MoxGt$N$B?u+) zj#YaTE65$YCFl`VO;u4^dnHA!sM<5QV^`Jah*`8fM~!n(dT?-XRCQ@-%Qv6j@83L< zxF2!f*Xz2j=W?;;5_uV(uU+LQXq7Dn{-?Z-;(Xn2{0_WW2m^zOj8TyK6EzYB5&EEoq z7@D@b-3BD`?4KU{8p8yg9$KC;K6e{`KdM+Qu_r6L`Z~cdd7SVyfnWr0K66eXpa+X2 z>y%{o7g>_ z0WU6?Zyq%}TddSkNNn;+t{rGqJk~THCkbL$9pJK3mpI$}__7-;IjedbhVA#y%@TE#8rcspDz>mj3e`=hO+~ zkm|A!d1i*593$GSV`VJ7O8CP+c0{|DnmIB`G|-HpHLU}ViA5Ip3XG~;(k}^MDpuV2 zi+8a(zH98YYld_(=e7uI9LZaYy6#>n&a9boC4>pAHM_=!*nfqI_f2Rt-GmVIw&6t5 zI;Gj8(J9P^I^qO&9`E zZr3aer1QPO9VBvOXwd=KAmpf5$7mp#9Ds%06yB=3+ld{Lf6#P0f2M?7I840?9})h` z{_U{&q4@`4g@{xEqfY5Md6N0@Zx`Yk;_FDTjNdSSSWzz&{2rCdeRLu2W+W|7=d>(mhXFYih98$lRmU4`X9c^w9$Rm>dvk~Q zAlbCOy(2sGbfnp|+Om9+b6z(sS;xNn6DiGP_L5h)I2mdY!h2aR`xy(7Gw_6 zyKEK7D6R?jU}RHgh&>r45qR{*NU-s1eh6<7Nz5BfmKSgxFI@O+t80;CGOvCq?Yx1& zp;f)1Wt?54F;U0L+LeJ%=t8YTM{SA_2IWOAGp=%a##giO#eDhQREZzxr#0S$NBp-a zavECeQtI(tsav^{d3x0kbogFNU+RTr)<@Eg25$@a@=*&Jd}&YgX3;&_f^XNSRYv3u zZdk{SAUn}xgdnw-??mc_Pf_`V5$Dy+^o-ophV&&aD!P9V(Qx_AEm!%zkooYU{V#$J zU%y$U>KD_{o+p1B$hHUGzV!X+8?(l5!LX7klg6N|aMomW(5UE$TT{czCgYO&8S_HL zth^yioxTJAd8jLu zFhWrZ5gbQO=F?>$3e%+X<_mgD`B{Tk;b($~D66K3=6=;Z4&4a+7+rgVFO$b*O$4*i zB#D)AZxd{OR~ITn#NBZ+Eh4p8yz7K@GTr4zek3o-Z#8CA-PNW;ABl+W$b)?KWR*qm z8Gi+b&buf4aZw8T#&q9|-=oi8Le{}V(SP`M&Jw;`?5)Om(fH}}zaAi?Gu2E-L!fW4 z$yzCyQSz_;`&zODUpm5#F+6v|Y{K~ZRWq}qmN+U&rQqhQ5)wxJu7DHs>%(9Q7@(nOyXst&umM(cK}4ujg4G#F|~ z!iKuWvtQkb{dhh^k&}^~?&BWnBASr9jOsCmFmx_v)+l zi)CSb``H<1!o%Z0mV2EfcTtEshbOrCHciXhYBQCtX}-)^TLDh)GD=a?XBYgX(hI~w z@O@1NH$)nQ*}OnEfe?!FoJL8Zs7^G{$9u0H;DAa|t0LWJ6voMB zM3_$vXQEeY-9TTq$hNI1vMs5f)$tJHuziuVBG)l3nhI@a4ZIpTAtEjT;;u%ZPY3VM!r z5n9%OgmaI=tbbAUZ0h}9>%usMOL0me_fShgc>b`xjQvQ&s!;U|RUgq)lAZFFn5#Si zzj@kOrzD8G0nY2=9(=D%`W$x;XB&^3E<)afctO?uCcK9XGA_`UgkCZ9Az5KCGIByH zLusfJg0)_@MKG~>U5;mz!WlU_s|Ae*Vmf(iPzCC^q(xKM8A2D75ty_Fg~=|(CbwAt>m zgAseuJ(4vf%zr_Ba$7T4r*;IxcSt&KagRSVy_&pUbn;B7d4Q8z6$syeB{w7UR&uip zAMsC46zT}}xOvgeLr&RZEJKkDpeY!G;_QJq{eo16W#bLORn6)(rAS1-Sk5qau5+q8 zsrg(wp>?X)c1s^1r#>ZiNn^%zia1aPokcaCFta5OW<{jFgUlB@_!LzoE^*P~ex&pvQDNB3T1MnBU$$~5X4}N zQvl3cVl@3aTu=y;igXHujS{g%Oe~-R8ca4Pd(m>lC~&4_co~>cU!j=CNoo~ueN*tr z*3&xMjkKzf$4dn(tY|R72`anLmOfKY2@=&;cWu#0&I%-qI1#&G{7>K9e#3zR0h7sb zFOpfLylv65UF*K&G&4qsM1L3IAEi`0D}>ZAIfWzccAqJ#3KGQ}6|s&GX4JdE{?!TN zz*p;io1_DWgp^~^7hi_eN`Bus`#$--wc4EVgxvnY{grHE*L@Dote|^=K zSD;S%cl)ZCtl@!Xk?jC%7CBX0#bQV`Ca(9>EFY#ji~;5fpdKiXIMt9zSo9l>%z}%` zA=cjo3fvDLWD|Om>E}y?6^l5VZA#KGnjw{3&|>9|6V^fNkxJ8*?8A(kf+&LizDt5&egLYFVX+C^r+nsn&FP2`sR zMq$Fea*_T|p(v@0l9RAb5=|A~k^e&y9VVT$1+&}BIEUA)J&tlMFteLZ)cozKQh2r} zUEx@OlcvgJ#*`B?=Z6W4(*EJ3-8@BO}t*MM;|MeF06AyYOu$L>Bps-i_ z1iNhh*^SNFdh)k5RbCOr&gv~&FpI*#$d7W<7YH3K!LXR>_M5`_3(*YRqSDm8t)@1R z#p}VH?!i;8LQ*7~;Ck!2IzK3V72aPY-c;&pc7=-FfJof?n4I@492iE|?**fV0^}~Z z{E<|uGOfBf)|4w_)nN@z z#K5%Rf=>Nlp-$&v@sS`UmcpbC)S}4S7K==ogk>O`OE~&!X5L$|T3elQul%er^GQjl z@~mVS-v@?!U&tXY*DY%#eD&gZ$qxRo+`w+<3d5=H(HwLkHZ@E`lnSLAB#lJy@vq2O zLNFIyDy=~bB%zl^m^InSd3viL zqt8PFIq2*b+Hy6*^9z+6p=<9lBxKayc)#{^m5Dj{iClLU`<>Vd-D!oh0lg z^#7>NirY0lR$^Ht4xg-l?r6NuT#}Jtk83dC)3R#uO6RRsmZ7!aGWt!@q(1cZIl)#U z^G(y)k@R5VswBSLO;f4ce$Ko!x!FU?PKf=+3RdKHgYYaM*wDS4J(*ASN-jdF=``ft zL={2pgJH3C1$9(Cijc0z-&p!DHBTBp$CW{-4SC`vU7IkE?F}%?VKzluZ@*MX$j;<{ zfIuQ=epD>!?aDsjXjEhk{^`nFK0Pd>lin*Sf*Gr#3RfdZIIp!PniQIdeQ1h)e>PPxb-f)C~!XF_o_0UfJPOjS{AB3e%*n_Oz9Su0k(PzC}*jS|yZV zW$#^HE{Wxf!nFPVOd+iK6?T9?DbTvra~-&DbrsC9)D>YUPhr}S8RzUHJu|Aq=lGZ_ z*P-Uy8lh$RoL`;5VX{Z<@QHgwgzkMABbG)Ie;jnvX8)2dOBL#NSk2Sncu`Nqo9_s7 z9$`)hc*e?gzTiMlENW#hGtM+uZpy$;!tNn*%)zK;lP^naYP&$^F+ja7x+*Z}YgZzr zv99&IOm8%uWvkz;;VPtGTq$c6s1Mw(4*F*BUs~V<>ZkdV5M%fKElyuBPTl!2IDE-) z#3lC;|9E_#PhfwT%}t0$_&K$nHy-|5lX6PE9LBh9rBB!mtBRT(=(>^2zSAvAU6y=j zkDH%q8>dnpMJ)%JhR1|UQD@4Rw*Q!e?f<^?81t5C6D%{B^wn*LPggqsrEC>xwZk<^ zN7jnGJ1v!Zr({Mf8+??vGCwDM6NomrWvBcVATPm!B(uQ_nXiW8XB8yw8gNr}^laS(e=#9Es2T$S7|>799th<_IKUey(OX zd5JvWs}Cctj^^Ut_sT%5T&5yfk`O0gL@Myi1F@5Ztn7Db{TX00 zbwZI@;ut!4#(YvHUDeuaTZnMc&vt6S>UCD<@}lj^LSE$g!Hy8x&H8`UyZf3+yKR#V zUz?T;GNW9!UM}}a)w@irDz@*%0Xv*m=sAE8 z%UCRS$QzedBCB@tiN@w@DR%j`i7v@B_@x?9SGt$7Q=Rw1o~>*?F&`BEqd?l`&aA41 zkCRd~C|4wFOBZHux&%akxtu6A+GALV{VWW;KL}SYRf*K2^_?r#xQxgzfYnn{N|OUv z1g}oZs8Gg_lwiYrEQhc*S@ZbODlXE#hmdgI>W{kzhS9OLl)@vqfY5!onon|(%k0L&H+m7$`R|I}i=6MDaoJ6+ejr56Zc3QF z&R5^_@do4_-}$NNO!K%PD9hrC=;vVJGWTt}osv-h5-BM+d4z9(Fn{)+C+$@?n## z`M8C)Y3O2$@f&h9kVQ9>E%l&DlYY2!|kE)##e@Zlta3JOhrOqW0~A ztG$;xI1571kYX3n3RJBm$*0nz*Tv6m~-AJ!mQsw+Y7b6{h-V|Rz$E5ET<+g}x z?Wy&1nyCfhe3m;2mmO98uf_p*G4KO^B*WCkYsATi=q)ZYm^R`?m~{3~rw=CHLmtG=dSMqrVj{bz`Kp;bzPvpsr4<#`CAD>h?| z0pdT~+vd|96+%RVW%I6}O(dAFlwYhu-0R1s1gfQy^L#?^!A{mclp=|L;I{j8KFbsR1}CLKD4ULACc?xn{>a_s&}UggapvXhIhDZCBf5ETA*zV%J@<*PzY z-FguX_1R7lou1@JLV$MQG=Bf>6W`36&~qR$24z01IF3|I3xkhv;4fbCK8rAIVCNYX zPv}b-(qxJkTXDm{PPN$df^+y{fPak0iA2lSTTl&#Wqz;7w=J_+hVRYEtI0MH+q~~y zsH^sBh^5jREKW)_fk=C@%&>(Q2{&CjF85j$@O)Sl-e)~5c0aq^{HFp%)+%GQ`@Vo? z^>`3daR~cTJ*-YubW)brHD6U1d8l{+BN=sd8cSTS-nRHsfCD`iMVeK^-0uVy)l7SH zW9tK@%qN@34Gc$g{Uiz-h#XZIBfNxJk4wS|kRzQL$Pie76K1Fjj&32B1Q*5KuD+S} ze4cng;K$B0@azde=lkBvGIzURSFk>``Cs*bGs^9}4s^rGLgLpaj!AFR zhXTWkHNs&}4f)m_PZ~$Jf4xY1FFq2Yp6{XJwkKqMXhk$E@XDxfk4@;%vEPO-W)enp z#h)rXza#eAL(Ej7B)h8D;vrgQag1a??n9rIqHrd7%?sgg^vGv)g?MJTHd?W4U33t2 z)<7=za<@omE%K#=L7XGGGta!IX5)tU()J*5=&Y#UpEs^F}tov)!M)8zpn$~(Mxc6CW z)ZhP6-BLXYbP~3C)*#?LLUUpfZh~|w5G5Ln$sd+*w#Zk{n?zaU&eng0O5`fXs_7+n zH@)44qzTPAfX&Aje-3t3Tv(GePJX3t9paIe@MnW*ZfQo|8zZIb)M0|IFe9c;s%BE= z+(QS>xEp(+99O3X zE-rfsgu?&#E;TjI7fEoNOPop~2*}v^nf0?%lpX!1Sqih1i%W{@R8gKn$|

zl2d44f1jAgHR}JdOk!JRetONqzt>{mwS)SrYmcb}X<{HFW?dHm3vw zF?Ks}f#XH+gdjhCHm(ibd~6ixsgOuNHjqPK=?k4l^HLZMqRsDcpm0ur2NAyGv>fnCmNyWmoF zXSI&{zUqqepq}CX|F^@SppRn0`+>duV(+NbcPIJqE|#-<Z2u+u~v?hqJyGy1$%6hFoT%vfHFiVYq0SRaPQ<5 zwRY7Di9(_ToOq`9HMB}-^FmXX?l|t(>+|XB)9?Gphe=y}wmaTwOPh~JcL7o0aK{74 zuTyv2noYv)e}KCPJ{>va-s9_)QS#}kvhAML%?Of$^n2zTTmCHay*n(QD*DVa4oylM z0fK4!i9YJnBDKO?@71HS{Hy;%`1Zy7G!En&v|r)-RX96*npCQNc5%6OOh06RdGH^3 z=5kx*d;Fo!hiGH-J8SWCo+0Xys+KXPZ_LcgXuW00Y-BY0p0XDouV*K~k>+fvcCoH= zti@)*y+!r|k52PZ;C;wJDu0B!X{5LN``b*1K$@uy?#1hr?s2a{Jvh%gqzl}=x2FeE zCrw878mikLB}a9EkNJ8z{g7iA-x|2gbOW|D_RU&*<(ot%q|>JCn#yV4FLj=5@9lw| z4}bflpHR@M7wTNnwDQJtUA5n})b$DKUo9X0X%cqpsOcAIBz9XE&0<%@mO?(b7jrKh zs69egCPhGt8YbNOSqJFnc$XsPwjn$j5fC!Yq1q1- z@2rtoUuZQrsEQvgg`(7+c6=%v{RJ-e5*7^)H2s$~=hgXgs;n1mStPrn+a`SJU$}G6 zY6-W8oJsl?>sH$~$+}u5_j|glFwYU<7CZ**g$q^Yz|~^m=clP~@;odiX&Jo;`Du9# z-5V4jU1S7y0l2A>LPwraSfJH!=yrtwBy|HA9lD2ZHDUO@1s|i=!ltU`zYvXhV$4^B z*Z1JPQv3_HwD0JiTkx$xU<+9O80z}LB<H}k1|5HWp$4+yio1rinNW01z=%l3mnw%+K5k{?X#om2}ihoA?tn*5zIUpQ?CjhYHD!0{ejP zI29_8PFxYW1F-2B4KWq}{}Sx7QvjS)E|T^kSH))I}s*skyE76yBo7a$q3$Ge0J&=vq=Ip9OIrv(EU0E zEP6B>{fS*M8K=HgcikWy*z+IRd$-eyGK7fy^Nq4hGvV11uGV`D#F?Vo4nDC4cU0~2 z-JXEE@HcWTGJhyU$EX|UUx>yysZqfnBkU@+$TlQOmEzcmi+iS!_=!_BrrW$!wR`}I z#@yCaC8#B0E%d;o0^er79V!e%uc4>TP7SqNS8*8`4NSJ;+s{{e@x8uXb%QTs?oP3s zX2h7*dG-BUB|hyL&e}PD@|CeYLNEAn$Jwh!9bi+F_huZg8z_AOzeW4A_fs>?{bK~UTt{uyU@jkr1>*uAuwS?f%zZysRsOqCn$ zbFN+N8u!AKG=0elenpg$js&6sYRXg@*cZ!imMU4z8@S8dlS!`ClEF9nwX68{RKJaG zo0PE_AnkoI?0p1y+reTOzDx2{nA?gg0_d|j*5ldyan(fjcmJw-S99F%{v@!&H|2Wy zkGsjZ)MVrODWs|r1^BLWW`+7`-Ff-d!*t=**r%>H0{z! zdO_N@#Lo0f<g1Hg;4b;5NCm>=mns*CA>Ks37u>esMg1Ck+5ue z#Bh=xrw~(sB#QNl^IJyn`B2wE)c+N5#(=cMg5CMN2%vau6$7^NhmB*QV3+XyzX9(E z(rzkVis91~Q?t`BBJ3VP-Bo4Cs=aVwT;j$8TNCpyNNS%0Sbd&5@YF@{2`;(5ncmjy zp|Zs!T)@t7%(_)bx_~pw^3FY0o~eqbXfMOR?CITkVQpCCA0GC`v^S(&13ftY9mJg# z&5rLu?-p7QwH7oA>QGdpvxFv}zU2r+ZQmn&)gI&9CXD+0vA&|as;3{_rwGq!$0B;M z_?A@Vc2U_}LM#xJ#v-!_=NVq;R_@wXBs6UfTFut%nv}A-D|riS8;x z;%BCuJkYEu5fc3|d|bAHH12EQFav^PE4SVS<(u%lgVaQBJWR%Yi3ZyM|B7;(i@%$H z1pE~ja(Ce`Z(lJF)2BoMp{!)%WO{2KE|8YFJ_@Wp?PE*V&$9xJj2~OX3A}4)ysXL8 z$__&I3eYf4@U`u9uZ?AmxS|)@*0L+co*8;k+PuDcoD(Q%(D12tDrR)1S7_uIrFaVn zQ4Po5b=H4^Zn+VTXl!K7auBUN6TiWCnOELn2a0!c_q?eeeo6$`^~B}|mAAKy5wXzE`fVMRUtM+fx(>_UZ_ZQnW;fJ7G~PF5L~aEKKD7gn z+AdX$ANB!Prz+dkbO6d;Oz{m@TbB>q_uTX$&VNIG3oiHbb6*D7CGlsu$k&Mb?WL?( z)-t;ik*Vp>B#iI{Oo4N*c@^-2b~}aJJ1q0)2-Hq{D%YpSV2e=F7qC5gN9(KBV=oQI z)=iQ4r-gsmtd2U4OFc$+uStaNIjisToyUP4%h0SGMsEomk8!%?K7IjBZj2Ew{`lv0 z%AdkhR8-nX2?}1EpSJs5puS9CN0oDY@O)8=C`8!hbN&o2x$xm;~+z7>3Ri4zSym zf@E^A_(2lGD;j=Z+Ywk@t%FM%16qYyx_n+H22YmEulw{@PlG+Fp8EFsitCva^p~JX zTuxHFz(7XHsAsb?VRb}y{3T*{Zt=a~{-#!uTv8luJ1CCH4(D{$(W!5cD4sE+4;c3fSj7T+s^Y96zE7=Zcm@r*drMLu4TVE5q;J^uvsR!6*H62D|C1eq??+GX4U%x*Rnvif z7+l&!$nLsHm3SMvtl-o3-Ct~d>jmhB-#~J2#fqs4NiJ9J8iz4AC1*Vib6cffKyPfj z!px^cgxLwv4W8r9Lsx$jGJ4WO$tk|Q;|1M0D;hEP=UPYRmC-3-Ezyv?xPiB=_M2e8 z8g&r}^mME?>WNgoYLQ?bsTz18VpML!>t_L(q&(_*THAQ5^JVw+g^*)H9K&?F@mIby zl4zt=GWNgNFQaC96k2wBspr9YL|opB8fHZ={J zp(y1!^}7ydFiwRM$`ij_|7&)x&dH#c0qIWj&dmBDCddeDafn4fpNCvGtugCxRZ5i7 zBYdUz67R3;vI8KgkK?1d*F0tuxk%8Uf{cvG213DNH~gF4*0@#X0$bc^7urwCm^(uIMxD z2p}Ha!#!T2!T@?Jc`1(|qQM@eh3O(3S$O|T22(1?_0(;_#{yeQzuE=czw+$w4IPj_ z0Sw?rWiDqVI2?`XhOUWtZuR^2c0zqvt0ATVA$(c-fKLl#bg`iWIeh;KG#euSJ2a2_ zgXaM7pYvyL*xje}TY-o3E*0pGyW*X|!jl77IBMNQ zUg8e2ZWY}JPrbheK6f&Hm8$+jO;Ta9*bM{gtzsXXzNs~CWb~Kf?GN$as~&kB@x95( z1}KOhUe8+&pM|xP{+LGnq3ik&_2~JHK$7W<+~CfP>$^GpD!t7){{RQned${J?gLq) zww4*j_n~*qg2AtGhP_e1GJS7t<;!h`@Av<~@BfzXDP-)b8ePskfARIS{5smbJ7E;~7%!jI_Hv2yBXfQ4O*otX<)T>0tIM_s2DVc7@|FMX&s@#0 zyR5Mtu|VtpQz6D}s8~J9()G8AuZMcKC!g~z{#zco`ZA-SFY;}1SufdBSbFcrtw_ep zR6la@E4|m>#sXhP|K9m5HkRIwZnyoz^WAXF;4l(fx0&!L{nPD?P2}Fp@WZXuqop2? zm)CKqv|ZF%0y$h&Fehz`GwM}kmD6hU;k^E9%)wk(Vw<5v4n3Ek~?o7naDl(>uyZuh2@_4w^tty?dbcgFTDOs#Q*){55HY$l>Yix`@p{{ zf9NNa{u%qR;_)8eBUtqTdF1PDuCI{48yhO0IhTH2eLEN5el5b-_w(={_f0DLVt29s zR2jZkjJLWUZXEY$=gXU|e*^zLbK}~`$H({muD{Tak<0zX@jmgcTG%}R8@u{$WG?J{ z{(JPIbA^AnpYHoyWc)vEF;Rc#mi)K;@V@^K?DC_>ttRA>&u@F~NngBpeDzwKTzM3w zGWXHn1C0Z7JDFO0-p^iNnQ3@@rT6o#t6K|Wt-aTmn)mIWTX^mO2|ZPAro5NRe(toQ z`viW1oOy1M<4PTHf#LcO~h+Y3(xWQ3SHI76F`Xl1i0?LAo7X(wdKl*^h@*boCZ(xNRVyT0rLzrqyQ9v zzML`n1>PVV#?pMO!Jjax{`%*QPaIwAe;mT&9*`lh?)p*SSWGWrEm7&k%FmfE+NAcs z!WXg=eM=E3H}2FYYUbvJ6{ndA-ruZ_ z{H`90tV7muO@oQOF#aC5hvTX-9YJzjV~i7G+vwS!<{vBv%z9A;NK~nq{7+LB}ZM%UC^A{q@l23IdUe;8(O3Z zI5Rkoy!Qx(7C$4wZ*X4M>xQa71zCuTbpOSaa&(`qKv>F?JTiC-!i!XO0O}hx6=l&K zgIK2M(4c#$6LHB!Nbp3mZ~||H#zB)l3t~hBIinX~I}{03YP6&+!kR-I6-nH&5WK2l zkl^z#j;?mqrRYIiyuh!lqsdmDNpPQUD3xjgvd|uf4R^xME<=LtK2A5*;^6C0bjzJJ zrivs~^x08i145q<69q0+uveA3BtnR7MWG@D6U3#D?s6md*tOp*4*JL-8)F1-kP~Em zcV~`&g>Rr+otil>S)NMqn-zJD>-LoG&L_gy!w&=RR#j}dVHuJjYT@>xc zt8j8tb-#fids|*SUhOD(Nu&dY|1RNUw*dGTY1@zlel_Ns0RCX}o@#JJ)Avz|1$bW~ zu4xi)N>VuF^_7ALVyBw-@!LqkVRE0%5^>a%YC3JuOfq{Uo3;WzR>GY6;XZ(FrJvn` zbl6UKAiPG2=ACSCv~`Yd zHWvPgKcN)-N!vz0tBr!MkAt0Am0qgVrSK_K8oLB_>MFqt>h50^P}*z&w+v+!n{XX* ze|E!xKi+gppM%P$nHJ@yBlna0!bK_tr3qA z;IRi#&}58|z!IlYFqLjIyx>`GLnfnMO@mn5L0RrTi5-Tq0XdaN&vLCH-zChyg*f;X zeh$y#4Ruzd0D(yXC1aK>gcK21=tL$CZg?9fcevJ?N!%Xc+{v@|HRI}5-0o~)3Ew3y z`4HFP1v#UxNtH>7uQESP&E6-bmhy#x|KX`2kQ0;FYA`HB(h^HA3gQ{#G`d4+;TSqrf?3EWdQCXuLjVpXZup@T z!wET>Et!~4^TCji8p!4#0SBQ<*YPDqt=RO; zzwspwH98C@r9m$;IJ%B{k2$Wv`B^X+=#S7-6^fq!xWDQ9U?gxfGVd&~JbW3?Iyars z@*r5q9?QsX35jZs7vD#vUkY^=_)h!D*%Hx?+m}59st6^j69ApX|D1;6ZZ8v7{-xr2 zh|uGvI=(sm=JZYAs^Yf=-dIA!=xHMKy#MP{MTX+rorPpj#GEvaZ0r=Y*1Jrs>-=&gK&z6Jkn1+r3j zpzg>sNSsf*iE%uGmei&i#K7?^mrcRa+jH*AsOiXN%jJL;C;FwUH5$n}-%Y~YI^zGJ z>E60eQD;hVzmM&}x_r3%TeWLbZoa^q?Nf8h=~|1{tH34w(jscqiC3v5RVv;zV{bB^ zw%has91u8`a3Yi3TLO@UXco^H&nSs!OrU@z9;hK6aQ9SjeE^W5R>Ga`jb|dk7BT~a zLb9<8I1(J=PV+V&A8Nrr_60nritSqhBz;0%n)z;$)I2lLs)5EWCt2S-I9nJ4de>*C zfe18-nBfzeQ9Zm)i_nNQJr^P~XFGAu$*Bb{%2{F3<-fz#N%Vn&b#UGFfu~?AUZ{eb z`2g^Ngq#k*fLBS=LP*&pHV!%zP`EWxXijDc4hZy?!h=}=kZI$O$qa@;=IG%}<#7=O zc~A8V=#$k^{GmVxGU-s_AZ{^j;g<`MT>`SY4wD&H)nXlP5&{LJ-OD;QO=5OdzrC>z8WH1>2L`Fo%PoG(>G=JB;aMYs;MD8bdA^!?;c;a6h|>^N(%<1 zY%8!2b_l9l{K%A+Xs53)$xfXK596&w(^W%2RJ2z0Vu=y z7?-Tx+B#xkXC$ysT!7qQobF{+OFS<-$p!~DJZUR9~`=a#SI#(;8Mh&V1K!Z?IS%E9RhUzOmoy+LPSe+?H##W5 zlp8lwW8(Lg9f4AP$g`E%BxS-IAk95hR+>CV19k#j1Rq<5kNv*wFED(0x5(2x4yV!y z3=9PLd2wzxU4)55fb;8=3U@MM;f-HJcjk(Wnct$rh zEU#~;GBL~id#V+3!w3>qCE{2m)5)j<`t7$eeA_N!ciLI)$R5xp32u-EST-^@F{>1TGUTa z3KdC}E9-SG<;@EG@#V(C}@4BwsC*0XYNlTp z^Q;enChX;eujsgDUH5xg54h8PJ6z;%+&Ye9DpZM?CW&Zof{n2-h7ZJf+HM|V86$*l zm~%6O?_|z8*Uu#x85#*3H1**tFK+4K!*&!_fG^rAs2%W|v%;m@ND!rmo&cCw2}yjX z70iL&0=IvW@!u8rB=1K;FT&XLzp&FU#iTi8K!g`+)ktt39Bu&aSg$(I!32_#Dht;8 zQ2riKX)KUzlJrF@smjK4aa&;AH5)u|EJK9->M)Zg5!J%%ic`!I2$G3$ zzW}y^>J4Wd3^bV7qFlgR&@gHFKkhH}o2Kx8r~^$Ur{3M4kcjQ!KjiKZiAFcRo8{Al zGgksVS!=*RvgxN;o=_l*WKO=z^DQWkQ!rz^9VO$J29qM&6keXMUfU>YTZ!}$SZslR zjC}sCtD$5JeLgoCBP1xrsp_|g$7c}PIcYy#e~Zi7-dP3g4td5!R`wS<(o-Ucl|y7J z@s1YMpw_mec61HGB?+ciOYc8ho{&@4r;ti4h=32@DuCOk+Tp^Ie=6F~8=l&j`-_-tuwORXKE{W3bGV`*_ zl}{;r*#upQ@Wnt?m-v1YHlKRW{W3=VAvi2!3}9H9=F#Xbh_I{Y8J9B|W|Buh(E9v~K+zNe2=@|&&SzMn~;uiu(l6na^nz??xq=vRF*DuLg*~o^;?eU zSlxk8q&kfJ+%8!0jX3KxIy;=)tO$!fbBK&41}C2I)K8~6_!Jn9D#b-r9cSSo4>g2; ze{1(8+_xv%Gjgn>3v7fy6zRtS6&#y6Ii}ORX^UvLOmoKU?2l=lqvk_aV$uUop;JLH zN7$}V6~$c(Rr|&2sdB9?RfQ>vCV2Ulf|{n~DIke_O}P?Q&Pp@+DJ)NuHs&OHD}TJ78E|cBf|=aD=6*k4EwBmOeHM4vO3QU zhllntTt}TNP>7u=6#=r_7`-K8fD-McIHdZ&wfaVh1fuMRb z!cFg@GqZ*38!C3hb`O;lrqQ#>_=(IcvNo@|p7gv-V{349%`~On>K<*Z(=KPn;kDz0O)h+CxxIA8i3{&rHcBUq@t1BtgL`%gW4YU)1zu|&X zGg7ES+^wQj!ya8Xj2+b2=8Q9!VEJKJ*9^=$M>E4&(dJlvM2ZFxlm$vee$7|AEp}7N zBU=yc{K|)B>eYgNM`g1<9I3`x?#f@~SJ}VeMcZl03+A2t3{P@-e)^`ug#%`7a0Y~P zTzH07nY*Y3S|9aGcUHGR(4pz(xA?e*jUotZ=&qN5m@}&dBP2qnrq9#v3&lZ01(;eB zG`F4%+4n`FHN$p=Pd*02bqu=sC6Ow>FZ2fGX@T~%+Kha#d8s9)vCNU+dSk@FJLRY@ z_QpD?Teunpq$w!1Ccc8@c%-w-V{^68-t3pJlS%gb*9F}!qezL)d#F`iWP*{tFnw3&r>1WvN(M>$lRHqqu{8>a zhEh_b*S(?RX-xmt1|75!G^L_}ZtuSMU=c(|cf(y70UIYw6u){TYh|mdLX{>5NTLIb zo|yjM3<9*-j%biDBr&XP-m}4=GMMax5!Z)liZY@VIS6Q zCF8r$1fjE@bwC9fFD|8Nv^&C4#0dHbi_VwNNb$hPy@EaHMRf?#*lFJh2SN|j9G+7y zH?uN0WSoc*LT8RH`29F{lyE$SQCbzw{#P27E(Sxv%$0xBHWT8On<+q4e|>a1!t|Z@{yG zc6<%00AkK=!%csvC%YGM7m+N^HM0xGlCTO1kX#_KpCWIoz*%HB0IW#CDAA$JnkvEr za5b7@e}qMNqP^Gw8NTY4i27?>|C2`uxl5pJ@7gt6CM}&TN#;Jcl@cD|A5oK5=i`yq zs&h$ae?2_&SU24#Nd)Rm4tOr~OGl$}M1gC>e%$Uv^$QGNWj;k-WtgO0kDN#n3^a%o zkw~VSjjzdXqus zMZ9BY!H%R&P{di!jf=2QWS(>&yitw@X?iSo>%7s9f-4H@yf&e=5|(zIxL9GkUqUDm zmYCVIYiQS6k)7pm1+JB4@*G)p7e6q$shFdJvJV%}U1x8Y@4RVT8-zMJqDVdsk^dgz z$DvuN8YsQ3tn%WeU;IgdvN+oD`@oGDvPwe81%LPz)UY+py-Y5Dq;^SmgmO`DP0GRTu<0z&@=S;P;MHpCxz5`%-l$DJrai)C)3m|E+4<7WAZ%#Z7c;B z{CQhRDWF!cbh8CkLFn9wN+MF2S)SawWY`RODvYTE z0YIy<$wU1RA)wK_0;5uvEC(}oP%F7aD2i_?U=lU)PC{7Xxp4KNc_8`&SLT;1|OLquXkb7Bd zSN96D94!5vgIi3lwKegi7;S>h^41W=X1;n9UFWTHBkb(zyJ8DlE`51)nu!*u#b%^R zW!8vq3QI`z;1yzXFDjMyKy5pbgUG6OmMp&Kj~ZkeaGio($SZ~l?6L=@3jHB^ z9u>jlnG%-5w(!!CKs8W3>d=oJgTQ*2qtS_OFRNCq8a-u4&#bMHS-ll*l-Hy9&e362 zQJ{&6kqi;qp*KMXmH>N@V9|;OirHk?f><*02NhsBTCCivXNIcE5ESnsc1Nb}8lZ_* zVR>$@q?I^VRqYTapU5|?l7kMhaZ+SaHwx+^U;_wl>gvW!P8!6tbr}7?J#AoC@wo+8 zGW=xOv+m>>cYX8uOkCAeeTxTIY$%!!*HX9Pj9`nF)t6!#M^!yjfl@UP$~{{EG?&j)Bs!rB*BD$lW`;U%hB-0b2ks)=04 zpAqR<(OKSrDtL0%n1JORgu=z)g;GA|i3%vnVmj|NmWqt00i$Th(~$ys6^xOPgffvl zlggFgX*xGl8(SeFoRkbC7pSir#*1SFbi0sGHMonohapK2CYigUz@WfL*P38X=Wh<; z&kCAWRU-MH+nr)Z^65gk*HRp@Ucdq17vAJRP*I*I#M787-E>HFL+A@L7?_cNVge$6 zWiq%*?8vfG^x)*z9UJv^1ayd+aw5bjtJEFj*6orE#SAlKt&smzkco-oZ; zT|_)|dqFPa>Jl}qVbRwlnQaa0jdbL=0$ex1kMx(|b4C>Zjr(zfqBc@gex@+gmzUMd z@kt{6y0qsAxdrXPBSns!HH}R)`NG*%Nsk&q;9g>gqQsxi$@SbO!%wfs zucaSNY~MJdtlz)*U`KJrmKTs%d7c!3_a*ye)2yi$-OQ<@vez-FJnx1&g?@=mT=(3< zPk`cY6cEDz?hY@a6RY-|!#AK|oyT|~L<38r7vOQG9OCv8lB-g8!&NmJc!(tvXdOAu3*OI zU#kPNYa9-io+7D^WIUa0O%g|)_iUJ%&9K_sINN0ucYt%usWVT2DHAD(Y?Xu=>vbV{ zTX>>}{kqkefFrbZ8uQr3O?uHTo`u*ePluV|(ss>-g4Z6*J)_#c6dN{;{*9%nQ7`AaU1+28O=F&BCcjj-AlJ*h ze8Ofw%MrHRdEvzeP4s&1dNi9qxzAjXPf3e&8m%|Y^!=K_`qhF{t1a{q$myUj`6 z*3tn1DSu=KqRr(o3_o52GWj%IXXmK#sefIVJdIuWK&UO!!})qUngm}LSz7}?=hYy$ zB>F6}PoA4aCpv&yl4msaTvHr{deOn5t1()^3d|Dq%`wH-N`mXTND&A|eulQ<-(r2L zg?0i2z(=wyLA}dY3C@>CDBSfrS8ifa&l+?7=d!QTCf@?S9|=N;h)1HLQWnkwaHd9@NVK9 z+GYMhox2$9K}+|)z=>iV@5Nu~W8}5{5NGw#TdEYxISO0wq=nGgNUp>ft}F<#ICK)v zHJnEIcfE0f0=OcxrI7IR!FO%1h;7<2SE8@w>ataT5L2Tsw1A)C6P&CWm1sD^lCLDFTYSV8zZkrtJ@wme^b`c2q*W8!$`Vvi(G|2-29Ko#wrPOhq!W3aYT?qX{3HyWkYQ*Zd-!Ye?} zKbQ{RFaj7IvYTwnBDspEfTBuJe<{j+$kE$6kmuqrTWd zqnp0tG8ArjU=xQGabow(>_rUNHq!4!X3F1@8MhC9$d}t`;9GXXukA+g)G3RP<;o(amI_F*^b0QvIGr`;DUB6Tic*pV%mcQubX zFaVzvhybp!1kM~J(s@P^Zci-)nO~%%5L01({$t4U_8lL1K*c2ilH~l;C13t@YLdXC zSfVHVo#e7k00$FZZhy8z=A}+R;zARZ&#dQBCh&0_pZP&5P&~(cPw3>+U7l z-#)vTe`H59dAeQgVXG}<$}|W-gyi|j6wcBX<`DXSJwK^YWn!wlvyVIx!hDrSjF+`c z$dtMBNqz+px~yHglOEpiz;f}n;0oZpy+ZY*H1T0}XA;3qjzL_mbscFM8tuqWYePi{!k2WhD z!w7mx2d-=*7WmS-xkgfG%r!0|Cf^lT&($JA3(8wg?w+5%S)u2H)@?SNk#A9%A8F9Y zvk|xau!)SWI!O0nD?8%e=%Cj@kL}*WQAi2ZW64a7wAtbFqt9=ilHJ$aW@TFX~Z3a$?FUmc8 zw6j3@cgin`(+{2|UhoD)Re-&JT$;QvQ>|`MHEDPL+zPs%6wb;dVR(|COFx&Ukw#b% zl&2C(+DLEj0_hpaX=Vv$)Vbp!2_psPC{&EJW1WW`wnYKP?Q0Q@hNb-}eCV#r>k!&GU=c$K>KHpK7Der4(~dT+e&)Q?j(*+HXz zCwEqD9Y5;Z-(mlcxmOxA9F{*E0^f+KT|^v}n61eNn}?`#99}zjdN!E#+yZ6B((Koe zgz*})L)Y)eY_p*KjO88s8xq`0fky$v30sMC!!{>nF9YU^ZUo&}V%QWSi` zsg($;gO&T+{ysd<$>ihVfePHE5MpZbD_uz(Gw<2eC?NS4%WljDJTb~oA>WCrsEH?QCK@;I+Xe?4dd10=3mHmqS@-mxoUHWOcIHJ0Qy&Mfj)Bb+&@6YcDe1C3HgC|hV3 zu5RxVU%q9Xgk!AHD4sb@POsj%F?5kR(5C{Q?t9~wjo%6Z=j6sSTHwCx?;46`EzGKI zw0(Rs5E*8fhz4d67OdA}L+{i!vz_qJw*ojS(DxAQq^FnUc|Hkio!>z@q=?!7RQt>O ze+J-)truPoszg5SXy5KYCFhDkfkxudCOF?SP}rGwVo-6u zGpq_%^DKE2*kz@MSgJXJ3BJss_>FgG^3Znf|1(4X|J%7~nF}}aq`8>%2;2U0lPW(A zzs>Wu{?VmVmS;3LYK5x|&t152BempgasG%OwY>UWlJ#Y&ys1NRJ%df(lfSb+FG>8} zEb6?x`s>e~8%T}on62{1r@HKAM8TG1)bIo04>4cmDu3)Pf6R~H&EWp$6%yjfcOM)R z3kH8n@I7KkiwG*g1rq51xH0G@@>~vFSmyG%jKs8l83Qr4MCo)k7Sl9Nnx`BO@rIAV z=F?#Va*`G#2U5$_Wx>Y!dzL;znK^u`X}NzF^O5EUMlY5D-WKHa+}r^GN+*!&p=JJi zD3cZ!c_L<~V>l;z;`vS}!T}U-_B2i_TDMnV8su5htM-8J&R>ZsQo~Y*&fl0{|7FiR z+(#7WSntLUrg!XA#jpImbL`n}^dm`LvRtO~<8e<#R17U5{!7{cL-usjo`*lR66t8n8V z!cm@{Udql!{%TRrdL@S?p zEqkj6x7*Y!F?F@amsB4^^OP?&RO|Dcx6*{^H5w-e&!eVsm>n!NXtKbmq5jdN`Ar~o z;3D?4HH$+aL+#cb{cGjKw%P{e#NT*RY)WnRhT*AAUw{d}e_ohoTi+`Ww-b<4#-UbMI&^2{!oX6Rq?+j4Ffc&R*QY!J(UI<>B=oiI7`xwke( z^Ja4^Uhl_0gV_1nwyp7?D&{J1upwYI(!oKvRlV9%Kh~mfq<_H}TM3qBWA?5F73`pH ziE4|0G)EPBVn$kjy*I`yg>LP7!A)LltBv#cvdf6G!(9)m<%>*se9R)k4{(q+h3P^v zR;;}x(ptf>n|JPEqe5-T^vcxzAN#qFUoAg2NX!KnR1nBKMbm!6M^@5YgA&C znLh@=8f zev5(6T_wDcO_jLk8!#~D@?m@jdSzQEAQDTC2U-_@6OaOn7EQ0Rb!ZovH-32{-LxxdHncW zS|M5g(=)b(JQiiV^P$zC?ttWRe@^9Z{ow8dg409`7w-tj3+n;P1XUyjWw^SjzKsY1_ZVl!aC*JbgFd_Nq;d4P zE}{;b@oa6T6cn@cY^w3UadkF4;K_9cPY5_37T~z$&#i~+2A>-2g4!M;a zr)%`iMj!D_=6k;7b$7T_74@Bk+y#tb7*m+b_tG|1|0|mnwZP4$I^pI+v%0xrFS!8} z7OxyC9ZXerO*yMoVT7H%72B4FGOkL(7x(0*+@1-w@$X?j7B$LC;L{qsns9lq$LurV z5g~v9$)%-42LBIg9+0NGMG65tOOVpt*i_Lt*^<8xkMvXaFK}$_Ua>ac?6@z$_`4HJ z`i`u*E43r41WdIZvyYJ?VTYP<3gvVOJmbh&W-Gnp%YI07*VVu!f5_tNhm(<|ZE6s| zXPcQ<{Hlw&Hb<|kb=2@y`5gCtyRAp;{h&>ao%2DaD{`kw_vrn4A=CRrN@iN9wBz&p zCVqaWeE*!u`N|L#0ZQfz?rf_aak9o-VC7_wef5Hl`&xd(#cO67UhP80bGS)K2!1#G zU;(3dz3`Ssb|K?uO!LZf%%c{U@;&Eny)_Ac71}MDW7?$Do6UQHl;&&hc}3mubx0G^ z^C&31^uecslIM|KgxiyiZ}HNvAV`mFh{j-s&iBE`S>ELn79^dV*ehMHevh=nBR!V( zLVuM16>xF8P!g?rI<)heAVt8ym zZ6v!ik989!LD?0~a38kG#>H<|+#@ER|DQ zF3!hX_3Nete&m@wbh`h0CNjd0XyLcE8~J(+vo!9ksdRdQdi`N6yd*#BF5uB)VmByd z>G$>CttYpG%i}WN@?6v*hVD+eIR|E3qj|fu1OC&#p3UcGZdJ~_3@s~{%s!sa4tfLk zC$wjT(#J5GM&G!OVy+Sc$1u7Q5sU?U0mp8H9yHQr_Pm-_x6=M=5Y(DmP4ph({pU!4 zLY8M|*v$~9unsI-|B0OO(AYh>yt=UpuIl4+SertXRA&9pp>w1oavAWmVb z9^W)@^tYSHcu|<55B3`e=Zc5U^A#QS5f={$n_&C#qe$?btc`p5aRPo>nx;QW8ZKT5 zLCo%pj!&EAMB=TS(sm{zqgvBv%>6s#?3X?eY8WA~pZ8;E(J}vltU2|Ha_JZ$*RkpS zz|=DM+iuCnvm%AoE77=p(eQ_n7?Xn1Z-6plXT8jB5O{#`%_qm1o?#bR6%AAUE_z$` z;km|dw#cxVNlA^h2KqBymC{el|0?mcp)8;`M%-%*^RC@+#d0CWj9%c(lnJ!3m7Yo$8zP+8+SnjOTGohE( zI+`>$m>N7p$$NA`9f$(*{> zNy*Hvr%&H(OX8QAt|@BLdBVY8{k!2w!%v#;mtWqMdzwGppf0Dn| zVrm5LSL{XIE;964(ebseRt(>S#zOSJOT~cW7rLlLuo%d5>^yGousK@|ZeI9Mq`$Kf zOwF6M)T;F8l3e<5J4LH{MSZnQeRjmypffPnOxj&K)W$n#^w$$X%cYDw$f#nyrf#292)8;R0i!1>_i)NIi+Iv#ptYmh!R#b`wQl*Y% zZx=C`?bXgJ-jhrQduIcDJ_}^oiQCAO$vPeCg$Gbv?IWcAlb>CZEri~~|EIB8yG-~P z>6y+#fSX6S~S8e z4$t77O<|*{Yl@qrsZLW2_;lU+>*1v}E4%1g`c>qTan*@o4|wy}7ryog;qPW|$SZ}QYsgmBqYm7a>7|u?%b}}$T~)!q?hIU%dy#>g zzq%>(Nm9M{nu}6P$aJP2LgT)fuA0Z3#x;1d%SFeCFi~Gia;Mgc%3|41?7C{jrB*Q2 z*~qK#Az|+^F`E~)a=oEtr`rrVW(@VwmCwN2Q3}+@Zc&}0lBXeFVk`*TC}cM2y|#$g4x zwycO*bSiEfl7HJF=U-XUrAv-k-~B9Wzuz?9Mb6qs)`=Emk)%FH8B9&G2v|yk|bka6mn3qJ6Y7|*_t!Sd9R^@{N5oC zf+Vz)q#hNonp=ZbT6=8VE|ii!guL2)ZC$Kb176JfLB&)+Gf~vF6u#28)?Q1ga-wd3s=_u;)7xX|8Jm%gOxD;_rHQsPl(BJF(L!7jSTUNr25;6~P$ zdVBzWf9DwPmDcl^co3M`0exMG3;|?IiBDC&8C5OUke|-l43YUpEu4*=H7Rz631r|og=@_<`r7yrKCHz%t8bf=PI6| zR$gUU(y5&-)M|M86OATSDP9=QpP!8<*K|E(cP1(y4o)-ap=%~lH6;T8HNyRJ;poMW zdK`HAs9rUezL*JnU1_DJ6%riIP{CmWqjIB= zy9c3aqTO6%cjq!WKTn9+4)C zx|vIAVh5lyMW}s!ePt7pxO>&n3$VH!n2Bl^MTUR*psi*#<^^m;=U}ne0pPB#-D9TJ zZ1w1BWN2uV-`ZqkTjA0Xo@!Ft<<}7=vUmviDAT)$>LuC<=Kn*Y_3N{@V#)Q&i`M%d~!OX7A!nI7>7PIFOa#^uWL$w%Y1jds6p9ej_#O*l7i z2Y$2~t?^TYM&pA%M>c*d=vl?;b>Vg+y!bU>%=ux0+E~u-xO;v_l zcuy;GPWE*V#<6W}=kObV9t0K>C`}t`RWb5c-HT59iKjW?8}I8vw}+WBvJ}UCKMLK#4S(Ey68CnR zx!#)Sxz-No9y%0#Q5p8J{En89|BBZfBv6Q|kSi|zVg2Aa!Lu0jaudwI^SI6_)WU6m^X)xf-IRj*qq01sdz%gS$vKC&6cvNmK{HIH+5F-V*pz3fZJv<~iW^0jEYpum>mTT$-hFXkGm6xxTv1 z*S#^P3qWd_(24B5vYY=z4VPLTeblAnJ@@JdYmm(4<22YDAkNApH?VI-WVuk%OH0Es>SPlev1bm`L_f9L~M6ogV!?S0{@u&n7#;K8Q?FB zu;drVQ!V$Rfe{AM=qfc zznl>JR8T$oQ-8=mJ$V(69ayi6R9FyUxj&x2EBN}h?z;W%pT-aN+rgmI#BIAM^0mII zE^i9(34LYsh!z=pqHnKacdaE}F@^DVCgqn+OB~e_enLE^-@|>=4c$4K6ZP#n?TYHT zUNfCUv#-H_JB@o|R}2b*T%*4`{OK4Q^tWYS5>B&+MB`r1?u!(go@j=FPJk16AQB8K;W-*Spg`>i12VXj4tD_*YGtK&9?z&)Cu& z*bbtfXKhWJ{R#Y_-A`INLT*<2>rDlk^k;eY&MYwZcJVO>k&*Etj~RX0HEnlpZTp*% z6|MwF1=g&IDnhQrhr6lpi(R>TPlEwYc?0$exEk#H`qp>9hdm}eCaSL^!yDkCyT^#< zCT%j*_5F~4fL=nXnwro@oYI{2^X+DLH0FNvj)}jL%k6xXJI0=+^Cs|_N{iMale^T8 z^u;9aD%MvOem?rNW4rao>K`ZDgRfbz2F40|gRgt>dE>FX+m7c=+p$lRbH^bU#>ATh zT#1LCc?fF{r{YbXOc zDnX05?HlRWfAG3MxgB>3+!mP3<|pc2xqHvvCv-0hB!%7G+L+l|wGFR#^dnV^hfiT@ zuc_8*+XW@@hz5qQhCZtSv$o1TsX2&q>t}#mS>cbWin~YasE$PO z-)kqj^L_M>z^}B;00oH!RpeZ-;X^=X3j0E8N4D7aQrtJW?}X`r9_;?7XHxBdv)zgf zfBc3|Z{1>i?@#dzPLsk`KTK? z);7KJ)}c?=DAv}xyiEsBk9u>*;p3W32+n@rPLigx-u^x6;ElU%F9@8mGPZn65-%{x z#@99G9m(;1Cfw`mC(B<)f92d_Z5obSCjC{3ANq7o3)-y{lo$d6r=JsLqC(*M(lNIyu7;02~=tS>Z;l=)uHp&dAs5E+dGLD*Od1NS@Z5n z(yVXyJ6N52!-ifNo%_=8-JzR>!W)R^3iMSM=8d!ai z_-GUIrB~37y)=xqgh|@Am(`9=;C1R&GA(^D&Tiqrs8MO_al5Kw`I9bhu~hYiO^0uZ zpEbc!QBeFIotE@yJCKhF!f(zE)qrc=E(dEEB;_07sQ7=NF(FAwla&g0K4ktI;nVX$ zyo~pCxxgheRG%i#LG9>a<+knVjd=MQZhPK8F*R>YIK5LJkR9v%F^JBRI{n_Nzw->0 z^P;y~WodsoGv}gk%ddZVc9LcWl2WbwoDEhp%>}Wf;2Lg>!)D@obL{o=&}f7Hr&2jb zIJn-!K$JeZn?gl8IQ)&M3 z0y&>>A~6a9~0N-LUO!a$C-9`TpPOZgYsQ0L717?Uy8Fp7-m| zW-rtL%oE*PM=CF;-=f;P{X*#iE}j0a2vefV9>{Gqz=0!al2b+Gf=wrXn=w1B*7Rzi zcWoITOiZA*UE;Do`7f*(@#jl3Xzh`hK*p#Xb}VhE@5Ajj@qdeElhv%_KeR)0!Kd#9 zd(x+{)98OMLTk-|wL`kC-*5$W4svw147vV#C`zR+4UK~_hmQGvT8i41q?<)z>R=gX zE;>o0T8`9ZD{p19Z_DW`Pb}ELpe%{agsx>&$MtvUfYYdB6BlX=rlhhwH}8(Me-SHL>A?VYsN?FWwT4j>*% zJX#D_Xpn0G4Q14uG!2?D<~ltn+!5X*MZ<)rBkfl~m-Kf)Qjwz2*s$&V>|5WMeW-qn z(%u4L&UBc=Q?%X~nqT`wt)yUnJil^n52Y_DFA*2;ZA^a5$*%8g>L#hqlzE2z%XaHx zPb-{S60V+X2+uA0&0r7U5b$F;HY4@F5Dv{-FYuRy?EGWqSBfEc=37s&xrLp z3vXFv2{Iy9?84fkybZf(^+`)dyEyLb$MT19_OFa_sb0z#|Kw-&d3|o%Lo}T?#lp8m z1Y^*~%GjH;miO;Hio1}#_;rWig62rQcG;s!<+AUDNSb3E#?z$qjX6*VQeSPOq%+po92&xgCy^ot{%q^n1$%sjl^J0kJ#ZRt!2uGwI{mwV-K5_|FF*P zeKpKx_FzKpU%oX+oEDq_n}3Wq*QiuDTi=?qYBw!6DAP=QG@wAE(lJ~VxJ9c6SXrcAnFLMt;U&OYQgG@S zt+KFTa8#`}Y9PRU$WlWfL&Hl9G-X^=V%qLXP5Bv(&~P^LksE^8v_hVvJSUEO;J?1s zEKeq@abcAf(GsR1o0TNpbbWgAH8$_M#MZi-$5@SisV!7hybJQLHwGGi7x|{&p3~K) zRra?Za}EId3ucCFpIqp~hXh*H@$A|{WY3{lnci<<_DR*;T~$d&>;%F_~nz}vOQ;CKWWrif17Ti>iA7GEoBzq-_JW_z0;;C zIIZk$&RLwIw$mb?=vg9krnJi2L1en+SqUZ+h8FK9{LA8yfbjw8zgQ#_5=IpaTX{fq z^_uNgaYQp%co+w19p%agr&p<9JRFP7Q-GJdA?ZGO=PqLXKqEAWol~d0lea?tuyLyp zlqowW8z&c?qhSYxv!*fX>I#{#_wYvza8I`_AH$+0+)XIDNPP{Lz2Oz`DwM9Dl-4=V zTjf0l%b}CNXuM=SUk6D905zE>QED3;e$nE+-9}_-F7PzRyP}0P(TZU;UT@|q5vg`X zxq4L^G%qEMqGlg<2o{zk0ue(D0teMSJ%>AM4(nXW_NR9kqHDoMO$CmGr^_i8 z$U?jkCZCzRD=#bPkdGdUzd-&QMV`G>l3_~Mt(_u27lAJVlHJspXEP&&IbVCfc4?tf z1#4{g>YsRBP%%)Z?q;Mtpp0fzi;XjQNmj;X_w^#2(CWc_qo^Zu3WbP$BEmC~N{RdGkm$UY7 zBICzlwY#W)K&;yayxACqyvh&F8OLX+KH51{aC;iL4L&Dr|wEAX`SdXNK@J5r2N+ zH8q|Wh#N9$m+sCf_5jP(lMBqONqnr|kUxaJ?2Pp~SYjvduG-9npRIv7xQ`K^D?ECl zkwljKDCOU6GTX#nso%9Scj9gTFM!>Gd&K+#j7O%`hnsFL^5$fapmr(Fikr&g@(LlT!8BQH?VD0<#{S7HIL7)JyrBzwWtKh56qH zxpr{Jw;LzK5X(^zk3VV6pjKHKn5^JXhF!6_T!tskL(aooW`x(<7+3%+fKilvMAQ|; zME>D5msdm|bxvfmA|cJUsG~Z~VdE zg1|LVlE{dJ5tDAJJ)zEcLEZ)AptMq@nSbe!9&1ziXj@?ISKJ+?=eWu7+D_cN%?0P@ z+E-iXRgEgboi6Vl8+llS)^HbWm5s?TIHxIo<{?-+cVH#Nmu=c*D$=%nYNt~0TbPFe zqn(SUpz&xkeOh*}v`nu;H*+k=x5G?*IKuXPYk!^}gqs<*SD)gtlOJ5YfYtva?<4!) z&O|7N_(`b*iU+2X^Bf;}H(@?RC|zs?*CXFpFt?GG%v5t|vTkeb(m#XZUa_6=;8}inat5dE(i`0QFHZ*s6_cOs%B2 zzXpBu3c966^VMNkiI_YkjceidQNf%k4P zexvy>KhZ~n50$_Azbp117tb_`4|pkX=&AU#-$y^gO&A(a4KVBs@v&QN$pPk1`Nk#r zV~W9MW>er(2(#G!E8W6#S7FMEI4yJzjZ-IUhscc!uPP|%LD9Upv0)Z6^WwpyKG}S7b4d7Wq{` ziy2&9j(&N{*hS@Wmh8hJeOsB%#3-e20Ae>(*%M-xF;Hn^d`_%k_#Yw zId#VFYM5TFJwXHo-3Me|@qxfpG~Poq`~79jfdr2XLXLN(QnAsP9Bt?yPAq0n*dr4@ zEo&tMO#%*^@cKjKCPN#H0%Zdb&C}0duX$zKWkwMm0i=g-ET?7W@8V0%p~lncDhA!F zk9zr~$mh?48mgM0Q7udxaIB2FZL-7V{7JT_z+7gIJPhE$_DIZoY(U)TL7fl904<$ zdZplw8+lb^77QqG@XRop664Be+BdIOwID*Yh?`aO!o`~B+C*fU9~5{2cs&(hl@OyL zSk(pv!|6l7d_Ci5foe&GjUPQYmZaIg#o zCSON14W`Qb=<%9(95T$$PUzHtT>A~i`JJI+gx&R`Qmii&QL!y(cMPLdmd+Jxp={4$ zf4{05;re~v6P&n{)cdLRjnc&bW9z)5l5GD!-qY3`IZ!l54jh03($Y+O5^>-JS(+n3 zN-0gvJ@Tm(6;~>_%F2NQ96_2ZD+i`%rKmk=YUz`frfKEMw0?a5|DD6(@W;)$Ip?}A z?$3C?U!Uk(7vWQ;fKfYzyJX;)=7J;iFW-}TozNOJF0u^|8)M2wmt@MgpxA%Ze?Pm( zPdI=_NAKfh3E_OD3mwZK6Mo!{Do$!049W+vRD+x)#S>N2kg@-263gW`*>iT`XVGF8 zIEPukG<#%rFL=`wK#%a7u;FBLUNr~G8S zCQmMvXIXoc^2Pq{m`dPuKW;`5V4LQh;}M1B?l|tfm#3S4!01FQCLHseGjJfJTx^~{ z4>3Z=tiH35FV@B1I~E;F->{j>mRQb4Qukk8}3)?hnH{^hB;N{sRR_c5Ka z=SFzd+#>B!yenR6kOInJo0HFZ-v=mLuUs%|bAQP*>yS(Dc-iN4usG)7$RlSjQ=514 zBl-|+LU*#EATp$!3O^L-u3Yqu3b}g9$G)TF)#HJZ%LQ^L+7HLlf5t1N3_#LjscBi? zu9PRA=vbj-MV8|SR5`B6miIQx-5;h;TQVl|dhW3;^m7S@BiE-RiU$W@UVPMvonS7d zlw}PY8ZtIJrk|Q=cr*H4qdx!-tz$v+_Q3^|u=$et?pE+NSxpUt1 zt6GS!13uQ&dLuh^t*%6-PPCC1w7!5vJ1`BJqoD5rM_5>Yv-tp^Riq>L7Hekq)vL{>{ly(Yud5%U0(Y7&Do{Ik$+lU z+k#<_&pPJw*DqO~v1Qj6bapI3<80e(=oQC!18Wf~c#^Q}k@f1HH(QN#=FG|QX@isD z)3X!sgeY;#pnr9I#Ej@Wm(KZozJFvu*C|W09cL6wC_$a(&Mi}r26*jt znjJfN6_9Y$2nO7IN_rSecZBk7tsy;Q4s-$qHT)KfpNq`AEGo}56}t9LidWS`k! z#*Y6AV`n_P@si_p*&0cQp?Cs!V2&uMx_JVqBb$F2?E`fiaSHUuOTsvWff2qja@SUt z$1=X)m)fg!TgEii@GyO`N z7pQm#_*3d9;fRZhcWgkGbvrJjywh>Z!fyBV#oIobzojFT(X+##dVRYC=>f#@mIAKh z61t1^{hrQ&u(X+7f*uro!>Ja3;DXlS-Z7|nG4qtXuQ=WsD&9$XcKptz61Vzf*Vy&u z^XC$iZ097cI15`H@}XD`((Y2~L(QFll7A;5V_KEtyVp`u>p@;*{O95%frJIz>c)A) zO@0-M^#0;A>#Xpkm9{*r3v3HHUMdM^#UZD{tM=C)y?2S_>mXVEwd%sXDD6oPvDNj8 zwp`M`(wWm9x>f~*B!cX9`v#)=o?80FV`o_8xko8ghpQ^hy=R;B#=4z#556Ogf4$Fd z)fGbW-pzn&$Pn%5o-@!6Lo9XubGEJ6HNaa_)J)kzFns!aFmB>M+Cr46^SM>vte|?q zAp=?yit5W&>JBnDE*(4g2C9yqH7`_RLesU+U>-7anCZnJ(bRVEaD^|!?qT-PLdLS* z=o=GulNRc-hl)vgB(XfqQwv;6R+4Gt$iwQaqpxcfyzUs^>6GrdK9T2`e&|q#ed4(z zf1l}3KwlECm|Eo~XqR{X^!cPzMN=m{HtN-ABg}~nvy&$v)!B)W0;2%DTVXCmYsR_| z!HuJ=fP6lNI3Z+wA3jTP`0!1JFQ=-cTtwE{UzmRQS@s<82Q^>p3_xqGx{JAC9XF=_ zFvlF7whCgfe_w_=P>0g)q}ya7(~ePW3e%EU?Rx`JJ&Y+HzBc&%l2%uH?)3-0@9g`p z7S}`pb+7-7RT?ZS;kt?bFxE>V@x z-TVjkf&kAH6I8EwP@W!3N%Fc~5N&wQnBA~Q#s2Ga_`YzT(g6xW-$Snt3QGsW1rp){ z5VJ73h>}`#yO5a&JOO0pI^oC?q`q3~&YTN6@Q2`#G%Q;bl!=UuB^QqY~@{ zkvLeG=~M(r^ULp-v$_8%UA8LD-=FiPRo_&Gq2B92Vsk)1EbE_sTN_c%2^a8W`M^p! zXd$p%UV@MJ5dB=9;CYdseg=$*%gsoImR%Gz(2cnn*bGWq2J8U&uN<-h437kMiquFF zJ+&;+&II;~kx;!T7`^tPen?qZ8cQyz+-N?=lYNlR)1tcneyrK6x&1cbJ0z(cXO}uA z_A>I=6*=<2Kh5HE1;stA@N#WGrF@b0|F~d4502tP;HW;DeiC21ueKLS&3X$9_s`jtQLA z;y{qD(sN?p$K3vv(3sZ6*2Kb$XW(i1RnVgey^bv3LBUgK4ykbV$r!4DednNFm-1hu z?p?$VCX{@%ywmO>Ub{m{Klr(`UYAG){SuvFD)!()y{f7GWV&(v8oadT)0znGE*b$=r4f}5osVOD8~0RbSmccAL1vX*VvYC z*~ALI?6IU;k zuBR3Za+);T(Z;&6PStU)bt8r`Fi?+985|E|O<@DkkC9dfbOVy&v8!V>3qQW?lM38lP!|UGiUiLB@~H79)Z9aji~CSfDhyDhD3mLJ{JK0K_4>_^>MD=1BhC|sOBUwWVuCWw9Loz*>osT2 zt%Q7?H+;#DjyDZk!A5!ZWoPP?-{B)2cBw2#2Y1}IT@7Dp_0_}S-5g12~pui6z(|}kml-|>0i&W6T7>f)iJ7vOj1Uewy7F!gL3~)&HRSZf0 z<$f40qFNbO$Lm(98wm{b)fwzos&!XEmS7ckR$(6|$a@Z|ez#nqki3_YU0PkotLQm~ zeKK}rzI>~KG%T||@U~{Dik9pB}%*g5ZkO%OV21Hf+>_+U?&Ymr9H8qb@s>Z^S8jx}i-|1%$o__jO_%ww<9AlM%jHhi zsK^Pi1RzBx4bn|=ceRV3@NsFP1^D@vuSk++(MyMArVb}&{_1eEdVLa8>7PCaj%+_3 zD2LZ4-Xv=PLCJ>ld71_Po~-;rrSeZm@Ms!zf67gd8^%3&lv9O&O$RlnhS=DbZ%x)N z+O6gl)4NzSXPlBkk&{1BBaJLU@4R_ehu)B;!;}Qi@iGDIa%gQzY>=6KScmY&T4tr& zHSoR9$SW4e@LuGAI~M=901qV^2M;5jI92e7XbU$^Yp#NRRq0Qm1#9PzvX z={)zn08SnkvLB!8KblFu4`n~kpwMtiM41vV&8nqzPnjIw0SvR!&A*GYMzkIpK`|>E zyZ4&}44>>(x&lF&(7CqO&6gce@7~)Tkw4Fa@@^zZTmxij8ngQ{9=tMW2GnFeHu1~l z+BS+vQpltW`0rFvSbnF>8<|u`WM;VanmbVHcvWW2#B>=ISK^ihz^;tU2?B5LwDW9v6P^7e{-qG zJZDqIz31r@nK|htuuPjKv741e6o`bofx=1KG0)^6TRbI|8dw2km~;cjn3d<*N}$uS z0#v;`sW=bF@&g`{)Pv6iyg|0`^!xI`^KcFwQe^wj;~O_KMUzPZj7)e^C!%r!eBRxe zNzEL6TxtIt=Ij9w-SuJ_3=jMil1Xs{pk8zkjkiX>9}#pqB{41 zJSEcSyl~4=G8E01jTC<_ERxOlycr?=3*#X+jSjW2ek4z7SPG<`u{XuG=3H_6iVbC| z%K(#W95qKY>%FRL(;3}|<5T+~Wxxk_z4S|uaSx-bkg@{R!3jBJdjFVZ2;Sp;9Q2U>04>SGV)6>Q}!FV{**d`wH;FRdSv zT#^5&U6V_Z){?Kuz}b?O0KlH~gVs(xI)3i7!#s!NbCu{L8G3UNS?oLQBlH<&YUp`H zSQQEm2+0T*RZ!U4LTe}4zS96w^(6Q)U02igbJ^kt#{o^laeR;B+kOm52MO0Y2;alc zweG8}L9Qnpeb%dmqGi9AVcAb(c1UpjcCE!OW(yGU>vD3n^V6TD&zt^Z@)$#-LClIVv zn$-~CdY>NgwIro#XEe{c|;5tgsfftxLh@{ZyijoIhtyyLvozKeIr<71xS;upm z=qr%9kQZrIK?!8oDp79U$iT6QJUI+BuDj9A6@F4J(q|>GgX8GWBcKBZZb^+n$)Re!`}zPaOLFdFV%D&2^JPyILIz% z!JOP(ZSp@?5p#FSR`v&Keom$#Gt!mZdiq2S2>8t+I{dl62ZfoBhU1U&72kpewihQH zm$6S93%;c@5XsmXTL#3nEF(f++qIMa%f!nHGY) zih^yBYboW1#|0f&l81r^?&4mno=>uhlcnsOSuN>z*spdkUE4uMk9u^+*HPQ|dD^|A z=cxuGTh7L6$nZOI1x={B;Q=1|-DkuoKae`O4}iS6G}Q%;t647@Cxh0|yNod}dsT3L z>LTd=14lgrc^*IqF5gkuOYD1Hx4UoKJ{YnDuAa&Lnyb4~4X<|nNqY3_(56kIRF6cL z#D(ikj@ybh_gStKM{VpHnx`@h1Nj_qV!6HxI=bVXH@j+j0y7*RZLYk{;N7-Z9 z(WA?bZE5N990g>CA02l~hOF-wbsU}tJ2>i7fK?6t=LbLuCA9=Fa|9jQ`4flK?@R`j z6dm+r82S--cb+Mn%;efK6Yt3}Dt2bfn{2M5iNOiFDV*dphQ0O%I7a#uJ(O5U)`RwN zWc`W$3=e)qqadf;p0kO!kv4CtVm9Y-kp`o&%iRe>mViI#G=K*j6X@ix z-O4!0gX-s2ifF;P+&q~)V_O(hPmn{`QEHcQhC?L$U`f3P(Qv3ZiJvSYh0^`WP)&Xs zl%IZ_e3+CaFDPHNch5Ka*xLN+(jp>Xt74wF#e|QJZ7T=E00Kng=mgoeqVNfl;dD`i zVrnZKZgI-FSOKN?0=z%oh3E8uXmdG*x8yYYvOwpnDM`ol#tHx_$C|{_;nh8~!F>9N z0soN`b<|1Z=f=u%o;>ee+1{sB=w$kY&L9gYj03Sy=+p@%k;CotT0C zBzp|Kwog}&=pIYo3=(fvTrVYMSPO==_V5@V95=aQZ5t7>J-*rhDYA7j=(XiD1wV+O z&ww#To_q%KW*Z>>uQmFnMRTP#jD#7*)2rk`Dr`zo27t z5vTUW-qXHQ$Hsr>!+IdDg$ujsUZ&9Rdd}$Y+G@+PX4JsR#v2R>1$cPlc)wPl7e$Vy zeZJRZvaUvU3Q*f9%p7N*3$jIfh%p}a)QY^58Ap4GZe60VwhO=CA1TnNhGc+(dG7yE zxi!uLqDT}S1tR$FeqQv2s}lo@xm+`8&(yBYZk zrON3FB$;W;etm<g^$b7;1J58^n5P#?EGGE9qbJ)*BOMdBV_-n>u{w7a?fpu80~@ zGfn?JE%k9s>h>A0(@EQ|24+#w^iD~fviGUhT}kZys8i4izl?pMB*Y2XR$jhoU|NpP zLiA-%nkKWBQa+!z>tRl`ssY?_#xyPruv8AxD;7#>At{KVEMVZdeiD6Am zA(v%Zc!t8PVW{IQgL{szHO-ubyq!e^o?l%xb36Sp{q_FyA?E2buY_$jiw02GO4h5T z^x^YY^_Bh88_hoVwRp7D4V&L>#65l~vRO_9zuQ8F0(uBe3^IPL>>4?ZpT$;1k`YcK zuieWxcj6~axFP&XT|*)nryEDNEo(PRf9!c>F^c{vVSK9tS?w}RF^fz$nM#?OVL>9z z(g_C6gH-0DV`QbrnA7A{`evXVMU6Xd7yQ!mwRpbX;%d1&5VT2OTGR^lI{6;*&uD62 zz5o5dDs&_(aCO-v6B)Qh`o2&FE8wWeTuYd3?J$p>l`?DReG8TpqeNL)yp3sX4Ho7< zN?kN)Q)vw@xTqYwUVsmEQBq)en{-zl3G!p%CCn}O;UhOVM@1cg948fLW!O~EkD6}& zohOrTJI&?l1r+^Zpl)G?mVZzr54(UGyZJ6D^AV7&2#_=$x#2f_vd-+`tx?Y>5i(QP zM3HX97xLwUlG!(U>|l{K<}4rM!2BXl^t}-0H~P0duvX0KERxx9PtE#+jz{y5=b3u_ zRUgHwIjmzrw)ThCs+Uc?ZQ?zjeg*y#z#gN{njXSB8xSAP_hkhs;X(n;5(X3~eH4Ea z_Sj_J@G=c>OhhMHwCe{2D!<4R%Vd6_B)%J%s;5dHB0(k zyYJ56*MT1Vn~aAKGskgVE)moxX&2C>w2$Ae^{{Gmjnb;0RG5{jnpTMZSU+H*4b?pV zYRd>2oq*RqwBYp$p)vr1s(_IlsD~T zxYGvmM$|l2(T2@W9EdJkx0zID&Fxb2LQm{d(p$0b9BCn(IG#76*=X#1S)j5QZBhm~v7T`zPTL z&CAR|{C{n|%Wq9*%pVNdiTQPkf;d|dDQynWX!!2|Pbm`}A{>%AU#qYZV3rI`kmPjW^V7h+mZmxWKxy*$^>Ez4&^ z)s|Rs#!H=!`4(@>m8s`O@sh~uCR}(E@_aD!CNVJ6T2vn6ySoGX8s%_MZ6TJrG;BKp ze56kaq8Ibej34^(5d6bmQ9RJuX0+xuiRP6RtZ(x*xMG)koh^OawTWIc`PEkQ{()MHuDFl)onSJYqO_w#ii+yxeV6vh*YemvQ7{*$Y3|3UcWv~QudEBikj3Vb z>K?M)F%{1hPsvuY|C<(Orx};5s`wW_&1h^xzZDkZl1LDaJ>in!JEqZJcn8bbjViln zr!)x9>YsXng|BmNvyY+YDXM`{jE<>#)V2MMT(LF!hjX)XqYs{4{$X1jFl<+eJ957~ z!QFvYuPAe2n{DOu(F5y2v_d^Ud+{Wr(pp4N31^G_RN9|7luS<}z(WB^PN-gw!oeG} zeO!N5qmwAdo$=)jxkaJ{%-9j`Flrtix2a12Yo5nd(k-i=Efg0L*<<4tT=rm>HT#cHWQb5r_o6kczdo>6REg#nqle!P|{xQtuA)<0*!wCaR|)- zmLDZn63aRjlaSzoX(f9*USvUi@>2bQH*@Um-VOE+hQCV3W_TP%a7n-GZa3xy`EZG=YV=_tretKNS z89Z++$TglMG_9Y$R zZL$*mj=XI_nwbV}IIhM`s@{y#`<*sw7w+3vZ&EJ5?Hf1!$LJIrXYBa##xKomY{8Aj ziggA1W2j$67<>xuh`B%OXWm}lXV}?V@d3>YAoHdGANGXUKdktl200nGX>6xpn&Y7* z@1K!#5z2<49v>tjV3^rXBfH;M%$eAoz20o8Z-jVcOxg9h+s41qRAnAB=^5YmUy#9j z?HVDZV^df)`PXlwm>yN(;=>|MF7Ecd!J7jPls0sB(gx%D7~*h4ZSn?vWO`{uj8>aE z5=wqvx~%wv&rd!76LkFsa0-*+rYv)03||k(N9kq%=7cn?GDvSdbmlyT9!wn&z1# z$&W3?pO~`uE_=4FEs9T3WC^`~4;cpSj!Bv~MpSXt<1t04OrJzFvJ0=Q$qB3KZ*@i$ zqXU4+iDf@kwcD;;<7)}>Tnt#_RLPuIp968E%!v`gCs9lCv7=_6Q|OrXq^I~DvFax# zH~M~g+I(1{R7I}@tmp}J;|iUv!_%3zcQJ5CDDe{)DICuIw_0X9U&4TtUoRo->r1Xo-=XZXEx&$6Ej)jgf_mD_P^ zeAE=_(FC(?=?b)k*@;kBFfmHfMSXwo*%yl1vCWQXo!WH!J7lE{?3Hc>vvj39@yCUE5dlRdFC#Hct%WAD-9$BRrY4^}!$Ix{Ay{`c~zLGakhB1;{i(y?EEwi3(# zoSOd>e*#htf5%kP^v&gV~gCOImhJdz*^jg0JV(Oj9cQSK`k>^I@c%aGrR z<7aou_x^Sr`03sJV`u#jKl%&yPv)7kQ@3D6N{m5R#$fM7(tzkwMz8;12KS;4kxL_q z6v7t|!h0Qo4U?s5YB@lAq3x_^G89TfKnMNrCl0(@P3Lc^Cs@n&b9R20lK2*#{e@KXRqHdFzD9fhix~vDnSrtspE+2hPjcLv zh)itCj^a#9d<0M>^j6F2UjH~9XPJA871zBBQs3Zc{E6j(|BS7r8-5N}okRRmOdSo8 zUOprc#Vol~fHn!lgnGECWOopI7=L?s#wJh_R(3BSAhYyO9>9@?dR$9Gq>_|TTpgi@ zGV@AGSRF1@yi>)k3$BbY!DX1xOtnW%>csntXbvRaO}-zp(uA!3vvD+Ul=Hb<{NX${ z`_IvF+aVE7OV8ya5Bu0LljFvZp-q=M?f^VwzvKQKree(!kJc}dmT2H-mC|LU)rPpl z2ac1D-p7}Ha173GoAX)#AXOQ6g@!nMP3}XvJr$S&0v_2aO>^#UenZn3FUvH;MUi(J zXyU^-foLpZQjA}9@UygEm?r6eL(*8rG~>(* z0}x=i&Ftt55Li4hIr6|D9$S)e8P|!`m2gs64Z)6cWQLQ>|)%y>rwTWB~l8aN$i>P&My{}Gnm1@Y_VQW zJRN}FL^{I+F|D?`g(Xr@1wu(MT>7%XDAhUHzxWoGqlwvUcqRGIAMu7$ey+yL$PWvU zLCbp^6Eoi_-TB_ku_&@RGbF)p+Tmk)ISTU1Z8 zyVD&E9FV^p_0JiE>g-+95idX(yU*WT%gX}OFws-h1pcU)Qr2KFq}KA2Gp5LSr0p}* z)doxRo^1g4Se>-(59&EdD_oXDXjE!^ecmj!W+@*__$?TdJU9MkA&B5-SRIzvcnv{y zd7pN-q%`mMsTPF=0?CZ@G~6@2)kspqKW_#T*b-ZvFlTXYju2{i8F0Nxm%jr@xcz4- z1y!p#5;AtKE$?_Ayl<>TFMfrNU+^)iE`Zl{l+q?4sEwz}!QkQVPd#(OICEi$sOx|T zn;AkjYa#sH_l$N@O5$Gc^WS_SNhdk1m;I8Hai;=tOL0ds@VA#SaZQ-Zk4+3X&XAMk z42$OOl-akQep7$inWx!LxQHAwJ5N5atRV;y^aL>_-F2Pt=&kfq)tT=ES*K|Hx1|}o z*&r4{vb#xjbqmqmcuk7w8Pd?WrTuPzKeMLQRNy#L_j@`=IDd6UD#%jL;=Ll_r2Yg% zpvL7I?r&0qgw+dxrR*&GP&?zWvU+Hp&kKq_Jkr9P9RF}I4*ambkE8(J!c~}*^}s-M zRUgedLD{9QZuv4N!x-p z6fdRXLPkcNSRmwir98PXtRbb_+M<+UM5-T_DkdldnlF zLujb=C*V1}^)=+Y-C>i`o1!(geDZXoHHziMY2!+Vk_dj#79Rc1t-l6I$twvj3MR(< zn3P-#!?gs}Ur)@QouZYliFI-8eFP0sF-r@NOA=nKaK6<0oP76E`Ilwcy>{=RuRkuD zO3)BTM=fV=ub|qy-d)EINfZlHHucTgNw5mG_C3mbl;)2j`)& zToK>0Z&W$i(oTcW7I1b^zKW#Miplv&K$rx zr_zd7*LPn8Mb*20IGUxL;x;4Z+;N@IeZwHZz^;RkURR-3O*O0WBRsMX%&s_t7&TA1 zFw$coA15D)5IdN2u3gLXeh5dqg&}TJ~fevX^^svCakjHZYVz+>-sFjE-Q2G6AJV1rDmX;7_ccAj#t!EvQf_>eqT^%Qfj#e^bn)a=+At zc}Y|od;TZ;^D^K^V0WYC;ji5{tUkh6K?6M&9KKdMEvc)P3Hz}$(Q&)Sm3%GxaujNr@@B6(1D~{ zGki(OB%|u+CqWUa>3|=he{SkL{#I3(CFJdwDpEO;b)iavGVd{G$@rN_|mP@M!1ZW@xxl zY#Mb`RjW2u&~pDwhgMG{XIR9Y8+)qvR0SH38~nb|Jo!$Ypcjc;>hi zf1Kb53GMO}hso?*C}>(vI!H7S2vlKNnsszme*$RKreynZR+Z_ApP|p2aIA^P*sfyG zRF8Anol>RMF)0R3sHgOL!EE~8n1za3(mN5to~$>&48bQg2bA}Oh8$s-Bf`A|kJ&RB zH6qnY{LR%AslwcTB}%R-qU8K#!^hfOxnqmCYR=6%Zd)G7Qw#n>vh@2mX&1T+%bV$m zZZzTS@7Ui_J~403^!I~Iq*VXtF=JV@GSxoE>4i#^J#;)iSLHwuZ$4D`A_w1d?Fy&B zZ1fBx^2WR(CAfNa_6T?=t2i>w)KKpl!a$L@b_-MI-8f704h@GuaWR1-Yu#lH&`8A8 z_!MqsUv{dW{x!Zs1!UB?)_p>iT^{tXW&ot7v6M5D=G9TPH28cbiz#eFd;-6?X%byM z&m@6_2a9ikeAcDLoO^BSY~4a}9{WOBo)0La(&48GU7RV$N;M6^lLyT)gsz6N2K&?O zf{KWwHT~2x{P~|g4VXH+%OMf;b^2-@qKI%a&-DP1_D=NND^|VtB=BEpYFEACRlPvm zj46iH7$Jc`y-2E(8VyT{HI54W?^{&hNXm&j1yO{{_3&MStC z*&ts?Q_;jPMB|w_X5b8QgO}o2vlV(MJyoY5f>TiSz~mMS+;__3p!TyPhvSCkD>kAT zRCVjjBWd_E2<@*l79M^Kym>PM+!v{6{Mk@rQMGhtx_YU>-U6vwavJa4*l&AZH{JNh z)a}`=hz+!`EiM8RD>m;CIL==}e=HXOkFX++ROS!$^H?7^T}@J}Jyq>z;!5uUn(I}I zo2S0c&8y&M3|sLtLax;6K>s|0D@DtW;)fGPVikTON%U=f0rDyi=`kun`#-xtRIzQy{U0`47J!zE~J?t5%m zd@1FTdrIIkjVQ7&MZWr)%`l;c;^ywfSC2;A(yCAe#CpAuKVzrq>5X{Rao^L(pe*dy z`}mn|hRG=B@aodWuac8HZ!EkbtUg_}4;txei;jwasMs&spvdpw@AZrG% z3l6L6oZ;N*C+v@3l&EnHhc!`9OEiFACPd^+hiEtxL#1R}!P}7ObjB&zQwm1fpPDSRR(f=EokvT+aED4*jgIQatl5nKb`vhh zPr#Yhi&@(Q{}+E6Uwlo{qT9hsZ}n?jchBka<|XcO@U2EQw=pnZqNAd~Q*|cBvj2it z^%5@G3*2S_AQ7UHZ!XF8Sbk_9t$M<#SDR#iU0q$VTy#Ar4R@jyNixH}uYRJv{n2cy zGimWuZ6%FRKdU-6si4=3HpV;o2wn8?r=`JyTLLwHc#6~n;%VLSwXdDw?CLdYoX|6UPqx78 zQfd@eBk-5O(<$I5FAm)^qPWKnj9*U&l!Y$TsPW<8kRd`B7tqN zheOali}msWoMX618lr|!X<@SF`0cCM5AX^mVC1lRjzRa%Yq$F~w9nTPsCD3zjzJxW zL9<*#7q7fl_;D)9mc5sT>B?&F(6R*kDSgTzP(ts8f$YLWld9&^+tH=Mc?;VlFJU9D%KEF2MXoe>^dwEA z=ZpsZTMMZT@%?GgdH8hk2yh+Axni<~9ti##&R(k1ZXRF6z0`6(J>$h0JR_|0+_z_> z6<1;LWb|(76t3GoZkds;Oo4!nw4d-#bb) zicv@UvIvncQjTzCYVbB~@@f_JWpk*pMdiw)mX152#)ZIqy%LbKh-L<4BaRBv*qIOq zio-wUPWaMHI1`Y(n}2&?chr_~J_A>sky%rbwH;FHE?>XDNn!t4FR9lQrEG4PAXB5#k&Vj1LAjw)m`h90gje6o=mp8EYG`}1Ac&?)fB<&M_V zjIQEbgR)9-PlT*;jj?|f#5`)%3T_CZoE+5w#0`oA}I?i}5r zcwvs|ZGZbZ<4bRi@*5yXcd4MmK6AMUU1f#)ptP+^p6kidR@s0ZM&e{FuAt_9X*0wVJS=D&+r5A>| zca^}y-4s0IX?E7@=xg8?F0WqUu6d7LJBcfW!weWvS$iKx#TTrdH8}g3x5ZspU9b9{ zJ0JE9^(^e^=BC-z^`~4y^S(h#^zEOV`MTr38oHbR-uN9CMe$V+Qz+-tTe7%br?8J> zc8-Op`=8ajzWLCX&I#F3cPzYa#5fg82zdg>wZoSrnE9~6#j)Zh{}JF=Wu>yoWmu(2 z?;~tCplV|J5pdghMB>8o?w#g>wb0_oonXVO6F`-;8y}oe!pB-Z7i!|-|43e!_{G02 z5!9O;ls$6(!^lZU%K3{fkKApW?$hdsKM|j#Q4KsUW>BXh zJAs>Lb?$_Wti+<5S&D`lFo~r3QOi=6ZRwy1WZcd^v-GXu3qy^aqkYk$+o6+jLV|2v zpZS#$vB0Sbb%qHpXq6v=9>ab>1T$|>;0wo4e5wj$PD(GJJViP+-c9%{$$}9n!92O( zQ$5jwXP&z9NGUD+H{q3RoOY;gT~n zrR#A@zDzS#6zk+g=$ym+`lH_cCFJj@(m&~I?^03|K|8K5uXDF^uNSm&l1^}LiztL= zzx}&J`u$mD^lZvX9J{r}H*qTqfQ))WEvujK7|;LtZuLLMsqa<+F*hDHBfZ-G9Jnr? z{IyRpyNu)G16^N_{1OcCIlbxfXoC|l_0}Qosa@lrg!$qBa6hIqf8AS&{`zg$Zg3fw zc&^bQ@;%6RcTBhb%8#{k@kIxs5-XD|NAvzY`s3rz=GyO4XFjQ{wdNXG#;%1PQdnwU ze=YmT^L)$e&CikXst>+sEpm1(qt`Y&1bG{;8VSFxu0Gw^Y)~6cQCBOmijUmfT3KA4 z<*j`?|Lxt&T5XSa|9m>}={{t>C+D|XV)v)?UXM43`S?9St$y-q zf%5v@?OztVrJ_P%^UM0*vyN*T8=47&(yhLr9!td3x22e|x|NYLuU&S-pL)E0{p4!h zNK7Px74_wHtu#$*#W=?j(ixD)RS6fdQ}A8>p*x_xoCZ&P(QCf+AO z_n?|##FzI$CS4;|Duc75%Wpr8UvBq`TB-l_G7d3eu~l*}WW(apAq)JE@cAdL>*L+; zAA84kct(e9H6$JxTl#W3GE_wVjQbLQ@p89gtDV3tG0pD7izUQH?oWhsJ-~MvXAZ{+ zj@irt8&h^6RWO1Rex@ZwQ4Ef7`^-t6!bTjN*;y4z!eE(9 zU*XO@jh%;ISHnKkFLMCT&m&JMSJ#i?|3mNUg`nqU+N6fxoVHWkGs;0%^F_K1!DJRL z&AI*AW7X2LeRWJv!hTOs)jGUg{KalYqW{_NDZgeu7wo!ifd)@HwvUYL4h_#`y}Ix7 z(k%WRh<9G}3ZzX08K4>$HjiB0*1=^2xu|~*sa~4ve&qTIMqWGXzM43>^ZJgh#;_LJ zi7Dal2-bn9f1#EBxsZ?c9wV{I>YvUHIWA$Ie!u^q0CX03`dw+x1-}~^a{4(?TRX=; z5kBH-7yby-zYtHlaY6r10L_gruRTwts$Gb>zi zM-I3z2#xYpN6oD)%T!d{5!_k~6%}wLHPftIQ>+=+nKW(G(n)j6OtZ57{2u&y!~U&vM__^}ft_I&QD3aCl+(foRnR=Q}e}wzQZT=KdXPx-EDzxLA9{hbG+P!J0LA zaKoW>wOqMbGPuw=6^y{D0>rd_6nIlw-rS>uWZec@kQt&dI*A3b0I~+1hGY}*)KVo? zWQy37zi^Rttdte*QP7)1Wq3>XiKZcfq%a*O5phY!RAPegncZFdW4sF$A z@Y-~x6cg53J#ZtqBbg?`fmUhfXf&vjP8#KeD3xIbv+!^uVAAP5_~#0G-s$M$Zj)Su z>-wt`Q_fz4DMe0Yz?Y0~1!05*6>+mT`S0&A-G#fHGj!|aFxfJrwMOPAY%K4!)36j9 z=a>2_r(g3^0h_2|KoUdO-JEQ?%lVR8ZoBMC(<1w^@L8Bm6}(sBF0gm;c?rq%B7)-z z{>rM0``M?HJ9!rko^j{_URr9mk<6DF2X=}FdSxzwjpKKZRa`U~vUK0zev&EJy>1xH zEpnf-JrH!hh*K0A5xp2o4sPQPy+w1GPv0X0ru60gk3NM4R0baZYE#aP5Oab#7ba)& zK0&Q%>RF*#vsLc_qG>r#@4TX&gRymN5t;DZuN294e5LC?lyszmoBfmWy~i!J06o0y zI2WMplv#4bMDI?z3+FWUj$>qMjA!Q1@MY(#m8D8>VrvmOra=lv7$ZC{xebImZ38=o zSFkq>rD3k4%c=z70mtaIt~bmF5avyoozbGpCV$a`lEQa zHq!U9uGyvWk%V{G*}n37-N4P`Cd00EXSw6Ny7&{Ts={l&f{j!obRVbHptai+1V$sT zGdf$3^+^c1Xm1=^Z#Gofv}6)NLG@_KdR;j|y)J}`^WvZil9%<7RZ3?4;@2Xg*|Qlk~(V+ohDq$aB!mV#bHg?5SPx!>2uxO z?e$8Y@SbR3OAJYzn@Qbawp92yUyOB|mBTg^n*Shm<1L4iTCm|m62FLA@4`8|${j6v zK{qj}%a>k^!B#*X-~80!5zk)g%K0%vY*oX}n^t0k|E!huoz{{`0-W(jdhKnUMY&aq z!VG42h(s_zd+`l-^IqUvZUWjp!{KJPSZZe@tla388}p~dlqy>CY-UL56}{Q&{!`$e zY1U7HgVALItT!fr-Vz{i*u6Q^l4IJB;@ZRdk)VqV6^}w19ya8;Z&x=OxPd-04soJa zNdz00wwjL*n*Z{IWxkVx40s4#fH}RzUUbxuCsF}|_l69;*q!NKW1saXBcTk#2f`3K z&879W-YO6(I9)|Z>9cchK}!m%CsDeXfsoClHrU`PqfDY&m`}#5T=;Q2_|ZWa5y&Cv z!#(v#NMSJd8y_m<6k||hvJ9l%mLp}@aEVx#TpH$sJqgmT=A;A_BdI8d5Ewp;9m+G( zj;LYf&|8CZWZ!WQj^p8PX|pkS+&;;^x!9FexIbcABzf*xr{lLbS|Cm4swx!?PHWC5 zodj{tVV>RQ&GYC;8OPYKQLl!sgSCdS(Xxg4&M|#Deaq&^@j;YnCSOor)T(t4e9Ia~ zpEp>eClBk_-PfyFe`Yq%!e-A$fX#OVeii?P^%k2=xQ{pg?6575oj{v&uxB5s#;psxu=#Vi zl5qFCV>f#WRLK_C_?KzVJ>W*e7M2S#q#hZPq9l zPnq^Ri%zSV>dZQu0RNTQ09WMiq#pXfDn7x-KKCl(0$DPy!wPyRCvcX^rTR+(=v$PmL!1#K;Peq@{K5LPK*3HqE&GV_iaggQSE4>$cE-Y(|3Blfok6qD zpFUx)=4YWF9x5HcJ9vYtv>9cfl!Bo$kYTWJFdkEwo7t^;J?y^9-oz%sx)i=KvmxRt zi#L91&z>8vFHlXHOob%#>xFc{A_(tS#4M=Z{q#%BO`}@$v0gE&hrz>NKYUA?;~B^uV88g8|u-|0}Oa2#~zlJlqw=cW8@<9n$Q){5Xr!+Kj;7M)|l{zl@dMp{QaY=tJX;}2KoO=^76d*iI> zk9myl?ZC7t;2^CaEFaqc8Rhkgsu0Yqu#bU??)fy zE8WtvXKXsl8Ba%uizeYTnxQ`lPC7uak!7G+%b}s)|2*D?AG)zRKzur}Dy&9QWh@<-%edM0lhc)h)F;XX{GP=e@N=q1KRgy@W zKm*nYb(Uvti)zGyHyG_&CbwHC3A@ z-;A{5y0}vYAcJ7an6yMNTnRSJD8`^d@%C7!$l@Tl%fPWBzlt(@aSB(|3)=~Zk*SO6KC3$3Qk=|OgK zZyPXp5!0vRo*rI!=U_~<0=SMRnIYMW#@n2Zjue|0u)XEW$Pil#f^_AbGT7i@67OgO zpORw);quiQq>| za^d*Yj?#l7(*399XN&$N`cJfa*5z`f!Y{eK%5vjOGJ|PFa#c$*wh`JiL6J630qjG` zRf%%aa6~S8+PWf+cRG6w6>mtML&Hiy^z6)?)F7juA;$lx(!O-+3Tc`-Qj|S>nkBZ2 zvB*)i)kIlj?l!bDo@DviJFJb@1I2Y=|0bn83H8y%j1sPie8NjAhs-c7VC9KuEcW4% z?97Uc@7B-40v&Roe^J=3e^()HkBn2Ry{~~+T^4nCjN{b!t zRm;x726guP;tt>L(t0b{5DX+{oF=KY0!&Y7<`r=t{JV}4*t0lUx&MVW$s+NEHBt7( z_pEStU~AhAXa0%k2>$i!rVJ!$@;>03WVxg{`eu%!^kMxP;mb-ZVvtl~?{;}c*XO}K z7F{>R73T5=w$qy}>P0*I`*6+4GqDYrk~>h+zVUn-=I++aHZ%Gf(REG}@Bw!n? zW~|^Dui%uS>jeWEccPNOA)Pq^Ew7zSl?@}QYjKac)GIx&GZd{tN>00q-%&SVB=Q@k z3<_4CU?bN_YTY*cnyIVpJj^rqr0V6xtmSbRxexApakXIkW3d?yA@#l-i+C#6#XELC zLRJwQa#$7LxY|%hgiMH@l+Ea46GWXp^kyVHu|ofT+Vu~>K)Sb=Jp*Cs{4q_3?IuPg5_!M%@?4O!N)@taYVLWznt0JQJyCr&bp3xL zPw$?K{g`D67?dX6-}*|xWG$9Ly zYMKB0!&I_~uJL1mP|D+Y~RFqrB3pv#ybW zD-g*Hw-xGL$?0Y%DUcW9iAy>?h&sRVikCmjJbu>M!#2M39A>czp*r6It+%vmvMr{= zIMFBR$&X4mgam5=4_3B@B_Q!n-6@n>jpaJipHd6@5W zU@y0soqcQENwCTLXDWmkYt%)?i|3r{hT8^c(Av4ZTd z8QCk;HJvjQ@-0vz$F65g@f&32zL#`6_E#(K*c$cn3{79x!WIlSb}sHzhhw`1RnMP! zd&;{1IJ68{4`qy2Q>uSx4@0Wl;)u8Qxlc1q9Voa8uWO~myBw!+>5HGnCmUhRTk`;s zbxwPusUsiSmc;a>g>@ca8&}XlH)I2*3?%%fj2)^r4SSivc88tOFo|@CA+hCBY?F*H zeGp{@uRXa5O;;Z`${(@SY)|=2nZizQ2)H43)0oFNq%Y^3)#!8U6UAiMVo^{c^+afq z5gyY5qLV%pLEa-czDnBgn8K(=xgG94dfwFty#Q=7IP`i(xa4Q|e2)h;@+XL&+v*=oR>qlAi+4)@q8#e*HD`nW0(3i%ZyH z$E4A?eC^%*D#}co2xb!LgJ-QvYcCZ{EH@@x`cW_3yE;{yH(a!QCK~Ioj(J?!uih@i z+qJ@@x5{(cv!m$^?yDu3o&m?Y$2WUOS$x+OUEuIXGfxFu-+9ZhcaOkO%kbqDFXAf@1gZtgyAa)Dzjip zL9VynaG=$2!2bPr{YTiV&n}D{sqkr0ZD}zbU^*F@%JDt}rz(>qtgMCo@&|yx;Lqcq z{#lR}Lw`t`tRTag_Hrem+2g#IQ(QAytn;PkrJQY+eLsb^kgcPxg8B>lY_d@uNem?kdB#>Un>;ZH zE6nzcnrU)+qLr(SDz*n7?|+uT?tDUA_t8m{433V z4!D=zZe3J-0_!osWn_MLUtZA#lkl08JVu+C?2ZP?0- zaqYep8cvng}v@$$&O?L+rL4IIxLs+Siq+L&xF zkoCIt?QsmT)jxdSSmr4~x2{&uZXOS2ZXHr2X z{GKY6b<+J0r7V+iyr>0}3_lJT2r9;v0YUtWG&`8HE&gH}N;oEPg~%JGooJdmOlXlD z=Nk&kONQf_t3)>)pYAa9Ztua^Q05lz1gih(3f=~yj(8;A8jYD@Cp#Jxp9O-{F4rd9 z#ZM;RxciFtl^&r~o-&Wf81t4^90*1dKAu>?njZ1POL~3utw`~&xE3)>Si?&^F)c*2 zUE?b5zp2|3m{F1VTO|^K5vt?QLy9~@OEtFRfVy4B5e*t-q7i+lg)gv_Qk@K+rc^O z!Hy6V;cp0vCV$>w^>SVZYzW@%2)vC&_%lx10Uo z>^)c#t>W~6i+!&ux0F|m@BLY2>=CG+ia~mDbFJv*=tYUTy8ET|98|TiOp0sfL8vALLazh#`^KDJV>7zZ0Uc^f;|o_~tEwn>sPy6vMordlx?wrFLMRk(BHLEjH6r zQ?ViNsL!KId%({+vy6)vt9dW(AX<_yJfz_;-Vs4k_%Vk|42DEgy4fknooz;6&m=%9?EB64ws1I?k$R2SH*xK*YI{lzg(ke}Mok{-j*JF^B zjlw4LS|AMALC+O@1FomC`*|L1zJ-w@W=^Ww-zEiaSP1X$tT=`-wj{>&HF$%k6WHFI zki&ITY(jpPUx&e$#KbTy;F<>%qi=Zyz?3>zC}AjIZd|eAC}+k;S-ZO}ci^t)9Wa-* zpuf_apOyW<3T4`6Yfb;D$-Zu1d(*U(q5Q7{k!M)%sGcX+d+yJ4@Mor%VNfwl7wUx; zx`WB!EPXpsF9~mNOtJiB1YekO(IQsUAVD1P%JNnm>MtheUjGScdHp!c08u58F1OC(hqM4;P zctdY4bfBZ&P#&ZAIx-fNOLp?l@9=1@A-bPg^VEypN|^gCva_C=ts0G^NrLXWM9!?! zTJ`$h_|azROXJI+60%RqzF~R%NM%zd?>(!+RfnP=fsZ3dDOEgQUGze#XLZ=q=x%tSoWs12|EKDX1I{AXaDlW{DMr97vW zXGC{>^-NssE!UKSWN`W(UMeRS*JpGJb0rP`kWfnXg#T>r`=z4K879Y0JfAQXyX zpLY<|(K_ENY)(b;ifK&q6Jg?UcX7OnGu2}RB}Ut^p`b#ZV(GXlj4$M(Sa8nb9m?H< ztIz)lb>u-Nt9=je;VQ^sHk9fE(zTQBkt%wEV-qSU>`ObYGulZGi5XW*p28ury-abD$J?)D27f zvH^IsVuHq?&Qx<>zY}$hg2pLUx2Ef z0x2%|Tx!#GFXh?bMM>~-0UkwfyBIp=BLWV?e=y6nAQ=cJpHrc8w0^G)_kLoF#3{2X zOg-%RfM+PVw>~v03i?W#+vdfcr=ECTdf7w9i`!b{Ol1`yh&ixTCQ15m3li1~;f`ez zPwKr3ic}-3w~TkN9xOjMFIvJgW(H9}tC@k*5i*fIQzL4@53fP7^H?YaNDEV4z{gCt z=l*6mB|~{|%4WpfaPzN~1hX4&W?Q93Z7|QNSJhueg0yC*IG)~i1)F3nMIeK-{)moA zOgY0!S3mmRRo@G|%_Vuf5|hy1KuIf_3ruuz%nShpL%3yn10jb5N=UkM2tjb)>%BQ*~NoCi1>Q;Cr@#!~0C|%lZe&XdSYMkFpB(7o4 zJe7uc+wUODiitI~V%9H=)RwU?6>|3v4ZOGYejr zu4lSqYZgDP#V9jYMAQ}L(Tercv-_}GEvTY`rR``ID{4Y}Cb7B&WK?*|8}?k`t^5zc z5Q=+#X!ugM!0czz5n>B2Qfsh5C%>C11A3WUgRP9Gl^yHIi+fEyk5mY1%#Fx7EW5)1p^WV0%2PM!tpK2URA!PqL_4BP$buz{)H$6 zXy$6?fqk&isEax2VuBW?538qByA6MsL0zFptPa4Y3O&DynpG1VoLQDV*4LW3S1_@| z9?LqXXu{vvC%rY#0PFiZ03^qkDq?b5v&;q>=YYceTN;O7ETvxHWOS`Hz|(`yo&R!E zJ~+4TRxga&p6ngzH278-P$9|8G2=^SC`gNh6^P~ff%M_*&2Y}QsayRjD&qfYNiqY|;q|qNKUQ{z zM!*5`*Q=iv%lGNNdnNTbWhWVrD}||m=)$>4Xmgnd&xr8k>Z?wC(j0Sng2Y5jIex<4 z>;-~FB-%Jy@~JY9wMe4zeJQp_qyu5TRsQ=7W-T^^+aGRC?>W-=Jz5rFvYsY&l5T__?__>1@+~Pm6vq zEEys4s5(KFzSrpua!!jLfDIXQso0fcKI)0`vCze&3W#xkkpyO6Mv6#I zfT)<3N?)QH-cg^$@Zt6&z35|1J676b>M>+mF{{9f%BsvU?3EsGXtQlMTu7H5V|X=8 zu~no)rBq;p5D&VFofyRSHqU{q8X4hZ__|n8XsHPI_O_W4Wz?r0tH+h$`g1&w4ucCp zwnz}w<~cdb0(daVE@a^CE*4DcLN!*g{@VO!aj^NvNylrrO%+>&xOk_cVxLcy5i;8C zgKx>cu$JSuH-<5j>JlVKP2CtCS1T{<2jBM589IfI1IS(A?w-){s9)#Xxx|LjR>P4} zi~r$8h>hWG<>}<&_Qps(;Tt1X@uX_^HVG~IY2T`~?tuBd)U!=uNtVlFfH!PkUU3Yq zrxRX5Poh~N<<}>hIO!pVde8o9b@+y$Th@UX*&Ish#U$<8v~0uedD_#cFV1Liz+{BS z_ajPN7o2OU9x;7<9QFwO3CzG>3N^mOPg_u^te1ZjlM(0izZ2)J4jk*tfkD zv|$4-SSnZYXYH@Xe(vlIY+<$2TTYh!pWk;Io?R~)_6f)1nu{bLP3$kYb1=7H%@6j2 z@3S41MyJ&1WC&HPoMBur!?|8r15-<(;viD#3fM{{2;Xd@0)mxNjg;W9V$pQ7cah#p0iVve|wmlSLRyhK`Pe<7gDpVX+Z5E zWP3d`q_SYP(O7r97Q42Yr^XDGwzPcW(9C%@@J;ot_L7&-s?|b>4oTmPX8FX4 z#^A>mw>}v63AFYZ5dnv0EqTRhcc|ztY#zlKpMYkZl!5x4s#|Ki$s8#o$T!+NE{gVo zX2y{#U4x%@1q;_5Z&l6zEuM9>2pd&@1o+rofsHc`a=*xQ5@3yj!M8Ijy)wYcGt3*z z7m!07IDv#tLW##u72C6;+zRdDwAX-Tou+(=y=1hjlcC zzaN@tV!k-dGyLO!yubHj3O^8B-&3@=oa$U79j*yF8Ea4u0cG-!p|4ObMUZT&{|Z|* zFpnC%y=pk&J_qDWPFl)uc=Riq&+xQskA->dOrF{eDP>LPV!E_bXlu{QGt_|V{~E|< zjci@sl&mK(3Aawlg3#gbdG3?Q>Az-xEsswjPrvJ|QL*`Sjh_Ls$n5galspY^XrRrR zGfD8Y+Fo^BdG<{8E2ss!SJml#M(e4JYenJLu1UOAi)w(kPJ~{CZFvk6&IuJd5z^h5 z=Jh=9QbFuMjpgb`=l`t$y{#YB{WN`|`)<3s4tsI_(7O5bWz>SK`%prJQD!ujuf{xM zI1nFrbVBBy)m_K4ak<*#IrJEV%Uq&?B%VbZZ!>HGUg|S5#-k>}Vw*D2OVV&G(pztz z#ZEYX*cEc?2Y`p2qGm2_U*CHwGQXWK7V6A+&)lSZhVS6X};TTuW)}@ z<%|elomGPbVM!Jg)iZ4p9F0Djj78g}=!nxQ@wb;XnBE`3Df@og7pa#?ZMyn&PyJ9ckjCxjXA+Uq6glvuZ&llgEaYt**b zKF(WpvFK>mi{5&m&P*!1_2)kr*aEQi*{5v{khGTQ&>Lc#s;0z^MH*>gtP*~`5D1$`{5I!zaVHl{pbGPj$hd2X z_9ZmNVoNXb`Bk0xx{Vd}-Wd1C_=^!v4kbcux3OZ(vXov495R_2!@~%WK{cepEY;Ag zx(Rl*>}&3@exMCw%o}|oH$AiX`6oQHUskf31WbQJE)9bo6-PJ)8ec==vuV8bGie_4kR&e?1WzOIzcW zs><((uAzO=ajGJMM<__s@oCv4W5zYgI0Sm@i5K15=P~WIKHJZIi&w4%cr98s22D~w zSfbkvN%}xcl}#cQR!`zN-}?IKf2u7jx#Jo>oilAUCjVqJa`{$#Cf8YEC8kw*Gwq-hU=;*IeQy8{TI=O z*C7$?pomZew$H)B88*(7Y^~BZp)3t!5}w|~viJKbUnINh?yDyAQFSxz%2IpuffcWB zEEe#mU*EUelgN~rOX4k7$t<9jiC`AF zCkKpdzsUdcs73;}S~8J(0>EaePwOw(Ko}_F%0)^lpbvApEzCyDCKVqd_|zWP7`Y2>Qw+~}+G9WSUI z5u7hn4H8d#!oX}x*o%BHEOXlj;1*V@Txtp>O~8a%SZam>si2Xg{FF9tVm)jWDO%T) zz~@|+iZ|@Y;i!ul*DIpz=;cs00tT7us3PFKW2tvy8c>w<^5`eC>7DFxkWYvFWHy%4 zZ&CWju({~aMt@$?i%|HDC40KJ%zM|>)XZRy1nok7ou|6p(9SL|Lgu&=T_Y)_lSAY8 zRt|s+>kG+}U75X(K75Xgh)F?E$@bmJcCH5ckQ;1CRyGEPz-ezIU?E?bocpi(vWRQBCjpb`#cq zg%FFI5c=jGLw#~1`%6_7EvhSSh1NA)HJGU$v~__C^ePSo0fl54y0M(FNXR6DY$lP_ z-dUgrgJ#?yB)|;%&9J}TeGozv0#J!~$wA3(lL`lGnA}10_d?Sx@WIw~1J1m`EO17Y zU9eLRkTD&G^(H|p{gnJ|_sJ+HD1(=BeCitR#<0n`m=NjV$Gd;Rr9E%kt9N z`B4iBo6xL)%L3Yu5=!S4y$UEvanmBBGIvV8&4J+M^z|Z5X&Z?>JDvfdld}KDDWwfw;;bAGCxc4N=gKiZyg20fonV8~i_*^Nf!+^mNRLJ@^LoL%%g~pQw!+If4mVA{jIS(=p#6hmLL?=VWMTthA7OKUzo+sXc_HS;D6g$quE*bF#k9B zhQ7=QdLz>Zb0I7s+^|+aq>dIZ{-<>nmc+vgB871k;S)z=GMJYJQaoP);Z=rjW9KDaLt zpmDP)yzk(gMdi2{x)_cw4c0(qOFojd8!)!Td#i{Y?r{d_^%=*mA3a~-$ONvg)J0Lz z@=5S=dv$b{$NP+FhV_eG5(>-Lp#8iEYR=XPm%E9)=&kSRO<%HlcvyArX7!hCqeF!M zejQl<`uC@hYxC{Ug+oUU9SeFGaO0ArBJ&a*=MHnU)p>vcL!llHiiQr3+7~@wHg()X zY{Lgw4n_iI5u z5@vIZ4F#ZwY~&bemAJzWddy2lU}=?xY%q>Nt8}Ns(uBO63rv_pH5&{lVk&RfagDGx z4qQi@OVyQ?Pyq07;K*khI$|z)U=QQ4nbkUmScc6-Jw*=>+Y3w_&c?`wj?>A+i2{zt z>e7v%08DsP9UZPb;Lf!Hu-FvCN*$Q+6qriz5yhh^fDPs%mVS(dtz%pQV-@9K+E^W? z9^-+ILlzc{sk~^59exv+cd_ z{g`*AGtXAUz&A}FJ#|U;`TXwJ*1wyhznT*X-@OqpTP`d7hI+|=`4I7&3JF3vB>{q`GVIHx5m$L=>IGJi(sHGV5QG{C`~g-q$A- z@czYDbow=-h%I@^`8Eb4Iv*XfMH$;xYfW;rHi5u7;O1XDZeP-~!fqw?-#AXpR)BgL z9H??R#fm#prki+7N#DexSi*%3rg8Yg9b=_Crav$ITDcjWG-A4i=WI~{)B`~&`NTaP%)#5)a$dto6zIWzEWf^_1IDO((@5zmk@lqXA22Xg3NL zW#q=QLtB(q?|RZAOYOy#8UrJorst%SV7Z=-r~2Cf678Xs6d#fv1~O*dYW2gkNIUR* zU6`TzY*ZO80+hlnGWNVZ#PbaP4Tndx1!qz`wO!S7v&hy5g};uRtywt#u(ZV1Q~*)R z?&lrp0n+JZO6Vhkm_Xb~pJg4#)t%0v__vv(EnUPeB)Z?{)|Ro(ql zO<^QMvX&b6%K+zlst?vU)B(;U0nI5 z`CQ!(MP;_ScsS>pAx+uJ|hgx&KBV^+Pk|3+!zmou-(@7jI={IwpWem!QjSY=x| zHSC<$DeSFP-o;!QkdfPuHvCbrRVyeh{9MabO8MGeSegCF`!%1wiCM-RIDKXHy1ZVa zO7f?woqk}NeiTeus|3boLp~ASTP>w(F-*L^dz%lUo@Hf66HBg|6#;O!dpX2!STB%x zY3-;fIFdfk+d-gTYv}HXts1-V(Y9`RST15`iX$6RZbwG;VZ)Jqu%iN#x5@SrF+fF;ay{q`_OmfWH zy_YDGpV53(8;Ugze-(+=r$3^Q#YKN!G>0oi+h&bH>}^5?u1*h4A6Q`tMh1u8YtRx) z;*2qoo^;_|F`Q9By*`)jW3qjU%0U=i(HS?LG&veg!fW$4{KlUg_8aGm76ewsa>pG38|e%9FRjk+a)79lMkIbj$A zIkn22?^5o;Zp+l8gZ4}qn+fDhfq}`?e+#d&BJbYy+%KZ%b`PJUCq>@>`KtMeHe;8W zEP;$TXTJI>_Z+5cRRu^;FjbasB>NX^07>p!)VcYvw~c=eq;udOusgmca#23j@yu8| zhIHL0Db@Tq(%I%VKezvN_mHO^gvs1#3X1dL^V_++?v!{0;)8nX6nLxWY~`8>f)ZK|L~J-`An{f8OopVogp!oU4w|9a7Mm+_sUN+J(K;CrvmGR zj|jGxGh(goJmz-$*2dc|--(cY9|}ntxki?%YZAvUs;H+d^^A>UGVE+pz;C-jCG=RQ3l**+Zwc zu^;Jvf=*N6%M_@07P@}QCu-j#%q`CRy-7*8CEJbSWe}71iNcz>-%j1EpoH*B+CW#N zTAg!rO)pET7ZwVqX*V)F_M6u4afF`_-Cy3fxf&6EijWqy8K~s>miw3)V{mBK^v=xt zr-!GS!`qVZGYyy##8blJcvwk^TUD)0c+BdEtL7I1$?`AWLP@VG`tAJ!;iG=8q4kZH z&`zFR91vj`aQH)efZX$>65D{G`0QWPN&c$=;mySXQqxfb@nO?EfjwBQHZ0fnQ7f<8 z&EC;KNGvs>!ehI+p;usgkMVCKp+3Grt*CqtvwzAxaeLWu`@>RrdS4mP#HgTo*1WBqJ@W!-RM9NgOf7Y1H<9sspE zH}zekicR}7o3D1KU|r#%Nr0f?j4^m2r}FnMs~PincFoK5yl)D$^7bc(=jcrh7ByLx z0X-aPzpHWk$=?_774l8RO#|P2=e6Lq_-tcjtt>n~r**>4$=f+BCtvCBq6-td1jQ1= zr^jzd^)2~w7hgy%PLmoIw|sQpdxyzJ`-`@oHi}~K-Y;xTtS-FI=XUu$euMwV)HHZx zB+ccV;GEUm2P8;uuNF7xzZn4gW8kEw#>UIQn$E%VU zvzm3G`6fgF`8H+pC)@wrgx=O-394}icqt=A^DJmORq&p0jn|oHbF~J0*J0&Rbv!9* zgv-ON*Hl>c#^ye*-70LgqRr=DeC%>;ee#Jxt~zk0MWYEm9HAj{F`N&_jD!i)9HL>L zY!)6NWH$NSJx=l)-T*u{upnx2N0xNP)Ck2D*adQaNTb68Mw_Q-nq=P^&j{p4^$3r( ztnM=@cXgfbjxOGFM14iaenL;3u^=rldAe;v^ZIvMl1-m)dL~g5vavYP*N3;6jX@(y`7I!0;e`_L|YLiSJYt{$Zfd_LTG3|U|nwVKG& z&#M#qbPnX^UUdcP%+xrZH&5uOa_^S;SpDD)m)CZE&9>D_Ii^8D3hYVK)ReH`h8L+O z#_R2C+*JwqR$J+IHqUGGh7e$2(UO_`JJar8sA*<)$-wu_Cq~QBQIAPeoTyJxf0f`- zgTE<=fxnQ}6R*GC3~^ds7%5p^v-$_5@g@$vbOj}7+}P@{{gJ+>dtip@UA^(nG^viC zy2h=*x(Ue%A0Nrw?TG}cG~ZVcggAtjkyS!c`B%o90V|2maMvl9uAN)F z#;^otLXJ}A-{r&5PBOr^(=aL^@y38U)mWk`w_7)MZG@azZ+x+@a-mN>fa86dxTbO1 z_`Xj>4{NXOj6bK4a*t!;Wb11pCAZIsZ@X&`N4%VQUpl}&Rovj)QJ!ug)vMYTa_|LS z%zHpiFHXNb^%))eW`_GN&1!VIj~UipahA6@2OChsY|CU_ML=86xBH#BPxg)E6;O5` zi$-PWrkx?1>+7uPZXNH9e0iS#UHc9Z;w4-rDBrpg&y0S>aW$F@sEca!imjVB9!k_3 z?&npyrJYgSikhtPgw$S-Eo^9(>MHQ(*sm6-CREQetCx3Su{-@ zgoX@4tpIN~SrF#>@|4EPOViePW&+Y9&nI)_I8g=DLPXG7CpBJsJY10W5oQ{4YwFP| z3aN_1gwDE?&bTB`hWQIBROnqH;}#TR$E$>pIn-TwzGuAQj4FR^tS=MKp_hU)gL_u* zEx}uz9w#_n6YtMCzWR*9o#(_VZ7PqKM#lx4HhnG6m zoD`%!CU#%gW?pq>UVWsGv_Bm3@$vLRz#k?Bn=U7TsIxI!epab%=Udn86_chFr~E&h z)ESGht(+$2AK8AsXa4zyhF>?g=@D-JjarD?e2m{%$~tUgV}w+igw*`&@;dmH!E^tJ z&+!rCC1Y)|jTXRoNo%qH>|9m5zew}*^=K!){yiQoIc#gGvr7GNZK{0||HZ$FXxyo_ zmtoG=l7vfujptDv9n7m}A$p`>312V>c!$kpW%MrG@$4Hl~`+pF4%DjU2MDh zU4$3BZ2MqiuDaG1vfrYq7P@2Vy7S+_$yJW<-+#8ba2|8 zq8b-oiUnFoypR~7F7+?3Jc@Dc|KhfXZOwQ!_vlU=(m8b_&28mUWemVG0E?kc3Hl9NwqcZT6f7rawCF&|5MKWO}?1rQ>o(8YzFGCb88TyOmuk{ zS~r)TP~BxdxBB$(SQI-(HoNgljBxO}`!B11JwUdtU`AslVChxQ)g+OGH-6ikmol4q zZwq=MwSSjpFF7+-zcQ}4zQ4a?z85*B`~C;F!MFJdF4`!mhGSB1(oa-V=NG;$rPjQz z{)C1G%H|_l11;C4=JHAt5a6N>+HWZ{B}ZGSBK%^m-?f#eJcD5H zEU)hw^=xM%dYzSPw)L)_OhrBN?Dy)3S&O-RxjfM#p(cRan7Ott6;ogGzmkVFZ>&mp z(b+RqY3H=(pGdX#J+Um&>3pb~{NSVS|3-c{Kj(>Ad&KBgCHX7#rFEa-FMqoGHaj#f z3C3$abJtS?I7_&e7+)D5tiP7G-tx@FCnA7rg$j|9FCBKwTS~8fG4*ygF=?*RBIe zyR?Sx>M;NacI!r`ERQX*uM5qC*?iU7wmELpZr5ZR`6~08=!#5=K%JEnBAkVoF;vd0 ze_`S`L$dX`}exB%^1w-mLiHVh9Q~)f7(mVv4PR$(EC@P zawb{375O#+{F_AnP4;u>Bd5)stx;neekZ?WD$KaB+B(5;niuBpGShvgO z%(IJQrO;<@Pd?JQsXLzX6OBoDj*Pzs--x={oJb$$q+$J?cdH)<*MvlTT6vtAazNc> zF2rS$uE87uw#EibW9#VWsv<7Oar57xPj0zJjMsPu3+*lJg@O{!@jQNXM%w59M}+>E zJ#Q}kpuMKYK*^u-7}eahx3`IG5mhJ7{+_@Dp;dJu{_2YWTBnRMn=C zgN*o`I==9_V7C3QC$h#3>b)8ogv(!UpEEh}4jg|+M=nNg>HZf;Plm6%y1Fk6Aswbp z$WXWYco?ygb7~mq~=<0k<$eDstFo+4XA4)oM&+3q+sgMzC<#xda^$CjGS8 z6`@o=WQ(OC8T3nVz&oyc1oFTa<{?g0B(`YN$CX1e_z`IFq*X^E2l%VfuEOXV<_2aX z|NCz>%)5h(qO@KB7SCCXkYk{d{jRuWPR{JMMgNdLS;>A*)M}SobzE_~)%X_9`AS%( z@UkoWPBP5h^?pD3{nw8xKMz7D&b+t&RrmV)^>_b#|MAiPl%joFau)v5g+I~_b@~ni zw=@UuIh1=_i+7KN9ea_6Q|RhD-zU6$4Sq!fwE8pb-en>SJ~X@U7H$_V|5E(fcjx#| z-979<%YVkG?Z4#4Mu)W+2v545!){yste4qS%&yO!Bk&TbHCbL@a^W8DOR+!q7pDul zqQ;^&elmIM1ICfrnD~bIh1jmcWcols4qizvWM zD)$(8KeCh*ML>rJJIrunLgSyN?nK);eqRb?wR(AVD*^3V-OQ3~)l`~0swgSXH@X5Q(zqViWCq0IljcSAsAk<-@IW6p_aWy{f z_cPKMsJjU03+JLXq@_O4;q^huwe=T1`zq{@J-=pm`^+8Zuy5u=^FJpxeZCw>C#}WJ zHZImI_unva|D3t=-sVK(D_}ZLliy(?`JDc(Yh+*h;PmC8>nUF%jtb<8<9DA1OdsvJ z705CHCt{d+GnkSxxy0VJg*lt7RZ?AcN?5COjm$H3z$@Lj&Drg*kY9IRRXmy8tBKgs zr428BhYI&tb_7+oNRzzf)xBqL{JR>P6HNOTe!Ne7fTlFqFYFZdLs#We7TZlee9)}e zdiLbqk5T_NTKs{@bN5y{<&4|AV*H@5T*i8MmFN29l+OVbpM#BF2?T{J!FOoi63+); zxCt6NIf&=e6^8$_yeT{>hb|f<9FEj%zCY#lpz?mz_{otQrmB`(V56QJrmZhIWYdz9 zD@n(;Z}Dg2b7xwU+=2ej&jr@&XMJz1HW zxzPCJ8rVfO*~*WFN2NF0$^UfLd-j@tV6EBWaB?RCwD*0sZnVYL_5!C%X!wh0 zF#i6{$evzg4zbv^R~A_1!M>9FuH?bPhtO7$+K0fiar0T%uPXL@QMG(*lhB}ZJ#^VX zHVV6^_u|qLcITGU!REi48nk%Y<*G||PNg5ddS%PH&cA@f-wqgeJ6_Q6g>w6qQHD>C zo9TV0-`z1eX!@=Bt_{k5;nVvYTaJq6Eg-rl?Nq2)i@+kwX|=KEit z?+o28%vaxLR@+>SCq8`t31w&QUZ4#om>-;HZC()V9t2TUWhgeuVGZ znqF;~d0iIu_OITPL3dDZAH92H8i?D~jG8|48npgp_{8MQY_9m3ufNMmSpC*-$zDZ| z`^!h6OnCab%ERDF!vCJ%emt?h`043V{M&zIh2A=&nwS5bn|st1 zbo1PezfuD`VsQUG&)u%S^W>f_{_@P<2~j_9zCUU5XQ2O*h_Jw^YorX?m&#szmcAz@ zBK6|Mv!LOr4bC*@;r?b&gKFfnGjFEXABMRGM>OZfr*N@(w_`dPK`b6!MV{dhP2iB7k zaNllrMqXS0^!}c~bJve1LEBGcO1}N|V`ut5Q^bST;zu_Fzuvg9F@v@>^ka7#gTh5FCb85 z`0gFw1gX9BC$$~M7o$0?wd{i@3MajPLo~Ikg|wDmWX^PZ$pcQhelDZZ>$BR7EQ@gw znLA4**mp2jn;z=TSDNQIt^XFa7WURj?d1Wv)b4ue&83)hxb|Z z{3V}IaoHe)3#*QB`$w~x15R6Z>$d@!XTIz#y!_K7!UOS>I;!sVRr?^{cCyC&j1ax= z^;aUdY|d-5W>Jo=YD&DrEoDs?d+j2Ik$Y0@CxE{Jwtt%hUmw1!h|of*+!KlpsG9Cu=zzfr?~Ais;)1pd~D(oX8Pdz1O5RJ-3obrB(6vt-z*Y?UGU%3SPN*NDKd13~yb z(ZvX49elY34Bo1YLTv%6&t|V@{?7veoV{23h!D)Lxo*qGbl0povr*q1l{kd-97T0E z>Tx)~3T95h!+hG&MHy8vFg~dW?AY(n9ZczNa|Anro28r6uBniHLPO*HQ|6${z*XH9 zq4K>liO7zpT^WSv5?z3J0-lxrIhcmkeQ6zFo}udw3WN?4a&`4NYYyMXlCqN0Or3k8 z^52<0RlONi2EA2VcH8FgH0N;H-W%-?1}scRVY-%hZ03-ctLKI_NpWMkEy1@q zt8R&^5X^r7G#L-B#JPx?b*Xk}wWyZRCZB8D#kdz^NXC7QJT2AkA{B@WwE1or@H_Xm zvWtXm+!ie{>%hWG;I&_!IQ|*hS^cc{9cpt@uAMAwy{oXpA6F7Q*v7+7eZ1*xdfo%3 zj1xaQT?5oy*Ps)T*Xq{>7Am`d`n(}h@fGG_0f2UXcoP1-IzqMl(XoS8qs`#!Qtfd} z?fetk>89nzDkOBzI&HN&(fm_>J&`?U=9A-NO&w5|Dk{5eE>~~6nA=aPFC1($Rv}C6 z|J@7Nk@#w=6fA0$IR{$5Xz8B+Nl~0*`3TyMkIK zkk}v@3fOnZ2W#P1CkAy5mYo8w zOj2l2R;*Ygi*FI6l(tUpeJ zg=ewQ5HT}?R5+n0()qWtm|Jjk8QxBG3zfupw}Mj-#eu7vgY=4edh1 zb#hCMg})>GJo#xRD4U=E$`Z7h0qsZ@h~}C8zzP%1fDE5=PW>w71c{sh2{j%^jl3}K zqIO{bbV=M2=O=tBU`{RUaYm(wpQD4u5W128m$4ei2jryRG5BRXR@UYcAZbT4;IdyY z+h@KqyMv2vhLq5vAqGm*n$Whv2he5}?b?#;nF{1DOH`J+3bH`LbI~uHk)Fem)JN$3 zWB6Qnd?3qSJ3X&Nu@mLfO2?k-oMS(+FYknVj+p`qMMsGm^@U&Qs(_(b)SU?2s=HDr zyy^M4Dm3T==KVqK4PiA&>!V4^Xq4lj@Md8n-q+uBnpc`8;%Ffr$JLa zN2`YA9;nR^tW%yOO60Pc^usp zM?ThFCm(=NfsjTi)t~NEIUvSQwSy7=XuE?eYyLT<8a|}@?v+Y?06L(b#7W`km2GM7 zK8bW6vHg3+aXjX%)K?osOO3SMO_We&sW=s4(fgBIm(C8G%1{~&B^p@D-MU0%6U-M3 z^ujeK$*oPT#7#2cU?nud2uNwHTFfl?XX}Rh^3LLm$=$9K?~d_hf)hD63NPz((CORm z)Sy0sV(dkQFhH+D6pS6#sm%^M5}FsyL@0xki*QVNVGjTMr_rSKOVT03S~s9SvdpDV z^<{3!S8F&rn-ql8=+wX^LJ_=Z2rl?h@7jjZ2|1e?p84~Lb%k}sRb;;%DFYedZbli_ z^FP`h+-+iLAo{3|dWjt&hptGurprlhy3(nVt7_SgMq)GFhzLB6nUh^83&2LPs(^(v z&pcZC4`fb<5?)y|@~r}_t($%i!R-X0aNBM<$+A|vYpYf-Mu&jqMGQ1BMDcKs3gm$! zOlOt@$VqNyT2X$-pnlgmNBqQyo>=+7@vv}P9}KV=`@IhKBdc~%M-#5$SRGZul^>}| zRpRHBFzw(~JlUzPvY|HAjphlx&y~mn8?xG~IR`1Z4KJS{*y&S4Y)unYPrGI&4!;ywS^Z@_3@&>kZ&fZIRfzjC7P;*I{H>$K?1 zQ|r?0poxCSfG`Q9t^$oHQ^sUnOxUliT8#}{Pd92^mt8YBFa*N~L_^5R5JhocW#0>Z zFmMHtRmqu>ee}p>n%vsnaaD|!Kp`IGqOR)gy3PgvT)e+}d%zVr4O|wQ(lqpTq`|0E zb)4$-9&%7^b1+P;e;pt0Va^^gW2~4?`4A^QY`BtU)I;P19&pA^-iqg^%8;6pQdZAb zK-jy=$bMVg&afI}tE_KkKCsc^2j%`T2wPtXr+%!@j6pzQVPc|Gb)6S_w#0M^f ziNb1(*@ClD%BcPcKhedGN=ucRVt$XlfWWtlW;3 zUBPKi!J`-*Xn%nR=5YMM|?uA} zUEd>#K6eyGv<8Y$7yo$f(1XBO+QBj3lX;%@R1U$t*(ezj;;Z&@uvuT;T)V}pPm!ID zrJ0dB>8d;QKzoYa$e>ggilW-CrYr+;pDvgaCWdmGu{=Ao^-Oa_GD1q>gE}%oW~AyA z0Y&qvt;v&HX2KHft37o}k4#!B38;`EG}iZT;1#vUSbm*YbLcdlspS z3x;Dy1jx9|n+dLSa&M$7gY1(N^wtte>dmsTG{V_-gBxyfnRSkLO};qCUvEl1JODjQ zYRk6E>6v$=Yzt=>|bO|1BI zDDi2dHYV>}$|mXa@Gy+#C+31Q2a`Gv=tdDOwnJ*Bj7NY z86db7tCHa;N@9?3MrzV8jx|ABwo$~f4Cfqu5wLVWif-7XCS4hd^Q@B;DBtaCIK~fz zwvdtaJ!WBG%CNRthI|;)&)0C!5;P30H|MAgwxu=8pg;#EgBDm?$1+7YmUs92F)A=< z5kfi`&lIHzPxgL)=BbEm8$V)qnCt}igt_<}iUJYy<~}$!fdFD@?4kRNDH#{Rpt)3E zK5w#U-v4e3A39+8yQ6QH5d!~AyRD}@?0k!<*W$y36^*GBwfJyAF~U@CL@hY7DL6*$ zJQc?p(kGmeG&+zbu>B-)kBUY;umwV=vkA~N#ly+;S^xw!|1xDnH^r84-nd6Ii1_8K z-Uf0rP`=;lg9~dQ?=hD>%5n$wM!ou1(}|B<%Av(;pNHdM1h=AM5uH@8(xVEcMoku? zpTeJFRo2++@H;cV&eS#*Wq3aY_$�-nsZSJ1@E29XUTTN(fh@O(4gbC{H=~hn7dX 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

t=>sNIq(Tq!c)h$Xlf=LL#(kCi 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 z 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 u~xuRg9NasK<9% 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 nl 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

BKUQO(La4Qi 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

LGV?_&a@M$Vni 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

{{&MLe+cD~?4 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 <% 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%0ALo|jI+AN~Y1vQgl7 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

ZF7>NRJ9niyaf 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

4O@GvS*BNd@jc^|A#=lz69*NBs)<{W2x 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Ǹ~4KBZ^Lm^V# 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%0AA+1OE7E|*Wzx0k~|#QeeCio+#1kM7)E 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

yo%JTc|{F6`M1AooTLRo=|L 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

yE4Kui= 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�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

j=5*2?8tuatqVzrc;)GR#+y=N)9jtjG{+_Y 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

>5jO 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�*uV0r~5I+t0hMA2rEO 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

l~9qm`^|bX51^*a^Y(n@Gux? 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