From afba01b708299659b8a4687b6425549c8fa593e8 Mon Sep 17 00:00:00 2001 From: ZhenyeLi <806957048@qq.com> Date: Tue, 5 Nov 2024 14:21:10 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=BB=91=E8=89=B2?= =?UTF-8?q?=E8=AF=86=E5=88=AB=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加黑色识别函数 --- cotton_color.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cotton_color.cpp b/cotton_color.cpp index 877fc36..04a16a4 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -54,6 +54,11 @@ void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) +{ + outputImage = Mat::zeros(inputImage.size(), CV_8UC1); +} + string openFileDialog() { // 初始化文件选择对话框 OPENFILENAME ofn; // 文件对话框结构 From 4670045074ea867f4321d581a265986b3b3d0275 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Tue, 5 Nov 2024 15:19:06 +0800 Subject: [PATCH 02/16] add a test func --- cotton_color.cpp | 1 + cotton_color.vcxproj | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cotton_color.cpp b/cotton_color.cpp index 877fc36..5d3df12 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -85,6 +85,7 @@ string openFileDialog() { } +void test() {} Mat readImage() { // 读取输入图像 string imagePath = openFileDialog(); diff --git a/cotton_color.vcxproj b/cotton_color.vcxproj index fd94705..8a13bfb 100644 --- a/cotton_color.vcxproj +++ b/cotton_color.vcxproj @@ -104,10 +104,13 @@ true _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true + E:\opencv4.10\opencv\build\include;%(AdditionalIncludeDirectories) Console true + E:\opencv4.10\opencv\build\x64\vc16\bin;E:\opencv4.10\opencv\build\x64\vc16\lib;%(AdditionalLibraryDirectories) + Comdlg32.lib;opencv_world4100.lib;%(AdditionalDependencies) @@ -118,15 +121,15 @@ true NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true - C:\Users\ZLSDKJ\source\opencv\build\include;%(AdditionalIncludeDirectories) + E:\opencv4.10\opencv\build\include;%(AdditionalIncludeDirectories) Console true true true - C:\Users\ZLSDKJ\source\opencv\build\x64\vc16\lib;%(AdditionalLibraryDirectories) - Comdlg32.lib;opencv_world4100.lib;%(AdditionalDependencies) + E:\opencv4.10\opencv\build\x64\vc16\lib;%(AdditionalLibraryDirectories) + Comdlg32.lib;opencv_world4100.lib;opencv_world4100d.lib;%(AdditionalDependencies) From d1c0f2f9f89090ee49302d44d62899dc7e1814e7 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Thu, 7 Nov 2024 13:57:17 +0800 Subject: [PATCH 03/16] add GreenDetection add GreenDetection --- .idea/cotton_color.iml | 8 +++ .../inspectionProfiles/profiles_settings.xml | 6 ++ .idea/misc.xml | 4 ++ .idea/modules.xml | 8 +++ .idea/vcs.xml | 6 ++ .idea/workspace.xml | 66 +++++++++++++++++++ cotton_color.cpp | 37 +++++++++-- cotton_color.vcxproj | 1 + 8 files changed, 131 insertions(+), 5 deletions(-) create mode 100644 .idea/cotton_color.iml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml diff --git a/.idea/cotton_color.iml b/.idea/cotton_color.iml new file mode 100644 index 0000000..d0876a7 --- /dev/null +++ b/.idea/cotton_color.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..060d2c5 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..876a814 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..7bc015d --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + 1730791232605 + + + + + + + \ No newline at end of file diff --git a/cotton_color.cpp b/cotton_color.cpp index 5d3df12..1726e43 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -52,7 +52,33 @@ void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) { + // 从参数映射中获取饱和度阈值 + int green = params.at("green"); + // 将输入图像从 BGR 转换为 HSV + Mat lab_image; + cvtColor(inputImage, lab_image, cv::COLOR_BGR2Lab); + + // 定义偏绿色的Lab范围(具体值可能需要调整) + Scalar lower_green_lab(101, 101, 95); + Scalar upper_green_lab(135, 120, green); + + // 创建掩膜 + Mat mask_lab; + inRange(lab_image, lower_green_lab, upper_green_lab, mask_lab); + + // 通过掩膜提取偏绿色部分 + Mat masked_image_lab; + bitwise_and(inputImage, inputImage, masked_image_lab, mask_lab); + + // 显示结果 + imshow("Original Image", inputImage); + imshow("Mask Lab", mask_lab); + //cv::imshow("Masked Image Lab", masked_image_lab); + waitKey(0); + destroyAllWindows(); +} string openFileDialog() { // 初始化文件选择对话框 @@ -85,7 +111,7 @@ string openFileDialog() { } -void test() {} + Mat readImage() { // 读取输入图像 string imagePath = openFileDialog(); @@ -109,7 +135,7 @@ Mat readImage() { int main() { // 读取输入图像 - Mat inputImage = readImage(); + Mat inputImage = readImage(); if (inputImage.empty()) { cout << "Error: Could not load image." << endl; @@ -121,10 +147,10 @@ int main() { // 使用 map 模拟 JSON 参数传递 map params; - params["saturationThreshold"] = 100; // 设置饱和度阈值为100 + params["green"] =134; // 设置饱和度阈值为100 // 调用鲜艳颜色检测函数 - vibrantColorDetection(inputImage, outputImage, params); + vibrantGreenDetection(inputImage, outputImage, params); // 显示原图和检测到的鲜艳区域 imshow("Original Image", inputImage); @@ -133,4 +159,5 @@ int main() { // 等待用户按键 waitKey(0); return 0; -} \ No newline at end of file +} + diff --git a/cotton_color.vcxproj b/cotton_color.vcxproj index 8a13bfb..2c944c3 100644 --- a/cotton_color.vcxproj +++ b/cotton_color.vcxproj @@ -122,6 +122,7 @@ NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true E:\opencv4.10\opencv\build\include;%(AdditionalIncludeDirectories) + ProgramDatabase Console From 2590c25e2c9d985605ade12b1e6415932352de53 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Thu, 7 Nov 2024 14:58:52 +0800 Subject: [PATCH 04/16] Revert "add GreenDetection" This reverts commit d1c0f2f9f89090ee49302d44d62899dc7e1814e7. --- .idea/cotton_color.iml | 8 --- .../inspectionProfiles/profiles_settings.xml | 6 -- .idea/misc.xml | 4 -- .idea/modules.xml | 8 --- .idea/vcs.xml | 6 -- .idea/workspace.xml | 66 ------------------- cotton_color.cpp | 37 ++--------- cotton_color.vcxproj | 1 - 8 files changed, 5 insertions(+), 131 deletions(-) delete mode 100644 .idea/cotton_color.iml delete mode 100644 .idea/inspectionProfiles/profiles_settings.xml delete mode 100644 .idea/misc.xml delete mode 100644 .idea/modules.xml delete mode 100644 .idea/vcs.xml delete mode 100644 .idea/workspace.xml diff --git a/.idea/cotton_color.iml b/.idea/cotton_color.iml deleted file mode 100644 index d0876a7..0000000 --- a/.idea/cotton_color.iml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml deleted file mode 100644 index 105ce2d..0000000 --- a/.idea/inspectionProfiles/profiles_settings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 060d2c5..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 876a814..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 35eb1dd..0000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml deleted file mode 100644 index 7bc015d..0000000 --- a/.idea/workspace.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - 1730791232605 - - - - - - - \ No newline at end of file diff --git a/cotton_color.cpp b/cotton_color.cpp index 713328b..b7933ed 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -52,33 +52,7 @@ void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) { - // 从参数映射中获取饱和度阈值 - int green = params.at("green"); - // 将输入图像从 BGR 转换为 HSV - Mat lab_image; - cvtColor(inputImage, lab_image, cv::COLOR_BGR2Lab); - - // 定义偏绿色的Lab范围(具体值可能需要调整) - Scalar lower_green_lab(101, 101, 95); - Scalar upper_green_lab(135, 120, green); - - // 创建掩膜 - Mat mask_lab; - inRange(lab_image, lower_green_lab, upper_green_lab, mask_lab); - - // 通过掩膜提取偏绿色部分 - Mat masked_image_lab; - bitwise_and(inputImage, inputImage, masked_image_lab, mask_lab); - - // 显示结果 - imshow("Original Image", inputImage); - imshow("Mask Lab", mask_lab); - //cv::imshow("Masked Image Lab", masked_image_lab); - waitKey(0); - destroyAllWindows(); -} void blackColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) { @@ -116,7 +90,7 @@ string openFileDialog() { } - +void test() {} Mat readImage() { // 读取输入图像 string imagePath = openFileDialog(); @@ -140,7 +114,7 @@ Mat readImage() { int main() { // 读取输入图像 - Mat inputImage = readImage(); + Mat inputImage = readImage(); if (inputImage.empty()) { cout << "Error: Could not load image." << endl; @@ -152,10 +126,10 @@ int main() { // 使用 map 模拟 JSON 参数传递 map params; - params["green"] =134; // 设置饱和度阈值为100 + params["saturationThreshold"] = 100; // 设置饱和度阈值为100 // 调用鲜艳颜色检测函数 - vibrantGreenDetection(inputImage, outputImage, params); + vibrantColorDetection(inputImage, outputImage, params); // 显示原图和检测到的鲜艳区域 imshow("Original Image", inputImage); @@ -164,5 +138,4 @@ int main() { // 等待用户按键 waitKey(0); return 0; -} - +} \ No newline at end of file diff --git a/cotton_color.vcxproj b/cotton_color.vcxproj index 2c944c3..8a13bfb 100644 --- a/cotton_color.vcxproj +++ b/cotton_color.vcxproj @@ -122,7 +122,6 @@ NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true E:\opencv4.10\opencv\build\include;%(AdditionalIncludeDirectories) - ProgramDatabase Console From cd144620e369c1d2cc7c4f46024120dc594fa0c0 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Fri, 8 Nov 2024 12:24:07 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9B=BE=E5=83=8F?= =?UTF-8?q?=E7=BC=A9=E6=94=BE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cotton_color.cpp | 81 +++++++++++++++++++++++++++--------------------- 1 file changed, 45 insertions(+), 36 deletions(-) diff --git a/cotton_color.cpp b/cotton_color.cpp index b7933ed..0fb1e26 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -5,32 +5,35 @@ #include #include // 包含文件对话框相关的函数 - using namespace cv; using namespace std; - /** - * @brief 鲜艳色彩检测函数,通过饱和度阈值检测输入图像中鲜艳的颜色区域。 - * - * 此函数将输入图像从 BGR 色彩空间转换到 HSV 色彩空间,并提取出饱和度 (S) 通道。然后,通过设置饱和度阈值, - * 来检测图像中饱和度大于阈值的区域,标记为输出图像的鲜艳颜色区域。 + * @brief 鲜艳绿色检测函数,通过指定的 Lab 色彩范围检测输入图像中的绿色区域。 * * @param inputImage 输入图像,类型为 cv::Mat,要求为 BGR 色彩空间。 - * @param outputImage 输出图像,类型为 cv::Mat,输出图像将标记出鲜艳颜色区域,原始图像尺寸。 - * @param saturationThreshold 饱和度阈值,类型为 int,用于过滤低饱和度的区域,范围通常为 0 到 255。 - * 饱和度高于此阈值的区域将被认为是鲜艳的颜色。 - * - * @note 饱和度阈值越高,输出图像将只保留更为鲜艳的区域。 - * 若饱和度阈值过低,可能会检测到过多的区域。 + * @param outputImage 输出图像,类型为 cv::Mat,输出图像将包含检测到的绿色区域。 + * @param params 参数映射,用于传递各种可配置的参数,如绿色阈值等。 */ - /** - * @brief 鲜艳色彩检测函数,通过饱和度阈值检测输入图像中鲜艳的颜色区域。 - * - * @param inputImage 输入图像,类型为 cv::Mat,要求为 BGR 色彩空间。 - * @param outputImage 输出图像,类型为 cv::Mat,输出图像将标记出鲜艳颜色区域,原始图像尺寸。 - * @param params 参数映射,用于传递各种可配置的参数,如饱和度阈值等。 - */ +void vibrantGreenDetection(const Mat& inputImage, Mat& outputImage, const map& params) { + // 从参数映射中获取绿色阈值 + int green = params.at("green"); + + // 将输入图像从 BGR 转换为 Lab + Mat lab_image; + cvtColor(inputImage, lab_image, cv::COLOR_BGR2Lab); + + // 定义偏绿色的 Lab 范围(具体值可能需要调整) + Scalar lower_green_lab(101, 101, 95); + Scalar upper_green_lab(135, 120, green); + + // 创建掩膜 + Mat mask_lab; + inRange(lab_image, lower_green_lab, upper_green_lab, mask_lab); + + // 通过掩膜提取偏绿色部分,将结果存储在 outputImage 中 + bitwise_and(inputImage, inputImage, outputImage, mask_lab); +} void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) { // 从参数映射中获取饱和度阈值 int saturationThreshold = params.at("saturationThreshold"); @@ -52,13 +55,6 @@ void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map& params) -{ - outputImage = Mat::zeros(inputImage.size(), CV_8UC1); -} - string openFileDialog() { // 初始化文件选择对话框 OPENFILENAME ofn; // 文件对话框结构 @@ -89,8 +85,6 @@ string openFileDialog() { return ""; // 如果用户取消,返回空字符串 } - -void test() {} Mat readImage() { // 读取输入图像 string imagePath = openFileDialog(); @@ -111,10 +105,22 @@ Mat readImage() { return image; } +// 辅助函数,用于调整图像大小并显示,支持等比例放大 +void showImage(const string& windowName, const Mat& img, double scaleFactor = 1.0) { + Mat resizedImg; + int newWidth = static_cast(img.cols * scaleFactor); + int newHeight = static_cast(img.rows * scaleFactor); + + // 调整图像大小 + resize(img, resizedImg, Size(newWidth, newHeight)); + + // 显示图像 + imshow(windowName, resizedImg); +} int main() { // 读取输入图像 - Mat inputImage = readImage(); + Mat inputImage = readImage(); if (inputImage.empty()) { cout << "Error: Could not load image." << endl; @@ -126,16 +132,19 @@ int main() { // 使用 map 模拟 JSON 参数传递 map params; - params["saturationThreshold"] = 100; // 设置饱和度阈值为100 + params["green"] = 134; // 设置绿色阈值 - // 调用鲜艳颜色检测函数 - vibrantColorDetection(inputImage, outputImage, params); + // 调用鲜艳绿色检测函数 + vibrantGreenDetection(inputImage, outputImage, params); - // 显示原图和检测到的鲜艳区域 - imshow("Original Image", inputImage); - imshow("Detected Vibrant Colors", outputImage); + // 定义缩放因子,1.0 表示原始大小,>1.0 表示放大,<1.0 表示缩小 + double scaleFactor = 1.5; // 将图像放大1.5倍 + + // 显示原图和检测到的绿色区域,使用缩放因子 + showImage("Original Image", inputImage, scaleFactor); + showImage("Detected Vibrant Green", outputImage, scaleFactor); // 等待用户按键 waitKey(0); return 0; -} \ No newline at end of file +} From ca645a558d67c6075480ac7259307c35e74b3323 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Tue, 12 Nov 2024 14:47:08 +0800 Subject: [PATCH 06/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86ui=EF=BC=8C?= =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E4=BA=86qt=E5=8F=AF=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E3=80=82=E4=BD=86opencv=E5=87=BA=E7=8E=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 12 ++++++++---- Matrox/ui.cpp | 14 ++++++++++++++ Matrox/ui.h | 8 ++++++++ 3 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 Matrox/ui.cpp create mode 100644 Matrox/ui.h diff --git a/CMakeLists.txt b/CMakeLists.txt index a468303..ee1974a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ set(CMAKE_CXX_STANDARD 17) # 设置 OpenCV 路径 if(DEFINED ENV{OpenCV_DIR}) - set(OpenCV_DIR $ENV{OpenCV_DIR}) + set(OpenCV_DIR ENV{OpenCV_DIR}) message(STATUS "OpenCV_DIR set from environment variable: ${OpenCV_DIR}") else() message(FATAL_ERROR "OpenCV_DIR is not set. Please set the OpenCV_DIR environment variable.") @@ -17,7 +17,7 @@ include_directories(${OpenCV_INCLUDE_DIRS}) # 设置 Qt 路径 if(DEFINED ENV{Qt6_DIR}) - set(Qt6_DIR $ENV{Qt6_DIR}) + set(Qt6_DIR ENV{Qt6_DIR}) message(STATUS "Qt6_DIR set from environment variable: ${Qt6_DIR}") else() message(FATAL_ERROR "Qt6_DIR is not set. Please set the Qt6_DIR environment variable.") @@ -33,7 +33,7 @@ set(CMAKE_AUTORCC ON) # 添加可执行文件 cotton_color add_executable(cotton_color cotton_color.cpp) # 链接 OpenCV 和 Qt 库 -target_link_libraries(cotton_color Qt6::Widgets ${OpenCV_LIBS}) +target_link_libraries(cotton_color Qt6::Widgets ${OpenCV_LIBS} comdlg32) # 添加可执行文件 cotton_color add_executable(cotton_range Matrox/color_range.cpp) @@ -46,4 +46,8 @@ add_executable(cotton_color2 cotton_color2.cpp) target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS}) add_executable(color_matching Matrox/template_matching.cpp Matrox/onnx_running.cpp - Matrox/onnx_running.h) + Matrox/onnx_running.h + Matrox/ui.cpp) + +add_executable(ui Matrox/ui.cpp) +target_link_libraries(ui Qt6::Widgets) \ No newline at end of file diff --git a/Matrox/ui.cpp b/Matrox/ui.cpp new file mode 100644 index 0000000..39d3a66 --- /dev/null +++ b/Matrox/ui.cpp @@ -0,0 +1,14 @@ +// +// Created by zjc on 24-11-12. +// + +#include "ui.h" +#include +#include + +int main(int argc, char *argv[]) { + QApplication app(argc, argv); + QPushButton button("Hello, Qt!"); + button.show(); + return app.exec(); +} \ No newline at end of file diff --git a/Matrox/ui.h b/Matrox/ui.h new file mode 100644 index 0000000..f7b9caa --- /dev/null +++ b/Matrox/ui.h @@ -0,0 +1,8 @@ +// +// Created by zjc on 24-11-12. +// + +#ifndef UI_H +#define UI_H + +#endif //UI_H From 8ba723e7df83d762152cabafea83e8e921a52dfa Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Tue, 12 Nov 2024 14:52:22 +0800 Subject: [PATCH 07/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86opencv?= =?UTF-8?q?=E7=9A=84=E6=81=B6=E6=80=A7bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ee1974a..84c61e4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,8 +1,10 @@ -cmake_minimum_required(VERSION 3.10) +cmake_minimum_required(VERSION 3.29) project(cotton_color) set(CMAKE_CXX_STANDARD 17) +add_definitions(-DUNICODE -D_UNICODE) + # 设置 OpenCV 路径 if(DEFINED ENV{OpenCV_DIR}) set(OpenCV_DIR ENV{OpenCV_DIR}) From 3be3fcd0da202ed2a55aafe1db7ba752748c4b63 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Wed, 13 Nov 2024 12:12:29 +0800 Subject: [PATCH 08/16] =?UTF-8?q?=E6=9B=B4=E6=96=B0Matrox.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/MatroxQ&A.md | 15 ++++++++++----- doc/img.png | Bin 0 -> 69410 bytes doc/img_1.png | Bin 0 -> 54780 bytes 3 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 doc/img.png create mode 100644 doc/img_1.png diff --git a/doc/MatroxQ&A.md b/doc/MatroxQ&A.md index 162f631..71d7fb4 100644 --- a/doc/MatroxQ&A.md +++ b/doc/MatroxQ&A.md @@ -1,19 +1,24 @@ # Matrox 问题整理 ## 如何进行模板匹配 -问题详情: +问题详情: 如何正确设置匹配方式的参数(文件打不开,参数无效等). 问题回答: ## 模板匹配时模板如何载入 -问题详情: - -问题回答: +问题详情:如何使用我们自己的rgb图像进行模板匹配(模板和检测图片的导入以及模板的定义),例如一下警告: +![img.png](img.png) +![img_1.png](img_1.png) +问题回答: ## 如何调用ONNX -问题详情: +问题详情:如何使用加载的onnx执行目标检测和分类任务(如何进行推理)。 + +另外, +1. onnx模型在gpu上跑还是在CPU上跑 +2. 是单个模型处理6个相机的图片,一起拼起来进模型然后出结果快,还是串行的进模型推理快。 问题回答: diff --git a/doc/img.png b/doc/img.png new file mode 100644 index 0000000000000000000000000000000000000000..4e6499ef2707e97c036f008f5160c5f59598f311 GIT binary patch literal 69410 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 H&^_iqtV)$S literal 0 HcmV?d00001 diff --git a/doc/img_1.png b/doc/img_1.png new file mode 100644 index 0000000000000000000000000000000000000000..4b908ca95691b6169be7142257098f2edcd16cfe GIT binary patch literal 54780 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 Date: Wed, 13 Nov 2024 16:11:22 +0800 Subject: [PATCH 09/16] Update README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新了项目的整体README --- README.md | 79 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 45 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index e4f166e..dcb2f73 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,41 @@ -# Cotton Color +# Cotton Color -## 颜色检测 +[TOC] -### 艳丽色彩检测 +## 算法整体框架 + +### 颜色检测 + +#### 艳丽色彩检测 纯色彩检测就可以。饱和度检测。 思路:rgb -> HSV -> s -> threshold -> 杂质 -### 黑色检测/滴灌带检测 +#### 黑色检测/滴灌带检测 L a* b* 色彩空间检测,纯黑色就是杂质,但是容易有噪声。 思路:rgb -> La*b* -> threshold -> 黑色 -> 模板匹配 -> 物体的大小 -> 阈值判断 -> 杂质 -### 暗黄色检测/油棉 +#### 暗黄色检测/油棉 L a* b* 色彩空间检测,检测暗黄色。 思路:rgb -> La*b* -> threshold -> 暗黄色 -> 模板匹配 -> 物体的大小 -> 阈值判断 -> 杂质 -### 带土地膜检测 +#### 带土地膜检测 L a* b* 色彩空间检测,检测明黄色、白色。 思路:rgb -> La*b* -> threshold -> 白色、明黄色 -> 模板匹配 -> 物体的大小 -> 阈值判断 -> 杂质 -## 深度学习检测 +### 深度学习检测 需求:模板匹配缺少对于纹理的判断,所以要加上深度学习对于各个杂质进行确认。 -### 方案1:端到端式的方案 +#### 方案1:端到端式的方案 传统思路:rgb -> La*b* -> threshold -> 白色、明黄色 -> 模板匹配 -> 物体的大小 -> 阈值判断 -> 杂质 @@ -40,7 +44,7 @@ L a* b* 色彩空间检测,检测明黄色、白色。 -> YOLO -> 杂质 -### 方案2:验证形式的方案 +#### 方案2:验证形式的方案 传统思路:rgb -> La*b* -> threshold -> 白色、明黄色 -> 模板匹配 -> 物体的大小 -> 阈值判断 -> 杂质 @@ -50,7 +54,7 @@ L a* b* 色彩空间检测,检测明黄色、白色。 | 保守方案 -> 深度学习确认 -> 杂质 -#### 讨论记录: +##### 讨论记录: 暗红色(棉叶) @@ -60,43 +64,50 @@ L a* b* 色彩空间检测,检测明黄色、白色。 土黄 -### 安装记录 +## 安装记录 -1. OpenCV安装 +### OpenCV安装 下载OpenCV并设置OpenCV_DIR到环境变量,例如: -在 Windows 上 -打开“控制面板” > “系统和安全” > “系统”。 -点击左侧的“高级系统设置”。 -在“系统属性”窗口中,点击“环境变量”。 -在“系统变量”或“用户变量”中,点击“新建”。 -输入变量名 OpenCV_DIR,在变量值中输入 OpenCV 安装的路径,例如 C:\opencv\build。 -点击“确定”保存更改。 +**在 Windows 上** -在 macOS 或 Linux 上 -打开终端。 +1. 打开“控制面板” > “系统和安全” > “系统”。 +2. 点击左侧的“高级系统设置”。 +3. 在“系统属性”窗口中,点击“环境变量”。 +4. 在“系统变量”或“用户变量”中,点击“新建”。 +5. 输入变量名 OpenCV_DIR,在变量值中输入 OpenCV 安装的路径,例如 C:\opencv\build。 +6. 点击“确定”保存更改。 -编辑您的 shell 配置文件(例如 ~/.bashrc, ~/.zshrc 或 ~/.bash_profile): +**在 macOS 或 Linux 上** -bash -复制代码 +1. 打开终端。 +2. 编辑您的 shell 配置文件(例如 `~/.bashrc`, `~/.zshrc` 或 `~/.bash_profile`): + +```bash export OpenCV_DIR=/path/to/opencv/build -将 /path/to/opencv/build 替换为 OpenCV 安装路径。 +``` + +将 `/path/to/opencv/build` 替换为 OpenCV 安装路径。 保存文件后,运行以下命令使更改生效: -bash -复制代码 +```bash source ~/.bashrc # 或者使用 `source ~/.zshrc` 根据您的 shell 类型 +``` + 完成这些步骤后,CMake 应该可以在运行时读取 OpenCV_DIR 变量,确保您的路径正确指向 OpenCV 安装目录的 build 文件夹。 -2. Qt安装 +### Qt安装 -将 DLL 添加到环境变量 PATH -为了让应用程序运行时找到 Qt6Widgets.dll,需要将 Qt 的 bin 目录添加到 PATH 环境变量中: +**让机器能够访问dll:** -打开“开始”菜单,搜索“环境变量”并打开“编辑系统环境变量”。 -在“系统变量”中找到 PATH,选择并点击“编辑”。 -点击“新建”,将 Qt 的 bin 目录路径(例如 E:\QT\6.8.0\msvc2019_64\bin)添加进去。 -点击“确定”并保存更改。 \ No newline at end of file +1. 将 DLL 添加到环境变量 PATH +2. 为了让应用程序运行时找到 Qt6Widgets.dll,需要将 Qt 的 bin 目录添加到 PATH 环境变量中: + +**让编译器能够找到编译路径:** + +1. 打开“开始”菜单,搜索“环境变量”并打开“编辑系统环境变量”。 +2. 在“系统变量”中找到 PATH,选择并点击“编辑”。 +3. 点击“新建”,将 Qt 的 bin 目录路径(例如 `E:\QT\6.8.0\msvc2019_64\bin`)添加进去。 +4. 点击“确定”并保存更改。 \ No newline at end of file From ea72ee9310a83f8963c11489a91abf380bc3ad6b Mon Sep 17 00:00:00 2001 From: ZhenyeLi Date: Wed, 13 Nov 2024 16:39:00 +0800 Subject: [PATCH 10/16] Moidfy Gitignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加mac支持 --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 8bf2fea..8700afa 100644 --- a/.gitignore +++ b/.gitignore @@ -364,3 +364,5 @@ FodyWeavers.xsd .idea cmake-build-* + +.DS_Store From af063ae8e0a1c86b4c31356dc52dc32a6f79ca48 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Wed, 13 Nov 2024 18:52:18 +0800 Subject: [PATCH 11/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dcotton=5Fcolor=E7=9A=84?= =?UTF-8?q?bug=20=20=20=E6=B7=BB=E5=8A=A0color=5Frange=E7=9A=84matrox?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 13 ++- Matrox/color_range.cpp | 201 +++++++++++++++++++++++++++++++++++++++++ cotton_color.cpp | 79 +++++++++++----- cotton_color2.cpp | 2 +- 4 files changed, 269 insertions(+), 26 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 84c61e4..ca90d5a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -31,6 +31,12 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTORCC ON) +#配置mil库 +include_directories(E:/QTexamble/matrox/Include) + +# 添加 MIL 库的库文件路径 +link_directories(E:/QTexamble/matrox/LIB) +file(GLOB MIL_LIBS E:/QTexamble/matrox/LIB/*.lib) # 添加可执行文件 cotton_color add_executable(cotton_color cotton_color.cpp) @@ -40,16 +46,17 @@ target_link_libraries(cotton_color Qt6::Widgets ${OpenCV_LIBS} comdlg32) # 添加可执行文件 cotton_color add_executable(cotton_range Matrox/color_range.cpp) # 链接 OpenCV 和 Qt 库 -target_link_libraries(cotton_range Qt6::Widgets ${OpenCV_LIBS}) +target_link_libraries(cotton_range Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) # 添加可执行文件 cotton_color2 add_executable(cotton_color2 cotton_color2.cpp) # 链接 OpenCV 和 Qt 库 -target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS}) +target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS} Mil) add_executable(color_matching Matrox/template_matching.cpp Matrox/onnx_running.cpp Matrox/onnx_running.h Matrox/ui.cpp) add_executable(ui Matrox/ui.cpp) -target_link_libraries(ui Qt6::Widgets) \ No newline at end of file +target_link_libraries(ui Qt6::Widgets) + diff --git a/Matrox/color_range.cpp b/Matrox/color_range.cpp index 9eee56e..e4d93ef 100644 --- a/Matrox/color_range.cpp +++ b/Matrox/color_range.cpp @@ -1,3 +1,204 @@ // // Created by zjc on 24-11-12. // + +#include +#include +#include +#define IMAGE_PATH MIL_TEXT("C:\\Users\\zjc\\Desktop\\cotton2.bmp") + +// 全局变量,方便在各个函数中使用 +MIL_ID MilApplication = M_NULL, MilSystem = M_NULL, MilDisplay = M_NULL; + + +// 时间测量模板函数 +template +void measureExecutionTime(Func func) { + // 获取当前时间作为起点 + auto start = std::chrono::high_resolution_clock::now(); + + // 执行传入的函数 + func(); + + // 获取当前时间作为结束点 + auto end = std::chrono::high_resolution_clock::now(); + + // 计算时间差并转换为毫秒 + auto duration = std::chrono::duration_cast(end - start); + + std::cout << "Function execution time: " << duration.count() << " milliseconds" << std::endl; +} + +// LabProcess 函数,支持通过参数控制阈值范围,提供默认值 +void LabProcess(MIL_ID& inputImage, MIL_ID& outputImageLab, + MIL_DOUBLE lowerL = 101.0, MIL_DOUBLE upperL = 135.0, + MIL_DOUBLE lowerA = 101.0, MIL_DOUBLE upperA = 120.0, + MIL_DOUBLE lowerB = 95.0, MIL_DOUBLE upperB = 134.0) +{ + MIL_ID MilLabImage = M_NULL, MilLChannel = M_NULL, MilAChannel = M_NULL, MilBChannel = M_NULL; + MIL_ID MilBinaryL = M_NULL, MilBinaryA = M_NULL, MilBinaryB = M_NULL; + + // 检查输入图像的通道数 + MIL_INT NumBands = 0; + MbufInquire(inputImage, M_SIZE_BAND, &NumBands); + if (NumBands != 3) + { + printf("输入图像不是 3 通道图像,请提供彩色图像。\n"); + return; + } + + // 分配用于存储 Lab 图像的缓冲区 + MbufAllocColor(MbufInquire(inputImage, M_OWNER_SYSTEM, M_NULL), 3, + MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), + 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, + &MilLabImage); + + // 将图像从 sRGB 转换到 Lab + MimConvert(inputImage, MilLabImage, M_SRGB_TO_LAB); + + // 创建 Lab 通道的子缓冲区 + MbufChildColor(MilLabImage, 0, &MilLChannel); + MbufChildColor(MilLabImage, 1, &MilAChannel); + MbufChildColor(MilLabImage, 2, &MilBChannel); + + // 分配二值图像缓冲区 + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &MilBinaryL); + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &MilBinaryA); + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &MilBinaryB); + + // 对每个通道进行阈值分割 + MimBinarize(MilLChannel, MilBinaryL, M_IN_RANGE, lowerL, upperL); + MimBinarize(MilAChannel, MilBinaryA, M_IN_RANGE, lowerA, upperA); + MimBinarize(MilBChannel, MilBinaryB, M_IN_RANGE, lowerB, upperB); + + // 分配输出图像缓冲区 + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &outputImageLab); + + // 将结果合并 + MimArith(MilBinaryL, MilBinaryA, outputImageLab, M_AND); + MimArith(outputImageLab, MilBinaryB, outputImageLab, M_AND); + + // 释放资源 + MbufFree(MilBinaryL); + MbufFree(MilBinaryA); + MbufFree(MilBinaryB); + MbufFree(MilLChannel); + MbufFree(MilAChannel); + MbufFree(MilBChannel); + MbufFree(MilLabImage); +} + +// HSVProcess 函数,支持通过参数控制饱和度阈值,提供默认值 +void HSVProcess(MIL_ID& inputImage, MIL_ID& outputImageHSV, MIL_DOUBLE saturationThreshold = 120.0) +{ + MIL_ID MilHSVImage = M_NULL, MilHChannel = M_NULL, MilSChannel = M_NULL, MilVChannel = M_NULL; + + // 检查输入图像的通道数 + MIL_INT NumBands = 0; + MbufInquire(inputImage, M_SIZE_BAND, &NumBands); + if (NumBands != 3) + { + printf("输入图像不是 3 通道图像,请提供彩色图像。\n"); + return; + } + + // 分配用于存储 HSV 图像的缓冲区 + MbufAllocColor(MbufInquire(inputImage, M_OWNER_SYSTEM, M_NULL), 3, + MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), + 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, + &MilHSVImage); + + // 将图像从 sRGB 转换到 HSV + MimConvert(inputImage, MilHSVImage, M_RGB_TO_HSV); + + // 创建 HSV 通道的子缓冲区 + MbufChildColor(MilHSVImage, 0, &MilHChannel); + MbufChildColor(MilHSVImage, 1, &MilSChannel); + MbufChildColor(MilHSVImage, 2, &MilVChannel); + + // 分配输出图像缓冲区 + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &outputImageHSV); + + // 对 S 通道进行阈值分割 + MimBinarize(MilSChannel, outputImageHSV, M_GREATER, saturationThreshold, M_NULL); + + // 释放资源 + MbufFree(MilHChannel); + MbufFree(MilSChannel); + MbufFree(MilVChannel); + MbufFree(MilHSVImage); +} + +// 综合测试函数,调用 LabProcess 和 HSVProcess 并合并结果 +void test_hsv(MIL_ID& inputImage, + MIL_DOUBLE lowerL = 101.0, MIL_DOUBLE upperL = 135.0, + MIL_DOUBLE lowerA = 101.0, MIL_DOUBLE upperA = 120.0, + MIL_DOUBLE lowerB = 95.0, MIL_DOUBLE upperB = 134.0, + MIL_DOUBLE saturationThreshold = 120.0) +{ + MIL_ID MilResultLab = M_NULL, MilResultHSV = M_NULL, MilCombinedResult = M_NULL; + + // 调用 LabProcess + LabProcess(inputImage, MilResultLab, lowerL, upperL, lowerA, upperA, lowerB, upperB); + + // 调用 HSVProcess + HSVProcess(inputImage, MilResultHSV, saturationThreshold); + + // 分配合并结果的缓冲区 + MbufAlloc2d(MilSystem, MbufInquire(inputImage, M_SIZE_X, M_NULL), + MbufInquire(inputImage, M_SIZE_Y, M_NULL), 8 + M_UNSIGNED, + M_IMAGE + M_PROC + M_DISP, &MilCombinedResult); + + // 合并 Lab 和 HSV 的结果(取“或”运算) + MimArith(MilResultLab, MilResultHSV, MilCombinedResult, M_OR); + + //// 显示合并后的结果图像 + MdispSelect(MilDisplay, MilCombinedResult); + + //// 等待用户查看处理后的图像 + printf("图像已处理并合并,按下 退出程序。\n"); + getchar(); + + // 释放资源 + MbufFree(MilResultLab); + MbufFree(MilResultHSV); + MbufFree(MilCombinedResult); +} + + +int main() +{ + MIL_ID MilImage = M_NULL; + + // 初始化 MIL 应用程序 + MappAllocDefault(M_DEFAULT, &MilApplication, &MilSystem, &MilDisplay, M_NULL, M_NULL); + + // 加载输入图像 + MbufRestore(IMAGE_PATH, MilSystem, &MilImage); + + // 使用 lambda 表达式测量 test_hsv() 的执行时间 + measureExecutionTime([&]() { + test_hsv(MilImage); + }); + + + // 释放资源 + MbufFree(MilImage); + MappFreeDefault(MilApplication, MilSystem, MilDisplay, M_NULL, M_NULL); + + return 0; +} \ No newline at end of file diff --git a/cotton_color.cpp b/cotton_color.cpp index 7060728..28c80f3 100644 --- a/cotton_color.cpp +++ b/cotton_color.cpp @@ -55,51 +55,86 @@ void vibrantColorDetection(const Mat& inputImage, Mat& outputImage, const map MAXDWORD) { + wcout << L"Error: File size too large." << endl; + CloseHandle(hFile); + return Mat(); + } + + DWORD dwFileSize = static_cast(fileSize.QuadPart); + + // 读取文件内容到缓冲区 + std::vector buffer(dwFileSize); + DWORD bytesRead = 0; + if (!ReadFile(hFile, buffer.data(), dwFileSize, &bytesRead, NULL) || bytesRead != dwFileSize) { + wcout << L"Error: Could not read file." << endl; + CloseHandle(hFile); + return Mat(); + } + + CloseHandle(hFile); + + // 使用 OpenCV 从内存缓冲区读取图像 + Mat image = imdecode(buffer, IMREAD_COLOR); if (image.empty()) { - cout << "Error: Could not load image." << endl; + wcout << L"Error: Could not decode image." << endl; return Mat(); } @@ -139,7 +174,7 @@ int main() { vibrantGreenDetection(inputImage, outputImage, params); // 定义缩放因子,1.0 表示原始大小,>1.0 表示放大,<1.0 表示缩小 - double scaleFactor = 1.5; // 将图像放大1.5倍 + double scaleFactor = 0.6; // 将图像放大1.5倍 // 显示原图和检测到的绿色区域,使用缩放因子 showImage("Original Image", inputImage, scaleFactor); diff --git a/cotton_color2.cpp b/cotton_color2.cpp index c6ab671..5de3194 100644 --- a/cotton_color2.cpp +++ b/cotton_color2.cpp @@ -142,7 +142,7 @@ int main() { // 使用 map 模拟参数传递 map params; - params["saturationThreshold"] = 100; // 设置饱和度阈值为 100 + params["saturationThreshold"] = 134; // 设置饱和度阈值为 100 // 调用鲜艳颜色检测函数 vibrantColorDetection(inputImage, outputImage, params); From 5d4109463933f56a545390ab0df318c41f9f8c11 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Wed, 13 Nov 2024 20:18:37 +0800 Subject: [PATCH 12/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E5=8C=B9=E9=85=8D=E7=9A=84matrox=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 12 +- Matrox/onnx_running.cpp | 224 +++++++++++++++++++++++++++++++++- Matrox/onnx_running.h | 10 +- Matrox/template_matching.cpp | 225 ++++++++++++++++++++++++++++++++++- 4 files changed, 462 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ca90d5a..8a0a07f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,12 +51,16 @@ target_link_libraries(cotton_range Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) # 添加可执行文件 cotton_color2 add_executable(cotton_color2 cotton_color2.cpp) # 链接 OpenCV 和 Qt 库 -target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS} Mil) +target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) + add_executable(color_matching Matrox/template_matching.cpp - Matrox/onnx_running.cpp - Matrox/onnx_running.h - Matrox/ui.cpp) + Matrox/onnx_running.cpp) +target_link_libraries(color_matching Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) + add_executable(ui Matrox/ui.cpp) target_link_libraries(ui Qt6::Widgets) + +add_executable(onnx Matrox/onnx_running.cpp) +target_link_libraries(onnx Qt6::Widgets ${MIL_LIBS}) \ No newline at end of file diff --git a/Matrox/onnx_running.cpp b/Matrox/onnx_running.cpp index b545f1f..3e84660 100644 --- a/Matrox/onnx_running.cpp +++ b/Matrox/onnx_running.cpp @@ -1,5 +1,227 @@ // -// Created by zjc on 24-11-12. +// Created by zjc on 24-11-13. // #include "onnx_running.h" + + +#include +//#include // 添加此行 +#include + +/* Example functions declarations. */ +void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay); + +/*****************************************************************************/ +/* Main. +******************************************************************************/ +int MosMain(void) +{ + MIL_ID MilApplication, /* Application identifier. */ + MilSystem, /* System Identifier. */ + MilDisplay; /* Display identifier. */ + + /* Allocate defaults. */ + MappAllocDefault(M_DEFAULT, &MilApplication, &MilSystem, &MilDisplay, M_NULL, M_NULL); + + /* Run single model example. */ + SingleModelExample(MilSystem, MilDisplay); + + /* Free defaults. */ + MappFreeDefault(MilApplication, MilSystem, MilDisplay, M_NULL, M_NULL); + + return 0; +} + +/*****************************************************************************/ +/* Single model example. */ + +/* Source MIL image file specifications. */ +#define SINGLE_MODEL_IMAGE MIL_TEXT("C:\\Users\\zjc\\Desktop\\diguandai2.png") // 替换为您的模板RGB图像文件路径 + +/* Target MIL image file specifications. */ +#define SINGLE_MODEL_TARGET_IMAGE MIL_TEXT ("C:\\Users\\zjc\\Desktop\\diguandai.png") // 替换为您的待检测RGB图像文件路径 + +/* Search speed: M_VERY_HIGH for faster search, M_MEDIUM for precision and robustness. */ +#define SINGLE_MODEL_SEARCH_SPEED M_LOW + +/* Model specifications. */ +#define MODEL_OFFSETX 3200L // 根据您的模板图像调整 +#define MODEL_OFFSETY 550L // 根据您的模板图像调整 +#define MODEL_SIZEX 200L // 根据您的模板图像调整 +#define MODEL_SIZEY 200L // 根据您的模板图像调整 +#define MODEL_MAX_OCCURRENCES 6L + +void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay) +{ + clock_t start_time = clock(); + + MIL_ID MilColorImage, /* 彩色图像缓冲区标识符。*/ + MilImage, /* 灰度图像缓冲区标识符。*/ + GraphicList; /* 图形列表标识符。*/ + MIL_ID MilSearchContext, /* 搜索上下文。*/ + MilResult; /* 结果标识符。*/ + MIL_DOUBLE ModelDrawColor = M_COLOR_RED; /* 模板绘制颜色。*/ + MIL_INT Model[MODEL_MAX_OCCURRENCES], /* 模板索引。*/ + NumResults = 0L; /* 找到的结果数量。*/ + MIL_DOUBLE Score[MODEL_MAX_OCCURRENCES], /* 模板匹配得分。*/ + XPosition[MODEL_MAX_OCCURRENCES], /* 模板X位置。*/ + YPosition[MODEL_MAX_OCCURRENCES], /* 模板Y位置。*/ + Angle[MODEL_MAX_OCCURRENCES], /* 模板角度。*/ + Scale[MODEL_MAX_OCCURRENCES], /* 模板缩放。*/ + Time = 0.0; /* 计时变量。*/ + int i; /* 循环变量。*/ + + + /* 加载RGB模板图像。 */ + MbufRestore(SINGLE_MODEL_IMAGE, MilSystem, &MilColorImage); + + /* 获取图像尺寸。 */ + MIL_INT Width = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); + MIL_INT Height = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); + + /* 分配灰度图像缓冲区。 */ + MbufAlloc2d(MilSystem, Width, Height, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); + + /* 将RGB图像转换为灰度图像。 */ + MimConvert(MilColorImage, MilImage, M_RGB_TO_L); + + /* 选择灰度图像进行显示。 */ + MdispSelect(MilDisplay, MilImage); + + /* 释放彩色图像缓冲区。 */ + MbufFree(MilColorImage); + + /* Allocate a graphic list to hold the subpixel annotations to draw. */ + MgraAllocList(MilSystem, M_DEFAULT, &GraphicList); + + /* Associate the graphic list to the display for annotations. */ + MdispControl(MilDisplay, M_ASSOCIATED_GRAPHIC_LIST_ID, GraphicList); + + /* Allocate a Geometric Model Finder context. */ + MmodAlloc(MilSystem, M_GEOMETRIC, M_DEFAULT, &MilSearchContext); + + /* Allocate a result buffer. */ + MmodAllocResult(MilSystem, M_DEFAULT, &MilResult); + + /* Define the model. */ + MmodDefine(MilSearchContext, M_IMAGE, MilImage, + MODEL_OFFSETX, MODEL_OFFSETY, MODEL_SIZEX, MODEL_SIZEY); + + /* Set the search speed. */ + MmodControl(MilSearchContext, M_CONTEXT, M_SPEED, SINGLE_MODEL_SEARCH_SPEED); + + /* Preprocess the search context. */ + MmodPreprocess(MilSearchContext, M_DEFAULT); + + /* Draw box and position it in the source image to show the model. */ + MgraColor(M_DEFAULT, ModelDrawColor); + MmodDraw(M_DEFAULT, MilSearchContext, GraphicList, + M_DRAW_BOX + M_DRAW_POSITION, 0, M_ORIGINAL); + clock_t end_time = clock(); + std::cout << "The run time is: " << (double)(end_time - start_time) / CLOCKS_PER_SEC << "s"; + /* Pause to show the model. */ + MosPrintf(MIL_TEXT("\nGEOMETRIC MODEL FINDER:\n")); + MosPrintf(MIL_TEXT("-----------------------\n\n")); + MosPrintf(MIL_TEXT("A model context was defined with ")); + MosPrintf(MIL_TEXT("the model in the displayed image.\n")); + MosPrintf(MIL_TEXT("Press to continue.\n\n")); + MosGetch(); + + /* Clear annotations. */ + MgraClear(M_DEFAULT, GraphicList); + + /* 加载RGB待检测图像。 */ + MbufRestore(SINGLE_MODEL_TARGET_IMAGE, MilSystem, &MilColorImage); + + /* 确保待检测图像的尺寸与模板图像一致。 */ + MIL_INT TargetWidth = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); + MIL_INT TargetHeight = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); + + /* 如果尺寸不同,需要重新分配灰度图像缓冲区。 */ + if (TargetWidth != Width || TargetHeight != Height) + { + /* 释放之前的灰度图像缓冲区。 */ + MbufFree(MilImage); + + /* 分配新的灰度图像缓冲区。 */ + MbufAlloc2d(MilSystem, TargetWidth, TargetHeight, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); + + /* 更新宽度和高度。 */ + Width = TargetWidth; + Height = TargetHeight; + } + + /* 将RGB待检测图像转换为灰度图像。 */ + MimConvert(MilColorImage, MilImage, M_RGB_TO_L); + + /* 释放彩色图像缓冲区。 */ + MbufFree(MilColorImage); + + /* 显示灰度待检测图像。 */ + MdispSelect(MilDisplay, MilImage); + + /* Dummy first call for bench measure purpose only (bench stabilization, + cache effect, etc...). This first call is NOT required by the application. */ + MmodFind(MilSearchContext, MilImage, MilResult); + + /* Reset the timer. */ + MappTimer(M_DEFAULT, M_TIMER_RESET + M_SYNCHRONOUS, M_NULL); + + /* Find the model. */ + MmodFind(MilSearchContext, MilImage, MilResult); + + /* Read the find time. */ + MappTimer(M_DEFAULT, M_TIMER_READ + M_SYNCHRONOUS, &Time); + + /* Get the number of models found. */ + MmodGetResult(MilResult, M_DEFAULT, M_NUMBER + M_TYPE_MIL_INT, &NumResults); + + /* If a model was found above the acceptance threshold. */ + if ((NumResults >= 1) && (NumResults <= MODEL_MAX_OCCURRENCES)) + { + /* Get the results of the single model. */ + MmodGetResult(MilResult, M_DEFAULT, M_INDEX + M_TYPE_MIL_INT, Model); + MmodGetResult(MilResult, M_DEFAULT, M_POSITION_X, XPosition); + MmodGetResult(MilResult, M_DEFAULT, M_POSITION_Y, YPosition); + MmodGetResult(MilResult, M_DEFAULT, M_ANGLE, Angle); + MmodGetResult(MilResult, M_DEFAULT, M_SCALE, Scale); + MmodGetResult(MilResult, M_DEFAULT, M_SCORE, Score); + + /* Print the results for each model found. */ + MosPrintf(MIL_TEXT("The model was found in the target image:\n\n")); + MosPrintf(MIL_TEXT("Result Model X Position Y Position ") + MIL_TEXT("Angle Scale Score\n\n")); + for (i = 0; i < NumResults; i++) + { + MosPrintf(MIL_TEXT("%-9d%-8d%-13.2f%-13.2f%-8.2f%-8.2f%-5.2f%%\n"), + i, (int)Model[i], XPosition[i], YPosition[i], + Angle[i], Scale[i], Score[i]); + } + MosPrintf(MIL_TEXT("\nThe search time is %.1f ms\n\n"), Time * 1000.0); + + /* Draw edges, position and box over the occurrences that were found. */ + for (i = 0; i < NumResults; i++) + { + MgraColor(M_DEFAULT, ModelDrawColor); + MmodDraw(M_DEFAULT, MilResult, GraphicList, + M_DRAW_EDGES + M_DRAW_BOX + M_DRAW_POSITION, i, M_DEFAULT); + } + } + else + { + MosPrintf(MIL_TEXT("The model was not found or the number of models ") + MIL_TEXT("found is greater than\n")); + MosPrintf(MIL_TEXT("the specified maximum number of occurrence !\n\n")); + } + + /* Wait for a key to be pressed. */ + MosPrintf(MIL_TEXT("Press to continue.\n\n")); + MosGetch(); + + /* Free MIL objects. */ + MgraFree(GraphicList); + MbufFree(MilImage); + MmodFree(MilSearchContext); + MmodFree(MilResult); +} diff --git a/Matrox/onnx_running.h b/Matrox/onnx_running.h index 3b81150..e6bf470 100644 --- a/Matrox/onnx_running.h +++ b/Matrox/onnx_running.h @@ -1,8 +1,16 @@ // -// Created by zjc on 24-11-12. +// Created by zjc on 24-11-13. // #ifndef ONNX_RUNNING_H #define ONNX_RUNNING_H + + +class onnx_running { + +}; + + + #endif //ONNX_RUNNING_H diff --git a/Matrox/template_matching.cpp b/Matrox/template_matching.cpp index 9eee56e..ededb56 100644 --- a/Matrox/template_matching.cpp +++ b/Matrox/template_matching.cpp @@ -1,3 +1,222 @@ -// -// Created by zjc on 24-11-12. -// + + +#include +//#include // 添加此行 +#include + +/* Example functions declarations. */ +void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay); + +/*****************************************************************************/ +/* Main. +******************************************************************************/ +int MosMain(void) +{ + MIL_ID MilApplication, /* Application identifier. */ + MilSystem, /* System Identifier. */ + MilDisplay; /* Display identifier. */ + + /* Allocate defaults. */ + MappAllocDefault(M_DEFAULT, &MilApplication, &MilSystem, &MilDisplay, M_NULL, M_NULL); + + /* Run single model example. */ + SingleModelExample(MilSystem, MilDisplay); + + /* Free defaults. */ + MappFreeDefault(MilApplication, MilSystem, MilDisplay, M_NULL, M_NULL); + + return 0; +} + +/*****************************************************************************/ +/* Single model example. */ + +/* Source MIL image file specifications. */ +#define SINGLE_MODEL_IMAGE MIL_TEXT("C:\\Users\\zjc\\Desktop\\diguandai2.png") // 替换为您的模板RGB图像文件路径 + +/* Target MIL image file specifications. */ +#define SINGLE_MODEL_TARGET_IMAGE MIL_TEXT ("C:\\Users\\zjc\\Desktop\\diguandai.png") // 替换为您的待检测RGB图像文件路径 + +/* Search speed: M_VERY_HIGH for faster search, M_MEDIUM for precision and robustness. */ +#define SINGLE_MODEL_SEARCH_SPEED M_LOW + +/* Model specifications. */ +#define MODEL_OFFSETX 3200L // 根据您的模板图像调整 +#define MODEL_OFFSETY 550L // 根据您的模板图像调整 +#define MODEL_SIZEX 200L // 根据您的模板图像调整 +#define MODEL_SIZEY 200L // 根据您的模板图像调整 +#define MODEL_MAX_OCCURRENCES 6L + +void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay) +{ + clock_t start_time = clock(); + + MIL_ID MilColorImage, /* 彩色图像缓冲区标识符。*/ + MilImage, /* 灰度图像缓冲区标识符。*/ + GraphicList; /* 图形列表标识符。*/ + MIL_ID MilSearchContext, /* 搜索上下文。*/ + MilResult; /* 结果标识符。*/ + MIL_DOUBLE ModelDrawColor = M_COLOR_RED; /* 模板绘制颜色。*/ + MIL_INT Model[MODEL_MAX_OCCURRENCES], /* 模板索引。*/ + NumResults = 0L; /* 找到的结果数量。*/ + MIL_DOUBLE Score[MODEL_MAX_OCCURRENCES], /* 模板匹配得分。*/ + XPosition[MODEL_MAX_OCCURRENCES], /* 模板X位置。*/ + YPosition[MODEL_MAX_OCCURRENCES], /* 模板Y位置。*/ + Angle[MODEL_MAX_OCCURRENCES], /* 模板角度。*/ + Scale[MODEL_MAX_OCCURRENCES], /* 模板缩放。*/ + Time = 0.0; /* 计时变量。*/ + int i; /* 循环变量。*/ + + + /* 加载RGB模板图像。 */ + MbufRestore(SINGLE_MODEL_IMAGE, MilSystem, &MilColorImage); + + /* 获取图像尺寸。 */ + MIL_INT Width = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); + MIL_INT Height = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); + + /* 分配灰度图像缓冲区。 */ + MbufAlloc2d(MilSystem, Width, Height, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); + + /* 将RGB图像转换为灰度图像。 */ + MimConvert(MilColorImage, MilImage, M_RGB_TO_L); + + /* 选择灰度图像进行显示。 */ + MdispSelect(MilDisplay, MilImage); + + /* 释放彩色图像缓冲区。 */ + MbufFree(MilColorImage); + + /* Allocate a graphic list to hold the subpixel annotations to draw. */ + MgraAllocList(MilSystem, M_DEFAULT, &GraphicList); + + /* Associate the graphic list to the display for annotations. */ + MdispControl(MilDisplay, M_ASSOCIATED_GRAPHIC_LIST_ID, GraphicList); + + /* Allocate a Geometric Model Finder context. */ + MmodAlloc(MilSystem, M_GEOMETRIC, M_DEFAULT, &MilSearchContext); + + /* Allocate a result buffer. */ + MmodAllocResult(MilSystem, M_DEFAULT, &MilResult); + + /* Define the model. */ + MmodDefine(MilSearchContext, M_IMAGE, MilImage, + MODEL_OFFSETX, MODEL_OFFSETY, MODEL_SIZEX, MODEL_SIZEY); + + /* Set the search speed. */ + MmodControl(MilSearchContext, M_CONTEXT, M_SPEED, SINGLE_MODEL_SEARCH_SPEED); + + /* Preprocess the search context. */ + MmodPreprocess(MilSearchContext, M_DEFAULT); + + /* Draw box and position it in the source image to show the model. */ + MgraColor(M_DEFAULT, ModelDrawColor); + MmodDraw(M_DEFAULT, MilSearchContext, GraphicList, + M_DRAW_BOX + M_DRAW_POSITION, 0, M_ORIGINAL); + clock_t end_time = clock(); + std::cout << "The run time is: " << (double)(end_time - start_time) / CLOCKS_PER_SEC << "s"; + /* Pause to show the model. */ + MosPrintf(MIL_TEXT("\nGEOMETRIC MODEL FINDER:\n")); + MosPrintf(MIL_TEXT("-----------------------\n\n")); + MosPrintf(MIL_TEXT("A model context was defined with ")); + MosPrintf(MIL_TEXT("the model in the displayed image.\n")); + MosPrintf(MIL_TEXT("Press to continue.\n\n")); + MosGetch(); + + /* Clear annotations. */ + MgraClear(M_DEFAULT, GraphicList); + + /* 加载RGB待检测图像。 */ + MbufRestore(SINGLE_MODEL_TARGET_IMAGE, MilSystem, &MilColorImage); + + /* 确保待检测图像的尺寸与模板图像一致。 */ + MIL_INT TargetWidth = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); + MIL_INT TargetHeight = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); + + /* 如果尺寸不同,需要重新分配灰度图像缓冲区。 */ + if (TargetWidth != Width || TargetHeight != Height) + { + /* 释放之前的灰度图像缓冲区。 */ + MbufFree(MilImage); + + /* 分配新的灰度图像缓冲区。 */ + MbufAlloc2d(MilSystem, TargetWidth, TargetHeight, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); + + /* 更新宽度和高度。 */ + Width = TargetWidth; + Height = TargetHeight; + } + + /* 将RGB待检测图像转换为灰度图像。 */ + MimConvert(MilColorImage, MilImage, M_RGB_TO_L); + + /* 释放彩色图像缓冲区。 */ + MbufFree(MilColorImage); + + /* 显示灰度待检测图像。 */ + MdispSelect(MilDisplay, MilImage); + + /* Dummy first call for bench measure purpose only (bench stabilization, + cache effect, etc...). This first call is NOT required by the application. */ + MmodFind(MilSearchContext, MilImage, MilResult); + + /* Reset the timer. */ + MappTimer(M_DEFAULT, M_TIMER_RESET + M_SYNCHRONOUS, M_NULL); + + /* Find the model. */ + MmodFind(MilSearchContext, MilImage, MilResult); + + /* Read the find time. */ + MappTimer(M_DEFAULT, M_TIMER_READ + M_SYNCHRONOUS, &Time); + + /* Get the number of models found. */ + MmodGetResult(MilResult, M_DEFAULT, M_NUMBER + M_TYPE_MIL_INT, &NumResults); + + /* If a model was found above the acceptance threshold. */ + if ((NumResults >= 1) && (NumResults <= MODEL_MAX_OCCURRENCES)) + { + /* Get the results of the single model. */ + MmodGetResult(MilResult, M_DEFAULT, M_INDEX + M_TYPE_MIL_INT, Model); + MmodGetResult(MilResult, M_DEFAULT, M_POSITION_X, XPosition); + MmodGetResult(MilResult, M_DEFAULT, M_POSITION_Y, YPosition); + MmodGetResult(MilResult, M_DEFAULT, M_ANGLE, Angle); + MmodGetResult(MilResult, M_DEFAULT, M_SCALE, Scale); + MmodGetResult(MilResult, M_DEFAULT, M_SCORE, Score); + + /* Print the results for each model found. */ + MosPrintf(MIL_TEXT("The model was found in the target image:\n\n")); + MosPrintf(MIL_TEXT("Result Model X Position Y Position ") + MIL_TEXT("Angle Scale Score\n\n")); + for (i = 0; i < NumResults; i++) + { + MosPrintf(MIL_TEXT("%-9d%-8d%-13.2f%-13.2f%-8.2f%-8.2f%-5.2f%%\n"), + i, (int)Model[i], XPosition[i], YPosition[i], + Angle[i], Scale[i], Score[i]); + } + MosPrintf(MIL_TEXT("\nThe search time is %.1f ms\n\n"), Time * 1000.0); + + /* Draw edges, position and box over the occurrences that were found. */ + for (i = 0; i < NumResults; i++) + { + MgraColor(M_DEFAULT, ModelDrawColor); + MmodDraw(M_DEFAULT, MilResult, GraphicList, + M_DRAW_EDGES + M_DRAW_BOX + M_DRAW_POSITION, i, M_DEFAULT); + } + } + else + { + MosPrintf(MIL_TEXT("The model was not found or the number of models ") + MIL_TEXT("found is greater than\n")); + MosPrintf(MIL_TEXT("the specified maximum number of occurrence !\n\n")); + } + + /* Wait for a key to be pressed. */ + MosPrintf(MIL_TEXT("Press to continue.\n\n")); + MosGetch(); + + /* Free MIL objects. */ + MgraFree(GraphicList); + MbufFree(MilImage); + MmodFree(MilSearchContext); + MmodFree(MilResult); +} \ No newline at end of file From 0cf110cb6a71cacc3ab3942396407bf3b08711c7 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Wed, 13 Nov 2024 20:52:23 +0800 Subject: [PATCH 13/16] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=A0=E8=BD=BDonnx?= =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E9=83=A8=E5=88=86=E3=80=82=E5=8F=AF=E4=BB=A5?= =?UTF-8?q?=E6=88=90=E5=8A=9F=E5=8A=A0=E8=BD=BD=EF=BC=8C=E4=BD=86=E6=8E=A8?= =?UTF-8?q?=E7=90=86=E6=9C=89=E4=BA=9B=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Matrox/onnx_running.cpp | 267 ++++++++++++---------------------------- 1 file changed, 78 insertions(+), 189 deletions(-) diff --git a/Matrox/onnx_running.cpp b/Matrox/onnx_running.cpp index 3e84660..8748c4a 100644 --- a/Matrox/onnx_running.cpp +++ b/Matrox/onnx_running.cpp @@ -8,220 +8,109 @@ #include //#include // 添加此行 #include +#include -/* Example functions declarations. */ -void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay); +// Path definitions. +#define EXAMPLE_ONNX_MODEL_PATH MIL_TEXT("C:\\Users\\zjc\\Desktop\\WeChat Files\\wxid_ipl8u0ctajtn22\\FileStorage\\File\\2024-11\\best(2).onnx") +#define TARGET_IMAGE_DIR_PATH MIL_TEXT("C:\\Users\\zjc\\Desktop\\dimo2.bmp") -/*****************************************************************************/ -/* Main. -******************************************************************************/ int MosMain(void) { - MIL_ID MilApplication, /* Application identifier. */ - MilSystem, /* System Identifier. */ - MilDisplay; /* Display identifier. */ + MIL_ID MilApplication = M_NULL, // MIL application identifier + MilSystem = M_NULL, // MIL system identifier + MilDisplay = M_NULL, // MIL display identifier + MilImage = M_NULL, // MIL image identifier + MilDetectedImage = M_NULL, // MIL image with detections + DetectCtx = M_NULL, // MIL ONNX detection context + DetectRes = M_NULL; // MIL detection result - /* Allocate defaults. */ - MappAllocDefault(M_DEFAULT, &MilApplication, &MilSystem, &MilDisplay, M_NULL, M_NULL); + // Allocate MIL objects. + MappAlloc(M_NULL, M_DEFAULT, &MilApplication); + MsysAlloc(M_DEFAULT, M_SYSTEM_DEFAULT, M_DEFAULT, M_DEFAULT, &MilSystem); + MdispAlloc(MilSystem, M_DEFAULT, MIL_TEXT("M_DEFAULT"), M_DEFAULT, &MilDisplay); - /* Run single model example. */ - SingleModelExample(MilSystem, MilDisplay); - - /* Free defaults. */ - MappFreeDefault(MilApplication, MilSystem, MilDisplay, M_NULL, M_NULL); - - return 0; -} - -/*****************************************************************************/ -/* Single model example. */ - -/* Source MIL image file specifications. */ -#define SINGLE_MODEL_IMAGE MIL_TEXT("C:\\Users\\zjc\\Desktop\\diguandai2.png") // 替换为您的模板RGB图像文件路径 - -/* Target MIL image file specifications. */ -#define SINGLE_MODEL_TARGET_IMAGE MIL_TEXT ("C:\\Users\\zjc\\Desktop\\diguandai.png") // 替换为您的待检测RGB图像文件路径 - -/* Search speed: M_VERY_HIGH for faster search, M_MEDIUM for precision and robustness. */ -#define SINGLE_MODEL_SEARCH_SPEED M_LOW - -/* Model specifications. */ -#define MODEL_OFFSETX 3200L // 根据您的模板图像调整 -#define MODEL_OFFSETY 550L // 根据您的模板图像调整 -#define MODEL_SIZEX 200L // 根据您的模板图像调整 -#define MODEL_SIZEY 200L // 根据您的模板图像调整 -#define MODEL_MAX_OCCURRENCES 6L - -void SingleModelExample(MIL_ID MilSystem, MIL_ID MilDisplay) -{ - clock_t start_time = clock(); - - MIL_ID MilColorImage, /* 彩色图像缓冲区标识符。*/ - MilImage, /* 灰度图像缓冲区标识符。*/ - GraphicList; /* 图形列表标识符。*/ - MIL_ID MilSearchContext, /* 搜索上下文。*/ - MilResult; /* 结果标识符。*/ - MIL_DOUBLE ModelDrawColor = M_COLOR_RED; /* 模板绘制颜色。*/ - MIL_INT Model[MODEL_MAX_OCCURRENCES], /* 模板索引。*/ - NumResults = 0L; /* 找到的结果数量。*/ - MIL_DOUBLE Score[MODEL_MAX_OCCURRENCES], /* 模板匹配得分。*/ - XPosition[MODEL_MAX_OCCURRENCES], /* 模板X位置。*/ - YPosition[MODEL_MAX_OCCURRENCES], /* 模板Y位置。*/ - Angle[MODEL_MAX_OCCURRENCES], /* 模板角度。*/ - Scale[MODEL_MAX_OCCURRENCES], /* 模板缩放。*/ - Time = 0.0; /* 计时变量。*/ - int i; /* 循环变量。*/ - - - /* 加载RGB模板图像。 */ - MbufRestore(SINGLE_MODEL_IMAGE, MilSystem, &MilColorImage); - - /* 获取图像尺寸。 */ - MIL_INT Width = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); - MIL_INT Height = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); - - /* 分配灰度图像缓冲区。 */ - MbufAlloc2d(MilSystem, Width, Height, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); - - /* 将RGB图像转换为灰度图像。 */ - MimConvert(MilColorImage, MilImage, M_RGB_TO_L); - - /* 选择灰度图像进行显示。 */ - MdispSelect(MilDisplay, MilImage); - - /* 释放彩色图像缓冲区。 */ - MbufFree(MilColorImage); - - /* Allocate a graphic list to hold the subpixel annotations to draw. */ - MgraAllocList(MilSystem, M_DEFAULT, &GraphicList); - - /* Associate the graphic list to the display for annotations. */ - MdispControl(MilDisplay, M_ASSOCIATED_GRAPHIC_LIST_ID, GraphicList); - - /* Allocate a Geometric Model Finder context. */ - MmodAlloc(MilSystem, M_GEOMETRIC, M_DEFAULT, &MilSearchContext); - - /* Allocate a result buffer. */ - MmodAllocResult(MilSystem, M_DEFAULT, &MilResult); - - /* Define the model. */ - MmodDefine(MilSearchContext, M_IMAGE, MilImage, - MODEL_OFFSETX, MODEL_OFFSETY, MODEL_SIZEX, MODEL_SIZEY); - - /* Set the search speed. */ - MmodControl(MilSearchContext, M_CONTEXT, M_SPEED, SINGLE_MODEL_SEARCH_SPEED); - - /* Preprocess the search context. */ - MmodPreprocess(MilSearchContext, M_DEFAULT); - - /* Draw box and position it in the source image to show the model. */ - MgraColor(M_DEFAULT, ModelDrawColor); - MmodDraw(M_DEFAULT, MilSearchContext, GraphicList, - M_DRAW_BOX + M_DRAW_POSITION, 0, M_ORIGINAL); - clock_t end_time = clock(); - std::cout << "The run time is: " << (double)(end_time - start_time) / CLOCKS_PER_SEC << "s"; - /* Pause to show the model. */ - MosPrintf(MIL_TEXT("\nGEOMETRIC MODEL FINDER:\n")); - MosPrintf(MIL_TEXT("-----------------------\n\n")); - MosPrintf(MIL_TEXT("A model context was defined with ")); - MosPrintf(MIL_TEXT("the model in the displayed image.\n")); - MosPrintf(MIL_TEXT("Press to continue.\n\n")); - MosGetch(); - - /* Clear annotations. */ - MgraClear(M_DEFAULT, GraphicList); - - /* 加载RGB待检测图像。 */ - MbufRestore(SINGLE_MODEL_TARGET_IMAGE, MilSystem, &MilColorImage); - - /* 确保待检测图像的尺寸与模板图像一致。 */ - MIL_INT TargetWidth = MbufInquire(MilColorImage, M_SIZE_X, M_NULL); - MIL_INT TargetHeight = MbufInquire(MilColorImage, M_SIZE_Y, M_NULL); - - /* 如果尺寸不同,需要重新分配灰度图像缓冲区。 */ - if (TargetWidth != Width || TargetHeight != Height) + // Load the image into memory. + if (MbufRestore(TARGET_IMAGE_DIR_PATH, MilSystem, &MilImage) != M_NULL) { - /* 释放之前的灰度图像缓冲区。 */ - MbufFree(MilImage); - - /* 分配新的灰度图像缓冲区。 */ - MbufAlloc2d(MilSystem, TargetWidth, TargetHeight, 8 + M_UNSIGNED, M_IMAGE + M_PROC + M_DISP, &MilImage); - - /* 更新宽度和高度。 */ - Width = TargetWidth; - Height = TargetHeight; + MosPrintf(MIL_TEXT("Image loaded successfully.\n")); + } + else + { + MosPrintf(MIL_TEXT("Failed to load image.\n")); + return 1; // Exit if the image loading failed } - /* 将RGB待检测图像转换为灰度图像。 */ - MimConvert(MilColorImage, MilImage, M_RGB_TO_L); + // Import the YOLOv5 ONNX model into the detection context. + MosPrintf(MIL_TEXT("Importing the YOLOv5 ONNX model into the detection context...\n")); + MclassAlloc(MilSystem, M_CLASSIFIER_ONNX, M_DEFAULT, &DetectCtx); + MclassImport(EXAMPLE_ONNX_MODEL_PATH, M_ONNX_FILE, DetectCtx, M_DEFAULT, M_DEFAULT, M_DEFAULT); + MosPrintf(MIL_TEXT("Model imported successfully.\n")); - /* 释放彩色图像缓冲区。 */ - MbufFree(MilColorImage); + // Preprocess the detection context. + MclassPreprocess(DetectCtx, M_DEFAULT); // Ensure the context is preprocessed. - /* 显示灰度待检测图像。 */ - MdispSelect(MilDisplay, MilImage); + // Allocate a detection result buffer. + MclassAllocResult(MilSystem, M_PREDICT_ONNX_RESULT, M_DEFAULT, &DetectRes); - /* Dummy first call for bench measure purpose only (bench stabilization, - cache effect, etc...). This first call is NOT required by the application. */ - MmodFind(MilSearchContext, MilImage, MilResult); + // Perform object detection on the image using MclassPredict. + MclassPredict(DetectCtx, MilImage, DetectRes, M_DEFAULT); + MosPrintf(MIL_TEXT("Object detection completed.\n")); - /* Reset the timer. */ - MappTimer(M_DEFAULT, M_TIMER_RESET + M_SYNCHRONOUS, M_NULL); + // Allocate a buffer for displaying the detection results. + MbufAlloc2d(MilSystem, 640, 640, 8 + M_UNSIGNED, M_IMAGE + M_PROC, &MilDetectedImage); - /* Find the model. */ - MmodFind(MilSearchContext, MilImage, MilResult); + // Retrieve and draw the detection results manually. + MIL_INT NumDetections = 0; + MclassGetResult(DetectRes, M_GENERAL, M_TYPE_MIL_INT, &NumDetections); - /* Read the find time. */ - MappTimer(M_DEFAULT, M_TIMER_READ + M_SYNCHRONOUS, &Time); - - /* Get the number of models found. */ - MmodGetResult(MilResult, M_DEFAULT, M_NUMBER + M_TYPE_MIL_INT, &NumResults); - - /* If a model was found above the acceptance threshold. */ - if ((NumResults >= 1) && (NumResults <= MODEL_MAX_OCCURRENCES)) + if (NumDetections > 0) { - /* Get the results of the single model. */ - MmodGetResult(MilResult, M_DEFAULT, M_INDEX + M_TYPE_MIL_INT, Model); - MmodGetResult(MilResult, M_DEFAULT, M_POSITION_X, XPosition); - MmodGetResult(MilResult, M_DEFAULT, M_POSITION_Y, YPosition); - MmodGetResult(MilResult, M_DEFAULT, M_ANGLE, Angle); - MmodGetResult(MilResult, M_DEFAULT, M_SCALE, Scale); - MmodGetResult(MilResult, M_DEFAULT, M_SCORE, Score); - - /* Print the results for each model found. */ - MosPrintf(MIL_TEXT("The model was found in the target image:\n\n")); - MosPrintf(MIL_TEXT("Result Model X Position Y Position ") - MIL_TEXT("Angle Scale Score\n\n")); - for (i = 0; i < NumResults; i++) + for (MIL_INT i = 0; i < NumDetections; i++) { - MosPrintf(MIL_TEXT("%-9d%-8d%-13.2f%-13.2f%-8.2f%-8.2f%-5.2f%%\n"), - i, (int)Model[i], XPosition[i], YPosition[i], - Angle[i], Scale[i], Score[i]); - } - MosPrintf(MIL_TEXT("\nThe search time is %.1f ms\n\n"), Time * 1000.0); + MIL_DOUBLE Score; + MIL_INT ClassIndex; + MIL_DOUBLE BBoxX, BBoxY, BBoxWidth, BBoxHeight; - /* Draw edges, position and box over the occurrences that were found. */ - for (i = 0; i < NumResults; i++) - { - MgraColor(M_DEFAULT, ModelDrawColor); - MmodDraw(M_DEFAULT, MilResult, GraphicList, - M_DRAW_EDGES + M_DRAW_BOX + M_DRAW_POSITION, i, M_DEFAULT); + // Retrieve detection results for each object. + MclassGetResult(DetectRes, i, M_SCORE + M_TYPE_MIL_DOUBLE, &Score); + MclassGetResult(DetectRes, i, M_INDEX + M_TYPE_MIL_INT, &ClassIndex); + MclassGetResult(DetectRes, i, M_SEED_VALUE + M_TYPE_MIL_DOUBLE, &BBoxX); + MclassGetResult(DetectRes, i, M_SEED_VALUE + M_TYPE_MIL_DOUBLE, &BBoxY); + MclassGetResult(DetectRes, i, M_SEED_VALUE + M_TYPE_MIL_DOUBLE, &BBoxWidth); + MclassGetResult(DetectRes, i, M_SEED_VALUE + M_TYPE_MIL_DOUBLE, &BBoxHeight); + + // Draw bounding box. + MgraColor(M_DEFAULT, M_COLOR_GREEN); + MgraRect(M_DEFAULT, MilDetectedImage, BBoxX, BBoxY, BBoxX + BBoxWidth, BBoxY + BBoxHeight); + + // Optionally, display detection score or class name (if needed). + MIL_TEXT_CHAR Label[256]; + MosSprintf(Label, 256, MIL_TEXT("Class %d: %.2lf%%"), ClassIndex, Score * 100); + MgraFont(M_DEFAULT, M_FONT_DEFAULT_SMALL); + MgraText(M_DEFAULT, MilDetectedImage, BBoxX, BBoxY - 10, Label); } } else { - MosPrintf(MIL_TEXT("The model was not found or the number of models ") - MIL_TEXT("found is greater than\n")); - MosPrintf(MIL_TEXT("the specified maximum number of occurrence !\n\n")); + MosPrintf(MIL_TEXT("No detections found.\n")); } - /* Wait for a key to be pressed. */ - MosPrintf(MIL_TEXT("Press to continue.\n\n")); + // Display the image with detection results. + MdispSelect(MilDisplay, MilDetectedImage); + + // Wait for the user to close the window. + MosPrintf(MIL_TEXT("Press to exit.\n")); MosGetch(); - /* Free MIL objects. */ - MgraFree(GraphicList); + // Free all allocated resources. MbufFree(MilImage); - MmodFree(MilSearchContext); - MmodFree(MilResult); + MbufFree(MilDetectedImage); + MclassFree(DetectRes); + MclassFree(DetectCtx); + MdispFree(MilDisplay); + MsysFree(MilSystem); + MappFree(MilApplication); + + return 0; } + From 0666bf2f41fb8257b97b5d851852d20a8c7783c6 Mon Sep 17 00:00:00 2001 From: zjc-zjc-123 <1714105370@qq.com> Date: Thu, 14 Nov 2024 10:43:37 +0800 Subject: [PATCH 14/16] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 4 ++-- Matrox/onnx_running.cpp | 2 +- .../image-20241113112631605.png | Bin 0 -> 214546 bytes 3 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 doc/MatroxQ&A.assets/image-20241113112631605.png diff --git a/CMakeLists.txt b/CMakeLists.txt index 8a0a07f..400696a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,11 +53,11 @@ add_executable(cotton_color2 cotton_color2.cpp) # 链接 OpenCV 和 Qt 库 target_link_libraries(cotton_color2 Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) -add_executable(color_matching Matrox/template_matching.cpp - Matrox/onnx_running.cpp) +add_executable(color_matching Matrox/template_matching.cpp) target_link_libraries(color_matching Qt6::Widgets ${OpenCV_LIBS} ${MIL_LIBS}) + add_executable(ui Matrox/ui.cpp) target_link_libraries(ui Qt6::Widgets) diff --git a/Matrox/onnx_running.cpp b/Matrox/onnx_running.cpp index 8748c4a..10de9a0 100644 --- a/Matrox/onnx_running.cpp +++ b/Matrox/onnx_running.cpp @@ -53,7 +53,7 @@ int MosMain(void) MclassAllocResult(MilSystem, M_PREDICT_ONNX_RESULT, M_DEFAULT, &DetectRes); // Perform object detection on the image using MclassPredict. - MclassPredict(DetectCtx, MilImage, DetectRes, M_DEFAULT); + MclassPredict(DetectCtx, MilImage, DetectRes, M_DEFAULT);////执行到这一步报错 MosPrintf(MIL_TEXT("Object detection completed.\n")); // Allocate a buffer for displaying the detection results. diff --git a/doc/MatroxQ&A.assets/image-20241113112631605.png b/doc/MatroxQ&A.assets/image-20241113112631605.png new file mode 100644 index 0000000000000000000000000000000000000000..7e79fecb39806050c4891fb721e7964bb79b77a8 GIT binary patch literal 214546 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

Ql!eS&gM2N@z692 zfDw26-3=m^=ISA+9OR`66S5pyr-L#SLm@IG(vWx^)}T-zhL0umI0P*h*eR#qOP62K zl^q|;s2xHmP0fU&fw!x?#8gtOt6v{Z3?O=Uu`eu*yzcxjTf!JjWn$G8Fc82t(5Iq; zf7*%HJ@H2OTdV1GM`dFdT^ogHau6_=AxbAmv&xUGmI=N0FwG^PhislGm9@Ly1C0_T zWDae1n=(cpbzee?Z(gS3ed0F_8gomI7_1d^`P(1<{I=CN@SUBC$mUn!)4)7v)68xi0eKgHGHsUT$EV|fbT*>!PJ>) z^f@1joj*o=d8pg&{fOV8kGh>ToPjm zPK(X7ud?x$U&d?{R~`GKC!v&26Bh5U23OertiZX}>FIFWQ6^xKh!E_h1~BPZ zPQ}I#U#R0_NJs)?KTM=BY1-7zpCW5@5<2+4)B2(E(b+x>O;sNcWdfu& ztL|TW&}58cweWq=PHBKJSdY98gH0Vrh(>nH<6(+ASu|;@Ao`sk@#;} zH*ap=ch)&!CH`S5mAby*8rTV7`WvuI5>MEpb}I$$o?sjo)JSlsFxh@hgme z#Cu!~?i{AdhgKkEoh-pbM;ieIFOtwgW1gGx=AKcG@YVn4JBwnm(gv9ZMjyR^X#nXv zm|E2qI6*8_23-)df7B=#vcc3UAbKF5TNGw+2Luet;lwh^*YPLf$Hiw!?!)gFL3t@$ zql*L0PptV;)rngJGOcm}{dK~j3E+6vXpf7bx~6B z(|+|O7AR3nw!ESe^^NVK%M#!)gByFoRUr=o6M-7RWXoA9QU)}n z-v$FbqKzRd_1$*0x}ILoSEGy9lxXHoNQ>+6`FY{G&IZZ5n@;qo3gG9d)Z_z}{?*7( z+2IJzgzE_10^%%AGk+t;`p)}KcOKW)|2m{0$(CyT`HCfaI%uFo)#%Y)PdF`k)w2T9 z-%X~;^HqHm=N~c_)|ZaYia*_K9Pn2zR=oLTn8}Vr=)IY=I&&(e>($mU`iU z^_nau*Cieq<(GaDommj+K$UW)N_x<|2d@9u#kT=I;1S&K>w4y{%BfVCJhas-N6xm$ z&TRfPB#dR`FRwE4w!!z=OZ{1A{aF`%a1P?jj-E=@k5m@8BA7yhG0sBBior>JCep+{ z3WN5`it~}(XH4LTQe;ZTn*6X}2m*^4Jms`>bY!ccA*MtgcLRhW5ETc7b^{t?cs27s zjdvN}ePF5BFSJe_;sS2b`=g-jBWWu(&KWB>OuL0~^JaW0zNK$IVWF)-b5l9|XhhLS zDXgPt&*vx>P2FwU+a49`R8%-+9Yem)s4JNSS_U>tRuR}DD0bXY#S8-y9_WEYP@MKKk^eAkusIc6CD!G*+;C$`-D6p z16a=hjjB{o5KXh>J}=;AbTd>YV`8fRK>i(6RG`jed7!+Hj1KZV4JZM@u?1@$urp<6 zYs5n&BnZt=31n1pJS)4iJzsg8;2Z4&1FQK8Ur)MDQ{qt9283KVg2(2=4SUl#jjaaU2ZfR*- zG+3$7D!tcV)KH3B@Vrl}ER3t1!?&EX`I9B?b$8)kU&+|zAcmb z^zpZE-*UXoVjCM{3^Nza0A-u@AZTn8hqsV1J375zQQ!0O!n!H>opNtLKz0DGfbOYa zT*oeJcCq!$JXL|}r<66l)b|>}#+LVXwL0Dg)Y zG?Y@A|7G#g*}=v8`L2jxyw!_blB%!Sxwa6A_Zr@sw|DjWetWS#7&PQ1m{J|CE~w#G+ufz?s8za1XS^Kb-mo&i>u5u{9vF*AOycu zqI$*LvmtZ#ze@s{kv{q_AoswxTBX<$%&w|^E>yNv{d6B8o&3Th^(4yb6bm)9k zvGjN|o8|Q^{(Liiz~A7qcvRtiwT^TFakM`k&9*-xF`rw!0Z+&$c;$I5s{MImwHN(y zKW*jdp#8ajcEz(@`|UPXy2gl^*Jnj~9FxR8o+pZ%k`mPWMIPPkYziH*3Mjuaz~9ljgRQR;|lyUllS5{nN10qVX(IBq!>m4aw~F zxV&umIQgB27GzSVyz_TgJJGXCFP0N7SjbS{f(lSLENJu1bNDg-|{ zMc@ajf|vsqxES*C%mBf38fZc-6oLu?W0WF5Eg9hWbHJRMM0gDTTv}fqKi;=LTvoO}XSM$)(ffP6px?q{ z@~1S3P_~XU&0i_|5j(c@^ke2p|j>e?Ix`MH=admF=^K@y^ z$LGrD(-VRx&&GX>sxK~CVqOpb&hHy4z1{BbF4K?%?{+WSP>tH#hqJ-0(#kd@MgLyh zT8o2YY#Qgxx{;yke|C!AKkgGOjkA6Ns$7<{tSt{+ z`!%-a8nIZY;Yi!1gc$@Qn}R+Ye;J3xvTQKa@-jnE3UyS75kE9va*Qg!gV;^wADHVR zdQ6hJKAVJ4h7%l`n}aGtLr0IA2xE{?PUcmuAc84GbQ4a3{A*ZPS0NqmQ4}>Pb)YB` zP^2bDMj=3kMi)vC!$0{g3<(B=8bDB_fha`KXq3qpH7vKlE&z2gW_B)ZSuzRX@8FyR zm&MDY(f%wX0sY*fb+6fgp?0q~juCm+?zVZ+_N$%d$#U!c@bjG^l3UbzB9bZU`L4Zj zy*XtBdUbBzS5mC_Z{5F4vvl_B%EMOW*X7pds>P$ku-;n6r027x22IoVGR^g$Jlnj^ zw~r3844!W`-cU*IkOAYk6)LCjVJNSInh~iMxvN4sZ#(S8^xs-2DFuYxrUS;uf>&Q} zS#XyW#VzCzpaf|1ec(1_!LT!C8*BLto`)I#o+ngYI(A+hwL{9*Ztw28$4^#}HO2Gb zC?w`I?Wpj??PYgK@}jc~lEr%b%jUECFBw;$<;(c$dG)3k% zcS7WE1Rv9=Kr|MgW0n||7lwXU5by7ChOP;46~hukL5)@I#nlU@Km6na2r!j&R&}7f z+gT^Vp_m9wM~f`h_8r3c@%yvafvb)c4Jx1@?I0c#hQCD;VYww#*iy6g2bYhJkK5Bl zNVnLN>#TE}#X7w88a{C?HG5e)vwzg$Qi)s>*H25qc$7*^$fW<26I*toc5}P_3o;pQ zMy3$;Ure=o(9eu(m&*CyNTz=*@*-(_+&*YKDG#+?xkiSmtL<$Ir&`_ekc@*jZeP8)mFD@FariZACZQ-p^eAr|oz~t`6kK+S1apXvc5cfYtVej9MF2Gi7X? zBeQM)E{F1=!WJ1`mz*^;D(tMcLekPdT10>WmSBI%g^DE`WS9H>{Xv?9l~BstS7GNz z70Q9TbhD-cWkEOpKRj(LRz|WPstd;zd`sT>^${E}q^hokRAy^zB}+o3i4v$$PFm$v zFp7aQ9$7um{JvaS>EGE?mwtVuUC82wasnm(+-_U3JQSPcoS4dj17fnNLZa&f5tPJd zFOH>&4JlMB=K9t{wF?x5P9)>ovLuqS--HwU1!WVMV(k*4`AVpwNJ?WttyMZNCN(;w zGwUQFC~DH3RFH5llx)>3q=Zi8<7;pNNmI%Gtz&cg_|EiTU5TV&U{0!X(Pw0`R9ZUB z2#0x}FCsIC;})%U*VFZ02h{fYOk&>~=r> zYrXS@AoDCdVC9KRQYkV3-Hzs`=sIEd^JXX??9oNPw1<;{2txe=eQLJ=-Zq>#x++Y=9k{l*E+k^NLpeT<)qn#&rYY3yed@--35cgqn=2^IaSH++~$B9cNn zgBe4q8Wb6Gi_hM&nQbqlGxkR<7>L9E1H*WCVf6056m4Y*$zw!84t-KmQdn=URq9fO ze&uZG%;@FLc#Ho1=HT?L$^37pCEh|Y$M4@yFJ}!!TbdDi8iK*#^WKNvuvhK(Pxng| z<`!mGAcNJ7qK`=PfaPMniI}*!IFb)1E}k`NF+JFW=czx7j2O3JJIea4$k8`^zBFvT zM!2;bc;7vgoV28+r8RtAL5rXnNgF+W430vg=r)jxB%{>px@Dy)v^13drfn&dvbo|@ zxu(nYb&GzOJTmiL8&oH?yT5XqwG%h=-W+u0@%9y|{E|AFT3Q;WXee0ZG&+5&|L#cl zggERRVVz8#iV|-{%u1dg`uKIRk6tWt;d%S|`G1$ob5=t;|JOCDm9t$c6e!37QEENK z8;3;j>CT`VW9Gv_F?&&=*-9N2`HWj`($bWYU>b#J?im;q8u6MLYGg(eC=XNXO5cJ+ z(D#f;bN7p*NZ^B^EM`4KXy(|WXmZvIk3cSMepBLWvHEOH9fb&290ZpD0dfgI!i;>1 zbD8=UloG?=yi}NsF|~n%eTj4?Sbt~`&=12q^5>&E0+hlP1u~R~Yv=97(%v~8H9Et1 zln;#14w(h{rXV#BgKYx-g9*TrKmBzS$+bLEu; zO_~6z>Zw-dNqt)#;R30qqC))}$k-+q$X3As1 zjMjccNO*8aLGW>khe$~5o%rxp*=Jwjv)aqgIdxYowLbq_ixPkMw>I5>X+gXGDy(;F zx=8C|mY%+-lV&5VbN{;HF(!-?e`LRp+O9yY~&MP&ycDX{qcXWRR=cfr>f+ zf(^vW%)oDfpyJ1rDbf-EJ98YB-d{UvIGDH1bcJ=a{oRZvd zRCN$U>3wI#owBsN>^C%T|K005l5D+m?mEq@uf?y-lQsUOKWS$tXfK@p66wubd)`~| zzWL_jeZAI=UcoX8!~Eghe*5nn8I6(ljGZj+`^A&?=cDUaNjt+^9u4~Kk9+;dAb7RB z^7rrGrKPWYi}NxtUzNlX9U7W(!7@o+ zE5Wqv_%g7)a_Cwr?3yiR`J6tvc)pSZoA?GM-y6}VFo)*n!4dK_ivA`_Uw)ck`lL?0 z=+VXY$wy(%N?~`RHqQY0`GJu&dRQl*SQ4{(=#6QyO7iajQ&2AB`;Z_u^^e(R0W?IB zk8*N$gtWmRaUWf*?t1C}nf+>ctYmO;IC zTWnhnJff{ZcDnp=g(*UsPTM=jE%itx&GUDs_IadAj@`0Y{)?P4(wrQjLj7k9$)Hw3 z%9HJNW@e5amqwS47F|xf-0q!Qb!s=}ZM<$T_GV^g!gj_p#oaXpKiAQt5dAlC)AlZH z`1IL`&*w*wQtdj=*?MGF(z3WHtRZ6oz?P8Csd%F`^BKviZ8~hRbMo}`b`i(+KS5U| zN+`5r7&V(xN>$*=P(qFbaz^8nBR2q-Zb;f-kg>|lsKxmyQk$41wzRa;pkJCB%9-*Z zZP2k=z>tk&yLQjaVCJWkwAmc`Tr3$hHUxC?IN@~Aax}Vsb?n@Fa94k%uOX;4Gn${N zgjB%Am4@Bgd$qT;&AL2tVjm`_Bn@x% z_6EjY>9;T0iF-di+}_p3_?594XlVWSZ|G%aWf`U$LhxUH3fUxcG-i;~^p&CySaNoE zcX0Q1Z)j`5qaG=o9v=R$64B;yYcG`IsPEFM+xoOO`u~V}&v3ZDuzPq2QNt)<$V3Y= zMD#LxuhC<)DA9Wvz4suD5(d$ucY+{@5@iH2B7z_yOc*7I-h%i1p6CBuuMhLdOJq?)UEjZ+pMbiN64}m>YpG17RldAE{$c2frjIy2v(k zEQKrr7)W<_TOE|3;4vfc16*G?_pL7iq4O|v%{Dq&l0Y<5Q?~HrzZ>wF6Z3xn3~h$L zHEWtHeQV_}D}R#556|6Odi#zow-c^UcCSwY!b3w(H>ZyQ;AMRHL*vK5 z;^(GqOJCX-^YiZ&g(=M$9S?`e)#NR#Xb%ueQ^J?d#eN3ix4>+s*$J;`>|lwa2%Qpj zrLX_jGTr2zY)>hby0Q{8X!R>RpHI=TWUn3=n0dFeRav)fX}MF|xEJzOXdWw+hr^j0Xv( zY$=Sj?%3^cgCEi3RV+E_Tqtc+-YKxWAvsE-5#cFS!x~nY#~KIp5fMy1ph{%<^5{;~ z&kPoYLe~^?npw)Wvau51xKw|kK&SB#shZcKluKXyE$3YR`mX_Q=lID+s}KJsrWq%T zEoFTH-#6kC3xYR|ZYHg@5&zC;YS%}ntAN+O_^+@w@5rdr%U`Nqd%HhB1h<+m`Gr@3 z5Qqo*2orlI7>I*8j8xGmI(<8j5eTL{+L|%3mJjx^68c6}nc`bsEHEioJXv_@((Se< z(UBj}dhcj=H==dkra~p6qx0rN*Uxu7;!g_rCMN|FYZrK(5`m#jAapJCa2>!pu0NQE zcUieWxbN!byUG<#JQOL9ug;ywJ{+DOUR%q2GkyLi#2+AMsycv;JK~Z%?(gr-=~4Fp zVA<9+^@SWCteFT{%_1CzQ^-Uq2S?`J4FUXtTSp{cx6p1cVF#$^x`HnO9KFLUmek}f z+lx2k@Iowi=H{UjaOaWDW`NUgPTz;fo8CRCW$N(dQvkZ*1F~I#b&EedKR=hGEwU~k zAq$_|Ywrf^+Lt^NY(P;v0hhoE20j7Qq5D#LFP4MvKg?r`=Do(DC0fL~bch z3)dE(npPmd(Yz4G+6>2+8*teVVPx1>C^@UmK)ozA`04LS%;G$*s zPJCgE@S$z5_aA;Ne9$+Qi*f@#B0&Ds5V!H`AxI_H?*Z8`_?sCkhWs#BA$}_WL8Rz!`enP0PKxx;|XNW-7{y zN0!sTcJ1$A;3?6~shKmbTFxQu?)^j7BS6)FVWiCA88>cJlmo2A)k#U505fJNtrZa4 zY!jcQ!GDoVj*FRWmGUqE<4G%W!cQpp-~WoCxHde?T%5<=yDYBlk!$-@gk|5! zM_)N!km|)K)yB*{Z*paSxm;psQT}4J^o$sYz4$w!WHT|F0#wz02$?{6|5z#b4N-q9 zv2ry*DcJ_=TjBvyVa}L0oG@%fb81wF@H4{rf_Xv?_D?VAqGD(jU;gSZo>zjT!`T%T zV5a2RLVqo16-dk2I`s{am@B@IkBUF+n`+gd$;(6&zkXDl+6E?U60RJ(4ZdMAXol%k z72Hxh>$cv@1Aa<2-iD*1Im<1Xo!=rD# z#6g@|D_xUYJW1vjLIf*eNk9jVU`R3oXq-j&_7SbtFQaEbXKz4X@@uH8#3Mj&d*pcV zG!RHumO~>DvtmeKU`b<^*yeF;<*dJmZq@j9J|hOsPj9&J&Jr;7!|NNTyE7h!R%bJ$?kH{zTr#FgzFOF z4Qsnr7o15b-e`M|ou`Go*ZoRg)*y27etAzk|9Eiy+VkrDPZp}- zeN*z1*ZMBmI(g>L8kANN0f0YYu*9>jy{>I4E?rdf7LB7O7UE)R z;nHo50ul2$g#Y)w?#2g+29UMP%`ow_Qc~Fc_>%hV7T9GSGk=D5K+MdV zv&V|+{0aN|t`Pj9xxIGleSNp*H%vEsl(6-akxAohy3O+s7MI^pn_orDd1oJ< zUd8;+DwCJLwqGWcjf~f$yWKYy+55>iAuFw_3Z=P~h*pC=RxTqEVRl0u4mVb%vJV|1 zzf=_&ruL^B7OUJUVhM_Ek-a2JKMT@Ofl~uEaROkabV9-lh9odm>*Rd zv`2G3M3nkE3dI~AP?AZ8^ryd}@LO0OpLit*ml*y5SclYGmj@ie+f-KI%R^KVRmClt z9ECRE*L5qL2lBR>sQgVDB@okps1vFtxQ*RuNl-9u9=J5HU!#X@fUQ=6OA%1i6>xxj+FNEKk7`?(sCT~4_Bc@tV12}P z7Jzxv2n+c(m?*`7;D^pmB-NLNUJsTz>gDjuorL4*rNO82s6jX(v##Zca})ac!AeA6 zWM6l0cufkOaN<`K&rG|=^gEsDvy(>ANq|r@nKK!m5e9z^bZ2Ua2J;eCfmL6c7q}oPTyLUp_ zhP-e_)RP*=%u!ppn|ZxHdP5;hdAb%44`ML@SABXJ+uZKC1=Oehh16GBEwsXrwtJMw zxK9c^cU9S)P(_*-!RZN!R4FX}63~D}U~$U)kd>1KP{hG~QwCMyeo_aQ>={eDDWX>@ z-j}#`SdyJTY%F$;s8TbJ>)f^-&5^EjKWP=PoL{-_Wxeh6n3kjb&qeP}SL62XE|B?r za|M88I{_oOW;jdne2f#l1!)aED9(nn+#YmPuOcODS;&>BmgaA{Lrr4G2Tm+=?lc9A zzS)wXwu`60>V^Tg`6^wIl4c6Bc&fZ4igCpk_=>;8)y>SfizA|mc$xO&Up>Wha1d{8 zRR)JyFsizs477B(GuM1_@xfrC-hMr;(H6==+4D?zq`18ZCJwAsBS={WD@CW^z6XR) ziw+8U^B>4ewu{F((2kSaf~-MgOgB17W$;ZUhI9l>p+XAbi*AQ zC|S@&NI)-}`F1@QmOVVR=pZ}7I>z~xA$%_NCTGCwlIgl`=@z4f_ebIziN6n9UOWvM zbD~K)E0f?o`-A(@6$L`mmS^a{iJ?Hxo*!wbl*j4Iyd;f+v*v3?gVdkz`nE?^X?&%7 z_E-6~9vmF@t(;m{$x9Wa1S+heJt|-z+ZDw`WwN{k&Lu)srAZta=t-hO?LP~Q z^9Zw{+%VN%1`mi}hh%>?!k+U=l~=8dO14ik{wA=qAkF38^ywrtkYmx3MOiLFPr8Gd z#e-`hcY>l8W)Y!qXtJGI7D9&N!Clf{{r2*x00;~WU;68t|5ws-+G|FH92FBN5!549 zVZ@u|Fz?gmuJ-JxQewmgQe0HD-t5O8h&>Ls28@(*9dYnf(2&{mogJHw(D&V!e^)L` z?*oHS4vG*`ssd9r1N~GgaXkl12?v8Y#4`y%zaV@>vHua0Olo*LGfb*jAncHtP0Fc2 z49mne#H<8sn>~L>R=^xt=szpv*5I+_*gEeJ+-q+0rWE!P2On*bnP}Ox&s$@{TWlNf zn9(~}BCcnq+B__0l;;9P-L@?xYAYgR&y+HNe4f!AtFmzu15dXF| zucdapMeq}Z&L#VyrWSj8hCxzs-`N-QI{!IQ9W&X+xxK#7NE!5OhRh_6v%4!`(D}9p z1dl$9fKVkoxciNUj!3aO)+Qa}ERw1`cXwnJc|{+Od{a7j9V7$YuB5RTLKakR+GqG; z7ux4{0$AlEK6Ljzh#NxkRpjY9^=cD?;=nlPq*C*yVt9@sgoe;C3EwWg{4Eh1(`uaN zZ}z9-8T&2vTNN>U<3NfFN@_b)HKeSq&GFm1H=mkEe&e!xfaS7(IK>b_`kHMjmXs>7 z<`)#3`s=AcyK=)wDg39r%uy^isD|<&OxT)l74C?lQQ77L4-k_Kgv+)of5X9#EEh#R z=2Fb1IV}=lshwzTZyYI37AHgbU_hZJN|<%Zk9qBdB3RW1s=7ckX*q&a;nd>Ifr&d`ioICVb~6sEm3*%3(@w68b--A@DJoCZGGbAeJxu zuk1PBhb0_|sv_P3>pM#CU}QL|J9m_<6Y|qdUZT73Nj4MhIu;kWry;AEioNIlo9-DK z{&~pX(R8QwUlmWR*0K;b8EpcrDFApeZFe?(bI z2^zJ(G^z1JvhO90lB^BL=R~b|oKTl9QHI)#RQ0)rY`)~Yq^=z^(HQ7V(g;n94Ij-G zDr*-smn{_|dPNvAf|0ZnGZ4neY41Iu!_|GE*dG3m+wmsl?2dw4&G?zz_GgT*ahd zp^Gl>%z=Q(6W8@quO%J>MlflG5vk|r?{`Nga2LC{gv;(UnXv~XXMh44!g6g$!jj;u&SS!#rwu~4qqIs&VTIZNR4zl#q1JESFro3~d}RJLVBuIc z6-)Djd~-}xF zP_wN!GUznlYc6mbx3Yn1*jh(+_@agGnv>u*x{$|*|S~ku6y#0IQYxb-*4q- z5jxOZUGBO%fC&Tes4?g1+2d*41#X0T8{p7Rh5->%_L^C?n@4_S<5*X1Ex^9%HnDaT zJgOj!Nyjtc{&AKdsR~P+nas;ZYWV^db;NU>gnt>TB5C8bfm&8ED!_t>>NC@HyT?-dpmRM} zD!Y`5U5YpcV%NZ>0m1dZ_JRds%~IlMTzeipAy->zX^8kp{NEX7O&-bdEXY_1tfZ@B z*5}*)moEoCoWsFUqQJzCCX9W0Q9Bth#H#kBh+!g5pY!1|VZ_C-=6k=bh6C;mJ%fx% z_m$xOl^>(yC@156nG0_`=;0BXnDo+b8oFt}^>$U|CS*;ESTh664G~;T z+-?(FcSnN=f03HM!!U1G`=ZYzr>c}%o+eQcfDMNXUUO>Fzt9@%V*QXlXdas6E){u_ zU+MU*_wly(_Z(HBw8MG7lZ)f=zKdaj15w-Rmtwd#+g(6I-wnsUCndGPyhj3H{5_1- z_A9m(?c2P%rF<{HDrk_~3)(Hum{U7`bNpu4bo}Oc1M{;2Sx~MC)?oi=z60iQAj)k+ z9|}If*Uco)HU0b$6n<~SfHvWCLKz3gM;nNE!p?QjFBAokj!j=c>-HI*x?t?z^EioZ z!Z3m1BeSi#-vcCb1+Z&htj=s(U+-8iTQo(zZ+GeHeb&T!xzqf(*3Jx?v}&4#tS@*% zcJ+-c0h^12E;RCwT?L$;{r$Ugby`4jZm%0vD+r*GA8n+!93g6Mm%TOJYW^I>4rbZJ z>=g7A<LPB>!fD1{fmgfd+!(j57|&UleeW{0TE$!w2LDs|JFpz zM(Vs?=2Tbu^bq&=(Epb@?YGHHvz4ceKQ@y^BqSShCZBBTeLVcjQ%^=p5V8<|h2kw3 zfgH6GOQugkFx1%9k>%@ODx>qe;n&kcea*$aL2`5#n?EKcE;~n(X;=LDwz+LW=Ssn zf#`-kt22tCbg;O)76?Qrg`ZBrEda_c+hqLwht%`9ypJcJP(oGA1mwN**f-P8Uyw<^ za$=nC+bB#0z6$nSQInlTAXw56X6-uL;4H($@BT}G-$lP9KAXK_L*GqVZAY2|QW0&K zsTmO-E>;W_-YIs(0Sayqx((-y-!9^K-gRMHZNf4TRiRL2;4GnVe1Vj1;oefKvI%RN zUjE3)aY#?_!fwaN!FR~S9}VlikgJmk0QnkT<$apuYFF%KWYT|056tYzb`t=&qPeN8Y$SjMKDYc=7; zarfpZx%lSyc%QkI^`QcjA0@PcQ>Uyhe~r{#0ds36b+EZMJNf0FcoaTE+)hWH5;4u- z;1Ay|65qZ|@O-N}9eKEG2X^31+HSAw_Jpc?h*f~qU8SCQS=B=q;N+Pa@fl^}$^ZxM z#j<-c3%46}Z40_uU#kOPR*PkRyf4VmL=`E69$tC7>`}}Dv{Aiqdh465xy&%3TGhWiGn-Dm(-+oFI{Zb zG-`o0*k%dzF0tgM`ztXyy8%~i*8_}m@b!NodbH6h=TBp{jt2%FL{w6Hf-;@XT|If+P zCw2{WU!h+0C+bnrPOO zk-eYGfN~6XyfZT~F#%*re|E$3>P!BAOzjf>DwYuf7 z!==-`-8t$|C-n5e-p%e_^3Bf_oZf5B>EQa5HYze2l$wp;XbU2{VE|^QL_ln)xx;oYp!rlQA&KkbzbPr@7_CvnQ^~U=@i}Rm(Ir5w#jG%A+3aY;FW(tMc)GrOxh2 z{_*sQ>5}};>!f$LVxOm*s_?%s>KzuC_MC6OqnI<~!c6??m*tH6Zb$dXj{FtQ#9<2U zaCvhL$o}SYSZWYBB-LErb<^Sjen`|ka8*@uf_`$4>bs`h}T{YR7JRt<935& zoFA=6q!+AdmlOJ|tb5u}0q$0ljB!ydQaCiBxrQ3p zv%1rC5C&s$l=k3pwpArT-ObHovVO>$2Z_KSr`vdGP?$wu=;`jZb>yMI&9=$8-^rRl z#5wiN-WL-hjYe}2CYCB_VwuXcL0Z@> zT3*T^lnjcV@z1~I#IiD7x_1$7FW$5zVoMG^BKkRLlkk^^@&bB6n8=gG!2im-zkBy? z)B%EjF7h|x=9k-*je7j@%}$>W=B zzAG9hX?Bm4OQYI%h`Fk5R)Gr)h7#TS7-c~Ciz4u{aqkidX%nZq|1txX7>BOsOIr2* zv$%^J>28+rH_KVu9~|i}b@j}BEs$-N_d<(Cf_yAYs6EZ^UA8If33(inJI*^*dc4zX zTh(id^IOgiJFQ#8$r?CTfGH6dB%b@(=}>fH0uJWHm?~8V7H%PjY@io55VeLjuYGBW zuya~DElC`y1sJa}mu4ZnO{&jbff^7@DlOk8di2@3tKBQV(c{@&4d#78qiM~PgSE%( z{F4WZ+c|05xQOXJ@o=b(&qSK##jf7~`K-S`- ze6imR@{!O`yLZa!A4(~v%$@4X{r*~yM|`8VMV#2FoX-l6puA+ zKwCV{`A@WCjbtHX5~_q`p~SY< zcc%)32+(v&(T3?talEJj&QwA!CI<_(!{LLA3rF#1zc*DhX|=v)Pvb-b?WRTVAZJls zUL+!U)4zrnn)i|hS6q5nNElU-*#H7(mf>hPrdQ_yViTmYoBQUEU>L#eo4N-sR(iC` z+~oINEuQ-TA`(U*z?ZV@a43`JO5zzqZf*W0U~cKp;VW z(0yg(>?U;jf&g*$;OA1ro@(Uc;28$CSKnnj3IF94^L^c&PWNzGj3Te#2P@j z&qY($*7uR&eU0OumqvFlLk{1$Ep82tT-rFpaEHSjlP&r@RrjmV1QkT210v7Ze#%a~ z2LCYI{Wpdmy4x?Q6s4auB-M8#7lC2OfcJKFT}cqP!vo3Z?q5h zd-5249#x(PRjKX`6N0I+Z3~j>unS$^?Skgi%l^;!Aa;C#Skxz2N?8yw_j1`N@yWw8Gsj_alPxmj&d{%o z1q{<+?x~J{)OVa@%9tKYsjL>X0SNu&)%yO_C%)7}naPKlW_gZEwE(^++jSe&uM(pJPV(o~}-SPu_8ta{`(K!tm?2*fvXi@%O4DyM#nJ&DW`e`t+*k zWcZ4fCj0BaN8L~T2rB6H+&@a%rL?BP%QcuBP(Ik#X=Xk{g+5>?Egt-_mAE)jMF8`E z4TkN1)G7a&^53T3Xq?vsYs6*8S=p0|Ak~V9MoJm{krWk|{=+;_KUn zE;x9VqJ=Rqhd8j?4m=f@2**7~iN{BaU^hxc5cB@wX~kwsWB@2n&p}F$|8bc%UixG2 zRMEclJ3G=aiEkWj@U(|$UeRRD`ECs+d_`F5K@H?Gnq`1 z9y!$CA7OcUhbTqql>-yIJ><5CF#>UXb*`8@Sy+ahf>9=v$g@y8ymAP(Php68R59>{ zBsQMNMtBsU$qTeIIT<<1*$Ci@sc~e(?|-?lz$&5&M<+D1Nsit%M`-Q%JdEvDb}AI3 zl6;`RlOvqC%1K$KK&%K>v4N=CK&lnUc%p>PYFf6ekB| z?7Vw+c?s#=yM#d9oNX$~eBV$j+Lx!|7h#n7cD#*ye&ybUL7L%H+l1!5WV_Zy2A#zV zdS;oyCOq1(Km;U=8r%>1;n`ten@L|m$n+MLsC0LYY=cSr;QH+hb)Y}(L$hoQ@{hzN z%_~F9+31%)CSDj*S#!LaU-)#pgXR5X+dg?C%j1myG+*WojSMEYj7oiW8nX-uM6qTb zYAWNzMC@s$f|Ri(9tkBt+bTOq5VR zm!PggKg6!cIXI1ui#{v}B8Y)IKxt6^v*u21tr%vzh6;Lu*I*kkz{-%=RHHMLNU@ww z8BfV08kOpAZTFj&K29w=xuV3fmF^@od*&^z{C&6dv%Ib*;~D|JO;GXKT*YrlQsI`a zgig=$USM}2i@KXfhNDZi)zS|D>B`dKR^lD2R(+R%uy$prj+gkP1Q8r)x%3#v==`t3ZnUre6jp5|}E`!b*Z9r$Ii~Af@o7`qo+Il-Z3+ zm)cr%68R|8!#Ic&fH325S4#n{@(il-N9ZYy7n-#AVCMK3-=>AL-{52V#3wIpAaU$? zLYl5dc^0bfE6!XX#{r@BwPTRS1rLaL^sT$MbF9s>E6lW_jS=T(?-^>V z>Ys>YtrJwqSr*@-K_UB$%h1AVO!7PmVO`s!q!e*qTP<0pAZ{tkEVH6dPC0==3K{9^=p4E~X(rF0VEzKm9!T?m{lHk79%H>ps z0*{uByZW>kIgzv^Hf)l1-r4`m z8VYyoY8UnZb~>KT2F2~dd^;LV8wF`l_el4n>L(Bbdeba0pbpT|N}RQOI(K=+(qJ5e zNB~49OM9m{I63>kFM8-_$-{8ekfdAvYzTA$UMj@=uWVG;?pE5}ZV78V$7B4p!uS|@?2{E4sPjcq`j%a76eb-`O=Y4HF7oGwG$ul1=TEr!U5WebtEmX zF05c98azO=3&9m=eykvkd$P)TCnjBZwtWYOqoey_o>@_1A7}b(P8sPw-r}AYpA4EJ z`-p?(X>*&qH5?!7oUgW5Z})C@bzg>hQ2WzOFm8tB8i1Vcb8x}(7XYERN4p-CC4?9U zfs|ohxi)k+cFfAueUh|O66Aj^w9!dafu^7#ioQJ#YsGv+q%4R5#L>P>>k>4%bVo{s z5^ax?Ob&rw_PQ-}!P18J)9ZbYgOBO8yl9D{ zeND4xkcTiHP361shU7fcqGPQeTuM0^3@OdM+V36jD=$&+yvapt^LiY^sSJfBiuGxw z7p12=Jf6+yAjEVmpSd+PHTC@)ZE;CxzrR&ky`{W3JAxBRt$2_}W_zSTAd}NFYwXZz z)x<+8ON;ppmvV~+>*f|{w`__s65wNKRVD5In%Rx=>?R<~!`^*AwF5+t|IOH+E`6sU zj}umTu1#cv{(WA)`FTHxlL%gcL8(!zonGz$3|{5-ZSENO%Y#vSsnIgQ=k)K|!sP>& zzECef9=;em)GXq1sUL{aB!`mHDiH1XrjOYIf=O{blp&8jM9n2{x4pY^GdEp>$06p) zaJZ8QPVvoG(a~1E)CXMl(?&o%Z{&}Jq^Vl?kMOhi^PV(FpbiK8dBU=ta*O{M3_zn; zX#r+R&FPL4ga}P{yFWL5sKh9i-q2f!IbrsErNk@es4XEIF0eizk0lBCUxJ7@l8E1Z zWf}Z;@I#sWnJWk-#1?m6tpilp3Li@keNvs^TInrMyXm6Z0w5u76Rlrzg|aJoq`vQM z?X<&LDEjup{M*6~*C%{BQMm7WuP!HldWSRL(pQ>)NQ3rm++G+gF>himg)OiO*T5AQ z+YyUK9%iD$1Q5IuF%qp^*}694m#6-U);V!1?u`=#LnrQs2s-MiQYPp4Dknm*TD@n{ z^Zr6t%``lb5X&?3AfTZE7`9)4Vbj?d`6vfPbz~oOb=E9@Z~>Yc1mg0_6Eb?Oke%?) zbe+h+4F?4qDdT}bRG_vfN4L&@GsXF{nY#&Wm2jJ+JxkcnfT-wz0dBgu~dRPT=RYznQrI%um^{jlQO?MmZL0 zCAJb{7{KBy#o5ru6W~91EG8r*lynR?6Y#bLfGj=d!FQk)tu+Z;E#yLeA8mmCi{ zA(_Hppevys`3eX}qmldww7q6tg;}t*)*G`G)+; zB5m&0QNP~Tla-mGnlTE(YA@NHqz6W8mA@cw8|ufS*luAveG4csvIr;a%Hi*cz-H3~ zhWoNTq5}Vi5xfBEfWR0%T-@PEn$)VCW&b5{I@_DFp+dh2EI|bdgtzeK?<9Tyyz0$e zH&ip0oNJmdxm1IPtAbuhW0WAuu-$@xtc8`tu3-ZB^8l%B)mt#(s0em$7(t3+z)Enu z;u{dq>fbAP>E(ah8;d}+SpilxfI{(hi7hk=-az8iw#xSlD9tNeq^vC`nyeo;dOEg} z**zyo4iUw0fb6sl731hp1~C?-{27~J`>Qkgje8O!w!VBUEG$1G&)yKF+@iUyHTt^w zZQ~<6pT7Mcw0dy1&zHF-PkNKn)5Y%Yk*bNVdO-GgoRF4{1Wwxp+5w_8(xgF0SW-l% zg)k=Ozy2bAOz-(B+?>x536*pjY3|^+Ma3(!L71F;C5{%C)N0-=%7$OnSw~);8R&oH zVZ3GVxa;Q&1NzEoQJtQPVe@gwldtx@ugk;~ptK$H?koYPWiC^9pkm6gaitHYMa_D` z_78@4!m=NYb~U=C?wl@1-sD?H(h2&!wg=>JIU1Zet;A730E(-#{#SbOHbUy#j>K}9 z@^a)GizK#Ryq^x-rSgARG#$a)X0uh1KfI_Gk8LiU)gQ-cWN!LN6>4)EK({;9Ajz)X z^L~KZ%!9&%B!L^qk~Wc0BEpzf4A>dS%lv3!6(^Epj0P)a0COEPTU+sls8TjmoW2q1 zSgw~zK%A*tO6x5WFiNN~Lo|Pa5lM^GoytXSsLQIPdsh&S!KfMPO72JbtbM{o1pd1K z^a_V?Qzx*_8)xv>HQVgp({=fa!>(e_J`?gVRi&Qg+!n4GfUhXgvMRcLF}Fv9h}FVd zInCWhfEmb2IP~2t=6k~N;9TD|bF>)=n&NJ}K>;?W?)+fuVtt*Q3}>PFs$$eWL+{`n zU-DqYHmW`3mx2;k3n%vQAHd%T6;}ZzOOnWXJyUn%quSo>233qH&>r%Te`Z#BH^e0E zx6*i)OunxsU!6sR1x>&fts3|1Jmic$2U1 zbKL6d*63MZ=zJOr(Z|R<17}bS6F*FxWwvV*nw4Z%&8|Q~dDbMxI-Twq*3Q)KNjs&e z`ekaKtWV^dG+A+JmZJ|kW#kUgzAQu;z8_zl{X-Fe?i(Y3!*Xt0T?qsu!P%GvsoN@xO3UHQ`i2~fOBx;c-ut&@;t|k)>YOV;0Zol1_geXV@S|p z8=hIc7`n?%Hx^|G(K-BkX44TV#d6|dB4rz8o96)Z_|x-0+%|6TH~+S-uXls0(-O?b z1oJ;PHCe+s&5CXf!;F!9aYxv*R^J$S(|7gfC?9_N42RZXi!oEuBxg*?bO@)y3ra;I z4)5_tO3u&k*KDn?TwiZnhhJSUb!dBYZyX=54ky>m+vYk>&rIz2bmn2JqNx6{`d~PG z*kj>q7GO?nsgU!XQV?65;hQ)Db}X|jK-trelm()kw^6Manr#K%tn$oJcOY*xpHbk6 z3ZTi<5#b5StH_iYKm2nQxZHDjB7s2u$&;GQD84y**y>W`G{3X6=k&9b6-)m@%t+|ZpH>ewIm;DPu)&b{!*fcqa!q5CD|p_yEiX|SJxn2k(`)$ya@Nwa z4%_D-MlfoZhLquL|F3{m*g$BIHYcQ-eO%M!uyE>w zG9`^7hj}24I|0HK6rLFnKJQ=Aj4>w~Af|>;Kr|(Rf2j9rQ?KuRSMCHJ2^Qv$GyFIi zxeIxTZ(Y-ixUlUUE7MpR4NEetaTgB0I@ysw@^3Hj%(Gq2iPqP;{WO=~K6^}MOh4Y` zVpY7mN2f(bQ%RYr&x%Xi;_g{y!w{se$Y`s+ zCXXreh+tt)@L{}p8T|8secNmNAu$CZIm)m|$EgG3IuL~Z5O$fVxcJeOm-DWzP_gy0 z)$&h^$Bg5A6M%2r-KsTr!>lJCzl#=QE63e4$cACWS~kLkVf(|2f`%T?Qta|4TSi6m zb*l`uFz2qFq8KeE{u~qknK{JdYsvx6V&JX!^7Qn~88-t9z8R8I2f%W$0%07X_gM53 zDik4|uqmJMQobkj&-Z%`34=CzTokPu6)yvo)R8R;j_(u!eEo-&<<9j<4pEe#aIRzW z+R@3$Ixuf>ILw=5rxjkue%t1~Y2!OFwr^W&+knZ*`FKvpv<@YX`$72 zLuBe|c7;N-=CN1<@@p|&o(dEVh%*W$RqTN3E1O*V-$4M1Ym5I{QT3>0ajDQ>Y5cc; z+cOfg$;oUGc{@T9Dm^nq#b(*oP%ZGJ;UwLb53D-!raW2t9Hiy+F(Qs1X$a3bpDF@! z+n*np;_QL0ORYpt{a8I)iOXe{KcUO>(z8IoQAv0V1ZokzIv5wo0j!!*JVf-zm>j4Y zRP9nuw95H(TZWu6ZVRJg;0!;!BDAWt!B_0uan(v>5KGN0eMSU1SJP`V z)FoN^cZG&dVh8`-=ygkXhhwn?HM=#9{EEVNfytz=S@TOIX&??lDo#V8%%$Z$&Qb0D z!6g7hE6#T%Q8YCUw)$OM_PbT!Fe0uZ4*^GDdnRIs2`|=B&MyI_YX=OQ^WoAm? z5-*qw4)Ohbp}-qn_kX>N2C;Wup#ed`kPxSrL(6 z_V#LYK4`|kv`YJ#=>nv8V4g45M?VU-ROVw`9=*&M!qB`D%nj)CiV@toQxticA8eJ> z=3f6G0KkpakmyRyj>2-yZ<+&6>LkhkP2FDL?1|<`_ zjU%0@kkSyJ0fZF_B^zBE-q>2Lg&jDwe~Xg7jP=teRU}$xjDRsFhewmrjR7;lzEX{ zs$W@!W-*8wSxNOV-)i{DM03y7?eV?AS!M*+iMw&KWaFF{5eRe!O=sxk|M8vaWk*Dv zic%eqtmb^E^*OJ=xN5fLv_+EAbE{Je2_ znIzh!!~ADmGc*ok-soiCuv|i7^E_5i^Q&=PmXpIHkD1nX;mkWRo=tOFPxs7ZlOZco zkKy>STE2q13;=`sk_e_q&SI;U)~`0;}SVp61g7_a&n+ahg<4T*5{+^ ze4Zej-)EIK7)zgKAXNCGh16chMh%;@1bl_l>#p{jKNXl#zsHx5 z#e8+yM9dxH)k?_fhoT{#6`J2R-+c>xfYAUG8CafkR=`qk3vV2E+iIvhF@c+y1D)Gv zbfrtdyTmx70=vCo$%CTTL#A#X&y^b=@;LM{2egVYBvi1pJi@d~TXOIpy2|A;1h<>= z*+VT-8q0L$J)XJ}KH_d^pW89FTY3(@T_V1h}kjPc=! z3GPgwedqzEja`B8gkEg2jDXMHBV%iZ;bVKb;>X=rPU?C^vZ2@Zk&)kb-^KLLHa%0V ze+zCVB__D{sJ1yn5ZIhwCaNI5CG*x%d@{2e&hvNjcCfK|)R0YvVtz17-td*VCgbqu zTLW7m@gzFB7tvjDAH;wshKNfsrIJbZadEGyyT_C5VLQxA*W40cpKV76Su`#-t);A^ z!S#?EIKMDeah82ZMXU&679OyDz2#}WHCM$4jfcK9I2p3NbI(TokMT27x`y>hE{+z( zbnnvIf%wt%q&k_VoE*}D^zR~%l9})B#dc-V3N@P;*oxPyAwDGW2CJ)Zs-XmPXZoWA z1X0^&i`&ZUcg%YM&&z?uz%;j%oSoO^^D8`TP3^ z_(ViR$mSlQbiT4tmcf$-+3Yho>KX+axt*HyQkRQZSo?b3M@XCV@$R0GL`*uFwOjr6 zw2a`cU1Z#%Q+5P_q9#EuE87R3+KGENi;U9laUIlRJNYKnljqC736c&9>NXr@!cqn~ zQ-|IrB{CyU>cr?gD}m?Nm=n=hWoj^!A8fL1wz3^S>Xst5UMZ+$m9;foPT5NH$WY#( zcBodxep@QHzP8w3l&z^=YiqlA+_q3z5!=^Gp1;4L5EEUGr& zGmY~Y!pzG48GUvTPuMR0R@=44_TXoY$=!8@I8(py?%YwL*~YC}t*w{$8~C}KA>sq} zlrLv3XUmJqij5FvxoESQPzMffJCyg3_UF=~a0iRd+VmEi2ie1qf;j}Bg3ruTjJO@| z+S-gC&pfT!Zjo?HoOxgp_j3Rn>@&0+*w+|3(|^SBRHA*Q$w`B(-=nU~T_ zMJ6L#S@jy=7b@kth#7Dwjl;pV=FqoCHMN05Ljyxvd>rD>+c{G|HJR(ozCd?9cx__C z!C%;i}3Sa8)( zgKP(2<{h^m)M*jYG<#dKZpQWhWA8nq;rjmYQAr3PAxQKV(V_$)dWqf%F?xyKdpDRQ zdIZslmLPiXW(`qc$3+8p^bc~P(MQ>pB^-*%+E#cM z-JEeeyvh#{E&;H0WF++Y76^o@6ga8qcZ_uKl4vujjLPH+By|2~&)@D}AK-zvq?iKD zYJSn3Aw~Qi6PjJ5*|dzZi~IfEC#QOb0+SjEzSeFtUuwlwQ<1;3B&wqwrg6*!&t_h% zPm?rND=JuqTM2#;P(BZ&S_J5R&&|lh^2SbQ#l@>+8_G77ok{P)G4p+G2LrQkt9cn( z+et82ZS%LcYH|Lr5sphP8acD?E~+YL__WE$a^E;J@0%C`_>3#0gqy$BrG+pXg#a9k zYP{^i!*}k60uGuBe4Q=l0#x#&O>?5=Ng5tkpaQvNCFaBjqI^25r(+v<6V&PGxQ>xP zt7YnnI-aH4mtA10QB@9->fKjDw^X0*%wn|TG!ynyypj|%6Dz- zOqFM6Y6ZjO29u=;Ue#rKI%b319C-j&DDphA*Hw0DYc@)b=7$tpphrzEUYhN}>ed!?dQ6ue*iiL`o!tD9 z`Wx)P1+cXdR`m7znVxM3^~>=4$@#ABjmHyz%f~fqic5SR;i^{969ZbWwuWl*hpKa= z57J)wEqI#ab9=QXXM**=G+}&DLPCZi2c32`YF*P$7ppYn6$*4B9b>`V&-#8UraW-khPA(*AF*}_O#T62947R52X4b0h%KN zi-s#TuWcTy>N_Vs=&fgdWQ$iD=gIS#`bG{7!$2u0icN4ts3sJtImfWS z_vnHm6j~sx3O5F*^x3QGVDhogQaQWg46?InnICQx9u#2EXxi)EZp_cfx`tt>jUl6JtyZ*6 zUq2^klZMLH3)QH~SJzR)&I{VecoD;jVyw~dGvwvgj^WjYo^P7)<;J%u9XeYv{xd4z zWbj56*OQeqzO$O}!#%76RFb)N>Pb@ueA*a+hYwtu-?bYQ`+~RL5+9k>G@oJ(Iv)X{ zo=ZNkuj)&QJLh?(QJ&IUiwhw)Gx8SNswQHBY$nI74Ai6?Gq$3ZODbjTs5W3l$bc< z)_^0pBgfM}xnq0#HzXF!90=Z-&;_#?{zgJVSFb}Gsxcm~>MEQ#AAI5=Vb2T=)nz|B ztDs7$b;~|0-06~3E*SF2Q(1yo4=qp6XNZx3cbL1wk)3j;0Pvo#GTNrRPqSzgZ07un ztRvvynf|MSb;pZF2H_vd+Pv$t;o(DRm!b9olr^N9Rcn91EAP>vp4IntJCR979;)UD z`0{DVnZpmb%J*E?a-{#tvt#9eiPC)KXX3PnVgl8gUAVOkiQF@SgtL00ip_HygPI-g zc_62nLHUtwKSRR|m8s>@k6gZDj)I@;l{3`Q^ajNla97#9UMk{|ff}-6MxO)?bVW@Z zQ$_bSW#F}XZ7DOA+3irdfvl&^iRi3&PtEfnS*?^>J-2{Tj@7)N@rtTACO1xedXB8Q zHMcgGkzTF6aqvOjiSB%gzL>jmU(`U9YLua|7Jq#$H?Q+h*MHNBWPzqj_29-DXOv&J zPht1PfpoafT{Z`7z*TZ4$fdVF`;N+E-!bTN`}t>YaiK-7EaH*Q`3EkWCg7{C^T6Gf z8G*+GCU%chnrl%9{;Q^NPk`yH;C#s0IIyh6ezUJ*C3$QUTh8eF&UXoe@k|&{ZR*{B z=^xY^O929r4J}2;`(Nwg#y6Lt4BksSC$%m?V*7^!B}#1|q?G8CDxq1p50-=BQ8mi~(Q=5ZK&WY_1MH#28)BgPtjDrTXN4gTuL& z)iSDz1^r6AUi7G2K?L3C+;OO49C!R1w1cT;T<+eR_Va3olz9g&YVcin;101%4?cHd z>k>o0&XhGFwLM$Aw_h~B%N$F9x<2}c;Ql&mw-uDol@@m(cp>}I)+sG_pp+O>jt^qP z44007NlPzn6%UGo7GDT0P~e;56y1Cna256RBgGQj&h<7?i2-@R(*J)>-K=@)3GSF`Y(_vI;_FFxV|LloT(JXZWe+Xy@Z1-munTP`8K*CR6PC0{AD?)ZV{#g*Cu=Wk*l&vX}EI@)s*GPYXlx@%); zsyDbNV`M$scx9#&H&$HNd$%LK$l9j3d@hP1#^F%-9>=#JOy#1e(qaXNCo%x+7h_($ z6jXaVE-Bi=ycpEVsD|h=9vNd4JE#;U-rk^Tn|0ho1igH<+_8fmYhxirf<4EQdu5l# z#c<8=SXVpSYQzJRwg{R1AB=vMvhLSnp5b;U=0hX|1c#_+0%4Z>hKDm}rLk^oL6z#P zf9t<9w$xpdUVelPh`rWuuX$|@LU}$l38J`q3py*k3#z}sUg|D5(B4U}vYrxuT5KYnbHmGS! z4fj^8xmZ*#Sb9t_5fZ#fdxwBPPM{>ZZfK8ha_NNw(usoNi#^hRs?N5m3(8FQEtX<8 zkjO+Yh?87rdFo z{BjgVSQ0JhQjGg6QLzzO*m-4D$tnnh>{ZxT_~3P5yYMIgwSQ`!A%_ z5;|q()1(3Y4tK3eOd+kz6=1Xw3<-4luswG9Z^?F9avX}3=k->KeA64zCOEXA72?@W zM?tgO`V6(s_gbsRllV5$A2;m@owB51P?3j*_!iVf$=EUy zd?<`Wnl|n!A>sqG)P6An@qbW6wno>Hcy;A$lm<0XbZH|QUUwdSI+L|Fn5kiiLu z5Fj04e-V8OsZ*H3&M}$$ZhA(T2w;9ENnAiYUIu#?R(H}r4X!$~M?bxFeD@nOJ(DN_ z_M|cSNwj2kQd6O2V2AG6(-k8Y=&b7fGsc64$jgDTD|-dHJF`Id>{plL&o8~{@f{;4 zTtak7!1`JwdH*J;xD?dZ1$?Ik>^owaJ3qqqu$FI&@2|fD%(2XW+_@KceW#a0u0xGw zOH4q<^Hjy}?E)PI?lR{t!{9^th$7?|1v025$n$9Y52|MKe67&#KP838WyNjs)bU2R z?kKm4`=A;m2WG%|vWi^V*b$@muMQ-i?LaP;`~~)FLS%zi0-bOnb$-Z#mF@A`poIE& zg`JzcphqtMW~2{tkymR2>JPg;TPSS}94xz2jX6C`;_YNxR~&!J130@`D!oOTc4Un` zFEGfXw`PB&yE~Yn-q-UNKfo-eM@id1@vV)}RVO=axoXy5iG&?ye>uO?asZN zfmlaa{Ozv49+dYo`h9>_4VvI|bFK{Svpbc8p`fu8T{oZ0@fBDz;-`IoxaD@dn5$yq z5@&0~Y<;fU#BTeP!s^GdbtS8OPgcj1{=L9$d2jEX2`hQrR^Kzo|H%dT7rGuU`%TXE zL4C6Iv=`8c)!G5tEphY9C|Ne1xOELd8q|x-)!jvM5-ksM&ksYTDW7U_^kjiRJQ!v=03J)b6%80i=BGEF?}L@|lf6Jkt`7t( z>lR?SjMWo{j1yO-bmmGQS*z1!dE=l6qhySl;eKx2otorO@hhlb;f2MQ*lsKmIWNCS zSvVs-F%b?~{#@P}@a!8|kN>U1>RD5Z*B|HVG+L6SxSQ6;ST*2%`QKARw`ZeN5vw4dxFs8h^taNXqDL2Q0So}qNljBHEeS> zF#l^CMQ4*}-#CjGF5u$Nf#pPmH!Swz_Fsp*fAckiH!=joaCZf&qjT_b#O@pWzE;`6 zRmH_TR;Oo4RtY)peqx8_c9vd8=JI?Cnm5c0%GZ0>1H63Jaj-AXH7Db(@!tS{j$h~^ zCgPDHO->h>-rPa6+2J-T@8xOtsC{#To%5R7dEAI@ zi0AU&3;?vGONU0SjOvWN^^`ZAy%`;24eJtoHm8Fp?;9$4aC!1@jE8sQBY(1b37 zZg5a<%ysJ-wA5GB>I#zpSp%|4*c2t+|F$vJ(S2jCvh;ES;`BDWUVMDq=37C8sentX z&txaigF#i+y=&e2wlpH?s(`Uxzlb>W;&9^;P&s?8lq<1DV5WQN#f%5NnAdqALPbfB zgYZ5+Btp+75T;OA@3F#c9qf;|>t*~08PY!3DzF$*6Dn=_h#EFC7;N|V*KN56S)%pr zTx+ymXuF!6akBhsao~h>+j#*~6Qb3dTUsV;Bj_Ca(SuBYlR&EhqJID&P zj1yN=9sbHp&e6|cNugosu0nY1hrRbZpUH=h1#-!F$n;4IE~pv(l)JFMIFM#Ke@=mQ zQC*JkJP55s+7--Ed~@ANTU;g%Jl2Sq#P6FCp6X=yULhd(qs`KQR}b;mjZ;+f{|W?S zUuphV_)b5G{|Njgs$}-R`v<&N>VJhl4_)w;;ID7b1paq_BT_>2zk+kj|7R;1jhGw6 zXJ(eYeDI$nZq%k+xUIn?hx&h7|0kLMM`8{C_plQG6srzv!=u}WDEtb39roT#=#whG z?o0Lmdchh(p-rX`_ka6A+9-U~dgg!cIxHlYdh)*>`u{tI;Qt@2|8JVWVT7EMf|mGI zm*CQUH|ymu!Q{%&0|30L@&eB%Hma>W%FjM(aa)QT$$EJJ3hm+$fEDpKR`SDN0AGp4 zdr%R@+~YdY0;^~mR)Bp?Gqg4{I!TFVI6fv;U+v0I1ibQAt{puNYsEj}Z4t5}l+H$y zCZyZ*>+`c$g>4*%@IRl!02u&4ro&2tCf{J|Qv}C@FZT`fQ6mm0(gV}=6$|5-MX-6vq0t!(^TdttfD*2IC^?Dih`kJ%*PYvQyV`OV-;+RjJC`TopYSh zWC}BN?+$Y9l<7OOH-)O>4PkU_^C8Pl^S?a&fjFMeojfD>ka>?JH#<9(yU0LT#z%#C zXE^UFwlbjPhxCIcp{Dw{dLioDR984-m})-{WAaPud(F!!0yzD$t62d#aD%0 zR#lZ?*QjHwc$o(&aW*!NrNo8t;0Aosg7ra+iD{H+l#0yX$?N&uW6Y{onuF&nR>Etj zr@d5uyVjG4RqFW_4L&&iw!NH`+|`9~Ssiy)(?4)rac|_-zkgd0=w{6?;>vL~D>S$3 zTE}XD8)Jenf8&UY{Gi`YGlw4PY zpkT@wi|oEc7h& zmE^c4^;4=K5OjG@IsXGc?gD>Yh3sQ@Ei1az=0_4K4CUKpVsDx$kmX=HQ$y;*q=r9! zqmjyScB_{tERId@;<5@y@onPAsRgQ&`xt_#pL_GAWrhK!Iv3H}HdC0EYW~)zp;Jok zdgXEqfl^6%Ir@)By^u*(BvUHWwgPQYxF1)!o_{e8$f&9uNqb&p8~KZHhR&v=?Q^vu zcSq$Z03hj$1d5H!m{8xJ@#U1c*!T4f4Lly4I+DrG^to9|>y1nTE|A496duu3R6ge& z*6WncDZpN#x^H0CxU=Ii9y!>;wpW+iE%;K-9+^eagJYzmb%xb2Uxmr5k8uqfXi%?ZnQC3_TjNaR6MGG4Idzd#7^S(Om=INV za!2MF^jLW(+!TdJ&mXTcK6~V%p#3<9O%ye0wC3*nDgty9^+AKbFQM{5B9{t@?vyfK=z?do*;7Rx^@r{=v@R770l zUuuZKyAg}jA;vF{=Q;2sd@$DnK(vMy9)aEr7-=MZlu3553ERHJtlzj&B_$Z~>8w@n zKF%n_`3GtmR|qbyHk#o?p<#ZZK4<5?fpW!ew7Er^&ED`L-hqU_bNQCZwX|Ar?SOpx zsG&F$>OL{;1z_YjlI?*u>@AzU9MH^r=h#+k%yBk)t;m+Obs`0ay1zkFozxp{PQXWo8A0fS<)qCqI9b1Xg9Qr$I{4% zQ$OJ3;+_a~eBvrn;g!U$H{5ZI&v$&*BLi7g%fQL|(;-7|Gt0PGe63^5sg<;jVrnEP zev!LV8E@|6%mWA6bboVv?vX@Smag%oe z!Sq6xjr?ezQE|1Sd!!!hs&&6*KuZuyK zOMmOB_e|sCJ(SGKI=5#9pRE7Kgn~-WIx$71gJdcZ*zrxKD zZ!aSxFu%H|(MRZvohW}9N$hqR2zOx&l9bC4nAn{El&$ zNP9u!7Gl%b&2%#ZD$E&gn~)AiXqDT!U|?Hlyv}~1Xco*5s8QozEQxO9$1mC2KMa#Y zYbz%uH=*3@ZXR?o;?$hs+am2Ll$K6u#)MVisa8y-G5ojJ|EyPJZ^+ADyUO#%=H6;WN6iLbxf4 zS=xM1=dRJMA<^~nX>4q~K55rb-p|S%-oni*)YZ*kxAtJZ%QeU^63-@ZyxyONU1r+x zO6qhh>t8*E!$9F@AY9w+*)s0bV2kseYM$_mXyueg*BTe57l)8;3h-1}cdd!7o#Hdt z&5B^(@)-5g+Pu-15$%^J@`a9$J(|r{et@a*)fDs@o&b zE&BF)vpdOAUN`gIhMP^zwXCqPmW%`j-g#kpbNv~k0l98&>X!G9KbqhRDA0K_Hx&2P zVT2HGg#F8U@hy9umF4ixbLxkw1+p@WS`-)NKm6~K=48K!LqIo|FYpvLySccg0{XruxMKzy zS4H>!U@g^Z1_yRWw{^d<7()sw&V#wE^;deZil40Zx@j7ijU7`u!u)nlfme5O@?W0x z=QU1+h53fahRWu27Xa$A4DR>YIB2SM`3PYqN?ESVXkgpBm@wg~PrS6|4|;{-i{|=M zs(5`y4DUP4=wFoFHhUFZ=rCnV)R(mSu152$*H6#GS#J;1Zd~WCYN^So<7*zM$gOcm zYOX{1EOWA=1<3?pn!MJb$JQsdlwBN!kg!y}3GQMTtKMl@R-{YNrM-l^%97K}X~3xI zhF{ryv&5C(%nKw-%#-N+4+csb_ne5&mB*!Pe2csCPwxXGz2`ixt-cYa(ve1Gb7}*L z@p10M-0?QxkrjhKd;Hx7)&5l822*Ur@so( zGjc*B?Y;k?DMDqZu2H2#G`2Ki?qale{!NHI)yt=ullJ)u9(5BF7R~DSl?plE@GTe^ z{=R3YB=EzzEHH1v#Wyuk_hnt3mEK0(1`gmj`8MrO&SZ*t^pxPcZonB*(ijDs4-0D; z>X8W?H=&NkLlO8;su|js8vf<2ZmbQ`!>BFq-DX(_0X51Bn?;jPUW}E&w(X?^ZzUi% zQ>+nRERLFC(9HOINgBJG+GLeT$Vf&A;F5i|k*EJ^Bn2V@zU5oh^7YF~KA!In_P^?l z$6XZ0Y#+qxou8A(95=%~AwD5KDf!8tkL)9`S=Fpv`Aja5lXRZP9qXRi6h0h-4wxJ^axKt68 zsSL<5?(gLHJCFg2DR4iON^zilYbsE+3+B&!NERE;*s6;jLYpI>>zSS7)%jY0B z*Qbl+YG&$Ot9e2FAnhr+Eg$xmUmjq7_tbqcxd_^v&#)6EMy{-$v(t6fWnw|=Gy3rSU$RzhYW;HoS!{3x-auM)9P7=#x55xY^P1x!T!7w8=yB zZ_)>yju0}8ER3IrRFa-knXh+EYAV%L#Fb*5mb^es-G%#mZPLx|4t52Wx`Mibg0E&UdzrUEHp?vQ z+`P4r@S_AQqwX_144=VmvYw!#PuUTmNKHLg!aU%@G>F&bGuhV?GuKZl`JJf6bEQxQ z9fs!xLsdslC=Lo5#teL-4|^<<&|u?4 z*HUbxTvIPP{?xQ%)H25np#MkfQ-p2w?tZ67~ zMr(CR6bsoibtyNEM3LcGr0y z3=kE_sI=`e`La1L1IrW43sO#s>#uL1;u71A@>z&4Vg5|Xy=swSY?>+9h?0TPT!ng* zQ>M(lEfS40!%r{$bd$syhC;WF(I$5pL9T?JkeWR1hQ5!4DUa5KK125Er^urXhdN~V zvQBI}h8o%NpYd)*9o?N!B;k72Yb5hl-k_oAXdDNl^%Ku+FRC7T z(wFi4d_?n({^NntjL($gr7sI5#W=NA;yW9;wV2`)&6gzhI6rQD6wm_j z+4A6^(H<`CqGmbkG(xU_BfhArM&1#2zD<#C6GJY3j*)y32Zwki#(sq-+%DP8?64;{ zRNN=`E=Sk|WJ(GawgNv!w>09D+i#r=>(@s!eANxb*`~26(?C2+81kBpq=*Mh4?TpR zs@bylQqAKL$Cs9XGq)QMC+s0Y>`dvEGCRNRyh(4yia|n$xo)X(!mND8rc;LwHy-IA zW4P*#q?iH&=U;rVf;jNBu^m&vmP5SV(gv_1{F%(b@Xgu#uo*~q8fwT1&n{hq&C+t$ z334acHuC#!^0B{Gb$`O)ax|yYiJOOx$pCn(q&({VlU=C4JOn z$_8cR6G^@1L!S_dqoV5isPfswD z3Bc50@Okpd+VIUym|P)k0JHD{kn#XJ$LLQ%oNpt&+s{R^oI~@azJ*J@=)E8Su~KbP zP+;*W&Atw?*WWn1A=be8xB@0CuOYGT{mswQ&~B(r_Jf}R%CCpJ!JyEygIQiq8)MT?LSifAhxrO+b5XI~ zvfACtn}KiR_^bNu@v%SaBwanc!0JSb!YmISt~R$^bV4uuC78(X>&qKa8^vTACRNR! z9y=Ui99H%$#;R?NDFF|8sOBY zRH}~DMn3s&ru@X^yhK6ndFO)7r|@}=RaxD0YZ-L-wT{=HA2f)e!+f~@&I%2g@z_R| zQ?dBwTGci@Sd6bqQeQ!Plp_ym&y9F|`sq*RolQW5Y&RGz2La1;fu$Jr;!4r6eOycRw zbapyE9-q;}8aRxDWUe4jb_j$YK+3II;k&@B96Rx8=y=OPI3ia|LS&`dPylK;ZLm!= ze7FT!net3G(t24(TU>Rr27{fT(c8W%o@5^CZFWWX91C5^jds%e997#g>C?4^K<%(GV>BbwU0&1Tx8 z4US#ywHr=pQ%7j|G0-J~e=b)QIJKw}^0Y~#w>&q{{ON;+PMi-80~&?v7DFHOzvN3Z zK-g4~yo0N+$=ZeOJC?yw+uN`yRy^DLH&n4ofwXaIC8b^Qcle%z4?g5eZcr@Tuadi& znv8G!(GfhC)lnWNG;6;g^$iopwPuq^aY2eq%T5#WVW9HRi#L5N@VP(OSBfE@=A?%v z^`XI9L78o1T86Gi1$q|3iNcW0Mn{VT$&)QjySWd45P^q+7R?$NF4R{_idnFh2GzMbnt(sY;rXa@2{q_j{C{!*y!L|Z=?ksf)7D@o z2?>AKZ5>}a8npX~)rq+H(1C?K)NZN;TJxH$oMy9(xw*>*H|wmDt)TP{+FD$71=Bhm${xCFC^-g zIdKox30mbRP1I&N&C+YBQ@w3g8?Fwjx7V_fW-9&IP!h7?IMp94)6xDdX%q03aKfsD z7^_gXEqOwmz**A7>WB~#LWk$l?rZ*h2R@qJh_4x-*{-U<{;WD}33dDK}mX}E`Y{WNqX7j799pzr3Gy=lMA_GNl;BVtU z#Y9`At7|ZaY$k+Ac8t~{Ejl}b&o++jJ0-fu8x4m0?9KDEc}yij8CvhXF6yHa7G8FN z`zc3*L&Tujd7X0d9a55v$;Y;e%^d7TPt5~pYuC6Y$d28W6=6Q_P5fqxMr%h_eZzdi zj(cHig)aq9Y}2zO-wklsz&Q4TOMZ2^PX6BP`1?nMg@qlp8Lt(NJ5|A$ z9=%`+yhtL?gilHe*9d)1b!Xain&qA{2IX0QDVzSbb31_q2B1?cOl`TtN+u?(V#(gc z@Hc9-(l~``Ft}u%;(K@}q7Buk=~sZ2tfjBh<)Btq!{usI+}=s z%7y*;xSY>8vT-)fvkz+DbWW!R#GQm;agu#}`&Q|-qimv7YVAWA`tECZiPA7&=>GCkuo(c28aoIqyqQw4;0yVQSG)D-jP;#c_IiF1Exxqg zm&3;9uUQ`2v(dknJ2Q!`h)dTlYj>gCt8_dog?2;2TR?tIf>Hsy>47us_eg}EDfg+R z!8~2BE8a+sh}u3vC!g7bSRj|f120d-)e6sszx%L%>tWP+Ha_n>lnxk2$eXa-ytr$$ z*I-g3UI#9sy_Yx&h*~oI^;qe3Ga5UFht+Q5J>|Vi4NQBZKYa~v5OAxPWm|XKCT}px zrW%(_yhjy%n*8lA`xjvccJ06JUnZ*;-glZ;DjLO>GsQQOrGBNhC7SupD+IwKQh9ts z{XKt^L-LAdRU)v)dv7*o#6{4yzLXg={v;9UOz7VxwQCGKTmVLoFtEnfzxCK8ChFnV z_{ve6blNKIZe%?pXssmiMxAgx@|V;DiLm!%HBE!AO=b~|$7wHGBnWd}@r9Iu8|%(> zrqc6kq?Z0J6cv$^vKXoKCy1$cz;6(Fo&VO=AF(`3_^K4g#!pE@A{<2`v70_?74(y@ zHTEpjF9-x`gW^MxMM?y8^-eY10n*vyA$niq9%K=$)1}xoKtO(ez_vxN5!_tIZ@WYu zGASBWAt|SP#o+n?kA$KcL@Dz(@-}9p5>@!$EMhCsB8JM$^4~${@4+4|mM=ZCE`oA% z9j+Yp>F+W`o-kPG1@}oah?UIRd*7Lq;mDpeBA2#YI`C|>#!ZbYLmx=dzIvkG=STP@ z;k{K>7S%NZ}4i@Mnh@xg1A`M2ft5`+Z5fUJ%2sUA;)uKrwMGWX=CT?;Tf^ZvK1X4L#w^1#a(8s>vvFT8;8%w8X$ zNuBXU!Zld=xF_gy+EYbnF;n1Vi2k%nfL2@@9w2trV!$l|9p-;D*Ix{ z44sE(_;X57;k)F6DotJvgQ9|)4MF#Kh--GvQ9FUy<1TU+ zW_|gm-=lY872Ldt|70|QjnEjO2hLx)G%`oFP3#G_k{gMXg&e+Uh;=B2usn_ZZm!7O zs$!No+`!D)K#@&UdE*`BssD5k5osmX7oAGvqgoV4__Q8;yW#wo0NM~RD{iTSzIU#C zT62tyoJC%gO7DzQ)Lh`L32M)#6vC}`S#ne$$eQ0u@rkmAoUZxn0ISHLe*_QTY+Azc zfS|^1v(ISMc<;PYjSB%*j-GTcCxn*6rLifuJ16oUfc#x>p5OS#*8{tO8T#&Nyie~wh^1VwzF;3R~pF5@-p4Xwu3JuSOotN#Rt%#h<`UIW#95o z{NuZXL+o_bo|wjRG00MlnSii#^N*7UAFeVrIf#)TUVqnGa=*yk!;S^E2n4E_w^qJW zHBE*R3AIkqe8!4(A;z2^s}I~&rSHM7&z^Y9Lmi%5b3D;|w z?}7PkR7~ORV{Ny6A!X3L(YNHS?m>`i#9nSLc4N*szj4NNvvXgT4rn0w%UO708%K4- zYlFbFn|k3Hp?htO1(KOZ%CjJ z+%hO_`NKW&54ACvw|IKbv;7Dk6OYQGeQ7s(f_wF)K31;@DTfEkC@v)!lx+LI&)_gT{?yRRU8zBwcca~J$auAcAzwfTbKS+s`EaKQ=S@uEhDQ6(dW z{G$&!b=agX=eSK&-VCOXrX)SjPchDKzx&fZ5%KrDitEsK)m1U+IzB*d?~ylbAK!BH z4)69STs3VP)2=?CZ1CwZ{lM~%AUL)+`Eb2>_^RJMR7?*g)BOCePd7*Fm+$QLt+u+y z7e!T@P4i)51><%y6dD}pa&u24Kj?xY;aWT~zkv9laEywc+eRG_$5^BVI6yQ8UzLWP z4c}U(hNg(9-u;H2hWzIJK$AlA_kO?L(QX!=klRs4nrv#Gzi_PSFVBcXe8ge>48c#I zSjC@w97-}2QwdGnyJp~r@IL}Ep|@ACt)?soZ<+FNt1JacgOE}?JRp6!1d~&b(PlP4!(7lHQ zsP||CifERQAe#GG2e)}$tke&Qz86`rwu)a@&TZdoR_cC8$uOq<@A-KoAcKTjW_)!x zonFgflHn5q#rHb&x%}kSL~X5=g{AD(Vf^L4_&9ye{O#X1^+>lWVt9*^7UcdrYskj? zWJs?gM4Bnkw=rB8(wP^>@uh;yLo3&=VR@G(cb4zuip$9M<|gY%&-MkSx06SU2)tIU z^|_jJzwgr*c8!NPmD5t^>BK_gD+h1Nu{Gy{*fjoi#aA!Zwqn=tkME)V?-YKk< zKU1rF>EMqMONRAdm{2zdNxN+L+teZDsZCf0M{BoRfT!^@G48J)J zXp<(yQ{29mO=yoJ{CiJ$Br|u#d%5Vkt2?+!hBjMGaj253#e-L$b_+%n5u6~F2IN>TDVV`<+qrzx(uSB!aE_;t2^d$JuDJUw~eqY{< z@=iT(9Oo^&|GGKcJShD&&9hK;(kLNCp8g@58>RahO-OQ2XAi&GgG@oMgkKGi!v zygZgWW)|$^)9Y}i(3>$a=~72=KJuf8PY&7+P2@WeNV5F(t~~anG`Z?D{9K$??_G`~ zd-`Kvwmdstle~l*nejfEm(L9hA-Vlt^5%9Zm6SDnHFWg*~iR#xNpUS&Bm(U`WsG)9nUeiBobdwzAYI}G1F zb`{gyyi?fkoZeD=44bfCzS%#>y1rkrWgr7nbz$PN(T>gbFJGSbgf5@gd6Gi}LGOq+ zvRk$6;o&yX$b*U{?&tgD!GVgFi4!36ibe`+Gv5y_8#)^A<*D3dR5DOu)w zf>!%zbbBiBNavQIM#twSHbo?!JhI-c57#}O2moKPZRHORXnGJ1+Iq z1rK&cXSX|8N=nh+HDeeKmBHi69S5FiKK?>-|C1tNNVcV{?6)#8x}mtuQF)G=&=2>% z%aV({x?<%LEC5}uz!QW+*^_h3Usp9+?2u^Q<>T0p08z?bwap$_hhO?1E3?$~`^;sW zIr^MzY~bmvFL%i;vDfo(V$j8D=<(|IsWv&a#iZwaZTDg)ZgR0R>}t5m;Mc0J?waY4 z=-axy`&$HUZ_J-;+Mfr_13}k+b1vt7yy+D z9tW?50k<5!Z<FRV=>K}Jlde1@kSkDrbCrL(g>TV}Dj7I6PT%#)5L^$7ar0+b_* zIKSCExjmtM_eq@2i{|!b!n*zT25h#-TzR%rKgxw#B(wwN-~6j)bW9zba?a#bx2 zZY|Akh8Bgl53#4q`SQ2J-5q`1d9G#$-c6<~G(px#s0Bt=TRZS-6>AN>EX18-A0rc< z{n2vnTI{-7EyS(CKvn{Q(%pzw{(&1;_Iq^q)a$+GdtQ$h^ksE-UT#k;gXFH+JPV1Q zR?2_eLD8adC^v}l(fan)O=tvGw7ZMtZ|(c=ihW!I_Ba8twqJ;G5>K$>2xe($cenTW z_Stw)Up$JM#uC3_zajXVmPy(3OXAtNVDSn9l-LL#}wtvLRt!oYPRn%{d+|jC3*X|lJ^1+dw;{dcCf3c8tk>P zGtO2F=<5?88+yz!5#_YR!hC=>hG0;8@|Y@dL~&^djdBQ&-^XW|1$sQ=3qOnHSR)zm zM+SUhOBb!Vt+?%ADKL0FF?@T{AvfR%GG&?y*HP9gvh_&z@|4Hzir=oZ!MDn8mgVzt zH=xc4Da@gU7?};r-F^~X)6l5L59#jj24eTm_t*5iXaj$8yZXP5z@g{sBCu8TH@4@k z!UWHvgn|=e9zD#p44-4BX-n8(wZ`N#VE6Q_!cNg;YbM&ZA1i^~Ab^+WEV@5jA9u2X zY4eaAX=Al-a}cQ}?y{jyorv7s?Y$@iUHleJ?)aCk|5i?iDg zF83xc2=1*hN_z#^I1UhDY$>5KoK2?5Y$o%ZMiG?^DEYIkpg2IzXg`WCY<6|_M$XcP(~?bj56vN zaUOewG=d6Xsrt?R=fnMfxR0_RPGvy6^p=9Nkf~sLK6>_l1Xn-58eNZrm{zE3`{TCW z-W*qNR(Jm9jo-Jgdi%x8j}wUybJ`wm?BUH`ldY0ck(J-0rF3y%%DX%I{yFuBu2g6PuR0?n|#FQlCJWoa=nWZ#fK)lxV zQ7><+Ww~ElMSt8Do8^9eyW6if?QvBc zU;mfI>+OOCan#n(bmOAU0!)gU74^=9ujO-`KYu=-o}I_DNia@DB0!3FZWSKDgK^N- z(5%{K*qUh1SR0(N>Dg$OUeCoig&_EYJr8fKwaRwYa9maE*ZbvRwH)p$hJ(AZn#PhP zlA-S4>s4PDMcwQ*zs-wHR+oWMgd$(_rX<^4y*cja{$usjY4_rK{On1dbA|y3V8kdA zoPyy)i4O<6-tY1DAAPHP_xwrz{5nrV6k$vVLf?^Jch;J=?hl)KdsnRPR(Iyj0=ZS( zs?Tp;jU<2oF#Fef_hm7lwaY32Xf~0k>oVg#0tf-7l*VB=&PVAe4@V;&OCva84gwDxG)$y4iF(U!l#QZMJf&3p`ftRq|K>@;u0u!}#=s~OL7a#_DTyM_l|_U0T3MwA#>@Gvif8=d{CphE z5xL!Y!b|;D2)*3K=5}7 zLH;Qa0Aoh*bab6wJ-K{-e(~PuauNi=Nnmn}Vije}`Pep*Qgpyx8|{Yy%pd=N(A!Fh zfRH3gvhjSh+Y?=P?P2H00%3I(!GyNk#r@`!FArfZr%^he&ZmBsC{#KadipK7F$53+ zOap-?IiFo#Pd>c3_{sPzW(XmK0tA%tQIsXwR3v@~sjkV;v~54AuQxvBKSN^^HCO#GMYr58Ec1OIPTl!ZMj?@*2Vo=cdxL)R7w^|3eI3>U0=HH z*o#qhb+E2{cJ4bxV(&dCC=e)NM2Awa1V93iKX5-I2spx$&`^Xt9$^{+4}j3WC8Zd!)nEqGm$oabt3!2F(5$JtK^bemv-9HA`ri-LvRr(A_vy#4 ze*2p*Uf+It9KJlNdehe1Hp}PpuI5c&6;00(D;rj|JIHRbWHf(2KAT+5#WbU70P<_| ziT7YF)D`U3U1N7BI|PZ2FN68ncp6=gA?IIDRe0~M8gyNChjq1jbyzI6>+;RY9E;$y zk0m3RQw(PCy0ab>5=u_HCuN74dS*4}2wB-I*|MstaM`DQ+1wr7uZEm==IAWj5q}#0B)#VUn!P$@fDiL5vtC@u2f_{2<3 zBa{P75h8({kFs=>%RIwT=$UoUTR#lGZF(LT^Et^bgZXqij;9fy3M3H27*Ty4T_yat&r#YvT zQc87Q*S2ln57rt0hmgToQQA;iaDJ4skfLU6AjBdVFajY;tqw-V#w5-K#$juPF(;d6 zbFzZ|DqHwb+no^rMMN?YgeXcco@MX<>{-q}NMOVe21GC>lwpdA1M1X3kV6=N0YnIK z#=<}{DX`#(Q9%0LISD`jkWmr~Ap%K-K%4>59=!7o8@;9g03ZNKL_t*6dFu?ODvT8y zktm7+7IGpf;shaJj!4WSCgUh3<9tw|YKZaPI|~*e?tg!w~C1W z08oGcV;jmOO4CsqjWd}FPI{?juk)e+w8byI*DFcE|fgl5l z36Di6;uuBXLZ^FTl=H?Q?@xCv01`?g!G#b^2*jDk)_G&h(CfMy)X-z3IQKvpWfO*6{MvPL-0lwk9fdDW<6k$dgS1r~~N<;hYHB z+dy-!5w_kLtF-Bn8MGO62SF*qFdXqHh(i(z#3|5k-jsKs6ts=jt^+Z!$OSP9BN?(Z z0P)Rih4G=upV=JITug&9KDoz45M zrJe#Vt#C(E+-z>ur(x9`Cs~x|QbdkNWK5!IJ}EC}=y1e@A&o0v-5wU|i{I7FY+Wpcd#9D@JEhfNjYdcd4wwibBF;|3%+t)vPzIwYz2M{7WRjfcEDH$6 z7~r(o8*>%}f(bzc2MU1Ry5gOtRsc(BCCa*2f5IggQoR&W?f?LX@00lqd`ikUKkVS*`VT#7IZA|8bhav*>(Mi^m)0U3-9(kGvzhg_z|2xELY z=HW!YPj>M~lIyc_X1Fa4XvJef_VK^$i?PKJmNEkpV{w*XFF(F9{kDP@ds zhRH*n?&+^iQoRUcgs_K`K*~wC=wA@0S04gQm@u>J%hAs-!o&xON5;7p+<;Aafc|wm zk2b?4l~{Nr0i5#y$kD(BBRY!%oJ{iMmrv5mTs({_@4-7SVlOk6OoQ=!GRdwc9ZLK8 zd+{&K`Prc<>!DV9Ks$XrEIx@Bufy5(N9Rv}aWRW7V~7oy?<&Ijy_OAlgaBi}1PH+x z(|2{x2!SUjyC^~tCV=r!ZD~C^9SQI!wIzH%C_q5@ zIL&hxWo$m;^HCbGj1o=+LZJxr^AE4ir@<_?DIW$5&7XMUccN6zIZR!W!+AW((n%W6 zQaMX_$jQmO&4UN;-RPMgJwHF2zju+&)6?I6<;{5j-9mk@j?25-;}>^_L)Gu=-r5Pd z%4SzO)BR8Sdh^-uwx4T1VKjh%dWt+a@16I~JHQ4rhbbbMzMa#)?Xm%!18cqW&SQrN zV2TLA1k;BZ>>IZU0N!~-9F;zq!90%g_`U1&XBTnENGQmIY7wSD11}RadIsb9FD7a> z8>28sc$Q2K7l(Rx>=bwfcj|umk8Aq* z;E@kTG|rPznq}d2&{F(%IY6hW9zV>+4`12WmV?t=1aHf4->P(Z2LO&xpcEeD#ZP4T z^aCSI5hj!(O8tZB%!An3>AS)R5rjO(m^{pN4D}r0bO3sgh7o1m|br@@e97fh-&uGh8Y4}l_#M;>V*g8iEvXlaVQmXGs z*LA1u1!K%ZK=&hVFP!SpF(r&MA-Ui}f;@RSzpL5x80@>?;~{N)@}$P-n<>n%9Dwjc zcO7~gZ=HVY0XvJW0c)-E?m>Cezg6V4-dStG7-UZZ=BJ436c0U|A093M!=KUA{4LJ` zFaX9F6M`whlwgeCHOL`&U{0r);33@pfjN4FC}Y7WAlKP_H;b0~Q1->p9@)lC*W2`F ziQhCAFJN{NCP^Za$VLQd`aL7V1GoouO7Gu27C0qAz4Ojl>#al9V+Vi`K2;?kLJ-Cn z0S1SDFM;|tYH-#&WryBqtxmd*-|5BsT~G3qO&n29(u)tnUwk+kyV2OAx>l>AS#|qG zRUd4#IlJGs1S5$lSPy_aCcpwLQAc%dGefJ%!++q?aISuz1yz$hx-G%Z_%ccd-|fMfgqm3ce91JuL!}ze+15gwa$6# zfgtd3A_Nwkb0Eu)Wdfj^us{_1Z8gL*Y=zFfZEfAYIS;ex^k$z*bVIi8Mq z1eH|#SH65*+_VW9I1(7}y9os$430XDo$=OL=N~Hd(1XG*fOpPY>%DTs0YMnRA+X5X z(@f=^HxB&6c8_}qt{oU-jd8|;Llm(92NB86B0RhLVE*$Dr&&O=fYMVA1tE{Ar_zUG zAC50VlZ6V&l<`?QF3*a6UF@slx;U=CT$Zm^rH@voU_V9H8%84!&~0?#ar3pJre5mBr`}&yW8)TWXJZ#3R0mN4D^QcXn(i)zq%*nx()y4&*S>ls1f&oE65T*5<}4&kz8!4xIPztQ$DzQc851V(hyE<+sMFrg3JV9!V~vkonjl4Kxb! zXnHkDG%7N^p5UA^Cw2NiTpxhdK? z7mWZSXuxBcaT_LLoZyn#11h^_zit{=>8>uDrf7zuH`4%nPrka&AcTpKEQ+KY0@jB_ zMo7dgj>hNl)kRDpB7k*=b!RsTuP#4F8+w4WnnMoKzm=Z)C;74K9M?B(R5sz%)_c(PdykiS>-B@b@ z5Fr@AAZ!Tf7%Mq1q&RY3QQ8rr&_gKY5dgu8l9tix#1@QcwNc;&LR@L9lu}BcPA-H{ zN)bX%Jq-VyQ-#wCK?ouQ6T++s%7Z*wQ_PE6Rf%bgXT(yZuxag3sOETL3qvftr3hg{ zJR#uzn_eC;!91lAO|pA5iTf=oXtPz#vDJ6ZbYk33UXbxcnx>-=C!7QpzMe(>Jv@K{ zsI4PfYumSVW2y$!sgT(AppUvM>uM-UU$?y1p`byK${>*>2ry@ic#aft+8blF)f$X; z4q4lG`nd1bi?Zlf-<*AuP=1jCBmmdMLH$Im9*a;%j4P{inb_rYoP|Wh7DqG)qj5617+=oM zGLa$`y3SX7sNIeSTM=L`Ij4jW^o>XDj56(^D^|zSttx9V@llGC*=T<8xpu1FlK05*dJ(LYcD7d63WU5 z+E6(Qfh+T-8um3L2s{Ts8lW*ow=Jnl<67$n>X76z4w#87)}Dkx9!{T(CgIs6i2V?l z2B}UBLudS+2fzcaEEzDSgoP3_9QqVYrlcN7Q|<1Sq-qsw>rxlpk)uYCa70NQFo`fj z$mT&oNNjiO+a+t4w%T`9RkuYul${w8`ZaMZgfZcQg|U!*z}k?A2zbQfXmp-jy_j;C zaG+g5yQ4Cuaij%2V5E>Gj)MA21{VTC;4NDSioJDGmD9TEtHD$T09ygd>)H=H)fC60 z-R$|0GHWRyOb8J7xQFnFNBpbeku5ynRD-0HI_3U{VbEHgvS0`q=QKhMr6s3F&I-XR zMmvJd+qx9=whh2zYzP@BZ5S<2KM~3>4!j3z@H@x1Q#}$wh*F9W`Z3y_J%I6UFhk$> zrra+4?aR1iGKM1saw>bL0yEB_<;d8<{gFbB?*jr%fl4f57G`PCJz>Y*4Y;^p-6cdN zrb}~fV${>2=#Q&%yt;t@HUkIG|yEaD#M zp85fj^K|^|>f+gKHi~j-B8s{Fe$`70pq&|X-`jG1T;Gse7Kgw?K*Jgh>($NO?RMC- zvVjDJ<1`(Q$I&P=JnVRMOj9z7)d0m%EsrZoUm_i&o^;``)W>zTI&KPA4n8n0^xpoZ zRV@@iQl9X1jOX2~s0ZEOtqOhf+hf|_&JlIY36hWm%QB0@(P5YjOW22ZZ!%1WGl^#0 zGu3e2SVR=!MnpE`l!8$W49C{AySmU;5!0EfZ7OJtz$D6|)CJNDV9XPOFs76;E(9eG z`$2bw+Am3%+)`U@4*=`y;H3j>c*Iz=Ne=VlmJj?sO_xMoia{4 zrNLuDgMfyTAz&CV`Vow)PK{EOW@2<1kIgJ7F5w`XWwVw`F;LW0i5L+R`2o5L+OkPS zouv|SN{RTkq398EgnGt_utH*koi(ki_w5Gl0e5DF+s$HE?OR<@tE?A5Je5d>4CetK zpXG-SvaUyavsQoa0Z0c*I*Vg9j;dp&ieZEHWO*C^Hi9z=X9DQZu%WgHD-swkyyQrr zKT$3BJ4V21IS@#uIG$y4f6We+-nqkKx4;tBW;o_pddAjDV@3n3}R_#_7L-*oEf5s&!S$0J*SuR1qtt^2<3 z`(7!fwPuVn#t^c`Xn>ZIim@YS1!omwJw_TK=RNZNv~(kc97cxVo{`$niqVph65)Vg zq%VO@-Or(Z#SdRYg^yu+qGRXSLHUs)DkNmh(3)@i5&*IthP@+u$6T#{=ZeL%# zS-iNct~Y68N0c6yz0t`y8}@@vYn>In9uJDznxA8>{Wimms&juCmglR>`Ndo< zYK9P9l=uT8k?uveY9Z}6sjp+T@P3h=UAgC<-4x-)QNdqLi6O*l6IRl=geV(iJ)b6xMXe(f zA+grlSfjYYSi5Szynf?N{?ZIH&W<#*8fdc^YFty*Y?^t!y?n(hC5seRDI|Ul+w;}z z=GA3&zD<4Bm*l{ty+NjWNu$4E@dc5P6zP?-xo3&d{bQmi! zzJh8aCiOBz8;rs%(IP}38fq;|l)7@&)fP$%&O!tbY9~exd==fs)vLAhS7HQH2bu*~ zoC*@FZMEEPH(|YzplmY6R3{k&0U&|=rOD7g7(_-koc7J&xER*cWO)L!dX=ot=nS?^ zSltxKSce`ss4Hl;-uHrbrHQGPAYbi@0w6?@Rn(dd*@TcH`i-ovHy8C)BjhjL=JNH` z>U!hqBubC~994ozp-n%H-wn|fC$vYqKcYzIiNh` z2Wfe6(AR#m^3Bc75^i1<%Rq4maR8cYfUOf#hhfB`wA8bON%{$l$LZ<>=V3c*E_z=+ zORIUhzD`T_1vm{L$YL_#p=8pyCb*TWHp|-IxUlh|@&VTsuDOnBmh=Z)#?*Ktni`5# zsG3dPtV6hRvT-2^PBpZ4Nn-kWTGXjk2^)>f5lOyst&y11(u8SItj5{Z4b89X*=pwA zJkM4vHwi2=Fs|0FLS-fEVcs)wJt;+TZ_m2jZV^dqog_)C7KrGl%3f$ou_AFqtV1)e7WLvw z^thTQbZ#LbAOO;d9i1eDqwye_4DBGsK_FtKj53y#X0?x?+E`wol?xvtLVk~;9zT}`QMKxA3r%ho*WH% zl)0>-MlmU+bkrtl&20$t_egTy<(?9^^~6|dW~QC<#?BQ=DWkak`*%zs5pF-DH7mvH z>!11h*WoUSlND>tN&yq&E>l{iMKYe2i^cG2JDsIR*KSjpql3xeN5j*TV%Rg8aXPRd zF)=Z#-9C1S*9eHfLioL?yiXs8%ZnG67G4<8p@C)-Jk+u9`KUNJDW<1KCxfG&9oZ^r$Pu$r+UWLT zz3us=P$iH~kZ3SjJvwR{`ML__G(loN&_|2+WFP03K;{gvwkY|~qR2u8n>-lVbc5{8z zT+Cvl%l=a}$Oj`0YTudetL8yS%vviGMJw9f$X{`8eP~lAn@Nv&d+TY% zZEaztnJrspI8BHC=;-p})7P)U&8vBJRh?g6oR0((!i3NeeAPe| zk+f0$Q8GE`znLA-^=y59v$?pMo8RB0FA60bVyJEw!7D|H;zSv%wN6+Si5ln1A3r{q zo6F=_NTKd==8M5{a&WU+ZrAgxSDRNC&;6^b zS62pJT2MMuI?ejy-lQ06Is_VMOdSz%`#8|3b{(E}qrko@<^FNd-W2;@gg`(VREEif zMW%=APd~g)ueQ(p#pRp%a%P`vQ&1==P-vv7U9{WuARQhIA3Zub9v}3ZQChR3t>XRj z2$kafPy-k}xV3EN_4W1qdiLdO{NpRK)8S*LSAg$Ny z^?JS8Y`qW63K2yFp&?i*nrU@o^o>?4t!g5Vt$AW=lOwQuhmOGH6<1oVw3=y^V(0@@ ziW99d3V9!z#u05}6l+bIrfup1->E3`BWnf(ARr_KNOf@6oB7rCzg=FR{ZTR6)`A9r zlQKW~G(Y*|(Szw@KYf%)ip<)W#MnF5VJ=UXR23RrQfO+P6n$G<)~{)gW@JRLtd>K$hF0Jj9Z z){3>(R+20lqZA?ULn*$iy>2Ce)=_(AT%@(KRvQg%TLA!|N^@GHf!9sWBR~(oFl-*fl08rL8d;>fJR$LO?QTN-EHV*c18i@t@>!{%_&p zkC(5`I4jdUONtXa>J@mnxWrZHSewHD03ZNKL_t(szkKt@&tJV-$uknI6b&BH@X_(Z z;-OZ0l6+{@Q4ee+4BY(TV)grfdGq}8t1e73Zz_OsVli`9j`ezgvtZBxebcsL#O{mGLiwa&|8y}5Yy>dW81URwgoKw=;y zNjVumo{XP7ET24j_`#!xBR=ip0Lez>XxHrArK;f0wOR|P`&=a^#>n)DL7j^ zzj%GVK3~VPwU{K+NshxOc<`%ZF8}9{e4j#wWLWBI82i)Z#)eD3zIYW50@ap0 zix5hT(A06g_N!&JoG)~FaXL;%2RJB8LpfAwGoN3-zJC7d`Sa};ufo<&4zuCm(L)3% z6fgmQ^%d)FtqiTK)d`5zq}%)DoAQ`(XHnMPUkR85wIT&=hi{d(QdTS0ZRu}fOS(Wx zlA)YFdP(aq-HZ8~7cZ}0$BV5rU`&#!e2j;GM+YbW(^2+_^*~ckLC){01w<5~Bs1f~ zTsGq`x2L%BvzzOevo{gH$TOc8P>eXqdrR!)Nm3@J&{?XDPP8g)7V=D;JYDs3N56Y{ z`QOjZpZ(#=xuuJN@<2t_JI;p>PJcE0)d#A4R9KsmiM{E%V8>Q_dA6#Juszx(pVi>qg^XS1m0QH9WxFr0iierozhN5!OH_xrg0qFS%d z7GHe%=AWN^`D%6va3vI~UaWgZlsV+8CwO&PjG}hTRSYS{svO z(O9kbLn|U78APO%P!)#{*Lk=xpTC%WcJcD{;%r%8t-MB3?K=_7%Y%o<|M1}S(_fvO zjz2gZjrC%zqpwuZT4`f!Nb>OZaex5PW3!6ui_OKW*^8Hd`UC#ozvtrd12-x7pht>Q zvvYOr))qQCzCWE>*cDi4nx@)Ox4}Y6DI$oW0a|Om(R!xUjn+%0wuB8r5CM?Zfq&=h z);bv?25Qrtd9IZKmOQ5rqpLK6nSq@jQ!+PPU|>0?hiAQBU(iMj&WZDBswYc(YC)yxwaK&gEGsJ z3>bpUB)#5YJziFPJm7I&<|bv-0JL||N3ymYmPaRK2c|dFy}Xy`T!FslTU!HitxRf) zelf0wCm|^&P-dyYT%kr#I#o1GhB7$P^?K~LRlkJk!-MHG9p}0vG(mApL>D&q#ZbnL zIf-UE&I_vzvI4`HCB>vXl(9EK>6PfFf3f22mLLWYQG$xIVL3gTJUBUibo}7q^so;j z1Bw{Hm~_}bJZh?|X~1dKY-M}1tr{c*6izWeFylwXgKbf5Mh~Z>X>U>{rBN19vnHLG z-eG?D$;clZXA?Il#)T;@S)~w=I8mm|hQslb;FTXA^#+;AH5)`ljKr9rjxmRD`s5_p z9?8vMu}Zu#iAuFD(?XSHBI_&buWsP%%k^Tltwcm3331RV+DxTIlBQ*%dno}VAce9v zA+jPW28w{Bfl5_OlELX{G<`V99t_L?&^DF9z8sM@aW(u^_v z(@{Py28GQv8$d<|WFQStIWr-j$hPrX1Vw|?Oj(akPT8Md;hT#pG_u_`^(q7a2&l;9l8;SR_7YPX z$`sv`AA(5AQZY$mGn&jF9bAQtZ|FBNb%F#k4+|QhM;noJ@L?a$KZ6n`Eh& z%;@87uY{#jCuhxKwvx50eW(RoAQ6L@7?YMgI~>^zKmq99lx>Vrs@iXAcXLx+Uxo!> z9Wl1mi!m`K$%`~E^SoDNHl`ZY(TQpvMXF!H{Kaays{A^{h!{ynm10t;w9FGbwn(S} zQk^D7D?_Lyst^ctL=CpD)M-9CJs6K3jPps!Wyw$^&KkpPK}-k;7=XZ(WKOcd(RegE z7?zXL4l_>gx!?qxAZptiW7tgVMQ}H(5METv%f%W1Ac7zVoq^3&nkQ*mSlzb}n!-1u ze5?;1XEx-+gWjl23ac%ELPk``37Wns>(NPi`f)Ql8IFcoKQkGV1|(!aLak9{y@TVP zny(?e*!atJy{+8}0!Z7K397#79gH75c<{;NlTmg&N=gZ(G<8x`<*=OK;p6&o6ON90 zgH-2=4Wg3vaUdY=T0Vw=A;h?I82*t<&UAGALV4fSLYuCzQweqLoD&g5Qi_?``;GS- zt!BzxTXSvgLhCJJ(>iL4?B6}#zJ%V_SpxKkwc?dgT4d(qm0|+yBWMwbf+FIauc~Ub zTD8tdZ5qRmACH6p3BWKNJUMup>)w;$NAnM7s};cN-C>lpHNC0nO^1WtU{H>%AM@B3 z)o)aD{A=kwnGBBmMKA3sN)Q#NXu%8^bpPZ3?tY`O>4{Y9p`HfKj{^RzV^za$shC!HW?Heuoz_zelzZ$dhF-aEAnZXD^39w?8`hW z?4NuHQZy>@Ny$au_LI~?e$U;5017d&<+KNu>?EH&a<+iOkuI@sFlEqa5KEhL?!jkEDdZ+tWw^+r7yByU$jDCwE$(}6BO9xU@Gi(jq%Z0$S{X|3}- znNE}5&>lACQ?^MON4h(da~HgWiMRDwEq-jP#?B9t_H&Uz%RZh@$K;Ded&b zp8Rjer#CVCXqu1nJTp0=ZLbkB+sw$c|L8xdv@hFy*i2$F8jMH7em1bKu#JAid2s~C z%ktA|wss-_#E^}l7!L;H;b?p`$_H6nMtcCL$B*UX|K(ux>*YtAdgY{o#9?C7p-KCP z9~_+a(jj6FU|GlVP>>Gwfu1}aEc^#6SU>^2V?8)}dXOLXY=Hw6DdFr$AE@c4y^q&V zFK=s(8GzJgz5dbR;P7xX>WxzDX;y3j2LNCvgGaw{)UWNhuP6OtT=bJ&&%Z?#)AZyY z4w9o^PnXlbTi>kx&BlYWpbX?w=${ORlc$H-Ak~Q`L{!!$<)9cH_UrAOSF*sH7q2(H zzB}s0+=@{WrK$a9U2m54c2O5re=;8T4<-lWJWZ710kA0!(<60|9JtBT=yYB_o|ZWb zG^7mr9dmlzT_WrOsNSJ{@?XZ|Pd)TUI2h)mUY=s1LEUqkS%99&dGMg%wCbJ2^%jed zr-kMW(gcROG)GVS#jti{J?i{qkXw}_Y5+31nS5NT^rQYVeZ2hDs+n&>9SM{LTT=fR z`^O(26vus=8&>x(Z6JUF=qUr^$BO8n|H1(ALavCsA8Jvj)8ZB~%g(`jhd=(}TkzEv-&5 zrNNWr!_s6A`w#!aM>p#^;0g$!56~YTjSn6jj1GFE+?Kb4@Yh=qk(0h2NFOW}N9uUd z|GVlR=X*zqVhY8yHyBUH!-HWyDH#-Cdc>3-ep3C`G}~y>qfvg?@AZ-%Vgd>|K|5yP z@^t+4zcj^Z$c{(Z(V!R=J*(Pggk8B$hHMG|!;hxF&OaG_w3@G*`KAG207goPvtl@& zJbpNyro&A2G+MDJecj^{iW9TNzCZqZ89zN74)fCLg3y5GWB|a0lu#W1c7lVaWQYBe z$K!*{mWq>ZVWFerhlBE$+3fw?5s}quwO+4RtJP|?+HNc7TnJHXrM0T7>$<)&`dPpD zLs2|SlFP(iGS`I7F25P>s)bzyzeEzD;Ei{=bLF=Fw5mVxaw>S_T)y7K&DJ~DIOp;_ z&GURP7)&OUe!s7^ZjF-Y$F-7<05LchocGT8#ycOv*IhD^NNHrPcd`1SF-nL{CC&jS zN?A>c6t^#>BT9_XONezXO%+ioPMDSAHl+2AmVy`{y5L>yeAR>yCB!JQU&BTwQaUl( zTE)nSj1eV*gy2I6(K~Ps$goN@Yi9h;?1cajgA2jM;6(%lkgQ^>2qQy?F1RWNC#VS8 z+HAYsw$*?{B>LL<#tXLPqnVT8g}}U*5F|u!0hD5Gv{Hx|Kw_wacQN`9f)@xvQ80QB-tP{AlxAgE zYsFeAr5F_LnnKC$LQTx1HL)TW(F-YNy>AdkjFBV;S4Fq=z#c7- zVq#`iEKC3~N({bcqe$~EQ@`0ZzG|EcKE@yrfdq(H5wS_MPK;JW03=a@gW!Ge-Z>Yf z4iJEW4Jw^!PBb$H5+6hG-g)n97i)KWTM$5-l3|q5yVXDxMnQ=nK8Dcte9{UvlVVoX zrpMgg%n};$jrXo`!TI2$_#m(gh%=y!QYzJKH4y?6N_{QW+3M!a?BeB@Zx;W@XQTh~ z^YQ=s+r$6*9}gcNW`kUtuv)$TeD(VC^B2#~UOu}%{*Tum{@20LgMS$EhXtk_a}M4G z??dq7y$CWVhK*qa)fUagcf0QXe({ZOwmt>{r9d&UV#U1c!1s(NG3@TI=p{ttL~*JK zg&~NKz6rqzAPOL9MYgS*AQ*%ACVJNd?_BU9`XEtm{rC+ilPb2FH1BGA-G=}KiQd)T zH%;)txex>*LPP>mK&-$k2*?WA5G!U)%!;Byf#^koYg|)1*MuMvLYonMVlSJplg?1$OKKR{{C;+95Hi=e>)z`Y> zS6eW82|joqLgQVieQa(m@K^(DrL@+pnGK_6faoQL#>J+RC`d-JR-{NNA`p~_5+wTI zV^d4h$o>QT)yDw<1P9SO=Njj07eWvp<8DMpLL^pNS)+|+BF#t;u^mHv2qC&g8V5Sn zY&Ey35fD+r{sX>oSUE(+Hqpv3BXZ}7)Y0+7d4Jay+T`ZeHT8C3A;z#TjOv1Sgp0(S z8*`!b0$@|uv8lE9?0pg_#BGNv=MBQdNGZHEz!~#TZl=U6$(f&!Kv;qP|X(ug&_oauv{YE4vKtLg4X=_ao z>}JfntZO8NND>KH0M)xG<3NB&EJ#8TNMYNr+RD-ZND38-DCVdDS_Kqigs`975;GDL zwNv$XBhHbK6(MR8Qc*`RvR4a;$c#wH0#UG?=W|=~ww+oMDbuDX5HKLOC0cj;M?yl@ z5kNQsYC^tyUc0sdV$v3fK!|_`!J_Xd8B!imVJIOgd_5 z>w=>|TlA3H3GQtdMPg_}gGf;X7Kng=jKrGT3r2tnffxx{qY`CqZwmrIqJ2&5wjMU_ z`!gtHQv03{ysOdv)y|2GtQlETWGzu7#8xdpJ8@*EV=ftVCBv9JaKB*jGEuC56H ziBVgMv8}7vp3XN-u-g6%qzF+W0}G&L+Pys{AY?^EBD?j)-L7!g6*VDg*2GbZ#Mr8Z zoofORw}~;|H5?M4VugsrTG&Jp5QNwk0z+cZ1aa@gz=%i$yIzD0h^$GYYA=fH)WWVL zcYDG4?wEkQKX64Hm5H(&KX;On`R(wy8yi^>qGAOsYy@^{fuOZRASR;y;z>JR>307t zqCGO1OSAS4wP04l-VME*W=2xK52O`0^SC<5WFTEO<*8L?^~CA&czsm+oD zk~U?UH4`Jg^8qA9Kx_y|BM>S@yAh^aSm@~Z;k>76;Z`c#RSVwx5Tb}6N{k-FE1I*u zu;x;$Il#86Ler?thSwWz965&)-%$(1pcu85#KgqLJcTUr1WUsgfO&9zgoHU&%EU+< zDaKG$!D!uvLbV}Dw^ph@nqa_oHXsB9qQ1im5AS6AvM?A0vU?@@_E)?AM?wT-P-g!< zcR#b=8z2J^5ojgq{_n;+|G=Fm2Ot9jXt{Ui-$bi4MCh(V_wDWlned%-&%58dyAI4m zeCKA_o&Pr-JR%Ar;oT&Zx0|$Cp~6VQu-hx%`9QlskHQE7z`KR}+YW(%!c4?FVcY)l zzJ~ltGu|Eu0cj>p>b|RwySILK*30&Lz@3~E)&!v5W`WZ>cTZ>EzPAU5q?lN~)&l#6eEV4hWI!ec0s*;=5yE%d39+5i!#8x! zw^!kA9z3G3GNAO=d(oXui2x0;82$CqX>a#>d*34&Fr`XkQifsW9~Wnm{NeS+|Lz%O z+8@zbU*_a0@&1}lXUWOq^7uhNJua!=<`@vR5~;mw-l+|9fA77WtqKvLRdCNuaqm`$ zgp44!U-Y)+8A(vT`}sRp5(tqL-aioC-+}Kx07OzuO5oo8w25VS=N$K!yS={&!SKE7 z>~Ft+-x35M#O({0Z}_^qhuu0)$?h~+-U&{-{rsJtxonrt9jp;UsQP2NyhFDR|2;)T~8D z=2qwI`s(B{#QA>58zz1+(6hIRYo)j&Y~R>ekc{D`iLR{sjZY3u`5TcfX2yzQJ!52_ zTi#yxP*gb9H3#%Lk^TJ9^-rC%$D|H?`6GOZxaS5b$Z_%xN_SgX|3C@9iWJ#@DK>Ee zZ+Om2dsu%A5_g6^pZenFw%jb;v@&;>r}x}Uhm2k9Cg+@7O3DwLj^BSHS=LVSaqc_9 zqG|S_i9-egp_raEb+eaJ7p$Y@?!~o77N1wgn+|fT?X@w9=%6Ph%L`n}y{w7^`^{M0 z+_)8IPL8q!ZZRH7AGsL%g{bK~aA#VFgj!5oGc=vor4ABhWW+s0HRa`p;rt2!av?B( zX>_6TOTwOS4}P22iR~QT(?hrQTzeWhl&UdZl3x;_B!L1RUjNvG$eCDWbR9jL--+}A zQTv5>Qq+sS_|xV6gP$gZY(}#KaVjOy6)y;TR#iWruv|PM6VU=B=#_tWW$STCrtzyp z>IBNw*(nOrF@<6G5^%}>T=!>4)~Kx1jIV(xemp#96v>~OKI@JQi>qF;qHX}aeic9L zvYT6ssvDP=0-_H=%5x?B z!zj&OYS5)ECy!&Gfm~%PL5GiNTVl zmZ4A1L(8<1Te@de6%qc&o(R@OAX77y(fmD#ZaZ!>>QPo$4%9fj^WlmQmzzJIyK!BXJ0=X(xBrZ*)ArD?V{|@u-%e{Zk&;ADae@lR#=qZWPg%~*G7$G2 z`5YO|@=o}4I5&|Rc$TtHx0U>_ZPtz4myx&_Yvp@-8w;px=4n-DO7&w-0c-d;n%n0c zYUgs6kb1k3LEURFR)?qtbqEiY{z}LsveBL;e-}W)v@ml5%_n+BUxeY%kG1pm={c^{ z7(mPt?dPOkrToN-`G3En2m7SN0F&k?;^MLQZ0j$SbXqAJbEi-9Iomn525g@NqVSMz zxD-09QI{N1{NECk5@Q1Jxdwpr$J(g0$X_ty0man9Ly&&i-nM=r_Y|^{=?^LviCi&; zh_M>xp?k2Y@t{wRYck zfoQ0b-)idoZPf_g4EY_zTqYyF-vHEalhPt`5ediT1x(ZZP+yWMv85YPoH!UHDsSwoArZFx9*@)Jd3f`I! z%!P#^N6<@9huwRlg)w#5m0WXJbXCg;dLx@#Tg7<7fFkYGvJAr*28Cy+fMW> z=hKn}QGWqId4j?WXSLHnvQmjeB~eqA(XA;m*Z>+PD(MW+n`4%iaLj=3q-4$B#36Z@a`J86TfpnSRAle z6L(tLh>#tG(7-~BoCLgnkL~*+%^>n8&@wJf%CCwu`)^@yGXBc0BUw(24hCt?@xB0%mq2U=HA*dvxW*9< zne*0wi$4xuQU((Mw6k?Ur3IeI&=%iZ5ZVO9)yXuxc$T={uRpaR#8fLkErBBAocDHBIlUg(Xq{tye=RgD*Va}ofur@4 z70u&$Cz_%Jk^Bk?+zcv!NE8xlP6(#alEZZMD;JrHaSxY9qFLOvN_|ruu}Uj$CHXvt z)HI2_AElW8#|4;;@;>5s=^&tD7TRCxHvr%O^3DET=C>8M(N)nai5vX56)z+Z>5XsR zEpZG)(#x~$I4BUWJ5HPi-x6qnvf+GAl5Jb*+Ou7E4m^Xdwdw0-} zh$g5DKBmdk+|^`)F>l?ok>6ZQEe{0F`5onT5DU#4lx0A!br>H4E73ks-yh9t%APGr-V6e1GinjN2AzW8w94@ANxJdbo1bSFtoAMBG$m|v6+ zdhr6@spnj}G~QoG0*boEWMxtT^=wbcxB2fR0myNL`eEbQ*>xt5$9GEyM^{5m79W+d zMVRI2$no4g+uCk7SA|vr|MrC)))Q?oRb_VQRdZA=eXfhxqr1ind;>uKD0iHQV&=;-HwQ0Ac5SA6H0U*5_J#Pch^kdo+~@5cn7YWVyv&X*aU z7v~%J72H`xB7@3={9yo-0F725N{6XATp@5GoE8(G3+M!r`3?5kL4MOT=L72WFejDR z>T>mDOXPCCM#krAihH;pUqPG#2SAZ22%O~=N5hMLpTvxobM;8%hUNG9QJh8lYg;CD2%sRq&gGfp%9{qgA=%f ztMTP!?FTNopAm`UG9yvA@M%IBQH2+03^5A=b)h$R&o`5WkLFhnX)sHDQOfKTxvwv8 zFEd=a^Fq(yuqu{!sekIlJwV>%zkhq&?+0Dqoo^Mc&b)~&c{mmLifne%r|{oCM;xg~ z58`HMS!|zES(#IgMFRjdX)19Mrqk(_7~vc7OnlOnF_el0-DKvjK+wV-X^{pDrA~jp z6JD_4R#+u=b&>w$GhZpYcRj zzS)^F(IS=J>vp0Z#GD#=`b-z*)@=E0#}H^i*MMXfDtdlBZq-9^w5Y6em}G` zm|91NNSZ=Ts>BCsDa=H!5rT*40qs?Z2cl_*%x0HL6-21uO#eVo>LQ2J)x<$m2APMZ4o@Do zWB9!ZruPor!hs>z9nbD}4|m(Ys9IusUMCKvPn&6V*qU&}APA}Nt{HG7YbTIzY4y_&Q5EcWdj6C5}E|L$LI+fK){ah!*wFgKD7;$&9YS%GLLEz^^VwS2}*?dAsf^NZb0gs3$3 zv%~=4v0l+J%iAcBk0Z|d*xEvnOg+bU24{&2_Pq_CijAXXDJPsBB=m?ks98l{L@IEQqpA*6n39nq2L z`}4)`yFu%_n=x|`-_i($JzB}7p)at+j}&^a|8VtJt;e*Mk_}xA(R}IbYvJ4!oTEx9L#Th3i7t36Pugih9*HZ= zDY6hJ@2$7>rSe72G`@_JC-E{TecP+%&Xk(gnoWuz%s=m9004Y^w?aVTJypNR{j&cc zCSdi2oI^Gzh+O4uB9FVR3lGtjqG644jvoHy`keQ-g8;EYxQ?;i-TU8ZK@dBg?1QD; zrKNq4Z@xYn*N`41VY)9L}niSywk=p=>JpAij zSva!9yN=~ArSHDD_lwW^!*5C^&Rv2%g6&vz>vG#&jNE8qn9S?$g}dce-U5LddSvPb z*P&ST*|XwQE|F;#xMHo#3z?2NL;j=@DZrj8MuczE+?Jbg=rmotDBx9;(Xpygse$k} zY+vJ%1Un{EtcVNuO-&>0tfiMjiLLnuN(+*LZ+b4G%Wym|!Rryk{n)d-J-M@(3Wm7* znj6UCwS##Jy4za>A!6CFBO;$lty0SNhEZz?Q4hw8pV7MC~+6XnYd#Ff8x z=`T>~5~(INv(o3ldzRM(6_BPp%Fx8$pqOKj>Co8n6%<8I89o_KvUIJ!#!*Hi*o zA+8&*wiY_)pyAw-M0$2#AX~kpXRVc+sra#sToWydviE*@!EvWjWXG}8VKrdwCjw+iJnE0t0`uy|sZK~(}n&yhrU0tfz_I+Z0E%_ZstL7F{q2R%O$X5NK>&7KRp z1cE>QX>WWu4z4tRONIwd?qzZth+rtRmKu3*5Saj#NR(*fkXFd%S|Ii; z&Z+vP3EEr*Nazai=CCkf6y6ZgJd0+sr- z+T-4CTm*E5vG8t!>b;u%zbrL32$6&;-Q01R{4 zwdQH5&{#L}42F6iqBU%)%v#%*q4ph>VC$;nnP@jNu?>@7W1Oj)oNDSys)O-_jH-Ep zXM}fK-_UNtxa64m65leFRlhC|&-a{{JaPKKZf*75ZOmRyQCgi&&kfcV8y0PeX6CmZ zo7v+I6Ld`El5;F0(!hqGE2U|2D{~lP&u>IBeteyk=rZChX2T&`89mH}o`A;`79I16 z=!LJtpP#5x(gd3O?|(q9J8F;Gq4qiLwL&|27v`(}AhTPph`w-pNn7KF$@#tO+C>*- z1I)mNI1ZD7E<{UMA#o~yBpQMj({J`GUA)&mOWl3m)+CncnwxI5Rb=Nb>4bFK=zA5XCs zO|T*TkzxF1b#vqcvYoae=|SZxzwyG2vzmNX(zsaF@yUg#YrZEQliD_|ej-EDo|o9G zyM$ClIdQ)p|JDCD1C``2NqXj4;Nz#aQ!i{HrgW*@aT&!I8o$VcC7oDCkB+WEdnMMi~+w?uJ zEYt)b)z1hNuw+-o%%zK`-pN?-G$jjK6iOL&`L7AarXRCo(|5FSqJ$bNeBj*qEhzhZ zjXO&xK&;{B=I*ibo8#Qgvc``G8M$;jA4;{QEj@*p%S{&VRP1*W&f58F;FSepGI=kG zKrN0u>-fVTjMRln9`_Bp?tfobanzmoEUW~Xu5PuB zM(ET3?QW7T1D`J=o zgE7o5=5o?v6`YeHR+Ibh0kzHS5)v_Gmk@0n14n=iJtj$SSQQdCGINQDb)cj zK$L`#a^Z5A5$&K?*tXBXk`Gjt(Wqn&FPT?h=9a@M&OqWZV{Mnz6GXYbbsG}4P5JTS zWDdF0RS{Vp@NMh^%{P8%E;VYh%m5dxV#irjyp5Y&8h!}lnG3AA$XS>ftE!&K= z!7<*pdLSfo`qt^`{Kr=M-kn8rTxl%R)R*h2+mNbA)gJ{POf_bnn?^d2AMsm#rT zF+@xI7GHtg`xsQHsXq-8sdH6>bGHv3pPY4wRP=ctaBqcNW`3{bKGLw&aN%LTGCeEJ zFU+;(X#O4+m=?Q>i&T=MteflP-P3IXUpqSS9ptYu2&2sRB*{Bt$S%oIGn~$o#iQ%t zcw~P&vu5tyVp=1h52^6Vwt3M#JAR@UmKRuniR?-q6uP(+-ed+ja-7XpfmY1S{axFi z$gaxmsP=)9VQZV|bACJ%&1q>`FU$qmiV`Sm$||l2*mtj=tlNN>GOWMD!Z^&+Nlw;} zXN|Y=(4+=-Kc?*8>G#-ayk(reX)Uq?fxx!H#;=bTZd!6%s+_#-d}J{)=r&Z@^K{uc zgnvl{Hy4rdsASIHdp+|T2Iu>hr-(2F2Hmg+`{wJ&&O*B0P`+T`7J84(?LdpZ!AqZr z|2HkHez@V6=1uH_Sl6TUDEs#1Dm{IphS{f$;O+SD*H_oM&)tMOpgC}au16L6k=WyYF! zY9}`8t?4p(KYD1FsQ(}Ln zSS)?becGOQI(Et4&aD2|g}wCDDXv}^#Mtnj88Z_gs8KKz%aNbkxjqKoUNyz@1c94%`~ zqzg!xys(R96qwf(v#@ixmZ?Fvy^mgcy;KLll!C8ALYDdN^I_9E%vD5t!n+3AZ2gfWCAPPB(8aK$0Qyq(L9s~Hz7!lq8+je4!T}~fuxBbYS7UP5{kmYhM zp$c6Y#VC#xrqoD^o0d21x{OU%C9S+|S)g%XDkgntX>d%9baJR~WRp@7PazeMslX&3 z+0PwW{3b4#`t`nvw{`l_MR3+}LhuTy*()!SY3eEgb@v@%ftNDB>1^K(msecRJ-J-i zJYGMWTy^6pB-(lfW;^S~)>f}nHq!&r8uS9KIV*mD*eS^Km&knSy-+^5ZF6DMw3g9f zJgD>|(RXBQ&cU=idM>F6W=)Q4$lI(z^TvsM+C6c+c@?SxWnWmR@~z4hIPk6d&Qjy6 zUlPY-m+#!?(`omT1!ge0OZG*@h_6va9}F(g_1EAFu5g0$8mF13wTY&jvsAS=@^w9} z8^HAIM?dTE>FXZP&LKQvdu?Sd_u$e7?6phe4r4h8`2AW>9X<00So<<9%!+8RL0znB z#ip>%mA`JG!x$p2U7gyTt*=q5Yv0Y0e}II96MbJ>>Agm4cW_a`$VL77jdQwd!kj~J zV5o0X*NRnD=UV1F8r(Gfc>@#XlFq1$PePm#2Mq9qmHVUIt1Bx0XicOKQ5W;RdjZ~d z35~7}n^A;93GMZGUp#m}x(XQLdcSjjd0sGr`>TojH)@t|_54`$AHd(Rja_E$FOSEhe+=K zMuTpY++cdMpS$;SJDF!29U6y-RrwHC8aN*MQ{t;r_21A{zH*rDc$_#{08gxpH9XGc zDQvb;ePh!@gMwAcXN{o-HOI%Ut~xCp`!2d<&RBq{{__G`wvD*%*gQ;AWC8|EaedbO ze^S*4s!0xYHqq8{7DT};SyKYli`+=Mp1Rf6iepi-G2-K~-v#WobP|DXj}s!hZj zz`5TfC>#^e$HWP6WrBsFQFkGs9;|W&NWCh{*ECDy8(nV3?;x>Y(XrheOpFab*IW6i zpI$Sw;_DmQ&5k_E_#Rm!ch0#)c>x4wuF)=Y9&GrWb##08dF1L7_F&P`eYKMA-cd(K z?(ggFQZMC4L}Nbhs*HU}u&S@hPD=$Zd!t~o)X9%FC)R*=3*joCsw>1NpFmrDW9Pb; z1=@Gn)TO_ngCm&@-aGml-q4g};Vh4#M>}7+&8#*IAA){ymHHS4;{LiFnMPX?0bhX) zj&wU#I#yg=*4Ij_f?HgZO7K8MN4?t1yR|&|7D?m_#(B4#rZISY7AxNRZ9QtPwI|0_ z9V)W!GM(-SMT@FL@Gpa%jM0kGz^QMSaIX4N@g-Ic$6sR9*Vg|7ztHyt&D3a8y>C~}~CDhoNaGwsI?j&C)+ zcr=s?*{sV6LOGxQy7-%`<6swYv2e6>Of1|;`O(JzXiLnv%#+Jp2?%Tr4!j=@46_m!n|kg+|dxz4N`GQH{tNqu>$Wm5D3p@96NTvfq1(JuQN`_nqXjF~^`Pey6pp^%W9rsfO* zCv4er`P@Cne^=FC4_6omM)r8BZbnqO?#$yP&5RFM3=$ikOc7o>2ktA zj?H}N`O-n~6EAHX`3e94j}? zR*I5?C+u^rb5rmd5n4|FjUn00nF6{;JP4&er8ygy8i1Axz}oWqn?cQ9E_+q&G+Jx# zv{u<}e^CxIeU|Kc+U)QnZoa=Trj*0N+!HRzbF5(t$SpTEBIY_O5EIYt`I{KckF!<` z%lQsnqr7Dp%iV9k1-I(#*iq1_iZ~ZT**#^iY2do4hq+}~aXQgA?aqxI8eDpWay9)0cd?-8J*qHT^EPp>fNYLR$2eeR6l`p|S}jLe5>8+0{K2{UZD6kTyP9~3Y&BEZ-HAy( z$OBIKw{zLGBRKxPT)8L2@QG#d^1bjm>N#IT^>~1Eb|6os2Ms_j-AYiXrr2>Q6^7 zIj3tsRw1VHK#%a(t$&t~>cj9qXCX?$B}$RB@ziFgB-!_h($ru5%)BP|!lyr)@8mU+ zP(s3+@T!AvpWHQ<^qp(atMaE+9j8XG^N$R47ofT$LOVu!w)rT1tvd6&FNtG(3`CqM z-p!Lx#(ss1|I)LfHp4P-@cg-(=js$iU+kd>6x`{iYIdIGRav-+G}vudbyQ*AdXO)T z-h=KnBI*&yvU^QpcwPFx(bkEk@85f-M#cdFd5wO5ow&NW<*p2_D(jkI9sF#K9YLX_ z@DQv$0T*Ka4mIcfOHdQ_KI`aD`Nl@teVgs)H5rrwe1b9lt9lkL&$&Uk=ldzkf7+)U4!l1=K?y=fr!S z>Z)9ytReP7j*8Us92O^{l*41PqA#XgYW)Lpy8_aJ|Mr-6``w-2&0Y9kIz?TiPMvUc z<)MQYZM2S$=NDW}Lyey|F7RNJrVrVn0e5OW!I`O~Tv(UEMaS0*uC>n(6S{?P0atkS z{E3bl$sh5@EUauyKvhyz^_XML?D{o}&h=nZ)7R(Qn*_KqPzhSz_V~BwDTSkHC0E5W z{rDw$$DS-{%;xTs|LN9a<@0yPwGY#~9&LWYq1QnH{`ePAVDM7+o$K7eBs^ok5D`io zC$BJW)lSD`PxW=(fkPlv zL%9AIox+3Td@Ed7;-v!(O6%m@W&3%#+ufhTyDBx(o`UP1g3G0&+{34d=Oq{4=im;* zn=6|%e$uoVON@7RI5pm2*K?za+|dq|x&mXi=VL08!ihE7%A)R`=h>ds$1^okCzqUs z7JWgu>7&+LdBwv|$X97JVN~runZKCP;!k^AE18J)oD1=F1QyPyoO9+o zO=UL+LaL7`MpzjbQTN(0s|nxz`uBZH4xi)p@)ASFV9#d@90gDNONZ&7pRA^{Ul}`N zBZWeCXWFV<6TI%PYyCPJ`N+tG?hfbfYGYXtVO=(_i=z|X&Js8b6K+H`&iCa%d86wHZ-dEsFyuLA>OEg z$z`4ue2xom+6(MSkvM6}_;b9vATHkuaSJM=fHVUs^_sy`QqqEXbeK^ObN1@eDIe*6 z0-0o$X8w;0;Be1UgE%+)_Q2PVu5-aT>tF8$Ojo;qoXCir?B^^5Oi$O!TL?vm%~SwM zXHWY>-N_!;?h?MvF7c|iz7VWzOc);YTZR3ut`$Ld26xB_%k~-^8!7zY#a;EnJ=~9Y z+<(|=LTHnq728;pHzdeUcr`El-0jAn`lbrbJRV!l)W@MuvdQmJ-cGO*GgSROmL{+@ zZW~e0156$7Xlhy!g@fI-n#d)5bC||bJ%)rzqVTN{{oVvgBRu=aYsI@@e~&VxszZ5tfLYVZ)k~Ftlc6!g_r-$Z+IEr)R7UjnCJVSnn~-Q^D+M z2Nvdc1qkOSmh>{B)*ulwZZ3^;fCHz3VO8a9H}*LKH<^Bct#$kd472NNVr|_?h>QMB zA11Y>y-WB_o2w3z^1G8~Z3@&Frmf{m8DMuA$71ubF4Qf~kZ0Ns*Xtk3|6pa0W?gAbG<$#QG3i+roS ziedAdwT&@}aPhM1IB>;rDn@8Wi<`hgC|*OfOZfSIOwBZrw25Ak`c%|SIGOQEkW5W? z*1soBWqw|t*`Q*)=s6Vi`_~-cC=+p_=MYm#R0EAhz9&1X?eExHR2fv6e$34btf6m3 zy=29Sv*wmCA>TZFC19ws--p@*e&g)iTrY^>T62d<7Hl&9$Jzw%9~t4Dc<+uUOZUY! zOnhMs>~VZ6}*UWPcgd~D#zr@I-zv{d69F| z%44p0=l%I)UC+bstE;00`x}*I;sX|ref#ItX6MD-O2RJMRZL`jOC07?Cm*us{k?~i zNfVU_ciMLZwC>||5A>>Xu}caq-fZ=V9pkO)nIs#12K(>S{E2}-OX+*AlVWY4Bnw3{ zT1EAikj~dB`f5g|-ciu@1@B_;bo-ZGy-$?d`NB1nuTbaM4v@IvOz$jm(BpZJSIXFH8Re?EW->xy2 zZ9%sJn!44 ziO?6iy*%8SJzEmR^?#X%FTQa`PYExa6#n?O5K<|i)Mg^&*y>4B#$(#Jr#DbnF!X$| zMG_z4{|Cn%*j`rQ@Q3mIkr1rh^-wJF|P>K6Kz{dK)t{nk4^8f=yJFKhzf6-wj{ND+~`mh8vk$c)(II94JL) zmccD2B&#&RC4K~g1I(yMz@f!Z004lBD?4oDY-Dpa-xjz@Fe=oCRWbsaTQ+cvJ(n_G z&{V3qs(%%lWI!Fo4I{J0P1W0J=0bpCfdFiYP`e`mtDm1KwJo*tGp%(p?{imN zWp*gbo0m3XM@o$={zZ%Xu*W1;7(1Jmkw{&vfa+0*Me~lCEOfjw%wcbD&fL6Uo4A|Gjl&D9LYhVW>ikL=7N8HfmIwi~hFqm2vo{DnVtMH3* zr$D!0mEit`8ApNjh89>r6(yQ{$h1#hp6Q_!+3>xAe7%ko{fYO(he1fC@7C4_+|3bRhf7${SN80@>H0XDpDVk(ok8d zCOU5%1+g62+}pCG*Yr;*;w7P;dS%*LH^wXavosE{Jei@k(!>`N%JgQ5p0ryJLA<&7 zYG15r<-~};;_v*I$Wxqf zy*SDyX4rkth?!bKNJJUQk(y?X^%f!M0hEvcL?{5#fb=H<;jygFsMMH5SaebDL#T{- zFU;ow$p8Whe)?qUPkkxdi$XR?Q~2l^v~MCmvkQ@!QwSo*Nr0?-LBQX@*T3#TCxwlj z*$?JPPbXRln)#bcDm)+E;l~l_s$&DF_IxZ17 zBy=(0=7)rjKcX%|hnmb0`|_PP=M|et(xnOP{p^wvu5dX7ip1OS8Yq5}&WB}}i zis!I%S!o`gEJ^B!=TMsdVIl@#wa44y7=e2;YPx= z7xF*6x{c&!LHZq*6W2+q@IzApF+uc1!Sg3Qyvi^FDKfgeca*e2yZBTjUz3Xh$IJWx zR3uXwGn-J%;cX9zh`2~UYCj5Dvi2bWe(y$Vn!qP3p?bi8kf?*uW}eW{u7=>Y|FfeY zHZlOi?ln2ekls!rN`N+X2U1S=A%M&!>qh$!x!ylf@3!7szhPH zhzweShzx4U2)w@6b@({*lp+;*T(E07X6I(8PGn>XL&@U{x5J=6lxOe6@Ce!{q7hhV z((}gM$W8__wO;)^O@oQW7E|&UrewzAOVt>Ke~S0+zZuV(baABn&!*COn$Ha#ncqa= zexJY?cpc5=jj@ky@rrt%MsEWJVumkv${nniBf9?V8^>8a$b=-!DjM_ZQx;GPtN6qk zrFeMs`&2zDNpcBJipXQla`b(H0YHE?lvPr;VdMIjQ<#HeZqoPEB6(nH5#KS_T3hYG z<`cDMKxgDFN)FOAjve<6?YnE=%}$qP75hU6;)jiZa}V-PiuVjmco&HCZMoLyrIJ8R z4LJ^&#QJSh$C~vuwAqS2NC>}V>5#QMkGhWa?Ex#WCE1Il2BrBqhi^;GTF-zGIj`jM z)3nKFp;MJSUTY&>^YT2kYBknna<8&|>8uLl(fHIG{F~QX6l7>pArIYj$i*XqlD~8= z%8B-1=#o0@(3*tk_o$jHS_?T)yQ)Ukc3!%UNVus74d%}GGHamWj*_J^{Gi-EVP+1A z=_Li19m~qmO5-RuIHS}dm<|R0vfmxpH{#0^N*bN4Pm99wK`!BJ$;(IVeA>^hp{}?p zfR<%apy0$m%RQK)>CxW|AiSe=;8E7z=rW5tM9K7$RRad8<@npqn!rEiUWlfIuJJ2H zuAAzP;?0hX`k01RiG+PwwWb-FU^BE<8B+7oUWX)>lJggf8yQVtj3G92G_o;@4gzigP=vgv46^<4G;$X5?6yL(dv<2R2~-lV=2TZ= zhDgi5_}#*oyJ0!`{F?HKxDRg&4gIrc|F@QXH>wEsr2 z{7wmV8Vx;;c&+?;h)kvQ0x`JBMD4J{6VH#NK29ql%&f1u2xsnF``#?UHJVh~WCGtB z{1ETSc_X&C$b)uhY-#D%0qKj~B25<-s%PAGq{!y;wdglA!OG}J?gG^zZ!UI&{I}HO z0pB#Tr;fDqw=p2^^^rQ$`-Mh9oak}lifroGi5dVK-nzF9E$ngUjVoRNOiC2<0EhRp z#Kz!E|7^+;_6rSn=2XujA|Ri{rcp6uUl=T4Y_cefJ^}cIZrtty*8zu2$x2oZ@z7pA znu%i3f&5)a{6tZ0G-9~1(g*GQxdMf$2;b4>Xa_PuGfPA^7WyxuEIOY*;UB_T$%{N| z8~L@`tM;=f%|1)0^{F2jS$A|+jj_0%Q{3nm*-8=xlnh+Zrs)4b!~f~_wL+r^a*QZs z;D-qt>pJvQyu9yZZB*4BIPKAZ0JIe-2WMQ7=VN3%NPuL+=}mvm2WfwMA{Eq9!}p=% z3aR*1QL$2-s%jP+|DkNWA+?C4AQ^yQy0yDE&(9kug;N(f_E7?%s5eAB$i(54eWI+Z zXB^9)LRwqJbGp@0Ri_Do3UMfQ!c*uOa&U}E&u&)~cuWBn{jJpdav{D9y@3=6^kGny z-j73r6>Xy4yVlFbcG=JkF!BKhlR#-o*ftT-ZlaO}c2{Bmn#m7U=R5^Ovd(1Tl*k_%s}iS9`iv;1rxkB?Ypy!nvwLI|ZvwXK-p|+^ z)vk4{vE5(9S>aF8qe7!un%W&Z6*qY{2(d;I4}{B-Dh!;6{n9R_Qh55AW_sq|-Tmif z7+a)eBpKxGi2$r3`@XVWXdH82Vk@?>yhI5K1}0ug6IRNP(bN1Bsxf4|HO^JsyzpU~ zOKPn8gK3a9`n$=yf(y|dfBti2ru<3BFyGgl;y1ge)7V(+;tlto4E*4{CxCpqUlc6K zY!ddDu+N6E$o7d*2=&?@Q!#Mw*I}=Mw4;G3n=t9ZIbS{$+Ec*d>if#2Ah@=*)`E($ z)A@=@mE4-ujM|twK?EvmE4tGP*}VR=$?BEcAOQB&2ykOUb4ZdB{fQS!I-e=7(MaKTK4ZP zm*m8Hq(0MQVp^a8WfxqECYK*If)N@TN~$$#bdukh&k-#crNRPt2WM~yCv)r1$IJcq z_*>iul_^vE<<)Fw{-^{fwA`^rjw=guWcB&se{6`Q#E@nE;sc!>^@0puBJ@+gFQ@va zN=HBDGwYrl=j5XB)9-IB35w>bF=i)NVeb?iluzqs2SJW~=EAMCk?iByO*ut&lCSxi zlW+)72!~LH@;H(SpTr3%!n}3#jjQHAU3Rwxcb!Y#erhw?&u72x0C%rJSNN+JY2#s& zU#I7I75WzsDw(c7;_K8->{q`1v&~?qV*Sppje9VO9qPLhp!=iE0B%W0~u`&nf89MVecSPnO0Y zDbQCyvfq3J(v*RrV^pf-loE5S~NvWGPN)=eW*{bKV;|DFd084Xib`s>-~#x=Jo zEHga%MQLqDR=xB?{|0gRT&+0ttn9SRJzg0KmHP~^R+9WRAk%Nc>e3s~Rm)a`Wi?q* z#zi@N5DRb@rBvG~2?YDD)CpTQ>SQ}tUCjWBQOo;Uw3^e9a5PjSHTaDAb@jhCeqY%? zJwBfFz0d6$c!jrm+3zzSHuEzTls$I0d-!|*a4(K67?(^tN;Bh^=v0~GfmpEPaqfyX z1yNi#8pJo)#HXY`sq>cglX#)2vC;StX$f`s8&9jo5mTe}RAbMQHqf?yk`@qG^wbT%h;@1o;Iia#c z^GbAd9wsHBO-kDc4W(oo1$a9MvpB;8Cg`51DTV2dn*aLaTAo{sG`!8OcoBQ82#B;$!Jyli(-5JOWp7K)#2iyPu-??+?cbsJ6;~ z{*}nB#3UJUYNjXw#4<;~oNr!@*Cl(Z-TE!Q@XXMZ0x+d0xKSooZh3qiZ8XikGB1Qf zeU}{A_L5{$aDL&xl+$XSjgv9B8#;v^j;)y+28SfUo%Sx^CSo`PiA5!%MZ?IW|AI|| zXBr_P4ja=L_Drl9*7^%cnxk#zwPDoFI=XgR`%qk8To3FQ;gqo(+b7?`Z{*&>{XgHl z_wx$FOl+0tXF}ye!e+;ETKd8t!!sf1aU8`-DbGxu!E%1D;6u5PC>TN2344hvALPn- z3PQ&Svx__UF!7m2E+wx3<*yYJ2ap~Q!arn3lT&VAN+d0{8oLRDMB5`A0L!#Y~gx$bGmqdpX=Z3=X1AxgiX6tdYP5?$n4)@EmL9%T9TGVUKd!F|1Zp+(f z<3gyEA;Vo>WJ+wbDkWMqqTW|Wbg)XZ78M!F4Fh98@*n{D5YN}5-s$EAzhl9Y*xC)g z`Td~rBk|km(B75p(-jOrKQ!Op0Zt1=X!r7Ie%ft_-17L`W$1L=F>|JiGqck_{8(E1 ze9J`miqB-of#>$!dB$yq{U>OLtmV6l41ws1H!0H3OD_~q>Q#t3{6zwKO8CFaU-Som zu=QOh3C%*G6ks{}{1|ywI11r_8=|imhK|#*F&qqSRwM_ot%nA5{sr+51v|u)Q_S;G zznC_B@!M%vI8mm!+&vu46xJ~`WHEdln6DU#{tC58W6fEhlGv%zqEo)W$LF+G z?eRT`PUq%EIN-A~GZhIOUThH`HgieH5dwXx_h(6Qp)cqs8g<=7KWTQvhK=C=cW2&+&)ukr#DK>mqsy#ndjAid0$p+E6u6et7iXeSM>&li z7Ix43WB9=5;VGmkYzGnCTXv1G1eq3;H^GsZ&F6%n?glw6L0Z9IjFnOTqW(qQa~U}5 zDQUjYHvBj@KQ3T(r}-BG-%mp`15qaR$5GbMaG4}9%epR{KO8Q_2LnvLa}jbKeE=rZ zc6OjDEW5ubl{X=p^?pPl`R&~+xlf}?GF7@|DgoCjPL3aay5}0UQr7K8gafemMN1In`|V$8s#_7_n1MHC}e|u=6GCYa8@N|m_Bt7H5AGLuK-a> zoxPh9o7obj6W%5f?G<=BuJyy1}ldy4)Q$4%%;%#r$7w&5H3kdM$)um?t4uJMb zUp{Abd#UMkY4K{69A_4s^|4zpLx8Tk&x45pl-|F>RI1Ly1305n?e8l8zWnCDlLUE> zAH4@jrfnMT(j=eII z$l8sQvOKKyzNY5{aN^KJ;sI0@F89NV& zh~dH<{VnbFdcxozfT?^$o%NLxM~WS#m*KiKX5h&EPAxh^IJW&%%r3)$#w@+ux?1$LIRZO!BKwn8(V?kN>R`Twi<}T_zg`{>|8yiSNo27{L3z z`5WoTg?AI)WV5>pySo(cYcFfm+Thci4KFBkeu&*-D zvQ;1waM&#Zxin;f`hEQQaA!oua)(JWltZPRO4uZElkgDgg%fG^-8w8n;YR^I#D!g! z$Z?W#+i246J);*tMoO#H@kGu@NZV-MF%r2CqA7?{zNEpNQ%LWpRsK0VXBxmNS_`!0 zm!OfG?~&By+=Eb1BeI&2yB)~=*>dr-)#8H; zRV?|J=W4&A1dKl%lV_90K|ozi&mVJyg8f4ufctYf{_9EoIE1yP!z%Yp zM8Px8`NCyR?C_vH5vyUlvv8-~bIO!&?ChSiBxV{wZwxBj3E-vNjXTOh)8Zis1i{ZL zm6ggr$pp?Ey{njU-P3sWN+O&DjQ`By`K2S;jsdZ<;IDu zMQ6IVg_F+gB&28^bZdvC15tTua=kI4lS=nHHwSNHm#6rACrWQT(*V^ZkJD6>hLRov7i~p||fK9j-Xp!dz*M$^b*heS342?Eb3R0cf>60~3EJ)F^?cLZS3NdfBk!XhRX??h;gvWS0tW%Hf)bRs6OC@=*9s+4 zk-UW!uc)K6`Dysa$=}xKk3^%$&>DsdD~YXSXo83c088$QC5Yc3wZ7U2`~eZ+*}{5z zKUoMAK<32-%*Pw#e$OYbfyZKL@T?F82u9RSD_4wfVc%uQD<-)IRFhaFq*CL6AU^K4 zPVk}e&F0cvmqh^s@QZ|;ggQJtLBkRO`H)(9#xaA`lPd@<2uMvhIGh_heyBAd{Wd#4 zSE^2)d1f*r*6q0@be!h-2OOp3*goTXmHTNX`slD%xbM_?Y2sho2qhxB;MbzutY=$s zzn;dVK%cDJ24-XdpT+r0S?}-5XYg9S$zo*t077vzaaGx`D(zYRN&ZQ~X=F+#QMJbhawUGhA}WYFfeBGHCLz=ODcR-u5RD_LdjJQUrUEE;sjsDZwLxu;DutC?fLfQ zE}W`?`+SWw=KpINiGP^kf}{w*sNZp)tWI-FpP6T;C_M(Wu@_qH691LxE|mrI%?I22 zp=LU^O*gvL<8_9Y{~R^dP`4QI;ns~wk&~~KW|+pof&a2u0>B1z=HuPr_RBPH-Z?wp zYq){e8!$d?%SU2ld!vmEQ}}FJZ~o|EU9ixJ0B~99{0D;I%szT8Jazq&;@~7rE$7@P z(C= z72F?oxoz74rE%D_dA(h-;Bmqtoa|=%^LRS8NgRf0|mB2yTHl)PG9P73SDV$#MkWSol+k>c;`Gs@OA5@x^FioXKRb2+Supnn-=YY$- zqtv(iF{_^Rm_;Am^u)K@#KgD1i35(DuJK_?wdf}i$(jlcGa2%jr^k6w6~Ps-7kS<% zo!8sJ+<$Yw@X%K!$Kgt6fWzcFulsxsf;|BdIK)vnJ)do|P}hCg*1e|@8%=0s{FJur z$+G~E;QQvAX0$wTx;&Y${Ovr@_x$Z4Gb9KJm$xPmH9N{^ETK}^sjblCW_tcXp5gvt z_tW%mFMm`}<2J3Y1WqJ~T++F?#R3eMWF5zy$R6Dask}Gr#03;-yP0O}^lc8VZf1Eb z2v}v$1)OX_5$xrT{I#KGELyL z?rR4F?06VBx#9A|5TSl$(kYa)U?<9MZsGY>%UUqm?wW;BGg&yF=%4PTikg+s;7TTD zg{&&C=3R?E>8i>D{{AI#y1VSby}Bt%eBv4%N2Q2Gl;&3sqIW<@7=3LLiDjQka3;Xx z(hfv@ zSHRnK_A%p=h7_C)}numjmCu^p-Y@Rde{f{GyW^uG)lS>S-yl#aS! zsvi?pz60-nMPdHH^pyJr>ad6p;})FXM(XsBs`T^ylb`cRDOcxF5LRHA}=)>c|Qz6!I&=k?fNSG($i=z!HR%WuUD5bCf8PupNr2z6>e`jhbsi`S6d(k@O zXI|Est<06ca53Ua&=TV!#^`y^(N*6Uo@j0OWC2fKj+RMB{yzSxJ_@v>WYT$f3M$kd$(S z`tzym+Z@Fn4z@9lq{gC$2Fy|{Y+@pJyk-qD4h^cZF)`ymf+K;HG#AYgD1ZK800=(H zan!x$7`o{VI5!A_DS-Z%)qwGidX9f>UVR=)I2LQw3ae^;aPxd+;dj26zn}?ssN$Vt;Gl+LP4Lix~ z-Oksg-&k$6*zHcBXU@V0mGtBMt==OZSWTPsWSzLr7ICc7F`1~mtNdLh3|{4 ztegSD66AhN?0v26Qop~>OV=1wB?HoiDw$`jI2=^r;}FJ2Zn)5G?&lA5nYAhH(0={t z0?cy^zYRYNjSa;c1SciQ~_NF0-r3aDGmJUaQ@V>Z`y zxotq+KWT5`j)IzCaiQL5mapIXK8Z1zelL?bti1g5#0t@{Wa7!Q$XfQjV(NV(8RXs} z<6dv4`tnvp_9~@e*b{wR56}BPGkI}Z6QSpL7+ z-;+I{%fsV6Dp_SOqP6K0So9+Z4r1eAmMcLi{rZy#9|iR%5%sh7od$T51czoag+FKZ z@m==D<`4ls4P~Mlbx~+R8Jf(=k~5JBkvt3!*d%G<7?r$9EVki?>eRV575h%XKE6MU zP@YI1zcz%CmV`ZDZPfQ5iz%v~z%0f_7%kR!>t8fglOF+n(5K;Pk(r|M(F(z`Q>Y3q zjaa1BEn5U!ga+(!38P%NnUU`#`V|^9ELPY0Ka&BQjt>{uwc>YX@fk(11(kJ8iPd?% zZmL~3juS(bK`lJnsCfth<^Aw)PhScb8dA$_d!{W0@YVGwIi6?3%3mzFV7SSF_JT(g zI@I=@Ew8w1+)BF$Q|h14Q)!)V#UcIW8nG3+f|I&h`6$$x3zfbuzgugt*Jq>XKmgS~ zS8bOxuSJPpy?fg-p_NT=K_!--RFf2Js+u@5?`k&^yQZ)D@_-+Q+uf3Wu5H5mK(l3a z>(-y}UKwrtP>alx->GLm+2eG^pV1MiQk5;VOwatsuJCv03h_GcmC)35Qhd7+4*W+< zB>3mKBfV0}(zm{|LxcWsP~07ptbL{EVshDPYL|mjPQKTeE$@9qDMihwan>;Yt7-#+ z0`Wc?E+Li+<7+CM*lM-*DqJ`iBKU=CnSA5xrhx21rWqNs#z#~jYPImc?TVxr@PG%M zP0h?q#h-A}`IR$L9IBkQN`v4&GDgh{5eYow&c-MfQATvYAUFRV=FHXNpo%yP_Yq30 zGJRCR56H2EZSRQu7k(*w31X_if5Ta#I;chq2n zJ}Bsy)cAOYHjK#6sY_hdWLX@q6TuUYHwUN74h>sX;0j*7k_7`ER@MW+p}oI!C3^*b zafa4a)R5juW9WEFF<2giI0>U!=->_M+RaPR0L4#C{_mo&vGEQJfP)bLr;C_ipyd)O zVyN6Z6A5m0ejZz*3hBxZp+Wtt$Aw;6@b=g-(r5HY2@ctPi~gvsRSDEkI06s?I4D7z z0nub$>e;%uNi8aw(o(#BS`J|v0Ho*EkmAc6>}sCy9Ho4P2GhrsK|w~oJzzrtUkCqG ztSZHlPg3KD&iLQV$5#jvOKiaT2`K+{mjCmZBP#D%xQpXIKTfRs#zV2>QZf!Or_7po z%QY1uaKREETPzUnnMk|H92!gU4DFgbUl1k0q0%ua+Zh z%*#+V{Wl){Pe@8f-l)4IANI52qefE`uNT|41S8l^vqG+l%0PMrrbipazuu_5BzyljjH}uw54bf#d^-7$DNyraD5}AU^B}OiCGCNJi2(1CSPuv;u>fqMlOI|4vKT zB~awidA{FH1TUlihljxjXE3mcQpZ|Xwmis;j z)JqlrI0!XQ2M446LQ|E}iHer=hDs>z#M3q>esyH*n!D#ZEXkt&DOE-gX;Z^HOS;h? z0G-LsI$ca8yqlMt4Ta+da{5qjeN<3wwE-i3!eF4np@fTv_+fu5YKklP<=b=3(ioio z{|)gUY>1LvJdUu(st)eKO-*j-eNG%l9dvSK60)ht60fI(c)i6Iwol7>iJJu0xex_-TGf6&g6d2h^3-zkGbN^fw z)oXG23zRZXj$RxZhGu#)I!PfVmqAZSO}nxefiIn(G+I9{uxQEl|0eW5Gg=KJk8&q& zORFYXXe{!E!alu7zJ@keYC^Lv(!^j<1mLnt#%sW?KhOKx&^F)u1Dq~A)E$l;nJI$m zFjZTpIj2#wkR}!y%^u4T3+1qmfxuHj&+w`G9Sn*Vz2CF^TED8PK)?au;7rT)o^oi@ z_p-rTlFbBV$VD52O{>_V)EG2yqzx98Naq*2{&(K~=g1B5JG3?F(&f`ouWF+33JTgp zuG(KQCbY3jqL&^&ZWcaVeYbi4L!{BFut$l7{@u7ZNR?V1ZB0K4g)w>oh|QSdAVD3) zZ95c|@GyaAFE*Ft(BW$z2f9?E_}xhZ0kETyOozYa9GYD7g3qbP14_n+ZVLc)*C<9)8D*S ztxf*DkpA;8#5?2ug4bv8>LxCZXaR*eRI)52Nou$unA!?FC-_UC-rqt8w7JzQyxnS< zzE!WH)xzb^8A}+YS3o#=%879@ObPH8NC>Qz8hPPsePzba&*Oh~1*x`G)Y-uiLHrPy z^T4Yv7p8w#nf!ayx>%0lLgjLNT^U;!AJExSZTQ%JQ-)(bB*QQ;E(LI4icR^S^}yO} zb*-AwU!3x{m-G}YFv^Zk5t;GW{$B51)A1weULw(pRDjy$2|4iLow(M5)9x&mY%y-{&g{hDZg2kb`H?KpYfUaQP8(4eyaDgMz_wigGu)&U1F$ z2arJ|Ow1r?Z0Jgnui5OlZtw#{(rxBy!5&izZpAzj+wm)jxHw5G&r+rjZ<`OVm=H^m zQ1Dr;C-<@2oR#HEA;I(n6e$71Yvoo-aK4X7A!9nY58h(itil9fe1u~@zJ1J@u(3}lppAX7p>=5F8Y9l3%4u&)N8KCL#mP6Z-^kt2~0Z|$0W z(cmK<0HOd>x04-9B;OAxV7Yima0JH0aAuE~_}m z?|8t%+d?UKVd5$HE|U&5A)^Z#0b;`feavWkC$*w%^@p(0(mBJ$t~o?5^cmYj@W1(t zXN!ltc}cTs6aZxu04uUK0v+1-I7;=v_<#}&e+l)qHL1XXZ1U!|JW9i`eDb0)Qq(If zzr7H7HTyIfu{wrXx*Fn}jYaT{Kr7B^u z92X~w7gC=9+j=;FBtAa*cjZMh<*7lTsZ~Gdl2!Yp%QM&z9Qh?lt&E2&LL6|puB#

ZB2*^HWah}+P~>F1;IpK1K}dvE4X>z90%f>VQpkArvf<560&;! zwb>admaOjgwiWOCWmr$6BVRCr!J*C_*+RBJ^a2f&iQLP4uO+rUsSF_=YA)CP^MbC5s$&cwYruO?h&veqMX*MXhK`kOcK~uq5Ak zEU45As}u?^M3zW7S?U7eB2qVlJthU~(6jCXsDuNOgfOUsYVr&pTm`am7q1H{VL4e0 z;(@rdNRK~aF&(lx1=nC~#M>Pt37+@5@Rj;J*+%*X0U`_LpT7U_eHjmXj&=E0K{>}{ zq`0V&Cd4|F7pE=VmFB}C&U1fq(kRD-cU%( zHltppy@tNZmMuEt2Op&D&dk9Ks@QVX!r0$NZ0|W(w4yIZ<5DNRT||STvY< zvn3Q?q#Wjh;XBY_3fQ_ZA?)S)oNC(>ctCudhbXsqPom5kwF0*^5iUvulF|FFP#=!m zWUU5M1A!B%_+Qi{7OE@q^^Sb=FQG|nCqo(<%qa2;@ya$ z{s>!>{n9^~J>9wPx9o-4udE&#%M^UKZNeK2EJ~l28SLHdMP%9pk zPuovdm(Ihqg7=3WD-Ns<@Tc%E$23Sb{xSbMbRu6Te%+Q@Q&9+f`D4(<-vKL0GCLac zN0aRi-@n~y4d<2!nn}_k#tYqAWd`DkYbfRz_&Js6FFmm4T2 zsH~Ai9sm=_5>p~4yCb{3WFL}(Zy_9hBXzlk@e86GbY3PnyO9kh(YNg{qA`o#e;=7W z-oDl9?FY>%%cq9g44lP-=#%Tf zXO!0yt#}dsr`_`$;itzwiJX|m$jnApr=jY2@tnTX<%XK-*Re$ye!)~#J3QftR5~Q_cStU|@WUhB@G{#sCABy! zwpSO|%e7(>gI}tDI`Hq$N$;;^;YokQn)N9grQqlG_<20uR$Pv?>9?JI56?~@b{+V7RZ-fL>HcOhGZLu! zEk(BHPB8YQhHxz|-w5{)T>65YoYNO}JR9bv&8yDSRHSxL*~{HvlLe%e*Z| zxaZ-Ry!+{Sh`c)ST+`rolj|Dd5L)Q#vhISG*zV{3IN{X&6!_Xx!&+jLtHN59i&cFt z$kd+utkPvPGZiRrH&s>;;gZH{gNx#h@hRmvQMSwZTnm`~1;?hCo9oS6Rc-<-#PpeE z?8Nzc;%VqS=k@L}@HO0uttJ(JwxEmz5I>{3@a?LvQ2M^^Rr-rf0R>kjK_Pkhx791N z+RLitp`qg&Pb>WSbGpY5fo0*{Lc8dfiAm27FfKr#(982l;M2=PkEns7=I74J{QHmX z_d*zA!~x8K>KVRkhpBV|*bv9Apyv47qMYuGo~Ng$<=KsAk>}h%jF72-ZnAynw8GyE z1c)4Pn~X-R$46s((Shv`S1?8If!(*K7x(7++2o;Teo;Tphr>k-(ddAEbU{Qh(HI{QP~I2-Hh##Bwo7z%J3rV(DVXS`ydS>RroCWtw7*oRl26PoGt zvMeU@?{9R^Tlm37)`TOThO~|A1+~!Q{ zvdft`2G=o73;-)DJ6Ef;N91k$sOR~0@0@MRMug}D2`RTVMCHn`;BBI-GxgcdX#Kx| zGR9X7Ef$C>j&!y%5C z>)kFd*>~FV(bZp?UG#s^$k$akuWNHnE2$t|48UC|QB>P#sgYtXTX#9_(6e#7DF0DL zVl{^%042Q%879dl{!R#KIya&MuUa2xHhTVH{&fH9*wx3IG`nwLi*Dei&et^LK^!18 z&Zs7MgjRTVs^hA@a%P>rR~ZXe47l+ z+RCTTJ|f*|Ygx+GlT)mYlWaeyCL42YG!~3s_D4WKy&$HOWebiDVUe!aCj@_AkH$k1 zvDcQ(_bmD75a7POpKy0&&x320sL$u`=mqWYsA6qtVmt#uQfdx z(%%f@M2U{ZG02MVwbopON$@*6fdOrCFB<3C!zG1K3e86o_nWZ+%BN4R!exolK4(vi zJmu)8{k}Y<|I7bYYz=6jj+02M<{VIfU@>+;DPCn$ENSN~vgaz@AC~X!^WX_Bce*{o zdlvhpS%Svg@(bO_`BfUHZ+FU`Upt1>oH9jDljoMp!q!&1#`j(_nDs8}a?$Hr5*9z? zZNE~S#wDdUEx3@#!q#{KOn@0a-b*INLwFo#Bma;p`?`f@xPtu=-QL+Jb7XQm;-(qd&mm|-L%jJs4J@@7gE@w z%XFWFZqh`wBvd`oevl1M_hFYK`*syD1C-~Z2^xKzpSXE;<;Yg5ST+~TtUeiAd0q|A zHYtf!o0j^{;hebH{o~W^!Nf`QgRRcgWQmoLLEt^x)YQ*hBhQ?wt4U}6XYMJpWFlNl zTL2;iW4o`WD>oq3JWM3G*kW%aC<^%L#N+{$0vHV6^YsZUs^QY>X@W4;pYbK2XI6}m zhHm%|k4Eq944u}QOY(XLUy#{em}YSF(Y(2<0O1Dn@S;jrQz-_S6vnQVKe5YRiPcG} zkzvo%+0d948(X!Z;>(y$tH6f==Dq%cwV_J{7lb5rAu%JvE-#PIw?>B3T8pyb_g}vS zaEvRa%N84H4k^{;eBFB}=q`6u{(hcf;G5uB2*_f-? zGxt8)Cw(~{sT2D3FJzb@R9S@7P^o;rwYgE@=GMf>LntQRR&DtU$;%Z0TfY9mI9=b& zGhy7Lu~Ovm!e=M-zo%Z0qo{t<^ms(6%?ggHgQ%Hh@h5{tn4d+x^LAL<$N%F)aHi|% zJ0Ej#yLYeU+a<6(aqW$*DdY$0Gk-cxs2A z_a}S9d&G}&2~mPBbZ6uuMTxl^Vg&x~Y2==@#J;TY2~ueZ?^J^+7Lze5M!cTZqUE*f zcc{4r>nI(6s`_0d&sEsE>hwH)_VH+{^p8w90DY1yO9GF)T8Lv(QABT3#K}B{zsmM#2kjcb=}P5TK# z&tHqsYT8`BZ>Oi@WB>;AqK*GTN#)Dt-w0C>m?NGDMzHZDB#475Zz2;UVdE0_+L^l-cB{em)--jN)y zXjdo|C>7v_^h2wgqi66m-hDi0rDK@pIO2~gq>s9myOKNGmjpkc9D8@Q>goe=EH$;w z_im&IaJ=7ea5)+i0)`S3k0@-4ti~iDqss{Y)kte6*e>C%L`aaZD?WF-a5O1H##_q(dmN8K`k_3NU|5$ldAk zwljW0?Z`>FK6$KfZCu7B&qDh~E-XM+bjx1#$GkqGx`eYsf3hUnqU~w!db7>NF>nL+2wwCl=ieq9;aajC2$ z*WH5bQZBOa?t_>DHKjCq73r1LEc7-Sj{m77jFF03|7TzDseOq^Qd2emk7`c)(O_-r zC+72Gz(w5XR!!!=8vk1>Wz|5HHrKWa=vhFk|G%@@$DF1!GMJCU#{ z<&L7Xq&1b2iE^Kd6gT!NIu{c@wxaVFiE*zE8XkFx^BY#Im=6AEZ$^PxDP7<7dn%PgV+)1tu@t%l^x zYRBralZw$k#^cGpxoc_9y73Mq?*sM^X7ayAZQFdjyE?Nbf%|~W;||&o_dKD2SL5k( z4DuTRO?O$Ah#-Ua0t|GwyY8I8AC8)zReAA6$wXt&MTzeI$-Ye1Vtbgq0-HANob7rt zG_OxCy{;yfw})?RPfhq4@~|ZnIg+2@i5TZ4~s0XnLOULq}bW>5za*W4Ru7(wyLE;M;7gYP=yB-8(@pYTk+pIj4 z>&ur=NCF@tIj(?T{jkF(!mBNf^%#FAL6M9)J53PT4iPRq|LS%WFL7kzVSeo7Bn)FI zdWPAB@CWxy#%5EJHOLq+!I;mla^+aMc>d1EKOP7ULZ~e_%=`!t*UA3s!%^d;Im@0) z)|sKf*dJ$DZp!J+)AeAh6b>)yZa{k^QwG=ZJu00vclom6`e4?{aI(g7ufCB7I)q8f zQA$YX9iaYsYT&+|9Sdpy1Gg2JKDK6goDCo zhDV=vTi4UV0nVKM%ep4bV0Yvg)vp_Bi%pTPsC{_(S-7(mL-Q45*JDn(D&2yaPNUPu z)oB3>Vk9IQvdQn_tw|q`q+6e!EET3w!#^|;B!6b1UWzoc@Ee&gNHf&W4RG`JxC}o1 zun>k1EeCS7{Ha+&H-tT>IpK7X1E#aYExw95dZe#Z$0Ao2mF%xl|!hc{~zj zMF_PI#VZdGrBvM!j@4<_Prq;eW1|1S7kWDiUApgCrq0q#Jhu~@ zElde!PfGA2`5NfxRXbH5i? zWVJduT09}h-c~cUI-&3c1G7 z;p)3vm;t>oGf$g z>bhLp^Pd*ng3(X%DR9)nD)*z0ynMU`5L-bP#t2!(mD@a)x3&l;lJ`4XFYtxjQfP3% zJUktZVvhzjZus*0>iyJ)TX$q*AW5>6Iv`)}eXtl!?CZ^wJ5vu=yJG#$1{RyJ z58dAEpALTbpnS180u%ru0}mT z{U*58no3m{w{*DZNCdpVs%$v1ZOY1;Q0_^qRLK$;xl(Q6`gJWF%VR5Lj2LrG(qt(W zMXAOJ0X&pQ5~31)ME*e?rID2PJ1Vlko?u9I;b?c@^lvV{s!VOze!4QPLRJ9Y7i>Z<}42opfDn5PI95wK!B>@W(RYxa7~djQsaRg&Ei&mZZ@WfO7>Fn?OmhL+Zz=v;5$`02l}MMquDR`)M-*7kT95xT zV3^lrdERVa<*c1UGfUk5)9F7I8_z2^xvi``KxHQ&Kw2}bHQ&gWzDB+~QjkfDLRGm` zt{zi(U#3DkFgXXu1d)L|jtZ*m={;m>NCgUGA#GN^EwWG3D=n)J9V(v#TyS8O%+M@X@larB-37kTCV0$5{qIyAoPt-RJh zc-)t4qv1a}onfhg{cw$;zR25?rH!B1H?B1oJ35athYN}aD1{d?1^+>|2b}Vt1YsVt z0Z&aAc{Kly!PVxp;%GopkR$*MNd8q{dE;6g%-g?$sF$4VhAR&IIG1?s6KqXk>Yxa_ zov(~QgXOw@dkM{LF5LPwXRIk!*Gx@1PEMBWEZgd6q67hgK?$SbfGCLs`Sg18+GhWQ zV^dh;sb&5kb68~}-P}ZM%dERU522Ar2T7p6sL{IxyLt@+pN{HiS5ixp&u-oU*T?e@ zKJA7{$ruG7fFHQJ+ID&ryEH_Yj8sPOm~r&h&Ql3+L7Chl-K49;x?p9LYN4!}V>KXr zPN#z>jW|cU1D6!cy_RhcAs_76927#wLYVw$LA#KRX8L~Io-(_<`phGL@-OtrmEhO$ zs`9jc_Y3VB&u2O)$o`I!1TGSS6_3TsliB}dTUVaitzVPc&CI+<5zDUP&i3s)zXa|V z#OZOJ4B0NskbXe9vK_|_wJjRc=ko% zwH3;@7tZ=dr0yCg;FouU0tfJ1!e-Fua;_RT&zOXZ@u6We( zzTA$kaSHgCY3l!6dwtla+Ozt%WDV5OsBGM3sGoXWA(l1c#Ipc42wnNt&divBKjdmM z7IwrcyLMBXTXYFDjk5;ud)X+yY`%w(L+!B?Ic2#?llo0e}md(>Q8KSm$@>1cD~9q$^q90Pm5Q%5H5u*1x*gdS2usWo7I8?19%`xg5G)!p8tQtA=-s3)9&b?R3O_ae zYrU>2W@9@*9mCc!sHz@FZ*A&0)`T6$PaobMI&OC8?nNKxcZR?Dp1HJq+Oy~BXoFoy z+(y{;kuFtV&jYii6*-^_Of3W*_4KXu1A9IJ7q`m_Chj=D*$X-drO5KWfAnf$9P{}+ zD-d|g|2SkqM6;&2hdjhl#^**#9pvRw%!Xf0Qgd+f_-ATyWQMfk(0Xp-oYYjT?-$^@ z!!`X(6f0s}Aze<^1*e#~Z-VaRY3~`)ala0ZQ{05dh$VH*qE5U0QEh+Br&}NYqu>D; zs>ZnUYfu$OR)(QKsTzkPlV15d`sxy@4!Pf7+db(JO~wz~UqkR_*mOdZ%*fvxuk9N&$YR3i+}3iohp2Ws+Ny) z(ig0S>vx^$`!VmtPT!3C>-!hzWsWazM)%dmRxfJd+tw$Dt(isn&2{FM;L;fRqlK*nh z=}Qvik{~6YvZtf_uhpeja-LTye6p?Pt+mDY1OCF_Gavu^tCn2mxAV7|thbKKqr|}5 zQ(63}9JDDnf;Q=OeJ8_L+iO#|!@4)>JQ)Ib_jON)*)|6Qa`Y0>vUQWBiV>)CAx8n= zBY>iHGo~TC;itA02@w(iEeN?dGzCjI@UYnmU~7yU6;+(-_q=%25cqFP@pbRho$10N zy#UnfV!g*HtEt4Hy_(0-WXG_IZ;D2O{k!FFZ%>qFX`Jr&xl5}?)hT0I9WP2J=NR}Oa8$&eY99`3o`yDL z|IYuNsIb##89jwm{%BvAi0x<>_@(k^Z|nvp5LEhhT$q@iHud1QW}oYn!sb+=aC$ zH@%A&DGJj*3LWS>TiBa))cS3!MQ=`oiQaMSyhNU1rn^Kw{`zsDpsvprKqFP2G^1cg zGnATmL$ISZq?*;Bpl6(odgy?JM=eLenIA4VLCJy;c*x{B&cgYfF+uRUie9hqxS3}G z2*Qbl7k&yzS}xxmIPBc{o|5Db$V7^V8RBV)5lBe@2fqy zr!~l{eRbsN(USiT%gT$YMpx@FpP!u>t*@{X<`^leEPFX0R{WHkHLiV#b*(u+Zp~UE zQ1>)gYf9G0z84K0)->}$nglJjSKDN76oqu?eC8A(R|;=1ahdrrOt@PeS*rcLV`srEXYfOinw+2zBL zW#=-a{vvceHhAioTY&=@hXdVrR)>?|N*F&9#1d496tro75zE&xaC?1QaWLlERMyO= z6`k7C-O*F6$HBpQQ4+~$)MTt~35jxkXC+m2BW4Hh0U%=n z(6!5Ul&H##_K3Fg#K-ObQ{7hvwe@}N2B*a-#l3hbUI$fBM6%EtT~9f=@@w$;EKUjJrs-1Q`3aLgau^U(0^?R8J#=Vv@ypB{_wQ1Kp; z*-Gqh_i%glDeXN|Jv_1!irM_L^#Oz_gukvT3BF&ukhomS2qM)1oWUN3wdHP0Fqza8 z`yA+jzSX`DAsssn`@*=7jON>_#S~p$@;%@RCtwlj46iSknpY^qDnQTK?UW$$i^P!Nu`L+OVSDIaCGgniX76kd`e$}l=1nphL6DeUFE5pJ z!C+ecvg~DJO~J?_PgE0ebR?*~CV#5i*!*w{BchVMAh-)x>Vzgg9LuXAV}sSq@_z_!gmiZgOGAs5$vtuQs3IneE6b$YhC3$PHp|rxmF3 z3vg3skkUuQK8Bl{DqGO$(QWqN;=wQ-cD$Rg(SIu^&VO zRn}MJ(B+U(Bc$+)@CH0I$cNRljs}z&SbTx<$F)%wKGOil#=YL<(Ww1mnG4oA?4-e% z(HM>f(Z;1BU?kU;{XOq=6@;VEu0$k27IdjIvhsCJgfC~`FLZWgN(Gdjs7){%hob5E zLaBjdY0jO&@jq##UEo&MMpUetZ;xzC1O z=KdR+V4b(GCzZDc=@{x|1%6-@Agt5=vcHJe6=b+vXMeX_%7lYMj_IMs)rw^$>w$`R zIWP5a-eONU$Y2BSM&-9V!;vO~4T>A4Oifle;6(77O1-?dOP2X$r@c)#E#$;e$x)1) z=qzeM6$pwNliI%%AN)#JET18-v3}|#rDOUA9~puXZgkRu0~b8^TCv%vY;Fzze&C75 zbBJ)5%0q{eaw;pc@R9QIriVQ4VM@qaa8PxJ1o}EyZq>|n zzjjW1Ji}H-s-W2H?X+O@vln026FU~RZ=@BFk8_cp7MIH&UMGlIUU#=4+1054Cx4;Q z0swZ37Q(;qTX)Wm*lQ;`V-FZ;KBCRB;q+eXhGbCMS#tr`T@rsVRg??N^dX`H@xIS_ zYDg*Bc^?Xb(QPL}UPON8Ov%iQc*f2wEmVe7Bpk0$tqcG8L5?jd^)T*!hxHIUT$n3U zv;69;H&$W@z5jiAu=d0XV*XeBpC7)L5Mhwn{Kh zMG8-pj`8yvv7CPhT%~m-##A;*v3v^lkdK$H__@}_~=(SiS8%3iKxo9qPbh4Qc`8i{n0n<@`g8R0?b>tBv6 z1wtCBPglI!%$fbNQr4>Flhq6g@y+~}r5F5Ms~Ifj%xK_9S%2KaA}3Vk@`BmlUQo3H zAuLUFvhb1F3bS8NccO_+5{NXHXx@0XP0K`LuGBAWUAQ(Tl+QgR-TZPbhzI=!V<5pS znbc!FukaH^^Nt+Llw}#emuPP6R~F~knW;&;z1ahKA*;&2$mdsjQMLTC8U=^+*B=Es z;!qE?q0t|GeIIt`=I$;6$xKReJf+41XN&W{$YnboJ?9im6W)kW$J0|ES-VL^tVU^d zuclo32ET5jH18(usfD}l4hQ$FzNnY19#G<;C6fAM6g$JG-2ru7ICO(I^mo0uKMr_+ zhJGXPjL=h4;pa$sSM-$6s6ySgWOa^L;xVV%eUODaz@6U2eRn9Z173fz8NwtOe9uvm zJT1WODZ5b+eYhyo{>DfWe`VqQ7b!4bl$JwuX-(~K{kA5C!!HE(1KE~j=Y6J)9v>#& zsw55@qr|dL7{(vd+31Y}=RE0A92B~b<6D3`S{bw4UEegzd|q@UU6$flee%@wG3~+_26MUp5+wFUQE##Xgj7h7Fxc`rz(zc|D;+M-S^3da4CV1Z1C(4!yZA9y?2T$hvAnmiKj9X zc_{_I4681Zdh^kjYu(K6-?t*lnhM$*$;`S)&{-!oS=`+@b%x%sRADm9UI`fOYquZOY7-6c2QdD?TfD;pe-rxcOPnvx2<_58WOf3^>B7kF1PT+Ruj>Is`XkF=BXrme1iX z`9s#8{nvYTz7FNP{O^W4<>`uwQnVBPa(qa;y-=YzBu>NGj(9_{DW%|-=sQR9>ko|S z`}?NMgIpP~RKm<`c;PqCX&QSA6~y>g-}#GLuN(l-6VTo4NuufcJDZZn* zAajT&;4h%Iaj7#2BT;6K58vdBBJl@Pe_ranvA!NYpSrv6qbA53x6UQj4pfm#_SXjA zj4*O9nwXa zTJ)8N-*%vPDnq0ePj_`(n-2S88#Ub>Z(@|6rlm3h5^@UM+!(rg;#k<*-o=LU%Ty(PxMf2uBFn8A6E_zs3%tr-KM0* zTC0Qh=b06|#1b?*U*<$S^P)4hxf7|0SC{GRENU)1Yu~kgH_&nRygZz6Gja0-IrRG@n7!ac@QbZ2d!px} zZPw}b>!JM;%-kW3UIEo65*ZhHU2{DyAqBnZo;{$Jm7I=Aua$sI0i8~jGn;`P#d-D!DdyVp81p84+`vYpSgau z@Jd`{=BMSnJo?HG?fP6Ep1Aa(F>aM;O-2OHsie=j$%GV%5H65GjqC(7s%_OzJv_R*_!h>WC_MS-*8#5m%BU%&3+t;@I4sJV-+d%rG=g97MW z63%H>*VbrvU4v7{oL@2#Q)6D8_46L4%pazoZf=Gfpfz44Deq**zlO>iJac_!u@us_ z6w~t(JagxicJ9x=24vWAS(yG>T0d$Zu=;DVuI%lc_=r+O+9CUb$O!bU;)dim&B`nz zgDp32^vUkre(<}OXR_~d1qS8zHh%k9WcZ$=sou$oUPa@Ven5kgeM)Gp$gGcU>5Ze3qNnCeRhsc`aeg1>;@mB+pny?b$pC0n1sz)&wQ z@xpUE_PlQkZArK^8Xn_amZm%cPv|_&zAsjXdIg%uor8jf`-i+hZNW7*QzA>8y`rvm zaR0+xVv#@Ujr#O)ubt^QJ%!_cqQ(7bgo6|4vILB zR}aKvd`;+^Bh=D#;)#-PJ1yxrpX8;=Zpk`R@7J2tsRWE}&rdXBLBM`pPSY1l0dfJq zr6mjA;?HI#ExyW5*lO+F+Wht%^rv+ro338`>ro@AjU}Oy3nOjI2^Q1@ zF|h)hYT>9xU73aU+XKbknw~(5yssBY02EWMKxGfkv63gBBIWvOVr!~_F!Qy$vMKG=a?XOgnB(q-@w7AgrkkdLdv#cJ}aIa>oqbM*o z*cz7FV5H6{bhEQE*8U}NBl)r1-BYp&qxya~Jvz1Lh7 z1Z*5ip1pC}*fV4gMQ6Ln*Q$T|Bm>h+=X-QoQ^MY#v%=z6jxow7I+ zhVodOrAgoX$1ij|YzI<@6_f4spD#Q1)GkQaIZVI~7y1yAMs8z0Ck}F53g(x$ znX+z)4NJno7cHXFF1vTJw65;HYjejS*|T-p@&QkEAOo{lD0y`*ZNb|k_54JIw_?Ok z9q*@F>H(Hxlxz^5xERRR+7MjDJ!JKLPo!jKAGPJrNZ-NMANq}E`4@o@H?2B%bG|{{ z6Pu~`NGS?WilmZrxp+1E5puPf)IwegAUi9o2QuOjZ(AZ|gAFg<6Jj8?f4zn;XzS8CEh0uS8Q}uio|SS2j#efMR&yT0zGiv=u*b6`093 zSvKLHFlcTG0|w45AO}DDz&D;T$nycAiiO`5Z|7(F0$iwqm!f@IlPjy<*?MQ(T`wWa zq#6B@kQFOcojmRbw3R%vB~30xX@1&=BMP7p+c`G#D(uRqv&g*zDP@x+IzoqIX?_?( z)x~If217^(dEFp}|L!Qr?z{mISz>W0aOf8&6AW>u7oA=4OhJIzE!n1=)%YuWI|0-J z+g|6j#uAk~#_&LUX@qecGjM_xIIB2pRPS5%DcjVu)W5P^6U8weuZ-@zuII@TzVLG; zrS7Jd0xe79e+F=9qtye8r|mH;={MzK(T4a1mwTTXiaTfNe>u6Q)>6G<;$E4|owQo6 zyD1-X=?#-I^ur6nb6b#fR`j4qndPC5Ts)7rauGRh&yX6e_KH(PLk|yUhw1ms%K=$%I~wfXrdzOO8qA z2YYJ(ao(0l+>EV9?TT8jW(d4}uCHdYQFq1(U(-8pqM8SPcxMOk+HX&VM#iUU`UP{Y z0*M(79el|$gz%46h%Rm>D?7y|9|OtTv*8%0GaukCcNaB