From c3627de005e21a0c4e6307e292558841cf66d440 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Fri, 18 Aug 2023 08:48:02 +0800 Subject: [PATCH 01/30] fix startup.py: add log info before server starting --- startup.py | 48 +++++++++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/startup.py b/startup.py index 830c3229..b3e85800 100644 --- a/startup.py +++ b/startup.py @@ -315,6 +315,31 @@ def parse_args() -> argparse.ArgumentParser: return args +def dump_server_info(after_start=False): + print("\n\n") + print("=" * 30 + "Langchain-Chatchat Configuration" + "=" * 30) + print(f"操作系统:{platform.platform()}.") + print(f"python版本:{sys.version}") + print(f"项目版本:{VERSION}") + print(f"langchain版本:{langchain.__version__}. fastchat版本:{fastchat.__version__}") + print("\n") + print(f"当前LLM模型:{LLM_MODEL} @ {LLM_DEVICE}") + pprint(llm_model_dict[LLM_MODEL]) + print(f"当前Embbedings模型: {EMBEDDING_MODEL} @ {EMBEDDING_DEVICE}") + if after_start: + print("\n") + print(f"服务端运行信息:") + if args.openai_api: + print(f" OpenAI API Server: {fschat_openai_api_address()}/v1") + print(" (请确认llm_model_dict中配置的api_base_url与上面地址一致。)") + if args.api: + print(f" Chatchat API Server: {api_address()}") + if args.webui: + print(f" Chatchat WEBUI Server: {webui_address()}") + print("=" * 30 + "Langchain-Chatchat Configuration" + "=" * 30) + print("\n\n") + + if __name__ == "__main__": import platform import time @@ -343,6 +368,7 @@ if __name__ == "__main__": args.api = False args.webui = False + dump_server_info() logger.info(f"正在启动服务:") logger.info(f"如需查看 llm_api 日志,请前往 {LOG_PATH}") @@ -403,27 +429,7 @@ if __name__ == "__main__": no = queue.get() if no == len(processes): time.sleep(0.5) - print("\n\n") - print("=" * 30 + "Langchain-Chatchat Configuration" + "=" * 30) - print(f"操作系统:{platform.platform()}.") - print(f"python版本:{sys.version}") - print(f"项目版本:{VERSION}") - print(f"langchain版本:{langchain.__version__}. fastchat版本:{fastchat.__version__}") - print("\n") - print(f"当前LLM模型:{LLM_MODEL} @ {LLM_DEVICE}") - pprint(llm_model_dict[LLM_MODEL]) - print(f"当前Embbedings模型: {EMBEDDING_MODEL} @ {EMBEDDING_DEVICE}") - print("\n") - print(f"服务端运行信息:") - if args.openai_api: - print(f" OpenAI API Server: {fschat_openai_api_address()}/v1") - print("请确认llm_model_dict中配置的api_base_url与上面地址一致。") - if args.api: - print(f" Chatchat API Server: {api_address()}") - if args.webui: - print(f" Chatchat WEBUI Server: {webui_address()}") - print("=" * 30 + "Langchain-Chatchat Configuration" + "=" * 30) - print("\n\n") + dump_server_info(True) break else: queue.put(no) From d4cf77170a7378c392dc2328540839e27c525fbc Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Fri, 18 Aug 2023 11:47:49 +0800 Subject: [PATCH 02/30] fix webui: correct error messages --- webui_pages/knowledge_base/knowledge_base.py | 14 +++++------ webui_pages/utils.py | 25 ++++++++++++++++---- 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/webui_pages/knowledge_base/knowledge_base.py b/webui_pages/knowledge_base/knowledge_base.py index f0594754..89e274ca 100644 --- a/webui_pages/knowledge_base/knowledge_base.py +++ b/webui_pages/knowledge_base/knowledge_base.py @@ -118,7 +118,7 @@ def knowledge_base_page(api: ApiRequest): vector_store_type=vs_type, embed_model=embed_model, ) - st.toast(ret["msg"]) + st.toast(ret.get("msg", " ")) st.session_state["selected_kb_name"] = kb_name st.experimental_rerun() @@ -140,10 +140,10 @@ def knowledge_base_page(api: ApiRequest): ): for f in files: ret = api.upload_kb_doc(f, kb) - if ret["code"] == 200: - st.toast(ret["msg"], icon="✔") - else: - st.toast(ret["msg"], icon="✖") + if msg := check_success_msg(ret): + st.toast(msg, icon="✔") + elif msg := check_error_msg(ret): + st.toast(msg, icon="✖") st.session_state.files = [] st.divider() @@ -235,7 +235,7 @@ def knowledge_base_page(api: ApiRequest): ): for row in selected_rows: ret = api.delete_kb_doc(kb, row["file_name"], True) - st.toast(ret["msg"]) + st.toast(ret.get("msg", " ")) st.experimental_rerun() st.divider() @@ -262,6 +262,6 @@ def knowledge_base_page(api: ApiRequest): use_container_width=True, ): ret = api.delete_knowledge_base(kb) - st.toast(ret["msg"]) + st.toast(ret.get("msg", " ")) time.sleep(1) st.experimental_rerun() diff --git a/webui_pages/utils.py b/webui_pages/utils.py index 3e67ed72..cc38ef56 100644 --- a/webui_pages/utils.py +++ b/webui_pages/utils.py @@ -232,15 +232,15 @@ class ApiRequest: msg = f"无法连接API服务器,请确认已执行python server\\api.py" logger.error(msg) logger.error(e) - yield {"code": 500, "errorMsg": msg} + yield {"code": 500, "msg": msg} except httpx.ReadTimeout as e: msg = f"API通信超时,请确认已启动FastChat与API服务(详见RADME '5. 启动 API 服务或 Web UI')" logger.error(msg) logger.error(e) - yield {"code": 500, "errorMsg": msg} + yield {"code": 500, "msg": msg} except Exception as e: logger.error(e) - yield {"code": 500, "errorMsg": str(e)} + yield {"code": 500, "msg": str(e)} # 对话相关操作 @@ -394,7 +394,7 @@ class ApiRequest: return response.json() except Exception as e: logger.error(e) - return {"code": 500, "errorMsg": errorMsg or str(e)} + return {"code": 500, "msg": errorMsg or str(e)} def list_knowledge_bases( self, @@ -626,7 +626,22 @@ def check_error_msg(data: Union[str, dict, list], key: str = "errorMsg") -> str: ''' return error message if error occured when requests API ''' - if isinstance(data, dict) and key in data: + if isinstance(data, dict): + if key in data: + return data[key] + if "code" in data and data["code"] != 200: + return data["msg"] + return "" + + +def check_success_msg(data: Union[str, dict, list], key: str = "msg") -> str: + ''' + return error message if error occured when requests API + ''' + if (isinstance(data, dict) + and key in data + and "code" in data + and data["code"] == 200): return data[key] return "" From 95d9fb0ee968f969b2c44f997105a019425db050 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E9=B9=8F?= <37921589+shutter-cp@users.noreply.github.com> Date: Fri, 18 Aug 2023 14:41:11 +0800 Subject: [PATCH 03/30] fix bug 1159 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复使用使用pg存储向量时,向量检索错误 {TypeError}TypeError("'Document' object is not subscriptable") --- server/knowledge_base/kb_service/pg_kb_service.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/knowledge_base/kb_service/pg_kb_service.py b/server/knowledge_base/kb_service/pg_kb_service.py index a3126ece..a3f9318e 100644 --- a/server/knowledge_base/kb_service/pg_kb_service.py +++ b/server/knowledge_base/kb_service/pg_kb_service.py @@ -46,7 +46,7 @@ class PGKBService(KBService): def do_search(self, query: str, top_k: int, score_threshold: float, embeddings: Embeddings) -> List[Document]: # todo: support score threshold self._load_pg_vector(embeddings=embeddings) - return self.pg_vector.similarity_search(query, top_k) + return self.pg_vector.similarity_search_with_score(query, top_k) def add_doc(self, kb_file: KnowledgeFile): """ From fe9f2df17daeae4a659e7da170c61855509c4da1 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Fri, 18 Aug 2023 16:46:59 +0800 Subject: [PATCH 04/30] fix startup.py: correct command help info --- startup.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/startup.py b/startup.py index b3e85800..10d53813 100644 --- a/startup.py +++ b/startup.py @@ -252,6 +252,7 @@ def run_webui(q: Queue, run_seq: int = 5): def parse_args() -> argparse.ArgumentParser: parser = argparse.ArgumentParser() parser.add_argument( + "-a", "--all-webui", action="store_true", help="run fastchat's controller/model_worker/openai_api servers, run api.py and webui.py", @@ -260,13 +261,13 @@ def parse_args() -> argparse.ArgumentParser: parser.add_argument( "--all-api", action="store_true", - help="run fastchat's controller/model_worker/openai_api servers, run api.py and webui.py", + help="run fastchat's controller/model_worker/openai_api servers, run api.py", dest="all_api", ) parser.add_argument( "--llm-api", action="store_true", - help="run fastchat's controller/model_worker/openai_api servers, run api.py and webui.py", + help="run fastchat's controller/model_worker/openai_api serversy", dest="llm_api", ) parser.add_argument( From 62d6f44b28aa24793800108c78d05191e4378da9 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Fri, 18 Aug 2023 21:30:50 +0800 Subject: [PATCH 05/30] fix startup.py --- startup.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/startup.py b/startup.py index 10d53813..88bdd1d4 100644 --- a/startup.py +++ b/startup.py @@ -255,33 +255,33 @@ def parse_args() -> argparse.ArgumentParser: "-a", "--all-webui", action="store_true", - help="run fastchat's controller/model_worker/openai_api servers, run api.py and webui.py", + help="run fastchat's controller/openai_api/model_worker servers, run api.py and webui.py", dest="all_webui", ) parser.add_argument( "--all-api", action="store_true", - help="run fastchat's controller/model_worker/openai_api servers, run api.py", + help="run fastchat's controller/openai_api/model_worker servers, run api.py", dest="all_api", ) parser.add_argument( "--llm-api", action="store_true", - help="run fastchat's controller/model_worker/openai_api serversy", + help="run fastchat's controller/openai_api/model_worker servers", dest="llm_api", ) parser.add_argument( "-o", "--openai-api", action="store_true", - help="run fastchat controller/openai_api servers", + help="run fastchat's controller/openai_api servers", dest="openai_api", ) parser.add_argument( "-m", "--model-worker", action="store_true", - help="run fastchat model_worker server with specified model name. specify --model-name if not using default LLM_MODEL", + help="run fastchat's model_worker server with specified model name. specify --model-name if not using default LLM_MODEL", dest="model_worker", ) parser.add_argument( From 69627a2fa34717660974612d2b94e14ac76152de Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Sat, 19 Aug 2023 15:14:45 +0800 Subject: [PATCH 06/30] update chat and knowledge base api: unify exception processing and return types --- server/chat/github_chat.py | 109 ++++++++++++++ server/knowledge_base/kb_api.py | 12 +- server/knowledge_base/kb_doc_api.py | 141 +++++++++++-------- server/utils.py | 4 +- webui_pages/knowledge_base/knowledge_base.py | 8 +- webui_pages/utils.py | 2 +- 6 files changed, 209 insertions(+), 67 deletions(-) create mode 100644 server/chat/github_chat.py diff --git a/server/chat/github_chat.py b/server/chat/github_chat.py new file mode 100644 index 00000000..b1615488 --- /dev/null +++ b/server/chat/github_chat.py @@ -0,0 +1,109 @@ +from langchain.document_loaders.github import GitHubIssuesLoader +from fastapi import Body +from fastapi.responses import StreamingResponse +from configs.model_config import (llm_model_dict, LLM_MODEL, SEARCH_ENGINE_TOP_K, PROMPT_TEMPLATE) +from server.chat.utils import wrap_done +from server.utils import BaseResponse +from langchain.chat_models import ChatOpenAI +from langchain import LLMChain +from langchain.callbacks import AsyncIteratorCallbackHandler +from typing import AsyncIterable +import asyncio +from langchain.prompts.chat import ChatPromptTemplate +from typing import List, Optional, Literal +from server.chat.utils import History +from langchain.docstore.document import Document +import json +import os +from functools import lru_cache +from datetime import datetime + + +GITHUB_PERSONAL_ACCESS_TOKEN = os.environ.get("GITHUB_PERSONAL_ACCESS_TOKEN") + + +@lru_cache(1) +def load_issues(tick: str): + ''' + set tick to a periodic value to refresh cache + ''' + loader = GitHubIssuesLoader( + repo="chatchat-space/langchain-chatglm", + access_token=GITHUB_PERSONAL_ACCESS_TOKEN, + include_prs=True, + state="all", + ) + docs = loader.load() + return docs + + +def +def github_chat(query: str = Body(..., description="用户输入", examples=["本项目最新进展"]), + top_k: int = Body(SEARCH_ENGINE_TOP_K, description="检索结果数量"), + include_prs: bool = Body(True, description="是否包含PR"), + state: Literal['open', 'closed', 'all'] = Body(None, description="Issue/PR状态"), + creator: str = Body(None, description="创建者"), + history: List[History] = Body([], + description="历史对话", + examples=[[ + {"role": "user", + "content": "介绍一下本项目"}, + {"role": "assistant", + "content": "LangChain-Chatchat (原 Langchain-ChatGLM): 基于 Langchain 与 ChatGLM 等大语言模型的本地知识库问答应用实现。"}]] + ), + stream: bool = Body(False, description="流式输出"), + ): + if GITHUB_PERSONAL_ACCESS_TOKEN is None: + return BaseResponse(code=404, msg=f"使用本功能需要 GITHUB_PERSONAL_ACCESS_TOKEN") + + async def chat_iterator(query: str, + search_engine_name: str, + top_k: int, + history: Optional[List[History]], + ) -> AsyncIterable[str]: + callback = AsyncIteratorCallbackHandler() + model = ChatOpenAI( + streaming=True, + verbose=True, + callbacks=[callback], + openai_api_key=llm_model_dict[LLM_MODEL]["api_key"], + openai_api_base=llm_model_dict[LLM_MODEL]["api_base_url"], + model_name=LLM_MODEL + ) + + docs = lookup_search_engine(query, search_engine_name, top_k) + context = "\n".join([doc.page_content for doc in docs]) + + chat_prompt = ChatPromptTemplate.from_messages( + [i.to_msg_tuple() for i in history] + [("human", PROMPT_TEMPLATE)]) + + chain = LLMChain(prompt=chat_prompt, llm=model) + + # Begin a task that runs in the background. + task = asyncio.create_task(wrap_done( + chain.acall({"context": context, "question": query}), + callback.done), + ) + + source_documents = [ + f"""出处 [{inum + 1}] [{doc.metadata["source"]}]({doc.metadata["source"]}) \n\n{doc.page_content}\n\n""" + for inum, doc in enumerate(docs) + ] + + if stream: + async for token in callback.aiter(): + # Use server-sent-events to stream the response + yield json.dumps({"answer": token, + "docs": source_documents}, + ensure_ascii=False) + else: + answer = "" + async for token in callback.aiter(): + answer += token + yield json.dumps({"answer": token, + "docs": source_documents}, + ensure_ascii=False) + await task + + return StreamingResponse(search_engine_chat_iterator(query, search_engine_name, top_k, history), + media_type="text/event-stream") diff --git a/server/knowledge_base/kb_api.py b/server/knowledge_base/kb_api.py index 4753ba4d..b9151b89 100644 --- a/server/knowledge_base/kb_api.py +++ b/server/knowledge_base/kb_api.py @@ -15,7 +15,7 @@ async def list_kbs(): async def create_kb(knowledge_base_name: str = Body(..., examples=["samples"]), vector_store_type: str = Body("faiss"), embed_model: str = Body(EMBEDDING_MODEL), - ): + ) -> BaseResponse: # Create selected knowledge base if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -27,13 +27,18 @@ async def create_kb(knowledge_base_name: str = Body(..., examples=["samples"]), return BaseResponse(code=404, msg=f"已存在同名知识库 {knowledge_base_name}") kb = KBServiceFactory.get_service(knowledge_base_name, vector_store_type, embed_model) - kb.create_kb() + try: + kb.create_kb() + except Exception as e: + print(e) + return BaseResponse(code=500, msg=f"创建知识库出错: {e}") + return BaseResponse(code=200, msg=f"已新增知识库 {knowledge_base_name}") async def delete_kb( knowledge_base_name: str = Body(..., examples=["samples"]) - ): + ) -> BaseResponse: # Delete selected knowledge base if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -51,5 +56,6 @@ async def delete_kb( return BaseResponse(code=200, msg=f"成功删除知识库 {knowledge_base_name}") except Exception as e: print(e) + return BaseResponse(code=500, msg=f"删除知识库时出现意外: {e}") return BaseResponse(code=500, msg=f"删除知识库失败 {knowledge_base_name}") diff --git a/server/knowledge_base/kb_doc_api.py b/server/knowledge_base/kb_doc_api.py index 0bf2cb76..0d74fd6c 100644 --- a/server/knowledge_base/kb_doc_api.py +++ b/server/knowledge_base/kb_doc_api.py @@ -22,7 +22,7 @@ def search_docs(query: str = Body(..., description="用户输入", examples=[" ) -> List[DocumentWithScore]: kb = KBServiceFactory.get_service_by_name(knowledge_base_name) if kb is None: - return {"code": 404, "msg": f"未找到知识库 {knowledge_base_name}", "docs": []} + return [] docs = kb.search_docs(query, top_k, score_threshold) data = [DocumentWithScore(**x[0].dict(), score=x[1]) for x in docs] @@ -31,7 +31,7 @@ def search_docs(query: str = Body(..., description="用户输入", examples=[" async def list_docs( knowledge_base_name: str -): +) -> ListResponse: if not validate_kb_name(knowledge_base_name): return ListResponse(code=403, msg="Don't attack me", data=[]) @@ -41,13 +41,13 @@ async def list_docs( return ListResponse(code=404, msg=f"未找到知识库 {knowledge_base_name}", data=[]) else: all_doc_names = kb.list_docs() - return ListResponse(data=all_doc_names) + return ListResponse(data=all_doc_names) async def upload_doc(file: UploadFile = File(..., description="上传文件"), knowledge_base_name: str = Form(..., description="知识库名称", examples=["kb1"]), override: bool = Form(False, description="覆盖已有文件"), - ): + ) -> BaseResponse: if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -57,31 +57,37 @@ async def upload_doc(file: UploadFile = File(..., description="上传文件"), file_content = await file.read() # 读取上传文件的内容 - kb_file = KnowledgeFile(filename=file.filename, - knowledge_base_name=knowledge_base_name) - - if (os.path.exists(kb_file.filepath) - and not override - and os.path.getsize(kb_file.filepath) == len(file_content) - ): - # TODO: filesize 不同后的处理 - file_status = f"文件 {kb_file.filename} 已存在。" - return BaseResponse(code=404, msg=file_status) - try: + kb_file = KnowledgeFile(filename=file.filename, + knowledge_base_name=knowledge_base_name) + + if (os.path.exists(kb_file.filepath) + and not override + and os.path.getsize(kb_file.filepath) == len(file_content) + ): + # TODO: filesize 不同后的处理 + file_status = f"文件 {kb_file.filename} 已存在。" + return BaseResponse(code=404, msg=file_status) + with open(kb_file.filepath, "wb") as f: f.write(file_content) except Exception as e: + print(e) return BaseResponse(code=500, msg=f"{kb_file.filename} 文件上传失败,报错信息为: {e}") - kb.add_doc(kb_file) + try: + kb.add_doc(kb_file) + except Exception as e: + print(e) + return BaseResponse(code=500, msg=f"{kb_file.filename} 文件向量化失败,报错信息为: {e}") + return BaseResponse(code=200, msg=f"成功上传文件 {kb_file.filename}") async def delete_doc(knowledge_base_name: str = Body(..., examples=["samples"]), doc_name: str = Body(..., examples=["file_name.md"]), delete_content: bool = Body(False), - ): + ) -> BaseResponse: if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -92,17 +98,22 @@ async def delete_doc(knowledge_base_name: str = Body(..., examples=["samples"]), if not kb.exist_doc(doc_name): return BaseResponse(code=404, msg=f"未找到文件 {doc_name}") - kb_file = KnowledgeFile(filename=doc_name, - knowledge_base_name=knowledge_base_name) - kb.delete_doc(kb_file, delete_content) + + try: + kb_file = KnowledgeFile(filename=doc_name, + knowledge_base_name=knowledge_base_name) + kb.delete_doc(kb_file, delete_content) + except Exception as e: + print(e) + return BaseResponse(code=500, msg=f"{kb_file.filename} 文件删除失败,错误信息:{e}") + return BaseResponse(code=200, msg=f"{kb_file.filename} 文件删除成功") - # return BaseResponse(code=500, msg=f"{kb_file.filename} 文件删除失败") async def update_doc( knowledge_base_name: str = Body(..., examples=["samples"]), file_name: str = Body(..., examples=["file_name"]), - ): + ) -> BaseResponse: ''' 更新知识库文档 ''' @@ -113,14 +124,17 @@ async def update_doc( if kb is None: return BaseResponse(code=404, msg=f"未找到知识库 {knowledge_base_name}") - kb_file = KnowledgeFile(filename=file_name, - knowledge_base_name=knowledge_base_name) + try: + kb_file = KnowledgeFile(filename=file_name, + knowledge_base_name=knowledge_base_name) + if os.path.exists(kb_file.filepath): + kb.update_doc(kb_file) + return BaseResponse(code=200, msg=f"成功更新文件 {kb_file.filename}") + except Exception as e: + print(e) + return BaseResponse(code=500, msg=f"{kb_file.filename} 文件更新失败,错误信息是:{e}") - if os.path.exists(kb_file.filepath): - kb.update_doc(kb_file) - return BaseResponse(code=200, msg=f"成功更新文件 {kb_file.filename}") - else: - return BaseResponse(code=500, msg=f"{kb_file.filename} 文件更新失败") + return BaseResponse(code=500, msg=f"{kb_file.filename} 文件更新失败") async def download_doc( @@ -137,18 +151,20 @@ async def download_doc( if kb is None: return BaseResponse(code=404, msg=f"未找到知识库 {knowledge_base_name}") - kb_file = KnowledgeFile(filename=file_name, - knowledge_base_name=knowledge_base_name) - - if os.path.exists(kb_file.filepath): - return FileResponse( - path=kb_file.filepath, - filename=kb_file.filename, - media_type="multipart/form-data") - else: - return BaseResponse(code=500, msg=f"{kb_file.filename} 读取文件失败") + try: + kb_file = KnowledgeFile(filename=file_name, + knowledge_base_name=knowledge_base_name) + if os.path.exists(kb_file.filepath): + return FileResponse( + path=kb_file.filepath, + filename=kb_file.filename, + media_type="multipart/form-data") + except Exception as e: + print(e) + return BaseResponse(code=500, msg=f"{kb_file.filename} 读取文件失败,错误信息是:{e}") + return BaseResponse(code=500, msg=f"{kb_file.filename} 读取文件失败") async def recreate_vector_store( @@ -163,24 +179,33 @@ async def recreate_vector_store( by default, get_service_by_name only return knowledge base in the info.db and having document files in it. set allow_empty_kb to True make it applied on empty knowledge base which it not in the info.db or having no documents. ''' - kb = KBServiceFactory.get_service(knowledge_base_name, vs_type, embed_model) - if not kb.exists() and not allow_empty_kb: - return BaseResponse(code=404, msg=f"未找到知识库 {knowledge_base_name}") - async def output(kb): - kb.create_kb() - kb.clear_vs() - docs = list_docs_from_folder(knowledge_base_name) - for i, doc in enumerate(docs): - try: - kb_file = KnowledgeFile(doc, knowledge_base_name) - yield json.dumps({ - "total": len(docs), - "finished": i, - "doc": doc, - }, ensure_ascii=False) - kb.add_doc(kb_file) - except Exception as e: - print(e) + async def output(): + kb = KBServiceFactory.get_service(knowledge_base_name, vs_type, embed_model) + if not kb.exists() and not allow_empty_kb: + yield {"code": 404, "msg": f"未找到知识库 ‘{knowledge_base_name}’"} + else: + kb.create_kb() + kb.clear_vs() + docs = list_docs_from_folder(knowledge_base_name) + for i, doc in enumerate(docs): + try: + kb_file = KnowledgeFile(doc, knowledge_base_name) + yield json.dumps({ + "code": 200, + "msg": f"({i + 1} / {len(docs)}): {doc}", + "total": len(docs), + "finished": i, + "doc": doc, + }, ensure_ascii=False) + kb.add_doc(kb_file) + except Exception as e: + print(e) + yield json.dumps({ + "code": 500, + "msg": f"添加文件‘{doc}’到知识库‘{knowledge_base_name}’时出错:{e}。已跳过。", + }) + import asyncio + await asyncio.sleep(5) - return StreamingResponse(output(kb), media_type="text/event-stream") + return StreamingResponse(output(), media_type="text/event-stream") diff --git a/server/utils.py b/server/utils.py index c0f11a5f..4a887225 100644 --- a/server/utils.py +++ b/server/utils.py @@ -9,8 +9,8 @@ from typing import Any, Optional class BaseResponse(BaseModel): - code: int = pydantic.Field(200, description="HTTP status code") - msg: str = pydantic.Field("success", description="HTTP status message") + code: int = pydantic.Field(200, description="API status code") + msg: str = pydantic.Field("success", description="API status message") class Config: schema_extra = { diff --git a/webui_pages/knowledge_base/knowledge_base.py b/webui_pages/knowledge_base/knowledge_base.py index 89e274ca..3bd531a9 100644 --- a/webui_pages/knowledge_base/knowledge_base.py +++ b/webui_pages/knowledge_base/knowledge_base.py @@ -249,12 +249,14 @@ def knowledge_base_page(api: ApiRequest): use_container_width=True, type="primary", ): - with st.spinner("向量库重构中"): + with st.spinner("向量库重构中,请耐心等待,勿刷新或关闭页面。"): empty = st.empty() empty.progress(0.0, "") for d in api.recreate_vector_store(kb): - print(d) - empty.progress(d["finished"] / d["total"], f"正在处理: {d['doc']}") + if msg := check_error_msg(d): + st.toast(msg) + else: + empty.progress(d["finished"] / d["total"], f"正在处理: {d['doc']}") st.experimental_rerun() if cols[2].button( diff --git a/webui_pages/utils.py b/webui_pages/utils.py index cc38ef56..18a24e4e 100644 --- a/webui_pages/utils.py +++ b/webui_pages/utils.py @@ -229,7 +229,7 @@ class ApiRequest: elif chunk.strip(): yield chunk except httpx.ConnectError as e: - msg = f"无法连接API服务器,请确认已执行python server\\api.py" + msg = f"无法连接API服务器,请确认 ‘api.py’ 已正常启动。" logger.error(msg) logger.error(e) yield {"code": 500, "msg": msg} From 956237feac6ebd9c98a76531b3281170c843841f Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Sat, 19 Aug 2023 15:19:01 +0800 Subject: [PATCH 07/30] add api tests --- tests/api/test_kb_api.py | 200 ++++++++++++++++++++++++++++++ tests/api/test_stream_chat_api.py | 108 ++++++++++++++++ 2 files changed, 308 insertions(+) create mode 100644 tests/api/test_kb_api.py create mode 100644 tests/api/test_stream_chat_api.py diff --git a/tests/api/test_kb_api.py b/tests/api/test_kb_api.py new file mode 100644 index 00000000..c09d57f0 --- /dev/null +++ b/tests/api/test_kb_api.py @@ -0,0 +1,200 @@ +from doctest import testfile +import requests +import json +import sys +from pathlib import Path + +root_path = Path(__file__).parent.parent.parent +sys.path.append(str(root_path)) +from configs.server_config import api_address +from configs.model_config import VECTOR_SEARCH_TOP_K + +from pprint import pprint + + +api_base_url = api_address() + +kb = "kb_for_api_test" +test_files = { + "README.MD": str(root_path / "README.MD"), + "FAQ.MD": str(root_path / "docs" / "FAQ.MD") +} + + +def test_delete_kb_before(api="/knowledge_base/delete_knowledge_base"): + url = api_base_url + api + print("\n删除知识库") + r = requests.post(url, json=kb) + data = r.json() + pprint(data) + + # check kb not exists anymore + url = api_base_url + "/knowledge_base/list_knowledge_bases" + print("\n获取知识库列表:") + r = requests.get(url) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert isinstance(data["data"], list) and len(data["data"]) > 0 + assert kb not in data["data"] + + +def test_create_kb(api="/knowledge_base/create_knowledge_base"): + url = api_base_url + api + + print(f"\n尝试用空名称创建知识库:") + r = requests.post(url, json={"knowledge_base_name": " "}) + data = r.json() + pprint(data) + assert data["code"] == 404 + assert data["msg"] == "知识库名称不能为空,请重新填写知识库名称" + + print(f"\n创建新知识库: {kb}") + r = requests.post(url, json={"knowledge_base_name": kb}) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert data["msg"] == f"已新增知识库 {kb}" + + print(f"\n尝试创建同名知识库: {kb}") + r = requests.post(url, json={"knowledge_base_name": kb}) + data = r.json() + pprint(data) + assert data["code"] == 404 + assert data["msg"] == f"已存在同名知识库 {kb}" + + +def test_list_kbs(api="/knowledge_base/list_knowledge_bases"): + url = api_base_url + api + print("\n获取知识库列表:") + r = requests.get(url) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert isinstance(data["data"], list) and len(data["data"]) > 0 + assert kb in data["data"] + + +def test_upload_doc(api="/knowledge_base/upload_doc"): + url = api_base_url + api + for name, path in test_files.items(): + print(f"\n上传知识文件: {name}") + data = {"knowledge_base_name": kb, "override": True} + files = {"file": (name, open(path, "rb"))} + r = requests.post(url, data=data, files=files) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert data["msg"] == f"成功上传文件 {name}" + + for name, path in test_files.items(): + print(f"\n尝试重新上传知识文件: {name}, 不覆盖") + data = {"knowledge_base_name": kb, "override": False} + files = {"file": (name, open(path, "rb"))} + r = requests.post(url, data=data, files=files) + data = r.json() + pprint(data) + assert data["code"] == 404 + assert data["msg"] == f"文件 {name} 已存在。" + + for name, path in test_files.items(): + print(f"\n尝试重新上传知识文件: {name}, 覆盖") + data = {"knowledge_base_name": kb, "override": True} + files = {"file": (name, open(path, "rb"))} + r = requests.post(url, data=data, files=files) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert data["msg"] == f"成功上传文件 {name}" + + +def test_list_docs(api="/knowledge_base/list_docs"): + url = api_base_url + api + print("\n获取知识库中文件列表:") + r = requests.get(url, params={"knowledge_base_name": kb}) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert isinstance(data["data"], list) + for name in test_files: + assert name in data["data"] + + +def test_search_docs(api="/knowledge_base/search_docs"): + url = api_base_url + api + query = "介绍一下langchain-chatchat项目" + print("\n检索知识库:") + print(query) + r = requests.post(url, json={"knowledge_base_name": kb, "query": query}) + data = r.json() + pprint(data) + assert isinstance(data, list) and len(data) == VECTOR_SEARCH_TOP_K + + +def test_update_doc(api="/knowledge_base/update_doc"): + url = api_base_url + api + for name, path in test_files.items(): + print(f"\n更新知识文件: {name}") + r = requests.post(url, json={"knowledge_base_name": kb, "file_name": name}) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert data["msg"] == f"成功更新文件 {name}" + + +def test_delete_doc(api="/knowledge_base/delete_doc"): + url = api_base_url + api + for name, path in test_files.items(): + print(f"\n删除知识文件: {name}") + r = requests.post(url, json={"knowledge_base_name": kb, "doc_name": name}) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert data["msg"] == f"{name} 文件删除成功" + + url = api_base_url + "/knowledge_base/search_docs" + query = "介绍一下langchain-chatchat项目" + print("\n尝试检索删除后的检索知识库:") + print(query) + r = requests.post(url, json={"knowledge_base_name": kb, "query": query}) + data = r.json() + pprint(data) + assert isinstance(data, list) and len(data) == 0 + + +def test_recreate_vs(api="/knowledge_base/recreate_vector_store"): + url = api_base_url + api + print("\n重建知识库:") + r = requests.post(url, json={"knowledge_base_name": kb}, stream=True) + for chunk in r.iter_content(None): + data = json.loads(chunk) + assert isinstance(data, dict) + assert data["code"] == 200 + print(data["msg"]) + + url = api_base_url + "/knowledge_base/search_docs" + query = "本项目支持哪些文件格式?" + print("\n尝试检索重建后的检索知识库:") + print(query) + r = requests.post(url, json={"knowledge_base_name": kb, "query": query}) + data = r.json() + pprint(data) + assert isinstance(data, list) and len(data) == VECTOR_SEARCH_TOP_K + + +def test_delete_kb_after(api="/knowledge_base/delete_knowledge_base"): + url = api_base_url + api + print("\n删除知识库") + r = requests.post(url, json=kb) + data = r.json() + pprint(data) + + # check kb not exists anymore + url = api_base_url + "/knowledge_base/list_knowledge_bases" + print("\n获取知识库列表:") + r = requests.get(url) + data = r.json() + pprint(data) + assert data["code"] == 200 + assert isinstance(data["data"], list) and len(data["data"]) > 0 + assert kb not in data["data"] diff --git a/tests/api/test_stream_chat_api.py b/tests/api/test_stream_chat_api.py new file mode 100644 index 00000000..56d32375 --- /dev/null +++ b/tests/api/test_stream_chat_api.py @@ -0,0 +1,108 @@ +import requests +import json +import sys +from pathlib import Path + +sys.path.append(str(Path(__file__).parent.parent.parent)) +from configs.server_config import API_SERVER, api_address + +from pprint import pprint + + +api_base_url = api_address() + + +def dump_input(d, title): + print("\n") + print("=" * 30 + title + " input " + "="*30) + pprint(d) + + +def dump_output(r, title): + print("\n") + print("=" * 30 + title + " output" + "="*30) + for line in r.iter_content(None, decode_unicode=True): + print(line, end="", flush=True) + + +headers = { + 'accept': 'application/json', + 'Content-Type': 'application/json', +} + +data = { + "query": "请用100字左右的文字介绍自己", + "history": [ + { + "role": "user", + "content": "你好" + }, + { + "role": "assistant", + "content": "你好,我是 ChatGLM" + } + ], + "stream": True +} + + + +def test_chat_fastchat(api="/chat/fastchat"): + url = f"{api_base_url}{api}" + data2 = { + "stream": True, + "messages": data["history"] + [{"role": "user", "content": "推荐一部科幻电影"}] + } + dump_input(data2, api) + response = requests.post(url, headers=headers, json=data2, stream=True) + dump_output(response, api) + assert response.status_code == 200 + + +def test_chat_chat(api="/chat/chat"): + url = f"{api_base_url}{api}" + dump_input(data, api) + response = requests.post(url, headers=headers, json=data, stream=True) + dump_output(response, api) + assert response.status_code == 200 + + +def test_knowledge_chat(api="/chat/knowledge_base_chat"): + url = f"{api_base_url}{api}" + data = { + "query": "如何提问以获得高质量答案", + "knowledge_base_name": "samples", + "history": [ + { + "role": "user", + "content": "你好" + }, + { + "role": "assistant", + "content": "你好,我是 ChatGLM" + } + ], + "stream": True + } + dump_input(data, api) + response = requests.post(url, headers=headers, json=data, stream=True) + print("\n") + print("=" * 30 + api + " output" + "="*30) + first = True + for line in response.iter_content(None, decode_unicode=True): + data = json.loads(line) + if first: + for doc in data["docs"]: + print(doc) + first = False + print(data["answer"], end="", flush=True) + assert response.status_code == 200 + + +def test_search_engine_chat(api="/chat/search_engine_chat"): + url = f"{api_base_url}{api}" + for se in ["bing", "duckduckgo"]: + dump_input(data, api) + response = requests.post(url, json=data, stream=True) + dump_output(response, api) + assert response.status_code == 200 From d694652b874d7a7dd4f89de04a294c8b4ee93755 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Sun, 20 Aug 2023 10:40:31 +0800 Subject: [PATCH 08/30] update VERSION --- configs/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/__init__.py b/configs/__init__.py index 6e0ad134..dc9dd40a 100644 --- a/configs/__init__.py +++ b/configs/__init__.py @@ -1,4 +1,4 @@ from .model_config import * from .server_config import * -VERSION = "v0.2.1" +VERSION = "v0.2.2-preview" From 150a78bfd9fc47457ded3f161475c838a1d3d6ca Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Sun, 20 Aug 2023 16:52:49 +0800 Subject: [PATCH 09/30] update kb_doc_api:make faiss cache working; delete vector store docs before add duplicate docs --- server/knowledge_base/kb_service/base.py | 1 + .../kb_service/faiss_kb_service.py | 58 ++++++++++++------- tests/api/test_kb_api.py | 6 +- 3 files changed, 43 insertions(+), 22 deletions(-) diff --git a/server/knowledge_base/kb_service/base.py b/server/knowledge_base/kb_service/base.py index d506f633..09766e68 100644 --- a/server/knowledge_base/kb_service/base.py +++ b/server/knowledge_base/kb_service/base.py @@ -77,6 +77,7 @@ class KBService(ABC): """ docs = kb_file.file2text() if docs: + self.delete_doc(kb_file) embeddings = self._load_embeddings() self.do_add_doc(docs, embeddings) status = add_doc_to_db(kb_file) diff --git a/server/knowledge_base/kb_service/faiss_kb_service.py b/server/knowledge_base/kb_service/faiss_kb_service.py index 5c8376fd..5953c3a7 100644 --- a/server/knowledge_base/kb_service/faiss_kb_service.py +++ b/server/knowledge_base/kb_service/faiss_kb_service.py @@ -41,7 +41,23 @@ def load_vector_store( vs_path = get_vs_path(knowledge_base_name) if embeddings is None: embeddings = load_embeddings(embed_model, embed_device) - search_index = FAISS.load_local(vs_path, embeddings, normalize_L2=True) + + if not os.path.exists(vs_path): + os.makedirs(vs_path) + + if "index.faiss" in os.listdir(vs_path): + search_index = FAISS.load_local(vs_path, embeddings, normalize_L2=True) + else: + # create an empty vector store + doc = Document(page_content="init", metadata={}) + search_index = FAISS.from_documents([doc], embeddings, normalize_L2=True) + ids = [k for k, v in search_index.docstore._dict.items()] + search_index.delete(ids) + search_index.save_local(vs_path) + + if tick == 0: # vector store is loaded first time + _VECTOR_STORE_TICKS[knowledge_base_name] = 0 + return search_index @@ -74,8 +90,10 @@ class FaissKBService(KBService): def do_create_kb(self): if not os.path.exists(self.vs_path): os.makedirs(self.vs_path) + load_vector_store(self.kb_name) def do_drop_kb(self): + self.clear_vs() shutil.rmtree(self.kb_path) def do_search(self, @@ -94,37 +112,35 @@ class FaissKBService(KBService): docs: List[Document], embeddings: Embeddings, ): - if os.path.exists(self.vs_path) and "index.faiss" in os.listdir(self.vs_path): - vector_store = FAISS.load_local(self.vs_path, embeddings, normalize_L2=True) - vector_store.add_documents(docs) - torch_gc() - else: - if not os.path.exists(self.vs_path): - os.makedirs(self.vs_path) - vector_store = FAISS.from_documents( - docs, embeddings, normalize_L2=True) # docs 为Document列表 - torch_gc() + vector_store = load_vector_store(self.kb_name, + embeddings=embeddings, + tick=_VECTOR_STORE_TICKS.get(self.kb_name, 0)) + vector_store.add_documents(docs) + torch_gc() vector_store.save_local(self.vs_path) refresh_vs_cache(self.kb_name) def do_delete_doc(self, kb_file: KnowledgeFile): embeddings = self._load_embeddings() - if os.path.exists(self.vs_path) and "index.faiss" in os.listdir(self.vs_path): - vector_store = FAISS.load_local(self.vs_path, embeddings, normalize_L2=True) - ids = [k for k, v in vector_store.docstore._dict.items() if v.metadata["source"] == kb_file.filepath] - if len(ids) == 0: - return None - vector_store.delete(ids) - vector_store.save_local(self.vs_path) - refresh_vs_cache(self.kb_name) - return True - else: + vector_store = load_vector_store(self.kb_name, + embeddings=embeddings, + tick=_VECTOR_STORE_TICKS.get(self.kb_name, 0)) + + ids = [k for k, v in vector_store.docstore._dict.items() if v.metadata["source"] == kb_file.filepath] + if len(ids) == 0: return None + vector_store.delete(ids) + vector_store.save_local(self.vs_path) + refresh_vs_cache(self.kb_name) + + return True + def do_clear_vs(self): shutil.rmtree(self.vs_path) os.makedirs(self.vs_path) + refresh_vs_cache(self.kb_name) def exist_doc(self, file_name: str): if super().exist_doc(file_name): diff --git a/tests/api/test_kb_api.py b/tests/api/test_kb_api.py index c09d57f0..5a8b97d2 100644 --- a/tests/api/test_kb_api.py +++ b/tests/api/test_kb_api.py @@ -8,6 +8,7 @@ root_path = Path(__file__).parent.parent.parent sys.path.append(str(root_path)) from configs.server_config import api_address from configs.model_config import VECTOR_SEARCH_TOP_K +from server.knowledge_base.utils import get_kb_path from pprint import pprint @@ -22,8 +23,11 @@ test_files = { def test_delete_kb_before(api="/knowledge_base/delete_knowledge_base"): + if not Path(get_kb_path(kb)).exists(): + return + url = api_base_url + api - print("\n删除知识库") + print("\n测试知识库存在,需要删除") r = requests.post(url, json=kb) data = r.json() pprint(data) From f0bcb3105a1829b6d7c33545722a82de067c07b5 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Sun, 20 Aug 2023 16:52:56 +0800 Subject: [PATCH 10/30] update langchain version requirements --- requirements.txt | 2 +- requirements_api.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 646a5c71..93908dde 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -langchain==0.0.257 +langchain==0.0.266 openai sentence_transformers fschat==0.2.24 diff --git a/requirements_api.txt b/requirements_api.txt index 1e13587c..f567f9f7 100644 --- a/requirements_api.txt +++ b/requirements_api.txt @@ -1,4 +1,4 @@ -langchain==0.0.257 +langchain==0.0.266 openai sentence_transformers fschat==0.2.24 From adbee9f77770a88238b73633cd2695a698cc4ad3 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Sun, 20 Aug 2023 17:29:50 +0800 Subject: [PATCH 11/30] fix add_argument fault in startup.py --- startup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/startup.py b/startup.py index 88bdd1d4..519f4fc9 100644 --- a/startup.py +++ b/startup.py @@ -285,7 +285,7 @@ def parse_args() -> argparse.ArgumentParser: dest="model_worker", ) parser.add_argument( - "-n" + "-n", "--model-name", type=str, default=LLM_MODEL, @@ -293,7 +293,7 @@ def parse_args() -> argparse.ArgumentParser: dest="model_name", ) parser.add_argument( - "-c" + "-c", "--controller", type=str, help="specify controller address the worker is registered to. default is server_config.FSCHAT_CONTROLLER", From b3450bfc96ec848070ccdd7bb7ba65d51ead57bc Mon Sep 17 00:00:00 2001 From: zqt <1178747941@qq.com> Date: Sun, 20 Aug 2023 18:03:23 +0800 Subject: [PATCH 12/30] =?UTF-8?q?=E6=B7=BB=E5=8A=A0milvus=20=E5=92=8C=20pg?= =?UTF-8?q?=20QA=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- configs/model_config.py.example | 2 +- docs/FAQ.md | 13 +++++++++++++ docs/docker/vector_db/pg/docker-compose.yml | 4 ++-- docs/向量库环境docker.md | 1 + 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/configs/model_config.py.example b/configs/model_config.py.example index ccfd1b64..49c4c527 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -114,7 +114,7 @@ kbs_config = { "secure": False, }, "pg": { - "connection_uri": "postgresql://postgres:postgres@127.0.0.1:5432/langchain_chatglm", + "connection_uri": "postgresql://postgres:postgres@127.0.0.1:5432/langchain_chatchat", } } diff --git a/docs/FAQ.md b/docs/FAQ.md index 62fe080c..490eb25c 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -170,3 +170,16 @@ A13: 疑为 chatglm 的 quantization 的问题或 torch 版本差异问题,针 Q14: 修改配置中路径后,加载 text2vec-large-chinese 依然提示 `WARNING: No sentence-transformers model found with name text2vec-large-chinese. Creating a new one with MEAN pooling.` A14: 尝试更换 embedding,如 text2vec-base-chinese,请在 [configs/model_config.py](../configs/model_config.py) 文件中,修改 `text2vec-base`参数为本地路径,绝对路径或者相对路径均可 + + +--- + +Q15: 使用pg向量库建表报错 + +A15: 需要手动安装对应的vector扩展(连接pg执行 CREATE EXTENSION IF NOT EXISTS vector) + +--- + +Q16: pymilvus 连接超时 + +A16.pymilvus版本需要匹配和milvus对应否则会超时参考pymilvus==2.1.3 \ No newline at end of file diff --git a/docs/docker/vector_db/pg/docker-compose.yml b/docs/docker/vector_db/pg/docker-compose.yml index 8e8359c3..b14296ba 100644 --- a/docs/docker/vector_db/pg/docker-compose.yml +++ b/docs/docker/vector_db/pg/docker-compose.yml @@ -2,9 +2,9 @@ version: "3.8" services: postgresql: image: ankane/pgvector:v0.4.1 - container_name: langchain-chatgml-pg-db + container_name: langchain_chatchat-pg-db environment: - POSTGRES_DB: langchain_chatgml + POSTGRES_DB: langchain_chatchat POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres ports: diff --git a/docs/向量库环境docker.md b/docs/向量库环境docker.md index 162b0f0a..dd5e2cbc 100644 --- a/docs/向量库环境docker.md +++ b/docs/向量库环境docker.md @@ -5,3 +5,4 @@ cd docs/docker/vector_db/milvus docker-compose up -d ``` + From f40bb69224df37db171a6dbd05afba11b30a353d Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Sun, 20 Aug 2023 19:10:29 +0800 Subject: [PATCH 13/30] =?UTF-8?q?=E4=BC=98=E5=8C=96FAISS=E5=90=91=E9=87=8F?= =?UTF-8?q?=E5=BA=93=E5=A4=9A=E6=96=87=E4=BB=B6=E6=93=8D=E4=BD=9C=EF=BC=9B?= =?UTF-8?q?=E4=BF=AE=E5=A4=8Drecreate=5Fvector=5Fstore=EF=BC=8C=E5=A4=A7?= =?UTF-8?q?=E9=87=8F=E6=96=87=E4=BB=B6=E6=97=B6=E4=B8=8D=E5=86=8D=E8=B6=85?= =?UTF-8?q?=E6=97=B6=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/knowledge_base/kb_doc_api.py | 11 ++++++----- server/knowledge_base/kb_service/base.py | 14 +++++++------- .../kb_service/faiss_kb_service.py | 15 ++++++++++----- webui_pages/knowledge_base/knowledge_base.py | 6 ++++-- webui_pages/utils.py | 18 +++++++++++++++--- 5 files changed, 42 insertions(+), 22 deletions(-) diff --git a/server/knowledge_base/kb_doc_api.py b/server/knowledge_base/kb_doc_api.py index 0d74fd6c..74edc98b 100644 --- a/server/knowledge_base/kb_doc_api.py +++ b/server/knowledge_base/kb_doc_api.py @@ -47,6 +47,7 @@ async def list_docs( async def upload_doc(file: UploadFile = File(..., description="上传文件"), knowledge_base_name: str = Form(..., description="知识库名称", examples=["kb1"]), override: bool = Form(False, description="覆盖已有文件"), + not_refresh_vs_cache: bool = Form(False, description="暂不保存向量库(用于FAISS)"), ) -> BaseResponse: if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -76,7 +77,7 @@ async def upload_doc(file: UploadFile = File(..., description="上传文件"), return BaseResponse(code=500, msg=f"{kb_file.filename} 文件上传失败,报错信息为: {e}") try: - kb.add_doc(kb_file) + kb.add_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) except Exception as e: print(e) return BaseResponse(code=500, msg=f"{kb_file.filename} 文件向量化失败,报错信息为: {e}") @@ -87,6 +88,7 @@ async def upload_doc(file: UploadFile = File(..., description="上传文件"), async def delete_doc(knowledge_base_name: str = Body(..., examples=["samples"]), doc_name: str = Body(..., examples=["file_name.md"]), delete_content: bool = Body(False), + not_refresh_vs_cache: bool = Body(False, description="暂不保存向量库(用于FAISS)"), ) -> BaseResponse: if not validate_kb_name(knowledge_base_name): return BaseResponse(code=403, msg="Don't attack me") @@ -102,7 +104,7 @@ async def delete_doc(knowledge_base_name: str = Body(..., examples=["samples"]), try: kb_file = KnowledgeFile(filename=doc_name, knowledge_base_name=knowledge_base_name) - kb.delete_doc(kb_file, delete_content) + kb.delete_doc(kb_file, delete_content, not_refresh_vs_cache=not_refresh_vs_cache) except Exception as e: print(e) return BaseResponse(code=500, msg=f"{kb_file.filename} 文件删除失败,错误信息:{e}") @@ -113,6 +115,7 @@ async def delete_doc(knowledge_base_name: str = Body(..., examples=["samples"]), async def update_doc( knowledge_base_name: str = Body(..., examples=["samples"]), file_name: str = Body(..., examples=["file_name"]), + not_refresh_vs_cache: bool = Body(False, description="暂不保存向量库(用于FAISS)"), ) -> BaseResponse: ''' 更新知识库文档 @@ -128,7 +131,7 @@ async def update_doc( kb_file = KnowledgeFile(filename=file_name, knowledge_base_name=knowledge_base_name) if os.path.exists(kb_file.filepath): - kb.update_doc(kb_file) + kb.update_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) return BaseResponse(code=200, msg=f"成功更新文件 {kb_file.filename}") except Exception as e: print(e) @@ -205,7 +208,5 @@ async def recreate_vector_store( "code": 500, "msg": f"添加文件‘{doc}’到知识库‘{knowledge_base_name}’时出错:{e}。已跳过。", }) - import asyncio - await asyncio.sleep(5) return StreamingResponse(output(), media_type="text/event-stream") diff --git a/server/knowledge_base/kb_service/base.py b/server/knowledge_base/kb_service/base.py index 09766e68..9af5b0e3 100644 --- a/server/knowledge_base/kb_service/base.py +++ b/server/knowledge_base/kb_service/base.py @@ -71,7 +71,7 @@ class KBService(ABC): status = delete_kb_from_db(self.kb_name) return status - def add_doc(self, kb_file: KnowledgeFile): + def add_doc(self, kb_file: KnowledgeFile, **kwargs): """ 向知识库添加文件 """ @@ -79,29 +79,29 @@ class KBService(ABC): if docs: self.delete_doc(kb_file) embeddings = self._load_embeddings() - self.do_add_doc(docs, embeddings) + self.do_add_doc(docs, embeddings, **kwargs) status = add_doc_to_db(kb_file) else: status = False return status - def delete_doc(self, kb_file: KnowledgeFile, delete_content: bool = False): + def delete_doc(self, kb_file: KnowledgeFile, delete_content: bool = False, **kwargs): """ 从知识库删除文件 """ - self.do_delete_doc(kb_file) + self.do_delete_doc(kb_file, **kwargs) status = delete_file_from_db(kb_file) if delete_content and os.path.exists(kb_file.filepath): os.remove(kb_file.filepath) return status - def update_doc(self, kb_file: KnowledgeFile): + def update_doc(self, kb_file: KnowledgeFile, **kwargs): """ 使用content中的文件更新向量库 """ if os.path.exists(kb_file.filepath): - self.delete_doc(kb_file) - return self.add_doc(kb_file) + self.delete_doc(kb_file, **kwargs) + return self.add_doc(kb_file, **kwargs) def exist_doc(self, file_name: str): return doc_exists(KnowledgeFile(knowledge_base_name=self.kb_name, diff --git a/server/knowledge_base/kb_service/faiss_kb_service.py b/server/knowledge_base/kb_service/faiss_kb_service.py index 5953c3a7..9fccfa23 100644 --- a/server/knowledge_base/kb_service/faiss_kb_service.py +++ b/server/knowledge_base/kb_service/faiss_kb_service.py @@ -66,6 +66,7 @@ def refresh_vs_cache(kb_name: str): make vector store cache refreshed when next loading """ _VECTOR_STORE_TICKS[kb_name] = _VECTOR_STORE_TICKS.get(kb_name, 0) + 1 + print(f"知识库 {kb_name} 缓存刷新:{_VECTOR_STORE_TICKS[kb_name]}") class FaissKBService(KBService): @@ -111,17 +112,20 @@ class FaissKBService(KBService): def do_add_doc(self, docs: List[Document], embeddings: Embeddings, + **kwargs, ): vector_store = load_vector_store(self.kb_name, embeddings=embeddings, tick=_VECTOR_STORE_TICKS.get(self.kb_name, 0)) vector_store.add_documents(docs) torch_gc() - vector_store.save_local(self.vs_path) - refresh_vs_cache(self.kb_name) + if not kwargs.get("not_refresh_vs_cache"): + vector_store.save_local(self.vs_path) + refresh_vs_cache(self.kb_name) def do_delete_doc(self, - kb_file: KnowledgeFile): + kb_file: KnowledgeFile, + **kwargs): embeddings = self._load_embeddings() vector_store = load_vector_store(self.kb_name, embeddings=embeddings, @@ -132,8 +136,9 @@ class FaissKBService(KBService): return None vector_store.delete(ids) - vector_store.save_local(self.vs_path) - refresh_vs_cache(self.kb_name) + if not kwargs.get("not_refresh_vs_cache"): + vector_store.save_local(self.vs_path) + refresh_vs_cache(self.kb_name) return True diff --git a/webui_pages/knowledge_base/knowledge_base.py b/webui_pages/knowledge_base/knowledge_base.py index 3bd531a9..4351e956 100644 --- a/webui_pages/knowledge_base/knowledge_base.py +++ b/webui_pages/knowledge_base/knowledge_base.py @@ -138,8 +138,10 @@ def knowledge_base_page(api: ApiRequest): # use_container_width=True, disabled=len(files) == 0, ): - for f in files: - ret = api.upload_kb_doc(f, kb) + data = [{"file": f, "knowledge_base_name": kb, "not_refresh_vs_cache": True} for f in files] + data[-1]["not_refresh_vs_cache"]=False + for k in data: + ret = api.upload_kb_doc(**k) if msg := check_success_msg(ret): st.toast(msg, icon="✔") elif msg := check_error_msg(ret): diff --git a/webui_pages/utils.py b/webui_pages/utils.py index 18a24e4e..c666d458 100644 --- a/webui_pages/utils.py +++ b/webui_pages/utils.py @@ -496,6 +496,7 @@ class ApiRequest: knowledge_base_name: str, filename: str = None, override: bool = False, + not_refresh_vs_cache: bool = False, no_remote_api: bool = None, ): ''' @@ -529,7 +530,11 @@ class ApiRequest: else: response = self.post( "/knowledge_base/upload_doc", - data={"knowledge_base_name": knowledge_base_name, "override": override}, + data={ + "knowledge_base_name": knowledge_base_name, + "override": override, + "not_refresh_vs_cache": not_refresh_vs_cache, + }, files={"file": (filename, file)}, ) return self._check_httpx_json_response(response) @@ -539,6 +544,7 @@ class ApiRequest: knowledge_base_name: str, doc_name: str, delete_content: bool = False, + not_refresh_vs_cache: bool = False, no_remote_api: bool = None, ): ''' @@ -551,6 +557,7 @@ class ApiRequest: "knowledge_base_name": knowledge_base_name, "doc_name": doc_name, "delete_content": delete_content, + "not_refresh_vs_cache": not_refresh_vs_cache, } if no_remote_api: @@ -568,6 +575,7 @@ class ApiRequest: self, knowledge_base_name: str, file_name: str, + not_refresh_vs_cache: bool = False, no_remote_api: bool = None, ): ''' @@ -583,7 +591,11 @@ class ApiRequest: else: response = self.post( "/knowledge_base/update_doc", - json={"knowledge_base_name": knowledge_base_name, "file_name": file_name}, + json={ + "knowledge_base_name": knowledge_base_name, + "file_name": file_name, + "not_refresh_vs_cache": not_refresh_vs_cache, + }, ) return self._check_httpx_json_response(response) @@ -617,7 +629,7 @@ class ApiRequest: "/knowledge_base/recreate_vector_store", json=data, stream=True, - timeout=False, + timeout=None, ) return self._httpx_stream2generator(response, as_json=True) From c571585ffd7216c78cfd34395d07c1f12f95ac44 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Mon, 21 Aug 2023 08:50:15 +0800 Subject: [PATCH 14/30] optimize recreate vector store: save vector store once after all docs parsed for FAISS --- init_database.py | 4 ++++ server/knowledge_base/kb_doc_api.py | 6 +++++- server/knowledge_base/migrate.py | 18 +++++++++++++++--- startup.py | 9 +++++---- 4 files changed, 29 insertions(+), 8 deletions(-) diff --git a/init_database.py b/init_database.py index 61d00e1f..7fc84940 100644 --- a/init_database.py +++ b/init_database.py @@ -2,6 +2,8 @@ from server.knowledge_base.migrate import create_tables, folder2db, recreate_all from configs.model_config import NLTK_DATA_PATH import nltk nltk.data.path = [NLTK_DATA_PATH] + nltk.data.path +from startup import dump_server_info + if __name__ == "__main__": import argparse @@ -21,6 +23,8 @@ if __name__ == "__main__": ) args = parser.parse_args() + dump_server_info() + create_tables() print("database talbes created") diff --git a/server/knowledge_base/kb_doc_api.py b/server/knowledge_base/kb_doc_api.py index 74edc98b..ae027c12 100644 --- a/server/knowledge_base/kb_doc_api.py +++ b/server/knowledge_base/kb_doc_api.py @@ -201,7 +201,11 @@ async def recreate_vector_store( "finished": i, "doc": doc, }, ensure_ascii=False) - kb.add_doc(kb_file) + if i == len(docs) - 1: + not_refresh_vs_cache = False + else: + not_refresh_vs_cache = True + kb.add_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) except Exception as e: print(e) yield json.dumps({ diff --git a/server/knowledge_base/migrate.py b/server/knowledge_base/migrate.py index 1c023fa7..c96d3867 100644 --- a/server/knowledge_base/migrate.py +++ b/server/knowledge_base/migrate.py @@ -43,7 +43,11 @@ def folder2db( kb_file = KnowledgeFile(doc, kb_name) if callable(callback_before): callback_before(kb_file, i, docs) - kb.add_doc(kb_file) + if i == len(docs) - 1: + not_refresh_vs_cache = False + else: + not_refresh_vs_cache = True + kb.add_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) if callable(callback_after): callback_after(kb_file, i, docs) except Exception as e: @@ -67,7 +71,11 @@ def folder2db( kb_file = KnowledgeFile(doc, kb_name) if callable(callback_before): callback_before(kb_file, i, docs) - kb.update_doc(kb_file) + if i == len(docs) - 1: + not_refresh_vs_cache = False + else: + not_refresh_vs_cache = True + kb.update_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) if callable(callback_after): callback_after(kb_file, i, docs) except Exception as e: @@ -81,7 +89,11 @@ def folder2db( kb_file = KnowledgeFile(doc, kb_name) if callable(callback_before): callback_before(kb_file, i, docs) - kb.add_doc(kb_file) + if i == len(docs) - 1: + not_refresh_vs_cache = False + else: + not_refresh_vs_cache = True + kb.add_doc(kb_file, not_refresh_vs_cache=not_refresh_vs_cache) if callable(callback_after): callback_after(kb_file, i, docs) except Exception as e: diff --git a/startup.py b/startup.py index 519f4fc9..9207307c 100644 --- a/startup.py +++ b/startup.py @@ -317,6 +317,11 @@ def parse_args() -> argparse.ArgumentParser: def dump_server_info(after_start=False): + import platform + import langchain + import fastchat + from configs.server_config import api_address, webui_address + print("\n\n") print("=" * 30 + "Langchain-Chatchat Configuration" + "=" * 30) print(f"操作系统:{platform.platform()}.") @@ -342,11 +347,7 @@ def dump_server_info(after_start=False): if __name__ == "__main__": - import platform import time - import langchain - import fastchat - from configs.server_config import api_address, webui_address mp.set_start_method("spawn") queue = Queue() From c82134c07bb0e36cdd58e30511b8e7f93d89c034 Mon Sep 17 00:00:00 2001 From: liunux4odoo <41217877+liunux4odoo@users.noreply.github.com> Date: Mon, 21 Aug 2023 18:01:59 +0800 Subject: [PATCH 15/30] Update utils.py: correct recreate_vector_store's timeout (#1181) --- webui_pages/utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webui_pages/utils.py b/webui_pages/utils.py index 3e67ed72..a4aa5868 100644 --- a/webui_pages/utils.py +++ b/webui_pages/utils.py @@ -617,7 +617,7 @@ class ApiRequest: "/knowledge_base/recreate_vector_store", json=data, stream=True, - timeout=False, + timeout=None, ) return self._httpx_stream2generator(response, as_json=True) From 01233ef1a158a42558d62d653df4ea9528829599 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Tue, 22 Aug 2023 11:28:54 +0800 Subject: [PATCH 16/30] Add files via upload --- img/qr_code_55.jpg | Bin 0 -> 297712 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/qr_code_55.jpg diff --git a/img/qr_code_55.jpg b/img/qr_code_55.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8ff046c90f50af817add3c64d69d2c7e5be8b591 GIT binary patch literal 297712 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�EpT zRwF^tOOto?+~OJE1(*C!e<9H;=JGtGb#B;v7s+6W^)E?R1H{lAILWDhT!z7!O9Ing z!dlz1mwKnP$mg6@EeG#LCD$0Mw9)F$!Ikw+GUv5A18Au(;>%l0Z<@Xd$Mgs#oUb*` zdfCOQ{~|iwzRDoQ!7jw-Nh_P~WwU`a+6SZws@q6_ zw3dqSgvUvp2^weht&K=6$ z9-bSE3(MTm%Dyo)&?^)B-`vP%SqKo%)fLsL6r^xlw zghRF;fxG4#;ccCasG=|RFSOnq+RW+KT&a=pHmLcWET%?l`FPLu_|>F6#;yej=y=pP zU$Y}km2~pW#aGww-s9Mmz2TBJE<$@j$@_-uZ`X^>t!GQ*e&b@YA|hF~$1r;R8Hfgq za;~~nikPhnGf@S=)20bNbA<5|AUans$ebm)b=)isz2CYgK`(I6R-2F&ngWPI$v1DF zq~H5@JvUa8Ed&aG`{PrMT~g7@=4GM}#!K}6gSxDqVgce@{a2r9w~Q%8TMu}uy{9e&U}J{?AAXsWGuAKVGpJ@D?R;E|X(TPsd+ES3?4 znK_E4D7fCdgt+sVcigzm9d&3jN=<@c6wq%F)Pe>Bpcoy72+e4S0jD7;7^viwa-znn zZLekR&{%+K&p1feG1a^8W>>bqO>1hW`rVes(fr z6$YWeDc-@*(vT_e?StPjn|U*s>T?Vw@G$m4yGJmRh!xEuXweX8z@GinhxVWN)0Kbz z8$hD4AiR8`FBb!mRJlDfM%Gdgt=4W!?%%w6ao3(4S4J1HuNb4+iDT{gfHAjyDgYC&3SL9vY}Y8tv=FHVjw*Iuk!Tk%%%sq`)oe1#p; zP-9OtnUqNW^6tDBaxVCi1zVI+JG0UA%BnNu{v?{J@Oz4y`)B8{XTO zGy8oa8nUy%0N*i2{kKH88*LlC@dhM|O2#l$)zn3kj3+e^Z=e%bUX$wD=yt7Xp)r>p zRkhv0MJ{H}p)S2J$e>cgeG3FlAVs;EosKv$qvJn86e369@wDnyMrb9MV@^&&as8*X z*-W<$**h*9pATi;+_6t*(iJo81hcVr1I-ylct^NqT|$Izh!0eXKO@!A)b}ph{!Zdm zzI2l#G_=GCo+O>yhvQl89->AO2b;xFAe~hKu;w@oIqVfEwXe#~`FHna9y9-L z%=Tik+s1}9Jyg<;GH@-zf%4|{*r`&FsbfDY2sH_Z5{@+GipV6forUSNmcfrp^8K`Q zq@Ubx^**~KDuu5?D_|`=Sl+GQ23FsYozj&Nr@Qj=3>n1 zAl#a?_@gG*<@Auu&rQpQ$NHb3pM9)9%#OH<+*4E0y?xYT$u4mfn)ZvhffHp2Rv@_t zB*wbARAaFbKv5xONHS*M0RhGyL-V9Kfs2sUh8){dyffD5nkRR|qdLQPM0JroI%(_{ zbp7EK*$=TjtP7>3BzA|rkw;*i5p?1`(;hO2|5o=voDfAQO~Qs0S%T>Dh7;`eW; z5Bi*r)cIzpOR(G32F4!{;R&K9o+e!6Fk*0pWa%i)32>BnRUhp~l@HU(rx2N|o?;JQ zaPOMP`sF5S5qM`X!EgreS$e~G4Ape>LBm7UC0CXuL^wN;nu7LKhQZHE=_9pu;01sW z=t0tUgImaq5BvD?h(pK2^A3*3gKT~d_SDzQzPulP2Qu}nXI%RATId=*a2^YX4>4F-BlP*BX znMT5tWmNrKe8SUJJ>;WRgEn63skz7!s})2p`^$n?_a2SeJ8Q{rBesE>F9vi=z;{E$ zi1`qDA1!XWsixVOD3an2WFL%2PI6?W1OlCTqr*tHv2L(> zQcqmT`}glTdqqODu$qO!$Isl7es42F3{FN{!MgvzB=RZ8OWRX9fN5oeks8f`5*e(? z%if-+J)$Y4x9XCvnKwMMZgDv4-rJLtJ4@I1~m(KAd%jmJASQZH&B4n}k@eCDzy9g}a}W>^MeG2psfZ1+2rCb+@iI83z$ zU6Qqt)DluGLiL?}sB&xYQ_Y&Zk~e0uy^xxuUTa!Ji&^)r&~JKnOD+)hC9?YEnE;wA zX>@ONGUa7naWFi7+8Ex&Cb9#k3B$LUC<~yuoCY`)gNf!HE1SlS3+y{L0TnK3@qK+i z(Q47nb1CCVQqhSkKbpmDWoM#}0&h%0ULH_w-v%dAh!JlVrD@SW(n1Ir>1A7-?Hgcy z!0$NbzP-cye$rZ`JEQQ-Ky!;dzp>}8>g{94V8qg2Ca5?FtBE1xL)H8=;WOI_wUkp- zqi&5i)w5LFSC#7KX^XxpCfCF|sNbw$xKj%xpwoqi<@mqWOHtv3C$KPMG7%Jg8KPX9 zBAmgwe4Au;b=a$r>{K_yEoIt!9#7q^xYu477R3<0y!6>{l#4bFj7iPujoCNlXd0+o zrRkT|4lnw5IK5W8(Ot?EdAq+p@*N;JgF@}jQ0mC{J5G>gT6dBZj}0s02#@tkd+fQc zXUWgA9u1!MZ&Dv%p=N=59}ebxDwG^>_1;n(rF9)4aOXlTK5|m>n(ijjpl! zzxFTnWY(AdN%i&<>*>^k`*cHl<+M%^&d))W<+HZhL-nSyA>alw#Ik1b&;YwMxTQ94 zCQMBiK`r zXX+S;XYAKz778g(;bTs#^!{N3L!a`yPtpe*FSx$)7BcX*e;)N)2k9$M=dDKW_mDm^ zs8}<}JR?6YF)H(^?$d)z^O8gxzI2(G=p+uD*`+}+G!;|E0kZW~N*7fiB4Pw`vrgX5 zcNx*}PznAJTB$f`mZ7&0on9()=;=2L^s)DpCi3OhDSdfmfhAvHfp+l7jjwOtHZe!F z!T6X{pYcV3HCh@qffqv^1V%*ZMqubY(_H0QuqgiuIZiKJtbLPx-$PJmK^k1i>5!Zyqc(vQJ`+mQ=Cx*xfGI)Ay`g?T4evTD0M6C0o)1l!_DJw(IQw`az zzXdyv)uk1tg(QEx`7CCm(&jU@_(39Qs{CXEPELy(`*XJRw7{d}>h1;ip96Gm0x2~a z;zk<@MkrF)_to8HC|8Z#8J7F;z0R8VL3OBY*j3-eYeO)r86#({7-X9}rGtDku5Bjr zx-#N8<}-IcJkX-XwcW^SVW?$Cy1v#^3txAcNk-ebgMp4_3F*TXy`7xd1 zT;>>=SBL_=loFp3`wMTTx}RXZlV#J*PZu6Z$_(!R@>bVn)Q*w>M6K}DM)_Mfx45l7 z)7CNkS5?Q!KFQnNovVq{A$}v`nible{D~t1&)vw!%6_#(SA?iDb99}ab&eNc@THG(fSVVudo6WP=4DD_AebEUM%2#T%YPQlP9g;)V?v~3#H8N)IXyB`iEuo-K0`LG z5QDLeg`8aFPGXAt1#8(GVBc#7!S2t{0KGBjV_BOh7#FgfL(Pw4WV3jmO~sQZ@ScP&NcRKj;VSq%0Wk1Trkt$Ee?+@R+PGXrDt#EC^#^wQ z>Gh#>vqa)0NXh!6aY9zG{dI$i+z+(JKR1AIea^g?T}qyM2u^ZiUsZ&w(Qc6jq_;z$ z_;a*<;JANrFJ*=y_^E=@I7O->9*(~>806l#D&bJYQ#-OK-H&kg%TN_HIT_Z=1yu7r zs1sai$e-wy4NzETp~m3iC;@j!AOa#9%CzWJqVLxEyF0{IZ`^QDNSbmu|6S|5QcKC8 zPj{DhXyp#*qDXEdt3J~Z+ui2F0O?-iTdvQ|cvt1H*z4)X`8i|%$Fs5lHQEA6FNwgB z?@7IUF**OC!3EMzr(RuDgvae;Iq%#<0_>63dKtC2ze|^UahIvxWz{7P#=&{u3;=j2 z=mJ0?KpzZso5rkOA@$GjCwpghnGMivijc_b+U6CjYd6#FT3DZy6~E+*F)UyBf+y9* z(kzIOz$irtwtV96ykLO^ewZTdIa4$~jkThur zE0fs&pD%_|rfE}nN&WWV;R|s9y!*HaL+_FBlvknD z!_gu{Ims%)(}jnWWirlQ{>lci4;pNs*g@i-x+*{KT|7PO6Pw@0#wO+I1abwW=hW zY`@?!y%6>B1obO(N;MNLIW&Dne$^kShimm;eX7s2A1^pO`jTheZ-U@VD`tNE-g6V6 z%Y7i42PkwEKD@PO5wdR?1AAKu$fiYz*)06QSCGqk+mHS`sLYNR~Ia&w&0WS(DpZ zjAG{SbS2(y@NnkwRb}6E~+@s&=-&%i&O!Uid5`tl_R4&+tuX@X?BK=VDE@OErA8CgsK0>{G zw_dSgzKZPD7A%_Hjy9|t{f+OwV`Jn*UjOWLN`@sxenA;b@_292(a>$cs&}C5Od~}- z5c?6+QpoBlkMN+zf$NVoF5k{ZXveL$h@bk#X$WS3|EY7^bLJS^=%)a=VGIMlXdj8&rQ8m##HP4g(D-tK*m{f~jPr#%iw@*w$n&_c= z8aTV?ap=o2h9NXs8bkw6P51e~nx-=R@1c0m78~}dG8TZR1Rh8_(0^dEcEoskT(u8f z?h|@d5c3#AQAaY&(OvvhUU&SSwI339^q)q^A^@HCg&Hwmum0r02l8)c?GCW-zK5_A z@bza>qKqC!8i4usav{YGI^Yjs$Gd>6lUE2oz5QRW4*|UpW>-uBT5g2)_M>+WBB%GD zSSVik-=aUlOh=&;U^b&nD>7>VMaY%Fe!9A+Cf#9VJp=TQ(SKlHG$Qyx_SHWB2R5ix z1t6#0|ACM5mzTr-=U;Z6`riTbG%zHV38?R%{%Sg=3xq@DuGYd_SyF(>{SVAo?Fk19 z_0(sTX1kkc(i*8QvGEiEDdfS>AeC&^JCznsbcA_?vE0j?3bi-5Tm(D!QRi|o9|wB# zFdcyHtNml5PL$goVEwe4_PXDOlB(PzgAwr^ z*#}s0G2pHfGGYot2SK7K2YNCMJmoQ%dtL)xB{XoTXpk&s0Z;R}J9_>;;|RF&(Y8=O z;vhuG003a>f8%cf2?{$3{1T@g!;?1F3djUcpYobUSrdP%#ydBUr1h0|%adEL10ly`Mj(zJ2w3%>}tuT+;B4US18V z6F1KgNx1G%QVrVqVO#qAPGpA=ljrW?Z!4-|a&i-HwbnWXoCIpuBJ!6!SS-E4m#v6! z0i3>%fO2Qv0p(wXhtlQgY!IOjzpIH(g0{6B0C7tUfF;4%K)e*BS&zEP#E`?+h|*qm zwIiwGTRwF8^v07-Bin_*u;n=gfLks`6(H>W?PCAQ1p6;W7?X+krJe3eOW`nG#_8N@ zv|zN(LX>KracAUlrWz_Zk9~_EhHo435M$<-pBr}3%!ByyFmT#zxl}XK0=) z{S>*n)qrvoKvQeo9$@ZP$eCV1S#wN&9rRfL@c3Kw`mm?&cQJul>ti9Rs$UYA=jD8mAc@8p9pR7KL3la$2Q2F7vs;3S`XnkdUOJ59(93$_O0rJDX4@tIB) zKmw(#!&3OwWA~r?p!!7`pI8d%u?U$ktBGK3C-?|$KARvZ2slC5lOGyFlFoqzPUXDI z?+0Bt{e?sr4fJ<0UvJqfVBAb4t1M-}}S|50W5H1a}dVV!O8wFoF`i z&`!`?qTTM_@CC$60vgT_m`PwIh!B4jA@E)4UZV(UZ)$^Tw6_(}u)LgWw}SCVHxCgI zR^>i>_PozTy4K9QSBN5DO3dJEr^m}sc&8f>ILC9tn{Y9QYh6B&SCKuvwo4^d@o1cF zuA}SQhUh2foTLA$p1$5XtvYC6N0|p7ZF?9=31?sBD$X-H9Qp{wa`73{S}H2csD?gD z!7%uS!2NPrbUHAksmx|isdD^TP?xr{0>5B+_0vn`->*Dyb^@GmPK=8)m~iK2t%{Nd zZ_r;O+^r=T-=&Y%)P5Lh^sAU!uCv|FVf0JZKkW1E;al(fU`g0_t1W4v0v5*e0qkO< zc}* zQ~gl!-E7S|T;7#Pxf}&;)#~z^fd!B2JUq@@=m|G)|K9)2Te3_7eH-(0)oY@s5s$n2?=&9S3LB+TC97-|CX`L)O7b zr-8kQT^w-BfvOorMEIjU-Jb>$Gt}eN72Y#2)QD?>-1DbcX#%>2B*ky@>o0y)sn0J) zlz!bHpOQ>ICUHiH>9YW_S={()bUAHK;gBmojS1wmK_HOSGcZ$R(x5G#>X%0_ZZU-Be30x31(>R-H0nvlSG|2D$5I2zu;q8NU!!5wdAeTOj}F(x zy82?<1Uphsf9mq(Uj}zas~Ex_G1`|7c#Q1{U2=@PQuK&j(tZ{5*+5O2EI6_RM3`Lz zvW08(L>hvsj2d>Zt$2;3h+oLe2`e1S`GoemF?GHBpv{)l*-`Jr+QExZ$E$ky)(XaqRr>#O|SHCUW#XAm9?w|Kd!gH3}NVRtjorN-%X_U z5nEGA2MzeGX8+O-FMONjdB}hLiR$kd&S#0LM<8?|c{F`w>04XD`}JNS{6_t3-S3g3DKoyX9y!^Ud`-(2W=yXObOGM79K0%vCY4X+^F-{^km$#0 zn~qc~A1tZwD0gt*hIq{h& z_{5qEcey>JzkG{SIVHRiyDKoa@hCaq=lf9LOwR{lP2*|zWQgcenu4+r5p%;~!645n za)Y)^)Z0R&Ggc{i7ovXN(W_?yRUj^B|Yuj zXYH{5RP)oV*eIFOLz{5zbq(0wiML~4cCNenb%wFTELs&XH4*%oCN1~$v$(dTM1~^+4qBXO zhRXF*yjZweo9YYJ1hA!0yyjP0Fo>L5;1ZV0KF!xuj_MCbJc=+O+IwMUE|o52%HO`N zh`oK$TkhIK@ug^2XPAPh^GW;tOuJ*Ctau2BTfB1A(|G~({1Pn-xq0oZoK(aVEneTa z2fZeXl{hY?Iw;jJvU?4}0z-^(L(ibB-Ijo9XO`_zBX`eC7P zxlNiNW#5fWYj)Q1*F`Ub4Ng|TT;BP*Dmm&f^ouJuUXEe(p1nX$gXtTD9k)$W25_|* z%OMLQT}+ElJ;#x@AOBCBW#F6C(l{pG;>nlIl2Y!)`UhE zwo6H7tA+)O14~&>+(X16+b;{g79wY4%Eh`3-gp&)u@ul@ESu<; zhe|se!DsIs;l-%(Sa4m9g7Te@8lT$n73MdNVaaQv{z&2T(8?GIYmj~Goo`;YST z-??Ed)8ZRa%g|fX;Mzz-Uye3|k@+av2MpAkV5stc^~0#y%R*-6lN^0^&*Hn#RN>#4 zY|!R$=9SWRGzLed%?g$xV|D&^lqFYcuzy7eJL4ea+&@Fn2#K*c&f)5mD8j8N;Oe=1 zknzKl_7dcu$8Zv0VS^yUo@iEH+DoY@nh4FoqE6O1-mtVtnJaXC!LhDHnEY(ej~lB5UO->fj7H?lyufcb>V_2U)#?9bejK0)s5C+HHVZ;%~`!0&KK8 zvqlpJxvob8YPZWLorBgW4IrdIy|R7*{B7WW<8Om_##*|{=<>U7fl&tGmY`S#>cm;XaQfS={A zQS|*B8PZ{|)RWw%85z|{Pp;n8d%h{A%j)b_0x53oxY2}twr9v)G-3JeYO?mKCQ-)$ zt7&JhF{$!(u&dN#d)Hj?`#2S^Q7JmNA?pugJx;NT(rVNO{tRrX^pI3w0VTp9TG9~K zBs6L6-)MEBWdE(L2BzHM-nm zoQI}|-blJgCIxkicm0TBqN^^BOTFO}|C;{xGhzz1CA-yme{fs-6)lx==|dC$EYun$ zL9P4_*8ZqOLy;0i974-nZeWJ7ov+HpFbwqZ@3g<|zx z!r|RO&>|r*z%Zj7XTpFG%L8RVL@KG|a$*PvvAa_((J%Fu>TcqV)2Znk$>Y457ff#HwF{`%y*3u(+?l z^Hil9J(-=qIRG(YtL=ZmkK>;<82=^GYLgaXdvr)iFSm3zh^C5M1P>o8C_tlmz*a#u z{G-~_bsdQ0X7(ELPC^7!FdF(ADAKN~mAB$*ibWB(6K;jJq`20_HJ?0OR#_qBZ3hdS!EXA-t{)!TBD`p1R^`!n%>?d!OGg8@9V~ z6@22~Od>Ns__`LsTCMZ2tf$H8ms+$QdM#Cc2$;V1u`{@GsmCam+lS~FBUwgoGfQ*U z#qSZS_r34k`PB044CLk$k*38Q?JV?YBk6Vkm~y#rUN4h~+hs@h#y)BDWll=D1^`prWQ%27U`JxdwhP2`R4@AyZNvCwRAb@1riNU z&=|tQhfeGXs`zz_!+Sw@G6p2MhryM4Mt_F5ml`*vMF(*0T|>#xj=%~Vn(pl)CzkEA z<6d5YBMRN)V~O9&rMZ9{MH>I}CitQvVBk;OB~qjcelHn$R(@&$ z1s!R$bA%2(&p>q=N|!vfiP zpfJ;}7ZFZ5Bu5hjd$tG-HLCJsBW2Df`P2u3N$#;*^Gf5Rh2Zy8M#N;dwjTuqd@ywm9C;AT`B`u zmRFO%Way5^=8?JcD3A-30o``+fH)Pu2BC)TF6*%zH&wSRBpQSkjPUR5qm@Fl>NKJZD z%_(5v+_(F8c}7Xo48BJQ%_u*_xh41n_Uf$84Q&Y_a7r&=U(-3}&H_pjhy3m;C`~g) zQz`QOD?@g%mQte8@2-lByzXZ47=KcbBtp1@X&8MGBK2G*DV)dxj(ZM9J5K?S+dfe1 zVNartM<@=X;9#RB@0@7~y6r^Uz7Hk4_`B6l-&%;Jo1TedIh0}=Cgn-#1s8-3yh9bm zgu)@}kjae#)YE2KRnz@(D!sZtCRL@&P@`S~-dwcq{KE=Sn=;liS9u1cI*)3p*&)7gfNga6*LiD_!*q z1fTd9&v?7&vPn-j7IsDr{JPN#LJU50a5B1#PDB;|O8#rqPw+eb7D;m|>kZC*=b%$| z$vd=6lR~*dp2w|s31aNLbuhn9Pio0?+OK^g@fffhu9zlm48o4M!YQ(Ivv*bVMSco1*AWXT1Kn2(F;VAv2hvh=1`S+F zAf2NLU}E$HqaRaqO3u9>RQ{57Ti3wt{{k+vB6P=k9MdUnNa>-T8{-%BXlByNRB^u& zt+0@FIWeMN{;=J#qmLfi+{WtawusQmY9~MU@EH9@AaAZOl*!;QjbK8d=3Yn%Aa5VN z_w=nhZK6;U11 zQY7tFZmP2T;>NzJPD4d=PYK7=HlSEd|tqX~uM zx8+Fe$tcy(eS=-7Bjl9i+cTDvmNx3L*eyqUZ&psp%ZJRT*`0YmC$NGYo!59B864_h zrAQm9?oBo{;&QL;44qO{Q1+Ki_0O1k@jSWrWm2@xA`;-@SVO?Wl^~f5I!ZH>2oqgT zla)pczeV!D5<{bZUsgXbrdsm|NnM`X+yR>lR)NS(V|+!4(vu-?>jZd}T(r-fA&pdy zrPsqh?#J4s6{a7bx6xtD(?7#_ZZ#i5kK|L7T`!|)A{)e{^vWMWWvP=`nHAeMLlyQf zzS?%Pny}*&MuC!*94)L1?^*D#4Gra~fP)g_3Nqgl%!jqr2PAkWvIf3tQ3$oV9j&dA ziwj&mNU9$lH)E^GUA~e0PW*M&Dzkw%^PzXes=$sI(`m}jvd*~C{9I=dtj6Zn6paJ7 z0juq9XzTIur)1H~xA?{G{0K~GegRh_mKhaf!{|o!;9ChnSeYM&ZG_;Mw9&{SxnBmq zi^_IHXy9STegS>9_1FS~6DSTBu+mEO>{YAe!U&V<=CJCs{b?>rFScDLS<tu}ELd#57d(49<#QoPK!zL=&I$$RJ zmL&5RH5K)gwt_wWjq&|3%%s?6ht3CsEAA}Y4GazuDjV%MILBB9-WJb=((d(Bj&Ia0 z0=r<$e^Y|0jXHun1abO;tbQNzWm9^q{ZGMv9R)6ij~SfebG!Z#JOdmO@s0&5yE<^p z4w`s|!7IiA5lZup*ui2*J2tENyN^6F80jDMV_At$^k*gc%E!|NL8(Uu9RWM|(pVvk zGyVbcy>u1z8mezfB);X~LK`(lE?r9dKK6~{lHKs|GOc?>L%gqPPBlLnk$h^+ zHB%%EXIK$yPp-~wCoHgt(3|)vhe4@e$Pq-5m?m|(%Lw@k&)$xhfIH=u?}8a&jQSX6 z+K=YvvXgV>dl*6qR^QOVrMJrJO8kUgD>&fu)T3(`yWCBKxL^!!5WsW57gc*Dh$@Hr z%8;O!17~4=ez_RAx}SjGA5!8mj{EZaMA7F@DTIV;i5J9@N_nG;{nkhDNRo*%8f{*BGWkpwXL6u_Z+R~%UHsbf^&iMt)(S% za9nDagRx9Z>ZapLQXoMfPtR^~jV53*$dI~3l0L*CKP_)!$aij5IxoHk7N86+5-0(q zO+|1R=4z(=-#KXj3(q8$K%7uD0AAv!*&jfJ`fxj%P(W*T2OSfmxr(&n^u5Ua*zv;Y z@ztr*X?0=A*I&~Mm__B0OWL})SG6%Q`8iQ4hNgbIcBK2%Yn=-WJ_3p9VgS8#dNm0k z7f+hqbh>1~x#f+5U{@MXu0E!v3<10RzfCVZ(JhBmFkpY^Obe zXIlig#0q;dc=x~?+&wWLN>ep`9-^3PDA0^D-=cQ-TuMc8Sl`Ls((xXh#IxyUc;Ou1 zFAa`5hmxE@9=Q7}Da1LLWl&_pZ8i4@W+j$vexi$Z*#Teh2bRSNT=7)FI09rim-Qqw z&&c2Q>2KAfLXSeA5!r!U2`299I-0M+|d{L_`I;;5(!4l(J zV0#O9>^2>uWW$g~#F4F{{!d$UckCt{O}P~F3xOmRu>9kdjo*flgGwa(GDFyTkAH-A z9QKb_E@_mm`5W#s0-qbjfMap}{fmEm^tDG=u;^IN^}5l4o&D z<~BzI(mDItCH+#m^1anVBNnn@l>UEEN>QjU`E~J8{ZR-H1kagwXC&{)I|3d+K$!cx zi)lW3Nd@}sk|~XLvmZd7vIT=Qc-!=vfU+#DezJ8P1zO_GAOLjf=ffv~~5&*&m(iQdy<`>h9HBEZr`@g<0vKjKf?Ql)g{S?h!2B*|CdcQp- z4$kA5<#p3fq!kBJ|i{8Y?BY8G+y!cQ5 zIArOmFQLQv^6V56LwK_pG-eU2Wt zAPwjEy}53%UQ++;0ry*M1WUs)u6#bs+2D@yXJmYiBEiMX0!R(W)EJ*oU)o4WbJZ6}k!8=NtPbdWY=AZ=b z>X{VVZY*W)W%P}ACdPSSYLsU1#|E@jQZ$UMO)dh!>^EZiE7(*e2+>60BkdR-Dbxo@m*}{h!iG`89H2yfSR!-jo9V z`5#XY2@H+~_DiYbG9S9kdr3lDpBc}AOU4_T1m!T}jA(^m-aq=4LFDI?=kyQuAfFDiV#VhfT7 z8JQ5_E0UYyzXah#JJd$8^rE{4nx1Uk$!EWx@(r@MlW???EK%*3d1KVb!LI`fylkrF zEFI3$X|@2smYD!Db^9)5hpI%WA8&zITR#j!>|55(oLQ1kwB@h*O8Ri}xu9 z2fb7U1QVo%_^fRWipxyrhX-5cG>>ijwS$`K#eyCq{sxxEv^jd;)=sQ;OZuuZ!qw8X zR*5qC;V{M{Wdvc-nj)VuSDk4+%iPUq{#R1+B<@b9ljQ!6wMW{` zhUEF8kQrsc<(*{1zR8JX&Ay*Mdz0~6+y^p9%nxFTcL`pVwir+&6Yx^pCS*C<0Z~Hp z(;04apNizEa^(y?g|yu#?jwVzsbV6E!e!~l%)TtW(`Ak_08|eSfY-BK#Z;xtw-MwX z&&77mKBXENOYu)StN8LeHL3n)e@p|shv;zB1oRR8fJk{kH3N3<>@kh{M~8wDK11(j z6Il%2etnYF$>b;DvWQ&yE>&+LqjB9EtRY5pz58|xKsMgchLd{)5uQVEMcOGhww2&! z=8@mi*NXTAXYkh9=C?1J@k=IFJ`6kra0?F<*o*UWKaL9aBAAJ^ZbwupKPnvTtPt!7 za|;lhx^}*MF5~Ovh=!qvx63ir8MB1q^#5vfWO2t-6mAOQ@46leR-Tui%| zi+P^8nTtH1`sL*8v(MgZul25Xy$eT4@15Rb^n+@mgQ1)=77tM$-l!WZ?lJutArw<@ zFvgKYN7#KVUY?){XgXm*HDN8^iE?Me4Fk)Z@1(I$zV&$*aFx~CcZ9QSzm?2G{{WQn zRbXUq;`jU1lW_=FQen#5S8-a!HmhcK=brF=erp}A$Zuc)x%f5awbP^h=LZ)fVS~8S zhe-xedwQ|}ikkC2k|?``WCs#lm`s{l)!g;(IHg58;@kmINn|>IYv$HPKtD6qrP&aZQ>UTQ-6O^^u9Dz%eYYTJ-)RW znX^w56z?s86ANhqC_FZ!L&-P1a_zg6@f3kj8+z5sCqrR-S#_k~?OaM7D& zUWpn?yH2lRs4*rN6i8@7*6bZjpOu=s@tIkMzRHP-^3;}!H)dUTq_5Gx59mw$%=OqS zTLNuon!&i;C})Y=mH>hp5xnj~7L$A%6SKSS?x`zmCt=QcIs9=OR#dhg4f?AP)p!EM zTnG~&<{IBzYH6FK2|c=OD-ei^knU`|=YIZ$u#!YzmWSN&H+zD#f`LTz2V>x)C-2h$ ze4G9NgR5SYFcI7+3lfFO3AAzF$mkznP>xad_3-R7SOWehKHkiRVOu}3sE@lD)1G+f9Tndhp$+MHS zedG{&eEiH?3}y#AB#ZjM#f_Uf>`y8XA^z5vgds;3Fi+JehHSl;r2siU&8K%+yj?_Y zQn|yeqT=I(MXi?7anJAzk*5XgPXnwx)fC!x zvuH>Hs((AX^cXS_b}yl|Km5MI+YhVvjLf6=s^86G^U+5)cIbnZ zn*whCBCfUfyU8iyY8OU${`z5Yhs&jgx?+W0nSAr|Cs?NZ3^u29!g;VjrJ5vReE>|n z08dST-Q8TmylW#RKWmu#nz|glYu5Ynz%^nt&A5i17WyJr?t&AeHYR-{b+3ys8Uc#SWeLck1{KE$8o+pzi-8W&Xtw~0@WVe z)3{S{h;)1}d%x01)GlCaRNdJYP*$A;q^U!`o!$_aq zvA*w)K|1FtH_xku-xM1<7Si&tP@yZmIYo9f)qA-T$fPQyn-RxZNmaP;q+7!E|0*NF}Gg%G%cl!EN0iT-LMdu zXYo4HoR{6)%41|tJVhl?ZI$|ZIW>}{~5OOeQ(<^~pfI}I_Dfa>J zp60(cTX;{cSw%lAI!S7wYrUX{y&_j{tNeCO_3?K*>4`Z&=JM)J>4P^m_1D%lbJ<@0 zLGMKX>w@UeUYbVWiWl@qoO*$ct%iTb9?$3O^-^U{6!!_MmiBxuYX0>>G^_*}c*!KB~2NZ;>g{{8|8a z!X5JSW%jzTe8{sv!p{lX6jY)q2eEj?ga%d;Up1i!+?KExoyi^y_Gv01&V4xp)<5sG~n&&6iv+ zWH~g z{unSAX*!ALzeU^Xsn$icqhX#iwno>LJibH^u|KnlOSNXEf%Rrj@xWiPenu7CZ-V{kREUwTlQ z08K^JS+MxgyucvAr~6DN3(at{^Hky$it#d%mlAG$;nw__oql|pKrHa$rJnjjq9FJP zP7e6ym5S>HVkffQV+uLVm~HrEbIu$;1$p!4&5_rf5C}y56#QtQJN&+u(g=54$yXk8 zyGiN1+4b+gv8P`FP#e@dpsLenlZfy{|mW-&KAN*BK(J=_maYX zh%74on*H(L1=z_zIG0>d@)nLmRu8lQ9e_~`ycwL!tP{&>Fun=+bj*9YhW7|I+ewy` zT*IF$+ff9gQjjm8#&Lqfqiny!3IE((8+s!GR~Boa$(WRq10a}bn$_mp&Cs&OW|z?Z z3XQXOt`}X2ZMks-7d`SDWZIsSv0zqK67?u*)o~ypLs*)39=Oc+?xW1)b>y57`Fy_j zkDi?yDY0CjmD$`Wkx*k^wqFt68z7EnHY9#c1^86ALMNN`%bDH)@;0}JmnS=)FaLeJ2ZYdTKTc3Oe#J0(_~{@JT1^gcnyF@m&Trbg(sz9h4bdUIgf2!e7Yo{O*g+UGfvgOh!z5Wb_|k_0w+vZech}Vl-H1 z?s2f51*y1KlZi~n;%+%L@8a`Zf2OutY`wO2(DpdRz6lx!?Kix9-uEGmof zSYB+)V=PbYhw=$+tNq}9dvgkKXqz6M(plOgOth}dmIGAj{}zvY`{8Nr@~*Jtg`2;v zBr$Yv`!Y&5xP2c`I%J)r9ig~UkM|Hg<1#Ohpm87kvX)O4jE~qix7FVs4&!*pPuPCa z^OGgK@$-wkDhRwQ`u`$HGx>kQFmLrR6iDz?nspUru6uuCEujt-%|gg0)QGIMyiYru zC;BQ{CLe#Jt|Fc};S!HTtf*A!YSmH}0GZDsDJR%y5@S?Eq8}x;JW-k65gnKa$5XX+ zYHN)yU(SE6eCwjWa+%N$g5|*}Y!QJI;?5}48kt3t112|B{&>LeCX41R{L;?T5v#2f z^>``zKmznJR%|cLb1ll&v5)mlE&6j9MXtJ6$y^`)F`J0E?GuClt#14p3JQXks(=m> z>`*~U3@nk_Qg8&7F~pE$u;O2(E}>~+Gax57`xhdhW`f*)W(54i&OmS(^8df=|D7p$ z&QMKWM7|5?R%2_;1!N0HfPq$6YDI`R17OMdKh79tO)hv2I)VM=s84DLtiTq)Ue z3WIxknVX_^6VIb-O@jB1MOUqp-HS*wgQ)0R5%FBu)zkN61AjqI1GSe{NhKQg-fTIM zmEG{JQ#w|T$mUD%{>BE5Xa-LWDVA_R)i$G^qq&o)6fX0r8H?2LYyPdfUS=UX{mPAR zAN9ywcw%(p4cyXYMG|Hd|>^uuN09}3ooD|b5zex6pmq4|uy4{#6PrG%H^6mR#|&zb{w zU?OYdl)Xcj9T1_ih|tqJ<&oWbm>`}2av8Mzl^b}2;7$c zQtoR4T5BvB1TH^-(N4gfXFCT9vk{j`V#1IiykEq^i~Z+3`Gt} z{70YXPRmI{G>1@q9x__%U_qdL;WkBfk;bpN3{Dwj*30fOH;b5L+o0p=3-{kD z5W4WG!;nY}F$P0;O4X;?P&9}eK-Cnv?BR8*UuSloCg)sPeB5)c->;xhXwit2S0fYu zh+|6BxQ62PFx@A?Wg9^g3TLp#klV=Pw#-5#M{E&H`L+%x8 z3;$;~Zl^}&bciq8Yb>rne;A^YT#W1%Lj;xrkEQ`=y*Tx$`C>zfBzUoTp*QH5ucCozq7n|urAB(7dNiPw_s-&E8;C-70b*9HmW z7!3rj3EmpMSw$RSaFmi_dYwou`L7o!y}b#gclK(GPp^v)-TNcy{y9!%(vmBW&-EZr zql-OfP!HWF4%$-qE`99!vMBjS!$ebEOv3fYj}^<=_nxaF_}r@2esD-T!717|J?IZH ze%r?w;~17sIa~ZK6w6#^^_#U;vUL?xxkn%2Rs?sAR(pAx#;lJ;-B;Fg!tMVPM-n10n19v9+l!%j%)ixK;TBzO>FKj8c5vQ2WoHM0+N# zB1OHQ=&Cw4=bd!#S=44bSjZXPiMA9`z|)arj3R_QdOA;jBNXf;$=gi4>`WWi$3A5a zHS|0qW+p1$lGC2rE&GCvT#Q$nlP6ywBJM zM7LWh_DD2F09e82Cd{qGuP=4e8T#{{K^x)n)5klzU&SKTy z)I!gh){*=PRMI16VW9s9MjJ+vA4bpYc^{)hG8piqLq_$39}*M%hQbr@LyzCCz?lRk z(u=BPwU`cS&JRqVj}y1prmmJ0Q~uSJ>=!K({n0(I+EDm`nq5By0|5!V9#l8o2)3iN z3#hD(V9LHz+8G=qs+K2X62smRXB7V`P}AZA{Uf2_`o!$)k0F7hBVo*W_fvmaz57t@ zaxnQOAC?09u}IOzl4t2pwYI0(8N;1&q_EOgag9AQU4P>s`6T$(MnRr%>dG~@ zLJ18|AKX<;B?sdA$jsnNKAI`f;0z@OIMH7+ zj>pY0j(T&5KULPc9vZsb+18QwjqLE@m_fWoU);f6xe{SXgb%nnUB`sKFLeZ4?A8W_ zn%{|pu|&4|<@BzsEdsJ9AMh5flfPk@fkTX$>opr^aBVnlRO7s1JY47Bw;0wkrVDR= zS>sM$$#=97ERLJ+LjTIZoX6nGK{wj%90bw9drsbgp5GiyMe@ntx9cbo!CcCPB10o0 zL$Aa?9_(2-`zZ3u6TNGC*99ML99sU93t^3N-6-XaD)zv`2IBX^`5lh5ybP#XbMo>q z(-76bD*YI6WddWP>GyP>ID_l}A$SkwHJYLwOMXu|Mm^1#Nj^oa8W;{zVfB{!U2y1M z7!i5KUHnPaF@gB6e5VC)Eo_p(+auYf#DK(PQHt+d5YR(A)kl^c1ZU>7KExEhzFzM- z=k>YF#P$c*Q=^YV58k>2h6o*)p;rSK93UiME~iw04JS>njz-LY9yX}nXR)`x{Uk}f za@QC8B>QM{buj&l)J>zzpj?v;jh_4$us^PUAsMCgB2NO~r>8GHB+zU86OvB+l=?;k z3Fqz!VBD~q!^?Zj$ z2IK*VsK|k2gLR5t7o+P=@>WF8JifFyi}ufd$0EBio$BBZS7=(}CWaLFfF;(1r@h_I z;LzjwwRatj?L~$bLNdzT%hC7hXK>lEU^agW_HF7*9AT2Yr$>iWjp_(~zF{Ww(LnJs zCP#pYybUUT@!o030JXV^C0#7y9)E`z><-P=_qF#Y{`lMi;vjeSYmN7Be&S^-kae+l zkip(Fnf)bF?@0EUBv|hwx1g9Yuene3ilFDOo|?a$9Y0c@W^(@YM;>HOX%{?A$_NBU zT9g1Xl5$1BIhdh_$vjtYUG7?@`6WW?*Hs8peVnWw)`l@{qyg4P808e+w5hNkF0oDc zBg^f-rV?fKjQM$(oa?6#XH2i8#2uWWeH>)l%K>i*LhnTSsil^J;2)KE4IeJ`duMK> zY{AuxwKSGx<;#?=qqT$+mRr>|&%ro_6@%T#)9jW=Z~CbO9UQrt(}9H9Fvc*!ixjO` zcZxaHn1Wi4?Sf@BP%wQ4JT;4|kE*Ye)<`2fA4KIi3_R^xOodNzrre1C4I{<5T5&N= zuvO|5P(PdEByutRQ(2H}+H+U8^&km*pO%uJ>Itl$hC(8~CKPe|Y~e9OB@mN&P`Dck zidvAZBbzxSpf^G#wruw<7>q0Xf##%5+q~;S&x(Htxm=n$v@6${(y->PgDrXu_GX-6 zN00J&kn8AAqH1+Q?e~}EGtP5Gowiw=ZOIH$_@u}0M`yd7Pg7%bBZ)y_ZB$#v7b!82 ziZx3-_o&+doke*0O*v|aiz~^r?s+tKc<_n7nh3G@acstH?Md00wgNj+)pr0qinbHi zqJ}a?8AglExSWnu)l7EO@Z8<~tAtK3>P;-bO&){p#o+`t;uIOg8ELsR7s@U%ZDl)A z7rp-OV@}^)-|LsSTzz6@zK(Tjww73GAB=gMCx7#9MD`(Ogz=!j8$>5+SwmsZz)n$R ze2ON!U2=WC!d>^as!WkBY_U*pIC0mM-O8z8ZGsg3IJq2oia|l*#?f=$yn*ERjH{5DT(Nak)uOh0h)aLpwfUT<6*-suhfVR9{AD{N6tr>$34c!1 zX9psgfZdOSR%$NFae^Q%#2OO>n`u&=?v$one=f;d8;}PXfexc_4h-HQI+}5WG3MPQ z-|KJ(&ZfPAJh~3&-Hdj6J92eMr9AwN_VaEr``cypwlRx)qh_2LoGz?wr1pz;LcRT+lI_HA`IBWwYyZrD zD;nb{dLWx!+rBaaOasy+U=^{VS9XQhk+t^b^hzrg05y}$p9mbDqj zAe-Ru*A6X<2>E@ZG{3Ezb-NNW$c8qGdI4(&!T&EH^h5S)0x$O(rHmXu(cxPaEOm;K z8eL&t;kI@Y8)LIJTTwy(($I8nNFbP-TNjSMhMPL5G4#K*wt=<3ISSB;eL=br=tqFW z{eX!8`)7a%u%K6U^2aUF;+Jwxt}8@O*AXV{+Zt`xUbVL5vG59C@$pM9QHqTYWOtYoHzf|tS{9epS% zU^2rcE19a3$3z>RYD@lNf*^wLqh>vp7W-j>jjDx9m}A$)Y8SfO7$eu>1$GEhFOQb? zU|RGsxZ&{Iqpy8Q_=`XB3{%HsNmanD-eEziBK{@oPGk>ynoR*0DX<(B-M^Bj#8C;7v= zMUAkfDhFM$TFQ_Qh?o5QD#f6vgaxU9;KAU&B49zCOyl9nrxF7?#}lnjl*>CcHjH0+ z_ML-xQ{cRK#ljnPO@ikL7Ddq<4`-)IPjy&RO=wzHSmcmGJ*DBs;ut@Io09@vS8_x5u0f{lCCWuuhF zU&`Q+CxI3q;Z*Y=Z_cQkt8m^x6QNdH)Y0|Y1~=(@B~~)7FHgg?zdZa99 zFT@rQC|N^js!U>t+z;_5^lh2#^#x1B&ea3<3i|FqY5x->4vtL^Va*q^c6z!7VbIA!i2H6o`wZ>9t5)tlluHz-ve~9=qXRUp5#XZ z7m}@$rPO>G_07?nGp3MaNW}S3Xlr7-I%1@%s!Fov52zdv24*1OUvF^cX3BJ;dD-@N zBQCTZCnfVtz^PVtj9Mv2_gsWnz!mBA{fOaYi?Q|7pvM!(&3H(`ust0N& z{z8^OkI7l&|BUmT?*80v+5cP(r8j{8Rf!0IAHr$6;2n85F!U{HTG&l+Bm=NH1H`n! z*Z)GWN;JFw8D93kYr%7Y9sB>?bDjU6*|?ojf*^iR0!JX2Rph-oaVp_pTtK-(^hvdd ztXy&#voDYZ`_@a|1KXFz=t8_hX8w^pJ=cG!Q-@T}r5ux>bGHXCtk9u6QRkZzzfl?l z+WBn*cVd*XNKImliD3xxq;)F6pt6d3-_TDyw28|8qe&=c&^9#Jc+;NOYo>U}@R+xP zLHzSCw;#z2N!{LC2ep&Y73@s&KmI}-MjfHAUu8iQ{&%0h-~NwSvcju;Gk^9nkhiS{ zk#7q51@pf)=@qC5v(s1dKZLIBed?Br?ZG8XkUed5%tckYAU8kZVnlwT%w|)Lzse^z z2(10)#l_)>pQ~~+Piah)+yLtDR#r~$)0?8PaxrTQk*d1EjEj~JH?zB@u;2#Q8&t5#b&<|a>&>ZnKLS_P9ERv*-8_5a zU5&`xFGzZG;R+%u=W`p+X54_u!`F`@Yp%o|EsMAyDi85%b$FpCfrpGjUstT_R?Xvf zyO}z-rEs@=$3Yi(MP5QxnBJeg>X_G|dDmc`M>W$&N13B8JWn84h9oeR6lWqQP@i8( zze+n`Llr`VM$TP(4==H-vVpiOjw_}R-m}2o%T`T74`Csb$$oMv;xzI`ZWT1UGzbzc zDA8!nogDJ@-D{rr?+z@w3%k3%cIk^S7b$Fjp1KPj6MVyVpPe$NW|?wnbynaME2Ss`C=@nON<1GvJLEwxqg|`)E-N3i z1l^m@=3SYn9TH*A$>Yw9ShzVN0(}OdF*X%nYswt7+(-`JB2CAVt75PfrxfN(&%p=N z>A)~ogH5lo?7dk!tLWu&B%Gt6di_Ptl?=0=64a@Ekm40C$xJWFG;%or)}UJeSeE(^ zplNzAKqj}Ei=hnuaOSvW1!uR0)B?kAC4=_lMh~l>ia!2vGa^SXW~jSp({*%dQkqmH zXeI@*{7qDE{$^F0PKrJ5n#fNg(?~NU3Rsx92sZLDihtY)O+JDc(ata{Tzo)FQlb%p z4?(gb4eX}wNMQGHZ`=`gItAmPJ&keBU7b=N#9pHu{R$3OodQedMLI%PHeFY4yw=Ez zD0#w&zhJ2bDM=mB*!PgWVI?bqJqLFhFcr@IMg^`TD?w+GqFmK&Z#DeAcA^gPE_^rF z*x-=+VHy)W>+L=Mf~zjMZ&{fLB}q4w*43ta$u*?KO>?Sq9D@9ka)nvgeKoy~F9&>@s-PEBJ<3P^lok1_I04Dx47A6+(0i|63#jwEt1c_-e2ZCcZFLd z%|P;n4<~?|I1K?V<3K@>i|7xGyr@RWBa5(R2iSUvcH{H2ot@uS(yV+Z!ms3szeqbd z^5k>3MWhZWL4hEJM&G=c`;pkTQH)W&xt$WRmhHp&tn8lA>mKq@D0bfkg8cLGj2H?fpp0)-*Wyu)*A_AFOFq~yN zuo7#s-8bcYo8psw1lYpWwNl^$bpM1mCMF9_`VlRA;QTrbE#uDxJKLIU!<(2*T#Dbd z9+(mRrn#7zU&~#^JO*{v8w}2mBoz4{4q&>w99 zt;Euq{jS&rk%l90Y0UO$;sp7%g)y zu_#h_;luZqa!vSBJ02<@&h~37TEDB?yJeEN86idQ1iHld}Rcmr!9^WNbDn;v=1d*Qzr3bh;; z^>g*b$mIyE4Un<~vFIvI@cyzIO+bx2HxA0|hh;7A_mWFE^Ar-5{MN4(D0wKQ-(;Je z=Yr|4{J6$(`%Fx=kv7r}&H=VO37Iam2-Au)QB9Pes!Mc|ELW@^uK3~3rCV$v`s&zV zgMvvW!X3hxl)LkojisSVI&6cm2K1o$khpJaF<@<&BLn*qS#*x^jj}k`V9p_VE!cd_ zu+Eo1k*XLl7{%>1P4#=zcB(gLb30tvA!KYVR;=lJp1Zl>4Y`NX587EorEh3Xk`cpI zG=3z5vmcM3oWv4b-X_LQM#a(0%P3!rF3UCCj*sP+%LDoMF>e-uw^blURpnR(9O}c- zgTOOe_&|vmNerL&Fc5@_dIc1E1hU?Hm8g#q*?ffXk{SbsE}wS5q{AD$I^B_=gL<~~ z!M=l^PUz~xUp#Y`2u1Q?vK)Al>tH%?N=S-gRS%%&#!}3e#8F&v?&8zh#-{6P0{ex+ zj;uQch{i`Ers&-;{ne@=Q}~x3)7QEFtY!RJepM~^_}qd&giVjr3@U;PxQ?Gxh1Kf9 z6|YGm)agtY*glzf*)I_Ho6shS4M`q*Y(g_zP$)y+|=fr zRB8a|qh;CS&2RErWr^xNU8kHa74N<9_{;O2Ex3Yg>Ou>G#yfp$u5oxh*qvjD@|}4pO66UZ+MfDiIKk{I|JPTXDO3xMx9L|?{``6dh^uuHkd@6mgYTT?}a zBXM^C$+}u^#Qy1awhM&>ergFE}+OvKZj7!bssYFQAUMH z(ni!`;iv0h=h8HWX<(Mq`@k;6uxk@E$+sw8Z`T$yN~W=umxDFuw1E(l>Gg7}=U;A$ zg#|uL-b)o&vX+JpVsImC%%x4SgrmMvt~v(ZP!afA?0?+6>P!P$0JQbTbZCevBjura z>}vbs=DCppSzt32A=n0@k3 zyr=rLxuFC_^!h(~8+bzv3#0dmnf-5XrnW5i{<`vYa{l;gm4p3qiV4Uoq&G5ysJdHq z?}_7WZ;HLvTbXqM*C0Jd%$?+7@b3aTfTvi7GYE)TWOv=#m`tC0_XoYy$lwB8PL^$N zisDFb5)^0Iv&cTOgkW9UcUs?Hy;PtdR)xv_Byr8IbHz3~_xzhk$>O`GUg{stF*xGE z3>yZ*-^FfLy-fasYzj!xRy#I?8!U7fL+`oC+>cJ%;a@o!{^wy4&!?UGy?>35*u!LU z@N=nq=$$Dr-WOm*LgE9d;xbXi>=KcPpW*?>TQE810CjZSN~>hNEg#_NepzW|GbM)xHu!-*M*L=e&!@ zut&LRTV1CBZ&VDgPhQUEv(c^5l^{L*4V%{&6$zU+h^k85-bpE2G&ba&WRg_1tT_Hq ze&pyu!frd{R=xS}_%6w6IsU#mQQplkXc1xa29u<5Kg1xfR3vBdY7wc3lr8oAhP`Dq ze$63I`|RKg_P|&9rU9*G z$Pw#J)*BI7ApV@QlBc9a6iM*w>1*86;l_&&TZr87NTozennAay&@`YLJn1xwhnvrW zSijte`=`R^?02(ea=Z@VW`M;l^7~J&#d?LYnRC8OR=zBhyTaabX%;BATlxB&d9C{6 zK^E^X&Wa}rTQSvL@O+KJK()3r+=)L^p2!;Mp3xYT4+CAVO*zh5{!;DvY#y@mZaNx5 z7zCbdqy^iO!{^fX<`A1acBO~uDHidNoL)-YMhQgdf1c>yQ~j?W*x&E}N7zA8)O=tt z=>xyP(OXH1fd@#GjOBUO8;B90KfZ1Wb_|G+(tH@bo&4axk%?-g&UWIq1?f^7zL*u; zXHc9>%KWBK4L#f;%?rxTVN{g1GIwtPjFU-X)&_U)eq`qkM$s7)odIP!cHDQo| z#A43qF=4gxsfS{Hr+S+2}rD+i+Zt)WW4Svs2|`vjYwPSuqp_XXn)|ZRm>c zAD>AreJPVnMaQG zt(`i*`;J__Q>D?1xp{XoJT`J`@v-*5AeZgrM#AMbunY4jXp_Qdp7CC(Oz0B{gSQU@ zTbu@SP#=D;J3ZKWTP_s`zY_(ym8&PaD}pB6V(^&JQxMnSvs~TYe1K7yo6O%piov`H zs{idCCDwFw-gVC7d0d_7_gSmYPu(c0GY4@HzbTU02$O}iG}FciPzD?IWpJ;2i&~-Q zcd7=Ge)NS+_1_pAWo5mX?PihY^>n15?~0WqI4{rTC3hj}YuXVsMHH0HXj@8hLK91G zXA~PoEo1J5Qw+Jt$LLQm{-s9~Pg6)luHH)vN52_`(<`o2&s=xH23NL{J#`iXN|dY~ zo>$EJ)I6j9me1O2?kQ&UvRlA(Vm=FLqMnv?cq76WrKB*#fm)(V_mPqFEd}E^kKdPs z#zp+i#or7wD=Pa{%SN8A-#nX8y4hU2)+r4fIQV*kai7bj-MDaDzXBoN9LD{lhHi0s zMsS<`>rY-KKW1WRApyxIRf>)N6cf6g<=qG{(wO&2Y~2hw%!D$}+}lS78aAf8l6+8I z`@Nh+S|eItOQReZ^-z#Vny_T>m`pZNODQLw)Hj#NKZ6Ob56jss z74w@57kptmC2`~e->4%SAqrE^wt4dR(L^EQ@f0(BZ-V#5pU9!st4uT{iZn3fz?JYp z%+!!Wz%EKl)SqCm{>BjRuayd1wJmmWsGpH6cOJS$b}MhryyBYJ_p_2as7v7Dn)jNl z@(XU>g@yDzH10lww`QsdMTtXiZij>|sRdN^g$aB>$;Z4AO8sV!7mHGjg^$_nYdUq~ik&MpF7yRn^LrPjcDuaz)4}g{~Ulh9htV zi-7lWAIaN{$|#Yc7%wRqsszo~R+QR}ZN9Br=E*h^K6<9X^7v6vD`QLPT&1mBJRS~{ zp~o>3{?@ps%nyx1B;CZf>Xim~^{VFAFMYo>etG@_miyGW)n?3_H`#gCH~@oz%G5Sw z_s7M0*ybDw4@Biiux`*1X|Fo*Y+0gQF6iSiwyEaF@8Rj?9&|l`xp0io$8c|bBD~^! zyxQkNC}NQtSuek-`WJEwhfQ@r9tcN$S=E(~)$>^E7@V{?MjU3-Lp(^wKo{2=9KmVweIHot~4YbjA^WvhMhd7n0wS>C0oJY ze+W*7ol8(G{JOknvP2_9(s48kKmiuEa0lY64@=;scHVkvpZ<&(g#nSWtUmMLh7YqvckGY(4*$an6wB`C!3EUh5$jaM`Q!i z$mR)If)7+Me?HN7siDtp!)n?2>!mN7VXGNF&P&XXC+Cor|-{iseo&ZC+ zJ#7hB>-J`<-n7irs<#}ypFm3mTi-o8=X5wl?t6OW?2of@{J2wsUsx7Rg(##2!+&d@v5y(&sAb{?9E0pa0TBYttc7SwTl<||)(2$$q6_|(%6y3({4tbw#v5*65(bi-yZ)n0Nv1zqXoX;CPAS+Ln7ZYHg1SaNH1XA*DdBKl7PmI2r@98@aT z6BSrJE??99eN36Qp)Wif4i*xm?WV(Kt3i zWnGXo82>flcv|%Quh|8yTnlj%%dQ(7qOw_xA)%iJ;hw%wshK~L@4UZYX_A?>YXEd( zt`61lxLdG{@Bd((b-c@3`u@nmSY>3lK@k!LJd!f-4X`uQ0vUamfV>$Rns}9D**h%U zUvivs=Q_Rm&E>ePfw>FOan}miU$#=uos-GXf}cVg759-)v!X~J*tCt`bTVh$F$Q#L zSQ$RD`6KzCKGRVb*YRisNHKN)HxYKFjjEF)cUnZkivR3~$B(aKqEn;^Mz}2ctpF#W z<~Tt+{6}4q2MTdhn}x&xvIZE>qqwpqwJu}rJrvLUjO&K=)vr=Y@qd_4+ettJmDsQB z$b20e2qpypkiYXL4WrhM4O2Q)2QQ%_+6w_TZ(2j}qECtb?4s!y?uo_c1rO`^dN4(Y5DO;}6)7eN+1sH4c?EFG*fx1U-+>80-|9o75b#9Z@a19Ku5I6{>p})a zjz8AMR9{LkLTZDRLmF(DWgOd1L3Kadk7KZp9_Sf&(~_OB&B!<;(LV!yB^(FKeWonYou3x!KuM2Rr7`2$C1#l+ZFyo`B;X=z^fOZS9=kQffAsXzl z1Z<@rDS;tIuY&QY(3pt2y(6;-T;?4@qGIjFY|}GsdP}~*r4Nb3ipH-E;;v;E+)_>3 z9|g`mY&DwNuN=qW>tJS6J7_#WhlRg2l~S&uZ+{T?>}#!Au3i;dnHmo4&#rEBHf-6# z>vb6cUxX~;G?7^Iz9_(GZ!LQdI_h)Lmjz=k7BR6Rak136lqp4O;jv9>ya3Z-1z0Hd z^n8<}j9HMq+s=eHPGRrLe~y5HZTdU}X^nB6)}&{x#wZ6-Hj zG6uK;f2bUmA}-*8&m%XzCfGa!^jd*ZYDpDz^nYOf7K4^TpjmUZQ~2_FL;sN{+JmpI zyDIEfjBU%_6X4f1Y-j$DP5BE1{pUii%SEXmLKxG?Ib4)czz$HM9r30K0ZqO;RBp<1 z21hH&5c|xsH;1iPY&A7XX&7lc8Kq(}VOL`KTtqJJ+ron2;xQ>nnA2}lS=t9b>cOMJ zkWNcT2KLH;-ZEyIi@_!OHgGnU#y^Gs^nEo;App>*!_qAH4)ToKkN@{{eMf`y{g$O5 z1Hsqy{D>8%rySY%a6gb~?|(xLMc6Vx!IZ=9Y|)qP{ZAnhyMwDOFsXUPCP%2#8OZ&8 z%d-+{QoTnChb;AztMsJ_BP+SZ)qyWqE*yP8(qui)Zg_8vP;|?si7|}e*@J@vp~*X? z^BASlx@^M8VOdhix+B>C!eg`8cnOF4{A=8TU&k+`Vg;9*|FCUZ-nv$qJX6XM&0`Tr zAmB&^X*)wo%(;3~jw$W!5-b-y-a!$_^dEx4s}9vx+O z5^Fc9^5iIKI5ax^NJpf_`dfoC-;gX)f%zeuZ#2vB2V3Zox~!o=gc9s=+G%#_h%9u? zdW^xz=O*ZCJHd}1n?mIphK^$;B3=v`Hu{{B7QGtB$pK#KsxZiNb~1VZJt&i4P4%Lg zksPoed5q4L@+cFojfbe^DZVZ7cv^n@(@m~{|N8kQq~+wl%;ncVM|O;Xg-WI0;iC;Q zxZ{Ll&jGree#M^N2*Mw4tgeR*V(1}oqh8*&t@O%H<7wkBXM%^gSTj!Jgssr3$)M)2 z6LWf}EIU109lKw-fBb~Wm5V-Y(nV^}DM@t%*uF~tZ1f^UesS|Tv5;&}Y$do6kv&3} zVWi7X(Q|R}8JXOdgkmqbJe>alZ<;%kg;I{Rh_TUWgPVKhqWsPdqlip0q09{E1UEQe%hoXb?RKr^qm>tJdK}8$@cl{rjw? zP?}0GbH+)Y7T0}NXOu&)0Mj1<%)dk241X$_lXCPHIy0&Zc|?UmLx9u3BzzWd#`CFa zaUKlb<6}r46l})ZJyDk=^sfAqN|xvU!qu0@Llymhk1UgQ>^q|a_mgN>>XdGwnvbJ)H1$!02iwP6O(l9*;IAVmx>vu_U^Etvf$a>8e5G_(9o3cR-co z%L@(Lb!mU{;vGBpuIL3(!c7P>uJ{DPQb!PfX^g5;otdu{XsPrwj6iY^?nxDv$Hieu z+PV5&+SGMZu{Jf;E~@v%=S7|4ythtgY%HWPvr8Ew%T(cHj$no)S<{RT63qQ;FJspK zLgWd(xGbPI3k(wRO@ARtdzyLh>Q~_xawpcgOogg~zh=bd!?O&NMyRL_!P7~yX?Pou zw=mwZ)1Y8`E5U(;W-O5!YMTIpS{4`W_C!k^{z<9&R*B7ob&7!_cR@w0-oa-MEs4?> zHlH7R!HIcjI6^5nH3^i=Sup9L&?Piar1+pAt#Od~^@GiU=|-vVltNOfXiVf!z#A5Mzm#nYq+Xjg|Ae&f>w4>}*>Nk(WT4yq;6e43fN*7>cXJsu z&|lQWgJ+e+jK6o8?A}!98bo#M^;GyBr#C3tu@uhU`0)=~bb_IbV)zs!uDWdBWR!Twk1zZE0V@ymZoRoqs zLEB@R1Gh^Mmf%wC7F}Lx7dutV*%q89eUe;8COqmBG3hxQ1R;OFEhlTbIHRvAD9>S9oG+ z^k|BCq+U_R^2iFS1@{U|(|gF`?xM?}tXbSM@6iJ|{z%>;;OJw_`|HGF$)TUeRx1|+ z4*Uu{Se32%F8}d0JMjyP1l5lp7!%>D7{`O|F*~*{_BF+Fdog<>n_#9w5kMXVfCO-| zo{QS>~j~_Y}pH~YfvAYtt zO1Hbnz@$x^#l1=1Y~J&X-Gap#^QZS&RmOgY*7y4beCD$=FE7psKA~}`6m^}VR(jI+=k%+!n%$=cZ((V#B;pg{yF)j?QGfw z{}7G?>6UX>Z}rY8-F%*P5SJK8(>X(hGjkC>gmL!SQ|*Y~b%^*XIeUlNC%xat$8RX-d0r;&}$N?IP#%Y17W$jdIyXq@GzW$=0R5=#~$8K#;u2FnE?H z>B>$Q1p3BN=w^lx*|8}mx}}DpnC&t{h@%D$7FS^o18F``w-}*X)70oXC>Y38G-gy0 zpu)ovcC_6;X;xq+_A0*jl@9Q;&GRp`EZ_ZU<;QX7aO)Qf;Xo!Ki`jhQQ^P+gV0+um zRb&@Xt%iQOo=Q`;h&iG6`GCY7hDBMn?kSj7L88@A|CGI+O3_cP4$(5`yL{N@v;X=% z{NLZ~e@FgzQUA!?9bLuOa_`&hJBymD2BLTsiV4T2$7)A5&qm8cerB zU9+YVZlB1<_`@8aU8bVm4|xAdD29Zw__ zc?y)$#|%f}fw;jN0t7)UL6R?)0?KGrF{lm3AjGyoID3t+$KSQ_Y=3LL?18+avKq4d zqouY$q)*}ui>GV04@N*C9cd#aR-W%Bx_$NEICPv3Igs4s5q+FdxUv5r?(n;Oft{I! z*3w5fnZ|?O1b&wE(g;8)J#IJ?R6Ts{>F*nBhwt1?Dqmn%s?glEIE?cFHGw!U1o4Z{ zUq~$t>9cspltt*bSFCZI-p~HKQ&Lw9hzO z(*4YS5?ex$uIx4t$)GaJaKtnWXvmE!H&KzoIBx=5_nSrg9fVuT9!O{}#_CnCPZ-?j zI}&%t<4srWjH8#X?jAdfo0GiE;uRtJ`?l8rq}{pUA-|Jn_AS>0O^%O`%3`N9UcUFM z)E4~8Ew#BXu2}}qZB1=y8fS%IG$kbdXb?B6CCN3~;#4N9U^I9z1U6DoN?yB zO!V}$%CKG9lzrE@ahx*5RiGsrad3oa!H^eaJ7s+6*Oi2QTFmkpw5=axA=Qb@W$VMT zM+9ncvPM}V%=eKOZ_+_K*bDnO{anfWu6K0?-}SDb@(#?M;IC?^c{mqvE+Z+G>Xpus zvA&`2UTyrG6@??CaxJk{$}Lh7dKg~kj125&Xy*$l}SMBsSeIZiPQ0NNx96 zoEdgKIZ|Ek|9aCc;A7){_otYq>-N8|5bk_@KVc&OlKhYaYa>J>1h+~PFf4X`9 zx_X>ai^Wi=-2IphK)jD-Ychh#!k1K8-1g)GmVgAsb_K_*0t@&zG0XzSq^I{{A&1Xq7}vf!U}sfjC}P&?h+gLh9J+ zWyHpX1{K&>R#!DBl)l)&e+5P>X|KYG8VvdUC#?HwXmJcob`aW}wL7v;CF?{f&z?9HM2j8Ro8`X{I21oHUHD1;QWOdG(xWf?i+>Q| zUPvycrjqoK8lMBjXvj&_PkTj9K ze+YGfQ@aTC^NHV(a^>`8;};-a$F!2|Sujq^VXH`Mv@Y7FWX2|_77^76;UclmHxoA9 z;pyPR*HS@zN_OhwX6TdO)`PDxX&l;y^Qae{(7*C_-KMTQVY@&|_+<9{r5lR;)G#dn zLGJS&@dlV*{c3M)>j`n|Ndi$Qxn)WgOF(iToTixCG4Wi=V{mH{6m@S#$m^~)5rKvQ z*%r)`$NxwLoX;rF(5isCb0+xX(s0_Ly5*48Fi&sS731qayWbse8ey0H0N3PONFq_+ zH-hHa?9E_}N2S$y1$5t5GvKV!;4^kVao z-Bp+4H&N8x>o&gYr4MlAK+u{gASt&p6=zdpjX{RnR_s#og!lTbm400B1N$;D}S+-g?xt@lecgGyRuo3f_9VM^`p z=NppB%ThFZn+~QMD>CB@jp#@kfm%rJ$f55CjSj}K_@`ZOt%@xlb(IPCsD2exx{mKT z%AL-2-;?=LebucYdZO<;_9iXJ98o-jY+hhUXXfCD`S40#d5cl0pnF80(i9t8nbiA` zlw~4@AupFu7br}a;kwT6+42rr-um46)xEJQEfrf2HP$K_2$Y?Uq?p1Wxx%4YW5<>cdpGe<9PDT=KlDr#2sD4QU%dy197c)~@e zL5gH0`;_^)>!DU>(Yb~I=~L`_Y)?0!MJPbs-1~zeHh{;|{!I~L=HBv)X333D_0jrF ztdWUg9?V9!G!Ew-I9@@0$SgPXm1x6`ySLXgYK*KB9Z>;+C)L|7*>=mGOZyzsJ0#Uq znpbZ5LHyQ>Fqf%!`z-9z`R-qyHd#*DmXX5;ziZ*t6J?uX93KQ)W1wOtr#K_`jXCn< za~QAJ)}zp(ySVhN?~SJ&KA}Ri8^!i*W`M1LY61ALESSi~-7~WWr0C-U6*HGN$Po6P zh1a`f-vrpWaEc)DT6{nt->{AEPd7Q)s6a10-h(^1$Mu&2z z^tL1*wxp^X$ zNITI5V!a0ot>18elml5&cxWsDRh%PK;F{qy19=QsFKTI8pO!OSM6+xYE*u`;y!cbC z_(>PZJlfEHMV;jK@Q^awNKN<117?*mH>P=D82e=;X&vX|f5v5qCGU8BcYM1frQnUz zck0EuiVX40zYt%o!|XrYcds3~n;`^MWJ=$R7kUh5mHve|>!Yq+PxAi@`JLNxc`sK0dVdf1Ydn*^zFup zW6Ag4j*Z*i`Pfy(`sJs81W?T^46cxga&K_&5i|pbX#_27`dRTI+my;8)x7;D9ikQ4 zM+`@n2n-?n-{6ZbMRL|+UgBnizBuLCLQ=j(20_MPLd;BecoH2B^S?an+_rkHn=<)>) zzm})ha1*A3cQq}W`@|Shtl=^|@H{3FuNSgaU}lDtqHX$CTu(FEy5Q?@KS+oR4-IT7 zP*fkWN0}wm<9oHL!coGG0mMU zI5TtGD3H4OZCJ-PA#+62_)TWb-qnG#t>MoPefLh;cyubV=*7L8FS&R{FS9ZQC-RNG z{!H0QQKdRiz`WG|#AUi%r2X_MHsWe1aZ7h_As@B@)O=!ZpnyfZ0SPlMY>6Yj2>fV9 zQneP({{6dorl$HySBmIVH_G^X%!?V$CXS~kJzwGaISBhOM6$Qrg+^uE*>SOuPbeq( zJKC%o7Ke?cim{V`>JpZwef!87Als)VtpiI-UhP_*jIf(R@v+kD;WWKbME~ctF}F8R-kC()jcD)iBgR zQi(d#CZ2bMT(mMCP*mJmG2t|!mvX)EG*6x8{JC7A)cNaTC;l}XVI!q9j50%P+x!=8 z^)n}ly|b)|y$r~z0S{a1iq>ZMD%f*54>RilFr3>V(unz%b=ap-qyN~Nalcr6XRKso z>&9Aepr`@$s9(U;(wgxBmnyloq+E5V&2(;R=TGPay!;_UB$Wz+w%B;zz2O+TGRhb! z(ltXnh`m&wKFcd}yVkyza$>II$lk)Kw6MH47Lt_V&yW@9*e4r=vF{$*gCnHZ_|-dh#zh>E zczH-FUJ0Q@*a0~cGunNO04m4YREfG7+5arfDtRVbv%g2ecKWo-$;A?60d^mb7>y)f z#g41a+N=HMZ3ZY_lD2yB&Pid@q=z`IgC{ zz{)xaO}x%ZnZ=3D9G5E(YBIl=Uq2G6MlEHW(E}%zZo7@;E73%eT>5ReiNRE&?$)7@ zL4`Er#0W#i-xtcz!xDe|c^xd@m@g2GX*u&gbZcp1my>G-^|0&@r1p5+w&D{K2ikWWMfx)>W_$`fQ4B3%DQ^B_e za(lCQ$e4~-0fY+!C8Wx#$HU|9vRdk+gFiAQ?v58gDn$N-Am0+m;XJzt@@0a+*_Y$S zaBo+biN>}ptaY<=e*8Zn(w-RwK$nHU1s!7+7|Z;DLmRajH-@VE`2YM7-)J757Ja2? ze0$jIU^11_@Xk;Eflzx8oNNQ*W=+W-XMPNg0(HpooqmRO!t_02hE2L8x-US)Bi+T2 z)cHi*AE(na){x)1YZiGBQFrfhvrF53p~(n)DoCoh+_QknOQr1b3bB;FRvB|kNQFv`5ZaF1PEkmUV^W(O2220J)& zXEJDY2wVVvUCy{%Km2)%#7qni(^~g-LY&|g z?X``10pIG}<&3o2F-HM?g}?G5ruhUzV0nZkemh%li-jLfmB$hxD`0P*`F|B=?`lFf9`Htam_C2Rl3TH-MxyPyWtFdfhl!{vG}>b+UU!dX=2IjyFW+Nn2>KR&2gdUv_UH?)?VVzJ!+QEO|Q)cnHlM@^t@tUs*3d#MDgmKOWoA6&OPhM;)YD(K*4O zoHf*;^pPHC!}+amMHD(apJtEBS}l*iF&Rv+R0zPEgpA_`*jaF8kp6y&-qoP&G{ft8 z1j4+aS2==fb7fg_`XjWzkSJZFN2@Fg_&J!?BisZ2ddx$)Mr57V1XvRH^f1jRP~5|o z!JdE-%`?_vVp;sCoeRKdw*j+nDYLqcvn|~Gms0<^O=o{Zz1dh&n4Z`Muu}uO1?Np> zA{v73%r0Ijrk|zN;hP*9AAguy)|_4rvGBchkDqQXcHsFa?4%L)M3m)R5I=?+ddRTg zRYUIGISBfjel9)Of)Z$Sf6g_mMrR1Xx0NTTIUYmuD;oNFkm8Yn=ze-@=KfaAkyJJ z(`0PITBP%=zd=jpC8ZD_k#=91?iN+ciSV!N3VidiDR-lx_aS|#?o!#*03Q*q{tRrl z7%Lvb1)9UDqXjIn&yOYW7#UOtz5VTwEj=gHffhsEL-oqZ%6lm^%_Ua$O23S#6+SK^QGavS)l?iG`nLCPH@tj=G&bUp_=B? zzx2k;tGnkYk32F{?9iCfSUK)9NJ8Vx5X6^RDyLATvqu!-4RnlD<9=@UcSO}LYEObg z;Z_w#HVT`?m~LQR1tW;l7?3;JV8#YUsD;dI!|E69jgX}*nFtMtq_WD2N^df;#@w_lY8q`} z1{UqYUt3){6zTqPY>}GbqLnhOS9%u}z|>Ezl5^ulrSJXjUB6ISlRba&>=(0uz0h@zfL)LH zw=dp2=dz&VL2bhaC|o&GZGIZ>LnXE$ztki%uKJSvPY$iENVH{L3wQ8ioy+n%ES?=H zjQ`CRqf)_P`0S<$yovox%*MWsf(;M$-;z4?A@CF(1q*`_P`S8@ed40}jaEF%y`{lM zk&Q6;_E8OnH25^fuaHNP7bzkc z(S&ga`||=pp=ksq0b&@am@Pp1zq_k+j&4KH4N0DFBV_NEZh@sf7BnN9eSy~g{eKRB zGY@0XhZt7NB;sULOB0a+7XR5+<3%{;VCUtVA}|lF!p=tw3X7yOuHM8&&A$-oWylSF727T z89KCD*8f?6%b)ww<}!qyjNc*Y*NNq7$!#?*LAt$MfExh_AF@vi(ouH$87qk5Vw<2N zY~PDgAc*K5#COH@eZ~c1%wu4rz|#GXZwD$x?;2$&o*kvB#z%jh2;`*QUGXB{ShVH4 z|Gb@IxyILFMafIw z_`Bh}e}(Uo!coI$P)O3z^7jkvjj*2`Iv^#v#6p1xUbUCUz%sh@Qc& zt6*Ex24i;ZpgW+W#s!Rp9WZW~SY-KG+!w+sFG&so>^|eSWj=1_IMt>MPp`?HyR7oa zyno6 zq8n>h-nnV7MchF!oekuHlKWB)i?<%!0aYdz=MzXfS`&*_i`@U5VLF3*@bRX*`fD~W z!lm@qOA%u(!=}$S9z~_$4t&oI6Jvg19050N7LYF+4};c;vBCukwpE(lXL#Abd%TKq zvL^GB$&_fn!M;z$spuh=^)v@L;59`NpABzam2Bppu6gI^P3_U+=DXu;`4s=P>~6<{ zSP1kj)M;dom!SlP+vG3AjTiB7+z5vcltYbNrUX}A8&W@!Ga=(B@l|)zxQ}lys_jEu z^r`P{^iT-Alpu{Deg(r|-S+^?tJC*bI=mfBThxar`Jv)etDozy8*uf((NCNC{L_2e z)NLTW7ck;Tav+o;8c4m%Ov43gzySnR12ZGvk3MpmIy|1--2N>oVP&d#oDd*% zx}+D%za5yJG%#JcVpwf8aGvc-8YjtCVvN@5sO^1xdF0xu`(Cv!R|DK?23LP?Oy1(f zD`+jCC6AtAMdYdc41@8buoua1OUvI5ta(;ERSYy$I(`Chg5|!RPkjcJadZn+fG@9r z+X<{h)e$6xNG|icbH3MJFtiRpmykU`1{|z2obJpgEF(0&4!QE4j-b_b@YB&OU^6EX2hgl%ZPgt{m%RRYIh#5yp4fCgh0!y|KLOZVMPAD;Kf+71#BFEcWVCO zt2sq!QFLpDYs!3sc7f6A=hufm-L|iJX!j+%dzBMep(1H=@3gmh{8+EDAsw#c8+Ocq_qEP5WU+g8# zwW25Q4Wjg;VcRcgH^DW4l6kBX!;Gx{ob(u|emb6I{i?FgaDV?taD3YFrQSwy{KSz( z&Hd{W`^p*(!A!ghplaY_jY7*fkx*PBT87)y zEpO&W<1ZsKFnnOALX4i%VE49T+@y@8=)gtreg&6n2Q^O6tu5-BHX|S19$ZLspK7_6 zUhfZC$h`)~V`(QOsQQ5qq}LhRwkZt9x3pFNoy7`T!bb0cHT~T2GV7ws!PPZkJyFRY z{d!*E_ulAL-&1F!f!&mA6w_>m^MsF7oXBgiJetbVVm==tjb##RKl$q6_ zO;-Wx32I*`9UsF>98f6>7yIWOb9fCRP@nTH=hI-vzdJuNO@4hm!hTVMAp~Rbg2$I* zZxB?cUD#-wEl2|X`zePT_CTx zezU$lJ<5FAI_%Cno6dr%uaij-tzRI;JGK(u1-C(%#+V!Roz~AILAO9>suai%m$G{6ex&F{p zx;b-pWAD~+Nxu@2-dZhlt>5R}FC9Gn{S%GzS%?W-Xp^DhbJQ*UV*E@hZ{EvA?M3M2 z6;&o27zYZ2YxKr^G(JX43Qp4cwFS_KB)Z~Y@n<6~ELeDHsu~O#Rk{JI3tNtV^sn&g z+o4Z#MyViH9QGvQa{M{L&7opkr0W9NQ5-`Y#^UyY zz{$7iiL|9X2zqlOQ5|pa)Z#HB5*Qu`g0JvgQG+HLE9Q-|1_%B^cCUa&2nfj* zT3G^T!GDv{y}0U!tAWJpI8W!ZsEl(oXJ4Ifze~IyR(#F-?Nu}p@ZIr#j69p1Eql5u zUH2dFiWB5iv96#9Xr0fn`GrYvYYIag>VjkAF56C93a^2aaFQ^r&_$F}|0ryW=O^ zb@*0uhR4l@DhLxxdkN0;-{$57VDRD}NnU7en!A&~`q&z0!t*GxskwQmP%EED=51Z} z{GHN`cxFEOz!E{C(Fip$JDeJLs090@ifMa2R;v8B8UN~FpY+Me_pb08ZW9{q98p>1V_&Pij->Y#$pd(k_4Q=Iq%?2(vCZKI?njVc1H|!%N!IiuN#i@}D49HxHLAN0;1fM_&eogogT3e%9_X;~-ltTa=W z@eZCKU=m^&VC`aom)?WwSeB8+#rnn+Un{2%wYEC1)AT=DW-nJfrdiunX0QV;3}v=$WlRjx;aI@pRmPHo z0#{qffz%yve;ztVo~J<#kSNbq{X;bguYZ-(U!AsA{rL4zZMD&i+R3)Rkk1}lH&a{3 zUU}$F7RaR{2XJl}Vm^UvWh=_UBgvPhU{nEe)+4{|2n^hLNpex7IIG`!noeOF$eXDXWuaolkB4U2pZ*zmI!-2VJ2D(-7(GU_YwSk*% z@yB{*0{-|~w$ojQo^HSLnyhoD4h_sx9%Y)1*E?thLS0+_P8pzX`I>A8e1`UNg1~)Wj<|KV)pXv(54qD?&t? zo!;>#$=9+EN*a2WKrm(R!6>!@K5Tg!NbYeoy-GYH{FqWxr>sD68E7tk1n1dLAYbVl z`{zA?Wx(jl=-xc#N=kJR^pSt0WB7Y-;iC5Vs)m#H!`=Y{@0;_?>!wAchR)RPGs6gv zHnn-Y<>DH!u)*3Hu;cyQpSVC;KD_JFwG$0VX_e0vNX$rL|6j53f8yi6{r|hreAM*T zE=lT^!e@wbtUj!G$?BYDp{4mzMO+|g=C4SB$$Njp5$KALxpcqRWD(^!O|MNo zbJQI+w$K_e87KZByQT`a=di6(k-vL=8z-lIpi%{j5xs{l)td41D870C2Z(4m!aY%eG z*A@Af`CN>fX^x=3+fUV0smpx++$j_THMi{5?cA-!JFv(lBAyUF&Z`^(-wouK`{Z*+ zXtV$94Xo+cP{q_mB<;v8Rs|nYq+sasl_&FRBP*2M;77tkuI{ytcpu|lwqq}_A-z| z7OQx0sLQOM*s9c(iBeXd3nwk?CV2(*_Hfy+D$B4_zivnAdw8v>y-Bh5^+@_rsA_qm z8sFf*aOW>XWw13o>|O0>r9Oe1xk8v9etY()a#ADwp(Wy>1t5eaR+4wYD zf9}Z9nwz_pl4j6;+*6T-%@`_*~h(Tqar;Q)tm=q`SqsI=}t?jnCf0huewH5mp$L-`~yhlv`e< zN=+swkmg-sXMj-dj!@YnRqgyHJ;Wv3k#`-_C`q;;-H%yp=TU)3=f>8wUHjebNHBZj znvD@Ok(s*>XONEpBV=n`0&viWTpLHYO4Oop9*|==Px0gaZfpel4{<|?3UITtr5Re2 zMnLl5D=$e4CS$D0)%6%(C2@y}<>SuGbbCqRPyC+y?_NwV2zLrHgM<;tevhWWwiduF ze3`RzyY)IAq%Mjaip8g4x}7T+*!sa2%#AVz# z0NpOpFWJ&B(j?nUoR)75w%w0f8qF@LYMb_N>7=~hunhTae#KQ&iX#}=52A(U-*6#e zO$p-RocW|Ef{^8n8~2lBWXtH^jQ&C(uyI?O{xwqo(Bnv=@U~1KW-)J~W>GzO%=xg= zO~^zIZ)I?Y2^6q>)(U0!8H7>sTTpQFAO?(!VF9gmn?}(k0=s?7-MoF|B<;j+=LW{f zf4EqodWoT>d;l@lViCkBr6k^`KTjWHye?Jp!TW@fN5g?Dn~66N=AA8L2WrrSKV?e9blm@WE^o z>+p$axVI)Pr#0_rf^Jw3*G&8e=cue7zBew-9DLSBZLw%wMU9_&DtftUaBn}Hd=HcA ze)b~WXfzq0gnD8_BZ?IJE3x+u*cTf|!+pU}&!`+^#{i#%?<>Th5 zDY;RRXvl$xj~Y@^QU(?#9EEx+S0HzEx9FQt{meLB)?Mh*sq zB6Y|CxFcV4EWUn?IGI4ze55{;r@N+yicT)Lb>NvImt-@uGK&S%rbUZG^q7&m`Od_Is?xdji6Qr(VV@qkE< z)1B4_eqN@1Euz)W9)1OVctV4xRjvAQzT-J{;qFyc?)prt?*&$BZE5PHsw>C5_I(z> z9Eorr0N}JDNM1B)%xW*{XK*i6SAGlf?9!VGO&7?VXZ4lH)})vUTA3yLVA0_*H0h{$ zlX8%*(`Mx=e=J1yDLWU3yKJ=RCC_U8B&HEm3cB23bkvKTfVs8Lp8AgFL5!(szmIT5 z(LGE^DYZ)}55-tRKNV!kEaXfUpt}o_y}k^C2JKlj_vY!tgAF%ly5l_Gd!N#p8n?+8 ze}b}EoVr2^z66CAi!l=zpb7^B*o;xOGizxxxJO86XrGAh{irV!(>|^Cc|V-%qB$B( zzC2UZglkUUTLk2!{A2Ik>*=mRss`99 zr4|%oEytnTuPGQ7jEBY~1;+0!JV47Z4i6g2mHrVglD7o+slnQH`I`!mIZ3oBy$xnC5 zd~ea+%VmqUbT5_hB|>4n%{Tzdx9j`^-p9o>O|GxX?Ik^BuQ-EEChFW=U9+gXWp^nbDC zOC!4+y{RGlA?dUG?a?!CxRPB2af1M#czh5!#_D-~Uvp%RH~Fg*o15iSQgS=$W)fgm zegLrFc(6akIxwOpQg?-Qo`!GK`r7kZ>UBcWE%HfF4os@gJ2NTCPMI^Z)kBhSZ0Q2> z7m#ArW(mYF^AQ2CvB4|MoJbf^)i!}@e30Ms)3gQ1jJ>+TJeD7;Dc*3c*%-d?J-vEl z7k#z)CbE0-oZ{JdM}xBc+Z}gT)v8`Ztp!2-fTr4|1`+eZZW(2TeRoNDkmX;wDk*a@ z7f%XZENWTrggiZNeg_&-nIy~J_ua?~^5&^fhk<~t9BisXySW2nGgjz%*10DsIM1Z1 z*MJxW4T-_qLH-=o1mck7`%!}<@FNN{33t9-aSsoZc^Pq()8y9oyr4;0*Z8B!tzNs0 z?xSwtCfly+c%oX>0fdWlCTa?VaEoOyFxGw?&it$+Zx^IX*T9uFvm!E&f?JK)!CUo-_6_^uRpn zXw;+mHr3h0Q+SD=v9tUE1H(twb(DscDy-j|D129-D>b^TuvZ$S&>v38?%?4xLte0# zC6hB;$fsIh4~FG=DDv-p{6B%@&|71?xzM%bxMPmx)x!OjNfq(-t%6Pdz&p+}aR)B` zr>HZ8`t?Q*^X(nowWd{BIwZn9_oKuqZNj7#CY0qjfYq8K@pWzzUAd4NNzwKNPRpYICpI!oEF>lI@N+DW zPv9grfW5-GJTDrwI7Ra$E!Mvl&!=6i3K=E(FMhk%!jJ)H2nRRm1=^4WBqb`)MfBr9 zTAYdzsKg1f3zVw3$eoVpHXR<~C^I>@TP<-5#!wLJ-4ERY;U3rX=YZ57_rBMFws4(+ z=wC6Po=oB&wbQrX+SZk^XoQe-`=o%X#dDyAV9(-hri=iB&Wv;T%vr7IAyP!B+(XO87jjse`Gb%sK7xyQ_WamX7ce9uDolmr7esJ6CSAI zPAV~+AxEd5ML}oG9}@c#ftd?IYI)rGjpNj^^~Wx^o%ZA9lh%;R7fPv;GSmuHT~8UY z=Md-~ud^SDY(k9N3?(rr>!5ZjftUy?V2$A<y5AWYul^chv_0QFbH1YIK)Th*==^(06OYDECV#Wig)De;UzG~tNwEn| zV#|9VH1WjYPEy%wrxXbyQj<$qU_mmAjwWy z=`fleFV#6+eV-FbB4Bb~Ek&)BKiyp`5TUZlQn-M*cd}a=;KrKd6O(bKskY0zn3TTN zWH5^rnfW+B#DqM7I!noW&CHlBk=__zXe}S(@EC9%ET&(0a8UxEeX%dwDs{a=5Yhzi zFO5YIDSsi!brKIMdo(&g*uVA4_eOPfipEFu|kDj$wJbLTG04ADTg{;SeZ{h|S}VoTT*1gu=qe~> zLL*rHKphUv?~4;a3q`6AGI&duPyQa5aJq2Kdg)jjPPM_#%6FgCU6J_;<6n^msvn*s zIsu_GvTRORK-Z5iJuW6LjyXwEaEn%YQ|#-Q3J@%{O78Rq*SW~rg^Z`7QJQXHM^yzkl<4`I$o5|y;(uDi|6Z8C1OK~Pa%43HpBmVW8!QsF+h>XI65P5t8iY82 zpHr!|L)aF}Pr(L03FRHF=Y*hNfcq_t-p|lvzQGaSg1pn1Khk5MV7Nj1lg|L}GB>Z1 zJuheB=E1JA_qV2`WA(*kY&k~uww7Gv`?stmD_^NkDO6UTjoq(kmu4n?A1j8j*Ie= zLk(w&@4d9I`c+xay-@Wv;jGHyV$=I^bJ`fmuiy*zcRh=b2~bG)dCQx)=-2{{hwiRYNP0{a6xH&G-47XzfJvEdBg5yRm3 z<4fY&G!4h{8*B5H?%LDWdjdIbzKE%_a=vKszVzQ=7AbuX3Yd9~$0Bv~pO-R}6x)IT z4*9K_b%yt$B+HCPFCH7d4ZXzy3IN0;2`EKF+5Aw2RGF> ze!b1Z4r=nXQ_7Gn9U3VBok6w&61EnFy?HM$jcna?ZM>*r*&zyei8x&^NT^L1CpuV& zerXY)_5V1olF9yDw^#BAbUOw-D!bqs1X#VuFUrv@`AEs1{-JWpbm5NGnQD_p|Mnl; z#|FPQ1*F^Go}bJ}fr@RHJ~33B36!GU-DxpaA1tZ5pn5sh+PYh{cGx!}@!r$IvE?gVebH30@FBxS3A50+#slc?MhL|sMn}dOw6Ra)@^3fOri;Hepr(L!0;Ka8B*cHD^VU~zAfN*r1wCd~6^3VmfZ}bI z?!|=_dW{_VT^+yGB|6S!ul(bB&QqnyzU}nu{R4lfs`5)0GAO@1WlvmxQ|w<_tj`Y|xnq!G>@WlMC#=4rH;)`=4VXTm7h~ zG(tGkZ-zBr3H39?1ebA3*;(vf_b5LuU)oi=4Qh39agk9ofqp4MYi%5Ch49h?JBdAu&QhlvYp?7zzj|p>)X@H313f z-e5=%HbfXO_PbC2cO1v_yl}qoaM!i#`kv?cjZZubCU3iQ)Qu0#xV|>xjoy1N9#re` zOr2`kpZ+DE#@d8`bA7MiOyO)DkmL(V&er|55rOd;&V?Dq7CXsK6+`Ck8*e+nr$)85Xg1i>-WU>2f-xg?HUMmu>M(!l-y*zu}G&V_yK@W4??UUZO zG;b;o@TY@{k`=E_Q1yX)+xXVf0BT8X?+a!f!e;zAOA=Sc&pTxf zl$f~%1ub7Y%hS=z_*%lx;I1^yH~4oX@#?=Hf^El=FC?NT$hIFG*4dV@44w-YCM1%1 zvkz{MKXh$uY09^qmq`72`P2S+t&H<&4^5xLI8iv_&hu!-#C=1uJF&;<&McLakM#6O z&N{lmF)Be`e_vXmwYZ=Db}mcTnW6sN40s!qXv!uMW`Y6sDae?EXx1_LzZcbZXvhfj z=7?~fF3ozuNR5L#BQ$;H%%y#6=xZ6tqO~+f&{9u(%VH176bgfyN|}ktZFhIq+PET@ zI98>rh+KE%mg2EAiXx(b{Z>UeSMRon*gtjxN=I6nFF9{^rj$RA{62N8)Czg&dYr+2 ztYzqDuS!jS!>J-BomwEA>w-Z3nL!POOyWa3xIsL&IxN*jUl@fg3hJNpRex;s2X7p?ILK!pZ3j8y z2!TLcn4{qc^uuTf@{6v&|PM_dG)0&f`ROCi=>bt{wCF2@1|Kz&dT75!1;@7 zq-GpJO!wihdbg09NAJ9X_LE&A%Rh|86|qMUt?24?+>lm-aI&09TBHaL_*bxDe9{Cq z>T_;ANsIkEuQ4@m$~Dyb{c8@BLs%loO!w!vQV~tRwIaYmpd6Yrn~Kw1jyY9I6F?^n zp%cIl2WXYH)0PfZ9mDP6YCq!rG?I7OoZHzxDIt_&%?y}c)k?Xq6JF)~qpYI};A9QN zeiZrAu@TsUtZKh=;qS!zF3CdKJZ+B%Srtn=vHlej4R_tc(t0l%in~fMH+8zn6d_=@ zPoM~Nx&9@hKiF+?pYIg*XjgoCt&U*Y$a$R6oOO?DzF)Eib2{Rypvf)YFIYMepgq2h z5zRYw<$OPn0AS1?uAltsSVGajaKEdjH*u?7{$xqp)HZ4I=;eks5?|*|&4#|n82#?H zoYeQW`nty5qBOVgN0h|9y9q` zX66QG7^8Gd(k<1;Gw+VF)>EhUN``3$m9!4{w7Ehsb>x9%0BhspdS=dr9{oz7n-UN3uS5^yc= zd#qSQY(`rDZq?={mE{zv>S?6%u`>Yb^fZ08pYhhlCiuFJ;&N^XzflyK^0=G6Yw9Tc zPdxB)$>>7|@23LSUB9X*1)(v}M9ZnF-7gwgUaI`l$p%ckrGN4 zC5b!xHsqwGDiQBH&BpK966^REHny+6;P&!e(CSoP2l-({27IYk0b|`~cp4}P?NLw_ z5R?DMkkF*C-^9^%u+8}Y!{2l+@?o4<**M7FzyC6Arf6?oSO`~}*I(K{lcRLGpD*uJ zczUDf@9TwM&Yee1gs@yd%Xcve9)|r6(8&EW%D*{;(>sHBJwy=#NIyCXfNRCIQ!Y-n z`j^?SYk;|y&s~iA+!towpzvZRhuO;lUt3mkuB56<_=Pb3OJFNFoE6`!a6VJsO@C6w z4_gK(;$6V%Y652wFL@N~dhO(zFOk=YC-r5aIKnBw^cPg`teh_YE2Jf|m?Le=+6Wk! zb;GX%eso*mCnerl6B{@7DprRq?N)Q}~8Gd@%wEh^U9hFp4PI3uvM#kb7|=j960= zw2O(wmdYvA;)ppZIC7hjEUzih5xiyh&YUpU>9-Ve0lNpyk4nm?`+3$3;_(#-IJ5nR zw>MBk{uy{Nl8hUEoKBaE3;p6(uSi?-Dimao9#O_z&E+MW<(I zPMWC$aIm?gO~1k+6Wf>~nTO?DVT%=<<8HMzF?qz?mx&hdEjxc zD`yWOO1VUYcI}+qfV1hJTj$N0cve2!>w$0$XSDDS@>hACDR3{~_OG!lck$DLKglK} zI`n@K?l$4IXc#&4v)yJ6YlZ8Xfvl6{GBvJl3GW}IW?mbhx!)Qw8TfhQ&J&BLIr+tE zA^Q^>_p|L-$FCS>-+Kaq>|_3M06>%AwDAe3bv>Y52y|52MGBMzPgoqMXc8+|yEUVQ zzo9~#QWt!o_Hljaijg_V^?TUls5-qH5FcdWYx4v ztolO$fy+(tBAaMZg!M?M?s}@^DDpa~d_gs_^Wff+qWI0sO{a$DXY!63)68EL-*a3~ zv@|&rM2$muW?z_T=ctVc!HZv_NrSlTsnJk=gVjEaswqJuKwXcPrPz{cx^m9cF36I@ zgNm&d2^NN_OBljTadF;H&-DhSe(s943qK#C`O7XAA>Ib0*eG$uG+NVrI0S7gzxF+0 z+au70Ko3Og5L3Z9csh)nwuof+4ym_KdtRj`E3Yu)b;|57Et^MOz<`8$u1%~yp|eZ#DC+am7eZwj1~^yYQk+Y$ zNFZhNLcOk;Tquw)^84uSp1JWr)NZcPLxO$E@eAuMf`ITIT5At-<0|+6{IRKKiEUYh zBDr4|w>b*C1g(XwrxC$0dmD_uNZ{CHCYP9#i;qpi(hTaplRm{pxfQSHp zjczmuE+19qMX;p3)&C{gs<9)~_YLB3FWbPB4nW6jBNE&@Djx+j%4V`%J{w@H@+39y zA}tx@pz$3rkF@xFuF+^->Mv1|VO$Lf#L)I$g_X_ohnc%GBWJ>RqZ&EY9G;uFI4TPC z_>ldoc2ucs!X)fd#WsORA>wJltS_6{GZiOW^-N-#9J9TC&ogTg;kPnU4OS-`h#m%K zq9;JGw!vx+&^t2@KwAk1PrwTAUDP!xF!3+-HtyIA&5+pF7}6E>mOf?L^+MBl+Kg}c z@qJ0FrL5>b2y|VWHt2!ukY)X2{vw1nLYgfqx>GAWxEmgoUmTsY`;l>_oa{7+VPt>; zca1#BY4E(=EN%`siBqW%ic zH=L&=YQ86bKFmP7S!m6z6N0D~Jz)qefP^NqTWr>Upf2T`LdU;5xt~5|Z>b>Qt()Z6tU~>{WQly#d z;<5fJ4RhLKeWW0R+Y}efY@*9Y4zxbL>)cV*-PT1*!LZ zAuU-{Ir%XGPH-hk?IQpKMuQ?ZOl6AX{w2Q$We$5XWzB{|77%j%kLeZFv(b3J=A3zh_iZ%?}f#rylEeXT7 zH)nmS`M6R4Yu*lix39)fmow&9ukiD0D$Tn}2yMs^Ig8k`xZ1sQ${WcXePL}PXCb!I zq1PkIEtIpDdAP6G&dzijrZ7%bg4HR;>1q;(_TQ0T5?9f~LcUUlB>jpKyRM&3nF}Mk zch6lWWb533EdQCTK-69MUg_m5GJ1cauH|`!93eK-Yb8)P@O+%P4m9hQ+ZT4aDsRv# z{s;K)(&l>!xM@2{R0ZPqF`&f%IjqH@skS+0McOs{$V)s}Z#-i>@%P|G+Eu|z!m0G@ z?f4_m;!~!sv1DT`e*UDZq|p*6{ZktkBP~Ktdz5^u%j1O~+JGJJ*%fx3)GqoKpQ?pV zzLjyt_TCG=P#5JGZMOCR>De}`-(nrF5FcB&BGRa%|NV;B0!gekS;FffM-G+=?|l`|6%lUqFK zG<&Rbn{;M1jiAo2hChE&Oz>5!u#`=D3XkYd+IG3)_b$Wa38)Zs{+|lV|7m`}{u}-O zc2uPqFi?0Etpq-mn+0={?&U?B<);&L7<332o7;(7-~>MlSa(K%pc4nS3TU**?3yzV zar?tLK_7Dd%Jzsk8N%OGZ~Aa`-p}%Ki!V00v^y$EiXtcr8r-_68i7kziHV*PYy=DQ zTvp^R6JC#wE|--~{5S@zc9{JvD3edOkZH~8S-)<6^0x z2mBn{V-*kQf_V%j9ZjPBQv@Y3iIf|QEuU&pUt6!*iDxMpS~K+FeI#C7(>hn^k(}Tk z^bLIZGb%R6DOvl$I}&E;OkG8@T%ZwOQr)doH3Oa-9DbKSm-63+oDqRkjrfx<#e!rN z{Xk#lKggsA?SGK#A(`ZIV%D&s9hi7ZJ1H zdh&(J80H$u1=fN83ySo|!gqXDzy5yN6uKR9{PSGHJ9gDjt;(t{XakDSyEMS~r-OQt z+>4Jgw-`GY;q%43irxFBk(x>+Ce?HS_eES<#*klZsm=UjjDp>UU;;9Vx6Cb2&eqzr z8l$Zvmvr9E?aL{~W&*!E`k<;Jjl!+DPrU>swo=6wF+X98QsdEnjYCIPM8FEucCp2P zUtLRaI4MGTqSCUnCs4wah$Wa{cgZWs&zm!O3tyH+nZoaF+c9qUXsz!pwfzMzH29w} zD)0@L9!UMRq!`27?3}fD!u-5wBGNEWuP(VJlWn>ppD7|S`zlNJxl=5SKeXs}qZ*w$ z;|kJE__eC`Ho%E`6PKz;mX!Qh0$h;4yQN}xI|~RvllKo8%&|X5ps(X?9*}H1I|sQx z6_;_4!KPM4*%$djtlIBA0rF66Q#yD8W^47>$g^YA9xgZSXs2r7UUpUdbgGYl(|J|7 z)Q~eW6+!_x+hdiv_9{N8!l1D-nl=@?x(-JJZvw+pz(v*=;lcIr`u+9ZxThZ+H|B7a z+RO19I!r{A`Sih+DvqhJS&J2Jk52EyZV8*2n(OH7500NoqM3EsiX*#$*2XQO(m6I-V<| ziz!93ncP2`Xj21ZPc-f&1rGV?eb){qSmsDPX6#Jf+cLS%0qE0Y-wi>(;v%@!C-3@^ znK}DD;(+jvUqI+Qr1oKXA@fsqYzfb`@2mS|DQ+jF(GoPX-S$638y%)^F&{y+_6W`_ z{~Pw|2awD95~PynTe|0P1pU=J%H{u(tep=IQragnQ(mu_i6^WKj^F1fox3fJg34&HAWEx^%Q^!0ssO_eYy~87C~jnX zD&)7zBkhpCBJ?+&gaMIq6c*)r(mDy}rAR!-LccWD8VA z6u2SK!;VX&c1P>|YBf0y^&TZpKfZhQd*X|p!pC1`T8u;Ap9_sHlT#_^y&^;7pX*X8 zzGFqcP(|Sw0#0qDl6~I>a?`PFqych~@2Rd)fWKUMWvfy7nta)nU!Ok}WY@E6DgF3d z#+>O|bcOZhGCyd(0+>AUvHM9ZRpe)7AC{PZ+3;pgiyA|I4e;HD)UyoU$MQO`GE#LF=9B}NB^f>-;mfspQNa4axjlLoi7 zBPZH}Kx?4_-Um5(h4NfIDW2Uoe1$%GLy_zJEF!U{Z+mp3Ns9l{COhN6eqz^U75BM& z7UR@WAoX${(pjkZ2aG|iI#6+Iv9G9X^4Ypsv^QqaTe|eNL@m5{e&Qvj7=TA5pF>fE z?*#XU$^QrOiuK_)z5*0y(k1{#4EsQ=L6vq|0gXK#hzdW+g0_>>w&G} z^R)y9=}xtVE@25m$41m)h7t^E2;+Q?)Ua=oGa(Ki+pdFEzf&4H$#v?LdJVs~Y*HJb zRmESzZ4+I$dH~xx1K6XlqHraB{K8iVe_Sg9Z{Vcf#_}m5Z!ehnlaiJJSo_LJwT*spNsDb)N;5` zgH^9A=1!|#Sn0X^e77?ofL+aVE!ysmW}hN~uVaX;4g(@tB=g0I6#SoX9G2Cr+#VBp z@~+%lGXv`&QNV3Bvd|HhMH*vpSW||70Gn-)#APU17PB=-R5gyqe8d&PmgTNQ{9UC-fT-wrT9PaPtjMBYHL6sgI2$u=+Hb9i78-1 z_>(UlP`H&}`jK}?Tr6lP@wNB7p6Y%cwragQ4BG9ViV%v{+2ma~N5e0uDkSt>-)j^LUPo1`59Mhy%S}RaI+6zDP%y zUnB^QcG|P`REgSo%|uF{DXv2$shcjv@%N0Ssyn3f@Lc{}Wx(wwyt*u79XJxBpGJOj z>`a}22~dD4Ck2 zXG5K^X^cgD|LD0tf8~8{hBS<9Su6giu@E#RNMIPtxGm>99^Mhh*-YQe7)AEyQ1@WC zpHqOV9F@_S=;z^@;tU=Q(JBzsCdrw1yj3Jj!vi< zcRFM3rEL`&b!vx?hhM7XOk2O;%r+P zAIUm4{z)p{;@1QrX}&Xae|`IYTVMU1ap5pIkiJtbxs(AqQ41p)A;?-QIPtU@_$tla z28xuv6s;s=NF!cPxn)O`yac4Ou0n}n6D@514I5p%#-U+0maN*bsjBb=;X9=J%O2t@ zL!_wayzgK<-UDdu`S98D;En2*b<#@zrI1(NF=w}kN@0~S;g#$d{cLi?u}3t3SkqG!>0+tek+(@{ z32Npx1Xg6x=1fXnxv#i@aFNnrY4Q9^4M;zymBd8DOPC*aHWZUD&_?t~p(=-A?~bTz z*)MGO9d~JG4b+mfIwigi1pI178r#VJ1}g3wh^f(iUjUHtfzRl4BIr==E#_sdZb89s zctbTtzBjM;bCqdk&Q%Tgvoz_N}T>9j_Y&XhHbl1M9&Te1g<3id{Q-Sq~5q{e0)#gCsF$4V8R|SxKtO(jd;mv#eWnS zpSHc4`c@e5$nJrK0CFl^HUbDKPuni;Bu1-JXWL|7E%_%9D&4E&ZR78vNT)m>IjY>d zgsR0SINWY^7jowDj6ZWGo`;U8d(m|G;uL>Ce*4h@Z2`<482Mqzm#&?IQaC*Dq9evu ziMDYDAnzB^UrV*gV02}l6n#g*GbPG?w!EEQ>`ejH7W`~b8iZJ>+u*zOdz_Tv#|Xx za@C>`iYD?FxdyMu<*A9*AN{m(G{67BL-TcqDWxBn_#{|l%4jDTC0KW+%dYhK&@`+F z(9%II0RbcG-7!lv8deLZa4X^^;HMD}PBdiu{~GDd6P6R?VU|xxD^8A(t@qR6w@n^s zbr5|HRA6K^A1b5c4@WX`aies5CjV0b>pL+oxhc^PmJy6c7%KDR99EF3%^5DJkZuC1 z3`JX~L{aQD>OlqGI!O#4pXP^MRimL^1x~FnviSet(@y^sWGx|W_jTSFrkFC?`v?k; z%-c!!5q&*E<1Qow(7olZ#3ZN5m`ICR1)e;G;joC=V=5yp(HoWqWxh8|QD5Bb)mR@1 z%URm!GbbmWjkupMf~z$kHPr_t)50e;DI!&;1He0%-|M!fe}%EXtR%*M%O0M7X|KII z`U3*ZSqLXTrfawR9w~lbc~(4BzX7IpK-%a~sXiX*d6aaJC^0 z;X`SlQGFjdqqzuDm%w8Q@~aN}rw9(0F;w*%Bh%LYBn5_vh|$?-Ax4|`Mmnz<+)?G)2P<7W{Guo@t$(e*Im zjsGB1Aih(}NT9IvSw!)AX|w-PXYyyApPyUk^sRe2NAD+B(ODEm6W6wFNDINAm}hd^ z%4q|NY+qa8NsYeMH0{!tv_)ccBSMy;l$P>9Uog@NH2yrge}(PfR-e}?GWulyxWi&% z(wyD5Ew)*=-_IpW*$6}*hKmH4`~nFd+6do^xcCYLePhDMq zLEfEEcaRYOiot1}dV4qjB5f-qc=*fcb7Pbn71xu5b5d&}^!|<(nb+}@ zGy&k|$CF`(Jxs~A;ug5V*>P|cQqj3B!RVjdah; zLZ^+g3NkB!@FARY0knvjYgD9NgH4>H?oOe%{S()pY!@w#JRV$>+i_#ec7on0knZWm?*U$y{8WzP-hKe_TQ zvyL>beoRw>91@fw<1ZkGS>VlmKsM~fe4zx9pBfH9iLW+F%7!BH^WzJIftEeI8$M&T z|C0RI&8sLf7`)-<6nBsNixrELbv^^e7x^g#K!q6Rl3$q4K*%AMCi0Y*39K(F0hm9b%m%BcA7MT`ruDiD+c|)ID2oEsxz(OysFLP0jYI8ClZ=rhO*)tnoso_aere z26pAYU7>ID-bt8FMUAvh?ui^rfS1gMz@c(bTZBcYh{e$E7F2>Z>jzK2hmoogOW#AU zHGWO?5;R(wws&Z~v$EWP{0cxz%Bm7Jzv)Jx#L(~v_>BL4c$ias#j`^;0y`fue64D?xJG*W@ z`_1k*%D1F9uD4o3YtCFQP%cw9u;Exs%}6&hkQ!l23u7lybL%AkA!#Oh(S5)#j;v~3{g${D@v3q)LxomwX8We6d>^2IQ3g=MGe+*?yZAJXBpKP%Dg8?HMRp^_F`ohlD>P zKX4+@9}&cx{BPu!5Q*Pe>GnSr_F6mmQ{s+tT|(#tI+oKmVN{le+J;0bJ%;G*dE<6o zqyg(V?QhZZWBaA;{I>=7|^TK0S~Pp4Bzo2^o3s? z^t30ZH}5Y;5tz-`j{cxVU2>C&?-YU$hzXm}(;hiWu8vCV#%87S8yA8rjN) zPZOkQkZz}?QH6Z?a?Un=x|B0|W7Gq*PrdHC<}f|)`_U59bF0kJB{l=OzfTf2Jvy`I zLeFjn+?pH1#Nz1p#pyoaUx56>Jc$Vg5X-9dX7|jbq;fOCq`UW^fbH9T@GQW;qm3kA z4OpeYICu{H`^bfNZZ-x#e3_el^M_Q%URA!nWaM3P9SPZWgN(u}CjEu;dZ*787lr0@ zFHhEB`~@V%%%nWrlbBTHT%OtdG!RfIl zl_w!0mfE;SfwATm?#vqbNWv8!V!qyT8I{fs$M)k)ej_9zWX$e1iU~GMD8-)Xlge=Y+ko_OzS(BKS z77!ptIBurWX^63P#cs<|Ds-n+(@phgdIuN!^NUym^TRjI_g|*d+wtFbo7~fde&7f0 zBE$Y<83dsiqz#v0ekdr=JmdTIiAa63B=qvG+{4NuI|W{>Ro#mo4P^frPCM}iGiUV& zw-oC{Z;QH8{*<&PlbJ2KT@57&aKrquKFB}Tm^9OQM7g`+#uhi*&|#qYwW7GQONDK! z!$HFw>B^aUXCP{Rv&cIpk4bUV zjwf#jJVjVCu%oSbs-3q|+MM_I>BGs4q6J55hXMY(cxK3a`>L_SuU2~7n0rZNRLhYhCfNisb+@h8`ZIojl+7VFA%ytE<#$lKfX?mr zv>^sZH@~bSXTdNMR$W3c!(*p0$0o-&B6%vDJUez=pF2in{B-Z&3|lkYY22@RR|+}Q zhB3usMZQNwMBhFsLZDlbM8~vgrhVCyck1wIkNxJ>M&eV!=tBL9Pn*g!P8;kCLIe5t zS$JNn_A@8dax{hDgzH1%Dfad4#YM*jqSLGV&U&;iRGyP}Aa2`0YcFkDc7Oil-D9hn zm-`KIJ6$0MM_E1ZfXVEEEiZ%LL_YjokVN*7aHh^GqvqC(rL7n{%?TISd+C6+vj8KM z++u_O@GmHwMCbR2XApc)q7x950U}njv-|5rMAuG?{ryROKC&01z1L)e{(brK(ndbx z#dFHx^~6`Zn3W5r0BPNrb}z z&=RzQE|d`Tio!y1kALngvWa+&cu&~7<8?>Ysg4N(6*J*xUckAk{4gkc;im-vyu;6c zQ(zUuuq0n{8;@tS9LV{7($0`mkH#g&g6(SaYzXDsuotjed;0 z>dXH#)h3!D=qTFbt>#2b&t$Y3=}caWnd?V;&!dXgh8mjP9?7Pf)QgiXHJW`f=?oCt z!%&{|w1s1~eoDlN>ZC-^uO9327&B4U-!1|HXN?U{2N)Ev;+K$VbX}+<=kw%O5~s!~ zSIe9?upY+pzfUSX8kIl&HV!Dr0=Ripv+@wf`9r_;AG26D+#{2L-IVWoEYYCKL7zt9 za*!;b+D6v%U}LDt8(f`WuSF2o~^gj7Tjou1Ve(4MxV7p16UoNVW65s zN@vz8zc{}ZXc(HqiGC&&9^^i#AL2YIw?IM}i}LD1S`aZ^cON>{Z9dK*lSZi(MN87sB~`QOVDo}!0*#Gp>KH9 zE84m8@Y3`Oc+E~;AVUI@SVGy#BCDMaO&UbiN^fjX$YmhZj%AukeG4EpEAOeSpm>QJ zr1ry!*8T}pwv$}c{X;)p!@@QD_dW-0VmS*-eTw=zUcT8QIuWHG-)7mpD~fu1`l4gp zT~OnoWns8wMY5D;955k4CSpO`-7D|O<|5b&^r36@`n=i0>ocikEOYj^YeR;e(SfdB zD!w_AHYBrZ(_+>ZdzgY9Oc<<9JdAuEvjsMk)4N2?c!Vcv+KnKnkyf?wvcP#QG?dGm zmT;b-(yisi((nB1XJQJCw>B7@Vj(Vw*O~F2;e0>E&YWp;i`@=~-2_4W8B_@r;U@59 z?g@itAIUXp$uI7T5%-&!cmyE+U#|{{Ohxlht{^(+S^sVvcP#rYA(VuaV@MM+#A9n^A}1K z?H_Vo-+A>a4gwon0qRu$co-VyehoJ%w{kdSB;H%bR`Lq<7>7(f1U9~Q&BFNK^M}VE zbF~GFF&+H;Txb20c>VJf=*c@UDaG&bg#9u3PVBIcioY>}tF9mSb+2z6lWP24du7^} zi}Rb9m*i^&Dhv5o{hz1Y2<3_GKLH-2XFYC*5?cS2y>@X2_eQ!}1D<%og9=$z*a#TPGoK({Qr* zWk9e<(0rL&MM>7iiv8t3_M^x6TLpl|;MYsEtQx`|tn{*526VZr!m-^tw31e*5e%{! zhssrJ$5d7sa9MK-EBN$|v?nU2pdP$)|3-v&-SxK-VGYe(vC!VMNFBJK?0D^ZW~cUG zrc8^n9k11U=Fg~6FR@W}|B$jO%z6I~y$ zioh3(sqZjsXlo`$GL)|6JR7eaw%@pOG*O~E@u*+O_zlO^z#s`Z67Rx?UvI?ji)K+A zsqH}INs%Rb7|_SCpc{hLqe_rdjXqFdV~>l*{k9f8-`gY_wjN8r5G#)!lt_yOy0e<8TImJ-0p^uu}y=G+3&uD+q?7E3Y^*tIg1Un6v>)k=va5m8;wC#%OR`Z z5PT7VxanY_gm^dS**9R@Egw!Nz{rao|erli4gK^+B z2o-E7xH_PFjeYtbq#leyG&|t6eC>G(K2?kqX$_5>sPXBDI}^NvWUShX^m!H^p_bRr zuj%$!f4cIl_bL^w|L>6l)d_HP^8@u=T`Lk_&p|%t#E!39<{uN}mGR1=+PBHN4HsDMLDF?SovOKiF@Dd$*15HVHy0>2ZMY9Lzf^l z)NBM3FlGCfQLrWGLp`aYz%1JWz&;3h)y4Z?E>xAyy#EsavzoqQHTB~7`|Z!?lUW~m z(t6-QON|L^OdpA`juQ_c&JyVwj`!!7cE}#B)e26rL05T5$YA#0&uY0O8Hehqdfdx< zF;vHPm>f3L^#u|*)6FcjiyJO6b+T>od5BOYio2xmFRpD61q19k_Jcg|STp<(eM&E@4 zO2WkH-GmAt;RmC{$K2=YPFqMi=eNA(W0yjcs{EPdS1)%-? z5V$Y)RnHXQod@<6Ki_EU-u%##W|fbw?Ugi2yEvHL_48cl6@`}TA1r@U7cdmzFW{#< zFuh}@FW)c3kyo`i#D2D&HW%UHmi%X^e;7A;IEp|kBHZM;sEjnnfn@Q0JCgpl3(tx- zcOI+%op1I2^U^|l#9`VkUgk$;cz{Z0lc3ro70@hR3-kv&cpm~Sa@!feW}Zwh{;Ax+ zYEGWWt_+&3Y7Oc@ATVtdt_n^J45e_5E~RZr;*l{xkogk|)@8*--tAcJT)1u@QdrXI z&NAjM(Uj?Me3yICl7l&Y#5A%=83)aaJW?eW{hvvjiU zt8@*17f)&bUr3-E43_{US|bxtL<{6>4S?FPrPBXU%8Yc88FX;b7bVgC4;SpO$b80j z;IvMD@ylpKm+5hfA*-L**4;fGUxL5UqVuyAbMx%O;qDdm_AuZpl_0$v0ZJ-iL&MfI zmN&-omf(RB>*T~Am5jJUelO5=+C{$tF0T#dEsyDUxtx!cUf$|iXZ-K z0h>BT$BM2|>$KafZu}I)1jS=l`D0SKZR5Z4N=fy6{7A_i^6f(?`E4&_}v zR?$ zfuHb)S(J?qkn#Zt=_@#~v|6Z4vBzT6c~s3%0?IvYnssHfI|MN^OisK(qMezWnwhO@ zwPiQ-;noZ^(jC#vy`NPtXBvA-7ev-EhDtvR%6`y~gz2+Hcj~j8fbO_=o;M=#=%DkM zzcws!s;cg89l!YC>|5uK8K?M~@)t$I_fSJSk4hxNFj_ih^jbpAdl2T;{Ad#B&qe|* zayVJjYM+I?c+5sN2i}gQ1jW|CO7d=>yfYBR{$n23BcOS@;Z}W??gXt+QTn%``F0=z zJ81^P{YH|->7k0<({v~O`C{U;pYq6TH)H2)!BQj5QW+0GnVbYC+7ke5Bx4SGYn{QEX0LmwOuy5X%(@cP)Fx89eAmwbJfKX%)b1I_l4cOw{K=zS}QqUKM$LGVA z3dUQWa0Js+=zripoJS4SP#GJJ**%d&%bnShZe)$rv&Tv5d9v5oo!2K-Q{FInm0oFJ z$6PoSFX4GCA;V*-zXoQfN9=0=SOTYTU~ER^tNy~0Cbfe{x+>&bn^~(zjLy*pTm7D{ z&Nf0{bYdemRb|5diG&8RQMm4G?q3CLL&O6@^yZS(OI`C%PM-BMj!!}gKYf(^+nQk( zq&`3>zflxWCPf>>J97#zfym`UK4bhDk_zdCO=^iGUR^6-41Ofrcz4!Ic>7X&`;h(^ z4O49hNrGmQ9AE}v$0X2+`MTycq46cf;hLArK~tOVr%s&eY@@CluwC4crLq8YZJZ7T z96NDo3t^*pC_zcQBhKfV$>B>Vw)K!1^}*~T=dv(CpH^Q_mpBCIDv_4>lHDO3s6n$EE8iuFAi%FTyS?if7&^@H=NH zEtEXs<@80d(^k4x+@TzsPjb_kw6p$jTxiVHkj{-+>kEu4 z3WRrCwS%^=M?$m|0_~{|5QLgZlpBF3NsIG$s54t1oVJNnZM~-AYsL)Z3PZHoPoZQHK+Owi{BFq-Vf%t4IDzl@qSt{w z-9$8W#-iLwqM;$@spdo(wOPviojaN_Na&oSFZzcBJ6kFWHxIPOC%2w~LHkgf#K|j! zPfJT0gM-l*iz=_?<&cIaPeW~-ij>X0B)=zf_0#s8w@LY9BE}jjJyUXYsTtf_7U*(m z^w+g1{9qG_)L8;%cWOkvSgkc#N-5q2LSJzD(Bv`%61AYzG&B!k%rO%*9MoEG2Y9|H zJ?&J3cDg-)h&)3D;ZQ+g2cId?t+n15*mvl23t`$3o!^rH5h-SGs$-{hGK#6U-8z5BF)Ek7J6K^imwjj z6{YucWyy0{)lNG`?q$9WMEPBUombQARW$4Qr1hp#f3lqCpJ@!^pI#Ny z7u=#jF^E)PL2papiC@HQ`GDW24@?h&NL5$z6&Wcvw2MZs4G~kVPPHPm^!5;26E)( ze-9tTg)%2}X*50)wF{Y43Q5-*cz$U0U@;7h7V-gx>P&yZ)fZ1*0!nMz)B=23eBZjQ zk(5l8ZLMt@d#q90JX$bXIJ#}K&Mv>D)UP&D>;2&dqf4$n?lZPaX0ESkHSTOg2u9*j zRIHXT1j7HRyu8syr8R(Cl$AX z9*CEZ&X@iMiXlYWQK~DoQFPuCA`vYBasoOS4hw(-4g1w6iM3TTv-=%&t)zqx__FQy zmS10NuUaHp){j=Meue4fepByy)k}NHL-K}(j7;8dln<23k_@6tgINv6;*Ssf^{Pv- zFC!!VM+;tDTs$LR$&;20T2OI?;4*ikMX95ponXaCokyP86R6bHBUbKQv5=WLGV;-{ zVT~{CjeMo%E0Fn1VfkLt+vVVwtZoVtNwAt7(8B%aXJE?45q8sRf^vhz`KNOxWsE_7 z@J(pJCMRHl8O)!q^77DY(e;q&kuGvpVP#w;-vZYKZaaFBpi6dor>8laC%YUsjypcAd=DB@0=x zUZ-7wcO}jkyCOF$2$wqxQ~k^g={mb+3j|PbF;-&4l2~n5Atf=E_}Wy67GCdLE-Rt~ z^$|+e1dMhw;!P@}8z7&~lwg{Q-=k4%6>^e|zX&s?@Eg8H1mzBvE_Wxlrv~V_tVi9J zTM9D}>i^>E&Euht-uCgaC(A_HmnoDAAz88wmAz8R9ukFQmnFkkLe>dIr7R&yO!hTn zA4{@kjlqyC!;EDN#{2U-J-_F>Jl{X)^{SZn`<(mS=U%S+x&n?d31)7b)g*BZ8gjk= zJV9#t3_U#M-26a26xJ;SBT6$ZVs})$XeuD2{{37tn@e8RKp2I$`-S<<24xlR6#>%+ zCOsR6F5jRZpPJnTBMJQz3U+^mRSLeg&3PDHsjJP}k;<}lZy1+7r)XS*@FF_mM|o#xfI-F!U2$3GWO& z@8LJQ8=m}vcF}JaH2QP(UghrPlB3j zeBj+?rcxgd{0WB5f)fep-S#?D{epWjv#jipsIyq@imD7F|Nk!(oqDqA@%llX(7r#O zIFwg-?r017qIyUG@=e#ixPnhOoZ5Q$?hPi~o+Yjx!|fKl`aZ!h_T=Hr_|iLSL*eG^ zMHkn5ywAKZ1E6rm##$M$1|+)02>lQpX(Qj{!QGyr%in;CTekYKFZ>M|)=Jh0^sisEW&r3n{(gVUJ`()k7*BzM)BdJ`7pI zv-sqK>ko~C{LG&$<+M(Is3ndkgGsa3DfAk6gXiV`Z!55kln(SKP?8qTI0Fc8tNGjc z&drB9zv`dvy&6G~6jQK*+y8>R(7XVE{~s7YM=_6r3`aGxiok9VB6+%ERXz0AbKgoU zDgCYXh|P;?co0tOqh~XLEGc}-0AdgMxB_w0M9!p?()_Frmj^ZVn0GByhEw6$p4Bz{ zsd}eiMds*p5#3i>tYGMpzP2O8>0OU$b8aS7rH>1*D;HmBKQ0pA_z6oB*MWJ(8vu_v7-kaeyloCKVrve zk*;!k&q6))3kHmk2m~m$3Cvs$1O!kOb-!WSsxaURAhZe~p6%x3SY42D09y`(i>t+q;D{990X9Oe2CGZ*u*b3}Gc4%;?Jwpc?{0Ip;{_Pr@RE>kI~xUPyrTWMg^ zn{B59o$IW-nBr+2pU4RhxaYzg#uTnjuYyz%-=s+)2e-mH5tZq&6bI_HbbvR$iwC58hHu)HP;fJ^Zj?FF(IbL_7%A>?S-2pc(BeG3mRZw0At`(PLY{)a$1nBTn_ z;?Icl1>U0sNY8B0&Y?-gIe(Gt=qChDWGjhPc1G``ty_J19BZzW%R+6I))nj0)0^YZ zZ#+LMzbiP8lhhWXv(c6)Uo?udqX3!^WmT=AJ-V;`!6)pLlJmzdkJKB5i%%HY#x!B@ zvmcv)tBT<}tnTm8=B5#(BQWsCb|Ky#W5_qyH(uL^SB;x8um37psI03_$$iJ3;hfSf zH2L@M_|u1)$1K9n-!e4cs}*wi!BbP1+i~KH&dHSb$3oTprkH^w`r!b$ZQf)YM?VT1 zjB*m&6+dwqFU0-@TORONAs8qjvsNUA=QB)+CM#vPJ7u-v@K+)BRd70`4nN~&-)8e) z&^{0KO(r#*De$1)u)Ow**J%5Lv9g(@ss*{5DL6%uAUbFy`o*`QS}8AV3e;0UX3lcX zFN2J1Q|dx)a*YN_3gYQEgAVfk)uc?o4n%=kFee{*)(I8_9mktynvB3bFOyQ)Tbj4Q z_+`w8$T=T}PXPOeqsd@Mpx4ZzGwPp!nH1kL9p3g}(JdeF7kpGTELq#e*5LZ--MrBS zF{{$ult?VkbIul=;#o#7ZBrX}!*zvUVkcm?EPY=$UlwDZR3u2#^fhLQ1KS^8es+w4 zLXj6n7@+uUvP%(?+=Ao@jJX4_Qakt=L16q3m#6fD?YX`4{@4dP`9>T*{&|z(p;K4a z?d*1OH8C_N9N5Y!&}M_v`S8>xa4p-r*ZEe&? zEh8$5)sIPLc3i)=eVt1*kpxkgM1q-<6#-_hRWAq<4GKGVJ0;^rl?8nFb@~a;e7~OT z*Rg_^XKH|u;%spL7uIjCfP~b5IIu1$p-k=K%Lwqy!yJ*;x#?wGAL+(r+TNM2Y;=1l} zukUw)gXO-d^uE>2I(LeNA%)Yic<yAm~%FfOxYv?62a${jgWJ*qWf8Qy7v7dEm?%7;&)t zNPN7m>2T#4x6e4S8V#rBg^ONTL$!&DVloEy{hC2-#gzQFY@~`y7y=mfGwGA-KksI- z=QxU{m>g#_;@K=Pz8KTBl<35F7##MKK=ww^1rk6JZ0@^KTQ<{2T7r{@b2>Tb-D>O1 z$+}FlRSwGj$o>7~vzxF|$7YHH!bqYKg$-CezugRI+OJ@yb0pNG?W7$XYQ*G4L zB0|sO+bUg7eNYIU2@HOEaNlfC!FnIZ&llB%9AV z$ldN+-LRQ8uNL_?VcNutqr3J>x#0Mx!|oUuW+{Vu<`5h%H!qs>2L1&=ox#KRixMnT zm2X`6Ny)O+GUiNMm}wLFw9T!`SS}S&uHU>S$aI*Jf6ClbL})gVo7E>PR4cT24-108 zFEaoctvpn!&?Gz9^5lLgC-Dwy)1l0}| zxRGbi(7e669PyI{U9@&59I~37-2|JC$Es~_i*X~{+h)<7gm^+lY)2@Z7~4$pCANi~ zCr>xm4_9&6HO!~67@lAGM>vyg^}*({)1zcP*NInPiVg^S6M&S~?Nh-h4)U+9p8_{V z*)-83F4bq54lKcowjP(J^Ad@q`a|NZhjY@~iw`|SBfn@YZ~_>cP6rxO@xBJVD z&>;0$3N{@pWDgIUmf0<)u7K5z!+Bw+mS#N&Ya7I3FE~xL?cLXGijufcF*9Z(S^(=MY8!LE6^IH=-IJfgDKE#LZ{eZQ#j6{SX% z`QWaNa&*VRRAh(wC)=Rkc%0xZ1M(8`Vmxe1l*hpg zYLi4(_qPo9)01Zqi1X=4l|05Qfh^r-81GFsv1=eO2G>b-uM?83@d+C)cIPB=BhQoZ z(3Gi(1-0s}X-n?y^x!0Tkay!WF9&DnbGd{T+D&!^-~V&jV<}=V4(6$!7&WcKb`YgQ z(0FpP^jWBa`Zf`9=y_hu*e<=LA9fKFc2hyiZwqf{qE%AE9HaQ zELVvQhEL{`#lluw>$f)_AIanJ9vYv%%3MlhnNfQwuGW2~7EEEaK^(y3S%xU^wY_-^ z7vOw4fo9+K&>vpQus`>WJX2R_XNA}JYS7g%a-kq{dU1LoEa^jZF~g zqgdqcakBiTNfurd-52-y8d<&oe!~t~t6VyuJQ5 zG^I1ALY4XTjo+9|W)H+Q%(wxSFdaivBIb_3X2eE7+)|N3ePE#Jj|XFlubR6~MV#xL zRovBO%XUo8E4=prH&y{1DHMUzPMbD6zhbm(<-e>MmCCIz^4_QA@3amdWQ^u*;z3!` zREunZfEr!CnC5W1Asi5Ot@104-;mOIwI!K+_jlKNa^5-##u(=4Fu+FV-Gw-mz+yZ- z%z&7?$tF}sGMp}#edKQqi`>nE+?D-?WsPQZdB=qhKJ13cYhMhVJGITeA7R@MydnIm zrP*Pg)QRjbK&Jx)_MQv~cUWFfK9SmlRbD9cChI*H+IPa{a;ku|*am=7qN2f7i<1-5 zJy3L;(1g?SPF%!V)OxuH3ueu0x7gH8@yq+qIH9k9S>Uma@78V1a8@>5su4trE3sm=)`uFG8@ z^0r*EVa=y>#pX%Mm6>TBQO47+9=^r70*ikKcvw5ov5+LW^VQaA+?2A%na!T5ALs@| zrsmm*H|M5)1}%rXG97>dNtEho1i7Ce)Z}UU!hcbwtA&5_fMvN~{Pp3hbT-!~$24Yl zM8%H~li7f1Oc;2{4+!#I>|`;-{+jr~q=Qh=vG}1Qy@CgGYf$;syH(=`K ziOwfN%>s@uJ80e!?DEj*BfjG1K&90}lu?y$ZK`u*u%}plM&utOQEwQ7ugo?Z z)d0NtzpC;_M7cooq2%m^D7QJZ@N)gpN)>@D=_*_uE@ljKVd`f!Xvf8iK0qo8>#=!m z=IVgR=vG6Z{q#TVT2hm@Z2i_+?Gd5DtcKk)Op z$7HRtj?*%s)c%=SMXyFfar!)vyZG-`>{0D|j$^*NFeZFhKBrSrS99Nq=MQ~`Kf!ZF zBQ>1G4RV*NVCZ52x`=lNZWb6WYq>A#dvG$Vzz6j07FcvAdP0y`V|>`1eQ0ms8N7`D zw!I20L>fbr_M!`5s7v7KAEV?!DnbrC;Ao#YQCsicE2rAQzZ>Y|=4)(nQ&xC#eaP_R zhpu3WM?v&vXFY?|M`_zCrZi0^=%}Ssm~9YZ?#;eieHZdmg^nPB954Y0r9I~6nLLp2 z?Iy!6DTftnkD2`YDBL;xZWIH(?#8an-~LG)wTiZQ;7<4Z1>zp$B%1{^LSZdC3FFjr zcY}FN+t^B~oT^SxyS*ivp0eAusUa?Qn1p*`DohLO@37~k-6nFGn2b0bpR}9&Yq{AW zE6ZS@Z)kYxRpNaB{C+#-NqGM-^zw@KI;_)sym{GSDw{6!etkyiFxRfzqdH4uI%;6A z{>>6hBKy?>Q`R%fO(7z7LIbF@ILy^GKBUOcVdLn?ys6jLUdlHl_IrL={~Z7IC;hbE z??nS?vX;zW(A7NSLh3tk4r_O))WgOhA2_Gkk3H>z@TxI4Dr-jTNA4T;q`6Ulq-p3k z>g9P*nS%%RyG@6yorc=<~iEj$(r1Q zadIH3YK}m&tbTSvg4))`U;p$^ikoDY@TnqAf%0C>EyM8k(seVz5!q9y?!<6J^8bz% z{<{o_{?F+DQ~qns61vLC6E&QY{OUHaS)QX>q1sW2SAPV@#^S={Lk8B2)a~&Gbw6RXK?%*^lY} zYSBXU0GbJ<0;n*M*x8{EH|&Y5y8@AG3hS<-D~4rKh}UC$)z>EFBf0h5&aNh;~B zpzxu4{Tth<%4tT<_e4RlkZ`qiL&k7qk0it`O+(LS$Kc3Thy;5fGV5#iyyZVPE*z{; zQ)F)+=G_`1U0Ba=jrcLf+lX1|TMkDacc+R#90bbLoID8u&htH5A;oew`Mb-!1NS|n zPu9Ah$B}P6H0uN2x*TpP?_ykS!Bg`&SEha7Nurz}kszjdG@Z}AtsdE~B|c_dRW=CX{27_r_Bg&@<&t_A zi-^y}W2?|b%oc;Mtwp4WI4uKZ$P!2P$i~Y*CjbXK`$e0dBHbw$Fx6HcQ2gn!uvXQt zxpNGSje1rR!9L}33&+H-#J#_;_L}X`^nUFly@|?5RzfehrhF3pbKo5tG&PqwLInLG zDEOt&>b?dQo7CXy$xt>IHB+`rh;$)rm{Z$X>Tr0mL01qO-q;*U6**2f9Ma^RmrA8#aR%FPi(XaQR-kbHTp+0c$)qJTxsk#arR z8*P$#j7L*Cd~ru0Il2~Yj=W(&Do&OEtWfG??J{5qb>Asa z@h4rM64z(YYq4nJ=Pi$+6{i!uA^~ubi#&%z?#pPJs^r{mBuWhY?^K$@Je*@WfU4Sb zI`ZJwFX?E;?m%Dpb&uy2s@8&fN6*R{!S4HXphCb$*r9@GCUe;|X-O0dg|)%MohZ+@ zYUAYlpy~ z=U2G8?|WH59kr{v8>q5+$@BBn>F74Si_rYv&)EB zaVDAFu(}sAccrmp-!>)eO04%lrFf&XTXt7u}W7va4=Bm>? zKDv$y-}q>2ZQUsmb9(dc+}+S%r!7?rsV#?jG!LV*S=g?iU^lVaa7hfdu+0SGGdG9v zEpQke0H=u$IitfNQkaAVBdwu@x}uf=U%gL9@Sn>~RppTKZC|l4T)5`1$;TGXupO40 zzx=K$vEH-DORTT57a-#G{2y*VyssO%LB{m+;Kz? z-_F+7agWH!nVEg(__JvrzhHZ`!U0bjRheQM->5Z<<$4U{7m^OE)AE*8hGrZb?2TXA z+S=;G7(IGtc|Qd&e9k4{l)0`nBd!xn)rnA)S{;ONUhqT*fiQ%f$TVArxZ-G)$Hi5r zwxtQX86&yIrn|YPO%;!Ll*U`;=D;!4xLvoeg53J&8nO>M6U$coblAZ%vsFTUGYCL+ zb8rQ4Lqn%(Oui#;Q}|!I`!Pq!NSV!COO72c>OfaHL^sOJ^)u0)^|u0bm)Pq=mE#sO zqeBzS-fbuDvs}}Ion`ulrQA5oLfy%wA&7)XO}F{rj?&D0_kBCk?*==1t=xu0s^ye$ zL-mN6_lrLKQTM~VFhRNnkUmE(b*HsqmWag z`e97&o!VSvY&(Yiu{IOs*K_qxnBu8!w_rE#-1&DxcZ>6KXCna`KCZt*!$j`*d~95$ zhxm!A%Bo*j#~8tw5kumK(MvG&QTd)In!(K-Xap$$DbOzgeoP^E2O(|wRh1c#sl=AN zTZbS@YX_&%cCV6RtHep!wJTrJPa-IHXn94;&`H|cd94rwKjozL;$W@D1|e0v)cW1I zSA1$Kv9JGn`+|UX#*@^Wc8C8#gH2|qf}VmzREiGwf8A{VZnyvQ#h?p{oPpj!pKj~G z)o!QskL{t2{{z!Q&@OSzVZ(C|qX3=7BeC<-C=)c%{rg3t83&Yd`a{--PuD@m;lNKwqAE+JvPqR`Zty%mR6pbdk3gEHN{h%&wmBY;A4wa@NHbJFZ?Kkqe ztS{J_)K(6!4XrEm6icwrx-Rlmyb;9zA#Hu^V%vebU*1jCR~p;iwP`k zA!Ilo6pAJX$#-r<+p8buYM-Esk(28@KGQN<_=Vfts}($5zClCo=j6;D!P>Zx9MdYjm6FD{XZ;e1YJV@!G8*iId$^?- zC*E{CXai!$}-KzuoR4!DirTaj=~HSNUTm zEbY8SmdV#Vg$%XM7q+2aK=}OVABBRjkPnDq%0@*Et#6k9JMpg@SAY-#Gj*$;Rijh4GoCQ?I>*y9fsr&cX``fu(GSoZVSR!7q#Vl6 ziunY&N5lFSkLpxZs&`*%^?oTn^6_F%oY1SB*UuA#oJ5>ynLzX6jfHD3G+?|P^w1NAPMeKC9v8d5S<;j`~xhwq%(M6-@)iu&)P&jZPo z?8&iNftI((*%bmON(xkNJX=soC9CSnzo_p{>UvxnUM|)w9VEKS%m4Idy@Ae^#a0<) zba#odLk{p^yZnU}NH3swB`h4d4jL`t~GvA~K4skT# zPM7b1k4Md8qoGr77L!d`P5i$+p9`E7yEZzS+RK^ncd$OjOhH%t^^ScC)^&gSx$tO0 zAlKrDH6tHpa($!O)ssJbC3ElhtoEd|h{?$j;EPNzSq22QOfrCp^3&2-pk1YWCWPRYnqdrp`ly2R$I_gQW$&!SpH z71qCMZ+=7gM@@V)B()Ue9HCc=oeSv1p!9~vutnFTp(%i6Vq#W{ zZJztJN2#@~)ynSR)J%JMdkz1nnGt8EpvM_iSgC;xU9=-?8q5JB#F}`+e&WdHNCw&g z(f+%~+;`rPPy-Wzv4Yg;3tlAqnQ7;j=L}yj+;4I&ki5S5<|sJomKs5nt@X=VrlQpC zZKh3Z7n~+<+J<4IjX~^JDVSRn&kV26eL1dXD>i<=^-D*`6#1s4uIt~OeXXX&EweK} zLlSu|{uWTZ8(eo0BED2d7}M>*#)gM!0%;Wx%`#WeissO9_9rU`s}O?AynpMJzy3f? z^-jFt!SgbFj}?*?xX&ciZ37-fnw+DUFyNxquLiy9;cJm_?A+N4iBvy$whu-}PyEj> zgeBCH#Y66Ihfk%=_J=pRJMkChxo2G_Q?t=7>g)0IqpN0-LUTTc-I9;=shSUP6F7qb ze=L0YrRy`X#(-*zlzau-_V|BNVMkxY!)~$t6JQdAk0;EtJr6q`HUVgypz}e{#sTsQ zxj%7R&h~a4kICi8p-xC7ZsAxnMmAGY-{VC?rXU~mBaDr*`&|1p&B2s1)<&}Ew;kBY zblvzWzjnqXAtclKmEfazs|2Z(9^6Is_dLS|FelV~n%^usKAU5Q5Sz_YS?u9*_1D^` z>c;Xq9diHiT+ZYVM06o-VXYS(+0FZ_=b&(2zts-zgIcB5CbXz`$CmP+rLB@WOXh z#jABEgd~r*x2jA@O7h=5pQyvO&n6dLe)gImkXTz|JRHzcoD#$?gg|gsn%k_(;d2Oq zvP?6sM)OVvZT1_+-f?ZIH{nQdx(J#Q8PvYRtV_5_xFzLRO`Di%yA$b|)~iup`)(iSIpcemV_ctyc?O=n{75v_ z=iNaT5#roG%=H*B5g>6mTODJ)6w(+OB-lYHWmxpS+|_}$K#~p55*=u#aciKUu7e;) zxZVrlI7`{%W(~3YJCUr?xhNU};1bX|bR`(z>7#g2HE28YrW0+%*WtsBH|7!|yq=!$ zl#0u9ww7B=!V{9M?409XbSJ&avWl3kI>3XtO7<+0Z0!}_$dKR#_h(8wjC%k&38Tw@ zWyrqa3`srk&%}{Hrs3q*2VCG(egwYq5*@hy$YS?ri};8g6NjTg4sDqd-$yqj++RSy z&d#KF^IqhgSNxvr6RB=V?4A=j9Nq_q!_%ABk>c9Fvff7!3Wc!EKwTRTl&67`2yfxMN*a(xuBisqetg{V zAA>sw*AzN@o$%Smul(o}eYt*<{bVt#;7^&ur;{v9i&EkYl12OPpwr0Nt+N*LF*t@_ z`lvnwfLQXkU@6-tsk_nOy^KGhn&R5~SD70IdeTf^DI>gO;XbrdRD1P)9G=c+$51P!Dk z6(6}k-Hk_0Lgxdf0rT0e<}A0&Rv^S>V@Ducd>1mkI`;u&v)2mHg{jxRMoDec)tw5B zfja{^Gq^kGA_WI`!dh?@hj`K{w&WaILeAeU&tId0XUfuBCGJX1J$&b&XySNty73zp ztZt+kh#OeZu5j9UM5MA;f{n`yIZgO%pSopv9M zR`12Xm1DOMu@2;Y=HG`dWB!~8bc7{A-1=`6u9Ge0;4bQv%ukd|AOO=~mev&1a^MTx zV>YAy#ZuqC)u#(e&fOOMg2@qNB5!}Xx4KW-=5p~1RKlNZ(GNJ^c98Fq`!}@qYt5_L z7Fg)H6aJFP=nN!anFO&?q$i-vfmFfb7$IF(k>Q|xFsUIg!TSA|avWyefA#caR!C=q zb*qL%{$m5#BchhuJ-~hTlURKgp@C`*bgXAu5IdqRjoOkNH3HaAdBO9lo5M*Jl$%^R z5;QS2QZ`A%F}nvhu-kQ`+dk{C+`Y%pA zR;3PhKOQ~)JM~*}>!#6nXGxJ)5e=>q-(?_n7jT7>p%DOv@d}3@=z`Y0S4^1D$fEh+ z_0i2~?fjQ-CEne7*~{HEpMuKwHGOk+7FKl#=5kwxz0dyJ$e_48lH#WZD9ID`LSQQ0 zaah#pUtL=@OKl1|vPw4g2v=IJk1;*$z}D__x8?MMQr5Z=_{^}dfii60!Bs26!o`Q` zH)f7FCh}0*@K`aKy<3NM$Orw2Kx9guBm}065n_@KBs)!Z(t4f;#eSlqyv6r;V>6nN7+&P<3^v zL<3DQNAmhu$E^}72K1p#LNzC!d=ciT6TbYws(s}uUYvcir#kFD+d60qGRGtD<6_!` z2*j?tOHfPT0^;*YpdI>V9`_74o8bh`7J6c@TN=qlKO1~`HP7bw7@@FGHzGm@(FI&G zU8sVR#c}T8H`-iYpL$-fPj!NKL^j*w^aB$Qq0XCXeDvNL`te?BK4_RgV!tn4@``h^ zfO-yidz!4<9b6A|!q_JIzNwx+oZBmNSo_#>boNk7oid4w5>r2cBnLnF{CmmlvUD0g z0)xJes{Jbv4$I;8Y=bzbX;VIoBDkdeOLtD(kwTBxusMkrH;}BJ`21vZ8c0MX9R!0l zDJ4|m*PITN+zFM1(VAX`s4F$(FCu-GH!8|gdx9#*2PZ>5|48kU+EggWgYjl&N_wCR zoD~cZzlq=Wx!Lvr5u*dhNn6aEu7b;F=rAXaL?(7_>YUj1O#6r2`VChU+;fNfd2`TC`m8{|ItG3(%JJi`OvE>T6H$>|AlpTCY5eB>F zTZ})D#0(cQMZ|Z13|D$oo4nbTG3s)e-CEm3SPZ>63$T<0dl~@WlKd|cLX0!K8Nqm4)1Eo%Y^Cf$lk^tJ6 zd5OkKsEn?OU(*bkD^YP2ucQW~+8BMx$BKFzcS~XZbZ)AqTL+LH-Bbj52*-6ElR=6i_C2b{2ryD~K-i<9Dd> zjWh-drl(0if%NWX$rDAdBCCoMMk#^(aS>)%k>iny?|mG2Y-pJdmDRRZ7Zwd)roIph zw;TVd5E^U$flbtMrv$_;F;W59)irIBygOud>}>t(b+)5}#JMOWK6z7O%`Sw|j9Gly7$!rBca?F<1Ar=1%E@el0|nq8`9IJY8-^lr2)K=t(N zro%|<6OM}y+RuuV8{A|G3&g20`vA&JX9W4t5dUG3wqiq>EK2TS+KS$WgXuheQAZ3c ze#^UT{&xzilvTqvZa9^tQwzDY3(}(Of6>b^cWM+^?Rzw7eOgU1Ev6T*%{3y;ullSY zk<0aom&h44=NKc=l#>>dEoCnSL_zi5{)#7ofVnv>v-kO*Bc1z~qneq@Kc#qLD#dlw z-Y-=#Lr-% zbgs(0{3cv^|2Wvl0?GsB9=iXK)g}yTfA5#9ZYNIb&%rLYK}W6tTFg`gQ~t?^m8{a? zmsRiVTdsykBpzd91|;S6VH1S1jZXRTJJhH#qzgQmzu2q9wKU&|hl{JDG0$JAT^A{v z@DmwZfGTkq1Y!tR09@6g#Le;}%})={RG5+&%8Kk4gna%om|KraJVh=*ulE~(ITnC7 zG(`DvVMVKQ?@w59w7vH?|=_7|Bz z(%OT>$9J)!` z?zsWK=AV%HTwn2uzZ;QP4RPM<;5J8Er%wm^5$@k;_)J&}f%#LIHJxRyJoKV}gXc7| z8AK?h`O!xNiOYLnuil0YAQ_<3&<~^#N|y{L@mvc;Vxg@KR`ea{Oo;1` z+DR-M!lDN5MLu(ag+CJq%zTZ&N(#Uvf0HKormfOOKA7(q5gyIJ>g?L6G4TSwH=z0K(1-w)Os=U_L_7 zD#W=8Le1PD)w`pBcskZ#w94JY`cuWXG^5%o+qZd%mELbB1FdSlanu$uDId~HNNh}Bm5)g&G?+H*t6X28qy()5*| z_XKJhs$O}l>U$QCk1Ik5* z?c`#RWUiQjAdx&@3WCplx4!57@E(DM2Wm&Zu!+IUZ%0JnjSKX(&N78SycnLqrtIZE zDoCF9JZnMJB2Ae&1TRXD@-Q~C@${qp^s-XBs}J27VMC@*eWWuOw<0_8Q*OU`|7tGo zcKp&ey-?GGqg?~g6pnQf6C&nKYGIZITiqQ!o$o;YM*Vksqr~Bn$O4HzggfHG1d3P>Dy|j z7Vfn*CA)W?WWh3Lw)qgD=X)XyhQ=uWxW&AyDlqvxe(X-SOwzdQQqp*L{}ZRcF|BUw zavsEv1$HzYHu8^jW^K{sK;NFWPnfGtz}9^DICaBI>vu-L2koJ2cdkirhON9$z1)XZ zT#V<$Y?1bS99GAGFT4X%L}PR~w!e2yL`pO(${X<#MCvWS(JeW+N{MzWkeV0>P9n=a zF@1D3uBVAhg8fX`$B;47ePiM(5x!=6paZHu6|r~|MVEPb?jFepiBj=aQjE62v#32Yj^q}QE@{+UR56QyL~fiW%C7=M#( zd_he#gt+W55!L=iXvyoQ>3_|JOQ2gUKs<#(h$ClT+bayoH9jq}4a#e6I`#XVXM-D0 zjnNrBPO=e`My2n`9Vwo!j<9QEyUQT9zoyw z@M+1T<3i0O;LMQGVK!i~o($*$qxwK2KafIqoC{EYKTBfEYD@-vTDw3{*MWQmjRDnP z1l%3R)2KYpfn*Mn2NFQBmW>fu?O)FdICMqNNqI$xc)3hRpS+-b-(U?**9Gx|V!cE1 zvSn8_UmiBx8IcC$B86_0a@jF6&d3%U!@*<6?4~UxFC*YNz0o_(*i{6m$0dR~ zG#E-d#lL4tm+8&h+~=}2CT6w6$$%|wpVgG6WI4ZT7}iIbGMvcH2#E4qB^=5mBPH>V z>6PGG`h;$2LR5k%SAI^c5Z{0~u?%UFU%aJkFf1`MV1oY> zBP_?a9difri-&;5&eD`Kl57A+`{empxkYGbJ@ z+F*cMfHcGGiq0}96bcD-cwU`1J*Inf3LoOlqju}`Q~ZL#e_*!NEDvt$2#-DcgAIjG zY+QJhu9TRcs!@c0@YVRGfheX>?MwCUu7zJoUtZ;f?58R5um1xJWcFC`OLURe^e@zd z`A2okNSTjkq@CZF`GyzlnWe|FeId@2%Rd#FHg?d4^xs`)_}=}fnUvO#8l6p?8wY}pfkFIP;L~>3b{@ziWD}spzyTHiBd@l>qaTfqz<1W}I z=5p{?*|UWUuq{!zBUuEa5a?%}r0tGU(1-SX% zS|x@@aX92|ferkPBwt6LZfeP)QH^v?-&zhpstmsO`TX8Ru-~(By9ha(&(zquQ@Nk&+H^#5)(vw5`?dGr1sd)FM8huc43OW?wll`-8D_ zx&!(8wCb%9gYc(fkAFo3Gc+W3t{UBNTAOh*u} z{NFUO1eq<^w5G7Tl*46MnEnJx`zbw@0!+i3XI#&4Bo+Q)c_vO|s`(Gh%5ob75X_*E z5J^C3fbaJBdE9fHI7-8>h$hpK!TyEg@RT_~Y>f||Y}1u35>4OW^{I^I&fokBY94oy zWH4cL3KSTktPh_zNd{%k#kQ45gGB6wCgLL@C>?JxFngfcvR!QLDa`Kkfx0D8=_@VN zbrOuqY#ry)s*Dvfu*bEUe=u;2_)z;3?EU^N5Zbc&fw=DegH+chZ4rG#sHs8+rJ6udr<|Yc91+dL zcvv~1ZtuumlsKz8_jCAnOlZzsGdq@BQX&j$y{NpM)os{6{M;RfaR=xKsFpMTA`7fl z&61FK0+)Zb=;N_TkEYz>ORK?KbqfbJ#S@wc6F)3;92j<}sEQBO zxLy9BTY7w*idSmgyLFoB&2G~77n+v4$NmAc>Bq%RX>219G52x`u0sCV9Lpxp^){Cn`#5@(EU*=ky%t|Sug$b@- zXd3puWy&(*_ghbV2-G;hN)N`Z`Wh`tUgDW=8^_)p9l-1PjqzbG+OPeepyw{Ou7R zhqgevCsa7LM(Zp~h7<3z6mlM5>Gt3m;ecxuI*n2u)nqB8pBiXXRw?ov zI8#`lOATpwgbXmuXP%8@yJZ022wA&y9>93y;|`v@^zf?-t&YeATb(&U(Tb&>X-cmP znR1s`b~(85=66}+%Sy*A>4U#V&sl(4yo3Wy!wF)4X>x85<+rIa3=})2kxb(GkFUXW zda~O@E%$opc4TJ+XOnDD_T2Zxejm2j9rx*r=f>}MRa=@KdlIhTozT^?YL9y4djcJ( z5qw#w)7vjAoV$?$f9EB974$5CzhYxWodE9>1@%=sly9u{&-Lj~T^Yfi8manVY9D>F z?!^T1Epx!2?Y$fPqX$EVo1*7m9@oTJfgb_vhFye;jWx#u(dF#&K$62;lATD4EctI> zlW2`eb!}zCJNH79@uk{0r*{GwM=5pIDPy}nuRI8yJhcxFy1I!)(rU}^v(UnBX+cMt z9sMH4T?YJxHo}!U{UXBQ+n)dzE~t-1J~;Ao`Z&IBcSshu=R}Xd-@9)~J_OO6Gx)bi z&~!IOKbiKUrU^@hA%?^HxiJNk#X?dCe7We;OWr?9G~Q}I#K0I@$v48D91HiS*V13K zAfiF+DTLx4#JOQ7hv#r>yYnV{m->*MS(3w-Y!g1~Ka7{@eHEP;w4lf}w(p~ZxTH35 zDrw}?MFrny;_4R^^fjVLe}|e})(4!k6o)sv_@G+o2zVMXbjx{wr}fZib(+nH@j7l& z8S_iJp~A@X;bw+crsi|Tq3#x6gL?qtO+icnAc!2Whz?rHff}u_EsLM#luuK-Vq zqU^yvqY+Yjx;m-AuB0-u(DP^tru`@kl19!(BFI))pbmJp>1)+h7_dk?Lp>0%w=6Pvs>rzP?63WbY< zr0m?bWcj+OL~%MM9hZ%!sR%&q1qVuD(})vIr%`5ypSFKdv@mUNDpy0qxaV}gW!XK_ zsB&8p-QX!H+nkqX7{A!uBnI4o;xc0uPv;)6FfJro$tzMv8pyQ`0yqBBO z;g>(G$$m%AU(Y)~B%{7&vH5Xt3*z<$4`3bE1!x4NTmJ)NgoX$e2C*fLLMp|@dUFla z(l=jlFebVC_|_bKv-gNqsqR(e1WWl{C#nm?eh#b|68yM7x{VQ~M2n+1%~3On{X9V% zZTnvFUf7+kreP`H$JAT*4zqXz*5Z#fKUw4S83a_XhegORcslFwdub$9Aq2HMZ> zdFWy_bl$XCXB^pEfUXY7ncl)Q8(95LZHy&7`v2H^6L2WQzioIdHL?vwb|XuaEo5It zDoYYYNtQ`Sl6_w?mLd`%lrWWKNtWzc#y%oT_T4aqvdmbY7=5AU}`ynUzqnC@3+vJ(mWeRP1%xd?9c0l!4*Ur0NKOFZxe zTj9?QA$R3i9a>{}-n+%-6X5s2Y_$HIuT;b)Phh$*z$80w9s5%ox|LkjTgEwKM@|}& zwY4=BF`TmvE6OtsD-tznQ=53XuHV=6oOyfxP<{x3i$@Z!$jVw(BN(WsDc22Mz8bzv z=`syXNsQV~YO!7cMBbo$>IEMCGI9b2#C*%1AYuNPxH$=eLR4XJ>VU=I#@I0_59J{@ zdas_|?un=h?B#{ScP-F^w;L=CNrAXPCW!Z!@2hj!+_iNQ+|kycix!|qWQxjVI0(8M z!AnDfdjQ1+!j<_+AyPfr7GDMgb&L}kfpQ=y~q}G$35Oi(2kfR^{?r@VxV8pVW*?xc6V_%toPJ`an(n) zf^YYeCqN~%9UVVkc`LP9@GCj(Xc6yb@|D9Xir z(zY#hOvhDD=}!<{qB`lvl+9Ex?})p*FrSK7hRFx}{*`;;=`73bSegy0Jq?3P8?HS6 z7XoO&*KeQ5(Nk8g+Zbez42O=b)@iYJVVv! zO7{6_tkA(v(+BxO>K=G^L)wLfOkujh&*>z@z_LDk4W!%Lp5XQ8+PVBuBH?-Ts6f_W z%8ZCHcXEX8A3_+Nt@7Wq{uewR;Ulws0>NXYYn<1YMqMeYR%ubOdxd;cOV+sFB{kx7 zpH7&t_GaMy*6Ho2Ec&(MArdkc_#R43`CiMa%7NwBugk3>l_RMk_)=eJIesb`Nz8YxSrh89t|l8S2S;$ zeT0wLpl~4EBcHxDF#8}vcXq^cNUjB+YfegLN_2&arqkVj1xgCT(hZVSBDG-`*3an{ zUG9iUIrO0xGVOxu`CCfp9Jp;0#3L`Rh>_!~DddR$J@NA4lEF+Lr~7KQjYFQ!ZuTLM zUt5IAl=b(dnh0L?+-Nxr4P#A;6c!-x${vDAvFIbM^Y)y=IQm;oQ%qtoqm19;Gu;<#X+PPUV=$D0=`lJ z|qF^K_XziR1h%V048l_L0h5g<7c zI3U7h&M~*v%t2@xCw=%W*kQn7@QY-eB_GZ625)RoA!54ni}Egk?mq4tscdXVr0RhB zN;>46{P1!?a~P^~j)!qsVe zg|HmO3&hUOA3l|rd9ngt$!s%h%bJjWP2`ued1xDHEMoeiZs=s6P26jX+T~w`Y(#3{ z-|@dZVp-2Qq{XZK7!xP#RC@(-h$hX`iuUHGT}j2nf(`RUGp%`(Z^Vpup3T??HXojf zCuwl2tLPaUk1Gg0dXoBHzcakR+$UQ}Q=`jVn(5tu9Y9>{ezIVSdVw0tR)nPV^SnI9 z)C?UK3A={@T|Tmy5g6WFh@+lRS-{2v`wK`@+SO~DPmETd(YaXgTkE*w;S;SV6}EQ< zymVB|cy8G0SQts(=<4}d?&9*&_!DBe5iC=0g(%uU<5T%euB|^lc>({4Z!?iogXv$J z{K_<%tQ`j?@|c?q9^~o(`hpGz}_7-`0;fv*h zS6u$j#uGSG+qWL#?xWL%bE?GnQkS|H_Nh`Fj94D`49X9iSO}G0>An4H{w}4cC@j8|j8Z@Fs_T6DcDd_t7bXfAyD)@nv)Zj$Ia}=*cJhGb_=lR5 zDvIf}kg2;{sR8}B=KZAY`!58_*;uA|_p$51IWTjAJ8}eoQr&lCXvaMJc`w2FiOH^7 z!MSSB(@jlpnSP{9FXMw|EsCFgJbN}OVHf!fPPhmlDCRH1d5g#fh-kXV5Ta`1V>RV| zj;H+Q!to-5!7F-r98TCL3p~*?@FX~|>U`3?02N8ZbdU&>za7qvmF+du$+zBidV9St zEc14ZN^OS7#A%yn7Rr7OwhnlTdARgYGYIB@+0#3+YJCG~LzeBBDt*fFqeZsoTfj_B z@e<^y-6fHpr_ALz>o^Oh+Z#9L&?^U)<7X)_X7-&(7G0L_@2`z92ee{w1pq{~RYvFd z4sKMB-aapYaTHRV0`+7xz)+aS}SHFCb$kTpl1xolBO+A)fdQzvbQP((G3m)@`_l8NkyyrGO&Ev4|E_ zZCkK5DWvAHO1p#7;0Dzq>vl`+@UQxB4b`b^DC6gM1h@h$D8Bl35Y!DM2M}c}BTLis zarO%PiRGzdCen8>O^PZtqHFt>}R^;Ot*Wg<%R{ zRmRYA8l@Ir*mm`LRT|fhmpE1p>;06FyJuSeW%Jjoi(F2pF6j?#aLXFnY5j%dSRNfAuE=0dXm}{d)_{48HU;OYZ@v<_-arv1 zyOZwIN~p45rhhvy*Ct;bE~RREag108nxqM*ed!$0vzl3mu4G!R>qK!;Or5;0?|6Gh zAYbE1xPQ|)#z5Xg{a;poY^M~wDME*XSb#T*+?{_WdW!tCptE$=?oZ$!>B+>&=_6n7 zK6(cGF$lGqCj`N$$9I!6FA<4dDlblV;QUur1?eYHxKGHMxe9R1d1zmCZc?ltPMz0- zKetJdTVHp)k5U+FJ6{{AlZXmY%t&wvurlcIxZYEC7}g8U)J&vz}-@7!WAG z7?U(PV7}9d$^wM-UL;MjD+Ms}8&KUTy5XW(A>rB&Gpxsy>}n3=-!<2ozN(qgmrDux zcuEHd={RLUs8ucypX<-|Yg)W-b05Nc^K~k8EF*5Hm3QkJ{e=`qB0j>%Vy@JapBDft z6AAD<&ch;9$q|396TA}Vgbuu_s%^?PJU8y15oB@BkW5t*IC6m_mE{p5Yd{W#h9}Z}9*L=Q&%nOt}l}MUN3L!9_S);2P^TOaM9(dM^?&1pL`F@Mrcd*u3D4 zZN8^N9x6L`lY}fTMsr^1Qd{*_7P{S1U-XjvFHKqWd1V2G87b<9GJ;}+GO%`NN8 z__KxBQMq+~I&ouY>X+YnER*XgzB(ONy4bn*><=N(NUf)$37q;&(otB%)w2=n$+Amq ziDx;Am9Vq?!u$UO&Tq~WE+~=}QEdQ1gKhl_;fnZysw#`!V;f+dMfR1hg?@@VZWfUl z#Kx>VZEtI)^T0`|BU$*_Z;R-B+u$=4z=Z*Px)-YTTnZ}a19@i{#Oy`_I3L;vm41z~ z9ZTjXlevhpFX!16=6A5G5pf9+8u*at6|mo}&m+iZGdE7W2hz8oo%V6CQ3&@|vufki z=3fY&zE(Ob=%&DJpJ!3}jQhmPW8Zb%31ppMXxa#)8YGYqEXVIhAHd)FCYr12;oEyv z?i8Q8lA#Oaq`C6t8@*kqBb}(v<1OZ7F)!+I3J7M}?AaE&nh0fvM32pshw>|<)vtB_ z{Heci+QbF*D!ebJ;ilnCz#o11(o&^TiyFW{yo#IGCltpLt=@4p={?lp&i&wKKo52o}@f%78~ zED61k)F`T<@o)Sh8jou2Kro`bye2K^-!YZav8u-BHzGFYwrobiFYp8oU&=UPQBYF&`&w`sh|t0ysod~^=b35-^wx6Si{!UI|hzF`6eK$UwJ zq0jVA4TPw0+~<}%$+cEHt`+VxT>$^XeALh>m!BcYkJ9qb10|ECWbDdX%vttCE8w0_ofZ;uiV!&POR96I6TV@+$ww7tqp(s>(ISB$Y;RdCn(;&GK)Zv~&y8>s zue&WQ>$$((pGigwJMBAu`R<^>%xD%NI{3e)fB(lMF!b-w|J~Y>Ijt)2cG-N<^R1EZ zIW2s_6&boiZu7kPzuu4|oGh_kg1}`WA&vp3;-dT?#Uz%>J24ouPlyHBqyjIA=BRQ;;<_n1{>l&c7~V! zQsdFn*##MW$(KqE5RcxIWt*RliQG19&v`y_m$JS-SZCWT* z`*bnuG1N%e_~}uB_S3X=h@7n^i0;>sbXLLs`EtcBvXkL`6eReK!G{bdP%D0$%j>N! z?C-FWq?Js}{pJ!D+a9mx`tsuAZIf2JBtw+}uS^LIdIkzth^RtSg^d=yCLLDV(Y0go zpMey7^{@N~wUwVTU0l2*i<*t^HH4}5>f5M4dUgKvrNpnPCox$^6?4A&B=MZ+hUCt@ z7Gnqf&O}ZbhAJ7S^R^7LzfPY!hL!l5_|weUTIe>T9=dnOHw412AAC>BB;XuY(@kT8K>B&@|eikKPN;9k)N}* zhnq(ScNALs-@vjwnDt9{5sN+o2@eB*n>061uo_7Ai`q89+uw|`OK*LR=Sbwz$MbKE z*Z#^661<;-2P>!b+-S&Sv+=?rg3Es61(!f+sb{HBVy;cE=6AW!Q0p~8R4b@@;=UxQ z!y@TYT{DSBP{;0HH~)zSd zkv`Z^aER`GAK2XX!RjQP)2rJ+w(e6!E&wvzcj(GuCVFWPcb9KN_2nrRHmn9NjeHMt z8cpX61y-faKN*{KBl*HRx8T2!p-}3Re-#UNSP~eh+3MUd1q@X*PqUzotoK4I-n`-$ z!0K!)+8HrAMOGB!Yr!A_DLZO=Lg!`uek;xyR^UJ%Ias#3S`)mBKRD#{*+4Gy5xnS} zaPUDTR93R%2dX$hG5L$F5rI}$RY?gm>@|1zigwomD1sVR1cy4->MOftZ=|sGkwFuGUB~_NFm+$;?08D>2?<{VX4R+`JvI1T$E??;<$}|-;Xi-uGHfz zB+#yii3yjYsG-{a^=Jq`Rg<~G)vHFNDH44jCmp8SWfy)W4cQKM82wUF`55M8V?$6s zDal0BL~3*aem*LG2or-ohoOpEh#s}yir|O8bqD03{ZKK-5Ha3vsVJsI;SE<(3HX!- zYvXSeWV9;3`1afI6mpmm`?I6BqZ3N?>~IA?VAtHqyA9+#Vww>d8$xuq9^KPMieC8q zy~ysjpNaTG@82Kp2W7Y=O=fIJGW4d^Vfy}M(jH-F7<-)39?0gZ{272d;1P-<<>u`G zKW}197s;etfV7%YHHlh9_~@ydZDk^`ANv2OkF_a4mJVdt2>*slV zE@Wk&Nf$a?Yl&2g03@llpsM^Ave86H0p#-$#5Q}fLm1G?epDjoQF7#aNvHX%uH0wt6~Rw!!vkV(dk!#@|0P zuNmmgb_=w<6p5lqqR5)lbheYTN1Qij}GTs5kS3`%417f|V`rjsJ{G+G zZOkl8T+@f6bprpP896jo=&U(@qCO3+T6Os3120#4DEyNqJS##0>`!o!tyYak7VJ&C za?g-YEoz&on^b3P|8^2qTyFJ@HL(-FVnZ@4nKqK<=Oxs(dL<%GU|a_h?ih7~x}jiG zSJa{|BYxwgb>NC~N>wnE1pnFJ5ze{{Q@#M*P8vyA>c*A*fE8%qgoXXL=(?YY;0*F) z_ksQGOI~2Pwb*XfKPtIFAFGgNEeK+pz^^6Hg$lqH1>p#;{6#&igX8=rgv(z9--DdUhQ5}s4m&htAh5u4n_sjHsIfPCHul1Ec1iYN~M?XUrnEx zt714nbIBB)z{@CApoo%s)4)c;4Q@juBm{@2fi z`DVYlXl>m>F^MN3{%ie5gEwxB_!_1{glfr72O#U*RC;eB>o!J-HIBCe_-KeHE=f}Z zFHsZR`LO3lQQZP$DQ$wY`8B>dxNJL|3`{!|AOTt}G56=6Xu(@yv2;ZIt|I63b5riZ zwXw_{tY`LRSdNbnCXq+udAlT%V1Y{JzMAi#_$)%&`UXGG{n66rXS%U= zJK5@vQAoj&v|jlieSW^vOFs}babW9Y zVMloXl>z@A|4EmjW#u0R0X#AsC)h?u1PH9(Q`;Asl1q;UJho24ltS=Hui=vFRAJyK zk399MZhZWS8^pFEDt{pyu`;4b5^{#5W)%}Cj5u>kLQRabRmQ}vLh-{nE93@KB^098F>u;2b5BnuiiHY zDv&Lg(!3oPgydo-cG7>(2NnG5A{hJ*Ecd!*v@i@U#Ma2}DUy`IQ|JR2GjLI;SY@g( z?JdszAG$CAQ(W)Y*T|B|$FZlh{7E)
    X1 zK4Ab$OHmF-f%^SpP&KM0c@uK}LY`Oeu+6Y(OZLiLPt5T3F4SUAo3RFKi#I3B`q+V- z;~7yrc6C}zj6Fy+FqAk91{#)mc{fp22r%ZnLoy?dQ)SJkjM~QM*vC1(&dQhOi4HFt zvls~Ye%ZkZgDHVkbR?K3G$+fz0U!0Ao-CD#Y*`wd*6ueT)yOyYv#X+;Koq+!QFO|; z&ao8)yo^3mshFFpD6%+|%In(x?Ph;NNjQusc`L(5XZT#g$x{+Hei)Q|%w|Al?ANH@ zd9>kDXm~gGG=Rpo1HH+QPSK4_Yx+E^A6{;Doe*kpoj^T>$n)-E*T*SB^bur@V!Wy% zYs3#x=xDf0*hd3TpfC4?+l!MZ_{JuoxbnE#CllF$3&?wD@+mZxw+@s^Sfx8+bP)kC zu*u%RexR8%kOFSXhMK0+zA&A8mv^C}IkGg&mm1ubGjJjShQrhOEhbAL_ItJ&Ob!Y>wbxnR;<0GZ)pt8}eC=k48vt4otD;Kdi$Q!C>vIcM-adbQF&_@3nHsgae9(O z+AFPyYIpgZcAM41$5o4GUgbT?(75=%6&KSPp+eOlyAl=g)*bdL3z==RqFWu!GDMD{ zDI1$RMH!2~e%-qg^=IdJ|Bqn%4uI2$%kM#*gx1<6{e~J`SqckSij>{Uou{+dgY)ZD zcU=z2L^bFpE0y2&?v7Yv?$+9CWqN=c|Bk8JT9=~OMRb*~rP7BTm_~JkzhPg?OOD)Q z<9VxhOK9-hQAAtA*U()sU7wC5cvO8rk|m5uau8je)cjFPk&Syr2rs(lh@ zy*a3$r$Whh!zg|m*dYw|4@nZ7)0zk{Zf34{?DrfK?X`|0EjiEKS~f`c>0SvR;Y*u% zo*BEfiTI@V>5E>z9Pt%HkBEKmXH4F! zgDXvMWaA+KQVV83A5%=}SiRHb1g{Mh+{VS$!=xe)Qm=7Y8e_0Zt^d{fTN5px4~2dD zAmQWxqqg#|<^ugY^ncY?{sSxiM^G8fwkBxU1XkFGEdB9M&C9u|-p~Da1n@QzQgWpt zCbyWwOWq}Eh*=-b7_r=hN*5de0vgcg!=}-XDN-(lYtmjJa34@?hzIcJsix3as&;WE zCYO0fkbfoG)bVud=*@ili7u$_XPSK#dO8ij2js*?=MI2I{UxlG@`R!|FCukBohPp^o$BGk(o0%1XsVro0FGz#D-lnPEX+yvEs5tSoU|M zGGboW=u{&oeMO)@bYE{S8Z#zDXYB8($wer{SW@vSfW2*~z+o(7&}`zb;FC zhr-P#PhoJFb#QEt$PorQ5y_!3Zlds};j-Pp=IPfSpPKY5OfV~$IKJG814FCQ&G#~O0T72YSaQCq#{TMH?7;jmV@XORpT;R); zm9>&7sqRF0Sk%Py?ZiZHcWV0bK`08isKd`RH4w((%E&U~>pmY*t*X=jg40FfT-qY? zc({JGz511kL4_}SXG}YFRCH3GNr}s3KDg1b=fb~|ydzVuFX=48TSJKk!te=@7~x+T z|3A@L{*-|2=TO*@xMOoG))19~zJ7{0XWLye|ABZA-t0@1eS83u5*-eG>K6 z>O~aMwDq?iD2{Y&Vq<`zHVgT!1@zi>K+y#HboHBZM8`ab>eg3-@t?tyVy3Av{aiKZ z@L#8-=eGBYYkuI*D$DK<(~ns$Z1Ao+%ZybAK(}ezaVJ%MQ6&TG3{zA zpS;c5I)i6oTbGKlpHZeHPmKeavSD5=w9&stjak-XA>fR9Wbm( z7&?La^nJPQ{fY2zx=&Koph1DIUZnW4-R%*S2WW8&b+x(IN5}`ur=FLa4%pDvHnM{u zO0{5itbZYAy~uK28xnxOs}b0X^l&S{`^GwB8n$2`N*_H>DRSBdV^nG<$IQ*=24RM_P=@iXB zrtvc5N`#d@kMp*-EY&zq&gQyxkQgq^Z~Pr;9|#=&h0u~wxB_%J8e29w(1zx2R3xgj zPuT(HOQq_J$|9Qyq-~=ycV6zCO^oar{$1TB8K&J2VX`*&luQKEyrfACbf%b4(;P5LvV1QfsGmwsjE zxV_r_qksJWkmX(fN1A7(8|$;TMrNWN(NI|A^;KtI+Q2zUM9$5PK&E7WHp8hRFYsY1ec6irT!$UsqiNE!2#}`g7?wIo1Ji7^T&Mhd~LUs;N zMcz_;=z#WPT~ClcfPjV@xi6Zzw*jD9f1Xc)iAZOn#q34F%kU{~>er2Eedb*-`Thw^ z_hP6#^CUPK3uqH`Mt9NArcNdtUVG}8H#_N`N&4ooq<-gdmG>1vf&Bg<>t%^(gct*b zWh|p#t;#*=b<0|!(;9N=pU)`&>7NW>>sApOtA`vVw{BGgXIYfDJO?eB>$%+eH-AU0 zf*Gm^F&a4I_Xao~1VxCC0DGXmUc=SY(WUF#Wysx?|MsEe$F!(OsAUUaK=ub`;vMxd zIfP}vqa89fyG+uZQt~F^GxXQ>J?fFy_2JAT6#;s$bwZQPJAAHN zzI^F3cy|de$?j`F%tk4M{p-rUrE{DbtO^6-sCu7Er>2cWmgf_zSzO;(9g|FAb2mR@ zPv2qLubIhJ7o>mqc%fDle~>^whro^eg-mae0Nv<%+#+Jqb}{aG)z&d`+0}7{M*a8_ zyUVT~eog@*)phRf@o$bBCKy+Uzf4qD;EC)&S#41s(y`Eou;&i!-zAtRLFP+`u=znK z5tL$}FCS!GdqdpE%~d*j@K^^;oh~B9r=GWw#TPK82{< z-?&b>PL^oFFa{J-FU`ZMdK>I-&!1qg3Csg6I(RmUQwzX1|@`^9kaKyjcX3?{->x_uH0_T{7 z&iMAbp4*P@ho?b&dk^&p5rz5+r}BvYqTn|x;c-<1f@IH?Hd5BpuF>k~!?03R{JgT{lw`ds8MBG4|^y56mPZ<&hiFx^+^_f82kwpq$aKn_4lLMfU|^ z#;+~14BvV(XtL`Dz$f!s>F0+VO%}HV=iPR0-&xJ%LO%O2Tqa(Z>z)~FP+@pdH#>XN z1rKrq|FiFJ-VAlpYkUdaX3Wv&zd2yXkZktObs{lWY3je{;50;{mLi^@4nI@wf_qoq zH9Nh(2*vh2{531MJ#0>(p6j;?N%=VRn?uZ+(j#2F#0c$a^g(v~;k7XJhDdJ@Nrcc2uSJpAatwrm$vLvk~2a!f{oYyC8-s~K2LPzf>)oC5&8RwE4%GU&fp4y#R z0_CLDA;%j^)VhtNxlt;JsakPUM-%4>*9I8K8Kw`=7S9*e&>kYa;%{yUoPS~S@dZ*S zT_n$-hjZxWHD%dDMMMpHJ^EbUVp&X3c~8;!qocloWz-sJftG$m8zu!{*0lLZyR^(^ zS^5u<;k;@-NiOZ}6a^dc$*1W~0J?TI<(p=MA_&NYR+z(%Esex2F;TSc)yP zVluKi(_qyaP|7pBwi~ATInbB-p3ReK-0hQ@^2asWeSNjAZ=Bv- zGLrkaF0D#Ky1@yq(k;?M8`lbmpF6}?TVhcX=GEsiu>_78nI%O5tR+$_+=&IG<-xhh zG8D{|)|Hr-fwfd|lLj4PES8z8!{)NJZwUoF72a}^)80fN=Yf$6^xI)}+H z#uYJ%?1YP=T$AI~=gy2$;qD4wLO!{xmEUPsd+WxYI{SLbz$oikLtFV&PYJZID!F%_ zEM7q6=DP*XP_fyfq6it=c_P@dC6_Pdk#s{%ymWKcUY<<`bAsiwQE_jZBwWk8oBXPD zQ2QcWkF^3XiU{|eO@u>&U-@VD-9DB$$GYb_B@X5g= z(xpfFn54&tA~iw%>ZmupUy7-=%j>uyi^I2oH?6wKKXgAIw1PJsLbVD~L9EN1Ph5#} z8EiBH1RLhjR9j~BWNodiu)5F8lqAAEc2N=`b1O^Di0O#b&EJXUhc(wUc6D&c1;b#7 z@&t+ya;1zai;f%vGYp09J$YhDrz%>$d#desuXw+M3DUql;D#QE+Y#MMPbY ze!pbB7Xp&9quvn%J4LsfRmmybv0L)~lv~$=gz=%V19bxnNRTzP>hL-NTT|8yIE;Ft zDP2s$5c{hk8Uva*QTzjZQQ4NDqzyNBlS;qJfgcvH4_^VxaRh9E7*{ljmzJptoASaH zByTo4IWEK<|5FoMb#5vo@awlrX)P5Z4KZJ1?Hh@ScURhhIthZ{)%6~{Sc`nQC}I%B zLv>Mnq9Y*EF%^+I^+;(Tz%PKQ@b!1$Cvw*dH6Y9JSdFrc7&_Zn5rCz^@NfN@3=)@K zOmr?cpDQQ=Btt|fRq*)}umQ|(7q&Pq<~T_-o2Op$nF*rFFfG~u`Z>U^->EMPqO7&f6_hBa3)gsgR#*D%C!6{Ft8{wHo zZM8zze3g)YP^a!&n{$WsB_C==$IHyvhdaT`Hq6PE-)T3Hm5V*Ow81iX! z3q^6tbiw?2sSa|%SUPFowqUmRotddV?<+0W@5z-uNfe~JJUa`VH$EwD9A3an&z&du z{{R#~#u%=Hh6_lp)hDu|2>eQ7q|z>_Z0DG>l8Ja)T2oYa>k)5F5za8~DE%X$p#S;A zL5WNwhPA_)nnfjVxX&q$%I$h+x~ANFHtX=?rGdbJzWs>LuwMEv-b3JKn6qRs1k2<| z`BQDl@L-g*wl|{c)PQc?T9QeN2vF;oB6v{+dI^SJtZQHJsKl&!QtzF%@lRcCBU1+y zzCJE5slS0#UHcGJlRCQicBhkSXdg z0UUPOWU>U<`05=P!Y#$;qT<7Q@{fX@TJ<=qV?a=MO1QRkzs<+ZgW36PkMp_i{(Tj z7nwW0hW)<$yCK4%C!}S`Sv1s|^cN!Ec!qy9O3ND}+SKrGZ;gVzH3lFcssO^vmgy6?&opgpE`E_@G!^jS3o zq?50itc_zXB=3T%M@$QdYTH@E)eP~Xx&{mYsMFWHFAcv68^ZMWyL}DZ=YbIYpIyAv za2q9l&QOcXh+oI*thMyr7DPPOF)gEIDJu74ZZ)@5EQg%a(a6*PC*zv<%9t2MmS$$u z5TI(oYUP5_a+3!o9YXhM!BATAIw8{9-wi^0a5pKawgW@A&_c}GjcQMsx+`DY!> zp76D_NGEd2k|P~oNeJLK%jU#<4JbIDZhAU>4#75#YDaO_w|2dGsLqZW;6L;jfc}}V zfD-YGWn`7O1yHmJI7WpL(KcE`wpT&&P~%p!IK5$@wjI9sqRt58NyDhkY_zt*dqE@* zcH&3!Pl`E!zXJb9mwc#Q29r znJ2*!R7P)a;}#ro9R#&71TO8kB$@z*-Pp85dTHe;wATjG=bv- z=+rX1ktbQzj+GA^9F<6;l{tH>b7^}6{*dgNuZ2JcJ5cv%Fx5?l|Hk)uvFttRdfmW7 zr}Gw|i2DQ&30T)f4XkQz=(B2V@PA*`jffGZ$>tN#F^xCzvk&LnMOlVRRqYLT*Q4jg z)Uymd(Pza|DWNG?CZ=rbN_r3CYi1Wnl}zzTFDTmK%tN*}$E)kF8U@~~sZG#*A=R-1 z+w(CfeIZSBWqCWB4m*5;YL!Fa63}0Pr#@lY{xUeG9c+C}nmG_^KLf<-?M^@80)) z*#m$3iSycZv+h)Cl>LzEROP*}XrcZLaaNP^GPYOzk^xljRr*NX5&Jovd){PY}VgVn^{xs>W2T)7M^J^1O*58yp7^<(W zuS|JgXJ}Aj{Y%JPBmqQcB1!`bLztN?_XmxsUyoa*+DacJ;cIkd548W88Q??e0kYq1 zp5qU?3cYTgZ%Yna%$6Ci4b`!AtQb#VbiTy=sOFm^y|BpGK6a9EbH@o>nP!%(we3$; z6o)%sgy{H&bOoj&%UD4ka5S2n=$dBt{1RQ7SW@!w=&d6*7Ky^e|1astf02*SPfWiX zcrVF-4bSG(3RsoNE6~vKYY~C!9(rqFC2^cp47474KiC_tn^B8iF}b2d*apzSy)hW> zgmNdnFugV;FIHDwl|pxka!ETfr>gC&(dr`QeNGlbjsXFfA62r7a4Qed?v<$3aY&8= zSZn-Q9%plPwxpURqAD#|<;Ve%o8O80W-<{p$Efk{Xj{L?^y{?|3fi z?3nBT5e_1443ZWj5#2GQ zQno+jjGhj65@Q+FswROuWQD=+PX=HC7M){xQtgX`-Y=bvL6x2E?&sM=FP2S78PB*PG$a_zK(HbV zUOPh>0Gn!kbH3^?qzf)EfSc#|J=}XV>f~EtYimC7A?w<@jO(Wv6|)kHn+!GkgXvWW z+;W{b7!NK>6nc9Xwm`StjG{FakPiJ@2J-#jghyf$be1*3Qu$dBgLg1TLk=)C3bpGa!eNX2V>oWwm3(0KY*-iJ<<&I5X|Tx zsDge4;r_JjMs;EwDW05GNOtOQkgiI$G(%jej^5<|;%Q}a^1xYBSxY%BCiw!g^Py7m z{&Ol*AoK=Ql3|cIK|HXgm`7k)Dk8q4*|`mf3-Ub99`L|6&bPr`510FG>4xsPzFLaPeXUfzDL3E>{qkNU=OO zqZC7V2J_582|}n9A0;G28v(5YA^$@ppPXOairj5V#&46~=HnV0MvvH|um(m3EUQM| zXJpbYkpnRt{f+K>T);ud9dLGrEHf|9c76Q&lX6^D<6 z`ZY9w!Fo|1+}mMrux2hg#7m4P!Y+_O#n6-q*wlH*Mwd_y}DAtBpJHk ztI}mC!*mGH#?c@rYOO;Oi15i&pwx+1f3c|}^}&6o4<5HT^gbb^^zPTXtg(>IlUF4# z_9b>b(>$&2^{of`8o4E`4KfbiQ`7ry71d@b!E;nmH}O#Cx!U96?h>nt#s|EJdJht)N~8yCSEu zpFCYHCggP?(PNFOO0BVA{%J8=M#h(cev17(IAuuuVGBNDhrGc;N24r=lQ={8|&eFezC^bI^8cp^W3bx3jd zbD;-f(T1^j+DKVTLm@#envnqI-LJwBLeyKV8EkRrXI!pjr2I0b_Y&tsW6*7w$X7y~ zn=t-WEp|%SNZTzDM*78q0+5UhCG&t4u|&DS_))DUn1vOX$kW=S_ah5Uu`CCceW?@AAK#enwT3vKzW3d3 zDKWcHENpz+57^LDS}t9PJ_aXTFMA5F1WrjisFBc*DgKI_?wGSQ6=|xfJ*Cdj*3j{u z7;P=aods+^AbOUkrTE+O`+tVVI`C3-tF8k{f5Zz^0(r8cz2_buZ~0LP5aTCICYUEDm=seHKdati*n`7v5Km`5&I8IX_S49d1bKtcS|r!lcYDd*;9MJL$dLRI}kbzv#7KcWzCSH$MOd+#u;FH_oxwky9J+* zQb!VO%E)rb@d(^!2VKISDRM~o8QlD_yymn|l}3JnwbtAnp82_Vi%U$IFR>P@6))e8 zb|)$Z@;!irH(b*g;1|H=U-?YR6!*L!hEHnb)P*sn#OTAP3f55|xA46kei}%$X%fas zQDmopMI`s?$%?g&!nL3jo7VGctHpYhn-9_%o{*L!)vQ3EtvuZuc$&+binWL}4SP0h zT=}f=#+h3d#E#N>Xt8q2#31y*n%<8lSfP{WD_5vI_waO98N$@V+_Pg|3i;#mxiVu@ zi?X{NM1{dHz@QjRx?8{jqkSReDykXQ6JEV&s(8pyt=#Xn&aF1m#6Je3^!#9T% z&p*E{=WOC!7t3eD&Rt4=W4CPX%^6&_1G^xQ()bthws*m=Un>n@bS~(_=MBKNUPd!~ zJb>den(Gi@lpE6!)O^ft+43JcYbG$acI0&MRfhKeaP`(vQNPi<=pY?}bccd~(jXlJ zDkTyok^=%#(w#%2NDCrLDWw7;l2Sttr6Ao5EmAXp!@$J%zT9OMdlm#=;>s z;vvV9l^9TBI#)a){yul`jO}Sv_(+f*ty@lo(F90Y^-f{k1&Tw;Z9Ba@e6Hu0Jxp2i zZNVnkw{UAfWGN3`Eu({xarIsaXYKiDXViXa8LrGK&{*l{etSZgRmfXALlHy1=bd`N z45~;^3EbUhcCBQmbpB9T=|TCT4CGBpNF+$CIu*bORlvc=qY4EZM9c9H+v046>o9ij zWZ0fWy*PO@Z7$)XoFNJg5K5QH>0F2CY$84bU>$|=iZ)J@K{YfDmq_eQdZaBrr8}Zo zcqBWE^3{|8wCIce#I$zu$VpgZLj9NUfZx-$i5)!j?#)hFE5^kz`X-@N!`18IotM&^ zrEeZUz6m`={FWsl3%^@M93%*^ig_;NbM#S6eO3X z5Z35{n1J7bIE5y5LSHQ@0Im42ZYVE_e}IqYAg*5B=4qF!gT;M`_uP+z^ZGgx$VPpV z4$scIv6pblsF68A>;&!}T6p#P;2Bf0hIz@KvzU2A&b5ZtmQ?QBUa|EJa-GN(AbyI! zf=(j{K+#{9yXJxjVo=I@&MB=Sx+TqoaxeZ0Ynq9l>%vIklAAYg+XMBX_31Ry1n8!Y zukKlnS`x;E;Z?(Bf1sz6>MQiWH%=wH6`#&=$u_K zJa@2gcQZV$RUKX1RrAF4&FHLE-Q(39S3e$_eaNeI_$;Ql0&6fQusUEx zaR>Mt!7VG(Nm_g^j~^dxPqSYAm0LbHYjaCdPNBH>#=Q$P!cD^SWf15u&~*w99ne9R zLtufePQOs(9EGlkqfL|T6ZnHnY|?FBK94IKGztmT`*YOHHupO#oe&*mPrPCTCh0YS z+%Qfb^%e2^MPIq6PyCun;?X)=7z06gen~xq9a7dXjrfis4!?#fbcu)f*NTH@`$5ImSlm z1Jd~l0`N~!$=E+L!W8~zp_Azqq^d`<$n=MNTc1YmWgxjw7?6xV9>EEF5m?L5o5{i1 zy^b@g7K^@-;`JDVjIV>U?QjA`A)ff2le79bPK8THee=RM@xr=&%n$j00(Z;}4!Tss ze*PxGufa&$#8NE{zqI!Pd3J&Q8id8RczC^5F`kFiKaIWrWFcG{osnw4@r_67#i`YX zeFmf6!;C)Q+nLo!;4lX^59WAKt?s<5B@s@I6LY6*eq;@n+Z5nZdnp zOj((CyA)OD-g1k9ZuY+a1zM8ng(inLJujFy(HAsRIj-L8#@+`Jr@4y6OQ0FmxQM?M zF5QNaNdl2^cXPtOVkpc&+9Cd?NP&?a-U>q1M_mtRUhHNB-QT5r5KeOPb2c$N%oa3_ z#rC&z53Gd!L+f|)TWUJ&9@2BRO`zPJeu&=|bu{?>4yxd}@%TY%ocZAh9_SxGAgM+U z6{5{-07H>RYELl&-ZR}C*M6nJQ8($3-xglC*vsiM|4Y)rems6dPvY>{+qa3r9|bRv zIB_Rk93y5$(voHb(f9L(I|K!9)Ks~=6L=NzwfE`Fr6E5Tw4}TI+Gg5Gd{Q!B^e@mW z_s0;9I)p{n7#tGbFq0}$6_=#_TdP4K>J-ct+ zwzl&YKlv&s+(c3`jc1^;{?@WKgB^mK?oE7l9={CsvPpbt_PtVS_8Tm(h?~E{00j5B z4st&(Q~PP0XV7DsBF8s#-VkJDVi~7c!?lN=>iQ4HL2ty4`Cokka~ReZJ-r8RmXxA6 zd$d&_J!M~_BL45Y?D~$^LqBTA*4$@323}NLd!qu%y6OTT1c4MT)*tj#k~oQp2&eZ< zX#yJKxsl?8yWfBlbBKv$w~?>Y_-?Vym#3m)N9B*N61E%zuPD+JfoCZnUsQ=f@FJKSi{Ww`Wp>uE$3 zD!?J0F9S9>^$Ns*z)0j=V&4c(`=8(i_dqRXwcJ`5i{Xv1$f4{<%}O7X_ns%vx2T)e zR4**!B$#%qRuATZJ=7ZJ7S; zc>lsqsqnB1j1htL7WQPaT>^<_>|S9?n(jq3%g@-ja{3r#^gjyUeyPXYIY7kNbN^yX zJ};F#g;C>LbTG>abq8F*kN>I@Wga%9{+-$s{2_T?+|how17o8b9)O3CMw+L0KjV1` zs>J+%_|tl$5jvMZY!Ih1<=q5NTY~}Xm@Ci3%c1^sc#bG7cOp1~-A3Y|HRc^QUf5T- zweaT}njfy@T5yI9h$KGu(JQWKv7;mTL!Fm#>JP9`91>G(h=Z+}QvM~;kNs=OaP_KM zH02*=Zq1bRuEXfP_}#bC$Xb|nO(6RWKtz<|#B`EOd*-)$jhcI50d4awtfG|IER9fYVkNgqfQN7iek&w01KZjqFhqEy<~| zbTfa~m#oV-rRQ%X#k+> z_~!Ix@sE)Q1N>TfYo$(qIAF8yjPp}(MHEoH61pT0xrp@C2Lzt_C3A?+DU<0DX!Pnp z5ct(WoUKMTb{qQ&;>6({i&rH*H1s2|FwRb@@X`sVM~Bsc*E6{DE?c~{x9DOa&xGL` zADi>$L{E@!XUffIqy`^XW8uU`sB;@N_B$~%9FEu6@h%w+F4X@~|H1%&1%ES5ZK3w_ z;Fl3T#{wqMUOpOJ+Z~!1t6}~br*G~b)+WCnW_X9cGnuJY=-XrDO6-m{*NuC+5VrsM z*`P>ovS!gb(TSni_37tYi%s&N_igAcv16p>Z%N!LI6%(hx>_ z-304yj}!gnq{mjeHnx8vz(xtnt0G-`i`3YksqC0BT46vo+nWC+ic%nDZ3G8Qc7C43 z{4;_kEK>y-!7gc5cALCAy5IO_Nj*PtFvQ`>!#cMa$qxzokR(zb!dVa}TE44`S0`|S zkLhBfB&d!8vuKXr_D1=Z;BdeOX$)wbu=H4LWVbu_O^z%+;v)au>W8N$^}#L?_&*1; z_AJvAq~`*wJ+X}vRN1cNZ`Zlh9h0v5YsDK}iGmKPW6#@)%fg+BAhLNySYZ$98|tS6 zyf|(CQulIXeiTA9P9Ct3up-ZyL?7pp_jNdkFzR%YK68?oF5@n;Qlz08>K;0~lBOHX z%+PU6!h%Y&WUB0^*T7Ue5Tl{b;4cf&HZm^?YvDa9(l$X|Fq*I7`avIOm-=C|6QGG%w{f`r2cNAaaqF*8M+YnZMcRO~Ew$Q&3k^k`GcI z)`O5htVM04;lzMHQ#Lh$RjdbI#}rTCE)Nds0rh;D8$WJTqzEkWvb+4#yg$~pN&jL+ z*W#&TUK8~u%au#>I*&Kus2RizFV+MBK00uFxi05bIBz*Ft#?TUF>z%=`rq3t?X-;V z!xXDpmA2(&U$S3vWHdZTg-}NW4iR-`I9+x)P*L3(M(&@Z9AXU$RBA+t^8t?e3^uf$ z2EczQHHcM!P9fOa9B!$U@9g$YDYoo((RHo#oX-^_0fC%?Sq+nGYnj10D~XIl&t1)JJmR9`M13d5|?DFfmQ|Imd-v zkutR_u5sWH!c=URw?~!}J@Sm5=mSK)!TfEtAZ7}&Hop`QcL&)WDK$pWabM{a&8AQa zJeslX4)DGod_`B^r6i6k4`S{|-gJq2Tc2?06^V8O&yNGDul4A)Ro&_68&zS}n5hh} z%D;`xizPhCRX*ZEmBtz#8$Ie*FgqZfn*rDL9F%peGeMjfyj2$9Zu4W8_Rxe(g*>&1 zo!}I?1ZxQDF`dU_KVro8^f794QzK^6bC)l+y;~Lc5K4L4_(HICUf7K6nFA7(Eo>8r zX;8LJz*#J93Ibcae? z-=$Oru^>4@o@CFwn9i^0GloQ}{Qh5%9s>(|D%r^M)I7&fXTHd6Vlk-)h7OFv@#9s3 zgH|~An9+R)y;?%(#mdm9f7Of^IDCdYo=0D1>B3~QUO}m9f6;;Es8+8Y3|c_+{w!bH z9*t4i*D9t$Ow*HSL4HE9Nqp6QDY6H_SZBkzvj6If*5?m1?wmQHy?}}~aT0|6ZLH8* zd)xFuJUK+1|FnpyvkgvSx`Mk!d>I0&kXxPnP62{fOuxUcGMW9rN_mwbDT7L!mog^Z zn~|n^RRQ}Nce;iE$n7-9`(3JE{$zDul17B#yDw0@3XihWAKj&ox88~#P$c#8oa`Eb z>3em%Wi$X9-_E8qo!%<{;y6s@ZAsFjsNmJdwoH$NrcVK+)@i0iPS7B}1*@wF%1*iv zE*@j##Rv)woE%fkcb6QHv~-=ysPKy4+8w=+a86@~_+72Kzt2qW-~~6dSx$XpkFMQI zMy;u6UR1u$qzPpz`VRsu<)=v(&4_Ubr)B;~WTYtZla^4h39=_rYBF3Wps01O^3u{R z_Usa+?_avv`UfjV#D*6Nvnc13ozE%~vFgOvE846pIq~EdXrMC<+@MA_eZDg|!X#=P z{5(E)bZD?prQZC(I~tuI2W(5Z2^IJp95)CuiLPo)T`AN?I3oJpkp(8Zttjnb`?yR| zeO+_5MV1kt6kGE9EGnnPlwog3S6cMBz4iJk^!N$miaZW6lvD!g;8fChmU`0S3ZM(q(3 zUo0&qVAQuUBQM&;2-?#?*?I6$;iKv5ul1TY?YWY9 zU;PjWDRjfc44Y6t0GX!s`?N*R6LRW|GoV9AdIiERe3lah+w%bdlBvlwE!1H8Ie~iR zGvQwOlVP3uh@15D>MlI1qW7<+%G7Z`R){}hruQ^^7zI~LmMwTT#um`|SViNS8PhN= zb(!on$lOiCC>?S@Zxi%)sJ2gQ4n@nt=aQf^c&t%ebp{&IW!P9`!_q-^ET9WlSw{Oc z?sDVBw?UScqK{1nTm(?}VhV2T{2cK0dP<4)oJupBP)P=~jN5Dq>n^V5`)X zKTI@tflUIj&_hJjcWGYKn$xV+>Og zN!aL<_222x-a6$Op1|_3@_F40#@tVe4T`8Cp3=ic4rK76T!aH+RtgDa2p3gnaG4VR zG(RVJ3y4yI6NFM5oI#1<;HDJwHgdALaF2B@MT=jQve8CCfBZvteOaOB;f;Ih(Rd{2 zL@?1_8rHtoLBN>ncD|3dKNO(4gC?GlCx?>QiF)u(2L!4RTC3c>jFUd;hR#-W@Z9=i z%Yds1S_!Ft&&y3=#JdyP+naJQt2b6dd*v>w!v5u6yx?+q6x^fg7Z@qMUI{}q025J^rr*J-YVZg=10@#r9I)*W21qdV-A}>C$X=$u! z0I&>e&!v!Qc}Y21vGMW*cIg>NYwC;Q&(9!??gW?OmB7^4jrC9noUv(so}CDcaf}g8 zg*X*h7wr4SbP~d=%Gn%a-tD1AT5=x>Ry2yZqwY6)dni|*g)?>He|Z_`p}(6xJHu-~baD);LU z!nO7RD-b0J`V6kQTbjN=JcB2``})$4eX+8DXAEmZ{!;j=hr?sCoDCIW_JgtJZtje< zLABQ%Oc7df$8~MI1^Tyg9XQ;-##qbp- zP3&<;^_NItkX@q#9m2Jyg)z!$0aCY2JhaxW=enzBhD1hBjoU>GNKb$L(53%naArmh zwqJg`5;`1)4&dz7^uyZ@?S{T7UY*%3R}f0t*zj7clxcbX9ur0GtYL>Go!!o4K8&u{ zp`PbY)l>oWvCC7I)jd!^i1-iEXrFm<6Qh(C{>$X9xze;*gUPP^cZ13WLTh@+9;^gN zbAf9fs?v%g1vB5vn*f2j=tM`UQIHq?)dLDsK##G#UFbLPdl4z@3$w93T>5!X_sL_g zxBCTQHgeh%FHC)q{{=}th8PHtYa^b8rS`RV5KDmg5v;*$&u?W&hK@7_V-6_f+!ebSZc>3aTkfeIbdI0LZu?rKf~T>YxLY)SdCZJ!IQ}N2un^FM%1t77?>Z zY9u6-+lxdIIm$!PEcT)f3+ce;ir(zK{mqC+-jJ6p+iB!(P(S2!tVHiW$Q$hlLiP9+ zgm)x8IHQ|^=ag3}oZ*J)D*j)n>ItK-nXiUD@%P+ zFGj{&gO3BGzsk(PyM_GWcl|Q;^SP`Gb(v8S5J+GV(|#C<@gs)nr59My`BVN9^PlY7 z+A)k7SeL6A4w+t}YyJh61qO7q+ptYBFQLQS(S(bQ6#m-e}=_u!|qgu5EIt8i9aihb%#9;0V?>Z<^I7}*0w>kG~wk?5FF9=BFuyYndA zzCXXbV;$bJIDkElnxp+z8rvHEnkdWBvrEh>1098f`TyGMPGgJeHvMm|x_+*8Nn~8v#`uU(lKAw1{hPoQeY*%? zf|;2JV)A!TfrC*8dzqlq5=hFy1=A*D9(FZ#aWm6IJ?`g zPGBR1;u!l`?w6bERrx^j?G8dSQ`g5LN_mkJ<*p=mk-NhB}zqOXzZ$^iBnSZbOi~rGkG?6+50 zsD;mr!Es|7IV6bo)_(0} z4EN>eTGAi^Dk#QvJQ;}%QfIyhuK`8Q9BdW%s_{648QOHWcV%SHJwm!kh;prWdW;AHTEK3GVGcB50AhqX8X&k@PX?tODCc zd;O~T`U054>pF0%>Nk{lYoz}O}?@|=!f z1Td*r;YP)v1xVjCS?OKd1V^TuQnOQAo!^~Lf z!bvFncunGLd^wSqDw+&o^oAUwm9|n9cHW)7$7T`Rq0bBFneL1o%gp($iq@>D^Yb`2 z)iz9ArQ#}$_yL!?@YyRTrX%BZY8~03W*)-2 zRm_8pzp~nA%&_t5bKY!S_zf_lxkl)PxysKN`tF=Fx8c1siQPMm+o}4J9u5A`uxOz6 zAC>V%PGYI_)4ik1_eR6~p<7&^KV4A0V(8NvF`jWZbxHi216K!f<-u=l=8}7T5N#?o zyQd`|i?atsH@GzsBW{rA_=bzQf3*&#PebwM!-aK?doa9eWPc%}H0fI8DCv3)dMd^9 z%Y!|ZFGDJf8DFfr5Un{|-ZYO?DAu2EV}c0mND^Hmx{*X1jb;ybuIOnVNmks$lK6k? zbpFU=2+1r&#b{N|Y<*l`F-4{ArhyHZK`aMH_g4gvQO1dbH(0jFzHw2zq**YAMMlKX zF;-3^oqu(X*6=ay$)dLJ&2RnG<-vFoBP+26@%(^iDI8FXV-yKY?U=jw^nM$zYPyks zm;Eg)Tq0_)S5R)YYSTX;b+dVyEZ+!>3u16M|@Wpf~1@$~$Q;?EGCyF#f$(pyI(;C^PeqJ3ISj z_U=A3h(!X@gf~)^RI0XytHUmlc*1Ytj91@RQxHr>4_Y-VpL{di4d4xta=xi8#I^Zk zA*ge{E;Ru$zcAMqvL*as?Fe}{b-}!2xe*jjA7Bl^Xh(%>hV%w^E-e)lmk3Fv=NNe^6%MN1;Rp}<(8-0}E_8!fp34S&4vg!$ zbHTJ>*+lC|yw8Wk?)mNyKb^puAh5k$Q0UaU@|$43Vx!!%#M9b1;lG1_vQ^(wm;J1< zfScVyBuTg5-!AeoA9MfLr2TCvse(=4PZ^(|Jq>4XdeouFS^)o#pKi z1RZtIIf*V?R$@lc1TXT??UGUoG0R3Y#!*6(qHZ#F}DtyYNqy$oQ{eq>C|A$Dpi%6OoAlRx*dYxyO4}u!O%N-j31p4}Sz0 zn)&fQzuqD6cKmjP=VmRl@d4K2K`Zn`k0Y2sX-R0H;5$wd2y8V*3 zn_;qcsW)G2%3a>LC5?Ia0R)H_#C+g21KRLgRafC`@J_h^e)H~TnOp|7?7y(ya*Kuj zFWk(w>(^U9@ovs2q_uT@)rL+cghlf>rmjsBpfV4lVOx}7xPyXYZ%@Hd#U$o&|M@1d zrtwHYSF}wpUrkG=u-m(mq|7TdE;D@tLXRQ40UD0xQyzFg&tC8$7b#?x`9{_O?twWb zszTwd&eQy=NE08}z{y@A3OX0NlD2ni4Tw+88UoT4{pA2!v8k_$*DOP%H{Kpty)Ek- zu*;?iE=g(qp8SDL97rS_JP$Q1zSsns5eiKJTqAx4P?~8#{oU;*F|1=m6UzyaxS`@D zTOIZdQeqkX6OoMjuB{ch!wD*HV;%*S-&!6oKfxUtH?Biis3}-<&X{x#_F${G(6MXK zUehSSOO=t5;T+SR1dvTDHd_AWklFajIn)R_7M_jfCP*CAfT;kZ8B??7iaT2U2;JGB zhQ=@wMyauY{X^}&bM_EeV(w9QPdCaU;X!LDYVKhkJ6neQZKddpOpSfJmUJa5w&vI= z#C<3#ac(KC>b!rBnxA8zzPBFTR@GWY%|el_(5!^iH%X>hMGUrJGl^f%)9N{3nfeVQ zxTm=0@t`l~o%MyepZ~ZUX|6nIx_+JV-Vwu_zD-R-K65x;3Ep`N>QOz*+HGDyPkbMF z)!mkHOlFglb?(Vs4$&+}PqOTWEsgk&b91HP!ymf+JL%Na2>uE}EgZF36{L@00;k9- zE46t}bL{FwJn z?l_l*AZjhmME|+@CL?0?qF1lwfG)ql-zyfNQcTsX8Cku-gPGo#Y{ zUw{XTu-&H;g1H{f|lcaMXMF_Z$MBE>JJK0@Q zpxt=WwPgHw-qb?vnM+Yqx1=u>g-2JOe-YDhQ^vyO0rKTNoZAa0^|-bqIE_SC zjv2B-6DO1#{DKQ2UTd!!%!K$HJFThqUqM8M`{991@hl9T@VB@}OLf9)_hQMiON`7V z*D>|(jn`K`dNNp~vzrwv8T7(MBDrxgnAfXby?A(xEjOA-`n={&)Tv~>b35bU;%>@O zAL_GuCvRSjFu724FC=(FnOyZhh*n`@(Md1-<_Gc?oSE&g_$*1l>cO5K6V zdQ0=0ti(FgycmfFEKABu#MnsgdBRg-Q7bP$BC({&%2npZ(2OF@o})uN-ZcG5Po+NN zP`!x)=*zAf!QJq)9NUMZa_5#}FAiS}abEM#-E1^uFHO1HP{*v1k?O$m+#~AWTuAj_ z-Dtj5#6S>IE!91nRBwTv@DCeP(yXa%bqffMVokbq=ec))m(vhA)Ts zhZ%?K=KHaceQNVX2ADTk+FERp^MZ6xHyb}AVms@-!d3RA0Z*9# z+IL%fE|0vihkaFSQH;N%n^yEi%;$kI9eCqK5NEF^?p;Jz+{O){VB}VvA8`qjUX@hk zpXQ#}DAwg3=I?F14v&0Fb|rR7`POKRHk4`oKS-M2FS(Ho*dz>eTvq>?19}kpeH?1> z3$oU3Fs5pcy(<}$wjt*C#-GV`m88k___XZW1_~?dDq@y<3UNvZ5*-pf(xKLvR)26| zc42m#W5iGLF;8jL#?bZD3>|vT^dr#sI){)0&>>TzV7*N0xi11;urgM=VPX}R%~(`8 zn`Yn6z5DgUbMC7-Uw`blEo^K#cnXP-a$N1;QJ8D;W_(hsr@lAhS9ro z`^B=Ux_^@$GWc&n?s}$0eXYm0X$-z>T7$&+dPDe4!tCJj@MM`?1m2G{ji_15{o)F% zY7I3HEu8skjU6A3#Sz%q-X)<^r1E!~HSp*Vd?3 ze8!2tma`#|N8tCq8Xl;5I8J2^8$98uXrxl*ubxIOU8-(Mhjg>YP)>Xm^IaR5N&ecI zNc$5W(Ga8s7k`xg>2lV;y?J3ipOM3A3_UIy!wC>w_Ex9Qgj=|r&kOF&OZ7fdi^RR% z6v;-`pQM__w_B1br`~K4qY?)&a`3575vWgsj2hRp5PMNs*ob>ya9iL5ydTLw~CML4!MoJ{gSbx};xP=pxK9C@ppKLK+2f4W-#fB%yI zH}!wR&sh$L3sEdd_baLPV;l4o?k;e?j?qlRQIQ^!;X$fEL4W%-i4H77MZOEr24_^7 z5q&1~iUiSpHHD55I#7-I0jA3(azcQa_zK}!op9cUmG=CrB0p~zPkCV&W!YpFQbXR# z(|Fx^=qTtLa`6Fdd%hIj=>tV&nPczS06GI2J$&I2g}&sz2rP?FE$;FYXRe=+h-)AK zawI5#Cm`Y0vIS+LH12c@F=vl`H9#c?u#@DAd2f*=f61gaiEZ?h1-!T8E$|@4V5R~9 z8`~1Tdkw=2CWV{xR?;4=M;1MNxN^ORS7qY~#K1bwn@k00 zvdk9NCd(o5S~w;0qn>MjhXEd4MkHFzm1Ra4E-Ksu z{qJB#YU76z_Pe3T7>!x~{TsAHvex2j??7!&nF%N9AczZfM)qjLVG2IJDi{I z>1@qcR9y-8gr&_1?mfcW12OVqf|RpV!uvJYC0n;C?0C9U!nJiR%l0K@dlUWo@b}6K zMRa*-xr|e0-uj+2XXa-hOn1rvHQd7Z;(^(UqO1uI@Od%Jt!&@M;X7lo{>&B>Po z9s{7JW%}Mx{svG!OGIoMPVI~MIEn5WUPZ`Opo^bWmGXq_4Ssz}X?#@Gw(a3=;|_pwOH;LZ6}(_ScBxNc+AoY;$iutj6LXG_3bYR;}S%PymZ3(39} z`LJ-&{*Mx0VbO6BRZodQ3+;pKPJSJVOZub7)&BsZ5F1kU(G(|)?BsSJ1MM@Pq$kPD z1?L(gqR8vvuaiz+UCD3b)>A*!CNID5O$q-HM7YFDqBq4;g)4#Y6N+;H#MFOl5;A1L zu`6RkPGZ=Wtb|kP{jbvZ-JKt)_N{(>J80*a2hwGlokJ9#uLNNboGQCaIV8F-m%O1X zjAKj_2S02hOxS#V;dCSvj70AT=C4%cA#P{oc|qYei$E;&XgKuTb4m>y>(a}6z33c} zHi8e2afk9m($E%mhX%fP{b0E;++sZQU7jQVLClMvVgm&gpp&QX@BhdhE9m2AZ~+t* zKG`aNHEDLk0;{n);5{s@Zh>9_b8OgQmbl=>aEatV!C9q+2rB63flWl;@x^5!l1x^F zDJ0Ah<@_-T?k zl%1W=PV(7n*dGV*63QO%0uw8%IyAu#J-k7tW&NN<-Oib&9VRwvewqy)lnf zx$&e2K9{)iv%a?=diB*Gfllchmiqeq{I+C2`LBVeUGu|qA!JcSOe1cdzIW2)Vu6iw zb6V-$%WseGcTbR$*b+Elx!F0({Ox&xKz{ho2ataTcctN}2?n{ft-;uUU#3uuR1I|a z^&fekBvNB(iiJ|aTcV}}fdtCurnu`{yD4~nATu$t+lx1GuL+j6fmy;?p6u|vdj37v za%t(8kxsoK>+R74&0K2-UK4mlE*#YeMH?Qc4SS`MIOdUrR+YYB!OlKY)4?bxkoV9S z8{^u8JG;l@he=W+1PYfyxj(XMjG8|b39_D&s?~p;NsM5GVsc48p^eVHripNR#4`_r z;4~AQhd`xQKtBzhzqjve1JgRl3VCVnFL=J@HBvQU(1#B39B~EU%Rl^qTAPu7DkC7{ zx3*)6uD&!v0sJ+~+uPdox*&OF?D%vRpcRDyNGd)mWoP07BlP?$;p`G?HN9S2{JHo7 z8-RYPI|Vw(%IQ;ZRCLzC(H2z_SpNxd>c_#|G+iqRmn&?@SKRUC58O*_O?t~}1J{O< zR`r+inVp`I{(}hqx#y+!>(%v)`aW|mjR<|9=>POw>Z)~mjj3muI-C<{Qyp%Ji}r1J zCzG%%HsK{A0{`5QQsP~N9v&=x6j~$1=sw1^R=xonUMBDx;f)r;dBE6vf}^=?w4SR< zQRXF2TYJ7#i@1!^d$%edznV1h`;QtJo* z_#qt%f$D26-Ys$tN`bJ0M}_9>3F5U)g9M_>)O5agF==gvtpA$%m?j>bI_4+*k-@=R zh5B$AOMSjc0sA*?erqjDuoe-w8-Sn=&biO}AH+!-LD{Smv2n3WWj$uotd@osn3D5!i&WER$MH1fCxWGOXK;qrl#kekZ zqXu$*L@9M&&JM!Fp7?CfeG9i=UA~B;@8(=mz{DS`JS34l`VKRn^b;aydgsbIi~=;RXqO#|T%B zE7?lQ$#ozV3;g!x>gzb)Y{?mOy;102s8mr=(WF6r0%kRSE6X@#K@wf=7t$y?oE{?> z{oZt3V8g>1Bl*4J&$j0SpFD$#{Wu%|9O9lnRhvjqdWGFlA&5v~GjiHq6`Bnjj{2D$&B+|_?^F9fFc^c-o#k`v@! z^7XC!PBl-%x};xd1ti$J7+4R$3IBuOuUWxx)GLj9i7PEancI!5IKRhD3)(Ja4+5UX zT#lzu`Ej+TKpQl{EhYI$Pe~A$>gIqtL~3lHJTdB*BdFZNr8B^9jTa`i7n(&7!h_O)KCmDJp zS~G1;heP_3GdY2YrjSaII>4Czo;`RylB1DBQMEwxH{$7 zl&$tQyQ-^wN!w!)obMDcwADFGxuXYPB?Ox}&==Ne4ddmKFQ}*pk40&alNe1K4G^eT zaIRc=8ZRch6AE0S@wy;570pc~UW4a#xCdYP1!r_NBU7F`Ausw>;R_!rcO!sM6&nwZ z{@TKC)qOCWSo;sWMC8blWIbjdfuUO+xV0@$mDI&AX4Zgkm8KQE_O?U#rMChiNVnGy ziuNoda2R2Ea2N4ZGo(R8UC=9!aO$tY(uY_;^YVBzjXg^l&benu9_6ivy_r~;{tiMK zPq2ve^2{?oMS^&VlI;bzd7}<_@oweriYumm`Bo2ij*$Yf(Ygml6@7MGxLW2kPZQa7R-X9Ch2$j|!n%)iRu}eKPb23Gul) zd`HVEt{#~qpg%0U{JR4p82A5?#p|-pm1iJ5QHY`u9Qdy&pZG7$5n+LaD5&M5z7XMK zAUS9O4g3L3ELEn+(|Z)%r<8}m`4`dZ_ZRr0hhjkcPu=pa7nqd+82vZ7#x6@)f$m+| zR82KHfNP7|)imFEEO|}!DFk$bGj%JHK7h1j1ScZ{y0$>-P;(INp(RSt9oL}z`X|)* zYg$;z&ixScYf^F7nBIOMuh13Z&58wk`!~g#-%1NWH-(z;ALL&JPKB5*Yy|vyi;Yu3@68x9FWN zN~g4HF@QID!FPFj7YHHjA(F=<~b_&L5seHr5 zugbhoy6=*1y7G9hLHT=CMa)xl9ifWY9?#-Cc z{I=S0QABx&aPlQNk|{eu6ufaQ6m1Thna0A1xf;57aniV!a3fliSWx4)N^fIi7H+Xv zy4uOA9se-ZKz>cNHds5)_*WlXSdz`SW}*xUEg%)dj`{--_a_1Xu()gbyLh};FnY9j+#ujQHa#Wf8(Uto6qH-(#_26(vUxu0^2io!#mDT+YeR%o_i!q9zW2r_d4x}(BcCdIUw+D z+n=K{{90F7z*VJZNc(y9pdYc~Ig>Djqqk40#EuIB)mVtWbHDf}Zf`~LFQasBmOQ#U zurr;e=@!a4)h(bmT@+&o+R+N7QYs6qV{f#FS4zbBZxN)&(WW9oc zwcRL%|Go6qLUc+0uKo^k6GC($b15+!_HKf{C})uCQ1_VuyYUm5csb<))o4dStZSd9 z-?l;EF~7doAtlg{z6T5w{`ZgIf7AabaC5C+Th*zbFV7)LRl}!1Q|n-<+riaCbgYNc z2AN5v(9cc5bZ;U8+^!421U&@bwFdURagQC(fm6r6Bz__2R4(rnsMjP~*1hUJk(=#w zcJPle5XvZvG0(IsKWUoz((#GfbL~t4Y!z^1P&65rz;GKT-n{sy3wt7Ve7sjA{`rw; z{(~TaAsC8-RuwJ%@<{IL+lW-zO1}|dF8%~+HzIGwTZqo~X(%Yr$^>_lXj#`x&!ep^ zQ0BkqwYqanM*5#qUBmPRt#KzmM@5mqWWtb2on7^%rxlkkI|f)cVs*;kouyFpU6Go` z*oTwhUQ%PXUrA=T1&&rG7hPC-@?Bj=2*qN+=QzE|)caisEd1WO+pjis!b-)sAkiya zfuGk>TB7IVPKXuw_C}lPR24Ioev|{(t_wNt8yJ=pcxUDEchfE?n2J6afM}d#SazC& zl3LmAwOR*O)o1oAr7Mqdjs>fWt?ymliHWzYy=H7l*L%R!295cV^kR}#JR9HrK`Y_tdlJPO33tBw26v*IRki?Zbx5eWP8QuEC~lge zJ$o2EFB*0IckU&xS20bhzb46lIQ-%iKyLrJpL~Ilp1GfXI@McK1=PciS&2ztS581@ z#%+oD8d9rib6!0HLX)jFl`~}@e3V`Wv6q(kERc!F>D5~O`uSqkcRmr?opff}D~NVA zC9taPbmvSJ@J?wsJA5*x$e6b_g1f8fDqLf3xhXl?|7GSX`B&{eUHENit(PE~2Fv^G zhCgcFgLzv-4(T>o{X1CqRvJ~0V&P10t=zo=P-+5cZM|uSrWe)%;7RUywcyOdWwSQ4 zZEZ-&K!6Kfr)vG{A$dJUT38lS9u)=q7DZvfCO-Sj9PIl<(7ls``FG+ewPs_UG43|3 z&3zDCxSgCwax*>=zfcWO6zH8$HfzsgzLtTpJ_?oke%tGy-_;|g;<&6X%y*1C{SSS zuWXoqX{jW;DL3}a7hDg4j2?kmf<&8mjvAT)r$+k1_;!Vd-G!pwDD%xP;--WK%W1#NVSX{v)~J%Q&(A@s(6VzO zxz$kplj)8ZC5NqFKR@qr^shcvO|eLvW7~68)nwF!p3Q)0QUE1z>XR-W;=snBz!Bep z;;>uVY@#hfO)DqF!@gqs-M_A%H_8r8ud7OJ#L#5xt6SW8bNaoqse0YmP*bU4c@@H( zObOv*d@ncZ{CS}I9~F4E54{*7Vl;Gg7o?_`jRsv@|<5{Gw=8kc;F6jPi2R_+qJq z`MUogfpE0Z0ZwrmYlhpxbKwNnPWG%;rQGjLw}utZ;1cEpnHKb2-CgZJS?Oz5N^Q*# zTH2-MHpD%0sJ+-2267R%=zil5-?hn8*BPnD$Eo?{V7uVg6yL}YsCV$%h1>s-@ZwLHglYev%ovWz>Ffj2iUUuo@bC=%7Gb?Ly`}v zfi*3Q$>(_OKS&j<^GyLYLC;>&hY)2ek5-*)r<%FM7vA*fkKAE{ni=(9-82G^>3K}# zK-v5iP-@B&r~LKVrKJIrM^6TB4rfi(u?SQ-9PN(WO+$-eB{2x(!K{(()G&ygsh@-&G%E&A$FuKcpQ5LWgrF z(G^|>Jw=6h9d?yP^jh!r5G1w159&icOllSxfeWl(awsYR@Cl%(GFv_j3<;fMvS}SB z@UQIM{&R0T^wx{&XKe-_f4JIOuskw&ED`_EtR=sZqvQ56QP3ESXfDt)lzM0cpf_Hs z!7a76YTfM&ET4e7fE?hToCj77Hh4EB!GMdLB+ZUOo$v%i_fbJk@4QY`WhZ(Va(5h( z?lVmn`YaR9&U;NH4{$Ot0tp;JBvWvLhiL~%Gv)v<{fm&cN6&qu#2ulvMOg3hX@d0$T8J?p=$E;$*q zGZnvD2u+WzLh|A%E*KTKZ-UmTh21)091 z-QRa($C_*=M2=+Jgaqv;ZUk_!QDp*9{y;2rIWK}xXlex`;**tU zy0Lq)&DF})k$p~Q=~9i3A}Vg)j7j*EmN%VUUZe`w2|=YAwL_x4;`o}xm_Yn^H!lOe z_PxiSYw9&5FMQr$?HkD3KaavY%c1ByQ#NSRHM56s#wt&RjE<|%b2k5h4vLCHeG>gG z@C8;Qe}YFE*>(L4tm3|VwpGl-yEsKy+&OG7|KPm0Xt}tc>(1Sn$>ngknQHNnJ;0-5 zoozmmbQ1YX1Cf)=dKBifo$Svity^5s@xMfrKJOq^qDvl_pI@ zx*#F+qVy&;Gy!P|B?L&~U4HkR``)?l{UQD^d+)5h)?9OqIp!FCf9Ux!728k>3plHV z&yig4F74UOz_$_rA&|MVBOVU*udYnk4#;kO3D+E)vOTMNCRuH=>e66?;3VF@?T`Bm zHF+i!nTfbg`HIF4v;Epei6EztlEf1fp?d)*7a@LWS8BU9{Woxk@8PPVqdv5Ge-#^f zf1(_M%2W37a4(8jKSo-rAeH}PWQVPr{{pO&(mOZW<}OV@UpBeXIOr~9vX>o7ze&oo zRX7q&RE+7nbcffx3MzK==3g`i!WGXG7isEXTom?4s&m|JM_#Ucd}j8{Ne^bdWzskt zJ#-#GR9W*1AShIoOW)Eo4xk3tDPYxL_qvaP(j4b@!{>G4tz}CJ3D&P6$v4;(R=QDU1TL5;uhF4H^ImapfFnCiiP%H zccO!-aa^W&c6?W~3bCTx;~+#``q9VAM@}~RoU-lpG8@zmg<4>OA2m~bGs0P5b~}B_ zKf0diL#a215^~s9?lo@NzX#;dim8-=|2WnJ245srk#jviJ=W2WFd1X{`o^H5EcrpY za9IG$JK+#rWQG}yF=L&z{RJPkB2$mCbKH;)?QH+IZxk>^=Gr`zpCW^q-_W|aet6Qlyi8IswK}#u|IX{=Qeq#o@JT7EB}-_e)lx@0>oC>&(Xpi zD6?aQjyGo#Y#b#1cmwr9`1qSYg2cmE}L5 z$G!w5@_Rq@v;^TJ;8V9POs_rdLkm3iz9Tz>eYaq-r@>>(=`ZcTN<6mu;dk5!wn=3T z6t;Z+6dU;lC=7l)pTo8#);5oG)hBVC7v>yiWB=2v+<;Etv3Z{}iVeSf&W!r2K0&F* zaP6X(M*5Ks;Q-7VP)TvzfgpRE<%x+WvVn>BhMTMw;Rru7n;Xj!y8Ku*Z^|)>&K4JgeK52 zvG)lquu~`uKSchq%5I1j#d2Z;8TbrxM!3l=}7Z zndi({Q1(_|pt@fzZyVnxOjb|Ost0{AKddNBt6;Pq5dW3PzKu1V!Lwn{*FAfN9pLTJ zjJ^B#CWCzWXZHtI@2X!4nHzFN3o5cp&%;lX>&W3K?3n4~Nf-L-&I^hta!gBX;=q%a zn9|DfK!0$1v8F1DX)@)GgKqki&uq?0>xe)MYV` z=8xnzRnbYVP`lAFvRXY~x-1Ud62TeA^>8*pAGp9@L*Q&dG6keB)wdyz?O#R3h~YYX zMcPVX8Cgw((3P_bdSeSARH8vo*AwQ;&-5(6&dPfocf56yf4D62#$1~kf|U-vx=%wL zcK~27vaPo<157|ynmk(?vFW95@hOKz7-pPyXUzR+puOX)!I!8mCUk;75RqOQN$|E` zdw+reZ!mBE%lD#I;Ztl=g6&B0@!&_YJT-1Vd5;Bc7$kgb%S$xNfHfOTO4aAIuJ($B z1|R7FDZE7CDi=0EED`1f)-LtNH%>oPMeiG_I5-~8a1(G=Z>#o1rB@>-IWy~mEDSk~u&L^ldjoCsqy zHudKDqYAj&;aBex>$gG)bWf;+Srx)~s0wiE| zVfy1$6;axPTwi zyRBhE1DdkO_Hw-pmNb!1+!1SjSbL&!8ik?FaY0kngcw#%Y`Zz0Q+utcu?ijDFHpqT z>{#AVo7Q`C-Vgpu0TDBSO9sz6{m`B$nb@Ki^G0k@HB!qN8|TKG$@XxwsLHX9htlg` zO!a#vKF7TkxOYKoHEAIz@%d^%K+`$lnj`T~ERoZj^cOW@ojs3tU41v|D(BWaoovej zICLMUyzn`-6O(3=YcI&Q2S{Z!XTht|3*@3OCgS_r$5Gq|zxD^9fpk;jAtrMjE$D_6 za-mJ&$McuPbj@j^^u5VHON~GS9+(5- zc#H%R5)2ZBjhu%9y5T<-^O+MJO8@DDt**#}cyqW$NWli{*V%&2+Cx6GnJY5px`M4k z(*`MGXPe}>=yYEnqSg_KiorGA)FUfmg$N+p{|0E_9IJJaxNI;o+4~kxXO;?0;>%Vy zMsVxEF@){^TeKZ(5BACY+2v_u^ zJ;8Sv#Gp)6>*;`YSp*P0n9}`uFq3Lw{p;*j!URX&OHR>Kxl0g--_3KcDQptN1-Lt7 zFxwE7gO`<6W-Qjl%Ywdt#)XG;U(V9sX=}fSdRK_8<>tk__%bDJm>aQ(!bp2^E3l3* z3W!^p+qG7U>W}koNA0S`yks^=T|Xrz2d`f+tqOhKS)xk4XLZ1mhr-MvYEtgBry;5+ znE_`%mYUS1RUXBaG%hnN3o$VCkDasNpE>HL1R}6tZ9pjkB!JO|=aNK-7WfGLh_l7C&aKJa7_+UH?_~^r$@;AanYw9c$Bps<7<2kOD zd}Moj3j(o(Pz?fTt`j*2!}$hmy#iXtKTjXF*sw)k%4TtIG8eov|0l`V8$LYQWJ-9Y z)?OJ&7r2`r`t!@h$W?&)OIrzC9qd+EauYhh*ry32Z(fGNS3!5$mpT&9E39WLA^~*0 z&%eqNA=c$gyQQY9MjqHb?>Ns~?*3`r-@=tLOkBw`Wd0Z79veOH|cadka`xTOmXtM|L756IIa31FRX=o0{KB;q65eIN{7 zwH*P(j8H7HTIVw9IGkB);B}XFs~OtOjR=7vn)pvsK37Cp)l_z}WWiS&fWOJ*V8u_m zg(TV$%@Ijiz7|n9kStLgW(j^uFO%U&@{tRX!m))i%`D z>!u3izGe2&Tf>%$Ld;vrjz@7EpkE=lJo}3m**NX`itT4P->14o zKlm9b21)Yn63b2t4P^wCnBHw)Lxhk*D>j zi!}62k#Ezwg+dUlFC24eyaAgIgtrKzW@zwv+#!i;d~c~aIoC#aiH&39aQt*sdH4jE z_2j#brZexd<&UavdBKNVV3pMXouB}cwWOkYwPq!&EA?17d zRGEd|oJ}4lqncV9O9M@cmaX&iOX`V-vZ*T0f=5$62-dfh=b-lgG+^@pXWxp#-DG?5 ztt$$S@GP1k=~l;@ax~FhGJ&%IPBz-uf-hiY96 z6ue1v1of5L2{@vxWqhJm)jK-sQHHxzOM>PVe$mh?;IN?$oPvPin|@a|QG#y^=8PY} zzHlwMfn#E^&%&Skn1UYg`7%f1N+dY7m1pr=(rV9l@v5i#{J?DOO4sANaY-irQC z`sFwGDGM4FE8S44%6WlR&tntt8zz9M4p$&>LPpDXk^`>RHh@#EO1a#$@o0=RocGZ8 z2-rL@{#Lb!gMIVrs~Ni!0@gd-7>NOxPykC=L)_k?YPhnr8%t1^_r1sWL`S)K>(LES zl;7hLsrurJY7Z>0*`D3Ky7DfGZFd{=r0{hvBRBM$#T^r?jLBRivh@4(3!-n@q~16` zynP#6Y|Bz4U|SKaij^k!F4w*Id@0c+0?qT!)Cq(?4BLx&kc421t()KCUR|vnl=a(! znv8ooRMVafnoiAhe(TuZeR$;XMc2$!{AmkxZ{fc;rMdvf(`DddBqn@$Nx1YFoa{hg^Enk5SBMjcLTJ8R<&gJ%}ETk7`>&z)ef7!sY~pt z=-p-F;$N_|kkE zId{ars`}Qj%Xq(tx73F2E`SXJ`jj%k2X?h7oXx-6i){E|?6tZzSZ)7gwwd z4^S9+PHyU+JSie^pY>#?Bfj&~9YfA=1b@WPuspdUcn$H;!kuLEv2z^p9R2GarGJX@ zb4yiR@=I^^qRM?LqS%nu~4Drn!NpN=@W38u+2zOMI5 zb=b7%2@M}q&GvIA7s_4MF_Qh(zIX_mr)dHI6OM)k{tY4kiA_m7N)*N_JWy*+!@JzT zqdVNxfUHrQ|Bh$=BY!#P2-6b-(`wasf0$EDhPvuk1s%;G9Y_rF2e^%Y-Ig&<2m3i1 zm$wLOBa3yVe}3hWI#6zF-{UIVs+Vil!zsps(WVK_OL$94=jrpricB&pFbwc>Z#UO( zUJL~NQ@%i&B5-0$xP)kWbC@KHi_jiAFnV?OK~-~z$+Pjfg~2i({{s~A6Q16@hBz7nEsBNZ8s*?`B+UH@1ZkqJcyG1%5 zeZO~=a*S9yep<1nLt#lEp21}=p-4PT#=}~&Yq!6VvmzGAI@XnSjmAUzA&!nHjsP@)<&#udM;~OnlRY-z&I%yU>ST+iS zLD!(R_HeQ&7Zyj1SFjqczf}5XiN2@!UUOOH#U5_j!k7N73Ax?IzsPep0^3kU*1vR; ze+ut9JFcsqqG1m6iQ%XSesu&kE&c?`B=?NO;!g0xg8{B)Knn zqW74oA_k~)L^Ad|jCCPuO>qh~TJIs)=ROxo8^uHwx(9mmLa%H>3xNfViRAyL7`dUb z<)`_8OGm;E!GXA5(&dbW!DgQ&J?3+ddE%!><(O*7zbIL7QYAzSllJ085BraAYt)Yi z(m$H<(7Q=5JsGZs5!NgvDJQ*G*yy9s|I16o?2x_p1V#`} z71Q6hYbt1eX?{4V#VGymlMM|H-hS5Ec9tF_to^*%ObV-GtA zqF}IK4rja)cCOKJ(Vp#(KN(U30gk4~0!x1R=eFVwaiz7>X%vNp~t`FKYtr zsPxziWd=fK)Fl@(IvZf7MZ4>y5^5iv7myGtA@W82-3kq2BVPUrQ5V-|OUz!xoEd3C zIA6+DzZ$t5xRul>^)aD{pSsAmC5Kgv@Sa?VKRXS_K!eC%3IJbGV*Iie_v|0c4a^ySD)GvMN3>4_@ z3`sP}TzBPqf0Y6|oajaA5dDNe>-$94<_LHz)|BaNRxRk72s1vh^_6MNx2V@1GWmF+ zlsTL4yRAPy4a=Cp?>!Eyy~>!$`(h%O)d&fJ13KC(`{Ta)o+UlL zK^K4ZcHh1n=YC4;$pf{3c+;yJ`pX=jl?nN9;~|Xowt)-X0x0- z@*2}v=F1c-$G#ph<%IUCD#i2PB|0c9xQaxQ?599j*J;1z^1MIeyVm!9*>zT3@un%c zX^(9VR@dmG{}Lu4?`dpHD`Q=8s+Flx~uwmCHl9 zONsCH`9I%leowA}(=M<@B5L(J(2?0}n`tJ4!759dK}I98mRY7%zkdDUxv9DclC8IWxdld34~-&lL5?+$w5;i zxq@}cpPJ7F8{s=6-HJDm3`6^?gC3vRHSTEs*b`5rM@agx-^bTGVX=$o!ArewxA9~(>;KcC3=H=?p z)00=DFT)#c+Qehyo=dZ5OFLF#_OVvSBLB{rr;uFtkZoDK%V3l*0Lu15YfXx3L~i}q+yFX zJ!8;ST^%9NCHqzu?e(m4xQ=D3sgT9cY4P}P3%9RLi?U`YE~%-BPMkb3cA=KI!7-Qs zEIEz{>-H;rU_P^wScyje!R2m|P*~IODVB<;eOJek16bwV;yb*H$HUUEq7p7%?<^Oq zqz^Nvnu;xfJDY$RGD-&-PDP5mgpW8b9UUN?AG3c-QnBLYHi&H?6~w@vzy8 zTnQBIDyGnck3_1^!HhWjaOG?&M9hOrY0onwm+J!P`mZ^q)7&-Zp~=~DSzYM`O5-S5 zot19WHzKVGOYo(+P=pN{`xb?}BR@q=VX#moi-nE&s>Si#^QDUjF1wy*DBrV@@?s)t_Gye- zW+9LYRl;%z!(WKV8<#j%$Ql$tDrPi6w352(N35%ptS_=coqSF5HA9!`j-Uw{Pmg`$ zAoqr=-A(Q4FIk_fp70fYc!5!=c1+Y`DhJ0zs~NT=ake(QMe8ysjfxtPs8WzWC8#M! z0>{kR+HPc4Gn6k7dnYMby4Ua) zBY&i9O3uVVwrtbIivH&4U4TU`G(twJ?aZhIb)Hcjnb)7e?|Nx3owS6uc-`WZJ|6my zj$*(+Ae0%&y{1J&jKrN>!`D_7S|4$31gMT!_dRDPr5JKQZbP=_#z43xZzqz3H*kmr z)i%^r(Lz`Iz^O<6$G7X2?9Nl%eSXjTkZWxWa}DxS;71R%`M3Qn1D3p1NH3udxk@dR z2X|SH8#zbMMod zu3{eOUDO{;K6>!Z{LV_}P6hnAO9dhmf_j9;3+Q)VZI!F770DJ@X=wDU*5a~$@d=R07TERkyyz12wY#21*v%8~ads)&yy$bjPmXZ=vX zZf#~HHe$CZ{bsk$K2DA8{i)zfV?+Cf?Q*ztJtx*k_PE!1C{VG)YJd7rk&Pd%?}do|R8E9>T`FIx;vv}EEpWl8@<6m2wT3M#h!F`~InhT6~iv_^8Sq-RkG$rbCOLuD{s}at%LT z+oM;zY6^wAIl7WSQ99ffY;&es>L`pH<>FlM4Whm~T|?0Z@8Fc%Y2ltn*zXC7?{*hZ z{%h0es;i7$QmPja8|O}RgSm(nCpsiPJQM>em{TluF(j3;DMOyw_(}J&ODSaukxsF< zM3sH7^~jh|clNe$P$W^0e3fIc3SznI6JNQ34(+|7lLyOQ zY<+-&VoIG0KVc*}f#)kjVL;G)WKWb@NsDfhSTYtF!BE(7q*p;AukK6F=w8a_G>Gr} zdG^eCwPh!5NQ-}e5c1*;)s=59BROiF+G~o_JiMc`O>zv&S@{`MqsxS2vs3@AiTi(S zu7>_ENcv-34os10q=I_y7%7oMlOzfGh(`T|+=mfW*$4!3Q!~vk%3!lV{a`Rl&Yz!+ zKnkWWh_>V4i;$fT&-aYKkhSe+QF_w9yI!(Cad6xGg}@E~Q2CmHJ%yL8ZK4ZTKKF@% zATZ*k1ms@MBCs(C_9iY|6@{?|XVnE`KQMBK8B~uK7=He|eCMN%N@ly_wtwqqyHVdR zK!~vmGK$$YGvtCY=WN@$U#6xB;usOAz(1WpJ=mFg-3F_HXIGwYzmTl3OPz*JiDfcf!?D5D;-H8zL^J|Bn@E(KnUXDo5>iI?S7H@w$C@k_ z&$?qQ$rIb!`hm<#FJrT=@Lm{rPnPgl*Hd{J+BPyAW7FomeOG#RJz?hIjSoTfkZ-wEriXpi?zfkgM z><4htHbhP3Q5d5aUFoA6{FRlBB4vo7q$D9?8m_Z#pJ+nU^Ef9FBF*GFQ&SIaW;vt2_uU{Tede&tFffp zU<$^8|0V~Hx-1%@2UL{L=t})|G!^MC`7McR2^RJ3dtpO?(E=Gz2CCkkOZ*W#%W1ItB7W%0R9j_5 z!GWF0i2j$?7Ng<`Oo7}zGGA-Em*VMG1D@Qsyv6kzbVS6$!Vs>ADftDD&}JT@^AfOd z2=q0&eK91_Xv|}C>#%Olo0&8Jv1v$&bUtY7cw#!WYBM6IZ0EU{{c1<1;%uNqUAFD0 zc&x#)U0FiB*7!|U1z?ajhr$+9)NzUJz~EKB3noltGmE}GbYRN=*orscUw07K4=;Rj zlGWfUt|GMX4>)~bxK8?^o?8ytJB4PfpyGt#%A9P4k zlWhv#NIC7VAK~p+cR*@u3i|WhOHdenB%|vTvccIK@j~W4Wis}1o~#q9Iv86;ns0mn zd~JwU`5gcv{R3u`@6|@w6tcsI{%V#aUQKL+5~HVCnOI~_YC~bJp@4vG7vVIyK*cn2 zzUJdkzj8ZN!QBmGnYz^Dj{0-R5!#hb@k~{SfN+4GiLiOIHWdYvMFTuiVLVsnM_4LL! zLSuo^eTQK-t*15F!TrhP#ZNgITV4G91{L|>cTE3n#5yF6(X*J#{o2yA{ zhaf&7>nFW+UHIZN`f27>GlPfGKg4{J;-Wp2rqCit;b2!{7cOYa4fm>JY9cakl;+{W z)A*~udz=-wCv7ojpS@%DvXKx1{QMK|zB7p)3m6B4Rwnc_X#7PZuxmRp6k1{;KrBEs z!CfkMD*-GVqMOl(XLB#bA$*&!{^HdRq+L(FlS?e=$zMp+7`d`C0`J&)%^NdO!>M+8 z&86${QR^`UboMoUFdJP>SzP>Wm37zIKOp5UtKIC&J|&S=iQ!Nw;Jd+zx#a>!Wgy=H z|493s|Fk)s57^QK_f{oVJ;R|1{*_VE?q|n7*SH7V&$*cL+J9}RdW7kZkP^OE+Ao)a(b^=2 zVFzMixZ8711)im@K7TGm`=M;SW3xg(2$D=O)uKws+c1NbsnFOIGMf4 z#?<%B`-)?r&YuBF)74(3s)93m)A}_i zbxU8^>$7(>pr{_I?G1BU={H zKgE&L=vownWQ)&*q;?SqxpCQ^h>^Ib6$-?+_^u_-PQPmVIIWB0Br5{7*c8}_=LbTT zmFwq*LUL#H8z1%mUoZ9x@*ZoZKUtfIu0|r1jdoVDOoR`P1sX){94$ zn{qew1uUcJ5=0a+lE5iB1?zp?E|DfhlL>~;VcQ|d6X72SC?mD>4QyRZx?PTeBf5rT zy9<|krNaxx2?FJ=C(Xcu;YXq>&c@6*FnL+{0fnxb8miIJpfCLGG==SpQU+T$Ka*pC zh~E4^o`UMa=R91($Q_X4B0AK^UW}`%(-lkUdJP$|8=fA&J^31Pt_3cX*cj?YDsCP; z0q3Xy!RPoyos7|O^|zGwLA(V;H*mHsI^x|OPPeHABNA?%gd^l6sR8`@2oX&{(Ni=7 z2NqP~DwIV|j~}q8^Sx%=60Y82mnq%d*Y=%D?p{-)H~_iZ7BT1uptT(*3de}WLjFQLJR{JY za2CAVLi0;J+d^uo`{zfeYvTBTwVdbgHf590JZX8Mi0(h%>7k+l)`W(_KsViQc)B`o zmV&o$jNyCztw4ufv0-)wS5m?t4tzFa6T{K2J5v@5715$NR9j-qy>mE1@?+aJ$HK>T z{;Bw*`0oT==9may&MxX=iSMp~(S&+(8QkWhU7%YBj2mwEY5j0WnU8lueU?;d$Q|L9 zCwAjj=>;i0_0z!o*u#_`Nc+OJD)G^a&~Q&j0I39kw#nT40SrGZrfvTy^>O7cg~yeT zs4<4w`wi)SFm zz7*y?Vj334h#W@okk}SAtw&79nhf*SHwvvyFXpG&KdjHFe<9@Iz#p6^A+*m!iIDZ0 z)&WYQ6A9myG8~7|ZPRVY3wYB|lD^xbC)9ps?c3*fC*>YxD{es_925MFI9U3ZqF6@0 z;B*6zV- zM=Cn1qAnepy9D2qr{(vjd0Md>LwtodTFmZbxhKyNY>7W#ycmCV?p%~c<~_pV?w!S( zmrDAS47y{GPfk(oOv48GNSu2VdQjt}y+$X>~v@S|rn3hNDNN?9lo{57W1BM_=BI zp=}Ec;}5lk^kyWv0)d^ZAW9-Yf0F!d;vvYhqTvDea}oi-Y>FGL8+ptz6?!A>0yDwu zsF;;1*->V}XWGA%2SV|cEXAl z?>TeKs=x1eB8tLPX5-8fr_EKq6bZhl39r#XZ~2b#FMB?Y<0MrZYSCOF_hViy`vXpr+Jon zvUTU_jU^dcl%~ij@+*|<&P!M|jvODXf<4*83w!2|6b_$@yGHoh%5-DmT;1J zW~Hk5(|HvO$t0uurAfI6Y;rcv$df2(wbkgm2z)KR($#_*y|S!2hcn`3QS+#BsoQ!$ z9?GTd+#65vozq*%Ew|(8W;Y8yvYglh{sSFYd>Eg69U1%Tt@N-2!48r02O_C1b#*JF zkY_NG2pe9tMN1wOL3xOCZh=n4MfKiTc&s$n{h>N=g+b~>S~XFxV_-CnVE464Qg zru3i)Yf3u(?=-D)8fGy_t&`!FAVt|RVWdY*=D+kcdB?rRbOeKMBdU*ZtU_;*`o9dzUbobfAsqO2D2VSo} zNS>8LMOxn)(Dsd`*sFYJv%!r6|Co8sJ2S4|60*Hz%V!HljhV;yu1#Arn1^1FapFm) zr@iA4>I0#(gh`%xhh+_^oOwM-)w7h-LW4EGu9#%dui(AEJ~C35yX*rvyv1oGK?%Hk z%RN~Tr>+LWaaK_^Zf-yATdmZ`QY#)Nz&9>`RtcJ(rPke=m3Y=+58mN@1xlaO?OL)c01urg~ReLl}a&`)%S#eME{vef%W={(!}W? z!Vel4(FS=D8v)kUtWG5WKT;{9ROAcbwR$$gNdSS0c}bxUB$#r!Zha)OZeYvY!%@Avdeexuy%Qx+pk^8aZ9(4ss0cWpxY3&-A@qDV%VB7WKOQ9y(=8( zES99te-_=gcW1oD4rNw9t}rbk3fPv!cJ@{ z<67K9TfrI&iLoMbBl{=(sZ4HeAs)wSxi2B~F{KJrfM~j(!$zq-R3!) z&;J?!CK8r+*Vs2CBtSHQ|ID>>@840bL&dSIH59R}H<^ciWTn^1L}p*o-R_PcR6IDy z4NO@qxnsUQ;n=f#Tw0x^Ch8iEThD?DRP?YBFSw96MhM@)B(Uwv{gW+} z`(->>b&*%WdSgnkPcwW@s!H&}kIJjKnJ0S5JV`P!We;3-mnW%?4F8)r_FtdSzr+6% zI+nWCd(ohYePbknk_R@M@-7o8DZ3e3aki_^PpKmX{*5LVxGVf4P^e4WJl1Xzp&o)j zAZpd7*U7?Jn)t0Ad+!PGy{rt-c(8<^Fo1mrdKQV92NwesX_{aNx%hKM6Hf&RF(O;d zedme1AHSz)O`JaWhHMkYh+1WRvSgL zF@rTb5`q*Bc8mf;41Ki@7U!suq1YD~-k@!eRfE+#3z}20LpMAp9hfQ^%9sa%K-U!L zLh37a)9_s+o<#&Nxb71`z6vj%3cQRR5gjittR2jM6OzAPTWgdrrt$Q|$fomQ3Y<2c zqTSzk7hMy=M_~mkApGjw-8Qgc#UB{m6;T-Adh|T((d0qgi+$FJ@hPSMYZP(Rgy*5n!* zn~%o%@{zbkI$@QlL@ho*hmQOUi6dDq8K2*4tF-=EH0L^KbEVkE$Wvve%C`MgjCn%$ z#P4T}@=U3)S16pvJc-wo5CR_3%T+{$D0X5zHRpN^joIO{svCb&zVcmKy+eo&8czF= zo;4gI@qu;1FHe51sXNes3>P1U)YTph(2({V7+R)gs^@)_B{xakOi3cAw=-rY31<) z;S^zHzyIsL1^MX3?FGN-?v*;XzVa()xUSW1hmAR~OD!+SnEvZdP*J}BjZj$HxqUSY zBE;FST0|9Zvh(iP+3Iz*%OtC&3AcX_sJMuLH&-$P{#YwVt|u~Y-033wg5_d~D!SqS zMM!J@12xN7H23*bwIh zViL z^pRQsL4pi6*BLiUwm2) zE!qX54XmmBQ?f;Bwj4ba5x_~>TLk%E#}Y5PM!%JQBq{iUzp07o^c^QGYYUq;9Vlt& z=ulXL!HqP~-4x9+b|L1v=mT5k4F6g+iY3Vkg#j}Q3(`&&^uNC~9?6U7@bsrcf%+Kh zp!L(pTrZIeDzqt{>W1kTI8H;#ymG_3J0M8TREgO8;tmPzup z%l&lPxq1ZZFUyBrLLq}eOF%{Xb0SfxlNUAZxcEZy2O8KeYbq8``Dply%uOz$hlJhF z(6h&V+I&XZo8Y0`%*I`T5ieM^RS?hHZ#_fdVM}tE%5yyUhp)-e#dB8~UYkU2pUtq7 zF{=OZ2_M?qw53^TKdk{K&HxH$K(Duv4STEzX@?P$9+$^?_t^MQt+$Aum_b4M552(x z6bvdjle2=aC}KSd<+Q0_&p6I+kN{0Zxz zFWd>FS&G!(z_hrZZ(Ag`oqcN+v;`ro?@4xJl~}nm9H&ABOw9Xtw)YZdf-Jax|IuDB z)v)^1197PnI9{r`Uh<4lUuPssaVs15ANM8ZwyJPDX+pFM%-@uOD$9iX@n)Wc1mkmG z`x(dS^TSu}$0bL^x$IZ$F@yQw5A5Dhv_N}%o+sEHyE7#<92gA4b29N}Ti58o)BXBW zGdR~=-?4L-yyhmYxbo(xqn?jtHu8iUjeZxL@$31PMg(pZ- zFIEuYB6IS@`|?rP#G~w7(L)$sdQ@xu584t#((c;vByo1KBe3bPs?qnC5iG$Mk`(An z5?zP%xc_-bokB+gliV~4)7=wQ@VazJEZCi2hXjX&CCkBJL~&7!ykBFzbLDwd)qqFs z5awc(ROOE!JLDBcs2ZXSOtDH|^$$O6_x}hRT|hmN7-Mf7s`2 z)-Qp2m7h@RP&c1X;W<6bU8*TYED#bsyV3GwA8v)a@9M^k#yvBvNkXUkLHSvGk@nPD z3{qDl!g@5Lqz?gROJNNKZ(sY0i#RTD>Gs<^!CJY9;#1y}01(ww$4}%`ECPw)3f?4O zhc-`PtZ!yXuHGL9A>d1VYuR6jle^?vW56!jl|vCFzkM{R?JwK{sxrf(O>~;jqFo`Y zR(ss7Nk`BTmU(ieER-G18f?-A-~DFS#?~EXpH6_`o&x?bomVp|;XpZ=VwXLs{&G5$ zP2&OFA#6IUO%#}f;4J0;jRQ0BdSE)QDEs-EzsT}n@tHT1yj88uOdQ^Dsl zAqQ%1GWmlom7!&TTGVmE!+TA`^Ov^4O z>1e$=2^~-x#K@2s|9;tttNN6>vsZgkh?nB<|7;EZf42$$|NgrG@;dV7Dovz)lb2Gc zrkC0p;w{iQYV9rm@|A1!{zUR772Hu^HExOLY;adtRz!k#eWbt?D@5EWOOi^mP};*; zTU$2HW9f?oY_6rJ1=CWj{XjKlGE^UO$$P#e&U=rQtyhxj#VJEb`u8EV{hsBpu&vM>RO*9hDM3g$RBSsVH zSaHURPyje4Cjk)|&HC(UG6GJ(M$V_7AU`B~XN~E*hoX6|0L+ z7kH37=@7>=J>x?~{$rBmgtU!Vd2))CUKAe(@Ja-B!EYChZH9f_Euz{C79nmmQaDTJ z4Ay3&_&LJj950jWKTud-fE%j2--L&hI4JyuyrV1L2>T0>qtt^9z#fIMMqtb5ILK9C zANZ8TMgFYC`iK+Ns(~xmFBRqnX9zoMVVGH(1y^s1R7my~%bDGg)ZJPS`XkWgQS49n z(ypp^X;o8gW1{GYd|_AW>zn(@3E9Kw4AW?!Ha}0|OaxsA$>o73?dcU!2Op+yrSIHO z*CbE;a`ODnm(5J4Iu#WA8>tQ=!WhtGvZp19Pc#|hOs&S?u8Y%d7Ub6-QO@^%$*%O> zH$NQ|lcKEKf4JP-aaJW@>IF4vjN}%vr0FYcggE6ZjdKU7G3 zrkt|L%sOo2ZM!e(0!gS}mUiY-ea-hS1D|pKi+7h@o`TSSM6 zV{l%_a6PyN#_T4EUW^hct+LN=*Os#+(a@#2L5kwIbi>F?AtX`AtBB^{c0UBeL&l>p zA_(jfV$uy8u&KX*_%%T&$~tL1JrKINGz=(H8n1{uK!FtXJtE+c%AgZDnBgiY9TaTTt|8P1Q864Av;V zPI!N!MT_FjhJhxXW0!UmQRZhFi5qk^H}gpstf?17Ou1hC!FhK}`2jgumd@5t#^Vmip>u z_7WR4@~8D%kWIra7v0rY^`d&+FA`eS^1j!lT##_}co0vo?Ztj+^NX4k3j~$1K9FuG zp6#2pdh9?o2vMMwRlibuvwSzhiFsA**s%?6SBzh?jI8g z`b6sof{4YWAv$iVuE{ek#~^<5jIUPyD!$&7CIcB8Y&OW#d)izc^+aWIq9c&7+s=+LH=r{AL`(_`!%%)WVm3yfA1^`D$zLbX*tKk;xN+30 zfRMbvuG^z>3z2hzw+0WmT{CaJjZ@O*F>-`t(V}>>Az+U_R&7HNW$B7Q3aT*ym;4L) z^_)@~B>OvAsAHwJYINaJS@((FkyzZ0bX~-e8T9zGj_c_a+cYe5otNe}WQKoBOGV!f zQTC1Z|6=UT!=e7dzwwb}?6U7h5wd2NZAi9MXd%0@XWxm8B_unc&5|XRke!k-$da;W z8Df~ql3~U&CbN8gr|<9jUC-~iuIG>EkC}g%ne#s9KKHrL>%Q;T>oagGFG(9VbRB(1 zdNEL#nuqXaPSu72_6d0W4M5i2oFq+y&s2(w>N34G3hL!=m%oRVTth0sF->mx(4lQT z!Xgn+{A_QM6|W%HaKS@SLsne{zx#Htc1+{SOY(nqW|$zq@N)*|dYLsNKTL)@rjY?hIdY|T6Mb~UBuW$^Yh=-+M__{k%ACy0Yh`XdkJLB32IR|$CZGJ<;1ot<6jNBiX9xhi->NL-5BvWCDP zUV)K2_Yt+V#=TfV;~of=laD}sD-FO+C`-g$E*4Tch9fI`)jB;YH`oIaRnPG3LCH09 z^`=xjK~9y?<_p*P@w>F<1QrBpdIf)ZMSyY!WPdXfwC;W=Pw94u_0E0kJ6f~6TwhIP zwyemQ#Ks3_rR1eXrv`yO38&lnZfhgtfVbs~+G{f(Z)j6w?j2KJ*Y$0wCqisaB#L>%}%0M?Xyuoz~Gud^FCY*M~yRgq_Qdf<>`v2yh zWKtWdxQQ#c9|G8Q(%_ioV3PbUYMdkk2Z)K#=1MEayA^y!{Kb~0M_9WS`)5wVtyN)@ zuog*W!WUW3fcW869rq;&;&o!1S)?q96JrK-MOwS6{tb2el1q`G3&;a&r>W05>_ofd zT3jI@4bcen7mJ|WqZJ+I120qt$K+0)8XsU=Gs4oOKRjeeWx)J}MMM~;XW8!qpaS|2 zBM1cP$a0dL4{Dq_;cI#GS9{%_j931lpsCE|L$cGkASGO*V!@P<%+092rPhKjI`f@A zfzdz+&BC|x5#ZtdU$6hB|96z-?C@vNuywpNLh-t91q+UtC1-OY=bS2~$)2A33jrm5 zd=8BOxZhe!{v)wRg=4{YA>?ox%PLu66WP9ttHG0rcHi49BNVsL+FZ2py{swNZ0*N&?Nv6TgfD2<~Rn6p-Yjg#MTNgu3T|75kdWg9N!(l5TVQQU5o zXA{`uEkX zEk$a|($Kg`(J7#uRVunynnOuTc2H- zb2}1+&Akhbr_0Fs6dFejn6f**KrZINA{L})Ye~6l^;ZX#u96)-&P3{Q?75!)_Um(? zS1e!XXCe2uqTwM|cltNocoC>}7~U+~qyOl`)pC6PL0#q(=`@8!gK$S}f$`IP4lj9^ zN4cH~>s9SbMJzGh$Wb`#Acp($Vqi(_@Bf43$6X#W#cnrYb4{{x2R{`!RG~$s{t;-W z8_!L!g0U&6%#YGoL@{nzNW4StNnoH_w9_$f_kuZNVAsFT?%O12elJ1je-wYN3MGPV(U71% z&>P=DQxy$iqVtkGsng5&SmK_RjwILaX<2zT`Bm!+OlD9M)P}v#S|U7Kg{0I7$e_X6 z19(G_%obAuI+_Z*;VS*OxLyTu3c(~Y?)Bo9*0|cmz#l3>Ug!9uIdj=6b6=>b%3mjO zcO^aTuJJ(0G7yquurC*3*erXcVuP#xGYL=un27#qsX=VLA30{7X6S)&4+%X0(B{GDKiGqX$ig(ueTaPijB*HwP7d!2Pyi=-@T2rO>tewQ@r4q5?5JJxMCfM7er0R>k|U&UzFSn z>hOQP75!Vd{_*geGi|??nnu`DqlO`N=$PAXQ(n!3LW=HzXw{A&U3T^(ERaK3b=Dr_ zw2%W{^UJeLsN(T<0=*kMH8FYj9M zU7yQ7J(m^nH#`TftOFsX*nl|;0?V0|_T@$jhHSKxRVRIq*yEs99b|(}a?V*yg1+RZ zoa>HjbY|Q;S3MNK)p<1e;3H>0xJP^xH=R; zGE2M>=`&e1CMY;PL7s%DawV1Nbq2R_m?;cLd~~RNHnt|Z__Wv3_Uf5j|G};LeaV=W zq5V(ZX6-ndaB;%H*%d1lf58%h=s1tScpZUbNoQBbtHb_W@gm z#!W4wsMo~D;p11hyB(A&UA7!?%T;f0Y3wh(&Y#tbQy9Ku;UOE~o)-A&*4(dkiiF*l zh?Rx)(f;#=pTEA0y^o4WFk&{lfekCnfnL+0P4@`KhJf_wu|k?{4Vtcl&gf(Xl*RxB z@+72>SOiI{oW{Jc24~*V6(|A-hF)Er-<@>Z=Gnuju9kePe91|+x)B^@!;%a3oIO9? z#zBaqmh^-QPDo6C4>Jkm;u({H$TBZ>t?^;Qj=mm#8BC4#k(SoKfYC1fV)ser%A0xA zQg1*0r=zNaKZT@1{)60bsLlpyLe*U=yaoYEHY}~B!E{f;TkT6aejy3-QuIP11I}U* zZ2PynMx^geKo1zXD53y@VeoxwRi0vNW*Lv0i(Ja?54L?x7_#96Wwv5KF31gU1fSQ& zK(|jd(q`P6qcY%$ZAdyxjvwFO3ED>!(eu&kYtjb{?O<2vZ1gSzjdsS6WP*=oz@%3P(~3PnRg z)U=LsvNsSXHI?~<9=%AAr8oEx2ST7x6&edjRWcNk5agR+Ii0$F$XpbUx!O+rc;Clt z@B1#>ceJMb-}{PWIfkTKgalsO{Am|O?h_woZGplTJrJl41l}xzuZ|-8ph;-mX)Zjc z6G}GG5ne=XKpK0wNT;SRA}~M4(MdrT`lNl)8795>>wf$1Ay`FGF|7P@5p{V;df{&~ zggk%=96EX*`r=+ln1LKUDHWV_6aI=uR{&}QR>#xh3W2{)T0*0h1LKDUbhc0e3*wuIo`A}tEo%~#)(@e zAy-dLU*d#9bp`?Y8lyQ1CaT#Q6k4JrXcG6I#HZWL4YTSD5kJi`V|)xdhlGSaL!z&N zKLZwh(?gq4yjP4A%>(_HxDhD^;Ecvq7>#WbO!{wCqWRh`$6PwE6??^6oU|5*2b=3`6|g| zVSD;8Y%Q!@NI&#?yYro=KT{Iz^>YmN{+)qCt46SiT#6_-CK!7DCmni*S`%*tQfOT2 zD>2u51?)OX95rMt(%ujYHd*!Yk7Fv0YUNU$%c2Qx=syTlCx|Fb4}Zq-zDR(k0Q^cu)ZRb*pSUxRbbT`Uh?PM)XD3cm&^{)lFJ& zkIJHbQlKodEPWog^Io5!2bnG7#iI~)RPUg9=z-KDlVOD+!~Wx(FbK@}GoKBE%9Cm4 zZ&`#99f@*d^jqqh{`d<-L}7~ED{`At&J3hsSL&(I-aY*JA?q*CfznAuey_C8L=o*4 z<-_$8Nh6T*3fM3N&Kh~%?5Z3cQu*8sj}5)+QOO@ULrdp3)b6dC(;IL?)@p#->*WeY zhP0K!{Gsbdamu>xQLp5gzqGoaHR-Z|a1R@Vmd$L*(Gk~#O1^k9LUf!%w8j1*o~`-n z=r7V)9G}t*%+5mj(w{+QCf_w^W`~VirkQ2^xWaelaZrFdqf%D#XJe%-P{LS&phI95 z+(>7%`*$CRKvNQwNCF6PQt{vnhqcSc?`{6tpStt23cs`y?emOz1Om+JKr&nD`nOn5 zCKKA7o)g)gg!Y20k14KB4XS_S={9phCvq<*x#4iZ(s9HcC_Mw71#mDAGViEv=3atO z1WBNfkO}Mp)M-q;|Rkm~n1{ zDim(O{A_@qCL)2cSH&QSmq``VFfU((ad z$7QYa*_M8Ofeq>8CcB}PxdhXq4AScFkOb?q*rm? zf!c0uGny`@^)l8^tZ1Hrr zTM7Srw$C9R&Su5Br7e=tm0>s;&i1ZJ@x)ANQ)k{t$I(ZR$U>?n#q`&=N*CE>>NMtr zE>35tCp3pkr*Sot#y$pu$Om=Al%jEkNrYY6UF*Ds~5b6$yx5yym zgzX|$FK2IALG(@5Br3#0skL)RlkrW;2m&>X#GCFe$P(E|>L3sOoM_(CiGTI{t$$vO zE67;vhKC~iB#&K-hYZrdg<#+PVc&Rvvd6Q+Hz7L;h%NQCyFBW)oe0Y2Z`8b!P zw^`sulIci3b04uvt>@yY7U9PW_kP*kO+MYx_Ke5foNzTjrG5-Ng3&6VoBdJ%RB)AHRv7`ym%k#_pxyAoO!Q0a_mk|`iUUP1XK882R~EGd(Nnea!K&a zA~T!5RSZIo6OwyuL6>&_nl@@zU^!lo)W3?m-uD4lP|-bg=+nviKoLnzru#`$-O;=8*Gb>t(&)w zKgsg5HGR9#oZh0-Lu5qbouIz3G>z;@zh6ZJ*_-4q2-LlJUb4Dx0yFgmO~f_+CcZe& zv+ezyG`_vDzW5@1ixKxAgZG`jyz;j#o$wd-)2<-?Oa1}uj6i}qcg-cxEysinDjBXe zX!=q(8W&3qRTS%fWcZYfL6fySNSkRW?9*rkRR;w%9U3j2Cw9NcI03%N~w|NxSm4U;tq7 z{a7UJps8)p@9aGREml(WYR)g@ie%l2j?*s0WTYk>BPrs*DKlOSF(+y#n%7b;1q02C z!AMq01{ivCj9y~K!wg}>~PXEy8;8j0;AH(=g}^-7kJ-O6t+YDZ*2ueMv$CS-?(96||LYx_VtMR< z@e>(q(4d7k_z%K41)eAe06l34Qejzd%ym2IawEfUBL+-xsi_`Yf@~U)9_}9$OyDLo zl*X;%5T>0cf81J@E{<-Wvr+pf{l0zVj_;xmJDtHyMB@?jGmV%p@3ElP2^4{+pyGK~ zRX7voS2*IYyxhb)Zt3o({w}fU%04j?hIbLFRO8P6e9}F1D$&q}1dIcE1%a}moup_? z_K2+a^_&sWY+h8ZsrNg&zB2Zv^i}Nb?o{zay)Y?PNSzx#}9A*Twh<8LgojgjTB!<7gdul>A2JP}uSJ@90?1XWlAO zBd2~y2?V_O7(dj0kM1V=0+y+&GEt;gZCmGWr!e-nzA~54`N8uNLpqHc;ErJmR?!&D z)&T9>3ajS$1K9iZq+Oak>CV(|(JrN*cp9jc%{w}U=YDtDY{})X*Vn6G%O!nBWK7(~ z-%`eZ?a^VA&7mpNiydI4?8X5EfJ!)tM^borSFbj$)+K>hhX^~tUKcUKP2C;hEJfVXlWMJ{i?NA??YeF8ws%(Btd{chBWb>NSqt{X7o|zl=K7VAH&n>Wj0ABUrCgBK@HEOZ>V3r{ppd4)&*^3iHOWv z)Y~k&U&z)Hir5hNlsdJhhy4$n;n1m(E5>fr<)LvnVs%j=(}}>D5QBZ@-}Rk7x9H)O z#TW+r{mFH0ce(xN=tP#&Ihqo;&`=21)!w6kD5b((o0;rWp((Z#bhyQ7%5l_zCb^a@ zfItm^)@&7!=?}~WbfUliTp$RhN0bC_Pp&DP-+9%X)Fm)6!uSoj!{4D+m!|O1H!$fY zf(>-QZ4!@YoO58IE0-NceLvVINvcUn78ocW=mrTbRc|pciJS9NXdO6n@`ZA=AWft* zro#rt4Q~^5pe-$P^nUUvKX-za(Us3kaFm7osmIl>8yq&Y3b4mWdO*n~)q{0NCKscZ zM!!2+v*KBPy~Eb_*gZl>%>Ij8dpSkS1k4LJwabv%g*J{j*$@HeAR%sei6r8`*MEC) zl*i~kJ8h{s^EatkNH`lwdet<8gywq>09gm>nC|j)M9bnZ&NUJ zVP^3k?OE(i#33SwW;IVmj_Fbt6#6|Dy2Z(SAPF*6Lv=J(H?jv%#%+h;1eIIJp{Tf* zG0!h1i&`Prt^LDmjH`QZ+g;50;-^o_+FFj&sHsMri(hsegf1gnfX#ddgVduw?cv&l zF&vDRbH==yzL14tq#H zhUSQN>>!*erB&q1b#*2Wk(KK26gUTYrZ#xXRbzz3urkPuFglm@LL=Bz?jzu1wh<)x z;0%h&Yf>0`5%uA62eHNJ%wbMRM2B6yqL)And&!j9nTMr>-R$WQ(fo9NQZ!kIHiKwg zLBY}f7SxwC=pXw%iWzNUA6t5}!Dl8&S^9^@^+BX&-%^vzMUb zNiz=B!%b+U@L!sv@qANTw9&OrJv1;I9_JYj+<93%W3J(pv~apkElo)0j@|@xqn2X0 zPUCbu)kIcZ3X-I}!Km=?CRQhRbvbYvf7vk|gV=<-Jx2a(AD0I_8N9?olEX`iIJK*r zHxA#@cQhA1E?(`(S-VO)Ea})IJttqd5G0inLY+~JZ?=3az?OTcLe@Puf6t>=IGB`88;YPWT>)-)fdjA+HV@4xhB7^K~3Ht!0F(&J16 z=*;*k45+oPV-Kmz*?1UAR>*(3I9-(wV5DH7e|C^7QrDL#p%2 zl8H!l3EZd4cXi*vNaleDP{L__%V-rx&%+&@_p)cOheYOVVe=QQ(kFW>;DB@6`B-N;QQtSwEw`gG{`QfsD&ojh}l|M3Rc zj_`PnRW9y?IXF+eNu%HFQOPkZE%4WLgG`2mm3_g6**9*fUw1woPXIz%aF|d0JIn#- zj~_?!WQc)ah51#3_WCRMWcYSSJZ~6P9?8Y(B!BC0}rIb)hhk zV%OY6OkXwEEN+Ng*{N>d#>y9p#;{}z3$ymK114~eI58yt3Y;X@9a{2Fq=F!tconfK z@csRXtO5jRfQJTPH(wxL0caMO3Y?JydK}K;<81I{C4sL->ixppT&ZQMLeExryzGj4 z$zwP9g3jxR`x7lIvxlAOHjE%SAk9Dua-CoCD+$~DP^}ak8ieC(8h+PMaH{{MP_OSe zySAr9U!DEIDe$ZYF)-9JBbeAW(kn1!E)69THI8!h3Mp3&kq zAUn`TNE~qpn`5BRNdj@xn*E@)Aey32GF`=4eHNi^HMLJi)L8~Aughh9`?a{JIDL-J z`iF`0+5AfCTBIvN8Bv3XgyX$)le%HCtGn6DhMm)aIUQbx`L&BHvHrw|^+7zpex-U2 zVsZ#(U)8^x*FX?5U_ltB!T7S(6f^MjYv=9VL3GroPzMRS8N$*|FZn_&Pdy3M3sq&q`(7GXCNYj=PGA++`k^^M;QyT1bAwHL!EwxzT`yfm?F)-5AXvCa zk)`G#{Z(=e#Y;W|5p+RP%b?@U*56b9-`GrhX6mt>H!MYDil>Baouwas7OI2vXNBG8 zvIWl&1~%G-);g9p11k)Cz{=l0X4%23un+yVI&`q+>C>_w+&6D{7P~{k6sYb%d!URF zpPq=slmQkk75dF~^p!%AifOm6;+ln&f99xMgR-}LlG)!^(Zyz4J72#QpKt8=-R7|B zD=q8K9tnKGv@>^+d_TQttk6%-vKM(~Oc!uc;ZcrMComE$NxN?u*luzY2!Lyo-$_m# zEZ&dwdW1%6K9cs&w2G~fe*_UN&6Lo6MyalV%8k21e$rsri70XWd5Nd^=Ya3fEjQsb zsP~}Pm#UAMwo6|6G2&IRdE}Tq5Vc_|VfJYDtdMk=MgB)D>(>fwn9nzlKjp^dqwV*y z4zN&uAX0?)IZEsn72M{)mS>#vYbX3U&dmvmAlDmv*hU)E=RB|d^iJ(tu9^kLKO^hX z*9)=P9l{!P6n(&~1fmQjAw3#hyxBGS+t#U(Wl5If0zNxQorDPwg_-z90<_mqk7Tt* z1|Z@J|3RR6AA09$YWH-clb>SaZN;R-;^n|xA;~le@0G^~{~BIH9ByZ24|wL7-Tx4Z zb3<`aBve=3*hq1pObZ1U_eBTR_q4q8yEmg<(lk(~4_Jy{CVA!?d2|15;NuDXm@`AS zU%m}edW_G3M@v4iUYPFx07nIb(YKnTTi_u!R_pGDxp*ZA>QKi!EKE>b(Xu(ji$^ioyX zB6e;R_W3g+4#}ZUk7-Qnp_}Yx!;>$yO-8s#j43FviRu)K#)0a}YdV$L5N5yM%k+JcM4SS0qo2 zKIwp;WKE8V@$X;epmrLnk>GuH=lq^sEyR{{JIsT-`3XG%nKd zal8d5irfTrTZO_WN@L3>M}djApuzl*EIm4Ievam80YM4hwTf2BahVGD%>r^2U4zS3 zf3ZxR88*EG^U!@|;6Y}#Ai={qXt)wnRZ{KJoXCN*=#YU zKW~54eRk~{v%Ax1*vBHi0tNg_`=2_}J~=vnhW=7=#q5uh5vckeHhd1qZ!qNJ5swa( z)X<~0bB6}rSliCzGdWgoPR|4>t@%AQQuaub&Svwu+W@@>p}4q_ln@lLcVDI8E&8~R zIr?;K*AF&T5)z}OIS(ms03Sx{I8K3llQszo=9by3-FAoM)v zZ%vQvj*8R&^zNx0^egp`#V&1Jxr(2LK;lEz`{C&!2vkf0-7V9X^Y0AR+VPLk+jkgl z&Q#w|SR44X_WHyx+Bf!)ohN#+zHdrjCmF$?SToalksWRWT!60yJaa$mMH^|Z@g^XatPoq1KiCGE+En<7lP74uGhx@TIWirYhKT2BrLO8Ds1_}JA9lsD5$ln#E5u zxsBd8*ZxTh=mVmha`YUrp9(6J{0y`Qkxe(W9ZMdyNe05-V_G_qxi>Ee7qciyE-EH^ zNV#XHu?#cNQ_sOE0^k~XD|W_`tl>PkXy)Mti7AI<9moWJ%OUfX^@@O-S&CVL1WEKJ z^({?{)IhdqDYTi0AnUYlqM6ZFw|;*tzjxu6m6_DSAitIA+K zJ$Qj(c?~IQx0;AHQ=gva0z7qys{bGq@evFc!xBjH$7^Gsf0CaK1Z?Ux^=+m5gFW%w zt_#a;eddyM$zLW0oPF3mE-c6^P?mePvxPQPk3DS|XyI|T>pIuS#%y!%>0epma_4G= zhtrT(keIAxHheAUK9V;_!I?>m)*at9Mv>g+>yAInn)_vjJtLQLSWDl%Of$EUqaQff zCCLIPPIN%mrM{A6^M(4~@;@!(GEBS_jyZFQeztDDo3- zTi(>05XiZ1hz?cZCyvhDFGp=uYS7z8BP5fK=AvZ`J$sknRhoJ4Kno};+|J} z&%382_kUM`l9$F zqAUpzot)TgKfYR4#y92V6nBHWqQKvxx(Kh^n)CTd*(;!bX?+7c!9TZa9HFGV?hKC5 z#)o!xTDJN}g1j*vKwGCOE66*#V1b*DZd4tjfc@wcyZiGI8=tym$i>iVBR!339QUhB z(7?|(63ti!{i$CXlmd57`6{2Z$kA#>er49@P8pH{S5CwKAoC!qJ?g6kyRcc`10%Ki zLys(KJ{!6CM^vR{(7nB@V>*7`JA)OMWAXEE(c=@KG+&zqxZ)Ww!0bzI!z4PwX=90{ zZTzd|dG^o7fYsbcH9yy+H4pJ17EJ$w8z?C&(;#1Q!tVAXcu5kowCf!2dL*ZUBRXp% zVNt>=r!r%E$Jw&zzaiQlCTkRi2un%xjtFD3sPN&&5fzehdSbWW+Aiq~*Ps`{ti(S- zqm;>sY^-r<`O4R;sa{vrvPXoS#dtv8GoP7l(7Yo6+bEGT``qZvW1n_-9_@w=!^CCc z9!uqFNo~_Mg6j*iay;1$AK^pcr^l4^xjJIgOmzepEnrWN9{3lb}NzaszS#)?{tk%roc^*Fpht?`ZAJSmk?D<}|0HSs7%J z?K_zc)7T)pW3yXdE!#%Vsq*KYiAPKb!1~nPW_Bqesu%>6)InoaUvr5b&<*@_xRTz@ z_1evE%35T2c23Q8lUT1|ns&|lbnKm_PCaR_4T}n{_ugQA0IY->-IOwiZ%@XuD2LR7 zOIrp#UD0CxI^i$o=V}g`5(oaP75o>dLBiCRx4~2O4e-y22l!Vn@#Dt%)!iMFyrwg) za&6j4X|j2)g-U&W)?cLb1ncOtM`>?n+ii^{KFf-Q_HL*SLWU;X<02c^GijVTcvy-) z0G1f?3BehWpOk0+*iJ?U@>sFGxt;yHJvNg0cK*w#Yc{Q6x}}}N(!huByO2!DIti1o z)-!`Ip}lZAQs&^EpA|RK1$wD_#__wi9|KdUKYI;Bjr86~ub!yz=Qv+5aDN2Kly*ds zgFpOeUpxc?PrgVg0iTMWoa$4^$#fdWW4!ePeSkDEgpvH#+&KM;XSHe4ALkm|EHN2U z1v_g7-o&Z%vXOMvo*f-&e9D%$sxAuMge3fh@0NHR4AVSdB>)Fq{d<};w3?gcBIEQ8 zIv@e-mP}Lfi}s52m*M(x`j&U<#16S$LZ?5Cg&Gqt2?n)-Kn;CJ??ZAfle96}>)8h# z?-L#UahU8NLYt1AT;C7T%=32WaJl}c9?bQf{HFZc6hYBd!9Ec0VX%lq8gD0_ST6Gv z>p)>gQ|pY%>|W350$TjGEvz7ulkb$E+K!AS+l2k`2|rz#qRM{phLRH|Vm3o37$J9b z_L~wi3zHUQ#jijRrChjwXFF&`PD$!EChNqM_rt_{`0v8l;uYTZw%gNAr}yd3=ALN{ zAAZxM((toDhkaqMgK=g5HgfN!b}{k)QsaDGms&Z^YMtZ8DcsVBx}JgB75 z?bGn13)(7W69b+@%k!TeL+IiWD1SKS=UdR|>u!wsKM$P1qe zbhz6Cz)FW$#L`%e$?l}-e$c}OTqQ& z67`Lt7Acq*PcrZ=Sw2I!xwdetU+SIZN5&sd=M(v*?80d~3S{UM67zLe=!f4#Pc4Bq zh29^{`oH}qP$Co|D$;_tQ+-B35X87{F`8}?RvU6#UgoyOcn01m6G z{tr4gJ>D3aL^-wkN?`8U5?-sKkASte@>PnT7auQ=)$|YC+{Bb-jU8kV0b0BYycV82*u-d!xc$LtVRZrwT)| zuIC&^mcrjcW1%O2(8Q9UZaSs!Q@695X<%$3+9ML9)KDz2{nLk6FqMTuz{8I1i=ZFc&oK5(bn&$TgkD?K|4XpQaN&gs~7f$cdqi=@-@jOg6r2B zlOTQ2Rj6?poxxRI&m+T`K-^;Iw)smUv4X1;fvG7Mq|gzLXsmREIIK$FpMJ#ZE>BFk z4RU&iRm03F*82?1GszhUNK`Y*Thh(JPukBS-tTUE5rT<_)M^dbLOG`Sf~JdCb+J=s z+AU0LTWYj*xQb+vDJ(L~vhOwIC*l^A#{P|iV+)iboV%up zdQMF32%v!Stp|55i)DpzzA}b{C!e#R&#C&`3{Hds@O;WWI^bO!;g{*Qus@_7wR|eq z8BK$I4@|!B;jxNrfzZH|x`||9onmari`!2kAe6~UWHT}upfVkUT;lOclll&X>sayJ z2l1w_ofMBgXox6mS$dBTXX32lAknt{Yv<@T?Guy%pZZO@BbW90suQviuzFe$G!yV z_nmW;6D9W&x^Dk|JMO1=)FF7X*be1eoedZe<(aa-d`Mf$siQ0Xy7m1B5swcfmAs6XCi&b!cVxs{#c`ItTBtM24G#}NNnP1fJ6%?;eooXJ@S%j< zuqU>x29wl-htQ4b5o9D!d~Eadp=IEmf;}`Bmt`b_dh^)=ogl*%!BUYX`GUWpB{o8p zVwI#LoH>}(Y)TaA3|`xXREJMrE6vSq%jTqy($JpDDVRHFx_|j}S259dAX7;3?bcf( zxK;==bdSq4p&mS`90CIjR0M$m={WvFYvvf<>mB&R8tNw#9(A*qo`h`EW-mbeDi<0$KMbLr zl51Q<02*Zqw;!jsVoPx0Uz-#nc}4ng4bD?V76Wr$VaE zXU8}h6QltjCI1f4B7kjU3Fd&i`)D8gxVPp*5ig@ttmQJH$Ui5ZZ?A90G@#mG(3BY#O5#?IJ>=(StEX>{$+`b zirR0z`IB9jy>6c4j0MTyAu7TMh7Xj*F@hTexVk2nZ947_a(Huaj=D`W9w=DuXfr?C z+p&sz1k5k%Ty~Fl-%q;ye78CYRj@Le31>D9d1u;GnB$|TBgGxr99##d{umcevFz}( zJUSaBaO}Ylgi*M3y3k!O*-)$ecP-KR-xUCyI&HGJdX;Ud%6aq37^G#-hxWOi<;llW zg;$<>d?@fTm!~=5Y#!nYz8Ej=1MX=?m8@=!3e_1UXSH8ZU&^(ZVuXjTnj0wKK`nwc zwYCQu!$o89z?MJgks*k`Fg!&{B^to{iME}^{v-7&xSdxDB0S4CLi?gekGLOI@%z{y z1Sq-j@rHiQROuVyarCvv?u0} zR2zYf=}D0oYyF8SpO?A6w~3b8U(Wv;-p_IH`d#?Ux-Es{uug(~`t1k9 zbF(CIL>$bTyg^68*#Er`zTpfKvjW^G0)HLkyX=9N@*$L#BtKCv8ZMaEB*wHaBtFlY=mTp&5}4XMSoKE9#!fpZm`ds|8?*Ba+17hUL!hb#z(FbX z2;bZk01F{86}qrALjixAKY|JLc=X1-m4$vGT;u0oU%v&NkyIEF85X$d{P!xWp^!U5 zh5r~>0HX?+p>T=|c=x1D9Kj$oIp_X5M{7~njc1=fytBOI3c6(rgA34tGDuGAUkki0%2Zdxr zhw~3V9>}q<`9{am%|Ia&0)GXT1;bxQq8Z`^Ne;1rm78d< z&h9zQ%$j|VruH@d$ixrA)rv;*4P8I+j1WX)6X9xRr-}FyMMB3r z_=7NrY55A#>YK5Wy;Z^3o>7$PnU70LECM#~=->QFmCCz8PX_s}lo+_*Zqf=bxM`Na zIcPAF`G8iTzXVfLpn_A2&)%!nuKi#6CPR{D^BcW`t5NTv&@B5M#U3U6@CE#qR`qLH z>fN%G9xmgR3H!g`v_NUVF$=pnD&kZrAV*PYi7hb$dAtKKNu=cF*Z6wW6MRh@Qrsp_+dbOPl_ZJwK`<8D|4s+og!P zkuSubrq&=Zua^}Fb0`CEafBJ*`{Ur>RcfBlTrNw~OU-c($dfv$_5jd7vWf*tEqH>P5e~g&j+Tj?{_dQd*#32cM$x2s%Pii6~twlz(2nO zsODV7TRsxtLzxO3S1s=NKabJZKjJo3kW@1R2cxgd;q|_r?@Q;=pFodAg?shw4-p4{ zJ|hC$@IG@mQGD~wycFwJ0fzsj}Pu zroY<`f3T}-M7xt$D@m!~Orfthz;4<~gd;gR`Oia=nWY%Gb3lc~+%Anpm24f)P9lH_ zCz9;z;}r=?Iko=;+c`E}VKYW~(#0Q&pL?+j3QU{DX3sPnLU%6`hLKV);V&H<2Ve}o z9|Deh>gyJq(CC-N4z8XoV!mo$hxFx>3hqJFLKqS0)3+Dn_N>E4hHjU23e#MZpEsEs zFXoW2V%~}HOGwOnH?agE;P>&@K+~dV0{dORcO)Oj*^>*)pGyngX}#|qOBYgY8C-T+ z=VY>%6ie`*URX%v7@OdaUA+;(s!O-csFo<5`Ns9U5JPEI8Piox_31@;5-6Aj^^CH_ zV$vx;vUJP}(XWTVU(=C=)3*gYsM{kMj~p~Ue$->T*p(T=cDkB~6B`u{mTbLq<<$*- zS^{fG!rT67;cM#o)8gj8rjQ|Ej}^f17gloI@HfBd4Zyiuce&9dL6jlv={rPwP$07P z%%|^s7x&O6K{81M_ArG}y`BkIjcg&FFMvKrTS5gt1;V;hqRwLfK}K)ru-0Vg<3ZCA zMUn@wc&u-N8*wbSmNU`h;_s3C@Xvdn9k$mt#2dc<4)1uGxSKP)#Wab@u`H20v$yK4 zTJVl(WmhTAhhm(+)_L3KIWeV8aV45|_UXAQF%V&8l&R)$UDXXwavKBe!cH_6KSCjm z#evXxnG{Koy52z$$Y^kQUe4to^@nI2)xK5fTgIzcfKt3>k(s>5(eOY^8$w5Wx6+b} zQ^&)JPf3~;6hG40H7BLue#h^~=Yf%;spo~b_+AfaT)(i8bL&ZvIpeLf4E7*&T^s60 zq#1I|^hlEaxHL_*x`;qO_I&DkDwX{Iu=VEAP`~lt@G$mmkbN6Min1264Jk{~v?A0H zh3xxS$C51B6(x+mk)o39lCh8MQOGu93)yDS7-mfO)$e)kbDrlu_a7Y{$IRz*ZSU*7 zyxy~c7Dp@4C5P!@W>;{e2m~5NhqX z!5s$oJ`EKKA!pD0e)L*bzHe-#&q%nx z{S?iF79OI5qZ@C;(4*@B(}pGx30VjuP{P#RBd9?Q1KD!h5K zUAMhu%u7m*MeTsCKDAj->?mP!`IGn!4Vex^j})bnwB1yf&HZ!37jjGF+=q(cCrlQy ztWb6XZz&mWRgU=e;iTp#CiSmpTf>=#`KJFB;?4u=^Tz;j2heOh4uELt6X8y6139;H zULV1K;dT40>#Iw(^-cAjc~hBLHT41|=NAT!T0h?=`0mdw+1uV*?MB#J`Bho=EKOiH z;{qfL{A1(7!(&s&clUvjp9VAHVsw@N7WcH}o zB;!FH?a|r*BqZzb3`l{qxl(f#fG5by`M^&rgK8#i4%Ho^6tVfIQr6;!|3cJI|GbwM zgc z1gQdvjf9q}SDqrGHuagM-?dErCGiSckh@u8QbNJv*S~%A&q4`d+N^ONe<87$>gDxQ zWVLR%Fx}FvbmF%J+p7`>>3Pdz%`G+g$K_HK^h-iq3SUu83@i4}eZvq3u+p<0Hlv<^ zOJT#SQbufco`p1plnN-=Omp?Nh9*(3wDQrJP-mhi5u^u5JmO~}C1f0IG{Dz$kIc5! z;a9sfn;Dd`p3M8iV(9cYNAAAnW)o8{jhGu6(;9J16p(G&r$(?6%p_G~C)zfN3ItV{G8M1&MKi0jG6$NotAKeR z@rtdX%HA^!a2(`#+JIZ6Vx0)zQK^DLyt(+w;&eiKq_y%Pz=er#0pI|5T#@ETv`F-j zjNrJ_cLUVi%(*qY?={qbUt=S`W(3)ue-|>9%h=3mv|U#Dr~&^DD7cPLiU5VJX>qlqxQ9RF8)nB1rb2pg26QkpB zgB6sEhfRok8~O}BS2FvCCuaWHDd0)JvinWNv%~C>}^Ls(+v5;Y;@`f}fig7d*WUIf**GNGX!>8R`!ZJMA5oGPwSy z{NxmAO~Q2|_-{=-xN~OI!StI~ALC$iJ48}Mw^gm4qqAiohR5eC2%QoCPMbSAH~6~J z2Im8yzT`_aQ}p7CIj)CQX;T>$S6F^am1J=JOW5^9dLPE&?jIs4Pe_Q2b$ZlmbVSg> zk9Q%wB}flHpLL|jg@@=ax}{?;MyW7My6}j7mFD=0 zi0}#U)BWvn98!vx3VFM6>UDEd`p8VE!9(TL7*0br)K zKgHgS5HnK!iPq|pc={2L9G$Zk`pw+-EW7H=$OC~_eIG0H-@K6b>-}`GAu|ReX$^x; zV=gjsal{{$liUCf{1@0q)?+_TZ#~xQ*E@!r@c$eI0{U`}knaSe?=i)qs`;_RTAtrng7M2(*l zQ`|oDIVp%-I`sNWUs7>av5waJ&Pz)-r&J!fN`m%IV0h!5fvR8pzr=lvC!%jLqt{G_O>9c6 zen+SGJr{#)QMs!@QtJZ!M_2*6{A)D$20aS)?Ml=pJJJp@z z@t_-b-njnwkv{oU=W4p0m}DXZyG%HH7G)rKQA(tHJ+e4!IyM&Dkv;)Rek0f#!p2$P z0Q*n@<9O;{h$!9iUI`j=z9!5^$xZOAg15!XWTUYAPkYjj4~yJ)f*7h$AAq?$hjAyw z5x9U&MWmqEjpRHjljcd$a<^9S9d&yw<-g%ho}+#rdyUVnEvt48E{iK0nL()s&-c1- zPNjyn;fMLdc6W8+1(o*kKmid7jMzMo61-42b*lx3eNF$2z zjljBvam6MQs*SMo+*Xwm)6}M+&c4?U^)Hk?LJmSoAB=0Rv)(n&{iT=~c3o%Ch39CF zZy!h(xh2b-1n0-NOQu!(A?bUH3j_m^c-DqDPE3C|{!hzfh{54Pu3&JQm!UE9My2x( z7-_Upr!6ZDudjyT*ex__K(D&L{*W%Lz#(p8lN>*)PIcwZ5J$NujH z)`nrnHcJFU~brr#?&U)vFUH=>6_D4wvGhw zO=CLCmtRT)y6S;(x_B3lImL)tnYDuzGt)VN?>XswJYHHjz>ody(6N>#th`DUZdcJAj z+GuT$hGDy;>@l@JE=w$n8w*BwDHkcsA2O$_gZ1 z2J9S`Rn;qK=)9F4M?=vF{@#Q47?Qky!)H_ey9SxIwphu4Zc{%;DMJKKBWo$q>SNa|OY zaF&3>q6t@q1G21B^59c*IMU?^*Q3j=C_#az$iBnEl4aR&qj%5$@og4q zfd1c0V6fW`7jYyDY&x&chGd$c+VjhZB?`fS4=}L+GCA-iZ^%7BDmvuriRriV1NUqd z3XZE211Ij|!21(FfQb$CZNp9>D28LWd#In7)~3yThE`Wm^&4urWCVI+Lms^dzbg`& z6ZYwJtWoG>Ig=!(Y(^pY>?1hI&kazD9;8D=lzd zywC+~4E?mh**Q>RRS21tNuejA+bokn(S0B@Y~~Mo3p=@&yhrTnN7yz z?Zo)n9E~cC&8W|ViCv&vqC-(moTGs3B@06aJ+jwTWFq0HH&BOVD;j5KG8$F<@XBAW zTYukQOD100n7xxg@`_5U23*KE5BKM0lE@!OW24P4qEdWJQUcSqdzrcF=6eAMWIrDa z3LW-Sp%>x)(Q4Vg2NmjZnh!Oel267xavrbAfJ;`Oj@aMAs{Wqjeo@<;wY!_|iqbwI z3z!ONP)AT@LUX->T~nMZ|{76|%vVDZX1oY@?VE3Uz5ERoAaGx#frnU#>u zy-7a~)(3~+dWyT402n)A>olo&!n$Fb3)Nd_W0Yeqa{C;wDfsF~Kl6rWV+C1**T)sDn!R-BN31x*1y znwP8fyNg92&An%YTP}M*G*T19aT!?G#~(foOP@}15T@6oZ5c4;!+3Z{Q{=1>HI&Re zbTfNQq&cO1)Vi_ODm#AALMiV`y@$M|X8D%TrM~!&0qiN!KM15yw{_e+Ear{^iLj0X z_dr(wdgxkBgq0H6@cq-47aUJ7TAs$ad{@dhl@PR1(2c=Mrl9a#r z=zd;%=K}nXNUOY9>$*n9D16$%xRFPzV0mYOwD4Mm{sBQufRk=Xt1viC$+lf02%%;z zL{c;NLJv?9O@9s`5}x*stL=fFr#@MowAoRSOcu1e^@Nyci3$DW`x{_hNm#0qu~Q{j zd5vs8rqQ6tKafRUxAFrFKmM{G6R4`NKXPG+Y0cHmVo6xjVgJEA3~CvL8d0N*`ZBmH z=Rg>DCw5LP4gsYrMS*h#Mf+^g?pqZGnaaHNfAj8|gSVac2c;B!^up7|lY{H#2Ok?S zzkbJX9lir5GDHaAv~7v+To-ig8y3LBWUUxQ*wNbP6XRppk7XOa^BEK7lv)yU!;QG1 zJnGm&@?OkI)1#R3=x8`jef2Q76Ogr}@yP9`98Xotm}@Yr1v|~qMB?S3r2zn$;+9|Q zc141FhxOWdP`j_36a{FAZ2$S_a!H^R(12$V!24dLtAIj6d^?U)#^VCPAdf`umF!g=uyCZ7$blU2-{>ESTts59c-vGmx!<0bzIX*>*Wwsa*DVq-x@q zm88--Wi*~nmMtyB`4@Ev{n*dc<895<{Bl-5ydZ#6$_bF%7el=EeHvv!KKyCVt}b5Y z2V)k_BWq6eoLfcOj-K3E?c_}5izii*`60a=k6F~^ER@at0^@VyN_b;G+4}Z|V*mrf zC(!u6Ogps-XO2X?1PorV=BsWC(ndc|`TT{a7E zl2bs=Jg>HVLFIc85tD%7B#X62yO8Nq49}>{rVo z8AF#5rZL&0ZLc=Y+(<_p$1UB1>$uDW%}e^iPmI=+nRLXKeYNyma6MofcC9ZUXbdwDd>VE4znkCy{` z{($~U{a0YkK|X<4z;q4|wtkrIWSR9yxX%8#mg(&uw$qrO3+fydDH zJ~@M`5Sm~jyWlX^2=8J%!z%<0>GnuNDp%4r7M5Z_m@A_fRJrpEjQQVf-iZSik5~w= z{<6IOg=R%X*#4-I)}utsfSb7E>XemV_Xho|OJn-x?^y%p%VTCNPRwbAeKZhJk}XYHH{*P=o41*I@r=CVY>x8lNYKHcHZLF&k1ZES8+as(Ssqzf2_ffEMc(;u-;j?OFDtPhwuRh zZ~WXVxdK>T79P2+LWP3GyntyNz_9==Y2;6+>0vIY$yc&^)@Kk`7=8cUq287BpwpB> zGar{UH`jBY^dUrRPyROF9DY0WTZeAO4hA=e2yMj)>f+%)C(SP(o&ou(4k4y}kmzFN z;)T(rvq<5Fo$u;r1zW`-kH9LKKE3 z6B%3tvf4r!U0Bo_yj|W(k<`bLKWf|$v_&N@r}^D;Zy74puyX%UV#`_r{8YPdPaO}3 zA*{F$I6kmaMC?bYgHun6l&E23uJIe5?)lr?5!R}9@&%P!BI4L<5BmgLh}lAE&yA0r z8HBL!w$YG0(E}}rd&CUB2hZ?_;TKit$W7+Xb$%CYPY86vcJDLI71K5eKsM&-7&o;e zXei|#XqWXcxK%l6`MQ;%^r)ABe5CTkeJQJ@1LLpN^md=0MSKz0SA~oHc`w~$S)cbA zkDb%;L38p`{6$ExP^qH1Ku@VdX0PzGw^s{@d<$aGRE+4|&fqK&I|jHG?1GG%7vPmL zPawbl-{_6EAFC%_0*%x6XJGO!0tRas^|YXvE0`P~bZ;<3nELol*=4^bo17XEgUna4 z*?ziW!VKT8P~L`Rsi+7{;(izAGKOS=qpF$5;E2y;m;hP*UkG`xy(#@O@k{8noKC%{ z&6rH1mm)7u+E6~3D};t>4}Yo2oO&hCW_dK&$>u_)SPWu>VioM&py0Heu7|;H8&?tu z4476@hBRZS(;_4)u`|)PG4JvaF(h5jzg7I~p)f!`wc>~%TXlixn^aZ_cm77jWA?ds zp*b6)fE$BARaK)4*L5(szLM)Z@`qvoLvo^l0P(Zui`zVR_A!&82!QFro|)`A{juBB zSVZ?fLap%g!an8W><4eq(JT_yCFxc=KNrLUbM{0HqawzdGheCd1*lMG4zUR0);~Rf zQQ~a8FYOZDkbL9LnMZ`L-xD8szjGUvo>vs{bP0RYrdd+{vR_ra_^ylEF`c4iJcfkE ztn2s^56zH|uzbzIf%5|3zWF))yYAp-X=tMV#K4BsCf%{-ALg`cXH%a({gIZ zE!^1VT%EbywS_AU*}q*A96y)K`Q5k}sw|M*WohIr^;YioI}VrbS#ziYTlch+lumS? zvEbF#wX6G8IvjoYJK@nRY+};SZKqPIAEmY2IH|F#Yp7ey@k!tIJMQCXGo}vTwje%< znbRRrU@s+}HnK|t<+Uu7y7Y*1h|r3rxi~_3dDu1Gvw?b@e8irLAe(ofL=DdJX#F-4 z{^3>o*v`jP%-)l8WX`2P&TQf$&nM~9fSU(`OpKYjmGu9vvE90X#Q;@|Q`7EF2H|{0 zujn8Za)PwQfN>lqEt0fz{K?nn#?#g#&rzxlTXO$>!)C?1@v(bXgs+Yo!0bU~ zS(~MMLb_@S2S0RX2p_)rf09Ql$XLQB)Ox}k;b#t|jHKEa989bT8Vz~@m}xtFPlsyz zFT)>Lt@Q;;tyu85+&BNtya4tCSuBgqd==G}xZ&+12k!GmI>+Ycr0b`um?JqECB4$4?7y4#;#Px!p;JmE<8S;*EvL0P5>5? zYpQ+HyQre%L0z7Wy-=mRDaDGTtNg;rqPtpsi>i0dPkbJhtfS1w+KI1>blnV`n;dmdL%$jyL(6ir+tvebTP9+vnQ!cY8?Egbe=-KUY#WCd9t zyQQdWnk%rG`)S-TqN8o!Ur0TYE}cO;6KQvtOLrh)fuJO2K7)GE;JULBV6`ohRPp4F zaG1CwnT#8*+*HiIX?8e`zVLP0fxD{JP?W*5SeszP6zQe>`4;`cYb|wRfqf68XPr4l zg{I``-WhE-7dQ%)qTqqKQ$_<3n`3YFWny#{4&)~*L07sGK z8I|2*ps1TNF0hz1git0v`eBu#NL!U{-9s(#~}T z*Jltvou%_1e!#eZ<^P9otVYD0so>6#G&xpSL7;w6@eHb~Qd;)ZU9a?!xOG`bMf*E@ zc@aQ(iD>HAtcxuM(=E@w9-TpqNGa8^o!u&k#fyXDGM7R9mD{oHG?(o`_GM$qSpjjf z&(lHJrSNdFbD%mjNs@`Q{8LsuWXPo2fKmS&2uUHb!lO5Ow?1ZK=&_~7Ay6- zWoBr^AgV-}%(wrMDaB)`I&P6z(rw)2LsoH-Xcc(S@#Rj6LIDqt3=wvb<~t9<0dAV0 z35b7fFb}aXy0`y4s#keB_Gj8%D!wCgEhHL|yG`iQ*6u1U(vPw^&|kx@Z=H=xcFtAMFxSsgW=?oDlph0M zQxg6Jxsi-*L~Q(gTl?2BwmBU7-X&^`K*%nzci z7{O41?Mg~W#^-u5iN+O+mGJ1B|5N3v2AesR0qV0RhihkrtyEYXzkLc%<@;EqqMJRxsBt0 zGPrBO3;iaU(}h*$2nh%`Ld>ktmtnf_%irqMlO=Qiypt@}=vp;N^H_KA!AEPy!>{|n&w3vq&_Yo2XIB{GhkZPoWL zb=>(1%?ME0ZwB9Ns8$RLPnW5cECF($Uj?3*k*nb>GNvD3c0g+$XpRKSu3 z25{%elv=AAv$}$-v|#_AR{TLrp~mVY?lF$4r_bQT)6^OGJ4#evas?%5c#f1uSF#Rs zdE=oMWXV>L?NMd?*08ooR^Y5)%p8YJ_qwm@03$h1)LP<54I3o0Bz7t$N-uah7S#o) zHO`OBqPdAYHc9uNJ&2YKvTF=Msv+5zjG7@PQ=5AHu%8(drVNgF@LEGuf0{B{?Gjn7 zy%I(xT*HmL50)H2b%qCj`Ln(=)1F=DnyY#4!}@VYh~e6A7&xaOtM!zjMB3O&JVxat zKEBYBK-98d8T*J73sz}4;c@{z6JBwGMe1%#+u?Ji1dye~Fe$JHWbm!VTC5n?B$ib= z`gcWGuk~ayRzSke8ILiUl9dYX21Yrxo-PEXM3b=VRkZu`ONUs7%*>4Asu7GVOv&;% z)d%%+s>^Y`YktAFlh0^HDrgOxvEU*qK!26-#IG54Io_~!9%qdqR`urq27V*Mo_7jJ z>ZLzdqyy{y8oc`oTvRf}+*Df6?58r#qCGfHr3<||2_pqf zLHcolF@dAlCvMVg7At(fQ#*?w{@{EGD5lO7R(TDHrkwHnZ86PucPguhi6NEH1HkoV z*D!7JfHvPD0OLkrk_wUF&7!O>Ic40{07}DP+qU)NKB}$n&;+B$i=>(k3wOH!c1y-X z^Fj5h$lSHw5%=Zoq}rt80%j94O93eaKOpfnTJ-D2BlWHA)O1TR_?rV*r0qT#)3%`X zk4nI{Z8tToZ_eT4LQ@Xff+c(dKS~y2qKECIHU18j`Kip}{%3cnb$A*1lE zyBJ)9$j2yr13dsfZ@d@A2^T}C2i;WV9*7#%f~J;uVj7GVB7M{v=hD>R@ECnl_2pEu z^C5-u_+db?g|v8PHw-P>c<=?Z&(WW;-v~ew#L-2`$|`sV~o0fdP(p>5OJ8D3|x5jW5Bb;+=a!# ztE4cs@K!jhM-gP);LO{J)n8M_wU4^Twz>D~EUKqEW5r|I%;%n@*KT4+zTs=IBrtwgv*dmP#WEt?xXZx{K`MtKJiTFDFRdE!J zYc|Tbr%kG;VI!Mq*AiF&Q%svGegNJIV|pn)e(n>GQDX1HXhu6|3ZtG71u7e$PxLx4 z^}{6Fbp+|$NCFA^JVKI2VNX&d+VpbSr*9M89|9q6p^iBkw$elByXL@vNJ>-j{srNa25 zfAC3?DS>({udDLsP?wRwu#pfoqAfh8D*xBG9f?useJ{$>u-RL|E8AS`vXjjk8G}IzETL16=c_i8U{cXa1V&ln$v9_K%=MHvQ^^d>T*%;CR&=r7M@;s z0f?AZ(j`X0nOr!0hVa@-2C6BHlZO*8F90 z665Zk$7Mj^D!wDi#8z3v$0@Za{py3dt`aRWd+}W?!3QR3!t}*|$AuaupBnK80&g>? zOM|e8rS~ukcQ4~%3-dn#4>vgXBvt9kkKj_$AIkHRbGeg2QUykLa%&hoT9zd`cilB5Tc+y zPX_V(o=ndJ3EXys^XuQkB@~f0;V)l0tCMc| zjcQ$d+n78hkzm{y^%pV*BA7Ng3^8{)7j)>d=CTGJ#^3wa%`q?6CKaVZs$lSJzF?@k z&EIg@!nB7WdiabHKXaK9%QIWw_NJS3`=iEL`}>DKv~qZV;lR&jBMxQ{0jI+vhPa9Z zY$)qpGzmJA>Osa({D=P|)nEjV{*e7%6QOA5C3suhE9+QYf>2app(-TPtj)3b?&nFH zoPCRFLT4Z&s%k%|ax;+u)5{5YLDN&=5l~9$IS~Fv3t7z|&Epb!A?T3nPZy??WPVEX z{UeT)DYo4}()nSO<5WXh2pE*(>xYE&MWl8>vHZK?6SKSe=m~Y)* zZmT=BXL+6a7XN_p97h~|E{LEiN6roEpjB+I4xZJz^)E;shfx*a;QT-l)q6424oHyx z$q#%c@Xz~x#_~QIQ&Qt|1iF+c*d{TDvCX{T=Q0_&0VkQyZRU_@ojAVy*@Iam@2w6e zHTmYIxDkhlXYc3Ho1IveqZZ$dzeukp87Am`NiTOGi&E^Xz3_*ig#;x?}OJ@|AI_|$C@W)9oT>}MiAd{Q#2XYQqZJVRQg3rCC(1d)H7 zWh8%^1)jnUpPR`EMu^$SCrk~7^$>$9$8G&$d^SNA@*kd712JXA;JinIf>jYs>_B`} z>-buE8V8|{-WU<EFrV^L zcM05drC|f%w-X-q5^1k1=lVEKs(JsaPFQj@u;6~#Eur<)Fg(V5dkx`87^WZv(@!|GydE&uQvyY~&2P zrDOCMv%mz712-%W&;eO7hKe)~D{vk#u3PAxn=-PEq=BNs_YU}AXAj{owP}mhip_6s zO!p~vkE-O}OJg?wD6RuC3tmupv&%Zn8f(DnDy28`X%xlbM)VoH9M9nl&i4!IFtFI% zDmSJ%9Un1zM~oa#c=0#%EU<%SPFJAxsRX*Zc#bMknTWFNhsIv$P1wN)yx4B#9H5$y z1d|gL4L)9_h96?4Zc)5OjpazAJy< zP=A0#%318h7NqiN`VX@CX;H^Xo?ye}O{<`nDVTayoyTfNM4+h|I@W+a2V~6bTG`2$ z5<>PLXvYq#$;>nzB6Sx^Ei{Wa?!%Mub>?R9^^eLCamqD_h>VNX1CZ!>U?RWZJ`S}4 zK=u%Wi&wM*nL!zOAR|Tkl@L5{J{o^l@~5||x08h`8>c&R(n_7xQn|RW8NPb~L9zh6 zK2y1Z(L*iF$F7+A40}1K#GGY2s`oE_1V<1@te$NES}z&dX=62zwYYIp9I8Y!y`(GN zZHZ^bjcBTr@pK;N!eMw|x-tz05wV0aaR|c{M+C1#Rd8F^AgwVt3I9ZrnCZNwRA?s- zcK=g0fyO+m!X2?v%RS|J!s+uP1%a;#PYkZ{ON$%xe*B~Z{CYMb7?L8!x$-gmqjkoH zC3&y)z_$}7h@PZfNf_-E`F6+QXV>dH1NR?$3nkZx2rOZ9ibUNNY=8UGrLX~#430js z&*U|Md=yM(`XQOEpr1Kgyyfbi@m8!Ofi5XwPCrYVqr*de%I4MbiV*YufuogoIq{GJ zo>)K{bObybT%&nhC3u<iEpl)Zfo%FAJ5ubJ8fApBcAXkASY|R(LP}O+HtMkCToz z+b?{GPZVp0W@043lx!L@%opx;S z)ir}yA(6Ey>F^LKHxPu$ME}^cxr%9p}7qAc;G?C6$D!{|oIbJ6}}HtGv8^t7=2N2hnV zX6u%!mNU;uPmV{=JSwZ^`@nQn4A?4PaGSO z7vsG3zc1eXyBahEm8CmH)R)5gNW0S5Jm=B!Td&*|ODWqO95`2jvu3zzT=$ve%zDbN zC;d#Qr_uOh$h&7*_~+EkucLlm=<4kbDISuuU_}pI*3{dTSqxcWVnhJF_)7W_H_Elc ztVL=B&6qJzBvnW9YEf%y7^&PXR2JI^>c7=qDfG?3tUT*$oasiZ&*xA<o1C{KI=U z)chdgbaQ!<{Aii5vk$*gZiDzFdf&V^u=fMIS5SG-=Oh+BB4x-&cWs|JiXC{*s|ex* zxH;WF>W|IxX;7|vxNO7wh_`og zqLM|%%%rWosLMq75Mix#{w29U057$i{tq*z3kbEeK(JB(aHiPmvULQ_8m-lds7`-k zpzlnEUH84AR9+3Vq#fof(f zxGS;>2~yD<-HSdFA|EbmYB6$rw9>J8$jEVW6yDUBFPM4y>yUFQd0dzVLP<6vqn*Hv z^C3))Ew`g;gcB)su|yo~>wIh}scyX5VbC&+~ZE(qg0Vr~dTYLXUGg7&sAOa%YJVNukxpe7pNe^@~ zCwuckNJrm&h~2xO#P`re(enCXMu*DLq+!Set!!y+xTt}>9^=zMX9w?7_<9Cx@<3`b zCwt&;J+>cLceKxVI&L^V^5QAr>o^Tmh7g*uN1QJ%FUb_*E`|rcvDjWzS7kaE%53Yu z3|Ub840pbUFW50Y@-MF%adq2A>d~YLel%<7D)sIY=`#6RUCno9vafOq_70+sGaoai zs_h7*ZZ7L8RW0CjyDa+G1J(z!EvLJZm0Ij_iXcP9GI1~d|B5#M)NL?-hyRaEEl8=9 zU0-3hF?@1lGKGWH!cc>O={X3Rk1;wp1W*@Z9;SYL<0N!a)% zc8VBktP|!NsBp)LU3LS0f;HlPOS&&r7Btoim|^D3ACyVA{45Jh2lg@p=sCmyt=>#5 z$$Ul+4?KvtJCRWBD|pTqtp^65#J*jR%yy9fTsN%Q-PF?}I!;wKayn#nk%JMP4wt9B5v2IV=&eAx&2Gc54p}<)5COuwOk0 zc~;NMcF9A3l`^(<(j*CUVgmo=DrNJ$%8u=N7A=VJ1M{&m1*^t{t z^?QcaB>Mo)hEJzYeo}#4c?22XgVNMjB|?&E`qU%VBQG5y(9Qa0ecblvX;CrTdJvW;*z%FLqeFY)%c*5#TCD5HC%VTQ_x34r1-r9Hs38CC{A z#{Sgl-a$KhR+;l2Ry$1o78wasTErYXI58)9Tue}zy-hxZQ<(7#PD0&QyW9kxbUxCn zXj`a|I3k;?rJVRvwz>ZH3P*b#r?{h^Cq1_t(yhB7GusX{hzSfnTk!XTJ&&}h^?ZDK z=m-;OqkPQj=p;@a;f|Y>U+~?yM~=6p?$b=DkCr=UPy8T_>jajUvn2UT`Jbzh5;)#t zF@GTquy+lhzl5XOJR>4-snG(pO=a&17tjW}ViDbb~$ToI~cFCimzCPqN;kz5?q3T(`K_k)kA#Qb0DN)b_=G z=)$-EXcwkePrb+INq}@)`mBe7vi^oCYVGao340Gp)~$)+M`Bl9($CBZ1EHddVTdjy zO8Z^dspYt*>-P-mux@z{CU%?D#taIQ1Lih`JZo+-SF& z2bVRgh?OQHqqR37)-TNvli#OW)kD;z(%Ho-cVxheyg&U#-x@6M``(kq7X2*(BMO=2 zF}M31*+OJ_`zOSehOe*>$^ghyd^(Q!Nk)LwT{!2hvcQt#u$uevC;rrC#;e&Gi%i)x zdk}Y=a4Wh7A)HJf+{nFammOJ20kyukRZwI>JOCnz^{uFM)RD#SbhS#^l!M-J>(SGr z{(^$h^_fN%D)T#<~%jiDi`EPs|EE5Q8h~#eNc&jgRj%@Is z3~r^R3H+8B2hkqw2W_{aCh{z6W=^x^IU#Yi{0kUXW68Weq!@h=}xi#kH}bNqV0 z>EV5Dcg0+(u%fGtxkrD$h|4biK zMIY)S7f`$*<)_K}KTucY-6*wxVT?OtDCFQ~bI7-hM-1_(syA1gyftSnVV8jrSa_Af z;xPMusUw(FW&{z`+JWF6$@J#=G^-<&FZ!Erre{_qE zkCE2SE&jx~aiBIZ5BOZPfAN=;^c@ozJ{;{vSMCW$n-R+Dfl#E38f*nrtQOBLnK5;gF)H_rK#NjPjO-l+ccFnhiY6P?Q{kzUwj#Z4q9DG zYh1bdG;V-) z^gp<%wN6B>_FGWUVpU>{XUuzr*gPQp&cX{__2@o1dHD2{fY;cRe`anBt5(=g8IPwK zCL}n6gAD#$<*+PTVuJ2Og_Ck_j?vG&UHmz_KV~!Udc8i}+}~g7g=BeQL$}I-H#iG} zHBp))YCo49>SI|KE9a9Yql$a3B0fF8QMFi}t9XOdsBiprh*CkqSdP|U67EQj)I779 z9GkMLPCxDfIVzi=U7p@%4h7e2FSH9_GPkHIiE#!%&8XuJRqp-!+&pi^?~L!mTO*!eh_(_T1JKweLKI%&)2sX+AJ7@c2T$V?QX_5$^c9G zEz=WFS^jsaAA}YHi1aqhRO6hPO4cyBbr(NJwWZEu+OF3O=${Acl}nEtIh`b5S6fGo zpFjQR__wR_$PMx6^EV;NsX#9e0$DYN`(ipR5u{ti^CskQjkr!sm;T(QPB^BsJ~bkE zE1$YY!GkY)#~{G##}iIhGBJJ-_EU4AnrOMe)H2=AGS`F z+PMEHbWxU$rEi@?3RM;8N+$y>(**WYC>>ZK0FkJhx}HdJBmp~`di~sao$OmRCwR;p z;eYA{&p&qorlCW`F^D++GXv~CX7K1Qvb;L2hqtc?e2_lWd)1K5@=@{T{u4|9o$sKTiL2j&q)mai7=y zx*VQuA7>F>nW4wNn-Uy$H3of|QBT-^Fka-S)*F-WjWd3#B#B zzwo{84z-$9Ncj2)(7PciqMzR_Zvm(V=xmAY)i@mvT{^nP$E|yQy@p0gwPn0sD6Rrq zW=6Da7!1z!O(|C1G8OgY;W4~@`$o)l7>r3227<)+c13Vk`2gwDJVS(-X8}J=HXQ!F zeuLps+-Q4?nWEBF9v9`;i$-d#XEQh)xnGET;S0dHOS=;78+gR}`RD?MHbfu+$>+KL zZQA2U(sr{^#>`K~TM};m#|2|_WHo5hC-V!O%Wc1utUfB<8-EL^h_ClAcXL*hN|cEn zH@!mR21Daqnq9t-9Abk_*ZA2+{Xuw9LxjcjTSi%-WN*4hxhAke?k;AqKlI>XnRyIY zS1TxvPwULB{3l?(s5sFbOfuH9;HUCl3pJsEOWByf!Y!dvEisR;&ciAx5?bR1ozdB^68N>5^SM@{cpRI7_fT_L~3-cP#u=IaDX3 zf&v(OO)p@SZb&$#wrnAt%cr!Y<)1Qas_+OlFhIZ}U1P-cOC`d15!qlajeHK;B_LA{ z3;L*GJt(*=kO4Hfd&R8b4kk&YVS@K+{};){N2~8;SUkOl!~Brtb0Ysj2^7B8K!CIx z7Z>n1sbcT&X`6M8{ttBVJqL9^iA!n@4pT$wTgO$$2LDRcD6E@d9)iz+;T5&3;DH;V z=N>=Eoqv{3s*i=b3x;Q0TzpflBMW4*O`Q575w-{qB%~xr;pYIPk)|k;Jh7?gph1~^ z^$UEaVtr>r*W$>yZ_0Ktt804BCcaV21nKPPBFet~7dp)X`o{R8lkkl*oLJJ;%#T`V zm+I!!%R4{uSu8aSO4*No$=|6r+>pzZycB3$$df~v8$iAekxF~Yiuo%->weAxGvZ{HPu*=_Z;d+`k%3fE2#3$X95rxm_K5s4dX|+nA zt2I>xB}74C6#5TF%|+ld|Bd)e?=QRyccQ*A5b}(WA@u;Aciac*tgHd)>W#Tm=DG2| zzOhZaunRttpZ<)o1$zK|cBex$dJRO_W{PW&d<__wCO*2{9oFmS@LO zZ)(r9djH8W{gUkXw8B8`>qe)T4x`N`suOw4U6#hp^V9e|z}plwEv@_E-GLCx7#7q=IF@Y$ z>AwSg?oc8xz&_QFsVWN(z&Hb0ydPt0<|%v}d+pRn%FPO>ZqJ+ypo%S%r_8<0tT?>N zz2X-hlh_oi-sLcdG$Ar&v)g4tc{OjPf5%P$`X#X<4?7HK4ikr;fav6mVAQThy6g2$ z7xN(3z)=$`I>rDD8JfMu2SnFyJ>?@)mKpW~zy=Hf2UeFBp?E2J0_EuLd|>Mb*(}00 z)Id@jPOUXiyi4(;7PVdSBlz;(?dETFxSZZA8bsnWWmGXt;5`1`_M=H+;+fjig-%9#Rw*%7usLTS9daBYxPv?45Z;H5&gsR)QOp)>M&8!^M z#y+{Lt4jzU#SMpE0_{)M^pC6A?EL(Ow;f=bA7C(;5PiF0A@^7187Ufj(oqmlo~geJ z?<#2UMf>Pklq_eO`MH+jyu6$}m82~dETjcgIz?+uS{n!C+-`aB+p=ivE`dH@UjfMu zeawTV0#eVY>+dTAOMpnlnqQ}Psl!jUt{15mEfwBAO6;(TZ*)q%x1DaA%y*ai|6#>G z-=*l_{sb$d#Y_=vv_T?PijgK5V^NVvF3 z8prsN_8puXeTv;sSHZ(ma@#rvQf+8e%BQq-I)g{^atsZy2+j}yn+*n`sU1{~PXR=0 z&uE-pf;k3tKG{M3^*;m_7yMq$_G*mvw@&<~FA_Sm(IA)7SU-ag=u`6}1ij!V4U{Mn z-|GuFp$M5z6UvN@*#;M7e(3+v^(e`7%3?N|Y1Hn%9CEjm8frBr#N+hLSlZe11A`~p zP#0yW{c->Bb}Z(;LFUJ9vEIsIZ@#bniQfi9I91Q5H@wV_wNfz!Tppq_cOF;iSQ+6Y zj$5*fGr;dXJtObcdjrQ3|JOOe_@l#>k1Q~ybt0hi5r`D6=keU|4r*~k!p7NJydQ)pmq}@gU;)@=0-S+T}@N$viqjF5Db?D~sNJbM45M98vi}7YYcZ~w&^PSyj`tmx9v+O9c`HKx>db)IBx`OMCzl-LnW!@r%W- zw#NbDMCt>mMQ$uuCV-I)UFgD+yEFXOltQJm^qWx^Gr>(=}5i z>(;CmBks`7jL&muEBe#^5=Q?&SpNo6i8j-6E&F3cA5x%V*WA_z1dY!T_Wpb|_}W^Ik*Rc8ohsswhU=$gGpwRa)L`ELC-@!nc)7A(3r#AH1*nGT>Ndz z%md^4``!1WUfz>Gl!Wsk@Z>h8lh*ITlz^3Fd3g}|JDaVeze8d>kE@w~2Tc*i6|am@ z7@+ZwX6(7?1g`Vkx(vfxU*0;k()PwsaoQ`rC^veQ5crvOLt%JnDL4=aQ1ZDodIHsH z)@E^Z(bNz8Bm>$68h562Cdt-!Y)($9{-=uKsoLHgrS;c(FYgXN?#TDrHo>;fLwa%M z5zq92Q}5ye6Q_p@AN2j1zFYGt&xL^f;7rd`{|tSV zn*@yTCvXCy!G{}1uA<0B{Ke*#dl-^4 zjkWiGxA<*@u=~7FI}b(jd!R2D6vg0Q3Ubm%ianBvY}PtUsYW8i{fF0mZ?ricmp_yS z#_Q8g%4zOtASL=);G3|Lg0J-hIkt4`y$Kku3MS3T(~AmuaxK@n$fMdL$Hknfji=b} zV&vIVXE$zNbU1r95_TI#2WnUcqTxp1Cxhs-)5bs`MCuk4M?^*)_BLh~+nf0ZD_Bj< zs{5HVKj69WXyhkDH6|15ROz<&2H@g6;Y_Qb0sA871&S9ybcVhnYBR(CtT;;+xdv|i zMh`tO|L`6uv#>4oLj7U?{04)+uWu+rXYk1(VJmiR&SIV@R{ePGLmLt(r7*9$=YSNI zbkB0yO2_-1)Yb7eD@B#Wc9VIYDHBe6L!JV~M6uk*dE#n@VhD;N0@AysGF38P$jDXx z9+F$v>AZf0p_+L1k!m{u3sOluCPD!`(~ppXtE3b_r=uSj_EcE3_2SQG~H$KB3}VD5msPIf5DWbTzVJgozff-;yV`Txi*1#nah+NVk~^^UiO zJ`*AMl8kVJy{l6x{EVxN+5fMw)Zz-X*e@L=UYq-<)2V%}0FAkN>@0TbYe4D61K5dz z7u-in+Ei`IM>|*r*^v&ea2e)5PyMb9dwfj=rg4bHk3y2c6#h(t;Pah%5eN`R)fwb| zoG}gdmahA0BxNKw{E##hPXGrrq>@(XodRb~mzoDEMJSKCUh)i#8jEw#xn+#6@!xB?OqT9wD^7$eB{QCAn>*xt6 z`-YixRNr@-i2g~1yLrWa&-K)F&u(GoFni_Xh?nnI=lCZAzF5uaCV6a>q}sY(3i)kf zEG#C(?|Q$J(V3s30JylOBMO3vSaj3)OwV}t{RL>uIPtFa9S!)o3p{C}AG5@cF`Ev4 zf>BPxNxnFW0D~w+U?MxuZKK6f^cbtwTK|sN(@Wv9N4IFb@CM~|b3!gR6Kx`btDO}4 z_Tx-$`Nh_)DVg}=tf{u*wr?`gDlCIOH==)Fr`Z$*=@?XQ^fAM5SDl6W z{2U0;7D(b{rxKK$p!8DX3>B+EbkQ19SDp*ATyA8Cu8kC^f-Q;tL-qYXFP8tl{h#Kd zcbBHCaL35`W4b4z_=095Zm<5le))__aa6aq4u~W3^MZ&aFw}=Q3XeIBz37M$NLaCr zl14kuFZFz3=z8)uGQb?cwK|Q8-xaY?@(Xlk^m{ESctS3J?z&d5!ll@8&@FL6ez*S% z$${?w;o$d8S7?z$bv87ILuTqgme+wJf1Y}Ogb9^AXAk|X>0qpp&O;Rxt~0@v{R*}> z#(|Cct_&&qZrmni?~Q|7l1=%aMz)2&|H9L|^=n=nNgu?&Zwg+kZmJ0#J9ADV_CfUU z^OmCZ`=5Dg%Ma|$vpN~`PPB^Eb;ye8;M8BhZdg3{SrR#W%gue&c*}2PD+Oj?pA?$`Ka6bzf9jLF+ope$x>*~t@710DRu@ptUCl(FQ50MEPy85!$n?BXVYP*>>wd81>g>Uv37SXGCfi^zy zbryiB9?S&p{!M5=q((4kPKPV|NksRYeA-jue7DDx@q}J&GXtCG<&lk;OAjRAAAC}u+WCrY6qcr?M*aYv(80Hh9oRGq~^bG9$I1u{+<2Ar`BFWtgTYjGy z2;OHR?l%8@%-RR&XDDwG_&ii~b_xPt1aEi{bEF!=yES8W3UubvEog3%h-ly=~q;c(x0drr1V%g=M79k>%t0-yIQPYoTg(`_sKO_EH?)*)PkUs#?T2vSKKc&EVfQj6Y^d)s_ zV4=%;Y6STUWy^xKuxtyDPq^Au4fb*cpSEOg9|H%Vz_@akWKUxU_l$JH$VKRt{*ie4nF^?fNF1 zoa{q0uUb#**UdJ(&#bgX&R>%f-rA`2Uh!Ge5~TOkrX8$N=^tqJ`T?=T-KRp zwvaRWx}(Q4e&7_TuS>K^t{(-hHesNiBXS|t{h^*wrRT|*T8Fai3gDD&O^K zj(@PMgL9TRywV!sEcJN!v8AzDpIM)3h}aY7WcEN9JX>`4_R5HA&#@<{3uD-^FdEk^ zSeiUqPb2W;7Ff23(R>8-tSCge2Qb%Wg^8I=_B8#-vB__03Kq=T7x32Wbc-o^8pkPZ zdZAszBkzO z^>&vu`k7(bkm=#_^nQF4ibuc%0NwwCeLsxgUxm}tjzPG+XlP);G7^+s+AtefAJ`*;)$+h%}8~bhtz4-^zW}t_?GzS$XLqBmq$-%!>C%fo`S>z zR*-a}cF~RWdO0;jFRbk19#hzuKfGyMJBX`MX*bW zv<_p-IxG$zN3N04)JjmVo^o(;-Vjw?dMPE9`kJ5S1t(ns*!-X(u#(nL89|aD7GcR1 z0`IWSN~yd%t!frAj+9<=^LSVrUUX{CQuQkT^jqVo4)jU_pjR3F`Rm2!rCw#hrJ{(x z*BD}8O+&uP=!w)2d}R1*kbB%lbzVfcj84nrabT4nAS2tAYRK=K-+Pr4)|hcQd|%Dg*?8u*SsHFDmO2W4y&<@Mx3G={f~ZbC1Agcx63Q(MLD-X& zV|TD@tJ7`?4I+xCHJ`<`y z2)yx4#LziZXFm|(GgNBehHiUT2~A$tOs%8l9&sFTZ_GdNt`+gs5)|rqWxuq4FXXt^ zHmdv4PpNT+(uHvn<~`tSQJ&JpA)2^1^cUb$ZVSB|?FE$~?VFeHx3xJ*HrYC65Ikm; zv|hc9d2MQC2>Z%%xB$H5KPO=p1#(7??uA2zM6ufx^OEv~78jA!JkcPjQig(I45Sc8 z;kN-e0nnPsBosW~fhXjPlYJV9qg<=`f@1-Hk9k_#l??q_ZM->ylTPr}4Yek_3@D7o z+`jwqq)Cd%HVy>x(YgqiXAjfo!mY{A{fWwp_A5g|_xGdzOwPlW{xE2ONdUeA8kYkJ zzTSEShgtz$6%dp0oZhR%hnZ=VuW^NXJH_5TJ1Cn^GA5biKDcOfDt55i#K9#Iw!;l+ zu+Z2~9LZ9cAb|bZy8|r}hTu#gQQLPxrkpdf=I|*BXW7!2Gxp;fA@xtF)D1trw8eK1 zPl%M8wkfnDcgGQc`HjX#i`NSGhn~=_6`WYPz@Y12P>&CU4`Tat9v6Ai=jAy%C%-8~ zFKGV`mN>dmV@R)Z0v>?5t*=`80dc_)KB+|!3q1-0xUdG_p1(2kObEA8aQ7OQ7B(8o zLqD$CIrsX%KgenMsqwktbI)TQy)vIm_EPS9ax*YhIDceg83i`r$@P6j7wcwKC1t^dmVz2fa1n0t}w zr&8@lC!bMg`yZa6YjB9uD^obSr`;d+i#V?=x*l2cPjm z1xtUe7!v7Ek}whZF4lqQMb02VdW9dsOaPabt}B0lo7>>5TS8{YVi{YN5DkV^e+>Cw2748U2ZC8V2QW5uV%QK{E4gn z?eAlhrDRyBtAQ&2_gB1hjKr^jhn!CscHUb#X3#GMKMbUti_+c!GJ*_LU?lNB0jdSD zejg79qr1W=0xoq2!vypab5b^b6MF=&do*UNAiw--qH6W8QL-fLOLiaZR*jotb z3*XQ92&Sx$sn9{a zz~CMMI}sD{1zFDma1;ysJ*X(VynNZO?L4NXcRZiOB;sT$XZN1uHPvyjJ&$p_$hG)a zm*C{M|l2Q@-lK z3b^Now3MGmpJ>@M0aRyx0o`93e0je>sQnC-q0DFg5K~r_&6F`!+5LEk?o+H;5IR`u zU-I;A9&nP&vrtZyY6E}{)9dH zXyE2@=>fcZk|N>{Rs}}Q!MZ8WED??sk?U*>PF6#u-ilS3VNVxLy%@Wo+2^gf!&Aq% zuxJ@AdNzjpzT@*LK#nG^(;go4wXEywg(I5N%Z|CJT&9?fbg026i*8`gmSO;z( ze{$SU3x5oS)w>lyX7xqMPn90AO!8B@QJr54NLGlSYhd)ixhP_&fR*C=K4i4_5cM{xfy&&SC&a{ieh zaN7~nBRG@PP1_!Gf2F)w9oHChL6sV*A-7wzI>P)A776-wrilC4f5j$=@GZWxpUi}$}iZ#t~XOz@R!99;@_#yQJrN-(5LD?QuHb~ z5y2Yq)j+zD^m0C>xOzhU*Uei24P%yj0m1aP(rxKc7tZi*8Y%Tivd*`9Hjy{LaJ4hq zva7OkNYKVnHK~EysA^gV0^qKNDjLWTb4nlqPW@lZ{iYm-mmR6ZzPA&_-Q7H2F&^Z(emfgUM4wi z{R^4?4@Zi9*U9Kb3EjY<4poiO9b_F({iklKJ;{<6pvnZp$tr1%@h} z{2wT~{D{>ZxC7+`IG3J0S=Nx8^_lofV7q(zUco|&$*6VS?7g0E(wT~FxWQP&XDO8q z2H^pI+C5xsr_dty?Z&updB0>MCv?eBw9$}(F?@>n{(SzYFDTHFzi0_bOu$LEu)r%3 z<9adtzd~+yo|GZF2PKs#C_eT7ctNaf%!jw!r22xd>ixz))@l45){G1XO(h9*Z`AT! z1Ug3efRMntHb3n-4iNQI(@f5hk$v#}HA_5dK9P18kV|7pW@0w~RDDa0Nq@4d;5?94 zUsm0$dv>s-^{(CMp!p{s=S#N+UuQbY(Y2+e1q<0$&C&*T}etV-w-N zRg_00y&q5Rwq>jKI#>OiyL-N;q|ttQ##~{0@MqU0UbUJ9BRv~vo+mx^{BKHm=E_Vp zKJ0qonSR=ZtwWw(*i(@soA8^Yzc|EnHo>wF%WA53-ZEM5X2qJdS-^+P%FooDNgg(9 z*(~Wa>1THYY`V{^UkZ_N>kDslmSq>rurx~Eo{gl_C#ijPLh4hQU{az$mp0N+zlFRU zs?#9`N@nk5DI#E8kx7A?6fO@A{O&jkjQ7#>#@hG^^9=WpL!m4QN`+(Znxm~g=daF% z=~PMEF5bn|UfySO3ee3Qaxc!LYz)ZCrl*-QMn|2Sc&tr$(P*N=%puM^|9RBt*<|Va zryv-~D+bp#mez5jY9At!C~~W)1(~sGU4L38u5<<20Z1TE(Adubo-NR)i5d*og2<$# z8@Wglri*)BA8`v?m#Sqx5Kwu~+j#p(H=tkka?vZ(=4r9bk{3dnSN?+yOO9yciP4jy zL0^JVTzYH-+-9s*>T?=-&anU~qE1ksyu`c;1UUCtaW{Xg2OL#r$ld=l?eImER6WAppZJ)K!DlRV z9*rc~fPr+xI>`K^??Sy*;SQw6R`0?Y;gL5B)O)y_6Pvj)sT}s^p|6WGOwT5LDmH&J zHX!Obf*m#OMnP%?d%-~M2;i?>Dc0muA)q5Zgoo=xLjT2TVndz)PBxk z5(m_)aSPUONOAWj05@Yo&fHsKQkb(+x>sdMv9;RB^AnsHPRa2vhTqDcPCVf3_;A(` z5j}r=&VKdeuf@eru4bp*Zb&8u4+1t{Y_ARVd z8d+@4$>^7lQ%j|z&h7pOqwoSzuV|9*M$*ygWmG+GLxlLn)X-PxV)nE~R;1!@Hm51r zY(tO5QJ+-gCsM(V+!g`d+GeB&lc`JmM@>LHIaE`(oc3h zrO--p;4O?!PR|4G!W~Iwaa(@`s?sr)M7?7nXiI&AtX;|t;A}yH?KJw&>mpE|^L(^H zFv6?s_}!;oFoD<#46%)$N3c-N_o>jIV;3)|p6Gk@1Q?2LcLd1_90CwWgjpW94fiEU z{6pEt4}nf13tgnHxQ^_x45dfQ3wJD;E`{5Jg9dPIQNS^DA`EzGKnu>72o){N^UZtZ zC~n5wFM)h-)_zwmZJDSnZbCoQ+oXy&rndLNflUo*(^Q6|`|ACWQX~liAv*+Uhx8g~k@?yMNT$)#y1G;A)~B&qTP}+1Ju-~aAzYvEJFvhn zsLQ5+?SYD3G%;&efJU5-f_*IX>zd$U0W3lD3!_(H6tMNt6+mtpQ9HV!=ti2~dkV1- zauGtF`2uY%-y7sN#NB<>`-v^_rhM|joXNEoTNy(_t~a_>^UlyT%J+w898ZDKLV|%i zpU(>zen_NOHKeG6rjTJDcBg^a=!0n>z5L}2=_?;^7QA>D`3{Tx4|abPQYS9#_Z3X# zf|{lv)=Re*!j%xzNe);pB1KdU>V!wEnW=PPx@WXIRA6Aa`mR$_;fgVgOaIm4tc#7(&sU zEu+zY=ekz#Iw@13oN;MJR;p@S09`|0H0Lkqb^82!4-an?dvB(1f@setN79LKUNS+oN;9 zco+gY(#!RY3FAr%yH)W96o9aXz-? zn{JJXSo#+MBWk{7@`m3eCl$JOY}MmKBuHKJXG2yE-l)nkkik5QJM}ZDd7-C^_Bx@^ zceK&NRp_mO@br*C`3KwQSzR7gN|Je(Tvhuo4P1z}SrXL#usA{jAkpjT(ok4G99+vA-#Za7nxgyyn0H{>x_T5GwG^09Q zz;eB`10b8yz31b4EZ$WBzkX@Kl7D9OgS%iIQ|v}j!Z#(U)+m*-X0aE{?EG<;_@RR+ z{@YK^ev~7|IN-T`+!?4TG%2ufHvz>f;8kGz7;@ADKS>ev_b8dEA7y@1WsAH!kea~M z&^D@&ii`Y+bvR~9N(U!W4*crGh~WYN;KkQqdBByrJ5fqnilLnYWrUTS+teNR^gEX2 zYbwY)z$(?YO0%xPo)3szDU&M89!v_uQLswucoM5V+s*MBhm%y$B#E*>b!vrMf)z2N zmg6Bdw+fV#`<^E6TEr{pn{qt@ax{d`)UbJJNm=u*w>lOd^Eg`D~b=+NOv6XynGBQPZ zXGO7y)cd8qoT=C@aNXvnS(tuXr6@`M-t&Cnj-_D+0%E!k zEcGktYlQGG_r&DM0Me!b;^03aC>q*-)cBKDtCzuhSH@;-kk^4gmJB_X-rO7*yzg1bH4 z8Z}bS5vGDM=8d=EBikW6jpBQ|7 z(Yy0@ysQLpq^!YQs^{jDx7r>v`|sNZN$f32<&h(~_iiQ8*wy}*H)UMhY6rz57ylS} zg16jKs*1swLA3A}lq`ss0?{DN*}DR*9jS$I?AbzM1S+DhUE*I&bFw#B@I2SB)?r}f zn}!tXt5mNK4y6TZzsgPd!Uo^znlCa(kI;nfS*mBMmM>K;vPcQheL9E~Z+_oaJCG?a zFrf4pmC(NZg#M>6uCx-SnkZLD|Np$W{~P;1z3X?+B26~mPyz1dO?~N*#K1if21fB& z@$+FczDXC`sSe+l=Kjg|O)RhO35i314$*Aiw$F0-)95cDVm0TKQ0K4lygYbB>1gsB@zJ7yN7fgDt-5 zF7NC3NRFzfqm^g&h;q$FnhJ@v1nu_8L*V>G4_-!a88G^1QcEhAv{|SY?^X12DlR{CEE(UiXmT)@VN8zTt`R6juIR+~o3wy+cI*%pUjzS73Fxyp;k05O~#ot0_``pz0JbqgTZAHXO`!dq4UXVwt|spgJP&q_T^ zr*zhV%GV?~kf+d){IQ(M`L5|7=Yvw!QZKJE%Tx8dCm$=;1a&UtVK` z+tByH-#%n%udm_1F?${}P4CsfK*v{QieTP918frR!vYf%U|QNto|_@=b_g*piQ4oa zNuFMzSkjdw(}$@3?-kB0+JxCOOQv|)3`0P^sRJk7#6mha&~6xA|Mnqb7{S&qijF&U zix)O&4h{})dD+`rtdvo4T&^*?|Lkg|6le2+@k^09JoX=*gZ2d+oMb*9`vlv85rI?@ zqL6Cn^tO3@)W$=limKo8OK`nzCCK&qu}PDs-3AYs$LMH# z*!+XdMnPu*WSoNl7{|5tqN54>i94U_xj2j)&igzo>aq&;_U8CY-RL|1MZRem_Y61q zky(ymn?2FpRr-UY->-=KKpy>fMBB|z$X8n|g;E%XJV*aTm|V$G$&F{yZ$9B&Qn~L% zmty#e8AbB&oY9@5qTxkwE$M(l=5Lnn#l}*O7XnuDh~sZ@3%#aa$^H7e&SLR}Oqj1| zNc!6h@IpEegQPYa@h^9c4h*Keuxcqp;cn8F+MfHYhR5}yMZ;O4h6N00ZE|ihmBxq5 zmrZ-NJnZE)68n-@u5P*5Uy;n8##{VvGHav3mA!8x`4K(oT*vbH{MQD*KJ`9E2xy|Z zFl52k`zEi0^VK?H+M^R`3KU7ue9KtQiVzqF6*#)Zw(nVEOf5Ox4z`Nn2I)agIiP4rFkTQB%R zr5fzr83sQFpZ+8FPgPltVFD<&*X8<7A2(}yl-o5Eu}LV=xT?Yc3Eh7tEJ|!Z`DM(+ zS}Hfa-5Gezm{1#(bSE!Px9@hw1E-My>nR*>7cogm?8PD)W#gS4f1}gvaKte{W zXpb9mPwCSO7Wmd7L>q1&VK(Z(b7z-6`46Vs+>Xc0DTAv{5fmiIQusaRyHVUbVBIg_ z3+N!98)c_+9@wvyzqwkRMtyIOIm=s9aczL_N}`U_Om!=Y`H!Os6U^|~d7BL+MFddW z!{tfW`;9-eeBZjJf*_coQrjWiJ-F<3K%ElIy_~P>oo@ho^<@O)6b7H&?Ly*fS8vR|@-OEwR=hou z8F->QnDIC@pUL!-HIMMMt(v-Z4oNd980}(OU$>OxXCd$Vt$%bxx9s&txChVQTtPi| zjuDkx8IQ(o6&G?evY*6D3bP~!=#l$WOwR9$a$l3DHq-bwP;?kUhy9Kx1(8F_uImpNA%4 zaLsmn_j3Ku%?wx>ANry9gPxd(qcgWU-ygrtUBq{>r3MFn5})|A3G zzxNC=2gMOg#5B{UlW}r%648B6c>10sqi(gU{xhmOx)}CVfp&I?TcfI;bXolXv->^g zyV71JUB28pJ{UdB(QI|m={ygzXQ_8INn9P;C42Q0oHRH!m~9|M4k`;Q_w>KS_o%q3 zsrL1I$D|tOgFC4_hQB!-Iboq28eOkO7SdB+ckU3yRy!Nt*!rYI1t``pEy7i1QVSPQ zJU9M>6?YAGUi8toUu2Ou{v}oOH}ip|v|OhI@Dw1Finb5`hb4JI>JJ{`3U=U%EPDAl z5HN;Wg1Xqdgs6C$&y&F2jg3h#%Pas+iauDn?m1A}igKX{w^8%;eDTl8f1@+*DAn6m zZW70R9u{XAKj4x#QqIXJ$n{cM)IO-`jp)Qu#NF_xMNB)mE|AEgrlf;_Z9{QTFJMsv z;YnOG?F&yi)0g~MAx9?aQoM|?&tugmF5;$>h&iqgcaD*CB*ePmSAnkX5>OEYbbBRm z(rx8r6zMv4=2-XM`}Vr%ZnlNkRAr8z7t==qmMcm<7OY>h_QNPGJ?t8j;vo&VfJBuWqKm0asQ@w_m!+aV-Mm*AD4{ks{oRh&5RYk z?$|@;Nj>i+hWwW_Y52)ZxDdr|s{j0V+7Emz(9#IcOLk1qP~#cc!$*jV!;TBK6)idvv4e0`&WbT z181xB9Du&KO?GrLbhij-5@902t1KAbQahU8+WP3s%--xj>H{V=>ifX|VAF1dF?;*@ z)hLm$Ft6K}630e=YNHq57IQ3*aJ#W*Os09n-$&V`~BrkemTZMc@llI4EbzCSq6qYhOJ$(Wx6x0Ozdf_QbKz4x~b>3h`P-}4*B1eUuyo4 zRJEzr^B?~+lgc9PT=-$igngGL>KOj3eL-h>YV%xjW;$p#)d6a#Ei;ilK1eA!;y&K; z7^mOX#@I$JR(bHzHC4bD-QM!rHnPI>-gA0w@dDaM(DK6k1j@y&WHcbuJQw1NSH{6( z3P^dL;(Rdy+Fej!{^9BtrC=gs{EW!6XdWAMIByMBY)DVpAk$ww z{Rr_37vSV8`JT*ab+Oj@x9VBjGC2{ZNY{QM;Ihk8hLnSr!Dtp-%ziWWheH27X8+Qe z?Jd$Zm<~}S64Q^+`CLAa@BpiNf}p(NLH^rYP>=3iA!PPMD1AQiCP%3!3QfiKr{ChI z<5fv7y;;L-CZ(}`SiJr$&?riGo62^`JgL@YkWvh;_`N6;$R5$zBksS&*an_LPJzy7%fdXG8pH1P9BWO|heTgQS#1ywn zaoys4q|a?xhsP3An|SS?*12Rqwg|4_%(%J&^iJNr>*J@J9i}@FyL9=KKm3)p!%N0; zN8&6e_x&6r&g7snBt|c6XIXcL_!%Tfg3>Ng+Bc(AOu~2|x8;9~@21tOA%KkM0C#VK z{~CZ(k?U!%Moh87>vD7<8%Qf!H)1Oc&T=cI10r@8`NFj*S2sX|!9Q6PUJ_mtKS{l3 zOYUQ(`t=4HFpwt`Xu=^&CQu6A>#bW=NW>wR>9xGGW{VC}{k6Rk7g}ZR8vQhshk(`t zXimR4SbbdVD6WHhWa@manYG6E;X>$Ia@Y~w4{WS*9D)?8>mklM{xIS!h1(n1bKS6J ze$Hch+Rp9^2==qmFUaJ*S4Xv#|7m1-@`na$8J$EB>?9fRuH}nB9Hao~W^YsDA2F>v z6AkVS@?LBXF(-008sbI*SJ>;;x337=7~Y6HLE~aNj@=MEGInE364Uy?0AFbecY{(* zW%F5=80o0^e%nYP=kyNhx$$T7)7buP8r#3-2@=8p&(s7Rl!aga8W68{=`EBa-9SE; zt`;xdd@(o!UN>4De>&xL_NID>6Fcv5%+4r+0=8e1nHk~;KOYMxr7PL!IX-(IbO?%q z4G8>35TLF?6~%9%2yNqH*NhP4g%6aWj1bZMbI*Ds3Q(QAsemxit)r-ur7P%_#OCt3 zNzAa3HfDi?#sRuGOhiCf%`ehnC)KvuXQ-Q;Hz$LZ!5c*77hxSIhmK$3Xf4$jx;*w^YF_LzT ztL@|ZXTC_RTp{;P!0TJ@gqdh!5x@LoI8rvAi5@}KInFnm!hlyQ z3~#g9%wAnh-JY8Bso z55I6~qp2?b64U3(76r}f(>kt+{I{%~MxJC?z{1~HWK!+rw55RoUj-ZqH_IaK4+gGu z;_iWZDHWI~Edd13J2_b-#TXKORYKH_roX74pgro0oC>emNS2UZ0v%oq?tp+D1jP1J zVA(!EDPSLS$?*7q_;59rWXcHwju+`+^rMfsktWGw;p@LR*l~9ASXF9?nI4!(;e(Sx zO(TmFtSlpK#@v3(=o#jkb&QNt-wdXOsM7(U^6$qdNZk0GGTpfNK+ERtGe^=6a-(w+ zM~?ttycFg1Lp7owz?hPsp8yq=2hp)`fP~?NRBbZ1b}-wbU_%B_ot_5Ls7~89`$CUL zA)$IAK${+2?{R2H5>W&2T5kzJ(dlR}hy-o{ zGPQt%C1ux_)BgQy?~k^gek)Gq^0#h1lWo+jJ2iT8LFnymSGFyBHVOE$q8u1u9Ti@p z5U~9PG>&+F6ux3!>=qZ6eDkU?8Mo;)qM4!3)^~n#r?(Q-xoF4q10CqQ@E3t?%PzANfK#yWd{a~O4mG3==YSe?prO4iEo?2VI zCojQ*wM9)}x7ZrBp@EJ8bvnY%M}t7epfpn-T=Xi8{hFDmlHUkxN(tJ-y-ius(>L6(x_0X>pI&fbp!Cz><2X!J)vBV%7ufg7$a+RhB6Q_S9k` zOZ4m$n_ar|XV}d+8sd;caP$=*x`TzJd?|wC|FU)@{aOK&o+W;VJQ}5;GhR)M_J;P}&pu)jc0hchA%1uBb?2B4o9 zjdM<>Jb)ydJ}y70&40r*EOc|k$Z}FY1VcE)S|jk42-0nCFmZRA8y$q@)w^A6v@m}x z#FM4=t9pF=>vepA*U-}Jf%}6j8^azF%z=sjz|xTQmqEb-@&`9X_z;YmnuJF%N1)=g z+Bmrn5?A0?XxGyj<2-gS-vDnnH-%4^0N{4=dxiC&jxRcOq1=AX{y&(D*Ati3b5Bb~ z)s@vbWanay$tL8>pJgs`o>X1#fUk4-oa*?={I%6Yr(c-PANT8TZv+#t2OJ`(PEiAC z$-X}m>U8KAqK)OAf*#t!JD7n^aNjdS&RpAt=pu%hH^VQ%jf*~wKRWN0Ncm?>+EJZ7 zsN*PnF@g?HeMN(ZfN{?*oAKg9!d(Z`ve|j+%Q3G&ldZS5_wT@hs8eaR?<@Akts}e9hw)0Q6)! z4lyVcpOx)Fv#Vt-T=XiR&YlhFT4#~1UTQ$qdZ+ntaEdzajEeZ>IkWr(*_J+OoB&Uv z9S^@u+V35W%Z|QAW{Ckq5YAUy&K1Ao7!uA1k=`n{PPM3tTn_{!x7wHu`wn2dEZ(4F z)Yp9DvGiZ&K8sbDJ=J_uB`q+jeQEouihl9dC86*QoAiF6p_4G$T)3UHB^Od1`^bK% zH7~r~-fiX?a$!y7u~_k9&vS&xqhI#&`D_oDd~9?WL_z_9oI3{6lLtk3NUIXk1)Tmj zfKBjC3e-0E;#}!@z9N|P^YyVGd3MxPNrm*ciYII2KhX~kvSJ9y!x3%iH@bTZSIBZ$ zjq2nA?XrR?`-M`<3DX73M0Gf`N8Rc@HPUWuYx&)KGrfW8``Kv~slkIWQD>x2rNY)S zzeId8Khh1S4;e&61qg`8U2Bj+JBx*z0lRvStQ1E;Kr*ErsCAAtZzBbYaEYCRetnr- z>Yuq^ytcVR57?JyRe9O-4GK#AYcBQ+1EU^sfef@VxBlgEi?lB&HiQcrIt%al`>cSz zes4@qvGmLRFpv9f{aG7jD|?gUrouiKojm4;ZoVmhmYGP&!ptHeZP21>7Y95(0_KFx zqJ`EYZ{s<{y1BDVec9QB%78H4uvY`dK?DCETW=l?^&9;UkA&=dcB3dovhT}K2??nr z#E4`IAv-gcWH*+gR7O!`%`V&6MI_JDz9K=?Ys|b&I5eJqSa*!d{IgZFZJ=b+*_#Bcds!TZrlwJ7sn27SEEOOG~ zpkrXKy+H+6yqo&Y1>$87Qs%&-%VXO>Z(58c!&-YCD}<^&5Q@fW zwHm)u+#DeWcAeLJG4L-1n1&#%v?;AoVg=udQ3>`01I>SW? z41H*yero{w*^U9j?M?vf;FL39VpX?_s!RsXZqP993Q;Jz{CKSIyS#N4m!nPY>8H?``v1I4`4qGC)`M}vNGE+LYr^| zKj>yR!IktGY|tCB!{Q3o=S)x=zs1;geNk;T?RKt)Tow1rro#;W0V0THZFgs>H{(lK*q~UR@|Z9bhe?zL%qvLzx$*imOFI~lq*R*Ibp7b z86QcG-+$`b1YpHE7*YF>r!cOl2+PZ*v9*KVm=P@|{ z6;IQ(BCw{b4Bczz-yUAKB$@6R@g+}9K|=(^P5&5){3JO4N}0{{xWRbe8!T1q6-9vl z9hAs0_)?63o;FeXvZJ>Z+0m!OarMsB12aDJlSMh!uWqE8@}1RUNt?^ps@mg$PY;ri zH-$r?-G{>eL0-BQ`%&EB-62#l*<}n1H(5ReORm_DfNJ)L2A8VUX(}tX^i>OdQy?kx zKTlOl`>hHo{4*QtP5Es;ef_mK!>|-D*6OCV$Z_HvL*D;zef;dspY$t<=kAX@-{&ZN^8mVwerRCd7!XXq2J6F&<{=2-<7YD1Pyx&!L$@{?F~y#@jPj$Y);Z*h;zX5U1I>I*y} z^+FV)yeW*-(_owvka>nI%64ogW`4aGv$TD3P4sG^xI*>J%-_FSA8Z~;6qWJ5vHhxk z5JKhK?h)mF3P8Ie*fBlprIw#h<`u1o3vv4M^MmD&jreevU!BQJykfi@s0{h1P~b4k zLLWfZn#4R2Q)CIX?Xc(k`1*r=x2HE`Z0n~9hg6a0myB8;8^}o+3J_wMMt&~dL{p6D z-<(v)a3XuBs4XdI;k8=3+uL%DMqcw{A}(1Xg@*kD13E$CJVvM6*Xmytzv{oC)wv?2 zlAZZi8;`nl;yiM zP=WyXWv&AEXNr8FI89kD?ghPBVg?H2a9oclHu}_Ph1!GmD@_dv6lbTDPuErC&u3JW z%1I`R5VV&m9oZx#nGdH-c$knC2CBwE4dE*yJG-g7@ZKq^$fqTXV}mxdcY5;rTg_g! zaor)oq^ri1D>*+T%+9=!7H{&p&1ZoM6OE=(pU zU44B=+^9pMmPWDv)Cpv+s39A$ENx}o9QMQh`n-P z)i`-cwNVm%{RrjMv;}8Cb~;2_fqVd{Nh%u{;6n3{rYvKT4Bn(_{qZiru)k`D@1LEy zpq*tW;+h5-{9+^g-H?U6&hea2`Kzzh7oc63^)~I(?+ha+t|$|D_u-Q*ivq^X1556z z;?d_j%Co5)`O5o6#pk~ELe%^_mI1wyiPZ-L3EA0*t`+J8qLOqr?;^79a{hDmHrY!f zia~=BW?}~xArB_kxL@kjaQ;qS$-$0dm^Ikw*)aTsA|KhW3rDcI3+>T~Z%deMJzqLw zpOWO7GTfA9elr8xmir`CV9VyK7Csz;ECM}Tf1Q$(6+1Plx4ni{j1vw5}UV`K@qfrZE{ zfhL_R=_Xl>qD)_CmMkW~j4c@S!WPG;g3P`BvgQ_Ol}q#a!s84)L5ZqzguB^e5Tt6K ziFG1bWHI0|Oov{J!Eb{}d!!SsnGW>~xA@)GyYK>E;?nj^?7+<_4Nbw*y_CbaAJc7QqG8SI`w5H_9Nm>ik zTQJI8?3-qLryKHEB`{x^+K~T>QR_H9f&(>)`3xnic7r%^6zPph&XfFv^!5uY4Rx8m zfX}kAlU163mOXGew%3-$>({bu0iKaE2%l~tMb6o^axU&3SW)8?bgHz0Q1FyG6|89I zB&-^>Ia`S64!7EpT|}}^ujXI;QBRRLyRdDMq##(~*V=vBT>M%o<=U}V;vvJr^cLgk z-IEHfjq~D9uzGyl66C5sR&=f|;?;PNPabbg=spOUtcE+0Yp>cr^wOyrTP( zY@(iBl=lZuLTKPEzImtX8Ag&6J6_GNr)0*}I)3D*^&#o}_*`uc++eX7f>l+#4)Q5g!9K2MK1M}sEk2Wd6^2U&*r;l9*t*hBX1V=p8h5H z#7&Cl60IUg@dc~1PGGujKzN4EzYs=!`zexO1x7nThhy9;b?%?9t$*ZMJv(~X7!k;v z<)-WJQ>0OnQR{k^UngEJY=?fs=nrOuOL2M%FMj=<9)CeRBLlKlK{@6JvUDr^aEdTQ zxV)qojagEZaOf?(H#U0>Gg+@|?$GHEo&J;W$E9A*gVl&^$a46|bNU(6htujzFWKl+ zsirKuz)lN{qU&siN&xKQn+M`QSODrS!~!DkT!S-U)m07Ty=PY9p3FL4?wsMoC90LR zuzUEp#~xTE6(uGl32f<=DF(?3Ye^Hqa2e-mS{g`pU_w9zLYMZ5>b>|{Kd?_|K?dDz zfOsbmqI|h{W@g&)>9g|!rD|Ejuf&?J^cnczek4#&+V(VaCt&b7I0;Kk1XD%}A^4N0 z@54;#UH5!Oab=UX+`yKaQmMmNi8jYGsxABZeE`A{Lj*#{w$R>P7u8ROO>DwUlfeold zK0rq!89-m6RXhmh5xgEe9-_sl%^=uTeXY&2g^;nKx2+dX8S;t^JO`@VJVMb|y=lCE z|BlY+Z(hppY#Kf!fkqaB9k|WX$>{Dza1`2)hX#)xEjXH3exCZ!T$g@#A=D+un~@>( zMT*qRt6eHT=VLqW3*TTN@l(|49k?3J&1Hf~H=4yj6nFtg=_|F#CoJaQwtf3+cvzHU ziwbPXze~`Eh}*sg>PMGox$QEcCe{R@R6T}*du!q4+&+OkV-TZ;mc4dKVA<5{vUpNx0X^?)!Ht*%- zw&8^gDoZhdWMd@?ta&B99}Vs+tltb}$uEVjKt@P}BNKvyYdta+5JwB=eSIrWyN4Fd zRStYk`|@|_4H31+WEBlPHdY*`b|C~h-Ox(6wk0fsPkIVYRs*hH6Pw28uo1eguCHp9 zH8B6%I45+ur8&f7Oxro-w5lMB*H=lzPBv{5>2Y;LEpelk{NOM+aE#pcSU1oRibYW+ zGXLd23*xkNJw=Ko*}VHso?@yRn%91nciwa4L+Mx7FsAYESw+`Md!2Z05YzrW(kPJs zKy4aP6v&`R^_DP;ZFY~V+Zb}i>KM1zmpS49EO;T8Z{?KJ?K7_M#e4Liom{F!+mg>o z9G&$O$PPHYY;y?f_PJ?$hg%mSJ4v4w8|qr@7KD+Lrqv>@3pNH88%4L^5+4y7euT3&SLB$rx16lOs$l)Ou4Gmx&0ki8UJTG(iiR2eqUEi?{`G0QiQs#KfW#LcCK{NIx~J@Dc=nha!Rv$ z=8KlN?a}a%#`yQK{CS-{#w>YiH3t6&B>M;{@HB0ahV6v?UqXb6XK8*iIXf4UvuD=` zMb&(-ZV(%}z6=n!KeON+&Dox1vlLr>b9w*iv`Y=7P-YKmgzg3i$s;JiV`?*w0*ky? zLw-xSOubInZ~wAn#p!70apb-5-h$)g!JRFcqATmRVdt2wd?#r2+|%8pNYrzJW;HWX0wo>OOhrBE^Z$WmA>Y&FTrj#aq&Z2{j>G3%59&*JWolx z8`WoCL);+{6Nb}q{fS|H(o#OJR!wby zP`M!OHloW(mav`tkL4lW9uvR4Rj(^c$WQ;|?=CkaCcOFXDnqvX3+Kz{WIaKcXgq~{ z2%GNi30EIZ*dJyfBO-Kv=CKy)1bv=M*T~EimPTE-JzNEN2*Cv@?|#-#0!TQXKg7RbeNZ_1G40OZl<-I z@WzwOElcBj6i{D!Js`*KPAx78ZFEn_Yxvrz6fXPb#M?0Vd$5!P=}{m=qj zD8m3wFFj6n0QkwPHq)$PeU-$!NhRFtLCd>vm{iFIXX zD8q-y*cW5^I#J$7iF$)_)&@u;A_ccr#|R zlfp&MOJgIO=FA?K|fbfbdik1TE)PCgP zg=)$r&wSpoJ~geytZaPMEd_$}ta&2|UQ zj#wq3bSr6T$u~&&3XoI;SXSJ95GThGKcXTc{5U7eNH(HJCEeI4(`WIv8VgbYU3kre~#MjidI04 z?a*!RJTbV-@eNTtQ$DU5H30b--8VauDE*E_nEL703Sn(iUv&y3r_Yh#<4wlxDW zx%qSS+YI#cIF@!6#E7HWCylH35DV}jz1}QL1{%=&+-0<)sh~~0y0GCMKF{Ph_0Z7 zkWLbui+(cFo#-3)&NK6b4;aN2aZMKPlsV0@;_-D^9o7Td+*zmsw#zIrL9k~?0RuI1 zixYuV%RRllM;Wqok6k(`t=#O+QJgNn$Pt+5^zu>E=m{zyi~fwf4~>J?qp;|iz-|LJ zT8hC!zJBtrd!7d*zWORsSZZW0_v1H)nakVDjOo8b>A-C*&SD5b9vLsl(@~<;3&G^( zO9qed9Oq!?zx${DJ-$~3UNTN67r9kIyrM}U%ciqHi7NHb5hfLrbZo)qg zd=(hABgPd&mM`vTvEm3l0OTo^UQX(t-Lk|uEiH`q?<$-)Y;BBcvHqFX!P^3f_QqoF zBgv<$wg6J^C{;l&q}>IIo^+HyW8Jg^X8Z#R*(h) z`p&U))!^spNQ=hQjU!o0ZHi@JpK|}!-dZLclwmvD8i)X$I37$s^PBU_Sp6}pFB5*M zhR|Lp^%Ce}V)9yTHhHExOP94qUa9H?s%{uayFC3H=422m7Am$E_5{xB5hz^T_zH1{ zF+S&X_oGbM?MJ~?r14CIQdP;;qTuI} zLcl(1ke%kOf{RhQolXMe%B&|3I`Sp+ZZOR$I;ooxO*y0kLqblC9(Th+}9N6 z>K+g=m_M@J-Cnk03f;hi1I=mDfzbKfOaL>jd+eVSDl2>i3%)coJ>3fGW4KxTw+W_` zF$f|#zb`yWkR$LHSu3*EQzq~L1CfsyVZ_6t1N}M&CTKwccm6*=(GFhrMmgT}0z#j> zAea^$-8?j@ym#?x6fuwJmyT&{+$sY}$yG&0`VRmiv|21%aE(4`Gv~Cuk@p9;#mjuR zNLl-wT}TEii*JCEq4clhn}yB>K+}*yi^JewLFv|Sb@d{y$bw<8`AX5{z8Y#?(Q8Yl=Qno-%JbMII zt1i@-{&!~Si%sun%DEMd*chJ3c||0+Oi?Rr!X^8O+^0avSDu{E6LyZv70{@DCdo(ONu zZtJf;`A;FYcv7f7DX{Pyftl29`W3z^r1M0LnmcfX1RZTK^G!vq>-cm}4dRV|PHq^GKOl zxr1lz;Ag1*8{Zh;+f1l5%=s0qs(sbu<4Fm*9W1^O2}p;8Zg5o}XuYtP0cd!vHqgFP zVm&E(_ZMR(t?EH*ej9fM1j&RUm<~^ak6$LP=~*m;KHWdHpU5iTg_r8bgP0~Bjw<+S zXbv9JVtV+X&+LXy;3&pxmd*-%8;hOF3z*0@>AxWRgnVN#}u8d!w zi67sby15?cs08y&UKVNMS02Fozilhq+gODC4@-s(xs$MBOn&t~H00{&=6;J!^RwC8 z9g<*U6$@vt$E4V=B&em`9PB0yh57pxd7b`Ce21dlPlhBv zkb9+T^qmQD3J_!@5V`RysB!}-sumD?(O%*_>8CP7>bqM1rQtQ>Z!>Yq7WJu zwBYpv#zxA-jv}aC&!9#*$zl?-g$FCP!n#(`7*+G=Gx& zLfD>k6@z) zkbwYq=p-}|b3D?bgzV6xQC;W1F8XNOFW|i?DTk{Vrt*a?yhL~i)OEL%3ILp<%caRp zHmSEf(XUmT8w& z9^n1UFCAKE1t22ZzPKe#EJnzyU12JR*SB%z!+5T$%w?@Bo~$!Xx{sTVKQ<2a$V|8v z@@8S2fn?Qz219nFpR|{)0ys_pJP#*3$q*3HQ`{jm^atD!Q&XO?jXQ6dGhayobds{RI@Enx>uh9fivvW)0cO@ASjmIl&B>W=rW zANUNtKcoWg3WP3V9@?O}rMYOTC-e{hAVO2?Qq1lw$y?k!a!AawVY(7?chSz~H3#!m z|Alr?+Kj!57ytvAI1~a#G)ctZUpK!6oKJprEznx8nfdx%&)|jYwF$|?TWm$9-)uuu z(>ku)eIqDH-gAGfwH!w+1Cw(2ABkChVM3whM}w&21G;y>!MV^P;8RgmwHZRpP`Nige!N#WU_5=pwwckt*r%5*%1a3}TxU zlGywoWXcCdjrkD_rZyCzY=EQ~*ErmPIyN1tLRKXrdksVg^tY`Jo+Qzy)kZv--_m&* zx?(pinOR`hRwF_9$8-ypbn4Seq!CQ{RgsWs;f~x6jdm`5tIU_$G9$nrLiQQ|4r?tky z+yj(!{PX@1jwae5@fFUg1Q(iPRw?Ph|mp>QejgmW&ao^SO`{Pm_uK7|_uNC<`oGQS$oZC$^U$pJrPDRK~wQ81?dq&-l zDj8B}{UrYBG%L>=CBD;do@lM4CX?@Qw~=isv1@doheQF4Wg7%2X^>U`^BiLD#(e&Y zsU^;5YHBp6J>Pz$_RDecLqz$~g5EEPlD7C`Wtu*UENexTxUUlf?R&i$n6{w!${`;Y zQrwPsiBE-*Rl}~JMcTEbqfJN}nd4jsn%XNOD~wY99ZQ%tT#a#New?^}Dp#EFvP5+< z2oYsLBbL=BID1TvfS(1;8CpzdGb&w|l+U6MZrWQm%%tYMs54FPv5zW)Tw3k@Fikb8 z31>U*jna1?GB7K&HnsEl$MQuIAC5$ELo#Fip4CzkfiEJ`vk+0_Ku+s@y zFf#E+6iz<7LX~iFaYLqQrgJkP7Zq|}&@XCmFMii2Cets|Wg@v~1!{2AQ9=hMv01VJ zak{;Plq>pVP^Pigsl~av|H2=~mIEXoo>WCDeS-HD`4zD*g_NUn!Mqjcfdg2Ogfyan zeI+F%bVyf637Tu@@CD8V3->}04?K_rZ+EKTYsZlb`~7<`uGurcc)y=Q-%UG<3SW7Y zc*E!Ze8iI~Mp_xDw&2j@^R}Bogj+YsyF{yQ`=En_x-5*Zj{cF8)$!}x+j-}vLY_b6 zTxsy8IcLe(>V_I%><_z1gK%<>VzS?O@l*8%5lCtZYjvNJ|2FU;&$p?3jie`FQIZfp zppxJT6Q1C_M4?G)8@3S@UIROhI+McpAnzldcV$o?rNyk}`@=`T<=?3VFqV>6HVBP{ zP2pdm)#*Q!LJtjGx~1rnFZKY-Q@20>Vi+!3d_UKZ*R#~Bql+9Csmtu4p%BN zbdR{^b%Xz@p9%t_xJ`SF#1|rKx3NvI#bw*0^tL67n={%9>Mbd2>g*ATBm4)C9eH5m ziy`mv?jnMVm}6ii3UG}qo74CgWLJXxQe#r9Y{7-$$7(dy8+i*17tm2%rywVnwU*N% zRhunzZlKAqh^Dh?jG)P;>gsE=oBpD7hH+=+0`5@@IGqhREGEUNy4MvfcI1s^hZNnP zPV9;ByI*EyZeEqEh#^b3J`15v=&^D|b(qNd)F;|2LDVZ!b^zCZ z5M@ULx0%x3Sy+fZ(aCs49eD{&@Se*Dd%N3N(&0)GbEGQYm$kC$iiX($XBz7d)^TE4 zjIQd%zU%s%7{SE?$tWq5;mv?B3LgF|`rV)~pETmEQ_EXHLeUF;Qxa4E^}00|`@K4kaDcD*V;vT>yuK5+Le zk`@KX)TqNq=PL3U=vFTH2C4R`)3ld$x)CW7OqZR!be`iL)NoxZ?Wq-X9@AL51TnZR zJBl$|206@a!0S*x3$-E?A-6PYG*APg^fyTSs82SsQ=zIdS+0LUW5P%dBBM}|1fi+M zz{iNj*ni=23t|da4F^p%98|a0c=s)#g7&nE(z4kX25$A^J{?&L&X7zK3CO03{N4fH zohs%7p30JZ2xuU|h-RziqK~TC7}d;6(Z@$UWxu*DomqBJ)uI1&#=y%=qhHb-slT{^ zt0(Jrvr?|phwmF=Nsi<`UG-n=adR<0K@PNiS~xbxO*UUYJPJtzAlW@A59S}Qtvs|F zeQdp5=L=yW<&$xdL)+kt=SPlmndTp0Yq3F#)V!$kVnlA)>u zI_2@D7|`IPo*vG@k*?Lp!YBX%_~3D11aY6HYjDE*OwL37#OFQyKQc6;zpS%31HD`o zWTzACALfJW07Wmd1Bjyu)?4nkiTN21A}n-oMBTA)VLvaU*Yy|Y|HkckzTt7kA!KQP zeG+0@L|cmyZ8@KC48s7!uiSNo5=^)go2+|DN$D)d*Mq63%YT*pGk;_nLOZ55q2NK> zX|3Q$y z5n&!cw|)-v1N)pV@+nGJ6^mhz+fn_3Th7L{(t`bH}Stg@c;M!Trymi zlAM-8h%aS`@BZAAMBmh^sstF{H2fwFWS!pVWAuT%J0J7Z@>RzT`lnEDj0LRQdWx7j zWe1a@A^S%zm>&@!aEQBw#6MrQXtcOG)oZJI!L&+~)Y9`HNZ5UcT2U&z!vZRIuRH>n z=ltWwe%kH>TV)0>-D&q9#0~i~uDe}_mXGn`G!4Bo+mk!ueJ5{jHh=1y=}ku8HBr@1 za+-|vuM&MQW3V|zaDq2>)0(hC(ja1btEL}P?gAVoxmD!jy!Yb1_n)@}s*fQSAq#A-=Fw&Np-wA{n`a_i!Q@plchZzop86Gwz1Q-!=W<`a&iR;hqv z7ELhQH*{+tddO+ZI=Dvb1SRf4gwbLcK! zSIKRuZyxJ;_ba)1)kOblfc@PBC@b$d@8I)!%0>3^RBg zK6&yJ>E-0zWz$$CUEb;z{Xn>BC^!tjI%4f`V(6nm|HviD+Y(VJ^aO$Mh!t&r;3OgxEMD)G5Rv9himH~4ydie>xII`L=e zd0|MFfASAre>K9slq<9{O z7I6R8{U4c*B&rD5&oIPvb7Nw=o^LJTAWiMoJF8EXPWsB;Bvz=bbKL*|Cl*}#DY44`H{+$1`!RnLN=Lv@&Pf^tS` z3x(KE*BIQJs-9U;c=v3&-zWBtR4v1c8@8X0Bb~vOPzv~H%jL}6mWJOv(HVob&k=vS z9z7}G9>kHgFm!e^iU499Ui}ST6SDcGN)e?F9UO$y)K3rtCCUmv;f)CK2nCQWJ zzjDhlP5P?ERtf?4MbR1(--aWYMinUb(Zpn;S*Ev-NPRx>$oyiekS%G8>X*hx%O{yQQ(T6uN8^cIA?|RPb^9W7YJDWmtXVKe3V%jhlx{=AhrR^57m} zCAE%X+dB5QUVb^s!+uUkX^_=e_W`5t?O*PIT#^IW(lnfW9+J6wJ?-CY2L+Ob_L;BpK|}r%iYKBkM8$T_^Y`UwMjg6~f5)FQ>HwWe>$hDxc`&bfpU!_x@VH3Xe(f z2b5u1GepIb37NM|6_h5G0#4dqN?4>Ztu&J5zW;|+`i0h*&5FwD>q}y~rWYoP*pyP~ zmb=iqgO9$>e!;*_S|k*&ha*^ky3V+B^d&!C4QH-b9ew^|S{=iW_WSgiAST0$ma@Ou zOmCd{MMDnn6zaL8E?SL^rRyV$+ri+v0EkH30X7G%vD!2t4EAAaVOwUU$S%pe_Rn;w zn#sR$ZSM@OoV+T43NOPTEY^@YDj3P@D-; zr?LLqS{T6;nE)f0BU21Grw}K+#_okGF3D)RU@hDHRQ?V`o$;&C%vvc?K2$f3< zH;eqG2HnyZYtg%V5+RzhVo_R<#^;pvKne|dXByzehgzu_Jq$ErZ7Lpp~ zzjLC~So*l@JK+CTv2^xK@V(~bGZa^3=QTY+VliI7d?xo9f?rHmxXQ7$x{RHDw?vO{ zwZBT-3iBWW`|VhxSVI*lhEPlAk_5|kBb2iE7q#riN4@o#P(dnwls#0muIw1~aim`) z`LX~<>g@xTvE=_C7ogADncK;4iDJM%bJTt5Z5vLk+S+S!%cwoA|E;zS-YnW#kP(zU*%P+a*rtbS_Ocd3QsP$JG4{hRtwK6}%^D?+-D#PS{MO!j}$Ke(u zXX^PaTiEt#5X0ol9fuIr%$)VUZXs;KoAc?my0?Etjby@C=ZUp+PBrkJq2##5hxJ8N zzBVFvLaVL97y7qx#r>154YB?Mubj`l%UEW46CKdxe1dKb!>7Q2y93_6^Ag~;fC^A0 z$t@M?#n0L$WNJ68XL1}~PdUVSH)x(pK1^*%;hSR;&-Y*?Bm|_ZzS$cdK)enc#(Un2 z4@en42uEBwW_q+&wYQF4V>NfrP5En%xI;F_)JRmoHkk;H;gsN+B{>N z5Cr(1xao+S?X{x{+l!;>oQk*5Tih~@#;G@r&rWnz<%Gn&A)StfWmL!JyA$%CK9QW> zr=AmmJ@#d+a$>21OdWvrKMvxZIA1X6h?&VHssBKF;$~|8gWR4_)bp)~`slEx3A=wX zIB|<7{nqbl_X|(o@F=HiRZV<>;m0v#nVE}3x24aw#rey9JNr}^qT{vzT$L}osZKHS zMAjs1#RInI?5Vv&bq8+7jmf`LbXt~AzUBVY3K zR25y>GtU+0VDi|225+d_@QtunR4=0u%{=gax1{k z5{fs=md_jTk=JocLW%VfI?EO{BX#xpA`h~5WD_C=_2e@9Vrm@nyTyrg_!d924=tp@ ze>NYTdl|R{QKWu8Y*fRh9tMsS4bxcsB9|(yO29N(Ixn3 z=*R!>o^g92oK{o#S?sz=$PYMZZ6IsBCh3v+DFWnSQW7mkT>^e}lFC>-RN-V)=A=H+ zHvgjN`fgXD%gbL6e#;zwzReMcT^Xi|t%0{wA%i=INrLRYgqzVNp~tt+628AKHD8>E znT^S4*g}1ti8*}zdp7ejq$F2f+tMpII!GgJJs- z?9`zx(FBBza-gdO<6cERC$uGqN3qktXSbKVqiR*R$65qFZ)itbdwYs%NxN~JoV)aH zzByOei4%Fl59AVs$j&plD-@O#o%q9`j}lQmj;N3Fhrs+}N#N|BH30ZZrvm6ua8iuZ z>6vQhAnsR;ANi!MsW{$k&;Mbfa_tv`oT^pxSvIk>qK2yw7|UCGV~+K~b%?AaS_49r zt4mD&GRPfJ1OTK+-~vsc(^!yN(qi^7ae18REwQl5(Cog46A#AsIdyM%%X^;jz1GQd zl{OPAz-Q^7pTIbx7YLrR06c|qkl%@Q9lzLr9L_;u&Tchr*|)vpV;@DPyC_pTB-_Us zs3FKsMwlP^DR7+Ivr9MtQ1y{NNQx4flR_3-TKWx;pB2VQQ^$xuF0LfQYF(~aH_4y8 z_hJUO3W4Dg`+AlKi5IT4q`U5N=XIz z-f6w_qF|D9MM{{^MDzb{rp7?9qKf}B#(G+OJ2-ru2KA_ESCTtXE))c5#QFJz*FnYQ znf7ZrM^5j2B6sH0`r}jcO-)A_zTeFedyI^|la}$^SASSf2xCfxx;;iWd;EFJHRmIDH#4J&uKete zP4Hn;r$MUOg@`CRx8*qGW(@jy2(a1pqN*$8%Y>Dii=;PFm>btpG*89s^*2Q&!(J|72;gTXOmrvc1U zQSc{yM8)83L8Rf>mIAE7R^cRCp(x9ggD6)UW?2JWIIkteS*#76^`pW-&cK+BP7jxo zB*3|J7*Vx5u#56!1F+>Mk)1NF|Jdq40Z1Y%QBiO4)S=WG+H_g zRK%yNx{)=*n{AcYWwSGr6;$Jpa=Y>*Pmi1%b6rwBfE#`L&nuNCw&)P`ga05@-V{1} z8!*Qm0?Q^p9vOoMT>I|#>Z-32DVJ zA7GcKVfb0@X(1Adma3;oxk8_qNiVKg&)024*;hA=Rt~+nbEoz%Tlyu<*V6G!D8e!$ z;Nm=P243)ATnWp7kbl4DGQv)8A7b^l5)4)M1gY|f9~iWY? zNp`~Ds^Y^tsq49ocN#QYhAtj=dz>G@^vYG{h1l~9Tl7Y-A6Z?K&Z?J`xVJ6f*6yU9 zD-pUSygcrniM>WwY6p=@r%Vv~8IE8}Q6!(~d$E-0Zh^d0kFuKhbKU1NCSl7u!Km|v zLN`NGuEoCWDDU($8>`M$|$r>hvR=ZGXC|g;^ zK1$j5b?n42gT|X#KF{6voZmUm^E=OT&hyXn*YgLT)5k3D_x--^>%Okn^}1dcPAiXR ziwXcrkXC`WNe5m%J$j=K`dxgh@fYt;($&K&uQ+v9ex_YxZNnNRe>Qc@+y?ARRR;Gl z@D?{Wc;##=(63-<*OEceIFNpN-K2V;s%!JUk2fKmSvUQTK|y4uww2CY~iDtm>Lb#N^=D;alUv zB2GyM(*)HI&vkp1f-a*P9;_t8H)TOPhPy27c+-MmeNDd<`Nq4&G!;XiiL#eQCxz{| zY5DbTfAsX^p(*GHSnJr~CNSmEF%aOwLJ2f0mh%w$T2pP)aDD>rm5US4#3S3}90@b- zA)Y$c6)`RtI!}m(z%h;-wlbHSmexUtuhsbko*8ikSe*xs&;Tb{p~WJa zXVf4jKs3#*v?^#z0`V004F%sSrY{Z_sSn z9M$8mrEMY{~Y^Ks$Mbar6s49rtK!tfT{1mAip0`xAQZBf-IB*gJpZantzG zrJ|d&C%&4#cu44sa7v42S7Ta1kN^clP@bYqfBrAeJI46&AFNuVN*BoPV*Rn>?zJBk zvPM0EvPkN6H>J`BZnn$Ok_8@*b)YQ(o*NFbJmvR$&`N$m@`EbPpV|aJuXvRGHrQG$ zEWm=fQOw}?QwF>mrfJc9kYEODH)xK+u z$On-LYZ+)IvEE8*>tKope!w#=nS@@#_=1pK0ZsDNr17^AG>J=8yAV0#_~5S*Fk5M& z#{o%9-uM0E*Q@4NJDwkCXPcaN=bPx)v?^xgSaypNq}9zhVnf!P(~l)HcjAsK>I!`L zGs5udNh~w=+Y|Jc7G6qdIHvQR4PO8Jp1FuU7#Yg|M18`yT#|V%D|lWSpmN6vDG_S0 zid#<^k`s-cnI5Ps*&1kW3Q2OyrSY{Hfk`2&x#F9F zv%DcqqQ;D&p#ZvZxnjxN?Muh@y%Gw!c&)CdObN=t^#4L2>1E>ury7lupl9E4pw#gU z&U<%lq*qPnQLc9|c8Aa#7T-T++5zl*g{vZ5q4}yzDf8PZ*CJ*d7YxzV0c-$dgEEH7zsdC% z?XOoviO;o&qnE}WhVxuh9Tdj4pdl@Q8=F(P8U3>rf44RYscKM)Zg45|{ZCKWJ0q)G z($$0cgPYfu8fLY5-z{#p7MxkNaN$g%^Mf1|#23-F&dXoPHd7y~j=DkC?F)1}_I-?} ze~*ss>I{~ybnBmej1&411zCc+*;x`~dK$eqY;aAxFZhpa#mxLEY3zhCiE zUTe3ld@h(Vh!PUbFEGO%!}6*PN^rhdsXCx~%)~fhGG&%BR>Divj9% z2M}h2Uk>P*uTVyzKZZF^fpo7{}+F-fI~34 zoiQ*=vIq~moja!{7`hctGZ5ISx@sCa(fHHJZVB~C<;N06A$FqZUfT1cF!X29=(6U8 zk4!xgIgQFmjI+RlY(GcO-KH@g>7`xy%ZOl{fBi%{_lDgaX4=OEER^g)`DzQJogyWB z{P>YWJ8bi#M@F{figWHyFg1lx0w>+TPRKJjGRPOMk};j^Ub|kRM%88kznQJhd2SRr zQP*O+G^;XnPMzuw{j8p1k&A|0iHfc%Ft_+I+_TF;e z9?VnR!Z@_RpziDP+eE@IA3c&zZYZt)jTYrIe%`))OPqEeiu#1Q0cDqVfAnBTH{@Cm zom-|3SgAg~@58nVo3DGH`7Y?KHH)o{F-+i3?x9KVPAvO@_@m|sxU1Dp$CJAb6}YAW zZ2qv?IG5_APPZubMu4^*r442Z${ACSdYm(kNc$}w(_Zz>^*p$NS6HtSi^yd70&j~Z zY${Ef&SBfUgj)3FNlNhz$g;Jdk6ykX9e?|a?Oix8P;^uHtS7gbjXeY8^V0yzsl_x& z{F&h*VIoo5b61V7)rN&sdz?L2Tvv5YdHIqoT0v{$mIHix6Q&RRPRs*lpnQv^yt;9p zV|@J%Z}dlcqj!~mhs^m*HRQ7w#wUYf*N>P;^$ecljrA>6@L@)(=* z&cb#c&rC0*V+OuI+B_ub!8MMMm`f3?K7tFfsWH+^G~;jq;Mn#GTY!CsK@tgwWdZak z6*p1)5(pfkd5n;)vNZll24@EqL~|`x`tUUb8_m1OjloSSf4deK{C;)YLJoOXI>uWj zMPpgt!7t&H_JTMbi*8Xs5b9@ZWj9Wd&g}tR5eGs-)7g-)t2x@9C+ku-uNNtF+T}=6 zlJw1&r~Zf{RJu%94}+*4HDQ?3l1oITv!r!es z-W_*%;$H6r$d^pL{SOwv?jSq5xl*E^$v`u}(#3#<^9<){3k?E8FykEghpR4#prtWpl z;uTgpw#EJ?YI$7bo-dA#S(4iihA>7Deq}v%ovqSu_Q$mv8!%SyBHbw>gaw3VIojLo zmr6qbUKV%#txsLAel-KI!mfZ6!xM}m~=fo=U{4Caz->l-=R=2OZs@w&=$D{jPHJ=NbH z{y{&j@6`Xi^=eq8&kx2OvP*mF#+iHqmYQ_-Q&4JK+F0G0g4kAh5QdK5^$*c}vk+AdkkVacoO15Qdcmi6FEuk`atFR)`9ZHi8o@(th=!b_ zo0`W?-q$038d=?{s?CxxYh6lnNDcXc2SneeIFidaoYaEk{mCFs;z!S!C`SgYANn_Z zNH=f|Ir8SbSNWJkQ$vtAT^YGJ2v#l|+|oBdE(689V;)Vs^xP^na%b%4<>j5WT4l?1 zN)<15Qrf|5;G-ue?|yO!9!A7Y7XmxAMz@$oa?gIf`U=LJD{ar&Tk_Ml2XWB${Ga0T z%3MSnRa5C=`TUFyr5~t>6{ETS)Di6eu+aoe864NCmcZW4o3zHD3`$G|m^k%BjotWj z=G>TbmR7)yu1^Ew_HXJ4X!#Zl63uqvD8x29N@Aw_<(u+w;?k1p* zmF|CEv%j~yZ!)VSCg!rd^hEfxQ3rwth$O|vHasktU0wGR?eds(b2`r7>?{2IBwFFQ zsB7~SE`d$jSaQn1(>KymyEByQfaK=Nys9*=pc*lZ;2J?Rf{LwOssVGxv#vzuKY0L| zbib-s7|7jtIXTi#9{@8h#pw7)iRJDyCq_QeO!F*9Mh{Rw{Jm6soU^1v#3VXy9@1-G z5TM_sDS<88fcCOF6vAUp%1xv(&tdu9H3WYg?kovb{AuOabtqBh<^$UqgT)V}`T%E7 z{t_$48~_^626wRpF!%G$4tj3xpB~bSTd=Rs)BSD)|Jgn-@#^Fgt%WG0BI-W)_-_C? z%1uOb{>3o?iNhu_QVQdv`$*rq;I(P>jyDL22N&Hq9*eUYc0`;;|D(3%&sMW-uu-p? zl5+`l;Vw6Z8@kj}q#i0teEM`HPFwKU-57ltRuy4^h2%aqD%ZXJk4v;h3+EhM5bli< zq|;vjXtdX^eC5ez9G?~rnBwQr6x(boF2nmGlod?g zf&GFvO`wp$X-ahm7G{J}&qv8Xy>l-h@40T-uyHj9*U!=x;|pCDahk}6@T84rweBg5 zI)J?tGT61+!CRymY+KsS`DTDUbZCVJbwqqKS0bId@MPTDL#_IJ{5B5++#vZ>uViPQgT}`$=M^;e*|-mjXaE=Lvq?%*5|)e7A%Ex&a?qIIG7dvexMeE2z&s3OXe)3l~g>P~vk$ z3;XIMBR&gfH@#N*!*)!`Heb#@yw?)USIdSIXTdQwX?5^jnc*DGw6Rdte;4o}FEsbe z!r)sD*guW?7`NqZ1mO#k6OMr>WH5gd-Nj9h-igC^GnDrZnxJ?6rcEV7&WC z14r{C+=TS}>_#rRwhdPWZ*IJ`i{^tO{C%B$KH$_Im-8nWJ+@1|q+%?oXE>RBf>CPE z;1QsIiey2_kTUA5&33kI<5n&EFA)6kYD{z#cs@>3=(djxL|4)Cro$sZ-iy<|cX}mi z4Velax9brEi3k@eDQWkziKq`~l$AL{2ozUE{vIV#ffGCvF`8RzwXsvm=&{!q9YApw ztWVw_e$>BI=k}R+9@TB4QaLHs;4L3Fp|R_Xlm(#znot9;8l@etnQYhRgS_0F=W~xh zu}wnt z2`ypjICe`$gZx$dv6f!l)>;QTC4M7?iUwJAh0iYrA z$|wir2Z9-GbuDsFMt7I)5IbQq9RI=OnY!kJK>t%9UhG^L5eov*vuK(aC)EzX|4m14 zGkO`a{R+BA=luP$L(6ksY$GVo+FQ+>-<5Eq>J~Yro<7{q^nc40!P#*3MDztNp2tOu za7J{b6t)cKghID@(@y-D1R`LaQ9UYb2PpOJ-(HYQ`|Yime=ucR>!_8}2RBV+$6M1T zL5&ThijbviHzLm%=$45EY{C#zmye-FnTJXpc?>l~M z($D2-phfUF*b4)|S4}I;y^k$%q#dsy2T&+Bod?|xe;#7H7Kki{FS8?bP4CfzdYukl;~CdS0LAF=kE1iPp8t3{~R9|d7Rq3kObRP zg46_c8U47bGt7q-)H0c=xV7L1$(SuJr_iI{7BeuL)OX{0RA+!~d(a}#gx5HdjnV`X zG~G}Q0l{dH{&s;e`Q}ct!yg^K!XMn_C$fA*oNr_^ZLd`v`t$%MaTR?TPUZ&IS^Q76Fq)E(dpzFV>p8rdtn8ZHk? z1Pu0xPzkTGqVYS98bEGjY+E8}rS0Hi zcpVfvE^GVk+oN=udURE32Fm?Zis|%HW90^dWQBpWWhwRa$R_675xqe`+Y;rUxArte zntEf|w6gXG!X>4A8Xa_G?v^E@@edOt|9Y46)i%shbFXa09+ogk`PvRf;nlYF_nt_N z?Q>z=^T6c6qVSDR4&!MO##Fm*K3STa(vkP9M&Sk2CB0OxByP|Lzl@*%hZJ6=U7=UN zDeJ>DV=0u;-HUoAoMR;Y9w$j7j(hh^(s&fk&3?l-!q8tod2+rh(dt@wD}hidM)gy@ zoEgHS^FM2i2-9I0B$RE{f#%W|0^1K9k{%xw1xGE1BZQ#Kj7@f%({-wjor5~1*H0Qh z{}<%2_5t!MPi*n=sk=(;}}TdjDcTZ^QIZO zAajXLQr2eUdjWZ&d!m+1_}am?>Rd?Iit>F(?aeb$o>)hLikzF{Qr|4zbh_S+V}2Sm zF&WOYgzRB!-I}bWR6-6^r#7n3s^cj)6q;Ugt}rl6>ahprg1n51k9~K#l(SRC(WZEy zU^O0nynIJKoL!9T?FzZ;KiIlG0Q+cy?I4biwnBw%_hwyh4gUR{lgRA0s=eqNwZ4Y@ z0aUj_aKxM3Eu@&%Fh7`cU<9l0kIqe2Q)XTJRwT(932Adun&>$FLsJnwD+U87wt_#u zSU(3madGp`6Zu{L>dDP1LZt~9a?)I~HS2bSZX|lJ!@#fC4PP7vjmKNw4 zvpF6I;hyqb0c^$S3?QSs&ftvypM+jM;HrN!nx|@=M-aO1;9Ui%;(wa%8+wIh9t~u6 zAU<&84Kl+8l1e`89Q>LkJrN>0>Oavx76OQsIo|P0*)aMU<`EoWlQj+P1}a4RQL`!M z_Az^RivL#1`igOdIZxmk93GA>SuGrd`7*SzWN@NIM*~~4z_|iesS=S*2#-kSGkQqR z6dK?4(&$Az7#!T1KY3DSE6w`dhM}hmvpRL13M!+$aMHEj!>D7Vt+>znybd(eF!rN) zWbyVBQCT#DPQ8Kfm+TE)KllBd;pf-VeV7=rqcRFk7~zL2@3rA8YseNrDrplM2j_e} z2=QSFXV9}YfF zq&-Ex(&Er2Cc(CEU;c)63M-y&$}PJ{89k<(X2DhHQP|!gehVF&7G-k1%W2Ja^?#rC z@xT7f{NL#RjxR^r^46E+0V?|t%*Li`jo;+fTdC4hsYf_dV`Nck3zl`;W7v9Lt+BF02f;a#3H_?ADvt}+cWy{m=eD#0+ zU*B{qWibA*p&PcdFb8It5R+AO>)B9xz)wH$6h3Jh<44Lo+*;Rm51XXJF+%ZzQKW}xPEOns7N`^3Sha)601k9LTyP++|*1(z1}6xqlM*d6s0@n}p`k2gq8>Ee1F05>)b` zrNA|)c9gQ?I91c-oW66VzN(fRAIqa#`QD0IjfqiBx$Twt7X7Fu#rei6@5KfEC)VxVyFW(=meH-noeAF($%e9N5W-aM{XnsG#%s)T}}A#Le-d`lut(M2=1fvF7o z9?o|4rCP7HuzjJD=?4FUj4}KDWnhr92sdnGCA#GYPDuaU-H`XKaPE-xYh+Iy!Gf)tnZJL< zFKQD7HS|^zIY0YGMLq%J@pO|0gl(mwBH8Y#b{^R`SYI2Qz_H>8i&$WosPKOnD1b70 zMOH@+vZ@LB&SkE_gXdf-zrSWojF_MFjm|H~%*@!7ICAI1!d^V_N%JW~-Js?LXaLezX1>+NP*svAYb#KN|9;lME(u}MTN^Ll~aP`rs#W2c#uG>RTYGSTc zv^(LmpnZ~5hzo~s>@Gl*6XOO>y==HAFJW=m+I%f1=dJzrFt}+anmBY9l$Ke@gABFV z)u4=!5(BbeuCr5_%KZ?p&zCxH8YT0I^4m>}i&%Rcyi|SvS0=V=QOu>pvcXw^R)cOC zn-ye;x}iyy7Ko>>v%Y$;CH}?oy46y29J&PO!#un%{7$ofE4O$QpVH1{%?6@elDAL` z64a)-K%*#*qv0w+T;k|CYR7A5cb)b=%80^= zQu3g~pjlCahJXfiZryH*Xg?XGcvF|?>gY6wjdawgYO453(pRnmd@`}(4$*wQ=U zIcv;vzrDR=(#+zcKPR(_nCX4DhnmYgGi7yocIXHuB$168fU*ZpHjH8n#V>d#zV7(^ ztQeo?ek{CTt@UhH*e&TKb$EMEJFE~CYCCqzZrw%KLu8un0m0vZ^WsjUL*|5EBSxI@ z&P3GD=Ij#D2v<`(^kV-R}IF3~H0!d-%||F1() z_1&hx&3tE;z3W|}U%RD`o3Eb#a43>(wl+&6d*sV4N6D1d zM#@qHRT6lf0RyqZ#vJUmy}LbXUsFNK!W2(ee~LCdN{mew+&izYzmAtWFK2p1;;H?N z{a)J5+j>jgMau2PuNF_*+%Pe}?*kJz2O1XJAl8lUqn(9Xd*vOcSRkO%^SQs@og-=t~V-V``*ldyY* zN2p+aIiBLMe*L@1CA%Q9KG?jEE(Pj0gxW6+!z4L$U}qt_xmb-P*tMj>J=BSNH%wx00i$pQ%@uEMClHtsFB5 zx6B>MFUzCO#=>qfGc#8kYfhDY5NTS1-N5GK9w1pmya60=mxQ0&OD>OHPWv44)p&60 z-l-Sn-u~fS*G}6;t9&wL+nsNEf(4+v^M5cwD7YD3oeQ8m@sRIC1+{Xaj_;@bF15cJ z7iesxsa)PLAjq9X!~)=8C0dtf4j!K)QbDqcR)f?Ur7zc7cwD&f;3grOU)c7NH9ymC zZ`mjBXSr+)5mYeb^$B$n!WB$FF>N~ZuM_Sk!Y3Zbh1~Hg$!GDo@gmL+R>s0HNkXRR zDlPy_@Fs+B(WD%_&-~zk_jd{OoSV;Kv+kA>*zmuF=4YG@;Ur+&ek12=JFeP|8j_Y{ zJoiH5@`D(6G)N}eL5Mu&bRRY~CK^Amwqo>QhCs+9r5XCRfDv%D8$G~AZ785CHf4`W zkE?eKH>WMkSi;@q;{JR%U)SwIXL)MI-T!wNjE&pb1g^t0LWQPC>Lmt~Gg@vlzPUa8 z7*f;P?k4yZmw9So^3If6H%EntoH)BkH*?wmu1`bz)f89IN{Pgj1g;o{mPL?)d0H@W znuv;$xCre#tCX$z->MyUp~f}u?f1xI)3;}@Du~7%F;ei5Jo;9{cW89~w`uGn>C`FT zK`C56mccy-)shanDQu*bmPw-HxGs>u`rK_>Js6BG(krem-nf3n{)<9-LAaGTnc+9U zV*k);OA~21+Y>3?8T?o`ER9y`*#0(ccV#^(?uA%D-jTb@W6WkN-d8Facje5iaX)`O z5vKk5c0Z(~s8i`B7a>4mh=~qju9mkT_+bcnNN_^m$RBU?5g+T?zjwDg5%|7D>TwRI z8*##1Iw6P8Uuv+heecrouH?0!?-kk9W_uUH8 zHJzVr3wLPAW!L9koA~{Sab~buo^H8yHKiqo^A@onRa?gJUDUXlwWZYnF7^cM)nl3K z#6c11{rfKmzF8^wAXN9?4h2}VGcua1v{zi^Oa6G4O;0D9=^DFk5^REuiAJ4T z*y3=PU?;zS$68Y4UZGdMRNQ*xBv7atO&KEDrUL4~vuvU_VT%jmqm)2zNYqvhH|Ijv z9QhGX1+VL;B&%y1Uu)&xZGV^cf!4UM_Z?k@d4_VBn`MR`?{qXNHpX8aRD)iJef*fk zYs_z^((`K!216A8`%sVhUT%m=`2f9I=w+KKr=*obCHAEz{{cyg`sAhQNe3nYT3eov(%-fv8=O#M5W68V|Nh%+VG!0CbX1B!{!g)M@LE02^ zKY|k_Px{BnYew_YPUTOGK{1_Q*M)9R)7+?3eAS4OC$T;C$@tL*WxSZj(>sEbjni)q z_|iva%zpWuc__^yVJPu(7rQdbIGPN$)k-I5h*g52G)X;`-cPV0DqfC*w=0YoX%7`g z%AbU>XX$^Ci4Ix3KFB6+h+S1NzhSVqFt|S-iTDL(0~LaPgl+=BzXT2==5D%XeLn%^ zw%(4Y{&1?`iJNb!MQ|8bwnEI(aa~`NPqwh2LniY8K-Kuu{?>jM6nEKdQ8yuPvIB!7 z_5@95#49itGNDPAtWKnXDBKHM@U8wGaXemhM0?&jrjyucJGz79{SC7+=C@}0zxiSN zukZf~GRWtVa-Y&H7JB*Jn%GH?a`nqUt_xY;9KUtDednsbudh@Gm$K=Juc}=eAEHbZ z3_eHT3NVoRI>nEKATopF>~h73?h`Ki=O`W0X8wG=hdFWKTbxJT`|82GsdRamlgF06 ztg!2HlIArIpuUidBfLP8Jn%aQXJiWsrGJi`+wRb==~Z;~Y{r#Ao33rb8U0%; z3BEE3GdE>9zxfd9if&*`BzB{t__ncg3GD)D$oFDCuSup`YcfoA$t6;LN^ya{ZvHl% zbt7Q9Z$-Qr#{D1c{W)v4M0A@f&Hc2EbT=@GaaR zR{j6^l}jR^~PK~xRpaT)8Rn1%b zl`qxWv

    yuRjmtO=&7rv(Km9A>Bb9jgSv1oa<;vQ43|oqDvHtgP!C*_?9mAvhxtF zw842)Sj;}h`cT~29VJKQsGP8X-iR^nwN#G-XgOHD_!M1e&2TRR8+~5Ik z&E;}eF%`({7@nTSQE=lEwrL9%iX9;LYCm<)=1r(PAD{hBjpk$Pw_>Rw3%N%4WqJAo z1Yw4*KaD0lhaWzj0D_0a$9Z{&%$TWmq=mP+Wj$7?KDHgK5>50d*dq?n8bS2;pPsOA zx!)dJBq1ULh{zwHa$ih6gL*=LhIXAjhGM4|dYz7G&+@BoyJPliEu3pWzq@M@u`cNK zZOYPvp6}QXhpTdh!aW04Bc9&J{h9>YN9;J#4Y;C!t!zwy!TCHN$E{?b!v#VK)c`;T zZ2R%RYZ4=-u8jZn)(7l%lHFkmK;YL({~TD8r0#T2)?krsUG!!{eaD z`RmPWjMLemV21wLaAP#&w+WvY?D2Yz6qrobU@Du0vMRmv=R_v{V7)sleLe{0B|5bk z%w%9}r^O7%{B@y9f~Q%B24bv9vtN7T8^TIxHt};enm+POl+(1s!ao@LdUM4ux;a&| zo*Bpgj_ToYXIQ-1gqLiuz>NmikVGQsHNRDygy@3>#wj}#&%qpgr7tj#2YBjv(3bYk zxw%L%k2u#tdnF-R<_aaY1Kj1GOq6=so?RORqciKqvs<~A67HnYx+8ugEAT{f>ZOQL z4KNd_O^-((eSAvz^P_J}H}cHxYAmAu%$~K0L2mq3JEHT%&qV?c z@7@LU8qnvY0m_O2@kB0LrZ>Ifo6XEY>LH;7e>xB^j#L31=OFDk?3T<6B&uYcDqI-% z5B`H)&2yofi3qbrvq`-DpDqV^2745EnE*YhiSst24=&d5K>rNneC38fpLs1>OIu>Pl=&Ycz^fOM#S?j{pkwHGL^n=ow=?^8 z&P{Mc$W|TBA0|FNz3uhcv)1X=>3jAbhh3-moxa`VnMQy{OINVxM#+40BWVi={t#T7 zKHre~g}}ND^CA7QQH}cVrpj?_m=NKvqxd=GZFEa_EuRB0F(mF$!rY@98lf7ts?P5s z?rHUC5rOIqq&OdEVheN0h-9^7HSg300H-%v6x`(iW)cfB!bTT7Lx>z4*WiFIZgz<` z8;lsL4R+9e@U)l9txobjtDkSAHg>6XWTicajeOj3En{l!cGkO-%0D>u8Yn$}Me-+k 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 literal 0 HcmV?d00001 From 2802e96b919635f1a9e4d562ea4e27b25e72ea9b Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Tue, 22 Aug 2023 11:29:18 +0800 Subject: [PATCH 17/30] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b690ad0f..e53b6ec4 100644 --- a/README.md +++ b/README.md @@ -441,6 +441,6 @@ $ python startup.py --all-webui --model-name Qwen-7B-Chat ## 项目交流群 -二维码 +二维码 🎉 langchain-ChatGLM 项目微信交流群,如果你也对本项目感兴趣,欢迎加入群聊参与讨论交流。 From 16542f20b4c538982678113fc08a643b1d28d33f Mon Sep 17 00:00:00 2001 From: zqt <1178747941@qq.com> Date: Tue, 22 Aug 2023 16:52:04 +0800 Subject: [PATCH 18/30] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dpg=E5=92=8Cmilvus=20kbs?= =?UTF-8?q?ervice=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/knowledge_base/kb_service/milvus_kb_service.py | 5 +++-- server/knowledge_base/kb_service/pg_kb_service.py | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/server/knowledge_base/kb_service/milvus_kb_service.py b/server/knowledge_base/kb_service/milvus_kb_service.py index f9c40c02..87588ede 100644 --- a/server/knowledge_base/kb_service/milvus_kb_service.py +++ b/server/knowledge_base/kb_service/milvus_kb_service.py @@ -45,10 +45,10 @@ class MilvusKBService(KBService): def do_drop_kb(self): self.milvus.col.drop() - def do_search(self, query: str, top_k: int, score_threshold: float, embeddings: Embeddings) -> List[Document]: + def do_search(self, query: str, top_k: int, embeddings: Embeddings): # todo: support score threshold self._load_milvus(embeddings=embeddings) - return self.milvus.similarity_search(query, top_k, score_threshold=SCORE_THRESHOLD) + return self.milvus.similarity_search_with_score(query, top_k) def add_doc(self, kb_file: KnowledgeFile): """ @@ -76,6 +76,7 @@ class MilvusKBService(KBService): if __name__ == '__main__': # 测试建表使用 from server.db.base import Base, engine + Base.metadata.create_all(bind=engine) milvusService = MilvusKBService("test") milvusService.add_doc(KnowledgeFile("README.md", "test")) diff --git a/server/knowledge_base/kb_service/pg_kb_service.py b/server/knowledge_base/kb_service/pg_kb_service.py index a3f9318e..d51a113a 100644 --- a/server/knowledge_base/kb_service/pg_kb_service.py +++ b/server/knowledge_base/kb_service/pg_kb_service.py @@ -43,7 +43,7 @@ class PGKBService(KBService): ''')) connect.commit() - def do_search(self, query: str, top_k: int, score_threshold: float, embeddings: Embeddings) -> List[Document]: + def do_search(self, query: str, top_k: int, embeddings: Embeddings): # todo: support score threshold self._load_pg_vector(embeddings=embeddings) return self.pg_vector.similarity_search_with_score(query, top_k) @@ -76,6 +76,7 @@ class PGKBService(KBService): if __name__ == '__main__': from server.db.base import Base, engine + Base.metadata.create_all(bind=engine) pGKBService = PGKBService("test") pGKBService.create_kb() From 42f6b2d1f659a46ea51f334a7cf9039f5563d30d Mon Sep 17 00:00:00 2001 From: Zhi-guo Huang Date: Tue, 22 Aug 2023 23:53:29 +0800 Subject: [PATCH 19/30] Update README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit lora加载详细步骤参考 --- README.md | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index e53b6ec4..bfdee2e9 100644 --- a/README.md +++ b/README.md @@ -298,24 +298,13 @@ $ python server/llm_api_shutdown.py --serve all 亦可单独停止一个 FastChat 服务模块,可选 [`all`, `controller`, `model_worker`, `openai_api_server`] -##### 5.1.3 PEFT 加载 +##### 5.1.3 PEFT 加载(包括lora,p-tuning,prefix tuning, prompt tuning,ia等) 本项目基于 FastChat 加载 LLM 服务,故需以 FastChat 加载 PEFT 路径,即保证路径名称里必须有 peft 这个词,配置文件的名字为 adapter_config.json,peft 路径下包含 model.bin 格式的 PEFT 权重。 +详细步骤参考[加载lora微调后模型失效](https://github.com/chatchat-space/Langchain-Chatchat/issues/1130#issuecomment-1685291822) -示例代码如下: +![image](https://github.com/chatchat-space/Langchain-Chatchat/assets/22924096/4e056c1c-5c4b-4865-a1af-859cd58a625d) -```shell -PEFT_SHARE_BASE_WEIGHTS=true python3 -m fastchat.serve.multi_model_worker \ - --model-path /data/chris/peft-llama-dummy-1 \ - --model-names peft-dummy-1 \ - --model-path /data/chris/peft-llama-dummy-2 \ - --model-names peft-dummy-2 \ - --model-path /data/chris/peft-llama-dummy-3 \ - --model-names peft-dummy-3 \ - --num-gpus 2 -``` - -详见 [FastChat 相关 PR](https://github.com/lm-sys/fastchat/pull/1905#issuecomment-1627801216) #### 5.2 启动 API 服务 From 44edce6bcf715ae1ec66fb5f1ca78afd22b8f177 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Wed, 23 Aug 2023 08:35:26 +0800 Subject: [PATCH 20/30] =?UTF-8?q?fix=20#1142:=20=E5=9C=A8History=E4=B8=AD?= =?UTF-8?q?=E4=BD=BF=E7=94=A8jinja2=E6=A8=A1=E6=9D=BF=E4=BB=A3=E6=9B=BFf-s?= =?UTF-8?q?tring=EF=BC=8C=E9=81=BF=E5=85=8D=E6=B6=88=E6=81=AF=E4=B8=AD?= =?UTF-8?q?=E5=90=AB=E6=9C=89{=20}=E6=97=B6=E5=87=BA=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- configs/model_config.py.example | 6 +- server/chat/chat.py | 5 +- server/chat/github_chat.py | 109 ----------------------------- server/chat/knowledge_base_chat.py | 5 +- server/chat/search_engine_chat.py | 5 +- server/chat/utils.py | 29 +++++++- 6 files changed, 41 insertions(+), 118 deletions(-) delete mode 100644 server/chat/github_chat.py diff --git a/configs/model_config.py.example b/configs/model_config.py.example index 49c4c527..3e84b8b6 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -142,12 +142,12 @@ SEARCH_ENGINE_TOP_K = 5 # nltk 模型存储路径 NLTK_DATA_PATH = os.path.join(os.path.dirname(os.path.dirname(__file__)), "nltk_data") -# 基于本地知识问答的提示词模版 +# 基于本地知识问答的提示词模版(使用Jinja2语法,简单点就是用双大括号代替f-string的单大括号 PROMPT_TEMPLATE = """【指令】根据已知信息,简洁和专业的来回答问题。如果无法从中得到答案,请说 “根据已知信息无法回答该问题”,不允许在答案中添加编造成分,答案请使用中文。 -【已知信息】{context} +【已知信息】{{ context }} -【问题】{question}""" +【问题】{{ question }}""" # API 是否开启跨域,默认为False,如果需要开启,请设置为True # is open cross domain diff --git a/server/chat/chat.py b/server/chat/chat.py index 2bc21db5..3c4ebcf8 100644 --- a/server/chat/chat.py +++ b/server/chat/chat.py @@ -21,7 +21,7 @@ def chat(query: str = Body(..., description="用户输入", examples=["恼羞成 ), stream: bool = Body(False, description="流式输出"), ): - history = [History(**h) if isinstance(h, dict) else h for h in history] + history = [History.from_data(h) for h in history] async def chat_iterator(query: str, history: List[History] = [], @@ -37,8 +37,9 @@ def chat(query: str = Body(..., description="用户输入", examples=["恼羞成 model_name=LLM_MODEL ) + input_msg = History(role="user", content="{{ input }}").to_msg_template(False) chat_prompt = ChatPromptTemplate.from_messages( - [i.to_msg_tuple() for i in history] + [("human", "{input}")]) + [i.to_msg_template() for i in history] + [input_msg]) chain = LLMChain(prompt=chat_prompt, llm=model) # Begin a task that runs in the background. diff --git a/server/chat/github_chat.py b/server/chat/github_chat.py deleted file mode 100644 index b1615488..00000000 --- a/server/chat/github_chat.py +++ /dev/null @@ -1,109 +0,0 @@ -from langchain.document_loaders.github import GitHubIssuesLoader -from fastapi import Body -from fastapi.responses import StreamingResponse -from configs.model_config import (llm_model_dict, LLM_MODEL, SEARCH_ENGINE_TOP_K, PROMPT_TEMPLATE) -from server.chat.utils import wrap_done -from server.utils import BaseResponse -from langchain.chat_models import ChatOpenAI -from langchain import LLMChain -from langchain.callbacks import AsyncIteratorCallbackHandler -from typing import AsyncIterable -import asyncio -from langchain.prompts.chat import ChatPromptTemplate -from typing import List, Optional, Literal -from server.chat.utils import History -from langchain.docstore.document import Document -import json -import os -from functools import lru_cache -from datetime import datetime - - -GITHUB_PERSONAL_ACCESS_TOKEN = os.environ.get("GITHUB_PERSONAL_ACCESS_TOKEN") - - -@lru_cache(1) -def load_issues(tick: str): - ''' - set tick to a periodic value to refresh cache - ''' - loader = GitHubIssuesLoader( - repo="chatchat-space/langchain-chatglm", - access_token=GITHUB_PERSONAL_ACCESS_TOKEN, - include_prs=True, - state="all", - ) - docs = loader.load() - return docs - - -def -def github_chat(query: str = Body(..., description="用户输入", examples=["本项目最新进展"]), - top_k: int = Body(SEARCH_ENGINE_TOP_K, description="检索结果数量"), - include_prs: bool = Body(True, description="是否包含PR"), - state: Literal['open', 'closed', 'all'] = Body(None, description="Issue/PR状态"), - creator: str = Body(None, description="创建者"), - history: List[History] = Body([], - description="历史对话", - examples=[[ - {"role": "user", - "content": "介绍一下本项目"}, - {"role": "assistant", - "content": "LangChain-Chatchat (原 Langchain-ChatGLM): 基于 Langchain 与 ChatGLM 等大语言模型的本地知识库问答应用实现。"}]] - ), - stream: bool = Body(False, description="流式输出"), - ): - if GITHUB_PERSONAL_ACCESS_TOKEN is None: - return BaseResponse(code=404, msg=f"使用本功能需要 GITHUB_PERSONAL_ACCESS_TOKEN") - - async def chat_iterator(query: str, - search_engine_name: str, - top_k: int, - history: Optional[List[History]], - ) -> AsyncIterable[str]: - callback = AsyncIteratorCallbackHandler() - model = ChatOpenAI( - streaming=True, - verbose=True, - callbacks=[callback], - openai_api_key=llm_model_dict[LLM_MODEL]["api_key"], - openai_api_base=llm_model_dict[LLM_MODEL]["api_base_url"], - model_name=LLM_MODEL - ) - - docs = lookup_search_engine(query, search_engine_name, top_k) - context = "\n".join([doc.page_content for doc in docs]) - - chat_prompt = ChatPromptTemplate.from_messages( - [i.to_msg_tuple() for i in history] + [("human", PROMPT_TEMPLATE)]) - - chain = LLMChain(prompt=chat_prompt, llm=model) - - # Begin a task that runs in the background. - task = asyncio.create_task(wrap_done( - chain.acall({"context": context, "question": query}), - callback.done), - ) - - source_documents = [ - f"""出处 [{inum + 1}] [{doc.metadata["source"]}]({doc.metadata["source"]}) \n\n{doc.page_content}\n\n""" - for inum, doc in enumerate(docs) - ] - - if stream: - async for token in callback.aiter(): - # Use server-sent-events to stream the response - yield json.dumps({"answer": token, - "docs": source_documents}, - ensure_ascii=False) - else: - answer = "" - async for token in callback.aiter(): - answer += token - yield json.dumps({"answer": token, - "docs": source_documents}, - ensure_ascii=False) - await task - - return StreamingResponse(search_engine_chat_iterator(query, search_engine_name, top_k, history), - media_type="text/event-stream") diff --git a/server/chat/knowledge_base_chat.py b/server/chat/knowledge_base_chat.py index 84c62f06..4914beb1 100644 --- a/server/chat/knowledge_base_chat.py +++ b/server/chat/knowledge_base_chat.py @@ -38,7 +38,7 @@ def knowledge_base_chat(query: str = Body(..., description="用户输入", examp if kb is None: return BaseResponse(code=404, msg=f"未找到知识库 {knowledge_base_name}") - history = [History(**h) if isinstance(h, dict) else h for h in history] + history = [History.from_data(h) for h in history] async def knowledge_base_chat_iterator(query: str, kb: KBService, @@ -57,8 +57,9 @@ def knowledge_base_chat(query: str = Body(..., description="用户输入", examp docs = search_docs(query, knowledge_base_name, top_k, score_threshold) context = "\n".join([doc.page_content for doc in docs]) + input_msg = History(role="user", content=PROMPT_TEMPLATE).to_msg_template(False) chat_prompt = ChatPromptTemplate.from_messages( - [i.to_msg_tuple() for i in history] + [("human", PROMPT_TEMPLATE)]) + [i.to_msg_template() for i in history] + [input_msg]) chain = LLMChain(prompt=chat_prompt, llm=model) diff --git a/server/chat/search_engine_chat.py b/server/chat/search_engine_chat.py index 15834d08..638c3be6 100644 --- a/server/chat/search_engine_chat.py +++ b/server/chat/search_engine_chat.py @@ -73,6 +73,8 @@ def search_engine_chat(query: str = Body(..., description="用户输入", exampl if search_engine_name not in SEARCH_ENGINES.keys(): return BaseResponse(code=404, msg=f"未支持搜索引擎 {search_engine_name}") + history = [History.from_data(h) for h in history] + async def search_engine_chat_iterator(query: str, search_engine_name: str, top_k: int, @@ -91,8 +93,9 @@ def search_engine_chat(query: str = Body(..., description="用户输入", exampl docs = lookup_search_engine(query, search_engine_name, top_k) context = "\n".join([doc.page_content for doc in docs]) + input_msg = History(role="user", content=PROMPT_TEMPLATE).to_msg_template(False) chat_prompt = ChatPromptTemplate.from_messages( - [i.to_msg_tuple() for i in history] + [("human", PROMPT_TEMPLATE)]) + [i.to_msg_template() for i in history] + [input_msg]) chain = LLMChain(prompt=chat_prompt, llm=model) diff --git a/server/chat/utils.py b/server/chat/utils.py index f8afb105..2167f10e 100644 --- a/server/chat/utils.py +++ b/server/chat/utils.py @@ -1,6 +1,7 @@ import asyncio -from typing import Awaitable +from typing import Awaitable, List, Tuple, Dict, Union from pydantic import BaseModel, Field +from langchain.prompts.chat import ChatMessagePromptTemplate async def wrap_done(fn: Awaitable, event: asyncio.Event): @@ -28,3 +29,29 @@ class History(BaseModel): def to_msg_tuple(self): return "ai" if self.role=="assistant" else "human", self.content + + def to_msg_template(self, is_raw=True) -> ChatMessagePromptTemplate: + role_maps = { + "ai": "assistant", + "human": "user", + } + role = role_maps.get(self.role, self.role) + if is_raw: # 当前默认历史消息都是没有input_variable的文本。 + content = "{% raw %}" + self.content + "{% endraw %}" + else: + content = self.content + + return ChatMessagePromptTemplate.from_template( + content, + "jinja2", + role=role, + ) + + @classmethod + def from_data(cls, h: Union[List, Tuple, Dict]) -> "History": + if isinstance(h, (list,tuple)) and len(h) >= 2: + h = cls(role=h[0], content=h[1]) + elif isinstance(h, dict): + h = cls(**h) + + return h From 351b62f7a7e0447d2605136f9ad1994f54804385 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Wed, 23 Aug 2023 15:26:52 +0800 Subject: [PATCH 21/30] fix part of #1206: add/delete/update_doc() get unexpected keyword argument 'not_refresh_vs_cache` --- server/knowledge_base/kb_service/milvus_kb_service.py | 6 +++--- server/knowledge_base/kb_service/pg_kb_service.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/server/knowledge_base/kb_service/milvus_kb_service.py b/server/knowledge_base/kb_service/milvus_kb_service.py index 87588ede..ba74c141 100644 --- a/server/knowledge_base/kb_service/milvus_kb_service.py +++ b/server/knowledge_base/kb_service/milvus_kb_service.py @@ -50,7 +50,7 @@ class MilvusKBService(KBService): self._load_milvus(embeddings=embeddings) return self.milvus.similarity_search_with_score(query, top_k) - def add_doc(self, kb_file: KnowledgeFile): + def add_doc(self, kb_file: KnowledgeFile, **kwargs): """ 向知识库添加文件 """ @@ -60,10 +60,10 @@ class MilvusKBService(KBService): status = add_doc_to_db(kb_file) return status - def do_add_doc(self, docs: List[Document], embeddings: Embeddings): + def do_add_doc(self, docs: List[Document], embeddings: Embeddings, **kwargs): pass - def do_delete_doc(self, kb_file: KnowledgeFile): + def do_delete_doc(self, kb_file: KnowledgeFile, **kwargs): filepath = kb_file.filepath.replace('\\', '\\\\') delete_list = [item.get("pk") for item in self.milvus.col.query(expr=f'source == "{filepath}"', output_fields=["pk"])] diff --git a/server/knowledge_base/kb_service/pg_kb_service.py b/server/knowledge_base/kb_service/pg_kb_service.py index d51a113a..38d80658 100644 --- a/server/knowledge_base/kb_service/pg_kb_service.py +++ b/server/knowledge_base/kb_service/pg_kb_service.py @@ -48,7 +48,7 @@ class PGKBService(KBService): self._load_pg_vector(embeddings=embeddings) return self.pg_vector.similarity_search_with_score(query, top_k) - def add_doc(self, kb_file: KnowledgeFile): + def add_doc(self, kb_file: KnowledgeFile, **kwargs): """ 向知识库添加文件 """ @@ -58,10 +58,10 @@ class PGKBService(KBService): status = add_doc_to_db(kb_file) return status - def do_add_doc(self, docs: List[Document], embeddings: Embeddings): + def do_add_doc(self, docs: List[Document], embeddings: Embeddings, **kwargs): pass - def do_delete_doc(self, kb_file: KnowledgeFile): + def do_delete_doc(self, kb_file: KnowledgeFile, **kwargs): with self.pg_vector.connect() as connect: filepath = kb_file.filepath.replace('\\', '\\\\') connect.execute( From 4bcc74d214c1c7d6f1e16b780fa977df75a7ae73 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Wed, 23 Aug 2023 21:52:12 +0800 Subject: [PATCH 22/30] update prompt template --- configs/model_config.py.example | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configs/model_config.py.example b/configs/model_config.py.example index 3e84b8b6..0dab00f3 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -143,11 +143,11 @@ SEARCH_ENGINE_TOP_K = 5 NLTK_DATA_PATH = os.path.join(os.path.dirname(os.path.dirname(__file__)), "nltk_data") # 基于本地知识问答的提示词模版(使用Jinja2语法,简单点就是用双大括号代替f-string的单大括号 -PROMPT_TEMPLATE = """【指令】根据已知信息,简洁和专业的来回答问题。如果无法从中得到答案,请说 “根据已知信息无法回答该问题”,不允许在答案中添加编造成分,答案请使用中文。 +PROMPT_TEMPLATE = """<指令>根据已知信息,简洁和专业的来回答问题。如果无法从中得到答案,请说 “根据已知信息无法回答该问题”,不允许在答案中添加编造成分,答案请使用中文。 -【已知信息】{{ context }} +<已知信息>{{ context }} -【问题】{{ question }}""" +<问题>{{ question }}""" # API 是否开启跨域,默认为False,如果需要开启,请设置为True # is open cross domain From 7291e77978bd51da90501d674447470847d949cc Mon Sep 17 00:00:00 2001 From: zR <2448370773@qq.com> Date: Wed, 23 Aug 2023 22:55:53 +0800 Subject: [PATCH 23/30] support for bge-large-zh-noinstruct and openai text-embedding-ada-002 (#1119) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * support for bge-large-zh-noinstruct and openai text-embedding-ada-002 * 完善了readme,修改了BGE模型的载入方式 * 补充了readme中bge-large-zh-noinstruct的信息 * Update faiss_kb_service.py * Update utils.py --------- Co-authored-by: zR Co-authored-by: imClumsyPanda --- README.md | 3 +++ configs/model_config.py.example | 4 +++- .../kb_service/faiss_kb_service.py | 16 +++++++++++++--- server/knowledge_base/utils.py | 15 +++++++++++++-- 4 files changed, 32 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index bfdee2e9..295dcf37 100644 --- a/README.md +++ b/README.md @@ -126,6 +126,7 @@ docker run -d --gpus all -p 80:8501 registry.cn-beijing.aliyuncs.com/chatchat/ch - [BAAI/bge-small-zh](https://huggingface.co/BAAI/bge-small-zh) - [BAAI/bge-base-zh](https://huggingface.co/BAAI/bge-base-zh) - [BAAI/bge-large-zh](https://huggingface.co/BAAI/bge-large-zh) +- [BAAI/bge-large-zh-noinstruct](https://huggingface.co/BAAI/bge-large-zh-noinstruct) - [text2vec-base-chinese-sentence](https://huggingface.co/shibing624/text2vec-base-chinese-sentence) - [text2vec-base-chinese-paraphrase](https://huggingface.co/shibing624/text2vec-base-chinese-paraphrase) - [text2vec-base-multilingual](https://huggingface.co/shibing624/text2vec-base-multilingual) @@ -133,6 +134,7 @@ docker run -d --gpus all -p 80:8501 registry.cn-beijing.aliyuncs.com/chatchat/ch - [GanymedeNil/text2vec-large-chinese](https://huggingface.co/GanymedeNil/text2vec-large-chinese) - [nghuyong/ernie-3.0-nano-zh](https://huggingface.co/nghuyong/ernie-3.0-nano-zh) - [nghuyong/ernie-3.0-base-zh](https://huggingface.co/nghuyong/ernie-3.0-base-zh) +- [OpenAI/text-embedding-ada-002](https://platform.openai.com/docs/guides/embeddings) --- @@ -206,6 +208,7 @@ embedding_model_dict = { "m3e-base": "/Users/xxx/Downloads/m3e-base", } ``` +如果你选择使用OpenAI的Embedding模型,请将模型的```key```写入`embedding_model_dict`中。使用该模型,你需要鞥能够访问OpenAI官的API,或设置代理。 ### 4. 知识库初始化与迁移 diff --git a/configs/model_config.py.example b/configs/model_config.py.example index 0dab00f3..3d9e02f3 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -24,7 +24,9 @@ embedding_model_dict = { "m3e-large": "moka-ai/m3e-large", "bge-small-zh": "BAAI/bge-small-zh", "bge-base-zh": "BAAI/bge-base-zh", - "bge-large-zh": "BAAI/bge-large-zh" + "bge-large-zh": "BAAI/bge-large-zh", + "bge-large-zh-noinstruct": "BAAI/bge-large-zh-noinstruct", + "text-embedding-ada-002": os.environ.get("OPENAI_API_KEY") } # 选用的 Embedding 名称 diff --git a/server/knowledge_base/kb_service/faiss_kb_service.py b/server/knowledge_base/kb_service/faiss_kb_service.py index 9fccfa23..b3f5439b 100644 --- a/server/knowledge_base/kb_service/faiss_kb_service.py +++ b/server/knowledge_base/kb_service/faiss_kb_service.py @@ -13,7 +13,8 @@ from functools import lru_cache from server.knowledge_base.utils import get_vs_path, load_embeddings, KnowledgeFile from langchain.vectorstores import FAISS from langchain.embeddings.base import Embeddings -from langchain.embeddings.huggingface import HuggingFaceEmbeddings +from langchain.embeddings.huggingface import HuggingFaceEmbeddings,HuggingFaceBgeEmbeddings +from langchain.embeddings.openai import OpenAIEmbeddings from typing import List from langchain.docstore.document import Document from server.utils import torch_gc @@ -21,10 +22,19 @@ from server.utils import torch_gc # make HuggingFaceEmbeddings hashable def _embeddings_hash(self): - return hash(self.model_name) - + if isinstance(self, HuggingFaceEmbeddings): + return hash(self.model_name) + elif isinstance(self, HuggingFaceBgeEmbeddings): + return hash(self.model_name) + elif isinstance(self, OpenAIEmbeddings): + return hash(self.model) HuggingFaceEmbeddings.__hash__ = _embeddings_hash +OpenAIEmbeddings.__hash__ = _embeddings_hash +HuggingFaceBgeEmbeddings.__hash__ = _embeddings_hash + +_VECTOR_STORE_TICKS = {} + _VECTOR_STORE_TICKS = {} diff --git a/server/knowledge_base/utils.py b/server/knowledge_base/utils.py index 4f0bad9c..da530495 100644 --- a/server/knowledge_base/utils.py +++ b/server/knowledge_base/utils.py @@ -1,5 +1,7 @@ import os from langchain.embeddings.huggingface import HuggingFaceEmbeddings +from langchain.embeddings.openai import OpenAIEmbeddings +from langchain.embeddings import HuggingFaceBgeEmbeddings from configs.model_config import ( embedding_model_dict, KB_ROOT_PATH, @@ -41,11 +43,20 @@ def list_docs_from_folder(kb_name: str): @lru_cache(1) def load_embeddings(model: str, device: str): - embeddings = HuggingFaceEmbeddings(model_name=embedding_model_dict[model], - model_kwargs={'device': device}) + if model == "text-embedding-ada-002": # openai text-embedding-ada-002 + embeddings = OpenAIEmbeddings(openai_api_key=embedding_model_dict[model], chunk_size=CHUNK_SIZE) + elif 'bge-' in model: + embeddings = HuggingFaceBgeEmbeddings(model_name=embedding_model_dict[model], + model_kwargs={'device': device}, + query_instruction="为这个句子生成表示以用于检索相关文章:") + if model == "bge-large-zh-noinstruct": # bge large -noinstruct embedding + embeddings.query_instruction = "" + else: + embeddings = HuggingFaceEmbeddings(model_name=embedding_model_dict[model], model_kwargs={'device': device}) return embeddings + LOADER_DICT = {"UnstructuredFileLoader": ['.eml', '.html', '.json', '.md', '.msg', '.rst', '.rtf', '.txt', '.xml', '.doc', '.docx', '.epub', '.odt', '.pdf', From 3504cb5274a2a7a5feeac436bfc2cce4b8bbe53c Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Wed, 23 Aug 2023 23:04:13 +0800 Subject: [PATCH 24/30] update model_config.py.example --- configs/model_config.py.example | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/configs/model_config.py.example b/configs/model_config.py.example index 3d9e02f3..73d29b7b 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -43,12 +43,6 @@ llm_model_dict = { "api_key": "EMPTY" }, - "chatglm-6b-int4": { - "local_model_path": "THUDM/chatglm-6b-int4", - "api_base_url": "http://localhost:8888/v1", # "name"修改为fastchat服务中的"api_base_url" - "api_key": "EMPTY" - }, - "chatglm2-6b": { "local_model_path": "THUDM/chatglm2-6b", "api_base_url": "http://localhost:8888/v1", # URL需要与运行fastchat服务端的server_config.FSCHAT_OPENAI_API一致 @@ -61,12 +55,6 @@ llm_model_dict = { "api_key": "EMPTY" }, - "vicuna-13b-hf": { - "local_model_path": "", - "api_base_url": "http://localhost:8888/v1", # "name"修改为fastchat服务中的"api_base_url" - "api_key": "EMPTY" - }, - # 调用chatgpt时如果报出: urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='api.openai.com', port=443): # Max retries exceeded with url: /v1/chat/completions # 则需要将urllib3版本修改为1.25.11 From 4899c3b3cc4067a57c840e62782c3b7c957f0cda Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Thu, 24 Aug 2023 11:04:30 +0800 Subject: [PATCH 25/30] set max threads of numexpr to improve performance and ommit warnings --- startup.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/startup.py b/startup.py index 9207307c..df008516 100644 --- a/startup.py +++ b/startup.py @@ -5,6 +5,14 @@ import sys import os from pprint import pprint +# 设置numexpr最大线程数,默认为CPU核心数 +try: + import numexpr + n_cores = numexpr.utils.detect_number_of_cores() + os.environ["NUMEXPR_MAX_THREADS"] = str(n_cores) +except: + pass + sys.path.append(os.path.dirname(os.path.dirname(__file__))) from configs.model_config import EMBEDDING_DEVICE, EMBEDDING_MODEL, llm_model_dict, LLM_MODEL, LLM_DEVICE, LOG_PATH, \ logger From 37454db3ec95d185b4359033f75827017d09fd96 Mon Sep 17 00:00:00 2001 From: zqt <1178747941@qq.com> Date: Thu, 24 Aug 2023 13:51:17 +0800 Subject: [PATCH 26/30] =?UTF-8?q?=E6=B7=BB=E5=8A=A0chatgpt=20=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E4=BB=A3=E7=90=86=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- configs/model_config.py.example | 7 ++++++- server/chat/chat.py | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/configs/model_config.py.example b/configs/model_config.py.example index 49c4c527..4c7010ea 100644 --- a/configs/model_config.py.example +++ b/configs/model_config.py.example @@ -75,10 +75,15 @@ llm_model_dict = { # urllib3.exceptions.NewConnectionError: : # Failed to establish a new connection: [WinError 10060] # 则是因为内地和香港的IP都被OPENAI封了,需要切换为日本、新加坡等地 + + # 如果出现WARNING: Retrying langchain.chat_models.openai.acompletion_with_retry.._completion_with_retry in + # 4.0 seconds as it raised APIConnectionError: Error communicating with OpenAI. + # 需要添加代理访问(正常开的代理软件可能会拦截不上)需要设置配置openai_proxy 或者 使用环境遍历OPENAI_PROXY 进行设置 "gpt-3.5-turbo": { "local_model_path": "gpt-3.5-turbo", "api_base_url": "https://api.openai.com/v1", - "api_key": os.environ.get("OPENAI_API_KEY") + "api_key": os.environ.get("OPENAI_API_KEY"), + "openai_proxy": os.environ.get("OPENAI_PROXY") }, } diff --git a/server/chat/chat.py b/server/chat/chat.py index 2bc21db5..37485915 100644 --- a/server/chat/chat.py +++ b/server/chat/chat.py @@ -34,7 +34,8 @@ def chat(query: str = Body(..., description="用户输入", examples=["恼羞成 callbacks=[callback], openai_api_key=llm_model_dict[LLM_MODEL]["api_key"], openai_api_base=llm_model_dict[LLM_MODEL]["api_base_url"], - model_name=LLM_MODEL + model_name=LLM_MODEL, + openai_proxy=llm_model_dict[LLM_MODEL].get("openai_proxy") ) chat_prompt = ChatPromptTemplate.from_messages( From a0437ba94f8b1d5468a34d1de44b91454eb21e25 Mon Sep 17 00:00:00 2001 From: imClumsyPanda Date: Thu, 24 Aug 2023 14:24:44 +0800 Subject: [PATCH 27/30] Add files via upload --- img/qr_code_56.jpg | Bin 0 -> 205069 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 img/qr_code_56.jpg diff --git a/img/qr_code_56.jpg b/img/qr_code_56.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f17458d2713aa9e767e90ab2c41bbc04bdbe5ec0 GIT binary patch literal 205069 zcmdqI2UHYKw=de{_$Nm}1_cELL_h%n84M&5K~xYyM#+c>h!P|;!9Yepzyt##A}Wq3 zK@=ErR8f#1amXTRhA=eDOwTL*(mD5h@2<1%TkEX#Zfj2$-Bs0l@7lHNw|DJk_A|$z zcH>|#cL=hygmyy^#0_z>h(K(h!~*_7EL$LsKV=BAWs&)3*@;E@?{!!qh*k7o_3wB= z?0>Hh`uua4{r&I1UAgW;5Er<^zE@LIBbDWEWfoR8DEA-tHTLe!W%*Z+xvc-_k(Hjy z_OJ3&&cE0B^OD~`%yCv_^CL%a);3lq=Esd87C=9%)I~qP%fCtTxpM8Qjp|_LSz90fUH-@QcllojwfDCqAgEjIcVF|2{AAr*rVT!&)mAqKq}2aa z@86bqUEKm)z!N$+_qzC9y#{2e3d+_&*Zh8$!$4W=Dj*7!foLExkH3|l{w_QJt^EE^ zozpf)K%GyZEbroZ(G`^EL0Q%LKiv2D4`rXr*MGnF_wk#0ezz-UPJyc!IAx)ukQWpH z`9YVVi%#i zi&roH>F&2~vbqE9S}ug3zw9AM^ebrN5a6z*`R6$c|6vH?7-2G3b^?`3hakpXCX@Dr z$zPTDRyKAvaIkZ*|2{Z4IsP1+e?PeX9NfPTo_`*H zTC=jUga1679Gw5W|KBb!hk-WlW!6H%+^lp~IvdM&h*g+{O_+t*$npe?8pj_3S^h8u zegK_-FfMK$UOpj+m4%Ism7R?P&r%kA>w!VRAva=f-nxA!HZDFb{a!|9*8K+$pX5I+cvkql=*8Q2rDf$6?<+slH#9ai zx3spkcXfa7>Fw+PF)%hhF*!9o^Ke{H%Z4oOeDxczgyO!j9hBcJ z{o&}p$58bD5l8=I=%4&B2Oxen7BFCJ!VnfhQROG`(Ep!L=GXrVc=+~z0S{gOD-RDo za!@BL|sa9S;}#Jh!y5 zMTbC~^ki8*_513TwAc7c_XhkpVjs(Xao$duw3lsLiJh131sL%ei&?Y$kDMmUyZI}i z2-b()yZ`D}3=Qb+zY6n0596KRyZzNY*QCEaQX>9%yrwdX=hN2w|MJHbW1UZq6F>lI z@kUoQcX>ij;+6k#vN5~=v*1)#0#IHrCd8r7ct|8=Vpv8e?ksSHD)#AgJ+kCF^p3Z0 zvy5cfEG3qx=>L3p-?DhT#x3^|iUOM2w{eIG)eT}wv5Dwzxb8yLDRN9>@Og!?z|<$R zTaNo@?mlJRU0miJcV70MNL9rn9eKy6C!=|!a|Pc-sKRw~a79GX#G{X$(OAAPuDsx& zDT(rj-*4m;2j_0Tt?4*8diLnxV+j_YZs)sqLe4MLVvvJYC~p$o5JK#}Uhi5Xpy%V! zLo-=l(m&1Q%06C|%DWI`G}m3Y!Gu_hFnvV2Nde%>lnLdrjp0z6(7Ry`0gf9I3oiPiBqXjZn6|;Y% zH6PGw0chnKv-=mVfQC97KGQvDXd{Rm)JJ(!iJ`$R>{wSW=;!UJNw=c{jF(cvG~; z`>T`Q4Tl$6_DsgQpMCYzEvYv=x3zqc?=rvm(|&U_Pk|P**@ws>d@Y8`i1#={X6rxDE@GvNwC< z#t4Ig;|B|G?pGH!R;5b7Zq>y1!53>ooVFT{jEyBIT{3tPKhK-zZp*g1huFb|3i3X* z1s%K(u^+*cV>}ZQ%Q<&^ly}i(4{Pb>((T;G!XQO_86`Ur5ygrHd&(U%goms?&Ujrk zUVS}BpHHP&%eI?+F}3ugh|l5n0g)!_`STm@_0Ls}2z^aH9Ur9#k;l?jo4 z*>=(;`o^Dn*0sJR|KL7Lf9e?+GNCKQF3W^0zq6q6__w2UNfngGf#w;8D?xZ@I`ng; zePQQc98sm73)>7VdM1-maZ<5}|3gxCsphegX{#NwtuD5Hx6Z^a!k6)gDi>We0p(#r z6G=K_g$o`O&A$3gwAjW%AVZMR%^A9eDy+83=b9FwvPOh)v{ z)=r@9CX7eND;2{|kpms1CTN$wuFNKStQ;T^0rfM5=_n?NLTuB&d8gsXl)`l9?R~EV zI7!?K`1=nntu^$c}=@j;w`B%GFVl&U`oJQpb5p_|&VuzyY_<$@v9sewno6 zMQoRB%fEfrRPo(=^s`Q8nwe0G%-dDC+=?z?h4Q>)LhL9K<4rE4mLqxIV>sdS18U1> zcib*0I{rqZzVv0`xuFf?4=>uv;+Hx1deff~N%80nxb7U*XG zL<|unB}u09brhSyMnl!iUhmdx8>I_YmR?UP2B%|j)}`gi_QDP!x3#^FURu7qJQ0ZN z;T|%JYJw9x=|WcPc=B1_A8U_QD(E{jWXU%gc6R6ZC%>1Slui8(zuWqe^On8eq1j~o zor(g;@;|Iw?7q8Acznm^Qmk?bZGr<1C|@NI#1qC{Lyb!?1bbo=0zW7vTstX6d=q2Y zvmf)$AYRH;wO1lY=xNkhH@@3jHSQWQJTuBGm7?k?g9d^#v+=;N0*&4MDh-3|8eI@p zeOYGJ$b=+_?2u9KlHsD>L@NG~REty-1i#Lj2PTo@65u}st~(rdinRMh7dY(cl}pJHM;h_Ab{4=e<`gX@4_X=cAaqc=**f z6?W%5>Y^hWqrhb}_Z1aK?Qvv}lUyio%MFL%mdLWZ(2i56;bpCliNYykr10Kfd*Scx z!m;-}0y#CqpR=SpnnJ@n{SI=%+rFc014J2AAFivzlTAl|5XPrJl2yi;P;;mXMl9I* zXaBFv@*7uP7Mc27iwwED|MRWvrpinSL&w&)qGB(;>Dmk5i)c8(=6JoC#VKU#N5R?) zE5ApL0~hygA1o4fNc45r!=x@!YV(h?E|K|(@U?JdHpV-wGZ@uf74zz#CV%%@^%3d; zB*tR`iRQ5y*%p8ad%r{#>J1jjW)0oTy$A2pjEzzAO-7) z9H3}T_#_cx!*s4u^^&TeJ$U&`xWQji#F(0(BE2x2k5#ytTCS_y?B% zmBM;ggIsauAi{*=dgGRo!#}FQ+XC=-FJq_s6S9G;3r3hlahfC;6LYLHu(0k?#YhTO zm%_+O+D4vi<1FAm>1aRfurHxTJFRO|CG=Lj5qGi+=H7hr^Qrv1>dkmDm^6+@6x8bo zu>*bea4c5l^1@oD;Q0=haPji=SEI(VlAyxttT8JH`$&d*2yh7GLp zC0M$cR)bzk0@ejDHxS&_-LS6W@%*XvdHbP3v)0$QEgbrN7TK?IHeTI`a7=t1`{`Tj zOX^Q5VI>e47iFi5G@GzX#=1)NnLGSs$~GsjI7y}zyvxz3v-W0eyC~l**c-XyKft|z z!oF!HH1Lu79N9&apz}}!7q-$4&uRS3kt7dS=7c=T%GfmaVTC&!;zoJIyjQe@xQbym zTq%JrN2FOe1v5yDyEUT09>>Uy+q#1iBL<6bL)sB`gBOEb#6LvU#XeZ+`{cMF7sG_O z%EH2sNTRqQU&JT!my6`mE$5fwrlPekQWG``v^A>QvXiL6E_aVK+jZV^yInt>DBqD0)TtbPnpoyTjX~@jc?2_A$9K! z&L*i`!MT}#`_%I{0)$CL*wt-eszAG(fO+f~Ko6Ce0C))C<-d6d&>;rdZN=cm@nOk! zui<4X@$Ti5@eo=A|Cc8z|CLI@q>T9X`uUG{PT*%M#sDIG3)lU^l23=>wQ6yEW(u-i zH@>1beh>yQ$PNO1>mW&RAYgpYEwUhWm0WzMq1fg8gUiKLr=E7GQ$f~*;FSIVrQSJ6X!pONrH5k8fa(&&c|BcaKD3M;{KHb&qnd z@K^L*QQ5;SzuK(ZQecHk#*>XO1EMW(={j9_hUD9{6qgpV`Te1BZ>j+;d%*2$nN0Ea zT~EF2e-vb@>aaP;M}Yob6%i3?kN@&uWm5+CbS;_7n+dOgnEn#!zYKc5oQ_%#mGJ zk+~Q$9Y1p^oq9 z$6&cS?h$AkoZkzLeLB*bcgTl_E!MWxB*660Hv)6a{hZmU~wb3kEw*(!{0*bBrB z4SWoSx;+?7YRk+uRMM-9I4nx#V?ycDhz1jKR=R^-{o!kbIcwL5Eho^$VCpU~pM!#Z zk5TLvk|sK=I0xo}Fm7*>ax1GVv+K3q?I=jpk=(hT=XQE~|En|RL+yftJ!l|I4lTl? zk`=YSs@jr=d%sL!ukk%PPU%Y)EF9N`&|Cu!V0?Ch$u3s2BY46b2^jNDDhD?6!|;%; z_RF9rbD6f&A@{ed44?O+IGAV}jV!<5kNGH0?OXWmx#==)!K9oUI}-?KKThaX6-F}l zsm5%H)D_>wD~Iy}Gxg6K%EW!z4gIB)HT6<+*M%>Uz>3_nQS^*BEW;lC*nh4&weMi; zYOOc}7_Yhslan+nI@f6%Mcf^V+qw&fx~qN=BouG4(1P}ex=Y?{JSSI8{Kz7^B19-dv)LYL{Y5|a|f(uU>}Nh{{|!1b@;$L$TVBDa{^LYZIoC%L?RO!DyKias=x2njBD zkZ^QapqcD}jHiZbKk;ma!gTlYDvEmSYs0p}!I9Z5Uml3PTW}YClzq5cTt)7*!6$@lh`gtV|z`EO1&2aXyiiq;)ym8*W^kNZlb z%RybnKp%Ztxl%YhZ;E!S?HF|ytYM*5fyl<1H}H69YH(cUn3q&O29z6Sct^b^>pPbaEU;Hof4mrPoYkt;pLtivT33IryAAtSI zzyy?6fxM&md$VaHmhXZqtH#R#(v_C2l?t!_g5QU~olm%OsO})AKEukeuriltZUX`% zy&mxeCSU1GBwh*^ZN`&raB+HB4Y;_z0UN&ibQS7@#p^1{$BJJ)%&vZx{d_(+^_;$! z{lyT`$(^q8iYc2+h_HMD;GpO3KpdnBjF{{3T@LC3F-gAwOV0KlSVvN7oz%${&RoIK zQADwGo&c7Ox3k0wyXdvi9}45s)fCBb_iWXyh%H@VIPs}6JoP4IaOw~>TgLLXMgLx> zAN&Ow^{qwIPu?)v0kyZlZ2T}vw!$I1;FcX=ytNu$BcV;{=XT`eg^s;^>8(}tYPUkP z!}s@Pm3BGYJ;FQAC%T+THfoKPq}Kup(_f|i2{*ZaQyTJ(mlMP_&e_Ju3f%b`C=)E3 zLLIv~z1PZ#37vz`>qKW9qRoZ!6w&x1zUg5X4wBRn^QtrBRsxIZ=2jx3gO2w7!?L%k z;`#LT5B3QcZC6myJ8G6{_t|VXbQDp>(q&S>psWL;Q|Z?qQSTz3Mij_P@kTh{9eZZ0H!M4*kH5WF7ukwh~Cct83F#4vDE(3gXb`t0y0{!;EW8omV zsmgL3C;HR>_`VFv{;7iDf{ahKEJ0%0RNKn;$$MvI^u>*)qBrsst$>uhF^F0PU1Xgq zhJe3#MX7lR!6z5_AmjPktvk27?4ZqAm#jseFOR&gmYAL96mC7!F7Eg7>=uSiDmmg% z8djCWA5n(t;mH1{761udVIgrQljx6kXWE9>uf0@dxf`)0J)yf{D#n67g5RpsC6-X0 za9SY!6fPR~me?c}W-(q^7TQ`md+qb7;~~xoS<8=X-jyYroNPPo+|ND%O{|@l)my|B zPBp>FEp(Zi^;U?QZ*75m!1G_hx;BvB{&gv8v(Z9#HC(czW^`NNYK!!A$}G3P%9EW))_2MMa>E}DSD{C8dtEhNuS&5&%b@f0C1?b#shY_*)cg5mJ&{=78h zG8G5ghx_D1a;#z1w>;V#sf*}Y0AHEVTOxf+T`0{TnXzXS)o2AL)WSjp-z~7PXO39> z;&_w#Dyf-VRi52Wi`bB!<2MNgsJ>NJ2s>Qt)W*I}m^+4;R?z9Qb4N38S;V;6mv z_NXpYa0M3|Bsg48a&tSf^N8rw^Vw8fDdjdd8wqpe-lj6^V`{O6s%%lSSjt$ZlYm|B z#MA`-9O_&Huu)w;o^0NkjFl{7LJ4n}P(6;+JudUCI^BdkUEt+gaIQmM&a*Unx_)Xb zZZshFW{zWM`QehrqAjrXK5MRtLb@mxNraM2TPx)eRy?o^19_>d+Ljb8+72(#~cP)48k+$t~sKZY5^rBrqAhP zX!EzKgU`=8c-f|?t8dM&`f#mTD#-QKA*yM1>I)Nb$<2%>k=SiS(gPg%D4{xp_E?Qwo806(t^Tn6&0L-6zIO<5PU+6TT3yIde7Nxc)QLrHfcszR~*OV(aYcPrVBhayi4D z=fJAwhv{!Yd98kr$RWB+aqv3z5QTwHC><3zp|++qdERSfK*Q))*We|gK}Xf&l|KLq z)UZ3_e6pU-Groizc!YApq!jUA5qy1y2OP>4Q?KvOsC)NyjW!sdD&PX|obEf3ITE}~ zRD9D)`7o9mf7g3M8VsVv9tm|ev_Gwc*9C!DI?BIAN#v(~i8$3fe#0`|&bivNc=6Rt`J*eOcMeVszW!2f zQ_}go6N~9M4*_pF9ZPEQX|Z7x1m69aPrh?pV#kSheUEQh2TL``(VdB3HRah|#8`HS zoiyV3`-zzbF4xa}8R9>hC#;uyM}xF(D63EV&hT@FA8rI+LwwDAGFI&lydS6fel zU`v?nTR|66!;)UjG-728b-c4`wjg$6-edXF*NWsNHnmn(y;SaITq1ULV0XlII2!kcA0O*maR6V_-?RMXPv@<8MCWT0;=;Jx&13wl(J{- zY$B%u4P((F@4<(^7pRE8$VfJ=XPKR?%@v%y3$)}uk$mhbJn4ym=@ApI#e_2U;VGQz zbdh}Yc1j%fZ%!Sqx53dQCZ$HW!d|l)n|s443jK*n2ERnttf*_Z?APz2h@B-Ou8A zwD*b_SUhW(ZhqBnuaj3hcIOyc(-X7D*e;DLXvc}6RRw9x@o0UPc%a1sAgpORZ%^Sv zc~)o_g8QiENX9<98!0yzCzAH$)h18(PD?HNxLZG6Sn-)kqRyyf7qUCos5h%@g83Cw zc(@5H1BH_cMyBNyJ~3-@A};*zcMDme50yT(jdp1zGduD2efPVAufgI z3VFcqT<8Y0=3W31TMOSGCAGC+Cs)o01VrQ13fcNW*z>D(Ko_y00_6>Fp^Fiyw=rv{ z4D6XuVZsY0OY=A$aOtC+LMSnc-aNZiJd=6o7&eHll1 zxB!>bK|w!$d=!qINcy~vjE#Bwh>q*T@3)xgQL`OsX%xPc>ZKzp?N>5lFyN@c&3D0Y z*2R+8gzHxV;a!w_<_~%}z0ZoTlV^EN#mfA%Djm!1hUE)}kmz+Oy2cKgPL9hkrjgdX{T4g>6;8TjFK zil3^l+q=LOj)KOT(>a%g+a7GUKL4{__+2A#5b=P^1yXqG|A?~D7-`%mJ)RA z>)NQ$5OQ@vJ-2&p*lOX%p%p6B_`EDN{&O>cJO-=4hhx?;QC zp+kv3FZOdp`$;3rm#leUrZ}qr-D*TPIN50{!XRZUIQCwLd4~(oN4~|EOs2o+zfX3? zx1G)JXskQ0X*Lu&PJHsbft_VzJKh))r$>Xv!6=x%b?+Z8Ef_!ZCX#J@MTZfW@zMcT z@2dtov#vS~+2^wMteu@-P*+$H-n%X2%udh4N}qX6xYpKilK^^io&4-KN_HS7$TZvN zTm2Q)H+3?vU&thYel#&Ec{sob^R<&Ml0aIgZ>bhs=p+rFqMA`|7mwrPtdFk*U+ri< zIjWX2cvn3`m36bei$`5JPCM_xup6K1B}KDV^e*u-*!NMJp^F0JvPRKUkH(itHX3(@ zS@(7X?YNbZF;bvb<=f7eQgTE+t;x*IT>ITNeinAS4I=M>S0i*^O4P|oJ8PO+@z2W3nYDb6NnT|^6R>Y9=#mpC zj|I)0?hdSr2NQ~9LZV$uP3LNu&>Q<-de_l=dmi}5j-{a^+#`0KZ6X!-`*qJTl0ejR zE6i}}K~?Z%h>jh~QwA98m_KJFgZE=08Qf1SJ+`Y;f zJ2e)K=p=n-;`MxfA>X-CI_cEUT-JEyT;8{}T{_m1@)LAas#znYo(K`WVMIF!A&iX94zwr$w@TwGhl3`0G~ov5LDbg>0qVd$L6h4X!XD zY$4_*QJhGc8b!7P=7_PIo%KXXI?lfAJnQWI>p{z|{pSyVx0DnpIe+e)h40=|%b9UM zt_u7WG2^r_FlA^jp?^7FFoHYvOltW@)c`PnE_bYf};h?l)@;7C>-$ z#r%G-K-n{5u%vv7HyiaJWl~Q0!&hELO}mBnBfi#?CFQ@y$N3g#G z&+k#q;DYO&vFM&|0$jEyk@|uE+^Y|cn$l-K*c+U4{PxH%IK?&bk)POv_!Nfh z@kBq&mhn`=fDL#NIZ0)Z7{=|Z7nOLQSx1D+#7 z5pE!?r6A^|bCoW4n%14RiSBt?{!D4v`F%WfioVx!ScUIiE$vTAEB+Ka(hOZX zTe3+|#5jPW)I=58Srkn0d9t%u`++FWW3iHqeU&{6rzvczU2Jk)Tkq_z2P6MX`|A0y z1B|zUi9oA~(HhN5Yj=M+3NMx3@Yrg?0n3Q$W}Z@E$($h&CX6t14}dnxeg*6&j`Bx9 z!4r;Pa-2aTe?8Q#vPcoX^sw#W){}-`(q#ODeYcebFDO{)){odU7Jl|=oGt~5favL< z+*xCmf$R0_I0^UnS(Z5#cA1@rdX>rpZ^cX8KKp9mfP(JERvueNaYbih1_s&R&Qrj+ zjV0xJLvth*S^kNDZ1u($`G!9h56d!ezx+xx4Dz3T20ie4!(Q(K_+t^Wp^j0F4oD$qh>_X&^@R2^v&Q@Mai#FmkJVmcXqQH3d<=)3B>X z4Q;JayVIn1u%N?!I7&9NLi=4&twn-EMsjdP)Q5wuY=tVRIFF(sEnJ-yU5ai*wpx&S ztt&Yqv9&yP>etPvmXqr#2b#GK;YOYs#byOL1{jH)GzPIfKoL3AgPudE7o>@}F`@3n zHTvm_k^PL9aNPoa`38|2J8z!FgidJnQEWzozjAH*!gU$AwV6+t*dLiuw z+&3JGq043XokDrDNXqwJ1#f+@XPYbbHli+aY79P~!?jGjT?H}TLU?>{C!#V+h=$4L z0Ojuh5e?znaGet)OcZo!j@{Tp%ozB$aQ~bhjxGlf1BYkyrc9E}V4Y<7&tEGJeuzsUQf145T3#=PBGl5;&5gw%ptn%|a{_e<3?bN?Xjf%I?nK&-905>mM*$og z`AdcI5!jq`;&KA^2LWyKh#{`Fc^P4Hi-2#`fbzmjXqPG@k2wD<_#G3nl01Ws&Hno* zr&-9qt`XLcG5~^{Y>wcE`{Tws8QKng$oWFBtY5S0S4WR~kXjhAIlv|FcB_WMFXFy< z&}BJC$;QH@Q8qzD#V}$(eWxL23pQu}JHf1S5}W5yqRY^?jVNN!bV%5Bg-tEON(t~R zh6m0db7ZN2cQn3p(lcy~?ft?nxG}|W-F+-^WMjb37b#Q|v454-*l~5g${8!f94-?` zKK6lx3(rf$xJ^oj)jDfTx`;C}(P0ePwzD5V$p^WJ3%UhvVmnbu(FIy?JyI{Vk(IbCwFO!!NaD;z>-n# zEoYi;-BeQ=_D(2@Zeh2t)vOfGm4CN;GNp=0%7w{xOZ`}sC;fV!=V%$6fH~1qbu?*z zW>(>#IUMGbTE73&-NSswob)HHw4=$dQWsq>5XUR|qjzb^^>RfPa`7c5M}~*DHmF}h z!O}!py(bLUnMKH|Z?hXK$oh0hx4GoSg~etEcK&EH=~gJsjBCw<{0uro+% zewgMv$`l&sUp%b#IOs#~gM+uT*;A5kPcK>x9}#wz{CrixaWU|8hhPQlJBp~9{@IiL z`h6865YgkL=7Y7Th~d1-x>o0ch&2wDpAv%9s-%O9hrdlEn?Pnie?5xdi=*7=THfz) zIwezcchs#ff--g`12Cr&ht)B(944)r3(^mA)$Uy&(N()Tv3pL>-S}E}r6FqlJ=a~9 zosrmLB2YW>H9@*C$ohmEhxx{AV=JXt?+8UkmjDgMo`Q>qeh70c7 zf?O1LaT0U;pV~Xy+vP*1RD+a$q z5@1vIXA~4Qc+gMJn!Rj8hZX_XT?YH>qhw1fIWHW5w3jdvR^H=k=f02Z%q|!(f9`n5 zH@j#@qn~U2+s7NBB_F*O;u)@lRgc(+v2fhZ^HsET3ZMT%f6XC_9-1AkA0n=8@gMETm3OoAbwJ(3ji$>5-UcvBfdrO1yPRg<+EQ? z+r8+c9oj!}#;m6I!hn+Jw=*Jk9F3P^WjfBBL~ZfpV+VEsM_q7!Sf+yBgW>Z3zUO*} z!Pfk#wx3nk^*1l{(Jl^1^SHTyXe739gRKCHkV4yuWFIC3!lzU$GWZ1jis29A14t@1 z?4Z)XzKP;dtD?a{$0AOdo6)4wi0dE!BDdOUw3Qzn+^!(_35)D8fXP0uaAhBwz{)43 zV@YxK0>*cMNRH=Az4|T0i|V`J_C|rBFyE}M*hw3Gw-JgB6cU`jXt)61?WAwzQ_leH zz9O@=@`T&fg7l6pwz_pKQwRtiWMD~YWFUu^S(pmRTiw)SDPSl1sx;T_mPB;u^5@M` zAIy)4;roWekrAIi&J1TqT1|P-?%oN?)LA1?e#6FHZ6JaW{TBUFFD8?cTzXwenl$v< zjE$Bn2j5Jbyx_uk4s4K3wO-)N+R|Dsm)61rSNAHR2_CdS1%BfP7qkv5djg$b7O_Qk8X9Cvs*= zk>CF=*TH6$Hc;mypFf5!PNUvDqlA|n@u{m*nBr@b_WcClTR=nuj*JsTcH-$`Iujyc zER5_bT;Rx_%JPT5I#2Yx+SxrqQTy7qd*FeQy{lQzq(;$@f@zq~VN)5JJzUoWV(5ha z?uq0gnm$O`s_q$$E8Thax>Tu;VfbMghqPm5rRj|ZM8oYGs+Y{;qD%+3zg6G(1%yMO zB%~mFbn4hi@=WOF{qS$ChEhGDtFi(&CkW2o6F5XQMhmVx3wySWDPYJY21gGKg@6U? zX6@bs3tu^A6P+Wm-#e({U?71#sME%hp1=~Wh%`+XX%3>`e&qb>JJD0D*zI0pcCYlM zyHd-5Vw_l;qW@H;e3x*EeHL~5E{U^^Mc*pH8iO7tlD$bTK!|OK+|#7U;B+ZndANT6 zi^oxYPgW`lkF<2)<~pwwZ0EhP(l3D4TC=Z$==c%EnzLgTaa964a5rD|Df@y^g`RTVlw$cg~@${@@~HnaLMHx8zK z1P{{DvgH<)FqTm9raH^KYf;_D@S6mC(bmQzt~m~FQUsQJQC-9&D@5x95R0wF&q?eq zvc$VvR~`@byCyZTJ(>Bbk=g|7;LEh6h+g>ERG(cHjRS86hJ?`v>Qb_Tt>Ik9Adm`z zLzI^265do!Ad!c`cO1#^e8G6!+E$N--npQF!qEY9mutOE<K^=)$sb4|I=xlkv~RepktfQX;hm$`E>QDaCW za&L&NI@?dEAXMo{ikPYFk#j!&SCT(cIh7^nr`NS)6twHq zf4s@@O!y*G^#o>TLZ0`)im1JS>LG7O!P<8-cEt3BBLJ-Acx~XPD%x$!IzcWfgGd5%+rhqE5=r7W^D$)KKKnM`zLdnj5cx-CgR<#_ANjH zwSjVvU9i7*M9*3w@=x*P!_#DJqbq28c6UOV0xIH*nB6S2)!r$uAR;qg* zXw~dXA1_>x*~xj4%&UED27i!BJ*Y=naVb28YR_;h`APbI3Z6*55db#l&{DwSAvLgT z9!H?>LZb43#8eg{`nG=CdD~i_J8dcTeUlqlS>={hL_W1H=!wI zfOo3Z`XTntJrPbr?}QP$OW||e<-SdYmZV6K-my_f10bqSiFmOSQEI6l6`{*B9vg^* zjqnNebSJ$><@tt%oGpnC=i35^pDNB|8lUx3XiQn2>aUpYj05f&h(#z!#u*%e$Cb#2 z1Xth19q(xepH+m5S2=lSE{~^t(pPXCvonA=U~@5Rt{KUBuRp%vE%?GxG`a)fqG1t< zW_1DNlUa_ub?TMiR!>o+Ej zewbhv3I>rVaa2)Kpi|4hI6mirB0f(+y5;zIBz6cx6#}XlAJL8_+hA{Yhq*D*tBx=# z3+#svX3T3H?d=N;DAIR%Uy&{-ooa&6G%v){B0;o71}3#`#G_we*(d&O6p5^6yTTtk z7W$GWX&0P{?~&-(TBq!q?B{Isez4S0J2wvEZepm4zhKbbrQD#5~bL)!Q1T7&oI@(U@HhnSpZBWe61q&HlN>~Sj z810C_4&)ZPs6I7_+!wpB3Kg#%K*JpQz^tOpbamW8L9>l8JZki{AF3YL5W;QYiM#OOQ^4mmtIbA_cj z&wqK+XBcn!!^w;dWV}nxk5WJq#Zt_~`b}H|UeLfeAD8XUUP`1KAGrBYyt?IKg3Jgb z-zKNWC*y%dn`(rOa!0C^BJ4I=0TS@>e^6k`p(i>Ep`=&?%j;v~_03eiglz4_eb)yl zG6~WbGV*?fWjRMxLUu^LVse)LcQ^BvPZ7(>G5RLsdaLr32j(s25==_Mb4F~N#fpU~kZ;Q*ojUT~;^qFH{g!q%Wg;ziZ#!6gtWEuBYCv>oxk)+?!P!>9eg z{(?Eq`_qnP@v5S7*t%%lo8E#Yt=a*i9Fy!8x@aqhCe5PmTx8fzMHXrJ@fFj4iSbFnmlZR@lW=Gmv zBi}Ni+^4$2iSP;HEjXsI?r3U_I%3s6Szh9N-_cOI&`6N4EN=d(c4#z6lB+tH%Q}2| zYptI^KrQL2c_)}KS;wGvxV9O(5zc*C{&dsbM2O2BHH4bsSD;UoQN-XcR}A<-N7vjy^vSNREQW5qf-+a_0MwGM z1vx-HOUTZprcPwvPjmny=*-9o<05#<9Z0uHRu{w}A1pRj@2^SdmI+ko-RgP&ekG9c zAP18cAX;Q+J+Yb2C?%2-iR2RmL>YL5#CW(YrQzoq6B3%WCA!3;1DorX?}M)jX8HAs zHq6|VpVz!HAQcsbn*`Q}eOdq}c&Y84cc>xn~}96y9? zu9{Y2zeHlif5#UQop&e?mbQcL`ZdCkE{Zs1I_)BVza6f*xPH24zgRh*&9#kV>ie6G zlE?QaxeEliH*R}VAG5}5^%g$UoGE~I3)v|Yz(A(t^Z0n+WRC)v<9)UigDCgiQm;Bi zaUQj((2GG%SlnMMF3vtZ(DFh?fAFZ+h}v!CX^~^))7tg*tyWaIgtEgAnb39&qQ{L# zBJQ+^UBOcvB@$DC(ChyfnaSETYS)0D7$8m z9K#mLf=1!NS9`KSfQv7TYJj3Gb*S#hp_kt0?Be&ocMaFLKF9tpdeQT=na`6{_w@DY zybNkqKlipC%Hi^#kj+^e?%!qxTt zoxGpM{PKn*xW!F@3u1wC%e7(X5`rY&8n7zde8CTys=c+Wl8rVcuh!LlhTj<+Yu@it zr=Ub9!Mh=P3?l^y=oXfI+^XMdd=&%6*1hw#zn9_e(p#i5V%7KSf0-Be8ogNJb?Ve? z+GTC`$q3`+%C4HYyYTl`FFS||MLR?c;3OAo48kH1_lH^W*SYhPmzO(jzL$=cZWt)0 zgZyuE)&5$q$6Am1r-{zgE!tZkdJ-cUONzylEwTNgT`iUOJ=l}-W#t}B~p{e=_S7O+*mv&He$PgBt&TO&0TZ^1`kZ!B^EMtQtw zl3_u8zvp4B-bl&o;5+qK!?R8s%D%Cn={pqErhR@U`ecKwu{<3cz#sq3@Q3hSm>o;@ zrpbfXP18kBCjb=hrvV%u;o?)g`eC^`N(WX+E+j!@_p~5g979cy7$uj|T`Gdu;l{;z zziKP1LJ+d-0f~9QoN$2rs_5%LZpRGOF8x2uy?0Pk@Aobm1f>&thp2#nG-=Wa7C=Nn zrGpq16&2~y1QG%1O+Z9N35qmPB3+7vUPM3v=_L>mX_8PkCfVMX@0mGs@9+H1%sn&r zkNZzPGkmh+-tS)Tde?f^vz~?82Qzs*c=~Ft-oUJ}W^jvU`Y{wb)IZMsn!l@DyKeU9 zNjrMEtI)9CIb5asnG7>ot5^!d0Fcn15J^9RALE+u8jE)}v7V!{^_yL)GadWgME>(K zt*KAPeIIeSTr$MX+iFTbu*1MDA93K=SN0V@B`PO*hb{p!D3&-zfw9UmS`t1=SF|v+ zm}5^KeytKy^6n1hynzC@{MZN8H_>8cPZgs4`8$8fj{Fe?tW1&fD%Vz zVRj{O&oEd!&){rZD(gxtiLF7i#DnsoYKmSH^dNcSq^M4M#g%S@P646)=^D9DxT7M? z7cd>Ekp2YBE<`ysSNfTfuyJ{We#&=tqNXhS!nexyy21RXs0yr zr`OFcPW&~fH#}>tn8a&#Li8urH5kY}08e?qI^nx4Mu2|0d?9H2)wDT)gD+2oGeE%= zw3kPN`&$6__YH0#QtXVZ+Zsg}SylDlKS0+7Ya70AW#2FV9IA5&JHm3sE&i&7m|NNp zV&FV;G{2e4t}3IXQ5)C%Djgm$*20O=jYjCE?{Rng)T+>I7DY#*1N>5FSLkxbfrcH|ldsD>>u9N(#ZhkJveZ`pA*hCz5AqROOVWs5cD767UR%m$2(;o+ zD>f-zZMx6pm5tGeq@38IZGb@UE$K1}EGZv#ht50Ec7+*A-phhNew%3Jcd4_O^T6=2 zr@Xs2eXv;5BGjm-I)~%fxGbM+L{E{jCY=)I0gZtN^_ZkzrW#EXC^PMKRg*9BC(Z}u z8kg{789aB+TOioL(D=RA161 zOHvbHU9}pypT)+OF$VFpiTa;^7d`;OL>66wLB>Hcs3c=?XdDg6;$#1WX;Eg{49)M9 z#P`*d0hr!AE&tPtCHqQwpZH6zZ%o6Y*BD|Zg68Xph8)(?kVVV_fF=)^5;Cc7WZEaR zaboVhtX7}5lyS2dD2thy6_(SvEX{*`hJNZn z*IhG7`EzFMY^K4Pt0%fhKP4ZBn-i)KxT?+Q~3>>b<}RA`x84 zbBCn%c$Kp1!52AOD5dkk&Avr~T~1jPjY=dHQwtlD6zd>&+z`L?svK5@m7VKug6_E{@%3iJ<%; z70aaVB9@`;CEeeCh)n|d!PUhhV-H9Ho1Idh_gMZQG;HReUjtVDhKgB93jwDD3x0rD zW+>0|LCd)hAF_~qU1HtB2D@{qSBW()rUs`?9-~#=ym13FDX4dOlQ3HWb7gEGS4ODq znYJv{BTr9V4G{Ln@h-gn?I%)%QYZX5E4%*9>==UNHVEEXHlRI#UGiV~{J6U_{~d`# z3$$*{P;NTV^G?mlGoJL!FfopkWduJ zA>R@fub{RpH-+dRcxWzqU`)sbgjqT}qryX_W;`G~a0#W(vHRF)vtIVxmVGBH@h+T3 z7EMyi?VLA3{k#b7{vz&+A6E4rVx$IS-aBO7fVf5ABxRYaWELyO>+Ct7iTuMRHn z&Vdyof;b_Io|{KOkfYj!)!nw=_G}*=@9gQ+2a8=kL#S+hf=GGP`|^Ek#!yHZyq!MkUEo# z{Cy~Iw?+ZZnfXH0`G>f-2FU^yqk6!rBsc}v1C^a?g~0^p!5`NXZ3J8wM}7(Rjozpq zyj7KR+s0qRR5?|=tm}fuW<18H3-#p{{w@N>{zJ@(s6mG+0Nt0x!FXDhivEXC`3-6b zmvN*R{N`x~&~0cf0E$!7#N2bVi~sW)6m+PN!3TCkOGX=r`fBpvL%v}1isQcXVd#p6 z)lw*Nx2ROY4;%2M5t zdh$O6|B`t4Y6WY|uYqOTPfyw3__oTXm6xYAvs_^9y7PYu-|Y40grR6&xMoe_b&%?H zWaRxOR-+%@qr0JE=kHW5_O{PQPZ6IT?-rk0+!&t>(Livv+)&qiXK?8DH^MYPl4me7T`Ss@P_q64H>Gp;O)Pv`AB&-X>R`ZMvx_=QJ``_5#``eSP1 z>Uq^J+vN=kNw=CHt?My8BXmg>>IBT@Mj33o!UV7`A&;h=89u{{Dh)f%$FpZ^N$o)cDRUFass)NMkvQb-as1f|UGaYLx4h-@`AW z@;W_LzS=C;y*zclU0Cl%)s5<`8-3qaHf;Vr116IN_I&{Q+6*KolF*<>A#Xp~LlI$}BdeS5?7GWc9gV_QN4nA; z$(_8eL!F>s4ScVj0=Omv%W!bzvc+{jWT8S_bYwFyfDB*BC<+^Ua+u z#kiXW*2v}S#fL><$T!DCo9|f!vi9Tz7Ij!1)0`1QF!p#Bx3NF)l)Hh2G;fI2f{_ig z2bVMfa73*NRsLI?n0TYUVes`(!6`|O>)DrwzFj`IA`>w_R;GSQ?3gGn{8*kjZ*sP; zB&a3fH&!vTJzz1G)kHu@NYS{xo(BsfW7w{ko%!MUkyS?ahTC%Ae%z<82;~zZ4;y&Y z2UBAH)5?n=kW*pKcG?+mv$Z)qjM5Kbd?25agszp)&q8?xi#|phkm;}LoR(=@hpNO& zFGlPK=-oN|1j&0h(+(=M$=(APgj*(j8b`S=13XLQJl#7p_Ae1KixUNR!q%6OZvKT0 z?ceyo{UKoS?S;rj*dZLn<4+mQ4+?EXmvy$N_|FpCR;|QV!}N-S`z*63bUtU@TJ|u* zJO9Y5`J5^EUgO!U2KP4gtMknm>%C=LfCq>aFH{unUNZ^wd8f7{2hE||UAR@Jv?Ws6 zL$;H>CA-QeP8Au7mu4 zpK|8%W8Wm{GeTR|bjfMJ(E!+ohQ=)!wOEYzlsv3BbzdYdjM7cyhDmS<<1Oq;o(zdMswm~D9Gn}zaO z7oNu%s9s>N_G;s;Ft^utq8COq7_2%NN-*UT$Ue!Foo6ZcXL(*EOwq>C7kBCmR}w&h9kABWuRJM?*33w&@)7#6U+ z4vBztu^-KN>$3ks*d=P5nEWAJ^%|4z^<&6W9hzyKXA$r&jui0^Q3-&Mb~0|&eRZ-+*sjJOxkdH< zdTJ?LccD=FmC{}!N&0bt40B>Av$DEVg;1O)hIB1&3RORZV3I0pV$~IbtA+m|mSX=Q zTvELdi<`OZdy##^qbAjECfZxVx^{?; zE*P^ewDjeb_B$ch_u5k??#7gWdc1Aj@s{qY)XjbaGsoh4HzJb$a*uZ4j_Jva6I+6| z3*=#OkGX>+x3;>XX59|edC?|aMBv45z8QP5o~t)>!~v}2wlsM7^5E>YoCAz(l*@pj z`E2M7V)j|8)Q8XcliQ|GkJMGWgl1=^E4;m*V*O0e-K2^2Bo6rF3GeMX;9XCa5a7q#Ejn#+DUk)DqEg{;=Mx!m0^(FnVRk7p; zvEb(Wx9Iu|0tn2|kk$d*cu>bW1jG{)=>G3t*?ZS`z`UPotG;buPSp8TBdBCb|O5S51H+Ub}W2g|yI!Ufe+x<>u`SSel87{xa=L`4gU(gaYI~2$9y|JDP&u z>HmuvfA8TH$OPR;|9+Spd?g7EDigbLq`VVcV-rlL9a?!)%Tsv7C{XXAMzkZ=RjybB~^h8nFdbTi;NLoiivH&AC zbSQ={^_xNwrL6^1=RKtJ3l<-QI!()3UG!2(?kHsG5HmrdvbipK%7on>yU0LcfB3ZP ztn^Y3D>mK0aot_&A|IXked($s$*o#53cywD%aOO97rdmeb=iK{yoY zivu!d8DTW`hu7_ri8!K!vr7h=8mnmIgv z;lW|sT#lif>KBF*FHr3(D5_(sTL#Zd3tWu+F=f>b&wI+7J?<2ndVBNAvkR)f^(_?= zvPGbCFp&C`ul%Zt5_hve^Ot7}jnyYpt?1Zb(f*xX)TAI2)q5oy?1wc*GHCY2Kic_+ zU`F3eWm<$qD5WJ@H6p{&1&yJ_?$(OE?d_Xc0$&Xqa-Ce8PJQ$|QBBmZB0$FtV7Bl% z?(54}hOh^kvP3Ej*Hs#ca|Xeuy4s(abLqb^<==;OB%7WVwYz{2qK$xZCN4~Zk%GHQ z0KB!8);aI}Ve*ue43c$>ctFnU_rZz%8>Qs*v1>sM_zRyJLK71!UBbT@E@a#|)pPOV zQ6y=j?H{75lP*RCOAHc0JWV^yqyblHQ5VWt0;$|ENbTpcn0qE9V`OKq&?LoY&P@9Z z7X9NBG{urQe*QA9SD6~4Ifx$3x{4er92A0O2F+$WRwC`Jzm6I{3{A<&8DfIlh?J9n zqffE4PC%DUrh}zFO4o;ZD499M{=y$#&%6gAHu2Ui`=J{-OWPJ&+U^C`&Y5cK6{bC~z1hT&leHB;zSdMNtu?4TFEB0< zr6podc%tm-?fEugY2xc>$-x-g={)YVcB~r`(gs3v*B;72sC3L7eQujZcb z01;QSClNl~_z#hmiv&{C(K9fc6M)qW{vlMo1wi&Wp8DVX?f=DPm7Bn2fQI4F*Gu-} zec2TKBQN@FUufgoqz~sD{{Hcv;iV<7bR{>gl=n$QB}GYxwJTdY^kj*VnRP9u4oF~j zEy`E~(zJwpDa&UoztPce#yj1v6*`(#Zx0VsN=L~tqCYNzO(bN3xL?|9c0fN|aZlv@ zu9)iUq-Zbw0CH)#@8bAFbXPsh1L`VIe$rim#*#NTprS-s6Bgn|)@taIi)1yf;5C@j zgPP$;dG#}Bc)0h?=vnHqn=aW>;$NnJDW~X|YIzIre0}RcvH*J0;Bbn%Oq}13Vn+YD z^$#(Gwz7^(sCF}6_@5nAF zf;3OfP%P9EoJZPzg580qBPg_`I;|JB!i`44r@q!!WmsR_UtK6`;&qJkq9lLa&(nv@ z!ruiUkfi92{w%`;TFJHwxb7Kt5<{_8v9=ikvHe=ygVd;)D&CmC!`hKc9b^xsl5Y1P z$>ENh6IJr-^q*$;&Fz9%XR{*cEeU#3byu;vMb*-y^mYVxSBEZ11&8_P%d!|rufQS% zt}V7TD!0>mr4-$N1h^+YLvY7FxZj@uj6_OoCDPyRu{M=y*z2i#9}m%C=s9^jq>5yS zNZ{#w!Qiyaw8gbqgTf^0uc{6jI!svulJzANbdT}Ov%I~JT;vQAieG>^0ZwJwu>f4) z72r+g?NC&Ke!2)NoS57Xvo!z{{ql~ET<@>>rSP8*=ABmfFaSFuN&gVveQUvOiNxY| z?ab+?H^2il|3kbXgRmr04X{Sm-w~PV6|1`mhI=0fMmhwZkrjwGxco!hNsSioY*tH} z5eop774Bs!n>MG5rIgZnk2pOQ&dEE&_B97|Nc!w2^}Wm;%#<+6<;Mai^Q1uE$JWJp zy!ThzL~ofxkCB-Va#|;35)gc%2mQajM79z(2seZW*tN&L(r+>d3a5Mt?^q*bM6 zX@N=?ZZ)&Yn2v!l&1zAVZ>EwSIf3trm`5)Fl1>H)&uzUSWx@&wj#(a4c47iREUx|8 zroudRqUsL^p9GyPmD%JXDd zS2vAALM8(93p^!jeik6nA!8M6HIOmG=SYv4m>qtYAy4X)1B3fSin~}hPf`3~Br~uh zTe>s!{7snN(EU{DV14de^D0(VgvIe2&Np9Y_?XwGkJ#2`$|&#q<=v6|A-YK&LPH6npQ!pri1+niPkBCU^}6bU=MDreWYeq@HK z{4vhFsP)d|xnmQ4zK?51PpH(>KCKRl3BizXiujZZJ!-Mz!TnrhCn^$8@gAY`%WMZh zWv|2TL6#KE`ARA(<_~tNU=o8_s(X3C^<8F)uLmx~sKQV-HvWYM^^CCNn5^mDJ<59& z*lu?LBw5&EjS7|ldK*Hh*{3B`bbCvO<*LR=>z#^=0Ey7Q`YComGg)U z4@sS@Oj3%8_B@7i2?yz#Z?gh3u@7?@Y(&ugs;TmEbccYOj6DBqvmQ!LVArhvRND5x zzf<$nqRz+hP20e6z85D%Z|}e>4!ZyhZXW;B3m!6)dd{HH?wi(e&WTVbGkv#G!5cfG zfPAujVy~li7*9F3HX*;AKq0R5&nC-vO!EzgT?>4HeI7Jtgtm(5upEoC486YXocXgv z7R$@;Om?Yg>a6*ItI_gO@0u_X zaG-*4ZvSsa8Id%NIe;Az#_@ns7?DGJEdebMrk8Ij^rJI6=!7cX+o#0W+cW&|-MDn|YIzJWJ0vZ(Rel(2ZVz+Q2uN!JSo+lv7$0|JZYsLufuHBL? zqR%tJjD0pvTQiPfM{pE#A|x-exiw%}q24JATf9ru81oj>Ua9+|Y;Jhyq$JMMESy-VvjcSyd1numQf=gF$DRsx%x~A3iK4yZW(`t(DxlIfZJN;p9;w^wLUZaTa!~K*i%50WIu7u7; z>PxGyO?<|E{JH;d^aY>1c`4n_6VUx!mW=(QYBLiPgEhd0xQP^pnF%GBJ8keE!V4`B z?7iI#Db88P&+u^#k=JJET-w0(u+UHQ3#j~{W0JPW*s`D1*t zZ{EiT>6YS~guR@)h?y${#+Y(5YfmHfbdRWg3?>eH=*IX7dv2WCnh1APJ>rJ%1Smk? zM^R29Cs<+bMQZG-HI6a@v-eU;Tp$OkOq;W1vlpx|WjLPs@~D@p%Dwz>7kfU>Gv@}) z4AbPFSa^*-k@tx6-83;=Gtgju1yngxMeo7}jI>5E$6#yc;nnnxC1`SbN#yXD zi*KY@75kqXH7RBa18qeRagVpc?YC_%rw%nAyhVJw`@oBwqGu3n==Kls1$;m2YVV#{bYKIQiqeJp%wn0W!P*V8%# zU`~PD4oC1SkKA2v{$Y3VdHrzfP@K&~+BES;iE}XVoq13(cXG4Oqf9i2p+g0fU;U+(kz9V!Hd$X&JzpsD?XZW1r?23f^G#5T>uc$!98@A2de~Cbb{VSG$|9uUF97;tw56%kNMy}C$|xxw9JP2vZ1mN zZfWaXaYDIlEwwK>sOznn#S!93>~XMl8)txv8aJ4$uBEol%`_VsueCMG*6KV+ZqLbk zw^(Ma$K>o?;dsSmLOI=YMn?ATjmMR#wPRo>3jpA!y{@_@v%V&4peLYawM;3YJCMFoXs&8+|a&aXo8l`9$X>Kk? zq?_U*v{okClCbxx~d_o<%4HX0K^XwX8hORMuJ-Es! z^emOdw8~@RG$)G##=~RvT=z|`bkSh}KVdPcneG$EchLn9?gzP4LvI_skn#g|$5U>) zsDmetpr5v|}9oqb? zdDcUzOh9Pk!;5fd_H))ruY(__r9N@kVxszkQdFDI!6})=tZP0@&Fd)E9Ko;#ua=(y z1j_Y{g$#e@ztm2vSF9%hHwr8P3pn2*yWmdXD!Dn^>N;2Y88!KLjfJ1;Zb`|s9j7?Y zn6o?-^?Kqw>DqEFaJndL@=tQaiHFu{!G$n)6}VOonrRouCxPBLd&}?=*ZvS66>ZO3 zUnVULW6XKS$1$zmEZ5@40Pb{g4|ih1e08Ubi6KxzfN{oIxXbdu_~FHbKb>o9r~Cj( zWY_vu*BtTtKJ+Knb9<0sMbJtVjUUM67;|}yqgNJZJ&>_j?x_CZs*tA^3s*n3IlCm5 z^mHG2p04mXt??wE1Lu$mmK92ck>Ci5yabf&bzsy0U6HEfTvh(*DO&(1xBOWbmrrEB zVna^<5|>HkOA1_(x351@WFnh=N&OAPuaUHwQ4IMe@hM=6Cos1?D&Ew0ZDJ-~2}RX^ zqhe;8Lv)_s|I=0`U#!(i^d97FK>r0-!Ms%MAAEhuz!hUQ z;yG76bg%K7?D2s!Pd6r8u7BdQn6LELnY`M3rXBk#Ds51R&Vp-BUQhF+S@EM2o6oWv z5$D1?->l;#M|KuPIU>yO0v38AtOA8o03|Hm5J$c8YrLoBuWDvUc*&$|=P#GmYo6@s z^S?}Zpr>+jBa)?|4!bQ7VS64N!iKU`vpj%fme;gdc6vOww7#iT=5i+JWdoa`1Dj*2 zt@Nd9zUwKOj5%O$4rg%xX#kR8!D-^78`YW2{TZ==h^DPBGC2Gc4_<&+eOAKjaewOp zF9!I}X7)w{@Occ@g}cs!NVuNT0JBoO;)^Fui-SWiMr7Dl5_2xiuI1}E5O0S(W{tsA ze!V1>_9sdH3Gvf0;bX;KRdn#Cn$!7@V*5~%?0&hy8D~i!JB8C1QkuL_fKA*=OL?S_ zbd*bhgfsyt@@_d$EIEi?B~YSIFiW#N!Fxl`fDGm-%1?377~Bu(10E@gsssxD0<$yY z=G%7$TpXb&%4e_Zb%TedwqIGAe!8e!>>+BiaCzcv!nZb#HH%vu=Mp77VVA=KGQ6Lp z9!kQ@f=rv8D}}Th*a38zNZW*W6281Mkw6!lvkaaV2)Oa3TkDd~cWZBr&y`g2 zOQL;rjtVi(XTUrliHn@ek~7x(BJvURj(}Kc(i6)eG#;2U^h}V62I3IDz325q|E>e; z1!7Ww5jX*iU;!9V7r+P>bzlK_4{o@L<-B?^!UXjhO%(vDDl%~5+Zo6j+QToN;M%Nk zl*_4qRWoq2=-CbKD{L`n^RD*q`N@AAOp8#{cdD!H7u6K z41Y1^W5lA}aIyIE*hpb?S+Lrfgg%SIa!*5RRE*}EWEB~Vq4b__;c({G{Qnfg+!Myc z{rfMo506IwNS~soyIt!GmSSs`(gj-py3Wvk<*??1=tW>H_9Sp3fi~?S@|!CY zrlRF$hi_*M`b)kP&=>QE4*?`AQUzd0`@Vq#N&W)RBzcFPlL7_f83wNkC@Ag=K*DDU z<7dIQz5jpyZ6sX+WN$22$I7rwza7c2%aT}Uf$6aC-%y8DIrCo%1|jqm1?Da+7o8b0 zqUi_k>zTD~QsY{@!bR!JL5^+qN)H=Y-X4onZqYrdx}&GM!fD{wHupJ@jb3DL=*FD8 z2>IyJ_p3ecV>86%3{eLFPv|89(nW0pL^<*twqKfyA`igMf*GDttYUY`m7b6{w}*un z1JV>-6X)^Hsh6j=WWvW2R0UQ~h|BuF&RPQ-iNC)VV>uO{fTWPf=f zl49$0vhZ0%wR+0&n=0bKta&i6IJ&;toA_CD8E(rPk1;bF(%czavr3YdC_~?GTmKM7 zznRywXGQ3|3o!e6ip-o>G&OP7q1gy<Z(`n}#d)s#Thx+0Nk1(KQ$BtuIyV#E@-($-DAgh4Cmo-+#YqUD*Xy?pJxDPe2Z|) z%|l`Q8vA~xPOFXg!|eSuA?&ox?Hxe6ZT+Cs(VP1=zR+m>Ylh2P+PQb-r(~^|1+AZ? zGqI#NjzDkeLKqn`^3g9l8Sx*9rA#DtvKO*|Rj)(j0C8GF-p=HqwB~3^EI0}9*h;2d zCos~3Edt!w2gWN{@i$Jwm@7==+a^W;^21f#8Ogah)j75>dci`{reF5N&~dwM{`W#7 zTnXk&4SdhuI6hnOmO_wgm{W3|%v74c#KlUf4;0uuMxI4DLrUAVz#y-~EvOpz_)4M} z_6Mj8-S-w-`m0hhIyU3_zHGAd-rBE_BaYI?)3w5T#m_joxj)WzT_dhJD=@DQZij)( zfxBu3!TwE5!i%6zw%+oN%;506@NNDOHC0chp!k6k z^WLJ@(ve@#x$piVWRZ}54nL6VBqRiP_PWnD>B>@HkLEnwT%6dI1OxYgN;Z)$6##yI z4hV7FPUVDq9~_A#tFbOit2ZQC4gA@n863K)vf3K=VYLQ4>KWOblVzRHs=W>hJ2U(l zAe19L#eWo8otT?4m_x0C?omrBwzj}og42T*H2+2zi44YL%>w$xg;z*{Ey zqxf}6upn0QbWhH0udrx7`X!40adO9j8jpU~$84+-sh1GFxEk(;>k9nZ5+{?~0QW!} zcMA{6bkYS}whf>>RL9I%&Hq@yiDsj!>Oz6by+#c|%=aRheYF}b4R3Vx3lFPT$WPvK zW~juSDT`3-2|E1t&BH^%J(8(~-y9aqSAln60h>S4A0ET=i_ER9s!_5}Q?29er&Ln% z6kbdRr5rxXEp|@D$?jy7R5JGm{CZwpUG>+&?OdS55qI!KHpuHOePLck&=I)t~v2;P=c3L^( zX`{$*Sdl_V*m4Pt-|T8I^|q9pPnIe@}J#Jb32`MyxkV{ zD;8vpEoZ*tntidXmWPa;@%%Ztsy`@wMN9`DJjgL{k4oKIdUXBJ@=TKd3`l}GxA*SW z8E!^>B*t%{C9vIl+bi|JviRpWcXk}Ar^9Oaon;f%(tb@^D80S6^x^O!j+MBt?53SF zcX-;_cuYip{-oM`Hxa9NZScg;wj0&KP3#~7ACIM3@V93+DnOryGLoCCO3L5sc8L11kwGOo0!U-vC+cA~J8JB9 z5)}n#tMWn36CjYq8V+kEFVLI^(3+P%R{1Man*D`9^6{j2y<5wQs+@gY*I(Ro6F=?& z^8i3L(hL5Ikv6oZ?AvK=)TVmQJR%efdTpr)_ce_f^_Gq4n|ZBy<})T==jp|9e+irq z%%ErBn%{Ccz?|%_^Q1*u#$ofz*IBv|H~e=V1fpW+fIPJP19%!Q{-g0SwASYOkxf6d zxgQGL>o53W0JA59?})!a@eOKoo+vBVi=Kw3JUsYnt1X1}d7#Of41Jey5~|hcIV!WK6|V zn{(7xa{aBlefjmEVkbF|`*+@QD|xB95_O5BzUXueXhAECsD~A}ubJ2Uy^<4{;-iBw zm&qjqz?)GbpJP29J9nzaW-b|{$Kt;|7AncNc`$rGfP7-<5^FR7t~84p8$q;A96Ory z95A!jj0J;VYyGYYzcgr5mE?L?*nU8nQ#ME`JS?mv#EVx$B=uLOkM0p-F?90%+2U_p z$Xt2}y@g2Xsl5R*4m`B%!vYxGAASg(IOxx)dP8BQ`VR5TMB@sdXkgc9qg{RG-t(KQ z0}quZowNql>`AMAAsvIG(t3X%JV2lo8u#2i7moAi@9ok$LnW|rsS1-8uA-yQG;oO{T1K{%RAkQA{?NAP8y{~Q_|hi4Ps_D0un2u$^?~H(K4RYp z8AvEgz}#lTSWT$V@dxpyH!t+=&zeo`i*R@A%E;jX*x_--WHbA)=NEG&{>5i*q^Pn7 z$W3vmshrq~%B4Q`j%3102*OY4r~EiN!s6+Yg{< z!@T_&Sh+R!JBpj`JqrkNnASu>^qssV-pOTWBSv}tWWg_Cm(V<|Ad$P&kCC>fnqdW+ z>!oJ6H(f9F_o0FCKoE{{<2n=7gS@XG4l zr$;^~d?nQn%Fm~0*`A2DvqK=qPR@oHa)cwo>S@QY9iTphTX6uAlS0Uq4`GgiW* zTU(_3qy0Y1+9&3+>lTO79UgZSMLdsZOL+K*gLUxfZz?Ee2Jr$RA>FQAGNtf97a*@> z7u_kl>vP^cIIV}}_w{r=UJZTecT0X^XSxoi#3nhA1J(dn5*#|WhX`^*-p2cW?{k`Z z>noV$o2%>}efs6mh*1P6~Qu! zcZ}zsBlW_^*`q@i^g`qUzow&2O8cB_kM85MGatD9S_HwgDf;$~kns*8zz9*Obbu)< zZPi3bt~xDWO^kDpWuuGbz9`AJ!*?WNn0Oq0dkvC_r3N0 zE`4LR^%O1qzsS-w~N*T1m>0VIG_3C8eQQer!5KA( z7ebrKI_TryArcW4)j1^uH{&UuLLcU1>3p0dyT&|$X2q)EpGpU>1~z^!s>5f$6grrC z&n@W!>z{TZ&hz4=2Vf*CTxEbO>x3?_Jh3&q@J{#V<`vD&0*PnlVhe-BLaR@?oPxGj z{J7kcD4LzdPli9mTMdM4uI))>Seu?&ICxN6bI=eg7}CXqEZij%yw4(D5D(!6luUd|)ix9h9T)`hLb-uLCr+u!&`5#8i2leqiSs}mLY(72GYLzn(Q zL*6w$TsdfXic-??z%FU zk)_ew$)#f_iX1OLx*_0lxkE0-1aNo`^cW>2HZ zLFUaUfXR?@F`TLGw9gNI&Fxrx8y=QFc8UdSyK^PHIYnFSu^Hdxr}DZIra05Jqi_B+ zH;Eay3jJqxW|GbTJpkgwNqTSFyk1r)e|Xl*B|A_i(#&MH?*3m%gg*+*$*7p2cuB`n z6I;b6(Pa=NY5PU;`{L4UPWJXh*#!HIo)o_`aWJKzqwA7U39XHhi*qB4*=&zco@Ts- z2c=oQhlS=lT5M10X@}a?3a=i$+Kqfxd%h>4@|y2ZAb~PamEe+IJ^b5s{>xE?`BC!x zWq0{P(FFw0dEDpN*5COxl;f!$KKVCN`hg(xBO*75t;B20xPgk3S6svqU@N}VU7|iZa1Q*K~ zy3P_~FhZNj?(JA5svH;}u=qgZ^at<4-4EVULlu`r$&8<6U2zFt$IN7plJHX;{}7r; z$mobw(?Wy{2VwR- zUDbGTbQC>^gb@iwpBeH>A6{^-r%CmGPOtFXm`@mXfBxn~&$B!~R#R<;3U-hPikSfa zy}LMWg{NH%<}|0aSH~({zEife{p*z1`or>7J^Ov82n~Ez>N6b#E;crHMO)&-gAwb& ztLYxK1t|)zlPxvRv>na0Yrcg{E}jvBcaCoyZezWAhE=a$my}_G%EoaJNhvdwbA*T) z-b#GJ3>#?Nu{=pV5~W)^SS6|~&{y^91gEkStz6Zw^w^it8%HntQb9df$RFm}$H>Hy z($V~MBZ|u$KDLS|2;p4@MI1s^#ID;_mEVzOdz?#iNplg8(l-z~L2lzn)%7^P-{k{4rnh&zd?zyUCX z#zn_M8?)Y#`u!1xPO~gjvwY!absqqe&eclKD9h!s7m_IMG_*S^-^3bQI ze+c6trn?DoUvhz{=dSI;pSJ*<2aZTcb#0Gb#RfQf+r=M2v-=%74_X{P80>#8=}OY|$(5c~VxHx$S zmb&fwEuc(>L^34s5(JDH$x9=u6gjPI>quRZJtp~IQ5ETB=kxRlI5 zM|D=n-kuWYzSFHJ*-w(x4Gs^hAP!jsZ{sv1nAT( zK{)v78Mm5@3yqcb&&i1f%ysuvO$>sLTOp)$3EzZ1CCAwOk{(5Wc{yknrR-xA3goI# z73N?d$+i$9rQxPOm3bQjIf2Z3zlTUQ{(270s(Ss8IQN%nd)Vi>ojh$+j8Hq9d@b&D zE}{W(3?Ws=bS`C1k5#HJA}Y1VNZ;lWbrV$xPKkt4RX19$Bsq7xQ}X_@)gAH$i{H5m z6M{@E(G6>AtX%r3h2G~Lq%A@qqoLSf0OOqw$WgO|36IWc7HE;Cj&8?^2YXz^n~fNr zetP_3NX_5S@E5;i7J9gnuB9J;)OF!TfrH=UPFiV$I@|P}V+flbQt6~04?31v8+ZzhK7JVWu9n*Q{dF4;`GL3yy%;!Zpk5VG$y3_ysRJY{mJ?-DqXq{&rQ2LvXP9&4M#Sx62zbpkdtS?%{cZ( zFfWnEP=sVH40T$4Ta&Fwb*!WbRaMPotk*Y7{z;Fki7d-9Rn9&B{iOqmNEZvZy$yv zOozr5*0?_k(X{5MGmybmvE6Y{Ks{nvL)s~A^7FTGb~DY>)CD;9`^yE{JfhrVztk_KneN<0kDqsCAL|b zn_5~t+s{tdr+UX%_DICWOxV`Yq#7K2U$^v1+I%g4@1=Ks>AeHXy9H*NP}U6^$;*}? z)5vq8(zDL(QY>dzQj)j54(kDG}SBbeKGrHVvrmv!?6-5QI@hbQ>WM_X%VXnCoTbGk6FuM&NSq!f-m8 zwMEtVV{SS~X+~c!tTs|&ph&J|`!^Zk{}AE`VCkfhmCv+;a1)N((1f_pP~vTv5v9`N zcv%Uz#^800X5^Y&#`TJiDOz22hF2f!Y17+-^I+s9Msx#u&h^x(Z;c|sgAQetwNI5o z=RMelm*o8T1I+P$>>^x(>$&7AoIR%M)k^>^S0LN6CA8JFV4-1|WZs7p;~h68EDj#f zYtn`Vb}VFrz{HqCtbZPxp^a}dGhY11E}YOn%A8}1gcpP|NGVzGpded{XFC{hnNeaE zd3&y51KXp~!)d4{Iej|!T9lH^zFdU$^8dxvcgIux#s8C)z4y38Quf}il9i;C>~4jS zF3Bw8itKSi$W{_U_R6^SHIluqb**IIOWkg{_kMn-@8j|PgPy@yG@73X4d{JABTGX*A=Hr$4V(`a#tiZ=&3H8 zK_TJp6m}PKyxOwEw$)@f7jgFQtf2k578Sdzu7*#mwi^1gBx}{lGKlUwRnZBqMM~g&?{? zROo{Gr(jr%7bcY9YNko&-Eb+h8#nQRxu5#KJ9!c~7RUUX?=Ld)d3=b$JbW)VD5PN> zwIxri2E?QLs9Jbtv3^Nb4@AhRn5Dt-^tSPcCQf78^T%8i|9Px)Wzm&q+;;ZEIT>*t0WFb!tdh)w>)Q$ETzRy zvZ+!P#m;#OE9TaB4#XA&)JYGn4VbPLv{3F)QwBl3VU@(MNx1y474ZI%AZ7JSs7`f^ zo<8o!Qfb^zpgXF*mD{B^I0Fdlwz&ITT$KyoG|eq0kZu6EJpO%0xc}@bu9W0nYnMz3 zh`C09s&yr$EPt`x(j;-NnoR@Sfn8W#yvH0Yh}k{HUOlrt+87-{&x@a+4OmdVx*2fns7wfnBlF+U5Ip zFVmoJK#GCkGX?$Xj~C8s;K6ULUMJ6y6B#UI^#$Qz5@ip?ZYP@mvLZ^%p#|WaC9YQN z+IOtcoWyjCN2eV;bh=1mK|MOH|EMI&r%XbofZ6c_8=wyWXuYXo9stJN&K<|%?7Z3&ebGdTcP@3X{(?9 zQ~&7sxVg)pgF4$O{nDSyuZn%Lzn`sPT!qEI2J5r8THBpx?2Gdo_@oVy`|Ecy_j210 zeZzML_J;q(qe>L+QAYcB#yh1*622EvCe#-F#NYJ~YIy*VxJ)GTexq{!1dV;iq;f;c z=UK=LATs$|g$!yPPkde>no;{5YY0pm*0XlBXHCiZeQjns6TYF=?@`={#&=(|B~2% zAnQZ_PE)J%%-kPo0fL-mR6rN}fB(_^H~s&maw3SyI8+yuKUAVTRG;|n{d{nu;jF}| z{$YN(W64ZapXnzHmZDQ}by>6gIPyy`%2scFfrNqYU+_bINw_Dd<_3yRWN_Po#{6 zTUPeKSxg81Qq*E6wYkJ`I6X1m(MMpW%HAR=@c21{00okDT)m9MBvP1jPo=}Z0tPn- zs6cmLldt>*;Ek|#VFwJ+$0Cx`E6gtdnm0<@-)-iwAis6u=%;u%mI=FLMZ{ILaMPy0 zMqM1!S49g9Z6rY+U{Lji#7p$?>t3L--IM@LIsCS%CMF(fp7B2Q%3@<@&4VBoEt92a z$QG^2%kCof381?{sE+XQFX!(%;^@j|It*}pw2)>1FSuc5vpgk=VqZF1)TJ<2pI)R4 zg2t{fD$44(=ikxl5l9NqB`g&oJ3cJBI;a~vz|*HXTlf6Tm9w=5BPXN+Z3c7XR9AFyv?$|7-v zp3JpI)TyKkdc34Bt{`$H0Bb~dG9GH=2`rO3IbyxFE{At2RND*gf8ONGO5phZwZ1LN z4pUXMcM)f5GY|D&W$>2_^^|Xb!$5uEieS(B|WSU>)lzBQY(7i1%VECuTeE-FUC{^`-1%*u!mzAgnB4;Te zx?UdO$UM)Mk3D}i$=eXPyTg1t-nPlo4=Z1bu{YQEy21EV#)_Y*Aq4m+T&F=2& z(3b`0YU)l6xku>Bz4Tu9^bNfqqR}Q00lBZ zIZx8X!!u&z)n3i+^M!cDDZB&L|^_gsm; z%O_L@w@x_vPDQX(${_#dgCI)Z%_t8BAiiE4Loa69x;MlPx7|bd&8U-+A&oR|vbCpq z&>YFO{}O<*WN0GCfvX0?U57F5-7Po=nov%0l-`?D+bQd_-&cDvp*}n{O~lPB5`UaH z4BUFz&?TYUU{(Ji7RLUuwL}^OgQOLzpPg;jKz^3w;~V%TJiAn75qYl5h>#nvAZ7ij zRyfY(tjcK1{rg-{j~qKN@y^HWw7Df)2A zoSgolJtlYq*;T(->mLA9H$b=E2tJ_?e}X*)tz0HVPVj6pcsAb;6u+Ko#po%AhXI2} z0JA5oPlNBp)v29a0ZmM*L_>=0ac%pjFSRrR(x{1`Yi$kF{zP?`&5@tS{d2ymwvPoq5JsH2H_<+9pEG|_19|0QJz-R!3cDwgKM(-8y!l%SK0Z7 zB#pK!3J=pqR1}A|d|%UrF?^TVOC|dDD=l47O{1c@&_oZ-pbBLNGFFVhE27;X8f_%2 zuETmzFT-hZhp6JO3Qq!rS?LFub3J2)-)Cysyg86Mb9QlnE<6~~{Q!!^LKl8h&Vp3p z5fh0YZxyX>B^un@r{hET`XwN#XF^_WHqFArJ#*J1+tu@9WWd$yHOFsiJvT@dhfTTmc-KD3boJ~1!+mA?+Jm}jUbJLmHvM_Obh?zbN- z0^;Na6d);kp0!_&zrCRu(@*6Dfo zk=<`zllvV1QQd(x@b9~w%2H-suB8*+5ChgwVj4-#`|NRQZE&Og@3&5#IKEwF3LbW4 ze|HAe=ZEFXuJnS5kOWJKFEC!Y3jrPK4-y2vre&U9dD6qezptbbg&aVwFwwJ~0o>Y< zlN>6d>>3R8r+`i(oaO+=wht9mNJC;@Lvebf2|iKRW##%N+~%&_U|gK#WYz++DEUx$4^6nN^`JV*^?J@kA^{77h)PC7E>2M5^*!OHN8@GocTQePDLs##?a$txM@2z#yIf z{qsQ)WCTZfLoLtiv}D48xe#_HN({YI5-PdV4)-+|3a3*9~ea-K@jK_6m_k2jr~=!L~u?$7;_l%OMg zDhP`^NZRyA|2cqdfPyZA@Qy=9A&D=2qxdn0IRmEAQBcB@^Nl%#;P!ErHbT%*fHsKM z7f42JfLG229=N~z{=d7Kom|lXTTp?;zF3X;h2Ta%_4mqcD?2JG@bb797*G0;)Tj40 zF9s-^iPxwDf4KW93cIJcP)}eZSA`m%Ufe;kH5Q7&g3ZugpJ0wF#t&$Nwt~idghqrL z%7s)uAM>lwGcnNxQe+U=#Zlec?ck1^4duwSY)&(-pH{#4Sx737)0CVMT;LM@qix}~ z_F^8}hJia6*X~sHKVPH<1{tVl$*fjPxR9xywIzq-fr~_G4S(5q0J$g%z|W^!;2Z71 zxW-`hr6itaLfI6;wUB7|%ZHkn2y1N3HO|~U)Fmox*ENTfSIu{eJi5S#8#$MCGj?RL zMfY5DI%TyG7l_zzJmsa#bjp&m+SPFI$lj-ybTstgE9(q5!f;J<_I@@X!igYj6tiLuR)CB1{GclwE& z66~^wU+;I7?n~_kkIuA7c>D&`zkgW3`FB>Ua=Znmcr8@0BXZXB;Z%BG`VIWmZ#5>N z`ejC)&YuDmv*kQHaPP8h%LPavc|Du%aN_qpHm<#697koVN9s{{KGz2%Yj@VBv3B8ZM z@TyU;LDZ#RC^|ErXHN5Pp#0~Dqcas_;*oY3cJ;B*tu0NHJB7XMMButzpQ#3lnFeRt z>m%*YP5n#`JIud)kp=#7l*3a=iT8tlvfs>tX;JkEKo%XQKmQ0Gc@yEW2frpLzZ@|EGG-5*biTUr_nY{oKJQdM821O(5-3-=sR(Vs!(Ac<phLWDt&A>P7-vl4^ z$(_pP%2VJV>0hDy?{h@A6coD-TlkNP!i2_WIT9JyR_S(E=!hNSGaBP&Qq?rTm%VlRFtkMBd6!t>h9N{fl$MM{xuF&eL`|*8Z#%_;gVsn6 zttRa-_MN7`!7U!$XCLtmL9%OuR2#t+-U+~MA1Kg+2;VUcTpVSWn{IK?SBz?(1m@D^hH@y~ZsDv?xZ*|w;8>LIMZ zSV1ooyNX9&pZN)>3Kb>;etc-|Y@GFZ*OKz2GVzj=PRrA!m?bv96~Kdao5Bh#N94a9 zrG|Pk#vgowh3@;{9OkgL@p1>}=1M2_E8*6xcLx|H8$;fyzv49Rob_BYO$pVuPkpaY zA)dGaOGMya6z*qXQSmveuQ~-t(sS)DMV@od9Ow56y%VjRuSjX}D`Q5zC;NF&FVxey zo?LRiRhRfbROI$Qe*equU+a|cs>KWvGFMruv6%r$Z)eRL^F`ms7ar1QxTHTUu*&r9 zI)_SS4KbS`X@0&J9OB%RGw`?Px%{Dg>D>f7xA+7-ACU+h6(#Wss;(psR-l**^fdvc z$J(hjK$imKcwtO94{o3oYb8K@c=ng^WTPP0p=^hi&eb`krM|eA>)EMNF;}f=Oz_#z z=UWIhNCSi<0`M=i=kON>P&~meff!mC`?^Hyw7cJW$R4Y-a6aridQmDR#9W%*2X#7o za#s7Puz2to&>Q;r*e`qq!qfOF@@`#J7o4S@PF^6>*?Q=`slLk9>%$CCSrM#K^@fk# zR3lvWPU~bq%RS8TtVvApBVnl&vv0Gew<873x*1-B%=80rt*llPFE*37QG~@w(sNuj zL6NBGg;Tsc{yp~Yw3@um>@0K0spo6Qs-s*N9+|_GPDiN(L6e@OAP&@INrm@I$GJtp z-{=lR9w1DX{rDJ)n<^AizeSU)hU-tVQeaGW3mJD2dzByiZV-L_8FXUhT%;0zgci+? zp-6LLs6`R+!j*IAbk!{m@LL5K0imRbGv6}IX;ba>YDeS zGyP5@rV;vM^bcZPk*Hq{n#F#dE<<}!w0c%yrTw~9Rigu?p0xEwZNH!C$)r_2*^9j8 z8esjjvWo@=28;7Dc)1R@Ac&GXaxEHL-`)$B{x&%`oV;Y=N6uOoK?@opf@#pNTeTj% zY^g%7DO3I1e$Sm zyF-PK8H(NwWTusnH$igs7EBm3$>-E8!&0H#zZZ|hxGAg+04S|qNR(zE@jPC=I{Ep? zb*59KB&I;3Ih8UOK#pI(316Qt4f$@?eW#c82jidDw)nAg;l$JkeHG|OhADsp?gs7c zP(ZG`FMIkTeDuXi@+mJ#rsuIm=XTvv(zk87;8>9yiY*j7=q!8(xwd-1 zSTzKfsm-;xkW)40i}gG({Xd9wE}b`3$g z3P5;IcLX*Pt7Vy!rQ$wyk(27+zMIAixkuOYjxG{zH#9r9YVD-YqFSnnayN1jps?Hx z{4S4VRr5%%+zMoDfq05c)pSE0q~>~{%)J|i+MpHk@gyyO1?pbfIHE$0yc*GewQd zJUV4|k~Nj_P(k_*?Sb{7kjWi7^f8E9IlqLD-IOrGN%lETyF)O9mgOY)e^j@-KvU9@ zDM`fGrF<7?%^{G1U#_Y+-N@llc@r(TIFdkEF^^jueif%`=G*t6K6(hUk%AwR184{W z8Y%-Be*s|H^A(`^hChg)O$2^DZ8zSE#H-;y{j-pf$mf;Fim*sq{@&R%BkASeJhkC5 z@i5~s=Xh*5!z!&am|HL0sS}83gCiMYwSP+cjvwpYZXbTT?QZkk2T>7-r;FO#A{!;) zF5&%RZ20rwPTo7URui)9s|vsi%@WSkXscirmxFJ8%s&(9AVABd`-POa)oH?8LEH<@ zKmSZiy;g9r++yt|{j&v&H+T05@_eb%48HN0ZXHlWT#l=gz{Esq06xoAuj>6B+>Sk) zDd~2OCoKyu$T2k~OzU9Wb|)H$i2Mt41c}?HVu)@nC^o;~Jf44`n%;gF#nKR_ttO)f z@p9pIcubFdu7UB08c{M9sl20FGoQc=zrciuJ0gZRlQ_~0%h^fXC%x`Z=MfVPR&NPi ze3vgj?6C3uc|ev2XJz59N%_AsBcgW~T>wj_M}F~1Wo9H*~? zNI!mFVkmg2H{u!f!s3(%jT$wjD+r2nV4wHH29dZRy@fby6rIO!ouG)rgQ;ud?V2tg zHQ&^)raAhR(4I}b`r5)r#`78XNOHa=SHddbQeb~fE`;N05oh#_w#x7PNA-HN%pfm( zb6eQAdmvB0}pcq ztG3f-cNsy>k%wPtgwt(U*>dpOYpWR>BDg;2`*&UxfEa~VlPK&~ff;ev7y}LB*OP^x zWc9uHklHl2&6ZSI`p)|72Jh+2|3^_j^M9)(GVkAcrutFFocwkM=%_56F7zqJbkY*5 z*Bt+&q7J=20U`@d51sdNwqF9v;iAhWU++iNc}U+)o_3M2<0X9l>eOd0lH9oz4%x<( zS_`a{C{8TekPGAFyi~Z3RP5IGZ3YnVhd<^#1T=){S?l*~hgdkjq zhBor|o?6BKHEAoucm#@ZwKg_~L9N>^O?~>>%&~M?M9J9uc&j*2%%O}yyL#aZMF)lb zS;cQR4aMdaP)#?qd46n~qDVMcK9{;xFLf5vL6W#b);hjK7AYlO9u$t%G7#Ai!F>wvU`5y{mSa3QB4E6ZlrbSl99+7lqmdZ0Hvh4yKr_M2 z-k*3mInydT@aLa4|031{D234t?7;EK0NpUJYvgP9_F~;?DqY&gD&01L>O>QBCwet)uzv2*NCT&J=F_UuIsGLR*?TJ zj!Qv`ydD)~Nh_8wyRPL?B zB&AP*OB6)YK|Tu@%!wJ120*s`w>_^|KPTCfy9iQDlKs;etV0!{bS>k)d~JqR2? znqBaT(6e&c@SzSpL-cv?V7GrM1|3{S=>Xf$Hlud`(nVtROQ2T1x;@S98ZJI@r+|v(o0*u+q z*NW1A?;R+=Qdqc2eIaNhDa;pSgna=6t5|B4>8S%r7|+>|?SG0qyX<(`-zHPKK$zgk zDS%ZSs2i|y?Ryq5Muwa@X4gq6Pu5mZDzIJ^J!XkW2;cyQy&uV9)X+us@)BXh=4R8yTW7%FY)^1 zcX%nGyB+YyvksPd)#{bDp8CHsj-Q{5_{e#r8fVz$wTa6JlNv+$i-KeO?JEC{q*qhy`{X{C*WWcT(y^ab+#nN82O;{d3+}rk zueB51+~7WeE^bX;iD9riA#dNOq5@r0w2M?e2gyCVDnPYs#xM;9EY%{w6{7ve8TMF_ z&Yd8E3+e`$z{kuU1uElJ4fel8ML$nq`DJQ$_^kgtc9Q$9-QLY?X5;!)BAv{}eMpf; zfj`HxC9kt{hCahRie9U*$R%5!-kXwWXljW5*wXTL$+S@-nK~#n-ns0PMXd-Bg=d_o)fx+Y876-MW|l`ClO1Wu$A$8QQOk86#0*? z{s}$`UX8D>_Fw6oiU>@PLf@02`ME)11oagL8ep$3w%eaR4rcB$U?(TGU%&|@7f3?j(z`>M;47?G z033?|B@2z4yNkyvBP=uSPKM3z`Cl;Vj{bcC#q# zd)S%#6L8no7BPL?=6l(IM`5pbH4cxW_g^v>T9)cD{d2#gTJ)e*JB2tqOFx?#c)omf zsOGzl;yRtmLGk0IzVIF4neKt7!_OFasL9gdJ%zZS(ry@LgiwLA+V9<1jmo0XCZdI^ zI%C}``YRNwL|$a0uTkL;8Bj@*R2lBRZQLy_yhbsF=)W2pIKWI0U2s*WNpl-?h zYcs$5e7Nl#9GCaD0_Y~?_r(ZW-y53k?_oBV%w`YW(wQWa9n`s0eLznA8<bq@?@ej`buqH7(9e|CK}^xm|(u56-(^WD|n^!Z`Do~N&Or`S|gK2{5Z zubePvyqLi*ECCC&6o zRQ=g0-^M?#O1eE#H#fxNxBYTsx5n|n;lfSL`|cwD1ShXrGWQ8>gDg7Xc?0fOe*f1A z;)Z1lqOR{aBL-uW`6E@}NiPf2n5_HbtAg{Nl8~POJZ+iXb`o3)&4q%8M+fJd5^x@> z4(8|T;vZN6o9C0fxaGWmKLLs>Z zi6jM8c6(>m-Xq3dp893+7JJ3+O1*QpRDsc3?2b%K6U z3bF}+RpWWj$q9U)9wCN`os2Mm5!C@o9u3gG2KCT5sJmjc0S8X3B#5f1;HWo8G$z|u zO+U0%x*pomy#*EuMqgMi59$NDdu;67aAQdeDe9FgWVv=QtnW70a)+5S;AdNYN=f$Gl~HVe?h$x=r7za)d2 z+%j&g2f;2iODlQPht;D==eBd4V2;GoCu^~zoJTHVq*Nx9?26AtemZBOeQOqFyV?J1+7qB3aZey1fCL18G} zPI#K3oQ?)qO4+0^vDE)SJU*bs;be{i}4KK*HOJFGyT-z6MtieQfEgHrAwHeq5TSYgOa? z{OO9_Td@Ud) zyHU+EJ0&UEGxS{Mc({fZKA;o^8UQSz*dzq*>0A$Jx7h|E0B@*3Jr2|~B0yW$vYOXZ z2lLP``5oW$(l5hxD|g`Vts$2B9=&Fx7BeOk3;&;AH0D?rsZ`%}s*d8eV zitx$f6%{<|$7EJY&1_kXaI8hLG{INQWq~1A+waVP{X^||15h%KlKq){4@SJ`)2IJv zW!APfYAyd)`$-(AfCDC7-76`*TWotgF-lL(OvE`VO^;*o%|>$#>`9&Su`hRP*a7(BFBZ2l=27M-R|-enLPtTw1i_zE)@&0^)$sd`?QgYy+;_}ep>)r zq#s;Nh`>K;^*m)ILf5BNR=<=c1&mmpTRC;G!wa;h30Dd2uJIY7+U!eI;s{4}i^|nw zfE%+gy4^eooOuW_e!U`uan-z@2oLep-|ZQt)#P^=NE^R$yzgp%-t4?gl97s3QoE$> zvBY{c8_={dkVN5-2@QM67w$}Mhv<&TwqPzEd=~dnuyaf9X?SL`Ym*w`Ch7GI)UiGV zk%U2gj?SALjq(B9$X$qqC~RQ%sli?j^M$wzn~O^>VY5iQ-^T~VINpgHoH zQK9^Mnd9oWHQ@}DaRly}B8l_p9&vF!`Qa3S0|)DCDV>&f#ouW3EH(8GKmEVc*B4 zLWBJE#IFI=vk=bXjUX)=l*0gW4|UUW?rAH#E9)959*^P^%thj`DmqG+hP!wrXtjRiPTmv%GG~_%3CQn5DucIg=NlGX-wn5fQ`9X-glsN+-B7|A?ylRE% z=3o^cHd0QvTo&>@s1LM;POV*t)$^vjkeNI7+7S9KgZ0 zNOQfeF{Vz~7OWmyC8~z>-jnPg=AT~OZOXK@22h9|j?719?^BC4xxV&GvK75lHhx%( z%zooalR!~v3{$k83ef(!eB+{cOS2zO>R?hzW#L7Z53XX`^bydxL<%E6Seu=H9nN%) zL_a)te~Sy6A zOLFbH6}zWKO<1I`HvD5t!e7N2M@N$b@w(QfM4#{UNL|NEqoiq)F&NWp6gE|8wNF08 z0i+rfX^B|}Imy7=!u;)TddXId_jW zPg%lOlHczHWhGYxUz)pK!#APZF|$p0)M?q#)MYVxI{4C<4)t72Ib#g(uA-KfDS*D5 z@>YZ$whi846ubj7c!#&)=tA60)WYw6a1|8eK96AYI%!dHk13p!MUlb++_$;aOP1T4 z0-IiIwQBsPCJdyRO2J!rWe)xdmxF=GBe2;yloH?1UaR%Zy`oqC9@`eI?{4=9$)#J# zCE0JLj()UXj(>C^%}SjVgXl)Ch|L|e>z+zzZTMk5ysC>DgL{Sg2`oVC&v)NK9UxzrzUG5d<0y0I@5) zQ*iv7@RaDNc3kTzmEQeVwO$*ls;d6cE`7Sd5}^QUIj*0xKP^y35JHU=73N&SdwqXH zm7MA{vs8N@?c*iGW|e)cuSA-@l|2nhFuci)o{iAkSo7(weg&|mdfaf_2sSIa0l^Ub zcyJKjP{lUDYA_(F7GvJt=H;3qwX$y?ch5dvZ?5G1tD8|pJJ(fS{x&%(k@Ay@;Mr6f z{>yn_$W#3jAD(tu=R@k?yFjyd=_0?Jp6R%{x>NbCVu8C%3o5{o&aQmq+;Ct+*F@ik zJ1zVqd;MhiX01|e@b<4ePw%srLDwP*~#lE-I$|akz7XH`RKDa081=_aIt?trgvT3kgVM9N)i95e-rZ(-zo4zX+r9T~Whb zc-46>*y|1smhv-K)X!wLs$lrkYWjZ4?&L1!&P6HJ%aB15Uq3SrwT5ET z3vm{mv4kf?o22{h-CraI7|72lkhMva;q@OP=q1GU7h%R1Fp?sgA{)*BQB~lI*tKR2 z*h5w43`C&a2e!RmZ025V)#%*Gk?+q_*{OQya@_e9E_mGpqNw~Qc%cTczuOKmg4qW- zfJkQn*n|Wn&dOJtZJ>f!LMcg^NgUvMa zKy4eV4AG`{WR2?0QVRP8TytUosHy};R}kGT+B+I1!XeMLw7R7<02EEA;jieADeTA$ws=O1|gO5DpepK!j@ zpt?9DGOi`;8a*+cao>aH_nG$7b@!hCsHj3+Z~;fXg$X%)+3P;+k00=zT%VOc*IAc; zE9#|u`|d>Ntc}~?A3OS8**4Eq0{~mxWQ#;<`{w!nM+Hn7wIPJ=KdRme6gK@i7SUG>5ID{)kZDVFDfLcmtnskaJLi}0R8g9saSFdA)N^K#K$c5W0IS) zN`sB89TEF`f8M8hJ08FTe1cefyHc}nb&je&uMmoM`cr=DF?EimMUp`j%BBqK2UH`~ zYlWO%uv%yjl4B?H_Lxfvarjn{ipeM|3M1!gmUKuz*sCOAkpTd|3>z`v@eERkZl!~O zJ!d0|Xg6+mYX8Jou@J72;uc-3+y3KD@MH1wH|*_H(v!SzCH#x4vBePFz3K>5jn6(5 zhbExM+hxmwwuo(<8~^adUU1zKr3p;<~S|ZITXg`hE zheKYzt%l}~gXtrt5^>2j26wv{W^~v|5So&)N=M@g%GbI@dkZy$N7`Kfp4z7*L@>Sw zBX`b}iEYO7mfgz}YFGy-rGZp>bC(tI0&+hVK#tyx>nS2O7AR`-MwP+0&CLgL>UJhC zdj+WX&y1KtUvml18#41Gx%vw*w`P%IZ`h1z4LK#zcRR7^6E~WvT;?Dcev(K$u6f-Q zsM3S@31?-mXIb>v!7DhZo5SM^wyi!#v1a$#4~L5>!#mD*9GAJh{P~s%gQ3|5uw{*L z_NoRLpo=yBg4fT;ibp)E$T#Tz?2>Zm1>-;8-*=O5Q7X0TuN<>l!mEtr@5vTa%+|nY>IH}NttjCRQ}HxwM=5FtntcvonW$37RR=2{KOQjm9aWR&908_xY0K}w z;Cu;Ni>7rYwXVG!CQmg}zuYcF^iHCd6e)}&Yh#>5VG833?n3uH?WxZV$$n;_yp||` zrH4S@*xK}^d9tdwK=A%+SyQQJ7j2W0-U<8mQ#}gyp)l5iYlDb$kM}n= z%x7#%#qYcS0`h)V(O^&J7UHa6)Wkw7e078YO{mUQnp!!G&@UNoKy> z`Xxr+^mYT@dS%p$rp7iO?r7d*-?VK2%Zn1-JH1JKhf~Eu4s1YY&=uku_J9VxBKBNj z1}+zB{?YMqX8F^H{wZts+e~dzA7)H*(9i`rVdsc9Ad$S3`7F zjqe37g}Hx7wDV%}2?@1ZaeEx7KTh4pue3SGyf zAVqu3nVouBbl3`I-&b%drR-`PXE$w9_9^SYX9m?eyTbWJ0w=!uCBhwoL{X_BFx>ZM zD$((hlOz+ljhZQW*R&8Vh2pd$t7%nVsZ=MEcM@0PM6$ZiB1Y!ce#f-iZ1{-&=;Xk$ zm=icyuuv_3=;cfTKid!Ov1hkW^gq2{*=2U+b334D#$pEHC z$Nk{ens6CVx&-q^5)av%0>3a8#-QrlXVg&5rsr!iBxA2mxp@?hE(FvaFm)aCaw%~_ z|4KM~9^?&!jumZ8z5H2?izDZULO&C836VI{Xgy6gzp}?VDIFgd9UL64oH$v@HQ$o+ zHD?!sZso7V#fxjT)1ka2%#N|9W~E9a&+6jlKhGTx-CQ*9zORF$f|^6Iz?9&8p(JiZ zKdPxPB3v}siy(tTc6+VzKKA`_w?GazG02cG_Q&-4hdl8NgmN z&Y3-%ckxzo2b4O20*dn3cEE(eK5s#|MK0S1`Mbg-SiMHnsZnrjw}$c(%yQkgv={zC zqm;FyPsy%vHn)68(uxgTxRuQBYP79~Ca3%ABa0rNo3Mp)YV4Z!4tAur2 zVRzx#aCA67k-eOF_+633KDfB2*fPi0FHFtX(cy-?8eHQ6+*kXm)b%wHlh8U9+f!ZQ z6yWI|fi+Z-W2yiTxCX8iso+0|5w^wiCAxf4U4TOY2jo5mbrm<8^Aw`r`It~&hu-8D{`({a&AZpu7DGG6FP zV0ks6yFUJYV+xP+J02>1sv`F6aE|c4)jIzD-|N}!emI6T+o(|XswGTg5(XLjQ09g=H-8@2%HMloy? zqk`77u!%O)Qgi$!DY~r>%`r0P9GQ3vYBdw zkt>6d*L8}7cNaE6;t_7_)FhEF#5mBMQa{tEn;hWp=4{A1d6`zys#B$(LwVgjIB%%^ zEP*bFVu-+E5UgG+65z?xp}05HNmBN0$`X<-VPqK*vWF0|lzrcK8T*J3 z$}+Y=l#m%Qh8gqvp5C9|@A3UUK7UC6%s9{Uyzg`F<+`s6QNxZ*)dwHwr3Bf94hKo( z_1D|pYUm%bW)ewQ^BYPP1G(3#Ly-aMKL^uM0xC&~ z*gr<+_JmyBl@58&D%IPMux=4q&V~sfFFN~du$JC0P^}3^;i~iS-T=Cl0m@Y^t9dV} ziYIS^r3kwgc)F6lL#jAIYf7Zmrb2a{tdmyTHmP`-t*Nte-mcJSva!R#BnEZ_{5--o z`0A>VA(bTnA7u7*ySS}+a)lr?x{b$(>3BUoW+?CwY^dea|IwO$>232@yJWRm#x*!e zrX@01X9Y!)^4ftGBUA6TO?h4*EYL`Mh%51z=fueoVqIO}d%5RmX za2Gwbu5|b$eWZBF;X;}aM||5uS{~aS*j!`k+VhEOTtx?C($ISdu!yZybpKB(^C1}R z1ko#V0a?$Dda1s(wk>tlBIeH|C|2{POm97CZEeoH^^z&kRY*Lh8w>VsT_33Q}q4;yT8=G)t`#0WXn?L0H!yxsn5Au)a`*OQNB)IFg z$GzpVp`ad%4^-|0PFq3DB-C`nqX1FPpJ2CQlCoLb#N8Ud)$@g)Mh8*@mFcY6^TXV*2#Sv)L`Vp#e*a-*t>C=???CgMa zW7$iS3JaLi-wiWECJxa!V!tvf4g(N<5ufDY>8`}jO(eRwIt z{V83zx6jv^<2M5>!*-vpVve|JaLb_0>%2QRL-d`hX-t}%@76qrXG<@W91ZkZS(KbI zj1A;qmKsj?>96kgNgY!elN#>=z_A`U0GcHTD}Ewn67p~@VV#IoJL3`Z<9{nPM0d6B zIa)e!E-ct+)Cc;A>Sn*&xn(9ugFu*Q2@BzU0irPvKs9q!g`_SY$KlJEPnLnON{uJe>ijWhx5DAzcVk<_$GUVfc-R+EteCn&%6Q?ls% zcHqUjY0;8eFFM%e(N7!|&o(jR^;t2c=|0uf|1nI%0tXs_n|L5XivL0VH~h_jCt$el;<0*yMwb&WeQUd+e+$;#^ut~axS>C)2OfHf)DAE!jQzVW zQP5z$n&0(DGwtbRD+!W&dmDFXy4*IJ1I3?0lS8vJAp zl0@GU?L>98(RQ;iY;x!Mh?T4zr&12CQ9rrp^11WRls(LZxGi3j8UVuqxRUn4qsAOS z1%tIoEcji!8NZ+y+1&%7o4r__(eI1>U+fJ^at-hA>2Dies}oO6MY!^t!qaKQ9ZNom z8VkM_Qf2%=D+V~uHKJEw-SBXD!_O#jyfTPraGw~vv4SmZFR-C6i?N%{34Wr|UaH}f zDsP5{UKb55n3=jTOZ93PgC#702M5)HD^c=>(LO6{TiDj8I^E-L@$9^Z0_nuwT64t{v-~xJ@B+B`FB@+klQ@*Mcf0bsJPJt=__0z!zfmTGt9 z2Z$%pzL82e_em5t5(T<>8(%1t*nK_7m8vBxU5b!!>~3c?+Q57vw>-m=I- zMWG+Z>?+Ku% zr9(oE+rA%sa$mv3K7A@J?GO~#QIWYH_YN1e#J9I+ARb?uT%NMs6Es5#(dSdT@`5$w z>HwHN3;3s3$g)m`17Es{a!iUvG*zQl?DV?jgSqN~x~N?tlZENt(??Bh?TM?Cn+`3? z42JGtgn?T& zn&;jfCEopc@+0pmT;1>bGDRQ=zq=|IgT^JH@%Jv^|3s7{pl3)*hqouPuuE>7yZ4Qu zTc-?dJYsLPFt;d?3yj7zX1i?bJ*kqOv)4!J6Y}%kzF_YTax4P8<{1>uBr3~wGJkLo zcymvXe~IZNKm1VeIsAC{FRyApkU6=U*cdoFLb#T_rb0*P-`;0QlK}wtg8AB&_yP_AczplU2P6ZN56zPnf=+AGU3bBkp9T*9^EDh7j%ax} zpo8HW%+{t&o=JMKp+J|gCgN%PALOiZ5OtF3B5^$g5Vr_7 z(onmWYk}TQ2Tpk>4%pi4zcYo~aKN7XTc?l<{?o1);bJu1R=FWllWCS*y{&?Ina@vc zaijEDnM7;N8;oAv{BRs;po!rc`AWKo6O42RUm}(WucewKF06I|28nPb5+f$7h9aO! zcInD2K#a9FX2s3E+gX3~tT`(r`|j5>t$wei_?28dr`|iD<1UM3F1`H=-t zn&oX!{sywPIsd4}FC@jIaV1nS{8GirC~Rft`(XAe8#{v``E`v0Sv8i$Ak$+lZ_IGS zq53mtg{m&OBkAuLxP5}}LgYigFaiheePUYsBMiQ(vzHiMwibJYrZUyw=U0W6Dd#N6 z7Dc%+U{AQv)p#;iQNPbF~QNZ>|6K^Xoy*#Z7=EaQx;m$$!UZ zK~h&D;X`Yzj(4p0tn+=T1MV}rIw(;D{&7H5r@;!EbipN7(fG`)?VR-%f>Y6bQOW(a zc%piR&Xhu&dG6f2YYI^H3lR%>~dU zcL+5*FA3&jYxllV1l(C0tg(@QJukGkMGa%=WcKodV%E$ZH1GLF#9I)O;S?BO<(1_I zj^W52VMPpM4W&C#{));E-%->}0PfR^4%S%(@>(#Ahgfej@41`>rFNdJJ~yrr(Rr&a ztlubT1erKG+j(&fYL z$Pb~Q(aElm{fS;qJiX6k%5(05l669qDet8M>&jC*T}YMgzQd7{p$~PZ_97u`C1$%jV2OY9$frVQ z(V)ua1)@vF9(dDXZ-slD5Z9pp)TmI^tchahbc_7lLhpc<`Che1GA)D_BJe3B67dR+ ze+tC3OjhJbqKw_6VuR;G#xjx9$2*gK0RlSbTRI2~MLzDAEFkZSTT)aVyp=ldR2Npz zB05YVCOX{z{~wzFX8y0PQYOLTm4@Wht*Ol7l@6U5|d0RT`J7Zj0TBEdh*3$WD z6251ENnni7R&g;e%S;pG-!aTiJbCr;{7x4$lKyrW;3Vo*E_RHknOu&)gjK;g3bMko z;kX)LBT0;4QXb&;l1OgGJjhTK_k#UzVirSEvCVMvh~mjN3$D^Ef9U#+^G$E+5-;;T zghZ>t%I%-+EJh^G{@euiX#fuHbfn`z?qzWH*&waA`p$WL-?o6igCcTypm9W!x{@`lCHQ+3|(3(?hnECClnEv$i zqjr@a5=j}UNqbUP%4^+pX)q#(oA2X~U0@kJC$*>^lP;cM;|VzKJ7VtUoo^KNvblv{ z_9Ef`LGA%+DA%P)>~FS*deSRj15G{?UpHTK^gobF6Zy*64kc;A%>MQO9G82n$~bIK z>3y~SQKEvU&*q>z`96uBAckw9aKnhV@ELe&mB9-+7BR2;jwaYC78nk<3{{pLp!xa zp_;6hX8H3uYWtIE@&^ZX$Rini5BVO>?3aOc0>=wq4h4B%{qD9pzGe*`A9@xT@WP~~ zrX_YujWJ5G&fUwEcuGK>n0rzjb<7>)>UdDr2k>^#<7c3~|T893R!&zxaL zq0mm%i9>^oE7ltSpnR|6cmpZ|)7CZ9YmbY#RoM9dX9oM-4Y=yf3Dm zSG#k=iiZW%7oOhAQf6y zr#?hs^-=;U9bXLNTEok44f}UlKJumBZr98Xs`&lJwcS+C&(H5t)TM{?>&eUOmS1H9 zGQ=e#f8^#=kZ*zSFYn?bfmZKw-SYO$(%;y#1@2xTnWh^p`aP=HIMi$rh0!%_YJ048 zJ~LkarNGKx0cYJyw447yPNRBu&6SrfP3`{&;SU`H{I}xmF>^|2?RVB0ppv$(?_FVD)Y%=8J!!GeXFNK-z9vlnL?cjPRC+=J8& zEyeChBo{ZKN4x)~U8!?)^W9)8FQF9gk8)YgC<=JMbeaKu&z@=Q5|+nJJl){5WkCY> z*??y^%1gxw1OEi)@B!m5DINtR6!HGdfsiN>J3Q6Xu-U?UUt3g%Z6)zbww^=2^sKp; z^a`E{!w3<8ordFnd(EP>Nfr6OUqo-;T#;k4nqRu*GW|U0lbW6GXS0kG(eJ1_nVapG zhCgI!yn!Q|sPR~#gRZgy>)+|G6fCZa4{6b!?|$fg-4~oJbYAQv_kK-D0)2FphK!?9 zQP~r&qNbv%dj8@p1NLvR3iej--kdu5Gh1_*NeY3^YA_X8-HEywJG{tm$s-wDge!y8 z6!V=@a|lzvO|=JOC`lxlr0st%Wu2fG0m6W!7+@RHR3&%oof?Yx#XifF>E*k1&0nTX z#;UI8P|4vVlBIh*W=uz8{uT$Prs&5Rlh&y^s4O%^xC~cw4nq#4$deL}{U(twwz{vl z)h;(05e++9XcuFWS_bjlM5rp#_rVOx5z0c* zY~U^C*U(ux+TThryc3J#>z@X(y_4n9E3q^`@-406ZU00xdigb)j(UdjbaK0KIbN7& zf@0<7v>N297{@1dBe0g< z;Zc;}ob=jyTHQlY&ax2o_}U!ennpP7MyX{O4g1d@atEz8LZ2!qjc^>ni;+|TS~1~O zb4bjCDbEj+ie3zEZjOQCvgwCVj|;tHwZj%p2~1KOk|__K{RARQ$KZ6PI|e?Q1$Xp% zjc8U5>*BSd4r%g}5I(DmU`B%o(v^dOS2NAep0LV1JY7*_c_ljNFBGcJG>5r?D{7e`}~Qro@-6tB7v0>l@t;pu_&jXU3>9 zC`HtxvM=KE;`Tvpx4B`J&BCa?ancV3{Z(R=Yq|Ka{p|EdRgLKRW@8ylI@w^BBIpCu z9s>SJPcnuhgNU^!)f9TN0^quN)dj65P@CNIfp@*w`)$OtPAT(p6<*vYYp-Y8nGL~7GMC5WM<|z3Jt7(xR=vP|*Yg1FA^>BWwf+5Io^l)iY5VJ3|KIj`%iqm2 z$`{B0nj1HyVC z4c;|4=*XJ_i%d}N!J2K<`M3~x`z)sVO8Uen_1qoHY!>Yn+6OCdnNI`0hc7O5qFzz;8U*r7Pq+ZKtw+6H^|G);s2}Y zx)AT5l%YKmScum6fNgX>g>PEJ$HUjfr4s4yuA1xSv8tTs(z^G2=lV3Sq5o0mXH6g2 z=N_?4U=g6F38IgB==KrW2lRoFGeBkzN&)xx*+tI32!izVmErpSQSs*Vk&79nDoqJ_ zl6NZFMyS8MM=78n*weVgO7MD(!Zo59ygK1UiwGOnL+iBf``mE4H`;n+*a!O=KxK2rXT%(glVnPIW!(FYJw{J*V?0(3NAJ1^ z1zt!To7-o*F?XTWncgAhXO;@jJY+;v!a^%l8LWGm1RJ2Tg8wv!eyv4fjM}HfKM@A& zN^OdMaB59r?d=Q{8wr)=MJrjNRot=6YHv*c#q`7paGq!bQvg2eEH^Jj9B4U74VELT zxT5KrcKNN1FJ_h^{i-}gKLHxR)~<8`^u^wR0v5Ul8b+B6t9>l*b6tqwf{EzS5Fm?% zPHU>2ybI+E=4vGr!k|qyXsF$jnPc44IU~KhnN>A(-ZGJMd-p9DIj}~P^z5cCJd|Fr zW0k;VqdtLG)j%>_g+eziEQo4sHLrIS)wA6LFUF2x5zyaflSiISM6BPM;kwD(u)|=$ z!T6;cbhYu8a0cW^4+t&HVUgc>CL5aUlA{p%>CNO0EwS^*d;>^jz;u z9-*x^TXlB2pf65)LJLCqH+gv9s7Z;z)~hBLa>N-S4ADhov*dB4U7L1Ye$pI~F<#Z56K`K)+xK1mr&{_I!&Yg#$= zO)Q65Vfw|ffqM}XTC^__>${+UkwY>ZXrG~+h4*NRO*GDTRItHxW<2FQ^COo8Ze<(i zPOD0I7dh&sO^Uln7VBE}EOc8O5A?)1aAFdwhA`e>GW{N7VzB&4p62ObPV$prUc6`I z3g3a8v|V*viH+MT?uNiH7mMozVnmiKuW7dv@7&^>t9}AbMQ6F#(2LoCnk$qaY24pF zIySCJHl29tC3|6S!qI4NoMp)WWBDa%|MEya2=no^M+J}ap@JkgJR>fn$8}exi;bjy z1OHa-W&8r>qucbccgC=IF&HEh^_**cyB2PISTS4meUitDeM3l}4;Hq4y)0obC*O&T zdT(0VoiA1dG0?g3SZm4h$FUC;S;i4j`ta%jUq0jiFXN{fBV}0D<2MolR<9dndQ^&} z1Tu%+E_Ahe2R+oLy}m_KB;-+GOeJnzGT$0Ohl@HkTK21UVW?R-Aon6!rhj@RDSfXy z%V|p>ZP3iw8>%acZXb_5oBA8hPSGy5>YXz5DPFu)#g)dG+H#N;Hxct$7D5GkiqkF<=)m)Bp_nh*0+>8aTV#J^gz z^SMiTX%NlWm?CCxy?xki6Vb19oZWkHl}kX1@n8^sqF1aw^QC=!Tbq0inQhrYfW>NZ zASFz`)ocXCRaE5A-c5JgNQ*O&PSK#x1W0^o1M!2J(mSyrx3)P#9h8~$zZQBSoCkyl zFslq5cmz@6B&+iQLBi;(%ySrhuA)W( zhubMZoA_nTDzT?`BBZ-_(~LS*-nPi~S!~{<_M+>g>ouk*!uXpVb&nt8sqephxoaRX z^y7a3dkG*fiizwrE(je)^9LK3TQ1CRzQDvh|54YL!fWYyZV79a_xVj&{nHC(&0LLu zv3K6dvq5wOCfUuAs0*Eng&ffmqe)eG8!FQpS(H?=reP0@yN&ni`y{(&N*(^{k>6yd zE%9#C>r~*Cnrx}`M`?5^1{>&c(3|Q32Xb9JRNRdWp{QdGg=HJ@cV9RqK@%6f3nXf5 zb{eQG5i2#EfSr^{hCuEUW}m8VGP=Fis~l=nRA{77zcag2uSlQx{k}J&_5dpGee)Ms zxDrug4dMr|!Jtk|1aag4?zmfBP*jg0+TktfGv1}!C-_cHB;bcEG;CcyF}zFV~ETLS1ZeOf>#|s*rl=^{KD7#yb!Sx}sl04&GsiR?F z=U0O-|1YSJr8t)%BaGV{TBbwAek+^HDHxx#od<`}rvHXz%st_&()V?(p3#c2e?JMh zB(3Z-Zd~#NvK}mj+hr#S+-$;QBA&`Leo`6;u5dS0nLaI=B(if$J5mVW%D-dh#C-os zrSA;ouSp8`N~@4O5_bF9ZKYG-B7=fqk!$7?Pn#;N_D{^01UhWq6-HS~Xc0aO#x)gq z&)tt#ahB8;YOP7fY}1n26|`MQS8>Yfx4iP$-Cn7&QVK)f`HcDR3q^*!I4vfc9;RAF z+lz(2YE(C7Lz+(u!HuW#6S0%ii*zP8xee=8)^r5KbnZcz^C2oc6CZc%y59c2MEjng z9HoHb{dH)6jv!NbE-|CDpE#2qU{d+jR$EkFXmd zKEUn1jKImR0;3#~qiiNuHK-G=Uum4wZb}xd;0-`2*bv&5Iupz=xSYJ#0cTAjIlaTdt-|^i%mcpx`h|0AfX8UEd zUCKwO@@1An@*xk+6$8ZgW9of0j$j;}s{z6Y3TF`TT+M{QikpCu+wDbjDe+C?$FUx1 zMJfNbY*%$rE0-9STpB+h@%mYrBK((7G3E&Cmf?MD0NKhAsLSg}c2&VNp`Ie@U^{yF zLjda_bCZ;bgWZa!Qh@`DpcUp0H@7KP>9J^Y#sB&k*NoSn%&qPmSdaMPg-_ z$MrtRvHv)vxu|#naJ;c>VYJMNq+?Rn;&+uI$2nilbjG*|PJ3{BT$4j5{{P!3thNHo<`n^<5L4 z@TzzBu>x)~I|rw{hW_@Xh(AA_T#%%^@t6A|jFKy(FtSzAT3O{NZzNT&ckZ(Ec0WBc zQobG(!}yTvLU8yNqSrfmR~zuYs< zPq}(h3%V^ybd<+NLSDf#1ZZEo#cPkolP9N(d_2l*ZU&vQy=9H;?6p6?r;%|(-imi2|J#+YlMCmObKFXl;C+T-Hn7sog(9 zrq=HWF{tukkr)+Q;X=fGrS>cVSbVo<&h;0pemmx@zuShyglGAL?!I`4IxeN{SJ<7) z!?DMe^;G@}WyBw(EmjoP8Zl(Ja3{BG;)b@^&7$t|2__EQHQ0yqkZ5~_)hB0k2wiE8 zm00OG;jH`iV@6|Au{LJ}Po;uOm-D?la>4>@!B__7c71hO37% zgLe;n6%ZPM22YQSbQg@G_PvY8iefUY;Yh5~y`<&Dx)8@`hi8kWr0I;W45^T_d3McUrglBHIhnyNWnpQY!qTyE}ER0;} zOzz#IX|kIzFnh|$P0$j)iqEF9|0en72kQZecdpRSOPrGmWcOC1QDTgOgh}|Bt#(6` z3-51FNk%k0k4a6+aX-EcuHR);Pfs&gvVn)q%Hhjk4*Wr<+bUGh4LvWuY!{L;HgC-8 zz|sy^GLY5i`I@iQxhwIKYMRT8SB|3utO>!pmsqE&6^&d>+7hRyhXD{cuq0r%?&Br# z6y#bgbp(z3D;F(%y@fP@hhk=|uP<0LBh`#9H1WpAnRUhbr&YzHpBt^`tjgcy8Kddx zW^AW`^f6+d;ux~_>EaaNV;Yf?V{7{6Xp(36y)buA-5Z4@5=L3CcD^H*?uinmrHD`} zI{-?BZz5@_OsQ)ivk4tnhM(TEp(ty?1wGdxSMRDeYV# zvaijdjA|>)Knhs%ilNF+bqNMvpY&|{6lBq6V{=_|_+r+oTcPu<1P&VU^dltI>?8)& z^BV>2^hbHZqhMS=CS^b3zfc+D^rB5&-&tR$s3lM)tt(sSHwy1#&LjTR4gyBL4-`7^ zH0_$)t|)$rYS0>L&aqEeV8VR=!cx&n+atB6Larp4^`=GlrwJlA!=v=mb%xWm5x+V- zs2{uoe5TPoNh^ANUa#RiR54c+dl$cJOV|0CgN|8`r_V<<8L~DubiH}R5_BzpCcfkQ z@e;AC=mG#0rI2n~$a9>x%8u4q_ah&$H@|=_4)}tuqULpyJJAm>(f4T0_{@`I=B>j3 z<(cBKF#)%qx!5_;y>yEdV|naN5hoqy2kuwJr(Q6FfbNDLc_o;C=kPlrOJg)0MRWQf+Mb| zIyE1e`XIuvwR6%>ue~#}dOVFqkCkwfCd^+iHPV>rT3l@9UO{B1f3@1$RYzeY7L z_a@PipoVSJe(rf^-7ZQQs${v@-t-l$=P{*QRhh^cUo^enkF(hSS5ZtP@eZcLz?7}T zD*J~bJDXqDEfLR$o;ERwIyJYZW8KrTRGdY`I)mP}mtDAdS>zO;UvejMfOlHaNl$n{ z>?4KX^ZHQ@a?u)MjB!ob2xxWP%GT@odrcV+fW4KvTVCT!(cye4nJ4E1c`p+J%#$8q zKq4Z7S^m{*PpY1xoP$u|=i~;2j149o(CAMDF5OxXmb%g-*BXo^ak!5R@ABk)J@|S( zy>MV2$ro3{i(IBM>*3{Y;{7vy%k65CG~oUY%?X8%yu3>Lr0a34uM!nyN55XGncF3) zH*{-Wn*do!6*e!?uS#}fTz@85wID}n&obvxyNxBCh46zNEcMPiJ?vd3Ftun4ph{r> zp9l0I5|*25`f9?uE}mp}s^TmuK^3#4$IDjusot6NmKR06*7MFrpQ=6L>&w5;b);z2 z$LQ~6|3;H!!MKT5git3rjW6@NkVwY%0EUU(I9a{KP!P?&{DOWwJkoK0j zM3zr?S45gQqgt94pG?UIk}{svj8%w1qRG>7Czh(?u-kwmbetrn*M}CQ+yLKL9y*>C z@KPaY^l^yPDl}Trrl~&MAmLL~UfKL;fbS)p3+JO0rT=tGzWiK6tTi|TiO_t{u7;AE z43qd+9?}ez8@0EX$)}7l9$}u;mw1mt&fDgB;WzDVR(Hc;r$a@am}~)_t>&bvMcv%{ z<0wZjUy-;Al-kL`{)>Ayt|E^=nHRY6_$~|ijQ_esJE|dscVBVon{W9R%(#*xcB3up zD);2(^gZi_{PWF#`HDxJw(-5sWIn;G2mWgL%z?r*^*qu-cgD*x!O`G=g-^Cf$6T7j zDUIdy_n7m(@u`!auK%?B*1(>powuo%`%m~eF_5C>L%PS9MS|mIdXu6+Z3Dm6d#oEi z!(66J^oT#3`y}xtrI4Q%@^V{>lnyqi2-P!=X6=H6&UY!D}1fdpFTso{qpmbs8k>FcIn-olR1SUuvG_jpg|SSNa2-R`I#6@54_2Z zbmX;mUH+$m2V(F=b=hOtHCLm7wDpk@FO8ty2*KCGriuBWu$Tng4Kynv5~%{A3+U#M zr0t*}yqG=-QA%1`+Gzy+0rtiRIts^rRRjCU%QdM_%rwVY!!Mt?bL-s$K8wf3TiFBX zQ&iUA8{fu0tu3E+&H7F-Gr4{c+0_5R;^R?@u8r^0sh_<%_|0g3q?xYy!HvI<66w5HT5qK$^_~)Ur3xqJ;K}K>eaj-f< zP=C}t`{7$i1G9o_SD-0Bk zQZ2YMR8uRRu;(!br6o_g^v6TS7`<$t6L+T3pn^(V#v8{`g{ia4+#2WCs${qHzRPHs zlm||?cz4R@r>y^of9ri3Dj-!h$oxi+4iJhw0=E+zP=*MEgJ}an4J&}monM(mirIf{ zyhz}ApKg)&w6V3Jr7e7V-AP{jzIaFV%HDUgv^3lF``obKJU)q1l+R%KBYE`5F=NuD zjDF*ovsp%8+Sy9_vUlV?^lxoorABfrZm08|yQfr{B*@wN;IpZ?#j*RX09^qAUu>B8 z$B%Bwd}2O%)E3f9LxGqxDs({{prsdECG+jx2_+tNfWG@;zwCR&C1=2`e;9M1^87jo z^lUp99s+Hc7&=GU`xm5d>~-RV&{ujeiqvNaa6{mB;n6QJNe5LAv`$ijVHLCELD%N( zx31}&e9+Jt`z+f$ce~41mSt6spDH$up0HUp>YVAKnR!mukvH}&Ss37cB0sjn5>{T2 zau<0D-IF~i%t3&MQOrt7av(N8Hm@nNHE<7f@#Bwmy%^Kn`AiIA_BQ^E4g^(k2#7C% z{k_KnT5e@s!fv>NSEMEXJ0ZVRb|9s>xTNpR+ni~Nk_ zYfr#zKO&&Im$+;59(-3s(YsG8nWvXJX9Z>Fs3AW@sZ2?a{V~&`E#sk{Yo|t3kQ{A0 z@yoA03W1R7Q7(1^>*Tr~<@&BLSwEh}LYLl>qlYgadawwNB_33d$5S+}UKm1Hq*mdI z@p`eE!gg+(r8XFq_Nk2sGhVnuP+<1cE{AN@SHoY+!ydS6>KiXxCR$JqHxWHG6n+jI zOc)u|z1%3#pWvw54)S}^4t!N{CQACw8@thxgolfj>{=Fkbl|YKeDTF zU?#&vv#`3p;yR{lv`HoQ(Jc=0D*Ivsf8ap5rR#Xra7S-tH_D|oGd@NC*eLs2hhW1s zzGwZp2G@;(s<>(PFgr{Hy_J&f>tspf%o>Wwo4Vo^{X&S?A)ETKkFCwMN-QW-tRlPcT7txXPNu=xlbMjn}NRns@j)D>wvFn3c+w3wvm}bq0BGh9v-h7#fln3}& z?sz3FG2_kiG%G58hn|{w*x1k%|5;(L>FtO63MT0ecOg7f@eHMwvl&niH6G+_#brK` z#M5GR!a1e1Cm^kSgdnMKb)%Z1DV&F^85C|k%n}Xyt7j<3^>5ZoNhRY#!wVWdm7pH& zko)-cj%!hZ(_bDXrIQa)*C+trrT(C2Bs{Nfw-4uSaI)>>bPNS0$+s4j;Jn}uWe&C{ z$Wa8e$#$E^j8T3-Nf_Z9bTKN~dU&U_sH&*)fnq*OX8$u?LS4L2Wqb*p1%cy2TK|0w z*+PXt)+G z<`<(Hoj8&%ueRwvbcjF7jso4w?S3S!>keWlkHTMt8$U-<2GQAS$1;x_?>WDc*P7>_ zSR6l{8XS_{8O$!WKKlA2bnpE2&N|OKVFa}UbIidg*9uE5?%4OpAxu*S*kDX3Ru~F? z2U0Pb>L+!;RJl zg1uV`EX-Q1gcdMrr49yV!|Zd@PISROVbIWE4?+<2bPHjmdzo#&qRQRW-Q(kv zwF*RCTFH)T5y^k8cZT>PZ7{OJ(m>Rha~Z3{IyT)PJ0;F0NO)tfGOM&cAIZ904%tAb z0WqHcAl&fXr6-(^qnaK=C|Iyl)!_NG8{wpjuzHb41V&o^7CFAdF={^2@y9GaKn%WL#s}>V4yLifA&q8tgxTA?19!&f z)Myc311LgnI4Ca#6m7#*kz-JX&6abin`+I;Ws6mfUYDcBuxrn!TDAN!oRl%lKT6~a zimz&yl-3s3@`2cp9{`jPso;k=?xWZ%ifUCmLbPLH6k&q=m;k17;jtm%*00zd6!o}sC4pv?}k=)Y#1fN$n@CfAU zk(=99tk{YRR8lc#k(L*K?GvSYUquuhaxZ`amjpM}rTkO>pC9Od6aRNrl#9v&Vr6<+ zfR&?gW)melPCholm|Nog*xbz{`d*l4x2sg;QunZ{_YUiotUS_L+yahV_f+T3%vL+c z9sK$C3N^%5;Qe{AKwn;pWjy-Dg{21GR}|mkt@b|aTh8ROne0H_cO*cv*zzWKYQK2! zBU(?Dd-@P+U}U1OnWsq?ng*Ksn=?$JHiuUD!kR(~Pl@lf0TiIg%`t!lP?U68GB9bOslw9=;Y3%dN77&TCCp7G(@ITCGRf zM5k|ljX5QKb~2J9+;E$Y{xhup@o&XJ?S0LN`Q_Xz*G5rd%lJUKz8WD4K+T1_kktEy z875_$++nPwKO?5!A2-Dhr>7g0EL&IgcU)_}rZAx^P;3ciqX(XY=yVp$0Q#Hp<}pyj zM4c)m7oV`C4da>8@ILP~pj84Z3Aml0%;Sb*O+u6 zuRAa5KL}^z=Y6{XJ$ypsr=5i1?JTAnP6ag%G~6_YuV5@xq3$mPSG6bUKSifGQkZ_M zFjjdklY9-QrPphxJyzPIf&-IB&gmzfSr3r9{2=P6-TQ^bO&y504@Chl$ao@fYpQ@& z;0CrIBK7{ceK?vGjr)YgTZ0^!B$n4(b84BS-m?k9&a;#o=ue5g>TRs&o}WE_(mV6) z?!=XM!$x03>C7a3#je$)ha3O8h>il3A{{Go{Yhtog-IL)$G$AZ(VtNiiBfkWcJKq| z+3-Olqvzl2xj?1VT*5t&gTJ<;+ctdoG-D6em?At%HZ3l44c5WC^v;|$lzzM;v+MOC zUBB=0n_GV-EAMolDJ(d0`r*P?^DCOl4D5iB-VG3M7|%)ITz2U3Hr;!qya%MC;)I}^ zEz_AE51XbO8|yo=cY3GIMSsPSAC_^XXvCn9r@-m7mprKd zKb@XF(bzDqFea9$@=?ofaUs&wq%{S?U$c`zWq)>(LsdaKQkl}ojN>&(`(rFDT9^$5 zCFME_|7xtd9U`F}E9IVX!;F7vY(-Dyi_!R6NgcSBC{KmipL(5! zhFh~GDG-Y<`c_z-SY6x5XVquk_+O#7IR-%bf86}tARnUpMq4R+El4!X$|!EN zsg_d((|Oxpt=+!PTi?;?#SZl^a0Q*^VbYF1qW(b*d-a8K65#Q{1|>-4UbT?1ii$0+ zKIcb{&Rh$&3k$aL7}hHTXIxSYgu+Edq`zpi5|(7mOR zo-Ur&uT7u71jZSEE3TWQ^KWQhzpty*5C*0EeYB~?2rBeAq8HYbRC5<(h<|b8QRq7Q z1%xMcyrYwBF?UEKm;6&T-k`z%3#F}FMR4YrlVp9^x6IoGbIrZh+F%80;=}Xz!P`q}NYXCp^xEo!({LSgZD}ua<`W^)dgNy~21wpwF z0qq0FICi1vpgP%6sNeGHa5JHz_-aBWgErq9oyA{Jont%&&N)9X6fU((0uSqjpQ6C) z2$%UFB0rYcB$x#hs}vF_dtC5S2<%t8d} zB}#{ix?T$g;P@4FW7dHnUSd4wptmte< z>lljFZ@l=@sZrDg5Tkel%fSbpwm5$DfN? z(^z%qSG#`=t%n~wHq!0&{`u*35JznK#X&m%!ZGj8d+12wBC_W1ze4mxmmu=@43+r; zPA<;koKY{*{Q;h>IL*E6DcmKUI1Ho%vygOo0bdfOUR##fRi5Ui*-zRI0k7GgM8@O+ zfXGWt;o!R@p_LG^8#7Hvg^G%0_DnE=HNBsW%!OW$cNs~)w_VeB@rOWwQ)mIIClDC@ z$|!=$lub7Ig{uGAR}+a=Wyzsw9O_!zy`8O4e`9=H1gE{^M?YD5qCV5r>{osE|?(dnn8&79W4mlfcvUsD~d@S7l_=+a*MRm=YNB+=FAfdCwHK z3WY7G2!F4YU6rgFTI{BK_;ZSpQROG!raAYYd$R+OXKJXIomUH%*$nljs$@!NU6CsZ z{MuXL+JanuUgiR1!zg#w3R9ZZdN*MLZ}$ zcarUf%69tqzCe@t1)YpH6@l~LE)H0DZEqE!QV zEZFSQ{Kj>w`J00J=iDH>8{3i1>H5|6H8jEEv3z{rj$R86ilY7`DxS_})SjAs5z0fo zipFcBB2gS&z?*t(set3*)444hYB#|=r|OCBn9^IT&1T;M;{a8Y*B|1~uqZKXn3BJg zqvqPN$Uh#F8?xp)tZKs0*0sI0$uME3d)E;CyA&QYmA!_POlF`iP-RY%sZ7DLQ;K91 zUADVB`NV(K$*smIQdVGlVqTMzL$EZzZo!hPk(oM^c~{AT1ZaXsP^=Ubz_v@*46>mH z+I6P$oL7S?WF8o1A%`z~|4`ffdW3}|+B97`A@&EOE}-)`2G@Q#2;+Oc!MRXi3^BEL zxgIu{7o}$Zk~hJzt!3(fjXlunLuYe~dm1m3_w1E-`ENaq-(A(NjZem)dO+z8w~dO; zs|(l}S%c33uB+ZrDT}F2#%Bs0i+c90nVu4#;%U`wFi+>jBHonpr9bsNf2|R94UT^r z(B~zL9H+7<?`;qrvJIRLy}v|(Boi;N#v@QK=Niws0i1SNpv zEHn&-t3?U?(Qq$VbTiq)u5F$3T^MwsjHo-5s3bX7}u5530DZQ!HfQxjaf#zSp!pA1vAQ|^5s`~UFuo>5JG z(YI)52Bm~5AiarFrAUW>C{;y@AR?d?5osdQODIyM2nr|)0qN2^NC`b4(t8h}B0T{N z5t8_}zjyy{+j6@n$oBS2q2Evqem(qiwHTSMM47u|WIk8Rb{^!NnV*?zrCB;Rv&uak+a#3)^s#(#Y9VR z|AwJ#MBRUWdF$PFEWuavZ0!7lI!|;f73)iMxD*>M2RU4=uSCi$S!A0vD4g!r_uEuA z+YK5MBoWBZ|nQfr#X~4_QJsdTShUSB*@(x%D=zR<_KR?vHQ@!+5HUc;W|N z-;IJG0#>j(BLo$PK5#UeBj)G#@uq|k>@vD*K5;KaGcRxJf>h5NExsPlY_+C}E3=LQ zJ-9b@72{1IgQUQo2<0@khZG%0_{xJ$FmNqRPQv~JaQ(6yI2qmX3h6o+12_zA%?h9bG3&+v*D~Vgkne5CXtQe>n6|_`x(cL z&Y88ID}6m1eKo;@=S){6HRH>`%uV}*>n&PTss5Z>-lk((>^5>6g=cw~(Y)j~xcFa) znlZ>%gOt#;?INxw!OR4ePw>dpy&Gf52hA-PKFnS2k@0OfRJbf(!8NYvbIms<*c1Ni z-EPEfP--Y8a)e3-UnC@B<=3QZvB_(D$zCATW+4Rr*zw_2#RWH)Z@h}Ou$$8VTJ!(X zmrs(xu0xH$V2pw5l`ZggUce;x+EH2)bb6M#Ch}(7J?h>syV51Xhmz*+79 zJ2^5~Y_={)Bh?S814M$J7|F{Hh`b#(Zu89!LdV+2}O_YNjA9?D_bc}Rm0f7S;Ta1^{`|f)Qf350f z>DOYGxFrsKL+^0&OJ2>6C*}_VgSVSsyz!$ED0S@(*xx+fQF2J4Z{A)JrV3N;ML5`D zZ9Svyn8;x3>J%m`6XglFJ}nVm^>CcgRVhAZ$!(AHvIYMnizS7onEUF`#%qz#A^8S zNb9WJ8k2b#?5^Q;v{5A-;SUO~m=(gMmEBjXBZP}HI}+<7^Xq0~-1qCTHxfTvyZHWa zU>OPWIg{ng{8*xaCVQ3srBnKqUbff8h-gq4jhsWcK2WXfMA3SvQ+miClLCKgHw6W^ z_b^JFfZa1PMU%(>bR9}$c3zJO59NF^6Ns;Jf8jb=TN68|)>*Wj8M3rc=6ZM~dYMbq z4c1h|wQ0BB@x^Cw!~UoP?LB-2ia`La-dzJQfnZfcB!OTAG&4QgrNfti+}evMQDWfd zlfRXT$h;Wt=@uWyH*MTLs$Wr-J7snDk{=D@O7Z9C6zs$iL}w8{16d$g5`2lKe+bAX z8#7gATD42IRi8CS<+*05g4S@?;>pB5u88!+>cfjX!BO{sR&m#s@)#Ad`A-0P8NGB2 zzd1^+H2*?1t##URlLvn&-4}m@J|X{6+S~6;dVJYa{m3X3jF&ifB&D%Z%YDy#WO?JU z?jFX=rfV_pqktF`%G)&Zhb>}@wUIh_>5LxS7)WC4IXTcoeYTp{t-irDpOSO#GxP?9 z7UUAfYrMR8Ue@TS;Qs(f|AD2jzvKTmND3v>d4teG88}uR@8|@a8f7sha5oh;Syjfqc(a4M;VO~#>Nr^->57A;ivuaN@<%e6k?=1mTIVOSBrUJ6 z+J*;IRz?Op6%k(DKX3A<+&O>2<>W2vvVP>xgGWKJtn`f{JlV&P2>m9d9wK&xi zUZ_5nbo6z)LA9DZYF+pxla+hOnR%ijI5j@i=rn7P@%RAs^=etg%|Zp6-gn6v$Zo2S zrw*EnmdCQ-lECmD@l*!1UKJo}XFy;=;5Vz838q@>!O6tFm=lD%O(>K$;$UgsKD2{< zMW@$ho~N|K<&Wb(h|E$P_5cg{WFnicO2YtlW_2a~Yu+mxOW|Mey6R-lnF$gE^$ic5y23EH{c{feA7z&mQrSFg5BAWw@(`?8*Rg8JCL1VjqUex{$A|}$x z2%jt(Bb?xs623CQUkG$Gb^%C5twONGi2?gz7Qlz;s!YffU5O?d6%c~yhUCcd3{%b7 zYgX$9pWq75155?|7oiD1M9h7hAp9lK-9wyNchkb?n?(X0G&;C;hl4C$n*1?&c~pFB zQ9I(fcSlG6?&d@>{B{tJF?U(4i0w;9L<%UN1Hy6T2EgY26=z2LGstJDfXSR0Q4X6{ z6d&w_yMW(gP~HN3lA2xj7ro(?j?MZ`@h*;!yjiqa(sY`a76XiURz{}~3`pR3+?gET zu1Ju=Dgm(b3kg)J%DO%jt_lq3RHGmlCH9nm;Lz0cdH*tyFBPqk0BH92tdU ze%mdyFZ5U(Yf2C-F%oUUyXTJ68&b9`4u{U{FYEDkFMmsE2BPITDdt(d+}y4tb}~h< z`6%LvXLu+rfwU^&va68H{Y2F-Re%QU0Fd=A#YUYAIp**I0@K>M#>O0M*dYRSpB^* z{CzOkuSUyIPV7;(z=V&KuE@9Z8TVtWQm0jtiM5BO)An=_&1>?bcc49*02_^*hI=Rz zT??0pIs_|>H4;|-ouNd#NUucOPxN)#%}wf>6{8C`9jJBpxj!|E(*AKh0f=J64%ksc zi0)v4b^=&W2Mg;=*A$*1UvfFvHV}(#-LGD78S9FC6hFSE!Z0zQ;4E}2ws=d4OG)gH zo4-5=D-*~<1e5_l#H1A0K?D0~lfsf>*SKP8P)kdZc?7MAuC0Mpn#0{6uOK;Z;>o~z zZ{IT<#ZjioO&(lfmTranD)2KB?16;4<*!dhK{mJbceB;3Y~?x~Qv_4;pfR)y-t|=! z-N9<${$>zvv+6$isNUqL_H)hH@g+3rQ|3+8mmHuQLRx*o<8X_mNA%#Z-byhYEv|~l zBPV;4s*CP#Tl|GcT3#tD<_unSyrU%&Nbih2+8}a=@)9o+5^dw8WSY5_vs-%gJ50P)_Su|vmrij&uPSBV9Os@y*$wj^V)WH-47$!@tCtCt{CUse$ zy?y4}#_i}XtHQbnPQm&nP%002n36R&Wqd;U@nFY?;m_9oobKFYgu^{vHM>^lZ zN>YG@BPq#OLPwFDtr}Q8Ol3@^y3rbv*`}c4L!p)4m!LRW$!Cm|LZ9kV^?x`dU3KA2 zV@n}<0&V3LXuAmd)SIY4%K4z%WJkT?e_^J(YMa9E{$Gg8+}8bq#fGxY7RT%xlcwSg zN|!~SGgnb;qG|!xKH${MzjS>jN?iujJXVcge#bs8{jB5s8PTOFlRG8c*rchSKDW1j zG5p8Nn)U%E$*+YPW1feszyCtWppFAlYC7V-^w5+%YRgQ@YzLJc-I?Fz#@fcrTN%rO z94z-GSr?5x-5JU(8ktb<$YY5sC7<;= zHG6`nh3@>uByvBP;=lgNYHFXTgD+}?KXtagx9d>X9NssS`rc~cCw+XluLpbs;L+3v z|4@r{z1j))Q=r6nf? zievcBW$;+S$di8|JSf+HW)BRc+;%SiTk10F8ondfvOO6Kb~x|{Tk>U0x43O=Z?Q^x ztIC&X^-|1tR_Uz((7*;kP%&DMA+k!~dm8>JlsdyHeg(Eof5^AqQk^bZlc^iz8MjNE z#?I@wczZb9%j3>ZS<2LX7H;xrNeP<>?zeyd$4P*|l?{o>h}PtKa(rRvNb~C0)yt0> zuJx&@anJ5~c<|Tgu`#PBSo2@P@X>^V%G3({tfmOTfqbr3tQX1jWJWRj0?seyMekU> z*n@@TELDYwU3;JYC8{rHnO5JbvRnaPuv^YRqn6CLNh&}AX^#cx)yAE<|CE-8P%-TS zu0TT2V!PWYz%#%lsN{iYdH(E|*7qWfR?D(-!DT{==Cy#+c@$;X$6h77*+FcvB$OdK z&y!h$4F~|Hps^((0k$0dMQXTK@zweYZ2NfAt)+da&_y+YBcstY`xP70^>01dx2Nt{ zr5T@^bqg7>3^ISM>K885Xe*}JD3nk+I!c?%?}SZ0bVzV$)Lc$0xTCO@8gQL2@WsX~ z;^Q3}@5fYe=9C!b^nvXJ@t^}zJbabdc zgG1nkIWGzhzx5>GM%}rF4La6U2B4M7oA;5fjlW3@x*iY3_CsTcmnd@@Qbcui1!S5> zfEr!W>_Yftpv6athAXYGoDSk=pdY)pk_%dr{J%6(agi7xs`~HWv7>pC9TFT7QCe=V z_c%EP=zY;Bp77Zhy|?f!2)og-|2{`)0;EJ7qUJf07QH5tNG-{Ok@SI&yArOH#j+`_ zxWQH*yVZs~KU=!;-+1`{`-A|hjf$fHYql}`dyx5Po*t*gt_i7PW#&jBfp-^vI*QbpOfKwhWvGv~hh) z)(+Exb67R*fk(hud@5hU&%X#tr0Qws{t^N=ov4@@%v@fBrHy6GCedONnDhbAI~hr4 z06THSey~3HY}>YD3gsle!1`vaqS*X(xkD`GH*^kBwHwtRW7SIpo71gK{l8Q1TX8uh z-D*nc16#6*VAYi+SK>YjGXNlc7C`_b6|G19%DB7=9hW@1K7B#1A-Onz+gtRr;j>D~ zJE{gk6^6on*4z{DU%|z`qg2G+O;d9r`OM5P^}Kbvo)9Poum#QsyWq^_hYJ1SdhOF5 z>viXj89a*?G`_t$*P>=%tVE)-%`CS{yTPJb5`R4I)idsIphCf&2lFWXT6#cA;o}iUV}ro zGi|e;mc=@M0bIOj&d%qbmDIvhwRmxMt7+@-GlW_YKE0|pru5&q^<}KS{KB3qH%aq^ zqv1<^bE7xUs4;b}WBk1(Lv@eO{T-zcAg@6(g=3O|u5}rz@p#7pw}6i)<+d_q^0l3+ zZziwt`trjnPSr@4=9ibdBpq6s}=<4XP$%7q-q1^dom?LRRJ0~RgJ*o zu6FS%&lpSofPCEGA#w`mM7Iot113E%?6(>!Ebl@(p!~zPlP&sFZkH+y6 znH%xTZR5eBp`*dp*eHAqW{#KIrQA*@Z(H&CjmN|0s^vpH&$yJ6hn6_qabJM!W!aNV zbj)wpEU0aLdf&-c%f_aLCLOk_L9Th+0C!mb*N%vMO4>f~#2x@KRq({5Mt0wWQ)QSi zaOy^M!-{W)3KF>7LjuZOPPligCqKnc8x88X;N$r2@jHf^zY=buZ?~^r`O!<9yait1 za`Fo9+rT4i<0|1LYwb|-U1#*^4bMr|?I`vmD3J+^fPTS1jVobR>_w`{U~E zDOximS$m18zeK2or^#N^lr8iZ`uL11VHZ3Kxqo#70s@Tf7>7<&ch0kM`C|8~)j?|c zmAAT+a9d+zZTz&=Be8wm45opz9v{XsiYs??h2M38n&=%Gi#jQ_!PgX2eD8S~RUHG5 z*H1s?8$HamJS|e^K}f>73nUxwXmvU&|AoLeeyL*aNaqTyXEpcpq$JJqYyjl#ELcni zD7Q+`qpb=kTKxRv*=3QjA{-4WqAbT>VbJp4t)X4gq~iJFJ;T`5(_1~dR+P19zT@kD z6x;+cAfG*sz~q*qi4v$7y`^%W2cX~c!bIsKsU3i@Qdb%A~)i0%5mET@~a zQ?fXHb&h|xM4vUm-j(jt4m*q*m%w+%7z%~ZBeiGPD9Dwz)ZjsfE%boE>)I_4{Y;hm zvku~vVni;m{{%$JUo6{&Kj|)QM9qC0upfV*Cn2c$RM5Xx&_oy{46>j%4X6g=>G!cC zt7GC<;A6kNh8gAHb-1LDp_*YK+&~83jFk5nTtQjgYn2`AoByS-x#Gq;H=XV)x5Hnu zTlYieCRv0J-`y&2&7k%Du}XROjH0gR>SJ0F|KY`dFk2x40u2S2btMNJYxf6DWJ=-( zvq}`0!zok(O3ld=UArTS3hv6PKRc^03p-T*EZ#m2G`C#2->^Er%eMCQuRWv|P!d92-^Rv}87c_IfHR0DGRLgK!pWC^ z9p67+G4}L$#i2E!S8icTwQYB)^zB1hmW4r{Qt}{>2R-^9Y0&@qm*Vfl{{&X@M*0Ry!SU&&w5tqmlAtM(~G^>P~ zyVh8Y3kTj1l_5h=%fN8-87CvKhE3d$4d~sj^8dkKPltdYcjuHIr8d|!KkTXrnym~s>@=2~F z3NW@0hz3!B-s$0a2_dJBR!X1GQ9Ri)-UI{Q z=cq@pJW#(^Jo&kOv+Z1l;wIv=t?feDSj0_J?tpdYDEuHRD^GE%giu&$>tIn?EBsp? zjkeUJ-*8B@a=&^!5v-7i1F#R75&?^fI+2vH6RH|4hy9%q+iJ2VspEP|sC!;`D%@-P&lNDNo_5+`D?%^$h6!w6DHf&OG9!phPI9Zi zWw+z?{{Hk=Bkl!RH6h|oM8KL(^}PzLK3zYA?6X3K>4EEKLDhhKIr_0NvHNPu<|x9Q zNlv+Qsj(3h?Be;WVY^ZV!i0M$23MKHcBiEV^|m+sLj?`ljwfj-lD- z>O-ZdeRp8rum(Y$36)YWb!+FE3Z6TASKH~?y_AG7>VS3O6U$Q_aIXTP?7=z&elXfD z0yp4=45vxQtZ6{I?uS(5KJscDYJ7L`re{?ZJp~undhWk&hOv`NpTf?OeGnKRBPqF` zguuM!hZ14l*r2Zah`3e<+=T-?H*`9(A;ZP9;ML>ipxB40TpIzJ6Bn+>NoqX@(1Spd z@vqOQSU5q$44Aj9;LI@S4&Z@;VrZ2qc5UawdK6UL-}Xzt^1e4Av&Lm@a41Q=U-*5w zleYAT6u-Tigb~v-*Z@C((K`kn%XVOoU;n8?HZpqo2$1Hi?nf%SQUSC(& zFtI0^?egPcN-vKK*JEFMc5^`M`-!SICaC1$RY*l{V3}tAg;Y%%VTP{#B8p?*5bSyp z_U5hRZ&PC9b;_TjjcXNh$B@R&+UnMrua^$t0q3!>_e5~CL5skxUf&6}DO&d5SS{)< zH@XqMr_|n1+c353DOyjj{>y#u$K;+vW6C-=i$w!)HS~?Y4T@O#z#fi&j`)b62i(Ro zZ^GQ2*0T7}mJw&4iNvcdyvSm2aMGc9mVdbeO&t$9`1fH%2;s*%jOCucaaSngbiIb9 zMJ8R4gqn@!PpduAFRyPnpvg;^pV?6z z4qvt5zJ+R7;mN)=Ri1EVh>!4o-94$mPgw4wlL4m!1#nKRd#s|^@MC_ChfhO8Be~*o zxwB+qbANwdU&q&teTQ%|U*3#iY5g}N!B>Q6Iml)9qIb~i!){^?EY2Je(fhm`$fW8krO@3YeR8pG4q#r+HE z4{(dm^!PV6vrPW6c{q-lgC0yJ8wfY8+iNv5} zjU1Xye_Tymdh0L5tN-;58-+nRop_X*;cGp!2^?<=PnZ^F(hgMpuK4t6QN4!Ue60#g zyL~P^f$t@wg!Mm#E&5FPw@2e-h zK|F?25j;&l7>ut@)`uAN%G%nV&7WizX-FEDP#csHeRNmT!O&^>Tkd&T{(X4uQZ#B1 zRK+$)AKO(y-S(~{p=OzV(hcpm11`H7g+Jpq$W*H@(8>R-aSIo7^5lZA7hMNzqLB(uG@!S-oKkAx$B{{ z^i;`9!9eo!gkWr~fSR?S)?dgq&b0KajD9@N14Glu;1Iy-qUPS zb}e>(Eo+Wm9sH>{!sdGtnp~_M67uZ8keO1)lNG)^$Xgtq1)v@E>z(WL%KbTKLO#hT zbR*w;EzAIX$hr#slnk~43}&C8A_nvip~+WQfWs?Qd%Yd!W`vq23*n1A?+V_0H(K#L zGja4o72MBDB>pG;7xDaG70Bs~-8kISb$lS{4f#^&=$*47nl#w-`ZXD8rfh)PInCaB zaULwDi#t7v`}ECQw43A$*^0pICOBjbL>Qd@pZBbXj7`6!A8+Y-QjL$j0 z(?8QtgXI*@-x%RlGxcPH>>xg#lO;d9+|tY43sK|WpiBV2@WAQfv>4HUI`Y6TKD3&& z-l3`{Kf45eQMk|c|NBR*Wzp)K1Yy9&Wbzm0+_Y-|592n9AOkwXEb$b$<+PwY|M9;N zv@K)wU84~?Li*2*JGJR^maYXY>h13N@hAl;RvN|}Rdwq;&mP{j0;>rMo99se7~9$X z{qZpPA_xKhLQZ{x8NjlQC4b}NBNb^Vp(AE3lf9oYf?qOc?ly*fon5q0jwtk{JoRflF<1Ci*4xxU)>$9|Xu}Bi z2CqdbB2yC0XWAJ+K7Fw^&p)}_uV(h?`SPa+u|K04vQj%l;_of&>q*|m^+(xoy^hd= zkG~-^Y=GM*|EonsGzJ^t8ar0zf#4@!@Bh_ z89r@}bjY1|FyoX%SkktbQwHoOL4Vk7SOPw~4S5*JOO!n|AzBbl*I;M26g3%>yO6WO z=3m0gSKpYXDWvTdoo8ll-u#HgD|H3BbGs2v@~!^DT4yr~vT2s_K$@e5XrC#pKj^{MBd zo#2hpCVmdQM5Sru!j-9io6bA?j4~Au%;V3|cQ1=i37;RGoW3Y2&N)|3<+=QBFw^fr7>4gY`;cY53P zLeTd4Y|2p?pH0a}PDw^lRZ)cpcW2pe{qSlkS(x-i|CulbAp+RuI&V+^w5TBQ>Pi3i?F|LNo0Msp4_#IIE1YE&w!`~fnLW?@d~50xFcE4FP7p+e43SBKe6Dld zlOTcIDJTbsL&53?7z3fDE3hZ?Vi76rX9ef8da^ z3|AN6#Qlz`xf6|tNZX5BSBdzdp}c{iz`GXY(K`6{8d5mQ0Upa=k1zT(u%_S2TtqiH zzV^=g>ST=(Z=DI(SNPj#1IwV7&*Re1^-#k%0Mmgl1q?uwS`QXR=E#3ko4nKZBtm7! z=Nm;ra31z532=2^v@-_ZA>{&NVgxtHG1$kXTlLm#^t7!c>lQ=~rKQ`^ex80J&vaGN z?ZlyTEKc7aGPA!2oopEX$QAZ8yJVipH-oFSE=t_~Du2N8$OhSM#|riu=ycqOMPbT- z_MI3}!7fo<0~#HCBiFT2lWSUP=l%Rw*A}B7*GkPXrvQ;8vG@ac+H6ggVBVv(${Z= zz;D$WAul226avaNXhrTmzRPk+_KQ5iZ29@l;T5k0tXdFkQ;RLMSGZ5TJErsdbMuts zw<)t;AAN@}3rwUgsTbdMc;J36>=NDVGk6TaE54fdcWc5{jHXp5T7A8Um-OZIMUlp& zNmdzmQPBbK$qW9kVGkGx*9hZaqxWu?EOnwq-9L@)p!UV#DbGu640=)t2tB(aK43iwkiuK3P9JUs z3K4uydqG8Y_vLNJXo*s~ft?EVbo-(2t*_;;bAA_u97r5FJ<~L?i$-DHk2{m&Rwz)I zL^!mak7zemp$@Nj_d8L0M}`Tl{_N?6e+YqoOq!haAWyil;5}!kK^M;90 zBQM7Ho<&=Voebe;C<0+MTXM0EIL&7T2=p{zx`{2$M# zi;C$>+3E=|1^9qU$CH1B)~B1k`EYuo`3{lh!d1NYti!;F$ZCi&C2A&_Obf#budVD% zf%G;CaAG{yvt!`VM3W+ylc?V54?eXc;a3?<4^9>hi>)2%TXD6zv;G5fLZzjbAf%|z zsn#C$n_;&#&IAVeQ9+a5ZN@j=QQziv6F8!FI0=Dw1D$GjE90SPP6&R)qdSMIW24gT zZd2Yp2j)u8jYZtHN%=RoUdz|Y{e5zbwCfYZQ}IPzG{5mop++%fpg4855_J+pB*=@5 zC@@T@XvrvmsMhXDIc5YFGHI$np$Wcy8qMo7!ttZUBH79x9DMo$Ly>mcTI_sZb;Y%* z!f1EHG^!_xxc!MGKSvwxc45}{65Fbt1Id_G3zju8F0(%0Q%W^+gj<;O4lXONNW_PV zS0Amd#dO17VB{^^`9WF!%Z~-<8^#iF$JJ;p@gqaiD+$l_{_JNaJm@kDT}^`9LXB;w zL`?Hb+vRAfD>>CmI(Y)^!$c~7pvjCN#*O$M>;XOvmWaw&*v{#y4eNs$b&rgUi6ugm zw6xo5UF~J&IQQ}jsRv)j^^%`L*hFwpRDltehOpTNQf0FzvRE{7F$}o13K6Wfm zF5Jp4DX@L82~7DOwlt@n%}rc;sgM`^tiQ9t{g3{ze-3N}bq3M-3s^I9dtTVguwxFU zz>*KOjEb{Qq*T$Sjcu+rD{cCZKbU1+eO*M6U=w3Ve)*3o4Mg+Nl?2hGHY^$xZP!M5K7O7wIS4@k;Nq}0w(PzhkoI#Ss;|2hK;p_P)S;cIhN2z>*CqlM zEQl@YwY<WKBULBcb^p z@qB(GrVganjWHD!M+?5KOiv}`AH+Huh3vI_qDhJ0aW7*_ErURZkc@B)(5t`1_+foX z8u1DaQ>Q8Mf8>$(#^Gg!Mp)xMP3yrHYflmzv0(L~{*DCcN;%8D-Bgu!EGOp8 zNw)C}DreJfwHCX8ryFe-Wh0Wb{mj_`=BdU7T`tZ2# zDJBrnuiS04gS2DAO0AKzjy`Zqv<>?N_1*Q{LbS0^%@EYSA|!s{dNXi$~lQ zhU%`EYxr+){-W(uL2KxF{Iy@ww z16_%jbYxu-DHX-}7qXeUhw71S$5rC@z`Cnr0{@4qd;ObWxh_MJvzZ~pHZChb=KtFY zOH9x5bL-h{lHi7r`1p?D=j=0GSS~=igg&*Q9*{sW=*bAZOL95kO^2q?#LlPF!^KTYuj?qwClSfR ztq-jY%^R+8L}p(J(QJLD(Uf!U$b8pRyxLSXh!2@z_%gBROc=}m-Z#H}N~Q?5}CagSRMNU_&J_g*ZCSojLJST0wOGIS0`TFR*(X z1|uZjCTtSSFyZTQcZb(h-;Derh8;n?%+SX)nql&ZZvudQ1Y{$pFYuX$*J8FTnyXZs zlkrKa|JpEdRZonEp8hXH{Q1|Ki$BQb6oZ5oGd>>dbnco>x!A0GVbd%(^&gY;j(!10 zX(%Vxumo}Z9~KHN0OQgV!+8`bbsIy1)vK_Fi(g-Chv=fszqG{9Rv)AXtW60d8Bnf! zOX{E9wcE5>C&?W?z)Dx=ZpO9$-0S;En^9=1Z)NU?p-5Fxw7jUz#0 z>bYN;VzES)2BngK)m3kIXD`=4$0X%>y7zneEP2;@n%>YDRxC@L#AscE1XN-s$n@Q$ z4Dc`!FE4DMVXqMEtz4!4KytpfA-Q07>1q0i^TyJBjc>L2Uc)T9%xDFtchVytxQ4aJ z2PuVQe057SErT=b& zeAx}EhwFazh>uY~LgByIR9op#F$IH&em0-sDXvmCbl-|y{vgI@YTfdoYSne>19m+s z(m7E1T7k7X;a=gX2|uvTtL2ef*`he-ZosQ}GJh+zM%TmBv+lz?sWsST{fXeDlD4@! zEOK3_-aK>CYq%=|zZq~f;FIm1EaF;+5DpCJ4fIR8FlciA>%2 z4iFH9)f@3zuk~dh99AXNCan#At6(NPq^yLJd=uXW>{UxB-}UXk=G(Bc*07FOCzWBE z{KW{5)_Q!Do!nXP&=}|P{ipl{E)MF67z`|KrEY}C0$b+*hF$BP5q0|nqtJ5$ff*L6 z@`J9AN>sbv%m=utXUJ*gUcC2naNyXeP>v0u0J>~`A+hE)a}8L#?n@n>%(nDOS0g|?EKP8aS z+2V0%Zf@On2DGhu(iIJ_f1?jLl?J2kYF8%Yg1Ae9@Q-nB3V0@AWh3!q4p)9`;9V8}% z<09?8Vg6UBTg?&APffhSoW6CJ!g>#uP^vTbKsRG1^F}>6QayvtV^~Dzhs&|#YyA@S@H73h>OrXZXi^H|Y1KW@ zyj6>{1r@d&slSj=!5z zw^Oz4J?23LFJ&huU0;c>-@`b`EuUZB$!laMt|L0j;S}w%p~EXctrgl0=LuE|SPjv$ zn(>kH7@sCl1EhK-?fXrfbMQ5-m!H2D&vq_EFd+2A7vAzX%!gfGTriL??Yo9aG8S?8 zf`?KkqqEP9S1$}+sNiH#QQ07>9Fx@U&R?Ru^hy7<$Wt~(2oJq^2FM|NZ=(`ad%q@wd~%BR@OqxhE4&d^t7F zs7}pC{Y=v2t`egf4MIdgEUa}G>Z?>~s5tLvXx<5Fk4(5*Y=2qIG zjUKQ@Xav;o`C=~hYfH{8*-7W4{aJu5JVw!=Fss1OjiWc2AS$!tP!Q});Lo4k(!7Y% zi*tWLXK+>2Mao^fp{XU^Ia)EUK#I3I%JSQtmX}#(E~MpCM{c7toX{sf0zCJU0#7Xu z2El3SP9B8UL3b^|+p&$UuiU|{TK|P`*bvP66z8Y&oC|veRF%0YF* zud!A-9s)wOm!Jn|4kDj0c*M^0)alt!l@2jrF%`-0rxcSi`|&rPoumTZJwveLwWGKZ zk3muj@7Q0+z%;&m(c;NTd}e)9uUI|9_r8_l&#iT4*yRl?#X7G@p@64z-;3GFFH#Vl zYH-gDpD0aQ|D(p+>MA7|ua6r$gg&(mc2X9i(*cFaLNxf6gOO8^(n4Vb&koh}+O^7; zn~uT8`7SA>hJ%rjT2~)Rx{&?LR#^^SO!hJR4=J^vKe8%`d}3hOHb%YKKf62j;Qb%ac_|eGpQ@ zX0Rdiwpian#Nou`^ntdY5>@g{_#b>Pf)j!D-`Mdyy+xitK{e@u4M<3Jt`dK=G4?9C zk+JrC3YE>0b)waa-}P^Hs?WUtB;_tt`S@=q^)a^I}eIlfJXkI3kOKXw6grt^EqcH;U( zI}L%b_>?7|>8!d^Nl)20Q|aM=M{%CWbA76-q!?hYh{E39Uy$#EV{ap8^SV&5R+Seg6o;r z?X%8p@d-|-vlnkx+vth*mIXe*?_T}VxG!jMW8vL#B}LT&OjtvLq!>y?)U!)KPyr#r z0LkI(cJa|8(!=|8*&V=PY%$zOp%4-D|)=3-XS-Nsy6Qoj*EVOW1c z=98u6y*;;`+z3aO%a;}$ugT>{CMoB@a-QZ_$!i`#_%u-u)~iO?4!tj|t88Y!L zpO#%S%czPs14(-IMo-Gq^5)Xbgf$QR@7~Gt-QSK!g;f&Nt??I0WufZ9Ap|2_9>y>1 zDvHZL6s?84{v|`FHsek@-ALWQ^Agdvn%1x7tWI{1yX(VLOhI0STtyT40A@@hH?HoJ zw}oOQYG9W9x*KLp28%Zvd|78leBAOm;wAFDmBV9CE5A3Hp1B)+15te6QJMh}8`Et^ z5Y;2HWvn5S6_TUL=Ly{F{=cO>R^6o%$uS|1-1xM#Ts%B-<7pi@Me|dp*yyV%Q47tC zKZa$sV3q4FWX7xiR%Ym=9dJmV_w2N*h3|CdJ}KO`z4J~5!Dw!zx4<~ofXeXs%TdTT|~m*Ph=wDFrN`lf16gA%W7ZK zXj$Q;W3oxzBoOQqO69(rs*ir-$1PD4<@t^(1vr&-d#C0%y8;;-f%HxD&>LooE$o~yN{m7Jn0*TY2*0}{L=UiS%y5Nl)+CM%D?z;$ra2xja?rvI8D7;cIn1ONsatE$f7%-q5CBWZv-? z63mbCt#3FpEgWclx-!D0tu^hlaLJUY}4yg6-6aTn+?TWdvmA3#$bJZx6SQa zg#8D5@1~1a%1IMpuz!Z`5rEVCiJvW$`WFZAHHBlcReQ)9V>^+HOa7K7vK94g*R$Pz zP&l+QCxq_Ae)pg}%UuaNq+s;h+1xXp>KbcwR&Fw7(jtJN+^j=CI&^kHYD#pd6y$Qz;>W4k+{+Z56tZh!`&EfxPDe_oM_M_M4_J*i8QW;h#Asa#{U_TsFe3kW$+~^kW>zizxCAIVQqiR~|Bhmr?@$<8mlC z3~DSt1Gr~jr}Aje69o7%2OtiEH(fsJCu536X`FR_MktSb)o2F=wQ>%MFK*Lv@VyY2_$7m{<%KC@?LKl98pT9#>hDxYua1m)|VlIL5JS&I80^fiQ% z0AHc8BEjnLgKZ&Z-?O;a1A28vqRW@Qcaj{9SStA}_%XLAeuq!!33e^_p3cH8LJI9haeas6Y z&9JBw=$9~FWG@a)u*Ht?_-U8$PEa^2w?bX75hHSZZ+#^gf4vscjP|!y&A!iucOCF% zs6c>A^a3300}P)?z^-xPuhhoeBE{B_u5yaP-IO_f%3WJywVbPeKmPOJg7zid2<1h| z&!AWz@-jhzMBRr{cr0nBB-gCDw~hE`5lp1t!5X85fwE^v(KaQj7nD5i=kzmRB!1m` zY%1TMCv`UtIzC2Y2?r~(M=gT}qZho1DWrE~OOl6qffMO;#g%pGKwiUVPI=94ABg=e+~FTXdZuId|IgC2UXLr4Z`pfftQe#MOxZBEcCuKE(9u(+s|7owZM|G*>V zQ!wwa&HYYd-R{4~%l}8sCxC#9Wdlp!AdAnch%qCGzgx2$OA{AL?C%zAnR5?Riypl;kmsS-S-r>{k_HJ>^alNn%WGiOZ5@a;vkmk}yVOtavvi?ubbzhED zyvNB}AEI8~w}?@Z;~$G&v@f3OK~K-@JQBIS_hZTqY(@;YVzq!%%gk(A1)P8AtK%EE zBDzsY>Y)6d^sR?oOs(ms2iS3%e?dGyxdUb?Km&t8C8t*%kd*c~;eXbMRco;(II~2N zesQjrIS*maKOK*R-P(gbxp%5su)76PSemZB6XBi@kn|vtW|6BeK!&!&VBZM_i^L<0 zGPj3(6@T0Yle*73O59CnknU8tlkQ~!GAUXigb-v#;a9*RDSVhU&H)+ft0OUG>wVe& zBC4TO_vG!h*6zex0?MbTd5b2z`GDV|8=}Dct<6?G@;^F@9iBj;06^>tK*|Fxs@1Rc z^JHQH^|=uX5S8ANE>GxkTODH}OeKDJ~`EbT~>FU;-pO zK=xj&y%+5bB(Ukz1MJVQ)!ID6rB^GqvK&b!=mGlxfRYY!wR=Sr;Gt-eG=R33Bqb|I_FtSvw>i3S7tBP-ZHez)>a1SQ=? zXoK`Iyk`^tay8@&q7FRQIS{O%tzKCa5e)fOjPP6x{kttAMN+Z!E+8eh$k7IoVXedu z#ywb(ok)Cit4tFz4Cy!;4BoqWR6h#?k{Y1Dk2sA2rtbl2QwvkKNXU0v zG<{Omy2uxp@p!NYS&{msqRYv^E1f66r+9fNJXQBZSCNVQvoH^eg9XSDj;P(X4Nyjd z*d&oG%B`p>hX3g3-!f1Ip);}| z?@)i|=0V41oQL3c)fzrniYzyKo z?H`%{8t^XRU^0Mp7PRT!t5p#y6oWn!<7Qy<+DH3UU~uJB&AoA{>=L0=4K+1idsDfJ z#RIw``a{X3f9QUH2dK8Yg`gk|h_gZh8P#jWH(q9zrv=UH9)ac(04DZ;vD1HsO8=dr z=@9?IPICU2FCGQn(%ox#8N5>@hVzzw$T6dpMuBmyD+?Fj^!PE`|CT65^b!M z9$AVw&%fKZ{usC#iR*rHb~CX=DQ??Pr)Ost?EnQRn9Lr&7Tn6oB8n%qXwQHF$(+>{ zzAo2gUk*nYKY2S=iG}$@UKm;0FDX%o4YIfDB?e3yZKX`g<57{7`hhg?J)aW zF^WxOoO|tp@@1%Zj!#nu_ZlnLFkjD*t^JV=e@sJmmLCucir>uCI>08T(?k*CeJ^vR z(%S!*ln6ox*$YC@YPk_$fF`)ndKOW5Swg*8>uiig$U7$=r@PCoinT$?cBTS1hjJ*&ze#m{f~!=*?>qgWsE_@ z#$D)cS*(4ded->(Fit|(v&Gkj)aQy=VRWT|VPC z0R8YR|H~VI^fJK#(RY6Ta21gUrZJWexSeYve0+r3$mlNlWA{fpIBNVY2m+p&U&=Ej zCf+_|On1EjHc)#WWey3{{2KP~d}Od%z3RIZ5wbe`-p*jhW|Dz>6)AJ`+6NQG@3S`+ zV2c(+hco;ox1-+#pFg=CpTZc&!n~iYO%ZDXHl7|Kf#iY*yfbx0&uhIA{rg??s286A z|2m1DUio*9U?Nk?j6ij-mma|jKCKMs*Ibpak>bHz-L$?nVbivTDW$boo1psgge#vL zMyWZ=R?Rtx%`w->&+am?RR)@vD)^DBCGPC7rpQ5V%Rpw@8EODKaYV~Q%*=&;g^!vJ z6gml(oY?AHV8vY#478DDF#_MO`h9^l)RVcvsM+|c`o-X!p{?IT4r>W2ZvM~bY!g2x zsJKQ9tLD+gA*8cN`Y;;XX+arfE)qQS0B6#A%zJ0oWpm@F?g-{m?V9{;}WP^4{ zp@Kq8Fzr;j$S9zqgpi7}$0(_KbC)8rj>B*zx|p9K)LiiMmgv=j6_iW^@Cx5(V~{3D zQWpcVKIS3`_8zq?K_dCK|+N_lb_L!!()_X$O} zrh+fdhhYArs|Gq0Sn$vzD+D{(A}G!PCNP}ikmx;iv_dkcL{?k-Xj)x7-8X-+YEZP1 z1)s@p_R_rJIK6+=m~7iwZAMkJKL9bA`5|op-6D&BNY;o^+2`EFtbVb?fMKC79}8|z z9r-_0`pxv1CMc2V6DVQ#0zNUt{XDPhgNX`@;9KTHhAMFVZ(zc-ess~pz3{Qqt{C=| zgMOLhAbu}9p^Vh0m)aOrubmNmv=C?Z8(fR29Bj5@+IVTh3WbME3;@~mJ@o0VzsjJ9 z?NiLXGEfpuNxosl{|%sw2Tm96>Ev&H+h&ElTy{92ZDi*u4kL(Ff_Y)+)ps5FuTB*mof|O?kHvkq`S3xPAshI_;?l;=K^)nf_5})% zrs*lu6oc5cV%dSTJ2Ki3PuH7YMOs=9Tg|$z{9wAk#emZn(5c^lKMtJRQ!r!7HPoe* zKrP)}+gH;4wQ0`v%Rr&pxu@<+)1Lw!XDQXPZP%9)nU?ghT^O02qPFkdvoc@5#@w?9 zxt#64%to+_FWdHIdm?H1QU7|v?EOp~PwvaT4&mZ20vT3$F|kkt)Jm-xxD(G~db7X(j9XOr7^kIB03VgPNS3F?iG(z8Evxb-D{R zEOCmS-JJH;YTD>V;q}%2jUio}LBtl2KQaVs{Rq(yX+hzAD}VxJHd&3t?6kj8kodLT z>pk|TR;ZuAhwdt(K>T2FhXMW!f1TJ2%OzX!E;_^sxC!9m1KU9PbgO-s?XrFck93-> z{k4|AW2JZH0~X8GZUJ~3#hB#1wj!iB=dTExJuGX9}9q5U`ku6+uji}A)a_mjllob_Knmd>SWFog04;5RO=qZezH zC3Vq)-s7b?+>U|ndpbgJ2Q&3|^~4~O4K&OS=u+Dk_xkmvfi zhQB^`2fK3xU1U>gb5V|6RPM3d8Tt3JpFcYm64zC!tyRf0Y^}4QsRc^Wd@eG zD;J;w;;$j)?u^i$sh)S}D+z&pHvxu_2Q~vJ$@N-VQ+TUa?b9h11pT39;Ryp-oGaTv zRAoi|Py4^O)A{ubsULU0e_OuDYvh3u;xa>rHi$C)K+hqx?2SjqGXZvwqn(=hk4~2 zH9p6GfA(jqQe+ms&!go`u6Frh^-%eF=OhUQjB+#w6ch&bFNruHEtRuqF(_vAyAVj1Rll) zMv_n71sM+GI3cqbpm|X*Q7?YAizvmf)ygP0Z!cEAqrbU$qW88?inS{7)!p*@XKyh7 zRF1plGG)O0dI8?vzx{OHxpskFP$*xMdlgJ^W=2P?bf7G=B|hEq|DpbpI!nj5vr>0a ztZf}#V5qf2Y+8}NUS7nJlKaiC!4 zRkXnf=;QCm-U#U3(*pl^kO?I~+2;J}bEc}KdL@s!W;siS@AKO!N(S)>2~6 z+9mX7v;Pynuf3a0gACtbdJYim8JMBuHEs95NbAGJ%GAq+jM)cOugX}KWt4>O-#3E| z;|M@*e}eIZ;7ui?8_b`yGWF@_qfUid3v+W4a5|eud~#`rHyl$=>FV&&bQcRK+yE&quG&_gw<2rDSbN7WYN^7_ z9P-qvm;ePyLr1P?hrbY7eUhwhOXuSn0-E2I+-TaxgO0Mar0K6Ucb`C-hMV0 zQE@dj&bz=;D>*45fF#dkN+N?#8|u?8%Y6pola_|8K{t+lwx3geTCCqOvFsmer>%&0 zv@Q{z#B^o!_9Z4s%^j&I=H45!m5LKdOgwTS7@qV$wgpE@bEF4)(VlpPnj8~Q+Kf(Y zv1Ww9(SzPMK1{U~Io8wB5$`rmL;t0@z;h6#u#J&P?kZ>>K)o5-d z2#$PmEPhCJNT+9;6<3Q`qkTpaES0gjm%#h6HBzCCbZo{4U+9*OF`mQi2j#A{Ph;K| zi8$l=kxD*-CsVi0kG8Hw;K}_Rn&%vzqK5z^l3<1Gy(xU}5$y{YI7@#k5qu(AGS&3b zu0`}?3>U|0U(|6FF5A-LNkN|^NZKhT(2Hpnub_2-Ra8jIV<4L zHTKlY(Ug>^capJk=9~aAO7z&WlOZz^)q*qxQw&OXtM~s9b-`5~ebA?ozRIUTO>@Ah zuKlh5yGl2u(Y8Qkeq|{alRst8Q@;N6Jhj#L!EP8bp7ZH#=XHb)I52}wOn^hKwj)sm z14xn#paNnBVa=rLDD2q$@J`mPnV{gnNgE3HF^}mOSN|)0^KUGW=KV2lnOU8MIBPKei2p{Q%dPi1 zZ!B_Syd|qPFk4$UZ_r=i{ontX|C{@tK%0D%@q;fyy+P=F{X4Xldu7p&OwT8nGp`c9g`Zh3+ zIlzp^#=bqF+>p@em?eaHd!)OQO?~)9Gr-ntBP9LK9lDdM>B4w5~!u|;!48uZI$MNleX4sH+DoVC2G9BJD#Jx@IU4O z8?OWD4rGXlfMwn-O6nwf5R(36l&%pQB9*EueYp&mEALF>5?Cr)8lO1%=Ve|#;eM*= z^@rGQr>hfjNSP>miWm%dpqEpcI?6$avs;l9Ch}K_f5gQm25u$|eMid7%CMgO)H>v- zg5l;+rM&@Fa>$S`+Ba*#Y%LitX&5&tvd;Xd8ODwDKCWDKLi#(HL5G!09M9-~pKyFcuhJ$OJ2CD7DOhE$KwelOgo2I7ha(n)jqd_v+HbEx7R+{|f>Vs7 z-L@yk>RkKz)|y(zXTOxN1bSzzd$&a&8Tmt&E=b>I&304XEUM zZfV*m?bLKkBxgUi7=d+|I?{ir+@c{oKRG+=6A(D@UdB#dj8G~xRh5Q?wKTP`3 zga~E|Kl0LCO?a&dro*l}&^w&{z+vg9@STKhop0*Bx~K%!%c1hSNC|V#Q(rc^0u!J! z%&VLO-XttRy|+}zZF;L}a8ahTE;j4SVG;_9$F(0^ekHlGvA589_c4R?1AmHFj5^qr zz(pq1kU9s2kqJlj3uEgV+AoT~Y1vrBuGL=c`yy3HY4P0)T75jbdZOcEUbnja>{W378-xr zOGM#B+Sd?FT`2Y&aSt{E1iTM{CFM}-fTGzPlno((82)1yCG!r)@>}dW*|EJf;qOJJ zlHr>(XWKK)hkg`9TTBa1(>H&B&fP|Gpb2n+U3&5z#Pr|2-m!F8lXYAR65`t}hMH~; zG{yGM=K5(950?cu;}^d!hzFmoxlnndf~&PUPpK#lTC$f6+^YbEpSjOXXEJoYP;8@7Z4c$U+Uj^K>O{#M=>lCaRjuQvJ?Hvq{!!PbEE!8(p#f{H z0=ENBn0cg!iE=1V9B3lIvkIYC->>j=fx(W3pnczaEJe@d@0ag(z7MNO{4Z!l_xG;wGNl z&qcbs4Pjq!@#{#c-4#HgIxCx+GcEF$&Fkna5}t8Xh`#c96bHB+plG}Cw425 zfBbiElkx3^kCDfHHAwZ2%YX{;rQbTsOuy)T*e7kH@v%EX-e2>ON+_cGoD?4 zB2jiDyf&}j>5N25diorwNg|u!9dY!-NBFJMs_Ten^nU1+dXjDxjje(l0$9SJiA9+O z@fp@YEB9D)_(AA0l0?tQG&E1&>x>@ltaeyE*gKbZ&YXYZx!QxFOPqA}#6=}Z{rjAs z)lRB}WSLA&y|h2x0q^x2gkZIYMFQmwR16o{f;I*{ZEz9yA04|3T#u9U>ay@uU5j&( zGnQ?1Cs{y?m~A0tV-RVvan*F_++)*|#zv>8sbIafKuvYIo$Nx<8%Jo7a)`MfBx>FNx3pp_U-A)jo`We=zyFCjqM9LoYn()%}Hb> z+VEm=R#M=F7{ilIZv%P8L|ylWXAhgXer`Lr-JQ@>G8WC6yahwQyU zfsy@UR40QGjBs4P-3L;Zbyxc|tzAz`!2 z!Amd_7zV;xN{*la$SNVx2ia`j14#lR-SKOIp?$53VWA|C>m4&2sE(;Og_W7xB06v2 zYPph^zn-|NEzkXPy9}ZO7SIT~`g4UOkIX~{t|XyP8|jnMEcde>b=_JI)V?&WG4;mx zZ?r+w%PrqcDdOyogn^>`=dzfZTfRM-w3m2K5#@tDNujf%;Ek+o<$|R=3(_et+Y~7O z2Umk%H%6TC6W;6D6DE0BP8c{=>}db3O3_d>vz)5MYjn2NRVqh@20eYOz~wL%;Yd(n zmZZkpW#PuNL3lTR{02;sKC>|-z% z?kjP5`>TFujK%{wFS(11DvWm$6SK!NIsLjgj5R3<$lkhAf|E51Vg^m8F*dJ_TkiNk zu_N#$=f2kb5nA&zzf8)_1tb5*&c{wyLh9s4__bMd3w(5(U8$a5mjGaU4~57yqP%kDwbU(yuPrf1TEJe0J>L z{B-%U1E;F-mvo7D-Zv0Z;7LIiBB2R*Z^EAeCuWZ%7duaiC!3QFN2cqPGF33uay>1f7Rg}-A>iMxagZi)4xHJi;Z^mEkw{5b-E5U!2J@t}$k|@b}m-Qq%caNm6KvbZj z(Eck6xjpvKMy;fG@cyfW%6H)*>xK-bpHWS${YeG@pZ!LaXakkSxs@+5ZERF!5D9W7jhkJ z1t%InD0_W1kYW^1f^~`k^bJXmxV|&kE&1`q?Wy0+57(Y5^v0g^oDp9)v-6BEe!BVf z%u`!BBzy%`K;aoBg6u9KD@Le|be?SalWSYcig&bfJD)5uqw#Ko0Sxq>urMfKviWd( zJup=|^@@lYi3Tor^&h=K5YX5Eqic!iB&)?Zx<6=D5c`q$KIJo)pHpD(fPl@ACD*Xe z#ue`c3BAX67_`ZuCWUvIgTDQ?rdi8YNaAVhg_aUJfVI4^sz`Pyo~eU*Xz=={p*Fs|G!w9bdS|#7-FY}pkoL1 z2dN}92#|irURR3yzP0PVcV89{koF?XP`~GFy`5-!>t)CzvFjD^qnXFbLPa@9ym$GSE$02m)D#w4lnBF!L9}gF^ zx9nicXmWB}#CF{r*hyeHSMaN&yjmg-3D6co0FojgLYxLKBR9sAlt|X5%@yb&Q-Z<* z1>ptP<^u6&KeQ!ruP=XcJ|Bpe%w&D-p=K$PlxZt*V@$s566fxs9OW$#BV3Kuw ztu-MO!73Etcp15(uglC!ugPaqx0W$03snyjM{iOLuULydxp3F~tL>2ny)>ZDik~N6 zj=7$@YSsgW$46R1@zx}h80b6yQujlHe-l9OEm}M{cNj4&$+?lYw9z2M%*YNo=mFG7 zF@Q!fRnB%xgx#-XrrlpFm);TWj_Dmls_!}3E zfKM0CLVkLHHS7bH?uPaSK^)c(O+^S(t7#ZObz7_Wm3=`EU!$^6gmn#Ydz9d82`^6) zpQ&-?uKGKWefz0~^UB{!<4cFIAv225Z}JJmEVAKG-%19I7eEu>cm0eQlGmA*hu>o%gN7-eej zGiMr{URPwWbi|H6TK04D8f7Y1s87ycMns6JrXhu7gMOJ}-`a`VbkL;Es zoJ8>fy8la?#n$rRSdlTo7qfD+f+gS1ryJ;Be$pf-=K7uXY|ZLjbHpFRW88QY#|-5e z_^oothZVdPSq$(S&rqz$)+GHK1dU~bIsC7%T6Kq{-QTLgRfE#axh@Nz-zheBy-CUU zvJZo)$Ud9s1mb0?-(_|Ykn3{vwH&z4N>iO9vG<-L_K;7n{2yIX^&<};^)G>YXLjCg^!!Ng+iXX2k5-;O05Q-?An25f{)&HwOy z+irKKS%Ah(09-Md-|L|kb)OH%P@XKVpsBk1Q&m8m1G3Eo%npz2wJ_2Gcp7rG^bbTB zw5?fc?%OBDSUp_xAH`nW=zk~T@2@}Iq4nw2*-*aq%b#jSy458facR#p8 zPi%8Incy9*9W31)Zfe!*kO$kksKiyY!T9SG{K!xbdA;;1T}Gg1y1V%ubeNX)6(CtM zrwbkC^b~3=qkkHWWF3~3EZxGMtgvhjEcdSpn1MS22i;yxgamCG&0LHB6=PjK=;d9dIqM`Bq^U4`!ER$J`+VG0F|Gqv zV@}4o<0-(Cat7;HN0+;=*Nb|(a-if>_D-lT>qt#Sa8o)mWEMRRqj7LkpLeU%=8*&o zbSi}5-(1skzgPIKcLcriuQD5$v#9jr|C4*=1a9;BAlpM@+ZUVb(`o*vCX=AfZa*<~+1@_c0szk|2Q9R1iY|nh#C{r6m-mlWDTc zx!lRGz@B)O`~^j6v5H_W^dRH~HR^xNWaIpA{C^^v3It0U2Uz`t z^q64q=>cXFdXg5%dM4hGG>Y}Q2$aoX+dibWXG(Z`^5EyPbXV$xm6WBAozyeI#I{H? zTh$RVXy>q|h%uATASR%wEDFzUP@ViNtWA+Bks=^d!S>}Hd2`vkv%3k^{IT(cJ}-J|=ipw6aP$RfH?8CyhSp^`&E zqS^~8RE*HOr5x}eG5__fzA>&V>mPwuM!@=yjj}eqk(|k~(VGR@`RK)l;}IUgv0Uw3 zsj|ynbTl6fMGS0LrlC~xbfid|^)pVAX^a}3C`Y2Ds0S(PKIhcm1+dUbKv)gxUkZe; zE@madQ0TtsSmnMIE`;hfe~0FmrDlmAVoJ9yN0fqUYJUwhpq_^vyyNRB8g)!r9%O*5 z<$DRl@6cL74(%?Lfh~y#*|qHguJ9w|I5s zRDFt(1VwhHHoQ3c(&P{4&Un#@?ekJv%MRxaX7Mp;av7;HIf9GEydRhkZ3HM{fN#ds zmtKwR+qQEDCMPlXIL~=LY09X3d7&4w4G<7UFbgKeitK^thq594IEA)|i*~g*B&U;K zWPW}CKA3m1PV};;G||(`ME#7;h53>H=+2oVSJNQ`JBtd3a%wT+Yy=&U5?@aGo*ue! z$2+sF=QvXUnD2nnpW8 zyggj0s=~Kt^zCy^xmO9gwfMNtBcj>yawZ@7W{A&cO^rEmqoyEc0epJ3?FFJ5jLO{4 z6d~Oy^o;hU=&o&~dbu@NeBWy5#{9$zIYYvq9m2LN$ifu=ZfXV86Pi@o9Q4keKQDZr zp-)ft$-SneG)%Bet;cEHK+TFeqpvyRLC6b+yLLf_u!FJx4=&VK@qLy=MB}6}!dQ zBsyENkVBt>hu}}p(TmT#uLA8)Z3-61W=X4)SB>PdRym19MMPv{j`9D|&AyvJy}k3l z`d_g$j_2UEdl3tz1go9Bq!m^W+iTtC`U;lS(r(OXp7!0vx3HDUk9xBCifZq>I7{6W z>KYNe@*^litFaCc1Lm!eT&09aZwgN$@iX;9ml+{=eRH>EHP!^v>IO-?Ing3w$S>Q` zjmjrr4Aee$DD5>h_H27W(UD}x<&1>x*- zPKLh{UturCp3vUAlkcz3QYU$68+a&@E#*Ra1H!x$l5M56dad*H?K$5LROVf^>)LMv zLUWhVL-uQbC})ajr`GnFhyL0poFkoH$BS;G?k~o6+D`>ts8PIJCotCDmUm*1(L+)4 zu*K|p9Pr_sk83N&yVOB@=F3rEU)~`5Uq3YHR$sD*V64Yi87k}7fvE4lTn$UZf(9zi ztnL%kLZnBr(^PM5H7VA>^4(75(A3S&Vy}+Q#>^3S^y6swx^+{bg1Ab z1yr+#q8Lcx%$un+5Jgt;U}vH6qhv?K6y!8GBf=Xzj?0Lb8 zw8l7-&}%D?&lAkR+-KTCcPjHtjEQ?lm2bW(PoYxXFVCz$_XohBTf6KJ+)_Dq=Gea= zd?dCYSM&d)Ln#9aj5~>eSWGRXFujG7`!T)aqqk@84SItI9OcHL7N+t15H*8FeMEWu|4~ zK3=Go0lP99$zjH_p5r|XezAzADx|tzogc>ZPY5_;cwz92dRF4hMI?5eFPFL zyI@hoHYVE>r)taTGZY831cBJ zT0}7eKbM;Y^GGM?h-S)vzxpZ8NF6`<<}KsarU)WZj+tNx&8Boeqc`Nc{R?;H+eHlX z6vOnUAj687QJ%pAskdNOyR``olyr}QyJYeMQeMu8Nhs0M!0SJ{O3RM_=(r?j(OA^~ z3&=_L?>sLy*Z&_KgtW4joZ7sS0^taE{>bAzz9|r)O}u5mgT3}qDicin7BAL2+JfzZ zFvQ3~?dUcDW^)O-`Vt(E%aFd|%}5@R&LxS!OJDg=mPb?bCd84m)=MTA-tb5aajPtx z7xfv=qv=%lJr+y;jidavCvFm|X&h1iOX~j^n2=|T6g3y>4n6seREk*^Cwvd_2L*vL z{tnm7YITi*D-x)}ijONAjg2uxQo4+Ds6j{^vb-krym8O{D34cT*N~-?<&GYObN7TC zO-^vYaZ{*k_N1(se*p`4m)=X=ij;Tvl9*{6PT*^E6fMF=@}p*GW>nHr{)>1?z1F;PzXCP-MgPuGp`ePLKX3A| zWn;Yb|1>Ag#TeGXwP_rx)Q+Q40n>9`?a}@}`?W2jv2W`X|E{jBl_++3e889PN{Aj` zb$%!QoT@;{Mz20c5}dQri~y3CF!B?PLgLeE2CJ*G>^Rv-V>c`vYVyJsBoe+Z5-xgh zo1T7>z$$9Srjad`A`rS)|GR9e<%`xqpTg*QJGfMar{mopT6P%13-G^pGuWqug0TIi@{o!k$)Hxn;Ib^!{FZ#24 zW*Q%VQ17GhktY=U2C!EfdYCtaaR1TOZXMeb3P95T47>o7E|EaON*|JN9huzmNMP|- zd8oh>iVeGS;clS23AKp#5vOu&zd>#wyDPWcQl6c8S{$;(0KLN*`R<0|t((flm@h3mzC=H&}v0Eowm#p8VJ1#NPFOp(%0nlZwW-qo! zNHGqiN=A7!btGUvfWbTVoR6Tq;d_sj|G7YEVX@uTC)FgRbvt@;FGu}RdsDkZ!RLhA z{goRQbo!o`?+=$j=Eo?)|F&#B6=aXAuUCY-&mq3TTCX>F3ohPGyB(?YRIACzCDej0a(vCsdL?^X+1c3g}XLJ=+*L) zL93ove&Q?FUUzz^6ssYz*zof!W|57j`398oQ_yJ8zimyD;l%fnrNBXf8~D$a#pE8R zthg|RF^;Oo0e5C!NBfgINA?u!7S>u6x}5t(1#=v=&inFtthB-uj%`R_S1|%^ZbBQV zoM+U+PXx!&6y~mHM@oN~4s+Fu#_Qp4tlevA&(Ip-NmmnPNPK+z4nUuM(FFfw3codR z7JT(7ynnr*7m8JOY}rqmOTG};QhnOfVbOQ)JnsRU?}cR%mRh{Hw7hf%C0^-Acx2eY zEOhskhy?oa7)ir}##&DHLkuIi5K2H-<}HQoZ47j>B|~fM;uJo7xMY&{V_g?9CDnk{ z`$g6}cl*%U$2;&{+nXY2yWn&xT|Ur2Jf*GmIOg!Du_3+KUr&#E#xOyQrpEo}5X8K6wkZhoWyxyy&8A#u;c{3d6E{@Q@i(j`EhMU};Xx`|^{gjBe zZ>{H*aHI=XwB$PEf_=9D`4giJcn7Whkr$YW;roYzOV6GkSyo-L#chOLs_9OD^G-AY zOpYUiIGf;#>;+kZe^xr0a5*cpv~>=X(!3`?xkQrH{BDPu@}7q=QmgV{u~+ex zP0-Y%0R{1+i<8%ek-2Q8Bt1zQ+cSsf2pu&Ac6vbGSa}TJr1ipvPticM1H3r z5R8Ktp+MF*el3`EB_?`5Vf`<_Hln7Afc0Tbf)emjHpE*Y7uY`>KWDnCACQr^L)y%x zvDAYtbZ?=QFKD; z#Sd|jB(el*dG#BloKpS0gQB5WC2lMiF^I&v+i zYc)+<&3f512O?^DMToER3O>VeOTfwH{o~*%0G>I6H%$nO>5B4+^hPy%|KF(Mx3S$7 zu~xu*2Ujt<^G)Zo*6F5 z#?S?oAIfTg=B$uX)oE<0r4ljz$EwW?YhxT*0)jL})hCh(tVUnj?2nqrV8Ry!9h3o~ zo%ScSlLg?3{i?obUWCNX6WnR#{yFu)4ohdtCGm~GAe9Qqk8R1td@BSD>bcL)mKU2O&Iuqw8b{hozFT z)f=az;&rTEQlHyMu%Bz-$R`2w4b@>W9?~)h2niR!7oFU*`w?GDp!%VIG!!sf^MUD` zRf3?Q<)04bO=Z$KD87H+1E@`ay*x)y#>?(^D|qgE=DPa)O`3U~GD&n*3#ISyv6a6( zM;|%D3xDELs%WG2nl^}G&p5OEP@Wm8B1pu2M2I7MJ0XqM7|1;67qnkhP5`63OrL2e z^IAr}^;h@(jIC@*wrTTSOI@XZ^wQL}>rU|_yp+mW#OB$>SD-ZOO-&BSkb*OP;FNu; zAHEvJkyz?tI~qj3|0U;PP}|rC**N_>GoR#6=zxm5A$qLE;tKEoGe+#+|MdS&{7)22 zzUG5QXWp=UNSxUvqvu=G(SNqmZgb@^me}7{r-4W=ADhL|c_NN=tR6c0lv8lC)Pq7p z_KtwIYxE)yjTO+j7>OT9D6-0u^H#UqzINIL17(hK4KA0~QeI-g++GNydUem_`tW6b zTXb*C0|#4f zKAAs$ePt6f9Wuw$i-_O$Y9T_FHuR6X@(9_a zJ@l;AnwNCT>_Ag)x8iUu)%TZ7yDF>7s~6JG6rO7RVs`iHJqvlg;+bQ%(#FKR(epiY z456lj6aPq1!Va8Gx_jd!^TqLK&Wk_wInJlaT|_Y+m@!BmRVfYxPL+XyiOD!)p1Fe^ zuuzwPje;QJR}V-UyN86oum#DRt%N@*2GKRH&Q`US{!F{X2;!MR1?esUn~|VvKd#vM zdc?lv=&5Zf_#3Y+SAIc7kA2m9oWuXv0-Of{K@4EGEy)0*01e|>vrx}HPELL|5|88m zMcbE$Lmj&Mk}X--|fZ!U}w<}I9IPucqR%K z;Ix_KoQn*He^)C$=yqnsG0|@MqKKh^G-0Z3M@um>vpRz7a5iX@3hC{<^dXgg@vqBm zJ3j1(*((6zNvPYgqXW!(9o|&95lGw*3b<>+^;2`&B}ypS-*Lh!;sUn{c)zt0(XiNWV^#N`+(< zD->bIZ|at(7>D-(?1s200Lkzih>; z6SXA04ucuO^#k1RM&OfNXa}<#bwV(QCRQO{595TXeqHr$}Txsj+9#+g{4so7DRz5Ug;kuxB|x;S=#mYEV zzscH4dvW&Quw}D=V!vx1)-G-`Fi!rv9GclrK#>b5UMXE9?!uv}%}5NMq=1~1Kx{?JfXEz3Vf)Bm;a(X6Z_=2$Ltmf+~w>;Bct*M%(} z7z+{0xIiz*^>zTUvDtw%h@lF>R;{mCg;Fb$-b6S4uJ`NI(+)PX#QANZ8^2YS3qJR- z6RwEJ#@IEe5p(mA@~dzr?DzUR(W8dwv*Jz(rfuMqoP1ZaiL1On@Q-mVbN(iW zc2OZGl+4b~cO8~X_}=(7<-7X&z|R#H$-73-O@>4;k|pT_dTNxAFM{j(sp-`X4)L{ z_P3b-so29h-FG&A`ELTl9kb96J5%th$4KU8T8`jLXM%@k~@!G zv*qZFSJ7CkG5na-uhRVCX}7G=hpIL2mUV_r;GkHm8;}UC?8}sbMug+=ZXhUv66=(j zrA+mB=#c_)0SD6Aw$af0Lfbn}2W#TK6dv_2Z|*9X8~$PWgrh*rS=+j92bKm)3Y_}A z=k(VCoK+A$2}Qi@&&l9WAlfe}^ab84LM71*@LNZHJmkJ=srY&En){Z{_d+LQQY?R$ zW%K8%c5x+}oviza_&SDo$F@&n7Z(FONz97yLQ@VsZ$uRO4|TrPP8}KS^oh;T2NjGj zoGM>@@*iwm{u`8*yKce`3jbNE7EQ>j+3L4$ymLE1kPBU>>=LFbTwa^Q?8Z{`Dy@gg zUdF4M2c;#5i>qDRBfKSa9#&VPUIvyM3&y~YXU4C$$a3QvSTg`HgHl^Kt`dJ_6rBjD z7$pE+jEJh_@&fFZB}-a^R-2FoQi>T)GIG5BPQC8e(8a`)6%vsQatf zK{LMAU`eD`39aa-qTDM(qKapQZe06%_JN74(6^e(-s5+S>ai=x z#Sy9u)NPLO=b5(b<6h#Kv0Rd@$CEU;!#w@8>G~U$IPOoGZMCnYtvN=-PLjL7V@fdh z0M&FIO%Te`z7D}zVQakGdJ*#VE)1icq~+pxk6wt?(x*2RJIEH z-wYv!_udpuvW^<%u^Qo6q}H>=?7J%<&1c72s_<}O{?M)~&k9m2Mh%QkJA|*A7o>di zCn+tN4oMt;PRstGBjiSDETDn zQd}D;pI}^#NQ<#wa-C_Guwbk<{2nnrQa>9n7<$H`|`?FpIQgm|VR|_q4_3lp~>dy799pr@sm@m%u1i zL-?jn4a)tR$kHwh|7MIt>HOTOf+&^jlIG>@-*l zIRntT)G*44vK|BeniPV-*F)UKGV8{y%@ob5$Rch6pmjF~!He<6%&H+9Ne}g%Qn6_@TF4Emit#UIiEkaH zIH9+R^X%7xjcM)C6Nx%PQVIYtQeYh3kL|ujqOp6}^mb8_#X`?}+nu?57awxe;q>5x znaVR(vIW0-{L+Orx_sqs8rkXd{ET3517|PseB2!1j6-fRlf;08d=*VpA))E{ej7uU z^USRaFV{qzF3h`nh{`6O#G8r-@s7xrD1YE{V>>~6O9M4PNf8jf-k60nUxyzKOpF>y zlNkr>g0}Y7+u!TkF5Olpj~Q5O3MPF&Jz9E|_Msx4i4GF8ZvX`dW;TbxVMJnE3hd6A z6+t$ULOaDlD|I!un=jcVc1(GU)3GVEKJk!TdhqwsBebsmhmFz>sF{fq4f6J;$UYs~ zQD3mBHql!E-fo|c5;E3~`^q@{w5!GC*K_|DtK_5k{+ME)G7)?Io`i?4if`>Tp53&6 zWQv<+%;zRa$&SUt%^jmFb2HGlc}(-ac)zkg7pvIwpjVc5oXKaO2)we`hcFZpZ$K{R zKLIc?McCg$@>j}8E#nia9>|E{5WV5ydnu(LU)KG8E3MW)AY^$&wXot-c&;^?yB;U+ zh%@bn9(96Pkz>!s_w{DMTD zzcTaS4otxCS|akVpyDMJ9`tM^m!{~LH4zkh&YdK6i}MYFVvkO+0JRku91ztJeEuBf zrkcbpWb;6UUtMHsSJ8y_`86WwJgD`S*atR zgEy4^?r+BcgvS>nn?de?svKkblw3<(B^H+xYQs67avxjl?#$pk;=vmIctR-63ag>I zw2>74rQDiPeI_C0Ql`T}on~L;F6Jb!=>=B3BR@m-u3mkXQGDc_Zwl7VL_C_b^~=^^ zM66{m>f*hs;qBj_=QSokVIN&v4@zHnt40$LS*qB)OuTKXkRGGq_o}x- z?5$UZUYN>-k#qcy29>|m4&~kn`l#MjC&chWk_2{XA}ku%f$uYkZI-Dqx+ql`OlaKn z$mR&!njc*jgKxz&p!-K=@9(2io@7r7yFd5T{dP0|SN0XI?nC6z=S>|h!x!@oK6rgz zx!(0uP*U&}jI$k=#n%bJxZC%=tU@OS02xyvzW_wT{c z&~^VrEh(mFlB^3RFy`!Nf8Dwsdx{PZ`8ddPT?LV@YBErkFBn@IZ9o5dZFg^d_4UbN zt!E;g$Vc2m$XxHfyIvMSPZR68M4fhPtpIyz%8{5R2do_Iq)}(tKbU^~e@8$54-&%k zZ|uLLAWHlByd;o139Q3$GT4FZ&$5BM4{tPDKI)X-Zo70J&i$s0#C`)f(4V(gexNP> za{Yt-Ow{t`s;Y^*U{d!}AA{nd=-C7Dr4j`GC9n$nLkwQVN9_V!T{=x`={^rXbn}xg zx?r2r&tTmtW#;kSo43CyCCFMN^AV|ur7)-%>{m%yUxxvykKcv5udg1ioF>07a~y4Vs}GOEuNx3qk@Yc z(F5Xe2mn0KLjB+^0(iRXrrEk2qXODUW{XZ~0)2Z0kNhIpaI(*vpHCL#pRMoPRR@>^ zw%x#zkI!c1!?J}OjA2y^-h%+As2psOhf8XuaLj!lvHdZ{a6k0pXKei#rdEw|9ONZR z$#X;z8ZR5(e)BbP`209ckHon&P|BKHwWb}OF?^t30uXG}2>g9JFfJx9FDh|Kk3AX2 zv%G)txg3g$)8p5GUI%_ztmTz0BTvvP?DjmZ8Y_oCteKg?c!vPGI7D;!Y~Yd_O^i-d zAj?vaps918po)FR#^3YOxc{$7wI=qLnDm#;1&i0xm(%MmMuukvwDiHRu>QrZK{BC#Io232qVsAMo;3o}#X28vnr6^auU ze$;p%EY@P+tLSEXn`bC+g09d8$3I4rTb2VKWozdYU~&PFlmt+IeDm!HOqahibG&uO z7)34tw>9Uq(+qCw1}?7|H@6@H;nR>no3fOcYFrb2kk&)>~`93Z(k1G>jjL;SX;aJ|iDRJoFF7 zvo6Nqv-UKB-Y

    ;zKd!iF(G5O!~6p;H#KMYs?7P43-iow7M_qh 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 Date: Thu, 24 Aug 2023 14:25:19 +0800 Subject: [PATCH 28/30] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e53b6ec4..534a43f2 100644 --- a/README.md +++ b/README.md @@ -441,6 +441,6 @@ $ python startup.py --all-webui --model-name Qwen-7B-Chat ## 项目交流群 -二维码 +二维码 🎉 langchain-ChatGLM 项目微信交流群,如果你也对本项目感兴趣,欢迎加入群聊参与讨论交流。 From 63ca393731e98cd4a8e665c13e1427b3c886fa32 Mon Sep 17 00:00:00 2001 From: liunux4odoo Date: Thu, 24 Aug 2023 15:10:51 +0800 Subject: [PATCH 29/30] =?UTF-8?q?=E5=8F=82=E7=85=A7chat=EF=BC=8C=E7=BB=99k?= =?UTF-8?q?nowledge=5Fbase=5Fchat/search=5Fengine=5Fchat=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?chatgpt=E4=BB=A3=E7=90=86=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/chat/knowledge_base_chat.py | 3 ++- server/chat/search_engine_chat.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/server/chat/knowledge_base_chat.py b/server/chat/knowledge_base_chat.py index 4914beb1..27745691 100644 --- a/server/chat/knowledge_base_chat.py +++ b/server/chat/knowledge_base_chat.py @@ -52,7 +52,8 @@ def knowledge_base_chat(query: str = Body(..., description="用户输入", examp callbacks=[callback], openai_api_key=llm_model_dict[LLM_MODEL]["api_key"], openai_api_base=llm_model_dict[LLM_MODEL]["api_base_url"], - model_name=LLM_MODEL + model_name=LLM_MODEL, + openai_proxy=llm_model_dict[LLM_MODEL].get("openai_proxy") ) docs = search_docs(query, knowledge_base_name, top_k, score_threshold) context = "\n".join([doc.page_content for doc in docs]) diff --git a/server/chat/search_engine_chat.py b/server/chat/search_engine_chat.py index 638c3be6..f99cafc3 100644 --- a/server/chat/search_engine_chat.py +++ b/server/chat/search_engine_chat.py @@ -87,7 +87,8 @@ def search_engine_chat(query: str = Body(..., description="用户输入", exampl callbacks=[callback], openai_api_key=llm_model_dict[LLM_MODEL]["api_key"], openai_api_base=llm_model_dict[LLM_MODEL]["api_base_url"], - model_name=LLM_MODEL + model_name=LLM_MODEL, + openai_proxy=llm_model_dict[LLM_MODEL].get("openai_proxy") ) docs = lookup_search_engine(query, search_engine_name, top_k) From 2a2b95d2140677c34356276b12faa8dfe26a1fce Mon Sep 17 00:00:00 2001 From: zqt <1178747941@qq.com> Date: Thu, 24 Aug 2023 17:25:54 +0800 Subject: [PATCH 30/30] search_engine_chat bug --- common/__init__.py | 0 server/chat/search_engine_chat.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 common/__init__.py diff --git a/common/__init__.py b/common/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/server/chat/search_engine_chat.py b/server/chat/search_engine_chat.py index f99cafc3..032d06a4 100644 --- a/server/chat/search_engine_chat.py +++ b/server/chat/search_engine_chat.py @@ -121,7 +121,7 @@ def search_engine_chat(query: str = Body(..., description="用户输入", exampl answer = "" async for token in callback.aiter(): answer += token - yield json.dumps({"answer": token, + yield json.dumps({"answer": answer, "docs": source_documents}, ensure_ascii=False) await task