From 9e979c39a499ebe1a2adadcedb9c4ffd32e56ef1 Mon Sep 17 00:00:00 2001 From: 4R5T Date: Sat, 4 Oct 2025 21:47:59 -0500 Subject: [PATCH 01/14] Support gpt5 --- tiny_scientist/utils/llm.py | 72 +++++++++++++++++++++++++++------ tiny_scientist/utils/pricing.py | 1 + 2 files changed, 61 insertions(+), 12 deletions(-) diff --git a/tiny_scientist/utils/llm.py b/tiny_scientist/utils/llm.py index 7f4d0ba..33a319e 100644 --- a/tiny_scientist/utils/llm.py +++ b/tiny_scientist/utils/llm.py @@ -30,6 +30,7 @@ "gpt-4o-mini-2024-07-18", "gpt-4o-2024-05-13", "gpt-4o-2024-08-06", + "gpt-5", "o1-preview-2024-09-12", "o1-mini-2024-09-12", "o1-2024-12-17", @@ -142,6 +143,28 @@ def get_batch_responses_from_llm( output_tokens = getattr(response.usage, "completion_tokens", 0) if cost_tracker is not None: cost_tracker.add_cost(model, input_tokens, output_tokens, task_name) + elif model.startswith("gpt-5"): + new_msg_history = msg_history + [{"role": "user", "content": msg}] + response = client.chat.completions.create( + model=model, + messages=[ + {"role": "system", "content": system_message}, + *new_msg_history, + ], + max_completion_tokens=MAX_NUM_TOKENS, + n=n_responses, + stop=None, + seed=0, + ) + content = [r.message.content for r in response.choices] + new_msg_history = [ + new_msg_history + [{"role": "assistant", "content": c}] for c in content + ] + if hasattr(response, "usage"): + input_tokens = getattr(response.usage, "prompt_tokens", 0) + output_tokens = getattr(response.usage, "completion_tokens", 0) + if cost_tracker is not None: + cost_tracker.add_cost(model, input_tokens, output_tokens, task_name) elif any( model.startswith(prefix) for prefix in ["meta-llama/", "Qwen/", "deepseek-ai/", "mistralai/"] @@ -282,6 +305,24 @@ def get_response_from_llm( if hasattr(response, "usage"): input_tokens = getattr(response.usage, "prompt_tokens", 0) output_tokens = getattr(response.usage, "completion_tokens", 0) + elif model.startswith("gpt-5"): + new_msg_history = msg_history + [{"role": "user", "content": msg}] + response = client.chat.completions.create( + model=model, + messages=[ + {"role": "system", "content": system_message}, + *new_msg_history, + ], + max_completion_tokens=MAX_NUM_TOKENS, + n=1, + stop=None, + seed=0, + ) + content = response.choices[0].message.content + new_msg_history = new_msg_history + [{"role": "assistant", "content": content}] + if hasattr(response, "usage"): + input_tokens = getattr(response.usage, "prompt_tokens", 0) + output_tokens = getattr(response.usage, "completion_tokens", 0) elif model in ["o1-preview-2024-09-12", "o1-mini-2024-09-12"]: new_msg_history = msg_history + [{"role": "user", "content": msg}] response = client.chat.completions.create( @@ -461,20 +502,27 @@ def get_batch_responses_from_llm_with_tools( "gpt" in model or model in ["o1-preview-2024-09-12", "o1-mini-2024-09-12"] ): new_msg_history = msg_history + [{"role": "user", "content": msg}] + kwargs = { + "model": model, + "messages": [ + {"role": "system", "content": system_message}, + *new_msg_history, + ], + "tools": tools, + "tool_choice": "auto", + "n": n_responses, + "stop": None, + "seed": 0, + } + if model.startswith("gpt-5"): + kwargs["max_completion_tokens"] = MAX_NUM_TOKENS + else: + kwargs["temperature"] = temperature + kwargs["max_tokens"] = MAX_NUM_TOKENS + try: response = client.chat.completions.create( # type: ignore[call-overload] - model=model, - messages=[ - {"role": "system", "content": system_message}, - *new_msg_history, - ], - tools=tools, - tool_choice="auto", # Or specify a tool like {"type": "function", "function": {"name": "my_function"}} - temperature=temperature, - max_tokens=MAX_NUM_TOKENS, - n=n_responses, - stop=None, - seed=0, # Seed might not be available for all models or with tool use + **kwargs ) # Extract token usage for OpenAI diff --git a/tiny_scientist/utils/pricing.py b/tiny_scientist/utils/pricing.py index 1fc0a14..4dd5f3d 100644 --- a/tiny_scientist/utils/pricing.py +++ b/tiny_scientist/utils/pricing.py @@ -7,6 +7,7 @@ "gpt-3.5-turbo": (0.5, 1.5), "gpt-4o-mini": (0.15, 0.6), "gpt-4o": (2.5, 10), + "gpt-5": (1.25, 10), "o1-preview": (15, 60), "o1-mini": (1.1, 4.4), "o1": (15, 60), From e334e517a3e83454cdce7f5186d4678976c72656 Mon Sep 17 00:00:00 2001 From: 4R5T Date: Tue, 21 Oct 2025 00:38:06 -0500 Subject: [PATCH 02/14] fix coder --- examples/demo.py | 64 ++++++++++------------ tiny_scientist/coder.py | 48 +++++++++++++--- tiny_scientist/mcp/docker_runner_server.py | 20 +++---- tiny_scientist/prompts/coder_prompt.yaml | 58 ++++++++++++++------ tiny_scientist/prompts/thinker_prompt.yaml | 31 ++++++++++- tiny_scientist/thinker.py | 8 +++ tiny_scientist/utils/llm.py | 11 ++++ 7 files changed, 164 insertions(+), 76 deletions(-) diff --git a/examples/demo.py b/examples/demo.py index a8a785e..e01e394 100644 --- a/examples/demo.py +++ b/examples/demo.py @@ -1,6 +1,5 @@ import argparse import json -import os from tiny_scientist.scientist import TinyScientist @@ -10,7 +9,7 @@ def main() -> None: parser.add_argument( "--output_dir", type=str, - default="experiments/demo_3", + default="demo_test", help="Base output directory", ) parser.add_argument( @@ -42,7 +41,7 @@ def main() -> None: ) args = parser.parse_args() - ideas = [ + ideas = [ # noqa: F841 "Adaptive Confidence-Guided Prompting for Improved Factuality in Large Language Models", "Adaptive Contextual Pruning: Improving Relevance and Conciseness in Long-Form Generation", "Adaptive Prompt Decomposition for Coherent Long-Range Code Generation", @@ -64,44 +63,39 @@ def main() -> None: "Temporal Bias Decay Simulation: Reducing Social Biases in Large Language Models through Evolutionary Prompting", "Temporal Dependency Unfolding: Improving Code Generation for Complex Stateful Systems", ] - for idx, idea in enumerate(ideas): - safe_idea = idea.replace(" ", "_") - args.output_dir = f"experiments/non_bio_{safe_idea}" - os.makedirs(args.output_dir, exist_ok=True) - - # Instantiate TinyScientist and run pipeline - scientist = TinyScientist( - model=args.model, - output_dir=args.output_dir, - prompt_template_dir=args.prompt_template_dir, - template=args.template, - enable_safety_check=args.enable_safety_check, - budget=args.budget, - ) - - idea = scientist.think( - intent="Adaptive Confidence-Guided Prompting for Improved Factuality in Large Language Models" - ) + # Instantiate TinyScientist and run pipeline + scientist = TinyScientist( + model=args.model, + output_dir=args.output_dir, + prompt_template_dir=args.prompt_template_dir, + template=args.template, + enable_safety_check=args.enable_safety_check, + budget=args.budget, + ) - with open(args.output_dir + "/idea.json", "w") as f: - json.dump(idea, f, indent=2) + idea = scientist.think( + intent="Adaptive Prompt Decomposition for Coherent Long-Range Code Generation", + ) - status, experiment_dir = scientist.code(idea=idea) + with open(args.output_dir + "/idea.json", "w") as f: + json.dump(idea, f, indent=2) + status, experiment_dir = scientist.code(idea=idea) - if status is True: - pdf_path = scientist.write(idea=idea, experiment_dir=experiment_dir) + if status is True: + print(f"✅Experiment code generated at: {experiment_dir}") + # pdf_path = scientist.write(idea=idea, experiment_dir=experiment_dir) - # Display total cost summary - scientist.get_total_cost() + # # Display total cost summary + # scientist.get_total_cost() - tex_path = args.output_dir + "/latex/acl_latex.tex" - review = scientist.review( - tex_path=tex_path, - ) - print(review) - with open(args.output_dir + "/review.json", "w") as f: - json.dump(review, f, indent=2) + # tex_path = args.output_dir + "/latex/acl_latex.tex" + # review = scientist.review( + # tex_path=tex_path, + # ) + # print(review) + # with open(args.output_dir + "/review.json", "w") as f: + # json.dump(review, f, indent=2) if __name__ == "__main__": diff --git a/tiny_scientist/coder.py b/tiny_scientist/coder.py index 3aa745c..d76f952 100644 --- a/tiny_scientist/coder.py +++ b/tiny_scientist/coder.py @@ -133,10 +133,14 @@ def run( return True, self.output_dir, None def _format_experiment_for_prompt( - self, exp: Dict[str, str] - ) -> Tuple[str, str, str]: + self, exp: Dict[str, Any] + ) -> Tuple[str, str, str, str, str, str]: + model_section = self._serialize_for_prompt(exp.get("Model", "")) + dataset_section = self._serialize_for_prompt(exp.get("Dataset", "")) + metric_section = self._serialize_for_prompt(exp.get("Metric", "")) + llm_prompt = self.prompts.experiment_keyword_prompt.format( - model=exp["Model"], dataset=exp["Dataset"], metric=exp["Metric"] + model=model_section, dataset=dataset_section, metric=metric_section ) llm_output, _ = get_response_from_llm( @@ -164,7 +168,23 @@ def _format_experiment_for_prompt( dataset_kw = ", ".join(keyword_info.get("dataset", [])) metric_kw = ", ".join(keyword_info.get("metric", [])) - return model_kw, dataset_kw, metric_kw + return ( + model_kw, + dataset_kw, + metric_kw, + model_section, + dataset_section, + metric_section, + ) + + @staticmethod + def _serialize_for_prompt(section: Any) -> str: + if isinstance(section, (dict, list)): + try: + return json.dumps(section, indent=2, ensure_ascii=False) + except TypeError: + return str(section) + return str(section) def _summarize_to_bullets(self, paragraph: str) -> str: # Simple sentence-splitting bullet conversion @@ -178,17 +198,27 @@ def _run_experiment_loop( current_iter = 0 run_time = 1 - # Initial prompt - model, dataset, metric = self._format_experiment_for_prompt(idea["Experiment"]) + experiment_spec = idea["Experiment"] + ( + model_kw, + dataset_kw, + metric_kw, + model_text, + dataset_text, + metric_text, + ) = self._format_experiment_for_prompt(experiment_spec) next_prompt = self.prompts.experiment_prompt.format( title=idea["Title"], problem=idea["Problem"], novelty=idea["NoveltyComparison"], approach=idea["Approach"], - model=model, - dataset=dataset, - metric=metric, + model_keywords=model_kw, + dataset_keywords=dataset_kw, + metric_keywords=metric_kw, + model_details=model_text, + dataset_details=dataset_text, + metric_details=metric_text, max_runs=self.max_runs, baseline_results=baseline_results, ) diff --git a/tiny_scientist/mcp/docker_runner_server.py b/tiny_scientist/mcp/docker_runner_server.py index e947246..8bd7664 100644 --- a/tiny_scientist/mcp/docker_runner_server.py +++ b/tiny_scientist/mcp/docker_runner_server.py @@ -348,18 +348,10 @@ def get_or_build_experiment_image(self, experiment_py_path: str) -> Optional[str ) try: # Build with detailed logging - build_logs = self.docker_client.images.build( - path=tmpdir, tag=image_name, rm=True, decode=True + image, build_logs = self.docker_client.images.build( + path=tmpdir, tag=image_name, rm=True ) - # Check for build errors - for log in build_logs: - if "error" in log: - print(f"[Docker] Build error: {log['error']}") - raise Exception( - f"Docker build failed: {log['error']}" - ) - elif "stream" in log: - print(f"[Docker] {log['stream'].strip()}") + print(f"[Docker] Successfully built image: {image_name}") except Exception as e: print(f"[Docker] Failed to build image {image_name}: {e}") # Fallback to base image @@ -444,6 +436,12 @@ def run_experiment_in_docker( shutil.copytree(src, dst, dirs_exist_ok=True) return (0, logs) else: + # Print error logs to stderr so they're visible + print( + f"[Docker] Container failed with logs:\n{logs}", + file=sys.stderr, + ) + # Check if it's a missing package error if "ModuleNotFoundError" in logs: missing_pkg = self.extract_missing_package(logs) diff --git a/tiny_scientist/prompts/coder_prompt.yaml b/tiny_scientist/prompts/coder_prompt.yaml index 4ee8f8b..b4a7030 100644 --- a/tiny_scientist/prompts/coder_prompt.yaml +++ b/tiny_scientist/prompts/coder_prompt.yaml @@ -30,11 +30,35 @@ experiment_prompt: | Proposed Approach: {approach} ## Experimental Setup - The following describes the experiment setup. You must base your implementation strictly on this structure: + The following describes the experiment setup. You must base your implementation strictly on this structure and keep it lightweight. - Models/Algorithms to use: {model} - Datasets involved: {dataset} - Evaluation metrics: {metric} + Models/Algorithms (key terms): {model_keywords} + Detailed model specification: + {model_details} + + Datasets (key terms): {dataset_keywords} + Detailed dataset specification (use this loader exactly — do not invent file paths): + {dataset_details} + + Evaluation metrics (key terms): {metric_keywords} + Detailed metric specification: + {metric_details} + + ## Hard Constraints + - Use only lightweight architectures: bag-of-words/logistic regression, shallow MLP (≤2 hidden layers, ≤128 units), shallow CNN (≤3 conv layers, ≤32 filters), linear SVM, single-layer GRU (≤64 hidden units). Total parameter count should stay under ~100k. + - ABSOLUTELY FORBIDDEN: importing `transformers`, `BertTokenizer`, any BERT/GPT/ViT class, graph neural networks, diffusion models, random feature generators (`torch.rand`, `np.random` placeholders for embeddings), manual placeholder paths, loading huge pretrained checkpoints. + - Dataset must be loaded via the provided command. If it fails, switch to one of: `datasets.load_dataset("ag_news")`, `datasets.load_dataset("imdb")`, `datasets.load_dataset("yelp_polarity")`, `datasets.load_dataset("cifar10")`, `datasets.load_dataset("mnist")`, `datasets.load_dataset("fashion_mnist")`, `datasets.load_dataset("amazon_polarity")`, or an equivalent auto-downloadable dataset. NEVER fall back to local files. For text, prefer simple vectorizers (`CountVectorizer`, `TfidfVectorizer`) over tokenizers. + - Always subsample large datasets: cap training examples at ≤5,000 and validation/test at ≤2,000 each (use `select(range(...))` or appropriate slicing). Document this in code comments. + + ## Required Script Structure + Your script MUST include the following components (you may adapt names, but all roles must be present): + 1. `load_data()` – downloads the dataset using the loader above, subsamples to the limits (≤5k train / ≤2k val/test), and converts examples into explicit tensors/arrays (`torch.tensor` or `numpy.array`). If using HuggingFace datasets, call `.set_format(type="torch", columns=[...])` or manually build tensors, then wrap them with `torch.utils.data.TensorDataset` + `DataLoader` (or sklearn splits if you stay in sklearn). Include a brief comment explaining why this preprocessing keeps the experiment lightweight. + 2. `build_model()` – constructs the lightweight model defined in the plan. Document input/output dimensions explicitly, and add a short justification for why this architecture is the simplest option that still addresses the task. + 3. `train(model, train_loader, optimizer, criterion, device)` – iterates over batches, moves tensors to `device`, computes loss, `loss.backward()`, `optimizer.step()`. Log the epoch count and explain in a comment why the number of epochs is sufficient. + 4. `evaluate(model, data_loader, device)` – returns a dict of metrics computed from real predictions vs ground truth. Include a comment explaining why the chosen metrics match the scientific goal. + 5. `main(out_dir)` – orchestrates the steps above, saves `final_info.json` with metric values (no placeholder numbers), and prints dataset sizes so we can verify subsampling. + + Keep training loops short (≤5 epochs, batch_size ≤64) so the experiment finishes quickly on CPU. If the dataset is extremely small, 3 epochs are usually enough. ## Execution Command (DO NOT MODIFY): You have {max_runs} runs to complete this experiment. For each run, the script will be executed using: @@ -42,15 +66,12 @@ experiment_prompt: | where `i` is the run number (`run_1`, `run_2`, etc.). ## YOU MUST ENSURE experiment.py: - 1. Parses the `--out_dir` argument. - 2. Creates the output directory using `os.makedirs(out_dir, exist_ok=True)`. - 3. **CRITICAL: Performs REAL model training and evaluation with actual data loading, model forward/backward passes, and gradient updates.** - - ❌ ABSOLUTELY FORBIDDEN: Using `np.random.random()`, `torch.rand()`, or any simulated/dummy results - - ❌ ABSOLUTELY FORBIDDEN: Hardcoded or placeholder results like `{{"accuracy": 0.85}}` - - ✅ REQUIRED: Load real datasets, define real model architectures, run actual training loops - - ✅ REQUIRED: All metrics must be computed from actual model predictions vs ground truth - 4. Implements evaluation metrics with real logic (e.g., actual accuracy/F1/loss computation). - 5. **Saves results as a dictionary in a file named `final_info.json` placed directly inside `out_dir`** — do **not** save into nested folders like `out_dir/variant_name/final_info.json`. + 1. Parses the `--out_dir` argument and calls `os.makedirs(out_dir, exist_ok=True)`. + 2. Loads the dataset using the specified loader (or the fallback whitelist above) with NO manual file paths. + 3. Builds a lightweight model that matches the dataset feature shape; document tensor dimensions in code comments when not obvious. No hidden “placeholder embeddings”. + 4. Performs REAL training with gradient updates (`optimizer.zero_grad()`, `loss.backward()`, `optimizer.step()`) on actual features (no zero/random stand-ins). + 5. Computes metrics from real predictions (e.g., accuracy/F1) using sklearn/torch utilities—no hardcoded results. + 6. Saves a dict of metrics to `{{out_dir}}/final_info.json` (no nested folders). ## Computational Constraints - Ensure the code is computationally affordable to run on a single GPU or CPU machine. @@ -61,11 +82,12 @@ experiment_prompt: | Do not add extra command-line arguments. **VERIFICATION CHECKLIST** (You MUST pass all checks): - - [ ] Does the code load a real dataset (not random data)? - - [ ] Does the code define a real model architecture (not a dummy class)? - - [ ] Does the code have a training loop with actual optimizer.step() calls? - - [ ] Are metrics computed from real predictions (not random numbers)? - - [ ] Does final_info.json contain results from actual execution? + - [ ] Dataset is downloaded via library loader (no placeholder paths, no mocks, no random tensors) and converted to tensors/arrays explicitly. Document any subsampling (≤5k train / ≤2k val/test). + - [ ] Model is a lightweight architecture (no transformer/graph/pretrained behemoth) and input/output shapes line up. Forbidden imports (`transformers`, BERT classes) are absent. + - [ ] Training loop performs `optimizer.zero_grad()`, `loss.backward()`, `optimizer.step()` on real batches (no synthetic placeholder features). + - [ ] Evaluation computes metrics from actual predictions vs labels (no dummy numbers). + - [ ] `final_info.json` is written in `out_dir` with real metric values. + - [ ] Sanity check: print or log dataset sizes and confirm they respect the limits; mention parameter count estimate in a comment. If your current experiment.py has placeholder code like `...`, replace them with runnable implementations. If any external functions like `compute_loss`, `evaluate_model`, or `log_results` are used, implement them too. diff --git a/tiny_scientist/prompts/thinker_prompt.yaml b/tiny_scientist/prompts/thinker_prompt.yaml index 6eae5e7..3a3669e 100644 --- a/tiny_scientist/prompts/thinker_prompt.yaml +++ b/tiny_scientist/prompts/thinker_prompt.yaml @@ -523,19 +523,44 @@ experiment_plan_prompt: | In , briefly discuss your reasoning behind the chosen approach. In , provide the plan in JSON format with these fields: - - "Model": Detailed description of model architecture with specific components - - "Dataset": Detailed description of dataset including size, split, preprocessing - - "Metric": Description of evaluation metrics with justification + - "Model": Detailed description of model architecture with specific components. You must stay within LIGHTWEIGHT architectures: + * Allowed families: bag-of-words/logistic regression, shallow MLP/FFN (≤2 hidden layers, ≤128 units), shallow CNN (≤3 convolutional layers, ≤32 filters), linear SVM, single-layer GRU (≤64 hidden units). + * Forbidden: Transformers (BERT, GPT, ViT, etc.), large pretrained backbones, graph neural networks, diffusion models, custom random feature generators. + * Document input/output dimensions so coder can wire tensors without guessing. Provide literal numeric values (e.g., use 3072 instead of `32 * 32 * 3`). + * Absolutely NO comments (`//` or `/* */`) inside JSON values. + * Keep parameter counts tiny: total hidden units per layer ≤ 128, total trainable parameters ≤ ~100k. + - "Dataset": Detailed description of dataset including: + * "Name": MUST be a real dataset available on HuggingFace Datasets (verify it exists!) + * "Size": Number of samples (limit each split to ≤ 5,000 training examples and ≤ 2,000 for validation/test in the initial plan to keep runtime low) + * "Splits": Train/validation/test split ratios (explicitly state how you will downsample large datasets to the limits above) + * "Preprocessing": Required preprocessing steps (e.g., lowercasing text, CountVectorizer/TF-IDF, image normalization). Specify resulting feature shapes. + * Absolutely NO comments (`//` or `/* */`) or inline expressions inside the JSON. + * "Load_Command": The exact Python call that loads the dataset programmatically (e.g., `datasets.load_dataset("ag_news")`, `datasets.load_dataset("imdb")`, `sklearn.datasets.load_iris()`). The identifier MUST be valid on the target library—generic names like `'coco'` or any path placeholders are forbidden. If a dataset needs manual downloads, select a different public dataset that can be fetched automatically. + * CRITICAL: Stay within this downloadable shortlist unless the intent explicitly demands otherwise: `{{"ag_news", "imdb", "yelp_polarity", "cifar10", "mnist", "fashion_mnist", "amazon_polarity"}}`. If none fit, clearly justify an alternative that is still auto-downloadable. + - "Metric": Description of evaluation metrics with justification (use key name "Metric", NOT "Evaluation_Metrics") + * Include a short self-check note confirming that dataset size limits, model simplicity, and lack of comments are satisfied. In , provide a DETAILED experimental plan as a Markdown table. This table MUST include the following columns and rows: - "Component": The part of the experiment - "Specification": A DETAILED description with specifics (not vague descriptions) - "Justification / Rationale": Why this choice is appropriate, citing relevant literature - "Status": Leave this column EMPTY + - Include an additional row titled **Sanity Checks** listing: + * Dataset subsampling strategy confirming ≤5,000 train / ≤2,000 val/test examples. + * Model parameter count estimate (≤100k parameters). + * Confirmation that JSON contains no inline comments or expressions. **REQUIRED ROWS** (at minimum): 1. **Model Architecture**: Specify exact architecture, layers, dimensions, parameters 2. **Dataset**: Name, size, splits (train/val/test), preprocessing steps + - **CRITICAL DATASET REQUIREMENT**: You MUST use a dataset that is: + a) Publicly available on HuggingFace Datasets Hub (https://huggingface.co/datasets) and can be loaded with `datasets.load_dataset()`, OR + b) A standard benchmark dataset with clear download instructions (e.g., via torchvision, tensorflow_datasets) + - ❌ DO NOT invent dataset names (e.g., "Gutenberg Dataset" does not exist on HuggingFace) + - ✅ Prefer the shortlist `ag_news`, `imdb`, `yelp_polarity`, `cifar10`, `mnist`, `fashion_mnist`, `amazon_polarity`. If intent requires a different dataset, confirm it is auto-downloadable and provide the exact `datasets.load_dataset` call. + - ❌ DO NOT use placeholder file paths such as `path/to/...`; rely on library loaders only + - ✅ Verify the dataset exists (including the config/split name) before specifying it + - Include the exact load command: e.g., `datasets.load_dataset("wikitext", "wikitext-2-raw-v1")` 3. **Baselines**: List 3-5 specific baseline methods to compare against (with citations) 4. **Training Setup**: Optimizer, learning rate, batch size, epochs, hardware 5. **Evaluation Metrics**: Primary and secondary metrics with justification diff --git a/tiny_scientist/thinker.py b/tiny_scientist/thinker.py index 2af13e1..7e65a16 100644 --- a/tiny_scientist/thinker.py +++ b/tiny_scientist/thinker.py @@ -152,6 +152,10 @@ def _process_single_idea( # Apply comprehensive safety check if enabled current_idea_final = self._safety_check(current_idea_final) + if not current_idea_final: + print("[Thinker] Safety check returned empty output; discarding this idea.") + return None + current_idea_dict = json.loads(current_idea_final) print( @@ -846,6 +850,10 @@ def _safety_check(self, idea_json: str) -> str: Returns: str: Modified idea JSON with enhanced safety """ + if idea_json is None: + print("⚠️ Safety check skipped: received empty idea JSON.") + return idea_json + if not self.enable_safety_check or not self.safety_checker: return idea_json diff --git a/tiny_scientist/utils/llm.py b/tiny_scientist/utils/llm.py index 7f4d0ba..54a5fa6 100644 --- a/tiny_scientist/utils/llm.py +++ b/tiny_scientist/utils/llm.py @@ -7,6 +7,7 @@ import backoff import openai import toml +import yaml from google.generativeai.types import GenerationConfig from tiny_scientist.budget_checker import BudgetChecker @@ -690,6 +691,16 @@ def fix_invalid_escapes(match): print("[SUCCESS] Fixed JSON parsing errors and parsed successfully") return parsed_json except json.JSONDecodeError as e2: + # Fallback: attempt to parse with YAML loader to tolerate minor JSON deviations + for candidate in (fixed_string, json_string): + try: + parsed_yaml = yaml.safe_load(candidate) + except yaml.YAMLError: + continue + if isinstance(parsed_yaml, dict): + print("[SUCCESS] Parsed JSON via YAML fallback") + return cast(Dict[str, Any], parsed_yaml) + # Log the error for debugging print(f"[ERROR] JSON parse error: {e}") print(f"[ERROR] After fixes, still failed: {e2}") From 46b65477cefa9d05c86cf202ee59195ca226255f Mon Sep 17 00:00:00 2001 From: 4R5T Date: Fri, 24 Oct 2025 08:31:24 -0500 Subject: [PATCH 03/14] update --- backend/app.py | 131 ++-- backend/tests/test_coder_demo.py | 76 +++ frontend/package.json | 1 - frontend/src/components/LogDisplay.jsx | 39 +- .../src/components/TreePlotVisualization.jsx | 637 +++++++++++++----- frontend/src/setupProxy.js | 12 + poetry.lock | 112 ++- pyproject.toml | 1 + tiny_scientist/mcp/docker_runner_server.py | 55 +- 9 files changed, 804 insertions(+), 260 deletions(-) create mode 100644 backend/tests/test_coder_demo.py create mode 100644 frontend/src/setupProxy.js diff --git a/backend/app.py b/backend/app.py index d6c6d37..45fc392 100644 --- a/backend/app.py +++ b/backend/app.py @@ -1,41 +1,74 @@ import builtins -import io +import logging import os import sys +import time from typing import Any, Dict, Optional, Union -from flask import Flask, Response, jsonify, request, send_file, session -from flask_cors import CORS -from flask_socketio import SocketIO +import eventlet + +eventlet.monkey_patch() + +from flask import Flask, Response, jsonify, request, send_file, session # noqa: E402 +from flask_cors import CORS # noqa: E402 +from flask_socketio import SocketIO # noqa: E402 project_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) if project_root not in sys.path: sys.path.insert(0, project_root) + original_print = builtins.print -original_stdout = sys.stdout -# Buffer to store messages until socketio is ready -log_buffer = [] +_LOG_BUFFER: list[dict[str, Any]] = [] +_MAX_LOG_BUFFER_LENGTH = 500 -class WebSocketCapture(io.StringIO): - def write(self, text: str) -> int: - # Also write to original stdout - original_stdout.write(text) - # Store for WebSocket emission - if text.strip(): # Only non-empty messages - log_buffer.append(text.strip()) - return len(text) +def _push_log(message: str, level: str = "info") -> None: + message = message.strip() + if not message: + return + payload = { + "message": message, + "level": level, + "timestamp": time.time(), + } + _LOG_BUFFER.append(payload) + if len(_LOG_BUFFER) > _MAX_LOG_BUFFER_LENGTH: + del _LOG_BUFFER[0] + try: + if "socketio" in globals(): + socketio.emit("log", payload) + except Exception: + pass + + +class SocketIOLogHandler(logging.Handler): + def emit(self, record: logging.LogRecord) -> None: + try: + message = self.format(record) + except Exception: + message = record.getMessage() + _push_log(message, record.levelname.lower()) + + +def flush_log_buffer() -> None: + global _LOG_BUFFER + if not _LOG_BUFFER: + return + try: + for payload in _LOG_BUFFER: + socketio.emit("log", payload) + except Exception: + return + finally: + _LOG_BUFFER = [] def websocket_print(*args: Any, **kwargs: Any) -> None: - # Call original print - original_print(*args, **kwargs) - # Also emit via WebSocket in real-time message = " ".join(str(arg) for arg in args) - if message.strip(): - emit_log_realtime(message.strip()) + _push_log(message) + original_print(*args, **kwargs) # Override print globally before importing tiny_scientist modules @@ -53,41 +86,6 @@ def websocket_print(*args: Any, **kwargs: Any) -> None: pass -# Create a function to emit buffered logs when socketio is ready -def emit_buffered_logs() -> None: - global log_buffer - try: - for message in log_buffer: - socketio.emit( - "log", - { - "message": message, - "level": "info", - "timestamp": __import__("time").time(), - }, - ) - log_buffer = [] # Clear buffer after emitting - except Exception: - pass - - -# Create a function to emit logs in real-time -def emit_log_realtime(message: str, level: str = "info") -> None: - try: - # Check if socketio is available - if "socketio" in globals(): - socketio.emit( - "log", - { - "message": message, - "level": level, - "timestamp": __import__("time").time(), - }, - ) - except Exception: - pass - - from tiny_scientist.budget_checker import BudgetChecker # noqa: E402 from tiny_scientist.coder import Coder # noqa: E402 from tiny_scientist.reviewer import Reviewer # noqa: E402 @@ -129,7 +127,15 @@ def patch_module_print() -> None: "http://localhost:3000", ], ) -socketio = SocketIO(app, cors_allowed_origins="*") +socketio = SocketIO(app, cors_allowed_origins="*", async_mode="eventlet") +root_logger = logging.getLogger() +if not any(isinstance(handler, SocketIOLogHandler) for handler in root_logger.handlers): + socketio_handler = SocketIOLogHandler() + socketio_handler.setLevel(logging.INFO) + socketio_handler.setFormatter(logging.Formatter("%(message)s")) + root_logger.addHandler(socketio_handler) +if root_logger.level > logging.INFO: + root_logger.setLevel(logging.INFO) # Print override is now active print("🚀 Backend server starting with WebSocket logging enabled!") @@ -245,7 +251,7 @@ def configure() -> Union[Response, tuple[Response, int]]: @app.route("/api/generate-initial", methods=["POST"]) def generate_initial() -> Union[Response, tuple[Response, int]]: """Generate initial ideas from an intent (handleAnalysisIntentSubmit)""" - emit_buffered_logs() # Emit any buffered logs from module initialization + flush_log_buffer() # Emit any buffered logs from module initialization data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 @@ -523,7 +529,7 @@ def format_idea_content(idea: Union[Dict[str, Any], str]) -> str: @app.route("/api/code", methods=["POST"]) def generate_code() -> Union[Response, tuple[Response, int]]: """Generate code synchronously and return when complete""" - emit_buffered_logs() # Emit any buffered logs + flush_log_buffer() # Emit any buffered logs global coder if coder is None: @@ -624,9 +630,8 @@ def generate_paper() -> Union[Response, tuple[Response, int]]: experiment_dir = data.get("experiment_dir", None) s2_api_key = data.get("s2_api_key", None) - - if not s2_api_key: - return jsonify({"error": "Semantic Scholar API key is required"}), 400 + if isinstance(s2_api_key, str): + s2_api_key = s2_api_key.strip() or None if not idea_data: print("ERROR: No idea provided in request") @@ -653,6 +658,10 @@ def generate_paper() -> Union[Response, tuple[Response, int]]: ), ) print(f"Writer initialized for this request with model: {writer.model}") + if not s2_api_key: + print( + "Proceeding without Semantic Scholar API key; using fallback sources." + ) # Extract the original idea data if isinstance(idea_data, dict) and "originalData" in idea_data: diff --git a/backend/tests/test_coder_demo.py b/backend/tests/test_coder_demo.py new file mode 100644 index 0000000..c3d5be5 --- /dev/null +++ b/backend/tests/test_coder_demo.py @@ -0,0 +1,76 @@ +import json +import os +from pathlib import Path + +import pytest + +from backend.app import app + + +@pytest.fixture(scope="module") +def client(): + app.config["TESTING"] = True + with app.test_client() as client: + yield client + + +def _load_demo_idea() -> dict: + idea_path = Path(__file__).resolve().parents[2] / "demo_test" / "idea.json" + if not idea_path.exists(): + raise FileNotFoundError(f"Idea file not found: {idea_path}") + return json.loads(idea_path.read_text()) + + +def _configure_backend(client) -> None: + model = "gpt-4o" + api_key = os.environ.get("OPENAI_API_KEY") + if not api_key: + pytest.skip("OPENAI_API_KEY not set; skipping coder integration test") + + response = client.post( + "/api/configure", + json={ + "model": model, + "api_key": api_key, + "budget": 10.0, + "budget_preference": "balanced", + }, + ) + assert response.status_code == 200, response.get_data(as_text=True) + + +def test_coder_with_demo_idea(client): + """ + Integration test: run backend /api/code with the demo idea. + Ensures coder executes and produces experiment outputs. + """ + _configure_backend(client) + + idea_payload = _load_demo_idea() + response = client.post( + "/api/code", + json={"idea": {"originalData": idea_payload}}, + ) + + assert response.status_code == 200, response.get_data(as_text=True) + + data = response.get_json() + assert data is not None, "No JSON body returned" + assert data.get("success") is True, data + + experiment_dir = data.get("experiment_dir") + assert experiment_dir, data + + generated_base = Path(__file__).resolve().parents[2] / "generated" + abs_experiment_dir = generated_base / experiment_dir + assert abs_experiment_dir.exists(), f"Experiment dir missing: {abs_experiment_dir}" + + expected_files = { + "experiment.py", + "notes.txt", + "experiment_results.txt", + } + missing = [ + name for name in expected_files if not (abs_experiment_dir / name).exists() + ] + assert not missing, f"Missing files in {abs_experiment_dir}: {missing}" diff --git a/frontend/package.json b/frontend/package.json index bd5d8fa..076fb00 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -2,7 +2,6 @@ "name": "hypo-eval", "version": "0.1.0", "private": true, - "proxy": "http://localhost:5000", "dependencies": { "@monaco-editor/react": "^4.7.0", "@testing-library/jest-dom": "^5.17.0", diff --git a/frontend/src/components/LogDisplay.jsx b/frontend/src/components/LogDisplay.jsx index 5d22c2a..1a2f8be 100644 --- a/frontend/src/components/LogDisplay.jsx +++ b/frontend/src/components/LogDisplay.jsx @@ -1,15 +1,45 @@ -import React, { useState, useEffect, useRef } from 'react'; +import React, { useState, useEffect, useMemo, useRef } from 'react'; import { io } from 'socket.io-client'; +const resolveSocketBaseURL = () => { + if (typeof window === 'undefined') { + return 'http://localhost:5000'; + } + + const explicitBase = process.env.REACT_APP_SOCKET_BASE_URL; + if (explicitBase) { + return explicitBase; + } + + const { protocol, hostname, port } = window.location; + + // When running the dev server (port 3000) we need to talk to the backend port. + if (port === '3000') { + const backendPort = process.env.REACT_APP_SOCKET_PORT || '5000'; + return `${protocol}//${hostname}:${backendPort}`; + } + + return `${protocol}//${hostname}${port ? `:${port}` : ''}`; +}; + +const SOCKET_PATH = process.env.REACT_APP_SOCKET_PATH || '/socket.io'; + const LogDisplay = ({ isVisible, onToggle }) => { const [logs, setLogs] = useState([]); const [isConnected, setIsConnected] = useState(false); const socketRef = useRef(null); const logsEndRef = useRef(null); + const socketUrl = useMemo(resolveSocketBaseURL, []); useEffect(() => { - // Always maintain socket connection when component mounts - socketRef.current = io('http://localhost:5000'); + socketRef.current = io(socketUrl, { + path: SOCKET_PATH, + transports: ['websocket', 'polling'], + reconnection: true, + reconnectionDelay: 2000, + reconnectionDelayMax: 6000, + timeout: 10000, + }); socketRef.current.on('connect', () => { setIsConnected(true); @@ -26,8 +56,9 @@ const LogDisplay = ({ isVisible, onToggle }) => { return () => { socketRef.current?.disconnect(); + socketRef.current = null; }; - }, []); + }, [socketUrl]); useEffect(() => { // Auto-scroll to bottom when new logs arrive diff --git a/frontend/src/components/TreePlotVisualization.jsx b/frontend/src/components/TreePlotVisualization.jsx index dafc82d..4bf56ed 100644 --- a/frontend/src/components/TreePlotVisualization.jsx +++ b/frontend/src/components/TreePlotVisualization.jsx @@ -8,6 +8,110 @@ import IdeaCard from './IdeaCard'; import IdeaFactorsAndScoresCard from './IdeaFactorsAndScoresCard'; import LogDisplay from './LogDisplay'; +const normalizeExperimentDir = (dir) => { + if (!dir) return 'experiments'; + let sanitized = dir.trim(); + if (!sanitized) return 'experiments'; + sanitized = sanitized.replace(/\\/g, '/'); + sanitized = sanitized.replace(/^\.?\/+/, ''); + if (sanitized.startsWith('generated/')) { + sanitized = sanitized.slice('generated/'.length); + } + return sanitized || 'experiments'; +}; + +const buildExperimentFileUrl = (dir, fileName) => { + const safeDir = normalizeExperimentDir(dir); + const encodedDir = safeDir + .split('/') + .filter(Boolean) + .map(encodeURIComponent) + .join('/'); + return `/api/files/${encodedDir}/${encodeURIComponent(fileName)}`; +}; + +const DEFAULT_RUN_DISCOVERY_LIMIT = 10; + +const fetchTextFile = async (dir, filePath) => { + const url = buildExperimentFileUrl(dir, filePath); + try { + console.log(`Attempting to fetch ${filePath} from ${url}`); + const response = await fetch(url); + if (!response.ok) { + console.log(`Fetch skipped for ${filePath}: ${response.status} ${response.statusText}`); + return null; + } + const data = await response.json(); + if (typeof data?.content === 'string') { + return data.content; + } + } catch (err) { + console.error(`Error fetching ${filePath}:`, err); + } + return null; +}; + +const getRunLabel = (runName, index = 0) => { + if (!runName) { + return `Run ${index + 1}`; + } + if (runName.startsWith('run_')) { + const parts = runName.split('_'); + if (parts.length > 1 && parts[1]) { + return `Run ${parts[1]}`; + } + } + return runName; +}; + +const getFileIcon = (fileName = '') => { + if (fileName.endsWith('.py')) return '🐍'; + if (fileName.endsWith('.json')) return '📊'; + if (fileName.endsWith('.txt')) return '📄'; + return '📝'; +}; + +const normalizeCodeResult = (data) => { + if (!data || typeof data !== 'object') { + return data; + } + const safeDir = data.experiment_dir ? normalizeExperimentDir(data.experiment_dir) : null; + return { ...data, experiment_dir: safeDir }; +}; + +const formatMetricValue = (value) => { + if (typeof value === 'number' && Number.isFinite(value)) { + const fixed = value.toFixed(4); + return parseFloat(fixed).toString(); + } + return String(value); +}; + +const sanitizeS2ApiKey = (key) => (typeof key === 'string' ? key.trim() : ''); + +const getStoredS2ApiKey = () => { + if (typeof window === 'undefined') return ''; + try { + return window.localStorage.getItem('s2_api_key') || ''; + } catch (err) { + console.error('Failed to read Semantic Scholar key from storage:', err); + return ''; + } +}; + +const persistS2ApiKey = (key) => { + if (typeof window === 'undefined') return; + try { + if (key) { + window.localStorage.setItem('s2_api_key', key); + } else { + window.localStorage.removeItem('s2_api_key'); + } + } catch (err) { + console.error('Failed to persist Semantic Scholar key:', err); + } +}; + // Helper components defined outside the main component to preserve state const ContextAndGenerateCard = ({ @@ -398,7 +502,7 @@ const TreePlotVisualization = () => { const [isAddingCustom, setIsAddingCustom] = useState(false); const [customIdea, setCustomIdea] = useState({ title: '', content: '' }); // *** 新增:用于主界面模型选择和api-key输入 - const [selectedModel, setSelectedModel] = useState('deepseek-chat'); + const [selectedModel, setSelectedModel] = useState('gpt-4o'); const [apiKey, setApiKey] = useState(''); const [isConfigured, setIsConfigured] = useState(false); const [configError, setConfigError] = useState(''); @@ -438,7 +542,7 @@ const TreePlotVisualization = () => { const [codeFileName, setCodeFileName] = useState('experiment.py'); const [activeCodeTab, setActiveCodeTab] = useState('experiment.py'); const [experimentFiles, setExperimentFiles] = useState({}); - const [consoleOutput, setConsoleOutput] = useState(''); + const [experimentFileList, setExperimentFileList] = useState([]); const [experimentRuns, setExperimentRuns] = useState([]); const [isRunningExperiment, setIsRunningExperiment] = useState(false); const [pdfComments, setPdfComments] = useState([]); @@ -449,6 +553,36 @@ const TreePlotVisualization = () => { const [isReviewing, setIsReviewing] = useState(false); const [rightPanelTab, setRightPanelTab] = useState('comments'); // 'comments' or 'review' + const experimentFileCount = experimentFileList.length; + const hasExperimentFiles = experimentFileCount > 0; + + + const baseFileItems = experimentFileList.filter((item) => item.group === 'base'); + const runFileGroups = (() => { + const map = new Map(); + experimentFileList.forEach((item) => { + if (item.group !== 'run') { + return; + } + const key = item.runName || item.path; + if (!map.has(key)) { + map.set(key, { + runLabel: item.runLabel || getRunLabel(item.runName || '', map.size), + items: [], + }); + } + map.get(key).items.push(item); + }); + return Array.from(map.entries()); + })(); + + useEffect(() => { + const savedKey = sanitizeS2ApiKey(getStoredS2ApiKey()); + if (savedKey) { + setS2ApiKey(savedKey); + } + }, []); + // Track view changes const previousViewRef = useRef(currentView); // Initialize with current view @@ -515,9 +649,9 @@ const TreePlotVisualization = () => { }; // ============== 配置模型和API Key ============== const modelOptions = [ + { value: 'gpt-4o', label: 'GPT-4o' }, { value: 'deepseek-chat', label: 'DeepSeek Chat' }, { value: 'deepseek-reasoner', label: 'DeepSeek Reasoner' }, - { value: 'gpt-4o', label: 'GPT-4o' }, { value: 'o1-2024-12-17', label: 'GPT-o1' }, { value: 'claude-3-5-sonnet-20241022', label: 'Claude 3.5 Sonnet' }, ]; @@ -2223,46 +2357,177 @@ const TreePlotVisualization = () => { // Load generated files from public directory const loadGeneratedFiles = async (experimentDir) => { + const safeDir = normalizeExperimentDir(experimentDir); try { - const fileUrls = { - 'experiment.py': `/api/files/${experimentDir}/experiment.py`, - 'notes.txt': `/api/files/${experimentDir}/notes.txt`, - 'experiment_results.txt': `/api/files/${experimentDir}/experiment_results.txt`, - }; - const loadedFiles = {}; - for (const [fileName, url] of Object.entries(fileUrls)) { + const fileItems = []; + + const baseFiles = ['experiment.py', 'notes.txt', 'experiment_results.txt']; + for (const fileName of baseFiles) { + const content = await fetchTextFile(safeDir, fileName); + if (content !== null) { + loadedFiles[fileName] = content; + fileItems.push({ + path: fileName, + tabLabel: fileName, + sidebarLabel: fileName, + icon: getFileIcon(fileName), + group: 'base', + }); + } + } + + const resultContent = loadedFiles['experiment_results.txt'] || null; + let runNames = []; + if (resultContent) { try { - console.log(`Attempting to fetch: ${fileName} from ${url}`); - const response = await fetch(url); - console.log(`Response for ${fileName}:`, response.status, response.statusText); - - if (response.ok) { - const data = await response.json(); - if (data.content) { - loadedFiles[fileName] = data.content; - console.log(`Loaded ${fileName} successfully.`); + const parsed = JSON.parse(resultContent); + if (parsed && typeof parsed === 'object') { + runNames = Object.keys(parsed); + } + } catch (parseErr) { + console.error('Failed to parse experiment_results.txt:', parseErr); + } + } + if (runNames.length === 0) { + runNames = Array.from({ length: DEFAULT_RUN_DISCOVERY_LIMIT }, (_, i) => `run_${i + 1}`); + } + + const runMeta = new Map(); + await Promise.all( + runNames.map(async (runName, index) => { + if (!runName) return; + + const runLabel = getRunLabel(runName, index); + let meta = runMeta.get(runName); + if (!meta) { + meta = { runName, runLabel }; + runMeta.set(runName, meta); + } + + let fetchedContent = false; + + const finalInfoPath = `${runName}/final_info.json`; + const finalInfo = await fetchTextFile(safeDir, finalInfoPath); + if (finalInfo !== null) { + loadedFiles[finalInfoPath] = finalInfo; + fetchedContent = true; + try { + meta.finalInfo = JSON.parse(finalInfo); + } catch (err) { + console.error(`Failed to parse ${finalInfoPath}:`, err); + meta.finalInfo = null; } + meta.finalInfoPath = finalInfoPath; + fileItems.push({ + path: finalInfoPath, + tabLabel: `${runLabel} • final_info.json`, + sidebarLabel: 'final_info.json', + icon: getFileIcon(finalInfoPath), + group: 'run', + runName, + runLabel, + }); + } + + const runScriptPath = `${runName}.py`; + const runScript = await fetchTextFile(safeDir, runScriptPath); + if (runScript !== null) { + loadedFiles[runScriptPath] = runScript; + fetchedContent = true; + meta.scriptPath = runScriptPath; + const scriptFileName = runScriptPath.split('/').pop() || runScriptPath; + fileItems.push({ + path: runScriptPath, + tabLabel: `${runLabel} • ${scriptFileName}`, + sidebarLabel: scriptFileName, + icon: getFileIcon(runScriptPath), + group: 'run', + runName, + runLabel, + }); + } + + if (!fetchedContent) { + runMeta.delete(runName); + } + }) + ); + + setExperimentFiles(loadedFiles); + setExperimentFileList(fileItems); + + const runMetaMap = Object.fromEntries(runMeta.entries()); + + if (resultContent) { + try { + const parsed = JSON.parse(resultContent); + if (parsed && typeof parsed === 'object') { + const runs = Object.entries(parsed).map(([name, metrics], index) => { + const safeMetrics = typeof metrics === 'object' && metrics !== null ? metrics : {}; + const meta = runMetaMap[name] || { runName: name, runLabel: getRunLabel(name, index) }; + return { + name, + runLabel: meta.runLabel || getRunLabel(name, index), + metrics: safeMetrics, + success: Object.keys(safeMetrics).length > 0, + }; + }); + setExperimentRuns(runs); } else { - console.log(`Could not load ${fileName}, but this might be expected (e.g., no notes).`); + setExperimentRuns([]); } - } catch (err) { - console.error(`Error fetching ${fileName}:`, err); + } catch (parseErr) { + console.error('Failed to parse experiment_results.txt:', parseErr); + setExperimentRuns([]); } + } else if (Object.keys(runMetaMap).length > 0) { + const runs = Object.entries(runMetaMap).map(([name, meta], index) => { + return { + name, + runLabel: meta.runLabel || getRunLabel(name, index), + metrics: meta.finalInfo && typeof meta.finalInfo === 'object' ? meta.finalInfo : {}, + success: true, + }; + }); + setExperimentRuns(runs); + } else { + setExperimentRuns([]); } - // Update state all at once - setExperimentFiles(prev => ({ ...prev, ...loadedFiles })); - - // Set the code content for the editor if experiment.py was loaded if (loadedFiles['experiment.py']) { - setCodeContent(loadedFiles['experiment.py']); setActiveCodeTab('experiment.py'); + setCodeFileName('experiment.py'); + setCodeContent(loadedFiles['experiment.py']); + } else if (fileItems.length > 0) { + const firstItem = fileItems[0]; + setActiveCodeTab(firstItem.path); + setCodeFileName(firstItem.tabLabel); + setCodeContent(loadedFiles[firstItem.path] || ''); + } else { + setActiveCodeTab(''); + setCodeFileName(''); + setCodeContent( + `# Generated experiment code +# Files are being generated in: ${safeDir} + +# Please check the directory for the actual code files.` + ); } + return safeDir; } catch (err) { - console.log("Error loading generated files:", err); - setCodeContent(`# Generated experiment code\n# Files are being generated in: ${experimentDir}\n\n# Please check the directory for the actual code files.`); + console.log(`Error loading generated files from ${safeDir}:`, err); + setExperimentFiles({}); + setExperimentFileList([]); + setCodeContent( + `# Generated experiment code +# Files are being generated in: ${safeDir} + +# Please check the directory for the actual code files.` + ); + setExperimentRuns([]); + return safeDir; } }; @@ -2281,11 +2546,11 @@ const TreePlotVisualization = () => { console.log("Manual file loading completed"); // Set a fake successful result to satisfy the UI - setCodeResult({ + setCodeResult(normalizeCodeResult({ status: true, success: true, experiment_dir: "experiments" - }); + })); } catch (err) { console.log("Manual file loading failed:", err); @@ -2304,6 +2569,7 @@ const TreePlotVisualization = () => { setOperationStatus('Retrying code generation...'); setCodeResult(null); setExperimentFiles({}); + setExperimentFileList([]); setShowLogs(true); // Show logs when starting code generation try { @@ -2325,25 +2591,28 @@ const TreePlotVisualization = () => { const codeData = await codeResponse.json(); console.log("Retry code generation completed:", codeData); - setCodeResult(codeData); - if (!codeData.success) { throw new Error(codeData.error || 'Code generation failed'); } + const normalizedResult = normalizeCodeResult(codeData); + setCodeResult(normalizedResult); + // Load generated files setOperationStatus('Loading generated files...'); - await loadGeneratedFiles(codeData.experiment_dir); + if (normalizedResult.experiment_dir) { + await loadGeneratedFiles(normalizedResult.experiment_dir); + } setOperationStatus('Code generation retry completed successfully!'); } catch (error) { console.error("Retry code generation failed:", error); setOperationStatus('Retry code generation failed: ' + error.message); - setCodeResult({ + setCodeResult(normalizeCodeResult({ success: false, error: error.message, error_details: error.message - }); + })); } finally { setIsGeneratingCode(false); } @@ -2369,15 +2638,13 @@ const TreePlotVisualization = () => { setShowLogs(true); // Show logs when starting paper generation try { - // Get S2 API key from localStorage or prompt user - let s2ApiKey = localStorage.getItem('s2_api_key'); - if (!s2ApiKey) { - s2ApiKey = prompt('Please enter your Semantic Scholar API Key:'); - if (!s2ApiKey) { - throw new Error('Semantic Scholar API key is required for paper generation'); - } - localStorage.setItem('s2_api_key', s2ApiKey); - } + const effectiveS2Key = + sanitizeS2ApiKey(s2ApiKey) || sanitizeS2ApiKey(getStoredS2ApiKey()); + persistS2ApiKey(effectiveS2Key); + setS2ApiKey(effectiveS2Key); + console.log( + `Semantic Scholar API key ${effectiveS2Key ? 'detected' : 'not provided'} for paper generation` + ); const paperResponse = await fetch('/api/write', { method: 'POST', @@ -2388,7 +2655,7 @@ const TreePlotVisualization = () => { body: JSON.stringify({ idea: node.originalData, experiment_dir: experimentDir, - s2_api_key: s2ApiKey + s2_api_key: effectiveS2Key || null }) }); @@ -2448,11 +2715,9 @@ const TreePlotVisualization = () => { // Check if the idea is experimental to determine S2 API key requirement const isExperimental = selectedNode.originalData.is_experimental === true; - // Validate Semantic Scholar API key only for non-experimental ideas - if (!isExperimental && !s2ApiKey.trim()) { - setProceedError('Semantic Scholar API key is required for non-experimental ideas'); - return; - } + const sanitizedS2Key = sanitizeS2ApiKey(s2ApiKey); + persistS2ApiKey(sanitizedS2Key); + setS2ApiKey(sanitizedS2Key); setShowProceedConfirm(false); setProceedError(null); @@ -2566,7 +2831,6 @@ const TreePlotVisualization = () => { codeData = await codeResponse.json(); console.log("Code generation completed:", codeData); - setCodeResult(codeData); if (!codeData.success) { throw new Error(codeData.error || 'Code generation failed'); @@ -2608,12 +2872,17 @@ const TreePlotVisualization = () => { } // Store results - setCodeResult(codeData); - const finalExperimentDir = codeData.experiment_dir; + const normalizedResult = normalizeCodeResult(codeData); + setCodeResult(normalizedResult); + const finalExperimentDir = normalizedResult?.experiment_dir; // Load generated files setOperationStatus('Loading generated files...'); - await loadGeneratedFiles(finalExperimentDir); + if (finalExperimentDir) { + await loadGeneratedFiles(finalExperimentDir); + } else { + console.warn("Code generation succeeded but experiment directory is missing."); + } // Mark that code has been generated (this will show Code View tab) setHasGeneratedCode(true); @@ -2643,7 +2912,7 @@ const TreePlotVisualization = () => { body: JSON.stringify({ idea: selectedNode.originalData, experiment_dir: null, // No experiment directory for non-experimental papers - s2_api_key: s2ApiKey.trim(), + s2_api_key: sanitizedS2Key || null, }), }); @@ -2776,7 +3045,14 @@ const TreePlotVisualization = () => { // Enhanced code editing functions const switchCodeTab = (tabName) => { - // Save current content before switching + if (!tabName) { + return; + } + + if (experimentFiles[tabName] === undefined) { + return; + } + if (activeCodeTab && experimentFiles[activeCodeTab] !== undefined) { setExperimentFiles(prev => ({ ...prev, @@ -2784,9 +3060,9 @@ const TreePlotVisualization = () => { })); } - // Switch to new tab + const fileItem = experimentFileList.find((item) => item.path === tabName); setActiveCodeTab(tabName); - setCodeFileName(tabName); + setCodeFileName(fileItem?.tabLabel || tabName); setCodeContent(experimentFiles[tabName] || ''); }; @@ -2894,14 +3170,14 @@ const TreePlotVisualization = () => { {/* Download All Button */} - - -
- {consoleOutput || 'No output yet...'} -
- {proceedError && ( @@ -3198,7 +3502,7 @@ const TreePlotVisualization = () => { )} - {!codeResult && !isGeneratingCode && !proceedError && Object.keys(experimentFiles).length === 0 && ( + {!codeResult && !isGeneratingCode && !proceedError && !hasExperimentFiles && (
{ color: '#374151', fontWeight: 500 }}> - Semantic Scholar API Key {!selectedNode?.originalData?.is_experimental ? '*' : '(Optional for now)'} + Semantic Scholar API Key (Optional) setS2ApiKey(e.target.value)} - placeholder={selectedNode?.originalData?.is_experimental ? - "Enter your Semantic Scholar API key (can be provided later for paper generation)" : - "Enter your Semantic Scholar API key"} + placeholder="Optional: improves citation quality" style={{ width: '100%', padding: '8px 12px', @@ -4128,10 +4430,7 @@ const TreePlotVisualization = () => { }} />
- {selectedNode?.originalData?.is_experimental ? - 'For experimental ideas: Required only when generating paper. You can provide it later.' : - 'Required for paper generation.' - } Get your API key from{' '} + Providing a key lets us fetch references from Semantic Scholar. Leave blank to skip for now. Get your API key from{' '} { diff --git a/frontend/src/setupProxy.js b/frontend/src/setupProxy.js new file mode 100644 index 0000000..082265b --- /dev/null +++ b/frontend/src/setupProxy.js @@ -0,0 +1,12 @@ +const { createProxyMiddleware } = require('http-proxy-middleware'); + +module.exports = function setupProxy(app) { + app.use( + ['/api', '/socket.io'], + createProxyMiddleware({ + target: 'http://localhost:5000', + changeOrigin: true, + ws: true, + }) + ); +}; diff --git a/poetry.lock b/poetry.lock index faf3eb5..84ef393 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.2.0 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. [[package]] name = "aider-chat" @@ -1056,6 +1056,27 @@ files = [ {file = "distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed"}, ] +[[package]] +name = "dnspython" +version = "2.8.0" +description = "DNS toolkit" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "dnspython-2.8.0-py3-none-any.whl", hash = "sha256:01d9bbc4a2d76bf0db7c1f729812ded6d912bd318d3b1cf81d30c0f845dbf3af"}, + {file = "dnspython-2.8.0.tar.gz", hash = "sha256:181d3c6996452cb1189c4046c61599b84a5a86e099562ffde77d26984ff26d0f"}, +] + +[package.extras] +dev = ["black (>=25.1.0)", "coverage (>=7.0)", "flake8 (>=7)", "hypercorn (>=0.17.0)", "mypy (>=1.17)", "pylint (>=3)", "pytest (>=8.4)", "pytest-cov (>=6.2.0)", "quart-trio (>=0.12.0)", "sphinx (>=8.2.0)", "sphinx-rtd-theme (>=3.0.0)", "twine (>=6.1.0)", "wheel (>=0.45.0)"] +dnssec = ["cryptography (>=45)"] +doh = ["h2 (>=4.2.0)", "httpcore (>=1.0.0)", "httpx (>=0.28.0)"] +doq = ["aioquic (>=1.2.0)"] +idna = ["idna (>=3.10)"] +trio = ["trio (>=0.30)"] +wmi = ["wmi (>=1.5.1) ; platform_system == \"Windows\""] + [[package]] name = "docker" version = "7.1.0" @@ -1079,6 +1100,25 @@ docs = ["myst-parser (==0.18.0)", "sphinx (==5.1.1)"] ssh = ["paramiko (>=2.4.3)"] websockets = ["websocket-client (>=1.3.0)"] +[[package]] +name = "eventlet" +version = "0.40.3" +description = "Highly concurrent networking library" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "eventlet-0.40.3-py3-none-any.whl", hash = "sha256:e681cae6ee956cfb066a966b5c0541e734cc14879bda6058024104790595ac9d"}, + {file = "eventlet-0.40.3.tar.gz", hash = "sha256:290852db0065d78cec17a821b78c8a51cafb820a792796a354592ae4d5fceeb0"}, +] + +[package.dependencies] +dnspython = ">=1.15.0" +greenlet = ">=1.0" + +[package.extras] +dev = ["black", "build", "commitizen", "isort", "pip-tools", "pre-commit", "twine"] + [[package]] name = "exceptiongroup" version = "1.2.2" @@ -1585,6 +1625,74 @@ protobuf = ">=3.20.2,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4 [package.extras] grpc = ["grpcio (>=1.44.0,<2.0.0)"] +[[package]] +name = "greenlet" +version = "3.2.4" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "greenlet-3.2.4-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:8c68325b0d0acf8d91dde4e6f930967dd52a5302cd4062932a6b2e7c2969f47c"}, + {file = "greenlet-3.2.4-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:94385f101946790ae13da500603491f04a76b6e4c059dab271b3ce2e283b2590"}, + {file = "greenlet-3.2.4-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f10fd42b5ee276335863712fa3da6608e93f70629c631bf77145021600abc23c"}, + {file = "greenlet-3.2.4-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:c8c9e331e58180d0d83c5b7999255721b725913ff6bc6cf39fa2a45841a4fd4b"}, + {file = "greenlet-3.2.4-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:58b97143c9cc7b86fc458f215bd0932f1757ce649e05b640fea2e79b54cedb31"}, + {file = "greenlet-3.2.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c2ca18a03a8cfb5b25bc1cbe20f3d9a4c80d8c3b13ba3df49ac3961af0b1018d"}, + {file = "greenlet-3.2.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9fe0a28a7b952a21e2c062cd5756d34354117796c6d9215a87f55e38d15402c5"}, + {file = "greenlet-3.2.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8854167e06950ca75b898b104b63cc646573aa5fef1353d4508ecdd1ee76254f"}, + {file = "greenlet-3.2.4-cp310-cp310-win_amd64.whl", hash = "sha256:73f49b5368b5359d04e18d15828eecc1806033db5233397748f4ca813ff1056c"}, + {file = "greenlet-3.2.4-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:96378df1de302bc38e99c3a9aa311967b7dc80ced1dcc6f171e99842987882a2"}, + {file = "greenlet-3.2.4-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1ee8fae0519a337f2329cb78bd7a8e128ec0f881073d43f023c7b8d4831d5246"}, + {file = "greenlet-3.2.4-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:94abf90142c2a18151632371140b3dba4dee031633fe614cb592dbb6c9e17bc3"}, + {file = "greenlet-3.2.4-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:4d1378601b85e2e5171b99be8d2dc85f594c79967599328f95c1dc1a40f1c633"}, + {file = "greenlet-3.2.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:0db5594dce18db94f7d1650d7489909b57afde4c580806b8d9203b6e79cdc079"}, + {file = "greenlet-3.2.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2523e5246274f54fdadbce8494458a2ebdcdbc7b802318466ac5606d3cded1f8"}, + {file = "greenlet-3.2.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1987de92fec508535687fb807a5cea1560f6196285a4cde35c100b8cd632cc52"}, + {file = "greenlet-3.2.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:55e9c5affaa6775e2c6b67659f3a71684de4c549b3dd9afca3bc773533d284fa"}, + {file = "greenlet-3.2.4-cp311-cp311-win_amd64.whl", hash = "sha256:9c40adce87eaa9ddb593ccb0fa6a07caf34015a29bf8d344811665b573138db9"}, + {file = "greenlet-3.2.4-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:3b67ca49f54cede0186854a008109d6ee71f66bd57bb36abd6d0a0267b540cdd"}, + {file = "greenlet-3.2.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ddf9164e7a5b08e9d22511526865780a576f19ddd00d62f8a665949327fde8bb"}, + {file = "greenlet-3.2.4-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f28588772bb5fb869a8eb331374ec06f24a83a9c25bfa1f38b6993afe9c1e968"}, + {file = "greenlet-3.2.4-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:5c9320971821a7cb77cfab8d956fa8e39cd07ca44b6070db358ceb7f8797c8c9"}, + {file = "greenlet-3.2.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c60a6d84229b271d44b70fb6e5fa23781abb5d742af7b808ae3f6efd7c9c60f6"}, + {file = "greenlet-3.2.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3b3812d8d0c9579967815af437d96623f45c0f2ae5f04e366de62a12d83a8fb0"}, + {file = "greenlet-3.2.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:abbf57b5a870d30c4675928c37278493044d7c14378350b3aa5d484fa65575f0"}, + {file = "greenlet-3.2.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:20fb936b4652b6e307b8f347665e2c615540d4b42b3b4c8a321d8286da7e520f"}, + {file = "greenlet-3.2.4-cp312-cp312-win_amd64.whl", hash = "sha256:a7d4e128405eea3814a12cc2605e0e6aedb4035bf32697f72deca74de4105e02"}, + {file = "greenlet-3.2.4-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:1a921e542453fe531144e91e1feedf12e07351b1cf6c9e8a3325ea600a715a31"}, + {file = "greenlet-3.2.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd3c8e693bff0fff6ba55f140bf390fa92c994083f838fece0f63be121334945"}, + {file = "greenlet-3.2.4-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:710638eb93b1fa52823aa91bf75326f9ecdfd5e0466f00789246a5280f4ba0fc"}, + {file = "greenlet-3.2.4-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:c5111ccdc9c88f423426df3fd1811bfc40ed66264d35aa373420a34377efc98a"}, + {file = "greenlet-3.2.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d76383238584e9711e20ebe14db6c88ddcedc1829a9ad31a584389463b5aa504"}, + {file = "greenlet-3.2.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:23768528f2911bcd7e475210822ffb5254ed10d71f4028387e5a99b4c6699671"}, + {file = "greenlet-3.2.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:00fadb3fedccc447f517ee0d3fd8fe49eae949e1cd0f6a611818f4f6fb7dc83b"}, + {file = "greenlet-3.2.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:d25c5091190f2dc0eaa3f950252122edbbadbb682aa7b1ef2f8af0f8c0afefae"}, + {file = "greenlet-3.2.4-cp313-cp313-win_amd64.whl", hash = "sha256:554b03b6e73aaabec3745364d6239e9e012d64c68ccd0b8430c64ccc14939a8b"}, + {file = "greenlet-3.2.4-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:49a30d5fda2507ae77be16479bdb62a660fa51b1eb4928b524975b3bde77b3c0"}, + {file = "greenlet-3.2.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:299fd615cd8fc86267b47597123e3f43ad79c9d8a22bebdce535e53550763e2f"}, + {file = "greenlet-3.2.4-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:c17b6b34111ea72fc5a4e4beec9711d2226285f0386ea83477cbb97c30a3f3a5"}, + {file = "greenlet-3.2.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b4a1870c51720687af7fa3e7cda6d08d801dae660f75a76f3845b642b4da6ee1"}, + {file = "greenlet-3.2.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:061dc4cf2c34852b052a8620d40f36324554bc192be474b9e9770e8c042fd735"}, + {file = "greenlet-3.2.4-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:44358b9bf66c8576a9f57a590d5f5d6e72fa4228b763d0e43fee6d3b06d3a337"}, + {file = "greenlet-3.2.4-cp314-cp314-win_amd64.whl", hash = "sha256:e37ab26028f12dbb0ff65f29a8d3d44a765c61e729647bf2ddfbbed621726f01"}, + {file = "greenlet-3.2.4-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:b6a7c19cf0d2742d0809a4c05975db036fdff50cd294a93632d6a310bf9ac02c"}, + {file = "greenlet-3.2.4-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:27890167f55d2387576d1f41d9487ef171849ea0359ce1510ca6e06c8bece11d"}, + {file = "greenlet-3.2.4-cp39-cp39-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:18d9260df2b5fbf41ae5139e1be4e796d99655f023a636cd0e11e6406cca7d58"}, + {file = "greenlet-3.2.4-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:671df96c1f23c4a0d4077a325483c1503c96a1b7d9db26592ae770daa41233d4"}, + {file = "greenlet-3.2.4-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:16458c245a38991aa19676900d48bd1a6f2ce3e16595051a4db9d012154e8433"}, + {file = "greenlet-3.2.4-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9913f1a30e4526f432991f89ae263459b1c64d1608c0d22a5c79c287b3c70df"}, + {file = "greenlet-3.2.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b90654e092f928f110e0007f572007c9727b5265f7632c2fa7415b4689351594"}, + {file = "greenlet-3.2.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:81701fd84f26330f0d5f4944d4e92e61afe6319dcd9775e39396e39d7c3e5f98"}, + {file = "greenlet-3.2.4-cp39-cp39-win32.whl", hash = "sha256:65458b409c1ed459ea899e939f0e1cdb14f58dbc803f2f93c5eab5694d32671b"}, + {file = "greenlet-3.2.4-cp39-cp39-win_amd64.whl", hash = "sha256:d2e685ade4dafd447ede19c31277a224a239a0a1a4eca4e6390efedf20260cfb"}, + {file = "greenlet-3.2.4.tar.gz", hash = "sha256:0dca0d95ff849f9a364385f36ab49f50065d76964944638be9691e1832e9f86d"}, +] + +[package.extras] +docs = ["Sphinx", "furo"] +test = ["objgraph", "psutil", "setuptools"] + [[package]] name = "grep-ast" version = "0.8.1" @@ -5930,4 +6038,4 @@ type = ["pytest-mypy"] [metadata] lock-version = "2.1" python-versions = ">=3.10, <3.12" -content-hash = "8afa87528e8080a6910bc3078d7fdb5829f5e204f9d8eecabf836ef6b9028d05" +content-hash = "f0335eecbf8ab3826abd39b6c2363e66a74f085533dd15c4ecc4e7b95867dd50" diff --git a/pyproject.toml b/pyproject.toml index 0b0e98d..8865bd4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,6 +36,7 @@ flask-socketio = "^5.5.1" docker = "^7.1.0" fastmcp = "*" mcp = "*" +eventlet = "^0.40.3" [tool.poetry.group.dev.dependencies] pre-commit = "*" diff --git a/tiny_scientist/mcp/docker_runner_server.py b/tiny_scientist/mcp/docker_runner_server.py index 8bd7664..e9ccc26 100644 --- a/tiny_scientist/mcp/docker_runner_server.py +++ b/tiny_scientist/mcp/docker_runner_server.py @@ -21,6 +21,27 @@ CONFIG_PATH = PACKAGE_ROOT / "config.toml" config = toml.load(CONFIG_PATH) if CONFIG_PATH.exists() else {"core": {}} +DEFAULT_BASE_PACKAGES = [ + "numpy", + "pandas", + "scikit-learn", + "matplotlib", + "seaborn", + "tqdm", + "requests", + "pillow", +] + + +def _resolve_configured_packages() -> List[str]: + docker_cfg = config.get("docker") if isinstance(config, dict) else None + configured = None + if isinstance(docker_cfg, dict): + configured = docker_cfg.get("base_packages") + if isinstance(configured, list) and all(isinstance(pkg, str) for pkg in configured): + return configured + return DEFAULT_BASE_PACKAGES.copy() + class DockerExperimentRunner: def __init__( @@ -32,6 +53,8 @@ def __init__( self.docker_base = docker_base self.docker_client = None self.use_docker = False + self.base_packages = _resolve_configured_packages() + self._base_package_set: Set[str] = set(self.base_packages) # Initialize Docker client try: @@ -49,24 +72,7 @@ def detect_required_packages( ) -> List[str]: """Detect required packages from import statements in a Python file.""" if base_packages is None: - base_packages = set( - [ - "numpy", - "pandas", - "scikit-learn", - "matplotlib", - "seaborn", - "torch", - "tensorflow", - "transformers", - "datasets", - "evaluate", - "wandb", - "tqdm", - "requests", - "pillow", - ] - ) + base_packages = set(DEFAULT_BASE_PACKAGES) # Common package name mappings (import_name -> pip_package_name) package_mapping = { @@ -298,10 +304,11 @@ def get_or_build_base_image(self) -> Optional[str]: print(f"[Docker] Using existing image: {self.docker_image}") except ImageNotFound: print(f"[Docker] Building image: {self.docker_image}") - dockerfile = f""" -FROM {self.docker_base} -RUN pip install --no-cache-dir numpy pandas scikit-learn matplotlib seaborn torch tensorflow transformers datasets evaluate wandb tqdm requests pillow -""" + dockerfile_lines = [f"FROM {self.docker_base}"] + if self.base_packages: + joined = " ".join(sorted(self.base_packages)) + dockerfile_lines.append(f"RUN pip install --no-cache-dir {joined}") + dockerfile = "\n".join(dockerfile_lines) + "\n" with tempfile.TemporaryDirectory() as tmpdir: with open(os.path.join(tmpdir, "Dockerfile"), "w") as f: f.write(dockerfile) @@ -316,7 +323,9 @@ def get_or_build_experiment_image(self, experiment_py_path: str) -> Optional[str if not self.use_docker: return None base_image = self.get_or_build_base_image() - extra_pkgs = self.detect_required_packages(experiment_py_path) + extra_pkgs = self.detect_required_packages( + experiment_py_path, base_packages=self._base_package_set + ) if extra_pkgs: image_name = f"tiny-scientist-exp-{hash(tuple(extra_pkgs))}" if self.docker_client is not None: From 6ecf7e22b428355cc984a70a301cadf8749bf727 Mon Sep 17 00:00:00 2001 From: 4R5T Date: Sat, 1 Nov 2025 03:21:13 -0500 Subject: [PATCH 04/14] feat(ui): add cache demo on UI --- .gitignore | 7 + backend/app.py | 174 ++++- backend/demo_cache.py | 270 ++++++++ backend/run_app.sh | 16 + backend/run_demo.sh | 20 + .../experiments/idea-1/experiment.py | 132 ++++ .../experiments/idea-1/experiment_results.txt | 20 + .../generated/experiments/idea-1/notes.txt | 17 + .../generated/experiments/idea-1/run_1.py | 135 ++++ .../experiments/idea-1/run_1/final_info.json | 1 + .../generated/experiments/idea-1/run_2.py | 138 ++++ .../experiments/idea-1/run_2/final_info.json | 1 + .../experiments/idea-1/run_2/notes.txt | 4 + .../generated/experiments/idea-1/run_3.py | 132 ++++ .../experiments/idea-1/run_3/final_info.json | 1 + .../experiments/idea-1/run_3/notes.txt | 4 + .../experiments/idea-2/experiment.py | 126 ++++ .../experiments/idea-2/experiment_results.txt | 20 + .../generated/experiments/idea-2/notes.txt | 17 + .../generated/experiments/idea-2/run_1.py | 130 ++++ .../experiments/idea-2/run_1/final_info.json | 1 + .../generated/experiments/idea-2/run_2.py | 122 ++++ .../experiments/idea-2/run_2/final_info.json | 1 + .../experiments/idea-2/run_2/notes.txt | 4 + .../generated/experiments/idea-2/run_3.py | 126 ++++ .../experiments/idea-2/run_3/final_info.json | 1 + .../experiments/idea-2/run_3/notes.txt | 4 + .../experiments/idea-3/experiment.py | 143 ++++ .../experiments/idea-3/experiment_results.txt | 17 + .../generated/experiments/idea-3/notes.txt | 17 + .../generated/experiments/idea-3/run_1.py | 139 ++++ .../experiments/idea-3/run_1/final_info.json | 1 + .../generated/experiments/idea-3/run_2.py | 143 ++++ .../experiments/idea-3/run_2/final_info.json | 1 + .../experiments/idea-3/run_2/notes.txt | 4 + .../generated/experiments/idea-3/run_3.py | 143 ++++ .../experiments/idea-3/run_3/final_info.json | 1 + .../experiments/idea-3/run_3/notes.txt | 4 + ...ong-range_coherence_in_code_generation.pdf | Bin 0 -> 550657 bytes ...ce_coherent_long-range_code_generation.pdf | Bin 0 -> 479486 bytes ...ed_coherent_long-range_code_generation.pdf | Bin 0 -> 571638 bytes frontend/demo_cache/ideas/idea-1-1/idea.json | 47 ++ frontend/demo_cache/ideas/idea-1-2/idea.json | 47 ++ frontend/demo_cache/ideas/idea-1-3/idea.json | 68 ++ frontend/demo_cache/ideas/idea-1/idea.json | 68 ++ frontend/demo_cache/ideas/idea-2/idea.json | 48 ++ frontend/demo_cache/ideas/idea-3/idea.json | 47 ++ .../demo_cache/reviews/idea-1/review.json | 38 ++ .../demo_cache/reviews/idea-2/review.json | 39 ++ .../demo_cache/reviews/idea-3/review.json | 39 ++ frontend/demo_cache/session.json | 623 ++++++++++++++++++ frontend/src/components/TopNav.jsx | 86 ++- .../src/components/TreePlotVisualization.jsx | 61 +- frontend/src/setupProxy.js | 28 +- tiny_scientist/mcp/docker_runner_server.py | 33 +- 55 files changed, 3454 insertions(+), 55 deletions(-) create mode 100644 backend/demo_cache.py create mode 100755 backend/run_app.sh create mode 100755 backend/run_demo.sh create mode 100644 frontend/demo_cache/generated/experiments/idea-1/experiment.py create mode 100644 frontend/demo_cache/generated/experiments/idea-1/experiment_results.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-1/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_1.py create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_1/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_2.py create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_2/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_2/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_3.py create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_3/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-1/run_3/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-2/experiment.py create mode 100644 frontend/demo_cache/generated/experiments/idea-2/experiment_results.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-2/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_1.py create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_1/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_2.py create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_2/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_2/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_3.py create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_3/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-2/run_3/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-3/experiment.py create mode 100644 frontend/demo_cache/generated/experiments/idea-3/experiment_results.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-3/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_1.py create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_1/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_2.py create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_2/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_2/notes.txt create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_3.py create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_3/final_info.json create mode 100644 frontend/demo_cache/generated/experiments/idea-3/run_3/notes.txt create mode 100644 frontend/demo_cache/generated/papers/idea-1/investigating_adaptive_prompt_decomposition_for_improved_long-range_coherence_in_code_generation.pdf create mode 100644 frontend/demo_cache/generated/papers/idea-2/investigating_adaptive_prompt_decomposition_to_enhance_coherent_long-range_code_generation.pdf create mode 100644 frontend/demo_cache/generated/papers/idea-3/exploring_adaptive_prompt_decomposition_for_enhanced_coherent_long-range_code_generation.pdf create mode 100644 frontend/demo_cache/ideas/idea-1-1/idea.json create mode 100644 frontend/demo_cache/ideas/idea-1-2/idea.json create mode 100644 frontend/demo_cache/ideas/idea-1-3/idea.json create mode 100644 frontend/demo_cache/ideas/idea-1/idea.json create mode 100644 frontend/demo_cache/ideas/idea-2/idea.json create mode 100644 frontend/demo_cache/ideas/idea-3/idea.json create mode 100644 frontend/demo_cache/reviews/idea-1/review.json create mode 100644 frontend/demo_cache/reviews/idea-2/review.json create mode 100644 frontend/demo_cache/reviews/idea-3/review.json create mode 100644 frontend/demo_cache/session.json diff --git a/.gitignore b/.gitignore index 8e3515c..8e011e2 100644 --- a/.gitignore +++ b/.gitignore @@ -160,6 +160,13 @@ demo/ frontend/node_modules/ run_experiments/ generated/ +!frontend/demo_cache/generated/experiments/** +!frontend/demo_cache/generated/ +!frontend/demo_cache/generated/** +!frontend/demo_cache/ideas/ +!frontend/demo_cache/ideas/** +!frontend/demo_cache/reviews/ +!frontend/demo_cache/reviews/** runs/ testst/ diff --git a/backend/app.py b/backend/app.py index 45fc392..6bdcd7a 100644 --- a/backend/app.py +++ b/backend/app.py @@ -86,6 +86,7 @@ def websocket_print(*args: Any, **kwargs: Any) -> None: pass +from backend.demo_cache import DemoCacheError, DemoCacheService # noqa: E402 from tiny_scientist.budget_checker import BudgetChecker # noqa: E402 from tiny_scientist.coder import Coder # noqa: E402 from tiny_scientist.reviewer import Reviewer # noqa: E402 @@ -116,6 +117,38 @@ def patch_module_print() -> None: # Call the patching function patch_module_print() + +def _demo_log(message: str, level: str = "info") -> None: + _push_log(message, level) + + +DEMO_CACHE_MODE = os.environ.get("DEMO_CACHE_MODE", "").strip().lower() in { + "1", + "true", + "yes", + "on", +} +DEMO_CACHE_DIR = os.path.abspath( + os.environ.get("DEMO_CACHE_DIR") + or os.path.join(project_root, "frontend", "demo_cache") +) + +try: + demo_cache = DemoCacheService( + DEMO_CACHE_DIR, + enabled=DEMO_CACHE_MODE, + log_fn=_demo_log, + ) + if demo_cache.enabled: + print(f"🗄️ Demo cache enabled using data at {DEMO_CACHE_DIR}") +except DemoCacheError as exc: + print(f"⚠️ Demo cache disabled: {exc}") + demo_cache = DemoCacheService( + DEMO_CACHE_DIR, + enabled=False, + log_fn=_demo_log, + ) + app = Flask(__name__) app.secret_key = "your-secret-key-here" CORS( @@ -162,6 +195,12 @@ def configure() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 + if demo_cache.enabled: + try: + response_payload = demo_cache.apply_config(session) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) model = data.get("model") api_key = data.get("api_key") budget = data.get("budget") @@ -255,11 +294,19 @@ def generate_initial() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 - if thinker is None: - return jsonify({"error": "Thinker not configured"}), 400 intent = data.get("intent") num_ideas = data.get("num_ideas", 3) + if demo_cache.enabled: + try: + response_payload = demo_cache.get_initial_ideas(intent) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) + + if thinker is None: + return jsonify({"error": "Thinker not configured"}), 400 + # Generate ideas ideas = thinker.run(intent=intent, num_ideas=num_ideas) @@ -285,16 +332,23 @@ def generate_initial() -> Union[Response, tuple[Response, int]]: @app.route("/api/set-system-prompt", methods=["POST"]) def set_system_prompt() -> Union[Response, tuple[Response, int]]: """Set the system prompt for the Thinker""" - global thinker - - if not thinker: - return jsonify({"error": "Thinker not configured"}), 400 - data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 system_prompt = data.get("system_prompt") + if demo_cache.enabled: + try: + demo_cache.update_system_prompt(system_prompt) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify({"status": "success", "message": "System prompt updated"}) + + global thinker + + if not thinker: + return jsonify({"error": "Thinker not configured"}), 400 + # If empty string or None, reset to default if not system_prompt: thinker.set_system_prompt(None) # This will reset to default @@ -307,11 +361,6 @@ def set_system_prompt() -> Union[Response, tuple[Response, int]]: @app.route("/api/set-criteria", methods=["POST"]) def set_criteria() -> Union[Response, tuple[Response, int]]: """Set evaluation criteria for a specific dimension""" - global thinker - - if not thinker: - return jsonify({"error": "Thinker not configured"}), 400 - data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 @@ -321,6 +370,23 @@ def set_criteria() -> Union[Response, tuple[Response, int]]: if dimension not in ["novelty", "feasibility", "impact"]: return jsonify({"error": "Invalid dimension"}), 400 + if demo_cache.enabled: + try: + demo_cache.update_criteria(dimension, criteria) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify( + { + "status": "success", + "message": f"{dimension.capitalize()} criteria updated", + } + ) + + global thinker + + if not thinker: + return jsonify({"error": "Thinker not configured"}), 400 + # If empty string or None, reset to default if not criteria: thinker.set_criteria(dimension, None) # This will reset to default @@ -335,6 +401,12 @@ def set_criteria() -> Union[Response, tuple[Response, int]]: @app.route("/api/get-prompts", methods=["GET"]) def get_prompts() -> Union[Response, tuple[Response, int]]: """Get current prompts and criteria""" + if demo_cache.enabled: + try: + return jsonify(demo_cache.get_prompts()) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + global thinker if thinker is None: @@ -364,6 +436,12 @@ def generate_children() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 + if demo_cache.enabled: + try: + response_payload = demo_cache.get_child_ideas() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) if thinker is None: return jsonify({"error": "Thinker not configured"}), 400 parent_content = data.get("parent_content") @@ -398,6 +476,12 @@ def modify_idea() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 + if demo_cache.enabled: + try: + response_payload = demo_cache.get_modified_idea() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) if thinker is None: return jsonify({"error": "Thinker not configured"}), 400 original_idea = data.get("original_idea") @@ -435,6 +519,12 @@ def merge_ideas() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 + if demo_cache.enabled: + try: + response_payload = demo_cache.get_merged_idea() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) if thinker is None: return jsonify({"error": "Thinker not configured"}), 400 idea_a = data.get("idea_a") @@ -467,10 +557,17 @@ def evaluate_ideas() -> Union[Response, tuple[Response, int]]: data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 + ideas = data.get("ideas") or [] + intent = data.get("intent") + + if demo_cache.enabled: + try: + response_payload = demo_cache.evaluate(ideas) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) if thinker is None: return jsonify({"error": "Thinker not configured"}), 400 - ideas = data.get("ideas") - intent = data.get("intent") # Use original data directly (no conversion needed) thinker_ideas = ideas @@ -532,15 +629,22 @@ def generate_code() -> Union[Response, tuple[Response, int]]: flush_log_buffer() # Emit any buffered logs global coder - if coder is None: - return jsonify({"error": "Coder not configured"}), 400 - data = request.json if data is None: return jsonify({"error": "No JSON data provided"}), 400 idea_data = data.get("idea") baseline_results = data.get("baseline_results", {}) + if demo_cache.enabled: + try: + response_payload = demo_cache.get_code_result() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) + + if coder is None: + return jsonify({"error": "Coder not configured"}), 400 + print("💻 Starting synchronous code generation...") if not idea_data: @@ -629,6 +733,13 @@ def generate_paper() -> Union[Response, tuple[Response, int]]: idea_data = data.get("idea") experiment_dir = data.get("experiment_dir", None) + if demo_cache.enabled: + try: + response_payload = demo_cache.get_paper_result() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) + s2_api_key = data.get("s2_api_key", None) if isinstance(s2_api_key, str): s2_api_key = s2_api_key.strip() or None @@ -740,15 +851,14 @@ def generate_paper() -> Union[Response, tuple[Response, int]]: def serve_experiment_file(file_path: str) -> Union[Response, tuple[Response, int]]: """Serve generated experiment files""" try: - # The base directory for all generated content - generated_base = os.path.join(project_root, "generated") - - # Construct the full path securely - full_path = os.path.abspath(os.path.join(generated_base, file_path)) - - # Security check: ensure the file is within the allowed directory - if not full_path.startswith(os.path.abspath(generated_base)): - return jsonify({"error": "Access denied"}), 403 + if demo_cache.enabled: + generated_base = demo_cache.generated_base + full_path = demo_cache.resolve_generated_path(file_path) + else: + generated_base = os.path.join(project_root, "generated") + full_path = os.path.abspath(os.path.join(generated_base, file_path)) + if not full_path.startswith(os.path.abspath(generated_base)): + return jsonify({"error": "Access denied"}), 403 if not os.path.exists(full_path): return jsonify({"error": "File not found"}), 404 @@ -762,6 +872,8 @@ def serve_experiment_file(file_path: str) -> Union[Response, tuple[Response, int # For other files, serve directly return send_file(full_path) + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 404 except Exception as e: print(f"Error serving file {file_path}: {e}") return jsonify({"error": str(e)}), 500 @@ -780,6 +892,13 @@ def review_paper() -> Union[Response, tuple[Response, int]]: pdf_path = data.get("pdf_path") s2_api_key = data.get("s2_api_key") + if demo_cache.enabled: + try: + response_payload = demo_cache.get_review_result() + except DemoCacheError as exc: + return jsonify({"error": str(exc)}), 409 + return jsonify(response_payload) + if not pdf_path: return jsonify({"error": "No PDF path provided"}), 400 @@ -862,11 +981,12 @@ def review_paper() -> Union[Response, tuple[Response, int]]: if __name__ == "__main__": # Configure Flask for long-running requests app.config["SEND_FILE_MAX_AGE_DEFAULT"] = 0 + port = int(os.environ.get("PORT", "5000")) socketio.run( app, debug=True, use_reloader=False, - port=5000, + port=port, host="0.0.0.0", allow_unsafe_werkzeug=True, ) diff --git a/backend/demo_cache.py b/backend/demo_cache.py new file mode 100644 index 0000000..859bec9 --- /dev/null +++ b/backend/demo_cache.py @@ -0,0 +1,270 @@ +from __future__ import annotations + +import copy +import json +from collections import defaultdict +from pathlib import Path +from typing import Any, Callable, Dict, List, Optional + + +class DemoCacheError(RuntimeError): + """Raised when demo cache data is missing or inconsistent.""" + + +class DemoCacheService: + """Utility to replay a pre-recorded Tiny Scientist session for demos.""" + + def __init__( + self, + base_dir: str | Path, + *, + enabled: bool, + log_fn: Optional[Callable[[str, str], None]] = None, + ) -> None: + self.base_dir = Path(base_dir) + self.enabled = bool(enabled) + self._log_fn = log_fn or (lambda message, level="info": None) + + self.generated_root = "generated" + self.generated_base = self.base_dir / self.generated_root + + self._queues: Dict[str, List[Any]] = {} + self._counters: Dict[str, int] = defaultdict(int) + self._evaluation_by_name: Dict[str, Dict[str, Any]] = {} + self._evaluation_default: Optional[Dict[str, Any]] = None + self._prompts_state: Dict[str, Any] = { + "system_prompt": "", + "criteria": {}, + "defaults": {}, + } + self._configure_state: Dict[str, Any] = {} + self._logs: Dict[str, List[Any]] = {} + self.intent: Optional[str] = None + + if self.enabled: + self._load() + + def _load(self) -> None: + session_path = self.base_dir / "session.json" + if not session_path.exists(): + raise DemoCacheError( + f"Demo cache session file not found at {session_path!s}" + ) + + with session_path.open("r", encoding="utf-8") as fh: + payload = json.load(fh) + + self.intent = payload.get("intent") + self.generated_root = payload.get("generated_root") or "generated" + self.generated_base = self.base_dir / self.generated_root + + self._configure_state = payload.get("configure") or {} + + prompts = payload.get("prompts") or {} + defaults = prompts.get("defaults") or {} + if not defaults and prompts.get("criteria"): + defaults = copy.deepcopy(prompts["criteria"]) + + self._prompts_state = { + "system_prompt": prompts.get("system_prompt", ""), + "criteria": copy.deepcopy(prompts.get("criteria") or {}), + "defaults": copy.deepcopy(defaults), + } + + evaluation_payload = payload.get("evaluation") or {} + self._evaluation_by_name = copy.deepcopy( + evaluation_payload.get("by_name") or {} + ) + default_entry = evaluation_payload.get("default") + self._evaluation_default = ( + copy.deepcopy(default_entry) if default_entry else None + ) + + self._logs = {} + raw_logs = payload.get("logs") or {} + for key, messages in raw_logs.items(): + if isinstance(messages, list): + self._logs[key] = list(messages) + elif isinstance(messages, dict): + self._logs[key] = [messages] + else: + self._logs[key] = [messages] + + queue_keys = [ + "generate_initial", + "generate_children", + "modify", + "merge", + "code", + "write", + "review", + ] + for key in queue_keys: + raw_queue = payload.get(key) + if raw_queue is None: + self._queues[key] = [] + elif isinstance(raw_queue, dict): + self._queues[key] = [copy.deepcopy(raw_queue)] + else: + self._queues[key] = [copy.deepcopy(item) for item in raw_queue] + + def _emit_logs(self, channel: str) -> None: + if not self.enabled: + return + + messages = self._logs.get(channel) or [] + for entry in messages: + if isinstance(entry, dict): + message = entry.get("message") + level = entry.get("level", "info") + else: + message = str(entry) + level = "info" + + if message: + self._log_fn(message, level) + + def _next(self, key: str) -> Any: + queue = self._queues.get(key) or [] + if not queue: + raise DemoCacheError(f"No cached payloads configured for '{key}'") + + index = self._counters[key] + if index < len(queue): + payload = queue[index] + self._counters[key] = index + 1 + else: + payload = queue[-1] + + self._emit_logs(key) + return copy.deepcopy(payload) + + def apply_config(self, flask_session: Any) -> Dict[str, Any]: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + session_values = copy.deepcopy(self._configure_state.get("session") or {}) + if session_values: + for key, value in session_values.items(): + flask_session[key] = value + else: + flask_session["configured"] = True + + response_payload = copy.deepcopy( + self._configure_state.get("response") + or { + "status": "configured", + "model": session_values.get("model", "demo-model"), + "budget": session_values.get("budget"), + "budget_preference": session_values.get("budget_preference"), + } + ) + + self._emit_logs("configure") + return response_payload + + def get_prompts(self) -> Dict[str, Any]: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + return { + "system_prompt": self._prompts_state.get("system_prompt", ""), + "criteria": copy.deepcopy(self._prompts_state.get("criteria") or {}), + "defaults": copy.deepcopy(self._prompts_state.get("defaults") or {}), + } + + def update_system_prompt(self, system_prompt: Optional[str]) -> None: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + default_prompt = self._prompts_state.get("defaults", {}).get( + "system_prompt", "" + ) + self._prompts_state["system_prompt"] = system_prompt or default_prompt + self._emit_logs("set_system_prompt") + + def update_criteria(self, dimension: str, criteria: Optional[str]) -> None: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + defaults = self._prompts_state.get("defaults") or {} + self._prompts_state.setdefault("criteria", {}) + if criteria: + self._prompts_state["criteria"][dimension] = criteria + else: + fallback = defaults.get(dimension, "") + if fallback: + self._prompts_state["criteria"][dimension] = fallback + else: + self._prompts_state["criteria"].pop(dimension, None) + self._emit_logs("set_criteria") + + def get_initial_ideas(self, intent: Optional[str] = None) -> Dict[str, Any]: + _ = intent # Intent is kept for potential validation/debugging. + return self._next("generate_initial") + + def get_child_ideas(self) -> Dict[str, Any]: + return self._next("generate_children") + + def get_modified_idea(self) -> Dict[str, Any]: + return self._next("modify") + + def get_merged_idea(self) -> Dict[str, Any]: + return self._next("merge") + + def get_code_result(self) -> Dict[str, Any]: + return self._next("code") + + def get_paper_result(self) -> Dict[str, Any]: + return self._next("write") + + def get_review_result(self) -> Dict[str, Any]: + return self._next("review") + + def evaluate(self, ideas: List[Dict[str, Any]]) -> List[Dict[str, Any]]: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + results: List[Dict[str, Any]] = [] + for idx, idea in enumerate(ideas): + idea_id = idea.get("id") or f"idea_{idx}" + name_candidates = [ + idea.get("Name"), + idea.get("Title"), + idea.get("title"), + idea.get("name"), + ] + + score_entry: Optional[Dict[str, Any]] = None + for name in name_candidates: + if isinstance(name, str) and name in self._evaluation_by_name: + score_entry = self._evaluation_by_name[name] + break + + if score_entry is None: + score_entry = self._evaluation_default + + if score_entry is None: + raise DemoCacheError( + f"No cached evaluation scores for idea '{name_candidates[0] or idea_id}'" + ) + + payload = copy.deepcopy(score_entry) + payload["id"] = idea_id + results.append(payload) + + self._emit_logs("evaluate") + return results + + def resolve_generated_path(self, relative_path: str) -> Path: + if not self.enabled: + raise DemoCacheError("Demo cache mode is disabled") + + sanitized = relative_path.lstrip("/\\") + candidate = (self.generated_base / sanitized).resolve() + base = self.generated_base.resolve() + if not str(candidate).startswith(str(base)): + raise DemoCacheError( + f"Attempt to access file outside demo cache: {relative_path}" + ) + return candidate diff --git a/backend/run_app.sh b/backend/run_app.sh new file mode 100755 index 0000000..08b2e91 --- /dev/null +++ b/backend/run_app.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Resolve repository root relative to this script. +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" + +cd "$ROOT_DIR" + +# Ensure demo flags are not leaking into the normal instance. +unset DEMO_CACHE_MODE || true +unset DEMO_CACHE_DIR || true + +# Default port for live instance +export PORT="${PORT:-5000}" + +exec poetry run python backend/app.py "$@" diff --git a/backend/run_demo.sh b/backend/run_demo.sh new file mode 100755 index 0000000..1e99306 --- /dev/null +++ b/backend/run_demo.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Resolve repository root relative to this script. +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +CACHE_DIR="${DEMO_CACHE_DIR:-$ROOT_DIR/frontend/demo_cache}" + +if [[ ! -f "$CACHE_DIR/session.json" ]]; then + echo "[demo] Missing cache snapshot at $CACHE_DIR/session.json" >&2 + echo "[demo] Run: poetry run python scripts/generate_demo_cache.py ..." >&2 + exit 1 +fi + +cd "$ROOT_DIR" + +export DEMO_CACHE_MODE=1 +export DEMO_CACHE_DIR="$CACHE_DIR" +export PORT="${PORT:-5001}" + +exec poetry run python backend/app.py "$@" diff --git a/frontend/demo_cache/generated/experiments/idea-1/experiment.py b/frontend/demo_cache/generated/experiments/idea-1/experiment.py new file mode 100644 index 0000000..1949a01 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/experiment.py @@ -0,0 +1,132 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +# Load and preprocess the data +def load_data(): + # Load the dataset + dataset = load_dataset("ag_news") + + # Subsample the dataset + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + # Vectorize the text data + vectorizer = TfidfVectorizer(max_features=768, stop_words="english") + + # Fit on training data and transform + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + # Convert labels to tensors + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoader for each set + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class ShallowMLP(nn.Module): + def __init__(self, input_dim=768, output_dim=4): + super(ShallowMLP, self).__init__() + self.fc1 = nn.Linear(input_dim, 128) + self.fc2 = nn.Linear(128, 64) + self.fc3 = nn.Linear(64, output_dim) + self.relu = nn.ReLU() + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = self.relu(self.fc1(x)) + x = self.relu(self.fc2(x)) + x = self.softmax(self.fc3(x)) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = ShallowMLP(input_dim=768, output_dim=4) + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.0005) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Run 2 - Lowered learning rate to 0.0005") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-1/experiment_results.txt b/frontend/demo_cache/generated/experiments/idea-1/experiment_results.txt new file mode 100644 index 0000000..a0826db --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/experiment_results.txt @@ -0,0 +1,20 @@ +{ + "run_1": { + "Accuracy": 0.811, + "Precision": 0.8145642555829715, + "Recall": 0.811, + "F1": 0.8108722139466467 + }, + "run_2": { + "Accuracy": 0.827, + "Precision": 0.8276568041561658, + "Recall": 0.827, + "F1": 0.826017973910428 + }, + "run_3": { + "Accuracy": 0.821, + "Precision": 0.8251032168130884, + "Recall": 0.821, + "F1": 0.8208549347485607 + } +} diff --git a/frontend/demo_cache/generated/experiments/idea-1/notes.txt b/frontend/demo_cache/generated/experiments/idea-1/notes.txt new file mode 100644 index 0000000..47c6d3b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/notes.txt @@ -0,0 +1,17 @@ +Figure 1: filename_figure1.png +This plot illustrates the relationship between variable X and variable Y, showcasing a positive linear correlation. As variable X increases, variable Y also tends to increase, indicating a direct relationship. The data points are scattered closely along the line of best fit, suggesting a strong correlation. This plot is useful for understanding how changes in X may predict changes in Y. + +Figure 2: filename_figure2.png +The bar chart depicted in this figure represents the distribution of category Z across different groups. Each bar corresponds to a different group, and the height of the bar indicates the frequency or count of category Z within that group. This visualization helps in comparing the prevalence of category Z among the various groups, highlighting any significant differences or trends. + +Figure 3: filename_figure3.png +This figure presents a histogram of variable A, providing insights into its distribution. The x-axis represents the range of variable A, while the y-axis indicates the frequency of occurrences within each bin. The shape of the histogram reveals whether the data is normally distributed, skewed, or has multiple modes. This information is crucial for understanding the overall pattern and any potential outliers in the dataset. + +Figure 4: filename_figure4.png +The scatter plot shown in this figure examines the interaction between variables B and C. Each point on the plot represents an observation, with its position determined by the values of B and C. A trend line is included to highlight any potential correlation between the two variables. This plot aids in identifying patterns, clusters, or anomalies and is essential for exploratory data analysis. + +Figure 5: filename_figure5.png +This line graph illustrates the time series data of variable D over a defined period. The x-axis represents time intervals, while the y-axis displays the values of variable D. The line connecting the data points provides a visual representation of trends, cycles, or seasonality present in the data. Observing this plot can help predict future values and understand past behavior of variable D. + +Figure 6: filename_figure6.png +The pie chart in this figure represents the composition of variable E, divided into different segments that illustrate the proportional contribution of each component to the whole. Each segment is labeled with either the component name or percentage it represents. This visualization is effective in conveying the relative sizes of parts within a dataset, offering a clear view of the distribution and significance of each component. diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_1.py b/frontend/demo_cache/generated/experiments/idea-1/run_1.py new file mode 100644 index 0000000..6f42485 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_1.py @@ -0,0 +1,135 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +# Load and preprocess the data +def load_data(): + # Load the dataset + dataset = load_dataset("ag_news") + + # Subsample the dataset + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + # Vectorize the text data + vectorizer = TfidfVectorizer(max_features=768, stop_words="english") + + # Fit on training data and transform + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + # Convert labels to tensors + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoader for each set + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class ShallowMLP(nn.Module): + def __init__( + self, input_dim=768, output_dim=4 + ): # Correct output_dim to 4 for ag_news + super(ShallowMLP, self).__init__() + self.fc1 = nn.Linear(input_dim, 128) + self.fc2 = nn.Linear(128, 64) + self.fc3 = nn.Linear(64, output_dim) + self.relu = nn.ReLU() + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = self.relu(self.fc1(x)) + x = self.relu(self.fc2(x)) + x = self.softmax(self.fc3(x)) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = ShallowMLP( + input_dim=768, output_dim=4 + ) # Correct output_dim to 4 for ag_news + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters()) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_1/final_info.json b/frontend/demo_cache/generated/experiments/idea-1/run_1/final_info.json new file mode 100644 index 0000000..d628bbb --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_1/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.811, "Precision": 0.8145642555829715, "Recall": 0.811, "F1": 0.8108722139466467} diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_2.py b/frontend/demo_cache/generated/experiments/idea-1/run_2.py new file mode 100644 index 0000000..4646d3f --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_2.py @@ -0,0 +1,138 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +# Load and preprocess the data +def load_data(): + # Load the dataset + dataset = load_dataset("ag_news") + + # Subsample the dataset + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + # Vectorize the text data + vectorizer = TfidfVectorizer(max_features=768, stop_words="english") + + # Fit on training data and transform + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + # Convert labels to tensors + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoader for each set + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class ShallowMLP(nn.Module): + def __init__( + self, input_dim=768, output_dim=4 + ): # Correct output_dim to 4 for ag_news + super(ShallowMLP, self).__init__() + self.fc1 = nn.Linear(input_dim, 128) + self.fc2 = nn.Linear(128, 64) + self.fc3 = nn.Linear(64, output_dim) + self.relu = nn.ReLU() + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = self.relu(self.fc1(x)) + x = self.relu(self.fc2(x)) + x = self.softmax(self.fc3(x)) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = ShallowMLP( + input_dim=768, output_dim=4 + ) # Correct output_dim to 4 for ag_news + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam( + model.parameters(), lr=0.0005 + ) # Lower learning rate for next experiment + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Run 2 - Lowered learning rate to 0.0005") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_2/final_info.json b/frontend/demo_cache/generated/experiments/idea-1/run_2/final_info.json new file mode 100644 index 0000000..31d47a5 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_2/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.827, "Precision": 0.8276568041561658, "Recall": 0.827, "F1": 0.826017973910428} diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_2/notes.txt b/frontend/demo_cache/generated/experiments/idea-1/run_2/notes.txt new file mode 100644 index 0000000..90f3881 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_2/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 1 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_3.py b/frontend/demo_cache/generated/experiments/idea-1/run_3.py new file mode 100644 index 0000000..1949a01 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_3.py @@ -0,0 +1,132 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +# Load and preprocess the data +def load_data(): + # Load the dataset + dataset = load_dataset("ag_news") + + # Subsample the dataset + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + # Vectorize the text data + vectorizer = TfidfVectorizer(max_features=768, stop_words="english") + + # Fit on training data and transform + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + # Convert labels to tensors + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoader for each set + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class ShallowMLP(nn.Module): + def __init__(self, input_dim=768, output_dim=4): + super(ShallowMLP, self).__init__() + self.fc1 = nn.Linear(input_dim, 128) + self.fc2 = nn.Linear(128, 64) + self.fc3 = nn.Linear(64, output_dim) + self.relu = nn.ReLU() + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = self.relu(self.fc1(x)) + x = self.relu(self.fc2(x)) + x = self.softmax(self.fc3(x)) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = ShallowMLP(input_dim=768, output_dim=4) + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.0005) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Run 2 - Lowered learning rate to 0.0005") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_3/final_info.json b/frontend/demo_cache/generated/experiments/idea-1/run_3/final_info.json new file mode 100644 index 0000000..4a004d7 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_3/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.821, "Precision": 0.8251032168130884, "Recall": 0.821, "F1": 0.8208549347485607} diff --git a/frontend/demo_cache/generated/experiments/idea-1/run_3/notes.txt b/frontend/demo_cache/generated/experiments/idea-1/run_3/notes.txt new file mode 100644 index 0000000..ba51aef --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-1/run_3/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 2 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/experiments/idea-2/experiment.py b/frontend/demo_cache/generated/experiments/idea-2/experiment.py new file mode 100644 index 0000000..b280f1b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/experiment.py @@ -0,0 +1,126 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + dataset = load_dataset("ag_news") + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + vectorizer = TfidfVectorizer(max_features=512, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__( + self, input_dim=512, hidden_units=256, output_dim=4 + ): # Changed hidden_units from 128 to 256 + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x, _ = self.gru(x.view(x.size(0), 1, -1)) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU( + input_dim=512, hidden_units=256, output_dim=4 + ) # Changed hidden_units from 128 to 256 + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-2/experiment_results.txt b/frontend/demo_cache/generated/experiments/idea-2/experiment_results.txt new file mode 100644 index 0000000..1053b3e --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/experiment_results.txt @@ -0,0 +1,20 @@ +{ + "run_1": { + "Accuracy": 0.793, + "Precision": 0.795239024398564, + "Recall": 0.793, + "F1": 0.7925706551495995 + }, + "run_2": { + "Accuracy": 0.805, + "Precision": 0.8056109579615937, + "Recall": 0.805, + "F1": 0.8047095700204514 + }, + "run_3": { + "Accuracy": 0.7985, + "Precision": 0.8008647556477098, + "Recall": 0.7985, + "F1": 0.7981580518342577 + } +} diff --git a/frontend/demo_cache/generated/experiments/idea-2/notes.txt b/frontend/demo_cache/generated/experiments/idea-2/notes.txt new file mode 100644 index 0000000..47c6d3b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/notes.txt @@ -0,0 +1,17 @@ +Figure 1: filename_figure1.png +This plot illustrates the relationship between variable X and variable Y, showcasing a positive linear correlation. As variable X increases, variable Y also tends to increase, indicating a direct relationship. The data points are scattered closely along the line of best fit, suggesting a strong correlation. This plot is useful for understanding how changes in X may predict changes in Y. + +Figure 2: filename_figure2.png +The bar chart depicted in this figure represents the distribution of category Z across different groups. Each bar corresponds to a different group, and the height of the bar indicates the frequency or count of category Z within that group. This visualization helps in comparing the prevalence of category Z among the various groups, highlighting any significant differences or trends. + +Figure 3: filename_figure3.png +This figure presents a histogram of variable A, providing insights into its distribution. The x-axis represents the range of variable A, while the y-axis indicates the frequency of occurrences within each bin. The shape of the histogram reveals whether the data is normally distributed, skewed, or has multiple modes. This information is crucial for understanding the overall pattern and any potential outliers in the dataset. + +Figure 4: filename_figure4.png +The scatter plot shown in this figure examines the interaction between variables B and C. Each point on the plot represents an observation, with its position determined by the values of B and C. A trend line is included to highlight any potential correlation between the two variables. This plot aids in identifying patterns, clusters, or anomalies and is essential for exploratory data analysis. + +Figure 5: filename_figure5.png +This line graph illustrates the time series data of variable D over a defined period. The x-axis represents time intervals, while the y-axis displays the values of variable D. The line connecting the data points provides a visual representation of trends, cycles, or seasonality present in the data. Observing this plot can help predict future values and understand past behavior of variable D. + +Figure 6: filename_figure6.png +The pie chart in this figure represents the composition of variable E, divided into different segments that illustrate the proportional contribution of each component to the whole. Each segment is labeled with either the component name or percentage it represents. This visualization is effective in conveying the relative sizes of parts within a dataset, offering a clear view of the distribution and significance of each component. diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_1.py b/frontend/demo_cache/generated/experiments/idea-2/run_1.py new file mode 100644 index 0000000..670be65 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_1.py @@ -0,0 +1,130 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +# Load and preprocess the data +def load_data(): + # Load the dataset + dataset = load_dataset("ag_news") + + # Subsample the dataset + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + # Vectorize the text data using TF-IDF + vectorizer = TfidfVectorizer(max_features=512, stop_words="english") + + # Fit on training data and transform + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + # Convert labels to tensors + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoader for each set + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__(self, input_dim=512, hidden_units=64, output_dim=4): + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x, _ = self.gru(x.view(x.size(0), 1, -1)) # Adding sequence dimension + x = self.fc(x[:, -1, :]) # Take the output of the last time step + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(3): # 3 epochs are sufficient for small datasets + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU(input_dim=512, hidden_units=64, output_dim=4) + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_1/final_info.json b/frontend/demo_cache/generated/experiments/idea-2/run_1/final_info.json new file mode 100644 index 0000000..4d5235d --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_1/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.793, "Precision": 0.795239024398564, "Recall": 0.793, "F1": 0.7925706551495995} diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_2.py b/frontend/demo_cache/generated/experiments/idea-2/run_2.py new file mode 100644 index 0000000..d942d7c --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_2.py @@ -0,0 +1,122 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + dataset = load_dataset("ag_news") + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + vectorizer = TfidfVectorizer(max_features=512, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__(self, input_dim=512, hidden_units=128, output_dim=4): + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x, _ = self.gru(x.view(x.size(0), 1, -1)) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU(input_dim=512, hidden_units=128, output_dim=4) + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_2/final_info.json b/frontend/demo_cache/generated/experiments/idea-2/run_2/final_info.json new file mode 100644 index 0000000..f64ec3a --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_2/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.805, "Precision": 0.8056109579615937, "Recall": 0.805, "F1": 0.8047095700204514} diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_2/notes.txt b/frontend/demo_cache/generated/experiments/idea-2/run_2/notes.txt new file mode 100644 index 0000000..90f3881 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_2/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 1 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_3.py b/frontend/demo_cache/generated/experiments/idea-2/run_3.py new file mode 100644 index 0000000..b280f1b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_3.py @@ -0,0 +1,126 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from sklearn.feature_extraction.text import TfidfVectorizer +from sklearn.metrics import accuracy_score, precision_recall_fscore_support +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + dataset = load_dataset("ag_news") + train_data = dataset["train"].select(range(5000)) + val_data = dataset["train"].select(range(5000, 7000)) + test_data = dataset["test"].select(range(2000)) + + vectorizer = TfidfVectorizer(max_features=512, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__( + self, input_dim=512, hidden_units=256, output_dim=4 + ): # Changed hidden_units from 128 to 256 + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x, _ = self.gru(x.view(x.size(0), 1, -1)) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + accuracy = accuracy_score(all_labels, all_preds) + precision, recall, f1, _ = precision_recall_fscore_support( + all_labels, all_preds, average="weighted" + ) + return {"Accuracy": accuracy, "Precision": precision, "Recall": recall, "F1": f1} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU( + input_dim=512, hidden_units=256, output_dim=4 + ) # Changed hidden_units from 128 to 256 + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_3/final_info.json b/frontend/demo_cache/generated/experiments/idea-2/run_3/final_info.json new file mode 100644 index 0000000..af16b5b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_3/final_info.json @@ -0,0 +1 @@ +{"Accuracy": 0.7985, "Precision": 0.8008647556477098, "Recall": 0.7985, "F1": 0.7981580518342577} diff --git a/frontend/demo_cache/generated/experiments/idea-2/run_3/notes.txt b/frontend/demo_cache/generated/experiments/idea-2/run_3/notes.txt new file mode 100644 index 0000000..ba51aef --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-2/run_3/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 2 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/experiments/idea-3/experiment.py b/frontend/demo_cache/generated/experiments/idea-3/experiment.py new file mode 100644 index 0000000..48cb308 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/experiment.py @@ -0,0 +1,143 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from nltk.translate.bleu_score import corpus_bleu +from rouge_score import rouge_scorer +from sklearn.feature_extraction.text import CountVectorizer +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + # Load the ag_news dataset + dataset = load_dataset("ag_news") + # Subsample the dataset + train_data = dataset["train"].select(range(3500)) + val_data = dataset["train"].select(range(3500, 4500)) + test_data = dataset["test"].select(range(500)) + + # Use Count Vectorizer for converting text data to vectors, ensuring a fixed input size of 500 + vectorizer = CountVectorizer(max_features=500, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoaders for the datasets + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__( + self, input_dim=500, hidden_units=128, output_dim=4 + ): # Increased hidden units + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = x.unsqueeze(1) # Add sequence dimension + x, _ = self.gru(x) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(10): # Increase epochs + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + # Compute BLEU and ROUGE metrics + bleu_score = corpus_bleu( + [[str(l)] for l in all_labels], [str(p) for p in all_preds] + ) + rouge_scorer_obj = rouge_scorer.RougeScorer(["rouge1", "rougeL"], use_stemmer=True) + rouge_scores = [ + rouge_scorer_obj.score(str(l), str(p)) for l, p in zip(all_labels, all_preds) + ] + avg_rouge1 = sum([score["rouge1"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + avg_rougeL = sum([score["rougeL"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + + return {"BLEU": bleu_score, "ROUGE-1": avg_rouge1, "ROUGE-L": avg_rougeL} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU( + input_dim=500, hidden_units=128, output_dim=4 + ) # Updated model + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-3/experiment_results.txt b/frontend/demo_cache/generated/experiments/idea-3/experiment_results.txt new file mode 100644 index 0000000..e323502 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/experiment_results.txt @@ -0,0 +1,17 @@ +{ + "run_1": { + "BLEU": 1.7229823170315744e-231, + "ROUGE-1": 0.8, + "ROUGE-L": 0.8 + }, + "run_2": { + "BLEU": 1.7420470999998382e-231, + "ROUGE-1": 0.836, + "ROUGE-L": 0.836 + }, + "run_3": { + "BLEU": 1.7315333603727777e-231, + "ROUGE-1": 0.816, + "ROUGE-L": 0.816 + } +} diff --git a/frontend/demo_cache/generated/experiments/idea-3/notes.txt b/frontend/demo_cache/generated/experiments/idea-3/notes.txt new file mode 100644 index 0000000..47c6d3b --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/notes.txt @@ -0,0 +1,17 @@ +Figure 1: filename_figure1.png +This plot illustrates the relationship between variable X and variable Y, showcasing a positive linear correlation. As variable X increases, variable Y also tends to increase, indicating a direct relationship. The data points are scattered closely along the line of best fit, suggesting a strong correlation. This plot is useful for understanding how changes in X may predict changes in Y. + +Figure 2: filename_figure2.png +The bar chart depicted in this figure represents the distribution of category Z across different groups. Each bar corresponds to a different group, and the height of the bar indicates the frequency or count of category Z within that group. This visualization helps in comparing the prevalence of category Z among the various groups, highlighting any significant differences or trends. + +Figure 3: filename_figure3.png +This figure presents a histogram of variable A, providing insights into its distribution. The x-axis represents the range of variable A, while the y-axis indicates the frequency of occurrences within each bin. The shape of the histogram reveals whether the data is normally distributed, skewed, or has multiple modes. This information is crucial for understanding the overall pattern and any potential outliers in the dataset. + +Figure 4: filename_figure4.png +The scatter plot shown in this figure examines the interaction between variables B and C. Each point on the plot represents an observation, with its position determined by the values of B and C. A trend line is included to highlight any potential correlation between the two variables. This plot aids in identifying patterns, clusters, or anomalies and is essential for exploratory data analysis. + +Figure 5: filename_figure5.png +This line graph illustrates the time series data of variable D over a defined period. The x-axis represents time intervals, while the y-axis displays the values of variable D. The line connecting the data points provides a visual representation of trends, cycles, or seasonality present in the data. Observing this plot can help predict future values and understand past behavior of variable D. + +Figure 6: filename_figure6.png +The pie chart in this figure represents the composition of variable E, divided into different segments that illustrate the proportional contribution of each component to the whole. Each segment is labeled with either the component name or percentage it represents. This visualization is effective in conveying the relative sizes of parts within a dataset, offering a clear view of the distribution and significance of each component. diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_1.py b/frontend/demo_cache/generated/experiments/idea-3/run_1.py new file mode 100644 index 0000000..3ffc535 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_1.py @@ -0,0 +1,139 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from nltk.translate.bleu_score import corpus_bleu +from rouge_score import rouge_scorer +from sklearn.feature_extraction.text import CountVectorizer +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + # Load the ag_news dataset + dataset = load_dataset("ag_news") + # Subsample the dataset + train_data = dataset["train"].select(range(3500)) + val_data = dataset["train"].select(range(3500, 4500)) + test_data = dataset["test"].select(range(500)) + + # Use Count Vectorizer for converting text data to vectors, ensuring a fixed input size of 500 + vectorizer = CountVectorizer(max_features=500, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoaders for the datasets + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__(self, input_dim=500, hidden_units=64, output_dim=4): + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = x.unsqueeze(1) # Add sequence dimension + x, _ = self.gru(x) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(3): + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + # Compute BLEU and ROUGE metrics + bleu_score = corpus_bleu( + [[str(l)] for l in all_labels], [str(p) for p in all_preds] + ) + rouge_scorer_obj = rouge_scorer.RougeScorer(["rouge1", "rougeL"], use_stemmer=True) + rouge_scores = [ + rouge_scorer_obj.score(str(l), str(p)) for l, p in zip(all_labels, all_preds) + ] + avg_rouge1 = sum([score["rouge1"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + avg_rougeL = sum([score["rougeL"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + + return {"BLEU": bleu_score, "ROUGE-1": avg_rouge1, "ROUGE-L": avg_rougeL} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU(input_dim=500, hidden_units=64, output_dim=4) + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_1/final_info.json b/frontend/demo_cache/generated/experiments/idea-3/run_1/final_info.json new file mode 100644 index 0000000..c6bd67c --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_1/final_info.json @@ -0,0 +1 @@ +{"BLEU": 1.7229823170315744e-231, "ROUGE-1": 0.8, "ROUGE-L": 0.8} diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_2.py b/frontend/demo_cache/generated/experiments/idea-3/run_2.py new file mode 100644 index 0000000..42e4625 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_2.py @@ -0,0 +1,143 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from nltk.translate.bleu_score import corpus_bleu +from rouge_score import rouge_scorer +from sklearn.feature_extraction.text import CountVectorizer +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + # Load the ag_news dataset + dataset = load_dataset("ag_news") + # Subsample the dataset + train_data = dataset["train"].select(range(3500)) + val_data = dataset["train"].select(range(3500, 4500)) + test_data = dataset["test"].select(range(500)) + + # Use Count Vectorizer for converting text data to vectors, ensuring a fixed input size of 500 + vectorizer = CountVectorizer(max_features=500, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoaders for the datasets + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__( + self, input_dim=500, hidden_units=128, output_dim=4 + ): # Increased hidden units + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = x.unsqueeze(1) # Add sequence dimension + x, _ = self.gru(x) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(5): # Changed epochs to 5 + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + # Compute BLEU and ROUGE metrics + bleu_score = corpus_bleu( + [[str(l)] for l in all_labels], [str(p) for p in all_preds] + ) + rouge_scorer_obj = rouge_scorer.RougeScorer(["rouge1", "rougeL"], use_stemmer=True) + rouge_scores = [ + rouge_scorer_obj.score(str(l), str(p)) for l, p in zip(all_labels, all_preds) + ] + avg_rouge1 = sum([score["rouge1"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + avg_rougeL = sum([score["rougeL"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + + return {"BLEU": bleu_score, "ROUGE-1": avg_rouge1, "ROUGE-L": avg_rougeL} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU( + input_dim=500, hidden_units=128, output_dim=4 + ) # Updated model + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_2/final_info.json b/frontend/demo_cache/generated/experiments/idea-3/run_2/final_info.json new file mode 100644 index 0000000..107d9a1 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_2/final_info.json @@ -0,0 +1 @@ +{"BLEU": 1.7420470999998382e-231, "ROUGE-1": 0.836, "ROUGE-L": 0.836} diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_2/notes.txt b/frontend/demo_cache/generated/experiments/idea-3/run_2/notes.txt new file mode 100644 index 0000000..90f3881 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_2/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 1 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_3.py b/frontend/demo_cache/generated/experiments/idea-3/run_3.py new file mode 100644 index 0000000..48cb308 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_3.py @@ -0,0 +1,143 @@ +import argparse +import json +import os + +import torch +from datasets import load_dataset +from nltk.translate.bleu_score import corpus_bleu +from rouge_score import rouge_scorer +from sklearn.feature_extraction.text import CountVectorizer +from torch import nn, optim +from torch.utils.data import DataLoader, TensorDataset + + +def load_data(): + # Load the ag_news dataset + dataset = load_dataset("ag_news") + # Subsample the dataset + train_data = dataset["train"].select(range(3500)) + val_data = dataset["train"].select(range(3500, 4500)) + test_data = dataset["test"].select(range(500)) + + # Use Count Vectorizer for converting text data to vectors, ensuring a fixed input size of 500 + vectorizer = CountVectorizer(max_features=500, stop_words="english") + + X_train = vectorizer.fit_transform(train_data["text"]).toarray() + X_val = vectorizer.transform(val_data["text"]).toarray() + X_test = vectorizer.transform(test_data["text"]).toarray() + + y_train = torch.tensor(train_data["label"], dtype=torch.long) + y_val = torch.tensor(val_data["label"], dtype=torch.long) + y_test = torch.tensor(test_data["label"], dtype=torch.long) + + # Create DataLoaders for the datasets + train_loader = DataLoader( + TensorDataset(torch.tensor(X_train, dtype=torch.float32), y_train), + batch_size=64, + shuffle=True, + ) + val_loader = DataLoader( + TensorDataset(torch.tensor(X_val, dtype=torch.float32), y_val), + batch_size=64, + shuffle=False, + ) + test_loader = DataLoader( + TensorDataset(torch.tensor(X_test, dtype=torch.float32), y_test), + batch_size=64, + shuffle=False, + ) + + return train_loader, val_loader, test_loader + + +class SingleLayerGRU(nn.Module): + def __init__( + self, input_dim=500, hidden_units=128, output_dim=4 + ): # Increased hidden units + super(SingleLayerGRU, self).__init__() + self.gru = nn.GRU(input_dim, hidden_units, batch_first=True) + self.fc = nn.Linear(hidden_units, output_dim) + self.softmax = nn.Softmax(dim=1) + + def forward(self, x): + x = x.unsqueeze(1) # Add sequence dimension + x, _ = self.gru(x) + x = self.fc(x[:, -1, :]) + x = self.softmax(x) + return x + + +def train(model, train_loader, optimizer, criterion, device): + model.train() + for epoch in range(10): # Increase epochs + for inputs, labels in train_loader: + inputs, labels = inputs.to(device), labels.to(device) + optimizer.zero_grad() + outputs = model(inputs) + loss = criterion(outputs, labels) + loss.backward() + optimizer.step() + print(f"Training completed over {epoch+1} epochs.") + + +def evaluate(model, data_loader, device): + model.eval() + all_preds = [] + all_labels = [] + with torch.no_grad(): + for inputs, labels in data_loader: + inputs, labels = inputs.to(device), labels.to(device) + outputs = model(inputs) + preds = torch.argmax(outputs, dim=1).cpu().numpy() + all_preds.extend(preds) + all_labels.extend(labels.cpu().numpy()) + + # Compute BLEU and ROUGE metrics + bleu_score = corpus_bleu( + [[str(l)] for l in all_labels], [str(p) for p in all_preds] + ) + rouge_scorer_obj = rouge_scorer.RougeScorer(["rouge1", "rougeL"], use_stemmer=True) + rouge_scores = [ + rouge_scorer_obj.score(str(l), str(p)) for l, p in zip(all_labels, all_preds) + ] + avg_rouge1 = sum([score["rouge1"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + avg_rougeL = sum([score["rougeL"].fmeasure for score in rouge_scores]) / len( + rouge_scores + ) + + return {"BLEU": bleu_score, "ROUGE-1": avg_rouge1, "ROUGE-L": avg_rougeL} + + +def main(out_dir): + os.makedirs(out_dir, exist_ok=True) + device = torch.device("cuda" if torch.cuda.is_available() else "cpu") + + train_loader, val_loader, test_loader = load_data() + + model = SingleLayerGRU( + input_dim=500, hidden_units=128, output_dim=4 + ) # Updated model + model = model.to(device) + + criterion = nn.CrossEntropyLoss() + optimizer = optim.Adam(model.parameters(), lr=0.001) + + train(model, train_loader, optimizer, criterion, device) + metrics = evaluate(model, test_loader, device) + + with open(os.path.join(out_dir, "final_info.json"), "w") as f: + json.dump(metrics, f) + + print(f"Train dataset size: {len(train_loader.dataset)}") + print(f"Validation dataset size: {len(val_loader.dataset)}") + print(f"Test dataset size: {len(test_loader.dataset)}") + print("Experiment completed successfully.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--out_dir", type=str, required=True) + args = parser.parse_args() + main(args.out_dir) diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_3/final_info.json b/frontend/demo_cache/generated/experiments/idea-3/run_3/final_info.json new file mode 100644 index 0000000..7c79ec3 --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_3/final_info.json @@ -0,0 +1 @@ +{"BLEU": 1.7315333603727777e-231, "ROUGE-1": 0.816, "ROUGE-L": 0.816} diff --git a/frontend/demo_cache/generated/experiments/idea-3/run_3/notes.txt b/frontend/demo_cache/generated/experiments/idea-3/run_3/notes.txt new file mode 100644 index 0000000..ba51aef --- /dev/null +++ b/frontend/demo_cache/generated/experiments/idea-3/run_3/notes.txt @@ -0,0 +1,4 @@ +Experiment Description: +In this experiment, we used a SimpleGRUClassifier with a GRU layer and a linear layer to classify IMDB reviews. The model was trained using subsampled training data from the IMDB dataset, with a validation set for hyperparameter tuning and a separate test set for evaluating the model's generalization. +Run Number: 2 +Results: {'Accuracy': 1.0} diff --git a/frontend/demo_cache/generated/papers/idea-1/investigating_adaptive_prompt_decomposition_for_improved_long-range_coherence_in_code_generation.pdf b/frontend/demo_cache/generated/papers/idea-1/investigating_adaptive_prompt_decomposition_for_improved_long-range_coherence_in_code_generation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ea255ff1e148bd438346b8548970bbe9a2b7507d GIT binary patch literal 550657 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

%D%K9 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

vOq8g0 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 literal 0 HcmV?d00001 diff --git a/frontend/demo_cache/generated/papers/idea-3/exploring_adaptive_prompt_decomposition_for_enhanced_coherent_long-range_code_generation.pdf b/frontend/demo_cache/generated/papers/idea-3/exploring_adaptive_prompt_decomposition_for_enhanced_coherent_long-range_code_generation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..289936de003f9fdea1a550b9b3a871fdb7beecc3 GIT binary patch literal 571638 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]NQ4lOGt~Pmr+4Gu?395%6OU#aFNuD@#+T zhkc7R3v<)!m`E67%Qa(UH@Am-6fi!BAtEHZjHj!w{WxItAc+^QCz_xR7q$5SD)VjQ z`cap%HRk8;pJPHfJucQhY!;lJYTyokI!abFp+@WZZjOgMQ!&80kQ!Ek`VVzNWRnlWHX z^>(lX)I9Hw1Wdu-WS4P&s;hH(PX2t@QSrnMo0E_qkwiyKMDb%eMN%=qEFIi_W#>5+ z8=g>24~*h_$7aun$8)YLtMiRkFzr(+{y>M!A1W`9?-k@%cV63PK7~RlKV;X)Uq450 zJi}r=3zOYE!?!)Z*?4*r{ZuUX5CC$T;J;9^WMI&N-0%29=H-hyk{wvUHIfLy$!J~; zo72tnEuJ=H<-+qD!{|pC&#ap8Awl!5@S6FKu#n#q-Pum;sA(6`S+VaijrGk zYLMj}g7?Y#-958iod{NDXUX#c4cH=seP2(O-3GQqDCE)uq>Udx4|Mh1bZDI2U|rFi{Y~27ZhPK0SWC zPe-G{jJkd%-{=U$d){X>TiF0}gS2|AOb6^aE9#?T;`^5Uh zZ~shpBW1sFuyT^T5x^AKq4C^%Yvk%^x@KVt^|{5|wu{&*E-h|LJt~QvgDh`qc@Rzr z%Uo+BM?d9Q%YJ@6ouK8rPVTcI=BpW=?#rKB?Vc9b&Hx#Ao{1=HiKPTPm(;Lr1^J)J zF|{(&or->VBGr0tQ#`70cD)(^ZOFO(JvrV@{JA+LdJib?gr_*N;*dToAt6%yNpCMyhDYS2}=V3{Iv5O z((nq8nX?8A$_58C@)X>Xwa3Sn25 z?X!CERuQK;+8&CT6CWQE7;tdpDC4s8KB*n8ZnlqBPl8#;#{KCZQp7eBaFSfb%VWnL zN)^TpXgRA?lkY(+0X$^1Yw6P;gqz5zT%?a%kK*0*yz5(9)FgBu(Y9|di(~Ey3nSl{ zED(lrbbSGe$QByk=Dl|H(~jpD6^_M0vi0ZYny`|{usT*>v1ml3vb+eXJEU@1w*(`p z)@Hfx)4$O;i|<7XUi`)sx0N3-lP4SfR%mBDomD$iRIeuc|4+&S--zpDFnVle1)yUZVu_emdKnY8Kav*DPzx|XqoUw?ta5r)Y0Nf$^E zso}7Qsy`%{IN&NW$YGmFFdIfhW|Deeb~+VLCNiE#bK8QIM(I4b;G(~f$n=?{kR7|n zUZFr{ioCh7wZx~a>wN^nWWaso46cl2gnErGh2A}E@*Z^a6mJ>1a7)u;t+=IcU$P|* zR2(da>ry#IlPjplq4@8dVS|hKsL@_GE2b$4ox{m_u@Moy#I%kGCticjz3cPRTU1 zm$`VJ!@4!DN}?A?Z#{A3$qLvTR-NLItTgwGxjIInVubAds5JOK+Vt&8xeP>g<^OgZH69t8fz#>SBJ^0*@>aADN$E36=da^0Y zsX$^Dg*GEg0d?)KFaa^i!L?Fl+O`4Ib)XlL3+}daK1#t(*#^28))ENWqbSeW!K=E} z6HER0;dJO6AG~>R&K}i^Wa2=fg>TiYO-rROltv~6@n@g$$8UbTz9k=E=dTmh1Oi2j zHHB@Mv1rsvd(L<@Q458XO!VJIk|P@xkw5pf$4Ir|q6uX)NjUD>PU3iF6J?0*h}3kJST0+zhip{lH>`G zXny7UZ3Z{un1$h@9xBT$5WPh1MiNoQcSynWwLO}@mQUjQr4G`E>De822+<)jcoVao zp=7pqurZ>xEe!4V{D}RBs@?-atWgLW ztUw`btA|ar?*hII?wnL^-KNjnKvQP>?~w$APsnl~vS<@c>yNmLx|o=}Q-7TNI-tzr zKU>B)Hsfdg%27j$yy(Ob13o~&osTjmilLiC6{42*o4p;iNtxgE7B@825MI8asv%wO zPVEmuhM^(UkqqyTcsPsX`$X}$HI3Z#@OAIbQD%9kC9ggzD4PejFt`)n&(8ZdU%1J8 zSmQ)Ve{y}NhUcNDw8?Q-5d+pW$?>B`N3gTlr7242JwbyhbqL-^Rpo297$GG>ZxuX( ztR&6w)DtS|{Ic(`3&Jo!!ZW;4d@B~Jw5A*q!a8YIz|%O)VEsEEPUg?rSC`1nc@k8j zu((tP=#2gJJRDupil31Dk%AIM+xIo^BK0h#x_&A>oV{5*G<<)oj_$Mg7WHNcuUvTh zMvF=RDEd`}Iy1*D{rru4radO213b(6dcO$nEsZZ$6RyC?l^eoDbLx*~gM91mWqjju zLI)~e%7Vi*>^KfXPO%~cEs~)IY=o*%cFoScQU^p9Oaa|3DF_GsO@<1;+#KAB@_Yg# zP2P%k>FTPk1w3Y&0{6lc8;9ez3!SXT+{?tumyxZ$Fj5uv+k%5m46enahVbQ;Ji;u3 z#(canQjV<0Uu7dGptd5|YC4c&k36wx;9mpON~0HddVIDZzPlx?Y{#grU?*!=vv+vy z%YA-AqWxN?$IRu0BDR`3Z@X_O!Mly?P54FMs=7}<-%EPs4(wi;Y!g$r6bneux+iA9 z!6IS)&DF7B_{`sPweLRf2=%7K|320f`aSD;CaEFeyd3gAEI!!3cy1<1Zr zZK{J4a9}lpx}B=Ty%6D6=DftmgQP+2iTG${VH%b+E!FHNPwz znl#TPEUC^1Tlaa%#8g(WlVLm+;_Ioa=4(7UEDBpjTx?;Ke5*Fe-cz?|Xc+P&yve4W zxxxFC>i7ZDTpC>XmGE6H4^j$03Z*%R6vqdQYaT<`#ZN1`o(cXcz1PJKKal5tZZt)2 z$kJInJ?%KXPCfS=rgAtpJ#QiZ>@w!!yO57?h#}qMFLyd;z$DVjq4iNY;O)YGt?8IB z2`~j7+e2Rat!G`a=y^kh)kSNnNFw$pnI=wOOjM(T{Mb_2Piijx%*ZXtWf?J#u~y`c zcM1u$&ikqXhYN;rd6n(Y*dh=4ci-ez0pP1TT~rF6i2H_bPJP35yb{uz-t$cMhN9wx zyve!UqTOhSzP9Iek^f51_!gC{ZZm$GZF!{%W<{xl`Nvopn~7-cU$m-HWOl zDz$39=B6NOOckDssheW*VI{CS`bXDR9Q5Aq7JS$)uUMre{NwLr}^O+r2!?ksgM#)JVs_cBR3+Nwt}Pw z;R=q;_R)#WJj(77Qet^~OjrPcfpU)I({a*LtBImsv4wg{eE75?ljYDdPI^8%zF#Cu zTi1v5@>^{Zqy^qndH#M?bp>y~BTwI}j-@@aP#pI94rk80>@GsPkyJEs?)L!(1`qU8pE?4gTM z{45ARvt?*HkVO!fXZ#Rtv*BayX2f3VlDt1fX_Wnqz)Jtb)X@=dNe!4Rgn6N~dxXJ} zO(W*%H%DB15FwwX_!$O+w3lSz`Q|Cq<&)?DV->59l$bCVuubLYUcVV7_d&7UoB3g# z{>C~--#0`R6WP5{SvhTOEA4*cj_o=HiwfPu_z^t9Y1i8M@xe9|f)}Y07$0=PoAOGq zpTNJdafLi%j0V8qkk?RaE_>bYRv{n*;rv}KQvUoPs7mWZ=33KrH#~DuzH4cin&r8zqSdsT@vE*CRO^&qU!&tz@!t{c zvt%f^Z4L0k1e~Xf_(CDQn}iwooZY%=m6_)_JGY~`P_PF5%81M3@=UUk_lT^-Q2ztF7bs9fkTN z*yiX}*V2I(vS~>J?Q#(cdcIlA+ayBpa!Ts*B>~U+ftlT?Ty(lBuI1(9h-|GM=2<}= z>xkt2*X1e{so*HOEv{RItr1V^MJrp&#h-+?HBYG9MH}j$)9Q58sH2*t0Ie-xkuB`d zU`TZe(Ww+6?XsWTj-13XVQP{-1+J@#xvzSS=f$v^7q~FHhak(VVSsn@ZyhW2!)-BE z{-7vaLtp14GTDg{vx!kc(j>**Gd1_;D)`0$a*2_#5UAwH?K?RU-Op&2;VInDP&Ztt z-csp)6bx&K`byhzdGqKuu-n-NQ=bo@DJ|ndT#WEENLSskgPxaY=ORYt>kWa!hdT@z zE)-66{9$rTbsck76_E4c2MPv95~dNvRcWCV`NRi$U#DYoR4{xfH7HMvTtd>B=+PsZ z#1`JE4s!mvG?nbDpHVZP^!Zuu1TH5-tPT4k6|-pa3%*Dv9K<#?F|0-xbc+W+scj&(V)y{U2*lz@$_|dhWZHU!v&^3T2 z)eAjE+IlIR7W3_~tNiW*Y|YYEehv>qit+?W@N>7+Xb?Y!E0{}O?n%MN;D~;r0a(nR z-)Dx-gX`sENAZ&g+6_napqEEuK9gWVRR=XlV`(S8#-d0IX(vEbVOJzkiy7S&w?Q=u z0J5N5#=~i-L}-rN`X79gMfZpdMEj(yBx%MK*+~cc?wW^Jg(SFAgL8O3@0EvJWa5c!+qP}nzRA1yyU)4j?E9U2zvNd{ z-PKjy|LR)FO0RT3kCs%Or8MkFBhiY^-SjncBJvy;kD}S}Yo2kj8yFI7m_H2phXfpM zd$qVaydzs#$Kmjyc~av`U&ar$E{*8XnUoDjsS#0=BH2e7Vn)t(_~4E*8-Ve>SK0b7 zT*-^yVDKJ>f!9cf34U8+euXvb5%ol?A}=7)1%-ZMgfD}SF-y$E=~h!#J4enOb)u2V z=?Z(HcP>x2LWWnj&#y<{35@;cp1c}XL8HV;(f)ESsW&@e0tq8d}9e05jb=8CzyosX8 z=2x0G+7nEnSH{*$$OL*E;xCKbA85FNG}@GHLbOh`Vwq=GHj(ENSR54_!UfUfFc=9W z9yb?YQ3Rxhr#v8rs+v6*aiouaF3Afmp*^ugorF09o~=XgzO6xO)%gzg7S#^S$ae^T zKBpxNlP{ZhhO<~Z2GUu_wNPlRCoo}t%6=5y5)Au7 zz6ME*jJBD{Y3+NXENZZJ%Bpm9u`6Sh zh$7i3A0eB|V<3@$PONAZVz~`uJcIE&t6{2dFkin;Zi>l)7&YC+EHTR9EC1S=y1cG{ z7I8*$_zf(D#L2_M{+f$M$>NrH_ zuUW8M2|>q{)Mb_rtp@Doe937~;eg*)8sAwb3n4~tyF2dU%IX|bf7L&qN$B^YuLIYJ zUEjQ$(Y6FhoK1enhFnd|B zQqnSn)%_m8uI6k3L1Dyf04kFMMO&0QU9M$&#TOh6NJ!UuU6Uuk|h zJO$SI!sBC+_qaEkPbGDQwl`O~8L0O|OOI4eo`pEK#%X6`iW0(sm+k!OD{LR_COdW)bO}O(Rfx=k9 z1hRb`7OeEf5_!I5bz7+khRx?i(%oeq6pePGPJ^<}%J%FgkcGhxygzR1O^LQSy?&#D znuVmf+v#PH>i@#u=$!cfs*rmnp0xAiT{);Q{ho|SfJZp9M@kYMyY(q z0a)+Q)@H8`g@ANq>DGeCiP?dFeMzcR5Tr+ca*~9Vt}h|(eXE*_GaX&#v5Wz|#R9Om zj{xx-njRt7Xf)Qs7AAw3?n4j+>+_*n-*IL1IEovZR4M{d&pa{btj0jq#WHpNV=#;Z zS;4lHLu7e-5WH5>8F*IT@;%1o&I`}RzPE@FjX8)2oe@XxlG@1t5j$28Z|1xQ%P`5JCOc3JCbEw8pXTU zbJsEUO5J~{2v%d<6l`8(KS5tER6SS#X#(!36s^jPv)l@Ar+Xq1kEvxm&tItlMPd~h z0)_>b@OcAZcJd7!BO>3@Uu5ebTEUu5xocHH7w~tJEiv?|L)2O=)X?PaL2(F_4y`@A z!=glc<=3`USynSv91An-waDFim!p3Gys^_SUieO&6v+U`v1W;$9yDhs{q1pi9Rz;Ios%;}g2G29v|iLrjg>L(>tYHP(0XF}JPS!taky^r$i9 zCfRX-fhCL-t=yQl_b1k*ZafGmK(U0YT+`>6lODnaC%6dFf_UyJgE@DZM8~TJc%V&{ z7aaGv_k=T{dIjt))Fe&9Foy1gWq%paEw~lA1NGwcSHiK3CU$9<$W-UzdjRCrG~&-L zQL#eDJ1d*QOzY+RH|{3K11WKVOTOm`ojV9pY)^KZ^;lxGotFJY<{+imYB~R3m}gMu zYcoplI&%iUUZT)t+Y^61k!qE+?bjW`s8srqVx=g-hcClC`Il9`Xkq>=lL((grD!C= zZ&_P-Gc`?a?&_{B5QskwIh)?G@aCPi7O zR2z0w>$yfgE+8~M2|o|xVC%o7HGgD_T?#2Y9& zhy;@^hXI$&9ccN66>A=9|aw&Gm`NrsIHE!-h4Xhr6@+V*lQzE&= zW=aMY2FrePl@9ENo{`8$Zb_3W(5np}37D0PLldm1v~QKG{&oW0)Xf7}7X-Mo_LEF_ zS%-N3kjNxzI9|m=Q0G3LK4QnO97>Qk6pye=JD{1Tusm|=*c4|`Z5PJ5b=Igz8w8f* zFhOs34A59br6at}nB6*t=s16T1%WkIlyV4T${c@jB_R?CD#7o*>jN zF?L;vlGml_NYhUVj8cgtr5rq2AIG$Zbr&x^{Bo%FPPE-}CxJ~$&d)ONe0ser3yHi1 ztwL03bS`E1|1d8i0Zbf!AQhl!Tm&_94^tUgn-N5J>)7mzq(Td-O(JS&LgmLE@y=x3 z1XbaIYf0cGX&n=D2*&Ip*)1737wU|(|Lkp;s6m^-kCwk7M~7Ip5wr35RNnWMOf?L~ zv!BhIo+?y0#$+)D3$%###dgB`}WmbkITo^}~oz88@IXtRbUguPX%?aS`pb3YE z)MAy0MHw(9iP%Fx=&`-oP{@v!Chx(qO^&wS`OZbG$#G=61zw^TA%6?AWl@J2Z2nt+ zQAE0pF^re?q0w*Q$m%gvkEb)Jx*_5RDXRG6>r%S-UV;5<((ZF*rlPP0LX_bVw1_jaXzKDDck|(O7+JR>Ty&rZ zD?*tS`bk$cb@%Yy_(H+e=FEHAFNM}=`nBvVvU&cL_f@`xvg zRf#k@ew^5XESm4>^<7##)P3D5BlY1-l*B=J2vIW8|f!DiZrN$iNP55n!N1 z{M^BzkrXaknlTGLZo4{I*eY?MI6bnmItqA5NXO58#kg)+7^?_O>m<+ddUFiDb_q`G z{_anTwZ{8R=iV2KPVtYd2csxE#w3{>Z>AyfTkAFKl*);7{J2PqvkIvVcT{~aFB_HB zm1=WM$g+2d$>z+7kZaDy{(yT;Ers6O zZ|sy7DQbc##9dpy&Jd>*JhV+op%qv7!M3M>Q9)Se#rNmyf~g&pK}357TUa)Q46ntx z?Lpty-e2tSxM0RXXI_1yU1X<@W{z{6(FvxNY45}U2&>wEem}QS$m|A~Nr0iT8EBj_ zNULWy`_rdF`g+pVs*w_?ejwrD3Gx>b4ROqh8uR?M1J}_s)imj6V%6 zCpzNtV`-L@jVFB6235`%d}%Lr^5?U5*<1Vf z;`_U4gBHMeMU6RLKIyo}bhe4HEDJz+v-V@?3;Iol0yjuK#78Q3wqn?F7ZDMdwyi<@6P z=5;4%YbXp`G{fslk=5n?ptSzJVM1~oCQd_R%8%qo1IbaIc>@=7BwX3S0r7aI@Jt}py%Us!Me@9^50D^#j-V`rEQC`sM5JJhc-pdVyf&Pbt1_mNo0wOkov5W+swxvrdr| zxD6n2*Ex!k!J3Wa1?#??$gz1A?bP?nbK{cpR;Q6Ha2n7d&km@P2qCqXQ+#B)&G9YoYTnXlrJzRJ_?KNK7^LZ0t@O0jPBn|2qrjQ7Ve12E4|9N~ z>DyZvQp60F@@Qu87OzLye!Hf~LF3U_9@#hC}3C8BkRLmBsuGYcFcA+>a*+V~wm95>%@ivEu`& zUSq(S=b{mV?xw>kW0(z+1}8f9p-%cNhzxGKakiuD&Oi3hx)vdgEk*pjCS?buC|{21 z#s)SZ-Z9pznlDmwDZ^QeiarZO!x{XjXW)Wq=TK<|qBSZ^)%|BMzrtz5R2a+e!{E3~ zI?0hd&(v~U0dY$~(e#-xFb+(=?ia+}0cL%VrnvCbn9iMGI=KZC!Rc~gH?knClK`tH zD)Oo|Lt4p@JBXEdWSfm4l31YzyY-t;OsCz%mkz3E7rHtU%%h?-26B(;d#rmiWD0At z^6myA-iCNr=PO6O0bBerJZW1QHw-Qa4Z(K#fU8LzB2O0j?x``>l6s_k)n*@stqOGC zerpMAxx4r%z(%hN>~St*}xfLcNAYC?F{p zn?(8AS4e+#B$x3!$(xjw9#J`esY0dVJXcyN|!& zRZv@cy!+kkQunGGQ`PAwFm0M})V-ju*0B6p&mB(RxaK zZyqg)QN4t&7=VlDEAk~;%>$%)A}MSG0EEZd{G z>^Eflj9Bny=k0)v_``+@Z5;(q$j%2Ul@ss@IvMhE{{FGOV_@nMgPbUz*b^nZt#~cz zo{2O0TZ#29pHmQk=+`>rrJt^Sl|as1TqVI&nV1XIibVKA&l?CY`M^24$ll*G#>6_% z;%ZkW)nq>JU=*gqY~`I*+`jX!ImVx7RbDp?Tt8VF=f$I0r2Gj()R73rOx)7z)im!m z^(PxW-To8F79IyA_g&KqPxtfT-qc{7(C(A9(mqvc0gv438r;ETQnI&9}agI7f1-1#vbNMiZ=AS5JaoeT@4`zbA2Y8oHAe1EOSV>n4Ux z3Ntb)Q}k?%ub#-=3U~|aKR@f-97C9@QU`ag6i#7079biaz7KVPcy}Q6dn`Hml@*s< zm-QOd#~JS0IgSq4b;!4)`JHXzauq)7v;Z;Z=4mQmsEiKJB;U;;(W7771eKM9lt$yu zjTboLp_J9Cr$0}}XZqQ!IfE*q1XG9LtUNEhgma>0t{$O49rHR?%>5~$7BU*b^;H_P z$K#oNbsHNs5mMTqcau;{X8o;xRU5|>UI~+6=?A64{UA#XJp7ml-#5lXhh(gZZfJ?} z-!A5vA@jpsIFtdBNv`+LuQLJ4z|ccm^!)4=!wIWx-`A`5GArOsM)cSzNSIKOJ;xScslBO_&RrBeklgwp$g zaG*pl3d&&=J;)_0A;cf~n$vAX_G)-lrH_M_4`(q+OqHo9ycAvBU4U_N2tN3ah@{lDLpO^`>sNeak z_BL^`z}DNi_8!PdhqpT8^-fU8<8>W+ zY9dTq!xO7P1uWW;78jTtms@8iHW&5byc}yok(<^S(g-lwxU}g9`v&JUVCGgYQmX=f zE6TUZrdH@=1w5dkDyWtWZxrtQ+(LKyAt82j<>)E){7Dg4Noo0f+=l0fxx#;N-=bi6?|b6M)&Mok z;%_ z#9s%kd`ZSov}}Nu99q* zOoIn<*J-uxBMhb8xG*k_dshWriW!4CG3~4Px-My_PdW`VBr_s(zKrfjc?}|D?IlPh zwgLA54&|aYRwwVzN zh&>koI}w|4R>-)3-feYjBrS+xnI?(Et@_K9Z3#BOfB19YmvMIx!)d z=I?dw?Pp?p^nyMP=0fB%S#cO~hRs9}4`!d>b`O-S#-ho+PzP{Gn&@@-;p2kkV>9(b z04`9=mP3(@pCC7Wa78vNQ9hSfm8Bva&}w0WhLOleKYwm}!T>?|Us{xGX$y}3UYLUe zOCJ;7Rzo{MDS8ygDnW2Z>E+7=>S>b`dK|U9o=qB{I^7Cc4Dfc$h?M!TpGS3oA?}vB zJf35r0#gqRXi{eh<)7+nX`T$mL3i@W>9?To45$tYdEf1siX~&sgemK>^CT7r4UtF4 zf^1Q$q!e+Vh%^TVeKso|tDi=;w&S)!bdhvz^XHd=o1KOgk?6I6bx(t$?fL>CZB_e83le!N?)$1(4DpoS9ApjI+I&L1pxD=tAMfTjNYxN`yh zvAOBn1%OW-9dp$2)G%pzI}{Uq*ekv=to{=sE2Zk8GCzNFTByo_F#C*m!>Zkoz=LFQ z{R1Di@`bsQDKP^m?76T%fg3Y7%yxOmdRTEZr8TAlH74l`(#y#(9LD(Tn{2aQ!drDJ zK6`c`z#SMG|ABicq?B`;q8MYUJeh{*cg9ls0?Vu7=bnt+IQ6IGB$bRqHCyuZo#&Ns zhMp~JafLWvVGjCVstou;kxU~f{bB&yEcA4rC{7m0` zu*yN(3VL;pIX7>YI%(N>JY2F{*23GL(|Ad@<)I0^5nG;o*0^jdCp7Tv-E-K_DzyYLGCx1N{MOR z+zewA(U}ama8GaVl7sidI0)*avlvtj1ihvui0pucpoA^e!em5EVM}geh9-BQB^&*# zLRfpMjMDVyDxH)>%+j+2$xrcb8Cv(Ii++z9f${>hB*za{v|mppEz=K~Dv$M)R3+?} z7d=FU_}6D8Baiz`?@S;G6n!#+q2@CF-7GyIb*Bw)=Nn?);jZzLPw5Jt>d^}|96v#O z*WJd>9wO+gQeANJGcffNE@yrkamoeqBYy`qsd-L}bf4VFzNcX)oVV;BBX|WXsO9%}of*Ths3+a#-^VPirXBP3YpHgfZ;ha>UhuNl>8cl-^7N`+ z$owW=QOu4Oz_{h}-dsc7@2B@3$Nr;tB-8zE z*)ZAU2a#HoFmEW6liIO0C4F0kCVYySFCsKt*hh|#|MKIHF_D84p+H*u=86%sN2eb_T zyqdg4_!BS=z*aOmHuZXi%L71*S!(R}G@7ED;!4RR4a+81*sz=tz7+J8xymC)k!18b z&H(Pjfr{z3yxAn$c4|vfm{{~R^l z=w7%~KRgsKpm=MLXE61KeAL6t?_2IEZqmd+wekDCIfq=lKlC#Wc{+fsUX?wB5Ccsj zmxOo2*=V3RCG!daoPIp!s~BWIKy^@ek{JyAzN-@7Kg*QwwX{j~Diu@N&Tu)7NbfhZ zw-eybNiVmJ_V^P}%u^S<-*m7e{9-Qf9zKgV_I?3uaMa~7r40Ay@@`ebv1)mC+VnNt zuWV)$hPG!I-@|jFc&IOq@Q=uN!sWp>E>S4sym1#W(l&3U(_2ETK|5`7Zy!!AMfdqN zZ_6d;APYAi!5=w6ao4K30EGg_#%p!!27)BBqJqd{m8}zL>Wrap-}$E?bP4MyWt~%O zo^I-)1E-Rf*&7pfxX201E$Q}1CWU2n@4R{?4b4}@i^%>g=^?EW=;2cZAv1L&PPMVG zX0n|f)UP}b>OFPXT5in>2`!InSG0N7y(1t2dG^(}TRV$I&3ucS3M1$#jTqr3uH}l) zm_QO^?Wzb!!@im$Fx5<+v1#~Y1>8QQ1# z@yOwT%|^D>!h&Dc>m$;XnKGZy8`Gd;5$+{yY&-ALrpvUHua*BE%s%)J4Q7XRven9#^F^#F3Q`rtfY7m{Ng>q#+1=kNEcj#pxfEQFbOkk0WBx zl8|GdAH>)eZ0&70v53zk*|ttfNW+P!ME3}>{7S;vn3c$=Y|w7vu_!=1Ha-s`#}CB* zaEysPT6*r0_3W1M_2~1F@ELUbc1rJApVzqQ8_-N1H2nz|DZ2)SNr3nzWV{NT+Q1f5 zDyENklG0D7N6gS{#|N3k?7Z<~P}N3*?`*4oIx2$iIuCfaS2ZZaRAVoL7F?@A%2|@Y z!gMCvJ&PFEq3V#1V|Zdt)=PikSeD_Ha$J7f17DDJosCwEv?=+j6`Y#G za3&pOn?hM1&-o$Go{OpJXY>|@5(O!V%NoQ{8KW^;&uDy^%}co=Zag(@;{y^C;? zWekr?{;kB>f(;MEKpC$7{<`>t@cU$XNnM3PVXYQK1Kt*z?T=y&o5&2r$+PJtgzGB= zYb!L-$s|6o`lDVHaJ_zbPgL@SSn{1B>#JsrVQ*;i>m??EHW`t5iL6QHs-VQytl$7> z4@eW4J(-rPhWSBiD4~UnPCrm#5;I~*3s)cV*OVB|c)JWKieHTm3)3}iG7B{x@%}j) ziQDrQBaS?#Tp0?7q%GmgI+X-X2;a<*gmk!w%w&rvTSNl?ESQU5J%6hKyOL{kmU6vP zZsR$kTH+sKx6u!p&WsO(Vi+PpHna+xPP*>jdbXs(|4o6~CZLg3EIBA>DkOCpEe0d0 zis{lPGQNy+;Ys@_z|`Nc*`{l0uf*NdYQMb+CV5$J6Q**dgJyO5qnQlq^-te4Dwg?_1lKBws-$}l zStUR9d^c4M4i29*!yS)*fVJ;qqU@+>ik{CkF09E34wjfjNe1)gs~sKNye!56XM8|&}7H3)pN-|u=JSecbnRpW9c|@GI)Ex)SY@s z2o*WfomK!6qOf(<%IFb`QIz6{9A}oLeLDOKv@;RSn4R@Um4DF}XH(2)mWdYk^%UIU zu%N3u=Ra{m;`r+KF8u;};NjnX%dyQk5GTqHfts04kr0SUEkq%zMsSVcZB=g;m)^De zN$r`r*j&gszTr6Ie3B~c0nL1)1Yay40x}({i!!@)nbaGT%YNt#!s@t~p&`yQ;qc)}AhFb+P1cu`G1qG*OH@cPuSqk?I4{Rb3PeAr?rWqM z%PPTRU1m_vTpUxH>dV7e{=rLkgImfX{xh;{j94V6o-9P?Y$$$DC^L3$Ffv0KQ0b09 zA-N$MM-`faw=v~YivVYTKHOj0N7JQq=cOQ69C@7@l7D(4=xh@~!4Uzj3Km%3B2RVk zq>*Un(LGi&7HmgkU_dqlalqVUhK~7(RVZ7BcCeZKt!ALQai+tKZ6B$QCnT)3hh2oJ z(4pj2q&psY$*FM|u#jr5>d2u8vcbuCefG?0WNaSiWsFi#37?tvh3zhsh$%-q%{sZ* z*^1P~*_L4J%mDzB$v93wFE6{CdkbDbt^zTt7vV>%Zi(mNI!fSBJYCTzkR*=9r z8OM`=-{N-UE&LN_32bM<{2g|ng&uG(lVPDsO1lTgM-)skoME6H0I2WY z%@(Ac(2qN3G(IIk>9|!$k8QY4hY>NOg}i2C(te8D;_GDMV(r^JI}?6~%9zLj7>+N7 zf4+_3Oupc(^D=_t{#M9cKkFJyoHv}Fh@gaky!I?9X{aWWVQ<0beui zeKsbdTYyVarO(FbLk`QSkzB{_S+jw6w(Yqk*@2zu;qExy)$4%KCKfKKc`1t599Pao z3*F;BN4arM-BvNH0+@BEMv!bk+n>%+UO<%z7ZPS{8|NAT%ju##Rx#-T-RpZk!rpwlXteMm847Fh9^ z+v)l3AW>8eb7V<;a^2iNF!GKZ?%00%=lnZnVL5UoL>G(VsSy>$9lz6UGWsz7?`11t!{6=pS8B);hbJ+azMlB@bmRuy?rc9=2Ua>$ zGH?7hBSv^q-zos$-bT7S<`(V;utQJx_8kpjKTgd#@>@0>@w{CaKuBmK;Iz!ktgPC= zvnhBt1wup@rj zAhOV>P;v8XKIk_0&v|4>qD$PsajcVne~uBzkhyMB&hEl^Ol-qnOmjyN1Y>*Cu|uj8 z`qJ)knnB}`Ht#kgKU{CZ>je|M1mj4w{za8*6e`i0x*0c0HL<)FJz5vzzT445Y^qF( zWQVhNv0m96!&O0uDanSCh}k$cnQ zFKLV1wG5*AK?vB{lm@TyVQk8G2Tuo2&Sa#D7``_7pFMGCaUv_#xJABU?%}E19Jj=l zsBDPhlJy8$}ZeuNtB zX%FhfyBHjUcF};`sdP@^8Ezk9Qb;2*@17bg1@sutTCP(pb|N)bnEhT?RHBVPBSoya z=#%VrqdEe(6%&XB?_3-U1UmkSOh6N^-J96e3f{awN9% zm+}b-xX;`(lv1}YrxG9S$yq0RBTk-N#BS{x+0L^pb|HCff>FjFcGba$>l&O7AHWv~ zkOv5JmC3a233g{m6}~ug8ZUB6jbo1e@kHqGq5i-%{W9=aTNW^3M44{0UVs66aPXCJ zHJ|aK>l`)F70!S`@}0z4P-%rV>| z>DeG4KlbI;+baW&)|JT-zO~_LpisPd)&Ln(_E2TxOF9dq9>HV5idJfZ%V#7S)fa4TE5;1 ziByZ-{<60b^uu&Dh+-Y%lt8l%4(axEF^|3*=_!DpMV(~*37%ejm+Res_kQ6RN4fqE z8cjPu>^TbzTHCG^n9L2VrgVz^lIdDPerWphNS1HA!Lls5VJWQ zZ>k_%5Bc2n`2>w|`-FEgM1y+QyQl}{oLCmo#0=p@WZ_N5;PR!U7){>U0o1*cHYju6 z{EE_eQ*y&IX)i6@2uY4#JwkZY(r-cA3K_705mI0k3A1{P^m?t~chz*xMxW_DC)5XrwU7SQ`5)v4BJDS^BVws+Lrho)VH`1$b%YzVrsc9pNsqke-dRCPVkVZf{1aYLZ-e-0s!WSm z?nkklz?^{BR98$u8|tE{rtpVac6?NHqS5I85d)i|oAb`h>ZBOL0Eig(~0R@r>)0K!6;>^P8*bh#yr3oy%fbB=$G<^-TJlU$&m}q7e9E{i55ATWe<##Hb5HqZRCWr32GT(k}OR& z8LUGq0q7;W3pw-+`7Bue^b0+exbF;kRT1IdwjCP`Hbb0Zc(4XKvv{tem*PCg=niOk z5404=VkspD>QZ7Mz2<~yM5j9Lo!{MZm%=y|-RwD>w*cCjxawluoqXupiF#75IQ~ik z(;15m#8)%+UfHY~aPuPXgVaEavHwJ(hT@Qe?TYs%t=@p|hGXJSt93$Zc-zWCxNTaB z$KrMj%fcetTmd2P8#pnEB5bNJnZ0V<2&i@ZFl=aR<^w(papZo$@qPQ0 zn1xL&Edv>ik3xu&;MAmp;b?GGk`svq367LI!^;G1oQqC14qr`)0}pp?^X=r29}Gwi zZeVfkF-@_hc#8H~yEg=bP7S!0X=V5occEg1^ni9hmAf%cRNR0@Ggg|S@TBs4D0yP| zlWkZH3k+$TRM6mAt%xgL^*!==1oiKv4=4~q38z*uGcu4CjI~H<;A|k!9@HzaZQ0>5 z6^wj{(S(iRyFHVP(8GCzpcqGYCh5ZT=w@UWxVj^E$H$D(SGu4iNGt`TcgeP*d}-X} zDw@G7+=+mt?&OVo?Ya;VMXM+|dC4Ee08`;7fV zaIF1m-Xq7!%bKyp2{6o*&#*a69WO&@(7`|}Dnv12Yr8RrfczS+)>}KT&ZUu1IerUs zkK^tKO8KVqp5Mp1W$IXrf{HBFvZ4OLZeL!f)e@H=aumypGIw{>v8gzwyVKJ2ee639scw157GqZJ= zkHl=748uXsdX=UaEd%MPfanosgr0d-5H4o-v@Tb9jmKyrZ=o?GJ zx)bhP#{uFN@_r-Iy$2 zdbKaj=Krl%l%DNBG@(p%|Dg!|vS$9J^ZYEo_Wv)#=I0Uq|7u0Q;{8gWez1R~uQ=I1 z$N6R7{L+E`tpxoV!xv=otNttf6~m{o^RITF+t~iO{I&jfyRW`q%YSJ`|Jm)iZp3;nzNJI24p_+=^mOn=4q z&*iUuGku-!&-Jg8nduA8_x1hvk-l2|#l`#2yZlGR=eWLFeU1Aceg2XEwa?F9jGv0v zuTFn8{%Xknd4Rtar(Z#QHUCHX_rd-?##i|j(pUMljg{qVxc?NUeoocjbzddZSG%ve zueSee|J9F)`SY~?Q&0O>{ihQ5tDg0Q@B+E`1H_uj&7sqOWQCJAEDVKc|1! z_wTx|xc*-LujSXv;;%Trrr_VCuVeqa`oE|B@A7LO|Ht(8vi>*Q|HVc9YZm@S$o+qD zQU71eqNa5VDF1_5RC|s1i;J4xd?VK+{_e2x4=!qSISyWWiI&$AH+SJdc1gXpV#8DZ z=cApjqC;u*?z{`aNYZxdfgo(A}+?yZ>-7U3R|&nx)(YAysrzi1hB8I2HrTa(%JGTC~6+8>h_flw3Q3|x4@cKB<;yco9Qmo^YV@$oX^KmqP_9{HN zKhJfc*sVikR#ItE=%`q&wAs+CoOCZjGirj-)bLqhtV(FbrD=lPJ7&iyVD_m5714y!g%pG7bFlt{%v3j6uM3$+97!f)0`uz|0E7Gx z9U>s6yCM6-;3Sb?hdxbbsxMHj#Sj@^3k_Yv=iP_yKTqxZ0Qx}iTTt{+da}ZitJ>KV z-j?8Zfghbz|6CF${6KoX;ds^*Y)#@fwiO+a2luuj(I$`~8Aqrf4mM4%sUZ!VOTGFg z4||gak&C?#Pt@OG`(1USy|j%7`6HY^S9}+?+lvuhrqPrkiutAj#6)IF_`9DzMoI2( zi#LnC#SVu;s-y zP9U%>JL>ZWD*l22djWd-=a6rP^b6%iBKy?r8T=;4O);6z5B=bbiR%5_=&zqv(dR!I z&<8Bky{xu*qo@bJcX-Kdje;KgO%%CqGfQ~A9&PQKG%Es*xnLX>E@68c0NOwDofagE zFWeQcGHn`0-hR$0V7`JDBHK6oo42(8ceALNx{8Pt|G&Yae!)Qh8yfW!DEb%h^gjfn z{~3)+&+v&9{ik4*;eQs4GW=J;=wEyP`$zbHLZkjqf&Y6vD*GoM_0zdcPxtvNl>L9l zqq6+(c+{`ef8kN-*%|+LJSsK)Cl*z~(a1^}{|l@7w`i1!>GKTycR;G(7X(x2D--_8 z#J{rtBMepUYpeWMrtp<1eq~Bu*?&Qx{slh$58SEYR}-VJ?B8Ka|0iJS|4bOKHo$c1Nx-U zRJP9gM>D|b zdlkShP7YPycZ#vZrvS-OR9z@rC!o{-o>gD%eZGPYd=X#d$v)iOmwF;a17Pd zWGJGu{~d8=^^B+ zFqLl-1l4eqH68(A?FV;a%EyDyyH3obkMQOPs@sRj_Ir!S#{|iH=K6t8L6UPrjRH&E zhpDg6C}!tC7QGXI=O~sh;bw)Nfypt@qs6B0=m)Qgf=5jHgU{aUMN6IE$Kdma{X6Gt zG=e^yG9DCtl^wmqTMvwVBA6Q>wIaXu{yc!BLQ8bd%S!p4E}&x-FgpOR(EE!g?{8JL z57?Pnu#^>!*F3NVUi_?pzK(^36>a9#Zay|=~)yoK24^qCJ{$QM?`m5zCdd}|tfT3;SYMoLQT z&7GIbOrJ8Ck4TZ>uGOjS3Z7|OMyJY0)3y(~SJ1SUmPSvq_XnoO!q?1`4q8BjLr^AB zRV{labch=9iDBE4t~VAYf})Lu9x!&4b4B?IwO@FOdy6=~aGQEmtgn@E##ib3J__bM zu4a!O+PU7k#NeZFq+KX38KMU>{mWVLyyBbFL$>e(`wBtWcceJyAI$mfuqC3??q<5q z15=xSTw%jpDRPEDug(!^Aq0tfBcSaCAWQhVscQi_gR28$h)8!GVcsq541lNlO>Jd& zons%adkF-ug1AxuDy;e@C{!D=+8`&txZm(j(&BQRhh_}6|HAB8BlpJ{oWUV6_u9`` z3NT%fJQpZ{>7CI$Q7OY#^(qfOFCz&g13(novPt3c?wV#sx!TXPshGNd0rAeRM#{6K zAG9!Xc0UApE7lPgzK=J~-W%jfzG-HDE4M1{F_pUftoGpe>(CcB}1kUxy{=iv)<>Y&Q9Ds#GWpZFVivla$wuW&?)>?vgLLQz^|T*C@MBE?^UsZO0aN(tvS&ezB)` zP0Kma&oY_T=~d?QluHTg(2wE`vtcyr*+20SXan=sK0Qg_GtyKAh{*&!wfA2HXV z#9Js%C%>$=&851K@#$}q#3C3eNF8YdCiBwPqvKxBY@nor z2ls_NDQVOn*ao&`TS$B2yBDl04tV-N2Mt$Io2a-@#Obv6SGqW%|S z?;K{yv#slvU0pW1Y};m+ZL7<+ZFkwWZQHhOb{VJow^pCM_C5RDd;iFc9KjKhGsk?M zIrDqN^UZ1+VQ@%iQ~*Xt3aAwj&}Yq2Cpc-Xfs9`(0ZMfb1HbRmpQk_-OB{Nzw1 ze+l;8a^*~))Kf>goA^TbZd-3KMu@7@RfDyC3f2?=;cQv1Ui-Rhkn*;9%j=^uIEcry zi`S!QW+vJ8rn~x?yYux&L;0zB(d5q%iz$7eS@D2^>0KcRFd?+q+61XxNmK) zRL&`UsiZo?ynP@ZE9S_1HS1h_^hzI@t#x(Ea+hW(pU+%w<20Fg&wBAM&{aiS9#Xoq z!l1K81)yFwsvq0x?{&l(KfI6o^~Iikz?!_c4N?tYgbmoSv4$d(gYH$WCP+%8 z=(^(y(xqs8c6_5$vmc%68z&cVwsBv%brg6OlHFu%P`BXnNYpTrf)>7-`RHUKw3F;) zfnHYr`Ph(yKDJB6>(v&)D$z!m&nRn^?6G>ekqrU0CHruC;C>|YlRwM;ctnIQN^no9 z0Vn=Omni$8P1(ol^v1K`nq*oF_nwFjiy6O%sObuU6O&1$4WAb_4)aHyO>nYDqee?s zmCXFRag@;Sq6onz2n8PbMqsb4v zBibe1!K1nPONY2*$iT8C&{S=SMfzsUW7?(soRA?s*7ZFBu*xjiSXJfcZ&*qcR)4R= zE?&Q#YciOZAqv~|Y+*0;mBPsOYht12C@whOY?JT2D%S{R5&C7OWt7>vcDhFZrzPo= z-;PH2pmY<09(z8@{>njOM%DEo=Yqgh<)z8Y_9u~&oki*TuI~z10Nd?WCHywKah;+l zTzlY`+Qc$hmJl17fa0MiN|8NUFNC%~yk}piA&HKI;on37PX7I7kl4^6iko{h23 z7u9Mt7gn#d=V?qM%wQ9LTG(26Y8YULjSXt59V(LT5%;vYq|QzjTMhCq*c?BMZ_X@7 zIAGn`8G}RbMa;Ol6lj(77$e~ldq7>U=2h}5u(hDojn1CS0&yrNm&<5OMFl%!0f81g zs~hp&{GKGYI81a^ze4J^PaMv_&q_5W+d$@RkjQEhpLzXWpQ;4Jl7p&P_p>4XoL;I# z?IWLAl%{KAR+ycXj<2Wy6jG1(f&JB;ewb8f0LuY)p^?B;3|+#!ANe=o4n}3)esDsG zUDOOUrntQa)~?J)?%ENJF~B@oQsFNpN_g}uhz;jZQn%HlHk^;ZBOa5F*XG>mn{Xt( z_VGw_YpJlk#SoeO8;_Vs zR}*JyM)m-DPXt_9Yc zoc%$K9c(q*h)jt|y7Y^}Lg4wczi;LcP-h5q0s4Z-&93%w`OeGa=~N5sniCqwN|^f# z`_H64?QW7~u%voP9>Gf z53O{tYm>ptPKf;$Pk}gX$1vmitoiS~YuXP?~pcN7wLHv>?@U5CDvsb0QzHbFnDSp}YUyUj;3_(vAshI? zakmaNuT08x^y7M1;i*-E-QNB?FkMQ=F`rFG`>O_Fx~9{09D@xFZF~C{Hts%El(9h z(hKs3@2Lx@lCqn|tGjH6PJ__cUTNn8K@uo_hw5IW<9fqm29|x(#yTs{ksbNQWVcfb z8k*ynK9nr1bbY02zReof6=nD;DECy8BOm!fh6nFfC9VO?4Da}Ev+ zFi(K2F^g!N{(YSeMu&0Fitp{$S;*6X&L6ZP^zfC^o7M9)53iJE*L zH)(d-DZm=6Cng=>bbSZY9&qYwcMBhE0H(}Iza0xKxM`9uIyC0^4n#Ze#X*tX? z!t)?ea%e$aANWZ!T0wFH{g*llFruiP9lE>W5C;@;O>New$^d z-(R;O;!@dGn1vXr6^Dcu#e#*YiZn!Y=WMiT7RlIkJ`MbKgF91HI)ZSz5_~+Wu0hb2 zG5YQSED|xt(}q!mbLvB6Jv;IN;+x~*X!R+`wawVzwZ^r?aB^2=O05K@{~*mTg5YO~ zlxM{HnaQ%Nv9mU;3|-puor66R)VRoElM^~VWs;{KFdcpl)6JpisvI-m+Ty=puMY%HQCUJ2Y+!@F=^a`vcI#O00BDutt zA5LLB>uLxI&BdP1W(Ph)l%ZI~sj%dx;#Mr&ESt)F%jiuK7M^)4Gje2}L&5Zodg5$l z+HyI^I~ftZl39H&+BRiu(Mc>x`tRV$_fUrV zY(BITg*WKmcoQOp=q!|EY1EUZCt9mYPSdX2(x&DQ_Fj6;TjdV{H(8<2j9mRLbO?#q z&3spH|bf!PsKP>7(+I{*kAm$#diX85U3^Q=y=giWuk_hRZ zW*+Wni9ZM>LmQG2hTsm*q>AcP-o+6HIMDoVu4E}_%{?lEP?K$^3Px*U+EgQ`cXb901^UlEo!HE3E$11qcVo!>lO& zRs#sd%G)aHO%XC19UvzaNpglGSX!VZZu>w<&Xnf7JHJ{5P7$ffv^90r_v?Dg6JFrn z8B6BX_i9dRu!3Cbx zbKWkR+sqghl5(HL*Y}^Q>_CQjpp{sJs@MW zVY`nV1LR|H6Z$V{9vOY{RG2;8w@UJNB+P-C#IJ1~VC5I8V#$+pO4H##vWjpa1}dZN zw|gFX9O$n)#sx~Cuv6QN$-_(;M#FtfB!~B&qvVK)^=!r$G-n<pxJ(Vd@OJqqQH4p5j zU-R6eD@K=PLvdOWXy5|B?k`t&Rg`H~izO zu#?jcpE=RvTkdr%)m4^4_MRDsCx19X{<^v5ftkdPzGN4qlM^I~3Vu8nl|sMVJF=MQ zX`99ResPN$-SJtrc?#zWY6dDgLx|ot(WH4^^b?V?T>_iu3g z1Y)HKN>Ie3LrdJzen3GSE#yf*v;vf-bUefT!IidVbCZccg{O3Oa6uItV7Ng=k05Q! zqc(#|=b_bmT|IU?%$!>rm%R8*@Pa3Wcvo6q8Af&(YZ6GIwsyW}$yfaZ zE=!C+D3*#Bo9EGA-v1Q8-uvBH>yj)s%XIPyQF=#}E((EffycR@e3l?_1HH*%_@MUw z4(+B1pU!P~JMQ&9>>Mm1R6>81NVtl=6q2AGv5)5lMv?zGenru669Xe84#k z0QjCne21O$VQ`FjJ&S*+eGl3oM$MM+t|C%AT_;ZUcXuRp#1)H4bh@IaXfTmjxUVeG zh|rvz9TNjv7lW+i1I@@%f?S9VYWp*IjK6t={CwVeE1 zMrImaKX9WH#THj`7t$@Kt3kQ;@n{B#&UyRDp%$W7)l0}SE;4P!YT%Y3u?<>?;2B{& zN%+*eq0026Atr4Yr1NLkh=}6$sT)Q1>*tVKy~AsVmDxe;1eYHg^i?q?{h_fX1J+Qf z+eaYt*tugFNzx^Xf`U~Y&436lambT-a*WYBMA!{AEx&b z1_$cbwfz!;@=8dd%rrM`E>AA{+53^DtXYZIp<;nyf%v?~P2+Jfzc?-{qkd;L^?;r2 z_XbebtCpRs{19>dYKobpYaJJgh>jVlBYqO#Jr@f{k6c~^dyaziAh{07)UoV&tI!6t z7VRT96~bcj^w~|XPrg#W^lqB9YBec)&!uq;48uATJY!@+7Ek^2(|v%|zCBE4*Q!X4 zg^!lq-TIQ!68tmJ{1{7QIvG^(k{CpReyZVC4#-@rm<(5hCd4!>#dUTi!}k`;ds&SuJyvHSgJJrSDHOM-u}X+!i}vtoM!%pcZ{Z(3X(rK*=01@=2oxN zm?SHv@h>}2E!!%zv!Z0}+ZpS506V4`#i4=S2~2NQvxU~^uZ&`j3`2VM7O51X2cJ^A^%Kf8hL?$?i__G-Pc#f59cmfQSKa+deA}@hCwDNiQm&eLtIA%5ckySQu6cN|+9c3JevkyP(7XnJ1ewkftSf zqO%E4%4-l>U@p4cMSGMB+9M>*lD z&}AZoCu>Urstze>2zo#RlyiBfnO@h4Jw6fT87n&!z*6*f)P^Q_@FJK>QO!Q9@F%J> z7jH&(9u%c7n*PajJw^Qc+pi>{mVwH1g)Zh@nYU>&Fz12N3A)X^J?R?KoXq)GXe~gx z#u8ZJ2~+w`gc5Z=BTw0*_X-%}RfAtgub#cp91k_%0*hb?_%@bWGgmqH=J))fijbmQ z1d^{q&zJyqu`Mez1XVC;r^s81{O9WpE$V@d_lCtM)uq(;FF6m}&`+<1dT4Jkf+;fP z4_&nSjlV8f)$kuQI5_OHKkECJzZdiI$;1ed6qfv2kx2s`HwYP%BG}$Fcam@s9$(sy z`T5SrO!B%j!CTCjWCk#2qtdy7jDRn8z)IG!IuoP0!`r-iX;N>5Gzh&BldRB_|4aII zNK^7i;xjKETd%A~WEn1jPIap~v;%Xh^~j6^>O8fK@E-SlKr7Vz>xF!mnWDCAuT@T` z>i7xYI6^18$2Oa-rJyDzKb(3E81^whd$6v>ovUaI+iJ4XJ3}bW-^|>KH##Cf*5uSL zZ7Ob4$ktZPqF_YI_|Jr*_z8405#|737&OP=Hbm51W0VARKjS*cihsvRCCZ^OzRc|w zgN{(q7P3WVaQq@~VMoi6p<^;rPgUKs^eu)}BTkDbFW1MYsAW|ARZe`=DQSLP@8-N9 zEV_*_n>MW1<pzF_Fm5#y!rNh4 zLLDvU)2DfghS153z&4UYNAQMF&fUD;20~(8M4cj#HLO#JAI2^J;!d=Q9!$Cf)mPSl zINYtge}(F%-m*-C`hH7oz0F;xQ3o3V4;dqqi5*0=w%#4=o0fC#L=EnC3f4f4iDsR? z2PL;Iqi?`)?48NBQtZJ=k_`F`v1O)mur0||YTHIK5+xYk%6e{oU1go|;@4Aw<1wcE zgjvOOvS&o^ps}^MUUG4y;w0@9z=LHB3g|7?SVjB+z?q`0cI^W@mTXdG4&yks+7A_n zRg7^Zt|{S$YIotH$T2J{dUvofC570+*9*Q-hkk|2x*o2k(?2j_rOSGV5@HB7aEMJc zOpeY)xaZ{=1zkMb?>IszTn#h3#s30&I3K$W4Aniy=47Q3}r@tz2&Z3lwWHn_0XtV8@GW-9n6LEK=OHsd#T`tiws?63oegy7inLP2 zQ7)_1uXIN9E96l$w(r?2iMl);AHB^8q$Vi3bG&H3m+_51p0{Ywrq3G0#EadY&>`zd zH6MV9=SI>(1gU_*&3IAWQ&kK(7a?Hhy<}3S1ro( z!6+DLznb&c_B$r_o;n6@%uRnCgk4~@8dC2a$KJCV>$z{H702hN6T&cqTEfc&4+~XYpF!d+H%}EM#96k_h{wd3f zIFe+>WzNMG-gcb2D#XdokEMdaL+9sVY7*!3L6Jv%{5q@<>y#0U8Yk+jVXgRDttXra zt2sw--P=HiyU}s-)1@#rv8@esulLbK7RKKqL0fALRD_x$%KQdnvy+)?zH*CtyezJV zEr-{;N%?rMyA?_7g+d!>>2c1ybb2J+>U%ZUDMZ7P=L_5!jP(cm%IL1VB=V_8)1#NBRpN*TSkWb@s zZ^e%$-~(@*zinzabz!}5J`PPvf=Qabd(p;r>nus7Qj0=gqtE?8(z<^s5%pOIe|ING>A>Q zQ1FeW{EbBS1t>;H=QDNf9g%%)67_nuzomc6(_jWCRF?JQ6m|;sDoIl^pMerR%R@)c zQ;umfEQfc^-2izfPindz%@E9}c}&-$^ymk^S$uq{$nTR^&$t@^-Pss{oD~lH`c}1pZb7{`n+QHX+cJPcxic zim4E8?y&ktz*aC()eCNZsMVKY^n{OfIb)#?;}9*Pab9CYRrat*{dlGLZ+BI#=Q&`R zz-Jf&OdM@KzXTzO3~TP!$%bsz_i_)ofpjG8D>BDuF0`K$UF}T!60^%tY_Af z`Ha#j7cuT?(}ko0+@U@a07J_5$w6kiy*yGw5_18ggPI z+9LP%Dala7d%F?3kIHT`ro{@m&47HUJ zGnd*0b|+g>ThwjBoxS>u1l)a?=KX|Wf&e*;@{B2s*|BAB_F{Quw%H5 zH$y2wzGzp?prE9`nAY4!nFMV(xfSiW?@tGA=(!WwRv<{y9A9drVJA~4SbXv%6j7%ECVw41T9MV&lL$%Q7`fM*Q9fxl@aQ1sa?vz^Uiib12Cz(;Ud zNeG(Of=cV^xJb@QfCqFGI?3RPyMQ-QMyv{dEX3}mgt{zT<4Us-7OdDg<8Dhk?ZjJP zpfX4)siWy7_cUsojqvw9Nx2ePjPuo>{nq5yyueSotE+o@6BoalEilQlhjoGJ51g`X zAMLQjye_68?ck-Lt{XBm0BBRz1xdt9ZX?=g3G;CKj%gT63atv*9eW+OAzwCrQbZ`a zW92@zA3}X}2qGnsGbsy)yrff|ChcDQ^%~DFyd|3ue%k(ec$%jTJ^Zn(uxL92d*s5{ zv#^2_u=^kch%75Ns&eJ$aDx$x;56Bd2723Mo%WaynwD!}xV7l7kfxu-n*jjVUgEvH zSzAR&l@sr8tZ>c8!kqKOFR>N#3%q9(2eiN)#p*6scVCz9rQ@C{DuBkoAS4gCImp_p zFFdRr6KcaZuFG44 zN;Wk#mrJEGis5`}FGKm9yV-=CWLQJv6 zr0qcxk39WX4_}VPvaMq8#4=C_!mfY{Rnlstrx1<-L1Z0rNOjEw?^Hp2-s%Y@nX%jm zENT@<04}eRh-u<(PSGH8wcOXt!4hhH>5|}S zkcss3r}=wQ(G)SAmxQ9OHRWr7Z#yb}Sk4|JjK{b(K<@zeQgatLXNWtfw_AqERIv~( z1zT=O>$!FY)Ui6Z+x#Z#&&K3o6GDXYc}C#xdAcAQH`-$ivRbLpgMwU)7@BRCA*G3g9U!pT zB;ml9jNUdaWzYxd@N2+IXGp(B3!AK!r0*~m)mgu}z^^n#lB!5NHQ3hY!*@k2O>{?) zHfC8c=38KNE^zEw5*LZpn1)O>t1U%=h2YSZc3{R%jpPQ>uyHtJHyxvye$hJ8{P%KJTS^kc~jq@OHWw)29fR%9;vj?#r zW2U&lF8y~kdNZ(eTH85gUbqP8V&wg>>)#0!nE^>aePWvqcLN)W*bgO_L#t^zrWssr zUP-R_7?0+YP)hR8#QoT3byOnID1i{J!V}Cyc@p<)$<=7iOiaZFT`gm3WHzcd%i3Ph zrumC_prI74gf2qirJWIkS1OZ=eo4Er-!FYpe}5|zdhQYuRc6~pK=(xw`DrD8VjK3< znjh}ky)C~!dz-^3{{{%RwwNPOL(IhDK-Swy2W}Y|niMrmpGsWpCe)i_E4~~lh&sfN z25hCiayD(H(bdC9Y^~8rYJQiZjWYH9z4}Vgphcr&H(39$ee;8h*>=gG)jclXkRI34G!f`9oM~p~zTlAwYsPWIH^ z`Nr2@RE;Ae#F{;RZr=fvO0e&okV^yPDFP*KpbN#D#W5a*U=oswJl48UMQ~OvwWcTL zvY$}&$pVNU!E!#VHy%0#Nu^RZ=jd4h2pW z!&|wgy*``B?|6F?5*Bx*d>&chHm3iB*GItj#kdzokKnvtg%8$wWA*+PVkCt%25dU9e43+mj=vqz4LGjs zu6D?;tPhTLvnr!&ikf4@N~$VL=f(5jB3LUO;j+A~z8U|%C*)o5)Vg(;-kM+M5=vx~ zfAeeZO8->5_^k+{+mnBQGKD@;9?*Uj@N+siZ8dbl~Y6JPd0ycXql%Zf}GpiXmh z{s5gnw;PK?e(9X#q_O<|W8i~}0l&hhC3vm+raCPao@~tQx-DWjdk$8!?d)zasI>(xufT1y{vnW3&c|Sq( z2=nWCgvlh+X2W#FJ65!2Z`ZJ}C?F!ezCvDRb3f4jmKqeB++hh7{eA1zQK3%5AotV8 z<%^UkYf(;OA546S`LPl6M+F&T(rM`&|Tf!$m2tI(=1-ht6FWlhMhuUVg--9S^L!Wkh2xDzg8N; z@+jMhfmVZ)EugHw1sPC)g|-B3TD>#K%H{=FUdvp|yAbu*7Y4hQN1~5r!FZ1eIV&7J z2wUIw%;7~tp92Td3@Ok+F6??|jBK8Z(qK$DpKd+JWxg4VTn6k&RfEwZ?|T|f93H+V z^l*@K(J$7sYdzway)u_{p`ZIyO#tAq$?2mOD6a^kuO|9|Kj9#I=}4tvDU(HLd8}xN z!=i&gBL~@`*>irBVv=a~QvOCgk*Z{H{uX4Iq>)Wdr7_uo|rPvPF_##*^S9lQr`oa)mYFN`WA%t#4viUN&$)gqO z(c+3!be7gL)bi@kcnl-D5KZalR&?=E=wK|}q-eLdf%7}4%WjVhQI0zuJA$K8k~R@p zMlV8QKy5eGInOzFxdb3d2DDaWXS=vtq(#pL#g>}bw=Ob#hV?_ z8=C^aj9V+T_ljVFNGijZdNmE&WF)7s_CU}};IW>Wxi3^(!etn#&uX^owH9@}9BZoA zZR}6{(jt%>FUHlN<*I$5x?2M(`97czVobgF*?R*H8+-ZHj@{lXNnpi4Pz*)vR+J${%Xi57Y7px zBk@?dbkV;>AmMEEtqOYHtMMF@bcj-$9HtydPEBe1Cs4{!0n~AdyS}y^dCp~&bVw9D zLJ%@4hJ32JMt1HDw|;CQ(F%KZuywPL7fC6ekV>vW8=xO8G6jXct$asDjC-@J?_92m z@mwpt{08ZdLJ4Ym#Gp)ThQ0A(g0*#waap82cb_N)wh0<2ckLF|YS-Yu!udWt!(m5P z)AdR3atO9QErk(C+odXnH37I6b||6LhVV0nk30ml-3mRZ%jR*+*4JNYP#drJS@D!E zG;t<_>!4=-X1Sly9~jzL&d7wU+?`gbY6}Eh#|@s%L5t4VfKc2fToK9hadWZ_DSb8` zKVy3*9grvYB?lKb8svy(?uUf=1{@oYL(a%msZE5(G-`on77$T-`qi?h3U*;l5dQE! zB*;r|`C7O(n1kJ%cT`KtRpn&cjxox*u*l4zE&VS~>tsvUru+DEi{!A88e;fmZ%CsM zWDA&6>_x3ZH+gVPYMQ-hJ%1lDjUrmT+_33YU$a<=_HX@I*R<~M2^ zLo<-}F`~C%<}SC9Vuk4uBKFY~;-oYxhu)j$rg>O zVN}Z4Vv=XNLYq3G^OM>2F>&8rt~fPJr-$5|1`6RrFO$0jy`NE^Ojo&uJNEF8KP1#< ztvj3-vIJ6Gojdvt4b@JOJY~9#7lU^rjAA>IIM;EZ)s#SBKE+m{mu=&dK(vs9vDN)4 zp0;W7<70ckPkeyy=U|k$pS z_nMYNx8M#tvu@HzD(m-Jp84K5B|IVXXHR_ROkM8$huS(8adgV2k}rejnc%nGrp?s* zdQrg?y&1n9I#riag?vET$7{QP7_ag-g>5V&gnrN8o=DsC3S&!JO|;{LHmxSWF*a^xF~hN<&l4YzbfsNL9v9 zz`T!$Qn9`HX*u?#K_b?W%y!neyOL;XoBX7CfWa3tdZt`6KYr%{h)SxEjMgIAIj}tg~ zv|2+boZSPpDvR%)a+!Wc&<+f0^QJZ>*YhQC-^w=O_{qM-cUQ{{rcyoYy1XUVlssao zL?R8mF4-2RKbK9~;b!sa>0p!k881$>Z0=i{I>7(T%QE{0sy2{;HZfKe+iMX3RIdhC z!Lc6D3A)rQCvMzNxGjg}y9xMQ)&)WE&=9o5g12>}n*ig18kgY))AeYDA0g>w)sI~J zS`i)7?kB=ign_2Iiu^sSltKr7Jy+1YYZi%wi64lr%Qr+bSlnNNg8l-XoJolvp(%CcJ+N=2UO$GRR+0; zINbe`+oF2uIe9pkViqs&@`80b>V`bdf0l5h#&j@Mb#ZV-FhRIVyhDxysfg0g*eje( zt1o6MK&NUy1%s1-i)dz-UP%qbcM`sT0s@0DlK&6V+&_BQf72%ZEo1*noA@K2|099_ zE5-j8D1e3akE-!c*yb6KmGqt z68rxt@2{_a`uKbNsmJ~`?q9sXAKCvORKQ>RFE-#$+dnvfKjnYs_s75gtoygkKjVIt z|F!?A_k}O`2RHEVb@^xAzVHT2U*r6#|EKT2{{9)`&-I`5Kj-%6`p@w<|4;va+x$)c zS@W-c|F-+<@1OL~@n6`1KO*M8n&tmD>;Nkr-G5V*S}OKf<ec$n*Bep15#~TDo1M#DkM<_vDSbtp3`nwOY0K1gV27s*lsW4YCmKAMSwC5}F!_wT$QI zAs+uf+<`R(*3?HYXB)E@%gX4-sjChJ{Hn;~lGat6SFM8}t=Ch(z(t7$vN5CW)t4-1 zlEk>AcXrksP41z-@$onx=G{17SAL%w@(~73A^_uo`9vr%NC@x*qp6N?zvu(UD&wH4NU}ao)EJ;Ymp~6u^~}X+ zW3?*Lvy%Y~lL#X8(H)!!7EMe_dE0zF0J^?~BWDIM{1EWg7ENOAH^(ppb9SI|++I@N zMcGx{g}M2mAF{~KX)d5zfiZ=@K-U#Y*Q)nHr~iiJ?DzY8ZuN}uMg;~_ihvX1aYB=A zCwGKxal8vLon06$10+nZJj$-}_u6R9)*tS`rZ4Xdq5%)3Eg0;g%@n-XvaH>9@Ii_s z6zt-6sGoH;>FDF817qn1JdqrJU}?70XEl^PIX$;Mbo7q_UbV^QOALf}iP%%wjK4L9 zW!^h)dL#=HZKpuJ<);F9N{)J4q@ZtLHOcJ<*pHrMpfuI+J8v*h;NFi;Wxn%hYSMmx zIrz*W;7aoB?37k2=Q&Y}N*2yTA@)8B_cK+oPt#M;UM zk5Z`1pRo7>|gS6y?-0@^k3G$Ne7I7@GoCg z|4!yB2K_5T(OSvM^lQdOc#QwTCj6KG|8)O<`u~SFU}tLMVEu20{FBtSpR-9sajrXKM2EUzU-bsr5ft z16xOHhcDyb`TqqK_@|oVpO%hRhDLVw2G(}}5D=Wn|8+yZ;_=tw|KR}1|Hp^tpNzkY z|1Tl{Jsv$f!~f<3FnsYL7}>ri|Nj>kK>zi1@!x`bhBK(5=2#;&rl!C7-sPoL&&JoL z0P7pv%^(nn>so%CAf&1`q+&LYQ|w2$EsyVyo8P_f(KndO4mBIh7Bt)1$i;psVhD|& zOZmh-;Guz`iWqDAzzomh?ps)!pX;9+4NPVO)!Q^MI{~#<)Yx<@$QG-$ECYRVqH+a- zO^>XM;`YCy>5N1EJilcjv^u{fQLqOE+K=Q0q&f#crO{TF-fRM-WQ3l|5^^Wi_GwQj zDWIQ5%{DVV-vhw7=^#W_}QAWg_H2gCy zE^>#J{3z?>QzL*k3MjkL{=*aR-0ak15Q53RK<|w;H9dhGejkPjxY=*qM;bs0gWczO ztpmW~GufLEINt{^drpIV0)QmbXNyMamKtZ<`qiG^zJ?ySm|9B{+a)F0YcA!pvH#d& z5(21|Zl*m!708gp*xCdfq=l`ojt+RdTv7{wgb$h$o@>rJXP#@z&JZveaN@K3c92F| z85cmySj5;E72wXgs!Qa>x`3_@e8ufUO2vhe#z$OAOIblF?Xt^uM#oT2&K=H&mC?sH zFdVwOXB>Fjcn{#|!(Eoxpv;?i;H^m(%+Lz%iP4o&C72g(`yu!SV7?108tnQi2l-rU z(+nc}<8|>qnLSx*Yg6?D3+r9_DQo>M?IDZh$)uat^1jH?OXqcr`!nyB*W!<{_g3WY z6;F5CadFr6e8@WKtr)QTS(5b8^?LMKW%4n^^SssOFFw1l_~48t|Jmo|!}`e%_+ixj zc^{ZxlaWwy0=reNuJqENJqm`?2txKp_H z9jlX>8R_`@wUqfM+%S}`-4k?emn}|2h7X=bcFWjS9o1**d!M1VR9D6z;IX06XY}}H zr*m@p2Ov9u3-#>Xn($^#+C$DI0%M=d59pRT;aNon^Ab_xNui z0>&0l(B|i^#8^y-(KA6=>#gRe^zRk3+>KG*`Pq?H0^dV<+UUJ$h&fhR`#C>A=%As5 z`})GJs&e-)S$gj*qmAG(Lgn7L6cr1LU@E_B{lJKbAC_X#ZMt5FCr8hx;XAH3o(JeWWC|*g$uklzz!`ghnPi7Y`cO7 z+fPXhdNNY)q5kf8W1E=X_4Vo=HTZ&IyisA&>8^lvxQqn{tY$5UVAD58a=;8ERk4>I z&tXp|YT6i;DxuZ6lbHO-*mwX=yB@F<)8x@`h&ObFR^Ru1l0xLrMt%K^SE?O~X7a75 z+eoqSPN17SWM_9d?grskF`F*o8+qe6t5stj8Qc^1y~r##7mL%BI}Z>6$U8-D~Di<}hyqWX1WAfRw!c=Dz)4lE^vQQ%ut{j8p|dS`v;fMDv#JhPF`T zaPU&(5?JhS+UWjzc86yj0b<3GKf=ankp`4|n|*O4z#cVAg!OH!&z*m!|*p*Ed5$mNxb2(O9AH0RL?l?CRWeaqH*U* zj!H~=ALiDO%-V1 zJSAK@)Qj^wa?Xg*?+B;7bONjJ)7K0CVd#Y>LeR*aoA(m)^easxR?`tZtGHT(4d2t+ z*uF)ITNl)A7UDsZ`y{uD5A&-$kH9qIw{$p97>1~K9`?~gjkZCt{L^7PCPYh{I3)lz zE(RpBvEgyFtSD?wjdM_1fgb}0x1DGMzpN>LhgAp9K5JjZ<_eKzKTj5fkWoX=z9z-D zln>yOG*_xoFOfWxYJ9{+f6M(8&Y>i~@J1qMmTD{mS)uT!NrFOuHbiCq73A+0#9F{# z?vQ+C+-)Uke>5Y1k5WhGaHYk$R!$`3>Ra&}({$`7Lp^w!E^~lTK<1`tla;~hPNX>1 z`=f>0^G5u-?BPWN>L%#?LnV^=Mb&S;3^fl1&#nE?C8fFs&#AR!?WXm_nI+&U{G^vg z9LErE{t_y|IHAREM9PyD#U7k;ew?mr$ptUwxgFBQxI67$LbkpR@P?po4mh|&3npz{ z=r)+v&e=@mHTW~JCvt)X%yTP-{*xmU({=GbgQ_AFf>-9zfu7l8>uzr6S%Xwcf_P0O z!)`SXWHekSBkd)eO2G(tZiml@iy&{&evlJ-2j~&iP_)fY)E5S{D+@=or`r|PAC{>6 zLV@CoW%T}x1UHq#pd}*G4ymFGp-V775jI=3MSm-_`Lm55KP9^n<{H^`v(bYz*FCOD)-?aJ&HXP5W48wx5r1- z$7HV2{b)D`@-7m51`8Xg858(u`0^!SZ7MO)9oe-=L}!BA0)vItkuE72(5$8Udhter z>B7srN~zV=hV&Y;?+1KFTO4v~Dm`QJ_~5}bR#g!eS_B2k%U%(7i*Fnjb3~$8;YB|r z=JC-yZdak4biHQj?BSM~g&I=^sB2dB$U=K`K__xcs6Gj+w`Z5`?muF8xyCZ41uu@8x#=5A_PU$0RyJMkVeJsZo%&E z?iRZPyTt+%6ZP|ZpL6eEL%>PAzW@CG(7StgcX-Y@&v`nkoU1y=``ZKe@n8F%TNjz^ z|E2e?G2Uk_>qj)WSZ8LJB+c;!=O(Wn>0s{s$vwq%VranrD@R0Q2i&o4yg#jX#gw)t zlIur|ZhTv9)MswI*Z%wGC9YvTUEW^auelyGXXeAImxE&WcTZ0UFXP%_tNPqlvu`u} zmOLCUFQ2xh%jp(--TMa*7tpFHFl-B2_xZpE^sF(PkoNeRzyHRlbspVYx|?=?ZGI@A5*-Ji~TG^U%~x>Bz7 zh4U89ZX8z6?Muv1ZlbT_$A$ho_)RL8eIEJy%HT5b0;A1kJ+^j=54~mSzpuetOJRuF zf)}fo4UcVN6D|w8oLoI6?RAH`L(JQlO*z~3_&(3R3a2e^A_kSaaKUb(-QEG=<4jTiBkt(kAh@>B6LjUYEztO9>r2=HsCOA(dOMI-`hPV?1Ja7l%^* zrD{LFyWmc=a@F#fz4g;xPbxlUq-!Os;(MPz{CxAqiq9YBy2x4tZHe2yY~IZk2YZ$( z|Dbh3ui!(zylH*9Rk$`%-{fJI@|HRlAjg>(i!+ zNeN32ok*CoM;3Ht_>n!KquM&3A9wCf^|Jx@uk!{l^iTYA{8 zo_l9`=cQ>|`WijIwRz%xmz|bNFPrr#8u!EWeC-R;z?qGYU%%-Q5xU~zQTrw{2X}IM zZuIVHk@zDWcZ;m|JaXHi2>K-SJmXl zJHE@$%smxq_EsrPjd!!Sc5l*&590Ba8$C{}b7+Q5t#{_`k(LL4y6spJ z#DDy;?AXM0jxwj64vr_iE7pG!W;HK9OdL~v=2hDSW6ukXW-Zk?xh?rTp~l9gt82z8 zH?&@&tTJJHqdpC4a9wOo(|Z5c)bsMtml}_lvFoRQ_g=97T6imq`+~kfuRZP~HvucnvmQ)2S*w&fi*tofF-KTv4p(z&$9(&r70%hX9+ z8ak=l`#bd;yRoY>G8k`r+pqZ z>g!gwVZ)7X7rYYEs~?%69J404@w#_oJ(K1HOgvZ0eOQCk@7|J$ohp|2w#F9(+T~-) zv2O=1CHHveF=E($#s0US#(IxheP{57k})ffZmoVaz0vLOUqWZw#TAz%P30HURI@92 zyH>A$;Z+;j9dKGRb=kv!nm6nB>H6D+(|ybKp<8c1vHcZmDsLQjv|d_|YSI6l`*wck ztlh>eB6Ba#SrHJm-MJc zuY4Cb?eTHEbBz%eF~KdW)-qXbUhlutU52|hFnK$+I?x4y3bg6z^lgZ z6TC-SDeL*ExujJr4Lx+tjalnB|tw4p+83Gy7zI{aS~k&D&Y7GymNJu_rxW z&zfJC_hP2Qi9Hg{C9jdM#RoRlA6;hf=b*Q3ZdsnI)cx84#n;PLwYWXE?6F@paZ~NP zRVJM^i`t`kbyW3ZX}9&Bw$bUcQY$*#IQh9+x*~OdsU>@F?;W(YZ{Ox$wp@MlB{k${ zCFP2{$*-y`NO-hiU#y9=RMBQO)la-nu6ncMp+?hoDf&hqr~ zC#9}dc|GLg<{59tPO9tfDjvPM*iS{(2yT@1J4GE1&hbVVUniDMe@Az4QF@ z&a|{7iBtoDp`9{#Cjsi3C(_IsC<8lKwODEZW*{V(=C@Hx8n`-An$vQJ`+qK6!| zJ7IAwy!VyjwaRyl=O^DW+gIcwcTxR*=?&xyO7i2L9f*uwImut)|MJ1ZS#y^zxzTX$ z#8+o-*RrZJ*0)?@_4oYN1BY}MI&k?V+VpGZZNY!LVelNYW}bsyw&~|N=gpGg?vZAx z{T3&ftlDmLqR5IG&6^x^-{x{LBE5gLYN6_tc4dtYP1tp1T**FZgX>RvH|qY126Io= z>vyh5^3Ccc8ZWT0xpr)*@y^FjhurJ=xawl3^yzDL+g*( zJaSRu++|B=TKDrXPdVh9U^j4Dt)({>{@S0^mUr8ue&@xmO})&$U(C1emw11zbWe)o zp0ZzyENofTND|Z6t$Xi_zZJ`RJuf}q+G(Z2((@`>MqORE>ypXO0Uw-Sb=X;FO0Nj% z%ogo>dfOgaZh7TS--#7(wJ3J5k9d>Bqgkcq-AzZ7yT4XZ$-DST(X}fVY$D6t|Jixjs*4`c(LGwD{WKpXOYjbLYyeDz?^W@8(-Ay(MuT#!vf=>h;)tU%fTgobGZO z9GfyRscM&5eZ%8z(k-L?`^LN1HMv%Fx@*rCvo2lM{AX)&DZ1xl)7PGt+rD@`X_*;s z!^ovO6Ic3|vVNgnG~i64XN$>)<0iE<C)2+zZrpI##kyAmjDJq; zP-=Fu>1UD^WqzKYJC!4y+VOzz>C{HyQ`@gDy|{lp`}Ip(bUh}zIJ;}b4zq6sv<&Te zdPmWf&J)t6?(g)~yLP&=U2N|fMaHflH?QgoU!QP(>TJ`8-x4~#>T+>mxw9?(Mnrv- z_1)O%_NH(3D_5QE@!ZNO)gq2l#%Q1Mwh7hDT`n!Fv0_~8#^~Z9={FMZe?HmD@#y;* z9V25uIX*dkwx`MCi*;@oi9*a5&OG_t|5~fb(n?F4FPwC(Zc^Kt{>x-DUPd;)Wzz3K zuO+EJo^J7vnf79Rqt*Skj~;Q?s#|RB12so@b__Eu?V?KT<+^of!+R!Aj28?Kuh6}J z*|xW;pGTMxj6e}t&huT2a*XxFdcS8jx}116uu0s1ABy;vTHbL$$47gob&ZjH z8W`zc?QYj;r{f(OEGwVf!sUJ6wLv4hT8|uY^jARQq_2_14v!ph^HP(8w`T4&?qrsF zVEd9P=|6u*u8!>+H(;yhXMdSpc;9waHm)&ob6ap>y|c!+*68j5SD)40b-uevLX%@V z=6WYTY2RXN@|X~(G`19X0o1}9|bfie?BD5tE5rU@uuJB)=PBn zx$@23Xe+la{U3aFnK`%in2O$08~kc`t^L88Te^&m;fnnvsmWZUGpqa8(`@!O z+FrsraMayHwgQ<;h=Lthiml&f?3ln>~|~<>_@pW-piSkPeCaEWCL&>Bz#>+uB}8 zebVq;ky{&&j`II*E6@#Kib)0=dE{o>76-osz0N!G61+qkARQ6K!>fRx}iZa+6p{<@~iz6J>+ zOm8K88#T}AR9x-i0|Lt5s&M$=&$UHH%7={FVpD0f(&_jM*L1g)f?ac8EsFIyu_|TR z(5XEaRqgWb^Y4?hHXjxU``rJ2wda2)n<_1z%{q1~deM)>Q>82RC>;{yyXEBidOg$q z%%@2u33mr=*~9Of)ZpgMmkq*9Hq>GC>HrKQEK zy3Fie=a~3-RmBL7FO67_tVVTZpb3Xp=FaVo0c{jwdU3A zvoqzVIzK&otBRHA>ar1>8>*s_a|=WY_JdO;bye<)|9XHKHXbi$7o00 z^0jLeE!QDp^owmHo%?j?G4~AVEEWC2q((KRYqzJv zUYiVAyu`G0;J`BVt#+8l+kH>_Qg-R>kqs7d?5h`BU(Wc=+Ewy&FCiUH|3V+MAcB&#=5` zJ9@Tlt>Ly;OqzU|?f7Ky?W3JrzA$bSJG|tQ)|M~L!{0QNEZZ2cvER~`aNK{aFAYkl zSl7gDx?@N8?jP56eAp*SAng5kaa8L`^A7*2=x*`dZv4yeZP>U<0eYndnd3IR+VeF!@ zp3PM+En2Qnl)Ud&v(>a3jlVsd!Rs<~`Fby>?H?w5?Og9$Lf?^Vj|`l@rl(b$^Wak@ zzF64RJU?CGr3rBMxZPT{Xm!<;J^3jmDP~?HFXx;4j$OOo_;uRA zXM9I<*}HRZE6vziIrPPco(Uy>e|XdH!4S)>&*q(}cGb4`@bqh+_OMto+^1o z$49AC-nE-=e33KPJJEL3kbWh_W$(YP zcyH0gR<%z(ne^IXK-4Rn`|CsJ4tvgj>u2Fyyr^SH$^R0%___pFyOXf*ho3`(s%z|O zOI(K!G#PSg_u3Yx?bRh8-hRKV$%`^W?^#Z-zHdO&#rMu%cJF7^H|6rf<0CeXjouUe zt9|PWVJ$a}mehNEVO`2v>AY3FoCcRI_w`oA8yANu=DfAD3+U6Tedvry6G|sNaplyI zxs~gm+Vy!Y#o5VkYwt>YUo7s)FUf~ir$0?R;52gQ_~~uEr}20H*QR~9kv1nK?XS!U zzdH1J<&>_=4=GYU9XrzS~n7 z?>oL^r?5Uhi$~6BRxS0*8mUY8sl;oe-w*Z+{cKunTD6nbF+Dn7_G>gE;`{eDUL&k| zaqmjixH6^L$b+}HIG6eTEq2WB(M@W;3F!EA;-`)WkJ_&9;@`|UEcNC5_ii1lOs~Jw zQ?@&L!@ZWTdJ5JSZ(H_5`oL3F;+)1c9OLu(&Mh42aR-XOzk74-d-ujao~JJKJhcAa zj{(ZS8Fx-Ka<2TfHFxF1YnuD>Wy0OhR!3YpA9z=IyMAlir}A^d`W|o7)FsW@&g^n= zmkDLN-gi}dMjd;4yw$nqXzKk1Pa$8YT?_c-jGsY&&w|LtpqRdC@w#%aSOy$hK=N@^` z?9h}R_pZKtYjRXnCSm!)Cp*h+DRr+wNxAZ7HDBxf0|q*kJy6x8+11v2Zgi6MvbgQA zc&qKv!6$|~HT-_s?!TI6doQu+ex+q^$)Fa#Rd1K+F~zO6+O>OH-K3XEK<{m#cJoQ$RFpMCj0X2_5Ai(Zzf^WH(YtgJA-;mz+$tF@7& z&k1!14tq@1v>>D7Pmspk_*89!|vIexFKMkT?)v#Vx)vXnc$2=?9;kTUj^ zcjx#9zK?@lyq7*~+I{?h_?FzdR;vfs8f9W{H>k#)+X)SWM^%#7s=9UV(4m)`cF>$W zv+AL6gzKfoyCY?T_L#>vSKeBly2ty;q+@S4iE2FBaN_)m12HWgwhDZi@@ZBJWzDtq zW}Dl5dt|=j>Z(<5iyUtyOs&_}+p=VWQS0Notg81JFRS+Ol~b=l?Y$p17*zCDy&sjD zZy0nvc0){$*4t9&`M(|YMEzvZCBGNNqdu7)mz(w+G5yzE{|?R1Eop4k{z{eowc=Ax zSG0r{JTs}Z+U|y8LEV&q|CZk3)+stNF}at>!E&7O6GiQN_Q!(*`|zr+==Zp7llLhL zOh$y>ah(65?8?svR#PobTf@<)byZJjnT`S%w1&Bbd+7lnqiNeEc?9c z?(?`B@1RYOu{9HG*{k1tnAB**$&EvUqQff>|JLA2KL2L?&ye@YpUf+p zmTYIc**yt z?oIWnwZP@Wue1)=7cJ=G-!?72@3k-T7D2ls-uS&JH^l7w^Kx&?S-aM4esmizeSH5% z-#V-q-n#bW9j9bteOkX6QD?-VI!VXoMz;0&F|LaL_Ab8$*FSOCzHIU3>f%#V*A(I1 zZd`JeG&xP29{4G^&x?!h_u@i$=Dm||OTdH!YxTsRE z^E0a)SpV)_Z_B5nJISi0FFbMk?&VuOCZ)cr{5jfb=A>F*`Z+pOyUHl?ypnY!1` zKU#Fkb7hr>!!GRfT6Ht7Pyd)8&n?Y*oKCHGofBO0)$RMM=l0xJf6bZsd+wT5uF&bx zYlP4)SlCnCVf?0dw#(D3&yRMT8@ao`*`YxfoA`8E5WfBCJ@JyYUA(7mwK}+QMoZCH zVb5ZgN#^(4HE2`AoEva|*~=#N1jj5!nC%{Ke5_&5?%noZwBuJlDHl z{p=I1rZ=7$*`vgs8>25+ydAkb+H+o%*XuE2+YSQLCuQEQ9wq%4xZ0+2{>+g@g;9aC>E?h$jW zV%Jp>vJn&Jw~TYzvbo8pr!zffeNaulAADkDsdBxADOTM5*E?3P)$8D|X1m7EtJy(t z>_$z`z%{ix&TDGdMU_%EtY`b=x2xWUzyEn)oVv`M3MX59IJ?#RlTGi=m!H)<+;?cN z5t3gIxGrN>#a|!0pOL(dII^j> zvQ%2f@n>QGLHrIwzt=FaFx2r7pQ2nS9u**w_0l>lJsr zdiL4K=wGK^k6ycZ<%z2Gt?s!_4{goc#uYAa31-ZSi$K%=>ZSWXgN_ zQ@=sY+J7B%YR_lWpYb!=e7d^#iP!rr-nPT4-hL1@ZkxmJqGKhWXQx%(uWo$G+u!B< z+A9}KEWh>YZ2#zIbJ_N#K@kV77M8!DcwpkZ>C2th^_@l)KRa#4;Wf)0;iF1Fd%Ayw zdFOD&wiw%b16;d}`x3RkeDb`RFZ-k=wF}yJ(c1s>=gEmf0!v;LSa`PGRcg1{?D<=! ze6w>bVpPJo$kT_1+&kDgJMaD-8r5)3>|3}2-ac7U;Zes^6IYrKZaTM@WHk5pT8N#` zM_rw1yl8zh%UdpkSDc+Z(yD^V@zjzvZC75{a>w7a*&y}39UU(QjwtKxR6nU>ols+E zkBP1~PED{nE&kpxu=dG%o;R<1FY@?aq|c(AZ`$Ukut~-4B`?3<`1pru10$mW zPx%e+Z5mX|`)OL$;E7^mn^zygjTTExzLvP&INIoHTyOIo-%8rAt>!$EJLI(>R6Y{CzO|;^)oEQs9dN1%Q!pt>~gR>JTmr0(#qeGn!lI!PYL$Zq|N)@{C=An_w82B>6>uw)$9`q z_GV=l^Q(<-N9Li&N)p|6SJ6@qU2f-fNRqKNfF4K55W=c{@q3a@XpX zTX1cI&lv95D%0c(J4Wp*pVn#b#n{FJn|z%-gtz%g?^ZTbH}<{~mp-mm%{EE%?pu!Z zywlw#{Af>y4{d)=Y`@ZYWkAHVgH~}(e5A!p+DTrGY|^Zkzem)##YvIfKg5S#xjgE` zr!!qN(sJ=dhTZDXJ~Zs@jEU8wjY~D`+OlhhLlqV|PWFtcuz5=pqbJ4M*iM_rO$u&4 zvi3#SamIJe`$}Vqb)T2j_%X39DSB%^=_Ivx8?H<;hR`<@B=hIDG zHE?E4-dFzHE zJCD`=P%u8^Gl`?Ol+C8W5ku4twRsK1tPpL+Y8-AWVY}SwEJIb2-*ST@WN3f%@ zx8-=_2NCa3r*~y%pEh-d4D#XX5wqQ^Ys_iZblVT-4Sw5tw>aVW)n>=NmPO}pt@CAOL*d=l{*Bi>f7`jYqThHoahy=JK!7eC=jU)j6PdhPtoW4`LDb=(9Kf%E4fgU{}s-2X*guV?aA=O6Np zuYdC0ZbF=Kg(vRPCFAbxED@UUsNs8iNAdfWA5J`o_&9G-tCj(4%&O0SoKUvq#?GUn z`j=K5m)WkYe>q|Ej<;(<)N`K9Nsl~i9vtbKHrBIFo%J(^KdsIz5ri^*9 ze&(W1MeEQ0wYQ2_N9ziv+rN+Aq&~Q{{h@>oXJS@Z44XV}-DpMYQ4{(!Ubn}pR=35i z((Sjs9D8()w1%YLZ9jfHnLdzm6{AYJ;t|5 zno*M(cWUoB)-P81e1P4)7e7ARzWlWI#?lA;1wodpLOcIR|9RkC-SRhU>|I^&*pQDV zi310$S+@OIlYt+8A87Pxdsy`3R&y1e@srvN@0B#I!J3k#o~Q%*&9h8;5MC$zv_+XQ zyycxu7I!#^eZVo@*p?_$#h@$cFr8=2bdw$;Av-7U@wLX{(?Aq70p=aHRZYDKe zZK<^4dg~PTHu7^3l5-sr4y~X6XuM)?n;(dm@(VvU4QWt|e~4F*V-rF`KG)muV}Yb{K4v2mYw-ExY=mgu8nUazb|mD6yMV2&Yaf$N4IV@{Gi-sQ-f+-Jrm1a`tRoi zO-E%Zhmyaav~j<^y`yciw0o&%N23=CKQ0Vex^~Kj=IuU}=3N`>ms(yJcfj=LtjKSj zQ@`EbG3Cv$apgtBF1}Cx%_})G-u=$IQy#Z{qiF;-r#PV>DNM^AGXuITLPy6xS0Uh{=d&eT~_ZU4H*OCR}1b^ICKx^Cl`EpeB= zw|=}XGMm&R8lX<%ozdtP=`jEQFMn&0k@`d9{Izl9OcH`N2LM6!YJYzfLfd^+;T$g{ z4{&TUgV;GXq1vc-_9KmL=ZK}aMV!0Fk0X_HY}%n&EXT%~qmXcHGUMAh3K_>n$+7X_ z*!Xg6{5Uo$60Od$3BUzE3gQUR+R!G1W23=fxDj(~!Z;d%M&dC7g>e25W!O0IR&%)LA0WfQ@w-hD;Ft*?K4;d-Rqe{09*4jI_G?yt8|x29YPTbn%faq?sN z!I{_A2M%c+Ipp+YeSjm6=ZX4hJl>T6S z{H6-~`=7d4|I7TFUFJW&;n;DbN59+R^{0*RxBlvUtg+4A?NRl1>?_-6Yv&2>JH%Y6 zpz^9>(?^_+Z(po(oxYWNmabc-PUs!JviNk{>8=3_ZM(JUR*mCa(SEdr&6@An=E=XDs*zCv=QQpz7b~!S6Cp3I-*EQJ~Aivs!6ZAMVcp1-@%LJshcLB>2jgR z^3_gzY8+4+H&$L0+EyGhs7ZVs-_0?Vuf3ZUUjO`AvG4h9JNB1dUn;1kZ*(0|;#;Y5 z(*4vCA8N-($(~*CpR_jMV!U|HLFK0Ei%*}O(PjIv059Q~E?$B$L%l?+ey4SuSFQD- z;F`w+j{bH%Z+&a1QQXnrqL<~qEI!r+AJ(bX9X>_Y3%i~?l&FNZ$+X*_0qdXpc;U#&VE_Giu%(sDA7 z9YZ~ALqaqWIvG&T>X80MHg=jYESIC#}Bm!wBxIzU_CKVL~xVmYX1qQB2%#(uZXRNMV&XWm{ zEo8{*l0>iw304-_!TKw!n><%gph~g-GH?VbPlRn(hKy)5G6thPs}G><`q0KFoR^S%s?v!`Bwl3 zBnCjMCku$P64%1uSg7Ct!UPV$0xJe>6%+)pg~7JS#w$Rf#BvEwCKRDWhY%}`dxZ?t zK$JV)hDWGE36~86)@EH=l;J3NVjz-}wafrkED-QS5?KKNTNsQ>ER*uU{W&6;j0dI# zk|5^sWjJecBHHG@vY}y`;80e8{bOYdg>kVGfk-Om2_ScighZSH?2v1bW}Ykg$`#l` z;am_?$oM0^!R)%#I%dw7p z1y3R;7yyx*oHQY58Om$qdeQ2{g~7qZLYN2?nF}kH@Ie#|T-e-zEffw$Fjj$L zEf8p=AO_GAC2~@`1qh7Cxe|fk$e;){6jvC^z{;}2+d|=BQW;MugF%jkSRsX;1H(+g zKwKCcOe6u%g~bpGBT*K_uyODq(F!E6b&3BX+4_emL$h1iLg8KlK2HV!GXNDyczkjG z;4BQzC5Ar3hk+miP6g3(aBs+hhDRuUf>ey8nBBq_1_KiVN9n0zF#tA8o?HlwCJmuu1AAF^@|Nr2CIFss#)!_P~-|; z0b^2rLH(11byWta;CMlCJJeDO=RmHfmET-c;hM-W;^`&M5&M`3N7o2tgo@q;xHyON z=_g+$htK0nS>wMAEs;mwcMx!BsZUaE4iBaE0EZ+$>7?>gEA2EftWQazfUylD%EizR z8Jin%L=nF=YRKX5aA@ICT*&El;mFC!z=dEPE@Ve>p^#z>=8kYCJfvW9AXCyi3O@&b zg4`*XQNXt89Wx5(IlW^>!9k&S%qT!UddG|ck%im|5YWI}nQ;WL!!!5HNWcO1o*4@s z5%!)Ljrh!&_u28_Jg4`tmoQg$JZ2~0LSe@fu;al;!Mw+g$7~XD5i!qE50!oo9|v<~ z$Ai&`xo5|NiJrM<$AkRH+_Uh}iiemlQ<#vroS5&K>Vvpv$74zj;+`E(#Eu8~la2>> z1-U|0>Plh|A~+Ntf);FPMT*o~13yy$k5q}3Nyt0l5n(E2u+ab`J|_UI#z;N&o824mSas(tCw_uJJH{4elr1Vh-sUu=7tc7AZHzF`h z6B!UlZWLUENGOAXR6*+SVCGw8h#&JIOr;L-*WkPb1AYr{w+$qCXNlzw9POR!nzJ;FH9ON#_)#Qig@VgKA+d5=yx6 zs`A-k@e`he6Gm2z`RL+kgf(!CByWnjstD#6${?N|9C*bl*AeL7q3la{A@H;2fBTu3 z>lvB1zooxahWsrFw}*v7&Q&rCW6*S2{Q9RI)!hlcT&g#_OpMKLD-79Z5!5)~Fx_X$ z+Wv9H`C@L{Kvf7f8lUKf^CjFoY&d?M-G&3%1Uw6Cv0T9Itg--3MOg?WTvb>^pehJf zB`f@0fdXet6|Q1I@VC}qp?_Ly-PPdBW%?uKbb3G>C>hs1KGf4IW0n=iIwBmWTq59V z{J~_&Mqnf@T;0CKuW|rUFXc^aZp z`GxC4`%m-M1(z?E>yMPnyb0aaoi=sE$(d@o3!DLyz<6HX_JgAGd)H%RH*pE(0kOp=}fe86->Dl(lIbq1%!<1p2LNOhQs zOi?P~MriUeJsq&X_w@%d{5VL7!&k^`qtdTmWH>=tk$`|kuf7DEnd#vvN;pR_vxShm?A7 zA=D5t3g=U#H~iljvQR7qLx!x(r6g7iHbK@KPjgv>?ARv9i~cG*cJvqdgZ!~}pk@Lt zA=|k5A3z}CI;$an8Ti-pf&{wz#8>EVla|aGhy}2|NMQiC7Qp6-tD7IY^?q6Ro|OaO zf8chB3?tK1aFwATV@h8tTFbfWkccpiUnCS(@-4)&KN%&S{xjjTWkz=K#~r0``buDYpa}j4wS#mJ83DavAj|V{b}mBTrnO9_}AFKonm{SfqvA}Rzcaf*a8Zji1{0Xq}fOrad8sH=?Q5qUFH z2PQh7K85-xIT5bjOvv~O1Ep=uP^;^+b_WTr2qs`=sDE5Q>7v!>DnaywXdEBhYoIm+ zs|V7_6X}XP@+aRTqk|zictS`HF51N+suqzr@hDuAkF%!-DPLirWQ-Y8Lza$$fi5{P z+p_{=5a=Z(9sn;QP)V7+oExkJC%`|J4ftvTnT!=?8qw;AKusk3DkE(XkH4-$m3Pe5 z1r9bm{WD+~g`t=$Mr1RrlN57_OdJWrD=YkqWI942;sp$#JMAMG3k8139D9(`e>ceB z*Lk8kLWm>!3-K>RTcW!Z0)AFWJUi*_4^FHrV}KkG5rc|l;HLk+4ul7jbx`Wf2}Ay? z?&u{zl&pkmP*paJt6I5@#{DW!nQh~F@e*&~HP{bKWT_I1HTQrACES4-{q0-g~5 z5ISAziDC3zF$8@^xx&QB4J+c&&lyq{L~@2$kT)1{BtLV~g$34l!{+p-$|HsY9bQyA zr2sXRT=_C?WH>{Q`OsXj6?l?`ACX5|eq^ncq{!P^fjG}3Ocx*l-$0R22Q{%*5;!Bo zGDHrtjOp)MD+D9LQK2&7NYJy12-G~BP4cTe&?xdVI~)O+5|q~MRbe5$L}CFt?+hgH zFiIqWD;HXk2PH~(h2Xx)7J&@Zq4bxZFc2{u5~M#J#jEUAgca5#3Mqs&5Cf4|#0`%{ z2rs-6A~6(b#?lIsK$EAaScF%o0fv09!&J#n^Cb=G0W07eDDM$9ggAqAWCJmRtN92g zqO%Tzd6+Shl1U(86$c5Vo7yCCWi5}43c}Z#B=H4EBhgZb6Nb=HJW*3~EI(5{(Yh}3 zvg^7a!b_L!w*SGv2;InHD-nyJFvELC=NgRuWB#$M+9-z2NXL#w<{;M9zZfcmXIi>} zkBkN;h9s!+%Li4|14_U*P|C}OD#9AAKqM5MoDVF3JYXgK19n7r6v%X}o6MZ?h|oz~ zSRq)-jft>Ul8ua}M)okW`}ms7kBrCM1!**)`Wx^sk_m|<$N&=A$@(K1F6<#M4DpJr zn!Skk>zzf37m;{%#8=SuX3xKf+cS{JL%Og+ z#n3XI?EaL_@?`y)0jtwN#jpVF?&L*7Bzu~RtRWJJS<5Zi`+N(kddnsd7$~Wd_0Pgd zNjjMnaaDBv!w{7SPcqBVOb6@uB%D5t~7YE=hMHpWw&Ugt1(PQfdJ!FzER` zbvN>#OhtOo2?W{8iP@o9)>$G0nMCjCooaX~G90ihFF}+x7J$`1V3Wmi5b6{~h!f*n zgq1pkcpvF1z!se!lPsc1GNBR(3>W>f&JLzsq<+!K1*za@rc{;~TgjG)V7yXAuG zf*V4oM66=CK`d&BpE8VbvB}A1GS77+TrvO|Des%810G`G^anCrQV=ST=#GdhI?Vxa z5z-JNMftbm{J~4|V8>BlO$EXnB|s2&Ab>)G#2&sqs*s^$W;5CLXj#b*b zGIFy{tQzcp%yELv(cYgDLp8GIh)9mFsFH-MvoehQl7@QVMQ3oaNSM|2Vfq&_TMsIM zFh>zie|DH>77_s#iz*Q;jp&33lprc>{XsgtupJQAP;m@+J4ka2eI6izT5GXx6@R9XlH zI`Kq8(0FahLo4xf72F6?h=4FH5a?SQ6aC*k#iWsn;CX;2mXVT{5=m<7J1K^b@$2sEc!2zf>$PVkV8 z%Yb07^%THRr4Qb}V6`5A2r$(jDf7(!b)rZo787DfLMF0$3V_D+#3DxzGY!^+;jD`A zkPVYzahW_(hKFl>^P?=HEq5jy0-=Fo%AbZS0dk+%*|2O3gpjyw069KkJ7}06KEmdK zBMifUR3YMmUc#9b)*m}bUJH*TF##eOYmUb?6~FSLLS^s9A+&&sfI=>!{KK@s1u=h*Pz-kQve!Mh zOvniY#{7fkueVLCXGN>}m@c z%I2h_CJIoQUCoS;coCwvw80``F5?m*&j@iA@kLrEHZfU~r(y8(QWFumV~8DIg703H z?|JINhx`ORq|A{EXERSEOv?}mM6rexP9%_n69s}aVfzUM6Dtt1MF=e&vByc#QG?|4Uq)fYoEb(D1fO(#pE<^%Rj>6&}Y?bE4=*$d-Pf$~c z*)*0O(w!mn5Wxoep=Q+VOvJ@7wJ-S|7C+W(NfghF$>MqbkDo4J$c{01>$2<|a=1|% zFYDnW#$;yONC+k5AjWGV$dc27w;1wAI1!B?$>mLHW&XE+sq%A;2F1;KXIQ_z4*+BR(P!I)V{-Ee6#E@;65FWQvhey~( zWSFo;IKE_M{vCZKQaAyS^rQzFvYqsY%IRokH$~l~5kG(#re=)LtZ{(P?by97LMI71 zBKZ@9yyA*rW1_85F_Cfh;bBG$G7%NwK+DJUbfE%2)gLOC>19MdWo)5tq6Q@^`teV2 zCS(fx6d8rY(@6s#hxLGiIinioqN&f0EtL zI5UZ-fuS)}a72VL;@u;CS$ab#kzTYA2?Ea6M*&)tH}6o!gmuA0xj=)rlBOIIQkyYh z-K>dV_!Ov}kp^{8TO^sTl-0yY?1p}RorJ3n507LVOj4>Uu+d!-;B8P;UZ_vT6mF=f6BumD{p)^_{~Daqu6i1F+)u}b7msDtx0eI2L;Vgn_jY{;%|egs2PSaIIijtUrku323rdukP%?w2^nn}d7Su%e&!nY-fyhBui4F-!t+j#7=jjW4_9*A4M@!T}1<9v%dl(8D8^ z3SirVf;~@$sGc;Zx&R&Lr%%VRvoU05s zp_Yi~g+*uBRk7LzDp_(BqmqQo}C9HT=!-RCR+@FwF zLJFBk0yV`%$_Bk?FVxJ>dZOA71oDt|kzNZd6@_}U` z+WcSUXId6Q1w1~tbDl!fwJcCCv>d^?`pcHn&XS|5bv0yct!~gVt#w1r7l|?>IwC8F zg=W=`DKf%*(^V4$m6GaI^i8J_$a?uYoVt*qth!-y%!blRNKJE? zG^tsGr6jPo{@wER&)NAx7<6Ih(x)S=RS>I0jJy;{@PUz?@V<*PF~(Wj+A%LgsA%FP z-k_1r`C35TdBd`3@B->+Fo>^#$sWZOP(zV5c2h4cBg`On>+h@R04F!*hIgsGmE^+x z5z#OBYrF`4mea}-0SsS5En?E^@P~9$it&|;GxG`+TygJ{w@84D)2F)}0+4e(qLtI> z%MLU7u-&lsHpYU1g67%VDPUJ)Neunq>l+!S#BmdotZDLuF~rHZ)UZn)Fl365TRrFu zGQMR@R0lqR#6USLn|X?9}l;B^3|USL~7*dD%=oj zVasLL6gbaRsv)-6j7l|NME#WNARnY;l3-bUr_sqCV~u+rY_ul*B{8k!{ZQzEB#`J6 z`+qU*iBatnVaN<$3Xh2Nqv6gX3GCIW~2{}HnYC&G0sbWNf79(qsOp_&O zc!8}xf~t~`A*pkSd?acBxvIlarIXkP^RbV*a0w&^%8LX^v*IYNfXiCo)xjXVL=0jC zVQmlwoD0+l2F*nU7cpEuz*NM#t1@vK_5$`Pk%XjY22wTFOBvM@2gVH(1Q2igoUAuTrL zrw$;MrtloLhkR_TE{Lc~r$5v`%vFRA6GD{lqI1=zXaGY|2ZpJHLCo#+@WGgldTl^W zJYY&^5c@jSeaItSf<#`Da9P2cxlsm%=ZAyofhmw0DCcFT42WngUpDZF)!e{use6S{ z+@Jz5k}ISrs^{pG4?_wcRnDRJW+=2oFk=%El72CCM>FEu zp|knv*sNi202bn*jx~$b{W5ess;q);QN@s4q+H)H*tV&Wljwlt_~ym$sXefIkP4&* z%3j&pz}VO)1k+>$_XA>L`67lG=A$3%yC7RA!b2$5Kia~iVx*xX944oOrf)FHhNy@T zQ>75I@?j@ZCRl4Prpb21*nn~bZAs0U7`EOFzOZN9ep(WXH$YU4$TGjI-qv=5@kmg;C5uyW! z9CeB5nPT^il-~1IhBCx~5o>6M5DoSfYY!F)4WQM7$m>iLABk|zpWLDcjzF4sxkZQq z_d;Zx(0LK&EkU>joxzVIg1 z@^SrB%m1sAk6)26p=|TjnZX$XjQ4Dv+xAowKMOwpUDsk}lrMQ$Z-oTXtP)gqv1W$& z_o0IE1jr6$I1;fAp;&#MQfkC-H02y*MMl+8E6B@~k(1{nGeVn+K)xW0oOe2^HzR@6 zaPcdnRH@cBsTWVJlVzx-_%yl&C;)z&>7-)h6nv$GLKQ&+NhyLAZU{`Qy?}3 zF=}{cjw-%J>{WiYPcNif_7B3AHaRb2`*b6use7DpeX|NJBVoZ($7lr^HE5|2Nw-vo z{V^s)R1!dVh>A@vB@&u4UsKfuP#`l<#v+2Vwpf;Ss(LZfnQV^;h_E;?0UPvV2HAo_ zNcjX^5@NFe4yoc2pT>{{RB{WGjNxx z2ig+CxM6UTJVhz65H;eatpk4kZrWeC4%TZSQV`8*OwyuFmCyF~f6p^uH7pQff z3BLg`%*<}4bcgP#)_#v&gaS{hI5WSa5;f5kFa~45$U7a?flMGXTs))YvGr!C8_5mh zYh*wGjd6s^!bGc+gQzV;#8OWw7hSNSH(;k}TpixX)Rv@qtg)gcq5472G6N+vU}aVc zsu$%C!rsQN^$_9OP z1Au8r6eJlG8>IR7gr4ArT88im0prA}Otv3S8PmOxxX?*5K3h$LmO7zLehSiiIK-eV4%mm}UZgy*CI4?;J z(wgL`YN?I?h4_&7qpJ&`KyIMyldaJuOVJht`mtL~@sGi5y&{q{&@;m%{x3?Qm$h60 zN3uYky#SM=OTrrQJ`k~yTa)}?coPF>txoqKQ`?K|7M*t*%b0R&aMAZkiuO6|;*tzml)p3x*qr+n(Ox$N4XF@q?4+n}oB=8ci3eI3 zvaY#+N~lGFgDN5z0&*6-3W)GRwZp&k2>u(ig~73)*~o#jT5#bSrhQ`#f;X4e ztF*IPL9Z+lAt0_}G1;|+&kiI^Vc6p425ez)E!h2mwvr5BiLo1%$qfUR30-9Vr}7KXq~-+ zUSF0nAnHm6QUD)0>5zvaK42Pup$xe}S{NJ+a*GT)nuN+P=nX1HUJ)cPWLbj-|D~NN zg9x-qDg_9l1fK$DS> zlMSLWT|EnYO+l~7;nzY7A%>4~1_c0ZVel}tHGuSj+V$+(qEHh=8bg59Ay`>i7tu_Sa&{5K1t#s@X0eUZ8zrBVASeS)&52!-ML zVkm+ZW|kt5n04Y<$dw`(26JKXG!|yGypjm1?UTs1Li9(L|IPMk5X?g2UN30M%L=(@ zw?%;_LM~y$1qgLva5s2wNQr7xd4TYMD|}?6Ry16?h+_W>$H>)l3qu*k%M1d%Kg zUdWSjlu#=OcngEY3E{huBJoYTzQm^kq%a6v5R5S5B+pjlMdQ_iM`03~Pi)H>(84An zlp2T)xr19Md=4=OFfIXUMW{n8<_N$`WaukS&3Lf9=1Sa94G2|4BUC{_!Pzl8INSTI5tkf zn6n*wZOdMrI5u6|IdE*;kpB);AV2A(@>47AG%@%MS(Ge+*#uqCMjmVC#X+<(`9ru8 z;zh26Fpw)bbmU6m#gzhtE7=GBv0`AI*ay_w0DIDiFD6;iDB;To6Z2u>n^GKF}5V_lZP8;6VH- zdu8Agf=n^b8Tb$c%HA{Z38~>2zoQk_$(0?CK?&Tm9eaX9^HTGJ z?I{1D$+hyqUo2YWk!puhaset?jHe{ma4=znau;)#OW@y zHZ#7_mRHw@#-K8J+Ii`M1CdyNB*Rfu3ab`G6b41LxlL@jA(|#ELj`qG9t1`J4VWKE zM+IWyskXK#b4SV{XzR?9Z|P1VL5OO$`Pe@__ylqT^BVs=ic)9}GO$I8o=8&(B3XN+ zewosbt(}C=H2sU#JPSjacv4yk53}Ghc?6;a#!u=>1+a|~3@0muj1shB_fZcnf!x3} z#%$&XYc+bYG4s=FQi)uBCan!0bc-&K>NYg(9SwPcvBPMq5~1xDLz?t3L1p@Q^)DDI z)rAP`SbwCPFq9-{5{{>H@}%%9gQ_#dDo~*g-8Gri=ZrQRDAAS?R|IrK!X67eK4-Se zp_S7yQ8u6T?*%+MsBx!7>+|NJ^_Em;HzA>B zK@oO9!%!u=?w{27m1T=bh0cFU^hC%AilRbp&K5f8FGL2zvCZt8NkviJ1B~Ql5%d9i zg1ds7prRDqdZg?gcwsxXa3n2~3}A^y1VtrtL@#R;<7A4CP!>xXSI}CM>>WehP+5S~ zM`Olh%4VYpo-#B)yhj&qfx>VxFzW&kJxLD1n=Sy&d#5w^2bW>t1zDovA-Z+I(#}?N zlW55pvnoUz%v_ZWJ^~M`2+E1x-{?yA%Eo~t9r6@1s4D2I3U3v36KfK04q{4Lt5TBm z$8v+_WWY~S)`-xfH#k%2fJiX}c)h|}%xt37WIFj+c)dRd4J{|k)5nuPiKPUAXef`( zth=9vDI1^LVqz`DP%QO+*OpyNHYfef0Gz@A;{|g3NkkNo7g>aVKd!XKp5ebJkMy% zh4so*zW#;(>HSrdo62by^=F(N9dl*2APZg4-EV|)!Z3jKMbULuRDjG4w=CCzh-sv# z2$A?u!5P{XsT>%fQ+p97PozM#19E|QkkOHhJR}klc^aYVPbw9nzbOlgKGfRNC?w%S zP~r6;abtc$3^SSM*NZmhY^lE}xh^k+8K5V%Q&5zHsY3tPnKBhI6=nV@-6dtUVp^}@ z4{XaoV?DwF;ti2ZmvB%<^~bMC0)vpFLtmOh^_HUW5;J|hF|kiD)aZ^$*-N%#BCs@* zX0c;7BSTBM^di$<=yzZP?BCNpurO{Di<0giq-7h)AJktf{3+~H<{zX2AYRLn)}S8? z47)hkF!~eg7A5jJl^7%vfkeY3CRgBa-0OK#7kgY zCE-wX4z#WiD7u2QE~XukiR?hE6?nohU4@JrprPeQ@kmVsYw{IQ;&Fuxj&2NuN#lm_ z3cQ_hxbjX_bV0=C~( z|AjGM+btuIutkwvoKYYOh(&HQi?ZY$dvyO0YH{R*J%2qY2v$Lh59XjS0uh>&>Qsjz zT{jrq2lvS=%}t7J<3(C?oYthKmM=WXtkr^>zpJLMN*`4i(Sz`I-YO@u_6Ov_WljXf z?JNsosFs@5S|;Ix{jmEzspbxSY9EPBMy#L>L91CvSF7LYl4k=vsSJ6o18nwZ1c5%eL=m^l&5X{M0Q%(I&WQBpk;-v7Dt(}Ri(VP}j--^UXfiM9?cCZklUF&ruL^)lp z8v<59{f>mhF6a=3DpUFmqqN-&L7e1h`}1#BA!~ML`E0Q=evX=KmN|f|WHDt!vF5?J z!H^ZStc6C2`rOzcf)P?KYa64k2Xfy|McUPB!eJ3YsaA%x=p!APLh>_OU!W@sx@NLt zDTDrxx%Ysl@_qlnWrvVT%4{gg-a@i6%O*wk-aC?=Q9?pVs3@W+vS&j>O3BDdc1HHh z`d`mEj-1l>)2Gkx|9|~^y>iZZp8L6i2Rm{F z3Hpu{UX9cDZ48vXFbt9%D+D}svvjh@m~o&2j6N5eMf~69`JcPG zwuN8_`{S-+^m8jql^3j5Fl^|aqO;Lrav?z~R8(kTUf6IbmLGz+u~;JUF_AB;3_SAV zpXsv_j3H7IA^Em&^A0sbQ|EoC2EBgg&gaE$s(@3v(9<9et{ygqr zEE7T`b6e;FM6v)KIIZzSgAsz4DOo~df&ZJgubWta12WKY z@v}%Evk$K`g-r9<VQ=F z3m>|=1tB#dAHc~G$or4yS04H0aKOBj8^UEGVKK3u0*;awj6EpwiM)G-wD3X_UvO74 zbwX#eK(-uQSuM314jZ`&&J`d^{5A83)f_-$Vb}CyFtHik^_ai)bSa=B1VGn1Jo-=k z?ONToFhm3ZEHT8l!}_5Cd{>B~?3!xGM_a-wrP~02&1V)QnY)6VjTW zND@dQa9sTvNkXvFDC0X1_>TQtIVxTnGM1oFT_K$)jslfe&mINwMCYMEtJqNmf7S5+ zH4($=C=d5v%bh&n*NY%KP~(mQ^a-z|S>k~&YYdU#UJa)%3Y-cz{#itkwnvg{K~a?Y z2tNNk2aY`b7aTb9n7W0%m7(c>VC1mI1w1ow`;{bywwHfI3x2tt?t4c~DJ zoI-&90_6XvKCLFbz-CU7kYb=z<%Otia6+IJYUquHePDoYQAhw|`@~`cAXuIt__ZN{ z%rW304Rj4iJo`0J19otF1po#+#I1qIN~l+zKo`WS4>ZfbOG2U%Ua%^xW!8Qokzy$6 z@>iMxdUR+9P%sp_9%1%$L1(efiv%Ek4j&URJIDrE%M@ad5Lzb=jbAPI?OX{5P=VgC5!b!v}p(fQHI0W#M0T=-W9D+ z5(Z;Ca&#C&N;UMMw_@x3bw#WYdL)1%AQ7?Ofmy1*9||OdAre00e>cs=-UYA@e@*bQ zDhJsJyQV+qTDd_*1yT3V6K3aX3zlFQ98mXT(A+4)0_qAPx+B?!5I+_T3)EOcxmE82 zC_kCR3HV`ZSx{sjJz-S_zOpQ_cMP6PcBMs!ALC#~e2>{xR zTt(?j;nUR_C0!tw&>51EG~O^cs50nmFOU!uDf9OoT+=Y{slu-4U(6w>O879zXVHf; zqV8BZtx-Aocp+mF1Q>#Bd?-%^zCS&&k>^l4Gemvzug%cN(|>VdBaH`SIPlj0X>iw$ z3eQi9JA{+_1IYZ^BYOqx_McB|YytD1HHe7$PSMcL6a^VXxitO%!v@DMzzgO)2#A2S z{C})kZ2J|^Zj7#OMPA0rLM4sz+yVp}7%S9Jwtqt;#Tx>j0&^QWu{`RY68a*xSq@sT z&Vh)|M*JU`KCBjkBI0*F{pBe5si$kRPeF`IOGFUh1vDuN4ho-W>--!IuchjLizJVxYi7-A0WK>INcXAP)dJ`wuFDwQb|!`I&$JJ%jVp zR3c$0fnPzfH>TjXg(j}N0O=duE5{3*sehIKbVUYV+eC1@U3W4u&>YO?FS`eLYOq_O@=+RyLrm(x~e&ifHdQ$PJ?7X66Ouq60|A^ zJ~1gMk*kPK`iInyJdKUpgDZ%yC%S_FmLnCbz2I8C?u@TD!@#HiG{XqPi}8+wRHwig zA&eZH;{Pn*OIe@+A}bO;JoE4Q1>{YC!7m_>NgE;nM)-n0pa09-e{tkOi_~CQ1-1mp z7uI?AM@tlwh7cg_KgJiN3+$@?fY7dPMZjl44mUI%Lby}J|8kvU19cfK^&sSD#ge}2 z#0l*C8gK;0g%dtk$T2^V&t` ze(2E!Sj{?E|s&uRAIL zu@+Hk41|cGRLpQpVAO8VS{`I>RvpIS9@+$kx{NwOktqW{AC*QFZlhINMiFezwa@aKaExh+Ar0teD>*+*koVWc#?lTooxjj{6rhVAV`^DR!Mes*2^kw6j9nM?9c8EbFIyg~sSvm0Kdg;a ztQu+tQThg$Nnnz|{mRl49pwRL7Ii`)*H_u&L)b62Wccz%im0c81OWB*X& zDPe<}W@t7qFi-5DjpfJqvaE;oTX!5lJOgizU&aA}JpI!+V8#RUi5?eh2?MeDf;JmG z4q;qCd_;|lJldrd765u@qfS3$hXa*d+3XI62xt=$XFDSc0d@tpMiqm4{k=lzryYqs zIvDsTx@zneqpL;%a8QG6>R{=N7)j7&v8zRw1xHdWTJk&UiB^lFTe6~w_<1D$2R;M+ zE({W5ts^hUMS`GBUuyxwsL8Rr223^<&>Ma5z`(EJ75>L?V^9`r-wh1AFbGq>ynA)C zU={~VA@?_6cqf8 z=kv3wrU~2&-TK8kzS4v^V9o8u}^;x4n zQ7amI5PtG>{ACoZ)@}GH5LZy=2-Y?QpHPUvyv|Fo*TFCEz*rG~J{l1pYuyzf@UNr5 zgF++!;nr9y$E|D)h+zw`4j2tYypcJB%#x|GD;i<>%doD_6!>)tg8LNK!~d`+VE3&x z&|)v9wGD$v+uUHp#HyPOs3xeU5K|FwRfzC}v=h0A_!l5oP!1vg1VZ5huAL7|Ygl#v z&J?^p>HBTFA^ALNAhGI3AIZ>25C>3=M78+$#D8^wF|z}-h-og%~nRSQ~!#w`-O(Ui42D}no^({vY!_}!YZ#fLEI24 zf$OKR1*pSty)I&(<`7u`Ny3S6*lRio`U~{QyoP1@r7m~`B_qHmY+uabzTTt1c9jJU zc37=*UG|+1)KN%4mY>9!|HZzqC%&wq%@_d*d`L+*+|wE zR9DyPxFN0+O4$#e7=;zG$l)hqk_MUzkpbbWt%K_dY!~i;l;&h`1~;?Rem=5D>={pEmOR~ZhG zd{9QL{{yu(cB5c+|0(takS85o$gSszhMCwPQH9nnZ>R!eoL#SjNQe!n0_FpI&%$Gf zO!uz%Y}Bq$M#uA9vDPEL&>F08_&~l; zJ4>)~q7=yB7>rN@6f_Y0zE*e^gs=;M!?+7#rbl~C|K&M_)gYiLzw6rnU^NgM0EDOq z@s}H;T|l9v5W);Bg{`3-ibC;1Tr%`Ai|Q~6TmZLMqi7(+9*P(`JKGyu0(q9o`zs0bgNZ zk7BVQ90=kfzIG}9nJe&W7lHR*Z5fD#*j4=x1_Of}!4PVc`voRwus!yYM9!ME%MtmF z3S5L7Hx5pgi1R&Kqe<5dB?Sf7GXB~u1w+1+Yw$dVL(D?x`i`sOU zEdvt+I8X~q1kQzgwS}0J5Z?uDmWAIxEmfq*TBD$asiDcgp&l5nZgu+Bwh1c#v)*Cx zy@)OgQk#GfhH=Q(M!<;(YtP5SVruIEuq*%;Bfv^9B&`HGL%t&7s*Md8Bb^~KCsGzA zpd)uof!H7zOb99iBVdWLTp-sWaLwO%vaNP@O&h_o_h)@wcP1g?5(ZETerm49F0R1Z zA``fRc7a)1L7lDGn&Ae90HF$ju!1VRMp8r1zq{pM!MIktxTa+Q_xR&3{tR`2DCfWn zuSlp!G*3jS13^VllmuZ%Rl8>2xa1}=4zid;i z27@2MpYN&yrLLGp0zc#wRb}H0DK3Mi`~3`CDLIv5a>L1RewZr5rrW{k3_QMU?jSKW`O1F zZIGS{LQhvd|2UW!Qy)y+1O^t#F{{mUC1s=%I4s~22d;l8q z0oxIszyrn4aihYYB6rt#Z>-#Las6);79w;DVw`^=!`7d5bsY-37EX`?ohE`Fc~9|BA_R;K^It~=|(+(b}#+=X)9Q5-J_hi~u);MsT4#O;G4Ml)4PqR8$~u(Eb4*fN-%Ez#SO_NW&7svlye*W3542=_baF4b#oFAZiTq2*RpZuIOeFdk|{TLC7sM)C_Tb0)_{& zUzoZWvadl^!X=E06pFV1C_LnrMQ!oF@8{a)@d&KX=&g~Lv4u)7gCMDr!Qup2Mujj@ z(Xd%5uonPm3CWbifr$IRWan}+CDA6aTLnfz8N`Z!whjQ1gAnl~5VZhQj7lU>73w+< zq_cu#YhbxT?n3M`P{BetTXYF74v^qi{yUkIaH3P7nLDFeAjl<%SZG0RLw{jk{kHlA z!U2Pc8=@h?JA@%P7`ibSVSrr-b~b1gAT=dIei1iQ4OCZQoC%_OPw zyILS|AEYivtbA*$(U6m2(vUx{qYL?;)urTRj%&!PYpkh46`2Giw-qqqNaiZ|hR$+@ zG!K*IO488T6qOl{Q_j@J%@lT%A!L*Tl_lcK&%~*1X(s`p3osW*IFAE3iV02&5>9nj zBNq<`_@M!R;WzRDcfh!Ul~N0lWHB#WQ{6n#sH&ul{6VQ>$K<)WNKiF`hmWz7 zr2{x$!bqaheZh50CubKaAOzqHOv0%Iftt`ixCKa{*(NR)NWwf+Dlll9y{4TdVo88Y zh_(lnc5Zb%kP3fo;*WQt+ko!*&yBM&GDq@#02 zTnCv1grTgIp@W>MrMU(C6oRHBFGB9YISn`E!L!rSSi;WS#uS-v7-tt#TP-F*9um$I zD^Kz9!f+#@Tut;n`b%ekQO(4DDN}e@gfM2Xhvv#KWQa*u3^eI|_Fc%hf1qxz0iZ(fSK?QQI z3Kd?iJqb~@32L>qZOp8!tn^e=BnpDwm#Q>J=ZL8u*kT5=5u3dBX5|? z^+R-OS}LRuMe8;`dGhu(Gj61+x_W0Xu7l&4lau4v7apDgNlNlB%cBKh-wn14;ScN` zr=Zxeor~D7+eCsmC3$Dv#+wVx8!FzCexau9px)Zii971xxN-UA=7HU~kpzX3_i?Ol z;FzXup$UJ(f_L7d;E0XQ=2xyu6T}92CL0_`NlCMpHE9vfs%;ph}7wrEgj(o zM7}rfdyDwfeNizHeYFkW5l4rKeu;%1Kk{lVu5Tp$Qaxj9Edj1ng>VODaJv|;PpX7n z&W$TEWOW}l4+Z*mEoCZGcjD$r4;K@SW7s~86yd4m(93-zxQ;|L zj=OqZZu;_lac<K2j{Zen77`{eD**OfE-Dg53@wLa0h zP8oRTTT=GimBx872Xe~&5BF^)pF3B{lw44-^fKrMkK);Geq33r3FR%s;dH{!8Hwg- z11?KVjU4K}!FEflJT)R%9|yRJ$G!;FR%dT$lLPG6gX*%f}I37u1iO~aBdF!T;}2-{aPNPPlF?U znl#*p_Z8_@3%u|9pK;>jJdI5EJ-K+bvqM%bvfQ}fvSPsk-tM=fK1Vj-P>u;o-<47z z9qYqgZr=5#k%QwE`+`*St8eoZOI_Kx0c}rW3np?@6hAN(U%#1m@c^rWVE6-W?yzTd zq*4swkG#}vq?1}xnmkL6_ZAbxP>fHMwvOL*OBkqqw_WF;et4;XwdJ7b>^mWg9(NlH zb|dqV8V05PXA;yu)KKx=>fX6m@ngu=!pU0}YO<7W9daj{Ci}Ul&WLCA$0<4(?`DtP zu0d|6KJqpFfOo3GQRe&0ix~p9n~YT4FD`fYPYh*+bNkU=eqpa(_px8|`5_L+uC@ak z8wrC5uZDQuE8c?}t=Dd|XhJMO`8t$b?e(~!<^X5u%ktM8PHoEjr?XXo-?|j77#{0-^;v}=oYl{-`kT^Z|(+in46UEA6#%H55T#2pTOr)FK zJ|--X?ap@gaD(5-{0=&vtM9G_q;5JB7N}<1;-bHmVDOz7U@CM5_ z8Eh*Nofz*fKI_x^Vb|NoUvzhLY?YzwFVrgTPDo5T>-uWbf`)mV7CmcMe{X?zuU>zd z-R(nPh}lP3XKb9immf`^XE{W50QctG15JZu6c;?Jn#NqOTT+#Y3$*H6QVfr>IK~`#fw``(<)r(a_^jde3aho@eK8h zO3q91JNG6hw6ngqlNs~V?RfujiAlE2=2i7<0pX$M^JP)N*3Tc|Gxzc`oE)R$FP2Hq zk5y(Z6N;GDdj86Ixkc*jvKs9 z$Y&R+(`ZwEEt=`W*D;UZ6SzBXJ6StX-h0yTjKX{T8}4U$6@}#Qr_xE641DkUIF;;* zXd>ms(tyUXPt2Cr@*WW7QS!Kng?)Hqv+?wVCpSGoHERajWyiowJI71hv2)!|sgq8e zo5*JFI=lHeUAXDMzEiX6RQFwt&bMF8Bl15{dV@>v%Fz9*6+vQwqZicb@#SXt6;%VW zvMdRYA7{LM?ETe@6T^1#9i53K1#>RRqzRNY=67~me&_S*xjZ7iOm@`&b>v;aqXY*g zv&L$=8#_HJ503NYTy|0!y7M$}`%Go&oiZwqZP#&f;x6u7tUM+CFs9t+%Q(^0A|=BX zMPiG^u#wr*3z436%n$18jUUxEMCYDTH7#pynKc>iIVBk7Ns_xLdfKhw`)3DjZ^m~N z1W(T^r)T#Q9I}Y3dJ@e>WIQsNs5J5jZ#%Lf=GM zXgR-gdFP>LWgPXN!hyNt(td-_m+_(uVwmR+fRnZ8?o=AG%`iQ*_{yBwrv`ViEg9dv!+1gk@;7 zF&;1d=51lGN7N4Pr{COqF;?-wapInLavJe{Q`3@@kL9wJ(@H#azHM+_ZZ*($jOXzE=*%NhsePN_>AD|JjG=8C7b%WUtwQ_i|@G(pL`q zTluHOF=obSWoJ`KNhvzjypiZFOf?B_ekZcG&!g(7a@V;B<{Li*HeFF9uqr>y-Bnf< zKkkb6C3pC$O8-M+Ifs{W_(omyH44XO9(W3Il{cxJdoLPp@%EOCNZm!|!?R@pA7xGt zun50aaHG#qJU~~>(inEq;HKfTN0Fi}^ztfq3P@YLFHopGPr3C{V7j_|QI7b=joTZe zaz4Hst?KqZTP;SFb}Aty%Twg_h~dr7Z~fvPC6~uPp1rlfFUEeqZ7%J7&eI*jHO24m zh-3`4VQX=B~lw7d4BySlkz^BhrOR}aMx`5aQt4~C}DZa;VH?1n&wY9^&yNS_vhR4Jxt=Rw1)}x)Uj2UoeE@= zIY*Pk5*jEz5NCgpWWlqtKigmL{848%bB(8dT5c_~i(7s6KNPCS5%W0s;tp;FGEaUZ_Dwz*Vm$7bUIhbb+d5}uSI|(U8?D& z_f^S7w++gki68VXt9-_%s}NbV%_(~PhWO$%d0V=aUbHvw+ZongX)i}2o7`_~J&s!n z!z6c=`S^eD8%qEBS<_zCm!!cD$M9<1z}%#7;hb4;0x>1U)W)ieW}4-Bky6Q{4F@+U zbQN|H_J5lSJTLULj4)uO%{y@ztS#k zZ1-r2vfMs2!O%FnM^e>{V$k7h)V@t22aC%HEa;z(`TL#~WVm}PCbUOO&28vXyQfe0 zq{5^7B(4QtF1#Z(=Gc8|^vaXtrXn7-oTLqP z&Sgi{TvQD@QUBTBM2O3QyQt-3TUAQvEa`|hFKw5_)T0^Agvf>IAJtk4 z#i-}2!pw-nBP%sp&+l!We0{$7shGJgvA~lh^-B|xliHh!++t|QQ;HOAlNcZI`jX?Z zKHi>@`K2M$)nm^2Mfg(ebnAPoJX`Uh_m{tEx-8ojma1HQM(h?x($~dsH}aHJ)VVt) zVN3lQE?3>UDuW{I54ZW0HV{g^)$3|JrF%cIVsBZ5vbIK9PU7VqXTx;#cv@_H9SKR} z4(Gk}VgvwgjFjRlQTy9@@=NDKaDpQzZCD%lZh9FV-E*(m&|@JdSg2n9(Y^iUx+XY< z`=7PN8@^#YsQYaCP{+e-ZugSX@?j)TtY-=nEr^3#@hi0)a35uM@-g zwamgg>JSrN^@C+Bcq42U;cSh^FKQ*$Z1Q@&Y21@KNKI%GiMT>75s}AkBVS)ty&M_xOMRhvz-C8!6wpFt;-0-sq9REnWjhC$i`I@o&Q+D!2El9xDi^w275nIsOwA>lWywlVy>V0qL z#f8T7YbtZpAq7tcg+FhOWZkUsFx2jN>4G$?B!HATsvRy&SsN^~N)cKoA8GBczxjal z39B9xIeUSUi#biZPwmZ!oKICVx*g$)9Iofch?sq3qR!^rVydE7+m^ZfWX`ZvPTkbf zNVtP-DE?U4cRWFgEA={E?urf!<}U+8LfPIG;>HAJ@Tz8gRBtmY6Aav?*TiUip{||r z_?ApVw@)KkQzsu3x*u$+3Z=lOKELhS^Y{WBm#$(jhFm(9(!!<7PjZw_j}56xuy{7N zole?(T$5y2sibG{RD_w>H=KF?$0xdJ$@*Iq;dHIXYupn*Y-1BE^~I^Fz@Bo8CFs!Qa4K<+Ur!W=5v+hdZ6R}q~)i) zmlVXF?mwqwlG&f(tb8yt+lzCTd*K7gxXVv8-ncCY)Kp&cBMN@`PbY5L8UFS5K3oh^;lXkjI>e64rp7KC6 zdLZ|cHSMd6;?FKD#xA3x9STHqPs^EKSyiP?+@ld>W3*L#B{qNO8=ps_ba}qrvW@Wk z-qULP`>Iaui0E08{y>vJb)_y?%&}HeSyC&k(no0S{a*1dfn}z9Q|4YxjWK%XYw)Do zHqx+M>MtS_QLr)}WZ2BoFKOa+gx_i;{lz=;CeTH0U8G5)aSV~&Yb-e}#TPjva?ObP zs{BZHJmVKT6Y)*P$(y(NMEhkv{My&YD$SDCg=fdC`q(As_TnGUJ}O|9 zSa9~3gd*e7=TDOhC3C(V9-GI1dMYovN`6zv14`DU%c+Gg&I~f##UJV%HoM$*$CKs( zw_Zje?#@rQ+-gZ_C8?fJNwnvgaGy+8=}Zf|tt@J?rBCD$-6oQ^i6CS(cb~9oR&65ZAMLr@CpgRyAuV)dOAll=0-g;J$Xy9;~-s7YWx}ZI!u2&@kYhI+yFntG@5G@~ml~b9!BFqE zGxt8zX~w1pewEnoTJ%-Ai72rwKw3I&WSCVmi$xMYm9%Qxr_-*R%oSy|vVz=)Lj?_U zcrM|8C5a`O`+ok#VZ{X9!4Vg^?<~^u1%7#Vvr1oU%@sX*C=xs%mZMi!T1kB{u0U{i zR8*T2kKe_Dh&Q*!9;VxE<+$748KfpqAr^NgQSpre?H*-@Gto~~TXRmFmGAD`*h4|b zcH+Q;+yhd3q9+s!7>ovXo#PE|(vSA(NNuiWeWICP&7Je;rZL9^WzVIXye9<3lJ3h@ z-^QUJl&a&)RMOhzvWc%+Ds7+7xT948Z^6rApFQ8VoiqF-ov1EgvnS>D5i7R}O~vh8 zq+(-ie8daFJY<`9RPb3Ci%2S~-m@JniK~}!pVz{5C$DE8e0Xlpm+Xh`Dc39Z8jbRl zGrKQx@!RerjDK&HDzMPu9jFxjZa65ba?hX!^_7J8V}*uHls)qXU!SL=j8YA!p? z{><$+FJD@^C&KxZfWdZ>d^S6!)8ctoY%Cc~(O3j-e{f^zw~rU%o^+E{q#mrgLr-$% znDs_Jywo-w4PC3$_vU#IH@4}$_?-NJh^|?+j%S?xT7t1NeM}wR4zR~5KIp{cE zJ}l5!TP>1w?wQe2#$Fjk>zjsG=LiRHaQZD@&Y{s6Uf1 zh~af#x1khnu?yk6b%F6CZKnv@?=jaY2sl1v#kdsjkW3zaAp5 zQ2kh8)Xnb}GS!~UREOTUzB1nZ_1!}0d5R$ITdZ|26e>f9tCSN681pDaE@kqo){}G` zGAXrCnY%oB{(Yn-JUN_oaRK*GVH`z{pP!J7Cc5jCDJCbb0+1?Pj7!~a8~|>OdW6b26>)0 zqV=`GlnTWhs#EC|3H&=O?R#hRk`9y$9N<58Z#+iZd6Vu`J~zASi|)3|Cv6ztxaHSV zZI+#-A21tpYY%Yu<{cy4;)U@RABz`vd*PmFx+_#bcFTMRFIDJ4_C%7h5*1d4%cJxz_sScma6X-( zs<^`Y{A=I2Y4w1uFmEi&y#!A-dM{}6%#hk$HZQ*wUhHH_Fvw+ zH1M9Vf$!@!)$TJdUQ*<9Ios4N7;36-XV%%Nkyu6eVUxzr9dVQ4G}|c{)f8?ezL%Hs z3^|mv@G@e*+6i9u6UW9bMc*QQo_aJ@>$!bUL{l?qj%v)}Jh5MTrEmPJr-_W^Lj;RA za1(kc?`1vq3A8$Y$?)c3#cj<`2RT0|xOwBGiYUJ+dV9-#`}T(u`$bBoU8QV|_66G< ziY&F|^}NElgnw#&n_$Bp`S6Pomp*UyFVuI;iXYwZg3Aj8MC~c@lM@84m$vCj?QtNS z%5$Uo^oG0JG(Yp^p?dPv^Y_RG@3DV2(C%8wA?kgOU)9_Falt8rg8uT_e$Ji_Jcto>b5w+i>Yj+pX{N8!O%}tTv{z+r3`}WBa`rG<4eB-SD z&ZP2u=Cgw22g2|7WFK75uTU5k&X2ngxl7qvH!L>)fztOA#hZ&qjz#Pq^J;$9HzFfj zsADf#by(E<+m5MYvK$F4CJ*Vq4Y8@*dUX6qpFB&~gk0%u-7yPJYBQ&&_vogw-TT8X z?xZX}EGxMO-;(WR!>!~!W*xU)G?qqxP1a+xKbw2?mO**fw6d(oJe`sH89R@W2(r!{ z3}$qv{Q|seRV2#%zH~IYYie2!*uTj;xzI(nU2fs4z8EsTfV5u1ZOWZhSKZtRguMzBYpaBZ>xpiA zfAP~&3TC)cEckj)tgMTgQ2KQnzGA!sJf3O$`Wh?wv(0uc9!%>w_nPbYOs(^wm#3~* z?-DXp#U7HU!b{VY%#_iesaqi4xyk)W*2Z@%7LQ`i=kB6@M_yWd!TZyGlKN8@UP_q` z777%fyD>))QJixF$8b2?l;=urUagF!t<%@<7bmqoEC?sL#Q3_WMC^5NAv*kFmlyxF z-SMuED|2Ev3$~NYr8CV;$7LPx-A-tyKUEVZ#6rY&Q6;lYjQ#*?qWzU!l8i6j254l2 zT$q0oGH0fw@MM^Tf>I+ z;!XMW%LPLst*FM&_EYz;4lGW!sO>yBz34o1do3T zm+-zHXBROuPt7tM&cm{}c+}#M;cvq=fEZXdz3ll3nB8{f)kgYwOEGRsd?FatvcoC`U1y* zGRYzBg%JLCKYBOO3`wpn>^-SEnR~rEOL%S@XNo_u;pDY>#4ow!;g!gkcvie*YPuHr zU2ePB`Rr5l__ z)s7nt&0NtNPuP)vO#Eb*ShMn1=F5Bx)m!4PJ}AAO9%fvhb&TPim~OramxEdjo-p-i zfu&EczPfBlA9_|a%j0G_%${w>tlIiu=2{k)xrmD7{*SZ|7I*A?7@sa$`|xfLcY_1@ zTN=)L_{C?GWkT_H_!;;yo%*`;X~LiC!6|`EsVGu05?6|g)f`_Q>E7JZxsCrlQ`7@( zl^c5#+mEI0^rF_y+(b9{MCRZ*ubYQd7Ck$*w{jQbJRYFmc*4rtI!#->kwdA1FW%<# z^=yH|Bty?Mybc|YE7_(#9hY%XFHpmIFh3%&cW5cH zEoQs#J?C*-b@3Z&H3QyM_D8?A6qAAlL{8kMVNj*^EQyC)W%C&cS+6Ko znosovGlKqjX_G?rAx!cvd)?Dy4$f=6{t)}#zQCsC#XEXwC8LJt>Q;2a;>H)4m9CM^ zyqKu`Eb3PGn*6l2#3zo!410Ze4}U*&H8JbC#r;OD)TD*UgDq}PSzZaprG$Mw|b^Vzp$Ktz0R{6`BPs*KM& zhf}{!e~30ex+!B>y~fU`!o0AzgKJ2C&+)Na2iSKNg|$$9X6leAxuQh>dSl7F-jyRQ zUrKi+)0tD9)2%6M41f7fEkDexG%+!iO@y+jr0RQ7h088~VT-1rv@<8er`X~NwOaBr zTT90JK9u$c8ED+Wv+Q}hmp4M0oAkpw!~K$*87@;Evwvx6ZoW_4rvAO8yyv9si?j;u z$^^0NrKSg`NV@{G0*VQOq_?-3(UhoPyTRK>vP?8kX>e;jbRGg(LvU56AV>`)yI_I{ zbAW{e{2>QK1K|ZHDToOI@jICK0LRJ41X0rAIzME*;ek+R;GDrEz{P_q1J9sJ^9uq1 z6T*G+18@_44NCGsi6BmihiK_&t4v*d&CsAnNQ2yz#>A_Qsbk#ISXL`why zK0rChtOv+8E(G3&^#`I^!F}{!$n4GZZ~m`+RuEMW^7M~y{E*NLV(S8wP7wUqAxaYf zAqAmr5SpJ!5CV|!FbM!SlbcBp9CHxd8D!3c-U|aJlpos5&jk4#k&zKXP@=*RLY$jP z2x28cJ?K6Gwq8&exhDt?2v80@p^(u;#$5nV!9pt|3lO!H5rG&>sJf85kPr{Dw}E5) zn!i7Wh7Th7z}UkmLRx5m%<@3HP&ES96q!Tt4`bp3gej6V8kr-c{Yc_JxCb#m;LT7@ z0J1JYMpq^wK^T8U}D|pc}&9)lH>^r$AOZ&9XP{cIjRWk1NBiYro@v@N3sTiwVZ8;@DDtQ&+ z;HCK~+Aa6B#3+v?wpW*okvh)|x{7?z%+KF4^{Ode%>8QF<10fm!&}?hdh|RjZA3&* zooccY6%&8dSavYq&0wZ!U;E>!(J!y!^F&V{5Xtu5w_{#4-_QT>&{Eq{Li90p(!)*q z16?ZlTgb=HiqX;czjW?BGQG_tdh+FTUy*gvwKLr}L=4)rbQ%r9ocT%>3_q&2-m=SB zN)P^ai-Rgk(^Xiv{i}|^@ZrdkMNx{prpLh?CpnrX-_j=rFJ0j~EdB9nS@yX$?}zhQ zwXGkfoet5nn{Y8a(7K;Zr2XOTa)~ut{E|@DrHLhvY^B=b(W0u%?7okgj~6o+AAX3M z*mjD#@<6uj)Hfxkq-^o9);h;II*L18F?eL1{2Pu69l3cuL@W~L$c0hXeMAp&Zf<-f zgi}XZNVL`WX{Fj3CRbnSB3()=9vr!=K{)BR-fQ_iDa7TH@>J5BC3|Z0(Aed&JTCo4 zntSGZ4J=$fT;#g(LicE3M;I;_#j_nLv|ECl2k0V$JIJg|M9Hqo;|vJgD4rVgG@lqN zdgD{PG(e_Jn&S8>GAjAtRfeQJ(=pV9W7RLMpMS>Pw233sDBU?B!l|G7e9Co#4uW3l z=Y2s&BevluzLy0mwhO+@m1`H2rSG4o4xBHuGuobdcpte{)u+hZZr2-rStUEDzQ>Gl zw`#@B#B{cH5p?Fh3{`gBTc70Uqy3duos*gStnMt$8A-ZbzNvMJEEaP2u4=rG?M)0Q zR=7uA<5!dAhTGUW_(aTl^Fl4p>>bTf#TtM8L*(B5duQ)_{BpJ731w}PgZrgewWbis=7Zw02%?W32of<|uHy4tu{IzS8?7*GI^uV9Xa ze;Fj?3TBXgV2-(jFeqZ6h#&tF-(QSd~^GA z@|$n*-uphQU=XUl;GnJV9ulyp(>tM@af1z$8%}va0ZZeEgKr7xCwg4mr#Q_=0{49C z@s^>aB;g7SU@{0CDOY@Ih@fE8WK5ZaU zkrlh)(2?z<`VYpwaN&i~?PBnu3vxIcDEOY9tbphyB_&O-BV*^r9K2$@VQnIsbn6W+ zdQTpTn>-N5=cv$+$NSRPv8-HFe%puHzrvdcPlBo7;z7z@Qa@pwp-w5_JT8 z!NoCjD-Su6MznC4;VVJl5x=~d!1gEfdEE|y<;2*iBtSc>jjS!q+;u>O3LlI8@(@P;|pXRWehV~Y_Z-mi|lo5>G(S<2^ATrtBtIpP{)$W+jl zWw?csdIL^dn_rpGjQKhHjd%-lBdN9ILldW}aZWSP&^a>V7L0IH8c?{uoO6A+`zg-p zIsNyHiewcTlZ=W=loi&qj2DxX@hhxJU6zTMzSBO;IlqLrrQl_&9~0MBn}}H=w%P3q zvfF&RW=ys#v*31mw!h^Z(tqG5+SWGGw~$XbGQZTabnc$-lfwp-@1D}p?cLEadEoX$ z`su{x__NMr#-_O<0!>~_M`@mnj}?|DQ=4TDJdXFjr1$OF2e#6=s5+KSFkG<%VWGaf~SjPx?P$q4s^wH{=?^@Q+vsjGD0>_?3WJRJ51e_cy!>!mV6fF zU7=S=62_w2&o#1BIUkLU{oF%AZn80v+IqS^wC?C-wWv8uuB~Br$yK9LyR9F4GCg7; z)@RW&+smsKTO|F6Ex9>_WBD2@gI5C2-mgtVHI`2BB~Cg*Xjmdd=V`mi5k)o442G zZ^w(Y;{DF|Y3_JS@w>~PzituwxS4&<#Ufird)RyVv_eMFXeE)+7IM?g(gD4)XCnB| zs!7x;J(MuqaQ*Y3o#yM8PMs51!sPe)2g)3M&Uoo@-sNo9hi{p8_ehzA5X&V*9I({q zXb36s;h=BWm#~Za>Gny>aeN*5Wv0+HLwfD<8IdB*><9B3vv6W#%nWCYW#gUbwKfH+ z@T8cE&zZ?S@j5gq?P6D`(vj-;kl#|~{T0diK*rGayqfq3(zo5T#tc%%AJ5(mXndew zlKRb4^qSn2MYHjnSr_?@TVx;1eaHP4Sm!3KX%xbJd+W)zsJ*SX3i#w0tZlf7>jp&a zpE-@3vu}4=qK|0rR8zCqQ&(@5s?+yrN;W3mpUO8d()F;Ku0yGoNT5tB<0j4*drxd! zj;Gmp*dbe3$$EIK3w@mI7o=_ciozxI zW-84* ztM;GF#~p0I{Z^3sEyf|2%!kgKB*{`CyF;uY@wjr8Z==IP#zkv&de4&qx;>L0v!C6V zPT3JX!N}G>*rehaQ%t1npBth|MmMKldvEI}Z}yA?;_k4Z&V#3QaH|x=r?L%Y-k)iz zdHPKF+kS>#>k-CULBi9Lrj|$O-f)M>=4w45?Zhvf^(XWXLkFYP*XY-e3A0by<KS=}L0@?3k&-)eGA8t^4O zd=u9#;r~F)<<#j#g&LAO>D({R?z;N8`uMpMZ)@TVN}OBNo*qnK@r0XDSA5YXfCe=Oa9d1lY~mb{8(v<&LKDQQb2YYmmOQJvqt0 zRL!iAFzz}H{iQd#rZu!PrrIBMg?o2Pml7XVlk=(VnjzNJW>&g#@PqueyhEF-L-?C* zw&sk4;Hu0GT$KsVAIz5J>u4MeeP?rwcZ;-)`CdyXq~o zgIpOAN)On^;>}ZIpBudoOSz;K;T9Vbl3()L+FEO&?BMor>VlbNot=bT_`n3atdpBWaS*SbKjvIdr~}Xh`RXg_>{`j_D@Gp6m}Me_PXM&Q37Y)XvpLA|&pO8#ix87FNo^UM=-v zS8jthqmT77_QsIcvPS-nif=s=#XoR)sD^Ugr{UQ3_==tt*B;qDrlf)t5kuuJ4cxW@ zKF(=8oVm%ApRN@Sw$9$8aIX9kY3u0rRKXxIE`&m6sdu`9xszXQL8ya+uY#HG@Wk*< zwGcI*oPZL6+plJJSROf9dwaXsYi@HDC;44^K1EKvEMw0y2$=&{#VtVt$ zk7`~%Qj(3gu&4Sd?i;hE-5wXZ1;_etY-pLXq5ZZmM_;>B z+YI(zZpK?5L_#+v13suBk*W)_2UhuHewX>JUefPvo4+y7tCXuJ!U;6 z7EWvtp(%Nnc5COpg|eztudmHivQwW%i@qs&TksbV9=to&cA&>Ae&ML+d`&$XkV&t&Gr6j$r8M`+=y~fq#PWR%u ztjIF&<9kIl($uw5l2n84c@R~U^1b>2WB0yp>*#pO=0=-Np2sn{3jJD3pCudvd3xA- z&Mbi~ExUm6`{1!;n#vx7&))wJW$zdz$+EC*w{6d~ZQHhOcTXGBw(V(5bK16T+qP}H zzn;CnbM`*xIS<|+6)PhuG9xOgR@SP@E3aEfPIQ>h3B`>)?dJ}iB$wBur-90w8RBZu z_@ms7-|Rq9p+9&kwBc#k%+C(5^EuU4o;$9>*!ik=L#3|C5j1XVjMvti+Hhs_=~fF+ z;8D-c33p)xU9zuVC$gws$wp|NEg-q*XEqe7B!Z4ei=pZ>fP0K!2B2NQr(v2ESHZ1+ z;bsLJ<{8#qDputJO51n_=YcGEzXa+8rlnmOr3V?Y)*w&O*T< zMA1^Yvp_}VR9^0ddr*s_r5zy*yK|FMsNgByB5{GXl2Qv_$~3oOd>@|VT6k6Lxn3Gj z+^C9>bw0AN@#Y6^wJ(3_BfOl0v}~IvI*i+`psjtP#8yn%&P-+Ej@@!Hz8Kjfq~A!~ zJ5zYSy@lmC3;qphqq)I2h{K+kt^a48>6v^#(%?(4qPkC!Ol(^1`)FZRImH7mquwY|CI2EN634r&SvBu@vd~i1>RhbGtxhmA6N;MIJ~| zV;vdikINXh`zGnk#4XCD>hHIXd^igGgb^3rB#1Bfiv8c+t=+PG6Io{fr=72w9y(0i z0v&;GpXr>q?D{%>&JcrHTjqb?oV4R;91gafvu{g)vn@tLAW^}BLmqo!2~TuOQ(s79 zmK8)9tr;m%;FsoJJqr=s($BpD+hJFbzehL>&)l_fL}PO$g`2A>tI@;i`)VRl4B1c@U|nAwfZFrBY_M zOFA+`am$aXsrliIrzJT6YIg#%>uOV zAk;dcD$PO8Q_xx>>9%LN;T{HM@D?jaTbT=^b!8pntqRNl+tLmiTGsyUlHW?(&Xa@c zm_{8`lGbPxW4+19rz2`GQVKvh48d zCOIaT2>&5d!uMiw9i3h5H+2fOQY5or z1vMK!JFx%@cpEj1VBlPpesGCunwF#dLbwz0^Lw;nwi$kqI(%vcVgB|~8gLv1_WqWv z?Q)p;HL|_uU*Q`pY9kKUN~uw*Q#HmAa$pqw>ul;QKRU-j#*CQ4UX9S>;RJIX%L#t8 zSn5C4LcUw0)bCp|L_iy0amuy?52R6gfL3f;d{-6A0K_+`GCyg16qi`HI8*&ejPIg7 zJGA@aH1U?8I3z0ZlI|8vBUiqUa6|VawbYtZ0sorzH7z;qS29)L{mI~z4Bx$#@PeaI z1?rR(0K(ZlhczIAXRmGk8L#*7ic&0i>$OpVh#36>2=e14 zmjgu|swD|PbcuVvDaeu24N=PzN0!m>cjZ~3J(yq54o|HfR5+A8X9xEy zP;+U_HRrO?393=l2#Vow%_&Tf&$LP9$vWb3@}7_{Nwh5{q@)lAq}3>;*~3JOsd>r5 z2K$q6N;yY4!%NiEF-o=WRVk4?r{~MU>Jzg24w{9ZZrxdA;IP|FVI!>KYMpX&o}p7) zW6=`hj?Twq8|e&5t=~2Woy1Os~El)EQfv53aoZTjn(9Z{v0Q+K#|~dB*BEQ* z@t+nJ+1I5IVW-jeZNye4m)MgI2wLfQamLmr6K|}?X7nn=nYulB%xOi=|Ku%mJ*!)e z@lJJqjPXr)QlcRSL?5>&NeF{aHkW`dAW^C=FGy-vR6jFv8yTgTuIO2q0L2So5Z&yqPeobXqT` zp|s%MB0q)!9JTLgixGlOVbPYagb#my`PngNP@#{A2z?EEeb+`^0DZek%_9WDMX zDPFF~)BH)hJ6<6+VlkYDJ(dh}%~BePTfmnGm9u^|f+dBRd#hnX)B-gJN`NTGQ{VqHIqf%$!QADp5sxz()0q-Agx+;a~oaOE{$O@V?JIMu4Ze&$>Qh{VYZmD>6l@uo0Tb ziN@ymxl_-Jmh6EMy4zjHwP!kL^_)Z$3gD=~nE%iZG%_ca#h$UIUP=qjOt=MuVBHX6yn_hdiZYg6m8_1Zx z8cwjU{5FPiO+--|l1ec>fya&vf(}m&Qo7SKIXoBci$+`g!hzQU#Ob$c~hR!#%?kOEJo#u$Mv3j^j^FhMe$I(@4 zXlHP%C-!Y$8jeZo7EZ>sp%K0)-LfD)x2`M=WJgcoc5*zZ*d|G-pR_W!dTPfEJXS%a zn7G?*kuI&rl$~?F2t5%#uS~V6sXjoNShcFK!!+s8jies>s{-m|L#o(ds_ENP+GDZVt+ zD9FqwNTMr2lwTBq4wAoY6!c`s(=KU9bUMX)=7Ll1{$fQT93r@IAqoy(cs2?duVXcC zS99&^<>kk8q$lg98&9Ke~B)$8jc0a~nftsqasn*7W=#O9)HdxvEnS5VYJWHq^ z67HNVyBp<&@hiQJpVT++Vg;^leCwmJfv*C0_l5ug4vr>F!}1Spf>)LkwtDAiartSA zOtzViI#N(GIwYK&p*dZ`OtVWOhM?m3Fsb4%=_IgDQ(e9W`ddSw#gNa%MW^b)o_@n> zgz|XwsF=lij7vLek~stoTHyCtoD!Tk;8f%aSJUh&_{GKVC$31lUD4Ls1n4WzRb8^7 z{+I}1A7j`~j-sjKIoMM@3I^)QVa>J^TFa2Uu?&NX3mg(QZq@Gv2}nU3WqsqQ>5Le& zT&Z~$9g}$;^IWf){`^XM4zvqYch)lIS|`P z8mq9zHkH7uBqE&E8reYFV|jSg7lDPj-}lU{ni3_u1P8wChm`$)X@zgxE~O06exvIFxLoTREhV zW|g5c7^Qrr2-XeVk?>rfi24DSmh`>Cu^M~pnx49@%n9bgb@^v$X8%!ScKF9)S3jz- zyP#ztrF^a%)JZM|413Bd?bKVnHInc&UR~JfB4sWWHmYo2C;p%~3JagqW7Iy(QDK=n z7}^tI?1_j;O~+0QhP~cAbI6u{Pr3ZY89EL}{Nnix$fzyXE1$6g-w%?+G>)xO+BdZl z4T{9tu2MkH^iHq7{5*U!REC|f)PclTW;+dE0A!#zVFSFXlF^(7{|z#0UD{LklXgi7 z)k1US4!m9(s`fZ8EMEWNd^5ul&@g(Uz^%Pds%g1il`>(%xgG*|>>sjsiIxGCwnILy z2AWwuqMm`Ba1X7FyJA^+u1LVBPB>`cgnqb^08b@&))&4gQu+cpxqLz`{^Q{fK@%x+s<-RJn*!m?;j^hD_ofjlSWXqC7xIW7{jCA8+=y z8NhGRKw(wCdkhVhCv*c+8GL|qz7t|mBZ<+`hCVpXtC~7w?X&IW?jClXI`;pXSK!KN zjKH;MtDkH$SMow4PpC(gwBj`;HO?7Cx3i146g--^yCZAHZf>N($^)-E8#2Nu1f2O+ z1r4)=WdqbvW~v~4RmgPz1*fe<(0{uto#@Dgu>HK%he`$7Yd`_re!nWcW2<-Oa8BpA z58*92=#6hLWbOW_NjX?dLLbGhr~gh|>ljuDo-03eQn;0r2RXM&x3e5pJ2a15*1BR2 z<8+QM01hV1TPJCF8TQS^f*XB_qexwEdNKX zVhlyzUtT@S0-t|UC%Crv<{r{C%liRF#@!+vNhhL+EZ7xirt*AOOEiSIG7W0fh$OHI z6|tC`k>wL3qyI$OewTl>{;ey+CmZrdmF0J8Bi^6or`hon zY5TMMjju3&#*zJo>3)}g_V@$P`@{u5k&8deKd`+&NB?s))=y}S`4brYbY*{HY`>93 z);|zL=1*+z(~I{Rgz<^6u`~T1=MUhG`Hzz2&*OaNA+h`xFMj$UKZ&=`E`RWHtiM&H zpAx;_(_s69tYc&PO+>PM(vhFj`#iws^gemUPfqSLzL5=&o$b$|{@@}%**M0}$^Iti z{{B+`!}i~n?Ej}PKac#$*!`{i$Ljx``umH0{ENN&gY@|avhqK%ckFa@|AL}eDNEa| za3Hjvs8$989Cb1C5-HHY0OuM3v)=+sUtX3+_3lE37z@_JKRra(SfpD05R90!ZQ|s_ z3Ubcy;u-ho@Qz}<5f0P6YUGvGPGjDv58gg6Uvoat#**DIJT>&z=JrD6E%1E6klk)~ zHO1}Ux@9NkjaXZ0ie4ydl&aY9d(jQTl?Q@j1J zVTG8x^6Bc$C9Ea*%2<~w(cqnu8b@}9^ZTpTsJE17TF{m9>W4TrHFr9Ea0A3w0ko2Y z!yU=ur2UWfHDUS>+kVaQnHPL0>5VW~#}^(P_!SzNl`Cd6Npe+#rlry_wtMd~vjNR? z-SQ^K;RNaDDL47Du)Jwhf*-nN{06A`gd<`RvSvsvAf6*cZt*nN4a+;s03>4#&h5Gmb%B`TiR6#Yf zD`JXB$;i?6dR>cPi?TRRYsq`S}Cy$xi3c`di6tXR=(8F41tyn zyxC$%$ERE4djyAueMDOdd%RI*N}0eDbQJl9z0?!+1t@FVzKd_tgoJNuR{OMGg?{=_ z8~L}qA)=tVSU~#ZMku4HFvDU&jW2>vTsa`DJ&Y2=CO2-Q){pOE7=x8(s9U4zzTQJA z7`sYo75af;7Zv?fsJbm*)2K5Nfn`tFz*t8-v5!|Iv1e;n6QwMhY$UHzt|^C2$|Od& zY1)CnMKxT3Z<@nZE~5?0nAjR)FF;y%7gZgew8uE)y!4{CBCxKie%fh7eW$S=qt_mQ z9oSU-*#AOX1h*lV@OI&N-@&@{(LVbApnTuau=KHR{PDu^!aI2Sky-uWKmHC+^1>Ux z^nq{m5lr&ZLGSuAzjaKkAg%x{BIoLzt8PIa)h4&p$vb3gum0pSy>tW1`__}0soSjepdde zGX2Dq|5auBS^ZOF%JfM_{`U-_z2m2$^mkg0k(s@%rM~NLIPjlszk>k(g%JFl(7$1n zf3*DL<^Piq{EVFY2NU@DwelGU{g2xJN(i#jvC;p_X*ts2(@Ltnz_NyitpF@`Fu8^= z;oS3y2=>Cj2*L=85fT&RIgm>f5K!mgL5NY1<6}!41oQA*yzpH7$p|(d@VqqN^SEc& zYqOH3`c`FzA+I84Lk8o6`U((K12AjDLT5to2?%s%b!2ra^gGvmAg#ZW%3mLtWbR$*+IL6?9YD+0W z8o`74Jwn*#Hg(8AX8TZGYbG`-0C4DN0mujmi7z>^Gq)l6`MU5h_|O9!0$tWmA;4S# zBDVC%Kti8IA#q$)iKZo0)D|~3bRl++2th;}$*!RQUbDnheGq%W{Vx640KFn%CV^cA z-XlnadLik)2R^@oV)Xp_@s0-qVvBs~nf zQJQBE9^?*yeI3E80S?Ht7z2op75P1R0zAUU4c{}sBNM0N8_K)#{(cg(o{YJztSkh~ zk>G6!uOk@{P&>PG{AI?7V{q4-{$YpexLi`)O$B|LM_YijzMPG2Nc}VJxOB+j20c0i z5*|JQAq6oxq>l?Q9-yA;mM&&eW-DF?|7OMI7)+Px=dE>}Pv2m~=w`pz-G~O<13vKs zhy~CRVZ3E@@~R5);dMeni2z~Y)5u{=b(Cxb;E#Kk*_`77!UCv;uMWaPAUxf@ETo=A zcBgI9!OwOabyTRStq4qX@}+)E41NG9D{lb;)Mgg4@yRKPD1ZQ#d#a%LD4G6fA(YmIkKSOL&<*$i2X__Vmh;A7oxT%ZU*tpgG6Y-nRvg3kc2z~+ z2D!U?wNb)^Y_9T$8tvQB1&6$w3IO9vgUJ-DJkbq%qO^VbU;y8yAQ z-Nfk8tW|kw>n4OSp%(sP(BvnR3tU1+rA{_$>hYD~IuE@i4}5c_wwA~;WXzU)hKogWX&6nNqa*DQ!+pPT&Q=03ZM2wNd;~WsS1p03DE_z zZtGW6DJJPkNO$^v_01$knTe=i6eE(&oK@&XW+#{1WQL0w=99L8SD`M=Py=Gq640sK znXAqvJ7oC`xFAj#mD|z9;CNio#>rxfqlZJ1sXStPVM9ytah(MXiFr{HeKF?^OKV6C zPb6S~%Yn=~xx8cWxms%FMzLeOBT+`SuJoT;YE$qZt=Y*8ebBgIA&VL`@NYngUbhV9xryZ`a*=x7>`aZDJno<@l@lQ^_{l=TgUesXH?HKo z!uw*IgR`Xbi)bTGtourW?pC=^#r2jHd5Vyrb$LHb)^Z_f^K)di8cDWCq-mWBpXMk> zl_lKJ_6LsD>XQ>+`eE&WcEi}L5ZO_N`=FB^7sOprKs6rC5}@JhRRz)}&O=45C1ihP zzbP;~!b8al$hNnAn}8z!h)S*A`WUTv)!a}UMTPy8LKM3zVgmd3-lPY*~XVtH2F`LM5!7!F05xT{8eo8|S8Uw>8DFbGPkjGsU8-DBhz3%SkXw|w{ea2=Yu9q-$D>?~@@Uh3} z*fK|#Yvj7r+=fI42bdHE4leymENBCXs$JO#oE3%3VpNSKH@5FcyO%a@jeO}9Q9ID{ zU0?kjA!^I5Y@%pxmFN7I?gka62(Z2N3(PXo;k?+Y2Z`(3*3y=V!rXqALb8MH;T0B{ zY*6!M;&|UL?MA=OV&GNtHP^z&x3UZpKK#CF3CKMd}l#nAosdem)u? zJDcd&l=pI5tQg2@QyhvkBV^q9*lML5&O}-{nVO(nZGgipn+&7IN;jSY?EN6o_4p`g2HA@#Y87R_)#dl z`_?1()VG6PABp>BM@h*C`@gMAvKLOsw7lFa2F+>S8}XtyqGA|591nc zK>ZsC6Iu5)=6LthODcPb*K%A@EL>Z{_7-szPc&3!6YUezUH6N2;?^Ec!aymNHu2UC zJly(QmWE2b4E5WkS%xaEfXMq890en6I-QwwJKv?*GhHc` zHNOAZwoT)K^5kOrAf`>(k5RF5IerLCE7h;M^W*F>_IhDMwpj4;VR3F@MZ4eLcNV(# zk{(On>nI~ZKRk@_CwtkJS_5_U6D2RKjgl%>q(~jNwi( z)wRS6TO|b|((Jp*Ecpxejr=8&>5_~Ej=?etbDR3vGPJw$My6_G^ujNK3;E3qTjM>R zG!EZ!ZriJEt2~rAYL3<|w|3KE$>0;~72%x2UxvB`4;c3PN(;OcH->l0OKD10L++F; ztOz9v9|GiTGK2RGv=0K14i^I+oEPZ}cQF=7sc9`oVzI85GCMtQg{>l$jhIhWCS@b8 z#TX3%J1B;d(`^Ji@g_L=CDUeS!U%IV>RqJ;=9WLb=1n!|+-Qb*I(`cjH(!!vpopZ! z`e{ZO?Ls<`No~a- zxwM=;kt%)`qTxNlK`$61|Z5;IKsgtvL|uf2lX@bY_?Xv zRi`fii1gqV)2aEuy_LaF`@qXT8}=f}S{U~4%uPmZ zUHDF%7vvme5Az|{}636;7B)^Zziuv zgRLdf{+6X2{G~DS3c<=cP#>mN=iHj8R*yC>gz0HocE*jXA{~##&0c4eH66%#&h#<-8tO)XKC7+`WOaLe{UR8Xj z_nVGv9BVL_Hx2|1G7a2rK_3wV&5T*^Y&5abAW`(pJVqE5ag`hxGz5Be!F z49bB#2PVDP!L1}?5;56S(&6%8^0IUJp;5rSC1T4`cR`L;5_Aiq3ulJNQ<%TZvgRs8 zMpJHVz|bE5ldIe~v=V2z$}t8JhP#Zu^pTD5{bGY^s<=nET^b0^3x)@|E zt@fz{)MRoJXPAQeL&cA%TCbH0Iqzb~AR7fKKL7cVuW$uY+y%6-z}OOd3R}W+#r$8; zF^^gdal79%l{`E*D6^&AX07tpb!@yA?KM^fc-hPFFpSk0M5kXvChxMt#)G{ecd{th z_8Sm03Gb?_6TH^el^2z^;O{FJ8rzs1r>?#o`l6wM?;Pze9;A#rN5*5KPM}y)=aD^C z$B`f)2B`wD*!Lt){0K?!Q5B_0f|hA!pu*13Z+J?9H3z)2k`h;2g8m+LWAMZHq}T@7 z)|!7%JSyH-r2N^skyO4GM81G!Albi|tddv#8=e)Mx=jbB57zYL<QF#(Q3TVVz zU(@|fBij2i<>PV1cZ@{mc0P`^vF4d-x9UhU<={T#;sesPi%k3n=eyd2?(8{yWQEYK5yuDBnP(lkgw0(vPVjDDGb5aR8&I^&`Ai}h!SEq4?S^4rrPk6kLV0&_O zD?>6WQYV@Z>qd};@yG#}hwaUeLXDrymqmZhpZ0gZH)pE)`6Tc~@DqoRSxFbYQK0gyv)1i_xIjYLL{4 zW7?x3W;)wTemzXQL$J$Nv{|+qhbPms6F7Fb8*2>pFd8RHm29D3I24<$p%@0HENuz( z(TV^|>uJr8QvvwcWuv4M1+$f{!%mN6>ZZ^MCKj71LIte!S}Z`h&xdcB7S5>p;(OJK znq{d)SoElXmtiB;ARc#_J>K0)4!;D_uysQ=DJ*-g^W}gs06| z?;FR$xB_cEGwLH?1X9`rQ0=7=(%l-pe_BmDC_L)BFYu5Y|4P+v-8_b9U@pZ7%ARVV zh@I1I|EkC!E#Zm!Owc4vB`1RnsNo?Tbwj|WzL?G=X{)cs9gV3o(x2O5If%WXo5Sdk znBBh?bx>YY$+oanga zsMBs4{kYFe8%yBs5a^kJ1GSwA=U!KLtvlUT%rm zdqCxx@XCwL!g#Bnthd+#2(svyid?ak%6Ha%dxY1y_9EX(s5^r3J^%jm+ z9qMbuROk@vh{qoS$lgG%=POJ$4TgJ?^)586kQ!aT9I-^29C6vm?^xDG(`2l8rmpwy zPq|Ks!Nen^I^Bdra@j^=8h_PIRQLX+@ueZ9i;S7y*s<`NYd~;QtlC57QI6L^H>EmY z{Q`Mn{;a&Y^J9CXhDBi8PA`hA)=V^y>CPst2)B5m5v~do15$3x-lJYt&ysbrq+-%5 z|67)#dZ5o8*1E8(v2nz=tRWGv?`owZKA>zKjrncL^+|v0+ z?}|)sPoz{ADkRP(V%+C`7fv(Nalea5@W4inVTsmV8a3rwp0#|=O-BFulq)z{sn*kK ztfrmAVk^{5nkYC3B8x3%O@zdbsj5Th?q$M~#0%8bprfDuH6_(C;6<-|dbWytrC%jy zb^@HYP*QvVTSqf3S67|O3G{46$^!#EhGmfOjSivFMPdhK%8}$OT9z!{-hJW<(A|mo zz!QkGP)I3Jsz771iu$JQVnoeh8&pTEA-%DDz`Q8=!cd`S8$7g`(mL9#N?;zR9HItT z&99wA z2;J*uMmCf;!Lb!__)fjjjR&?_x#Wh1=SPB8g@f{ieS#%Y1~ttEG-jjo(FzeGtCk=D zX|2L2Hx=j(-09^3J~yjlqJSS5xGwsSrsOZ;7VY zq+6U}2C|2)hr>1R^@#Yu!5a2Ix)80WGNuShJ_VtIUI*_u0`)O2(FHwQSu3LjHKW{? z2|vGl@l{7Y1x`dvxj7f{m&F_iRso?%XK$pn>o+lf;qar;V^I~+HSjq4g|Tld4sQH| zQKF)xfhq%&^w%$Rh*V9N$>R!Mf|A-Zp~PllWXD-Hlia>#-diXM?IpR&>51c=r9E%Q zqe|Drn8PvUm8>P_hQuMq*3-ABzI&-ubr8t@^ zV%*a7XXHTHto#NWv#P)x%4IOT2p4=xJ}#M^3>o7isLe3nV;weXnrx6-*6&9Kqq;!k{9Wl%&&9iZqE_N?1DEVU?EU@T9-1?I3!&OZE1K#e9qNI; zD!xj)Py6oK+-upb?iTLmpln&rV!jJU$Kb42wm2H3N~sYmZnBsMTi~RT(SDy^`(o1B zeqSydf0ufPla_+VaU4QA&5gK$S;r8^6Ul4(jYcv4i#aWX(u(TI>hbh!$ioRVj`<;I zAdk$VEA>-Xgq`V5NQ_gN4#gstdcEBpf&B2zrYXmu61Vla+2YLW5vi*B1mPR^$w(w%yU+l^F!EYpe- z&RWttSPK4U0n65x-m;!I?cfE@bWB6gmb;f#z$60a{rUj?8zvesY)^m8XH*G6mpDOJ zA|sY)Aek?oUKwc6+1(IYgCF7>w@mpwJhW&<&>Z&|c>R?Cy3prjj(%TO$%oKji8AT~ zBseQ|ype)23~cw?z3nwBPwALfR~HQPiHs~8>pB(&zX}G*H>YTnL3)u~AhmtBdDRU3 z!o9saHCR}7a+TQUy4xD4NtR}2c@NBrB+pFnN?%>Rb zhT-E8=AnPA0gD8G9;+E)clX@tDs}OZZu3EugSWTVS&g;RUkxuSOc3mQ?10&cS{}U{ z(ehB(6kZv=?hLXMVkskbZ}5S~eQzNIa>R^oWY!nlS0Ito=qwC#OCNc0l+Y#eQh_F{u@~8R;x=1pYPUr0UK6@+Po|@vTEiY1chT84Erxh>Kmc2dl=9kQ@vM0WtGVfEcB{1CTrZ5I#mPGygIOO^ z)m~b!M7UpOOO@la)7R(Pu4B*)v5;hGyCw48 zN|~>}=AJd@QQ?3w*ZEiEwWqb1zcDFn;sK(;=L;e#D09wmJ25X(7e_uy*z>90%A;?K zf_lubU~((7cJ13Fi=Vp-WAQmpxf2-s<2#x5(e9KX{OI23-KUf^#01ER(=te3L{F{z z(0Af?iBPpcGuSweT=vp)a6iPXfb0hwgvG*H#`Sa**P>}MFeXARdVU@lhcLW+P2?n@cmLU@Zgd?lOTtYpv77_l_z>Ojg*kz? zSwpVA_bZE=)c&qKU{zSs+IU(RT#5zi7azq5wsQBv;(P<^TEC#OYfl&`@&PO4JmGvs z2Db1P^w9x%b%69T&ufFXm&(p}G%AAe%$7-CCF|JT7MOOfM;-cM^JF#<=hp1y+WbSz z8oME-N@JBHE@1*qWJjj9Fg}?C*sgRf?)l^HeX(^wRm-J3`dYNMF;&t9n52()-rC-x z{r`0B_Ajv(J>4H5%bz|cCf45&3mfBaM&!RMKl2ZN10a9HI{vRpC8p0z$A3{O#Yx-b z&>;j}yh2^zE4XDQMSCbig!b|e>#r1ts^q9Ia(4Q(LMEwHg@Bo#`7rAsF*p{kso@F>QCUfer#I1fM zGh$Jpr^Jm`wxw`v1G(Ol5B_*-4C*a-p7DIWoUnXA#uL9b7lyN+3|pPSzaRGQV>Y7E zQF)ncZw;(j#^M-gSgS*)rr%|Hu4Qfv#(NrY-b!as9KU93C#$~n;M@12xx!yJbFeI_ zh~}|qw33{9^SBFYBjQVb7bxwmQB&l(!KBKE8R4$pkCJBfdDG-c6%ZO%+EqFG>Q}uV zoWZ-2^H9tCWL;Qypsn#Y5qZKtTr=mqo3geYaB>aw^9;;zxyDV(4MzK%%U(IY(ne}8 z>^c2Xhr>p<-woN;+)di1+zm(~oCwiAOS=WV_S?+$s+c97Hn;BJBZHLJjIP{BGzy}kpgO4d+c?lGO?7_ea^D8O^OXU=S&+;Q#a?{JV(gugKGXX0K8U*jO6urkMWs$b#{ANBuwiM&E24 z|1cieSR4Pw7CuwBjjjKoJNl#YPu-EdvDIf9t)-3iA9#bYlkp!L4yJa-f9&btZ1ejG zH)A`Sf59C-ZBGBTc7L?|7uReY?|jhtP;AbwzeARJIBYirs_S~$tcoc0Ir9~u{B zIwvQJEvHIz<$|(hSz|P2uvH*K{GD=6c;Jb2d>YEogP@z++gqQH{>*}fs$dSkcR%{W zJHB%3dxXkM?=NC4epH#VNfDs8Lo%p9U}R04Kt5amcpY?dd`aQZonw8(x442KC3JlK z-977HGlv1?{CxPWF>a?3Ol(x$H8~FzQ$DZ&rBp@%GGk%@R&dVSdH+7du9GR*<& zfZ4f?YpZQROa)6%`QE5F znEl1S$s4Ks&ZGzYI)@1m1N`XR*wN|@UJd@SWvOor`rWP`zq*l^ZIM$$jpxhjcYA1`v|N(T?V`?(Vfz}pI_IF~?~O~G?=(Md zoRbP@M*Pb1@MUE1=w@Me9^Q;jwfR+KtseGY?W-%g5M(Pabp0Z^7nk>)5$Dgx)0*|% z(Vb(mM|DYL5&C(Ps3D*>ceb~Y5Viq*v;gpEDLKbCwj5i3@q3f`c5D?uy?Xw_9|uS+ zAmDqyXUQz!h0$e&hDQK6K8Cw~c(dv2Acnz1(6h1u1y%F2JnO>v5c2lpXYn4E?QyPq z0K)jr{T&|SGlcc!#pqgy)&gR2>IL_PcYma)pdyblXYkpi&-)}d7f%O3*GY#4fRhy$ z9pEw52uK$E!#jAYvhw5P>&IRRM7=LSzE0BPzG=AeT`3#fN16A zXzLiVf?lzY0PURx+O=S=Z~O)Tq~I7po_2s-2?y|%zKsU2>14bJosf3ly^mjzU%|US zQ)_E|8(ZFCFQEY0GS(}+jc5Q0Zf0@-oj{iOKKOmTv%KM6FHB{}t?@|RDMNM?L%nl6 zI^^Lez42ww4lJ{^be+RNUL;a7csmVSE}J#DWkr#@$$klUbFH43C^(GhDuu^7-+ zOEi8arWbX*XxWhS|GJb^y5w-;Y;vz+;ZOr<_${E(y-`oMx;Y%^4YVby_vc1ic!tiU zMK9Rng~V+W&AHzM6AzM>tJAQ%vUAryI6*!Oa|6X=0{w-a;pzA0s{XDFlEa(NYc1kt za+#+nrc{rlI&8=tH2qh+FuV%nZN`0Nkje2}~RHX!jGoh$xe<}v-5*_B1~_1B;LwBt|7j&kX!+@_!mUr_w>?uMEk*b7sVo?va7MQ`$^Pm zieYCC))BKej6r;;%sSE;&={Hw~;$Es4cYU+*QSGVe#HzBp( zs68Fs3gCAYCh8o^d8VIBI~}E>VapXiFtiJ99H|)Jdso!q5w^mmMIAgw__*6};=i|3 z^`l_E=^<-(C9NJLGVia^<90maSkEfT7BO*{v79da31@k1>R8S+BIb}ePV(!dx+(f z@~}X`uCPFqUa4_Qj3UyG;nJ%d9gIP7U^xIYAXEKpvoEu&EL?^G>0X66H{Bf3^m1@t zKDY{6b(?;>j4MKnN3pwTlP~?OG*;!SpQ2y)CI*KGs2tK0CB3Qtod}1B#sg^q3P}cO z#(?e5Ti&?T`n%j8JCfp;Tys&`Hzh7GL8f7FR`7ZH22m;C9;jpaAa)6lS$Vu+EN2|p z3$xl2M$~spzo_qeox&n)r@+=<}EOXsV}LY!3W%zGk;}iig?L zA6_N^tzyB|LwLIhwsn+LbJ`{zun4MtgJFU#Y%GQwc9>pDkvH;s&T=~dCo$%(CLqh>cHgez5nI)XnrWs?+SW7Rb! z0_`PHL_B&$0piAgjOwOMaab8c4`2W~@tJp}k1i;c*W@ct)yUfhY%*@PemzkNF*=1&C<}x!g zGkg8I_icA;S~EME{oJ3MsZ3?WRVc196?x(unkzQ9lRvenJl{VU^d%FtwBQIUg^4l@ zON2qqe~z3%mW9qwn2qq!LB8tnm8P11DxyFv1kB9L0U8?5zB~sT!WwX79 zgD5ZJN*?8cBWwvT19;e_k;2_XXJ?N{>D=kfKQmdqJ2=BWWTJRBneg{cD<vwqgTK85! z5Wg_O13XhV9OkR4eVOON$L^cFzFrq(ID3&kr%kW1{G6|QzW~}PL!)HpF(SQjBcoTH zIPQz7k%MDSvt=m11rl%yr+kEi9*t*enpW+Ne&4)~lQ@QOIBhh|A3M%?!wdjDy@`)6 z{J=#R^^-J=#=~f`tcGSSu|ziw*}gv#VG+d8;B^3{0>&K)Wn{aUy)YeKpQUjeSu0`y z@#OF(Mu8;bz3wq|bIimz@L;Z_5%7z@G_J9tHXYT6CEE15z_5{=MpmH$XeitkgAtOk zcoHzlwLqwkAk9i=)Z42EulQAO?^l9`(Y2G#6?{UNWA(D#C&P&F83AVk1ygq0m{LL3 z&M%c1uNLhLQXtBA2g>gn?dZB#@SvWa;bA@By<^r26GmK3DZ%?Gr=w1g_De_dNT8pDu z;cG&wil9ZfqKoE`YjNWi*Kz8}+58P*_p8Nr@IG+8P@CVv0{M-%5X*CQhdUnaco!-f zuN)^~KNCXsAqg;PvMdYS^8B1?22j)GakCF4Ve-uL0#xm71mdnE56_Gfm%*wWUzhqU zD1yK`ZT7l76i!Qt<*Wp1>!c{|(fTo3+_`TgvAyY=k4ak|Vj#-7(E8iq=7Xs5?pV#| zBY5EN;Z9v^Ms_l&9Z=Ie`wf_>W(!^wBAK@uc~cDiXqM05bA~Qb%K>RCCvTM}1)&HV zPMpgZFq1$LDQDCg=SpBBwV;@;JYamC5wJ1ae!XWIR+ZnKDAzA(K2`Md%7mW-XN~H9YZ_Ii#BnB?1REg?SRj+b!{~Wk? zEEHtBfDiH-vLWo%-zq-vai`NlkmIB zpi3Uz^=@cN1o@vOmaK3azvA7;X1kyRJ|l8T|%hgSK6Mp4*+b8-3G>b{0~rl1B9;28#99?wWmttG}>! zFG1qi9LMO0LI%ea;v~u5bEm4Up_EW;&lm<2U9h_?Il80pzup<_GFzE2_eq;}wbm25|G1j!xy&Noikv;_^iD-KEh2pX0L=mpCF}$kxfQOxz~_{o0R#&W^*A6z(>3Se`|A!RUzskd(slXL!OV z9Mvn7pKAFobBY%KxzXVGIVK{Pb4Xf}P>-2Y2hj1!O}-k_YUpD!N~l55Xmz06?*>}! znOXJqR5f)Goij)t*!D~Q6t67!3iffks*G$KWtJ40HDZ`Img3Kq8p@c;Jf7U9Nx1kV zEO|N?+?)uY4v^XOFxJg^HVnGCNa=Df^a`sWP=hvJ2hB4;IcD%JNdggJqJWq^om8xZ zh&c34s9_(;vwu8lifGyhLsi{oxS@$_;Nrt5Ih&BrfVL}<0}14fhS=cpt{GYmR$6)K z2$oNl3eV9pMPIB2KUEud%FO|E;)oSf8^KY6xz3W}x4gJ5A0;!e2}rQ~n8?9#4gqll z7@ABBK9dIRw$Dww8gb~4vyD8d_{GIW2dx*!ltikbaMqQxegNaVTrbgCK2>OOD!r^X0q370NE23Ar>iyKvQO%gdVK>98Esdf zs4@?H6ydHiO(|J{%fPM_Mozpv?J)QWQ0bhv)K833(4sZCFYX~GA*PkwjHPmNJ&zgw zK#GQO@7CK$wA~6)PG#_jNt^!uq>4c|Z|(gY8#f^nC@Q2fc(l*1k%WAEFb53_8qmww znR#1!(7=96>%Qbh5AeujyT$-(Tv{_u|6zjDc~vR~8Xv}Mfbp3gUqyT7u=<<%LxbRI z%9J!G%tM(Iin?vk&tXVLkEe0~rZP*f^17=GB-yWE!p3;uBTHVb*-EcTz{Lrfbx`}7 z6mhtG>5!?|5axCajnFGc9+J!RF(Z}*Sz9}rB*NW_STGsp=6pjkU=@v(V@g9L25#sY zM%&(%!pKJ(oNQoHT`}JRg^(5~o+Qsr?d`lqh(+MAQ3OhjU$1=Y_Qb z!2xj{eTNLr0U{J|8;tB)*M9YBo`@y54#TvzhrnHD9CDfhUIvccixN*SvgU7#kB@V5 z&6Ca7kxGPP*k&>h7L1|VruCFAL|l%|OKjTXF(4n_3TNm{&_jf4)EmmdFH_U{aI z@<&>@Fgiq6x8PUG1y9)8`?2&_6(3#ZZ^Mu3k!#<7_U-w3x#D_U6kYKmf8R@o1?hUd;{n8&)=JyFHxvYQR8Wa9iX z&&kgP17^t#yTzA7TSO= zphqW=+XL8vL%WRPfa%)0Y2Y;SGB(GZ7OKdHFijI_{30JJKzX*ur}Nk9#ERcbO`1|H|d)6!7%AyYq@BFjm4>*jaEq2 z*4iMoBP5OSB3Gt5ET*)~JK;ZQ_pA-N>?G>wcIQ(+KqOH3N$A~Z`Cl_J@}8GYiG^~~ zN1U#u*_N`1hVjbyo_j*8f&Rum9VM53En;TD+~ z%-^B&$ChT=tn^}#;k;KNYrafdKZv?vdHEKd?TD)limqES}W)-!SQdlxA<6PywM9yE+%^Gvx==2=%klm!*89r6IF-~-a zqQ5u$^T{ezzIy)DI83B)$5%zm0MlT|oFKr$dzFk<#w~p~lA&vg4-O9(TJ>cDNo*fz zg0XXTR{+7;@!bF&Cf>r6uz#P#&Z)%i1%)B1Y_7ivjdtKF@a=xW2H|ypEFw@1x%EA4 z*fPr8%QSQ*+TH2Mt4;Q8opry?3LeY^s?XP)8tsW`oKys2H*oy~)nvnsF(qdiQRoZb zAq`%q)+Lw5s#Fa>yiU;hq?dZa!X-ejo>h!kpPXn6in#Jm;){8-5TRAC4GUoPl-K%u zpWyo)r!uK!14KSlP=J+Qg3M&jDv5hEQn5?}Lo4Ut$fgX2vgXnx@fL+K2AvX;Vsa-N zQ4>ch5lmbA(2d{=;Kv~V_Qh1o=-`0Vrpv8 z%_prQQ{|AEzPM8JB;PZr!pQo&B-J9+Ym&shU}G^Tg*8uJXvIvE#WR~4tn{#wsY>HT z^pwrrZg81#m=7A}7?&an6b}9(QqjFdNE$f@i#zvvqFmH!V`cwLiChD{zuy3}w9uS} z{A(+_sZtH^k9J^y?5*MFkUfm49&e{)MmqL!y&6W&mHT|3yvJgZ3B6WgsceRZgcir0 z;6e{0E5656PZJ@2!Q7}q|JxZm!S0w&i7J{6H)V|%(tgct4-6aiH5rnT`C_-O=3CQ119TTTN!ikRl%PHczfO<%kbgX^xj^EkgQR@K3Rs4fH&(deDiclx&P~ru|#cBH}PA zDOe$RrT{nf;;!7C1c(wWd9A9Pc8~bWjx>feja4exLbO;FiYF21Ez#`zYp%YzN;Wql zj^ak#c~aC^thg@mneYbnlOTc5Fx>-V z(-QK7wm|c*1o#h#Ojb7Tvts@U-7!Bni6&Jv(pL;xA<=fvmW8)qk`uqtNs;d$n&N2< zLv{(Jkq3$*6(>m?v#8E8XxW74ojnc~!q#$2#}&+y>uJOGmQVe9p=8%0?kj0vL`cKU z13ddM^|OhQ-f+ck*3f(rw}jNGY@pApD&@&~*g-8hJ2)|)0dgtgcMcU2M1tSKZemHW zUdc`&3bxw%l)p~qE#QP1!nyHtg4lfv(K!FUfsAF^IOXK~B=-T7CU$if9O zsk>9#i6_^Rd5fyIpU6lUSI+lysF+zMpb_s+7kaGIv=T8J07~(~qabL8d^dYeS*;9D zL@LcO3DN?G6PJ--NggI|GC5VSg6zFv3-^j%54$|F*Xj_u@nDH&B?Dg$;Qd)o&yF2o zdPrfSki}ZH%ra6=hNMn&sZ^FoIBfzK@>Vi&ha2x+Sy-1`A}^_oT~2qG*K7DR*Nrsr zSPzYM1YPZsnn8u2`t$Q+2=^;gcK_k{UDYd)X^DQpvgxrUur8NTnv%Up-e8)-cqZ-K z-Bxh_=!zmI;>f+J>*Dgv=0b#iuC}$B=yM&KCGO2mQ}i|1eisYW#%hqW-@xhxHwKT? zC$M-G3H7&*(<=jJi!yG*93j%y!bu}TyI-mkMCx8##%W@*X@C6h%dByuRx;yRhwk(> ztQ$_UW%mPC_f^X)$W)d~Co){E{rT=Xp@A7#qsZhQS#~VLp_m+i7e(1Ka(*5qVbcz6 zYt5W~lE$X>wS63sNzo|hNgY&n((9a!5eqGO2^s4jKZLo_POc)&rwJJ>{k~+d_Gn2j zHzquZ!Kn=?Tn36Xo$lNUjQ8tlYS6jjtPJQNI5`W&I=W3xIRDt;-9BymS`R4c)1I

a%cNH?CBR?vpq;I<6 zIAbF-v&I2UVjqQUndiI)vtR*5k)DB!$ef4b`QObyQlk8x073MD&LY-Dzs%7Jwa z?O@1)mfL*Qc0LX;Po~~P;u9>fI!la}9yS}RCcV_r7zSA&gE~h26{rSi3Z|+eL&e+U zbB@8?w?<4BF_8T-)Q}K-L|ixp9CNv;9H;!DVn&w*YzF4TM!74q z2eP6<1at_o$2fe(gB9Mv-SkAW9C&pdWETx|ISL$tYj{znrmM_q+qP1P#n?6H$ZWE# z?%8g&x%CeBB&Sr-YVv|S)YdURBSySC>y`}sra7URL&LoXUWBD_q1qz)`BE0Ws6`c< z3iCZwnTacc)-zXTPqj6Tp%aBRc(H=!1wo(Oa+njone;J7-#C^7=}mapUaN_!?W`YR zG_1gWqz)l$d-WgAr<}HA91=+xi!B(GW$%vHg22O(^K16UUB1e-+p>8QbxP2Z@!#x@ zwmtpLCyZ}^o|4=&*VqJoeYPn>yk?@;xLF3XPYb^zjIQm^S4}^#O%xBzVl5CoD==zB z94j{l6$$zXKjhfjht2&Ma%wLwB_q<860I{>Za;p1fA#k@&3>LMMF}bv2ul%}aF5z| ze2J5qiyfvfj;eweKQ zccur|_HF~yNrYdVj$R;ayo!iOn4eIyR4>hWo*P%=+UC>EuvO)*7r6UR0bAVU#EhC3r~gCFwAzPz;E(smiC3HpymWwk zcr+eRmO4eO^8HV@qNE*zLbwww1Y|BdjcK~UB6Lwd)4m9a?n`q_hEn>>r|RK@qSm{7 z>uP0Vi+pMf+R8dE6Q*E&H6Jd0CghSuIu>)NwHK9r9{}dYtmjg%5SdJqfGse$s>|(< z*JtNtW>fPW^?O#Mtmn0#rt_AGxPl@xBLbK?=S_5;!pCmr12+C-0N+=g6g6s?CCXE% zO#Pd5=g^57f9!JxL;5%$Eut5bQ;GkY>8)bIbh~n>Yzh~K(m#tLkJ}k%2-ezh z9LpH4dH`h()CBf3xs&V>BTcxr>Jp5ja(i{Q?#DGzBsg6cD;aqmUxEcNkCfB8i<`@f zH1=LBPqRx3xqHmnWW}d+V@{+!8Jv>sm}VyxwJL$Paph<2I$H?bg-RVLieZe}jiy-0 zBB|#Ywo(vsrDDv33|U&{OVZSQ=IKXAOvh^Hk#4d;ftrbnZ-4Vjm69)-J4**6 zOvap}H`ec^Di%FW_$>89h$v{rt_4W31E>-&OXs{+iqP`msT-~y13D>oPyR{djymi> z+CMju;eI4dxK_3xDehBEhuO>rfk#SGJybcF-T_hQG0r5eSO*}}MEhKKD=9Ca@r&&Z z?9t&iPE^nX^lmK^0YdH^9N|0EqVgLg*gU{nOHU+^K6VaG-=-0J2kKA`;DxEAT>S#| z>|iC9tMQMUp?2yPu`Qko?}5#fE8!1#>EtvQ-Y74lI%%_o%m;LF*sG5Wr5K+9T@Wu3 zB-iyV*%qDw+QY{=x!o73_|hL52l7g}fn3m>qL`VFAhafB2BLvGU42gN>Y|NP7JPh{ zy9=%^!6kjLkYbaGa6o>%0AR$iShzl6=r2kXwS^Wh5$USx1I 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 bb@JwRd3|d+B|Hh=^k@I$e?0l=>(Bl_oCR

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 acfYy4w-|Sxw3xSF{L8;Q{rBH|@&5sK>cOM{ literal 0 HcmV?d00001 diff --git a/frontend/demo_cache/generated/papers/idea-2/investigating_adaptive_prompt_decomposition_to_enhance_coherent_long-range_code_generation.pdf b/frontend/demo_cache/generated/papers/idea-2/investigating_adaptive_prompt_decomposition_to_enhance_coherent_long-range_code_generation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..79aaea38545e9693dc87f0633c350a643940f38d GIT binary patch literal 479486 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

- {/* GitHub Logo */} - e.target.style.color = '#fff'} - onMouseLeave={(e) => e.target.style.color = '#A0AEC0'} - > - {githubIcon} - +
+ {/* Demo Mode Button */} + + + {/* GitHub Logo */} + (e.target.style.color = '#fff')} + onMouseLeave={(e) => (e.target.style.color = '#A0AEC0')} + > + {githubIcon} + +
); }; diff --git a/frontend/src/components/TreePlotVisualization.jsx b/frontend/src/components/TreePlotVisualization.jsx index 4bf56ed..5134f1b 100644 --- a/frontend/src/components/TreePlotVisualization.jsx +++ b/frontend/src/components/TreePlotVisualization.jsx @@ -553,6 +553,44 @@ const TreePlotVisualization = () => { const [isReviewing, setIsReviewing] = useState(false); const [rightPanelTab, setRightPanelTab] = useState('comments'); // 'comments' or 'review' + const isDemoRoute = + typeof window !== 'undefined' && + (window.location.pathname === '/demo' || + window.location.pathname.startsWith('/demo/')); + const FALLBACK_DEMO_INTENT = + 'Adaptive Prompt Decomposition for Coherent Long-Range Code Generation'; + const demoDefaultIntent = + (typeof process !== 'undefined' && process.env.REACT_APP_DEMO_INTENT) || + FALLBACK_DEMO_INTENT; + + useEffect(() => { + if (isDemoRoute) { + setCurrentView('exploration'); + setIsConfigured(true); + } + }, [isDemoRoute]); + + useEffect(() => { + if (!isDemoRoute) { + return; + } + let desiredIntent = demoDefaultIntent; + if (typeof window !== 'undefined') { + try { + const stored = window.sessionStorage.getItem('demo_intent_prefill'); + if (stored) { + desiredIntent = stored; + window.sessionStorage.removeItem('demo_intent_prefill'); + } + } catch (_) { + // ignore storage errors + } + } + if (desiredIntent && analysisIntent !== desiredIntent) { + setAnalysisIntent(desiredIntent); + } + }, [isDemoRoute, analysisIntent, demoDefaultIntent]); + const experimentFileCount = experimentFileList.length; const hasExperimentFiles = experimentFileCount > 0; @@ -2972,10 +3010,24 @@ const TreePlotVisualization = () => { setPdfComments(pdfComments.filter(c => c.id !== commentId)); }; + const buildRelativeApiUrl = (path) => { + if (!path) return path; + if (/^https?:\/\//i.test(path)) { + return path; + } + if (path.startsWith('/')) { + return path; + } + return `/${path}`; + }; + const downloadPDF = async (pdfPath) => { try { + const requestUrl = buildRelativeApiUrl(pdfPath); // Fetch the PDF as a blob to force download - const response = await fetch(`http://localhost:5000${pdfPath}`); + const response = await fetch(requestUrl, { + credentials: 'include', + }); if (!response.ok) { throw new Error(`Failed to download PDF: ${response.status}`); @@ -3015,13 +3067,14 @@ const TreePlotVisualization = () => { try { console.log('Starting paper review for:', pdfPath); - const response = await fetch('http://localhost:5000/api/review', { + const response = await fetch('/api/review', { method: 'POST', headers: { 'Content-Type': 'application/json', }, + credentials: 'include', body: JSON.stringify({ - pdf_path: pdfPath + pdf_path: buildRelativeApiUrl(pdfPath) }), }); @@ -3636,7 +3689,7 @@ const TreePlotVisualization = () => {