From b44a6156253857c62447580c4c502f0adbdee5bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zeyu=20Huang=20=7C=20=E9=BB=83=E6=BE=A4=E5=AE=87?= <11222265+fhfuih@users.noreply.github.com> Date: Thu, 26 Feb 2026 21:03:54 +0800 Subject: [PATCH] [Doc][Test][Misc] ComfyUI test, more screenshot, and code cleaning (#1435) Signed-off-by: Huang, Zeyu <11222265+fhfuih@users.noreply.github.com> Signed-off-by: Samit <285365963@qq.com> Co-authored-by: Samit <285365963@qq.com> --- .github/workflows/comfyui-publish.yml | 27 - .github/workflows/comfyui-validate.yml | 40 - apps/ComfyUI-vLLM-Omni/README.md | 41 +- apps/ComfyUI-vLLM-Omni/__init__.py | 10 +- .../comfyui_vllm_omni/nodes.py | 47 +- .../comfyui_vllm_omni/utils/api_client.py | 46 +- .../comfyui_vllm_omni/utils/models.py | 9 +- .../comfyui_vllm_omni/utils/types.py | 14 +- .../comfyui_vllm_omni/utils/validators.py | 31 +- .../docs/images/comfyui-chaining-services.jpg | Bin 0 -> 265984 bytes ...ehension.jpg => comfyui-understanding.jpg} | Bin .../vLLM-Omni Annotated Example.json | 1 - .../vLLM-Omni Chaining Services.json | 552 +++++++++++++ .../vLLM-Omni Image Generation.json | 2 +- .../vLLM-Omni Multimodal Understanding.json | 761 ++++++++++++++++++ pyproject.toml | 3 +- tests/comfyui/conftest.py | 82 ++ tests/comfyui/test_comfyui_integration.py | 567 +++++++++++++ 18 files changed, 2067 insertions(+), 166 deletions(-) delete mode 100644 .github/workflows/comfyui-publish.yml delete mode 100644 .github/workflows/comfyui-validate.yml create mode 100644 apps/ComfyUI-vLLM-Omni/docs/images/comfyui-chaining-services.jpg rename apps/ComfyUI-vLLM-Omni/docs/images/{comfyui-comprehension.jpg => comfyui-understanding.jpg} (100%) delete mode 100644 apps/ComfyUI-vLLM-Omni/example_workflows/vLLM-Omni Annotated Example.json create mode 100644 apps/ComfyUI-vLLM-Omni/example_workflows/vLLM-Omni Chaining Services.json create mode 100644 apps/ComfyUI-vLLM-Omni/example_workflows/vLLM-Omni Multimodal Understanding.json create mode 100644 tests/comfyui/conftest.py create mode 100644 tests/comfyui/test_comfyui_integration.py diff --git a/.github/workflows/comfyui-publish.yml b/.github/workflows/comfyui-publish.yml deleted file mode 100644 index c282bcada..000000000 --- a/.github/workflows/comfyui-publish.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: ComfyUI Integration -- Publish to Comfy registry -on: - workflow_dispatch: - push: - tags: - - "*" - paths: - - "apps/ComfyUI-vLLM-Omni/**" - -permissions: - issues: write - -defaults: - run: - working-directory: apps/ComfyUI-vLLM-Omni - -jobs: - publish-node: - name: Publish Custom Node to registry - runs-on: ubuntu-latest - steps: - - name: ♻️ Check out code - uses: actions/checkout@v4 - - name: 📦 Publish Custom Node - uses: Comfy-Org/publish-node-action@main - with: - personal_access_token: ${{ secrets.REGISTRY_ACCESS_TOKEN }} diff --git a/.github/workflows/comfyui-validate.yml b/.github/workflows/comfyui-validate.yml deleted file mode 100644 index 06b9b1f91..000000000 --- a/.github/workflows/comfyui-validate.yml +++ /dev/null @@ -1,40 +0,0 @@ -name: ComfyUI Integration -- Validate backwards compatibility - -on: - pull_request: - branches: - - master - - main - paths: - - "apps/ComfyUI-vLLM-Omni/**" - -defaults: - run: - working-directory: apps/ComfyUI-vLLM-Omni - -jobs: - check-base-path: - runs-on: ubuntu-latest - outputs: - exists: ${{ steps.check.outputs.exists }} - defaults: - run: - working-directory: . - steps: - - uses: actions/checkout@v4 - with: - ref: ${{ github.event.pull_request.base.sha }} - fetch-depth: 1 - - id: check - run: | - if [ -d "apps/ComfyUI-vLLM-Omni" ]; then - echo "exists=true" >> "$GITHUB_OUTPUT" - else - echo "exists=false" >> "$GITHUB_OUTPUT" - fi - validate: - needs: check-base-path - if: needs.check-base-path.outputs.exists == 'true' - runs-on: ubuntu-latest - steps: - - uses: comfy-org/node-diff@main diff --git a/apps/ComfyUI-vLLM-Omni/README.md b/apps/ComfyUI-vLLM-Omni/README.md index dd530174f..23bbe5b72 100644 --- a/apps/ComfyUI-vLLM-Omni/README.md +++ b/apps/ComfyUI-vLLM-Omni/README.md @@ -47,12 +47,12 @@ If no, check your shell running the ComfyUI process. There may be some error mes This extension offers the following nodes based on the output modalities (at **ComfyUI sidebar -> Node Library**): - **Generate Image** for text-to-image and image-to-image tasks -- **Multimodality Comprehension** for multimodality-to-text and multimodality-to-audio tasks +- **Multimodality Understanding** for multimodality-to-text and multimodality-to-audio tasks - **TTS** and **TTS Voice Clone** for TTS tasks This extension also offers example workflows (at **ComfyUI sidebar -> Templates -> vLLM-Omni**) -> [!INFO] +> [!NOTE] > The node UI and feature designs are intended to match vLLM-Omni online serving interfaces. It cannot offer more than what the interfaces support. To build a simple workflow yourself, @@ -65,28 +65,16 @@ To build a simple workflow yourself, - For some multi-stage models like BAGEL, [only one stage's sampling parameters are exposed and tunable via vLLM-Omni's online serving API](https://docs.vllm.ai/projects/vllm-omni/en/latest/user_guide/examples/online_serving/bagel/). Thus, these models are treated as single-stage ones. Please check the vLLM-Omni documentation on how to correctly set each model's sampling parameters. - For multi-stage models where all stages are either autoregression or diffusion, you can also connect only a single Sampling Params node, indicating that this set of sampling parameters will be used for all stages. -**The following features are tested**: - -- Single-node workflows for - - Multimodal Comprehension (e.g., Qwen Omni, BAGEL) - - Text-to-Image Generation (e.g., Qwen-Image) - - Image-to-Image Generation (e.g., Qwen-Image-Edit) - - TTS (e.g., Qwen TTS, including VoiceDesign, VoiceClone, CustomVoice) - -**The following features are not currently tested**. They may work or break. You are welcomed to test it out and offer comments. - -- Multi-node workflow that connects multiple model services together. - ## Screenshots and Examples -### Multimodal comprehension (e.g., Qwen Omni series, BAGEL) +### Multimodal understanding (e.g., Qwen Omni series, BAGEL) -(Also available at **ComfyUI sidebar->Template->vLLM-Omni->vLLM-Omni Annotated Example**) +(Also available at **ComfyUI sidebar->Template->vLLM-Omni->vLLM-Omni Multimodal Understanding**)

- - vLLM-Omni Main Architecture + + vLLM-Omni multimodal understanding

@@ -98,7 +86,7 @@ You can configure per-stage sampling parameters for multi-stage models.

- vLLM-Omni Main Architecture + vLLM-Omni multiple stages

@@ -109,7 +97,7 @@ You can configure per-stage sampling parameters for multi-stage models.

- vLLM-Omni Main Architecture + vLLM-Omni image generation

@@ -123,13 +111,24 @@ You can configure per-stage sampling parameters for multi-stage models.

- vLLM-Omni Main Architecture + vLLM-Omni TTS

> [!TIP] > There is a dedicated node for VoiceClone tasks with reference audio input. Other simple text-to-speech tasks should use the regular TTS node. +### Chaining multiple model services + +(Also available at **ComfyUI sidebar->Template->vLLM-Omni->vLLM-Omni Chaining Services**) + +

+ + + vLLM-Omni TTS + +

+ ## Develop Follow the [development convention and rules of vLLM-Omni](https://docs.vllm.ai/projects/vllm-omni/en/latest/contributing/). diff --git a/apps/ComfyUI-vLLM-Omni/__init__.py b/apps/ComfyUI-vLLM-Omni/__init__.py index ffb86ddb3..641824add 100644 --- a/apps/ComfyUI-vLLM-Omni/__init__.py +++ b/apps/ComfyUI-vLLM-Omni/__init__.py @@ -6,18 +6,18 @@ __all__ = [ "WEB_DIRECTORY", ] -__author__ = """Zeyu Huang""" -__email__ = "11222265+fhfuih@users.noreply.github.com" +__author__ = """vLLM-Omni Team""" +__email__ = "vllm-omni@vllm.ai" __version__ = "0.0.1" from .comfyui_vllm_omni.nodes import ( VLLMOmniARSampling, - VLLMOmniComprehension, VLLMOmniDiffusionSampling, VLLMOmniGenerateImage, VLLMOmniQwenTTSParams, VLLMOmniSamplingParamsList, VLLMOmniTTS, + VLLMOmniUnderstanding, VLLMOmniVoiceClone, ) @@ -25,7 +25,7 @@ from .comfyui_vllm_omni.nodes import ( NODE_CLASS_MAPPINGS = { # === Generation === "VLLMOmniGenerateImage": VLLMOmniGenerateImage, - "VLLMOmniComprehension": VLLMOmniComprehension, + "VLLMOmniUnderstanding": VLLMOmniUnderstanding, "VLLMOmniTTS": VLLMOmniTTS, "VLLMOmniVoiceClone": VLLMOmniVoiceClone, # === Params === @@ -39,7 +39,7 @@ NODE_CLASS_MAPPINGS = { NODE_DISPLAY_NAME_MAPPINGS = { # === Generation === "VLLMOmniGenerateImage": "Generate Image", - "VLLMOmniComprehension": "Multimodality Comprehension", + "VLLMOmniUnderstanding": "Multimodality Understanding", "VLLMOmniTTS": "TTS (Text to Speech)", "VLLMOmniVoiceClone": "TTS Voice Cloning", # === Params === diff --git a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/nodes.py b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/nodes.py index ebc2822df..5caa3869e 100644 --- a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/nodes.py +++ b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/nodes.py @@ -1,4 +1,4 @@ -from typing import Literal, cast +from typing import Literal import torch from comfy_api.input import AudioInput, VideoInput @@ -6,7 +6,12 @@ from comfy_api.input import AudioInput, VideoInput from .utils.api_client import VLLMOmniClient from .utils.logger import get_logger from .utils.models import lookup_model_spec -from .utils.types import AudioFormat +from .utils.types import ( + AudioFormat, + AutoregressionSamplingParams, + DiffusionSamplingParams, + QwenTTSModelSpecificParams, +) from .utils.validators import ( add_sampling_parameters_to_stage, validate_model_and_sampling_params_types, @@ -86,7 +91,10 @@ class VLLMOmniGenerateImage(_VLLMOmniGenerateBase): # Prefer DALL-E compatible API for simple (one-stage) diffusion models if (spec is None or spec["stages"] == ["diffusion"]) and not is_bagel: - sampling_params = cast(dict | None, sampling_params) + # The number of sampling parameter groups should have been validated. + # Now, simply convert single-item list to dict. + if isinstance(sampling_params, list): + sampling_params = sampling_params[0] if audio is None and image is None and video is None: # No multimodal input --- use DALL-E image generation logger.info("Using DALL-E image generation endpoint") @@ -133,7 +141,7 @@ class VLLMOmniGenerateImage(_VLLMOmniGenerateBase): return (output,) -class VLLMOmniComprehension(_VLLMOmniGenerateBase): +class VLLMOmniUnderstanding(_VLLMOmniGenerateBase): @classmethod def INPUT_TYPES(cls): return { @@ -197,7 +205,7 @@ class VLLMOmniComprehension(_VLLMOmniGenerateBase): ( text_response, _, - ) = await client.generate_comprehension_chat_completion( + ) = await client.generate_understanding_chat_completion( model=model, prompt=prompt, image=image, @@ -221,7 +229,7 @@ class VLLMOmniComprehension(_VLLMOmniGenerateBase): ( text_response, audio, - ) = await client.generate_comprehension_chat_completion( + ) = await client.generate_understanding_chat_completion( model=model, prompt=prompt, image=image, @@ -287,15 +295,13 @@ class VLLMOmniTTS(_VLLMOmniGenerateBase): logger.info("Got extra kwargs in TTS: %s", kwargs) is_qwen_tts = "qwen3-tts" in model.lower() - extra_params_type = None if model_specific_params is None else model_specific_params["type"] - if not is_qwen_tts and extra_params_type == "qwen-tts": + if not is_qwen_tts and isinstance(model_specific_params, QwenTTSModelSpecificParams): raise ValueError( "You have provided Qwen-specific TTS params." "However, the model appears to not be a Qwen TTS model (no 'Qwen3-TTS' in model name)." ) combined_params = {**kwargs, **(model_specific_params or {})} - combined_params.pop("type", None) # Internal fields in model_specific_params client = VLLMOmniClient(url) @@ -352,8 +358,7 @@ class VLLMOmniVoiceClone(_VLLMOmniGenerateBase): **kwargs, ): is_qwen_tts = "qwen3-tts" in model.lower() - extra_params_type = None if model_specific_params is None else model_specific_params["type"] - if not is_qwen_tts and extra_params_type == "qwen-tts": + if not is_qwen_tts and isinstance(model_specific_params, QwenTTSModelSpecificParams): raise ValueError( "You have provided Qwen-specific TTS params." "However, the model appears to not be a Qwen TTS model (no 'Qwen3-TTS' in model name)." @@ -366,7 +371,6 @@ class VLLMOmniVoiceClone(_VLLMOmniGenerateBase): **kwargs, **(model_specific_params or {}), } - combined_params.pop("type", None) # Internal fields in model_specific_params client = VLLMOmniClient(url) @@ -419,10 +423,7 @@ class VLLMOmniARSampling: CATEGORY = "vLLM-Omni/Sampling Params" def get_params(self, seed, **kwargs): - params = { - "type": "autoregression", # for internal use, removed before sending the request - **kwargs, - } + params = AutoregressionSamplingParams(kwargs) if seed >= 0: params["seed"] = seed return (params,) @@ -479,6 +480,13 @@ class VLLMOmniDiffusionSampling: "tooltip": "Enable VAE slicing for reduced memory usage (slight quality trade-off)", }, ), + "vae_use_tiling": ( + "BOOLEAN", + { + "default": False, + "tooltip": "Enable VAE tiling for reduced memory usage (slight quality trade-off)", + }, + ), # === Put seed at last. === # Whenever a field named "seed" is present, ComfyUI adds another field called "control after generate" "seed": ( @@ -499,10 +507,7 @@ class VLLMOmniDiffusionSampling: CATEGORY = "vLLM-Omni/Sampling Params" def get_params(self, seed, **kwargs): - params = { - "type": "diffusion", # for internal use, removed before sending the request - **kwargs, - } + params = DiffusionSamplingParams(kwargs) if seed >= 0: params["seed"] = seed return (params,) @@ -566,4 +571,4 @@ class VLLMOmniQwenTTSParams: CATEGORY = "vLLM-Omni/TTS Params" def get_params(self, **kwargs): - return ({"type": "qwen-tts", **kwargs},) + return (QwenTTSModelSpecificParams(kwargs),) diff --git a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/api_client.py b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/api_client.py index c5372641f..d340073bc 100644 --- a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/api_client.py +++ b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/api_client.py @@ -57,16 +57,7 @@ class VLLMOmniClient: if negative_prompt: payload["negative_prompt"] = negative_prompt if sampling_params is not None: - # Only select specific sampling params - for k in ( - "n", - "num_inference_steps", - "guidance_scale", - "true_cfg_scale", - "vae_use_slicing", - ): - if k in sampling_params and sampling_params[k] is not None: - payload[k] = sampling_params[k] + payload.update(sampling_params) logger.debug("img gen payload: %s", payload) url = self.base_url + "/images/generations" @@ -138,10 +129,8 @@ class VLLMOmniClient: if negative_prompt: form.add_field("negative_prompt", negative_prompt) if sampling_params is not None: - # Only select specific sampling params - for k in ("n", "num_inference_steps", "guidance_scale", "true_cfg_scale"): - if k in sampling_params and sampling_params[k] is not None: - form.add_field(k, str(sampling_params[k])) + for k, v in sampling_params.items(): + form.add_field(k, str(v)) if mask is not None: mask_filename = "mask.png" form.add_field( @@ -217,7 +206,7 @@ class VLLMOmniClient: return torch.stack(image_tensors, dim=0) - async def generate_comprehension_chat_completion( + async def generate_understanding_chat_completion( self, *, model: str, @@ -427,30 +416,28 @@ class VLLMOmniClient: message_content.append({"type": "video_url", "video_url": {"url": video_to_base64(video)}}) messages = [{"role": "user", "content": message_content}] + payload: dict[str, Any] = {"messages": messages, "model": model} + if modalities: + payload["modalities"] = modalities + combined_extra_body: dict[str, Any] = {} if sampling_params is not None: spec, _ = lookup_model_spec(model) is_single_sampling_param = isinstance(sampling_params, dict) or len(sampling_params) == 1 - # Exclude internal key - if isinstance(sampling_params, dict): - sampling_params = {k: v for k, v in sampling_params.items() if k != "type"} - else: - sampling_params = [{k: v for k, v in sp.items() if k != "type"} for sp in sampling_params] - if (spec is None and is_single_sampling_param) or (spec is not None and spec["stages"] == ["diffusion"]): # Diffusion format: extra_body directly contains sampling params. - # Validation should have taken care of matching sampling params' types. + # Validation has already taken care of matching sampling params' types and length. Safe to take [0]. # * Use this mode if the model is a simple one-stage diffusion model. # * Fallback to this mode if model is not registered and a single sampling param is provided. sampling_params = sampling_params if isinstance(sampling_params, dict) else sampling_params[0] - combined_extra_body: dict[str, Any] = {**sampling_params} + combined_extra_body: dict[str, Any] = sampling_params.copy() if "n" in combined_extra_body: - combined_extra_body["num_outputs_per_prompt"] = combined_extra_body["n"] - del combined_extra_body["n"] + combined_extra_body["num_outputs_per_prompt"] = combined_extra_body.pop("n") else: - # Use AR style payload, extra_body has a sampling_params_list field - combined_extra_body: dict[str, Any] = {"sampling_params_list": sampling_params} + # AR format: the payload has a sampling_params_list field, containing a list. + sampling_params_list = sampling_params if isinstance(sampling_params, list) else [sampling_params] + payload["sampling_params_list"] = sampling_params_list if negative_prompt: combined_extra_body["negative_prompt"] = negative_prompt @@ -458,12 +445,11 @@ class VLLMOmniClient: if extra_body: combined_extra_body.update(extra_body) - payload: dict[str, Any] = {"messages": messages, "model": model} + # Add extra_body only if it has any content. if combined_extra_body: payload["extra_body"] = combined_extra_body - if modalities: - payload["modalities"] = modalities + # Place to inject any model-specific payload adjustment spec, _ = lookup_model_spec(model) if spec: preprocessor = spec.get("payload_preprocessor", None) diff --git a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/models.py b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/models.py index 83bf64fe7..bfeddd82b 100644 --- a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/models.py +++ b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/models.py @@ -11,8 +11,7 @@ def _bagel_payload_preprocessor(payload: dict) -> dict: content["text"] = "<|im_start|>" + content["text"] + "<|im_end|>" except (KeyError, TypeError): raise RuntimeError("Internal Error: malformatted BAGEL payload") - extra_body = payload.pop("extra_body", {}) - return {**payload, **extra_body} + return payload def _qwen25_payload_preprocessor(payload: dict) -> dict: @@ -37,7 +36,7 @@ _MODEL_PIPELINE_SPECS: dict[str, Spec] = { ], "modes": [ { - "mode": ModelMode.COMPREHENSION, + "mode": ModelMode.UNDERSTANDING, "input_modalities": [Modality.TEXT, Modality.IMAGE], } ], @@ -48,7 +47,7 @@ _MODEL_PIPELINE_SPECS: dict[str, Spec] = { "payload_preprocessor": _qwen25_payload_preprocessor, "modes": [ { - "mode": ModelMode.COMPREHENSION, + "mode": ModelMode.UNDERSTANDING, "input_modalities": [ Modality.TEXT, Modality.IMAGE, @@ -62,7 +61,7 @@ _MODEL_PIPELINE_SPECS: dict[str, Spec] = { "stages": ["autoregression", "autoregression", "autoregression"], "modes": [ { - "mode": ModelMode.COMPREHENSION, + "mode": ModelMode.UNDERSTANDING, "input_modalities": [ Modality.TEXT, Modality.IMAGE, diff --git a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/types.py b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/types.py index 29be9648c..6cc79f3ed 100644 --- a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/types.py +++ b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/types.py @@ -11,11 +11,23 @@ from typing import ( AudioFormat: TypeAlias = Literal["mp3", "opus", "aac", "flac", "wav", "pcm"] +class AutoregressionSamplingParams(dict): + pass + + +class DiffusionSamplingParams(dict): + pass + + +class QwenTTSModelSpecificParams(dict): + pass + + class ModelMode(Enum): IMAGE_GENERATION = auto() VIDEO_GENERATION = auto() AUDIO_GENERATION = auto() - COMPREHENSION = auto() + UNDERSTANDING = auto() class Modality(Enum): diff --git a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/validators.py b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/validators.py index f1af7b2e9..2abdd2100 100644 --- a/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/validators.py +++ b/apps/ComfyUI-vLLM-Omni/comfyui_vllm_omni/utils/validators.py @@ -1,5 +1,6 @@ from .logger import get_logger from .models import lookup_model_spec +from .types import AutoregressionSamplingParams, DiffusionSamplingParams logger = get_logger(__name__) @@ -31,24 +32,20 @@ def validate_model_and_sampling_params_types( ) # Check that each stage's type match for i, sp in enumerate(sampling_param_list): - if "type" not in sp: - raise RuntimeError("Internal error: unknown sampling parameter type") - if sp["type"] != stages[i]: + if not _check_sampling_param_matches_stage(sp, stages[i]): raise ValueError( - f"Sampling parameter type ({sp['type']}) does not match " + f"Sampling parameter type ({sp.__class__.__name__}) does not match " f"stage type ({stages[i]}) at index {i} for model {model_name}." ) elif isinstance(sampling_param_list, dict): - if "type" not in sampling_param_list: - raise RuntimeError("Internal error: unknown sampling parameter type") # Check that the provided single sampling param matches all stages - elif any(stage != sampling_param_list["type"] for stage in stages): - raise ValueError( - f"When passing a single sampling parameter node, all stages of the model must match " - f"the provided sampling parameter's type. " - f"However, the stages of model {model_name} are: {stages}. " - f"The provided sampling parameter is {sampling_param_list['type']}" - ) + for i, stage in enumerate(stages): + if not _check_sampling_param_matches_stage(sampling_param_list, stage): + raise ValueError( + f"Provided single sampling parameter type ({sampling_param_list.__class__.__name__}) must match " + f"the types of all stages of the model. " + f"However, stage {i} of model {model_name} is of type {stage}." + ) def add_sampling_parameters_to_stage( @@ -82,3 +79,11 @@ def add_sampling_parameters_to_stage( sampling_param_list[i].update(params_to_add) return sampling_param_list + + +def _check_sampling_param_matches_stage(sampling_param: dict, stage_type: str) -> bool: + if stage_type == "autoregression": + return isinstance(sampling_param, AutoregressionSamplingParams) + if stage_type == "diffusion": + return isinstance(sampling_param, DiffusionSamplingParams) + raise RuntimeError(f"Internal error: unknown stage type {stage_type}.") diff --git a/apps/ComfyUI-vLLM-Omni/docs/images/comfyui-chaining-services.jpg b/apps/ComfyUI-vLLM-Omni/docs/images/comfyui-chaining-services.jpg new file mode 100644 index 0000000000000000000000000000000000000000..20d9d077938df094011562435b194a415e837d23 GIT binary patch literal 265984 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

7Bs^t)V5L%nrmv4ZaC9P4G^hRbQwT z@*T2SnBEr(n(;13pN}&~;9ggyQeJLv0X}4`chunM4&Nlur5J5_jyTW-;Q|-Nue(Y` z?hpVx1Upew%NV#oA#UR5up=>J9ybD2TG_2e1zm)}^yxAw>ieGb%l zPOHgU^4sBWG;Kv!Po8b?3e_}+&*W_C-Qirs`8j2tv!>j5``NR<&t$A6reEs95S3@k za5VsNVye=oclVrn~9 zbI;V8DY5wUUB&S(*$=Lh>El5V0jJ(}Qtg(1#VoC`W-#sNP?W=Q(n8~7kdN`z`QoiR zU(bs@<$WyCW+riuM&z+;Gk?D2N_|{J^mA6f4-rGisDSg!EA70Mmbx7ua;~9uib~v0 zK06uQd!3t2+t^IFNMn38=}>_O7ImefU%CNj=}Tk&Q?bt=LMlAu?Am&CN?@mTmTCE| zg1)Mk%b7juZ;TRg{l^LlCAIaH9rAx00UNbV;^V{59<@t%t zpBs9AWt%CyV4mkCe!rQ^*_}jdD1!dj!ChWnlwaa{{*}qiJ9FF?%wsWv)zC#r8bZ_X zu58cp;`jE#Pr6rrq1o%3vq~uZeYiHp=v6+quiZM&T@s+gRa#hbG9|#c*ItrA`!PN5 zn*|MPOC#Z5wboWNE)0hq*fG&Mn)0LZk@y>NP-p11kDnsd%ZkNLtl#(|+OF8l(caKJ zln$2|WjU_@8L!$|C?#dUJU_>YKBW_(5cUu*p<7)uw5TXElaN;KVi|Mz;M2pXi(CQ; z!!6(0645ptqdBVVMJ*;47N+ZNH1AGcaS<9C%jF5S3m)+ib(*6a7*w{ZH?dMSjlR*~ zQ8Kv#+=C3gt&s9LU9IrNpJYYfc9_ji`j6Ggabqc)p11gb<4f2%M2h*1T?t#8d>;vl&!%Kpq?_b84 zMQ+%CkG%F1&0)gD+|TOEI$k3V|gtSZgrk?+d&qgm(^#YMc2)nps2t^!z1`U&f2xqbx!{eHe- z%8ang%g@p*M)hLG)5?OHZ^oPs(lH#a5x)fh9dUNNgvJJE9_v;_^4ZiWw6S;oVYkcEFzFwiB@*2|VN@)l%Ffb4lGV%sls=xt~=$O1{%M-(!00-S#PDs+vfJctSmxhUBc(Pj94bAAPs z7C)AeQp%)S!CMd8K;i@Y6Z2^pzWB!T)%2lZ(Hz5!C(rmkfCNVx1& z*pVg3L!-ry`FY_s1wA8d?ZFH0qnj>YE6tX!?!L+pll6M%^8wqV9=KSuk@H&GZur*D z=?|CuYv-az=|_s9ggC!fXcLj0WwvadMoaWhgTrop+l@{yLPtNud(f|^%wTEgEmtxK z$|;9f^Xu_G2b4u&`Ea)~nfwS<#f1|ZNj1pkS2wOdx3#5uTY?ohT|fP44gazFI2EL~ z|8zuaT&-9Wae&H}98yA&LrTQw;I^~fBw16JJ zK4*9HQ1ew|e8h*|p9x0v$lx{OR84|FO#jiF|Fl@R?A;xfL#vvyo8 zaEHlb#8oi6KvRn+yi@#sh#URk68`8@%f2=E?|O+}PKA)<3NKdnB9lqlUU{-JpjaTw zWSB)yrJ$m;Q}nq}VXsUFgPOpHkRT=Qd27VkM~7IZgk9g0PA*y(zG*v2xMXG3+kd5p zNfkQ~5TneVtyy6CMjYwoJ4C#ZUr~9bw8<+^dbevQgJ_2B$JXo4Y_cvp2TyOu#Cp;9 zu=ZHIiT-iETeDQqkZHUp+eL85Io=_-vc1~HC4k@hlG<6-L+8g!h_5KDK8rS)_&9kX!LP z3x_Gs@g8;d3*5*3Q(W&`qpy_x82eP1_pvzY%5rlg>boL(yJXOOjHU?2OA!q~X%c+i ztOMt0*F}U+C^2V?TDF&&#I*A+FgF=M%=`uI zO`sx6*8i0ZasZc!)XnKV3l^gYg$Ba_xT+>dNh(6`c7bpfdD(S9-qoK|JO0Rrp~S2$ z>Nf)sKB9oihS75JT<%{Gz(G8lWWLS_!_I|oqriqS^L_!Y1O+sEyxBGYwe_LK&IY=x zK&|_0gIWK%i(GyOO8vn_`y@`Hd%0J!4H?vY6l8US!`Qj-J>n;C0eBrr_Yt29=uDNKMq&{%N>1n8r}K()U@i}G7W}-0NDP#zj;INv6|tW{AQi3;)i={ zDBHca7$F5@mF&r&0#0oht-j-2_1cpUh+6+!2_SIJO4e*nXj01FTGs2(gAyUY-QK<+ z%dxNHH=vk(PX**JC3%ZCWVpBe)I1O`c1Ym3X7#9aP+a~hNX}~_&6#T=1XJ9W9r{3O zS=7fC%=OR%BexSLkqJtmmgBDK>GCgj)+a+oP8?ONUj86)pyENT^VJci$G<$Uro2ti zZBl8Wc6#Wwy6v|DoAOd~lUzi|ytl2X5k2Nn{M$Xaaz&uZfquRZXKDXu16DLhRyko+QQm7l+hs7&`mi-Q!d~nNUegdnb6&DaI7< z7!7x}3cgvMWI7RhxRPIPHrUKN8R!1}W1;F(TaKNbFHA2hwLJpt5#JrEC$kh(?9+K! zY@VlUT{@M@@k%AA1C%Xb^_HLDx{EyyQz06pBMEO`qdQD0Rr$|lQ?&(2>|P@OsQ~{G zWh(iA54e{0yh=fs4znc?SK|ESm;wMSB4T`w2I=#`_|4zD8@@AaJgYo8e98?G$+;3H zQeR)aCJNIEYEwI`6VW?&D7{})obqDukY8)4e#nY)$GP-?!|x?VV~p0!HOEPb1u&JM z@(c^ffOu1)Q~aVE&cXdidGG9;mZ7IYe;W}E|~hf9okJ>;?N1bR-W>H)p!RvTT4 zt}ft~wfR!aS*79L9Nj5CfF9O9fs&V_Ps#qGzG?SiVET~zMrTp6Fz?Hl&_l+su>+6# zkhkHX?xO*VhNrKBigolU&Wsr)?nSQ7AAH&=k#U9JExOWm3K1Uch2`(+4jGGQ6NkGV z^K_-LX6IEsXgj&J2$~?_Kx)|<%4c5TFNoIF_VWOHA!}&R!l}{(Hzj2FrlN!`KB#f2 zB{X|SCCkM4g=uoIX9B0Oqzzu4RKM%tcqN!m(7kyf1^az6!J^AEN+(v2bhYx#W{ou3 zJkxgZBW zQm`zd8b*(ipE6%dIxuECBNTKyD3=!O~T2&pv* zVZ-r)i<`qjLuQHvKPq?dt7*=xY6<%?N>Z^-#w`_~h_KT0rt)(m!kgd=MHU9h0F8pu zJ?MIHh{a&@>ptK(u$KWqWGTk>;v4B6S{LNy4l0cjfL5dQ0(y7%nh1jAaq>!%#c%rKJ;mn+NF*=T0SWcRDq{cM&_xA0XRy%{c=p-?fxPtC4#ZWCNC>7SfY{ z0q1+`SqwMTLCf?oEHUIU@mYt$l0Q@x;H=%r-JLbN#I3&aq+2eDWR7<~00R*f}4BeYE z6U_O+D)3WrqS6Dm(P%a+ZXrsf${CM(m1l7y!ZRE$5yI(j08D27AL6TCLC9??W#GD! zG4V>nZUL;Hb#vnN9TMqZ?A-nz>;QkwWC0l+>~_mvkjyxkz6r9~{hJW-ZXn553p=QB z)5ro8jwTX7jN*Q1K}&lJSq517|30^Odn4e2Ri~uXnL6*g@(_fNlw-q@NdW*M4fNl7 z={%R$|3v_QE;1#^Ij@u}bM@4#buvSrssKZ@gZrw-{)g%h&xs+)`kiW9e?@G%03?LF z>@AESSePjyqfEh`-nbo5ZhOKYEpXCm|2+(~dN`7_?fx04$9o&72T&u=TM9fbe-`d< zO&#A~xK~@dtAMZMxf>vs2SBNk<=Cq32BMbt2+7tWelOm~%68PwMl1lWl5LlzUm!E_ z;=eRXRs+x|u3(w0&sefdJ$s8Zl=oZT`${77(8<*E0JTisQu|Eqtrl51pqGSiF*G-=!XvMjc=TF5<0=t5qQ-XIb?n@S6emi~0H4dU|I2oJ z*AoyvLMz!I&`9J^@9Z=xJqO(V?)Fv}=0wOcYwXbMDF?aoTV}9f$H*I&Ec3p)l__Ig zj-hF^8VE`?jJDi7@zhW^krA~@P1ZI|9n{v_i?=E+*lskidv%zte70Sv0 zVU1t_!x>i-D20F@ugJjSg9pJozj+!>_%~^-F`}jiCNXM1iS83_0XKGbSF;V|mkj_L zn+&Z9m7$;B`$(8*7d-c2jYIMlB}t*xlgG!@J?fsZUCktdP*@PkX*g~7Gqo~0RqW@z zI0KPW-#tUc7Wj52n4PJLkIdf2TB0PO)*qKF)&vYC2OOVieIESP#z=XzynDG@#vY$0 zaBcJ5?601i#M8Lmg6ij1*k{sX+V(R-RgGLn(R{Ai9u*v!{R4kN7eT$fWXIK@tl?+hU1;hteu2(X&iR5r&O)Z(r}~&HVaYm!#X-xS!SShXU$9=SBL5Q7GBd zdF2M>yxIIP<+9+BHhqG@aN#`T^Yir=gJA`*%Pg+VNN0Qb`jOJg(&WCj2~M=agORx_ zKMLxUvTjZY5`d64+aHs2?i6rFxg^0wz05&9eG)uQ3Ii%WUV^N}AmBiwPnrnTM`dvU zlv6?oNH|?ef@dKUIHo|=2T9vo)C03k4ao?hvv>(n8%gjPa0f?%7S)jKsxxC^L6trP zsy}AsKu&5mIh(aB2$D+d0QDRNny}t1&H{G~X#bEr5ITtl^DZTAjD)6gWI#zybMn&w zAppfH+13+!rvP#Shyn5-MGlO48}c|b3xK97KpX&16#$FKMmZ;UiF#{83H;^@=u}Xu zA{*Z}C%=|-SQ5KE@w=e}C=wAPR(0t5L-w%V*fGDqyTizFtZ?knJ3T zm{f8o1!(MAVgrn@+|*!wI-zgVh6{nx=rlq9-Ov%XTW1Q;E2qqf4)L7wGaB5TB{E_p z8Fa^wGD7q%Eth8r`j~fF+{sJnPffc7&nFi=`Et+F|CH{GLx}5itKFQ=j)bUYx0Tho zr!P*w(x$0CArrTcs=QgcTnvKRF=DpEln=56o~2}*TUDsc&GR}c7SYfh zZex0Cz*gKKKbW7FXH7;Pub*YgIxWj?TX@Hyzm_wVGW(5v{Fw5x`SEyRITXnQ; zoZjp6Vb|Qmx%+7Jr~qDzmKK2w^-jigiPEGX?7suB31mM{CQj#cQg7~1fdvD(Q94(gSmDap7AiA7l+3CP1SZx+P zHWBj5+h>T_Si%ThS_XBBvY;=EjaX4WX zYnpUcs6~fz372KhsEJ7O%Eqhb=8ND>>0>i_nkbo!%&p6n2GmElJ+v_fuf3$c5)u@9 z<^;KqQUw@}gbP9^ zE2a5bxidaeQvHgpeSI^!;TCE9=baCwRv3>l;$z1t)V+#EE8IS`Ju`6~oG*(;y^sxp z<_i{{73-EsJ8wv0N~(e`KEC(zoIS%umO#urbg5=O1|4G+Krc;@CVXV3>V7V?^DP}f zrOb?2>ME-Z)G>bSm?|2|a)|a-<@n`NI+o8Kd1GvBb!SGvwnS+929{~~CRhP1k8MJwnA=e@#%Rng)m*Sn$FKFDcKyHHKfKQ`IDU*q~gbSl` zGXO>6vRyp~zuWrGlngCLnI>G_g*cMXa)pX_iFg+nsJG`RUY~jN3Coavp`T?oNLez+ zMgfunwxCD|9;bh2^#V2vI@yd+xgAF@uL@8@4_p;f(QR(WY3L&cZ9fMP(*fjPq;h0= znrpfT!O8Zs51rQm?*c#ZIaN8(n;Qz`Wp@Dea;=)~Ii0ap?$F(hA*a-b8}OAk?qZ$M z6&cWEtG8nfPK*TC*cbt&qUQs!<#N>BJ=i+mRxdu=GViGO8|V@sGq>*+VP#r*N4vrt z#w5-gL}xFl6>52Cx;G9I)-X{Li6n{6$ak#H%F)_8v-_$~hM@G7Wv5d?tj-~k-;Fm3 z)V#U25qyp~6d2pBCC7uG5S1!N>Z=`heV7tmkqJT~D~_`o3u>X8WnQCl@CPA6O;R|G z&Tyiag*gl+Ax&3s*%_yT8I*ZJyP*yqBPQcvYLkzqi4rnpW(GhX!rdJFaJvnI|J}jG2?3MwxvEmmh`YZ9S?Y5*{n<#LnK#$aJt=kN9}KXfu9Q z7mqc)*`=GWuRPwTsJX^6FC)JohrDOG?fg1*N4Arz%{nXV*I!Wnq?v&e%s{AEg2Q3f zh8+kd+2%1~y1Gn+!)z}H_|L~L1P4&E z!#6Z!6lpbEvk7>ukP+o<6NrJQxaOYtsNWZQ%z%%iwQ!^Q4=#crPy1cp^s0+0x%p3= z4kyBRkqKrNx+j*WUGkMrn1#$A49`g*(*;E`-S1nfx}S}>h8#TSWxgokW_oTmsWnxRQXkq zV$!k1gFHBgo}3xy*2WC9-MWBnzCwC$G|}vP?iG#eqZ1B4smD)tIUP(b3sYr#oxXDV z)?Kvj!$~P6F2D%=(=~KSgoVwC2jM4pZ<(NVb*7`a5u7C;uyM@7-Apf1W8M7BlWFY3 zBX!FMcba}SOwtzr-0slramHo55Z?MgIPRLw6E|?cIFC6%j)f<9W8$OWrGCZnF}G|n zk(zZ=Vj;4;*?EZWEb}FUUORKHgfRVlQ7O4CRj0XTFIwoKgDK?ZA~56Y;L`A zV+kzcc#0psUea}8!oztb;v{@4{OPHikBgl@`-m*aogm!2WHI-qxQ#o+R5FPu{oxI` zU&C!$P;+*xS+C!-@#Ye*2~D@PSi4cf%$6@we_b3eF~wtUuadYr(#%5>bKUIS8cset zMFqfboqZ$c%}bZ)lI;%pk3Bmjd`Lxs((dtSGRHfKB)Yeg8U;k%{EXXPzG;%dVSJTt zl$H{_PsSn>Nzsk25o~;y^jOWFu73~u`QrK6T=op!2-sRm;O#2V@J#yWnAnAh>v>;8 zLb{usKXOa2A6F+Wdl1u0%EP{itl1#cA?Oj}W70v{C;*gM2;kO(P^_RzceAZ)8r(3w z8~{${g!w`(#2FCU93&gyLs!zoYk8*vG|~d7X_z%&lF>z0vsSFX8WG@oC`fb2&4E%R z3hu!BQn+*mwh&TS(q_=IRGa*X+SuAG0P$vb5+aFbA8j5nP|dKh#+faaePc7`_&_HQ zHb9nY4x<&5Zme$mz_H^$x_a*&X5|;bdNK&h`T$I}AO8Jo>u;9MaA+ytD<+=*8gVWq zEHA}J!N>hbtCv6{ih61-ly!Ey4tF|wcSQPVv_+6SyS0Q-nb|!}1I~%kF951(FL-0C z4qWap|AJOeYFip8_jJy)J^dW}tW$xuoog}qXP@o&RiXNYE2t&94Y#Xp>`hm zxXL#t!qe`-aHEXL=wjL%7Y~cbNKyGKL;am9x01+|e*`W)6!-GEiEK1XAF^wBqRQ z7f^>=1d`)97f4%s4Nlo!TS$2W9~rsqhuQgUWZ?zSiH47)jRC2%sQ}Yo6V^4W!003j zVb4lZOYNDtg`5Sz%3e(#@T~<+(CGDLGUjRl5GzL+rj{cEn9RxK?cmpF=JV!BkUKR>QgR#9TLCdTCzm8w0h2d@v%p)L90?o(Wzwn0 z24GYrIRS4bDwPq!O7h9@&6q>UjF>ueXaVg2qP*UWkaJSoHh@i~2w8P+19v+r4u5tc z_}QfcZ+E5u4wgIFg(@?Z1Yb$+Asb#{gwgo@vTIXfRcFo*TGX!Heggndcdhs!vYmIU zqa2-t^uI#K8##^wskV}lSd>!+Oq&7$Uryn==gNo>M+$gr`&Zg613)J>_Xj8ZW~@Fg z;{6s1XI;vaPZbs1DE=Oc5?V)gmh7IJXf-?XZT3#=aMlgQ4$o7fw3aif7tUUpJr$2& zd+t=jp*%#?b-Ep~aotJ<^J2ullBe~8G|K(_!WD*5NBffvz%wHAo?qwXusllM(BIm;oe3KP77M~D$4Xh%n=h!pvs^rBpxa6ElxZHOmW?aiY z>R8MKtoS92*QO?f?{Na0M_`WI5 zZ%($$frFe{h2I<)=j5||zlVYoDXGAJzIP$8=HbyraN}nB)$mSajk>5FF8a%l7mh#wMD?> zEwrp77$3sS-U?rof$i`^>|=D5QLn4I9}*C=%ZZgy07@0%O9-ZyS87^b%-X_~7j?D} zd}wG%Kc`g-ur8}<^HQYgY1Q)Gm?SFd%OMDrhd!R4=-x&fP|MyR#LXp?BK+iz8pB$( zsF(qk5Wr$E$)F{DlLmOCLakau4%IuE!F^txJDDykZB=I>i0yTdE|{>L5XU_JOgHtu z_^?4Lfc^}IDf^Z`i~ zQ@!pqKxAHrQ~F41G8zNyR*^@FowcWm8#nZQ*yZZ$8B^$9G7<(aN*ScGRU8NWY963x z1alq;zd1Tzc+z&=APYi4&d6vkkh7s&6-=YeFMN6#WUBkl@PO(%O{&Vrvb1K01-}sjPYOIxM!Xy$Pj!rAU0l*MNPR)9~$;7?K$Lf!XW42g7oHh^;E5Ap} zZ!5^4C})!z+UlM5aUw=}+~Tye8%W-fIO8K}D-3ekKLWoRs9sp%0hJJq^u#&T=k!)@ z4%a|Ef{l|#9-G?b0jBsCyXb*;sg?3S@&Xv{R1KHc-Iy;omfU#9>$lKvsa_*;@SreMt-g}X!wTUjKA+A_URjHa`_912$KDO3swNK_QylhuY!I$(2VEr zk3;`sDN1d#faASmYhPpQxMB1w-W}3U?4Skdc%v8J>OTUIiAe(*>w8mV8>E>}&&hFU z{5|{+uYktw;;VB1ec?WD*#;nZ{5LauycX`SmEL)D1?2Sab^a~=9z{z8@S)(qD(#T> z6R30f7c=i<85e(SJj>x6_%`=OsajaW;Y|JLx6fnC%DfPCs7a@)ZT`dBbb2-G6KzU=UG{mpf(tI#2rHWoujh;PokdIZK_oNDwsjXL&+*&Pvs|oMMW( zDyq7pG#ur9n>w;imSPFc12Xa+>T)1YR(=upA=d@AW zCkqt-Kjg3mQtm*fdEoK(BwJ#?k#hDdwAKTcI6t+mfe@6GCRRmeYDx_PMv|x(A8=A; zahPwDZ5;qUpIpe<0gCv5g|-QBbC8LA!1S6%vm_USTOKLO+wCpD$Dv|8BA)~Y*{(8E z3$-i&1D~S_fSk_m0h&&OrcD^olL^4>Ofh=2f+GF7Ae6oo0HFttNxB5S>@G&H zFyRbQq0&l5y?<_=@qv}`nEPYk5!7L|$P{=}r=l`zV*U*d#dCHzr=$tVb8{W@>)Z>` z7h0wF^~^h^FzN#QQva-Z9{+~e7eNuh%x3OKI(@i-T>+efQd+GP zT5Uk(T3W3zh0~0np#=E=l#(bgg6T!2Rs;$}D8 zq;dLCY=x-fj(Kkj4JfTFZ8_hS3sS=4f&0pYGlej>0rG+lZ@hF+>8JDJPol;1EXm)7 ze*-Djp#JWpa&gf_)0x4S>~WCGG5~v>EaWm;51mwcU%mAd5P2Kg8K;*9Qr7JT?SOy& z4#*3-v7n|i`)yYKj!+D!Isp5m(WdH)YVmGzkWHWRV-5AvBt&ul8UHC6AvFOYZ7b6_ z5x=|?+EV_uGwr<6(F(~fiB_rD48DBP)ZQ6utFAFAM_uJ;2hd_UHq-ovJnMoz z`y%D&Cm8`)VFzJup@ihv!O|y;ZUSuDQ14oJ+_-5k0YLQ!wFVO)zGjWi0AgAkQ-m;9 zlEwSRx1A{%NC^|$1iyEeSI0<>{Ur`SNA%m8vQsI&A-_#6sqpzn*x2Rlz+smlQF_{$D~4G4 zkj898%wC z^EGxet<_Iiy=ht^fp@92AGm;yYA3rvEX#$a1J(7bpn-S;!<-)xB(+VT_Ni+PM zvTQ~!RS%=o5WNc2)rl>-9#IrEFM1)5_DT3U_JVQ!{4!#XXJ zjzea|ihtP9 z&Z*nX`NE-K)idkFo$!{!?LDPfI_dD)q6?HlO=laZ@!V82Uc#=(QGLQ~%S@Xki*32~ zFZFrlz2{!PicLREs~4#um*{^~FUk79CP%dCBepT6d*fUEk##)rs2{f6-2# zZ~5}RZts@^;-^Il?4b`HFFobCB>O*eA zlBOk}4R!a~wU3Fy`mB`g9nTxhy?-YZ;;N$TIZC-uBb0>XtNEogkrtKHvmDJXukBm*}^a$%9~MWHiUSjdjI0A?M~%3w~&D1RyXS zK*$`>Tid&gHPA!iFX->jT#y?zNz^D6`dmPgHP9$m6* z$hx44-S7-klJvh=-{T0%9X^E)Dlh>RvR~SFmkd7@#hySOoA*?8fLPCGf4UntlsC-g z?fyU-9zS}#dQbZQVpm3l2ugdu*p61*xEcJ##K}sgu;9t#Vhw@E{-_GP1c$&k59jxj zsvSZ8mt#+(<+PWS_jv)OdzG{hW+cblXqmko{Bp#;BzwBZs_1DL1xlJKXj13bRhqNW zX${cT=6WpEiulPXvXmb9N$BBh)_|hfJ>Y%1Mxo5k*(*bzS)CK*Y4>4Tva?`ApYz#? za2p3=fxQb(OLk_L(RB7!yG2>bazTEtp|U`Hep$rL?FdUHN4Fz>mNe%_;8Is9=6)eI zTPZug*gUskUM7@>rZHkKS`?oDUg_}SeV!-`gILU%!)Q`jqe;?$aR4{SJH}z(?v<->_ z$aHuXa5(sgVnQYF0k0gAiqXJbiA%@6#zx3 z4R5lwEa?^&o;!Dy86I+&59FWFf&2m$wV!G~t68llqQYx3YRCG7pV62tzbS=?qlF$! zzGn;{4ELCqsb`nzW>MCT853{SjdTzB1v7|~7A}qJH-GX}&g`>1g*@|r82j=-D8KLj z8H$pnMP*l!t)ztPLnS0@LiRVwzVF14sALzijtx>zhUs@_Ncw!< z-|zSLSEJ{-=br7}=Pu{Gju5?tiJLD2ITrJtKhRCQk5jkB%zo4cH*{3DMFg`=CA)#j zcsMX%dgcs9*4^3Y829IzAM@mtOYb)R=21w<~%OO7j2-d$g}WP5w*vqOC!Y$)9( z(P7M||1?E=lx$mK_`Q$bal|i5W1Xx^ zs%x_K;b}ty54HNThWk3|7=K9jd3m&lR^) zTf)N=ag7h+LbTVcbIT#lH@Y*7#7iBMzt{ET6&yZ(o8e|o@nh9-#NwoX<6c@IZW=GZ~52Gp`DKpla(?>Z^$!b1m8ikFzEZ|!$)P=Vpy!r zNyDjcUOcOuQp+TJ`60Na23YxrDvkx)d>hx&$a(DFk{rkyAV^N@TAl4K;>s`Q!M5e@ zezAi4no}fIq(-RZkh1NkAc?gc&z`#bRaU){|F9Edvdb0?y9g_t`=m;APC8(?v_uv1q_h5HN;jtIc03sKDhcJXifvM?r z0e*`Dc6A*1EcO3PaVHA%r-0aX58SyP6U*WZZ+eHsz6y%CI&A{w6$63)&>uFYE^EoU zK1{D6#*?IRh8?e&0C)-f_?B{?*9n>GnVyc&;Csfjt7(+aEBS)k9A+erA#x{Vj(h=2 zTiqQK#w9R4)me(cxwKb)LAsNzOH8{UUjsL*rxe(?N5eNN$!uq0ASUOaT}$%zA!W{K zxsv`C@n`W#y(k4v=vXEG(%v3S%FhBk#a|bL4|2BT)JFRj!13E|iNmQTk295XFuUfr zP+$~0yv~Yk0^k?FFQ^H*4drb;UkEJ<@IpnLt9aKr_pa1WK}G<6h%E=q?7+FGtg{(^ zLf^ZswR&*Mj)iV1#Tf^!rg=*o4aG^_fR(pWUQ=-gAc#eUeGnBpD&`bO099JbB?tCC zUu+UJBzp5XKz=Dk10I~mI{YD0qD)j1k}NFSoYInOd`$1W$j7=vPN1|qFo}+=O2pcM z<(p~7Gn*>17*o%8UZ+^tb0_3NQ5(twD}5lY=t3OFkM{7;p0t!>7zw`0&!8ST8$f)K zzt!wGGo`q7-w=0sD+WR{9-J*AR=k}-zu|5#2Z~e?cl)uJ&fFDF;IMiQu7Nx%?^-XR z;|vh;IB{^V)7SuS^72&f2{vOf8OC(bgq?J_kdQd z6$`J&yOC=E0Q2G}8h$-2u@c?O{N?bkCpJHCe_pPG4-dy#Vpw$aZK$a6h!$al> z>@vW#$;_BK>t=Da#U^j_`pFAnLJz(z1%yaqvbG?7|BGHT&w$G10u`NU#ygJx?M4Rc z;Mx(yMT6&XlzA?pA92F(-9A5q6ekX1^Z(Q{{EtIr0r=(*i4?g7ro$_JXxug)D5zj+ z|975C5;YY0ms0*#ks3Gge*e3D{?-3lqQfX)uN}|ce?QJkH5EYDs>j4PN%MI>vt{oK z6N^4H&ypc(Q}#FmHL`P)UOh(Y`L)DI8MQ~e?--tZjc#P{|1Y(Sf^R0*cl30<{6=*Hz4}VDaxu7G})T+y0)-yG(G-L3&wK{hrVG+mCQMyaW)O}R zYH*O`w3Y;Rj^YIn&)4qC+vz_!AahcT8%ZF_hB*|3OgI8oM3g})7nw*QQ-j#T> zeUpp>(r}lP(+xoEI;E_wC2ax#b4WheROMJ>;OW_9s7_GrlbP@nGSLGw2@eIKD#GD$ zj?58v@Ht}j0By$ZdY2MWzm~j*v$>JA5C7L!C#mdgb>o-p=DANvbUa~673keYh8YgL zOSq0(A!-;^WX4`MKrbw!H022}`M&JIFDLyI7lRuBja50z6GH zQRAhI!SGT>5Vy*~$ZIyC+9_1PfZ;bwf7_lUGyUS&bq0t?XHL#smR57n#gcdh#y9c) z9ssme&iR_8GjAA^phAc6QyFa>5(P3A>7+HH*pF*MrzVtla&MSe!WY`Ih9ZiXo-r%8 z&v~{JoAy>f{;8_%qp2G;G}&vLV^8_~uZD)Czm;g>1f^MWK}Xw*Nbu#k8HLrg-W zLis*!-%uinS}*Gb6}1Te!Q8iE`-U6OPag-d9M<6Xi}?S?zS6_4Ub<17wAn@yyk0lF zQjh0JZ_c$69hkebbvkx)kJ>)BAU>GDt(tW=$XPLkn*+ctQ9SiTvlTe%7@iy-nedJY zu{74e0-kYzJ5vI8ac!U!U@%_%`c8uQ`vjf&l=dF%>Sh0dBPmd?Uf+u0juhaD`cIcx zeZbw@aXqnRc>Uq^zNe1-bW9=z&zx&M?%f_OGzR~Qnzfk-K{@{-jwiVC!ndhJ`{H{+ z^!*k`q^rYiuhDPq;R$N@sUR)C7Zu64MudjucTmibq&_;UgkNU##f{YQI$5EG}qoA=2ZnYjYl`-Y^ zL>_*5lH{2I-(X-iio$zAef!FNEHpRQKsr{p=Uh=O$N406%5AqZ`V zGJIOsj!BDUolh<~8IbtEfN1H;(MUS`y8m!*vB|u(Y+p1J~t5@!X9X8 z!6X-Dy*ZIT@5k8h)HiMM7u7DDGA*(lEr0Dxo>t!^HE+Ee1bt&w^s!ZQ8z zZ=QInaD%x1$fTE$;=V!vi^u&|#LNOD!ugYDvhvSnd_sy|vZVU`ZZLU-Xg} z%HX9H;6H$+94^Sm^p%${!>aLN?GE_^_k(0(ELyo{I1d+N|_m%hEy>V=)hKRQ+Qm$(|`a+ zY9gWW6Cgy|bX;X6AyMTTjhGO~ceLYxmMzS6#QV(2H&XNlsEj)_CPM8C>^MIfUjo7D zoHPvn=Ap}D%m7NOcx{J+wn4e4BZ?(;MCJ%Ow5QvP1O@Uuedab*&d>nl()Nf3z)10s z>*Q-6pEyv^Ij|*+QzO6;Y(`zz8#=(MCv;Q!lbb*94dPI+hecR7h1z@BZz+e?9|5=V zlU~GeLGh-p=#=v;K_EF2pr4sx(3L5iq{Jx~PWUv=+|{rJKzgoYX%qL*Ujfe%Yt(Jh zvHkQW(65wKu#{u*<##w(Ek*sI^ltu;BO=dP(o%SY0B=_G&shMjXgauyIxF}ixXC9j zmu2~_3?sO8JIY`$K`Oco<05h0>X>JG7jpdQI2lA5o5p(I&u#p^c3?6Q=Xa*WHX{3Q z6ki$EQ#D#U!K4X~ECzx034Lam9}j3dQuT%U4E^&9UX<>k@&U|mh{V@mEMii;yjKS+ z%phv5Br-Eoa;TyS8Bo8?&56JUiG7!n{Zrm+tBEJVJ9D!S1*V09<59p`IO2MzzjlBl zO>*OKT!4WWqYtpWRBLH=v>QJ-6DQr%16yn{z%cEIE!& zwkHB{hD5|$N+kDG_*9ZZ^VHSIkIYIrYEI^+YVU-eA8OOqK32N=;GAF8VbUCNL-2AI zeAa$w9fjMn#mhVgEM;sD5jK1>4&}F`L<(C&@zW_{ba%8A$oJQTS#r@_@<`{ zA}7ss`YmeB#Lx2;AC1HV6q1F&P ztG^)I@(?kHSIul%85Ge$Ct3BQKIENaSR@|DokqI4rd%%B=@JfW+Il8Gar?ZDYQEq3 zmozBGm#2Mqg5YR8pKu&o@T@(E@acwQIzg>5Xuh*Y8Y<-;k2SY-^73iR{@E7BrbY_Nu0+G^kQ}hmcl^vtaB2ZdMf*#{G_X433!}+9U`QaD3*?%gViEYMh zJIjsCZKuNJ;2vkvCd=j@`5k`g^R$6g=o~cI!2SU|4|RZ__MIR%k3tml0*pYAt~=Mr z);jz0_4ymH$IE{8^o3XG)5n* zz~-<*pgBBDHh)TBOI(e)yvh*mbLk*y71;3tsB@iiHL35aNjBQFvnB2&88t=Ia^ea= z0k#JlsdFedYFV@64t!3__1VG@DZzT+6RZ_n(~ z|NUQ}1LmcjKOMlE!Z*8f*M&f|*bEFi^$W5Q1KU?4zQZ;Wz0PuGU(gL=^MCSBBSeQk zU=x_{H(}|0ij|=Dox@oh9=|J=w2kpOW3Sn$xK4WuO%15u-bx5PT=A~Z`OLNcmd8ty zOJi*_`zb?Fb;%_9N@bg{~PECVnw0WCs(82b{^;`&ugNpX zPhNF94m+VDnQ3}eds=NB@yP$uo6!rhmfwG@s7G!dxlBDi7IaM;0Luz3c>Lk>8a_^L zPjU#Nu4l%XJ6U-^t2IQrNMIdz&rJ3UnINnC57iSN9LURm?h1*(;75E~YQzQRNZeO= z6-WbmnRtkmQt|HB=%U82!lyo)RYbD{@b5%3MT2=F{%~MQzIBWq^3xPuhAOI96p;cE z=es&3koV#IV2lBkz6~ilpvz%%!ga!w)gqtH=npPx4OB92FNhqoDX(80;*$aq^$xM& zbjlEe-My7SNve522GZ3I@?5`z&k%ms{D2XJEe+#Jm_Y(8#L%6L$_&QE0oiI_ohgl~f_?J8KeGrfj$ z!B8N~36fMqt-Jv$b!Ag~x`4eaQIKEog!Bxk83N*q!1Wh+yR#!$cNGFEYAxIm<5&P2 zVrsYcKChFY)VyXf0cwXHBb{|n-aM^#C5UA7TMpjARdyp=%}Wx;uP zy!f5-G>d|3iBw7(2E)CT6x-4{RFS4PUi9yD)d1DDnm3Iou_%zZ^<>QGEpcs7rS^OK zl{=s+(7eAO7f(-YoJ$`~ImMLK-w7LQ^N`niA7d=wBWh$QP9WgMQFt1K}PG6U-?i;4es0x*6QO zGn@NKcEYVDY>~0kGUc_PYyOXm(&1)iDmt#7Y7-CoOPvJL8EwQaNzXbBuTmj!IOfHq zKR*-6Da+cmzyJgppove0F(4Jem)Q_(pML)V(f6cw$_C$pet4TW9J>Lp3C;uXN|GyJ zlBxv-2fV>42fjU_$uGz*0fU2oLF_^J3|0-4mz*n|+H2+!)PwWhCn2jt+B*mT$qd`s zhK)$~&Q2+1?=e9YVAZhG> z2~9O2ee1ut{!0dkzVgDpUVh8|8S2gOrr7PZ_`=tn(mLTyjVINhx0bH zG}ySW*DuGAONYu*;q(XwuGv-Qy! z-u0G!t^CE91CDx0AyzzPMD9|l8j?8j2br?)51hTEPbN<1lS)f8-&o$Hc&&-;m_ zvV_-PStq*$ z7G$!d4h&aQB%i4;Z+SKtt>wzND2Pc%@*MBesvSAv@Wc3(OrUYJt9)lc?4X_W2U_qc z{x4S{XvIrlUex@b_YEHAxl^aKAId%1dUot^PZTTpFNo_6>hrIcdg&Y+g2%chzHuY7 zuQn$QW!;VJUfHy^oFG3h&1EMs6N*CqbI_v?{sz&IEeFm2X7Yta1R*q4R2aQ!C?JNIs%>QsB zGpVs)p3iP)kUI#(Y_rVV6NJdl<1VAYQfu15IQ`YM?=H3SF%9=#>9(g-Amp6PrTu4` z$Ww|Ag;)wfFf?MBEPv(#FfCN>%@Bzc$c?Qz8dcC*%!cL4U0VgI%nXx>b$lGr6)3$V78XuCbU9)Ux5>* zj1;5MY_@M}S~9D|OwTi4>24DW@@J)bjoztn7tE^RD(=Tq>H z>gv4vw{qzQ0baIj$JC#2!)`~DfE(&;Xg3ZE>*Y?9KCKGb&;RTM^{1^r`QzBImE9Q= z9D0OetM?@s|_{`~-T zBQ0C5k==W<4eI@qL+L7|h|0>;RtNbH8)3ILhy+TqBQSI7Gs9#Q0>BbM8YE?^h{~K( zXsdrb4$ZHZhHFBc+6SnbLLjm~RF+{o4n9JHL|!D2D^gcT+=w?+7<|Pz?W9vppr7cs zC|}Q#uTl?>{k-n)Ebaro`H<5LWU`P=7e*;AG%?MTe7NW%P(%(SZzw?;&Z(?`baTl# zCJu-`B&7-^DI+_U!Xs(}pgPRFi$Bp|QuHD0L?OoZHk=yqX(^B^kXg>F*FWqm2-`(c`A1!;hkkVAG?4__g1Aqqi*v}?J>xve&0RZ2TjO%)Q@R@X~# zMA1>`v`ng}3DKsS_kRp(X?yg+g#Z_i6=M^`=O98}kVU+LNckA%L@8fiu@Rh`k$^&O zNcsx|7!vu!p_#Ms+w(Re$h9`dMDGS7-_~nEs|-t3GvI37d&*yeM3Fh36P1@tiw4>z z5`-!o7BQJU%%5KnMv7KIe_)P>oFfKE$OX8?5AR{X6+wunE2#G^J9uE3;#CAr2~kmQd|+BSjOlvlkArvT!E z#2A2uTn?dvw}wzfm)g$YGh;x;xJuih$i;%z2Y26l7e@yX1*@0|SzH>!8raDkC9KEaxu#-3vm)kXFe5NW33K?-c;=Lxj(oeHu7}pbZ+3c zf;;NQ$V=V;aPnn9xgKy#{n<3Ah7Woe7NBkgbs!ToFMi@)cwYH%mb!)@{3qc zT>Iq=_V2;p$1g+sa*m=Ck`4V!e?g8|#F7hDU`?L446ff_e=;|i{}rY8#86a;gnf^t zZTM0WR)uGC@f8jS+vqkpJap)pZ{rtYRw}bu>w;!Me)mrfMJ6?-_3953)tRTemLdh& z#oV1*Ao_S60lrS`^HuLzeRc=X%Pzn3MXkoUNaMnTPVVH;C%zZI=pRKHqLjN6KP?W1 zX%Bptf?uCLA-V3A3Sl|NHd;IwH`Y%LjoQhe+TH*p;mq46xNom;PYiZ-{?;_{J70_= za&G&>&@h+qp=W$1S)NJ_HbUaH{?+BrXM4hHOP!-w*lYuSjPXIiD)9=uZP#3U@PjNi zZ<_$bt~rfLbj`kD_f1h*OYJl#L5JuIg`=M7VU~VDKy`1K{Z}7?)Q8UyGdRH%dm`%{ ze6H$@r!7;effs;&Pk=qAiRe$^LE;<#rLTX09rv8m2-^gqzr6u`WM6T64YO0kvU7c`(Xy;^85cDeD_R4q)ix#B z&oS6Z!!(0&Cq5Z<%wOR)Di2NcLGhNqm0=(^dhn(7j-qla2eAlNA^U@ zgL)~l;^W}Sm6Qr)d0I2{*stUGa^ph@)+=}1#$%EUM}E%FFFbi^HCcdsaG3?kW~a3w zVEk0*ORHca8S|cU`@!fG;%BvAo?1dARc>@_JilYfruBrjEc3;7-O9V=LDy+m=Gt(vKX{U%n(@bd-fh--Ot} zWQbE!h@|`eQwo8UhZObEme&~?Q{Ec5#pwsPb@A=pHCKYd*Q5g^dpFIU8ds@8;q_ju z^PC=>$#%kH;syBnNfLB1ux=De{D~e6Y z8DYc6U*@pNoMVR$SGG~gLmn)H_Y+Jv$wUDP6*>k!d?A%rgBTpc1bEc31q;;TJcn`H zh^53MPxhYkRj9&OS^z3oR0~MOLVzQ!O7?A&6$==84lK(-+!P(;c~daXHElwAx6jlS zi|c@%HMsdx+-RTdg`kkEBdyt-2dKl&ocF{?ar%g{;itd zUGFLpbiHeA+|87Ob`|ZX+Qh=K%fJE8|LryZ!s7uOZ?EVzD*sj@Py8Ph|BDj$g?ax! zdBgv&^~4EYz@^6}-k$bpbKx_wP<2??~_1 zOX=;zlvV9aG?cr+8eU>H!tWNLPW02l7E)P2iS67Q|Exe;Ii(E@^N`?dyCHomrsx45 zYGYN~EvD$+J2@9k*GT?z#u! z8-~~ulEl{zXCos^jcuBZ&LCJ%)%Y*w>nBwV2#nfEYcF+pT{ZaBb#Zt?-jVI|mHvl8 z-xy_Anbw&5bHJxy5^UMb^N?ZfR-)3zmZ=R^+!pA-i)serM9|?dNt7<+v#=PuG*V8) zyr=UFr)9USQP@MNs>j*@qr!$)Z~;^U4G9}l3KATWwfe?-DCw*|jWI20B|jjJ+AhN% zbWoVPctPL&gfMs?@?oi5(EQ+TFL6eE(76YXO9?j4d_Y*((wZ&)RrR^p^>eWc5Y9cRVVMCA)2l?%l3`SBdN>lQS9>D|t|ea7;71 z+Q9ggd?H!)F~`v3QAx4oYZ6SR>ob*`Tc7rP!5AlwXXp90c~_1@HYKKx>D*$L@Wt{N z)51wDyn405$hb(wGjh3%}1J8>c6{xJdJn_)-qy%X!DD1|Br zL7YX~NP~AuR+yL82#Tp#*!=|?)6ISBVlTC%vSF-(P$=lE1EB$D1=hb#QNKG*wsu)v zXgtWRTkjQLARSf;X?~RNP!H1@cLyVrsjiTr70Hhs8U{PzHqsLwOxgdOPL2xGz8z(I z^evknxKVJ{6=p&z&h;4MbP0MbH&(?pxi6d@Xi3wWJ~}dEE+@kJ=7SVRKmB=`#=!(G zje;E_tX9Wr=tw_}VYh>Kx-73~?2p$;S5HiQcu(d~-D*PI=s5_m6Lu{q2do^tN^pVP zI|cde4jG~slNH}erc;;=(dOhN8?Q)4ydb)eMKrg?fJrr@(+&SIcX%Eogd#K0UGtZV z2CvTraRglzIPqM}*(s5dY-vr7vn;l|yeJl0C|6E@=n(@`oxN24bkw!h^~v=|-lAVL zdB3vg#>O&|7UxRKL!UA_%Q&xnj(b~~ z&6huxb&CZ1B5U0Ag1_FiTNd1{oz=97R4iD>VRr)enSNq=SZ;ns%!QUoff@D~Pg6*1 z+x3Kq;px7|uN+5SC5^O*$d>vIeR*uS{_;YXz75osQES41_Gg)XfEvQ@f`7BtqQc8_ z6t>oe0`FM#kKEwRfCyr}(m`?=|LD+(l2 z%A>x|8&FnxWVUMfIHJyD4Ewx9-{|4zF2Yc4bqgEcndLj}6{X^6w+I zXua27e2#RW!TyosXbD1OHU|BYyP(i|j)L^2oCt5+$B6#Pl3?ZH;u#4hoy@7B3+>O0 z)e65|j#T{AnVD#wVvyNui!@?Y;14#83U*K zOS!uFiwVyyx%-+);@8XRZYgvkk;?R8>`>V}iJ;YC6p?jGXV}k!hc| zvdX^99@3xH9?{pRKtptNtdIiY%CkG60g`kH?Q3!k4h81@&u{bc);;u3pRS|ya_0XI zkn4goH|%S-nj1_L`CIC`i+B#%iJm*xRQNUDxQMAZQ}^(P&MZ->^wfwfsrU7L{NGJk zio(u4H@+u$2;7sP5xbKvYNudd0=xrt7wGUvTHdO0CHjU0%ORk9~Fbh47rL1r*G z=&#@X8h*u3{yjNzBRXewksZko+7lzz9P&a}O)r{!mAYYR$bNVOTic!AF)Y>XFicY~ zDq{K%TQF0<>8L4h(${`$%U9gE(UK@ zHm-o|(O(dDt6z}ovz?ax0cgScYeRW+=&mcqLG-RUlL>doLhHYNty_gqrk1me2E_21 zTU>GEetc=nkmUT+K{|#_xq!S71}3l=L#u6zQAQ+ggjc(1YjT$l6fJ2D$$8G=Y(l@V zG@qLz`^2D+E{C|5f6ghjG^c2(b9-hZ$5Io}?}xtcrFtJ~= zZzHL;=V`al6)VSOXx#sR=0WrHlB`LL1un2EPVR?-ZNLF`M#^Rh&SOV z-2#YY=HOeRhZJ?Uvh3okf*VrwA`D#&i;GaDOgMV&9Phd9((Cc?LSwBbW;GjVsYNgJ0YCgHyiB5xLdW zu|tmNp(x@CP+*x9)SRPTdn>VHN<%5UmPqQ9lmXMcwl+2tLaC_N>UFweYN{hDV@m#< z{u*;24OnXAcu|d^JEB%oL4CB&?)c!97>E@1U6>+RMYyPVM=+1chfqZ!Mggg|ib0MB zMn$v?q#D1GRdLxiL1&+5fUo_m!hn>1X4ed@`M9n763qgf8swnHwF%T+$rCejN6db+ z!!Se$uEJ|@#H`mEDp9rCkPW%yNUd_5M0jNZUsk$}i05KO!41WxP-)%aKu!jG zkR^Y%k|?&rdV@j)w2AhfTtSqA9DD-UW}9J0NbqY=Nm+u}1b_nY)C48*y{V;2%f3Qt z2lOD>Hu`!!nK;OPvrVEA6oe+uAickq#H_tz3K`#OgZzTnOh$Fb{IC==wGjf3iGD#& zG^9|!L08_@b_31N&ihC&c~blHlIpbv*n^VF5WQ>x*jNK5Pz0~$M}{KB^CnPK|IAQS zUrd$lmzf!b{tb|7N}0w~aAS~#+KUoi??=N3a+!PyNC4X8ONiFkU_`DN1fFtXryU#! zW45Ot^wPj4)ZtQW!*GDb0TujddcE1kv?j!3GLbUCfx5s4fD4fh)>#$Ao%ng-E+5{g7ZwlS`yT+X)qz0z`XboGpr=TedVNix0>nW zk`;mD{U4G{#%5$aMvu9Vh<@xFI9A+a{-MO0Q_)!!!hk*VSrvN*v4j1a5H#>i1kq+; ziSO6|fHf|UNxv-oX!AL9gkH(g>ExvQE)KP)Ti?Z*dD!&Imm6xRX9gz`cSmfI8SdB?J6pIYcyAGlxApT zUMlw3ON*A|wAM|}-xA53orm=7@XWcZo1Vt^8uEo2#yZ~ptrxJoZZIK!*M|1fn{_YkU7cd; z<=RQfy-5?Q2ptu?T;N)cZ!k7X`Au920 zK@tb?YBun(?QJ{-&}0ddQ@PX!$)-%2`1!Hd^&zi9{-$q<2uFL)Vs5di)F9OrifUM`ZCc!4ZEWREmk;!W;_DZ z%xCw%*W)bDUzXb8lJqjd_=0l&d{K0eR*s!ei}GK@b`?dGlk0wZwmsJ6k)L1}#|j&7 zKC_AfiKiD?*wNemV($L2vzl%SNCeI_SWhP-gZIZrm|?H8^vrTsKlg6v#)r(OkCgUK!;1vxq*{R7#6*`TkQ+8 zn@-;aHE7}wd-4UrN!_@C`$@|m=;3&AqFIh}e39BgxtGeU@1x$e)K?oRFWccm4b16T zE%f&hce>t{6$O#Tu!IyHznlpUVm`nS$`XvyPb+9QUVS!VD?|!JQh<-B^TXRLJE7ky zp~1Ef6JU#d8(N=>G+A#@Iq09Dx|-TC+n&ilY1^#+Y2(sZP(=Es)6hj9EbsUdx*^g# z821d3j>%=)7_>h;T-Ty9+3JG!?k17FVAE9lMM08*4l+hpKPOc`V_MnX%C<>0zX{59 zwkV!Sr~w(wZ{|b8E=GzU8fZX=VJg@?O}xsK+}7^0ng$Km5sJL5Q|iUsG1ikGi{y$-xSg*J2`@ zYl`v(B3GXK5A77b6gV}pQt#$CEtKOwBoq6YCo@o?RZLvVAf2Md?-xYfoAw^alsEKG zdZ$Pt$|F=#c)K7{>WyeqRc}lvmAx{@?#D@aV*KXY_faXthJ=>pmGif z&cTV#c}60UI5!2r&c6YmOtwk|JNehfkz(zndyGeJF1ZofK?Tf*RNkd%0wT zx#dWoe6n=WCSy}{OU9QLMm;?jzMM|M4- zFr+i5!Lm*%eSb`wMhDg2?0%v?3Y!ZQp6tL4jaV4?jp#m1uy0EgiLz3#J1lgjR=cN+ zXVfsuw6IV>pnG&($m%rP%MsiOX0<`@07?_$FY}3E-P7i-J&)Rj0(;uMt4}lP_E?`) z>0Ue5rIKlH%i2Vx|5X8|nY18r*zLszEMr>yWTzvF>T8s|z17Drrst3R7>fthTN+4b zbamEp)5=7aNNaH?Hmnn+(+4-B-nASl@Igm~hK9DoPjV1X#^0=8kS`7EQ7Vk-8@=uq zq{>yh$e&>>qB}Kj)GTKi9Jls}od$L*xV41mCG2FbsM&3{n%3?wRP)t=k3dw@iO^MT zPyVkzn?E*fsr|UB5jB8jUj=YhAj_Pg27u>=2Q0(mEjNTu*^bGRiQ29=4&yfU;VA~W zTbm-_iKE`J(Upn|roH^x7SHR+uCR=I9A`cmXMNs0AK zyUpR_Ymu{AFE{TbZK?BlE-&5eJyYKr4bW_Trp>-R=!B1Tfq=MFUaf~`gpRyE^Rg?+ zdr(ocrRy?lz9slv8e)q<_1-q@gTBaPAcRtig+ol@C!7pYy`Y}-E!Xf9GM=5tTw^;u z)?hmm#V9oG)*W5;I_z$ZVumlQCVb8g?gVaL*g+nbs&L@Iaj8Ssd8Mf<+$zz?k?58&kes3@awx*#OXbfP@_tb`dcmae8v;O6KM3 zcQ8j^b~Z;xQd4k^F<*yq_(Q06Gk zOM2}*>>d5i^mViiFpia9bAji0O9k#5rv z2lbFElg#(m-Zzhyn>wDZIQywYPA~7$rfi*v(_HDlDW{B;tNqVeAKAG-cp<8sbqj9fetNP$^U^=Y#GA6qx1mtm z04ADcJJ*@}|Ej%1F?xZ>xhpmFa$29ZOKoZf$BTkwxoaJl2VZ|g_jYOCc;y(#G-SeU zW$1D-3UzIuD%_jLlw{FnXf$fyYo+(O^kQYY(bKP5Tp6=w95c`FHv(>HS)$L*``s*6 z5VMW(U#X{?81D&FbVneyjtQMGkWxM(bmTn=HN4bc?_WJ7VXT2};#+v%pmzP#W%EPJ z*=6Q@?UXM%dJnm2AE9y{{;rZ`AsiOB%{Csg| zZkBa&L2*&}iv~e~W_lqph5~olf97S@NQ!&c2Jea;EijoMbm)GgO=AP=hI-it1jS$X z#}C(1!f;Lb<9ozxOP=L7UYybjR}Psrd3sIYGcyNGpE|uvgMm=Smq37|`)mSc80)CGmX5)F`v4)^nW~ulI30*y%(Iweq^o+Ht}6 zM+AQ4e%PHdAV!t19Mkz@TU2%D%gPREM_-VZ^`53Z(kETWC5ND$DLN}JRHn-IE$f+W zHQk+%B30F6NXa!~@m0j1(SJZ%Xske{hd{7(O4;`hPw&JC7Unk1b)jj+L}KLGACz~n zMOunmbIJbW!Z4@SbhVaJa$0098}_e$;>S#Fetg)p$X3_#Q)ePpEOS%l$*09T1BRr2 zqHzhPe7UD)=pK}3346>)o<>%eyx`*OKd+NK9uOi;BkHaS&c^pAr-SVAqXPNmr7W|p z(HaH4Icnq8hKJN9G?*TerPtcIuH_WzE$w6tF@KvK?OKyp(UCl)oboMBVD#|7(JPH` zmko$96SDr#pyR~*BnWW9&y!HjrJfh!HJ0+D_Eg^k8@`XNeATE&-LTpQ-^?v_$$eKl z@MSo|zBE~BQ)pT>x44P|`FpQ^=%6nTe$KwWh?CJSDMFc#@*FgjaDx90rq$vWoY8Kr(d**{oKf;gvf|w`~f4l>F zi*rs{pY;7{0;NIcrJ#@$ouKNp60v0S4U*Sr)3E?0@f9-qw~2>QdDPEVs`#cAet`9F z7}YJAqYbw@qGn{uxIi{P>o}P<;+Bj{LwCFc`Tgo2YbgdEKNaw>lAQpV9+kH}g;?%+ zJEd}8Snd}Dnt0ga2LMKe{vfAQ!>0Ozf`|a*g}PX%9tcVa>P>;Or&|GS_6^NLui=^i zJqAK6{@QD;O3YM>ID=5BCC*1Kp^T1sKA~$GVl5I(nnJru^4f8m)8i*Jal4GN%Q*Bi z@qEWG$k`DIQt{Vy?2|vxYzR=Ksw z6%>^MVRHfJJ}VAm)W0B#0ObW_iCpo3CX-J5G#!q(uu2Q?#KgOl0r1b+X;JvsbeRWfBkc=}p^8~c z{@r{joDgH|Kmc^R#Q{eCraJ zM@E$dM|iL`)>$-F7&J^?Wnh~ev7a^}g3Y=Af^2TUFpXd#1S{mJME?NCPb}M)JYf`{ zZL?jujh#*DwD{{nWO*4k1fi_hWQHI`1-Gt-nnKJCCngPZWzO){BCM)CudmK`H3mCD z^xH&AbF2Xt=Sj7*3>HaquW%RwmpZ3={PbgIb#KOUJ}%aBdO4r;sVNjwt@pN39G_$T zn1ZKHHtm-EDJiQ{4j)NR^1P|M0kITyKxaejEBnua%8rZhg-{$wqaOx0F|}~OBbP5V z6pl6c1=;V*eHJXKcV&6IoldB$#^1zA->N-EaJxQ4rUt zsVo6{Ed2962d<|AT*!ulJ$djVC_0R<;XL>1FU{qFh#^8hsxZ;^7Kk3M7vI8%&;sNj z?{}20+z&t;vAWo_zTX;J_-%lqUH78)i#S*W z@4R%wW5x!gyXX-6(_z&`tK!^28rs!YPcQm0%!a<=8d0Yq76s77E+Bmi-`_TYKOv-! z)U^tA?SOzpTBh<##XW1sK4q`MsB`jdN5up#r3P}Z$uzx5B^ERympr6D&h*W=jt<$k zakrI+Ui*t}#;~5WyEQd}FEVnt&O`Oaqg8Mt1MfdOIR9HqK-=?p7dSmFe(jr9{h6T) zv9&nPu2f`U@EoscevP5;+e60x47k}=6Z4O){$<=qF?Hq8Z!FQ@d%fPLA7x!9KApg| z?hBBl%SCV%h9Eh`7b1kTl+?&nsPcJAMhUwc!>E0?-;pL#3bx$APd2kq58a~Ms;x&* zmWhlaU3sz(olUlNwtf~4n{%?RquaD@5N9q}ocy@%r1>o&n+Aolj!VmjQ+ft~%~R0i zsY9`Lv@+yb!dJy8q!f!Tu4+BDm|%6##^_S5utiIpMlx?KA$CBdoJW;?>!m-Kjo!x~ zJ~5CGp9a3P8Tre_KROl|10iNVLGmLgFN%+xn@&m^n?(iVt1GTSxWck%We+ht<&rCP zcVC&b)^bn6d?7W&F16tz80C4sXLWfX2byfLZ*YrDS&E8jnvi4%SMNO_L`p-Mz*bCO13!rnjl-y35Wt<1t z)eVnAz&{hZ98I zdo}#uU%l{0EpmSt!s}(u0KTw>0!4xaE))^&FE zS^w%*uo=8vlKwcX>_OT|ScRTFf0Q@@eweijs9oG^}e43U&cR5|96}I zc1uVw_JZEtp!uH$L?L`%=YJd*I3p;Di&xMAZv~?#_ux#yOb{~}@Ett-?|ke}8w6)D z-toZOXIEsPp+&ss?hl*4W(_4`z`>rcADkzI3wFn6 z3x+$SXf@-AhbKAigHq!st|Kzoi}}f&3r}5@_BS_x2Rp4X`$03wu`bCvJRU326jT8U>_7S{g(;RzN@+0qO2uLO|&dknWNa zSh_(clVxiX6CckaKZB^d2Pb3RiiZWCKORl zCP&;q4K$$LUPg@(53j+(Jkln)Sp;_5X4GcZo8K~~uZemBv>`XK;tX_Gn({Qy)+ft! z-tyNKe}`NR6ziTCTV=nkC%3p?R{-tJ`ke*XYWrx{>PLho|Jw;v3({Ry@%=b}m4WHn zCUX(;-Jh4K^u&|#TpiBqTdVTDEdgYq3cL^5#1|05bNAz*uHtkO8Zx!UA>~C~O z#R0L5G%Ua=akl(xK;s;s!CtMB3*-)pr>_9qKFZG1BX?i@IZFO>3cziD>h;@o01&_w zksu2-4T9SK+erXSQ-7B~UHTWiccvHoRs%ruw|nofD89o2J#UbIe`bw}#aV)~=IiZD z2W>&`4;k;*{6F|XDlGb4j$1V#j_11;;0?;O(H38*g7n*fcnN@9k=xSoz_KaC(!F@w z0tAjKhz+>(Jd`jJ8sh=iVYXVJT%0n*5VZ8?dgS3Y2=anTpAi6*2?Q;?RVzTBljadr zlg%C#N0kl)?_igo^ZbMTfhZUVykG5bb7qhclH*2d)ENSD<1A{-Rj99>0_y zzXJ|z)Cim`dK>cCxTae;entVr^tgw1p7|oo9eKFio~wafXlDLY5hk0wpD#m2iL!pdM`vZGQ3nD*)=EwZ0Wep$-4=4#fkMZDokC1`{v(UHP)yE=e z)aBmTQFkUe0Sgz9;{+lLLBq8tM`}`r-XqHk`bE7yhB6&5bDRMS2!Q|xLyqtaWns*T zak2nR!1ldv5b0&KXi-OxvwXd2?2clK^B@RB)nd`H!0oNZ3Tm-fXaJ}b2)*N#lzuiG zSa$T5@$-Wnht(ypyAE!8%Y><_EF-#ro~2&boBkjnxCLEQOEDPVb5GJpa?}42=2Se5 z7`K;e{t{Q(m>os+`~%Q0@6A|QD!E*TwG@dikojpACa@~ZTWW0s2<389EUpI!A1_A* z#&gymF@X!H(Aj|sG6`bR;Qer&En+&)n61cO%8Ipsur3#mcPzVoyPlYVc-9&-k=g94C2?E@r(F#F{9+>{$Jx(BUuj zWaZ{Z*xyxiliisyw#D_!u2(q^xC8`jygyq`-9lbbb3 zTYncN78GSQJ(GzHcm@0JiN9c&u$Jn7u4ep?ZYV$8AGnui{<8mnO}fnleEJ`d|5WL3g=?9Rt`ojdkiV50 z^9A0g|FN~#N<6{k577TZXJ@L0|4V1e%zvR+iXZzQp!|9n|Mf@G0c&yfaZjPumA0Hs zGVirk)%|`l(-a2!sy?1!gPFYR2Y*Y-`!5g-nLXzizRz@bgfv<+3%{F(b(lEg^g%zu z=RYGwzlgf`sO>%CHV})?pSMzG89bZuSz~(lIKn6g6xIJq25i4gI}I=Q$ca%Xl|83q2dY4luD);RWZ0R#9Ey~Wgv zZP+0Ici+EB4S#?%|5|4r-;V3u2%q7ijQKN&Ldn(lRnsrYP$TNM(LvUCE6sx&fB{D8 zCfKm_mO|Xj2XR6GC&`w0$mUjB!Rr5#3sx_R1rE4et+KVXceOso%OlobQkumgN-`6d z)Tvc!HTkxVo=i>)v56ws3hTvlE;KX~qz~ME_%qkIG|wIF6=vlH>xu?qE6I5^HM&y5 z!EXQskNK)j`iAF13+LEergFpw3N5g7xa4;Aajug-N}JmF$FrgZSh{1>42f}9S0zOm|H`87($4gwk2XFnyDFZK15qenUvU(1 zw068DflcF`dG2pXzteo@w)lx2-ZkE)(863Z;!?&|Q*+9a5>wCY6u=Ox;rWE8eOqV* zgX$oF9BVTWIVJZtO-$YtgsJ)Q7bNqz?P-~@wXSZo5N|K3aD3GJ7=TCd z?c@_hDl?)g`(}?h5tM+M0m_qY-<^!7Ej1H00xhtUj?Wme^so5&LG6#zqJ)km$PCkg zJ~Md$A2t%8rUF`#10)M>cYIaiETT+TccfVR(ir~WJ=v4ospu^UOgKQS#ms~P0eHBs zMgd9&*)pJ|`gj@8I`&X@${*;0lR%>&d@O-!^_$=-T^i`U1aOv0Qv*yA!pG7y-=n|# zNgtZN@6^{@F&XYo$flJd)G+Ji>pMOyS@K^n*EV-Ey~%N_ZAuNDxOpR3z!x@Urf> z)cU?uJvvG%n->>Q8JjDX^m7qdL4QlZNX^4hjO4(|t7#!_l4pJ4=lGb>jslYu{NSr4 zHPu)RgunxMQ9vK;DYPeESSDN7rj4_&rvn9duDfFLsho5hP}QdDPr}}~J}KEfYBo^n z3uHBUa=U{|nmGJ?#e2N8S?lL~cp0(w)Z>Y$%DncNOTrvdJ0(x}Or?=ltqeg8$ib^6 zcD%-V{*mpzEl;OzfkGwC*cU$%lUGe~NaW^$k7pebtRgD)a~w2XYexdJzQSi*jL_1L z`G`8Q_|4FjUkP6hPpv>Vt4Rr`N$)G)BV`Yow+0)9KBm=2%KUh4zOKp_Xa+MJFx-_U)i(sG7 z-ZLg8lqD?@w{JdS&%4$`zAHjqZ0`CjA&7$Sr$+>#+9k`6^E8l8Ur&_bIM{mnaXrpE zg}QtNrYS1B%Ab&LuyhfK0!FN%!RW{ zmdA!q+Bl!QSo=I6P1fJXC@j(2BK!@>+c?F}wr{&WVH|~)KyBT$<|s1ogd#R?t^tzZ zP~U4%Gi-HN?ka;EyM|o7hl>D2EuQn$;vLhZtA%Ai;&j{A#iNZ|7i6os`A_?Mmeb++ z6yv^k-Imx*a4d&6^5jz873SBBJ#2zISD5Lq6s=dR1rK>YCsd@crt0o}oRt$62}w{- zZ$?!`8Ft%`)!PbcmMpQD>;5p#&=yDRN*Vpup6AQL*SGIk8v392O1&Ch6}4h)2*i_B zh1GiIIa?%g6a{}=zz)Rle0;3p&FYENyg}UCuRyfjpt%xV(DsWkySwbO33bcsPrw&VCA3-*!TGM`s4dXW)w0|kD{Mt>n2THJV_&-)CM7PaWN*GR zWEJn->9NsOYt|G?#+y0;4ilW)k%k`8FV@iyE&@01bMWnJzK)!Fsm)1mR9eW=#TZB+ zH5XcP32a{gKj;Kp>}9tu!rr6iuE*k?dtdS=Z_5T-LX#-rFR?MPH4N{gyMSV3Mj%C{ zJh_%SQ`O~fcKDOdrjKRm6Jta><(|e;CP|=Kc`EIzj#Q|p{Fr7u);rU5Px;ljo){c7 zH|#a`xu5QFt^is4kTfLcqVr(*jlPMx_pQ1{?TcDxy`_h50@zS&{K-5KgZR_e zz-ICEw1W=2NE>QvOV)>GX~%pEE(61s9NV;<%lCa*o~5W!g!~di9#qzuWo6)RS}9Z; zlN%}DrpIOaI82ue*xN%`!07ZrH8ZBL7tXc@Dq8={J3|% zMeV+t&Zt~7c4`ZeyVlX!#d!uV&(o$N7v$e^`Vw(JD8g}=p;kopm}u{HRU!`Oz8rnr z;l6?ERE`}raR|keCyxg71To3_+RLTXm1QP+3wN#EQEK}Yts@6E>@K57S`R$L5GfG% zTMOMf$ey}Z=bUupL3-(~PIg1wyz)oN`MIjRxFp}K1EY@D)POv`w8>8{+gEKk+qa~?_)&f&pc%1L7LTQ8~{4_4{>+S(%L@ZF>sL%I084_}$< zEMKHIDH1Ljo`;C4cnlxE^uqPSI$D@&)R@rHA{?%L>q@hvEhlD1i+<(qN@4|pR8`s%0TJwqjK`KJlZ2qBezNMA&*>lBcklLiGTL-<6Z(LX4d{( zycV(rD$}}J-bfWy{WB7u6FA-N6ey4_QT*bYb8mD#gOlZ*0}dDtCPN9K*cu}E&Z4Z_ z*-BAqi+_wDTOG4!s0Z?(v_69gN#`~f@o}i~KFr`ZpO!yVegRkf>HBnH--}F7kN15a zsR^c=b8JA+zSg^A{wBT&0d;Gg+=X`eFtetZX443&LP0W0O1FZiTeo&@OB5rgsp1q} z*4}x8qWOcL#&xz{g=`9fq72jSKg4&t$;Eyhk#<^6I0t-*5%p$So)3~29HZF7Bie_l$&T;#8mKtj!(Efbct0vbWmtErHr)kSs4M0pJ-@1j-pH{(Zj zYV!1zf%z(8Hq`iHM(su>4>F;gCsaSM_iSC1Sx!1b_EdP5cE5I>==X3E(Nu$aGnsRL zgu}p}oMb$~ZBG$p52szt#xYW^@~Gt8oUC(Ac^y3xU z0_@mwHP|ziZ1?N0VQqDgfAgGL|&iV_+r+V(~ zmnJetUC>GT3q%lk#d+*qsQUs-mWsUzMQb<1Bk`4Vt&ar}KIZavtz$!Db0l$O8v3SO z(xC%%K|w?JHmjC8$AC(JtJ~J{q&n4JSK$GdBxcOSu>D4PahLYn2e@&dUG%qYVa<|H zC)_zJtOlKls(P85V;V7fBn0~~!QzrHE=sI_}+$` zYo8AG>FhC!4CDptv2W@fC&VPV}H{6~-{XfcYlBfbJezC0;O)rxgH_7~y-^0UiV z$VNW~p~xW=5#lfeMKowTNoesbp%7B6+me`zo~ozUC|8XoV9FA#_iRr5!@B8;RuXd; zc!qLXYK`FGuGrJ5r_Cvw2g1Mq;g{S*N;Sopdhf!M;JjR*~M|BGo@M9*1c%_zqfVag}t_ zJYzUtcde>OOwdjCLVVQApB8C&WyhkBjOc@H>NnPX?A^~CgH>A@AV#3nlzcdrum^e6^jz*iO$ zc*xAnPTX!6XT|x2&GY38t>;>kz#Rp!uY-0X^c-Sf{fairRXP|0RX=Un*gTpmc5|ZD^o#w&p2-ADLU-a8m-$JI|(x8 zKX2mgk88B3Tf=*cD0_QAt}i2zm38gAHK*tE?WeAlfAdlOYV8fp!w*Q@W0A(hR7YoL zyBM*HgZre+p9o?;f6m^DACm0B)LE6Mk6VcEXDHiANk=9KW-7KeR;MSujhoYq47++K z_k6|gbxvvN>t&usQI0N!G1o&}4=JT|`_+uCYpGvRaRoCks-K;3C;PpK;y)Lg{8)Bj z-ZdxlK5$Rdv9$jk$%5i_XH~U-2dXEK&q{B90-?*=7A)dG^v70Y)laM|66r0_^+`9x zq{Vd|Bnl2IW$J`qJ8KCUjpG;lx%@Ku74q|@)cpC~_hF%qrd!>sy>!4Sxt$1VDBoy z`97*fL|*f;W*O%PJ}QGA_?Ak2OH5O^UpTI8ihoE?A>2%k~oA&DZ3q-DmUP zsyfvP+8qAjKOfun9a>K$P5n2Ci86s*9> z%fR}Yv3l!r-NN^RwHZQxk6e$XswcbkP>rX5vw2LwVo{$gVPZoejnG%xdcmXQn*alk zbNOyHX{wKzVn2n6QA9)rJ{H+I?-i|U(`kZKps_k$P6uv4-0%M5gQN+0HOV12czt;vB0d zW5Pf0`iXaRmRyk6`gn@IE^*bm z$T-%gy<|gB63)g!nMg+GWpp1=PU~y_x<39#rdmrP~ zsOtd{@8HkLx@p97M!=zvp3q$}*ofiR2k+ZJ0aO0;h%EO4iQ9e^IbivrMLGu zmJc;3f8ZSF@)b}_IsoZRTFM+MUU&K%TC_iiGK>J^JVkW# zx||ORaBef9U*64($lXzTdL1BRIPwY{x@6y(&`6UngL5DPR#03yVnT%|KvroK%!jv` z2DY*QO6eO5!$wgqrGYDK6d#m;yK1qiq~fA}pD0WnZeUW%w(ems^|4&^j%}f_xUDp7 zkgotzXRVeA{bWSl&z>jE`~k|7ZNE>Piw`;tE&Emj+Q1-Ve`>EF#mfm#pR?R8pn3!` zd;%1ojidN^JfOOy#0JHsE{r=}Y@>tyya>F28isM;TKhK4$0l>1l10%0w({r^wOi(7 z-`)Vl>tRWN-TFEw=^~&2?*iD9^0}nqksv7Oy)jgmPda_@v1xN2IDtFc7K0tE<{00g zVj3_@LM2l`9=j7XjSkGoeja3lcx{-%7N|f{}U8B&AW*Eo*5*?SP9R=Xt8!&Izh8 z$Ifgh=AO`8_9(t>fVh32NUx^|HKu<8!OzI(amkOG+-ZfT$Lf z^0XyA$-JF9H@DjH1;atcIlXzhL!Lwofz@^6H>q zSW>O*B9u7KA`pAvR+3V-URS3CFJ&TL*9ha2)<9b^BA7VQUrfVqeHy9~u3VQS^9G#D zR~56|G@RTMlB9Ki zN9SGc&e;e7_n8aB>Z0}!qjJInOe)~)n$jLUKO-Yk5FOjS{ZWsqUDtb&~;P=qS;0d=)|L2BQu~`X5+9`~LO(a@$ zfwHd%*7T=Cy|Jr^`LmcH#OA?AEIFUjy~kuKP8E zWE6`J+=A5~K9?IOT>(KD$}VCgf7*(7PYdxSL}(FOt9FC?ZQ?vxM%ROJ?@?Xsr+|*b zn!NK3wBO7uEp$~)U22ytJEi|rq40MSM09&0%dG7Sq4s-oGU=ALUmI;B#~#;d$tkt% zy?fKgLI7+kLdx{vx@xeamZ{wQ`PS@*k-nbj$?sW|pTA@AX*Nkq?BU9oKv|if@j7Ei z!DzGnX{+_^p=PeCudS`7q*bi%7pex~1PM)Sk0H_GIvvC}zlX;dxg_PElTyrz*lqG2 zK0~fDFtT7Q&@@e~!#%SI*lNca8^#VfM^^~vs#r@DvWM0JYUF`h@+3d&*=GGhow?bI zs?E;MS&ll(_-{n$!um&VSXPc8b|FO$GKi{J z6{oL=EAcVz*z4NNV+6tV8jy>>I5%w0ndD6TZEeE!iW(uBk?&~ZmUQw&)Y$KJ^o~Jr zF$I?m6ed!^I0o4{H1PaFLFWXmexJj6_6MlY2RQ6d*&y_EYIm1pT1eg%l{_cG6Pvl8 zqnmihmg@J}a8D@<`=7Gq=aRivOB2ww9_TrqQ9DM*9b>0x!=dcR7~%7^7NFy=-zOAj zg>)11$RRLgps%$-Lsr(-V`@vJYbO&HkG~M^2&VK{LF`Inq}mySnZd(1eOlm=tLQQ( zr0=wNo0r(Ai##=O1n|O!P2im!hyN)T^B;>*@x_Y}e5e3-~} zDYU{1wEaIHigg%?Z>(-1Z#n+}k>~-{XdKniFj0)vJ*0OF$c4tJa^D%q-ttQVh)VOV zDHsH;Q*(S*4UsGjll6_PnW881?1N(g;h_&uMtuW&k$xP|Lx36wVDS8F0IcwjH3H7U z+b$1I16TLN_m=#H2)@1nlI6OmZ?6D3(f=JZY}PkoLo!a=EP&&Tj6(@3%o#T57NE;- z?PPxs{#NyGfeA_ zf%RGp=sO3f{#)DO%X7n%MSxaN($RJJ5YU(Stugc;i2hdMrs58-6Fq%gzuQaRLoooa zwk-)DF~A5&M$Zh-ygqHa(E#B4ci`Ol8&m*VOIr6V{LueZ;h)hR(xn72eYf;o9%r|w zI9miSu($jZOzj}o!d4@xCdC>qQ-m>0t zpWbG^o%_eT$MucqP`{h8+nha-p;MHR|2pX}kG1`UL3nsB@V=N4HW z!0R^WZ$AJAx&pb9%O`n{9!Y;VSw8vOG~mC#!zTBCOe^tisGV_09Pw8vlipX7)_{+_qmoR4M-l|fE!4i# z5YcUL*7e^X{_mxCqmoR(D#+n-7+&`jKBMEsZ#5{Pz1_qA3H8B02Y`oQ`sTOZV}NmV z=Rl|v{C`9J@9_QoR3ck;9_c{L?-@i@&jql0dXy4&$dKZ#^gNE7(JeGEU#`a%M zuKok0cNb>m(EUfylf@nK)ot8Mpxq3n)Lrmg-UZKZ)NV6PruYB;57SSW6Lo(Ad={QP<(?O{`m5;n`uCTU_rm|8s}KDR^>4(W)2&R89s$qX zpXeIG{(Gr4@F>B7N6C40b&qoBG-P!zdKvg)s?@bSikUaBcW^@cEPW%Lb6MZD{g+l zy2|Y3Ss}3dp@y45m)f{Wp8K*|Se`EK$AQzE_=)(bkn26AVA)T};DhlGWCoZUuT}r< z1z9O@l`OuU8wdM%1r=MKX4lEmfa^KH3neBmX2P2fU+tb!!kG%P+ zY6j=iN9lww+Pxcr++p%)>luC~JEz&ZrEO)Tan)^zM&aC_1I0cRE88{J!t=_{cX@oj z{9H99?52AGPJA1TW{!4bwQ}UzvN)89z7%YqWhnoprdjhuUYLEbG26_zjA83>FiK33 z@d~ahHNf>@hraX>!as)4(QClCwMTwcMD|dJXZL=JZ*S# z6D`|vq?xoiyP&&0jk946Ucl#uepE8+u+k>B-)=f49`-ct*y@zjNz~Y?V4eHbM<~CY$+w4v>mS78-7+ zp#Ny!!;a_3ZenY1OAr(MXfjAL#TPD50;(RVoVEm2b zX8tFP)s;hyS<+okI&sPP*FtUu=LW#`cc10ERnf+-I2l@Fv z(MQ^ZtFL;WSm9~q3u$ThyKOwyWJa2Wt$OCW>fj&DB8{5r>k@43Vv74M6IVhPo^=h} zhYOj|Hn)vM8!Axe$d-Eqjw?;Kax7S$ClbD_l+n9KF7VCw}1P-Ziw!0j^jIm7mz1cK@1ew-G0}A1AU;0p168XclAPaKQ?uz&Y>W z0pt5Y-XeI7y*7E+!$_OD;DYsU~?R`C2I8#kaX01C%NxZ!q1c9UeR1-_bG(Ge|>GiywY~Qx98meuBw}VxoqR zX_Cp4yCXI6Fg1zSBR^BUE^4lQmniYl_C=Ft>&y!Z_~YrXdKWrV5E^SWk080`j2~SV zwyl#QD?GxI6st0}KOXeS2vEALHbdY!DQ?8FF#QWgIia+;oh$BsYrF!TK_c(sJZOzP zp{qs;ka*3eXiJ@TY)pW<&7TsL1FbThV9%LQvL(--_!Z;HbZr91>N@ZNKj{D&A^3i7 z?ddawulBd|CgA$GPX*PgH3MacMs8y zovEbHOHCA+xX|@%4{w^2YnqetDp8r8F~1 zR{@)5U@RfE_hqdLzkE$h^2-G3ynZ11d{_%>O2-94=zT3++F-Sj6hl4@K1Uzi4!E5{ z9o1%g3na@4dNuh|pdZL_NHu3X31L%THoBX;QQ}16Ab1&hKt_%EP9yBfHLB1W`{n2^ zVJT4(CQJ4t(!gs&R&UCWS$yx%2xd6_?hgH`!;5< zUQSflinxvHiEx)Smwu1?^h7Vh6g(0en_0$x_?2Bi6th=pdg=br?S5ux)l_xcl~E79wvVC~+rgE~MEQ19kUVr4;vOUG^wG!z$Sd=(!V##PR7_nq;-wm*X5* z2NCHUhq4m|Unh+3>r2;pv6e)=es=jO#)B^Viv~Zk75Hj1OuF=AG(5HmIwsKS8R4Pk zPm4y#kDQatc;HAyjm;~xRgaDB3a1MlSf{JW)0`98#G)~Q(S|@PAtv>){?FkAR>G=h zdeE{`-d_h^X&EGA!I8sryp^`Oy@k?_7)@JpN+-2Hik>!C_q)zLqO+4Pak}7?Pl0>u zD=HzoVEQskQ=O+O8x^Z&Ponh0__eIKrRooxOH(7oRrZJzQfh0Qm+e$plgoi)+F~`3duV9!fb2PWA zJs5O7VPXrTkIcgspk$5iB^48%3+m>mL)^sO;@IsDTup6mMeLWc^IiV@TG{gT0}HXO zC)UT&+Q?;A9>P30_qP>fMI;ZH8MEsJ2=2xMO`Jio;5s~0!$kKC=S;@U(*g?0QMjybWU zy|uYHS=iFlf8 zhn7WSmuI;SKz~82eA~nuu2nVK&fJug zc#<=#Ki)TTkdehaD&Oir5`H~?6k=3we0C1COc^!RTGbBg87an$fR^qA9qKjfh*g(* zjAeJ1-rdfq9oW&|OXHQ<Mi=Y4);j&!l+2D#Q$7g~_~lD1ncq zzKj{gEDfJ+O}s&$I9>jD*654q4X>d6s%X6^tQyGUP}Rh{Dsf$h>K66-J`Df4;GUjg z0B`Wrjk>w<9!~C|o4m&7XRp~LUcWPAqy%*_wm2gbvP-wmuXvB7i#yguj`F{mc-3yt zA7p+?GaoNwDmUC4K%#f5Tv2}$5wIeLwp7D9i4@o78GdXY%o_nH2ki(aCSmKeb?tg&% zseojykA6v_A1Fghe*vYTpi+s@++GXcneig^2y&!ii%kcAr8}!CR zkaR&P3Za&y2-Vd^V#$}=S-ZBaF5eKu{!+hqq*OQhXkW)uH`SAk$Mu1_EZ#`Ms2+VJ z4;BVZ+=tK4chWS?%FMGZ;jOvmIrF*&sTJwZa~G8M*xt%7t+%?PHc+@lIY^e{sEr)L z_HcyfKL!1&^KMS2t&e)u?O0D0;TBsDbXm4an1r3hla^;CV!4IPvXDHdd%SY?IOt;1 zV5|)>e$z%QKvCjuxY=gd{!5IlL&T50EzXwEa#Yb(SlWTei1U&A@<65f1Wi16^Gb_E zaz90^221-*gK$%*l&l@h1)y*IMrCm|I$c8zLvdEw`f(#(ruW6m{RY-shbT!e0w>k< z0p}}iVOh1{0ZQ|*REuE+kUKojun|L8H6SW51|^^!;9c@N+8YZ~!i{2fiH;QSfv-=qyb*&y`8c)&W~~JZq_E|| zdt4VPONZycxh*K@kdM`cuJFM~8xOA9R|@%FUJ%S3=w1%~n%6%3Qv&Cvhzc}p#UCvx zmqqxTtT!LTyb^Gzz}zG|;Lq&9H3CTZc=HC4b-GqY8!!y?YGVeO03?j=`8?4ANU%!# zT7Xjfi5EeW1cA-I=(a&np~8z?d&#k2FgPE?d8{@Lbb%+$1%G`2Dp{`35e}194QSt! z1V;&vppFRDP{`~UdofN#6PT)En@J!leyEw%zAFr8Bjke?RtdIMxIv$D_)f~KN@ z^B@Tf3|U@6o{?9mX9b1F=GQ$*;1T0gQZkb$ZVQyb`Ha&R%Tgg1fRH(09M%7Ut5|ZL zxJwv_OvEKC0CvP9frH3Hiit8i@QkGfG_T`-0-YQ%Kg#OOXBfSmdw`3d&V;hyr791D zy4(?NM+MR7NT$_d?kR|UB50jJ8I1}|j8%DkmrI=?&SF75wX!dJnW$uL;&m%bKF~N` zUiRiPrkYWe)~8Rlh_>Q&%!2a0+aFbo*QL@Rtx?3Fu51)gun+h4u)Cj|@>EcsB;+3J z$nkPf=>@g5XW|=bxqS5m7kWb94`s`Bz#i4`kLB~(-2HRt$%(-2nFW}3^9p(Jld++( zA<^Z!O1Sb}Z?-7&v`|#8JFnWJ{^9_eUe6&NQRvKBnc@H6?YPR$wW^!Swf2Z0$IHv% z!M$OTiD4*|-YQOCpPS9^l{y_E@pYRDCiP_5*)`BlJ{5V*>)Q&D4446hL4zRESu673 zFd=Pyech7VpARCkTkDII;y-85!Y`HPzuO5bdd2Py+WmV2jeQfapOf5nSS>;J(Ea?3 zm3CHNZ@x6s=jE@a*7|~eS5G=61Md(X&{MYcByg6!K~P1$&Fw$){pWU4piZ&{{`Q03 zg6FH+i+FEieuV1GEsHinS!LCtAmi*n9_ZzudC2+@l08gPc&Gd2|E0V0ydizew@j-Y zn`SAhPxmRjbvt-f6XXWxDIC`Cw+*nS!Bu#|qW?kq+IRWpW)NT}P62(do^YjL%3u|4 zDx&q%rj7kX)2`u`=u9MIpiWNo{e9enj6D2Bbi3br7u@0Wr{2ZC&3PM!ZbZn5o#CcI(V^eH_C1br==B*_MBzbugv9na$y6m2L@h{@PC4t_}TY06|)CbO; z9gw0d5D99__&VUdtaA@X8^Jn25gmajFr*igHJ>vr8isjt-6fxyr!WKVsf zJkh1Gr8%83Mv!eD&zdy(v!B@xVdYc$#UC;x2q`!vNBhJ4pzhe zpgHgJ~L$v0rn7WE`-|kP9 z4M9pxpgYOmp875Ocd(#*bmr?`Xnoh!Pj^)Vu`JMApc*Q;C%cp=84RAExW=CNH!?!B zO+N*(MXkFVD}%%~U)sjDV|Nh!lJLq@^X=cv&ItpR6#@Br5r2RVQaXZ!F}R}3?5$)U z^85j6dh-lg0-p1ycJ2k2af&Uc<4u@PCAEOKoP*l;6lSR;Znl9QEI=QkWnPdoz>cTl z1n@j7&PA_^yh5eie-6}GZjB?dTX*ua(6$^_T=M$?7CxG9qK?uaJ|39k)wtQvXglTA z`1rv%!*$S}1d;P}n1qUMp^grwW)?=PTiR)%=^2VxT=3Z6Qyk8^*{1Qh zWy(U++oxHRk$XGd!g4#pbif64BMOW$rz&1ff4nnX2I8x}(^+s^=xSuK71mmxg@(31 zGCSu%lg_kjA?||Mk-!2(?Y!T7*GJYZf0z>4Hq9wogmQD`2gBW`B=|O#0pnbxy2!#v zJJ1`ig7)W$`}py~KtXQ8#vwzP;FB!x(|l2&Q512eq#RE}Wf;`pbo6}AA7f}4*#b<< zL>F|LyO#oje9l--=L9Gob4v)U48Qx6H?*&~WNifnOiz9C9Ziv%0Fny~d@;9Fd(#gQ z#o`IFkCvcHBj6!f`>CW1Kv_BmadLNP8Au=vjtSAhmlHuz;Asp2av4CTQJwMWT>&ac zSmrmueZYEuB=5v^E*Md$#^4qP!gqQG_+rTWl~;5bjSfgM!^;(sHzYr-;Bbh@4;T|% z^E4sqDaDbIM`;&{h?4RBLT}D3HoLFsii0!AzdpbFFzI0u3z)PpGS}yRjDv(o7-E?C z0$5qAB&`w<%UW!`Xc{leeEH$~h5XjukW-Ingu{Xn9Ph2)h#_2^qit^r=qM!3uKb}U z3iH+1=5aeT^5FFDylbgT=bq8pF>ZW<=d|JbVkasdYRIwG$&E;}2ngAW-IAkDGEBbrl!nm<6JiUvumhXlQAw&Gnn&q*7{ZF%<+fgMS)YSg&3w(qLC$2aMr zCR@6LLRa5$EDuY|%YHUOxR>OOO|_G*`{cR^93f-8>5AG7{BvTNo<(|JlDKp_$Ldx6 zfs^MbSuw;fC;4WH3memv7Cd zQC5AcaoI1T>0>{tgtEALhABwi&7Xkqd4_c~aj2cYSk}!+ugzK2YH4aIpgddnHd>FF z&C*U@JRNUvc{Hs6J2nrzVYFVmN4|?bWmZ$Q@T2@}bum5Wxo~YL7(|FdTDpBYjHUSV zmQ~XbO9zXi<|L0aa(_B$gXo^~_27~bm<)}Ret#SM_02IPtAq~H>?>L^HRWtv<*DpM zYtJUe1FPjqbB?OnZ)G?te1F4Q=n2pb^cE{Ke%Kg)y|6fxZA2;#ADm{x1YMt`^j(Cn zq!UOS9fp~Gt#x#KS5cPUT)|2d17o@7N~3(ZE91NKhRqX8#BE3AvISirtG7m|T$o(y zZC=cR$@2;o7~taD%yOFM1INSUPGBF{dSLxI!SK;^kw@q)@rp|9BZ%NQ!pw_QF?*Bi znEXfx8{ZvYTu0+Ncl?3Ck^xH?zY9R0M5C@g_~%}E5%2N^f)v4LY>(iEHbN6XuGDzC zg3Vlx_HHg^qIHT-CK&nMiSEOUdC=Ngz(FAqTZ{)8ITXi)MX^oxrj0y<@n2M_xToMp)j9dHw9fc{`fv& z=L|%4o}NYJPRhdsck0kuZ;GG3!u0Gc-*H>D4n0{sfV5dbDjC+WQ5Z9yt*}~ST?{Ys(nZ&6m z8&2{jpUx}uueyJXLoV;%N28Bvnte74PAlF4`ZrtOT8!pe9VT5(QuPM&S(oS@-k({L z|2b2^VRP^OrKXtFz~?^0X9S$+uWuUWGjd(^Moq_zMo0?BVfs>P*5Ls~-=@#_yNc%M zILR*gPoHt0WLm-7@(ruTTPF*x9zkuZgML{>t`Bm|GAuZLn5N;Pf@Edyo$Dfq_P723 zfp%(a&4#+VuAY`>n&d2yot{66I2-MM7MmA?s^{~4w@I#psya46*MOyQy5Y1bVS@~R8X-|PNd zby+zBtRZT3%F-xCi$U5q6MW8$VKLw&+#iY5nKt~>cNT%Iw`@=Zy)c-Lky z$KlJfTJFnOH0|=j8c20q`{C<`OZw-e^Bo=618LJ5`8z3;=lo$;Nuis%%D#C`^`E6| zp4QHjt%^ki2ljL-m%wxDYJ}&nPLvF%f0~TA0>w*soHum263d(VzRe4%_Tq=> z8HVXY%ba%0tgYUw6?-WKNku!(vnnnHZ$yNxMwCiu($5m$0g{YMLjtJ&ryS;z_Zg&tb6ekZOa-P@ z=X69nvCLyN5+2dfhoCzm)~3TweQjZH4t)dxI;Wh4MYeNR(Te#}4QPQd}t z|6%LB!25S1<< zAW|%}fb`x&73mP-H&LJSzUTbDKXP5k-m_=ctl8PK_A2*XQ@K|a@gyYX{-W9HHKkdd z4!6_pqd#A#xjs2H+-I1fevE$jT2=lmeXn>99mIaG3pzI}S=Qx!a&+RG(`mHeV zpR#a=Ji%D4%X04!u*ds(Ck>xPe-=JGH8n`Y>R70d+Wi2-CdOJ{)jUjLNUoI^z`9a&7 zT8q`??CUdlc_sqj?2DEhR~M6Pv9(mX)qAF{GV)vW9XGZkdX|r5MYJE!iz^P@k5IFN z>{QEvpHbBrq}${nb@i`VZuJiR2vQfvS%deTkZEiaO>O^?D_gOK89QYwtI21+w`K*9 z_P!BDFTHt;Z2wuUPiEAJV*iJsnY6{kg=^c8f9l?FgfF-&$wEMf>Aibh%Ggy%LKG$g@M!mFExFCGS+3~}7XZ~?_ z_|t2|B>Q9Db&eZ+mRz!-fVOUE-jgLLZ2Lmp_|%-Yonhz)m@kN+GNZ&%~7*@3`CV?Y#A+i$qaYo$AO~4r6Pb`EZd%+$cy{iWJ$X?j^4(Wq^H_fohK*Yj!+tVBU9^#*Oa_lina@nNbpoA~xth;V_WUJvM zZ^!Lmxj(&FRZLa48fP=zJMe+%7Acn=|HF_^Igfp+JLK)dvU-;JW@d$4HhZ(gOFx(& z9*fZcmBIvv{1Xm&C!V7M#|43 zboV{&qPkaSE0>enX_mg}*FRLTCmspe*E3^Qd+{8`ohzFC$EIy8;j63Iu}x8~h9)LwXZRVW{c z&bg|Y{gpX30Z+N!?2tDPSgzKR!{-mh{v&x_ZIgRAB4Lz%@}A0NaW*A>rGe4NywUqN z_AJGXs*lsc{DtpzH%ob%_sSIok#^F|b+`y4yS+7KL}k1nb>8TX>>6$a_u(UXuddCk zr#f|I96Dpp&vZJ^TJj~5;}>NA&8-tBG{j3x60xFh``xW@ z-Sph(dfIlOa>9Mq8CSEqhw45HYO#m0{GH&Hd;?KC&)*q$rYY{*`oZ%OXC`g<8VV#A zlnX-RYUpjg?-M?y~wg*tls z4hJr9`n)8%wC@LbwbQGlrL=tsz@7d-es#td835dTXd(jOHY>tW7U5kBtk_GWMI#vF zjo)h6hiU-)>%eX7UFt(c3-gN_8tYNfY~0n=oRLWc<@S(tH_26i7sZd5(v}9k2>*7@ zwjqH+h;LpcxUgakzMRe=)2eF5^V008vwAUv)I4MZaId%SVjcES!nWT6h{fU9owmMk zm*k_UL4euRaTB-`m;ev@5_*p}VZbq90WqcFLvsvlg&$p%hcAp@#ei?}YfY#v+ z=-E{jNE=~qUgG!LmvZtgMFBU50&{3z7jVS%0}sYB9;IY~Fh#T7omU)NB7a_cY53l8 zzyVgVFwA0YfHm%4C8sgJ_9HM$&SI3SSimcpjKE9$A>rPHWXq6_^=#2-0PwtBk7sV- zSK6X1PfM?+2TO(yrViqHq+2-Uv{g8oLps(bV|UtDfN!UC$5F~Z)ylNoH+_ZyBPyX< zO`|eGx^huMg{)FIS1NYTV;&MHpA&Do{%D`Rnn^udjdQ_bV3NZ5vbAiZK0O#|6TErfEsG zRf$0}plR5Y)++rc-S=yNEp9+n^r9_dLI&0WMwMWk_(7YEmn1Hvej%RmP7+9o{e6a` zIdXPqWV1_RA|j}hmStWIzXz~s|Lv@05Si>nH*XxKUkb3@&f7Hlk62+-R;3Z%_hlmY zH$cQZ$XEHlC$ed~ohcJwo5J>A6AZv9P0-%@>$@s6CX`tXGW=e7t z_M`npQPS*T-IulF_aJ1#({Ouf*)^qb1PE=JD8f@d6qc@`l4VMc&8s^42l7Cg+%284 zAt7CPCyJ$O#Dp32WVwW#U-1wU{{22$7z`cRn8foo1^5JQ`8w3lonzu;N#HVDyuO8Gz2sO2AQ zYiQa2Soo$9M4I4k;u;T9b%YIj7;?Ie^MR&E;Su&A2UoIXN^8;R&RRNK&B*&!s5Y}R zUSKl)9-`DWYY#LYLwODM66EGAaRY2B)_Cc+L#fRVxLT}Jiby+&UF(&&9^jj3^_e5C zR&9XSGSFgal{O=Vx?2gduGai_WPv9bx3$uqal4lLy&tGR?n+}(0DoHi-L&P+PU4zB zY8JONM6W#7?g1@VF}^|e2bS|udCGA9nay@D^<~V?GPsINZ~g^k{5wXhXFawR!@srF z8MfyB?--c|Ei~ZWV+;pN4Ot}S$*^1IPgz{=87#n!RqbHaGlpX(SHW~Z={cHvj+vdq z-NK4>oi>Z6R^akx=`BEf;@skvbHg@h4K+8YOf8eEXHdxwIJ=*y!1kR~dL^<4%=hWP zV&FGDTc*_c^7A_jaRqmNL6(5v>=(2;t>iDb{%;#l>Nj=q;oW9-Y$wo%yF8$J0~%|; za`sPg+&#V{--~<0<1i5_YDJY3sg_lO4pw*DE#ur zh=03lWex^hk!^%Px-V%b`4^=BTc^mL{wWZ8`lAp+Ki%g$^g4hxtGBI8xlRMdf4;U% zKWo6hf;QH&7nTapwmU=GgHHar3TKaN|I-r9T@#>cIHpg_x#(E&Z>M4UEwti4EfdP5 zB0uNf)z7uwaQmuWUK!w%$jxIJ==Jzv_mr@oyg+95n2H$)vcj#ubEldp>34j)CzlW; z&@?W_jA*_&P`#McDY51Na{2#AL!2ABielUhhT_7}i5A39{DCGXiw>m^e4coCw`V0# zQ3&u!41(*{v&NPdAHAs9zGOj4pR9Jg-zie>8g`++A6NZhz48`-tp5eI8~&c`dFnId zEXZhv0rj_isf~V+`PxY-BQ@jdb*o2be7bwZ&DX>>oeZ=ap_CwR(`kWI-&eR6Ubdf& zbA7GVGoSHD_@4Ecj|ua6Ed`-lmynEgAnJqr1XX}>{4FY9t|E8FpyJYj&Xt|3zWnhC zSg!e9>O7im>HE)L;M5`^-hJ1mndV|L`??>0v*;THpmCp4Ozr}Sa0;Kd1XN#@wtN0v z7tETyAvn*tX%)@Aq&2QA6z~scQd7FY<2Kf^(em5t*g6wz{*AtYuj0AIC^JWzLvPxd`0Mj_PY5S+=|%G z&l=jFdEk|e;9)8|b6tQ>({p52sJWXI{YF*I2(@xZV_@$BQ3`V97G6$A1$ZVI@rK|H zN3<=4_;_yfV(pIrs;huM*i7`x%+I_X6dF!tChlBJT}TDHga9!QgA6@0=QD8E;b>cn z_`s4>V%;&9%~36sNWWY$LNQPKu6`!wg^(=>Wj(sn7MbV}d?{77bI#NI2EP8+Ln`YjJk1Qh{2TJ3V_aEjBjvJ3P^`d`R{CT)? z@cJzH&p#j7ux&`l4L(ab>l^7dXRhw~9O-TU#f~X=J&$IgI71g ztez?^-mi-G4VY|}YY@FzX7o)#5ze)KxHiyRQ(XLHw|jo->Q)NbJ7-#cP-w~bN0+Nj zNr%ga2G=Qd&(h-V4>ym1JUctiDWDx$#mqp(cB#s?U%)k=w59!Ih)( z#`=O{{4+Wx$Q)ZjsR{>jt8JC^rmvC)Xga}N8a zewWTtZoFYhYE-8trKEM*5no4QYEy*5td?Xeq-PSZo*@&0?irsb&^A*D-&JEM_ypUP z8Y~kmE9yQe-2P=KWT5I%X2k~1F+<{!ePL;VBSp{gWNF>ElcqP%eiuX6vgKZ4-Qp?8 zxs&Vk-Y{%%`_s{*`z;y{I`Leh7_@kq-K={b;2PKW^_)r|%W~C4YWc6x= z=Z#;`UaeG5xlA%}eEFYlEA$+!XwA7Wla|{TeQ82nd!v!h=E~mD`2gPmj@qBstaSo% z&zJ1;7Ycbi{Q3PkbAs01YJMe8t2}}4DrBn}I?`!Or@Yb@=XkT=(}{rFfe*=jrH3YT zcD>aa_GJpv@X71wal$}OU!$K5^AjP7s6N6TXtBjOd>N;! znq7&@fA%!YRU+c7&*GkGIVCx=kpF>wA2YT3 zWlMZVkFIsujVcE)edQXJeDyH)+1kB5D)#O#ULPvr7K}DHBb*;Uydbw)HitY&(>a@% z?Ogo%wT>#a>e1YAiPVeskIaJ_hmE*HZRUg(g;K35adoF=8#;TxXFfXPmZ$RhWXXf= z`P-*UPM!O5NX)xhGNutBm={nt@NL~+%Fth>pyhb~Pu;rb#BAXh<6v1yGhL9)`6w9Q z({m@~8q#9v_Vf5pN9~%m@nw~z($^mHp7v{~G|^K3iQm&A9Mf6Gn@&)EZnF38bX=p3 zT-;#U@bF3t88eH)o<6pifQsW+YNKW2{Yjf`y$k@vVv#u!(q=1cQ4;_kZW<4Uu8tD1 z5U3dxS*t^;1K>ji(u#~7p5sfn2;Bz?a#+Mvf;T{pPC{&u0|4b)CjD#zJyP%-WMm|N z7Nd#CVuHvdo;@=Gk;gBxmIfaTM=7yE{PaRU8DlU|AL!_kH=2n*(6}$0!wD+;x5EB+ zslD~zmsZHg%gM!iXgSN3u%DIhQhAvQFxU7)7E|+%!Qroi3z=6CKhxQM5;(dzp>($X zDZtz;33hkNko+!O40gn0IO+)-5(fpxd!Pibp$;UdAdBa>JLxJ|8aNv%*raI9P7 z^ibR}H^diUKu5QycE-bpmNQ}+H!btdE*cHRK__6%-kq@orS;WxvwANMi+%R55+FZd z2DM9W5ALWs_El<_dT$S^Q_<`;=ddfQFVNMq?VVA@nDZzW_}#Sq17LLRsVYNY0|LJ6 z#1wT{w!eRGcNz?nznn(Uk_Os#+cuognv1Rh)Z*Riidz&&Dgc#y%uPvt0_|@5IStnE z)j*Ionb0tyf~=1%DFCT$wv&QMwhU3>gNfx&Jg`8cV+$n{=v@(6GbkR(##wD%2)y;k zdntgID`hzFR0Brr#nt9T3qSBy@H6AZb~hr10TjIo^uG$q^@$gEopbcZz4HcKMsVS5 znuB0yN3cvtsfs}1k>T;*_r(lO$q}jwjx8sy8&2qyPd2lAqS+fd=rVXVk|K3hYteSo zMBKBQF(5avPTO?KXE%+}EGQPukwi||f+M8d2ZkK-*%8HwY4Hgd>RJURKpcadNQ;a6 z)jyLPJ~%)~AA3q@hY9Q_K|75AAhIj7k8XS@3>>G32rCHZL5gKBqeB`@yU1Kq*=f6h zfm{X*ucTmVhV6Q03?->{0uW;1bWx9gkPw|wt9%KN#f9zA&Un7njI=L+9$nyN_(i^m z7(K#f+U`~Ag=f7E{D!BZYkC7(iXa7$WGC3*1VlnBsw6F}5q zEM&SKK+Y%`PyvHtTOqZj`8wnj`IMrdOzBv58Vt)p77Uu8IUs$!uqFq>to0$(N;>~E zynix^T`8py$_&|P)2{7EutH)1<$Dt)ths*61hy<-AmZWoc8V*F$*@!{w(65wYzOkh zGC>sg_#U{2x9sjuBV0^uwh|EPO+a!c&S%uFJTAs~-YuPR?>$orzXR=Cm~epFTYvJg z?GC(WM=L^AA3`i7T+cg>a5vQpZ9j$Q80A+o?u`K~0$_Yo^qy1?Q@iGxRkC^rft~vy$ekilx}@kkEY5@9~K33_!KM*&84;$LA{p;SRtl#E&t2>r}l^fJ4kQtrm-{ zY#^T?AWlW_5dif(z~~sO02#oQcU4Je8T1S2Z>$v94*|?ppVK#puv| z+m=>VV6Gj`dOh!QX1BF@$z%KX#3?JnTc=|GmV@^8tRJddnZ!h1fBmGi@FLUjHdFeD z&9=}*TanyM@n$a(cqEi^FX?T$xD@H|^$PTGkn`K^6N#H{r?2HwW_6u22*)Ioyhy6B z6UjooJ_1MD1rIt&_VueIcAhex+>ch?0W?gWk-V>Rq|TX5YY(?Omv+q$f4^&!a3f{j z_Ts&NBBMuOya>0XF3H(ugc6tdkfjayg>u&=|rr6DOwKjdoPP~&$zf{lm-@79DKgVQd!~M7qv`0 z;-YU(>JP&Cgr>UO_HR)qUzD4Pg4~Xg_zu7W&~%u>uYAFBPthT@7i(JHdmlRmBvvu*%7sVng3QO5JB7;@>mbkAD_14LR*Jr-Q=ZN&&gYgzhD$tU zALv$X=`i!nNVa8;=U>P_(|C2@3D^9`1!e48;RyQ(Bj%Hbb4K~)_~o207eCJ+I2>`E zlk8H>39fgwM(%ZNxS;pIFX6iM=f^m1t`-C*tgh{vS(U5n*=(El5%+qj^R?D{Z2RjC zJmd)S2g38Sradr@uKq41Z)$}`nF$N$@>`Tc_zs}?<`1{dB-lmUXYb&xujNL6F}rGU z&giU?2;b9bRgsPrOCL()PQuWqMGo{3d`!9bdNwF`SK;{B~F@2yI9Nh_2@yPc1a!`kbo8#WJI3O?A&oBz=4qSi!lxK1K{Qw(Kx z7&CgftFIz3?;HF1i^sX<-!P$GQDzK#&s|v{l8zufc!aeN+?~9Sv0~z*?6N3jhMoW>FA-EIQ`Rt3!z|6V=4v< zK%y}gst!92FjcAp=*kD;;jmEh1*XKN-n|5;6lf4fyg z#y@RWxCk;5;$Q9zM+p=%sJLmy^BA{SV1vzwjK&P&k1)`s!y(n_by8IxCxmU=Fs3G; zSb*)OY)qR5tkOtb#0bWnVa$oFlgJSN^kN+#?uJA_cH;jwy8hxD1rJYV@WmKegib^p zGPRwY0bA%yKt}!mXQ|>aMPw6m3eUMSvO-qO7)#OTLV=BjR4FKsyqU(jE)xkd#i1?r zj-4P;$wf>)*bl{n+VzIWvS8yl3-}#iDB=(D{Gz_#$BK=Gk%#=w7yZD7Mh1D1DIr2_~#(bXD z#Q>NKi3xB^Jgxe{ok#hZ7s_@flV+^ zGUACSq%fRPxZg`r73^cJN-;VFYy!01AKe6Ttm{iq^*w*a0CtcxC}?cuWlWXnpFI^s zWj4Yn(OT%q2>x23l{6;c{_)waPbO?;V44>UP0{RkJy*%9j=3CsQwcyC=-A91vYUE3 z9B6PipD(CiSWl;;3`79!$g|DH&&?vR&8gm~pjHJ^QqY(-;>$U({f~y9XU8UpKxSNE zw~TCxG2k=dsBnO8%B85&9KED#kjZT821+K|t#B{t&WH$K&dfzt%GP=s^SyJ5X;Iqa zCiw$MU5+2iXy%bweG{pGMT2zfuvs)r@GUpFU%G>bH&YGNLrCo|YjN^E5Zahdl`tI1 zl-B^wXGEo>*c}Hp)9Df)@vL~Ih#kjQX!R$eL(S1@iz=;_&?&sBDlhT}|69 zT}ajS&k%u?@fJi=;yq@gb=o48L1@cFZk6+&$XWzh!RNY_39>>2=A|@lA}T=2Q!YA2 zt%HsWcKDJ6fhBSi1XcvSy(BfF3x6t^5G#i6bF3Ru@CUTJD}FMG3i|K%S$&~4y=B}F zf>5maS!o9dB(lWYrhUmIDteE$kPT&l-%CVgObuYeLr&4nhTP&w6MhHXgYN=Ny!MTc8AG0mR`sK z3>$vcX&7e&J4RPZy2Gf-2kB&*L?lBH(O5g(X1u*pQd_d66E8O(Q2Y>Zkcl-Fwz#W! zV``5#zUmxWT0FY_lAOj)zN_gvard7&3a*CG6pKS(T%+X9%t9i?9juq zbX;Y-)}rnVYd;sf0L5|5SZ-aB)r5SEH}1)GxJ^A}CLAqr);>W@J#EXfSAnK)^1kCn zyjJ_^@3#(GR78x2+~W@6ntYd)#{NLx@4)DCjwauOUBj_1%zY(}G%Q7x9^*=$kt^P{ zIyn7;O)3i#x93B4mTif^vr9S)x0M6#7bZN`6gnkoE6T?5mP=T1+<%%)-95j~O(rs0 zd$d#Zc(MWH>*XD~BHP@C=FJPr=jX5(ZG_J_NinrqKXQc9{B(FU`Jaskm>1`H+!SJ+0w3%yqR>kiho10T? z+|M3#Scg?xmrdnQSxo>Knh#|zcdccw#RMhc*qH$`YDtD?*I;^koG%-T2;khFyfJ zF0dPD&*R0Pfqj#)cmCgx`12A$cjIfa-Uo^sAKRy;ahPlfvifD`&vx-?xF3z>?Pgot zV#=3x?45L6u)8s7D5yPT;%!aJB5r7^?W=KKclW)yj~%3Te)B^0!-6v^$~eVf{g+;k z=k+lOf^Y!OdG#BOqe+#BU{Q|K6_+_(s9`&tLHg#uUBwCcfB4dXadYr@dhcyt8KagjLu?@M_c%dH#_eP{uoePafhWh{0dUh)^7*|afXX@Jp#)`P z22lo&st7U<;&+(G+(=-8mPtLq7Gn!c5~Mfq z6RE{Atftunk*Q9?3S`_%%+%#z25uq#ESdu#;23K{HWMw>3L#@q>x%)7rzwmldYx1R z!SiK|dqY>#;Nhwcq|!7vwT?5$VHTKC!JI4*8-fzDh;f2c@AHF)?dBw&!vYX-z_;3l zW-$|JK;%4+sf2eDoAGBIhkmy10O!%~lEQye9}Y|q;^efj9cEP?-o4}nedz3!4iix> zevq4xeKd0fJgFPUZD;jL!DEv^!Uq2 z15>}MCPWCBOr~mAa)2)0tde @FoGWvX<+-cb5e^y-85CiqjgGP29O3UHWt%xRt) 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.13.1", "imageio[ffmpeg]>=0.6.0", "opencv-python>=4.12.0.88", - "mooncake-transfer-engine==0.3.8.post1" + "mooncake-transfer-engine==0.3.8.post1", + "av" # for ComfyUI tests ] docs = [ diff --git a/tests/comfyui/conftest.py b/tests/comfyui/conftest.py new file mode 100644 index 000000000..7c9770b8e --- /dev/null +++ b/tests/comfyui/conftest.py @@ -0,0 +1,82 @@ +""" +Conftest for ComfyUI-vLLM-Omni tests. + +This module sets up the test environment by: +1. Adding the ComfyUI plugin to Python path +2. Mocking comfy_api.input module (AudioInput, VideoInput) since comfyui is not installed +3. Mocking comfy_extras.nodes_audio module +""" + +import os +import sys +from typing import BinaryIO, TypedDict +from unittest.mock import MagicMock + + +def pytest_configure(config): + """ + Called after command line options have been parsed and before test collection. + This is the right place to set up sys.path and mock modules. + """ + _setup_comfyui_test_environment() + + +def _setup_comfyui_test_environment(): + """Set up the test environment for ComfyUI plugin testing.""" + # === Add ComfyUI plugin path to allow importing comfyui_vllm_omni === + _COMFYUI_PLUGIN_PATH = os.path.abspath( + os.path.join(os.path.dirname(__file__), "..", "..", "apps", "ComfyUI-vLLM-Omni") + ) + if not os.path.isdir(_COMFYUI_PLUGIN_PATH): + raise FileNotFoundError( + f"ComfyUI plugin not found at {_COMFYUI_PLUGIN_PATH}. " + "If it is moved elsewhere, please update the path in this conftest.py." + ) + if _COMFYUI_PLUGIN_PATH not in sys.path: + sys.path.insert(0, _COMFYUI_PLUGIN_PATH) + + # Import torch after changing import paths. (To be used later) + import torch + + # === Mock ComfyUI internal modules (comfy_api & comfy_extras) and "import" them to sys.module === + class AudioInput(TypedDict): + """Mock AudioInput TypedDict from comfy_api.input""" + + waveform: torch.Tensor # Shape: (B, C, T) + sample_rate: int + + class VideoInput: + """Mock VideoInput class from comfy_api.input""" + + def __init__(self, data: bytes = b"mock_video_data"): + self._data = data + + def save_to(self, file: str | BinaryIO): + """Save video data to file or file-like object.""" + if isinstance(file, str): + print("Called VideoInput.save_to with file path. Saving to a path is no-op in tests.") + else: + file.write(self._data) + + mock_comfy_api = MagicMock() + mock_comfy_api_input = MagicMock() + mock_comfy_api_input.AudioInput = AudioInput + mock_comfy_api_input.VideoInput = VideoInput + mock_comfy_api.input = mock_comfy_api_input + + def mock_load(_: str | BinaryIO): + """Mock nodes_audio.load that returns a waveform tensor (channels, samples) and sample rate.""" + waveform = torch.zeros((1, 24000), dtype=torch.float32) + sample_rate = 24000 + return waveform, sample_rate + + mock_comfy_extras = MagicMock() + mock_nodes_audio = MagicMock() + mock_nodes_audio.load = mock_load + mock_comfy_extras.nodes_audio = mock_nodes_audio + + # Install mock modules BEFORE importing any comfyui_vllm_omni code + sys.modules["comfy_api"] = mock_comfy_api + sys.modules["comfy_api.input"] = mock_comfy_api_input + sys.modules["comfy_extras"] = mock_comfy_extras + sys.modules["comfy_extras.nodes_audio"] = mock_nodes_audio diff --git a/tests/comfyui/test_comfyui_integration.py b/tests/comfyui/test_comfyui_integration.py new file mode 100644 index 000000000..463596326 --- /dev/null +++ b/tests/comfyui/test_comfyui_integration.py @@ -0,0 +1,567 @@ +""" +Integration tests for ComfyUI nodes that use the Omni API client, with a mocked AsyncOmni and a real API server running in a background process. +These tests cover the integration between ComfyUI node and the API server, without actual model inference logic. +It ensures that +1. Changes made to the API (e.g., request and response formats) do not break the ComfyUI frontend that use it. +2. The sampling parameters are correctly passed from the node to AsyncOmni through the API layer. +""" + +import multiprocessing +import time +import traceback +from collections.abc import Iterable, Sequence +from enum import StrEnum, auto +from typing import Any, NamedTuple +from unittest.mock import AsyncMock, MagicMock, patch + +import pytest +import requests +import torch +from comfy_api.input import AudioInput, VideoInput +from comfyui_vllm_omni.nodes import ( + VLLMOmniGenerateImage, + VLLMOmniTTS, + VLLMOmniUnderstanding, + VLLMOmniVoiceClone, +) +from comfyui_vllm_omni.utils.types import AutoregressionSamplingParams, DiffusionSamplingParams +from PIL import Image +from vllm import SamplingParams +from vllm.outputs import CompletionOutput, RequestOutput +from vllm.utils.argparse_utils import FlexibleArgumentParser + +from vllm_omni.entrypoints.cli.serve import OmniServeCommand +from vllm_omni.inputs.data import OmniSamplingParams +from vllm_omni.outputs import OmniRequestOutput + + +class ServerCase(NamedTuple): + """Parametrizing the model to serve.""" + + served_model: str + stage_list: list + stage_configs: list[dict] + outputs: list[OmniRequestOutput] + + +class SamplingCase(NamedTuple): + """Parametrizing the input sampling parameters.""" + + kind: "SamplingKind" + sampling_params: dict | list[dict] | None + + +class SamplingKind(StrEnum): + IMAGE_NONE = auto() + IMAGE_DIFFUSION_SINGLE = auto() + UNDERSTANDING_NONE = auto() + UNDERSTANDING_AR_LIST = auto() + TTS_NONE = auto() + TTS_DIFFUSION_SINGLE = auto() + + +# Pre-defined arguments to be used in function calls during the tests +IMAGE_WIDTH = 64 +IMAGE_HEIGHT = 64 +DIFFUSION_SINGLE_SAMPLING_PARAMS = DiffusionSamplingParams( + { + "n": 2, + "num_inference_steps": 30, + "guidance_scale": 6.0, + "true_cfg_scale": 1.5, + } +) + +AR_LIST_SAMPLING_PARAMS = [ + AutoregressionSamplingParams( + { + "max_tokens": 64, + "temperature": 0.6, + "top_p": 0.9, + "repetition_penalty": 1.0, + "seed": 21, + } + ), + AutoregressionSamplingParams( + { + "max_tokens": 96, + "temperature": 0.75, + "top_p": 0.85, + "repetition_penalty": 1.05, + "seed": 22, + } + ), + AutoregressionSamplingParams( + { + "max_tokens": 128, + "temperature": 0.8, + "top_p": 0.8, + "repetition_penalty": 1.1, + "seed": 23, + } + ), +] + + +def _build_image_output(size: tuple[int, int] = (IMAGE_WIDTH, IMAGE_HEIGHT), color: str = "red") -> Image.Image: + return Image.new("RGB", size, color=color) + + +def _build_text_output(text: str = "This is a test response.") -> OmniRequestOutput: + completion_output = CompletionOutput( + index=0, + text=text, + token_ids=[1, 2, 3], + cumulative_logprob=0.0, + logprobs=None, + finish_reason="stop", + stop_reason=None, + ) + request_output = RequestOutput( + request_id="test_req_text", + prompt="test prompt", + prompt_token_ids=[1, 2, 3], + prompt_logprobs=None, + outputs=[completion_output], + finished=True, + metrics=None, + lora_request=None, + ) + return OmniRequestOutput( + request_id="test_req_text", + finished=True, + final_output_type="text", + request_output=request_output, + ) + + +def _build_audio_chat_output(num_samples: int = 24000) -> OmniRequestOutput: + completion_output = CompletionOutput( + index=0, + text="", + token_ids=[], + cumulative_logprob=0.0, + logprobs=None, + finish_reason="stop", + stop_reason=None, + ) + completion_output.multimodal_output = {"audio": [torch.zeros(1, num_samples)]} + request_output = RequestOutput( + request_id="test_req_audio_chat", + prompt="test prompt", + prompt_token_ids=[1, 2, 3], + prompt_logprobs=None, + outputs=[completion_output], + finished=True, + metrics=None, + lora_request=None, + ) + return OmniRequestOutput( + request_id="test_req_audio_chat", + finished=True, + final_output_type="audio", + request_output=request_output, + ) + + +def _build_audio_speech_output(num_samples: int = 24000) -> OmniRequestOutput: + return OmniRequestOutput.from_diffusion( + request_id="test_req_audio_speech", + images=[], + multimodal_output={"audio": torch.zeros(num_samples), "sr": 24000}, + final_output_type="audio", + ) + + +def _build_diffusion_image_output_for_images_endpoint() -> OmniRequestOutput: + return OmniRequestOutput.from_diffusion( + request_id="test_req_img_dalle", + images=[_build_image_output()], + final_output_type="image", + ) + + +def _build_diffusion_image_output_for_chat_endpoint() -> OmniRequestOutput: + request_output = MagicMock() + request_output.images = [_build_image_output(color="blue")] + request_output.finished = True + return OmniRequestOutput( + request_id="test_req_img_chat", + finished=True, + final_output_type="image", + request_output=request_output, + ) + + +def _assert_sampling_param_values(received: OmniSamplingParams, expected: dict[str, Any]): + for key, expected_value in expected.items(): + actual_value = getattr(received, key, None) + assert actual_value == expected_value, ( + f"Expected sampling param '{key}'={expected_value}, got {actual_value}. The received sampling params: {received}" + ) + + +def _build_mock_outputs(outputs: Iterable[OmniRequestOutput], sampling_case: SamplingCase, server_case: ServerCase): + async def _mock_generate(*args, **kwargs): + received_sampling_params_list: Sequence[OmniSamplingParams] | None = ( + args[2] if len(args) > 2 else kwargs.get("sampling_params_list") + ) + + assert received_sampling_params_list is not None, ( + "In the current codebase, the API layer always provides not-None sampling parameter list when calling `AsyncOmni.generate`" + "This test also uses this assumption for now." + "If this assertion fails, it means the API layer has changed and this test needs to be updated accordingly." + "It does not necessarily mean there is a bug, because `AsyncOmni.generate` does allow sampling_params_list to be None." + ) + assert isinstance(received_sampling_params_list, Sequence), "sampling_params_list should be a Sequence" + + if sampling_case.kind is SamplingKind.IMAGE_NONE: + assert len(received_sampling_params_list) == 1 + _assert_sampling_param_values( + received_sampling_params_list[0], + { + "width": IMAGE_WIDTH, + "height": IMAGE_HEIGHT, + }, + ) + elif sampling_case.kind is SamplingKind.IMAGE_DIFFUSION_SINGLE: + assert len(received_sampling_params_list) == 1 + expected = DIFFUSION_SINGLE_SAMPLING_PARAMS.copy() + expected["num_outputs_per_prompt"] = expected.pop("n") # convert from n to num_outputs_per_prompt + _assert_sampling_param_values( + received_sampling_params_list[0], + { + "width": IMAGE_WIDTH, + "height": IMAGE_HEIGHT, + **expected, + }, + ) + elif sampling_case.kind is SamplingKind.UNDERSTANDING_NONE: + assert len(received_sampling_params_list) == 3 + elif sampling_case.kind is SamplingKind.UNDERSTANDING_AR_LIST: + assert len(received_sampling_params_list) == 3 + for i, expected in enumerate(AR_LIST_SAMPLING_PARAMS): + _assert_sampling_param_values(received_sampling_params_list[i], expected) + elif sampling_case.kind in {SamplingKind.TTS_NONE, SamplingKind.TTS_DIFFUSION_SINGLE}: + assert len(received_sampling_params_list) == 1 + else: + raise AssertionError(f"Unknown sampling case: {sampling_case.kind}") + + for output in outputs: + yield output + + return _mock_generate + + +@pytest.fixture +def server_case(request) -> ServerCase: + return request.param + + +@pytest.fixture +def sampling_case(request) -> SamplingCase: + return request.param + + +@pytest.fixture +def mock_async_omni(server_case: ServerCase, sampling_case: SamplingCase): + async def _mock_preprocess_chat(self, *args, **kwargs): + return ([{"role": "user", "content": "test"}], [{"prompt": "test prompt"}]) + + # Need to mock AsyncOmni itself (not only its generate method) because + # 1. The API layer uses its stage_list and stage_configs attributes + # 2. Its __init__ method has slow side effects (model & config loading). + with ( + patch("vllm_omni.entrypoints.openai.api_server.AsyncOmni") as MockAsyncOmni, + patch( + "vllm_omni.entrypoints.openai.serving_chat.OmniOpenAIServingChat._preprocess_chat", + new=_mock_preprocess_chat, + ), + ): + mock_instance = AsyncMock() + mock_instance.generate = _build_mock_outputs(server_case.outputs, sampling_case, server_case) + + mock_instance.stage_list = server_case.stage_list + mock_instance.stage_configs = server_case.stage_configs + mock_instance.default_sampling_params_list = [ + SamplingParams() if stage.get("stage_type") != "diffusion" else MagicMock() + for stage in server_case.stage_configs + ] + mock_instance.errored = False + mock_instance.dead_error = RuntimeError("Mock engine error") + mock_instance.model_config = MagicMock(max_model_len=4096, io_processor_plugin=None) + mock_instance.io_processor = MagicMock() + mock_instance.input_processor = MagicMock() + mock_instance.shutdown = MagicMock() + mock_instance.get_vllm_config = AsyncMock(return_value=None) + mock_instance.get_supported_tasks = AsyncMock(return_value=["generate"]) + mock_instance.get_tokenizer = AsyncMock(return_value=None) + + MockAsyncOmni.return_value = mock_instance + yield MockAsyncOmni + + +@pytest.fixture +def api_server(unused_tcp_port_factory, server_case: ServerCase, mock_async_omni): + """Set up a API server in background process from command line with parametrized model name and mocked AsyncOmni.""" + parser = FlexibleArgumentParser() + subparsers = parser.add_subparsers(dest="command") + cmd = OmniServeCommand() + cmd.subparser_init(subparsers) + + port = unused_tcp_port_factory() + args = parser.parse_args(["serve", server_case.served_model, "--omni", "--port", str(port)]) + + def run_server(): + try: + cmd.cmd(args) + except Exception: + traceback.print_exc() + + server_process = multiprocessing.Process(target=run_server) + server_process.start() + + # Wait for the server to be ready by polling the health endpoint. + wait_time = 30 + wait_poll_interval = 1 + for _ in range(wait_time // wait_poll_interval): + try: + response = requests.get(f"http://127.0.0.1:{port}/health") + if response.status_code == 200: + break + except requests.ConnectionError: + time.sleep(wait_poll_interval) + else: + if server_process.is_alive(): + server_process.terminate() + server_process.join(timeout=5) + if server_process.is_alive(): + server_process.kill() + server_process.join(timeout=5) + pytest.fail(f"API server failed to start within {wait_time} seconds") + + yield f"http://127.0.0.1:{port}/v1" + + if server_process.is_alive(): + server_process.terminate() + server_process.join(timeout=10) + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "server_case,model,image_input", + [ + pytest.param( + ServerCase( + served_model="Tongyi-MAI/Z-Image-Turbo", + stage_list=["diffusion"], + stage_configs=[{"stage_type": "diffusion"}], + outputs=[_build_diffusion_image_output_for_images_endpoint()], + ), + "Tongyi-MAI/Z-Image-Turbo", + False, + id="text-to-image-dalle-endpoint", + ), + pytest.param( + ServerCase( + served_model="ByteDance-Seed/BAGEL-7B-MoT", + stage_list=["diffusion"], + stage_configs=[{"stage_type": "diffusion"}], + outputs=[_build_diffusion_image_output_for_chat_endpoint()], + ), + "ByteDance-Seed/BAGEL-7B-MoT", + False, + id="text-to-image-bagel-chat-endpoint", + ), + pytest.param( + ServerCase( + served_model="Qwen/Qwen-Image-Edit", + stage_list=["diffusion"], + stage_configs=[{"stage_type": "diffusion"}], + outputs=[_build_diffusion_image_output_for_images_endpoint()], + ), + "Qwen/Qwen-Image-Edit", + True, + id="image-to-image-dalle-endpoint", + ), + pytest.param( + ServerCase( + served_model="ByteDance-Seed/BAGEL-7B-MoT", + stage_list=["diffusion"], + stage_configs=[{"stage_type": "diffusion"}], + outputs=[_build_diffusion_image_output_for_chat_endpoint()], + ), + "ByteDance-Seed/BAGEL-7B-MoT", + True, + id="image-to-image-bagel-chat-endpoint", + ), + ], + indirect=["server_case"], +) +@pytest.mark.parametrize( + "sampling_case", + [ + pytest.param(SamplingCase(kind=SamplingKind.IMAGE_NONE, sampling_params=None), id="no-sampling-params"), + pytest.param( + SamplingCase(kind=SamplingKind.IMAGE_DIFFUSION_SINGLE, sampling_params=DIFFUSION_SINGLE_SAMPLING_PARAMS), + id="single-diffusion-sampling-params", + ), + ], + indirect=["sampling_case"], +) +async def test_image_generation_node(api_server: str, model: str, image_input: bool, sampling_case: SamplingCase): + node = VLLMOmniGenerateImage() + + kwargs = { + "url": api_server, + "model": model, + "prompt": "A beautiful sunset", + "width": IMAGE_WIDTH, + "height": IMAGE_HEIGHT, + } + if image_input: + kwargs["image"] = torch.zeros((1, IMAGE_WIDTH, IMAGE_HEIGHT, 3), dtype=torch.float32) + if sampling_case.sampling_params is not None: + kwargs["sampling_params"] = sampling_case.sampling_params + print(f"!!!!!! Calling {model} node.generate with kwargs: {sampling_case.sampling_params}") + + result = await node.generate(**kwargs) + + assert isinstance(result, tuple) + assert len(result) == 1 + assert isinstance(result[0], torch.Tensor) + assert result[0].shape == (1, IMAGE_WIDTH, IMAGE_HEIGHT, 3) + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "server_case", + [ + pytest.param( + ServerCase( + served_model="Qwen/Qwen2.5-Omni-7B", + stage_list=[ + MagicMock(is_comprehension=True, model_stage="llm"), + MagicMock(is_comprehension=False, model_stage="llm"), + MagicMock(is_comprehension=False, model_stage="llm"), + ], + stage_configs=[ + {"stage_type": "llm"}, + {"stage_type": "llm"}, + {"stage_type": "llm"}, + ], + outputs=[_build_audio_chat_output(), _build_text_output("Understanding response")], + ), + id="multimodal-understanding", + ) + ], + indirect=["server_case"], +) +@pytest.mark.parametrize( + "sampling_case", + [ + pytest.param(SamplingCase(kind=SamplingKind.UNDERSTANDING_NONE, sampling_params=None), id="no-sampling-params"), + pytest.param( + SamplingCase(kind=SamplingKind.UNDERSTANDING_AR_LIST, sampling_params=AR_LIST_SAMPLING_PARAMS), + id="ar-sampling-params-list", + ), + ], + indirect=["sampling_case"], +) +async def test_understanding_node(api_server: str, sampling_case: SamplingCase): + node = VLLMOmniUnderstanding() + + image = torch.zeros((1, IMAGE_WIDTH, IMAGE_HEIGHT, 3), dtype=torch.float32) + video = VideoInput(b"mock_video_for_test") # type: ignore[reportAbstractUsage] + audio: AudioInput = {"waveform": torch.zeros((1, 1, 24000), dtype=torch.float32), "sample_rate": 24000} + + text_response, audio_response = await node.generate( + url=api_server, + model="Qwen/Qwen2.5-Omni-7B", + prompt="Describe all modalities.", + image=image, + audio=audio, + video=video, + sampling_params=sampling_case.sampling_params, + output_text=True, + output_audio=True, + use_audio_in_video=True, + ) + + assert text_response == "Understanding response" + assert isinstance(audio_response, dict) + assert audio_response["sample_rate"] == 24000 + assert isinstance(audio_response["waveform"], torch.Tensor) + assert audio_response["waveform"].shape == (1, 1, 24000) + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "server_case,node_cls,call_kwargs", + [ + pytest.param( + ServerCase( + served_model="Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice", + stage_list=["llm"], + stage_configs=[{"stage_type": "llm"}], + outputs=[_build_audio_speech_output()], + ), + VLLMOmniTTS, + { + "model": "Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice", + "input": "Hello from TTS test", + "voice": "Vivian", + "response_format": "wav", + "speed": 1.0, + "model_specific_params": None, + }, + id="tts", + ), + pytest.param( + ServerCase( + served_model="Qwen/Qwen3-TTS-12Hz-1.7B-Base", + stage_list=["llm"], + stage_configs=[{"stage_type": "llm"}], + outputs=[_build_audio_speech_output()], + ), + VLLMOmniVoiceClone, + { + "model": "Qwen/Qwen3-TTS-12Hz-1.7B-Base", + "input": "Hello from voice clone test", + "voice": "Vivian", + "response_format": "wav", + "speed": 1.0, + "ref_audio": {"waveform": torch.zeros((1, 1, 24000), dtype=torch.float32), "sample_rate": 24000}, + "ref_text": "Reference transcript", + "x_vector_only_mode": False, + "model_specific_params": None, + }, + id="tts-voice-clone", + ), + ], + indirect=["server_case"], +) +@pytest.mark.parametrize( + "sampling_case", + [ + pytest.param(SamplingCase(kind=SamplingKind.TTS_NONE, sampling_params=None), id="no-sampling-params"), + pytest.param( + SamplingCase(kind=SamplingKind.TTS_DIFFUSION_SINGLE, sampling_params=DIFFUSION_SINGLE_SAMPLING_PARAMS), + id="single-diffusion-sampling-params", + ), + ], + indirect=["sampling_case"], +) +async def test_tts_nodes(api_server: str, node_cls, call_kwargs: dict, sampling_case: SamplingCase): + node = node_cls() + actual_kwargs = dict(call_kwargs) + if sampling_case.sampling_params is not None: + actual_kwargs["model_specific_params"] = sampling_case.sampling_params + result = await node.generate(url=api_server, **actual_kwargs) + + assert isinstance(result, tuple) + assert len(result) == 1 + assert isinstance(result[0], dict) + assert result[0]["sample_rate"] == 24000 + assert isinstance(result[0]["waveform"], torch.Tensor) + assert result[0]["waveform"].shape == (1, 1, 24000)