From 3fbcf68e19fb83caf1649fe787b462a9626c8881 Mon Sep 17 00:00:00 2001 From: edknv Date: Thu, 14 Nov 2024 10:17:19 -0800 Subject: [PATCH 01/37] Add doughnut http endpoint --- docker-compose.yaml | 7 +- .../pdf/doughnut_helper.py | 44 ++++--- src/nv_ingest/schemas/pdf_extractor_schema.py | 102 +++++++++++++++-- src/nv_ingest/stages/pdf_extractor_stage.py | 2 + src/nv_ingest/util/nim/helpers.py | 67 +++++++++-- src/nv_ingest/util/pipeline/stage_builders.py | 107 +++++++++--------- 6 files changed, 234 insertions(+), 95 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 29506958..70cf61a9 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -133,14 +133,17 @@ services: - CACHED_HTTP_ENDPOINT=http://cached:8000/v1/infer - CACHED_INFER_PROTOCOL=grpc - CUDA_VISIBLE_DEVICES=0 - - DEPLOT_GRPC_ENDPOINT="" + - DEPLOT_GRPC_ENDPOINT= # self hosted deplot - DEPLOT_HEALTH_ENDPOINT=deplot:8000 - DEPLOT_HTTP_ENDPOINT=http://deplot:8000/v1/chat/completions # build.nvidia.com hosted deplot - DEPLOT_INFER_PROTOCOL=http #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - - DOUGHNUT_GRPC_TRITON=triton-doughnut:8001 + - DOUGHNUT_GRPC_ENDPOINT= + # build.nvidia.com hosted doughnut + - DOUGHNUT_HTTP_ENDPOINT= + - DOUGHNUT_INFER_PROTOCOL=http - INGEST_LOG_LEVEL=DEFAULT - MESSAGE_CLIENT_HOST=redis - MESSAGE_CLIENT_PORT=6379 diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index 8929f0fe..c3cc6705 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -18,7 +18,6 @@ # limitations under the License. import logging -import os import uuid from typing import Dict from typing import List @@ -39,6 +38,8 @@ from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 from nv_ingest.util.nim import doughnut as doughnut_utils +from nv_ingest.util.nim.helpers import call_image_inference_model +from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable from nv_ingest.util.pdf.metadata_aggregators import construct_image_metadata_from_pdf_image @@ -48,8 +49,6 @@ logger = logging.getLogger(__name__) -DOUGHNUT_GRPC_TRITON = os.environ.get("DOUGHNUT_GRPC_TRITON", "triton:8001") -DEFAULT_BATCH_SIZE = 16 DEFAULT_RENDER_DPI = 300 DEFAULT_MAX_WIDTH = 1024 DEFAULT_MAX_HEIGHT = 1280 @@ -80,9 +79,10 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table """ logger.debug("Extracting PDF with doughnut backend.") - doughnut_triton_url = kwargs.get("doughnut_grpc_triton", DOUGHNUT_GRPC_TRITON) + doughnut_config = kwargs.get("doughnut_config", {}) + doughnut_config = doughnut_config if doughnut_config is not None else {} - batch_size = int(kwargs.get("doughnut_batch_size", DEFAULT_BATCH_SIZE)) + batch_size = doughnut_config.doughnut_batch_size row_data = kwargs.get("row_data") # get source_id @@ -146,10 +146,12 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table accumulated_tables = [] accumulated_images = [] - triton_client = grpcclient.InferenceServerClient(url=doughnut_triton_url) + doughnut_client = create_inference_client( + doughnut_config.doughnut_endpoints, doughnut_config.auth_token, doughnut_config.doughnut_infer_protocol + ) for batch, batch_page_offset in zip(batches, batch_page_offsets): - responses = preprocess_and_send_requests(triton_client, batch, batch_page_offset) + responses = preprocess_and_send_requests(doughnut_client, batch, batch_page_offset) for page_idx, raw_text, bbox_offset in responses: page_image = None @@ -275,13 +277,14 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table if len(text_extraction) > 0: extracted_data.append(text_extraction) - triton_client.close() + if isinstance(doughnut_client, grpcclient.InferenceServerClient): + doughnut_client.close() return extracted_data def preprocess_and_send_requests( - triton_client, + doughnut_client, batch: List[pdfium.PdfPage], batch_offset: int, ) -> List[Tuple[int, str]]: @@ -299,24 +302,15 @@ def preprocess_and_send_requests( batch = np.array(page_images) - input_tensors = [grpcclient.InferInput("image", batch.shape, datatype="UINT8")] - input_tensors[0].set_data_from_numpy(batch) - - outputs = [grpcclient.InferRequestedOutput("text")] - - query_response = triton_client.infer( - model_name="doughnut", - inputs=input_tensors, - outputs=outputs, - ) + output = call_image_inference_model(doughnut_client, "doughnut", batch) - text = query_response.as_numpy("text").tolist() - text = [t.decode() for t in text] - - if len(text) != len(batch): - return [] + if len(output) != len(batch): + raise RuntimeError( + f"Dimensions mismatch: there are {len(batch)} pages in the input but there are " + f"{len(output)} pages in the response." + ) - return list(zip(page_numbers, text, bbox_offsets)) + return list(zip(page_numbers, output, bbox_offsets)) @pdfium_exception_handler(descriptor="doughnut") diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index 9d0f538a..a7e14c73 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -68,17 +68,91 @@ def validate_endpoints(cls, values): If both gRPC and HTTP services are empty for any endpoint. """ - def clean_service(service): - """Set service to None if it's an empty string or contains only spaces or quotes.""" - if service is None or not service.strip() or service.strip(" \"'") == "": - return None - return service - for model_name in ["yolox"]: endpoint_name = f"{model_name}_endpoints" grpc_service, http_service = values.get(endpoint_name) - grpc_service = clean_service(grpc_service) - http_service = clean_service(http_service) + grpc_service = _clean_service(grpc_service) + http_service = _clean_service(http_service) + + if not grpc_service and not http_service: + raise ValueError(f"Both gRPC and HTTP services cannot be empty for {endpoint_name}.") + + values[endpoint_name] = (grpc_service, http_service) + + protocol_name = f"{model_name}_infer_protocol" + protocol_value = values.get(protocol_name) + if not protocol_value: + protocol_value = "http" if http_service else "grpc" if grpc_service else "" + protocol_value = protocol_value.lower() + values[protocol_name] = protocol_value + + return values + + class Config: + extra = "forbid" + + +class DoughnutConfigSchema(BaseModel): + """ + Configuration schema for Doughnut endpoints and options. + + Parameters + ---------- + auth_token : Optional[str], default=None + Authentication token required for secure services. + + doughnut_endpoints : Tuple[str, str] + A tuple containing the gRPC and HTTP services for the doughnut endpoint. + Either the gRPC or HTTP service can be empty, but not both. + + Methods + ------- + validate_endpoints(values) + Validates that at least one of the gRPC or HTTP services is provided for each endpoint. + + Raises + ------ + ValueError + If both gRPC and HTTP services are empty for any endpoint. + + Config + ------ + extra : str + Pydantic config option to forbid extra fields. + """ + + auth_token: Optional[str] = None + + doughnut_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) + doughnut_infer_protocol: str = "" + doughnut_batch_size: int = 32 + + @root_validator(pre=True) + def validate_endpoints(cls, values): + """ + Validates the gRPC and HTTP services for all endpoints. + + Parameters + ---------- + values : dict + Dictionary containing the values of the attributes for the class. + + Returns + ------- + dict + The validated dictionary of values. + + Raises + ------ + ValueError + If both gRPC and HTTP services are empty for any endpoint. + """ + + for model_name in ["doughnut"]: + endpoint_name = f"{model_name}_endpoints" + grpc_service, http_service = values.get(endpoint_name) + grpc_service = _clean_service(grpc_service) + http_service = _clean_service(http_service) if not grpc_service and not http_service: raise ValueError(f"Both gRPC and HTTP services cannot be empty for {endpoint_name}.") @@ -92,6 +166,10 @@ def clean_service(service): protocol_value = protocol_value.lower() values[protocol_name] = protocol_value + # Currently both build.nvidia.com and NIM do not support batch size > 1. + if values.get("doughnut_infer_protocol") == "http": + values["doughnut_batch_size"] = 1 + return values class Config: @@ -122,6 +200,14 @@ class PDFExtractorSchema(BaseModel): raise_on_failure: bool = False pdfium_config: Optional[PDFiumConfigSchema] = None + doughnut_config: Optional[DoughnutConfigSchema] = None class Config: extra = "forbid" + + +def _clean_service(service): + """Set service to None if it's an empty string or contains only spaces or quotes.""" + if service is None or not service.strip() or service.strip(" \"'") == "": + return None + return service diff --git a/src/nv_ingest/stages/pdf_extractor_stage.py b/src/nv_ingest/stages/pdf_extractor_stage.py index c5aaef85..ff8a7221 100644 --- a/src/nv_ingest/stages/pdf_extractor_stage.py +++ b/src/nv_ingest/stages/pdf_extractor_stage.py @@ -84,6 +84,8 @@ def decode_and_extract( if validated_config.pdfium_config is not None: extract_params["pdfium_config"] = validated_config.pdfium_config + if validated_config.doughnut_config is not None: + extract_params["doughnut_config"] = validated_config.doughnut_config if trace_info is not None: extract_params["trace_info"] = trace_info diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 99c4a506..be8c13df 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -8,6 +8,8 @@ from typing import Dict from typing import Optional from typing import Tuple +from typing import Union +from typing import List import backoff import cv2 @@ -74,7 +76,7 @@ def create_inference_client( @traceable_func(trace_name="pdf_content_extractor::{model_name}") -def call_image_inference_model(client, model_name: str, image_data): +def call_image_inference_model(client, model_name: str, image_data: np.ndarray): """ Calls an image inference model using the provided client. @@ -107,29 +109,43 @@ def call_image_inference_model(client, model_name: str, image_data): return response -def _call_image_inference_grpc_client(client, model_name: str, image_data): +def _call_image_inference_grpc_client(client, model_name: str, image_data: np.ndarray): if image_data.ndim == 3: image_data = np.expand_dims(image_data, axis=0) - inputs = [grpcclient.InferInput("input", image_data.shape, "FP32")] - inputs[0].set_data_from_numpy(image_data.astype(np.float32)) + + if model_name in {"deplot", "paddle", "cached", "yolox"}: + inputs = [grpcclient.InferInput("input", image_data.shape, "FP32")] + inputs[0].set_data_from_numpy(image_data.astype(np.float32)) + elif model_name == "doughnut": + inputs = [grpcclient.InferInput("input", image_data.shape, "UINT8")] + inputs[0].set_data_from_numpy(image_data.astype(np.uint8)) outputs = [grpcclient.InferRequestedOutput("output")] try: result = client.infer(model_name=model_name, inputs=inputs, outputs=outputs) - return " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) except Exception as e: err_msg = f"Inference failed for model {model_name}: {str(e)}" logger.error(err_msg) raise RuntimeError(err_msg) + if model_name in {"deplot", "paddle", "cached", "yolox"}: + result = " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) + elif model_name == "doughnut": + result = [output.decode("utf-8") for output in result.as_numpy("output")] + + return result -def _call_image_inference_http_client(client, model_name: str, image_data): - base64_img = numpy_to_base64(image_data) +def _call_image_inference_http_client(client, model_name: str, image_data: np.ndarray): if model_name == "deplot": + base64_img = numpy_to_base64(image_data) payload = _prepare_deplot_payload(base64_img) + elif model_name == "doughnut": + base64_images = [numpy_to_base64(arr) for arr in image_data] + payload = _prepare_doughnut_payload(base64_images) elif model_name in {"paddle", "cached", "yolox"}: + base64_img = numpy_to_base64(image_data) payload = _prepare_nim_payload(base64_img) else: raise ValueError(f"Model {model_name} is not supported.") @@ -153,6 +169,8 @@ def _call_image_inference_http_client(client, model_name: str, image_data): if model_name == "deplot": result = _extract_content_from_deplot_response(json_response) + elif model_name == "doughnut": + result = _extract_content_from_doughnut_response(json_response) else: result = _extract_content_from_nim_response(json_response) @@ -184,6 +202,29 @@ def _prepare_deplot_payload( return payload +def _prepare_doughnut_payload( + base64_images: Union[str, List[str]], +) -> Dict[str, Any]: + if isinstance(base64_images, str): + base64_images = [base64_images] + + messages = [] + for base64_img in base64_images: + messages.append( + { + "role": "user", + "content": "" + f'', + } + ) + payload = { + "model": "nvidia/eclair", + "messages": messages, + } + + return payload + + def _prepare_nim_payload(base64_img: str) -> Dict[str, Any]: image_url = f"data:image/png;base64,{base64_img}" image = {"type": "image_url", "image_url": {"url": image_url}} @@ -202,6 +243,14 @@ def _extract_content_from_deplot_response(json_response): return json_response["choices"][0]["message"]["content"] +def _extract_content_from_doughnut_response(json_response): + # Validate the response structure + if "choices" not in json_response or not json_response["choices"]: + raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") + + return json_response["choices"][0]["message"]["content"] + + def _extract_content_from_nim_response(json_response): if "data" not in json_response or not json_response["data"]: raise RuntimeError("Unexpected response format: 'data' key is missing or empty.") @@ -211,7 +260,9 @@ def _extract_content_from_nim_response(json_response): # Perform inference and return predictions @traceable_func(trace_name="pdf_content_extractor::{model_name}") -def perform_model_inference(client, model_name: str, input_array: np.ndarray): +def perform_model_inference( + client, model_name: str, input_array: np.ndarray, +): """ Perform inference using the provided model and input data. diff --git a/src/nv_ingest/util/pipeline/stage_builders.py b/src/nv_ingest/util/pipeline/stage_builders.py index a55f9e95..620ca8a7 100644 --- a/src/nv_ingest/util/pipeline/stage_builders.py +++ b/src/nv_ingest/util/pipeline/stage_builders.py @@ -3,9 +3,9 @@ # SPDX-License-Identifier: Apache-2.0 +import logging import math import os -import logging import typing import click @@ -67,7 +67,7 @@ def get_caption_classifier_service(): return triton_service_caption_classifier, triton_service_caption_classifier_name -def get_table_detection_service(env_var_prefix): +def get_nim_service(env_var_prefix): prefix = env_var_prefix.upper() grpc_endpoint = os.environ.get( f"{prefix}_GRPC_ENDPOINT", @@ -89,8 +89,8 @@ def get_table_detection_service(env_var_prefix): "http" if http_endpoint else "grpc" if grpc_endpoint else "", ) - logger.info(f"{prefix}_GRPC_TRITON: {grpc_endpoint}") - logger.info(f"{prefix}_HTTP_TRITON: {http_endpoint}") + logger.info(f"{prefix}_GRPC_ENDPOINT: {grpc_endpoint}") + logger.info(f"{prefix}_HTTP_ENDPOINT: {http_endpoint}") logger.info(f"{prefix}_INFER_PROTOCOL: {infer_protocol}") return grpc_endpoint, http_endpoint, auth_token, infer_protocol @@ -170,7 +170,8 @@ def add_metadata_injector_stage(pipe, morpheus_pipeline_config): def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_table_detection_service("yolox") + yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") + doughnut_grpc, doughnut_http, doughnut_auth, doughnut_protocol = get_nim_service("doughnut") pdf_content_extractor_config = ingest_config.get( "pdf_content_extraction_module", { @@ -178,7 +179,12 @@ def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, defau "yolox_endpoints": (yolox_grpc, yolox_http), "yolox_infer_protocol": yolox_protocol, "auth_token": yolox_auth, # All auth tokens are the same for the moment - } + }, + "doughnut_config": { + "doughnut_endpoints": (doughnut_grpc, doughnut_http), + "doughnut_infer_protocol": doughnut_protocol, + "auth_token": doughnut_auth, # All auth tokens are the same for the moment + }, }, ) pdf_extractor_stage = pipe.add_stage( @@ -195,70 +201,67 @@ def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, defau def add_table_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - _, _, yolox_auth, _ = get_table_detection_service("yolox") - paddle_grpc, paddle_http, paddle_auth, paddle_protocol = get_table_detection_service("paddle") - table_content_extractor_config = ingest_config.get("table_content_extraction_module", - { - "stage_config": { - "paddle_endpoints": (paddle_grpc, paddle_http), - "paddle_infer_protocol": paddle_protocol, - "auth_token": yolox_auth, - } - }) + _, _, yolox_auth, _ = get_nim_service("yolox") + paddle_grpc, paddle_http, paddle_auth, paddle_protocol = get_nim_service("paddle") + table_content_extractor_config = ingest_config.get( + "table_content_extraction_module", + { + "stage_config": { + "paddle_endpoints": (paddle_grpc, paddle_http), + "paddle_infer_protocol": paddle_protocol, + "auth_token": yolox_auth, + } + }, + ) table_extractor_stage = pipe.add_stage( - generate_table_extractor_stage( - morpheus_pipeline_config, - table_content_extractor_config, - pe_count=5 - ) + generate_table_extractor_stage(morpheus_pipeline_config, table_content_extractor_config, pe_count=5) ) return table_extractor_stage def add_chart_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - _, _, yolox_auth, _ = get_table_detection_service("yolox") + _, _, yolox_auth, _ = get_nim_service("yolox") - deplot_grpc, deplot_http, deplot_auth, deplot_protocol = get_table_detection_service("deplot") - cached_grpc, cached_http, cached_auth, cached_protocol = get_table_detection_service("cached") + deplot_grpc, deplot_http, deplot_auth, deplot_protocol = get_nim_service("deplot") + cached_grpc, cached_http, cached_auth, cached_protocol = get_nim_service("cached") # NOTE: Paddle isn't currently used directly by the chart extraction stage, but will be in the future. - paddle_grpc, paddle_http, paddle_auth, paddle_protocol = get_table_detection_service("paddle") - table_content_extractor_config = ingest_config.get("table_content_extraction_module", - { - "stage_config": { - "cached_endpoints": (cached_grpc, cached_http), - "cached_infer_protocol": cached_protocol, - "deplot_endpoints": (deplot_grpc, deplot_http), - "deplot_infer_protocol": deplot_protocol, - "paddle_endpoints": (paddle_grpc, paddle_http), - "paddle_infer_protocol": paddle_protocol, - "auth_token": yolox_auth, - } - }) + paddle_grpc, paddle_http, paddle_auth, paddle_protocol = get_nim_service("paddle") + table_content_extractor_config = ingest_config.get( + "table_content_extraction_module", + { + "stage_config": { + "cached_endpoints": (cached_grpc, cached_http), + "cached_infer_protocol": cached_protocol, + "deplot_endpoints": (deplot_grpc, deplot_http), + "deplot_infer_protocol": deplot_protocol, + "paddle_endpoints": (paddle_grpc, paddle_http), + "paddle_infer_protocol": paddle_protocol, + "auth_token": yolox_auth, + } + }, + ) table_extractor_stage = pipe.add_stage( - generate_chart_extractor_stage( - morpheus_pipeline_config, - table_content_extractor_config, - pe_count=5 - ) + generate_chart_extractor_stage(morpheus_pipeline_config, table_content_extractor_config, pe_count=5) ) return table_extractor_stage def add_image_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_table_detection_service("yolox") - image_extractor_config = ingest_config.get("image_extraction_module", - { - "image_extraction_config": { - "yolox_endpoints": (yolox_grpc, yolox_http), - "yolox_infer_protocol": yolox_protocol, - "auth_token": yolox_auth, - # All auth tokens are the same for the moment - } - }) + yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") + image_extractor_config = ingest_config.get( + "image_extraction_module", + { + "image_extraction_config": { + "yolox_endpoints": (yolox_grpc, yolox_http), + "yolox_infer_protocol": yolox_protocol, + "auth_token": yolox_auth, # All auth tokens are the same for the moment + } + }, + ) image_extractor_stage = pipe.add_stage( generate_image_extractor_stage( morpheus_pipeline_config, From e5a281d5b1880d249a1e3fcd053403da13a6ec89 Mon Sep 17 00:00:00 2001 From: edknv Date: Thu, 14 Nov 2024 15:23:12 -0800 Subject: [PATCH 02/37] fix table and chart extraction --- .../pdf/doughnut_helper.py | 24 ++++++++++++++----- src/nv_ingest/stages/nim/chart_extraction.py | 11 +++++---- src/nv_ingest/stages/nim/table_extraction.py | 13 ++++++---- src/nv_ingest/util/nim/helpers.py | 2 +- 4 files changed, 35 insertions(+), 15 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index c3cc6705..80d83e71 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -166,10 +166,11 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table } for cls, bbox, txt in zip(classes, bboxes, texts): - if extract_text: + + if extract_text and (cls in doughnut_utils.ACCEPTED_TEXT_CLASSES): txt = doughnut_utils.postprocess_text(txt, cls) - if extract_images and identify_nearby_objects: + if identify_nearby_objects: bbox = doughnut_utils.reverse_transform_bbox( bbox=bbox, bbox_offset=bbox_offset, @@ -181,16 +182,21 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table accumulated_text.append(txt) - elif extract_tables and (cls == "Table"): + if extract_tables and (cls == "Table"): try: txt = txt.encode().decode("unicode_escape") # remove double backlashes except UnicodeDecodeError: pass - bbox = doughnut_utils.reverse_transform_bbox(bbox, bbox_offset) + bbox = doughnut_utils.reverse_transform_bbox( + bbox=bbox, + bbox_offset=bbox_offset, + original_width=DEFAULT_MAX_WIDTH, + original_height=DEFAULT_MAX_HEIGHT, + ) table = LatexTable(latex=txt, bbox=bbox, max_width=page_width, max_height=page_height) accumulated_tables.append(table) - elif extract_images and (cls == "Picture"): + if extract_images and (cls == "Picture"): if page_image is None: scale_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) padding_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) @@ -202,7 +208,12 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table img_numpy = crop_image(page_image, bbox) if img_numpy is not None: base64_img = numpy_to_base64(img_numpy) - bbox = doughnut_utils.reverse_transform_bbox(bbox, bbox_offset) + bbox = doughnut_utils.reverse_transform_bbox( + bbox=bbox, + bbox_offset=bbox_offset, + original_width=DEFAULT_MAX_WIDTH, + original_height=DEFAULT_MAX_HEIGHT, + ) image = Base64Image( image=base64_img, bbox=bbox, @@ -340,6 +351,7 @@ def _construct_table_metadata( } table_metadata = { "caption": "", + "table_content": content, "table_format": table_format, "table_location": table.bbox, } diff --git a/src/nv_ingest/stages/nim/chart_extraction.py b/src/nv_ingest/stages/nim/chart_extraction.py index 46339228..e7f836a8 100644 --- a/src/nv_ingest/stages/nim/chart_extraction.py +++ b/src/nv_ingest/stages/nim/chart_extraction.py @@ -2,22 +2,24 @@ # All rights reserved. # SPDX-License-Identifier: Apache-2.0 -import logging import functools -import pandas as pd +import logging from typing import Any from typing import Dict from typing import Optional from typing import Tuple +import pandas as pd import tritonclient.grpc as grpcclient from morpheus.config import Config from nv_ingest.schemas.chart_extractor_schema import ChartExtractorSchema +from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.stages.multiprocessing_stage import MultiProcessingBaseStage from nv_ingest.util.image_processing.table_and_chart import join_cached_and_deplot_output from nv_ingest.util.image_processing.transforms import base64_to_numpy -from nv_ingest.util.nim.helpers import call_image_inference_model, create_inference_client +from nv_ingest.util.nim.helpers import call_image_inference_model +from nv_ingest.util.nim.helpers import create_inference_client logger = logging.getLogger(f"morpheus.{__name__}") @@ -62,7 +64,8 @@ def _update_metadata(row: pd.Series, cached_client: Any, deplot_client: Any, tra # Only modify if content type is structured and subtype is 'chart' and chart_metadata exists if ((content_metadata.get("type") != "structured") or (content_metadata.get("subtype") != "chart") or - (chart_metadata is None)): + (chart_metadata is None) or + (chart_metadata.get("table_format") != TableFormatEnum.IMAGE)): return metadata # Modify chart metadata with the result from the inference model diff --git a/src/nv_ingest/stages/nim/table_extraction.py b/src/nv_ingest/stages/nim/table_extraction.py index dd14cb18..7879dfa9 100644 --- a/src/nv_ingest/stages/nim/table_extraction.py +++ b/src/nv_ingest/stages/nim/table_extraction.py @@ -2,22 +2,26 @@ # All rights reserved. # SPDX-License-Identifier: Apache-2.0 -import logging import functools -import pandas as pd +import logging from typing import Any from typing import Dict from typing import Optional from typing import Tuple +import pandas as pd import tritonclient.grpc as grpcclient from morpheus.config import Config + +from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.schemas.table_extractor_schema import TableExtractorSchema from nv_ingest.stages.multiprocessing_stage import MultiProcessingBaseStage from nv_ingest.util.image_processing.transforms import base64_to_numpy from nv_ingest.util.image_processing.transforms import check_numpy_image_size -from nv_ingest.util.nim.helpers import call_image_inference_model, create_inference_client, preprocess_image_for_paddle +from nv_ingest.util.nim.helpers import call_image_inference_model +from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.nim.helpers import get_version +from nv_ingest.util.nim.helpers import preprocess_image_for_paddle logger = logging.getLogger(f"morpheus.{__name__}") @@ -63,7 +67,8 @@ def _update_metadata(row: pd.Series, paddle_client: Any, paddle_version: Any, tr # Only modify if content type is structured and subtype is 'table' and table_metadata exists if ((content_metadata.get("type") != "structured") or (content_metadata.get("subtype") != "table") or - (table_metadata is None)): + (table_metadata is None) or + (table_metadata.get("table_format") != TableFormatEnum.IMAGE)): return metadata # Modify table metadata with the result from the inference model diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index be8c13df..8fd39ebd 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -248,7 +248,7 @@ def _extract_content_from_doughnut_response(json_response): if "choices" not in json_response or not json_response["choices"]: raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") - return json_response["choices"][0]["message"]["content"] + return [choice["message"]["content"] for choice in json_response["choices"]] def _extract_content_from_nim_response(json_response): From d933a337f6231d97cb2b4df4a90e3e82b24ed574 Mon Sep 17 00:00:00 2001 From: edknv Date: Mon, 18 Nov 2024 12:01:25 -0800 Subject: [PATCH 03/37] handle 202 reponses by repolling status --- src/nv_ingest/util/nim/helpers.py | 60 ++++++++++++++++++++++++++++--- 1 file changed, 56 insertions(+), 4 deletions(-) diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 8fd39ebd..8131537f 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -4,12 +4,13 @@ import logging import re +import time from typing import Any from typing import Dict +from typing import List from typing import Optional from typing import Tuple from typing import Union -from typing import List import backoff import cv2 @@ -157,8 +158,11 @@ def _call_image_inference_http_client(client, model_name: str, image_data: np.nd response = requests.post(url, json=payload, headers=headers) response.raise_for_status() # Raise an exception for HTTP errors - # Parse the JSON response - json_response = response.json() + if (response.status_code) == 202 and ("nvcf-reqid" in response.headers): + req_id = response.headers.get("nvcf-reqid") + json_response = _repoll_image_inference_http_client(url, req_id, payload=payload, headers=headers) + else: + json_response = response.json() except requests.exceptions.RequestException as e: raise RuntimeError(f"HTTP request failed: {e}") @@ -177,6 +181,52 @@ def _call_image_inference_http_client(client, model_name: str, image_data: np.nd return result +def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=10, poll_interval=5): + # Construct the base URL dynamically from the original URL + if "/v2/nvcf/pexec/functions" in url: + base_url = url.split("/pexec/functions")[0] + else: + raise ValueError("The endpoint URL does not contain the expected path structure.") + + poll_url = f"{base_url}/exec/status/{req_id}" + + poll_headers = { + "Accept": "application/json", + "Content-Type": "application/json", + } + if "Authorization" in headers: + poll_headers.update({"Authorization": headers.get("Authorization")}) + + retry_count = 0 + + while retry_count < max_retries: + response = requests.get(poll_url, headers=poll_headers) + + # Handle 404 by obtaining a new req_id if the request was pending too long + if (response.status_code == 404) and (payload is not None): + logger.debug("Received 404 (request might have been pending too long). Retrying.") + response = requests.post(url, json=payload, headers=headers) + response.raise_for_status() + + if (response.status_code) == 202 and ("nvcf-reqid" in response.headers): + req_id = response.headers.get("nvcf-reqid") + retry_count += 1 + continue + else: + # If we get a final response, return it + return response.json() + + response.raise_for_status() + + if response.status_code != 202: + return response.json().get("response") + + time.sleep(poll_interval) + retry_count += 1 + + raise RuntimeError("Maximum number of retries reached without a final response.") + + def _prepare_deplot_payload( base64_img: str, max_tokens: int = DEPLOT_MAX_TOKENS, @@ -261,7 +311,9 @@ def _extract_content_from_nim_response(json_response): # Perform inference and return predictions @traceable_func(trace_name="pdf_content_extractor::{model_name}") def perform_model_inference( - client, model_name: str, input_array: np.ndarray, + client, + model_name: str, + input_array: np.ndarray, ): """ Perform inference using the provided model and input data. From af9ca0ebb30a886c3e363db433fbdd25ca2b7444 Mon Sep 17 00:00:00 2001 From: edknv Date: Mon, 18 Nov 2024 12:16:01 -0800 Subject: [PATCH 04/37] add table format in unit tests --- tests/nv_ingest/stages/nims/test_table_extraction.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/nv_ingest/stages/nims/test_table_extraction.py b/tests/nv_ingest/stages/nims/test_table_extraction.py index 160856cc..c8c61719 100644 --- a/tests/nv_ingest/stages/nims/test_table_extraction.py +++ b/tests/nv_ingest/stages/nims/test_table_extraction.py @@ -101,7 +101,8 @@ def sample_dataframe(base64_encoded_image): "subtype": "table" }, "table_metadata": { - "table_content": "" + "table_content": "", + "table_format": "image", } }] } From 6ad99c00f9eae4a0d8bed515e071c23d32142a45 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 09:14:45 -0800 Subject: [PATCH 05/37] fix table and image max dimensions --- src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py | 7 ++++--- src/nv_ingest/util/nim/helpers.py | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index 80d83e71..0bfe2c0a 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -193,7 +193,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table original_width=DEFAULT_MAX_WIDTH, original_height=DEFAULT_MAX_HEIGHT, ) - table = LatexTable(latex=txt, bbox=bbox, max_width=page_width, max_height=page_height) + table = LatexTable(latex=txt, bbox=bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT) accumulated_tables.append(table) if extract_images and (cls == "Picture"): @@ -219,8 +219,8 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table bbox=bbox, width=img_numpy.shape[1], height=img_numpy.shape[0], - max_width=page_width, - max_height=page_height, + max_width=DEFAULT_MAX_WIDTH, + max_height=DEFAULT_MAX_HEIGHT, ) accumulated_images.append(image) @@ -354,6 +354,7 @@ def _construct_table_metadata( "table_content": content, "table_format": table_format, "table_location": table.bbox, + "table_location_max_dimensions": (table.max_width, table.max_height), } ext_unified_metadata = base_unified_metadata.copy() diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 8131537f..e9c465fb 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -181,7 +181,7 @@ def _call_image_inference_http_client(client, model_name: str, image_data: np.nd return result -def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=10, poll_interval=5): +def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=60, poll_interval=5): # Construct the base URL dynamically from the original URL if "/v2/nvcf/pexec/functions" in url: base_url = url.split("/pexec/functions")[0] From b3c632b3000e44c45dc52dd61feec13297193b88 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 10:23:58 -0800 Subject: [PATCH 06/37] add unit tests for the helper --- .../pdf/test_doughnut_helper.py | 133 ++++++++++++++++++ .../pdf/test_eclair_helper.py | 0 2 files changed, 133 insertions(+) create mode 100644 tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py delete mode 100644 tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py new file mode 100644 index 00000000..80625206 --- /dev/null +++ b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py @@ -0,0 +1,133 @@ +from io import BytesIO +from unittest.mock import MagicMock +from unittest.mock import patch + +import numpy as np +import pandas as pd +import pytest + +from nv_ingest.extraction_workflows.pdf.doughnut_helper import _construct_table_metadata +from nv_ingest.extraction_workflows.pdf.doughnut_helper import doughnut +from nv_ingest.extraction_workflows.pdf.doughnut_helper import preprocess_and_send_requests +from nv_ingest.schemas.metadata_schema import AccessLevelEnum +from nv_ingest.schemas.metadata_schema import TextTypeEnum +from nv_ingest.util.nim import doughnut as doughnut_utils +from nv_ingest.util.nim.helpers import call_image_inference_model +from nv_ingest.util.pdf.metadata_aggregators import Base64Image +from nv_ingest.util.pdf.metadata_aggregators import LatexTable + +_MODULE_UNDER_TEST = "nv_ingest.extraction_workflows.pdf.doughnut_helper" + + +@pytest.fixture +def document_df(): + """Fixture to create a DataFrame for testing.""" + return pd.DataFrame( + { + "source_id": ["source1"], + } + ) + + +@pytest.fixture +def sample_pdf_stream(): + with open("data/test.pdf", "rb") as f: + pdf_stream = BytesIO(f.read()) + return pdf_stream + + +@patch(f"{_MODULE_UNDER_TEST}.create_inference_client") +@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") +def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): + mock_create_client.return_value = MagicMock() + mock_call_inference.return_value = ["testing"] + + result = doughnut( + pdf_stream=sample_pdf_stream, + extract_text=True, + extract_images=False, + extract_tables=False, + row_data=document_df.iloc[0], + text_depth="page", + doughnut_config=MagicMock(doughnut_batch_size=1), + ) + + mock_call_inference.assert_called() + + assert len(result) == 1 + assert result[0][0].value == "text" + assert result[0][1]["content"] == "testing" + assert result[0][1]["source_metadata"]["source_id"] == "source1" + + +@patch(f"{_MODULE_UNDER_TEST}.create_inference_client") +@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") +def test_doughnut_table_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): + mock_create_client.return_value = MagicMock() + mock_call_inference.return_value = ["table text"] + + result = doughnut( + pdf_stream=sample_pdf_stream, + extract_text=True, + extract_images=False, + extract_tables=True, + row_data=document_df.iloc[0], + text_depth="page", + doughnut_config=MagicMock(doughnut_batch_size=1), + ) + + mock_call_inference.assert_called() + + assert len(result) == 2 + assert result[0][0].value == "structured" + assert result[0][1]["content"] == "table text" + assert result[0][1]["table_metadata"]["table_location"] == (0, 0, 1024, 1280) + assert result[0][1]["table_metadata"]["table_location_max_dimensions"] == (1024, 1280) + assert result[1][0].value == "text" + assert result[1][1]["content"] == "" + + +@patch(f"{_MODULE_UNDER_TEST}.create_inference_client") +@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") +def test_doughnut_image_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): + mock_create_client.return_value = MagicMock() + mock_call_inference.return_value = [""] + + result = doughnut( + pdf_stream=sample_pdf_stream, + extract_text=True, + extract_images=True, + extract_tables=False, + row_data=document_df.iloc[0], + text_depth="page", + doughnut_config=MagicMock(doughnut_batch_size=1), + ) + + mock_call_inference.assert_called() + + assert len(result) == 2 + assert result[0][0].value == "image" + assert result[0][1]["content"][:10] == "iVBORw0KGg" # PNG format header + assert result[0][1]["image_metadata"]["image_location"] == (0, 0, 1024, 1280) + assert result[0][1]["image_metadata"]["image_location_max_dimensions"] == (1024, 1280) + assert result[1][0].value == "text" + assert result[1][1]["content"] == "" + + +@patch(f"{_MODULE_UNDER_TEST}.pdfium_pages_to_numpy") +@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") +def test_preprocess_and_send_requests(mock_call_inference, mock_pdfium_pages_to_numpy): + mock_call_inference.return_value = ["testing"] * 3 + mock_pdfium_pages_to_numpy.return_value = (np.array([[1], [2], [3]]), [0, 1, 2]) + + mock_client = MagicMock() + batch = [MagicMock()] * 3 + batch_offset = 0 + + result = preprocess_and_send_requests(mock_client, batch, batch_offset) + + assert len(result) == 3, "Result should have 3 entries" + assert all( + isinstance(item, tuple) and len(item) == 3 for item in result + ), "Each entry should be a tuple with 3 items" + mock_call_inference.assert_called_once() diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py deleted file mode 100644 index e69de29b..00000000 From 0deb5c992b94e6080000c7181e4d5388db8b0f92 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 10:41:49 -0800 Subject: [PATCH 07/37] add placeholder for url in docker compose --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 70cf61a9..c4a97b06 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -142,7 +142,7 @@ services: #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - DOUGHNUT_GRPC_ENDPOINT= # build.nvidia.com hosted doughnut - - DOUGHNUT_HTTP_ENDPOINT= + - DOUGHNUT_HTTP_ENDPOINT=https://placeholder - DOUGHNUT_INFER_PROTOCOL=http - INGEST_LOG_LEVEL=DEFAULT - MESSAGE_CLIENT_HOST=redis From 2e7db6d8452b6bd259ca9fde7abca51735ee21e5 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 12:50:52 -0800 Subject: [PATCH 08/37] add check for empty dataframe in table/chart extraction --- src/nv_ingest/stages/nim/chart_extraction.py | 11 +++++++---- src/nv_ingest/stages/nim/table_extraction.py | 11 +++++++---- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/nv_ingest/stages/nim/chart_extraction.py b/src/nv_ingest/stages/nim/chart_extraction.py index e7f836a8..b031f506 100644 --- a/src/nv_ingest/stages/nim/chart_extraction.py +++ b/src/nv_ingest/stages/nim/chart_extraction.py @@ -116,6 +116,13 @@ def _extract_chart_data(df: pd.DataFrame, task_props: Dict[str, Any], _ = task_props # unused + if trace_info is None: + trace_info = {} + logger.debug("No trace_info provided. Initialized empty trace_info dictionary.") + + if df.empty: + return df, trace_info + deplot_client = create_inference_client( validated_config.stage_config.deplot_endpoints, validated_config.stage_config.auth_token, @@ -128,10 +135,6 @@ def _extract_chart_data(df: pd.DataFrame, task_props: Dict[str, Any], validated_config.stage_config.cached_infer_protocol ) - if trace_info is None: - trace_info = {} - logger.debug("No trace_info provided. Initialized empty trace_info dictionary.") - try: # Apply the _update_metadata function to each row in the DataFrame df["metadata"] = df.apply(_update_metadata, axis=1, args=(cached_client, deplot_client, trace_info)) diff --git a/src/nv_ingest/stages/nim/table_extraction.py b/src/nv_ingest/stages/nim/table_extraction.py index 7879dfa9..4b5e40ea 100644 --- a/src/nv_ingest/stages/nim/table_extraction.py +++ b/src/nv_ingest/stages/nim/table_extraction.py @@ -122,16 +122,19 @@ def _extract_table_data(df: pd.DataFrame, task_props: Dict[str, Any], _ = task_props # unused + if trace_info is None: + trace_info = {} + logger.debug("No trace_info provided. Initialized empty trace_info dictionary.") + + if df.empty: + return df, trace_info + paddle_client = create_inference_client( validated_config.stage_config.paddle_endpoints, validated_config.stage_config.auth_token, validated_config.stage_config.paddle_infer_protocol ) - if trace_info is None: - trace_info = {} - logger.debug("No trace_info provided. Initialized empty trace_info dictionary.") - try: # Apply the _update_metadata function to each row in the DataFrame paddle_version = get_version(validated_config.stage_config.paddle_endpoints[1]) From c5b5d3e0f8b80a78d9fb68efca7f1cfeac834612 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 16:33:17 -0800 Subject: [PATCH 09/37] clean up doughnut specific confiditions in inference func --- .../pdf/doughnut_helper.py | 5 +- src/nv_ingest/util/nim/helpers.py | 67 ++++++------------- 2 files changed, 24 insertions(+), 48 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index 0bfe2c0a..9fd4053b 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -313,7 +313,10 @@ def preprocess_and_send_requests( batch = np.array(page_images) - output = call_image_inference_model(doughnut_client, "doughnut", batch) + output = [] + for page_image in page_images: + response = call_image_inference_model(doughnut_client, "doughnut", page_image) + output.append(response) if len(output) != len(batch): raise RuntimeError( diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index e9c465fb..70486e45 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -7,10 +7,8 @@ import time from typing import Any from typing import Dict -from typing import List from typing import Optional from typing import Tuple -from typing import Union import backoff import cv2 @@ -114,12 +112,8 @@ def _call_image_inference_grpc_client(client, model_name: str, image_data: np.nd if image_data.ndim == 3: image_data = np.expand_dims(image_data, axis=0) - if model_name in {"deplot", "paddle", "cached", "yolox"}: - inputs = [grpcclient.InferInput("input", image_data.shape, "FP32")] - inputs[0].set_data_from_numpy(image_data.astype(np.float32)) - elif model_name == "doughnut": - inputs = [grpcclient.InferInput("input", image_data.shape, "UINT8")] - inputs[0].set_data_from_numpy(image_data.astype(np.uint8)) + inputs = [grpcclient.InferInput("input", image_data.shape, "FP32")] + inputs[0].set_data_from_numpy(image_data.astype(np.float32)) outputs = [grpcclient.InferRequestedOutput("output")] @@ -130,23 +124,19 @@ def _call_image_inference_grpc_client(client, model_name: str, image_data: np.nd logger.error(err_msg) raise RuntimeError(err_msg) - if model_name in {"deplot", "paddle", "cached", "yolox"}: - result = " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) - elif model_name == "doughnut": - result = [output.decode("utf-8") for output in result.as_numpy("output")] + result = " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) return result def _call_image_inference_http_client(client, model_name: str, image_data: np.ndarray): + base64_img = numpy_to_base64(image_data) + if model_name == "deplot": - base64_img = numpy_to_base64(image_data) payload = _prepare_deplot_payload(base64_img) elif model_name == "doughnut": - base64_images = [numpy_to_base64(arr) for arr in image_data] - payload = _prepare_doughnut_payload(base64_images) + payload = _prepare_doughnut_payload(base64_img) elif model_name in {"paddle", "cached", "yolox"}: - base64_img = numpy_to_base64(image_data) payload = _prepare_nim_payload(base64_img) else: raise ValueError(f"Model {model_name} is not supported.") @@ -171,17 +161,15 @@ def _call_image_inference_http_client(client, model_name: str, image_data: np.nd except Exception as e: raise RuntimeError(f"An error occurred during inference: {e}") - if model_name == "deplot": - result = _extract_content_from_deplot_response(json_response) - elif model_name == "doughnut": - result = _extract_content_from_doughnut_response(json_response) + if model_name in {"deplot", "doughnut"}: + result = _extract_content_from_vlm_nim_response(json_response) else: - result = _extract_content_from_nim_response(json_response) + result = _extract_content_from_image_nim_response(json_response) return result -def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=60, poll_interval=5): +def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=180, poll_interval=1): # Construct the base URL dynamically from the original URL if "/v2/nvcf/pexec/functions" in url: base_url = url.split("/pexec/functions")[0] @@ -252,21 +240,14 @@ def _prepare_deplot_payload( return payload -def _prepare_doughnut_payload( - base64_images: Union[str, List[str]], -) -> Dict[str, Any]: - if isinstance(base64_images, str): - base64_images = [base64_images] - - messages = [] - for base64_img in base64_images: - messages.append( - { - "role": "user", - "content": "" - f'', - } - ) +def _prepare_doughnut_payload(base64_img: str) -> Dict[str, Any]: + messages = [ + { + "role": "user", + "content": "" + f'', + } + ] payload = { "model": "nvidia/eclair", "messages": messages, @@ -285,7 +266,7 @@ def _prepare_nim_payload(base64_img: str) -> Dict[str, Any]: return payload -def _extract_content_from_deplot_response(json_response): +def _extract_content_from_vlm_nim_response(json_response): # Validate the response structure if "choices" not in json_response or not json_response["choices"]: raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") @@ -293,15 +274,7 @@ def _extract_content_from_deplot_response(json_response): return json_response["choices"][0]["message"]["content"] -def _extract_content_from_doughnut_response(json_response): - # Validate the response structure - if "choices" not in json_response or not json_response["choices"]: - raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") - - return [choice["message"]["content"] for choice in json_response["choices"]] - - -def _extract_content_from_nim_response(json_response): +def _extract_content_from_image_nim_response(json_response): if "data" not in json_response or not json_response["data"]: raise RuntimeError("Unexpected response format: 'data' key is missing or empty.") From bcb00379c35e85886aa4c561b0312e6a1ff88be9 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 16:42:52 -0800 Subject: [PATCH 10/37] clean up doughnut specific confiditions in inference func --- src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py | 1 + src/nv_ingest/util/nim/helpers.py | 6 ++---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index 9fd4053b..a7c520c5 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -315,6 +315,7 @@ def preprocess_and_send_requests( output = [] for page_image in page_images: + # Currently, the model only supports processing one page at a time (batch size = 1). response = call_image_inference_model(doughnut_client, "doughnut", page_image) output.append(response) diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 70486e45..865202e2 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -119,15 +119,13 @@ def _call_image_inference_grpc_client(client, model_name: str, image_data: np.nd try: result = client.infer(model_name=model_name, inputs=inputs, outputs=outputs) + return " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) + except Exception as e: err_msg = f"Inference failed for model {model_name}: {str(e)}" logger.error(err_msg) raise RuntimeError(err_msg) - result = " ".join([output[0].decode("utf-8") for output in result.as_numpy("output")]) - - return result - def _call_image_inference_http_client(client, model_name: str, image_data: np.ndarray): base64_img = numpy_to_base64(image_data) From 187d13dbd1b0c40772c48ff0719d5b22836291a8 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 19 Nov 2024 16:52:38 -0800 Subject: [PATCH 11/37] fix unit tests --- .../extraction_workflows/pdf/test_doughnut_helper.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py index 80625206..3dcee801 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py @@ -40,7 +40,7 @@ def sample_pdf_stream(): @patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = ["testing"] + mock_call_inference.return_value = "testing" result = doughnut( pdf_stream=sample_pdf_stream, @@ -64,7 +64,7 @@ def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sampl @patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") def test_doughnut_table_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = ["table text"] + mock_call_inference.return_value = "table text" result = doughnut( pdf_stream=sample_pdf_stream, @@ -91,7 +91,7 @@ def test_doughnut_table_extraction(mock_call_inference, mock_create_client, samp @patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") def test_doughnut_image_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = [""] + mock_call_inference.return_value = "" result = doughnut( pdf_stream=sample_pdf_stream, @@ -130,4 +130,5 @@ def test_preprocess_and_send_requests(mock_call_inference, mock_pdfium_pages_to_ assert all( isinstance(item, tuple) and len(item) == 3 for item in result ), "Each entry should be a tuple with 3 items" - mock_call_inference.assert_called_once() + + mock_call_inference.assert_called() From 321052fd3d142ae2c80e63d16b069cea1cd3c9d0 Mon Sep 17 00:00:00 2001 From: edknv Date: Fri, 22 Nov 2024 11:40:12 -0800 Subject: [PATCH 12/37] Add support for text bounding boxes --- .../pdf/doughnut_helper.py | 7 ++++- src/nv_ingest/schemas/metadata_schema.py | 2 ++ src/nv_ingest/util/nim/helpers.py | 2 +- .../util/pdf/metadata_aggregators.py | 8 ++++- .../pdf/test_doughnut_helper.py | 30 +++++++++++++++++++ 5 files changed, 46 insertions(+), 3 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index a7c520c5..b16d2008 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -160,7 +160,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table classes, bboxes, texts = doughnut_utils.extract_classes_bboxes(raw_text) page_nearby_blocks = { - "text": {"content": [], "bbox": []}, + "text": {"content": [], "bbox": [], "type": []}, "images": {"content": [], "bbox": []}, "structured": {"content": [], "bbox": []}, } @@ -179,6 +179,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table ) page_nearby_blocks["text"]["content"].append(txt) page_nearby_blocks["text"]["bbox"].append(bbox) + page_nearby_blocks["text"]["type"].append(cls) accumulated_text.append(txt) @@ -266,6 +267,9 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table text_depth, source_metadata, base_unified_metadata, + delimiter="\n\n", + bbox_max_dimensions=(DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), + nearby_objects=page_nearby_blocks, ) ) accumulated_text = [] @@ -283,6 +287,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table text_depth, source_metadata, base_unified_metadata, + delimiter="\n\n", ) if len(text_extraction) > 0: diff --git a/src/nv_ingest/schemas/metadata_schema.py b/src/nv_ingest/schemas/metadata_schema.py index 97a64ae6..b4f29a00 100644 --- a/src/nv_ingest/schemas/metadata_schema.py +++ b/src/nv_ingest/schemas/metadata_schema.py @@ -205,6 +205,7 @@ class NearbyObjectsSubSchema(BaseModelNoExt): content: List[str] = [] bbox: List[tuple] = [] + type: List[str] = [] class NearbyObjectsSchema(BaseModelNoExt): @@ -248,6 +249,7 @@ class TextMetadataSchema(BaseModelNoExt): keywords: Union[str, List[str], Dict] = "" language: LanguageEnum = "en" # default to Unknown? Maybe do some kind of heuristic check text_location: tuple = (0, 0, 0, 0) + text_location_max_dimensions: tuple = (0, 0, 0, 0) class ImageMetadataSchema(BaseModelNoExt): diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 865202e2..363fd997 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -167,7 +167,7 @@ def _call_image_inference_http_client(client, model_name: str, image_data: np.nd return result -def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=180, poll_interval=1): +def _repoll_image_inference_http_client(url, req_id, payload=None, headers=None, max_retries=100, poll_interval=3): # Construct the base URL dynamically from the original URL if "/v2/nvcf/pexec/functions" in url: base_url = url.split("/pexec/functions")[0] diff --git a/src/nv_ingest/util/pdf/metadata_aggregators.py b/src/nv_ingest/util/pdf/metadata_aggregators.py index 64b040af..df5ba837 100644 --- a/src/nv_ingest/util/pdf/metadata_aggregators.py +++ b/src/nv_ingest/util/pdf/metadata_aggregators.py @@ -9,6 +9,7 @@ from typing import Any from typing import Dict from typing import List +from typing import Optional from typing import Tuple import base64 import io @@ -145,8 +146,11 @@ def construct_text_metadata( text_depth, source_metadata, base_unified_metadata, + delimiter=" ", + bbox_max_dimensions: Tuple[int, int] = (-1, -1), + nearby_objects: Optional[Dict[str, Any]] = None, ): - extracted_text = " ".join(accumulated_text) + extracted_text = delimiter.join(accumulated_text) content_metadata = { "type": ContentTypeEnum.TEXT, @@ -158,6 +162,7 @@ def construct_text_metadata( "block": -1, "line": -1, "span": -1, + "nearby_objects": nearby_objects or [], }, } @@ -172,6 +177,7 @@ def construct_text_metadata( "keywords": keywords, "language": language, "text_location": bbox, + "text_location_max_dimensions": bbox_max_dimensions, } ext_unified_metadata = base_unified_metadata.copy() diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py index 3dcee801..9b7878dd 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py @@ -132,3 +132,33 @@ def test_preprocess_and_send_requests(mock_call_inference, mock_pdfium_pages_to_ ), "Each entry should be a tuple with 3 items" mock_call_inference.assert_called() + + +@patch(f"{_MODULE_UNDER_TEST}.create_inference_client") +@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") +def test_doughnut_text_extraction_bboxes(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): + mock_create_client.return_value = MagicMock() + mock_call_inference.return_value = ( + "testing0testing1" + ) + + result = doughnut( + pdf_stream=sample_pdf_stream, + extract_text=True, + extract_images=False, + extract_tables=False, + row_data=document_df.iloc[0], + text_depth="page", + doughnut_config=MagicMock(doughnut_batch_size=1), + ) + + mock_call_inference.assert_called() + + assert len(result) == 1 + assert result[0][0].value == "text" + assert result[0][1]["content"] == "testing0\n\ntesting1" + assert result[0][1]["source_metadata"]["source_id"] == "source1" + + blocks = result[0][1]["content_metadata"]["hierarchy"]["nearby_objects"] + assert blocks["text"]["content"] == ["testing0", "testing1"] + assert blocks["text"]["type"] == ["Title", "Text"] From a9a74b739183176fba1fab34363a68d3c9a6f1a3 Mon Sep 17 00:00:00 2001 From: edknv Date: Sat, 23 Nov 2024 07:39:41 -0800 Subject: [PATCH 13/37] also add table and image bounding boxes to metadata --- .../pdf/doughnut_helper.py | 111 +++++++++--------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index b16d2008..dd7da595 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -161,69 +161,74 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table page_nearby_blocks = { "text": {"content": [], "bbox": [], "type": []}, - "images": {"content": [], "bbox": []}, - "structured": {"content": [], "bbox": []}, + "images": {"content": [], "bbox": [], "type": []}, + "structured": {"content": [], "bbox": [], "type": []}, } for cls, bbox, txt in zip(classes, bboxes, texts): - if extract_text and (cls in doughnut_utils.ACCEPTED_TEXT_CLASSES): - txt = doughnut_utils.postprocess_text(txt, cls) + transformed_bbox = doughnut_utils.reverse_transform_bbox( + bbox=bbox, + bbox_offset=bbox_offset, + original_width=DEFAULT_MAX_WIDTH, + original_height=DEFAULT_MAX_HEIGHT, + ) + if cls in doughnut_utils.ACCEPTED_TEXT_CLASSES: if identify_nearby_objects: - bbox = doughnut_utils.reverse_transform_bbox( - bbox=bbox, - bbox_offset=bbox_offset, - original_width=DEFAULT_MAX_WIDTH, - original_height=DEFAULT_MAX_HEIGHT, - ) page_nearby_blocks["text"]["content"].append(txt) - page_nearby_blocks["text"]["bbox"].append(bbox) + page_nearby_blocks["text"]["bbox"].append(transformed_bbox) page_nearby_blocks["text"]["type"].append(cls) - accumulated_text.append(txt) - - if extract_tables and (cls == "Table"): - try: - txt = txt.encode().decode("unicode_escape") # remove double backlashes - except UnicodeDecodeError: - pass - bbox = doughnut_utils.reverse_transform_bbox( - bbox=bbox, - bbox_offset=bbox_offset, - original_width=DEFAULT_MAX_WIDTH, - original_height=DEFAULT_MAX_HEIGHT, - ) - table = LatexTable(latex=txt, bbox=bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT) - accumulated_tables.append(table) - - if extract_images and (cls == "Picture"): - if page_image is None: - scale_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - padding_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - page_image, *_ = pdfium_pages_to_numpy( - [pages[page_idx]], scale_tuple=scale_tuple, padding_tuple=padding_tuple - ) - page_image = page_image[0] - - img_numpy = crop_image(page_image, bbox) - if img_numpy is not None: - base64_img = numpy_to_base64(img_numpy) - bbox = doughnut_utils.reverse_transform_bbox( - bbox=bbox, - bbox_offset=bbox_offset, - original_width=DEFAULT_MAX_WIDTH, - original_height=DEFAULT_MAX_HEIGHT, - ) - image = Base64Image( - image=base64_img, - bbox=bbox, - width=img_numpy.shape[1], - height=img_numpy.shape[0], - max_width=DEFAULT_MAX_WIDTH, - max_height=DEFAULT_MAX_HEIGHT, + if extract_text: + txt = doughnut_utils.postprocess_text(txt, cls) + accumulated_text.append(txt) + + if cls == "Table": + if identify_nearby_objects: + page_nearby_blocks["structured"]["content"].append(txt) + page_nearby_blocks["structured"]["bbox"].append(transformed_bbox) + page_nearby_blocks["structured"]["type"].append(cls) + + if extract_tables: + try: + txt = txt.encode().decode("unicode_escape") # remove double backlashes + except UnicodeDecodeError: + pass + + table = LatexTable( + latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT ) - accumulated_images.append(image) + accumulated_tables.append(table) + + if cls == "Picture": + if identify_nearby_objects: + page_nearby_blocks["images"]["content"].append(txt) + page_nearby_blocks["images"]["bbox"].append(transformed_bbox) + page_nearby_blocks["images"]["type"].append(cls) + + if extract_images: + if page_image is None: + scale_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) + padding_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) + page_image, *_ = pdfium_pages_to_numpy( + [pages[page_idx]], scale_tuple=scale_tuple, padding_tuple=padding_tuple + ) + page_image = page_image[0] + + img_numpy = crop_image(page_image, bbox) + + if img_numpy is not None: + base64_img = numpy_to_base64(img_numpy) + image = Base64Image( + image=base64_img, + bbox=transformed_bbox, + width=img_numpy.shape[1], + height=img_numpy.shape[0], + max_width=DEFAULT_MAX_WIDTH, + max_height=DEFAULT_MAX_HEIGHT, + ) + accumulated_images.append(image) # Construct tables if extract_tables: From 1d532a4506e936cfb5693d7826afe09816861d52 Mon Sep 17 00:00:00 2001 From: edknv Date: Mon, 2 Dec 2024 11:29:02 -0800 Subject: [PATCH 14/37] Use seprate environment variable for private endpoint --- src/nv_ingest/util/pipeline/stage_builders.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/nv_ingest/util/pipeline/stage_builders.py b/src/nv_ingest/util/pipeline/stage_builders.py index 620ca8a7..f77a75be 100644 --- a/src/nv_ingest/util/pipeline/stage_builders.py +++ b/src/nv_ingest/util/pipeline/stage_builders.py @@ -84,6 +84,12 @@ def get_nim_service(env_var_prefix): "NGC_API_KEY", "", ) + + # TODO: This is a temporary workaround for the private endpoint on NVCF. + # It should be removed after the endpoint is moved to Preview API on Build. + if prefix == "DOUGHNUT": + auth_token = os.environ.get("DOUGHNUT_NVCF_API_KEY", "") + infer_protocol = os.environ.get( f"{prefix}_INFER_PROTOCOL", "http" if http_endpoint else "grpc" if grpc_endpoint else "", From ea057e6cc75403b53f7c7d08a775ffd52349f511 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 3 Dec 2024 23:28:05 -0800 Subject: [PATCH 15/37] Use seprate environment variable for private endpoint --- docker-compose.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-compose.yaml b/docker-compose.yaml index c4a97b06..0831475b 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -144,6 +144,7 @@ services: # build.nvidia.com hosted doughnut - DOUGHNUT_HTTP_ENDPOINT=https://placeholder - DOUGHNUT_INFER_PROTOCOL=http + - DOUGHNUT_NVCF_API_KEY=${DOUGHNUT_NVCF_API_KEY:-ngcapikey} - INGEST_LOG_LEVEL=DEFAULT - MESSAGE_CLIENT_HOST=redis - MESSAGE_CLIENT_PORT=6379 From 8088eedfa63b400c7ca5263d2be73b4104218061 Mon Sep 17 00:00:00 2001 From: edknv Date: Mon, 9 Dec 2024 12:54:05 -0800 Subject: [PATCH 16/37] migrate to using NimClient and ModelInterface --- .../pdf/doughnut_helper.py | 11 +- src/nv_ingest/util/nim/doughnut.py | 165 +++++++++++++++++- src/nv_ingest/util/nim/helpers.py | 105 ++++++++--- 3 files changed, 246 insertions(+), 35 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index dd7da595..7e4abfa5 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -38,7 +38,6 @@ from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 from nv_ingest.util.nim import doughnut as doughnut_utils -from nv_ingest.util.nim.helpers import call_image_inference_model from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable @@ -146,8 +145,13 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table accumulated_tables = [] accumulated_images = [] + model_interface = doughnut_utils.DoughnutModelInterface() doughnut_client = create_inference_client( - doughnut_config.doughnut_endpoints, doughnut_config.auth_token, doughnut_config.doughnut_infer_protocol + doughnut_config.doughnut_endpoints, + model_interface, + doughnut_config.auth_token, + doughnut_config.doughnut_infer_protocol, + timeout=300, # TODO: We shouldn't need this with an optimized endpoint. ) for batch, batch_page_offset in zip(batches, batch_page_offsets): @@ -326,7 +330,8 @@ def preprocess_and_send_requests( output = [] for page_image in page_images: # Currently, the model only supports processing one page at a time (batch size = 1). - response = call_image_inference_model(doughnut_client, "doughnut", page_image) + data = {"image": page_image} + response = doughnut_client.infer(data, model_name="doughnut") output.append(response) if len(output) != len(batch): diff --git a/src/nv_ingest/util/nim/doughnut.py b/src/nv_ingest/util/nim/doughnut.py index cffdbce8..59e645ac 100644 --- a/src/nv_ingest/util/nim/doughnut.py +++ b/src/nv_ingest/util/nim/doughnut.py @@ -4,15 +4,14 @@ import logging import re -from math import ceil -from math import floor +from typing import Any +from typing import Dict from typing import List from typing import Optional from typing import Tuple -import numpy as np - from nv_ingest.util.image_processing.transforms import numpy_to_base64 +from nv_ingest.util.nim.helpers import ModelInterface ACCEPTED_TEXT_CLASSES = set( [ @@ -50,6 +49,164 @@ logger = logging.getLogger(__name__) +class DoughnutModelInterface(ModelInterface): + """ + An interface for handling inference with a Doughnut model. + """ + + def name(self) -> str: + """ + Get the name of the model interface. + + Returns + ------- + str + The name of the model interface. + """ + return "doughnut" + + def prepare_data_for_inference(self, data: Dict[str, Any]) -> Dict[str, Any]: + """ + Prepare input data for inference by resizing images and storing their original shapes. + + Parameters + ---------- + data : dict + The input data containing a list of images. + + Returns + ------- + dict + The updated data dictionary with resized images and original image shapes. + """ + + return data + + def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: + """ + Format input data for the specified protocol. + + Parameters + ---------- + data : dict + The input data to format. + protocol : str + The protocol to use ("grpc" or "http"). + **kwargs : dict + Additional parameters for HTTP payload formatting. + + Returns + ------- + Any + The formatted input data. + + Raises + ------ + ValueError + If an invalid protocol is specified. + """ + + if protocol == "grpc": + raise ValueError("gRPC protocol is not supported for Doughnut.") + elif protocol == "http": + logger.debug("Formatting input for HTTP Doughnut model") + # Prepare payload for HTTP request + base64_img = numpy_to_base64(data["image"]) + payload = self._prepare_doughnut_payload(base64_img) + return payload + else: + raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") + + def parse_output(self, response: Any, protocol: str, data: Optional[Dict[str, Any]] = None, **kwargs) -> Any: + """ + Parse the output from the model's inference response. + + Parameters + ---------- + response : Any + The response from the model inference. + protocol : str + The protocol used ("grpc" or "http"). + data : dict, optional + Additional input data passed to the function. + + Returns + ------- + Any + The parsed output data. + + Raises + ------ + ValueError + If an invalid protocol is specified. + """ + + if protocol == "grpc": + raise ValueError("gRPC protocol is not supported for Doughnut.") + elif protocol == "http": + logger.debug("Parsing output from HTTP Doughnut model") + return self._extract_content_from_doughnut_response(response) + else: + raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") + + def process_inference_results(self, output: Any, **kwargs) -> Any: + """ + Process inference results for the Doughnut model. + + Parameters + ---------- + output : Any + The raw output from the model. + + Returns + ------- + Any + The processed inference results. + """ + + return output + + def _prepare_doughnut_payload(self, base64_img: str) -> Dict[str, Any]: + messages = [ + { + "role": "user", + "content": "" + f'', + } + ] + payload = { + "model": "nvidia/eclair", + "messages": messages, + } + + return payload + + def _extract_content_from_doughnut_response(self, json_response: Dict[str, Any]) -> Any: + """ + Extract content from the JSON response of a Deplot HTTP API request. + + Parameters + ---------- + json_response : dict + The JSON response from the Deplot API. + + Returns + ------- + Any + The extracted content from the response. + + Raises + ------ + RuntimeError + If the response does not contain the expected "choices" key or if it is empty. + """ + + if "choices" not in json_response or not json_response["choices"]: + raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") + + return json_response["choices"][0]["message"]["content"] + + def extract_classes_bboxes(text: str) -> Tuple[List[str], List[Tuple[int, int, int, int]], List[str]]: classes: List[str] = [] bboxes: List[Tuple[int, int, int, int]] = [] diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 95e79c44..146dd933 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -6,7 +6,6 @@ import re import time from typing import Any -from typing import Dict from typing import Optional from typing import Tuple @@ -107,12 +106,12 @@ class NimClient: """ def __init__( - self, - model_interface: ModelInterface, - protocol: str, - endpoints: Tuple[str, str], - auth_token: Optional[str] = None, - timeout: float = 30.0 + self, + model_interface: ModelInterface, + protocol: str, + endpoints: Tuple[str, str], + auth_token: Optional[str] = None, + timeout: float = 30.0, ): """ Initialize the NimClient with the specified model interface, protocol, and server endpoints. @@ -143,12 +142,12 @@ def __init__( grpc_endpoint, http_endpoint = endpoints - if self.protocol == 'grpc': + if self.protocol == "grpc": if not grpc_endpoint: raise ValueError("gRPC endpoint must be provided for gRPC protocol") logger.debug(f"Creating gRPC client with {grpc_endpoint}") self.client = grpcclient.InferenceServerClient(url=grpc_endpoint) - elif self.protocol == 'http': + elif self.protocol == "http": if not http_endpoint: raise ValueError("HTTP endpoint must be provided for HTTP protocol") logger.debug(f"Creating HTTP client with {http_endpoint}") @@ -190,11 +189,11 @@ def infer(self, data: dict, model_name: str, **kwargs) -> Any: formatted_input = self.model_interface.format_input(prepared_data, protocol=self.protocol) # Perform inference - if self.protocol == 'grpc': + if self.protocol == "grpc": logger.debug("Performing gRPC inference...") response = self._grpc_infer(formatted_input, model_name) logger.debug("gRPC inference received response") - elif self.protocol == 'http': + elif self.protocol == "http": logger.debug("Performing HTTP inference...") response = self._http_infer(formatted_input) logger.debug("HTTP inference received response") @@ -206,9 +205,7 @@ def infer(self, data: dict, model_name: str, **kwargs) -> Any: response, protocol=self.protocol, data=prepared_data, **kwargs ) results = self.model_interface.process_inference_results( - parsed_output, - original_image_shapes=data.get('original_image_shapes'), - **kwargs + parsed_output, original_image_shapes=data.get("original_image_shapes"), **kwargs ) return results @@ -267,26 +264,31 @@ def _http_infer(self, formatted_input: dict) -> dict: while attempt <= max_retries: try: response = requests.post( - self.endpoint_url, - json=formatted_input, - headers=self.headers, - timeout=self.timeout + self.endpoint_url, json=formatted_input, headers=self.headers, timeout=self.timeout ) status_code = response.status_code if status_code in [429, 503]: # Warn and attempt to retry - logger.warning(f"Received HTTP {status_code} ({response.reason}) from {self.model_interface.name()}. Retrying...") + logger.warning( + f"Received HTTP {status_code} ({response.reason}) from {self.model_interface.name()}. Retrying..." + ) if attempt == max_retries: # No more retries left logger.error(f"Max retries exceeded after receiving HTTP {status_code}.") response.raise_for_status() # This will raise the appropriate HTTPError else: # Exponential backoff before retrying - backoff_time = base_delay * (2 ** attempt) + backoff_time = base_delay * (2**attempt) time.sleep(backoff_time) attempt += 1 continue + elif (response.status_code == 202) and ("nvcf-reqid" in response.headers): + req_id = response.headers.get("nvcf-reqid") + response = repoll_http_client( + self.endpoint_url, req_id, payload=formatted_input, headers=self.headers + ) + return response else: # Not a 429/503 - just raise_for_status or return the response response.raise_for_status() @@ -313,15 +315,16 @@ def _http_infer(self, formatted_input: dict) -> dict: raise Exception(f"Failed to get a successful response after {max_retries} retries.") def close(self): - if self.protocol == 'grpc' and hasattr(self.client, 'close'): + if self.protocol == "grpc" and hasattr(self.client, "close"): self.client.close() def create_inference_client( - endpoints: Tuple[str, str], - model_interface: ModelInterface, - auth_token: Optional[str] = None, - infer_protocol: Optional[str] = None, + endpoints: Tuple[str, str], + model_interface: ModelInterface, + auth_token: Optional[str] = None, + infer_protocol: Optional[str] = None, + timeout: float = 30.0, ) -> NimClient: """ Create a NimClient for interfacing with a model inference server. @@ -355,10 +358,10 @@ def create_inference_client( elif infer_protocol is None and http_endpoint: infer_protocol = "http" - if infer_protocol not in ['grpc', 'http']: + if infer_protocol not in ["grpc", "http"]: raise ValueError("Invalid infer_protocol specified. Must be 'grpc' or 'http'.") - return NimClient(model_interface, infer_protocol, endpoints, auth_token) + return NimClient(model_interface, infer_protocol, endpoints, auth_token, timeout=timeout) def preprocess_image_for_paddle(array: np.ndarray, paddle_version: Optional[str] = None) -> np.ndarray: @@ -431,7 +434,7 @@ def remove_url_endpoints(url) -> str: Returns: str: URL with just the hostname:port portion remaining """ - if ("/v1" in url): + if "/v1" in url: url = url.split("/v1")[0] return url @@ -592,3 +595,49 @@ def get_version(http_endpoint: str, metadata_endpoint: str = "/v1/metadata", ver # Don't let anything squeeze by logger.warning(f"Exception: {ex}") return "" + + +def repoll_http_client(url, req_id, payload=None, headers=None, max_retries=100, poll_interval=3): + # Construct the base URL dynamically from the original URL + if "/v2/nvcf/pexec/functions" in url: + base_url = url.split("/pexec/functions")[0] + else: + raise ValueError("The endpoint URL does not contain the expected path structure.") + + poll_url = f"{base_url}/exec/status/{req_id}" + + poll_headers = { + "Accept": "application/json", + "Content-Type": "application/json", + } + if "Authorization" in headers: + poll_headers.update({"Authorization": headers.get("Authorization")}) + + retry_count = 0 + + while retry_count < max_retries: + response = requests.get(poll_url, headers=poll_headers) + + # Handle 404 by obtaining a new req_id if the request was pending too long + if (response.status_code == 404) and (payload is not None): + logger.debug("Received 404 (request might have been pending too long). Retrying.") + response = requests.post(url, json=payload, headers=headers) + response.raise_for_status() + + if (response.status_code) == 202 and ("nvcf-reqid" in response.headers): + req_id = response.headers.get("nvcf-reqid") + retry_count += 1 + continue + else: + # If we get a final response, return it + return response.json() + + response.raise_for_status() + + if response.status_code != 202: + return response.json().get("response") + + time.sleep(poll_interval) + retry_count += 1 + + raise RuntimeError("Maximum number of retries reached without a final response.") From 792b7245402736dc710a44572664370cbda84e8d Mon Sep 17 00:00:00 2001 From: edknv Date: Mon, 9 Dec 2024 14:12:41 -0800 Subject: [PATCH 17/37] update unit tests --- .../pdf/test_doughnut_helper.py | 47 +++++++------------ tests/nv_ingest/util/nim/test_helpers.py | 7 ++- 2 files changed, 22 insertions(+), 32 deletions(-) diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py index 9b7878dd..0509b5cb 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py @@ -12,7 +12,6 @@ from nv_ingest.schemas.metadata_schema import AccessLevelEnum from nv_ingest.schemas.metadata_schema import TextTypeEnum from nv_ingest.util.nim import doughnut as doughnut_utils -from nv_ingest.util.nim.helpers import call_image_inference_model from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable @@ -37,10 +36,10 @@ def sample_pdf_stream(): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") -def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): - mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = "testing" +def test_doughnut_text_extraction(mock_client, sample_pdf_stream, document_df): + mock_client_instance = MagicMock() + mock_client.return_value = mock_client_instance + mock_client_instance.infer.return_value = "testing" result = doughnut( pdf_stream=sample_pdf_stream, @@ -52,8 +51,6 @@ def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sampl doughnut_config=MagicMock(doughnut_batch_size=1), ) - mock_call_inference.assert_called() - assert len(result) == 1 assert result[0][0].value == "text" assert result[0][1]["content"] == "testing" @@ -61,10 +58,10 @@ def test_doughnut_text_extraction(mock_call_inference, mock_create_client, sampl @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") -def test_doughnut_table_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): - mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = "table text" +def test_doughnut_table_extraction(mock_client, sample_pdf_stream, document_df): + mock_client_instance = MagicMock() + mock_client.return_value = mock_client_instance + mock_client_instance.infer.return_value = "table text" result = doughnut( pdf_stream=sample_pdf_stream, @@ -76,8 +73,6 @@ def test_doughnut_table_extraction(mock_call_inference, mock_create_client, samp doughnut_config=MagicMock(doughnut_batch_size=1), ) - mock_call_inference.assert_called() - assert len(result) == 2 assert result[0][0].value == "structured" assert result[0][1]["content"] == "table text" @@ -88,10 +83,10 @@ def test_doughnut_table_extraction(mock_call_inference, mock_create_client, samp @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") -def test_doughnut_image_extraction(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): - mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = "" +def test_doughnut_image_extraction(mock_client, sample_pdf_stream, document_df): + mock_client_instance = MagicMock() + mock_client.return_value = mock_client_instance + mock_client_instance.infer.return_value = "" result = doughnut( pdf_stream=sample_pdf_stream, @@ -103,8 +98,6 @@ def test_doughnut_image_extraction(mock_call_inference, mock_create_client, samp doughnut_config=MagicMock(doughnut_batch_size=1), ) - mock_call_inference.assert_called() - assert len(result) == 2 assert result[0][0].value == "image" assert result[0][1]["content"][:10] == "iVBORw0KGg" # PNG format header @@ -115,9 +108,7 @@ def test_doughnut_image_extraction(mock_call_inference, mock_create_client, samp @patch(f"{_MODULE_UNDER_TEST}.pdfium_pages_to_numpy") -@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") -def test_preprocess_and_send_requests(mock_call_inference, mock_pdfium_pages_to_numpy): - mock_call_inference.return_value = ["testing"] * 3 +def test_preprocess_and_send_requests(mock_pdfium_pages_to_numpy): mock_pdfium_pages_to_numpy.return_value = (np.array([[1], [2], [3]]), [0, 1, 2]) mock_client = MagicMock() @@ -131,14 +122,12 @@ def test_preprocess_and_send_requests(mock_call_inference, mock_pdfium_pages_to_ isinstance(item, tuple) and len(item) == 3 for item in result ), "Each entry should be a tuple with 3 items" - mock_call_inference.assert_called() - @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -@patch(f"{_MODULE_UNDER_TEST}.call_image_inference_model") -def test_doughnut_text_extraction_bboxes(mock_call_inference, mock_create_client, sample_pdf_stream, document_df): - mock_create_client.return_value = MagicMock() - mock_call_inference.return_value = ( +def test_doughnut_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): + mock_client_instance = MagicMock() + mock_client.return_value = mock_client_instance + mock_client_instance.infer.return_value = ( "testing0testing1" ) @@ -152,8 +141,6 @@ def test_doughnut_text_extraction_bboxes(mock_call_inference, mock_create_client doughnut_config=MagicMock(doughnut_batch_size=1), ) - mock_call_inference.assert_called() - assert len(result) == 1 assert result[0][0].value == "text" assert result[0][1]["content"] == "testing0\n\ntesting1" diff --git a/tests/nv_ingest/util/nim/test_helpers.py b/tests/nv_ingest/util/nim/test_helpers.py index b9dc2c95..65a36443 100644 --- a/tests/nv_ingest/util/nim/test_helpers.py +++ b/tests/nv_ingest/util/nim/test_helpers.py @@ -390,6 +390,7 @@ def test_create_inference_client_grpc_endpoint_whitespace(mock_model_interface, def test_create_inference_client_nimclient_parameters(mock_model_interface, grpc_endpoint, http_endpoint): infer_protocol = 'grpc' auth_token = 'test_token' + timeout = 42 # Mock NimClient to capture the initialization parameters with patch(f'{MODULE_UNDER_TEST}.NimClient') as mock_nim_client_class: @@ -397,13 +398,15 @@ def test_create_inference_client_nimclient_parameters(mock_model_interface, grpc endpoints=(grpc_endpoint, http_endpoint), model_interface=mock_model_interface, auth_token=auth_token, - infer_protocol=infer_protocol + infer_protocol=infer_protocol, + timeout=timeout, ) mock_nim_client_class.assert_called_once_with( mock_model_interface, infer_protocol, (grpc_endpoint, http_endpoint), - auth_token + auth_token, + timeout=timeout, ) From 71d721245722eb1a7315a86e97f1589e4fe8abf2 Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 10 Dec 2024 09:04:16 -0800 Subject: [PATCH 18/37] lint --- .../stages/nims/test_table_extraction.py | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/tests/nv_ingest/stages/nims/test_table_extraction.py b/tests/nv_ingest/stages/nims/test_table_extraction.py index 116bc757..6e6f2add 100644 --- a/tests/nv_ingest/stages/nims/test_table_extraction.py +++ b/tests/nv_ingest/stages/nims/test_table_extraction.py @@ -164,17 +164,16 @@ def mock_infer(data, model_name, **kwargs): @pytest.fixture def sample_dataframe(base64_encoded_image): data = { - "metadata": [{ - "content": base64_encoded_image, - "content_metadata": { - "type": "structured", - "subtype": "table" - }, - "table_metadata": { - "table_content": "", - "table_format": "image", + "metadata": [ + { + "content": base64_encoded_image, + "content_metadata": {"type": "structured", "subtype": "table"}, + "table_metadata": { + "table_content": "", + "table_format": "image", + }, } - }] + ] } df = pd.DataFrame(data) return df From e9f021f3a7aefa7808e37d7a513645adb885d52c Mon Sep 17 00:00:00 2001 From: edknv Date: Tue, 10 Dec 2024 09:28:43 -0800 Subject: [PATCH 19/37] fix unit test --- tests/nv_ingest/util/nim/test_helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/nv_ingest/util/nim/test_helpers.py b/tests/nv_ingest/util/nim/test_helpers.py index 2d206114..c86520a5 100644 --- a/tests/nv_ingest/util/nim/test_helpers.py +++ b/tests/nv_ingest/util/nim/test_helpers.py @@ -415,7 +415,7 @@ def test_create_inference_client_nimclient_parameters(mock_model_interface, grpc infer_protocol, (grpc_endpoint, http_endpoint), auth_token, - timeout, + timeout=timeout, ) From c6b0a3599fc2e34b1c0853fb4228c8498217ca52 Mon Sep 17 00:00:00 2001 From: edknv Date: Sun, 12 Jan 2025 16:38:11 -0800 Subject: [PATCH 20/37] migrate doughnut config to pydantic 2 --- src/nv_ingest/schemas/pdf_extractor_schema.py | 6 +++--- src/nv_ingest/util/pdf/metadata_aggregators.py | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index 9513e069..363b539b 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -126,7 +126,8 @@ class DoughnutConfigSchema(BaseModel): doughnut_infer_protocol: str = "" doughnut_batch_size: int = 32 - @root_validator(pre=True) + @model_validator(mode="before") + @classmethod def validate_endpoints(cls, values): """ Validates the gRPC and HTTP services for all endpoints. @@ -171,8 +172,7 @@ def validate_endpoints(cls, values): return values - class Config: - extra = "forbid" + model_config = ConfigDict(extra="forbid") class PDFExtractorSchema(BaseModel): diff --git a/src/nv_ingest/util/pdf/metadata_aggregators.py b/src/nv_ingest/util/pdf/metadata_aggregators.py index fecce299..2c5058d6 100644 --- a/src/nv_ingest/util/pdf/metadata_aggregators.py +++ b/src/nv_ingest/util/pdf/metadata_aggregators.py @@ -22,6 +22,7 @@ from nv_ingest.schemas.metadata_schema import ContentSubtypeEnum from nv_ingest.schemas.metadata_schema import ContentTypeEnum from nv_ingest.schemas.metadata_schema import ImageTypeEnum +from nv_ingest.schemas.metadata_schema import NearbyObjectsSchema from nv_ingest.schemas.metadata_schema import StdContentDescEnum from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.schemas.metadata_schema import validate_metadata @@ -163,7 +164,7 @@ def construct_text_metadata( "block": -1, "line": -1, "span": -1, - "nearby_objects": nearby_objects or [], + "nearby_objects": nearby_objects or NearbyObjectsSchema(), }, } From 1c119ff636390933e98399c9d7d8757ef4e82013 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Fri, 24 Jan 2025 20:18:25 +0000 Subject: [PATCH 21/37] Replace nvcf with NIM --- docker-compose.yaml | 24 ++++++++- .../pdf/doughnut_helper.py | 25 ++++----- src/nv_ingest/util/nim/doughnut.py | 22 ++++++-- src/nv_ingest/util/nim/helpers.py | 52 ------------------- src/nv_ingest/util/pipeline/stage_builders.py | 9 +--- 5 files changed, 56 insertions(+), 76 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 663ebbe2..80bd8cdd 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -125,6 +125,27 @@ services: capabilities: [gpu] runtime: nvidia + eclair: + image: ${ECLAIR_IMAGE:-nvcr.io/nvidia/nemo-microservices/eclair}:${ECLAIR_TAG:-1.0.0} + ports: + - "8015:8000" + - "8016:8001" + - "8017:8002" + user: root + environment: + - NIM_HTTP_API_PORT=8000 + - NIM_TRITON_LOG_VERBOSE=1 + - NGC_API_KEY=${NIM_NGC_API_KEY:-${NGC_API_KEY:-ngcapikey}} + - CUDA_VISIBLE_DEVICES=0 + deploy: + resources: + reservations: + devices: + - driver: nvidia + device_ids: ["0"] + capabilities: [gpu] + runtime: nvidia + nv-ingest-ms-runtime: image: nvcr.io/ohlfw0olaadg/ea-participants/nv-ingest:24.10.1 build: @@ -157,9 +178,8 @@ services: - DEPLOT_INFER_PROTOCOL=http - DOUGHNUT_GRPC_ENDPOINT= # NVCF hosted doughnut endpoints. - - DOUGHNUT_HTTP_ENDPOINT=https://placeholder + - DOUGHNUT_HTTP_ENDPOINT=http://eclair:8000/v1/chat/completions - DOUGHNUT_INFER_PROTOCOL=http - - DOUGHNUT_NVCF_API_KEY=${DOUGHNUT_NVCF_API_KEY:-ngcapikey} - EMBEDDING_NIM_MODEL_NAME=${EMBEDDING_NIM_MODEL_NAME:-nvidia/nv-embedqa-e5-v5} - INGEST_LOG_LEVEL=DEFAULT # Message client for development diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index 633e02c5..d63f3fc0 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -18,6 +18,7 @@ # limitations under the License. import logging +import math import uuid from typing import Dict from typing import List @@ -151,32 +152,32 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table model_interface, doughnut_config.auth_token, doughnut_config.doughnut_infer_protocol, - timeout=300, # TODO: We shouldn't need this with an optimized endpoint. ) for batch, batch_page_offset in zip(batches, batch_page_offsets): responses = preprocess_and_send_requests(doughnut_client, batch, batch_page_offset) - for page_idx, raw_text, bbox_offset in responses: + for page_idx, bboxes, bbox_offset in responses: page_image = None page_width, page_height = page_sizes[page_idx] - classes, bboxes, texts = doughnut_utils.extract_classes_bboxes(raw_text) - page_nearby_blocks = { "text": {"content": [], "bbox": [], "type": []}, "images": {"content": [], "bbox": [], "type": []}, "structured": {"content": [], "bbox": [], "type": []}, } - for cls, bbox, txt in zip(classes, bboxes, texts): + for bbox_info in bboxes: + cls = bbox_info["type"] + bbox = bbox_info["bbox"] + txt = bbox_info["text"] - transformed_bbox = doughnut_utils.reverse_transform_bbox( - bbox=bbox, - bbox_offset=bbox_offset, - original_width=DEFAULT_MAX_WIDTH, - original_height=DEFAULT_MAX_HEIGHT, - ) + transformed_bbox = [ + math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), + math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), + math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), + math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), + ] if cls in doughnut_utils.ACCEPTED_TEXT_CLASSES: if identify_nearby_objects: @@ -220,7 +221,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table ) page_image = page_image[0] - img_numpy = crop_image(page_image, bbox) + img_numpy = crop_image(page_image, transformed_bbox) if img_numpy is not None: base64_img = numpy_to_base64(img_numpy) diff --git a/src/nv_ingest/util/nim/doughnut.py b/src/nv_ingest/util/nim/doughnut.py index 59e645ac..4cd5a4ac 100644 --- a/src/nv_ingest/util/nim/doughnut.py +++ b/src/nv_ingest/util/nim/doughnut.py @@ -2,6 +2,7 @@ # All rights reserved. # SPDX-License-Identifier: Apache-2.0 +import json import logging import re from typing import Any @@ -170,13 +171,27 @@ def _prepare_doughnut_payload(self, base64_img: str) -> Dict[str, Any]: messages = [ { "role": "user", - "content": "" - f'', + "content": [ + { + "type": "image_url", + "image_url": { + "url": f"data:image/png;base64,{base64_img}", + }, + } + ], } ] payload = { "model": "nvidia/eclair", "messages": messages, + "tools": [ + { + "type": "function", + "function": { + "name": "markdown_bbox", + }, + } + ], } return payload @@ -204,7 +219,8 @@ def _extract_content_from_doughnut_response(self, json_response: Dict[str, Any]) if "choices" not in json_response or not json_response["choices"]: raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") - return json_response["choices"][0]["message"]["content"] + tool_call = json_response["choices"][0]["message"]["tool_calls"][0] + return json.loads(tool_call["function"]["arguments"])[0] def extract_classes_bboxes(text: str) -> Tuple[List[str], List[Tuple[int, int, int, int]], List[str]]: diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index e5916ec3..e840dae3 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -285,12 +285,6 @@ def _http_infer(self, formatted_input: dict) -> dict: time.sleep(backoff_time) attempt += 1 continue - elif (response.status_code == 202) and ("nvcf-reqid" in response.headers): - req_id = response.headers.get("nvcf-reqid") - response = repoll_http_client( - self.endpoint_url, req_id, payload=formatted_input, headers=self.headers - ) - return response else: # Not a 429/503 - just raise_for_status or return the response response.raise_for_status() @@ -600,49 +594,3 @@ def get_version(http_endpoint: str, metadata_endpoint: str = "/v1/metadata", ver # Don't let anything squeeze by logger.warning(f"Exception: {ex}") return "" - - -def repoll_http_client(url, req_id, payload=None, headers=None, max_retries=100, poll_interval=3): - # Construct the base URL dynamically from the original URL - if "/v2/nvcf/pexec/functions" in url: - base_url = url.split("/pexec/functions")[0] - else: - raise ValueError("The endpoint URL does not contain the expected path structure.") - - poll_url = f"{base_url}/exec/status/{req_id}" - - poll_headers = { - "Accept": "application/json", - "Content-Type": "application/json", - } - if "Authorization" in headers: - poll_headers.update({"Authorization": headers.get("Authorization")}) - - retry_count = 0 - - while retry_count < max_retries: - response = requests.get(poll_url, headers=poll_headers) - - # Handle 404 by obtaining a new req_id if the request was pending too long - if (response.status_code == 404) and (payload is not None): - logger.debug("Received 404 (request might have been pending too long). Retrying.") - response = requests.post(url, json=payload, headers=headers) - response.raise_for_status() - - if (response.status_code) == 202 and ("nvcf-reqid" in response.headers): - req_id = response.headers.get("nvcf-reqid") - retry_count += 1 - continue - else: - # If we get a final response, return it - return response.json() - - response.raise_for_status() - - if response.status_code != 202: - return response.json().get("response") - - time.sleep(poll_interval) - retry_count += 1 - - raise RuntimeError("Maximum number of retries reached without a final response.") diff --git a/src/nv_ingest/util/pipeline/stage_builders.py b/src/nv_ingest/util/pipeline/stage_builders.py index 08251451..725d8b56 100644 --- a/src/nv_ingest/util/pipeline/stage_builders.py +++ b/src/nv_ingest/util/pipeline/stage_builders.py @@ -86,11 +86,6 @@ def get_nim_service(env_var_prefix): "", ) - # TODO: This is a temporary workaround for the private endpoint on NVCF. - # It should be removed after the endpoint is moved to Preview API on Build. - if prefix == "DOUGHNUT": - auth_token = os.environ.get("DOUGHNUT_NVCF_API_KEY", "") - infer_protocol = os.environ.get( f"{prefix}_INFER_PROTOCOL", "http" if http_endpoint else "grpc" if grpc_endpoint else "", @@ -291,7 +286,7 @@ def add_image_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, def def add_docx_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_table_detection_service("yolox") + yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") docx_extractor_config = ingest_config.get( "docx_extraction_module", { @@ -315,7 +310,7 @@ def add_docx_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, defa def add_pptx_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): - yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_table_detection_service("yolox") + yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") pptx_extractor_config = ingest_config.get( "pptx_extraction_module", { From 6b7a29ec2575436e4ad2fa5d53167f3abdb2c763 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Fri, 24 Jan 2025 20:30:31 +0000 Subject: [PATCH 22/37] remove postprocessing --- .../image/image_handlers.py | 4 +- .../pdf/doughnut_helper.py | 1 - .../pdf/doughnut_utils.py | 161 ------------------ src/nv_ingest/util/nim/doughnut.py | 127 -------------- 4 files changed, 2 insertions(+), 291 deletions(-) delete mode 100644 src/nv_ingest/extraction_workflows/pdf/doughnut_utils.py diff --git a/src/nv_ingest/extraction_workflows/image/image_handlers.py b/src/nv_ingest/extraction_workflows/image/image_handlers.py index f7b12982..c053cb87 100644 --- a/src/nv_ingest/extraction_workflows/image/image_handlers.py +++ b/src/nv_ingest/extraction_workflows/image/image_handlers.py @@ -31,9 +31,9 @@ from wand.image import Image as WandImage import nv_ingest.util.nim.yolox as yolox_utils -from nv_ingest.extraction_workflows.pdf.doughnut_utils import crop_image from nv_ingest.schemas.image_extractor_schema import ImageConfigSchema from nv_ingest.schemas.metadata_schema import AccessLevelEnum +from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.pdf.metadata_aggregators import CroppedImageWithContent @@ -161,7 +161,7 @@ def extract_table_and_chart_images( *bbox, _ = bboxes h1, w1, h2, w2 = np.array(bbox) * np.array([height, width, height, width]) - base64_img = crop_image(original_image, (int(h1), int(w1), int(h2), int(w2))) + base64_img = numpy_to_base64(crop_image(original_image, (int(h1), int(w1), int(h2), int(w2)))) table_data = CroppedImageWithContent( content="", diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py index d63f3fc0..9dc4848d 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py @@ -186,7 +186,6 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table page_nearby_blocks["text"]["type"].append(cls) if extract_text: - txt = doughnut_utils.postprocess_text(txt, cls) accumulated_text.append(txt) if cls == "Table": diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_utils.py b/src/nv_ingest/extraction_workflows/pdf/doughnut_utils.py deleted file mode 100644 index d1f7ac21..00000000 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_utils.py +++ /dev/null @@ -1,161 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. -# All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -import re -from math import ceil -from math import floor -from typing import List -from typing import Optional -from typing import Tuple - -import numpy as np - -from nv_ingest.util.image_processing.transforms import numpy_to_base64 - -DEFAULT_DPI = 300 -DEFAULT_MAX_WIDTH = 1024 -DEFAULT_MAX_HEIGHT = 1280 - -ACCEPTED_CLASSES = set( - [ - "Text", - "Title", - "Section-header", - "List-item", - "TOC", - "Bibliography", - "Formula", - ] -) -IGNORED_CLASSES = set( - [ - "Page-header", - "Page-footer", - "Caption", - "Footnote", - "Floating-text", - ] -) - -_re_extract_class_bbox = re.compile( - r"(.*?)]+)>", re.MULTILINE | re.DOTALL -) - - -def extract_classes_bboxes(text: str) -> Tuple[List[str], List[Tuple[int, int, int, int]], List[str]]: - classes: List[str] = [] - bboxes: List[Tuple[int, int, int, int]] = [] - texts: List[str] = [] - for m in _re_extract_class_bbox.finditer(text): - x1, y1, text, x2, y2, cls = m.groups() - classes.append(cls) - bboxes.append((int(x1), int(y1), int(x2), int(y2))) - texts.append(text) - - return classes, bboxes, texts - - -def convert_mmd_to_plain_text_ours(mmd_text, remove_inline_math: bool = False): - # Remove markdown links (e.g., [link](url)) - mmd_text = re.sub(r"\(\[https?://[^\s\]]+\]\((https?://[^\s\]]+)\)\)", r"(\1)", mmd_text) - - # Remove headers (e.g., ##) - mmd_text = re.sub(r"#+\s", "", mmd_text) - - # Remove bold (e.g., **) - mmd_text = mmd_text.replace("**", "") - # Remove italic (e.g., *) - mmd_text = re.sub(r"\*(.*?)\*", r"\1", mmd_text) - # Remove emphasized text formatting (e.g., _) - mmd_text = re.sub(r"(?", "", mmd_text) - - if remove_inline_math: - # Remove formulas inside paragraphs (e.g., \(R_{ij}(P^{a})=0\)) - mmd_text = re.sub(r"\\\((.*?)\\\)", "", mmd_text) - else: - # Treat simple formulas inside paragraphs as plain text - mmd_text = re.sub(r"\\\((.*?)\\\)", r"\1", mmd_text) - - # Remove asterisk in lists - mmd_text = re.sub(r"^\*\s", "", mmd_text, flags=re.MULTILINE) - # Remove tables - mmd_text = re.sub(r"\\begin{table}(.*?)\\end{table}", "", mmd_text, flags=re.DOTALL) - mmd_text = re.sub(r"\\begin{tabular}(.*?)\\end{tabular}", "", mmd_text, flags=re.DOTALL) - # Remove code blocks (e.g., ```python ... ```) - mmd_text = re.sub(r"```.*?```", "", mmd_text, flags=re.DOTALL) - # Remove equations (e.g., \[ ... \]) - mmd_text = re.sub(r"\\\[(.*?)\\\]", "", mmd_text, flags=re.DOTALL) - # Remove inline equations (e.g., $ ... $) - mmd_text = re.sub(r"\$(.*?)\$", "", mmd_text) - # Remove tables - mmd_text = re.sub(r"\|.*?\|", "", mmd_text, flags=re.DOTALL) - - # Additional cleanup for special characters - mmd_text = re.sub(r"\\", "", mmd_text) - - return mmd_text.strip() - - -def crop_image(array: np.array, bbox: Tuple[int, int, int, int], format="PNG") -> Optional[str]: - w1, h1, w2, h2 = bbox - h1 = max(floor(h1), 0) - h2 = min(ceil(h2), array.shape[0]) - w1 = max(floor(w1), 0) - w2 = min(ceil(w2), array.shape[1]) - if (w2 - w1 <= 0) or (h2 - h1 <= 0): - return None - cropped = array[h1:h2, w1:w2] - base64_img = numpy_to_base64(cropped) - - return base64_img - - -def pad_image( - array: np.array, target_width=DEFAULT_MAX_WIDTH, target_height=DEFAULT_MAX_HEIGHT -) -> Tuple[np.array, Tuple[int, int]]: - height, width = array.shape[:2] - if (height > target_height) or (width > target_width): - raise ValueError( - f"Image array is too large. Dimensions must be width <= {target_width} and height <= {target_height}." - ) - - if height == target_height and width == target_width: - return array, (0, 0) - - pad_height = (target_height - height) // 2 - pad_width = (target_width - width) // 2 - canvas = 255 * np.ones((target_height, target_width, 3), dtype=np.uint8) - canvas[pad_height : pad_height + height, pad_width : pad_width + width] = array # noqa: E203 - - return canvas, (pad_width, pad_height) - - -def reverse_transform_bbox( - bbox: Tuple[int, int, int, int], - bbox_offset: Tuple[int, int], - original_width: int = DEFAULT_MAX_WIDTH, - original_height: int = DEFAULT_MAX_HEIGHT, -) -> Tuple[int, int, int, int]: - width_ratio = (original_width - 2 * bbox_offset[0]) / original_width - height_ratio = (original_height - 2 * bbox_offset[1]) / original_height - w1, h1, w2, h2 = bbox - w1 = int((w1 - bbox_offset[0]) / width_ratio) - h1 = int((h1 - bbox_offset[1]) / height_ratio) - w2 = int((w2 - bbox_offset[0]) / width_ratio) - h2 = int((h2 - bbox_offset[1]) / height_ratio) - - return (w1, h1, w2, h2) - - -def postprocess_text(txt: str, cls: str): - if cls in ACCEPTED_CLASSES: - txt = txt.replace("", "").strip() # remove tokens (continued paragraphs) - txt = convert_mmd_to_plain_text_ours(txt) - else: - txt = "" - - return txt diff --git a/src/nv_ingest/util/nim/doughnut.py b/src/nv_ingest/util/nim/doughnut.py index 4cd5a4ac..89f51847 100644 --- a/src/nv_ingest/util/nim/doughnut.py +++ b/src/nv_ingest/util/nim/doughnut.py @@ -42,11 +42,6 @@ ) ACCEPTED_CLASSES = ACCEPTED_TEXT_CLASSES | ACCEPTED_TABLE_CLASSES | ACCEPTED_IMAGE_CLASSES -_re_extract_class_bbox = re.compile( - r"((?:|.(?:(?", # noqa: E501 - re.MULTILINE | re.DOTALL, -) - logger = logging.getLogger(__name__) @@ -221,125 +216,3 @@ def _extract_content_from_doughnut_response(self, json_response: Dict[str, Any]) tool_call = json_response["choices"][0]["message"]["tool_calls"][0] return json.loads(tool_call["function"]["arguments"])[0] - - -def extract_classes_bboxes(text: str) -> Tuple[List[str], List[Tuple[int, int, int, int]], List[str]]: - classes: List[str] = [] - bboxes: List[Tuple[int, int, int, int]] = [] - texts: List[str] = [] - - last_end = 0 - - for m in _re_extract_class_bbox.finditer(text): - start, end = m.span() - - # [Bad box] Add the non-match chunk (text between the last match and the current match) - if start > last_end: - bad_text = text[last_end:start].strip() - classes.append("Bad-box") - bboxes.append((0, 0, 0, 0)) - texts.append(bad_text) - - last_end = end - - x1, y1, text, x2, y2, cls = m.groups() - - bbox = tuple(map(int, (x1, y1, x2, y2))) - - # [Bad box] check if the class is a valid class. - if cls not in ACCEPTED_CLASSES: - logger.debug(f"Dropped a bad box: invalid class {cls} at {bbox}.") - classes.append("Bad-box") - bboxes.append(bbox) - texts.append(text) - continue - - # Drop bad box: drop if the box is invalid. - if (bbox[0] >= bbox[2]) or (bbox[1] >= bbox[3]): - logger.debug(f"Dropped a bad box: invalid box {cls} at {bbox}.") - classes.append("Bad-box") - bboxes.append(bbox) - texts.append(text) - continue - - classes.append(cls) - bboxes.append(bbox) - texts.append(text) - - if last_end < len(text): - bad_text = text[last_end:].strip() - if len(bad_text) > 0: - classes.append("Bad-box") - bboxes.append((0, 0, 0, 0)) - texts.append(bad_text) - - return classes, bboxes, texts - - -def _fix_dots(m): - # Remove spaces between dots. - s = m.group(0) - return s.startswith(" ") * " " + min(5, s.count(".")) * "." + s.endswith(" ") * " " - - -def strip_markdown_formatting(text): - # Remove headers (e.g., # Header, ## Header, ### Header) - text = re.sub(r"^(#+)\s*(.*)", r"\2", text, flags=re.MULTILINE) - - # Remove bold formatting (e.g., **bold text** or __bold text__) - text = re.sub(r"\*\*(.*?)\*\*", r"\1", text) - text = re.sub(r"__(.*?)__", r"\1", text) - - # Remove italic formatting (e.g., *italic text* or _italic text_) - text = re.sub(r"\*(.*?)\*", r"\1", text) - text = re.sub(r"_(.*?)_", r"\1", text) - - # Remove strikethrough formatting (e.g., ~~strikethrough~~) - text = re.sub(r"~~(.*?)~~", r"\1", text) - - # Remove list items (e.g., - item, * item, 1. item) - text = re.sub(r"^\s*([-*+]|[0-9]+\.)\s+", "", text, flags=re.MULTILINE) - - # Remove hyperlinks (e.g., [link text](http://example.com)) - text = re.sub(r"\[(.*?)\]\(.*?\)", r"\1", text) - - # Remove inline code (e.g., `code`) - text = re.sub(r"`(.*?)`", r"\1", text) - - # Remove blockquotes (e.g., > quote) - text = re.sub(r"^\s*>\s*(.*)", r"\1", text, flags=re.MULTILINE) - - # Remove multiple newlines - text = re.sub(r"\n{3,}", "\n\n", text) - - # Limit dots sequences to max 5 dots - text = re.sub(r"(?:\s*\.\s*){3,}", _fix_dots, text, flags=re.DOTALL) - - return text - - -def reverse_transform_bbox( - bbox: Tuple[int, int, int, int], - bbox_offset: Tuple[int, int], - original_width: int, - original_height: int, -) -> Tuple[int, int, int, int]: - width_ratio = (original_width - 2 * bbox_offset[0]) / original_width - height_ratio = (original_height - 2 * bbox_offset[1]) / original_height - w1, h1, w2, h2 = bbox - w1 = int((w1 - bbox_offset[0]) / width_ratio) - h1 = int((h1 - bbox_offset[1]) / height_ratio) - w2 = int((w2 - bbox_offset[0]) / width_ratio) - h2 = int((h2 - bbox_offset[1]) / height_ratio) - - return (w1, h1, w2, h2) - - -def postprocess_text(txt: str, cls: str): - if cls in ACCEPTED_CLASSES: - txt = txt.replace("", "").strip() # remove tokens (continued paragraphs) - txt = strip_markdown_formatting(txt) - else: - txt = "" - - return txt From 237dfa452888df2a69f9a3e7cfad0ead0cd87778 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Fri, 24 Jan 2025 20:51:30 +0000 Subject: [PATCH 23/37] drop codename --- client/src/nv_ingest_client/nv_ingest_cli.py | 2 +- .../primitives/tasks/extract.py | 13 +----- docker-compose.yaml | 9 ++-- ...t_batch_dize.png => eclair_batch_size.png} | Bin .../user-guide/developer-guide/deployment.md | 4 -- .../developer-guide/environment-config.md | 10 ----- .../developer-guide/nv-ingest_cli.md | 4 +- .../extraction_workflows/pdf/__init__.py | 4 +- .../{doughnut_helper.py => eclair_helper.py} | 40 +++++++++--------- src/nv_ingest/schemas/pdf_extractor_schema.py | 22 +++++----- src/nv_ingest/stages/pdf_extractor_stage.py | 4 +- .../util/nim/{doughnut.py => eclair.py} | 24 +++++------ .../util/pipeline/pipeline_runners.py | 2 +- src/nv_ingest/util/pipeline/stage_builders.py | 10 ++--- ...ughnut_helper.py => test_eclair_helper.py} | 34 +++++++-------- .../nim/{test_doughnut.py => test_eclair.py} | 8 ++-- 16 files changed, 82 insertions(+), 108 deletions(-) rename docs/docs/assets/images/{doughnut_batch_dize.png => eclair_batch_size.png} (100%) rename src/nv_ingest/extraction_workflows/pdf/{doughnut_helper.py => eclair_helper.py} (91%) rename src/nv_ingest/util/nim/{doughnut.py => eclair.py} (88%) rename tests/nv_ingest/extraction_workflows/pdf/{test_doughnut_helper.py => test_eclair_helper.py} (81%) rename tests/nv_ingest/util/nim/{test_doughnut.py => test_eclair.py} (94%) diff --git a/client/src/nv_ingest_client/nv_ingest_cli.py b/client/src/nv_ingest_client/nv_ingest_cli.py index f3cb0b9a..399b4705 100644 --- a/client/src/nv_ingest_client/nv_ingest_cli.py +++ b/client/src/nv_ingest_client/nv_ingest_cli.py @@ -116,7 +116,7 @@ Example: --task 'split:{"split_by":"page", "split_length":10}' --task 'extract:{"document_type":"pdf", "extract_text":true}' - --task 'extract:{"document_type":"pdf", "extract_method":"doughnut"}' + --task 'extract:{"document_type":"pdf", "extract_method":"eclair"}' --task 'extract:{"document_type":"pdf", "extract_method":"unstructured_io"}' --task 'extract:{"document_type":"docx", "extract_text":true, "extract_images":true}' --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000"}' diff --git a/client/src/nv_ingest_client/primitives/tasks/extract.py b/client/src/nv_ingest_client/primitives/tasks/extract.py index 6d3722f5..b38a351d 100644 --- a/client/src/nv_ingest_client/primitives/tasks/extract.py +++ b/client/src/nv_ingest_client/primitives/tasks/extract.py @@ -19,10 +19,6 @@ logger = logging.getLogger(__name__) -DOUGHNUT_TRITON_HOST = os.environ.get("DOUGHNUT_TRITON_HOST", "localhost") -DOUGHNUT_TRITON_PORT = os.environ.get("DOUGHNUT_TRITON_PORT", "8001") -DOUGHNUT_BATCH_SIZE = os.environ.get("DOUGHNUT_TRITON_PORT", "16") - UNSTRUCTURED_API_KEY = os.environ.get("UNSTRUCTURED_API_KEY", None) UNSTRUCTURED_URL = os.environ.get("UNSTRUCTURED_URL", "https://api.unstructured.io/general/v0/general") UNSTRUCTURED_STRATEGY = os.environ.get("UNSTRUCTURED_STRATEGY", "auto") @@ -49,7 +45,7 @@ _Type_Extract_Method_PDF = Literal[ "adobe", - "doughnut", + "eclair", "haystack", "llama_parse", "pdfium", @@ -238,13 +234,6 @@ def to_dict(self) -> Dict: "unstructured_url": "", # TODO(Devin): Should be an environment variable } task_properties["params"].update(unstructured_properties) - elif self._extract_method == "doughnut": - doughnut_properties = { - "doughnut_triton_host": os.environ.get("DOUGHNUT_TRITON_HOST", DOUGHNUT_TRITON_HOST), - "doughnut_triton_port": os.environ.get("DOUGHNUT_TRITON_PORT", DOUGHNUT_TRITON_PORT), - "doughnut_batch_size": os.environ.get("DOUGHNUT_BATCH_SIZE", DOUGHNUT_BATCH_SIZE), - } - task_properties["params"].update(doughnut_properties) elif self._extract_method == "unstructured_io": unstructured_properties = { "unstructured_api_key": os.environ.get("UNSTRUCTURED_API_KEY", UNSTRUCTURED_API_KEY), diff --git a/docker-compose.yaml b/docker-compose.yaml index 80bd8cdd..afeb6767 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -135,7 +135,7 @@ services: environment: - NIM_HTTP_API_PORT=8000 - NIM_TRITON_LOG_VERBOSE=1 - - NGC_API_KEY=${NIM_NGC_API_KEY:-${NGC_API_KEY:-ngcapikey}} + - NGC_API_KEY=${STAGING_NIM_NGC_API_KEY} - CUDA_VISIBLE_DEVICES=0 deploy: resources: @@ -176,10 +176,9 @@ services: # build.nvidia.com hosted deplot #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - DEPLOT_INFER_PROTOCOL=http - - DOUGHNUT_GRPC_ENDPOINT= - # NVCF hosted doughnut endpoints. - - DOUGHNUT_HTTP_ENDPOINT=http://eclair:8000/v1/chat/completions - - DOUGHNUT_INFER_PROTOCOL=http + - ECLAIR_GRPC_ENDPOINT= + - ECLAIR_HTTP_ENDPOINT=http://eclair:8000/v1/chat/completions + - ECLAIR_INFER_PROTOCOL=http - EMBEDDING_NIM_MODEL_NAME=${EMBEDDING_NIM_MODEL_NAME:-nvidia/nv-embedqa-e5-v5} - INGEST_LOG_LEVEL=DEFAULT # Message client for development diff --git a/docs/docs/assets/images/doughnut_batch_dize.png b/docs/docs/assets/images/eclair_batch_size.png similarity index 100% rename from docs/docs/assets/images/doughnut_batch_dize.png rename to docs/docs/assets/images/eclair_batch_size.png diff --git a/docs/docs/user-guide/developer-guide/deployment.md b/docs/docs/user-guide/developer-guide/deployment.md index 1bbd5148..8d81eec2 100644 --- a/docs/docs/user-guide/developer-guide/deployment.md +++ b/docs/docs/user-guide/developer-guide/deployment.md @@ -25,10 +25,6 @@ docker compose up -d otel-collector prometheus grafana zipkin # The `embed` task will not be functional without this service. docker compose up -d embedding -# Optional (Triton) See below for Triton setup we need Triton for any model inference -# This is only needed for captioning or DOUGHNUT based extraction. -docker compose up -d triton - # Ingest service docker compose up -d nv-ingest-ms-runtime ``` diff --git a/docs/docs/user-guide/developer-guide/environment-config.md b/docs/docs/user-guide/developer-guide/environment-config.md index bed1e877..94845766 100644 --- a/docs/docs/user-guide/developer-guide/environment-config.md +++ b/docs/docs/user-guide/developer-guide/environment-config.md @@ -29,16 +29,6 @@ - **Description**: The name of the task queue in Redis where tasks are stored and processed. - **Example**: `morpheus_task_queue` -- **`DOUGHNUT_TRITON_HOST`**: - - - **Description**: The hostname or IP address of the DOUGHNUT model service. - - **Example**: `triton-doughnut` - -- **`DOUGHNUT_TRITON_PORT`**: - - - **Description**: The port number on which the DOUGHNUT model service is listening. - - **Example**: `8001` - - **`OTEL_EXPORTER_OTLP_ENDPOINT`**: - **Description**: The endpoint for the OpenTelemetry exporter, used for sending telemetry data. diff --git a/docs/docs/user-guide/developer-guide/nv-ingest_cli.md b/docs/docs/user-guide/developer-guide/nv-ingest_cli.md index d4fe2c5c..7ae59746 100644 --- a/docs/docs/user-guide/developer-guide/nv-ingest_cli.md +++ b/docs/docs/user-guide/developer-guide/nv-ingest_cli.md @@ -32,7 +32,7 @@ Options: Example: --task 'split:{"split_by":"page", "split_length":10}' --task 'extract:{"document_type":"pdf", "extract_text":true}' - --task 'extract:{"document_type":"pdf", "extract_method":"doughnut"}' + --task 'extract:{"document_type":"pdf", "extract_method":"eclair"}' --task 'extract:{"document_type":"pdf", "extract_method":"unstructured_io"}' --task 'extract:{"document_type":"docx", "extract_text":true, "extract_images":true}' --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000"}' @@ -120,7 +120,7 @@ nv-ingest-cli \ Submit a PDF file with splitting and extraction tasks. -**Note: (TODO)** This currently only works for pdfium, doughnut, and Unstructured.io; haystack, Adobe, and LlamaParse +**Note: (TODO)** This currently only works for pdfium, eclair, and Unstructured.io; haystack, Adobe, and LlamaParse have existing workflows but have not been fully converted to use our unified metadata schema. ```bash diff --git a/src/nv_ingest/extraction_workflows/pdf/__init__.py b/src/nv_ingest/extraction_workflows/pdf/__init__.py index ff752ef5..9fc687e1 100644 --- a/src/nv_ingest/extraction_workflows/pdf/__init__.py +++ b/src/nv_ingest/extraction_workflows/pdf/__init__.py @@ -4,7 +4,7 @@ from nv_ingest.extraction_workflows.pdf.adobe_helper import adobe -from nv_ingest.extraction_workflows.pdf.doughnut_helper import doughnut +from nv_ingest.extraction_workflows.pdf.eclair_helper import eclair from nv_ingest.extraction_workflows.pdf.llama_parse_helper import llama_parse from nv_ingest.extraction_workflows.pdf.pdfium_helper import pdfium_extractor as pdfium from nv_ingest.extraction_workflows.pdf.tika_helper import tika @@ -15,6 +15,6 @@ "pdfium", "tika", "unstructured_io", - "doughnut", + "eclair", "adobe", ] diff --git a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py similarity index 91% rename from src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py rename to src/nv_ingest/extraction_workflows/pdf/eclair_helper.py index 9dc4848d..1a74f807 100644 --- a/src/nv_ingest/extraction_workflows/pdf/doughnut_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py @@ -38,7 +38,7 @@ from nv_ingest.util.exception_handlers.pdf import pdfium_exception_handler from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 -from nv_ingest.util.nim import doughnut as doughnut_utils +from nv_ingest.util.nim import eclair as eclair_utils from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable @@ -54,10 +54,10 @@ DEFAULT_MAX_HEIGHT = 1280 -# Define a helper function to use doughnut to extract text from a base64 encoded bytestram PDF -def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: bool, **kwargs): +# Define a helper function to use eclair to extract text from a base64 encoded bytestram PDF +def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: bool, **kwargs): """ - Helper function to use doughnut to extract text from a bytestream PDF. + Helper function to use eclair to extract text from a bytestream PDF. Parameters ---------- @@ -77,12 +77,12 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table str A string of extracted text. """ - logger.debug("Extracting PDF with doughnut backend.") + logger.debug("Extracting PDF with eclair backend.") - doughnut_config = kwargs.get("doughnut_config", {}) - doughnut_config = doughnut_config if doughnut_config is not None else {} + eclair_config = kwargs.get("eclair_config", {}) + eclair_config = eclair_config if eclair_config is not None else {} - batch_size = doughnut_config.doughnut_batch_size + batch_size = eclair_config.eclair_batch_size row_data = kwargs.get("row_data") # get source_id @@ -146,16 +146,16 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table accumulated_tables = [] accumulated_images = [] - model_interface = doughnut_utils.DoughnutModelInterface() - doughnut_client = create_inference_client( - doughnut_config.doughnut_endpoints, + model_interface = eclair_utils.EclairModelInterface() + eclair_client = create_inference_client( + eclair_config.eclair_endpoints, model_interface, - doughnut_config.auth_token, - doughnut_config.doughnut_infer_protocol, + eclair_config.auth_token, + eclair_config.eclair_infer_protocol, ) for batch, batch_page_offset in zip(batches, batch_page_offsets): - responses = preprocess_and_send_requests(doughnut_client, batch, batch_page_offset) + responses = preprocess_and_send_requests(eclair_client, batch, batch_page_offset) for page_idx, bboxes, bbox_offset in responses: page_image = None @@ -179,7 +179,7 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), ] - if cls in doughnut_utils.ACCEPTED_TEXT_CLASSES: + if cls in eclair_utils.ACCEPTED_TEXT_CLASSES: if identify_nearby_objects: page_nearby_blocks["text"]["content"].append(txt) page_nearby_blocks["text"]["bbox"].append(transformed_bbox) @@ -302,14 +302,14 @@ def doughnut(pdf_stream, extract_text: bool, extract_images: bool, extract_table if len(text_extraction) > 0: extracted_data.append(text_extraction) - if isinstance(doughnut_client, grpcclient.InferenceServerClient): - doughnut_client.close() + if isinstance(eclair_client, grpcclient.InferenceServerClient): + eclair_client.close() return extracted_data def preprocess_and_send_requests( - doughnut_client, + eclair_client, batch: List[pdfium.PdfPage], batch_offset: int, ) -> List[Tuple[int, str]]: @@ -331,7 +331,7 @@ def preprocess_and_send_requests( for page_image in page_images: # Currently, the model only supports processing one page at a time (batch size = 1). data = {"image": page_image} - response = doughnut_client.infer(data, model_name="doughnut") + response = eclair_client.infer(data, model_name="eclair") output.append(response) if len(output) != len(batch): @@ -343,7 +343,7 @@ def preprocess_and_send_requests( return list(zip(page_numbers, output, bbox_offsets)) -@pdfium_exception_handler(descriptor="doughnut") +@pdfium_exception_handler(descriptor="eclair") def _construct_table_metadata( table: LatexTable, page_idx: int, diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index 363b539b..41cae973 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -91,17 +91,17 @@ def validate_endpoints(cls, values): model_config = ConfigDict(extra="forbid") -class DoughnutConfigSchema(BaseModel): +class EclairConfigSchema(BaseModel): """ - Configuration schema for Doughnut endpoints and options. + Configuration schema for Eclair endpoints and options. Parameters ---------- auth_token : Optional[str], default=None Authentication token required for secure services. - doughnut_endpoints : Tuple[str, str] - A tuple containing the gRPC and HTTP services for the doughnut endpoint. + eclair_endpoints : Tuple[str, str] + A tuple containing the gRPC and HTTP services for the eclair endpoint. Either the gRPC or HTTP service can be empty, but not both. Methods @@ -122,9 +122,9 @@ class DoughnutConfigSchema(BaseModel): auth_token: Optional[str] = None - doughnut_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) - doughnut_infer_protocol: str = "" - doughnut_batch_size: int = 32 + eclair_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) + eclair_infer_protocol: str = "" + eclair_batch_size: int = 32 @model_validator(mode="before") @classmethod @@ -148,7 +148,7 @@ def validate_endpoints(cls, values): If both gRPC and HTTP services are empty for any endpoint. """ - for model_name in ["doughnut"]: + for model_name in ["eclair"]: endpoint_name = f"{model_name}_endpoints" grpc_service, http_service = values.get(endpoint_name) grpc_service = _clean_service(grpc_service) @@ -167,8 +167,8 @@ def validate_endpoints(cls, values): values[protocol_name] = protocol_value # Currently both build.nvidia.com and NIM do not support batch size > 1. - if values.get("doughnut_infer_protocol") == "http": - values["doughnut_batch_size"] = 1 + if values.get("eclair_infer_protocol") == "http": + values["eclair_batch_size"] = 1 return values @@ -199,7 +199,7 @@ class PDFExtractorSchema(BaseModel): raise_on_failure: bool = False pdfium_config: Optional[PDFiumConfigSchema] = None - doughnut_config: Optional[DoughnutConfigSchema] = None + eclair_config: Optional[EclairConfigSchema] = None model_config = ConfigDict(extra="forbid") diff --git a/src/nv_ingest/stages/pdf_extractor_stage.py b/src/nv_ingest/stages/pdf_extractor_stage.py index 44809fd5..1b3b48d8 100644 --- a/src/nv_ingest/stages/pdf_extractor_stage.py +++ b/src/nv_ingest/stages/pdf_extractor_stage.py @@ -87,8 +87,8 @@ def decode_and_extract( if validated_config.pdfium_config is not None: extract_params["pdfium_config"] = validated_config.pdfium_config - if validated_config.doughnut_config is not None: - extract_params["doughnut_config"] = validated_config.doughnut_config + if validated_config.eclair_config is not None: + extract_params["eclair_config"] = validated_config.eclair_config if trace_info is not None: extract_params["trace_info"] = trace_info diff --git a/src/nv_ingest/util/nim/doughnut.py b/src/nv_ingest/util/nim/eclair.py similarity index 88% rename from src/nv_ingest/util/nim/doughnut.py rename to src/nv_ingest/util/nim/eclair.py index 89f51847..04c9d087 100644 --- a/src/nv_ingest/util/nim/doughnut.py +++ b/src/nv_ingest/util/nim/eclair.py @@ -45,9 +45,9 @@ logger = logging.getLogger(__name__) -class DoughnutModelInterface(ModelInterface): +class EclairModelInterface(ModelInterface): """ - An interface for handling inference with a Doughnut model. + An interface for handling inference with a Eclair model. """ def name(self) -> str: @@ -59,7 +59,7 @@ def name(self) -> str: str The name of the model interface. """ - return "doughnut" + return "eclair" def prepare_data_for_inference(self, data: Dict[str, Any]) -> Dict[str, Any]: """ @@ -103,12 +103,12 @@ def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: """ if protocol == "grpc": - raise ValueError("gRPC protocol is not supported for Doughnut.") + raise ValueError("gRPC protocol is not supported for Eclair.") elif protocol == "http": - logger.debug("Formatting input for HTTP Doughnut model") + logger.debug("Formatting input for HTTP Eclair model") # Prepare payload for HTTP request base64_img = numpy_to_base64(data["image"]) - payload = self._prepare_doughnut_payload(base64_img) + payload = self._prepare_eclair_payload(base64_img) return payload else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") @@ -138,16 +138,16 @@ def parse_output(self, response: Any, protocol: str, data: Optional[Dict[str, An """ if protocol == "grpc": - raise ValueError("gRPC protocol is not supported for Doughnut.") + raise ValueError("gRPC protocol is not supported for Eclair.") elif protocol == "http": - logger.debug("Parsing output from HTTP Doughnut model") - return self._extract_content_from_doughnut_response(response) + logger.debug("Parsing output from HTTP Eclair model") + return self._extract_content_from_eclair_response(response) else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") def process_inference_results(self, output: Any, **kwargs) -> Any: """ - Process inference results for the Doughnut model. + Process inference results for the Eclair model. Parameters ---------- @@ -162,7 +162,7 @@ def process_inference_results(self, output: Any, **kwargs) -> Any: return output - def _prepare_doughnut_payload(self, base64_img: str) -> Dict[str, Any]: + def _prepare_eclair_payload(self, base64_img: str) -> Dict[str, Any]: messages = [ { "role": "user", @@ -191,7 +191,7 @@ def _prepare_doughnut_payload(self, base64_img: str) -> Dict[str, Any]: return payload - def _extract_content_from_doughnut_response(self, json_response: Dict[str, Any]) -> Any: + def _extract_content_from_eclair_response(self, json_response: Dict[str, Any]) -> Any: """ Extract content from the JSON response of a Deplot HTTP API request. diff --git a/src/nv_ingest/util/pipeline/pipeline_runners.py b/src/nv_ingest/util/pipeline/pipeline_runners.py index 5d01c12d..7cdceb30 100644 --- a/src/nv_ingest/util/pipeline/pipeline_runners.py +++ b/src/nv_ingest/util/pipeline/pipeline_runners.py @@ -38,7 +38,7 @@ class PipelineCreationSchema(BaseModel): cached_infer_protocol: str = "http" deplot_http_endpoint: str = os.getenv("DEPLOT_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/google/deplot") deplot_infer_protocol: str = "http" - doughnut_grpc_triton: str = "triton-doughnut:8001" + eclair_grpc_triton: str = "triton-eclair:8001" embedding_nim_endpoint: str = os.getenv("EMBEDDING_NIM_ENDPOINT", "https://integrate.api.nvidia.com/v1") embedding_nim_model_name: str = os.getenv("EMBEDDING_NIM_MODEL_NAME", "nvidia/nv-embedqa-e5-v5") ingest_log_level: str = os.getenv("INGEST_LOG_LEVEL", "INFO") diff --git a/src/nv_ingest/util/pipeline/stage_builders.py b/src/nv_ingest/util/pipeline/stage_builders.py index 725d8b56..0bbe9616 100644 --- a/src/nv_ingest/util/pipeline/stage_builders.py +++ b/src/nv_ingest/util/pipeline/stage_builders.py @@ -181,7 +181,7 @@ def add_metadata_injector_stage(pipe, morpheus_pipeline_config): def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") - doughnut_grpc, doughnut_http, doughnut_auth, doughnut_protocol = get_nim_service("doughnut") + eclair_grpc, eclair_http, eclair_auth, eclair_protocol = get_nim_service("eclair") pdf_content_extractor_config = ingest_config.get( "pdf_content_extraction_module", { @@ -190,10 +190,10 @@ def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, defau "yolox_infer_protocol": yolox_protocol, "auth_token": yolox_auth, # All auth tokens are the same for the moment }, - "doughnut_config": { - "doughnut_endpoints": (doughnut_grpc, doughnut_http), - "doughnut_infer_protocol": doughnut_protocol, - "auth_token": doughnut_auth, # All auth tokens are the same for the moment + "eclair_config": { + "eclair_endpoints": (eclair_grpc, eclair_http), + "eclair_infer_protocol": eclair_protocol, + "auth_token": eclair_auth, # All auth tokens are the same for the moment }, }, ) diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py similarity index 81% rename from tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py rename to tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py index 0509b5cb..8e33a80f 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_doughnut_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py @@ -6,16 +6,16 @@ import pandas as pd import pytest -from nv_ingest.extraction_workflows.pdf.doughnut_helper import _construct_table_metadata -from nv_ingest.extraction_workflows.pdf.doughnut_helper import doughnut -from nv_ingest.extraction_workflows.pdf.doughnut_helper import preprocess_and_send_requests +from nv_ingest.extraction_workflows.pdf.eclair_helper import _construct_table_metadata +from nv_ingest.extraction_workflows.pdf.eclair_helper import eclair +from nv_ingest.extraction_workflows.pdf.eclair_helper import preprocess_and_send_requests from nv_ingest.schemas.metadata_schema import AccessLevelEnum from nv_ingest.schemas.metadata_schema import TextTypeEnum -from nv_ingest.util.nim import doughnut as doughnut_utils +from nv_ingest.util.nim import eclair as eclair_utils from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable -_MODULE_UNDER_TEST = "nv_ingest.extraction_workflows.pdf.doughnut_helper" +_MODULE_UNDER_TEST = "nv_ingest.extraction_workflows.pdf.eclair_helper" @pytest.fixture @@ -36,19 +36,19 @@ def sample_pdf_stream(): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_doughnut_text_extraction(mock_client, sample_pdf_stream, document_df): +def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = "testing" - result = doughnut( + result = eclair( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - doughnut_config=MagicMock(doughnut_batch_size=1), + eclair_config=MagicMock(eclair_batch_size=1), ) assert len(result) == 1 @@ -58,19 +58,19 @@ def test_doughnut_text_extraction(mock_client, sample_pdf_stream, document_df): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_doughnut_table_extraction(mock_client, sample_pdf_stream, document_df): +def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = "table text" - result = doughnut( + result = eclair( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=True, row_data=document_df.iloc[0], text_depth="page", - doughnut_config=MagicMock(doughnut_batch_size=1), + eclair_config=MagicMock(eclair_batch_size=1), ) assert len(result) == 2 @@ -83,19 +83,19 @@ def test_doughnut_table_extraction(mock_client, sample_pdf_stream, document_df): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_doughnut_image_extraction(mock_client, sample_pdf_stream, document_df): +def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = "" - result = doughnut( + result = eclair( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=True, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - doughnut_config=MagicMock(doughnut_batch_size=1), + eclair_config=MagicMock(eclair_batch_size=1), ) assert len(result) == 2 @@ -124,21 +124,21 @@ def test_preprocess_and_send_requests(mock_pdfium_pages_to_numpy): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_doughnut_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): +def test_eclair_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = ( "testing0testing1" ) - result = doughnut( + result = eclair( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - doughnut_config=MagicMock(doughnut_batch_size=1), + eclair_config=MagicMock(eclair_batch_size=1), ) assert len(result) == 1 diff --git a/tests/nv_ingest/util/nim/test_doughnut.py b/tests/nv_ingest/util/nim/test_eclair.py similarity index 94% rename from tests/nv_ingest/util/nim/test_doughnut.py rename to tests/nv_ingest/util/nim/test_eclair.py index 656acf8f..6719797d 100644 --- a/tests/nv_ingest/util/nim/test_doughnut.py +++ b/tests/nv_ingest/util/nim/test_eclair.py @@ -4,10 +4,10 @@ import pytest -from nv_ingest.util.nim.doughnut import extract_classes_bboxes -from nv_ingest.util.nim.doughnut import postprocess_text -from nv_ingest.util.nim.doughnut import reverse_transform_bbox -from nv_ingest.util.nim.doughnut import strip_markdown_formatting +from nv_ingest.util.nim.eclair import extract_classes_bboxes +from nv_ingest.util.nim.eclair import postprocess_text +from nv_ingest.util.nim.eclair import reverse_transform_bbox +from nv_ingest.util.nim.eclair import strip_markdown_formatting def test_reverse_transform_bbox_no_offset(): From 71d81d2bfaeb1b1f09d5e345bd3e6236c9da6752 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Fri, 24 Jan 2025 21:14:57 +0000 Subject: [PATCH 24/37] update tests --- .../image/image_handlers.py | 3 +- .../pdf/test_eclair_helper.py | 43 +++++- tests/nv_ingest/util/nim/test_eclair.py | 143 ------------------ 3 files changed, 37 insertions(+), 152 deletions(-) delete mode 100644 tests/nv_ingest/util/nim/test_eclair.py diff --git a/src/nv_ingest/extraction_workflows/image/image_handlers.py b/src/nv_ingest/extraction_workflows/image/image_handlers.py index c053cb87..457505bc 100644 --- a/src/nv_ingest/extraction_workflows/image/image_handlers.py +++ b/src/nv_ingest/extraction_workflows/image/image_handlers.py @@ -161,7 +161,8 @@ def extract_table_and_chart_images( *bbox, _ = bboxes h1, w1, h2, w2 = np.array(bbox) * np.array([height, width, height, width]) - base64_img = numpy_to_base64(crop_image(original_image, (int(h1), int(w1), int(h2), int(w2)))) + cropped_img = crop_image(original_image, (int(h1), int(w1), int(h2), int(w2))) + base64_img = numpy_to_base64(cropped_img) if cropped_img is not None else None table_data = CroppedImageWithContent( content="", diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py index 8e33a80f..f50a1a7d 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py @@ -39,7 +39,13 @@ def sample_pdf_stream(): def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance - mock_client_instance.infer.return_value = "testing" + mock_client_instance.infer.return_value = [ + { + "bbox": {"xmin": 0.16633729456384325, "ymin": 0.0969, "xmax": 0.3097820480404551, "ymax": 0.1102}, + "text": "testing", + "type": "Text", + } + ] result = eclair( pdf_stream=sample_pdf_stream, @@ -61,7 +67,13 @@ def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance - mock_client_instance.infer.return_value = "table text" + mock_client_instance.infer.return_value = [ + { + "bbox": {"xmin": 1 / 1024, "ymin": 2 / 1280, "xmax": 101 / 1024, "ymax": 102 / 1280}, + "text": "table text", + "type": "Table", + } + ] result = eclair( pdf_stream=sample_pdf_stream, @@ -76,7 +88,7 @@ def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): assert len(result) == 2 assert result[0][0].value == "structured" assert result[0][1]["content"] == "table text" - assert result[0][1]["table_metadata"]["table_location"] == (0, 0, 1024, 1280) + assert result[0][1]["table_metadata"]["table_location"] == (1, 2, 101, 102) assert result[0][1]["table_metadata"]["table_location_max_dimensions"] == (1024, 1280) assert result[1][0].value == "text" assert result[1][1]["content"] == "" @@ -86,7 +98,13 @@ def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance - mock_client_instance.infer.return_value = "" + mock_client_instance.infer.return_value = [ + { + "bbox": {"xmin": 1 / 1024, "ymin": 2 / 1280, "xmax": 101 / 1024, "ymax": 102 / 1280}, + "text": "", + "type": "Picture", + } + ] result = eclair( pdf_stream=sample_pdf_stream, @@ -101,7 +119,7 @@ def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): assert len(result) == 2 assert result[0][0].value == "image" assert result[0][1]["content"][:10] == "iVBORw0KGg" # PNG format header - assert result[0][1]["image_metadata"]["image_location"] == (0, 0, 1024, 1280) + assert result[0][1]["image_metadata"]["image_location"] == (1, 2, 101, 102) assert result[0][1]["image_metadata"]["image_location_max_dimensions"] == (1024, 1280) assert result[1][0].value == "text" assert result[1][1]["content"] == "" @@ -127,9 +145,18 @@ def test_preprocess_and_send_requests(mock_pdfium_pages_to_numpy): def test_eclair_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance - mock_client_instance.infer.return_value = ( - "testing0testing1" - ) + mock_client_instance.infer.return_value = [ + { + "bbox": {"xmin": 0.16633729456384325, "ymin": 0.0969, "xmax": 0.3097820480404551, "ymax": 0.1102}, + "text": "testing0", + "type": "Title", + }, + { + "bbox": {"xmin": 0.16633729456384325, "ymin": 0.0969, "xmax": 0.3097820480404551, "ymax": 0.1102}, + "text": "testing1", + "type": "Text", + }, + ] result = eclair( pdf_stream=sample_pdf_stream, diff --git a/tests/nv_ingest/util/nim/test_eclair.py b/tests/nv_ingest/util/nim/test_eclair.py deleted file mode 100644 index 6719797d..00000000 --- a/tests/nv_ingest/util/nim/test_eclair.py +++ /dev/null @@ -1,143 +0,0 @@ -# SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. -# All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -import pytest - -from nv_ingest.util.nim.eclair import extract_classes_bboxes -from nv_ingest.util.nim.eclair import postprocess_text -from nv_ingest.util.nim.eclair import reverse_transform_bbox -from nv_ingest.util.nim.eclair import strip_markdown_formatting - - -def test_reverse_transform_bbox_no_offset(): - bbox = (10, 20, 30, 40) - bbox_offset = (0, 0) - expected_bbox = (10, 20, 30, 40) - transformed_bbox = reverse_transform_bbox(bbox, bbox_offset, 100, 100) - - assert transformed_bbox == expected_bbox - - -def test_reverse_transform_bbox_with_offset(): - bbox = (20, 30, 40, 50) - bbox_offset = (10, 10) - expected_bbox = (12, 25, 37, 50) - transformed_bbox = reverse_transform_bbox(bbox, bbox_offset, 100, 100) - - assert transformed_bbox == expected_bbox - - -def test_reverse_transform_bbox_with_large_offset(): - bbox = (60, 80, 90, 100) - bbox_offset = (20, 30) - width_ratio = (100 - 2 * bbox_offset[0]) / 100 - height_ratio = (100 - 2 * bbox_offset[1]) / 100 - expected_bbox = ( - int((60 - bbox_offset[0]) / width_ratio), - int((80 - bbox_offset[1]) / height_ratio), - int((90 - bbox_offset[0]) / width_ratio), - int((100 - bbox_offset[1]) / height_ratio), - ) - transformed_bbox = reverse_transform_bbox(bbox, bbox_offset, 100, 100) - - assert transformed_bbox == expected_bbox - - -def test_reverse_transform_bbox_custom_dimensions(): - bbox = (15, 25, 35, 45) - bbox_offset = (5, 5) - original_width = 200 - original_height = 200 - width_ratio = (original_width - 2 * bbox_offset[0]) / original_width - height_ratio = (original_height - 2 * bbox_offset[1]) / original_height - expected_bbox = ( - int((15 - bbox_offset[0]) / width_ratio), - int((25 - bbox_offset[1]) / height_ratio), - int((35 - bbox_offset[0]) / width_ratio), - int((45 - bbox_offset[1]) / height_ratio), - ) - transformed_bbox = reverse_transform_bbox(bbox, bbox_offset, original_width, original_height) - - assert transformed_bbox == expected_bbox - - -def test_reverse_transform_bbox_zero_dimension(): - bbox = (10, 10, 20, 20) - bbox_offset = (0, 0) - original_width = 0 - original_height = 0 - with pytest.raises(ZeroDivisionError): - reverse_transform_bbox(bbox, bbox_offset, original_width, original_height) - - -def test_postprocess_text_with_unaccepted_class(): - # Input text that should not be processed - txt = "This text should not be processed" - cls = "InvalidClass" # Not in ACCEPTED_CLASSES - - result = postprocess_text(txt, cls) - - assert result == "" - - -def test_postprocess_text_removes_tbc_and_processes_text(): - # Input text containing "" - txt = "Some text" - cls = "Title" # An accepted class - - expected_output = "Some text" - - result = postprocess_text(txt, cls) - - assert result == expected_output - - -def test_postprocess_text_no_tbc_but_accepted_class(): - # Input text without "" - txt = "This is a test **without** tbc" - cls = "Section-header" # An accepted class - - expected_output = "This is a test without tbc" - - result = postprocess_text(txt, cls) - - assert result == expected_output - - -@pytest.mark.parametrize( - "input_text, expected_classes, expected_bboxes, expected_texts", - [ - ("Sample text", ["Text"], [(10, 20, 30, 40)], ["Sample text"]), - ( - "Invalid text ", - ["Bad-box", "Bad-box"], - [(0, 0, 0, 0), (10, 20, 30, 40)], - ["Invalid text", ""], - ), - ("Header content", ["Title"], [(15, 25, 35, 45)], ["Header content"]), - ("Overlapping box", ["Bad-box"], [(5, 10, 5, 10)], ["Overlapping box"]), - ], -) -def test_extract_classes_bboxes(input_text, expected_classes, expected_bboxes, expected_texts): - classes, bboxes, texts = extract_classes_bboxes(input_text) - assert classes == expected_classes - assert bboxes == expected_bboxes - assert texts == expected_texts - - -# Test cases for strip_markdown_formatting -@pytest.mark.parametrize( - "input_text, expected_output", - [ - ("# Header\n**Bold text**\n*Italic*", "Header\nBold text\nItalic"), - ("~~Strikethrough~~", "Strikethrough"), - ("[Link](http://example.com)", "Link"), - ("`inline code`", "inline code"), - ("> Blockquote", "Blockquote"), - ("Normal text\n\n\nMultiple newlines", "Normal text\n\nMultiple newlines"), - ("Dot sequence...... more text", "Dot sequence..... more text"), - ], -) -def test_strip_markdown_formatting(input_text, expected_output): - assert strip_markdown_formatting(input_text) == expected_output From c92ae91b422220e692423fbc4a745e7f7bcf0ac4 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Fri, 24 Jan 2025 21:22:42 +0000 Subject: [PATCH 25/37] lint --- src/nv_ingest/util/nim/eclair.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/nv_ingest/util/nim/eclair.py b/src/nv_ingest/util/nim/eclair.py index 04c9d087..a3841c22 100644 --- a/src/nv_ingest/util/nim/eclair.py +++ b/src/nv_ingest/util/nim/eclair.py @@ -4,12 +4,9 @@ import json import logging -import re from typing import Any from typing import Dict -from typing import List from typing import Optional -from typing import Tuple from nv_ingest.util.image_processing.transforms import numpy_to_base64 from nv_ingest.util.nim.helpers import ModelInterface From 848d18dbe7f5d3c7d36d993550e1c5a0a71827f7 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Sun, 26 Jan 2025 01:49:16 +0000 Subject: [PATCH 26/37] refactor fot batch size 1 --- .../extraction_workflows/pdf/eclair_helper.py | 331 +++++++++--------- src/nv_ingest/schemas/pdf_extractor_schema.py | 5 - src/nv_ingest/stages/nim/chart_extraction.py | 2 - src/nv_ingest/stages/nim/table_extraction.py | 2 - .../util/pipeline/pipeline_runners.py | 3 +- .../pdf/test_eclair_helper.py | 29 +- 6 files changed, 164 insertions(+), 208 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py index 1a74f807..75108e70 100644 --- a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py @@ -19,14 +19,14 @@ import logging import math +import traceback import uuid +from typing import Any from typing import Dict -from typing import List from typing import Tuple import numpy as np import pypdfium2 as pdfium -import tritonclient.grpc as grpcclient from nv_ingest.schemas.metadata_schema import AccessLevelEnum from nv_ingest.schemas.metadata_schema import ContentSubtypeEnum @@ -82,8 +82,6 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: eclair_config = kwargs.get("eclair_config", {}) eclair_config = eclair_config if eclair_config is not None else {} - batch_size = eclair_config.eclair_batch_size - row_data = kwargs.get("row_data") # get source_id source_id = row_data["source_id"] @@ -125,163 +123,121 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: "access_level": access_level, } - pages = [] - page_sizes = [] + accumulated_text = [] + accumulated_tables = [] + accumulated_images = [] + + eclair_client = _create_clients(eclair_config) + for page_idx in range(pdf_metadata.page_count): page = doc.get_page(page_idx) - pages.append(page) page_width, page_height = doc.get_page_size(page_idx) - page_sizes.append((page_width, page_height)) - # Split into batches. - i = 0 - batches = [] - batch_page_offsets = [] - while i < len(pages): - batches.append(pages[i : i + batch_size]) # noqa: E203 - batch_page_offsets.append(i) - i += batch_size + page_nearby_blocks = { + "text": {"content": [], "bbox": [], "type": []}, + "images": {"content": [], "bbox": [], "type": []}, + "structured": {"content": [], "bbox": [], "type": []}, + } - accumulated_text = [] - accumulated_tables = [] - accumulated_images = [] + page_image = _convert_pdfium_page_to_numpy(page) + response = _send_inference_request(eclair_client, page_image) - model_interface = eclair_utils.EclairModelInterface() - eclair_client = create_inference_client( - eclair_config.eclair_endpoints, - model_interface, - eclair_config.auth_token, - eclair_config.eclair_infer_protocol, - ) + for bbox_dict in response: + cls = bbox_dict["type"] + bbox = bbox_dict["bbox"] + txt = bbox_dict["text"] - for batch, batch_page_offset in zip(batches, batch_page_offsets): - responses = preprocess_and_send_requests(eclair_client, batch, batch_page_offset) - - for page_idx, bboxes, bbox_offset in responses: - page_image = None - page_width, page_height = page_sizes[page_idx] - - page_nearby_blocks = { - "text": {"content": [], "bbox": [], "type": []}, - "images": {"content": [], "bbox": [], "type": []}, - "structured": {"content": [], "bbox": [], "type": []}, - } - - for bbox_info in bboxes: - cls = bbox_info["type"] - bbox = bbox_info["bbox"] - txt = bbox_info["text"] - - transformed_bbox = [ - math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), - math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), - math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), - math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), - ] - - if cls in eclair_utils.ACCEPTED_TEXT_CLASSES: - if identify_nearby_objects: - page_nearby_blocks["text"]["content"].append(txt) - page_nearby_blocks["text"]["bbox"].append(transformed_bbox) - page_nearby_blocks["text"]["type"].append(cls) - - if extract_text: - accumulated_text.append(txt) - - if cls == "Table": - if identify_nearby_objects: - page_nearby_blocks["structured"]["content"].append(txt) - page_nearby_blocks["structured"]["bbox"].append(transformed_bbox) - page_nearby_blocks["structured"]["type"].append(cls) - - if extract_tables: - try: - txt = txt.encode().decode("unicode_escape") # remove double backlashes - except UnicodeDecodeError: - pass - - table = LatexTable( - latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT - ) - accumulated_tables.append(table) - - if cls == "Picture": - if identify_nearby_objects: - page_nearby_blocks["images"]["content"].append(txt) - page_nearby_blocks["images"]["bbox"].append(transformed_bbox) - page_nearby_blocks["images"]["type"].append(cls) - - if extract_images: - if page_image is None: - scale_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - padding_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - page_image, *_ = pdfium_pages_to_numpy( - [pages[page_idx]], scale_tuple=scale_tuple, padding_tuple=padding_tuple - ) - page_image = page_image[0] - - img_numpy = crop_image(page_image, transformed_bbox) - - if img_numpy is not None: - base64_img = numpy_to_base64(img_numpy) - image = Base64Image( - image=base64_img, - bbox=transformed_bbox, - width=img_numpy.shape[1], - height=img_numpy.shape[0], - max_width=DEFAULT_MAX_WIDTH, - max_height=DEFAULT_MAX_HEIGHT, - ) - accumulated_images.append(image) - - # Construct tables - if extract_tables: - for table in accumulated_tables: - extracted_data.append( - _construct_table_metadata( - table, - page_idx, - pdf_metadata.page_count, - source_metadata, - base_unified_metadata, - ) + transformed_bbox = [ + math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), + math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), + math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), + math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), + ] + + if cls not in eclair_utils.ACCEPTED_CLASSES: + continue + + if identify_nearby_objects: + _insert_page_nearby_blocks(page_nearby_blocks, cls, txt, transformed_bbox) + + if extract_text: + accumulated_text.append(txt) + + if extract_tables and (cls == "Table"): + table = LatexTable( + latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT + ) + accumulated_tables.append(table) + + if extract_images and (cls == "Picture"): + img_numpy = crop_image(page_image, transformed_bbox) + + if img_numpy is not None: + base64_img = numpy_to_base64(img_numpy) + image = Base64Image( + image=base64_img, + bbox=transformed_bbox, + width=img_numpy.shape[1], + height=img_numpy.shape[0], + max_width=DEFAULT_MAX_WIDTH, + max_height=DEFAULT_MAX_HEIGHT, ) - accumulated_tables = [] - - # Construct images - if extract_images: - for image in accumulated_images: - extracted_data.append( - construct_image_metadata_from_pdf_image( - image, - page_idx, - pdf_metadata.page_count, - source_metadata, - base_unified_metadata, - ) + accumulated_images.append(image) + + # If Eclair fails to extract anything, fall back to using pdfium. + if not "".join(accumulated_text).strip(): + textpage = page.get_textpage() + page_text = textpage.get_text_bounded() + accumulated_text.append(page_text) + + # Construct tables + if extract_tables: + for table in accumulated_tables: + extracted_data.append( + _construct_table_metadata( + table, + page_idx, + pdf_metadata.page_count, + source_metadata, + base_unified_metadata, ) - accumulated_images = [] + ) + accumulated_tables = [] - # Construct text - page - if (extract_text) and (text_depth == TextTypeEnum.PAGE): + # Construct images + if extract_images: + for image in accumulated_images: extracted_data.append( - construct_text_metadata( - accumulated_text, - pdf_metadata.keywords, + construct_image_metadata_from_pdf_image( + image, page_idx, - -1, - -1, - -1, pdf_metadata.page_count, - text_depth, source_metadata, base_unified_metadata, - delimiter="\n\n", - bbox_max_dimensions=(DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), - nearby_objects=page_nearby_blocks, ) ) - accumulated_text = [] + accumulated_images = [] + + # Construct text - page + if (extract_text) and (text_depth == TextTypeEnum.PAGE): + extracted_data.append( + construct_text_metadata( + accumulated_text, + pdf_metadata.keywords, + page_idx, + -1, + -1, + -1, + pdf_metadata.page_count, + text_depth, + source_metadata, + base_unified_metadata, + delimiter="\n\n", + bbox_max_dimensions=(DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), + nearby_objects=page_nearby_blocks, + ) + ) + accumulated_text = [] # Construct text - document if (extract_text) and (text_depth == TextTypeEnum.DOCUMENT): @@ -302,45 +258,72 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: if len(text_extraction) > 0: extracted_data.append(text_extraction) - if isinstance(eclair_client, grpcclient.InferenceServerClient): - eclair_client.close() + eclair_client.close() return extracted_data -def preprocess_and_send_requests( - eclair_client, - batch: List[pdfium.PdfPage], - batch_offset: int, -) -> List[Tuple[int, str]]: - if not batch: - return [] - - render_dpi = DEFAULT_RENDER_DPI - scale_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - padding_tuple = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT) - - page_images, bbox_offsets = pdfium_pages_to_numpy( - batch, render_dpi=render_dpi, scale_tuple=scale_tuple, padding_tuple=padding_tuple +def _create_clients(eclair_config): + model_interface = eclair_utils.EclairModelInterface() + eclair_client = create_inference_client( + eclair_config.eclair_endpoints, + model_interface, + eclair_config.auth_token, + eclair_config.eclair_infer_protocol, ) - page_numbers = [page_idx for page_idx in range(batch_offset, batch_offset + len(page_images))] - batch = np.array(page_images) + return eclair_client - output = [] - for page_image in page_images: - # Currently, the model only supports processing one page at a time (batch size = 1). - data = {"image": page_image} - response = eclair_client.infer(data, model_name="eclair") - output.append(response) - if len(output) != len(batch): - raise RuntimeError( - f"Dimensions mismatch: there are {len(batch)} pages in the input but there are " - f"{len(output)} pages in the response." +def _send_inference_request( + eclair_client, + image_array: np.ndarray, +) -> Dict[str, Any]: + + try: + # NIM only supports processing one page at a time (batch size = 1). + data = {"image": image_array} + response = eclair_client.infer( + data=data, + model_name="eclair", ) + except Exception as e: + logger.error(f"Unhandled error during Eclair inference: {e}") + traceback.print_exc() + raise e + + return response + + +def _convert_pdfium_page_to_numpy( + page: pdfium.PdfPage, + render_dpi: int = DEFAULT_RENDER_DPI, + scale_tuple: Tuple[int, int] = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), + padding_tuple: Tuple[int, int] = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), +) -> np.ndarray: + page_images, _ = pdfium_pages_to_numpy( + [page], render_dpi=render_dpi, scale_tuple=scale_tuple, padding_tuple=padding_tuple + ) + + return page_images[0] + + +def _insert_page_nearby_blocks( + page_nearby_blocks: Dict[str, Any], + cls: str, + txt: str, + bbox: str, +): + if cls in eclair_utils.ACCEPTED_TEXT_CLASSES: + nearby_blocks_key = "text" + elif cls in eclair_utils.ACCEPTED_TABLE_CLASSES: + nearby_blocks_key = "structured" + elif cls in eclair_utils.ACCEPTED_IMAGE_CLASSES: + nearby_blocks_key = "images" - return list(zip(page_numbers, output, bbox_offsets)) + page_nearby_blocks[nearby_blocks_key]["content"].append(txt) + page_nearby_blocks[nearby_blocks_key]["bbox"].append(bbox) + page_nearby_blocks[nearby_blocks_key]["type"].append(cls) @pdfium_exception_handler(descriptor="eclair") @@ -379,7 +362,7 @@ def _construct_table_metadata( ext_unified_metadata.update( { - "content": content, + "content": "", "source_metadata": source_metadata, "content_metadata": content_metadata, "table_metadata": table_metadata, diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index 41cae973..50897d97 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -124,7 +124,6 @@ class EclairConfigSchema(BaseModel): eclair_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) eclair_infer_protocol: str = "" - eclair_batch_size: int = 32 @model_validator(mode="before") @classmethod @@ -166,10 +165,6 @@ def validate_endpoints(cls, values): protocol_value = protocol_value.lower() values[protocol_name] = protocol_value - # Currently both build.nvidia.com and NIM do not support batch size > 1. - if values.get("eclair_infer_protocol") == "http": - values["eclair_batch_size"] = 1 - return values model_config = ConfigDict(extra="forbid") diff --git a/src/nv_ingest/stages/nim/chart_extraction.py b/src/nv_ingest/stages/nim/chart_extraction.py index f510da46..3890c62e 100644 --- a/src/nv_ingest/stages/nim/chart_extraction.py +++ b/src/nv_ingest/stages/nim/chart_extraction.py @@ -13,7 +13,6 @@ from morpheus.config import Config from nv_ingest.schemas.chart_extractor_schema import ChartExtractorSchema -from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.stages.multiprocessing_stage import MultiProcessingBaseStage from nv_ingest.util.image_processing.table_and_chart import join_cached_and_deplot_output from nv_ingest.util.nim.cached import CachedModelInterface @@ -67,7 +66,6 @@ def _update_metadata(row: pd.Series, cached_client: NimClient, deplot_client: Ni (content_metadata.get("type") != "structured") or (content_metadata.get("subtype") != "chart") or (chart_metadata is None) - or (chart_metadata.get("table_format") != TableFormatEnum.IMAGE) or (base64_image in [None, ""]) ): return metadata diff --git a/src/nv_ingest/stages/nim/table_extraction.py b/src/nv_ingest/stages/nim/table_extraction.py index af1098e6..21c91c14 100644 --- a/src/nv_ingest/stages/nim/table_extraction.py +++ b/src/nv_ingest/stages/nim/table_extraction.py @@ -12,7 +12,6 @@ import pandas as pd from morpheus.config import Config -from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.schemas.table_extractor_schema import TableExtractorSchema from nv_ingest.stages.multiprocessing_stage import MultiProcessingBaseStage from nv_ingest.util.image_processing.transforms import base64_to_numpy @@ -67,7 +66,6 @@ def _update_metadata(row: pd.Series, paddle_client: NimClient, trace_info: Dict) (content_metadata.get("type") != "structured") or (content_metadata.get("subtype") != "table") or (table_metadata is None) - or (table_metadata.get("table_format") != TableFormatEnum.IMAGE) or (base64_image in [None, ""]) ): return metadata diff --git a/src/nv_ingest/util/pipeline/pipeline_runners.py b/src/nv_ingest/util/pipeline/pipeline_runners.py index 7cdceb30..dea8d356 100644 --- a/src/nv_ingest/util/pipeline/pipeline_runners.py +++ b/src/nv_ingest/util/pipeline/pipeline_runners.py @@ -38,7 +38,8 @@ class PipelineCreationSchema(BaseModel): cached_infer_protocol: str = "http" deplot_http_endpoint: str = os.getenv("DEPLOT_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/google/deplot") deplot_infer_protocol: str = "http" - eclair_grpc_triton: str = "triton-eclair:8001" + eclair_http_endpoint: str = os.getenv("ECLAIR_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/nvidia/eclair") + eclair_infer_protocol: str = "http" embedding_nim_endpoint: str = os.getenv("EMBEDDING_NIM_ENDPOINT", "https://integrate.api.nvidia.com/v1") embedding_nim_model_name: str = os.getenv("EMBEDDING_NIM_MODEL_NAME", "nvidia/nv-embedqa-e5-v5") ingest_log_level: str = os.getenv("INGEST_LOG_LEVEL", "INFO") diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py index f50a1a7d..7489f7f9 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py @@ -8,7 +8,6 @@ from nv_ingest.extraction_workflows.pdf.eclair_helper import _construct_table_metadata from nv_ingest.extraction_workflows.pdf.eclair_helper import eclair -from nv_ingest.extraction_workflows.pdf.eclair_helper import preprocess_and_send_requests from nv_ingest.schemas.metadata_schema import AccessLevelEnum from nv_ingest.schemas.metadata_schema import TextTypeEnum from nv_ingest.util.nim import eclair as eclair_utils @@ -54,7 +53,7 @@ def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(eclair_batch_size=1), + eclair_config=MagicMock(), ) assert len(result) == 1 @@ -82,16 +81,15 @@ def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): extract_tables=True, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(eclair_batch_size=1), + eclair_config=MagicMock(), ) assert len(result) == 2 assert result[0][0].value == "structured" - assert result[0][1]["content"] == "table text" + assert result[0][1]["table_metadata"]["table_content"] == "table text" assert result[0][1]["table_metadata"]["table_location"] == (1, 2, 101, 102) assert result[0][1]["table_metadata"]["table_location_max_dimensions"] == (1024, 1280) assert result[1][0].value == "text" - assert result[1][1]["content"] == "" @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") @@ -113,7 +111,7 @@ def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(eclair_batch_size=1), + eclair_config=MagicMock(), ) assert len(result) == 2 @@ -122,23 +120,6 @@ def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): assert result[0][1]["image_metadata"]["image_location"] == (1, 2, 101, 102) assert result[0][1]["image_metadata"]["image_location_max_dimensions"] == (1024, 1280) assert result[1][0].value == "text" - assert result[1][1]["content"] == "" - - -@patch(f"{_MODULE_UNDER_TEST}.pdfium_pages_to_numpy") -def test_preprocess_and_send_requests(mock_pdfium_pages_to_numpy): - mock_pdfium_pages_to_numpy.return_value = (np.array([[1], [2], [3]]), [0, 1, 2]) - - mock_client = MagicMock() - batch = [MagicMock()] * 3 - batch_offset = 0 - - result = preprocess_and_send_requests(mock_client, batch, batch_offset) - - assert len(result) == 3, "Result should have 3 entries" - assert all( - isinstance(item, tuple) and len(item) == 3 for item in result - ), "Each entry should be a tuple with 3 items" @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") @@ -165,7 +146,7 @@ def test_eclair_text_extraction_bboxes(mock_client, sample_pdf_stream, document_ extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(eclair_batch_size=1), + eclair_config=MagicMock(), ) assert len(result) == 1 From db68afba3534a08106b410a0c5c162e428c1474e Mon Sep 17 00:00:00 2001 From: edknv Date: Wed, 5 Feb 2025 22:15:23 -0800 Subject: [PATCH 27/37] update model name and batch input --- docker-compose.yaml | 1 - .../extraction_workflows/pdf/eclair_helper.py | 1 + src/nv_ingest/util/nim/eclair.py | 12 ++---------- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index df38e220..b724570c 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -176,7 +176,6 @@ services: # build.nvidia.com hosted deplot #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - DEPLOT_INFER_PROTOCOL=http - - ECLAIR_GRPC_ENDPOINT= - ECLAIR_HTTP_ENDPOINT=http://eclair:8000/v1/chat/completions - ECLAIR_INFER_PROTOCOL=http - EMBEDDING_NIM_MODEL_NAME=${EMBEDDING_NIM_MODEL_NAME:-nvidia/nv-embedqa-e5-v5} diff --git a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py index 75108e70..a7d4d929 100644 --- a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py @@ -259,6 +259,7 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: extracted_data.append(text_extraction) eclair_client.close() + doc.close() return extracted_data diff --git a/src/nv_ingest/util/nim/eclair.py b/src/nv_ingest/util/nim/eclair.py index a3841c22..7fba86cc 100644 --- a/src/nv_ingest/util/nim/eclair.py +++ b/src/nv_ingest/util/nim/eclair.py @@ -106,7 +106,7 @@ def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: # Prepare payload for HTTP request base64_img = numpy_to_base64(data["image"]) payload = self._prepare_eclair_payload(base64_img) - return payload + return [payload] else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") @@ -174,16 +174,8 @@ def _prepare_eclair_payload(self, base64_img: str) -> Dict[str, Any]: } ] payload = { - "model": "nvidia/eclair", + "model": "nvidia/nemoretriever-parse", "messages": messages, - "tools": [ - { - "type": "function", - "function": { - "name": "markdown_bbox", - }, - } - ], } return payload From e99d77543dcb3985fadc0d1cbf7ea2a9b76a39ca Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Tue, 11 Feb 2025 04:55:43 +0000 Subject: [PATCH 28/37] rc5 uses the regular ngc key --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index b724570c..496b3a84 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -135,7 +135,7 @@ services: environment: - NIM_HTTP_API_PORT=8000 - NIM_TRITON_LOG_VERBOSE=1 - - NGC_API_KEY=${STAGING_NIM_NGC_API_KEY} + - NGC_API_KEY=${NIM_NGC_API_KEY:-${NGC_API_KEY:-ngcapikey}} - CUDA_VISIBLE_DEVICES=0 deploy: resources: From 5dea3b71fbc5d5aa2fa9596d94c1b4b87a0a1b13 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Tue, 11 Feb 2025 05:14:43 +0000 Subject: [PATCH 29/37] find and replace all eclair -> nemoretriever_parse --- client/src/nv_ingest_client/nv_ingest_cli.py | 2 +- .../primitives/tasks/extract.py | 2 +- docker-compose.yaml | 8 +-- .../developer-guide/nv-ingest_cli.md | 4 +- .../extraction_workflows/pdf/__init__.py | 4 +- ...elper.py => nemoretriever_parse_helper.py} | 54 +++++++++---------- src/nv_ingest/schemas/pdf_extractor_schema.py | 16 +++--- src/nv_ingest/stages/pdf_extractor_stage.py | 4 +- .../nim/{eclair.py => nemoretriever_parse.py} | 24 ++++----- .../util/pipeline/pipeline_runners.py | 6 ++- src/nv_ingest/util/pipeline/stage_builders.py | 12 +++-- ....py => test_nemoretriever_parse_helper.py} | 32 +++++------ 12 files changed, 86 insertions(+), 82 deletions(-) rename src/nv_ingest/extraction_workflows/pdf/{eclair_helper.py => nemoretriever_parse_helper.py} (85%) rename src/nv_ingest/util/nim/{eclair.py => nemoretriever_parse.py} (86%) rename tests/nv_ingest/extraction_workflows/pdf/{test_eclair_helper.py => test_nemoretriever_parse_helper.py} (81%) diff --git a/client/src/nv_ingest_client/nv_ingest_cli.py b/client/src/nv_ingest_client/nv_ingest_cli.py index 399b4705..b1d40f7f 100644 --- a/client/src/nv_ingest_client/nv_ingest_cli.py +++ b/client/src/nv_ingest_client/nv_ingest_cli.py @@ -116,7 +116,7 @@ Example: --task 'split:{"split_by":"page", "split_length":10}' --task 'extract:{"document_type":"pdf", "extract_text":true}' - --task 'extract:{"document_type":"pdf", "extract_method":"eclair"}' + --task 'extract:{"document_type":"pdf", "extract_method":"nemoretriever_parse"}' --task 'extract:{"document_type":"pdf", "extract_method":"unstructured_io"}' --task 'extract:{"document_type":"docx", "extract_text":true, "extract_images":true}' --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000"}' diff --git a/client/src/nv_ingest_client/primitives/tasks/extract.py b/client/src/nv_ingest_client/primitives/tasks/extract.py index b38a351d..17fef30c 100644 --- a/client/src/nv_ingest_client/primitives/tasks/extract.py +++ b/client/src/nv_ingest_client/primitives/tasks/extract.py @@ -45,7 +45,7 @@ _Type_Extract_Method_PDF = Literal[ "adobe", - "eclair", + "nemoretriever_parse", "haystack", "llama_parse", "pdfium", diff --git a/docker-compose.yaml b/docker-compose.yaml index 496b3a84..be27a938 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -125,8 +125,8 @@ services: capabilities: [gpu] runtime: nvidia - eclair: - image: ${ECLAIR_IMAGE:-nvcr.io/nvidia/nemo-microservices/eclair}:${ECLAIR_TAG:-1.0.0} + nemoretriever-parse: + image: ${NEMORETRIEVER_PARSE_IMAGE:-nvcr.io/nvidia/nemo-microservices/nemoretriever-parse}:${NEMORETRIEVER_PARSE_TAG:-1.0.0} ports: - "8015:8000" - "8016:8001" @@ -176,8 +176,8 @@ services: # build.nvidia.com hosted deplot #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - DEPLOT_INFER_PROTOCOL=http - - ECLAIR_HTTP_ENDPOINT=http://eclair:8000/v1/chat/completions - - ECLAIR_INFER_PROTOCOL=http + - NEMORETRIEVER_PARSE_HTTP_ENDPOINT=http://nemoretriever-parse:8000/v1/chat/completions + - NEMORETRIEVER_PARSE_INFER_PROTOCOL=http - EMBEDDING_NIM_MODEL_NAME=${EMBEDDING_NIM_MODEL_NAME:-nvidia/nv-embedqa-e5-v5} - INGEST_LOG_LEVEL=DEFAULT # Message client for development diff --git a/docs/docs/user-guide/developer-guide/nv-ingest_cli.md b/docs/docs/user-guide/developer-guide/nv-ingest_cli.md index 7ae59746..b1cb0445 100644 --- a/docs/docs/user-guide/developer-guide/nv-ingest_cli.md +++ b/docs/docs/user-guide/developer-guide/nv-ingest_cli.md @@ -32,7 +32,7 @@ Options: Example: --task 'split:{"split_by":"page", "split_length":10}' --task 'extract:{"document_type":"pdf", "extract_text":true}' - --task 'extract:{"document_type":"pdf", "extract_method":"eclair"}' + --task 'extract:{"document_type":"pdf", "extract_method":"nemoretriever_parse"}' --task 'extract:{"document_type":"pdf", "extract_method":"unstructured_io"}' --task 'extract:{"document_type":"docx", "extract_text":true, "extract_images":true}' --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000"}' @@ -120,7 +120,7 @@ nv-ingest-cli \ Submit a PDF file with splitting and extraction tasks. -**Note: (TODO)** This currently only works for pdfium, eclair, and Unstructured.io; haystack, Adobe, and LlamaParse +**Note: (TODO)** This currently only works for pdfium, nemoretriever_parse, and Unstructured.io; haystack, Adobe, and LlamaParse have existing workflows but have not been fully converted to use our unified metadata schema. ```bash diff --git a/src/nv_ingest/extraction_workflows/pdf/__init__.py b/src/nv_ingest/extraction_workflows/pdf/__init__.py index 9fc687e1..8db3bddf 100644 --- a/src/nv_ingest/extraction_workflows/pdf/__init__.py +++ b/src/nv_ingest/extraction_workflows/pdf/__init__.py @@ -4,7 +4,7 @@ from nv_ingest.extraction_workflows.pdf.adobe_helper import adobe -from nv_ingest.extraction_workflows.pdf.eclair_helper import eclair +from nv_ingest.extraction_workflows.pdf.nemoretriever_parse_helper import nemoretriever_parse from nv_ingest.extraction_workflows.pdf.llama_parse_helper import llama_parse from nv_ingest.extraction_workflows.pdf.pdfium_helper import pdfium_extractor as pdfium from nv_ingest.extraction_workflows.pdf.tika_helper import tika @@ -15,6 +15,6 @@ "pdfium", "tika", "unstructured_io", - "eclair", + "nemoretriever_parse", "adobe", ] diff --git a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py similarity index 85% rename from src/nv_ingest/extraction_workflows/pdf/eclair_helper.py rename to src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py index a7d4d929..3480b13d 100644 --- a/src/nv_ingest/extraction_workflows/pdf/eclair_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py @@ -38,7 +38,7 @@ from nv_ingest.util.exception_handlers.pdf import pdfium_exception_handler from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 -from nv_ingest.util.nim import eclair as eclair_utils +from nv_ingest.util.nim import nemoretriever_parse as nemoretriever_parse_utils from nv_ingest.util.nim.helpers import create_inference_client from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable @@ -54,10 +54,10 @@ DEFAULT_MAX_HEIGHT = 1280 -# Define a helper function to use eclair to extract text from a base64 encoded bytestram PDF -def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: bool, **kwargs): +# Define a helper function to use nemoretriever_parse to extract text from a base64 encoded bytestram PDF +def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: bool, **kwargs): """ - Helper function to use eclair to extract text from a bytestream PDF. + Helper function to use nemoretriever_parse to extract text from a bytestream PDF. Parameters ---------- @@ -77,10 +77,10 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: str A string of extracted text. """ - logger.debug("Extracting PDF with eclair backend.") + logger.debug("Extracting PDF with nemoretriever_parse backend.") - eclair_config = kwargs.get("eclair_config", {}) - eclair_config = eclair_config if eclair_config is not None else {} + nemoretriever_parse_config = kwargs.get("nemoretriever_parse_config", {}) + nemoretriever_parse_config = nemoretriever_parse_config if nemoretriever_parse_config is not None else {} row_data = kwargs.get("row_data") # get source_id @@ -127,7 +127,7 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: accumulated_tables = [] accumulated_images = [] - eclair_client = _create_clients(eclair_config) + nemoretriever_parse_client = _create_clients(nemoretriever_parse_config) for page_idx in range(pdf_metadata.page_count): page = doc.get_page(page_idx) @@ -140,7 +140,7 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: } page_image = _convert_pdfium_page_to_numpy(page) - response = _send_inference_request(eclair_client, page_image) + response = _send_inference_request(nemoretriever_parse_client, page_image) for bbox_dict in response: cls = bbox_dict["type"] @@ -154,7 +154,7 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), ] - if cls not in eclair_utils.ACCEPTED_CLASSES: + if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: continue if identify_nearby_objects: @@ -184,7 +184,7 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: ) accumulated_images.append(image) - # If Eclair fails to extract anything, fall back to using pdfium. + # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. if not "".join(accumulated_text).strip(): textpage = page.get_textpage() page_text = textpage.get_text_bounded() @@ -258,38 +258,38 @@ def eclair(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: if len(text_extraction) > 0: extracted_data.append(text_extraction) - eclair_client.close() + nemoretriever_parse_client.close() doc.close() return extracted_data -def _create_clients(eclair_config): - model_interface = eclair_utils.EclairModelInterface() - eclair_client = create_inference_client( - eclair_config.eclair_endpoints, +def _create_clients(nemoretriever_parse_config): + model_interface = nemoretriever_parse_utils.NemoRetrieverParseModelInterface() + nemoretriever_parse_client = create_inference_client( + nemoretriever_parse_config.nemoretriever_parse_endpoints, model_interface, - eclair_config.auth_token, - eclair_config.eclair_infer_protocol, + nemoretriever_parse_config.auth_token, + nemoretriever_parse_config.nemoretriever_parse_infer_protocol, ) - return eclair_client + return nemoretriever_parse_client def _send_inference_request( - eclair_client, + nemoretriever_parse_client, image_array: np.ndarray, ) -> Dict[str, Any]: try: # NIM only supports processing one page at a time (batch size = 1). data = {"image": image_array} - response = eclair_client.infer( + response = nemoretriever_parse_client.infer( data=data, - model_name="eclair", + model_name="nemoretriever_parse", ) except Exception as e: - logger.error(f"Unhandled error during Eclair inference: {e}") + logger.error(f"Unhandled error during NemoRetrieverParse inference: {e}") traceback.print_exc() raise e @@ -315,11 +315,11 @@ def _insert_page_nearby_blocks( txt: str, bbox: str, ): - if cls in eclair_utils.ACCEPTED_TEXT_CLASSES: + if cls in nemoretriever_parse_utils.ACCEPTED_TEXT_CLASSES: nearby_blocks_key = "text" - elif cls in eclair_utils.ACCEPTED_TABLE_CLASSES: + elif cls in nemoretriever_parse_utils.ACCEPTED_TABLE_CLASSES: nearby_blocks_key = "structured" - elif cls in eclair_utils.ACCEPTED_IMAGE_CLASSES: + elif cls in nemoretriever_parse_utils.ACCEPTED_IMAGE_CLASSES: nearby_blocks_key = "images" page_nearby_blocks[nearby_blocks_key]["content"].append(txt) @@ -327,7 +327,7 @@ def _insert_page_nearby_blocks( page_nearby_blocks[nearby_blocks_key]["type"].append(cls) -@pdfium_exception_handler(descriptor="eclair") +@pdfium_exception_handler(descriptor="nemoretriever_parse") def _construct_table_metadata( table: LatexTable, page_idx: int, diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index 12968eec..f63bf850 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -94,17 +94,17 @@ def validate_endpoints(cls, values): model_config = ConfigDict(extra="forbid") -class EclairConfigSchema(BaseModel): +class NemoRetrieverParseConfigSchema(BaseModel): """ - Configuration schema for Eclair endpoints and options. + Configuration schema for NemoRetrieverParse endpoints and options. Parameters ---------- auth_token : Optional[str], default=None Authentication token required for secure services. - eclair_endpoints : Tuple[str, str] - A tuple containing the gRPC and HTTP services for the eclair endpoint. + nemoretriever_parse_endpoints : Tuple[str, str] + A tuple containing the gRPC and HTTP services for the nemoretriever_parse endpoint. Either the gRPC or HTTP service can be empty, but not both. Methods @@ -125,8 +125,8 @@ class EclairConfigSchema(BaseModel): auth_token: Optional[str] = None - eclair_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) - eclair_infer_protocol: str = "" + nemoretriever_parse_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) + nemoretriever_parse_infer_protocol: str = "" @model_validator(mode="before") @classmethod @@ -150,7 +150,7 @@ def validate_endpoints(cls, values): If both gRPC and HTTP services are empty for any endpoint. """ - for model_name in ["eclair"]: + for model_name in ["nemoretriever_parse"]: endpoint_name = f"{model_name}_endpoints" grpc_service, http_service = values.get(endpoint_name) grpc_service = _clean_service(grpc_service) @@ -197,7 +197,7 @@ class PDFExtractorSchema(BaseModel): raise_on_failure: bool = False pdfium_config: Optional[PDFiumConfigSchema] = None - eclair_config: Optional[EclairConfigSchema] = None + nemoretriever_parse_config: Optional[NemoRetrieverParseConfigSchema] = None model_config = ConfigDict(extra="forbid") diff --git a/src/nv_ingest/stages/pdf_extractor_stage.py b/src/nv_ingest/stages/pdf_extractor_stage.py index 1186ad26..f8e4664d 100644 --- a/src/nv_ingest/stages/pdf_extractor_stage.py +++ b/src/nv_ingest/stages/pdf_extractor_stage.py @@ -88,8 +88,8 @@ def decode_and_extract( if validated_config.pdfium_config is not None: extract_params["pdfium_config"] = validated_config.pdfium_config - if validated_config.eclair_config is not None: - extract_params["eclair_config"] = validated_config.eclair_config + if validated_config.nemoretriever_parse_config is not None: + extract_params["nemoretriever_parse_config"] = validated_config.nemoretriever_parse_config if trace_info is not None: extract_params["trace_info"] = trace_info diff --git a/src/nv_ingest/util/nim/eclair.py b/src/nv_ingest/util/nim/nemoretriever_parse.py similarity index 86% rename from src/nv_ingest/util/nim/eclair.py rename to src/nv_ingest/util/nim/nemoretriever_parse.py index 7fba86cc..0fa1b791 100644 --- a/src/nv_ingest/util/nim/eclair.py +++ b/src/nv_ingest/util/nim/nemoretriever_parse.py @@ -42,9 +42,9 @@ logger = logging.getLogger(__name__) -class EclairModelInterface(ModelInterface): +class NemoRetrieverParseModelInterface(ModelInterface): """ - An interface for handling inference with a Eclair model. + An interface for handling inference with a NemoRetrieverParse model. """ def name(self) -> str: @@ -56,7 +56,7 @@ def name(self) -> str: str The name of the model interface. """ - return "eclair" + return "nemoretriever_parse" def prepare_data_for_inference(self, data: Dict[str, Any]) -> Dict[str, Any]: """ @@ -100,12 +100,12 @@ def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: """ if protocol == "grpc": - raise ValueError("gRPC protocol is not supported for Eclair.") + raise ValueError("gRPC protocol is not supported for NemoRetrieverParse.") elif protocol == "http": - logger.debug("Formatting input for HTTP Eclair model") + logger.debug("Formatting input for HTTP NemoRetrieverParse model") # Prepare payload for HTTP request base64_img = numpy_to_base64(data["image"]) - payload = self._prepare_eclair_payload(base64_img) + payload = self._prepare_nemoretriever_parse_payload(base64_img) return [payload] else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") @@ -135,16 +135,16 @@ def parse_output(self, response: Any, protocol: str, data: Optional[Dict[str, An """ if protocol == "grpc": - raise ValueError("gRPC protocol is not supported for Eclair.") + raise ValueError("gRPC protocol is not supported for NemoRetrieverParse.") elif protocol == "http": - logger.debug("Parsing output from HTTP Eclair model") - return self._extract_content_from_eclair_response(response) + logger.debug("Parsing output from HTTP NemoRetrieverParse model") + return self._extract_content_from_nemoretriever_parse_response(response) else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") def process_inference_results(self, output: Any, **kwargs) -> Any: """ - Process inference results for the Eclair model. + Process inference results for the NemoRetrieverParse model. Parameters ---------- @@ -159,7 +159,7 @@ def process_inference_results(self, output: Any, **kwargs) -> Any: return output - def _prepare_eclair_payload(self, base64_img: str) -> Dict[str, Any]: + def _prepare_nemoretriever_parse_payload(self, base64_img: str) -> Dict[str, Any]: messages = [ { "role": "user", @@ -180,7 +180,7 @@ def _prepare_eclair_payload(self, base64_img: str) -> Dict[str, Any]: return payload - def _extract_content_from_eclair_response(self, json_response: Dict[str, Any]) -> Any: + def _extract_content_from_nemoretriever_parse_response(self, json_response: Dict[str, Any]) -> Any: """ Extract content from the JSON response of a Deplot HTTP API request. diff --git a/src/nv_ingest/util/pipeline/pipeline_runners.py b/src/nv_ingest/util/pipeline/pipeline_runners.py index dea8d356..c9d062a0 100644 --- a/src/nv_ingest/util/pipeline/pipeline_runners.py +++ b/src/nv_ingest/util/pipeline/pipeline_runners.py @@ -38,8 +38,10 @@ class PipelineCreationSchema(BaseModel): cached_infer_protocol: str = "http" deplot_http_endpoint: str = os.getenv("DEPLOT_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/google/deplot") deplot_infer_protocol: str = "http" - eclair_http_endpoint: str = os.getenv("ECLAIR_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/nvidia/eclair") - eclair_infer_protocol: str = "http" + nemoretriever_parse_http_endpoint: str = os.getenv( + "NEMORETRIEVER_PARSE_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/nvidia/nemoretriever_parse" + ) + nemoretriever_parse_infer_protocol: str = "http" embedding_nim_endpoint: str = os.getenv("EMBEDDING_NIM_ENDPOINT", "https://integrate.api.nvidia.com/v1") embedding_nim_model_name: str = os.getenv("EMBEDDING_NIM_MODEL_NAME", "nvidia/nv-embedqa-e5-v5") ingest_log_level: str = os.getenv("INGEST_LOG_LEVEL", "INFO") diff --git a/src/nv_ingest/util/pipeline/stage_builders.py b/src/nv_ingest/util/pipeline/stage_builders.py index 2c7b8afa..c2e8758d 100644 --- a/src/nv_ingest/util/pipeline/stage_builders.py +++ b/src/nv_ingest/util/pipeline/stage_builders.py @@ -181,7 +181,9 @@ def add_metadata_injector_stage(pipe, morpheus_pipeline_config): def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, default_cpu_count): yolox_grpc, yolox_http, yolox_auth, yolox_protocol = get_nim_service("yolox") - eclair_grpc, eclair_http, eclair_auth, eclair_protocol = get_nim_service("eclair") + nemoretriever_parse_grpc, nemoretriever_parse_http, nemoretriever_parse_auth, nemoretriever_parse_protocol = ( + get_nim_service("nemoretriever_parse") + ) pdf_content_extractor_config = ingest_config.get( "pdf_content_extraction_module", { @@ -190,10 +192,10 @@ def add_pdf_extractor_stage(pipe, morpheus_pipeline_config, ingest_config, defau "yolox_infer_protocol": yolox_protocol, "auth_token": yolox_auth, # All auth tokens are the same for the moment }, - "eclair_config": { - "eclair_endpoints": (eclair_grpc, eclair_http), - "eclair_infer_protocol": eclair_protocol, - "auth_token": eclair_auth, # All auth tokens are the same for the moment + "nemoretriever_parse_config": { + "nemoretriever_parse_endpoints": (nemoretriever_parse_grpc, nemoretriever_parse_http), + "nemoretriever_parse_infer_protocol": nemoretriever_parse_protocol, + "auth_token": nemoretriever_parse_auth, # All auth tokens are the same for the moment }, }, ) diff --git a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py b/tests/nv_ingest/extraction_workflows/pdf/test_nemoretriever_parse_helper.py similarity index 81% rename from tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py rename to tests/nv_ingest/extraction_workflows/pdf/test_nemoretriever_parse_helper.py index 7489f7f9..7853d505 100644 --- a/tests/nv_ingest/extraction_workflows/pdf/test_eclair_helper.py +++ b/tests/nv_ingest/extraction_workflows/pdf/test_nemoretriever_parse_helper.py @@ -6,15 +6,15 @@ import pandas as pd import pytest -from nv_ingest.extraction_workflows.pdf.eclair_helper import _construct_table_metadata -from nv_ingest.extraction_workflows.pdf.eclair_helper import eclair +from nv_ingest.extraction_workflows.pdf.nemoretriever_parse_helper import _construct_table_metadata +from nv_ingest.extraction_workflows.pdf.nemoretriever_parse_helper import nemoretriever_parse from nv_ingest.schemas.metadata_schema import AccessLevelEnum from nv_ingest.schemas.metadata_schema import TextTypeEnum -from nv_ingest.util.nim import eclair as eclair_utils +from nv_ingest.util.nim import nemoretriever_parse as nemoretriever_parse_utils from nv_ingest.util.pdf.metadata_aggregators import Base64Image from nv_ingest.util.pdf.metadata_aggregators import LatexTable -_MODULE_UNDER_TEST = "nv_ingest.extraction_workflows.pdf.eclair_helper" +_MODULE_UNDER_TEST = "nv_ingest.extraction_workflows.pdf.nemoretriever_parse_helper" @pytest.fixture @@ -35,7 +35,7 @@ def sample_pdf_stream(): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): +def test_nemoretriever_parse_text_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = [ @@ -46,14 +46,14 @@ def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): } ] - result = eclair( + result = nemoretriever_parse( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(), + nemoretriever_parse_config=MagicMock(), ) assert len(result) == 1 @@ -63,7 +63,7 @@ def test_eclair_text_extraction(mock_client, sample_pdf_stream, document_df): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): +def test_nemoretriever_parse_table_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = [ @@ -74,14 +74,14 @@ def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): } ] - result = eclair( + result = nemoretriever_parse( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=True, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(), + nemoretriever_parse_config=MagicMock(), ) assert len(result) == 2 @@ -93,7 +93,7 @@ def test_eclair_table_extraction(mock_client, sample_pdf_stream, document_df): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): +def test_nemoretriever_parse_image_extraction(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = [ @@ -104,14 +104,14 @@ def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): } ] - result = eclair( + result = nemoretriever_parse( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=True, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(), + nemoretriever_parse_config=MagicMock(), ) assert len(result) == 2 @@ -123,7 +123,7 @@ def test_eclair_image_extraction(mock_client, sample_pdf_stream, document_df): @patch(f"{_MODULE_UNDER_TEST}.create_inference_client") -def test_eclair_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): +def test_nemoretriever_parse_text_extraction_bboxes(mock_client, sample_pdf_stream, document_df): mock_client_instance = MagicMock() mock_client.return_value = mock_client_instance mock_client_instance.infer.return_value = [ @@ -139,14 +139,14 @@ def test_eclair_text_extraction_bboxes(mock_client, sample_pdf_stream, document_ }, ] - result = eclair( + result = nemoretriever_parse( pdf_stream=sample_pdf_stream, extract_text=True, extract_images=False, extract_tables=False, row_data=document_df.iloc[0], text_depth="page", - eclair_config=MagicMock(), + nemoretriever_parse_config=MagicMock(), ) assert len(result) == 1 From 1c8f4fdbe7cfc7aeb71070ee48fc70197e9f4b37 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Tue, 11 Feb 2025 05:24:33 +0000 Subject: [PATCH 30/37] clean up --- docs/SUMMARY.md | 2 - docs/assets/css/color-schemes.css | 95 ----- docs/assets/css/custom-material.css | 180 --------- docs/assets/css/fonts.css | 41 -- docs/assets/css/jupyter-themes.css | 21 - docs/assets/images/doughnut_batch_dize.png | Bin 8835 -> 0 bytes docs/assets/images/generate_personal_key.png | Bin 43641 -> 0 bytes docs/assets/images/image_viewer_example.png | Bin 162306 -> 0 bytes docs/assets/images/preview-image.png | Bin 347414 -> 0 bytes docs/assets/images/prometheus.png | Bin 64370 -> 0 bytes docs/assets/images/test.pdf.png | Bin 369375 -> 0 bytes docs/assets/images/zipkin.png | Bin 156885 -> 0 bytes docs/assets/preview-image.png | Bin 347414 -> 0 bytes docs/docs/assets/images/eclair_batch_size.png | Bin 8835 -> 0 bytes docs/index.md | 19 - docs/user-guide/SUMMARY.md | 5 - .../appendix/releasenotes-nv-ingest.md | 3 - .../Writing Documentation/index.md | 52 --- .../jupyter-notebooks.ipynb | 164 -------- .../Writing Documentation/mkdocs.md | 7 - docs/user-guide/contributing/code-review.md | 3 - docs/user-guide/contributing/contributing.md | 12 - docs/user-guide/developer-guide/SUMMARY.md | 8 - .../developer-guide/content-metadata.md | 53 --- docs/user-guide/developer-guide/deployment.md | 39 -- .../developer-guide/environment-config.md | 68 ---- .../text/multimodal_test.pdf.metadata.json | 0 .../developer-guide/kubernetes-dev.md | 379 ------------------ .../user-guide/developer-guide/ngc-api-key.md | 25 -- .../developer-guide/nv-ingest_cli.md | 243 ----------- docs/user-guide/developer-guide/telemetry.md | 23 -- docs/user-guide/getting-started/SUMMARY.md | 2 - .../getting-started/prerequisites.md | 18 - .../getting-started/quickstart-guide.md | 361 ----------------- docs/user-guide/index.md | 23 -- 35 files changed, 1846 deletions(-) delete mode 100644 docs/SUMMARY.md delete mode 100644 docs/assets/css/color-schemes.css delete mode 100644 docs/assets/css/custom-material.css delete mode 100644 docs/assets/css/fonts.css delete mode 100644 docs/assets/css/jupyter-themes.css delete mode 100644 docs/assets/images/doughnut_batch_dize.png delete mode 100644 docs/assets/images/generate_personal_key.png delete mode 100644 docs/assets/images/image_viewer_example.png delete mode 100644 docs/assets/images/preview-image.png delete mode 100644 docs/assets/images/prometheus.png delete mode 100644 docs/assets/images/test.pdf.png delete mode 100644 docs/assets/images/zipkin.png delete mode 100644 docs/assets/preview-image.png delete mode 100644 docs/docs/assets/images/eclair_batch_size.png delete mode 100644 docs/index.md delete mode 100644 docs/user-guide/SUMMARY.md delete mode 100644 docs/user-guide/appendix/releasenotes-nv-ingest.md delete mode 100644 docs/user-guide/contributing/Writing Documentation/index.md delete mode 100644 docs/user-guide/contributing/Writing Documentation/jupyter-notebooks.ipynb delete mode 100644 docs/user-guide/contributing/Writing Documentation/mkdocs.md delete mode 100644 docs/user-guide/contributing/code-review.md delete mode 100644 docs/user-guide/contributing/contributing.md delete mode 100644 docs/user-guide/developer-guide/SUMMARY.md delete mode 100644 docs/user-guide/developer-guide/content-metadata.md delete mode 100644 docs/user-guide/developer-guide/deployment.md delete mode 100644 docs/user-guide/developer-guide/environment-config.md delete mode 100644 docs/user-guide/developer-guide/example_processed_docs/text/multimodal_test.pdf.metadata.json delete mode 100644 docs/user-guide/developer-guide/kubernetes-dev.md delete mode 100644 docs/user-guide/developer-guide/ngc-api-key.md delete mode 100644 docs/user-guide/developer-guide/nv-ingest_cli.md delete mode 100644 docs/user-guide/developer-guide/telemetry.md delete mode 100644 docs/user-guide/getting-started/SUMMARY.md delete mode 100644 docs/user-guide/getting-started/prerequisites.md delete mode 100644 docs/user-guide/getting-started/quickstart-guide.md delete mode 100644 docs/user-guide/index.md diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md deleted file mode 100644 index 2689c887..00000000 --- a/docs/SUMMARY.md +++ /dev/null @@ -1,2 +0,0 @@ -- [Home](index.md) -- [User Guide](user-guide/) diff --git a/docs/assets/css/color-schemes.css b/docs/assets/css/color-schemes.css deleted file mode 100644 index 0b199f5c..00000000 --- a/docs/assets/css/color-schemes.css +++ /dev/null @@ -1,95 +0,0 @@ -/* Light Theme */ -[data-md-color-scheme="light"] { - --md-primary-fg-color: #76b900; - --md-primary-fg-color--light: #8ed100; - --md-primary-fg-color--dark: #5f9300; - --md-primary-bg-color: #ffffff; - --md-accent-fg-color: #76b900; /* Changed to green */ - - --md-default-fg-color: #333333; - --md-default-fg-color--light: #666666; - --md-default-fg-color--lighter: #999999; - --md-default-fg-color--lightest: #cccccc; - --md-default-bg-color: #ffffff; - - --md-code-fg-color: #24292e; - --md-code-bg-color: #f6f8fa; - - --md-typeset-color: var(--md-default-fg-color); - --md-typeset-a-color: var(--md-accent-fg-color); - - --md-admonition-bg-color: var(--md-default-bg-color); - --md-admonition-fg-color: var(--md-default-fg-color); - /* footer */ - --md-footer-bg-color: white; - --md-footer-fg-color: var(--md-default-fg-color); - --md-footer-bg-color--dark: white; - --md-footer-fg-color--light: var(--md-default-fg-color); - --md-footer-border-bottom: 1px solid #c9d1d9; - --md-header-border: 1px solid #c9d1d9; - --svg-color: black; - --md-header-bg-color: white; - --md-header-color: black; - --md-search-hover-color: #999999; -} - -/* Dark Theme */ -[data-md-color-scheme="dark"] { - --md-primary-fg-color: #76b900; - --md-primary-fg-color--light: #8ed100; - --md-primary-fg-color--dark: #5f9300; - --md-primary-bg-color: #1a1a1a; - /* Lighter green for better visibility in dark mode */ - --md-accent-fg-color: #8ed100; - /* text color */ - --md-default-fg-color: #ffffff; - /* title text */ - --md-default-fg-color--light: white; - /* scroll bar */ - --md-default-fg-color--lighter: #999999; - /* code copy */ - --md-default-fg-color--lightest: #666666; - --md-default-bg-color: #1a1a1a; - /* code color */ - --md-code-fg-color: #c9d1d9; - --md-code-bg-color: #2a2a2a; - - --md-typeset-color: var(--md-default-fg-color); - --md-typeset-a-color: var(--md-accent-fg-color); - - --md-admonition-bg-color: #2a2a2a; - --md-admonition-fg-color: var(--md-default-fg-color); - --md-footer-bg-color: #2a2a2a; - --md-footer-fg-color: #cccccc; - /* footer */ - --md-footer-bg-color: #1a1a1a; - --md-footer-fg-color: #ffffff; - --md-footer-bg-color--dark: #1a1a1a; - --md-footer-fg-color--light: #ffffff; - - --md-footer-border: 0px solid #c9d1d9; - --md-footer-border-bottom: 1px solid #2a2a2a; - --md-header-border: 0px solid #c9d1d9; - --svg-color: white; - --md-header-bg-color: #1a1a1a; - --md-header-color: white; - --md-search-hover-color: #2a2a2a; - --md-shadow-z2: 0.5px 1px 2px rgba(255, 255, 255, 0.25); - - /* code */ - --md-code-fg-color: #d4d4d4; - --md-code-bg-color: #1e1e1e; - --md-code-hl-color: rgba(255, 255, 255, 0.1); - --md-code-hl-number-color: #b5cea8; - --md-code-hl-special-color: #d7ba7d; - --md-code-hl-function-color: #dcdcaa; - --md-code-hl-constant-color: #4ec9b0; - --md-code-hl-keyword-color: #c586c0; - --md-code-hl-string-color: #ce9178; - --md-code-hl-name-color: #9cdcfe; - --md-code-hl-operator-color: #d4d4d4; - --md-code-hl-punctuation-color: #d4d4d4; - --md-code-hl-comment-color: #6a9955; - --md-code-hl-generic-color: #d4d4d4; - --md-code-hl-variable-color: #9cdcfe; -} diff --git a/docs/assets/css/custom-material.css b/docs/assets/css/custom-material.css deleted file mode 100644 index fc486078..00000000 --- a/docs/assets/css/custom-material.css +++ /dev/null @@ -1,180 +0,0 @@ -:root { - --md-text-font: "NVIDIA Sans", -apple-system, BlinkMacSystemFont, Segoe UI, - Roboto, Helvetica Neue, Arial, sans-serif; - --md-code-font: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, - monospace; -} - -.md-header, -.md-tabs { - background-color: var(--md-header-bg-color); - color: var(--md-header-color); -} - -.md-tabs { - border-bottom: var(--md-footer-border-bottom); -} - -.md-header__title { - font-weight: 600; -} - -.md-nav__item { - margin-top: 0.2rem; -} - -.md-nav__link { - color: var(--md-nav-color); -} - -.md-nav__link:hover { - color: var(--md-nav-color); -} - -.md-typeset h1, -.md-typeset h2 { - font-weight: 600; - color: var(--md-default-fg-color); -} - -.md-typeset a { - color: var(--md-accent-fg-color); - font-weight: bold; - transition: color 0.2s; -} - -.md-typeset a:hover { - text-decoration: underline; -} - -.md-typeset code { - background-color: var(--md-code-bg-color); - color: var(--md-code-fg-color); - padding: 0.2em 0.4em; - border-radius: 3px; -} - -.md-typeset pre { - background-color: var(--md-code-bg-color); - border-radius: 6px; - padding: 1em; -} - -.md-footer { - background-color: var(--md-footer-bg-color); - color: var(--md-footer-fg-color); -} - -/* Admonitions */ -.md-typeset .admonition { - border-left-width: 4px; - border-radius: 4px; -} - -.md-typeset .admonition-title { - font-weight: 600; -} - -.md-typeset .admonition.under-construction, -.md-typeset .admonition.to-do, -.md-typeset .admonition.new-item, -.md-typeset .admonition.time, -.md-typeset .admonition.oci-only, -.md-typeset .admonition.azure-only { - border-left-width: 4px; - border-radius: 4px; -} - -.md-typeset .md-button { - color: var(--md-accent-fg-color); - border: 1px solid var(--md-accent-fg-color); - border-radius: 4px; - padding: 0.5em 1em; - font-weight: 600; - transition: background-color 0.2s, color 0.2s; -} - -.md-typeset .md-button:hover { - background-color: var(--md-accent-fg-color); - color: var(--md-primary-bg-color); -} - -/* Tables */ -.md-typeset table { - border-collapse: separate; - border-spacing: 0; - border: 1px solid var(--md-default-fg-color--lighter); - border-radius: 4px; - overflow: hidden; -} - -.md-typeset table th { - background-color: var(--md-default-fg-color--lightest); - font-weight: 600; -} - -.md-typeset table th, -.md-typeset table td { - border: 1px solid var(--md-default-fg-color--lighter); - padding: 0.75em 1em; -} - -/* Images */ -.md-typeset img { - border: 1px solid var(--md-default-fg-color--lighter); - border-radius: 4px; -} - -.md-footer { - border-top: var(--md-footer-border); -} - -#logo_light_mode { - display: var(--md-footer-logo-light-mode); -} - -#logo_dark_mode { - display: var(--md-footer-logo-dark-mode); -} - -#logo_light_mode { - display: var(--md-footer-logo-light-mode); -} - -#logo_dark_mode { - display: var(--md-footer-logo-dark-mode); -} - -.md-header__button.md-logo svg { - fill: var(--svg-color); -} - -.md-copyright { - color: var(--md-header-color); -} - -.md-grid { - max-width: 67rem; -} - -.md-search__form:hover { - background-color: var(--md-search-hover-color); -} - -.md-search__icon svg { - fill: #ffffff; -} - -.md-typeset .grid.cards > ul > li:hover { - border-color: var(--md-default-fg-color--lightest); -} - -.md-typeset .grid { - grid-template-columns: repeat(2, minmax(min(100%, 16rem), 1fr)); -} - -@media (max-width: 768px) { - .md-typeset .grid { - grid-template-columns: 1fr; - } -} diff --git a/docs/assets/css/fonts.css b/docs/assets/css/fonts.css deleted file mode 100644 index e753210b..00000000 --- a/docs/assets/css/fonts.css +++ /dev/null @@ -1,41 +0,0 @@ -@font-face { - font-family: "NVIDIA Sans"; - font-style: normal; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_Lt.woff2); - font-weight: light; -} - -@font-face { - font-family: "NVIDIA Sans"; - font-style: italic; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_LtIt.woff2); - font-weight: light; -} - -@font-face { - font-family: "NVIDIA Sans"; - font-style: normal; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_Rg.woff2); - font-weight: normal; -} - -@font-face { - font-family: "NVIDIA Sans"; - font-style: italic; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_It.woff2); - font-weight: normal; -} - -@font-face { - font-family: "NVIDIA Sans"; - font-style: normal; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_Bd.woff2); - font-weight: bold; -} - -@font-face { - font-family: "NVIDIA Sans"; - font-style: italic; - src: url(https://brand-assets.cne.ngc.nvidia.com/assets/fonts/nvidia-sans/1.0.0/NVIDIASans_BdIt.woff2); - font-weight: bold; -} diff --git a/docs/assets/css/jupyter-themes.css b/docs/assets/css/jupyter-themes.css deleted file mode 100644 index 3073cd7b..00000000 --- a/docs/assets/css/jupyter-themes.css +++ /dev/null @@ -1,21 +0,0 @@ -/* theme: light */ -body[data-md-color-scheme="light"] .jupyter-notebook { - --jp-cell-editor-background: #f7f7f7; - --jp-cell-editor-border-color: #cfcfcf; - --jp-cell-prompt-fg-color: #303030; - --jp-cell-prompt-bg-color: #f0f0f0; - --jp-notebook-background: #ffffff; - --jp-layout-color1: #ffffff; - --jp-content-font-color1: #000000; -} - -/* theme: dark */ -body[data-md-color-scheme="dark"] .jupyter-notebook { - --jp-cell-editor-background: #2b2b2b; - --jp-cell-editor-border-color: #464646; - --jp-cell-prompt-fg-color: #d7d7d7; - --jp-cell-prompt-bg-color: #333333; - --jp-notebook-background: #1e1e1e; - --jp-layout-color1: #1e1e1e; - --jp-content-font-color1: #d4d4d4; -} diff --git a/docs/assets/images/doughnut_batch_dize.png b/docs/assets/images/doughnut_batch_dize.png deleted file mode 100644 index b3ae9598ed13d3bda2613a39e9461770e7af1c56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8835 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 diff --git a/docs/assets/images/generate_personal_key.png b/docs/assets/images/generate_personal_key.png deleted file mode 100644 index 62d68cb4326339a35d4d98f1538ae0f5e935791d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43641 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

a8u`Kg$}gW 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 MTs)m5edFH$0O*Y%>;M1& diff --git a/docs/assets/images/image_viewer_example.png b/docs/assets/images/image_viewer_example.png deleted file mode 100644 index 1aa7b48156cd2ebd4286e712f98c4f4768e6e7bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162306 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 ^Ev1@W#1@syr>s) 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%0De+_1i3f?*#k1AA!n)i=Fu)5dW75#1A3( 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

SXDFQoJv3wSfmqrtWw! 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 diff --git a/docs/assets/images/prometheus.png b/docs/assets/images/prometheus.png deleted file mode 100644 index b753c22c348d65424199af21707c954f02bf4497..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64370 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≠%N_-bJ&#=aQi=R-xU_xR~hT8nFq%s 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

Vutbw1rYt8`3qSO`DK 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 z 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

tJ=BxO-ghDi$438LnmC;0aqW<#DN%&Qen0 zsIyBbDzTSVxQfecWmWdt8gFyGhw%zL-lsHyQ8;fP2rLpvY< z6k$Isa%m$pNZ8@6Z0dG4g$s)Cwo#XYx{HAvmP|=C4|pVYz7412Bl*Og0=Cakr^Gv0 z3qtNVkOB@Gqun|PvBV*r7#+ZQ!yR0jCDO^CU^~+P!>zu1!#zJ@N(Mej!#ze9M+sjX zU8zkcf#4=oAbFzf_6aryK1->P+D#4w4hL1waww_j8O?;D2Y5vgLL$1aks&F(tP4s) z#cowomT?8qFw$WQJ!>L5DhMqANX(Cn>jnx~c|qX=rYxez8);AN4qJKBcM1a_(2)3u zCMSq9YRm{_BBXOQjZ=_8BCkZwl*KL~AoN%P#vGO809+y6nf`pLHA|8k z(x_h`^2=VL*(jjn9VS^ubeZ)BZZ^3p%DVs&iz^*v70$Y9Pj$7cy2e#gi=|PDhz}k% z)ccy6*qhDV%@(e?+27gD*t-Ib4#w5x4|oD9FB_teP%*X|Lpq7p5O5KDh)8--296Xh ze|2;k!YXcr`W^OU&~X>dZ?SEd3QH3G*nyS8EgmL`Q5zMT;v|f^I|0N-;NFeJSkB;h z#lr+_jIWcu{Qdb?9)EP~Z~ytJfBIj~{_{UgdhGYJpLlHElaDQV?#cD9z4XqMNxNpe z`N`~=`xnmpYUzTnmdro2aQYYXCw?(+(xC;D4=iClF45K94?!DWXXhY zmW%^XJh^(}$u$$ttetdr-NXwUCSBM#@!X~fH{O|6ynXtWO_Q!{nOweWZuzcx#XDw} zzBi}*{RNk|ym@}}l=EAromxNT^u{^gubun-`k5DYENT39cl+rtZ5NNZZk+K{6{(Jn zu)uN*BV!+jSM&P;$$;LaLcu~r>yGL~Vu59$?g$FxM_^`|Mm-eWd-R6c;gAkU;T3zn95b+q{vPO+3&z$^1U zL1IO?ar1sL;Nb%vPGlrK7}A3>s@BkUPEk1-Ze*IMn6erRY1tUndRrOdNev^W>p*cL zAtS6JTY{T=62m17;;9{m7bJ9SWyJnKvR(!3Q1yF&3Jl7Q>8{N?W8pYII(d>e6*I+g#3>$NyF0XhzI6qu=?`ZJHqwD4AQ=zgNYg&uTyBZ3S( zm^x>|TN(h~Y@xes66Oj999<->8z~bTono41N|Gi94LoCdOwpqf#%^Sz5tuIIV=+Lo z9C45VR0E0`h3Tq=KNtz&T4U1GNb3!-G}2=kHnA7f(BmNmUYsSyH*jfDFCN+{(>Llf zkQzZm#FpBA%zRE`eZDt0(w`sh%>gLh>Mz{t$zeV-k^NBTJYw2Md}WDRgVt0FsFT4Z z#+a&Da1*u%O3T{Hs+@p`HGqgUE&#&HDhFU84A`%$_rj>H^)xhio12-NH`$vv12=E_ z01<7Sth1Bx+F8zvZUBIY@UN#>6_bNN5CIoqCug9qCK?)qjY2$(Vwf}nb3f`SW4+jN zMUM+@p6CJMiYdWbUOY1_Q` ztre4|9(;TI*E@I4ed&dHPd`3)%wzMPeSGE1FK(VVZpWL`KAbgk&z#x&7t94j{BqHZ z{qrX6n>%s;{7GLdoN{>aw8KlLezj!E;U$y5Svu*Pr4zqiI{wJ=@yAzAJh5`ZcPq!A zT0P;^+VST$OuD#f(#4IFir$`ndE?|WYsX#MI;Hr%ImPeK0bW?NW8U>0^Db*9f@ihS#Vbug(U3%}4yj*8`4ttFL>IYVgU_o3#I7&5Eii z;AVtthqneWm>!XDG+g4(_mhwQdS{UMR+C#c3@U-YpU{MI^}p-liKw5%Ho=|!ZeR9p zPx@XVdk6K4>48L|F9GxANFf@I>n7t5xom-i5$VNFghVb9&qNZ*aMV)OkRXZvK!^vv zqMCBZkPs1NR+N~a6p%%K5Rg)U87dRBB$epUf!xTJDn~Rm914XMBcd7+k~oN=gSttC zZaTaSxRE7GaXFYqM+qGWf$VizLV%h@5fdp~M1=eJ2-d+8l<5LN?9aqU;M5T}4eUfs z#puU=Ac>9`B##ts0T#(7rTr9WM%9P93uHpK3YmL@IXJgJ4fZA zc8G{rUTG_@Ac)vN5z*b)2#Dx!X<^CmcXhCKK*X*9Fe|svWerWj0Im?L zcwoSVum$J^Cp-uLMC<`h0}2AXQ3^{bFMYQU-ZrBCs5{dAZ{?6dV$W16PJ3uk$^!RF zxMgzz)yISwAf~*+auO@Mo9t4jPxlIjKk(kN6_fw)=+YOTUGmbHnB}UKk3T)$yYZ{J-=zn@s+Qg+cf3I&Uu%&&APC8 z#)Y?Mo!>h1)TZg@HcUCWcEXW06Te(J?ZCQ)&YJQh&+2}k?D3gGz~KFH85mnI1>h7? zQwlO0%m_3TAc&~GCm#g(IP?%DKH?&&Ob#T%w^81Qh={Qgh60EP6Gz$t3frErLDL5* z!~*j5M%%i#X{q;pmv4^eB_~D<6 zdBw5_1hE%ePqEPywg}bf7@#A(y^&E*aNJU;qsT}5Xt2u$Zv~{wlrXjbPxgMCKNF8Zmj%RJy}RVQJrNJQySc z2(AcFr?WnbXW{%ugG7ml{iq(`i@ePRq?4>8`gBZShI1nP$`OC@bsrJ`=XQS&x?N*i zX?n0QYS=wM1OT)ycWku)Qgtm}fR2q7_`vYw#VA^IFa&KV52grHB<1R$DnSVis#AZp5*rRbIn^hh(L zP*?@X3~510N5)V(F`P*ZU_mblh=`&KoE|1f zCq2w_(*zMMN)3ld=o+pgW{^7$X8;kSDC!`l8%P%lXoh!hAp65GOcX|aS$`Pn{`2jA z$`OAYL6{^&oSs#>Sle^EFAx7Xv=ks|R!Cw3Owh#wM=V5?zPOG>>2$Imi_+LGL~i9s zf4d{$!l*D@P3bBSoh%kMVOkK%0NNQka6~i#hy4hetY)JoO%euD7zs%Un4emDE@ovg zJ`)jz!oaq(owao^E*s0bMZu2+2_T*DAE%CM zw0o#PYcD;>8mY zssBK&17V`NucZq{wrYDN(=rp95jS&b#|)>9c-l>8zWLQZ{pG*+4}bRWe&1KV=f49Y z{@maFo?rgq&;Htv{K&uiu^;;nKlu~C^~Im~%`g5>|Ne_#_}_qtU;M)F{Pf@dt)Kki z-}&Mfe)mgX_?<6(?)Sd*!+-eGpZ}w;eEtu=0#N+y*M9EvU;UXM`s1Jf+#mnb&wlM^ z|L%YJCqMLOKmWO}|C7)C`Okmu&wlZ9fBN%3^o?Ko!e9T&KltXa{`g<~&p-B;|LUjy z_@DjAH-7b}zWJ|y`oH|rkN*D8e*VvX?H8Z?<=3rP0&tQ~L>orB?UIKzb5^(LbplW6 z$NBf&;%!;8O6BxypexxI@Is=FQb#LffDM|m?FCa*#i&3^kT!s# z@-?KDF;O|MBx%N#fVo2noNl6^1oCs?g(_IO?zq@sq54%7+DNlMfHvRqB+_eURhYDx zvGOT1NE?1CU3Xk58nSD=hl~s>Dy-fe-Z+KA>C2ew1zZ8(Pt-AYnM{?mq8LkMvo)|@ zD~s8nV&eT;ZcMi$iCi*G^?xHn=PcX})BF?>Kk>8Wh?10IXT6mEQ?OeNF`B26wdw=_ zeWB+q=%B*3jnR_Yk}__r{uGH^BjS9d=;InJl^3AOH3BTp`ciVz0Klk;TSXMPDy(zT znYS7%)~U7@oHZI_qGqL6EcEd|hIxwrW|)XU5gOfcrIz!7bDot;g!K5akvz3yCua0W zPlZj-2m;1e{i1_&@$r_qN)4V1i{^DQrDIz`(pxvrH;Ia;!c)mab#LKGt6 zzZ%<%Ugz0(Fq0$@C%%3Y9C5~1h?RbE)~tgOP8x+(4-i;gcB;U_RlhF30t>MyE-gA> zlbj&1_>h$CfFaY>LI2agI&M zU41{75=3RLuG5%zIVR0&pAxT?&|&hu_fK!KrZjq=Wu@_l6bp2ZC%2~c|xnR1SwcE83^?J%&oPp`qOT$L_tW!U0*Z8^j zzv~MoFORQ~v2-@4QtD52sgm6a!JViKD0YCOz2>M>8*?GZl@>mlX3oWetZZd#u2W+n zPqvV?{ES)5+Q3LxOJ$>pXMgo` zKlrPk`~F}1{15#4Kls9L{M3*A+n@UTzwx6#^l!iLJ-_+mM8x0!@)v&hr$6)iU-{wR z`_gBB?@OQg!!Lj4|M<#h{^%<|^ao%1zOVkw5B$l`|M1to{JsDAAAj~6zxGcffAc2~ z|I=^0|LZ^ZjeqtdzxNY==W9Rn1Ap|D@B7dH^2?dq-`fAyU!@=4&L8g?kMG?7`kzE@ z-w5Jy{Ult$Ix?HB8kw5O%v>kPNgj@!cHAiy#+A~fUY<)QyDBtOSUB(0mc7QRTUQ-> zU{T9XZPq4OjwI{1upVY>YTTrkxwCFE|FPB@=LSFF;xvXy{y<{kxh?t4684qQ(n43*Gj^X9)0Qe^(@7sP3!^*ja zi{Y6$&-C1klgoO6?RiEvZ-@6xi@F4c^QT)-POR9^IOIIuvQo~%Tro_by*7o34N{S*)aDT$pOhR2oi z0B{j-IPM5(mh9t1g6&GQ8dy>nJCV9)R~-PML2)?8Y5J6W!jY2c=qJg&n+Ny*^5(z! z>3{T(|IUB^3*Y-c{NiUm^Q%AllmGso{PVB_3^!5KU`RIN(@0OA$?*7j1H@<%7PyW-vU;o*`U;Rnq?z^?D zRdd*O0;Cxhi*?(s7zRcu!)dqa<;cmh8StBq@8blbV6CLga)FD}ra<6E-bMZ+`0s%K z1x6G%y$z&a{H_+aWjJ$UWL5M|!57Oym57J{+F?0R-oLoM3Z*J(Q}*)bSSh2d>WMmO zTGAIZI}gr%beuUnF;8OVN!*X8eQ?}lvTA5mQ?EG;oB|G+ddyk9f=54L>CI=?M3tGv zZPZl3p*o`CqU41_4Yy&{m4sVqEQJ+SIS<}U-z)0r;AXOk0%%Rmqb!IcUM=WgzU${Z zIiY|aSs>n5Kgi>rtMZ?w$e-dMS00;cTmF^e;F2E|bsoT;aODg}pwTfHBhWGuCC;`S z3)lS4ryTL^pDiLjKcBJwWs~{a2(yvKDQ}0XsYE_Eu~6~CoqZ_Srp#{@<|)`yQB!in z%|6Wn!7Rl}SDmZ^r~$_h_znBYc38>Btk}rN8iX08ex>)B zsW?XJMzt!vh|A?pvDhjUSsvmS>$#Gj@w7-LcAScbj94U_jF@`D7H5x~oAo^-=Vfzl z#&dPo)*UC~IvI~!&2e>y6*^fvu%-UqkuE(f&1ivyr7J*%`ij#|6Z1Z1v_YdXsFy(^ zF9+QVK!Orfs}^`>IT%&~td1FI#Ux0ZvesOkA= zZ6hVV8R9KPXxwtd^AYf%IbtJ61qf%y6WMSKx9f7$2Q^tuIsP@Ss-E&G+J5@T@365b}n!{Mwq=IuwCD@3XW5BEn$sBM9@T4zCK6A`$|@2$$mxJ5+Euqm!4wr$WTF zEG;P}xTeS~;H^%mnp51IRt*&M3~<=0jaiUInusqxwg7hn6Azwpi9 z`S-!;aUm9~I&Rser&V4{6hUILwnU+GOsiM1Q)v6aphCUux=X;O1@G;t;DQ0?G- zse^bF+x$z^P{jpXzC(i)z@beph&2SLn?!U?9Kouho%1_+IwZH{#jD!d2K^KXdsT}b z$hhaK;8uz9s0!P4_*ZI+q^rasO_VrlE}8UGnpB)>Oqymhbu-&?olm2tpZM7#;zw6Y zl^w+NM8K2km@8?PP`cGTuJTw*b{u|}_5m8DDpE1Ok2Xj|ykC~M3PwKTHD@Op3 zHKiv$s8+kBQa$Ij1Gd(AX)75@M?!iyY{tTNBI2YIj-GN&E$8T-oyKr1{F-uXAf=YG zG}lVIP8y(S=M0cVJ8zhn7l4S}B8A+R-Bzy@bc+6{R_=ocik&j)SBr^8CH}-ZQZ_sY zc8Zt_J%E_K18kGpV%F}881%SaQ!-{()6w(g=z1|^rwU`Iqw6KDqnfpDsjmVAP>ZHaTJiEB8{?G(s^ym0I=NOU82RvmsSOCp`u&S=rGc3umh($YL2} zx1#PFcE}My5OLFr#YV9}S?xUKX)3t@N1CN#y+H9AED?Ou&0B84aT^5!VWY@$Q!8k6C3J3un^ttdTPD(fb)EZ|BQ?(5sXf)??$T1bbDx3wbT^PyK^% zX(AA)wu&IC?D9f!MA0*vGPO)PNXG`OgzA;ECJ>^AWr}h^>dR>5b2S?0Ix3mnDFi^N zn(G1)G0K)r>7T4)MUscRp*wdD-+%Am-tE}k_ak@SJG%MK;f;5W-@g&Q``+oDcaQGf z2|u_K+Pxdz+f5zsr?rUbq?|%FSIZR&8Ou+lgH*a|nz=;E2**l}U(MzF)pEmkL1OS4 zYNj#4JRUfcqBE%%n!Ymx%oL0Gk~9Oq2DBE7k9y8&=N++FV&B4;4GGm*qcp1Iry{$- ze+rR+0nQC;!MIkOQoMAntW6bc;$m&pmPli_Nrkhu_XVJ_G!{^tu}+Pp+6!>X4zE83 zgRC;SsB}SRYo+giOcA825GYV&yF!rf=7To4SH9562Sv?@JlIR_p6CaW%wgOLCB0ax zs+%>#EK`Ib8R+SX1!w{5B`6L`J~^Tk{!Hsq1SEB*;&)h5{=iDzbQ?z{*=@4*aM7fJ z6v!pGX5BSvcBbKyqE$@dpA?H)lI_a|8n6mT=2lF*mBXrnWu+}bAfZmWM2K*rEs#+{ zbgUJ!%$h~DfkH;dUyGRxhAN<~2`E-58gAs%sa!HG=7>oq8Z%lkodQ^X=hLX^+do@G ze0jZkDO68YIlj1@uR(D`7L_~vngWWsAb*vyP9^>=j<{rZ`G;)V=c8U;PG4Sd`{Du* znXvJ0K4A0yoXXdi0A0)@{pJL#ux{&m+{bp&Yo7xr#{J7tk2<1#Hf3YtW2bXh+5tNa zp4M%hVG3qjeH}~@q^DOZGTm6Kh#P}fb18b6h-AW{Y%FX65w%24PkCD00bkVP99qmw zM@b)z6n-@`anndyR@!oO$IIF!%PwZkl4Z5>biA82>kQbI@kH!J>sAVMes9&;XDxns zqZ-4i3{IBI;9gkQuZQPhFyiFX4OI&Iy>=lt?PBVrhsL!c=yP^_N(18f!`0}+m1Gmo zCoe81bQ=~#e7fje&6Iv@`wSGMSsB*K?P7rG(%1E}ZGwW#S=?CXT+AX4_5c7H=e^bx z3>!?5MWG<6^+}Uz-D67Yv5^h{557BWR#{C`ue6y{q*tPt7?(QLLZ@78m#ej)pc)n@ z-6qcOR0{H_8W^+4cCQ=im&1;tbX&pOwYDF}h9l0zK82bCgG<1hWDU6Q=?ak- zUWgqgLmh&M3a6FSyMjjL5w?X!ART89JJEC@p;f44YnGjC#mUsYEO?%uPI$@Ku;7mo=ofDjwP%B*q$NXBQna%HhyJg z5N_$9lmm8xbmBha;w36PfFQccm!rXIQoHWDVqC>iAZ%5|EO?<{C#|g7zSAxE4RUc0 zkcp4JoCS^&{Dg6W2x?_rD`@Eww<&C^l&LdHhK_?p))r-iCdS=F3@0<({i)LT-}>1i z;)|;#Q1Io|LRF0t62dny#{y_B-jbrFr~yO1NVFyyh@5}S3o&4t3q$qNbniC^yE zqjToNp3Z3*NJk`DYpVtZ)wX{=SzFRS7oK`9Gm9J{!`S4UxE@z4^u>^sBja|x*C+#@ z#`UVoK7t8hmTCBQ*>xS=O@+-=#7;)6bj$`Ereby~ZYQE}R^SXhZ1}Ur$IBW&(tW{q-X$(3~siIEir218usg+wT_Zhcz^davaeWotX zSogHVee2an?b@JTZk6&S&uSKZ5#ggIxN3=`y`@xgs;)Tv73kHkQ^}paOQPq_au{|; zFxn~I?%Y@Uq64u-q^zhqp;gCztHhpkb{10DfuJZ#2n|siP%LV&uFMi_c)lQvUC$&S zzpXu%s$(|c%m6Sz&Ee%4Rd|-vNMcYF$a-0kTTgDke{$z$=q`m!BM%+|5fcv{CGI~=Jbavbw3FW5)sCL%rw5ti zgLE_mf@o#Zmd${I7I*#KW@%Vu?=@6|jT zT(G$b$AM8%(zBXp0Z1j^F1X!-H*Z!aHM$@%1_(3~=fbl!TVhfT)Tc}D2w#nDyTX}h zWM6a}zzj*kRlpaO{>$~C4LS(0yzE!cyZ9$6tYo`r7q5pnUYfTBY?|fEL2D^McrK;d zidjlNkMM(SUpf@Q5zlZZu})PdZ<4Bq)$we|n_9?Pfg``R|<9ng_PKbW= zhmmY3o?|`_h^XbYRG_5_x>m|+b=Pe9Hs0p2><>#G4J%5l-)T`h#_JbwK^JHzz5Jw! zqV5(<>v`ZJP8NwAa!p`cE=hS(s*+}H=ZSiAddth?H#1)-{K`SH=Y6_=2D50 zu+oZcef;KA$Kbbqwund#Hko#TZ3IQZ#Wgx^kWYCHetf;8AHAHWfDi}YVBolbqI#5i z;F>iu+&aKi{=pKH8f|i)E_)xWhB$aNQ}qaIP*l^(N^F(zC|nTJ9|KSVhubKb2`m>P;i25(n>{vh-NBk0T+RYTGGQ7h!~HUQ4WyE zOd_JCqFRD}5xSSLTLC?N0IpPI?Y4n`Y-VV(0(Q}&toE$kWMefO0dqh>P|~vH6f)Vs zuuHaAwA}zeXxIhQ@iV5I(p@c+&zKdSA*Vjs>i&=^r@_IMFHxW9hvE&`vf5w@ONe^`d9QHgdi-Xmy0r zZ8}p`{6JPt%uFvP*NedgffL_^;c6tB1KR;~0a(t5SBsGn>)|44!^0HZ0;?8-_83T0 zFWc$t!}p)udiTlA_x5hRyMOz=qr11mckYDl-VNP<5M|W#Q5*v_@$pV_?}>H-INVQ# zjHh8Gh6db;&Ai4>u>Lcq!qUN3KSJCDuOtZ*eO%0 zRG#CS<4h{BM5>9!$*Npyjf?!1zEN0dN#2@eP&m>p6#$B5kOnH+*rlvvgyScVPHuj4 z_r^PiH{LsX|DA(d?;YK_aeVjY$-UdBj~;|~9!2&ZhmZE-(Zh5)oXKU}ssl>rwE~}^ zdqLb@pd?^i>7d7glH?5Afe3E`3xQ$GqDj}FDsP#!87CZyC6f~TRQ5(J$dq51Hmd~V z3I$)3YlP}vP*s{2;tl~`bv3MA^uZ2GTSUAX)PRxa-O9X8=w-Yb3uT^3PYlpR98rRz z6Tw~aRATaS0Ej?$zt*Tuz_X>$lr@>so1sFc+g1&=qsmfPfvH=mgGgd8lH3oc4nl5R z^V5bKPZTqmf~Ex+>2yAwtgyFFDZK#~T`G|>nCVqbr{RE)2BnN$(2Z`8!wVR*=B_$x zmI?nXrK$D`g}bk~rf`0cHn5XR(BQtrHbjcfG~Aq2pJpZOX%=)dpEk;d zgV#x4L(`T%J{uEpp2PgoEthLS(aSn1VBV>bj9OaUO~)NA z=^AMt+gR9$gw0sg!cHP$Xt9i$GRkhgTf`C`QvlPJsuykEZYsN|g{U@flbV>b>YiH! z3Yu8QVFl{s4cj%WT-L$x4BImtOx7kQT+Q%xt7JF;MNmo1aUimD@jImjalZ|s19(tr zHU_8(ip=1Cuo{ycE_%3oS5x2t=Uhy+<92n_WJt451Fx#MVX*rRlQ{25PvWILs<(@% zn8=BBo9CheqabZ996Ib_t5jgv8z3%VY^ZNgcTM>ii$_OSX{Sx3jdFbj>BD0_PqfGt zN5n_AZoiQ>8x?IHO)2Bxo8xSK#GL}uoGq&O6SzhaPOEg4Nqu;2UQGZne7#l2H%1{whMHbb<4&z$h zGS3lC$sIr`**upc(n;Bwi08X*&50?$x{NTcy~ILF;fpxJ{sajgD!7`9 z*=sG^6#(HyuX5h200_w!dzDK8NMdANch3rL4N?#XXUZ!3zH-)rx9Y01$SWMo@eiIkg&gDI+tO>8Lz?zvJC>Nnkd)y&mwzh-g2>EgdW+xGoQwMs35Am4CZ zT*NqyiI=^eOJ<#@;YRhc;g&M48`HhGPRz@K3p(J7^jFbT)1(Q$SYUCiSv9><#=^rZ zmY3HoGom{&OkllbX=Dsrmnkrdc%bob=w!O6kH=|X z8#~@Pi5rwQXY4ph#IAym=G6mw z@5sSd5*=Nmrr@6nmTrqqCCVzrs27q-)|HgfcL~Ht z=eWY`n)24HMBPTBq#^xGsh3^P7;RI9uUD+FkT~k7$M)x*vag%wwo+` z6+uqrHGw0T%PO{2$k;^#xabsg+tclA+O&1c$=KPHk-_3Fu4R)MBWYOlp*4zGr|IXV z|G}TOq&vHqA2JkKRCF2di{aD7_ zf>ncgueqrzpHcg?=%QLFlZ6U3`ND>x?Z*y{CW}kEb=3yLPX{ZEcKzw7FGgdP8J>dn z!i=4&nk>dSY87hY2o|akJ(G)tJn3V#Qng(l(|0_bJWAYq_u$*#-2L{qpS=Ih{;lsu zO-~-(2S}63L49o{TjA7C^AoMRm3Z~5P~QY`SmNTz;K0agCI*-rE*8KPl0)=lf9Godz%J6 zyuneasA_G_YSn(R&~$-7$!sW=IZhZSni;|%e*z|zC7x-9H3jD~k2 zJ9ol&Z-#HZe|+cm$?e-Gw{9IjxD(lbklMW)I@k$EPZP<52+m9&M)czlfj^oCEq?R* zQ$&30XN!n$o}RCPaD#tuwmX{vL{tQEecJVM8z6mqY^dS*gVpGRb5?~s$If!_p#sHa z|HIV~`$Wej*8bh6b859*5hj6-{Pj6cTWek`ns_NS3#yz)#cv72V#;_WC&)UzCoS8Q zj-2<{pf>Hcra*-j^;6n~0IOp+>1yGu9=EiF$&vKH6i<)RCx@x)u6W;P-$feVBj*p)+q#DTC-DGJ8fF&tfOW1n6Ah5 zWH>1!l?-coJd1TYpwUidFr%@a9;@{LBPSJx45AKdB_Nq(t%!)YCzsRCvqk>{>B@gP z?+8I`0TGwO=3)TiQk!&uh2;?z@>o-|MZGd<;S`i=fa*h5rq+7z<`1^6HLMF zS}Vv$4#PY54tDOJ>^=(Jy|oXj1a|n~?$LvL$Gba`z1`^kUi|1u3LpCEar)#a89Gj5 zp&bvWGYQktEf0w3dZKSGAyel3m_VJ-$FW7NoFN&WYQUJWy^_8qc)?>XHJB`%QT(09 zaROj(-l1r~SraomMUL?6v|XRjbcMAfGqxg>FxZnLUSsO(wCc543@ofsRcQ_BHkDWX zKeRV-ow8+mdL|vx9=(5Z<1hE#`>WlX?;PBFZ~xwneMU|1gdW^GdHgW6zZ*S0h$ljc zOkDGgY{g~66QIfYsQ}|wU*~6>C09XR9urw@9 zs)aS|2`>a=8iV3Q`N&a6H0g4YtD(FY_yoLCIzTp1Q!G;RET&kLKaJq!cO&~ z*H9)H?8@jht_A?Y`bDoQbvF&EJ7pusoDzxURhM$xy#gT+|4R5L>K5{NgA@WSuNdTcGPSQ-Zo~HTDMM7Y%@S6|y4A4r4Lb-l%TJjK0^OM5L^TZdM5avA z#Dw7|vu+GnNTu%r>tE88WOF^hZ8r#{ZPBb)7*@mc@ba8^($AV!Dihg{MV`dtPf}Lc z40JOa)ei2R-u(8-t@pyWZ$xk12s3i<&fe{thYufwb{0FE4@H?bjU@Mv!Hms_ z_GyRyCw{hw`1*Rqkm*}=@Nc2u+vv!H*m=4lBC?K@ky3?@+wDiI5hgz74uOB?z(V5R z(?t(EudXJqug_jyO+Gp&QZft(-ZSqq#fa^q&nEQqA%XK;diggBaNwG(?%7uHD0c|q zAHo}Yl3J5cn`mfpUEiTt)P#izYxoKp)LRYxO{17?o# zv2uBIK30XzDlB}tLB#VZE<3o`_Ec=p@m!LNvcGP40Q=m!l`+|gdAVJ$xNhtycCr`2 z+WE<&ljHrw{X2)ZZ-FTu?>q|aK8_qbAsim>r}4Rmj#8oHWcWmjo@&Xcp2ftZS$WGX zd48in(_>Wy1DYuMb1d0aY@6oB3>2#tdk$7MNn}-tl&Vy&=n^#PFD*(&N+w>l;Zy3b zPG7)jt2}FqN<)iqsN$$N|M_G%u9fkXz*Z5*d8;lGXjO1KsW|nD*-X)~^jP}zarEGB z^wEv|$WhYI_|g5uotwv0B)E67^YHX=FA_S4r6MT}oFHvfY_E~?YA(KYz5p#K9UI$w zh1^*!nAVGfQvR&Q5*Uy$)kl9W`ZCLIbMppblzcmzH;JaS05>%yamVy6wHRA`cc>fn>>k>GFd<%Xq=x)15A4HjHLG{!CEqOW%LMW1X*n5d^}^z^C{$Q z*-e2-yZ}$rav8%(n`X>R?&FOZRS-%ympRcN-aNVW?!kjwClBw0j-RCTxEVjy4tGP3 zZtp+1ef03w(e9n2@NO)+8;PiU?B#(&M!usAB8wRTl6Hd%7%3O z6{z`=>SePR=j`iO)bMXn(k=SpuZoLEW|0%UB0XHZ_vtn@lUkcju^1TOh`JUvw73%w z8=(`zA$eicl95ftjC4fz45wQwi-E0(XQ~EpX$F^Y8ObOc$uV&c+vlu>Yb=`eW=h|x1!5&|7uSCITZj`a7cov>VuZ-8~I=y)(t)UhlYXIiQ%7CQ0z9Nq21ZE=luu;MM7#OCJ z&@*wv!m3<%Y~4BD3m@!8z>}WrMgfNhPZCG_sgnbK?igT)u}CHsNvERtm<*76&#(g9 zt>*L1QlKhwF;uaxtO;acB&vACzfGl*QmO+kPFR;jbR0G-V`{vyaAqduGpf--#EeJ> zIlz+$gxF_eB9072O=EV|U&=yeEaGf{3xu0heX?Hrj~{$V5T1-7P<_8f05E(X}a%R>@CmjC?Ad$4Z$d zg?TUfM8t~$cw6nfUja>A^~5{A%_0}zqT+~CiH@plqC&*EgiKW)QQ@3KT&YkaorqNu zM5!zVE?)MipslWOA>P`Q0+#IsT@r!N#eR{p0GRqKK(DM_VPw+v;ua_uqm)J_$lwiT zN~YNamWVTy>d_HZ3Z0TKm)g@8aW&Kw~y4*-eR27+jX(_Y-LBP59UlVGQw zCwC-4#KWbU#!ztB^4x$h+FS}a1ta6@x|7rb-SRcl2qmm&B9}6a z(@f$diAA9v)ze`uZ+I0Gx5c7@T|AXZWy2@Qd$$g5y?eZOHxhcdAAb^h{pR%+2>$=} z^Zz9xe&_imncuVX@4Ouv1^5vcS1PBt-Io*A+gF!TT(d#PkIrX=v5UFj88B~*9TwC8 z^B6B3yu=ZKL%<~V0h}s)`gGX`rzD8tPnY9YSL4^$Q$8au%L>?a&CVJWx#dt@BH$nE zx_l|XxfXL>HHXf7&3PN^SwX}?q2lDr$$0bk2z(dK~~1Gil5xmWi*m>Gi7X z#sev*?46T zwrQ>Iv8bVJnYpx9rSE)kTrXY@yQ;im#@07x0TloX6KzwatVh|*`GB>K6AElrBu3Yi z`MSc~VW&B)RNMJ{yAX5=v=hPtS!vxVb3_tE5j2=}TWo3AEE={6KLv6M9mNQ9@_aSB zCO8e1$;P#$Z+Xs?sa!cCj#TsE#kxBJct%Z`?*_Wpo+ngnpf256>*>6wRCpw)E?$qI zdeV$YowoV-dU-~*wzsf(i`*hQ&#D#`G6hqd_M2yY!K6-oP_NWo9~{V#n{PzpRkmhk zy^Lw5tivY>AmY(M@?bx~km;d*atMN$iiFb9h!z82x*`4KkV)P2an5aO?e} zhxbn&KR7wq37_uAqDM(A^_(OKjp-%Kyk^&2zehJK>SXo{#J_PB+d$<41=R|(R)qqj z119h;hs~=Y7+ZA-R@W&iN{6AaP(4bGGxe)rn@S}D=ajtJxpLMWwpLj7bt>~#Vb;tq z+r?EECsbE$@<>&TLm(72E7HU+{)K4^rSJetAJw4Qq+Cu=vwT)#rj0!P|1!B0aKb3j z7l~5Z9ce~vy6iAfM!{9O@&bOy$;za9c>zMNAyTOHny~CnKIr-ZgQ8idpk?zZqiTBK zk#)zFcxJ9Tm?fT_SeUk?YR17n;1K&2!!2+hh^PS+^C_H3yi{PxZ4$Uh zH^jPQ(LZwIZb9PfJDtE2OGr=JE^&_8Z~^M{dn%h*Kb@@7hNV!_0fVcjFM>ke#~+2Mm}gu zzXB8`iAXv~*uz-7xthPeo_~yi{pea{NY6 z7&h2uE(Mknz+`%?b3P$gTaMP|27)Dnr)Ry3VSPzQ3vkf95!bZ{2%??}C*!B_$Z;%o z8c#;jCAZKHijAB%pt5$p;knXkmK&4-DDZmu;t(^IM!UINuGZ55BGTgz(B&#Co8NF3v zLs@zCE50@=p@=i-OC>_>71zloQt8t~IutkJDVO#Rh85Kx-gt8J-Mt5Qjvn1V-g|s{ zycdZcB@(A8J)&E2!%3Jq&B5vr-xF5Z6o7)2LCGIh{Bb3J)*!0`s*S3_yj3|TEHR&V zIcQ#h()BBXh$Z^kx2eXWlw4RoqXMUbrf1c{TyaOKf&om@CQx|<5*KknR*=q`MU2aS z4TJ58U3O(q8jYrjRkG54SZgN*Rt7A zN;`^MkrejxI)KnA8Fs}4%+quck&kgu(b zY~T<(uOyWS2m~TZ-OcC&z~T9X{8HK?Uti7DGYZQDpq>#9*EO#5kDmdg&px8gC$7x= zqRKc*!G%~bN>AA3q`&I6scX}y%W~W6l=7Bto*pxCCYtg$|#z6Js&(@_FgOoAI^Hu z#?5)Fcr~cMVW@m?HK$T8IXyoq{EDZ*Qw!sy!09?X`^mvi_Tr443{p)aMX>8`$oj^w zDqnPHee7n;oMD0R6`UL>`@vrH2<-3xp9o87m^%z*;*l&nE~2^?&ww4~GG;z&`=(WN z-B!6c5Sbn(5iv&(8nO~%yFJC&1RYiX<+xSv*Gt1@8MxSQV0BWSi-5HVtW;HYa4s1{ zp@s?(1qds}PJwYtkzCKyd05o`HlG*SqzbO8E`E$2ppgu+gip3d$C7+2$mO)O8I2aR z7Qmolo8pyWC-xKfZ|vQ>wg2GmA!y>0$D#0kGmK^iHt3qR1{0 z_Tv}*mhXb#0`mw<8Ow=lPF&BW3?q~TE`r9X>|j|eCd7A%BA?g?jl=nX3KdzUeD;P! z;)$@|6_<&YmjhF53J}uQ*P)q)La!z@xEWsso{82BkP_SxXM$OJZY%?ItXcV7!f<2Y zi@BGF&f2uFV6#6ii)D(hr0JATGLDP9s!z%&k_g1e z90+c?cci< zdi^O!eEa8b&&cf+ z``fm`x^2UTNN2GbW7ZU9aL!8kUL~mbg?K0(3meHOD@&6xD;2lRq~mE$-trolute5* zK~JCVf}H^Dg;2RM#eOzVM7}cXH5&L5Q-!$@Jx+!W;*q0dPTg%P%SHHMB$z8kJVADGHO@PHWm#67)rFW$(kDFb}Ne;iB*ym zwuQ&5E#qP@Hwb$aFIy4E(cZU*sZAto+P;7@!;+S!OX+RN zFXmdJovpHx4Xm7`@`VP!VquSu0Hb1pux9N@GMCV+rdQBRJHp%{4vJah8l)*76Hkd| z4JawFklF%$sjySH*bQJl(FH`)=^nLfffVxxy`VR z1TS99hq+U+tia5;$zXX;f+QWL1Td3Itjsi6WYRbL||Ha!r#8J4AOYFn$dcE6k- z*2}$0HJiwQ$!RfDr-Z3%>AszIJ>4z3K1i4dn>CkGkSSvghh#qz65Kw;<+uynH4=%_ zCnu4k_|bmsd){kHsbOW-!it++ z|2R{r0W3vr0K}r6&sFjPSYQ{tkXZr>Q1FwOM~GUII4b_P-fo6KAl;1B&Wo%0M^b@>FA_7mi!spa1(rv% zZYysTjab9eh86F_d5?%V?Mj*JT0#D!%b7yN%Q@Dsl|Mlu5_3 zTGGrUvvxY`FmMX;WCXU|EYS>E1nuf`YJ4}Rz4{r*pSU}n^%}~;X~di^eG@008bFaJ zNFzBB5gf5wTXq0C1ZmG zNV}Li4WnY)xQN7K3qZtio$gC?wC~i;8L=eh2^@AVhfS%eVXf)1TULL?R*FK2h@`~| z8aFjH44=waZUk%IZqi@d>UL<0D97uIW_^G+m1m_-3-IH4gCgLt)C<;%GpfJ7nR9B6 zS$9kT1}IcF0B+g9zp6#m3yg-BYcL!tA=ZGo5?l??RWfWpnYF^28A`MGMS1~&rcBxi z9IBp0jPrII_y>r>0|o7zwx918NL7KIg32tzQ9)GV4TF;`V*&XC$lu~g zZZrvGVjl%X+8hu#Y1>cB)jV)eJW-D->Unub6ilZbl?OaC@CJc`t(>KF^0414c=XT^ z!PQpIRc22WD+BCgqSUfla?Ns<7>s9B@nL+{B|THgxTg**U7e==A~j;L~hiW&;$Ntw)88ZFpyC|wh5pLii0 z@r7{2SC1y zBsr@ph2^Vy#*5&Io-Kwf-;j8z3T9GXx!*b;cc(0GBjo}l^vi{I!RwU^lv{IrHnJ823>`Pt6m#Z-eN-;&jh_lC7TVJ zIkYJbfWfkR{C}1z&0=v-mx-8#iww8&H1-ByMy?H;6%yP|YtbU0uB&O9Yto4!1(U!M zye|sY2oGcK5NP*oHMx`kDTAfU(X(>`_k3w>eOvPfQzx?c=RwDJBr1Q zV<3*{a2m%mNi2!7Ryu1Zbvv!Q8N&ljbj+SqE#cy{{AG)MjrPBynKx*b!N@6t$I_?n zqzkfG#Q-iY`c2i_E_!2ZHn<-3&-w9HNE0{Ko(zKv&l6Oma0~{szY;!WB%Hm8byb@> zi$uUJMvY zUG>;FuLQW&QeY;2zpCPf9rT+TRE34pZF9xOTyQDyDJtQNMm8LWO@skBP;NwdHVTVR z#1OGB!lX-Aw7ZxvqF$4{>stD+a-mK*Ub{Uf{GmyJk7LgpoZ> zx-rd-vG1Oq60QR{lnSG@QO2-b>Ig=H1p*P-gHKT8)xZvG@(^jyC;b8_D(_!K{xIlq zNF(2zxE2F1iK%!<)uKonfEff%#Wv~go1r}uOG!Ooxz!V;);?{Jf#{5*$`LX`03qP8 z8@LJ%WlMQEJd03CJl4j2tGjmFXB=3J5?NI%tTF4SGsRT8n#q7kKe)B~t-pT!;CA>^ zj`)e6w>TnDaQceW4Nylq$el~>Fl8utL`4wSkxw}Sn0$G)riRi-F#tQ12E@^;^U-UJ zi}9Pw$s4IVeRVl{4M4??gj-*cAX37HWi@O=?0vB6zmPnlBoS4c$6VF#sEQt8v8r7X zgOJS3<;9TAZRZp4OFaAK8HKf2BF`pt8f7T0HMR_5RbC7Lhh+<2uVUHusUQ>6&4iha zn|9g>tbEA}s`x#no<^*O2vO)HP0!gsES9Z&ed-W>J?kJ4t7Hzh)4UW!@WcZ zxVU@jXqmHiomGOh(yC8K_0>?6Vg~ICi4@J-m|4L87z7(r_(s&pTlHy&=6QGvAXk&N zw88b-;zv))GQd{ExEZX&$=%jcDj}zsuZNWEVL?!bHKjPN{xt95Zs1mQShFMLn#+-* zXta;`uIM%ux9Jgmy&x}SBvU%;l|Jp-*h>}nUT)dp6!h+;Qu`B~qmQ40+)qEcz$bo& zZ^CkjiIU~@-GW*7w01swIchwg<9=cd)RV5n3F}UUaY_Id=sOdYU9v{<)bDyC@|6o; zXU)`NAcAueHSLSOOfB#$n5}}KEeY4aa;53TGUJvJO=qH7B9s)G7>=LB65(V*8WK`* zO-t%V%E%-$*_39d)3%oK%}l*O17zH1VTaXOuXZtPV}SgfNpuv5ct&k{_P{8Ds1#}_ zDc5Vvx?&NGk9gR@=Z>9WqdeuxjGRx3XsG2qkffj>B4%@6iJB_pQ)8P-lt)R0Dxs04 znk6}M`MIKzp%O*lJ8?bqK;*yQ*}MDx{@t5<5APoA-wz!jZ2A|s-4RrTQU?=yx?eItUByd zR4kCys`Ljf49j@}p{QWfBZ67R^0HMqs}&Zl@}gB~`2Y;F$u3C;e6CvvIst=+BXJ>R zX;Nh^SPG6vMD%GHPucDO6wn7G00sb!k_{~ltE$(iwyE8vxB+dpiuoSpxqV=#6W8oW z+6pHEO~+$_DCH~}C*X&%O6g)$TS*zxwpTKUIGCeJG82dFTr3%;6s<_!PPZ_?6csH4 zUgF*sbiK@ySH@<=p@~*a1)ZJ#_*0MuNljVN2yhW^q(#YfYbe&o9ifSQJq6}URkBF5plh;t0Ryv628;bUQu{((72Mu!2U@^#X{i>p~(m;9@yrmW?dlZ0PaPt#9o{ z57Tcx?a+VwXN!n0ucykM;v)%u0<;wWQ;hKKt%`YWOJf9+m^J)>ezwZYuMcQ^y&An) zjb1N@uNQ+?OGZ#%TnxeIB<;u6ix&h@I{yJml_@TcV;TiVd;yM#=~Wa1w!M$4!GlGx z*DH)S5-XeJYz(TDX8;tpQ@Yv4)chu2AkHa6;*CpwY{R@R-Amv_1%o+ z>b9e~cFOWHPSMSmbNNmcVAGgUnT#c-7i^QKb-N0dZYxJ<7~7{7jIG)GJE!}*rw4nn zqrG_OAePHI-Ew&%RN!jZzo1rUOA$?86SIkGwCXn}%@Q4gB-KX?_)e2;l+2T{no%Jf zrMKG+rBEsgZR`OTF;dZ86A`sJMP!&7*ZlD<1S4%DZk^`NR%e zCe{k$YljnBLkl9Z({z(-1cref;)s&NRhqZ*_26S#Y2I*i1Qqw!P9xBw%Q@pL+=>nTGAe5Ny2 zTC;U6hndSYt9cJVE9Iuu)u4GL=`<;s!J?!*?$iK*l%XH2)!L@rI%p!GQ5?9|=(rYg z>o-Sq`{OjNqM+NtQAHC)P%U6Fg_^!g!G;kEB&-pU=%^a`)p2zuMg#L;&KXsU?Ev>V zpW2V#{F}!&-#NJX&i?Hi2lsCs?%X@xdvN;XQ5fIP$YDBpoYq4rCzh@lblnpQmG9*# zcqZ1?wTpgz*)0SAu0{<-4KIf^0YZQxwl&2O)u5=&CJM@GQrW6JB5+Z~`osEm2vt=L%rPrry4PhVneTlrjnlLeo*nrHQzikeb`jSP}xjve=S&0y77 zNyx36NTbVI0AZtbpvsiElBiTVc}l>r^fc?{l3GY08MO4^CF-T4+IO$r&H{V%=@$_ zlsIQDnNY@ub=ScgB+}5{doL(fw2HMEm&lr-=C0&lV9`B2S+tR)k7}JVTo6tl?$= z%w7u?zLruN74sAWKdFvk$dm#!?6qGK1p$YzmV=jz!HY%z!}EdYw+%2?f-C~bUJAXV zmJQD*h~gZnH5Eksq^wL;*gZ|f^yo=ai=;c{(zsEcxA8w&zZ`TimRLsvR?leV!F_gR(Ik1& zD35A5v#D}^AhjTH3-QifiO`zVG}7AvbY#+PikgfloA+Ae!PE*6#Q+W^!$yrU)z~gQ z{;IdHe>stgmA54E*r~Ds_-+1``~NRcRLw1dj#4`#@lqxZfrt_^m0G6-W7^lV*Yf3I zr|F`9KB~{!#j{3!Sa!Nat5YyX_59_yDgGzYfhzUMKt!-ZMqdRKpPe&;N)epd;ClYu z*Y>vj0^YA$1Ypc4TLZFQ@7Ai7T(0D~_z)W)PnBvlUvzcLis^bJ6+2Cy9K^zh(dcmu zh?oo|;^9O*noK1$J#A#tSxd{>n&Idf&&c?ufs51&`E~_NvAUp=8FPeELQ)@KTF1V) zve4;C2qLy)LBvfxs_;cIzM%Xp{?x3_n(J=;ZTwTE61!4T(U)Ee>~tl!$Nf^E#EcXu zDqK{s%9f0Rj~TNq`hOVhz^i*CTj`_d&A)l{?Z4c4|6BWaZ=BwF_weD}qn!t*yN^Oo zb|S}nvB-Wrb&@o~2`{BpvRQT}xWvVNF&F}X8>Lyhbl$H54xf&|0;>`xWiz5eLGK{{|tD|xeZ?Ki4 zR5y?;8;SxO+*nG=PfQTFK`AdC4mo8{$b6wRGAdVIRg4NutvOzxQLrsYXR&pnX(x(( zvtqgwDa~X%K8sXE?2YUbu%|A9D=6M6**=g}zH8L+(!#B&3!o`<#Lu}&& z0^uba^Iu-l4qjlAkJ`jqDP9#n*O_nJFvem^H>y?I`Jik&1;_GDz@g#lX5e_ON~M(Zimp{J_>E#-biAso zQR`ydRlp$OI~Idnis1%JJi1jNVk(q+bpPP^AZ+WIY)Y@>yiq+kYXn!LwhAs?(yoX` zLK3m;Y%AL5)OciiNgSrg5kYFF)QoOlPDkgHf%q-Z=3+Tg52x6vV!-EYk?dabSIXC^ zEn~baj3iWiumta4h&DQ1c`v8Et65(WLf`dZD0; z&`49T&GLoxeFlyw5`942{=A2~?T_o2YOQ|B?w6fT(OL~_Y9&O`27K$TCLdl*pGoEF z3qtJT>1uL0ABwa$MQzmU6t$qW-l@Vx1&1P2PC`8Cw1>?`r(AB8O7%hjrig95$XcYF zW@i(bL@0G~7>^vqVka>WL?R++q9CG{%4jLWNEvq8bad0rWOGKg=z?zMYk}V?2O}_^ zW_jAGuy~}`n6#^k{NWoiXq3SJCIX6deG=m*g^`3q;frgs$U++?j1`Z;bU&m34MUym zmJ#q%rojp_!Io5#PfnC_bS- z)UEx8_m3YvIKkL^6b2~94im}KxRc5#F_&^SgK4@&J4UZp%AGX|;E2o`N*&FrN9DGQ z0ip4{&z)7Tz7oAt3cN`x#Wp**Y>_6eIt|r;p=w9_GGBv%DVuxoe^+eA>(Jf4(DePf z=ZW60)yR=1t~0C!ET?E{p<34!E@I#acdBJ^U#iVzV1LRYvc{_0T6UUC*|LzW*P1pe zc=moNKdzQKfe*Oy5;RD%!l_)6u7Tiiy<$#U;OSEj+)@D6X4!#VHM2EG>D_=P0{OCT zRI|g3zS;x`{%orHBA2q_+4&A)Kp`G;GgWUMn>(hj%M_H1BcJ%y{EJ8vw8Qq z0Mb*cb@!gnx*wdipH8rftes;;Ij%ojbODEys$oKL{E}6v{pa%z9wpruDt3DILPbr* zRYQq}zu4Fpb1s(ld;!bp$IoV%e^tLDetmg)#*pc(BgHjJ0F15f(&0y3#J|U)+gNn! zz{OVHFIi^6HVclE%bL=i%|^7qG=Yc}->qXZDiwx}@~mG6%#cWlckvZ4gUHdn0QQVJ z^KNz8Zs?Kp!OltaIBKSo1uH}Bfa0jWWXm&EtfYC1 z^@meZ2P|ntQ${L!lrqlwxJ?N+pz;~1s&GEqfIOv-1Zdpw`4anJb>LEX?|lV(5*oz| zrh?B0tLcXqV0+`ItUnr3TwBQQxu}C~fl%S%77@4MQ8KihXSD-}+M4=I}vSw~IdiEuI*OQjQ9I;k^un$WG(TDc}?n7-+hJiiL=0uIMg z%+jnyGk4aJin|kD(u5_xY(qTj)D-?nig6uKRpul!Ie$TQ(Dt(1Byo|UK6HHgz&ug$ z_Q{P@AXE~HtOEUi+ItTr$F*ch@c(~cXXo`y_q(F6ES*|WYYh?r34mH_rp~Hcb=%fG z0?DenPtKdQ>9*bD27@7))C7(nj}ze`b^3Y-7U_#v#4R%k4>H8s0HKyZEmFvV<9xeT z@XO^wGXL$LfBxyaxBvW4FTVNH>uf^oSgeswH!|r)KHag3GvC5IX6n}#>ay0ew=}F_-33l;*|)@ujn3UGY_#WQ;1sv8 zvchMr#lmM7!;!^at02;BqMJ?lMOGZL9#PG1imbt4RfdF21H73MzU`8o$(Lx=mMUB% z)5p>Lc@oc4rokzDFH4eVzE`s}9?RamA`?9pZ;%nOfd$1(E^TK)bqvx%ze1$;z<@8WC*J+C`++Nk!{63}-`B&BD?Gf5?QYV3V6=1aupQm8 zF+w;5vrO%ar7X3o;o{h31(XFs>l(`tHY)gNQTnEU|dDnD5SB_D$)W;LUri1lPB{ zmezWo|AY#hvZ4HL!S=b&CG+EJDHgn?gNz=G)USX!GN80C41I2-c?iB?S(EEXOgQYU z^lxn;JBDoEQeu}r5cm{u3_jdH17hi;>f+LU>unCLL~QakGooGSKfSrz7@ni!9Z#6w zBs{Pf1R7AC^;+{T>lD@FO;-dpaLQPyu%lL7;9vMt#bO{aQl{HT=ITgR8Kvnoox7XG ze6yItzAgPRD(Q4Kk-|qidw22n=cDic{Q9qddHv%zZ-4pj@RuKsUcWd!cztpF`t0n@ z`PDJY_LFDP+(onyO=2qGmI{!GL%TThDl@N!Z5h61t$3QdM5WQm2HVO0j@W3!g%0nh zo!haG4T?}}cqOz#BD|jl@0Yy?)*3Qos$<-5o53fHbo0)`tPMtdm~|f)Jv`g(x_`Y0 zd#r2fqq3tmm<`9@4Qn%S@Z~M4ARoou^vmdRx&D{GibvlaSCa`0WaDN- z^Yk`@U^nR9j(gi73%S@gyvzL3dEiK!@;cd68ii{M!~K$>j-JZsno+_}H10AHbU9)- z`MFrhNTr|_&fjSdULiu}g$nIycIe*vRi_tBD3!11TAB-fDGDVN9Jb;815c>|Rn&AA}SoU76N>Pvp7&&8!UyY-A%~L^~VtO387n^0*pEW=)57 zMH(%a^X)h7h$5$%M(lBLyI`g1PS!hDLv|vhcbasfm`hJ9ji4_3ZEfPHE~8U+sJHR+ z;YVzhiZ&~h^G>c(xJ;hCJ3Br&J3G2KKfb&?xr&e!NeLvys{|NPHa2!HCX?k%x>m^5 zOT|{D+~=9VHnxj46%tMcu;Zvz7m}bSnXap8_RXs2(W|UWH(F)HFLQ7x94V(fUGbs{ z6fRU=)ad9wPZB2;2hDOp_e>;_z#7B^bfm;fLHt}t^h#WWqX$jB=9UYMQYjx#=c4)e zY3jufM_@$oB1rMaZ{Ph)cej(nm#3$%&(GgpL|BUw$(+SC#o2{@qa)$a}>y=pTgS z=0c4~-o=xH4vTs0JG5!#vL848vf#qXmqmvl#Ws_DSd6Iah|fhA{8Mk~RI~j?zEjJ9 z0*7`1?1%%QL+rzp)OH#2Gz<1+0xC`Hl6XJ)i>v%)#B_uD3ZFA;HY{Bbo@0W{qd3lx z5yh8TBVf40^L?aS1%|U(_u-iiuZOh8-&ZW*&-;lF!h<6Gu%;By22XdZ9{$9QAj{ja zcRy`ogSdoZ*s&dMkLzCh#_O__#dR#H0Z`ftH*tDXM%1xhZKE~%r$IlxMF)2#!hmU{ z6^159U>Kr$DCX^4*2(AU8Tw#>7p)XM^&Q@rk!r1SuTh<<<#Eqjbz0ZM-fqy9eFx9x zmy4;B%hc(mS1R`H`pl=($2@4v0(a8FY}%(YBo__?_8i9SzQyGqO{vF-#=aSnFuCYy zYlX1u`kK9#C=I`4CNRQ?7KGnPsWNsc(T1>*>o@G4AGLeY}0a127S43REwoIprpVU3_N^;9YpCG*yw z((1*bL7L>Pv`QF`rFOeig%&(~djgFJQoN9i)0lMcQc_GsxQR?m$F?MtrIkX?}2m}ayEY{T%qdyH1}Mn>S0*e@VOYj!@@x><3W9fIkznE zkoHmxa^~GEonP>tyEQ7*ec7Tf74!@>r?a<Rx?aqv_*F?krWjOjcs7yMRXYONF2u zMv3vXeT*m7GBjehTpY;4p)M8%r92J>jgSkq^iboXnpWD(r@kabm5FLw)2rv&wG4D2 z51s{LyNW&dGAAOk5U?ja~V;JC8)Zo?`V{4 z=-6G0CfedoSp#=AGPt%e@vH@vMz>~J8-}V7p{z*$VAw_LxAp-PXrY5YESWD`SC`E}Pj2f+)s7Cnr{53ZsIm(i0*<|0~* zMk?_r>%M8BNk_4+RqobHy#`*T(zmMvr#Sn(%IM4k8bV3@HrFf`ngu$hf(tR}#Mcf+ z^y!pMTkUq49VD=Ka}u7(W~@vhaguub;^N(_tD`qp5Q~Q|P9u0fC-KxpDj#PEN28ix zBdx)}9x`#(YJwEU4oFdK;d~mg>aQT~IZTMfjFSc(G)AxoQk6(EyoNP+ZX+zA(ehAY zuu6@%MZIYpCW2;_4%?L)^rDjS*tX@)Ik&)c6>*};HFLRAgn6f_qe$*NTDXWx8$~F& zoRwtOlCCC#4*SB0+!!fk^+;GRQRe(ZrJ=gDX|09wpE9DdpdLI2PO~Bh(|$P#E`(U@ zN){XTvgO*9j3~$qsF4MW#k6cV!1tg1XfkWQ#OJ8#YV^45KVi-;E~D&jKc~4G$nX7X z@B|tIhhf-S^mvDP_io<3optWUKDL`->ss2xFmi$`q-}v9-!FPk^DbtNlNK%;XE*k4 zrU94_5C5jHTzMP#Hjyp zhc6@!4sMy6sEeQ&vIn<}!HO%Gh#T_CNJcJpw{d3y{WYY7tHcR47%`o#BvQ3xs-8*L zGbv1yYpH~cq!d~!4P}j10 zx0VDPeGl6HH`MN&l+4)Gc{6_4K%3H^NQzTK8^5RRcsubuT&|7$qHEvI+ILL63UFTC zFL)+ke~TY|5^N_P=2(oVOGgwY67NDE-S@l6)0Xf5Mt)7E8V&txCe89~i}2#gqSTzQ z{&FrFk~0jhRr}9W(SwFK>!GAvUjE7znrNjhH$0Eez#!a-kOqrf5~#xMR=i3lWH#cRH5* zRZhJ4a4trYhsxzbB=N(a-+c3bzx?ShN8kU?H{bpF)lc6Y{`B3^&)>a!_2c2eujdzU zuOja*uHKxTy*xdCa~40k%w0sQ@r1)=uxzuCX%$J0TK(3m7y5P)`=MQ$`PSU8ue#J{ z7|_M=ti&D>B4=e$v)oZr@(Q~ggClh@V$!rZP044O;gZTh3%+}K_3CBh?W>41@s6G! zM6ZtH@zZ$rDpgN|lR(T2Dvq4m*a0ooq^+@yZQ`=-LdyT`Ic>-7S>SM!QWXhYGqJoMLa{$^weftwD-)2P3aG1LF^{Me8o;hw5fz@hm9&zU`o26 znAZLnR*L@Gg^QThDS{ED{E^OTxR37rd=BccQ!3~lpJmpv@eQ{{2=3#hd!;A^6`v^( z8>rFECBGm@a3QD>=V#K*$0c5xVP1DV*RSVCjY7Yc?co+HJ8l#QwOmk2fhPS@s+9vz zr#^i$8u1H!&a7FFpXR;y3ziQ)V(3}+=+VqBzP%5SiOb&OqWd2EIm4vTh0G%zc~p2~ z{}u;BwXtZ<0$iMx+mR1O#Gg~IK5p6UiRytYTkEdaKC!C$;9eCeujW^V(GyAe9)J4&3|w=O`=7Li#KPp&<^2W`B@xHInv8=NAr=En?pQ#ESv*Lz+T;RB!K>Cfj_cPO&1$Vx zt9y03S!+0zIySe;J+^wOR?ZY_g^E+IH8EMXtY)>`DCNtUWGRz$tHm}(Z47EbbB-x( zA9{kF5vAc28F8=VNcke~RJ!R$#^;4lW6qJ3sc4tVPdC%Q-O&I~J=uTTvDox(+2vyG zf*GV50^O6JlA_8N{WA5I{q6fzM*Vddk$z@G5}~&J5;J#7L&=&^Ge2z8Ze!lFZ=@tY z+?KtYSsT-)FtpHj7kwL~_{iw`0Gnnwe-Nvq{oGPbtVv0>B znqq!UB30%jDd`rn9jiQNw_A5NY)ZBiRABRN;$KVfAIJDCH$zXBuhikJMUNYKhkI$L zUupP;M{SlciUXY1V+^$7qEci5hGdyy2p-z?VVy}O6e!v&!>X!RI2lo#Zua&2nvA35 z+OJzo)U1|p_P+T3&Ch>%^TVHBzxw{@#gA`)_~!Lb-yZ$+{kxxkcnhU?@XO)hFK^FZ z9-qGkJD$f5E^?QNN-Qm@lI%U?WRvw&yqV7gC9w*_u*-mIY2w!Q-6|kkoov39uli+% zsj+FHJuP{e^~0@^VHO)M9JMKT3q|}{iDz@?@i)JmzIqjT`#Spi)z#s<*vUcc>Ld|A zOXMOMD_wB&oC>g!mR%dW^^s$d7j5ujW7>2Vo{RTDMhs}ULxC2X(GBg6hDC z(vB)zJ{03L_IQ#uicG6vMPrVUCpVLBW>S7W+pCniZ243Kxq4D-uL06M9qx-OG?hk+ zE|d}fuxZ{6{$*zqts;FeK#Jr=D>rErM&QMIeu(3GZer!zWiVnEck}acznJ>ntRsGj zy+(Y3Zku&MichmHQvp{r9Jyr;b?-OHg1MUpPs=WN4vdJg04%tZ;p}$UQc}DgVt@eC zI5WSo!ywgh#w}~)GHf-l8w1-NI?aLY_!au7frO;QsxCR`w5I}VvQa>vW~6(i!m(Ro zp+lYuc%A#;yAm9@4=UJ|WHdhH4-9C^@K-hDxKN&DaAeV!EJ&twMGsHa&|T zt?aayy)-YheM@ans8Jvm^NIBFo0F5brzdYuz>8X&NISPPE+u|Wu>mQ@lDR~(%<~}y zMucb+Ms#-2h(k;Vxpsa#4sIvG;`#5DS`rX9(~2~;?+`aSDDa+DTvaZ$3@(n=E2&z zQYD@*TqQt+ZlPqQiq&MHkuH}bnYS;F*wy*<<=awBicCe-=&BV`$>3RjkX|xy~M%HkTFgMLG4k z=SnD5Jyh%L$|U9a%sXY$O~J_(#3DRWPo;a+YDX6Ty7YTvhK|-0LJ@-eG>x{FpjDex zbTF*yiaEHik=S&qk%)m5ArP5gQz__5t)cQfhVjC;EwNHJLVTFWkzNb%AELsjKgsSKHj;SU;784>%g zq}^)=A2A@sG`ux(LGTXtJ;&~1F!Ec{%eT>WT}Z~DUU$l6w^9x2jh0n&YZcFeWNg@# z8fdbPaRH22C`c>5qE#r=i@AKaC zy%7JJ5%GlgGSkZ4V=wy7cIrdLijd`6HGe+I z>QYAMlB9UtXy%u=I`r6Ek$$HtXVtHV%ZjYTkZw)m0KbdVZqz_6%7|V$A3M7QBSIG* zy*>sbsz6jm)CI*a@=l=}gJ!)*UfMB4sw(4uVNo z*sEuaG|dR3re74*EJWQdQ`&^OrgUjD&>QhCqMq>^-q6(_rsrG|Mimi$Hr1MwD>n-jzg+Fqs*$tHcW+J)-(0+V zd3o?EcF3;IiSy$`{34T&<;wAVHC1TjOAb?23y^VrOi3$j8U+D8ZGsf*V8o>`B6|@_ zzef6x2W;Os@oX0Cx7nJTJ~%CB))J2!uw&C%1g)_oql#w@t1r4@Y8r$k8DO$PBLz}~ z3QS0bYQZaHSPPGnN_r*w#bPU;mvZ<7^rF(ClM7qeH*;(t1^Q$dHk0xGG31S1ZF4kz_O-^#YFY^RzbBbL&?e=-{J3+y%G$IX-;q^se_>baY5u0iZ4uNL3|X}Fvea$F4&b^(5f}aL@;6h;v>@@Olhs6#wqsG!V(q4ks7s0TL-*{S3%x}* zZ7^aZlS!OMPTrlJzB>ai3L{>~B4Rvt9s?;#ZDPoXq7hS~5tFS_e&BFLeA%H!ykT5~ zbf}DYKkaZeQ9`Lqbd-8T&JMMfUvp~M#7bs+V=V^?ZET8Z!sCT zG;%9eAzw%rV`qtXzg!%?iXXgh6RW=pkr+Day+OH{23ma1y{Yq3)%eTwC2y2)kN95ZRzSdo>NU`I?HzZED#CYthg zGGdksio7Kql#_lr1%Wsab*PNkuVz4s(?(&~$oJ~GK_lNTCOegkVZ^Vn*NC5X(@*Q+ zM~p|y-qQl(RKOI_X&{a>_HNXAoOeE8P@7=pTgM)^vua}6xuIn2U?L`yQx@k*{09em zxneR)rKk-~Aq}34Qx=EdABFo2FeY?*@i z8yCi=AFikG)oL6g{x!{XK1jy@jktn^CUYSjQdm5!m>;Xju{VtOdb# z7XM52Oxi8va6F_tl&k%i*o;CF{b#-Qq{F;W_SRrqB^t%eo~z;(QV+*E@s2m@cw-;j z$@={f`!ZT>`Rv*-o$ZCor7Fc}+Ro*gl}g94p=PFCZ_RESU!{F+rBVWtPM1!@Ffx}9 zwT4fcM@rKY%}HUHaVNQ&&y7k*DpL2N6s6yWh^>L<7&DBiTqVRK;Z45oe%)&&>6CYq z{{3`tOTMH8B*RISy?n{kNyb`5cDyMu#INaP9S_TDR{@ zIAjGee3N8WNq%PdS6ZgrNE?mq#K)eNKoWU4;=ykYXjCPMpUs zjxJ7^Tyu_t%VVaSsxFLQBoY@1SxtFdL4R;zJDU^;_2Y9r9>SFE7$HUjcLHrhVZ<=(K8VWrD&rj0W-(VwC9)T>@Biu7 zZ~ye>$8U~*_zOt!?e~8^IeKx4vyoFnsUR#yV()%AIQaGS{LR(TtJAaB2dR_OLNroI z#2xx#i&3XABHhSJ#RkTGX8ly~5^jM45m&cNC>e&)(LlIdIvz`&3j@Er>NyYKEV)*% z#4^XPF5kXNzIzopd>cDCNSq#~E>Dv2NQy~Dh+LhJ%<*T1N*fslVvItd7W}< zVC6>jLZ_7Kl#)HrUM15hB!|@;4nTq9MtuYUw}V?MZ{i&_#MXy4}#@ z=Dm<&n6i3>9XzeXrgcN%BGn`G47{+j!H}(^D$%d$4_`rnS z&Pw<5Lcy(8Jm^uMjHuzYaOv*LLO_N$L;DySs&V;HU4)bZ=_SNY&Qh@;eI?n7lKq)) zXHwNC0*)RrVOI*BD9AUaJwwQsN{1je5{$e7$QQ~Qx(x)klitI0c+a=d-cFe^iVbYU zFII}~arLO3enO4-7vI~mcP$hv0RXzX z@20`cw0(~k9s67Sn!|9pZc5WpZPmoUX|LG`>YQ~2)uLO>7bA(wqjOnAJUu@IBc4Me zV$)!0>^vSnr&x?%M3a}%Y&2F%B&x{-i^)p4QPWyUT0clmS&&vlU(g{Fg@&!`QCp*? zVRDTWV^A`xmm6(&FsW*-!Zy6D=-+7BM$el`i$U-lBunTcA=5;OH_|~#6rpB_NOV-Z zBg8boUAA56S>b8Ppz1{ps7{0wS&t!273>_%DBk^e_|O0S*KhyF+rR#g!+-wM>u>+( z`MaMk>|DOfu#KgOX2&lMUwwCQ`18fvACHfIIf@@#7(TD0~Ge}$-Hire4Dwa=PUB3L~>dlL* zw=b^_UPn(3l4nP$=y@8GmE>t6e_5olPApYUWUI*>*)h#3sTLF%SKydyLsInIRj0Kb zP_Iu~^e&(J4Sq8o_Y-N;xR8!i)MO1SkfM7D#xjFRD-P8qM{5?vfGvl+X;~y#Q<9!) z;J=sUaUVTZ+vcX+%f&oOY$utCoUdzLigV1+E~D z9qlN|wjrRyML<%Vwki{+6s`r5lv>zm-r(iuE>ZY4Z%s)tX$I z*4^V6`^Q=LX40mAN6+8TI5f~U@xqHt>)MmzzBB5c{B*;WFp{W_(&SirxJX3EB^61B z!tGR6o;3JIg+c!Ncs~ahVqpCM4iFlU{!sK8kQg21#e0dl>7cCstEv$-31TzA(1ro1 zK5#01yVS8jiWoNw6U?}~Ao!NJ7)zb?pbhCpwFCh-1Y3;ut5*9InCCwsQ@B1f=iI-u z>vz}Pj!qPm7cs%_usbVrb6TZREtRUJ)2&(!jELczOG2I!Wxl|5vV?qt-@NakX-|rW{KP*6sjGc-sQ+=kAQNJSIs4IU^c(V8>$uD^IU^8Yq z>ynv1T>WCz-Kc#t?qXYyz164*E(9-b#-4H>=umrsecnVnhI?)yS%!uAvgul*K7$BZ z{_DLoGf~P^;mG^YN502G*csRw(-CJaMi9#`7@|7$ts$lq;;$_o?Xk6np3`xxR+Xom zS1wqYRPG{r{`U0X_3`PuvvbKfRZ=((8Y{*Vl~fWGf;kgLQtgY2 zDPR~cmHq96e`@Ni$V7iBE;gdr$W`niEJi9zNKA1PoJ&Ae$#O&E2oBtm6$yohA)CTZ zBB%}8+0X%;D+_}Lb7!~)CXBe?g~lurHEPk9la(`vqd&9N*knT^u|uilmwJp+J(Fza zvV~ac)sF{%`ES4e^?$tk?$2-k{NImWe0$`VX)MkOD}Ce23yn6lJ+mm08 z4}Ul~`}GiP%I~wtCPxs6)QCBHS+G&9T*WH;aJJ)|Uv#DZgd6*nZU&excuOXn`{3-6 z3*u+UcigPELD&^qV;{Xd{pF{#H!neommtNXxAD_=snY|-v@@5f8uSPbwovy0%Q>|+|!$G5}2hf7dSrsdD{c?hG5jT2bPb$6&T=|neSs+L$ z{19U~Oj*FML#L`um1#;BSi*?b%&Se^vIakOBO^jARx{XejDIOXf)rbYcu-1qs_8zs zQ{>bpKyR@%HpVc9k51(^rrG*8T4?}kXn)uLEh#y%ba>#*aG92&@N*lMc10YhVEKu_n^s@DP=&HDCw*j(dmk@~{j zjJ-|N#sSZ;Ponu;ZXpMFKa5YGyxm9bM2r&cmwZ0((!v?+vE!hxJ7 zvW^9fLTaQm^ys=NHg8(vA1X+3T3N7ou0CpVX>b(wP^3E4KuZ^TrOvccE=&ZFp&d@$ z?`s(Mi z*T0;-{`vgnkEd^by@+0<%DF-{n=K}iiK}?xDwep6B(I{`t9U8OuJp}f(XY_3v@bR9 z(s!Pu-jPa`f#f3foqA9!Lr~U|@p3exeF~v*C4Ghxkf}PA(6Gh_8z#p1Q>xm%6Lt> zeO7~K$+%xo?9kayy53+=p#L?M6ZFdUtS8+Y`V!@%&;c1>#3u#PbCqMLuBbhQO^HV$ z7W*GCw$8cc^stmvj!BzVJCgu|*P>k)-wkWg!So-)7B0&Qu1}0vi*6HF?{3_=VTyk{ z+{WyOH)TC|XCqvwHq*~N2>a}b!S=!(+<80h?Z$%*RAaxr#EhZOgIU`fww$4BGrg!< z#TbpvE*07~JJaIBGRZ;{KBXv7Q}%@*2duK^`WaY<`+IQ$(vSR61fo=2NJ5Q>MTSi8 z7(4wWjL7zuUv~JC*3c4ICMjy(jaElUP?RZ=S|mV*9(C5@z=AP--i5w#7d>~?#|hxw zW41B&H=u`U`&K3{*Rx+-bwxtY_D~?QrA*D%G2KC~z^4kkU@j}wQmQJeNr&9!e zdN%jy-OPH|+`3Yp@AGYRop}e7r}{Lo=RM|af(|=Qb%4RebNgrH%v4IDMBM+107zST*l5MaC#9Bqo%P~J{GG&QI+#;tB9$R*jqQH44NQh5G?F_e;8G*bL4;yz1J-1>Dc_ku+Isd-+My^Z zN^>X+1cQAbh51}rY?AQi0Rw|%M6nxH{kmi!2VZO4qMB6tR8r)#Np7l`bK+VnB+o8R zUmiye&W~QcJAQeRy^ML~yk9M}O4*(bA}RajEX1On&DPVIW}(oPrc@fg#U%`B=oRyj zI4#g2&A~}L!@ab?$bhg9pX3)U|Q976L^4X3snZWFd%dz4Z?k?K4)Ir&7E#leT zS_MDBU%x;2>4%e-pu?X}fBE6)>L^mr7u{0Pp)Yo!Q7qt3D_hK7r4py{Tr^Wn=G}aO z9--v|-mn;FvyZ%!&oK$8TnH+~pi;(GOD1v`7lo@!mv5d;Dp+oqrZn*(T#<%$ z1>2xe8q~|(dZmXE59*L|xgm4kpLved z*q0^4d9ysgjZSf77w`};B5oPmg|X1#$jU-24r`e~H4R4WmD9s|-e|*Fi9InIG&~e%| zT!i%juV?jnDKqyBx74kEt%h@JB-1xtR%}b&4K6u)q`8fLlgdd}?7%TpPLlV}l7ru_ zIrRT_Es94(q13}M9!N`ZsagYPyx$D8$;Ko5Z1kkyvi~sC)kLQLt1F{)w`pp|wkFM! z44$20wEjUf6XT)`{;(wz`_Zep%x*S>hGUZ^MmTA;vtR#vejo*<+Ke$Vwe4e!!|-9H zli7>2QY!A%E9|k}vFH7k)*9l03o(XPM!a3(V@@>xg#^Pr6Ik%6b>Waz`JxNSh#qy)AXqFOAa(DnOw&>0Y{`8)qrmC4>b+*Y-*PZ3>bLB!Q&+NH!QYq*mzfkJcY8azsb%V8= z8u9B|WsiM`Xxqf#o})=IHQq-I=h$Z$lE}s7Lz{I?spXk31*75RBmG2oqt3NN;C0f# zcyF7$&hLr}seubWpUl5_ar)xL#m_$;|NPhF-c5c003squL_t)8(*y9d)hQR*Vo-Z3 zm2=HP-b!Y(XYu%PB6XE6$FmM|J9BQHnQ@r?$fi`6Zss#yA>(Fq^<=uvdik`I%Yxg$ zg5o}!Z=`cpG9!J1v+UO>6xe=VGE{ZQ1x0*JNutpz#xYHE>T}FLFq>gI3}~!DZHF6W zk4wB?xYEc9qOKzfHFAQy!ZaD`5Oj#SEoQ!&GSFpa4F-CtFO(Eh+wMvM zA}+sf9gN6~5)UVt1n3!#uT?P99I;+XCZ1u5mCS{C3O|l-59h$V}kFWTw7a2Qct1PmhtgdODgM0~M>_Sl}x{wQp5QVx2 zL5fV2mK0-V=RTLZ?-%pi|D(f<5vequa8dO zo}RwL#&tw&YUCC@k3~Mx879AA8&Xn)Mf79vleQXeyK)^lL*G?K?73vb5$`GXW9*e!e{L*X(Oesz zt8H8IOZh@f+X=IBxRHt7u*2{~Y{WI=ltwKL7D4IC1>KsY#=xaFZyJ2isg|ccW36h1 zgZo2Zb*d#cSzZv09Pd6r60a=SH&*%_kW;4%F?Kl-AHcmw_woAsPHs zjvP0cGBX1I2~ElhBB>D^iAV9_4!&(t;6j!U887v@fesgK{8^c}#YwX?qh2KQEhHi; z2bHy7+qUZ)-@=VxNBqhEx}{BEfgp#FhE4$jaa7BIET?r4VPROy2E`;bqKTS*i9I7e zE{C*dle+s2rob4{zF0T}9bS)GTw?4qiDun}x(aY9PH+*j$vbmN*eF#pN2J!GrdDUZ z)Z@E_LQtt;bMqLXaL#e&)we87>ry*rr9-Zl$aGj_qSbXVcZN)4_;eI7lW;BWWg-;V zOXxwe^Es>w7b+v(uVl$^*?m~|pVr{N_It6QV>?E1A$XjJ&O5Z-k=W_ft4=tJhf>6c z<@*2UfT2V$WgwPRmpKT7)gX^-!%I&b8mKN=Gw?uCWYY=SUP})O_T`WsRW~y#NL_bi zgZo}*<~21T9s^S~mv$;ee8Ba%y_rxEiusOu%8-vqz>Dz>T}hdld8ZmtxJ0WFbb(L< zr@u3~lqN3^(#(r_H35@7Us12eab$WL7=J4>>H*a3N zI~IYcnKgSxjGV@zJ+}L4Q4Cidn;V@{@y-4JpMopy^aJ3_QvEAX?7@ke~ ztMJJg+mM=cU9b#=DU&|f_bFs%l{PL};_Wj<-a;j(SAPoGuY&*cuvonpS~uG&rf zYr;m#G^N7>mn@Eih_8)Za9&kYOeNQpq$ph~D~zCel~t#{?$p75%Vq_1i2c&5;?HZG zmVvc|taM8&JVUcQcZ#c4MOO{6XECB(fI6Hsa-hZ@ZEI5PTGr&6euX_F-pzV<(wK=d zao}i}bSJ!cH*4RL8vVPmC)vzC{WUs1Q>axP_IzB@U58z1dUci_N=*eBv0Y5t)0!v`@@Bp=f7x zMWNhT4w&W0L`Rm&-OfArB6m0zPkc=UdSE-o4o!KMgC{PUcF6IR`ccMG-x^$(XeO;I%8dgn&d7Bb) z6v6jF3RK8{H&dE!V}7t3f0R;vvCO7MR86VLIKP27pC=RgO@_f|k&O7%5}9P8(3etd zE^aJZFhGBhc4OIXEIN&KA7aSb_IdIwJN21gUG^II3GNmh#$zSXW-k!KL>n$Hk{$Ol zQ8XfpE4CAVHEONKtu8VKs%uAk=#@UroiX7k)HAeh zFDGKkh(|BqK_i|~AYwZacT+}9L5f!=QEi`_xQwQ*V)=Nyn#)il)=PtCRRRf?c6Z@A zVwg~aDI=pPYS1cChcLxdb3T=^CLU9oyLGy9OX{ONYg28DsC95+g9S%ERHKd0GGV!W zYa}64PMf5bS2wz2OJ}IQUBz=s8jhtDD1q6qgYnRc{WxxhRQ zxyqQTV^ss~u29PMY9%oaC6DT>_q7p+RT<0MR;PQ3{c>S)=DRGr>UfL5UDDsK$;5&| zOV+|Uo7BncP92vh6G?=cuB^O>1D#sou~WOUPO9;@=U1;!BZra5aWr)r%bdg#hgb1~%hb^o7_k~p*D>s9u#|C8nuar3 zrdsaN^`_=zi;Xmyl9l-M8K4XmkMFE_bF&9MHm*2kSy`wVs+b>W)D#L2yvXK}USkcj7eST{KFXJ_9k}*!d%%i|X-mnkx@=o3Fkiq>Du{5? zv)A3mrrTJxt#wda`_)ZQpE`wcBM%B(2Nt9u7;zzyQffz#t6Q4b1^hX(7&z6~Db(Sh znjY43K{ewR5{41K!k!Utr#MHM%YHNVSc%955^kyv+1+9U@^DwZ=A;9a&>GVst2y!9 z3Fe8Ihsw%_FJ4W7CdlyWWsH=q>ht+}p={+#g+#iT%vf3a_If2QRIs>}tBk^h((sHz z(`f|tN=wphBoT|=X(LgJ6I_0M%s@MvLGxzp>(b!+1>JTY!HARK9yCe*>*4@^?j#PZ z3!itm|GfL#YVdx}r9{r_dpJjNPJ<51L#H%qmbZQPmaeV-E#?Qa?!&zQH1FR_QNeSp zk{fAQazI4Zg!OYQ^^=auWG1?Cs;B7qo)z&7oJtxFd1c!5W?i3^;~4UoBaZJ7d|bze zVgnHJt90AdSKhwgIFT=bn8 zu2`HWAhTg}+_t75$YB#d2fKYugXZjE#^xYXD=?I$EPQ+4-Oy@-yEO5 zJpnK7s}i3z;#KVYDsdG}MkC3{WicLauuWz*s20b9JiP_j+(bzQzttz zXdDLN>&uRf{nVp?W@U(58aR+&%uG?4$mE)iGx6(`M{V4h+t{;4t=gz1#S+h&Y+t;@ z%H3+wDWqEEY`0zn^T}2d{v#uf`M_G=uI$;d&jguLpFUyyHkjHbT*4JW@t5K4(pw5* zMJpB<{qt790*4eRn4!7Nm zh7UXa=_l>GNn3i12Xr|AHHy#h7N=G~uM8)b$zEKwiqK&!cxXQ_<8>`My~!7157;x3 zgA6`PJ(EcuT}0lVM!<`2&o5pblMW9rGN+NkWxNzkRN_f-p-O?(SWt*zhh2h8;@MsG ziZs4q6U1DWrmUJuBMpR|Y(~mUGUDP5W=()rB_EY7DF)(l&cG?YdB#hv1>1mxd!8p9 zdxgnU2Q-EQd)ekKYdKg3^;Nr}{D%Xkk}|Edwq(4NQ5J9^H%V+^4fR-85SPvJ%r0P?H1hpwdLcB~ucX0<6pqzQr<5}5h+kpP zh&R*rme)D$*|70yAG+AD`!@3k`ptFUUAF7EfX5yBZcMsx>$q@YHwKI;ajivov9)HhpNqNq!?dl+4+59=TBEQFv2-M6t`N9zjnk;dtOsll z(++s_!=ev@+;;6nz?`nJ!+hm|U6=f4g3&4hkQ^k}h9;b0&~MiDWCZ6pE_r|!MC!Wd-p<=M;_XT1lTBZa zCZ7yuiVoJA%kZV??GoNc`tAzVK_<>V(&C5yK48S(9~L+!BR+>%`SzX@ZDtvf4OZJe47{drL7-PaP+oR_^|HO07^E&7LcJJrhbI<3O z`#$&mzPk5cGQ+-mn;4IQxLr#WqZS1+lI6rJ)+ptwY|u=VU@8&!e!(F_CulJqi=!XTlmLf$i{h4@J$K-!m)R zR~+{8$@1F!gxRS6#=TpO4`hyfX(`QW5q^V-e%Cc)zu0(qH#`L!3k_%Cj$>_|NYkej zfP>5TR3k%jfhLkjg0GULRU9zwqM;W_F?@BvQ_>#wBFjmSpHo8PbRglZkFs5rdk?hf zN1apPv}EZwxg>Qe%IdC9oBPY>p9KxxUiV^?m|*6;*9^o|fdVF_*eX+w)sJ=mE;(-1 zr=jl^lp*}kdT;L6vA{}wYq4r=`70U6{DQ8HTc0b0=oh*_ikS*_7voT>9e9$Kam6cI z=yi-n(Q%uJs@uHR08m4Df}mKnvp_nyQfNP1MJfD9hPiZxwrp3I--BS7)`Qg*q2MJs zp1UF7lQE9qEp0rJZRZk+z}J6w zt{02hI+v-u_i^zS^3z3*rkCKW54qo!PM`NA;32i|KVU*K?WROcgK8k<-scJDo4U@K za9G2O4Wz`qEc^cOn}2=7bGKNvbfYV6_e*Wlw0t%&7MJvl4ek7XxnZDch>}<~glU+J zlD_jTne>iV38~ck6>-^C;Y%{Ok1`N=T-yJNb!xA_tiwm8Mc6w8$h6b5fQJ$`P zV0t|q^1YSkAA^r4+87r}yyAkMc`PL`S-LyBq z1YFBq&qh>>pEgtG(yVy&6flw=X;0RlV25?Qi-(J8Ajhn;`rAKLr*5&70I< zRCZg!ov!5KTlWoliWFU@vcQ;#$7PV<Pai*ZoZtbEhv z?G^{9_fiM!Wj2>jcG+7&g>QicTCzcrFVdY)!+3v##Kz}?IidyH=VCgyjw$WW?o#<{ z!2RB)S__eC2O&dV_aW`}k7A-RW1`4q9D&VLkytM`m@{>#ISkm`=a^?ZKv6uaiAoUZrQ%sgIUe+H;Qddi)-ZUtZn|f z-LmupDyVEF5G5XyXC1B;B6T5P!Jein*9{soz+a>7hV|Dr5u1uflZK%cu1cQuS)mkR z>1>Y#eML8ODb?}c%j4v=ys|_9i5DzxICkZ;p@wMx>jA@1XQ?H?r>`d0VS;8x8EcRi zx$4=D{((WO=RmT$AzW&)HpXYyhmK0mYKrCDi0|j?pJ^RD5pp?v*-ZX)xSWuSi%~nm zT$jJaMnyZXTQneRr@;BtQgykDV;=iYgO;8XJV!#wYN%ONvP&53F`tc86? zuI{gjh@4LFo7ReFz6v@qiz>QdQojQ}_@Rr;&6Mc#iluC`Wpt75j6KVRS4>aZD#*208(3%Wz>IZTC}9cJc;mnTHPY z+eq;kF-$)h`3BK@s4q<2JO7xJpC341XOlbmk3vG7oXhj00K4pGLvrx5<6?4}VKcxW zBRRKP_Ik08j%*hMr6UtZ6yLFj7pVTDf_?AJ@NCUByB=f_6umn2&Ctoq!;MFYTV05lW|5VW-REI%;O)r{i8 zIQLl`rC;%Dhx+$hbqrr^*4NVd@HX_!FA3c3MzG1FLrAOsqXc|B%WWTtCBir99xW*R z=$59MnAcb$jvm+6?xGZoO(7oLJ#vCxQ${?S-A1E`%e(%e4X#gV%VMO+>b|;kTMe z!9PfKj-+6Ri_stZx-h&KePKtADub9uldE*266$b(K1gqS z@vs!z+8@r`yQCzk1n4A8j*w!dTZ-o4qEHrtfvc>X)h$!uBkRyMl+zfrC3Y6sLab~X!HjVA zPcH$H*s4n0jvstU0H_KC1b=p0GSJ0Aslo^9J45v7v22XvAnhw~|&(BSn3e+e{1uTt+r78*1$g$HG`3_%og-jEhI=+PK zZuDcwVa={1f+=gUz@txSCduwP>j(~1)co}M?CA@& z-+DJ9)zMB0Ax-m8L7jUe!Jz{S#&eu{lP_WpUa@+YV-pbyM$%O5NLXqcPH}agxLlxf zW-PoPnN;P|TNDGg_Uz^1M1?jG(9yK@MVQ1Y#~%GYnW8&bsMol$>`q&RGR|V9c(=hI zq)WaT-_e-f?jV7 z)b#pr;Os;wAMkJ(1=JN5Q(>u;=4Ke@|w=(5vaiZYLHN4fX-BB;n4`c$Qb z;QF<$I2Ma*&uX_0xXN7K6J^DA648h0Ebh+O1$1o2_G>gFhO{|ETI3tsgKM+2t#;6f ztnC>lMq5aT9xoKXPtg+-V_ueBAbm-Wp>OJO3O{BgY{NAhShjH2kQPk`x2C}mS%?RK-)I;jUZlh@~hu}witRFNM<`vzykWy87IHt28 z4DQ&XjH7ognWw4XLrW%QpRTlkKXhQJak73OSlUzxe!9fs(T)!hbh4SM@)1-P=bqs< zG6~HlAtLk_I$O7LX~JKQdkBqx`O9PFREYauZV4G*|GP-}68C>+pGi8)!~K_&m}HLs q@YKVQ?LYj#%>U2kf2D8Sdsv(()U(EC9wWqKN0=B{8rI%+fAVjh%E^-e diff --git a/docs/assets/images/zipkin.png b/docs/assets/images/zipkin.png deleted file mode 100644 index 2640c1873e5ce0397922c9bea68c693b85195298..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156885 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%0AZ79RGn6>pA@ z^JA8A%9K5md%a!$yQ@*q`3vN5m*=djURs>4Dq!n2M-as1Od~j0~1epHfz$vpN-u3m6Jw! zrbwIp>K=3(K0FJ0f+~iYRl;{S1=Jc6_1G&{&<-)f1xc9&_517@B(?9dJp}H&m9($n ztNL`#C%uj6luZ5h;K5m#iXJt31{aearU|bc1l}hXyaR8c$&QGOJpB6#JMLJv|L(PY z{SuKpGWE;mNwyoCn*Jt(j&k67L+Md7BAuFYx@?q9{n;q~hW_T%>C;2{wNzErA2Nig z3c9GAu+>30Vo^}@?SOseEI}fa%S3(R5lQ&+Uw}bj6pe+FPOJqX1M;q-8?%@c_?d&Ku#_sGegnG{4LkBgrGzy=sw=nXi1>J(- zDK-m{c&Q1H1E9XqR)`${+(LdUxj&FlKdYZ=)255TtXNpkmw>SyzPfPl!GrjurZVx* z?;C$2jXnoriaWP&um1S#3yOJ#F9jWB54)dV@os41BcTZgZ6@&aA!UTvKfw2yb4<&H*rUUg&IM=T7 z;0rM^E@UA#KKmQ2Uc6=vUV3cIuc9SV})VtF=k1Iwmj8beY!Ju(cav|wa; zUU%$h?($os8#&)-q>;Ig{JtWD8(c-nfD}V4bWJv#ESEQ^>8qM4opLH{H1z}h8)-?> z&>R9oE8!$q@HZd?57w`k@y>bqmE%+|u>eb#O;xZ3=@~`Sz;-*3w+OS_zyFqs4eZc> z>}DON`G_vkhw`OJr%s=q9X=U&{_x=rv1-L(*|PIgz@Un-Fl+KTM<_6mjm+aDY=aR_ z`rNAz(bg<(V}p`hOispfj{y}_=giC}CMvHR&u3q%`+0dV76+2e_0iqzGuV+Yd*!lrEKe+(Vgjotu&*4-D|j;ANBZb5@Q$HvL~{u> z#<$OgJTNeDphVhIAk@HRcJNW>&*OhcvA)dF(L$1%p3V)GDOi(Ri8_Zy4C$Fe>E!Iu z@5b0GXsr?WQd00KbBcDl%~TEg^-xkL`~%>f-*;LF7i<l=842#LmgpCaB&@;aqsy`g>WZyf zp}p`I!Fbwo8nfEflNy86VpjQ^M>`~Ua*4e@xffEyu(qRaxz!H(xHY2t)8z{)T;oRc zA>UE9j`_~J!87A%XV|{`y3zjiE+a=*yOt&m74qdbH0E%v4&~_ZI4OJ)zR;E=a$n#) zu0A9dUC)~|9`PtH$PDiY`v}USCNiEOqAUJPJb@*T&r!MApyjTab)@fn=&IO`Y&4DU zeGr0~DPwk*@i~Rd_2yz|ej}PL-NB<+L7nz|hbd+dZYZlAcW` z4UGjTd~yACbo|6)F|PX_C@>JMZ^$WlAX5 z`+4`<#MDA9Ge{7)Z(onyX6)yg80vzbP)DiM_t2r?t`*C54#e_X(HY9kK;s(yYjBPo>Eu1uGA7FUEb>_C}M&F=9#JJd|Um6xZ$w*6UiuR*F_!D6fomCpve5aXkm^*fkK%liR@?{ID^Mz?F$WAuM{F7^ zVa>oG{~hz@GoT;Ka{v*X+B-OgM^{X}Or1JPR|93%RkAHyi_A^vj=peV;ev3PNwaK>9j&ayGCis)MtVxr3t?QKf^p;H z0mN7`kIL@d18fW!yTHCQe~3B#E}&j{Y3bA%Gib0Dg1OjN&GBHoO^-ok>XUcx-*dPp z+1TKQa-Oja%4X0Tngh|v=Ux_M6dE@SR27W5=+2)!i7f3JbuSdegY4`Ya7~H&Vp0bH zBA~!C(H>8UI)W$pkP!rm&nVJ65eNG@3Op<&(Y?knS5bL)0M8B$NocVp{5#?$BzP#& z#6TMWiRTP!F@_=X8FfN@w~&1`72xr%r7%YOzTQ1{5ro-TiPfdC zn3f91VDz|vWKeamd+5-dRbF}@~ z9#UA;bCt5vdNox@Rlr}+x83%Q2ZG_l%qbynoURyB8+ZWxOqqQ`~; zmD)7U5bdKTG7cLp*pg#!I~lszV;FpMojGgV zGU|Ih4>E68XX9lsMFjs z1&$bh;jebxeTqLf<#a}NHg?p->#jj)>dd|*e9ph+xI4uK0Zv*5_PDxr@GaW`{8>m? zTI^z<3`SJH@iES~n!rNQN^&Cy1^LTMv3|lHp$6wCIx31` zJwzTh7i@3Z+@a@lovBxjB%Me)KU9V8kIs6!dk`2nDx@&^Hi*EXIj%zCQFXecWM$>m zRm8NC)|CN$dMfS>oq-&G+vpHjGYU&+*b~&pZM|=ULHHw#kS#YeyGM75`Iv%ZoH4x3 zvnV?FIBIR$h#AQlSIeGg8{1B1HDlaz>Ocx-DrjK~Sw?dgn;2KFi&L%VykDM7>#6YN zVd4VvRNZgcaBtllW|3NX--cWzw(&wXO*Ei;h@KeaLS2Xwg@QBu^227C8l$>M!8i-F z*w9{kV8-P&RBJ?utUfbNdB0Rllr(A9j3sI3*N$gr8h^7C){@z}u&{>p1WQF-ex%v; z4W;_@H{}vY%-dPT?qP85^by9oeN#O>4X?#3F6E2$4{52Z+dDZ;3d+SqNg`qI*kOhp zrsh#2c0`S^afu(2lyJrfo<6;tyK|gG2JE5~1RN5#7zsVv`jU7K{r!dJm3KlQ`Jg4M znBLlJw5BTiCH{Kk1RLf?X|R|KJe$pL~G66I_2&y<%GKCwu2s3f>$DGP-e25B@F_i%oOV@-J8y0hA* z!8v(NANn{DZ2&M_zsHOnn_d?oH{@$2K4?dkueh#u7k_8VGFaMe^*#Gb6pF3oAj7=( zB~3i!F1hxD^H$T{=!2pt`PVMOYDGzg?$A#&!P%hU5uDhRJM>Olz9D9O&bQ3N_Z z9#l{=Hxxm6$?zjXrq4^}V8e;dVJvFjcrtf;4GnEIFB%#V7;Xc#wue9!D&+G)|40hl zk=J7i@xcBPJ8xVZTs|bp4-qk_q?$KvO1;Zoxaw`4$P51F?|9H?!N8U>5IypM5dAQ2 z4JzPVfgVUT5#iywvbRJP)Dhg{J&E@Gw~vm_=hS13WuswJd-iPny(&v1Hmu<$pPP0U z$^X!&0nw_*%W-C{+ES=H>%!3cm8;Ft;lNI1gA#u1=q$>g- zl9uiY2Iz45YWiyfE~2Vusne|6J>Gx*9ETM*fM?@eF^mM{V!(!}PQM3v5I*!S(Kl6 z-0O}6|MLMix$7VHXj)t()9@xy1~#oD&LW9fO=62yZEDnLMsR~0?$$Ja{^dX`JblNX z;6M|TKvnLHSU?D3+Lroc-vLPu2|UxQ;s@>_nBh- zRsG9#h0({K_f)yJfr;HDmAipab$^@+sAJYwshCJ)KR+rMj;Q}%(6%3=RaH71*uDGW z^4tVwt|q-)MbDb@j*ei-iX`kQeE01u&vJ_Q8Xdy5XSRntRPWvc2Ml1*ZDD$7OW9lU3lD0) z-n|*;dj>f`g_ils&S*SoNigxn{J-FFz+;ihC z&l<(tw~<%PwucD5=-bp&6mJ0--(}l}OzY#A`&;yYkNekF^r&zRS9S+BCEJ5wkz?8p z>X@_YDpCeWY9W>B*^`i3$1ejXGnzpJ9?Ie?mRZ4;@HDbQj&}}hv9q{ zwDKBFoeH87^kB1QrQg2wRPNlO6$nB5{Q0mEBMyJ=iT?lb<9!eEpru*047s$FgbG}y zLRLtT|8e7=XbtVw?bh?>>xp?pIH*=?=MYbn&rwXMl$E*GR1Fc#b`>fq4>@>;l6Q#9 zVi z@u;2bEfp^x7;zZ3+~x??)<7W zY%Tt6P9&QhO}#s89N%@fd5}>JqH!iLh+(*yU%7%|vZm%zs2lr1P?n%ji3}6Jfvk$w z(_6}3WzM3mbV>PU0#){|}h& ze6)s-v1Bf?3OF#jtK~5ZxH4w!2j~2?wZ^Rb9?N56z=h~+dFIScOmT^!XWMJL0R$3m z88nW1ZwH~#7(R3QG|vyf71gD>DJdwAh{uSH4krCZuIt#zJ!0wUY4`)RYt?F`C6{+U z^6;Q!cWeb%ii{d0rKJ6_UiULH^tyC0(e@L^9hQ|2JrEvX?QDx0j9oQtOf88ggN6+0 z&l&55x6X8)JBv2@Rb2-T8q^2LoL-;G4;NBjDw9LpEV4VsBT3VEyPNR{s~Kam46dK5 zP2CjF7a<^Zp3l+cXj3w_)H2Xxe1qb`YqTAlS^VG_TFpLpkM-)qSSzw%b<-vu2?&2B z9tkJ6>M);%y-amq=ONb^E~-$oZL_#9L<6Nw4~5_oiSo+1KTIFx_x|trZ5R>Ygw)Q- zDag;So6^dIx)?(;0yh#itCiPXs|Ki z6VF56(z;4dXQ9Euh0jPuBFg3*x7_)a>1;u2|MeFUQp)VD)1j7IZnpb<`OzasIthm) zgtDxwx=6i6amU!K!WVrS)Glb6eY@cCjvYGO&m!011H;hTc4-=KfoPNVVIIvVh@S@z zJ9L7GBwKEx!w15w)J*3!^lqzr9QMc@PZ-E=jKM^oeQI(pEy7A35ZY2~>Xp5P zqXmQaP%vtGDZ;+g$-^4NQB?0!ubZv3xLO)v+YMx=GCI zp{fOALt`TXwLZl&VeEdiJ+$}BQofjS#> zNx)e;8bH^RkN)VoGpU^gwU65k`#}X!xy;}P`{+uWdY~pOizpcue0Iq6XZha8JvwM9 z8&I##mZHSsS*V7DU>|^QTPlrZ&oAY1S*T@bHGFvD2-rkw*Ui+jtg2B}vK#O}2A|90 zb;}$s&MFJKiztB&1{euq*BOY(h3j(m3;AdQcSjRUEBX_ z@qrqt*oMF|IkWEUk7Qe<)0ts4*~1vRW}%qzZfylyViKn&B57LfcZ8VDM~3;Gc#x5M z^iZwjZ^u0zGvx5V^)8X;N%C~EXz8NGt)T+!>=GV2#-_V6aMg9Ld9V zpk0cLwk)o10H?2}QGW;u@E#Rf(l?%cv@yJRr);TMI)8rZ!+C(KiWu8&?p7;TuQr6s zp4IQ&^52Ca#h+v%UX_gxSr9VW69GF-s482eqL6m-VW7!!dk7M=r(sq=S~kRe%FP}5 ze%AN0f>D<0veExVH8>-@loE+aT=_kuwcpD>gwn8L=T4h8IFfVNav9Ss*prCCxNqg<2uhbmdJ%?{ zLd3;o&&PbHWXGg6NfdtA4hVk>XDj_f{ev{Gl9^z!BW9hWOZ4K}dcX6?eA~8a1*{@k zUeOJ4-Y}=Dp_wa>Yk?jf{lr(6jp?iRv8SHi-UoR|CUW4t($el9%6BQ z5jdBU;&2_53&WB1Wagf>An!GW8H>2Y6wCY^`q{hgwWUGvnh>NLh@U6`>Ft4bnSrUT zK7a}}Oz}UZa6%X2*rsnrkDQ(~>t-Nw&9SW=%Fg0PLB_^LMzwxr|12gbPqE6$Ka{6` zOKGz^XU_J^xhg7-s%Iz1k4J&PTZ21u9$D7L_3j%s=~$1`{4Qc(9`P zt$IZPhRaKy-D{~5)O^d$8+{fi)9kzX-LUhV*|_6RcAo!xag&|Z74`w`!rfMpGhW~Ww zx!VkQ3m&-u?8A;2P6uJr9=9_j0G^J{3=Ca%3Idme7Xu(BbcE|2OhJus!7ZR~Y{oTg|J37RWW7g8;4lM|J|!DWD(Kb^~s(G!VH)3oFXjf;t=2+6zx!>+uE| zA34~{%8GHM8>}6`_;mi+lZDWdVDx9tpRf4+FxnOliM~zkKB12LwezuGOd^W=*5900 zeph&osOYuL52k?A;GfBjAcUHVHvsrGj96af|KoF8rTLg^Q!a^)93&=KFguiDi=l^c z5?qxr2@>s4>+`|EHy5}szn|YXijtezCCH(f)2CNfRf*l}-@mt(t7`s^!^%}euGlf~ zKobF&){x38T;0~JVOwr*rL#DfoNbqDqX;Xc45Q>eGxRgT_suoz#qsrQ)ig0?!A%it$aR z-58mq_NAq4?eyYgq1Z1^8I}bjK${Nn@*wC?IyG1>oxE@L)v@w*wUt|^AEzg-D=Fym zrAvj`u|s8OP}Va}L+1-^K3_Lp{%VuCwiUym+&TI-D1cW|XoIMzgt@K!l>^e1II3~k zNq97{Defr#kx25QA9K%h^34xU=Fvzie{Ji@0yT{AkbS^ zHy+~;;D&OvS4%d!>uwZBx%@VD)73>UH=;d)7!DgYvoi}1XAVP0bO!ofr?o3=aczM-Ro0PKE}1cd=F>Dhplp$ z?g6MNM8yhM7n*?Fd;C^DzI}^Y7~4V1q3)S-bL~=C333-#Z74Iz%wnQp=GvV!_h)Y3 zdir#R{k*)^fB#Amp2M4?{dkeA6rR`X9wWRs8l_d@Psz14>B8PXL7H;T8SJAw#To=X zv2-G6($lL*-so->++`X#A8>Zvh_{L!iO<8B5jz)!?I-th>nOwxL+2Lu)$oS?&a2H}IiXZ%T(47G^Pr4I(8!MYcU8pf`39A0R<^VQT@=kToUFR;?v7>K zv}yOkzvzC*U?BVt{KhE4#AMRoJe%JCp)=$DKi=LvtmgH7`)_YHD`P5ChODGa852sy zGDW16G0Ko6QX7RdVVR}c86%ZYnMs9I#+@liQK86GiV8)d`n~SewmfL?%6a~*^00mTa-HnJ=~n<~5j>{?LJuB% z`q;5U!QO1ToAdnJ^_L}QRYZbKW^S7+_Sx*&in$Pg0AcA^b_2C(P#iS$kT;Zjw~T5v-VMOj->OK(yqr=T34S@kBu621H#X? zT{?^h3D_<%h)IlTd+KT*?m`|tG4L&uvqC0=_;-^2cyO#Ebei~IepM<%rbmVsXYr$FI0 zd!V;R(Ss3GAwH9IDFMDomGt_rES-h<7X=@wA5u#pOR-NOt0B2xvU+u-2>32f^o6?P zEFn8S-h|;IN$Sql?kEr8b+uHtXsd3agD>H^kNMyw$A0wM@Gk|reH)W7&CZ?e$j$m% zksPrwc=MzXbTuSW6|xM`ZRosHt|DXqQK18uyzXXySJg%Yg}Kxdj6A7%gT4S_n6V!s zIB-UoBEsr}FCMe%*pd^+ja%f?)>JC&0+2}%!h#bRL}}af6)ZUb-vBD%Yz-a-V%qHE z%b~0xnr@|deSA3@_Gy0)*N980qX=|{1M~kdOnq^F_fIVVS~=ikdXR0btb`rHty|&q zmx}BATXcS9&uDAwf$;z21FTp4Vfylx7`RgJAh8rA#I(X3BY)SblIzJv)rYxdgmJSWQ9z95?xi!t2HiZNZ^V*pn!I#ODF)hudo`pwm z%hAGPX|$f^S>c2V2q?y!v!9R$aOUu|^GL9Y^B0O{Vd`Y)VR(A}zzYonND3#9zyvU$ zM1w63+6j9tT}2gi2{|r}E~r#tD`IrTo zA>=0%m56&_Q0Vj3o)lp)vv$`!NyA^OE1C@bSNF?bDSv&kaV2|)#TaJorhId*n7fVG zx2i+!Y3}N)moKR>DYgiYP}(>wkB+jWDuY9$VytAqa%}EgZ^%~ z2(J`mV)>)1V|;$*h)RAsQdlnF`|wFSt6qbq@b2F;1cP@5Kwh@lOj`pKl?G9k|;3!;{DW%+ityHaDY>7c?FGrbt@-FFC$R#-6V+L zUhB@lhLz*IbbW}WdK@`aimB+vEzTbqr~1AwyJ%1P>oBqq3yt6MfMO&{6>*VDwH_ zZQ$un45DuQLOf6YUTP#WqrL$GVulm~SAI!$*1z?0=xa>4?t_N@J039)(k;+C!lH2h z85s5jJDVLlfSsRnqAhrGlDyBtC~`wWvO zNLMy}H#zFYTl{=_dcdjr)#)-%P-5gd6)}{|NM`AM+;Q7MSQz0JX}5W%l@(IasR?gU z{u4kyeE4uOJiOn6J3AHNDYWT8tlj(U0s2maT%CG>k&I5pNLCdBD^7xQV9K1AH|K2` z#iCg-pnat;)UIWD0m~MN-g8vETMuDI1_d?ADhpj1W-L7}tz&*PxNn{g?T~2P79SJU z5=bp?L-V}AO!aKXSY@FlAXro04e!DPLR!ENcfZ3^2I@H!O;F%)fY4G=IYX`Kxf44| zV(z6^*n&={Uu5XeeTSkk7{KRXxC8(tejp4Ghl0PvhiT0yJUtSQSm z+tt+c`K?>sjg0mmilzpF3XhLDo(Nn=GWE`f8dywY-+Bm3|4q$1Aa>Dk!Ly2q7a`x; z=)WJU6|`Mr5CjIU$bVkH4(k6flOdaYej*%GHU8MY-`onfp96H-VHaek4YG=X@!{^m zM22Kr*gW8nPC&&k;`LnfBa;!xZ{94~DsFGH=FL$gax|fG65ia7>lEC*-{TBA4^6`C zPxmu5^#z6aH24}Q6BU&DXk1~beN*Y&1TSDd=%HvXo~_A={*2@8?%fhde)ZAVpDZD1 zKGZ$Jk}j=|5tcbwMPLuSw)k#1wNYS7LNMjhjh_KJln1&df7_Vfvy}PmZQIhegYpus zzrK^@-KWA31;{DQk(T2PK8$SZ(7{M?m}f+cY>c3m#~|ArAMb(V1=`C^*Jq^ocqbhM zOhyA)(i#Skb=*ou`x<;8eZd^?^kHJnLD|gc74uVH;fA4$IIkc8NJc}6X|!u|Zyz3? z)>pQfZhyc_GO@^My3_u%TcfFW`W?p*{bLzE(|c38@Ol7D12kOh@*0s0$x~KlW>>k} z#b@veoGIj~_ix-_bp$A;BQ1Mv29F7O#-K$KhSg75`RpWOaVr@gE1SpQnTOjjy!PVT z?-i1h;U$?oh>Q%9hch-kdDJ-Uo`e#;?LaZBLBL0-K@YiT#Au_g4k^fKM?}R08DZK( z+gf6Rmr%!5tiUXjn~`mMp$QLT&|ynk64NF%e$X&cbE#qSFS(m*tKR(c&r6Ak058mj zROH(pWR7p2f=b@87PD0<8knFlE1kvW;z$FpX}W<~OSC}+->!hO^zgvV(9>MD>%XLx zGXAiD*S$PWASQ8(Qwu-8>5uM*aTfRn|5M)e=tDKkA%uc!s778(h{ZGq<=C-?W&79;v!(U=NQc@nysIxvpzkQ zb)}mf{-NHtHLqPsYYIWR4= zvu;OK3TnsIZ3aj5j2STsw}A0`FbL(fl30kN;XVrrM&{Jx6E`ct(#Q7R?#1UdWoD#0 z+it3E8HLjwNcY4+Q7J~Ga4=t_Wl>FGtX_}JMOV+Wu(K1c;|?8dy0ko7b-Aa5optF{GHu$}(W6_*`Vg#6+nWL+;V(@`4Y}sp z;axOOt)^;VQurGB9&CD|7FdASS6rMsHHU>o3+Zc85DGCa&p&=aY%YObT@2iypcp-7 zj4BXhy+g%<$cc!Lv{lEEKS!n;Jefqj0^IHM4U=8|!^F0uPbqP~y}m^phnEPuInS60 z&E!BUCeoM>P)1?L1IJL0Q}_0Dkybo9=>NVGGbPr+eNhHpvH^m%y~fCR_|?srH2QK zNV1v5ecrM`moVMdVtqsKVuUbwId7EjUH|8E>nLiztw4rq6q zgMX#!VN(_@>Ot1*He_!5O2UmGU2fl@ z15LRO|2_a^Q9UBF?v(|kyB79;9-{hmZ6y{k{gK#?10 z-W$8wFmcJ5ND-|3e4CV&@PGMSsi{&$dw{ch^91cx)%MEwOFkPmUqZ&I>FXX+~$zP-qNIyBYK*MpM@`!|e_%%HdGdk^*cudbT( zBJ#PZF7w!Pq)cIZzAAA>G-gC$FMs}!lG3V{NtJfdRT}l3{V(iWYS!?N4c!i?D^+wO zZ~N;r)H2pOTKqYGCYTsjA`MyB#Ld$y{!HBqfCD;cp{0le8mh*d$GSy(JR^J{~uAxU|5Kg|WoUCC@&4c)Z0 z`2eI80HGQf;Knd7>b9nsI}Sp)igrlK1z>=jD_6SkOMCR-@Lj}5ln0W$^qz4}s0pc& zsB4-^BzV(lY`^M#1^W|P$MT*$={bvm*5pA$UQha^QD+3U4;DTq*o&LaZP(;U2Q=BA zR{L^WUm*p}T^NQr1^vc1A^k&(o3$S>s?wE<5H()&=0`G|1U<*Uir)DaoiOFV-Gl<% zT*7#)%i)Broh=8i;ewEK$A!*bl5`#&D!GQr$;m!; zb_c^>Ge55*4}ddK^yriKx~9|^;8ZeclCX&4SW0^L8P0;|Ec!W|oT6zyppL_xD8>K9 z`hr)lKGUGi8Ww$Mh!R3JOpMA@R`l9~Gf>;mQ-OnmvXuBj^~tluaONnaEOlMup`Pu! z|I1-RDu=aXeuL}Ht*!H>tfHx;zVkmON?*eT)RT7eDs%~$@*tK+{wR@>2(v-~Ri$zm z#X?d*{!t$I_N^o76bBj%7EZ(HGJpU5K*mEob|@lrPC?5_pFe$~=vt&7lAK&ifi`w~ zJ5U8cyb5H)c8)Si6!f1%cU&&6dnO(znb#KXsrnG)U}4+EC1@EX{gab4+J-7&>;CJbV!@d1FmiaSVe zMB?$~ijmq)3H8PA$ZDyT$puS!X1q!LtUJ+qM>r)pto!oRb@i}(KnNH|?z2RS?!yq% zcepFDg+fDvgVhFQw;Y8VGv?$gc-WDVVgv>`A#BJ92}F+hxN)NEjpq^*l62tST}PoE zhCc4uJ>t`P%~Uy zj}d56IkUz9uKLjHMw(38|9MQK-$2Vr2LHghqYCShb{N(G)a+ja}1cFT5*|8Quy z1j+%Ui#B~y7nzY&FQs)767FE~@6#GmD6$@!9Graod%=9apMd_A)Z=)D(MOV+I@ZoE zx!TocUIj1%-J`9tm~6%v;?{Q6E{q|NN`(b7a2TI}e3F!zTb$%m^MuA_5QH>GFp^iG zuaHLaKtDevUteE?{dpM~L1AG?erj*)hBf;UXxfF~NgWRUOKh9Su zDZLvgfP=|+H8}^OTf*En@g3b`33R}FE zsqtqLs1!VOiJQ@(-F&Ox>6(P$=XUzYk=CtRoyEcsA;#KHrJGW7a;iWQHg4Rw&U-%l z93E9j)38MWxkMl*s9j3i2M#2^>|b2XXsY@Qeu>H~`al)%I9@=MB_#PBm<$d7z2wa} ziBSHt6$l+0HjF0ghhJ^E3w8xt_;#wQm_~eIQL$E=dK}*1JNPWMxnZbTm| zr)JNX0qI(Fb!%nh!~FbwgxaJpCS^kn3}}`EdjIY}h-JVz^^oe&B%mO)(qz?Ib}asG z=uwNpW-%mh65D$4;As~EQ(t8`B~_~)+B26~l@-f$D_I|;MOIO^UwWaxgt!!_gZGxZ zZ{iaY=9l~~9%Z{(RR0v^+-%{4&$F?Rkdw9uzAZEqG{9hl1F6?%Rvm(JE|TvfRCI!I zlmkj&N=HG8TduTs?-Lxh+#2?e5P&fVPfhJJ4jLan{_f#XdVFt;@_J!TaWO<_oew7` zch7w8ha643=Zr%9it8vPrW@C&OaseCRdeOVhT^1B^4mT5W4?YzSGwW-#*uV?NA`oS$ zD&tC;{t<2cw{LjR3W+2oI2?=q;K9K7fa*vmw)p#Zle-N$K!(Je-_4gh z%i?jQ%5V@1Z3G31e;S(6!eFr@jy8f(# zk7v7fmEM5V;jU0MVLu?&U7Mjmn*=aGBvgYit9f~S)`~FtND%YaN%wej&U{aM+nPk=%8Z)M4sMEoCzdSw3+*i*RT^#0*T{!FkBd#wUd}dv}mZ| z?@?FljV%oa%=hYQh!txRc8IEV9TyP#i9~(zIASgoR>qhQfCJ%mK561?8q^zyrB5<9 zH-gJ2KZ|Mh7LNlGIa)lE0r3@6oHNNgd&AP)xx|C;$NZyendrBq_La%5fe#aphPNhh zDV>4Kq~RKf)HR+;?j0Vs%w|uzvrjAABCoL(y;8ZT*WXrpe!&Mvd}WPtdr)& zo*iO3R3cL&i7X_UWErury2^i)UvJ4u;&N~`BM6W+skPsJ%Rb{&k^;GG=10oHFaYGH zlJT5FUnyj`ApB>oh7S8yo1=zL?phh@geUB&NVJ<|$K;q%KMdc67G#G(N;SHXSqk<6C0F!gx zv8n;&G2MTc70aJN(A{o>WK-24JlVT92d*UM8ZjIZJm;$Q2BMTakYtIIfesm)5hJ8S zhZ0S(?)X5w!D;jj{fP8lMUIuFe@elTJ# zY9VPBt>f!9=K1eTedWGqWZTuL5-Ax=R!f>V0yJU}J+gSg`k@stff8KNv5U8!Ix+56 zDjgA(NiG0jO2!3)LT8vnib4yzz;)IX?Gx6nNv?_plk!Oo8;ci z3Fu`+%eH?g&|Jab4}28#epD%0R*ckiPa!%o$*=MlJA>3O)B+b%ZTD44oTctlg}$j4 zy(V1?jIM)+c)$8LrE*s-lbm0?dc&ziHwI&{IhT%UICUDKgkn7Flp)3Np`&VjY~$}; zxe~r99%I;bSy8wl5ZZ*2V-0GqtnFE(0X!fznSkn-7h2%EN=p0U#T<-%BDL3TL*oQjMzI41g1{_%rb-fy}(r(&4Oi1XZW%IZ0>x%wI>FI@^rFI=e+ z{=%_IAKhh#*+0fhj`#dDwdvH(%423uoAxz@i56@Du9v_$13~JP5wBg|uZX1P#K)^k zr}Q_=V!r2^yRLbv*n+he5fs)Gn%1$LTlLu)9Nb}`W3wq$&+BSe61TYT#+n19dU_K( z&9VR#B!~i&Bdw}s)d8)5V*x|=j-Fr~p5cT_Qm#T?lhpXjr%#76-=VKs{qf}nrny2) zd|z=vNvYr7Kv^e!DkBm@cy_?2tVYHVvo?JM*Xb5=*o<0i-4yA%2AS=f{YgMbsV?qS z5W?M}z~qJ8WCnVe4qq>bdme9~E4S3Onj9*LccG5QZKu?R;nI3!dg0+J$N}NuNYUVR zNOgnu6g{yVH|`yU&YzB= zCY|HQU4WKScr}YDD-SGRo1u+-vZ$Mt?(DL?x16(FTg9Ed&hB|WY?YA5aF?=v%oB-~ zUrQM~g6a|dg_zDhm%5y4%$hOXJO0pRP`sB(7<(sUxhZwex|P>R4#>p#5q*shgwwGc*Vk?Mu^x6gRJg;P^sionLIssS zJj;u1X{F>Q^wGjGu-Tml)ASy$Kk?kp0cI zZ+CF=tdBb>R2bv2?jRL9!%8Wd*$XkVBJf$I+8Nr>V*dQd#Kbj3GKv}=E1F2OCoyk6 zXt}#M&7F&Hx+R(}$u~4O;6C!fE8FTw^6|@j@ETmjc$NjE@AU%9`DNoBOlLQyIL<)i zO~G!FMweT3Sf0Sni;MZa(ZA3xffFsL9*Ll(>yzj+YfK*=6t|yk%b9&7^BwzyW2Z#J zrKJ$1K6*s*smwOU;(w2Z!q@uB8eyDEPaP4R7xx?y`I)%5P8fI~P2|d8l2519jyGlk zE<%j=r!?8*l%9?Y7vd}n2qv5;VJ-+CNc4~%2oaI^flgnZ#&R6u{<}-%(6M8N&}gM5 z>*3HgNqS^mef{DEnT18#Fz;T(W?Ti&o<9%Aw8Gu}$lHG0W?Z7~kgGm^{Dq22bW}5^ zk!Ot00bQ-A>=@BLRm0zrx1)!M+){RnVc~`@r%%Pi2$N(I6^xqOwQp|~bqNDU2EuS9 zG?Z{!dahpGN;KHvxW|8Ssp52IIn%}kEn`eeCJd_y=5m7uO>rm>)nNPpsS?d*H=jP; zf7{{ckt0^R+1s=w@N%nJw;&DV(8|r4y)Wp@W8nh>tZwm&TWm^IS~A>W!2(45Xrxe~ zZrD#U3MXP@Xoyw69z!GXJS5+Ng~3deY8F6^GEtm2e?LevQE-a=`imwLRarQ!jX7~v zuDC- zl_mXtQJT|b3u`Ll-HH$uVr8-YR<{rQD79qEsVBN@Pkm*TxR4-5S5d<33xB!Vu3tAZ z^2?uUvnnepBvO`XRl62S{fhcEty~YF$#8gLF>gb@7?W~BT$1ATpwR6=R%1HDbp{TE zgW54Bl2AD@M1RqluBs6mn1#u^CGjl!ym@}+Vq>L1(^!y`jylpu62c5X8eS?m1>&CxcRlz z_-U&9AQ#bVBO|mGeqVq4`-?N^4^=>~<;mgAJ?bw&@n0Ny{ulB9h9Y&0m~gK63GY`Q z93wuhy6p2$;|k-7$7>>9F0SVVm5P2bG5A&KN=maGf9cx&?z4)YpPY+A^Z6L0?){2> zIsp6Kr!N2NldQt1P;s~^K8Z=spD5{-y0gf}M=WZpROSd;4W5$JcasSn5kzJy9(T^# zE5nBaC@WsI0r(z>@14#4p=~1!huAX>*52oQMsA2o;nDN9=-I$;%F2!pPyhKj;6ElY z+m_vdof}HM;;^rOzWP|ZT6cJ>wr%+xht8j0;cMSrN2gJbtPz`D9j<>fC8hkav-%`N zM?2-7TL7w8hvJaXWVVYM9$7j_ASpS$EaaG#vpTnLPbb~}J$q8;^uyKg0Z9#&576)D zZ(>5#r3)7X+K3<8}Ob?|`$2f&RKZ6&}cph*-H-)J!x3POv}@llzLUpZE6BV)uh zs}?AmHzC!-NTmwEjSVS;Dm1y#jA8i*T?Y`253GDaJoN?I2>_l$#ds+oSc~L0CM9`8 za=^aH1A)WAU8hW)8ba#(a zD>y*~9)WV`;sJ}O!nbcxl(|6f$^*g50lKJgPlDxTMOzWonCifR224(noP5&EE6l}piB8^bDGcnPEURqiGc-F0+@hlj<)iLGq_hnYJx zzGck=r}OAI;EzfB5tc3G4B^bb`$o*vCHRo_9WeE+#l`N%&APf-W6))jpMyGlfU*lS>^_yTVP7dG)Vy69(B~!Kf?eju>NGe`k@Z z3?l);4@C&c!20!~X(IiNJdoHW{07O}0OTOj$u9VfoUr_XS;;)VxVT*^THU&hj?7@e z$AObgGWjM?eZ?aZ%#oA+>eb(f3f!c+1&kpupZF_}vrn&HUFF10aFdjC=l)Rn#4Uo7 zGa5Ry@|kk*ZB!p!iuB|&p^N2|Pfl+vJtXN@m zPhkl-X>-RG7cmPl77-%`e>7*s^J1E-qG;aU7*oz1)V%i+W2{ z28~G`7~>2c#uaD1D!rr7GG{elAj^{{__^8@Eatvp13|ddU-Pc*KXH$2mkIBZHa$i~TMw1e54L21BHXZy}L{JF|tq zJW!UtCb#0TGLDND;D|d&RM2lKOZi~reVqJiOPOsF3F#W)hYHyAS2h z>ij}UL1mtGOI-Hp>sEJ}#D5Guvenf~)v!7+i_F0K;ZXm?%oz4k*NN47bSJe z!J%JUTxArFj<)uX>m`$Y&l|S>Qrq#m-9|w9kB@^Ccjii690q94-IitVp=dL&-5nep ziLWc;t$=GO-1&?N&=Aw64IVP2%AecfM=eMQ6oY1z5!ga1O654zaT;3=08!D*H46mdIMq*2Tt?e9CH)eX`eW$5>^-*>a;9v|Ux2 zSO&Swd>-Ud&-%_^pRmcaQG*CrUwm`eTQu`wo168~1FRy;S1Jz#ow8_ui7oek1Y(^# zcdlFow(wL;5~@Z-f55spSsx>AxR9d>!`2Dpu%f*Llh1m=24E&ZPFG>>K`fT5wAh5I z_6C@6(8|cgBW1VXiYP=dKtrr8_y&O)&S4NHVga0GfzC+ijD8CX3MzR0nx=~cBq8Xb zg1#POFzDU8y-9JPW=D8rO1!qT6nGUp<}yk`LDtZQvT5GPI~L z7_<6{vN-wjk-FUh{Kl2c*u0+&W~oV)`hSZ-SZGEq}=S- zHtpNzK6yezd52D&YUspZR54gHL5hf)ja{pV2lT1q@NaJ3G;VIi>&qY8%HOp449jpr06oTq3qHEk{;v4MmJ<)wleqHqbv3rJZ?#^SboIVw5W8D#jJ z5{k0fZ2Wlo>Ok`=3yNO2NH-X&IO#t@WC-0%*J^1=3C_J1Oa}*7Z?bGBrB$Ab`Lj4Z zskVtpGED|uyUu6PQiEnK`GGL3{M!$%9Kctwt#{^tO)o-=M1KXzz1g^N{Ra&SWzaf^ zL(GZA%mjwwmG}KhdodIap+FqAgfg1~>Yh{3QY21*{KAY4HDX|o6zyF3Slbf zkiu9=X@A;|?b{D9EP~s2tChP80DbFr?Jkf)u(Qd1egHiQ=;I)qUAuOxum+>C7ba=q zkSfwG3L&ge$s6~DgpfShy-w0FSTY?EE)yKd*G4t!dM@l#gIrP_k}`H7&z6u(+5?V2 z_{S5M43wr5Rc4uxQ1Pyu{%P?;RhPFE= zhM^-zS&)A1nwGIKOX)MPXI7S)-^wwaw7U(t63SfLADr==olkReyif>o25s5AxeEId zap1c9=j~dFr;aJscr0NmT-s#-)|s@oj7}T^T_t7{3^>BEp=RTmE!V2vRiHKy+)+%Mner|jWZk+ zFw6?9rdQche&xC8y#dd;C~ls!?oJ*Q<>)_fVEXxP&*_JgHqoA$w@CC2D<`=3dQUn@ z^-3qG$^h@`3JAqul|O=l`ctIxHpj$GrfZ%h47MivvN=2;LdeM1=__Oi5v+OsV`g&}k z)^~(2C9Auj>d88)%Nu5;i9t}noxCjt6{@$GvIBVI;an-C`c91c(OY(yyx4#2cg1lz z++OIlH*IR{{<zf^Y-Xks6faN0 zIbZpT=~+n3QyT~ixF_|hTvhKrd8jk?wAL*dHaU9tcZ}P8)IL%Ej9|X-Q^reWNCOKp*e4T0(;Tf`5itsl&x9PhPxCJPj;-CrlK4Bn z&hCJ+_G(=H*wbje77ZIjWjKW<4`y_g0ErussdWdD9sQ`%uJS~pk7wu2U7ip&NW`gc z(r_UGBYtw;c9q|{{XH%mxD^B%KYv>{5exj*euOvz@O8hVhPsWE-3Sgb1WWkxMZ-cZ z2bxQy`WpU*B~(k+n#Sb+s0esOqQS*^VLzp+TdWRJccK~MFY;*4916P@9+u@h`ZaZb zfQpS`i{=)p3{1AwWTf8FvyO52$C*2>Bpv_lxC{gE7>u9hBS{KvvmXrwT3B9$;sunx zRAk0uy8*rC%zDLao^IJ`WI(Mi{~v+1c5FH_KJ7dTIg_Q?fays1{E! z9x*bgD+?~>R&1RjW`>&*j_BK;*{?l;5TY7V-e&xGXZTw|oiW%Wu5;;0Jaq{xyl}OH zu*yczyD4s?QhERI%y&dhp~+aXw z^s+9pT7b2j*&Mn5zwlc05>ch=%AP#9cI^;7ffxpYCt+R1dAs6I#LTwEP*BC%*+ra@kl*49q&!;#}&#|$V^~6EBozg ztz^=fi{;{hd&x&Ov5(7ZrR8(4_ErF`v?snq^cCNnCNEg;xr-JF%{oBE220VkNn96GUnq1~ zP0mkWSr`sF>|w*Q-v&p5j*Lc+=-`sksx5r#vDSiR7fAu&J@N)+Fm~hQNoMBVy?y&# z^)a+RQ9h(@bLPy+UW<gloZ0aG` zYjeLYt4E&7TSR|5jEVh@7AOT|X7IW=g3~WLXXP#O=K^VZ@T`C6P?jN z=)i9IcqX5Rsdp2ve*RGZ zuB{r@Ic^OZt@fU~v$-R4#)2n`m+P35Rs!Wte?;x}53KY|VBPL=w|CyRPf3RZKnxDz259c0Tx3lFV zXm&&?d4X=)*FtzB*UQ%P1+F&QjE zN&j6j+6HE(_!PeNR$bqZb{km0>>^#v}Wk2H-Ls`+(X6Oa{ssk9*M zYi0+wA^WK&Z`5I67r-IO9<*E)F3renW@~lOuKBuOG1c;cu4qMHyjbWpQ1eEw4xjc@ z3($!PHJQg*M2x!R043uSy@r*=Qz&x@@8-3_xgo!TRicSUa%0)Jaa&MQLvSGqy6!+> z`Inq2cZtCislNVs>r*EWA9lc{RSS6vx*l3MVNEz9Xak*ga^`3WQf1+&6?}Vzo7)hN z_w61{nmUy%=p21KZfHb7;vlrouFHL<*OQu!Dv3@f$*$u%?0d+oP*=J0%-wCX{{D?6@oS~F_F=1*i9p( zR+C+7;Q;prPe?-z{4FeF`RI)_Y$3J1kJ9&f~t0xhvBc znc-_=quzQwt&#|l0OBaXMmJgwY)tYC#DppCcZAP2b7?fDa7s=#88lgT3so6MFtrp( z8Kv>#JQuWt{|O(&yyeV}r?O8-0O2;ST>frEddfbr8I;zSfVZG_`czTD04gyE8_U+H zCe)s;cM2h%6wBrsa8rSOoR?-x6yW4*XnyzebOVr$0HK%d86*M~D9bdnG zwMYDcD%+#<8EsX!Nf!v3_YMrDa3EpN3(Gm>LP|}KQ@yf@0bc|+G`12cWia=Tx`Of= z?F~mIFb}x*6YzNmXmAONpi89hu!cz8u~S!*0co)qyLt^Z46UV9#uJ1W)eWft_c!xh z1&Uy}K#BsFXBYaD<&pfO^{3t+vZ6>u>OgVE=3uY^Yjyg{rdQCiw&~dMKww}vwksHw z(m;X$f^G~nMhh{4;}XLd;4x;*##2$g@FGNkKPn7Kp?o-Oi<)!`4@8#<&4#y%>a^>&uW7ClnQBk0T zr#-0Wk02Z&x1>43I6unFTu#l%z5=(0l$q5>*jsUrHKAAlX-vMq9~e~g;9Uh;2hvM? zdSG+7ejL`w>ZsiC`tU~AOTkP?WdH>>!48fdb3~WZ9rs_97!W)*ptN8Lk!>^3%dTCm zrLPf=hqu{?AtYabf}}|1W`X7;e{})zo6&nWS3>MYu?Gb#)dup$MGKG()cWQ;Qfe$# z2ejKx>pONPkk~9o3uEg%5ArG?0IX)QVn^z5{CHP6v^MLmmB`u%14e^{DvEg-Xcxde zu%(hNQ)fyInlyzQEF=AbEuw(x!4EufR*(mREiA+Qi^_s9H9NJ}gxCFIzK@f9dmTK9 z%pPJGeQ0K0jka9)(GavQUTh^s;DN3{cMO_)P2RZ?I^8bnycbKuQ+w0nO!Gi!q=u?I<{kUciS=d{aOVZDR$hQQ!{Ikftn;e>+3 zQIQ$>7iRa^pT>u5?GQ-$xT{C$>MktZtOlI}sCP`9-+98JhJ?(F`o*IrexF9~%IP!; zuym}$wAQOv09B0WHcnY;Q#^ImVX#Y%3GbR}_pxI)%~?1lDB*0$?0K=d?EI|Vl3|@E zalk!Id^|ecw1;>`erxfH8tizl9YPh^E#JED&nZ7BcbjXP%qn+=Hvnsc{XiB$ZjCPz zp3}HZOqojv;#o73u~lwMsSt!78yA@ooj!;bN6&%pG3$xS%sw&W^UIq}F)C+;wX7=o zMJYU`%LYRyG+SgwKsDTzXn*&g1^PWQqcu*TT6YWFqEpv>e)&JhuiD4GTbK@+#xQ#d z4+IxfrK-L{J2x%Su?F?;?!9}5V2?q29|g$f_fyG+Jkv+GgBKiP9Q1<+%q(}(*N`5j zNF4mlDCoMEZM|lS+@P$VitH9@O~kXDEmB?Gm2dC0FJ48Z*X`=tc;pvZPka30T%~}O zv&d^44`2Hl#lq#t5A&^Eo$XAZ!G4q_hKy|j?Ws>s9i^}6%g2v1aK5*VQ{>^ROs&2z zwF(g0tMs<_Mt2bm4(>#RdduL}RbI(7SU~on6uV7=P{h2T_e#atvst ztrsN?>aaD_7n7fBw&|!l=pS|cks_{El=X8Y$vN-Y^cHlM1*G!G*s+mK_Dyi4GXC#$ zSbQ+)D4A?s$n^1&i=LIoUbw7P;vUDBU53>VpXrDtqZ#^Cv*%kb%e}8<3XQMA=X~_dgc&1LBN`16-NiWv1 zUP7y(_XZoh8&7n?pRRxZAeCzvAbWeqSRcOBViW>cx5S2gH>PcMg7q>mz;&v2T&ckv5XsOQfWUo}w%AK1;Z1lO}s7yd@1~%CK4MnbW5W zpKr=+Kz@#2xe84hl-@izVloGd_yipc-ow2B@~dAw`aO7(N$&YY!K^~U&EdnZp*ol$ zAZBKD9D2=R0QCa^b+?>8;c9FsA`8%@P;FfIny(hrngWAUn#q-~=<}ltr#E6*7cju; zf=!yDP3YNUGWJua@V{ZsnFBo)z^OIJKtPrLDIsIGZBWzbq39bJunM7X2K4Sd0WI#cXI|he@WEJh;ySy1 z>(=5^VF&*U8Q1f6$hiFe3mMn=_vSSRRZjTUw}P`ON`sfua#Ql^RWL(FX3^1l6@GH1 zvHxExi~Kfm55!Y8p2q3lRZb{+HGhcG6+zLroJ>GYN;2Ma*M)q~!s2M{xi77QN+zC> z{N0glVll*`_`gOiYBZ^a4}W>A-bPci?~w66T{djoi2d-2p0jZ5blv^1<=(FYZ+$H; zB<2uxREo`P3j}7NssFQ-_e(}EH0I=dwP8wgMKgE#)vJIQKVN=J=h8H;cvYOG6{tB~ z>@>|b`iW^2%_l=uv|0}j`}dzq0;S1=KHx*^P;(N+FdzK_wejKDx{}UCeCNd%CQu^}O*mggYw=hEN{2VL3qryMo;7=LL zgMn?f4XQ^e+TZ)@yTvd07fSJ94-L`J-|=Qw8aMy@^P7W~g?8o}y&n8TJpTR1#NYm} zf*bWv(PrwzIXF{AM)EulP#wt3=nrGzzkN>HI?CY0>C>3|iqc-toOafm@pHjkARraf z-B_|;(k}c{sYe>Gm_yUT!4XX=jgfE(lk(c4p(q|FO^yaSCO@pZ9F|YP2f|TOrlW|2B9su7*CD-zo{))TWzpQ<&RyvV0_5g`o|7e_&2SVt^E(EpNjZOe<3s%|8|AtHIs--27qUgb4o|uOkIE#5rKFnF= zXjlH370!NO&~b?ebL!$B^%!v9@BTvO^Bd25n0(RJrTLo??voFkAT3;?hgp3{AI3V>^ojoUz*D7k{Jkqdx z^ssP=^X9z-qCj7b+=X&!+!P#g`}XXqx^&t1FD?M?rBCQ4%Suc8z>_44qcVk}1iAyy z;+@eKGjT1t|5*)Y2jvR@z@3!>9 zsKbZhsXl%CffSG9RWz|ri>SUxIz`fLf9w%l>UpG2Xyh?LhF{-uS(%T(ZWU*xtLxW_ z3dR=G^2<~T1XjJn(lLQSDB&2JtCdRMH$1}F%C5`yg0&!i@iIxF_Tc2$(I4dK8+T>&=9Gu)41`iY{lGq@&IF6Dib6m?BaQk$nSwMZ+XChS{Q`(w39 zm@mOWSxtunmu6AkaI)qN1`l3!7{GHxsN_-l!}opO>S4Ryp&Tt);-DK7Z8LMDmP1pi zcBjebBST_L)D~I$@0>h-O(qR}I%((kj6XCa-twr^zA;uIGUaY-I<~m~t@ii2a)q99G8Dmd< z=?&WI@JKj+ey7SjR65v83FHFbw;;1%Rz0(NptF%W2&Krph2$|X$2FJ@0e#R8cyIsU zGQuh!9I386kj`byME1^X{=_SJ;+9YycT;64q7^vL>hgk-=7WQwJ_9k{SNM*iKSWzR zdg8HNTTqx1+UvoI)~(4$VivQC$xPM6Ko#L?f6|tTNjJfn5E1FS9HcxWvo8L^=mk)p z{l&}aVW6|9(n%3o!n<*l;MIiIes;3gP$}yBKmYvG5mhbeCM%qDS~Z4sF_(5NEX)R# z6@yQZ&biKf3Dv)7QA||SSnp?DiXSqRq~e9hMO#HON~gQ7 zF52x;W7KPJv76-!he*CFpgzC8XPCvw>9C{2V8k2D9LCDUfzZZ&=2?QeQXNgnT+kle zl7%K(Q1a73Ag5SccRhE$8w3KG0o))_#AZu*!zqTLeGu=8=ESVVDl{}RhMkfeD@O6m zKIlI`odt8i+9ZF+f{jMXllCcgtBy^lIAdnxEElZuvZTZo?>vm&(MVwwKsVBe z3zD`<;fr}JhdxEImaa8_X5ZkrrIFhHG^h)v4iXQwUW%Kk9|NJNEuEyF_tNeP_Cw|4?2TolbHl>s?9rgAogt|(p+BW ztrPDAWh1tvVVN*ls#9O)twC0a0^E&h8q=D z@e_0gLe)ZxmV6)8ByM2t)2EEuucTDnGM7H(}2efepy(k>!In*eZ*=0B?H_Y9T9sCb}*Dj2!u{Mt*Wd!K0#T|(=DS>&u>^9`V%a?bcAtkdNLutktn>j-!kgd~EbMl9m z;-GvHOsAzV8X>bH?DD}VzV=!~!4p<9hc2Z5d@*Z)UkMX4NdiTgL@7{`#F2jLo!wdV zB^9N4PYIbQc^SPqGb;BID~2AFR8kjieny5BE!n+vb2>Nt^(qe-i8#|-PDDif&bD@* z(j24=oH~hsQngdcA?I=d-u(E-yj35-oIi$BQsZhoEKE#g`GWc z&F3hNW%0UFc*x+=AYY5q5>5-52x8e@&A5B?s6UHa+_n-k=r?Q!w0C73B$%a9ad`vN zKp2TpbKW&1+-ZCJuRpe$)B-wyVc#hn`^VgN&-rHmOWhZ`+n(BAgX0DB&rdwxnp2}Qd%4p0O#376_PH|H55(>AvNz+g4|o`~Hl^yP z7T}1vu)RQ>xWm7b(u+*_H)^42J$=VZ+EaSdOB-rI6sr!2i>`WHl<45%LKQg-R@5-G z^u>#QB+vJE6xE^p%%Zf|s*bY+HW?mX{UB(^(>K&(7R+<}Lj{I#esFPa{0FP{$;08j zfD(|=Rh}a-^y#zXNgl#EVn_A++<|i!%smvrm!(n;gS9v3iD5Tr-D%>|Gj7m8DO?Rz z5h)@&fz}TLz3fMi0P-#q^7q`Wd3pbAkfN7TN$Cj**5dCQ(vnEXLua_~HUe!nK{o2{r%<*VRbsPM_aUqHorSwCWstJuOrW~}{EFiU@0Q!&_l}@B1 zs&b&ne{#^~NE{Fz6?_BYsg@(fV(3&W~)pSr@S7_8_CyH1R5; zo8dyJ*7EZ)F@P3Pef&KPPz(bU%dcQ?O zrSM+Wms7`46MFokT{66B^?Uyxu+mQTH?TbEO5sF6vJkg6iUv^5tvyg931{CDK%Nd# z1*Yq}@u&6G`L-BT3xKeo6 zf73r{{Zs!m^B)tYq|0Jz0~uZFEv{qm~97ggwSHzHZ_r5`n|(n&Cv3 zg8oa#XY!^G8y8AJil>s z4O+^^@1k7*QVqI_zF@?Jmyz%VPYl_kA_MJSLd_Nxl|ULs7~Zk31zM_!W)U8=g3csK z<-;JAdh$o|j}xY?NXz4hNv@r*4<>`lA_3dc{&-jKQe%Z;tZEvAmHE1QXlT4Gey8vOF$9R3 zNQQjk1cU6+Vn_5`0&)(kr8QBA599R&dA5`QOP0!cj6v|Hj~}ISFHQ#F57HJm5MalM zYBJQhvALY!d_lBz#>6o2YZxE|d5=WORcpoEqi`BxXb95f#X^<`;;jL=1LtZHqW?~` zN`$h;33*R4GLSO_^&E;$7GZlxOWiL^H{Wo3bEh>#2+Scr1luf=1f<%Yop+N%2}Kju zC3gJd5?g!wvf^SauB^@)Z*y^4u%NOu&**G|RrHxNC{F1rn7t(7*R^xFJHU^i5$xh2 zQ}9&cvr?BJhO(&CQIQz9<}YD~&Yg>IB24*k$;XNcbUZIW_P_}#ePV8$&yk%?xYYXE znm+M^#d7eg+sx5|@Z`jz+bvChoIzno>IVEpC4{_rlEET7)lQw54aHyqdjufAHEly5 z>v|Pc4UJ3Ak9uMt*0}K|j%Cs$1imZL5g;1rCP&bezPJB%?%$m|#R$MY3_w6wq|MrC zNE-#TxRcW=5)jx|F?i`Uld;9hxWH2_5-D%51!Lih^ z6xO|^4v10Ub704tHfuKP@~Zv;so!bAV;l>3!6TGoB1O}l8B}oNe)OVd6fMMWltNf6 zKYZ{&(xQcq9LXqFXu3eZ-MWznGiPd4jtA}1WR)c8Do>a9YJM|+%y>?usHj3ZBC&P2 z;n6`&Z8`8pi%n|n+porei3?~Yx=zWsiTDtg^NuADs@WoZ3zIg`_ER}ceg#TbNO}NT zff405w7|AKm-rmN*(mcsPQBq&ZC7C?HTe+cP)Cl8mQY!z{Qhdp=ghMqgBRJ+IX@6V zf3YWkGE{+x|cyHX;lzksp$mM51scVo^M%VfGxt8;z!#&w<$dQ84IA{f0Wib z$Jm%=NB>*E2yoBFgjT{X7?F`W$OA!QP;LuZnb`0K226bBT!IMGai*Ceq0E=PO+ahG(M*Bzl-+J9gv)Xf;RlKbi@4^8@hrT0HA_1bn0h%UW+N8aGmz~~e zM|$BVxg1uXSHs_aQ*QXHVm4h$iZ3M-0TbK1J$Jjw$tW?pvc~@DwnKc@{+x}nH2l-F z0XTSaQ>Mi2>S8{AJdK?(i&=%vX{SL8%v^ad&Pg6A|dq`@M64R=;$OMn^{$I-HbLzizHf1jQMuc|H&KYM!5ScVpWiVUG4>z0si#LSQU{Ny7oMr&Y*mQs0} zvWsy?La_wO!D-UUb}SKjl`~=@Y30hv%d=Vr8BUu^v^p8kOZNUGLrs31sON?KRF?e* zY*Kmm;I(65QkEZ-R zoBJLFt$fw6;=`TU+6B`>PJ(-K_o(y8K?1gIi~JI0-FPqHB1H|U>3lFjLaxWkm8L6- zmp_VAiVoI4n5W7Cw7ug{(FpHN8OU8H{%2NW z`0&kbp7MNQA(0ssaQU(q+a41c$`*PlCmlQy9nE~G7@D7{hGX8qB7QcvYG`itg%}_`(QcZS=AT}OFMVll?AQy%u`!hHpnBlX zEKyVv!FM($1m)P~eR(UEqf(ch_%hN0h*W{c$H~CRX;m55L*h#Y|M*V};A93ieWIbB zC0k4HEQmnZl5?C>q`*xO?^mcx}38+KtG8c7YbvGlH6NsY1>WdF03-f-=G?=qS_;#TP%TpS`~2!_;=`p~--!`DVnUoLk&A(Ey9i z2(!`a?6y01jzR6c)9eND10s)(XkMbrk+~&!Y?PBlGuvY1`^5hhA~>Am4E$|Mc@4tA zZ#zq#2uwzkK|+5et_gc0Vg2L-_hWm#bOC%_}O3j*QGK{oGi|Z-=ax zp5B6f?J9H-SXK5tvgiYyXI`O?Mq@P9b3}V}^&4-NnXW7xB0dkvZWHH8`MR3YZaspv1v;5^CS37K#DRSfldxJwUITBe`^=~Tw5%R@Y#bd7dn^%$UG{OIk(^n1ZqUn`v71df9`*XQ>z2xOMAY7b;!BpbCaO;YT>=ZzGf z#;?x?&jBta-S}hZuRo_Ehkwp+(hnNjZ&2TFE3Yt4%&)A)-_;`DcwX}NH=197-CVed zFLr74v$}ZD4OhFB3W>wKIgDHW`5L~>#Is6-pPC_;#22!&LXl(9)tNg~>dlBA-L?24q4qzG+^ zY@)5!=L++i=Xut<*88qM*8RtfnNs(CUDx;A9OrQyrx4qKa0ZQeMB5D~;*ai_&AIdm z8SJ(&)TNJ7`ivh9uiHU)lT#w~4WM|Bemet}3c-caOH9mLqTl%t$7bbQU0DdzrPFUA zWkFTGuatiZPpW&~ZqLw~G?2oD#`1GRL+NGvU`ES8z%)K$vg9o~7$Sms2)P7B-UtPS zGd`Ti3N0>Yl4dCz|E zAY|O?gP`}6Nz~wmQa)WI0gP6x*o-R%vvC0x;_}@LT|k9PCq-&p+4T{<--wT zMM8OMHbxUvAS*A|#NX$+#O|1|0neR{fb?rpf&(mN>$|!-id8{Qz(~(RaBQG;L&HF$ ziJ|2y76cP-_3nZr3!2aHaKbIcwN6uG1V0nNOInYn0WcQYH~M@AckCfP9uP27RIEpj zA(|UsLT>=(q+QW~{YvtjXSR9k)+bQ9{r#DwI+vJ;+K)gbz-hd*QjJ@45+%odmvzz7 zr@69|X#b0f7A#(z%4efx#oYe*7==lz?)U1mpSLr9&7+~@2dit_^J>2EC{sCI4&N+T zuYjAgqY7*R(>OL&Nif4I^Er6%{Vi%F`dysZ`6e;(K zy?ptYmK>H9x!E|s+G)tZp0F0-O?BSo7TMY!@Bo)wFa>^bZ-Z zPs`MeZaJU9ww?h+ImM4*?{wF8tHv?mFhGdEW+20bG)E66^^$RBU>T6jWDR$14s`)B zI#kECY__@0q_vBwJ58P5Qi;-AJ=3muGO6!6vOM}9UZBSI1FQdY`9(z1$MLQy=txRj zPwQg;AEQ0N)xp|Ypb;#Oc$}3*!O;i|Kq#e2Bdz=?CWie|;F#q%0iqxnv098VcOe^4 z^bD}&U_lAPiN=rgV2p~X&Fs5hXOkbUSxnxL_3?io;+RDkvEFjgB2OZ42{2j-OzG0Ypd!endwZSSJ~P^_%Jy>-dm~ZTuZC^KZvK>=o=NApyhHU zhnuGJ$x;968R+YG*bu`Oq+7ouqa zukq&PcC=>Am?K)u%$c2&iHR)oD<*j{;l;!)ct(k1M_S+tJ54U**W*----IaFk;dz)Dk|o6^ZtQ|i@fZH45_Cc z387%S`p-$zB86SuLEVFBX6o}MJoqc+IgyQzvU~Ae`AbMPNXO8pxsep|L`+Q3#1^tzwG<)^k0)t3!#S5b$5CC=l32UgmkApi$e~RGPzkv6i}Y(DHj)xwexFLGeCPIU z`Y#Pv0raM-vhM-KiI>(qR=Z=_2LA%{r|2UT9E8ytrZd1hWRSYNGcfV;3krG-7I5<& z1el1BRx&+3IU9&AC`QPP_A6FQ6Xl>aau^WC^Hgys=M++Q=oH0SE?BZ;{jz287^Bgb zN}O0X6R|Ecmt5>5)PmqTY}vF4!cGY%6c`G^p+I(}3*xQ-k7H>nU@vHnIK`c|tX%$< zmA(w0ZF5f=ivo2~Ju_ji{OCk=89dop4G=RYhx`iF46tM=9WMPf)zy$G+tCK$Wu>IYOe*BG{bkjN9lmRJI zwv$z;nL~}NDYWRsHNH+<_e8mN%s~g4j^ToSo9PcS(1#)>2egYbR^==5K(V>|DKk>4 ze877)_z0V)m@Y8wqF>x!r$1Cu8Py>IOHc}-#STz)sekE?K!B&5qGZM(7X#p2f|i81 z_~W9Y9-^YGPdI@LGtK0ppJ{y>XU|CpXd_1QMpmMAaZHKvmU||{JK3i5Peexkic*kSMXD6z|c4v5Km!#|(gga3sn2qJJd}F|Z4Q`h;*0%VLV`2B#AjLbWd? zqjSBmR;WP0j9p@vy$n8+-mB)8NW5>xFlatlE+V7Z!Qh;(0(}B^f%iiZY3>QXxDH70 ztXM;RQl-6^EFT}Xc5-}tAXgNk-l0Q1WZ%#b;CIU~Ckf){=F0AcCdhz-9|&7Tl9Nq% zMvRT8Fu))fgBeU0n9Y5fN?rkrkTdydk?F&M`>}iH*?PyOIOr6*g+lcHv0KVBTaQzB zjR8kxruQ`&xv@XitO$m-n82Jmwl^rr4#%zyg(JrU3MT=0!v&c<3A#?!yuGQee#)F4V2IX{<_ZTFUo99> zTrfyYq&`xWK)`rDh32z?>mT6nUss$MiPaV{KWY$}bzk&SIpb_nF9H>qMsj z`?q$_xC1j*jOj<2NH}4h@~-H@3yL2x*-q{+xh(}L3C0tLS2HsmDl$uds`*GIrGx#( z?(X30z$+3Ind~_^Nq-4nl{y7v7n!|h16(=KVceYDe(TI1m`&oqueoukdh>)JZAgys z;z`5M=fWrAs>Cfx`NUI=K>i9UOcFZ6(CF6=BsI(C-X&M#XiR>Mk8HT0Jks!j;J$yY zlNRj)F`fE^0nh-fodB4aeF_`x1?S$yxWC^tXl5iM$QHx~ ziY%Fd1JMIjHa0dA1rYhV>&CNm7Dy9*nVJ0r{A8D17a^4-e2a0OR<5@oA=!63%?L|E zH#5J)McKajua0rOt`~JypuwyS8{QM7JK%MubST;w)~g0!b8;*sgh~P_sp7e5qBUfr z4iiaAKr$@@E4GD7mo#zbx#|?;A;H1xR<69n012GFV^)+?zL6OOL>|Hd1Q(<`I129H zZwUNPHAHiZzJ8~Ri=|2B){z7hs>hp$mU6%#dGqwuNQXs5>fxjmu{M)2OYXCrhbz@Q zcXaVTdX!WbwXW+PS>>vaPPj&J_;?=8y*FkLYk0oVhsTkQoLa7>@`23YLo?(2>|<(f zbVD&%8`sgmM?gT!t->jAg3Im{CY56h%6l-JnfIsVaqY{KJGE{jqf8~iMW5M6?@9`S zO_x~A-G_$c^63petLrO{9;o~`%bAnVyFq3IrwV${j5E~a3B~Iryo5Lz7KWAfX^05n z;Ys!-8onp9P9B6g9=*bbQ3)p@>Y5lwzq&BChzb*EmmQz5zD>iFYYQEP$&yb0 z4wO{HanKUg1x}SCW%W%>FS0rP2m2UiHe3;o1kiULlM?*_z^e$Sp->S)u7tnNrvF3G zu#vJ=ctVMUR5;W+3IY##Zp!6fI&C zur!?)>*tHNmt4H4R=&WlAUVS0FqH}=h~PBVZ9hXJ4uIZWK2^0N>pNm$1M)nT^o(Hy z->@HZ5%>WQ@89>S9S6(~k^_Yn(N9cq>*R+2G4z^u$a*}*<+pD=#KagBe*FCT%&rl@ zkUu6~;WZA%QZ_Q;>KO+-4kOh%Hdx~a7Q8eF_y(-Rb2LYUGqksR|BH;*X;;86$w|2T z#MCs4`Jm3_{NbSdQP@nuyR?}U5D<`@kboPV-{HfJz-^wnQBtafI3yI52Xh3PcVY^< z9REm27c3EHvB9h0+~hVzfn%@$|CYI<;gKVIx!Wudb^xiZtma&M^U;a^HFT2Xp*v@^ zqk0OIU(X>b!C}YROr2{ZWa_5l4M~?kpy#y$pwYg+z`QwkF6Z&%BUv^{WzL<ZWvk zUph@ZDIazfYLBxK5t}pzDtT%#b?A_(RhtZ+t)ieH0H#Y}qL}vOkaGnn7I~!r;ALd! z$m;)~FsrL?0V9UOyf%B0%FWTwAwOU=;P=TDo?GYxTh@e#x>mU~)=xcKS0&LGj$-*n z1pnWtoDp8?FMMd5NS7Xb;zTRG9M`X>9(HgzPBkH5g~&f&YkgV#78sTcaRnn7L)VEN z{gQ4GR^}f+RT$PblY$YPQz7vO3Nv%r(A=ueO~yl>FTr=Q?wPutsNX$&ra3fYww$!x z416J7ncbz+)KQ}*dSJA|Y@c(+b}J{;0YvVd58i2+VkbmZi~qqQ?gV~hLxx;9b7opx z{VKH}x|x@oQi$?(Ai1a}cn%Oz17d#ev4mfbVVJ*rppm>+CIc7>Nue}-dM%LfLL?@+ zLKCFE>fUu)qnNqJ>C@%>_wSvif^C$ju@bxc{;cgypGIuiS&JzFwpaP99WI5bA857_YGFTGK*Orff~jjlYAx0FwXrs-JwwzF0hGxGs>BO>=0TH z{}qGAuaQi;?U!XE=GvL+POM#d%^Z4sG|+N#yCq@q;3$S_fK{e zoy7p*dFr`aRB$h7Z3W)7hQCEeLSF%{5BhFzC76{!$+or*UEH;xxmsAhRPpK+RgScz z{3s?N(MNl8bPBXbJY1Mk1k8!d4W3{^L1JjQjvNGnLN=s0qA|I7pXcI%mvl+o zn7v$mK&Fys&sZfR?1j(Fd=1_gf?FedIw&sIj(>(=2P!v@N)({PukqrcKF8SzV34U% zmP=v*0TAqUX}VU(1a~|Rx-Wj#2=#S*G_GB{#sOiz$f_k)%&I9(d-n9H!IYQ@C`DKW zHfGGm8@qpBqFVI)`PG_}DaWYJu`K3=kOHS$;^3vvDow}0dLR;2RaQVehQ2>=ODSCh zC7-uBiRxL(W`!-BewCePQOr%)!XR9~7No>0RY9)Dr#7VK)TGKgiy8T#k`lKT|F%Y= z-x%GMYwV^*#V1FcNi2RBAz(ex-FWUILR~#g42VMs@sA!poZ~cQ*>yLvNV1wswLS`i z$&*`0Z7zOsR=V-fDOS;|_3OS}8V}3nfXA1%T3HQF(i^NbD3qO(N5Nw-#(`B3G6<78 z;k9!>lEQ_C5q=($KXIl0+I#mS$zyWHv7+Hw-}1PBV*m`Lhg`SlGZPp0?AMRd`|17H zrMI@q36r_0hU;#o8^Ol0eAwCje0Q0q3`1%#dJty&v?lWMdz&9XIuKs<7rwDAcztPV z63-+e`@|LQ2Ps$9GH1p15s@9dD``EtpmDU-Ob5Vzge?#rhj|{Li0L7|xOZ>l*s%#J zr9O^W0sm)WMO6Dcw~GCvnE;De`@kG;G@7VK<2I89ljf6yH)?0R&r=aD`#ZoySoK(( zA8-(N)I57V!w_jcvG>Oc9n|zhJddPvR@Z4!?AP z6HaMPg@^Ei^k2*P*zHYYRZ}AJyVFr%1BMc0QD+?Z-KdjfL%3@Vo zcN+fa#Li7!mq^K-FI8OmrK*7U^Uq@ObdG}|EgEI#{ z8XYEw?8kzwL;1UYq{x5+w`~%HZNLtjN1rnL7prz@9v6Y{@fgjaCT$HfRp7T%r-6Vh zd`vk$x*zVi4K?{*sg;{jh+~{X;BplUQ`{>>xu_5W!)KeDo8yXDuw6tmyV1JyFCuSs z7^%D%3b3xiy5^|O?z)ezb_$t;`4|w&`vnp#3HK-hJ0oxcBG)hhqiqE0tXI(veeqR< zf+RytsaozA&h4g(PiAW3G!eIlw0Ca6i(=MT7X-2)sGtT)FI9}kXv{CRe|v8n=~^gV zKWYZ?uBPdz$!5B7D{7IZ!*%6j4v&|`(^bICA~YP`>b7Y;FSg7rX=oiqP$r~;{{Mz;(-cj{FAgJHilUce0Ak}Z&+ zY}|k520Nh)VpirZsfOV-k7e=Gr;Mmb*=Rw}Sth>+PXHi8|iq{y*}|ZMOcin5g~%K)@D(5%MCGPm=se)ii3U`Tqpw$BZA} zS~(^84RN2o69C@kMMHi4vczJ}^`LRjC$MFK1#{{w1#oyOU`w?3Ou_5_Y*{}C(;32; zje~hh+qVvyN3|R_Rwqykp2-sxP-==)bLW4f_rXs{u!;&6r2!ei3lSNKeQufzGa??3Fi9i_l4@jnMF z<8`yO1~{21y*k#1zW4DoB1AKEtgdIb)hWa4N(BcQR5xUg&H&|s7EcH0fNT&N4O4I(^a zEb!MhVj+#GkO486$+C&VOTyIj6Wju*0MN#$o1Q*pz`t_2wEFu!CUs z)~#Qmg}?#`o*;E_l*TSZTa+KT2eIqK)wP{Nih#M#et4B)@DwVI@zaqTsH&sW&fEo{ zm9l_LyPgquL*HC*HJAWM;E%VTWiJqO2HFxlCwWxxE`=V)jplnQU%k>3on>SsD54JC zK`F%CHH|Rk<;BM2ENb=W<77HEdJwUQ^H_r54(yF&2EOu(Ydf|+#!b1D@@85I)2K4UoSt#HkR-KB7xJ(itm;tkbda*T+7eh_JZW@(+ zD!q0%Shf!_Z2Kl%Vkz@IyW=T!+(I|Oo0jv0fy0v#42WsaMC7DWW`l(BHE3vDW8s4c zMibDgPj>8=cLlKH{WA>*FoY7i{Er-vJFTws|DU+VcIWoBk#8Of7nk~NUsaTJ5B3SGYI@SMmO|DA^pXGM^! zGW>!^m|*O2>vrz4F~n`0C5fd;*mH0)K)va`*d3l=d|U!j2Q5sGA=+0rlxne`22O+B zPzkTsxV3-XfDRttNsiA_dT26f!H{X>SWE*YWzXU_hLnTUePI87K2!;wCe&EqsUSi8 zy6K{eQXOl6|G`o_b?!{&%6a{9q4Iou3F6}H4V&_zWzY;T%~HeC{Nlw=XuHjugpGJq z9MGOSSby1oR^YM&1{^HPJQCZ*> z!WYdmLl>BC(ly1PUL?7-_hLdj?abe?Ew@^-Un|Wr0br)kS_2H&#Rzvh4sdp17ikE zfe&S5ViH+NBhEBn-SSIZ43EPMK)Zd|`uXM)2lKbLBswx}{nFQ;n`lg7I|!W$655N5 z4S>jxDYbOGCY0(a%m+*Y&-=`!;$9I4Dh-$XCi1ccs>vV>9`>f90yQstfB@i`4J)e+ zReX?r3{Sf2$g)A$FmadQ_((@+3kKyLi!sQ6NSGw&f9Ewz-`yoIQj$}caJlZI;b>_g z^rkjw!ie{n!ata|1BXir#+gxiixw3_3yQ)0?m2@*QCYwPC#AWc*931>z3h#s|D&|9 z|5i-aQETb!**;1b7ntX&s7rBq!&GnMV8bcrW|$ey4R%dX*8j7}@m54;cx0rRvqg+8 zc{RV0GTo!UJ(%F)#W7IUSl$$w+_-c)ZYZMCLPNpS6_cp7In}Y`=@aJJLPE7KU2Q_p}+1 zzyl<)z>t5*GV~>bxh?ITkdzGIN#XnIs=FAc=$^H+YKW}AnX!8PcfY;xD!}pq< zf0NQ7`N;VZ9-yn;KF5O$&}Q8Hvc?QEd&U;bfPpON*Fsy)MUK9b+)=)@+mH%*ppZuo zZ@5Su7(P9MiRKSjOx^?MXT(u^?qB1L#&k-$a9Sc-+!M@A!Yi}tGmMw0d=XLE0{7rf?x)hzg(c2FF!b}(+U5th zJUTVClRM*1n*=Uiv^;1mG1_>?<@k6f7)Bd5sLBd1dGv1uo9+rx{of`8{Sk7~?SkWq z$x`_Pudf@qSl(~efv4O3DnGh@>gr=JH*n4^f-0_9nH8HzAlk)=3+cT2l${VLksu%i z8%ds>+;#cqf5!~l?rAfg<3Km^4uGN%@5DF@3(^6VF@kT`sVj9}V%{)#Lj4EjHS6X2 zO3v#!&2Z+hxm~&q+UwFKwdYDVg!ciybIU8mU!`{`TNk){&4`}6gQ7f^tNp#cYabh{ z%u)A^e^>wAcj=&F+mkvEH&+Gy5h!)-=BZs}uJy+!RweJu4H`ModY2*mThik8#}_X~ z{=AQ)<52|?d&cHp1&75>@8Mvzeh6KQB{S6M20%dOkS#Y-@Y%>wjse9F>ajS z$P_#WT3dI@!Hb68x#DC78%DF-dd0|#dEP`nXkjT6J(iO1x6WNr7S7PuZ)|EB`+6WK z2G8mn(%7q4IA&`=S|Srb^LGJ>0t3d_5IZeQm564HdPIBlPzWRE3xwSJD(KMdOH(a| z_k`s-dw5UV{j=nVrPNGp$Yc^nbuvPZ#`yHy>esJ_Ns2PE?v-DX_Nl&pAqIk`rbn8U zmcDj<=Td#yCoFA_C*GyzN-jQWam(0?OV-Aq<=s0o}3(>&kzH1wUm(Sosc$@}7Y2Xi3o)#*B!NHt=Py^$kl2B9S zxHr$J8ZmU6tN7*X*Il)zp#VMVkw7@o94KKaMpE0QcGM7q8*FygD9xWM?{_b-w?@#Q z5@9&7!)1iL{4uzjr3Y$LUcY}om_5?BWgOOMv4DV=(?Q|O{{AE9o4J_gT$*UxvPd0` zhps-;N~i9Bh&^2TQfd9fs-csS9$u#7)YYed|Is6U-!}UC zFw+-)vjwCE2k%JrF>l(R*=}8}s(M5?YcK z^MebIe(&GG`P6M^1)Q)RyhhP#CB$OXZAFf~9+|NCDiT{~mmpGAV@pfyvtAM}gLK6k zQf`%Rgy2GTvp2nF1B@1z{COXmu#oeALD_*2{NkY%a}!@5>)Md}gBaG_!`4r6mGD_J z%z`|#esKY8Hf%UwBYCP_7`!)kGL3d5E`W7SnRWWU5V9Yh+b>$L{|hS-af%kk6uo-E zWyS*LF4Rd_uloSEw4pgM1OjL8F;G(&XXe~o1CBfyT{}e&P3D+gtxkx-RRhRKsc1S6 zX*VmPmVr(O6>aFyWq|83+cDq+gpGt4ij^r=Nr1lmfl(~r0|AU)?yTt#B}`u_b%sD% zj!~$IAc=7kT((-C(s_!O1;Hy-G%=f$J7ni+Z0ocVDt|B09?(BXci zXW5i8dE!K8hJ5s)JUw)$c4*7Y0^ub4P#Iy3hW`xEM|jK~J_HVc7=g@b8p#h^ytuhG z_JXiH_VpnhRYk=sE-e~TR2b3%-wyr+!?VY++d4NRcq2LS?JU3!LKo6u5~cyG!FEFh zEw2{Qk0z8ti-oB|xBdb%Kx_c1O}(+!z~h;HPp_eFkVYyuY6`}^tabn~_|* zyzASv{{%PHfEH|3s1;hc^ZEda+;CWW(9v$^d?P7pj=SxQunrt})$#2gu6<+bJrPJ^ zft7Q`o*vo|G6YpmsP%|1W`TH_cD(98sqwg9y!Z^!OL%w%Li6?Z_B_*pW=7wS?$aE2 z@Z?EWs7g!W1tmE1j2|!QYpyg%-R@{uG}ZH{`|NSwQWCOIS>XSJ94u0vUzF(6r`G{y zp`;SJ1GPVBdD`#1^{fiu;dm8%Dm)y^s55hfen_A@5O1=4dB{fHA7v$-N8IRjp||m@ z@W-4A!JT>DrJPpx-`q})_q=bLh^lMH$e$3J+pg-G!5;KP3T1JAL(FsjV^T9u^o zq#Q&)m#-ghe17Mx@JVO1>rZ8rh?Bh4yFbb)6tFI)MCmUh!{DD_*;X;yb@`m7{GPC| zo6nz5*3q$MGzSh3i~5Rd`>riplBitu+uU09Kh(|0&}0%+1d3` zU82}aoEWy_>CvE|MfgJfF=XdPqMk!~6LZ4Y)YR>G2wdy0J$XWW$j^I!J$oIMDiA6~ z6cE`Ph#Rcl)*_Tw9t{a81utT}x(#<6!swVq=8QMtPJvC>W`__)h-&kVTc8HNPp#__ zn#=IncB`T5IVPY%Mqfe66&P7}=~SzhHpI#nYZ8IS%wi}zyBPe3n2i!P86cFowzpB$ z?9&fBIUxz2I{*QjXMmx8pw9}ECtn4f`?lMwN;DRHF0(w|AGvs?!n72}Rjb0m+#-HL z%Oce)P`s)J=wx;cG7du0dm&xej=e7`J>AOeP&u6dWhHZ@0X2g}PFdejH2?X0@h|^> z^50zVpos|PMkgwi&G|VXds#s}99bhdei*LK`Lg%{_wDz~4w%1ts^>3RpYZdP{xu@` zfBRA!TNa~HdpTTUX)>~t$1*ChbX`tW4+mMSW}yHjY|FW{)#oA6Kv%9#d@uY0kyCzn z&}2P+ECh+15|BZvOVR`vJ!|Uk!XSRd9mFYv53P1^$Q=j)KM*}6p=H^!mkhnV6`?Rf zn7i68?3Zo%{Bz$GwC1h<^ z2k%A`88Dw;$z&c4b5Jtf1@u~6PA8&f;LXx=YWX|Z*$G?dk>K!BRh18;co24?5_8Fg z!R(5L?P_ME*y~tZ5svjOjj6m9>vB6Sw*a9VhbG5n9Jc1L>M)TdD6lF4St($1>6Y{_ zQ4|r2R{>Amx4^gSL~w9P(s^{Wgng!YboU%=Sc}5c4`L^+)df~XTemm&g;@c<1;FWD zP1DPSjPscH`0-*Ua}fDZgJo50!nij;#nRTnfpSJ??c?DUYuK6nk!5X{lahi01J}d& zQ&~D>%eCT%1dL>@hGOU zkn9Pl>i4z}t{I;nPQpEf0yXD@gqD7%sQ_P{bb8 zetCJae)rzAXMo&HoGk3f0pQVM+@u-+B^wIGG}QptFL^Ub9k${yv>6GQr`-RL(f*!A zkTLI3f0W)>9=t}TLo!8}U`F)28%d?5d&=FYts zHEh_l2P4Ln3f_{?SD2)1N@=Agv`zKPuHZ5nxeJT3nCv_UxGXEf-0S-Dr-DYQu+Ty^ z0PMc#*|TPbc>FCYv!34i{DCY4aIqpLqvd@XgTkZP6~a2embzpfZu%pk#wSI5tB>u# zo&8!0{=wSoa#`}BEI^Aa-x{_dL9t0B`~qUEkIgK#B82Opm!*%ct^ zth|sC_oSjk2VlQp!!e!r&dd2&9Lkl?76H>kiHV69H1{$xp9g!5+$(6mzl%sWwV=v4 zs5^9Mm_T3&vV9Mt2SZJg# zFE398$~9xkgtj$gaUanxaGB<7f8qe3kXlP=u8)b1kn!;6mSe5aimo}SSFW7UaXq>z}VSYC=Q+drV2=n@qqko8EpQ z@guSgpFE|VVHX__V{nDAyDAn&urR87rAPeiOp@A-R7+$hu|)GXT2hdO8dg+^fTl{*QNe-Rt=Jn?M6kZky}HdU$8bC z+S7?mvlz;gC5W)37zb8MlX=XB_)~Zh%7Thaqs^84)w~}PyegM*E&T$}H%a{YCqngI zxuX}k_-}Z<;6jxJ9URRh*^kQw&a2Yar9u~un`aHI%l3*m8*$kq?Uy&XfyP1SihVeU;A?jlrq`qlj2?^O#W*fti>V=BRfOajWXq_0HNOFhl9@ zd7PXl50-)^8`$wu{2m|e!_&4<`PjXcR4O@kBKmJ?YsooE0og=%?zrioHi1)STl7N{g>{Eu2<v{H=4`b0kRGJVvaq{}h_EF9MqT0PV{HF zm6cW5mI*Oc2VuZ6v7#tDU8CEP0bW*Q83nJn9BQ$G4fgshCO<^}6giNoSWtCDUk<86 z!0d45HmqZ?`M#>oV)XUlN7+Y;Yr`9pj>F3jdFj1uQgqdk4i^gd;9!~H2VWVr)Ym_9 z)Nc#P$Z!QCqo4^&W^CI{OsvNIHam#4wbOH_b&TuXb{!}_o$O%un}}|^hj(koo1!a9 zSa>cn@K|I-A9)BjledlehJf8oS?ezhDJRHrB@XER66)&?67+l>zy8b0e_%g;%2o6KG>vOvc(}|5Qg2rH z$7<4iF`IEh3)xEX{U3));g|oX*W^Fu{vUj)E)r@L*x8OV6@Vrbd1Y%B`2#~xIz?%r zY&wBS%IebSqO!8@nLTtSXD&N=kU2cuS%+_7-ydc)RR){5$aLK0@kCrE3n7o5Z-La=4&GlJZ zWv~NK9$_O+(-d2u{{5R!{Z>_0Zg+BG$FTEE!&`N5vhwl~X8uCqQ z^77y)2v9n*87}{ZSVc#f3>stbSRyM6-xexc0Vv_lj8_C@YHD2A^U?_~b|&s@+JwIn zxg9%xK?iCSOy^g2X{}k&p&BRym+|0s8U{Wj(rGXc^J9J&%^ue0`gjG)PWx(iXPW(10{HI#u2k8Yku(Z{7^=CCfY53z&QX>TV-hKFUi|1*CTlsw=P&h6Zux&ZW10GL)}G56+1| z27q)-OI_XHn-MVXndS5ZWPK#Ke;W+H7$4vGYX4~RD|JHZfzZtI$t<4ZfZ?#uHI(zM z2JMAe4kl2dbiWjL0bX1NEGLAGqR_F2<@+vF2IP9bJr*RCLRT1r`1uLQzM!4fakXL; z1Lqk!8+V=p2VQJy>SEOZFHg_5ItN$QOlm>7B*{T=1s~N=B z9?F$z^wE9uFIY{1HO!0sG)G51soSiA;dCF~g zJy}^&d9+knRi6QGfW~R!bbZ7>&{9?yd_4=fXXJ~{RT0t_U?r5EWcy~MrOAdkrTU{reh%=0-5N-s~- zAF{Ka&72o6T_Vsdzn!~_gN{jn{uhA1QC(xVwr!9U8Z&QiF{uNHrzb{ze;8Y2FN9X$ z&+ho3Q`7TdD8@nbw+^_G%I_g`WdYKcKzoGf#sp3~)MWM{g=u@ck5pF1yL&h8zdLtc zg$Oaknk@ch@cD?&PK&B*Yt=?CRPK{FJ`xTh1t0TE%B!HMzLd(VXEdoSzI2!6L&l|a zBhza)GxFr*4GrTrgDTkSBRF`Q_95L+9|V_NM`(=T7hrC{n5yv3B1_BIHO@@^`1TyT z&cx%KsgR*yG(?=$ms=hYo4ryERj5Ut(u6Ym-dV-xKT1oDbMkv&3&U#MOa|5Y7h{yf zeJXtZX$^05pK9U%$lT%@6J-X)AZRRJVQG`9AX8V`HG(IPm#Orj;}(9Y_FnsXN$Ww6zl-z5t#VTJ$LR|UFrOR<^>k6RfT4s-8+zzt0D|Ina1oVTm%INhid*M2U}jb z&$x`j_P5sU+Z*doe{$-Z^;|7W+UM2B;hLI(ndPLwT0*>>uW)~lUtwciHAdcce?xC! zi7{)77b=$#(4?4kj7uS#m(F?n!BKFf4eTAZFsR_xt>M^!Dc zdqjw!d?oTu$ynK7k$S-T+Q|hhUEjK83jm+TLS+ir_s)I)Ce*%sxeOLU^M|N~{EEGM zy9OEEwoT+AAwo>FD~O7`;<2HmX7Rb07(38f*epZf_7a{+L7|G@BOBv89yqI>F!_Vf z9Hpd86o_?gK$|Sq8mzItpHxLv6=S1s@q_-C-JkrYb^nX*&oOOHgc^4`VWG0$JxY|o zLXmxUS%6Ket{T9^P0(8a3o7|H!vvZ51RCqTicNCdUKo`&F(5(A=@gTZ9J47a8JtnB znE^cW#K7{ykf?Ire56`}fFXz3#}5w)Z7G7^7&dELTw0ivX8Fzzhw5dg2l{2Z;pjy!S>?FdCMFkRV}(9X2!1_=?85I!4u%?THm~!S>Lu4X z7J?JS#!jLyL=M+druV+R3_dTR=@5v;7|4wc;b>7D|_0q7F^2vBtaTe`%ooeVWC zWfcxMR4zXHa!573^)DjpuG9?8#boaq_&pfFnl*}2OdZ8M^?={qb>V(zDR(YVK`uiu zXQC8+;j#MnJ7r#!OQ~fC;pxP=n=2BD%D+ClHIPbSeHmwo-w%v_ zp?~Y$({yYh%HEDbYenvTyTLqn(6(*gD2FDLIZexV?>I=;v-byS+*FP->OUKOi*Qw2v!BIUxy@1p>mb744gCS`VhAdIW2>{zUE2r(aD!+dDI*jsr2dD^KtawWH*SVAF_l;muh*=AHd_UU%q^_BSiZN zhJJzSrv8*&W7oax_zl+r`h!$9fM(Lb-ZZ1?{Kkd6mR diff --git a/docs/assets/preview-image.png b/docs/assets/preview-image.png deleted file mode 100644 index cee3f1599394effb9779b6d3717f2a8b055c04f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 347414 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 ^Ev1@W#1@syr>s) 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%0De+_1i3f?*#k1AA!n)i=Fu)5dW75#1A3( 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

SXDFQoJv3wSfmqrtWw! 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 diff --git a/docs/docs/assets/images/eclair_batch_size.png b/docs/docs/assets/images/eclair_batch_size.png deleted file mode 100644 index b3ae9598ed13d3bda2613a39e9461770e7af1c56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8835 zcmd6NXH-+)_H9BH5HM8v(G-*}EeeFH5Co*CG(ma`DxJ`4B7z_S0ty5Ih)8JCdk-i* z1f@zxT9n>|DD55Yz3+bezfW(B_daA~46@mKow?>Jd#)4nz(9+U{vUb}2*jwP4L1aV zz~#W_$^{zWFQXztPk}F(kEWTAkq5%Z-_F|!q;Kcr>FVL*`qci4pOZK8sfRmMQeF}& zapj4Rk0(-5O3LlO3nV?fou!DkHGTq{(0OW`BS9br*7FY-l#aa&0$ttKf!{F>z;4V0 z23R>Y9PW5T;d%{*5w1BpQy(eid7tzf_fL!Q&_I+62;Hfa0X!fGHT&=Ag&p=gBi66x zA#cX%m@bH^L#!iZW6V}^HZ+D|ZaI#^PcsliYf?f@67JXAT5)r8rM5xe?a`??VXe4pfiSRsjKhNzfmZ3$649DXf@%~n8wMVDS00*Sd! zofaMaC5b{04!73<3ke8ReEfg6Ja4^#LAt654Mpn{8@QUtfi&eH1aOt z(LJ`%%cb~Du));l!TYp0Dw{L#v?}OUOmxo`&Oj85lm%Wr@a&twmtm1v$W8v+IT&7L z=~3WkTlPTI?>n&a(rzz(&y48ki*|`^v|~2PgL}$S$6ip`_i9}m_q{&B-1m8O8+!gOa(WiOZ^r+>myd>)#bmJ6-^ z^H+=sd?4+ahnb-b0exS`PF?oW2XLx2vf>w&_zm5;tW{gi$_jbmq+f| z;S(`-NMif7T@aFJRi2t1jAy4bjt5)ZnoTN1bF=;cyLeK-NnJg zinVwx-F!x{K<-wpZ+7ZCOnZHYrC2O0A;a>XiOzGnPCBvJy`I6CN7ud-KZYb;Efrj@ zXw8{mE^Nf{w*F(G)HK*X*lVxu^*pzmQ#ME8j)~Xvz6C1w$OcE}PCLffmh;0ds_VOD zekx?{5dCFiQc~n%ZxssVRl%Ly+d~#e=y*=%XOL#5Zlc5YuAO}}`iI7$Q^?QL6#)Ut zkI-cRl76P)(BhprUgAUSHdXf2^djgqzt149P%fIPwQ% zX=xyjB%4m;+$U5wQZeA=+++7P2l3d5Vo|kEcUPEVx8=3@frv`9`l%P_Iz4o2qt4-h z+osHhyz*4`K?cn4n)86RkG$b)DT1J|#cT^M8)*H`TBKwHk5t2O>No#$ZdLBeZ0wt3;+FLgYmm- zY0%b!rYR4=IUUOSM~rfSDLUMugNrjaN~X9)lC0v`25#Q0^Us!7R!ZK{3?wKNprHA2 zzcvrJZQk0}<4)`~0DCHiCll?hP7d7LO2vzBwct+fE+dRgl5A&}l6WVFnE5cpPup(3 z2eBsJanaR1V&dQ22+Dr;d4;2qBew^{#0SInB~fX`Nv)rvJOFNVyuh6dVF369-t8*O zxw*|aSp-=PA3SZte!AGjd0oNBr=6)^NMEE+(BI7TMH?Ef37A0np#|DG`FCZL`Oq(N zH2tqo`c&Qhqd39zr1Lxpz{7DK zV0+Ys!M%c+F%C=3jrxqOqn27MzfD^Am!acLr{v>Nk%hYD=8y6xZfrVG-b~SFa&_xp z<7e5;rY8NSy<004+Oc$+#vIGOb$O3o-^;#1y50h8XcrD(DAnYe>P$V<$UE$T-|0`4~^~3I9OlpDR^7j9nyw~$Fdr;tvu@w_jP-TLmAz#_p&GILKNt&ZIGXrd$F?Plr!U})h zRBndm11@_#1}r^M2MZ0+-q^@&uE(K)b;?Zwy(=k9QO?e?{_2oymDU%-&X3-V&Q=_v z;n!}`ODE2JpB!pO7AHwO&RU8b^}Sh_FLF6+05BFKpZC^5EVhyJ;|;=KPR<>$kn9@( z36&AK+TDG6wQ7zsm-o=+hw0g$xrV!>!@Whd;<@uo#Nae^)M*z3*H$ykjjj5P`jeY$ zycqbTOQlm|<0YJDmke?ImhTVC;WRmSAhrmqA%)XsH2`;$HKKFz$^{zr*Nk<06#-@ zA`Z%t?m7v>t>Eb`Y|{(@2WCL`fu&6Ci=oRqT~RlbYnoH?i(Mwl^WG6IrkSX|a#_)L z1Z?Vx?~7~HgG|sS(q5LPE$}0jP)S!Ep{meX;1#f7#FiGAo2FVlCa*T0Ep}XP+t~NU zps{eFhr6?xDGh(xgD-i=Zsfv8mRBsWhpD0hM^B}x%>Gr28Mo2aq!5OH4nir#E;^YO zcQYo#&5c*NtukJ7ROhs{DBjI2bBW~WW%+In7T{`uv!|L@XH3aOLfZQ~ND$$T@ zFaw^%JU{=JuP=&7=)JJkHZ?`Gy*{tbd#&1lFY25!0_=YYowj~RIWR~_I_4o_1Eurz zct20aT)((QVwV~^fpKuXrqMu^(02V+D81mm_DgpDCWti6fJk9@OOfFxUqHH}p<&dM z_c!M||KdTu!dSCBw_II$L1T($ze`}~XAVQY*Szogg%Jr(r%Q%R+)7EG^xEih8!94K z!b*jCvmLn7`}*iVNahRzr`({yrJ1vbd1f+OeqY1Z;9sJG39e#q7@F1Io80@TJm{e5 zmOKZmZ%*-_ouk1o4TVUa-~(3fi#pviZ&jq#jCup~6R>eR#3PD?#k!uk4Q%if!JW$5 zo2YUzgpM4Ev5J`c>J@_|PMs7aF&SocXK>e+7fjk9%W*l87w5|>1pgezm=LlJ?`hgu zk2t;3hRZ5TsUWYs+iiBNl-c)MR4`%7PoGjUYHlvQdZFZ6ubZ2rGs1I(tiEzz^2e9n zytgaNt;BW(m2QDxLsQdjSx@5;-+j%cN45e3Kvb0%#pf3#E7!^DIJgJ{l^9lAlopt* z3o9)$J93EWG1xDlf`v|=nN*6JiPWX!ZT;EO zF=ZDfFJZlao~Ca^MsNfsB5(xMm7HDWgzH=G%Z01gVpGN|akFPsWBU>G^$X;CK(ORh zn(>p_6DjjS$&_P>y8$&gbbg9(U}Iy7ew>@56CSci4?EoUHb}SZNPGU{oWf6mbC2@! zT9P@(M~*Th#FJdzf7u5333VHD>@@V|@u*d#Jq-N(LDC35lt!WV*VRRrcCd6`iPpx< zL`zre)$<<{Sm|C5|7;6$coyJPN0bQOF=5ujbz_q!Boy&zI?y_7^tW=cK@T z{kR#xwB*wy?U(UaEPELMzUWF`G{V9a?#Bd@q~?_lo&IVOxWFJq#)MEY5Vj{cHh-7xh1)udaF)mA z_Ran8Lx=UN?ee1BGFTgHg^Wd^cVf-(Ya2i5CE^0Ix>e3By9cu@1`-$VdhMAHU&a(K zW8v3SMDas#t-i&Twi_g7kLLcumnk~~M*3UG812WviD+D{LF++}VU~?a_jP2~&cvd4 zjbT*uM-^%_!l=8;V*1P3h0H_lhSQ~9EY!ty$ir7;oJzZgg=wG z!>ap1QU~sc7s1=FzDuVmJy~Rla&p?<+e64~ynkMx%L3tgKwo}2$bLeo^*5*1p90IU z5aPu?tz}KCr05=$5vntq6nGru#i$nO$Nn-kVJW35-(}nZ!d1y;EAuUJm)xE_s!aZS z*PueyU18vIsazn0t3#auNcFVonaIL<1=b#4;;qQvmo-d~!NNA-j-rF5pB9s~9(i`s znLJD8OuQ;ZIO{lL)ZSMx0EIJp9bXk~D2W@KKBE~dD_U%1HdrZQ6$a3RUy#RpXCmXQ zXxk5CRIpOP6^*4ax?7=f>@`#Me?I-f2G^@DUKbd;P5@0I5L!OGX%mUJkoW9w4bf_w?T>CoW?n>o6 zmdlu}NZ%U%vF-~=D}$b*WTAi`QNM>Mp579@XSYU;;gVp z$?X!`b9hjNwcl(>}>OJt;Ilh|6-&;dFA^nV3-l82k(|PRU6r zOfyxuznokjixx$gM)F&dC|i^+o?Wm69S;%i?c}pPiZTfZfA-`VNjE$wLtftXM|vP@ z!*R)w9E04nIu$W@9n)Unk>VM}BV@y=V_8|m`?g{F2(j-e^>2^ZYlDHpG8_LuwU(Yoge+K%W<&`R2 zqP(l^c~X!yj)Xv zfVf25b3P}lz@?RYJZdxs)JY&>!#J8%gD3m}c}8vAdn0=mS9Go2ij&X4Bt~AU|}PC0dAD?$ANU+rtHY>hANQ({v`cW0f7khG<}{m!nzqAT4jeHCA)Cr zs1L0L)gD(rPi7Kb#4+>V^TR1JYQjITt+0Q0Mu~6B=T3tNOz{q7g(b;lDvfVDn(d}T zh<4}UeCG;5^2_7-59M9ldhTJB>FH63u!9&38;SJw>sN@cj(~uM^%F1kC7#k6 zRO&_Sw4W=TF|S`z;R`)dk<3=g66|KbYX!(jQ~(){c|FxUrKLFnK=txpc4((3{~}t? z#-A}s@%K7)>qR&6Kp?-a5`^MkAUDTV;=>&f<3M&sJzLY>`K^^ADOzLo|_QjDmF-BZjCHY!#$MPX@ALh0YuN!3}t}Ffg>3U8T zV+w2#E&`h^`jLy=UM%OB=iiZUApw(V1^s{=+Hzqpg3t{vgOO@66P z2FN3OaayT{s$!{SSY>l1vDoM@x6>Zk)=}ys63o| zD|!d%s$`7d@V~lg;ISXrJ>X81tw?gGq*v!@vr*ojq{%W*Tq z*QQVW#7_BUUDI;!v$0Y6y-X-mp0rGX z6q_d8k@LJSIAYrlo+q{IFXQ*|&WsG7lcG~b622e+;a5)9hszU~fQ zjSt7W2NUN6mNWACKHM+_^khi_=tyi^bzA5(MT`OM@j~Gg90)jmuBAB(>FjcTfX}5B zKQYmH&i3*5Lp7RxfCi%)o>Z$1f#}fMl}3_|%SU+~F>Vddu!CbnBW@rk#Oa-Vvbp%(4 z=f-T~rC1i&zZeu3*^suyOSUMoj8uyx)7h5AGAfc3QR3)sbRPbM*ibjHeiy3b622xX zMHoH;8o{R$pZ7Yg)&F`AoWPGsG~UpWkT<&w-C z=NY3w7XM*-EhSWmi>&CGge>*-hzR1ldGltZsbgwK2mIeE(0^w%mwf3$6Doys5kwIEp7<;^a=C!r*$Af z6fI%>7BpDlgEx>?-}G!NO94|KO|j*`UPp(Yi(OttBJsDn|I<=ZOD!J$b1^8<1|1U} zz0Umq)0pl5>den6AdAzN@nkvFR)0hjm|GF3-b<_s{1wQg1V)NOX}C*3efggTj-pDd z6deeJKczE81{Mib=ke#+7Pq}P4?f$#S^(wjq?1sIN=5x9Hb8R$9St*a3%^Vbmzt$I zJ&#*A6M^8mrg2?p6Ma3!PbxlNVkqnb%b^Hw+4+QU?WLCzN(x58fstr&g6m^7WrOdf zG%0tj;El3X-t&9-hwTi&6)mjVBxZj?Wk0CpX4N131YUwP?K4jc85tFR%4th%a7HzT zUG~pKZoZp8Dk0}Q;5%4+(Mu3RF;n{AwbD)Rr`ZK6qc(_Jpj7MQeZRe+Kj!m7Buf`h zA`UF|DPc$wPxBmOLh+JP>aJzq?D1u??3-8h@zu*%i-a?^ksAD6+bZN{%#&gk*p-(c zfQzw+gK7*fukW3vT+oyjLXINf68SmOU3cX7dOXH=z@?4H_r@;*;njA&MG>mvb}Pn; z2S9=L8n;MSc=3|rd>FJpy7r@$5o&`H${odT-R4VFVe?f9_TuqO!IaQ!QmQ^dw8hkZ ztoD&D?}Ht-B1?G#E-1(?q{ErujN5OJL?rQqHJm2@=0duk=tkqEBi(JaH%+KKVgvtO ztHD_XQYmdIt#nl&zJ>_1;(Fn6LwcORavQpR^|@FEKALw=mykICO#4;K7!bAi){BtkTm^`e5Y^&>8Skx6|?SYl^~ur2kNGs z8)U9c3t%N*kq+fNyk(njkb@a{Q0}xHg-aV zTTV}4Bt?QN)9KsAZnXGLL}dns_jOyrzB#d>Ykoz~*8S3J0gb3qJls!imJmmC~&(6X{J6(zN>gKenc2+02xDpjJSa$nQ?b z0+p_M&91j9XK7FWq6Z9Os_!6dc4eb>k>)6;?GRS_JS4E1OqKHS zVVl9`;vxqqoWArx7A1A?_fG}>As%Q>rrO<{LD{tK&?@=uGkrD65Cngi4e-(g=ZEvR jBmR#`?B8!q?6=LUDc#xRk?sUu2m$G68o*1{ZJ+-yq6eh+ diff --git a/docs/index.md b/docs/index.md deleted file mode 100644 index 9c080e3e..00000000 --- a/docs/index.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -hide: - - navigation ---- - -**NV-Ingest** is a scalable, performance-oriented document content and metadata extraction microservice. NV-Ingest uses specialized NVIDIA NIM microservices to find, contextualize, and extract text, tables, charts and images for use in downstream generative applications.. You can access NV-Ingest as a free community resource or learn more about getting an enterprise license for improved expert-level support at the [NV-Ingest homepage](https://www.nvidia.com). - - -

- -- :material-book-open-variant:{ .lg } __User Guide__ - - --- - - Install NV-Ingest and set up your environment to start accelerating your workflows. - - [Get Started](user-guide){ .md-button .md-button } - -
diff --git a/docs/user-guide/SUMMARY.md b/docs/user-guide/SUMMARY.md deleted file mode 100644 index de14a09e..00000000 --- a/docs/user-guide/SUMMARY.md +++ /dev/null @@ -1,5 +0,0 @@ -- [What is NVIDIA Ingest?](index.md) -- [Getting Started](getting-started/) -- [Developer Guide](developer-guide/) -- [Contributing](contributing/) -- [Appendix](appendix/) diff --git a/docs/user-guide/appendix/releasenotes-nv-ingest.md b/docs/user-guide/appendix/releasenotes-nv-ingest.md deleted file mode 100644 index 86eaa94c..00000000 --- a/docs/user-guide/appendix/releasenotes-nv-ingest.md +++ /dev/null @@ -1,3 +0,0 @@ -# Release Notes - -good place for them here! diff --git a/docs/user-guide/contributing/Writing Documentation/index.md b/docs/user-guide/contributing/Writing Documentation/index.md deleted file mode 100644 index 2ef4429b..00000000 --- a/docs/user-guide/contributing/Writing Documentation/index.md +++ /dev/null @@ -1,52 +0,0 @@ -# Writing Good and Thorough Documentation - -As a contributor to our codebase, writing high-quality documentation is an essential part of ensuring that others can -understand and work with your code effectively. Good documentation helps to reduce confusion, facilitate collaboration, -and streamline the development process. In this guide, we will outline the principles and best practices for writing -thorough and readable documentation that adheres to the Chicago Manual of Style. - -## Chicago Manual of Style - -Our documentation follows the Chicago Manual of Style, a widely accepted standard for writing and formatting. This style -guide provides a consistent approach to writing, grammar, and punctuation, making it easier for readers to understand -and navigate our documentation. - -## Key Principles - -When writing documentation, keep the following principles in mind: - -1. **Clarity**: Use clear and concise language to convey your message. Avoid ambiguity and jargon that may confuse readers. -2. **Accuracy**: Ensure that your documentation is accurate and up-to-date. Verify facts, details, and code snippets - before publishing. -3. **Completeness**: Provide all necessary information to understand the code, including context, syntax, and examples. -4. **Consistency**: Use a consistent tone, voice, and style throughout the documentation. -5. **Accessibility**: Make your documentation easy to read and understand by using headings, bullet points, and short paragraphs. - -## Documentation Structure - -A well-structured documentation page should include the following elements: - -1. **Header**: A brief title that summarizes the content of the page. -2. **Introduction**: A short overview of the topic, including its purpose and relevance. -3. **Syntax and Parameters**: A detailed explanation of the code syntax, including parameters, data types, and return values. -4. **Examples**: Concrete examples that illustrate how to use the code, including input and output. -5. **Tips and Variations**: Additional information, such as best practices, common pitfalls, and alternative approaches. -6. **Related Resources**: Links to relevant documentation, tutorials, and external resources. - -## Best Practices - -To ensure high-quality documentation, follow these best practices: - -1. **Use headings and subheadings**: Organize your content with clear headings and subheadings to facilitate scanning and navigation. -2. **Use bullet points and lists**: Break up complex information into easy-to-read lists and bullet points. -3. **Provide context**: Give readers a clear understanding of the code's purpose, history, and relationships to other components. -4. **Review and edit**: Carefully review and edit your documentation to ensure accuracy, completeness, and consistency. - -## Resources - -For more information on the Chicago Manual of Style, refer to their -[online published version](https://www.chicagomanualofstyle.org/home.html?_ga=2.188145128.1312333204.1728079521-706076405.1727890116). - -By following these guidelines and principles, you will be able to create high-quality documentation that helps others -understand and work with your code effectively. Remember to always prioritize clarity, accuracy, and completeness, and -to use the Chicago Style Guide as your reference for writing and formatting. diff --git a/docs/user-guide/contributing/Writing Documentation/jupyter-notebooks.ipynb b/docs/user-guide/contributing/Writing Documentation/jupyter-notebooks.ipynb deleted file mode 100644 index 2e1aa81a..00000000 --- a/docs/user-guide/contributing/Writing Documentation/jupyter-notebooks.ipynb +++ /dev/null @@ -1,164 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Jupyter Notebook Support\n", - "\n", - "Jupyter notebooks can be rendered as part of the documentation build system as an alternative to markdown files. The \n", - "docs site uses [mkdocs-jupyter](https://mkdocs-jupyter.danielfrg.com/) to build and render jupyter notebooks as markdown\n", - "files.\n", - "\n", - "*Note*: There are some limitations to jupyter rendering.\n", - "1. Notebooks are not executed as part of the docs publishing pipeline. CI tests to ensure notebook consistency are run\n", - " separately (see [Testing Jupyter Notebooks](#testing-jupyter-notebooks)).\n", - "2. Notebook markdown cells don't support the full range of mkdocs-material configuration, including things like\n", - " admonitions, referencing automatically-generated API documentation via mkdocstrings etc. (more\n", - " [here](https://github.com/squidfunk/mkdocs-material/discussions/4461))." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Example code block\n", - "\n", - "Markdown headings can be used to create a TOC similarly to traditional mkdocs pages." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "3" - ] - }, - "execution_count": 1, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "a = 1\n", - "b = 2\n", - "a + b" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Embedded visualizations\n", - "\n", - "We can also embed images using standard approaches to embedding graphics in notebooks." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "import numpy as np\n", - "\n", - "xs = np.linspace(0, 2*np.pi, 100)\n", - "plt.plot(xs, np.sin(xs))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Testing Jupyter Notebooks\n", - "\n", - "Jupyter notebooks are run as part of the CI build suite using\n", - "[`nbval`](https://github.com/computationalmodelling/nbval/tree/master). To run these tests locally, run\n", - "\n", - "```bash\n", - "pytest --nbval-lax docs/\n", - "```\n", - "\n", - "from the repository root. By default, `nbval` will only check that the notebook executes successfully. To add additional\n", - "checks to ensure the consistency of the output, add a `#NBVAL_CHECK_OUTPUT` marker comment, which will ensure that the\n", - "output of the saved jupyter notebook matches the output when the notebook is executed in CI.\n", - "\n", - "For example:" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "2.3.0a0+ebedce2\n" - ] - } - ], - "source": [ - "#NBVAL_CHECK_OUTPUT\n", - "# pragma: allowlist secret\n", - "\n", - "import torch\n", - "print(torch.__version__)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.12" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/docs/user-guide/contributing/Writing Documentation/mkdocs.md b/docs/user-guide/contributing/Writing Documentation/mkdocs.md deleted file mode 100644 index 78a34821..00000000 --- a/docs/user-guide/contributing/Writing Documentation/mkdocs.md +++ /dev/null @@ -1,7 +0,0 @@ -# MkDocs - -## Build System - -This uses [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/) to build it's documentation. -Docstrings are converted to automatically-generated API reference pages using `mkdocstrings`, and can be linked from -markdown pages using [paths](https://mkdocstrings.github.io/usage/). diff --git a/docs/user-guide/contributing/code-review.md b/docs/user-guide/contributing/code-review.md deleted file mode 100644 index e023c9b4..00000000 --- a/docs/user-guide/contributing/code-review.md +++ /dev/null @@ -1,3 +0,0 @@ -# Code Review - -This document describes the process and etiquette for code review your lib diff --git a/docs/user-guide/contributing/contributing.md b/docs/user-guide/contributing/contributing.md deleted file mode 100644 index f3933664..00000000 --- a/docs/user-guide/contributing/contributing.md +++ /dev/null @@ -1,12 +0,0 @@ -# Contributing Guidelines - -!!! note -For code review standards please see the [Code Review](code-review.md) page. - - For all PRs, an approved NVIDIA staff member must sign off and trigger the continuous integration (CI) tests. - These are initiated by the member commenting `/build-ci` directly on the PR. All PRs must have successful CI runs and - sufficient code review before being merged. - -## Python Coding Standards - -This page contains the Python coding standards... diff --git a/docs/user-guide/developer-guide/SUMMARY.md b/docs/user-guide/developer-guide/SUMMARY.md deleted file mode 100644 index aa4df514..00000000 --- a/docs/user-guide/developer-guide/SUMMARY.md +++ /dev/null @@ -1,8 +0,0 @@ -- [Authenticating Local Docker with NGC](ngc-api-key.md) -- [Content Metadata](content-metadata.md) -- [NV-Ingest Deployment](nv-ingest.md) -- [Environment Configuration Variables](environment-config.md) -- [Developing with Kubernetes](kubernetes.md) -- [NV-Ingest Command Line (CLI)](nv-ingest_cli.md) -- [Telemetry](telemetry.md) -- [Environment Configuration Variables](environment-config.md) diff --git a/docs/user-guide/developer-guide/content-metadata.md b/docs/user-guide/developer-guide/content-metadata.md deleted file mode 100644 index d8d29d6a..00000000 --- a/docs/user-guide/developer-guide/content-metadata.md +++ /dev/null @@ -1,53 +0,0 @@ -# Content Metadata - -**Definitions**: - -Source: The knowledge base file from which content and metadata is extracted - -Content: Data extracted from a source; generally Text or Image - -Metadata: Descriptive data which can be associated with Sources, Content(Image or Text); metadata can be extracted from Source/Content, or generated using models, heuristics, etc - -| | Field | Description | Method | -| ----- | :---- | :---- | :---- | -| Content | Content | Content extracted from Source | Extracted | -| Source Metadata | Source Name | Name of source | Extracted | -| | Source ID | ID of source | Extracted | -| | Source location | URL, URI, pointer to storage location | N/A | -| | Source Type | PDF, HTML, Docx, TXT, PPTx | Extracted | -| | Collection ID | Collection in which the source is contained | N/A | -| | Date Created | Date source was created | Extracted | | -| | Last Modified | Date source was last modified | Extracted | | -| | Summary | Summarization of Source Doc | Generated | Pending Research | -| | Partition ID | Offset of this data fragment within a larger set of fragments | Generated | -| | Access Level | Dictates RBAC | N/A | -| Content Metadata (applicable to all content types) | Type | Text, Image, Structured, Table, Chart | Generated | -| | Description | Text Description of the content object (Image/Table) | Generated | -| | Page \# | Page \# where content is contained in source | Extracted | -| | Hierarchy | Location/order of content within the source document | Extracted | -| | Subtype | For structured data subtypes \- table, chart, etc.. | | | -| Text Metadata | Text Type | Header, body, etc | Extracted | -| | Summary | Abbreviated Summary of content | Generated | Pending Research | -| | Keywords | Keywords, Named Entities, or other phrases | Extracted | N | -| | Language | | Generated | N | -| Image Metadata | Image Type | Structured, Natural,Hybrid, etc | Generated (Classifier) | Y(needs to be developed) | -| | Structured Image Type | Bar Chart, Pie Chart, etc | Generated (Classifier) | Y(needs to be developed) | -| | Caption | Any caption or subheader associated with Image | Extracted | -| | Text | Extracted text from a structured chart | Extracted | Pending Research | -| | Image location | Location (x,y) of chart within an image | Extracted | | -| | Image location max dimensions | Max dimensions (x\_max,y\_max) of location (x,y) | Extracted | | -| | uploaded\_image\_uri | Mirrors source\_metadata.source\_location | | | -| Table Metadata (tables within documents) | Table format | Structured (dataframe / lists of rows and columns), or serialized as markdown, html, latex, simple (cells separated just as spaces) | Extracted | -| | Table content | Extracted text content, formatted according to table\_metadata.table\_format. Important: Tables should not be chunked | Extracted | | -| | Table location | Bounding box of the table | Extracted | | -| | Table location max dimensions | Max dimensions (x\_max,y\_max) of bounding box of the table | Extracted | | -| | Caption | Detected captions for the table/chart | Extracted | | -| | Title | TODO | Extracted | | -| | Subtitle | TODO | Extracted | | -| | Axis | TODO | Extracted | | -| | uploaded\_image\_uri | Mirrors source\_metadata.source\_location | Generated | | - -## Example text extracts for multimodal_test.pdf: -1. [text](example_processed_docs/text/multimodal_test.pdf.metadata.json) -2. [images](example_processed_docs/image/multimodal_test.pdf.metadata.json) -3. [charts and tables](example_processed_docs/structured/multimodal_test.pdf.metadata.json) diff --git a/docs/user-guide/developer-guide/deployment.md b/docs/user-guide/developer-guide/deployment.md deleted file mode 100644 index 7d1fce9c..00000000 --- a/docs/user-guide/developer-guide/deployment.md +++ /dev/null @@ -1,39 +0,0 @@ -# NV-Ingest Deployment - -## Launch NVIDIA Microservice(s) - -```bash -# Redis is our message broker for the ingest service, always required. -docker compose up -d redis - -# `yolox`, `deplot`, `cached`, and `paddle` are NIMs used to perform table and chart extraction. -docker compose up -d yolox deplot cached paddle - -# Optional (MinIO) is an object store to store extracted images, tables, and charts, by default it is commented out in the docker compose file. -# The `store` task will not be functional without this service or external s3 compliant object store. -docker compose up -d minio - -# Optional (Milvus) is a vector database to embeddings for multi-model extractions, by default it is commented out in the docker compose file. -# The `vdb_upload` task will not be functional without this serivce or external Milvus database. -docker compose up -d etcd minio milvus attu - -# Optional (Telemetry services) -# TODO: Add examples for telemetry services -docker compose up -d otel-collector prometheus grafana zipkin - -# Optional (Embedding NIM) Stand up `nv-embedqa-e5-v5` NIM to calculate embeddings for extracted content. -# The `embed` task will not be functional without this service. -docker compose up -d embedding - -# Ingest service -docker compose up -d nv-ingest-ms-runtime -``` - -You should see something like this: - -```bash -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -6065c12d6034 .../nv-ingest:2024.6.3.dev0 "/opt/conda/bin/tini…" 6 hours ago Up 6 hours nv-ingest-ms-runtime-1 -c1f1f6b9cc8c .../tritonserver:24.05-py3 "/opt/nvidia/nvidia_…" 5 days ago Up 8 hours 0.0.0.0:8000-8002->8000-8002/tcp devin-nv-ingest-triton-1 -d277cf2c2703 redis/redis-stack "/entrypoint.sh" 2 weeks ago Up 8 hours 0.0.0.0:6379->6379/tcp, 8001/tcp devin-nv-ingest-redis-1 -``` diff --git a/docs/user-guide/developer-guide/environment-config.md b/docs/user-guide/developer-guide/environment-config.md deleted file mode 100644 index be7a40ba..00000000 --- a/docs/user-guide/developer-guide/environment-config.md +++ /dev/null @@ -1,68 +0,0 @@ -# Environment Configuration Variables - - -- **`MESSAGE_CLIENT_HOST`**: - - - **Description**: Specifies the hostname or IP address of the message broker used for communication between - services. - - **Example**: `redis`, `localhost`, `192.168.1.10` - -- **`MESSAGE_CLIENT_PORT`**: - - - **Description**: Specifies the port number on which the message broker is listening. - - **Example**: `7670`, `6379` - -- **`CAPTION_CLASSIFIER_GRPC_TRITON`**: - - - **Description**: The endpoint where the caption classifier model is hosted using gRPC for communication. This is - used to send requests for caption classification. - You must specify only **one** HTTP or gRPC endpoint. If both are specified, gRPC takes precedence. - - **Example**: `triton:8001` - -- **`CAPTION_CLASSIFIER_MODEL_NAME`**: - - - **Description**: The name of the caption classifier model. - - **Example**: `deberta_large` - -- **`REDIS_MORPHEUS_TASK_QUEUE`**: - - - **Description**: The name of the task queue in Redis where tasks are stored and processed. - - **Example**: `morpheus_task_queue` - -- **`DOUGHNUT_TRITON_HOST`**: - - - **Description**: The hostname or IP address of the DOUGHNUT model service. - - **Example**: `triton-doughnut` - -- **`DOUGHNUT_TRITON_PORT`**: - - - **Description**: The port number on which the DOUGHNUT model service is listening. - - **Example**: `8001` - -- **`OTEL_EXPORTER_OTLP_ENDPOINT`**: - - - **Description**: The endpoint for the OpenTelemetry exporter, used for sending telemetry data. - - **Example**: `http://otel-collector:4317` - -- **`NGC_API_KEY`**: - - - **Description**: An authorized NGC API key, used to interact with hosted NIMs and can be generated here: https://org.ngc.nvidia.com/setup/personal-keys. - - **Example**: `nvapi-*************` - -- **`MINIO_BUCKET`**: - - - **Description**: Name of MinIO bucket, used to store image, table, and chart extractions. - - **Example**: `nv-ingest` - -- **`INGEST_LOG_LEVEL`**: - - - **Description**: The log level for the ingest service, which controls the verbosity of the logging output. - - **Example**: `DEBUG`, `INFO`, `WARNING`, `ERROR`, `CRITICAL` - -- **`NVIDIA_BUILD_API_KEY`**: - - **Description**: This key is for when you are using the build.nvidia.com endpoint instead of a self hosted Deplot NIM. - This is necessary only in some cases when it's different from `NGC_API_KEY`. If this isn't specified, `NGC_API_KEY` will be used for bulid.nvidia.com. - -- **`NIM_NGC_API_KEY`**: - - **Description**: This key is by NIM microservices inside docker containers to access NGC resources. - This is necessary only in some cases when it's different from `NGC_API_KEY`. If this isn't specified, `NGC_API_KEY` will be used to access NGC resources. diff --git a/docs/user-guide/developer-guide/example_processed_docs/text/multimodal_test.pdf.metadata.json b/docs/user-guide/developer-guide/example_processed_docs/text/multimodal_test.pdf.metadata.json deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/user-guide/developer-guide/kubernetes-dev.md b/docs/user-guide/developer-guide/kubernetes-dev.md deleted file mode 100644 index 6bf84232..00000000 --- a/docs/user-guide/developer-guide/kubernetes-dev.md +++ /dev/null @@ -1,379 +0,0 @@ -# Developing with Kubernetes - -Developing directly on Kubernetes gives us more confidence that things will work as expected in end user deployments. - -This page describes how to use Kubernetes generally, and how to deploy nv-ingest on a local Kubernetes clusters. - -> **NOTE:** _Unless otherwise noted, all commands below should be run from the root of this repo._ - -## Kubernetes cluster - -To start you need a Kubernetes cluster. -To get started, we recommend using `kind` which creates a single Docker container with a Kubernetes cluster inside it. - -Also, because this the `kind` cluster needs access to the GPUs on your system you need to install `kind-with-gpus`. The easiest way to do this is following the instructions laid out in this GitHub repo https://github.com/klueska/kind-with-gpus-examples/tree/master - -Benefits of this: - -- allows many developers on the same system to have isolated Kubernetes clusters -- enables easy creation/deletion of clusters - -Run the following **from the root of the repo** to create a configuration file for your cluster. - -```yaml -mkdir -p ./.tmp - -cat < ./.tmp/kind-config.yaml -kind: Cluster -apiVersion: kind.x-k8s.io/v1alpha4 -name: nv-ingest-${USER} -nodes: - - role: control-plane - image: kindest/node:v1.29.2 - {{- range \$gpu := until numGPUs }} - - role: worker - extraMounts: - # We inject all NVIDIA GPUs using the nvidia-container-runtime. - # This requires 'accept-nvidia-visible-devices-as-volume-mounts = true' be set - # in '/etc/nvidia-container-runtime/config.toml' - - hostPath: /dev/null - containerPath: /var/run/nvidia-container-devices/{{ \$gpu }} - {{- end }} -EOF -``` - -Then use the `nvkind` CLI to create your cluster. - -```shell -nvkind cluster create \ - --config-template ./.tmp/kind-config.yaml -``` - -You should see output like this: - -```shell -Creating cluster "jdyer" ... - ✓ Ensuring node image (kindest/node:v1.27.11) 🖼 - ✓ Preparing nodes 📦 - ✓ Writing configuration 📜 - ✓ Starting control-plane 🕹️ - ✓ Installing CNI 🔌 - ✓ Installing StorageClass 💾 -Set kubectl context to "kind-jdyer" -You can now use your cluster with: - -kubectl cluster-info --context kind-jdyer - -Have a nice day! 👋 -``` - -You can list clusters on the system with `kind get clusters`. - -```shell -kind get clusters -# jdyer -``` - -You can also just use `docker ps` to see the kind container. - -```shell -docker ps | grep kind -# aaf5216a3cc8 kindest/node:v1.27.11 "/usr/local/bin/entr…" 44 seconds ago Up 42 seconds 127.0.0.1:45099->6443/tcp jdyer-control-plane -``` - -`kind create cluster` will do the following: - -- add a context for this cluster to `${HOME}/.kube/config`, the default config file used by tools like `kubectl` -- change the default context to that one - -You should be able to use `kubectl` immediately, and it should be pointed at that cluster you just created. - -For example, to ensure the cluster was set up successfully, try listing nodes. - -```shell -kubectl get nodes -``` - -If that worked, you should see a single node, like this: - -```text -NAME STATUS ROLES AGE VERSION -jdyer-control-plane Ready control-plane 63s v1.27.11 -``` - -Note: All of the containers created inside your Kubernetes cluster will not show up when you run `docker ps` as they are nested within a separate containerd namespace. - -For more information, refer to "debugging tools" in the "Troubleshooting" section below. - -## Skaffold - -Now that you have a Kubernetes cluster you can use `skaffold` to build and deploy your development environment. - -Skaffold does a few things for you in a single command: - -- Build containers from the current directory (via `docker build`). -- Install the retriever-ingest helm charts (via `helm install`). -- Apply additional Kubernetes manifests (via `kustomize`). -- Hot reloading - skaffold watches your local directory for changes and syncs them into the Kubernetes container. - - _for details on this, see "Hot reloading" below ([link](#hot-reloading))_ -- Port forwards the -ingest service to the host. - -### Directory structure - -- `skaffold/sensitive/` contains any secrets or manifests you want deployed to your cluster, but not checked into git, as your local cluster is unlikely to have ESO installed. If it does, feel free to use `kind: ExternalSecret` instead. -- `skaffold/components` contains any k8s manifests you want deployed in any skaffold file. The paths are relative and can be used in either `kustomize` or `rawYaml` formats: - - ```yaml - manifests: - rawYaml: - - sensitive/*.yaml - kustomize: - paths: - - components/elasticsearch - ``` - -- If adding a new service, try getting a helm object first. If none exists, you may have to encapsulate it with your k8s manifests in `skaffold/components`. We are a k8s shop, so manifest writing may be required from time to time. - -### Prerequisites - -#### Add Helm repos - -The retriever-ingest service's deployment requires pulling in configurations for other services from third-party sources, -e.g. Elasticsearch, OpenTelemetry, and Postgres. - -The first time you try to deploy this project to a local Kubernetes, you may need to tell -your local version of `Helm` (a package manager for Kubernetes configurations) where to find those -third-party things, by running something like the following. - -```shell -helm repo add \ - nvdp \ - https://nvidia.github.io/k8s-device-plugin - -helm repo add \ - zipkin \ - https://zipkin.io/zipkin-helm - -helm repo add \ - opentelemetry \ - https://open-telemetry.github.io/opentelemetry-helm-charts - -helm repo add \ - nvidia \ - https://helm.ngc.nvidia.com/nvidia - -helm repo add \ - bitnami \ - https://charts.bitnami.com/bitnami -``` - -For the full list of repositories, see the `dependencies` section in [this project's Chart.yaml](../../helm/Chart.yaml). - -#### NVIDIA GPU Support - -In order for the deployed kubernetes pods to access the NVIDIA GPU resources the [Nvidia k8s-device-plugin](https://github.com/NVIDIA/k8s-device-plugin) must be installed. There are a multitude of configurations for this plugin but for a straight forward route to start development you can simply run. - -```shell -kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v0.15.0/deployments/static/nvidia-device-plugin.yml -``` - -#### Create an image pull secret - -You'll also need to provide a Kubernetes Secret with credentials to pull NVIDIA-private Docker images. - -For short-lived development clusters, just use your own individual credentials. - -```shell -DOCKER_CONFIG_JSON=$( - cat "${HOME}/.docker/config.json" \ - | base64 -w 0 -) - -cat < ./skaffold/sensitive/imagepull.yaml -apiVersion: v1 -kind: Secret -metadata: - name: nvcrimagepullsecret -type: kubernetes.io/dockerconfigjson -data: - .dockerconfigjson: ${DOCKER_CONFIG_JSON} -EOF -``` - -An NGC personal API key is needed to access models and images hosted on NGC. -Make sure that you have followed the steps of _[Ensure you have access to NGC](./index.md#ensure-you-have-access-to-ngc)_. -Next, store the key in an environment variable: - -```shell -export NGC_API_KEY="" -``` - -Then create the secret manifest with: - -```shell -kubectl create secret generic ngcapisecrets \ - --from-literal=ngc_api_key="${NGC_API_KEY}" \ - --dry-run=client -o yaml \ - > skaffold/sensitive/ngcapi.yaml -``` - -### Deploy the Service - -Run the following to deploy the retriever-ingest to your cluster. - -```shell -skaffold dev \ - -v info \ - -f ./skaffold/nv-ingest.skaffold.yaml \ - --kube-context "kind-nv-ingest-${USER}" -``` - -
explanation of those flags (click me) - -- `-v info` = print INFO-level and above logs from `skaffold` and the tools it calls (like `helm` or `kustomize`) -- `-f ./skaffold/nv-ingest.skaffold.yaml` = use configuration specific to retriever-ingest -- `--tail=false` = don't flood your console with all the logs from the deployed containers -- `--kube-context "kind-${USER}"` = target the specific Kubernetes cluster you created with `kind` above - -
- -`skaffold dev` watches your local files and automatically redeploys the app as you change those files. -It also holds control in the terminal you run it in, and handles shutting down the pods in Kubernetes when you `Ctrl + C` out of it. - -You should see output similar to this: - -```shell -Generating tags... - - ... -Checking cache... - - ... -Tags used in deployment: - - ... -Starting deploy... -Loading images into kind cluster nodes... - - ... -Waiting for deployments to stabilize... -Deployments stabilized in 23.08 seconds -Watching for changes... -``` - -When you run this command, `skaffold dev` finds a random open port on the system and exposes the retriever-ingest service on that port ([skaffold docs](https://skaffold.dev/docs/port-forwarding/)). - -You can find that port in `skaffold`'s logs, in a statement like this: - -```bash -Port forwarding Service/nv-ingest in namespace , remote port http -> http://0.0.0.0:4503 -``` - -Alternatively, you can obtain it like this: - -```shell -NV_INGEST_MS_PORT=$( - ps aux \ - | grep -E "kind\-${USER} port-forward .*Service/nv-ingest" \ - | grep -o -E '[0-9]+:http' \ - | cut -d ':' -f1 -) -``` - -To confirm that the service is deployed and working, issue a request against the port you set up port-forwarding to above. - -```shell -API_HOST="http://localhost:${NV_INGEST_MS_PORT}" - -curl \ - -i \ - -X GET \ - "${API_HOST}/health" -``` - -Additionally, running `skaffold verify` in a new terminal will run verification tests against the service (i.e. [integration tests](https://skaffold.dev/docs/verify/)). These are very lightweight health checks, and should not be confused with actual integration tests. - -## Clean Up - -To destroy the entire Kubernetes cluster, run the following. - -```shell -kind delete cluster \ - --name "${USER}" -``` - -## Troubleshooting - -### Debugging Tools - -`kubectl` is the official CLI for Kubernetes, and supports a lot of useful functionality. - -For example, to get a shell inside the `nv-ingest-ms-runtime` container in your deployment, run the following: - -```shell -NV_INGEST_POD=$( - kubectl get pods \ - --context "kind-${USER}" \ - --namespace default \ - -l 'app.kubernetes.io/instance=nv-ingest-ms-runtime' \ - --no-headers \ - | awk '{print $1}' -) -kubectl exec \ - --context "kind-${USER}" \ - --namespace default \ - pod/${NV_INGEST_POD} \ - -i \ - -t \ - -- sh -``` - -For an interactive, live-updating experience, try `k9s`. -To launch it, just run `k9s`. - -```shell -k9s -``` - -You should see something like the following. - -![k9s example](./media/k9s-example.png){width=80%} - -For details on how to use it, see https://k9scli.io/topics/commands/. - -### Installing Helm Repositories - -You may encounter an error like this: - -> _Error: no repository definition for https://helm.dask.org. Please add the missing repos via 'helm repo add'_ - -That indicates that your local installation of `Helm` (sort of a package manager for Kubernetes configurations) doesn't know -how to access a remote repository containing Kubernetes configurations. - -As that error message says, run `help repo add` with that URL and an informative name. - -```shell -helm repo add \ - bitnami \ - https://charts.bitnami.com/bitnami -``` - -### Getting more logs from `skaffold` - -You may encounter an error like this: - -```shell -Generating tags... - - retrieval-ms -> retrieval-ms:f181a78-dirty -Checking cache... - - retrieval-ms: Found Locally -Cleaning up... - - No resources found -building helm dependencies: exit status 1 -``` - -Seeing only "building helm dependencies" likely means you ran `skaffold dev` or `skaffold run` in a fairly quiet mode. - -Re-run those commands with something like `-v info` or `-v debug` to get more information about what specifically failed. - -## References - -- Helm quickstart: https://helm.sh/docs/intro/quickstart/ -- `kind` docs: https://kind.sigs.k8s.io/ -- `skaffold` docs: https://skaffold.dev/docs/ diff --git a/docs/user-guide/developer-guide/ngc-api-key.md b/docs/user-guide/developer-guide/ngc-api-key.md deleted file mode 100644 index d4539441..00000000 --- a/docs/user-guide/developer-guide/ngc-api-key.md +++ /dev/null @@ -1,25 +0,0 @@ -# Authenticating Local Docker with NGC - -## Generate an API key - -NGC contains many public images, models, and datasets which can be pulled immediately without authentication. -To push and pull custom images to/from the private registry you will need to authenticate with NGC and generate a private key. - -To create a private key, go to https://org.ngc.nvidia.com/setup/personal-keys. - -When creating an NGC API key, ensure that all of the following are selected from the *Services Included* drop-down. -- AI Foundation Models and Endpoints -- NGC Catalog -- Private Registry - -![Generate Personal Key](.assets/images/generate_personal_key.png) - -#### Docker Login to NGC - -To pull the NIM container image from NGC, use your API key to log in to the NGC registry by entering the following command and following the prompts: -```shell -$ docker login nvcr.io -Username: $oauthtoken -Password: -``` -For the username, enter '$oauthtoken' exactly as shown. It is a special authentication key for all users. diff --git a/docs/user-guide/developer-guide/nv-ingest_cli.md b/docs/user-guide/developer-guide/nv-ingest_cli.md deleted file mode 100644 index 6bdc2663..00000000 --- a/docs/user-guide/developer-guide/nv-ingest_cli.md +++ /dev/null @@ -1,243 +0,0 @@ -# NV-Ingest Command Line (CLI) - -After installing the Python dependencies, you'll be able to use the nv-ingest-cli tool. - -```bash -nv-ingest-cli --help -Usage: nv-ingest-cli [OPTIONS] - -Options: - --batch_size INTEGER Batch size (must be >= 1). [default: 10] - --doc PATH Add a new document to be processed (supports - multiple). - --dataset PATH Path to a dataset definition file. - --client [REST|REDIS|KAFKA] Client type. [default: REDIS] - --client_host TEXT DNS name or URL for the endpoint. - --client_port INTEGER Port for the client endpoint. - --client_kwargs TEXT Additional arguments to pass to the client. - --concurrency_n INTEGER Number of inflight jobs to maintain at one - time. [default: 10] - --document_processing_timeout INTEGER - Timeout when waiting for a document to be - processed. [default: 10] - --dry_run Perform a dry run without executing actions. - --output_directory PATH Output directory for results. - --log_level [DEBUG|INFO|WARNING|ERROR|CRITICAL] - Log level. [default: INFO] - --shuffle_dataset Shuffle the dataset before processing. - [default: True] - --task TEXT Task definitions in JSON format, allowing multiple tasks to be configured by repeating this option. - Each task must be specified with its type and corresponding options in the '[task_id]:{json_options}' format. - - Example: - --task 'split:{"split_by":"page", "split_length":10}' - --task 'extract:{"document_type":"pdf", "extract_text":true}' - --task 'extract:{"document_type":"pdf", "extract_method":"doughnut"}' - --task 'extract:{"document_type":"pdf", "extract_method":"unstructured_io"}' - --task 'extract:{"document_type":"docx", "extract_text":true, "extract_images":true}' - --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000"}' - --task 'store:{"content_type":"image", "store_method":"minio", "endpoint":"minio:9000", "text_depth": "page"}' - --task 'caption:{}' - - Tasks and Options: - - split: Divides documents according to specified criteria. - Options: - - split_by (str): Criteria ('page', 'size', 'word', 'sentence'). No default. - - split_length (int): Segment length. No default. - - split_overlap (int): Segment overlap. No default. - - max_character_length (int): Maximum segment character count. No default. - - sentence_window_size (int): Sentence window size. No default. - - - extract: Extracts content from documents, customizable per document type. - Can be specified multiple times for different 'document_type' values. - Options: - - document_type (str): Document format ('pdf', 'docx', 'pptx', 'html', 'xml', 'excel', 'csv', 'parquet'). Required. - - text_depth (str): Depth at which text parsing occurs ('document', 'page'), additional text_depths are partially supported and depend on the specified extraction method ('block', 'line', 'span') - - extract_method (str): Extraction technique. Defaults are smartly chosen based on 'document_type'. - - extract_text (bool): Enables text extraction. Default: False. - - extract_images (bool): Enables image extraction. Default: False. - - extract_tables (bool): Enables table extraction. Default: False. - - - store: Stores any images extracted from documents. - Options: - - structured (bool): Flag to write extracted charts and tables to object store. Default: True. - - images (bool): Flag to write extracted images to object store. Default: False. - - store_method (str): Storage type ('minio', ). Required. - - - caption: Attempts to extract captions for images extracted from documents. Note: this is not generative, but rather a - simple extraction. - Options: - N/A - - - dedup: Idenfities and optionally filters duplicate images in extraction. - Options: - - content_type (str): Content type to deduplicate ('image') - - filter (bool): When set to True, duplicates will be filtered, otherwise, an info message will be added. - - - filter: Idenfities and optionally filters images above or below scale thresholds. - Options: - - content_type (str): Content type to deduplicate ('image') - - min_size: (Union[float, int]): Minimum allowable size of extracted image. - - max_aspect_ratio: (Union[float, int]): Maximum allowable aspect ratio of extracted image. - - min_aspect_ratio: (Union[float, int]): Minimum allowable aspect ratio of extracted image. - - filter (bool): When set to True, duplicates will be filtered, otherwise, an info message will be added. - - Note: The 'extract_method' automatically selects the optimal method based on 'document_type' if not explicitly stated. - --version Show version. - --help Show this message and exit. - -``` - -## Example document submission to the nv-ingest-ms-runtime service - -Each of the following can be run from the host machine or from within the nv-ingest-ms-runtime container. - -- Host: `nv-ingest-cli ...` -- Container: `nv-ingest-cli ...` - -Submit a text file, with no splitting. - -**Note:** You will receive a response containing a single document, which is the entire text file -- This is mostly -a NO-OP, but the returned data will be wrapped in the appropriate metadata structure. - -```bash -nv-ingest-cli \ - --doc ./data/test.pdf \ - --client_host=localhost \ - --client_port=7670 -``` - -Submit a PDF file with only a splitting task. - -```bash -nv-ingest-cli \ - --doc ./data/test.pdf \ - --output_directory ./processed_docs \ - --task='split' \ - --client_host=localhost \ - --client_port=7670 -``` - -Submit a PDF file with splitting and extraction tasks. - -**Note: (TODO)** This currently only works for pdfium, doughnut, and Unstructured.io; haystack, Adobe, and LlamaParse -have existing workflows but have not been fully converted to use our unified metadata schema. - -```bash -nv-ingest-cli \ - --doc ./data/test.pdf \ - --output_directory ./processed_docs \ - --task='extract:{"document_type": "pdf", "extract_method": "pdfium"}' \ - --task='extract:{"document_type": "docx", "extract_method": "python_docx"}' \ - --task='split' \ - --client_host=localhost \ - --client_port=7670 - -``` - -Submit a [dataset](#command-line-dataset-creation-with-enumeration-and-sampling) for processing - -```shell -nv-ingest-cli \ - --dataset dataset.json \ - --output_directory ./processed_docs \ - --task='extract:{"document_type": "pdf", "extract_method": "pdfium"}' \ - --client_host=localhost \ - --client_port=7670 - -``` - -Submit a PDF file with extraction tasks and upload extracted images to MinIO. - -```bash -nv-ingest-cli \ - --doc ./data/test.pdf \ - --output_directory ./processed_docs \ - --task='extract:{"document_type": "pdf", "extract_method": "pdfium"}' \ - --task='store:{"endpoint":"minio:9000","access_key":"minioadmin","secret_key":"minioadmin"}' \ - --client_host=localhost \ - --client_port=7670 - -``` - -## Command line dataset creation with enumeration and sampling - -### gen_dataset.py - -```shell -python ./src/util/gen_dataset.py --source_directory=./data --size=1GB --sample pdf=60 --sample txt=40 --output_file \ - dataset.json --validate-output -``` - -This script samples files from a specified source directory according to defined proportions and a total size target. It -offers options for caching the file list, outputting a sampled file list, and validating the output. - -## Options - -- `--source_directory`: Specifies the path to the source directory where files will be scanned for sampling. - - - **Type**: String - - **Required**: Yes - - **Example**: `--source_directory ./data` - -- `--size`: Defines the total size of files to sample. You can use suffixes (KB, MB, GB). - - - **Type**: String - - **Required**: Yes - - **Example**: `--size 500MB` - -- `--sample`: Specifies file types and their proportions of the total size. Can be used multiple times for different - file types. - - - **Type**: String - - **Required**: No - - **Multiple**: Yes - - **Example**: `--sample pdf=40 --sample txt=60` - -- `--cache_file`: If provided, caches the scanned file list as JSON at this path. - - - **Type**: String - - **Required**: No - - **Example**: `--cache_file ./file_list_cache.json` - -- `--output_file`: If provided, outputs the list of sampled files as JSON at this path. - - - **Type**: String - - **Required**: No - - **Example**: `--output_file ./sampled_files.json` - -- `--validate-output`: If set, the script re-validates the `output_file` JSON and logs total bytes for each file type. - - - **Type**: Flag - - **Required**: No - -- `--log-level`: Sets the logging level ('DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'). Default is 'INFO'. - - - **Type**: Choice - - **Required**: No - - **Example**: `--log-level DEBUG` - -- `--with-replacement`: Sample with replacement. Files can be selected multiple times. - - **Type**: Flag - - **Default**: True (if omitted, sampling will be with replacement) - - **Usage Example**: `--with-replacement` to enable sampling with replacement or omit for default behavior. - Use `--no-with-replacement` to disable it and sample without replacement. - -The script performs a sampling process that respects the specified size and type proportions, generates a detailed file -list, and provides options for caching and validation to facilitate efficient data handling and integrity checking. - -## Command line interface for the Image Viewer application, displays paginated images from a JSON file - -viewer. Each image is resized for uniform display, and users can navigate through the images using "Next" and "Previous" -buttons. - -### image_viewer.py - -- `--file_path`: Specifies the path to the JSON file containing the images. The JSON file should contain a list of - objects, each with an `"image"` field that includes a base64 encoded string of the image data. - - **Type**: String - - **Required**: Yes - - **Example Usage**: - ``` - --file_path "/path/to/your/images.json" - ``` diff --git a/docs/user-guide/developer-guide/telemetry.md b/docs/user-guide/developer-guide/telemetry.md deleted file mode 100644 index 58b1e0f5..00000000 --- a/docs/user-guide/developer-guide/telemetry.md +++ /dev/null @@ -1,23 +0,0 @@ -# Telemetry - -## Docker Compose - -To run OpenTelemetry locally, run: - -```shell -$ docker compose up otel-collector -``` - -Once and OpenTelemetry and Zipkin are running, you can open your browser to explore traces: http://$YOUR_DOCKER_HOST:9411/zipkin/. - -![](images/zipkin.png) - -To run Prometheus, run: - -```shell -$ docker compose up prometheus -``` - -Once Promethus is running, you can open your browser to explore metrics: [http://$YOUR_DOCKER_HOST:9090/] - -![](images/prometheus.png) diff --git a/docs/user-guide/getting-started/SUMMARY.md b/docs/user-guide/getting-started/SUMMARY.md deleted file mode 100644 index 3d2e32f4..00000000 --- a/docs/user-guide/getting-started/SUMMARY.md +++ /dev/null @@ -1,2 +0,0 @@ -- [Hardware and Software Prerequisites](prerequisites.md) -- [Quickstart Guide](quickstart-guide.md) diff --git a/docs/user-guide/getting-started/prerequisites.md b/docs/user-guide/getting-started/prerequisites.md deleted file mode 100644 index d5356925..00000000 --- a/docs/user-guide/getting-started/prerequisites.md +++ /dev/null @@ -1,18 +0,0 @@ -# Prerequisites - -Before you begin using NVIDIA-Ingest, ensure the following hardware and software prerequisites outlined are met. - -## Hardware - -| GPU | Family | Memory | # of GPUs (min.) | -| ------ | ------ | ------ | ------ | -| H100 | SXM or PCIe | 80GB | 2 | -| A100 | SXM or PCIe | 80GB | 2 | - -## Software - -- Linux operating systems (Ubuntu 22.04 or later recommended) -- [Docker](https://docs.docker.com/engine/install/) -- [Docker Compose](https://docs.docker.com/compose/install/) -- [CUDA Toolkit](https://developer.nvidia.com/cuda-downloads) (NVIDIA Driver >= `535`, CUDA >= `12.2`) -- [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html) diff --git a/docs/user-guide/getting-started/quickstart-guide.md b/docs/user-guide/getting-started/quickstart-guide.md deleted file mode 100644 index f27e22c4..00000000 --- a/docs/user-guide/getting-started/quickstart-guide.md +++ /dev/null @@ -1,361 +0,0 @@ -# Quickstart Guide - -To get started using NVIDIA Ingest, you need to do a few things: -1. [Start supporting NIM microservices](#step-1-starting-containers) 🏗️ -2. [Install the NVIDIA Ingest client dependencies in a Python environment](#step-2-installing-python-dependencies) 🐍 -3. [Submit ingestion job(s)](#step-3-ingesting-documents) 📓 -4. [Inspect and consume results](#step-4-inspecting-and-consuming-results) 🔍 - -## Step 1: Starting Containers - -This example demonstrates how to use the provided [docker-compose.yaml](docker-compose.yaml) to start all needed services with a few commands. - -**IMPORTANT:** NIM containers on their first startup can take 10-15 minutes to pull and fully load models. - -If preferred, you can also [start services one by one](docs/deployment.md), or run on Kubernetes via [our Helm chart](helm/README.md). Also of note are [additional environment variables](docs/environment-config.md) you may wish to configure. - -1. Git clone the repo: -`git clone https://github.com/nvidia/nv-ingest` -2. Change directory to the cloned repo -`cd nv-ingest`. - -3. [Generate API keys](docs/ngc-api-key.md) and authenticate with NGC with the `docker login` command: -```shell -# This is required to access pre-built containers and NIM microservices -$ docker login nvcr.io -Username: $oauthtoken -Password: -``` - -> **NOTE:** During the early access (EA) phase, your API key must be created as a member of `nemo-microservice / ea-participants` which you may join by applying for early access here: https://developer.nvidia.com/nemo-microservices-early-access/join. When approved, switch your profile to this org / team, then the key you generate will have access to the resources outlined below. - -4. Create a .env file containing your NGC API key, and the following paths: -``` -# Container images must access resources from NGC. -NGC_API_KEY=... -DATASET_ROOT=/data -NV_INGEST_ROOT= -``` - -> **NOTE:** As configured by default in [docker-compose.yaml](docker-compose.yaml#L52), the DePlot NIM is on a dedicated GPU. All other NIMs and the nv-ingest container itself share a second. This is to avoid DePlot and other NIMs competing for VRAM on the same device. - -> Change the `CUDA_VISIBLE_DEVICES` pinnings as desired for your system within docker-compose.yaml. - -> **IMPORTANT:** Make sure NVIDIA is set as your default container runtime before running the docker compose command with the command: - -> `sudo nvidia-ctk runtime configure --runtime=docker --set-as-default` - -5. Start all services: -`docker compose up` - -> **TIP:** By default we have [configured log levels to be verbose](docker-compose.yaml#L27). -> -> It's possible to observe service startup proceeding: you will notice _many_ log messages. Disable verbose logging by configuring `NIM_TRITON_LOG_VERBOSE=0` for each NIM in [docker-compose.yaml](docker-compose.yaml). - -6. When all services have fully started, `nvidia-smi` should show processes like the following: -``` -# If it's taking > 1m for `nvidia-smi` to return, it's likely the bus is still busy setting up the models. -+---------------------------------------------------------------------------------------+ -| Processes: | -| GPU GI CI PID Type Process name GPU Memory | -| ID ID Usage | -|=======================================================================================| -| 0 N/A N/A 1352957 C tritonserver 762MiB | -| 1 N/A N/A 1322081 C /opt/nim/llm/.venv/bin/python3 63916MiB | -| 2 N/A N/A 1355175 C tritonserver 478MiB | -| 2 N/A N/A 1367569 C ...s/python/triton_python_backend_stub 12MiB | -| 3 N/A N/A 1321841 C python 414MiB | -| 3 N/A N/A 1352331 C tritonserver 478MiB | -| 3 N/A N/A 1355929 C ...s/python/triton_python_backend_stub 424MiB | -| 3 N/A N/A 1373202 C tritonserver 414MiB | -+---------------------------------------------------------------------------------------+ -``` - -Observe the started containers with `docker ps`: -``` -CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -0f2f86615ea5 nvcr.io/ohlfw0olaadg/ea-participants/nv-ingest:24.10 "/opt/conda/bin/tini…" 35 seconds ago Up 33 seconds 0.0.0.0:7670->7670/tcp, :::7670->7670/tcp nv-ingest-nv-ingest-ms-runtime-1 -de44122c6ddc otel/opentelemetry-collector-contrib:0.91.0 "/otelcol-contrib --…" 14 hours ago Up 24 seconds 0.0.0.0:4317-4318->4317-4318/tcp, :::4317-4318->4317-4318/tcp, 0.0.0.0:8888-8889->8888-8889/tcp, :::8888-8889->8888-8889/tcp, 0.0.0.0:13133->13133/tcp, :::13133->13133/tcp, 55678/tcp, 0.0.0.0:32849->9411/tcp, :::32848->9411/tcp, 0.0.0.0:55680->55679/tcp, :::55680->55679/tcp nv-ingest-otel-collector-1 -02c9ab8c6901 nvcr.io/ohlfw0olaadg/ea-participants/cached:0.2.0 "/opt/nvidia/nvidia_…" 14 hours ago Up 24 seconds 0.0.0.0:8006->8000/tcp, :::8006->8000/tcp, 0.0.0.0:8007->8001/tcp, :::8007->8001/tcp, 0.0.0.0:8008->8002/tcp, :::8008->8002/tcp nv-ingest-cached-1 -d49369334398 nvcr.io/nim/nvidia/nv-embedqa-e5-v5:1.1.0 "/opt/nvidia/nvidia_…" 14 hours ago Up 33 seconds 0.0.0.0:8012->8000/tcp, :::8012->8000/tcp, 0.0.0.0:8013->8001/tcp, :::8013->8001/tcp, 0.0.0.0:8014->8002/tcp, :::8014->8002/tcp nv-ingest-embedding-1 -508715a24998 nvcr.io/ohlfw0olaadg/ea-participants/nv-yolox-structured-images-v1:0.2.0 "/opt/nvidia/nvidia_…" 14 hours ago Up 33 seconds 0.0.0.0:8000-8002->8000-8002/tcp, :::8000-8002->8000-8002/tcp nv-ingest-yolox-1 -5b7a174a0a85 nvcr.io/ohlfw0olaadg/ea-participants/deplot:1.0.0 "/opt/nvidia/nvidia_…" 14 hours ago Up 33 seconds 0.0.0.0:8003->8000/tcp, :::8003->8000/tcp, 0.0.0.0:8004->8001/tcp, :::8004->8001/tcp, 0.0.0.0:8005->8002/tcp, :::8005->8002/tcp nv-ingest-deplot-1 -430045f98c02 nvcr.io/ohlfw0olaadg/ea-participants/paddleocr:0.2.0 "/opt/nvidia/nvidia_…" 14 hours ago Up 24 seconds 0.0.0.0:8009->8000/tcp, :::8009->8000/tcp, 0.0.0.0:8010->8001/tcp, :::8010->8001/tcp, 0.0.0.0:8011->8002/tcp, :::8011->8002/tcp nv-ingest-paddle-1 -8e587b45821b grafana/grafana "/run.sh" 14 hours ago Up 33 seconds 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp grafana-service -aa2c0ec387e2 redis/redis-stack "/entrypoint.sh" 14 hours ago Up 33 seconds 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp, 8001/tcp nv-ingest-redis-1 -bda9a2a9c8b5 openzipkin/zipkin "start-zipkin" 14 hours ago Up 33 seconds (healthy) 9410/tcp, 0.0.0.0:9411->9411/tcp, :::9411->9411/tcp nv-ingest-zipkin-1 -ac27e5297d57 prom/prometheus:latest "/bin/prometheus --w…" 14 hours ago Up 33 seconds 0.0.0.0:9090->9090/tcp, :::9090->9090/tcp nv-ingest-prometheus-1 -``` - -> **TIP:** NV-Ingest is in early access (EA) mode, meaning the codebase gets frequent updates. To build an updated nv-ingest service container with the latest changes you can: -> ``` -> docker compose build -> ``` -> After the image is built, run `docker compose up` per item 5 above. - -## Step 2: Installing Python Dependencies - -To interact with the nv-ingest service, you can do so from the host or by `docker exec`-ing into the nv-ingest container. - -To interact from the host, you'll need a Python environment and install the client dependencies: -``` -# conda not required, but makes it easy to create a fresh python environment -conda create --name nv-ingest-dev python=3.10 -conda activate nv-ingest-dev -cd client -pip install -r ./requirements.txt -pip install . -``` - -> **NOTE:** Interacting from the host depends on the appropriate port being exposed from the nv-ingest container to the host as defined in [docker-compose.yaml](docker-compose.yaml#L141). -> -> If you prefer, you can disable exposing that port, and interact with the nv-ingest service directly from within its container. -> -> To interact within the container: -> ``` -> docker exec -it nv-ingest-nv-ingest-ms-runtime-1 bash -> ``` -> You'll be in the `/workspace` directory, which has `DATASET_ROOT` from the .env file mounted at `./data`. The pre-activated `morpheus` conda environment has all the python client libraries pre-installed: -> ``` -> (morpheus) root@aba77e2a4bde:/workspace# -> ``` -> -> From the bash prompt above, you can run nv-ingest-cli and Python examples described below. - -## Step 3: Ingesting Documents - -You can submit jobs programmatically in Python or via the nv-ingest-cli tool. - -In the below examples, we are doing text, chart, table, and image extraction: -- `extract_text`, - uses [PDFium](https://github.com/pypdfium2-team/pypdfium2/) to find and extract text from pages -- `extract_images` - uses [PDFium](https://github.com/pypdfium2-team/pypdfium2/) to extract images -- `extract_tables` - uses [YOLOX](https://github.com/Megvii-BaseDetection/YOLOX) to find tables and charts. Uses [PaddleOCR](https://github.com/PaddlePaddle/PaddleOCR) for table extraction, and [Deplot](https://huggingface.co/google/deplot) and CACHED for chart extraction -- `extract_charts` - (optional) enables or disables the use of Deplot and CACHED for chart extraction. - -> **IMPORTANT:** `extract_tables` controls extraction for both tables and charts. You can optionally disable chart extraction by setting `extract_charts` to false. - -### In Python - -You can find more documentation and examples [here](./client/client_examples/examples/python_client_usage.ipynb): - -```python -import logging, time - -from nv_ingest_client.client import NvIngestClient -from nv_ingest_client.primitives import JobSpec -from nv_ingest_client.primitives.tasks import ExtractTask -from nv_ingest_client.util.file_processing.extract import extract_file_content - -logger = logging.getLogger("nv_ingest_client") - -file_name = "data/multimodal_test.pdf" -file_content, file_type = extract_file_content(file_name) - -# A JobSpec is an object that defines a document and how it should -# be processed by the nv-ingest service. -job_spec = JobSpec( - document_type=file_type, - payload=file_content, - source_id=file_name, - source_name=file_name, - extended_options= - { - "tracing_options": - { - "trace": True, - "ts_send": time.time_ns() - } - } -) - -# configure desired extraction modes here. Multiple extraction -# methods can be defined for a single JobSpec -extract_task = ExtractTask( - document_type=file_type, - extract_text=True, - extract_images=True, - extract_tables=True -) - -job_spec.add_task(extract_task) - -# Create the client and inform it about the JobSpec we want to process. -client = NvIngestClient( - message_client_hostname="localhost", # Host where nv-ingest-ms-runtime is running - message_client_port=7670 # REST port, defaults to 7670 -) -job_id = client.add_job(job_spec) -client.submit_job(job_id, "morpheus_task_queue") -result = client.fetch_job_result(job_id, timeout=60) -print(f"Got {len(result)} results") -``` - -### Using the `nv-ingest-cli` - -You can find more nv-ingest-cli examples [here](./client/client_examples/examples/cli_client_usage.ipynb): - -```shell -nv-ingest-cli \ - --doc ./data/multimodal_test.pdf \ - --output_directory ./processed_docs \ - --task='extract:{"document_type": "pdf", "extract_method": "pdfium", "extract_tables": "true", "extract_images": "true"}' \ - --client_host=localhost \ - --client_port=7670 -``` - -You should notice output indicating document processing status, followed by a breakdown of time spent during job execution: -``` -INFO:nv_ingest_client.nv_ingest_cli:Processing 1 documents. -INFO:nv_ingest_client.nv_ingest_cli:Output will be written to: ./processed_docs -Processing files: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:10<00:00, 10.47s/file, pages_per_sec=0.29] -INFO:nv_ingest_client.cli.util.processing:dedup_images: Avg: 1.02 ms, Median: 1.02 ms, Total Time: 1.02 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:dedup_images_channel_in: Avg: 1.44 ms, Median: 1.44 ms, Total Time: 1.44 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:docx_content_extractor: Avg: 0.66 ms, Median: 0.66 ms, Total Time: 0.66 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:docx_content_extractor_channel_in: Avg: 1.09 ms, Median: 1.09 ms, Total Time: 1.09 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:filter_images: Avg: 0.84 ms, Median: 0.84 ms, Total Time: 0.84 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:filter_images_channel_in: Avg: 7.75 ms, Median: 7.75 ms, Total Time: 7.75 ms, Total % of Trace Computation: 0.07% -INFO:nv_ingest_client.cli.util.processing:job_counter: Avg: 2.13 ms, Median: 2.13 ms, Total Time: 2.13 ms, Total % of Trace Computation: 0.02% -INFO:nv_ingest_client.cli.util.processing:job_counter_channel_in: Avg: 2.05 ms, Median: 2.05 ms, Total Time: 2.05 ms, Total % of Trace Computation: 0.02% -INFO:nv_ingest_client.cli.util.processing:metadata_injection: Avg: 14.48 ms, Median: 14.48 ms, Total Time: 14.48 ms, Total % of Trace Computation: 0.14% -INFO:nv_ingest_client.cli.util.processing:metadata_injection_channel_in: Avg: 0.22 ms, Median: 0.22 ms, Total Time: 0.22 ms, Total % of Trace Computation: 0.00% -INFO:nv_ingest_client.cli.util.processing:pdf_content_extractor: Avg: 10332.97 ms, Median: 10332.97 ms, Total Time: 10332.97 ms, Total % of Trace Computation: 99.45% -INFO:nv_ingest_client.cli.util.processing:pdf_content_extractor_channel_in: Avg: 0.44 ms, Median: 0.44 ms, Total Time: 0.44 ms, Total % of Trace Computation: 0.00% -INFO:nv_ingest_client.cli.util.processing:pptx_content_extractor: Avg: 1.19 ms, Median: 1.19 ms, Total Time: 1.19 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:pptx_content_extractor_channel_in: Avg: 0.98 ms, Median: 0.98 ms, Total Time: 0.98 ms, Total % of Trace Computation: 0.01% -INFO:nv_ingest_client.cli.util.processing:redis_source_network_in: Avg: 12.27 ms, Median: 12.27 ms, Total Time: 12.27 ms, Total % of Trace Computation: 0.12% -INFO:nv_ingest_client.cli.util.processing:redis_task_sink_channel_in: Avg: 2.16 ms, Median: 2.16 ms, Total Time: 2.16 ms, Total % of Trace Computation: 0.02% -INFO:nv_ingest_client.cli.util.processing:redis_task_source: Avg: 8.00 ms, Median: 8.00 ms, Total Time: 8.00 ms, Total % of Trace Computation: 0.08% -INFO:nv_ingest_client.cli.util.processing:Unresolved time: 82.82 ms, Percent of Total Elapsed: 0.79% -INFO:nv_ingest_client.cli.util.processing:Processed 1 files in 10.47 seconds. -INFO:nv_ingest_client.cli.util.processing:Total pages processed: 3 -INFO:nv_ingest_client.cli.util.processing:Throughput (Pages/sec): 0.29 -INFO:nv_ingest_client.cli.util.processing:Throughput (Files/sec): 0.10 -``` - -## Step 4: Inspecting and Consuming Results - -After the ingestion steps above have completed, you should be able to find `text` and `image` subfolders inside your processed docs folder. Each will contain JSON formatted extracted content and metadata. - -When processing has completed, you'll have separate result files for text and image data: -```shell -ls -R processed_docs/ -``` -```shell -processed_docs/: -image structured text - -processed_docs/image: -multimodal_test.pdf.metadata.json - -processed_docs/structured: -multimodal_test.pdf.metadata.json - -processed_docs/text: -multimodal_test.pdf.metadata.json -``` -You can view the full JSON extracts and the metadata definitions [here](docs/content-metadata.md). - -We also provide a script for inspecting [extracted images](src/util/image_viewer.py) - -First, install `tkinter` by running the following commands depending on your OS. -- For Ubuntu/Debian Linux: -```shell -sudo apt-get update -sudo apt-get install python3-tk -``` -- For Fedora/RHEL Linux: -```shell -sudo dnf install python3-tkinter -``` -- For macOS using Homebrew: -```shell -brew install python-tk -``` -Then run the following command to execute the script for inspecting the extracted image: -```shell -python src/util/image_viewer.py --file_path ./processed_docs/image/multimodal_test.pdf.metadata.json -``` - -> **TIP:** Beyond inspecting the results, you can read them into things like [llama-index](examples/llama_index_multimodal_rag.ipynb) or [langchain](examples/langchain_multimodal_rag.ipynb) retrieval pipelines. -> -> Also checkout our [demo using a retrieval pipeline on build.nvidia.com](https://build.nvidia.com/nvidia/multimodal-pdf-data-extraction-for-enterprise-rag) to query over document content pre-extracted with NV-Ingest. - -## Repo Structure - -Beyond the relevant documentation, examples, and other links above, below is a description of contents in this repo's folders: - -1. [.github](.github): GitHub repo configuration files -2. [ci](ci): scripts used to build the nv-ingest container and other packages -3. [client](client): docs and source code for the nv-ingest-cli utility -4. [config](config): various yaml files defining configuration for OTEL, Prometheus -5. [data](data): Sample PDFs provided for testing convenience -6. [docker](docker): houses scripts used by the nv-ingest docker container -7. [docs](docs): Various READMEs describing deployment, metadata schemas, auth and telemetry setup -8. [examples](examples): Example notebooks, scripts, and longer form tutorial content -9. [helm](helm): Documentation for deploying nv-ingest to a Kubernetes cluster via Helm chart -10. [skaffold](skaffold): Skaffold configuration -11. [src](src): source code for the nv-ingest pipelines and service -12. [tests](tests): unit tests for nv-ingest - -## Notices - -### Third Party License Notice: - -If configured to do so, this project will download and install additional third-party open source software projects. -Review the license terms of these open source projects before use: - -https://pypi.org/project/pdfservices-sdk/ - -- **`INSTALL_ADOBE_SDK`**: - - **Description**: If set to `true`, the Adobe SDK will be installed in the container at launch time. This is - required if you want to use the Adobe extraction service for PDF decomposition. Please review the - [license agreement](https://github.com/adobe/pdfservices-python-sdk?tab=License-1-ov-file) for the - pdfservices-sdk before enabling this option. - - -### Contributing - -We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original -work, or you have rights to submit it under the same license, or a compatible license. - -Any contribution which contains commits that aren't Signed-Off won't be accepted. - -To sign off on a commit you simply use the --signoff (or -s) option when committing your changes: - -``` -$ git commit -s -m "Add cool feature." -``` - -This appends the following to your commit message: - -``` -Signed-off-by: Your Name -``` - -#### Full text of the DCO: - -``` - Developer Certificate of Origin - Version 1.1 - - Copyright (C) 2004, 2006 The Linux Foundation and its contributors. - 1 Letterman Drive - Suite D4700 - San Francisco, CA, 94129 - - Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. -``` - -``` - Developer's Certificate of Origin 1.1 - - By making a contribution to this project, I certify that: - - (a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or - - (b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or - - (c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it. - - (d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -``` diff --git a/docs/user-guide/index.md b/docs/user-guide/index.md deleted file mode 100644 index 1e2bf5ac..00000000 --- a/docs/user-guide/index.md +++ /dev/null @@ -1,23 +0,0 @@ -# What is NV-Ingest? - -NV-Ingest is a scalable, performance-oriented document content and metadata extraction microservice. NV-Ingest uses specialized NVIDIA NIM microservices to find, contextualize, and extract text, tables, charts and images for use in downstream generative applications. - -NV-Ingest also enables parallelization of the process of splitting documents into pages where contents are classified (such as tables, charts, images, text), extracted into discrete content, and further contextualized through optical character recognition (OCR) into a well defined JSON schema. From there, NVIDIA Ingest can optionally manage computation of embeddings for the extracted content, and optionally manage storing into a vector database [Milvus](https://milvus.io/). - - -## What NV-Ingest Does ✔️ - -NV-Ingest is a microservice service that: - -- Accepts a JSON Job description, containing a document payload, and a set of ingestion tasks to perform on that payload. -- Allows the results of a Job to be retrieved; the result is a JSON dictionary containing a list of Metadata describing objects extracted from the base document, and processing annotations and timing/trace data. -- Supports .pdf, .docx, .pptx, and images. -- Supports multiple methods of extraction for each document type to balance trade-offs between throughput and accuracy. For example, for PDF documents, we support extraction through pdfium, Unstructured.io, and Adobe Content Extraction Services. -- Supports various types of pre and post processing operations, including text splitting and chunking, transform and filtering, embedding generation, and image offloading to storage. - -## What NV-Ingest Doesn't ✖️ - -NV-Ingest isn't a service that: - -- Runs a static pipeline or fixed set of operations on every submitted document. -- Acts as a wrapper for any specific document parsing library. From 1aa002c8c37ac55577211417e92f13b20c00e515 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Tue, 11 Feb 2025 05:44:51 +0000 Subject: [PATCH 31/37] more clean up --- docker-compose.yaml | 6 ++++-- src/nv_ingest/util/nim/helpers.py | 3 +-- src/nv_ingest/util/pipeline/pipeline_runners.py | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index be27a938..9a0cd850 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -176,8 +176,6 @@ services: # build.nvidia.com hosted deplot #- DEPLOT_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/google/deplot - DEPLOT_INFER_PROTOCOL=http - - NEMORETRIEVER_PARSE_HTTP_ENDPOINT=http://nemoretriever-parse:8000/v1/chat/completions - - NEMORETRIEVER_PARSE_INFER_PROTOCOL=http - EMBEDDING_NIM_MODEL_NAME=${EMBEDDING_NIM_MODEL_NAME:-nvidia/nv-embedqa-e5-v5} - INGEST_LOG_LEVEL=DEFAULT # Message client for development @@ -190,6 +188,10 @@ services: - MESSAGE_CLIENT_TYPE=redis - MINIO_BUCKET=${MINIO_BUCKET:-nv-ingest} - MRC_IGNORE_NUMA_CHECK=1 + # build.nvidia.com hosted nemoretriever-parse + #- NEMORETRIEVER_PARSE_HTTP_ENDPOINT=https://ai.api.nvidia.com/v1/vlm/nvidia/nemoretriever-parse + - NEMORETRIEVER_PARSE_HTTP_ENDPOINT=http://nemoretriever-parse:8000/v1/chat/completions + - NEMORETRIEVER_PARSE_INFER_PROTOCOL=http - NGC_API_KEY=${NGC_API_KEY:-ngcapikey} - NVIDIA_BUILD_API_KEY=${NVIDIA_BUILD_API_KEY:-${NGC_API_KEY:-ngcapikey}} - OTEL_EXPORTER_OTLP_ENDPOINT=otel-collector:4317 diff --git a/src/nv_ingest/util/nim/helpers.py b/src/nv_ingest/util/nim/helpers.py index 62b43b64..aeac5749 100644 --- a/src/nv_ingest/util/nim/helpers.py +++ b/src/nv_ingest/util/nim/helpers.py @@ -430,7 +430,6 @@ def create_inference_client( model_interface: ModelInterface, auth_token: Optional[str] = None, infer_protocol: Optional[str] = None, - timeout: float = 30.0, ) -> NimClient: """ Create a NimClient for interfacing with a model inference server. @@ -467,7 +466,7 @@ def create_inference_client( if infer_protocol not in ["grpc", "http"]: raise ValueError("Invalid infer_protocol specified. Must be 'grpc' or 'http'.") - return NimClient(model_interface, infer_protocol, endpoints, auth_token, timeout=timeout) + return NimClient(model_interface, infer_protocol, endpoints, auth_token) def preprocess_image_for_paddle(array: np.ndarray, paddle_version: Optional[str] = None) -> np.ndarray: diff --git a/src/nv_ingest/util/pipeline/pipeline_runners.py b/src/nv_ingest/util/pipeline/pipeline_runners.py index c9d062a0..5f3dba72 100644 --- a/src/nv_ingest/util/pipeline/pipeline_runners.py +++ b/src/nv_ingest/util/pipeline/pipeline_runners.py @@ -39,7 +39,7 @@ class PipelineCreationSchema(BaseModel): deplot_http_endpoint: str = os.getenv("DEPLOT_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/google/deplot") deplot_infer_protocol: str = "http" nemoretriever_parse_http_endpoint: str = os.getenv( - "NEMORETRIEVER_PARSE_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/nvidia/nemoretriever_parse" + "NEMORETRIEVER_PARSE_HTTP_ENDPOINT", "https://ai.api.nvidia.com/v1/vlm/nvidia/nemoretriever-parse" ) nemoretriever_parse_infer_protocol: str = "http" embedding_nim_endpoint: str = os.getenv("EMBEDDING_NIM_ENDPOINT", "https://integrate.api.nvidia.com/v1") From d92da02607b6f3c0474ef060bea73b16084532e8 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 01:47:18 +0000 Subject: [PATCH 32/37] enable table/chart extraction with yolox --- .../pdf/nemoretriever_parse_helper.py | 192 +++++++++++++----- src/nv_ingest/util/nim/yolox.py | 16 +- 2 files changed, 154 insertions(+), 54 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py index 3480b13d..bece0d22 100644 --- a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py @@ -21,9 +21,12 @@ import math import traceback import uuid +import concurrent.futures from typing import Any from typing import Dict from typing import Tuple +from typing import Optional +from typing import List import numpy as np import pypdfium2 as pdfium @@ -35,6 +38,7 @@ from nv_ingest.schemas.metadata_schema import TableFormatEnum from nv_ingest.schemas.metadata_schema import TextTypeEnum from nv_ingest.schemas.metadata_schema import validate_metadata +from nv_ingest.schemas.pdf_extractor_schema import PDFiumConfigSchema from nv_ingest.util.exception_handlers.pdf import pdfium_exception_handler from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 @@ -46,6 +50,9 @@ from nv_ingest.util.pdf.metadata_aggregators import construct_text_metadata from nv_ingest.util.pdf.metadata_aggregators import extract_pdf_metadata from nv_ingest.util.pdf.pdfium import pdfium_pages_to_numpy +from nv_ingest.extraction_workflows.pdf.pdfium_helper import _extract_tables_and_charts +from nv_ingest.extraction_workflows.pdf.pdfium_helper import YOLOX_MAX_BATCH_SIZE + logger = logging.getLogger(__name__) @@ -55,7 +62,15 @@ # Define a helper function to use nemoretriever_parse to extract text from a base64 encoded bytestram PDF -def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, extract_tables: bool, **kwargs): +def nemoretriever_parse( + pdf_stream, + extract_text: bool, + extract_images: bool, + extract_tables: bool, + extract_charts: bool, + trace_info: Optional[List] = None, + **kwargs, +): """ Helper function to use nemoretriever_parse to extract text from a bytestream PDF. @@ -91,6 +106,13 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex identify_nearby_objects = kwargs.get("identify_nearby_objects", True) + paddle_output_format = kwargs.get("paddle_output_format", "pseudo_markdown") + paddle_output_format = TableFormatEnum[paddle_output_format.upper()] + + pdfium_config = kwargs.get("pdfium_config", {}) + if isinstance(pdfium_config, dict): + pdfium_config = PDFiumConfigSchema(**pdfium_config) + # get base metadata metadata_col = kwargs.get("metadata_column", "metadata") base_unified_metadata = row_data[metadata_col] if metadata_col in row_data.index else {} @@ -109,6 +131,7 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex extracted_data = [] doc = pdfium.PdfDocument(pdf_stream) pdf_metadata = extract_pdf_metadata(doc, source_id) + page_count = pdf_metadata.page_count source_metadata = { "source_name": pdf_metadata.filename, @@ -127,68 +150,135 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex accumulated_tables = [] accumulated_images = [] + pages_as_images = [] # We'll accumulate (page_idx, np_image) here + futures = [] # We'll keep track of all the Future objects for table/charts + nemoretriever_parse_client = _create_clients(nemoretriever_parse_config) - for page_idx in range(pdf_metadata.page_count): - page = doc.get_page(page_idx) - page_width, page_height = doc.get_page_size(page_idx) + with concurrent.futures.ThreadPoolExecutor(max_workers=2) as executor: + + for page_idx in range(page_count): + page = doc.get_page(page_idx) + + page_image = _convert_pdfium_page_to_numpy(page) + pages_as_images.append((page_idx, page_image)) + + page.close() + + data = {"image": page_image} + future_parser = executor.submit( + lambda *args, **kwargs: ("parser", page_idx, nemoretriever_parse_client.infer(*args, **kwargs)), + data=data, + model_name="nemoretriever_parse", + stage_name="pdf_content_extractor", + max_batch_size=1, + trace_info=trace_info, + ) + futures.append(future_parser) + + # Whenever pages_as_images hits YOLOX_MAX_BATCH_SIZE, submit a job + if len(pages_as_images) >= YOLOX_MAX_BATCH_SIZE: + future_yolox = executor.submit( + lambda *args, **kwargs: ("yolox", page_idx, _extract_tables_and_charts(*args, **kwargs)), + pages_as_images[:], # pass a copy + pdfium_config, + page_count, + source_metadata, + base_unified_metadata, + paddle_output_format, + trace_info=trace_info, + ) + futures.append(future_yolox) + pages_as_images.clear() + + # After page loop, if we still have leftover pages_as_images, submit one last job + if (extract_tables or extract_charts) and pages_as_images: + future_yolox = executor.submit( + lambda *args, **kwargs: ("yolox", page_idx, _extract_tables_and_charts(*args, **kwargs)), + pages_as_images[:], + pdfium_config, + page_count, + source_metadata, + base_unified_metadata, + paddle_output_format, + trace_info=trace_info, + ) + futures.append(future_yolox) + pages_as_images.clear() + + parser_results = [] + # Now wait for all futures to complete + for fut in concurrent.futures.as_completed(futures): + model_name, page_idx, extracted_items = fut.result() # blocks until finished + if (model_name == "yolox") and (extract_tables or extract_charts): + extracted_data.extend(extracted_items) + elif model_name == "parser": + parser_results.append((page_idx, extracted_items)) page_nearby_blocks = { "text": {"content": [], "bbox": [], "type": []}, "images": {"content": [], "bbox": [], "type": []}, "structured": {"content": [], "bbox": [], "type": []}, } + # response = _send_inference_request(nemoretriever_parse_client, page_image) - page_image = _convert_pdfium_page_to_numpy(page) - response = _send_inference_request(nemoretriever_parse_client, page_image) + for page_idx, parser_output in parser_results: + page = None + page_image = None + page_text = [] - for bbox_dict in response: - cls = bbox_dict["type"] - bbox = bbox_dict["bbox"] - txt = bbox_dict["text"] + for bbox_dict in parser_output: + cls = bbox_dict["type"] + bbox = bbox_dict["bbox"] + txt = bbox_dict["text"] - transformed_bbox = [ - math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), - math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), - math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), - math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), - ] + transformed_bbox = [ + math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), + math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), + math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), + math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), + ] - if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: - continue + if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: + continue - if identify_nearby_objects: - _insert_page_nearby_blocks(page_nearby_blocks, cls, txt, transformed_bbox) + if identify_nearby_objects: + _insert_page_nearby_blocks(page_nearby_blocks, cls, txt, transformed_bbox) - if extract_text: - accumulated_text.append(txt) + if extract_text: + page_text.append(txt) - if extract_tables and (cls == "Table"): - table = LatexTable( - latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT - ) - accumulated_tables.append(table) - - if extract_images and (cls == "Picture"): - img_numpy = crop_image(page_image, transformed_bbox) - - if img_numpy is not None: - base64_img = numpy_to_base64(img_numpy) - image = Base64Image( - image=base64_img, - bbox=transformed_bbox, - width=img_numpy.shape[1], - height=img_numpy.shape[0], - max_width=DEFAULT_MAX_WIDTH, - max_height=DEFAULT_MAX_HEIGHT, + if extract_tables and (cls == "Table"): + table = LatexTable( + latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT ) - accumulated_images.append(image) - - # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. - if not "".join(accumulated_text).strip(): - textpage = page.get_textpage() - page_text = textpage.get_text_bounded() - accumulated_text.append(page_text) + accumulated_tables.append(table) + + if extract_images and (cls == "Picture"): + if page is None: + page = doc.get_page(page_idx) + if page_image is None: + page_image = _convert_pdfium_page_to_numpy(page) + + img_numpy = crop_image(page_image, transformed_bbox) + + if img_numpy is not None: + base64_img = numpy_to_base64(img_numpy) + image = Base64Image( + image=base64_img, + bbox=transformed_bbox, + width=img_numpy.shape[1], + height=img_numpy.shape[0], + max_width=DEFAULT_MAX_WIDTH, + max_height=DEFAULT_MAX_HEIGHT, + ) + accumulated_images.append(image) + + # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. + if not "".join(page_text).strip(): + page_text = [page.get_textpage().get_text_bounded()] + + accumulated_text.extend(page_text) # Construct tables if extract_tables: @@ -197,7 +287,7 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex _construct_table_metadata( table, page_idx, - pdf_metadata.page_count, + page_count, source_metadata, base_unified_metadata, ) @@ -211,7 +301,7 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex construct_image_metadata_from_pdf_image( image, page_idx, - pdf_metadata.page_count, + page_count, source_metadata, base_unified_metadata, ) @@ -228,7 +318,7 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex -1, -1, -1, - pdf_metadata.page_count, + page_count, text_depth, source_metadata, base_unified_metadata, @@ -248,7 +338,7 @@ def nemoretriever_parse(pdf_stream, extract_text: bool, extract_images: bool, ex -1, -1, -1, - pdf_metadata.page_count, + page_count, text_depth, source_metadata, base_unified_metadata, diff --git a/src/nv_ingest/util/nim/yolox.py b/src/nv_ingest/util/nim/yolox.py index cd26818d..34bb8ee7 100644 --- a/src/nv_ingest/util/nim/yolox.py +++ b/src/nv_ingest/util/nim/yolox.py @@ -7,6 +7,7 @@ import io import logging import warnings +from math import log from typing import Any from typing import Dict from typing import List @@ -37,11 +38,20 @@ YOLOX_IMAGE_PREPROC_WIDTH = 1024 -def chunkify(lst, chunk_size): +def chunkify_linearly(lst, chunk_size): for i in range(0, len(lst), chunk_size): yield lst[i : i + chunk_size] +def chunkify_geometrically(lst, max_size): + # TRT engine in Yolox NIM (gRPC) only allows a batch size in multiples of 2. + i = 0 + while i < len(lst): + chunk_size = min(2 ** int(log(len(lst) - i, 2)), max_size) + yield lst[i : i + chunk_size] + i += chunk_size + + # Implementing YoloxPageElemenetsModelInterface with required methods class YoloxPageElementsModelInterface(ModelInterface): """ @@ -116,7 +126,7 @@ def format_input(self, data: Dict[str, Any], protocol: str, max_batch_size: int, # Create a list of smaller batches (chunkify) batches = [] - for chunk in chunkify(resized_images, max_batch_size): + for chunk in chunkify_geometrically(resized_images, max_batch_size): # Reorder axes to match model input (batch, channels, height, width) input_array = np.einsum("bijk->bkij", chunk).astype(np.float32) batches.append(input_array) @@ -149,7 +159,7 @@ def format_input(self, data: Dict[str, Any], protocol: str, max_batch_size: int, # Now split content_list into batches of up to max_batch_size batches = [] - for chunk in chunkify(content_list, max_batch_size): + for chunk in chunkify_linearly(content_list, max_batch_size): payload = {"input": chunk} batches.append(payload) From ee3286424f6598b3a1342358066f6eff0b1d2bc4 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 02:04:47 +0000 Subject: [PATCH 33/37] fix cached and paddle batching error --- src/nv_ingest/util/nim/cached.py | 10 ++++++---- src/nv_ingest/util/nim/paddle.py | 14 +++++++++----- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/src/nv_ingest/util/nim/cached.py b/src/nv_ingest/util/nim/cached.py index b5c84da9..fc777e3f 100644 --- a/src/nv_ingest/util/nim/cached.py +++ b/src/nv_ingest/util/nim/cached.py @@ -123,13 +123,15 @@ def chunk_list(lst: list, chunk_size: int) -> List[list]: if not batched_images: raise ValueError("No valid images found for gRPC formatting.") + batched_image_chunks = chunk_list(batched_images, max_batch_size) + # Ensure all images have the same shape (excluding batch dimension) - shapes = [img.shape[1:] for img in batched_images] # each is (H, W, C) - if any(s != shapes[0] for s in shapes[1:]): - raise ValueError(f"All images must have the same dimensions for gRPC batching. Found: {shapes}") + for chunk in batched_image_chunks: + shapes = [img.shape[1:] for img in chunk] # each is (H, W, C) + if any(s != shapes[0] for s in shapes[1:]): + raise ValueError(f"All images must have the same dimensions for gRPC batching. Found: {shapes}") # Chunk the images into groups of size up to max_batch_size - batched_image_chunks = chunk_list(batched_images, max_batch_size) batched_inputs = [] for chunk in batched_image_chunks: # Concatenate along the batch dimension => shape (B, H, W, C) where B <= max_batch_size diff --git a/src/nv_ingest/util/nim/paddle.py b/src/nv_ingest/util/nim/paddle.py index e69fcd88..db43cf6b 100644 --- a/src/nv_ingest/util/nim/paddle.py +++ b/src/nv_ingest/util/nim/paddle.py @@ -141,13 +141,17 @@ def chunk_list(lst, chunk_size): arr = np.expand_dims(arr, axis=0) # => shape (1, H, W, C) processed.append(arr) - # Check that all images have the same shape (excluding batch dimension) - shapes = [p.shape[1:] for p in processed] # List of (H, W, C) shapes - if not all(s == shapes[0] for s in shapes[1:]): - raise ValueError(f"All images must have the same dimensions for gRPC batching. Found: {shapes}") + # Chunk the images into groups of size up to max_batch_size + batched_image_chunks = chunk_list(processed, max_batch_size) + + # Check that all images in each chunk have the same shape (excluding batch dimension) + for chunk in batched_image_chunks: + shapes = [p.shape[1:] for p in chunk] # List of (H, W, C) shapes + if not all(s == shapes[0] for s in shapes[1:]): + raise ValueError(f"All images must have the same dimensions for gRPC batching. Found: {shapes}") batches = [] - for chunk in chunk_list(processed, max_batch_size): + for chunk in batched_image_chunks: # Concatenate arrays in the chunk along the batch dimension => shape (B, H, W, C) batched_input = np.concatenate(chunk, axis=0) batches.append(batched_input) From 6511ca6ff6cbd24bada4e36c7cffeefcb8c04737 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 02:39:52 +0000 Subject: [PATCH 34/37] update batching in nimclient --- src/nv_ingest/util/nim/nemoretriever_parse.py | 52 ++++++++++++------- 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/src/nv_ingest/util/nim/nemoretriever_parse.py b/src/nv_ingest/util/nim/nemoretriever_parse.py index 0fa1b791..42d8eaa0 100644 --- a/src/nv_ingest/util/nim/nemoretriever_parse.py +++ b/src/nv_ingest/util/nim/nemoretriever_parse.py @@ -6,6 +6,7 @@ import logging from typing import Any from typing import Dict +from typing import List from typing import Optional from nv_ingest.util.image_processing.transforms import numpy_to_base64 @@ -75,7 +76,7 @@ def prepare_data_for_inference(self, data: Dict[str, Any]) -> Dict[str, Any]: return data - def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: + def format_input(self, data: Dict[str, Any], protocol: str, max_batch_size: int, **kwargs) -> Any: """ Format input data for the specified protocol. @@ -99,14 +100,26 @@ def format_input(self, data: Dict[str, Any], protocol: str, **kwargs) -> Any: If an invalid protocol is specified. """ + # Helper function: chunk a list into sublists of length <= chunk_size. + def chunk_list(lst: list, chunk_size: int) -> List[list]: + return [lst[i : i + chunk_size] for i in range(0, len(lst), chunk_size)] + if protocol == "grpc": raise ValueError("gRPC protocol is not supported for NemoRetrieverParse.") elif protocol == "http": logger.debug("Formatting input for HTTP NemoRetrieverParse model") # Prepare payload for HTTP request - base64_img = numpy_to_base64(data["image"]) - payload = self._prepare_nemoretriever_parse_payload(base64_img) - return [payload] + + if "images" in data: + base64_list = [numpy_to_base64(img) for img in data["images"]] + else: + base64_list = [numpy_to_base64(data["image"])] + + payloads = [] + for chunk in chunk_list(base64_list, max_batch_size): + payload = self._prepare_nemoretriever_parse_payload(chunk) + payloads.append(payload) + return payloads else: raise ValueError("Invalid protocol specified. Must be 'grpc' or 'http'.") @@ -159,20 +172,23 @@ def process_inference_results(self, output: Any, **kwargs) -> Any: return output - def _prepare_nemoretriever_parse_payload(self, base64_img: str) -> Dict[str, Any]: - messages = [ - { - "role": "user", - "content": [ - { - "type": "image_url", - "image_url": { - "url": f"data:image/png;base64,{base64_img}", - }, - } - ], - } - ] + def _prepare_nemoretriever_parse_payload(self, base64_list: List[str]) -> Dict[str, Any]: + messages = [] + + for b64_img in base64_list: + messages.append( + { + "role": "user", + "content": [ + { + "type": "image_url", + "image_url": { + "url": f"data:image/png;base64,{b64_img}", + }, + } + ], + } + ) payload = { "model": "nvidia/nemoretriever-parse", "messages": messages, From 41296ed2d1229fb7abdc47652071878b3a5a981d Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 04:23:40 +0000 Subject: [PATCH 35/37] add option to select table extraction mode --- .../primitives/tasks/extract.py | 2 +- .../pdf/nemoretriever_parse_helper.py | 131 ++++++++++++------ src/nv_ingest/schemas/pdf_extractor_schema.py | 2 + src/nv_ingest/util/nim/nemoretriever_parse.py | 2 +- 4 files changed, 95 insertions(+), 42 deletions(-) diff --git a/client/src/nv_ingest_client/primitives/tasks/extract.py b/client/src/nv_ingest_client/primitives/tasks/extract.py index 17fef30c..78f065c7 100644 --- a/client/src/nv_ingest_client/primitives/tasks/extract.py +++ b/client/src/nv_ingest_client/primitives/tasks/extract.py @@ -70,7 +70,7 @@ "tiff": get_args(_Type_Extract_Method_Image), } -_Type_Extract_Tables_Method_PDF = Literal["yolox", "pdfium"] +_Type_Extract_Tables_Method_PDF = Literal["yolox", "pdfium", "nemoretriever_parse"] _Type_Extract_Tables_Method_DOCX = Literal["python_docx",] diff --git a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py index bece0d22..bfba5236 100644 --- a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py @@ -39,6 +39,7 @@ from nv_ingest.schemas.metadata_schema import TextTypeEnum from nv_ingest.schemas.metadata_schema import validate_metadata from nv_ingest.schemas.pdf_extractor_schema import PDFiumConfigSchema +from nv_ingest.schemas.pdf_extractor_schema import NemoRetrieverParseConfigSchema from nv_ingest.util.exception_handlers.pdf import pdfium_exception_handler from nv_ingest.util.image_processing.transforms import crop_image from nv_ingest.util.image_processing.transforms import numpy_to_base64 @@ -56,9 +57,10 @@ logger = logging.getLogger(__name__) -DEFAULT_RENDER_DPI = 300 -DEFAULT_MAX_WIDTH = 1024 -DEFAULT_MAX_HEIGHT = 1280 +NEMORETRIEVER_PARSE_RENDER_DPI = 300 +NEMORETRIEVER_PARSE_MAX_WIDTH = 1024 +NEMORETRIEVER_PARSE_MAX_HEIGHT = 1280 +NEMORETRIEVER_PARSE_MAX_BATCH_SIZE = 2 # Define a helper function to use nemoretriever_parse to extract text from a base64 encoded bytestram PDF @@ -104,14 +106,17 @@ def nemoretriever_parse( text_depth = kwargs.get("text_depth", "page") text_depth = TextTypeEnum[text_depth.upper()] + extract_tables_method = kwargs.get("extract_tables_method", "yolox") identify_nearby_objects = kwargs.get("identify_nearby_objects", True) - paddle_output_format = kwargs.get("paddle_output_format", "pseudo_markdown") paddle_output_format = TableFormatEnum[paddle_output_format.upper()] pdfium_config = kwargs.get("pdfium_config", {}) if isinstance(pdfium_config, dict): pdfium_config = PDFiumConfigSchema(**pdfium_config) + nemoretriever_parse_config = kwargs.get("nemoretriever_parse_config", {}) + if isinstance(nemoretriever_parse_config, dict): + nemoretriever_parse_config = NemoRetrieverParseConfigSchema(**nemoretriever_parse_config) # get base metadata metadata_col = kwargs.get("metadata_column", "metadata") @@ -150,37 +155,44 @@ def nemoretriever_parse( accumulated_tables = [] accumulated_images = [] - pages_as_images = [] # We'll accumulate (page_idx, np_image) here + pages_for_ocr = [] # We'll accumulate (page_idx, np_image) here + pages_for_tables = [] # We'll accumulate (page_idx, np_image) here futures = [] # We'll keep track of all the Future objects for table/charts nemoretriever_parse_client = _create_clients(nemoretriever_parse_config) - with concurrent.futures.ThreadPoolExecutor(max_workers=2) as executor: + max_workers = nemoretriever_parse_config.workers_per_progress_engine + with concurrent.futures.ThreadPoolExecutor(max_workers=max_workers) as executor: for page_idx in range(page_count): page = doc.get_page(page_idx) page_image = _convert_pdfium_page_to_numpy(page) - pages_as_images.append((page_idx, page_image)) + pages_for_ocr.append((page_idx, page_image)) + pages_for_tables.append((page_idx, page_image)) page.close() - data = {"image": page_image} - future_parser = executor.submit( - lambda *args, **kwargs: ("parser", page_idx, nemoretriever_parse_client.infer(*args, **kwargs)), - data=data, - model_name="nemoretriever_parse", - stage_name="pdf_content_extractor", - max_batch_size=1, - trace_info=trace_info, - ) - futures.append(future_parser) + # Whenever pages_as_images hits NEMORETRIEVER_PARSE_MAX_BATCH_SIZE, submit a job + if len(pages_for_ocr) >= NEMORETRIEVER_PARSE_MAX_BATCH_SIZE: + future_parser = executor.submit( + lambda *args, **kwargs: ("parser", _extract_text_and_bounding_boxes(*args, **kwargs)), + pages_for_ocr[:], # pass a copy + nemoretriever_parse_client, + trace_info=trace_info, + ) + futures.append(future_parser) + pages_for_ocr.clear() # Whenever pages_as_images hits YOLOX_MAX_BATCH_SIZE, submit a job - if len(pages_as_images) >= YOLOX_MAX_BATCH_SIZE: + if ( + (extract_tables_method == "yolox") + and (extract_tables or extract_charts) + and (len(pages_for_tables) >= YOLOX_MAX_BATCH_SIZE) + ): future_yolox = executor.submit( - lambda *args, **kwargs: ("yolox", page_idx, _extract_tables_and_charts(*args, **kwargs)), - pages_as_images[:], # pass a copy + lambda *args, **kwargs: ("yolox", _extract_tables_and_charts(*args, **kwargs)), + pages_for_tables[:], # pass a copy pdfium_config, page_count, source_metadata, @@ -189,13 +201,23 @@ def nemoretriever_parse( trace_info=trace_info, ) futures.append(future_yolox) - pages_as_images.clear() + pages_for_tables.clear() # After page loop, if we still have leftover pages_as_images, submit one last job - if (extract_tables or extract_charts) and pages_as_images: + if pages_for_ocr: + future_parser = executor.submit( + lambda *args, **kwargs: ("parser", _extract_text_and_bounding_boxes(*args, **kwargs)), + pages_for_ocr[:], # pass a copy + nemoretriever_parse_client, + trace_info=trace_info, + ) + futures.append(future_parser) + pages_for_ocr.clear() + + if (extract_tables_method == "yolox") and (extract_tables or extract_charts) and pages_for_tables: future_yolox = executor.submit( - lambda *args, **kwargs: ("yolox", page_idx, _extract_tables_and_charts(*args, **kwargs)), - pages_as_images[:], + lambda *args, **kwargs: ("yolox", _extract_tables_and_charts(*args, **kwargs)), + pages_for_tables[:], pdfium_config, page_count, source_metadata, @@ -204,23 +226,22 @@ def nemoretriever_parse( trace_info=trace_info, ) futures.append(future_yolox) - pages_as_images.clear() + pages_for_tables.clear() parser_results = [] # Now wait for all futures to complete for fut in concurrent.futures.as_completed(futures): - model_name, page_idx, extracted_items = fut.result() # blocks until finished + model_name, extracted_items = fut.result() # blocks until finished if (model_name == "yolox") and (extract_tables or extract_charts): extracted_data.extend(extracted_items) elif model_name == "parser": - parser_results.append((page_idx, extracted_items)) + parser_results.extend(extracted_items) page_nearby_blocks = { "text": {"content": [], "bbox": [], "type": []}, "images": {"content": [], "bbox": [], "type": []}, "structured": {"content": [], "bbox": [], "type": []}, } - # response = _send_inference_request(nemoretriever_parse_client, page_image) for page_idx, parser_output in parser_results: page = None @@ -233,10 +254,10 @@ def nemoretriever_parse( txt = bbox_dict["text"] transformed_bbox = [ - math.floor(bbox["xmin"] * DEFAULT_MAX_WIDTH), - math.floor(bbox["ymin"] * DEFAULT_MAX_HEIGHT), - math.ceil(bbox["xmax"] * DEFAULT_MAX_WIDTH), - math.ceil(bbox["ymax"] * DEFAULT_MAX_HEIGHT), + math.floor(bbox["xmin"] * NEMORETRIEVER_PARSE_MAX_WIDTH), + math.floor(bbox["ymin"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), + math.ceil(bbox["xmax"] * NEMORETRIEVER_PARSE_MAX_WIDTH), + math.ceil(bbox["ymax"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), ] if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: @@ -248,9 +269,12 @@ def nemoretriever_parse( if extract_text: page_text.append(txt) - if extract_tables and (cls == "Table"): + if (extract_tables_method == "nemoretriever_parse") and (extract_tables) and (cls == "Table"): table = LatexTable( - latex=txt, bbox=transformed_bbox, max_width=DEFAULT_MAX_WIDTH, max_height=DEFAULT_MAX_HEIGHT + latex=txt, + bbox=transformed_bbox, + max_width=NEMORETRIEVER_PARSE_MAX_WIDTH, + max_height=NEMORETRIEVER_PARSE_MAX_HEIGHT, ) accumulated_tables.append(table) @@ -269,13 +293,15 @@ def nemoretriever_parse( bbox=transformed_bbox, width=img_numpy.shape[1], height=img_numpy.shape[0], - max_width=DEFAULT_MAX_WIDTH, - max_height=DEFAULT_MAX_HEIGHT, + max_width=NEMORETRIEVER_PARSE_MAX_WIDTH, + max_height=NEMORETRIEVER_PARSE_MAX_HEIGHT, ) accumulated_images.append(image) # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. if not "".join(page_text).strip(): + if page is None: + page = doc.get_page(page_idx) page_text = [page.get_textpage().get_text_bounded()] accumulated_text.extend(page_text) @@ -323,7 +349,7 @@ def nemoretriever_parse( source_metadata, base_unified_metadata, delimiter="\n\n", - bbox_max_dimensions=(DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), + bbox_max_dimensions=(NEMORETRIEVER_PARSE_MAX_WIDTH, NEMORETRIEVER_PARSE_MAX_HEIGHT), nearby_objects=page_nearby_blocks, ) ) @@ -354,6 +380,31 @@ def nemoretriever_parse( return extracted_data +def _extract_text_and_bounding_boxes( + pages: list, + nemoretriever_parse_client, + trace_info=None, +) -> list: + + # Collect all page indices and images in order. + image_page_indices = [page[0] for page in pages] + original_images = [page[1] for page in pages] + + # Prepare the data payload with all images. + data = {"images": original_images} + + # Perform inference using the NimClient. + inference_results = nemoretriever_parse_client.infer( + data=data, + model_name="nemoretriever_parse", + stage_name="pdf_content_extractor", + max_batch_size=NEMORETRIEVER_PARSE_MAX_BATCH_SIZE, + trace_info=trace_info, + ) + + return list(zip(image_page_indices, inference_results)) + + def _create_clients(nemoretriever_parse_config): model_interface = nemoretriever_parse_utils.NemoRetrieverParseModelInterface() nemoretriever_parse_client = create_inference_client( @@ -388,9 +439,9 @@ def _send_inference_request( def _convert_pdfium_page_to_numpy( page: pdfium.PdfPage, - render_dpi: int = DEFAULT_RENDER_DPI, - scale_tuple: Tuple[int, int] = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), - padding_tuple: Tuple[int, int] = (DEFAULT_MAX_WIDTH, DEFAULT_MAX_HEIGHT), + render_dpi: int = NEMORETRIEVER_PARSE_RENDER_DPI, + scale_tuple: Tuple[int, int] = (NEMORETRIEVER_PARSE_MAX_WIDTH, NEMORETRIEVER_PARSE_MAX_HEIGHT), + padding_tuple: Tuple[int, int] = (NEMORETRIEVER_PARSE_MAX_WIDTH, NEMORETRIEVER_PARSE_MAX_HEIGHT), ) -> np.ndarray: page_images, _ = pdfium_pages_to_numpy( [page], render_dpi=render_dpi, scale_tuple=scale_tuple, padding_tuple=padding_tuple diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index f63bf850..e0c65dbd 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -128,6 +128,8 @@ class NemoRetrieverParseConfigSchema(BaseModel): nemoretriever_parse_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) nemoretriever_parse_infer_protocol: str = "" + workers_per_progress_engine: int = 5 + @model_validator(mode="before") @classmethod def validate_endpoints(cls, values): diff --git a/src/nv_ingest/util/nim/nemoretriever_parse.py b/src/nv_ingest/util/nim/nemoretriever_parse.py index 42d8eaa0..1bca39f5 100644 --- a/src/nv_ingest/util/nim/nemoretriever_parse.py +++ b/src/nv_ingest/util/nim/nemoretriever_parse.py @@ -220,4 +220,4 @@ def _extract_content_from_nemoretriever_parse_response(self, json_response: Dict raise RuntimeError("Unexpected response format: 'choices' key is missing or empty.") tool_call = json_response["choices"][0]["message"]["tool_calls"][0] - return json.loads(tool_call["function"]["arguments"])[0] + return json.loads(tool_call["function"]["arguments"]) From dfc9fd703972e50137f4453948bc7037f1a549a3 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 04:27:22 +0000 Subject: [PATCH 36/37] update image tag --- docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 9a0cd850..a76454f3 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -126,7 +126,7 @@ services: runtime: nvidia nemoretriever-parse: - image: ${NEMORETRIEVER_PARSE_IMAGE:-nvcr.io/nvidia/nemo-microservices/nemoretriever-parse}:${NEMORETRIEVER_PARSE_TAG:-1.0.0} + image: ${NEMORETRIEVER_PARSE_IMAGE:-nvcr.io/nvidia/nemo-microservices/nemoretriever-parse}:${NEMORETRIEVER_PARSE_TAG:-1.2.0ea} ports: - "8015:8000" - "8016:8001" From 755ceea5801e1238657fb0faf0a9f1a70fc2d501 Mon Sep 17 00:00:00 2001 From: Edward Kim Date: Wed, 12 Feb 2025 04:56:32 +0000 Subject: [PATCH 37/37] fix page arrangement --- .../pdf/nemoretriever_parse_helper.py | 108 +++++++++--------- src/nv_ingest/schemas/pdf_extractor_schema.py | 2 +- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py index bfba5236..8f02ec21 100644 --- a/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py +++ b/src/nv_ingest/extraction_workflows/pdf/nemoretriever_parse_helper.py @@ -237,74 +237,74 @@ def nemoretriever_parse( elif model_name == "parser": parser_results.extend(extracted_items) + for page_idx, parser_output in parser_results: + page = None + page_image = None + page_text = [] + page_nearby_blocks = { "text": {"content": [], "bbox": [], "type": []}, "images": {"content": [], "bbox": [], "type": []}, "structured": {"content": [], "bbox": [], "type": []}, } - for page_idx, parser_output in parser_results: - page = None - page_image = None - page_text = [] - - for bbox_dict in parser_output: - cls = bbox_dict["type"] - bbox = bbox_dict["bbox"] - txt = bbox_dict["text"] - - transformed_bbox = [ - math.floor(bbox["xmin"] * NEMORETRIEVER_PARSE_MAX_WIDTH), - math.floor(bbox["ymin"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), - math.ceil(bbox["xmax"] * NEMORETRIEVER_PARSE_MAX_WIDTH), - math.ceil(bbox["ymax"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), - ] - - if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: - continue + for bbox_dict in parser_output: + cls = bbox_dict["type"] + bbox = bbox_dict["bbox"] + txt = bbox_dict["text"] + + transformed_bbox = [ + math.floor(bbox["xmin"] * NEMORETRIEVER_PARSE_MAX_WIDTH), + math.floor(bbox["ymin"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), + math.ceil(bbox["xmax"] * NEMORETRIEVER_PARSE_MAX_WIDTH), + math.ceil(bbox["ymax"] * NEMORETRIEVER_PARSE_MAX_HEIGHT), + ] + + if cls not in nemoretriever_parse_utils.ACCEPTED_CLASSES: + continue + + if identify_nearby_objects: + _insert_page_nearby_blocks(page_nearby_blocks, cls, txt, transformed_bbox) + + if extract_text: + page_text.append(txt) + + if (extract_tables_method == "nemoretriever_parse") and (extract_tables) and (cls == "Table"): + table = LatexTable( + latex=txt, + bbox=transformed_bbox, + max_width=NEMORETRIEVER_PARSE_MAX_WIDTH, + max_height=NEMORETRIEVER_PARSE_MAX_HEIGHT, + ) + accumulated_tables.append(table) - if identify_nearby_objects: - _insert_page_nearby_blocks(page_nearby_blocks, cls, txt, transformed_bbox) + if extract_images and (cls == "Picture"): + if page is None: + page = doc.get_page(page_idx) + if page_image is None: + page_image = _convert_pdfium_page_to_numpy(page) - if extract_text: - page_text.append(txt) + img_numpy = crop_image(page_image, transformed_bbox) - if (extract_tables_method == "nemoretriever_parse") and (extract_tables) and (cls == "Table"): - table = LatexTable( - latex=txt, + if img_numpy is not None: + base64_img = numpy_to_base64(img_numpy) + image = Base64Image( + image=base64_img, bbox=transformed_bbox, + width=img_numpy.shape[1], + height=img_numpy.shape[0], max_width=NEMORETRIEVER_PARSE_MAX_WIDTH, max_height=NEMORETRIEVER_PARSE_MAX_HEIGHT, ) - accumulated_tables.append(table) - - if extract_images and (cls == "Picture"): - if page is None: - page = doc.get_page(page_idx) - if page_image is None: - page_image = _convert_pdfium_page_to_numpy(page) - - img_numpy = crop_image(page_image, transformed_bbox) - - if img_numpy is not None: - base64_img = numpy_to_base64(img_numpy) - image = Base64Image( - image=base64_img, - bbox=transformed_bbox, - width=img_numpy.shape[1], - height=img_numpy.shape[0], - max_width=NEMORETRIEVER_PARSE_MAX_WIDTH, - max_height=NEMORETRIEVER_PARSE_MAX_HEIGHT, - ) - accumulated_images.append(image) - - # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. - if not "".join(page_text).strip(): - if page is None: - page = doc.get_page(page_idx) - page_text = [page.get_textpage().get_text_bounded()] + accumulated_images.append(image) + + # If NemoRetrieverParse fails to extract anything, fall back to using pdfium. + if not "".join(page_text).strip(): + if page is None: + page = doc.get_page(page_idx) + page_text = [page.get_textpage().get_text_bounded()] - accumulated_text.extend(page_text) + accumulated_text.extend(page_text) # Construct tables if extract_tables: diff --git a/src/nv_ingest/schemas/pdf_extractor_schema.py b/src/nv_ingest/schemas/pdf_extractor_schema.py index e0c65dbd..e02bea93 100644 --- a/src/nv_ingest/schemas/pdf_extractor_schema.py +++ b/src/nv_ingest/schemas/pdf_extractor_schema.py @@ -128,7 +128,7 @@ class NemoRetrieverParseConfigSchema(BaseModel): nemoretriever_parse_endpoints: Tuple[Optional[str], Optional[str]] = (None, None) nemoretriever_parse_infer_protocol: str = "" - workers_per_progress_engine: int = 5 + workers_per_progress_engine: int = 2 @model_validator(mode="before") @classmethod

F^Pm?l5+&`(0Sn+=J4}3T#nK)FWW@zJM%5>*;Q0ngW(a{?&XZG4!e=$dpd+FkWhZiEmk&D&JUL$js zSffw)qOS#tQ^)}`VyFONUyIaxVwD1+@0C8%fK)GO%AE{~zH#hn=!j zH?p*%3&sV**!r?AxEpd zUIh*TSv?NPcIoPYvr0TS+xo2kaJ`R;&z~`|RXFgtY%bt*{Prn%)c$;fFv>;^X>i+4 z6JA;xm1Z2jear(&ZB0gP0K#4Ea8-S}GY#-^fX^Ujs~{oM_zv76<+^>nx{_8~*)r&p zvm)bO&y=G#Si!YT2(EAgV!;dH@%^@!?6Dyq`84?CGLn;q-L&+bzFlaS08cWe^v18f zlC5TMw$W|-lwQ=EcCy~k?{~-n-3q8!dH-ZlDyu`4gO#;5aBcd>Z#eeIhH8OJO?7;O zv9xTh6xWo~dr(Y7Dm-28h4!41Ae4Hl3^w;LN^wTG1_Ou;aTTJ`unFFE{f3Ax?;6AC zWW-_Bqp!1;3Y*-sp>smam6a5che&x;o0e9lKtLsx*R3L8Fae&75@SJWQv)DX=19nx zI0^hinH6)VJmaffg|LSYu5^Zl*shC)pQ+cW1l8%u8?W{F%@=9y z#A_X57jym#?C!&Z!cC>0($dmN`W5QA-`>ao9Is!CufYHp(vhMl)~92wC*e8>+gUQ> z10?cJj>RvsGOZjCB$`tHY0#aSNj-pVeeveU>S`PS%h1p`04+v=47u;!`SmvIEoy_i zA@Cxl&0O_~pj^U^|H;-#hme&%#LR5zungcTTD4F&_*^KHJRuvc_$Uuh8L0?>iZvlr zh?e22>EzFBO96z_oBd!h1J$|#fS<<3rhmf^5>Yyp0%+(>FNkxpv%4iG4GjMp12&)l zl9Fn4QB;XXbR2XdvbtKpXGAD}I-F-f30mQQy%5c|9hJ z-x}$cP0&*8THiQSUPXN6JzBfy&MyAl!uU}eZHcO9mUhKjY|6uMW#HJ9k@`~}*ANUU{dFSlB6Fa6AjjCQ;- zxJ=S0;Q4bLPC7k)o?r={d|0-L{wN(&ad8;WJF2PMU|VKB5(gEPRnik+OSV=DdfY8>KJ>KQz-N3*spDIpm?TOwW0EL|No{s&q-S?3U))r?p^73r za_q+I?kh0%czM369T&BxBxA85XT7l`Cu1*g$t|NIL2!{MYgJtI5Y6(Ajr4W~h~_us zXJdbiJ0bFy|xH%W1QJ-UwC9k&e}Tp{qR4m zB(a!+jF!G$b_NDRQsWFglE(=O;EaRhXz7I;FYsyiUS~E(uwpXM&-={byA$s}Fu0jp z-yjq3;(NMUp^_waQjZ?q6Xh1`T1%YuJ6O+atSi4m}~5_FKA-$>u22a6NB7 za;Ed<_~_=>pMcl5qdM`lJ~7$U2t?*0O7qfj?7n`2#>bv0#jbvK64nB37;@cuP;;Ze zeTq9%8~)1==2>)yHcpj2Z@WWs|s;2A0DWFhqt4fsVR zT`S)Wg!O^^Pb|^&D^#Olds&+T)%+=I93Amcxx3q|{E%!_K4{)yZA47;zq(Qd#eELG zD^3eg@vdnPNZ>zTmvxhO1NqhMc4spu=9b5LHk&tN5Xe>zS}tCE3X%Z>CFhOP1ziA! z*=xE>QZU*zWVW}P2EfNXYd7eCjubBpKp|F8Rju-1*`rSkDr0=>gb?JqwX>QbOdEwj z#l;P2CBExY?2oI`B;d}q6L%Z=`Cs8(5+=Pedm7u7Din;(FDDgptlqnWOoLrZSWf=A zS1P_c2fE#IO8yOZ)t4k*W3v~$(Lc(CKb;XYgG}Hyyq(GQJEGj&-iGmccIFee+K;_A zQmuPixP6a7#B+5L&_FWfBo%8<-*~D>pq_v)4x7)=)(r}3oZ`#9Iz3AkusE$bqBsv6 z(=|43G@R%U3Je6mAcHDLwE2Zr8?Bd@SK*F?jZI!Wd+;QnBmf@2HQaTDC<{Hu7h`64 z`0(iC(MG>vt)8(ekmq^z{)(xfd__Do-bbTTe4V2lZ2}&xRE)hFaK@^J)P3dqr3`tS z_3rN0p+H`SDUq6z8ldw^-rm(wrD{l%MrO4q^7QlfJ*)>fK%iYo+b}&2H+N5=;MH#* zKl(vq9A_JUBsq?bO`-4B^bfJ*pfF2oUK%bdmx4rxeaupBefrH%A>s_YqX; zL~f7w_J0Til^DsW;AJ5~=YG&f18I_hND4R2RDsdQ$dSup5&xPAAN;Uo#;-%4wkh(~FUDZG(d?lf&D9Jd++xC1%lc&scQ~+2Mr}9MPVwNkfbgy%2S}?r>S!b+|Mrlxd(L+FLeJ zbtSKK=QVvb>M#}~y0F(c4`Ato{i^g$;YHAgfC4Vq1fTQ_)pt1G3lK_DJv&H6;VKRx zc@6l{98_9PR{)%^2cSKr4^Q=<*mKj*T{QR9ifm}oZ23w0v!DMeA^KXTg7?C50b95Q z8{KHskr+n(m-nWjP9T9C2n=n0(|N=GqUhjQHmp3ODIN{~s4(j)D+aT0|%m0!3=P9rATF!a#VGGEjjgvL#}7X@81J{0|0lc_a^xr+A9ZW;2Nx- z)fMzAJTK16Ew*B%nKGesidA@f@3c1tw{}m239lcHu3De(&D}rP^yAFEabtTX&6v;- zu8JXhJcLemDlzz?kkg0}tvx-*edX2kcV22L8nB;v@4kTZbDF&zNxo=n`+X^4H2egR`=5OEPm6fHhL$V|ATjfL-K=l8ZV#G^Q<4r@6SLWHNqz z3pcUNFVAn4i@N_XI!WB)^1M8YhVi?|3}6_5+F9^e%~=YRT^L#{rr|M>WqaV&&7M)K zbcuBIRM3qVIL%OdluY@a+l>Rn)<|{J>eC{8`#p^^J=c=*$!0#$=A^IIf=-q3@j2A- za?9eZg_L&;T06fh5P{ju&uMqa-*>-YVkevrCIh@1fI(pBcb#Iq?$gQf&?-C`yg+*!xW@9KgO9T5bKW)eM)^)SPZAa{d;;JRssPFX0q|t zcR%2#jxf+O`Wh3@P6iKGR-)mk?6%D>prA+$9F_U^2d`Bb^ESyMlE9UFCI_&Poh2^&88^8d4<`}!}R{9KMxoU%bO_BYY!p&q)q-kXe)=Cm(pwlCvuLy_^OfEihduloS(e7XBC?2qH+QlXuX||#oUVVr zy>o;7KNg(-+ltX^+UZXLb>=LKc}6A{N^)|2y`&jEL!ZM_UO|4`YzEHZl^zB3*<&Dr zJp;CY+`D%VY-!=NHd0mwFp)pm)BiJJiwnSR0tbuvpP+&tmb^d^Khorc_#|QuwmhD{ zi_gc)3s+FqwipdFo0<~NFk1rZD~Fpic`is3M}eY@s1y3}m-?fXmB$MLE`8nII!gsW z7MA$u9{``)>~<4-W{3 z?&y!c|NSQAga$|>Mioh?E1j9x0SI3Fuf0PK6KJvdbDkI5usB$KSZDsc=?UyaOvBiC zXN9(Hqo~Q6nVG%}hj+~V;2$#4w+sS0p~YBQ{B;PLs2RIr1aSku+Q1UYzA!w#Bg~tdhZgt}+w5=~w!N4XsVcn)*|m z9F93$T-^I>U(51=uS_UGZ*Oeg~-}`$hZCTIg#2n`e zbHc;Ju?{-k)kxS|@TCNm(5wMlK{oMlf0hsaKgPz14-ul@7YiIvYDa9M`9F$r%K2rjr>x2;R zIK;v^uDGQz7>^bU4Y)~;PA43MB~81W7Zj{opJnAzG!QhMAA8&kAL%nm z+u;Tx^lzDgjS-gRdH_L1XLdBh*pR{hgg5&}zF-uNxjopOZk_6zt9OWQmB0O(NH64B zo2F}HBX}ldN(8XCVKf^Ni*iw=hawV9Aw;wipsUoBgz?UylikLvrjSsPdbAIASe)f- z=jDoWV%hQ5w)XC0pip~6!Qp+j?>JS5`)bt_5gs1@2Nfm#Lg!G`nJx~VuLzW0o*D-Q z;tfbAL_>DlJBd=5(Lnkm?q+OE*qjgy*@A>h(b=4;5qI+z& z5##PWTO1v|CnE{d&wzl8QQko#>m}2k`%Qssh2{?NpMd;$o%^~Jcyt!QGv~%jlUiT& zdfq?!zVA|gyBHIXDOLs0-k`>Sy_;kY%KkJA zGSJG&DLy8K?QvYXm{)FoZBm#>KtNktM+A5oPuLtPt<|Gr(mgNHo79(`pwqzPRM|nR z6su5B6g%w_LeN34G?Gfnzoam2VA>k2IttHEESl~P#v_f&*5`oxJvI*XO85v0)wJu$ zVX%wfKLD>*GMsL(Px;&TD)Vs=;;nA?Mr_qS&uC2B0?~)y34g?U5|NUY=HzJk^9{tE zxxHNu9G8>|xy^!*(NJPMFT$M+1^6AtUp;@$BP=YdvwO?>rf+&77`L{Ot4e))(-Bp` zXR}b}o!nP?qax@yeb_q8+e)sMa2L+88B9$r1zHcHKhojh!E~Z(7d~11Bi)l!MVqr-|D%{gqbDzy^ByV)HoQzYZ_> zz^hAB)yrJEr6!{O=Wih(+L!y=BQ^t%ZmshJWA!+0ymtdLG-_Q2)VM;kR%?Nsu%gvY z7fvJVfQZluSHcb}sQ`ukHBz*J`nC~~z+u?9l?Ut+rkC^+vAQhY*5yhnEqAOs_|7tE#F1WHph8vsQ}v-b|sG;fc-&5HiB@l zfey2Zf{LT1!^kuIMzL0D2HYEL-erxZIa^764BvP3dP8ZQjMyt!T^xD3i5wUuvWYz! zfIZfh2LD$69v6MsQ8UuCUuavH*x&W+rf=Vz!N8AA6eN@1ULqD@(Em$d+NI)yDBUWl zrgW+8SUgt7LS+NlU3}}u|C%DcXN`iK5?TlRYlN_{(XlbWMu&fm)vh%v_30oiEGz^h z;@DaE9VyH0=1?PI?+!hK0eU%9$ElI-p4jQuVAC{S$7j0DsX``Vufttd_NgY1iDwHp zK$-FdgP|d!+R1=)2-u&-qMj}haHx<#WZd9-ljKGkZ>brd@02f{@sd+~u1F?8o0Jqd zC@D8mo?4BDE&12gfmheYZpOCHR^Bsdb+xoD*w}15ovcT6tgyNKoNbwHYeV~?ti|XC z#@nacrhpx>@nPP((|q2?3dpicl9>3MwKioyOzL^eW|LrQNGdVgHydiSaNF_TO+K3e z=zLQ`Lc%pQP_lh0?matj8w1SK7~4M@eNA&;=^jADP({1~_8r)L>AH&V?itX%2H4jo z8X9jVIt5;d88O5F%-(}qG3HoBu&^-tQM_!LJIBrtg2{pn(jCVxXkv^QjlhS_t<}rHv5b@pEcavC8DXQ zwAewH>|t1V{$O1VpLFs8j(F0RaJ#Do6`eARr*Usq~hph&1USO+Z0<3B8376#?neYXIpG z2sN}2ayJUR=e_IuTfck%xLK^l%9H1L_UzfSXFhvo_U!2vN4%p#eIo1T+WWJ0y^CV) zQ@Z7}QMwYuHCA?L0NWq&F2Qk3fD`G2dcqnaIUuL{k`uy_jMLSDOs zbN%VgInVV~l0?NlCcm#TswUlviYl?*45d5w{Q2{{;^GeLwDu*M!Eyq|!~LFk&krE} z%sg1mDq#H@LoW4<@Zlq``Jxi^ts3(EZ;+qK8XI?j#$Yg{cP+O~OLmvFvtFXVWvL#n zWhYi6Lx@~v_C@}z(x&ZjX1M>i2BS*?^POonBe?^D4fNq=lKET4bF1IJUGw=8mKdqw zlK46&@%OfZd%>w4mgd9W7BMQ!vQKaul9;V|My0rECbdV++LJ}9U2s$@SbMnM!IjO~sF*iuG0AWPEjVGp=uSv!`7Z(@l!4C(pkEg^EES)5g;* ze2$-JPr9qUfza|-J z<~=HhPo%eMare)c>KJl)a+;H8F5_IH^~}7ViZ^rS>SI7{6}z?OB zt7ar38$Us_zJ9%Ls$y8Bqobmt^8C4?n{KSXTZN~;0v!G_At9&Ey#O3}96n=0}n3y^DxT=dMG* zo~9U2tu!dsxnYr?KjYN;lKxNT&}_CJ(sVzGq2CJ&zC}dXczE9b9R6+mx~C)gj)t49 z%ePK%dkj+}d2BORkjhuZa%OMsOLh9oK`p9ogs0;)1;)a=n#Xg%`%3D@)ZVl7<)0D~ zR0INiv#%wV)<-UFcC?$&7kP5=zVnIH;ap|p$y3GtCE3Vko?8eM_e@>*9$)Y}!riVa zL3?|<?{ig> z6&Q3szXm>=K9%^J@J6cUTek#|?*0@@$s%?;Z@+*44)-R0N=sYpuf&D>u~-g3s&v{} zs3dp3A(BY0_wIfESnKDyII`9h#HT5tsiyWpJM|IDzBV(wwud2DP!p|}r4tz)P5Rkz z*6;jf1HOV0B*spiGy42hNIvnEmTf)OHBTR7yg@dM-^34TxeCT~*FG@6wRz7EipE ze}4V^*&|h+60>a@z2oBXw2~)5mA1O(im9S}`#Ziwn((ua>IZVV=tnO0kJmXSsL zAdE~#p@?sS6Gl7{H3KI0L+P!%o1=yHO9QDxUByXWYm1eaFUNIsv`X$gPI8v3)XwqV zMv%Ry2*UeJ2BstxInnzNhH^?0n+e`NE8%6@HuUl(!F*U8TSY=wIvTZ@J^*yf19*!13vVs97so>B0hY7(`75{i;&3h=RI!_3(zJN^**`P>g@oZ zs1H81u{2a5<&%io%zcECfIxO@F1zY8(l{7ue|)qu)|i8y-`L9PY*^Zh-^L?j^ky&G zw;NWVUnR&#V>7yOjJFI&mp38V$o%%dse`^}hVCWxRxds@?i1-ty5yZo3ku>iHPfE) zC8%=aScsuX*{rl`QzvNY=`kz4C<{|l#@nY6(^-f)LNxZQ#Fgz7{}LPOM^m*2kXfaW zJj+R)b@#y#NNKBF1B(=?)ZX>^0W3~$bL@dajT7L*%}(aK&{f+f7<^ zHO?S?vZXQ7POrRZllpi2FXppg3B8MhB`(WSI0_2#D29da2G?De1sN9=6(`MoJ>X-L zIk%9M66kM;MC>%O!?CNLpxP4i(>n)9ajIe#CR&2bY`xI;g_<*a-%bZJ@VD?cJby=T z1kd}r7%H**p}f405V}SX9!(T8`Z9PPOil;W8AMjW5#B5f@PT$$J>Ebh6*k`K!dJAi zO=!N%Q#s&LrgBsp?;$eH7K9#dGs`^3dFUn6oF3%N4l=YT)MZjTbg|xB`xHtDg16?(Z965w_VwS@`PnNuGSupSvPOCyyP14cgB|Vz*dZ9>jgn$6~+oA@42y4C}XoKCQsFYSS==pObH)E|@ZXO)uQ z<4P|?Rv>@sp(l;YTkqQ#kY%ez^7N&^M-b`9GX}J2-Iij)IDzl!_tz zK|sfV?=Wqi+~QCC^c;SE;r?$rUx0nTlZ$Y z#WtvJeCp@)!t;aMt5Q^2X4{+jPA{)L>%dvtzvhCR@%<``JiAP2Yi)LQ`JM89>>e|e z-9ugJEnA-U!~&PCbWYd1OUiBezbF0Jo9k)mJTUZj2Z~+iCwe7-GogH`%BJ&sCy$@% zdwaT`NrjfUHTsA*RI`t!vWpzoE|N-WD*DH!eo8nm{GGUX{}UfVmo7OfyUX&1iF%Ia zgdZXF^x4V|DM}VGI>wlr<_e?SMn#4%wHV6W*t(@&%`h|fCU>2Zeh>i7dVkki z?Ws7K(ZdsJJ%~!?-B{bWKpi>IeGOv!b@>l1OJgs`FMXlI;+6f6zqfLqKKoa7M|se9 z&tz}OwT(iLM7-Q+tQS9NZAoVX-6Ch?LNy123%ze}OBg}xejQf}fp3T3u5t4VtETx-q{w+e(=p1Z=`c5BAUW8eAn^@ zE0j~!aZZDrsT8=9cmihW&a<8ObtYDQMURs67x~gH;N>QXF&U^BKhFVS`yuClB=`v^ zIvaf**?t{eWZF&YX$KAJjCt9se->S?vzR z4zZ?k40l_62Dg=^o7&NRx9DeB z4YmnJgBx;OTa|pY-W9otWrMK7(YCt>mnPo{3$(T)^7nlQuIsx*J+ z;%6W_FZBa<>$4(;K5A*M)~$D!w0PPxPvNKa@ZXds`hd3JQ+16T*u{q0fS#QV3Z&Sa z^N=1Wfqt}PqKv>Z&Rf*J{R>i$S_pc5%AyDEf|%WSN#P4kOSrZlsulQXT~#S+yPF z?^^$88EWWRTido-x)M~EqMgN3>A9M^Ib7vD11}z^b|>N`U_+|Ow>!H?tmT9Fp2|E_ zPP3hf%l8WalG%`Yu;ZQEq0ERo25 zj&*q!8!1*|on)luByHg_zAl0=a*&lJ>{b%TYP;Aa;Y*r2^yoShPFLl8p~p-4i;Tjj z7yHnugt?zI7J=ulQ$0+$X*wU9+-t`l*Q)57l7v}`>hMXBdCem3zR^Tep47ciE-~W0 z+|PqXUAvYR|8SZjL%D*y@vN@y4WlUPLh6cTOWcpJ&%?W~n2D5yID1sQO z_|x?#Ihkx!BO=che$;HsJ0aT^6|Z)4^EIyuVn+Dk{odulc50HA4K=k~ z(YLPiOnebz?_FCf#2ewi8oG;4sTh4!vlJ8#^XWPa_OaiLd$@hl_Yb%Pr1R#DC!^t) zeD8nM&Z#jdQq0o^+W_bo6(ji4^)vc~t<}i)p^Dd2x7|E-b?VpGpKd;Njcmq2>aVjU zt19e}klqlGu`lz$V)O?`#F)3ATOkuquCpL<>eoc@#*;sv||?DYMQo|G|bzJ ztAdOAvZXcyxdu$`f=W6LomPS;W$Tjg_T|BhddA}6!CxhJJRT)nR2C}@5K3sB$`1&Q znISN7Nbpxa^HHOI)`P=h4T_5#Wv^Ak!vIdG1k@V2k3&Eso8!50hy{^~g%~6DV6eq2 znuHB>-q(LN&M=xann;b&oms{p1v&GL&m*vutBm#U#gmib&|^7f5U8$ZR8kyG&!;c+ zO4?@TQzZc*wzP%_a(FE6a^7cG4RbdyPRZ%e#9TQfUmgjBN7W?r1O+7WeT zYKmgYfm^`6o2U0?$$k5LURPzNE0Dh$vu4I=n$JUbKARLeS@qolIunR8t9S8k{)4MH zijxLwOzc4BOVr(Ly~eYH^-qB3-sM;{&3*~sw4w-2^xEvI3mp|p8y2iA(TIzznoj$h z8V5^ix`>#P0Q17;0(G`}4ygRNH^k~$!q6JIsUpr8Q{YGrKOt|Lu6zmJn)=$nke-n0 z@UD-l+DVYXw-4hu?q7szts-yGWVDm3e{QPS=~YzBDk>Ezn6X1QitavJqD@pG{(#Xa z8HszW+FDJ*vWI=q9bH*W0z1Ev!`PqJ(V*tnl!@Fs|Mwz@D>ts)M1J@@)CEg}CI%~g z=jON__YlY(NnEsS-)aD>N=UY|`|^4q}S zr?dHZg`!Ywz0~WXc2eqv{+ATrHqv*=07VgnKK_&7(^e1rJAC(R3ivytZ`Pc+mE_Yv z$t2DRv6#4k+a}htr!$E@t9l^Q|0&$(LWBmAydd+WC9Fm=Zxm{ByO-+Ro#ZeB+nfI1 zrG9KnC3A5j?kg6K4v!Q04K|&$qLUI&TXh>^!&8Z3YF2%$r#!uhiev$uz zh|{jE!PjWPC{%$?l1gP4Mt%JNaebD$5CJtxAg2*lqWFD)3{*_coVPA*!nQgqjM_tr ztcLP|CA9mSVK@!e%-Xl-qLiFJN~&<_dzt!$u-i<~cmvenW?jSxY)}XO?GLml-<}mI zpsP?W(jCAK$m)u)T6SHA`JH9dX zlzSB_Z<`Rhh@y;bo&MsD!u}XId2&luFrXiVkAbCqv%a|Tv#%M{u9DF$K;cx_I_Om8h7KJMh&ey(5g!#617j+!~=4=u3^#gNw&+L6%%EimFE35&X_ItTZTRrR~Uy8j9?+wM41)_xgM>@m2ZwhIC4V~iP@f7o9bV}m@0 zD9csAj`J|wM*nS%2be7!k;#B0W zC;Emchp(KKy6OlMM4Yj|Z1PNt{_+D-*jObJqv;`5{H{a&{MXvRz@S`JR>V#vZ=&cz zf2BO_>d1SY_9QXPaxqdRIY5gmI!{kd(u;hK)dBhH>({?DG9>qwNjTv>4}PB3+S-XP z#Po7Y_?(;ra9xr&cZ1kXR8DRY#ob1+PL&5e>3QeVE1OuL5Wm&vn=!RD5%G?%xOb1# zDTer7O?_dr#Obf-@KFV+M#+(_PKQ;`++7ik&ZKBh(WWuJ>muznX@(D#LPeZCIxG0o zsIz;%8~adDEjW1Rs@n+J?kt96MH;&Q6rpyX3a$i2H;oWwV-wqsz_B4oT4khG&*_E~ zxscN7EyzTiD*gKG;5Gu;!pX%|7P7pSUFxcuP_@p(f z=qeJ)YaT?)P}eZE6qAC3dHg-g%WECbzDG(J@Lg%`~Lm-~nFM{XjsOL~CPf zqDP;18WO(OK_nbME_3bLolK{RMvaV^8)QySkvfwyQ0m^*wY)Q?rRWJLiSzr6fLA`p z^QeZg!%m_wJ-sRdC;;UQ!YG#%&*|mW!`Tm#3_dh5g{LGnh82!B=J-s8+oxzXzDiu3 zF2fjUaqhu$)%^DY1Iw^D|57z2-#;n1Xam8d5I#*sL+vVDzP(h<2>}i;^7d%X#pX0@ z_q>uX+x3j<^&Ndztc2O*@)d?s55nO2X6@V?%z3wiOC@>@LKNu&Z)F@*6#T&8`0ec; zmR=?=irvFs`#PkE{U<9jsir%TlhYll2Ki`+z)UW2jd+N}u5Z3`jN9PVu0~f6mRb?O z%)Ty{>dz6~@64d; zN@dDx0gX4fLzUJxC!Ypl&%!OI#YHMBRV9gELtvg4E=0Dy4~CVRlh*iZE)G)U zc;fhO(D^q4g@xwD?mh8@nTZMDA5-cRfnny#zkQmFh=^E<$y+9@SdHB1#P=M+e@^+9 z*(DZU)r~MIBY(N;t|ifQ8fi1^om+MyD;56VX~ds&ngl$ERFHi1EFm-6WY_aT_1#g` zRi!7(F%cR!!r`k}87n%=%~w7?$0glng0DBjceaX=w{G1k6}789^%GPpXS)3XDF@pN zl$94`7WUY3Bzw!IX`i1R!fhkk;|VPbs3pYuTIdLU_{Z{dZWD`}6TH{Dss4&5wd_}- z-kd+syZuoRVPPHjI8Xz2&uVI6(3VX|BFk8}z=z8EX4Km_uZH(JMwT6So64?=O*tLR zQPF1VLuhmC!!+ao_#J!EbjJkNUG*TRC->0`x;W=x);ukq{m&g?|K|>rf4QdK96D-_ zaY+XrI;Wx!5hrLk6Im&5>lJZgzJObmO4uUiu@Z}Ye(4zB!TiXSV0d#q*pFop2C&xKMy# z65lHC;^;^?d%9@5pl3U^D5PQ=^GnrdGTRHu!qE00=LFIJDT+JI;z^kewN=I!WY>(* zfP}z>@Rr<#V2qtcR#dISWi{XOzMbZf`NkRyrJ`&PoOypu=;2~7C1o6LcQ(h~U|rNf zb@Riq(QGtnXelOt*DOylt=HPQjOU@u>e|`et#Hl!q8WKJ=4ab|8X{g#=@8=k zBK5(gVu04U{bj9CR;v9Vdg*ab${)O9){H@EO&Cf5G|vW|1300CA-ENnt$ptL^}iae z8tDbHFMhHoPJrs$d1@TChOua^Z3|OA)@Y$3PqNf+e~I&OYkrV*=p5Qv-b0R#J?{B{ zI#F}G?}`{Z1|EjU3ssYq$?52(T5WG?%^4g5rBiK8UUPYAYM;>B#+nrghbeH0dc1Mj~n#AWKB=!_UW9Zg$rsrnLYDiAMRP`ykw-&<@*fx zAriOy9iILYai$lvJ@4L7vHU1<7qHM#f0;!i*Y5Eoy*wtP_^edok2L8a1jx^BD9cNP zozB-8H58vllj1Wn{KQW!brxb5GFV+*9g7>re!c6?8{jq^rVXkqGMVBtf}`9v1XP`E zM|-QDecQ_7no4uhP3^fs#Gm!+>B`a1I3_uIwZW9hE=C@5RafWfqs?QGzRJ|TeLS;$#}@}+AT zKSitLsBx@&zzpFv&Pu8N%f&O}_Sq)-vt6l5?e>Xa#VUJE;>uiu7A`^qigL2;%koax zK8q>oQ9nh%2|oXRFQ^XcGO?gD+Lk{H9a3!1Pt+4~*yx}i9bEc*pCxL2-3zqN_-d+B z24(aM413B&+Kch6)5(Y}xiqLqVZprV{5O8AXsM*r`ZtSFucZaO_m6w8ZuJaX(#~Cd>d5G#M1DR*#Vo!uR3^zF%8Y2#p&rf_DKg!CIpM9BH0YgBfdkV0EJgtx zo3EYqhH~DOygszIS&!Pd(_2WBk!|rIOO2zc4z=I=7dcr2ob#Y^AB0i3irn!iO&`oZ zfCVbUxH(14dIgFbLN9OkwTW|P(X&=K?2LF*wACkZ-{6Apjgrs&Mfu$AC#6ZS+9s>$ zYMrancDBJhuCCeJyZS<;#`EWE%I00-<)iaUGm(jr#GY}pxyy0z8VQ~Jxyt3{CBUkg z7NTX-R>zR*LfJ-&1i4B7#LoKN=Xcqz6HGRFnPKZY(()mooNq9zc&?UHl>aVB6_alF66QWGnBmzi5FX{ zrBCwYx^``rbTaw9n1c_#qedLHG1nn01H57ee4mjPeJXO1R(OhJ0|kYu?Jo`rYLD;T zhd!ULbE4*te~7W&A|SEE+~i1eumqenw$m@Ynb0~)u2}64(16_fpc-nQD9S+_xbXh{ zb#Cp;!Rchrg_mT{pMpVkohZ+k!mECFNxR(F0FQW}b`IKZJl20%Ee+~EJ~;;p zCV-g>+V~_{iE>|{1QWb9G}E91 zIrSfh3v5xGkUtMY z!;3@9`%(omX6R|F1s#mtEENXI!JHk>oiT#XhZA82>%9ijGPGx8^*nZJH%HvBT(N4a z4s8f#+L&3}&J)hKTPxytD*kM;|U1w&U2FpiCk2gn1S}euuMo;g* zIu3ed?QKg!`uJOR&lBwhnLVxW8wXd&)!5tl&qh_ zDFrjWaoF)D7A5zsFAg|QhP?#y%9^^T#C4O`afEz_PZFaV%G;Hp;z7cmJn8HEj>nlTJA_ zwqy1cAEtrTUsd5QYw}~EgcG~ol3VLJKf=Z`SQ0D2hV4zsy%gyoZ6AttajzToCS@}6 zvNd~c6r5RBcKWh_Hw$Nx7!8joDU!!r$soNULOxYnlGJ~Kd9VzChYtf!?6F1LLu-ogApIbgxoZs~|0t=XDSN&f5^&lyOeucd52|gL6?dhuZ-WuCWyJ9LbGeKj2OBNlW zl7Z_<#f3?oh?f%@sI*w(cBm;H!wQ4r2I@@aIxAEC0U+Mk+_a(XxF>U8`ju+T+(6cG zKGjfTpB)^bs*~r6)XTKQw-)VnBHXfCz}F#{JzBOm7j-;4ppw-qn`3P~Jg$pT_H~d# z^Q?I4?bqGks$kUgB%`g=8CUtrI0XHwMRBoPzK-)(p!G>5F zN*0OULYR#W*$V6@)IknCxp}E%5LELW(2_F#xq)#}Wf3k?Zl0Y_PGQUV#3JGHbr4cz z-}NrY>TC?fi#|>OrdjFw9*Sqa%iXy$Y{*dzwNsIz_8g-RlEa8 z!ytE^YKyn-hVblDKTQmlOQ})y7{@4X-e*T zhM|`;p2FM1iCOr$!s8cYP(TMhuxzui?MD4TMOn-pOo;b)nZ=wQOHy0)K&-)eSiR1m zbZ@2W*V&(jNi6&s?Lzkb|L}`k&xJ3)F)A0b>K_BL_`RNb)QfCdX(|guXKj9=GlN~V z0lu{@41%VT`Fdi`UoY|TwNpuKcbXKsxmC!&_Jc3a=|Cc4k}>2T;lQrH4^{m;yjEV- zUtzxPb{Z69tSipft#@v0y#DqH9O^z0k~>S3NI-tnzVzs%_a?X zP~8QPYYUfp>HoxH#>sj#{n3*Nkp0PHRM~47!?>?fttE)*nLs}RE7p_m$H9K>&g_cc zQn>`ax6-uudp!juv(;!>sa#%fW)CDqlZz0e0kg^IZ)M^Y;3j4bAfqI_Nxq2WJMPoX zvPur-4-*P>Z-AxSb|e*+xaG51El!T?WXY+TZuB$Ptl-U7apm07=Abn%mX!e&xRnyp zu?8@tfNbf;1+FMX>JF>Y{WfwXH7niSiIgDoc{bBol^!i2#?JS7bd#+;)7)x^%VRwD z=gc_ojYoxp1Erb^Ta8`4M#iZflk+J{eL0@xZOk&0W8tQz^5@iZdLW&}HW|(daMu3v zjPi_`8fkeiZ?v@Zt0lB!Q&0U}R|$z5w`KC60sb)=@^a?ABPaayWds*TDy8Qnf*D>X z2cgu?Yjp3vdR3={*j<@1l6f*Q%>(wE7ycYG@6wWV;4x>vAp%OBY)@pDLdNmay{R@0 z^5!b!QQVThg0Xr>TK0{LzR)WW7CfH5t22*L>8%_HBco9IEm`{#E9uO(VWL-`RXmga z@Y3Q=g9;Vc$}Q&jNJpREnfx&obRhs0=Elz>Epr!(m7N@5XDzGA*3JnvtkE$p{PGXP zJV;h1FeopywW&GWN$N}5t5$QzfR5Sec|8yR4<3KiQfzLnu9xWE0JsQ&A2!7%#kkI? z7-8&*T~CD0W6}^$AENGXICpE3ksGJE(vRjSY=m{>4_=_+nK=V3Ex*@mtv3$J$c2Yk8TMIBUXx%^SEz- z8rgZ;S0P>LZ%3DLy?pdMU^@=WkBo*FBjQ|40>XTw*w)sa3MpNZRe8v0nQ0#tw>Izv zp`C{n5RyjJE6Y!jNtg&Envg^~B}wB6-`w+&Ff^Ph1BRGIbb7XoG;1CXa9gLqE!k^) zk_giDC~ar3OWY}XR@+rL)7dHDg+?dH3W0#? z#*WSGD9UqTdn;`0^LIJwjJBla##XxUnCWVV+YAn~26u<~NYzkp7@GV2c$hC9P1%1zwaA*A(~Ql{Vn~4 zNJEdsJmC6c?)YaHnTRrNuPe2~b~+JGWe)Q2i=^3xc_fmeoi!rgP@^_k-&zme5o6!{ zUPyEPt8{ZsHk4EL(}#kBua}4Eth;V`tgI#zHx{PnezJHZ5$=Y249GZOnt#-Sb(ZPGoeqVVoA!om9rw^BsLgEwK z>tG;Bh9(?L!jMHha<#dS|2Ot)8;b)3U7l3!^i`K^N%9 z8q1%F7!`BC5CHfDiSkru&baa1|kZnjY*t6=O*fF;EsLk*F1;lL+|B~m$C_vxi} zM1@Su{e0)?UbS9^ae+N-z9g`FF<1`i_?dIageS#q_lzqwm%YE^p03)S-y6I7aAEteR6p;%#R%?E z7G}Eb5gcC>cC~d=a$|mEJLWuQdU|RmNrKT+!oIse{~c+!Stlq)nMJHfJ|^T$+Uo2| zEYL)Kj=aDIZ_Eu`huFRXS?(Kth}@>C=Zp26G;;Ke=Q7%p^mn@WT!%&Thhu@RTCBxT9VE>Z}W+5{ve~kiZ>{9@Q*_&9aD$MXv zdy&F{+@Z0kC!_r{m=Q7L!nRTEEQjeSm(2a%*y;_q2Ou+DPG903_j+3)ik`Evw~R~5 zV`h?0`1RTiLZK#_Ty%+IC5)m44l4E|j(q6trZrVhkBS(|h@?0|lm6O>*UF<(MJ+Ym z3d@1^nF-#^C`AVcq<%y2xih)!5Qpl`pZhByS9Zt#?T{oVly(kkFz3V$0pD4O#?K4i z%egBncqy>9CbDkrGa8sgBJTQTtE;)m-;Hx=s}wV%dpt zbzSU1N&Ipz-*et~*9u)^rW^R@hSOsGXuj9na$#)H+~pI*4JR+H%xJI?o&E&{Izz#KNzs5H zdJt8-m*`l`nVpO*SDw#I*d=-8Y{&suWHJ{SoUmF2LYqCl|A6?;1BC}`8_$u0Lnm-2 zb#Gi8dN+B=OH&jUP5wpFhu(?-l#;Xcs7u$oMUcMB)?;7=M9PI>VD2`9bGgc5_J$#N zXiFHEbcZK6y1L_1QCEaro!Sty3p|aJ!xdCuitnX(k|s;v?d%*S>&5sB9(D`^QtE zdD`Ss8>F}d7w)u?QF0PYlybhWdBAtS=@*fl&mA43V>oHg;F7g_#Z4w6fxld=Tyg(L z@F|G2k^3+V`^69N_5Z^M|NqFfuZf}+6c;De(Hl7(I_!@<4H$$=XQZX^=#_8?3KFJb zjPjoli_Drg76vA!rmjP1*j3h7Rtk+C{38F@v8SmEu_^U+b-~PH8xx_D`Cgueh9isR zqa#ITO1Q4|btjxpno>-5&wQb2gI+T4qoQk)lB4jRgCJ^VrCcb>;>?Ui#+Sv|lro1= z32ts&{1B*cBy8JX@N7aZQAOBp@HVcVfa_xnt`DGLe}^wKYkqe|{va6i0#4fL`A$m^ z1?~5OiYd*_Hfz(ZlDo^bvmL3Xrlx!b70V07?eDOymbd2#I~hqH+2D+aii-ZKF<+tsVJ&CTF=F_HZ*Vq*FkU2_Bv3wr1f*cTexYVPXly8i_nxv;zI zrJYw;3HoMaWaNAQ=fZvK1W{Imhk014$4o~T9TTIYrly886wlByP>POGY^<1?*oJf2y^Aor*H{gLwn3^L%%fS+bnGyiNs7M$~0NcVlj0pg51Q+3v93 zL&MdLQ@`c)MbrPIxs;g*y9X;=@9#uXdQB~GahVDM-+mAbRFQ;z7u=flz8GRKo05e; z$bw`;-~-_~zvsCLieu)6ZNFwt3!R;mp2D%Lo>c$X+p27(;s%FW1o{ z3g8hnTds@L=If((Jr2^vf4^u^)=ZAvY6?5Z!~gY~A3@gKy_ZQxeFz7Acxl*e(StwC z1<=$lY@4+>dguaZ`+s`q<9FR_pp#$I3^jWXlk!f4r-&XG*s-ho-wAx2*n#YuO@t`~ zTkI1h`J1y$0kl2Tv$CahxT?&S+20cS;_Ci8Tw{vpaBty9-P!NtJ-+NbgDMm)?l4#D zvmYxRV4p@DWmylA#`^)MbJI3S>nu_gk;LbhF&}_IW>-;BZ11+}%bkp6V zK1}SlkIpPhfo8rwEO7Gl22@ji3=b9hq-7Ncu*0v9JOsSJL)}gxr}NffB7X=N(bIq{ zVRBg?{|A!fO1OBA$p6Lp%Os&s>K%tP`R%{*h^7-qH2M6dN$6YE0XTVj^N=8QE8YKU zsCVQ+9&}&zo(PUOjAv8I9#Ey7CaB-SR@`_b`uSk)y@r^E`&()Os$a-uQBw~diqOqp zf^}oM7h0C0WplKPfpWi#b?GKxW-V}8|7F9M{l)U>(OlvFJtmAryl?OE9rFGS;C-NS z-LPJh_HC|U|4R>#q)#dv78swDv^O5a2f!I)Dt*tJ3e-V87p8}Hn2%kZofmoZqT=Is zR-5^Biby{`N=uT~BXe?WfNgDw6DS?jbGu4}m{NlgGfC`dKVr}&v5iAp96zMR1(F4d zfqLz!c3-fndm&Ck6iCLH&;G$|I_qLO}M85!laU1mB+O$Y>;Ay(wUNi*Gl{P0Dv1o2F3rx&#KgyQK|X%`7z(WM zaHV51VsHDo(H&6v5u|oVJXNU_&hOW~0r7~giSM)JLB`W_LiEzKW!{>b68K7^>P)hv zdV2pkTROfD1*AvnGO2FyU02n?G+F!7bzRb7nxGho)*fvxlFo!)v;N>jt! zt>*Gjot{UJmXR?bENpo?!6D=lKLi}WEFl3OEU}s@qhgiVt)-H5a(3q7;;JI=5oKjk zJO2Fh&$q0S@Gq}Ug5l>9OZW5h1BYR8MbqWesfkZ1g!os?8|1jR%BAv4N@Dh@&G*ou zR-e=C!D!|zEZBl=uX|Yo)1asd$khTUcc0;=g}QI$OqI7u*-|BXJoLRR;HNzD=;wVD z(MwiRBQdIi<9wzfA}*BbwaUM2?Wy29EeO`HW$=0cuJpc78~trP?DsKo82}2TYo>=_bd>gv`^es}gXiwsSFpIe?^cR{|ih~dt!L{O)@|#M6k8Nb-(;mQf-kZewG zp#K+{qj~?Dwg;b!&h#i90lc{oR$0;+lt7G9{JOW)(do0iFTxDV&fY0hjcf9hx%Z(fkK$&q#4zY2@*Q02=G zE;zDPZvo$cS>*XI>i4NE{I6U7!`dUZ{)@`jM}6GyI~d&yfTxs4uwnmV12)Yz=*Y(H zGqkvER)@R0jrY?#HSV6TZ{fdredljLC0#_-R zmk5*1OHsEzGD(!ufIoGB35;FYCI9>VEqQ6SN~xXy={K+w_`tWaqI8_uJpbt`015a& zAUT7v+G%D-j5`NNijGyBl_eoI@PY~+`#1pGZ(32--0>LM7U8iT`1z= ze*WYUorszCHGgPq!KFLAF-p*dAAGM0njVIiS?al1zR}i#=Kctr3goEegr3QHD0YTt zU`k27jI(ilG{W{f0$tnx-fer{Q+?oI zX1@skN46)(P?Nd;@Pax-wnvGO(pw!rcmIs8R~} zLIoFOr<}4L@*jY@7yEAv3V<`m9`=S~idPn|^$vODDq&z?Kozmm1wz0Eyod!;)-Ih;>h+ZQ4;v|mYU)MDkNzN! z)yc*a6qE*Qxc0kiEfkVlU!?sgv2fy|(e5}sADjdV&Uxc2XV#;I8M5h1r+XgKLphGf z=dgOHzEm+00un}Bk;!+SjRTW-F&yo=$s*?R(0j#~-q1f~HtH06VDhlE=bM$y;?AuX`DI5&vPHkff(x8p`$pt=N{!!Mj zKN&XxdrA2qVmVTYhUM?uKea!c(9xnvqP$@yA&Z_%PpBc}Ibc0-dGaAl1H~4h{DFF~XxadMFTWumh|K{iXeD)GC{VZp^ zN=9*2RXn+%U35NsaMh(5vgne)m`mv*{!c&T!3F0~L72iHW_vFlW91d&mtTB1A*`!> zL-FyATdy1t!44CYtP)f}<+vnU0|i{K06HFLE3oGT0BigAB@x%eQWf7R(R^S+e$#ZV4E7A)j=S?I4v zlTD|}?BV-tHhOz5mf!h-$f1*PUw`Rb^3{s5s(7pQKWIFCX9|4Q)7>(Xo(G`e*VXgm zf1oqtQV)SZs!U+Ex+Fd$qBAI7WaD6kx^D&q&!pUwnU!sQKQC*R@-HQ=e#s94b+iFO z$WTfj9dKZ2-vY%a_vMA5CeNLtK7u!ggNFePiqPlHy#J+c(Xid7$IIv{eaWe}&V!(N*W-zc$P)+f}OzO|y!&0n2vF+Fx zwmMxo`RzzM1KTSH3{UNmd3ZysbyX#%)9PcBokrRtEcqI3xgH-t3!=p2rpR(Z86W zJ5{H_w>Q#$GO7hv+ugFd}5$E;^yoSsj8n&Zkh-`Crd zM0aqmI<5u1KB(kikKWdSFX)Vv;$Y>i!|#UVG^rm%OgZqW#nU(f0F_RKj|Ve#OAS7rL+Cp5W~!A+N5 z7R?Zc4w_ywn5ELmDk&uu^={7*6rE}9E zEiJiGL`pT*+M%&Vd@NT6^98ZZRBu1LeD z7&Z<>_Phr{JSj0Bk5bg-pl>%2fm%WYKk)|xpG^O4Fd^W?=wtjVPDC5 z;2HMIFwb7rX|=)zG60Mr3gRx4vs{oZJQ(TsaEMVL9?5BuY0o1u(v{uk?-w1FBa4e{ zD;oGSxS1Ib{4%^W9K0|Wv?;PN5*{{YM`~o2AT2nm&w&sV)l)HK(7{bHb3U7d_%DHi zQE4&=1pLs0NGXvWCt|i&^xtDZD;yF1vv=q5oHr6o<*nxszwHMMHJfiEfx1e4Q~45h zMVc|PA~it?^TA2t??LWO?<|T1V3f!YA1%en(f1;u5)uN8Sa*5k6;X;&G!jbwuoer!KU!u9`RPp< z4x%zyb+6-e$_}t2J{kK-7}+sWT!ARLmOMnc3cXI1{DuiXo`M#e)NZlzZM^STV@LHz zj>I-$I&#IoB_o5nD**G4MlMDkO6n|E2;SZ&%wOoY{&i>EiZu27KX38xQIZxu@Y7P1 z#<-~LC+CGMhBKpBPpkH}_Pz08-ax*F{29Z1ZEfw%Kta7yzY7=W!7J~svlYZB=eq?X z@iXtQ7cWM_k5q;;Rbm*C{WQ#3Nf8+rC*r#EduV7VF;Lift{1_VX5!G5%9$2}MN8mO z>@OONxXgDk5U6Qsxvxi!9vp2~X={rof(GaNt{5^Vik8AiiX7Yg>T8l+9=Rw=n7`SS z+hRgaYm+ZdosD&#Pj9I_+US%;j}ykFb(_W=OwtG55ON-M+xC4NOcN+_v~yPY_X|$x zZYvi+vQWK3&whDS;uMbCF=S&r<|{8KaUR3;DI9hAh7zVgaSl;*z3-90@|VPZbFHm! z4rNRG;7kzy$4xy1H}%VUyFhA63hU7wKWdkoieq*RZH%m`l7Rg`?IqjbRma)onUdW+ zBV>Q&8WvV$_>g~Oib=ZS9G_3{5xw{M%hQIJu|U&> z!*95`9YRNKtwi%0rA&K=cIZQNIj2Jo)ibaT9gObwO>|0U&x2c2F-(q+SM6B_M^ zv58)fH8)E@gFn>cpIKR1%*@R1TS^32IvwC=CXvdSu2-V-lapzC?Uzd1w$2FkI@%t+ zHM6i_Id^iz(vV470dZ3s7v$M`#U^(aS4~G>l7%@-z8kw~k*?VMJtXp;AmwZ|o^l8; z9D*Ij=3j1}6nWDYyxZa9SM|(mzsKqtVD6wZqkf=}LodoPM!<2oD_!C2#T$apfB%9! zrdGDH2y|EgF4kQkE*2hfk|YBM~fX*FO$mcZ|AfwT&p5n{*Nb{cHCENHCpMm&w3aqyz%iO z>R?4VbMtrIMgK;OPdke4ALSDk&Z&IS(9lpw6cZDyaXF}|-rz`5>5S*S+}?s@bpq=a zOLYl)IyxyZmrD*VuC7Dtg2+N%d5!V5!@(sLIPW$1)0VC zGH_ER=cYp|?%iQW3XtyVrW1a5`_6+p_Y99w47J#AO^uCJEuWND`pWtiH5_-U6y~Ra zDR%oo?{iZ33l2A;9p2n^=Q%wnvzf4#q5ux$+*TPP)L6HeLm`qy6tGvav)oGW@p!Mw zer5`;TCWZ})R!t>r#;@Xu&UbLa>+g1_gDZA50~(;6cc5~ce9Jxi^~N$W;;thmec*% z-@b@GY&o9)FdUJ8wX;xDEtp0;_>1L8L81zYwo}8FIob*rn^i0AbEaP0eG-7Xp?0r3J! z3rP#d6(NvTjh#q;tqt!o`@`S)z6O^0lkIt}evQT8gxWidJkQrRqD1Ukyrp_=3}a+c z2bU~I%KKq!{mw)mWsdS52i)=BZU%R#L}^zdAs+WfQZA-C zqR_${Ki*aUOJwVqRkEn;+hN ztmfWGFoMJsV(2BWc$ZIfAy343=t3YG{%{3&BStVLjQ>E1^M%+n8Gi+X-rgnLN~oo- zyFg3%;Dt0ye{ui9BOZR_I)7f@M4AK^Z6-_@_Y{yi)mNR#I*Gb$j6ZAa*HKl|J>VpF zdd2^GELS*7@Ai>Jo8w=XI%)Mig*aiB5|^<1{4&;$03sz^Wzj&7c`;hdq`rc;YlN_* zcro~6H7gA7X>*)9{s(E57l=#$lKAJ%Y9y}mPzE0q<2!ueE?(qjl7>0<((1Y(y{n*m z-Qg?>p5F-1k0-T1jj_Bx7=2ErPNoIsyf`r1&E8!upJVjk@qizs7v2~;9S@Ky$-HtS zK0`M6t+z2TpZZ3E*0=QVoRiNhQV!CW<1_iyv6z1NM^b&bsSoi=;V)%g@Lz;5*G8U} ztCm+(HE52Lpf$Wr&3vED^mWR7QreGpF4W!I=|m6~Wxr-HMf{7rRtk#!35Cp5DHUrj zuwcMEi4EK4TPC~4bKoC!>@~;e$Lw=*lvd1(3l`Cbd5gsA>5xt-$uIklCzu{&kcNJj z!;ChXmFr~e1SUQoY|U;2A&m*xj_g=^ZdX1F+czn5d#BCq1I4Z{w zwd63k?bh42N%qaSa<^5|SPNF9n6oH6CpoY5aJguj8-mE(UIPnxQ4(idkUp(kN}T58 zPa5r;7d17~e2=_X9kHH%-OeCk=DB(TiJt=8w->4wLMx6Ba*hvVi;f683$qr0iV+eL zQmCGzp+1W3RlKXD#jQiZGY=ItI5VXQ<~9TXOUQB`lI=it*g1N;I)2^j zpU$&04V_>=33C8GwQy-K_@-DM_FBAqwGv;}YKq<8^;azPW^sxokrzpWPOM0yFVAo_ zsrrWt@X<@D@rh0hJI-8XGmazH8!XsH*FW=|H2wXeGZ_nuWVa&sSgSjI=Rvvyu+Er8KNUi<}e5`EPkym0_zZpyL<85P5)V!}0?)w)7 z4%@vgcb}AeCCj_O{xf&*kNS9&IdU2HE3MB-8_z6W!&EgBo3kFu<-WZyJCh&Y-Ao9E zX*6F&AB`P%4Go}NR_>r4-%CSqpG`RiaJWH0n?XQXu_ckU4&#(Q+vG7s`5@$I(k9Qm z6o)86nx2d%c`{e#SgCjr@1;%##HZ1jd_{IrfVG-`A>~5!r|PfC<|ekdgSA2Ks-^7C zH|xfpzV5?_MG$N-Q@m!EP(zYI>jSq1XE{Gv|L{xh_(@7z?&LJjwOvKR>=pC=+%POLg+%(dxxgxoz#?yLgmwuR*pIJEnA;*87Y)3**DhCFEL6O5{u~NO*n~&j{5_P1`S894s~* zZByU@l(bRM8(G+%=UY+Vdn)#-T-U2OQID-JY$t5>`)By8Z+xE+TD&tQOOE2__c=SS zd!n&m%!yHI!+2)g#z0>2sh)!0JncyC;ZCl7*|1h_uW6xFn5~5i-F7(Z$410m$@{jN zJi!*@H22oRu{?c~4%XcJ+8+4)Zq5Km<$X^QVW4IjYqoP6uw$v_y6{~=H$g-oq)>d! zhi}$E!H}8zS#*X_p#gC`+hiX%_+E8m9k)nA=LI5@(|+z3JB6V>5+JTq1g zjLQn9y1@fpkoA(yjXjF$uiE_?BjVgSDV<`*@IJpe91;#mkx8y$M8w=CyLH(5F16CZ&l$d=23uepaNH2*^U8=f(w}K@EHwF_~l)=ZP3-E%S^Q0_=8d=t` zd)*SaYbsY>cfZ9ZzkY1qE8;TRw!(oDJ0aag$A1cu;W_zva#9_Ce-}A`P&A_=XLH{( zfsVo7O1KY!d|$IIf>CZnF0?OMEFC7Jw?J6b5CojtY9xAHOOaqz2)&=Ol#+QX{&jEo zN?TM;LY|_Z1RLWbERIW3S{|50!vv8BLnk2eXI$(FgqZy3R=C0$w#ov3nFF_FLr&DT_v(kyaa*En z2>F8&j9@p%Ym8V8RV#g=4Fgja-(;G{Nc#5P*|l^v6a3(NBFie*>!}J-Z>#{Q>>y{{ zaWXTO^lOD4o~DA8Sf?YR8hIJ#cjZ7CDM8n3(#?Urco z{RyX~j}{$}Fk~n%inVEWXZKX_SET&_AD3jk`36|4yCDvJBtf^WTJ5N+OBI_(my5;a z>_H8Rg%D-k(IPtr2+`)fXbNsgW#m%N%4r9Cn;!h2wV@>9A*bsTrw7=KbSNu>hbNWpLX& zPuWGL@U27?s$ass?-yCffSxzsH-9f`8Bvbg-?Gn0@{5tt5<#ARh|($~r8O29B{Ps- zMjOZojf5neBnw&D^`$v{6-yid>%j*JxX88C1kQ0n<)@1^{eyVXHbgSpN$aCEomjFm19qN;7e`XJcfsWWA*`Nf`st!CQ#V$VNeqKet$E6f}33m zVQz4l*VPI$LT766yeopVF*jN)O3s6A~`5|S>o;QnGk&cY4eXLq%|@?uoB zL=E0uc={g8qt*TlJZA;0BSe&@NuCw`gr=zznWvj3ctrTf9?n5ivN0E@!^~)X}w8j@-JTJW#{JR78X8g zKp!+9$<6)INQ!PQ_56*Dlj zNG6(cOb|KuQY)9|$}=40dH`H}02I+!HZRl4B^3)o6`y2!rTcVP$f2Z+nObIXvc%k8 zsf5@-=J2;f@K=b_ekI5HFlVz&?J7B^YvsL}SHV?XYS zz2AU2cQYk{r|TW$MAvy^;|(izFx6FJzZBOJrj`wYL8h0q?o7xP8!UXjjm+T$~iw^69 zQ+78(gz~*aa_dUpynaUaNQPMMiG>@NN_AC4X@UiN&4=+EvY^-Jy4gBkZh!r0y5omG zPQ>5t=L4j1b)w;WG~arkejsEvQ9zIu0D3WO5s22237-0f zhO?eEkA&9<2v!BHjEtt2%U0ain&>Z*^V`jh@^N#gxC_1s2$;)s)rTzcrt>f?_qr+d zxKf2+7z#GRW+@Abo@CCUta4>$_jvPzU&5`o`Tz}GZZ(UxdZoDN zW%~SCE}h|1_ci^*3~V|LV$EQcUG!ZOeX{VCZT~EDz^{*YK|&!5s6tW|2kLa2n z0to;Zy1Sc4^e{fl}vsD)@mE$>1 zW(<}1W{+aZSi%+}NO!Sk%9uKF&znX(%Y{GBi}>QX0QCo=A{M1ajC%u1$^1GaWn6uE ze(?K&!y;f$K(ejmw=b6mo)6+751XtXSQiG=GwLg)miB3IqR#pGf>Ba%kppdT*SoMr zeK=ElfBVGr^S3J2jBrE94<;oL$}8&BtqI91F6~)si)P?6nAX>4PDs`S&oMrcLTu%? z^hU2ZAuJE`!u_R($+`e^T#F2)W5~eIcp&lZ78ZBBuHQ8zu~Yw1^Ld6CM3@RKHJ|?e zIDFl_LOI8oTo@Y+lZ$nX4&6C#f3y6!CZ0#8DEBlDtSy!aI_%YK$H zAHzG`YEc&wJXF~1ehtF#;|36m6X757g>(}E?ZHk!fLVPemBblh2c;|CuByq1;h>%= zn~^4cd6HVp>s$FJdPtghoT*3)OFGZMxRxtt^2)mLQAUJ58)IJ0?Vlnib%|^~zsCnm zZ9e}RaX&y}-yp_@-`wp{w55Pw$S%d`q>0!Sxvvg7lqOPqz2(-z4;kLl7< z1gx6UmQltZ0Uq5%th9v0VB0;mPzb@v>iV( zP9({PxECZ+8)gah&%0OeU~$up!p$LpP#Bpd9h`6X7hbB%PM+gEOq@wrKn&%14u*gE@ z#il$M0EX-KBO*rLTW>x_2w8y=nJSLyfC#{ZP#~CuhY<^6Le#KqiKI%9mPBR(hk=ok z61D*BSD1H7+ZcCmYxlkcH46~K5=tCZKiG-zzL4ow-blDl*lTy9dfVy`4rq`~UgRjd z$c@7OU22|T$zSZyZbvKzeklaxXRLKf-{}FL%v`o3NeR+(EymhM=-dMl1Q8|@la!R? z7<&UQ=@Lt))mX_dYFLanfKJX(OdpSZT|3{Yq$yoI7?AL^vx5#m-v@~uJE;Q4>2r)Y zOfutIU1rLWm_XjB@T%y&=&wjpR?_;k9J^c;0*!}sJz}VV9H>7=Hk{4PED3{-_m__M zLwhUr08N(cNQk($)Sm4)Vml}# z>ps;~H_Cf}E3$!`(sDc3ycFx#{v$t}vQ`Hp1#t{=cxeIe`_KhmTZJ&0K7ycp96%9Z z{omoviQM^!A0k&*j>XMvPx#A@0i%ePk8Adexr>g9tB$NvRb-=bz6m0N9Uub9V-2{e z*efpE-rT8TQBYTIpvSY`dD8-1t$7K%w&`c}YaT%qBTxhZM$+-;k*(S_Ufzk&mu!eV zXbwSmE)77URc&P{qh-Lm>@272U9eO@{mJkR(WZ0ZJPU!^EGy)QAPCOb+xIv~B;~R- z^$7EI*YR9Offm(Epdi`ZwmRMhv_x>TF!gOK#chwW#p8zcnVVnd>%iT$`;wB{q#X2%l*;O zol&&gbgp!-Ua%RgLMd>E5ZkgOHarkdx`|Lm2cNN-0t++G(>WWo0aZ8EH&Kzin(m5H z(0Bo+X8?CE>Qfxvh#T3BbD!QuPpcdssG!%~s?-=mrBv*&hd*cT$ANAcW|V<|vhV(8 zf~A=y2g+wNvfC(G6OtXmpr*^xdKno^U%z$%d>T&Ej4> zo~yIu3$z}`J0!C^CUiOwA$xu(*r1<4QN&y9kTb8?-Sqg2Ot!OGe(}>%zgn1ihcUZ! z==C8Bp)iO7RSc0*$XHCzgbc2kV$8hfit{sC&E5JT9wZ&KA~Bl$pK(eH<$W_->NTo2 zl2Vbo#8PGNy88vRj^t7pjhGjZxEO6ASx2|`B0zdG!C`-Z-hhXWSXL$4Z|=Sa&#wxX zk^Mdw3V~4}kO?M%y_rX02I31MpjpbC4B32M3g$l2#0e{poxxu_s!+ByqoGq56Ss3; zI=E=Qdjb-VU+vuX$Y!bt9#S#w+Uo$Yl0dhoQl|ue@mBYIj4{elST1s0R{=K_6)|6* zaB&~9JHOyO|1A}n63Uq{kr1{Q0nTZdh$h5$Wy z74~Vo>3C`ul9>GIwh%W9^-NFu()Cfm$WHzrp5j4%%h+{2` z36MDKk1dG|$?nA+mVJ+8H9&dRRND``-q3OUsb^(vX|e2Gbo?VmV}%nXshggdTm+~) zYZ9fpyCed&1LpkQpSD3T zvQyVPQo|Nu)^Pwk1j|puq3qOFf+;~gm8XY?J?yPwp2Crhl%6O=9j3~}416;5pPAaz zulG~fT?#|*e{DVwQywudR-wCi23Zyi^f2(bu1IBzcNvSsMDZGeIcDE8(4fF76lt>~ z{zfEvqFAk(->?%Ki`}aCD=UGM{VuX@{fh%xkb(hrV&VLT0JE4EVuk?)2hs5uFRLu2 zqO^?;#_97RBKBB}?L)DKipv%1v6&WuIFvzNf+0nwst%l}WHk$$QpMM>neVP5vJFW# zEyZenfH{+#63ZF)MMQki#V3B=BNg4z>p|0xttBqlv?ja?_CF%g0)S8 zLp-Fg2BBtyQ-|fZvZqTFnUmnr!MW7n25!y*aE~q#^b6$+ys5J_n?YdA01Bcv_as^y+QD8I36`{lfrz~xG&H-VggCluYE=uUJ97pOF z4ctl|sw_h5nVfM_)(A3?`} zg}C@^j5_HFr85D6a0n7#rG5Ywj4l>VokBKM-uujz+}Qs&Vv!5bK19|d0B+l~EZ$!iIbPqJKk6;u zgBC$tlgL6JHFq{tp`$Wrjz&9)1y9IS;^xvmxq0rCY@>gdWfEX@o} z#+56htC0Vqk(TO}zY80Nx^_;!9~{T^VJ8rvfaZ@7m+0Waqr1sAx~{N!;6Vfgo-Q`? zUnDHDttGBz0AYw1s!NM*Ef2duY1MY+b_LW}0bzbY`*;tc{jR@2SgGDQ+`A#DiL#zE zX4iWYA;RGQd;nR?4HDR|oUpBc2x|;A30UBEfMXA@I3aq>m29HU7%FODX}Qc1x7&(P zrl5igcs)=Moq*fT{E?R~{)9eFM^PgTZS<-%uCGC7n8HKYq$}VU5_^j+GD`w`HmPD5c ztrRJc_W1RBj0;ryWSwT>%T)^vTc;LFBHiQ;v}i}ikg9FewNN8e>yQ?H5+O>2j0+en zlh%2XVH_Y5_9q`}OOq|C1_(fL<7$6r_MOG&IPpr@TnT2uPK^;onORsNP9>lHAS@dn5$ATSLWG zabJMa+S{|RDQfV3ML2f`8g)4LFu8Om0cD?qSsZ>uDkgWdKosO$!b&}(+^!~Papm>A zB}5En8q2KyJ|Vow%Y$1m?OdS+s~TLs^1Ngxs66Tm^`{|J`|d(f??Oq=0tVBj6Axj> zVVaU?XPZtg9nNw73YzRAjksQmEbBrVZq&NQi*cH_K3R6kS%ABFH0=CuepO`F8_fKFU{J+s?-yz>*uf!48dbE^RxX2sBS%}s zF8?Q&N-9{??N;P*@n#Ri6VjcT+Nw;#Y;9!rN>zbzS&7AoB@aYpa-u&c3~aoVJMtgh zj*D4pEt=2%^nM+^BEiazYAlpiN)EMO1}#imdVc)V zZ+#yNn9r0OF|nG9EH{{F+M4m@uFKCaeGtRexQCL>$-tkN&LZwr4v0Q0_xCnGwXGR< z(QDTZ^?T2Jlz(|rvrqFdj{T(`puXE9E-T4Zax!VgDRxF$M#e~cwVwORg_o4SYK?M+EoG&oR9EHJHHs^hMBBY) zSh-)%s8x*uG8ph0JCiJtMjhwFmPNnuH!qe@2{|G)x%r$LRsxep7EBptuD8;wg$)Ro(6{g!lv`Y#Dr;31#wZypeT)0U38V@1g`_i5!hRHR4N76a{L}A z4m9q5D}O)#yD&|MiAMZWX=$@k_eV(n1O{rXdi)sZx=gV8)lcQ6*u`^N(BaCrUi65K z8A?GEPu6+0eVE`aJw6}Hk9A>~(@8;G0!dOqwMo0<_eUn5lk>lU2Ik=4z8TG$d;$Wm zhi#?`;1%ASXScLx=kdUk8OA}JMBUaod5=&qu@@{X%(F|oRl>9Z0Qebg5l0-9-Ik4@ z!Q$u+2EIQ^PFldc#Y+k&?^`&}^!sRsDvQ#0)K9F%+X_<%uX+e0c)&%KcT`+IwSi}K zq6N(C6~?gU!N@_#mdVKDI-FNSj083KB<&1*7?M((X6h(|xJfG+2kPAK`mT!7y$e{q z41fq4Z=M7$%AYd=F2!K={Q?UEfe}I*!>ZKZ{<_@#%$`;ih>IVim!e^);7kqdeNC6(2J9ow0zP!AUE(wvI4mnux(R?%4FrVuv ze#CSF*C%dn&#r9r#@ADz(IrwxO`d}%HB8wU0Z~M`V4KGfVX(~cV&C{9<|~jPnYs^M!qwe9n{UE-$TrMf312wjpq7i$Z!1=`Um=)O{a)b zZ4HtIW*zp(KOi7gS1XiA)Qf{m|pTP6hk9eq&mhk1HNU?3#8^%6vwke{cQs-(h@Fk#S%LD-Bttn(h}6D70V_!l?kUx8UhUVXLtI~iwWhsf>VfXUG#u0<6%f)lTCUnLWnYX3NEsb z?@<bf66aUhVkF#G5=IO0Z{oc2f>sO>*8}7+Z4wIMv)@l5tI+It zsB@Riw7!;?Sv(yf6Q2APfSDD`$S>lL|cf_$vXmM!VQicgMuUcN`>07OX2>p{fJQq_$===mH>-ODF# zuE=(PM6utW(oC^oJn%|DH@s)ZSM$R}1=Wt}yrFISQL@?52&Dyta|MYo&soqot zag#?FZyM@D5m&l8xog;?8+z3z=FI~iX3JWd6pPZ)L3Z(IEuAeFucyBJc4wigRS`#- zlX(HKw#=Q))sdJiOSSd{;lOGSnyS*#!zUarqQ%?I&HscbE3= zD%S%4zghy`jpR^)qcAAuC@d;cW(=L*1P3~2da_v@G9o3cm#Z7oSelaH4JMvt+%ZH# z!7HE%T9#t_Sg3PZt0erKW7@N02;Y9_$O1?aoKUr^DQQZu_^EOxLq)qqGF9tMReMQr zf8Z%cro5d%N=__CT?G(-6I13=$|!WEjH5&^C>Sq$Ura{*opFrZJ0>4 z6h;A9vhqHK<6)o`o9mz*u}bG0Frrrv%P+R9SS)d&PI{C>`7ErSGTVH<`?Wj*%uuh< zi?!7Qfbfb)i347_(q#lT>`(kbT803nKHm#W6}Almqa_nD2oJ=|3%l1I*vY`gz{(Ai zkSp`dft>YCaY6#XZt~>%?M`6Xz;WF-sKnY{&I2lg1R~T5|9HltWusfyzq71UF=1g{ zf`mI>*Ea)e9G#mtLa;O~XLe+A7b`yPG>^6)Wh3(qXOHbyjy7#Rne3gZWTn<1gE|%I z-c%5@eqfqSD3wk^FR@DyF_S+0=mUWe5|UO=G0GSMki$kG+E0m zbFB1IRb*TYSL&w&V8h#!K`aQaA zW%TH%*j+?|y3;F*NoImmn)WuTLCM0zvgGjf;OL!o5-<>IEmomPUq#V$9h|81DqXua z!0CmU;2Q9`fGx)jO7o?Ugi^|cPG}aJSnEv)l`BsXqG{J++U7aN*fTn$ z2<2~BeY3|V?>Z7eXZ0=@izTU-Ro?y0%0FoX4&X@;Q z8)C33Ox}tFIcuda00_OG_bo7t@UUM9I`%jcg!v%|GgetXFoNNA)Zm6NW#jNy>rx^e zHq102kAz&p-$#y#LeGW2kJJb3Wq=Cvx3VvWy$n!8WP~UPt(-Y%g7$^gGyz@2Aut%h zg=#6SW!GG04dVx%t!BXdjD<3$ynIw{d;Xu_V8+44)Rv(jRBE>YggI+q>@fKyuwQ7X zuLrE2OWSFQiTYD|DKMyEe?6MlLXrEtLN=JDYA9AUEAsn=!yV{*80dezldP|O2h~{G z!5J{oXTN@=?`UPVGM(RsA-nU9y9g5=UX^D+Y*E145${>7YA&}e&p3E+7b55@+d$S& zO-)70=!jF1j1bnB_bYq;!(za|@itwAx-LZAv8tVcLFkUILh=OXUMA0X^ki!w!i)tz z*U&W(rX=|;KZV<Iqfm_Pk$?&5nqe6JTY z2EoIRh!8@K7V{U)h?PC+T0l$?#Xt&AMm}HejIJXP$N%;vcx+-JZ-W`sn_@7Mn>iU%q>e1ORe4n`0=P7Bat9pJ5g;dSn~35bZG zcYcqRl$1Q8aNFp}tvXn1`7UzonyoxoWHIQrJ8SYLqR^)=@oWsjDRvH>#vY=N--Y;+L(~f!$R9l(nmEd&Jj& z@2xG2uDW6FboX3>P6B_>F+Z_oUgW!KKx+J)Vc`(Q4xjCGe#4Ejg`6^AfH*>j8Vm#E z`R~;Rid^MPV1Nu27y~{tw4N^OHjk^l^KzjSV1Y*v{tJGOiijxLUoL}E_a^9UfZB6x zZ)*c$DCIfky&!%6TYe;@q)fzH1qSBU*7;y3Sn1h~kpETAv@ZjOJCSs1r!N2`p#6~| zo6O8i1NjIIRn;eF6_E}EBqStInp4Q24H2gS?GoTg;ns62h~ z+>{NUcyQKH(F$>n7qyN1?g6y%sYFlh^{;tcdZ??`%vTjoYVFzm>hweJ8lCw4xF6w* zLoO>7VMl8pG%V$g^D$LJTd0G**49?fi^9)W!wS`x#=I#=f{K5Rkr(EOaD}f zsHqH-b?dM{yKW3$g49HEN*Dhn)cK{zrvrxeFj2SkT>{km_$EM&9UzrYUs9&^E@%{6 zA~Bz++-J9a2Vl4Gz2)HJ6L${g8->DsataC__#^Znco0lueSO_7-qZf#xj~mfu_XE2 z$%9RumQ(jd=6IlAqOsqS%oGECJ*|i=_6L#qrHYX~508Q6n_>ZVpEQI60#M}o>d|yT zg+#9NV9La7{hQzlDkDXj$VUZYn%4ltWj#cy5aE-PHQgg25Ah1&{5#gakqPp>2NQ-R zpmgB909-aCz$5&t!c@ancEPLG<3&nAbm;%SM;`0wCJYLq{r?WC^pD~D*B7QTV9}%y zh%Vr-mdt9|b|pR@<42I#e|>iV9QsahWqTl2%>yC=G9)Z`@*edkZdD{5_3wA+nR0IAhn?l4O;%Y0QSHshS2a|U+m_vfeY|IR>|JF zR8jeVyp58rS*<9V|(~e>9Fy<@MRvQF6k$Zx9p1;tVxv|z2skh zReE%p?-uoaTG3_wg0l5}{Q=kQV&8n%pq;Hv*NvZ+#xu{+BLeFqF^)#YCw`?bW-oR# zZoZg3B^Q{8!~Y=_8nG4S<^6byV;?qQxrRy|m%%2-_8?VETL3>5KDShrBowU~<}OEF zCL^Ix{*f;jTBGv>X)2Zxe@ae%DCK!3V>S*y4i=lw-*!z;Y}#hj?|J{eu)4Ymx%92A zEo}009>;12rQmR4KDRys>HE(|V)l;=fgD`^r<)yC{HuRDKVkjfdTCpWdQepr+SS!n zMn)!z+XCv8NtjhBWr0Dx1e{27^Tlueq~zDHzq*7fbI4XN%s5!oMjuYCtXLTuCM##U zxw@KLSU9eXkdu>VgEIX5bZl&F^;7LX&2357ZA#O4EQcOTNkwy-1S@C8+%c5!JcCzx zv}Z>3HH2Oke5u|vxkMkIbI@9EpwKLed8boW1Zjv0eg7UIRm>Yt6CVcTXjchC8{HV0 z?af|o=&bvrqhl>u^xWUcXPcgKO&lE<;Ji?)J-rOYbm~_>o^mEjgi1Vq{G4Izk1v2# zjqAeKo1mQb4T)c-JZ1$6#Ps#O3=x8G2np(ggBJKAxU+R#k^vFn+u% z?9~Q%!8EYFrv7#V#rnNh5zPu*LKal19k@|YQdC!0XJKLCbqSJ_Ya1KyjlVdp8&x=O zzPbck?Tjat<2`!%ROog~N*V?SI5med3Gne9?k(ir_lb^dPeM^)gkq2pVx{2UJ^|5Pxb{JF$16+ms7^`S~2Qq>)Ib&S#6E5x;-#@_xta^rqkJ zrt?UN7Pjdk)BON9v9$c$b6i`*W2eW6$J!Q@;;SpE?R2!fASbI*;TzT|R`}@?Kl;cO zrV%K#oKN2gu7YDhfj-DT=xcAc{FxwzkB`sC#|I7r@qHNG&hD=L%81+H-X^qI>UqjJ zGBN_xVoOU)=xz)haE43mJD(nDKj)8G?nstoqt*GllT|un> zXVFahF-*F-Hq`>oKyiLPgF?!iu&~}jvtB6ACxr$cpFe;8_`v%E>*2Pv*74o~8ybyf zVqyXp0#5jZ)B&)`n`FfvKFm?gPk>I5*gQV9jWqgmb8`zl*_}^0uU@@sG4R>i(J{=p z)3ng6C+nwaA$Sfj8B7W(t@GWPwBj9ecFgZa4QD2^}va&KZuU~BwjXu0bmCcl2 zVPT~|spQZk`T#zq05F}&7#Kt9e?&Ss4Njms6n!^UA|E-LyJ_Ay*R z|LW<`7i-uGxOSJke)?B9ou^{e{PJwFk)T3rWqy8dcP0*V;}BWt4<9~Ecd2^T{pV|L!~a-&H?pr$-zlx5Dx~G(iX*2S6kcB*-0xtQ0e9Z z0zxCMU;n15wNz7fi}H?5z>Cjw9wR*6ULM=jO86@AQ6Pw$N^layaEqf=A}bB&uW%HcA|xOnxPF~kyaNp0 z%=b7p>uIGQvHd4mGiv~0@kAs#Pi4PMa1f4!zs{Q_5 z_8b8rp+cdll2eh8%T}YmS>XWuS1RI8@~?+ao<|r!CR{kg#p(QccvGoM$241@Iq}H2 ziSENzr4tse6!pE_-rlZ|D$~8N3Bej`9~IGky17rq#koqEJ+JY|ShdRgGF8~9M4=n% zt4mZ=R7x3&1oxkEM#?8k(9+PTYG^>e`}0(v)t4a1!vTqslahKPUJpIkWuti^5)uYc zy<^xsd1PG)-R9w-0N=Bj5|3K8@>n%}?+aI{zngsWk5qhf@_Z#bhj>+6 zZ;snQ>+RdOp*?UV<^#Pnnj0IR2Lx57?`(so2b)1f3(h|X7BqrU|76fq=Y0|MMyocCtiDmew{_>7YfJ*ry8}w`$}1|gB|WSJr>;dUlrWxo z<#cr)YK_zjO{aeS`ptjJ<$;h&fW5u_=ISa4vlM8NDu~v5uS`eHlw6Ji$09NkdF`Kx zkB&jfgHg)8-NEC#no0-K1$&%UoKd4_(d_(h^b0=U;m;E<2KJLEF|ZB7XMJ;OC`Ddm2fqE>8FM298C39AH?SOId(j2qtNBzIy>sJ~;CMPGSJB9tb>SH*VxW!~mOm zdD$HrZ+m!PojvP)nO0(Bp*N82!IWWeJ}B&1KHGZGz&$+!MMUvf z@e2qPgD4s_1=EFojBk*ez16E)s9s?+)eL7eoWaJ%hWovK-IIeVgYJ&Hy1LLX2TrkI zR>_GD43q_j71#N?*IRKt*f(q0`Ot@Y2u}C_vAs@C&ZL~xmmua3e$%9TSlm$LbE5!M zmAe}RBJ(}jWzSdjCQzI-G+)2y{rJeO8{7vg9;v2p)}29{t2_SHw?u^Pls=u6)^t~& z^X7a>X=#pHL48jT7_u@r2!oZC6uJwqE-c#(D%uVWoct^~i1aW}i_5HyCs;;iqZ+P2O z)uvSbd=;KF#ZrPT^d22%Tyz%~g|y1Te6&*G-@5`A{{Hj-)_C^+PqFuZ$11Au<3zbI z*u!Q=XNZoqY-#>Z^9bc}j+q?Uji*o7WbZxNpzxKAjmE=w$~S~al#8g? z=nmVsbB6BCM{&Z0uG8kf!wBgjsuT?r?fjK3lygzXjQ4|4l{TA`>G8(x(?1vMt`@ki zyESL7VC7bxT61HZ9NKN}HbZ?0M?Vr)NzDe2T%U;EaGM=eJ4*Gov` zp0RK)TAITdw-)2O_r^o$S=0-g9E;$m*_ws*2i-Yp+irl9Nc!DIr@oX4yt>`}Q9Dp7 zLYQOpD*mDKR~`1rnAn&Y)adYp6AwKF9lb0z9vR<2^lset)8Twu#~DkZiaq=*?0o{O zO@th&i^J%6>3w`~E`A;nmOzbrLI$^&l*ce2NOa=yPHN& zYMb{T%Xe-IeqfHaIy!)e#cH%D;QNo7TkH`LB2M!g=z>^U+!>MH_%%lPukG!i zU3*d<6O_%UKig;=6DoB)wBoi{tgd+g&UC@2Pd2xvb-h(xn%*IGOFS+)Z9Y)cIaxFCT zz7KyPD#caEdgQ>1m`QndxWM}o924UCJ2Q-gW!2??cXca9z@OALBsS=_?bh`enHkmc zFQXk|_kGekjo=Vk82!fL&+IzmC28)k;NVZse!{U*;Fqj?wi-0*cn>|bOs-yy(0;zT zSMF9;J{D8;%=+hL5$K}ZZCVwvppk#yDbR@G$XfV|hHS1;tTcu2n<|oP{6<}k(-dx$ z-{V3;ICSzH11(VlMJ5)XGB}Jq(L2`qyEcY56B8E7N=!K;!^<2)f`i=;++)1FzJ0P% zIkMjUq-FIiM@@fzQXFuGmh&Ow6NJt0Sq~@0gD;JPFpvv4W~=89p&wMg@btDY&mzC> z$D&=@S6e&oIUQ%W)WNVdQXz6&UZ~gK0Y(LfYU9jWN380FxOkHb`p9JTg{QW3bh%l>2mPv;zRyl(D_TMh%X=kV0?EqRs>=EIz4kBO zkc#8mKiKt$P!z@QcwNAGa*o4zAODKrkn!yH5t%xAuPOJ@TO6ubL8m*$TT&C!c1uHZ zU`lU33@meI`HULu!D+MHogZi;J6yMvj2+wY9rX^pmMQP+WNTEsGh26~V&A~5u*Cm+ zG`Hao5BIlkzj^Op0BitNx;U7WWI!dl5kMw=t!#T?U93fRFcyzr*TiI(_jbO08NRVB zdGFIB;mf4V>hgQTj+u(-<+>9opQf6jP}tbW$gRo&XczE;*By`DcWtKb6x?xfSm|jk zNN>tq2R3m21U)7e6tw#t58=ttrcvl7U zQY0%rdY+BFzz;2w1>&_w!RU{ak@C1hYqDG~5+-H4#`qW6>h43O!!!5K^}d#VOCfYH z`*Q-0Q6BLv(MWVIO#WZpUHL;&+uH7&?k&?CI+d1|hG}LwR8AodCo7FC%{fJ>^f;kr zjyQYHRm(E8Fo#4WQ!yn(Q=AYunNz8lQ#eycaaNoNmC(DY@B99U&tLpuZ}#3S)_$Mo zecpGiCq>r2#I`P^CJ%6rXDUG}_D?L*Tl}2JdK`oOJfSa*XQJgqcs8g0aark5yN3ct<+ONoF0 zxei?A_UHVzSJM!aJ&GPVaWCs?t3gOAeY)@HB-0adQ{X-lqKB{ zl(?qpkBrdyp5W-mfxi*oVGv7jN-1$`!6)T zx5Kc@{e-gPq9zr~?-A1#YQP$3qA;$(;Wk=+2HW3y(Tg!u7Z9_IBYP5uw5ZAjFEOO) zs+r1{F9WX;W?<2iy6LDRp_|wKCTb4l<}SLy6r=%9`?5UV6eEcI0b_XxVEP0Szwg$8 z;nj{Lu*Yi@eeCv`E8DeU0>+x@mw%d5+=*v4rojIV)<|1{v$^?w6?khZp*Bp&DtXZh zZ~-hmPk8&Wm&AL>v1W<9-cFK-C!YKDleOVk&dR}^yQDLULl-}-_9$hk!d;d}XGOcE zG?x*KpkA;$HPA^+{kuU6dtn1&kT6Lh`ioYm6B+R_JkxJ7XKwBZl?--_G3}>ANFfb`_+Vj1KGSQ2^U$B zaRbU~YHG&Dqa`^Zmo61HjWgoQ6+ReZaD zV-k4=*6{1bv6KFKQ-(nTUh63H7MlzXa4|U%A4--GjK-3j)vcWm6xB}X`;UaK4J>0- zBKb!@HgJp4?(T7eH5_o9A=(X|8{A3J(0_vZu^i0s6M0G<*<7&c_v+n7^rC^D>#Q47 zF$g?$F^UC(9m_zCE?nb{7Bd^G&C`y?^N_Ati*zF+Q(cprE8Loxq}k$V29A z7v2OX=pU@|oCA=q0>5f$$*C5p!Lc#skHrmR9ic`W8Q_;iZCoJfFN`m82)dCd?kpAf z{CIWbt=>s-1iD6R9LywYejP}9oroIn^{lR30UH~FU}dyCR{|1Y@=%r1*{Ixxsq^e0 zS}=czHEIfT2$3?1y2ctv#nT!owSa4l(@?)%lx9w$sth7*`D%^Gqb>v8Jna%#Ls;ba*$PweO!{BxV=ud+T z6&;rst|>Xpt|98oOn(i(m~7&^QDIl~Xt$IiYJTiWk?kIcJk3B{Qlbl8a$izj3<6x> z*7;%v>?kv_4eUt@0|sDQ`skK}*q!`}WLi8kBIrSJz$T!T1?GGAn;ih!!kctE09cEd zYdp>nF^qJ$ax!M9)N?h>WX*r}&Nn`a9Tk=&6PR)GX>P8vwKLtz%`rTDn-QB=-7Mcv z^3?@ef?Z*<8%DlANk;YRd17IqD*QmjQXJVGzS5*}q6qKf&j1@|fL#V;1Wu zkbHY*(=%5mwPSL#*S{hH)hSowY`{LWugR}Lyc?zltonWK7T_Wk4Pz$SD>gXE;N$l* zGBRXd0=4n|d-bO_Hj=ZnJrKZ$7HmnGGRizsZ{NFu?HBphSgc9Rwupr{Jo#WvSENG;nj~pdDxzXCJdb>AsE1?0WdsjDV;vQHif=M!0Ou1Twy1@wmc)MW2`*y|z z$!NMMX478hMXwM0kfp7bxITBMA*MWZcBu}SC(>hV#417uYs`}K=t6Nw6%?9(=gz`V z4pKQlC(lD2I%wholk+fTLvW$LW76pfi9m=kxJp%XU9R%8esPB72Uz8{{8#t8JBBmX2>@L>IA3v{M5d@81}qRd*JX z$NYLG)}B{N$Y}>`bwAj-DJs5L+I@3E>$GWkMMa&geE4dYDao+}%X93TWy;x*`s&WM zTgHzu@Ikmh5YPavVI^T>7mig1y1 zU7F_W=Bdc7F|7PohQDz(8N>tRexJH;v|~Y`tV_Tap$2$ozRhN8{;U! z`%$IG>|>(sU7lC3KH4PE|7on#am>tI8OPJ&w}QrrBZICesCJI2HfL!?abJI_;~+!z zm>{0ZJUPwZltxtjW>)1lJOtGILTgmaZF$qUA;Yd)wLUD-?;#%T>0} z@iAK6GNx%fPIXSw;Nn6cO-oNb0Q<|(M0kO3Abz-=`MSjZ7lpXCQPp7WWtQOI=a3mj z32>GtWQvugv7xW|qp{_0%eNFu?r}}y*qJwh-(yKD$w?R<(AY=;`&4HzM^I-Dfe3{r zJ5hYPUjjFF5YedSM|B~IF66QWTg$CIyfDsoIe_?G{81?-sB&W4hYvaW9@RnHXS1%7 zGugc_7`O(1AOPaCvr!JKzOiNNcd1rcy=4J&-N!B31iS4&GH)qyoO@g2pcjO>m~3#J zI9Qxn>W9FMN3@CxFtAVKR}IzGH)g3HN1*%n6Q11*)j$PqPcM%@d9o^glpwEHy3Id> z6#Fvv>W+`k&713dx==cFZiWxeNKS6!0okMakNk^gAIwyGO=-OWl=#)Of}A$8)ULG| zbO01Q6n;4l?EM7ci(61lV^M;@__}_6#mA-*4E*}_PTIpEEv+wK*cab5#t+t*s;XX& zTo)f6szmc{Nh>Lu1XuY#KL_xp!ke9XQTTOY%cIAvlLRDz`mk9I=da`#$;r=ui4x*W zW!HpfH+q_59LnZHHFfR9f&diHv5#Mhqp*N!5C{n%ahe$!)OpwVE=dNJG4#jO0ke^Z z58;;9PN`?u9~}Hr3G1WLZ7&9Oh@PNk%V%Gdz$D2ipF3r!r|N)Jp(B;#WfkK@Q7$en z3{2$-%xIDfEu6OpK!(5vv}#Iih_~Wt;TD%U(>-+djLus(82X&m3%CT;3o{Go-~@Zl z|6X#;9g0y^j$SFJJ{AUEVi|Xk!M0lGK9j2`FMncZxJ=R>b)CaYN}WBlS6yBGC@mCJ z-NI0`Tv+@Cv3-CTR9kAMry|F~KD|ONd|DV@q3hjGJF-8{xUr)^5AwwZ6swcOxq+kg z_`EzwVy&#aV^OeY2obz5sc!YAk=Vk1R1I%nuq;3!y$P9?{A7hz6R6WgG)wM8R5y<@ znLw@Zp2`886@oab$5h$0f`K-&-nBT@vQxev6B6gcQ5=^obs@8Gs@z-&2m?`}F)i>I zuKCwQXLj(*K2UzA*8`KHgJzdFwRNb@`UVGkvg3Pb7Xq_-;({yyw4z{cvGI>4p}#{m z&~7PF6{D9!yehSAfhln@NGn0x0s#ILxj4JV?z877T&*b#v*i1dv(fr|&=xZC>g=sC z3`P?{?11r}otshWd~O^vyY}4jTPDoVP)mT&NX#}0GZ!Fl`A~=Mx)~~JPoa=RtK!q3if7hXAcdznP#nWXrfohz<;*5Ju^Z4XT!lEdT|J8mt@OTzI~zTm zN&t@B#WBV<6D2R@B~n1U%r6Oa5u0+hq~*lVlEI%&7cz2kO1B<>?QXXNzG3)3i&R}O4yQ7g5S?@L4i=soCMIu5ygva%0yoxG!y3|jko!M_m5_yD zYWGYic^Ew~&177gkuy4lUfdci$_&x;?o}eT;ygd)M(Pl)GL@z#Cgum~{5G#~jA`M0 zB!ore+xRreUvMDgbB9ZRv4j6jVA91zBwutduN5~{N4<<0T zatvdM@0*$>CSiuM@qbb2+0r?B3TFns*T}r5KeMZC{tZ&NyCb!}M%=dU0_m-&Gr_gi z7m}V)UVi=hS8JSbY}+E^YCqX>O73pHIOIr*9J*eD>Qb56?f?828;GzL diff --git a/docs/assets/images/test.pdf.png b/docs/assets/images/test.pdf.png deleted file mode 100644 index d4723f88d428c6e270492b33dfd85dd25278c443..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 369375 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