From 6a42e4a77284c161a5c6b5850710ad5bb695198b Mon Sep 17 00:00:00 2001 From: Matthias Guillitte Date: Sat, 25 Jul 2026 16:31:50 +0200 Subject: [PATCH] Edamam API and dish volume estimation --- cloud/APIs/__init__.py | 2 + cloud/{tools => APIs}/aichat.py | 0 cloud/APIs/edamam.py | 937 ++++++++++++++++++++++++++++++++ cloud/app.py | 16 +- cloud/microwaveDish.jpg | Bin 0 -> 136324 bytes cloud/microwaveDishAnalyzer.py | 129 +++++ cloud/microwaveThermalEngine.py | 52 ++ cloud/requirements.txt | 3 +- 8 files changed, 1135 insertions(+), 4 deletions(-) create mode 100644 cloud/APIs/__init__.py rename cloud/{tools => APIs}/aichat.py (100%) create mode 100644 cloud/APIs/edamam.py create mode 100644 cloud/microwaveDish.jpg create mode 100644 cloud/microwaveDishAnalyzer.py create mode 100644 cloud/microwaveThermalEngine.py diff --git a/cloud/APIs/__init__.py b/cloud/APIs/__init__.py new file mode 100644 index 0000000..8f53c54 --- /dev/null +++ b/cloud/APIs/__init__.py @@ -0,0 +1,2 @@ +from APIs.aichat import * +from APIs.edamam import * \ No newline at end of file diff --git a/cloud/tools/aichat.py b/cloud/APIs/aichat.py similarity index 100% rename from cloud/tools/aichat.py rename to cloud/APIs/aichat.py diff --git a/cloud/APIs/edamam.py b/cloud/APIs/edamam.py new file mode 100644 index 0000000..f28e84d --- /dev/null +++ b/cloud/APIs/edamam.py @@ -0,0 +1,937 @@ +import os +import requests +from typing import Dict, Any, Optional + +EDAMAM_APP_ID__FOOD = os.getenv("EDAMAM_APP_ID__FOOD", None) +EDAMAM_APP_KEY__FOOD = os.getenv("EDAMAM_APP_KEY__FOOD", None) + +class EdamamAPI: + """Wrapper around Edamam Food Database API 2.0 (Vision & Nutrients)""" + + BASE_URL = "https://api.edamam.com/api/vision/v1/nutrients" + + def __init__(self): + pass + + def analyze_dish_image(self, image_file_path: str): + url = "https://api.edamam.com/api/vision/v1/nutrients" + + # Query parameters as specified by the YAML schema + params = { + "app_id": EDAMAM_APP_ID__FOOD, + "app_key": EDAMAM_APP_KEY__FOOD, + "beta": "true" # Recommended since vision is in Beta + } + print("params:", params) + + # Specify the media type in the header + headers = { + "Content-Type": "image/jpeg" + } + + # Read and send the raw binary bytes directly in data (NOT files= or json=) + with open(image_file_path, "rb") as image_file: + raw_image_bytes = image_file.read() + + response = requests.post( + url, + params=params, + headers=headers, + data=raw_image_bytes + ) + + print(f"Edamam API response : {response.json()}") + response.raise_for_status() + return response.json() + # Returns something like: + """ + { + "combined": { + "problems": [], + "recipe": { + "calories": 306, + "cautions": [ + "GLUTEN", + "WHEAT", + "MILK", + "SULFITES", + "FODMAP" + ], + "dietLabels": [], + "healthLabels": [ + "EGG_FREE", + "PEANUT_FREE", + "TREE_NUT_FREE", + "SOY_FREE", + "FISH_FREE", + "SHELLFISH_FREE", + "CRUSTACEAN_FREE", + "CELERY_FREE", + "MUSTARD_FREE", + "SESAME_FREE", + "LUPINE_FREE", + "MOLLUSK_FREE", + "ALCOHOL_FREE" + ], + "ingredientLines": [ + "90 g (3 oz) Beef chunks", + "100 g (0.75 cup) Potatoes, cubed", + "40 g (0.33 cup) Carrots, sliced", + "30 g (0.25 cup) Green beans", + "120 g (0.5 cup) Brown gravy or stew sauce", + "Salt and pepper to taste" + ], + "label": "Beef Stew with Vegetables (Frozen Meal)", + "totalDaily": { + "CA": { + "label": "Calcium", + "quantity": 9.808827779627787, + "unit": "%" + }, + "CHOCDF": { + "label": "Carbs", + "quantity": 9.07220373540042, + "unit": "%" + }, + "CHOCDF.net": { + "label": "Carbohydrates (net)", + "quantity": 0.0, + "unit": "g" + }, + "CHOLE": { + "label": "Cholesterol", + "quantity": 20.837056709550403, + "unit": "%" + }, + "ENERC_KCAL": { + "label": "Energy", + "quantity": 13.100053025164515, + "unit": "%" + }, + "FASAT": { + "label": "Saturated", + "quantity": 17.148508115376796, + "unit": "%" + }, + "FAT": { + "label": "Fat", + "quantity": 14.902089676480887, + "unit": "%" + }, + "FE": { + "label": "Iron", + "quantity": 21.951689781236098, + "unit": "%" + }, + "FIBTG": { + "label": "Fiber", + "quantity": 13.858671762525935, + "unit": "%" + }, + "FOLDFE": { + "label": "Folate equivalent (total)", + "quantity": 10.817828789332737, + "unit": "%" + }, + "K": { + "label": "Potassium", + "quantity": 28.904445650775536, + "unit": "%" + }, + "MG": { + "label": "Magnesium", + "quantity": 15.863016599088612, + "unit": "%" + }, + "NA": { + "label": "Sodium", + "quantity": 60.46248, + "unit": "%" + }, + "NIA": { + "label": "Niacin (B3)", + "quantity": 66.37252070251446, + "unit": "%" + }, + "P": { + "label": "Phosphorus", + "quantity": 25.034580972170218, + "unit": "%" + }, + "PROCNT": { + "label": "Protein", + "quantity": 21.91938193709794, + "unit": "%" + }, + "RIBF": { + "label": "Riboflavin (B2)", + "quantity": 73.88477475545037, + "unit": "%" + }, + "THIA": { + "label": "Thiamin (B1)", + "quantity": 84.12049444050538, + "unit": "%" + }, + "TOCPHA": { + "label": "Vitamin E", + "quantity": 12.990953399638641, + "unit": "%" + }, + "VITA_RAE": { + "label": "Vitamin A", + "quantity": 45.87938825251855, + "unit": "%" + }, + "VITB12": { + "label": "Vitamin B12", + "quantity": 113.07016020542191, + "unit": "%" + }, + "VITB6A": { + "label": "Vitamin B6", + "quantity": 90.1530888403073, + "unit": "%" + }, + "VITC": { + "label": "Vitamin C", + "quantity": 35.18207820897409, + "unit": "%" + }, + "VITD": { + "label": "Vitamin D", + "quantity": 13.66228503481425, + "unit": "%" + }, + "VITK1": { + "label": "Vitamin K", + "quantity": 27.534449511962567, + "unit": "%" + }, + "ZN": { + "label": "Zinc", + "quantity": 55.091388643252344, + "unit": "%" + } + }, + "totalNutrients": { + "CA": { + "label": "Calcium", + "quantity": 127.51476113516124, + "unit": "mg" + }, + "CHOCDF": { + "label": "Carbs", + "quantity": 26.573051753721295, + "unit": "g" + }, + "CHOCDF.net": { + "label": "Carbohydrates (net)", + "quantity": 21.30675648396144, + "unit": "g" + }, + "CHOLE": { + "label": "Cholesterol", + "quantity": 73.23964970198097, + "unit": "mg" + }, + "ENERC_KCAL": { + "label": "Energy", + "quantity": 306.9669925121675, + "unit": "kcal" + }, + "FAMS": { + "label": "Monounsaturated", + "quantity": 5.622055495052523, + "unit": "g" + }, + "FAPU": { + "label": "Polyunsaturated", + "quantity": 1.5770619917608195, + "unit": "g" + }, + "FASAT": { + "label": "Saturated", + "quantity": 4.0183241641356675, + "unit": "g" + }, + "FAT": { + "label": "Fat", + "quantity": 11.639773878137946, + "unit": "g" + }, + "FATRN": { + "label": "Trans", + "quantity": 0.24391676668519283, + "unit": "g" + }, + "FE": { + "label": "Iron", + "quantity": 3.9513041606224975, + "unit": "mg" + }, + "FIBTG": { + "label": "Fiber", + "quantity": 5.266295269759856, + "unit": "g" + }, + "FOLAC": { + "label": "Folic acid", + "quantity": 18.024043373983595, + "unit": "\u00b5g" + }, + "FOLDFE": { + "label": "Folate equivalent (total)", + "quantity": 43.271315157330946, + "unit": "\u00b5g" + }, + "FOLFD": { + "label": "Folate (food)", + "quantity": 40.54129806334046, + "unit": "\u00b5g" + }, + "K": { + "label": "Potassium", + "quantity": 982.7511521263683, + "unit": "mg" + }, + "MG": { + "label": "Magnesium", + "quantity": 66.62466971617216, + "unit": "mg" + }, + "NA": { + "label": "Sodium", + "quantity": 906.9372000000001, + "unit": "mg" + }, + "NIA": { + "label": "Niacin (B3)", + "quantity": 10.619603312402313, + "unit": "mg" + }, + "P": { + "label": "Phosphorus", + "quantity": 312.93226215212775, + "unit": "mg" + }, + "PROCNT": { + "label": "Protein", + "quantity": 25.68129586205237, + "unit": "g" + }, + "RIBF": { + "label": "Riboflavin (B2)", + "quantity": 0.9605020718208549, + "unit": "mg" + }, + "SUGAR": { + "label": "Sugars", + "quantity": 8.053516658227332, + "unit": "g" + }, + "SUGAR.added": { + "label": "Sugars, added", + "quantity": 2.3940423830596225, + "unit": "g" + }, + "Sugar.alcohol": { + "label": "Sugar alcohol", + "quantity": 0.0, + "unit": "g" + }, + "THIA": { + "label": "Thiamin (B1)", + "quantity": 1.0094459332860646, + "unit": "mg" + }, + "TOCPHA": { + "label": "Vitamin E", + "quantity": 1.9486430099457963, + "unit": "mg" + }, + "VITA_RAE": { + "label": "Vitamin A", + "quantity": 412.914494272667, + "unit": "\u00b5g" + }, + "VITB12": { + "label": "Vitamin B12", + "quantity": 2.7136838449301255, + "unit": "\u00b5g" + }, + "VITB6A": { + "label": "Vitamin B6", + "quantity": 1.5326025102852243, + "unit": "mg" + }, + "VITC": { + "label": "Vitamin C", + "quantity": 31.66387038807668, + "unit": "mg" + }, + "VITD": { + "label": "Vitamin D", + "quantity": 2.73245700696285, + "unit": "\u00b5g" + }, + "VITK1": { + "label": "Vitamin K", + "quantity": 33.04133941435508, + "unit": "\u00b5g" + }, + "WATER": { + "label": "Water", + "quantity": 321.1285604946806, + "unit": "g" + }, + "ZN": { + "label": "Zinc", + "quantity": 6.060052750757758, + "unit": "mg" + } + }, + "totalWeight": 390.7575715150228, + "translations": [ + { + "id": "EGG_FREE", + "label": "Egg-Free", + "type": "health" + }, + { + "id": "PEANUT_FREE", + "label": "Peanut-Free", + "type": "health" + }, + { + "id": "TREE_NUT_FREE", + "label": "Tree-Nut-Free", + "type": "health" + }, + { + "id": "SOY_FREE", + "label": "Soy-Free", + "type": "health" + }, + { + "id": "FISH_FREE", + "label": "Fish-Free", + "type": "health" + }, + { + "id": "SHELLFISH_FREE", + "label": "Shellfish-Free", + "type": "health" + }, + { + "id": "CRUSTACEAN_FREE", + "label": "Crustacean-Free", + "type": "health" + }, + { + "id": "CELERY_FREE", + "label": "Celery-Free", + "type": "health" + }, + { + "id": "MUSTARD_FREE", + "label": "Mustard-Free", + "type": "health" + }, + { + "id": "SESAME_FREE", + "label": "Sesame-Free", + "type": "health" + }, + { + "id": "LUPINE_FREE", + "label": "Lupine-Free", + "type": "health" + }, + { + "id": "MOLLUSK_FREE", + "label": "Mollusk-Free", + "type": "health" + }, + { + "id": "ALCOHOL_FREE", + "label": "Alcohol-Free", + "type": "health" + }, + { + "id": "GLUTEN", + "label": "Gluten", + "type": "caution" + }, + { + "id": "WHEAT", + "label": "Wheat", + "type": "caution" + }, + { + "id": "MILK", + "label": "Milk", + "type": "caution" + }, + { + "id": "SULFITES", + "label": "Sulfites", + "type": "caution" + }, + { + "id": "FODMAP", + "label": "FODMAP", + "type": "caution" + } + ], + "uri": "http://www.edamam.com/ontologies/edamam.owl#recipe_e59b15e71cd34bf4b7c02c2f545e40f3", + "yield": 1.0 + } + }, + "dishes": [ + { + "problems": [], + "recipe": { + "calories": 306, + "cautions": [ + "GLUTEN", + "WHEAT", + "MILK", + "SULFITES", + "FODMAP" + ], + "dietLabels": [], + "healthLabels": [ + "EGG_FREE", + "PEANUT_FREE", + "TREE_NUT_FREE", + "SOY_FREE", + "FISH_FREE", + "SHELLFISH_FREE", + "CRUSTACEAN_FREE", + "CELERY_FREE", + "MUSTARD_FREE", + "SESAME_FREE", + "LUPINE_FREE", + "MOLLUSK_FREE", + "ALCOHOL_FREE" + ], + "ingredientLines": [ + "90 g (3 oz) Beef chunks", + "100 g (0.75 cup) Potatoes, cubed", + "40 g (0.33 cup) Carrots, sliced", + "30 g (0.25 cup) Green beans", + "120 g (0.5 cup) Brown gravy or stew sauce", + "Salt and pepper to taste" + ], + "label": "Beef Stew with Vegetables (Frozen Meal)", + "totalDaily": { + "CA": { + "label": "Calcium", + "quantity": 9.808827779627787, + "unit": "%" + }, + "CHOCDF": { + "label": "Carbs", + "quantity": 9.07220373540042, + "unit": "%" + }, + "CHOCDF.net": { + "label": "Carbohydrates (net)", + "quantity": 0.0, + "unit": "g" + }, + "CHOLE": { + "label": "Cholesterol", + "quantity": 20.837056709550403, + "unit": "%" + }, + "ENERC_KCAL": { + "label": "Energy", + "quantity": 13.100053025164515, + "unit": "%" + }, + "FASAT": { + "label": "Saturated", + "quantity": 17.148508115376796, + "unit": "%" + }, + "FAT": { + "label": "Fat", + "quantity": 14.902089676480887, + "unit": "%" + }, + "FE": { + "label": "Iron", + "quantity": 21.951689781236098, + "unit": "%" + }, + "FIBTG": { + "label": "Fiber", + "quantity": 13.858671762525935, + "unit": "%" + }, + "FOLDFE": { + "label": "Folate equivalent (total)", + "quantity": 10.817828789332737, + "unit": "%" + }, + "K": { + "label": "Potassium", + "quantity": 28.904445650775536, + "unit": "%" + }, + "MG": { + "label": "Magnesium", + "quantity": 15.863016599088612, + "unit": "%" + }, + "NA": { + "label": "Sodium", + "quantity": 60.46248, + "unit": "%" + }, + "NIA": { + "label": "Niacin (B3)", + "quantity": 66.37252070251446, + "unit": "%" + }, + "P": { + "label": "Phosphorus", + "quantity": 25.034580972170218, + "unit": "%" + }, + "PROCNT": { + "label": "Protein", + "quantity": 21.91938193709794, + "unit": "%" + }, + "RIBF": { + "label": "Riboflavin (B2)", + "quantity": 73.88477475545037, + "unit": "%" + }, + "THIA": { + "label": "Thiamin (B1)", + "quantity": 84.12049444050538, + "unit": "%" + }, + "TOCPHA": { + "label": "Vitamin E", + "quantity": 12.990953399638641, + "unit": "%" + }, + "VITA_RAE": { + "label": "Vitamin A", + "quantity": 45.87938825251855, + "unit": "%" + }, + "VITB12": { + "label": "Vitamin B12", + "quantity": 113.07016020542191, + "unit": "%" + }, + "VITB6A": { + "label": "Vitamin B6", + "quantity": 90.1530888403073, + "unit": "%" + }, + "VITC": { + "label": "Vitamin C", + "quantity": 35.18207820897409, + "unit": "%" + }, + "VITD": { + "label": "Vitamin D", + "quantity": 13.66228503481425, + "unit": "%" + }, + "VITK1": { + "label": "Vitamin K", + "quantity": 27.534449511962567, + "unit": "%" + }, + "ZN": { + "label": "Zinc", + "quantity": 55.091388643252344, + "unit": "%" + } + }, + "totalNutrients": { + "CA": { + "label": "Calcium", + "quantity": 127.51476113516124, + "unit": "mg" + }, + "CHOCDF": { + "label": "Carbs", + "quantity": 26.573051753721295, + "unit": "g" + }, + "CHOCDF.net": { + "label": "Carbohydrates (net)", + "quantity": 21.30675648396144, + "unit": "g" + }, + "CHOLE": { + "label": "Cholesterol", + "quantity": 73.23964970198097, + "unit": "mg" + }, + "ENERC_KCAL": { + "label": "Energy", + "quantity": 306.9669925121675, + "unit": "kcal" + }, + "FAMS": { + "label": "Monounsaturated", + "quantity": 5.622055495052523, + "unit": "g" + }, + "FAPU": { + "label": "Polyunsaturated", + "quantity": 1.5770619917608195, + "unit": "g" + }, + "FASAT": { + "label": "Saturated", + "quantity": 4.0183241641356675, + "unit": "g" + }, + "FAT": { + "label": "Fat", + "quantity": 11.639773878137946, + "unit": "g" + }, + "FATRN": { + "label": "Trans", + "quantity": 0.24391676668519283, + "unit": "g" + }, + "FE": { + "label": "Iron", + "quantity": 3.9513041606224975, + "unit": "mg" + }, + "FIBTG": { + "label": "Fiber", + "quantity": 5.266295269759856, + "unit": "g" + }, + "FOLAC": { + "label": "Folic acid", + "quantity": 18.024043373983595, + "unit": "\u00b5g" + }, + "FOLDFE": { + "label": "Folate equivalent (total)", + "quantity": 43.271315157330946, + "unit": "\u00b5g" + }, + "FOLFD": { + "label": "Folate (food)", + "quantity": 40.54129806334046, + "unit": "\u00b5g" + }, + "K": { + "label": "Potassium", + "quantity": 982.7511521263683, + "unit": "mg" + }, + "MG": { + "label": "Magnesium", + "quantity": 66.62466971617216, + "unit": "mg" + }, + "NA": { + "label": "Sodium", + "quantity": 906.9372000000001, + "unit": "mg" + }, + "NIA": { + "label": "Niacin (B3)", + "quantity": 10.619603312402313, + "unit": "mg" + }, + "P": { + "label": "Phosphorus", + "quantity": 312.93226215212775, + "unit": "mg" + }, + "PROCNT": { + "label": "Protein", + "quantity": 25.68129586205237, + "unit": "g" + }, + "RIBF": { + "label": "Riboflavin (B2)", + "quantity": 0.9605020718208549, + "unit": "mg" + }, + "SUGAR": { + "label": "Sugars", + "quantity": 8.053516658227332, + "unit": "g" + }, + "SUGAR.added": { + "label": "Sugars, added", + "quantity": 2.3940423830596225, + "unit": "g" + }, + "Sugar.alcohol": { + "label": "Sugar alcohol", + "quantity": 0.0, + "unit": "g" + }, + "THIA": { + "label": "Thiamin (B1)", + "quantity": 1.0094459332860646, + "unit": "mg" + }, + "TOCPHA": { + "label": "Vitamin E", + "quantity": 1.9486430099457963, + "unit": "mg" + }, + "VITA_RAE": { + "label": "Vitamin A", + "quantity": 412.914494272667, + "unit": "\u00b5g" + }, + "VITB12": { + "label": "Vitamin B12", + "quantity": 2.7136838449301255, + "unit": "\u00b5g" + }, + "VITB6A": { + "label": "Vitamin B6", + "quantity": 1.5326025102852243, + "unit": "mg" + }, + "VITC": { + "label": "Vitamin C", + "quantity": 31.66387038807668, + "unit": "mg" + }, + "VITD": { + "label": "Vitamin D", + "quantity": 2.73245700696285, + "unit": "\u00b5g" + }, + "VITK1": { + "label": "Vitamin K", + "quantity": 33.04133941435508, + "unit": "\u00b5g" + }, + "WATER": { + "label": "Water", + "quantity": 321.1285604946806, + "unit": "g" + }, + "ZN": { + "label": "Zinc", + "quantity": 6.060052750757758, + "unit": "mg" + } + }, + "totalWeight": 390.7575715150228, + "translations": [ + { + "id": "EGG_FREE", + "label": "Egg-Free", + "type": "health" + }, + { + "id": "PEANUT_FREE", + "label": "Peanut-Free", + "type": "health" + }, + { + "id": "TREE_NUT_FREE", + "label": "Tree-Nut-Free", + "type": "health" + }, + { + "id": "SOY_FREE", + "label": "Soy-Free", + "type": "health" + }, + { + "id": "FISH_FREE", + "label": "Fish-Free", + "type": "health" + }, + { + "id": "SHELLFISH_FREE", + "label": "Shellfish-Free", + "type": "health" + }, + { + "id": "CRUSTACEAN_FREE", + "label": "Crustacean-Free", + "type": "health" + }, + { + "id": "CELERY_FREE", + "label": "Celery-Free", + "type": "health" + }, + { + "id": "MUSTARD_FREE", + "label": "Mustard-Free", + "type": "health" + }, + { + "id": "SESAME_FREE", + "label": "Sesame-Free", + "type": "health" + }, + { + "id": "LUPINE_FREE", + "label": "Lupine-Free", + "type": "health" + }, + { + "id": "MOLLUSK_FREE", + "label": "Mollusk-Free", + "type": "health" + }, + { + "id": "ALCOHOL_FREE", + "label": "Alcohol-Free", + "type": "health" + }, + { + "id": "GLUTEN", + "label": "Gluten", + "type": "caution" + }, + { + "id": "WHEAT", + "label": "Wheat", + "type": "caution" + }, + { + "id": "MILK", + "label": "Milk", + "type": "caution" + }, + { + "id": "SULFITES", + "label": "Sulfites", + "type": "caution" + }, + { + "id": "FODMAP", + "label": "FODMAP", + "type": "caution" + } + ], + "uri": "http://www.edamam.com/ontologies/edamam.owl#recipe_e59b15e71cd34bf4b7c02c2f545e40f3", + "yield": 1.0 + } + } + ] + } + + """ diff --git a/cloud/app.py b/cloud/app.py index 67e0dec..dc714ba 100644 --- a/cloud/app.py +++ b/cloud/app.py @@ -3,8 +3,13 @@ import base64 import uuid from flask import Flask, request, jsonify from pymongo import MongoClient -from tools.aichat import generate -from shared import config +from APIs import generate, EdamamAPI +import sys +sys.path.insert(0, '..') +try: + from shared import config +except ImportError: + from ..shared import config app = Flask(__name__) @@ -93,7 +98,12 @@ def device_network(): except Exception as e: return jsonify({"error": f"Database error: {str(e)}"}), 500 - + +@app.route("/debug", methods=["GET"]) +def debug(): + image_path = "microwaveDish.jpg" + edamam = EdamamAPI() + return edamam.analyze_dish_image(image_path) if __name__ == "__main__": app.run(debug=config.DEBUG) \ No newline at end of file diff --git a/cloud/microwaveDish.jpg b/cloud/microwaveDish.jpg new file mode 100644 index 0000000000000000000000000000000000000000..87531df6d9bac86d308ca8cc33c7e6c209a76629 GIT binary patch literal 136324 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�^fpJYJQUWk+hfqQnDu$K%KRLYfu-sB)Jz&zBtV zM$qBt`{PfT=~o}RInLs~Qc|^5%!A)5FQrcV7TmoXkYYI{6nd&W!~c`>8{x&@Jp?X| z-Onsaf}d(6ymq{fA|4?=ZXOyJ{Md4Bt}yT3Uh*B5&DY0?u0xdNfLF6(d<4&t4h>da zY~i+`W=Cwk{qGlU<<)>CF360H!&KiCVe7Tu zY^j@vA7&;vs3=YJXYu!y2&~9Sy_XGMUv-B>JWUM=379y#;vh*2TJUn)4i_BIGxOw` za1%eu`=`CGsl?ppaL|dQeDD&|S4QW2A2@-el_&YG8!V6Qq+N?i1jjei?P&IxCAqms{@D zV8LHY*oh9vq#SR$|28z=e&0&=NCM^SPp@Ni%suy;V8J@Rk5J*apu5X&U6Tg+Z>G5U zJ_&(iT*Hlz~i*W7v;ZfY4VsLW5R{LxO5XGT~X7pBDHUr{9U2fxbQNdOX+OX zV`IsQnN&31yI`Wc_=c?`;Z$Yy(!NZ$y=lyoT$%Wrc8| zD%iy;G3y1vSPJKVX>4)YKYPx>siXdYCy#N!Q!$t4Ryrhcm!a0qkQ`Z>8=GRCP9dlr z@Blp`UHPtzIT9xIYba7%#aEJL3^vM2r-!j?52`-g_z|4hv0jW0S+WrKP=l zTP$%Xx_mKj7f>R~FeBb%{H%`qAN z?cXHye_-tm8hcgE`&Gru*SG|yNPgwch}j5QageXnSHD|?W9_1QMOE*?GZ^PFZpibt zo*R(mLhri8=Ay_KdN;C|;SDku9CY+e-n5J^e03Bo!3jQ`tAP-Web4XyVl~d^DE6tw zs7+o(LZ|YGy#0}qcVS(xJ#;dTeN38exb#X>dbA72srmqN*|z`2*;s#4+xJ^co7Px2FOpanBl|EnLZ{x)bVo!^D7<|q3YsRHk*ZJ$Fdo2+ zXunB(yG~CMWk$HqoS)C=9cgu)mEHb;UANhwX84w0tiMqoE;L$WKREOReC~&(#JAj~ z;n@ATF8}INZ0F)r(wAL2T#g-!lQpf6iV%ykxndE{Cw`{+_b=``N&DC&^U)rykWyGcA6o1*Cjq?`OwU2L;NZRA_PKEiI^o)0O zJ}DTL{^bsjZF2Qn`RsSR8wBm(&~kcLmhESsBY|(?Cq+@ z>4e@~@99wPsGuH&+^C7l_5E`+W%1H?A!WC6?$Wt({C5eyE)$r3ud-%a z&`+puvM)dKig6#p%)z|x#oHhFHdOpPs59gPU~x(+i>k7Cg;((Xo@VPgDB8xa=83Il z+1^>^)}FSCj{b{G7doeTW_Fk@`hqj;dG&y&opQjls=qq@QSobK{$|Ln$YXhpf^&W+l7HuDzUS}k%Nv*A0XKH|sG{+NGog~QJyxL3i!lkl4uPlpRSLQuP-&NnjY-!u zznCD0>wjI*c`ifw`k+q$US)gcji6SRg;LucdlIVk{I)vykRG_?(DM`qg*(BSmucT=qTr4XVqxZWOly{3mvX|5fhsY4_|ZJJ}t@ zfhU>krCO|I@6_W@&?pI?rMiUMvKVafr4LK1SJ5udUB^E<%tsi!nTv$ZnhqKN7L#~S zUhm%GHTSMVJ-3}FHX=h*M%dzp_7dN<`;v0UqQ1B%qh1p2;y*>)7xI0xCSm{ZH5y`C z@!YZLzD?DKjY~Fn1U34X!(I!CcWB(~eII0@?~YM4rai#CqsK)5(OSCoLW4E&N$PPD zbcVSML3Io1zId2lQ4z5r46dZia zFQ zog%^AX_4aYK}!X9iaYf3e*c}hb7wM{%$_;>oU^j`+Ru__Ej;LDM35S`A^rU(&uz%C zL0Dq};#<8xettFT{_i%akRM2UGZK6$6dv?0W}f$LB4442BYN{ zFk|Yu{~@G7iJB6-y4tG!7EDzv$140w(#eVUmSZoTsYah!nlX)#mjsVlzwBulgHn`E zp-IAB`LeAD`{^$}@9m|hzaE;Ti89)?&3n>YxR1w3C&!ZlgfLN0{O} zAN-b-W1?~CCSf|TkOX+i+!XQteN6Hakr}*D7i20X-3~t~D2;aLNTLSG8iW@?4yU(U zBl3#9WDUPt8A>Wl`MljDa(1TXL~lHpTMUE{m)NHNL(sS;C^L$Rq8V-(XjvpbGDy@J z+BIw!zTx_l4H$ZtFRM6S(~bJLErsv6O@FBPGZ0piqw`KifAkUjGVdcwavZA4y(4UG z`nBt6vz<|u_w-PBSJ>aOumFUw%6!6BmlRHv2A)kFHSNViAsxZ?+Y*rdmEC$Hz5;R^ zRzXM}|6&!jA@+4JMmmqv!oIgUm-|J2v}b=SI0>U+?(}v2LYZqjyE)5^?27H2p7tqj z9nU;pbNr+5Rq7v_W+TGjSV_gmW-&D4q&X&cO!f63PJ0;x3sz&V90}g=NPmJDNSRO; z{aotmY24gok;DpOykD<+lUKEa<+>4A!tzghL)5bIevCsiYp9?g;fL9vEHj21LG2V? z#?Q|nWq+G>mETY5v4?wKJXWwRy?DTwDev$VwOO;)n9=Y?=WWC<_d=hN|6;`WZ-}oD zzo+<{bc*@JdD(|EF$6#O>w)PlYEH=-jFwxizd~=5=>)Bk{h;!(*Tg9IhnD|kP1wtA z+&_e>*L4d!x4t{64&H)5t5Wat&O|q(l3V-6PZ-d&EDwDJysSMBmHB?c8f|6rf60i{ zS{3b$eX_%NEYaX>1F0`rxnHVL%e`x4h+AS_x!RVq_9fSz`UsQ#aXQCXPcS2yR?zfj zHT6W&K~43KaqJ)2=Jx0J$64GAw>GFNJop~NHIcr)r-f!K*MtM@O@qIh@J-VB<4cxT z8KUFuP={QRz4yekPq#3i8UrF5^GnMQp=g#QV=pLZfzm<#g2S$UlZpvCDY>XKHKpq% ziahH-As6CV^|=X|y976f4N7nsPTQM*2qOAD!1Lg1`Kw-{sHyrVrWe5x^2**^D?4%B zjEN=gF&c>`2#gY>HdZcImroNynj=H0*P1)^<)d-Vks+(~u)ajLO zQiYD%yu4^i?9y8LH)X~C#`D|C&2>qGxj-A1Lpx3V9d+Nt_k)GCBDsiZ z>PJC!);e-4y7w!CU3WXJiT=H8BT)xG!~;E+_ss_^0{*yYr`Ly31}HAmdB@tW*p#&S z1&Ie56bntP%r6X38dYFXtl6u)x8mN0PO*-eE-}_022*=K^_wp1({eh?-el7qcFQh$ zwe>K`6}-~JPjt;$999Qs6U8+z&f9~3-p7!kZqM9u-9LDb(j8&i8iYKSrmL@{SsHH& zbGT)kqD%q5Sz5Q|)|<$KdFoP)tYDF(x_f8sK~((m>)G3A51;-a%%2BLYypy(UiDJN zKLn;3Tbt+He+ZU-$1^}P#>guDLMfRNkj~IYzJ+a1L%Pn3@J1UWWjz>jL}XKCitsGa zkAd4E$$3YlP@muJF5nv?HyT>Y4={=`+@pfZ+VG*-ks)t*$dEai{H8nG zn%LIT3qKGNv<38dhudsai^v8aX&Mr!@kNfkzzZ5pmSEXbySRK#bressKx1R)q!uVm z9lri^)aBQrA%&ci>ct~hTTij`(_V=-O^&L0GU$^D&S+Kt0`qmwLe<#TqOVV%PREL#}G8;2UZGw z@JddLfeod0RW8m_2U++PtKgTy8aLiAp%{nP8{8i zETc0FA1JTwuV(qi>HOkYEr-13W%ctb^^_D4j zouo(EG;KW+xqJ4ieEnuo>9eBUjphvqGKhvgw@zA5l;iG%KQubc!<y;Dw_w$;CX)MGDTPI;U-bQ|zpP!BQ$s zeaX)^;t>(sPJcF6qK>0K&Cs}A5ilPKLk8ck{P8aMkVv!E%1Ufi_eIPsv7pj^<>YfF zSUbdfy%kn_xIV<5RGQA(J-K9`5N1L4e(j-e$muhg^JvHIq>%(!;mrSgW8A%A zFEM}EW1-GvwcB9ABW2vZ&!uZy6!B5w;#FxNQQ~z(V64%2Q>8SHfP!*Q^)({?ZdG6o z0#Yw)%I8UqB1Rt4Vc}4YY>LFmXLsII5LI%Eb$3_th2Y$K_Z>24wgaV79XmcS(SA=G zMd1#l?jHj6()XXr8j<(|shnhnE@kNRVf`V2MsWGpv~aP=c?l79CoZ1hv&MK7qhQIrTRm213#suSxf>9W~Y|5kZP zxJo@*j=yp(650K6GW%UPS61?x>8k6@WAmZ#sWVD%A<-=J<;Z;S`N>&9T$JW%-1IKz z9gX%Wrq;X`b(^Ijd5S;a8#?hyK-P~UjlM59P0}LMMDDEBER%=a9T?Ycm_`~^o1|lstzZ&OiKpeLe;SKrD{*N}kd}YX6sw89U0g+yriAsMMSzXE!$K`8pAFqCq3dn+jG?$MHizSVXM)0n1zlKB!POk6 z6Lwgo1`=WQ6hqq=O4Hz^FXo};q^$85;vd!yuQ#>|FIF{KS(gQa$+Jx3&wsGfK!cU0 z-$`(mTczx5Z+>K&yi8lKAUGZnw!=&rC7yv9UZkggE9h4Ssu1^JLukqqe5$}! zI~Ffh}8X(sZZn3k8Zr1*IEiP?81Bqdy8 zjC_HRL|$NPXQGmuJJ3Wqqy$e#c*1Whp3(EhMwPdWb_-LvOnedMCrVl?eL;dOT3&yg zk2g?h2GUPjX8TZ4f17QZZG8jGiyC(PFx0sZ`$nX?T3h>2Olf#hP!fmY7wLC5KqGuK z1Ax~JN0v9J4AQ{1e-nU$_0(QUUoz7Y13sw=6^`M)IFyKg5=A<&qLh7ko4N59kvd5n0tbJ^J?)33+iAHrApr)$YWwF6(&J-JFMqw&m_ zO1bAxw+Bb7TfyO`<7%CrQODIZU-h-m`D4Deu96NSjoo`RCRS{G`Sak5hM++uopgkT z8MSnw_<6;}GU~%R^F(yP7)edujny$%8w%?DHuG)p8N}v$L<7^nn*tuon~%YUEq^u( z+iyv1*&9WaOw?>Z?jme7H14D~1j7v{>CK1V;shm9D(;~YLy&+6w>b2?>t=`|J`YKv zUy~KixA%damuUDm!?Z|rBMltyu=447<@*GUuAXA$Qb%{yE_(FW|8Bkb70p0jj}RZ> z1qTU&iP^G|g4eBua0{7=5YE3|FJa^GCBy$k}UI$LngYY35&;JlqML*`)msq;|tZ&-5#YJ2aOL#7j zLi|(+#-G@hoL?z#HkEtL=<)rI;VgBz!}`lu@=xjIRsqFd+bi_LH2ebnI^a}a?W~%)7&-#1tqvA zqogHyw`WxTB=KbcF-EL#VhbKAq>MJJ#vs*2wS|WyEa8+l8}WH9_9XA0tUD3|GOYx@N>U4O%r_gIB%X()jfj+=Z?S!7 zu1{5bzYt!NYA==R(VC^^p+wT_vU&9P0_T8hTe=?Eg)8dNUimkLEU&h0lY)DaV(kEu)>~0E=tLik(i@S~CwV|~>ii%!B z`-;38N_`%n9xwk6DUdXP;2~rdH0Nq{rLr!Z`(C)$ zGEP`F&l;Ya3c$AUsw2m6-k!5ME?Ruyl^^s!eOWp$I%@xO?bG`#K1rj}lhryy+STny zCJr|gyY@RDSy+LK>C!!99B3|cj|R$Afm2sf_=sXWyxcb7ujg0f= zIXz`4*?sB^Ie$z)kVkg~{v_Y4p!+1Z;OKBKvGP~YaBgBD6DCKc2YwT0u)+Uu*jv7L z_DualUa#}_@|Av~%+-9s>d{@csQl(PfpRh8;#G)14oZEy0Z)3bT?(hYxNr_}g-^jZ zOztfvvVREog81*9ae_mbW@PeJk+x``UxaXuMt6?Ys9qG$S50WtAut~qhi=beTekZ&>m8&KNzZgYe&cij%u|D z-)-daAkhbXUO9;R-0EJM2Wj@6$n;~6QPk*>&P9RFT@tQi_}r!w??{QS8t~~(n5}VmMVGc#>W(R>f zC*7sCQ=#RhYxW5JZMNi@^}sq{{q)Du(v_k@1#JabR81Y|HC2x5k{MkKw<*)KcW#t* zo}-&Pm!+av%*{2El8okbOs645w&~1#MTMI2PkP{21sZd{qLs0H^*790OH-kMd!q-y%(D^xjg?3a_8Gqap5LUlpuOqQ z*2DOgc?o~4Ewq(&No`)Is_9w2((4sJ8?QavTnFP`CvY@1vt558442noX)F+C?T+=( z9=6#08Jrh7na;3uANw;S9hS?oc3*w7o$86`W-VFqm-6C0wE80BBQ4OMcS*=}J+bm8 zQf65+rJ8L2yL<|#&;)!g+bp=wj<-YtOfYOkr4wR%th7J}$^?WoNHGzc8z5>r_ku$U zg;?SVLm;p*LhTk$k*wA-;|nUax8?ek?9Lk zu_uLTUIQxxPpAiBiKL>9Sd)1I_{ECPfHB||K!tFW_0g3ul>Mjkye*ww=|}MP{97zB zB40@mC=iD<9R6V+qq~}oz$uKO*;>gt`6-a6k1V0wdXt`HPphOTH-#9Fq8LGb>` z08iG4Ouk;?oEg-06!kIQHTirHy*27XEbc1$;*Jakc!&9DZG<2rF%|PF{k>59b1CIL zLx@glo}IGX?jFuBNw=?iyi zZU$%%n+1Shc$5binhXBik%B|98B(trz=t2vow*(yvI9v*oOh5`rm&nW5(kG$VzY=*=%_+A4SE>mKxKhx_3 zeJx_=3J|8qGK7(0n6LPp{+gI@yk%5DwOTsH@1i^dq+Ku|cZz-L<7EW>=2FE**<&De zu!z)5NjJBWUd>!CxcBnkQfLoq}-y&c?-h`9)mO+nnz0BXY z-*^IzXwg7M3g?q@gVje>EV!4*}vb|F{z`VlWc_Kus z371(uEKISNOI?~Ou1^KAOu)_@zJyfBr#H4e zfE9&KtZ+9wh7}LT9tJ?*6X<()k2YSzd!hAFxA{%<)a+UkhU8 zSYq9)c4oF{NLn6GyURE6pIqxEOx-tQc6owhtkX#2Il?uxt!nx<&HM+Fj@4BupR4&sr-{3CC%co;wPRVU+0fCS z`^Eu#bvcEE)Z6DuvkK$NYjdjdw8QwRD!3%E)t-AH@#Q9vW@E>mLGRT8ZIy%6Nd5Qh zfmPjj$uS^Ep=O9>pw@__&2uTCP*-ooprlYs`UYH*Rx&(ScosP@0CfT)PGuL!elxB0 zib5H`*0MBn6oR_0Xa;VD&`lp}t#O^l`wO~s2qASio@A6gMq`R#5{yu$mqs4StB=lm z711o8$2B=)O}jbSzyrkQX?@2`D@d)qX?nc+ZgvcHUCfu^<%RivJkkqX2oOF)DIy={ z9s3{bb$0&{u(m+;hAhzFmML^K>bgHXujJM%X^E>5GlvDhnZrbpa14~#d7cM7idSNUBYwo+9fhg0u3X~<7V{`jA50T3} zo0@H}$NClQ>Op}Y8s$%7%MP!B@rCCJ%Tid|$MTKX?E>zWYO4oeLE`qHu+i^v$+Z(? zEY099$1Zuj=BcQSFb4)YMZ-Mo)k8`;}Y?1uq$q7oYWiHMDxd5-jU2t>c z(3JIbq`&2KqwoX$%Js7q9D3-;U0^>lRrveq&GZV5c$RR$PVera2YjVrZ|B0Mh=k?;T89Vk&OX~fG7;#vy$hj3{6O55RkZC3K;Eh6&k2kEs@ z$$vDZSKbaT9zFpQEgd%x{Rb&7X+nUyhB>dMg`1f>axygJf1I7ywk48p{voWXs(_kZ z*9EbxxA>dga#m~B`E#bMH#!`6UpKDTJN2b0mqN;pHcV1Ja_sV|wJGawHZLfAj$yYJCC!iQm0(&)zT3`8OCPQ zBW%m;>Rgnt*P$@k1e7pDes?-L4o8493LIzP9|E9ML{lK4XhGnfpE?&Zb7(+0BH^X1 zJ%xgqGkNJWmUd@p>zM$%cC{0jDw?OFo2TNX%;vFw7H{nFbo&0i@<B*d6mbuUWN{~Y!)i8^HR6ay+LVE{;HpJGSR41peubQm^kri2IDD`*_N;IpfxuzB8CfaCw0W5k#d^ocgraTZ%1NsaL-PzWcYT{QtnqVBo(c$sratdn#4R*LmlDA`>Azs{8aP5R* z?I_CEt7GGCjmKhMKK~ZLBqf<$&RWak$JH014r!(*Vf_Yze$eO(!Pp1d?Q2i(rfDww zSs3t9$SE=?%0l0#zaC{yy~~WU&qtO42Oj<8Q;k>3L_I)%H8bK z3=hC%{rWd}rCbYTD-GMJ$#c5qM>vG36{`Y?$I%N821k{mLMaB=MjIVlfB^0 zS?-xIN0{Sh#64cYc#XcucnS=CASoW+fEDf zV)Xj+K&>{_U1-+mK{6<{ot{fD6sExpXVw}-iD7Nb+E!K_KV0jHl>Nj9c@l0Vw^5*I zU|9@DPri;JtPDP@R=dPzD%Pz%qO&?7{dvIo75?PdY2!#Z0uRTsfUeJ*DJ*ze-qYNr z{Q}2kDCEcBQ{}hh`U)hJfUuVmiX#-(STwnlzJzOqXcdWki~oBT^lED|mhCxc!a84K z3x_&p2(1@IRF77tFVC5MqC-MxJ^?`NumAGWYejL!JR^E<fQ5w=7&? zlW603&-V!({x?o3voisaiQ52mXtDBcb(LNq`JRi#SKuU9fL@@KC0@VsU|ze}a#p*o zgi%iP``WrVrQoAb0izeYYUVmU*S?wUCUc(J)!dsr#V*lDk*E`wPLsmuPAx2 z@q$osr#Dx?A^1?Hj6p7F(sJkX@TZn=Sy}xmyh=KuJmn=3EQsx_+4uNt0s^6`DED;w z997U7-P$#_U?1u~1cDfoP-=mw=ImPoUz1F8_vtU?qY?J4yln&fz04}fj4E-?tOssayRm1n?%D+l`)O1w))wU~@y`?Gk0%AzFH}#6)Rmm0hJgPo4 zyHbTreR_>=l5adDjJA_!Z)1Y3(LHaVp|CBuLbaaW z&VuB-dz&|EU6SVWGV*wD)w2pk4ERX7EKX0HKje#{YLVau(XKDaz(j3|I0o7OdtBY} z?Z0Xh&>tx5A@OQ=U^N*AmMsif}Y`-Z>#lx;{BIT52dQ2?W|IiGibNKXO7sJD zW`_k_oN{yiaFm{a3*iFuES~$F`1nG9WdVpuDnjDO*y#}M{HoD;q03TMi9#vTG0pTM z-pTS0)%WU6$4ZSjg0}wu@3hD97m(aGMVnGL<^^s~<*PrnPlO$&*{Lt6Uch*aBJ#4c zLx}UJ;<~mt+50B~q2R-&Vj5YUKv_8=X3`NBTqyrlS8N=d1!6}Q@t#tRpwkKRq~P0_ z_MA7f27iKi(i!A7HuG?lt*#++8kF6&IhFp9Gwg+6?}%8+L@zTshMySh7HUOU`pRSA zfRu?8qt>-7SvVka=}glx%1dUIWmZBIRZzpagLZ)Pr=;8#@&C>Hb2cInHITgxG}Acn zG2UBQx4fv?iS+yI-1|!aqhh|9=2KIxiB$8SuBL!%sP# z+A+H`{eS`OgS+y%#yi;$kS+t-l z<$9Hc9b=qyJ$m**5cD?PF%;`XvI1Gq&q>UoD*4ojOh5se=<_uE@lhl{2}<}6p?X65 z(W&1Dk0xfwcMWJFYZgda8z%~2a) zz7m9pl_+a0x1(}fC2iF2al4k;HN4x=o_XlcSmlM8-XinS5$OV@e^pCZCn?0HO&S3Y z@eXZA57L&f2M*1KQiz&8=}XaF36)8ycyRf!-ZX|@JdY-06PNhufQxfas5r9N=Rw(z{d1iF7yzJTwC3=f}I+_sprs z9P3$J${Wni%8FBvAEs`dA&Y`48%u&JlQCIiC5&?_mgyIzK(jI%uvTm+35jHju`%4Q zIFqQpghu0gO=Oey#tWzp7NU(C;We5ZyM2v5eb|0Wdm;)6+|vO0CkNp>8&p6b-QDI`)O8JN4`qH<6{HCC2ODxy{>_wl)SLvAVs> z{xYj5qC&=Jc5TOpMueyJy=2Qaz+V_=yNstWNpQnPZ-~%GZGdW+PiVXP6+}*zKvs$H zG>LfCShu~UrEw#hES+{R9=wmG<0@Zb7UpA{X$06hXKO#kT9kKmGp0I|Cn3Vrz#Xnv z8%CpRKeE-U|BMIyCz+KO1;eN$dS=((0W-r=KG^e=V|^c#hyI}gq`2@^){F&mKu{hB zft=jp-lVIKa{FfU+6F^k;=PFIVf6Vb#hC=MDx{--gc1VT42o9q@lvQ1Z6i|gI+HYX zd;cL|)At?=rXogno=?ZGb%qj-YBiJTL4WM6!R4gWQ@6ha!(m#tEH^Bl@CMxcKR(2^ zkS`N>Fu5zZJ;Ylp$B--9mNCAD>0MI1&{G+koIC|0l-C3jnn~LvB7ONFv+?fQ`@W*@ zs(!#=U1WC8sjX$!H)bZ2{4|VZBW)y-pDVpjO>=+ zg6SpNzS(e6*|=q{jRi70Y<-eglhz` z$Iz!|BhGAzc;7jL$#B2spxe%Svor%&p`%`0_DkM^@4U|(NHjQo-~S|^(w%xF+@&Mq zfs8@XC~QW%tyli=acB1+U*Xn=mf!udR!*ju${9~bPk+Y^=TDS56h6sbp4erPP87fV zycJgl8B5gn++fMXO*#( z9cUJ57S*RRC?@x)=*G)Eyp@SwyoAW8%yoXz!Til25+RU{N5-Np6t(oA>~4K8mcSUA z-RVN{XHIwZezBo!s7v({?1F6l_l-1p&g-&WQ^_X0?$Oybr#gS?Nms>XE^ zwtT!=(`ja>njQZvIpbx+eW_#w$7+`BDMxsXQrx@hm!jDEK%*|I2nX*O$l zb&QP?M!6~o4B~u*s&+B@VUlwu24wR{cu%?U58s2HRK|ivs)EH1(1I$%J}l23Ixos^ z?mW`O#Pkvv@?N!L4Y;oJk1pA_bqoyth8{k@L?XqLK3je`$a)as%MbS8d7c^r1X(}z zS_a>}I#|Mj?79r5&qDG?sIb;z3&mptJIE=2pz&FLK{Qv(#{)b?_^4}2R z?_Lj<)w1le*DP+M=jeF+*OBI=6VsdH{|4?SPzP{+tncy}DHWxVwTw<0s5yu?sB+!( z<(Z$LbXF_?ISSaPhLp0hg1O@HBD(w%_}A=FpW<^M5D2@DBkM#?XxrwnU5<5jnOT{O z%$iA5Tm7smbEup0L(XtRo(xiUtdo-Qa0WL~+*5kESv>njcap6I^^(6#p{xuJbqShJ zTKr9U7g$9@yVHGVGVYEDgB1M-24G4KUz0i8a*Y%iabWp2Pd6)=%AC|_z)#^e#SN#k z(nAkXLNq8`Oa_Rj{(9X(1su3Z$|+RLCyST)pDeyN+FJwS;}6`g4EesT$PLEu4<^gi z#v|K>xNK^00IjJhvNMZQ&VCgec>WAi-?%+=!xIp^0zz~A@y^|cyTVN?zqRhm18CNa z4anIxYl-BFv4BZARqtVSc3D1kCedX!bWv;efddSWD(=GM{}9kybc3HOFn=|0ark>)dC!O`M zS{vOV*%tP49BZi+vVa*eM@@n*B-}a06b6Bc`VFCI+8Tt@Rr(8$)fOWfw$)ekZDhw(5I_>ccAj< zW+QdKBOnUhFr$RPT*DT2FUw*2J(QS@o!Ds1{ICZ9V|=IVuUO&D+R-f$O)?~-oPtce z(Ot~^ddZRRC99W?HieBxBu!sgDJwBsJ}88 zQ3ssX&BN~@lt#ApsZo{2il6c_O$jZ!ttxh|LuUXHf{dX_vkiYpkI zg@5m)jB4S7TRz&EQz*baOWpBq=JLX5D!hYrv^y$YGG#m9^)|QiFXOc_Ku!5t;0)sX zDN*z}OCsvXa&c1mNft7FIKN!79u}Tl@iCYoz8TlHMM?}^2#WcXzz2vEP4RC};XpER zCc5R2%l?O;Eyp1yC*(}`+Qa5xbxrQCzWj~O!NoaDzn~~+<1g&VH)YgX;j!y_$B%I^ z37{fn$snWj%ZrU3^?l2)Yuj{RdM}#SzAc2oSvwTHG4Ct%QvfRJQzyc|UffkZ8k7Q& zM)qAdV?B9Aaz331`AiwJR>LOe824yy(d1#7I~pAH8t;^xHNkC-RWp^^oI{|p-FaA>6bdysnLbu8gc+dcZ`~h$*4hF86)4Ryk*4gDj z3tC52-3Yt2P3Z@X{~^o)Wt~=ZiK{2Fqi6KfyNR=6;goDS7UOJ@W#u;p+Ztf{3utf3 zFH5jbt>BBoU2el4-4jhv9_KfobBur*I|DyUu+}f;5R3i{X@#D7&Q@6|!c-4s*+y79 zcUiP2Z)1fiFL%j&<`dRal9T`tx;Zb29vdD2D%?(#QHMloyM~9>k}|$vWOC5Ye~c0S zCBN6Un|k(u$Ml?GD%C%7ykGaQ5R;keT#iGNJ0boYb`7RSxmfdB3BfDiDn96=H$lrDy}$}#Z`RYk>N(@a718EZS7U&a0QF8nAHBhVJSj4cn)lG zzsOJPVK|jvk2;8MHw52O66THM1CQ^8W>h5SHNwXH_gfTsM00#ljiuq*bV+%efh$R4 z*(pK^?EtGphJMsg@&b9oO~b6E%`RUeY8K-KyoegwoyKez^-zI$BIU`6`JosKp$%V_z1Vg( zPHCZ5AYUzM<)2`?2g!VrN)(axl81TKxC^&}Sji2{(r%WPMtfsTX5o>ED`22iISYBA z^zF;UNk^!bgj=LunYZYa3V|Nn-bRj4hiEqyzHReLV;*N93QM+~Yt;bF*|zKuHj)e* zs^9^*s(7{1HpJnh*cnMBApToI-_Cty&lI?V>X-dyPYZo57R8>#p;p*81u1`(lhz*u&H0 zGfSoi)Tdu{-mdGDDs0TM6KEY$TIUT6kjQOv{hgSI3(ZablvtWivb`nF5F6OTBBF2n(K^Qx0^6C_YyOdA6x%k_;8q6V; za>xcj3eiv>s1$DO*uLR?mDP&aY!%SFI%QYV$z6CT*0CELjvWHTC$Y&DCL1W2-&A6g zM5IHv7mqc_&C}Y)5#twmH3iBg;WUN{|H*uBphE`XXOn8728= zU0K$4DnbiiTLOSax5ww(Tl{ore+gBjH%{T<;}Rg$+%4ON%FyBS@PcEDWusa2Gp!~U zr(SW)KZHlN;MuGcfc6}F88DYh8ABuOm0uE^iZdGhdbTfM9WdFUZTl941DG!Fh4xDe zQ8h~8%4+*JE*+a%3Y)w9rqKQ?!eom={1b+_w6C#$i>RJP4-zQDeTy?@D%ni$z@$)K z%t8OzjY4;oVLHF}75rG78gqjmce7_TWx1M96)!l-tbBy)>q6JK>hBBvWY zUzQ!$_r^(Q1`dT%u$socG*7T(YGN$-ERL9ngAJm=C%Z0ljm)?{;1RMHuT34Q;rkDv zSw%KpC4N|_BRtfdJb~{T%||?%Vqa5sGRj&5S4xhJj>+sfE#&>7K`Ataj@U1h?u8)< zylmOfUIA6Oi;7`(-?j(6Rtw9FQp=L9FG3->f65EAE$JcX;->x@^ySq2u?5~Ya&Xj` zd@?9KFcUK+i>oY)3suU%R}rlH4?JuzN%A7mpAclV1{~06>R7nrdvwJ?cwuoE=B|A0 zq-iF_lk&Hezcu8PvdAG;!_0&c6Pe}Z-$QBBuV}+xf|+OxnO}0dP^CEoB{fzLIUb2` z^S1F1MzcKWvQ2jQQ|UJo>5nzeW5yY`WQn#ib|#0`drNQ2zib3&;WV-7jM(3Ov!K-}{g_j9+j3{HpVg zw2wbUzIncSR_g}c=BZ(LY+#;_24T99#|r&<8Y1G5O|lxD-@HJ-l+q-w7RmPCuD#Nyc?7%p=yOW6iU%Mq}4bs6h;#%53OhmK&vVzf8>l1knE zY_Hh#2OA^em53jsw@56u;L>7fS{ky6vHE5kKgc5r{vqry5HuQG@f~mMNed$rx~847 z>ou4Yvcwl#f$iMFT|~0tY1YEPuc~eY{(wWu6w1Iz8uX>$*b|hWcrL!cBhA0qIl!g8 zqTh;IwBS?RBFkZT)o8BXCfBh0{{X!}Lcc6njF8;F-fDhG>3a($g_PAb3*3;>QqD$L z#>RFNoP1}IVLL~iOI1*?>R>~}CKj#BoyCMf2;?p_e?%Bh(SA*x!wCj;@WtFnMsaa! zMx(lq=zBZGi8Rg+hSO@fGRv5rFpZ&Rj8QpYk;f?sY9o79>3)bP)*;NP>73=Xs{TQ3VuKxg1YD znVz9|R%O(ehWZcomLx+?#e@{-TYn0QNg)iI@|-%g{&bQ&h}(^BG*Ugt z`i>BvqWqgWpF%;M#GT7krO40J{us^67!qt*?i1)DR>iqYMULj3SI&vxe`#S5K`5ja zzULG8H3Sfr9Ydb>IBxO7mYT0Uru!Ganc2 z9}vfyk>$!qBS{|ToI3Il^Spm`C+NQ>&Z2n|2uz( zQ<#=K>`N|_`H5AsGmuGN8wma9RU(OV=zBLdZ6%TXH);tkqfm=xA;RIBVn4c)^k0;Z z$dZ%wN~pUWSL$Es#(Ny^e=+Q>;k(86y@GqP8E$nI1}B2$>2l(@y~GlXELc+m1EGHf z>?D!N-?E!hMJQ zJcNyp=y0jXX|abB!!w8yEjQptA0fiW&NydrKSlXShtrDfLo+c{mxz3i!Hco~0P|Mp zwJ=*g0C5vpx<vR2YXsNh-9%(s0mq`iz9qv51NFG|O}pQpas_EcHUex#CTz&mIIaPb^Rr=5V&r)w zUa~oQ5zBF#{=(4&5|VKqLT*^k0{VoAW-N#KQ6o|q%uxr(Tvwp89?*uf3*Nc-kg&O2a+WvPf)Z+mboN(v{Zb1JkyMi5=M1%P9KQW*p?{d z?j?!wd0h!&XH!#6hYc&_Bkl3n#IS|zE9^>e%g9M35XR!ebJ>q)v1TC|s@4zV1>yzb z9xU%Q)XhlVtnMOp(v~b*mMmg6s#w!7EFg>$A~?k&i!t$YiLi%4Ma_O%H`waJ!l9?k zK0FSCA4wz3mxlXDUv9M1(|%_YCr7luv@q1<(|KlXksNw#BU}rK`%*^pOwQX9DX1~z zZWU}S$VtWeNjR3C((z?ch_5kJrYK=Vhd$%s5pIIg-aDPet6>@?$k|Ba%=lv{&AO7w z^AStrF5>KW3(QECqCB}`UJW0=nQIog#7CT1k=_@JBP8Y{!|Hl0Vj!M8i`7Mpmtr$) zDJE|gH;WRU&S;t@o&}8#Q6u||+4MCq@*|b+zURDp^N}vX)0x9Xu0`mTwIYi#k>N<= zI#CG8CHf1$%p%x|L1_Jq%mvuYN0}YuiG?`$y=)?gMDS*2BGyNeNF#>PqU>>Dwp(({HXkVi1!oS$Vn?RA?)y|s$?Z?OBj*HbS$nI z%GgNBWU>mk`KaC^(OYrxh-r_EK`AEUl1FhFV!{@siwR4T9;21QY#@ZMq6#fAEowfx zUZ#)kISFIWw2d#?b_=+f>JaqD!JUa0BT&qaj6%hT;d9Jz5YrK;l(2|e#;GKk{Nr9C z(RVPSm=>o}NX4a#QpKwGnGBFr6Oc;t?pld|P=ivoxb|PP%cC&p(>3WCN+ zg3${Rrqr;l6{U+75JW6V70X~Ln9O}hXP(BJ$dUV+CWw)iu%;I@2++X5NW_f6rqo7^ zfyJ<;j0+M;fq&r<;yk_l3Wk$SHw#@hJdzKz=U|Q#aq(P|9gP!5n8yxbh+tT;V#TX! zU@J`)NG}2`OhU{-u`)p-z_DbfE6fZ8EMVgSR>nodOol=C82C0FDCtzc@Yk@95pE}k zO|LW!I~KJuG#Y6dLdIl=A+9!fVL>5B-0L7!kd4C24kke|KE-gf&nrLaX(`lyB@HEgg96l!+Z!vk!Wb-GS z<}NUK9AYIj*kIHwpRu_dZh7qg0C9^dl~)TQm;OB;V^F`3O|KRYw9|RN?O3s7E#kSA z5eyt)>e$e6pwi6xc&;ph$iK?wGn@7{G?-{N>S(yrac|qxG>s3*plLM0rYTJ~JkV*T z&!KM>%#A@_zs#f64MQvb)<^vsZTcE)G?-{N>U%%r_J7Ht`7}Q!hvc)4W0=G8U}O7A z>lv3X{Q5{FiSxOdg2-m8{>RMJGcqn*Mg8oI%|lSlf7&-LW@c&`nVFfIhGu3(%l`oK zng7H9QV;+E0|EmC1qcQO2nhrN0{{U40ucit5-~vpB2i%zGE#AY1rQ@bk)g4{6hLBf z(cvH@GgI(GP-Am~lA^LOG&N*&gOkGXL}0Vhkm4m&)BoB42mt{A20sG-0P>M9aA@M< zy(Zm2au1(^-KzS(afjxyQrPR%ZxaD}A14p(JfD*Eeody%Wry)rG^u}NEA5oq-G}f} z{{Si$_c|B*Z~SF{w~zf-FZT2Q0O~n^w@-`8k>!kDD|5;XfA@a{cTlPQ)qR4EUgn?0 zdVeGz?7A1H*mjCt*FtL4qxb3l3(@V=Pa^0(^(=c{KFR+8*;3;JiC&X!rcVlc{{RJt zXW6S)cRk<5eyim6Q*RQ|SEura(cAW2hv2boo>s>0MpVse&+oGITMV8qE75GUnf;af zOgx&u)*RmDy|g^|ui80viCtxUUMn)X#dY27U$u9&VZ`inYLdU!UVGPFr@?wkH0pPS z75tq{kF#aHLZu(NRxO*#FWKF}eyiniTyS~C@k8kw6+NZ8xuft=wd|F)cXHkeDebhw zxK!QvsRl<8{{XPRS=#ARJ(BDD77deTskJ+v=w5=8c1mYZ*!Pu-%AQv6$B3&orr7Rz z6&o(cPLDFLv=)8aCc3Gqh22u)pPMO1x>oAS<5baXrcO!&Wn?|8Ca+a*ZyqGd(P**@ zs=9?;q%I4r7HBrYc%sZf(W^?3;ya4nuJ0SKPfDF{yw&M8Q$+EkP=AyBtnHleeUvy+ z@{0#%C)|T}x)ruZe|Ra`wwiT$HP`lkK7O^dvYG5myV#37owAy)?N$5&Cce@1ItNam zg!5Nv`dwfr0CW#(!?EmC=>4U?v^Wk8vXV*f^IXT9s~zh&T~g!5RqTcCx)$N4$b-?a z30WT!vL4l#M2cnp3TjeyK4HsK;<3}D_cU;oCAfRsr>1YTuiB4lwRR5q{1>WxRGLya z!o4uA(yZbYpY2&sa=0N#znaN{fD~Xui*tIzU97G@q->z(iklryG|Yg%R@<573V*w) zbNH^0$~!CeI-Etq#j@=Tt;weT&*x)OtJ_V3H#opWlrimfKE<2uUXFG>oc`}{dsOYa zVcKf;DJ(k%%}-_>sJfcfol}uE{SFIKu0ZitGu*E14dSWL+1gmf-Oe|2+`5zARhZDT zj^(`L3v{0_ZWlgn4ME#(&}m`;%wrAk^HWb~sz|g{Aw#L+ambS>Q!WhyK%lza>7z)L z3rPVN7t4;ipfQ!9<0@aXFq3Sqzh+z9ejOjK<_UN2VA2c`FAbJD^iAx%?|3&w8z#-t)cx&c z>1!D5ix1J=Y4KP~fjp6#ScZap(oL4=o@)Ml)@uloO@t|X06Z~?M;Ubre03|(vk{Nl zJ2Hl3=_#)OFpdRcE}rxWef3U*i`nr^4Qyp+6kOAZi-Yx$p~C+F8Aj-m=&~Tpk*AuQ zcw~pH^5~5fS)QImH-Z_9aYH%c5ybO;Qk?#gwNDI+-(h0ia^D^ySxa16c_3aV?KaLp z96L|m+<&)K{{Zp(W2teWU-*U5`BI75YL8i<$FoJ!Z1r1JoLXo3xAl#ojC4q3?;iwq ze6)$;t=CMAIsv{%jzUqN5L63e8 zKqw6d?HthJy$f7o?{Lr{XxAIrbb=S8p^crod%+x8^Zg-$g-1?USZ_##vpa_l%#K_G;i#l{hNS5ek$l`7vnlCNGj={EB5Oq01Eh7*;S7fn_xEC$a6Lkfl zUgmRCFecW?V*?!AxM-!0zGz(Ic4tC~$@=2eUhp7yEG57LsnJ7vyi~V%@mOop6#&$W ztXnycu;Q@2xJt=qD)#eXd{%Dmqw@H!z=Wvu@IC)eTXJGkV9FDvZCe@{$& zmr1i$ZDxIw{L_zXtlE4V>mJ~`4<=GHLA1owKY}|>*7LMgbFWIBNqqAt(xArdw7WF* z?<&BOu(+!&Y#4hi9U|@3m}5lF8)NBxWWG z6sqj)t9;1OJnXfe-VGxcy%txb=5vb`3~6_A66VvMDw7MFQGwD#XURqwBFc3jtTAYm zA=mF%gSUNaqmRKd*a$a-Fm+sHgvn{dL~u@Y0Up0O)cC4qvn83r=&%8M5EN5)6T~1$ zhPu#nM7U${$vLB~F@`RnUzt$T4E0LGX3l01ka0I679*;R`Jkj5YYDirKJ;K4T<{7U zEQoj&2Lg{pQx3Q)A=0pk$mpj1$2*3k5P8{_kI_{g-HqwhGlYYU4ecroW05 zJfP9B?H#{R{s=jyLDYXS8hbzMRdOZ0LF1}+(X?#`pa##WW{%W;lXF0 zn!pt#t5|vES)smrEr9<3N*2<1-8ala4hKXbxRDgjA~S?tg!jUMbu)9C1RP5gV&;ry zu1nx#nn(stG8@5V4JR%ES%CeN8CU>Ch7ko~X~l?0jYeufC&x530A-Xb?(*iDhzGT& zszz!6mOJ?~d_Bp%7VDZY-tCU$Iy!hz~I)GQ9*>;`BL~u^h&da}S&;H-WNFAB~087|r^qr^Re~YYpJNL(0 zle*3N{{Tz1RKvl8tmJljGe&{RjXd4niK&LYP7}D^^RI%$=T8n@+&@6?U}~`^^m%@U z!cXs7x%s7C5JV>mO?8e@Iw7>tj1#^aZRF>C7fnnSR3_|<&}pz15QBzDJJjQ%w&~<8 z39{)^Y(4oc;S!o+RFYdD>bFS|c;K-(OLfAG7|6y_hV|R;SN`gpIjl~TCIJdT!%z)e zoimG8k8+s&lWtrzy6A}JqFK)P-<{CgL9STs*-Pd^ZO8kofTEw3We z!TkRKj^X6*C~obo>b(B|Df#_u?E5(m+gv~C{%F_QOP*eACwie#ySrh7s@_BNF+8Yl z=>Gsg)AcBa08XS#SxASzGEaSHdSN$#pMs~g(;K$wM=mM2VmT^qIYNXF1&%Qez|9h> z2KDm@(`5Qm8yYMxb+RLjfwDIG-pt-`_l~L8Okp&mclM<3`cYn-Ce2T zgIMhI1$x+F2M8dm<}y|>XoNGu6}qZ8U2d3nGYfx(u_1h1f)lD1))R2SarY?1Oy<*) zEiG)HiozS7p%~6RiOeD{fz>uMQ=Dj{5QW~NQ6x_Vy>%_iBI6^bIoo`AIRA|5S2eQh?^seUI-?Q z6`PuqWi-0yL_?VoqL8u*=HUX&!Igw%8Tp}Ivd%3ETRYr*(&Idovg3kd-Fi;-hQFE< zb~^2M5Q|^EMb>jZYM#+Tp!!`99@mfMS^QZ40OeBJsbuWi**re4S8A+bj2_-fuGh4_ z8`eA;-U`DFSGEBC(?1jDY_yv0%AW+|io>kshMk-5{{TWB^MaVa-c1cSTE^IDu!9u( zvR2aihoYlN&`ut=a;0BmYiPIEo$qN?9$Y#bHM~vM?1yU9?VhW59hz%y>Yn4`pNX&r zlah0TxpG;in4hxjf@L!$~sLOXyA zBHWS6{ggBukoBjMY6Bikl6WJCp&8|M4}wZ~jZ?9(OlJ#m!Oh@{n0ynS;0WeWg=N8A zwioVBb^_6s@-NwcR;?L&rF2_OGfe1ocXDhDEQ^Uw?^{b8TTYo|xOPa%H#RXwtPdALSmpddCf2r_w&D^(p=?T^lV)xexRfO?_(Zj>t?UyMoOa zZhRFUkE>4C5ed6ZP-woRgPTZP2~2e+w*kc9dOIHUXw|CWNI1MOWhzOtQ`&CoZ?rZc zICTz%9h`3rlh{v3+@K#70N**`b!@Ycy&GWi&2GekZh~7Fn$N&^#9H_+ZsFu4o$lqQ2DKIy%Ed>{8UmlXdonP=FRu7Fb32 zo=S5E-k@c`E9S3u_o%~&@hURr3K;#RMoF!o6>oV`DiCH0dI<6o-Q+HH@j$<@VD+Nd?hYjDB6>r|Zo0FDZ!I&oQny%f7%F7~QB zEjt&RyMWZ8vFx_l_BN2-WNMh&RNa6yZnovl;)h4D)pY7aEPF=BRh0X2E%yGCX;W!) zoxxM6=X9G*x1ZH%R4~=S7wDgLRlC(XE$m=GOlxZI)_51v>5ONnG~p_qH`KseaO{U9 zOiM_)HiXvVjD+Zz{g$jco9^ujuS%}$L6+J=zD>L;g5VN_heCnYJy9RWG#eO7I3}lL zPKa1HLL)VKpS8gju=s`1u-i4qxjWl1i;dQ6E>jj$mG_a!T+WHuvT@@o%_WoT8^STW z@>osuLOP;nniV`$&*Xu*LNnlxv%Pn6L}faJ+sQU76Xy>Ea9O#=s#ML z162^PGE2>n2KSPN7pX%PM$;Yeq1D@>N}x{c1)hh)$(3itRieGEE&?J9{$V@&5pW?)t3{CsQ&h zb%)wN$GtlMwFdMoKWz1nv(2>mM8kHCuh7us-Ads+)lI()xRXkd8OBIqpjZuqld)lf z-Pujr7}|Rl(E?2tK%HbKVyxY(+QNbQ9XEmAnAdESa2;@qC}zz}MrL`Z zsfPop-#pQEFV)5vCGLRbPNNw7O?KnKk?lCes&z5~i7B zUSnI8ybdOrFd)YSJsX_&ZneQZ%>XkitK=^eGJyguU~dV&+bJUzmM*c&3T8ZugG?xy zarL2Mb-Ti-Y6z369|eYQph5v7k~cWMOMBR@yUjG^p7GSIBdXD#1Yv=|2u(H|Q(cA% z1Xv>6qa}UQ#at+EM?~A?ge-1;Bf~`*#&^jLasd%w)qnwmI7N;d%aY^VzZE0ctSnKf z(YiRRQ!V$Vxz!$H?JPln)IPKBw@Y33LYmkN39yBS)@_$Y+r7v(#;$Hf*hG#gg`?Gr zD4B%XqpZxAll-LLS-lNY_J`zw;dEb1uE!0jhvV;sM!Pzd8XP{R=eo^kl2+H{3fT-* ze*m_9n4Riv$5Z;pT>OWEWhM!G&JebJf|MFt6(-Vw$5nx@?^`%IHy@44eKPS)?aF$v zoZniTaZXC3pH0Q#(jPGyAjeaWh)3wBa~swDIv+OuEpc4s!<-LOmr;u1TJ#GAyyYS)jV>3tRw?YTtFi z_9t-eSxPvJa#$t-%*q@H1SxZ5w31mVrJ=i`Bxs&v87Sjmd&qzeiX=3YM^(B)-gxIK zEbeHG^<0IlfCfPv7r?6`dNS_dgf=3`wBf{c2n^)to&1{{7KCaOiMHJ#SiyU&h8*=# zYbcqF$U)2_xnC@m5Dpt>3ZUsKiOL~e?(ZrEatC^bZ4Rh=6DiNAbJKziXt__Q{q3Nv zx6x=5DwlacXl#QG*Oc~sXgpPKckw=I0GQr1iR9pz!)H)&rylX~`kvNi9P!bQ6-9?C z^+rFq+n5~w-dN+H!xfLlh?Zs$CeE6Mmy6Hb}WStiOD+z3^^0Be)!u-p0ANfF37%O(Tr(#TKd{t(uLz^=MuOx}UJxUA#{?;cfY5wVY@R?Y{i)V7%|`?Xm;94l%Zq^;Av?zuxf7TICVUVU!~v9C zU3~0>brhUVneYl?(K3whELfwO2PX4TaEWuBP<~?`{#DuA8Bp-Im))m;pV9s#E%8# zN?Jb+apV60k@Y>2hi;*FuzqX$t(C{Q&NzNvZz|UHo3mgCy#dF~v(7=~j*U<_14jaL zS9b3Lt&q^IENuzqsX15$QxjpY79lpEFj`{irIxG(+r?pRstps(dU&yAc~a``!%SU@ zyD__V*`I2}=8*I2DwoZ$0L?w81UKyBGMsmMM;yV;7wb8!QzYI35J>M?1x(??JP>=G zajFh$O*=lh3$w5g@>i0>o|*9Qm;hfYsBJe z-GdjzjVQ*PWL@1@_$*@eG6}JO@kQ^%ocEb66LiQf=vg^rn8;})S)*TKjpmVijZkwA z5G-SlG#p0zv`(8n-qd=r>|Rd4uM2Hw3aw)WvJ1G(+zTMfNoJM z(U&+my(Sima8;iAPGw4MC+`&8%`+}cuGa^&*~}Us_A%ENdH5lO_!TV^b%z!zY&dX@ zRu+jWof>gWQ?%k;azV|?S!a{#*=aG7aIkr^rFxGXxTfno>=jCMgK%dOn`{`lqXuel z;w4T*TPrM2-ouiH0f<}0VgwHy(RpW7s1}}T*DWiFH{gzZ)xicb;)Lgvp%EGxS8$#x z4^?F$G=UJMa2cyU8Nh0sYqnb!SZT!MsuJ5?3?~PY9LLy%UlBI2$p!-))1mmVoBLEv zreR=bxqFFC#4N02s4T=KQRwWz5WEd}rzy-Lw{EO1slDA+m_|%+vZ)*v%I92%g|u^P zPq_~Du>vpYzwY{;#m$ue0L)cG{`gP$eAF-2+FpIZA2!`g>qtIEc0Zc9-QuZYFfwz6 z)=(nI;>BYwvIjQbEmkZcx_2PgJ9IZqRDeiO;9B8+aE|T@&EK}Fn<`Tf;kx1Klp*~b z2y}~}!u$ZXTjHCBUoX4HN#Nwttt~vzaFYH35*vxfcr@{xlS^b)nHnwP$2q4Bgxw6s z#R_d0oK2pMXE&Jq);2_NL;^(2#|3TIELh82-9l(|mPANH37l5JoCSnxrN%6XhzoEu zVZF|Z9h7V~#>l?q3(S(naL@*EZy z2^<&RZb{h2H${WAL4aZ1h#Dbyg~uS8yS>OXzs3)HjOl0D>qAwm_}~r8O6k*Zy8x)95h(k zFpesjBF9y_9$Bl%TSW%enpI|_EogVm7d_>~+{&km5GJIz?*9N1i^ZIH=u~E1s^S_m z3C(CYj|6JfyN{@b3%@cJ`{mu87XiiwNQU)Iu2uprI5`(T%+~SXo?U6m1(RJii`&?X zm9j#Xxt>Yxh|vy_yQ_wLiWOaRIHOX!ZK17htqZc7QKAFWTluR|k>C!dx z*#@*Go(jIQ3?MI#Or|mRE;itgde|M>*;nAtg;cW@ znsU`(V{tozq&h5T4iU?mso=bh{yQjGBR6KK&@;aJr`e0@eoCy|*?93)+VEb-R;7=O zU>}00>Mbp&pexB>U-q97=XXXViY_UD)4(#y(z-^BO?z=2*!L_&og`ZfWQnHO92ZNF zjSfm4++HgWR6-cNA9}#qtyOPX(ML8fI6`yUgy18pJv*q^>{8mZ^aBl+vX%7-&wrWPoCv9R%S3?hRZXKa^!$2r*iTe zzo8*By=>psSN{OJ>V8c;o$_8*GN0FaAu$!?Z3MT)4JUbh|}3wj;2PVv_l)Qo+9bhocsV>nSh4RvuwqH zpW40Ij^yq!B&Xss6LD*4lvxCUk;IFb+$R;G7uN)C!Bof?gGJo|Z%oV*X%Yvl#MSJ12OMrEq^IufD);z@;f2Ax1C0J6D0 z#RkW!qZP7836#Qaq@pxT2dh(bg@pT5X0wI7i@H%vE#9xi7Dtbn*L-HdA_9ofBL)untJzCjeK< zbWI+s8hwir7tM5dWH)tpC)P4yGQDzI-&LbjZ;GF+4r#@L#`B_cc^|l3 zTf#I?4jSe{FmggpNu+!AQ>PR)=8jQ1BZ;efH410JK{w)w2PKM;f-(t_YK=GKQN%Mk ztrbeO-Wg9SVW#d;PMhlRYecS@)SCV@=^Rc8&ZA5;H}{4mRcrTZQ_Z62k|T7lBOY}V zJJ!qnb$^4tr{v?!{{SWBVf`3C<9aK}mdm6b@QI!)^gS-ClYo z%ewlfG_>0wqSKLuP*3dhE7Fr;r@1t7SZq%P07F(C5t}Ir_g1*g3?c?f9>C{nVQ#x| z;=pK)aA5Gy#WY;JneSa0Y_{a@AS?+A#_^}YQ4;~viM&Kv5K!SaRWFF*m_kIILUSgCOE7=@|#ETK4i;WPtp zYBSwrI4^NfjEg3Qm{^1S0z6Y{Yi=Ye6#W2|vG$54x2?bhbvw@hofX1U@L-5}Y*4%@B)X_jQw5U5_sokrz!kTueg; z1<~SdhlKD&`?#B=z)sx_7;Lixc%9?$MgTZkc&bm2*|<3KO~m&H9!Px}lblX(dg%oW zFkx=9qvE%0P&*ufgy^Ffd$o**8>=;(;T)FHI+=Fx8Nk|otcUD-jkTaBVaiON%0*K}=hiy_hnIqlwqpYfW*GJS0q zN@)jG4-oxArsqEsY1p*sbnGH6mj&c@J=htJp~VT7*CkEzC7VrKYt?tu_A~u2$!*{8 zqx{ZAY_IpPLc~lDiroS^F3X0bCpZXmde_Ywoo97h%<6&R ztRW&M@-C`JVdux7N_1=>cqecq~qIk#h<_wu)*2O`_5>SWfZE+APp$ zB=@a6Rwm5GL1&8ci)y{iX}01$33KomEHD>FX^xmaFjPM^i=%rlhY&CVc&6+w8_@j^ zax_H{!EBDaLGV}{;u-3;W>Y9)-;pPhj*-s z8*z&!Y+<+=M(&ST_kS6zM|d2;)m8g);=Gi9rl_0VwtMHaRR{a0>U%SWmB+xXvC)B# z*pU=(RwEqCwRmw61_b#4+A8C&g*92=&X=c|JqX$0p_X>~&;f+qIS>~h8r9@BN zPH;9kr%qBsVOFP7611o47kyq<3@PynED=SaARdkUMF4Wl` zs>6d3i+d0t_kp4>%vq>4$9oPUgS1kcP1z?OR3}~tw4EhV9<&K?Hd{F(bS`G$A5_69 zm|8E^f}4k2;PDBTmyP5`7MxBb;?Ctw-0(9~njVk~>)f4j)tNdV=R0?Y6yDY&5S~>~ zdcifkb4BATCt$WjwlY+K-XXS*Ntcl6DdW`}qk`VvcXGu6y~r2SkT_(Tc2^b-!|u0~ z5h4Ibdk-O!k;gO~%A=%>;(OHf-0>m7vQZ=+jL0r^fGU~9MmrGQQDcF_9eK-!N}V^$ zot!lqkL$NUpOyx;EvkO>Zr!l9S8m5gla&V1YisQfWVNo$4kcFF9sqSm7eLWeaUeaX zT+?0*;*lN;$vJ-3qGx*9f8y$Yko``dD((0b{V{BLe`SfvwCS`r;D1K1-OUw!*MXQp z{Rc%o(y}e2%vDl#3W$+;7~Zn0IG_6xt!D z)+kR_ECPbSONM?3H(n@*W^(3MDJ*!^5ciBlW-xIG#iNQLzQU>(kj7#h&78JcET@I; z7A+Tn{{WS<@r(Bq>)agIS~osPo7k8>Xf@J%$0S}Mvtg>ILD!r3p=l@8YHLC7Mvqsy zJ102s(E#^Zj4vvl9wk(rT&kQ_f+aKCDb9fgGgfx=45bG@32PX1=AEExqz+4_1_==9 z$r-8Ax0YyMEY+-p^}9Z6wR|kHxj~OEjx9$8QtiSwteaCdwBHZGQZ*{Jqi~5iAI(ii zU>Sz9RZYyL(bI6=aLsSHz_=$_PM6C|OJs3O*~3X0aDbmwkwuLX;_(o+t)^UB`h>R^ zXGA(z0N=B6h6a*-a;FveFC_l}Sy4B=Z2ti9bwBve)X(*;Lf`sFf0CMd+uOnP-R~&= zg<-lSr>*7|F&ZZGA2OUbOV6s+ApX(2psHBl)Qm166jQ)rcq{?H=Zi$vz8=qPC({BA zHx22PoCTJIS#N_MWy#HM63DzCbgV2l`&U@HIU{!xzUkzk2znAR9T0RlUpYX0(IYjy z)7;Z!;@6xmxeYLzOKxCmuYxlGYM)Kh=$#EctD;(CS+Z;14k-0p%~UlM_1s)~ab1FAR#nCm#odxuyvGNHg02X26zM)Ae&Q-rnJ-8IHY z8mu(N4n(6Q29bo}%`uJ3zUikCYq=_{EwMhQ9_59tIboMx7sYmp2VN^R4n@-(f;NR< ziwVPvIoG{9tG8X%1qMrSY9Sm>aCZoq?o6iO*D!Uo*C}0X*p3SLt3tl22H21F~b2SQYdfEQ~<0^mg{Z79pH{!No z$7Xo{01FW-%42|G{{Rwqf9O=S*rO@2tYnzklZ@GPwA+?&i{YaIksK3Tq$}#2`lYRj z>lERiGKfAZvrgc4p>gk6O`0_c&WwIGTHyl1GDac|u7unj5iaW-k)K&fw<4uT$zdmX zNo@BOWMtfX76bcNoU`|#NLY*K{C^UT7>@MnPKJG;GeMZQvt3!?b%?y>pA_3jJXGWs zS=~s>-i))P1V$bxVpu}$6wSjC1@6$HgqEHQ?RH8B+@Gk0X59uvJZFhAr6_BkX92Hz z9<(7I?N)Jg4-P9Vf(JXzmL2fWN&ut!HDX?8=I?!R9kf6ONPmt|&M+``1%w3RjTFC!d06dZGUS z8B_lNkLr70_J7P5lljna_kKwCuPHbE+`HI9cj!}VLFxCg9XTgzB{Dk4Ae<^|9t#M| ziUp)KbakDM9RQ2jIB;0WCNx$N22sPh9PY0KS{)fUvv9ZwBbCK7v6vB4z#Pz9}bWwDxV%={3l@*RZCb5$xh z>lZ=1{i&^V)G@*ehTdS^YKb@CtlUKCi9LMgRP%tEVU#H3ToA@Xhiqz{PB%q|H7(Ds zN-i(6ZGBLX8V?N?9QiDxAFM(xYo=5yCx)2=vYVg?9KtOSPO`0*i0?1OSJ_#Q=~RgV znHk?OoaVX@Ad4~XjLVR1TrOv2>GXDe)*V9097EaWeHh;tVc_IwmYiVWiCraXT^}L)o*-aAp?gi-Af!m z)FZ5MScYSoCU~G6EEXul--;k*7Fen@h`h?Q;Q#?#PU}kEG8@lSO*4swzONffeS44SzpyeIoqNaxn5gNB4J=Q*5Nl; z0xv5o@Iwx0XeD7I3C>1{9BnMZT%&-32u>l^H!4U?r;0_y<*E^wSwQ3$4>QBEId`CM zJVK|4{URn@?zgo|XAra6<@R{+SGqASIU#&FJz^Fd!?VMhEVzwN%{{VjnA6PBGKMU& zfPsr?@ms_(#ac<=Rmdd?Cj3;E;^25KaQm^hRD>z z%~3z^ZvOz|Z`Ayu{Y#gV4>{{XB35yIb~6J5zv;ywr-u#8Eo0CzMV`lA$! zW`#N~xU`~PW&9+j*pIacMp0sgpif&5%?;4)+aL*<3ctF$NC)Ef(rVwUqh<0cex;v3`9v+759c5b3t-AEk*A|??O=Urk53Gjx zap2s-jPW6nB;=U`FXQHn3##$^!>YnBIiqkmT>=Y82nTwG$UCSwyC9t|-`40k&lA}~ z4EL+tXjGu#;p03$x9xBmc8 z{{VvWSM{GKs=n2;zq3#kv^RxEe1AkIt=-Z+h#Z2DP?_CWhVAUL!#sGVOc!QhI5YrH z1s5^AgQE}HD-diu5AahA?{}N18@%`|EjMwxFe8Skka0V;!9kD@XZX5%sR^b4hVx7T z_nYBd8^t)T2RK6&#)S?F&YnrGFXbql&m2gG=B_=e$=I{eb&(S`^UG}Yh3zV1+JnHq z6g^(#N3g6|ntt$C2AS<FP@Pt#oZ-3-r8=SBaWf@Jfs2aF0o=c6(crI8l{@A+ zN}NDWd$(J}I(P_D5Qg09t`umk)#S4TDN;Q4>kl!NwK;}x;Sefvb}w!J06=-2QM8@W_OwQ$s$JFs5fN=v zS`?PUTi~?ApK@t&c1pov^;B5=QDz|9`mWJI1cB>H0je^0 z2(_bo?PP>QTc3Jt0v*V$@BFJrdgqiP(%tSdo50*+LxRkZfNGspv-#W^<}vgwh@;| zR><3&RmN*=JRgVHAyaP`1=aw!Y9=`DxA6L&(%v+jJ)ULg|)EmH{Vdc=j&1BKCbo+BErAYZ|BOsVM|nc##1Tr!U^IRtD7o+~NuQxg}u zJFaV$+~PP&91jf?d4~e9`_$sTkg$~6jD8maf!ZC=);{!U)U3(iE{isChl`J%PU|=? zv+Af>CrXJz2IfSq;#`5v8M?XfShMk1v1^vA4_I-OCZJt^1rhB+FUEY)s;5zu+-S^H zcs)eXww{)_bFn)P9c-|+8oD~dS;b3Cq2_`S4d7F%VvJ6kuP3)omx9|y5s2*$cS){m zWM}k%sx>=CwL|Sc{fE@ZTU8f->Fbw&9xMxFt~2VUvx3;&8SKN{;;yZ9$~2pbqpSqN zVcHunoW<^`i?Q(l&OkB0z0CoO6l9Ba3MV|)Ag^Rj6gVsI4jLj0w|E6>GeD+u%&Q26 z!DT7U5Jv%`!+ZxLJynYjN`BG~Xdv=eZdoECPL|CKO(3U1LUM#$Zg?FQmeyCnsy%YA zymbSLy_Q5QkWS^Kp*al^$Vw}kfyHO6E@;oS2m#P8Q2bM~CA!Lq!V{p%xl_kgVVc5w z(2V#jR`E?DRgL(;3=wg+_kH?OlF zk|BiCs@}CH<`s{bjAO4*rmdfa8g6;^CqJ}FRkocrdM|&DO0&OlL9~zF{{X{B)jX?2 z*{<}x{$#vOcnGmY(G5 z#Fl_3bV?3@b(QH^ik4fdLySX;A%1J0Af&XW z*>d87ln(^S)WV5Dl$(WtX0uLdY=kzwmCmD8r!ax5LXAM)uolD?F|{{mF(s9(N8{kC zS8L1Yw|1X$XkJ#^ab^Vuc%T+2-r8!5acgdW1nT+yBB5|UWNwd#)iy1=47KgR{&D#g zH#*x8A^((B{iU=7%M0emy$+1Gq~Z?i*7dn2jB5$ciY+F^2FqR= zE+XX;+54*&oR&yo%%VWs)aQvR9M_s$JGy6&iuS9q2YqB{ut~C3fC&3m$i} zVH?HY6%(ScSaA!Y%t6g*wjD~5ZfZ!L^f&}DWyu&2wKm8iC0nh+{U+Mr_JZAeYfx` zj?T`lHU^KXR>S*BK9GF<%VOIacjO{C6rHPOv%pbT-#+M zC4UvWW{j~YB;w++w?PGG7M>`afdya$JA;~KK{+BcSR}_HfOhakb(5cZWr}QAG(tQkVN4UjK(rgIcJ`@G6AtYFuP{&! zID9ivKKWCc5PSm9!3-nwQ2+#CqsPoL3IJ9%Lh8=C%@93`$+K|_q<2sZ_$ND0RB~5A zgaqD`{Z@yit=u$Kc8B%q98th3+hk%iTNH;HhRscR-lefNXSGoO00j8`RJ7b1EvIF9 znl&HMf!}tYlBZiblnx4=+*dro3YOZ-Q`!dq0NJUp*2a9mXR z!^CH*jDQKWseZ(3+ESa0;RM9Of6-1VU;re^#TP?kY4oq(u6_+oZ4>E9feWMSnr_~Y zUa8Z-d`|^UwPWcOJtbqs$Lilqq})%XXZ_jF!BKT$+LSh$VYQ2WQ^(q$M1tCsPJO1T zn+0=*jeMWjeuX}jR^hEo;c!6IWOEBNOk2#_l$==ckqRoepsDV1#M9<;vEq|AK!k9N zuXTpAZkpFYoS__mRw2=v4uUg)h7pEW$BG~hNzoI;Bk@=uCB1gNx(NGBFlcs z#gb|=?Na`-jJ1_+u~6sFEfCdZyB9uT=8}fJ%T8phmH5q*8Z$&@ur#byUxlD%iz)6= z;o9#&oA<0w>LFR82>qDgc%b2T4yS(os?11EAIDZB7%gY-TCV@zmq< z`n##T2Qk73I;YTlzhiz=ec#Cd+wF8ju#e>#!DDTKId)bo_WhZg-_q0kLVIHsOx(}j zw}|^e2Q}E~oSo*dP~jeC(s>W0?$%?tph5FQ!uf^Qz<8;s{*l9gSX=H=;bn8|L7?fX z-YYwCQL4m=bj+z~Lig1H)jWdDGT591VJd7VOp3-1Ch7_pI>lo3Q@4A$AyuNsG%1X; znS~>Jxo<@Ihz&z^byiTOB}ql#S|v>QC~M!G#zk~kjh)9uT8PQ6_aFgIvGG^kL(K-l zRQa<|3c?0RYYUJFShWYmmG`O};0kIV?2Lz-9?`qPo~2@NhWf2nGI=aVGQN|v&(Rok z&F6qk*r*7rSN4Q;X;a{-Y}5o(rXYP|4TjLo>TdZXvQ(N?X`e=2>YmDe)ESrUsE<_k zf@NB6yG|xl8m^yb9UW}nOmX7WTrE)bo1^~#HM?#tIfWUiD%mLtp3StixZQ4*#YErC z*BgW(<2@6b?LtI;3itC{-kL8VUd2rNm4u?xq6FrTH3KZd?;0k!%X7FXwAk(YCI)Zu zFsCFY+!h@&h1RxFDUX@rnTM)HmCz9ZS#?k#N+#2!A=YH*Rwq>O87!q=aC2Dci=bJ4 zB^)Bfps4DpC0*nwnL)AKxvY^#A>yPgI`JsL#ai9zj#tc4|{x?$Myz^nA}h zV1w07;4pR6=*uzKV1O$E`lHo&_ogMm-2v$N5EEwg&m&k&mSy4khC zdRsfR5ObuD-ZJDSjir{-t43=RAh(EH!_6XbcBduK?GD3K(~!-u46-K=hC7g*6>NWMmKkOsrc$-qMqE@!*@%{;x+i(r#zN z=2xa28-M=0I>+x7)#&zS`n1J@vSn?iSw!_%I@LSB6;EQ>sfTSRb&PLTm*>yrnX6Rv zyL0;WIC39ce%r7!d#zHFejzs#`YoZoTHUTk`25IYTSIC$bpzF@&8XpNX%;ljXf~X_ zeNYhq^l#O!$gRWCKZmMT8qMfm?q5GO(4(|WPot|jaw)0THRyIhc$vB z+JaJk+}-gBEtOb}-@Kj%zqvRxl$-DW#_n zjQFb$&&`O;cd47gwbpqqAwaa*I62qQ1-=^hXr;t`)}jcI#(|PC!d7?Db6n>&W#X@8 zhGyvMuBNMi;58_=m!qfe^E$EgbQ_!F+&H3WZ115@BURa-71A~XHQH-s{g98*L!DIh ztJKfKg2e6OowCuy@ch`-($v9LsN?%OfBlanXzU=kpW1B?{w%kBCeZG^WAGe4yzQrA z4X3pF%+db3%bmO=}FoE>g^Q&0BGL+DwfvBuTQiDh*hc&UB$}_#x^Ks z`2EwDpqL$MRS&^*ZeiK$c3vz|YuZ{yg%#-C0Or%xD-Eeu?45g-7YOGFUM~s`i;6A7 z;8YuUtnQ7aH0!}(!q6wp6PGNP%|RyoZWMtN?g$2n`$cqR*47iTNOpvYQuE$*D$T!g zb|)-y(>fGRsBc+f4e=__N4*SoM|E9DHbyTfv5uzDHFC^8J0cXeL713O$4mIEMcc~y zF7?*86lC*7$H5y&Qg=do+r;WHkWK$H`;Vha9)Cu+UoxLwf)N# zXO|uv6c1u)+Objw{S$v^@599%o|7=Q_f&QJ&e!s?+Da5c4~*$r~4-#lJv|p@pf`68%o1j zqO*DChtc+z(Rc3L>n}@-8TE;o@%;f#vFWJ&uD7**uT`%52Q+byHc}DR) zJWh*rZ)&mQW&$kTRnRUF6P!-woKv4ttD~~L9G)bt;%9=w*q&&y{woG(PHGB_lVpZ~ ztuFCf&W=G_+EnZ3>0cW?58l0l0iLQB{~3q0Nq6DQKfb z&xn2Lxcs~pDkq`jPT}$VRtl}?j(eiWA9z?@6)Ec1TrJ1_8T=h~sdFWrw%mEa79oD! z$CIuUR&PY^+j3TTDiA`MJDjfza-@-%Ld19`#55Et1G?iA#bR)Rz3VyRQ(YqANSGYf zV-GcRE39Xo)>y2K_0S^iMnPh6D{;lV!itUQha8Aj+6_KVvXbmyc#|tOiP2&vc_^j> z7&5oLT;eJTfyD{UM^zarN}O}vp_|2T5YF{tT<>DG=-@o?+nxb*n_Jtl)BcmJf3m+* z+4^d~zOR2^SgX}9K59Ei1EZ+o-sO$k&i&4`Y(CbyY&1MYi-W@Wqt>!KNSNn z=3>f>ZAKj0;UPF|6@H8f#n8I!pOP)wDLJh6w5$#SpV@y^3TB|$>ATi>-3jzavvR21 ziVg1g577eXC2o4 z4?#iCZ*M01RPCEyH-779{8k?)&~D1!->iIADvmEa{K3y6jXu+sH-CPw$-j!F^evvH zV0yJ*kog2Fc~Y_3YJTmfbqaJ?+H}TEXo39HSy7?vKC6U;U$P&f)a>Td_$PFtOW;Gsg5!psPOatOEq^A zv;7Z2LG=e}E$vgb?X>9qihJ%~s_dOR{{VTkU)_@QwTN$FwhQK_iwj3)Wei6Q`nkCH zE5i@k-gmP_`i9Q)#YFh7LpxNu-o#s0nWpX{-sS4Q?(Uyr!X1~W`w*@p%{1ycsy3Q*_O|~3NEO>tWOv!# z9>w~u(MG>1!dIoB_6{*`Z<`Q4#eMJ6!Z61$t-IX1?)In^pByD-eZFigs9N3%OGCTW zn+tX1Ef088g}%=`d=!cgjyPv9l@v7+eX1`e5omloL51-_Z z(DnvTZm#iBQn3x}wQ=)baB*_P8e9*ocU$c%4lHN0L}4D&b-P4t8#&Csc7A0w`$X-P zhi|LwL979-83Fv~8&=NBhqW8t)L*b|I8S1?;+aEfphYwMqlP9A9TS@_ryMtjy;-8C z^+x{17_Y(BD&UVbi3`!!bZ}p-Y?N#LtT276dYxUH?z%_4dJiZwx~p)hrfF9Dj|+cg zs0SP>3rH(3^f*})%&30ZMW@H`SKAnSnpf?r9_D^(%&$|}6w=r#RqrJHAzNkH=>76P z?kYZ=N{Hc0@(R@}ZEx&`=2k7QX``~Yv5HTyE$X$lf;%8L@n5U?IiGs2_r+mtR?%l> zotFJWQ@v!2UM{AvnnHc+^(}?YpXFXLd(Duk<(|-d0A~V{{Xbp@>{!2 zX7|&TyX7eFrTMFQQkRPg{{U)i{=&c7dpEs*wDxa$k>yGr^)A{rD%{*iU44PR)A+0H zdpm!trT+lxzt^jl@MS;$0A-fbSG~Y|mgdIK?bJUdxld=O_h~glwu*#sn=9YFHVn_6 z8VNiC-vXEQj=!@sLn=Juu@r_G@%)hJJe|>l{G*4={E&Z?Hrw`DynUrhHc?Uiy1T_d zu>OAiV`QfHcA^ipPS0MZ&UhW*omXJN(e`P+550c1uo&X%aqkLCA4u_Ox3Ng9-}!>; zb&aY0S(2f_%{;>EVqAPs-71}?{<67Reuw6dE|@jHbZQf> z3;R^Dl{Rzz8~*?lO%1!kqdsaVR%J%;Wmx#AcE!_}n6~1M*j? zQ@qps*X^nQ0BAe#TaTpg?Jl!_>oIBn08y(yVG92M6>o@Fc>e&X-^F!-{{WoN#a^Qa z{K@z)+fzNk{{VvPy!TW5&^;Y$zu}*X^d3sBRC8;c@P)hN_E8_w2K?8i+iB2e2DtnJ zouh53Q2zi%+&_v9`ZrA))iS?V*{M+et$=^+4@`;J@__?|E`K{k4Y@_~AQB93t`yxO5rhos$04opy00II50|WvB0|5a60RR9201+WE zK~Z6Gfsvu`vBA;d5J2%zV2~jH+5iXv0RRC%A^!mNAvbHmEUgWJ`&xBF;eL}WAqEvT zb1TMvg$bl5lbQwBQT&X#`magyVtx@7OGn?VPvL(gQ|)}t8hw1lj0b!9hrS@cF~YY~ z^a)DqEP)5Ee<6hYC-bRTY2mT*l$X!+>Q4Q@AO0z64=PYg&_6Z5DvbNJ5AE?TjQI)f zpNXC~UoS=+ul7JHfaU^$bWe; zzn3%v;yBs0n+}yJJ;LYZEdERAdtlMb4;1Z`-tB^4^C$YTZsJMBrBA5qrl2}Sw_vW8gbdDEH@7gmC7FVIVxR)&87Mu1;Ifl=Xmy*6gb}{ z{vl#}h?&R>Wk*1$HI?~>={*FfCcRYtrMQ8xSd9}%w13R1()yx9^BbrPQ%lwi4076E z39mub{uH|~h%rl57H3Q3>b@sq6idaoS_;WC;?b`i*1S5I_jq+^yl)-a?^RX^m zzx^^2_7HlpriTJ@d47qA`T@=NhqrtDlL}6HV!eIar3lB>JcUyoQkW+K>lCk{G_jebKGrEybRPpW>V+^?2m5#2EMx~9?o0crmL8C!70 z<_9KW!Cn3Yz#7Fbw@`DFUSHz$hl={EU+y(Au{>#;)gDtx4KPl16s86CPU>JJQjcA< zLUN5glaG0iO8TSwhYS+&HgGP0I;d@3S3 zIqLO?&AKpu1?J%!TTxK@IevRWFMwY=<=f>1Gx7fba%H`c!Z>Dy7id<05n#;<8owSxP%7)v#tF~#3)_M z$@ejfXV&#GXPrzKob-&gmdk@W#P%MEZdO|rT?w8_?mSEzjbXW*=>TG5xoWK08x+#d z8J0(`)`PWUr@Z1|InQ<1r=$=Ts0sd|o1mt0@tt!m=v^n2`?!Yfb7GG;E~*ab)UG`Z z$2Ha^;M?VhpqORZULS^9-gGx(h?4?cA2?x1*=dPp#GtnRNtDs*`5hq!s6TbV zO##@{z?I#X{y{hghV|UDgfaU)6e zLoWy(XAw_J%ljULAo)kzh^nDX^XK|Re0>a&}@BQQSEa? z!=Z3xDH}=Uv(garbCDaCkj6 z0>zngeII|A-B?tf_t5p`Tvgo{vBq`J;vwav4GP{j7XYd%n-%xGw!Q;zNZr)RH&0vK z90bsho??QweFvn<UKo4BaKOw>7y=$1;Y5R*xF z#BIMTp%CncLFmUQnmJyvq=Vc{cOG*S0R)({yUHV723XmqR^>Kb&w0cV@cq%*_gJpG z!h07^ev?T3Aus;`6KP7N=yiKVToBS(`gZ$7rTGvzDRA!&wUq^D^Y|$30tED=6Ba@q zzs1W1MPq1P+{$|4z9kOsti?*)uUNAx<%wZl{{Y7Bi-ZsZ)Nc4$gF|CsQ+btHv#-o# zj~|J;+2Xe`rudD?nIdgs;7F z+~qHW8}x>oPf^dW^Xm?23cT4^?J?|uvekw9ZXs-;Y_mnehewFPJxS`&F|1L0-uE1b zT`DxZc<;|x4>6$6Hh1D`3xRrTonxzenRUknn2lIoa`5Wh9H(v#9ZvnX=?g^@O8HmD zaOUEfN`UR%Jbq?#$Q)7oy+bpGvx##aNbbKi6fibC%IHQf5{q{7ZC+u5^%myOhzJH7 zdoMKm*V>%usqy!I(wtXMuZhs=$y$g)Ut~ma;b5K_dEj$DgVWk#sOitCHxhL|AoiJ& zCF@S#ZT`Qg`rQ8jf%KgpPIOLL>fb;7cZERKC5hYr00c$2COEdw%l#hkRa#;W zh0kI9$}JvYJwsogcL#>xDKjgmmYIcB^9+{+ zsu*R_y45wB&iu-(^$FC%2`nCtkh0NtK5gS$_+T`}S!SB(bGb>l#06KiSN*BY@n*o= zzT!wGt)t;*hxnX9w91Ix-txc9H%+sQE)wCE{{THF^V(fdkbIqQt})D0nxMNZ*sXQN ze8-xg6jJG`uNos%X!7%A<>^eaHPB}Xyx?O_{{Wc42EO%vjmrgFuV`P5w_Rs>p(5;h z{z%dlkX~x*uDVL>=c_V0$~+4EBW4Y$S1Vyxb)>+;w4=1+o6N(AM6y-^r$5Za0pJ!s zkR#oBJ*S9Paj}F&lZ`%&;rKzx|pmZ7?i0R~fGPFl2fB@Q)9Nw&0{{W1*931pZRMEDz z8p?-oqfy>4j5OS+O3o3T6yIJTv=0LrGP*d8wHw;>%d*XLnMyI67ZF{w;wTKp!qITGXgpt$>2m$0^Oc-+h2j*dD*e9KXsTr`Mfdw~ zF8c*ud}Nh~Hi&PQdY3ZEyUCxg`6=`dVI^(HJx^MdVs5=_De*20xz3+T_?;>e_BxLY z>u8iFsp=C4&B3#%b*WopLFYg61{g}}l$B&XRk_beUPbgFbzHKO3sQ@gJvu-K*}OZC zo0bbN@P`tJ?3wN$oUQ3Bnn@zkK$j*LtJ8$grEW3;+EGMYC_WuBNDFu$V zn*JlDpx-Ma&tcbzt`#4eajY@taYkKPP9GAQOB<fhcV_aYi(j{6;c4Z1z7<>SR$lJLB^O1uME|GOf(4_j~1z)ftK?bhu$X z#m}El#NTGtG2cf>=C*M~Jlq=)yM|8PV~Ya_XP|KZ08uySup1t~so{nCe8APJmxkZw zXEljDOhZU-E0z8@o$Q5YjrW#GEe{iap@#iad~NX{qA@zAJGxobzkgK|Ua4CKCde)w zkW2U(mqUo$4nf>I*I{OU1FLat#lp5RwSeG3p^?2O!}@_PEF&^+J*DU$l4HACVBF`n zwyUf8A|G6C!_vokeV9xF(=dL$eE$HqlJFbA>iz^8z3FXp^S6n(*ionTx1RB?vn`9? z98Ol^T}Tt?fBygg5Qowd@8TN8*l9^TT1@n^U6_%zXP+{ynUpe&J1D2CA1d)(Crz3r z(^gybme|cQ_L)P(7q_01G28f!{$!BgAw|^V!vqpW+d0^^zllJyO`jVp?)pqrVy-zw zyf2^BLfzGY4EX!GtvNBjwJ9$a_b1)@$Cz|O0s~$gc#6-E2KN030l3mx#^o-;m^9;)$)MuC&jdqjT7g*}&Qx?&%UpxN*o+lL%FM|v` znH8WtD{y{z9;L_X37o`^iWQeWAPSpA)ye!#sG_ba@8uHv83ey1SZ*p`%Khe8HOWmm z*V=+=a5#+S@y)YY(0+54d^weBG7n%@n5 z#89G}6xU}zY8sxdOxtep;g zLR{XarL|O8>Yo+q1z8^wTF{##Z6qX(l{3?nxz|UPI!aon!z+P2Gdj;$hg*a#OD}ZS zn0i8mcjvUu>R;2mYNfOX4fqgy8BbC&(&cf{+}O@Eq>Xo92VC_&LH!`N-e69hx6UH40+;dE zm;!56hqoNjvW4|W#NI_}$tuNrdoZSwvg5G6vwx6_RGir6f;cX`P(p@KiC%+TOI ze=Oz^BXwOm+T+qBK`0C8w6<5iA+ekNpQ-uQgYSWtja4<4VGfzv9@_T>CWwS8IX+sxBJ2$(J;Q*32N zv_|-EKKJ;SP;`0t<|wffMgIUkWtI}zcJ_{J5oW1S)d64zRs*PZBXvg&RS={ugspRp!ztkB)L0%JF4a+BML2=&RJxyrH=GY>YksV=+9E%v_6hK$ks0u ztc%Fwg1a1hML(>Ib@lwc7h(RriuI3@`)Thee)_duPPS*hCI0}ujjTXHY2oxYEJoK; z=&t40W1|d1?bp12 zdL~W!)p&{(T+%IPq;oWb&iecOOIUIVj$i5sWE7)ci9iK~EN|U+fkKK8%L*X)LIO*esGiS+FePDHy9|J-#ElE~v>q)D6RR3`SE)zK{%qxNXolm3loUsybFt zM4|rxvYE!ulpkQ)nu(Ym9idvL^p2X~K=%BHNX99~@Ae8|{-x@}PhdZ9q!6*qV*dbZ z>Xtd^$S>JuUPTwJ`x6s*-5I}pGl2|DWrwL;1h-ib{e+~~vqQ+U=lqb^xC^w8{ipG>k*g*t)1PUR0u|_fB|xuk zN|?1HH%2-0{CB}|fj2Q*e~7|>)wRAVA6rKATouJ;Bh>GfyM6YEE;Vd5y+%3PyVSZi zY%9x+x%|codqiQ*^>V_j$wMazRM2-}IQ!Z@U7If~HW!;;+q7X;-I04uGJ( z^L+jBEebqaSK`oOI$Wqahrz>DJwyo@$=qTtWf)CiQV+? z2X-{?m5}f3=;6k`J~@^QRSrV0?37K{QM&Wm84#RIRptSOF_s?+Bve#wmu-QHtGX`DN)-nxnh!(<>F(XpLm?%-=sJ!G*vqK zMDkr;rsY_m^_edf+13s}s59pLLpm<}xc%|#1LNmw_94^#Rvlq2I?q8Nbeizl-;~Af z{{V{ggV!(PuSl6K#(J5!x&pUjx=INRw5;>m8ljpU^gFwl1OsYWlTH4KQa-6b`2OQ) zLh@U~FUa=ytUBxwgt$}&Z=})l&+F|=n^1!UbeP9m3$=}BR}`Ls!ru5AH;BloexrM2 z>+u5~wGi@fed#MDUxThPbRJFwrM?9r`SnsG1ALk0VBJvJQHoQpR#UecySM5ah1ws7@G_Iuls0w+ZM#U#A!IFDVWc z{{U~-^@Q#eXm|b06S#8VhH0lI<~mced5^=3ue2mkR;l7quqmg0lK0TQ*Ae+HDj!|? z2LAxKohZ=%03nDG5VmX+d{?NEpXSs%L)QH_z`5DlO!6)2Vk&$J**s6Uw05tTH3 z{7jCcdPQ0sw8OQ}-Nz1%B8`law08Q_< z>4S3Mt?A=DHv-6sl`ig2KkKpD7j%~;G?=MSkM@y#>FFA#Q z{1Nea&I7!5u4CA)*sA!digysLuj{Eo9Wd)Ikt$NP)&lX5q`bL+4F3R9>U>ngwt5)i z2J5b3x#Ju~$|h*Vw~Fbwm!_g1)3fKE^Co3dtbz5Y4q?K$pucK0f5gFn6b7%Ll@eDr8PAkOVtHg5OcxF~Xg*5*FA2PXia(?CgD&3iNfc9blE?no^mcj-LMfAT? zS0bYwx8@!)3)1@M)%PI>URK9hM69<}MI7t%Iq>L~g%y641j%hzo&I65ZJ~VJEj@w| zLv?b|1)4yC$5gH%U=wc*Pv7RI5M6J6@sk5!UkIE8)%Z)9d~w4Ii{13`6EUY!H)II- zHEHitHFknJd0)3kRae<42_!H}KH)(6If_=twvXT+>D6>EUr)utC)}4G#uX)PUhLiZ zT{9msL~>7dBBs_;)uxws9>9)RzM;cFR}6RoSfBs!LFF0SiL`T!jv_RpS*WB8l8e@=JBtY zsP_h3b-lvU>Xo4^67^0xS5@?fHTg$fJXB*=X~yOs zCNKr{iJk8l;%|b%bM#|uqWX^>gf-(G6=kdKn8k*Y_WuCC;9}uZcUSz%b!AhOeY3rDZfwUDiBDl~=Xd zTZ-akaee2F0Pw52&N*fT@Pm+0&tmi1FqdZCXLC+jkBMJ&v7f5(9n2ME#h=8msWKy+RLlV$ z^@Eo9{^GDwwBXatO%x>RXZ#aJyL`m6rZEn`DhpR{9YZwz@azHh@~a zs}u=qcQqC312xU{fm=9SK+i?mKG9*E{NL+QA42zy&uNuoDePd|d%LNfH}Ci?Kzqyd zly893t(7R6Cukh?&;2#t!qo1Pzf@pF5 z$0|HsI)q8_zm|{lj-XNW1-CthtPF=>2Tj+J%<`-R8 zPt0?z#>Oj} z>BI!1RUNID9-Q@_f9A`fc+T|qmy~$0?f9Bei*K&pVMVT-mtRQq5Q^2~#JS-&YO{~k zeIn%>8BF#*J!VyW!!uZn4^Jm=?q7*%aMAAp(J!5u{KZ5%pTRPj4=};4$&bI(ZoOgi zF7fK6c!B7hAgk>%EZF7p_54ebT^v)aCR0tmkVTPtD1;*Ll)p6r1|qKQCGoRO!#qL5 z@j6O%u((HAMJ=wd>coc*0Okf|mLsC?)YrTXbL`74gJr>=aTjTS1xAD=SX;q$$rJ*e z&s!_^GVRv+M61&sHXe-q&-D9&_l8*Jubom$fJ+|8vewp(J-@_Gt1dbPm7XdI1gu^j z4|rRt3sJd5*PGVjVx}|&F;ytT1+|Bh%o<3$TWoSdj-gapS9hiN#8Nao57YR89y)9# zt2u5ty>LS^k-G+qbg=#led^$t7sjwQ2WkGRuE!2k0 zDCA=^ZqbXA(p`bIRtW3EA2CC>gVInGiM3sSDNv(WQC}DLbC)20BYAHA;ySafoaztW zAe7>=6Y1Yk^Vd#AImdv+VCq`~ROay(ofbh{S3}wy`Zr7Y_lyBg75*o!kK2z}{bgwO ziUo|F^Zm|6fLA`fbrGG>FX8K`x+8eFeLOr(dnKJtvXD|bZWi@})t`CObA{YY(buFS z6`YO@y``4R!)>sL>HST`k%&`heqy6Wu0QDu)>4w9{7MhPwX>LT0;)zHvoTn1y2l&~ z_mrho@SW2jqT>f>3Scju*V+SN3x+uYt;w9qBWvZh8$!-2q`M`XT}>lW=SMMJi@vmE zp!8xci5189E?HWbEBj=_ls`B#;Qs*B0?zm5%F_P;#BJVhMHi|602mUw<60y5Cnkz7 z1uLIOEX3CX;#)x#-d>RgzWIyf_k{DU-51a5P&7s>U2B`iiOldSu`BlpgNED=T;I#> z4G_RjM_GGIxYu8+J%6WDn`L3=3}dgPRm>dM1B#U8H36%Ay!C|HUM0VO?qL?aieVBX>*d+7PGbJ-qpYfX!2@o{+h+V9zGcv|BW%EMqOLUB?R3o(~vH*Q6HN5GSO# zzRGQVAZm_PZQ0f7IjRmn?r( zDz^FfO$fWd#rFA@WVXw@gd06pDiihdf)EY^yr2fp6o_dij#SC>o#S+EynN7PH`h`^PZ<4GbWn6 z=hxn7NyB?E`&Vcpp!zyn@632dRL=Y2{{ZAN9zkUuwZtS^E2+!xY0X{-hKwB{aBtsr zF94-oD~O2&dhjaI$Y9Cwe|CYKu-HFIUx`;j7;6q|b%WkCEm=-HuZ>(Fjs(uN{rlo# z@rzKSMLNWXrbr zhqTZhPQE27HZ?|#!ZENK^9LYaRMHZJEO<3HOUf)R9o8ojxDSb%uxy5888I9(2p@T1 zsVHkTkMW(}mnlI=Snq4_3>xr{>T~{^b%H&Cz5f8jwDk{E0NVcm70#<3n*3brnaD4z z_oTRZ9HFh^5R)?Q-wY@dXlci$>MnGRl|IR4&X48^*$hm3 z@9(^^O9jv0KGP>js-Fi)JU9g9ad-J4a0y&F&&)6l_%9Nkawx`i`j~Xy*U1>xfo+Me ziqt(_FwJ0G%QK+y@izJ}F6DZ*Eb9|dhOLukx@w)4)qX&UJ3Co z4EFOZB3fHK`)i04Cc1Fw^o{PT)))64(uGYjcZqvQ9J>8rb;|ln)MJ)CC3+7r>MEAJ zRPQL}1q60WAny`Yj}Uo+)^|a5)&ScE9Ju0Kz&SeY`64I7y>U>z*b!sukj$G!!b~keQ33OLw_cs)Zv@B35Y_GOaM2Oe6j_VuUXe{w+at{` z=0c1t7?iq!Fv-*KXQVj9V?o~@vml)TYg+QnnEjBOCRD8ppX2K>Mj#GFozt(xb}L=j zd3AHq-9ytn`0FgOhYG^y;HDq}SpysA7_HQ9y%Rx|*K8l$RS=CUDnB(CfwbVJ1Tl@q zX6>P&V!4R?dgnlK@ACDPR0vV~)7m7LWzcnVzxn7A-V{<(0kdj@YZX@x3A}di6kr8| zVk*iLDSw034&%vH%h6Qv9#nfYUlDCj0scByX<&6VIUP9rs9=;ET{Y?b$9B{_t91aG zvUSO*UJ0l{8>P(IdHk})sye@jq%Ui(urQ7pp^aU&fp?i|M{ardggGss%(~dGJjY*< z!li-SOKjUKy{{gUw6#EayVSlKy1_zq(sN4bM*PJCMXp)5h)qgCZTJ5Gp3=0TB|c`_ zO66i6z`}N+13M2rA~aPRD^qF}#Gu2%-e5smz%IfxuFwb@D4=*F*ZLLt^-z(&yl3 zMgFEDdE;lE-Lvx$y{8I~cbHR`w_f}G+`Wq{s;{raETP&A;tBFa z7BpJDtJ)v~a46&7W}i+V%F1lJI`)?YyZNfChCQ!r6~M<5;FZ@U@zL)GiSE|FUw10g zlO0jdcr1<3aVj8o0E@|UReA>s{jsPISBDp2-22kBx5wr8Tsi^`j3y}=3hujO9zLvtOd)gj<_DY`RO)ii?5^O zGjI8I!>`BZtRsMi25b-K;&L~BUu*FI09jP$&pu{)jb4WRc!+|=i?65i%(>ij0m!TI zHOFkq`osauZPjA0)R_d`=uCUdyAYSuFN*5`IySst{qHc$i|Bw!SGdjq;Ns;%xhmy4 zjv!re#X9>@&r6G~81&^c)%lmqTmHags5+(r2J5`CtjZRdiRgPhJz!)wWN#Ob%y8k? z-3oj~s2t(A+R$22tck5kYk)ET04C9K)OSgREk%~??D@C^y>RNfc9cyQgnD^_00!%y zc!D_r6z-LBn*pDs7DKGz_LuCvgOeps*EQOjr4^}m{wm$1*7Z66= zD{%siZG%xKuMsywFfC5?8@{#=py|XZ^cTjC3Fb7RMk@Tz**83HEhO%tez5CVN zVEPxVzYsm;>zUu_lB+eSz)zj+RC8>-N`Fa1^rDFt|&5VH&%XpbZ?Sz%km-L2`F z^u?wWXm=RFHyj-=o)Ka-j}y38)sIkp^rw4hVd@p{4?hSsY%J;KNUNGXXecbOQ%wx0 zyMeK1*~$WW6{U!c9Jw8m{H@s#b@8-C84x>mJUU{|_!Gl^XTJr29DoosGHfUk!+7b? z^MYfLjF%+CJJLyqLuZv-=b{&N3a$gbvSqaq2v#RObVI9&`@Q8z8~B9T{iazR7;{|Y z?9=@WY>JK9nJ}wMx0c9SrFD0j&;cw4?81dgbisQZa){-}VfVyfVO@<5E?bHIw8g8+;uj$mLk&N&m3V;T z_d7hTrHH^%+wP2O;fqX+j}QrCAMLh&Z71z|(<1Uj-xgidk_qgxAF0nVL9ta$d4n}F z8yWUG^s8R0WymiiV0y5;KNU7QAGhNk{ zaIoz~&*YtO&&)UHElFt!+5oOT3AcAlpJJqXe;At+6)*IC!k@!TMfUB8X6xDDePh`+ z|Co~0jUe$VRgc33rB-XhGHUt(Y#)7w2&1k@w@zo^hkq+WD_!&|2ZDyWwz;d}Z{Z!?iP z-}R!NP)%ixo!0dlLWO8gO9Yw!#h49TQHj&U?C*F%1*BqV3X2;!R<(m*f`?DVT@g#c z8fpwMMA2%>A*c{*&P86r_X_PY0aJxX#A2|7pVyGiEZgTxU54pZTqp$h#8i8^1172R zC57nbOFN-iuMYZP_W9jSIM}{fuuMY&c51M^ZGO1r_QIr|%SoS_UcQ-E|GuG(lN*_Q zmh(oJE@nv-sX7NUv=3TWj@P=eTC@e&SOzIjV*Q@Sh+#rwoDO%$PIna6gFd)S2nx~W z(iX{6tWXiFtWxMKk0}T&7zUy++%6=niGAh^S#w~B3UL;c7jws?LaS+;OG{VVImmzr ztR5uT89m7aBcxGgnft>d6bG}KS#hLcAZMY{dJF-kt*g#csc8>&Hjfcd-Pt#qiIz=t z^PV8S^8B^EsS=(v%-{8H^@IxY6KyZAzya3ezT4xJiX9(>WSp)pZbP}1p4%g!8DAc# zOLevPr*nIQ13EfJswJj^s^lalisp};el6TeUje6iDCS)rjPcthYBHA6UK8pZOdN_I ztn?hu(fU;mb_BKXvm5JZgxxdZ>{g-KRug#(#MV0txR^N$gRrSnSb|Iubs=3|-yEpU zVfWXFA{1NL1wohaK|+8Ra0M2V9!4r#22Cn@#LYJmo=hiYBB`}^sJT6vx{i`uZ?Y}! zlMraWSR<%84EGoPBYgE!9NK*S|nU+jS}HAP74u`QQKG^4*~ za4U;u>N^P*UpvniYC`Q=)+oY#o`o9LmgB~&+foRoYIeqkWbCb3WdpKj2szdq3vQOjEAE~f7pU}nXi%(VKdXrCO+7h#I{}3<&Kw4IG0Ygbh6*G%T z{{eEMjpt`Gb+-3oiV0T$M_KfSvTLCJ&VLH)Anbc5ox?DP))80PjZ*AM7|snzJ{WNx z4ot1jUV!QdQ&3h%P`gB_Ad{W?7H-qQ<#vK_EcHxzJIZw%5FTxN16k`|4x<4 zmcagSIT@Y7+1#Ci=jzePs1El!BG`-uVZg|Qw(`E8=H5<|>(hWz+&2WvliRqBY?SG~ z04tN9f5{Ht11=ml)}hNtIkV*dPKvT3*%iAKzX7b5PJv%+`m-tc)lW{QR+rozp~ja= zlc7i%=jlGW_JqrRc6iq{rq)L{USnVm4`%l+P8Uza(POAQqW4vLu!57eo_9w;N{u!Q zi44hoazDwiVM`uoDAYleDze_V0uop2vd2)~QPAKPn`es!k99L!Y?&#@3ac9Mm>2^? zYs?VwbX|l^yAw(bp#cG{W5;xe#vobtephd&`z^@Axi+*<-%1E4xmdxM2-r5RdoHeY zaFGC@^U60bYe?g7PM<4281Pc`^ee?^DSWP;np42K{TwW(tGC)w=v#OCktHed$e;`( zrm*|gkTd}~9=N2&2>+0ug0gzLv>;fXe@q}Dgl1s0MsPX+r)!xHzx=y6y~x8+u4W1K z_hinF9=99E`V9DsZj(|j{YJDFLX=3yL9R|)2Pm?l<12~$Xjj6qLjigp|H+q7R%+Tk zrod7%ZRb?ZueW20fm&WNpd?q(m4%>jKTw${&k=PVpr2e;sA_%{1;l0o7R?xnJ!Dec zcS56QtwLj_wtmXlH4o7|k|Iiy0AXm#U#2U;vEsHc9hku1nf*3qt&-s-!&6B?u7v7@ufSz}LFupSA*{Xp*U%hez=D8R`u+0=! z!LZr39jF6KyFz5|1e9V8F~*7zt>YG~o%Pe3kpX_zOw33zi8k<#hPvbqKKY>wd}qp!cP0c1ifvvU?qG1haN&4h z&-7Xe!Omc&q_At5gl1>pEo96<5YtGnOr6%v&b-8v>kkHP(m;m4b%+{fR3@sWyG(`Pu?d&xMSKCgz=HR%JAK06%dM!MhRQVJME!h5GIpck7u9vSP zO+5xwSLsuf5T$wD4UDz?YVBLPvJ$uHkB&qqsygEx+e7DsK5~;1{6dV~`OaZBLYAddra?#J1QAwPw0>mE{E@G5LeAd0_D2OAIqKmo4!WtUfue1t10xoL<*wgd`JO^ z5+#HD;yO5p6h)rFKByUylH+8a-w=Yp>j4k7uF<1WKE1k)U7i44KIHqYE@~b_ZK4@i zRqCt3jVfB_9(&D?MwP>ZeIBEPk3J=#b4kl7?&N{B;u{wtXcGj_U>L^I7f)$$OpkZB*7mVLcjU5FKdcoeQH| zi0T(7&V#MG#w~G|Fxa}imjg)F>nCBf7T!XD@_Q|@Vk6gIGdz3_uDJTeI#g)O2L9K= z;1+$^nQwl`ib_tr2AVkVBtB}56`_$OyPJs|_&+*6-X*EV4};oIRU5?LxnGrkhhXa< zd>l%e_Z2!ri730lR(VUiY|Iwap{EAn`eO_Aj$_b#B!_(x}Q z5vzt8MzG$sWfu2YhPYK95wlG&swHPRQ5(}o#PR{G+cHAd&7?Sv8D%W|P0J+hIDAcv zQk$21r zVLSa;u6s?zNJeNmFL_DIKCyalnB(!nUe`S`X3w6?X%on0JDbpVg^=D{zJxYzoBdiM zwpL_;Nq92sIy3>nes{Ob2!S0-9ysak(>wu6je-TJ zQFwSFIYsSbOMFNb<_?+l?e#IWBC-;o`Uc>fg4XA^G1v#q7E6t}8!QlWLgpc90Tp;8 z#yKW)d3*Dx>{UZ~6f25E%%b4l}oZ<~HM}5~#eM(#uYu&yt1t zi7=0BBjH|R5ZEw{r~bB_%3%ua>oh;(3+GI2v_I$S)7M!SbW05x&pSe2=C(C=e4l96 z8HEVc5NF?N$?u%VBrpgiRVP4VLrRRNIrGQ>p`YFusCvyzS+el~vQUmw+b^^mQ^)iv zg0hTd?6s#Z@nfK}P@iMc)q+%*rhvp=4nkevCswl@nsmM|Gr%|IYKYw6E}kx7=l1UP zV5uM#RcP1$4%MsVM{$YTw1<#c6YxInYo++jV2_}Fud#1?=+yUk9c=J^{7OXm7Bf(s=>X_*;Ez&p~9 zp}WYuHq)M={k=)< z4!*oZmH1NpGrr^@yK#ww=$2h^kek_uKvwa--8VEqfYzizwu`|&4XrpiMrt;yDksdT z5hQ0M=&mIW-}^v-Hl*lToJTT(+h&g2tfzaxVRr=t zxwPnF1IRcVLktgm$&Pj{w24*!GNUPLfE$ z8zIkC6S6s!_tQu*RCtQ4fK=i?#FAfo{9J&`LUc}T2aZNN(<#AVr5R=em%-vX zdlzW+nskko11bMXMp%fPi)>2N+dm=`PJYJQ_@RmtHP)0d;L|Y#k_6|A8=QjZ1GuZc z4I()iNhVvIon zdmDN7v_#Iz_`PfYYWTYWK!l<&4+32AV5{qnL3^fp33KH+kvpBc@sq^mg5x9=YFlt; zOZtHlNhZia&z70Sy?uCw=IGfZh1^B=^6BhLHzV&NLcF&tXb-kY%1z6#HEs({bhzDf zJOLZ%Ydtir3buHLkAFspYJkGPNUf62h(&w&F34bN$6(47UNld%T=4)lnb(f1`#}P- zQ^cgj_shfb$q{ERm9G%AnB35}J#|}Yig%Wo$Dg=nm9tMA3tL?E*F1Ft2?CEynD(hLW z=+Cd50}9=*x2c*P6AyY)5$vF~i|T;BGo(g;9K^P3w-|vlTlboth(s=e{PzuKjq73@#pf9B}V5(*2FN41vI?XN)#F15$BG++uvx(tSaM!GovyGC3aK*q2HRvw5Z2^!CCs?4-j#x zEo!Q%mJzkX?>S$^#AHUNsE({}Vn>oTRc|n^wN98j+)H) zAJWpMm`|W{}3-a=2SVSDh;AdAdqyu~B}P zQ=WE@PJnmgqQR(kBWOL%8iHhiZ<#M77-Lv}B{eORO;!=23Vcb$vBp=T!ll!|EGt#X zRasrXxxk3Rw~ebw9Std`VFKtUS6XIVP`AdMXa9VSJbD7duhH|!XjCltvCzEpYd*;C z(o{maJ|K`r5C4dRMv>&vC$|PoK0ra!Tja4pJK13k%#hw%Mlgi9=LPqG2EJ#)8EzXH zsAXaJYX_gqg~~m_1o~$9T{=Ypwk#e*q$r(Lpx~IPNid&+GvLN(%NwjtX!7yyGfS`S zE_C3R5BKo*$pzx=RcQ-lt7XFL);~bKwd{p+V+k0uom^7t1zS+O9Ub9$pc3<+Bdi+g zU0#y3INll$Jo}q9JT);jd#V#UR$pUn{Vh^g^0)`(^+zR@Z;N9bbA{xCAK{}q-ERXh zzNm}u;H`1=Fc;66?ZP%M16ay(EJks%b2ChubW0ycBq$l|3V!`vT+-gZGpaA~KDlIY znd~3V@Iex0_T|@F_oFVlglVX$kU~!Khi)!zV2*_vr^ag*FjlbZv^YI7q!04CTWi#t z#-C8rWWl-9u$2S~e|Y@?LaK6BWhsv`W~s>H^DC_|!Z)>e(ly1jHVH)G1FJq%=5vp{ znS_2$IrGMDC)L?tS~}}a#(>e4*-j;`oLxV|#N<(aNt{jVdWhk#x_3o@nZQE$t~1qw zgHh<>I{Y$pAEtEQ)T@lMhq>69ltMrvYp@{pqYDl(oJTB3O#Nq-&Lh7PC=GO*t7e@Ad4N=hbdZ-N>Zn@ev)9KjaRW3WFcDSLmlAkaUUnwbQMhf=~HJ_QMGy9!`u57*xm!5_b?EI zwq}nKC3*wU;%9{6T6IOTMv7h7kt)QpDOJ0m=&ERXI==dWkEIC|IA{W$DMOtM{j7tk$hp-$vcQ9_anqUpC(5DWe0hU7~>9%We5}cYm#EbV&F5yJ(^p!{o4Kg^< zCMiyVDHROv1p6?Y)suVVUK3K+9;vYgZd+#3bod*1!M_71Cpuf&OLVzZynCsGR(#|A zR}kGpM;~S@wm&lP<8#dSfkP~Y;suM!qnkSy&*_D80QSv_^FKG!zr}`8ek5HgLxl{iJDEi_+Spr zFMsUE86Dsd7Exn~>p_e(<8{Ko34DV`mJCr{ z{`op#r1nK=(vbcfNT;A0W|fy>XggksxUJ#$n5cmexxgf>`c#^XT6pyQlGv^($^g_q zzByt^rxY3bLr>HM$Sx#CU9o@C4~eaEH%Gje%S|N?9pgwRMAp;_Bkc(3QLfOD%k5r+A4H}-fjZ<0PwwQ;Si!PG`cs0 zOrxl7&uw4^z9)Pr1N<8M`fFP=Dh(wcdaz@zM|6i1IijQI1XmkdFS; zdh%dCZUtBu@Vf(2Xe1{#Q}@<2IgBK^JE-n_kON4x1EoQLi{@L7g$3o_ox`5-(W{^d zsAQjG;~M2W%eXGlmiMIck4*557GQgU;9k2zuMN=oXhE7zsijvL5EXf5oRoFMa$Ln785Tyai3l;{^0bk67XH z@S7#IK63e(sW4$HMmcg-io+^@N3l*d#^0(Akhmp|C(JX09;RZ?@I@G8{y+u6uCJHQ z1m8>wo))toyFUi^2nWt?*ECxqLTgNN!HBNDqiGsZkEX=O#y@Jh0W!9!RHdFG>os)wUq&+@2{(VwbGg&v-4E7Bp|OZ3JV16Zp_=(i64$XB1lh?&7W`ldjws z|0bxP-UEXFt{Qold5R3~W<7m5eWg5%!zbC~HKG;rhwx-Vs5^fr1E@AsA#Rwd#2w7q{_16%G_dW~=cj=Ei6k^QLjOH>PMY?lq29>kv zGy@%Q`fp{fr$LuoViO?CY~Ef1#h|PMezxZ6HMmaGqg3)4?fXUVLQNHSeq|A4!e4n@ zUjDWw1ackAPau=3EMLS}{M_Y$C%*;J_8{)(rxY7ykZry}2E09+#$7YKs~fL$QY}*h z>01Im`#D2zCs-}+^UaU>X#Y^2<|3n00(aOHe(`0`;hEdP2hJf z0pIZc2HFXfB(-0+Pw5~JZ670fJY;S_N7$-6u;vC0P894N+veb^>3C8vC+3bVS5S=Y z2!_LmG?=oJY_C~RrcvA>@NiC3Ac#M)d}*1eKSYarf<8sf1Zws`FRp`eMmYOjUXlT^u`!y>tM)d^TmSK>t0 zT2Qf0ow-Z9_>aKNWA861(-V90=+5I?T65Bsu-0j4`%NO9)XO7G`fQMlC#;V`P<3mM zsG{10^s=;H-fDN#(G+a+wvz6m5s5t_lN(a8r)S|1%E!odSi|H$$L4#jkJ3iA>ZV*! zp24s$d#pfDO%ukl`Gd*Jl7OCiZU44H_2e)u)jYMDpl(2{uxJ~^5=`IHxkEb{X5Y>3@LJHf&O-N3kG(~Oap_}&{?5LRfK$Q0i#^*O? z9gPMllo}bjN_3q(mi4o%!wN7csS_FB_fY^^Xqulvs|Gu~(CGgXN(1jK6F=2DKoy{4 zO&*Tz)V=_)=S=t+i%GwIa)T}jRB=I1r>rdm^iIsX=D9OmM=jVu%$)m`!43+x|63g4jOOLA)CXrM&yJyA=A zi3(Il?nCqlXoYJ3T5iioeoImZ_n@;fYq&MVZ+_7_mwv(VYaLYT`1XL{HFA?}nyoE{ zor=wz9K%D5?CBq6?KVtroGRQ~OrWx+pagHGKvn(hfHn;WHZ<99Auofi-DUb-Svc1| zfiqG*3F}D;qGDRE+F5XUj}_%#xhay|uw`ndnCDnz{uKCHAMR_4q@Z=RpF6=c_7He~ z)bHu|cmuxj{eVKN^|2rF?3L{>oIAp?=@b{8V^lK^jvz0U;zz`$m;U{i%H1NrQa7T~ zt`TH9>!}+b-8|Ghof-O5Wj7(+^1izl(~)yFRucG7vYzZjUfCTLom_;`!v;>&xjgM6hGNh_Oao5{J63DvOK6B~HZ|?RvxXq zO@59?#k}*8HKcZ%0C41tNm1fN%hxJA1XV!PKp-lhRuT3{Utn4A$hF7+$k-YpCCyQA zgEhb%-OGVh0J_>+5M1TBk$j2lIr(PN`$-I_1WEK~VD9ogs{^q1{WKshzCE+O&q5J1 zlM^$xnuGYQQRMqko69u)GvA_xB^U6Xp7nZf)9BXX)e_yThxfflSt7>bq;ph&fAe_u zGY_}yJ^AqtlLvv5!Hh8V?8#&7>wVlczm$c^7ki5X6oy`)`gr|83iT5W7-jh4Mlxuv zmML7rgV?dW%WnG(o=Y-YF%@t%0%|N5yTO~nxnL_FpXUghfMgF}nt*>6-TEJ(cs;V& z_t$aE03+X)CkNovmeOdwG-jRO!>Q=D`TC0H+Aa4Pm>hY>i0&t}{h?7;XK_c07(={P z&E%;eZ5_uiS?En`<~teiCNqckiOJSr0Ms@9RiMQIEDtO)1;uN$MJHM^6#x_+%EQu1 zdukzjDV$V_%&sFo84guA0>QOag=vUcxJEWCRcA)36hHU9w=&LFT4)%4AMSkS;v0W% zIYtdrM^qTpV>r6+uk+d1%n4EpD}zfzl{77-X065oiX)N~>H91l;c82YY>gfVT<$J% zodJ1hYRaDyUrXlbkZN~2gWmGdXZIMt9nzoW)PpJ1#+UQqnj?9aovXUq?L2Dj#~;DR z)SHeSOt;g532R?!Wt>W=-?g&LN_h5zPSL(tPvqxPhScb`ZHWNu9A}SFMU<~GgHd1# za1Y7ge$ha`M;IEAvyxx#1Hibk+FKwQ%c{xH(d+396GTc#PjM=Ly@~KMfFseH=|%Lb z{9v3ww&=Cee(zPypNq$b%%#mRfH$8o4s6BZV+>F$zgB2H>#e{qtjq<5_uTed7*IK~ zC0e;h+(_AwpE26?*Gei~H zaXzx0Eb%JYVaAUuS{n5k$2< zVeF|U)301)(?D;)2&@2h+4dH00=ibtbL{L&7 zWSg;E-L#WAuFH^aDBb1Z?MoZF0+j`>9nef3$eG10Y98OnK4LcklWChGvZY`DJz@9# zed5lv5?#-Akr6``5>~esy{Y^l5?r{hs;_(5!a|=FonJGN(g7c`sH6IQd?KsW?n)iE z??FON!+Z?rVB8+FVR9~JK}j*zt=gbe#+aJP6^3UBxT z`$3=cxUznXnDqW3p;@B__2SzR%DtpMVyC+v8@>VjaeONc?)AIP5%Yd5YTQ=s-QXu@ zQqIkHoVuC$GX~jT&S|qA^pGxDH%L%)=_7+u=FSl#%4MgU}` zS|Xw6ci@(PfXW0Qp45|98Mm0#l!eD-$3h{=w)_<1PRo&e$}AC*wvJd;iVh=pVg&3j zLJwuyOvmAA3=9)ST8>PEaqBr?*=bilyLPCp6Mvq*{c8Q>JvrfhM$CJBzM*Vg_dnrA^h347sFAuJ z9!#R%WyDOD^5=f$=`w+h{pkw6T)8saEX5s9tzWmDx7970XK2mRAgm*oZsErwJA zmMNqYN9wjs!GSi!Ucq?mWV1c#G^$IF2IYOy>huazBaA=sEqRt_dQThpvXGx=1y87d zFV=jt+XvckI@$U$@le-Mt#GZ4td9b`D~}~aU0V)&MWa%zfe9WzejSCk=twU(J8bF_ zM$1}0mxbN*aF5z(kU~3h0B17@StE(#=qN50JtM$IQjfxUW1oN5BSeI<{v{H83a&~9 zSf}(^m{}|Pt2CuOcun(bo<}Mmuu&WJ1~3acF3;&Rl!_dNwqT;23`$?a)T)ael@4)1|8m7s>{U%MafhMBNSKHj0$ z#gY%Vj4+d{|9v&SX75}b7p)dAf0bzAX2hw}HSq!V{?hMr&; zSR;=$G3AJl#Xp2R-as{gZ-H+D3eIac@rHnNI$omgtReZ9nYnGsPZ^RtrOiF@hrh&y zo4zw3f(xLvBvYDSnW4JD)s0UBln|({3O@wS`&2F5=y>V~Ag0u^o2Z;p(M@tx_h2aJ z+BDH<%loLzT8G(irqkiSG=X2p|!$&&XfSsxyh_h9+E;JOWE|F{?I6>ZK#V@d( zWMkVA)-YBM0te=9yYj);AOqzCkk37A?Y`*19vpS)+WXI{vgHt8uMn^Oc3^=ruwpMc z=;w9kHaBx0=>a?&K$K61TZq6M)7K6+m(hTRT9;}c(uG2)=HIPJCB{6Xeokf+jDD#; zerc`ojn}`l{5#&6fjmziGAKa2hXZ5q)ononwXzNKo7Q*s7XnZzba+TvJq|x?wJL=S zwyLeKR(UU#Ky)KhINN_yqx_CdNz1^8*1Yu^h%id8Tu{=yx(D0L!eAIlU0rEZdQEH>*BTaUwe$~o~loL5f9bcbSP;3-a!DBn93IkrO}8R84N0@#Vp&5eNte z^s5q*0$zh4K0*BsKl8mrxmr%}^erNVo_^2K(`<0ltt<7e0p%KclmP2ny>1X;?W?Fh zCa==Ao@HbU0cP84>wS-NYR+!*@(ED~UJ$`;F``mWnyf`(?)hqKv;Z-fQdM?gD&6`xp@HM!qJDzF}Sz zy;JPYD$PZkjC9~7eK8-(#5n}ib)3rf4HcnKBfYE2hUm=MAuME4xGDO!k4A(&AU#=U zL$_rt_?}b%zbtnA9o#(=0}47rKAs*u;$964uRV#~BQ7soeVH}>Q<`SJVFVP$j?v3Uta5eyR(>dR zk6>kuaFXN+5%O(^IU3;&@!$_1s1L}Pv}@c!rSGKLQVayY)q@vndNgE2+}*upEkaJn zSl*CLTTBgglj_$aQb2Aa<@>D70lhH+s_UpO&vV+Gt9WtYdnjFAXjMjkfcPSue_b5_ z@iEHqxOS2R3Ht^ME_flC5&RZHzZL+(UlH}|?UW?b(=YW=Pnyn;&7onk!z1&dR+kfp zy;`K1lVssBG*HaNna~XB64bS`JP0xL?)Xlrn6Mk&|>J@}7XUuO-hj}$@g0bsqPd>bp zP}SGa>GdhoyU$L$>!VVn05WY1wA>o%5}?t5Y(X_To)4vrWC!zh$)NdRgRd>(F3HdI z^Jwxa5&y!gZjS=JOa-3|H^tvg>w7M}MA)%^?)T&CFO9bGNdi;ymhf?U9fDIpFI(*f zOhn-&m*8{aw5;a`r&NhiO``kF=QhDyp`Db#9y%-iSCW7~w`T}4qD;n1ob-hLJmIKW zBzGU4;{vB2UuU6~80?3WeR3Cq|G8fv-^;m|ifZ1DDc!(KS5G~wXu&O3OXn)M`ufgT zmqs+z*^`DzZeG7L57C}cNvH;A{A!}V961>8z;5b(<=6dU44Yqv??9V1VcVN>BF+(= zO5A=5U?PU}J>^qbz=V~!oTZ(_b*Al;WPABTQ0*20T(&J|ZsI0Im7<>woOhgjAoa(G zJiu;}6NXK9CP?2WVKIBL&}Vm3m&UJ@n<#HRu)bjv%7hdkkHFzNNA0K+!c_zIK@%I>g5r*`n z@oc%msA`&iXusD+7F?}g`%!N+nM1Gmz67HA|TNZn) zraj_U=H>l}5W9Bw_yd$jng{p;1ouif>^J<$pfH*Ns@sI2%~Y(bm2dAhauz@`KlaJk zO^YXVoivShWg>QL`YCY3t6ugbl@*lTJ?c5vUJ)H6vS@ zC?inquH{g~S>;^UgYs&xDk!;^46v)*xhDbw^^f?v7o4j-wY+WDwSJo^UQF*7~EnlVIsWp@0oT=NM{p~%p8Zc6#UI=yB| zxcOCD7YnX61I8I?b59!;H|MC;t@#{?x%o*(t~d=6U*3LS)1O>Wszbe1vc%`qbM+Ng zPv~RcWAWBuWCXGGO2m1-)FYA7t8BuV$WMDeD8=rR?a{=L#~Q)_26~p4JoFU5;xn+K z%l)DEdU@; zpfAeHUlQN`|Ih!507E*8#J5q_|8@Mo$13lV5N<|-eO_pE?*AIY5;SUY&Wx9jCH95e z6~+H^vmZ`0xa-YP3n~nl5TV2O^8Y8JVtj+wqBr$#QvYn#Iez2+dqMn zejooDa6}~ZHJN&NWD@+r^gsPy)PTPi1{xRz_YWppoEo96SlL__FlgKQAC9>)^w1W7 zxT0h4mcBa{K@WRvvDbV(6cVaV{x_2{$?l$=og@c${kwOqbk$$Wy=iD#6N)VyN=MuO zvI%{SaDGLEqfyny$h#&b4yNwB?{G-GibCQ^w(*}f6UT5GLA#eF>t)2P*V#{;P-^wU zlQVs@Bnj$r{}W2cqopdepXmOBkV44Yu1bMK#B@4Rz!Jnw4lN7?<)3EclZDz@KJG7< zArcxB3g|skjiPaBDQdw;Ue}Pc`TzFbZyg#SLxUPCcKXS>-PSyaWe~2x`Sh5~{4@m5 z1Mv?OJSz!(c)QL;V4_O~7`%cVV>%Z3T<)X?jq;Jv?{e#ZoM$m6eE$Q~+1HdThzw2! zatq4G@ouI>SoE{JT4|`5=pQT!gbYnr1DFm^A;$icyJy$0Z4Wl>qz#Q$66yGuyd>ej zU=hQhvpJ4#VepAPK&m|A@dJXcI5-GvFW>eM7FCU!zW>X8nbnnLJH$EcA!*M6y~r;vK>46N*&;_=5OMvWN*9teRpK-g z2E)Jd_jJ{xz*?pFC-QM@z#|g=xd1FI@J+}r-VipfLVk5(LQ4a6m639YZ-1dACfu9Q zSPEN$e+CYoqzFJJM$7gG>q4#y<%6D#(E8K-^(x3VQtKk^E6Z-WGdBGP82(WdqgUkt zahaBx^!@&p4fMZa#c$YZy`0lKt3@6nUsdvIR-Kq35Lt0XVq1Hful=t6PuPJgro86x zHtqZ|7=*lyA#9oB#4ZkW^EmokM?uj$w$lC%VgGS*`sAHl#47c53Y>3*CafLPgD^(g zF1?Vr->-jPV{_Ac!;CcQU>LYxf>yUST@gqpoEgkN$*O>y)MW}BBmP2p4$!=AF4cF( zNxAy4Y-b{>j1K#@i>(vN3XU)PZuS1{;KIqyjb)(?`Q$@gP=#@P?428~F+#+*osmA^ z5%O7>zY~efl=Kpwh2OkFsgvFSV~wTdVuKr>vddv6-J<^h>{j7lsG*UU1YHxFt8GlE z!S*|s5#DwfFv4WEwuw2;Ceb$CzhReN&L_Ebs@Py@T!_HdC?1`K_UDlVO$3Yad7z6n zDoXqdwT(~C*_<4SB1JzI?kQIVXcyYWd$T{b3C3gq3oXqU{Z|JC>Vjz!zvr~4honUi zcuR4QUEaNX z8TVV?yAQyGdxs|Kxtb{c3nloAGvBzkSkhvm2f=F9Ug#_WZL<^E$4TAf5Ep6puI#T@ z{;3s+=)F{YtunAS-<-l8^fFCgt=owPdnmI)bb7P?#!6gt)@||=X#F)5tinQu4?`sD zsCx6dp6=TQ>;<45i2pBCJWWP$P9%7$a2mZ|;z%AUUDPewdN%JVL>Y4z`_bB8uOt!^ zPT}M$eI~0SPX;YDEOB8t2=e%p&%3LMRU#v|lK(;_eAdV^XO6N6?`)kR8|z5%9E?t3 ze3a}wuu4p^(qx|gE9?>!@@h;>UhA>_t?-svW!1No-LqoMxyW#~wnsO6S&`yGc%AB+-&pL^KZYz&E%6Byw0DI7XqwlTj5G9DLSJ))0-{$ z6H{Ht{uAn#ZwRoxI}v)t$G)IlOm(*_ZV|5{=^r4*9#sJp=zn8LeDkZho!4g(*wp1C zMQ*5}?JFYQba!HKJxcz2G5^y^h7-3G2SR9EF??OV!`mXPt{%hfDO57D|HAnX!~FZq zJqRVLFx;^;A}`k^$&J@S_#G@l82^scU*{5FB!_9OZ$@q?7uxwwO~B=}w%VBM1OF$K z#5YV-@M=k;ic24DH(2i^Sg|Jyxz_)8n_m(L=D06DnqCPGidNjqY5fjDT>s2^{}qTY z>*BydX)}@$&7;IOg2gpg4aWcD?0>lzXyb2Wnwl&M>*VnB-y`>5Xa8+osObH0@OBil zKIZ?1^H0kXiQ;t|sQ-(tf1~{eKKb1Lw(|e&BXa+t{)PM>l3)Mv*bfW}3ikE;AL?I7 zU-Do43Pkb-0s0Q{d3Ceb3_tsB{-yr)r4Yu4^atpy#-@4QrumC&d7bE&jA@Zn+>S_x z{O)=<6rAPR2YOK<=;(K<;lX4K`*E6vP)COR7yVl-`V|NMb(}vy0(ATyG(}Cl(iF%p zOl+V~+4x4S_G+ZAJg2Ngz7s*<Pp0))8`q=8Q7BckYIOH?J7l;tAn^0_ znmM|ebh6%LLc$Fg#3KT9JZoQw8KTrf*{^UvXk~dw`hV9$xnZB`dj@NanN`evyQE2L zx$de;nSvUdd_jJ6;6v#eVgZgSjT!-pqN#QB4c22vs?9KHzx%8Ue~uBm4?{VutpO2m zi<%pEY6Ib&JSDtgAKw}<=*B)qekGgg07BvqKi<9>7^hor2A}N(h#QqUvUUg(kf$K#hSbO1H|wL=pz9CYos=M zgaN-B{C8m6SXT~Qts6MB3g_z$LN~p$1}cfhnL}+>EWBVruw6teE8)@zNRh{fvUdb5 zJ&YEzZ=y=YWREKYA53p&oi`IhO%hi77Lt=cZO2{K{7@A*1xNR#M8zGqSoOGdXyI!S zDNySyEI8PtT&3*Hy!pU{#*G7s*u=lpK4z&qZ$PcKVUH>k9)%AaCyuRZ$O;#+ z;E8w^qKH~|6ov){Ak2ZfD)73cFb^D7<>e&aobmM4+EWHj?@Y_tdnVg79Htl_cEtX^ z*x9#PlNA{5bI);|TiUG0gdl;F_}!z<#AX`zMg6*xcf(go-`rtl;~Dz`c?kdz5_wTH zbKPQ_1S1~oQd?`dcJwV~;_*mr&bQj0Eg@oVq>)}wux>j{*yR0eO-n$M{@iEm$>b-& zH82FyiSIB74>W|`2JtZ9It#*vJfL9?`>F%)bhV!xHL@Zfy$WzimXx|#ae7~g-9sL* zE^JT6jN(0yy&%F9Z#OGZsuKR~{2OjEp8FaAGHg#n&Tn6RjzUQK^PtYTZdCsOzYy1B z2O*Qn#58Nf)s$S*jR?T?ld(msKlDeZb-|4qMO7!x<{bW0-#)vmOJl!J7)#KeFhiDC zY)9f|_Ca^vyxo@e1FIl42Bs>$#zH1j3WU$#{{!ObGsj84sES)T1Vn87LAkCUdph(Bsj|~Y-IZe_Zv0|A6ALn{7c5# zj+)=4(#A`(`~xM2SKjG3l;7ZclZA{?$VRT#&g4SY$5tJ}I*1qyF~Havbs=CpH$HiM z7z17sEZF{R-mL}xZ3*)1{6^@>dyn1Qg_`tTKxdQp2hPEFEWE+Iis*0|!>Aq*G2AoG z0DHbLM$B5nur?Ue*98ZtZjLyti93(r6RC@;!rQcU93Lb`JBd;&GR7anSX)81Vc!$mCor3q7PiA1w9X3)&?a}g))Fur zE)Em>tji;xV11h>fr|7(wTPZUj<{nX+?l~6T#QX*+qoXvNRfvd4#IGsZG?{ac@4Dn zvd8rv8DZI?d;b6=PayBIEn@=|?&}Wn^OMvef_i=$!rx%v>sNO3BY-0=ail;zh|1VM z(+ku&5jYUM3?gZGa&M~)Av}gjnGo=CEI8@Lf-g|xmi-&Md|hSX(}%E2mw5>gFmZ_= z-LGwrdqWBBL|18Q!%GKY>SwNg8|pp(0C+EASX*~C2rqkQcF203?BULk9?Uz7!b)s1 zj>crkOVo5-rd}c9I7`Nz95hTll@cz=gdb~(3?v^s(yof3xbeYdMaw?nvb$U7tNkH;*$ zLQhc%V}rQ%^$C-^Fxe-7x|4gbM9X_PYaXmw{4IS;&4r2VgUBAv2<-?_FuzX^sXc6r zZKQLw`vi7J1HHb;`;)8R;roK^+nPGq$mesok1b1fPNb4~DSO-4f;*F82U`YD05gr? z>gjhuok^Q-#GBD!WKN`9)lJBez@+5Z6QG6CXeU;TRtLJu-Cvfq-t8$MZN#~Hm?$M6mq zGI+x$E{W+aw{vCfu{+O9x4*;pXLs`2bp#h{BODInQYE(CBc$r}3@6#mAU2&!v$1qF zkt~+aWv7Gb><|YT47f|`5ua_H-kFg<-JkX)gf+DoU`TC-3nYosSv#`JGo0HtJ}%R0 zL>1=@s$DxsS-|i~di+P#{CCng4!Izh%GS?kM8UQskXp&1J-fTRBQrQVzF0Ry{_;sM z7Tz?wq>&sCA8jSnpZnDNmg%!jn-gSDVj;FJ%cYS14djI3jh>{Lwoi9L?b60K-Gn~x z44qHE!yn1kFw2IPmXIyZuH)h+>v^;=vF)7oBo-kh1?p`XBbv-!r7forA1%9a2X|le zv5cPJTYp{ODAEIATkKEp4hqq*IeeG9OGt}yOu}86zFoWR;XH@zeBWLNVqN|j>fZQ& z+gTIF^LU>x+U?8INJ@Q-3*Ckh-*7U_@=cnNUj2fwoxA`!8?RxuY%e;yw}#6&w(4Lm zZK(tO&g5e(bAtLNS!vzb)EOKOLz95Mapkhiu*85s;|k25F0j2` z{{Rh{edTk5uU5EYV8cL&GShCa3&a7sk{l0F?+TZw{{VR&!EdJu$ag1pNjnmVM}SG~ z!NtoSw$^NQeVu{a$b*0wc?U~I@hNTNIB}6bMixjOoA#kBXDJ(P(HjJX-jV}CZMJ>9S=_SRJ8Ov>5`Idjc3tj;w$8)kJ70!6k7LWyW_bfF zBQkv1JtJMeL<_>wR9WV=jntsB@_N9VE%G*nqlMhM$IdLeh5*?42TM^dGq}{79lLrr zM-WU1w)vj6q?i-S4x{HgcPf6!W}hzdN!JiAa>F0Pc#aR9?i&lKcU`qBVY``332dyp zhW7ywN!e|KB=s%o=)I-c?#~Qpoui$u$!0vCBtPhz>_nGm8gSjosz#CsO=Ca4d_AFz+6rzhUa?!Al57?cn3$@K0hC z-Yt$!FI~c#UD|tL(-2ORr+M=9nlP7Gu$u3o?}K(h z(6bJw+ibi_W%l&T<%S#7eiw+~=@}8ntF-$L3^<5SsdO%lj0Qi9FfJX(Z>^{IG zJzI7{EV3}^bw|R?yl?*i+0PNz2b3(Fxjn~kTr#-E_E>uaV~8-4cy*9_6T}ncmd)Q^6bg#F^oD!Cu!1@0GHn+HJ$7J<0xtk2(7qZJM0@lMe^%irZ zfXgt6f!?dUlEb~cp|FTSTek2Vm+N#e`m$hM?eJM7au_d%ISn|y zLSj(cLDZFne#Ms{*}y~{!4dYu4~U3ks}eFPovpGk5IK@`w}{6R7z;fmb#}vm_Z>oP z;tWj~)H63>wn}p?n{AeONfYCGiPi7$-Xj-R%N`%V>16T9O@#68Ag%UUb+a40!;X@2 z{fU0<`nLNkZL#MCw#@F#gY0Asg^~x@{@*;GkY$rTb$!dtmOW%FAY!?4NQT)^?4uS# zzA{X=_@&{Gsq*#sLh)iQueIU)7-QJ+IGJWxGC|sp5J}k?z}-*Nz)*s9!NTxalas0- z&tUet0I>Dpf#fm+jj(}b^GF$DF_X*^^U2ipD0mJ54y>7e;U~tDrqmMZo7&%3zrq)Z ztZ~xwV%SWs~($4k4e@B>j<#4AUMtzW=-H6LxZfdqKz!OPqW)Dok`Lq?gY9r zpKr5*Kah@J5*S2U#2gO+6Frj{&S5S{vK(Kc!{5en2IYwyP191|{{RipH=}@*nlpKy?15$6oM#)#_itQeIJBIxBV_25(f+dawvox{pNTN;I)k@j)^Hu9jtJ>@?eP0`ua|o^ z@smlV5d)XbR7JnG(=+S^fM*B$kp;4a-IoaOM1CfQ!ydQ~ zdu;?sW9+8QI+*Q#i=@LN>6kVBE}qNjC-B}#I8LE;n(ENwg@Wwr!bqY#{aTOM{{XG> zx9WFxgi;`-99feKKbT?-lQNQ7EwjYCn5C}{{{W08&mf&kxXAv}U58h9ep)k6vWYTd z(j?298p9ZQF*3>E;EcY@)ScZTe#ydE*;!e}{Fmm`+3r7h5MY8yA;7X7wj6}Fh2Xq} zvb%2;IJU_M+ijMm%O(%T(AhP?lMgsIc*$9BO}}NCJ?uNkG2brDrR_VHWRr~JV26y^ zEs40!@9mZ`ZL2lVIfUs9=|NOo=J>UbrJOgHSOxaAXb!Fft-niNWqX!dAQ)Iw$8bDwy2~Q@j%Gla@E#Z6-w%#Qg_98zcE{&W^jOl5F`y2LkEW=wzsFZdY zLuoCtY{bZ6+*>p4+R(I=_rS7YCs$72U>GUfm&pgarPpRLHUe=kb|qpP?)hD3AY}IB z;l|gQNaVx*Wv?5+chPQS!TCw23U?h#BOEp{4#5w_v)uAg3Ms66e)$PHcC!wWk{79U zGh1Q|gC&<>xAg>dDPGAX_AgW$XC1E+@41Np@xuP+4w7wUiDLWDU-;pbu~}gNgFiDi zFOo!)h=l1Av`mb5!64oyu@IxOe@rugN+Oq6W;NgpytfH^h`M+G021X-YwE^MtQm`V z7T;yI5|R=9+&ao_+a#QO#2h-EoLXVn59kI2u(~XVA{IW(-9vw5eW7m?timk%Zu4w> zk&*}lETYMTRb4YuoV1E?X4IU)Ayp7v)`l~p%jtW-opxsMy>tESXS_3C zoFNDF216l}86r4f*q!hjdum#S9nVTK*Tim^Q?^g;di!a6zH;rqs93h%8N3z*a~xRUgzN0TR=;+?a<^=V?shC@PFt;m3DXc6)uU`o6N!yhH|^RHk8eKm;XdU) zOt*6+Vhn>nr4rg3ForIZ@o%EWJQzqeH*AAEwLFpGZx3e^sFPdw$IpX*Ya@?jX3@J6 zzc|(VFRNQv);BnBlbkiju;1^)7FyiM;t%PlU}cku*dp1r2F5rSe|rq*ox8el-TvWi zVQpId+LJqW+YxL5#y^&C5A2^Jep7p+{rUC?IaAAcct57HQh!SexMAn3&n5U{#RJnf z_TCc1X=m`>Hg1qF_S*R^<)`c~-KX9wdtC4L1>ZSjCjF3O7JpREFl0AJQiv99i!FF( zS8uS04E?JQ2>VU_;ctQ3YV5c5ZPVqle|x?%$RM*WqfrO;Au>2Wtl=S&&TW=F<&s$h zS^ogXmfHseE~9?L#2ICu=p>NNu9nDue}~B@klSx==P5iGkvFx5 z#f}7Fo*09GWOJYCJpTae)BnT(ED-?#0RaF5009F70|fyA0RRC25g`yUK~X?qfpL+c zAW*Sj!O`LH@sKe8+5iXv0s#R(5dQ%A&Axa40QK8{=mW_a6d@$%^g-T8X*e=82{q0O1j zaGbN7_a(ye3+x}v7*BEai_x@{N!zykPR|J}zmk8t?VBs^5&`2pWtNA#AGgQd`QKat zC*--+)s5Jp%l6K>ds_#ec8Lh5)L3!2J@^2AY##4L@Y=mg;^IV~;URBoO#c9J6MlGn z9|h_}VEg5+HDHg*Ic>ReZ4YuEVL2(^@h98T)3>d-yhS%29JqR(tTL`J4|nF9eb^et zm_XP_>mi@QLC`i6gR#sr< zs=pAR*YubV8P|WZL&y6`nn|DRIkP=%VgCR^%9eH@nLKtjF3&wc$&KHz^(0tLTHf9U zl9t)8aL;mf$aAm;Hm$6^q-2p^nE1W7!@0-?kJdP1b+Uf)d5Ti>BogJ!X%p^u?WYIx zYUAMx_ASZFQcYPdez+Fx3k;urR#|2L07ieHIK%n3@qX}|wjKBQj$6-gBKa$3JRIFv z7uX9EY^F=H_@R&dEOW-7KIaB9&PWz)V{{*UMIOpd*mfSw9f#9x?fN0R_K(zha&BgS zn+tmd>-A@6>I{Kox#ean{+4~4EzoH#Y{6}#x1lsWe)HEY43fa`!@=dUZ4hmv$|EvQ z^Z@WlDT>L_BiS4csG+dt+P)&au;7O~d|TWjz+ZnI{{XiBu*axxyFQn%)qR*UZHI2k zOk@6*SvE%;?eJSDJ)n3PLIGg)=9bU6*N6%4ESnk2rpf9(5X(65=-(Ygqa`+OnW4!| z0@&Syxigt0{x_i^{K8y+#@y`BWZszkl2ARfIsRiFmUm>?$4}Ji>>29F-<}teD%Zi_ z5g-}%_T;E*1b1(fZPIz&_1a5!VP+N{C-G-s=YeECOA#I7G&yO#NIlrSCJp%yD&0ro z&7aC&5dQ$NGkpI5Yfo%m{{R=~{@ww`b>KOCcJ}N$9l7#!{{Zl@Q0b?D9kgfZ(Pf{E z_*q~5viw;+m^KJ94;dpkPI488qFlz`cK+bbTYR|9oR)j=fOs%K3rk6M$~)QTCGBeD zVeU_<^RVoC$Xr_wfepKEUzq-F4cp!Pj}PsAvyk|g@=3JL#mB&LlkJ8izrh2m`rBVj zk7+xR-_$t!kjYsCcecO1yM?^h!`v|h6UofKBt36S2mY1r>B+;@ldu=Sl^m85&r;<3 zENch%gic>__L<@F_9T%VnYc?9M0gn4r-9w4s23P_E!_*ubCO+Vq%)JY&ToFlv-@mb z!FhWwZ(@|nwh%rTKcLHUII_(T(WwRIjj4@@={(h0ISCgszU zo{s_sMqbxkhI7EfKRCsidqYV5lO4}?rA_RKJ~m|x_yv156bIdew02l~enR}vE7TuH z^N4Vz^3d`-IE-@zbSmTybgf18fv9%o)#!`CON z>m_;}@^D6%U)hX5^H0v** zDcKXj|jVE z@lhE@*@e8UqQG;gow4|YHf#xO^bxC|Q(ILMvLe%Hx%b|(^Ybe128 zja)-NYnf~Q%ksz5z~TB%cs%h9wS@17)IG4cVLxb!Gt(^2?Pkeq@>}ouZ$S#nJ=qMM zW>N@u2x)eYb}~UH^#1_NnCfzRY%w>MX_wOE?1%@z_dM*qp2SQWzP3*cM~LpX;GFp^ z_X*2?6NvR9PRj-7f*F-(ei6&y2feraPtp4MapGSJSpNX-^n-19f#9}NEF32zkZkgN zka)&ha8uY#5H-`laF*iaou~6E0{MJ@GpIMu{{U>{uBwjYn6QP z^pECp1d(B5iIOp7+l!Wd92}9=hi{kizAT2#GIZGw2Z%Q;9i4JmKp!oW!G2<04p#Vn z$>aUkC~ZC2oH=p5Jf7d0TxFT=S@Lv^!z1VOX*!Ktvus2+uv_uB?jyD9j_4cn3K;^%6DaEgv7o@2~SSqHc#E zI0i274#p1|aI@R$`M-#99{}`eX2c#`d1awFVfTDva>$M_m3AD9XJg<9c^sBtZlg~n zJJRJR0fUz36RXk3Z)^0F_3^=fSZuPI1*G^6CB|{?4@^6dWLw>p2|u%8{{Vq>w8TLv zZ%_VgJT6->HvR8}pK)?uyK>Th#C6-gubi@REb=%~Kj5yd?Z3UwHf6(nM=t*WFw%OF zkj3%VVX!jq!5xZudNS==2l++rS`YgRK1Drna@EvbF0WJcfQ`LR2kPL#J@^6fx9Q+W zp5d$Nu&s3#o2OWNJ;azx{OyK*%P$ggXJ6W6538e58FGf?jO|WKsZ9R>?oUy;F};KN zj$EJkLoH?`(~;`UtdJ|M2Uv?fVv8d6>O`F1rT%g9|J#%{+tKZT<^a zHt!?n{M!(`wCtEa6Y9wlZ!B(>%C@-PjEjY|GQ>{i4S`u?V=v1eQ$IC~h*Rwqe~Y9K zuk&X-L_9GgC3M?`lKYR(?P2|&aNMx_dTa%4dqhe}WfbIWz302!s@v77z;lZ0+CTK48qcYyk!BgR<*=$tB2Z(q?Fc0Dq7 z?wGd0my&C2*fMBsH>>96Id$qgc=g4_t z?U$B)v*qiggP&o}-qy0ghRc4zVH<%F!o=h_2+wPXkGOuz53p~rT(tUx%`ckL>M;_z zy|J@bnT6U8OOY}?&_)iy=_jN|wd?vLdrQc6=y*Qf{D<@4&Ez!gFG-(Fq~CDT8GW0A z6z8ljA9AN&2d81)7PofHkE=e*jA5BOa2&BLU6#3H3nc8h;M;a`?%6x22V^+2ZOb%I zQuc~yZHoF&f@ojP1%PBv3LqX!~=-rfUDkq7l>n7Xsr)xtiDKR4gNco3f= z9M9Q(XVudrx!HG1pRWL)c5*%Tz^B4rdC_v|dQGd=9lO76c{wb*ZTWaDyRogs7I$Jf zZ(q?L1M2p_;8`W=4#dg$yyYPOiOA^Lc7)8}&rZ zxTvNlmgzqhfX9ET3J*u9`>x!#d=NwGId)mAFL8v0$+>n^UiAktpV|h-O_p-Sfd=K2 zu+F7}-aT7x$7c5qc+SHdUcaI~1?Pd#{+=0y(R1LZ(TF@oH+fvZ-cIi9Pm?fBqotN5 z@}G#q9N1dV5y*w9shLJxV?3QE*=--TapYtAOMm>!2W(8Avuv=5dEo-?{gAzd?k(k! zyB=CIGEvC*L@xF?vYl-vv+u;?C5?t8H`Fr4`yj5rM;`~t_j(fl0HfCDQ3P1-7zUsI zL!gHP?E3!NnKoEEJ$G^Y_!@kZ+EZTSsGHkX@-*ye>;C}T0L`TEaue^yp3?)q=e9A& zz%tND*>b|bm$s+5&F}tf+=bWpf$t;Y>o!_W-FR@0XA;Sb1cSFS&%}*{lb!`18F$qF z62@S+#D7FS2hkk5v#TX?g91|Pi*%ve0FS7BZH%zle1B;3lb7Jw4=teC@pnEZ zgOjL!$U=GufivH?tS2nwNuxc=bKAlxasKdF1}kKZ8wTS6G_m$O(hgaL`A#`z*b{pr z*h2pRTT|82J$CfusN0ryF~%HDzStYny}w5v0PHz-W$xd9(0kpM%0+HFJ;8~EQSFR% zjnld;7>7vWVFSRJc4e@aasqmWOT3P`eqa71rWLDTP7%O?2hn4wF9>eLt&Lzg9y(`V z#68mW%RCH0A!zt<>dh>U!r$Gy*l$mB?Xm(5mB*{%w|BHZO{9D<-0L0|Rck9xEJSyR z+CwkxyZ5wgGn1zvJ;`ayw`XC-^#$nd^J5QI4TgWkgh%!jj0xSO$$M;}$qD*4jy7K4 z<7N1ax=#Ue<(b>zo-zLO>5WGWwjvh1Uge0Xure3)Yebsf)(h9D{(KFME7Cgl`MLcd ze7*wp`3$)@9%HgFZduFP!cd1L!C~R)v!}2Fk&w=pr#?eHVICC?gpvf(9;`CL#>#tZ z*C(5ruIrKqd=p`ha6lZmVF#$|3j}s&(TVZ%f5e%`u=n7ngbv4tgPy;eGuwthxW)2c zAEchI0pl6sd<#=$GpN*lb~2V2qpKnV!MouaFS6n=Bez{gtc8~NaF}=rj*p0GJLbuI zY6GRjB!EjM)b(XP$0ON&YVUj`k@!9Xe%T~Yxr*j4AO0Zz=+5j`{J$-H68`|_o9n_L zHeR@3BiuLiQ|jPDd>lI--}IZ7x%@YJ$#xHT)EBl!WNQO0wYF2T11x%-coS_d9>h0Z z9e6)L%o$UpIK^N)=_xqp+s@$T%uZ_%8d_z!n`czh5Qx=NmR;*%OO7;1>|=_Q5pXrdR&}QluobmNrIvW4MdAp*CLd zem|QTpSj7=z8~V;C{LHhVrtws$*O_dv|(~uEQ2yr;MC@2_#%Y3{Bl~|;#@G~o)A6Gow${zEy91@EcCLZ z!{5>f<=2oNpo~3F$#`}l?sfh*sr+ES%GFMUn?3#`q+~e}otpLuBwRsc$u=WV6gwtI zcK1lj^#`lpWXb!V!EKy%GWTr49$acZPvY`*A2ZTineA#25drXZvOo`T9;U(^V+PnT zR^WIB;EV`0gBfanMA$>%zY7d_9>ApDs5;xERws#Jk`w0(Gf?tsD{I6`yPunavBe{=+oY+vGWWK_EfVnfvgFJ*>x;zxld`6zH z%GkZYNElYoP21JSQh2j6e@HoV$Lxkh{pCHMy~AL5S^ofsd&_q{oXUv7 z{{X90Ro&Q$vS)4i++0KmcIoBz#&EY~@bK!LUuVQ-UmFr(E9t&Z9a(v6l?OI)BWG4S z6TcIl?3DlZ-U_sgA+IDv}7f`-wFHpj&*!nb%f(EE!~sZk;t4P z@9$?AI|>L|lS5zWC7u#3UP$Tc5NiX4_l_pdUf_HndW2}sd!K_V&dp9XrN_wMhlUmeUWcG%1il^!ybNWX-2B%jP zWZw;_4rGz=aJ&Bi3)~#-&p*%!k)C_7-9$SbhuIutb?u^xG9E*e-=0GJU(pWr?#Fwu z6Apj+li7KFejyi$_LDp#oxQEJ@HH$m)s}b`9>II)zKx$2Z@UGp)POQAZ|XE@Xk#(5 z`xEfUdvv&a6CY9^Kh5z=zTw$ptS89zmto6MrbhXF@ctQ}a=t~zYJ^yN+yY0Cp`iGW zv1EvPo-Gk;MnbnwwrXiB3CC);=Znsek~rx$sPz& z?bD5?$;YxS!gi#O_{+KeV6Mjvnf6k~_OX`uJedT02^XZl;aEQ!Syil%i4Eo>gHX7KL;WnljQ~v4@e|aU0f`ZV>9RZy7yt~Af6;l>yO;F zqZ8?r@9no1uF0^3HQVr`448Q#?#m&Qd&Bk*KY{8SzeHZfJ;p)!kFV{pKkYKY)%|~| zlw-olWHX3AA>B44-*>u9MtdVJy-V`T)WlL%Z+wODnd->%Mm^q<*Te{-jFZ&Hd+hZ- zxA%x%6Z&0sA#4F=4Q4s)=Ph`=!`K-FXXespSfg8};=tatr?cPo9JeMdVz|VF2{MEd zTbbGSB^#c}UvfB!Lh)~XMks53*e5d@Q}$R%aUGQa^qvTPmj#O;KynLVeYshPBk(+C ze|RJD8tlB5anGUzvwgvngZ}m`uT!Sq_EAjz$MxltB-zZyrbuVuWO+PT_Q#1T_kPj= z>SLb=Pzxoy9^n_p6Q3fbrr|4P+aF#9dz6m`U$#&lk0)<`d;15Z9P9=5Gyec^o3gwo zPy1HnqzM|bPCyOoDEGko6P`~z84Rac`gvcP-^(u-3k#2sA0e*3Lc@ELb?^ZDkFg%K z{469a#sb5`$NOO9@CmllMQ1u-JcgUf>~zt9CDb6j(_0F8=_z?n5ScotbyWMVOTL zX%h7(E9{O*W8*w!o(NY~*@Ns4xIa<{Bz|}pL3)_{TjA}#Fi9sqr1NFj{{VH!bJu`B zC?8gl;kVA)mJgP1x%p%Gtv$<3f1p-QzvqJR`2>B_npfR zeh80CeB(DQx5oL_+gp4szIN+poyp9^pQ6?O0HCwR+YTUXK7AoP9sdAU&9IY`hRGsg zmhbvA{)*deTeMoWE*-merQ5dsw*9qloc{o)GRr^eT>k+13;)CbED!+!00II60s;a8 z0s{d70RaIK03k6!QDJd`k)g4{(eOaw5K!@8AdoQs+5iXv0RRC%5dQ%D=coSw#WI;p zrc)`D%76JxBEbrugvR3j02kv;aBqT+k?i+k%svRrp{I2?P2TQU(*!^Rk zz+(J=nTrd&Nd5;slL#N6!2{oS@mLO@hn^@i?0>m?!{KqLUywLR@KYbJ>d2>uC4RCU zm+bH3`r@Z^p5^;yQ|>sAWNY?gk=z7k{EO=s4Y4bJNB;oD8l8X#m3YrFV*VCF`ItO& zH&e);uwV*`dxW5z;$@9OdLY;51ed6Sk7EAt)OG-`ka8L8nYvqp&mh-5@}ItSfgT@h+!aR3NS0e0`pWn{-XDnk@?DqvbB!m-rUM5rxh{t5 ze?D_epQ)d$XyA5t^N2s|ZQVJti{y=?~CU>nb*#7|TRBFJ4=%fyKOy$i6 z*em+X5jo`e&^gW|)%_9|;c#Nz03MV701;<@{sL};7wNNpuzAhA_5@$CmJN1&9oh%j zA6V2)-;VuLjT~gR&1v*H{o$zdsD0!7;@(sl`*ZusrU5h~XR#6P;5L=>le``V&qTlk z-lv@It1MJ9lr7Nl_xf=vw|!FZC6W6v@I1&LieJpcU9ig={QT=W1Md&`pnrG(jJgTM zEtSM@et+$c5pS#seBpDXZG> zd%~cBRG_gmo8)kBmcsoxQc8ALS z;~`Glj#?ju=R35)dpsS64a$G+hXX0_X;yoaIEMB91W|mqtW#uTZLw7Tkjiixlgq%< zryD~iPIRy2ihgrvBci{J{_$*r)hYbA2`v!dLs?MYX&dEVGZip|=RwG36h;6Esu+_d6l?j2l2e4V>{aqkbZP$(|y3r};4zujC)t{{T1u zdE!+3VGA>-pZm`SAYxaeXDn{%KK zj2OXeqOBf&Vka4=G7d@dGgrd6+@-J+)PoGjWiD@D`u*j52hT6ZI2p6ZztcTYt>@Ws zM2Xz#fAPa_ytzt8`hUFlg@Lo=_?bJm5AZq4 zEmzCV0HudY^}z3#=QKp8k^w~-LX_(@YV{&ml`p@n<`3XP+JM&hKO4%vX8<@44=4K0 z5v!E*<;Ttu_c@Qq>y2O|A!>m^b>iLid}FG#$|6^j_lap=Gxd(4N^E%FF1PoRNg%dB zqZ|Nw(k5;Cy4Tw2OW$`vY$O%d&HO?q@7t^vN)sxAvFrKGvF$`W!(Uh2!np24y#+c) zL(W4Dp6ypwk$d{UsKL>r!OXl;>ijB54=j(u`k$N^vRZS@SL_Th1$>USMSE&^z-nT*vr#3wkG^w&FM%mw;dMq0Dn^^gns9Iaz($;Y z1Fug9oy=qO)sLilQ{FCc7F0HYJ_sLJxC@E9+M+%;CRp9ckH^^OWYt|V|- z51gM8WGen#Yuk@(z@4h*wooRtvKvXWs&}m4lk%krunpB+cyegc)BW#_siDUh0!(p7 z1y_1g)-bI}grwIT*bGbI<_x;69gEkcz6{wRP(<@3N$EB5iPeY#A_pKY=Qh)MbBZi; z5T<~x>0b2T2^0ZQ*N+6?x?7gH!V7tu1M2bYpreg4fIiZvjruxw_WOSgYwtLyLD)q> z>J>HzyyUM3?M@9oo4&GoIj%xe*2fR~GpR8rl#`_DIp{Of#;s^o=VCjc z^Ff*OouKzKZsr~T03m_!#;;6&@U#B_RPm1VB+dnvt)7o~h<%(tJT~5ePO!3C`UrA9 zbiQ?n{`kWDsZWS8&h1l9KfuR^!i-{aJ!Xj4tPA8n=yQS8oGlN%;#VmQ>Buhl>mM_Z z*-D>T&%t#c9Ao~HoS9qO%o}4k$sOSGDA0|gIgfcUTEvH>2Rj~%hwyYO@tZVb{{Z0+ zIWvToppPgbV&LqC1UYxjVb1U>QR3Tb*Ntyl>p0@UU|m18^T#}54=kVpC0cf${JF{x z1ZZ%ZNw;KI*D3s8?L3Sq5Lzu9Yd6sC~2iLNt)XaqzMU?B2qeB2)4WzrxHmM4mCM(P`eJQ|1*;s7sv%-imf zJP3zvr2*6LAX_1AIq_IO;=h z>i7=LSq{@3KKxqfiAS;z#I9D7PfwpZ&YK}?H&e*kE+L0D%!1qRhbSw^Z01R=D%>mbMQlRn4uQKgL8)=M1R+TBcc*sSK z`2f^OCvwc*f=nsl0buTV^vs_#x)aCQOLsB2FmPZ7x`aIA+Bn{uPk#BP&yh&lIv4%^ z+*Sc7kq)6w&i+gm-k}T^i(m&l%;3_ziV*Zr{2A^@1NKfdkKQH^q~Q}!A~$5?DvJBH6qS}Ud&at zL&G5i^@^UG`W|z)dpV{ApOu}Lh*B?u``! z^a1G<2M~e-y%SUv-TR6KlqE$@XB5^J)*=mLi8esG^Ni5&#Ou6n1vZo_GZ45aaijt% zPLzsZL=v`!-EO1~&8%KkLUmMtfZ?qz*j%!cbc_VBH3{flfiQt)i!DK+5&_B8MVc~N zX(@UDGy`|N9EfPqx*L29tB|~l6UN$J81s=g%Ay+aY2WtiIFhX`pei=lVP1Sj2P8CY zrR|nEACwW(Q)gMpG;epe?=)>_MJIs{WFJ^As94s<727vYNXkdO6~?tJgML$mNN4dCt| zU(gzG;ob~C0REVi6WPWCRscU`9XVdm;MDf)JHb)kc8_i=CSnD9>G8Nq*$a63j5ZUC zvhAp-kDw9VSX?ON_x}K)q5vwr7*Wdz`B3Z|ntEZKIXEeJU^gBY5LKx`d^#_Z?(t@B zGHqA1jjQh*n%sYG6kyk1)ubA^B-!Q=IW$f2{^`RfIU-JE}{{NQvymAem` z3FTs*F$fMhwE+ix8hAtOX;2HmT10;ZadTbR$P_Xh;U>sj~MX=lbU0SgZrOk*q z#kdquQ+Cqq#2mJ-f+64lVg*ktOY_wAfp-kuJ~64vpv&_vQtldO<0GEDtZHBaQZQKs zZgkwG?sDM0f?jgG5MolI} z&T*%0AE;jL{{SB5S|)ZH99FI8i0$6+fT@xhN{LQ*<=(CbbmJtFjR<0F4lXeAK*S4n zt>L{h#zW}D@F=mPdjzKjR-^@z%`TGeNn91r**m~pk%{45H32BGy1Tw&*RDxy$nbT*`j zmXAHBMVz-pcgAqwY!{RqDi-rR;F$pmfPtbQNRT|}zk)9=yrQEnr-J1{$yE_1yk7Qb znOs?ZePr%fGp+TqZ9EMPO0C$3d&k2X-Jxx_K)LUFY;xm5$_gMiMRbVZass#?C{Z*L zfzV|$C`nC4769%GVbfN!kp>~(WT`vIP*0@u`v&u`iNzrfLLj_{mEb2hsA4Auj}}+& z1Q&{-b?eov_mtxCpwqKTe=!ecFawY>A9r7J`*3SRr-ShI z=^J0*y954O+yIA3p~3b&4Ze-zQ9V*iA!4T}@aCd3#*|NP{WH!Alz(G4i&l?0IBu7~+$L$-9Va$&*O*$8=kE!y z-y$PV>BVzm*frSfgpJYfAf-cw+&Ix~SrE7^B(4LsD_~ool~I)dCzZosj+@-Ob#p{p zwOPi+HSLJRUBw_R=54MX`oa!cG7TKLu&jpmlRQaQGhA&ynsA8<0T<)X>zk13fyYgr{{WAU zAeCC^O^F3}0T6q^oJA8V1x%_7^W}jeA z96%MPQ>R7)Sc1e@S6gK|IXE$Cf`Wk7gW`R9%kx85AqV~HhL=y*kRx~+I1>zk2bKG}t#aO%_GlX% zp)uRT75@Nye>kUyxPK=m0Hgl@0P^7gmDlbzQ0RO#Qv!%MKe&=w4Uc-nB+)oMa`lgf z9RWY(JYrYMfq9_vHl9V)7ObvVm%YN7%4Kzq0S)trJ9wp5)~*sT{7OHjAqVbw$oCxu zUxOwxb>A5z%iiu&)=~46>l22CWSZZsC?INu)H0eIQDOt-UoJ;`-{7H$)x;qx=}>J4?KFet6^O zSmxA(0CqIW(!k$5D-0R9P(dbzJ5EljCDpi^D((IsC!8X?C2UsTWh;QD-M`fnRgjR_ zDDdk-f#iizy^+-{vO5zDdiqT;NP;h^E3L$ChPBa6ASkfV%vxPPQc2M?)#OdwD?%*@ z(PO*Z~Ak;K_XeYyide*p3L)KHL@`4|^?;&2o%2uf&d+zTVUjVc=JaN}p zql6_boM;^gbJlNzP9bL*Wq~O5=Ky;^guf+BohT=onsptNDXgX`c3eos^LU%*hGH(Z zb1+lmd}2^-Z39LjU;wN*aaWUtbA!xzf4co&HyrABN)O@qa7Wl3`&Tc=I3hMB%6Wve z_%$p)StJ$(AX;hc}!_O zXKv)eF$b}&)S4n(@(79OZ+Qyx1kal2m_g!%g8p#$)MW+!KuiAs%rRJ{0WCT}J~0I} z23RV2U^Ie}a;ULH5f+9NLh{SO>pXDt;~QUYy zsViaX@9zx@#|A*?R-0Slsph|DRYs1VZ=kF$x8_+pKq@%-96Ct&RPg-GK;Jm(bn!y#<<~v)<;D~m=10yhApZd2cozoi4QyZI zAVCR&LoE}Oka$h+wEMvK0fj5FtIBA*ZO*26rNi)54IHK}FX^LgQ3$Fc@pXqu0u*Y) z$i$#_YfGq&%Y`_j+~vyLnRBvC_%0*A{?JST+3CtSbRu+z_gNFxy7;v=j#kj^7xXjqB~`HLWMF$gK6 zP!L}xQ0Pr7!KS%}wY|(7wFKplmsjw3927!D5SK`hI&DVxnwp7p1Qa*qI@D~+MOA!Ch;0O}-NylIAOJdI?hliVIp@yLNkD39>Ap30MHxiJBDZnMqv5T*_ccJKsxJjs zN;7)IMmK=BlhIV(H+6A<7!QChojMi137!wRb={}5X*Khsjm}!`2zF_a=4dv&odpnU z#&g_=H$l80K0F&TTo?yP31lynl%4FGH2L|dy-)W4S)^)jb`&Z|{0 zq*Bv|oJ1Y~oduy@J8jCr8yQjOlzb7H6Bvz z){d@l%V1Wrg?#YeZnIrQ5-?{GfZLJIDv5YCMeC2LAxXS&zZfSmR5;^ye;-;o=(D(MjIhNQgQ8i#b=k2}07jjP3S& zpE=pP$RyR(CzR&b7q!7Yc}~DlIH4Po&1JLlw9%@$B<6}T- za}d1Z1jNx1(vpo0uFWk;=(xGHNf11RIW!m0nvHA5v6GWq`7o>)OT?P+-sa`yCLw-U^dx|ar;}y(kGe3Tx}~sncQyFq83Tgag3(T%RIjMLlULemPedU@6Y zNi=aOR+CFwZr%};088RKHcnh4?VCpjjndQ{wq7)GiupP<1x`{RY}rpcN}|-@I4R@B zRnqR3{YVWa$7&;TNuCB`@E?7;^-c@9rKUgCe$AgNN-c#DUlSh6L9kr=KMLSb(SGkRGVv) z3;=5KFy(dZ{dmeZ3aCW@hb;-@@q|suu%jp%00tHxRJOrpB`{qfD#5g`zMH_9&VY(| zbdg@6^kn5K(Nb$uSdXT1&^P$Sv?%R31yxg*g7tyK;kZES?GL;V3WR81^ZvsO$~8@V z{I8vL#lfNUHqdv1;E#Aa0!E*HH->bM9Lrbpk#Pedr}B0?6z>>KfiFP^(f;cjE)*dF zR_GPG;5)b~*|7jHE|EE%Den&*FAGR~Gvav9H9^7?xkRRT@LeKGXsB}xN>1$w1+uIG z1+R5A=_rVw2B($r{{R&dLi<`w>`GG!9&>i z4l$SG93k4D)8{E7Z3zh~q%{~E0c!*UDhiuc2PmN?OPr!$MPUU6-9gimxdO-*%5)8`nA*_e zfsXV@@;i9^n-+q^X*~!PXe#e2V8eG4)#Xb#ts>K~Kuxu%@Iv|L8bInuRRpLK2_?ZE zqQFrK0i+rta^jSJbU7Zb$i_SBZHoa%LCzm#$+$l12IePKEoCM)(7?fT@Y=dE- z2P`i%akWh-g+-+enZWa?kPt=e>Zqo$i)_tB5YSM!u-M|&Hn7y$LeajyCIvVJRw`aR zX#6f}e9vCj@(PBTiR1-RN95Hmqn>MJ1d+3QKv`( za0}Vnbz=?20mY0rHuB%IESE+qfmP8OMX9dcVT&z9$b-pGHeWO_kdtKyim}r{z;%&d zTx$coBB}4SV|kRQD`G7+b-^`~9>_$1C@s2e`w%QEi$EB#@k_?_#wz|{GqN0QUiVCx z@~AZeilCdD#u`{!hX`%ulaE_hNZQzk#k;;kgIlyV6Z&tiA%)pd1BB;yg%7^7+ZiKF z;IhX%DeAwfp`cs0PWj$w*Ly5L+HT>q%hwigP5%IvJ>6}1PF79vz2Kuwi9Mme zKa8YaG1bMYAYW;Ei*&Im(SU(Rr@V(SndS-Q{{T3oMW~nH{{X(`N#fr1#hh`E?QPjS zPev&RjtA^MF<{Vrk4*9ppk`ir909%hy(!e(f2X7v7M$n+Yj#bbNo*Ur7SJbNkN_Gj zC$3L`aIOwE3oz6QMAE&6bi0a*k@MzqtK>pCJ$>qkP-h<3}D57;-a zHl12son*FRB0Pyib;)(4-YTYtRY8pWH95|7T#MR>jkXDubDz~5&_jn(}8*q zR_;Ktic)f+X2(!ByfaMG)j%8wa3HWIjPOE4gR#2X4e|;%p(_P>g*n#i&w~quw6++4 z2E4HMz2l31>qteQOC!PFQs0x{oFdgPGHtrWzL`L+81fx{Gp{fbiWeR?n>|64``L;- zgqGom!9fH#{SIZI%A)NdfZv?gVUNS2_^NB2tIl`(R-(l56(TS z1DoS;4*AY$svC}$|)N43$ME6C${ZuABaKrHS?tJT0RGVg_3bFve*^_}}^1qz@gCL&QuHJ{&^`-Rs)PUyx$TU1%W^28+vF>~16s`eF3 zIb~#-hzrJsk=(m$8+cxrLh6gn?bL0c<2y1?Fo6NBQV@5t!f@GNE9lXEqlQ(BLI~-> zyU8|igB$2@{@AMa@GB2X?~OQRwl;%m+`cKV7}r=OPp|~O&3x}Qd!f8&f+|7Qu5MS7 zHYz5pgGo5C8j8Bz(v5^&>Ld(?v>G~WgK5-!3PuZ>WRip|4>5ah3?dIscLz;NC>+_H z&{`?l1^$Q?(PBAzR_STfHau!@2%1_Ep)T5Qja}Ip!@rQyp$lA$b)?rg*#u903MV5z z8|j3-f*Pbq9jr%GeCssjS3#nCAjoGj0B}Jaw{b1m)G@iA{2_Bs&l|)Y42TbaSAhG? zI6W4O+EEn)NxvAFd;$p(C=c>?yj1HFX$&Xc=iY1+bWoJ-;?=tZjdx9mMJC5p53|lF zgalMk8VbDdFL@q}0MU+?xJ*|MM}(AgBGfq6CA5%{V`iZ1&UCQS$!I?3Tk(g9EmAtr z^M4-Pm~pI%?;8|ega8YnlY+a+hJnVYFsBn++xI<2wD00vbGTJ|J3qG@Y6Xw2QTx}% z4YVze#TSaJqQVu#M_5gs&!d;n;TFR8t<$r|c(DYs@7vx5g`&7m87c! zd)t55AO&dM9hXmJ%2<1Y{mR6dHB4Vj-ixbCY2j6FQ9^ zgb^#8K(>XplTB4`uJIA&C2qP-A8yl}ov)ApRgLEV087?FLWi3I2{@Q`9m$65fzsyy z&Q-kg&an(EZd-u8CAabIz*?DNFAyHAeEP2W25iWL&@%Q7n4>2%L(8M@2WJ7LJ7_yd ziDSMAh6{Geetktb!1|6)DSq!bD7f9SPa2psKb4 zXkDfviQw#j`_o89VlreSqJs#m*`>6=PTOKyQ=!!9ik8We>?w+YW|UAnCgXHyxCWny zbJ8g3tzz*Oqys@mXKe#qVMh@p)^>JHjr#Lk+PKBlnlFNk^UEvu6nFtyEU-CaRl%jT z6USf_60?VMM952H+2sdj_0f~U4V5Eqgeg4Xs|dq!ja$I^be|2AkTL8?wBIK~_V5<1 zt$1m>`N9Dt$h|tzG@7b!IsX9q1ONgH&i;6Vlpg}NqJ5Ry*?qYi)drAChi4OIyz!j8 zur?eR=m+lzA04=M-joQKb1X|rmqnoye?Bpj-N^J03FqEkBc4>v0q;5PXoxF)NR;w) z$%h;HRYhJ}Pa%ttk!{d_U%a4LZNUEh;9(_!gHG)Je{4$0VrYtwJBqIDILPc8GEY&!Ym>(ePCR(LRhf z{{RbXM@~3{^8UG{zb!(2C)vmqa=NYH8vN>G2LQj!3{@^1+QMx>beCDow|F5eiu#%Y zITw3ir##%XTgq{52hLOI?j0_HAh)9mu4J0jAEbH2K^{$&17oyJ^S>*JTlWf(H?dGz zW5ux{tmkeO3wEHWk2*#p(G>u%6`x~HPpcmUK~wdK1Qny5Jdi1~e#139S62Yn1KKcC z$pvPNdO>F-zh_x##8XA${{W(`5t;hMgK(i}eg^Qt(`uR};vWGz9q~Xi@``t8PZyeC z$XI|c%r6b9!=2cbEp59HY$S#{ zZqkKlkpvT4dLqw712%=Qu9f3qWMCjfhPtsyt&w<#LzIbKP9pg1+)hn%S}0TLF~tFX{F9uh$lE5MH2QQhNt1l$NH z5yOK)`K_wOaHthcu8MVk3Stj3AQ9DI#NyyWTm@89MvBz(WHkQ(*Pq>ULyTf7f0h&x zF&C7YW|H4An?`ieE-8fSk0zR9r)N#_6yW8qcIc0u+_v`l@ypINvJ?ryvyyQ7z;5$E zD${ZINCrL8=mHUk!;{Ww-{8E8Y@&HQjB%F|i5RDf^UI?8@WM zaVgM`iFFTDedH{FguemSR7C(9djV(85>Tkz*0cVydgA!T>Y8mGFYn$qFpJU_FUywx zfnAra&a3p|@g%-$QR^kz!yut5tL0d0cu4>azcD}Fa8IgHV$Sp?S0^K zuV*9IKtb4ll4poipJa4h-Ip08EMW5dE}H6|dWbc6%;ZyR{eD9RBv1R(uWn-OZW5;4<9UDNsA zZvf5NB7xAR{thtog_hyi(4^}^ZDMN*c@ZaRs*ii$m6jPI2o0INQKyEmTflM52?Br% z)S13=GgRo%D7E7^ij*1|R~8gaG~1KsZE=Z3M1qA@oeyH}9aUIJ1vg#ugdJj$3%5%k ze-1IvOD#4=TcQC&l?N6?5UsI5+d;o9_KQ-CVnU>~7WV5^h@e0;6`=OCJ$)z}czdKXd#@W1#S!4qg1pUgTobSy7*MfjHTmx~ zao2-_9-R2i;qnj2wR(z^{HR}M|VW5fz+S2aCFo~I`J|@=k zO+j_MXHKa02+^jc)*{Cm2V-IGFB1b`)+ zoBG7jcDhO@UQvPqkG&c(!AneGBg3X*`yD=C_-*e9plws+p2G^!2vtGq`OW&7xIA^= z@{=@oZo{SvjUdWl9;0e{SBt@|^dE?2e2MaT$%)zX9!J3keqr8psgr8uZM8Ri_^N0g z1bv_+6YqKWcmyWsn{6pA>>SugxjYj|dE(-B3*~qN2&v;{_(!ax)P+aBj6kA0Mo^TR z;*welK0`smuGcLa^k#>N-N&LoLsFngBTe!s-zG$Y0*h(bK?G(UEOe8wZ?d{u3+n=S zU@A%}21@gWwKgR4a)?6G$L*04V0YjtA>R`Mp#XwAYieEWYBO#Ijva}`Q%o>AJqJZv z`Bi!Ijhq3x07VpsZ91FEW84pt=nWL!t=zX!@wVUtbJ$;RPrF1c(r{_pH+*H_-&Vn%zKcn})bxJ=~_GNloIAV4Dz> z6^QN8;w+Cg#wZ1WqCA{(n@STub5-HkL%QlfzZDb_JP!-mQFOqmUF-l-f|<4P-B`rH zP4Km&O9D4(&NbRb^NZV23Bm(5n24d9B|?Y?NJ6`6;`7GV8bVBBF8=`UUyel%g$_b* zW;oyzNGev=rwZ_cpuk$z;$FwYett86t5v-fv$o)AzH>vA1>TU31+6{uZ!W+jaAOZ} z=6<%~{oea1C`~D+(ez*x2l9b#gF~H3xtx{&i5*X8pLhbiKuGE2A8~<-NQ#sVb?_*A zzOrVOP>llAdRkp2Yln5Ywy6QilGU;ysn%{c&(yg>93k)6)SoUz{y0d zTgcLbfP8VZ2!KesM5BwT2A8ab6F|YL_TwQ0(8@@~KLB|_#xnw=RTi435i3Zwq!Q|) z3d2qj6_@1}Y`kGzP&z)3c?wbsK?v`do`B7X14s?Bwt`N^$#KC($Vh=eQm-g>7bXJ0 zC@Ti+I&`q@$DnN-mMGZ>J9GiQaoP;{kOLhj0xBICg6iM{5I6u^@?jv=ImqgF$g`qy zu5iuvykJ779sBjTo05c`-^Uap4F%x{==1`D>FSbPI#K=)#&GEX%A3upRU!vPLVj0r0ZL~eg#`f*;kP#873>a_1o)NKxi z7Rl#Mnr*U7Oob-yY71#iual1S+>ucPZm!+xo99?NK*FoOGywGYGpMlbX(Adv{(LwD z5*FKeBgIWS-OK7kO_P7&ANOdUu}A{l8&ugexB$aeicP$SZx&7_9o&gqG~w&>dvddQ zloOHcd_1@W1QV=M?C4EWE)#03W`z=f$rcfmov9ZMsYQtu4fh-n;;0Jg(0xzM- z7qP{`ETW-8M7YY53&^N2^V?DJ&Qg6wlHsB0kFR+|EmFbVG(zruT!@OL5UX3$e@clRA&Jol!25ymm51AB{R|ks z8v{XFTfzSTU-0(L;Z7ju0Te!p{jMeD%3L)kg)r*jN8|qhxj~Z&uz}(6HVxl_=+0tQ zjHq`XDze)3aiWyk)Bs1mJ2lyk)q}miT?Z!*2489zE_2lMDf6Yn@-WpE1)w4@FV-N1 z6_m$8T_qv7_klz++kXc_la$zI6$lgn7?CYtr*j%OL?pCcU7!(8_{UTg;f#xRo-&X83bQS;U(8dG%FVaqtD7BGN@G zZ4RANywa6}%cSw&P2Mmmnsmpo zi{EpRsf~!TF^ZZ}#FuL5tgzY&D|Huxm}dq!Qiy20kk{S>(MTnrp#?d6#}L}6zXrjM zx8UH;gcUh$pP7n_iU4Xp7f9{tInhqw>QzwbJ@wPhCrL7haSmXqPcBfQ(v@D)wzbe> zDWZqK{?J4Db{bQ+)UfJTp=Z}oz5lXyWeiQM7U&4w%$Mc(Z z!~|@y;olfx`NZRC{IB@IEHqD783%WG*bniQMijUFFo#Ga;$^y~igW(}ZvtXq3O%%G z_I@*AX@)T1nYf0Q5VHD%?st%QluG!IUV2#Z8-dAEmL7^o8mB$889}ej#fXC0ij5XuL`^0IQARc45}??+sUAMG-<4u zdWZ!b4bP0`Y3`KL7&3)+UbI}GfH%$lnwgeJ9BO00!;!FtWR%27nz`RWofaYp|m&U5$Bltd8QrKqwXNw*L2zeGFwk>A@!MT>{5#44TG?yzZWsM=((V#R(eG>c z{5t*eH6IS%f1I(lXn1FzImQrT$XUpF!CP2|!0S14c$GGBm3=wka*!v%8E^wca*h+@ z`^1UpwOE78XTtr&U8}-?oQRiwXH$E`%^u9wNni5WoKItZKg*lu0R7=$02&Qt`H$oN zA3O>|@#3$3Gt34@bU*Om-S^Xgrfr72!Dd27iyQU!K_4k;UQL@=rmpp8P>CU=LICk+ z?3WZ`(Km^9(!8#hy(m2cgP8L>QBOvk5l6{~AP^#LKbTajP+}|{Hh^=`(+r*G%r*&9 zSf=TB4*>H*WZ)`9Ulp!Nj_0uhjm*5SSs|v9(moGf$E}6|2I&(0EZZ7q3>RQBMX1!N zQlx^d@k=AFy=O~Qou$!?Q&Ho>08nZ!?k|oPlms*<2W?J~defa6B0~&$06BA2NhD}n zLx5SiZ!F!n9O7#zgd=&K8AgOQDMbrIU{!qzNeyk3aIY^sM{AZZ5LP~bIaH>$1fwoS zYv()QQ8-F;qF~dY>IFnwG_QkcgdGB}peQS>7Aj+;7zc3K>U~VB5S69UP6&0J;t2!m zToY!MPO=W=D+B;RcLnx5+z#U9wvD{Y}IAauFvMo{Dz=07IH7_zI4w0w5bN z18#T(Kq0r4G)MVpfS?gA3)oQ7Y#uNY;vFUv#OLMe236Ra7&2So*~qh|Pyq4X9{yXM zmE*>65WMmK06_lUu*{B#QmO$1T7ELhq%S}p)-5;fe2pg0SR!7SfdUK6Pr26wVSeSiNDY&& z;OpL5$M5c2d7a>h>jQJ&$J5qss3XGc{PU3;#RB*yxGnP2pRAMT49eue6cLPh4DBz$ zlGb!{MT<#B4<>_Dc5#xmKx&i#IjZ4?=)C8UkTkruMkCLN4|65$HTJjse$U*0;PtC5C9q8a4ANqtqRntnl+{8I=Bv{ z6%ksB8s&JV3F8!1?~ReeCqIm8jS(utn-PlX09Vl2CZaE(yS`)YnPSHz(F@^gn@@`5 zKI@K6APLEe-B(N?zO=j#BrfY1l)J{{;LxLWu%g4X^SmvEB7}kA-MBMqLbYgXGPLVs zkZES;L$u(6Rb9)QT*mpK2pS@k7R_U%?D~WUWuR-g!;T|Pk<+J<=iiKxb4s9~D9D$_ zo$G340CYgf7C|@5Jk_h9!iTmU1&a0(^pZwN1F+C}02GB7gGH6n4}D0RX!|<3O@wNT zgg3zh#F;n=cAB!^2iHBBY?%vLp(q|l9(D&bv!!@`dmo89(fF zXeg(~tkvU;p$uATUrW)>(xk-%Lx+m&h59-q!B&w-2`GpTrbe%NNSYPSxk?JlmjI)Qi#Lx-!uELj&Eo)e z>H+2P&(pJY0aCm-u~?G!YrCzX01+=bw1OI%8f^~%D7)*T_|#L@7IVqs5k%*HsrbV! z+$bszPSw{VGBg4i)yqws_;~tETlyj-4~PPH3&g}XW0|i(=)YLd-ATZ5^RoW{A6X7i z>A>z4#A7bGxPx*6`LqwGA1iZ52-dQ}1;K;9FFbTlbyDL)8G1|%iArr@B{{Xf*4^EE()ZV%4A3)|AelVj_y$3wd z*`wflZc2u*DiW|>3&;9unU1DBQjR0pI%k_s)m)+%i-qRrM*jR_tv1A1AOrH_IR>WD z-n|L;>jpH}6bp9q4m-t7$-Igz)#7DZcMI6&+CTecqV_&jf8p<&kbF1ynu3wNhwzDt zdzqG`cxOufe@vB@4ftHp82S`p1z@YedUC@YM)~HZ8mq~v0kmUDK%m>I0nm##qUPyb z?`}porXt4KkpmHx=ZFN`py$RLqY_kxFCb`|g5h?7veS2Iz|GnwvB$ua_C>kC-_8Z= z>?k6Y4xCqt*8v^TblECsR4BGG;6Jp03bYLxsZtqbU`J&a;8dNY%{JnO-6SrF)~CFg zOS%AhX;d`dxH!H?1#U>lP*5XyVTYJ3fZ;S{@dA6!PLc(McuhtSUdCXw$c9lS#pY3MJb;COP#SBeFiv)+F3H&meX_#mNq8d2l7RX9Vj%M3oS{2#Wi`yqoLJT;2LN;eKHUO&GWZUZy zoB|Oh1DA0Iq#MCvuerf$0k0;9eC#RO1kwO#1bUTUHODY2(WDoA9ET~!E5D*BPX|Vi z=Qi@uGOD;=J_oV#`|t6Ht5QcLR<^9;45cTsT?y&i*o9C=-xUuMzJR)|XPrQkTKok;?v+ zSEPS$&XSKor^5!Lv{{Sd6JA*GJObheboV_8zoK6_>mgW@&i)!Q`?@2D5PBV-gT@%? zIT+WahsN9``g#Pf^O|1GUwI8&eg&BH)0${jv{Dg*RlSxXEo@kJ)lGX`!x*+Y0Dw*3h^P~4 zgMGwoIv^39yh3w{KPrJFnyRNmTTQuWM)nmGM&~d6W~{Iq`9SJ@3EnV3Xq;gY00dFX ztYI{_2aq~VbNu5`Js=B13mt3C^@`_4rPquFHCyYF=9w#K0@R7K!Bn}j=&_?yGU=(L z9FgLHQY`K+e04d`9#tUPEpMem(zzBa`%5(J5?e}~mUMaeD5q+-Z8=?p0OSs0l&aNV*&qL+nw^Vag#j4I3KYJ@B}`~_Scf~}g}=qpijhI1;9NC1%9ava)bw;)vY zjZZH(Vcv5#6d2HgCEs+HQ6!cqGN2?9QoN@>DCbloE99z=094wUJp1ZDAQ%;^P$U`F z?3xQ(YJkmxW!@OwR7BoUA8O#4s&-{k5MEGG<9>124I}*Em0U*~{{VTo8;6NV@9RPN zQ5=hegyK@k#H-hCJrO38U1{CAdYQ zcVX5B$E6)rDzlLjzZw-G2|?MzrtO^u_jWk;qF5oY-Hz<*D*{bUaUnbuXK|jpzzG;A zaeCzZOgaHMQ*{HzxyK+XsHl&8>w@Ln`jH`Edtg0tH8Gr?8U*jX`J2Fqq=Izs092=2 zX7oouOJtf@MX}=^i_|eDJZuwy_*@k_8!GN15mi8MhXgRZjZ}gPxvnxyJR8qzt$5`AJP1NhG~r*QyaujAhHoC?2sc1J|$n$lATiCpfP z{CCOLBwcREh98$u6F`TQ6_FMBKvEqR~oRc3+!zfK2^({bx6HHdm`&M9+MZ4AI~w^1D05m0x|~j3tVIcE;F2R+FT;$s z6wCycD1x^HoGHaH*Y#@oYFh0Ms#`}jD#C-NjYjYc9BhnRG4`^yfT&|(BYc5f0Bx2w zYAcaj?jx|MJ~vP`bDDx8a4n{I?}Mh-pEEU5W`(D_txsCeIK=9dzU}c}kA#q^-d!C_ z!Wz4{sIPZSDt!L{FH9K-;L{1Wjqd=jZGx?L)9~*R7NMnD#cXx(cZn^afZonG0ll5O zAC~0_G$i9k>+2{K00J6NydWC)-kh8(xMbYnz6o+iDnnu=7;cT!2=kM?st!sFAulPZ zy|4rv71RRwASbfy;72gA>=Sazdrr99tWt-848QYE}z zlOGvEMWhYpcGN3!6h@d#N8he>m$Z%HIVuRi9kX~MpeWe{)zt=}=UhZ!I&d%%JK~dz zhBbnl*aOKLcgwRB{t&hYQA+qjv^R(>JrP)p`>1sT(S!&l-fHbBof`P zj=n-Us)$6k?!takshi%y?OG?vtW?k(@sM>lf@B-))&Bs$#m#~p0LPbNs`~h3&xoA@ z0?q+y^E)EYTs0vicWDl_Ihg%^pA4LQE>T-Z1fC@BoSr#YsFoy@l=7k6XvfV6o&Yrf z)J52+3qay96^#O&5NiEn+mR0$-?rmHMNl*m^{ziLFxn~usN{4C+Pcxavd=uT^Rnj| zfL1snJJLD2t{i#=^T2k05CD^Lqqg{-yYq&^SA?J7uum9^G?}WQ>6?1+y3Wu}01==k z)vwMg$ml~lQoNRmdvQx)j0YVMdTx%Kq)b~1L`M9KuLWFzk`ls=qS{IAzEW?*Z$q>| zqr2J1Y%FEwfenHxA>q7KhVpXKMK+sst5b%cM3zJj{wXH*R1ah)wzWhE{{UEtf@614 zBsflTJz5QQqkpce)(Aw-QqA^D_*bm%uY=gXmFLbQ22$R^qhQiEi>Gx@22>L-v9&=YzyhS~!gunap2RH&=BUYR*a zB^U}7hMr~^0m>$~u|nSh12*7A`vtiGu8pYyt94y(m71Ux6>PQ2?Z>+=p*uo6HjRg2 z*ANGECQ8~(rtd~cLn*B0@0$*AHwimM5kQXr0N!vF3Z~UL4&Gc-5zlGfItigEf!Hnh zk0<;+i_uPMaVI=hc~A5E$_d+ujt2fv{u~#KB2K5@7-V9j)>@KjO@UsFU!Hdtwcxmq zTbO;w@hhg4wp*^tl zI?gE|Nkrvu4>Z3xmT$agUZy%u06phCF!MlIoW^ollg%Z9INa!fPLq0uI0y+#O6cT( zO>N^6DGEI)E~6UX9OL#VIT}zc8wbf8mxEPJm68adwWNof(OH443sMMyZEWSkoiC8# zfFcg!kZ8E!TaMMYUU>Xx5)c=Ih$^6+OUeYC)1DyuE6r~!(T;`Cngx_T6Y-Kmg#k%M zxbKI~Za^*x4}G`8{&SIn8jZ&K_--D7MJgt>!HgO3D)&)W-d&A?z&(PjfyH_=z*1vf zx>A>Gx1~cQ5Q^`v&B)zh*O-D?z%JfU;AN?iOi>WJ3A?&&YUQW|bQg_+yc&CW zAq)#9XnhhXw<&o@3V_BE!aFCT%Q>SGQwEk26beKbI!u5$A;1!_eFA zOL7cl5wzkg0yUPvwg*p1+c(6n<^uz8BT7VSaQ?ZGfk5tZd8KuxIP(N{+3<6_{CUO_ z3b!v#%i{_a(L+pG}80wrT_7~)!}xnr{2n;z1DA*fI&rRtGJ_^?q*}biN!%0f7TRH0<=&_S z6^UHtyUs{3BW~3O#Bn29mM4O#mqp&)xdCigv!DnEpbWJUpN~JcyrPU2;Z?Tc`0R?ftHhv&t>s1PQF2GwsPVZqSC zf)Gg=NJ1nI{bhx>7yM4l6})ugNC%D^K**D_TNEmZ?uK`waE-;&t9ceV}^YM}~MWLUZFGN+>kntvSc*~G<6B0&c#a5wsDK5^ZVh?JV z=+sGHXSP-cuScvFJfQ^dIOlzi%^IN@%>#O4X}Oa{^ni&tUUvBlGl>GGh=81l<+$V3 z+;vowQ_F7P8_kxWTa^=pQfq0W&OF$vp%<5ASB`xvk(nse9!Uu{vsh!k-r*QNy!pv2 zRdbSQU6WJg>46H@396m1wZ)6DV8Vbt0L|EI9zaG0n(_lgG;@tegItc+&c6%iG+qHE zkmV8{vsd>m)7SghV7pciH7AF6Nf`PV+3{}x150VxZ=Xew16m%P+Q=mDc!(Pz8*-rN zMC-GyGN2k^oU@>vToi8iLJ4J`0`->!5T^N6RcgHcUO_S$$ON-m*Mk@m4LOqCJ=Nci zx0`ekv$H|#`k5PikEB*P(IlK+G7Lc?n-vM?k6zs6#2Z|p;E*Y;U%VQM^Q;DI2`%#C zs3248V1-KwLjr9@%t>XU@(KWVz&UGt3Sl|ov)7!*=Pkdl!1gp35ZR(y%WH`iFq$F;Ncm>wA)|fjZlJuK? z90o}&-5#P3MkvD8k+=v(<0*7?MaLZ zs}W>*UPa(99p}8v5XI7rN^|F&Ju|rS74#tZOnm!F>%ep#JKig9JM)~~Ao=4SWeHP2 z@*X_(b-9u%XoIY+fNC>Z?_8w^X(-s*@Imrw$0H4bk!VQGaMFxhqOp)R^RMD<>^H%P z7~RALht12{f9urX|A#4W1YBoBF|z?n!-oNAD#R#==zR z+mA`S+q*}Eb+>;wE1)HeP!9qY!MoXkZ-hewC7~|+^?^ehwwl;jiwc6bc*CYm*x=nD z9AD1ye<-L$d;UKc9MH?u2o**sL?cZ#t`w&U)4dtI-YRl4mNI2CIFp4 zV!!mD@rX2ldKZ8187KgcdT4?kjY#VRj=3a>z(l#2-bIrL0vQv@*}8Xv8s`Q4a$b3p zo7s=pK%#m}y~64@eWrrAQ18$jQ`Ql(GZhI~`$x$0g~U0B2d(^MU;~kWw6BU&zc_O? z$dObyNFF-YBn9N1rko8OL)`5+axhp(jW+kh_l#7KkfC-l3u6?TqlEyc3ZY+-G)dzT zkV>P=i0!@Db*|8j6_FNbI8TtcON!~* z4EQSb4=6wD%`RH@H}4F87)KxQy{SKs@|nErHNuSce%w2;%Pju@OYbDkpYw{wPG+t? z9#RmFLiiI4-gt$9UMB-zC+)<2(5Ee+Ww-8ioY>?N=q;gLODBvqN@hz7<3K(>vgzlr z+Ufb9GZLdm1`?%*9&sjD=%KcPT_e43^0Lm20)ZX;p3_-VCZGTaL;zTb!ADthvJ_^7 zqzSwt-di7uF3|#A@y`8saPZiqDNCVYENGNrTu2deo4|pN&2_tvOHz|%7Mrgi8?n0M zR^Ql_3!_y6*@F-{JGZK?{TesWV8`IL=K(c1w~cXWNT3`|hrc%;8%QvxKYm-IidZEx zTfKjbnJKK))Yk(rcuBsur?kpa?|kAg7hL&$(&|_6nb7*uWZ=$ZB$ff zf~_QYUu`MPPe)K#ATsmfLwUdyfDtrTYVA=;;94xzFz`_%M_PUXlI55*9&n}6a@<2U1T{p5UaOpr0bJrunam*Xb{dgCweGzEA_^7uA9J=EFTRQ zhXojsg&j2QG*7+b<>{<~fw8lvb`=@YW*z85O|nxa)XQ9n>uyL3r%|@r%~NIjKrJX8 za1*p~VK}+~+U)_5iPp+FL?k*C(j{KV4p#L85Gj3?ISDsZUkqvXaGsp24zQ3uz!{|4 z-G~KCr$Q2WGTkM2h;u}axn?|mOXE#`^J_r``!G#12krj<0O5@`vGji_i)j^l{;b#vjruiH0eiO015uzrl?oH!W}5=PBZl(C)9oE^E>%PO~g8?Nt>enu%dKddReOzC+(u^{OmoaH6%l{)-i##MoYh=LLXfO2nF z6ENYSI?$VspNpKpB}MRDxjtRKa^WwG5Jfp_gz)2sj!;)3DeKSHC^t-yCi#yXYvkP& z7%&NCIn~fQ!~X!@^>;LAx^-HVjet?JktH;DrI_V91iS-F&;TB|W-5y+sj}VQCm-iD zMd}ioivc+C&phEpdFXmby07m5!@~vl?PxtitwZZ0i=h);8#0(G`66#l8whxzb7qaa zmxluJz!0X@b+|N`{F)l<|F$(HxI^G;0V3Gn^w{y?OgB^9)4FMAC ziF>7lZV?|Yq9>)7{{WNNI<_#-7LtIok=-vYMMCu@D5nEvuCDM9LX-j`KcChWSN{MY zH~1aj1AvK>bN*pIvJs!xL8v|le+{=cWCl~hC9s;bCKgekN5BJS$C-d)QRm8O;Z^l1 zoK%ug_MUNDNr6e=ljZ*0VQenfKF#e9^u(@}z#Oi);Q0B*1SpN0$*_!%WKHJkf+L-E zhd|pqKfl9-8pk8R7Ay{K+vhp6kZho5gr$;}ceepF@KGY@AS9ye0mOC^$b}#PJ5dRn zrSqEm=b zoSNenvaS)Lc0Jj|%MKedbEgBnkA|3L_K@GaU7Kg`U*Z1%4fiMKWY>Rg1M`WK$h^hP z*T8uq{{R?aJI~7h0D1fw&k>dp$pB!h9snEVPOd&&#Mg5gBEeP7G3V>dgbEX!~MyiTIO@!f`E=|0}f)pJT2A$kRG?d8}A2bhQJHos)=&0M8#F{x$lj-TGLYxG6b|hUR=s$txMPEd}9?l2zBnwo53*>0^WDe9x$ByOXTs^r)=kX$J@!g z)2@?L>EBsAgf1Cl<7#|eIWjFmt3g-I>$JGrd zVvxkXOXOTO)h?1^tFfRLkk%X46}kdYtOy5|H?V+RNS4B>YJ0ie+9*(!R9c(n&y8V# zm1tIqF;Yg#sym11ngx;wJ*{tepWhAq-UxuzhqD`71 zHXZDPYpW1_JZhf_;K--kf|Ol=RY!b#y2uB!=7Cx$HrqE$N{bkQs@-P_qkZ8U7HKp^x0|J+ z1azkdqgwgS2z?~9Zn-&np6N}Uq&E?V9SR;yN!`wj3VpZrmnj>$6tve}V>P1f7OMh1 zp2+X4qFV{ELeau(&soI@(kC3Ud3~jEUB?GSU(4EqI4~ z3DI*85r287g~S7*_;2d~44_mkZjh(o?f(FW;=iO!wSt)Bo=!y{SsKd#>09J{v$!Rm zQE*K6{FnQ|PD2?VIeVw#5)i+@jW^sc02i6K?*pV@p~CP}l)Ya#l(c*sBCKBc@DC;*14KF&w*qhA`M5J? z8c`&6WH|`^M-oxV&zMymR>@DIB7nKWo~Z&z6IeJ+nP*xMbXAv79T@JWG(CbM0!olC zXe3&fL^i-%O{L~(G&YZsa1aoKy>)S4x}YG^+=|0clg4nzRh61+ut@nznv&Vr0CExt zNw1!ptVK{Q#D^Pim||S89k?dFK+(Ut8i^8v6KY<&b&OEmFba}zjpJ_N-X|u_3xp<) zoVFJ53Iq^JqNq&(ou8r9HX21W|)t1s;R|vYOF(aI#fQPNEfv0rHwQ4`{?H zw2xp5;vKj}mJ-0V?NVyr8C8qLq&OSA$9bhNr$J_ttVWz#^0-rX%R2!VW9Rb@@!VYm zO$L#VANRr}hWX)r_?KSt8|$UvC`a>yoUY|T`J7;XR*-E|#|UebM--Eo32!2#<8b)R zlBuDT7KJ;1ub99N14LJ6KkvLcoauzFufKk=Tgo^;4ina}TRK>{NNty4u$eZp&Q}#R z&cV(dmn$I^5U_Ua#LCjn{iOc@7!J0$sTw%K0iQQgWtjrM+c>mxU^sLFpF4AkHIN8{ zfF{QQ#uaeE43)}&fLE_;<2oN7{4#Rgche!JU(SE{PZ_l|+b=8n&i6i0Ptar_*Wwg@ zlMi>M^ZmkO?WB(#e^~>0ryg=?o9CF%F}cXI27$0X=ktIy3OA=j`%KmZ^&i*~8=De_ zH9@)LL+d#gu@jV|lD>B@GZ5~O=-<4F2!u+BW!{$w@>0=)n&cVJI8+Wn4R@(3J38df zPJE)kH8zFTnRhfULb*!`ARZc>x^z*2N+OafYIbPx42T%uAcsgJcd?q%6qaa;!txD5 z-RR^qYC!-IL8UP%)4T-J$*CknNTMsC2(eIuP}9Lk#-~GC zaW3YZ3enCi+H9nN>Ze=1ZzwL2NGPPbR&AZUTpMR6ww9YkAtN-qa^N39M#9^*wF|B; z2b~fk5nQ6|(PJxtv^fb9A`u9!9$u2-uEn9c4GB$9J-M)nX<8N>2Ki`Cc?hnqBnFjW zIS%qZgczj?-G`0ou)K}&v_&c5LWNqVvrem;x1S^_rU5?k~VQeBs2Jf}nEm z!C$8|z$hWWTaCA)&hf--5F)8>D>bI`ru{(m)lsG=4wX z@x0%oVopEl{CLV<>J2J($bU}vhMrRlG$1cePmPW-`3(}v(oJ}*_nMN`L?w&P zE#`{^und}VRe0b}^uZ37G;Z>>j31s1L|Qkbr`X|YI&u1dpRBKB-5R#vTui<*gW~@H zhczTLoN(a5py|2i{Frh700hn1+D{F}<(zS<{{VQRNWTdm>`#e>%U|C>zfMWxzaXY8 z&Mr;LRc!|In(`*K?>4Qi?`of%W*NmtML0wCfQ_954c<}hefz>bttuYGaLq4=jhM5A zkcsLkvFdNrR;p+U0^6vJH1Tz+3gJn`D0XK6<*- zhVJ~wmV`*3FN``DIvCuDUWTTtK<6|EVz)xM3r&R{K%TPGq>huY(NpFQ=E;<-DuHNFP%p8UI?ft{Rsdj+@Jh!-Yc8Lfw z9^G9QaopLg3t|dTrl9Sk?eMu=T!u;t0wb;yRo3k;*21()K%}7kb&+RPHAANM@^sf2 z`eAt^E4>NuUwC6*fC?&=7kq;9i!m;Cc9F~$M0@Al$vKz{07Def;p5T!FhJ~=z@l(Qb`SF^i#yf$nY`t2%y2xR%p@lULHSgmU(uh?O5A*pG$$&}2Vjo^H&_`-S z02A?>TT!4Ko}$yQ<%Fx31XE>f5OY>Y^3Dn#daz9X2!x8=g0DaRpUMIg2E0{eUQsCDrA==rfPfy*WF29J93 z*X_VG$#+k|_}|tL*GyWF(E&1c@r=sD;E@LCbiQ6QMl6k-5i|tz!r+#Mf$-y$kG|SC z;8B*MA~Th)%upiLR3`j_@Xb#b6bg+<9|y7h;!!D9q#66g1eNHyB%S@?H6Mm(Qmz#o z6u#*NSX}_CLte57j98msoFTbxuq?ARh2NhbN&>o0-u|$h7_#v?aNnVD zZwSz6fdxeJIs>7@mrKf!Xc5)qHIuz@p!-iJTW#CMPC_A4s1j_cvr*+Rn_Qr^7=%q! z>E&>#dzv5=6i6Z=G#&(wz|O)*5QLzt*Ez606TuNcgevfNW-CKW6lV7HCHA>}rpkij zq8}QlI%0}5X@=Z78dh-mwC>UEDtLtm=tqVng8u+m1iGHIbR293n>DFGI!*!&mv}Bx zC_y5NO~jssInn&#uFq<*Q68IvysiR09A}$71Y_q)!xy=HaEmj0ZszAkt*ck z;J<5C3(C6CU_)%DmC=fvZ%>YLi9<|R!LCmL{;+gIT1G02<~1)gZ&U!Jj{*MxwtDrO zXQ(o5VRsbcTH_uIl&H}irjX|M>uJ^A6v&o&@T2~2fNsHGBz!{ z?8^ZQwCf@=mDzJshOfoL^aN4$yrhKkn0a3^C&|`3RX8I6+IcX$hJ{XUkvCPqEhmO( zOq=DK_{w4B{i4h8C~nTZxTXh0G!JcBtDUpI_-XlH&TMY~0G!H>x+IBg@QR;5@SNKk z8{;+D{x;v(83O_Dk+0HzaZOPwI*zl;ihO@wao0JqZY~1WE1<&YLlSsoLib%LRSN4b z5j%sEeFLuWpY*g+*}&XB{bu^1cPtjCU%%D~-(8`Y`H3DVkA&5{;TGWFaOu6hnW}`X zdM_^nXfT#I4EGGHS{Orid7VOwX@y%Yi)dXyJ`0-w*-+a;?!^-akt(!OA|gx5#kx!a z%|Id1JF3T?qazHG6-lU?2ZHTkgoTk+LN#(z!V;X|B|3;)NC1&uO>$r>;Hz2)50B+g zlR(*0Ah%+^lu~zsHh^=W(dCO1OSfztL|JPSRRBVB<}z+R!V_YlVbFE)5i2Ip*e}Mk zuR7GjhUu~tRZ68hcQ=~QmNutNhk&78e5NkOoAo?87Kn4lTx5&2F{4#cg>r4=#YM43 zkvb_#dgEBEkO%@{q_oof>#||ybyCRnrtITfdt5)U1I#{`zO|xq6)6$m?Pjcv)xFH9 zaf$_(g|TIW#ww5n1EB)Q$Ipa!jBLh(NlyZ|;D+GFuHdM<0@AMC^Wnum6B6|M`26C8 z2bS%D(aP1)f1DvK5rM^Z>1}w2M+{gZHv-LQEpy%4v>Pca;D^TXQHU3tIA;-Ew0Xfn z*dz!<=iY7F6fE=lr`~9wru@x+gY%F?ke(60Fn`03%#_!V{O)n$Vh91rzjnWQaGdxJ z&9+g(rs};lvgg7caLwc4a!g8ggF8oT?LM+M|5$HH-U;i@xNYc4E9K7b-#e!x``n z`%|v500uOt+Av!@?A61^X7b2R0;}SfM)*w^JaH=PN&$BG={wRRU8@y%hWe?nhMAG(;`oz}TAV|o z!-T#H+tWp;wWs~#*x4i?Eb93f;@*sZj)o`=hfx_17)1@`6;E%bxWFx9MKcW^HmR<X-)H%7gkliDggJPDiprZ35d(b7 zjumGn!qdlMjhBj}HOK}m;up;PW280@Y8S4TLCNuxZoqBOUr3KLC-BZ5W$gEw)}dC( zB{<`!!O?&lK&S{<$a*gO&T&v!fFM*r@#f=B09n3}tX6o=NIuE(H(w9dOx!J(OyW-K zJ>vRAp)m;fPlUsRxY3D6xP#Usb`K^I^k2ZN(u+%^jHXM@I2+$oDwR#Qfz$^R9MxPv z;ZBk7)^}lZtVA0CeBd1MhdA7JFi&Io6jHp_K5=L&eOCxw@>XXEiOsC{sZ(fk_l(AP zF$~=b*l|0~!lZgl^epT$h+4tIA#c)(bo zab6Fs;;{;~tMp+V1$w~6i%qeyv5+rl0$r$UC{0#@Vl;Cby-Wad3mbYLJUHNT`6`Fi z!q>2PKb(MLHUZ>!yWUv?G#z=$y-_>!cn^3c97w)zeD^1Zqp*B1lZ)aIUO3k_HSB}t zs%u{_SoAdmElMJktqvQdxuMJ`Xy6Xtan%`Isy4(|XJdr3a$Ro}t&z~A0kq;j2Svri z*A1XI!h5_Ykii6x3V~R4Rs5z=tso-}ARv?t>0X>LNcE*uK}6Ie$m?9H5=GjGP3Y}; z))X1Af&$LaJ8^trUm1xegk*V^xhO*n)Q*U;w$Ko}Tj97Xr%_wY0<2-XL&J&t6{Iw2 z?BO;vZ$!HeYH5fdLMyrJPEe?QYRkf|Vo_dSZSvc-)qo zbQ#CJ`}bEH_RDT~+yH)WQ$A|0HZ_NFx|QR!DR`8FZ67_)o-*>viBS2f{{TEWuT!}H z0KO;Z5GO?0(y7p`K2xJC4Q)3a-V3|+z!>f{Cl5Ds`SX*ylGb@rUkUWg~klWc2yQiO34j?_A$jeD4}e)O2lodymnKDiG0hfOTZs zI9y6;%opR|2=m@7X@!J9G^81K?<^Bqc^*Er=O|DhK%fTJdM^0GXeSP=RXHgC0MdpF z{_A7Q;l%sPY>8=Z;4j~A9Ge=|IfjA~VL#*h0++XNcH@gV&O{pA;}-x^Qf5fl$56A#Q23aC`f3LA1$ zj`1GWM1Z~ndc2Pg@NK|?k+5w!6|-J)4wj2=-}}ZRdY{&Y9wwHTUE??mGSNK$0J9;6 zL=|*V_Y5fNu%bzOORrxT69H?eA}8+|8#>hN%B`JqHJi&MQW1N2XCK_ciU1xW5o9&T z{W;uMISZxGG`RK3A<=kU$c;ms7>KzM(K;^M$@g##*}LS*B#%+R}ru)) z$oDSrARa0TRuUX{oZL`oDyVzC6L1Ra;L_RmFVQ<|Wl5hn-gj|L%u3iJrL6ib8A8u5g* zIAMoGbJIW{7k4`1=-wjT98NLQ4UN%h& z_R?>?K5|5$9S__O!wtTb@^OzNN#Z>iTcA*LPX-BMC=CFH6`=9FW#4t5%XG6|uJP!K zL&4(U6}E~&c`x^pU`Smn=N2`oka-dGgY}d@x&b)d)IH<13hayYC!F4MY(zUBpE$uI zh}r)C02#K3t+U?v_5Ls;TG;CB8r?(0{4GLm0p~ysO689|SuO5Y!3Rc*%{vo86E{0m z3h;-=bIxhI*5Lsi*{%d7JB>j72n!TlBg3J?gA5_S5TPFhjr!)MC^pa(*JH`iBtTnLj$B|YvuO)uK|m)&rs-`8;5t z=|QIXze<1DkSIuYo9(Sl0Qs<+lkw44i^UZ8H8F!-H1C&#kZF12E|LJpWe1fOgkZbN zKd=zrp;gy9UE_YdMMp#YJQQxS)uM#m1mlW6hveww6ey!YG!3Q=E2XTybR zxh>`G%0;DMnxEDzCA6ldDg%iwU^ za;dvY{?`za5}B|o`N13Qm#iJHUz~vIkk3iq#JYJbK77w{Wv>T=$IvN{V-H2k#C#HET<5D0*(s?-!i7r09TV1p5B zrnT)l!BPk>c)?|s`Gx!RTR#yz8i%I=>j%Abr>2t{cdp{dC>I5z6TRJ^BreDAzE zM#_Z_qVb$)qhbYDktUjaU`3D@rWFqqFTm!Q4dGHdc5oSaMSmtzD$%yhK(Q#IRa1e^ zf7UJA!?ulZ4A#~iimL#N$qp}%9&u>~6bj>mP2TqQIkspVohLla)M>8-QbU8gL9mF7 z3>e#5)(Mmg7AHD8Cnp;-Mizi=M}n@vc5jJ+J^1W+8uL6o_hVQN;3x>_M`%09?!<7~ zBKz~npRI=v|m2!yU$T^D)gNSYM}^gO`I+(hyuSE+j!NJxiThL z6pb4|A%O)}pyC6B0ZJArb~vDS4PP@;+yZTEdTzNNLy8Y8z<4o*s6Bx+^dO!tFB{+w z1mor#)*aFyn(FtY9(?1nMZRCQ zzX^jNkP@UDI(N^kIdg}}qvOTkx#4aTsvcdwapi9%01yLh3wrx3yJ(GB4==y#HsXU# z=vRJ^{Q$z0cJr(p1;5HfKi_Tzkp&Wa8{4cQI{-X4mAwTv_k-FzOj2GSD*k*!v-?5B zlQ?#b1WseZu&dK2BT=T?ZoC}t5N6kn?X4Rwzgj*PpjT_(K|@!zD`NtJYZx^ zEG1|B`Ja~|cAE!$$d4#+&84;5-m+bnOp4pkF_p>)r(Fd;z$~42i(9COY8sAp8%=kv@Y@+;)7V<(!sdw2Mp0n&jadQviFP%5-9(y42!s;z~$k&l>pph+R2i zcxVO3MF_)uxhtIjZ%L#9H_dp?o`V!7iSug8q1C|+a#x5eYrzj4%{j!hnp&e}BAPV# z!U$mDJ%;$=o$Dl$3KduZD}i{czNaV&ett5NS|}muYkfM=%*EE_eV|c#H1CX8A1Mlo zO}gvxfX_;3=$bJ-?c)c)&}QkU%g_7%F}Tv{!Gq1WUHQXbFIzAnMl`pVTe$2#BT3S6 zx!(w50@Tt#`^4|tSlrsi}p3Z z*VsD{>ha%39Cr3p@Mzf6n1DcW%mP} zU-OFrc$)FAFIt8w7ENgUCVS}{y(zyN)_8ZiC*wC7>A`V4a;ImPa4m_~q?C1Ogy}po zzfMv<1O(~uqHl0vm#5ZoLLU`lG&kTIUkilwK~g0YK&heDrULJgd3U*M`Y}oer3tl? zU8mwEDrDuwWhUM2WFd*1K`{`Pa{%=;)(`wvbHhvAFts0ryk`03j7(gc56Wpp0&qM4 z$7m~eVCb`!K+!MWtT{|=j|TJ)vDA1*l)@C<9PHJ+xm{$F-sJGpz3e{+ zIR)|4vunRD8|8nz zo%c5N;E`sz{{XC7gC*qPxc7fPb(asZx&`&mk2qYQMHP^>dw+SSK~N$qNy@ih&S_J~ z?GaATKm5ZZZA)qE=U%^z3(~n@a67(%T;E~jU&-0%etONh2?0;QnZc(FxLcjx*2I!AcQ4Wi{5pYogIR5~~Txs44DDaDl zba7~5cGM0@p?J!s@&=9q)7m0w#VTC{2Jg<19{1xLYIE3m2TZE$^{NrItOdn2$3t*U z85Hg9dih5ac@Ndv-((HwrZ{=28AdBZ(euf5ES6S0KZgTC~TOrz_fwg5FjDB!fd$xD}lG5 z1g}TK836uI0Fc)M(Xl$YV?#tpMx`K!pNAv>)uA_N$d^whok@27rvmI+DOpImq$Bg#KNIo>6vcy$vCZ{BTHau9ya&Si!)wK1@KdocUt%B zfAqElJdG2&#jdlG=;ju0@;}t$6h09ubtkoc@$9q_7>_sC?ZQ<%bR<(})_)xLa-mRc-dKuHJHwqstGs{qGb(5n?gqiH<8apC_G3i;o7vV&odtfoxlT zGD%oUXx#&*klTub+-ak5J3D^7Dn7Ob5F}#s@g36*?WiHDsDZlNH_m7QrKtu52gBQx zUNtMgI{e|XA7%%JErF(=oK9Chs1fru>&|d4O$~mJ=jHR8--3bRUO4ZpKn*PTzxDaZ z*egs$w4Hs)mNXjGfbvB_UHzFM1Ip-leZA%34g5hpe|b~`fF&bzc!%!eZO|TTTlfLb zmIm=c^vEj!j!0!$ArVx1jd-%hNx0mQ;_~YI546>U9ogfEyUp-T-vz)U4-P zXdY!yiXbV++Pt|zV4$$&4iNFL6O3*H+8P6-eaGXZ(a*69;xsq0Nxd*6`N19%=@NZo zii**zhR-pswUK$iMyB}_e5W_gBV|_wC1Bn&TL`3{QCPSU*eaj`Uy~##ib}13@~1ZL z1!morl=xp<#wBs@8%XG<*^5Zv2=AuIvc1GTVjBoABvJdgqwMRS>olMwQ|rb!6c=T0 z$dvy8@7yqk*Ky(dH}{N;U=dxSn!v4z_Ex<3!O4}O2?8#Tb&)X%%6m7@yigEuzkjQo zyXK}ZKydk6td`K}W#m5m^_8m#cD32cE37?|aJx#_J$@s`a3(`o-Mj5$<2j+|IX*A@ z!Iq1FP+Gee!hUfx5@-PX^108VM5*%SWP+g(_)c*^Knbhl-+r+GxPaYDJa>v!&^))U zF(8;45v=F+T`Df8yYa_Z&@W1XKrFrk@$rvj2m}XCuHHgj`N>sOaCvwK`NA7= zHFveV^o@AN)B5D)S8f0*NqI-1^Ue}VzicRI3bUM@u)$pUQZ*fp#4VTs;2<9=-+=<0 z2J*_cVrKV^cJKkWFdk1sYnv+VAfps@DO=+Ffc*;SRUMtBUO*fF03j|0mEG4$b{}9S zz)j+Etk`y^cG!09%|}D2FlVr@fkt$naj0C&=mcVW~%9k91I39nMXm zkMFP-%ifWU7iHE}Vbf2M$@XBw4v^zGtv)h*AUG6ucX#IxZvZetKoVUMRcj2fI71r% zz$iECs1(`avuE(c17+pN- zlyzH#-PMJs5IZi%UpdKIyg?NA8DYiskh~@osDJ<(czN}Z+%yiWwGKD(E|qv#4rN zTDEW#pu%Jeg1tdFc${870Xjm+`W#L2M+B}WultxFeF>DHUmH5qz`KKPV%6enlZ}1v z_?o#qsmPn(e!)n=@=XRtbglH4Sn5rWL7+OmdcM;&=#|;!2`3vSXh>K-I>)O`j)+)) zy!>IZ8eN}ft}!+kfB`mFtAJEzLB;}zqrBprYEc0K@-G4J)^D<5cHWLw4zohDC=Hrl zoU?;~Y;c)P**_sBM%cTB4zOwa-A4ksqeK)?bHP9m}ZhYClKuLr}19LlH?>D_>%yX%c)~n>e z$S!0aKe4Zu308&DcmtKnwLKS2y3^ygdk#bsN8oxIJgC{GFq|T^3zMbQj`}T+mlZDV z7uuw%zgTeguGcKQwTKI`0UCe`uw{fp5^RIiBT5ysC<>bpLaGnURqI$6{!peK;F?{*w@kr0-!J&2L+)x2Aw!RVFZ_ytqgM-BdfKPlhQ z&nB_?4o#wK;&qGrAav0ena_T+3&wD zJRsr`>kw#c03Z+uo9EU#?VSu6>!0^nlr=%Q@i@&p)6okx6fcg?IQ=F4*pp|UST)e_ zA$afuy=~160tiCEqt6MBUK&Jj9^OBGhu#UIIOUYoC#wy)Y_BGWsq)^Rk2$M|b(Dt9 zUt#3=!GxMh5k&{_>f7WL)Z|nu0I|GrCpSrRv?IkX`JDV*2LcJHK!+XHkPLrW+=(`w z@3Or4Q>Cz{r+V@v-<#t$n0*z6IsP4zWr_m*2)v`EPYwt`D_Zw0S>LRo&gh546x;oE z#u5gnJO$ud0K% zpwWt=SweXC=4WbsaFU|!{A*Z5fCnO~AF%r;PC(dAO^mL)=LpAeuC&IkOaUJev##gq za#YT}C9fr(nN={lXnA@4OaiAmhQTJD{eAO*j)Q>gvOM+U-YP*Z5&`kDFgG%?%Y57; zbMOG#o`akK-PO7d*SGq@bm(>q>wABr##rc)6d#uF_VYk?7Nxcik4JmNyRpAXHXV=VU$Mtvy2bKq@v`PMEGZvg=Ee zoCdW+QJLYP+J}@GRqbI1{It0-j3M5BRO$YU%xi-<1`bt3bO0#ADYL=|UY#^=A#_c< zOdM|k2#w|4!U+@33&aJ+l=xJ=!PdaXmA220Mj+Mv2j83H=)lH>g;hm>iZp21%mor6 z%ixEkG~XsIcR;}Wd`IsPqq}gdDQUZ2XRtV3nzY&HM%#9ei!LNb%mk%X6)2ZioK)oC$$%7f!^8Yw;Xw}* z-`~bS7R8F0N~VZUm)ni;(7<>J%j}->nQ&V#Ag$zE=j00#&_QXf3hRVB^yKLoOan-g zH@@h$7*=aWLD{=}e)3~Y6JwLpviI-7Eg~iMI)`lTV4`4?bFhZ0y4Lx0(moYX1P9E;@$`60MMNsBgcN47{QNPat)_sg)2RCHQ;5h7=vO%pv*y za)hPewFV5AaN_F?>#P&CHhq5n@rqbSQ1br(zxK+YZJa)ZPpls1XldOk#Cpc>OfY!a zpyx&(*uwt+@cq89LZfb<>#r5&=Mms6Uwgl-5RRBm2Z!<>j6o5`aK3&i_T>i9fKa3h zGg)TJA|!_Pb?4K9rZlC#(yZ$!KQ^5?2z9ToGZdXQUIVYZC0=g0SQ4#CeU@V)(x7Z^ zo;mPW-x#NQk@pojoq~KAH*vYOGag_#vq9dQoe8695U;Hghm4D`kHZT{7Jb_0>`geud zrK)g`v%8>#t`y1E%I}aLC~aJ(oWDb^OGgwt+%YTDoWO)ODm0vL$y*~z@34Q_g19n- z`4A6QU}Fu^8nH?FbGHPCMAII`kCze`Ey*(b#u6L^NR?~q*G4dVlTpjaLT@0O2=Ppw z1rd_rJYKGdJJNpt0P7Hd1kXcS>6A2h&s%HQqh)|XY2&P8upmpOpQJ<1yTS|rZT?Z> zM*G8_(M9iW99FtzvyJ$Rkb8Qwz$>4E` zgdsj|=cboHCm8QmpE)T5oX;^+!zC3yX0x{OnKj2Jb>Dva`QZG zFep?hRsx!Qg^yTjw?sRfYNwtIJ#>`~Y#KiPJ>gkBMSNHNTvFQuL#^NX^@#gPG@;Ya z86dhFAo1&OtP1XNu;ey<J`b6cXxIc7{{Vn}7~o5|KJF4t!U28P!@^9$@(>Q81mrie9t#5~$Zvlt`t@#yG2G9ZV85Z(12ruqQ;z=@0B z)r2i7olwJXAfx1!=jjDR49QoTwLc%sy%mCU{{Zk={{S^E9uR_}cuYlTQ*|i)^*pXQ zWdU8>$WxS$lg|gwP>Bs8RYANO%D}yV@yGB9ceWLry9dY&3$fC!41-4zq6o$w$6u2d z-L@TmjriZfU{ky}F12Ct53CGn#y*OujxXh7vEyv|onZ!O0R4*mf}7wBF1>QX`#he- z#K7s?nN?Hym`}R-l7;uAFOK=9dUZ z2FFQn7EgGJXoEHYP`1URByG!Ki%=@M006k6SgLRe>F0<3xy06$*qV#wSU!03keyi4 zpzr{KHNv-yWPR#O$vNA(-dPt=FMux#{@il;lk$5RO>Mg+#o{IDx+^Gc{CBJ>IG`B- z9oo8S-V~4_3I&bMrcPHaXMp@uAKnhmllWYd{{SKTxH#y;galVegd%cKU2Mz6Qb?&b zTWO`$$pj>zx<|eKGoCQ?-Sn44EuQfns@NZ33-QJ~vs5T>I`o?Zont;=y2~ajb74U` zb^id|jiZ$O0o#=%Jr{3(AMWwHgRw9D`o*HMb6=~MQ5H6y9C7}cL3of)<0g+ps0xiM z#=jV;8*bL}1H_xXW6eEB_sjR3@V%~YFXtkmNf+=3d8i9Y2ct*m_mfWk5?)jDCDFX! zy=8;ZHG!b<&{gq*5-{p^WQkIFdb;yeT6DJWk&)URVpEP!%Y1GKqbZuUdEcz?^`;>O zAOIdAoOOr(l30jP_*R_TFe4T#+Msb7G-CLSC!M3_;B?A3$H`QBr!Qm2BI_F#IbkSG zV$crQxLr9_Jb=8QEM;68Xpb}oCY@Qo48`giMxTUqoa+Ivwv_VQhRqL_aUy^L?XB`? z#9)zQeTX?9SQ76D4f!kbJU+~1LJolUw$hB*@NCZp%tiWZ9RC2PP%1}l(gS%jy{|}t zNYdyy@2VOq(~v;M!*@PaqcCqDBf`@`7xd~~~b>#LUCpdF2LYipE;4ZbJ^T-3TS z)pzB8AK*iWc%-Cx_{iT!zpioi+e9o`--dl)Xf?zR(|+SOC;eb3c#g04@>%d~kGYc^0EZ zR$cL{{&SS>{{UOgarUA)yEOOy?n0HCE?v~KZ>BjiTK@pIiK^&&^Ok^)>zB@f`p)!x zLHL6Nw_)d#9%~|(pTOw-xgX$O->Drq6MW*|y}XRrc<5)WRdrQM{`kPco*>T7vFY*K z^}pN{@Eer$nkqC+JD8*Wh&394F3fb)U|>KHe8rm{BhM!yz2Rf%0|Wm6Qet8#KGvMM zG1gt)uh@|52iYJvenXDnPmN&I(;B4$w?_6(u-p1wThO_#fM~M>LS)?+_&jlw1F`dt zlip#(v!LCl}yCSAf$YNn#?=K8~yaRQS< zK-&&(qbPGsReAEnsDM*fNSr$4on?X)0a5wW^trJoh`w*y;c%!E72E6M636xl3C+R6 z9?mcx!YF9y-0Kuzgb?31;}o{fOJX~_p@+*{g8hYXw|Hu%tS#ppp=>t0_FyOFpd(@k z@f0NH+$<*v8*foM6do|pR0mKs^mrvo;NR)MzeoP8IkWzrGqfIHU&aGr(m%`MeljUv zoI$}gm~pH%GUwVB0QqpF3Ar)(4_iJAY7OKR`5+%+`^cMDW%LaPt}uz(`CIvNC}1&; z$QJ(qST^32hg2u#VbIp8#K3Pf;glXiIM?glA=L3azmijmEQ|ZDbzeNBrGEaHg zlCS=#9R@-H&jm305PDAWjVRJ(Uo(3jIpxJ*J&iltj^??-I_=;-4h(*o{4qlD+gulcC@0v5-YFvW`3(IqB$&>&bAnhuzyWcE{{Sey zRQ?MTf$15&lUaP>5j#VDOSygqK#`vT0ieO4eDJ=oe|ddAA^qEajN;)|{$#7y!Hdld zU7QGQb;#=wdk=VU(7PKoz{z%6e;_>l#~LzNaelZB1|#)VY6C`(m#rV0}}6tS8oYpY$5R1tt#n=1gI#2yDbr z%Ua9cb{J8KQ~v+}XqW)Fi<35k913$QSJ8_Ixu4#KE;RaU`d_>>X!6JGzpP#Zvroy2 zLH!mJ+}M@j6It>jC@wkx`X%|8A9FPr5QZG0cyLYU zR90Kk1f>*foO8-nG;}U?(mmo3xj3z9a#dm;u!BZSIe+k%{{UhW{{RRP2eF$ZDtr9A zk7>pceiVS$nLP8=jv*!blz{k54q>SO04l2aInQ=9b*M<}V`2hx2&~iUB_|6>X^dfWh)6(;o5LWNK z1(^wcdY$!_maBvcmxDVcDfr=)c?F>MEPAYwe7v?=>q}q8NvSm@>-a&{{Y%d0h1f&XZRcYW8jF_1F5U>#gd;;0zPf9 z{IR0nyk#5g@$YKfo=|_6lsg7jA zqJHojGlHHDkB#SDlA{;PaM9i;6L>57GfaHk@jWf`KeskP@G(}0)BR*P59R%1Xq98Q zSXsSfP=~DKu4rR0XmK~t*BG14yhmaA4gUbvUFM;2V-L(e`^5?S#QL0|IrEaLxPACf z<{ynmE^f{{Y6v>l-~yx%Q_n=wVU9x&0J4K3Mp``M);%RyDlf20k#A u55WHNsvrmWE(1s2+w)<8Cx!V%ICN?S9{^z=_&@$w3I727tp5P~<^S1(q2Nsb literal 0 HcmV?d00001 diff --git a/cloud/microwaveDishAnalyzer.py b/cloud/microwaveDishAnalyzer.py new file mode 100644 index 0000000..8413443 --- /dev/null +++ b/cloud/microwaveDishAnalyzer.py @@ -0,0 +1,129 @@ +import cv2 +import numpy as np +from typing import Dict, Any, Optional + + +class MicrowaveDishAnalyzer: + """ + Estimates food dish volume from top-down camera images and dish height, + and cross-validates physical volume against Edamam AI mass estimates. + """ + + # Constant scale ratio: Centimeters per Pixel. + # TODO : Replace this value once your camera calibration is complete. + CM_PER_PIXEL: float = 0.05 # Example: 1 pixel = 0.05 cm + + def __init__(self, cm_per_pixel: Optional[float] = None): + if cm_per_pixel is not None: + self.cm_per_pixel = cm_per_pixel + else: + self.cm_per_pixel = self.CM_PER_PIXEL + + def calculate_surface_area_cm2(self, image_path: str) -> float: + """ + Segments the food/dish from the background and returns surface area in cm². + """ + image = cv2.imread(image_path) + if image is None: + raise FileNotFoundError(f"Image could not be loaded from path: {image_path}") + + # 1. Convert to grayscale & blur to reduce noise + gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) + blurred = cv2.GaussianBlur(gray, (5, 5), 0) + + # 2. Otsu thresholding to segment foreground (dish) from background (turntable) + _, thresh = cv2.threshold(blurred, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) + + # 3. Find contours + contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) + if not contours: + return 0.0 + + # 4. Assume the largest contour corresponds to the dish/food area + largest_contour = max(contours, key=cv2.contourArea) + area_pixels = cv2.contourArea(largest_contour) + + # 5. Convert pixels² to cm² using scale ratio squared + area_cm2 = area_pixels * (self.cm_per_pixel ** 2) + return float(area_cm2) + + @staticmethod + def _get_shape_factor(food_label: str) -> float: + """ + Selects geometric correction factor (k_shape) based on container/food shape: + - Bowls/Soups: ~0.60 (paraboloid) + - Drinks/Mugs: ~0.95 (cylinder) + - Flat plates/solid foods: ~0.85 (truncated cone / disk) + """ + label = food_label.lower() + if any(w in label for w in ["soup", "chili", "stew", "curry", "bowl"]): + return 0.60 + elif any(w in label for w in ["coffee", "tea", "milk", "water", "beverage", "mug"]): + return 0.95 + elif any(w in label for w in ["bread", "cake", "muffin"]): + return 0.80 + return 0.85 # Default factor for plated meals + + def estimate_volume( + self, image_path: str, height_cm: float, food_label: str = "" + ) -> Dict[str, float]: + """ + Computes total physical volume in cm³ (mL). + Volume = Area (cm²) * Height (cm) * Shape Factor + """ + area_cm2 = self.calculate_surface_area_cm2(image_path) + k_shape = self._get_shape_factor(food_label) + volume_cm3 = area_cm2 * height_cm * k_shape + + return { + "surface_area_cm2": round(area_cm2, 2), + "height_cm": round(height_cm, 2), + "shape_factor": k_shape, + "volume_cm3": round(volume_cm3, 2), + } + + def reconcile_mass( + self, edamam_mass_g: float, volume_cm3: float, food_label: str = "" + ) -> Dict[str, Any]: + """ + Cross-validates Edamam's visual mass against physical volume using expected density. + Returns the most physically accurate mass estimate in grams. + """ + if volume_cm3 <= 0: + return { + "final_mass_g": edamam_mass_g, + "status": "unvalidated_zero_volume", + "calculated_density": None, + } + + calculated_density = edamam_mass_g / volume_cm3 + label = food_label.lower() + + # Expected food densities (g/cm³) + if any(w in label for w in ["bread", "popcorn", "cake"]): + expected_density = 0.35 + elif any(w in label for w in ["soup", "beverage", "water", "milk"]): + expected_density = 1.0 + else: + expected_density = 0.92 # Average cooked meal (water + fats + carbs) + + # Plausibility bounds (±35% variance around expected density) + min_density = expected_density * 0.65 + max_density = expected_density * 1.35 + + if min_density <= calculated_density <= max_density: + # Edamam estimate is physically realistic + final_mass = edamam_mass_g + status = "validated_edamam_mass" + else: + # Edamam misjudged scale — fallback to Volume * Expected Density + final_mass = volume_cm3 * expected_density + status = "reconciled_via_volume_density" + + return { + "final_mass_g": round(final_mass, 2), + "raw_edamam_mass_g": edamam_mass_g, + "calculated_density_g_cm3": round(calculated_density, 3), + "expected_density_g_cm3": expected_density, + "status": status, + } \ No newline at end of file diff --git a/cloud/microwaveThermalEngine.py b/cloud/microwaveThermalEngine.py new file mode 100644 index 0000000..f65efa1 --- /dev/null +++ b/cloud/microwaveThermalEngine.py @@ -0,0 +1,52 @@ +from dataclasses import dataclass +from typing import Dict, Any, Optional + +@dataclass +class DishThermalState: + food_name: str + macronutrients: Dict[str, float] # grams of water, fat, protein, carbs + estimated_mass_g: float + initial_temp_c: float + volume_cm3: Optional[float] = None + +class MicrowaveThermalEngine: + """Calculates cook parameters based on physical properties""" + + DEFAULT_EFFICIENCY = 0.70 # ~70% magnetron efficiency + TARGET_TEMP_C = 74.0 # Safe food temperature + + @staticmethod + def estimate_specific_heat(macros: Dict[str, float], total_weight_g: float) -> float: + """Estimates Cp in J/(g*C) based on macro composition""" + if total_weight_g <= 0: + return 3.5 # Fallback average for mixed meals + + w_water = macros.get("water_g", total_weight_g * 0.7) / total_weight_g + w_protein = macros.get("protein_g", 0.0) / total_weight_g + w_fat = macros.get("fat_g", 0.0) / total_weight_g + w_carbs = macros.get("carbs_g", 0.0) / total_weight_g + + return (4.184 * w_water) + (1.71 * w_protein) + (1.67 * w_fat) + (1.42 * w_carbs) + + def calculate_cook_plan(self, state: DishThermalState, microwave_wattage: int) -> Dict[str, Any]: + cp = self.estimate_specific_heat(state.macronutrients, state.estimated_mass_g) + delta_t = max(0.0, self.TARGET_TEMP_C - state.initial_temp_c) + + # Q = m * c_p * delta_t + required_joules = state.estimated_mass_g * cp * delta_t + effective_power_watts = microwave_wattage * self.DEFAULT_EFFICIENCY + + total_seconds = required_joules / effective_power_watts if effective_power_watts > 0 else 0 + + # Determine duty cycle / power level recommendations + power_level = 100 + if state.initial_temp_c < 0: # Frozen food requires defrost cycle to prevent edge-cooking + power_level = 50 + total_seconds *= 1.4 + + return { + "cook_time_seconds": round(total_seconds), + "recommended_power_level_pct": power_level, + "estimated_specific_heat": round(cp, 2), + "energy_joules": round(required_joules) + } \ No newline at end of file diff --git a/cloud/requirements.txt b/cloud/requirements.txt index ab247cb..68993f1 100644 --- a/cloud/requirements.txt +++ b/cloud/requirements.txt @@ -1,3 +1,4 @@ Flask==3.0.2 pymongo==4.6.1 -gunicorn==21.2.0 \ No newline at end of file +gunicorn==21.2.0 +opencv-python-headless \ No newline at end of file