From c5c62a0fc5fdcbc07064bc294731c16560523e77 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 18:24:42 +0530 Subject: [PATCH 01/33] WIP: WMI wrapper DLL --- pyproject.toml | 1 + src/hwprobe/interops/win_new/CMakeLists.txt | 48 +++++ src/hwprobe/interops/win_new/README.md | 119 ++++++++++++ src/hwprobe/interops/win_new/__init__.py | 0 .../interops/win_new/bindings/__init__.py | 0 src/hwprobe/interops/win_new/bindings/wmi.py | 123 +++++++++++++ src/hwprobe/interops/win_new/include/wmi.h | 45 +++++ src/hwprobe/interops/win_new/main.cpp | 50 +++++ src/hwprobe/interops/win_new/src/wmi.cpp | 171 ++++++++++++++++++ 9 files changed, 557 insertions(+) create mode 100644 src/hwprobe/interops/win_new/CMakeLists.txt create mode 100644 src/hwprobe/interops/win_new/README.md create mode 100644 src/hwprobe/interops/win_new/__init__.py create mode 100644 src/hwprobe/interops/win_new/bindings/__init__.py create mode 100644 src/hwprobe/interops/win_new/bindings/wmi.py create mode 100644 src/hwprobe/interops/win_new/include/wmi.h create mode 100644 src/hwprobe/interops/win_new/main.cpp create mode 100644 src/hwprobe/interops/win_new/src/wmi.cpp diff --git a/pyproject.toml b/pyproject.toml index a0b72fe..4daae5d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -32,6 +32,7 @@ where = ["src"] [tool.setuptools.package-data] "hwprobe.interops.win.bindings" = ["*.dll"] +"hwprobe.interops.win_new.bindings" = ["*.dll"] "hwprobe.interops.mac.bindings" = ["*.dylib"] [project.urls] diff --git a/src/hwprobe/interops/win_new/CMakeLists.txt b/src/hwprobe/interops/win_new/CMakeLists.txt new file mode 100644 index 0000000..ce8358a --- /dev/null +++ b/src/hwprobe/interops/win_new/CMakeLists.txt @@ -0,0 +1,48 @@ +cmake_minimum_required(VERSION 3.21) +project(WinWmi LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +if (NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type" FORCE) +endif () + +# ---- Shared library (DLL) ---- +add_library(device_info SHARED + src/wmi.cpp +) + +# Static runtime to avoid dependency issues when loaded by Python. +target_link_options(device_info PRIVATE -static-libgcc -static-libstdc++ -static) + +target_include_directories(device_info + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include +) + +target_link_libraries(device_info + PRIVATE + ole32 + oleaut32 + wbemuuid +) + +# Drop the DLL next to the Python binding. +set_target_properties(device_info PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + OUTPUT_NAME "device_info" + PREFIX "" +) + +# ---- Standalone test executable ---- +add_executable(WinWmiTest main.cpp) + +target_include_directories(WinWmiTest + PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include +) + +# Load the DLL at runtime like the Python binding does, so the test exe does +# not need a matching import lib. +target_compile_definitions(WinWmiTest PRIVATE WINWMI_TEST_RUNTIME_LOAD) diff --git a/src/hwprobe/interops/win_new/README.md b/src/hwprobe/interops/win_new/README.md new file mode 100644 index 0000000..5715481 --- /dev/null +++ b/src/hwprobe/interops/win_new/README.md @@ -0,0 +1,119 @@ +# WinWmi (staging: `interops/win_new/`) + +New WMI wrapper binding, intended to replace the legacy `GetWmiInfo` text-format +export in `hw_helper.dll`. This is the staging directory; once `core/windows/` +consumers are migrated, this merges into `interops/win/` (see +`windows-rewrite-llm-plan.md` §5). + +> The brief said `win-new`, but a hyphen is not importable in Python, so the +> directory is `win_new` (underscore). Temporary either way. + +## What it exports + +One C++ function, one Python function. + +```c +// include/wmi.h +int get_wmi_data(const char *wmi_class, + const char *const *fields, int field_count, + const char *namespace_str, + WmiRow *out, int max_rows); +``` + +```python +# bindings/wmi.py +def get_wmi_data( + wmi_class: str, + fields: list[str], + namespace: str = r"ROOT\CIMV2", +) -> list[dict[str, str]]: ... +``` + +Each row comes back as a `dict` keyed by the requested field names, in order. +No `|`/`=`/`\n` delimiter parsing — each field is its own fixed UTF-8 buffer on +the C side. Missing/null properties are empty strings. + +## Why this exists + +The legacy `GetWmiInfo` returns pipe-delimited text that breaks when a value +contains `|`, `=`, or `\n` (PNPDeviceID paths do). It is also `void` — failure +is indistinguishable from "no rows". This binding fixes both: structured rows +and a `-1` error return. + +## Requirements + +- Windows 10+ +- Visual Studio 2019+ / MSVC Build Tools (C++17) +- CMake 3.21+ +- Windows SDK (for COM/WMI headers: `ole32`, `oleaut32`, `wbemuuid`) + +## Build + +```sh +cmake -S . -B build +cmake --build build --config Release +``` + +Outputs: + +- `bindings/device_info.dll` — loaded by `bindings/wmi.py`. +- `build/Release/WinWmiTest.exe` — standalone CLI self-test. + +## Run + +C++ self-test (queries `Win32_Processor`): + +```sh +.\build\Release\WinWmiTest.exe +``` + +Python self-check (same query, via ctypes): + +```sh +python -m hwprobe.interops.win_new.bindings.wmi +``` + +Programmatic use (the way `core/windows/*.py` will call it once migrated): + +```python +from hwprobe.interops.win_new.bindings.wmi import get_wmi_data + +rows = get_wmi_data( + "MSFT_PhysicalDisk", + ["FriendlyName", "MediaType", "BusType", "Size", "Manufacturer", "Model"], + namespace=r"ROOT\Microsoft\Windows\Storage", +) +for r in rows: + print(r["FriendlyName"], r["Size"]) +``` + +## ABI caps + +Defined in `include/wmi.h`, mirrored in `bindings/wmi.py`: + +| Cap | Value | Why | +|-----|-------|-----| +| `WMI_MAX_FIELDS` | 16 | Max fields any hwprobe query uses today is 9 (`Win32_PhysicalMemory`). | +| `WMI_FIELD_LEN` | 512 | Covers PNPDeviceID paths and uint64 string forms. | +| `WMI_MAX_ROWS` | 64 | Covers memory modules, disks, NICs on any realistic machine. | + +Raising any cap is a recompile on both sides — the struct is the ABI. No +runtime resizing. + +## Trust boundary + +`wmi_class`, `fields`, `namespace` are WMI identifiers, not free text. They +come from hardcoded literals in `core/windows/*.py`, never from end users. The +C++ side builds `SELECT f1,f2,... FROM ` with no escaping. If a future +caller ever passes user-supplied strings here, that caller must validate them — +do not push escaping into the C++ layer. + +## Status / scope + +- **In scope (this directory):** the WMI wrapper itself. +- **Out of scope (separate bindings, later):** audio (MMDevice), network (IP + Helper + SetupAPI), display (SetupAPI + EDID), baseboard (SMBIOS). These do + not go through WMI and are not served by this binding. +- **Not yet wired:** no `core/windows/*.py` consumer imports this yet, per the + rewrite plan. `memory.py` and `storage.py` are the first two consumers once + the greenlight is given. diff --git a/src/hwprobe/interops/win_new/__init__.py b/src/hwprobe/interops/win_new/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/hwprobe/interops/win_new/bindings/__init__.py b/src/hwprobe/interops/win_new/bindings/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/hwprobe/interops/win_new/bindings/wmi.py b/src/hwprobe/interops/win_new/bindings/wmi.py new file mode 100644 index 0000000..d7e4801 --- /dev/null +++ b/src/hwprobe/interops/win_new/bindings/wmi.py @@ -0,0 +1,123 @@ +""" +wmi.py - Python ctypes binding for the new WMI wrapper in device_info.dll. + +Public API: + from hwprobe.interops.win_new.bindings.wmi import get_wmi_data + rows = get_wmi_data("Win32_PhysicalMemory", + ["BankLabel", "Capacity", "Manufacturer"], + namespace=r"ROOT\\CIMV2") + for row in rows: + print(row["BankLabel"], row["Capacity"]) + +Returns one dict per WMI row, keyed by the requested field names. Missing or +null properties come back as empty strings. Raises RuntimeError if the C++ +side returns -1 (COM/WMI failure). + +Source: interops/win_new/include/wmi.h and interops/win_new/src/wmi.cpp. +""" + +import ctypes +import pathlib + +# Mirror the C caps. Must match wmi.h exactly — these are the ABI. +WMI_MAX_FIELDS = 16 +WMI_FIELD_LEN = 512 +WMI_MAX_ROWS = 64 + +_HERE = pathlib.Path(__file__).parent +_LIB_PATH = _HERE / "device_info.dll" + +if not _LIB_PATH.exists(): + raise FileNotFoundError( + f"device_info.dll not found at {_LIB_PATH}.\n" + f"Build the project first: cmake -S { _HERE.parent } -B build && cmake --build build --config Release" + ) + +_lib = ctypes.WinDLL(str(_LIB_PATH)) + + +# ---- mirror the C struct ---- + +# ctypes: a fixed 2D char array. Field order matches WmiRow in wmi.h. +class _WmiRow(ctypes.Structure): + _fields_ = [ + ("values", (ctypes.c_char * WMI_FIELD_LEN) * WMI_MAX_FIELDS), + ] + + +# ---- function signature ---- +_lib.get_wmi_data.restype = ctypes.c_int +_lib.get_wmi_data.argtypes = [ + ctypes.c_char_p, # wmi_class + ctypes.POINTER(ctypes.c_char_p), # fields (array of c_char_p) + ctypes.c_int, # field_count + ctypes.c_char_p, # namespace_str + ctypes.POINTER(_WmiRow), # out + ctypes.c_int, # max_rows +] + + +# ---- public API ---- + +def get_wmi_data( + wmi_class: str, + fields: list[str], + namespace: str = r"ROOT\CIMV2", +) -> list[dict[str, str]]: + """ + Run `SELECT FROM ` against `namespace` via the C++ WMI + wrapper and return one dict per row, keyed by `fields` in order. + + Args: + wmi_class: WMI class name, e.g. "Win32_PhysicalMemory". + fields: Ordered list of property names to select. Max 16. + namespace: WMI namespace, e.g. r"ROOT\\CIMV2" or + r"ROOT\\Microsoft\\Windows\\Storage". Defaults to CIMV2. + + Returns: + list[dict[str, str]]: one entry per row. Missing/null properties are + empty strings. Empty list means the query succeeded but returned no + rows. + + Raises: + RuntimeError: the C++ side returned -1 (COM init / ConnectServer / + ExecQuery failure). + ValueError: too many fields requested. + """ + if len(fields) > WMI_MAX_FIELDS: + raise ValueError(f"too many fields: {len(fields)} > WMI_MAX_FIELDS={WMI_MAX_FIELDS}") + if not fields: + return [] + + class_b = wmi_class.encode("utf-8") + ns_b = namespace.encode("utf-8") + fields_b = (ctypes.c_char_p * len(fields))(*[f.encode("utf-8") for f in fields]) + + buf = (_WmiRow * WMI_MAX_ROWS)() + count = _lib.get_wmi_data(class_b, fields_b, len(fields), ns_b, buf, WMI_MAX_ROWS) + if count < 0: + raise RuntimeError("get_wmi_data() failed (C library returned -1)") + + result = [] + for i in range(count): + row = buf[i] + decoded = {} + for j, name in enumerate(fields): + raw = row.values[j] + # raw is c_char_Array; .value stops at the first NUL. + decoded[name] = raw.value.decode("utf-8", errors="replace") + result.append(decoded) + return result + + +# ---- quick self-check ---- +# ponytail: one runnable check, no test framework. Fails if COM/WMI/encoding +# is broken. Run with: python -m hwprobe.interops.win_new.bindings.wmi +if __name__ == "__main__": + rows = get_wmi_data("Win32_Processor", ["Name", "Manufacturer"]) + print(f"Found {len(rows)} CPU(s):\n") + for idx, r in enumerate(rows): + print(f"CPU {idx}:") + for k, v in r.items(): + print(f" {k}: {v}") + print() diff --git a/src/hwprobe/interops/win_new/include/wmi.h b/src/hwprobe/interops/win_new/include/wmi.h new file mode 100644 index 0000000..5189d4e --- /dev/null +++ b/src/hwprobe/interops/win_new/include/wmi.h @@ -0,0 +1,45 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +// ABI caps. Raising any of these is a recompile on both sides. +// ponytail: fixed caps avoid heap ownership across the FFI boundary. +// 16 fields covers every WMI class hwprobe queries (max today: 9). +// 512 chars per field covers PNPDeviceID paths and uint64 string forms. +// 64 rows covers memory modules, disks, NICs on any realistic machine. +#define WMI_MAX_FIELDS 16 +#define WMI_FIELD_LEN 512 +#define WMI_MAX_ROWS 64 + +// One WMI row. values[i] corresponds to the i-th entry in the `fields` array +// passed to get_wmi_data. Missing/null/empty properties are written as "". +// Each slot is null-terminated and never overflows WMI_FIELD_LEN-1. +typedef struct { + char values[WMI_MAX_FIELDS][WMI_FIELD_LEN]; +} WmiRow; + +// Run a WQL query of the form `SELECT f1,f2,... FROM ` against +// `namespace_str` (e.g. "ROOT\\CIMV2") and fill `out` with up to `max_rows` +// rows. Returns the number of rows written, or -1 on any COM/WMI failure. +// +// `fields` is an array of `field_count` null-terminated UTF-8 strings, in the +// order the caller wants the values back. `field_count` must be <= +// WMI_MAX_FIELDS. `max_rows` must be <= WMI_MAX_ROWS. +// +// Trust boundary: `wmi_class`, `fields`, `namespace_str` are identifiers, not +// free text — they come from hardcoded literals in core/windows/*.py, never +// from end users. No escaping is applied. +int get_wmi_data(const char *wmi_class, + const char *const *fields, + int field_count, + const char *namespace_str, + WmiRow *out, + int max_rows); + +#ifdef __cplusplus +} +#endif diff --git a/src/hwprobe/interops/win_new/main.cpp b/src/hwprobe/interops/win_new/main.cpp new file mode 100644 index 0000000..3242047 --- /dev/null +++ b/src/hwprobe/interops/win_new/main.cpp @@ -0,0 +1,50 @@ +// Standalone CLI test for the WMI binding. Loads device_info.dll at runtime +// (same path the Python binding uses) so we exercise the real ABI. + +#include "wmi.h" +#include +#include +#include + +typedef int (*get_wmi_data_ptr)(const char *, const char *const *, int, + const char *, WmiRow *, int); + +int main() { + HMODULE hLib = LoadLibraryA("bindings/device_info.dll"); + if (!hLib) hLib = LoadLibraryA("device_info.dll"); + if (!hLib) { + printf("Error: could not load device_info.dll (GetLastError=%lu)\n", GetLastError()); + return 1; + } + + auto fn = reinterpret_cast( + GetProcAddress(hLib, "get_wmi_data")); + if (!fn) { + printf("Error: get_wmi_data not exported\n"); + FreeLibrary(hLib); + return 1; + } + + const char *fields[] = {"Name", "Manufacturer", "NumberOfCores", "NumberOfLogicalProcessors"}; + const int field_count = sizeof(fields) / sizeof(fields[0]); + + WmiRow rows[WMI_MAX_ROWS] = {}; + int n = fn("Win32_Processor", fields, field_count, "ROOT\\CIMV2", rows, WMI_MAX_ROWS); + if (n < 0) { + printf("Error: get_wmi_data returned -1\n"); + FreeLibrary(hLib); + return 1; + } + + printf("Found %d CPU(s):\n\n", n); + for (int i = 0; i < n; ++i) { + printf("CPU %d:\n", i); + for (int f = 0; f < field_count; ++f) { + printf(" %-26s %s\n", fields[f], rows[i].values[f]); + } + printf("\n"); + } + + FreeLibrary(hLib); + return 0; +} diff --git a/src/hwprobe/interops/win_new/src/wmi.cpp b/src/hwprobe/interops/win_new/src/wmi.cpp new file mode 100644 index 0000000..bf45369 --- /dev/null +++ b/src/hwprobe/interops/win_new/src/wmi.cpp @@ -0,0 +1,171 @@ +// WMI wrapper for the new Windows interop. One generic function, no +// delimiter-based text format. See include/wmi.h for the ABI. + +#include "wmi.h" + +#include +#include +#include +#include + +#include +#include + +#pragma comment(lib, "ole32.lib") +#pragma comment(lib, "oleaut32.lib") +#pragma comment(lib, "wbemuuid.lib") + +// ---- VARIANT -> fixed UTF-8 slot ---- +// Writes a null-terminated UTF-8 rendering of vt into dst[0..dst_size-1]. +// Missing/null/empty -> "". Never overflows. +static void VariantToUtf8Slot(VARIANT &vt, char *dst, int dst_size) { + if (dst_size <= 0) return; + dst[0] = '\0'; + if (vt.vt == VT_NULL || vt.vt == VT_EMPTY) return; + + HRESULT hr; + BSTR bstr = nullptr; + + if (vt.vt == VT_BSTR) { + bstr = vt.bstrVal; + } else { + VARIANT vtBstr; + VariantInit(&vtBstr); + hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); + if (FAILED(hr)) { + VariantClear(&vtBstr); + return; + } + bstr = vtBstr.bstrVal; + // Convert into dst, then clear. + if (bstr) { + int len = WideCharToMultiByte(CP_UTF8, 0, bstr, -1, nullptr, 0, nullptr, nullptr); + if (len > 0) { + if (len > dst_size) len = dst_size; + WideCharToMultiByte(CP_UTF8, 0, bstr, -1, dst, len, nullptr, nullptr); + dst[dst_size - 1] = '\0'; + } + } + VariantClear(&vtBstr); + return; + } + + // VT_BSTR fast path. + if (bstr) { + int len = WideCharToMultiByte(CP_UTF8, 0, bstr, -1, nullptr, 0, nullptr, nullptr); + if (len > 0) { + if (len > dst_size) len = dst_size; + WideCharToMultiByte(CP_UTF8, 0, bstr, -1, dst, len, nullptr, nullptr); + dst[dst_size - 1] = '\0'; + } + } +} + +// ---- public entry ---- +extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, + const char *const *fields, + int field_count, + const char *namespace_str, + WmiRow *out, + int max_rows) +{ + if (!wmi_class || !fields || !out || field_count <= 0 || max_rows <= 0) + return -1; + if (field_count > WMI_MAX_FIELDS) return -1; + if (max_rows > WMI_MAX_ROWS) max_rows = WMI_MAX_ROWS; + if (!namespace_str || !*namespace_str) namespace_str = "ROOT\\CIMV2"; + + // ponytail: per-call CoInitializeEx. Idempotent via RPC_E_CHANGED_MODE. + // Switch to a process-wide RAII guard if profiling shows COM init in the + // hot path; today it isn't. + HRESULT hr = CoInitializeEx(nullptr, COINIT_MULTITHREADED); + if (FAILED(hr) && hr != RPC_E_CHANGED_MODE) return -1; + bool did_init = (hr != RPC_E_CHANGED_MODE && hr != S_FALSE); + + // CoInitializeSecurity may legitimately already be set on this thread; + // RPC_E_TOO_LATE is harmless. + CoInitializeSecurity(nullptr, -1, nullptr, nullptr, + RPC_C_AUTHN_LEVEL_DEFAULT, + RPC_C_IMP_LEVEL_IMPERSONATE, + nullptr, EOAC_NONE, nullptr); + + IWbemLocator *pLoc = nullptr; + hr = CoCreateInstance(CLSID_WbemLocator, 0, CLSCTX_INPROC_SERVER, + IID_IWbemLocator, reinterpret_cast(&pLoc)); + if (FAILED(hr)) { + if (did_init) CoUninitialize(); + return -1; + } + + IWbemServices *pSvc = nullptr; + hr = pLoc->ConnectServer(_bstr_t(namespace_str), nullptr, nullptr, 0, + nullptr, 0, 0, &pSvc); + if (FAILED(hr)) { + pLoc->Release(); + if (did_init) CoUninitialize(); + return -1; + } + + CoSetProxyBlanket(pSvc, RPC_C_AUTHN_WINNT, RPC_C_AUTHZ_NONE, nullptr, + RPC_C_AUTHN_LEVEL_CALL, RPC_C_IMP_LEVEL_IMPERSONATE, + nullptr, EOAC_NONE); + + // Build "SELECT f1,f2,... FROM ". Identifiers only — no escaping. + std::string wql = "SELECT "; + for (int i = 0; i < field_count; ++i) { + if (i) wql += ","; + wql += fields[i]; + } + wql += " FROM "; + wql += wmi_class; + + IEnumWbemClassObject *pEnum = nullptr; + hr = pSvc->ExecQuery(bstr_t("WQL"), bstr_t(wql.c_str()), + WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, + nullptr, &pEnum); + if (FAILED(hr)) { + pSvc->Release(); + pLoc->Release(); + if (did_init) CoUninitialize(); + return -1; + } + + int rows = 0; + while (rows < max_rows) { + IWbemClassObject *pObj = nullptr; + ULONG uReturn = 0; + hr = pEnum->Next(WBEM_INFINITE, 1, &pObj, &uReturn); + if (uReturn == 0) break; + if (FAILED(hr)) { + if (pObj) pObj->Release(); + break; + } + + WmiRow &row = out[rows]; + for (int i = 0; i < field_count; ++i) { + VARIANT vtProp; + VariantInit(&vtProp); + hr = pObj->Get(_bstr_t(fields[i]), 0, &vtProp, nullptr, nullptr); + if (SUCCEEDED(hr)) { + VariantToUtf8Slot(vtProp, row.values[i], WMI_FIELD_LEN); + } else { + row.values[i][0] = '\0'; + } + VariantClear(&vtProp); + } + // Zero any unused slots beyond field_count for clean dict-building on + // the Python side (it zips only field_count entries, but defensive). + for (int i = field_count; i < WMI_MAX_FIELDS; ++i) { + row.values[i][0] = '\0'; + } + + pObj->Release(); + ++rows; + } + + pEnum->Release(); + pSvc->Release(); + pLoc->Release(); + if (did_init) CoUninitialize(); + return rows; +} From cccaa78b8a192efd0f49f76b2c86be6c5e273873 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 18:26:28 +0530 Subject: [PATCH 02/33] WIP: rename win_new to win, and win to win_old --- pyproject.toml | 2 +- src/hwprobe/interops/win/CMakeLists.txt | 25 ++- src/hwprobe/interops/win/README.md | 158 +++++++++--------- .../interops/{win_new => win}/__init__.py | 0 .../interops/win/bindings/device_info.dll | Bin 2807237 -> 0 bytes .../interops/{win_new => win}/bindings/wmi.py | 0 .../interops/{win_new => win}/include/wmi.h | 0 src/hwprobe/interops/win/main.cpp | 67 +++----- .../interops/{win_new => win}/src/wmi.cpp | 0 src/hwprobe/interops/win_new/README.md | 119 ------------- src/hwprobe/interops/win_new/main.cpp | 50 ------ .../{win_new => win_old}/CMakeLists.txt | 25 +-- src/hwprobe/interops/win_old/README.md | 111 ++++++++++++ .../{win_new => win_old}/bindings/__init__.py | 0 .../{win => win_old}/bindings/gpu_info.py | 0 .../interops/{win => win_old}/hw_helper.cpp | 0 .../interops/{win => win_old}/hw_helper.hpp | 0 .../{win => win_old}/include/gpu_info.h | 0 .../{win => win_old}/include/win_helpers.h | 0 .../{win => win_old}/legacy/constants.py | 0 .../{win => win_old}/legacy/signatures.py | 0 .../{win => win_old}/legacy/structs.py | 0 src/hwprobe/interops/win_old/main.cpp | 65 +++++++ .../{win => win_old}/src/gpu_info.cpp | 0 .../{win => win_old}/src/win_helpers.cpp | 0 25 files changed, 311 insertions(+), 311 deletions(-) rename src/hwprobe/interops/{win_new => win}/__init__.py (100%) delete mode 100644 src/hwprobe/interops/win/bindings/device_info.dll rename src/hwprobe/interops/{win_new => win}/bindings/wmi.py (100%) rename src/hwprobe/interops/{win_new => win}/include/wmi.h (100%) rename src/hwprobe/interops/{win_new => win}/src/wmi.cpp (100%) delete mode 100644 src/hwprobe/interops/win_new/README.md delete mode 100644 src/hwprobe/interops/win_new/main.cpp rename src/hwprobe/interops/{win_new => win_old}/CMakeLists.txt (63%) create mode 100644 src/hwprobe/interops/win_old/README.md rename src/hwprobe/interops/{win_new => win_old}/bindings/__init__.py (100%) rename src/hwprobe/interops/{win => win_old}/bindings/gpu_info.py (100%) rename src/hwprobe/interops/{win => win_old}/hw_helper.cpp (100%) rename src/hwprobe/interops/{win => win_old}/hw_helper.hpp (100%) rename src/hwprobe/interops/{win => win_old}/include/gpu_info.h (100%) rename src/hwprobe/interops/{win => win_old}/include/win_helpers.h (100%) rename src/hwprobe/interops/{win => win_old}/legacy/constants.py (100%) rename src/hwprobe/interops/{win => win_old}/legacy/signatures.py (100%) rename src/hwprobe/interops/{win => win_old}/legacy/structs.py (100%) create mode 100644 src/hwprobe/interops/win_old/main.cpp rename src/hwprobe/interops/{win => win_old}/src/gpu_info.cpp (100%) rename src/hwprobe/interops/{win => win_old}/src/win_helpers.cpp (100%) diff --git a/pyproject.toml b/pyproject.toml index 4daae5d..8c409f6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,8 +31,8 @@ dependencies = [ where = ["src"] [tool.setuptools.package-data] +"hwprobe.interops.win_old.bindings" = ["*.dll"] "hwprobe.interops.win.bindings" = ["*.dll"] -"hwprobe.interops.win_new.bindings" = ["*.dll"] "hwprobe.interops.mac.bindings" = ["*.dylib"] [project.urls] diff --git a/src/hwprobe/interops/win/CMakeLists.txt b/src/hwprobe/interops/win/CMakeLists.txt index b7f78a1..ce8358a 100644 --- a/src/hwprobe/interops/win/CMakeLists.txt +++ b/src/hwprobe/interops/win/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.21) -project(WinDeviceInfo LANGUAGES CXX) +project(WinWmi LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) @@ -11,11 +11,10 @@ endif () # ---- Shared library (DLL) ---- add_library(device_info SHARED - src/win_helpers.cpp - src/gpu_info.cpp + src/wmi.cpp ) -# Force static linking of runtime libraries to avoid dependency issues in Python +# Static runtime to avoid dependency issues when loaded by Python. target_link_options(device_info PRIVATE -static-libgcc -static-libstdc++ -static) target_include_directories(device_info @@ -24,13 +23,12 @@ target_include_directories(device_info target_link_libraries(device_info PRIVATE - dxgi - setupapi - cfgmgr32 - advapi32 + ole32 + oleaut32 + wbemuuid ) -# Output the DLL next to the Python binding +# Drop the DLL next to the Python binding. set_target_properties(device_info PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings @@ -39,11 +37,12 @@ set_target_properties(device_info PROPERTIES ) # ---- Standalone test executable ---- -add_executable(WinDeviceInfo main.cpp) +add_executable(WinWmiTest main.cpp) -target_include_directories(WinDeviceInfo +target_include_directories(WinWmiTest PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include ) -# No longer linking directly to device_info to allow dynamic loading from custom path -# target_link_libraries(WinDeviceInfo PRIVATE device_info) +# Load the DLL at runtime like the Python binding does, so the test exe does +# not need a matching import lib. +target_compile_definitions(WinWmiTest PRIVATE WINWMI_TEST_RUNTIME_LOAD) diff --git a/src/hwprobe/interops/win/README.md b/src/hwprobe/interops/win/README.md index 587dd0e..5715481 100644 --- a/src/hwprobe/interops/win/README.md +++ b/src/hwprobe/interops/win/README.md @@ -1,23 +1,51 @@ -# WinDeviceInfo +# WinWmi (staging: `interops/win_new/`) -A Windows utility and shared library that enumerates GPU hardware via DXGI and the Windows Configuration Manager API. +New WMI wrapper binding, intended to replace the legacy `GetWmiInfo` text-format +export in `hw_helper.dll`. This is the staging directory; once `core/windows/` +consumers are migrated, this merges into `interops/win/` (see +`windows-rewrite-llm-plan.md` §5). -The native library lives in `src/` and `include/`, and is exposed via a command-line tester (`main.cpp`). -Also powers a thin Python `ctypes` binding in `bindings/gpu_info.py`. +> The brief said `win-new`, but a hyphen is not importable in Python, so the +> directory is `win_new` (underscore). Temporary either way. -This is intended to be used via each hardware component's respective python interface, like `gpu_info.py`. The CLI tool -is primarily for testing and demonstration purposes, but it can be used directly if desired. +## What it exports -Full disclosure: A big part of this C++ connector was written by Claude. -If you are someone with more know-how, and find lapses in this code, we'd be more than happy to welcome Pull Requests. +One C++ function, one Python function. + +```c +// include/wmi.h +int get_wmi_data(const char *wmi_class, + const char *const *fields, int field_count, + const char *namespace_str, + WmiRow *out, int max_rows); +``` + +```python +# bindings/wmi.py +def get_wmi_data( + wmi_class: str, + fields: list[str], + namespace: str = r"ROOT\CIMV2", +) -> list[dict[str, str]]: ... +``` + +Each row comes back as a `dict` keyed by the requested field names, in order. +No `|`/`=`/`\n` delimiter parsing — each field is its own fixed UTF-8 buffer on +the C side. Missing/null properties are empty strings. + +## Why this exists + +The legacy `GetWmiInfo` returns pipe-delimited text that breaks when a value +contains `|`, `=`, or `\n` (PNPDeviceID paths do). It is also `void` — failure +is indistinguishable from "no rows". This binding fixes both: structured rows +and a `-1` error return. ## Requirements -- Windows 10 or newer -- Visual Studio 2019+ or MSVC Build Tools (C++17 support required) +- Windows 10+ +- Visual Studio 2019+ / MSVC Build Tools (C++17) - CMake 3.21+ -- Python 3.7+ (for the `gpu_info.py` binding) - Assuming you want to compile this to use with HWProbe. -- Windows SDK (for DXGI, SetupAPI, CfgMgr32 headers) +- Windows SDK (for COM/WMI headers: `ole32`, `oleaut32`, `wbemuuid`) ## Build @@ -26,86 +54,66 @@ cmake -S . -B build cmake --build build --config Release ``` -- `WinDeviceInfo.exe` (the CLI tool) is emitted to `build/Release/WinDeviceInfo.exe`. -- `device_info.dll` is copied automatically into `bindings/` for the Python binding. -- The default build type is **Release**. Pass `--config Debug` to the build command to include debug symbols. +Outputs: -## CLI Usage +- `bindings/device_info.dll` — loaded by `bindings/wmi.py`. +- `build/Release/WinWmiTest.exe` — standalone CLI self-test. -```sh -.\build\Release\WinDeviceInfo.exe -``` +## Run -The tool prints GPU info, and exits with code `0` when enumeration succeeds, or `1` if the underlying DXGI call fails. +C++ self-test (queries `Win32_Processor`): -## Python Binding +```sh +.\build\Release\WinWmiTest.exe +``` -After building the project once (so that `bindings/device_info.dll` exists), you can inspect GPUs from Python: +Python self-check (same query, via ctypes): ```sh -cd bindings -python gpu_info.py +python -m hwprobe.interops.win_new.bindings.wmi ``` -or programmatically: +Programmatic use (the way `core/windows/*.py` will call it once migrated): ```python -from gpu_info import get_gpu_info - -for idx, gpu in enumerate(get_gpu_info()): - print(f"GPU {idx}:") - print(gpu) +from hwprobe.interops.win_new.bindings.wmi import get_wmi_data + +rows = get_wmi_data( + "MSFT_PhysicalDisk", + ["FriendlyName", "MediaType", "BusType", "Size", "Manufacturer", "Model"], + namespace=r"ROOT\Microsoft\Windows\Storage", +) +for r in rows: + print(r["FriendlyName"], r["Size"]) ``` -On import, the script loads the colocated `device_info.dll`; ensure you rebuild the CMake project whenever you make -changes to the native code. - -## What the native library does +## ABI caps -For each GPU discovered via DXGI: +Defined in `include/wmi.h`, mirrored in `bindings/wmi.py`: -1. **Enumerates adapters** using `IDXGIFactory1::EnumAdapters1`, skipping software/virtual adapters. -2. **Resolves the PNP Device ID** by matching DXGI's VendorId/DeviceId/SubSysId against SetupAPI's display class. -3. **Parses vendor/device/subsystem IDs** from the PNP device ID string. -4. **Fetches VRAM** from DXGI's `DedicatedVideoMemory`; falls back to the registry - (`HardwareInformation.qwMemorySize`) for cards with >4 GB where DXGI may report a capped value. -5. **Resolves ACPI and PCI paths** via `CM_Get_DevNode_PropertyW` (location paths), formatted to match the - project's conventions (e.g. `\_SB_.PCI0.RP05.PXSX`, `PciRoot(0x0)/Pci(0x1C,0x5)/Pci(0x0,0x0)`). -6. **Fetches PCIe generation and lane width** via Configuration Manager device properties. +| Cap | Value | Why | +|-----|-------|-----| +| `WMI_MAX_FIELDS` | 16 | Max fields any hwprobe query uses today is 9 (`Win32_PhysicalMemory`). | +| `WMI_FIELD_LEN` | 512 | Covers PNPDeviceID paths and uint64 string forms. | +| `WMI_MAX_ROWS` | 64 | Covers memory modules, disks, NICs on any realistic machine. | -## Legacy bindings - -The following files belong to the **old** monolithic binding approach and are kept for components that have not yet -been migrated. They are marked with `# todo: refactor to new bindings` in the consuming code. Once all components -are migrated, these files can be deleted: - -``` -interops/win/legacy/ - constants.py # Win32 constants, GUIDs, status codes - structs.py # ctypes Structure mirrors (MONITORINFOEXA, DEVMODEA, etc.) - signatures.py # Loads hw_helper.dll, sets argtypes/restypes for all exports - -interops/win/ - hw_helper.hpp # Monolithic C++ header (all structs + enums) - hw_helper.cpp # Monolithic C++ source (GPU, audio, network, SMBIOS, WMI - all in one file) - dll/ - hw_helper.dll # Pre-built monolithic DLL -``` +Raising any cap is a recompile on both sides — the struct is the ABI. No +runtime resizing. -Components still using the legacy bindings: +## Trust boundary -- `core/windows/audio.py` -- `core/windows/baseboard.py` -- `core/windows/display.py` -- `core/windows/memory.py` -- `core/windows/network.py` -- `core/windows/storage.py` +`wmi_class`, `fields`, `namespace` are WMI identifiers, not free text. They +come from hardcoded literals in `core/windows/*.py`, never from end users. The +C++ side builds `SELECT f1,f2,... FROM ` with no escaping. If a future +caller ever passes user-supplied strings here, that caller must validate them — +do not push escaping into the C++ layer. -## Troubleshooting +## Status / scope -- **`device_info.dll not found`**: run the CMake build so the shared library is (re)generated in `bindings/`. -- **`get_gpu_info` returns -1**: verify that DXGI is available (Windows 10+ with a display driver installed). -- **VRAM shows 0 MB**: the registry fallback may not find a matching `DriverDesc`/`DriverVersion` entry. Check that - the GPU driver is properly installed. -- **PCIe gen/width shows 0**: the Configuration Manager property may not be exposed by all drivers. This is - driver-dependent and not a bug in the library. +- **In scope (this directory):** the WMI wrapper itself. +- **Out of scope (separate bindings, later):** audio (MMDevice), network (IP + Helper + SetupAPI), display (SetupAPI + EDID), baseboard (SMBIOS). These do + not go through WMI and are not served by this binding. +- **Not yet wired:** no `core/windows/*.py` consumer imports this yet, per the + rewrite plan. `memory.py` and `storage.py` are the first two consumers once + the greenlight is given. diff --git a/src/hwprobe/interops/win_new/__init__.py b/src/hwprobe/interops/win/__init__.py similarity index 100% rename from src/hwprobe/interops/win_new/__init__.py rename to src/hwprobe/interops/win/__init__.py diff --git a/src/hwprobe/interops/win/bindings/device_info.dll b/src/hwprobe/interops/win/bindings/device_info.dll deleted file mode 100644 index 6a0e045f41afa311812c93a5fe510608e04176ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2807237 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⁣*tGZ-ogDSdLV97C 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

oUbZq_@JV01Z#ksFwENZB=N83v< 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

?BPwgo2Aldlh
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�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�-V5KCfU^>+yBR^LU8Du+
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
RBM%0p!rxQF|JSb_ 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%0D!e>rpQRkFd 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Μ8y{R4jwzBvV{87V@OI{)kN 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 Dl=c(%poi#7S2g?YcY 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%0A|zuZcz0W-{$9u{cR*yf(=*7?}K`mJkY z9!51(K`08()ZPqN0Ke_HEd;YPd8Eve>7tHM?{$e3%~^|#VBmEDQK34GwbB`my|ehMedQRv_W zbKM=>w5S_sxk?RS3TD1#gg4YRzNX+5?Cghj=q+^(wG2za%WbE?kY8Ds;YD)*>cdFY zAtK9EeBg+Hc0S}F6kY*{;y^_)EUv*S*gD_q2eS#1f)kjkrxQRFOq@-}sL)yL4!pah z{wZB}EYC}F9x1%Z9`dRZ$MfMI<-u>OE7~T8@oWTE`8V2Cz6mHAF8;N3?-zkV9z?^0 zcxzq5iGb6vi(X#W@QQ%+jK=1Q`ejM=na3@syRlKvEJjL(E=nA|kD`H;n2kZva6#{n z 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 diff --git a/src/hwprobe/interops/win_new/bindings/wmi.py b/src/hwprobe/interops/win/bindings/wmi.py similarity index 100% rename from src/hwprobe/interops/win_new/bindings/wmi.py rename to src/hwprobe/interops/win/bindings/wmi.py diff --git a/src/hwprobe/interops/win_new/include/wmi.h b/src/hwprobe/interops/win/include/wmi.h similarity index 100% rename from src/hwprobe/interops/win_new/include/wmi.h rename to src/hwprobe/interops/win/include/wmi.h diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index 4c4277b..3242047 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -1,62 +1,47 @@ -#include "gpu_info.h" -#include +// Standalone CLI test for the WMI binding. Loads device_info.dll at runtime +// (same path the Python binding uses) so we exercise the real ABI. + +#include "wmi.h" #include -#include +#include +#include -typedef int (*get_gpu_info_ptr)(WinGPUProperties *, int); +typedef int (*get_wmi_data_ptr)(const char *, const char *const *, int, + const char *, WmiRow *, int); int main() { - // Try multiple paths to find the DLL: - // 1. Current directory - // 2. Relative to where it's built (cmake-build-debug/../bindings/device_info.dll) - // 3. Absolute "bindings/device_info.dll" from project root - HMODULE hLib = LoadLibraryA("bindings/device_info.dll"); + if (!hLib) hLib = LoadLibraryA("device_info.dll"); if (!hLib) { - hLib = LoadLibraryA("../bindings/device_info.dll"); - } - if (!hLib) { - hLib = LoadLibraryA("device_info.dll"); - } - - if (!hLib) { - DWORD err = GetLastError(); - printf("Error: Could not load device_info.dll (Error code: %lu)\n", err); + printf("Error: could not load device_info.dll (GetLastError=%lu)\n", GetLastError()); return 1; } - auto get_gpu_info_func = reinterpret_cast(GetProcAddress(hLib, "get_gpu_info")); - if (!get_gpu_info_func) { - printf("Error: Could not find get_gpu_info in device_info.dll\n"); + auto fn = reinterpret_cast( + GetProcAddress(hLib, "get_wmi_data")); + if (!fn) { + printf("Error: get_wmi_data not exported\n"); FreeLibrary(hLib); return 1; } - constexpr int MAX_GPUS = 8; - WinGPUProperties gpus[MAX_GPUS] = {}; + const char *fields[] = {"Name", "Manufacturer", "NumberOfCores", "NumberOfLogicalProcessors"}; + const int field_count = sizeof(fields) / sizeof(fields[0]); - int count = get_gpu_info_func(gpus, MAX_GPUS); - if (count < 0) { - printf("Error: get_gpu_info() failed\n"); + WmiRow rows[WMI_MAX_ROWS] = {}; + int n = fn("Win32_Processor", fields, field_count, "ROOT\\CIMV2", rows, WMI_MAX_ROWS); + if (n < 0) { + printf("Error: get_wmi_data returned -1\n"); FreeLibrary(hLib); return 1; } - printf("Found %d GPU(s):\n\n", count); - for (int i = 0; i < count; ++i) { - const auto &g = gpus[i]; - printf("GPU %d:\n", i); - printf(" Name: %s\n", g.name); - printf(" Manufacturer: %s\n", g.manufacturer); - printf(" Vendor ID: 0x%04X\n", g.vendor_id); - printf(" Device ID: 0x%04X\n", g.device_id); - printf(" Subsystem Vendor: 0x%04X\n", g.subsystem_vendor_id); - printf(" Subsystem Device: 0x%04X\n", g.subsystem_device_id); - printf(" VRAM: %llu MB\n", g.vram_mb); - printf(" PCIe Gen: %d\n", g.pcie_gen); - printf(" PCIe Width: x%d\n", g.pcie_width); - if (g.acpi_path[0]) printf(" ACPI Path: %s\n", g.acpi_path); - if (g.pci_path[0]) printf(" PCI Path: %s\n", g.pci_path); + printf("Found %d CPU(s):\n\n", n); + for (int i = 0; i < n; ++i) { + printf("CPU %d:\n", i); + for (int f = 0; f < field_count; ++f) { + printf(" %-26s %s\n", fields[f], rows[i].values[f]); + } printf("\n"); } diff --git a/src/hwprobe/interops/win_new/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp similarity index 100% rename from src/hwprobe/interops/win_new/src/wmi.cpp rename to src/hwprobe/interops/win/src/wmi.cpp diff --git a/src/hwprobe/interops/win_new/README.md b/src/hwprobe/interops/win_new/README.md deleted file mode 100644 index 5715481..0000000 --- a/src/hwprobe/interops/win_new/README.md +++ /dev/null @@ -1,119 +0,0 @@ -# WinWmi (staging: `interops/win_new/`) - -New WMI wrapper binding, intended to replace the legacy `GetWmiInfo` text-format -export in `hw_helper.dll`. This is the staging directory; once `core/windows/` -consumers are migrated, this merges into `interops/win/` (see -`windows-rewrite-llm-plan.md` §5). - -> The brief said `win-new`, but a hyphen is not importable in Python, so the -> directory is `win_new` (underscore). Temporary either way. - -## What it exports - -One C++ function, one Python function. - -```c -// include/wmi.h -int get_wmi_data(const char *wmi_class, - const char *const *fields, int field_count, - const char *namespace_str, - WmiRow *out, int max_rows); -``` - -```python -# bindings/wmi.py -def get_wmi_data( - wmi_class: str, - fields: list[str], - namespace: str = r"ROOT\CIMV2", -) -> list[dict[str, str]]: ... -``` - -Each row comes back as a `dict` keyed by the requested field names, in order. -No `|`/`=`/`\n` delimiter parsing — each field is its own fixed UTF-8 buffer on -the C side. Missing/null properties are empty strings. - -## Why this exists - -The legacy `GetWmiInfo` returns pipe-delimited text that breaks when a value -contains `|`, `=`, or `\n` (PNPDeviceID paths do). It is also `void` — failure -is indistinguishable from "no rows". This binding fixes both: structured rows -and a `-1` error return. - -## Requirements - -- Windows 10+ -- Visual Studio 2019+ / MSVC Build Tools (C++17) -- CMake 3.21+ -- Windows SDK (for COM/WMI headers: `ole32`, `oleaut32`, `wbemuuid`) - -## Build - -```sh -cmake -S . -B build -cmake --build build --config Release -``` - -Outputs: - -- `bindings/device_info.dll` — loaded by `bindings/wmi.py`. -- `build/Release/WinWmiTest.exe` — standalone CLI self-test. - -## Run - -C++ self-test (queries `Win32_Processor`): - -```sh -.\build\Release\WinWmiTest.exe -``` - -Python self-check (same query, via ctypes): - -```sh -python -m hwprobe.interops.win_new.bindings.wmi -``` - -Programmatic use (the way `core/windows/*.py` will call it once migrated): - -```python -from hwprobe.interops.win_new.bindings.wmi import get_wmi_data - -rows = get_wmi_data( - "MSFT_PhysicalDisk", - ["FriendlyName", "MediaType", "BusType", "Size", "Manufacturer", "Model"], - namespace=r"ROOT\Microsoft\Windows\Storage", -) -for r in rows: - print(r["FriendlyName"], r["Size"]) -``` - -## ABI caps - -Defined in `include/wmi.h`, mirrored in `bindings/wmi.py`: - -| Cap | Value | Why | -|-----|-------|-----| -| `WMI_MAX_FIELDS` | 16 | Max fields any hwprobe query uses today is 9 (`Win32_PhysicalMemory`). | -| `WMI_FIELD_LEN` | 512 | Covers PNPDeviceID paths and uint64 string forms. | -| `WMI_MAX_ROWS` | 64 | Covers memory modules, disks, NICs on any realistic machine. | - -Raising any cap is a recompile on both sides — the struct is the ABI. No -runtime resizing. - -## Trust boundary - -`wmi_class`, `fields`, `namespace` are WMI identifiers, not free text. They -come from hardcoded literals in `core/windows/*.py`, never from end users. The -C++ side builds `SELECT f1,f2,... FROM ` with no escaping. If a future -caller ever passes user-supplied strings here, that caller must validate them — -do not push escaping into the C++ layer. - -## Status / scope - -- **In scope (this directory):** the WMI wrapper itself. -- **Out of scope (separate bindings, later):** audio (MMDevice), network (IP - Helper + SetupAPI), display (SetupAPI + EDID), baseboard (SMBIOS). These do - not go through WMI and are not served by this binding. -- **Not yet wired:** no `core/windows/*.py` consumer imports this yet, per the - rewrite plan. `memory.py` and `storage.py` are the first two consumers once - the greenlight is given. diff --git a/src/hwprobe/interops/win_new/main.cpp b/src/hwprobe/interops/win_new/main.cpp deleted file mode 100644 index 3242047..0000000 --- a/src/hwprobe/interops/win_new/main.cpp +++ /dev/null @@ -1,50 +0,0 @@ -// Standalone CLI test for the WMI binding. Loads device_info.dll at runtime -// (same path the Python binding uses) so we exercise the real ABI. - -#include "wmi.h" -#include -#include -#include - -typedef int (*get_wmi_data_ptr)(const char *, const char *const *, int, - const char *, WmiRow *, int); - -int main() { - HMODULE hLib = LoadLibraryA("bindings/device_info.dll"); - if (!hLib) hLib = LoadLibraryA("device_info.dll"); - if (!hLib) { - printf("Error: could not load device_info.dll (GetLastError=%lu)\n", GetLastError()); - return 1; - } - - auto fn = reinterpret_cast( - GetProcAddress(hLib, "get_wmi_data")); - if (!fn) { - printf("Error: get_wmi_data not exported\n"); - FreeLibrary(hLib); - return 1; - } - - const char *fields[] = {"Name", "Manufacturer", "NumberOfCores", "NumberOfLogicalProcessors"}; - const int field_count = sizeof(fields) / sizeof(fields[0]); - - WmiRow rows[WMI_MAX_ROWS] = {}; - int n = fn("Win32_Processor", fields, field_count, "ROOT\\CIMV2", rows, WMI_MAX_ROWS); - if (n < 0) { - printf("Error: get_wmi_data returned -1\n"); - FreeLibrary(hLib); - return 1; - } - - printf("Found %d CPU(s):\n\n", n); - for (int i = 0; i < n; ++i) { - printf("CPU %d:\n", i); - for (int f = 0; f < field_count; ++f) { - printf(" %-26s %s\n", fields[f], rows[i].values[f]); - } - printf("\n"); - } - - FreeLibrary(hLib); - return 0; -} diff --git a/src/hwprobe/interops/win_new/CMakeLists.txt b/src/hwprobe/interops/win_old/CMakeLists.txt similarity index 63% rename from src/hwprobe/interops/win_new/CMakeLists.txt rename to src/hwprobe/interops/win_old/CMakeLists.txt index ce8358a..b7f78a1 100644 --- a/src/hwprobe/interops/win_new/CMakeLists.txt +++ b/src/hwprobe/interops/win_old/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.21) -project(WinWmi LANGUAGES CXX) +project(WinDeviceInfo LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) @@ -11,10 +11,11 @@ endif () # ---- Shared library (DLL) ---- add_library(device_info SHARED - src/wmi.cpp + src/win_helpers.cpp + src/gpu_info.cpp ) -# Static runtime to avoid dependency issues when loaded by Python. +# Force static linking of runtime libraries to avoid dependency issues in Python target_link_options(device_info PRIVATE -static-libgcc -static-libstdc++ -static) target_include_directories(device_info @@ -23,12 +24,13 @@ target_include_directories(device_info target_link_libraries(device_info PRIVATE - ole32 - oleaut32 - wbemuuid + dxgi + setupapi + cfgmgr32 + advapi32 ) -# Drop the DLL next to the Python binding. +# Output the DLL next to the Python binding set_target_properties(device_info PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings @@ -37,12 +39,11 @@ set_target_properties(device_info PROPERTIES ) # ---- Standalone test executable ---- -add_executable(WinWmiTest main.cpp) +add_executable(WinDeviceInfo main.cpp) -target_include_directories(WinWmiTest +target_include_directories(WinDeviceInfo PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include ) -# Load the DLL at runtime like the Python binding does, so the test exe does -# not need a matching import lib. -target_compile_definitions(WinWmiTest PRIVATE WINWMI_TEST_RUNTIME_LOAD) +# No longer linking directly to device_info to allow dynamic loading from custom path +# target_link_libraries(WinDeviceInfo PRIVATE device_info) diff --git a/src/hwprobe/interops/win_old/README.md b/src/hwprobe/interops/win_old/README.md new file mode 100644 index 0000000..587dd0e --- /dev/null +++ b/src/hwprobe/interops/win_old/README.md @@ -0,0 +1,111 @@ +# WinDeviceInfo + +A Windows utility and shared library that enumerates GPU hardware via DXGI and the Windows Configuration Manager API. + +The native library lives in `src/` and `include/`, and is exposed via a command-line tester (`main.cpp`). +Also powers a thin Python `ctypes` binding in `bindings/gpu_info.py`. + +This is intended to be used via each hardware component's respective python interface, like `gpu_info.py`. The CLI tool +is primarily for testing and demonstration purposes, but it can be used directly if desired. + +Full disclosure: A big part of this C++ connector was written by Claude. +If you are someone with more know-how, and find lapses in this code, we'd be more than happy to welcome Pull Requests. + +## Requirements + +- Windows 10 or newer +- Visual Studio 2019+ or MSVC Build Tools (C++17 support required) +- CMake 3.21+ +- Python 3.7+ (for the `gpu_info.py` binding) - Assuming you want to compile this to use with HWProbe. +- Windows SDK (for DXGI, SetupAPI, CfgMgr32 headers) + +## Build + +```sh +cmake -S . -B build +cmake --build build --config Release +``` + +- `WinDeviceInfo.exe` (the CLI tool) is emitted to `build/Release/WinDeviceInfo.exe`. +- `device_info.dll` is copied automatically into `bindings/` for the Python binding. +- The default build type is **Release**. Pass `--config Debug` to the build command to include debug symbols. + +## CLI Usage + +```sh +.\build\Release\WinDeviceInfo.exe +``` + +The tool prints GPU info, and exits with code `0` when enumeration succeeds, or `1` if the underlying DXGI call fails. + +## Python Binding + +After building the project once (so that `bindings/device_info.dll` exists), you can inspect GPUs from Python: + +```sh +cd bindings +python gpu_info.py +``` + +or programmatically: + +```python +from gpu_info import get_gpu_info + +for idx, gpu in enumerate(get_gpu_info()): + print(f"GPU {idx}:") + print(gpu) +``` + +On import, the script loads the colocated `device_info.dll`; ensure you rebuild the CMake project whenever you make +changes to the native code. + +## What the native library does + +For each GPU discovered via DXGI: + +1. **Enumerates adapters** using `IDXGIFactory1::EnumAdapters1`, skipping software/virtual adapters. +2. **Resolves the PNP Device ID** by matching DXGI's VendorId/DeviceId/SubSysId against SetupAPI's display class. +3. **Parses vendor/device/subsystem IDs** from the PNP device ID string. +4. **Fetches VRAM** from DXGI's `DedicatedVideoMemory`; falls back to the registry + (`HardwareInformation.qwMemorySize`) for cards with >4 GB where DXGI may report a capped value. +5. **Resolves ACPI and PCI paths** via `CM_Get_DevNode_PropertyW` (location paths), formatted to match the + project's conventions (e.g. `\_SB_.PCI0.RP05.PXSX`, `PciRoot(0x0)/Pci(0x1C,0x5)/Pci(0x0,0x0)`). +6. **Fetches PCIe generation and lane width** via Configuration Manager device properties. + +## Legacy bindings + +The following files belong to the **old** monolithic binding approach and are kept for components that have not yet +been migrated. They are marked with `# todo: refactor to new bindings` in the consuming code. Once all components +are migrated, these files can be deleted: + +``` +interops/win/legacy/ + constants.py # Win32 constants, GUIDs, status codes + structs.py # ctypes Structure mirrors (MONITORINFOEXA, DEVMODEA, etc.) + signatures.py # Loads hw_helper.dll, sets argtypes/restypes for all exports + +interops/win/ + hw_helper.hpp # Monolithic C++ header (all structs + enums) + hw_helper.cpp # Monolithic C++ source (GPU, audio, network, SMBIOS, WMI - all in one file) + dll/ + hw_helper.dll # Pre-built monolithic DLL +``` + +Components still using the legacy bindings: + +- `core/windows/audio.py` +- `core/windows/baseboard.py` +- `core/windows/display.py` +- `core/windows/memory.py` +- `core/windows/network.py` +- `core/windows/storage.py` + +## Troubleshooting + +- **`device_info.dll not found`**: run the CMake build so the shared library is (re)generated in `bindings/`. +- **`get_gpu_info` returns -1**: verify that DXGI is available (Windows 10+ with a display driver installed). +- **VRAM shows 0 MB**: the registry fallback may not find a matching `DriverDesc`/`DriverVersion` entry. Check that + the GPU driver is properly installed. +- **PCIe gen/width shows 0**: the Configuration Manager property may not be exposed by all drivers. This is + driver-dependent and not a bug in the library. diff --git a/src/hwprobe/interops/win_new/bindings/__init__.py b/src/hwprobe/interops/win_old/bindings/__init__.py similarity index 100% rename from src/hwprobe/interops/win_new/bindings/__init__.py rename to src/hwprobe/interops/win_old/bindings/__init__.py diff --git a/src/hwprobe/interops/win/bindings/gpu_info.py b/src/hwprobe/interops/win_old/bindings/gpu_info.py similarity index 100% rename from src/hwprobe/interops/win/bindings/gpu_info.py rename to src/hwprobe/interops/win_old/bindings/gpu_info.py diff --git a/src/hwprobe/interops/win/hw_helper.cpp b/src/hwprobe/interops/win_old/hw_helper.cpp similarity index 100% rename from src/hwprobe/interops/win/hw_helper.cpp rename to src/hwprobe/interops/win_old/hw_helper.cpp diff --git a/src/hwprobe/interops/win/hw_helper.hpp b/src/hwprobe/interops/win_old/hw_helper.hpp similarity index 100% rename from src/hwprobe/interops/win/hw_helper.hpp rename to src/hwprobe/interops/win_old/hw_helper.hpp diff --git a/src/hwprobe/interops/win/include/gpu_info.h b/src/hwprobe/interops/win_old/include/gpu_info.h similarity index 100% rename from src/hwprobe/interops/win/include/gpu_info.h rename to src/hwprobe/interops/win_old/include/gpu_info.h diff --git a/src/hwprobe/interops/win/include/win_helpers.h b/src/hwprobe/interops/win_old/include/win_helpers.h similarity index 100% rename from src/hwprobe/interops/win/include/win_helpers.h rename to src/hwprobe/interops/win_old/include/win_helpers.h diff --git a/src/hwprobe/interops/win/legacy/constants.py b/src/hwprobe/interops/win_old/legacy/constants.py similarity index 100% rename from src/hwprobe/interops/win/legacy/constants.py rename to src/hwprobe/interops/win_old/legacy/constants.py diff --git a/src/hwprobe/interops/win/legacy/signatures.py b/src/hwprobe/interops/win_old/legacy/signatures.py similarity index 100% rename from src/hwprobe/interops/win/legacy/signatures.py rename to src/hwprobe/interops/win_old/legacy/signatures.py diff --git a/src/hwprobe/interops/win/legacy/structs.py b/src/hwprobe/interops/win_old/legacy/structs.py similarity index 100% rename from src/hwprobe/interops/win/legacy/structs.py rename to src/hwprobe/interops/win_old/legacy/structs.py diff --git a/src/hwprobe/interops/win_old/main.cpp b/src/hwprobe/interops/win_old/main.cpp new file mode 100644 index 0000000..4c4277b --- /dev/null +++ b/src/hwprobe/interops/win_old/main.cpp @@ -0,0 +1,65 @@ +#include "gpu_info.h" +#include +#include +#include + +typedef int (*get_gpu_info_ptr)(WinGPUProperties *, int); + +int main() { + // Try multiple paths to find the DLL: + // 1. Current directory + // 2. Relative to where it's built (cmake-build-debug/../bindings/device_info.dll) + // 3. Absolute "bindings/device_info.dll" from project root + + HMODULE hLib = LoadLibraryA("bindings/device_info.dll"); + if (!hLib) { + hLib = LoadLibraryA("../bindings/device_info.dll"); + } + if (!hLib) { + hLib = LoadLibraryA("device_info.dll"); + } + + if (!hLib) { + DWORD err = GetLastError(); + printf("Error: Could not load device_info.dll (Error code: %lu)\n", err); + return 1; + } + + auto get_gpu_info_func = reinterpret_cast(GetProcAddress(hLib, "get_gpu_info")); + if (!get_gpu_info_func) { + printf("Error: Could not find get_gpu_info in device_info.dll\n"); + FreeLibrary(hLib); + return 1; + } + + constexpr int MAX_GPUS = 8; + WinGPUProperties gpus[MAX_GPUS] = {}; + + int count = get_gpu_info_func(gpus, MAX_GPUS); + if (count < 0) { + printf("Error: get_gpu_info() failed\n"); + FreeLibrary(hLib); + return 1; + } + + printf("Found %d GPU(s):\n\n", count); + for (int i = 0; i < count; ++i) { + const auto &g = gpus[i]; + printf("GPU %d:\n", i); + printf(" Name: %s\n", g.name); + printf(" Manufacturer: %s\n", g.manufacturer); + printf(" Vendor ID: 0x%04X\n", g.vendor_id); + printf(" Device ID: 0x%04X\n", g.device_id); + printf(" Subsystem Vendor: 0x%04X\n", g.subsystem_vendor_id); + printf(" Subsystem Device: 0x%04X\n", g.subsystem_device_id); + printf(" VRAM: %llu MB\n", g.vram_mb); + printf(" PCIe Gen: %d\n", g.pcie_gen); + printf(" PCIe Width: x%d\n", g.pcie_width); + if (g.acpi_path[0]) printf(" ACPI Path: %s\n", g.acpi_path); + if (g.pci_path[0]) printf(" PCI Path: %s\n", g.pci_path); + printf("\n"); + } + + FreeLibrary(hLib); + return 0; +} diff --git a/src/hwprobe/interops/win/src/gpu_info.cpp b/src/hwprobe/interops/win_old/src/gpu_info.cpp similarity index 100% rename from src/hwprobe/interops/win/src/gpu_info.cpp rename to src/hwprobe/interops/win_old/src/gpu_info.cpp diff --git a/src/hwprobe/interops/win/src/win_helpers.cpp b/src/hwprobe/interops/win_old/src/win_helpers.cpp similarity index 100% rename from src/hwprobe/interops/win/src/win_helpers.cpp rename to src/hwprobe/interops/win_old/src/win_helpers.cpp From 7243b8a89093067e598960a6f2882bcfc48e2f6e Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 18:36:09 +0530 Subject: [PATCH 03/33] Update wmi binding --- src/hwprobe/interops/win/README.md | 13 +++++------- src/hwprobe/interops/win/bindings/wmi.py | 6 +++--- src/hwprobe/interops/win/src/wmi.cpp | 26 ++++++++++++++++++++---- 3 files changed, 30 insertions(+), 15 deletions(-) diff --git a/src/hwprobe/interops/win/README.md b/src/hwprobe/interops/win/README.md index 5715481..1f4d24a 100644 --- a/src/hwprobe/interops/win/README.md +++ b/src/hwprobe/interops/win/README.md @@ -1,13 +1,10 @@ -# WinWmi (staging: `interops/win_new/`) +# WinWmi (`interops/win/`) New WMI wrapper binding, intended to replace the legacy `GetWmiInfo` text-format -export in `hw_helper.dll`. This is the staging directory; once `core/windows/` -consumers are migrated, this merges into `interops/win/` (see +export in `hw_helper.dll` (now in `interops/win_old/`). Once `core/windows/` +consumers are migrated, the old `win_old/` directory can be deleted (see `windows-rewrite-llm-plan.md` §5). -> The brief said `win-new`, but a hyphen is not importable in Python, so the -> directory is `win_new` (underscore). Temporary either way. - ## What it exports One C++ function, one Python function. @@ -70,13 +67,13 @@ C++ self-test (queries `Win32_Processor`): Python self-check (same query, via ctypes): ```sh -python -m hwprobe.interops.win_new.bindings.wmi +python -m hwprobe.interops.win.bindings.wmi ``` Programmatic use (the way `core/windows/*.py` will call it once migrated): ```python -from hwprobe.interops.win_new.bindings.wmi import get_wmi_data +from hwprobe.interops.win.bindings.wmi import get_wmi_data rows = get_wmi_data( "MSFT_PhysicalDisk", diff --git a/src/hwprobe/interops/win/bindings/wmi.py b/src/hwprobe/interops/win/bindings/wmi.py index d7e4801..defb7bd 100644 --- a/src/hwprobe/interops/win/bindings/wmi.py +++ b/src/hwprobe/interops/win/bindings/wmi.py @@ -2,7 +2,7 @@ wmi.py - Python ctypes binding for the new WMI wrapper in device_info.dll. Public API: - from hwprobe.interops.win_new.bindings.wmi import get_wmi_data + from hwprobe.interops.win.bindings.wmi import get_wmi_data rows = get_wmi_data("Win32_PhysicalMemory", ["BankLabel", "Capacity", "Manufacturer"], namespace=r"ROOT\\CIMV2") @@ -13,7 +13,7 @@ null properties come back as empty strings. Raises RuntimeError if the C++ side returns -1 (COM/WMI failure). -Source: interops/win_new/include/wmi.h and interops/win_new/src/wmi.cpp. +Source: interops/win/include/wmi.h and interops/win/src/wmi.cpp. """ import ctypes @@ -112,7 +112,7 @@ def get_wmi_data( # ---- quick self-check ---- # ponytail: one runnable check, no test framework. Fails if COM/WMI/encoding -# is broken. Run with: python -m hwprobe.interops.win_new.bindings.wmi +# is broken. Run with: python -m hwprobe.interops.win.bindings.wmi if __name__ == "__main__": rows = get_wmi_data("Win32_Processor", ["Name", "Manufacturer"]) print(f"Found {len(rows)} CPU(s):\n") diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index bf45369..9352bf7 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -9,11 +9,14 @@ #include #include -#include +// #pragma comment(lib, ...) is MSVC-only; mingw ignores it. Linking is +// handled by CMakeLists.txt (target_link_libraries ... ole32 oleaut32 wbemuuid). +#ifdef _MSC_VER #pragma comment(lib, "ole32.lib") #pragma comment(lib, "oleaut32.lib") #pragma comment(lib, "wbemuuid.lib") +#endif // ---- VARIANT -> fixed UTF-8 slot ---- // Writes a null-terminated UTF-8 rendering of vt into dst[0..dst_size-1]. @@ -97,9 +100,22 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, return -1; } + // ConnectServer signature: + // HRESULT ConnectServer(BSTR strNetworkResource, BSTR strUser, + // BSTR strPassword, BSTR strLocale, + // LONG lSecurityFlags, BSTR strAuthority, + // IWbemContext *pCtx, IWbemServices **ppNamespace) + // lSecurityFlags is LONG — pass 0, not nullptr. nullptr won't convert to + // long under mingw (MSVC tolerates it via NULL==0, mingw does not). IWbemServices *pSvc = nullptr; - hr = pLoc->ConnectServer(_bstr_t(namespace_str), nullptr, nullptr, 0, - nullptr, 0, 0, &pSvc); + hr = pLoc->ConnectServer(_bstr_t(namespace_str), + nullptr, // strUser + nullptr, // strPassword + nullptr, // strLocale + 0, // lSecurityFlags + nullptr, // strAuthority + nullptr, // pCtx + &pSvc); // ppNamespace if (FAILED(hr)) { pLoc->Release(); if (did_init) CoUninitialize(); @@ -119,8 +135,10 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, wql += " FROM "; wql += wmi_class; + // _bstr_t (not bstr_t — the lowercase typedef is MSVC-only, mingw does + // not define it). _bstr_t is the actual class in both MSVC and mingw-w64. IEnumWbemClassObject *pEnum = nullptr; - hr = pSvc->ExecQuery(bstr_t("WQL"), bstr_t(wql.c_str()), + hr = pSvc->ExecQuery(_bstr_t("WQL"), _bstr_t(wql.c_str()), WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, nullptr, &pEnum); if (FAILED(hr)) { From 978070951c765298179c512e5e508cd6132cc631 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 18:40:09 +0530 Subject: [PATCH 04/33] Update wmi.cpp --- src/hwprobe/interops/win/src/wmi.cpp | 36 +++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 9352bf7..408c939 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -5,8 +5,8 @@ #include #include +#include #include -#include #include @@ -18,6 +18,29 @@ #pragma comment(lib, "wbemuuid.lib") #endif +// ---- RAII BSTR from UTF-8 ---- +// _bstr_t's const-char* constructor calls _com_util::ConvertStringToBSTR, +// which lives in libcomsupp — a separate lib MSVC auto-links via pragma and +// mingw does not (and whose name varies across mingw distributions). Roll the +// one thing we need: SysAllocString from a wide string. No comsupp, no comdef. +class Bstr { +public: + explicit Bstr(const char *utf8) { + if (!utf8 || !*utf8) { b_ = SysAllocString(L""); return; } + int wlen = MultiByteToWideChar(CP_UTF8, 0, utf8, -1, nullptr, 0); + if (wlen <= 0) { b_ = nullptr; return; } + std::wstring w(wlen - 1, L'\0'); + MultiByteToWideChar(CP_UTF8, 0, utf8, -1, w.data(), wlen); + b_ = SysAllocString(w.c_str()); + } + ~Bstr() { if (b_) SysFreeString(b_); } + Bstr(const Bstr &) = delete; + Bstr &operator=(const Bstr &) = delete; + operator BSTR() const { return b_; } +private: + BSTR b_; +}; + // ---- VARIANT -> fixed UTF-8 slot ---- // Writes a null-terminated UTF-8 rendering of vt into dst[0..dst_size-1]. // Missing/null/empty -> "". Never overflows. @@ -108,7 +131,8 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, // lSecurityFlags is LONG — pass 0, not nullptr. nullptr won't convert to // long under mingw (MSVC tolerates it via NULL==0, mingw does not). IWbemServices *pSvc = nullptr; - hr = pLoc->ConnectServer(_bstr_t(namespace_str), + Bstr nsBstr(namespace_str); + hr = pLoc->ConnectServer(nsBstr, nullptr, // strUser nullptr, // strPassword nullptr, // strLocale @@ -135,10 +159,9 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, wql += " FROM "; wql += wmi_class; - // _bstr_t (not bstr_t — the lowercase typedef is MSVC-only, mingw does - // not define it). _bstr_t is the actual class in both MSVC and mingw-w64. IEnumWbemClassObject *pEnum = nullptr; - hr = pSvc->ExecQuery(_bstr_t("WQL"), _bstr_t(wql.c_str()), + Bstr lang("WQL"), query(wql.c_str()); + hr = pSvc->ExecQuery(lang, query, WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, nullptr, &pEnum); if (FAILED(hr)) { @@ -163,7 +186,8 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, for (int i = 0; i < field_count; ++i) { VARIANT vtProp; VariantInit(&vtProp); - hr = pObj->Get(_bstr_t(fields[i]), 0, &vtProp, nullptr, nullptr); + Bstr field(fields[i]); + hr = pObj->Get(field, 0, &vtProp, nullptr, nullptr); if (SUCCEEDED(hr)) { VariantToUtf8Slot(vtProp, row.values[i], WMI_FIELD_LEN); } else { From d081f14aa17e20cdef0f9d68c418a1649250c27c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 1 Aug 2026 13:12:45 +0000 Subject: [PATCH 05/33] build: update Windows native binding [skip ci] --- .../interops/win/bindings/device_info.dll | Bin 0 -> 680802 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/hwprobe/interops/win/bindings/device_info.dll diff --git a/src/hwprobe/interops/win/bindings/device_info.dll b/src/hwprobe/interops/win/bindings/device_info.dll new file mode 100644 index 0000000000000000000000000000000000000000..d180dee4317e0a77b706e8c0908506378a6f5500 GIT binary patch literal 680802 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

n3^=mF=IrN+$n+Qvku|%p(QJdq$ zlsyO#|4f zL0?4jCH<7TA!0ap=M@>>y($Sx0$TO?Mq#+){M!gf>a!r5V#k)kR%h(0m*buFi?dK%$_f_}z>Sjfz)mEq0Y+V5s0dM2%u6`P7ExfD^58;CMm?j(@E|~&P z!OO={HCg!t;w3=}H?>m|Kfw>GSNEu%Sm{8#6iUlX_??pj<3eqh1aFY52zKw0U>dkw z>I1&h%Qa<+a{m?xYpAXCo{PhudqQp5)fZyJ<0+&EDJwSnW)7_NyBphgaDJ`*Tmj{n zBot<-dP;^bka+=kHO7AbE|&e0fRaph7USalVktEy!_yTT^AMQ2V=#MA;+Q%BFpp~# z!X)_}NpUf*!Qxt@vRrJ42&Y-36o9%ORP)EC zV$_$*q(iPBZU}v(M}YBQ6d*CEBu|~WMTtIze((fIsaSL35Iu&t8FeekQ=;EM zpVsA}2B_-CJ0hTL1t_b;Hlu>nt>Ji@y};Q@RnXR5M!;AIhzJZr7_drY8k*IO#sfK! zA6~Y`3}J#b2!fzLqyXPP5p)LyY4mzf+hi;Xd<)fBrmV;~hNH-pC`Pzy`e@?k(tmcp%&eNZMBKP@Lpt&Jwc=9+24FLrrhZfO!Xq zRBO-8WJVC|CqX~}`OJ6mTel!FmU#`59~x{ZQg*@9(o*AmzX_hSVY(bJ$t+nMXEPet z%}&5P(SmtP7chSVScLh21Lo7Ts2n_`5axU|_Jr&Eh(YpAbE5}C60F945l^SMntoKX zaf>j`%C3-YRX9t+QIc?8LWm(zt+!Pz!vW_?%mHQOe{9}{si9hBzp=|4blPLd1^4uA zT(;V}#gdBw9229Qc7=DDYGork(8A&#LKni4<3th;sTi!t4Hl30GxlJ&?q@wNO|*W` z`MAIJm`QIE_-gwxxYzjoS~1$1m+hIAel-&USRxh{yq3SrZo@3ez7k{@29mjvwFFWb z;OPWXg;uXmB_5aC5IBD{SvY_9;jv$P(_~V)t#8V;7ITl|zK$8jW&uj%`X{1BW^Ur1 zB4Uy;p@^$WCI=?iG_GvUhC^NGm zdt!ZIep`V|Rzs}pH6=<{*>)!25WM&%xaG}XF^UOsrag*yC`YM82ST|CjDIf>vj;88 zZG3%ye0Ynv!Fq)Rda-=yddrEtb~U%5csvCv7~VQ3^5&?79)g`w;i=W8cI4JF3Ada=afd^96+ogzr*T-bl zQODBy?p)dY8xoWf{4VR~FgrGcCd5)iQDAUY;$R9U)dg^NmL^N(5D-$FA?l*iY-ev? zFmt})1AMQ3UEU0yqL5!6-H9Vrk4piGtu8zqXo0G0(91&oBE2%@Liz zTRfLo@f)u`FRL5@Ed3L7 zHc@y&fO8D?K%HY`X3K2j9=O9^FxrfA&Px~@jA9hl5X{?zOoT`az|0cn<1j>9?T(C5 zXdfPhfcs#Ss^NRGpt53Uxe@faF9j1w?@w-c`ipAsqf)e zXF(w%W9LEw0Hc+{G3<#@!Lqlp(*|D3;_%A#OpscM{2d#b9lDw5N$CbmBG7HhNY8Hy zvo~nlFk{va7%i97{n3b&r7M4m@n+>$hr z!)nPNq|WA1t{1aS26$%Gk{{)(BQoB6A4OKK-C)u%!l+wvQfh93_x)3W>4;mC*a6oWtY^0%3VF3A(9Cx54)Z zcx6RTk>h607iz%9y)c3Makz?)aNzE^be!MNCI0_76Qnvq{GaI(e}D0tN&F`O`~mQv zj@FX)<4ODO@dx0}^uG^^=1B4XfPB@7{wes+2a_ED|3}bT;(r^i4gvoz=|7BCB_o(2T-Wsgx zSf+EJ#-Md5#Fq35xt0eBp(<;|vd02}u6XDjZ%yAs7emnnfy?0D9EdTOIsZ&GliNCx z<4!03f|=wL_}mTf*5YR{4%Q9*-#ZO$4@Q5OEI2Jfj3z}1(HzHX8)6;6NWtY$N?oa- zh3Fx{Li2#Ty=2V<&8hNjbuBC@Tc^{$II!K((}Oi>PTmY*ZA8DYO{OSLNNlgm1vXUo zd!MJe*VzT5EC;dp&KOSu+KRC>+ZN2BxQbun;D*DxJS6^~gWdXr(!UGR+xq{JfnD)V ziv0Em_yqA&_5T>Omii|TS4XOUo;sx){y7N#uN>1Y{(gWz0RFe2wZwlKu8tJ{-3+Z9 zjQ#yCH~7Z@{s8!wqP67z6MqK&!+r+-Yn5*Ce*<}T2f+V&w3hgf#nqAW z&m44cr2PNMQQhL-|G@Y^h}IJS0IrS{|EKYK-I3xypnLo)0R8~~sGoUhFWB?D(tdJU{Q9uIy(&06Fbvdh<9{SsHPca`bSQGClf2>?SwGM>=Ld8UN{i{tHjSsE^ox zS_xux#ltC+|0Xg|lao*Xi9U#`FW@Pvj?mdNc*VKHyoMRyNOA!j3Ah%5Z7{!g$@#s@ zSkSrQBgdySMD0bg_9F8NWRLlgB_?CXe*L#}Q9L3>gWehbLR`wPiFlap58=%@KfbYq zCX6X-TZ7k`KVsXg7R1LZt`j`r{prfG?+o%KPTJTgPgdX217E-ySSdb(h>NMX$YRM1 zTrg>VU}Z%t<7mGXyvBpsNZvsAAc6?HBLxlTVBJMWf5Hnm`DhdV(jEW68GDbZ^ z;F?e19oY`7@j+@oh3%N*5;?~h>lB2$HwS-Vjzg9Ojp~Uk4~n=9?zybjjE9<@Ek#`DIGnB3PNq6zLe)v?TlYb8{{x+sd9`F~ZtRH{-#L2bx`jMEo*zm715JtR>p=8In z&g8yi_v@b@z>ggNMd-Qn93WKblsa=qNBptDGY^U$s-HjhNT^x;`f4smfXN^JGaiL) z6A}lUmne}|27FR&pA{@hu91!fGN}&7^Wah5g>0{_>+Ur~DuK`g>6S zr-KUE^`TP*(EqUp=b;a0xjZ-16i*6rY0dfRr8UoGf{o25(B5fy$-SR1@x3$S4%$Hp zw)g}^@v|NI6N&FHbjiQNkdSty^S=;Xb;G}JAp0z3{>AqZW=_J!34GX1ACL^cuqZ(n zHgyMAR}m!#n&=g(Fp7vLowDTznnDqi5=z;5-&?tcUOBb2|j zl%G!Pe~J$o1NapBCmH3b1lIQv>+bbOm;5um|B>_0Q1sgw{}lb_0{9gCsXxRqFU?2- zhYryRqw7SCiN7Ux*^~4Hh$SZp9}#!O$2lhH0GEffe>CjR_Y&RA}a_h(UtQ;(#gHYzwa9dEMIoTaO(7#a-f`!ap&9Pr*Nl>75BotB7g$@(;kB z^EZb54E$SLyQTjd?;a5U`_NiadLgb30sk)b*Y&-QTz~cH9)BLJl|p}+cNwks;9Z31 zXV7lq!&=xapZN&#%{K`1r-e$-%J&tY^f?*{@;FwM*?GNq$=pl4$BT5r?SB29EbXnN z_2bo^D}lXGfg>=i4R_=6Aq@76aTm9;)5w+Yfa7ArFBab_7ZF!P5!2#DU28#y|J0@a z2rPH#j?IVX`>n-Gt)2CM2gB(sm`cfom-!1x7XAg^_p}yXT*WVR48f*fck(yqUq>!~ z&yj=&Uw``pe9HX8Z^CG9ypB*r+j@dkF%=-yxyfIO=)^yO1El_LrOt7P5kAA0RvYAf(J_EYIYRM{{Cxn z6NqGdG}A$@fIuUeAPQRN7}@B>Ml{+-V2!-jg;_Xr=ZDQ=Vl%}TB|=4`l<4OuG5=n0|jorQi%W$?@ES>#xAgjbZP(0;k#=`=zrddZaeD`2LmaQ{s5m~BFaw(1u*d|42G+O#Y`|odLC~6 z=NlM-!~Z`#8|0lX$I!tB8Hz5FHVEU-K7BzZ#)Z!clpLol{Tx&7pZV_S(A|UDbA7SV z?S94EB3SpU*AsF=4!*2gwsllE#Q6Jt?7}hr!{lMd1g5Za2NIl)UXmoR;#VSsO?k#H z?kQg@_lUhyhIY4#7X}d0T?dI1?-L9~I;p+x8O_}E2#a7cOxo98BaN7DD(jkcEUuTalvMPxw(iFbO;0$_^|Zb8uqum^Z=LA=C+R~MA%`+#I_ z#-CcgeT^4Dxc*Pbg2n@15`TSl5&kxdm!|j>dB5BVE@cO$7TzmS!xex{QhYfM)XBmS z(~M*C1zqGSnQuHL417Sl zc*QSvFpTrkUauYU--Z7cm~GQ}MbBX8_2VG9m)8-8gW0~0#e?<(%m!QQ_t=%x`d3{J znn3FZujr)p`K~HuW~OskNyXNE=^@I`wdm(($WMyU$e@Q3c|Xmu2ACW_P0|Gazl%L} z7@V(}Zk+Lj1R}ro7T)0VguhSo(=Gr(5;*}lsp|sp4W8j_jO!r_sYw9hTSYWk12jTt z;fuWRa8X9EA8&2m^u(&M#lNeE-~A>Kfw&%Pt&d=ez>5&yW9I)xP)hMZb>8-^LsHh?u;G^KJZ^*gG=c z#5G8+oQFA+$9&?o;w(s8Illj$#+NIjX-cKCG4(p3VMURg#;mA0ac{%WMC6V2oKQ?x7`rTCKmI9M~TBmvC1it z^{;R?<}1->F%Nu-<30Z(FLCBc^uKUf2k`=y+l*j1(Z?R%Uy5@YghOhcPJxq)8dvI% z?F1+6&2j}78@e(#O5{Ib4Sz-9;w=)N%zpp}`vng_-n`8>`l2ThT0k&5)7&TCIhU~m z_PYrEnzLUe;y4}kX0QMeU#LW9$V(p9atXx4ti(O#wOng6-{(dxw2T}Kwc8W-5@~7# zOZhP1VT6vd2F0GjsABd36l;>cW)pE55YGKx2Ly@=f+y<_GB_69yl^1C#bLCBl2uAj zMb)3Q@o!a zKNMO`ct4j;Vh4MTTdMF&Kq~;qxdnQ9cY!#({);9*LysmhLTkm<{%m}STHSuAcJs0GU3oCe4sM&0>r7LP>Hsanz8K1c3>$y zAGt)ZhseN|v`g`}FavA5Y`>@u(Ad$BI4;TjWdq(k1ur-9j|oNw)4nQ9KZ|n(SKEwE z`*^nbDcT%{Ho9qtKr?GQr%WDvYwQL4hzv4&nHu(im{1&9og*eSgaji_>Z21W+dM{= zGfR>6$4)Hp^SDQ03C2%JncOb2#1Q96TKG5>;>ttL&_&GyPwdypB$dEX$w|Eplj_3< ze`49^eB>Cf+a50u1v5REfx{r+U$K8`D-Pq`doXMFu%w;DNHH@(-Yz}i!A<}V6Tm*M z3bZ`z#UK@sgd%jRSg&vrm*rI7_07S1?oj<+tVD-_=p;szkKBu}9f&}N?QcLO$q(9^ zYYz{TM#LQt1M!B#t9}yp5e@@-0rbXURDWvsVO4Jh(d*6zp};=I!n?s8N7oB|gJ3(} zHSg5}_LzqA=)T4Jf}@FXijAthp*DQh0|~grKJ5p5D-4N8iG-v1u-`i-9P#53IMM-T zc-BkQbw%YgavPY$WZ*O?|Im-AeqL2^3K;cI#ZVaZjreHyCrAP=8Q{|wW>&b@F-ghF z&_yEffJ_u)eZG4DavB#R2!Hng941w2ASY@M#)89S29&niYfE$**U5+0$aV5CNcqLu z!y;t_)x}q)Ih+RmF<|*~VdSu=QA=TA<%CCEtwe97k*1Huf~R7;VSJ9N@fx3ynSuvi zJvpgB5*&*x_GN3>&-w;c-V&_5w}8;DzyE6ZC@SsaoDRI=*8d!F;EK| z8F;C{sdPB)$2=R`Uc&yq80!bkSbS^ad|V>AQ5flg6V20bE6+g@&VU>NzVQob2#*5y zeJ12(j3nZFEG?=CzAZjk2E8={L&4ET@GMS@54Pji!oR?|m)JIRxEF@Uy*d5|RUZwn zoJa5?Ym^dd+pGKVx`@rvd#Sg?M4R9KK(fl5$>?sxJyuv%uy`~ov0$8~w( z7k(|@{CK|*LaaiZ9Q&M`=#W(o=K<>norhPXrDfX_`M{SvX!iI~4Ef7{flHTd<3fxu z_UmuBF^%*6|qtU4d?T~LFIZ^Fz75^!5N7av;6P<0%^1vh31>xg4RE4eFO zD!7Ax2!_l|l*2?NDFmIo|>k!lA`dR@MpP045(32^;9H(uFAU4k#7r{Vmc-pV%px@GI z>-Zrdi*ZGP_?i#t6zkESJ?ak-Nq?-ecYKT^RM+*T$ltZ{SL<&-aVKKRwT3!MVc=H#xBt0Z0ay-bvZdQ@Z=JmLP z{SxbOF`+od^$W*fY7_DI1K_Vj_*p>b7~VL%F>C}g9&8MtnsW?O&|7j0*KiCnP9E#A zgpd;B=oz=(pEx-E@uljYhyQ@X!~bE3V3+voOUPK#O;#e=y>XplcAPF_)u&4~P3A|( zdOZEMW871F#t%Gy*v%4L@2wdK{(CSJ9V(F#$qX_emKA)1wnUM=j9QDUm{V^JVgOw+ z;z{Qcg%n0aO^Xp}kQ9*{eZ}j%H8}Ui>i61A5o6Ah+;|ygQpCGc=}O(Q)m_uMdSp1UOuDnw}XG(gXY3}?UZ4&RpQE!{?p~$vxB*Q_BhT&vs z=!LX{(7y}$$AP{8mLfkinmg(Mp^r;^wuT+#d^#oq=fwR z?j%3ZCJFvY=r71W?69AKzq=d!JLs?}=!@q*Prm%i0{X5|Q zFjn!d@DHt`G~(Pro-duUh+WYN`o?aSQ27l9?@Xh8hhuBWHl(vI`jrTu^pwg8Xh_%nltx&F?4v*Xa= zC?8mVytD6s^LIQU+2fwtS${zPcQt=?wE4Q5zi!r_C*SBeh%VM2fALo5`h$o)_c%Mw zpQX>OjmpRm#7-nVi1oQCV?b`x5{hcBSqa9g^@Z=?NtrKyo0tS8@+2PPJ3TnjQsK`+6KvY`diNREp<0pPX@v@wm za{W4B(+;h4wBmZ~*PXqH*0QUn^j!LVi5-pcU_;ouhYJ5e3%*s~>A}Or>N0}vLvR9q zHu_BU_zzUS9;|B5&tSC0q1;5+0Tf_T;W`5F!bV93;7X~eRBTppZz)^e^`4dWH2NXXdhK2j!{Nv64ix33J)cb_ZMW3V_YRVGJ6L-U^hgnMH|(3`cK zSi+}7@=$}k9>vGJ>|`aIbCu`_JoW44IB39m;T3I2?#ZX(W)r%6v$s-9n`5}RF!ktTu7ahs8B#RK1{5i;A z$nT?zaoSclc8etDQu-}zkv{v=Cx#V~4VgBH~8vG5n zo~1;B;vy|D)(V8|HL4K@RP_^7O}4;C*dK+oR!V8b*O0t~M%Zax!Va!b^?y+P*Z|e$ zrM5PrKV?)ShfLK(6*YGD>;~EqOSyFVV-;yX*M73{r(Z=h1g4Py>#fNfaEmMql4V-zlk`!plbe^2aAc80FTPWtL)>Zo!39b5YAK)BaB6D}}4L9|nY zn>*2LT_>772GB{G5oTwa^##pN6*3sV7fX#AeFJut7 z!D18<+kJpC;of!#xZjk5JNMwN0U+H$4JU9HEYL0|o%=^g^sPyD48d2tP2?a*^v%05 z<8roQCq21V5HPPVhEr5ORGB=swIS;IwVCBA7ztbg69{C^}n6 zs?!|psMDueOQl?2ra9J73v(qp+MaxKDy{^b1(ejq0w{E8=jNkLg8r#ZQgKjeK+xa7tjxL5?&&fFtzwYwOPQH zOIU9kyne}y6+eU^B4GBN=kNqOP>*zHnd<@KJ1PX_z7ms)|2Py493d?4{E zk6r(hr{Vj-s#d;IjosDP6JB?TSG($I^Cdi#c919h12P?6M0cLh;=VxOdsSPsm7iQ+ z+z;PBT7d`DXE)IO;SPHFv&JeM(FZf{+2(SCos4bH_!fAIe@y)-5uQ@T%CTC>w|FVS zH5$*Y$F9*@#pv5bEq z%@yxlH~GTbTYU{*rmNxYdyL0qHBb0QZ1k0Hw|4i+_bAavphP^Oi}Bg60`LS#%XH(@ zaOsO(f~ZINRwM!AB34n)FFWCN3Go>=q>D;(NYyHyHBP;cl3DRAh~?KSw(cu$aibN^ z>1zS-l5@a0O7vBstU??Eo_XA{%0GnKj$5FVOb;NZrJ$s@vTQKO$Y*K%=wAGIrz{G+ zi)UqSAEW?nV`>YUD-Sn@_V-pEZphpi{1}iv5cNvV3Hn4`0k`@hUZbfkE+&FWk9qDmprqpIXc5CggT*bqzsK#;s>>7TMux#FnL*HT^a)* z%}ZXIjN5kX4lVA}9OX6tsWYQ@<5EP0RP8ggueF}&zvhQ4m1kPu%qim=nAV_)BBKgf z5D>cPW?>a76X2Hkv0MHqs~8vHp)_}fz5+f`wb(p>krIais#-LJdt<_O&hf8F16BLM zuZuwn3V5?~UG2Z-@bq7EbcOZE`G2V1{4*!O;-YF$w#4Uo3AzBf_z@UCg3b^im#N`S z$btBtocQ$CFH~(k_S>s3QdgC6(8ve?+iaSDwnwkb2)DTx4_LDDe00T3fz|xIXIgWJ z81Nd)1isG3{cpXN1-5+^*~y2ovDkmFVR=(VR(?|`6Ib~jeImgs_j6+}33~CO!uJ6O z$wSzhM?xF}c1T5-h*X4HPIov&B%q9xD3_%R7DI;^J9Kuk0)Lt$qp&Z~P z(6VfyhNh4(eP{-iw%2Ciu|P=R5)PGe7)>rGIn?G5iG=^)>A4qYC8?q;--Ve?A}2Rd zX9072UlJb)W^bZ13mL0_N7pi;f1nQpD8>Fgy!~74e>^Oh z*9*?6%IM<#x9;cAt4RlL*xqR4m5-w-@W$E(4kT5bEbYPD~*wl-d>Ne}{36~PN&RTQ;n9Ic>VxoCC1 z-&*^enUjRJ_Iv*SJP({X`|QiwYp=ETT5GSpw~>D136UiRZR2OCrRnX_6yffkG;|u< zkH08628V*oc;}u6k7&E$M@|f7V)ss}ng4bi;asXh9EWZ1ycb1aw(qz+fosJabE9hz zoF)jk#+VCtaH{Me#yqQA0x-?JY=Iy(cj7vctkXl2W`{dIB*&!7ll6lb)EH%jMG^$4 z?<{eK(=N{R1;pjNEn)G49-MV4X3|OS};m`>MQwt?iRymlOGE3*{t&1 zR|3q{WflDwJ6%6d-Vo#+jlUaAZo)f5-4+siv*N*_Y*XVA;SkxK+@r`XvhB>+tKyw0 zNa%0AOwS3rmhsFU317>4FOC0u`j-p?>3?~V{K!ibgk{rm*f(Kb8Eua<^qD^|k)t z3_0V8cVj?F$&%}rNh9CzL2eWDy523Jsf2w@u1n~f)A>KneW&0L6lgaJw3K_ee>g)X z3>8(ueWr4ii+;b%6e|u=}p7h4gfwyjHx3rY|KV4t+PwR8amwiuo zj8-`)L+yn8YRf7Aoup=F$z{95YDeytSJs?1X-kH_)gM-8IgzyzC+U=?x99ENWE2Q% z>=o&3$ja>3XVtG@3u51PnLqNob83GDuCCNSxcK)5fR)P5Iybv}gUDowX)hw1cUcp# zdrwGD>H}r$|Ihtu;CH8dpBqX!n=3gS$&6m!Up}07A%miBn5AmNNe0%R(P7P413To}6aj^W{EkC@;v7;F$@}$Rql3@(r!ma>@jG zrQj{SRQvaVSJ1TU^>XaM)}fc4r2~e__!q@8oXuSHsDL7o2dxjk6StWHU6*v3`EHgqXTq1R2X90ItO|c` zFA?5Oc{M4xxsYtt1$t!TQX;yvZFh}UIJqJoTFq$5e3eWL+cP_pu zkYI6{ZpXW1pvq;}39j~g#OmEtW`)SLpr)TMz>_8d);WE2tb4rV%#3DsD*v(OR?99? zU7e2{@(W4}p9|Zoq3<>yf(1af7uQuJ5WC}Z7CWbekn z00N{}OSq-S!pYodm5rT1_Bgwr?HLgCDOLH%6F(Q~Nj;K}+8b%3~T4#GV$Q4+wMIOmv9bFYc%KBo8(dd zbbt9N6q7$8o$;1kK7;p!z0s;)XR!hLh9B|&sPOkYso5z5rJb^c&}kkfKQEJ?r&Ne> z-uVK*pTn&H!9I1bDNjuoR=_Gz9GS_cUAoDIlZpCzI zBVm6c2@lITGXO%{^SC#>nSo; z*uw;Hac63Y0l))Hffy;YWV8LpZ&m7d-@|M&-fFMqC@o8mzboVKlz)D8X-UJY;Nu5( z38{p?XEDkJ{(vyvBm=bF;>cFQWTkBGVe^*7J=^(LxZIOQ>LyO;Cew9mvZE=h^1|6& z4sG~5pfd<||EOy#!ku&ZC?I9e)LiX+EQ!$*uMgn1(t1=9WlXG*D+Z!?zeIF%`1_yn z*?N@k3pG=8MfiK~k>sQKGc@0rvWC~$1Rm<_ErIsJj}#j0FoQ`&16$hDQ~JK&C5@%G zw})@~PN0q3wGFTg{pnD;9K4bpuWblo!)cig6VBle5=be4DW0z#M%OEx=Ix2lhh-!1 z-9t9+%pka=xp&GLE{x6UtOllJD*r&x4PNo>v{vFiB@2Ft#~OHY6(3q{*S%lTGL@(D z>fXig0n)ass}P@2lgJ!=;sW8BH}jF1KV?XrvEz7`sEea5=kROql%&a5@kQYsm4Au7 zh51)xqOL@OjI^LpmX~GXJd5R@S5tqbDkM{l>JVpJ`GeajYvgZ@Q@(1xP?Ky>d^xoX z9#WHW>0^j#<9Kvm*bVFo|13=&Y1wltm~;M@LUyCH61o2lfv5aBQe;uv9^0nBnvrSM zw3BU`&j4}MRAS~kr#xYrUzOTb+hztf^CykOO_lkGrA<`sE$>X|$26?T?K_}4 z=2Hdm85Z5_UMIu?BHMFPInhn_x9llZZbbSZ;C4_~pd}K^d%q2suMMcMsYLvfHB7$Y zj^Bfb`Qxc6;gtW3tgv3klce>R-^81cm+!r(Ijgu{#eARon^XREEs%W8-4C+My<+yvS5$Q>7*O$Q&sl%PWHja?tCmn+EC!=tqm9t!Hwi z$DETUS)mseMQ5=zl&tXe6Zw91^{7&u!z4A~%8rq(w#xo@pC}LQu!P=F}#X6;GS5v+U>H^O=)i|BCtC z1696hRjA~WMUAazCig&E+RQql*5Up4^q)DG0mrgM*Ov&qslQ&b=z5?`y~yOT$0h0O zhcj=TU0$7hx?!uy@2?-S8-Bf;-&K|nllPH%xF=Dg%iI2%`;qJqiCj+0((PkG3zr^G znS_!OThurZFPFp?EszF3WV&kF!>WHFo@ptmp32K`K}qtcSY{U3*yCofvAV8EF9siY zrTf4KnsD@mwg-avpyydcOT$X-y9~=L`nlR`ex$v^>;ENQ^Wi^P!%bp`5)s6GpOo(b zK#-RT$EhF@>RWW|Aov$uBj9glAg3^pQ~ZG}txg{1gN{>tH3Qi$6>n`iq$bIPw=(%> zOVn_N(2Dk@T!t{fae}|{dTD=60e(y9#Urbcmc81@1w&Qra9u4)Mf`yO?8^TJ|DfC& z4*nU3S<;D>@yw}J)yY@%x-WDc@ZUE8|5Knx@ZSUe*-aenZ5z$b&$@W@1*J!4O6|7Q zz3w=l{u9pFGk^y*7KBa|ifEnFJgGIb&Zmf7iGK;e@6$y#=CsRn1}VG_h_iMg*K=FkHZp>?@kL_gKB*aNZ} z2HB-XII~70;$G=ox$vD9#~R%lVypLx0Lz~=3vH5T}hew~VO7hG>!#+?pP3Zk~Q1`t^^P?@*DO9>d}^vkqJ6$G18m zIUuBlG~_haMl63)l|}|EmHO&X6z5m6x{NLSLY46OQuiIUU1H86Zvx*jT>S6L3g4Yj zkN}~-SVb^F-uqR)8oIOWlLmjU!5nS$$J=sF;(baLwkz0I_!?P_l=Y#yeB>Lq%Iw(3 zyO@AZsZ~aAfLMwf{u{~#^{jWqLk^Ik_TyRgZ4i4tI!2q=jn2 zot^x?cX+s?j2TYi!-M|1oKfE zS+0(w@SdC**_t__hVwe6)EV_pDBys&J*6=pIp7v9r>flrC0fRB;WGSo<<7w{U3uovh`=&w;T`TfX-nHBx<5p$-= zFRr~w*gvhkmpU;swK~5cRs0Glp;GX{;e^zc-ab6sxeq@$zyx2K_;;vL3lGdc!UrMY zm^Q+lo6sK=lZr$T7-JPojB^Z1OIJj;#O;__ZxnRKo#v)k|CDO6J{8>-WKg5M%}4%r zGjskAs8Mo(Mb21)&Em4|i3SI0<|9v&#r-jcbeEY2PZxctp~o<=gaXKkikYjc9+h5v zY~3&HJYEK~CLfti+3s>d4a%fg!{}$H6SUJsURc1ssrGJuS()oL3q$Ssjlvhcyi)yX(fbPq42h0{ zV82J|g3s^ev!I@#n)|3QkjUdEo|?*UOMc6c+$}>w!YoaYk@SC@FFzQ{)!tA-A6WHSX(-C0@H9i!91io=>8C=veJ$xss53Cwv$rZxe55S*2_m$~Bi$OQm?dGnKE) z?=j+Ua?X{8*q4rfk(O7Jqd_K+H*{g2VQ4!eVbbo@Tm>A#J{xo73z;?EROa-xS2*?lvQ}C{}=!> ztx>(?p~mrY=YnL$HO{qNC1i2uQ9xV6G9}U_ZcCd!8k$N@%i`z6V%xJ3=*G8C zo$|eDz{<=9yJL5ipZ2*`*|@gSg1lejvTRnsKz0Wo+~a8{NL|9m(J}KzS@sxT<|U%B zih0A3Zrp&jGFi^&;i-=#tho{IPP(0f?YuM{zjMByV9uPk*{UrOtW zO#nR4-~I3E|1vcU1^5B2cSv$DX~#moQipT+im@mQW5h_=@u3ZPwitFv#Z6KvqwI1G;PMBPp7)=?VH079ok(>hV-?=N;y}Tw$p4- z%YKa?$d!hb@E!(R!IZ(BT(72LSN{cbYcp4-cl)A`7k1zhmIsepf3qxJCr zn2&$YSJq|lA2ayB;z`B-X2t(c1^)`MJDpxIBJU0z0^OG+cyO*{7=G7TS`uBB`n|oG zQJ5GQh0{Qcj=~H@o6Hx1aTrgrq2n-Duo)T6H$7S?AGv^^!Es;#H=q5dAg|~iGWrYN z!a?Kl(pSxRT+j1AjfX@Y7skU|ADu%OI?~^n0#`jJx@3*2A~$HYOWiMd)vl9aUg{0= zT84Qox|(~h1j^wAfWx{(exp9H5I2RWco^$T;wtz`3pI;>#%kzU%$jy-@(>+bjd^W{ zm`mJ`S(*^_29{gn4xx3CJt*zKIj>CWn&2otw& z_bMevSEcSUio+Dy);YR=ii!puPXY|^rDv}Jzdk+#)YvN2IJ==ojbp}nccI0e4u(M zUtq9RPbR~mPU*eFQWMe}%dGxB=s_YBl9gF?_2-7jzpX2vLzfBI$N3La`w+!n2vgNX0w0p623-Ys} zr(a}b!Tz$+J2YBiPrtv^vbzlVu1*Mm?NSA+sYFL>DgIHu?+YsD?fL*PM~ zEgyNVii70I_*TpL%^^rcmV;xKPWH^r^z4FYPqIP2v_|{d>SknyRaq~%!XF&smk4c0 zz!vf7%4BsSy0UGpMBtEb-a18gyJ@GCHk%l`cyvZZ%8ff^`tI9fnaOP&3n~TELo|s&#AEN>p|XxrDp*} z0pI7u&IaYsujN!eBwsSKt3WWx<;OsJLaD)Btt5UCSy-op z*w0K~Srtk$%j}?+Lf+XFH5z` zaYBDoG?IMew;&WtXJ7gnHu{t^VZEanp@);CiJE9{EWhN(hld-x<)QHSwNG)V}*8Pm3b0&P1j|5;&%tyX{ttUwS zd9etRma{{I0gRTKq#6o5Ai~QxCC)o1yC1|N{Z4-#O1|MS&)n;FkL zc;=gz#hwr->1(6F?$7VQy!}XtGdfQ^b>StCliQYEy17a-Ub#^E(|mG%+?hVReNuHv z@&kU&vNA`#Mn*wd!Z~W4`>VtGO`OKpn1agY&$7~!*0F|&_m!q8xSVjsZyyAH%(g%G zU0NjjH_4tLI%E%gC0X}dk|+Ww7jh3q+|q2ymJi*0nA-V)+&u6;A!>1<77tB+;9Oz; zCja1X*#(sM`};M^en)l68a6Xlxp%%U!(F-mMMMXUQRbRj#az@VxD4^`{zYsx=WA6? zS(IR&T)GruIvXENw9m{{LmB5R)R9fDP=I#SyM^?;Oc$0nNSZ)y?X@{tV$-FQ9&bKsZVJeP4H)#`87 zuArk`CMybV7&{p))y$hnw#6osoB@&VPj^$D{83D2c?sz1&qvxM6Ommn$)qoWNchzL z$kzopJq4|#m)9C8oR927ei_W;W`i?UfAf(Aq&SruE)X1U=ui79nVs&T0NZez(i@*o zuc%tm+(iEwCn;SbrFA~SQBTy2I|m6(ysqdk?sNBm(#gLWN=aL19PI+edUUns%=OR(JTK%@G5`Q^lkN{^=?EnA^pvv3Q$l%FnN zR1y^V->HmgeilE<7-po*0bY5D&F(KB$D90lLUqcLJH#LMnVkH@W*?&_qHl?DTjWNiKSBg%3Z$%~$gW#iuZ763 zB}rWlj0}PYc91dp5`jd;;*1{$dcPS8J%h54`ak~O=$6&Ge@KEbN<4mV>{iq|hrith zKdj`uyq4|oqqIl6UXv9xNyy~VWK*F%tKrp#tvXMIwnpE$Vbr~$yM$^;ifT3N;pZv=TNw^xLhxLOUA_-aAK#TyK zdj&)2R6f882@)y-aP(Uwg2b1oYEQ25jL_)X68AXG+fH6D(;p?1!P2a1lPUkQyO(A= z!_Sty#;hw5j%v@U?w6I461U8Q@LD)3dj>RX^ixkoc@{Wgc2;!zOl11qLO;FkgPd_9 zom=s~bYO?uBt`e9DC4Mp3dqRsr$67ihZ;E^?i39$JMI)wJ+S-S-Tm~*l3r6t|5Ow( z`rlb1>7SoWRAG^z7@yMuCoDp85ILuQF+$Ds3R*uKjZ9#>1(EJlexnshJoYO7kFKA0 zDzR#xB^dk_sIPtYGr3)XJKZO-aTU=G$q81vu_X1O{WXNmR;6rFM#3#n&3O0LLp-;V zSW}Fn9BlyU;164wJPH}}E9xaYcE2F3+E2g!7YGd3`g1?i^hGFeRVCq$yBQ069loC` z2D|cHs%gnw84C5p!Y#{Cy=ShD;qWKas`srjcOCc#HF5jt2$G)q5>vOF>ruq8KaRnE zDn7}ozQF7@q)jn@(Vw9uCsyWXfZzd<@^XNU~%OzmYPc1-7|#&#Amt@_=>L#LMT)@7_1LtEbne zH} zz+qn6Wsm(bji{!h<5uji{aikBE*q>-weNuuoXYGOGC!a4O@XgRX3-f|=E}>aHoPq@ z2t7`mXU*d##%A>B@r3O1YgWRk-7KG9;;OEANPbfr&v?%?W}}HN@De^NgP39xPIQO7W-N&Vb^j4X*0EN zSw3uh$bB5h>})==l+HBtgzM-Y*eRSODkqG{JmM}@!)vMTHQ5PnY@*^6Ddox@o*ulgP)9WtN~8SJMjiwC4{ullu`w>(8MU zA>C7i`$(Fh`+y^Btl2PEZPO4!MKqn*P%s2fP{qk?<6i#Km!t=wcO#j%| z*i#*VXO0g~?!91tobo*_s7##V${!6qcI7Zqe0+HD+RwR1$N>4)492xFRm$CcK*rYQ zrtzuWtc)YJlgeJ!Edj)-yakmpANl-BpKOy~HTDc@Tk_0+&CX%SWb59*7yNfU%WW-cIGAG$aPe9W<4D2C^{ri&R-H*;hLAnDb|h z&;2FPeWRa)gXyA~c>6en7E0V7YOODQO~60ifS=rlD7Vfv3)iDvmnGLaO)V@Bd79mD{4#eMhU?3_Ozcpw3rs2yad|)i8yLw@l`v&FRaEuR=%n zi?Ro7YfT>Yzq!ArF;$}>6Lw}}kbIn8F${ym<#3<;=Jeq$({O390RqP&?m7Ac`YPDF z>1}P)R9he%eK|`mWd-riI(ZqOHmA9gtf z{miMn6}>1Q$xC)Kr<{m;{!mx^;8MF(*UFmw(YrI!Arb@ZZR&G#)Gp@xFR8U%zN%Bk++T39Hui=ZGyOqOT`EI*lG+KJd(f89pQhg zTdMD(@))$4{V$8&-#$#I4%VYQD>*ZH!%0HuJKSg95J0xLeL~%6kO<-*zsXNoo%jRd z4P0Oz$8ce7|BQ3HB!w`~8jB;EBEv5cvg8&cO}!FI%(~Z5pF35|jLO9{k&kR46VyOt zgiJpZACy@rIUgbwdfm1r{T8=I|CtKzElWjNvP`cCL3o?f<#VSfPaCR%2rrjOF6Pv-Ok$0 z3UE>Me2eDXv+*#_T3e7sb)uQHHgYbzDs$5Iz6Z5bB@7FuP8U@IVm;}JtvS)u&_bKQ(LPd zCHssLUy1UkjzXG*Y)Vt%C!b$3lb< zIu&!e#7l(R<`~of=4uy_zWuZL$eJDQ82|t$O~{<~dHR#c{0Y?KbHX=p1{yw{r>VVU-TG5m zw{Ee6>+3NEP}5XSNVZ{t^=y%V`beT+-!UDf*^zfX#;Y%1i+R%n_-K16eF z7dEwQ_LDn@pLc;+XLE=-K6v!`A|2*cHEb<9c>9~xMJ+x*gb^n`{(XR-I+lM?>u(;P zs%JGR(y&rP$YS}IbFUQOWzqamVXs*JrS#|JsV70$WmMQG6$&yYu~SQ3sT%~W^tIzl z`pYUeKlGUIDC}1!voKoG!5!`hlUaRWUo$1x~N5(hZuu|M* z!tHWK0>9NS&YJdeMwR^obYIq+Gfm#)wUC^SHuxCY4`DtZT{n(p_Qw#0`RgLOaY=m` z>Fwd}FnPnRcx_QI!h$?i=l*zJX^H6S;f_1_E}9j{;}_KP3qEP?+le_54dzV}UiMLTbGzB723|E%*>6MS zCu5DV0PLfHLIV*EfBGyTXF~<^yFY}SoXVHt!U)GpSCIM#I_*7FpS?+Ei*|le?|Roo zJ7xd}ycF)x%Q7>Qub^s?`e(iZ-J)-t44d#S`oCP^jHmVb!RrLcTIRBHe||I0TjIrp^%*b!UGRCEDm1zEsu$j`UNQPH72vW*@}J5r zC6v1aPvVsS4$0nl)>2>YXYSif*s>qU_fO-9+A&=aF8(4BbemohbZ>EARY}$Z+Rgb~ zEGQUsza@Yfbbl2*2r8c^$)Nikez|iQcc=3ARGW|Nr?E`r86|w}xfY`MH75#-{?OA7 z_V5*-v1S0(-|Qi~jgXf?$YwF!AUoWl>yQP6k8uBIormunr(LK(d0XHevNrR8q%twQ z__8-Kc!(~{SA6T{+n{kN#>4UbHu*kqoC@E4qc7Y!fiaMlu8`cKGUR>${@omWB%%w{ zyf2#8M&%vD=x+$=%lI8#7(X5V*U2|sM_OU8mKtSTvy(`4N5UwDczdI-jmJ>kXPT$4 zZBf>FmHh7KYXzqD?pDE;FcHqm~rnN7Vf-< zpO}I=V4j>q42$?;KjGwu&R_sv@ex8Wxe;yQjwKXhr;}MuQs!~rp-a+p_b?_49llO! zdC>4BFYgi(tp?j&Vy z2A;`%&%Fa`U`74+aUK8H9~adhHKn*dR-VCdS4{#osygE%`O-3#(B=Q7Y*W?Z^ z(3_S1JEjz?f$4tCVDuK^a7Kh58PU;`dV6_Ui3GW{(_l&L2|+~5AlG{n=?DIcbV1C( z{DZdk=&ShKSRQ395mH)}1p1yE!s3O%dcEy5B@F_yXY$MLQMJS4PpkX+ZKrJd)g4dQ zSk5SG8&l2-t9SeHR_`YxtolA#|3n>m!MferCNX}+xO8=J9AlAs4hR>N|c)n3G7>NV(qkb~_<6 zOoDyeL7<-ZGJa=;6sVyk_bbguD*ih_*U{!Ej58~`R%5KK@Dz3>8k`mHXKE6Cm!L&X z<(~q@KCj-H8+f&x^3xj_9>EL>&$;>4iX`Xo+W{kyxu~|06}r&!T$Sn-#27%5huR-8 zNG#~Qq}~a9f_qa<71aoRzAB8d3DcddZ7&6xk9ZEoqS2KD9;KC>+{5HCCNU9*&|(1D zqTdXZpK^$X94Yitp)+)2s{M3$@lQ=pGDNhru(wXTGB3Znh24{fVc9G@Rr->wZEQio zp)(PGemDI&l5n+HeeYD*!+y`+fpHS-S0j~5zmNo5+)-Y?o(=ZPTP{VvHT`?{pPVf# zP3O`DI`sP~dFktsKm-T*_AbKz_T$V1-H#NdB2jf;b|+Pe+<7&5y5*Fq87O1K+67|q z$VH7GU>Ompg0M)EPc1~&KFpys9a2jPXPy69lnq=j>nwY?zk}d|+%sk#)H-v2F31zl zznz&d%7cb3%QBO|&WL8FZ{(d5Io(`=n+F*pv3h}dC%bDvpE#Rs zwwZZ#+t$er?@akG1#AtNh>J$gc^`qeh@&ORgh5o%V?rfzyO{A~bJkuOtNxx4=U4Ux zh&uRfCfvEk?V=v^Cs|b^)cHo<2F$0j$K@N~8kZs4+Oux&Ga7ui z=jQaZ(V;~*jHa=L$#L>!Iz?^di|+@-@XW4-@6eYMnM)WJj$M1xU8LoSTHbfEY|xXa z{;WG%ihhzq{Cf01t%|(;({z05r;T=Vlp-UsL2pX=t;7!4ALV}N=LeXoQ0|Wf`Yf)8 zGy5Yp!yT#u8z10f<7rpdncQK^saD-Jo<*6tth!+hYitkx_H}kx2;OOxV8jaf>HZNg zp|j70NV#^(Ny7`g@)qTDcRndZlKYV-w+iy$@TAaR(fJSbs&Zd z?XE*LK?-1)|D7*`9b6{8ZGxJpL!1D;=ehRmtO!gx}Y;cDTn&LwfLNYA@}G zQ0sT4BEOeQJqhuq2pQt|yWAO&(S59q$nZMli~F1?qc)X(CWq=exlDsu*q8 zHwxDA=xuS27y&Yn0q8|pcbP;HDax-UnUMNj^mJ5|$W%lJpb$Xd>09tkwT$&>=oFgj zPwpu<3#H6x6*G5n!Do%gytknR$rtVv-r|tw=(N!bM>x|e5WQ*S?B%|vJ(JvE2Pe>yNRcC z`{6!>Q$0Bi-Aa}^%4a8&WcRCOY=7)+k7eEo@T`cLE{g@{+sca*(mGUQjg5}F_~OsQ0JSJ{?z3V{9{7Q^zR_&v?^zsKjE7R#pb_O`_v_(dYqOo%%{q$_w0fwf`(ga z4|DGzyQuOUOadKe0?~_>0KFe%M$J{gVfh9)l_Ay({C9P)g0d_%$;bbtUW$n~)y|@C z{VVkEM-M7Odf<7mmF&;|fuF{*lcHyRL-Z_e2*{LAWKfKr^`@*F4b-!qlca%qR;7_U zilD1wxEn+`Z8bA zHc`K|Ll6G`evN+$%ug@DHK6f7%unO!@qd_~hR6qPNkoLsXvvZ86{abPznA^qzPwl} z@liwN#m@E{k1A|R_Waj@^;U5)`TLP|888U1tRM1ylO4*cTF+mBhXl<%pR{a?xVv5gA;Tfe;7>&}j>ptxjw zi|y~sJ5sdoxD>!`!=_Fr1CDd!Bg=AbC_iT^?7vxN&AH;4A`TyynaoQY#+ zqZ`5}uEj-`k6bcUJSoW|pr(9eZ(e9tb&BHoqw*zBrQPDsDSYhO_9``MvA5)-XoH21 zDh~wT|6#oT)A#>0p5{A^s9_8DBUcm>f4niLMreSYw~jxEUf7?`{&Ayn>jv^0{X!A}7>5_8|Wmoqg70khG_>=SXEWvtbPfYsyNRGkLdW z;wZ*64U2Wl$n=*y_1o8b@~`MQ5+dl+cT>WAlT*5SNx7F4%h3-)aiZJ@i3P>W_yv9X_D5W+gI*PXxw}l{=xu@demqFF?B`n{a@m2pZevU@_D32~@19CP+T?aVhC4zG^Za9EY2aqw#d+WPh`OWI zDfmku=aNf~N+~0sdl*YpxrdAVrhbS`ycq&^q!T*p&}idD^LX;rdwv=Lh&1{5%Igw1$QvD8qKoDuz0B>9%` zw4D8(`{(z)ZY961kR|VF*a{R+M&D3-r0sGA=XdVK>*&V4;MZLRx}>FjY3Z>#Y7`~* z+l6Y*Gu5mU^vr{>+&jGdLV#Ll_FR$y%Gj?oL`5a@e(bhs#^m?Bb-y|Kn)-|VVfF+H z`1#!#UVV2^N;}`MH6MA7*q_dxrtq!Hvn84tCt07nG3R&gs|KnA1@QS~$cjm)d}=^i z%&Wmu>U0Hy=rA&Ed}b$dUbpmTD(Mi9(${u24>gH2YlPT}hy06m7Zn3}sei zxY|Fb5AgVL64`{GA1}22ER;D_gy$-@#u8H?$1HZy(B^bq2nXM=CWIo>xk+?TnAYRP z>)g6vPjQ+72ab1O`L{TerO$x-fY_$6qcc|vA3 zBZMdEDHX2x$&TSnB=)6B;E>O?nJeeYDYbNx%{9Lieviu{$3^hhE~KG}^(XgGNQ<_Z z;vY8@b{p~GIl+RF0YW?fqze2z(dLSUSGC%2%H`-nC*Gb^w^Qsx$GKaQoC(JqXO>P? zg5){IjQZA+#;2or$UEl)$$yy{P4aWSJL!*Tfr7a~@C4d&YiNYB0=zD0%ATgkwN#ju zU^NeanXxPDLnTj%vMcpog?3@3kIQqOypdQ88p(eoc~Envydrhb7on3N9Jf(e8^}sz zM!=kbAJyKski_1-ha4;;i<-9zI66vi^J~#Wk-I7?#kcC6CD_gvWZgWB1SH75lO@P+ zv^f8IQkO?hsS0QAmhWar*flv<2f&Q6l~I{)^vrrSLc^Vl$j*=vXp96IS>Nk94LLEn zTZS&Tzx2zO*C@+~vZj*E33+yuGlLziS9)y0#h8!m1uWj^((q;4Fb5Yl8PKy!P;q^E zps@dKl4uOs0~r;h_#{nROB(ARld|G>E6QIpe>N$?giOUlDhRttek;P(@+*ii_Wh`j z)6DB!Yb-`J^g7YtYo6fig6KT(CG7eI@U`PpVTe>pa3!U|)pFm#x|uCVMg5`Ja!F`2 z>t~`L^*2}0jJRU+kq?0(fG51U21(+Q&0e^belx!UYd`tG&yfZEkoK^^FZdZd06#(L z^mIFD!Y3G){aL?MZg24XJrQO-n~?ToM4$#huHlc`aRsXR0c71s5^_BQoLLukXcWSvv#3E#{GlZ zT_$VtH{ud{zumXL*xCgW&HN&!6K%5prm8d7`|@ehyZ=CJ8ZE&M{dD zV?`e5_+%y0g3jJ8-!juKGdL3*w#fd^nN4mA(I${&Wsa5)JKSG@2`a|RSwYpEuX2j) zq;RK9dAYla@C=wADY?ng+Me%I-0;Z9b;^Wz`*@Heu8&#akOv_q) zS5v${_mn^Wg;wXxg~#aZ@%}7zzqF2+HPS_>%RLW4E7Cp{r5V=WTkVbdwVpsHBM05l z3N2ao^jKEAehC0%#ma@>z{Kea&$KGLF&h=`Dx$Azz<#eq?<*7eOx9{Y-C{o*?r;aQ z+Cwsq%4&BOSS{Qs8c^p45O=uq*Mi7zy(M?>^(%kGqy35S^zCrt4+WM%+<06OAfF$@ zoi|D&Lm6b>j}#|9Pd-sz$Tfr~#UJFeZ}Qjh2;n!QV)Xw;I4;kTt zeFncidVt~A3uI?T8h%X(zdp=ckYA?+`Bm;z5AZ9>TaZ~-z?sUd-=-Z|M4VAdU_^L77`nYZ(iD~>KL=`Rr-Ryl++a(thXWISDaUx+f25A} zxcR0Oym%t{$-CQRrQQu}`HL<75jsAK}RS!8h_n zo^9UqWbY~XlJqZo&wadSsrUQ{2;}=)-gAxjlzvM3&EE4y@7d-(&-9)rc+X?K=a;=_ zsrP)3C>5z^gZF&Kdp_npf8#xW;yu6XJ=?tJh2HaI?>WVL9^pNA^PZo4)wJ`T_uQaQ zpC3H_v#g9CYA7qA3GQZ)sSbV=J+;xj^;a^>?FgKreH9Cv8fHi~J@9(BU#qayRfFOf z@)e3sU$#Q*e zDI6WQdsG87W3jXU3+s8~@%+T?zbG+rfV$i>S!ZoqYn7eBm1a%qyAAf-AMfxZyK8vl zfbRFw{deUug^oL+HV}YkvYkVME|gA=m{gjKe|!GS%&-g}OXAzsO)5*xYUO5~YO%!_ zkt&x^YLqWZ$!KGueB?gO9NvLnCW-X%hFc;qx=zdt8%Y(SaJNf!3{>u6@H%N&s+uMw zo=BR=-Q|6UY+QH#FGV3~mv1VAeBb6y5G3+SK#!*1oZG%*eDcKkk@g)mDdvb5WU|hV zzD=rXDrw)*L>QHqc+Zau_0QkklX6~r?K@^AKXAAHLKH+jztSu62Z~7ZwAYy45t@J0 z=JXYJhiJ!{f>n3|4uhWLXuY0_+Y#lgmaFFL9?Tp5fMBJR^}7d%gC)s+A?k zL}<;_j#n3aHO`s;AizHtn9LlUvvIqekimHk8g=iii1?>IiZ_*3Td^t(+Qr^64cpT$@nYd6tG_8n5(!+!25l0}pc_$Bm{ zf59y$o5WFnMku(u{qABJ@B6_Fq?XgWF|v<*=8xfE`6={)M_|HY(eddvl;B>r)#Daj zN>{>2`4y0Nq{*9&k*&+rf13Zf>tED=aj<^TSC!`Ua!IW};#WZZQLp|VkZp+k9b|8A zhvgt|4y9qi&f<2NyGf8geoBa`{DnJZ%Y)Tj^3sb>Jn@@{x)UMP?d|lnrM9st{G(;* zPlmHv*i_>#X{kLe+#&w*xO2v4b)(_9lPjd$m~-`Cr9cy*d2>DtFL@C4%J7?WQ!NLD zAsIIl0rtHgO3(Zh|&ZgwlFJ=*L2MLA0!+AR;-NVV1Jy=*A z%cX7v%tcY@XZR8N&p4)z>#mSIA@YbkvdTJ4AEN!7M;(19eB&p4$=w-Czgv;2Fm-?X z_iigoqK59szk&)7sJhkbF6c;P`hBgLtMD6$m7&H3;12xUdHcQEzG^5-sIj&4ZH{5!$IQ%O z2W7KD253_j3UmT8xEpMWqIkZ@z{`Y-lt=lpM85F8k!Sc37;uTPuw*U#V1d`DyxP+?XG=sfV59FY2n~1MPd^Lmf@VGOW0FAc=^%bN z@HMr6#zngKOYgoj67-0UiRCfu&!m*Z>wEZK7VeZUU}k~2EeSYhyWdd=ZZeVrkHwb+ zpTb7rjxL%IthQ5y2!PzjMzLE!I?NLy<8=d3)_Jl<$)&ir({OAZaspyl(l1ra`7kT* z27d7d_&^>HfZ28UlV1%VWM2~53)jDwEhhms ze0zb%hS?+uO&uSk_VpY33@`*6da@ZP8J2v|=J2h(*@LLiZTVEt(d+(|NjkfXf%3G7>>dB`RRK*IJYQ$8{rBIE|ABDF zOl8BaoV$9}9pbGCcfLmZoM(41X&4Pmp4@xYPFlh_Yco3a-tp+_ws~CSi~h+SDnF7h znaH+E1S41(o4uU`BiFd5JdruMLgqOJdK~+VK5WV2 zx;d2O6_8Dw-R<-1EPE8|?v{-)xD*ssc2K!{mkyTL6|65w=kXV2MwfAy7Ip5E5dE(# zx5{0Ba^wDz{|0xC_kgWh@DT^nx>#=aLwaPxVEplC|6=}7G;8p&VGqio_KgHp$zCN^ zz&5a-|M>k1b_ab(zZZ&c+oU_p-ouI>eRFGQWukrsp=%?th%o<#mBf~m&VMmczt)Pr z-Zm~?|5rWqeFsgYCe}v-=7u@^kQ?awpS*q^Q+=n~q%ubSI{KnHnNk@-muWGgX z!X2{PGLboZOkU0(=TqsDP@Eaa!b+DnEWj@(qU(*iGwI;eYa~tyO`4ayZqhZ$8WR2@ zx&8e+_KNy-%Nb{l%ws-`wO>=3O5LY7ib8>j+8V2#+4a=gSu)eIKQe*%y9Y5OlSK`| z+}FsxZ?ml1L^{sqpuq%^r;ZlN@ETNPuS6UuAH|(92DYOI5D*Rbg_bDn=JQ^0ZhB!a z3T>}<-#}>i_7b&GYiV|GYGkd|QaQtYv+LbQ$+Z*AnIzAiNTFpE?1}9tdPd(Dm4~i3 zW)I%t)q%brH+i!!kWKAX(k>2`?;cwIoz2DaQLp?Dq`c=3YM=a(Oe5x2+~wu(@Dk#D zP+FHcL-vGP&TIq?TfQ24+9!S)Pu5}dFpnW1dtBF8p{3H*=jL;!7#ah)C!8=2|0bT? zmvsp();(U5GnIE#%asGY?vd!{jLc!09V@q4<1%DM8p9V&&A%K|N3m8w(I0q4x1&EZ zO&x|%Layy_=Td<6P&Qc;+Ob2bc#a&o$4w=X-u;Ql>OP$2{fbWXD*7GS-1qp;%lTu? zIW~~<*}V+3oszSM|F}d0uJ27<=>8s*iZ~^J?c^%00L3!@GJT6_#G2n&6^*%53ylDx zM2x$K4oJ~ULfx>m@(Dwoy#(C4vuMH1$?NG#O-tR^d6B~J+WrIu{nR}wWa6&*Q1BZ$ z^ctb0Dul!fvJ@kS{zj&^0m99UrusL${J$8S|II@FVmVG{i7_6Q4K?|G#|q z=+AdT;zMh(pLc&0EkU594ov6E=Cc%3W_FdxgpWf;&R0@@qm|zX{TE!1%23AN!pa2h zH1|ZUMy{tgl9Lpwsz6hJbA{L%6cg7;m!8kpgssb;d=|5cCQz4`7QD5s4&qD%4Maa) zGUjKE7f2e`aLCG2sxsi#{h(%@ScZ-o1`;A{)kc^oT^WlE2p)?AfCWMFz;4 zhMolN)-iyYmiEw6vwx@2N4I$R=y8p^42cQC4`3A?isrf>`6B(2=wWlPB`fhD9K`XX z(7l22V$M%BWG&%5VD6mddAA_dc|y%V4mG9gEsA3MIq6i5`@k`x^YE*qr-k_zr@r3{5<9MPp?86mgL^(;*eBvdIKwjDVX~7XpAbsj2QqzMo)z~ zX<&5jAuta=&X!xK+bPZ!NpaSIYAq*DM_Af|tjrexZUW%h3aDhIYuFcHM~1_a`HUG~ zE=HAx-Nm%26M|`z8%E_j6Iqk$z{#Jf{VWyAd3TI1_u2PxGM1%ei#+_2v_PRcxt{6d zisVSamin`$C$VTLDAA;@*rM%wA;76(;bB~$7G5H8o?c>jG1@A;P}zS>hycsp_?*#p zBD6Bk0e+HYB^uDeZ}MXXKW_L^EVJYf=+WsN*M}FsO#77k@OY%DU&!-2F512sLp%Ka zrDUP(CVBbZujM7PL@wV*@4#1T^xw*R@R<%R{|9u;gMH;Z0*OVYU-yf24y{16Jg|@ELlwezDXi5-2(>0|& zP-=pv1o3>3rUY9bqbb3f^LV=kj{66i63p|eri=-+wNg_=hwv%kPeW3EH6-PSLsAxL zN)YC6YKjUUZv@ZLlwjXy3`vO&NjXGQf)GZAiMds1p7XANXjTp85gK|$3La-wSknsX-cr3mxiP)9g_0Ukd(WIq-2JqTstJ? z@*ydwYs!8B2&ZaFaCDB;lpy90(3F}$sj#NZ3#5F8t=aEsvPQDyG$kl|*AGeQACmIN zAt}EclJWyh**DPoLQM(c`RkfephNrti?$y~hU7ec9L0}t=VRM3Q!J)w#8U zigiA{NapEF$$x8&>~6PWcF+8;;`FLwn>(JRc7>pS`A-u*Xe z1Vf&7ehO^T@O9VvmZrf&Lr-jCRdQrO--$=9ilTLh{+lVk{qVu~sRJeGi|*pISfm_4 zS?D5Pwz%tVlw|2A7Yz(|Z(kr_2ykX~yIoP1i5#aLAkUOaH#HznV2Eh{zPdpBGF}7T zIfsdxrIiARfr<9E?P8TRu{^aRd~=_@da3%eWCZOOL=^`QSZ7iSuz9s~yRhT#lBAE{%t$ugmSC{z($rBH<@b9gA0l z(ca-+A=qGL>YV}(g6G}%OW;0!_!ev)dvQ1JYIV)w1bhiUxhCtPKl+(=-oMipebN3E z;#Dw*doX;sq7JVq=dmtjL7Biqr#|6a?6yWXw(Xj$#V*i`OQV~ThXlL0nC7I5Z~2Z@ z|LB4yctvXkxf0Q*AtpZP`rKLn#Q*AN!f+XY5b=-1A7eE^{*D(DjG&%FXSul6+scK+ zfP1C;qj&roc8;H;+rKD&3h|jB$8G$^h@Ta4!_0A{R70!WqPYI_U3TQ<_Xz((J z@5{a`D8n1zd6#l|PJ-J(qbu6ZZV5km#0Z*pSMEWfj${+AtWsZ5ReHo zR)aP=~=y)0VTI=zf@i+SP$q`V_H0Z8p-nbJoqleQI27<`5+g%FgvUFI&4cL#~Q!&l`^fuFeFq$Ck0|fy^S{I;O47fOe}{|wQ~sI0BA$tbsMMneLFlEPqy2=1kzE%TM z-up(8DRtA*T_6Wq>1Um`rMM`T7=t~W)&7;}wcmxZ&B zWvOqWwFoyIXETKP0XOP?f%b4KqR=0tB0Bu@pPZ3GsLmO#<+Qo7m>7MXW|m7cBi#pS z9c+HV1`4RtR)X^f%yce2dWn+;C&2y}C;^nU`v*Yznt<|y*8nBZzG?cjI22fDof~8a4M*4tK@xrLzW+4@ zCj}u8aNMv!Fz~MckNBhu__$Jl0+dAb<+cSy=tQJkmZ*O@5nYZ3ym=tqQ~@aWl~uXl zViEDb!__?;6I>X!dV%!fzrtae$XM;dmR50vS1ux#o8UvR2SUa{eiePuaz-YcIFz?K z!3Eh&zD7}`isQ7Q9(Q=57LWfqo)p%mQ-z7%Ys7rtTp)6*+t)=+($4rhw7QU8?5WG~ z^A!?|JfT01#C)u3VQtFUC6+&_&R41mISl}EUqvv9`s(%z)CZDmELF+IRpH4m^Ik9S znaW?tgX8~i=@aAVmfnhI2q?)!R!!IBREzvd6GP4{)lFTP9 z66b+yKoLsJ2r^dfN7+Lm_G7$^@EYHKv@+cPF|oK{y7T$<-Fg4@{OX(`F)YTOOvXj0 zZ_#NJE&Jcwllw3=iZ=cKYEPD8LqKYM*>A}dEB0g^OB+59Nq>vj{#W|q*0wL&-+=r# z8ilG1awM*2Vopdn7gXd9D$L)`2-W?v;V1W~cE18%Wg zQit^Swqb$(?$o|y^;G^As&UD=$pehb=qttILQjF#{uREKgX;lY@}K<;zP$+_i%yJ1 z{#+70Yp}7265uJGXkTKVJN3EI^7Qqvpdt1KUus$o{;bLIn!a1mpAjsJj8<^NOPJc^;PP zQ{p5PBNV$+?NCh6p#9kk5Xx%UyRQKEvLcQo??ZH z{TUHh|KIG-05KT)89Ig@DEf*V>`TqBxLdD~ttVKCgqbcc+Gf9%8J5iWlT;U(+@%HTx zT65Zn=nYz;VYN|5x;6h*{R7Y&ye~sEu;^NUkLI&&7Y?*XccYI(?9tuhWk<0aRAPwS z+sRCGxAjY;}HG644TfdL5iUkp-=(UXe?*Fa+wOJ|G`1VJ+pbOt681Qo9sA%WOHFqsH=1p_V9=_u9O+Uv2cw&(P6+Mb@OsBO6@7pV%^ zDyVI}wLW9KfLa6;^8fz!ex8|UCJC3?bKdj5|C0|PGtaa4+H0@9_S$Q&z1G?^uYI9d zVvUoi_o#8G7%cK*@J-0#-1fAO5_T5)@IjRqJ+P)W%{6$HuWRDcD#egw_RD1$Nw{r$ zTR3>ZPM;B@IMV&7NOup{zsxyYT%UT!N3C~2+|>$z_;YW5@L+?m1)t|44u(p>mhJp8byyV{4+5B&Sj zhqVZ5(}TqWbKa2=#S$d*L)sbMg=%8pA9TOdWA>rS^C-f*3U}a3w8NPq*LDOK0&24& zVaG%hgD(g^lt0zD>TlNhSzYBhfmjhCs6;uX@>+JNMl%<5a7m`o>-gR+(z>@j_7+fE zc1G5(K`OWFy`{NNUK{-__|VqWsKeghoQ%Kjp{-X_=@)7dcm5zwBIVnfZG!e_B5y+Q zp&=Dj#`N!759r_E*fIFd(~CFhp9!`t-`2FnU05=nrXBiY;z8A)L*Bof*XjOc(UU#~ zJ+%GHz}iElhdUsKZBd)djs@pMj46nX&C=NOHCP(`553Vh=cbwu8|x~|1F<1Ka^Zhz zIU#1=wd@ct9U;;gzG>T#%K*OdH~ZU;>vh?|_b)x_$_IpEABd$o*JpYV2X%=2A!E7G z=T|lNq}MG+U?H};#uZo;H^z35v91zU8Sm|5x4<*dVQ_4KJx{ir65F6>mR}%d>`_yv z4ZBfVe>D6Na`z`$r)1gtle+WE`&6_H^foBm0BAHVc8}7Z4r71PN5UnUUo90(OUkM? z#NVSEeB7n|$rM&{Q_RfJ^!Li@{d$o8o?mU>+w(FG%UD;cuvExi7xoUzF4!QFm2i$0 zA?i7t9560+{A4l~7=K=;Xr@NR_&^gZV-C#%!H2rl#jzII2MFx_AZexb_BTPdPd2*X zb13I!J+3{}@xNqh6u|)2C~M>ku(20a=uMXB%@^ZH94%vhJlQlcoH&*+{@xRl`Qt-I zPG6WDaz$0y2Jr#6){^d=8Fid*cCZhtJEu_R%bFyJ6RzttV~LT?i(@HYLn`U5z&-1t zy7IHC@p~l#hD~3~Tj8>8;VrvO(F)G>R}nGxg6^`~vKMTc?{GmW`vZJYRqnAZ=V+^_ zWW^KoO7mYo>Bo`vt0j;TD`LcIhHrE8$Y`QyQZj#>&_9XJ`g*XUt~?8Ww>snH%KK>9 zW{|{OqDO{ba?itZ^yQrK%N@^u&VHuHHC>JW5SCY$H0Doc>e=}{)h8fzDtaw}T~;`* z0#*1#p58K7E@RB@S<8N}nsqvM4gt0;pT+zVyk}MAsBJByMy~Qv(f1KaGOn(CNJ!(X zlkwFpWR%-{1?;dC%urccQ{5y(drF43-OqTL1+?vjj^jB+R zAX3hm_7+?bo|JUG7{gwyn!_&fpXIpFsI}yo{cyVhZr6#f_)p7HsBS{}kcyVGJPvH5 zf6=n7F8=uOga69#65R6A_^G9-Ce6*c=`H@XsC%?UA+}7vK1tZ^q}`-0?ASmIpt4b>(t) z8?fS}*L^#T2K<+t>sR~u(xZqy&%!>)aR-utqs>jh+ka`gjsmsC6(x~G_bT3r4U+?^ z#fmeK>9NaQslqUu?yij$Mch#}Yq;e@AIoPxdh$bBZ3tCl$T&N`;!urmRoP}UzL6!n z&G;7aAw9mKV3oXBl%Fr%Zz&9y;;mx#pv=YMg%H5GWmPAA_WG{B#{OZn%ks_4|KRNp z+P+t@%F=m^FEU3EV#b1nD21t?6$vEru9P6XG(F;$1gm4k9%Gv+RWVtAED2bx={I$DJ^GPMdR6)x1_&B%2pjNeOPl~4%lSGD|9GX zd@00ouKca}JjoDlwLJ(f;=MDT7x0JKZy#X&IKcjUC@r6=;6YD@__I^x};P1W>Dd_@DiPan{{aq6!Dx+ zR%f@a@$o#NELt7DoAY{BMtq!fNiRaftbd7$-2{Ih&9ZLelNC(ooHrO|fWJpT<@FU3 zJj!L}>%HsWK?L2V_;chZIvvkhow_E&gHQm-uF(2XUTjQ7@VA8dV#=)Ku;U2&X*LmI z-I1{&{X+PVYeZf%I><|c?h?5HRZKC z5gb}hIso*H+%*o6x{Z;-*`GU4&?+4%J6>P?wpy8 zM9YNWgFUK}QwFPgE-Ltn+iv2|wY4Q;?iqQ}*^#fgXGn(;uI)*)FG)@tG)RYyk6BC= z>R4+0;hiNHi;{db@t}~i?OrDH(0xqS9xJ^m)-}GjtF;W#{sDX|4iDcg1b%kJw+%JL zxdi3H61Z!8w|4)e_^uFyL#OWvo#ML|pD*W!4|(_^Z#Hi9$&*OgW^=R`M8Rw6wsuA8 z#i`1eV9)cItR3DzdXV?uI>`H*vfoSIIByVKgk?uFHLcI3{b&*m!{(#Yg%kahs7!Ii zo5I7#Iod3Rbh!I-~8n7@BC+_%T6x=5NhRyEJnjV~3;&q#lV0gu&y zws-_`_4z2-ZxJNdASlSt;rxv_N@d5nCcx&pJ3Age=Ea7}Ua|+jewmja?Jab;cBjCoQg1$9PiHdl_H&p@~U{= z_;rl9;-mD z8%_$BztCKAQhN{oTix22S_7BQvI89vg?()XMSilga!D?h}YK5hzE;)o$i&|l4&5@!ORu?5W;J@l{_lRR=A!XM%tp+a*jv;q^ zzOycWM4BoXJ?y+oOd-YT5zDsTc85~VRxnqXVCXyB-Imrnm)mx16UqE?ubGx_kfmsO zUfVaBF!w`X=X-2}Ex#Z~krPP6P0_?SN8;fUjV7+mrhiR4ny1@F)DyCCXz<_fE6z6K zZu&IcYlq;QScUVSQIWax?kItVC;t-{A&77Lo*_(;2cl(_ahGZPZCW2qJCKu5!XA$V zZ@*9UH?a~hlMLNe@eQ$=nltje&3igrK7U8^3~wCp&Q*pa7yGk4?3G1gy2*z{fvWEP zJrrVNqw%fIJChFFi@Fs?&%W)OK=4&=S!>fiwIQ5}N8vtTt!IJvp!%j?c&w)BhX2(# ztV&0vmhQ95h^H@Yb=j|>GxmeQnr`Eod&7DpA{3`7JIASJe4Ob7<%!MIFQw`@Rh?1_ z)7S*uyfA^RaxR{DkdCFtXNtz>+ZrDiNXw&@a1jZ}`d+R6T=Da){@D3W?wR+ssCskS zbk+RVVLrYX5hh*EM^~P+8^`1(p@$}&AxV@g6mS0ne4ta0UKlU~GQ}UOfiBUd+gqII zhk*CVF|7#+?q|KV2d7L<8-7p-BrM9?nyX}P9}$s;bYm5#_R2+Ka*|v*tlD`SET!vK zh+nEB31Szm{<1z~WxS5#E_24M%O4zQyA%D;z&R63LF`W*fZdx5tZgNe+roo!$hSoU zZ4W@P{=OtfFDKS-P+fUQT@WIOCqckdn z+J(u!XJ({K${19dj^Z4KVSwed)}&6y7|WC>qFb_%C;Ptr4jp{h*FkSS7yB5O-bh%MIJ?dl1^J}8DrT2J zFe^`P{H*3jg`s9IHltWm9C;et{sr6+GHlPO6MP=LeHKq6EIdT%!NT~xY0zln1+awb zLNsd0RN?7uC^g(@{5r8vMIC^$EViqKH0gnO2gaOrZa@>}@GhE% zhJg_L5feSQl(SDIrdYN}e9AhR8fQL{ysvE~jC$tVFlytE8HHruQE!QT zk)txh4%UlZys(S_Z}a^GT2W>5{0Z>LIt#{r6<7DnNwN`^!}W^aPZ1l*v#(l zu_DmeCUgF3W>B*Dr?l+E(~WujsU@$%5s$(wP2@|@FzWAjy3+(uiw!6j?;3$R*AL2c zK=T=em5CfeXI-{&VUGIy<+n9eJoT57RoyF`C`o{r-kJ;WQ>suC&;1d+$VxBfgT)!8 zPslc%D^$zWap{?|S}mp;`pjlDLQh`YfnsL$9$4N?TuG5_(vOpUKhW{{OaGc_OHCR+ zIZB)L0zg&-Qo}2=_UqDg{3bOpGE4ZP9#%f4e)3koTFzc0pBY9edFH?MTm6)(hh-(he>Kcc*JGJT;Y8~5qghCmVI==sA)_dC? zr)P#lrX?CR7_4y`JGO_vvC#!wg6e(=$h#($|8ACkq@4u25h#j!cu%g6s5<*}8 zUhwt`N=XnFM%ZbWZ)_gQnudj4ZUN-Tw!n2k`*cPzbaiU=J9NS7i`;HXB8vQx+?Rrg z8l>$+>l%=mlpN3><21JGrc1(QtHXIaqnL_y(~$CQMwEyRc}yElOtvqSvg801d|7l` z_ajp8P=~lE5n;2#83{qG24)d3^FbF{Otz`31q%^MMs8=-%q#BH9yL*MOjz5z^Z?<_wjSx?@@Rb?c{x>5y zk(#^TVD7GZ0Bn*PE&8QYTru347jVGX>ku4!XM!cj?wtI-?lr=DsIf|554m0V5xJO5#M}jV=c6q zJbOFNw?Sqo{ObIfPjpeWQ%&CmQ*J}N&ivi(G<{YB;o^rJXF?~ccWC+`!}}V(zV%cI zcxJ$Gf_+WH=%!A+X)_zkq70UM4V9kJd$@Yu4~>0R{?I?_ALwb=LX5>8Kq=(?SUM7 zgxHqYugR=4HW10%r;-zs(bEF4sT6fy8>5jK-gZyUxH(&qAt|Dc)AJrsvJeKBV$p7I z`+_ac{-!6&RfVq{>4g)+jk?A7rtRAr;Dt=BP4Pd5lMC?dn7^Z`r{yw|bj#x5%-2N4 zs)?~>R)dFRur1b;%26h5vUN&GGm-XAahZ?cAVeAYMt38{bqAf*Pt7jMH{y0b zt4jDzogkk}gVT%EPm=3_4@{$l3Waiayg}v*9vZ#r}4yhzU}1Gc%57 zAXBuKRyYr)ETgd#v4zqYTKU%vU{*a0`e2#+1ex(f4ZDy=I1MhO5f)O`S)+ia>6hqj zwBv{)ogD^jIvTCrs)Ei#{_Zok%Q*pNQvc#*CiPAKk~OIXk5vru+1qTM*jJd%5+Z*K zdr_=&Y?KiE2DWD48O~*C=vcRb{^Bc|b?EkeC#!*DvKsK=dl2|W)7Rkb@ec{`Z%V^| z7lq4t1o@gKucZgI#F{^>}_#AZpr|0KoY54Gq=09k= z^I!0f=?K5G`T48AWDl&%GacvWH~;Jv>|%Z{N*BoH-^_el?=RtFPClml@1LJXcaEEC zc3S>|947TOA$~Pl2l}awL8W*ck-Lt_e(0=$DWpsKcaxUi53T;~o!0m8b?!D&)jc!H zAZX|&%7K(>rA6)nd5sa&yocflQtWDNg7b8Q@R{+Ahp$8{w9`4U3{l26*vzs zvt?6x6hrb1@dJlL7VmZW>KeO~49xy6%ww}*+V!BI7HB>iNZm?X`Ukiw7nu$;yE@a~b}`{4 z)zRPFQXWgV^hp-HHrS4kRNGA%;71$aJ`#9#IreAL51nrrS&~bk316@jsw&N)ke!do zf|%PJG{FfoYu|z^$95;*0FbqWq>`Ub;uzxE1J$mPCrt=F^8c~tGW%UIZ?f-k25cd_ z@Ivp%qp#SPZBOc#%S80-edTGAoao`DUZF3mknhKnFF0csYV@4p=^2eQ_Q^}{{pXo) zJ^_*Dzy4S!?Fe?se=ncjf&Y$sL63@WcoVy4I5=+uXcXzg8eQie?5CZ*k1wBL&mz8j z{^T^()BJchAiCs7?)PR!76d6{aTH)5bKc+rzBL2brIAM;=Y6>qB@2FkwAe`14S8I7 zl`QzfAXfl%G2R1A3+{M-F44(&-_BI*Fy6Nqu$_ei0qJ=Vxr-*|spg?vAnZ!2dZ zNK8tb;QAd%y;FnZ)^HZs2R=Df1ZQ&?P;lidFxHXi36(yt$68oKhc`YjFJi=emFFJ>7wlj0mH67_D<_}&P)wR=jZVyQgnV`wBU~VlwzM5Y@&uDI64tB zlnfUsHsa(+9EG5or`7t4#ksmLN{RIqGPeiTRTKrxePO)fezv?&>)yiVGef)9Y~_hC&ago4?Z-l-~PIBasC&;wx7v}S^x}z+4#h?ejf|u#{y~Y5%N>V z%5!5cSVm0GR&|rJQ-Y&fdU1vnT&BYePAh{li!t6FXNQH4x4VWB&RM776ZG42>^W=Ls9adGkW}KkY8GG+*&rX3>rfE% z3?+jr+OhyM2j0>gc;m}yc_e@5f_L0C=qodpf zze0g;i#2}Mfu+McL_WGIouDh~LaFo7Xxjx%Qn9TIjSHA6@+9XTlq;3B!?t`m(~LI? zhllUgs25%f(tiE{d?$S}d^H1bLP+U8aP=Xqd}r%JhUZaO*M*8Qu?XfpcFfk*MYxCQ z`s~%IDC?g1!80*3T#Pt(6Y40Tmkx!K~AQY3=}L z^o7r%FLabYX?>{~tJp#GrC*$+(MNO7=<9E9)}!J}sC)?e(!bm!9CkWCI^#02S z(3g5}fQ`QNE@e8^m(F(qUzh=$+y7Q=q|ld+>|9@(W}dTQ>Ox<7{YIhg>PtOu??hj^ z=-E#6rG0(XT<7}IR{)u-ANK`_CYYJcQlcAF$oG>TueI1N4>DeXVFH#lUSprpqv8jt zd14dB4A{=c>y?Ea$LlJ9WR2HjD&+e~k5_-$2^9rmB^!MYvxBi}J#J0Gu+fXtm=KQsLA zn_qoY$oG?VzPRMAdlB&A#Epf~1Ub!mnotTnAGkpxI&A)g_{&Nrn(X^K0#;a(QM|ce zqlB#;t2FPO`9Xcs{o(NjREh)}T68u18w@Q@1z+KTM|&8N+Xl+VcISg0>ZpuiAM~Liy$k<3o;Ydh5dEfF6;&&23*r`9!feVEHTi2AbL~OinA{ zPJy`L!$4d5FJ?c&G`pwJoldgv{i{26 zrP_U@u466CFf?WBZQ0Zkimfmvz|DjG7x8S>E#HB@4Tkmw)DSEv;=|whhJCIe|W+#!hEWaYhPx`rt5ts1K=4%s;O) z{OziLNiLCR&#d($e)F)BmIAq~ooSk4c$_~fRKs>=yAuYs+nGIdrkB4nYyp-)5a;#9 zs$jf7*E*LTAw;)3zZ;N2)Wyl_W9uQ0G{+5|>gt9e8GCE%?w-M=3U0t#vPaALjKY#p zO|zP7gG+zMLw#UCxm(SB6l#ghiS=3X z(FL{hT7vT92t3@A|3+>Met*epfk1wsr6Kh+5A6QSU^}a}4h)y@5Po^`ajqd6$Y-bM z3l_~u`XnQqNzjb$e%PH-IC%)A>DnGU{)Q*L$_<7Jx6gt)5 zif$^KoZIx;XyT;19^lUPbVM=B!8fpx*=699oF7b0L+MgqDnT2`(U-1zT!J#!I{xWK zFhX#g(XYdNOxtT;BaER-efA4@2+6kNGtoXf&%%6>_(9(Q8v9|Q;2xm)XmGga2M?}K z+rPRxKX{*8H_ZvnVV)mc0qBktDsX$#H@i2UeI{A3)NQUSef#mbB8RKLy%9_EorI`8 zKR9z;C;FT27Y%o@Ke`@}x%%7NPiV+}`dd_md_UfPH+_E4X8N19t95uk{Atl6{XVU) zKZ{|MttM#b(hg3cUef`b`%R^s3GR;G2ew+%3F8Og+O3f6Um&P$? zfAv`x@VOblE{(kYJHJA}AiZ89xqoNp2VXVMyWU^@;q$)n{;;W&@gB!i?4YlYHDEi} z*Ove?cf9wlRY!f}eWeQde$wMLbjv}o3>Y@p_|A$MO2X z<^zn^`Hq??_!r7}3UZb(`GO1hjtt=3@#_9DAd&@FwhM)h`{CF3>v`AXHO#c&&d&?3 z?_|90TGPpRB@Nil$7@S{$MLEHNY;4$RE2y$>GA6Rj7N(u=T}940n6GC-||~MDz2mQ zA&l1$Z~x+@wYkl^4BfR9DMv#Y!CJ(0ohB7naR66vpt3EvbSG+3G{F~6)o>ur zdpc77e(-iwpFjlf;%IUR8{8+uWqXNr47Q>Q;pxAXYZWo@h9)KR8RETplahUK8-7?- zbU;T;Rdm=w@6vVS@9zvn2k~%{b$6kOmQubae1i9~y_EuQq8NyO-0r-^f((-3cynPU z9@%$ZXCluw1aF^@>S`QrScFXw6B{w-yk6WPzuM+w!=zlIJ;|h@Jo{OCzZH5kNPDS5 zqxn`s%Lj=G+qyh2_NCNZo~=+kWN3N!)Iz~e_O1FlI;+F-?hUEV#%?>Td^%IIQsl}0 z4jmT;<$VGL5)9WB+9hh|rHQt^9fElO$ z?tWT6OyE@^y#7`qR<2aIEawLnIcgQP{hP*fIWF_OGv`@Zkie-^e8%Z$Bw5Y5)v6dt z>4~s;(wXW~szPM)5UJ3)74X&NtQW{SKYr&M{L-j-#fvbInM13U+M2tER(EC^aPg~9 z*px|6D#CGID5{NGP$_DGY0FR(^kTc7eP)+AuhMpZy#F}Qys9vGa=rnw0!paED(4%Y z5;1iEm>y(vBr{zj?H&?N=g!!zy0`wjW6 zEByad{4YE1;Pfx}AB_Juh8!IK2`EDUQ|Z6`*n{K0tk)spAI`aNO8N+wbFIsF&z%uX zMrfz=RSgHScRq_O=BJX+BW>P1*0Yo;uHCZZqbJwQl@tMLNyjZIy{{4_h2S zd65e$7nPt7DO3u@h8yHiBxLl{+Ne9SQFNAWGT+CiwW8-p8QZidlFTP*+?rU0)Sq+0 zd3y*-=W1h?aH%jqqK;L76oofN$Jq;=Q$SSGk;CkTl|+b-G3%C5e5fzoCw39bFzH1$ zJD=@o%4%P36rYh=gpJlCSS9E&asiL;^?`3bMtGBNLk+48t-<)OEGP5e5pBQr)?;)3 zKyye~6j>LtE1(KjK=X2`DvUU=2aRc@71azH5KZq^URiiCEzNFZ84nuZ3 zLCQtSUkbJ+A>72|%@j-KA0IAX-*mjm7&gcA%1W7q)>!>gFZ2L-`TnNCP$^pWveJ<# zcgC1-{9Wkt{{3y^71m61Ej_=~WBG)D5Zi4cw^Gh`RW}(s4ldXp&f6C*!x)ceja#s{ zLZ}LW^Zxyr_S|(0x6iBTFMj@;(x7!!*~+7Mj&6^O0K`NTw+n>11!l_e(P z;B+~~r}LM~?sO)1xwM-idB_<%dQz{IyA|i;KL?k7ELP{L-!Q%*<}~XkJm4rRxU8P- z1#}!(8GJBY#93D5@`**kWz8Hc!X zm<&L(D%`cU+ww3_1_H$*OVn0TDh%(s`@{Hl?y`*}Vuibb5Q)cn?{0do^|jq2H^%=Q z-_*Jq7m_i9%6CTMV~%Nhx9zdI6`}Y>Tp}kYuI#-V^e>EGdF1Zk?NI!M2hW(6dbLJ*ihL$`V6hh3#8)M$*o?C+v0g6H>T$EAe1PKzsN9!645~) zhvLy=a4MTvnEH@cl^k@&$q+KJXhI^|`(rXN9Qm;Tr@qR|DB}|{gTv{5AY?{I$FyVw ziwz1sI1xX%)t0We8I-szSJxLY`0K|Ns*@p3cv8D$FyqWJ9DjohNCupaaVLy?(LK35 zrZWDikg>U&lS};R&N>Eny0b|2wzk`@)p@aA7X%+1aLoD32Ykv9XP`%%TkHrIk>Ro* zBRpX_#3=$3(?+REiJ#W0)W%pp_$hxFElgOR7hLu+57kdYhzJq~#Jg`#VO6}cH{-uY#D)RLViw=P@N?$b zqq2PC+( zq!_X)0bDwbPA&fG!E?iu7X0KypKj&bFO2u;(ezI0P0$L(U!W39*-w=w$FD4+(mS>i z?Pi)B94dcdQhdxHnDQB33tTGi!o;+EG4tg3v^?tlN%h3ct0s`D-k#tN2$gT3H~pyh zTV78{^ozeZAr9|M8~pKv__RSErxx=V!7w4d5r!L|h!%c4J`Q6cNDNK?43=WK7vVVA zaq!3S=<&QX%$z!11UKU_cz+!)ptpTdERrYkhcOy)LQ*RG&{$9)8@{hnJz7fue z7VfW8gH*K*&NVO@#A(13iu+T4(xZ(eFt6;RN0q(yr*`rvTVF?hW{GIYQ_oFJW*2J@ zbHlfZu^rBG@-)#W&JT(-xqF0_w8flzSh&bT`+DcZ(POvo0O-8OCcbI^Pb);)`pXfZB^&rB%3li8(6(~>bu~W3s92_a*5r^aM zO@B^51GAEITM+X0<5Ip*SJvhClZs%j_1Hp4fwYfg@puj#ofl@M7jvyoIrMPtfie!z z+H=nD_wR2HKf>Va=eF?hsR+?k%97I020dG1q>6=0vTuVL*gn(OfcleBw!*`e<9bz- zPU}ijFJo$<(&tp^ez#I~d1H{Ij!ps7)&9*^3#i&$e_I+6)i=J2HitAWt6BMuyaWDlxiSzN{Kev)8v699#J9RkL8d5lm3}ccIBTrW#4|g=lLZ5 znXWxN&41C4_siGEIPq&fl|&Qc3!RhOEOnGYCHn{Z7)u4^@DGh|AqH*_5p`)&rq6qn zFVJ_+IbM^U+sx@zYyxcZur*bQ-c5rH4pn*NbP5#$`#T)d=T8|xy$d8@+l{=tEmt%Ci=7sk#tk_SyhcJ2|;^6kN;3lIoS-{~F| z!AANZU}BRx)VJ6ORcyFz53_%J#F$z0fMNF?XmhCl+IVn?*q%9m7hOus4)Sbc#syc$ z*(*llliLZO0Z`bbE(U_9KL#J93+yZY;100HR};;!hM8>|N$0Qf*3)#e{8xqZSp4aT ze9(pu3@6U#+q25+ah%AY`KeQs?>Qo;yCRqi^u=*LaUT}`-x-wwYfAYu4d4f(> z>GnAK)!#6iDo3A%fy5@Z6>a5=Q@=1~B8Ivz5#nwCb?$-ER$Qrht z4V&0F65nI76W!`*f)-3JDJIJYrjczlSIQ^noa`11z91_si*Ft=if{{!DqxN>duDa^FFMxJr~~6Cei+vX#xDhf`lYHHRem*G9XD#3 zhs&y6xe(#H&O~8TNhEJ$Brys2TbfP-G;FSpR|CB?wNT9@i+7n8HdIMO^c}+&XEH6| z3Sk!KzNhenQh(Kp&wA+F@v{BbaAzk|J3|xN#lP(q9}N-$vhzye&t{O&^X^jM3lWy! zmYWaFTYre6pnsqN&G#-&ny-->NF`cJ-^U2JeGO`IVsv_Y}-|_gx@@Qt~X}_DP zo0b2J?TO!hBa6QOegEwDqQAZE25KrR7P%D5wpGDsWg8-8&vFwNml3Yz2An1m4S59b zNpLYV-iA9Sv^4}TPC_5&&sXHIuNmLNhX1424g7_E_@@c}t)0O~%xbc6i=^zW=3X`Y!;vC-rzIVRoCLkl@Po+%tPdokpu1N?- z#`jt=$@Cn~Jcnw#v2AfJaWr^=NqNkg#}oeD&oPEcyMYr-to=@BjRNq} zV!Cf)ktoZdAdXTfJ#=l10u)?wt$GnA>6bp}>B4X&S82_sr!&=sMLV&mT${J`_<| z2{$VryplC@SMKntJQDg&m88#Za=55cEz4l5(y{&cWifB@SQ@H|Z^t?dC(i=~X9=zH z`C30ZM+==f8FUQ2e9786p;~sbwkV!WY0~usG)=EjYyB-yFMl9HW~6M5(lN_-#4Zje z7GbAr4=%VmoV*k(R6Bm+=zv5l23uF~fxyS$vS;|fL3{t;gGUnixO@_Jmd!jec0GxM zN}L;pUr3u~(;Ao826_&;0~K88+PltKRMh-NI5|1bIf0VV>}7&J1tDx@a^d+UnA$NBI`aA_2@IR~j9! zg7f)-%cm5js?66){4tM=Z;ekXN<;@@f++epbrvtUw(+6pK$#wj_NRvOAd_nD7I1bR zp2C04d}4Im4yN*}={8>IA5Yd_@&P#eeem$e9lNwTPNtTIcSkZ(Q`Q1Zt82; z#F$6HM@Oe&0hoyaizI3!FbuPU@uCqc7sd$}}0bq!{O zV;wH++!b6F=SkY%q}60H%;-brXdGl*IcxH|#K^LSONg*?_gctXuHiEC>BWh5Cd{#u z3UZH7eM*uZn6>i0&G&yD5~# z$3~LTvk8+{22!*Z#5C=`>HLy1+=tX2JC;k+K1<@kXkJR^L9t1!eM&jFLO>EnM9P29 zJp4>V1Be8S##sQ&Je2IqgztFgWkifm2&8TULCH<_vE&of7T3zh;DZwad|&Q;cgJ%G z#SP86&i6R3ZGR{E9vR>1n%_}mJ>ll$A!i(8*BkL8j}$b?A(hLAU?gQYIft#3Loq2| zGxkAp;pq-89Ti4RfEM#7V5ES?0A?im$~hY=nU=|Gbbc5$LP5k}mFd@ZpXsNSLy4&o zoi?!s`s4B0MEpM!j~_L$>d3$i(KxP4Tx%LGdOvup_RU*jCj2u7 zW*ZQlFooQ@wkkQ*CLD;EgafxI;lN2c`mqTI!bP!b$PX|MWA;%pbDM+%wvoC}@HrrR zQE=S?UR=MMhX6B(%|lRS@(>L6=OLJA^AJojc?ignWUy}g8D@Huj38VzE-~#W%=ji5 zf&2DO=}RMwBH;!D<;6}mreMX^|Bgk_fTqtSCrzf{Ki+dCb;qQO#du)wD27UDrS#?j)Yw*wu{QgG@l|tw~KJw?(FX zgDLE(Gfxc>mX9LEn?3H9GV;=^Kdw-gI&8NCNPOIls#Ug!rKw_rW^n*C&EBG~{4AY2 z(P}bHnNJ3u<^xNLX^iCJ#^imRgdUdb{`k~(lOdh5NlSmmXD@jS;f*d0Z_%n+r@ z`~%R*`;7;ApMutDs{XHh`Tvo8neloT^5tvWjC`5g03&}X?4NY$`73eNiF~=z)+|=d z>a3cU#d4UpL%xiT^5xAx`q&eD8oTUHL55ro25qQH`u*mnE9(ITbX1d7IPKz5IyUx3harUF`?V=9GIY zoRc(qYyh(M1A3b%Z2N(4KX3=uh1BkIG6c$U1gCsgrIKT+bySmwwe?wIQ<@ue>(yCu%sc~Q$OXCyiw)qV z!KEuGJvo`r^;|S*Ht^0pf3_x&`Nl>ndr7hJ#9T-@)Fr$a_c-;G0TmrdHy75$2Y{`7 zLd?_VBKBl=J{`Fs8BYr;2?-@&qg>U6S>t1q;n8=hh3vN;DLn5z* zG_X?&M{cZ(_o+72W=9LXtb?t50wcPTZ8JA$RJXpG7dslyt|DU9x-l5BA--1Z<9uFM z@8@01JH`^Rtt0TIj0@2$h@?}E5sx{dy>W$8exg`WW<7*!MJ1n36^aU8n?epOoj#jg zeT=LS?O3#W1ix?%&p5ndH#bkI=p(D!y4MA3R@DXPuL}4tU;h-g3XEW@@*=BW$*(G3 zJ1*ESzp$lECmO9U@7}ehC;7MH&(c%eiz}jK>M+*&6z;MZ9~KK=lQz=yy#uw(d+Mg} zP0uWVzOmFtBdw=`yx+`TtBI2b6$2T1<@da{e|Pcf6rXY66Y=72*hgt*I$K}R zv=lmE;vwPApFE9S=BfAw_8O&etzbNyI)m3IkH671W(?q#kD%a@I$=Nvj9M^UA_tUP zt_(hOR9(E^Bbb6gU_AG~*TwVufh%D#UOXdsO*ckG??~PV66f(xS+ik@C7LnDNK{Uj zBLs4W$QwLEPjHPix`(He7U;JdpYy=>{q1dA-SMu#IBbS{>wg{o`Ttz}|GMqJ8UM=T z|Ecsp>AxHQrN{kK@vnW}rN8ubZ!Oo9)q0WS7*~WZJ;FPjhfmSArn$t9j8N=ICC&`U_hkO{T0SmJ_NhS1 zPY*6Vfm#xB%zWgW#K9bC5!H_KN2{#hU&b?Y2`Is;FSbl%g~5Rw*>YKw1;SNL?E1=) ztRUdK!M^o9AF$Vs6@v&iQl%O&z>7U7Y$UycOMimQiX^9MY3p&r`J8;#1?R0Fxizvn zm08LdPpwF;YgoTt&c_O@^()ZQ7TUFz6h3tI`nU@t#3Zggp2g53nkFO zOe72E1SXQ@i6TTPR}*nz;D@ncNZZe%HJumEdo!Gu(gj5=g>@vli4)JFJBq$eX+l$i ztt-`9a@cv%r)d10@Rt3N)_vVt zdbz;chSyTNCgDruh@sB#Kyj)F-cEY_8#fa zn*Ui}BoA`r10LI}Qb+GfDzm9ox0q>4^Ui#) ztlqB&ve18m_!r#HnVo@87XLCS89kN*7&ids$Bd>4SeU~+?ic`bEy{rWL}*n$?`{xG z+X_z~(6i)~y}IG}-+ZQt9Vrl;oB)^tpr|^CD*)yKJB3*9JBfdJzRUQR-*gfGawXsn z5dSjPOi4Rm{qZl8l2<|p1;9KH4NQ#3JK%0Q@jDRC4S?BTNP#6FI{*ePDHP93eL-`b z^Sgt_zwD-9m+>$6@G`3Lu>mk2ftU?|3DS7S0GN3OB@=Ss4}clD6_kon?-O1?@LDep z*kAKvU|t2{$aaOm91%*44#m&;UA|#}Zn56*{(#X$CJZ>o(BhvS?{b*}AUejoIC|VM z-X+1~F5+FZLFhW(MLD|;9Pe^ra)^m{`9LK*iFY}g=Uv6Sd<0tm^W$CK1Uwk-FJl}365g`cDd{I6 zlN|zM_Gf@p%nDmmw3aYw)FSa0B3t$<6z0=Lp<{O}kCH9BotLx}vTq(CG)ydw*(@S) zk>h#Ww7>6-{7>5m?fQ_8hfz+0uHs>q7|@lS#>245V^f?z#amjwGfhh@cKhPs#Vj)G zMtX}3Xl0Sa(nIzrYcKr$CZE0Vye{Km?h!6{`3m^P5gu@@PqN>qja}LCFxS{hJyq$e zZl&z@eD)Lwom%P2;eDlGH0J5JcdN7)KhrV(2sdj zMJ|OlT&GsPPAfdUTA$m_@bxaYe;&SB_RK{VW{GP5EW5U;@A)H3RY?08FIBo~EX-Mh z{)oW>`?K|mxQXAegTT;__tFhHju6_R0jh))(-7u9yikGSPVp;^>&TsBxn0h2* z-qC&!e;z1ahUhs=`jeA=LQ?WD>i6-0!#{&?AhKN5&L<~yI-I2T*v}9zBV8yfUS=aB zrFa=kvAyK0K1SCD5Hquf-N|owXQE#4Uv)NYkR^zi8NSFcHOUyJA{KiuPDQ~ehZr|= z?*ZawE>*zG{S>9 zu`&$3v6}95igROS(mt*ICrg$TKg}QKyi>DeNru0(<7FONWujg@=xWfJr9%>LZIY{? zD)Zyb4;wG@5S!kdco|jxbQhJWFM8y}%cy()kePBKQ7C7_NGdNh3yXC?-@_N@y5as# zdG>?2FJ5Nh6B^7e<7KwnC>1YW=6=%xUf6xN;UeN3kpn@s%8-M^Dkav1S9uPV;OwcXO^ zwhPo}H~!{65On$pC&}A`#@~D$P-)5eeE`8rR|&+^s3qP^w|^!74 zxuelTU>9V-8vQXHe`7SdPJ(YDiM*y$**l{79XtSM<6p!C#owmcbO6p%=hJLJN>;M( zYCfmA;|5AOZwyU$Q}iN5gk7MF&Z4Dhvkbn$^GR&5r3t@j!W$`IIJystOPX}EflSLM z3g+DwW*6}{SGn;wJ#*r3!g*Uw2u@NqA%)=lo)35#kai^vTzPjMZm{nmZfw0re*@nkRc7iX8Zq@dMBr3n zC+rY^)3mg!*qb>dvG$FaBBlgO_lH~wY}WwYXMhVvj3f3pv)oKc*uIq&lc zZua7DmJXr2#NXU({%&`c{^uu*ziGviCuKP&{)Y8VSxj;3xa%>qYp_u`XAid24(CMS z5RcK5Ui;#29^$Urr}5Be+0^zlQ%L+}<)s^c!?~|71gBgsC1lATFhvVHcCyQ2V~G_u zdVM+$rwB|mR3nVvy^X`^6)oG$X$z4!c%0~rU6DA9n@*HN@&0WuyVF?hyVe_NL5jzz zhvK5FKORRrEA(|a)F>WjLu`f{k3-P*&ZaZ9>nO(XA2#a8B+zr39~F5zc)du~*0_6d zIY!@yp4*+fF!fSF*Ls0xXr-asckBr`jxX+y(a*!oJ97ZN1={4q<7j`*7R1Km2)aUY zzQ#k>{{{_90S;jo4|8;Gd~QtKV>%v3+^XTXxet8tIFpXH^J0#jTpWI}mV5Cy9J_s% znWWB@I@jYSCW>hiwk>h@RhA!8SDPt8KfU;zC+KMCVR$Z}Q>khVf%!4~k+J{a>xQ$? zB=T=H7m5i;MpA5&D&^UDo2STJXXuB3BCT3Fc}X}f&->EU&(iPX-6DkQv~d+r-+v7; zpQbXYXi=TIC#=Q-~{IbKK2B|Kj#wsW*J8vjhVvj`pWrS#)ayhm!W86bVvd>L><+oRUL z5`1U^Bb3+n#q9AM;tiP3bI6Q?^*6dh6kE16xb!xCz|Dt)vmQ50LP?T~&nkKNyqP%` z^?CTLkWS(H_e9Fq=zO$SOPd^f;JVFWoP3ydAx?ui2b&^4rXXfZd8l$Ux*;~8ZiV|* z{!1ZFMDbs;azM{D&hXcCGlksnATk=3ukzx9tTW&c$_}ZP!By7QXtg*g6Cb22o0z!) zpI4x4R~6P_1~v5>=V5Ho9fE_5Ghm*a0T)x7I7Ktx4=+AQo2GQIOC8r`Ua?l!WJZ(I zj^ezA3p+=e_?c@IKl4o1g`L0Y?845UVn6vWzpwMa@j=7}johjrA%cT!kdPb7V|&MV zDn4j(a+(gL=wR4%@aB#ILNmGu5Ml_kLWD4%%a_ROH(T+;j1T(v1I7m#``n1IoVYuQ z5BfQabas5uICzWrpi2npKrl6)i(qE(;EqVDRx-}hx zc&cEVA%h!XJ(M@NHrmLWN5)Dh^erC)$_*$I>CW;Y-CqGp#~U4w&3&98`J;m@%wsLg zI$)apNZ(h_0c^1c_ORh?qF?B+Bh&Ei61*oo%Bn{i4ulaV5XCMLBP4p!&ADJFKcbF!;&vS8+mg%xFTP+e-4!U zpagv)`SK`}6nW4Cm{z{rF0jA$D3PY$p~|bzTXpVbLe$MZ+M$Cse9_@VC!Xihkg z)n9z^Ll5DaunGOPgtN&Kv2IQUjV~@~X|&9K6&s4@5AfJe5J_JAP}lwd%WMqKsb@16 zR&rjSp0Z|srT2s0d3o0Pe#F+@aTaxN@z)iQ&g*BLxA(I3f1&zgbL)$K6*BmlTmm}% zP`o>b*mYqP!K&otd7NQ34Mxoz7awv_G(KHt8qtfiXTWJ)`8Xh;LWtx_Ix3w{z?|s7 zLgq}z`J%>727a9kS>7THyY0v5sn#s;bw52uapz4jJACO{>^DlCh3qG^-|*e9^8mXG zQ-`vtdra9BXUN7Ls`>@~`iP?3`nA6L+ui#8RNvkQdcOC%gFoXV5HOHBxy$$5lGJOK znsXzZxSVN^$sJm7;y{S7Y-2b$VRiV6-8_b(d`jYW$5YmkBuZ2a(L%s_TT+0;vqS+ zXx;cCMu)hjp;)qr6nP@NetaQx2{?Zulql`qLb_ODF3O#znUT0-Y?9pHL&A~V0=t_& zYcg=WDYMZg6)=-9<7{f|cI#|jj&Bt}7VMeL_c8I3efQ!(;>_+ViuHX*pReF^nwwUv z$nMX4OkTRY_>`(dNm#axv?j}ZE~7K&Dj?N4x|3e)RxdcbF-V@=NiTM&7dwmrWxG?* zWiP_zPmx{ZkNLJ2Kl>Nci?f9J_cY*SLDc7a_-uONo-dU~67$K%QyNY#Dq5}x5ecC3 zaPpG0FPB05>W8wZTTbTAS+dbgcTIxO_w$|fZAa6Y#w*zLZK4Wf27nznM$>iS@@GK% zco*$m-!*98ayqEK$%+Wt*X#42`RpS;AAR&66-jUu*9a$g!n2V(KrvVkJ7eTlGD5^3 zcaFqRCbLq!ySW^|IUZ9p4%9C1?3gZFJoOb+=e)`{i)T77i@}xdo*{%=Q-hp8<0>O& zIUjs2UfKAta-1TMxLX~A2ACnp619%AY;p#X0iSlhHrvI+P-u?9W4DXd<%fXBB`zMn z{f>u+Mb5TOD1G4fdND<2fTY%HZobdoJ{FQ7SK|H@Ij_=VZq8`AbC@521~G z^AW}yKsZ+<*)&yecRHW3sQBmskLAqwzua%BU#|ighSUAnF3xtw|CKAhUs3?=XySSaYf+&zvlQ+~LMcXx~T zb*F;shb({KeYHNfrI$i82C3#BWU+XPyoB!5Gw+Q)XD$u)*0wkoM{IX0sits)9xO^Y ze>wy9fD+&H+c&rUWu+DuX9@pBlLZrZ^Cnr`pLE)29;~0=xSCI`tFT$*Ib#t}XEE8|2-E-&@y2RzUY9XOCV^rP|PE1-APJG@8&uo4voVaO& z)VLAOH38nnS36-!IsMIf+Mr$ItMg(vgcHX~fRpMN ze2>_irK?(IGk7=LuHE5I9p|Wk^9A!NHpLF~y?CZE(AVFt`o$9|YX`dG%FIAdQ}avK zYGB)z>Yxx0Rq{#lp9bX;Ksc`$xv|HIxBEEK=tqjf5?$f1Ub`x)33)M8mNujhrx~bk z89p-QKW)kvYBX>;#D6z4M4@WM%q$p{2$e2dwQz8&lNYO$i}KWXsMP3Ju00%^f6H5( zW0gb+Bzi4#s=(&5I=r6FsB4%z`+P&bJr$rADlzZegPsr6BgH6WaX0#0qF@mw0MyJI z^+);aw=@@UFwj(xa!@W(NA%2^f0U2d@)OUXt!Ty zL=4meD0TlgEs^v)(MB>2bdNA{}(GsOAmEum14|sDGlZ{}IRK)c@dS5C6+WI7}58lN2`n9R`um+Mc+UU`c!L&s@b=#Xyvs81PIuwerQuy{0FICzJt7>x zxRi+;jZYX6jaQ9w0?4Fraz#K(M}cH1=dC-OHt>p1a{BwT4^`57>#TKxoKn+Y zXNd=Ro&eWp0H5muz99`b2i{d#@Lc{2r}^*d8-X`C1MeNf4m+KbyMos@3*NgR27aSj zJ^bDgyp0Aa)A8@R@Sa=Ybvy^Z-|X`DcQSy0ckfaU-fsnOQ3l?HF1#&7R$uwvrW*wv_70li-L&5G_UxSGf`6p?*2aj;& zYu~^3r6McOkxnxUwe-M(SM?}cm;)~zeS8fo<N zpJ2a&yZPvR7N8u=PuGeg8(W25!iubpKc*Hzk$O5pYO+=ttvKJ(a~_6!xeu#@OYhXj z-^^~Pzjo%rg{MazJH2+!jQNd?4Qm0Y!dSf1=AdfE9LFwj4HFCKHw*x=GH zs&%x)Yr?JT29cz?<*Bx>tiUQb{SgHsuk68V!oM%v%%ciSSCy;7Gq;6jt^xMR;o#4= zg;&4UT^)@dw*uox%RnghJ59{i$FH&R(W#Pu-=_)b?A8zo^@6J@8JnV&zhDv{!|_33 zG9b0V0?~8wjP|LtmW~-x(rCn22OsRec(1y;bZhXdYYK@*CktykA*{<^<8S=JB6Hi9 zV(0tz24D(Fki8&SeIB!2d{gWM=XmKfK5Y@tJ(NYX%}E=a_lS;k#?phdY|sbSe>A>n zWr@fYf8P1h`A*!QDOv(v{bkT?(xcBwNxW~R{zAfp$_;ty|N0M9g2myO3x zr>B{9+nw_eby=->?Nzw#ImfB7WbygfaYAeeH5Ih9Bnr;rNqcpPK|mn?a1#X;V51Qo zL3RVILjkk&7xZH3k6&G6aO@%d4QpdKe*Pe4`mI{IlEs$_zq^E#ZD6f)Hl1t3>&l=z z{qMYC99J-LbI`T(E!p?)RCY%El=0>qOn{_2m+;;B$ycf5JYfF+7yU28GfP1}-m;pp zn!D~NyJPXb+Ll~-mF)YgC><{T<8kE5va{f{aN_Kz^_5heykjkBe~!;4U$;zF1^xC? zg8;3903U>qqEI}2GI92oOx?ae5!~l8Fvs3#VczG$d>)uTGM@$WG{JnH4?_&hu><%M zK)+4){k{h$b~H79;MOiaRnX!Ef8AqHC}C!>n=d%oK7F32UZ9Ul*wjZq-sdN>R9gSf zjyLwyuxCvF!0+bAdti1h-WUE3^L^IG#d|;Ov_3jZhaZ*i@X&prclvqxPuchsy?A)v z7th|Eh0iap%C2u)`N#i%`PFQABVNn?{*ObpHMQ*MN230};^(5tlc!xdK2mkbnSy?8 zO>_Os8O^b#`gyZQkFJ?NzjofNz^Q?f^DmlQRT8*#N;KeX+uy!?JMxy_>HO+@@P+K( zU+{b(zjNI8e!OF~O>^t#)x>H`X4W(`)Xpkts-4-=)LefLnt3Jl^O|Ed^JdnTG}e`TI`C=L>ZIO+`q-StmY6Ek%!~oQq;}!V+WE2i#(BL1 zB_#{y)Wk~5MwgVB+L{06HO5M6=QXy>o>S61zlKKY8k_Vxw}$5n=hw_@20%$^bwh1U zb8Sg;%e8asVeLvYFFr#Y5%%)nX6*#GRbjb`B@8*)y1#{|W&MB#H zE;;GOma>v_p-p}BY3DZA-&k8(mh-m5h{gm3{BvN8Js^;5oNAlsc@C$5CtYuVUNdT1 z7UsNUylR_bIS<|9IZrcia$eLlH`mXem;2E2XEu5>8|N>|DL1om?);jjT0`Zm!X+~s z;iaY)_=7>MYigWZGEYMZZN&#S)HKx3%7NvtAMhrM{hLz~-r%`!Xgjt)`hUmQ6E**@ zjBj&n*67jK*36oLbZeX$fJMCTO-(h6X3VQyFr%S%-t5>Mmod`sXVx^wc$WSiTQt8G z?)(0C_O*Y9-+TGp@BY;@{T6=LzPpvr`hA_>Mec9R{jO);JAKx#-jzPEuYFX`?;O7C z`El-V?)$^}E;uL63JjYzjo-kq3j?J!^BU(Zn%mgI+^U&dYlLfApr$3(7?@Q%vq9Z0 z)wi-h;6Hz{ul=X!_P^)%V}A8{%+L3=PvcjgbAKCtX`g+W_m8<{-g5sA0oGjJfBR>L z|2yFysB`y!+IB|%$G-L{d=B#a)UWKb1b>hDbw@n5xpl7ey^By*?f2yG4ZwP2)xP#> zet*U9eZQl>{C$95D|$*A>RBag8pJ+1;ZP{$9ip_B6e=EC!rJCx5C zQ!mYb68`gJO=W>AYObvx9XPclFnV<0rdhRhH7yOS>P@qU25#Yr*mSfze`B?CS@%$9 zSYcpm=_-xaUROI4r2xetP(QCeR?jkWBhU3gzeL+TZGr_qE?iUZpF6G|gJHO$#`TiE)Df=OH3;De(e}DUi?&$n~;l2C2L9h?-yZe=W?fUh~ zED!8&Pf-2{+AaD!>ltva;k*7$r<{H-%G=+5=Lh@RAAg^E`|SIk{5^UP-*;1{_kL4n zc`y4{_2;~7eV|wy?1bqX} z8x-DYvlBS^t}R)_g{hgfnff0LSN93@wx8vbX)dm$+;FxJy2_F<^nYfuKW0afB|85G9C=meq#op4^Q{$p~3S& znELhJw`}|l3!o2%>1fV>(wX)1%onZQ#j{=Iez&DE|JS%5Pr1|9JF<)K`zesaHG?7r_~Uk94qzt_6YF|V4R`R;cj&CO44Jsof8=b;>U8{F?B?d!l^ z_q%(L5NLFt7p}1V^Y9qte)sB4biaG`P#?|D^ql8&-0#LrM2T;?-#xn3To^ccY@lXp zfd6U&HM0UI2WsX8YGMIa^4asS)C6i41ZFnQs96Aa^X10C%$a;g7S1p`pVG3x%(>qmj9-}?ApM& zV*|6B1G8g+a|2gg6=;|m7&B&U0FkZ#>(jc#i6@o>8k%_*Xov;I1m;Epr;QEFjRsEP z|N6jbfw>KVxpM=jofeo^BP|0+^J)Vpj1A129hesjoDi6|K#v3S7NVZH0>AO1z|CU= zjg5huZw{cf+#Hx64GbR}nE(H=_bzZUmjD0%y=#}n(yS<_YUI$$p|KWAX!c;O^EgY` z!45XdPP>a0X`IQ@hMdbd%LC+bzk>A_uThAGigdK#ZFz#pH%F29+FV(nTkD&Sb0XtXs1+fret(h zn$zu!{z`@|btosFcFy1e!;&#Xsjg&XvRuiuDB|i+`T%i6%j~IS_UHJ)%aI&FP9>T) z6NeO;i$mRuoC|TTBVLBG_$Q1pFfa7~C(R7ZuQrn6`mj)Y8F!Qv*O^6nXBjV;9w?{g z?+dtJu!B-MHr%J@x5aW_mHyWW!VDoM5f@5*?yq}ZQDUAttw zM^dyYv`@zR@joEbKb7QZK7an>GCm=x_VbjC&q%84>y`1hy7cd4d_hvJ=O-Co)}>#O z@ij@c{_8USU6=osjB8B`Y#%XZLU#&D51tjsr_C?=6k14nm`pDzsrJ9Lj31kNZ{CW& zM#%KCl4}1i$@%k;uAT}qt}H3~F4{24xT-FH4H?&z6t5eijRrD~(dB8!le=RBU3Z0Yjc}ev+cBPQ?Ycl;eNiokwJw;{*_P3&v zYClWJxRj)N94l8ydU=^%Nm9&1@mEF0)g;AnSgc!Nf8sU-Z`Q?`y3&tFDg6K0IMoTH zjO12LO8PLajVN5I7-*D!Kw3JdLdnT~){BZ!hH)S1UPZig-%HU3{z~pG5>-+QIr7zU zHzjircc1QM4}`Bt#r76zrCZ)! z7k8Gi*skJF8;fH?Pq|!eUmJ_%1LSgbzG!2yJWVbS+=a{^i{&Haa`pULA5WCa#k>}O z+E~oPsdBk`{ys;>qHeK&-0yF(%&(50HWqCzm&?`uX=735T}^wUEq(lfT&}(k(#N9A zf9Kz)vVC>?=;P1ia`kF49ma=FMW{f>5+xw`(^Sj<6_T&}LaK8}&g zMPBizk7ISq^>K(i-%{t7K5i|`tNXV$7HxKv%OCK!oDwrv#`-=jxzm#*z&A9MAo8dGcRq;l&!0Eo8n4*C`MdUa+aZ5WZKSKDzy}Dp8IqDdBss-4 zJhi{Ai7_KZBp3(u<=S$JqF>0OWbUFAyf7ux#)*tv$So0hn@h>?F94!80r9`TCNYEZ zH_;?t80nvTM*kEJT=1;H6E>V^46}>JV*EEo2HS@ECt|*WP5wzefmQZDn88h{)HHDe zN*R(>uW{r0eB*?69Ge6#vft;qj==tquOE~fmX_jgqMwbc_guyb{F%+t{M+rQ+>!xBwe3RA8(@EUbO0PVB5Ygsn7TC#^*Hq^FOWQ`oB@;esxdyFJ7rK z{QsA=mUUc!rl8>{1$9FDbvBb$w^ZQD$iM#nqU+GXL(@kLHTth1@Xmt!)cKO+JBx4f ze_lp?pKzDXoBq$Qgh{rw24drdz;&Oy`3f=Z_|U|NIwKlJ8#B20kSd-PPlK!g zZMBVAJnCu75+66IZm(?|nQBW*5kb}v5LFJd^D&dup~*Zq7b)%GLsytJL53X>9 zN;L2P_(vMG54L3twQz7MhQ@`o(@g5Wj@7+f9!#=$@J&W7$GjZ z)$OlV6d4&ANJ`E!K3Vfge9bz|{U6{kHfv^V+bXd|a;NTXJH)rCX{=GhSYYmc!!k$m zaT-%iwN63L`}y}X-|_sh$(}#<>SCWR)_)#N`8faQ(@dY_kBy(^k1e0)kChYoW7n7Y zWAEwwvGP^^*#2$)*!o@m*l<37?7omcw)~Jkc3JX|hffz9&*fik(Zvp3?9#ja%xi9aO&52c`_7O?b&p1@|Cr@lrWm_?c(!=FWLd{r^@e5_@Y z9?iCftgmu3Vp@I08dmhnEo(2|-u3C>BN5X=196Yo6~kjcAr212&*}2_)Wud^+&<>g zf@z2D)z?qA{M~o9f8JpBW34`z{JhhbS8r*Jyw|!fBLCbSigM%835)vb^5+e_TqC3h z{cRoS&xg9Ww=RD#U7W0o`{?4lE`xH~oMC)&1LMbJ!)Q%^TM#2z9SJ!){61pRW;JMy;aq6MDZi^<5 zcp|1grmRug)UEbL*UHm<6E?P4dA!@o_?`<_Tpdtu-=p2=|KvdX+rOUtQ~juW^Kay+ z<_Y!A9F5p$roRWY0}l->rJrSj(g8oD>!9-qy7(Vt1v0Vd!pUK0Vgk{I|j^awd8E|BfT58-2C>1 zWuu-OJNe|+L#q=%{Uc%ZwBUDA&m>lT<%OrWJBq&1?v;1HKDueGV@QSSx84qG_+;DJ zKR#Tk^zp>Ee|>$!^6KMGv~-ktBevn(N#E3)IjG|N%mwXVo&Vlr^WWHb(|on+;Vw^} zNZL^LOu6!RLhC-|9Mk`k56YQm)Lyc0n|pKOCv~z;Jm0)&n~k>{C070PaM76eE62^K zI5uhR)Nh+i3%Pji!5S?cj=6nWYz)izOlf-c#^TW*^!_2{sCjOy4zHA6obo`&FVEzS zDj(V|@8ECWRj}^rvDp@H>pS}W^2Lb( z3x4bHd;85xdq$-#U7ot&{qbWBKb%aOoLYAMkev^gSUTES?45OAm|Y_}H(7V7(#;je z-|6wyuA?m%@A%n%u-CJ;SjW1RJvXgyJ9*jVPc{u&{q^*aCg-2nQKrM(dee-enwGSzGdxZ~pw_igmRucJUO;fRPc0=9KCGYv&zXJQ1_6D$b7| z{bO2~F7_VrPMYdqzMKnFnwuWWET&r?p^GD5F}z%V-qUT~bJQN3{Fb|)LAShwE`Gy0 zK5kdL592@B)S=wjL$&*6|In~q^=}VF?ARHm)cU$e`EkwG4ZT=BFY&!Uclyr0YH4)w zd7rzzvZplX9R5%dqDy7RGu8a4?j@)|c&c6698;o0`d>e{?9rb+U1+CsSzgBJa z^SAB82bSLZtz-5FCt82tEmiOJpZE6PR66~mDK+h_XIu`OaI1E;`l}Xx+vEGK*W2fM zrml~Ax5wwZzlj<6)`hs%8=m)?&!-L>+VXN4B{sKrn}s7fC%-?fY+S#=O~x-jdn9q( z4ey)Lo|>P><_)MfZ%mQ)8{1!eAh}kR8IQa&H2aB73Gp+F6+d6{^oOf!4p}?1V}3we59<*FUtu6(3^c7@#^ zeA{BwtFt~Tku*8y`imcV?BhnI)_?Ae3o-51B)<95AES@{eq~_T`KNBS@34MJyH`ps zecBjXDfop}`>M42Fw6Ns{oXxlJ@M36gAOf^Xg^_cquJ*k?0xg$Qb*4Ibo{FplV4mA z{ne3P<3<+!aNom`sqNkf?zo`y7|-6=nq|-aVm#Y^LF+~1Kl|e0BNKXlRp*7CW8zI#3?8#B}j75KpE`6oL!XZByo~>_=Y`JAm_}QI}5~o%?^HHyQ6UR3Vo?j+1uSAEj z7eA}nbNblcGiU5v&~(ic?Kc(+THna@Ld`8XO=r(ae|GL6~rNeu>FFa*lQol-%R&{!;8=v&}sDm3v zwi~;6d{(*IAC3c? z*3yJILBCynx?}W)HD$WJRqguTxaIMgb3G~U4w)+&{5HVo=-}M*)#dOjJ9_VHkdZL` zd3W0x)!ux^zHMl&vN5MW_@R9Ngjc#AnHx2_g*zsr{)gjACC09{c4*YwzEv+?bRJNZf}!vt(A4f!k;dk zIQ;tS9ac7V^_|;r*8Y|6S9@tf$p?}qgjXsS?|vZJ@>ril!5aW-UTZt=($iBCR{b6~>EltquBmtS@v!lWDknHcmO6J>Sv0Cs zP_1^oUYgcw$~V!`oo6oH(=n=Zmk-BPOPaH@<(86JrIg=dEP39l)>d;))_?n*XB%9c zak<&lpKEzzr|#X{yLinxZ9_7HyI*e|5vEd_<{p5wE=#rWnH)3@E*8LanOn&bFI%D)i3wF}L1IYVknRXWZ@DZo67_%$Y&` zhr0*QpJQ2fvE|IC(_<&M`|>Am)Td+XXaABgxsiSBFVi2huUec_bzO-|vE#4J{jgf? zSB<@p^;p75$FD2r{T8$)Y0(1-4Qki?&OP+=*?BC&6j_4etoX_{e(+H-?06-^=!zOm*X~!kKItR zXT;oP*(r~|@p|r(&$qRDXI9>YiROkB6E@he~L*>q>&(lrmqPn+Fl&Fu!)+pW2Bxr)1F(^dP6 zwO^e%xa=pN)Ebk#?V(}Ae@jWo>0I=om(2&~Tja$Mci;_4Vnbf{L?rM`c;fErehdKYVme@MG){nCf{@`upzH>R{z^l*Y#y|gz zd%3Orym@21TMb87TrJ+yw{+5W zx5o4Fk0XD7|4>BEIB|Zty5u{Tjy&1y#O9<0XN#QrdU5CNyDIIEc(ly%_S<%EGHvg2 z)vZ2vruKhHP|~f{wGKxttx5T2nVmk>)wfd@|K5J(n)5TBO`P)OjXfbJGY`6T%U?Y9 zi>YPGk%$>hMgL-kn3`l(uKeVoh;`plf5M1n))~+4DYo%Q#Jex?e&nM+{!lM&sQpof zSAHRB@R5j3MaaMH$t%v?VTK2XAC6dXMKQiJG~=3CH@-5wJ3geD_bVEf#4< zu|ZeAqwSH@89O}@s}CvGxwETAl-4bu*=|Vbn1P2Q=7h1ngGz1cJMZTe#(kcMS&cYf zDs^DBqO0GkTV6$1UoBnyxGp}EJ92j9!J`q*-xNpk#8)>cXSUn5{hO#8ugSW&h_1e1 zT^yo|%^#iLIQQp65eq+N{j4*BLUqfZ*2Rr=vHBdTx;=t)%hiXg)#V|&@%p;u$l!Wk z9Ew=Rw{Y?oWZZDIvUYo$4?IzCXu_e0u?^^7o2?xy__N(RKA3f}!FOPOpV-3@Q_7Nm zbLy|b-s>M`t*U64_CB#G{OuyTxP;+)`zh~uBIYHsKkb@7tA(!rVb>mb=Z!MPHm~`D zw^uzezEh%Z`E$DXsBZp$vUqWaYu=xd-h2CI-PH|yZ7Q*UOZQ#T!HIb_1~{ME^Frq@ z$bVCFdfElaz84R^sE!n@n_}9NZ8+uW<{99f8oi6t2;>)`D%B7SmqYswquwZud z<29;(G;3z?cUN9t`Ecxv;-~VI^)s!h1bTsP&uqy z(zC;MUh4f-V$zJCr(Jx%XX_ogy8T(bUhfW!bE5i;wHiO78-Mk=ZFTu!-S+?f*Q+Oj z`}R*-Tq9;d;_#o(Jfth%UU&UVeNI)a@8#qJZ?!Bxx!t1YUYl6_w~mh(b>%Ci?!S0y zr@P(6KDO(7I=<8D`}aZ)R4H{NB4>}7zpjbPbgwrNy8bdHs&uP}Y&lp_)2e-PVa z?=es6ug9N$wxVHkDz9I4cDz_omw(M?gB!JosbrXNiRE?oJs7TAUQ!o(zpJ=?{fa{o z+Z$Qpl%0z5v2OlbJDh0rN!-2T<=7s-K3+1?6R~PFuUFy5kP^E3itA!W)#EQ0YhTH* zzD}S&j^Z~)MeX4D`9a|Ld7^juU&|OvwpsI~uhZV`Nwvo6mLF*H)Tv2NaeflQ`fr=J z;E*mpsEeH?=XG7vfbIE0V0(VFv{Mh0?MTFyWn3>CHtP42>lauWbNz11l0e+GR7^&# z>C56LK3Hq$FJ+^DIIiozv&R>!A5J_R@%k<5 zk=Og$o|M+H-x!{~c(hes$DUu+Zg@M-aH-?r+x-ql?3l#%E0WaEJ$UieDwabLYxolO z)S#NrJQbM7chAo*YzzNs&d8$?lj|~GVPVgzpEFSByLE8>`RJ+F;n@l=dm=W>7Uwhj zcPQO9R4*6giP%w!{%t*bw3Tjs5_EC&^ZDz$rHd;}boSU^twF0zkic_ezVoeMV^R2h41D{D}`sb3OX;!1eVBr}};Q!7;Ai7nj%nb@u~uXVi`B`sKal zGnYR7u{KW8<^OSb)x$ZO`vE<5%b!2KpvJ&gYR2Z}gcd!0d!FM7-Ti=MUH;F4+ z@w``KD!#Aj|GO)lXS8wDv#ycveMbL_2G;MPOAjqPE8?&~Jafmfo^PMLcm2O~^%G@x zY3>Jnue%@6OV_{n3D=LFo;W7%wG$0(T@DUwyI6OO9b=zyFx#N(AS%)GV z(aaBP@tZ-VYh`_3wvyqs_QafD?VSGHhOaq4p5!3j{>cl|bo0NwZoaCY!&0}u`ne}H zwl*ty_EpXK|Kqyy$8`NO>6X{m#ZkIg{ayrjAU(0VZh6?gH|7lQbtGc?B=)BeSNHYT zOXg*3j_(HD`D_tg%x>uaa|e(Zq+4D_7YFO&2whw!P|w}{U50n#ocC{5*51!aI{)Uf zC!T*eX~oqCUu*MokKC`{trFLDsylJ}b7$tw?biEz(xGub%qbb3kk=@D(!wW}zG+&~ zV@dj@KU!>?e0|dJUq^JRp=+<7?)^J`QxZ{zC^(zA9H!Qk%qQM43hiR4e zm7nH1GHG_--`+fKzjr?2PU;7O|v~Xs=_>*b99R<=H$DTedU4QRaPf zb^XmKcdpV`+%H`JZeToL(8Ug2f9C7@GyinA*K@`lj#xG(Q2+0bY<#cWaoVpOXg^PP z|8Bx}&vflph5oD$%9RTrZ1}S`<7eIW5+U|=K9Pg#%EjgITLmF z$6wLK6Lj$uT|8D7Kd8IkI8C>Fk}jUEi)ZNKS9S4tUF^`s<8*P3F0P^L-&Ec5$-21T z%@Xy7Y3{%FtyTBeCFPGqYzXCisnu(PZ+|nrR-NgL=Pkzb%W|vN)_eJxtWFHapLe|RANtY^;b>3fJv2IA?u`@0jbwD`12rEikv zjQa75_*Jj9|0cZo=S!XB4-Vv4JVn0K-ao%RXXltu&GEzVTb<$tO}uw}_iozf8Gg}S z4{08|>~`pwh*k?;uotO!W!G%Oj0fMheDg)?Ne>;a_~J3c`3|>Zk}Ch!vHhC|Czw{Q zZJXA3`-`977~7}y*iISWKKgN)%h~BmzbUrf+kV*thr0aQbM~j5CLMYCcKA`VYe~tX z&rcrqrtx4{ck@fv+H6`=E2#eTpc-G*+4xrDm-AY0otaxYe)F3jygazi{LY`h*lJsL z!)4($cLeR<)oE4RiciPo)c&Q^xLFmaY#s4Sl4H=Qw$o0>1P$M7YiBW*(SH7gR6DzchdbWItv1JX9eX3c0vGu%*zdL_unfurau{{SwKPO)f?t&kP z5P#3yP0*RZ;=qp&iADE|b;T9m*Yf$7GXXl}_j?; zYJG()H=YfY^A)n(DwpfOA6>2AS;%s=zh1dq&98U^?G;v^;Xccaa=D@#AGLmyTy8vF z@OW76v)q24<+=B1-zAq9wtk-bEce}~euFx13R{1Px69>)_1{s*a&>#> z%H?Y8lyUodCO-F^oy`}X4zE|Q0bfy(&i7uXBo7EyZkym{8WU~0OO1_6; zKza-P4y23omv8K^-^N#8-1|WD-`9|@d=!1nO#PR-@MQaXQR-LvCAUwm7gaCt$;-e; zyZNfDEZe~JjFE+Q;xFZ+`)VFm43W%&v7sAxv7z)zSL+B)B(r77Pqe|haE&kL=g zednzD$=#yrMf)E}{_Fa7&Z=h;pD!01l4I| z$%uk7u)G0JTNj#vFE6P8feGC4&Z`LnHbl?BYb)s13 zti~etf5W4U^L^Bx<#+crO*4u?_qw26R*+X;hrB%l&+ED*oy!8TO6B=L?2xobdL^xc z1IzVonE%E8SY&?lbAkE{l4?Ix>ic7t?YkvCX$AMkF6(#o3oLg^x`qd0@5BJzGR_?m zh%J)lNr6~h&s7dMeSI!jpGp0F5=l#T{&v;&Ju<&t<}*uL z3(4=3`PK4zs_U<&tNpdge(U?IsIS}dd3DeJKtGLg9MyVMs;_hE^X%ROf&A7&@|$J- z>htcNgMXjjD)Zlc9$r2dUs(MPwg2*YdDjh<#YRm)o+yN5$f~&hVTAk5}qEQ|XrZ)z2HaWqwm3`Mol~ zp`$z>l{6QUUp?O zeef2F6nP%xp$t?TZ-Di<0B^#(p{FX}H)t;6XVq$ol7~0JUyvKm7t$)D&~Cf~op1GgbJtcWo1iGG@J86ZHNSs? zw?e*6S=o)ZLt_`lN92Kxx-lkrGwjH7GS@_Y_!Yl=tHe=1e6P2ngyY?CZ!+tP_rOyF z*rp;6{BjWMD?FT#%6D_&bKxVK={nvB-$Om{Zusgh)>q_#bN4FBAiNV+`b1Gii~O+v zA=Vdfhuse=$~?Rk);i91!kb{dFPIN_Gi-dC-!2dy&Ogg`$2+0V%eKY~KKwQ7DDuD; zQHq6ehF4J5oOzCIfp@~F3v3I# z8M=@gFIeRV#$V)zJJD&p2k!cjpEksM;kU?#_rc0P(Pz97+R+WX;B9mZuUw>GD7+)< z0^dUhyc^cP#GJsJ;c!%5tS6>o(nud&zdK2hKvP@J@IPZNhtD6hCp8hd09^ zXg}T#hoggd2i%A}csDG^4=SF<8(|8%Ao9a(bWP-k@1h$b{TBNaQaaHV48M)=2G|`{ z##`a+I~*JFPIw;0;C=8J9(GH>o8iyMBGTbl9*XOM&xN0(6ucKc!ozuk@J3h@W#LV* z3ChNsVIMRaZ-tYP1D^}Gpb2<4{2oog``}HKgI9`BKgz`$;ge`K-UOdP^YCWa11-W^ z;c4W=d*MG|)-Ed{GAjKo{!!zhK-V4`+1u5r5IyCU` zi4QMWT|9`=nf|~pQ3&1(BY6O(tVoA@xw%*y?}2A{Fte%11B>%ea9g|qmgWJcF2ck1 z$cneX&L|CUh1-!G?}qJp;3r$;f#34*(G<>3_`WU9u) zPzUiQ*ce^Fn_*XU5pRXdkq_^J=g|$k4>lGLGIb$8%tGOK2b_k=;&b7AR37hynLH>| zS>%DoP$b?9O+0{Q!V6ACG5B0qj0c^}cmv#z+TuO1Cl5UJz+2&CJp7e{H^KyD$6KHk zWs5u_4LR_F(~OJ{J{LY!h4I0gU<0%qZ-(8_D!dg=L2E^R_%3qc-S9`W3Gah9(N?_j zICB!^;Z3j!a^ubLd9)jEhcBZ2cn6$|4&t3~J@VjP@O^X)?}q!(3A_iMM5pmycpiE2 zJ~*l>a}w`>4_6CPuHlXFs~XJ1uH=Wkc`&X#-U?%$Wc=}FIFAQ-WAIM65+&eWa2ra( zyW!9}j6dEEbLuj_B0p^W6n(~<;RJL7p9{AkFWwECndqCy1FxWqc%>eFL$~l=I53L2 z(T)1y7pOMg3lr+oH@pRojV8wD!Vggoyc>>aK!5NKIIy~vFBz{@BB?}J63VIA;B_#|qJH^KVIf;YqAs0-c! zXQCc>CtQPi;oX8}#tLtR!;xL&hjUPt$PYh6*&;tYgGS@M@H%qfmDnJq2AY63!9H>9 zCwMEon7}a^?}IaV@OU{s7e=*YzrdT}fF$M&-VP`6FxF|22d-$tc;a2~TwCS_-UmB( z;5gfZ`r#lHiMPW!s5agS-$v1R7yJ^%;JxqyGUI*l50rpcEI~?Zl!UjyG01{$-Bx!CPQQR5pRKurD&;?eJ4{(ZqVe@4KdlPoZ4ik9gtFC2Bj&|Vz)RZytz>~;K9xwb6naJaVH&G0El;^1%t;Jj5805q|;0ffw zdts-+9Ha17n2x64?eINRjefe}r)kU$ya!r_F#dSKSJ4EIy^UGN4t0ZqZ@!r5pQ-U*MP{dg~2H-_T~-Uai}ZoC@?zf4lW!dQG;`V6a~3zRj%7<2<~hRczYF?7Kq> z1AGg)L^?E$=bQ>J_%51)cf(;57*o6h&OkkAHy3_@Zc)D*9!24zKkx!d!~5VLXb@hR z$ecpg$ZvoTqb$;mFcR6>2TiaOYRi6Mg*Ig3xMzpi=vq8|fFGl3VxNL1kVWj*u*oF0 zDd}d|9WBCJ;bJr!?}TroT)Yc<(4c7Qfu~S4ycd?8%)E-BZ*Uee$XQ4b86!dxNU04E_MJ{K-VCcG1_LQU~5xCwb0Q4hR;dQp!LUPDQEWh(Wd+2l9F zZODOl!^0>S?}6d3u)cT$Oh8$93;Y0CMSge~+3{XjZ5nd`Z-zFswgKY|vr$>R15QW# z@wspws*QKT@ErP0pAE1qI*2#IF6biO3hPW~-@}{WGw1@|49B5s_*}RERTFi>w@?h; z1vjB^yc_OD`^oQtCs8!%UibrY;(hQMa^sa5EJtOf*a9`hTVNkl8E=K}AtSFlZnzs6#I}YFa*0J-a29gnoiOG#)?K7SH#&zGjGM_g z<1Mh*Eanj203Ssr+A_i<)P?#jFd3!bt#CL>Addr1LuPy~oQsy@op1-*B>D+IL3X?c zhRkNWHm5E4BC_Kh@KuzB&xP}l1Mh@yp%lux;5p$*_rbW=+4u1ln2fA=D;$K<@OGGm zs^J}Qm5`_hZbGv~-{3X0oIJ`L-dmwXB0qc;Iq|vhQ?wTEfgy95=Xe9OqX~Gymr)Mh z0e7Q$crPqEkK^9co%fP}!zzci0qVlWvBaQ5a?2a5pmIJuqZG^8;^yKcGmw z58gp0yt07zeW)qk3ZF-I>a@dQXae3LhxIBl5s%D2sYbumPHaH^WY75Z(&6qVgOw-EcSR#dh(+ z>2DBIj}s=o$?F2%3N4E{MhOoSoV-U99=2G*b`>6uS;}iF-T`N#(X{1+`;n9SJ@71Y ziMHT%luI6ES&&i^<=_plJo4djI2HX1p0DAzwW65Kb29oSWssStthYgv(Gg z-UZL2B)ktsEN9z^*Bw|5O=v^?Fd8}VW;hYqTTv&xj(oiKDQ|IZj}%^K9kA94^59MI z6pC)adckQc*}kOb!g(l~ww&-oR1NQjXOI!^g||^{yt0bp0E)yL;Zw*g`Ucmc)AYv$ z4XdfAHDd+KquQh!;qzz{-VW!ZMR+HC3z^uP{pbId1?1?Hf&w3`bLh*lM#u18SaTi6R*@feMWgXn_zK!jA9A5%J#!r|_~<)~3El{= zqqTU&#eRl7cmv#vPUAiBd$fqY`C!Ej%pXw}M!w7X<4tfA%3|H!u=qyCS=0k7Ba6rn z)-?1KlFs33sBhq2Y#}deN&{v(9LqBD#pTz`n?Xx5GK;7~ToDpbL06{2cl4URZP+^9*l*wUL3onP58FO}ZV{_<(tW zH^J6u6W#*XqddF|2IVnFDQkf5AOqXN1s~teyb^W77tmuZ1m z(KYhe;T+VIJWl9FG2{^pb<-B_Hw~~pnm`}Sus1489xGgldWk;3D<}=G>}0HvN%SAC zL}t-{SZo)4z#CvgRG#|HFd2o2I-vtq!wW7&;i4=&iXzGHg~1;&A4EN{A&Q~@W@tqw zQ4f3zDdcy-&(LV{d*PoboIJ|zAf+YhLZ2=0HI#yP!tYTe`F*hE9_q(i;7Vk{yWr=@ zAo>IEpj+(w%HANwh$>URU>qtd%EAm}B)LRu&oQOu#&s?|;#gOiTr%`3R7na>mSdpyYY5-7==)$2mXPw zdEHSy4pJUKS$G3XL{^UZ7Wgijhj+uG2N*ZrzZl>kWG3AXkD=YXm+?Z=CmdVwf)h|v zd@fv%QpoRuhmZyDfvpcx5BsSFE<@qmA9TS_QDu<_8b75h^$2F61iS;jkIam-8>`&~CgFW*nhT-itY4>!Z9@;w|t7s*P7ZqkYs=ykCQPXf|ct@ED3D-3xz5 zy+rwaIB-O z364j{D4Pq{A)m+tl@ru2>VaKQ4&Dk+qA>dGh4sHAKV{9ZH@YG6Ko`mr^}vvmtRvn4 z-#N{?uw7j6bL0~11%F0s@jiGH-HNB(uQ(o}i+BUvhW1m|4G*HGcn>^|jG`X+H3}E? zzxA1;ZOXc#;XL~c`2|x@7rY(*h&-Y{F#ZDP5@NmJ5OhK0 zfo`-`v<1ul!2XOk!ZxS}#|jHfMqTh$XhUY|vBMWoQ@jICK?(R=I1eS^op2S3<~^Vb zevC}wy(et^6KyqQy*X{hAQJ7@J*!Pop3q2#rsVc+=Q-)_oQ$)x`Fq=W5|d1 z!jTu*?xG%8>JnqldAk9wLngcn_PfmXYD~NE@t@i5coX~vx$r)?)WVH zV~3Al<+vg8!v?46Yws02s!W`coyaGUf2sOUgPzY z@iD?De`WjPO)wfIklzerQCqwPc10Gv6{aFH-VR?!o5cHTxC$BYF1Q`-#=GGGWW;;m z(VOhcT(9uLb0~~-AH0JW;gvt=54wgo!IzOj-yHBfx+wC)Yba0Tzr|cYS=4EPFQGKN z18zdI@opITC-V?*f+=V@-VR?w)u`VIvv1QU>U6*j$Vs{zo<{TVUU*%^qTM^3!=qf% zE$~YvSSc^wyFn!=SgB3AU^kRNTUIy+H6`5%KSRAlov>Ok>7s9N67rIs3lF0Gcn>rb z306FK!D+}s{#=oUqD3Bf29>98UU&i7N%z4fA;HQZycs5-FtJVHP?RRNBbdXYSCcDh&RFUC=8zqKSwuc%M0rlqi>{};T%*R?}T~CLLN6X zg#{}Y@q(FXE#3hSpc8lxe71P7(u1;AxE>{u?t+h$3|6|ZzDD>SO2WJ0Q{lmii*+%< zb|{Se7I+d_smBYqlnPdI$m52l(!olk$PXK!aJ(4~ejr$xhquGoC=2g|CPT1tjJ5=W zBj_jT2B?%_-0^}fk%#@)0>>gZJ{K-WyUF8%dr?#7j0avsi^MSjMm-qJy{$m4?hkQeWP=g}%rCoEneSh*(p18X85-UP!cGHz@m1B^v^ zVh+Fo=mvT0a30!3x)Xkky5K$V3$%)|UKm*^SaC3COfUs4!rS3;l!JFcb7jVy{DMiy z!8%%CDjJQq!xfJ(XSinNf=7fW-3z}%gYZ6B<59*DZ-UY28rO@=Face}TVNOD6W5er z3c4V!DG5FntW2OR4?ihWk&)NaTv(?H>wq`GOK8e7v<25a9;{^JU2sTM))#Mwb*eEg zcoS@Ztkh|S?NJ)u0!N_zcn4gGcH>>}3*^CjVX^9r3Elu7Lnp*FEBI9n`pr0aVPqt8 zNnCG)(I}VvW*Cd+;VrN$T7w<81TZg>Etk?w)J>X6P@ zdEhbBg>)~xf-c~dx~w}gi~hh@P+NR1`~$_{m8Y2hC=73aJ<$GU^bJl&ZhS7>jV|Cl zu%U^5(yke1p&O(-;1Xn~9v56ykNsA7_%-t3eK0(VdPG~W28zU+paXgFf;a24UTj|_ znr)7ej}Mk=N&m@XfL+lAycMoRH$+)@3x$dKmc;8XI!3w? zHbh}!-Ju1Q#|sWb6UbwSlhJ8>E?kM0i#p-BR$|+b4jrvI_rMG8LvHeTU~n6@6W#!8 zpm6e-U?MWn9}66Ua>-+dn~@jqhT(15r$kxU3n}Ec!k3VTbO)S+La5UTU8pQxa36Az z#{V!3sS@Z|CLQU}&nADzQi12VM3TM0L!WAe%)DKUf5HYV{@eb6< zHZ{QV=o)#9a1c5s<_uhpe0Uc;hrDCO{!5t_C?}k62B)kvaK?!)J zW3W;J-H4}M7=bR}jqpj-l=}iESPz--X4nQD>{C@<{am3r`Y zco}WN`{34YtQW^#HyqQQZ6UTbY}kYS1#gBeP+8iwz^>?msR++qaSTV1yjS(Wa?dia z$YX>E_fWx!+T-5UaTA52&<#rcoS@j zDpS@B+oJM#3tWY~)bE0SqHB1iH|Kch0^S0jM>%*qoP=ViGZ(&w+`O-J!X?OwcfsAr zMSc%FhunA{tlEcq#CC`M(QLdOE<=m(F8D24j`zW;$s8j@emDwk!aLw6$b;7zm&uM7-UI-uQn3;Y%tx=}y;6>aT7p8x#)pBRCl@M3&UD9lvMTGSqD32_H| zc-vp1s8S-Ts43JMVlQF|c5?+oQB~o=63T-?&6IFcNoxsvaZ8xHs3*i5?6a`n-MJGq zJ1BDxS;rTtaI>;9B_vu=z78>Ldqg=FT9kxSMK=epc|_S<+`!j2O)XLMokx^ICC(Sw z^oZhkAdCO!8_N9hi1Le}@{vcBg=Jfj@gPNweOe!AfYSAX8wSA1ipB7nTbOe&QUs41v(DuZ-9i2j`n3dPDY{yz1itn6E$OsSxdkYXj(dhhmI?Y~OeRJW0z zBAvQ|#5zO;nS#W+N6B?p(?l6HpWsqrF(3Nr=7SicesYWoY9~(C11o68IMDx^K^5B# z=7Tvwp|0Q}p9b~kvv|RAYdAs`siY{uO3+Kx$Y-3IGker^xeqI7wwauFVUP;9O0~@WD7M`=InNBm6+=J$QRdz} zE3jQrKRZg0>2Ij^LEQ)b)jq1__0;TN6^e%{#ruVtLaasX!CpBh7FG$0cqJ%wb8wN5 zf&&GhH<5O?n6+wZw1`Imk2azuJVU_xIRLg1h5q1CnOWR_7GBn4^ zezIOIMLp_qL9JW#Nu3+|<)W-uu77>`ySDUo#NDTU(GP7OHOC|WF;IW}SNpA{zPxrE zMEm-@h4oP!cMDo3($v=+t=HD8Z$}@CK8kfKBe#)uE|d;aN=KD26}N`ji&=`gLp;G= z|F~^4jq!%a-fijUX}Ku1jRhoQ>|A^wN7nXL0+G)us(~j zYF?EE)mKoO*yjJ2UrVMH{#tS|`oG|{L~Ii=55>4IWjmHWwfmOLQ{Zcf_P8sK zU81~}qMm=}wWNUk_b-yNgPE$8y^wm3#_2`Ymv?6_}gHIW|Dv>$jsijw;pqRO<8JFBbL8EZ}%A(#4po_3A0=74t_;|EIC2 zSG(S7Iki3QT-NS;YCD4JI%&OHUZiRF7d4OC*TUwDTBle(PP6}tbBm0-@9W)n+t#+B zosZ)DYN_V@N|e`LW6-Xj+GlkPwCk&_KYt&*`Hpw`WM4G= zx5{efrhgu=9~8QsHQVW5%ByKZU8m-u?Ui1vQ$c-h9y&nD`X62P-`AJB^I6OtF-OF4 zMssYs?>MSuG-F@j+!y)c9YnfTY96(Y ze@bl~+P2jCREqk<+?R3S9^!-Q8La-kX~nwSQg0J_F+{xYTo9`K78H6VM0q{bf1>x7 zdun%r!s>G_(29FY>KOR*$a8vi-ZZ9kV(2VBh|`FkGAG1%=0g3@UP^av#`(ub z9ACBXPsBQ^QrAha6Zb`BEZh6*Ij$(DUI!54Aoc;ZE-lqDQ`2Pqf16kB3uXSY&)x|N zk6=8jgeE9m)N`Vxf%{6buMajMeL$#(4~GY_=4btTmVaN6uSW%pRjJxVc;ntk+|-Mt z)dJQ<^hwNh-MaewC+n5%hgA=a;yd$X-~Xj$&nWE*E%(1~nSUFq<01A_xvqD&tv*e= zFN^s)Q(o68SE5C^B6nX=@4f^4%Q=iF6D7-N>sGgocDw0c2eiwyUY(!ndZ^Uq(Rww% znkM>mRQ4&*4|`Bp5hX0>sN#R$C(=4;o=FhpN)}a01|3$^D-ZtjUv<6I_Qm>*3(V`g z<0;zeB-;``qW~}JSI0v;Mt^s1r5`J8IpO=segxJfaNkS2t+n~parvjzZc}|9)v*xm zzRSL+&8x1XHch`Cq7V8saqbpZz`0wA&`^24T*QCvL6p;88&dnCT~}?}qAhi9h_ag3 zaQ{5c(431Gbe^wYcYR#0q*87W&uSHP-&`GQwT~*beO1%cyag>&$5f>@Phnm=2I~5& zZK?Fn_r(RzceOwNF7?}2KW+tGBhzmmeJs{V-Otp1iFz`0*V^=LiB~}X>mb*jx`c7< zsTkLuIG{)KLhL^$6zN=x%Hmp7N(s`5cQJ1i;@zZofmx)dkRDBWu}nMeV!QC#e0QFS zzNu-VFZwyA@2_@S>Bmjmjy7LG>#fcY{rcFMkOPlxcxwN^kAKxoNlQ}(+Om>I3`tE+>6_K}zotL` zspWre1bhy$O#^>xU*&o72|SrO?q1q%(oBf1z`o3weFv}>eAPA;OH(4^IVt%x#+Gz0xn|GJRoB+aNv%OTB0nnjbgmNYME z1^pSO1kxXstScEO*;6u2a)RU>$u*L0$zzf~N(N62)L%xjhGdLnC&@HPhvaO@<&tj6 zW0DsoZ%CGYCD2Y~$tcOTl7l2)l$;^CNOG;DTk@pj1<6~IVbcQbl$VT>OqA>?*-tV< za*Sk-Efm`PLymf*+ZAFpNwCWoFF+va-QT; z$+ePdf40cjEqPS(8_A23A=3lv5iS`i87&zn*++7Kq}on~j3-FGDY;eBExBLPBdL}@ zDdTgJmnCmV2G5ZFlT^z+q>GI*j+RW6>?4^Wsg|E0<2jNmB;S`jAgSj6&;A(L4*%I7 z1LN?Y{V^~O>i+RRy+6)V;?vSIZApEHrli@FBT9URjh{$uF`S>djO9y1WZc;{q_2HY zdWMa($e;vUnk~x~pOKoC+P`mFXMVdZHGQa(7?d!~o<>TRT3h>|7DKaa8TyQTjaXuO z#*n^Q?QEHueFus<8wawEMtXl1@GB^PNo$p&G}EMZ8ANAO__+FC(#WVx z6sdvrYQ+!NiUvhDm8l}VZQsnS78x1o8H%!4#O=~khNa1V)1Ol!O>`tSB_%_2Mmepf z5XBA{kUBIqYh=5=nS=QxOA+#R9+{bC8`33ph%GiVF*VI5oDwOP1Uea?&PZfuaqazH znk6GOoiQA#H1VgU_8%OdK1}?&=-eW$s6MrCTI!2`8Rd;dT4g5K`VAX6(3WALYYdq3 zYmv6LzQg~LRVfzIHk}QWm|?RiHAC7BOUp`)8<}P6lHNTv#TGxPZ-&x3q=VfyR2}io zAsvQg*@tEM>+hVEkveoBWAREz$6>aNkrsX;RSe?L{x*L%Z5hh6zbv7t7lzq}_8+M% z3F*`~HPhB2yT8pI823XVotQU$Gi`S#6TfOjTBa?_Ki&8(9TD*htLk?BA*54QT6|x7 z*02oP3=H5Ek=8aneef`Q;;^Cqna3o{7^x_~i6vbFKVzJ&+z?T>)QqfQePtr^B((G0 zww@DSGYbZYSPn$~?duRrbX)P2dueyK;+oLTX*Qc(*%;b+SSF*IB3I*JXqU9i*tE3t z{)%!)cqT=+zG=g3ibq6L9*8~Gw*JGiY{}_EZP}?=$yt5-ag?KnB2pSE zbX48Z@@G+E0?Rmj4N)5ZKlaW9KC0^M|L4xkof(o427(X}WY{B07y?3+#q1;yk|7HO zv`*MTS*9dlKrKP7(yDE6r4@15!zO9f7MHfMR!h~|XtiRkZED?GZB1QTY;FDjo^$Rw zcP2BL^S1B%`o5q4>-}UV_dMtOJkL4LS?+$vUJos2Gg)W@N`UdcLF%lqdLmoE7B5+k zQm&-vS-+Qz_l1QPFWt}>TD^Wrh)Cvwq@i)y>h<_}Xw-CFXw!-?!qvEfrN`woSUFda zS4?&hwgMw`Dci&UH?U)D#g&*u&=#l-oG#lK27?G9@OT+7m18Nzx0TlLL(PmGrL}b= zY-ea`F7q?|IP>6mu#rz>>}tr-q0vv9 zHW#c}yzUAV;>(cLuCoJ;GYSmTB_9#he3HQf$Rwe8$`age%wN1=_2PAnn5EXOTwa48 ztH#@?qztnN`p!3Gnu>-WSHpJn|Fh4W;;M?`@<}=Tvg9d+PRt_cZTm+0(k`!Ni;Pipc16>Es9Pl3W9rPc}I+%Mf?_ls?-N97{ z!v~uWZa=v5VB}!i!IKA19qc&RdGPInXAZJMzC)RZvJM3fOq3wrS z4n+>N9y)ob{ZPlD(}&(Z)OCopdRsGF{jGu4+}6_8U~7Hrs@A5~=GK?9cD8o4o@w1Hv>rKmr2R<8k<&-sKGJoB9rYe< zKGt$9a;)uG`>~E=oyWS4vE#nu{^Nn;dB=mt>yL+zHy>{~9y#82yz_Y1adw~YKL34z z`||D!-q(I#$9Io5F z#2*Pn^3bOBk#M9r(h}3QtPSt~0M@)Gf>vxpJ5rnE@fHd5_K5J-=-_R^cuNF$JJj=5 zXyI+p&Rd|1$KTJRALOxb=81M<|sSnJ?1;+KbCbYa4hdw>9OFk z`eUn(g^x8K+s>oe%Hw&8NAztTQ!kHd7LRKwkL)TQ+wDBMt%z^?@l(e;5aqWK=QGDq zs7_orM_)g==WX=pGw9Ray*~77KYDgxZ|UBqz0G^K?`_$;b8lpC>)y7#C-=7RJ-xSc z@7sI3_MX|x_IdaD_GRwN+85ZDyDx8F>Av8;x_$NgR_$xr*Sv50zLtHh``Y%M+}FPE z^u9Cuy!(CoGxulh5A4s~pT|ecDvTK#F*`A4XvCbtn4uAK24f}@BPI*&LnEdRW2Ol$ zv>juHM$Ac!85%KfW6XHbPMH`pxoD|Uj2Rj+O&BvYVp=g~XvCbxn4uBl#hA%Lo8|H` z6U3-FiS|0hM~c5S3nK&(`F#055P|biM+dJb?j^v|`KP}w#-20F;i>p9+E$2JM)2JU zVecS*QC#Hv-xKzR<2Hvxi{L-XmVEFpf*(qS_d*tcqHHVa_D~#0#=>vIG9{Ya2JNTRvkc&Ijfou^7kbGuExgVaQ_t_?7an z5?S)IV%_@jIOVji(La90l8vj^EaUsptCy@?x)c&*;z)Dp730I=^af7K4Ry{M;AHr@ zXI`31@!w&%m(m$4hu1@=5&ZmXBTg}_T(^9g9|zCKG3^{KaCjPU&a%-Ti@8jm=@PV9 z_rxMTeyYO1Z2d+$UEnahD%&c9OJ=!TE7q)E+{nD%3lPm-4wopM;zc=3Q4UHtS2yKO z2~qrT?qL}&tT)gvgR}FDXZj%Qb;zr!ttbvv7nT+m)s`1W%Yyk;HD&qbp{n9pp`zko zaYa#aMd3o+acgT;7l(SF96eJd!BAmk#r)!`n(An~&Ym?A;Vv65Dz2^xmE@PBG$?1N zq_QeBtGtkzHc^eN>R@?U4OOO^x$PWT{F3tgS-hszHTmV`%wrRCE9ckYR!UXrxy5rU zs}_dlmQ~NquPH1I358xZP*MwTg>!?U{EDJbK~;VQph-C_B{?x=GD}TPR98|Vt65q% zEWf-q$`$L~EgR+M*}zzOx4c-@5UR%dXpvCa+_~77Q32ug?PjT}EQn~9=hu|YFJ^sh zHovg2c5W@?#i7dDnpu@)6|+M5Rj5=yn+aA`mRHWIEe_RIQ#Q(9j8}pwcg4Z7xa|IR zHU%HYvCuio76xmpOR08fI5xl*ll^jZVdS!bwz#OWwm^zAZLy>)gKUs3l`y1(ZD}yS zC{$fqS%rRCTTxh3R$0N$j?JwquBol6sAfZKaYoXjG6`cRj5c+aY-@yB!#V@xT3hEtPlg34YSem!l2b*{kE{G z7^R(CSyWcCkPWxR6v?uR!lL3rHo}&cRn!#EDy|9@l|ZAIw@x)1Y3El4YeM<6YS}1T zls~_+tcV(g56%3dqAE7p&aE!5T!1cBTTcCIQV#EgV|vKWWn=9eVHT|#stjVJ(XcP% zoh8d=tTwBzsX|Q9MCaOBJXlqsITe))D$rMhRF&!iM5nU4fQ_>`40Im-Vv5mx%p=?u zVqF=MU9lSTsp_8;w(9)S5_W#9tgyVMh>eex71Xe7TOukHJCPO4En^dsBQ=W(D{5FE zIaE+yji2>ah0HISU5iPxwgO|VoaNXVmDm`RmGB7~jbB~CCfRvbz)P?hC}xvwd2wBk zrn>xsYIcDwr8tz9@lH}whR{!m&8m*dni`u`Qc_i19Avq+w79M&lpC0oJCzEC3AduA znq6pT&q80X5?iY3keKVsP_2t>f`qjdvK`AS(c#fi%jRNqOzVk4Pr#Ux*z{N|m|r*t zJ;Lf=6e&f{h$U+l28+v!t5GnrSIuU|W>Z-Lp@M~>U|nSuyV%a8fmVe=W1~g=t~yjx z8Jdr=n3n`8sj8gIq5Oo9*p60XHmYU?HX*i*F#{=T8_f!BlG+qyKt)2)L{UOQZnasl zoy`Y(u)4IiqyQIi?e55Dh{**Dv0b2XSyqQY&9d{!@2vcqQUoN2w%FCIG&ZxkFu#Vv zW#yK|=31(gh3f3sOsQ(+&WX*nRC9%Dd2FUswQ}d$xnihH%*id8n;$AH%|{1e72UIQ zE|?OPUD-YRf{8g%*+Dydeoj#dW~`!GzF`rwepRRx6Kk-D&9gb`^yoT;h1il7hpf6dt=gDOL`02~`7t?E5;@iu#N~*1qU(i%#Z_}z zT?~LgMep4$jL9UseBP!ZR#seyj~CUEGIuI|EJckRF@w`a3C+tE+ZolRWhFHe z*%Di_sF*fcbv5V)A>pf{h%L4Au|=C(i2-O$+O$c=FS;vFCHdH3h{4I0+v2F5htPtm zvYKMH!p`JTn>#Tyzbrq5*=?nrQ&CA~*fOv#eTEjM-XSEP8TzrL`kk&DPm@G^*+fOJ^0Z z^|3-!JHW!Wj4CUpP1+o?FWNb(U(=L|JuS-KU}sxL4~TkEnHcQYx5HsmP5vCTc7q-y z&jN0=VG$SJo!CZOEZcvc6`W0W7N54OYYN$wwv1|DRanKEY*9J72-|EObJAgY%rWPi zMzzm6zRa(}F%j*o#ioN4P3r*DLbxcm00+g?5xKCA#)vpt-=AMA$HI}feUI^Koq2lbz zgLG=(vp)NRQ!>ltZ95ItsTjP4o}ED$x}V54ryW5%AEIp1q`KRIK1<;fXSo}6*fi6mHxKWAh*qE5}YwxEIoFe4WhV^_42 z4nhhmtBTmpcT)QYP=7<+%v893*>d)7YVSEFHLMbstXaIWf&Ed)UADYxIZl-=V}D8= zz7Zb0c80vW?7h_9Pr{VXsMxr63GVA!ykYTL+;g*`fprOEnYK>!y=;F@?K=*ShxwW7 z0+i2BJL5Ijps)_t6wm09uxJD)mafO0Xj47C5Ad=Eb9g#eq`gLP5>H41dO>&g$*0nOp%;yR4-py*uXCKq|8Ka zE+vZ^@FQD1c@ZUx8(6+bPN!r^11k{8nUtK>zzRh&kCN35tVkpajAG%qSa>QjiZ%pT zi6~ns5);`hkq9D@!%9V>4v9&uOeE@&n8Id@#404FvN<9VHmVjkv2u}UGOCs~vAH7A zY*a04Vih8>-Kbj9#41Ii#i(isv!F=qL{6B^6Nw0NRO|r+5|h|Mk?2HXGFv1PZzFL5yF?_qjH=aP zcBx358NUlp6Z&v^cRubCTfd>ox}S+{^rZd_In3!38PvQR)~{ikgkHquhjT@bOpGFXz8k&_2j5YyptkNjUJ)6MP#;j%apoTiR@D@=B}lk z0OrgbT8%;Frb89xylK!lN-UsZ>%4hzC#vEu5~*7_hq)?x8|0!1R#*xJYpR%QVm3*# z*P^2eF-`-z9^*oHkbC5UsjCR!mMQ&13$O(o@C4~F3a8TgW}#FbDlady$1(b6@Z#b2 zxWwz=7CcdN4^GFGRTQ(=9Ow3>$Ny;xn}8K3O(9O2E%2PTwZ=Tbc*Qpy{@LJNe+4=r zG#6XheCG2xPMcZRKx~w+zmmOd_I(4n%qU&Gauxff>3abwFB>Z0S4>YONKa5E)4xgf zNH&;EoWQ3SMav`7KalA@tnWk^`k73JF!x%g$)hIcsExac_0W>)co|rC_qAyM(K8=PC^pmL=FUWiyAJ zD@5r=5gv%E6x!p2wvWq{@_B;nuaqaT^Mz=DHD!($dYK{_;x`y)3)zrVzAq$)Y6F|# zNxc^#_NUgZU297No>Xd>h)-5}GMng0p|*(_Y-soB=6K9A$O=RZpQGM0;AV{d)Kc7L zh?{#Cd%TonspZR8F2)VLOFUlXF2I(0ywnFGqWX=q$jbkNQXswGW()PH;eQIY=cO*;Fm|KqBLLf&Tg=Y*jsgc!PB26%Hbtz z8mn>ZHM`71eH2OTu5v+$3v$*&>Juh@BTWoqL*<70YL7`k-5UQ%J!0E7J z`*d|$v!~x8JO^$R(Cx2s&taSB9M}n2w@k{e6*8A0Zic3A$*vPJFI>f0zTPvC9x!(? zd=0=s;DRz7kd|WSmM*K*@Wa8=SC8yB8haWTgmj1cH6#0oT_1jbc`5CveQ9JLG1z9U zS-)iQ8ZO%^WG1%SbnwBNMcQpt(ru;NM9M=`kt+JgJ~Z`u`HUom*9oDIo+iMJ-q(-x z--q`%W-`}i6u2+(7oljpb<$b%6e@P#-cR+=j$Oiatl~o7n`VmfA z$;LQ4ZOkpm8W2j57d$5|<=QlRS_&>@!_sXdjP_5LhNAtqr)%x-85_3W;CtT3I`fqtepfLkG$-%5g*NMm#kko^05_ zMyF*?pdoBn0^ZzX(o$&?k&8GsVA|ST!|!{}N*hUyh`p$#>%+^-)-A*B)90q8(vD)O zfu|PM1lTx{#09rtf=Ulb8@n5Ic2QI&(V6;+`IU4{2^VLqn1zD4goG1+)rgFvFs*_DsNP5Pi{vMhuLXQFuCtp zX`@R(yY|6L;vO9;uBgGaC*PGL``rYRH(8VDXN))5=8?R~Fkli52upp-NOKOf`;v+8 zd8A1l))P!*5V=FBZCuoB?vNO{A-)+iC-&oeDN-23L8&<)-kirw*moiU4gF)uELj-;^U+>=4!?_PQvmBNkU4U<@wA@yuU+Uzvc4a zIJ8s*`wM4}h0E9s?u(h1`SYRT?PuKwja{L|J~HBCegBCL^8r?Qr!no?!BJ}MCFw*l*=eBIj*&pBX_`slocuivuOIJ7Zl52RVoZ;uv}BlXB#j};PeJCDwx(5S!Po4>bJ5>>QIrtaJm}@IMlTY=$(jy}WW%h$TzGu(Bsxcji zBrotQR7|RDqKBUz9yx}pHisF*kYsYfEeVH9;MJO?A5?mB4<*g)0Z(b3Q+@R2AKwc`*J z$6-{F0oJF@%AihADKZTF6#12Y%EtdJM?)_D1sn~T_?K%0*pOdaDpyE5kp_n`&$+|v z#(so#2O5PRLI-};+o*HULsp|@yu<^K_FQn-Xt5%OH}dht*!3Dk3{wL;Y)qz!WIE)N z@tL;YLQ#HWB6;0sR57O70uOC1UA|2819lg0j-aJ6P1r_rtio+r-1uF_L^58F9J(ti z16%hnUP(VF1>xKT!3KP$pTL)~(-=eTax>Pq+36E6z0wC2JDEyk{M&$5bglQD&gas<-d_{=CCfD8*a(yW#9NC}JaH6tw@n!_#! z^*ab&#V2#BMbU6Vnas4p!dZTV2+e8KQLq*|cC5m4FS9I;%HDsjm7vbfX38dt4r3^| z3Xd7)Fr&%fl`yV?=P}eaO-3%2`C=Y6V+&qpj=1IVcwJ?rP`vC$7a_sLDgOteBff}S zT8v%1swp@!Q>>i%I!b8Cu*kgY|UVWE{!WJB!&|>Twg3jOD zs@-GbXu2AW0QSMBcjKzn4WSi$5BITL3hNE{G*J$CJoLI!jrbpC(Cqd+vc7L+^X<$J zb7?b^3tuDfNugMWQIf}p(?-Ry!+#d+tl+0xpXf!?>V8ly_>i0*)IZ6^PTW=c9*JdR zof=9Nr8DpNolG`%A1d;cH5avQ<MuhEye~?9w=ybJqMUC8R$^g4jK-$Klo42;Z&?_1-M0mbNfiZk?Q^S<3cL zq}?IRywU1(tR&TUlX{+|j&|USvFn>ceRrIC32xskUbhqv&*R8OK8nn4qo(v(RnYflx?ptC^h*Wr{Ho3X0^jE$ZyH=whh{i2()q%P^vaGhoKR=SZ zkt)<>-PCPI^;^QujTc!_Jy#Y3Pk)vL*|ttg1GTU`cL|McSwbUa)8aL3+f*v0F)yYT zWkI^c!8TG>hh+wHi)E$&Z*N5fHlA;pSsljnz<4m7Zl`Tn$2Lx`KzZXVvNdF_J+4qq z!rB_EP%-5wEXilfXrH*vQbXfdg*YM9mYtiR_Oq(kq83X7n=4CW2v&PzTfrR-f~B+Y z>5VRgL-0itXnxIxU>pf4FpCPwaUqfyuy4f`5sb81SHn!6m_tR84`2NEoc-ezbrq9~kCEI@> z)$>pax|uzQ?l}B^!{yXWl>Q;i0NtN{xE}>{S(j5?Jzh?Ab-$eI!5KJQs}40X*UXVW zLxo)ludlkq^;P^+*H`gVvoZIoyJD}ej_|s=Ute{p>#HtxR(~1B+(?*8aDjCzvPOLs zUycj$g@Q$0a5Z;9G}@$$0r9uR4~FYkU+Z;Su@ws?Ny_~*C9uy}VJUM7bNskr6& zNP0Sop~P$P{<@~cjr{Q5Jlc(U+K`#E2Z(8*me%ybwd@u7-Gky+jzb z8aKuIN)~qx+3cr7$l^aF%6dskG~>o~24zLZYi#y;7x_*KX_&K6VAWr_AF*ny_8{5R(fe5GcOhH zUy$w{w8qR1@ZdUxSLc9}Fywi~xFBo|riwi2_fzx8_`Y~O{ zMXzTsOrlkzYWxQze=(JMy)iFC^!pbF@MK+v=1ufgeAA8-Es!{~;MUQVCY{d@1h+3~<%Mb#a0g_?|(1D+So z!o`k9z%bmT@lV)uKZQgF5_F@px6sn0-sUu_Y`aclUN2|Fsvyo~e+?HDB8!^xW|1pfD2(|Dp^`(ku=D7 z8Es4K>=DrUJDm5YroF!p%?&{)(aqRH=px8&=_UvHCp{fh&c2Ai6#!P_;~s{@l~`%O z$9uw}X@)=qoI6S(?RTRkorWU*5e85QN5gRB8@Vh!$Le;}saYWRjA)4_BxvbC>!tEb zuzd1*loychx4RJ^Ugqy{(HBx;ls=S7p#1U zk9VJ?8C(9vmXrqPaTq|!J*e5FQ6s&~D}8)|IG|#wJA%kS?ue0Is$l?e%tqGxR#z~n z&D;D=bXs>MG!= zFq1ZYIo5_qOiIQ&K9-GFs5~@ujdf#b?4Cp0&@c`2b7)Y0k=EESOO;QROXcvGj2v2w zT~E?Q`bW@&`(?P~3SA$hWrcGd829hMtVCs(uqfg$0f5z3Xk&PiM;%0u*SgoC@Fv6B)C(Qb{ynMM0GNKwoj z&S|uV5?#LN9g9!+R+Jjv(*DH3wWIl{t$de*BCyNGyBt|oY8gFA(dC#Tw)<3qr~>nC z%3ECdmqOW+jI@&c70Pcpa>PysZF{EJF`~OSHZ2c@nPZV*Pyw8NYj*%onBdJ*jjPv% zECFTEZdyzR3I4xcjK0h_u&>dtk2C%3^wH@V*#0sji#feRaE;wDilwH`Om*U+1*gk! zdS?#zqz-qLWn47em}Xu$+-+bSxD2B#gI3JR(7I^2V_NEk!~2$HTs&wx4f@G!7H}uw zDPf4mnW!eI@d_wPTDEcVATmtkaAWMCvJAx6lb5+=5QV9CteJt|EkO0tWyJfG z8rK+Gc|3hF)~P6cWvKh{EGs%xeKec!$gAQIM*EjCvW2-ow2Umd$Q_V@22D++27?ln zY#^|7(X@yvRWMVO21ih5@p=$7mow7rN{ty?M zVJ4fHVHMubi)WHvR1t^UF&REk6a#mJNvpgV6z}Og(j&Xcg>;k*h6ojEIa+eOQ=?ST z%{3+_vbY^b28s7f3Q`u;7>AIy718X`R>t9}D_OJiy7zwqX$+iCV*tAwz0rfW8>!Ud z*<*Nbo*>!^LJSG3wE`JND#Bw)zGCnyPaK#)m}42l-h&9LZDg{`n3+lgPYg9`w+pDL zX=O^ZQ`DAZQ-#c?bFEtQzG#R3!dS70{6*P}4-8&~v4d_j_zW?P!gsBKF+UxlP8VfE z_Y=Kz#!zEoMwM~0AeEw2m%7kgzzZ@n8@*Ss+y5#0R|yRqS055BP( z7*i@tP*#5wbFG(L4iZz6HQD9ThGVcC!_h5ycB)Z3kQ9cfSkw-zvm-GyYRH~rSABRd z>RQ7@T;&WO-68zc%cl=o=cVv@r;-2RJ&pJgV#JRW+q_Y7dYkHv_lF^-~B zVYB2W;9S});e>~30^X@b*ElcXKs#TdytSgsJl-04s+F>1+1M@E1Qjr{fia1`!&tx` zI1?3sh+5e>)_~={<$#^U8%A~c$<|ar+pG(s2e=sCQ?k`a6~h-%`h59MMxYM*_+?d= zjsJ#W{5`!l{li3vM`>tn7(a6qLfV1#K8~+Z4*$a2P36miogXq|#E6v(0~_b8Tp5^A zJ_5J)LAeMl*`7{1iEKMZ!pXJx9KeU$cRfdLU!mk{wDu?ZO2w9t?9}#X=SGzBO?>bk z6=A1WHP(!J`dUk}jr6sRzWDD9-bris(pMXOnFcB&Z*p}06)&bSOsBg%qd#5`aEnBn%exc5Mw;dcJyniX6)$8_`mi%g%}z)icxbQ8B!o9_AU6#!vc-v2qc z8{XF)hsv8v1)5=|l0B#yGu+Q|?I_V4_hVc%z@jqDj53saB`@6?i|$3rbKKvzl5j~D zXOrv(OO}fN{@LaPly;6ghYRPR?hyY1=4P5R+}Y-E(yB89^e-FLb3bD#QzZUktw$So z4!xF3H=0xer+Y^K{uwYzkusc{vQ4)$_97hg{Ad9{=eVP%>Ii^kNcR}AAUS;?^$LFUwNAU zceyXgFh{vz%=HCxR5kxDHeK#T?z7BMhp{pj#TvZA^f>R^+QKyq=bLQzF<5f8Y&~X< zbQ`m0Be4+?cD~1q-G0;S{MObLv+LZ~Wc2UvuABb4`!+MfU2S^5;GJ#ucj9%Hr>Gc> zRGvDlU1^o)Wve`Qn1~r1d%uiKzVdX2Immqv70Mh(l6rHHv*{Splm^&}S%%o^Ldo`Mw&MP5xFUr7Tj&OT_ zj)ZqKtva{B(Pi#cju`{sIMdrtIOeTkB2Z|f?`<_2;mT(^`@7HDY8Sa zX@tDOJd2Xon*E%s>R@!f>FH0M30X7D^Wn-hTbQ9PGMC#JQfH>jHhb+rCC;kDIN5^! zWL)M*!$kUbOj$G?F6?PKbQR%@{yu!3#OHl{_|)19``36c0DV>9i=WMRtiYNxOkZ2* z>pJ?n8DDsb6Xq>>Le2SeCZ@!Vn0-)e8qH>3nhG$O-BZPCzL}DZ;;-Uumr`ds5XM0i zfm=lWZ1fY*Ggg?+VQ3qg7v<^6fu^$@cLE#Ey(WzJH!*~M;UYKASGO2EW4p+}VD@Gs z$4$PSe?i|f%F!DZK=pjDpOfE8xE&6ny~U6;y-k z%syqH7n;4f)8b&A!h2ufja%p21B%CEUXcR{YK$-BPMdYh938u)Mi^Lh8Y96o6K_4eUUjVLbGHY-)8ovJ}t{|t2r2A>hkrH@Hkkre~V_DPHAARh8ebqZrO~{(TFdq3g_2AGvoWA0a79&vVR9_wwh2DZl#@ zD@Eync`51Md>mQuWfZ=Nle zi;9yfwAcLswsMq#>Q`?)$|WDaM7w;M+U0s@ ze!BlUS5bP4;rJva-Jkz>dS?EQ(tY_)qi?f3$|%LvR~~s%oe155ID5 zR(b>v9r1o zGR5I~SAKfdbtV(^Gvciid&~=by8`iIHoY1gg=>$9(J6`;*$AmTf7da;2 zVf+=VS58eXx zf1p^RBj#i;jU6KYv92!0RPl)Dv;IX=F z`3kHr!L#a(4a=~WJwd=&#SIOZ53z#Z4CZfLKnlMq%5#>X5wY?=-+UA?eyRFhA*g>X~3373@q#j8%s$54>_oO>^2q|P=Pc!DZzMe+1D7GtQ8?oC`uS-St zb*a~@*g+j=6A%Ugi3+>s|Wyt}BA0G<=;jVZn9M{D_htnRj|9d8g;F z2hd^9{T@i~_dM*eqY&eu6HmjtIvr2Aj2hPyunlb9z4(9H1^H>$A4vWOI1}=BT@QPV z8rwkB8VZY2*13M{JVtQcy`sF;C^WYU!H-?PcNx|ALIvvZ^)aPBcHzuI9llPQLhYmp zAJtKoqgUbOb$Z9g>*VYbI6Fkn7Fy0AAlnP^h2UJmgCnwecrLNRlZo&kE|Cg2PISGn-1Y!CG7g8_4xMPD0-yc%)L)T8zvBib>KVc&Ig!vv%-s$Q`_#VAQ}TIkpW1h~2g%*sKF+lDWZf^U zFBH}nTGss{Knr<*oOq{;=spX1e0Z7%h|csmnd^DyYq%lKwT*h(MKV;b-#PzA!TF1M zz>R+g-KX&n^#q0jZ}y=`SVb!YdC^>5#y0B8+Z;O`Xpt&wx}NH|Xl<*+4TofKN5))l-0+E=WJ(uHK6kVr-R=2n&KY(GXZIUJKm#ibVF zs{vPDnN?^=+C8t*IC|Cd1|L>$c;54n+ISq=L{DF2NGz@vV=q-;ukkAbL+4khM%U}k*USV%%Jog-2?N993FGHDi)h>n{TCfbzvy`1!PBoh zU!~!*$GjgeHg(-^K5RM~eXfVi$B~qUN$}rwzwwxXkUxfkVW51|@f~V_?>c@>|9*|Z z<=9b*(RH^InRh$C<8hRj%JVZoyrOt`|{X{Cm~)2Iem68?PE47%A#z?R#yJJVNE74~$Pi$=jOmrT%p@ z`bxBjdt|O}Q$^}r-*Nns*Wi~tOvAaxvsAe%Q7XPp75xoiLiReec_}9p0xfl&BDlr~!su_^M9Y5}R-qp(~Zz`q2KaMF?_(caf zW<+Q5DZ=%><3;KouOgcG_qh2hyKlI5IiI0s_?Ys7$a_`}E|m6Llvjnh2zgZ^k813y zSrQ#9#C^%e6jdS~ViL%+3UYA6Aj9jSUHxaE5Hkv}R!}HL6fY$;uP1Rna#Cg*wP;RS z>+cBM>*|j;?~6u?`mVsb96$)gal_SS+>i2h8WD%9)jVY~SH$t01Ks^~hwE47Ye+xg zc-rB5RtlNx3_|7V1nfG6Fh$w^eD!~S1hQAG#!s4x_ci|WQ{3`xU_W))nl;$1k6E@^ zDTDcOIVmPfC2qnRZtGVguPhwRsG&%GmXgv}?5XgXu`Z;1Q}OJQhViU~XB? zh6Dn>kV~gQ@4OpnNyNWw{ve!KrW7D2 z$UANkN2H<`84cW{%4bYxY&J(_H2g@3XmD}Nmy8C*Kt#hnT9TlQ2E{-`BNJ<6(OzUU z)<7hpapl_8*-OJ=8{unzMLB&KYRN{W3(*Q(fOxh_%>8lX0dq_9D({SR;$EOEKzRkNzcm6~<;FCF`Dt zhj_??lf~6kjTArf#T=Ernrbm>>UMNC>I2Xck_$TUBuR{9avq8oBbl-xT}iC5T>5W$ zzdp|UsW|Vsao#VB^B(-Syf?>rZ;$gHi1S_&=e_RV@_u!kcY4kzCeD+y;=E6e^IrdN zd2fpI-WKQGALrd~d$+dBThMpJ46tJH6||v_T2`&2pA5jrRd!Z1uG+Zn3S9lPeOdh{ zENc-vNVv7Q{+x)hwgrA@^f>#89-i|67#?S%Kh|PLoHYt2+hvyHBC5<*-H$@Mr@G5g z`5D%0a;c0n-;+V%q83>TdT>nCoxWoii>CE&^Vw~QtJl9Y+q6o{YPO-m@bXB> zIPY)Ad8gNI#i**-b(f>^GpyHSdaJ6a z7k$SrvKC%sX_%?UWZ%G3bKMuYpBcbTl(nC^1Q#<{1?PNQdf=KN1~Rq7dgN4 zJ5g|pw%CtK%zTsfMK#P1z;w({Zs%n%5lwmi4#uzXH5i5M)G$-PG+&gwJhfo_(~>h= z!L)1a+ykaf!#oTof-}PShyC!xai$lFw`uD20hpkM8HPSsuVD(nbZD5xWJlAcUjh@> zF!vIp@%03lpvKOdU?LhjX&4hN8U_!rux1T24@{n>JR87tY8d*>qZUoycnnNL!_ZIs z`80jCH+J#zGjE%c8ec&$of>8pm^MwlZU7U}FnhqXXqfMVY1S~O!Q^R}55X`E{&+BLpz0@JcE`S>~rCQ_N4IR&P(I63ncn2tHg8HW%3N3(tR6EiEhohe}IHOyQv z;YG>qtRp)b<~lIV8YTj!O%ub1!E_WQFVD}xbj?l9(2s30jjy!6Xm^dB^TBj#+G`fs zsYqU)rC_D@|_aZZLk0orl2WX_)80gf)Ha4`4dVlb5Ft&WW~bnDfCzG)y&^ zpeBY_fMI3H%R^_`eH!L&FnJnZZD0Z#=0{+4Dp8EAJ+d9uN@ zYwVPQ32Vx;8jMdfcD94b(=Z3X1T@SK!1y)HX)yJg{__EtpoU55k8!H;H33YshM5Z{ ztYIz(lUI_w-LI$eXqdxb+BI|dQ(&4kcHRWjp|RsQ3-hz4kBtBm(J%#II%g!W`vx#! z4Rafqu7c!t9wuKJ=C@!vG``XYps(Tyg=FWfrh$oQ>?{G(rD47bCam#w6b#car@-WC zn76?AG)&q+j2%sxCxB_uFqL51G|VRQr76#yVCpr@_rUly%qw8pHRbsy`O+{$Gcmq2 z%rr0o&9;DEs+*@_Hh~Fh=9W9a)N7b;ksZyx=<{F#nr-E~V8RQMj|=Z0w7X_*83)Fv zVe-K+%{=x6F!h@4*G4d1vy+#3CzwtR^DvkW4f9L#rHP?qFxq`#^70G?)1vWJ1g2TT zTn;9zVd$OW5e@TgFaZtob1-zfT(UWn-rC!)Vd%Z!Z5n1gn0gJf08CKB&~KsoHOyUL zd>ZBfFnJp0MKGP3zVRWL4h_>6H>kF2m@#0&n(;mjj88L`7lC0KrU^`*hS>=wpkW>W z)1s-@Pr(E=cHRKvt4ZDuokLMC4Ko;wU&BlS(^Z|^S0R{s%{+DqF`9a9q4H>$onV?Z zF}xp4Si?L^<-al`VK?AG<{CiCsVA?gzRbcWoed8`L^cpZH z{`GW^;t4R#nz}y&rbWa24oq0X{0&UKW`DKcXtaffITuVs6Q7x2+BD}^7lLWgFq^IZ1~JqyXM^!+n2BHln)1v6lc!;pfoazG+6Kn2 zv2za?pN6>~4AU^Dz;tQ$pI;|C#mUExV=Vfi<``rMm=4W2y^t8qwrL*unw7jfVK4#B zeE4-ReodM0BRiTg_!u#>l9%V#VCpsPeg;gQrp$w~Fdu5#A_ol9v}rk*PEDLw5>uMI zUfaOQw63=vyXH+ z7=LN6)| zf$?eTRRboXsn;s<6-?e1H-c%_FnhstY1->yF!h?T{4AJ&rtYtk9Svighj~@g7K6aF zYhsuSCaf9nwZv%btO3)kVYY#(*D!a2Y0-?q?}CYFn3u?oW}fc?)2ZpJ{mw^wY5GPM zm<~<5=YjEQn1x`vG|ZJ?{F-gb?PNzYmLCMeG!xww0PbHVRBwGylvW zJ9Cn^`#do1n(~CfG;8X96Bxh7*KROD4Rb%3E=|3j1=Fcv-UQRG@%0IqJPqRuV4P~k z*STPtHRUM))1jHi=7VWjl)SyJ0~66O_kjs&m>0k>4f7W;c^W2jBHBW8Zg3iyE)8=D zn05_w6&RnUJa>cX(AaqtOh9AjbufMnW9FdlGn2R11Y#~u&QyWv(lA$np`VyacCKkB z7@vlD3`{`d>ou}dnB13Z63U}t#uB6PRSKq4Q|2#%Y1Y`eofysaly8Ia&q!Xc=fJdR ze7#S;G05X4ma$hsRG#4aimV?RDFx$bjYkWNfCZb{f2&O~B47dQ>6b(}VhH02) zFg^|QeK1{l$>Zaig8rjnf?$Fg<_0i%8sX|vE(Fu2VJ-*Lp<(U<)2?BD z1g2iY{1r@#h8dTO{S6I6*E}N{=1#JsY4^v$1U1ZiU|KZHSr?)$G|Wse^%`a|m^=;h zRWMx|rVR`$NZy}MgK5z){{$1zFk>%5oHYzRd+O6LSAhv?n1f*a8s-Hs^%};3`MXmS z!*js|Gz?wm_iOs$m0;R6<=G9UO~X6^rbENL116$jGO!J7(QF4VM1F^c2_ZkIVQxTv zvxYf_{B{lVJo582%*V(NYnWl!CbwyrVlV*>vj$APhPf3?M8li}nJ^>Tf z>`R=D{l|I@GZjpmW`E-{Fn$el4H%{w7rVfOHFkagrVD-A33EMN_xvrG4h{1Om`)8d z6tQX3Fu7prHD#^=<3oESEAtj&@JYt(M!sLeJc|5?raZp^6Vxz&2NTdRL(rai8fGe( zX2jZ=q`fWy)1qOn1JkBq_JC>EFh2s*p<#Yaj3&+|wgVAO-^c;OG{@!(!L)1aTupW~ z{bx7X(X_=gV0@bLd<-T}<0~86lYoW^foa#o@M0{S`iD;Okf}SeccQEHG_Otp6U4r6 zGNu|#+rs3`6<}IWret<*Av>CS9R(9f!hELhl{JFpd5R73C!C_Qm)fL_e-$638oZs%5@qT=6tS<1wR54F2=9Q zqV9>_rcU&*Vum|0EQYJkg`_h^vI!D4E1G$L7-^YneE>;4Uck?NaY-?*OXOW5$|bfJ zXmV?zd7YL1_j8lgve6I=>(pA9ADzo2dd*uY8S4XlEOkwt8s?lT6eieeDJl zoEsAjNV;$?vZtDU);;`Hlt=VBl*vF?5-h#Zb>D^D#7FercxWb=8i6282#nO5pFn0l-y^VJ*IJjJ*mU(3;*>{gaWr-Px6)>FN*t@rBV(v{U- zIH}EIdllJQ13R)dJ&o>N zBR(|HW^CYG%r-GI$yi8&NoEq#x)e;av`hkiZ*ND8om;`wYwVmNU-{AV*l!`pi;?_= ze8ouUez$OpWDH4?`1-78za=P-h&;9OAjBtrRNe&UcGb#5z{EGvgJ2#&PO{$n8!(~; z$ya~S@jdFF#3)~hd(=6VI1<uaCfVXnYNr$Ji$tUsJ(|QQ337s=>UV@f8N+1(Pg>w}5Gpd#7L% zEk6enERUXB=)Hz4W{&yA2L|m*A3=TFkwdL`%L3NjOIGJ|vOF(tB^^nO0=~ zOPP4gL?2+ zRmN|d(iUKTRy{oNwrK{Kq9i?>g0T*aXm|2;UQ7&Suy%u?Zkg;z>Sthr8ejA@v*=Oe zs~JY2&}~@;#;fu56ENtQNw*i-IMXcpD*2+Lr1%&<0LG_$_3u^^k({=Ou~iyhKLjI2 z0r{d?J-%K6^e_6QHxa|cv){d78a2MsasDG9_k`o!@IsG>X1HVuB$3;qNAAKn$u*F) z#4taE#4mkuJHLP=7{h!5Nn4DhKSp+}BnJ}zO2h^>oJJnLad2lXB>Sw#*KCwW#E{C9 zIEc%LQSFs@d~F5OtZA=rf)SA?UvdVNwHN;%2QyjY>yKdQ2r=0{(m>2}q6K^QwFFGA z#@Bsdc4~b64UFg;lc#(o-s0~A zL&rqPe031R`*Y8}{sac6mXpqhz3Ul!RO9P>FwG0BQ5hdT)DtfvAqIJHhw<}Sjud&$ zD$G4oG;YOO{BlRVtOYTTpsd5ZP$f1x!F=c?p=d7|UBAiD)eE0F$S&+yQxyX=aG>3HI`?BX^zpl6q0(4Ruh|7-hjlf@#S2OJ|Cks z3X(jHRw0-$MuHPAyI%_+87+&zuzJb#A(2`n(+Gyfv#^u+h~s83LB-J79($2?+Q9hg zr5&FQU`;Ylg9#|6Z$joRVwA755;C3@D38X@NHAdyb1|3>#q>+)>rya&#U!rRm0-FQ zlabKQ9bkN_Ua@=2GCmKGFU@%WHQCWH9_%efE|6`Jc-|NfhH327g6YuMxf)EnhS>)u zpz-xAm^O`_kHEBOn6p=*KWmsgF!cNY#l8Ev0x?4|wggO`hS>q8J_++#?r%`1djRDT z+hwZPBuGpW$1I&-Zbl_3N7Owgn=pFv>pd{X zG`nC8u-bK&8{sN{$ z<7?C!TpQK+ssbbSNqY8m9hi4Dz8(aVrSbI^7_leQv#N36-( zD-1^L|McwZ9x$UczMck?r}6bM7_rwxzUVk5rCX~rcHTPJQNBhYKfZ5V1_l=glGbYn z7_mRrbG?25W|{JpIEH@$Q>XDYbiLe*>)BTsm}ZTyO<ozb~Ykd6(OhoRT#y2_dCm(@fwbAFt27M7dN=ZJ;?VvpF z_Mxn(KKgSbFJt$w0+dkHix><5PRCN$f_Xv3&=;F&r5*>fT@yps2EaTT!JS~1(SyhPQnh=&R(RQ_Z1_LA}66?1OJp-v3ojF>ng=at?xn7 zzEx@^_T}0r8L3qaN#Hf9mDtyFfYW+qrQfqV*%KQ(hMT6gtqx7|2F;eS(NZMYOT67d? zcL%BU55-8W{LScxN{jkxyw**Mky<~4q*KN48_<#-?6o0VBqOz!LQ?;REMc#NzP_Uv zspY&1eM4#4k$}4LTCEtVbq^$6P109ltv@M7YF&6WT2T42BN6TEtBR3YFG3PjT8Vqq zm}?{>wY~_6|2kR1tf<;BRj)@CBeje#p>L>qk(OOb*#@a)VfA7QtJswf@-!o2W)%^ea(`QTD6dbHChqHNUb+W@~MpBD3-`q zV4Gy5)<%-3v7ESse^iXr3SEmbYqVZcjMOT-4l&ed-J=+(^$sL08m)`3myFc91(G~9 zDu*K)_9ENsv|^;z&@W@0;$p1<*lGNNzLlEPTCEtVbpnz+wRJcT%67k(TAwIJY8Bpq z-urjyi+1VAt5~GgO^T6PKZT?omt92(`%4A>UuyNfQ8H3%79@1omQ3qL#YnBkAn9@^ z*D|+DMrsv8(&9+2b)#aW))SC4t9sG?Pkb~|zakl_H3t&Es#jvI9g2}!&q30nw4P5G z!~S2DjMSP3NdRMA#4xee?TV3F&p{G4rB+u$UxRLvjMTaW5}%P=YoB7I)*B@0CA9`6 zjN#~;B_p*$kaVfYC)T=GF;eSgNP;QS*MNk+hTb9>sdWh?0ae1&3AJ`BMryqRN#`Hr zNO2{M;jphsMrwTllD2D-YwcBx)cP$X5w-pDCiFG(>ynXLAxOekNneSz_9{kd{RWbb z52RLlLSLg=BqOz!LK0Mam5H?uD@JPl9+Gxduatzo&fg&!skIuC78S$9TE`V5wcddw zph}pyy(Zo&8L9O}NLn;8d{8k`>jOx9YHOZ28W-Ir8L4#@BpsT1wJSzyeF{lLY1wl; z1yjzwg||yaYHfogPemiK){hkymhff8NUgK) z#4M_|M0Y_Yeyg`wF;Z&}ByAtd-n$mlqTN5FueTHk&x0 z)C@pc_9A_Ksu-y?V<+YW)n2`96|70EYZW849)qMs#n6*b%Yof|!APwckaVc|FtOG( ziji91g(Oe)`O#73vP<}}Vx-muIIIt=v7A_IlVYUSw;<_yN48huQTdT#q}HUnp`~J& zSgT1fQtP{rw5byIP8h?#DMo5d-Gx4{qLEnZD#b{xhahQ7m0KcAa|wFX$BL0!lkUMd zReQ^cwXRZ()cPJIoqv)s9FWkLd$(kyRv9FbKT55{TfH5Mky<~8q*=AsO8By)FMDt1 zy^@hy3m{=iYh1z-KBgF{H9CUXSZP%z)VftMQtM-qsJ-Q(3AOU}NJeUHgQQc<02g8S z+jF9<*Yk>zT0{4u&#M>?Pv~o@Vx-nSNIJV@z?2y6_O@4Hd)L3AMH=Mr!>4l1`;X`%&l~*5a`KyILh9wF)8e zzb>PZ0+smo`i5ep*6$(dP-lBqL(45)sjWlqVaZ6XZIH0{q%RsN@xGo>jMVCT1bbF$ z-bmbD3l$@^?uMjUX-$ML83TLmHN{A+kw-D&a5<17=QIivmT;Y7q}KhAgjL_jf>wOw zdmWRE)LICMPiZAC;oXXnS}#G;^1dwL^n@k!AD4{OS_(;r(#lJybzCu0>(7uht7yzl zs5Rq0$w;m1APFd6^Pv?#M?I|=snz=gT3Ls3gY(n=hS&`HTityduNsrm3KWP9)ti<}F_J|r2bwHA^N)#twgJYMS&#YipZ!)Rr- zHUBEKqz8MgLNQY7Hj>~*2Qk}>hn7G^-LO*6Q~?$w;kQNCFyP-%yOydWj@z-zKrI zobO9UYTXD)yDH%-)GL1b^}J%F*1#WNYp(XO*CdSmWr~qn_d?R4_U9e;WC(rPOWsh7 z)EeE65^9beE?11yIt+>LYT2XgegRj?*B=!lwa$AC^M<+>kXUQ8Vx-n%kkl(*KaKKW z`|9;W$w;j^kOWk{`ap|%zgT26ZdZ)ddI=K0@1? zKUIv>>is18hHB+aP>GL5NHJ3DC?qXPD{;O4sTip>=f{Y~l`@8j>$OWUQtK^9BFdLH zVF{<4l8n^a3W;C&qOD$hy*d;lwa)$t>?p0o^;)YKsr3*fo$5+f;(GOZN-|Qb8j?2U zD{;N{C`M}i9+Kb|8N(|Q*6ZS@B_p-I4oSPxN?flu6(hB#K7+oYv=Z0rX2nRYS0L$B zT16)YolVM))SC0rIol|gMKC% zskIW44y8r=*!Cjp^^jtumf3-NHOqQcLnXdmLB&X|J0NM_Cbh1GmPvitWB_p-gL(=hzte34p4rN&%SB%u^`vS(7Mr*lZq}KhAv}?57FG@ygRYMZd zXdP6H)cODtRv^!_VY*CkzPI!jl95_>LDEtvweClDFMPxzqwxpDNUfm^9Szm}2zHngM%du;|y8bl~TJe2;`OA`#TF*feP}dL>YZd-d zGE(aVByF!IFJb;Gl95_Jg(TpSF&vVxgadvh8L71pk`8qpHnG-T#Yn9;APN6Ac?qjt zm5kJS2$Bv>3_ZV=jMS=xB&>k&xW)V1u1h@lf7vB+NH z?39euDuyJeVwhO#7R5-dpFvWue9dBs=8XZrm5kI{00~pR5^L>NjMVxKBzY?GiCg)i z*CZpgz79#JGkK5tgJPuC#lJ&*l&{2n{%eYnS}#Eo)U@)L*Civh){{i_`GSNod`K}; z>mQJGsTd~Kn)QZcq}EN4M3k?Jgub3rjMVD;CZeihm{@CpVx-nxkaTH$y`~tcHTEsc zKN?>f6eG313rSF&tNeB_#D~3%ej;H11Q3)Ort+=3mKCc?)%Ae8eKx zihnN|sdWb=J~bcS16;E9+B=GoTGRdjEfvE7&_dO$Me1)=jMVxbByFm1B-S$Ck&M*3 z7?O^KvR*0D4gW8FeOob7YuLN!Q5vn=6eG2aKVnoa5;Ifx=VfTN`Yi8lrV19JJhaP0 z`%2x*BkO)U7gU^Fn*1l z?|`AE2G(PIT<_zV5sjUBVA7J?E$&ePE_*?0fm?DjxkHFMu?3DZkzBG1rf~nWo`2(18jh*R##k)E+cD@EC zsIk)trb%Nb=M3tu>?CflFM+vUW9KO_mul<``T5Iof_8GsIpKGF!Uv$=rb+@X^D z2alg!w#xJ3iq8lz-IVg&4Q7Divj$9w;#0bHo;OJGnF@yLj{kDj>uE5RicdZs%I>51 z91A9?_*@63uj2DIn5l|SY#Y-Tz;f1WESPDE&wMatN_l<(Gehwy+cwWD7oQyaC@>9* z&ud@?iccTZjz^#WYNze;yt#@`0?c&rDTI%Ina_^*gITEftOqkweB9^7VI8n1QG6}~ zLv_c0Is0oFm?p(%+wHMdDn0|jtW_;`20^eDQJ5 zhnw%3=cN>%6T#4!kE+)!Ff$dOAHmR=kE+*Scf%Z|_|$>vrue)BW`W|fZ4CPa#b+>> zwBmCI7&>>N+Gp!dI0qGO%S zFaO~E#xr1IiqFnn&AA*ke$E8bP4RgQ44unS{ndU?>}eIB6T#FgKDU4=Q+!r|X%HWG zzjrIfSXF$g!ORsOcfY5>3{`vz_A+xqRQrqsQ>FMk24<0z$6c>q!Bi_g@x8IWi;ufr zSAwZke3pZ0QhavX2YX}1=S(m(w?wtiBVg(kpLX4F&p~|L?Q<-cS&Gk%VAd!;AA)IA ze7fz6dk*5`Zs!Itixi&@-LWo%iE5uKz${gKegi{uRFqHke%Na%K3{+-RD6b&pf41k zgDeDlY5{q6rZJFXs(NDpMD46{tvp6X7610{hk9;s`&IR zMH?zU^TG60d`f%b9+BenFc_LMquS@dUbz3G_$&fLb7oZgY}OlfSA0$ZGf4574JNMm ztOb)0A9ugU`{4eM;xir0IPn1-ICwpM1I!@BXV(MG+#A)-qrp@vKKFyEmGZdj^(~mB z;!}E%nR}!9>nbo)6`zm5%#iW`4jkM*-44e6AI0Y!Ff$dO$HB}{e7wG94v(tWP%sUO z&q6SBmGZRvD;UM60?Y!%ryk5g#itnztp!ozXU{`$jj#Aj07Gkm@p11n7l3I}e0~PA zOz}DNP+U_hK6PN46rb0@tX6zF$IaSg>eV4I3jOK9ykT*Lj=rxUUQD2h&CISqFyJrl|3A#1Xjv zqxf76ri1w4Md09h<1H|K6`xp{S>vM0GX_k#;&VTkn3TueK6yvt+Eeiv2&P1Q+~?OE zFbTzHJs4UmqsGs1M`3MJd>X*?6(4tbTENsOKJk8L&5asA*MX^1d{%*}P|DN09M_DB z&y`>XiVt1{4jw=6f|;rKbUPZ?XyW5;pYy@YQG8wmlMo;G`03OiYk}fZ112dx?(#H& zNh?0Z$6&u9K6nv0xP2}JvrO?>4uOfK2yQeijTW}UIVjA@hLtQV?%u0 z?Q;>B7RBdHFf+slF9HX*&pyZD{*U5Q3udPHxXbf8n0$Q1ntqz=x}fXvW=~?;**(us z0@Fe9c@hlmNuqoTDlpe6K7+x~o+QfWUNGGhpP#|dp2YaL`@QT0-2YL0t_HJQ@p%VK znc~y+M2s=*Q?-koI8rod0=P{ z5LKQRz_i;UdY&&j1M{=uGX_kd;`1<=M)7giYmZ^r8!J9Dz${dJ-UCyt_;gK}JxSE~ znFyv-@mUCFsZt(qIQF87PdS(-#U}-3fa0?P4DD^A`n_}n?*Ax0DKIM)pEY1A6`%5v zICm7EdN4`FXEhkwYem(oPbKz#iqAAKtHsAX4qpc|P4U@vl-aXIji0e#W+*-jz^qfs z^9z^;#pm$RSg$ZAM3v_XFmn~3CNQ-3i}L9>2IrvSQw63_@mT<7iQ+@QO1Mbz849LJ z@mUCl_K;Ea^2TD!D?a65iWQ&R!K_w%egspZ_#AsC_F9V1EHJbeHT80@JD-E`uyv%L z=GxD9KMU90iqB*)1&Yr?Fmc7F+c@;8;?n?z_Qp~5+I~Fl|0q6_hT}<6)SLD?=5tp5 zzK*v-SHh=dPkIVF28Pw}-)|DLB|oX%i`)d@ebgQkn2BXSeK!G0ZN{0hyL;y$VL0kX zC{6owE@}b);9Q4HWQL<^p`@qt6SD4H&kMs*`ALk!4$-+z7KWo{LTRYuT<#KnAq+?L zI2&t$w4pod0%17nX((|i;Z}ZA;1##V){~gws8gV%FX0m6BnliHb%!t>Go((*f;!wg3ypfp~}E$@zcKp2i%4<#1I;ix50YNcKj<(HCsx#(PGIBGPM zCdsumRYwkv`nNC~^&ON38NItn1ij#>_<785)HEn5nQit2YnSkKVK}Pje4Hst)JS1C zY7Ugx0X(AU8w314OSlcc0Bf%)-D;WPs7X+oWscehUF?s0 z&h?Zq9M%5sICu8rT<0Q}JvNRLhNDtYYWs534$gWt3BysFU!3Q~`b0do!f@19Sn=XgFL%^HVK{0Altzhq&Dn-; z3ByqxFw<0&a=qM9rwYSSGoYjnU+G!E_lY8Hm0cAbVclw5d_+YvQf7>>FPO4DCBmwWyCNEnWa zU4b*@N?udkQKN+6s98`NWc|WcHgNE{{HZV;)fssTQ37fMv!D0FIBJwI9CZg2Pv-e; z{Sdt3sLzDqsIFIG%*(FQ9W_oEj+zT4E%m}SK5%fZZ-n8fZpf2B2~54*QAuGq>V7CO zDWSXN*9yZ?rT@U_Robvd7>;@vO0BHs?$-EK7>+vRYV@*FuS1)RgwiZCz&0F^ z`J1Dj7KWp!{TijeXpik59Cf5H990LUP+H!7Kk8XwILe!Ws6)A4?x?sh9CaQPnkA_X z+U9k|pIk2g)goayY8{lMoXhU018-o4qpG2JyKxEKXXQd+IO<0zX=y`u)WJ70!%^o! zX_OLf={I|zhEE8?Q9nb8$qe9*I^-s1IBF`C7HRp*k-;8Oi-h5*AEBgWx14fD9a7H> zN7X_p?96TGUiDrOhNBApiPng5lzY`1C=5s42qm>EN1cTd`mN8S|6)csJJWzV*kGwN$$II8$x*nLU8dO4$R5Qd}H zLn)EHO@C+9;dd~@Q5QprNfgbZ=)dg2WBz$zII8`fsMikM8s*LrHB=amnhPZa5`;J=zJ z3`c!Rij0jToF&}KBX6zA& zvd4V?1pmn}?X;s8gUMWLHW14g1>RHeoob8A_oUVIOmVh+r^lG#s1Z<_WIz9%Kb#QHqhyXS z9JLxsO1XB}_i<)8Y8;fblrWS^ay1IWQC~wzUdr`yNA+FA3`f;LDZGNC-bQWwgX^_S z7>?TN39Qr-<-UeJRTz%C8A_AXi+Y(e_^&<`hNC(^iM2`E@N~a;f%q}PaMWE;Vz`@w zSX@{B(;4-RFdWt6DYU#qx$8Am7>-IqX_6AU>y@8ohNJqEBDrYB_785ClrS9C1f`{p z>vf_Zf>#{Xc`-8_H33S6j170a77N2sTRn|AL2|k4HB1?TES)8Ym%U!QZ zVK{0ol)}q7SHfAZHqSA`Q71x4N|d`^_XxvLKSOD{jB~l`b^PGUMXyS(^PN%G3&T+#L8+A}cfI<&zzj!CgOZjJ<*wICVK{2<7tvpm>#xodP8Eiu zmO^R3-BL4e+~thg?j>e8Y7mqJ?jf3}PY`AA0cH!sQEN!S-9QtyEB>S;6AL0T7@XPUTcKms2=}8 zlzbk*&qHP8T$c&MQOlvkm8jxZnBk~%pj0SPF9^d?J2YWGuSAU%hNB*a(sCqU1uR8v zHm53O4zAZ0uQJ0?gQ3*+ zGx)Fed7T-KdKgNhyz{stqU;e>yqp=1ngOMv59e}6wSR*dj+z9eL@8mrH<{t66qE{i zAJ%=J?QLN=s^eRzsk{&Cjv6HlN6mqf+>YzzZo}>FQO0DE_UyZ&k z3`gy}5_>ku<&GLI3`gAoB_S>E?&V*F;iwbe!x)#AcSp?=hNIfNk2aKC?lFIYFdTI= zl%(WxM|~~~NA>ssQ8MO_M1T1+DWBC-h2f|)l)~QJ%kHSno0;LL@b~N?M6JiQ|oUa zByD5=mXl3aqdamqz6d2i|Ft?!15=J>q5Gq)KTpf(TredCX7siGv@OtS&iEqW{QZTiO zPZOB5;2v--^$rVCE=3 z?|_LZKKuQE9fYdYe{qeb z_*@Gnt@ykLW~kz`*E&3QH0@Tm28;#={#9?UB7p?#Epu+N8J8Wo@Y ze#P7(KJN3q2FxPGXE7Lh$~dau+x&*Hq4*pDCSUQX1G8N5c@|88;Q{+ysW6=8mdYGck(KUikf=eZ|MU?wkoGuK3(XjN-Ef z%mBq_-*#=hGVyWu*Ca556rV@H(9`8n?ehzmO2y~UP1<+^#mC(~bzqW;&kJDaDfOuH zYwPxHys3)M$zX;mKJ{RxDL(IlNhm(MZQ910q4pme1ExXo`36jt;?pa?jW<{E zxd6;K#b+^?g^JH6o1sq?pZ;K$C_dMKsaAa61kJ*>Tz|glPn09vi+yW-0_`C-uUwqu_U}wDdHB<2! z1BSkJA*$c!ftjQDd=I8j@#&2xUl%Ao=Y#2>_@u$46`xJ;seJkth^Tfx3d}Oa=W;MH z#it3(3dLuq9k7Q~d`5yh&X-7RBe#9ou+)6rW4MtXF(q0uvV>ya*gT z|MV)tSjE&7wO;%S%mDFmpBG#2gt4LcTmXjdW1IGI&xg-~i77r??u>nu__*se3`{r0 z=K(ND@p0E{9hg3f&!M|uj#7Ls15>8>ybPvR@!7s(8?Qp~IUUS2@xhD0!TtUsn4yYK zZ#)S%Lwwxr^LH>+iqA`6=ze(AJoZ;S6;!SG{2NSz__)i{0;X2+*&m-~rF-V4Ja`c} zxP5L1GhOl7GKM)*eB9+32&P`~xdqH3@o}#gAA*^s`0UvUbFcVx2-M2ow_FIOQSo^L z%yRL;i@?F{vqxu?S@D?yrdfR4?XwunQpIP>-Ld~sd`i5sUG%G&) zb-~;#KJI#*4`z+x^E{Y#xVK}<m4v16`wu!#Ja5bOd>|{c?wL4__*6AAJ1o$Dn2KG>8tq6 z1QS<$J_A!OKJIoNvKQ7|#pe|;^j<(zJD2T^dnt;~qr@ma^t@4};`2P1g!o|41`ZyF z2X(`mtN6?#Mtt1u(|KQ9n=3vyfvHh^w(O3zQt`P2485li)y|vjhqY4ixg5+i#ixA< z);PuIQZOmS=NB+@6`!;B$J(U$JPBr@;D*XyWWSW^_ATfwYWd_DtHr1IZf|LMU`hPm<5W@gJ8qao$6raz))QXS0UcHXQ{U62WQZRMm<1WuiFlCC*0Y~AUgZQ}1a}}5h z#ph!%De-Za=fHlr|D*U^1EyYl+~xTgOqJr(yBu?!;`0wM)r!x@U>X#kgN{a@Dn8eO znI%5%_W2adbj9c3{^mW_sPp1#F!hShhhQ3|JnnYh_ZXB}@i`aF0`YOz>v=GZiqG}~ zaBoNP8AXiZ^AMON;^W@0{tjlT;&b$|<~?82&hG2V8^A1Ad_DxzEah>xPxs@%C_d+d zq4#{F`n?Iv8pUUi6q12IR5kNbR|4`zVkv&YHiJyEo=YvTqKF@-gq4;b)2={*!pVPq9i;ufr&x4t!`1Cvt>yG%i>s1G4hT`)&m|2QX z=fTLO_?!)f-t#s6?ygren7NA2@k6i{C_eRI7Aig;5~KL+Jrrw!;xicxy>}c{ugAeO zDL!pa$C{$}90O*h;&VNiCh>9i`!`@#D?Z1Zfwf8Txf{${#i#8s^Imq;`F;`@Z~N$Z z{!TC}mGXQKrac|> zm~o0v+fnAd{-}Bl22-Q>JOHLxDNp`rtd)w-Ffb+J<38VKfk`PopMxn?e7cXpHId>o z84P{)z_gFMJfDG?qxcM|!dO*&n!qejd?pR|yfk)U7}eS5M*V#qq|9;TShV5w^c-u< zYh(X7!<-JLB~H)qg2^anLrIV3r{RjB`L(4d0>^eGhAh+^(=Fw2x& zr-LyqPr3F%DEAV(c;4T@luNGg>cG@>U{)x(=7DLN5gI?h$n(nDt7oCn%RPM=b}_D02(7+-Fcy%82^SirQv8 zuJy#{|6)Yd%80@xx#Q@95}MY?J)#Z+laQ8okEmf_^6_;C^wZXN7&z?(U`(s#9#J=f zsZ??`g6W{-dJ&9i`P?JwV=(mTH8UT&N7S!iVoI(ZCxB7rsQtlsj|S(ceiT)S(q&rA zz3L6OqW%V@X(9XkUyP`fj3_jnFE7Ka(^3Ksj0b^P< z_lVkJqWNs0>1B7WVlaJ_Tt|X2EuVWt4F^*r^>UA>3&E5rxo!bdJ2-mPdjm{j2#*Bn zh>l5Ik@XKMN02g{#~6Lf3Lfmt9=v8Jt*D!zG=_YhB!g-(0z)X`|?oqe%WV{Qbp8gdCb`1zR&eiL2xhvH>rF7`ETCNF&Ro0w4R`01 zTw}r1E4dy7L+`fJl~h~1N||Cm1*Qq_AY>S?a@d3^<425|RDyd=Mj_}WFm%_*SKfwF z8&W=p(i~ELfreYfviiMP$Cumr&yPMSH&T6DhHvl7BAR8U2-6sWYv*1C)l& z%v27mJ~uha^WwX+LeSn|YLVTK>IbFpBy;6!X5W*bq%a`;>}OEaenDk26t5(xTmq#r zq+AcBdH*1DCzOgFLFGXx^xlMDo@G#Cr9tKcD2aoD%GXemM+B9hD5@-|Y<3=;k7A{A zSaQ;+(PL{8_;NW@FO0h3#m_ZbW& zby`pv4<$A`sGJ8S9a1i%sQE!=CX|MUgUUSec|543p(OD|k$(0jD2bdXM>7& zKHBH`pt36|%YsT@C=IU|1^tcV7$_}Gtk~=6sVGNL=&bKvIlOu}A~94mv#D!N=ssfd zWO9$;|MvLb$3`czfB{>r1g+trCV*KgX zpENo;T>wULK3N!cz645x;`|60Pn^R$A};gi!m#u97otyGbnbA=`LBk8Nh;1Wgkk6BpfoAY zKZ9vLk;)v)=G~(fH5wRHPJ&XBT^UWgj)&5GOz zA?iagvy@z0T+TBRgcCNj_(B~mdz1&x|{lU=HR<2zWmFG+_W;Ui=J)!ukF#Vj4 zOTo}*CSB*dAw2J2U=}I4o&aO!dCGMpLhX8e3MM7F+-+Dm4W9#1avcQ5tRR$Y59G4z zH4IF>>FO984}qc2rkZi+9vkm~ zSrgHQ)Cj+Wi4DkIcVc$D5_9;`yelAOFDQkfJ;{Mk(uW0^lb|$>L`F$i%DGVD{H|+;xzO5ykmks_gl(aP+CG!-qo1Z zj|@f?L8%BSJ)yKH?;RfthVCKKT9@lO_e?O2!-I@}Ht`yH1DN=T+|0(FZI+-sW<*iF z+(YVpFso(s+Gj0w^G{$(mC@Vb8nj1d9Olk-02umYzL{;@xlRHTkI2PWWT{Tv&Yd$O zvGpI5$tN@BsXVk2+4a8`Op8*UMlb^+%0qcy0b|ac+_}C3vsTHqLkhcYCD%b<%sEK8 zXykH z#KBBea*YFH=AYd4x(N(DwGox;88Fk7T;G5(Gh6O@?Rp*VohrGG12aR(bs-otL*}m6 zJTL`HuJ^z+D7m)0p6A}&_1XsvJ+TtihW)|JRdS65V`lZ-xu%2ZpyX-JJeVa)`&=b8 z&7JE`F!Y2`RKG6*L+>F*?JC~@Bki0Q3s(sL+Su!9;SJd7A#bMNbF3+SiRqtv{A}zp zpC;v@{-V3+_S`xZOicRAebv?gW@SWw4I4b+Z|A~2QU3o<-It)uraV;lN|bI>{2xA= zz|d1{W~{pF{vMds5p^fWFDMu9pY0~jB;Dl30FzNVLrLOxgui<~7)rw^lovnGwHF;^ zMV$?$su?kLGhLbnckLiJd{TKCQiS< z##qWlP?{eLGB=V>sD$@JNruYvBKhFAkowLaK}m#i{Y+6I=MMjDt#pUd{A|$YXef=! zNEl^B)k3KVmGE{bCCZi5Q&!abP*S0K{RE|1DbMydw~i`-5)ZY;F;EJXGi8hwbupC2 z*MjYHo25KPN@yG|hf=GQ`5P;0vs*L7VEQV#9tTsPPj`VmZ-lB>h5*!wBDdVn#rdhT2& zf}tm)quOvXm@Z1L8DPxnkUQ5yU!5a-G+Azm0W$m^i^^V z0%O*%+_|QJp{Kc{+VFZXYrETd&CQ*w6il^}>l85b zNu{Xss|Ji&%_-MFXMf!YW~!3wAu!{VT+6|jT|w?#KZ2=Ka_!WBcNLXfeZiRBMebaK z!Aw_joeQQ;$yE==>{4>)dKk=|GJ-`GotCU7(SD0H)+db1mcg+%lbN4}mERU7x-JrM4GJho8277lzNz@2seTyU|~vyBS@f6o#JQ zJJeDJK}m(8&W2JEy4L##loq8t^R1}=P*mtn#TUf98oaXGWKL@(2Bj$!buclZS`4(5 z@ld?b_50;e8k92MXGJ{=B^kN{^D&fI@94hR;-1z~dqHUo-Mct~6s0_4tf;?3NrdjM z+yW)7_&jAry$vN5YWcO6vh}@a`OruxhLTcp9b-jRLMaSgzt=+Xls3G}ih3GKI&>H7 z17Z}P_V=}p+8s*cGr>`Jh^3qc#Y+d7vn}Ncih3%@%(9fHNO>~IykjXpKuLsr3g@;~ z_JL9xD$h|+Vj<-WOF4(4LfKQ6axavG_-xGk8~h%0x)YyGd$-zYn13!o3C)~Iv)_FX zX~qv9+swm#37MbWpAsAfrc9Zi=YcVEFXh5RI*$F%%V6S?%l)a&ufbF(xwgI^VVCb8C%s#>0U)5mfNw=uI)=gl{`jxw0kAj)1vbs@`qrSRz1H1eW+}N|0Ato}$~6K5 z%s!V_gQ=HXFm#O7{0DIED7lKkm^}dHIuAbdv{?8k2SeW)Wa{P4H5SYwCD)Z;%swG^ zuKU3>DY;$;vsB5o4vg7L^t~BTZFmcqW+m4m zFlJ9ex!hypJuqFAT)%@^qvY!JAn$E**DDStuH;I9S*PTx1!MLrF89yt!#Z_nPtpm|`VYhlfzF%zlh=^>gOx38q2Gbt;%rCD*x>E3-qR zTsI<@-9|TqnIpN}dz(dI;!3Xf!I*t!?t1+WW`X2#ua%u1#`_mat|P#h{VL^xp`*Vl z!7Nd7T?S^5l4}kavlFIVrOsT>fmtrO++*VtFqKNKc8~CmnsRkTF8k;LW~Jn^`;#J$ z1d~*9jRs?O=DFMOGBC}O%U!R#!Aw)ho32wRSGdeL^D@T=!o-}<9TU_7CV4me zgg+<3KASFN20j_*A}9?>jtbX;qq+;jQHMbBGM^R6UFK7T;ixmAlt@k8x&AH;M_mUc zRm~-&&;M|_{8#gY;i#vfB+d**`Lh5r(5mpd{sq=2)g( z`45gdP8g0F4W&Z*D|`*YQGXYPqi%%KphP_&3`ac&rFI^-Mi&&$ZjBFx;iw;>q;KLV zcM1DG#tcVIh0>rzJtGW9wR;?Ou8+>uRTz#s97?m2YqT&NRR^Wzdd}5}yDIZHxBTtG zaMS`QDal2n*KWfmVL0kjC<%b%+cqzTKmCL5DblgkBCPlia(Tit8_39}MM;!&FLaEmfVL0kc zC^3n0xBP{|aMW}tX=x32)E&Zb)O;u{Qm-wX{q>?S9JLZkvqZUbtrdo&+CPc&Lh2RX zS#dA#A`D0E4W&@l9rqe{urM5T6qJ;V-aSw+&fvcqBn(GYLP<&q-6QH;VK{0UlorW_ zUnmwhIO|MdIO<*~g)$DS5##6MsKvr?)N4?hZsF0}J&?(h8h$1WNBsz;LVzP6Sy_P*I!)1pM~M5f;3h}$wj+mX8l*Y3&T;RP|}j?a75Yb z&e6hf)F4u%<4_HD3s7YxLsO= z;V5r0T7E3I{3L|ftpxst-^5BLMU;`Mf0Iu!ncIs zs1_(qvWJ}PjN0aDW;m)FlnN=KyI#i%!%-C#39JT8+ZM?Y5qV9T?3Bys9P*Rf1U9T&I;ix%KDkN7NCG-y-hc5}kQLCXe zNiUB@h~3LuE@6hFxk=>$O}Mj%tC@ zDA#BwIqS9gv&?YRu24!Qb1z?vD1ZLtTn7omQ58_q67>+G{1u&}CJ4h(mqCe32`dA& z@uXh23&Tscm&h@e|9Q6^DMv1BgZrAHKVK}P8bJzp?lXJPxl%B$H zR0WhK8HavLP#L*|lZ4@@tD!VY)Mf%Rjh;=L^G8v!FCf8~S}ku^jb`FdVfKN|WTe2rOS?`B8aGnc=7yl++Av zjnRP&epHz-95n(;^FtgJzAwrpoFoiKO@$JlA00Ja7>>G;eB=rdHRqz5<2dS4ks*5lj)eB0Y^s@U*NeIJHbx`8c8tz=T z3d2#2P#XRnU9T5};i#3QNC{~i+Vgzgi_CCT3`(O!;msgN)RDq)R3(%aX?dFG?OfHu zaMXq5qeNXT3`f;Mo|U^bwt9&f zj@lJU$*o+%J)F6E2*XivDBjHIsDZ+8)Cedkxsp1_nQMwL9Cb02X1S7b_t$m8aMVmF zNf{gTeQ|a#-!BYDJq9Ip7uV~r&Zt*};i&haR7kyO4`Ao|Rv3=@4N6Q(*dI~$EV}hF zW;kkRC?(SJ;cpt@5!GE7j_M1gS)z_cE_;PNK^TroK&g-@cgxoc!%;6nNlDZIXKQTo zGBX@?5R?+RGda~+!Xd(N)HzUMcXEGqcIKKc3`fm`5|>^+!kOzqVK{0Dl!WARkB#4i z;iw+}!3=O8m+%BFdVfEN=i!TUSYozhNHG^!oK$o z&gCBS-Gt$&IFyzKj-t=rfQYbC&zT&uE7>-&9r9$fE&h?@&9Q7vo%;FN_ z<5ix250T6IjW8V5=2hg964E!j+H=&2!f@0~D9y7u7kygHo;My5hNG52X_8#-E2&k& zaMX{aNG^99Zv7fF9Mu_0iL9`PIZJq;FdWsNd}Qu*-~Apd3`boIr9$?-Q=DUCwlEy^ zG?d1<+=g^7g?q_=wL%zhNBWtQnGVsaYoe$!%UZmx!h;UXTosQIw;izIL6=n3DA#^TZg+Kj!H(bL}!f@0~D9Ix^>Ow@d z$N%QwsJDdSsDc$ZD<#(@!0o7h!f@17DBcY`qUbwLID`M{6Ja>2{B5+nT+w$%lsz`C z6o#XogA$XgQFm1SJIruY8I&XDHqS zoXZ`x{kzO?)ZS29Bp1z5cCJH(;i%)FR7fs&)JS1CY7&%Yd1vH6XRa%R;i#L*NA5?t zb3H5!M=gWWsFZNEFdX$8lv<^i|FV)9j_L)aSs76$3&T+p$VW!6du%KahNIR(X_R|J zyQ2;5(Yw`q%y3j^D1|b!xug0D!%-Dbl5$OiX7T*@eR&+7B@9Q^LMf5!FML6SqlC8z z!%>Y;DkSO*=h%2z7>-&+K2pL%5yj>5U;QQwM{WB)a?Rm0#eGG8k}w=~HI$@8b#>P3 z6=67P^A9jK1@LjgyE=4C~4V!xuY%+hNDtY8fCU| zm+%Q;IBFG?LYV>FQQLgX3`g~WQlZQ?gM{IzNl+RkS7+xqyiOR7nhT}*G#>Nr>#whb z;i%$O$fZP`DGW#51trx)xmZ~WCH-@!9lKJl&x9>;`6GgbzRE*V2i{4^9Wi(HlPNC0BU-a66v_W=TXY zvYiN~-HzO+Zl4)oniQW$!4!y(zt5r^T%Om#tWK*i^KFntuC_FrHRp!nK10By6`#pqhAKW+fLW&a+zuw8_$&akLh*S4Or_$} z3}%($^ItGkicjGh>=P89y}*o9d=3Y*Uhx?MCaL(G4JIESK8ac{E(cSs`1})02gT<; zFg4=iUf-Vt6H|O%1yd_N?)CjMFx?cNU%}KVKHGkUIaBf36U;R6ao6imFlCC*sbEs# ziSA1>&(;`0Z z_PHNSv*PnSn04agF3X#k-PU3sB|h%*91do#;xh`&RPk}o^R-|WDn7S>nWp$G1hYi(c>~N0#b+&;CdFsF zAJB&4u;!K_q#`hjUwd`5yW`2m}TPQ?)P`Wc(`9jKh1T| z^H(rUicjoEtSO4m5nz@pKBK`DDLz+#S)usM1=B_Gc?HZ$#b+&;62)hy|6&iI_#6$U zui|qqm{p3;Kf#nMK97P~Ek5pf;{z}Q6`xJkVgDmO?s2#`n1teUJec+3<1SAE%s9p8 zY%uM1;(d$T=VCB5iqG|63KXAv!PF@}i^0%uu{ZlDcX?KTNhvz8(XLm43@p0EH4yJ?Rb2^wB@p1Q8HJF&Lpm<5W@LtttZpXb5Q?*WfG-&cZ}uK0WlCM`bhak%NP zxc{U0`~?jCu5eQx_qu!vm|2R?HDH#DkGniCfoW8HHvJ9zDDiRcpZ5Z@Nbxxa%o_1= zmuCc+rHaqFVAd)=*MeED_}l|#z4*A>c@>yu#b>wQF=yffS5fEtfne4sJ|}^p-}M|d z4zCBZPVspiOb79CxAWHcBu6`ZAT4U$IR*^2eBMSR@td>!Rdd>#Q) zB0lbVHGwHsd_D)$NAW4lYwMLNKE1)vZ|03^pA(5ue8z(*S9~r7GeGgV6-|5{l1PVA|m~=|qj^-@uGhe74>cdkOI= zLA}~Y-S|~kFg1$LU%|x1hw7DQ`3wP5r}&%;rb2w$i3h#l^4ta{rT9DphJK@*X&-mL zzXfKd;`1e#p^DG%VCE=3+vQ_DReZXGS)lkF4TgTBTvWX(!K4+Ri@;PXKJ{RhDLxN? znJPZ*oc;AIm=%i8+hA%HA8)g^-YUgsPcZbG=}h~$%X1u<7R6@@m}%m(7wTn?=Lf;8 zSA4z&L%(^=ln1cGXWz}+dii@quNPy%&~G0zKE+O-* zDLxN@DG(p``LzyAH^t}R0+dbt2AC?v=Swhg#V2no%n6Fmj$q0apZ&np zDn9+d&~JE&s#hhL>59+a!3NDW|rdf3mEzhFH!Z{W$U(HqvCTg zn56i)$MeNt7AZb2fSD>j?(w_|%u>bYcQAE|&(4L|`zby>!O(AS*#u+Q{APK3UOfR! zv*I%z%mVRo*Xs%}YZRZ^VCc7#nDV%No&mE?@%a$U67g~O*LpDR@W2$UO1a(_-fpd_X6`$R<#Xeko-1SO;DOP;`1!lGQxa;)^m{P@O zukFyMiqCj3amD8WFfEGD4`2o;J_mNdeqQmp49p zKR@$KbP||8IdU;G6--l(T+GY{W1f`Eo$C!SeU)78cfuT{9_pCU{wd+mEGl%`&Y$VAa<`w~ieC`ZwI(5B>gA+I*w z1#`lGf={gufl?THj`a~JEg|J?D9s^d9h8R9^RPR0M43a(;ZSO)1apmrl1gw1=_z&p z;Idu{rnx6GcHKAT)35wgX5;Q$o*KU+{Gxkvsiv8+0WR+#{DgbShgN`z%LoteK$zO( zFIYX55#9rg8JU!eu2{L{*v0b_V9J$T*MM28xnj;-%fSp(a{UU%%$bzSE-#h4a~F(NJXz*i&FSZKl!Hkq zxh8-yvoYnGgD7$gA2)z0lw9FE(o8-9W}K4i6EJ3;r(BfBu3Lvau=|o+;av*nDg#ra zcuYjpja{US>{Y-YXva6IS_V!%^Oh(xkO2yN`HSRo1 zc^*pb;vn;prThxTp2!t*O<^1SoGbdy}}ne7!YGb3{G z&Y@%vS>Rmw9O%$$hwP|9gw%oxjE_j|z5v-aj} z3ctU@#eNCQ0wvd1V9Z#hT=>EY$1Jhc-ni~oa+QEdE4fYtW6lD~g%2G$awWkGm0Wfk zQ{AosvrNf#KNxd1QLfi0%sT!9hMwy;ZRj39-+)=6cEl=vu919Q*QA7`dkp11jat)n_aX$<+$b!B67uzd~!lM0n^Jo$vKt!{;q z4z=?NVnY4Zp#=M%>@}llpAsm^w}Z7f&QiufNradyq11+yyP?EGJ@^KcREYT=N=c~9 zo%Tnoo)T>N0Z^KUaU0UP>>u2QNiZ!#n4vk!pTn7%0Vc&v#$qv)7&~W_uc0JE%+5WK z{fw-0hB*pKY-CWG45evAP`RBHX7VZ!w`nGp{-E+~%=MJlousTgTi|9czO1Fy@eGwY zGd57hJes5Ill~VlNts*xu^hB2Jpg^7%q`==n0bS8g+Ck5UW>t0E4g+k#rv>IuCu_H z8HsY)b)tN?gQ4#^G4r##UdzGc7e`;QZq^g^%A9ez+b|Ahs*ecbzr6|xgG#xb{CWjxBIgDtKblMg&4_|AN-NL{u)fZl8f%(nSBf8 z%6$iKp^}U4;LTEUZTVN6r}e^N?Lqmj1JhS>+5Jh(BVg7jxmJQPdt=H)t>nme80Kds*B)TjDY^QCF}rTcmG8_o z9t?f=k?AjYy{-k*Zm;OQ%|l?!?mc&|x51PvxqbsvsN~xHaK0{}T%D=ut>aWM10)yK z-9Dy+>8Rvd48~k>P_7tE>^Axt%s?eq=@Gae6_Km^$m)rc@T)=7V~__~a`o2)_{eoi zW^YV%__za%T)E`Y?~<^OH^IoYOb(yT%5d(S!R0~W9Y{SKK$+_u zo4FHA9H#=UY`NPumG-8ZVuIHqtx!d_;FbO4B-cjf;CD(3Xq@6SUMI{Iy z<;3tcb&k1rD46u4*?SIl(_{?i1euJomYiP;-l;geUuz`=rS{n%^PZ*bU5=ILtsry0 zr7VL|@_dll>FCzVXeiA~gUo}L;`PS}Ule2pSV}#V)bb$nnWgkP2EFrUkh#oK-h@)| zRFK(yKv3D3cOj_5lE`j)nMUSOQ0$rZX)u*CGTrZ2ZhtIher04m|`VY-axEhO0HAEm^mSLu6ba}lw9pj#+9a$YX}%Kw@|L| z?^NQEe?ORn}e)!l4-A7Wm9H+o1 z{wgg-G0(LtNOmvDu!Z>3-xX9Ls+OZNKR*vjqBrV<{%`BpU3>t2Q~d8A-7AMz563^HJdWK?_Ysq^U-W$EJi86M*BGP97>`x^Zff_W zVU|cccY*6>WGx4`^T*Q86NXn$t{y(A+HYuHFJhUxQ~OA`yx@App!hpI`Elk2*Nb{2 z(_(q{RV0^ZGo0_H->b(>o;)S#m&SPBNiENP;V2JL^TEWK$%HK?CE^oh!-myV4nz0E ztFj{j{SM_keD*>VGFkzjv^d-Cb0-*@8U2IXhw5(H$Nw3>;`WI{FzrL5Bz$ncPmOWE z+wYQdzpsw!_ajam*k#awvSO~6YaANph*%Ue$&9hu{j)8WSB?U=s(Z$#Y_PPUW5?Lt zFo#LY=VS&9?h`6ctM)NvKCCE;!I0`Qc<|tSgwoky&i7V6U|7k?Wap@zWUP)HJ7H|~ zsG3p!Xyvid^aswJKQcBdP$)AtxOD#CrVWo6>_yc*(>_NWwk~uv>U+>D<8$=jLe=N! z!}6n;Z2NSQ_8C8R!kE7es~R;fIcn16?wMR@u4=sa-?xur&dipF?)I3uB{_N2l*)Z(bVeg|hvA4L1a@lgs|&0Q-R zL9c^pz~81%N%;^;ZAkeBN@LcCW_Hgj7=*oOh}jKF$=ktxKNL!nDBKsOJXEiXVbwX~ z#((^ozNqEwnc0{f%-`J3>6qTmCDP8+7va^KSL#8*b{;=6xN(pjQS&=gcdC~uL-0?# zUevSUgIC68$T?@f?Abj=%7dwH*y!Z`C4R@_pOZ#S9#w71Yuec!)8}QG!VGg~ z*dY6_OS24JDYwnc#$g}si+R!)lOuzrj=|gQuBh<8E46p2h)7YR9Va7%|UWKohA!PcCddc+HaLa_-@B?YX zDHHxSc0%R8lSfqrn$f!sxl9|zoNY+C9s-lhv@_-(61-=iq(aK8P#Qx@Gn8~l`5H=7 zNbv^aPFG0T3Q9{z=?=wf=DCHk9|@%}q>O|T4=LwCsR$|8LP>;_yP-6H6m)(PO6=pH z@-h@}RZ#g1N<~On4w1s^=)AZKgV3B8$K%P6OF};M51J1j!r$h+xTT#1 zK1%4hi|IoQJ3ye8;wnh`sEE7Ixj=B?)nWO0ZvJaXM*P)%w z`L)8q>P2qoQ-PZO`I@t6y5rh@so+V5KK`h>Pjf_&w0%A=rtvz-uVl< z3LPCdHf;390uJUS@5AYPq|NBlRR1+nRxsdhU(rvl!yNDXU0znk5yN$?3Kc@PCR~SgoF>C{np6%$&8Q? z#C7i+$*2d-R*ON>%Q&} z)V(AYs{7<@)kjj9v;XkYf1vJ$p}L=p$W}YOKXDcCNBVu`AE>WJAP~FS^f3N%MKT!9=KT!8$rS2%Q*OZ;L=(RZ>gp!P?`^04R z*ohM+dvV~@+x~k%CW=~vW}0xb*=Ip`HbQ{McRc>cNLVYak$VQ{_y<~JbS!ih3?Dyv z%&<{4W9jy6=2(l?sEue1f_?|n*qd6yt~<35&ydE47`oOAmz&#%_CJ|cb+uvkJ+jF5 z$=-FWkbNDkYvF@e;dRo6j=spQ!o^W-m^};9nf9Ujb1f1`m>nCf%j|U@OOryE-W6E9 zC@-Rn(z5}(=8#fah(-!2y>`ITnN_m)zN%x~gZ34D)r8^WMtVwk3TeeO-*|=AT(2p%=4Z!Zu}$L8g|`-?USwh>{#x)^Qddu zc=akR;{I~Ila=k|Io!*+ncf3=Y~*$J8z%e8s@I@h2Qt(CpS%D&FZzIubQcd@chv$C(VvbXWi z_iW3zY*6-MD|^byPE&HY-wXWg*)#6Jh%=67n-x+Eo^7i9T-jQ9*y7VfMFS z)OucZG1=K>I`U|8%vahzXms{BvTG`W9_Tml7zQ)R4VP#KS z*_T?`OExHbioozgvjOM-U-1|EJ+~JuvaDHWH+Bnz3HA7~vPZK!l z{}=nZ8u(~4tzTxIX#-`>*8SLsy7P>*5$jdj#Ql|f7VVkfUe3+*Udv-6FNT&1A6C8o z)LfThXP#GkuE1@m(A-;!kF|%DULO^Rk{vDOJX-!#_8C_8W-B{BJlrb#8Y_Fn24%0e zvahzX53;hi^Ut_!-8U@zOe=efl|5l)FR-!?+Mv2OSlQQE*{iJV#a8yj24$aRW%u|j z;Bi=*w6d34*{e1v`y4BKzLmYk%6_<&J-I>I=UUkdt?ac{_A{*PH5-(@(aK(AWuInc zAMIz)&a^`!W?J6QmxvFqGHHK|WzU^juEj=JWhyaoYO9Q2W?p3iWzN=pdPLoMHr|N! zDot@a=Uzd2#<-VrGrbq^*oe4$AocoF^ZWpI=CiwJ${z{lYOB=aS}@bA&YI_^@o4!| z*(y^t)DA9+ca`5Ho|OE@dsubzsx+_1j?MP`;v&d z^K7#b>s4CJ{grzr>A8?wJ~z`l!DAz0wvl@Msq?)9JM&D^a}bw@mC~g$TKMikUw_nP zN6SJUEq^L|k(E7RWv9 znOzh889ulcHQdV)=X)0(8+p5hP4F+PUVrM0Ta6EcgwCd(d0hi7V_sVI`ctDW&CWccdiLS+uu?jQYr#sdVr$eDMYKGR zx(4y#QCH&U%8t60jX3IPtZAdpFEfw2K$)|nj((qAu6vc-I~%cHrH$OqxkpsbIJbOm zruPya8+qv5R)^l_LP;~v$ChH?6D2XKGe!S&B{)nNe+#KUURMN#T%4;fR(+< z%D%$NUS(x3*`VyDR`xzt_BmGeHJeFmWJg_}4a#0(WiPR^H(1%1TiN3ql)c!>9<#Ei ztn9O_?ByGjJ>SaS%~%N=vS&fI-v@0_ z_BB@aIaYT1Y<&2P8)s!tY*6-9R`z-;d%l(ZaLG;!?#@H;Y0OOanDetD#Ow{GnHdti zGAM;#XFtE1QHDZEgp`R;8omiKS3qeADR)ANw*;Am#DtXpKuLWYWIlw_98&%ZCH7sA z+3IvWClykPp~OSV;ZPDGWhj(XNI4fuI;7kPr6r^+fZ}~0%>EjbSV;LEN{J}Ew=peG zpVD~+`-7b`Ey;iU&pxG-{Y*PO`iyA-xn^<-`I|r2UD}O5+l(&o=t@0&bT|WTn5~8D zlSM>#1(RSV6W$j}65|k6#Ff|B$^m01lz2AEIyy zxdX~`p?WQY(j1EV97-}&!e5}2tPi%>wh25Zl~Jf)yH}4JHflnp_lhXgh8@8){TeJ` zZz#(`*-wSi{9BMY3rgYdLFED{w1SxNL(UCQ28EPIp_Ge4Uk^!~cWUt4?>`{tyx@1Z z{g81ED%%aG(Gpblg^~^_$3UsT7bE3)vCN3^yg^W23)SmPC@nZeeC7fuv~ad>5%drl$MaPRV8Y(Z7|n9P)b5dIh1%vIRi>Eq*Ozx4JlVb zX$UC|P#QzZV^Go|WjU0lkn%N@=8%#<3bhC+yFsblE?A46P+}c|N*R>q9fHaUP!iZ| z`DeihDDj5%dwlz1OnmuNku-5o5l2dyD=`~)WX z7tX~izF9pfYQR38H`NbAguUW-%s2)Au%80JQrha^=Pzc;iocu-B_yx-UH0V_e;g`< zuX|{9j6J_ib{(WLAB3Np^CgJYfT7=rVRjb-gFlkj)4-%kI2T@Io~x7}d;Gj`@&JQtWN@e{mZ-|E;I%n~V2L93sdf9?e)E#)C5Trd8H;iY4^JmFp@ z7xSG?1CA=ea!%2$M*=Z)^g*tMUCl_qlHfc}1yd1Pt*WSmp^_#jK*;E`DiEwe{*)PhH5BbV9nyGVFsHc9Wq z16j;V9+}IecgpdDZ9^Q7mcmkQ`H`WY^FL^`m{z5FT@M+TOsx(YE%bZ9&FIZNS~~2{ zqxb(~?p@#`OX_;@Mg$fG9l3CYD{7F}%9SCRo!0_FGD+`FoJ`WBGqVrSlTN3TG~4NJ zx;rzO#YY6xRS<(O5X2jNz`{j{p#1S2Ux<3u5m8pJk9d8piW-%xC|vLVTUDp()bCWC ze$?;Gc<19|^R24y?_0n6)$^P_0bpKNAF5>W6 z=v;RTXPbX+|2k&U^nd97b=~wYos#^2-M_?r^eUdmot~=u*O-ZCxTSC*A;Ev?{_$^w3`TyF7 zyFdnwQN#Ff?%CRhPc%04e`p`hozP>#3z39_u++a#pcV&lEwcLiqhF473z{iew|p^> z9fF(!vPY1Y068GYeLxNg@(n-=6E^ePfQ%F5{Xmva*m-^h$k9oKsL|#jAiJmRJYq~R zewKCqTjZHMW9NCqedwoHS|#;*GLYTdZR9yX_Fte7W$O%(qZisp8OZXB?NSXOZGwCQ zkUfID3&=h}eiO(cLH+{BkwJ8fsrC{v_5yUm5@}I4#>A?C{u`yAikoLuKYf^z;4d9x z511Ik)~s;O$@f^XaGQ)hmeB`4A9+e~9?>_z4rGTQMIieGSq5^QAg=^+M36TEIW}dt z&ijFk6XaKb>=WdVfh?c1OZ_8|>jZh!CR%w~=h3aBYARai)u{H9h&OcW>;cVV1UP@I zZk=UfNBp5%XBX>L9J)e}=nu~jN#>u{yen&gJZ6QzhdffD`AzzDw46E_h@S$V`9TaP zBD#{_FFzR>2y*fPkPzhbk@FPqO+nW89P7s%>pPD1-*v3-1zG=2$NDGHO-M~oZaCK8 z>{x#=$oj5h{m8Mt>{x%DV|_o!`U8&jL&ti_vEFg4e=x}UYaHtjIo8iR)>jmPKi-|AR@vSaX9qY@Ebulwi&(As5ZwazK<5<7jvHoGl z`U%JSu^{V{j`fmb{lKyQRLA<0gRH;Mv3}mM{z1q3=Q!5Kf~)+{E9}luV=2$=GSl@B1?>N@a23dcqWBnG#`nF@e;aHyxvi@Yp zdcm>YcC0Tt*3So7f1+dklg|4R8;3rC+e%7&m;8@=dvi?cO`hjD8+_C;H$NEl?^-nm~Kj>J$)v^BFj`atEtUv5n-*c=V zbF7OiOz=Nq-yO&NZjkju$NH{gz2I0s?pS|Qko7-stUusb$Ll1zrt00f(_iFR-wU$- zkYjzvv3}%OKbBaJ-+TY3XXy9d<@YnYP3!xa`j367aLjvCm2N?m2W|R@yI>U?3F}|p zr$!Ins!xq@e3<&DPmRWKt`3JlkNYf1Yd%&CSy4an^HObkYU42}v!E≶IFUZm&*(97r~m1mThg`g<%z!t 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 literal 0 HcmV?d00001 From 39354f54bae3837db5fbbab616fcdf109a6b903e Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 22:04:41 +0530 Subject: [PATCH 06/33] docs: add reference in docstring for win cpu --- src/hwprobe/core/windows/cpu.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/hwprobe/core/windows/cpu.py b/src/hwprobe/core/windows/cpu.py index ce7e43e..f214270 100644 --- a/src/hwprobe/core/windows/cpu.py +++ b/src/hwprobe/core/windows/cpu.py @@ -34,8 +34,10 @@ def get_arm_version() -> str: Otherwise - we can assume it's ARMv7 or lower. + + ref: https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-isprocessorfeaturepresent """ - if any([is_processor_feature_present(i) for i in [78, 79, 80]]): + if any(is_processor_feature_present(i) for i in [78, 79, 80]): return "9" elif is_processor_feature_present(88): return "8" @@ -96,7 +98,7 @@ def get_core_count() -> int: ULONGLONG Reserved[2]; }; } SYSTEM_LOGICAL_PROCESSOR_INFORMATION; - + ProcessorMask - Pointer - 8 bytes Relationship - DWORD - 4 bytes Padding - 4 byt @@ -143,12 +145,12 @@ def fetch_cpu_info() -> CPUInfo: """ The CPU Architecture is exposed as an environment variable on Windows systems. https://www.tenforums.com/tutorials/176966-how-check-if-processor-32-bit-64-bit-arm-windows-10-a.html - + Possible outputs: - x86 -> x86 32-bit - AMD64 -> x86 64-bit - ARM64 -> ARM 64-bit - + We account for "x86_64" and "i386" as well, just in case. """ architecture = os.environ.get("PROCESSOR_ARCHITECTURE", "").lower() From e128bec70b91ff8872defc4338b81eae9469668e Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 22:42:39 +0530 Subject: [PATCH 07/33] Use WMI for Windows CPU data --- src/hwprobe/core/windows/cpu.py | 126 ++++----------------------- src/hwprobe/core/windows/win_enum.py | 12 +++ 2 files changed, 27 insertions(+), 111 deletions(-) diff --git a/src/hwprobe/core/windows/cpu.py b/src/hwprobe/core/windows/cpu.py index f214270..9f72e3a 100644 --- a/src/hwprobe/core/windows/cpu.py +++ b/src/hwprobe/core/windows/cpu.py @@ -1,11 +1,10 @@ import ctypes -import os -import winreg from ctypes import wintypes -from hwprobe.core.windows.win_enum import FEATURE_ID_MAP +from hwprobe.core.windows.win_enum import CPU_ARCHITECTURES, FEATURE_ID_MAP from hwprobe.models.cpu_models import CPUInfo from hwprobe.models.status_models import StatusType +from hwprobe.interops.win.bindings import wmi kernel32 = ctypes.WinDLL("kernel32", use_last_error=True) kernel32.IsProcessorFeaturePresent.argtypes = [wintypes.DWORD] @@ -62,119 +61,24 @@ def get_features() -> list[str]: return [k for k, v in FEATURE_ID_MAP.items() if is_processor_feature_present(v)] -def parse_registry(): - """ - We can get the CPU model name and vendor from the Windows Registry from the following path: - "HKEY_LOCAL_MACHINE -> HARDWARE -> DESCRIPTION -> System -> CentralProcessor -> 0" - """ - key_path = r"HARDWARE\DESCRIPTION\System\CentralProcessor\0" - model_key = "ProcessorNameString" - vendor_key = "VendorIdentifier" - - with winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, key_path, 0, winreg.KEY_READ) as key: - model_name, _ = winreg.QueryValueEx(key, model_key) - vendor, _ = winreg.QueryValueEx(key, vendor_key) - return model_name, vendor - - -def get_core_count() -> int: - """ - Uses the GetLogicalProcessorInformation function in the Win32 API to get the number of physical cores. - https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-getlogicalprocessorinformation - """ - - """ - typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION { - ULONG_PTR ProcessorMask; - LOGICAL_PROCESSOR_RELATIONSHIP Relationship; - union { - struct { - BYTE Flags; - } ProcessorCore; - struct { - DWORD NodeNumber; - } NumaNode; - CACHE_DESCRIPTOR Cache; - ULONGLONG Reserved[2]; - }; - } SYSTEM_LOGICAL_PROCESSOR_INFORMATION; - - ProcessorMask - Pointer - 8 bytes - Relationship - DWORD - 4 bytes - Padding - 4 byt - Union - must be large enough to hold the largest member - 16 bytes - Total size = 8 + 4 + 4 + 16 = 32 bytes - """ - - class SYSTEM_LOGICAL_PROCESSOR_INFORMATION(ctypes.Structure): - _fields_ = [ - ("ProcessorMask", ctypes.c_size_t), - ("Relationship", ctypes.c_int), - ("Reserved", ctypes.c_byte * 20), - ] - - RelationProcessorCore = 0 - - buffer_size = ctypes.c_ulong(0) - ctypes.windll.kernel32.GetLogicalProcessorInformation(None, ctypes.byref(buffer_size)) - - count = buffer_size.value // ctypes.sizeof(SYSTEM_LOGICAL_PROCESSOR_INFORMATION) - buffer = (SYSTEM_LOGICAL_PROCESSOR_INFORMATION * count)() - - ctypes.windll.kernel32.GetLogicalProcessorInformation(buffer, ctypes.byref(buffer_size)) - - physical_cores = sum(1 for info in buffer if info.Relationship == RelationProcessorCore) - - return physical_cores - - def fetch_cpu_info() -> CPUInfo: cpu_info = CPUInfo() - try: - model_name, vendor = parse_registry() - cpu_info.name = model_name.strip() - cpu_info.vendor = "AMD" if "amd" in vendor.lower() else "Intel" if "intel" in vendor.lower() else vendor.strip() + + wmi_data = wmi.get_wmi_data("Win32_Processor", ["Name", "Manufacturer", "Architecture", "AddressWidth", "MaxClockSpeed", "NumberOfCores", "NumberOfLogicalProcessors"]) + if wmi_data: + cpu_info.name = wmi_data[0]["Name"].strip() + cpu_info.vendor = "AMD" if "amd" in wmi_data[0]["Manufacturer"].lower() else "Intel" if "intel" in wmi_data[0]["Manufacturer"].lower() else wmi_data[0]["Manufacturer"].strip() + cpu_info.architecture = CPU_ARCHITECTURES.get(wmi_data[0]["Architecture"], "Unknown") + cpu_info.bitness = int(wmi_data[0]["AddressWidth"]) + cpu_info.max_clock_speed = float(wmi_data[0]["MaxClockSpeed"]) + cpu_info.cores = int(wmi_data[0]["NumberOfCores"]) + cpu_info.threads = int(wmi_data[0]["NumberOfLogicalProcessors"]) features = get_features() cpu_info.sse_flags = features - except Exception as e: - cpu_info.status.type = StatusType.FAILED - cpu_info.status.messages.append(f"Unable to obtain CPU Info: {e}") - return cpu_info - - """ - The CPU Architecture is exposed as an environment variable on Windows systems. - https://www.tenforums.com/tutorials/176966-how-check-if-processor-32-bit-64-bit-arm-windows-10-a.html - - Possible outputs: - - x86 -> x86 32-bit - - AMD64 -> x86 64-bit - - ARM64 -> ARM 64-bit - We account for "x86_64" and "i386" as well, just in case. - """ - architecture = os.environ.get("PROCESSOR_ARCHITECTURE", "").lower() - if "amd64" in architecture or "x86_64" in architecture: - cpu_info.architecture = "x86" - cpu_info.bitness = 64 - elif "x86" in architecture or "i386" in architecture: - cpu_info.architecture = "x86" - cpu_info.bitness = 32 - elif "arm64" in architecture: - cpu_info.architecture = "ARM" - cpu_info.bitness = 64 else: - cpu_info.status.type = StatusType.PARTIAL - cpu_info.status.messages.append("Unknown architecture: " + architecture) - - cpu_info.cores = get_core_count() - if not cpu_info.cores: - cpu_info.status.type = StatusType.PARTIAL - cpu_info.status.messages.append(f"Unable to fetch Core Count: {cpu_info.cores}") - - cpu_info.threads = os.cpu_count() - if not cpu_info.threads: - cpu_info.status.type = StatusType.PARTIAL - cpu_info.status.messages.append(f"Unable to fetch Threads: {cpu_info.threads}") - + cpu_info.status.type = StatusType.FAILED + cpu_info.status.messages.append("Unable to obtain CPU Info: WMI query returned no data.") + return cpu_info diff --git a/src/hwprobe/core/windows/win_enum.py b/src/hwprobe/core/windows/win_enum.py index d8bdb22..a3d0ec0 100644 --- a/src/hwprobe/core/windows/win_enum.py +++ b/src/hwprobe/core/windows/win_enum.py @@ -119,3 +119,15 @@ 0x80000000: "INTERNAL", 0xFFFFFFFF: "FORCE_UINT32", } + +# https://learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-processor +CPU_ARCHITECTURES = { + 0: "x86", + 1: "MIPS", + 2: "Alpha", + 3: "PowerPC", + 5: "ARM", + 6: "ia64", + 9: "x64", + 12: "ARM64" +} \ No newline at end of file From e2c97d6a9e9df03d8155d711f70b9b03ae89da36 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 22:53:08 +0530 Subject: [PATCH 08/33] wip: add gpu info bindings --- src/hwprobe/interops/win/CMakeLists.txt | 59 +++- src/hwprobe/interops/win/README.md | 92 +++--- src/hwprobe/interops/win/bindings/gpu_info.py | 132 ++++++++ src/hwprobe/interops/win/bindings/wmi.py | 6 +- src/hwprobe/interops/win/include/gpu_info.h | 34 ++ .../interops/win/include/win_helpers.h | 41 +++ src/hwprobe/interops/win/main.cpp | 83 ++++- src/hwprobe/interops/win/src/gpu_info.cpp | 297 ++++++++++++++++++ src/hwprobe/interops/win/src/win_helpers.cpp | 185 +++++++++++ 9 files changed, 850 insertions(+), 79 deletions(-) create mode 100644 src/hwprobe/interops/win/bindings/gpu_info.py create mode 100644 src/hwprobe/interops/win/include/gpu_info.h create mode 100644 src/hwprobe/interops/win/include/win_helpers.h create mode 100644 src/hwprobe/interops/win/src/gpu_info.cpp create mode 100644 src/hwprobe/interops/win/src/win_helpers.cpp diff --git a/src/hwprobe/interops/win/CMakeLists.txt b/src/hwprobe/interops/win/CMakeLists.txt index ce8358a..70ef8d7 100644 --- a/src/hwprobe/interops/win/CMakeLists.txt +++ b/src/hwprobe/interops/win/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.21) -project(WinWmi LANGUAGES CXX) +project(WinDeviceInfo LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) @@ -9,40 +9,67 @@ if (NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type" FORCE) endif () -# ---- Shared library (DLL) ---- -add_library(device_info SHARED +# Static runtime to avoid dependency issues when loaded by Python. +set(_STATIC_RUNTIME_OPTS -static-libgcc -static-libstdc++ -static) + +# ---- gpu_info.dll : GPU enumeration (DXGI + SetupAPI) ---- +add_library(gpu_info SHARED + src/win_helpers.cpp + src/gpu_info.cpp +) + +target_link_options(gpu_info PRIVATE ${_STATIC_RUNTIME_OPTS}) + +target_include_directories(gpu_info + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include +) + +target_link_libraries(gpu_info + PRIVATE + dxgi + setupapi + cfgmgr32 + advapi32 +) + +set_target_properties(gpu_info PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + OUTPUT_NAME "gpu_info" + PREFIX "" +) + +# ---- wmi.dll : generic WMI wrapper (COM + WbemLocator) ---- +add_library(wmi SHARED src/wmi.cpp ) -# Static runtime to avoid dependency issues when loaded by Python. -target_link_options(device_info PRIVATE -static-libgcc -static-libstdc++ -static) +target_link_options(wmi PRIVATE ${_STATIC_RUNTIME_OPTS}) -target_include_directories(device_info +target_include_directories(wmi PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include ) -target_link_libraries(device_info +target_link_libraries(wmi PRIVATE ole32 oleaut32 wbemuuid ) -# Drop the DLL next to the Python binding. -set_target_properties(device_info PROPERTIES +set_target_properties(wmi PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings - OUTPUT_NAME "device_info" + OUTPUT_NAME "wmi" PREFIX "" ) -# ---- Standalone test executable ---- -add_executable(WinWmiTest main.cpp) +# ---- Standalone test executable (loads both DLLs at runtime) ---- +add_executable(WinDeviceInfo main.cpp) -target_include_directories(WinWmiTest +target_include_directories(WinDeviceInfo PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include ) -# Load the DLL at runtime like the Python binding does, so the test exe does -# not need a matching import lib. -target_compile_definitions(WinWmiTest PRIVATE WINWMI_TEST_RUNTIME_LOAD) +# Load both DLLs at runtime like the Python bindings do, so the test exe does +# not need matching import libs. diff --git a/src/hwprobe/interops/win/README.md b/src/hwprobe/interops/win/README.md index 1f4d24a..b69ee50 100644 --- a/src/hwprobe/interops/win/README.md +++ b/src/hwprobe/interops/win/README.md @@ -1,48 +1,33 @@ -# WinWmi (`interops/win/`) +# WinDeviceInfo (`interops/win/`) -New WMI wrapper binding, intended to replace the legacy `GetWmiInfo` text-format -export in `hw_helper.dll` (now in `interops/win_old/`). Once `core/windows/` -consumers are migrated, the old `win_old/` directory can be deleted (see -`windows-rewrite-llm-plan.md` §5). +Two native bindings, each its own DLL, each its own Python ctypes module: -## What it exports +| DLL | C++ export | Python binding | What it does | +|-----|-----------|----------------|--------------| +| `gpu_info.dll` | `get_gpu_info` | `bindings/gpu_info.py` | GPU enumeration via DXGI + SetupAPI (name, vendor/device IDs, VRAM, ACPI/PCI paths, PCIe gen/width). | +| `wmi.dll` | `get_wmi_data` | `bindings/wmi.py` | Generic WMI wrapper (COM + WbemLocator). Takes a class name + field list + namespace, returns one dict per row. | -One C++ function, one Python function. +Both DLLs land in `bindings/` next to their Python modules. The GPU binding is +the pre-existing one moved here from `win_old/`; the WMI binding is new and +replaces the legacy `GetWmiInfo` text-format export in `hw_helper.dll` (now in +`interops/win_old/`). Once `core/windows/` consumers are migrated, `win_old/` +can be deleted (see `windows-rewrite-llm-plan.md` §5). -```c -// include/wmi.h -int get_wmi_data(const char *wmi_class, - const char *const *fields, int field_count, - const char *namespace_str, - WmiRow *out, int max_rows); -``` - -```python -# bindings/wmi.py -def get_wmi_data( - wmi_class: str, - fields: list[str], - namespace: str = r"ROOT\CIMV2", -) -> list[dict[str, str]]: ... -``` +## Why two DLLs -Each row comes back as a `dict` keyed by the requested field names, in order. -No `|`/`=`/`\n` delimiter parsing — each field is its own fixed UTF-8 buffer on -the C side. Missing/null properties are empty strings. +Different link dependencies, different APIs, no shared code: +- GPU: `dxgi`, `setupapi`, `cfgmgr32`, `advapi32`. +- WMI: `ole32`, `oleaut32`, `wbemuuid` (COM). -## Why this exists - -The legacy `GetWmiInfo` returns pipe-delimited text that breaks when a value -contains `|`, `=`, or `\n` (PNPDeviceID paths do). It is also `void` — failure -is indistinguishable from "no rows". This binding fixes both: structured rows -and a `-1` error return. +Keeping them separate means a WMI-only consumer doesn't pull DXGI into its +process, and vice versa. Each Python module loads only the DLL it needs. ## Requirements - Windows 10+ -- Visual Studio 2019+ / MSVC Build Tools (C++17) +- Visual Studio 2019+ / MSVC Build Tools (C++17) — or mingw-w64 (CI uses g++) - CMake 3.21+ -- Windows SDK (for COM/WMI headers: `ole32`, `oleaut32`, `wbemuuid`) +- Windows SDK (DXGI, SetupAPI, COM/WMI headers) ## Build @@ -53,28 +38,36 @@ cmake --build build --config Release Outputs: -- `bindings/device_info.dll` — loaded by `bindings/wmi.py`. -- `build/Release/WinWmiTest.exe` — standalone CLI self-test. +- `bindings/gpu_info.dll` — loaded by `bindings/gpu_info.py`. +- `bindings/wmi.dll` — loaded by `bindings/wmi.py`. +- `build/Release/WinDeviceInfo.exe` — standalone CLI self-test for both. ## Run -C++ self-test (queries `Win32_Processor`): +C++ self-test (loads both DLLs, queries GPU + `Win32_Processor`): ```sh -.\build\Release\WinWmiTest.exe +.\build\Release\WinDeviceInfo.exe ``` -Python self-check (same query, via ctypes): +Python self-checks: ```sh -python -m hwprobe.interops.win.bindings.wmi +python -m hwprobe.interops.win.bindings.gpu_info # GPU +python -m hwprobe.interops.win.bindings.wmi # WMI (Win32_Processor) +python -m hwprobe.interops.win.bindings.verify_wmi # integration self-check ``` -Programmatic use (the way `core/windows/*.py` will call it once migrated): +Programmatic use (the way `core/windows/*.py` calls them): ```python -from hwprobe.interops.win.bindings.wmi import get_wmi_data +# GPU +from hwprobe.interops.win.bindings.gpu_info import get_gpu_info +for g in get_gpu_info(): + print(g.name, f"0x{g.vendor_id:04X}", g.vram_mb) +# WMI +from hwprobe.interops.win.bindings.wmi import get_wmi_data rows = get_wmi_data( "MSFT_PhysicalDisk", ["FriendlyName", "MediaType", "BusType", "Size", "Manufacturer", "Model"], @@ -84,7 +77,7 @@ for r in rows: print(r["FriendlyName"], r["Size"]) ``` -## ABI caps +## WMI ABI caps Defined in `include/wmi.h`, mirrored in `bindings/wmi.py`: @@ -97,7 +90,7 @@ Defined in `include/wmi.h`, mirrored in `bindings/wmi.py`: Raising any cap is a recompile on both sides — the struct is the ABI. No runtime resizing. -## Trust boundary +## Trust boundary (WMI) `wmi_class`, `fields`, `namespace` are WMI identifiers, not free text. They come from hardcoded literals in `core/windows/*.py`, never from end users. The @@ -107,10 +100,11 @@ do not push escaping into the C++ layer. ## Status / scope -- **In scope (this directory):** the WMI wrapper itself. +- **In scope (this directory):** GPU binding (DXGI/SetupAPI) + WMI wrapper. - **Out of scope (separate bindings, later):** audio (MMDevice), network (IP Helper + SetupAPI), display (SetupAPI + EDID), baseboard (SMBIOS). These do - not go through WMI and are not served by this binding. -- **Not yet wired:** no `core/windows/*.py` consumer imports this yet, per the - rewrite plan. `memory.py` and `storage.py` are the first two consumers once - the greenlight is given. + not go through WMI and are not served by the WMI binding. +- **Not yet wired:** no `core/windows/*.py` consumer imports the WMI binding + yet, per the rewrite plan. `memory.py` and `storage.py` are the first two + consumers once the greenlight is given. The GPU binding is already wired into + `core/windows/graphics.py`. diff --git a/src/hwprobe/interops/win/bindings/gpu_info.py b/src/hwprobe/interops/win/bindings/gpu_info.py new file mode 100644 index 0000000..1e07ee1 --- /dev/null +++ b/src/hwprobe/interops/win/bindings/gpu_info.py @@ -0,0 +1,132 @@ +""" +gpu_info.py - Python ctypes binding for gpu_info.dll (GPU info) + +Usage: + from hwprobe.interops.win.bindings.gpu_info import get_gpu_info + gpus = get_gpu_info() + for g in gpus: + print(g) + +Source code is in `interops/win/include/` and `interops/win/src/`. +""" + +import ctypes +import pathlib +from dataclasses import dataclass +from typing import Optional + +_HERE = pathlib.Path(__file__).parent +_LIB_PATH = _HERE / "gpu_info.dll" + +if not _LIB_PATH.exists(): + raise FileNotFoundError( + f"gpu_info.dll not found at {_LIB_PATH}.\nBuild the project first: cmake --build build --config Release" + ) + +_lib = ctypes.WinDLL(str(_LIB_PATH)) + + +# ---- Mirror the C structs ---- + + +class _WinGPUProperties(ctypes.Structure): + _fields_ = [ + ("name", ctypes.c_char * 256), + ("manufacturer", ctypes.c_char * 256), + ("vendor_id", ctypes.c_uint32), + ("device_id", ctypes.c_uint32), + ("subsystem_vendor_id", ctypes.c_uint32), + ("subsystem_device_id", ctypes.c_uint32), + ("acpi_path", ctypes.c_char * 512), + ("pci_path", ctypes.c_char * 512), + ("vram_mb", ctypes.c_uint64), + ("pcie_gen", ctypes.c_int), + ("pcie_width", ctypes.c_int), + ] + + +_lib.get_gpu_info.restype = ctypes.c_int +_lib.get_gpu_info.argtypes = [ctypes.POINTER(_WinGPUProperties), ctypes.c_int] + + +# ---- Python-facing dataclass ---- + + +@dataclass +class GPUProperties: + name: str + manufacturer: str + vendor_id: int + device_id: int + subsystem_vendor_id: int + subsystem_device_id: int + acpi_path: Optional[str] + pci_path: Optional[str] + vram_mb: int + pcie_gen: int + pcie_width: int + + def __str__(self) -> str: + lines = [ + f" Name: {self.name}", + f" Manufacturer: {self.manufacturer}", + f" Vendor ID: 0x{self.vendor_id:04X}", + f" Device ID: 0x{self.device_id:04X}", + f" Subsystem Vendor: 0x{self.subsystem_vendor_id:04X}", + f" Subsystem Device: 0x{self.subsystem_device_id:04X}", + f" VRAM: {self.vram_mb} MB", + ] + if self.pcie_gen: + lines.append(f" PCIe Gen: {self.pcie_gen}") + if self.pcie_width: + lines.append(f" PCIe Width: x{self.pcie_width}") + if self.acpi_path: + lines.append(f" ACPI Path: {self.acpi_path}") + if self.pci_path: + lines.append(f" PCI Path: {self.pci_path}") + return "\n".join(lines) + + +# ---- Public API ---- + +_MAX_GPUS = 8 + + +def get_gpu_info() -> list[GPUProperties]: + """Return a list of GPUProperties for every GPU found on this machine.""" + buf = (_WinGPUProperties * _MAX_GPUS)() + count = _lib.get_gpu_info(buf, _MAX_GPUS) + if count < 0: + raise RuntimeError("get_gpu_info() failed (C library returned -1)") + + result = [] + for i in range(count): + raw = buf[i] + acpi = raw.acpi_path.decode("utf-8", errors="replace").strip("\x00") or None + pci = raw.pci_path.decode("utf-8", errors="replace").strip("\x00") or None + + result.append( + GPUProperties( + name=raw.name.decode("utf-8", errors="replace").strip("\x00"), + manufacturer=raw.manufacturer.decode("utf-8", errors="replace").strip("\x00"), + vendor_id=raw.vendor_id, + device_id=raw.device_id, + subsystem_vendor_id=raw.subsystem_vendor_id, + subsystem_device_id=raw.subsystem_device_id, + acpi_path=acpi, + pci_path=pci, + vram_mb=raw.vram_mb, + pcie_gen=raw.pcie_gen, + pcie_width=raw.pcie_width, + ) + ) + return result + + +if __name__ == "__main__": + gpus = get_gpu_info() + print(f"Found {len(gpus)} GPU(s):\n") + for idx, g in enumerate(gpus): + print(f"GPU {idx}:") + print(g) + print() diff --git a/src/hwprobe/interops/win/bindings/wmi.py b/src/hwprobe/interops/win/bindings/wmi.py index defb7bd..2942629 100644 --- a/src/hwprobe/interops/win/bindings/wmi.py +++ b/src/hwprobe/interops/win/bindings/wmi.py @@ -1,5 +1,5 @@ """ -wmi.py - Python ctypes binding for the new WMI wrapper in device_info.dll. +wmi.py - Python ctypes binding for the WMI wrapper in wmi.dll. Public API: from hwprobe.interops.win.bindings.wmi import get_wmi_data @@ -25,11 +25,11 @@ WMI_MAX_ROWS = 64 _HERE = pathlib.Path(__file__).parent -_LIB_PATH = _HERE / "device_info.dll" +_LIB_PATH = _HERE / "wmi.dll" if not _LIB_PATH.exists(): raise FileNotFoundError( - f"device_info.dll not found at {_LIB_PATH}.\n" + f"wmi.dll not found at {_LIB_PATH}.\n" f"Build the project first: cmake -S { _HERE.parent } -B build && cmake --build build --config Release" ) diff --git a/src/hwprobe/interops/win/include/gpu_info.h b/src/hwprobe/interops/win/include/gpu_info.h new file mode 100644 index 0000000..4506ccd --- /dev/null +++ b/src/hwprobe/interops/win/include/gpu_info.h @@ -0,0 +1,34 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct { + char name[256]; + char manufacturer[256]; + uint32_t vendor_id; + uint32_t device_id; + uint32_t subsystem_vendor_id; + uint32_t subsystem_device_id; + char acpi_path[512]; + char pci_path[512]; + uint64_t vram_mb; + int pcie_gen; + int pcie_width; +} WinGPUProperties; + +typedef enum { + GPU_STATUS_OK = 0, + GPU_STATUS_FAILURE = 1, + GPU_STATUS_INVALID_ARG = 2 +} GPUStatus; + +// Fills `out` with GPU entries. Returns number of GPUs found, or -1 on error. +int get_gpu_info(WinGPUProperties *out, int max_count); + +#ifdef __cplusplus +} +#endif diff --git a/src/hwprobe/interops/win/include/win_helpers.h b/src/hwprobe/interops/win/include/win_helpers.h new file mode 100644 index 0000000..da25c95 --- /dev/null +++ b/src/hwprobe/interops/win/include/win_helpers.h @@ -0,0 +1,41 @@ +#pragma once + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +// Convert a wide string to a UTF-8 char buffer. +void wide_to_utf8(const wchar_t *src, char *dst, int dst_size); + +#ifdef __cplusplus +} +#endif + +// C++ only helpers +#ifdef __cplusplus + +#include +#include +#include + +std::string WideToUtf8(const wchar_t *src); + +// DEVPROPKEY-based device property helpers +bool GetDevNodeLocationPaths(const std::wstring &pnp_device_id, + std::string &out_acpi_path, + std::string &out_pci_path); + +bool GetDevNodePCIeInfo(const std::wstring &pnp_device_id, + int &out_pcie_gen, + int &out_pcie_width); + +// Path formatting: raw PCIROOT(0)#PCI(1C05)#PCI(0000) -> PciRoot(0x0)/Pci(0x1C,0x5)/Pci(0x0,0x0) +std::string FormatPciPath(const std::string &raw); + +// Path formatting: raw ACPI(_SB_)#ACPI(PCI0)#ACPI(RP05)#ACPI(PXSX) -> \_SB_.PCI0.RP05.PXSX +std::string FormatAcpiPath(const std::string &raw); + +#endif diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index 3242047..b703211 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -1,26 +1,81 @@ -// Standalone CLI test for the WMI binding. Loads device_info.dll at runtime -// (same path the Python binding uses) so we exercise the real ABI. +// Standalone CLI test for both bindings in interops/win/: +// gpu_info.dll -> get_gpu_info (DXGI + SetupAPI) +// wmi.dll -> get_wmi_data (COM + WbemLocator) +// +// Loads each DLL at runtime (same path the Python bindings use) so we exercise +// the real ABI without needing matching import libs. +#include "gpu_info.h" #include "wmi.h" #include #include #include +typedef int (*get_gpu_info_ptr)(WinGPUProperties *, int); typedef int (*get_wmi_data_ptr)(const char *, const char *const *, int, const char *, WmiRow *, int); -int main() { - HMODULE hLib = LoadLibraryA("bindings/device_info.dll"); - if (!hLib) hLib = LoadLibraryA("device_info.dll"); +static HMODULE _load(const char *name) { + char path[128]; + std::snprintf(path, sizeof(path), "bindings/%s", name); + HMODULE h = LoadLibraryA(path); + if (!h) h = LoadLibraryA(name); + return h; +} + +static int test_gpu() { + HMODULE hLib = _load("gpu_info.dll"); if (!hLib) { - printf("Error: could not load device_info.dll (GetLastError=%lu)\n", GetLastError()); + printf("[gpu] could not load gpu_info.dll (GetLastError=%lu)\n", GetLastError()); + return 1; + } + auto fn = reinterpret_cast(GetProcAddress(hLib, "get_gpu_info")); + if (!fn) { + printf("[gpu] get_gpu_info not exported\n"); + FreeLibrary(hLib); + return 1; + } + + constexpr int MAX_GPUS = 8; + WinGPUProperties gpus[MAX_GPUS] = {}; + int count = fn(gpus, MAX_GPUS); + if (count < 0) { + printf("[gpu] get_gpu_info() failed\n"); + FreeLibrary(hLib); return 1; } - auto fn = reinterpret_cast( - GetProcAddress(hLib, "get_wmi_data")); + printf("[gpu] Found %d GPU(s):\n\n", count); + for (int i = 0; i < count; ++i) { + const auto &g = gpus[i]; + printf("GPU %d:\n", i); + printf(" Name: %s\n", g.name); + printf(" Manufacturer: %s\n", g.manufacturer); + printf(" Vendor ID: 0x%04X\n", g.vendor_id); + printf(" Device ID: 0x%04X\n", g.device_id); + printf(" Subsystem Vendor: 0x%04X\n", g.subsystem_vendor_id); + printf(" Subsystem Device: 0x%04X\n", g.subsystem_device_id); + printf(" VRAM: %llu MB\n", (unsigned long long)g.vram_mb); + printf(" PCIe Gen: %d\n", g.pcie_gen); + printf(" PCIe Width: x%d\n", g.pcie_width); + if (g.acpi_path[0]) printf(" ACPI Path: %s\n", g.acpi_path); + if (g.pci_path[0]) printf(" PCI Path: %s\n", g.pci_path); + printf("\n"); + } + + FreeLibrary(hLib); + return 0; +} + +static int test_wmi() { + HMODULE hLib = _load("wmi.dll"); + if (!hLib) { + printf("[wmi] could not load wmi.dll (GetLastError=%lu)\n", GetLastError()); + return 1; + } + auto fn = reinterpret_cast(GetProcAddress(hLib, "get_wmi_data")); if (!fn) { - printf("Error: get_wmi_data not exported\n"); + printf("[wmi] get_wmi_data not exported\n"); FreeLibrary(hLib); return 1; } @@ -31,12 +86,12 @@ int main() { WmiRow rows[WMI_MAX_ROWS] = {}; int n = fn("Win32_Processor", fields, field_count, "ROOT\\CIMV2", rows, WMI_MAX_ROWS); if (n < 0) { - printf("Error: get_wmi_data returned -1\n"); + printf("[wmi] get_wmi_data returned -1\n"); FreeLibrary(hLib); return 1; } - printf("Found %d CPU(s):\n\n", n); + printf("[wmi] Found %d CPU(s):\n\n", n); for (int i = 0; i < n; ++i) { printf("CPU %d:\n", i); for (int f = 0; f < field_count; ++f) { @@ -48,3 +103,9 @@ int main() { FreeLibrary(hLib); return 0; } + +int main() { + int rc_gpu = test_gpu(); + int rc_wmi = test_wmi(); + return (rc_gpu || rc_wmi) ? 1 : 0; +} diff --git a/src/hwprobe/interops/win/src/gpu_info.cpp b/src/hwprobe/interops/win/src/gpu_info.cpp new file mode 100644 index 0000000..3aa7f53 --- /dev/null +++ b/src/hwprobe/interops/win/src/gpu_info.cpp @@ -0,0 +1,297 @@ +#include "gpu_info.h" +#include "win_helpers.h" + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#pragma comment(lib, "dxgi.lib") +#pragma comment(lib, "setupapi.lib") + +// ---- WMI-free GPU enumeration via DXGI + SetupAPI ---- + +static std::wstring PnpDeviceIdFromDXGI(const DXGI_ADAPTER_DESC1 &desc) { + // DXGI gives us VendorId / DeviceId / SubSysId / Revision. + // We need to find the matching PNP device instance via SetupAPI. + wchar_t match_hw_id[128]; + swprintf_s(match_hw_id, L"PCI\\VEN_%04X&DEV_%04X", desc.VendorId, desc.DeviceId); + + HDEVINFO devInfo = SetupDiGetClassDevsW(&GUID_DEVCLASS_DISPLAY, nullptr, nullptr, DIGCF_PRESENT); + if (devInfo == INVALID_HANDLE_VALUE) return {}; + + SP_DEVINFO_DATA devData = {sizeof(SP_DEVINFO_DATA)}; + std::wstring result; + + for (DWORD i = 0; SetupDiEnumDeviceInfo(devInfo, i, &devData); ++i) { + wchar_t pnpBuffer[MAX_DEVICE_ID_LEN]; + if (!SetupDiGetDeviceInstanceIdW(devInfo, &devData, pnpBuffer, MAX_DEVICE_ID_LEN, nullptr)) + continue; + + std::wstring pnp(pnpBuffer); + // Case-insensitive prefix match for VEN_XXXX&DEV_XXXX + std::wstring upper_pnp = pnp; + for (auto &ch : upper_pnp) ch = towupper(ch); + std::wstring upper_match = match_hw_id; + for (auto &ch : upper_match) ch = towupper(ch); + + if (upper_pnp.find(upper_match) != std::wstring::npos) { + // Further match SubSysId if there are multiple GPUs with the same vendor+device + wchar_t subsys_match[64]; + swprintf_s(subsys_match, L"SUBSYS_%08X", desc.SubSysId); + std::wstring upper_subsys = subsys_match; + for (auto &ch : upper_subsys) ch = towupper(ch); + + if (upper_pnp.find(upper_subsys) != std::wstring::npos) { + result = pnp; + break; + } + // If no subsys match yet, keep this as a fallback + if (result.empty()) result = pnp; + } + } + + SetupDiDestroyDeviceInfoList(devInfo); + return result; +} + +// ---- Registry VRAM fallback for >4GB cards ---- + +static uint64_t FetchVramFromRegistry(const std::string &device_name, const std::string &driver_version) { + const char *key_path = "SYSTEM\\CurrentControlSet\\Control\\Class\\{4d36e968-e325-11ce-bfc1-08002be10318}"; + HKEY hKey; + if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, key_path, 0, KEY_READ, &hKey) != ERROR_SUCCESS) + return 0; + + for (DWORD i = 0; i < 100; ++i) { + char sub_key_name[32]; + DWORD name_size = sizeof(sub_key_name); + if (RegEnumKeyExA(hKey, i, sub_key_name, &name_size, nullptr, nullptr, nullptr, nullptr) != ERROR_SUCCESS) + continue; + + HKEY hSubKey; + if (RegOpenKeyExA(hKey, sub_key_name, 0, KEY_READ, &hSubKey) != ERROR_SUCCESS) + continue; + + char drv_desc[256] = {}; + DWORD drv_desc_size = sizeof(drv_desc); + char drv_ver[256] = {}; + DWORD drv_ver_size = sizeof(drv_ver); + + bool got_desc = (RegQueryValueExA(hSubKey, "DriverDesc", nullptr, nullptr, + reinterpret_cast(drv_desc), &drv_desc_size) == ERROR_SUCCESS); + bool got_ver = (RegQueryValueExA(hSubKey, "DriverVersion", nullptr, nullptr, + reinterpret_cast(drv_ver), &drv_ver_size) == ERROR_SUCCESS); + + if (got_desc && got_ver && + device_name == drv_desc && driver_version == drv_ver) { + + uint64_t vram_bytes = 0; + DWORD vram_size = sizeof(vram_bytes); + if (RegQueryValueExA(hSubKey, "HardwareInformation.qwMemorySize", nullptr, nullptr, + reinterpret_cast(&vram_bytes), &vram_size) == ERROR_SUCCESS && vram_bytes > 0) { + RegCloseKey(hSubKey); + RegCloseKey(hKey); + return vram_bytes / (1024 * 1024); + } + + DWORD alt_vram = 0; + DWORD alt_size = sizeof(alt_vram); + if (RegQueryValueExA(hSubKey, "HardwareInformation.MemorySize", nullptr, nullptr, + reinterpret_cast(&alt_vram), &alt_size) == ERROR_SUCCESS && alt_vram > 0) { + RegCloseKey(hSubKey); + RegCloseKey(hKey); + return static_cast(alt_vram) / (1024 * 1024); + } + } + + RegCloseKey(hSubKey); + } + + RegCloseKey(hKey); + return 0; +} + +// ---- Get driver version from registry for a PNP device ---- + +static std::string GetDriverVersion(const std::wstring &pnp_device_id) { + const char *key_path = "SYSTEM\\CurrentControlSet\\Control\\Class\\{4d36e968-e325-11ce-bfc1-08002be10318}"; + HKEY hKey; + if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, key_path, 0, KEY_READ, &hKey) != ERROR_SUCCESS) + return {}; + + std::string pnp_utf8 = WideToUtf8(pnp_device_id.c_str()); + // Extract VEN_XXXX&DEV_XXXX portion for matching + std::string upper_pnp = pnp_utf8; + for (auto &ch : upper_pnp) ch = toupper(ch); + + for (DWORD i = 0; i < 100; ++i) { + char sub_key_name[32]; + DWORD name_size = sizeof(sub_key_name); + if (RegEnumKeyExA(hKey, i, sub_key_name, &name_size, nullptr, nullptr, nullptr, nullptr) != ERROR_SUCCESS) + continue; + + HKEY hSubKey; + if (RegOpenKeyExA(hKey, sub_key_name, 0, KEY_READ, &hSubKey) != ERROR_SUCCESS) + continue; + + char matching_id[512] = {}; + DWORD mid_size = sizeof(matching_id); + if (RegQueryValueExA(hSubKey, "MatchingDeviceId", nullptr, nullptr, + reinterpret_cast(matching_id), &mid_size) == ERROR_SUCCESS) { + std::string upper_mid = matching_id; + for (auto &ch : upper_mid) ch = toupper(ch); + if (upper_pnp.find(upper_mid) != std::string::npos || upper_mid.find("VEN_") != std::string::npos) { + char drv_ver[256] = {}; + DWORD ver_size = sizeof(drv_ver); + if (RegQueryValueExA(hSubKey, "DriverVersion", nullptr, nullptr, + reinterpret_cast(drv_ver), &ver_size) == ERROR_SUCCESS) { + RegCloseKey(hSubKey); + RegCloseKey(hKey); + return drv_ver; + } + } + } + RegCloseKey(hSubKey); + } + + RegCloseKey(hKey); + return {}; +} + +// ---- Vendor/Device/Subsystem ID parsing from PNP Device ID ---- + +struct PciIds { + uint32_t vendor_id; + uint32_t device_id; + uint32_t subsystem_vendor_id; + uint32_t subsystem_device_id; +}; + +static PciIds ParsePnpDeviceId(const std::string &pnp) { + PciIds ids = {}; + std::regex re(R"(VEN_([0-9A-Fa-f]{4}).*DEV_([0-9A-Fa-f]{4}).*SUBSYS_([0-9A-Fa-f]{4})([0-9A-Fa-f]{4}))", + std::regex::icase); + std::smatch m; + if (std::regex_search(pnp, m, re)) { + ids.vendor_id = std::stoul(m[1].str(), nullptr, 16); + ids.device_id = std::stoul(m[2].str(), nullptr, 16); + ids.subsystem_device_id = std::stoul(m[3].str(), nullptr, 16); + ids.subsystem_vendor_id = std::stoul(m[4].str(), nullptr, 16); + } + return ids; +} + +// ---- Public API ---- + +int get_gpu_info(WinGPUProperties *out, int max_count) { + if (!out || max_count <= 0) return -1; + + IDXGIFactory1 *factory = nullptr; + if (FAILED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) + return -1; + + int count = 0; + IDXGIAdapter1 *adapter = nullptr; + std::set seen_pnp_ids; + + for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND && count < max_count; ++a) { + DXGI_ADAPTER_DESC1 desc; + if (FAILED(adapter->GetDesc1(&desc))) { + adapter->Release(); + continue; + } + + // Skip software/remote adapters (DXGI_ADAPTER_FLAG_SOFTWARE = 2, defined in DXGI 1.2+) + // On Windows 7 no adapter sets this flag, so the check is a safe no-op. + if (desc.Flags & 2u) { + adapter->Release(); + continue; + } + + // Deduplicate: DXGI can enumerate the same physical GPU multiple times (common on AMD APUs) + std::wstring pnp_id_early = PnpDeviceIdFromDXGI(desc); + if (!pnp_id_early.empty()) { + std::wstring upper_pnp = pnp_id_early; + for (auto &ch : upper_pnp) ch = towupper(ch); + if (seen_pnp_ids.count(upper_pnp)) { + adapter->Release(); + continue; + } + seen_pnp_ids.insert(upper_pnp); + } + + WinGPUProperties gpu = {}; + + // Name from DXGI + char name_buf[256]; + WideCharToMultiByte(CP_UTF8, 0, desc.Description, -1, name_buf, sizeof(name_buf), nullptr, nullptr); + strncpy_s(gpu.name, name_buf, _TRUNCATE); + + // IDs from DXGI + gpu.vendor_id = desc.VendorId; + gpu.device_id = desc.DeviceId; + + // PNP device instance already resolved above for dedup + const std::wstring &pnp_id = pnp_id_early; + std::string pnp_utf8 = WideToUtf8(pnp_id.c_str()); + + // Parse subsystem IDs from PNP device ID string + if (!pnp_utf8.empty()) { + PciIds ids = ParsePnpDeviceId(pnp_utf8); + gpu.subsystem_vendor_id = ids.subsystem_vendor_id; + gpu.subsystem_device_id = ids.subsystem_device_id; + } + + // VRAM: DXGI reports DedicatedVideoMemory in bytes + uint64_t vram_mb = desc.DedicatedVideoMemory / (1024 * 1024); + + // WMI/DXGI may report capped VRAM for >4GB cards; fall back to registry + if (vram_mb == 0 || desc.DedicatedVideoMemory >= 4194304000ULL) { + std::string drv_ver = GetDriverVersion(pnp_id); + uint64_t reg_vram = FetchVramFromRegistry(std::string(gpu.name), drv_ver); + if (reg_vram > 0) vram_mb = reg_vram; + } + gpu.vram_mb = vram_mb; + + // Location paths (ACPI + PCI) and PCIe info via Configuration Manager + if (!pnp_id.empty()) { + std::string acpi, pci; + if (GetDevNodeLocationPaths(pnp_id, acpi, pci)) { + strncpy_s(gpu.acpi_path, acpi.c_str(), _TRUNCATE); + strncpy_s(gpu.pci_path, pci.c_str(), _TRUNCATE); + } + + int gen = 0, width = 0; + if (GetDevNodePCIeInfo(pnp_id, gen, width)) { + gpu.pcie_gen = gen; + gpu.pcie_width = width; + } + } + + // Manufacturer: map common vendor IDs + switch (gpu.vendor_id) { + case 0x10DE: strncpy_s(gpu.manufacturer, "NVIDIA", _TRUNCATE); break; + case 0x1002: strncpy_s(gpu.manufacturer, "AMD", _TRUNCATE); break; + case 0x8086: strncpy_s(gpu.manufacturer, "Intel", _TRUNCATE); break; + default: { + char hex[16]; + snprintf(hex, sizeof(hex), "0x%04X", gpu.vendor_id); + strncpy_s(gpu.manufacturer, hex, _TRUNCATE); + break; + } + } + + out[count++] = gpu; + adapter->Release(); + } + + factory->Release(); + return count; +} diff --git a/src/hwprobe/interops/win/src/win_helpers.cpp b/src/hwprobe/interops/win/src/win_helpers.cpp new file mode 100644 index 0000000..dd16168 --- /dev/null +++ b/src/hwprobe/interops/win/src/win_helpers.cpp @@ -0,0 +1,185 @@ +#include "win_helpers.h" + +#include +#include +#include + +#include +#include +#include +#include +#include + +#pragma comment(lib, "cfgmgr32.lib") + +// ---- Wide-to-UTF8 ---- + +std::string WideToUtf8(const wchar_t *src) { + if (!src || !*src) return {}; + int len = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); + if (len <= 1) return {}; + std::string out(len - 1, '\0'); + WideCharToMultiByte(CP_UTF8, 0, src, -1, &out[0], len, nullptr, nullptr); + return out; +} + +extern "C" void wide_to_utf8(const wchar_t *src, char *dst, int dst_size) { + if (!src || !dst || dst_size <= 0) return; + WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); +} + +// ---- DEVPROPKEY definitions ---- + +static const DEVPROPKEY DEVPKEY_LocationPaths = { + {0xA45C254E, 0xDF1C, 0x4EFD, {0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0}}, 37 +}; + +static const DEVPROPKEY DEVPKEY_PCIe_CurrentLinkSpeed = { + {0x3AB22E31, 0x8264, 0x4B4E, {0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62}}, 9 +}; + +static const DEVPROPKEY DEVPKEY_PCIe_CurrentLinkWidth = { + {0x3AB22E31, 0x8264, 0x4B4E, {0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62}}, 10 +}; + +// ---- Internal helpers ---- + +static DEVINST LocateDevNode(const std::wstring &pnp_device_id) { + DEVINST dn = 0; + CONFIGRET cr = CM_Locate_DevNodeW(&dn, const_cast(pnp_device_id.c_str()), CM_LOCATE_DEVNODE_NORMAL); + return (cr == CR_SUCCESS) ? dn : 0; +} + +static bool GetDevNodeStringListProperty(DEVINST dn, const DEVPROPKEY &key, std::vector &out) { + DEVPROPTYPE propType = 0; + ULONG bufSize = 0; + + CONFIGRET cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, nullptr, &bufSize, 0); + if (cr != CR_BUFFER_SMALL && cr != CR_SUCCESS) return false; + + std::vector buf(bufSize); + cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, buf.data(), &bufSize, 0); + if (cr != CR_SUCCESS) return false; + + const wchar_t *p = reinterpret_cast(buf.data()); + const wchar_t *end = p + (bufSize / sizeof(wchar_t)); + + while (p < end && *p) { + std::wstring ws(p); + out.push_back(WideToUtf8(ws.c_str())); + p += ws.size() + 1; + } + return !out.empty(); +} + +static bool GetDevNodeUInt32Property(DEVINST dn, const DEVPROPKEY &key, uint32_t &out) { + DEVPROPTYPE propType = 0; + ULONG bufSize = sizeof(uint32_t); + CONFIGRET cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, reinterpret_cast(&out), &bufSize, 0); + return (cr == CR_SUCCESS); +} + +// ---- Path formatting ---- + +std::string FormatPciPath(const std::string &raw) { + if (raw.empty()) return {}; + + std::string result; + std::istringstream ss(raw); + std::string segment; + bool first = true; + + while (std::getline(ss, segment, '#')) { + if (!first) result += '/'; + first = false; + + // PCIROOT(N) + std::smatch m; + std::regex rootRe(R"(PCIROOT\((\d+)\))"); + if (std::regex_match(segment, m, rootRe)) { + int val = std::stoi(m[1].str()); + char buf[64]; + std::snprintf(buf, sizeof(buf), "PciRoot(0x%X)", val); + result += buf; + continue; + } + + // PCI(XXYY) or USB(XXYY) + std::regex pciRe(R"((PCI|USB)\(([0-9A-Fa-f]+)\))"); + if (std::regex_match(segment, m, pciRe)) { + std::string prefix = m[1].str(); + int full_val = std::stoi(m[2].str(), nullptr, 16); + int device = full_val >> 8; + int function = full_val & 0xFF; + // Capitalize first letter, lowercase rest + prefix[0] = toupper(prefix[0]); + for (size_t i = 1; i < prefix.size(); ++i) prefix[i] = tolower(prefix[i]); + char buf[64]; + std::snprintf(buf, sizeof(buf), "%s(0x%X,0x%X)", prefix.c_str(), device, function); + result += buf; + continue; + } + + result += segment; + } + return result; +} + +std::string FormatAcpiPath(const std::string &raw) { + if (raw.empty()) return {}; + + std::string result; + std::regex re(R"((ACPI|USB)\(([^)]+)\))"); + auto begin = std::sregex_iterator(raw.begin(), raw.end(), re); + auto end = std::sregex_iterator(); + + bool first = true; + for (auto it = begin; it != end; ++it) { + std::string val = (*it)[2].str(); + if (first) { + result += '\\'; + first = false; + } else { + result += '.'; + } + result += val; + } + return result; +} + +// ---- Public API ---- + +bool GetDevNodeLocationPaths(const std::wstring &pnp_device_id, + std::string &out_acpi_path, + std::string &out_pci_path) { + DEVINST dn = LocateDevNode(pnp_device_id); + if (!dn) return false; + + std::vector paths; + if (!GetDevNodeStringListProperty(dn, DEVPKEY_LocationPaths, paths)) + return false; + + for (const auto &path : paths) { + if (path.find("ACPI") == 0 && out_acpi_path.empty()) + out_acpi_path = FormatAcpiPath(path); + if (path.find("PCIROOT") == 0 && out_pci_path.empty()) + out_pci_path = FormatPciPath(path); + } + return !out_acpi_path.empty() || !out_pci_path.empty(); +} + +bool GetDevNodePCIeInfo(const std::wstring &pnp_device_id, + int &out_pcie_gen, + int &out_pcie_width) { + DEVINST dn = LocateDevNode(pnp_device_id); + if (!dn) return false; + + uint32_t speed = 0, width = 0; + bool got_speed = GetDevNodeUInt32Property(dn, DEVPKEY_PCIe_CurrentLinkSpeed, speed); + bool got_width = GetDevNodeUInt32Property(dn, DEVPKEY_PCIe_CurrentLinkWidth, width); + + if (got_speed) out_pcie_gen = static_cast(speed); + if (got_width) out_pcie_width = static_cast(width); + + return got_speed || got_width; +} From ec3e2d9cb3e0f27504d438c9f90af46ad5a586ab Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 23:16:09 +0530 Subject: [PATCH 09/33] wip: working GPU detection on Windows --- src/hwprobe/core/windows/graphics.py | 48 ++- src/hwprobe/interops/win/CMakeLists.txt | 4 +- src/hwprobe/interops/win/bindings/gpu_info.py | 105 ++---- src/hwprobe/interops/win/bindings/wmi.py | 3 +- src/hwprobe/interops/win/include/gpu_info.h | 38 +- .../interops/win/include/win_helpers.h | 41 -- src/hwprobe/interops/win/include/wmi.h | 2 +- src/hwprobe/interops/win/main.cpp | 24 +- src/hwprobe/interops/win/src/gpu_info.cpp | 159 +++----- src/hwprobe/interops/win/src/win_helpers.cpp | 185 --------- src/hwprobe/interops/win/src/wmi.cpp | 75 ++-- src/hwprobe/util/location_paths.py | 357 ++++++------------ tests/core/windows/test_graphics.py | 225 ++++++----- 13 files changed, 457 insertions(+), 809 deletions(-) delete mode 100644 src/hwprobe/interops/win/include/win_helpers.h delete mode 100644 src/hwprobe/interops/win/src/win_helpers.cpp diff --git a/src/hwprobe/core/windows/graphics.py b/src/hwprobe/core/windows/graphics.py index c1c57f6..a74e6b7 100644 --- a/src/hwprobe/core/windows/graphics.py +++ b/src/hwprobe/core/windows/graphics.py @@ -1,23 +1,49 @@ -from hwprobe.interops.win.bindings.gpu_info import GPUProperties, get_gpu_info +from hwprobe.core.windows.common import format_acpi_path, format_pci_path +from hwprobe.interops.win.bindings.gpu_info import GPURaw, get_gpu_info from hwprobe.models.gpu_models import GPUInfo, GraphicsInfo from hwprobe.models.size_models import Megabyte from hwprobe.models.status_models import StatusType +from hwprobe.util.location_paths import fetch_pcie_info, get_location_paths +_VENDOR_NAMES = { + 0x10DE: "NVIDIA", + 0x1002: "AMD", + 0x8086: "Intel", +} -def _map_gpu(raw: GPUProperties) -> GPUInfo: + +def _map_gpu(raw: GPURaw) -> GPUInfo: gpu = GPUInfo() gpu.name = raw.name - gpu.manufacturer = raw.manufacturer + gpu.manufacturer = _VENDOR_NAMES.get(raw.vendor_id, f"0x{raw.vendor_id:04X}") gpu.vendor_id = f"0x{raw.vendor_id:04X}" gpu.device_id = f"0x{raw.device_id:04X}" - gpu.subsystem_manufacturer = f"0x{raw.subsystem_vendor_id:04X}" - gpu.subsystem_model = f"0x{raw.subsystem_device_id:04X}" - gpu.acpi_path = raw.acpi_path - gpu.pci_path = raw.pci_path - gpu.pcie_gen = raw.pcie_gen if raw.pcie_gen else None - gpu.pcie_width = raw.pcie_width if raw.pcie_width else None - if raw.vram_mb > 0: - gpu.vram = Megabyte(capacity=int(raw.vram_mb)) + + # Subsystem ID: DXGI gives a single uint32 — high 16 = vendor, low 16 = device + gpu.subsystem_manufacturer = f"0x{(raw.subsystem_id >> 16) & 0xFFFF:04X}" + gpu.subsystem_model = f"0x{raw.subsystem_id & 0xFFFF:04X}" + + # Location paths + PCIe: reuse util.location_paths (cfgmgr32 via ctypes) + if raw.pnp_device_id: + paths = get_location_paths(raw.pnp_device_id) + if paths: + for path in paths: + if path.startswith("ACPI") and not gpu.acpi_path: + gpu.acpi_path = format_acpi_path(path) + if path.startswith("PCIROOT") and not gpu.pci_path: + gpu.pci_path = format_pci_path(path) + + pcie = fetch_pcie_info(raw.pnp_device_id) + if pcie: + speed, width = pcie + gpu.pcie_gen = speed + gpu.pcie_width = width + + # VRAM: registry fallback wins if present, else DXGI value + vram_bytes = raw.vram_bytes or raw.dedicated_video_memory_bytes + if vram_bytes > 0: + gpu.vram = Megabyte(capacity=int(vram_bytes) // (1024 * 1024)) + return gpu diff --git a/src/hwprobe/interops/win/CMakeLists.txt b/src/hwprobe/interops/win/CMakeLists.txt index 70ef8d7..e6ddccc 100644 --- a/src/hwprobe/interops/win/CMakeLists.txt +++ b/src/hwprobe/interops/win/CMakeLists.txt @@ -12,9 +12,8 @@ endif () # Static runtime to avoid dependency issues when loaded by Python. set(_STATIC_RUNTIME_OPTS -static-libgcc -static-libstdc++ -static) -# ---- gpu_info.dll : GPU enumeration (DXGI + SetupAPI) ---- +# ---- gpu_info.dll : GPU enumeration (DXGI + SetupAPI + registry VRAM) ---- add_library(gpu_info SHARED - src/win_helpers.cpp src/gpu_info.cpp ) @@ -28,7 +27,6 @@ target_link_libraries(gpu_info PRIVATE dxgi setupapi - cfgmgr32 advapi32 ) diff --git a/src/hwprobe/interops/win/bindings/gpu_info.py b/src/hwprobe/interops/win/bindings/gpu_info.py index 1e07ee1..c55b3c3 100644 --- a/src/hwprobe/interops/win/bindings/gpu_info.py +++ b/src/hwprobe/interops/win/bindings/gpu_info.py @@ -1,13 +1,17 @@ """ -gpu_info.py - Python ctypes binding for gpu_info.dll (GPU info) +gpu_info.py - Python ctypes binding for gpu_info.dll (raw GPU data) + +Returns raw values from DXGI + SetupAPI + registry. All parsing/derivation is +done in the consumer (core/windows/graphics.py): subsystem ID split, location +paths, PCIe info, manufacturer name, VRAM unit conversion. Usage: from hwprobe.interops.win.bindings.gpu_info import get_gpu_info gpus = get_gpu_info() for g in gpus: - print(g) + print(g.name, hex(g.vendor_id), g.pnp_device_id) -Source code is in `interops/win/include/` and `interops/win/src/`. +Source: interops/win/include/gpu_info.h and interops/win/src/gpu_info.cpp. """ import ctypes @@ -26,75 +30,46 @@ _lib = ctypes.WinDLL(str(_LIB_PATH)) -# ---- Mirror the C structs ---- - +# ---- mirror the C struct ---- -class _WinGPUProperties(ctypes.Structure): +class _WinGPURaw(ctypes.Structure): _fields_ = [ ("name", ctypes.c_char * 256), - ("manufacturer", ctypes.c_char * 256), ("vendor_id", ctypes.c_uint32), ("device_id", ctypes.c_uint32), - ("subsystem_vendor_id", ctypes.c_uint32), - ("subsystem_device_id", ctypes.c_uint32), - ("acpi_path", ctypes.c_char * 512), - ("pci_path", ctypes.c_char * 512), - ("vram_mb", ctypes.c_uint64), - ("pcie_gen", ctypes.c_int), - ("pcie_width", ctypes.c_int), + ("subsystem_id", ctypes.c_uint32), + ("dedicated_video_memory_bytes", ctypes.c_uint64), + ("pnp_device_id", ctypes.c_char * 512), + ("vram_bytes", ctypes.c_uint64), ] _lib.get_gpu_info.restype = ctypes.c_int -_lib.get_gpu_info.argtypes = [ctypes.POINTER(_WinGPUProperties), ctypes.c_int] +_lib.get_gpu_info.argtypes = [ctypes.POINTER(_WinGPURaw), ctypes.c_int] -# ---- Python-facing dataclass ---- +# ---- Python-facing dataclass (raw values, no parsing) ---- @dataclass -class GPUProperties: +class GPURaw: name: str - manufacturer: str vendor_id: int device_id: int - subsystem_vendor_id: int - subsystem_device_id: int - acpi_path: Optional[str] - pci_path: Optional[str] - vram_mb: int - pcie_gen: int - pcie_width: int - - def __str__(self) -> str: - lines = [ - f" Name: {self.name}", - f" Manufacturer: {self.manufacturer}", - f" Vendor ID: 0x{self.vendor_id:04X}", - f" Device ID: 0x{self.device_id:04X}", - f" Subsystem Vendor: 0x{self.subsystem_vendor_id:04X}", - f" Subsystem Device: 0x{self.subsystem_device_id:04X}", - f" VRAM: {self.vram_mb} MB", - ] - if self.pcie_gen: - lines.append(f" PCIe Gen: {self.pcie_gen}") - if self.pcie_width: - lines.append(f" PCIe Width: x{self.pcie_width}") - if self.acpi_path: - lines.append(f" ACPI Path: {self.acpi_path}") - if self.pci_path: - lines.append(f" PCI Path: {self.pci_path}") - return "\n".join(lines) - - -# ---- Public API ---- + subsystem_id: int + dedicated_video_memory_bytes: int + pnp_device_id: Optional[str] + vram_bytes: int + + +# ---- public API ---- _MAX_GPUS = 8 -def get_gpu_info() -> list[GPUProperties]: - """Return a list of GPUProperties for every GPU found on this machine.""" - buf = (_WinGPUProperties * _MAX_GPUS)() +def get_gpu_info() -> list[GPURaw]: + """Return a list of GPURaw for every GPU found on this machine.""" + buf = (_WinGPURaw * _MAX_GPUS)() count = _lib.get_gpu_info(buf, _MAX_GPUS) if count < 0: raise RuntimeError("get_gpu_info() failed (C library returned -1)") @@ -102,22 +77,16 @@ def get_gpu_info() -> list[GPUProperties]: result = [] for i in range(count): raw = buf[i] - acpi = raw.acpi_path.decode("utf-8", errors="replace").strip("\x00") or None - pci = raw.pci_path.decode("utf-8", errors="replace").strip("\x00") or None - + pnp = raw.pnp_device_id.decode("utf-8", errors="replace").strip("\x00") or None result.append( - GPUProperties( + GPURaw( name=raw.name.decode("utf-8", errors="replace").strip("\x00"), - manufacturer=raw.manufacturer.decode("utf-8", errors="replace").strip("\x00"), vendor_id=raw.vendor_id, device_id=raw.device_id, - subsystem_vendor_id=raw.subsystem_vendor_id, - subsystem_device_id=raw.subsystem_device_id, - acpi_path=acpi, - pci_path=pci, - vram_mb=raw.vram_mb, - pcie_gen=raw.pcie_gen, - pcie_width=raw.pcie_width, + subsystem_id=raw.subsystem_id, + dedicated_video_memory_bytes=raw.dedicated_video_memory_bytes, + pnp_device_id=pnp, + vram_bytes=raw.vram_bytes, ) ) return result @@ -128,5 +97,13 @@ def get_gpu_info() -> list[GPUProperties]: print(f"Found {len(gpus)} GPU(s):\n") for idx, g in enumerate(gpus): print(f"GPU {idx}:") - print(g) + print(f" Name: {g.name}") + print(f" Vendor ID: 0x{g.vendor_id:04X}") + print(f" Device ID: 0x{g.device_id:04X}") + print(f" Subsystem ID: 0x{g.subsystem_id:08X}") + print(f" Dedicated VRAM: {g.dedicated_video_memory_bytes} bytes") + if g.pnp_device_id: + print(f" PNP Device ID: {g.pnp_device_id}") + if g.vram_bytes: + print(f" Registry VRAM: {g.vram_bytes} bytes") print() diff --git a/src/hwprobe/interops/win/bindings/wmi.py b/src/hwprobe/interops/win/bindings/wmi.py index 2942629..85b96c1 100644 --- a/src/hwprobe/interops/win/bindings/wmi.py +++ b/src/hwprobe/interops/win/bindings/wmi.py @@ -111,8 +111,7 @@ def get_wmi_data( # ---- quick self-check ---- -# ponytail: one runnable check, no test framework. Fails if COM/WMI/encoding -# is broken. Run with: python -m hwprobe.interops.win.bindings.wmi +# Run with: python -m hwprobe.interops.win.bindings.wmi if __name__ == "__main__": rows = get_wmi_data("Win32_Processor", ["Name", "Manufacturer"]) print(f"Found {len(rows)} CPU(s):\n") diff --git a/src/hwprobe/interops/win/include/gpu_info.h b/src/hwprobe/interops/win/include/gpu_info.h index 4506ccd..26510d1 100644 --- a/src/hwprobe/interops/win/include/gpu_info.h +++ b/src/hwprobe/interops/win/include/gpu_info.h @@ -6,28 +6,34 @@ extern "C" { #endif +// Raw GPU data from DXGI + SetupAPI. No parsing, no formatting — Python does +// all derivation (subsystem ID split, location paths, PCIe info, VRAM unit +// conversion, manufacturer name). C++ only does what Python can't: COM +// enumeration (DXGI) and SetupAPI handle flow. +// +// Fields: +// name — DXGI Description, UTF-8 +// vendor_id — DXGI VendorId +// device_id — DXGI DeviceId +// subsystem_id — DXGI SubSysId (raw uint32; high 16 = subsystem +// vendor, low 16 = subsystem device — Python splits) +// dedicated_video_memory_bytes — DXGI DedicatedVideoMemory, raw bytes +// pnp_device_id — from SetupAPI, raw "PCI\VEN_...&DEV_...&SUBSYS_..." +// (empty if SetupAPI match failed) +// vram_bytes — registry fallback for >4GB cards, raw bytes +// (0 if DXGI value was used or registry lookup failed) typedef struct { char name[256]; - char manufacturer[256]; uint32_t vendor_id; uint32_t device_id; - uint32_t subsystem_vendor_id; - uint32_t subsystem_device_id; - char acpi_path[512]; - char pci_path[512]; - uint64_t vram_mb; - int pcie_gen; - int pcie_width; -} WinGPUProperties; - -typedef enum { - GPU_STATUS_OK = 0, - GPU_STATUS_FAILURE = 1, - GPU_STATUS_INVALID_ARG = 2 -} GPUStatus; + uint32_t subsystem_id; + uint64_t dedicated_video_memory_bytes; + char pnp_device_id[512]; + uint64_t vram_bytes; +} WinGPURaw; // Fills `out` with GPU entries. Returns number of GPUs found, or -1 on error. -int get_gpu_info(WinGPUProperties *out, int max_count); +int get_gpu_info(WinGPURaw *out, int max_count); #ifdef __cplusplus } diff --git a/src/hwprobe/interops/win/include/win_helpers.h b/src/hwprobe/interops/win/include/win_helpers.h deleted file mode 100644 index da25c95..0000000 --- a/src/hwprobe/interops/win/include/win_helpers.h +++ /dev/null @@ -1,41 +0,0 @@ -#pragma once - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif - -// Convert a wide string to a UTF-8 char buffer. -void wide_to_utf8(const wchar_t *src, char *dst, int dst_size); - -#ifdef __cplusplus -} -#endif - -// C++ only helpers -#ifdef __cplusplus - -#include -#include -#include - -std::string WideToUtf8(const wchar_t *src); - -// DEVPROPKEY-based device property helpers -bool GetDevNodeLocationPaths(const std::wstring &pnp_device_id, - std::string &out_acpi_path, - std::string &out_pci_path); - -bool GetDevNodePCIeInfo(const std::wstring &pnp_device_id, - int &out_pcie_gen, - int &out_pcie_width); - -// Path formatting: raw PCIROOT(0)#PCI(1C05)#PCI(0000) -> PciRoot(0x0)/Pci(0x1C,0x5)/Pci(0x0,0x0) -std::string FormatPciPath(const std::string &raw); - -// Path formatting: raw ACPI(_SB_)#ACPI(PCI0)#ACPI(RP05)#ACPI(PXSX) -> \_SB_.PCI0.RP05.PXSX -std::string FormatAcpiPath(const std::string &raw); - -#endif diff --git a/src/hwprobe/interops/win/include/wmi.h b/src/hwprobe/interops/win/include/wmi.h index 5189d4e..c741fb1 100644 --- a/src/hwprobe/interops/win/include/wmi.h +++ b/src/hwprobe/interops/win/include/wmi.h @@ -7,7 +7,7 @@ extern "C" { #endif // ABI caps. Raising any of these is a recompile on both sides. -// ponytail: fixed caps avoid heap ownership across the FFI boundary. +// Fixed caps avoid heap ownership across the FFI boundary. // 16 fields covers every WMI class hwprobe queries (max today: 9). // 512 chars per field covers PNPDeviceID paths and uint64 string forms. // 64 rows covers memory modules, disks, NICs on any realistic machine. diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index b703211..dcf99c9 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -11,7 +11,7 @@ #include #include -typedef int (*get_gpu_info_ptr)(WinGPUProperties *, int); +typedef int (*get_gpu_info_ptr)(WinGPURaw *, int); typedef int (*get_wmi_data_ptr)(const char *, const char *const *, int, const char *, WmiRow *, int); @@ -37,7 +37,7 @@ static int test_gpu() { } constexpr int MAX_GPUS = 8; - WinGPUProperties gpus[MAX_GPUS] = {}; + WinGPURaw gpus[MAX_GPUS] = {}; int count = fn(gpus, MAX_GPUS); if (count < 0) { printf("[gpu] get_gpu_info() failed\n"); @@ -49,17 +49,15 @@ static int test_gpu() { for (int i = 0; i < count; ++i) { const auto &g = gpus[i]; printf("GPU %d:\n", i); - printf(" Name: %s\n", g.name); - printf(" Manufacturer: %s\n", g.manufacturer); - printf(" Vendor ID: 0x%04X\n", g.vendor_id); - printf(" Device ID: 0x%04X\n", g.device_id); - printf(" Subsystem Vendor: 0x%04X\n", g.subsystem_vendor_id); - printf(" Subsystem Device: 0x%04X\n", g.subsystem_device_id); - printf(" VRAM: %llu MB\n", (unsigned long long)g.vram_mb); - printf(" PCIe Gen: %d\n", g.pcie_gen); - printf(" PCIe Width: x%d\n", g.pcie_width); - if (g.acpi_path[0]) printf(" ACPI Path: %s\n", g.acpi_path); - if (g.pci_path[0]) printf(" PCI Path: %s\n", g.pci_path); + printf(" Name: %s\n", g.name); + printf(" Vendor ID: 0x%04X\n", g.vendor_id); + printf(" Device ID: 0x%04X\n", g.device_id); + printf(" Subsystem ID: 0x%08X\n", g.subsystem_id); + printf(" Dedicated VRAM: %llu bytes\n", (unsigned long long)g.dedicated_video_memory_bytes); + if (g.pnp_device_id[0]) + printf(" PNP Device ID: %s\n", g.pnp_device_id); + if (g.vram_bytes > 0) + printf(" Registry VRAM: %llu bytes\n", (unsigned long long)g.vram_bytes); printf("\n"); } diff --git a/src/hwprobe/interops/win/src/gpu_info.cpp b/src/hwprobe/interops/win/src/gpu_info.cpp index 3aa7f53..2484709 100644 --- a/src/hwprobe/interops/win/src/gpu_info.cpp +++ b/src/hwprobe/interops/win/src/gpu_info.cpp @@ -1,5 +1,9 @@ +// Lean GPU enumeration: DXGI + SetupAPI + registry VRAM fallback only. +// Returns raw values — all parsing (subsystem split, location paths, PCIe, +// manufacturer name, VRAM unit conversion) is done in Python. +// See gpu_info.h for the ABI. + #include "gpu_info.h" -#include "win_helpers.h" #include #include @@ -8,18 +12,16 @@ #include #include -#include -#include #include +#ifdef _MSC_VER #pragma comment(lib, "dxgi.lib") #pragma comment(lib, "setupapi.lib") +#endif -// ---- WMI-free GPU enumeration via DXGI + SetupAPI ---- +// ---- PNP device ID from DXGI vendor/device/subsys via SetupAPI ---- static std::wstring PnpDeviceIdFromDXGI(const DXGI_ADAPTER_DESC1 &desc) { - // DXGI gives us VendorId / DeviceId / SubSysId / Revision. - // We need to find the matching PNP device instance via SetupAPI. wchar_t match_hw_id[128]; swprintf_s(match_hw_id, L"PCI\\VEN_%04X&DEV_%04X", desc.VendorId, desc.DeviceId); @@ -62,13 +64,17 @@ static std::wstring PnpDeviceIdFromDXGI(const DXGI_ADAPTER_DESC1 &desc) { } // ---- Registry VRAM fallback for >4GB cards ---- +// DXGI's DedicatedVideoMemory is a UINT that can cap at 4GB on some drivers. +// The registry stores the real size as HardwareInformation.qwMemorySize (uint64) +// or HardwareInformation.MemorySize (uint32) under the display class key. -static uint64_t FetchVramFromRegistry(const std::string &device_name, const std::string &driver_version) { +static uint64_t FetchVramFromRegistry(const char *device_name, const char *driver_version) { const char *key_path = "SYSTEM\\CurrentControlSet\\Control\\Class\\{4d36e968-e325-11ce-bfc1-08002be10318}"; HKEY hKey; if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, key_path, 0, KEY_READ, &hKey) != ERROR_SUCCESS) return 0; + uint64_t result = 0; for (DWORD i = 0; i < 100; ++i) { char sub_key_name[32]; DWORD name_size = sizeof(sub_key_name); @@ -90,24 +96,24 @@ static uint64_t FetchVramFromRegistry(const std::string &device_name, const std: reinterpret_cast(drv_ver), &drv_ver_size) == ERROR_SUCCESS); if (got_desc && got_ver && - device_name == drv_desc && driver_version == drv_ver) { + strcmp(device_name, drv_desc) == 0 && strcmp(driver_version, drv_ver) == 0) { uint64_t vram_bytes = 0; DWORD vram_size = sizeof(vram_bytes); if (RegQueryValueExA(hSubKey, "HardwareInformation.qwMemorySize", nullptr, nullptr, reinterpret_cast(&vram_bytes), &vram_size) == ERROR_SUCCESS && vram_bytes > 0) { + result = vram_bytes; RegCloseKey(hSubKey); - RegCloseKey(hKey); - return vram_bytes / (1024 * 1024); + break; } DWORD alt_vram = 0; DWORD alt_size = sizeof(alt_vram); if (RegQueryValueExA(hSubKey, "HardwareInformation.MemorySize", nullptr, nullptr, reinterpret_cast(&alt_vram), &alt_size) == ERROR_SUCCESS && alt_vram > 0) { + result = static_cast(alt_vram); RegCloseKey(hSubKey); - RegCloseKey(hKey); - return static_cast(alt_vram) / (1024 * 1024); + break; } } @@ -115,22 +121,27 @@ static uint64_t FetchVramFromRegistry(const std::string &device_name, const std: } RegCloseKey(hKey); - return 0; + return result; } // ---- Get driver version from registry for a PNP device ---- -static std::string GetDriverVersion(const std::wstring &pnp_device_id) { +static std::string GetDriverVersion(const wchar_t *pnp_device_id) { const char *key_path = "SYSTEM\\CurrentControlSet\\Control\\Class\\{4d36e968-e325-11ce-bfc1-08002be10318}"; HKEY hKey; if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, key_path, 0, KEY_READ, &hKey) != ERROR_SUCCESS) return {}; - std::string pnp_utf8 = WideToUtf8(pnp_device_id.c_str()); - // Extract VEN_XXXX&DEV_XXXX portion for matching + // Convert PNP ID to UTF-8 for substring matching + int utf8_len = WideCharToMultiByte(CP_UTF8, 0, pnp_device_id, -1, nullptr, 0, nullptr, nullptr); + if (utf8_len <= 0) { RegCloseKey(hKey); return {}; } + std::string pnp_utf8(utf8_len - 1, '\0'); + WideCharToMultiByte(CP_UTF8, 0, pnp_device_id, -1, pnp_utf8.data(), utf8_len, nullptr, nullptr); + std::string upper_pnp = pnp_utf8; - for (auto &ch : upper_pnp) ch = toupper(ch); + for (auto &ch : upper_pnp) ch = static_cast(toupper(static_cast(ch))); + std::string result; for (DWORD i = 0; i < 100; ++i) { char sub_key_name[32]; DWORD name_size = sizeof(sub_key_name); @@ -146,15 +157,15 @@ static std::string GetDriverVersion(const std::wstring &pnp_device_id) { if (RegQueryValueExA(hSubKey, "MatchingDeviceId", nullptr, nullptr, reinterpret_cast(matching_id), &mid_size) == ERROR_SUCCESS) { std::string upper_mid = matching_id; - for (auto &ch : upper_mid) ch = toupper(ch); - if (upper_pnp.find(upper_mid) != std::string::npos || upper_mid.find("VEN_") != std::string::npos) { + for (auto &ch : upper_mid) ch = static_cast(toupper(static_cast(ch))); + if (upper_pnp.find(upper_mid) != std::string::npos) { char drv_ver[256] = {}; DWORD ver_size = sizeof(drv_ver); if (RegQueryValueExA(hSubKey, "DriverVersion", nullptr, nullptr, reinterpret_cast(drv_ver), &ver_size) == ERROR_SUCCESS) { + result = drv_ver; RegCloseKey(hSubKey); - RegCloseKey(hKey); - return drv_ver; + break; } } } @@ -162,35 +173,12 @@ static std::string GetDriverVersion(const std::wstring &pnp_device_id) { } RegCloseKey(hKey); - return {}; -} - -// ---- Vendor/Device/Subsystem ID parsing from PNP Device ID ---- - -struct PciIds { - uint32_t vendor_id; - uint32_t device_id; - uint32_t subsystem_vendor_id; - uint32_t subsystem_device_id; -}; - -static PciIds ParsePnpDeviceId(const std::string &pnp) { - PciIds ids = {}; - std::regex re(R"(VEN_([0-9A-Fa-f]{4}).*DEV_([0-9A-Fa-f]{4}).*SUBSYS_([0-9A-Fa-f]{4})([0-9A-Fa-f]{4}))", - std::regex::icase); - std::smatch m; - if (std::regex_search(pnp, m, re)) { - ids.vendor_id = std::stoul(m[1].str(), nullptr, 16); - ids.device_id = std::stoul(m[2].str(), nullptr, 16); - ids.subsystem_device_id = std::stoul(m[3].str(), nullptr, 16); - ids.subsystem_vendor_id = std::stoul(m[4].str(), nullptr, 16); - } - return ids; + return result; } // ---- Public API ---- -int get_gpu_info(WinGPUProperties *out, int max_count) { +int get_gpu_info(WinGPURaw *out, int max_count) { if (!out || max_count <= 0) return -1; IDXGIFactory1 *factory = nullptr; @@ -208,17 +196,16 @@ int get_gpu_info(WinGPUProperties *out, int max_count) { continue; } - // Skip software/remote adapters (DXGI_ADAPTER_FLAG_SOFTWARE = 2, defined in DXGI 1.2+) - // On Windows 7 no adapter sets this flag, so the check is a safe no-op. + // Skip software/remote adapters (DXGI_ADAPTER_FLAG_SOFTWARE = 2) if (desc.Flags & 2u) { adapter->Release(); continue; } // Deduplicate: DXGI can enumerate the same physical GPU multiple times (common on AMD APUs) - std::wstring pnp_id_early = PnpDeviceIdFromDXGI(desc); - if (!pnp_id_early.empty()) { - std::wstring upper_pnp = pnp_id_early; + std::wstring pnp_id = PnpDeviceIdFromDXGI(desc); + if (!pnp_id.empty()) { + std::wstring upper_pnp = pnp_id; for (auto &ch : upper_pnp) ch = towupper(ch); if (seen_pnp_ids.count(upper_pnp)) { adapter->Release(); @@ -227,65 +214,35 @@ int get_gpu_info(WinGPUProperties *out, int max_count) { seen_pnp_ids.insert(upper_pnp); } - WinGPUProperties gpu = {}; + WinGPURaw gpu = {}; - // Name from DXGI - char name_buf[256]; - WideCharToMultiByte(CP_UTF8, 0, desc.Description, -1, name_buf, sizeof(name_buf), nullptr, nullptr); - strncpy_s(gpu.name, name_buf, _TRUNCATE); + // Name from DXGI (wide -> UTF-8) + WideCharToMultiByte(CP_UTF8, 0, desc.Description, -1, gpu.name, sizeof(gpu.name), nullptr, nullptr); - // IDs from DXGI + // Raw IDs from DXGI gpu.vendor_id = desc.VendorId; gpu.device_id = desc.DeviceId; + gpu.subsystem_id = desc.SubSysId; - // PNP device instance already resolved above for dedup - const std::wstring &pnp_id = pnp_id_early; - std::string pnp_utf8 = WideToUtf8(pnp_id.c_str()); + // Raw VRAM bytes from DXGI + gpu.dedicated_video_memory_bytes = desc.DedicatedVideoMemory; - // Parse subsystem IDs from PNP device ID string - if (!pnp_utf8.empty()) { - PciIds ids = ParsePnpDeviceId(pnp_utf8); - gpu.subsystem_vendor_id = ids.subsystem_vendor_id; - gpu.subsystem_device_id = ids.subsystem_device_id; - } - - // VRAM: DXGI reports DedicatedVideoMemory in bytes - uint64_t vram_mb = desc.DedicatedVideoMemory / (1024 * 1024); - - // WMI/DXGI may report capped VRAM for >4GB cards; fall back to registry - if (vram_mb == 0 || desc.DedicatedVideoMemory >= 4194304000ULL) { - std::string drv_ver = GetDriverVersion(pnp_id); - uint64_t reg_vram = FetchVramFromRegistry(std::string(gpu.name), drv_ver); - if (reg_vram > 0) vram_mb = reg_vram; - } - gpu.vram_mb = vram_mb; - - // Location paths (ACPI + PCI) and PCIe info via Configuration Manager + // PNP device ID (UTF-8) for Python-side location/PCIe lookup if (!pnp_id.empty()) { - std::string acpi, pci; - if (GetDevNodeLocationPaths(pnp_id, acpi, pci)) { - strncpy_s(gpu.acpi_path, acpi.c_str(), _TRUNCATE); - strncpy_s(gpu.pci_path, pci.c_str(), _TRUNCATE); - } - - int gen = 0, width = 0; - if (GetDevNodePCIeInfo(pnp_id, gen, width)) { - gpu.pcie_gen = gen; - gpu.pcie_width = width; - } + WideCharToMultiByte(CP_UTF8, 0, pnp_id.c_str(), -1, + gpu.pnp_device_id, sizeof(gpu.pnp_device_id), nullptr, nullptr); } - // Manufacturer: map common vendor IDs - switch (gpu.vendor_id) { - case 0x10DE: strncpy_s(gpu.manufacturer, "NVIDIA", _TRUNCATE); break; - case 0x1002: strncpy_s(gpu.manufacturer, "AMD", _TRUNCATE); break; - case 0x8086: strncpy_s(gpu.manufacturer, "Intel", _TRUNCATE); break; - default: { - char hex[16]; - snprintf(hex, sizeof(hex), "0x%04X", gpu.vendor_id); - strncpy_s(gpu.manufacturer, hex, _TRUNCATE); - break; - } + // Registry VRAM fallback for >4GB cards (DXGI may cap at 4GB). + // Skip when SetupAPI failed to resolve a PNP ID — the registry lookup + // matches on DriverDesc + DriverVersion, and GetDriverVersion needs + // the PNP ID to find the right subkey. + if ((gpu.dedicated_video_memory_bytes == 0 || + gpu.dedicated_video_memory_bytes >= 4194304000ULL) && + !pnp_id.empty()) { + std::string drv_ver = GetDriverVersion(pnp_id.c_str()); + uint64_t reg_vram = FetchVramFromRegistry(gpu.name, drv_ver.c_str()); + if (reg_vram > 0) gpu.vram_bytes = reg_vram; } out[count++] = gpu; diff --git a/src/hwprobe/interops/win/src/win_helpers.cpp b/src/hwprobe/interops/win/src/win_helpers.cpp deleted file mode 100644 index dd16168..0000000 --- a/src/hwprobe/interops/win/src/win_helpers.cpp +++ /dev/null @@ -1,185 +0,0 @@ -#include "win_helpers.h" - -#include -#include -#include - -#include -#include -#include -#include -#include - -#pragma comment(lib, "cfgmgr32.lib") - -// ---- Wide-to-UTF8 ---- - -std::string WideToUtf8(const wchar_t *src) { - if (!src || !*src) return {}; - int len = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); - if (len <= 1) return {}; - std::string out(len - 1, '\0'); - WideCharToMultiByte(CP_UTF8, 0, src, -1, &out[0], len, nullptr, nullptr); - return out; -} - -extern "C" void wide_to_utf8(const wchar_t *src, char *dst, int dst_size) { - if (!src || !dst || dst_size <= 0) return; - WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); -} - -// ---- DEVPROPKEY definitions ---- - -static const DEVPROPKEY DEVPKEY_LocationPaths = { - {0xA45C254E, 0xDF1C, 0x4EFD, {0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0}}, 37 -}; - -static const DEVPROPKEY DEVPKEY_PCIe_CurrentLinkSpeed = { - {0x3AB22E31, 0x8264, 0x4B4E, {0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62}}, 9 -}; - -static const DEVPROPKEY DEVPKEY_PCIe_CurrentLinkWidth = { - {0x3AB22E31, 0x8264, 0x4B4E, {0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62}}, 10 -}; - -// ---- Internal helpers ---- - -static DEVINST LocateDevNode(const std::wstring &pnp_device_id) { - DEVINST dn = 0; - CONFIGRET cr = CM_Locate_DevNodeW(&dn, const_cast(pnp_device_id.c_str()), CM_LOCATE_DEVNODE_NORMAL); - return (cr == CR_SUCCESS) ? dn : 0; -} - -static bool GetDevNodeStringListProperty(DEVINST dn, const DEVPROPKEY &key, std::vector &out) { - DEVPROPTYPE propType = 0; - ULONG bufSize = 0; - - CONFIGRET cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, nullptr, &bufSize, 0); - if (cr != CR_BUFFER_SMALL && cr != CR_SUCCESS) return false; - - std::vector buf(bufSize); - cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, buf.data(), &bufSize, 0); - if (cr != CR_SUCCESS) return false; - - const wchar_t *p = reinterpret_cast(buf.data()); - const wchar_t *end = p + (bufSize / sizeof(wchar_t)); - - while (p < end && *p) { - std::wstring ws(p); - out.push_back(WideToUtf8(ws.c_str())); - p += ws.size() + 1; - } - return !out.empty(); -} - -static bool GetDevNodeUInt32Property(DEVINST dn, const DEVPROPKEY &key, uint32_t &out) { - DEVPROPTYPE propType = 0; - ULONG bufSize = sizeof(uint32_t); - CONFIGRET cr = CM_Get_DevNode_PropertyW(dn, &key, &propType, reinterpret_cast(&out), &bufSize, 0); - return (cr == CR_SUCCESS); -} - -// ---- Path formatting ---- - -std::string FormatPciPath(const std::string &raw) { - if (raw.empty()) return {}; - - std::string result; - std::istringstream ss(raw); - std::string segment; - bool first = true; - - while (std::getline(ss, segment, '#')) { - if (!first) result += '/'; - first = false; - - // PCIROOT(N) - std::smatch m; - std::regex rootRe(R"(PCIROOT\((\d+)\))"); - if (std::regex_match(segment, m, rootRe)) { - int val = std::stoi(m[1].str()); - char buf[64]; - std::snprintf(buf, sizeof(buf), "PciRoot(0x%X)", val); - result += buf; - continue; - } - - // PCI(XXYY) or USB(XXYY) - std::regex pciRe(R"((PCI|USB)\(([0-9A-Fa-f]+)\))"); - if (std::regex_match(segment, m, pciRe)) { - std::string prefix = m[1].str(); - int full_val = std::stoi(m[2].str(), nullptr, 16); - int device = full_val >> 8; - int function = full_val & 0xFF; - // Capitalize first letter, lowercase rest - prefix[0] = toupper(prefix[0]); - for (size_t i = 1; i < prefix.size(); ++i) prefix[i] = tolower(prefix[i]); - char buf[64]; - std::snprintf(buf, sizeof(buf), "%s(0x%X,0x%X)", prefix.c_str(), device, function); - result += buf; - continue; - } - - result += segment; - } - return result; -} - -std::string FormatAcpiPath(const std::string &raw) { - if (raw.empty()) return {}; - - std::string result; - std::regex re(R"((ACPI|USB)\(([^)]+)\))"); - auto begin = std::sregex_iterator(raw.begin(), raw.end(), re); - auto end = std::sregex_iterator(); - - bool first = true; - for (auto it = begin; it != end; ++it) { - std::string val = (*it)[2].str(); - if (first) { - result += '\\'; - first = false; - } else { - result += '.'; - } - result += val; - } - return result; -} - -// ---- Public API ---- - -bool GetDevNodeLocationPaths(const std::wstring &pnp_device_id, - std::string &out_acpi_path, - std::string &out_pci_path) { - DEVINST dn = LocateDevNode(pnp_device_id); - if (!dn) return false; - - std::vector paths; - if (!GetDevNodeStringListProperty(dn, DEVPKEY_LocationPaths, paths)) - return false; - - for (const auto &path : paths) { - if (path.find("ACPI") == 0 && out_acpi_path.empty()) - out_acpi_path = FormatAcpiPath(path); - if (path.find("PCIROOT") == 0 && out_pci_path.empty()) - out_pci_path = FormatPciPath(path); - } - return !out_acpi_path.empty() || !out_pci_path.empty(); -} - -bool GetDevNodePCIeInfo(const std::wstring &pnp_device_id, - int &out_pcie_gen, - int &out_pcie_width) { - DEVINST dn = LocateDevNode(pnp_device_id); - if (!dn) return false; - - uint32_t speed = 0, width = 0; - bool got_speed = GetDevNodeUInt32Property(dn, DEVPKEY_PCIe_CurrentLinkSpeed, speed); - bool got_width = GetDevNodeUInt32Property(dn, DEVPKEY_PCIe_CurrentLinkWidth, width); - - if (got_speed) out_pcie_gen = static_cast(speed); - if (got_width) out_pcie_width = static_cast(width); - - return got_speed || got_width; -} diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 408c939..332a8c0 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -9,6 +9,7 @@ #include #include +#include // #pragma comment(lib, ...) is MSVC-only; mingw ignores it. Linking is // handled by CMakeLists.txt (target_link_libraries ... ole32 oleaut32 wbemuuid). @@ -43,48 +44,54 @@ class Bstr { // ---- VARIANT -> fixed UTF-8 slot ---- // Writes a null-terminated UTF-8 rendering of vt into dst[0..dst_size-1]. -// Missing/null/empty -> "". Never overflows. +// Missing/null/empty -> "". Overlong values are truncated cleanly at +// dst_size-1 (WideCharToMultiByte fails rather than truncates when the +// output doesn't fit, so we convert into a temp buffer first). +static void WideToUtf8Slot(const wchar_t *src, char *dst, int dst_size) { + dst[0] = '\0'; + if (!src) return; + + int needed = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); + if (needed <= 0) return; + + if (needed <= dst_size) { + WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); + return; + } + + // Value exceeds the slot: convert fully into a temp buffer, then copy + // the prefix. Walk back from the cut point to avoid splitting a UTF-8 + // multi-byte sequence (continuation bytes have the high bits 10xxxxxx). + std::string tmp(needed - 1, '\0'); + WideCharToMultiByte(CP_UTF8, 0, src, -1, tmp.data(), needed, nullptr, nullptr); + + int cut = dst_size - 1; + while (cut > 0 && (static_cast(tmp[cut]) & 0xC0) == 0x80) + --cut; + + std::memcpy(dst, tmp.data(), cut); + dst[cut] = '\0'; +} + static void VariantToUtf8Slot(VARIANT &vt, char *dst, int dst_size) { if (dst_size <= 0) return; dst[0] = '\0'; if (vt.vt == VT_NULL || vt.vt == VT_EMPTY) return; - HRESULT hr; - BSTR bstr = nullptr; - if (vt.vt == VT_BSTR) { - bstr = vt.bstrVal; - } else { - VARIANT vtBstr; - VariantInit(&vtBstr); - hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); - if (FAILED(hr)) { - VariantClear(&vtBstr); - return; - } - bstr = vtBstr.bstrVal; - // Convert into dst, then clear. - if (bstr) { - int len = WideCharToMultiByte(CP_UTF8, 0, bstr, -1, nullptr, 0, nullptr, nullptr); - if (len > 0) { - if (len > dst_size) len = dst_size; - WideCharToMultiByte(CP_UTF8, 0, bstr, -1, dst, len, nullptr, nullptr); - dst[dst_size - 1] = '\0'; - } - } - VariantClear(&vtBstr); + WideToUtf8Slot(vt.bstrVal, dst, dst_size); return; } - // VT_BSTR fast path. - if (bstr) { - int len = WideCharToMultiByte(CP_UTF8, 0, bstr, -1, nullptr, 0, nullptr, nullptr); - if (len > 0) { - if (len > dst_size) len = dst_size; - WideCharToMultiByte(CP_UTF8, 0, bstr, -1, dst, len, nullptr, nullptr); - dst[dst_size - 1] = '\0'; - } + VARIANT vtBstr; + VariantInit(&vtBstr); + HRESULT hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); + if (FAILED(hr)) { + VariantClear(&vtBstr); + return; } + WideToUtf8Slot(vtBstr.bstrVal, dst, dst_size); + VariantClear(&vtBstr); } // ---- public entry ---- @@ -101,9 +108,7 @@ extern "C" __declspec(dllexport) int get_wmi_data(const char *wmi_class, if (max_rows > WMI_MAX_ROWS) max_rows = WMI_MAX_ROWS; if (!namespace_str || !*namespace_str) namespace_str = "ROOT\\CIMV2"; - // ponytail: per-call CoInitializeEx. Idempotent via RPC_E_CHANGED_MODE. - // Switch to a process-wide RAII guard if profiling shows COM init in the - // hot path; today it isn't. + // Per-call CoInitializeEx. Idempotent via RPC_E_CHANGED_MODE. HRESULT hr = CoInitializeEx(nullptr, COINIT_MULTITHREADED); if (FAILED(hr) && hr != RPC_E_CHANGED_MODE) return -1; bool did_init = (hr != RPC_E_CHANGED_MODE && hr != S_FALSE); diff --git a/src/hwprobe/util/location_paths.py b/src/hwprobe/util/location_paths.py index 7aa947c..fb5e043 100644 --- a/src/hwprobe/util/location_paths.py +++ b/src/hwprobe/util/location_paths.py @@ -1,70 +1,24 @@ -from ctypes import ( - Structure, - WinDLL, - byref, - c_buffer, - c_char, - c_ulong, - c_ushort, - c_wchar_p, - sizeof, -) +""" +Thin ctypes wrapper over cfgmgr32.dll device-node properties. + +Public API (used by core/windows/graphics.py and core/windows/network.py): + get_location_paths(pnp_device_id) -> list[str] | None + fetch_pcie_info(pnp_device_id) -> (speed, width) | None + +Internal: one _get_devnode_property(pnp_id, key) -> bytes | None handles the +two-call buffer sizing pattern. Decoders for string-list and uint32 are +module-level. DEVPROPKEY constants are built once at import, not per call. +""" + +from ctypes import Structure, WinDLL, byref, c_buffer, c_char, c_ulong, c_ushort, c_wchar_p, sizeof from typing import Optional -cfgmgr = WinDLL("cfgmgr32.dll") - -# DEVPKEY definitions -location_paths_key = [ - "location_paths", - 0xA45C254E, - 0xDF1C, - 0x4EFD, - [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], - 37, -] - -bus_number_key = [ - "bus_number", - 0xA45C254E, - 0xDF1C, - 0x4EFD, - [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], - 23, -] - -device_address_key = [ - "device_address", - 0xA45C254E, - 0xDF1C, - 0x4EFD, - [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], - 30, -] - -pcie_link_speed_key = [ - "current_link_speed", - 0x3AB22E31, - 0x8264, - 0x4B4E, - [0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62], - 9, -] - -pcie_link_width_key = [ - "current_link_width", - 0x3AB22E31, - 0x8264, - 0x4B4E, - [0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62], - 10, -] +_cfgmgr = WinDLL("cfgmgr32.dll") +# ---- ctypes structs (built once) ---- -class GUID(Structure): - """ - Source: https://github.com/tpn/winsdk-10/blob/master/Include/10.0.10240.0/shared/guiddef.h#L22-L26 - """ +class GUID(Structure): _fields_ = [ ("Data1", c_ulong), ("Data2", c_ushort), @@ -74,241 +28,142 @@ class GUID(Structure): class DEVPROPKEY(Structure): - """ - Source: https://github.com/tpn/winsdk-10/blob/master/Include/10.0.10240.0/um/devpropdef.h#L118-L124 - """ - _fields_ = [("fmtid", GUID), ("pid", c_ulong)] -def get_device_instance(pnp_device_id: str) -> c_ulong: - """ - Get the device node instance (dnDevInst) from a PNP Device ID. - - Args: - pnp_device_id: The PNP Device ID string (e.g., "PCI\\VEN_8086&DEV_9A09&...") - - Returns: - Device node instance handle, or None if not found - """ - dev_node = c_ulong() - - result = cfgmgr.CM_Locate_DevNodeW( - byref(dev_node), - c_wchar_p(pnp_device_id), - c_ulong(0), # CM_LOCATE_DEVNODE_NORMAL +def _key(data1, data2, data3, data4_bytes, pid) -> DEVPROPKEY: + return DEVPROPKEY( + fmtid=GUID(Data1=data1, Data2=data2, Data3=data3, Data4=bytes(data4_bytes)), + pid=pid, ) - if result != 0: # CR_SUCCESS - return None - return dev_node +# ---- DEVPROPKEY constants (module-level, built once) ---- +# Source: DEVPKEY_Device_LocationPaths, DEVPKEY_Device_BusNumber, +# DEVPKEY_Device_Address, DEVPKEY_PCIExpress_CurrentLinkSpeed/Width +_LOCATION_PATHS = _key(0xA45C254E, 0xDF1C, 0x4EFD, [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], 37) +_BUS_NUMBER = _key(0xA45C254E, 0xDF1C, 0x4EFD, [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], 23) +_DEVICE_ADDRESS = _key(0xA45C254E, 0xDF1C, 0x4EFD, [0x80, 0x20, 0x67, 0xD1, 0x46, 0xA8, 0x50, 0xE0], 30) +_PCIE_LINK_SPEED = _key(0x3AB22E31, 0x8264, 0x4B4E, [0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62], 9) +_PCIE_LINK_WIDTH = _key(0x3AB22E31, 0x8264, 0x4B4E, [0x9A, 0xF5, 0xA8, 0xD2, 0xD8, 0xE3, 0x3E, 0x62], 10) -def CM_Get_DevNode_PropertyW( - dnDevInst=c_ulong(), - propKey=None, - propType=c_ulong(), - propBuff=None, - propBuffSize=c_ulong(), -): - if propKey is None: - return None +# CR_SUCCESS = 0, CR_BUFFER_SMALL = 0x1A, CR_NO_SUCH_DEVNODE = 0x02 +_CR_SUCCESS = 0 +_CR_BUFFER_SMALL = 0x1A - status = cfgmgr.CM_Get_DevNode_PropertyW( - dnDevInst, - byref(propKey), - byref(propType), - propBuff, - byref(propBuffSize), - c_ulong(0), - ) - if status == 0x02: # Ran out of memory - return None +# ---- core: locate devnode + get property (two-call pattern) ---- - """ - Buffer is just barely not big enough - try again with a larger buffer - """ - if status == 0x1A or propBuff is None: - return CM_Get_DevNode_PropertyW( - dnDevInst, - propKey, - propType, - propBuff=c_buffer(b"", sizeof(c_ulong) * propBuffSize.value), - propBuffSize=propBuffSize, - ) - - return (propType, propBuff, propBuffSize) - - -def decode_location_paths(raw_bytes: bytes) -> list[str]: - """ - Decode the raw location paths bytes into a list of strings. - - Args: - raw_bytes: The raw bytes returned from CM_Get_DevNode_PropertyW - - Returns: - List of location path strings - """ - text = raw_bytes.decode("utf-16-le", errors="ignore") - - paths = [p for p in text.split("\x00") if p] - - return paths +def _locate_devnode(pnp_device_id: str) -> Optional[c_ulong]: + """Get the device node instance handle from a PNP Device ID string.""" + dev_node = c_ulong() + result = _cfgmgr.CM_Locate_DevNodeW( + byref(dev_node), + c_wchar_p(pnp_device_id), + c_ulong(0), # CM_LOCATE_DEVNODE_NORMAL + ) + return dev_node if result == _CR_SUCCESS else None -def decode_uint32(raw_bytes: bytes) -> Optional[int]: +def _get_devnode_property(pnp_device_id: str, prop_key: DEVPROPKEY) -> Optional[bytes]: """ - Decode a 32-bit unsigned integer from raw bytes. - - Args: - raw_bytes: The raw bytes returned from CM_Get_DevNode_PropertyW - - Returns: - Integer value, or None if decoding fails + Fetch a raw property buffer from CM_Get_DevNode_PropertyW. + Two-call pattern: query size, alloc, query data. + Returns raw bytes or None if the property doesn't exist / lookup fails. """ - try: - return int.from_bytes(raw_bytes[:4], byteorder="little") - except Exception: + dn = _locate_devnode(pnp_device_id) + if dn is None: return None + prop_type = c_ulong() + buf_size = c_ulong(0) -def _fetch_property(pnp_device_id: str, key_def: list): # type: ignore[type-arg] - """ - Generic property fetcher using CM_Get_DevNode_PropertyW. - - Args: - pnp_device_id: The PNP Device ID string - key_def: List containing [name, Data1, Data2, Data3, Data4_list, pid] - - Returns: - Tuple of (propType, buffer, propBuffSize) or None - """ - mGUID = GUID( - Data1=c_ulong(key_def[1]), - Data2=c_ushort(key_def[2]), - Data3=c_ushort(key_def[3]), - Data4=bytes(key_def[4]), + # First call: get required buffer size. + status = _cfgmgr.CM_Get_DevNode_PropertyW( + dn, byref(prop_key), byref(prop_type), None, byref(buf_size), c_ulong(0) ) - - dpKey = DEVPROPKEY(fmtid=mGUID, pid=c_ulong(key_def[5])) - - dnDevInst = get_device_instance(pnp_device_id) - - if dnDevInst is None: + if status == _CR_SUCCESS: + # Property exists with zero-size payload (rare). Return empty. + return b"" + if status != _CR_BUFFER_SMALL: + return None # CR_NO_SUCH_DEVNODE or other failure + + # Second call: fill the buffer. + buf = c_buffer(buf_size.value) + status = _cfgmgr.CM_Get_DevNode_PropertyW( + dn, byref(prop_key), byref(prop_type), buf, byref(buf_size), c_ulong(0) + ) + if status != _CR_SUCCESS: return None + return buf.raw - return CM_Get_DevNode_PropertyW(dnDevInst, dpKey) +# ---- decoders ---- -def get_location_paths(pnp_device_id: str) -> Optional[list[str]]: - """ - Get the location paths for a PNP device. +def _decode_string_list(raw: bytes) -> list[str]: + """Decode a REG_MULTI_SZ-style buffer (UTF-16-LE, NUL-separated strings).""" + text = raw.decode("utf-16-le", errors="ignore") + return [p for p in text.split("\x00") if p] - Args: - pnp_device_id: The PNP Device ID string - Returns: - List of location path strings, or None if not found - """ - result = _fetch_property(pnp_device_id, location_paths_key) - - if result is None: +def _decode_uint32(raw: bytes) -> Optional[int]: + """Decode a 32-bit unsigned integer from little-endian bytes.""" + if len(raw) < 4: return None + return int.from_bytes(raw[:4], byteorder="little") - raw_bytes = result[1].raw - return decode_location_paths(raw_bytes) - - -def get_bus_number(pnp_device_id: str) -> Optional[str]: - """ - Get the bus number for a PNP device. - - Args: - pnp_device_id: The PNP Device ID string - Returns: - Bus number as string, or None if not found - """ - result = _fetch_property(pnp_device_id, bus_number_key) +# ---- public API ---- - if result is None: +def get_location_paths(pnp_device_id: str) -> Optional[list[str]]: + """Get the location paths for a PNP device. Returns list of raw path + strings (e.g. ['ACPI(_SB_)#ACPI(PCI0)#...', 'PCIROOT(0)#PCI(1C05)#...']) + or None if the property doesn't exist. Caller formats via + core.windows.common.format_acpi_path / format_pci_path.""" + raw = _get_devnode_property(pnp_device_id, _LOCATION_PATHS) + if raw is None: return None + return _decode_string_list(raw) - raw_bytes = result[1].raw - value = decode_uint32(raw_bytes) - return str(value) if value is not None else None - - -def get_device_address(pnp_device_id: str) -> Optional[str]: - """ - Get the device address for a PNP device. - - Args: - pnp_device_id: The PNP Device ID string - - Returns: - Device address as string, or None if not found - """ - result = _fetch_property(pnp_device_id, device_address_key) - if result is None: +def fetch_pcie_info(pnp_device_id: str) -> Optional[tuple[Optional[int], Optional[int]]]: + """Fetch PCIe link speed (gen) and width for a PNP device. + Returns (speed, width) where either may be None if that property is + absent. Returns None only if both lookups fail.""" + speed_raw = _get_devnode_property(pnp_device_id, _PCIE_LINK_SPEED) + width_raw = _get_devnode_property(pnp_device_id, _PCIE_LINK_WIDTH) + speed = _decode_uint32(speed_raw) if speed_raw is not None else None + width = _decode_uint32(width_raw) if width_raw is not None else None + if speed is None and width is None: return None + return (speed, width) - raw_bytes = result[1].raw - value = decode_uint32(raw_bytes) - return str(value) if value is not None else None - - -def get_pcie_link_speed(pnp_device_id: str) -> Optional[int]: - result = _fetch_property(pnp_device_id, pcie_link_speed_key) - if result is None: +def get_bus_number(pnp_device_id: str) -> Optional[str]: + """Get the bus number for a PNP device as a string, or None.""" + raw = _get_devnode_property(pnp_device_id, _BUS_NUMBER) + if raw is None: return None - raw_bytes = result[1].raw - return decode_uint32(raw_bytes) + val = _decode_uint32(raw) + return str(val) if val is not None else None -def get_pcie_link_width(pnp_device_id: str) -> Optional[int]: - result = _fetch_property(pnp_device_id, pcie_link_width_key) - if result is None: +def get_device_address(pnp_device_id: str) -> Optional[str]: + """Get the device address for a PNP device as a string, or None.""" + raw = _get_devnode_property(pnp_device_id, _DEVICE_ADDRESS) + if raw is None: return None - raw_bytes = result[1].raw - return decode_uint32(raw_bytes) + val = _decode_uint32(raw) + return str(val) if val is not None else None def fetch_device_properties( pnp_device_id: str, ) -> tuple[Optional[list[str]], Optional[str], Optional[str]]: - """ - Fetch location paths, bus number, and device address in one call. - - Args: - pnp_device_id: The PNP Device ID string - - Returns: - Tuple of (location_paths, bus_number, device_address) - """ + """Fetch location paths, bus number, and device address in one call.""" return ( get_location_paths(pnp_device_id), get_bus_number(pnp_device_id), get_device_address(pnp_device_id), ) - - -def fetch_pcie_info(pnp_device_id: str) -> Optional[tuple[Optional[int], Optional[int]]]: - """ - Fetch PCIe link speed and width for a PNP device. - - Args: - pnp_device_id: The PNP Device ID string - """ - speed = get_pcie_link_speed(pnp_device_id) - width = get_pcie_link_width(pnp_device_id) - - if speed is None and width is None: - return None - - return (speed, width) diff --git a/tests/core/windows/test_graphics.py b/tests/core/windows/test_graphics.py index 6e8cb72..1c10c54 100644 --- a/tests/core/windows/test_graphics.py +++ b/tests/core/windows/test_graphics.py @@ -1,13 +1,14 @@ """ Tests for hwprobe.core.windows.graphics -Strategy: patch the binding import so we never load the real device_info.dll. -We build fake GPUProperties dataclass instances that mirror the real binding. - -The module under test (hwprobe.core.windows.graphics) only depends on the -binding module, but importing it via the package triggers __init__.py which -chains into Win32-only ctypes structs. We use importlib to load the module -directly, bypassing the package __init__. +Strategy: patch the binding + util modules so we never load the real DLLs. +We build fake GPURaw dataclass instances that mirror the real binding, and +mock util.location_paths + core.windows.common for location/PCIe formatting. + +The module under test (hwprobe.core.windows.graphics) depends on the binding +module and util.location_paths, both of which touch Win32-only DLLs. We patch +both via sys.modules and load graphics.py directly via importlib, bypassing +the package __init__. """ import importlib @@ -21,6 +22,7 @@ from hwprobe.models.status_models import StatusType _MODULE_PATH = pathlib.Path(__file__).resolve().parents[3] / "src" / "hwprobe" / "core" / "windows" / "graphics.py" +_COMMON_PATH = pathlib.Path(__file__).resolve().parents[3] / "src" / "hwprobe" / "core" / "windows" / "common.py" def _load_graphics_module(): @@ -35,63 +37,103 @@ def _load_graphics_module(): return mod +def _load_common_module(): + """Load common.py directly (format_acpi_path / format_pci_path) without + triggering core.windows.__init__ which chains into legacy imports.""" + mod_name = "hwprobe.core.windows.common" + if mod_name in sys.modules: + return sys.modules[mod_name] + spec = importlib.util.spec_from_file_location(mod_name, _COMMON_PATH) + mod = importlib.util.module_from_spec(spec) + sys.modules[mod_name] = mod + spec.loader.exec_module(mod) + return mod + + +# ---- Fake binding: GPURaw with raw fields only ---- + @dataclass -class FakeGPUProperties: +class FakeGPURaw: name: str - manufacturer: str vendor_id: int device_id: int - subsystem_vendor_id: int - subsystem_device_id: int - acpi_path: Optional[str] = None - pci_path: Optional[str] = None - vram_mb: int = 0 - pcie_gen: int = 0 - pcie_width: int = 0 + subsystem_id: int + dedicated_video_memory_bytes: int + pnp_device_id: Optional[str] = None + vram_bytes: int = 0 def _gpu( name="NVIDIA GeForce RTX 4090", - manufacturer="NVIDIA", vendor_id=0x10DE, device_id=0x2684, - subsystem_vendor_id=0x1043, - subsystem_device_id=0x8888, - acpi_path=r"\_SB.PCI0.PEG0.PEGP", - pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)", - vram_mb=24576, - pcie_gen=4, - pcie_width=16, -) -> FakeGPUProperties: - return FakeGPUProperties( + # subsystem_id encodes vendor (high 16) + device (low 16) + # 0x10438888 -> subsystem_vendor=0x1043, subsystem_device=0x8888 + subsystem_id=0x10438888, + dedicated_video_memory_bytes=24576 * 1024 * 1024, + pnp_device_id=r"PCI\VEN_10DE&DEV_2684&SUBSYS_10438888&REV_A1", + vram_bytes=0, +) -> FakeGPURaw: + return FakeGPURaw( name=name, - manufacturer=manufacturer, vendor_id=vendor_id, device_id=device_id, - subsystem_vendor_id=subsystem_vendor_id, - subsystem_device_id=subsystem_device_id, - acpi_path=acpi_path, - pci_path=pci_path, - vram_mb=vram_mb, - pcie_gen=pcie_gen, - pcie_width=pcie_width, + subsystem_id=subsystem_id, + dedicated_video_memory_bytes=dedicated_video_memory_bytes, + pnp_device_id=pnp_device_id, + vram_bytes=vram_bytes, ) -def _patch_binding(gpu_list): - mock_module = MagicMock() - mock_module.get_gpu_info.return_value = gpu_list - mock_module.GPUProperties = FakeGPUProperties +# ---- Mock helpers for location_paths + common ---- + +_DEFAULT_PATHS = [ + r"ACPI(_SB_)#ACPI(PCI0)#ACPI(PEG0)#ACPI(PEGP)", + r"PCIROOT(0)#PCI(1C05)#PCI(0000)", +] +_DEFAULT_PCIE = (4, 16) +# Sentinel so callers can pass pcie=None explicitly (distinct from "use default"). +_UNSET = object() + + +def _patch_modules(gpu_list, paths=None, pcie=_UNSET): + """Patch gpu_info binding + util.location_paths + core.windows.common.""" + if paths is None: + paths = _DEFAULT_PATHS + if pcie is _UNSET: + pcie = _DEFAULT_PCIE + + gpu_mock = MagicMock() + gpu_mock.get_gpu_info.return_value = gpu_list + gpu_mock.GPURaw = FakeGPURaw + + loc_mock = MagicMock() + loc_mock.get_location_paths.return_value = paths + loc_mock.fetch_pcie_info.return_value = pcie + + common_mock = MagicMock() + # Use the real format functions so path formatting is exercised. + common_mod = _load_common_module() + common_mock.format_acpi_path.side_effect = common_mod.format_acpi_path + common_mock.format_pci_path.side_effect = common_mod.format_pci_path + return patch.dict( "sys.modules", - {"hwprobe.interops.win.bindings.gpu_info": mock_module}, + { + "hwprobe.interops.win.bindings.gpu_info": gpu_mock, + "hwprobe.util.location_paths": loc_mock, + "hwprobe.core.windows.common": common_mock, + }, ) -def _run(gpu_list): - sys.modules.pop("hwprobe.interops.win.bindings.gpu_info", None) - sys.modules.pop("hwprobe.core.windows.graphics", None) - with _patch_binding(gpu_list): +def _run(gpu_list, paths=None, pcie=None): + for m in ("hwprobe.interops.win.bindings.gpu_info", + "hwprobe.util.location_paths", + "hwprobe.core.windows.common", + "hwprobe.core.windows.graphics"): + sys.modules.pop(m, None) + with _patch_modules(gpu_list, paths, pcie): mod = _load_graphics_module() return mod.fetch_graphics_info() @@ -111,30 +153,32 @@ def test_single_gpu_success(self): assert gpu.subsystem_manufacturer == "0x1043" assert gpu.subsystem_model == "0x8888" - def test_vram_populated(self): - info = _run([_gpu(vram_mb=24576)]) + def test_vram_populated_from_dxgi(self): + info = _run([_gpu(dedicated_video_memory_bytes=24576 * 1024 * 1024)]) + gpu = info.modules[0] + assert gpu.vram is not None + assert gpu.vram.capacity == 24576 + + def test_vram_registry_fallback_wins(self): + info = _run([_gpu( + dedicated_video_memory_bytes=4096 * 1024 * 1024, + vram_bytes=24576 * 1024 * 1024, + )]) gpu = info.modules[0] assert gpu.vram is not None assert gpu.vram.capacity == 24576 def test_pcie_fields_populated(self): - info = _run([_gpu(pcie_gen=4, pcie_width=16)]) + info = _run([_gpu()], pcie=(4, 16)) gpu = info.modules[0] assert gpu.pcie_gen == 4 assert gpu.pcie_width == 16 def test_acpi_and_pci_paths_populated(self): - info = _run( - [ - _gpu( - acpi_path=r"\_SB.PCI0.PEG0.PEGP", - pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)", - ) - ] - ) + info = _run([_gpu()]) gpu = info.modules[0] - assert gpu.acpi_path == r"\_SB.PCI0.PEG0.PEGP" - assert gpu.pci_path == "PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)" + assert gpu.acpi_path == r"\_SB_.PCI0.PEG0.PEGP" + assert gpu.pci_path == "PciRoot(0x0)/Pci(0x1C,0x5)/Pci(0x0,0x0)" def test_return_type_is_graphics_info(self): from hwprobe.models.gpu_models import GraphicsInfo @@ -147,21 +191,15 @@ class TestMultipleGPUs: def test_igpu_plus_dgpu(self): igpu = _gpu( name="Intel UHD Graphics 630", - manufacturer="Intel", vendor_id=0x8086, device_id=0x3E92, - vram_mb=0, - pcie_gen=0, - pcie_width=0, + dedicated_video_memory_bytes=0, ) dgpu = _gpu( name="NVIDIA GeForce RTX 3080", - manufacturer="NVIDIA", vendor_id=0x10DE, device_id=0x2206, - vram_mb=10240, - pcie_gen=4, - pcie_width=16, + dedicated_video_memory_bytes=10240 * 1024 * 1024, ) info = _run([igpu, dgpu]) @@ -170,8 +208,8 @@ def test_igpu_plus_dgpu(self): assert info.modules[1].name == "NVIDIA GeForce RTX 3080" def test_dual_amd_gpus(self): - gpu1 = _gpu(name="AMD Radeon RX 7900 XTX", manufacturer="AMD", vendor_id=0x1002, device_id=0x744C) - gpu2 = _gpu(name="AMD Radeon RX 7900 XT", manufacturer="AMD", vendor_id=0x1002, device_id=0x744C) + gpu1 = _gpu(name="AMD Radeon RX 7900 XTX", vendor_id=0x1002, device_id=0x744C) + gpu2 = _gpu(name="AMD Radeon RX 7900 XT", vendor_id=0x1002, device_id=0x744C) info = _run([gpu1, gpu2]) assert len(info.modules) == 2 @@ -179,35 +217,46 @@ def test_dual_amd_gpus(self): class TestZeroAndMissingFields: def test_zero_vram_results_in_none(self): - info = _run([_gpu(vram_mb=0)]) + info = _run([_gpu(dedicated_video_memory_bytes=0, vram_bytes=0)]) assert info.modules[0].vram is None - def test_zero_pcie_gen_results_in_none(self): - info = _run([_gpu(pcie_gen=0)]) + def test_none_pcie_returns_none(self): + info = _run([_gpu()], pcie=None) assert info.modules[0].pcie_gen is None - - def test_zero_pcie_width_results_in_none(self): - info = _run([_gpu(pcie_width=0)]) assert info.modules[0].pcie_width is None - def test_none_acpi_path_preserved(self): - info = _run([_gpu(acpi_path=None)]) - assert info.modules[0].acpi_path is None + def test_no_pnp_device_id_skips_location_lookup(self): + info = _run([_gpu(pnp_device_id=None)]) + gpu = info.modules[0] + assert gpu.acpi_path is None + assert gpu.pci_path is None - def test_none_pci_path_preserved(self): - info = _run([_gpu(pci_path=None)]) - assert info.modules[0].pci_path is None + def test_empty_location_paths(self): + info = _run([_gpu()], paths=[]) + gpu = info.modules[0] + assert gpu.acpi_path is None + assert gpu.pci_path is None class TestFailurePaths: def test_runtime_error_returns_failed(self): - mock_module = MagicMock() - mock_module.get_gpu_info.side_effect = RuntimeError("get_gpu_info() failed (C library returned -1)") - - sys.modules.pop("hwprobe.interops.win.bindings.gpu_info", None) - sys.modules.pop("hwprobe.core.windows.graphics", None) - - with patch.dict("sys.modules", {"hwprobe.interops.win.bindings.gpu_info": mock_module}): + gpu_mock = MagicMock() + gpu_mock.get_gpu_info.side_effect = RuntimeError("get_gpu_info() failed (C library returned -1)") + + loc_mock = MagicMock() + common_mock = MagicMock() + + for m in ("hwprobe.interops.win.bindings.gpu_info", + "hwprobe.util.location_paths", + "hwprobe.core.windows.common", + "hwprobe.core.windows.graphics"): + sys.modules.pop(m, None) + + with patch.dict("sys.modules", { + "hwprobe.interops.win.bindings.gpu_info": gpu_mock, + "hwprobe.util.location_paths": loc_mock, + "hwprobe.core.windows.common": common_mock, + }): mod = _load_graphics_module() info = mod.fetch_graphics_info() @@ -233,7 +282,11 @@ def test_device_id_hex_format(self): assert info.modules[0].device_id == "0x2684" def test_subsystem_ids_hex_format(self): - info = _run([_gpu(subsystem_vendor_id=0x1043, subsystem_device_id=0x8888)]) + info = _run([_gpu(subsystem_id=0x10438888)]) gpu = info.modules[0] assert gpu.subsystem_manufacturer == "0x1043" assert gpu.subsystem_model == "0x8888" + + def test_unknown_vendor_uses_hex(self): + info = _run([_gpu(vendor_id=0x1234)]) + assert info.modules[0].manufacturer == "0x1234" From cdeabf0e79490b7840542b2c8a9c9d3466cfeee6 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 23:18:25 +0530 Subject: [PATCH 10/33] Update gpu_info.cpp --- src/hwprobe/interops/win/src/gpu_info.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/hwprobe/interops/win/src/gpu_info.cpp b/src/hwprobe/interops/win/src/gpu_info.cpp index 2484709..7ee013e 100644 --- a/src/hwprobe/interops/win/src/gpu_info.cpp +++ b/src/hwprobe/interops/win/src/gpu_info.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include From 3d448435bb2dcd2fad7341614890a659215a7225 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 23:25:45 +0530 Subject: [PATCH 11/33] Delete device_info.dll --- .../interops/win/bindings/device_info.dll | Bin 680802 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/hwprobe/interops/win/bindings/device_info.dll diff --git a/src/hwprobe/interops/win/bindings/device_info.dll b/src/hwprobe/interops/win/bindings/device_info.dll deleted file mode 100644 index d180dee4317e0a77b706e8c0908506378a6f5500..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680802 zcmeFadwdi{);B(r1PC`fD8YCoXw;yn$ts#a#0;5W4@@8sL=+ViMN~wT8G;vNaAqLA z?Oq>XITp9Skz1`(niC_LJ6@L%@CxpjG4X!)N^?dI) zhOBh^-xxA^_Kov%=iPqm4Yyx&OYY2T=FYt}kbCX*xwi-B=H56r*E^vq_m*3)yZ)U1 z{rluupexH=uIrW_<9dD1EjPK=rn^4Lce(bsPS5R|mUfP7YMRSspdx-;N8|r2Hu~-w z;w!FEPQ3ZAhp2>$T9ov3xz2l`55_ga?Q-SvvDMabAz+Co670Nm*96{%(p_r?$a3*_ zPnxUfe8>H>>8>2RQ%A9V`Nw~zxiExI|3Z;;SFJ$2(<4!EPT=~50bX&;#Erighx1>q z%QfSi>#hl0gTi`@%ry^n@Sp2y{z?8T#p82smlZ2#qdbJ?H{o|ir+TI5%#-!R7%^7Y z1*o^Ni+T%Xy)_(M0S0m=enDa9zfza0^qgzw&u3W+@tcwQoaOu%B7WCPc!K7jy%@)t zsr5?S>*w4$(Q?V{d!g{4E1nP>;O#k1pyJ z%YOIt!t;5k$MHPhMZLnp^YFwqiGM;?ziT?zD3+p1>lQI&s=RHOB())f3m)i0Wdc6zUHYnl?h z4mH(S|G5Bf{PS~{tC{TOQkR{#l6pi9zmh-g>giW`uJl~BZk96G3w+w#!A}Gxg z%p)%SBre|ufXhH-Fz{$nBF%u&0gv;5M{q~s7pgwod;)0n#6Y7TqF!@P_Gm=52!uWu z4}|i85Ngj+_3R%}SJnIP!jCaT7GH|uCRzLpi_=hS{G|m=zG&`AX;UJ1;Ct0ur7@jOUsdh!8e&^-t~X0+4wp8m$_P=EgDu>!fU-nEhNJ_{?9#M6SdSNroYS zBi_`uc(j3eeyuq;TJN#5Lh{5zcv`sGIQuh~%cr$!@2T2enmbWR8C>dGSDX6JbD3vK zLME2%Hb8EDO&%9xHM&97Uh`@HD%W07B1V6fY*r#4;ldLu#i$hJ5zN(^yh<_Y4>e}C zDA5KyjkYVxSFw6*`0_bvu8Qb}K&B^D?D8q)dkZ%gZfMUw7umXKi~mw^EvnU&Bc$a zJ^S7H>F7O@M{}rfvtRFj!DE7r2lGcmHIEdtW?4lx`V|^MC~Cg!2h{OoHaQRfLZe(t z^aWgilpAkO1NcV?9$*%#`hB7gHTICGE)iCBx2jFfE9FoG=Bhp!b#1JPF5$8umly4o zIp|kA8vP{z>hAW+tk4=UK6KyIR}3#8hOe_{uu^YTYiQ3t2FRc!pe}iZlV__9&()sk z>%ceQDgEqAU~t&odREyq6rKCDJ*&(gfyBS4`NpH4SYMe<(6rI`I0@!6oS zulP$P@_Ud?)%|%hEWV0mue=eOar?J!SA~A}x1id7W9Cj!Pk&y3@@e&09{fZ1_>1e6 zd*8wsL~Fm+W;~5HYPiX5SM?NsbI%ECbYJk{3Vo3PbUXk7K>Q`KE~qPs7ygC(?mcR_ zwTH4)x8ZqK_QV41v<_g-N)R<-wx!EB-r&zzf1 zJ^~%)aq##jC){Q!f2_x**=a5@{|T;EwLo5F`#aHkZJn}w5Ok2_E1QwPQ#N}gcxpSA z51V(iEA#RTHw%yee>=cij4OER9h-~Vv-^U#?K{rmR-gyA3LKrvQj<#w`*(7ZqwfcL zhekrK9tQCs)?eR1v2M7PVjaob4hS~eQL;H`&njvhKe$vr6%wAG9IXD3=(xT1kElj1 zQUW`1Whrhzq<@J3fQUV1=){LBo3tPY>>-)5=ltOFOkXn0kUM2PRE>uqF?WqTovAffS z-k$0Jc>ui)(6(H)Xa8l6Q_9wLAz)vZP{8gJMD=O=v4lW_a4ED0k-!`T1kTz`AV3qM zA%1=MbVAqmd)nV24WjG0Ab@Tp*ZrGt;|c$er9`eF;jre+R-r~IEwDW(C|OMz1t8dH z@%Z_?KguUhCZ7mZk2aJTw4tzAZH}_qP-gI?KKbMuT(Y0_@(BgTYV)4;gmQy6M)FC$ z^@NgxClng1%@fuW$_}1TY^*2ui6?9FC_Q*W!NHRvS73n(R;28plwu=GXRwr#gHj5O zEFH^I$_+{>GP3l1mQrd^N`aB3C$p3?1EQvhp87R~Tqgq!xt>^4h?#>05{B|}t4lz0 zS1t@g+!aHEDbW=_aLKkLNz~-sY(SOmcsC<)m$YL(BGcPSG-1M2-bCh-syk`ej1Z;w zNsT@7KCxgck)QTSW8qmsk5#&jyGFoPFi>jw2eJOAT}y5L^^N4Ib>?hX(2zsr#fT6~ za@?$Nt6Nzb!2?`nDpAfp*V`JvtcdPYA~)iZU%zP24G>vjE>+OVAp;koYI30~;9V#F z_O!oCnal%_Iw|FIU~$@T5>Sd;gy1O?8YO4}3~NF@+CwJB0sp3GJ5X|&+d*#I-hbbG z7iSR2OhIE*!W*9KAe+R=}=NOl|}oc zDuLCiH7U!7U|ikX7onfrE?6b`4zOgqdNh_`L5CE3^%;F$8Iie~iMS5bOVI zUjIp6YrKA#*V?-H8YlFBwh`tUNshoHBs?k8o?SpJm$Cl6{PRBljCHoGW=nK^F}sf9 zc@v!@EV}!yCr)3-PXrQK?D!;sggv9{jEk&31ziG5*e5UBv)7=dITzEJ>Mqx|pY}^U zsm1S|*6&T$?-kbXSn+Gy8;4*2&Y2SaDc0{VujRcBFWd%~YooG^i%Yoed}Y~F;$rB6 z(_^FGp*CB#5(OCUbI^k7%#0J$7!xNSn< z@xpr43b7sf3;w#WKK_+;9~=FTaBIJ610(zK8pp`Ix-Z{5(l>0;7~jkWkA;bv?#V^4 z!p6a?`SJs&mq+XG8DbYTvk$OFWtLYf%~_YE4=|XOyrcg)F-KXE=F`@f%vB=G(I{5g z5^C$MEPD*s<%RDTZt$#nyIY1;Y8Gnfl)MEWAeR^pQS1+Gd3FxJ63A6f? zuu(uWbg{CwerTgld1jN^@cF658y9U5tB1CJU9GnMyRGFglFHZPj`n42H0(hn;lU7+9o3h6@B{XoKVs9z_~L12G9|}0Eu)D z%3T2vz7idQ7;6!xnH^BVtqX!%;`M5{9-|nYLpUuk)hsx{mG%QU+u>L8<@^(#S6P98 z(Edq*qw#k_pr5L>B>MB}6IIXZT=ZNX8=dY6H>R;>x#Df~h*%!3wh^>f^Qedk__P); zgK?f5a|f42F+Pd&^x&~J&Y^|w>49vc0Qg}g^d?ba{rWUj^XC;1hH;dvaZ0$g_dVOF z*9vS{3Oi+;c!S_$i%hi)Bnw{CUc)c~m+6(62-Pm0uw?c5oCL_g;<9j~TdT~}vmme4 zi^FZ1)g!`fy#m+cDljA5maZ)Ag{tAUjNozM@Elya^#|E_NgFpCl;s+yA&k%>=Q}p` zJL#_Ywruxn4ZfA_i`#Gb3L@)|HUyi$Ye3x`__g>!Z^8B8UvL`Ck?2fJa(rbiVYPWW>-9tC=YiwgpAp*C#zo-C&Xi%5SF9HV8KQ5&Q&oLjCSqBBgiq7^8nYM;*V9#mRMN{bn{eZvpNWAK zO}pBP$9r@&2dKrNW&&ljFKu~oZzkAQRqyKuTU9a=m~V_1@Nk8x@Pn-?F$gVP)vB`0 zyRC5|o-G38)i1@@p|Q~yO$s;9QogEhF3S;PuX}K)ne29>%1RgQ!;Mh@OA`cK> z{XsTTW5asJPpAH7rPxF;HQf5*FI7!EF0Co)TUxW4GzeU+E@|UXl@+6cn`I;~OiBnU zKs=hlf)MQwk_M$UBg0`aYPI-VwK>eb@E^)0umOOwiUsjsT66`C#nzBbXX(QZ_bE*d-;@5wgSR?OM-7W3giFeq@54T=eU7*&vGhI11xI&!q#@n;7s0L4{0O7dc zuANnD>9vHsQBLR|K(e6?jTjjUHQ%F&55_B^`!DG3b;brV3 zWxi^}e8rbgUu6mE&qq%vRH8Sr%f$MToJVsa9ys*3ae_#^uUagxq->X zg{^>9@75X?sy=;EPH4pR;KeF5nNORP)J7764lkqE?|JH&3;;JT^g8z;xty$ZF|3;Gk)*+I-)WLsyo0dxcdsy<{sPIyY z|2|NgmnQj70t5ez?8JX6_ZV#cOYEnWhTEn=h`iWNjr(S~9>uFZsMyt;^v&E;6%~XdrsKuM^u2$WRo_(XUGALt#9-$F= zfyo}4RTrpr(=YK)813;-SBtZPXDBORF@2sFY8zR7g1X9`0W^?g0p+x5e&5i--s1zq zC7xO%P0ar27UpKDC5WY1a~j=*%Wf7w9^VS>{t@+^M<1xj)=GPVs|AdZP;phTT8(*N5|zOM_qZeVfqQTd zixT&1J?@y=654-m^-VC-(lHIouydpQdHwt=3OAQb4-PS31o#9$QEyezye^rpL|z3G zYa2!L-qkn9`fZN+Yg&po-QHV;y#jkY_!c5OerzLIHc3K1=;N}&A7=(D!#mu8ajFi0 zD~=9-UKVO|D-Sm+E3i47y=ppky<_**po>|xMQMS_pka}}xH0&3{O`3f_2tn1t*>~ecZ4L==x%B z@p>iJ7hU>iVzs}bfNldctv|gi*Jn{)E6evZ!`y`P2fwUbn+m6*tTehoiE>U<@D>aJ zcaz5>GMm0pET#UacRrvY#FDDm>=%y#LW|-^$dKTUaRugA)M?oZunA=QEcm? zx4`joQe1%n(j38j6qPFxI&x^7(v5L*Uk(&t&0!cAZR zdcd(RCGr781w}%EdKeiA8)Hfez(16+SoSFsJMj;!seJ5N+q5^iRDn;Oc&HX0XC(1> zVRw=wrs0rJXS*z`-D$~oi=6GAC9)3EGfdC%f*>~OE1dO19qK=8)z3@TKgn6Yl7q(h zav)z+<${$l(9j5<5p4kU*4YwBRf_iDZmVs=V4VYJi zvtsItAqdM!Ts;Nj2rXEZW1KXYt{d*4{pz?Dv;Ug7gIKEpmGl*Mc2$m;B(7NNU?L-Y zRf5P^9G5HA_p+C zY?u;Td?vlL^_Uh+khf-X-oxKEAAUPiE-uyo=r8t?lj> ztxPrNVz|Ib;4_^=7u;gwA#oT7*od8|%^qQ%HB%*`Gf!5tC+8?!nnTeL5}XD;*n=uI zJO#yau>y6wUhchUE*4?qSD>t*wMQs!nmM4_>riK%*6Qm0_OzTM5D{zj4#P3w*^W`2 zGgMHSf@)FM9tg%H2YC7{WB|JJtx<)`)L!NkbZn1fcYe1JGCD%YGzU5${Jnb!_g>!t zhYWKw#%bd)yL$-Ruj>Gzw^{3eaC-L;KI{mgk2&4}Vdoj$(&6ro5PF;a91wnlC*Bo@ z?Hqex4kOQ*&1h(o;;Qb^c%dU21I(xc!U^3&sOktI(<~$M(1)$qZKj^Du$iykxPF&| z`5r|*d%bk(oBIE-eUmf}d`jd|+1_{(@O;|dx>J(yvYqf$2RzGu4;$C0k1|w&0FPdk zKe7tiWX$QDosH~~YP}0yuY#%T$wEX%^18bW;s3H6^JcN_7(wr1cpkW;RR1C$uh?YbrOX<6Q(o&LI9A=Ud$v_`|sz@k(^IUcSYotK#UTo9n3maU& zt4Nr8UVXl5JP1bss~3!S*hbU~1)*YJ;23HJ&R7t>ay<)DUlvnvdb;NURdy!-nHscqt?krms>lrB#9Rk&4ev2ht__c}nNrA|8 zR$q3zLJa%6d}}xzeEWmD-Be95paXPP;Cj;A%#3UZTpl*h3GL6T9;9lYGngN33y$$e zcLaLEnko;BB(si#$1LX|FrQ3&E&-wZxlcs7s`U&^Q)BallO%u!pQ0baXg)3Mz$i7m zFvk_Z{>Li?iNFD$Gmf7hG*mcc;X6<49sE$AlsU9Yg&&%Z8q+2=Vr1APb2)O}Nz>?gUak+fQs15aKnn~FgCh%tfF zwQ*C?m)Lc|BE@|`7Aux-WXHcG2V=3i(|vgmTLg_TU8{0zE7|Bz>zbBDqmf3DK_{UR z<$>c0>-Uu%oe})KUNto~wmtqJkdyK!jhm{R_(u|7#CPH1aSsmh%}v3}5H4|t+5$>s zHOR4eVyJCyAP{Ps7sNExr(ySkn+}w67>oYAT;nD74+|i-?kbW`?mob{s}G(f;d`3h zT+PL(iq_4l4Yl17{10K(U4dfZn0a!*Hy}lkx%gueJ%k7JpV1uv+kNF5AMd4zvq%_k zfyadrQa4S&kpM;kfIY4Rx(*QZbsQj+$W<2pm>$xgT#1fj2`07fN@9V5npdMFK|kr8 z7C2-EiKGm|YVXGTz;0Es?Gl>`>a;Q1_E{$`aHqU z);^0B4+3_|iW~&SBFN!e&*oMf8us8+Hy)Ko-VdCL!nDx$3%HFc%cG2lcw%KOFq@bD z2F>6P5C09E9M4K0?g}^8dbNh3o3!-}#$fmQO|9-0ES_qtpU)rb_oh$pU36Sv(BjGH z%8T%g{a@H8sJKW}Mk{okg z>8-gk?_6U)tX)5p8uqpt5*>s)bbyx!5*YxK@|DO8z);ps&O6sGZg!ndGHEKdYzh$X zF-uV+^!-fux0n%WBZBl271qxad43IvdTo6`~`C$4wMhZ1R9!T9q0qngbEQLn!zg zm8eHt!6%Mh$Oh1wR|@}RPhAoE#68#Q4Igm&n#_TyQd{CxA_gvEl`kiBsK@BaH7?C5-LI!H^)HsM#@}BbR*(TsPY*bgU7{!x}r3V ze&LH50F2a$X8aPtr$BdzuTn!DDfJ=DeC`j}s?WA(e#5ev{}Hy#E_g-rbJgZCfP!#L zRlYU`%P`|_%{|AWM2X!j!C4U^!Jhiq9QQaCOMhs8Szumhzc+ZQ zvSOY)HXfnt9@WPp`+i<2qb?hKGyB!}-3{#@bKNc6XTAb5*7`*_wbYKM3VU(uXS8Sc zI0LEW?>k8u*yKkP)nxocS*yB3`(X?-CEgqJyyXeCW>i0hs}>H5@T8HpD5lQbBP=tE z7nt8;u|pXY%*~*aUC`VUkujGSJfdn-a?BIZ&nkcyi&he%61$LX4hl6p1u6^$mo{Dk zZ32l`L3mv8zpWxu#{aYmlH!X0R_>QQWUZ4zV%`D*azPN10uknmCvtq-VBM9Vp_n*E zLraVzn5kaaUnSUEQKG+MRRl+1FXz%|&NtRG9wg#;d_?n-wV_9lk3NB7ppAw(HxAnq zSTCzY-}V-T55%4xI6t%>5?L$()8x)I24aFhU8sGfCRcz(?3LO{c;U>8;iBs#UK{x? zm3YbdXzrp*rj;&Oh zAlkON$$$!dZ+yEIwYA2I==;H!pxd1CB(XG4N0&Cum9>>=v9WK3_Gc)|%FvHDHk#Z; zgPoWN(i*2w8|YP~f|lkoR6}^4p(XTV{*OfxvyNbyBm6a~3fE19K4Uc*S_{?39yCAVUpFmW&<=LRR*MkI_cQfiwq8~h+`Dkb6v z2uUW$3^sDGaMxRQ3YPs+$mwWz$?ZyH4ZxMmQzFB_qJ%LSj*@`Us6;XWgQ)`NDUpj% zE!=v(61fg#;nv|wG%nPHjJ`ysN~P@=EHVVLz%@4)i%NyoB9<5vDYe+bDkbXkf)7L6 zLS#iYS{euZFxqnwU{0aPp965?Z`@O*rx9kO{(JN5yGIbTuQUdU6?On|Ciht$SlFq#j`==Ve=bcY*#?~#{Wra#4{fJm8p7EZo|$kiHDHJ`<=B_|dobkSm+BqECSR9sZLf0cFMb9!gLm4WbcgbYUCH)BnX*A(XrHNdv=e z*qkXLf875es88*5BJPkLr$nQu0#fx3?Y~8dA3v?|fX6e3eQR;X7WE zd?(}5B457X$yriAM}pR`yq#oTbCeie2+uiwhXgSnP`J6~ z^9VnXukHJXKH$(wT_r&!`ZRR_%@V2)1kDZj2jZG+@_vF%N&%je`aT#gp&zg>jhq{| z68Q^&gj>^<$eoxb>iOI83oS><;*kU9<7`$-8q5Tx2Ef3?#D?0SI!*!Q!>!jTQ4=Ms z088*gc}XH|!KJM`D7pEn1kib~yg?7OBjTu{PelE6#z8!?N^?qZz+)IS>V-6D(gcDbeiuN1{_Ie%2+e*fK z7@F1MCr^%F~>L$ZE3kN$Op+Vv(dEVT;=}9h&l%QH3AS^8CK&SeiHLIqtBpDxb-%9o&YBX z%<>@GTijdY7_6~{N}UYUWURL@n~j%nDTXg}HFhAb1W3FMUU!kR?RT4`fknFkFu-KS zP83P89En1*-E}|={0vl8q6$Yv3`3B#l>8IKM#UZOslmPyy~s6SK+=(`(})yQCU=^cuwDQBWs0A)pk<6~{}N(8xBj=JHNJ zAF>`JG%A8HP3GCCgONjb_5_^x3Ja2j#AM+xqbgxykWJ=~;DkhP!|~X>1*8B3OwTSb zKZugnSw6WBmYAWL7VU&_2DhUM_YP;8`qJ{IMGUJb%Z^~ewYGzr!87AGi#S6vG@0`j zdZ$y|GjOIInk+5K51ggn<=B%q9$*kxgqpOw{K2&{gvAgg;~#QLX~Qy(DFOg^Ao9K4 zKo^W*MM4oNv!0rNd=t!`JPjedyPzD=dYS5j_>mVrnD$P1ySv0)e%u!b;2`nn(;q$I zS5IcaPEU9zZeBU5#C_ZsC=b7SV*EDh@75`>gFrQ0jZ-53#ucOv7KUJ7J6DJjwor*6 zEzqSkhIf1vYMY=$Rj!t0YH#3MGNFzq%LHZsaZH-=?HdUaA&&u3^4PpAVr1-w4yM7d z2DO=)gkEnaOUw0z(6rA1FaDyXS6SlKcChGi&R54^{xIWAtQ+7Nc)j&dD+p5r%Rpb- zCAC7ko~w{D!S;aH(<{1=`I)#M0N`~z_sF~$jA`|2TO%)WqQuyUrFoL5;RUtAyWGLw z0sAq5-1tMu{o`=!34yc1t;Yp>HupM_V+=PVkNYPjatm6j`o%n7<@n&X=3Xb^Vf^FT z=3acYF}}5=8uUaJ;zt5Tq`Qp~DUkxvRJa~W^iD;x>tkZB#N zen%;pyNG;EYt9uf5cU(tULYWCGfH1iOd9gdxobO51dqxCLrW$GP9s_uA>c20I{2zh zVn!1{+X$h$N+zm0x(Qq$4G?hTU8OWaz{H{+QAeNTZ`rNjZ$2^`UgO9TW(#IIncXtX zC`0(&nr6%~10fCc;jgxEkFc?fUMo?)Swa=E5WgMd-O67g?yqU@k~LwwATeEuYzCxI z8@!g@ViA}e4A74f5m1i&JQ!$zDSWH%*s0~fMt0){M~XzL&uv&sB`m&WBG-RHxQ2$k zU{WRW0xA%FOLH5qZWPete+;!%$n$YRZB=rePK0oV(5IB4>pS2c8JCLJMDGD4p1&}Q z2>J1{p%_kZiN(iU8^hZ_Dw!O-l(jGy+l;O6iOx*&m6dG7?S(|%*7=PHO^K(_N2I|8 zsA$2nCp}kAI#)1Nq-z=1BJ4_{zejdV4`ExBnsJm!zv~Jm`Xosw;&1Z(q>@XN$PcJM&+r@k@;n_(5LQyLh4&t-OD9E% zA`O_KL>PArurd}oUx{1@<1o~Aof5%Lr;RUH>RzCqFn;Xmr;CIs-2P*@RaK%mAp-iO z2)6b+v}y4_1bdtD&-KFRi4URP0-Zq(zW#wH-^ow_4JPE;1kQ`@3!Kc&fsxj1p2yjg z+t_}Y?k9Z+A%T{?i|YNXOq~0e=ZOwdD@l1qG03nK9ip@N!-)SgUWvVqJKd@h*+&8+ zCR8Nf`7y4hrO1`BIq-~(4Ll9TMoXKCrR7phbAi=*1!@Fci2PCF1szr>@+C4X5Fp}< zLDU+oi2YY6JZ@Uq`UYIzRRU4i@Rg+I59JD1=mTMKV@{wx62hl83mnZCD4-y(Dkt6S z$@_$#n?KSsY|(i#S;>dZYk#^gSMx9h=Gb9K4zO}huwMmYf@eHg9%P?jX1U~~hwe

n3^=mF=IrN+$n+Qvku|%p(QJdq$ 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≶IFUZm&*(97r~m1mThg`g<%z!t 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 From 16d175f37da1931207357649c2e2baba9046d6be Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 1 Aug 2026 17:56:38 +0000 Subject: [PATCH 12/33] build: update Windows native bindings [skip ci] --- src/hwprobe/interops/win/bindings/gpu_info.dll | Bin 0 -> 642031 bytes src/hwprobe/interops/win/bindings/wmi.dll | Bin 0 -> 681388 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/hwprobe/interops/win/bindings/gpu_info.dll create mode 100644 src/hwprobe/interops/win/bindings/wmi.dll diff --git a/src/hwprobe/interops/win/bindings/gpu_info.dll b/src/hwprobe/interops/win/bindings/gpu_info.dll new file mode 100644 index 0000000000000000000000000000000000000000..a0620680b571425e89f21919bd80f1632d45a1f5 GIT binary patch literal 642031 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

3P^-{74YSQIzj`hao-K;+21*)`$UJ5 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 Date: Sat, 1 Aug 2026 23:51:29 +0530 Subject: [PATCH 13/33] feat: rewrite windows memory discovery --- src/hwprobe/core/windows/memory.py | 159 ++++++++++------------------- 1 file changed, 54 insertions(+), 105 deletions(-) diff --git a/src/hwprobe/core/windows/memory.py b/src/hwprobe/core/windows/memory.py index 536dee0..892a6fb 100644 --- a/src/hwprobe/core/windows/memory.py +++ b/src/hwprobe/core/windows/memory.py @@ -1,10 +1,7 @@ -import ctypes +from typing import Optional from hwprobe.core.windows.win_enum import ECC_MEMORY_TYPE, MEMORY_TYPE - -# todo: refactor to new bindings -from hwprobe.interops.win.legacy.constants import ECC_MULTI_BIT, ECC_SINGLE_BIT -from hwprobe.interops.win.legacy.signatures import GetWmiInfo +from hwprobe.interops.win.bindings import wmi from hwprobe.models.memory_models import ( MemoryInfo, MemoryModuleInfo, @@ -21,122 +18,74 @@ def check_ecc() -> tuple[bool, str]: More specifically, it only returns true if the "MemoryErrorCorrection" property is: 5 - Single-bit ECC 6 - Multi-bit ECC - - Returns: - Tuple[bool, str]: A tuple where the first element indicates if ECC is supported, - and the second element is the ECC type as a string. """ - query = b"SELECT MemoryErrorCorrection FROM Win32_PhysicalMemoryArray" - - # NOTE[kernel]: - # I don't really know how to implement support for multiple memory arrays, - # so we'll just check the first one for now. - buf_size = 256 * 1 - - buffer = ctypes.create_string_buffer(buf_size) - GetWmiInfo(query, b"ROOT\\CIMV2", buffer, buf_size) - - raw_data = buffer.value.decode("utf-8", errors="ignore") - - if not raw_data: + data = wmi.get_wmi_data("Win32_PhysicalMemoryArray", ["MemoryErrorCorrection"]) + if not data: return False, "Unknown" - first_line = raw_data.split("\n")[0] - parsed_data = {x.split("=", 1)[0]: x.split("=", 1)[1] for x in first_line.split("|") if "=" in x} - ecc_type = parsed_data.get("MemoryErrorCorrection", "Unknown") - - supported = False + correction_type = data[0].get("MemoryErrorCorrection", "") + if not correction_type: + return False, "Unknown" - if ecc_type.isdigit(): - ecc_type = int(ecc_type) - if ecc_type == ECC_SINGLE_BIT or ecc_type == ECC_MULTI_BIT: - supported = True + try: + correction_type = int(correction_type) + except ValueError: + return False, "Unknown" - return supported, (ECC_MEMORY_TYPE[ecc_type] if ecc_type in ECC_MEMORY_TYPE else "Unknown") + return correction_type in (5, 6), ECC_MEMORY_TYPE.get(correction_type, "Unknown") def fetch_wmi_memory_info() -> MemoryInfo: memory_info = MemoryInfo() - - # 256 bytes per property, 9 properties, 6 modules - buf_size = 256 * 9 * 8 - buffer = ctypes.create_string_buffer(buf_size) - - GetWmiInfo( - b"SELECT BankLabel, Capacity, Manufacturer, PartNumber, Speed, DeviceLocator, SMBIOSMemoryType, DataWidth, TotalWidth FROM Win32_PhysicalMemory", - b"ROOT\\CIMV2", - buffer, - buf_size, + records = wmi.get_wmi_data( + "Win32_PhysicalMemory", + [ + "BankLabel", + "Capacity", + "Manufacturer", + "PartNumber", + "Speed", + "DeviceLocator", + "SMBIOSMemoryType", + "DataWidth", + "TotalWidth", + ], ) - """ - `raw_data` is in the following format: - BankLabel=...|Capacity=...|... - BankLabel=...|Capacity=...|... - ... - - Each module is separated by a newline; and for each module, - its properties are separated by a '|' character - """ - - raw_data = buffer.value.decode("utf-8", errors="ignore") - - if not raw_data: + if not records: memory_info.status.type = StatusType.FAILED memory_info.status.messages.append("WMI query returned no data") return memory_info - for line in raw_data.split("\n"): - if not line or "|" not in line: - continue - + for record in records: module = MemoryModuleInfo() - unparsed = line.split("|") - - parsed_data = {x.split("=", 1)[0]: x.split("=", 1)[1] for x in unparsed if "=" in x} - - bank_label = parsed_data["BankLabel"] - capacity = parsed_data["Capacity"] - manufacturer = parsed_data["Manufacturer"] - part_number = parsed_data["PartNumber"] - speed = parsed_data["Speed"] - device_locator = parsed_data["DeviceLocator"] - smbios_mem_type = parsed_data["SMBIOSMemoryType"] - data_width = parsed_data["DataWidth"] - total_width = parsed_data["TotalWidth"] - - capacity = int(capacity) if capacity.isdigit() else 0 - - module.capacity = Megabyte(capacity=capacity // (1024 * 1024)) - module.manufacturer = manufacturer.strip() if manufacturer else None - module.part_number = part_number.strip() if part_number else None - - slot = MemoryModuleSlot( - bank=bank_label.strip() if bank_label else None, - channel=device_locator.strip() if device_locator else None, - ) - module.slot = slot - - # The speed is already reported as MHz - module.frequency_mhz = int(speed) if speed.isdigit() else None - - if smbios_mem_type: - smbios_mem_type = smbios_mem_type.strip() - module.type = MEMORY_TYPE.get(int(smbios_mem_type), "Unknown") - - if data_width and total_width: - if int(total_width) > int(data_width): - module.supports_ecc = True - else: - module.supports_ecc = False - - # NOTE[kernel]: - # I don't know if it's same to assume this, - # but I believe Win32_PhysicalMemoryArray indicates - # towards all memory modules in the system. - # - # Apparently, this isn't supposed to be like this, - # but I cannot find a better way to determine ECC support per module. + bank_label = record.get("BankLabel").strip() + capacity = int(record.get("Capacity")) + manufacturer = record.get("Manufacturer").strip() + part_number = record.get("PartNumber").strip() + speed = int(record.get("Speed")) + device_locator = record.get("DeviceLocator").strip() + smbios_mem_type = int(record.get("SMBIOSMemoryType")) + data_width = int(record.get("DataWidth")) + total_width = int(record.get("TotalWidth")) + + if capacity is not None: + module.capacity = Megabyte(capacity=capacity // (1024 * 1024)) + + module.manufacturer = manufacturer + module.part_number = part_number + module.slot = MemoryModuleSlot(bank=bank_label, channel=device_locator) + + # The speed is already reported as MHz. + module.frequency_mhz = speed + + if smbios_mem_type is not None: + module.type = MEMORY_TYPE.get(smbios_mem_type, "Unknown") + + if data_width is not None and total_width is not None: + module.supports_ecc = total_width > data_width + + # WMI output takes precedence over data width comparison for ECC support. ecc_supported, ecc_type = check_ecc() module.supports_ecc = ecc_supported module.ecc_type = ecc_type From 9e7bcf639f52534f8ef7f0564454a49b5b68d459 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 23:55:36 +0530 Subject: [PATCH 14/33] fix: refactor windows memory discovery, make MemoryModuleSlot fields optional --- src/hwprobe/core/windows/memory.py | 122 +++++++++++++++------------- src/hwprobe/models/memory_models.py | 4 +- 2 files changed, 66 insertions(+), 60 deletions(-) diff --git a/src/hwprobe/core/windows/memory.py b/src/hwprobe/core/windows/memory.py index 892a6fb..07b9b6d 100644 --- a/src/hwprobe/core/windows/memory.py +++ b/src/hwprobe/core/windows/memory.py @@ -1,7 +1,5 @@ -from typing import Optional - from hwprobe.core.windows.win_enum import ECC_MEMORY_TYPE, MEMORY_TYPE -from hwprobe.interops.win.bindings import wmi +from hwprobe.interops.win.bindings.wmi import get_wmi_data from hwprobe.models.memory_models import ( MemoryInfo, MemoryModuleInfo, @@ -10,83 +8,91 @@ from hwprobe.models.size_models import Megabyte from hwprobe.models.status_models import StatusType +# Win32_PhysicalMemoryArray.MemoryErrorCorrection values +# https://learn.microsoft.com/en-us/windows/win32/cimwin32prov/win32-physicalmemoryarray +_ECC_SINGLE_BIT = 5 +_ECC_MULTI_BIT = 6 + def check_ecc() -> tuple[bool, str]: """ Checks if the system supports ECC memory by querying Win32_PhysicalMemoryArray. - More specifically, it only returns true if the "MemoryErrorCorrection" property is: + Returns true only if MemoryErrorCorrection is: 5 - Single-bit ECC 6 - Multi-bit ECC """ - data = wmi.get_wmi_data("Win32_PhysicalMemoryArray", ["MemoryErrorCorrection"]) - if not data: - return False, "Unknown" + rows = get_wmi_data("Win32_PhysicalMemoryArray", ["MemoryErrorCorrection"]) - correction_type = data[0].get("MemoryErrorCorrection", "") - if not correction_type: + if not rows: return False, "Unknown" - try: - correction_type = int(correction_type) - except ValueError: + raw = rows[0].get("MemoryErrorCorrection", "") + if not raw.isdigit(): return False, "Unknown" - return correction_type in (5, 6), ECC_MEMORY_TYPE.get(correction_type, "Unknown") + ecc_type = int(raw) + supported = ecc_type in (_ECC_SINGLE_BIT, _ECC_MULTI_BIT) + return supported, ECC_MEMORY_TYPE.get(ecc_type, "Unknown") def fetch_wmi_memory_info() -> MemoryInfo: memory_info = MemoryInfo() - records = wmi.get_wmi_data( - "Win32_PhysicalMemory", - [ - "BankLabel", - "Capacity", - "Manufacturer", - "PartNumber", - "Speed", - "DeviceLocator", - "SMBIOSMemoryType", - "DataWidth", - "TotalWidth", - ], - ) - - if not records: + + fields = [ + "BankLabel", "Capacity", "Manufacturer", "PartNumber", "Speed", + "DeviceLocator", "SMBIOSMemoryType", "DataWidth", "TotalWidth", + ] + + try: + rows = get_wmi_data("Win32_PhysicalMemory", fields) + except RuntimeError as e: + memory_info.status.type = StatusType.FAILED + memory_info.status.messages.append(str(e)) + return memory_info + + if not rows: memory_info.status.type = StatusType.FAILED memory_info.status.messages.append("WMI query returned no data") return memory_info - for record in records: + # Query the array once — all modules share the same ECC capability. + ecc_supported, ecc_type = check_ecc() + + for row in rows: module = MemoryModuleInfo() - bank_label = record.get("BankLabel").strip() - capacity = int(record.get("Capacity")) - manufacturer = record.get("Manufacturer").strip() - part_number = record.get("PartNumber").strip() - speed = int(record.get("Speed")) - device_locator = record.get("DeviceLocator").strip() - smbios_mem_type = int(record.get("SMBIOSMemoryType")) - data_width = int(record.get("DataWidth")) - total_width = int(record.get("TotalWidth")) - - if capacity is not None: - module.capacity = Megabyte(capacity=capacity // (1024 * 1024)) - - module.manufacturer = manufacturer - module.part_number = part_number - module.slot = MemoryModuleSlot(bank=bank_label, channel=device_locator) - - # The speed is already reported as MHz. - module.frequency_mhz = speed - - if smbios_mem_type is not None: - module.type = MEMORY_TYPE.get(smbios_mem_type, "Unknown") - - if data_width is not None and total_width is not None: - module.supports_ecc = total_width > data_width - - # WMI output takes precedence over data width comparison for ECC support. - ecc_supported, ecc_type = check_ecc() + + capacity = row.get("Capacity", "") + capacity = int(capacity) if capacity.isdigit() else 0 + module.capacity = Megabyte(capacity=capacity // (1024 * 1024)) + + manufacturer = row.get("Manufacturer", "") + module.manufacturer = manufacturer.strip() if manufacturer else None + + part_number = row.get("PartNumber", "") + module.part_number = part_number.strip() if part_number else None + + bank_label = row.get("BankLabel", "") + device_locator = row.get("DeviceLocator", "") + module.slot = MemoryModuleSlot( + bank=bank_label.strip() if bank_label else None, + channel=device_locator.strip() if device_locator else None, + ) + + speed = row.get("Speed", "") + module.frequency_mhz = int(speed) if speed.isdigit() else None + + smbios_mem_type = row.get("SMBIOSMemoryType", "") + if smbios_mem_type and smbios_mem_type.isdigit(): + module.type = MEMORY_TYPE.get(int(smbios_mem_type), "Unknown") + + data_width = row.get("DataWidth", "") + total_width = row.get("TotalWidth", "") + if data_width.isdigit() and total_width.isdigit(): + module.supports_ecc = int(total_width) > int(data_width) + + # Win32_PhysicalMemoryArray reports ECC for the whole array, not per + # module. Override the per-module heuristic above with the array value. module.supports_ecc = ecc_supported module.ecc_type = ecc_type diff --git a/src/hwprobe/models/memory_models.py b/src/hwprobe/models/memory_models.py index 0d4e0c7..c545c71 100644 --- a/src/hwprobe/models/memory_models.py +++ b/src/hwprobe/models/memory_models.py @@ -7,8 +7,8 @@ class MemoryModuleSlot(BaseModel): - channel: str = "" - bank: str = "" + channel: Optional[str] = "" + bank: Optional[str] = "" class MemoryModuleInfo(BaseModel): From 1001eb7062ee61f4dd7801a3597dbe3f3261dfca Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sat, 1 Aug 2026 23:59:07 +0530 Subject: [PATCH 15/33] Use new WMI for Windows Storage --- src/hwprobe/core/windows/storage.py | 49 +++++++++++------------------ 1 file changed, 19 insertions(+), 30 deletions(-) diff --git a/src/hwprobe/core/windows/storage.py b/src/hwprobe/core/windows/storage.py index 69e52c5..0e532fb 100644 --- a/src/hwprobe/core/windows/storage.py +++ b/src/hwprobe/core/windows/storage.py @@ -1,9 +1,5 @@ -import ctypes - from hwprobe.core.windows.win_enum import BUS_TYPE, MEDIA_TYPE - -# todo: refactor to new bindings -from hwprobe.interops.win.legacy.signatures import GetWmiInfo +from hwprobe.interops.win.bindings.wmi import get_wmi_data from hwprobe.models.size_models import Megabyte from hwprobe.models.status_models import StatusType from hwprobe.models.storage_models import DiskInfo, StorageInfo @@ -11,45 +7,39 @@ def fetch_wmi_storage_info() -> StorageInfo: """ - Fetch storage information via WMI using the GetWmiInfo interop. - Returns a StorageInfo object with all detected disks. + Fetch storage information via WMI (MSFT_PhysicalDisk from the Storage + namespace). Returns a StorageInfo object with all detected disks. """ storage_info = StorageInfo() - # 256 bytes per property, 6 properties, 10 modules (mostly for NAS systems) - buf_size = 256 * 6 * 10 - buffer = ctypes.create_string_buffer(buf_size) - - query = b"SELECT FriendlyName, MediaType, BusType, Size, Manufacturer, Model FROM MSFT_PhysicalDisk" + fields = ["FriendlyName", "MediaType", "BusType", "Size", "Manufacturer", "Model"] - GetWmiInfo(query, b"ROOT\\Microsoft\\Windows\\Storage", buffer, buf_size) - - raw_data = buffer.value.decode("utf-8", errors="ignore") - if not raw_data: + try: + rows = get_wmi_data( + "MSFT_PhysicalDisk", + fields, + namespace=r"ROOT\Microsoft\Windows\Storage", + ) + except RuntimeError as e: storage_info.status.type = StatusType.FAILED - storage_info.status.messages.append("WMI query returned no data") + storage_info.status.messages.append(str(e)) return storage_info - for line in raw_data.split("\n"): - if not line or "|" not in line: - continue - + for row in rows: disk = DiskInfo() - props = {x.split("=", 1)[0]: x.split("=", 1)[1] for x in line.split("|") if "=" in x} - friendly_name = props.get("FriendlyName") - media_type = props.get("MediaType") - bus_type = props.get("BusType") - size = props.get("Size") - manufacturer = props.get("Manufacturer") - model = props.get("Model") + friendly_name = row.get("FriendlyName", "") + media_type = row.get("MediaType", "") + bus_type = row.get("BusType", "") + size = row.get("Size", "") + manufacturer = row.get("Manufacturer", "") + model = row.get("Model", "") disk.model = model.strip() if model else friendly_name.strip() if friendly_name else None disk.manufacturer = manufacturer.strip() if manufacturer else None disk.type = MEDIA_TYPE.get(int(media_type), "Unknown") if media_type and media_type.isdigit() else "Unknown" disk.size = Megabyte(capacity=int(size) // (1024 * 1024)) if size and size.isdigit() else None - # Map bus type conn_type, location = None, None if bus_type and bus_type.isdigit(): bt = BUS_TYPE.get(int(bus_type)) @@ -65,7 +55,6 @@ def fetch_wmi_storage_info() -> StorageInfo: storage_info.modules.append(disk) - # If at least one module was parsed, mark as success if storage_info.modules: storage_info.status.type = StatusType.SUCCESS else: From 5727a4406af73a45d655bc2b9e7611a84c5423e6 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 00:04:38 +0530 Subject: [PATCH 16/33] feat: rewrite windows network retrieval with new wmi wrapper --- src/hwprobe/core/windows/network.py | 61 +++-- tests/core/windows/test_network.py | 336 +++++++++++----------------- 2 files changed, 156 insertions(+), 241 deletions(-) diff --git a/src/hwprobe/core/windows/network.py b/src/hwprobe/core/windows/network.py index bb3312a..7303c0c 100644 --- a/src/hwprobe/core/windows/network.py +++ b/src/hwprobe/core/windows/network.py @@ -1,10 +1,5 @@ -import ctypes - from hwprobe.core.windows.common import format_acpi_path, format_pci_path - -# todo: refactor to new bindings -from hwprobe.interops.win.legacy.constants import STATUS_OK -from hwprobe.interops.win.legacy.signatures import GetNetworkHardwareInfo +from hwprobe.interops.win.bindings.wmi import get_wmi_data from hwprobe.models.network_models import NetworkInfo, NICInfo from hwprobe.models.status_models import Status, StatusType from hwprobe.util.location_paths import get_location_paths @@ -13,46 +8,46 @@ def fetch_network_info_fast() -> NetworkInfo: network_info = NetworkInfo(status=Status(type=StatusType.SUCCESS)) - # 256 bytes per property, 3 properties, 5 modules - buf_size = 256 * 3 * 5 - raw_data = ctypes.create_string_buffer(buf_size) - - res = GetNetworkHardwareInfo(raw_data, buf_size) - - # the method couldn't execute successfully - if res != STATUS_OK: + try: + rows = get_wmi_data( + "Win32_NetworkAdapter", + ["Name", "Manufacturer", "PNPDeviceID", "AdapterType"], + ) + except RuntimeError as e: network_info.status.type = StatusType.FAILED - network_info.status.messages.append(f"Network HW info query failed with status code: {res}") + network_info.status.messages.append(str(e)) return network_info - decoded = raw_data.value.decode("utf-8", errors="ignore").strip() - - # data is empty - if not decoded: + if not rows: network_info.status.type = StatusType.FAILED - network_info.status.messages.append("Network HW info query returned no data") + network_info.status.messages.append("Network adapter query returned no data") return network_info - for line in decoded.split("\n"): - if not line or "|" not in line: + for row in rows: + # Skip loopback adapters + if "Loopback Interface" in row.get("AdapterType", "").strip(): continue - parsed = dict(x.split("=", 1) for x in line.split("|") if "=" in x) - - module = NICInfo() - pnp_device_id = parsed.get("PNPDeviceID", None) - manufacturer = parsed.get("Manufacturer", None) - name = parsed.get("Name", None) + pnp_device_id = row.get("PNPDeviceID", "").strip() + manufacturer = row.get("Manufacturer", "").strip() + name = row.get("Name", "").strip() if not pnp_device_id or not manufacturer or not name: network_info.status.type = StatusType.PARTIAL network_info.status.messages.append("Missing PNPDeviceID for network interface; skipping") continue - if "VEN_" in pnp_device_id and "DEV_" in pnp_device_id: + # Only physical PCI and USB NICs + upper_pnp = pnp_device_id.upper() + if "PCI" not in upper_pnp and "USB" not in upper_pnp: + continue + + module = NICInfo() + + if "VEN_" in upper_pnp and "DEV_" in upper_pnp: module.vendor_id = pnp_device_id.split("VEN_")[1][:4] module.device_id = pnp_device_id.split("DEV_")[1][:4] - elif "VID_" in pnp_device_id and "PID_" in pnp_device_id: + elif "VID_" in upper_pnp and "PID_" in upper_pnp: module.vendor_id = pnp_device_id.split("VID_")[1][:4] module.device_id = pnp_device_id.split("PID_")[1][:4] else: @@ -60,10 +55,8 @@ def fetch_network_info_fast() -> NetworkInfo: network_info.status.messages.append(f"Could not parse Vendor/Device ID from PNPDeviceID: {pnp_device_id}") loc = get_location_paths(pnp_device_id) - if loc is not None: pci, acpi = loc[:2] - module.pci_path = format_pci_path(pci) module.acpi_path = format_acpi_path(acpi) else: @@ -72,8 +65,8 @@ def fetch_network_info_fast() -> NetworkInfo: f"Could not determine location paths for NIC with PNPDeviceID: {pnp_device_id}" ) - module.manufacturer = manufacturer.strip() - module.name = name.strip() + module.manufacturer = manufacturer + module.name = name network_info.modules.append(module) return network_info diff --git a/tests/core/windows/test_network.py b/tests/core/windows/test_network.py index 2ec5dbb..d924d09 100644 --- a/tests/core/windows/test_network.py +++ b/tests/core/windows/test_network.py @@ -1,16 +1,70 @@ +import importlib +import importlib.util +import pathlib +import sys +from unittest.mock import MagicMock, patch + import pytest -from hwprobe.core.windows import network -from hwprobe.interops.win.legacy.constants import ( - STATUS_FAILURE, -) from hwprobe.models.network_models import NetworkInfo, NICInfo from hwprobe.models.status_models import StatusType +_MODULE_PATH = pathlib.Path(__file__).resolve().parents[3] / "src" / "hwprobe" / "core" / "windows" / "network.py" +_COMMON_PATH = pathlib.Path(__file__).resolve().parents[3] / "src" / "hwprobe" / "core" / "windows" / "common.py" + + +def _load_common_module(): + """Load common.py directly (format_acpi_path / format_pci_path) without + triggering core.windows.__init__ which chains into legacy imports.""" + mod_name = "hwprobe.core.windows.common" + if mod_name in sys.modules: + return sys.modules[mod_name] + spec = importlib.util.spec_from_file_location(mod_name, _COMMON_PATH) + mod = importlib.util.module_from_spec(spec) + sys.modules[mod_name] = mod + spec.loader.exec_module(mod) + return mod + + +def _load_network_module(): + """Load network.py directly without triggering core.windows.__init__.""" + # Pre-load common.py so network.py's import doesn't trigger __init__. + _load_common_module() + + # Stub the WMI binding + location_paths — both load DLLs at import time, + # which fails on non-Windows. network.py only needs get_wmi_data and + # get_location_paths, both of which tests mock anyway. + sys.modules.setdefault("hwprobe.interops.win.bindings.wmi", MagicMock(get_wmi_data=lambda *a, **kw: [])) + sys.modules.setdefault("hwprobe.util.location_paths", MagicMock(get_location_paths=lambda *a, **kw: None)) + + mod_name = "hwprobe.core.windows.network" + if mod_name in sys.modules: + return sys.modules[mod_name] + spec = importlib.util.spec_from_file_location(mod_name, _MODULE_PATH) + mod = importlib.util.module_from_spec(spec) + sys.modules[mod_name] = mod + spec.loader.exec_module(mod) + return mod + + +network = _load_network_module() + # ============================================================ # Helpers # ============================================================ +def _row(name, manufacturer, pnp_device_id, adapter_type="Ethernet 802.3"): + return { + "Name": name, + "Manufacturer": manufacturer, + "PNPDeviceID": pnp_device_id, + "AdapterType": adapter_type, + } + + +def _patch_wmi(rows, monkeypatch): + monkeypatch.setattr(network, "get_wmi_data", lambda *a, **kw: rows) + # ============================================================ # Basic parsing tests @@ -18,20 +72,12 @@ class TestBasicParsing: - """Tests for basic parsing of network device output""" - def test_successful_network_info_fetch(self, monkeypatch): - """Test successful retrieval and parsing of network hardware info""" - mock_output = ( - "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Intel(R) Ethernet Connection (10) I219-V\n" - "Manufacturer=Realtek|PNPDeviceID=PCI\\VEN_10EC&DEV_8168|Name=Realtek PCIe GBE Family Controller\n" - ) - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [ + _row("Intel(R) Ethernet Connection (10) I219-V", "Intel", r"PCI\VEN_8086&DEV_15B8"), + _row("Realtek PCIe GBE Family Controller", "Realtek", r"PCI\VEN_10EC&DEV_8168"), + ] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() @@ -41,13 +87,7 @@ def mock_func(buf, size): assert network_info.modules[1].manufacturer == "Realtek" def test_empty_response_returns_failed_status(self, monkeypatch): - """Test handling of empty response from GetNetworkHardwareInfo""" - - def mock_func(buf, size): - buf.value = b"" - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + _patch_wmi([], monkeypatch) network_info = network.fetch_network_info_fast() @@ -55,67 +95,17 @@ def mock_func(buf, size): assert len(network_info.modules) == 0 assert any("no data" in msg for msg in network_info.status.messages) - def test_malformed_output_skipped(self, monkeypatch): - """Test that malformed lines are skipped""" - mock_output = ( - "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Valid NIC\n" - "This is malformed and has no pipe separator\n" - "Manufacturer=Realtek|PNPDeviceID=PCI\\VEN_10EC&DEV_8168|Name=Another Valid NIC\n" - ) - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) - - network_info = network.fetch_network_info_fast() - - assert len(network_info.modules) == 2 - assert network_info.modules[0].name == "Valid NIC" - assert network_info.modules[1].name == "Another Valid NIC" - - def test_bad_vendor_device_id_format(self, monkeypatch): - """Test handling of bad Vendor/Device ID format in PNPDeviceID""" - mock_output = "Manufacturer=Intel|PNPDeviceID=PCI\\INVALID_FORMAT|Name=Intel NIC\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) - - network_info = network.fetch_network_info_fast() - - assert len(network_info.modules) == 1 - assert network_info.modules[0].vendor_id is None - assert network_info.modules[0].device_id is None - assert network_info.status.type == StatusType.PARTIAL - assert any("Could not parse Vendor/Device ID" in msg for msg in network_info.status.messages) - def test_missing_manufacturer_field(self, monkeypatch): - """Test handling of missing Manufacturer field""" - mock_output = "PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Intel NIC\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row("Intel NIC", "", r"PCI\VEN_8086&DEV_15B8")] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() assert len(network_info.modules) == 0 def test_missing_pnpdeviceid_field(self, monkeypatch): - """Test handling of missing PNPDeviceID field""" - mock_output = "Manufacturer=Intel|Name=Intel NIC\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row("Intel NIC", "Intel", "")] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() @@ -128,33 +118,37 @@ def mock_func(buf, size): class TestVendorDeviceParsing: - """Tests for vendor and device ID parsing""" - @pytest.mark.parametrize( "pnp_id,expected_vendor_id,expected_device_id", [ - ("PCI\\VEN_8086&DEV_15B8", "8086", "15B8"), - ("PCI\\VEN_10EC&DEV_8168", "10EC", "8168"), - ("PCI\\VEN_14E4&DEV_1643", "14E4", "1643"), - ("USB\\VID_0BDA&PID_4938", "0BDA", "4938"), - ("USB\\VID_0525&PID_A4A5", "0525", "A4A5"), + (r"PCI\VEN_8086&DEV_15B8", "8086", "15B8"), + (r"PCI\VEN_10EC&DEV_8168", "10EC", "8168"), + (r"PCI\VEN_14E4&DEV_1643", "14E4", "1643"), + (r"USB\VID_0BDA&PID_4938", "0BDA", "4938"), + (r"USB\VID_0525&PID_A4A5", "0525", "A4A5"), ], ) def test_parse_vendor_device_ids(self, pnp_id, expected_vendor_id, expected_device_id, monkeypatch): - """Test parsing various vendor/device ID combinations""" - mock_output = f"Manufacturer=Test|PNPDeviceID={pnp_id}|Name=Test Device\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row("Test Device", "Test", pnp_id)] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() assert network_info.modules[0].vendor_id == expected_vendor_id assert network_info.modules[0].device_id == expected_device_id + def test_bad_vendor_device_id_format(self, monkeypatch): + rows = [_row("Intel NIC", "Intel", r"PCI\INVALID_FORMAT")] + _patch_wmi(rows, monkeypatch) + + network_info = network.fetch_network_info_fast() + + assert len(network_info.modules) == 1 + assert network_info.modules[0].vendor_id is None + assert network_info.modules[0].device_id is None + assert network_info.status.type == StatusType.PARTIAL + assert any("Could not parse Vendor/Device ID" in msg for msg in network_info.status.messages) + # ============================================================ # Multiple adapters and formatting tests @@ -162,22 +156,14 @@ def mock_func(buf, size): class TestMultipleAdaptersAndFormatting: - """Tests for multiple adapters and output formatting""" - def test_multiple_network_adapters(self, monkeypatch): - """Test parsing multiple network adapters""" - mock_output = ( - "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Intel NIC 1\n" - "Manufacturer=Realtek|PNPDeviceID=PCI\\VEN_10EC&DEV_8168|Name=Realtek NIC\n" - "Manufacturer=Broadcom|PNPDeviceID=PCI\\VEN_14E4&DEV_1643|Name=Broadcom NIC\n" - "Manufacturer=Generic|PNPDeviceID=USB\\VID_0BDA&PID_4938|Name=USB Adapter\n" - ) - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [ + _row("Intel NIC 1", "Intel", r"PCI\VEN_8086&DEV_15B8"), + _row("Realtek NIC", "Realtek", r"PCI\VEN_10EC&DEV_8168"), + _row("Broadcom NIC", "Broadcom", r"PCI\VEN_14E4&DEV_1643"), + _row("USB Adapter", "Generic", r"USB\VID_0BDA&PID_4938"), + ] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() @@ -188,40 +174,38 @@ def mock_func(buf, size): assert network_info.modules[3].manufacturer == "Generic" def test_whitespace_stripping(self, monkeypatch): - """Test that whitespace is properly stripped from fields""" - mock_output = "Manufacturer= Intel |PNPDeviceID= PCI\\VEN_8086&DEV_15B8 |Name= Intel NIC \n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row(" Intel NIC ", " Intel ", r"PCI\VEN_8086&DEV_15B8")] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() assert len(network_info.modules) == 1 - # Whitespace should be stripped assert network_info.modules[0].manufacturer == "Intel" assert network_info.modules[0].name == "Intel NIC" - def test_blank_lines_ignored(self, monkeypatch): - """Test that blank lines are properly ignored""" - mock_output = ( - "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Intel NIC\n" - "\n" - "\n" - "Manufacturer=Realtek|PNPDeviceID=PCI\\VEN_10EC&DEV_8168|Name=Realtek NIC\n" - ) + def test_loopback_adapter_skipped(self, monkeypatch): + rows = [ + _row("Loopback", "Microsoft", r"ROOT\\MS_NDISWANIP", adapter_type="Software Loopback Interface 1"), + _row("Intel NIC", "Intel", r"PCI\VEN_8086&DEV_15B8"), + ] + _patch_wmi(rows, monkeypatch) + + network_info = network.fetch_network_info_fast() - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 + assert len(network_info.modules) == 1 + assert network_info.modules[0].name == "Intel NIC" - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + def test_non_pci_usb_adapters_skipped(self, monkeypatch): + rows = [ + _row("Root Device", "Microsoft", r"ROOT\\SOMETHING"), + _row("Intel NIC", "Intel", r"PCI\VEN_8086&DEV_15B8"), + ] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() - assert len(network_info.modules) == 2 + assert len(network_info.modules) == 1 + assert network_info.modules[0].name == "Intel NIC" # ============================================================ @@ -230,17 +214,9 @@ def mock_func(buf, size): class TestModelStructure: - """Tests for data model structure and fields""" - def test_nic_model_fields(self, monkeypatch): - """Test that NICInfo model fields are correctly populated""" - mock_output = "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Test NIC\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row("Test NIC", "Intel", r"PCI\VEN_8086&DEV_15B8")] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() nic = network_info.modules[0] @@ -252,14 +228,8 @@ def mock_func(buf, size): assert nic.device_id == "15B8" def test_network_info_model_structure(self, monkeypatch): - """Test that NetworkInfo model has correct structure""" - mock_output = "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Test NIC\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows = [_row("Test NIC", "Intel", r"PCI\VEN_8086&DEV_15B8")] + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() @@ -270,19 +240,6 @@ def mock_func(buf, size): class TestFunctionCallAndErrors: - """Tests for function behavior and error conditions""" - - def test_function_call(self, monkeypatch): - """Test that GetNetworkHardwareInfo is called successfully""" - - def mock_func(buf, size): - buf.value = b"" - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) - - network.fetch_network_info_fast() - @pytest.mark.parametrize( "device_count,manufacturers", [ @@ -292,19 +249,12 @@ def mock_func(buf, size): ], ) def test_various_device_counts(self, device_count, manufacturers, monkeypatch): - """Test parsing various numbers of network devices""" - lines = [] + rows = [] for i, mfg in enumerate(manufacturers): vendor = f"VEN_{0x8086 + i:04X}" if i == 0 else f"VEN_{0x10EC + i:04X}" device = f"DEV_{0x15B8 + i:04X}" - lines.append(f"Manufacturer={mfg}|PNPDeviceID=PCI\\{vendor}&{device}|Name={mfg} NIC {i + 1}") - mock_output = "\n".join(lines) + "\n" - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + rows.append(_row(f"{mfg} NIC {i + 1}", mfg, f"PCI\\{vendor}&{device}")) + _patch_wmi(rows, monkeypatch) network_info = network.fetch_network_info_fast() @@ -312,42 +262,16 @@ def mock_func(buf, size): for i, mfg in enumerate(manufacturers): assert network_info.modules[i].manufacturer == mfg - def test_multiple_network_adapters(self, monkeypatch): - """Test parsing multiple network adapters""" - mock_output = ( - "Manufacturer=Intel|PNPDeviceID=PCI\\VEN_8086&DEV_15B8|Name=Intel NIC 1\n" - "Manufacturer=Realtek|PNPDeviceID=PCI\\VEN_10EC&DEV_8168|Name=Realtek NIC\n" - "Manufacturer=Broadcom|PNPDeviceID=PCI\\VEN_14E4&DEV_1643|Name=Broadcom NIC\n" - "Manufacturer=Generic|PNPDeviceID=USB\\VID_0BDA&PID_4938|Name=USB Adapter\n" - ) - - def mock_func(buf, size): - buf.value = mock_output.encode("utf-8") - return 0 - - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) - - network_info = network.fetch_network_info_fast() - - assert len(network_info.modules) == 4 - assert network_info.modules[0].manufacturer == "Intel" - assert network_info.modules[1].manufacturer == "Realtek" - assert network_info.modules[2].manufacturer == "Broadcom" - assert network_info.modules[3].manufacturer == "Generic" - - def test_function_call_with_bad_status(self, monkeypatch): - """Test handling of non-OK status from GetNetworkHardwareInfo""" - - def mock_func(buf, size): - buf.value = b"" - return STATUS_FAILURE + def test_runtime_error_returns_failed(self, monkeypatch): + def mock_wmi(*a, **kw): + raise RuntimeError("get_wmi_data() failed (C library returned -1)") - monkeypatch.setattr(network, "GetNetworkHardwareInfo", mock_func) + monkeypatch.setattr(network, "get_wmi_data", mock_wmi) network_info = network.fetch_network_info_fast() assert network_info.status.type == StatusType.FAILED - assert any("status code:" in msg for msg in network_info.status.messages) + assert any("-1" in msg for msg in network_info.status.messages) @pytest.mark.parametrize( "pci_path, acpi_path, exp_pci_path, exp_acpi_path", @@ -373,13 +297,11 @@ def mock_func(buf, size): ], ) def test_format_paths(self, pci_path, acpi_path, exp_pci_path, exp_acpi_path, monkeypatch): - """Test that format_{pci|acpi}_path returns correct PCI and ACPI path""" + rows = [_row("Test NIC", "Intel", r"PCI\VEN_8086&DEV_15B8")] + _patch_wmi(rows, monkeypatch) def mock_get_location_paths(pnp_device_id): - return ( - pci_path, - acpi_path, - ) + return (pci_path, acpi_path) monkeypatch.setattr(network, "get_location_paths", mock_get_location_paths) From cfe544478c3e0ffb4b604263dada9d5e5b9029ce Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 00:25:12 +0530 Subject: [PATCH 17/33] feat: Add display info bindings for windows, revamp windows display detection --- src/hwprobe/core/windows/cpu.py | 7 +- src/hwprobe/core/windows/display.py | 821 ++---------------- src/hwprobe/core/windows/manager.py | 4 +- src/hwprobe/interops/win/CMakeLists.txt | 28 +- .../interops/win/bindings/display_info.py | 149 ++++ .../interops/win/include/display_info.h | 43 + src/hwprobe/interops/win/main.cpp | 83 +- src/hwprobe/interops/win/src/display_info.cpp | 264 ++++++ tests/core/windows/test_display.py | 502 +++++------ 9 files changed, 833 insertions(+), 1068 deletions(-) create mode 100644 src/hwprobe/interops/win/bindings/display_info.py create mode 100644 src/hwprobe/interops/win/include/display_info.h create mode 100644 src/hwprobe/interops/win/src/display_info.cpp diff --git a/src/hwprobe/core/windows/cpu.py b/src/hwprobe/core/windows/cpu.py index 9f72e3a..c19ec36 100644 --- a/src/hwprobe/core/windows/cpu.py +++ b/src/hwprobe/core/windows/cpu.py @@ -63,14 +63,13 @@ def get_features() -> list[str]: def fetch_cpu_info() -> CPUInfo: cpu_info = CPUInfo() - + wmi_data = wmi.get_wmi_data("Win32_Processor", ["Name", "Manufacturer", "Architecture", "AddressWidth", "MaxClockSpeed", "NumberOfCores", "NumberOfLogicalProcessors"]) if wmi_data: cpu_info.name = wmi_data[0]["Name"].strip() cpu_info.vendor = "AMD" if "amd" in wmi_data[0]["Manufacturer"].lower() else "Intel" if "intel" in wmi_data[0]["Manufacturer"].lower() else wmi_data[0]["Manufacturer"].strip() - cpu_info.architecture = CPU_ARCHITECTURES.get(wmi_data[0]["Architecture"], "Unknown") + cpu_info.architecture = CPU_ARCHITECTURES.get(int(wmi_data[0]["Architecture"]), "Unknown") cpu_info.bitness = int(wmi_data[0]["AddressWidth"]) - cpu_info.max_clock_speed = float(wmi_data[0]["MaxClockSpeed"]) cpu_info.cores = int(wmi_data[0]["NumberOfCores"]) cpu_info.threads = int(wmi_data[0]["NumberOfLogicalProcessors"]) @@ -80,5 +79,5 @@ def fetch_cpu_info() -> CPUInfo: else: cpu_info.status.type = StatusType.FAILED cpu_info.status.messages.append("Unable to obtain CPU Info: WMI query returned no data.") - + return cpu_info diff --git a/src/hwprobe/core/windows/display.py b/src/hwprobe/core/windows/display.py index 368e8df..aeaed05 100644 --- a/src/hwprobe/core/windows/display.py +++ b/src/hwprobe/core/windows/display.py @@ -1,772 +1,91 @@ """ Windows Display Information Module -This module provides functionality to enumerate and collect detailed information -about display monitors on Windows systems. It uses Windows SetupAPI and display -enumeration APIs to gather: -- Display resolution, refresh rate, and orientation -- EDID (Extended Display Identification Data) information -- Connection type (HDMI, DisplayPort, etc.) -- GPU association for each display +All Win32 calls go through display_info.dll (C++). Python only does: +- EDID parsing (shared hwprobe.core.common.edid) +- Connector type mapping (DISPLAY_CON_TYPE from win_enum) +- Data assembly into DisplayModuleInfo """ -import ctypes -import struct -from ctypes import wintypes -from typing import Optional - +from hwprobe.core.common.edid import parse_edid from hwprobe.core.windows.win_enum import DISPLAY_CON_TYPE - -# todo: refactor to new bindings -from hwprobe.interops.win.legacy.constants import ( - DICS_FLAG_GLOBAL, - DIGCF_DEVICEINTERFACE, - DIGCF_PRESENT, - DIREG_DEV, - DMDO_90, - DMDO_180, - DMDO_270, - DMDO_DEFAULT, - ENUM_CURRENT_SETTINGS, - GUID_DEVINTERFACE_MONITOR, - KEY_READ, - STATUS_OK, -) -from hwprobe.interops.win.legacy.signatures import ( - EnumDisplayDevicesA, - EnumDisplayMonitors, - EnumDisplaySettingsA, - GetDisplayPathInfo, - GetGPUForDisplay, - GetMonitorInfoA, - RegCloseKey, - RegQueryValueExA, - SetupDiDestroyDeviceInfoList, - SetupDiEnumDeviceInterfaces, - SetupDiGetClassDevsA, - SetupDiGetDeviceInterfaceDetailA, - SetupDiOpenDevRegKey, -) -from hwprobe.interops.win.legacy.structs import ( - DEVMODEA, - DISPLAY_DEVICEA, - MONITORENUMPROC, - MONITORINFOEXA, - SP_DEVICE_INTERFACE_DATA, - SP_DEVINFO_DATA, +from hwprobe.interops.win.bindings.display_info import ( + get_display_connectors, + get_edid, + get_gpu_for_display, + get_monitor_devices, ) -from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo -from hwprobe.models.status_models import Status, StatusType - -# ============================================================================= -# Constants -# ============================================================================= - -# EDID structure constants -_EDID_MIN_LENGTH = 128 -_EDID_VENDOR_OFFSET = 8 -_EDID_PRODUCT_OFFSET = 10 -_EDID_DESCRIPTOR_BASE_OFFSET = 0x48 -_EDID_DESCRIPTOR_SIZE = 18 -_EDID_DESCRIPTOR_COUNT = 3 -_EDID_WIDTH_CM_OFFSET = 21 -_EDID_HEIGHT_CM_OFFSET = 22 - -# EDID descriptor type markers -_EDID_SERIAL_MARKER = b"\x00\x00\x00\xff" -_EDID_NAME_MARKER = b"\x00\x00\x00\xfc" - -# Orientation display names -_ORIENTATION_NAMES = { - DMDO_DEFAULT: "Landscape", - DMDO_90: "Portrait", - DMDO_180: "Landscape (flipped)", - DMDO_270: "Portrait (flipped)", -} - -# Invalid registry key handle -_INVALID_HKEY = -1 - - -# ============================================================================= -# Utility Functions -# ============================================================================= - - -def _compute_gcd(a: int, b: int) -> int: - """Compute the greatest common divisor of two integers using Euclidean algorithm.""" - while b: - a, b = b, a % b - return a - - -def get_aspect_ratio(width: int, height: int) -> tuple[Optional[int], Optional[int]]: - """ - Calculate the aspect ratio for given dimensions. - - Args: - width: Display width in pixels - height: Display height in pixels - - Returns: - A tuple of (width_ratio, height_ratio), e.g., (16, 9) for 1920x1080. - Returns (None, None) if either dimension is zero. - - Examples: - >>> get_aspect_ratio(1920, 1080) - (16, 9) - >>> get_aspect_ratio(3440, 1440) - (43, 18) - """ - if width == 0 or height == 0: - return None, None - - gcd = _compute_gcd(width, height) - return width // gcd, height // gcd - - -def parse_connector_info(connector_info_string: str) -> Optional[dict]: - """ - Parse connector information string into a structured dictionary. - - The connector info string format (from interop DLL): - "DisplayID=\\\\.\\DISPLAY1|DisplayPath=\\\\?\\DISPLAY#...|OutputTechnology=5\\n - DisplayID=\\\\.\\DISPLAY2|DisplayPath=\\\\?\\DISPLAY#...|OutputTechnology=10" - - Args: - connector_info_string: Raw connector info string with newline-separated devices - - Returns: - Dictionary mapping display IDs to their properties: - { - "\\\\.\\DISPLAY1": {"DisplayPath": "...", "OutputTechnology": "5"}, - "\\\\.\\DISPLAY2": {"DisplayPath": "...", "OutputTechnology": "10"} - } - Returns None if parsing fails. - """ - result = {} - - try: - devices = connector_info_string.split("\n") - - for device in devices: - if not device.strip(): - continue - - parts = device.split("|") - current_display_id = None - - for part in parts: - if "=" not in part: - continue - - key, value = part.split("=", 1) - - if key == "DisplayID": - current_display_id = value - result[current_display_id] = {} - elif current_display_id is not None: - result[current_display_id][key] = value - - except (ValueError, AttributeError): - return None - - return result - - -# ============================================================================= -# EDID Parsing -# ============================================================================= - - -def _extract_descriptor_text(descriptor: bytes, marker: bytes) -> Optional[str]: - """ - Extract text from an EDID descriptor block if it matches the given marker. - - Args: - descriptor: 18-byte EDID descriptor block - marker: 4-byte marker identifying the descriptor type - - Returns: - Decoded and stripped text, or None if marker doesn't match or text is empty. - """ - if descriptor[0:4] != marker: - return None - - try: - # Text data starts at byte 5, terminated by 0x0A (newline) - raw_text = descriptor[5:18].split(b"\x0a")[0] - text = raw_text.decode(errors="ignore").strip() - return text if text else None - except Exception: - return None - - -def _decode_manufacturer_code(vendor_id: int) -> str: - """ - Decode the 3-letter manufacturer code from EDID vendor ID. - - EDID vendor IDs encode three 5-bit characters (A=1, B=2, etc.) packed into 16 bits. - - Args: - vendor_id: 16-bit vendor identifier from EDID - - Returns: - Three-letter manufacturer code (e.g., "SAM" for Samsung, "DEL" for Dell) - """ - char1 = chr(((vendor_id >> 10) & 0x1F) + ord("A") - 1) - char2 = chr(((vendor_id >> 5) & 0x1F) + ord("A") - 1) - char3 = chr((vendor_id & 0x1F) + ord("A") - 1) - return f"{char1}{char2}{char3}" - - -def _calculate_diagonal_inches(width_cm: int, height_cm: int) -> float: - """ - Calculate diagonal screen size in inches from physical dimensions. - - Args: - width_cm: Physical width in centimeters - height_cm: Physical height in centimeters - - Returns: - Diagonal size in inches, rounded to nearest integer. Returns 0 if dimensions invalid. - """ - if width_cm <= 0 or height_cm <= 0: - return 0.0 - - diagonal_cm = (width_cm**2 + height_cm**2) ** 0.5 - return round(diagonal_cm / 2.54) - - -def parse_edid(edid: bytes) -> Optional[dict]: - """ - Parse EDID (Extended Display Identification Data) binary data. - - EDID is a standard data format that displays use to describe their capabilities - to connected devices. This function extracts commonly needed identification info. - - Args: - edid: Raw EDID bytes (minimum 128 bytes for base EDID block) - - Returns: - Dictionary containing: - - manufacturer_code: 3-letter PNP ID (e.g., "SAM", "DEL") - - vendor_id: Numeric vendor identifier - - product_id: Numeric product identifier - - serial: Serial number string (if present in descriptors) - - name: Display model name (if present in descriptors) - - inches: Diagonal screen size in inches - - Returns None if EDID data is too short. - """ - if len(edid) < _EDID_MIN_LENGTH: - return None - - # Parse vendor and product IDs - vendor_id = struct.unpack(">H", edid[_EDID_VENDOR_OFFSET : _EDID_VENDOR_OFFSET + 2])[0] - product_id = struct.unpack(" Optional[str]: - """ - Extract the serial number from a display path for unique identification. - - Args: - display_path: Display path string (e.g., "\\\\?\\DISPLAY#MANUF#...") - - Returns: - Serial number string if found, None otherwise. - """ - edid = get_edid_by_hwid(display_path) - return edid.get("serial") if edid else None - - -# ============================================================================= -# GPU and Display Association -# ============================================================================= - - -def find_monitor_gpu(device_name: str) -> tuple[Optional[str], int]: - """ - Find the GPU that a monitor is connected to. - - Args: - device_name: Display device name (e.g., "\\\\.\\DISPLAY1") - - Returns: - Tuple of (gpu_name, status_code): - - gpu_name: Name of the GPU, or None if not found - - status_code: API result code (STATUS_OK on success) - """ - buffer = ctypes.create_string_buffer(256) - encoded_name = device_name.encode("utf-8") - - result_code = GetGPUForDisplay(encoded_name, buffer, 256) - - if result_code != STATUS_OK: - return None, result_code - - gpu_name = buffer.value.decode("utf-8") - return (gpu_name if gpu_name else None), result_code - - -# ============================================================================= -# Registry EDID Lookup -# ============================================================================= - - -def _get_device_interface_detail_size() -> int: - """Get the correct cbSize value for SP_DEVICE_INTERFACE_DETAIL_DATA based on architecture.""" - return 8 if ctypes.sizeof(ctypes.c_void_p) == 8 else 6 - - -def _read_edid_from_registry(hkey) -> Optional[dict]: - """ - Read and parse EDID data from an open registry key. - - Args: - hkey: Open registry key handle for a monitor device - - Returns: - Parsed EDID dictionary, or None if read fails. - """ - edid_size = wintypes.DWORD() - - # Query EDID value size first - if RegQueryValueExA(hkey, b"EDID", None, None, None, ctypes.byref(edid_size)) != 0: - return None - - # Read the actual EDID data - edid_buffer = (ctypes.c_ubyte * edid_size.value)() - if RegQueryValueExA(hkey, b"EDID", None, None, edid_buffer, ctypes.byref(edid_size)) != 0: - return None +from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo, ResolutionInfo +from hwprobe.models.status_models import StatusType - return parse_edid(bytes(edid_buffer)) +def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> DisplayModuleInfo: + """Fill in gaps on a DisplayModuleInfo from parsed EDID data. -def _extract_device_path(detail_buffer) -> str: - """Extract the device path string from a device interface detail buffer.""" - path_offset = ctypes.sizeof(wintypes.DWORD) - raw_path = ctypes.string_at(ctypes.addressof(detail_buffer) + path_offset) - return raw_path.decode("ascii", errors="ignore").upper() - - -def get_edid_by_hwid(hwid: str) -> Optional[dict]: - """ - Fetch EDID data from the Windows registry for a specific display device. - - Uses Windows SetupAPI to enumerate monitor device interfaces and find - the one matching the given hardware ID, then reads its EDID from registry. - - Args: - hwid: Hardware ID to match. Can be in formats like: - - "MONITOR\\AG326UD\\{...}" - - "\\\\?\\DISPLAY#MANUF#..." - - Returns: - Parsed EDID dictionary containing manufacturer_code, vendor_id, product_id, - serial, name, and inches. Returns None if not found or on error. - """ - if not hwid: - return None - - hwid_upper = hwid.upper() - - # Get device information set for monitor interfaces - device_info_set = SetupDiGetClassDevsA( - ctypes.byref(GUID_DEVINTERFACE_MONITOR), - None, - None, - DIGCF_PRESENT | DIGCF_DEVICEINTERFACE, - ) - - if device_info_set == _INVALID_HKEY: - return None - - try: - return _enumerate_and_find_edid(device_info_set, hwid_upper) - finally: - SetupDiDestroyDeviceInfoList(device_info_set) - - -def _enumerate_and_find_edid(device_info_set, hwid_upper: str) -> Optional[dict]: - """ - Enumerate device interfaces and find EDID for matching hardware ID. - - Args: - device_info_set: Handle to device information set - hwid_upper: Uppercase hardware ID to match - - Returns: - Parsed EDID dictionary if found, None otherwise. - """ - interface_index = 0 - - while True: - interface_data = SP_DEVICE_INTERFACE_DATA() - interface_data.cbSize = ctypes.sizeof(SP_DEVICE_INTERFACE_DATA) - - # Enumerate next interface - if not SetupDiEnumDeviceInterfaces( - device_info_set, - None, - ctypes.byref(GUID_DEVINTERFACE_MONITOR), - interface_index, - ctypes.byref(interface_data), - ): - break - - edid = _try_get_edid_for_interface(device_info_set, interface_data, hwid_upper) - if edid is not None: - return edid - - interface_index += 1 - - return None - - -def _try_get_edid_for_interface(device_info_set, interface_data, hwid_upper: str) -> Optional[dict]: - """ - Attempt to retrieve EDID for a single device interface if it matches the hardware ID. - - Args: - device_info_set: Handle to device information set - interface_data: Device interface data structure - hwid_upper: Uppercase hardware ID to match - - Returns: - Parsed EDID dictionary if this interface matches and EDID is readable, None otherwise. - """ - # Get required buffer size for interface detail - required_size = wintypes.DWORD(0) - SetupDiGetDeviceInterfaceDetailA( - device_info_set, - ctypes.byref(interface_data), - None, - 0, - ctypes.byref(required_size), - None, - ) - - if required_size.value == 0: - return None - - # Prepare detail buffer with correct cbSize - detail_buffer = ctypes.create_string_buffer(required_size.value) - struct.pack_into("I", detail_buffer, 0, _get_device_interface_detail_size()) - - device_data = SP_DEVINFO_DATA() - device_data.cbSize = ctypes.sizeof(SP_DEVINFO_DATA) - - # Get interface detail and device info - if not SetupDiGetDeviceInterfaceDetailA( - device_info_set, - ctypes.byref(interface_data), - detail_buffer, - required_size, - None, - ctypes.byref(device_data), - ): - return None - - # Check if this device matches our hardware ID - device_path = _extract_device_path(detail_buffer) - if hwid_upper not in device_path: - return None - - # Open registry key and read EDID - registry_key = SetupDiOpenDevRegKey( - device_info_set, - ctypes.byref(device_data), - DICS_FLAG_GLOBAL, - 0, - DIREG_DEV, - KEY_READ, - ) - - if registry_key == _INVALID_HKEY or registry_key == 0: - return None - - try: - return _read_edid_from_registry(registry_key) - finally: - RegCloseKey(registry_key) - - -# ============================================================================= -# Monitor Enumeration -# ============================================================================= - - -def _get_orientation_name(orientation_code: int) -> str: - """Convert Windows display orientation code to human-readable name.""" - return _ORIENTATION_NAMES.get(orientation_code, "Unknown") - - -def _get_connection_type(connector_info: Optional[dict]) -> Optional[str]: - """ - Extract connection type name from connector info. - - Args: - connector_info: Dictionary containing OutputTechnology value - - Returns: - Human-readable connection type (e.g., "HDMI", "DisplayPort"), or None. - """ - if not connector_info: - return None - - try: - technology_code = int(connector_info.get("OutputTechnology", -2)) - return DISPLAY_CON_TYPE.get(technology_code) - except (ValueError, TypeError): - return None - - -def _fetch_edid_for_monitor(connector_info: Optional[dict], pnp_device_id: str) -> tuple[Optional[dict], Optional[str]]: + Only sets fields that are currently None — existing values win. + Resolution fields are merged individually. """ - Fetch EDID data for a monitor, preferring display path over PNP ID. + data = parse_edid(edid_bytes) - Args: - connector_info: Connector info dict with DisplayPath (may be None) - pnp_device_id: PNP device ID as fallback + for field in data.model_dump().keys(): + if field == "resolution": + continue + if getattr(module, field) is None: + setattr(module, field, getattr(data, field)) - Returns: - Tuple of (edid_dict, device_path) where device_path may be None. - """ - device_path = None - - # Prefer display path for more accurate EDID matching - if connector_info: - device_path = connector_info.get("DisplayPath") - if device_path: - edid = get_edid_by_hwid(device_path) - if edid: - return edid, device_path - - # Fallback to PNP device ID - if pnp_device_id: - parts = pnp_device_id.split("\\") - if len(parts) > 1: - edid = get_edid_by_hwid(parts[1]) - return edid, device_path - - return None, device_path - - -def _build_monitor_info( - device_id: str, - hardware_id: str, - device_path: Optional[str], - display_mode: DEVMODEA, - edid: Optional[dict], - gpu_name: Optional[str], - connection_type: Optional[str], -) -> DisplayModuleInfo: - """ - Construct a DisplayModuleInfo object from collected data. - - Args: - device_id: Display device identifier (e.g., "\\\\.\\DISPLAY1") - hardware_id: PNP hardware ID - device_path: Display path string (may be None) - display_mode: DEVMODEA structure with current display settings - edid: Parsed EDID dictionary (may be None) - gpu_name: Name of associated GPU (may be None) - connection_type: Connection type string (may be None) - - Returns: - Populated DisplayModuleInfo object. - """ - monitor = DisplayModuleInfo() - - # Basic identification - monitor.device_id = device_id - monitor.acpi_path = hardware_id - monitor.device_path = device_path - monitor.gpu_name = gpu_name - monitor.interface = connection_type - - # Resolution info - monitor.resolution.width = display_mode.dmPelsWidth - monitor.resolution.height = display_mode.dmPelsHeight - monitor.resolution.refresh_rate = display_mode.dmDisplayFrequency - monitor.resolution.aspect_ratio = get_aspect_ratio(display_mode.dmPelsWidth, display_mode.dmPelsHeight) - - # Orientation - monitor.orientation = _get_orientation_name(display_mode.dmDisplayOrientation) - - # EDID-derived information - if edid: - monitor.name = edid.get("name") - monitor.inches = edid.get("inches") - monitor.manufacturer_code = edid.get("manufacturer_code") - monitor.serial_number = str(edid["serial"]) if edid.get("serial") is not None else None - monitor.vendor_id = f"0x{edid['vendor_id']:04X}" if edid.get("vendor_id") else None - monitor.product_id = f"0x{edid['product_id']:04X}" if edid.get("product_id") else None - - return monitor - - -def _add_partial_status(display_info: DisplayInfo, message: str) -> None: - """Add a partial status message to the display info.""" - display_info.status = Status(type=StatusType.PARTIAL) - display_info.status.messages.append(message) - - -def _monitor_enum_callback(hmonitor, hdc, rect, lparam) -> bool: - """ - Callback function for EnumDisplayMonitors. - - Called for each active monitor. Collects display information and adds - it to the DisplayInfo list passed via lparam. - - Args: - hmonitor: Handle to the display monitor - hdc: Handle to device context (unused) - rect: Pointer to RECT with monitor coordinates (unused) - lparam: Pointer to DisplayInfo object being populated - - Returns: - True to continue enumeration, False to stop. - """ - # Retrieve the DisplayInfo object from the pointer - display_info_ptr = ctypes.cast(lparam, ctypes.POINTER(ctypes.py_object)) - display_info: DisplayInfo = display_info_ptr.contents.value - - # Get monitor info including device name - monitor_info = MONITORINFOEXA() - monitor_info.cbSize = ctypes.sizeof(monitor_info) - GetMonitorInfoA(hmonitor, ctypes.byref(monitor_info)) - - device_id = monitor_info.szDevice.decode() - if not device_id: - _add_partial_status(display_info, "Failed to fetch Display device information, DeviceID is empty!") - return True + if data.resolution is None: + return module + if module.resolution is None: + module.resolution = data.resolution + return module + for field in data.resolution.model_dump(): + if getattr(module.resolution, field) is None: + setattr(module.resolution, field, getattr(data.resolution, field)) - # Get current display settings - display_mode = DEVMODEA() - display_mode.dmSize = ctypes.sizeof(display_mode) - EnumDisplaySettingsA(monitor_info.szDevice, ENUM_CURRENT_SETTINGS, ctypes.byref(display_mode)) + return module - # Get PNP device ID - display_device = DISPLAY_DEVICEA(cb=ctypes.sizeof(DISPLAY_DEVICEA)) - EnumDisplayDevicesA(monitor_info.szDevice, 0, ctypes.byref(display_device), 0) - pnp_device_id = display_device.DeviceID.decode() - if not pnp_device_id: - _add_partial_status(display_info, "Failed to fetch Display device information, PNPDeviceID is empty!") - return True - - # Get connector info for this display - connector_info_map = getattr(display_info, "_connectorInfo", None) - connector_info = connector_info_map.get(device_id) if connector_info_map else None - - # Get GPU association - gpu_name, gpu_result_code = find_monitor_gpu(device_id) - - # Get EDID and connection type - edid, device_path = _fetch_edid_for_monitor(connector_info, pnp_device_id) - connection_type = _get_connection_type(connector_info) - - # Build and add monitor info - monitor = _build_monitor_info( - device_id=device_id, - hardware_id=pnp_device_id, - device_path=device_path, - display_mode=display_mode, - edid=edid, - gpu_name=gpu_name if gpu_result_code == STATUS_OK else None, - connection_type=connection_type, - ) - - display_info.modules.append(monitor) - return True - - -# Keep the original name for backward compatibility -monitor_enum_proc = _monitor_enum_callback - - -# ============================================================================= -# Public API -# ============================================================================= - - -def _fetch_connector_info() -> tuple[Optional[dict], Optional[tuple[StatusType, str]]]: - """ - Fetch display connector information from the interop DLL. - - Returns: - Tuple of (connector_info_dict, error_info): - - connector_info_dict: Parsed connector info, or None on failure - - error_info: Tuple of (StatusType, message) if failed, None on success - """ - buffer = ctypes.create_string_buffer(4096) - result_code = GetDisplayPathInfo(buffer, 4096) - - if result_code != STATUS_OK: - return None, (StatusType.PARTIAL, f"Failed to fetch Display connector information, error code: {result_code}") - - raw_string = buffer.value.decode("utf-8", errors="ignore").strip() - return parse_connector_info(raw_string), None - - -def fetch_display_info_internal() -> DisplayInfo: - """ - Enumerate all display monitors and collect their information. - - This is the main entry point for display enumeration. It: - 1. Fetches connector information from the interop DLL - 2. Enumerates all active monitors using EnumDisplayMonitors - 3. For each monitor, collects resolution, EDID data, GPU association, etc. - - Returns: - DisplayInfo object containing a list of DisplayModuleInfo objects, - one per detected monitor, along with status information. - """ +def fetch_display_info() -> DisplayInfo: display_info = DisplayInfo() - # Fetch connector information (display paths and connection types) - connector_info, error = _fetch_connector_info() - if error: - display_info.status.type = error[0] - display_info.status.messages.append(error[1]) - else: - display_info._connectorInfo = connector_info - - # Enumerate all monitors - display_info_ptr = ctypes.py_object(display_info) - enum_callback = MONITORENUMPROC(_monitor_enum_callback) - - EnumDisplayMonitors(0, 0, enum_callback, ctypes.addressof(display_info_ptr)) - - # Mark as failed if no monitors were found - if len(display_info.modules) == 0: + # Connector info from CCD API (display paths + output technology) + try: + connectors = {c.display_id: c for c in get_display_connectors()} + except RuntimeError: + connectors = {} + display_info.status.type = StatusType.PARTIAL + display_info.status.messages.append("Failed to fetch display connector information") + + for dev in get_monitor_devices(): + module = DisplayModuleInfo() + module.acpi_path = dev.pnp_device_id + module.resolution = ResolutionInfo( + width=dev.width, + height=dev.height, + refresh_rate=float(dev.refresh_rate), + ) + + # GPU association via DXGI + module.gpu_name = get_gpu_for_display(dev.device_id) + + # Connector type from CCD (more authoritative than EDID) + connector = connectors.get(dev.device_id) + if connector: + module.interface = DISPLAY_CON_TYPE.get(connector.output_technology) + + # EDID — prefer display path for matching, fall back to PNP ID + edid_key = ( + connector.display_path + if connector and connector.display_path + else dev.pnp_device_id.split("\\")[1] if "\\" in dev.pnp_device_id else dev.pnp_device_id + ) + edid_bytes = get_edid(edid_key) + if edid_bytes: + module = _enrich_from_edid(module, edid_bytes) + + display_info.modules.append(module) + + if not display_info.modules: display_info.status.type = StatusType.FAILED return display_info diff --git a/src/hwprobe/core/windows/manager.py b/src/hwprobe/core/windows/manager.py index a7fb982..a5b64ee 100644 --- a/src/hwprobe/core/windows/manager.py +++ b/src/hwprobe/core/windows/manager.py @@ -1,7 +1,7 @@ from hwprobe.core.windows.audio import fetch_audio_info_fast from hwprobe.core.windows.baseboard import fetch_baseboard_info from hwprobe.core.windows.cpu import fetch_cpu_info -from hwprobe.core.windows.display import fetch_display_info_internal +from hwprobe.core.windows.display import fetch_display_info from hwprobe.core.windows.graphics import fetch_graphics_info from hwprobe.core.windows.memory import fetch_memory_info from hwprobe.core.windows.network import fetch_network_info_fast @@ -50,7 +50,7 @@ def fetch_network_info(self) -> NetworkInfo: return self.info.network def fetch_display_info(self) -> DisplayInfo: - self.info.display = fetch_display_info_internal() + self.info.display = fetch_display_info() return self.info.display def fetch_audio_info(self): diff --git a/src/hwprobe/interops/win/CMakeLists.txt b/src/hwprobe/interops/win/CMakeLists.txt index e6ddccc..3006f91 100644 --- a/src/hwprobe/interops/win/CMakeLists.txt +++ b/src/hwprobe/interops/win/CMakeLists.txt @@ -62,7 +62,33 @@ set_target_properties(wmi PROPERTIES PREFIX "" ) -# ---- Standalone test executable (loads both DLLs at runtime) ---- +# ---- display_info.dll : CCD connectors + DXGI GPU match + SetupAPI EDID ---- +add_library(display_info SHARED + src/display_info.cpp +) + +target_link_options(display_info PRIVATE ${_STATIC_RUNTIME_OPTS}) + +target_include_directories(display_info + PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include +) + +target_link_libraries(display_info + PRIVATE + dxgi + setupapi + advapi32 + user32 +) + +set_target_properties(display_info PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings + OUTPUT_NAME "display_info" + PREFIX "" +) + +# ---- Standalone test executable (loads all DLLs at runtime) ---- add_executable(WinDeviceInfo main.cpp) target_include_directories(WinDeviceInfo diff --git a/src/hwprobe/interops/win/bindings/display_info.py b/src/hwprobe/interops/win/bindings/display_info.py new file mode 100644 index 0000000..76edaf4 --- /dev/null +++ b/src/hwprobe/interops/win/bindings/display_info.py @@ -0,0 +1,149 @@ +""" +display_info.py - Python ctypes binding for display_info.dll + +Four exports covering all Win32 display APIs: + - get_monitor_devices(): user32 monitor enumeration (EnumDisplayMonitors + settings) + - get_display_connectors(): CCD API (QueryDisplayConfig) — connector type + display path + - get_gpu_for_display(): DXGI output→adapter match — GPU name + - get_edid(): SetupAPI + registry EDID lookup — raw EDID bytes + +All Win32 calls live in C++ — Python only does EDID parsing and data assembly. + +Usage: + from hwprobe.interops.win.bindings.display_info import ( + get_monitor_devices, get_display_connectors, get_gpu_for_display, get_edid, + ) + +Source: interops/win/include/display_info.h and interops/win/src/display_info.cpp. +""" + +import ctypes +import pathlib +from dataclasses import dataclass +from typing import Optional + +_HERE = pathlib.Path(__file__).parent +_LIB_PATH = _HERE / "display_info.dll" + +if not _LIB_PATH.exists(): + raise FileNotFoundError( + f"display_info.dll not found at {_LIB_PATH}.\n" + f"Build the project first: cmake --build build --config Release" + ) + +_lib = ctypes.WinDLL(str(_LIB_PATH)) + + +# ---- mirror the C structs ---- + +class _MonitorDevice(ctypes.Structure): + _fields_ = [ + ("device_id", ctypes.c_char * 32), + ("pnp_device_id", ctypes.c_char * 128), + ("width", ctypes.c_int), + ("height", ctypes.c_int), + ("refresh_rate", ctypes.c_int), + ] + + +class _ConnectorInfo(ctypes.Structure): + _fields_ = [ + ("display_id", ctypes.c_char * 32), + ("display_path", ctypes.c_char * 512), + ("output_technology", ctypes.c_int), + ] + + +# ---- function signatures ---- + +_lib.get_monitor_devices.restype = ctypes.c_int +_lib.get_monitor_devices.argtypes = [ctypes.POINTER(_MonitorDevice), ctypes.c_int] + +_lib.get_display_connectors.restype = ctypes.c_int +_lib.get_display_connectors.argtypes = [ctypes.POINTER(_ConnectorInfo), ctypes.c_int] + +_lib.get_gpu_for_display.restype = ctypes.c_int +_lib.get_gpu_for_display.argtypes = [ctypes.c_char_p, ctypes.c_char_p, ctypes.c_int] + +_lib.get_edid.restype = ctypes.c_int +_lib.get_edid.argtypes = [ctypes.c_char_p, ctypes.POINTER(ctypes.c_ubyte), ctypes.c_int] + + +# ---- Python-facing dataclasses ---- + +@dataclass +class MonitorDevice: + device_id: str + pnp_device_id: str + width: int + height: int + refresh_rate: int + + +@dataclass +class ConnectorInfo: + display_id: str + display_path: str + output_technology: int + + +# ---- public API ---- + +_MAX = 8 + + +def get_monitor_devices() -> list[MonitorDevice]: + """Enumerate active monitors via user32. Returns one entry per attached display.""" + buf = (_MonitorDevice * _MAX)() + count = _lib.get_monitor_devices(buf, _MAX) + if count < 0: + raise RuntimeError("get_monitor_devices() failed (C library returned -1)") + + return [ + MonitorDevice( + device_id=buf[i].device_id.decode("utf-8", errors="replace").strip("\x00"), + pnp_device_id=buf[i].pnp_device_id.decode("utf-8", errors="replace").strip("\x00"), + width=buf[i].width, + height=buf[i].height, + refresh_rate=buf[i].refresh_rate, + ) + for i in range(count) + ] + + +def get_display_connectors() -> list[ConnectorInfo]: + """Return active display connector info from the CCD API.""" + buf = (_ConnectorInfo * _MAX)() + count = _lib.get_display_connectors(buf, _MAX) + if count < 0: + raise RuntimeError("get_display_connectors() failed (C library returned -1)") + + return [ + ConnectorInfo( + display_id=buf[i].display_id.decode("utf-8", errors="replace").strip("\x00"), + display_path=buf[i].display_path.decode("utf-8", errors="replace").strip("\x00"), + output_technology=buf[i].output_technology, + ) + for i in range(count) + ] + + +def get_gpu_for_display(device_name: str) -> Optional[str]: + """Find the GPU name driving a display device (e.g. r'\\.\DISPLAY1'). + Returns None if not found.""" + buf = ctypes.create_string_buffer(256) + rc = _lib.get_gpu_for_display(device_name.encode("utf-8"), buf, 256) + if rc != 0: + return None + name = buf.value.decode("utf-8", errors="replace").strip("\x00") + return name or None + + +def get_edid(pnp_device_id: str) -> Optional[bytes]: + """Read raw EDID bytes from the registry for a monitor matching the + given PNP device ID or display path. Returns None if not found.""" + buf = (ctypes.c_ubyte * 1024)() + count = _lib.get_edid(pnp_device_id.encode("utf-8"), buf, 1024) + if count <= 0: + return None + return bytes(buf[:count]) diff --git a/src/hwprobe/interops/win/include/display_info.h b/src/hwprobe/interops/win/include/display_info.h new file mode 100644 index 0000000..344c18a --- /dev/null +++ b/src/hwprobe/interops/win/include/display_info.h @@ -0,0 +1,43 @@ +#pragma once + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +// Active monitor device from user32 enumeration. +// One entry per attached display. +typedef struct { + char device_id[32]; // GDI device name, e.g. "\\.\DISPLAY1" + char pnp_device_id[128]; // PNP hardware ID, e.g. "MONITOR\SAMxxxx\{...}" + int width; // Current resolution width (pixels) + int height; // Current resolution height (pixels) + int refresh_rate; // Current refresh rate (Hz) +} MonitorDevice; + +// Display connector info from the CCD API (QueryDisplayConfig). +// One entry per active display path. +typedef struct { + char display_id[32]; // Source GDI device name, e.g. "\\.\DISPLAY1" + char display_path[512]; // Target monitor device path, e.g. "\\?\DISPLAY#..." + int output_technology; // DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum value +} ConnectorInfo; + +// Fill `out` with active monitor devices. Returns count, or -1 on error. +int get_monitor_devices(MonitorDevice *out, int max_count); + +// Fill `out` with active display connector info. Returns count, or -1 on error. +int get_display_connectors(ConnectorInfo *out, int max_count); + +// Find the GPU (adapter) name driving a given display device name. +// Returns 0 on success, -1 on failure. Writes a UTF-8 name into out_gpu_name. +int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size); + +// Read raw EDID bytes from the registry for a monitor matching `pnp_device_id`. +// Returns EDID byte count (>=128 on success), 0 if not found, -1 on error. +int get_edid(const char *pnp_device_id, unsigned char *out, int max_size); + +#ifdef __cplusplus +} +#endif diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index dcf99c9..4b93f24 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -1,12 +1,14 @@ -// Standalone CLI test for both bindings in interops/win/: +// Standalone CLI test for all bindings in interops/win/: // gpu_info.dll -> get_gpu_info (DXGI + SetupAPI) // wmi.dll -> get_wmi_data (COM + WbemLocator) +// display_info.dll -> get_display_connectors, get_gpu_for_display, get_edid // // Loads each DLL at runtime (same path the Python bindings use) so we exercise // the real ABI without needing matching import libs. #include "gpu_info.h" #include "wmi.h" +#include "display_info.h" #include #include #include @@ -102,8 +104,85 @@ static int test_wmi() { return 0; } +typedef int (*get_monitor_devices_ptr)(MonitorDevice *, int); +typedef int (*get_display_connectors_ptr)(ConnectorInfo *, int); +typedef int (*get_gpu_for_display_ptr)(const char *, char *, int); +typedef int (*get_edid_ptr)(const char *, unsigned char *, int); + +static int test_display() { + HMODULE hLib = _load("display_info.dll"); + if (!hLib) { + printf("[display] could not load display_info.dll (GetLastError=%lu)\n", GetLastError()); + return 1; + } + + auto fnMonitors = reinterpret_cast( + GetProcAddress(hLib, "get_monitor_devices")); + auto fnConnectors = reinterpret_cast( + GetProcAddress(hLib, "get_display_connectors")); + auto fnGpu = reinterpret_cast( + GetProcAddress(hLib, "get_gpu_for_display")); + auto fnEdid = reinterpret_cast( + GetProcAddress(hLib, "get_edid")); + + if (!fnMonitors || !fnConnectors || !fnGpu || !fnEdid) { + printf("[display] missing exports\n"); + FreeLibrary(hLib); + return 1; + } + + // Monitors + MonitorDevice monitors[8] = {}; + int nm = fnMonitors(monitors, 8); + if (nm < 0) { + printf("[display] get_monitor_devices failed\n"); + FreeLibrary(hLib); + return 1; + } + + // Connectors (for matching) + ConnectorInfo connectors[8] = {}; + int nc = fnConnectors(connectors, 8); + + printf("[display] Found %d monitor(s):\n\n", nm); + for (int i = 0; i < nm; ++i) { + printf("Monitor %d:\n", i); + printf(" DeviceID: %s\n", monitors[i].device_id); + printf(" PNPDeviceID: %s\n", monitors[i].pnp_device_id); + printf(" Resolution: %dx%d @ %d Hz\n", + monitors[i].width, monitors[i].height, monitors[i].refresh_rate); + + // GPU for this display + char gpuName[256] = {}; + if (fnGpu(monitors[i].device_id, gpuName, sizeof(gpuName)) == 0) { + printf(" GPU: %s\n", gpuName); + } + + // Connector info + for (int j = 0; j < nc; ++j) { + if (strcmp(connectors[j].display_id, monitors[i].device_id) == 0) { + printf(" Connector: %s (tech=%d)\n", + connectors[j].display_path, connectors[j].output_technology); + + // EDID via display path + unsigned char edidBuf[1024] = {}; + int edidLen = fnEdid(connectors[j].display_path, edidBuf, sizeof(edidBuf)); + if (edidLen > 0) { + printf(" EDID: %d bytes\n", edidLen); + } + break; + } + } + printf("\n"); + } + + FreeLibrary(hLib); + return 0; +} + int main() { int rc_gpu = test_gpu(); int rc_wmi = test_wmi(); - return (rc_gpu || rc_wmi) ? 1 : 0; + int rc_display = test_display(); + return (rc_gpu || rc_wmi || rc_display) ? 1 : 0; } diff --git a/src/hwprobe/interops/win/src/display_info.cpp b/src/hwprobe/interops/win/src/display_info.cpp new file mode 100644 index 0000000..8e4aa93 --- /dev/null +++ b/src/hwprobe/interops/win/src/display_info.cpp @@ -0,0 +1,264 @@ +// Display info: monitor enumeration + CCD connectors + DXGI GPU match + SetupAPI EDID. +// Returns raw values — Python does all parsing (EDID decode, connector type mapping). +// See display_info.h for the ABI. + +#include "display_info.h" + +#include +#include +#include +#include + +#include +#include +#include + +#ifdef _MSC_VER +#pragma comment(lib, "dxgi.lib") +#pragma comment(lib, "setupapi.lib") +#endif + +// ---- wide -> UTF-8 ---- + +static std::string WideToUtf8(const wchar_t *src) { + if (!src || !*src) return {}; + int len = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); + if (len <= 1) return {}; + std::string out(len - 1, '\0'); + WideCharToMultiByte(CP_UTF8, 0, src, -1, out.data(), len, nullptr, nullptr); + return out; +} + +// ===================================================================== +// get_monitor_devices — user32 monitor enumeration +// ===================================================================== + +struct MonitorEnumCtx { + MonitorDevice *devices; + int max_count; + int count; +}; + +static BOOL CALLBACK _monitorEnumProc(HMONITOR hMonitor, HDC, LPRECT, LPARAM lparam) { + auto *ctx = reinterpret_cast(lparam); + if (ctx->count >= ctx->max_count) return FALSE; + + MONITORINFOEXA mi = {}; + mi.cbSize = sizeof(mi); + if (!GetMonitorInfoA(hMonitor, &mi)) return TRUE; + if (mi.szDevice[0] == '\0') return TRUE; + + DEVMODEA dm = {}; + dm.dmSize = sizeof(dm); + EnumDisplaySettingsA(mi.szDevice, ENUM_CURRENT_SETTINGS, &dm); + + DISPLAY_DEVICEA dd = {}; + dd.cb = sizeof(dd); + EnumDisplayDevicesA(mi.szDevice, 0, &dd, 0); + if (dd.DeviceID[0] == '\0') return TRUE; + + MonitorDevice &md = ctx->devices[ctx->count]; + std::memset(&md, 0, sizeof(md)); + std::strncpy(md.device_id, mi.szDevice, sizeof(md.device_id) - 1); + std::strncpy(md.pnp_device_id, dd.DeviceID, sizeof(md.pnp_device_id) - 1); + md.width = static_cast(dm.dmPelsWidth); + md.height = static_cast(dm.dmPelsHeight); + md.refresh_rate = static_cast(dm.dmDisplayFrequency); + ++ctx->count; + + return TRUE; +} + +int get_monitor_devices(MonitorDevice *out, int max_count) { + if (!out || max_count <= 0) return -1; + + MonitorEnumCtx ctx = {out, max_count, 0}; + EnumDisplayMonitors(nullptr, nullptr, _monitorEnumProc, reinterpret_cast(&ctx)); + return ctx.count; +} + +// ===================================================================== +// get_display_connectors — CCD API (QueryDisplayConfig) +// ===================================================================== + +int get_display_connectors(ConnectorInfo *out, int max_count) { + if (!out || max_count <= 0) return -1; + + UINT32 pathCount = 0, modeCount = 0; + LONG rc = GetDisplayConfigBufferSizes(QDC_ONLY_ACTIVE_PATHS, &pathCount, &modeCount); + if (rc != ERROR_SUCCESS) return -1; + + std::vector paths(pathCount); + std::vector modes(modeCount); + + rc = QueryDisplayConfig(QDC_ONLY_ACTIVE_PATHS, &pathCount, paths.data(), + &modeCount, modes.data(), nullptr); + if (rc != ERROR_SUCCESS) return -1; + + int count = 0; + for (UINT32 i = 0; i < pathCount && count < max_count; ++i) { + const auto &path = paths[i]; + + // Source device name (GDI device name like \\.\DISPLAY1) + DISPLAYCONFIG_SOURCE_DEVICE_NAME srcName = {}; + srcName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME; + srcName.header.size = sizeof(srcName); + srcName.header.adapterId = path.sourceInfo.adapterId; + srcName.header.id = path.sourceInfo.id; + + if (DisplayConfigGetDeviceInfo(&srcName.header) != ERROR_SUCCESS) + continue; + + // Target device name (monitor device path like \\?\DISPLAY#...) + DISPLAYCONFIG_TARGET_DEVICE_NAME tgtName = {}; + tgtName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME; + tgtName.header.size = sizeof(tgtName); + tgtName.header.adapterId = path.targetInfo.adapterId; + tgtName.header.id = path.targetInfo.id; + + if (DisplayConfigGetDeviceInfo(&tgtName.header) != ERROR_SUCCESS) + continue; + + ConnectorInfo &ci = out[count]; + std::memset(&ci, 0, sizeof(ci)); + + std::string src = WideToUtf8(srcName.viewGdiDeviceName); + std::strncpy(ci.display_id, src.c_str(), sizeof(ci.display_id) - 1); + + std::string tgt = WideToUtf8(tgtName.monitorDevicePath); + std::strncpy(ci.display_path, tgt.c_str(), sizeof(ci.display_path) - 1); + + ci.output_technology = static_cast(path.targetInfo.outputTechnology); + ++count; + } + + return count; +} + +// ===================================================================== +// get_gpu_for_display — DXGI output -> adapter name match +// ===================================================================== + +int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size) { + if (!device_name || !out_gpu_name || buf_size <= 0) return -1; + out_gpu_name[0] = '\0'; + + IDXGIFactory1 *factory = nullptr; + if (FAILED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) + return -1; + + int result = -1; + IDXGIAdapter1 *adapter = nullptr; + + for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND; ++a) { + DXGI_ADAPTER_DESC1 adesc; + if (FAILED(adapter->GetDesc1(&adesc))) { + adapter->Release(); + continue; + } + + IDXGIOutput *output = nullptr; + for (UINT o = 0; adapter->EnumOutputs(o, &output) != DXGI_ERROR_NOT_FOUND; ++o) { + DXGI_OUTPUT_DESC odesc; + if (FAILED(output->GetDesc(&odesc))) { + output->Release(); + continue; + } + + std::string devName = WideToUtf8(odesc.DeviceName); + if (devName == device_name) { + std::string gpuName = WideToUtf8(adesc.Description); + std::strncpy(out_gpu_name, gpuName.c_str(), buf_size - 1); + out_gpu_name[buf_size - 1] = '\0'; + result = 0; + output->Release(); + adapter->Release(); + factory->Release(); + return result; + } + output->Release(); + } + adapter->Release(); + } + + factory->Release(); + return result; +} + +// ===================================================================== +// get_edid — SetupAPI + registry EDID lookup +// ===================================================================== + +// {E6F07B5F-EE97-4A90-B076-33F57B4F4EA7} +static const GUID GUID_DEVINTERFACE_MONITOR = { + 0xE6F07B5F, 0xEE97, 0x4A90, + {0xB0, 0x76, 0x33, 0xF5, 0x7B, 0xF4, 0xEA, 0xA7} +}; + +int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { + if (!pnp_device_id || !out || max_size <= 0) return -1; + + // Convert the search key to uppercase wide string for case-insensitive matching. + std::string key(pnp_device_id); + for (auto &ch : key) ch = static_cast(toupper(static_cast(ch))); + + HDEVINFO devInfoSet = SetupDiGetClassDevsW( + &GUID_DEVINTERFACE_MONITOR, nullptr, nullptr, + DIGCF_PRESENT | DIGCF_DEVICEINTERFACE); + if (devInfoSet == INVALID_HANDLE_VALUE) return -1; + + int result = 0; + SP_DEVICE_INTERFACE_DATA ifaceData = {}; + ifaceData.cbSize = sizeof(ifaceData); + + for (DWORD i = 0; SetupDiEnumDeviceInterfaces(devInfoSet, nullptr, + &GUID_DEVINTERFACE_MONITOR, i, &ifaceData); ++i) { + + // Get required buffer size for interface detail. + DWORD requiredSize = 0; + SetupDiGetDeviceInterfaceDetailW(devInfoSet, &ifaceData, nullptr, 0, + &requiredSize, nullptr); + if (requiredSize == 0) continue; + + std::vector detailBuf(requiredSize); + auto *detail = reinterpret_cast(detailBuf.data()); + detail->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W); + + SP_DEVINFO_DATA devData = {}; + devData.cbSize = sizeof(devData); + + if (!SetupDiGetDeviceInterfaceDetailW(devInfoSet, &ifaceData, detail, + requiredSize, nullptr, &devData)) + continue; + + // Device path is a wide string starting after the cbSize field. + std::string devPath = WideToUtf8(detail->DevicePath); + for (auto &ch : devPath) ch = static_cast(toupper(static_cast(ch))); + + // Match against the search key (substring match — the PNP ID is + // typically a portion of the full device path). + if (key.find(devPath) == std::string::npos && devPath.find(key) == std::string::npos) + continue; + + // Open the device registry key and read EDID. + HKEY hKey = SetupDiOpenDevRegKey(devInfoSet, &devData, DICS_FLAG_GLOBAL, + 0, DIREG_DEV, KEY_READ); + if (hKey == INVALID_HANDLE_VALUE || hKey == nullptr) + continue; + + DWORD edidSize = 0; + if (RegQueryValueExW(hKey, L"EDID", nullptr, nullptr, nullptr, &edidSize) == ERROR_SUCCESS) { + if (edidSize > 0 && static_cast(edidSize) <= max_size) { + if (RegQueryValueExW(hKey, L"EDID", nullptr, nullptr, out, &edidSize) == ERROR_SUCCESS) { + result = static_cast(edidSize); + } + } + } + + RegCloseKey(hKey); + if (result > 0) break; + } + + SetupDiDestroyDeviceInfoList(devInfoSet); + return result; +} diff --git a/tests/core/windows/test_display.py b/tests/core/windows/test_display.py index f5873c9..f4a693c 100644 --- a/tests/core/windows/test_display.py +++ b/tests/core/windows/test_display.py @@ -1,356 +1,242 @@ -import ctypes +""" +Tests for hwprobe.core.windows.display + +All Win32 calls go through display_info.dll, so tests just mock the four +binding functions. No ctypes patching needed. +Uses direct-load pattern to bypass core.windows.__init__ which chains +into broken legacy imports. +""" + +import importlib +import importlib.util +import pathlib import struct -from ctypes import addressof, py_object +import sys +import types +from dataclasses import dataclass +from typing import Optional import pytest -from hwprobe.core.windows import display -from hwprobe.interops.win.legacy.constants import ( - STATUS_FAILURE, - STATUS_INVALID_ARG, - STATUS_NOK, - STATUS_OK, -) -from hwprobe.models.display_models import DisplayInfo +from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo, ResolutionInfo from hwprobe.models.status_models import StatusType +_MODULE_PATH = pathlib.Path(__file__).resolve().parents[3] / "src" / "hwprobe" / "core" / "windows" / "display.py" + + +@dataclass +class MonitorDevice: + device_id: str + pnp_device_id: str + width: int + height: int + refresh_rate: int + + +@dataclass +class ConnectorInfo: + display_id: str + display_path: str + output_technology: int + + +def _load_display_module(): + """Load display.py directly without triggering core.windows.__init__.""" + # Stub the display_info binding — it loads a DLL at import time. + # Use real dataclasses so tests can construct them. + _binding = types.ModuleType("hwprobe.interops.win.bindings.display_info") + _binding.MonitorDevice = MonitorDevice + _binding.ConnectorInfo = ConnectorInfo + _binding.get_monitor_devices = lambda: [] + _binding.get_display_connectors = lambda: [] + _binding.get_gpu_for_display = lambda name: None + _binding.get_edid = lambda pnp: None + sys.modules.setdefault("hwprobe.interops.win.bindings.display_info", _binding) + + # Stub win_enum — display.py imports DISPLAY_CON_TYPE from it, but + # importing the real module triggers core.windows.__init__. + _win_enum = types.ModuleType("hwprobe.core.windows.win_enum") + _win_enum.DISPLAY_CON_TYPE = {4: "DVI", 5: "HDMI", 10: "DisplayPort", 11: "eDP"} + sys.modules.setdefault("hwprobe.core.windows.win_enum", _win_enum) + + mod_name = "hwprobe.core.windows.display" + if mod_name in sys.modules: + return sys.modules[mod_name] + spec = importlib.util.spec_from_file_location(mod_name, _MODULE_PATH) + mod = importlib.util.module_from_spec(spec) + sys.modules[mod_name] = mod + spec.loader.exec_module(mod) + return mod + + +display = _load_display_module() + + # ============================================================ # Helpers # ============================================================ -def deref(ptr, ctype): - """Dereference a ctypes byref() argument safely.""" - return ctypes.cast(ptr, ctypes.POINTER(ctype)).contents - - -def build_minimal_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34): - """Build a minimal 128-byte EDID for testing.""" +def _build_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34, year=2023): + """Build a minimal 128-byte EDID matching the shared parser's expectations.""" edid = bytearray(128) - # decoded: vendor = TST - vendor = (1 << 10) | (2 << 5) | 3 + vendor = (1 << 10) | (2 << 5) | 3 # "ABC" edid[8:10] = struct.pack(">H", vendor) edid[10:12] = struct.pack(" 0 - - @pytest.mark.parametrize( - "width,height", - [(0, 1080), (1920, 0), (0, 0)], - ) - def test_invalid_dimensions(self, width, height): - ratio, real, friendly = display.get_aspect_ratio(width, height) - - assert ratio is None - assert real is None - assert friendly is None +def _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\ABC123\{GUID}", w=2560, h=1440, rr=144): + return MonitorDevice(device_id=device_id, pnp_device_id=pnp_id, width=w, height=h, refresh_rate=rr) # ============================================================ -# EDID parsing tests +# EDID enrichment tests # ============================================================ -class TestEDIDParsing: - def test_minimal_edid(self): - edid, vendor = build_minimal_edid() - parsed = display.parse_edid(edid) +class TestEnrichFromEdid: + def test_fills_name_year_serial_manufacturer(self): + module = DisplayModuleInfo() + module = display._enrich_from_edid(module, _build_edid()) - assert parsed["manufacturer_code"] == "ABC" - assert parsed["vendor_id"] == vendor - assert parsed["product_id"] == 0x1234 - assert parsed["serial"] == 0xDEADBEEF - assert parsed["name"] == "TEST-MONITOR" - assert parsed["inches"] > 0 + assert module.name == "TEST-MONITOR" + assert module.year == 2023 + assert module.serial_number == "SN12345" + assert module.manufacturer_code == "ABC" - def test_missing_name_descriptor(self): - edid, _ = build_minimal_edid() - edid = bytearray(edid) - edid[54:58] = b"\x00\x00\x00\x00" - parsed = display.parse_edid(bytes(edid)) + def test_fills_bit_depth_into_existing_resolution(self): + module = DisplayModuleInfo() + module.resolution = ResolutionInfo(width=2560, height=1440, refresh_rate=144.0) + module = display._enrich_from_edid(module, _build_edid()) - assert parsed["name"] is None or parsed["name"] == "" + assert module.resolution.width == 2560 # not overwritten + assert module.resolution.height == 1440 # not overwritten + assert module.resolution.refresh_rate == 144.0 # not overwritten + assert module.resolution.bit_depth is not None # filled from EDID - def test_invalid_length(self): - assert display.parse_edid(b"short") is None + def test_fills_resolution_when_none(self): + module = DisplayModuleInfo() + module = display._enrich_from_edid(module, _build_edid()) - def test_invalid_hdev(self, monkeypatch): - def mockfail_SetupDiGetClassDevsA(cGuidPtr, enumerator, hwndParent, flags): - return -1 # simulate failure + assert module.resolution is not None - monkeypatch.setattr(display, "SetupDiGetClassDevsA", mockfail_SetupDiGetClassDevsA) + def test_does_not_overwrite_existing_fields(self): + module = DisplayModuleInfo(name="Custom Name", year=2020) + module = display._enrich_from_edid(module, _build_edid()) - assert display.get_edid_by_hwid(None) is None - - def test_device_interfaces_enum_fail(self, monkeypatch): - def mockfail_SetupDiEnumDeviceInterfaces(hDev, devData, cGuidPtr, memberIdx, devIntData): - return False - - monkeypatch.setattr(display, "SetupDiEnumDeviceInterfaces", mockfail_SetupDiEnumDeviceInterfaces) - - assert display.get_edid_by_hwid(None) is None + assert module.name == "Custom Name" + assert module.year == 2020 + assert module.serial_number == "SN12345" # still fills None fields # ============================================================ -# monitor_enum_proc tests +# fetch_display_info tests # ============================================================ -@pytest.fixture -def fake_win32(monkeypatch): - """Mock Win32 API calls for monitor enumeration.""" - - def fake_GetMonitorInfoA(hmonitor, mi_ptr): - mi = deref(mi_ptr, display.MONITORINFOEXA) - mi.szDevice = b"\\\\.\\DISPLAY1" - return True - - def fake_EnumDisplaySettingsA(device, mode, dm_ptr): - dm = deref(dm_ptr, display.DEVMODEA) - dm.dmPelsWidth = 2560 - dm.dmPelsHeight = 1440 - dm.dmDisplayFrequency = 144 - dm.dmDisplayOrientation = 0 - return True - - def fake_EnumDisplayDevicesA(device, idx, dd_ptr, flags): - dd = deref(dd_ptr, display.DISPLAY_DEVICEA) - dd.DeviceID = b"MONITOR\\AG326UD\\{SOME-GUID}" - return True - - monkeypatch.setattr(display, "GetMonitorInfoA", fake_GetMonitorInfoA) - monkeypatch.setattr(display, "EnumDisplaySettingsA", fake_EnumDisplaySettingsA) - monkeypatch.setattr(display, "EnumDisplayDevicesA", fake_EnumDisplayDevicesA) - - -class TestMonitorEnumProc: - def test_happy_path(self, fake_win32, monkeypatch): - monitors = DisplayInfo() - monitors_ptr = py_object(monitors) - lparam = addressof(monitors_ptr) - - monkeypatch.setattr(display, "find_monitor_gpu", lambda name: ("GPU-0", STATUS_OK)) - monkeypatch.setattr( - display, - "get_edid_by_hwid", - lambda hwid: { - "name": "AG326UD", - "vendor_id": 0x1234, - "product_id": 0x5678, - "serial": "42", - "inches": 32, - "manufacturer_code": "TST", - }, - ) - - ret = display.monitor_enum_proc(1, 0, None, lparam) - assert ret is True - assert len(monitors.modules) == 1 - - mod = monitors.modules[0] - assert mod.name == "AG326UD" - assert mod.gpu_name == "GPU-0" - assert mod.resolution.width == 2560 - assert mod.resolution.height == 1440 - assert mod.resolution.refresh_rate == 144 - assert int(mod.vendor_id, 16) == 0x1234 - assert int(mod.product_id, 16) == 0x5678 - assert mod.serial_number == "42" - assert mod.manufacturer_code == "TST" - - def test_no_edid_found(self, fake_win32, monkeypatch): - monitors = DisplayInfo() - monitors_ptr = py_object(monitors) - lparam = addressof(monitors_ptr) - - monkeypatch.setattr(display, "find_monitor_gpu", lambda name: (None, STATUS_NOK)) - monkeypatch.setattr(display, "get_edid_by_hwid", lambda hwid: None) - - ret = display.monitor_enum_proc(1, 0, None, lparam) - assert ret is True - assert len(monitors.modules) == 1 - assert monitors.modules[0].name is None - - def test_enum_display_settings_fail(self, monkeypatch): - def fake_EnumDisplaySettingsA(device, mode, dm_ptr): - return False - - monitors = DisplayInfo() - monitors_ptr = py_object(monitors) - lparam = addressof(monitors_ptr) - - monkeypatch.setattr(display, "EnumDisplaySettingsA", fake_EnumDisplaySettingsA) - - ret = display.monitor_enum_proc(1, 0, None, lparam) - - assert ret is True - assert monitors.status.type == StatusType.PARTIAL - assert monitors.modules == [] - - -class TestDisplayInfoFetch: - def test_fetch_display_info_internal_real(self): - monitors = display.fetch_display_info_internal() - - assert monitors.status.type == StatusType.SUCCESS - assert len(monitors.modules) > 0 - - module = monitors.modules[0] - assert module.name is not None - assert module.gpu_name is not None - assert module.device_id is not None - assert module.acpi_path is not None - assert module.resolution.width > 0 - assert module.resolution.height > 0 - assert module.resolution.aspect_ratio > 0 - assert module.resolution.aspect_ratio_real is not None - assert module.resolution.aspect_ratio_friendly is not None - assert module.orientation != "Unknown" - assert module.inches > 0 - assert module.vendor_id is not None - assert module.product_id is not None - assert module.serial_number is not None - assert module.manufacturer_code is not None - - def test_fetch_display_info_internal_failure(self, monkeypatch): - def mockfail_EnumDisplayMonitors(hdc, lprcClip, lpfnEnum, dwData): - return False - - monkeypatch.setattr(display, "EnumDisplayMonitors", mockfail_EnumDisplayMonitors) - - assert display.fetch_display_info_internal().status.type == StatusType.FAILED - - @pytest.mark.parametrize( - "orientation, expected", - [ - (0, "Landscape"), - (1, "Portrait"), - (2, "Landscape (flipped)"), - (3, "Portrait (flipped)"), - (-1, "Unknown"), - ], - ) - def test_fetch_display_info_internal_orientations(self, orientation, expected, monkeypatch): - def fake_EnumDisplaySettingsA(device, mode, dm_ptr): - dm = deref(dm_ptr, display.DEVMODEA) - dm.dmPelsWidth = 2560 - dm.dmPelsHeight = 1440 - dm.dmDisplayFrequency = 144 - dm.dmDisplayOrientation = orientation - - return True - - monkeypatch.setattr(display, "EnumDisplaySettingsA", fake_EnumDisplaySettingsA) - - data = display.fetch_display_info_internal() - - assert data.status.type == StatusType.SUCCESS - assert data.modules[0].orientation.lower() == expected.lower() - - def test_fetch_display_info_internal_missing_pnp(self, monkeypatch): - def fake_EnumDisplayDevicesA(device, idx, dd_ptr, flags): - dd = deref(dd_ptr, display.DISPLAY_DEVICEA) - dd.DeviceID = b"" - - return True - - monkeypatch.setattr(display, "EnumDisplayDevicesA", fake_EnumDisplayDevicesA) - - data = display.fetch_display_info_internal() - - assert data.status.type == StatusType.FAILED - assert data.status.messages[0] == "Failed to fetch Display device information, PNPDeviceID is empty!" - - -class TestGPU: - """Coverage for GPU helper method: GetGPUForDisplay(...)""" - - @pytest.mark.parametrize( - "enc_name, out_buf, buf_size, exp_status", - [ - (b"\\\\.\\DISPLAY1", ctypes.create_string_buffer(256), 256, STATUS_OK), - (b"", ctypes.create_string_buffer(256), 256, STATUS_INVALID_ARG), - (b"\\\\.\\DISPLAY1", None, 256, STATUS_INVALID_ARG), - ( - b"\\\\.\\DISPLAY1", - ctypes.create_string_buffer(256), - 0, - STATUS_INVALID_ARG, - ), - ( - b"\\\\.\\DISPLAY420", - ctypes.create_string_buffer(256), - 256, - STATUS_FAILURE, - ), - ], - ) - def test_fetch_display_info_gpu_display(self, enc_name, out_buf, buf_size, exp_status, monkeypatch): - def mock_find_monitor_gpu(device_name): - res = display.GetGPUForDisplay(enc_name, out_buf, buf_size) - result = (None, res) - - if res != STATUS_OK: - return result - - val = out_buf.value.decode("utf-8") +class TestFetchDisplayInfo: + def test_no_monitors_returns_failed(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: []) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) - if val and len(val) > 0: - result = (val, res) + result = display.fetch_display_info() + assert result.status.type == StatusType.FAILED - return result + def test_connector_failure_sets_partial(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) + monkeypatch.setattr(display, "get_edid", lambda key: None) - monkeypatch.setattr(display, "find_monitor_gpu", mock_find_monitor_gpu) + def fail_connectors(): + raise RuntimeError("CCD API failed") - assert display.find_monitor_gpu(enc_name.decode())[1] == exp_status + monkeypatch.setattr(display, "get_display_connectors", fail_connectors) - @pytest.mark.parametrize( - "set_status, exp_status", - [ - (STATUS_NOK, STATUS_NOK), - (STATUS_INVALID_ARG, STATUS_INVALID_ARG), - (STATUS_FAILURE, STATUS_FAILURE), - ], - ) - def test_fetch_display_info_gpu_display_failures(self, set_status, exp_status, monkeypatch): - def mockfail_GetGPUForDisplay(enc_name, out_buf, buf_size): - return set_status # Simulate failure + result = display.fetch_display_info() + assert result.status.type == StatusType.PARTIAL + assert any("connector" in m.lower() for m in result.status.messages) - monkeypatch.setattr(display, "GetGPUForDisplay", mockfail_GetGPUForDisplay) + def test_happy_path(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) + monkeypatch.setattr(display, "get_display_connectors", lambda: [ + ConnectorInfo( + display_id=r"\\.\DISPLAY1", + display_path=r"\\?\DISPLAY#ABC123", + output_technology=10, + ), + ]) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") + monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) - data = display.find_monitor_gpu("Empty") + result = display.fetch_display_info() - assert data[1] == exp_status + assert len(result.modules) == 1 + mod = result.modules[0] + assert mod.name == "TEST-MONITOR" + assert mod.gpu_name == "GPU-0" + assert mod.interface == "DisplayPort" + assert mod.acpi_path == r"MONITOR\ABC123\{GUID}" + assert mod.resolution.width == 2560 + assert mod.resolution.height == 1440 + assert mod.resolution.refresh_rate == 144.0 + assert mod.serial_number == "SN12345" + assert mod.manufacturer_code == "ABC" + assert mod.year == 2023 + + def test_no_edid_still_returns_module(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [ + _mock_monitor(pnp_id=r"MONITOR\XYZ\{GUID}", w=1920, h=1080, rr=60), + ]) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) + monkeypatch.setattr(display, "get_edid", lambda key: None) + + result = display.fetch_display_info() + + assert len(result.modules) == 1 + mod = result.modules[0] + assert mod.name is None + assert mod.gpu_name is None + assert mod.resolution.width == 1920 + assert mod.acpi_path == r"MONITOR\XYZ\{GUID}" + + def test_multiple_monitors(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [ + _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\AAA\{1}", w=2560, h=1440, rr=144), + _mock_monitor(device_id=r"\\.\DISPLAY2", pnp_id=r"MONITOR\BBB\{2}", w=1920, h=1080, rr=60), + ]) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") + monkeypatch.setattr(display, "get_edid", lambda key: None) + + result = display.fetch_display_info() + + assert len(result.modules) == 2 + assert result.modules[0].acpi_path == r"MONITOR\AAA\{1}" + assert result.modules[1].acpi_path == r"MONITOR\BBB\{2}" + assert result.modules[0].resolution.width == 2560 + assert result.modules[1].resolution.width == 1920 From 93f45a10a2ed3b8882de5e6ec2b943482ee5d704 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 1 Aug 2026 18:58:47 +0000 Subject: [PATCH 18/33] build: update Windows native bindings [skip ci] --- .../interops/win/bindings/display_info.dll | Bin 0 -> 502746 bytes .../interops/win/bindings/gpu_info.dll | Bin 642031 -> 642031 bytes src/hwprobe/interops/win/bindings/wmi.dll | Bin 681388 -> 681388 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/hwprobe/interops/win/bindings/display_info.dll diff --git a/src/hwprobe/interops/win/bindings/display_info.dll b/src/hwprobe/interops/win/bindings/display_info.dll new file mode 100644 index 0000000000000000000000000000000000000000..7b63bf1a8fc6596150cc4d74506d8d4f3c5280af GIT binary patch literal 502746 zcmeFad3+Q_`aeFC1PGTMgkVsSpizUOCL)?h)J!tL9+*ftL=+S>%HoQMGDGkH24@D+ z+m6PSb=}Xp_pW>Bs{2t90%{VF0Ez~16}&*ax*b$lR|xUQ@BOaop6N+~9R9wq?>}E& zn(3~tdg`gCp1Z26E3c_@rMq0N4E*2T?sBcfFaMQ_zd!sZgvZAXsXxy3Y|qU@SGxV1 zhfbPx^Ss=-cii@qJFdSqxBB`yb8ZXd-f&ay9l<%dH_yrSj+>Z!>uopQbZ+0iz49#3 zRTVDRjZ6ExKK9J{sY^|F6%BT|_PWlGH$n(L#p9QUQ^ zt^szZj$-?=;kGnazJ25P-8CTHwLu{6D0Ez&8@Opf0QW7&V^GA6W5+n0|8iZf8Ry=3 zec*Z&{vIQ96`&6ObDhXP$$zCTSHrn?$clT*QC^DYUi_Zisb1;1b7eg-MvT=p9Q9^& zQE!2)ck*d?-hk(M_`R=-dN<6QhbOKU;TIm`JkMEq`&@C404dohtur`9h8=I7ol z>xntR+_(k+z_VS{3(OY%ifJuCJyzM!sUGNZ)9l--0fuvkxfC?s)Tv(Cc^BY0{yoh< zRTjLKF6tE)vxX~gEdI&Ua{KLlONrxYOhyn zFDudC0wKLy>&`S+v_ZN5PRMfDa2I~Ab^91aE6Gte{Y2GWs=gpo)dxRvQ<}@KpYHCS z?uzFqLqZ&lT6{o>Oh?021}5Fp{)VaL)MX=9Qje(Nb@@}Tn|`fln&;ZJGnFA;;M3*~ekd?0{M^E2E^+B2 zaS3(n>Tf*J$LqBd)X>V`0=okGw*sZWZU6zhN&e6X>?99=qDCvM94+B^|9b^m+ z1qsh4#&bTyK!mWFtG{n=7l6#W&}h{VG&h!+E?1pwpP2nzAox_Zn8=m*A;~ZVaKvlc zHjg$S&#yHH%k*v^y(f8MIi417HO?_yE}zz_y{&5djHkbAZ`WSd3{P`L9{Oqr;<<9# zIB5|9F;>n> zBdVvP`u$>L7TpRzH}96jk^QOKCJ<#Hur}}HsBuHhYJP-D%8*jm+Pc(#6on;wsOSqD zJo=rPp5iEK6IMB`Yw|+40X%;!A}&`xihDKY&zmw+ zi{$+oHpSImVPTQ1;uRxUB7XBlfwrDyxx8*~@$1V49PsF(NUW;8qObv@@RM9sYV}q>pt2h^HZ5-k zl%=Xo%d0Y4o82xQwF|pOqN=_-KX^m z48frJV1`dC%fje=+JsDd@Z?{Atjz5Rw`R^e*R#JNBRH)BT((_Vk&e4GPiRLi^Ud8N^n#wNPV5<2pCyVTZBtJ;<5O&#)^+ zYII}ZqUhE|BUH_wm+J>Da|<_Wlk)QYv2OQ$3-z=WG@{=L_WcNxiQx{%7>m|I&R23W z8aU*<(N+m0{23HHhCed6Z9dM|LQn-O>K7L=NC0x>dRVOZ=*_*?F_j z+bs6B3Y96jvw7o>;X>6uYtOzND9{?bg!*1RkTe$!?`_;xz z(y5*HeB*YlqDBD`3LAXk@7=1l69S?{?hxJe8KK6?)tL$TR`vdBxItC5s+FofF%!QH z_|3xa2K?sWw*|ks_}z}*eEjahZvlP{{1)MNFMdn$+o~3C2tKV6Ew6r0-t5X~yI+HP zQ6eNlrS`qA@ssX;py&gNFu6ic!4hZ(eBpMtK=CD1924tvp&A=qYTIpnAn+r6;5C`} z0k6r#4|q)`e!y#TE`EX6Wa0vqDQH6I1m)Ya zPjHda9&Mcx%>yc!_gNr(UDa!q@h>nml^$k}JY07GsH)L10% zX;eVrCDX0KA{J(`HENW``+$EciuWk7IV=K=3M_3sQ+e}Q*;swtr}t2ymVkLAZzbS) z^vg4G*}%*8H^~P>1UhR3U;toX0P6Yl%Lf3CEG7idERvUlx`1%9RE{X1=C$Cwg@(TB zZwt42R&uoJ&F$hReT`sMO3-Dyi6<f+8wL*A+i4F8)Epfvt@3*>Lp71(%_+_^*+^mj*a4Gj{P~&QJf1odM1`q5r zo<}t``cB|DmQ+zk`~@X-O1>0aueM9cw`6z8I*PRI?0K&9OotZmLWS=)pM>qN^Q;jH z;dcrB0+yOm3gpZO@OWk&S*%Ls{io0@R_%vXt(pA`j70yZ6C+T3@D2=1YmVayh=MEQ z8*m@7e?5Wy!2@nryup%>4*I8vM5LFrJg=6Q+Gb^W19Y$#Q(uPy<+n|lElPBxsJ2mw z4Ce(XC@RCu77<@*m|}e!u1RyP$2?ByL4Q-Jg8`}R%cA7v4~W1!UrQ;e;!Mq; zh&V{`A|68JE?GxD>A=(x5+6NddOYFvAQ$^J&!h05%<5d4zZdC$K>F7k*TVl7&WJIQ zSCFl#Zvu$6K5kn6e5!qHWfzh^RgztMCCQ&vD6shRPZ_KR{`?*yF4$%o-qTW-2#MJ|2PQl&S3a74dB64 z3sm<`wRmSBn|_S4qPGgBX@9e}yd8zXFFmW6@q_;b=PlOvrlDzY4t@y`=m!o5g1X)4 z%CDcJqpa{96}~M)68_^g-DLh#V{0TkqwLSJ$c0Nfv;2okGJ7sBy?I{zxZ?e#9B7~U zwGWK%zLLBQ!M`uU_qI%GKY|hfgzn+BzRRvOsV6&TfQO=f6wYTqEpMg|?4DRVMJO)OK-z z&k|SsvtXlSjVutuUuRvT_|@d))40sV|8x`bi5+iXo&L>1^rk#Pt#C$t&`cQ#^KS;O7pD{fIDSAwtM0~b`19k#*V+Vhyb`aqfsbLlI7KN!c17tk=Vr430i zIjCgR&jur7QiDTjm==(56kI-6jo(-gl?bA0&Qbm#WRgH%zo03{04_$9!oTg=OVKIu zhR_4#cgnKoQ0&KOW?NGNLkLVR`Qj@?xR&Fm#Wr1&$%L7BIZtN%3wmCiDyvt66CxSVV{6WbNp)EAKPupv#Z*$Dn zBhHUi{krM*HdiyHD2tqxE}a?a{9V??3-d?f*n@5BqNtcqJo+AHK5j z3Aa@tPF9xf!E}V%E>M;|E-r@6KO1-$T!`C^%4E(s)XyD-G9ynUxTR>njo1P4nnu@;#%* z3|}}wt!|v@Q|2^;8{KN-u5P~cvRvM8oT#~t>?OW1%DTA8yEOx!ojQg@&jkUOItM5E^1~U;E}2#tHmt4FHXPVq z5q(Fg*nm68jf#ALs(ApV%!bn2vl?RPGH(E+!j18bPQ2=5-WMzsI6d4pE1>$dEk+J1 z`t-7#P|@_jc~HmUb@>1t0Su5x_n_Pr0O7095s2}kE8IFOpoClJ2e-vhxdEdn%ORW= zh_VGIxYB+gXIp}V!6iJevLe$HIyfP4JpPUg^ij2zM1Nj=yy{to=q^O;JD?#&NR7so~b1i*^VdWy4a~DeJ@=h2FKuRL4ZR;5F?P3?p!rUX_Vd z_2O|$R$stgAOnlb!%c3jDpSvbyw)rZw`JB`9B%6oxCvK*8R52cWoZvo4Yy?k2Zh71 ze=fKF5F0OP<6?_)zb3KGoyz%+jX5BVpKsePR*l<33w zL2tng;9qbW{pV^-a(rbS?O*8#>U`D@lz7{py<}X$*S(l34i8hnyFj3 zxF8T0YQu)_$#P1tSm`K&ydkymrcZ+(u@?Srn%f7o)#9c*F4D_$plVK2^|6_-Z3v## z^xnqIZ6JW2uDbWC>E)S-(Ny<5rs0aFUT3XGcyu)fsKudX0_F6BYL~@69M2 z-Z1iB#uWk{t}qq!da5u84f&*rS>`>~IFZj63j{SU#Mh#+(Hl()x6V|)Y-lde5tF6$ zSNfG_nn5&h=#&-xVr9>joH_rv!iG?rH!#G)Pp$tR5z=DRRh2(ADGxO$E2vxHuZ?#X zHiSPL7it?;vrQGEfc%#WwOW*)i&`D^1wxZ0E?}Tu(hk1xXj=lOO2K-NrQX^;Zf~uY z$qFD4`Us&G9Hu428lxXx&t~hF@Gmqj!k_jBMa~9vC>3m2*x<$W@bHpSv~b5Cb07fz zT|$o!bPJT|6SBaBnNaLt>IHcy3+BX6l5r5G0SS##$rlaaiz3Mv;&EwhN$=9y z)uch-I(11KhpMc&G`N-3{Cb#_5LAG8tPcx9v_C`|l-7<4hsCJX;;+@_F#E!PD3`$c z0m>>C#D8Ydm1>JFoK0t;@1k3w2LoP@4%M7fGXNg$ttSW@d9UhjY2QV>!$y9%^`e>r zwcefS%K3>a#2Ih8BMU|~cv2+@M}zy~%sNZ2CFG5A;)kOK$%c|NVq_@Pe4EJ!Fb2xl zm`c%>zr=h^@=(T-6Gr9_p1{={FMZ{d`KlH36<L~?gq+aD(}S0(&}2xi=Xmr9aAzhA zUwDpM-9+tXc`~-A;L#@JH)FdAcv;O#;$iE57})2W{A%$Navjt15J9$JJq^=QHjrNM z4&&0z;3fP{eht6mv3~-tsy}S;SbDt70n2%r%qQFYhlERUT-8KV@ZWKzwJ&zyzft7B zwcx*{4*uJ>eyQZYhb8}A8eVGg-+OBF(j@;$VBo(|o%m06@?T;-u{7K^6+-02a&qLa zVA*inG$n#u1um|^I8llXhD$k5kw1jf z9pz7noXCbr8GP+W%AgY2h(RRe@LpREV3#?QW*k5gFp_| z*vO~)a~$vhT;>Rfltt&*$mPlMlal4|uOMi~M@SNQw1z?^KNsCjug_QA;?u`us>2%9 z;w|^osO~1u{<5qL%2=RV=;FM}qSJX2W#kLk0#P}``Q zlhjr244{EcCQwdW=JgIO=y^q8q{LHeqKnxV-NM~0wFI#gHm8Z}VLjQ+;y=f?L%Z*! zzVqm1Dn&coFwi@!fdY<&EOp_oR3WEug9)EL9!zKj3(3f!xilvmxWpfDOlh6;Cul9; zgoKJG25Z!q2QE=LJaCUY(hyjLdw7(%f6?QPsV$*{=hgfaZdy8~VHpxB%AYpOyQXk! z$@Jh*^LcvNvD@Q=<`0!`tp*FYjaFenEi{sgYur16VySEly%&aR) z3rqqHi~Pk+!LQ=~sEesDg$@p?`Gf3oV_diJ(>67JmJXot)sjC7H;x)xq=e^FIqT)f zv1DM)+(rlX)(_h2<@sKH?C?tH`eJYK1|`-TUHYqG?XM|d*Z@uIPcP5)S(Mkx^F7UQ zH<|OQ%Bs+&AgCxWMV2zkIZ?q|Z~)vBRRL-PiU8^d!T6xDJ&3R*&B~PMD-xHADKrOJzfUf?0~PEsBy!ZeqZD)+bGH*9!H`YX%G&tSbflr*T)21M`DGeP`?WL+t9fUt_8 zTvQU+AVo&3!Rx|*#=}t2XeIJG3XQu2%Sm5a)zXy6-%+Y(hRq@2gYKFf&S9yltMFRj zN$3zo-fO++c9$}Nu~3e3VNk5IT65NibLQ7JV5CzpZqIdV^@)CT+g$Dk=5%B8jiCe4 z4=xaP3i35*6aDoSMCm7A2r`mW*jwO4IVmn=;zZPp`6#MTA`IlvIHeoomfjpFz>16) z|lt31$B5H0Y6p{&Awx z0+AvrXCzU%#DR)A7hU^er9yjpz_BhR@*YG5MM8mk=);AL(Io}oAIexP``*5t_y>HG zkG+*P?M<30@Tn6I)xzVlF1hGk9 z>8u~>Q2%MGeqOTvU}ya*4jSXjfqYSw3+BQ=Ll^s$=mQk$j42nM09X)bpe*={5 znSBt~2y3A(sF$wLGO$Ro5%Y?4R!n_91YsFW>nRvVXu*j&#^50g-Ear(S5I5a{%hk7 zVyy;L($`{aF-f#oYvCdzeN}?YSR9u=ZL7m3ewaEmO%pBVf9Blg&vuOJ{r3cwDX128?SWuSa)3)u#rlw&i+3DVxLoaFPDaP}I37Jb zgd00T$TSByAY5~J2)nW5nSw)xxfSEIamYD5gwl=>dYW|(2yb#_CuMd!(c#jL5PF$c zI3O%PJcM_1JB*^I*~bClJ4E8CILHa`_Bb?$k>|{2G_*<4_wZ{LO~ZfKe!X-Kd`jdI+1~gY;Q6$D z^`|D`Wjo=i4tSRT9yYF5A7QEj2_9@48#NKyWdGY7)F$>wwcZ7!i#H*En+!_4!`g9?&rkek_J!UP4czlc#i`kMxwJ7KfXpL^9Ba zpDGec-#m{Uz#A!$s~0=;dBO+R?=BMVo>!lz8V?~5fc1j&4&R7+p&(T33-qV9)8^%C zcVh?4Jk>l0V1-NbXV4J)H z649YhP3G4y=_0O8}|bWYB*nC_VmMY*bV4@^~Kb48FO zfCe9D9Kviqu?}3Sh8N_x0$Bf8SCB{?@HzAN`9bUkoRAg1>*Sun_w@;x!zQYTqqES3 zEB=}op9m$A4P7FBwpM7yU@U>_5FK7jMF04eh0yvy3Ga8)`yt|uf#Kx7vn1lc0|`*` zzq?65;DJpV`;8Tey1_SOW)6vZnK$5Ma@polY5&D~&3@1E*zWL3@GRXoWywL3y9Ovt z%t0itm18G#=;G0VGqkZ&(3e=cfRW-lAd3|%HcI4Q#rhkJ)m`qZgIFSHg6ldl$M%wq zzVxo?Su`1G6d809y0{`RsIXyw`SBUS-|7>m#KyG89|Cd_QcdJD2qC^x;*0z)LOia) zA-}mLcootm?oeAmiL6HD#p6S5a{_@-+uR_gsR6sC#nwMcIh;j*Uas*1`-caRTYoKq z%hd-scMZX_C45h_n|vomRfP4hP}`ls{}5LFH7FK=nI{K)15y;3i$5UILwLaW8QlS} z-B-Tx!9I#OizK`KSvVo}Qw1Ce;8Fmv$CW_W0fMoP1B4Q}*23T7m%rwf(YpV8Eychgd70WKMDWDFw=or71d=oT<;{iny7(yAjT7ceX zvAkKkE2$q7{A{hWSot8#kg_5NiLuB#N`$!yI}Z(iaEcp`DkAR$PD5c@=$rXmMwR7J zW<)%(@)o$wOMiuCh=)fWM3CcI>BC*&);h1&IBbiyq0t!P-ms`=ivnm!0gA$?Xy7$}h9qvNiY}u5A1t zfP)ooa~4UCxvuioPRl#bI0$c-`(d!Q)tKlY+@S;P$xiG5n2@hTW&nor;-tLu?BZtE z1tgQEV#%fe`5vmVwxke*`5|EMN0U`kGh2y_LV}wLCt8Cip(0dqa|{gs^k?%zq8pKKLX}V1 z7(6Zv>Wb1d#)Z#k05G;rG~<^DJ`TD=e3e@2NU0Cu=5u{O#&r{OY=7ogEUW&H@MS(h zR5UMFZ5|CMNXJaf*G9t(Gym4yeGE#J*ew#Am4#Ea3z*S~L*&Xtej&L(LRoer*ovqW zn1V3esTKkZCWrdd(p-fbKCgRMJeU4jnG)fONwhsUT#bGn7zl?AoA?rn{zj{=winzc zGwebR0goDGyanz;@t{a0OBe z+;c!Wuo1N}QdI&VJvweRv-B+U#S7f!O5|S2uBBYD?x*(>i{}S(g5C8oIqtD4On>NL zd0=knpf`A$vSO|~b_G(`-D*z2?#GsIk(ybt(O2E4*6(g?|A2NE`?J@9jCFpIPA#Q9 z;4p;0xcyW5vwNM1)QWeUqzr8FBa3P>f1QD2IZ%1$43tn!6)2=JJ9^RBdvOc@p|r1@OXXB_S%Yi`eD| zp=PH*g`?oou8=_2gT$*KJg)fPSCJ{>e_X|-p!l!ldf9TzP6~;69SBH+AS4AM`~pkF z_;z5ETL~J14DKaqUoo-602TV)_jmBdOh{YvC3 zJb?~?9Bjl@C;vlk8-oF%a{Vhf1Bvm-Q~aG5m|8MZiM)c5$n~B1150khJYnMCM9vA0 zx1C5hU!>FyV;1;9`cz894-k?}keTUVYPsq{4;yB`6mnYTF1bUAtO2-^xp)BqEJ_%Y z5GV;4O-dvaFt}AMB_qD$m~mGid5R%(wS=vg)GqK=EA5{ zYAwRVnBM~c`vvNAgAYU7LS)5mv@{O*VYH_a;GROUe-6NnzhmySMl6gdwTnb&^od~u zZs!fO{SpkfeX+11k!w)~F|kd;6}a__W%^Fpq={TSLK+mFOKFyPwNUu~B{v5$OJJJ3 zXbBu4dS3`$Zb}1rO9HZ&w}58oVwV#6LQVp%KEjnq?t^&DPvsitL#NP9%&k9PFkz#a zhC0|!kmc8V>1A1ABMkvH;#+sPb)FLahNy(@bffRR@{(ryV_XV|BF9w8R>EGuq9k#RY;mduKx-Te}~Zx>;bv5IV<`Y*xwO9NfJ<2jBlU>CDI@okwzD` zqdfiJY!yPeOP??x+=j)O67t6bct@G9HxYWR3Av18;B3YHQD5y1e=rs zJSX)XFkC`EU|kw}Zrn=bF8~s5O;;j!VVbDt@4zp#93_iKE|`C2vpUkC8kFh>2NM$; zYJ=)H6_gLR-l#-Pl&}Ik!T04QiL?!uw(hWYxg#huPKDJFv6Y||l%`}=INXm|w1#lR zlC-A3kdy%OYXSPT6hK2I)(1#n*m4h2lrGm25&W3L1qBhr zRiL6hM}oax1@g9%F&~CzwfMbLwxYe8=Y)BhZ$f8okZm|DkRjcruwWT5rN2K%zvcmbDU_(E4>1!5XN;%)f) zOPp;FY>^HY{RY4QlNleONQ&hs6q4<31Y+Q4psEs81S(<}f~2M7pCA@0?sQKH_Lk^H zt_K5>jElAQG% zz1_=Clt?@7Lv8bdy#N>%@PBdZ6oXtN7x`BUdQ#Jk0D+}zBXB^jpd9-SD9QZyR6KBa)~V5|c#0jH-l*L9REy z11BVU8;Qr}tsn&;V0u0Q^Mfd9o#m73V2K&3wrD4uGdM>RaqkGGsV}W)TI8^bvbgaJ zoxg(68g6esV7Y>4#cvULhGc3o=XLbXptyVBEITz>T9h9+Tff_}CT~2*B(6v`X?OdB zFUk}aQYfsiZ0~-Ox*Va@cMDU$Gi-T zY4vM+BhPc9#Mp?XIat*2f?DBE+`&hI{pdh$e0g&HINW+t;OubgpkVjr9w&2*;b!dP z{$7dPik7N=8PAtFF}S0-$6!2+e^A%l;}l+OFR1}NQHA)CfDsvPV?;`%Kr|JhhY~%F zH^gZop%W**-<+`DGQU_VQ?eCc4!NyE)$c4Nb0^>LjTZ?2iDNGikaifQuO=o9`^~v( zJ69x+Dgwhw#s^L(T9+W29{~pqFhy*2fSpB!u53Q1(Pa~=TL#@TbkQ=d6R%1|9z;fQl1YKYMUtS zbRvZ_lrg1DUEhiD$heYz+R{aU1f+s9iI5*JqKe@JmsosE+Zf)pvt&~6O4h<$>@c>! zEjlyFSJq}DE-xhZZC%iW)RcG%eMA~uh>8|Gd(v~|q|<__V!M`c1JbS}`rBm3#C{u_ z0Oo@zhFn_wslCYs3$iDYlUFK{Ux4O|Zz;J#iToN@B^Ww0&tMe9L|9Ci4;wCGO=+=C zc*~}Q67iy*4wVnnVUy%dkOavxC7O?Ck|}&h+oIHrqeRAC*C^4yk#r*eCf`pgxm<}L zl_Wyp|KgYD31Na@NyQT0+pI1#07?|wfSF2!bH@ZLbCL6u$VG4tLv1%Iku#F`(o**T z{e<&lPd`H>OyREY!mX+jor^n9xCp-XoAhb%KLmS+@vjXc=7|rb-U6LL4Zi+?CkJFI zfDRM(+5|@6<=s=bI55hZ%@LeUxs2_X+x=t=Atcc9cTv5MwG-z)?(;+ksg>*y)cGByXElDUB=z}RSMGqLnsYUnPo zT8}`jpbL=~uc>2?n>Vk>m)K!}1QA~hqSjzVtiM9xanZ`wH{klNHV}mkUrFlzp>AOpjb?R0ERJDJT+63w!?$c-x8WFGv`vgw>Nu#llR<;g*#L|B_rp{eF1ni#(w`UmOWTNX-I5#7USal zG8;1qk*-*nhrrbL$Lv9gW9k6F9MmL)N%A{3)ge~kx*+;Q!kQSQ&B4xCSTn5~blK&I z%O@$(2x|z)p9u|yJ^+!x#{xKgdkN3({|&^CqJPxVJ=DEQ>}tU9SGUj>aPEAKyP<@~ zLt&LcVIwf{Kw+hMabl{_M>5{s+YAMG+Pl6)bomOzM+9`lZDz$z+1 z3!;n!!eDW&Nx5Gvh=`zBY^wluJ*ei7O~I(ImYWXwqHydQEW07~ksblYLr{Q?K_z)= z^)@B?IQqd8Y)XaAi9__5;%3&ZBu|O{7y7h54>dqlKi&}mWh+5hCAJk6q;3tz(`*Bm zFb1TpyPSYw2#5$ALpZQXWGb4~m*IgN$hR+9V}>xn8w5enAGQELFdlRV1?lv9P}^iK z3VaLISgx$d=+9B)N)#isnmA_yVgM75q) zwG0QGX_y1b$Ukk~hO41kWxuk^9CX@i$pzQ+ZCtk7y2X+Up6e*GoOXq`xYf!=c7TP& zB0?9!lH)`Y0jU_Q*c&V!A7t*qZr#UvT$*V8w)1gc>oGUIN#LvP$KYP$w=as(*1lxV ztcqu;8`)Wp*3xlI$%(hT$NYn^;RAl>wekAXRAf`gr1Tg$;r8N0){3cOM@6 zwbx8;D!27bh1O#3b==o;hp}0J5^4WL*2v6F+*3qMGA0!9#F9yYaW;)7IutBB^%KsC z352{3zBA8*T*zUZ<1C(?C?4o2j{i$mO>>l)*^oV9U%0=mKyFq;uIv>h%23%3DwGvt zxc;j|mV#SC2k~C!LOz8{e!5Ie(2<%FE`s7h+#Y!v525FcsbDINWCXz&A(mnQTm;vW!(z?2me(n5GyHaZj!%{^j9#pL9Gm68KD z)9~1byoVp_9_Bw#4PKGs{cyQoP`E(;z}&^Bgg^6Pr%%m%Tbk$~nj=5A_$AafB{&s( ztoXFqBVKm0cl6~Vy+7PI8##R;SWFISs3pmz+-ly#|bH#Uum>N;T3>$k!lIt<<&I?Qx!OAVS$GSXiTq}i4$O^zwdTo#;Y^r={6PI zC>1V3MGu$=$5h>a9TuQeJ)A4rHt-#EZl+Qq11>>1V&S1)t%=7)mWox$@3D@8=hoQ) z!96T*4zpwYhj)qB5i8_l#Cg=>h{B}*scPT*_0d`N)UouwJ6AUUjtxo)ewX!gxH~q4 zCd5)?QQ&Y@;b01GsuKrk%2GK5I8ZZ0T~wOo?9B_+mv8t0->cu4H-o1r`sbiT0m? zB|u6Z1G5ii&weL=NgHi}vg{;K0lGC8Ykchf2|&}ukrp-pBBSc7NqNk1zVSbR#~eVh zsHH?76+q?86t^nT`*@Gd6xO@(<~_Ji;^);LqM-Zmf+u)HcL)2xxQ1K1VXH8x6>iPL zCJxM0ad+TJ#`fzEk>Rnw2+S02Jza@Bi@dlcX<`qn{c`^yQsZF=R_XT)mMR&2s&73FHfQ|cu3Eb}_?iV|7cU(Ho zZ|D;LC(i<@juC$a{dUIRU;J7U|8W3+2>f5d=q2r+#MKet55S%2e;*XhvEqM8m-J7; ze;%0Z5cnT>)5d=bu8sizF6lp=sR z1IC=q0S%M+tHbdBql|ry5&v#o;-5nQOMVdl*vR~U1NoH**DVd;k4;XG7pCxk;`|R^ z@qa8G2h-EvGCjz2FmMp(e_%oPxZrEvT3B`K5FvUPI61_UULn`=AR$y`tyuOy-sox$ z{Kap2YkMcU7=|tgTqgHsLyT$W{MBkEmvth8&LI9m7~~ZA+>MCV;%71sb{P7{6(pdo7=ORT7EBFS z@#`Jja8#E^#Q(FgT7Rtkf1sr+-bs<)z5t&feyaX|46UX9jNs~6_0Qv{9)^FqU>)0j zKfoUX|IM%4_^-y*vEsjnsg+~YKV#9aLjt;D{usa?0{@Hz{$IX!MEG}UzlQ$^ z{O?7-hrxd{wqP9s|C18R9ogjSh~L|I5*DXZcOxpT392|EoD@Q0xP-~|5ZKLYg z92Wo0INK!!|H|qr96gC-&oA)AhoqC`IQ!iHi5ENEBRl`9I?vC0vn&7E4?s@;nbAB> zRhCYi<#`I9+Tlq{Cz`2Xrwb~bYRe3FaG^iJZmgsWeY53;+D@VI+=cW2Q_@ZS&p}a2 z5};Hj0ZPr!xV0;__JGvd2#t_6m?|4gg&*$MFHhzrE*HIBjx>w#ImOaoGjjAp*yG6P zdN4-pinRD?hxOkBe{=Be8%L8nI2E0Amc10;(FYNG&Yr?6&K>48 z%=|`@3lK;kv=D5A`Mq1t@7>1y&JBNgVoF2QUMOoXG_S$#F@E$w=8paPuNk6vM2-f% zGyR3UlwTA1FgqT?n{$4C%uM86{o3~6jplb)Hmd{i@rvs>PxxTEvh09CzQjozo8-yr zySu5{Jp-!5XCQGg1s7Q?nSl##njcVA8Ou1{FB8suFbkVE&^?GC((c%ThI6oS9^oLQ zlIJgXrYVU`KJ(cnLSBskGT40a4;zTYaJ;xiRv2ep%?47;be9Nm1)|ubc>`iJPt1cw zw4FZffG2i)yEw)*c5<3uFVD23@}L@y=NhX47+>vDBKc?&{=yx9&zXWSzCFLwl&u`r zk@AkjZ8Fc=)Vbx8Lp!##6S(GMct^GaYrL1*PhmUexJ1q|#yT14?ybS|&9T^J0XfEu z+R8>OZyDw2UaVz>o88#uB$etZsEiNl;EO6F7dJVi?7Fo0G^cnavC?lIS+on? z>&V~6$o(n)Pi*AbPR^d3dB`)At^CR1@^5|csZb~X9$o(Ju`YR_gY)qB51m|V+mFP& z#YT<;6ytWLl9P5Zeiqjy4{!hc0DkQFzt_;!93WNclsa>FNBptCGZ%^;s-HjhNT^x; z`f8dZ%qxHR&v*pBO-LMYUZO-=nea*VeO9n2X(Js5GN}$n=NRJ?U@lc6b321MHx&%D z>7`PeUW!#vfs-bXHc!NGL;_TQrUR<*q_FCR6>xsn40cbaF~uentl0BpesQkMj+x4B z8)mA?oEGsh6pyuE5g$R> zV5j_cnLpW&?LfyWzn|a;tHa3eF9AMPeiQ2YZ)h#m^)GOB1o2Ck`sYz@nmxw++Zl() z{}O;t!Jm5%_~H+8%h}UbV*EH&Xv%G%A%5r1#V@CG)lPEIfC7up<1-GgXp>Xss4M*U z!|5+SI&;eZk=x%NjDI?)fKT3cssP46*5Evh;pFkAqZ zswZIK1TpNE_eh5GElMziOd*JQC|Y#QGT5pQradcK*@2#6Kl} z<^uQ>{HZ_0F)z*71P&b%CycH)YK;FixyzoU?x-k-`{DB#?pVhp9pdtc){ln2bL{gs z4~TT0zm)NBe!Ii`CG$Uca&-BhL#&_r0qFmL{B&^PKG|_-`T5lfdukTp>geR>3BWy8 z`5B7dI@3QzekuVzh5wv7*l0fun)zB{kYKa1iLs2}SnzSzg#PW){_fd+?D+3|t}Fag z_$LPNDflNbeH*Q%Ksq+m&t36W!e*qr@wu1`e>Y+^bjCL2dveU@4H^FhS zk-z&FkWWNQY4M`2wV)$@>Qa9M?sw>ptw$I8okA44uwN;$)7fy9l7^T27m_Ue^Z&J3 zU=FV07deJt)9-NdH~ZhmE`R;eX;=6=@)vypK4tz9H{rd*5`0^O?{ABnOO)t~xJk^{ zMi2K%D$!?9=tyB0|H5uMmj7C`#3sR5_LE`~7a?e5I<=HJMecp!ssK-@y&Q?*1K7}Q z9Cs6wU3kX!m!AR_vXZEVA5j&~OG(_{!;PTYj!J98hA|w^(UHoIz@^_kgss+p=Aw|r zpK?4GukY%|<5FFnhs4{MzK@#z5@%6X@-$(w8#71KJ{TWq)GY}-lbAMQW1#WSS zz4QDZ%ib}E`w-}x82SPZUHe{HG5^HU2u|}mfrCrULOqAq2^}-<3|>vV4aS)_+mXe` zublvx`ZsEoefS2w+n6{V&5;DS1=JBQZwR&$VPXTQ!{G2rhkifoWn%wtB7THN+ByFo znCY}%M;SZH1boVx7rsZ9=~(QFC%%6snI(EN653*MHFZxPbgNub6E7JXF_kV822psYM(fJ@30)ehwfuaLQcrRR~?pZ9Tko+|9&64aE$*bdDt=d6n5^A zzd8fGBuQZ9ub8{$ghGb}PW?(*B-T!u+TAW*7(hyQEhJ97PcRJmVB78)&0O>di)1of z+E-p7jhHW%bN&lLENCF{PLEjtZ1KS@C>jCw z5brIBmw52%f)afPkj$<4Q^&Wj@d60PH7*Mp4}3}d_0>iA+bmw1;#2JVQ999B}X9lrDk<>v8`b+lyH0d-Y{iR+^r}GocdM~_d+)vvQHm?sV z;Bk33HH=iqQ$U5rCRa23XRnAJSy6R#C#LE0+t{qHosTp3NH z9g-)Dt&E}*2+Ila6LJ16(lUYL8GL(q=n+Iqd`tUNuf~_KyV_IG6YMP{2>TUKMG8*_ z7IB2|5bbc=PlDORVqWk#ao8xVoD$ivj{ENKg@t*&K%X)|x<;Vzz z6MgLE{gpVUK?J1c85B5a)M%+cus1kiZI%{1pVA=rMv47Tu;J?z8gH@j$$Szx*e`ha z@eW|V(HlL9)B=*xndW}+&iUSirdx=9%~>xKah#5N3s``NFHoX0?{J|OT1F0r+U>D>i8M8WrF@w1Fha*!gW?FosABd46l;>cViR#15YGKx3j~S^ zf~V*YF*z39x?ljl#bLCBl2uAjMb)37t+$a^b)0-CtgJB*J*k>_YM#uR6z86};5L+N zgNjH~uC)CHlD*N6XoE@X877V4rd8MEnxa3IK90fu3==L>ylKMUx+) z$Q=41#in&|1P7y+q-vuh7;f!>?`eQBm;wCV9b~qdy6;zF zLUCkujtFT(*kHs-ePldko5#ps4{-u`m;myAc!?RwXt}CjbliSEmOa@Ma@(=rf>gQz@r+`uaR1Skf z--M5Le~3-MCH;K*g3L~B4|^IHAPIj@KO81iYG6;)UW^5Y z$@D92wQWmuD(&R*HPTKV1t~v&@u)}{L3Mfnr5sKp{}}N6X&5;yYSdDASUKT~uT!G8 z(Mi+Cz~HG^Zny#msPY=0keQ4JUOhYot+-l$zXub5IJOG+zUl^SHqO9@7~=}hmu|v& z#4R|1f;C3<3Vwm8K}9u0*!b{s@C@?=IHt+4&tJSD(9Ku8H-Iw+aY_jl>V8a&Uw8S6 zHv~UW<$)3HwLppXdI@)y7ogPcL8rz>BscBKt5Kl4%#T0= z7^+y+{WuC{e($hRU4o;^&;JyJv|eL1CJupAmRKCuo&7lukr3|52OJSh+atne7)_n) zD7 zF+WQm2wo||q+^sG9Ij}*2?^%w0XWnxFj+nV417jR9A*)C0A$^{T$1$`ASWX1qmYQ( zAW4A02Wpom~VjsV~Ig*1dO1^0a_g*x8$4aUw=!o$~}|O zJ;-~Q6)QPn=iB8rw{?uHhT=7Xa2t+M`55pLQt%yaVwZo&5FzT-VPA-Oc~0$5oJ5b+|&^y_i(<9M;vZ$O;$3f4l`O$&?3H`p!}n z?>_SyS&&GkFfPeAqNh>^;L1FAD_i4Zn|En)F?D1 zCmkp6;VWOzsOe$qSFa}2E)J*yZ>X)}gaV#5tyVuYi;wkZX5)wFjy3Mih>yVQFEcD4 zKK;&2v}P?I&NGB&_Gx!#`n8-&y(eCI5s;n&q>AG8i#M3PIIdXs`40&>lnbZt19=$? z3bs8lF@}$GF+}`NSu?f=D1ONe3M*O8bG^r6RmoiQ9O;Ggti=9Z^G~>yi_B*QdL>Vp za;~Eq%K+Kz0T*2ygLFGu*ylFggzJjJ&;44y`N2UUgs?)K9Q&M`=+IS;-~sl7!NWS~ zY1#fnKJX1aONeRGzE(oTCuVI3 z^kj-I$7vfPiOqAyMKTZzp7tv`=(lw0T7F2#Vq8%mzUD(Z#k$=}PSGDElKxm#&-iFZ zs;=uxv47XvKh=Qqdz!3XasG#WI7gt?%89`eW(K#Aj$OXIm|`_a(gGa*@ewBSP|*<& zc=H#xBqJmxaw5pVZsch`H{lNcORU@P2*ok3^Bse!OXS}Vfxi;rX91mK*nD(jIO{ND z0M(phn2g?%W4NAUka_Z0w+|k4j-$K%{=^T{A785earocPUX!Uw>Cjk_8t0$`{trV0 zyTo5#LdKF|vJ%PeiR%=%;|!UrK0~r;a({HJTOa4Rr*w}Wdj7DQCAi*OI{^ImP$oK5 zA{QrjkO8r*;AZ*~MYb8WjH{SaZ!K~FT`}U|2kJT!0W~cm&><<3lvwMn#kn_Dzc*xx z9CMcB#;Y)sBHx`#he{%sLI>OZGBxN5@Na7U_qrddJ`_WaITQ|r#V@JtDmwLZmZbMt z=11S4P2znx>TUCF6xsfb6dZ`reGg#!4L*kY1N84g{&Ao$fThR}o#u`@K%1_Tu@&j#>;Gcy4g8ah|`w{qG&t5yoj}!k6I&3m} zI|TkYDfst3Qv5T19RB}|9Tol$!-{u>e`pn@5$6u_eCZS;c11zBK;VeS3?a-87UCiJ11pW^F)r<6z z>q-E82>nIXRd7fl8hk+SI0#ffjQ;xh0Wp$}`YYCL27%e*sOlHLq3h{6Y-z{&>(YO~ z2U~zga{QUWqqM(kf7Ws62$T=4Ki=Gb$oadAknC|!>8w9|#a-H;dis2ao4>=@pUh5! z=)(T^i?=)N&u+*Y8K$HC5e}Y(5WZhS?8K%AVV~D$^vhkpgrb^jR)O*AeBnEJQszrv zCniCO{0)!sogSQMsne!&i-a^L`N9ZYi@Hhsooa`$qJAiQ_bKgAorqJcRKb!QLSMoh zw5$EWEZm6Tze7@FAJ9zNuR}KN&`L)u+GD@&>_xPeU9C^gW!#ro(YOL^2!HoT;Xh=- zx9U41c!XG8X3%{|P9V-kpQ#c5q3Sn)Rqgp1g0?u6n+TiyZd8K)B5@*s0!%7gM*?2( zNHPI`8Xz3~MC7AYo##r=B>NkAViOJm#h0;vLW%5#;z!1?a6f{7y!n3#k^q@{udq2N ze6WAbnF4in+wKERJ>WPg(T^~a&?hG&!GH_~Fguv3EN|+GuRwA6Ex5+7|0y4X#aXFx zb2Kb0@A*%JH%0`#S>`0c>v^a_UXS8qUiM}sn{$=u#dzx1D{#<&^T>-e`@s0A8!3x{ zk;7+`2UAEi7;cIFr92EXn1AtW0$0X;_Mywk^QDy)!d(ot{?X;mub!1r^M~tXM-^C>U5DyBONOH=*P~D18M($Wj z2XRif`1r%B{-nI7tgL-)%?teZq#rFldSS1w4dnTelk(0>xb25NKN7VZewU^3eZ^lp zb>#Qp7wE`=QgG(cN0;-Vwcul0C2&`&F~HRMkIp^}i3G6ZmIr=~BRSq5qHTwUk0O++ zlT#O1;9xk+7qSp7a>{efEvR;6@YjPm!2t=C#_s}H9FN31z=+8;a|zJipO&gJY(*kf zM@JRO&t>BK;WK0q5}`1<655~&a)s=TUt8L;n1Y=MukKLTm3lG2J#6?zGcu+zGP z9bBR6Pg4EZ0M+KDwl-osWz=8~nW~8@YV4d13+YEJrRns?D${EE}xAw72^ni1mNef$kZgL_1)tAz+T64Ki4ZrMOzf>C8hlP=i^*s|PdTY-JFD*qy zg!m>#M11id$_3!SL+aABMpFX!m%_Je6HEyJm>r_K9AV`hl?SGo1 zUy1ELz5w>?ew6&oRPx(b*wk@r7V6+J3g^dtnvv+gJ60zc;oNl|5&WD`7{a&s97fi08j*1^^B1Wez~ztwp^!V;Q9F5~L>?i) z{$o64p$W-&B|G)r?TXz^!%uYQBp-ssP*}JNx8x9 zk-rS7Z67E)OGv8I9qp*or&^{`+Lx&g8){*$M9b{SH>coA&{;r9H5NdjOFuUsZ4&fP zZIX)1%3Q3;SZG*C&D7FYLUY&|6<#K=dIE;lY{nmvXNz?kw}^VydT(h;TIw69w!LxW ze-S?=;%`U(=V$CL5x*h+6dROmOfCGG(>jkq95_I#(ub%@naIw?0Z{9y@;fAf&a;NZ zokz10`NKrsd>~YXmC2qeh%D_XnA17Mzd@LhI>mvLQrXT<|C^UVBz|y~hUF$)gPB@? z@mW!mU!Zh)b9GXlu-Z4mW?T%U0ik6;!;1#KkC8zXsY|CV$=Ur@T8N z=E**PYb`$Cg`HKRBGwQ3d22P=ufUvyD(g)(ETT0*Z8-x}W->w)UlEeAoA|y9=!ZE8 zFA*k8Eq-5Z7OuG~mP_4Jn$R<{i;BSfHB>nR%?GL)}L$piwa(9P{NW0E#nZ+r9MK0i@9E|WgPn|N&iER5ihtbtQ6eIx z%9UfZlCSYngsTkCt;eo1E#qsv{NvKEd;*MTjGF*%({}jqrK=lx?w=b8k88J!Z^{LG zR&s@~0Kmcv2jKI@J#d9#5t6F?*RLHk3Wt_3)~VH7 zdCbw7YAoa5*yf6NuGjm*yIOsXU!<$yU3-l`$ZDSOcUb7F*k!HmRqR!wzl0L;gf7Ep zy9&S)AT75WpN>mk>~ds1Dz;-2FfL-14g9jxC!i`n!-kLeNOwrpDxWq^yN{At`80^- z*DJU0uV`_j70&5v0q~M@!8uCwWudG>90Q(t+_9?Ph1v$qS4yS_u&1S~um-h7)xT_^dbo%aU^g&sS*M{4v7wSqi*ZI3 zH_NO?^8}C(G+AjZogtp9dIh-0WxjytAZ=fpw0$LM1M~3#vOD-O zDbRD<&)D|b?UJSq=FMn>F=U2~ypmDMvOgl|Q0v{2u`_W5Rg*{g`C15DMdTeN@-sX| z<(?&8kFtDii4VC1Pv$lyatF#oclW|4yKr(GrBehiqQ7}!{*wJ2WCuj#n&iZqr(yz$ zE5GBp9To6#>)2oZ22cncJk$6QdC&A~*YcCs|BZi)9VuX=ci~Q;BM;7ILav4%SMlpY z4fwHny*Zl8V*JBiZ=qBGJ$JqMFg2Jzs#;H#e$gUa^31O0=nSh6>V&b8GAvq!AJm>@ zJ-{U#Oz{twwbrH457NBkg-N(=$Li4HUd>Tn^PgHBg){3CSs_*X6piYvC;Bgt#C9o9 zwIG;Nu4v@822B(h6R`^dLKodCyh3Fh!V*7L%O7DC<3c=??#{4v;1gAg%>@`KaTuVg zMMJnZ#_i%9|AI77wQv2p7^I+pH#^tW{tFII{{=@^*nmC%%Nxu;aRMwZssSxae4ZDe z3!saC3Fk-983N=oHQWg~5Z{v%pWZrO)iz+gz2*{iRr&u%+L^#dRb7uilMo0?d_fqD z3ngl-iA$TP)TBVokbo~TATD*^vADKUm?_i+f|FEUpQCBj)>d0>`)k!|7i((+Zb=Zr z;)1w=R7FwyhS3W8D~nd=|2^lvH+f00wZDHp%A0rJUCurCoO91P_uPA>(?kS7HqXsF zGUm=4l=>*LXyoFKV`xeu1s;*-!n1o?1OoZZG{Nm`vi|M1OG2PuwZ0`E(5d_ZR3-orv}q1Ste3h)FrmSJd>2RQO#gcYk?jS}II(8~d9W_YCBf2~Hs%B4w;yU+CwA^rGL2^r zqkKrtiT)8g&D=0=%RvMhd*!UP-LhIPN}p}Dy#Z(v+%lz>`-*20Lb;%f%aJB=-7`ey z>Pa3wsflEwVg$_O$iyqH);IWO-TV-#6XRTFd$QHW5+Fm)RlWbdt-vYi z%|OWM@EZ4`w-A>vD@i}RDx}%6R`&mO{@Qo zdA*u%Z~OxYFajiq?w`jhgN8B%$(}5J_rvnHs7(#E0nsq#7#5XPP&L;SpC3C<_<7>o zh@4JC`ss_7x14c~|3wKAscm+8KkgXN6enKmPpu_E({Z_^|yYEZ;wVLupbBvw`s& zb=Y603aI^%5D=l+`Js_4#BT)l7ditS?Zw3D!r;h@5FL8kK2WVEbG4$R6=~#q)%qH> zpJfMMLNV66fZ3O1pRqn884w`MdA`M%nX3)9NPGXM@;5-Mz8p2uuZ9p=V$e2!f?Ar| zRi7l>-Is=LUCVJ7Cr08>kQwj1^WhO~*LwKGNIG`!#ESWEH6xr0RfyxT?V9(32+Wq< zm&I|dm}72K@Nt?T;2LAjYAqhXm}hrL0H(Q@Efl2YP1qok_4vrdGpyG4$uaS=M0Gy~ zHAY!D<}GlRxP$4Fc1S`=RlIZbP2I)p*Xb*cIq51aCkQQA{p&gHVV z8b15kH$!|jvpD;u5OcMM{14|6Lc-(nK>H1mi1m5|M&DS8T!)y%3k`{qMwi7DroS(SzrB~ z;m`jAd^>yLi=F1LhBnx8B*F8X=*H$2%jk*R>WkUj$?f1!irA_ZdI~R_lPXAnAfu%= z)IX8{Q_|`r&AUP_MB#2Pc7t=9I4S6Sb+{8}+pL0cQm$xllFVv})%tV!;bgprMLC}^ z#7bR9LL4`y&3!KciVZ@yFz{v&Of+^5Hm^j;P?hz0y%GauR$mpT@6iP-6ijo z{Cjb?WhD9ap1}+`kb8NO<=$q5|Kg@nF?++Ac zHw(0sd#GnHLnh_!=QVjJKYmHLEZg)}C-$*H-rnB167#<+vTtW<^QXXDwY)=G%KmTr z=l#?A+~O6}g~w=>gEG`k$gQ*8;y*}gdZt{qORRSEZh2+RX^XaG=v)0^Rkj;_UZYG4 zQ@e6bSE3#WE1XrSOvFwf&}~<*VhdvTE}1`aqd2v{1Xow`pIrRA5MZUUv(L+n!qosi zh-vRdHt(_~;B=jkn%E7>*#DpXb>Hu9@qVR+oXwROjATYH?jXB3vMH;!>N* zl4RJy8-(Wv{`f>GS>wMr z0=y9ku-3Y19}(VeaXBftxsYt-d3t2yQoMfo+))~>aB@j=WF4>8_2LxPJ0wz_Rk8Z* zNj%3Jy*c=%K!VL>x~=b!fht!FF9gg39=5x-6xk7SEvV?>3-F|ffOStF5$mXtoaqtF zPQ^dg+-ljy%gb}oduk~yd@gJY<29vc{www7$BB~k%+A!CPbBwF6`xO$2*{PiO3`0g zql|Slki7!~0|<~_O;%H!B`h6{-Nbcz+sNUt}-VAb4=EoAAMPz(RB5D%WZ?Y4rrxO+$n zdbQoL5|xVEp{Mv1ipiglPL1spPvbrAY__X6*ld7a_#^%uZr$8Q&2AAWZIdm8ZsQ>N zd8zz7r9_PLw&(Z_1#>vZq>)q|dz{Ya;`LkRUYo(ECHz!kwZ2R(sgKI6wrj{8v;I1z zAhvjOCymc;>-_FuyHxDKc=ft?WEGq1Y-h?YuAQEg!(6p)K3D3WRL}x;Z#;?L@$_}O z;>f&1ACYNuGyVZU;yv|Qy_*4EjgR`?zbxSds{J^jJMivxt^A#$KRLncZ)wQ zDJ-bnB>4EUkcxGa%_!&j1HyQN4A6FyD_aQ@rLwt)&09A2Z0BC)a!(qmnlQeDOxLc@ zjG(N_3wM+p+VBrRXAqp8;n$Q{ZFBf2AZ5kF8yw z-M>$D%%=+A8W!E0E;qsgBHMG4SSOpVLtUQtuWgiZ^iE}+Mh5eJXsAZ=^b{BKkiVYd zBL7z|dRuj2LFP&j?oI0pn0E)Xp1q}4UZhJig9;0B(X5n^<&}N}+3$7JmcIG{`qAS0 z>1T1I$E=ek+L7lL*Uw~WC{YsVC-VKf<--ec4wKY?D?3KEt|sfRvBCU5dbUX9bW@}} zaa1gA!xAtoYh|mF+z1UBH|K z`VVl>jyVb&3~4)4FO|IE4+I94pau0Y^T{%!W+>wq%(0+Yw+ z*{SOWGjE+!T%LHcc8AFytRJ!)exsM$OO_B5_mO$9FH!4P&iz~VN3uU8dKoQCx4#Nn zxb%4PM3j`+;<~8fG0UHx2hx~ZUi3NM2NC5dBV>6u_-^bf(tx~g7! zG5EkM-3>m_gzKN1`#=~U^gM%Tsa>somtmPnKiB!q4|P`g{h#eOZ~fICY!X|Qh#>C! zq z;~$jUgTX)JFjG3Qx;cGnS$X1Rz3vNL2mE*U!T)6F5&U<8e|8hscg-Ea&d;jm`sb7$ z-N}_Z*L8X00{V};W6uO0)L0NYK`3JStj3AcBO3yW*o*j=5c~mMWMXcMOlOe7Yk)X& zZ~)(W1K;W?9GiF|@Xbh{+84ePfRBZgRda_n0bsno6J=QeT%UXsFr+#3z<6Xsc9`g= zIu@fLt3i-ma)>)~1S0O`w$+Q?ZgTAr(<5y4UKL{blV+kVmBDAMCY8_K*It~_H?(K_ zNd2W>=l|WV?y^Zd#RVJBCZ} zeMSDe8wnF2^cO1$C&+t`%2z{owsTVd?-iJ%b-{Ss?n%5)F2i;O`wCwjtC6xkRF#YV zqY{bjbn`AIpj&7c(HkI^;)eeQ@GdFlI)|L(PzHKs_5*VYRjK``*D;YY{V?#K$#gAPPegcW$i|3iVed&#A1)-CFra65_7;fFw?wfUck9 z!V=6!X=J53j;t}9896OpJ33N?RANwl_O5v)(A^Y<3$PVm*_~#rjlq+mJzp z_BI#2x+fYOq?wC0k;VHlhIG4`2TvD$sJ7EEu!I80iHhm( zmMxWDd}!Y<>|7&*S&@rwIIyswqgYUbGAY(D`q}9O?X;5@7I1E?yqjNk`r1l+DSDX{ zUy3WL0A4>s;I-3_R&JK}*2-;A-#Fw8S(qVqvKnruZ>;PTngmW@Z#8wf4cfQ5AOU*E z9VZA|WsPa5vc}luLgRC+>UiY^x#(#?7-WsR1|ISIQQ^!AEG8mCTNMPwhP(t#(!FX5 zd)HzVhfQq3PmP`WZdpO{E7C`zIPK5KwlS}W@W0;jRY8e>YSgoH1JR+%AZ z+#GIub((b!V?<6ThnVgu-JL_E^iWShP_J6-s`NFN>H)dd6`2<@2g)4 zJ*7*p+buel_Znk~*Y3w6i_)bRkmwygR=ZiOB;@@JJ`9t$i8r)u_e?P<1)i_DrBzaH z-Z-j~^8>pQSLo?N8?5UO6=FzbBh7AnBft^|_iG)xRa9=Pg(t1+;mGOI^}DF0RJ`8l z(%0noNbxth=Sf5CPmrq8r7Psa2ETgcl9PNQ{GmX3;tMF3) zu>fXTqk73hjWu%Tf@H=u&b3_yWbx)vKwHByCDNtYkv0P~G!&ee9u0tKXNG1gn(JSQ zTa(wFkRJV_^iG!*J&huiM!O|RPRJ7pOrHe+04qBo9q%leUfn%|5IeFIc$0*fC8Jw< z{Z3GK?iYM0G8Y^FM{_z}Hbg*W24xSb>D*2!h0r)piq`0iXu2qw?VYdK2eNP#+m(qz zH-UZX7Vk>~cKQskJ9aPm>6}-VY1USnkoW7o2NhF-6sIe*n-AV`v=gQ-;p6&|^M>2b z$Ux@B>tiMJ1|i+J0c~}nn9qqp$Sx4lTrR3*2bC6tbWFo9I2_qRfNIp^ZQ?s>udX1z zqL*4Q=X&Q-4D9O)Y9Ed> zb)l#FQc72BLg4xS?tfSRVbm}X;0Ltc0oAn=(y*FHqI?tTukao9-c?d49o@hVn-~@_ ze);PJWVd+m)scdw_&*DBWqo?z-kv+;q5}#G+L?Nce99fNpT2+o=P&n{^0`C)yJv5E zd;8^s=YIbC=Y4*EKhyrdfA+R_ke~mvo*(Sn7a!~Uz5h_(bBA2-KQHp1d;8Bq|M@|= zf$L5Gxy*ll-+x~1KQHp1`}xl|_c7(x`_EH2ZFeuE zl}rXkUibPZZFgTL*COX7TrNf5IaZuilb;Z7bUwM^@V57oQ`}Pqu`kT{^L(e{^7dTx zDByP*M`!=8`k*XR)Ct7Sa&c=t-oZJi!kIw_DR(hp8k>T~*=2>?2N|S+W zH>{~#y}?#WU5RuUhP=I#_jeiWEAA%UR>W=p7?F1d4uS4V5$&y_3CQyUkaBHXaaA&qh$75KBunNT3;hx3m z&g!1{@hC9ZrIcL1HhGs(945=Q&JjJ6RW#^$5@3KYJ##hq4e%MF#_2+hXViA8am+Z6 z5?bs`oF*&SBlFft;NN%WK^Nm_w|-^vO(B7RWCK4f@}XS2rt;z5ple1PHL&wE@pLZw z+TKdjwVm1S&|s^cOoqeV!g~iL$EP+I**)FRgG4AKO4&5MtI)cQxad>&CeCUko)^(S zdN_Ag1IL|_*?-J#@2CPxA^)7u&u*=qo+>AV=@@;1Yf50I*Z2U^NuzXf4M-%J=<2<@_=7{a-`Z zIbbXVpPw&(evsyu`pDnq6{a>vw8}jF?lHeO)W$3mFtz)L($s+;gB|#?e|~|YJg74G z9&^^kcCL%@B{^I&{M`o={0bDsq5QnRS)AHDE@C=D{DBZZ@RrtgF8=D0QQvHUYIkm+ z@m7HcWwv^Bof%hHts{YkRj5nIt*!^Bc#f7I zdlHZ4M=2wJ4cQT9zH!Ia%V%uWc-t11?)gUP14)x!X<)xBv5Xeo1HtpGtY#yPjd zcCG_?&=kpCDZjD5bJ4F@veK7xilV|x-3$#Y&}MTbqWUi$uFl^}?Da<_L0Z9o?nWJnS7^RH4{{RXS`_x$KfPbf9G ztChqrCJXD75c^rFE6O4XW|`geQph`#q(*~p=-0dFBf;yQ-|@|A zE0rpV`T4sXHpBWpi8@X_#g6|ovsDSBq2Pq{snIgT4!#?aINq&N#F_LBX=A0zu+@oS zc511Pbt1An5QBR_o|75yAjQNKK0FjQ4;DufUWz|J=+05R3FX^=TyWy3ah@hGQM! z(coIsbadEkX}HTfg}B!2W2~?BwI71*w*lOYJlw<4y$bgDZvcjn^Vfw&VT9>Q)>Pf& z9RwuP+j4BUBx`f}s!L;!3Y7GQxi9^hKTo-rYX3R zaK-N&3_{JeKkpq{B>Polj}sj-8ed7q`?e&C$jU~%LlCz#n{?zu2Op-iy(c#hyi15$ zvrvnVrXX-GKYx?I|F_Hn$_M@Zy6wEJI%Nf$8Oyw%y(Yt5`h|nV|EbJ1rHr|#PH-9F z-Fr%GHTUafZs{=cKyN{f_;~gL=~r(2)?~rnNMKDwxC(pzqJj1xn`|x+9_^HmRIWzDI!KQ7+H~m;ByX$GwN&XYF*4>1Rd|cNtOC>v<=Od+ zHg*hALPjlqSAupZ4KZ@xrF9BUWx#&j(^+;sb zi!$lUY$tr`d=TgYoSuSK(#30q6wXC|Nq!m3z4iuYtp4Vr1vKN9zEUALe5EH9sANv6 zlLBnRZAfi?Hnpm3Nn->3C$E%VhgxUmBOLWa&3Lnr(8TMC{^A{vLFSe^RG5p-lRhA= zah0RMsJ!qGeQ2R}-~WM8Iz|KQ-y_NJgKzIhkZ0>Xq)MRF+ivMGRGQkIOT3bcnm8}P zc;cxY4Gmm^^SYGw2~cOFZ;53{ABD&cu-)BmpfKrdBa0cx<5LWBaq`IZQ9jDWdGB&|-w}4jF--|EX3~K1{WTfSE zs8?rY!t9*l)8&g6=;eR6G^Y7k{3v3WkunGRUhHK)c^(udA3@tNlj zMMA}{GG0%kYJO%IrKsd7_AZ7zcQiH)O2}MY)l($2&KIk-P>3t~O{oDK1hnNHBWwyT zGVlA7)KR&p-J40<@GL)*ciNW}VeItrk(4=BiV0G)FrHMDCAxc~_dBR0)5$mQXvBR! zzPqA!2f*0Q+QdP~`-U$FZSD4I-lHgms+1*ni$ClWIr)jrK1NMM-xA}tmm8J-2oZRx zP z6!`pJ*P*C&kGztW+E#O3Uehl4QQD(jzsYv_)(LqwR(BWw^MZm$@iVF!{IxWvPBuO znxL8*@3upIw~|;>jH4WF0O{ZlTb(!t8S`uEB|P?kFs$0op#J9w4A=UzKiBldC~##3 zR_oo2g|h+QPZ@(tZ3{y|N%^JL=6Db6-$ zLoLB+Bc6;^Z$K3;^19xZ&pYDIA^T7b1ExIXoXfWUrfp5mkrztk&Uk6Vc4}n+pZFqE zx18(I%d){ZhWja5ZzZex0y8_2Hof_K{TW(vLTT<5Fuc}Esm+?2gZRI|D9ay)0M=b zl<{`R2~|r#bnvRZJZ-1Rnkkq0`T0);zD}7% zr`hQ%E}c^Qmb4)BIANYWkDC}9(W7e!+2z;FxLdhRKEKFkXLl}oE~RDHhLOj{OVT2c zdt1cpb(UxE50M!3+s{6zv#JyL!k=k&USNI^=vH_`6}o8(-S|9oR_ki2ji={biU#ie z6Z!@`+r4Jy-0Pas3&lk?eb)Odhl>WmI`&&aTl9*pJ-Vq5lQiyZl|Y}JUIQQHSEmx^ z3NEPFmblh!w43CPwh=wm-En_;9LL!K+!NxSVoz~)u@W9Fh*hs6aR`Z4^}Lx)&NX)2 zspJOIMrz-_a!^ggdj!awOfK3;XKFjGD!K=D@+XPP2_rI(c+1uBTCV#|rAH~sDZysf zhA<}nPK;O$j&6~jK}yNtA%AYhWpWG^Q2nb1neUbk-ABgv!++`cCdSxq`v#FYI+scG zkJjf+01lLHw29Y(Poe72*U;zYYkf;G9&^!O`SlS)-B3f%{5T@-LzyM0#nZIBJ?;C$ z&E$R*(fYHfMM(D);eICfXXUf2%cF1JlU<`{U=Kh87NmyJDx+LkygWV5ub#`cl*fDd^-8cFdepnzXv_X?1h_>JDz(w9wj?YN%ie6K|Q!N83`D z_P)wId%q}q!1lb!qy9JVH#D|X&o)|TxYh9z-U8rJHSGb0edp!C#-J{zFV<)aLJKJ+GVfbIK*C=GqKs8HFI z*q7lSksRf!r39!$-NvS!>+UTQM~)IL?ZZ-78M)~HFcxHaM|I)jsKAp$O(a;-_!mw4 zUKG97Ej^vKbI}+@z<@~PGqt5*%r`G+H6#57dJ%4?=VAQg9|T-6)quisPiflGjbiCe zt7u!juv(y3xH3B!n=<)7F zA9PE%V!`I3FHqJ8^-5VvnB-kfn*ppRIUjl7rxL`V@k>wVqoMyiLZJ` z`p|!alzbtfw_v>SQobQ{?=6Qxq#wSY)q9Bd>=Pny>+D%fXQq;vc`k zPg$M#v#^}l&*>O0tX-dQZkMDG=2>BLL{s#pe+pT0i;<>Y0VQUPL_^m+@R@+gG znW9$k_?`cyYw2Pua97Bsnyr=PASxFfMj3%RHLK}Uj=@WyKsKy2%Nzug4TXO;b4`*#?Eyvqb{#Zz|cD+*`ix3@Xw5dn#WNDsPIuZ`yx9 zDB6pkJ(VvDm6!c0T+T``f0Qvx zN<6|4p0@FB!HGk+!HC|JT|%E3@4deTl1>G|>~`-8(I>UqXyDXTp(JtJrB`L=bx#!KS`bzPtU4T|Hvz0mWbSZA|{IX>jp_l3LXmDTR(b@28ys*75Deh4E@eEdfr zKXokkg4W+yldNVnDO$Vwap9C$?xpO@d3aegUn=Ys%e|QTv^e=V2)mRD>!de(t`>KhaJ!t5z;CQlu@Q?`GOFw!p!>4koNn+ZuSI-ywZUa*KZN;waP2r& z$Ce=sbJs?7LU;1TVNM+t#9@d{iDb^4SspiYSqg!(~~ZzYLWV9y$s!= zZ=4L9@Gknsp&Nyi(Knuv7DV3=&vci(;43^L7yTlrlDSI|qv&rF&BS}1*~u+EP+=Z! zV76K%F3Hz2tkzd~F?zaGOP7WPs?2gCule4bFrXc(EX+WX3+gtqHP4-&yr-&{Wib6IgGno`X{Q*MehVvkcicaHQds+BML>H)eS2V57$~%V9Ul-Ds@%u`C{B-3TS1o@^lqYe z1nM7?#Eg6IAgk>jeqsvhfcbI`F)S(!`w1u2Qy}+pfDnSojV@}nE}BQGLQE* zU6P)AM=)9F@U=|Fd2W!{1dmq2hJ9xT1!|;KW+bo}C+_Js; zj6mUC;AzTMnser^a>TyCwDK3lB| zg&9P4eO-Q}Cw+&t3z2!V*PC%UPi3F3WE~B#7@St?VUo4}=Q3?uZDaX&$J7Rl30wgM z?$4EvI0KfkhRderHErvL4+Vej1KO~V;X_PAP@Q@_Kh&Yv zUZAT?(5&rTsYjI^LxBQWx5-6^6MZDEAv-ncp5?Sk2&9B7$CP1e*DsZj%UpCUxmf=B zmd!&BDN9@#=b)ep35?ebb`?@#JpDfk-gLQx{Y@_>5Hj7e9F|_dL0cn^^M3z~AOQ_@ zW#Vvhv2smDS-OczUUx*DU?CR?0D zvR=w{ZQc8X^dJfLZ2^IL-b>A%3Mo(nOCC^&9sbsT1?UFa9FB2j*FUc@*0wd7U5N%~ zz4tRUh`vkEBB%0ChGL&p@61A8ZMXRJPKHM?14_@!ty3hqNA3&0;^~Vk>sXCe%GtHr9jrobM~R%bWHNw{BiR4V;K5^VQ|`~7-4+%JE* z6#drp@11{fwyZRrP37q@=%?hRuMcg(a%WTG zblWXbGf>8eGZ_(!M=!2>56g%^6@*2Cd}<-G_F)dCX_c`q;H>k{V;d>}`)m1|-QGHZKUPWCMR3baf zj31k`_R(1NtwNk%+8-c#^yah$Z+it=5j$=r6tyf_+0zKd&=Su9ih%y5(;L>JPsTM7 zq$9dx&cAX*rewq_4Op^!RW(ALujj4Ld@6ff zz6GvPLD|-x@w(P%@ZFegsi`9(ix-Zdu|?v64~XHJc^@>3?b&d3&bn_*73F;bkdBMq-2Bkn%f-9dJI# z-V)>on6gOrFM0axT@PpWM{HWHssbAy;IbOp)paIs&`PRRca3jRrY|k8UC$cZAAk26 zJ1hk6v`R2yiTw2b0+`U*%H;7lKq_k2OMiY5q#X_t*@^AdV5@7UlY5GU(`{#5p58$T zeQc0Qy$%YB7QbW#eGeGIWGHxCrtv3+1HY1%7#(^4Xs~E<}?3kuSIM^58?F z7If^`Uq&D7)P!8}APg7U-GFL>6u>b52VeTh0cX3iy!U+gQ?LHz^FQ%isd_3|oA?@% z@Mdjmw|AU0qz8{C_tB0BwSHeJ3VONRmk@7=kRgu0-J1p(-N)KU4ju8&z4?Oi4X@uJ zUlYV>uTLE1B`Ki#gjta5g-@fZgbtBxnJ4hK`*;cLJrQ^z776yR36a0#jWe~17GVUV zj2H1XL4B_?O@s>Td>6W36{GFCoq}~ddfUCDhVT;^fL@gGR!9_)qWl_?38^2Zr=y}o zCZjq4`2Yf6--2(-WvoX)r_fYSVvO7@lr*E&o4K6}J}X4#y#*~uKC4Z5i$k94r;b=O z#GP7#5I$TAN~XJdlz`x++xSKH<;m-T;HpQ2-pzeWWa}9$OyJG+GxvCxN@lJQx?0i0 zX593QD(_d2odB3!C3R-JEj*>$4|OA)s>x~SR)tAnOn_Q2AG=4}>4iw6-QMmeB~x;M93p-QWc8Or)4;qhhXj^KwXm~-cnPYy zNeXPuKHW<{V2*4d`E!K`3g)<#-i0z0JDd+Vb1ZvDKl(KEBlH3IpGiM*-eW)dG5UCT z`{-Kckt*+2tt!dQI~sDh(VInC(1Ky~%$*uc_+~|dOfeEWmHKd1)D=v}x&;1s*@XbuxWY#qHV^{o;N;~5oR zRGLW7D0h0iVbVs9_)=LE6iFjqkIbzU*7+j6utF$x5NxHL-lQ`gWD1@Rk}qo*5vN;S zBC5w}`TTsUyn4?tkxIKEtRuWT$S$fp2a`a@=}`2dEkGXtnNf2YaM*zXPGyMoJpX;S zOF>zYoEYH$5`LUJG2&*EQd|MMBj>Ts%T@mCbch6L#kWJ8UEzm=-zhC2@Li5v$a1ChOLp(=#J{d=k|HJ$=Kt5e(cwiAFsfk)a4|r6(bhYm1`JMUu8{EPN-S-NB%K7`^;sK zw6C*gNo6&&c0C7c%1W9$>8I<7qZrvRDApk((^K%o?_TT7y{zX*h}xUFn-b=moYK`r z%Dtr6u6_`TJ5^};IBMEVO*VFs`nc!lzYV#U+4(?zMzSY$J5QNFdWt@Ia9OAAe1RcS zqZWP;V#yJ3V!N)^Po2cJyeBEB-nT8qg{@0^{rgxY)!v#yo2&?r4z~r(6b=}68UYrj!qTV}|fV4?1e6(64 z4DX`?O~}+MPu|}kijLF9F;-{et~xcOH|p1dihQLE{}`OX|=Ub3RF|B zf^|vCfz-)THt{v@Vm#wC(I!E@s^$9&l*}zHBo$O=t+ow3WvE!yoUWy`@sTt+>f~Cl~!+qKc%{edNgeQcJavp+KR|d@Wy2 zhcxp{{#{9+bvSK#)eL1uWVqTtr}y#raT3}1>Su-4pN2B0i11v?)>vW+=a1 z1~qQulB4Wf@JrY}^M%YAj1ZorCserNCp(rik=U0ifkOe;rmvVIr_|C(HrM=0_`O*c zIWA^@%rMf>#Cj5=71CZ?O!1E!3cHQ?@GArhMg|D&;4EX+t*pMWWYLw=oj2ribfFV} zPpa1@_Mz+EElKY9C!RJ-rz$~m9Aid(XFntLjenF+^3M4{@=tnNgZ$j+P5cX5pkS^a zJfXI{3L2rT0Iv(0vZpCpM7zfs90Egv=TEQSE&jN$lTy$iXtQsCk=!qoec|zZOprxvQd5 ze5?Lhf-QVO*3H96K!W`0DGBl$AkdjgcTjtGj%sAtxqx$k1iKApHvDHOjL3chV>1*ip_5_7%O-V>>R!T=Xtr z@kf`2FV%)QxUj*1o>_v58^{BN{VMWvgXuwx3Q~NcrkySQ;Uyz}w_f>c=FbL2n2@P> zNCjax%5O#3^ZW`UjD0`q;{;r>7t-QRMHiX3*5GTN;OoNrdEiUf^>g5B_s7Bz$)w;) zN`tGFfrE7$TadJ!08ipw6?-DGjrB9pk9rzQXhvMIx#)ag2;m8Du0fI%%3QRAelx!U z>xtw8KS$^BL)rv^U+^=w4}QYZ>B$z*gio+p_GkS{xxLo+kF!p@M0!i`q}3|&Ve!|5 z#FF1ZRQ*DrO8;K5n_f6aJTuw4V7xFtMQ(K_XWQ;g_fiFNf@Mw}V($;=_i)>C8N}q_ z-b`*v@pFklW<9l;wF?z8-k;U(GFcP96_?PvErI>T)-I4}<`*%YXfqd`wnlI@pvj5h zCOd5QMoygFY<=q)*$+c-G*PSAR72<>yJFCRxXDNIH0U9x@_MOvwXE41Gi#3VU3-^E z5{AVE_^dI5{M3^WIrNSe60^J}Ep;k~xEiDCQjDq#I2?7N-YL*aulUF=gN0?19jO+| zak<2a@+SK^Sn--D#9+I}W+aRiI??gTNTdawy<5Jer(SAsCOB-8{hu=$yd7s@pbkitI$IO{To;UA^%1nIGg7t1Dm!iK!vJYZVlA%?Orv&q^Op zRYV9wqtBC?%0-eDdCq7wk|dsXg+#n%A1XU=@5+o4Z~C9)h0W1e!%krz@oe}4rjeE6 z#XBJGp) zG{gG)bZ4`EttQaP$U$#}LQ9r0KFey?|AF$J5i1vd0~4?FDi`)Sb(wnMu3q%D_u22Y z_+4e9fXSviPc}JETdiJyR(nv!QCaP0c~-O9L<4Gj58}4kej|wd_M37CUyt%fbA3|*_=W`90d8f zvenDGUZBMT&b`Sq`oG=N`! z@t`(k`1MvTwI_ZZEhC(_&*0akn?VsAdZFyhNWrghd3%VrFuzU?^Q+vc9^zM&w=lD= zf-{v_ze7`oS^o(d46~k1y#cez$%olrhRAJpJ2qct3Fyf41Mvc+HO~S>gh7mDN7HTI3TFPw^OA3l2H48eg8x$RfmGqCwAnqULj7g zAdEgSR>SaE4c9RG{bXa=6o?M196}j6KT7t8q$H~bxN0Kto_(`sz0mjqtM3mebYkWCIB%V=eS6>k9vg7Z zTku`ZquXoeEBkgHvKVkw4;om0&;Eq`db$YR7v;cS(FuhklGx)pS?_sI^n~r+pPo<> zaa%fQLqarvL4pZjb%q3sSb6`7&KsfBfLa?DPB zTsU9%4PDZ6<@b#iVPYT{20iIm;5Bd3D*K<{kS(`L; zqZ{p5I$zU;fVrJBw-O#5tBC;)eLr3A7?>~1JR=o zNwR6bIv0JLkdrJ9vLk7#r=W`7KSKX<*$27rPLqV5vsunp-4lR2>5Eg|XUC(^y98su zKz`$73ppR*$lM`?6q4r$OZgdpL6}^MgH?-|2f%z?(IJd{pSaC zP3nKef3ESL%lzkW{pa`n=Uo4Jk^el|e@^zFNBPf#{O8{O^CO~Lq@At)^A-QO#(ysJ zpFj1V*Za@8{_`Sz2K?ajpKYguP(xV>jdM4HOm*<1=&5zyZNHXTZg=PuZ2}7=sHcKl z$SV%K-upKyY<1P3cMN**eUOi*{?7nU!SizMX8>PsO~zl_|K0F!O|zK*3Gyyf^-b<| zB_1s|v#eFGz{3~j&yhR_8=)=d`#IaqSspVh$cIv-%eDI;HZ}B=CVM5N(bv=;523Yj zRQvM8zH)FX>n7YC;1&Lq{!@W14zLDd+~VoU5$oZ-TRvjxRP9%%v4raa3#O;-2wvie zxh0KNi6ik}hT3Q+!^q}T7pfpz*cRE(Z%%a$X&&0yx_-gi(<7_m9QsI(NOSrms=)WT zq_H|w9DSKRY|Ikf*a)ja<-4b}u3qp~a|FeBUEDdPLOZB(n*1cL(R1IMoadV8Po;M{ zTA3dBjEHZ%UJag~X6Gp-CJs=SdnT*wozL4vXL6-k zgZgg6JrBm)dU%wENA~G{7u|nHE>mdz8Po;>ShQ*3kf4jClS3vJCYrx9e@1#xT4=F( z=Z1+z$(hr+S*KiVF-D}!n@We&pDCk_iSmK>By)HxewhT)#~*Hqz-T`)J!mLZh{D|> z)iF@nhrsK^LCJEOka!|#B72wr9kTJf`M(l{q(#1|3<`Xkdq9xLD*?Se^~Ri*-8G35 z=SN$1S0tGuo|DNsGvaoss-d7|cLQNme&Rhp&euPGlrQD{_F8t&OuXmq_@yX_YR~&c z{!9^RUi6XF?#TROwxzfrmUi69ScNAvAd(X!^m-B^>crDa>vfrbJSv8v)+1^Y=YXy9 zz7OttJ7VSoT8+u@u1}mULtsrDVcifD9H*m)zk@6I;ZA$jpzFDJOfDNyyfnLI&1r7! z#WNCZayDx3%cipg8IP==(z zZ$Iny}1jPgSvs@KZ`$ z>c!N@e5(&`k9f-EW8D3p%FTWz+j`iPcDg{u=@eVwoq&6h`V!82Kb|`w#L}Kg82F>RmvRLH2708QT5gRr%sy)30n{ za8`uaHuSTd`EUyQ%nBw@?lAW!V0$PNXy<}0f->nuJmT5)J@cl;cC3sf&gE=MPW@sQ z;dYRS^}VYgnU2Ba${Zprj^(o95gDmg?WgrH{bwALU+XB5JQ4DUJhF>gO&{ueIFGvi zZR`4v_>%ouEcH%Fvc%N=oj-YFxo_9d9r;%Y-edwkAaMAe{oIJBB96cWzP=kEiu;qVhDk^yzLAyS5fFAlIfofK48) zY$4^qtpfV#dW+nF=nH1+#}Wc5k;p+e3R~en&jc z9~Ecm;Q7rq(W*mtrQU3?ttq=;8O|({WnP(=7$4kdqTlomPxH_xWq96F0eb~qVFx!1 zav{I+^^pg2(rV=bK0be1n7CM8Z$6(qE!T3Ga`IfFRAoVVwY_t_U4$AJf;;qc&+T_< z`>LTVp~mTLZ*dF*KW3zlI5?9LGQc%$qd>VY^0BV9DC}!9uU~^6E_8mMIX)fQ>#%5NfsE zPe1ePf@VGOLy|!6=^%b3@HMo2!bQ6GOYgon6!eIWiRCfqF;WVet2_B#WVOi`Ftfni zmIRz5(dCy`PbH1HX6!0w9kAz|6(WNt%#3i(d^(U>W*%8sph#P%3Ca8n@cU z@T>N{%!?v>;rgwaViI7(R`!1xS5$(8hSv9z`v(nu0vLh~J=qMD3`)H1MSmh<0{Y)E zm;kcV8WL>UJME8g_os7YF6D-{yD7s_&DL#QnS-g&8_h|4q98o*M}*7@2FlkWGFSW| zPz5xl|9qX9_V2$N{{!KU>C%xX!`_v5h_}XSdzJP%&#ss>j0Pr8?!9UuE$*JZ4V`-5 z=K6JW=W&rQ`X_g&{7Al}qc1;2A+Rzw^Ai$`T;rPZc>3fLndcbjaqKga49Cyy%W;>0$_!M{SlI(B}U1HB!={KdNbm@6K zyr0}DASaJT@lfB1fQd-Q7%aUBUX2 zbRK_UdPEU-X;J5Xanb*ZvTMBsC^z1(_-7AY4B4uAA8{zHo#pl*q(?RkHb3(8Q|1pv zvjQI*_MjYUUq?`t>{Vg~>=pL&pU56^-|nCfsjZRbom+H=*;cIR5kH(BSskxlMd;d4 zEF#RmK?SiTh4WvCS3hspzczPVbM@c!(D&V3jaymn4gC?0H(YS9$&Bw`Dwi&d8jcKhCGZC6Q)kAR8-P-mm}7>dwSN zlCP3DIWlox;@XK!p(!lnW zJ_JO=-H{~#zS)i5?!2r7oMZHTQF-WkUFM&^?bY`)V>EAO`>#p!%NK{sZ{S0}@_z}H-{_ZrP|ExM zpq5GNMLROL;;t-S!Ary|`<*ZtbB62*wcRriG;H~*?QEHF7@n*n=wS{+K=!zUdx!T)(Mv)-OIlfTKQqv5aO+jjg7=8Lp03oi-1|K*QurMw zn4lQ{s-;3E-Y@SH{6^P~7POZkB%YI{7&-Je`u7o>9d;3;ss0T=|J?rh-^k~GS@Iuc z@-t`DM;K;*;uDAAfAj9sSKwsCuh`@~>y0_A0D+M_D3vRk&r(m3*)<{)It~{(KS}+G zc5XBDop&uN_ZWW)D-XEKyl1PW8o7SrXiiEfD+3KZjU{4BP)v5DwCnkM4cM~$$!9T} zXaaS3dEOg4-9=o9Ac3fbNDFc^YXp+o^&Db1m@NgoRG86piuAO|hO_f(fSJF@ae-Y= zumG`zi6i398t)hb+CEbFQc)gfI-CGcNVK_)Mx9bjC`9L?uZh&MMVQri|EdB=L{&{| zr${V2@h7dpIb%e=NFOOu+Zm_bDh4Rs)Dl^4_UF_E=*BxCp2`Yu1ria2AIK^>6w7r! z@B)+$;%n`p0!`(W#{R%@FUn^7j)+kpU^>0U{3Ooeftx9huU5D4oGVCIY#;0*kq zm=0_kYjTb+Sx^~|YynC2ulmSvjxST3g(JKQnp6M!H0kvmUxw0LkbS+KLr}%34XhBR zVCtGfF`5K3W&j8YJr(Aoff3mU!94tShTJmULUFD@YG#e6(srBa2uoLxmH7g|4FG(G z0xDVQ8ukO&k>RjqzG6m~i%+FtZwPIwz&34igQ$FGqH0hbH}P||kEKF6&yLaMzWQ!X zzOt2Uk#}E|7ARCD*Dsx1k{Bx3Qh&AdBvxMtN;IiGws;r!2?EZlMMrQ!nzcmYIQ>NH zhP`-+r%Q+YQ?|x;HP0I1#3QS79MC6OR-@r8x{4pu__6SdvGkHZqbH|!UuWHbl$3H` zMitK&^8Jd7cWuLvwr*Zd7Rqjsmz$X23Mem^YovDL3pM&}>EBTu2A2PGG3|btvRCoL zy6LAww5&KQQoEbxpGUh}_E_$sp@h56w{HH46j;3Lr$|Z6D)Vw7-#AC#yp;1ujzLb| z)rA0w&?Cg|!!YOZS${20Sx$g;HuYMYRRL@8brflxj+O zsMN<#NZ(6CDH%;6A>Xf;HO0t#(~A|FvQH?_Lz;qg%9r|uri9_Sc|gi_ngR{yOI@KU z;kM4ylrVmd*A!-ie5vu862|kvni6h(q^5*x&OP3L+~3obaGp(?GBVWGYE6Oq^R54N zK+3NNq}(zfWwEA&VZKUJRQUKKc&?^|`#x!1@kl|Og|TDN_YfM9FQ_;K&ituCESaB z2b3BzAVt zDPh^WaX?DXfRw)sNcq)(lpkoy{-M?vX-XK+-_(>m9b)e<-gOWe67%?R3_q;4WxFs# z($PlA88Q9UxwVywbw0fq5=~q}{@W@f|MyM)QJUYhMSg0CXo~5nNqHadeyC3Jys9Y% z&nC}WO)>m#QkH5;zMeknH2$69$h*X31*vLpoWb4(jS#Za;(*1QhpAu-_)CQc^M(Vd zA`sv=w60wA45BqzVmOCuX=V4i9dkP8e;KD%8Qa+L93?Jkj^KRzKn%L#%cT@y_zzIV zxSP(9o%ikBmp1s5*^9sWrPAaITpz>I4WGoVrp|0fu-+xrvA&az9ho-GPNz@IR7@p-wwZ+RjGr&T9fo()75tGd7_tF*L95G}qfDz1AQ4FYAq4 z`{Snyl%Owq_oT$)xzzjTr9lUb z85azPv|s&psD0jJecm}|iJPO90*G;`@0vTzE^1);X_fWEZfD(c^;gLVI?stJ4t#88 z^-cpqV|{{3^l02{T_CUK?2HJ@eB=Dc$KSctwtKFpN0B}w&c&&$W+Y;A`B}Vvd9!u= zhU_r)KawyvYCV4HSiByLHs?DCHXw_)%>dEA@Od`D5_b?T#?E z#iaFH5{HJncn{4<7vBsVr@_$#4e*NA3UVc4PeVuo(Dk{e{)vAz$b{k22O;ABXkNx@ zf&3jOCKy3GhtKqIozE?%l`7y~?d|wQP{W?_b6U&i#ZP|x{ZIrUgDH73=uC`~v!4Z9 z^_?8Az5(ndqv3%TQrTZ`>I;#?e3}=({+rns{PEAO^*bEkqm}MS68$G)1-FyIqtJp7 z-oedmvxz&M)9bsMt*KpdHI9+50?ypxx)Ftme=6QSqyLLOZ~sH|VMrlQ9MHtPW2L{` zTWZ|pW_*nu7$%P;v?k>7vQIq8H~Ub1AHw*I{$uUV^kj{soU`J>{`6*oQAkf%lj}wl zBrxndkuXgN6N4{34_>ImZ4eUSN{Glhr4nT1(l?QjSKb{^iWva$P9Q(>G{@0EUEa9- zYdh~)(RT&zG58aI%1n=mqAVx5`j;2`z1hJpjQCmAY?!$jDb>_m-NoQdXYlme8_sKE zVIqKuL_0kVg5PYj&cT6g+|lmSyU&+l z67)|mYXKBsdD6eKyxD48$LWXJ7nDBY)!FPC9WNtaD}8=5{>FelIpWEk3f*Ha7vy@cqi|M(1i$J^Pjd}@JL z5X{m2^Y3|lXEW>nm-C%3w~=?8ZsmU6V>*b}ubCT-%km2Y+KssDX7CxVBtlTSE_0X2 zyMsmE;j8kez>mC}X&!OMlGTRn3;sHmsXw~{9EJY^{+GBzN&gJ_ccjQa<)7nMHK$_{ zD(#hjBK<~)eElGh0=+E={!?Cgo+tX_Prf57Lf`kci%y2T{V@>yR)|xaOsEyI_PUq% za!sJU;NpcTpL|_c5n#%(ufdchclI*np4tn`oBVv^*4ys+H1Qmq<^ATnLT)PwUS}aM zZcXhJnPJKGr6?G+S1Wc|82eC`@)p^Pano`3g2fLwK=%W*Skn=O!65abBRJp59SY)Y z_e{@r=X$bOSpOQ$tdwSkdh2K%Y<|uL@~G2R!t)2rbRIo=k(1mx+i~vsb~Rzht9|v! z>s~+~wS%l81$``I{q;+7cxpTk!^i)rlfirf`hWg683>N~7lpavRmS4lpZ1Q00O<3( z^gkgHCtv{3P886LS|^gI{zKqdZg3t!kgxF`1K9rpC4e$249ac1c-wyhD53UE)2B5< zf%(?CA-3OeSat-G==LW3*AV<*QwSLXj(3$n(DyG7kNBkX__#uV0+e|DOLG_WLMI~S z(s=bt@%oi$z}x!LO&Nf4A6c3A0~QJYJ6!$!l@O$t0k*e-Ea46?IM@= z03X6V5Hb$)tLTfiJ2dV#LwW1sT!78wYZOJQSf~wkdb9Jj`25fDqp&ue%1`uuBj)?I zJdxWSfi7y2_Qc{kFrNX?8oLJ!e;{e(N1%}$AsPm(LK+v zgPE@SVBvGvlV?hdim@jX&7#vc>9mQK{qOC`uhN!i)Bjg{vJe{rQtQrqTc%jCC#zW6 z2zW^P+l%c0-~H|9G4noee?#)$%=oG@$dR|ci8(&*URaVnI6r^8Lsa+6SdWh`_h!(J zOymdpmcv{W%l`JHuTO*(z)%OE)B*jyeNd>sd$ccEJ(a&jYFu(Iav$UJC%5z#7kUb{ z_F4FP2VDP`^by#b@UiH`Sme(n(6jm*nfHXU<%nC*u4qxxGw#7jjlA!YL@ol-+u@^bF)~MFiYh80puV znOKpT_2-bZBd$MR=2+gbwTFv-B9$41xpsX0SvM6@syFp_=KQ8WMJhd1Arvy?V1u4k`|-AGu2|0BX9X^SMRGaz2&Ssp|6y6=)k}))RZlAw4gcEK{Ite z?4Ez_s6J+TNLhcDW+;XNH(~MlWwqdoFFvnJEIvzEsj6kCEJ9g#s&yz!Q1|-tO^{Gy zEouGvTSEV(>(4m7oi6ldVhV_LNnqtUu2aTtDCX(?txLev;@hwZBB3 za@IaVul~k08S%wuH~G8o-#=F!d;jVaL|mTKj9ylsaA3Xq9GtrPWc=$@jrzQEzMMUo zh-A?^D9+y;KFF7sM=E}B*tQTi;DQ_^+1J|a=%aOUt(&BhuAgiED3$){$`2(P|D6fg_mYZWW6^=%*u+r1F6!nesr{c=k0P(g z!@WR$#U92vN+s=cjC4n0trjUloI7l9B=*<^{$!1}v;Ls8NRSh|?vqx{e{1x*k2Tu=iwcd&(IidkYD4H9yOe^i0l=$Csq} z(gCrEs{`Eimjx+{(Mu8wuH?liE1f}_k=x_qxEzZPKz4|}&H2eV9#4UkT`G9E%BSch zg^?RF62+qxphq0Vz)*^pb)k^NHv8d9r!|fhgAr~FrV0jsxXaZNdJwwsL6n#FK${v| zsqo6(5#*y(az`YwUd~2I!q>F-`8{(Ex|A403wsYP?Cs#%x#F|py7Ez1YkdjC?Q_AE z+3t2#iG%QD+H?-7?30r!A+E10yZ0`@dT0za{uEnTYkL2=A6e9S{ zV3T^r!bRf#Cmh*T2a0@zH$+ry71LvN@ z&2D%Q&Z+0f+A3|E{V_*a(TuBeXIXJ@e7`&4mL5&@OM4jj&mIx}x4Vb0l|k8i{Oe>L zu9RLMxs+a8lS>zUqN9n`^wq_$^abb$(Xq-$fSm7pM||xZEhC;SqT|@<$A315O>-bmlkThT7q+ujsnSe>GmFa7JDq36E%=tee&M=LiLX6Yjzv!Hd6(dKNi{glR3j#|=mtorTK6}ouUc~qLS^ki+>UEq6Xqtm{^PwsW`lR`ea zD*Id>w5j#Iwl~FY0*bSqV6b+Hzw#*Y7ak@4l;n8fH}*RmN|KZ2jMTV%6W8NKsz%i! z1wu1(`)M+4d87RQ(It==yFbZw}*?;C7r`*00{QlQj)Xr>e?SXZbM&pIQpFi_5;lDl=IA}%HsQ>@RSzm-T>x7b$MPV{ZdX1!0R%B=W1xR5wqI9pB)PhC)gBcW0Yt zt8A;@D)jIgeg|3Xw#K|n_*R~?W8-qFRHC2!nv1?*mjW@)_6_??^~3ge7&8Ht0!pwwO-oI2v zNAGS}c~LlR){gu%#meP#1xjDR7p{j3CnQVjZ(a3Q@_s_ej9yZt{ww{t&(=-jX6Rrv zmV6&;pFcV)*FRkjime*$&waJdJG#>Y39Z{MLH_LRZV20vjmR)>g#Eo$L~>8T`Jjs& z(h%8jz%z96&(}&v(Z7lU*y9#bk?SyVa)Hmv!!Em-_=H@1N(CDymno{v6@4ffC_j>? zDD4YMU=-D`P@El6xfPvB7_w40!$mNFGbFm^IHp+Xl0c+aLBtQN-D@)PoG{VpLO$Kn zW0pZsrfC;w)yi_Ec`xB|Kp=S+~NeI={F z)AS(t`fbqQP=Vg6kVTlNas~m_eoz1z-XQ(?jjc+0MO>Y`jh=0|Em6(x#&0{fsU5K< zwY{W#dQQ$$N&jWp$6qap)ug*$q+oT53Ngntq~UK25tXTh&&aw?@38B3gUu#7+Ah!S zXpp#Oiu`^Jve}szwJ+Z){ic1IU)pS%0wYmEUo3Yx1AuZg^o-vSn#jd-@DLO zqmZ=Q>@yW!(mATR!?pH~J~{DL;gMB6?jj3#Lgn~7_TKg-dD6zmSYd!6@9Z}v?X<7Z z<>(@!eR7>*>c7b?$PH<&-=cxbX<&QZEmYdb6T&CphR+2eGdZu*9J)+;ldV-%zhGP4 zVqJ*Tgxf&U`G*DyWvhNybz1C{!{MKh&t7zuG;{aWkqbPIJQ%qIMts}%Rl{UDAnKcy zx~}!~y^teGFg+x_M3V&g zM8oYbK?kx++K=5^i!&c}r$|S8<)dDE?0~#9;NoL4Cq(%E%dLIUTHCGYVPQzS0=fI@ ziqNHoatdXIb7K)&1Gx*O?nGTRs@RT#rO3KIp_k&q2xlh|ary1c(>z|5$4l&)JNk^U zTEC2ZsNhWE27l;{F2JUw0&CsE;MVXU9PaZ{KB2g}GWy2*nIFPoD zZqST2D>k0RK0~7ADH#&GsoxGG4qi1VhJuP++A@jKZW$`M@L7ZuzdI zw@ zFyjDR?H?)-xb$ZjWuA=96s+ZOfYvP#>ib(D)Qd&_j1FvnLdX|B3R54tUm{*6LK6Xm z2MOA-$qD+Uv!5-DWH56HDxg&?asou{9H~SP4?{nZ!{>}u`a-`P_dYWMg+)|hY6L}x zR!L!%@xmPXlqt_=3ynf7LEd9a5bAFZnqdMcpBwMf1=L74C{+Q-kM(>n267%U>m9or zQpDf8|0+Yp5r0Wp#A&bqmk=AZ9tnDiWyruYKY>@cK4UwjF{Ov^odlvoX1lE(Ild>kG43#wy36-tyPMJhTOEQ|GYK>DoM za|@H!>j<_xQhl``A1kqWTkKm5N~iWs&ie&w zHs?(%A9Etl%nQF29$~BRk&9@G;Fkb~t801kJ@P~nsb3rw zPg0ahB>c39(_`V5A|XN~{V@<7Hwr`sKwGNX z(-wM^Y6(ZryG%>?$VR^ywNWBuQ3AoiYgzpIIXt_^b9*rjSH!5z-kV^$Y+$ib)e_)5 zDM$Eo-}l_^Bb6}1j6zo0xx4GmWKQF#mwJ4|0WKeaJ9mtT z6bYJD@~2D$iwk+sQV5-nRTEhuY)UUaTaZpTSGOlPg2!kEsp$_1TKIA!3WeBy&3FgL zkv(1zJOqN!pYSty24pI7ph!J_5OFPPrSAs8!}Dof0hkplgrh(iqKkKE9vRn_}hMnpz(^ z>7{~M_Bh49akVlR>X$X-+WwDQF6!rxExG5^!BQ<_uGSKOGl{jhXjiF z$&#_SO@P!79Mcy@h-yqQY!nx7>3B!43f>(zJ zq=l;ah(rK2@%_L?v7RG%(HzEhMSkNIHLHOzYQD`pw=8 z4~eaDje9_ehS0N~8MCwXPMx0h&2caUpDP{D7e&S>af{B0>$jzY8yH&8@v-^nYK}qG zwgr#VRCc^pM%cA7P|<3l>+@|Go2eyuU467C`BS*52tnv`{!YKk+9{kS%ccll^|_7r zPTJw(^2WWEPt_{Q)#Hkvs7$;lpC(Vr+WX(8ST)GdKI(X_U)s5iTG5lcL#K&k>Jx3* z6#H9q1xs8qBl%$1qDZsX|H%c!K@QsmkC~wtqOqjDtcTQz^w6wm2JLBXT(H#l3K;R6S~ie! z>?#8(M?*^5YZRdI`bPRI>A27qnH>TQo`lq{MM3*{NC!&(&WoLqqzp<&AioM11BLs#G19I8(mh{DDr1suN4U4RSU zqrg{^zI5J4?k)lQ3&CEk9R~jN5#WETD|~Xv(|D#DX}d%=TliMD1f%MUszYi*dWxI+ zM<=12ACBWI53N1j0zKIy;t7)Jmu@rUw%nZ}-u24if|p4D_-9Q2PWN?@0{#caXYQL$ z10>ha+^b3*pNE;(x{lAc-9TJT;HtlCd~WU`b%MT~@p<0?7jjbH&ow@W{rP`teEtUF zmnr3+8lNY*`yUEl@~|48EkA<1e}(vv(te+Dd~S(1t{$Hs|JWHnHB!J8Nd?6F=cwa9 zK0cSk;X^NA|Lr(@kH9}HGEw}e;CDAZANxac$C@0HJ|}5>e(U#6!XC!wns|a_`b~_t zo$eHI)RZG$f4RWvjOUZO$4xSHn|@9Tk-CZydR0;f@~ICe?>O{Q@$BhIM$`YFC_iEL0f|YbGKa#8U0+LI7A99M`cFucUFjJ>-lDDm0 z=&1fls?WTc-PC6`qgdyPje#||066;8Q6`1i-%{rVWZl9Zk3V`1;?)%*Udd+6t=tD^ z4ab5Lam5~>RHGueaHks$uW!RNCf3ZIGmV^i1%lQjC1}Z!cJ8YPKZ~Y+jcs@2C8=nZ zZ7;+lVyk*wUPvPL>&0eJk+xE&jcp|v{6D=P8V26%&y@UX7R<{~@>*U70-Glxu&otQ zFI8SM`hiILcJx~sirV{&%VtP!p%VqK#kQ5FJ7BR0Wm*>aj`T^GeVD=4|c$Qtx) zsQ`kyCpW2WrI}TE^lQaL1H+9#TR<}*@0&;`!~@RJm9R}(mT zIo4+)AKKqmyd<@S(oJptdO=ccG=D)&kp7G9x;T-{3Nw<{Ega?8Z$Gm@;ze7+qZZ$| zjE7c?K2XY4{3Hm|M4bK}WASzr`dd4r3;mt;sss%k zMrQfKBO5o{GR3h?J{RX1BrAItU4FS(8ttIH`uupS$LaB0K=eqD=l3FGB>ktG9UKKP zDt$(#TP@QQT&ncAxG)&moAokroSIt)J=ci&QR>q z-~XkG>%PC&0W!6}rz;-o>hG&0k?SYpZA&?fL|v)#>}-SUjrGjj#$Mn6=wz%kIEzDz zJ4E$wivH#Yhy-6Oi33sNHN4BS^Dr~O*t$$t9>t%wlmYutlZg)=5IDT1%_k)J%2f;X ziw?YBKu$Iw6+Es8@-?|1Etcnb>ifk(lJ*Kon~^A9@mtT%cEP&t#CXcYdB`W7@>P=H z8z_D1+gK&^>7;czxbs=%Z9RYZM4hW1f9A{?7vnT6! zc}CaMp<%fY;ghLD^D+1N&CF?`c3uB|j`j4i9^t9+k|ZDA_>wRb8IU4E2>!<=FI}=5%UC7d&?f@&69K8-DRvEhoSI)TE8W368GEIg?49!1dVN3kkUV$D zW(K>J9#M;At)40ym-VO0;f_FfUdD!5nQZv?6D<>6rRkFm&HC9A>56gmu+Z^-qZnbI zbrENRp1x4;v-*|Dg(eG5C3IKJ1Pmg(-l3BrdIibSerbl;Wmy0y}O`T$FpI9NWiDwUur zQiUx0vwp?nE(8FG%|zJH8!=7fuNx{d^95=lyf| z$_U^PLQK9lCUx-3ee0chisligcI0Iy?k1>s^q7rXGdUh6pXb^dd#XsLI$t~y)u+e# z_JM3A^pj2D=uF0woRcgBbm$_~+o3B8!-G*<6h*FpDC9c{3mA5nWO~-$D&!gNR}@~7 z8DK-&;Gy56mn~Hv`%^8UQzUzMt2-;1TA!ErBCbiylM`QOshv*tgG5tF&*s=)Ve%Kk zLve|>D3V9P{RIf5oyJ#``n5**-TrZG(HFH%2gmu(p$lZf@4{c=^3sW- z(^Il@kMer)dD8pxOnzKm|7(i`4gC;B-7&~ZC36IagZ7+pUFD^(0-{HGsqaTpO!}8e zqj5};m--sOe;XSIoLc`zSx6x-iD2(2k4dBXPc;3WCnTH&QxEd-1G6RG$V;o|bt5lb z^4o6YrRfT6_wv#LK&Hw|0|6ofOpRs{qQ^=i*Du~*W#}%C(q9|T6<|sIHT^{i8hRO- zkD)SrWN^@&0-Y zt=3Wct8JnHOX{!a^Aa?4GntQ}zdC10r4QQgWOwbaa{xTyL zmlA+e`|HeufM9&729)e-xfUN^lYe>S{>oP+nEpD+-%WqL59xMUkG#Rwup9vIZvA<1 zX4n3DRMEd{eEmiexqeCei|gLK7Y6T-+?WxFaHsk>b(MnS3cO$$7*$&kJ|K^oLX`|~}PUX5>Z$YM`NXXh-><^dVAHVo(=+m4UhJU`H@rm7v#3g51)EM@ZI^*A$<$eT3YWx_*^f^ zkC6VVfmX0}esobfo4PHr;}MhP;`vF^mpQV}f5t$XRdwue@1!74|+Yt z_a)^RgRno*?>%JtE{jn&CH86(2VzM6NT-dhBboWWpjdZV4w*xqk-A?o>izDjRLXC5cGLWx3pa%jc=!C=8(on-pR9x6w3pdYW0Q(t?w zl&9oH7Mhw4_z;U;c*bHhTfF_&O<5V5m|K7Mx`y7lx#wO`-`IM$E-1Xiw&Ywj;~`^o zoV_(U^57_dNCjfgG5%cRxu^O?`A8jW4w>)6H;?kxr^}JGNvbHi$Nt@*cxCq6a3iNO zA5ob#u&Q`vSOVnHAoeo>$siS`D=$A@5Z!N=j7lJCaMJSFPTBKDa@^&JuI3t&(ziCY zALm&QUt_vx?^{2cURXCJSYB7*S^wVziaS{9S^rf);4ZB$_uK*hv6iiC=u=Y1^T@bm zJVetczQ=)pYe}Z$P(DoVS>IQ>rLmol#>vrDTp4_)?}-(q!SdCm!3rhz_Nt#ZvDxzj zIilGv#eJMtA6gL_u+1Nj`(5%V{MtwVYQ7ODV^*ewze>xaIi)fYUgAv+hlN zJ}MiMqd1;?KDfbSOltDc_&`Uc^;IFy9YG3={h5L7!jqP)_S~_Un6(XkKx#fNv;NY! zg%;|1hcYyN^|MUzy4=uYN}kH`8ds^*Pr9U(l3JfcK9BTTwrb~Bqa7O|3Lle zCfXzm)a|PIN#q)*=S60H6MxSJUXChRuEo5_c^M8T$)Z=WS3V+=&^P%b<4!MNKY(#L z_E&wRsq}g>a&ab~ub0Et+nB>Stul;n+h=bNP2d_s>mL*O8{0eU&*|iP;=7Gg`h<4p zb)q2~`VG*HWZ2C`SXw9Ne33a28U6EoK0zP9QH&Ik`vW1Ze|G=i(DxlEJ+4QZvuMm@ zdFkqBgi)qy$KPSiDU9PqZhADsKB)akSDA6yCOt}XQIT-`#Cej%lWob}N&vfMa=yuDrlF!I~wGvah7 zGlJefn6#rC`E8{F+r9iY5s<0!_FsQ3UG9?K21p{;&sp!r_YYcCedFuiF7abtkoJhj z$K~}p6gx+e*L^Z8C)3{>TP0}dY%(8%yngW%-Rc*NjJJB69uIx@2=w@&?21Ox|3Df? z;7TIS57lD-p#A&P;((LpAM}ln$>FVN`l+%+>t=oRk}L&|(BJo{5=?(DpVm!(&txce zk=JigV7u?{JV2)Q_ov&XqOSfvRT8;=@&4NW9j7gN zUmE40{l!z`%^L5oS%Bz~f6TU}nDmR{IHs(xW*flc6M$3utM?~>h^F7ik%;d4Ym^G_ zS%2}i97c53!;izey6o@$$F^?z>v=?be-G=cuK+T&zls2o)L&JS$n}f&*ZtoH@{#pT z2hI>+N$cTTo|d4YeeXM_{(5h+V1Lkl<>apYbtdKa*k50lO~pw1_u@FF^w-x7;9C=b zQ~T@0KLUdBr5dp7dU(_i1+||0YqBcAjIZNha$WlCkC1Mc@%8+F_S|1@p4+v*zN6^h zHNKvbM6REj&!XvfJZR9B^+p3}q+eX;3F_fwDi>8=qSM9}2&kC67wUqSDvy&s_cGUg z{4V}TzgUI~gd99}>vP|QAGr0o&iW<(tc~+AHlx{-HyX0Jti_$KacNQw?g3oMhRQzA z`h!SId|nq#?#pt3IPHbP+(Vw*w-Z{(>Eb~2R2I0;`m+yn*U{6so?zK?n_Yy0H*a3F z4_$mXZC-Q$$A+JfEV4nzohte6viaznI`409M_zDn676n-x-C@%D9!{QW_c?Dyt>7} z{m1?G-6RJ|f4D9qaUa>WU#D)K?eg3%+b-(D8-rY3Vqzg?U(}Cp*lksExu}%AvL=~# zCSi}p*IRkNLW^L;3=pAbi_|btYE09@t`4U|! zdtGS@98W^dM{M;@3dnB?=tFZR~NzxS-;qI$Pmy?(q*B~;n(s@<6+=4FVH7! z`>>KjREHAb$hb2)cu3#)OhbQ2h&j>^`V-%d7c}hHQU@hN(S)fIJ|* z9>nwkX4!?BrS|~zLdUG9&dxexaHKg_rG;-w1Z2gh+=LU|<6Q}mGk|2Ro zxA@GIt&wOk`&P{%9>wE^&9n9)L<^~z&j^#K`(zwy_+294b#DA-EBx5nNVJ>4$wWb> zHm$bE(%fuXeK}Ep!Othxrlh&{O2e^VD6KYSb-uI~nAV@Et_|v{C-2!M_N!#MKg+$H zr=olcPxd!JR)A(nV}A1s(wMRV81H1YC9_yCHk*WhV&d+hK-1B#{{DX%|NSG6j{oR? zWBf-P1O64K{QI{5lGBdf{{M*}@$X7M-#qo``2T6dzc2p#PdPgNqmLDTf69B;B9HJm z_>Mki-x=1Vn0EZVs^^9$-GA*8|L{@bBS(q9J~>|IQ~Q-+%$=gH*lzB>@`d9LCTf|h z^CS0-T5BP^$PrW?N<|)$t5OIyykL(Y(Jpb!jq;5y1fBKIDgUgvRP-{RQwgpqjP~Kt zxNRYyh(8zl(>~%-I-gcz3KtOu0ni9Qatm*o$Q}*$vnR=f!667d`P>knrsgdr_>f;@ zpU@>t!#pq2V!u30rImHL5_~4gB&?(!M~;yr;NinA@O38(-n_RV1xgt*2XlU911}FA z-}*~uK34A^#@J9XdO+kIx&L&0td1ZAocya0aNbEQGUNI;uOG;@{>aUv8fY72Ej~-} z40l<$a#qI&n?6pfKQ8aCv<;r?7L?$8$#|%M03ZSiWboKa;(z{0(z6J$KZxJ)yzV_LF!_OBLGs6^A|r z1%Gr&TI0tVb?1J#9XO)1=NXeBNLCpiZtu0h50qg*(a3UZD>LSYcFp=Qyq|CB6h=ZB z?La6Dhx)e%Uv7M>ed6x$@59eEZsiEcwBfl23&Yb+4!+m=6yIYE@8(G4#gVJ}w}bxt z@KqvL z(JPVOc6;vl9T61of%s?)sYDA1Q;CyQTTlsUiv6l7*jkmwrj^asXWou9D;9=bX}OkT zix*AY9jhfEFOm^{jc&?|1crZ-7Y>}vp|ZIdv40Si&qimM7eeM{7DNL5Kj8(26Fw2Z zv3rON&_8*qbNFt(m8W_~wrP10EHvD+c`oPRw(54hO`*icdgS?JI)CTP45?(^4wgtC zio%RNOMmzsUO-adJ|wPS;%jE-^5p#R7xI+OUF}?Qo^JBV9H*PiQ*YaQeYiC()NhVw z^N^EgZy53g)i}eP#<@lJa3(KY4x)z(HqbbkV4}*%l2k%Z+a=ZR&>-lk&nQYL*pTMA z;}ZgZmqHunH`u`(oYzTl?%)-0qe)c^3=I8FdIDBd^PWZh>Z1}~3iF+I0X%BZ4gnygY zD2D*24bRJc9|}1&`0m{3v>`=l+hPYKr4VFM1h`ZhnOf+pFX4(PHTa7o1A67|pC2C3 zH~6>MUqCA_{3@9s%0ZIp;_y|OWcr)VM7fC~N95(cIxjqJI7Im((E=`(Hb1hcj}Y_4 z;YDfWdqeUGF*g_RQFOh7J0vf67quBgzNd*Uhztt9RuG1E7LE9%AiQY!C$Y5z!x##} zyCJw)kwC^Lv%(M-j6}8R@4-???lmY5avbqVI53h(Ma;4B(%`BeMszGAg7(%CL#4?h zeMZq6VVVCy>#xObR5cE^wuSNhdA>rl8mndqaYD=X)N{ zA0R>b{W@X?2})jXz(12%wD42sn3||vwEogu-{!9V7^agKxP4;ZpDBa8uU{T*QTrYm zuIPhcsw|}gs8MR0l9gbVpO=))Ic`4}B6jdxs|i6$ zk@=udJ}Usj4*C$DIz#8kLUTl+JiWl?xcSn6JxIaKXWv#N8%H08@P)Xtqt74_5whg< zx`PX~^uagR7crwenUl~~$ob^t_AvTeQ4Ubr%XZZXjPfVxeEHqxAF~i9+AOc64APgL zbz{Va3NF!scS`|VCb$Za`Xq!c{}}l)Lvv7e>#|}8P_>Zha>=ybWJ*r26q4kTUF~?b zAL(pf$yVepOL|1|tFw!6EcNt$K)uN3y#F-Xzs0Fb;TR@2dD~)Za5Qytp1GN)pby=q z8cm*r`Z-rg>^mq2_alVb`^WcKKL=kyme=0cRWiZs+{lb*EyB&YRcxM}(;;_z7bg+e)lHf9)~u*COUdDr7KX$Bde zvWxP4wTWeB1a%84I`9sTFQ5=q*Xf5&y_iOyH^#*+ocDsvg-tcTsAr_YFE}G#=9Mbb-%MjIM`zX#&arP<6B`ADBRso>F6@fwiEXf;?PUWcMZkgtxvSPy*3i(_} zBqQi8Oxs-;nFstm!Eu0w%%$SRK+lRbNHNi&!xWag^ru6vqBwg3CB$FinM(+%(xvEO z4*I&kbp55flOI!?AOqUqf4m$2hXwi`4%Dz;uq)~N3E-Cc9-1@%$mdDD$Q^aeT)e?m zC_42Fks`R$Io=shYV2h5nvj{N9^sskrWZ}4iIu1JtD&3p{#oB-{g1qW=Z=3YIbPa7 zz~m@$Q?a~?#aoKm`-&j6>|KS~zb(q$$0JzV3v>4dd1%OK@Z-2#OqaILRb8qYeCVU| zXp*PTP9a~_zn>ZYgKsPN_qyR13H)oigAbdP!L|g$g$lm5O${KXZH3u;(H4O|G6+uw zDQ0a41hnbWDH^_JCV$0acbt`qzq7xmXj8rTlP{|J7wpIS$RLCw!-qASWO$BYoYQLU z=(hMQQh={B%Bxe%X$&hSSr)DKZ{#Tqqg$d0e_5!S5V~9`<=@(+{Lj@t%cYR$z{MK4 z?w^4Ie`L4trTuztI4w&K(IC?`NZn*l;<29_oz!HX3t#n~NOa&seiuDmEx@ajfgAoR zjjZ}v)|K?N?tl8e`z~K1JL9Iy3v>}0|HF9fqpNJKK?G(F^~clVhb;K$~D zzx#VpO5`%=0ojExq#NF#^yjwo5xRDsJVzO3C_&w|KWJ~03wUuhJ@DZCzSWhi*#tUp$DPkek*%0eq zXPAuE$SKY}NMY8Z$!G^2`xW+d4OAuX$>0;Av{=3KhY-dYihyVdTjV`>d90al^^7Uv z)3iKJ-=)YgGCqn$GuSB4vHkdf5bw~dDX1vCAMGrZ{H58HT1u(7Z^z9S5e`F1Mx=zpP zYy8p6(L!}{P8^Ag8;hRCCLCOR^xW|x4mR3P^lUzXn~xjjp=W6!Na^*29prPk;oB!s zrdqUy<{*4E|RVuxUx>T8;fu^DXIZp0X#Q zD^lKk&SRbs-W#5m83_zS1(EqlY%&qyy(kcdiRvM=8zS~wxYR_Z z(29jdP;HJbS1EhH{Qz1uAt^n+y#DA7eAaZLw6^S^hgKj(W(F=~V>>udkxBeqw``3I zV=Y60#UpAwVCZKB=3j5Z3 zoc0&7`MB1t@i8RhQS(cAmmJEGSAkgGqLBzql+6X6#Oo)oPNnTvQ}YEP3?Y>xH``Od zLxzb@dMbw}4bhGcVvxwA4Lka%Z_32=3`$&YeNEA`(Uy?j&--`w8d_LdQoXHZ)^if4 zRzK(-S@7%*UC!K;Ss0znd%*{TO25Ht{aY1E0sFxY-5~Iq#CC_s!K`;g@Q_uOy1FWF zS=@!nk99-q9;F}6+ae2#*8g<3k1Q*k59}y>{7M}z=L}|Cl{8Z}SyETkHT5r%)JM=B@YLc-2cb?6IH-L5TSgAC3{HOb$ zdkTA8S{oLabGawYTer=1Cl_%;9vg+qwz|^`w~$+Yw;{O66Q&}s?mAI;fF9pPWDCff z-8$+~qTq3N<}qUSu#by;>3j)TqmXo8Nbz#>@+kZ$z=vJ<{sW>4IvF_(^n4&%%4e?I z0~emI8ppH#4b%F8=(J(NaTz^Xf$UD38xHIoeOMU&HQ$Y)3Dk3hYe{Tcto{>P?2f;N zyhXe=dP-q5a30sB5HE8or0r89IfpK%URTgMqY|><5MBG55)ngE;~u za(rR#Zy1O7%k>T6dx0<$0GofB_a(0H=yfaOAdk(Y*li#ve3Nx7?+MBhSGS*Ma{(J_ zts5M_=}(Rq=uYeTy~jTu?&#*dNBVcMjPC%vp6lkkLry=2Zcyw;PNX17o|?bmRFtH2 zC;PDZz0`r7#R>hOeAkdwfNT{8)CDcZkEOVP^Z~@k?JN5{v}7_(E|vYmfMN>L7|b$* zS~seCYCaTMSSY(q%z^Iv_(+xi*WAYssJrU$z+HhbN0<2Iw?Ffc=T=!a?+Kmm8RpC6 z;ekBQAOgbiJsbVnfV2~;kXyGGMHlJ^2MX1L1GmV71EXc@M?W~=&kQZ)eSn!Lvj>Zs zTRk|S3t5)uc^SygEx2BmbFbgLLx37Yze7-@-XR#_eurSLeurS5dWV2Fk`&ghkD{hm zj}iDYXGRtcMvbo?BQUXF7I`U02@>WqP+I6Lr3#k2^(E~xKyWE-(|%qI?!~a+ft(Lt zhg_lqU*wFM{p|3#@C8dy{7B>y0hgw)6?w?cr6R>^p3*tLCOMmua%z5}P%#R60Cc&} zuJme3?tv%3_O`|5^0q~s9X2UUAy3)!lrBQ^ktz4ho-wK7_;L1>Ywx0|Lw7rbhmU)a zwMf@6D>hW2In)c9N;V&O-!u@eK{!YhrCbW0j0dI^RTz(pE0yT{v5gq!>bO*LiV4tXAe-3z+8s3-V@Y*f}-ge!%s$dZlS(Ts&LFDrBTy#rpGMS_T zM{941*BYy|*rr$5o3LX z4d?Xj>ky#gwKm-3g*coKQs;ZHsDmtQiJ z-~r9K4iA`y%HH-2byrm({5kl+5)HdN4*S3bzjD9cR)Asm8K}wUfslpA&EEvA^sBDHcAfxLIn3LYl1s@adiw;KHzVn>ORtRelnl~;?(g@i`ednfJ8Q_7 z?YrNDdL>wo{kboK_6wpb1MQdpsL*~R2UPoOwD*X+0Q1T*DDJ#8-!ju8?3&C?`U{@eS^m1yKg#pXl&x&htRm(YRmIBVE-I_yh6TzKy~fhI4+`!x95V3 z^y!L3pPrP2P`_k^oDPI?rAdxAsGO)#iQOMdLMa9XC8Qg3e@Q*k;P4_oXhZ9V$R_u_ z`oct*knQr1!3uvL9s&Ks7GVbVI{pQs>EAjm_zr!mLP%$;@Vio6`aJ`CdY=@6xf}-O z-O?oa2k9bMlZS@MiHTRXpi;9A`5%_WC#9Bb*XgnssG><%zt6re1>of};WKQ$xskkr z_^)h*xIjHcLmgtEMsHVX;FnjHs5-V3#{vJ&o}~fD<&no2!GY+)P5v#`?_PT9sUQFB z34d?6)HXQ3oc&&Xetu-$KHWum(ZaNX>|Gp>&GYzoh3D;Sye=b+E0ZBu=d6|hkJ&|L zwd;07zsL)z5~Q2;dAOZJD$35g%y5KasKgevE}7f>k$KJj$o00rtnPJxCs4kst~|<I?GcT3S}0$RNG=TLWhsbeKdG@ft^Qpk zL~kJ6tMx6HzP@p5v41C(k*cBVp7w_hrME?=>SZB7uZT)3D>jO7+e5mf-edlaq=(hb zilKLjrM`_-m(Dg~Fg-S$=Tu@B7P)G#(l62JuQ2J?#WqUeoU>5bPKdqvCltMoemM4V zASHiZyKDMKKQnL*fMPFkmRL~3Un%})j9=0B&UH&68C6H&)n5_H2!z))2p!G)hY;1Q zwf11`*g)%!88d6vrSsZ z-e-X>7cbpuK^BVKUg5~KK${@Yt|KtfNzjkTkLTq}9T*|@nEj+>X<`~tbCZF;91it1 zF?}I`C&^dtwic+Vew9Cx{_88igePF0r>zo&<1+ET>@hyf2hJI!K1SNR=YT{jeB2-D zGdh!Mc#b#u2aX0mY1tF(?MN8H=h6pDP%^TV7nk;yLJ5Ch50iz{3SqoF!&bnf0G{`F z?KJ&WBIM^8l)fFOeJ4OU7PweiRQ3RT63M8h<*pzXZzD@+j!Xm6iqfL-WVU|Q{vt5oul?6f zyKuT^{THQlxZqNMu%Hk*GqwQPz63w;t`7H$b5T*0C`pfqD%eMI& zx1Z(r{B)mx>s!60qT$n;*>bHPChf;@ahiCkmPcZ>?Vl<#^E;@ge~FZ#1wz^BH_1M2 zc(|VxRqHeK=!JYniP0l!@+p#@eUq&4R?p@W*B+LtuHWmqXIn;#XMHQomOCLE=z-4g z{7iLwK+bLsoC?6$YG^%)p7eahG9vt3=yZF=MXI~`TvF#(o^~G!>^d7o>MDv7yjqC^8e%r`G2nSpYmN@{*_MsPhRY* zf0z7@zTkx|GC=K>ifQWe4cqN601K4bzXwR!tQ@Xk&wnUs9sIucD+SMf%7OQ^zzZkfU1Q+w zc)17sZb^doWe}sj`yO`SeF-*a=O*BtVBoFl3EsFQc<%uScvBvA;9Vo|VhV_=@6*tX zlK#VfBXV|*KYVEx<023)$O(jtrr6Cg$wZqh5mnMvchvsk0`{YMKzD$kRK_Z)g)$NC}S1rQWqk20LfoRJVz&}$xx4^=M%zfs)j5N+T}kdAH87W!`Ea| zus__FnYtfY{o&ceY55Zb#puwp1;76gq;vt>?O$)+poP!Ci{2l|BLcp)PxMpKBJ|vJ;#e|V_bU0;&^qF7|IQShei*9yOt8h`6K7uDc(BA*z9~6_wl3?W*bh=) zc{5esfgh8XRB@QoCux{%2Ieck{D*Q2%&P&_`3jBz4u9kHd@Kw3mJe=|M!^a3MCs5& z_ynV&Z@({&^r0%bKB-0T{a%M2M`&xZ1Q{FC_NjY{lcxFK-?6uVECJlVrp7Piv&N49 zke}4g2~aCN$Adk}xbWNGk!;#XkhTZI_sS8`L^pTF_9rn#F|o%{EjKKRRn zLLZAT((e!8u}5@vZa5i+g;|Udzvq->vx)Eq%nB3lz!p1H5nNeWT^g$JmX%gjRg`;! z6=n6oy2@1*Rcrcp7hk%JEZ)$HV9n~v>gC?jYHwwAU8uCWtioHf%zL(Vw&dyt?&`|W zikkY6WGF2Q0pDBEP*zbJs;sH*Z+X3|SCodbvZs2zDtF@FwWW2HWhHf?AcakxT2fR} z7OVhUYjoXIZwZUBI&aqM6_sTxyp?s{(Kps-duM=KW!<5GwELgMBTU}pOC2d<>6Y{Pq zt*T4~@6K;I-K6c5QtRrkB|Ooy+Eo`SpE~v0(()3huLjNB%r`&noQ|1-`L3}gOw2Re>VoTgE`_s;SDJCPP!~ctLF{$yN#V_zjms_J2Ey7r%=37~% z)iu>?R@T(hcBLyT>S`f|Y^$_BRAZG_lvRb+)K+APFPriF!Ka;p_do5d!rX@u_v@Gs zj9dI}GvM#qKlae4omXKb?rvj0g*}k?X~-_0)%=O6`?Kab7afA+*+ZEJ|M6+(PcbVo z5;g|=NfYme+hD>zamC4V3sU}r*uyYa^y%nq>)p}05Zi|xz%IaO((+bS!i7q!pty3& zy7{z@&e5m#Y$hKiUh@9N$Rp%wQiEv zym>;~TN+$`rgaM;LZ+hQl3%D|C47zP0uBOM%Un=%?R6DpA@8!9px3Ibt_)SeCT=8L z0#??P*H=||tyQ7YYq3?D%N8xtjwEj5PBE^sn$MpzLMp45)#$WwpA4pypk?qXDVzZ} zZdGM4R9{*J|E{mT-W#f+=q@2;HLFU4m8I1oCc995u-cXQy3$pp-dR>T2qPAQMKFj3mvZD1b4<++O%EN(K!M02xD`_?2gVW&*A%hh-UC@@J4&OlxjOX9sxNm`Ss!!%Xtb1^+@!7U5@`yx3K=#q|Nw%)?x)aV#fK z%?#}poNqY4qjMv;iJ63Z%Z1=I6#VaZZ^^70*h@tNuELe2%Mnb2 zYv4)e;4fJPlc@=2(f4C{9B4q*|GXIm%ug`StnBD?y9cc5=)Ak8qq8q@Pho$6Szq1J zISoAe+(3FvDn9FjI&6Ji*SOTQ|7w3Al)xdso;rZL3~aB(C@+~4xOiq>pv20O@s7#1 zy!`jd)H-#llFAfsNw|#2mXOPn1U;QkPt){Om&DV``256JuL>7u36xP8s#C!;OnAI3 z9m=V6mAn$D6{RbIngrJb9}zGhw5005PylNZ09|;R&|`z=fY1m!zGVD96Tr#@3{}yT zf1CwVzX=6;9qi}^QvE5}tWpzjS3u`Gp$GprO}y-a$?sZiS@)Z8IfN#^RR1qcJcn)6 zug=)pOgIN`)UU<(x#FpQsrf|xDZi77G@cH;EaT_!k@{U>{G6szzZzq&NXgfblJCbU z`4At~?}?P~UB*Aj#D8r3PP>)Px6Ybwl`gdSS8A1(TW49N)mCZ9VkTc+%}UrRU2T=s zl$5T9y7Am-m6hR#7nYQj!Vt5vt+JKYSc0rut@6vP3Dd3e#nzRKysL4QG7ncFTwQrJ zGjf?#zJ>{rWw6RwUSXYMl~-EjRVEQh>a6jEg{<*b`6_FIRo-9$rQ%}i8vfT<*H{%d zSktFl%L3N2ORQx~|3Pbcg*9WkwY<(+9l>zG<{#RP#td&*P%9Yl*aaMJyNEtw?uCPv@ZdEV0szcW4R`qHL zwyGNt&kVz_xx~78x>ZwS-F&l!)N->`8?eSqw`!}bF;*?GW}IWy*0O1D)z(?HA^g@w zR3c}v}S;Iu*?b~8zOwxBEjiq39ht8TfsWwt-4}MR{u52grn76VbztvKbVe8 z10qUHn=UNHq=MDmh%AJxBhyfbKXG_X$ER2iU99QyVPlIPM$Au)|7XS)J&lAvX8ece z>U>W6%_e+{E4}3TRX5?1=V=qZ)!3q+lJw6S|MSL{aVz1k^pO5l6aI#=MO!2A=lV5% zwh4FeY&HJB8QZB>oADoVg-hJujlbR44xEpTzr)zFdo8>xy;zr+SpR2n6r&Pwf)aA;p2?W$x@a6Jma5YYzNN^jemx*o%;HWe^yF(f${r|?ZBC5 z{PR=77a0E{V>|FKGyWwh>8~>Wi0L0`GchGSgkRfDxZqULL--04e!a0B{Hu-sw%G}~ z68ZO8UMX0>A!9K-!-;_ z&qm|FKPCMSjsHg};g1;qPmS%s`I+&%=}qweg$aM$*b*jro;3ddGIly)Qs?c)zr&SY z^6WN#cew)RHzxc=V@sHrJ;wi%u^oEYXZ)`j+u;vy8~;1TmNLcs#rXf465eL~hm0*{ zO8UPWe|t*$kBz@0CB3yk(@k&3HgJwJ{{F@m*iyzo<9EZ6@JthaqAR`RDK_*r%!Er? zX^Y{;e@aUFk;Z?zu^l=bZTwlr7X81#&o%yO#&+6ahVkbaThfZjH~u-scKFzW9>N!y z@XL)YbS`kpjDMN29Xziy{*}gd_*i`p;SDDICSwa7%5RR$z-jt*IaD!#m?9^HtAs$#j88xT`>BE;=cKoU^` z5-6ldf)Nj?TTz1|Jq}xYSJj}TUaglF8Yu-Po=V}Vg3yCit}LxOcams5#C85;$0g;h zD6LwisyU@3r0j|38^^hmaFonemDCFdT~UcY%CBj$9v6;0oa(>N#P>09zHj`}-(r50 z691DF|6|54{VG4VUwFckCf+IE?U(o+Cf=bJw_oCaW8(ELPqJU)Uor8HT%PLxlZh9) zmY>@%bQm-7j@}N_?t+t%-N&H`O08@lO5SexZpb6YtbN)qk&vcjzb8 z|NWHsRDZdVw;cLP_5ax9cgDBdFJ=DB#CxRi___TOUsAHXy1s~f`janjxE(e57``zd2P@nXL~*a27g`!08%ZpwD&b-RbT(qp;`d_SPD%G+ia)iC z3~2OZL#Jc0XJCqrKQ-;OJ%p#GOZA7ycPD1WVBJSI8ap-J=k-5e=;yQK-~2i991VW{ z|8TvIR^I={C;0RKw#C19TU_@4@v-r9=9s@{RlqX;aHPntuSW4`(Fmd9?KZ%6R)vs;*aFc{wXs&brrnS8!smy2gv*dU?gTI!;HS`QRk|W%|71g8B-M z8S3StQj&}=_g;&-zD~3srEw@u@$r1c!J3dd&Z$t|N@D9qV0FSy5Fkp3sU4IkR35;93WfS+nMN-TNI*E9+h#UGCuP zv`c|##5jP+mWP0>uSM-tSzW@pM}1tAvjQwTy`!t@DFMV}xw{O#SNTP!UvxSb8_=*x z@#=a)70|D*2v%3HY)y%|`to0R|lgONBycAplf`@+<1ff|cra zh5{4+H-7vC{_28d6Sy{_DK+65$4z-ow^mlvP2h4!t!|q-l{&au)Q02B96(uFSvsgB z%iFPSX6|p|@hg?;ZcB6ne`^iJy|< zzc&THjVbwfBS6-klm zPtDbIi!N{D8f|;ceY|GlZ!)%%&q;6Hn4I2c{LLx%2_1NAO?=bpmJ6Th*c`}(w)_~st!+jf-r%$qgbp7Q6I_@2ry zHt{{RSM5>an~nm1(^2AEOnguHx0(2*J@jX$q064|_x2F)^mmSlcl3kSNWMxIA{LENzRe*lKCYQCr#9vZ@o3hQOi)p@|xh99+Bvhf0EIlA0vSI zRN3rMPMX})4rPy}Tb4Wj`N{d+JC{8|n7=S|ZpmenCQeoYVb}UD3{A|D{YkT(XW^e% zRkNJ4r7DB+E2%W$pTq`GDKeu@kkaqupQJYsdyYrgEvZ>nqQItPm+~gLd#IcEbC0y2 zO8#?=4BRaO#7{;54RXL`b$1DfKM!fQ#{|TmUsNiEuH@m48{#@~!+oH;!v{g*Jbd4Hou41gzd+P4E?%d8ibl^%YUu`nB^)(}J8T-I> z+Q0OAZRZ%f+1S1+lRl-811a-dN^}=*n@R7xO2f-E_R;VuHsxIF9Yi zbIy9hXVx9Q9?~B$@SXKYj#-!Vl-@FOhO=H-YSt}1rT3cj&Uz-(tZRBo?=$J0^-lA% zx?g%qztp66) zJY0Lawp)ztJ;TV!#&&W$`5gbT+CHNn^cp)ev-|e%5grGS56j`NW==bDNbVKP5Zni_ z-@}Z;-G==MCQH(s$oXB&SlpS|O+(Ou;1+u^FYftpFU5WkQ;vHRcJ?WjRfRhT``Obh zYZLAk?7y91Ss&nTKGU*VMscrxH{sZ4j^?~R?i}nxnDw~1?_}MC*?@a3_U|!GxDQ}o ze70rXgS!~}(Jafl5BDbQKVcrg-G;pbt<6KYTd>bOhx7EfbFd%4JR#|^`;MU*aA#ug z#ylhGv0of(Sucqjd(k+{dL8#t?85Pu^)~Ke?5WVf2e^IMlesk3=ULp?_nm8518{G| zo{oxaxP)UzSP_rH-GqIMk36{7Vjsrj&KX4+?%jpnMwQNK7c)UmSru)U5q^h z$+8N!7yI&gmeqiJDR${1+6s3qw)axnN77(lz|&O^;PzoJ;B~VnBt7;Uyd?Gv?gQA5 zUqgT3ZpPlRl=|Xs!G3Ky@4rYI?ERJ0SKQd^uY*2tH({T)nYuqmS=f(bPQ~4f{pIb{ z7k3l(H+DilxHn>-@*B(YNqX!uo_8w7U5kBri)CGfdnxvqm$`q9I|qB>KFY)G!_Ixf zvhEf)_BRjE*0?ufx4lVU;}-j*KT=0YgMB0BnOA9N?DsLh!EL=|Szo~H!|laB5A!;1 zANFII1Gt;9w`1PL-GV*-ZOXu%gZ&?WqVBjiVo!=$R>o`O#omPR;uib#zc5B{=U{Ke zOvBxRy{(nEu5cf~ehX8KyAAu)ccC-fUhG=TV%%bPV6MV#{gv^7slqMxwnT>_1^1!rg}b5#|xx){XbtxYuGohRMO*j6L*Y`VO}jyBy<}^w;Y)Fs&HpwUyivM_fqV8tTbx_?v2>*VD81;hJ8_5n)Lu~ zANG5gO%jg1u2-7%1nws6mod-aK7f5%?=)){ZZCE=<|W)Y*i$k4aQm>Y!Mu)pDfXS1 z1Gt;8H)Gz$-HiQbjE%bu`!MER+*TjpW7=?gvCqMLfIA2KB1}7OANFF*C%BhlzmBoq z05|L(q^DVZaBsr)9+zfi;ud=b#*5pB{Yy+1?q=) z?9AiStYX|^kH##;orAp}Q!eSTvj(PFAqmIcaYCAPH|`ef-+R)m`y>r^zsxl25!{*B zCk#%rej#q``Iu(h#n=lmzrno}`@b+PxSO%(pGezE8tk`*&~CWfuvZPEO>nQpzW$^% zYryZJ2kiGTr{cDTr&*&$q*-He=V0ez{J4GCmtq3AmtsGFDaO4C`yI?;+-=yoCsSWZ zj~&8P;a-a!5kKxG>~CTkaBsw}J0;D!S<+y?gxP@m0Cvu)X;u?%vBQ{qaW`QfcUqdY z5qBo`F3cmiTd=Pf3GLxtiv5KzKzq2o*!h?i+{M^SG5aJ9b}i-rZm}b$(>}PHuqT{B z`{2&OJ`dC957Y(wGE4^UrPv!V18_HC{~VKvyBYg0m?5~^un%K~xCzu@Eo3Nk6Ovc@ey%RG9cMJBbm}$5VV84U$ z;cmmeX%zLxy%zhV(P`Eq++OTA&V~*pJ@(bv^abvv*i*((H{3q#d&gpMZ^V8O^8oHm z*jq3U;cmvR9#8w@uEoB40yHV2FeiCKYL?AQ#(0`4~K{EKLF+{M^m#oY7%uy-!-QB~Le-)Cmd z%#egI5FP=s3<8SEV|a*B5fkzt!9d0&Kv3!=KzP&u(>yd%tr4-MmA0X!mfLc5fB*qO za@F>7t!<-KOIvT7T5Qp3o2%G*Z@F#ST1#7R{eRa!=ggc8!M6AQ@8kc!&L=Cswbx#I z?X}l_ocB5K3GgtqTlB$ap#*#n_zS25z7O>0(--hz@G|HKd<2{Yb;0L@w?dD>w}GFA zj>9Lw!_X7(-QbD>Vg+9d-U{`IK6pQLQuM*ELZ?I@{4w-0d@uMG)C;fX8|q@{G<*cS zxsZ6l*Met?S(D-Wz)zMC+gIr?aAqm<0zMyHQ^uHqkAojs$aoeV@IX27gzo}RFTz*& zKCmjv9EPt2*FoFhXz40VUx3z&}DA@ahIbErdGZqu__3 zF8DU^0CXI_3;Yh$4c`O)0(u(056rG)J%SH`)1c?zBVZTQ124F&idezdg5QA7!1sXl z)x-xr4&DQ)*U(?WTDO!n2R;hk0G)b{vS1x_5gg9~ituaj87lt{Wx+SrQZKw($6SWau)iGvuY*p@zBhOa z^d@{9ybF2*z74$Q1N5Kx3~qw5upb8>goeW>z{604ws(P#L%V-Sz2LW?Dad=km!Mt9 zd%?-KFm91Yz?-4f@U`G^s0h9roY_Ep;Pb%>s2n~Deh%7-KMC;Y2JFChfsu{O0eHbp z&>7+r2e;ftTj1NlUC?Rx1bA;NHi>6D*a^LiybC-Ior3QMC*96iLMH;|K`%?Jz*49e zJ_^R6*6&dl*a7W&9y{QK&G-o)0p~(H;q$>#C;=Y@w?eJ(?V#sF!~s48j)j`x!{B77 z4L$L8 z=!0>nTlB%tLcP?L06U>0@Lk~FLwVmPR^T_Gx$r&UE6^EqdcilKC*b?Q)gNXb6+R9& zLm}+9fsa8E_-^nMcd^d^-wy7Erobn_SD`%kKJX9FW7tt`tPRi!_z*Z8>Vyx26QL~h zBjDB0)5!C|a_AI%6s(5cfUgC2LN!tsIP`ADA$%B|0#%D0@K&f6z75<4)ljw_+zB0r zPk^1!bMRf@SD`NWZt(ZQ{{Wx2u=Ybyeej4gSCjl1@Gj_W^xMGuptJDpU>8*Vb?ks&hC=Y&;G0mseAi|h`_Ir6_%`rU&|LU-a2F)s zzDa=lA)nX*PeWnkec+mpF;3v);9byI_%?7GG#S1f+zCDLEOx*XP$_nLz?0By_+D`M z$C;<-hrz#r8sHP)G3XBXF7OPr4ZaVYcpv=^9|6Arm5V-j3|ax-4f?hdH~27E4DEWF zID<8ig0BTPK##%4!B!|2z70GBCGfcqd=okjuRejl&?)$QaPTJ?C-5O~9CQ*s46cNF z;p55%^wk_^0q++6C@` z&PZACYtY;9-JrjnF^5hF94nsE`=iK z)PlD_Q{dy^ZBRRW8@LT>WiGUXyP(an5S*vR_M$N*avq)Z@?$O*P&Ca8-3u?`x!&jfs721h!ZQ!?{vB-PC-$Ool^#wzjP^YYc;3Vh>d<482I)hF=SPYdT zkAgMOZ1`Gm9h46r2V0>c_%^T|Duoy9f{x>-;H2HGvDl1&$Dk-WUEmpLIPyO5vcF}H zA&-DJLuaM!;Jwfpu?g;hCZgX3o`xb)7M%M41fLIn44Mqz4t^0jP1$bnU!Vy7^ntw( zGQZ#jKb#;Y@NMAIJ@^A(3pPM`@Nw|sy|fWN0+v8Nwh>WqGt@<0ZQ!5;N=I|7KE>a6c4$2>m5KfHy!V;cLMI&@S}5z`&!76ZjCg7V3tNgZD#i*iV38gBrvp*b8lk z7xX;FK8chCXF~1h=YuPu9hAx3m$}? zz~?UTSI~3t>PyT8s2%+%co0g!cY%SwXPm=_z&TK>_yfkE)nXHDgSNs8?uG7l9Y;S3ZiTww+rb0S+qA0-dC3F0>Us zA8dx+79YUF&|GOF_(doL-wi$oO@Z$Lr$0{o;UnNpP&?b8T5uDz9X<{ofKIUHcY(vc z%r?4*aRRP^o@PHS4xWHI(dhwaKY@MOMu6>*4_@#z)Pc=DF#9X`fjk6GgO0;Tz{5}{ z_PapuSMiN&G$C**v{iJ#Ht0F*2%dzF!1sbIv&;pN zgG-^uL=L_LjiqcaIO`kOk$q|K{ZJ_}tOdKEEOjq`>!OuWZxxNN|1*%2A8w`D$HBIb*tD(0k8wZDc zhqll!A#e_qD?Wo2&~W%Dcq7y;#}Qy1)CC_0M}L>?AZ-tWQ=ks)M8GScZ4w`_0BVMh zf=@x!@IBz`-(%Yf-v_=8B`B+&XBI_|^pmPcjyz zU0^e`4!#ZSfu5#~f)ih$-{B+RV(2V7QE(%48a@vG3-mPh`@q5<;6E{pf*YXiq62nA zCne_K@E_6#@L}-tP%mW@;BTM~%BoXb1A=x^HVnq0m(dq|8hQf02VD3f8mNr~$qkd?og z>Vj84B8E_yedZ8&DKu90rNO^>8T-%BF7QdH8F>%*0u+Sr1^)z{c?vtPFrJ||*gp?} z!=YaIFgOu9E&K4`Z0Ke9eDFnRqSyg9{FpNAd&j}SKfwq15cm{y#|i2MxAf9R_;zsq zKhdY~QPA@$eIsKSdm=GS@2!pcc69fJ>V~()$n~__G#J< z9|EUA4e$~0I;fRnhkS7J>$I8pw1FT0DRT|J9oz{;&`*GSpgj04@Qct~_-^o<&=mL{ z@V8I`o9bu86?z+a2)q#LLLLS$gR5m-_kpiKHSoRQ@L#a*!-v6b&@T9P@M)+Wz6bmj6r$~1 zcvYvM9;pi)+DH76hrzkfR``5yDRe^W1&={@AnyXN`Ze*S-}Av*C>Oclm!JrBb%Sp~ zlaZ_6u*O2AViVj7O%~t4pF+Xp^5I)P zSPHE`9tA%SRl_I14(QFN@EQCLR3rTe{sLM7-v<`Hh5y)(g8QH|lA51ezB`2wF0eg+DolK|g>eDLb`%nxWTI$^LKIt4HIeP|baFL>D>=qLCH z_zzGKWxK)bKgzZZAHX}`=J<>Dwt=Jm4LN)m{1mjCwzPvsp*N9tfmi>D<2dZ(gCpNz zE}#GK%WoU*YO{`7@EwOiGbzMHdzzEPeU)mC%|7oXQV7R&-AFb;q$>2&#aW*gWJ9fub@2(_Zq1%3nSf$sr-2JM3H1E2EaC;B~Lcfg~bgBJ`0J?b%ZLSO;Z z0UrfdLr2hwgCBt=;(xoypsgpU3;Z>75?&4RsKwA}_$c@Q^d@`)d;)qJz8gFVbzrj> z?1LVI7Yt<3HgrPZCD3#55pV&t6Fv&AhkC^y@MF-+@a^EbOyVYTa1Ye^48DQSLZ^}U zfM=lua+T##mqPjQ5%5ZA=hLLYZBPSarX74*((pZ?Z!oci4}l5jIQoL$hT3HN2>t}R z1HKo`%=W0c-$WlA2j#(s!ONg0o}*rH26O~IA6y9Seu_4NH$d(1wcst#MEE%PF(?e* z4t@ce0-pf?0h$co4W5Adu-OCt2s#7b3%&*IhF3#8YADnJ9|nI4onaf-2ObG|R6cR; z0#^<7s9g9s_(!OZ{eLygqwaz7IW}nrvvWLZtQ@C+BcM~?#wIuk%72nJf;*vVd`p0@ z3s1d$;Jo1;RRo_8J_c=v?*=FnBd|8Xxk(rO?~7s}`(-CbPYc zgCB%~@NM8u;VGK{AA@q?yTPA8-IVPGy`vcq;t%-R80^9KffFyl27Clu1-%I$2lqj5 z!*_wNLB4-PADl3jw!ufhRnTzwIQV5~EPOYZc_D3t4}mv9)$q08Lr@&P3;ZLr9bUbU z^#|&NPk=v%o`dfLuNmi2Z@}k+_d&kz(C^@npfG$dxF}4!;G^IpP}V7Y0PDunE{PS` z4m|-cct6zh6AO34pMn?M3-!SZehUirq6dzL(iFZj(Q_->)nc$jdAC*!6C!T#@}S9M|_k1WsrK?yyKUH)IC8zk{$~@oy0+YIxZ4}N-GAst@Dxly~;n|6ESMxC7zY8c(RQ(D~-sz`tgMkM%LdNKhEM- z>TL5!wjmYq8!fgzowU`fWA=p$jp3J@5u<87NAoWjc=nQE!rEn$@t1zUH>=EG!{-ZR zI(CzO+d9cKb?P=cX!oTdZJ2393~BpJyX}t5K`GFDb7 z(SuAiXr&qP)q3NeUT18LH->)PFu&;We%)if>`_1TjC6H{n%nTsJELu1>^XmK8y#OA zO!qJdru;pqqEwO|K_CE%l0T z!|XnCkA>`@%AT1K8B`mL2crINUyr9($KBm8PW>`g=cmSMKfQta%H6-hv-}6=`y$?2 zPuz%-PR~#8>-79TSKb|;^YQ66((81WllomWdVp=cJqJSb^aWqpbUbDZ`z+@|)9P{b zrj~8tfLQeQ7{g%S&F1U{_ZjK|(LHPogVl4Tk#XYqBz^Rkq|?WW)3**f_8d&t|8r@v z^J)ANlyRJnj@@(=yD~OK-`x(kT-_gZ*g{} zQm-;5++)k(o%Y&z&UVnTY2#?SFP-gVdb;1Zku^4M*K3uFiw}B#^^w$Avu&9_@~|w3 zUv?eZUx!cgBUz8=|9i->=ahBQe+EZO|JmCP+wb65^GY>yH0}DY&dV~d$nx4-ceXvY zKUrmjah3UDb^CvVPsT9+XNP$+jA6>!A{s*ilZJScM~>b7#9pB zaU=8jeE1(NZ`;*ShjdljGPK!)f^MD(hN5^jsxwcD?GHxhV0p>-?*9 zU3EBZnrALnD`?X|KF>4PsOJCDy#G93l5388Tj1J${Mk6lxN^p_)8EdxcBAOcx5u%d zJMTZ6cj|WP8OY~>eE)0qtJC*Cq%N^3aTQ*+T{BbLfPQh8{QvCouC=<~zL;B{?nAoI zZe1sq1ECX3*St!`!ikBab3PQi>3L3FPX9S5=MJ{~nR5ru82D>Y#n`W;vZt6I@V1(t5^}?sZ1wTWF8? zYLh-*OFRE&uls|ivM+J%_>JmbL(bZ={)_*v{cu|^>mu}KT)axP%64FYePT!NV)U*U zzee4OUcZ>8k8OAS(({~tbfb)if%M$+cd@C@S-Fm9Y=1+W6GVv<&%3?qKJVrD?8Mcn z%WYHQ>EuhlI>#;|cax*z*!WA)ZNpucW6wdcCu84ETj!K>oTH5NbL(TKd6l}}Jmce# z-2A+$erK4!@~O|7^b~#RYKI+@;4Jn9%GkGb;;nV;<1Slg@Kuy9F+XFd#w*2)Wv9PR zmW+j2<_fipld?KKvc9^HAt{%Po6{!2O3stpX}i9G_kEmmpb`g}18#c`@5IbW+xFj8 z*YSli=gir6jI5!=bG%uks-1nJz1BHh+t-|{k*_g(xLL-a{mLGwm{N+fJXj`zd|>cjvizXIwh%aL}#e<{f=U zCO$oH`(*hMH-cUjG@e)bm|SF)M%)=MIyRYpm1%reIcHh=UB_|im-cP3##J(&Qdgzx zyi4N%y!hqB!yTh{+owv8mAjnqD{Vilw)8)zCiS`Xow)p^=G+`3L1 z-Lmv{h!5#9*=L(Sz&=}sY1;eAUVZE=<=p4(9ADgRb=NI*Ib%c0y0+bV95=f5!3WyE zPj7pAdPJrgv5tEN2D(<|#M<%ELAS4t%+Vbv&xxsnZk_Y-?ie`jcj|IbkM{=$9`BAn z|6WY*-}JZ*bpA5Ef6~*^CTE^GeuYwbe7f#c(~i`j2UiuSR_m$9OzHq)B>VxFn zT=HHmdC!)-%PR`XyTRmLUU9G+l6Qj1`@fXrL-GzUd3Tq*v#T9>FBH9%d%}44mb`OI z-VG@40hIRw$~yyRQGXe96VwFlfDS-kgr0+5g5H4s0FCi@)eNWn9nkeOYR-%2q>ENDbvRh&gJw8lgt2Q7Tuh zUf&dN;M1$}Hf{aUiWu*Vj5Wpiw8a`;!@SP^enxDGej|5me%-2Dnj7m@)hkC*RNqkF zT%Y{lMp9lPFYw;Ds)3hIZd_Z^veEjWic_jYzvtUBnk>TCH3~}#+{vQ4=DN!IhWUI^ z!!2G==}whJ`=`oiid$07XH8o8s!NsKC^72JudH9o=T)ls>U(L&@ zo62U)Dl4j4P*zg6s+kvr&nTWTBc?OysHWy(J}6wjp{2Q@DYmx0IaX(VeTT1MIRRBwN8wTa>N|JW~A z4q)xy~vOEwqTS!DSxS?+j_Ek-aGho#C!kadkDos*K)AUlC9O|J-lGP&XL>9&$=eHZ#8^~&1vZs+v&h@IeOZGOhJY)%%Z1M!J zT8C_)U#BhqQd<7E($c+l`WH6-$;M%$ExVW5IM>E%8`s#l*~WGoJ8XR1#^-H()yB7M z434qvUu5H48>2R^wz1j9b{jive8R>PHvYiIGdB7!u#ylHKY^=6%qm6Agw%d5v#%>#(zWsrnel<;gCN2Gz zlfKaMD`?{|8y$ON?euIL=h;|lW2KENY+PfbQ$B8|H`}<~#@#j^u<@%lK5OHvHvYoK zw{6UQpXG1ZMyH-Bc6y$TH8wWdxY@=nHh$bjr~FPk{eX>~Ha=qG6E;3;V~>qa`Ipkt zr|qrtEZ8{f4^ux=oGs$R-=s4trta`sVek>Kdxp7nCm@mKa4X@dhN#^|rOe zM)5}WA=4Grvj#iw8|s=D@!>@Fsy z?;IJ5>Ryprp2+^ZR48t$kBPjzj(uSHl%P@%N_x?z)h!LS-}v(*k%=P(_KvZ7*^%H{ z!J0Me*{!{OQC-t5ysXxXZt9zUu8;XmmK@8;!c9b?wV7kMlq}k~eiJdgop%t6p7WtV zc_yO_^Xuyx_y%Ko@E-M+H5JvbY+1XuzLC!dHp%B(e(No-ue-c*cMq+eX|}|Joqdr4tSg%{AXWfb3*Zj1pnl#pKPi9?(c^x74R>sTi?w5S=7?dyguGgU$Ig?w!o3qASb7a z-gM;Z3jeb8tLqEb)iqXc(naR;%~5r;+OV>zv3b*NtD4k0)zl2z(!f#uS`NfF-YRD| z7&p2dW7HZMKI#Is!Iq3wEF(H|BFBsC=@JeoInZyaZ~nlBczrAH0QWU)+PId4y4JU$ ze#5GD%(8i!L&O`gMHZ(Y^M#YoX{tgWK4`rh732F{^&Ci#P_dO9g>G!tAHWp5<5i4c zr_vXZZfxARi5DEhwbrj{X|9iL+F0MZzB$%hx3ZyL;i06|9EGFKliJdq!(Th-VcTfb>#Of)%*!Uw;aSFhh> zA4kV-T@xo<&1*Q9lAhCK=iDN-)~!|vwT2nGO6}3uq>iXHx3OH%7qo^-SGUB`A%X;6 zseR(dDv58WaD2i_sfUEyD8eHaN6^2h=<0Z!IUQDfz-o1jk+a=kXtueFry2v{3(4_w4 zmeNf5DlN*KM-!v&O6Iq$SySIw#hTm1OAX1jZAcsn)B%rP8~c^e`_Uox51@jgr3KM4 z`#Z8^3`e%Qb?th6MvU}i(*Hlv^~IHoi_25(olEf-CCZfKgy$M>c(6Q**mh>w*u zPi>enb;i_)9gOI?daOF@8#ir~uaWiFU5&1r((JFRuZ#C9(2D-~D6K5>?N)YH`W08( zDgW0{noaxDZT)Q~uz5a8E3X#|cj?C{dpFQb=E zRmIgyqKs;14ELdPK3Y;$T$vgTdS<-$@4X28zaN1J?*yO~p+q#1NOUE-6FrIEM0ihR z55j!jAplH%IPc-whvN^oJ-qAT&WDdb-1Bhn!+j42kL4bld@TQ1^jPh&)??d_?K-BS zyd%Ki`!IVt_Z;8Ty{Bi-sXcG(>D#0B2KVOf4eyQY&D&eLH@dfW@4CIMd)xN5@7=Yx zb8pw)?!71Wp4!{Hw{P#+y}^BwfooYZ{6RvzkUC%{hj-}_IK|;vH#Tm-u-?1&+ZQ%2ptF? zn0z4bK>mT~ftmyB4#W?%9oTkY*MY==t^>ypoH)>Pp!dKV2hJW)2SW#Q4^BQ9IhcR2 z^kB`w+Jo_ftp~RqY(JPd*m>~y!R~`S2TvV*<6z%G)fw!}?F@HDI`cY9JENVoo$ES# z5A_{VheL`wLv0VW zKa_Z=>!I+G$dUXb(Iag~+K(iTbRFqF(sQKuNZ%24G;}n4G;%cmX!L09(fHA}qwPl% zN4t)8AMH8Xd$jMUdN}lO_~FRI`42}QR<*nnf__aL>pphkSkJLj$4JCIN*>sesMqS4 zx9f;^>v;F+Xoq#IqdL-UI?i1>%Dp^icFr?V)vt;)mJ}Z9CL{XxE{dquYqqF5=Zm#EuiQ z6GZKeqq#(EGBL{|YNf=jhFQ?cEZFvNJ2N4{TW5?}i_Z~ZYOttY&3&O4v!9*xAIT1%*`2m)7^`XX@0s|72Ui8*cb->8ER0_6`hn^22?Wz46?JG|nJoWl10WB<=OCkPGd(JLvfT(QSiB@$ICGZ$0nG5!4b3eZ z>#tqK`O}#s>NwMJ?Z!YqPOAJax@V`KYGeuV24%?W$Es z$ZTrnE{dsf>m(5;F)#Ek;F|GUwl^z4kKtd%Ngw422IOQ+SpRF`M9tcb^{d02f*{9C zI_6;>=>T3lIO<+kfR ze~E$AeJS;#;;QOcNkKW@;AgC)qLMGZ7b-KQQAJi&w7jfZ8dIhGsT{}slJbHDx}{as z1?A-`kkVLGv9yL;os*4TRJ^F7a(Qe~S=FL~>cY~PRbWs`p@d_(SmB~*tYC3bY<^|I zVw7gh7QtTeTP@+GdS)Znyi{MXs2sqD18{zYRnO%3_8 zDzUOfi&W^{)hf%PM68&8k*8AC@fsEXbJM-SjCd+1r=qB7sLuGY1FWkPPDS3 zykfzU;@FZZ$;SU;UdfaUO>wmBob2JLYzcmOaRFsUq=eBWRi)B8I!=vDiN$_7LzrAO zDkUzeSTf%c=cdGtc12W;PDveQq+?RjXhBh|sVs%0P+)7RkR4%Sk zV^iXiiY1k?g-aMY)xqS6H@sV(dt;if+cEVN>s44qO3?dMNiFwqM}MQDV1AQUa^cJ zwWM6e)vTF%5MF$q>^yZzD#tQQuf{5(%ru$yg?g||PU+ZvR#ja|Oz5IZQ&~D#m9gs= zS1eo1SdB_ks^$}&imLhQvXmYZT}QuIVziWXMB5_P6)|ThRcQ~Jva z%d3mj)c&&h)oNNwVl}A$LNn2%`DS2^CRF=Ae`BmzQlvLtSTBZj{Ng1J^ z(?6@qm33wRtdf$-;^L^vOG%4ss$+SPS$S8AV=TCftE<#isq6)e^-60?RTZ<=`ZAhz zbxK2oOBOr*SYE+^XP}lXVs>0}J}pK9bIMVh+g~kOPle-R(nz!H}%sH`)MXtoTHF#;{E4nR4;RHF>X%f+q)3U z%Bo9abfSu-vI@$V6)dk}=axP182g*-N#wbuGO9|;N~&k5l_|-M z#j?q&sb(0&thyE#sa2_bwrGngn1J@8Et_PuI+a~gzy`yboP4Y?8GqN#Lu^@PS#>dA zZ%k(Ds4bciTUu5SV|81b%2`|?Tc2n_S!DqOlP^0a%Q$=Fa@b+*TdzMi)7qC~63Bj* z-edoOOUZ7?4SEx!ZaFunw2Y$cbvC53>{d&R)rOSV8p-7q_Ks+k+L+3dSyfY5x?sNA z)L%%mBb@C_Hc1+5Et|4AR3A*`B*(QZsqASFuUJ zuP8NJ%FQWdD=vCCsg{)3>Hiz-;M|(Z(#v*Lb)mW~C6m@y7FMd(l&G8`qHed3Ipr|D z-!bP;jjE7+d|6P*F_G-7^-o77n)U&vt)fMF^EoJ%Xlh}N%n|EoQK#ouEh~sB>v&KL zv>T=z!rO=I)=_lG)VEu(1SwA_;PA<#b>;E+VkL5PJ!6jY_`KY?&+Q?t;gl?xlvxMi zo={TY9G{1i5`AvK5r-VhQg=$nHjOYtZg+^qn>pcdS!gnm*b>N_BpPDhxduql^ zKQ&_xcxuM9PR#(iv*dJ%>Fa-L#_WG;W=haZKRIItos%=Bb8^NfCz7yq?l~jV<2p6t z+e`yTvLY82vnyI52O)(Ol|^dT&ohT})l3=5$6N|Gt*%#RG6!F8VmKu(X{cMy`-$D(+REBdm-Y+u;KZ~i5vAAW!O74TJYpmPAolA{Ps?Rc(n=0eJ z_wQGkLoeg;&9L%afq!Ay8Lwu8qI!ID0+S|S(TL6{-NbV^R|W>}*SU5r!4jR!} zI(?Ou4jIweI(@a3&NZS}==3#KI&4Je==5AGJ=w5tZnIi`Z6H%35-}FF7B)4ic~){Z z_r$C%Y*N<+GUkz+C&{8Fm2V}lmSl00DzK7sC0Wv>=3B{ml3dWF3awUHvl6u==BR~MVjYPq)%8{)ZdBH_ zs&XsQYE-UjRg0`dn^C#CRV}s>+lTO8aTT=^yU2;F8>~cvob{^GN_1ji zy{fVjT}EY|sAy}MLD_{42W`spau63F~6Im#QdGNgMOH#MkR zt#S!pNZ(=Uh;OsRoxYIVk2s(EuU4(A-Xs;ZS~*?roRY>(8zk>`EAP0Kmz-2q!Od1? zcUq=X_Cr?o37_&Wk(~hL&AqUSN#&PA73IBe^ktG*CezlteM~P+@fTUCPiQ^XD)%1ONYwqIb;c&4&#+2#4D=>?_sbx z6^Nc&@O4jkA^N`Gp*lUbh^=ga3WYqU%*l5mHp+Ph??rRy>*OkLoLDl2lM# zXes~53{;>Qh&sva&x<{gjS&;apg|I?fR+B5lOCdm&cM)jopg+~*FH_|TAW=QcN0Fg zat)jLaI9w0BF@%uTBm@0NzT$L&-lQwWn8Y%OATXjnJlFjSqp$Nct)|grAf;sSTc`M zUAI;XCI&LZ51%1->Neh5zj}t6WQj~e-z!}aUnL9q#a2PTEnKrkZa}=mT2ff7<*w=~ z?*Em?4%K8!H!Ep#rn=M;WgGGoWrbDxGOKh*%aVmJw={<*3(rzhEYV1N$((AH%e9g* zeM9y%OExxB?+ZCowMk76WIjlU!Xy_jwZ=;INNToPYo&T6b%k1IrTT)T=BV{nidBi^mFfdlGNhAv>J}>**2$|> zgO!ZvB2|&jC=HeM zQV(`R&0ufU^ZvkaSt!SsG&EOntGc>5AY+syyQ^9d(}J0skcKQ1KXFWqRu?)O>N^6a zY`Fu`lptHC^~hM|lEs`3D^8uR&T0z`yOH-a81v;OVrS3cZfkI`6S8r&Bimxhe1>)R zxPG|z9!nOas&g!F4UCc(K=^nrnu?b!URK5dX(>Cma#^KX9}b?nW5TdW>}fCwTi7eR zbHWg7*GJ!vUn)ClAD%G8nrsUiHm$5{(6YNMnaNgL4n9$Kj!(e>JY@-pN+(CDht|`*mhOcI^7C zkyg%|nd3H4(kI0OMP*e{xqie+E2lFq$h!CwWQ~jskQaSlR>qdB)Up&^rN(6q-ikBo zg0Ju|Y$bvhJWpbL)+p&ZTEKq(GCH7P51x=dli7U=H2I4e^&5qZS1iDm2dYJK?oERCF>g+BI+_L$pyFQ0F54-b;$#?*(Xt%C1>gvFRhSkN?e?= zV-|~Y35gSbRYb;9m^JJj36Y)^T=KPd7FBUpmdKS+#xnyv_uMnbKW$`vl!( zOqhWtgk5~|1oL`I4;2$%g|xew0~b;EPB3M_2BHHQBzLUzjZeDG?>uv_H)H0EVR|pc z5k@&EHRtq~C3m7?`i^yF&eQp`1HM5FeY4P*#MR~O*pkY^*y0K~OH;)KFk8TNnqs+_ zmD+_UELg&IEoE2*N(wli6N{D>R29#R6<1br-pF%K&I~)p>r_(7seC!Z&WQj^BxkuQ zO625F;q}V2WTjlDC}+ZPp^Z~teoM%ySvi5^j3^bb#4^Cj7Ryygy+E;_k_=NN&*p5} z7}G~(<|6NcY*z@~k*TlS*bYan**eZEEK$-8q;1a6rpP}ng=FQ;(iUfz*_hz#zR2LE>ymsPG44B`* z>OsTHDV!<`tjEvHO@n2hFDb5S-emdyv2ho1D#CXO|3-`36);{=^@=sGxT0I))fuwq zseIMwTf*3rESS z7f$(AE$_b2K~0SNGS+4t=eEvI@)Be3bY1G}ik?$&htLO~6Xp^IF>{ z%-ta-L|x_C&!zaU7$y;YOfrPA{1i{rRcVin1*VVbO}e1{(EmiHe0Nc^)R}zh>&p{H z=MKZ3-m};Ls#p%Jq;~j6;-)lqphw6apK!4>?Rv4GTdP~9i(G9z*AtvzOn#p;0#ffR zc|@-aUB9)?>g@HvEqonGy)OuP6+S z`Ud~LXynRr=-rWM9@R_wOGc*b{djk@-8yO?>AyF|$cQArX`&1(o+h#$Cp>P9Y?Nm2 z=xG`fdCPK2`f)7oc#KLhpoVnW88QeetPCUK@!S@cY;dxtDG!KvnsR|WBcjIs*e-I5 zV<*w%F>dhg2>RKNuy z@UvwhnTvEbbWMk?ivPw8sdb-G$tTtv+dTTVs(!Wopx@_ocSP+H*NA0)#_o08hNX>v z&X^&_Ymv%bQ8{eg<7$^NI)iZDil7midyId^F5_b9m+kP|pxnD{qno*-PeR$>3+wSk z_X}F?)2=AH)FMpC&)9wG2-}tWj5*@UVWba0*A|Z?!&W!4Z02$)#LxJok(Eu!aUVeI zH3Y9fxmVg+GM(_r%qlEg5GF))r%@xpTJG7gj%SY+*m~mo@I`h)2D_R!P#9y;bv&#& zQyHy>ZiMk6YQ9+drq#$3pRdzlGd3GJ61RLEuMZg+60cOJTOr}%RQOG6AihAZ{EXeY zscToQ;$gg1C|oW!-y!FZke&c5oC(m~JaI#lR(roOT=p|%%-W|$sjroKg^WGiZ&1(2>ZG9b^0w*?U3zJc1hvhab z>adg(d8hyI;nL)CwcA(V`iCiDlKdZ&^0;pe#*y*ej7fM6x5LZB#?4u#yve%-nyR;Us z7m~-SzdcO0rVpWX5Yjn3#mII`JvU0Wx=$kgGBiJKkF|hd{>%g+MIqqqBi93Y&99WZ&<1Uk z4eIVI#Y^Lceyu2r$|VlfB3V7Q8P*ot%zWM*M*~`>*k;zpd8(Sn`{j1prj4p)_G0`! z$D(QwYu)EK)oNL5u$}7XhrD=gwd@mj*~RD_+lgaVvDKFj(0blxc4NC;g3Xm(Vl3=n zwiUXf(O4P*4dxDD4#97nF6-+w1eb|W0&`=bR9r~%I%xP2+uk|jpUR@589%2&*;GdpXsYemOP3891(0 z$C{OI-h}VcVBdh(SAEv?RUmnNl~029yI0-U|N81hL0|gyRbTS@sxNs~e>HP%0;UGI zzU1v|FYZStz*u9x5djb=TD8lb&fgp-Ru9^x5WqI)*AqM zjUN|Mx#jtAb~bJ##k|$NzO}AdAKse}4HFkHehd$j3b)kXF2#=MtfW*I6Zubv^>X0N z{q<|@dMtgi7%ou`Zt)nIJg*g2p5Of zZd8}(L~w|_xbbrH7BWIZn(KKAKusAWmU30fR9$0Z-R&wkJ;<4CZD~fP)H`IgeA-}U zhKPe|^50Tw6zrwqx(eA}4AAXUi^j~Rz##8r`_6nPmvE_yT(8axr{y*Ac0CmhNlk;i zxpwAI`+bo9nZv}(9n_~!et14d%A;!@WWRhe@T@UZbRH5NE5{iP+=S?Sb3)EtjSZmo zLs64n)27r=N0&Q?Qo8Sq6^sAosH#DZmeq|d8wuwv%DmASE+!}CU`_rhQ~EYd*;1{r zRHI4Nq?QaBWqOS*^}iS?Wy&Z@x+sHg6<1Jr-=q0&x-lK1uK&sHS;~}lB@J7? z$~!KVxx%Xcq*J{|IA!*rf0=%nXW$tl^skaD4d;$9>lKn*s+V+#OQ%-&#Ya2HIHKS9 z8Tf`3|433vcf#e?HS+-1%m>*o4h=kQY2GNBqGVZ`k{rw2E79)@6UIp+{}0v$m8q!9 z&)EG9xsJ=IS0`r)YgA7CjmTfflu>WokYkPe7e?x2O^!9#Uzi~6FqSJ*=GC-hjr4l* zLl?$QLzH^$YuS}t^OB#jTQ25|ks5bSml|K>#N)T2OnY`F^eh?AX~&^ZCbLL&jgd09 zlZ=U|k(*(^si)gNk$e%lU=)@cI6WKE-QO`zZrB*)4cWtg@E*>NN6uPJ_c)Annf&$# zPLAMW$CuIJdo1ct*z|Sghtaths}sd?g>CsV$Feiixk36y6j#{!hQkmq{WFdR{CA*m6;`ekOY3Y+ znPl3>lqGe+MU?p?l@FJ$eRPPd4N(fo&Ddk*BFFOyq?ew%Kdg9g|yFK(V{&hzW@yupFd+8F&u`=0s8lBpdEYK|I;YH3Tgk}f_W1P z?z2nw_rK1T%H%wX0Xz@TvRM-+1Xa+f<89(V!!mb7$sqTl2|;OLgg8zk>(};BFr?4B z!d?cgzXG|zn}^<^>g<2B6=c;^GZN&Va6&&HiSgWE|KkWpp+6M5@L3YGV5Ulc6Nhj%`$D@VBe=vc?3;E%^gd$g4ML9wTr`1C4~?@s#%h>ui85u= zH`Cq_S&NdfQO{-LN8*o6U1Q@VGI!r6+t9d7^Y_W5{Gf1ZoLy8em8+cTF`FFu8M~jA zi}YWn3p<=}IgDH%l;0Zf4e0n^LuW0Gt%rh-*vf~}r;6PHgKs9#j*`b=P}aY7f#YKF z!|1eP?N-RYoy5mrJ}Ty)vCVIG%sbmv%n$N97e(m8leVHB%1%>PTW|GMRgPkzU9YiQ zrtugFQ`IPmPJ+sIL3&+VqSv)jE1RoJNKfe!x!%iki7V18 zkdD?bW7fARc$gAinW4H+&^t>Pa@FA8jqvCyWbS0dVzOJ~@lKZg8d4H7kM|ncLvj1( z-m!RFZ$+i!?b2_1bZNJ~Yb)R9kqGQgsrPv%+o{#^Bt@TRj;Q zyZdG6_judG>HkYGhN{r0p~kQw-s}sqCuQfb{Z$4ZehZG}8oOtr%FLXX>E)pXug~xX z=Zz0!j`x-2Ts_{n#=L60-(Vj245KVZ7;`qIt{(5XCiANCL(6im8$DMh{cN=Wb+4#r zl;wC>!U98$Nx_`Vb|Z5KAC??B|A?%EmNM{56cp3qJ&r28y^(TOtrz^-zaxhSq^I}_|VVlHe-A!k7x{X zYRxdUx?%YwEy+B$0Ipz(8<&MmuLo+j_!zd)4 zjY2Kk>RO^I4a~K?;RtGkZii@%5ho-#lDGgzD56bR9WhplNY;h@qALa1PNhP_csM6C z<4iRp$96uf-7}?}%f<1jn2aA~xxpP_j#cf3#Cxue^n^6IC7tL5!wMCxoaE@~L5)}L z?z*^NWVs#336dU}5~Rt}Vh$lwR;+G!Te*ywsmC{;~U1`Zu+Ie=X^;k@W{;K|BEAm%QQ+i_PCR{T5qlR7~u95IS(Q@bYo$rAvH;3i|q1NPh0*JPs1N~&z86a{nk!vA@Vv4lP|RnnaRb;?;7#e za+F;1g3jCv&^%rWMz0 zXU*Vg8*4?;t(P?>)V~5o{?MdnD5W}onB}?DlU$dq7*b}q4r-d4BXrL@%LsRW^xxR% zt%u&&jOynV3zR(`t+h5NRgSinBzv*TlMTlhXAZl2@`6lb$tWo>HW`a0qiRx-xX?9a z-K}i;8Gn&A<0n|#yot`tn{+XSF1Dur zCCq4<?jpUO`I7?1tMx^&$K73uG^WgvvkKKhx}}NDUfZ}748XcP479=k~7tszC`K0 z-+wRyHIz3w6*>(x4C9a4g9TU!d6Y)Dar(?rjI;-Si06}%qyO=CQ|D#D-ZzzT(M4;Q zM_R65yEbxd`9<8?N8uuL#r9k&GmvfX1S;7A?T55|-}j{2A4&36;eH|iGT9P}oh9eB z^HIF~Da3nJEIWg$;EY=Nw?Skr^6zf>cOU=M{lYyc|GMO#Y0wzwCP(k@crlG(di~`& z!+AZxou>Ew5BP5}$7$K}9DlIgzXy4a-}}uw*J$DOreEWYX2{Rig?+|clUu4y|5E=N z6fy1G|2Za2eW?E&Rp;hXOEt&L6nhjiuJwOMmv)J+_dlscBW*V>{4IRIPAOT@Egs5|A;x9dIJ97 z2s1-7-`42!-;`rc^kdBTesf}#{$FhR{5SeXm=h1dEW)iZYs`T6;k(*(3B&tS^}rD< zdE4(gVovZI3m1}TA;R8YD&v8$8T9_$U27KB`0vaaKHOh3_q6{rW{$tg48A|O&>ZgN zb(SZ@jb`zu2JSZ7pBHU^K5G&)Dh}RDre?mKV~+O!tvF>~CX!lnw72yL>2iOrIdO^U zTV!77-MkRNJ<^t;qB+9baaVAmf8oNKHU49S_h;&HihBLa{WDDC!=`t6yZ<_WjsNfT z!1%q+x<@+0@Ly_rKl*_GTJr+`&8FA8d5d|0H){)A^AUf3j+rab_6}+`bG^4A_1~Do z&%DSV{62}`Bw@Xqspw|^I?uHusW>+{%&J)ThDo64qp#d$G*eZ`^bYrrxGUv~_d4jJYHc>B-)v5})AV_>w~+o|Gr7xY zSdKa2ZrFQZWh8mCer*Q*BTe4|Gx#&px5Ui!W(H52qn_cL@*bbZ+uDxO4LRm0t^IA8 zJZ6UEG$UVZj*#RQbC`Es4Mvxmf#EWk$hy{?LRG$nmKhl$i?ofgHD<;_bI=YNF`|Zf zvYGK@-0aC>A^jsumMn+M&$k@!Ndda+K*U=T2b5yVu0{aFZ$Y1D{mmePy$uGqzb7Oy=M; za{N-a_btYrQO;;sM$sw3u=Z@NH^WE{AFYSj@HWl03k{wtcC)8xv(HH_!(~_&V1a;+fJ?7*as% z8gob)+RM$sy3}&J^eJhTpJo{p8R~uXL#%WDYqiO5S=CbuOxXL(hvtf|_shP8H8tWX z0ec2-tc5()!hrv$(r0%`40A^6YI4g>|JCNWgshS^dYd^|#(^9d$^cZv+XaBwd9UZ%Nh`~oyayM_sC zvD|7emTP7A0X=JXVz3M&=E;p1EYms0^?I+0$@zcrC)b4D;m7`3Yd9+qOt8ZxzbO`+ z^F4@y?9diZL3VDNcVl*_yC6IGl%;q+J6r})rI53Cty52}^$Z6Dvj8 zksC6yg9RK}=-)*Ci=MM9C3fYPt|xwop0gjt>ZgB>JpGv;N8V#UdE(UP$a`(Mtcmh- zc?8Olr$1ulv_JhBFxtP0<|pl?KWXOJOMif^93P~8wf3W2&f}N#%e~SsTfGI@ z;d^{V+3kks?TqYj!Pm2M3!csn6+Dw2T$ovtCMnKz;+piuz|I!~6w(aGAD8n-7bgUDf^kiAI=ce(voyT@CUUF#{zpeD^}gUmQNo}tD@YBWVscsy!vy_Y>Lf{OpR}9THiXgseawm7WqJ8 zV{`1*8MCG~*55kADzG9|fm7}_%5LC&Ft^Q`xx%Vb$wOHMRpFV_X3tdetgiDy0C{LO z^{#=k4SZgCKF@Y59`of9V|lfWDzQIdYP}suKmTjJOduAsZtT(5xt;d^Z^!@Se*Ei( zm-??7UVnjG)D<^% zH=qx@x_%A(N|vwYrqyuMrd!Iee5RQ75QZ-=uj4Dm4W#(Wsm>v>66U|Z1Fbtv{^xaG z+8j!sApPe4f2gCA0Z1~_rpt{7Q|Z|{K3`5R*>g}njm6dwfqnC(?n%3k`6jN_rE~Qi z2~*c^ocCY1Rr)eJ$Z|5l`T5#24`&*czQdV&vOPO2DY8#x88`Sol_fHlZePaTqI-Ad zJ(*v_g!RQsO6HflFK2%hpGKjr%uk^c*oS@JW! z#{))n%7BZ*S-hceE;k-s`y6(YWVkiN&Vi(nS~nu9XG9F z$4%;}a#?n>)N)$h@o`!zyNSvUN@dIK$`FX{<@_T!H|gM5**ZKo+2P40JjCTDCoaqT z_qbD^?^{wy)M`f*(fRfyYHrXi5a}7;M@+ilBc|Aw{(WAO&ujbAzYhdRKA`P$rtN&z z!U-3D-1Ibue2<%7C+Rpd0Qw#^o-_#glQ_mi`Ml>#(gA<(`LV!{nOvS7 zrOd7`c**>N_e);Sjwmjkm99SPZI`*V!^b(rDF0sZiS8@Dvm!l$5WOc? z&3o|IJtxNT8rq)SazDD(@e!RE@%^$FKB;D#_BrDhi z6g?i@Nsl_TD!aY713r1*bdvAq(Rj=g2u<-|v^X7o4CT#68(J05*<{fsk>Z9{Z?(d3 zU(u>~`6i#?_m^7zyH)WU9E=pNMN<`L0T(YqGx@at|A+tIZ-E}8#^5VW&F3}#{s&(2 z9mPJidhA$i>jTF>^S?zSaXg(A_>=r{1s>rgKJ-2goUZ7&1^;I&%x^`xFPZgH`Ba$! z)1)w8f}z7x{t>^G^$J&}&$^8(%uZlp3PWGz8c~=d!89nfm_RzHcCHQaFcO)HNJhz; z4W==K!CR;%<84uqtSI+D1cBT^mPJwe%)74ni20{S?u~HfG4%xQ9R~hRzw|f_pJtms zaxEXFyS2fi$7D~4=6+GMGzj3g9x0E(*~EQ9#6yP z&gPGQqnJ%xQ@hAHDx0e`w==hf$s%{WL>ztKKe#pU8r9s2Srq(p4&~N}<2Tb9xp3eI zw+6L=X$|jci9v1+Y6H_6JZG3di{)n}ZTw7Y(5E1d9exfz)oj!mJw~KbhW#1kjA5$L zhzgduw}|bD)~bh*&Fm-4L12=oRBmJj>VAMQbO$=^WDXQ&445+9ceZs75#}FYDrGiN zi+cyH8uT`{k=0|W8}XEat>dvzL5H#_rzpa`Y+8eQ`D1*_U4IY9qyOn%E`z4& z)R*4Dy-d#+m|h-;NA%7k@8~hXn-{rS(0iF2$1>D3(l1}rC>}IBxb97mr_MubfFbT#nCx8K%~43vVlmi*YImTk{_!yMa@_pHT-ls zrTC7T@$}*L7#pH9s+r(ee!jmiL^p>=iZ65T)oQsa66kXcK0fUN8HOabWPpqXYk;$(U-?YG`Lz5 zZPjaoM%`MB)%^I$kGd-S8ibH{1%#rdqubCX_ z^#qq$*1A4CS~kc%Znn!*AmV3r>Pi~ZZ2g`l3<({_O@3-7*Hp-oLM8UeJEcZE<`wYuH zwNdVEEcY7Ay}@!n%X81KHl0IO8(wKW9bRdDUip=_j%(2ZD{T`Np@K`A^BUzV zbH48MK?&MQ+k*8fU&j4aconT^;9f4w^e*MG5zW0YF0f?t8AR%}L2F$H+)&E3Jg=e^ z4YdnGZk_AYf{tH7ic<|#0l;(QP0vff0bt`F*s--@Di zZ<+PHN2|!aoEaKvUORI+=mWqSaEsXJ#KCw6E7Dtv%5eMFFu|)fW(I?)6CEs8xjT|Z ziUc1p} zB<1D>d5wf3k0Vd-1Ta;`?l~f+OKhI-? z6wL7}m})5xjZFJE7)>${;V`eMV9b0cFTBCl;q@w*TJgd!j-xGZvSttu^Ew`kSxLxi zKh%IeM=E$c2xf|SQ5)iyX2+)ZilN1bg?SAFW7Zb(S_wKh>qzoEFlohWCYWW4*W+N! z%q1_XlRbWxfLS44?lx>9M)BGT8^9!nzG*WeP-Y zMx-I2GZ&GhqVpM;)bIHc=5&6etUx4&3DgjX?14yqAd)~N72?&>tKSrq$Fw~4@^+}1 zJuB}9vr2lo6Bv8+z6quYe+e7Czko44NM0R4+aszY78i6*elOu3QGLLyQ@pCcn0_ZO z7(2>*A()ur^&pi8)eWoHGB9RD6|NV3n`uYIYX{s@@1S@c2*!*<@}mB-+i)nDxOh>? z?PCftiq|YKW`vU$hP$H;p9IrQ@p>Cfcg5>FFlO!)u2);!6)07_%E0tdyp925W@X`e zjRVtN@wyxg?Fz!i#=YdlyHl{P<6AKC&HQ^L`U=9vK!mq(A znx@&20#ha}=AOCFfT6ujSc|pB6_RNU@~VQ1y&~-ehQ4|dTQ@LnuVcUrRlFvFG40It zBE{fwDVT(K(Mn<;H-o8BydDH&dXT)1f`~mcp9eEYyxjGA7YyxN3bkQNkBx6oo-AsE zV(0q;h4UT5hKxV^9QeScz7u1efjNo8OvLtc4BI+bAJ$`w!zd0`u7_O#T_ zUYV&LE!~D!pgg91s12)80&F9j9XEm*tc;D>VCq7~21z~wCXv7LE%ds<55dIno)^nd^@}e`WU9ZoD zwI1a$ZAks)Zp3YIsZ=lh<(^;rfLWyU*HLuIm1`gJvga258aWHh48^Mf%u>bcH87?J z3wv$d8S_-}8V)9_cs&Tlj1BUlGmPDiuYj4Qczp(DmEyG?j2U(0MX$xRy>{Ob^Ig2$ zYt#u~)+$~XfidH`u-6@6<|tknFu0K%x^8>|rVh98!tR{3*$Hbe$_y#2%q=-n`2Jxk z=S;0}Egsp&K$Otbf|#dKRs@|$zpDl@vlR~|0eg~G%OzDMKVU>d$)o!~0LI_6+1|2D3@XXjM*IxKO6k#~)F+|d5a|!AGhIeq*AHs0fVY@^kacOxP*~OB^Syv0g zS#Ki}!&@byV9k9SdSnjH>bxs6oHZPgh-BHn1Sl;63WQ8#A1B z5h9s)Ig4IhY?ts|VK}R6DaM9mc`ZRDW7mnoaMm-3G@ip=?yRkLXNI#*LZm^wywdr- z?iYr$enKQIS?&>a_#Vt~)-{OGn}JM!p}0~T@6mE$II9abzYS6^%JNFdtuaX$&Uz7% zGV!9lx_59^o9@hT*544Rm(d&dQt*hgZWV^JzCa``s|~GMb_vV&VurIOA=0R1WrX3Z zO?n`!iQ5np$>CKg3};9J%~tytZZGJ{k2vY&N^@(%u{^kt|{TW$SRUd?&Zsb;jA|iX^=H)Pb7Qe zp0hgb%M53YKqUSxd!6CzuLp$TtZxy?{K8qmDt10v>kCA(Qm>e^HTLYq3}>B=NS)Nno%M(?ob^2- zO_H_5S+8fHBT7M`W}(SHJsJt^xCfvGn{oEBB>w3vtAU2vo^uq zm(;JEh0E7m&lyYZufv4ltP2pSRI;8EhO>S_B>fwEZR7MhaDQev>pVp2#cP=}>setq z>o-Ia%h}6){yO*oW;p8~h}54Sp7nw-oE4?5?t7e7Vj3_1liRSLFr0M(B9&9ZvtAH} zv;IJ&OxAfkCF48TtN($_aMnc>sbep9)~mvB*5(IcwUK(Y_BlmlE)Nohvo1pG)gyF3A3Cz=r!dqjAFr0M@B59>wSz$P9r$eyX zNS3$8M{sa|jSz;j?m#3it>Mo4k1(9I+o4#oWtZaKEuSF_XFY;QLb7O9dIy*A7hyQ- zfPSbKF6pCyi=sEuPf6pfe+t7{&m$81hO@>Y*&836wOM~=IBNhRWwHlo3m-P?R+>hoOKE! zW$U;#+*!8@!&&bk5|=T*i_gLH+HL?doOL`Rjk3pfXWbwSXT60;DC9 z)OLSmhO>@CBqC>Xch)V!aMnkNB(m(~KI`pzBr}{f29d}ooaH|2Jt7Qe{fJ0b#{6hV zc&*QE*k=$koOL!LNy*y7*&3e;!&!$Ng>$83{mq&6s4$$h-OqSHo_#zEri=uI7*5;MWaMlrs zG_ByQ1hVXwuNQ{1-a;fJUf5zfN_gNg%y8CS6#1IHP;H0TDq%Ql?_&Xe#aW%4UJb%< z))vPBT*q0vJF|`yhO;iF$mg7e%MVAreh`MUP8y7rMD{i`k?j7uT^P>#1d)Vfl{mAy z9nTDBjXxlrWsN`3YFDKkD=YpH2v&)wLO&?&iV%;_2T8u`au}Z8a@oWWyR|qVK}Q_5_ddSatWyo?GnB!3}+oN z9A|1N;Y4KFXNRYS;jGIlXJ>t!0oILh2gBO*kYvR zY<@Yi*ui@=UKq}Lj3TnD+zVMnrg*;m--O|;18Y!I$--vQF*c?O!&xsOl92P4J8QEs z%y3peL>eWl+*!h#gyF2O5Xnjj-C6tmof*!Wgh;*O^^`E2^)p3eZ{zkl_H<@A>t00S zl7*&moWFh$hO>H)jYR6E@T|lyj+Q@P7|wbQkuurOxALYW@_CeOGL9L}It-Bp<=WwL zVL0nmM4F_8#c=Qr_S$khGn{oKBK7iIfII6ZVL0nkL=ykt)_5I8?BG4x{S0O}>vTk7 zQm?kivd@+CgyF285y2PI=GdYr^|I}C5S=t~3};<{NL;)Qb$TrnhO>&!MAilD^-pKk zAYnM`YDChK<*wKJ!f;mS377>^LU+AJ3d33VB9aj=I_r4{x68M}aMoTpAvDReoM$1$ zZutv@;jDinl9I9EuGfyW%y8D}h@{2KU9SbgaMos%Fu%mB#96`9J&Z_$WV!3L={d}B)`^HToy%VCdd(GvvwlM)BVPScLhs;lc=Wl3}=0TNLEIayI%WEVTQ9VMI%Wi-lIJ(V1~2CAyOyxnu#p$6vkfjh2gCAh{UB{b;z>obp*nO;jF6>DSMqu=w%>X z%KEu5oYfPHbWF**SQyTF860PySIk*jL zgyF0w5lN%ov`!aAAH&bh^EnY|jn-3{;j9x8X%epm&aC@|;jEt#X?&AQ_$actT;8K; z7c;|I?Jt4XFPyb4vZ$=);QWh);jHfwsh8&v-B}|pWrnlfL?ot^aQHN4IO|(P>eq4! zJE3TH342|}3}>B#NZIP}tQUmgtW7RQ`z+xscNyP?y)iCYGyd=VMG$r^6sqG^~`YA zFhpWXFFzyu!vkl)DhO;_fi#r}N=G|GNh2g9R5Q#_| z9_{q{UKq~mc^z6+yxdu53&UAYB2uY%wVJ^UXAMB4N%6W?7|wbRk#v^F;bmAf>~Xly z^~`YArHCZzIO{}bYrG*0XSKZnI}kaiU;@ZU_a2QDhO-_=B=rV+-RjKR;znjT>tu?^ z*w_YH_Ih}`Fr4)fA~9)0cUBi{4GhCs!w|^~;SzdhJeW!imk7gI2j7ITp=3QK3}ExMfhkdR`rd|qRdl9-X`|@83x?i_6IQQow_`RbI%k5J5~9PeX^&xwLkeT; zEpM{Z0LmZFLZ^dx(es|>kTk-6`f9Z;vLqaA(%2nXY0Enk%fxRC@|%U&U`S9icag< zcyF?zGZf5nMdu+feHER^-I2&jMdw&B3DI%)*KJ^EJ)~YJv}S${W}u>T@I53Dt}_En zrRb2Occ2Kl<6|&1-^0pNdN1aNqH{JF`mWV5otME>DLU=um@yxwb1Imjiq8FDXsm|m ztO1i$bPm1GjEyjztH4w%I-A{Z`ZP?Z4or=r^9va2i!hxD58yo*iq0!wsP17po#tYl zS9Hz4DtX>y`S*GYL1~XqNPy0vl8A^)I5HJfw$KCI@foW27 zJ_EB*(b*NZ&DJS8e+NTtXxhhJp2xtHU`T|G!*yVmDmsVF!(L0#xeCm3(Q%K%H^Iae zo!H~Ju2gi60n=U4xfTrdX;}Nb2d0mr)9DFZ6Dc}LF#Q#s*ZwSiPSF_*hQ@qY zd2RtSUD5drOdCaK*MH%i+KSHK!Ne4uhr!HNbXJ3*IT%*21D?j(tLR(^rlX?s3YZ0o zPMZa|Zc=mxgIT2L%mPDeLRh^%1G7}oDSZZeNJVEHn5?4nD40@3=NB;aiK6(g;C?>w ztXZSN>U9~IwTjLXFl9=4c6bhDfl*j_s=<_tP8;9qAL#JvHZ=Yp_$odTw#qBENqDUZ8-z5&xs(b?y9>=P87bHS7;Ixm2s zbBd`~8)tv*{RZy;C_1yi&^g8Exa;*Ln1PB;*_-eZ9Si{9!Rz6jU z!R`Dxn0iHL|F_LK4pRBOpRIE_m|2R>2Vm$NXLQ`{v+GivD;1pyV5TZMPlK7K=oG($ z{g3Fl`+X3YjG{9G%uLa7*DDKVv7*!c-AL|S8P+}*fmx>Ld;n&Sl*e7K&hOz~fufTH zGf#Bf^|~KSlcKX4%mPK{;AOZrS9C51L+4!lSMa?29+;BN!p|4o-bY`Ej=O!vf$5;= zJOO5zq7(f9Yq+8_2+Ru6akp~@Om{`6{6n0V6`lLQ^igznTyDFCuR>|blm+u2~3Tmvl0yL0m8~NI*a>1iq4l{ z;)>4DPb2t@-|+Fg1Wc)-Gx#&Cb&AfrU}!H9);=eFjF@=vJw?ae?@2HV6rH(Xszk>j5yU6rENpF;*3wL15M@IyZosrs#YKrnn@0Uc|pL zdz-L&O#u^Abe4gcsg$SN*SP_g0gnfeOxZCGMF!Xi``fH)r5#0|aAv!Si9Xx)11Jg#)8MFrX0Yt}Lo?F0lRCK-u zGe~sY?Q_V_xc{T*%mhPw+OYB51g1>U8Mqev4bgG8&uw7(Dmtsd(B3$#JOh708!9@p zz>F0gcl-PRX0W0&@K>yvqT}wb+rcCioi$+UM91AeNB)K~D>@BeriqTbJU@b&tmquR z&g|7qJG``KJGfr$Hi<^!iq32>wW8x5KilFf2fHge zmxH120XOw>>#PUUN6|@b7R~KNjgGrsMJ3Tle?{j8F!a5NVdcq!sZ@0K*gTrs(}wBP zf*GplJPT&Jl*e7K?)Ye>8b#-3Ftj%gE6-P8Y89P6TSOx>6`f1L)G0def|(^c?s^^8 z26b0-=7E{5=&T1r-}OkNtI&Sz@GYacy?WUAxf;xDMQ0h9c}jWWTSX&jMW+VL0!1fH zjH0s^4DI>D`h9TQXk?M1lO{&dX@fU|ELC)Bz${jD=7Y&9IwgOJ=B`1)>Qx11m7+5T z%u*>29{3Jk4}S!+R?#`AT{L$s6E=P>15><3_&8h&W`$Co9ok1DF-7MzFsl@u`@nQk zbeh1dR&@Gyh(<~kooQg!DLPBRlq)*%t5wY_l!;LeUuqrdrWi2!^iF!sf;19ix$yqH{EuQbp%FFjEwrWnj81I)k>u zxl+-|fT3%~uzFQ&k8_-&vr8QNdCYN|+vasL-oB2f{{7IYpGxm7jTijBk{7_le$O+x z#CH)%9tzc*aw&d#yBUhn@n0*e)ecze*0WAazLS*S!PkVQFlBCQ3fb)EHYlNKjlwNf z4yL?7@37o)U>XYa4l@(Lm{uh(Di5#0OyDXLOdrMTUNH21#;!9yE4={5v^;t3i7@vP z6SzVGLw6Wls{~U&gPE^*wd;hjadP;G8U!XWlt%)oUx!HcNPpyCh}0cuN@~6p6sM*9 z!KMF?m9^A~B6^LZGJh}V^M9Kn@?-9ukVfU6CnN*W9CyL5r#4GjnVCbGz*a&|S%u2=UdoX51k=Fzm*!4QC3$Aw*uccsCD_)21%wv_j zdcezG!*2ysEndO~$!vW-7diAY@_l0+mMh@=py+}59U86xS9 z{>c4^GzB8BBht8?pZOAzvhDqm)ua=MwA}^k{0@F*Cqx@}ZYlzhE?az7#k-9Q})}b%-PeaHM)zYQo4-V|DT4ZI8_D5zT(pc$_Jcda2M1SN3ik#$+yoE^p5PxI^BJq3tk?#@71S0Dx>oGsm zemAtwlm19IMB)qlk=}@;p7TcrAd<}ZBcl;1d)Xg38<{HHQC5!?h;#IBnuY%829tP4T~z znQVln$Qsq(TAX<|NW(if!lOyd#$Bnt4Ix*$ICP$mHPf zh`~B<&O2CA9LFDEreK~HTAzmvsUBN-7TPD|JGHr;6HBP&3$)MwP&-o<+LmHv%aw<` zsCI!aB_z@b%rdDv)y_Wl05dJ5?v&97OxYOPp^;Y!etKTq;^T#h7rd6a4NOAOc~=1~??9xox6vqy(%kWC!H?bslTwto=*|o)A4m~J`Ajg`ZdTa8ErXEbsyitc8bD*uz~egl|< zFuOaM*T6K1drPhoywWDIZ!xvFFi=AN<#UvfcKBw6^kxbD-LzmNvV9NS@hGrLFmnu; ztfF%{mUAoZ`HIeUU{*taS;8arRj89sliOH=t z7bTz1D#lsCeyM!RIFOdK-hX9XE^o zdlHzWc;V93G2gENGdRSn$B5c9CSZ?W)z7qC^PL`>y$T)KT}0y?4*dHgn5NeGvoP@H zM@yau$-AT%mxtQ091(kLbO%!>ZRj2w$AC$Ov>|z&MP9tSaMYcctH30R{kxO~M6#Rs zBWa5KZgx9n9eoXvNbXaSX&=?nZTJP;O}(fM>5O0>MZIw~A#La$^E-nXtF+-EU`+dv zS1pYAOyYT-1ZKK;x%+DZn8}LQ6<|!ulh?H{u*-c1m>G)Kd@xfLuQ$mn*Qew~=Wcs| zdR$B29=iO!YG*`!$brMWpg9Ka;Q`NkrmY!kl|8F#-205otKmuk)xCc@L5L0J9E} z$RK~#F8eo+9F0g*AnR;Il85`Vu12IX5Sfce{h{bRl(*0|>_RZHL&BL)Nm-uFDTSIh zn|K{;a{xwW2-DK5%>gKn8BtVs_mDas%v>40_N=9DPJx-DjNU82m~mLx>wYk4#p^XN z^FqA%imXYl$abb8TF2MWF=L*}Lo1tI|B}A&Qp&R%m`q4{$oOzDX6_XB8Utp&;&mmM z#fsM>V9XpOFWR}=_4+rM1&Y^~V3sLf(F1vQ7xs#S$tYe4Fe?#cL`Uv-TFQ*PURNDqhcni7Q@NFlJRR>{XP&cvif2 z1JhmcIucB5v%YUk6y)S+AH3}Dv&8xe_cR*UZ{?~^i9`=Akg=O!vI9WR4fuC&hz zFnyHvX>|zKw6NFqV6uwWzF_(*UW35YaXUxjRE@yV(&y7lQJzMWAlL5&&MA+9N%J)b z%HI5F=`uG;d8ohkL~-mw{Rn1-^q2c8VB1462bKOh08HcW`Tdw}lWU3-z%=2JH+RlK zB*R%PK6mP+%+x-(-REeZN5HI-_Hpl#-Uc&NX`i2@rsU<`leFuH_EEgbz|<&SN0Sb> zbIvQ*{DB{5gK6l6vLIUUoC~IGi}3Yu4ww`(Ifv&FNe3cdAQIn?z1+`(Y~CMUxWQ%0 z6Ko$EFLYFZX$mMGg-AkCt|mrNzKGo0`0pOvib#X<49k;XQn(osR_6DK2`H~YB%>(* z$AvK z{t|XWq#+RLM-fGbb{|cFtbZVqRa$i>m_%E@`+P()ir2ef>H}Fnlb4dU%>eX;Tn}PW z`wp{jh(z`R(;&}(VKeDFm>B@3sW12Yc0R(yC~!KMwCG@Q@Expk37AG<=x&C0Fmop{ z;x6PTF7ya1+QU+ypWI<^u_MA3;Ifxb|5dV|R*%&B0?6tBy`q!pbsn0keI z7fhYP{062{DNpCWVxERDExnH#gz}j4Ao?|m3g({A^9>?AoD62QoV(rosJp?`D(CJc zV9fcnu-C6()+t_Haks2a@frlioT&?YT>z$dOZPLF+yak*nXY*K2aGv)7xvl;cLCcd zUcJD~RJ=|FW6tJV&^y{x>_y z!K4+h;b6?Jps?3fVEQOt3&1Q;yuJow_7a7?b~qZ(h$&u2fmx(@T>!@HKni=!1(Q;| zJ^-^+@hbTn+BvsxDeP4NX1d}v0!&u%x(1Bd?T{BeGh#p6{vwz;;?)g|JvP>WS*3XG zUdj8Y!u2{4%wq9!kHbsAtW~@o2V-_$g}punvr_Te>KLpo*dB!4*E#@<*|Qb)`a9|1 zl@I1s7Vdi83?`;{y#~hY^a^|Z3Wi>j9Okv>v6%0Q*HAE7-c{ONo?9KR1QR*I{~X67 zh-4(vlIKCb_a4W~L}|}to>j~hGw|aBsTVQhhz$Ile%bywyh1?Q5QEKeoD8N^X~S7y zO#6`6%~0VhMNjZ$FoVRagZBsDqwm3#D_)%jbIX%gDU9uU9SJ5WUhX}>d0-NX*8^bE z{Cr%2vGFD`uldKucZfs|HRUSwY*+i^n`iBdNS)~XUyP^*8Buuaf#W!i%A9KrYWd)f zn(=>tsgag<-=&!YW{}eIZG$qSjeiZBN9RNOb-$MpQ;d6q?R)?2Hnc z)+jup4hAz>THZaPP63lrTK+sRrd11%s2O1B_4DSO;`Vxo7{zN57}N5FN7Sca>cq=E zqJ9H2P4U{g3aiao;Uj8qFv!wz>i(G_6s1 zL_Gk8-YF2)%ZtIxP+I<5Fs4-tkEqR0!VXsP+7%4FFDY#I)enqm`NAV=7?^tTa*wDf zVCE`bH-SkgBWj+X$<6Gy5NTZKA7ft=a|p_dzZW_WZZ@QORveM~xqhAAh%_l<^;j!w z3?g+8`E}~7$c>0(UiLGOSdo7tl3L_vzO*9Ili?Mp`}T;G1>Acgk_vboiAX%4JPMKY zlYX!Bt;h|OCHn+w`bVwE8;B&I^6PwQMSe#l_OzebW@z(B4@44yzBmk#WT1qnAkz4% zU*{as3AkT_NakOD=03`Lz#nWeO;YEnV6|dW@ ztoevk21f5Yh@_M@{L#va4a52z81p?4X;5^I3S_n9c_)J7bhw-Kkk&CeYuLwhFf(QC zEwFO{GhbPI8^M@Wl)MJR$kzG}%q;P8uk&q_c$JRgwKo{E(iZj_1ZKA4^>;9hiq|wS zW;HJCbvGD#FN`@ayX*BLnB|Jsr(n#gUf3%-9IrZ4ymkh&Qt|2s#+)4rdsTy3pm<#Z zX0_rq2aGw(kXNO1Y`g-7-oF#phW`OWFTD@jZ)|oNpT7!wbpx|l@j4Vt8^tRL#+(@o zd)0wis(9T2rlaEZ0vL17E$sC4`S2dV2#p@z4 zW>-+y>uxZs6t6{K`YK-EfHAv^!d{zKoA*G4jl)tf0~N0UV9YM1u-8a1>y&y;1v6Oj zx(kfi?U0vyer3QE<90+?y*>t$RJ_&^liS-A_S$}=dB0Vd*M4BeDqdA!%nq%v*STOi zDD}D(%w)wY1IFzA3VVGFrjz2e9?Vq5tJ5gnRTlQz9}K;>E36Gq0#mPeO$KB3tK?Pf zTzhAN=`LRGyWdZNnWcDr0LJWl$&20tW#9Yy4Gg{CDy&|eN8=d{#p_@&W^Y{Bs~SwD z;&nNgd5TvWjM+aI_Ie9UmE!dyn2h4Jbq(*93w!kfL+^nKYr`rqixsbP!I*tGdAY~N zEHE|VW-Uc&6@mdRJo#NH`@0jnGn(MeC*t(8tFsZ=x>G_D%g}fGmRPL~{o<=10 zp#Pfj9b)eHNB(O?Hai_H7P#(?Ba(j6pVgNbr98u}tbZU<`I2AfCSqRjN9I|PHxVfd zWPMFcpcX}An@2h!l6=Ci+zXKgrOZRDtXf1G7x{IrMT9=L$J|+>QRj6dua*C@vX&td z3tYedfJj;?&o<+lXO$t63EbcKD@7EY@mAI}M4AFEf0q?`7Ll?C{dIp2k$T1JS1YUi zc#OJ05AKafL}|n0t*kQ#?K>uCT>OgAQB5O z$61l_6iNGaF0&%D5y=FY=d8#Fh-3p^KOs^Vh-{f^9@zzv?8AQdgRRI(h-5^kCGT(W zv&mVxufB(CIgCt13C)^G>+=I(=NpAOs^YaD7_(0(>~#tldUsV=y)FbZUGcgXjM+;R_Id@(V8v@C zn3;;#=6Ej7>^BN~?G7fTc>NX3Y{lzzFlJ9eUhc6m9Spt7G^`CD0+Uv}8o`*oP2qZd z2WF1q)%I-MUsb&J24nU=g}sgevrzG>1+z%;x)F@oBNg`g7Z`fgVptn~3}&g~)oL=v z;p4QsATK)S+ULQpVAhG3dyP5_Ojhw44aV%p$O{_=hu6hmBDjxj>g8UeW`kL!c)bY5 z?CZ!2AFb)|S^=g+@!IqpteJ{eDHyXqB(EFbWw+50#E6%BZ*w}B;tt_^n=8SXeP-c$ zJp_hcwP@N99p|WfBb7(-`T>mDuacMhGdkLzi@k*6RRN}x;&mbzvlAvST%I_}JPAx+ z@p6xi8DL5kugAcc9W{CF3NQP38%%%kvip-VR)Z;5ytY1%cjkrLuma3L@p9Me1TYE3 z>ufL)?4`_H4wjjBz*h+qFZk({w}WY%$vVMT!L!a2!ayh2e6JuRcs4$#$CL#&ktuQ5|EP7-P z&c9w5&Uy@y2JylTCEvkWi-qB=PY|iZ9Vp`!_vLscTrUh~ZT%0NE2Y1J*C6awCJbjC zhDhWl_Ht(>h2gA8h-7c$tZpcw-5T}6aMs<3#4qD4x7RnqaMqsZLtDw3APi?chDcJ$ zdPf+}`W}&llC|{(%y8Deh*Vz8_3Gm6ucL+GtPzMbP2(&Yy>=U3APi?+k4OR_^=MHv zj-TGauQz=LOlmeO2Uj*832zF+${!-q*btuetuUPR3nDRGu~XUc34~r@@QA&(s$+(; zIwR76yGtgkz|0kfvkpWgEo%#&s`DM}b(}DqH3E?)++i_Z!FOzM*4e^v*2Rd_io4h+v3ob@^)Nm(V_^;#heXZ?gonY6sSUakMh3}O1-x5^;Sg2#yP@p))k0kB+Kn}moS|5I3fwDS8!*=z5JRmob^5; zP2%M~$9*jfXZ?goN_u%0)QcUwN1I*93}>}Rq*6-g9#N&ja8_?b8pR85!0{dIdZaL% zbrK>?l2wZw&yTZG!f@6<5h=TpXG#yBQ$%WbgD{+RHzM_OI4ih6WUnWM;j9-)=i2bB z4}{^YZxD$qZ5X+T8O~~pNDB9b!`7&-!f;kkM9Soh@3kK_3)ky!!f@7TL^9&_x{vj; zE)a&Zu0f<;)~Mk17kk|&3}-!!NS%0I z&jfB~#f9OleG!Svy5X+ZAYnLb7$QmWa@Xr@VL0nDM9ReLaIRABU#{2f!f@8Zh}7em zGcz_OIP3M6Fr4)*A~6{o?s~Pwj=(USwI?E#;^nT_AYnLbG$Qo8ohc!$hjz(%U)jz!&!eI(jZxnBg;FZb5>{U?hV6P z6^PJtD#okYSDT2`>u6y(Yd9iJl65_@=st@%*lUU~oOKN%^|+63yy}44^?Fbk&Uz7% z$}2d_JyTW)!&!eIl9qAkwFH%sOW5UdW;p9WL^6_vFD~&NoHa}s&N>f~WT1pz8fV=q z3}-!sNJ`22NEpug4Usy@qWfCj!Crgd?}p*5;}A(mme*I5%UKhI;jAkVDVxqMe*sv& z#`3b#!f@7`h%{l9G`&2^=ip`iC=6%)1wM&;IV*TyluOt}7|z-gk%qg%vknl3vkoJj zyE%(q8%AX{2Ya0?3}>BAI(LL;{Zkmux(1P?)GH1X+v`4IIO}OdGEy&h*4x5x))$DR zFg{GnyJt$FhnBK8t$yg!f@6V6hYsc64E%NN9N#`PYc6Y zZz2+ttgV6DS*wNNtoB!7-I&8(w9eaEU4`MSy%32hSqBQkSpz6?JA0i1BX5pzy@m_J zS(6ZHkePCrvxL_O!&&ztl9fAM?$&rl7|wbfk$U`3ZD2m5-foRgh2gC45J{qC!?KF5 zW`?u=f=Cm_qRHCdS+8!wa8^%568CYIyT1+*hO>@Dq*2B^ed~%{uTzBKtTBi*-N;_} zU@J$~`NDA4m58LJUbF|Wy&8n!tOpUPlM?r8*STYi8roOKQ&O_DXpS;Be3aMo9d)Z^T2yrwuy*!mh~ zIBOR~>Sl1(&Q7lbgyF0s5owTK?&tJ6O&HFah)71f++*WGVL0nkL}Isc36F7l{VEJ+ zZHapTshc?~_zD4DHwFpASr;P`xt_DSI9nql3}^j>NKEEecW2fn*D=FcZ7Cw7H;F7R zm-lF2VL0m;MC#yYdbtGu*z4gKVL0nNM4Dvnb)T2-5Qej!M*a8?wmhT*Iu5lP5Qp;wF9>&7TyIO{w_%J9GOa$iYZCk$uZO%d^O zx8bwGaMoLh)ZfNlhd4{PQW(zqg>+=+;J!=T@djo%t0y9~uQm0Wt{sjq=as-&9Toi3}i|R&_}`Rpq%-RnVK{3zB4v{0-p`*U z3};=8NUDLoPJ|b^nuAB=t-^5D!-zCWYYYQ!XFVqjXT3@~a@M;YSyW1Mu-7NTaMpK- z)Lq6Ubgxlu@T{z1IIAln^)f5tFtJNGKp4&%iAYke^#(YzCJVz^7bB99s~dOLOkp_d zZbZ`Jb%@jJIbk^KZA4;sa%;G=z7>YEqS!Um;~Yk9P!yetpWNQwqwR#@tUVFQ%9+T$ zZX6^GXB|m8a-HIhcbJOnnZj_^HHg$HSx*YXS??i|iqfarQoXLgPw(Ch*RaDa%y8C` zh}5^@tn-nzDgHMHXI&x;XFZKbM6xadZfC6#hO_pZg%O3jrKW`EAd4NmM>B-ste+9d z$`$?2$fA66aQ=RnNrvI9Nr=?R-2->llfrP;kBB6uaS0!QiM`J6hclI7IO`llBKL3> zJ%ix&G?#FOFr0NCB1sv&?yQBvaMt^XREig^QMT8Ah2gCAh@{2Koz)Ik;fCR?E{J5# zIBRc2>M_Sm7Jc@bUBbT#!&$=+NlVtL&ap8?7|yzmbfkm_Ba6%BJ$g_W z&U&77u#TG&y07S4VRRdYvkpY0QL=V**6Vy>IO{1y5|Tw%zIF+J5r(t&#mJ3Fz1+`b zpCt@uJ%&iVc)7FI2*X+XV&uj(FJUs>9DNs!f@8Xh{R+CaF=kbFr0NAA}O@2@p5NngyF3JAd(g@_qwqe z{%#n~>Vim2TEm@nh%lUWG9rybxPmvk{3u z=a1ZhNUE2)1K0d}B8t$%bUY6xDU7$DrN1%rDVVwtrX}BfM&(+K@>F6;q4Rv9*P*q+ z?tV}QbM|Zgy-U10bOSS3(di4OO3@iijG}Wom}*7mLNG%WompT~ip~>Yl8Vk7V5WrV z@VoqCaUMU9(!{flFQG%9U}^dyIDWXDTiuUO&kOM)(H+5zRdo7+nW5;^fTXq9DEhbaz!UL7w-&GbgICtRCF4^)GInKf?2KTd6Bsh>H%h;qH`#iw4!qon8Aup3d}r3=VCBPMdxNP^vQ2w^?C%%SVd@t2r#o0oylMpD>_$$nWO03 z1Ex{Yc@E4xMQ0h9rHan?U^0qM>oh(YM$w6bS*+;v0<&Dv8Ax7=&JZwJ(Q)q+#(`O( z=+uE(DLU@+`wd{46rH(XRw+8qgITBOyh~o9qN(0p2NVz6`d+D#ds5wS%2I*DKOm?ooQg`)BM8LvD?7(QFP{ki77g-g6Xg5 zd<>?8qO%@MrJ~ab+hO|TKvOSlDtrg;Gb_LhRdkL9(_M7j{XQB@jiOTrhCcBxtiNW0 zsa15+VETv-J-g%`T(6hG)G0d4!Soj$_bd0-fSIo7#2z!B!WTAv_5d?e(diGSO3LFN z&!>Qyt>~NuhCZn;tUOnONh>DG7Jhy_0DLMPcWs5P8FE>qT_C# z^TCuWI-T;#o9d~)Y2a{5CI?Okp=4aa3z0U6qW{RToS1|NRePKGI!Aw(hrh=hQ;S1Bb z3(O2f=LInIX;DVU-S5l6G$=Z2z;sk}+C7D9PerE(m{QSkxAT!;<|{fiV9G_u-S3x! zS*YmD1w)_CWZK8A^Cp-^Mdt@FeHERp|AlJ@MW+v#grajYn3amo`C#aipu*~P7ns$G z&LS`a6`i$UA|1om`O>GcwkSFS!L(6yYQWH^PMLbS*Nv;dbX0WafvFN5_c(kXOgBa6 zcQDnW<1SCz1=x!!I&m;#6`h`7`YJkyf}u~83TvN}zzkG$QedViI+ubOtmxbZW~!p| zB$%Y4(+Gw>Q7WunUx68`=(KtUYo_S9=lfn@CM!BsU}lPryWb~(nX2ea2h*VF+ykaw z(aC_BBRcMSeF6MYG5FJ6onw$66~lU8)f!Ne4uL15@L1EyZ?@iQ4rCq-vA zm<6KaZs#Y#lqx!}fmx{NtN>H4===_5vFNz#^|zOC&8X-!fT7ngg!TIZFoP7GWnh*m zI^Tn-Qgm9sf-x^T?s|0tQ?2M61ZIWkxcln_Feyc6JeXCY<1WutV5TTK4}obC9d~(_ zfSIP~tO2uDblmI4mWyyLqv&)4Q;g^AOuxHz4g}Mn=$rs1COYo+`8$}oiq839I*5+D zJU4-vujtGJ6IXOz2eVMo`4UWb(Q(&n%U3aX6rFM~^cs(_`85d4az&>aOdrv4m!}@g zN=0V@7<#QpSb5$Avs%&l3`~E~arf6RU?Mw&uk*3ju!j^K_q^B*OdCb#ATU*;<8Gh9 zU^*%~e+M&Eblm&8i@^aS*qx?UyMDZqSFJ+az$qVn0iGg35H%PV(R7YuUas(6rE{c zRw_CVgPEh~ybETPqO%^%JVmG5>o}i^j{6fHP6LxsbQ-{P!gHFYeY!d4#d0u<6`hW6 zV6P=QrB0o}V3sL5^eUX8dX zqv)i-Ocfn>y`BV9f{#0(QCjH!&+lOBMaNy9?cc&)Lec33hF%L1);`CAi7Pte!89m3 zQ^9msbZ!PSN6|@x>7(ep42E7)5mv8{!Sq*j)_|F>=(JygbGM>X1}3BE90g{mqVsn! z^xBNDdR-2tM$x$+OrxUn8kkx|=W8&_M8`dzd%lhPKZ?#|Fe^mIJ)W-vGhNYn2n@Z( zBdmR11v698SpjCX=(yLh$Wq+@QFJ+bY2G2M|9lh(~@_v2T*kW3Z}2GKD>|Lt!?hikR`^F3)T*F-2!3n4yYJ#WIXlMdv~=Nzrll z*Lz?}6`k(yV~tXD4hK`N=p@0=YgfYN*STO4ip~r$lNFs8zzkA!n!wa4Iy-)VK2>xE zfuYyHgw<;tm}*7mDlqkm&ck3*icTY#nWEz!hwVPZ9!b#|3}%+1b0e5(ip~dM%=;O6 zkK|p)VcV2DS}n((q<|MQdxDu!z>Ar|V9Yxu3wuokGh6X`oXVqk?GlefGBBoV(V{5L zFS}k}LMQu>dFN)4{b%GvB5giGpW=1@D0%*UndOMY1Cb$!RAPVQF|Q)h5Mb7j&eOzD zd2UCs?Dv~@`Yg_nE8s=I51|+lh;u&u{7(b{yS+s3?{Opdxyqet-s{;hrI4X*!xT#X2yb{SGbvabwSu`LuTFt(?;>y=Rdr% zk=F#L*AOuDsx#vicY0j}rlaCD7mQgm$;&P;mHRC)wc-`r70}=5_!&$$#jEp5=;u~r z@|uGzDt++i4~AZKX6hBZBhBPkFlCC@3}SNYJb96tUAGs(OcO76y?zAKSMlol6`w)K zi#~nPu2&_P>5A9+USwO8 zB6AT*&hs;`Sdq^VNj%|a)>DMboGZ`P-!zZxg-9geKER3$M+%e}Il4<;Gn#XE<}uJD0$ zQFI^A!1rhgbj;Ww<~97quG^1b=yjE*?(Xtz{VkrG2q_O)_6B3dSmC-?ftf8{!RL3l z*yn}BZ_FpY{=CuEU{;B@RL`2HqN^{ZdX78j( zfcXxQbik|A_st_mAX0a>Q8x4X0z?vl$TNt<1Ccd|q)Pl(QhWS>eP+O`3Xz6DV@4T_?rsEaqwc#r;+mGu@Pv49R;SH_n3+vh7V$v_D^{fH6;1*ZeKE-iqw78d(8mKSZ*D$O(wV13fquk){B1CnB*xnHv#F z{l(w%zadh00JkB{W$)lN-03HbsNT%bx?$=zPE#=SWBKy`Mgu#mCLgQZsxA^8YtHm_!3i; z+01uv1@4pF4~AZ69(KS$c_e+ zRlF_&vsm$(55}x)h1>8uF!UPxur}Q77qqkDH4KbdGs&yn=J=vPs}=7Dvr_R|17?Nd zb?C3W_L3KU0-@cG*MnIlUhZ?;S74eHuLFPMHN0?trNFEfFKlCkLV9eQp zyu8ml_v>_6hvy~~uVcWJ>=b@gdleXS-r+X%yO_sIz|i|0!uECBuE%rGiq}vu=8Q&O zxYgh|ZUIw_is*ABm99OlkMh5PGxF!cV5Ft2(r-4(BYgE41e@**{R9R2~O zjp9}Q2cBzFyvBer=l8;1v%tg@uSPKa6|Z8PuguPYyyz3Et>rngGh+1Kldv{C1Wcvk zl>}pU7vx2s;%Lr&{vmQcn2zG*p3Ap_8LD{E9XzvdA+N%B@aVlTre1C@x`S7vcr8GA z%#Mh>>~TT$`w2{`c)8b&y`!xnwTjmmFlMhsUPGX4Yuyfp-kW3U6$fLN>0K~&ir1F- z#AvgNBd;%@gQdRNaWt4g;OBv_Ixm5t_qmuh?1HdeukXRkR=heFx61En$;;LtzeB*#dryp) z-Jisa0+Uv}t^i~9#^gn6w%@~G<|tlE!7Na`egR{4-Q-1c$M)*9Nvp_Q#VY}3k>XVi z#_Zk;drbpF@4E?W!w11ERlJsfG1mp;wKFxnb!@t6tH?a@a<3Z)fXOOeDKO@WgS_JK zvHSi$F!VkkQ!lsI=U`Tac=Z@jd&Y!`kw~&1eBe^3zdCQ$%DYah@Qxkq({e2vi5$LV^T_px zG`!+xzOW({Tfr;sXD$pxTJnmOI_yojn_i~TayTOPtnAXZRb-*eO80YHwP4nU%u4cl z1&kRRg}rvbJra7yoLK?fUMVoe@$jpFmq;f!#>ne9xRYY==!p9t>lClCU}EubuM8M7 zRttM=+YURu?ZfMJ2AEEY*DGMmm@n+Lefw6qcb|o|;dn5miq{KZ%-kvLwRH#7U8&a? zFy)HZGhoadEbP@5Plt|GyiNm?P`n-oW9D*Uuh!eN%Ds~-tPPW31}R=ofH7-AVXrpZ zVn?LZYXq1o#p_>S%-TX;!SCORo;w&Rx_FN}yIGE~q;W6K1)R?g&!S%zd_kaH* z5*ZyGJz~VT;bX@47(wZBJPw@%Zq(=2Ovf1{)uSxO#_%(Dw#xnX3bN`rD;Iemkz@tx zgx{K<(I{`&Ffzx3xAR`PtTo7r~A zdy9yt9JSl9$7CZ!?@%-22e%rU9X(QpNyWLHyMYLv&AFYAly)9Jymn&k@CmhEL-Y9} zo~t{xPctL@%JqVkZ&wiHxL(vFxfYAsR~%fPGo?JWV<%3Wl=4brG+S+lmgl~3l!vIl zfJrcuON&!v->_buTs;iklkJyh(C>(xi+ijRA)(&T$%wMuK6inkUhxiYAF8|AHF~(s@(50;vxOs@7TfJss{C6#PxEGL&NmTgfSD$7;D&@ zTXi4`+^p_7o&H0l4Rc=2>SdTiq~!}TgN7^%l*gqr=#cqg42D#lV79$DPwiSnDJw3M@}B;jaD8Tjk(c6Uaac`&=gNGj7cI(Ps~<896pJa>B$ORPO)1_HnG4`SQ$`@}wq? zoK$_rUK2)+J!6E|XZN06tR$XEgk4&IPqKBZo~KIbvds zM2M*c)9{Y}4007B$pCW`B6Sr!n`n%BLxxrkI$i@)uP{G@NrfIRtZcMa1`l4@=Ep-;wtO$s`%lfz0aLlQW&rX+i z9yh|jagf=a{m_i!KezfhW^R5*ltn2_z3`yf!R2{V%7dkD*r-&`GOy$D>x7XLN7kD1 z;40hE?|CF5jH4E2#`_Dvy^}zYMuD@Yf2J1sSx_mx<7kcizOGFd?j7oxV41iz-jmh< z5_uG(&O3P2HT{X+Ng(ad*URr>{J1>dN_kS~h!MVBrr};j2~Bz2y+hRdVB*XDvuPzF zsX$~s)$}7jv;7X3xq-+&h-3nh!w^Y)?9V!$vI3C_h{Uk5H+O05HvAGD(QJ>M-}5I> zcC8JYz!V(e`LRLon%8D-M;RMqp@;Ai#7Fq>;t(%HxRWB$>G%&)LEB)Na(%R}!_D2m>g zcL@ITTArcjk&B|V`q^Xp{X7%PF?R(8^1rRfGjyd~6s6TTsKb4+we-cG$)|OzwWCD-YA}cQ|#Z4XNc!8^-a-E;x-1 z8WCn}Q2PY0ml4SI7xj|qui=&mx8VS3!%5@M9y7jruZbgTe9aj79$uymI0E7MACuC!H8r6k)sf43`B+@k_|-0A<`6xT!~2JQ@{IcL}G!+3y35F zk@pd)3`Cj`Nd_XDc82@se&x=H#8>zu-4Tg=;g1}SNM#^$G9vYX$V5ca65+XQ+L^{` zm(3!P_7VTFA!9Wb)z?G%l#ESaV7|-P?}Y1%{JC;!7d}^_%8~s75WlJ_*%KN$osz)c z`4^fO_h1m3dGWW-k;p~-C;6Aw!^iQPnHRU%CvW`iVrpj`?eKq5^f@O(bEgu24_kj| z?#u>b=1yBQ0j)B@gVrconamnR^UFSHJ;V!{^7HF?JhBg3$0*yZV~wc5t^tVW;CPvX zBgaj`#@j#tDB*e-7kc&KnNIVc(gh)1@)hcqv_z@%N z)}M@@T-HZmItH@7LL~7uk9i)wri9cxoiQNL(Y|BjMsM7wU>@>5oIcCKjNWcGlOMe` zJM-wJ^_0e6@Su_T6RxMt$lM!>=L7-#MkBKlMrLH5K?B`7Xk^lOG$XSonBY!^5@=-B z;oq>4*=k2K!fDZiECVuKVRu_er>j8+I11gT{=n9feU9iSRFVf1>V&p)&7_ zOfwGH@PE4QWm0#0PH^34|B1TOXS|qx&((cmzUm{W-1%Q3nLkl?!%*Fi|6i|r-#=0J z^q;8vJ;Azjx994f|0NQ~BrNm{3y*ojP~H3guh)IxpQ!tSKT-F`rS8*%}|Ja`qYk~VboMgA8Vmix+$a<8}CODy+<<-WjjZ`vq#`UbZ^O)FxS`#{V6Wy^i-M!D1Xz6ISoTJDvW zd!y%`pYJ<|%y(Yv;-bTA-AZqaNG*9NUN{aKmUv5Gm~NHD8$c@`(1 zz{u>?-5YiJ(Ne;rWrN%YTJCAfeWm4okmVlRDEC2@`+Up2$#So<+&gZRd!^-`vE0{M z?h`Ec_(r)8w%iw4?hzinJT`irYq^(hlzWxs-e|d(Snd~E?qwV0KGbqwX1T{K_sc!^ z{AzPX$ZEqYtv7dgrS;9P{M<=!Em~k#+3+V;TCdE!()!Aruls_Ky7Nlgg7qrz$o*A# z6|Kl}FBfKdCwXi{<7lbiVbyDc);jvW?7%8oQN`uq`Bh$T&G%WjxtGt%kCuTvS~kd? zZe0f5la~8T%l#h9y>g@6i!JvW%e}#JfA)XKy~J`)S?+Tz_m?gAs*S2UeJ^>i&i6 z<0fyEdne0%rsdvfxyL>C{7U;;$V$s+naQHVXPJcOm9Iq|*P;c^GSjhe=Ei);e%>oH zpJjYy&e#37kh=3~+=BHgU&ifR_zY6fz%5^x=^f{>5iNZ0Lh7|a>->D{EED7M$XR9} z*McLx4zgz4G#)J*^x7w0ZTg4~uQn0SE5F*LxfU(3+D!fvtBqG? zUTu73&ewh4kh=3~(}MLXPjNdJUP&tYaLX5FdN1a&5whAyy*6mR*Re9MBo)i>v}|Cv zQy$}5Fw<*I8)5RJWj>FV4RW7qxo0i+j+Q$;(Vs72-aWHX?$a#ym6m(laxbym7j2aL zbj!WTaxb;q+j;K!F@H$NnCJQK^&ro8UoYp|u#s!g0`tB4Pt13(%sk(HWzN_Agpj)P zd~d;em6vgU6`so#Yq^&TGrjA1Y(#eoUcllvt6m#4;|8-b&*h3mTpo^;N4ORo>9wkj z%(#5ZSBJDbk2+6>N1e|rKkBkAIO^zGS8Y%0m6=DKugv+npA%Ad?wuB_S9uBdSK$#= z(a61AnCV@`Vv@mkPA`#K(VEm*JewcO5yM^r_ITfQ*UyNt(1 z$lgZkwLzn1W4J#M*IS?+gkA!W|Dd~BoK8!h*amV2e;KErbF zxKZwlE%%t^KG1SM*K&_D?6c4FKPS*mr@;lDlRx!^j$*v- zbS3RK1MM#a+V2J0KN@IXt)%^ff%fME?RNw1<3Rfpm9!rO+V=wOHv{dzj3d~lE{x^Z zD`~$RXg?ij9|YPr1MSaL(*8|>_N72OE;F_z)jRSh-xg@UTuJ+8p#5l|{h2^J-NULa zPXoO}It!|_AH}J~VCbg^-wmF-mPb)O0?Ls;GN)%1(t@4<6dEQ`hU5_-V4e{6@_elY~0QA-ge`c9EEK7&EUE77aZXafbt=s{l`JM z`#H|@2~du}?uF%l6O?sPiqC;Uk*%oZ2frF$aybfJWJn0^2wiUn&ykn$8{{@YSr?Qc zD3=B0{h-_ylpm&CaDVmf0I6yGQ&9dpq3ahwx%c^;=QlyQ;Sf@;KLq6ig7O!jTz>`6 z^~%?yF1~qTR<==yHT6o>(K)EG&{^~<0m!Nz-D61!_U&8;? z`UXUpf7FN2zh}TR_-j^|?eTT*Nx3e3L!#VLN(6QXW{@JgUZ#1npY_b^ zppYxYN?|?omc<--HN$%5(otJGtB@xDS?$7%1zn=RBVR<;K@=%D)HYwxE2`8xU!~)_MX-{wkuNtrmW`OcbOP zc-{^Q#f5_BNl?}w;&S#txg{vy0m?l=`TL+Oy@BVtMLdG?zZ1_laGu`-WgsXo{|4~9 zk@LI;l*XGlWf_!Pg7O3?_l|L%9F+ApbIP}aa#K+L0m%`R9|Pr%p!^Cb_Z-ExFJ15C zhhK}v^$Z!?{R`XI5tnBFu@(u1I^3d$Qmxh^R00Oh8mSQ~0xWW(>V z5Zr&Q4R3%lD@NS`RyB8sV74~=k=I%qewou@|FAav%tN+Eqq%bUrT+#>aod!lti9*p zx!mMl_ibbiLHPh#Lr`v!WI_1^D0cX`$kUrQBW?g z@?8HCl!2i94k$MTtn#`l79T~Iy>$}K_p z8Bp#B%D)EXo}m00C`TUUwezYs!^Z^WAy94!%G*J?e1_+GCn$FWWgC>iS<7Qx+Ho!0IPe-I&y{LOt&y+SwE2+GMH#^A(I%)0sqD{24YK>LkA z`^N+AHv;W9D`}@|Pei#+90b~L1==?Q?ax=z{^w}-Qu`p#{(PYQu|WH+O4|P<(0)14 z{=q=|8w2exRMLJg(Ed!I{YIeuHG%fqm9)PYXn!Kmem&4mQ%ULbAFrhScLMFJf%bzy z`yT{5n0G2^zZ+;j9cUi}+J8CF{;5jZe>2d&6lmWIwEt|N{ca`gp9-`;6llL3X#ep* z`-_#d|6HJ*28SX7teg(CKOJblS4sQrK>KHcUA(10`xAlo&s5U>Q-St-fp$!gr8Q2j z1lk*G)Kf3o$9*i&emBtmV4(dKf%XR~X}=X{|5Tv;NTB@>f_?KNm9+mzp#4su{eeLH zuLas4tfc+No7?KDIYt>EOx1MNpEY5!25{Z^p;MYxmHek0KSP$lgj2(;e}w0|nl zz8z>^s-*o!p#6h^b{Y-Jvabi)Pgm0Z{y_VUK>No7?QaXTuU69jT%i5AK>O`L`|ASj zPgK(Woq_i2f%X>y?GFUn*DGni9%w%ZwBHJ}|Cu|jVP_N1RMP$}f%ZY5{rN!qZwJ~h zSJFNXv|kRie=yMg6M^=ILG%_Vqyf zUm)z8$ZzNGm9$?7v>yqyKM`pE4}tcZm9#$*Xn!Ekz8Yx1TWB}u-nYKeo_p6fSoYZM zog?$(mO>a`f3`7G^U#XWyUofA{$u{ty=wHpSKC!17{U8zSB*aT2D@s6sjI*9XzKmQ zV^v1f*RfG%{KwqJ_Tm?Kl$GEvrjs8izFRliAFQPPUa)Sn8fZVjx}89Ha)A91LowQq zR?_|_f%Yc??bieC?+dg)R7v}10`2R8_U8ia?+>&uRnmSd(9XV)H8(*8U(ud?O`!dB zCG8&zv_BA(eKjciN}zqUlJMi1C=a*KQ&+AXQ$YCf&5Vt?`f?1lUHXkao8p{AwGKKA*A$ z|L82lr=~B7Un1`+2b~b9bds8*f_kic9 zkn@i~xq+?2mpeH>4GNt^rFf`w{UPNN_WArKcDqE`UkeI7M?m$jbDacb6~}c7$r&iN zRcfAnQ0|_#Jfrb29}fFNeP7B^Bj>xo^C_YIzXoOL53R0^e7trw?~U!cpO*X~@SHY1 zzNY*WP}cu|a*^cye1E@xHE-y<8mz8QfQSBJ0A{rRIw<$dy}LT?GbCBydG+$k8ZSCs z@WXD_YBcOic`qZ+>}ESS3+ifzbi4t%jtI-Y1C&)fp-@=tDNv4@@sHNt0>#c5HRant zu`_W^`94sd5q0rVPzIvDeg+i#wS~_0Nl=bF!nOZ4C@-SH7M}1~P*w$=S049U%GZEm zcYL(uw}CPcZRcH}*i~Z9vjxf#SEsu)ym5n6weA>$3Q9Slyt0ua#YqkBK5~z zEoXSAfes~;p2DNP3AwJnmD~9c6#GW1*8Y8}{)B&d-B#NBHw^ zfwC$r|HUT}{Y2|t2IY=uDNli7_kgtIT~MA8_PGwqs*7X$tuEd@MC=u1|9vHN}h0-3H@t9xhw4RMo{d|tVVbml-rM5 z@1iL=gK|XF`};tl zf4Zcb-O(e|=InmAPWu3O?jGluKSmT$_MZdgw&3|4P?ki!e-;$GdO*E7-Z05BrM>7K zzUZx5XF)j%%5$!y#Qt_r>`lCyy9de*5f8r;l*=O5he5I52I^cN17%hC;U_`4Eqvp5 zL3vSF?9V_sDth7n;%%_1(DfiF_8n)f>mlM1x}E^#sEaLBu4h5n6S{UlkuCRIKzTiQ zNvf9o0Z?uW5B~{J?g%+Q4~o5gNay;Gpge>qQF!<(zY!iKYH$gZ>rQgpMB`h+#~uOC z?KgAZI1kD?Bx8VK5blC-LHSLTsjyfNl!k~u&w+AJ*zkV@-k>cVIN=xU5H$=Jq6ch~h zSgzNu!eWB*R#4VmB%u+}-muZQEoM^P@}tEWM^DeQ9|l!idK2g*@lu|rU9 zh;rQkusR?xmn%Sx}E{$t|-@aP)-Z4dp{`lB#+MZVNjkEE%#?Y z`515&ZSW64S$En|r)o&8?>e&xUvU;A5RvNyD7RdTqmn)e%0QHT89)o1j$9)+nM@8g61i-JLJtrA{xIKY=^uB|&&%XuF^P+ZM{x~AGpu8HC z>!Mt51!c)uo;=|)C^tn6?}Bn!`08~~jtXmhKPdNv4L<_Psu=(LGvaZ0P|J7;8*3N8 zZ`Ybg`>%rMCjML0>E}HG-w?j~<)GXaJ^mX&`F!Lmtoja6?8`MUH~tMkv8&CRavc=C zj%{uDJwy>6^&_Cz6K*=!PlB@aD6i9hNx59@kgiXIau3!pfrR(KMTrj=NoFp41L_ET#U+SA;pZk35k|`9l36Z+W7~d9Cc$q;`|9vZVG?? zWl)|Fczzd@yQ{YB@I%#3_4_;4hJOK`b>U;L`>#L|a+;tNYp|sK9iV(rSpFGM9uWT1 z0cGIgq3YjT4XhztUyd3!o@6AAY!IhK{ek;ilJ=)&`WlxmrBcNOt zcK$I?><*pwgr5WDvXFci6nh?0^ZY(2&xmrp;sWBKDEn7}a?AN4A$$iY(&yg^ioLB) zOa42c?1{eMCh>?;d<+y>JHGLYKWEg z*FFhrxLj0Dkzu5$l>J|(JICK>nlNdP-y=;Q0^G18sU?m+ykYEKRL;H#I{@{HNF*;8)En5 ze*)zRf%!Hl&j|Z`0+h?Hq&wG!opIi1ED4@p2hTm>8!vkbt=r`y?XLml0pVkB0Ofh1 zeH9e?SG0>~K)ER-=b+pWQR^_s^*x|03CTZ5xsG#d{5UA~{dcYPUr;V+FY4>pLAfLP z%FlxGW#B37{8!fD;i7h42a5FP6;SS>mh}z`mGE&;J|p^z%b*+)eag3!oK=qb2Z`3+cjmE0- z1nc3K!LuYrgF{g0UxDYtL=koRKT|HXGi&>le*ww|g;no>a$VHme*on!B$Ir#2HVYh zjfQ@m&B}T8B}f*!UJuF**AHUZb}-0?4g0c~#(IKsi5~4SP*z22`X*3riniPbh5i*K z{b^7J0`sRqx#cL-pVG|trf5xHx`7ra`oXUU<%k&nY=ZKDYhM%(N6`F`kkbXv!0`~W zZzIXB28r_bL3uy^Tln)YfFiy3_d$6L$uATFMDfZVQiE1LcP3(Y8QY z7wvQc%7Y@;`$1V1l#de6m-6+f+n_uoczz9()57OJ3rfS)JC*%a??S{DJZ}W$i13!T zf^t{%Dd$0XP+)!rlm~?62cX;(x;_BPlCb;>pd57;+ZpCLVR}Kx`E~HDgQ_Fa@8Q?6 z?R;ypo3*fuy_=8h&rWZrZ~ty>Z4L9Q_E)#l%kAGgLwb+XNPz3vKZz&fzx(Yju7PsW zhrM0>TW!RgyLfIBOTB|(A48_`xYgdvx6Mb%uRk`-cLw9(u`KJg#+|DqwKW`11{qeM zugqiuGrAW14==!G$Vy43<= z^8z>apEh(s!i;nlb{ju-Vds39>6+2R?c66n zd!czU+wTKef4J70?61T0>&>Mno_q>b@zkX(TR-u{*)#ahsc~!f(%PBLgGPotOYiP% z=bQa^jdxD3pTE|?&aoAeZRb}zZMYB7wmYLiw{@7c`@LRHmosVd?qHJb^oKUt7Cd|Q zBEV$2)RRePyT6l-&NYvpJNwMz=N@ZO{=?>4vzcX-n00!i@fx97KJoaw&YjK9u04J3 z;^x|=#~wMemKpq3^!wh2+M+{dug{*{?yg@wZ0OIui=XOMT=$d8c#=xc+J4UjX57x; zdh6#m#t&0XK=n?4qnWL*Usd{>TdfgpDciwpsomcO^VL>&lJBiIPh{`vUF%>9b*A4_ zN8AYQX<93jtl72BcrPO>`Q8_2OqwQ9<2O+3k zLLzakU)5D~YS0=26=M$ZkgiZ3lwWKvWm)^+ptaSx+Pts~lkXlJWa!M`V6ARve3*6i z2Wy?q;d=9wE#sQS8S1gskUhJ3PKa(koRKHwo!wqh&b4y(6N_tip6H2_>o1oqfmQQ8b)qJ?s$8f}{aKMUANZKM|bJwj$3j4~o=XZBa|!)9iQoR?Qc1sr=Q&fPfF4Jrh#rS2 zWQl{hl9i>~$|_4|;ypJNqWv^3)=w)$MxC6?jWaOeaR#O#Xe=f)sWuiQa>;%o%^!~I zF`pY}X6P-fSF=n=LNlgSX>DbO=<8w1+R?|^@She389hW%@XahU60 zZm?Jb1ZUtn%H!HYEy8rgsSc;aL>By19#f4|d6+6=V%uraq{fiAAW;!Yw5uGR(-C=I zN2E_t{NPd6YZP-En#0gMN}mY`x;vUfh3RHaG$kJtwha2=b)AHN z)In3gsav&LqGrZtmuZfpduBj+TJ#(7EJ3FnXH!V$!>|Ml;5^T#)N!Fi-R@^Qv|=!r zY;`;BY&2}I9ju?fx_wo`Mf{=_8Y2R0OruFxt-;JwI_iC)e=<<&OA7>bS`jANn%C(mYLX_} zZY74*Fga#=w42vLA87!iguw@mccqx^*lE0Kn7O>V!7bzC9=Sv7<5sSZsFcztk^yukg z#2ju`L$F@R#>u5a56fe}ii$psRy?UE=8VmiEbEN2LBE3)`e8PRv7jdc%g&_N9(Ve^ zIFDZd-rL8z5WROGF;i3v@aZu@yESg_QGZOE4(|!L^7pP?LRvsaN0+~M((3BeqW`49 z8tW&mA9AYKuY^gie#0ayZfEjGi%SzQar{g^-~6~k}PK~X_QK`tbMuB z&Z<7qwec{?0SJ?s2S&2z;h!(FkYOie^454s%n9$~#j07|oydn^GMgwfwXzMIqB2Pv#njD={K>eR8%Uq37s!X?~@5zAj)B@ zP^Zd)>FnGZPSdIOnJy#+56%Iit*gU)wi8SMRwgY4Az7^3+3z5psm`aOy_|>?EUH&U z=kp#~Z^4pB)d~#dI8=+b#Z#EDwEKfY%nX32Vh8ODNyI}}X(i*~LK5&iOcT1%2Nnr}emAe~24{GJJ3}r2gpK#)%BOTx)9^r`0Oj;vSNu z@qU&R{;Ny+$o(oQ*H~*wsnSl=Rth7nR)kdaQ?(&9(ozsEsdllC!{ND!^%Y#*6Ow?3 z<~=5EU;%rjqNM^UiHPH!snN#%ZBBXf(89_@(L81$jf`m&*KvL{CFS=@=_gSm&rPz~bi^oNA z+O9%eY;90nsoH0|+zD2PjOs1XW=_z5Vhdkc_Nw-XF1JHaVcPA4R9mxh*&T+({pdI@ ziK%J>lhFQG$}qtZY-Xpwf)%Wc zYBsRBQxKeNGiRt!f+Bwkij}sjhzb~N?i2*4+Pqa%0Ko*L;5dQ(FdLjIpm5n!FszI^ z?=!n-6(HE$DF{xQRp+W(_(lE{6sPxF2RNgjU<)oG35nYtuWFIgOoBtQc*Hz~6ZH8I ztGE>x8Cd>0P*j}RI~43wzQt{UZxi=$YUoNfrY|7yx?s&J2iid^z*kwF?!~>rs;-#RX|4c$xrN;@bE0<9NuAE?v@ed{ zDX*F}LHCKBA+9T_+5lZ{hoFM(oseonIhWmGSlo;&bW2ZFBiPJNe+3&@8P!Z+b2|i! zTVQZut>WPpl`}!}!-L6)?!!R^R74;oBp^ANzBwU9)PSY>l81$ox&nD3Z8M_Co?s0l zWX86x-FmDxm{?H9eJjnz!xc9p7Ap{`Nhs6lL4TkdamBG57m$DhpOZX^Z%A14XqV#7PSxr6*NKK5Y-y?ssuBLtC9qskm-5MP7oX)QSHh(o{b?6BCqx z%Z_^0W@Xg_G`^4;@KiUD1*0U?gQTK&+cTdyrJI1m1?rR&SH6%0Jc!2lbP>U>Gw$HJ z)A!-SaJr=!pDtE2(-e7WDB%E=5mDX*?Y1jOI3p)T)PW`8Jc0wGWh9_sj+lTakdlDN zm94VB2nh*DSg9&w@nqD2X3k*~#-cbMUa`}4uoqNzf6KSt-l%#myg~uBw)-Hpo`% zZ_Re472@zzIp1Qwr>}hDz)B&&;aGeKu`;^W8sHAHs^77&{0>D0Yn)KGrd2=ZXS1hZ zSW$PMRXu8GbEhEC?@)NR#8j|mC?^Hg3f;&}{X=zEWfIbn=+;O5Wd+md!Wa?hSnLp@ zG7=>q9fuxORYrmADHu)+Sp`?C7a^hsEJ;pcz|`O+tXLHtmP@F?E|nd{;7Ih8=5cks z|4wH(8so{pq^J^?m0}}bVv-Y;2&)rcLiF*`CC4FOU}Z;(2uiZqvhp~*jFIkeF;O*Q zOLI2~u7=pvloC^%Eh4E#yH$5Ji7Pd>ono=A*H3r1Qh7i? z@%21hto%q9x6)>Nc%puY>z3A2?yV}7=4_UXuvsg@LRx(Y$%ao=z5p#^LM5y|d{pMz z@Ht@?-^O^*Eq}_QeA9X}+g!>vo48XH&-R?4%dXVbqP2>v4`Zzeov`}wDf8*0Y3UYp z!Ysb>S}cFVL|ov0Zob10Yin0GGn8Uuyu7s2A6{z>x7`)A*|@b!@w`$%VRy;b1tq~Y zXO`y#admA?*#i|){eHztx>8EltfaA0)t;%QE1`7qVS>qM=H6fEjqPb;Vz79k=5i{~}#c;ty99d0~-DI?t+Y7)wXD7N0#5$cq= ztFoGrLpdp^nl+&c;JrQ0GzdcNgZGgJqe|v*#mZclX@p6Aq5GBrHM$mgcKyo zCdnqz0#b0O@}%Hk0#a}+mz~{8!8Su^3f|^Rfp><`6ugL@=S>(sof?LHK`FQpKYel4 zx`&9M6kKL_kr=h$yepZJk%GnyFp|(n87XM2Z7LqYwWB}2p1AmQ4foM&>sCckrOFMGHy6<4To+#}kr($9`j7^Z8DFQA(LmhquB(rjw(|79OQDPeh~%a5xtCZf_)b zVQXm(a{(H>)Uvq2<<*I@Su@H)UII!RZ>m|&ER*KwMOyKb%m%B zc`>?p1iL1A?D6zPFZ^`RB;)1i6kI}10v`HU$i6k01V{>Uh$?h1u4uR>n7`Iu+0>BZ z@Ko@C;6>>IRV~sSwhFciUzRSw)g#WKt58<|acEbYHONZA6}&WE7_9=bP@2P5r3$VUOX3oVoG0D0xp_ViAN|> zEEft(MCLtlonSM9=1EJyMxC~Mq$0&)QcwaStj6<&uf?N{7LbBKy@Q=lMfxG_6a@Aq z?UWkP+Zs47nzH(*_h3m#nmx?6XPQmy%i2j;*aO=sXxIzcX_j$?Nf70oh=rJQ3!EJD%43K#X(7u;;<}UAoql~Ly{oF;iyoW5J-v;hh*{6;NI@E z!%bR10s{H2ctXWUK?#WLcPi-%KAxl+FeNYjSV-yXKecQIv4_hOth3l7+(~PAi>kVB zrBYAMBs8DJ3Z}FrlubNDo`71&Nx)O`40!^w5{U^I?NbJc$5FYMBs9efEXqRwI$$K$9 zY3(W|F9DzJ?$q3ZECTIlayc?C#i;I2Rn#0q7qOsPff=a3QIud?3L8Zz=s3-0yRV1NHZ}^jNq_UFWV+ z%|>fNS?wTWR^y)jqI*hZ*M#6c*uZ{ESn{&_{V>8T2sK!N?r+3>kZA)gTd9Sx1Z1vd z6feD}*g7UI0iF8Lj=lJv0xgi0fXi;DV91|Xm*ypCEvOzuNgX09SyC^DBLb=OAuA%m zDiBdRP)QgTPZOJf*4jROFzZQ5z=Wcv!zqL$AhBh7DJpcP>>6;_68imz;~lOlM~T?O z@2)W<%5iuWKb6E^fOl}x#5gn+O66XXFZ!G$DJfXooAAyq6`(jFDM%tO!lz)0h)Y4o zUzks-HX$e-k#72|U#?Pp^aQ85@tXC_l_hyYmqa<~HWCA=%4kSR3KsTCIv?0oz#}Eq zfT<2AGN7!e8c?OX5i?XRb(iW$22ZLd`OlA&p%PuHL}W@W`Xa4oqy=^MeszDRmYC(^ zOn1Au#5!%6>WDtVWRH}ul-J>qQHe=5loD%k$GFHEQP$v$5~CJaBf?}?l=zZ8G4e!t z9qw2zHp!L|v9&nn6uEWdt-(bjXlwA(h}2|fEs>dI)9@wpIvloCYRy<{an}&66OkE`NAhaH2Pdwn zMwO&mFsY-FHK8)H>cf>d<6;%*#gD}oCUGPDBi(Mlo$YnD^C7O^TW_O@Cf=P_F4WmD z87UrktRE>8S|3ufsd~Y_So}*aeIc_xoK*O_aTYQy&h!V~*UuME(A#KTuhjamz7$9c znf2jBo5yRu{L18Xixx61&I-><$rmeTzF4jgt?2iuA1QyHII$(-Q5E~@MQw-@Y=pP0 z=R3@!-@AUqJhYl(gsLi2O4+>srL3qjp_B{yyEz@C9sbe(UpV~SkP@tgLMSc;9UgwJ z6J11H0y@8@&Kt+T7~p<5#ysj0N=LI8>}%D~5QU%=L>LFxgGdNUL8OXSmx2W(0XUFnXP*`3HD_Y- zQt+wQ7jTNZ7WagZLR1PW`(%3!s60_AsI0B{I^5z*GIkIu)=?{nu?0&+!^G5Ln;NRj z+1bcS!R3lq11?`y0xo;=K}pbME6|I3#!T4`cZHK+Cr6X5(RjF)x~stDI6RA&)fks!^-K;al#e(Dh@Z4s$xs2svCFMN-k`;8V zyr3_s((Kub2xSj%wYIYs?Mkg&+iQ*Sv=-=`tY2{%Znws**JsaeKF!ktUV3lE&%Z>^ zb&d0bF|x-sik;CAP_axB#p`5qWWn1rh1lR-8$Zcn74lRmoNt6lYZIaWsyLgE%8y^mGyz;x##{;C_sE9`PJvHkLC2Fhjpz$Fum?=8CteRxcigdI2-5tgKle_kFpUy>dZ$-K(Ck|xP+`V+@0*_z45U@ zYdAi(1cu#V|5|ISn`fAtc6z%??^dgQC2MWB1{jYwdKk539WziN497a7VN2!JpP^>$ zy%u5U_WM^RgHRWe45LC!?zQ{dsNkaJM}xfG!K}*| zl%$cl_glk5jvEs2Q`ZCeDO{?je6S$7blBMa?Hfk3gCjGTHK8>ewhpZ^HAx}qQ-g3d zM6H3m61CDBjR(X2Ksli1M>SIx@avk^)E(5HGLg2Jm%5#gI=g5+IW>{axIshnmeYry zyX|(jvxV`xBf6%cM>@wQy>919-o<)}3M}lm3J>hJiD27Z8YS5%q<`5+qJOziSIl*n zR{*WwYfpy5ya$KJB<%_wV;=U0Y_4{G5&mMF#&Thl%(b9wv-Hf7!)aoQN{gc&`ouJ4 zZr)?Xd~~i%YsCna>6lWC2%=fsC77mUi=!&Hl9?*85=`ff)xi`vXG8fjxwCP5hvt{d z+2a?Udi0SCS#~jNUTCi5`}uGePJ5UQ`u(n+FV5nLz&(yWbi9XdN_c4DpL%*-7-SCq zqMG;-r}Cy2t)$}^%Z9jk%L$OplcNONlv;>bc7-gyvNO!{we_naXa*IfSWm0fAB4lT zL!Y}aEdC;i=z^$VDqzxY1le{zP(80ET3LvkgB;@zbl^UV$`?(xE<|(sbD4+-LVsbV zjd@$Yix(otbi=Arx&jr&aAEx7VzJl8`vtSvPD5myg535EY}u@+$K`o4I*lw}d8AQq zEW5JJpCzVc3OesGXr^aorkJMk^2jML(=#JWOv^NArFv#&(nE!LL$7t$x%o|9&dnbw z_&jkq;xhAOi)ouHw#M|$mC=sOWG7c1X05^fZgENuhiz^hQ$Upk^r^T?Gfjh5nu*Z4 zLGZCDkzCd0T$~EWT%4wP(4c-w^e&C=rog4?OuW|xS_8+rM;nc!X-uR;9P1&4g6W*m zQbc7k<)vM-P+ZQ%m6mgn!ef}I566?iF*k0U+39OnSv;S1oW=8*9j`gYwyI9mq74>J z)WS^e%@dF5(UH&Ndw*1r#&2hwaYRG!(qzEE%z(9p;F;2k!0>Ak!0qN9Jr7w61Y5(z$6s~7IGMwOJQU! zqtr-NS~-J}Th35uC^5F}@ye@%>4?if1jeqD8^WsH37_WnZkxwxPdLKtCzu?xq2;*k z=reov@y)T??u{f7-4hn%D@~UrF>}^Ho}J8!4G-+z?ewv9NGojDusmw*Fr6v3kr_xb zID{mO9icAAVpC|%*^Du@QHff0U~aR7Vd$PY^=R77ifC8g)l;LGUxDsr2yXLB&#Mp~F;eP6o8GN!3+Js~JWAk-_QPG^#%>89bvo!kY6l4K`5+Ik%H z@`fT5c=&8%vV#tF?xKvx7DJd;O-^j!k)~Bi4t|)ckmqSsO|pO;)`~AVn%{~S4aoOB zuY%{`bp@J(cRmQxgww^!lFz{#g%E32(=1WWAGbz1|NL;KSS2ccie<|A4V-vLbRJle zY|CDfEM@yHNF+BvYQeKnQJNX2UaU=9> z4?Bh3e25iPg-GwRuo1A{m@<)gDvODeQ+aq9OH`==_X%wJX1)BHg}46L)vJ+3-V4p+ zI67Id5eow9394a6E;>Owva44zN zfYf$Ox4(;{hH5Vo=f-Vz6cPq$Hd(5!1-Ff}-QRCvE?SatnJ4R$2U6r z*h-;|-B9{*k*@MKT{S2~WjUKHRqJ%io&Br%aHorHwGyQ(l0oN2o6}V>!N$(i>?b@9 z<{ujyOPQRn zmvY3NTeDNQ%9p&+fw-{Y^=G;ppO;y6y7MxJDCh`#(N~#{Gln3}7||YQ3^mW}nbly! zE1BpE^`Rrtn@8}>)DuE$#yao_oG4!eLXrXGFQ{iCCAf`mmV( zQsx+hQsxi^9o*LL$j1+5Fs5)va7^Kj0GU2oiP(hBolF_u!~jjt5dr0_!^7!p>jc~} zFy*qR0pb1TY#;&mR3HI&1c);sXLiH0SRgCvDV`+;X@-^vE*IRzn6K1AQ`lp8rm%-t z%Ey=yFD_?};3#JfQ7lgzu||MQ<&R*Q${&Ff%fo zcu3e1K2r4U!OvdJ0VZr#iwX$rwWt6p0eyuy(+iZY5;e>PEQ?v&mJeLoNSWv&}?XRNHJ;XRO(*R(~ltDWugYdRA)R? zT9{hc%%yqTA1s$naRP&sm@wbwg&Ns&9QE)vtgc(bNH-+FL`IB)NLQ5`j^sMJh=$ zn0k^#R#hBDL>NytqBw~QVrzU#kannGxki)yA`(!Ix9FpOVY(ux~;G!I^AEF*E%E3A#SxGu>vr%8PlW+=3IuRzGs}F^Tsa$lJ z$_4wKL}3^zb&x6q2dPZ3SLY$McfD~H%#S{!&D|%R!bl`lFUU%l9}wV zIs*A6EL=wk3)3U3CD0K`=JF%ST(+o|PVWqRQeNTv42ZE8$faR}$qAN}?Q0iR_W0T1r^Bni3YK zhj&j=El~!pBg()ucs*29Nf{5nl*`4K+x+n|Mb+=w!1kLjl4 zHLS94X1KTv*R8hBwQ=$D@)ABAxJLJw*n1JPackG!zG7z5e1fKKf5jTTUXCpedC;LV zF|M^!0G?Uh@u+qSJm%I0J=hRSfo-0OCp1eEAgjm`^Q{p z@RE2rWRfU}7b$74E>b<}qI8qs$34mtuQ$ON&CTV;LR`7*fZNCq=&)^3C_lQD%NLv$ zyEmg|a=m~yMK0&Gayd=ll@*8TE>wC+yp&!{DhIR z;(cZ#-zN(N*oYmC`sSu68yU5y%On*{+)@#3IbJJr*;PPfVf11pOwv_Qi;J471tnMe znuumnpsM6}k_n)$L;@ZQfPX~ z5-pDyw-_i~OH=~aAOyIi_jQ98;92@!M1-nq!(0%`rtuIAVyD#2YfiIm(o{PNvjcj-#|B zj-yOTWIdRVt#xv#c%57(8?{MO_Ng_Y7)s?^31u2==QYhj(=}KLRs;O=RQ6;>-wo?X%8qSaPuYunAUHl`KM8rmeBi_tzd6^#;OeOBM;xOdab8l5)0*3klMy)IY4El8 z^7fTAI)q8nG{EtQoFB(GO$PI+B3_&+GM1%s2_(FW%Z11ER!yPLkvK1Iqlck8qxaCY zxOQd@fFa%G(v^b?iVv~mrJ5*Bk(A{*(c|C8*JuGhCo+DrIo?*lof~v?)zqv{Wc>J! zmR92ihw3Wh5i;@9p^^7VHnNQoo+r`oDxk2{^QWMI?G%g^z38<#3?^VI4ivXkg-V;6 zo3!Y2$T3TqR4xH8R-iWaaq}{+qtr9?5w1fJM9xoZskrZWd|0$lGt=Z$_ci#&2=CbD z1ANrMvSE3mKWy#h{05Sdid=f_!T!zkVrk?lbcD)z&EGB+E#QQV1MVm1InLX^`N7jq z4yBOdH|JWx&A>$%vA;OS$+joQ{pMUNZ6U|};vA>i9w0{Gd?(rhlKaVdR_Fk_3x4(& z=Qyc{+>WRC&ACqRw+_@{cE`slg0tPi!T8Sju;64A&Ur#Pj$?B_IZx+c%|=J{Cr?|( zBRV!w|IJfR>5go_)X zEO{1^!W0n+e!ZV8>OE$TvSfiFWD>?GOP(Qvn<5ku`a{T57$Ta+^`Ei>EkbT0h@?fi z59!(4fZtH3CkyVkLE&YeNaS-^73g86F;5bhIW~Op)sRHwPDYPlWN$f29iM% zM`t-O*BfCzhR0smNR5V}$Su=KbC2-MN?C4~=5kxy$043>^x?Wo(}LVIm!#YzpI(X4 zox9B+N%bY*3q`A+uFc7C-%=q=8Q%z-!RX7ye1In8JH>Fqf|3b-zK3ZVG0fFX_vFKL z)Pg+BWYo}yON3O&ea z^>Qw?AIi9j-<)gNM-6F3IXGvN(d{fJ%Go@vCTHd}OV*kkWL&1oJA;Sor4^@-Sl3}xmV?%wD9L&t`^~uAOhp;Y{o)*K zp2?=bjKfY(wav{mk)_*d)y7E9sy0T&WZC`A@)c8KCAs*?cozkimhPr)8zXPl zMw1)Z$IM39FP8fR9(IC5=q?T{?q|p|V|i&^t?THpWW>yuqoO9akhO?1%Ea_FS5!d8 z`(t>d2oV5wuq$uzB$n4sC~XGzn{#z~qkKqDokZ& z<&~ru?_6qNU|Uirae<6XuQk+MxvkDcGckQwLojw#f3Xy`{A?_ijaoZoHZ`JEO|mqV zNwB_A|evwgc)EY+}&|^)S!Z-&P7?b_M(zzs8DNH(O5pLdkwO&PGoKQ8@ zyQZWwDHdJf0tOlpB79R-T47~OOdilVmF91jY6ZDaYe3;Q=R!@=61n3le#f|s-&!Uv z>EXd-w5Ofcge5^?(ty=)sJ~c>^CRQN>^I|T9v|)D#m+0)nBF6|FUezP$|titszK0z za~D%gJDzq!lG0QrLC=Rw%e6mvIy)&!(=64@dAdHa05Y3BNgC(Y0wlMjF>V{gS!gk_ z-$#MCT`<`nOcF-*k96_uUAEW3)te~hdNBJeOD~s#)38&e@N_F>V?5}dYoir3>E+jK zJZyEwBl={4thctYb#61;T*@|^8QOsUpy4EKA6Ck?xXwx%U8cqLq0UZb8>bg5q040T zh2MnC)orRxXnZz;RxNmo?{t4zqZD!%Bl$y zc)n(sY?OrwET8Ww^M3^vZO#~R%=;A?A01Fnf;~=a4-H(>7-rZnf~tbEJ9oo6ITt;dE}eymS1 zrKBJ#o1v-Lwz!E(R*@J&9YZ4_)RH)_ik3FPc1p0HC2`*6vRSZYw&A*@$d--EY|bZh zCL5QDo|AeXbe+p~l%pHOnOF+XiN3QWXDr3#EUxd&--}L`d~fU0`HLG_Y$U5DBp8OB zQqEa5Yl&{{__LL(DFO=%gnO~PsN>_fiU${5V+-qQr=6=K!&u)eCXPObT6?D@&}=Zw z$3s0NvY#3&-_h$)2%+{_9K6)-ZjZA2qBzdGk-39*GQEd=Fl2GZx6yACF0(UReEsLq z9Y15IL)XPQ@cF?Ae+PT z(|Eqp^VnQKDHE4OT8bmuJiAQcc_OE@dB#Yx%N;qe?XpJFynN!|wwF(&v3yinb~T+& zbrpY|49hUB;qf{J6_4!59kUVGr1b6OhbV|&@0 zm618O-C!?}0)QiO&f-+K;ALdaZBK^_UPt7d{7^Ut%;}uJI3CWq3o7Sz=fpXyBXUl5 zTAcGTGUpa&#yP)85IOkSagl>3@EpZ4a?V~*Ij=ta!1*+V^O!RVoXLP4d;xUO6PeZ$vk&)pd2d{JfBDib6`}D)9aBOCLzp$NE^+d=^=ldo2ZWWkUVCLayEe_!WJ`2 zIom905d%epX|7qa0#ijK1@;Qho5##m$|W#`Trp#na?OwxF;yrkVyTcRFjSm{<8i0W zsYEiOc}dY+_MAQMF$!(LDN8zUZo$x*7Sr7%Ve#l;-%h z+EC%A^b5VE92~V?3kgo-b32!?lu9X1=9fw-Sez7#HaNW>7ARy1q{PnYJ2X~RjLDZY z>yW-LbQZra-#gVG7S=o5@8^#n-}h0)xtJ`uFUL;7b3o-xOcExNe2of+{1t(7sI&eI zA~x8Ng>$GqPIWSc>xU#n4^8IWYKbr8W@OII&*^*8*-?L(=48%o z4;=gKoF3ty%cgwThTRh*a^9>=tJ^zOUw3e8dnvIzbLm4(couMy7s=1`FH~Gl_riIZ zUMyNkyK4gDDF5DpI~onlVxLU#NN$}nzXc+b(g_slIbbi3>XeE-xte+ZF@xh0f@fS&`LBB2Y zk2RPc=q`0OR&CSRm^2G5a4r7vMudMJ2v&9}FOv(nJ_Ji*Tvnprb+C^*IJf;kL-q|P z89Bx++lyruJ|Vy9U{;q2Ogai9QD_3=a1JYHv7F4fBcFLN7?D(#SG7!<3HV=u@b**A z#3bp7v5YW|#`)}F7>3cD4inH;Hdxkc zsEwME^;>*u9?faNxkRBe^0A3@uHfqyKB7kx2-A7~SUS`1d)^{nqcAloVi+3KISpT( zp_m3giRbdZWZ}8IB$f-qA@P+<;UPE)>8Hi>0jKQnSw5Xsp3fWDdpW(aJxle+wtiAf z<9riY^A$|g4vR@h!BB3~c`=k*eqITsHeN_TiWTe!F3go(Mb8Vu%1FThOZaD47sg>_ zq~O2;qrXzTFb*pt1xN6`OG*U=!cvfxPK{F#mI`G^bznxLi*=c(dzZrVsIcr(7)1T0 zqD$d5KzeSwabh z1-_su$|*rCBEntQ=YMFUJ`8c6;;?bm3`S=d_`$S~d)&uI0bj`{KF(hAW++Dz*Fawn z(c@~5UwG=#M=oU9#jJS&KeL0=C$r%;eW$dxt}hD-xK^_4TBmm~$cQV$h5IFZPTDBP z&6k!7R~57m4w}v8@>XlqQO9~az1{K~DF6yDA{0|1Y5-U9r5bK6oa>QIuZVCST|@%K zO3G_!d2~1$=lfYc9QKC@L@?Bn`Wra5b2LHqaUAS2ldt4eNS@Eik~IMvkN1Z3@ZKSo zqK9i8(&|3!+B`>f7m-rxgQ)C94XZ2Ln+o10qM}iVHpX7c(`T(~hPOAS;A~>xiLPTJ-ysqk$y457O3@Dt~pCHPj2N{Y)ubUkd50r zfoILEhdEtqNsm1|?h@M>W{Q&B^>qAji%?Jd>9)redDx&w(3OsoBCiJ)ftZnkQ>Xl!@h~wPCh|>Q-}ATZ@;#I(SK{vt-OQ&$>EOsV6)O z#%lk<@^m{J7$^NWpk+~DWd2*;pfKjOOZ>R1H9MElRnBF$VN0AC#KsEBZWr4;SIUDm z(sOghXo_Z=8;dXplH<)NE_e#>(~E!zn9BqgCVjfpTyF2dZ!0AZZ@blEu&`)G*TpZI z(GD)=%r{TSUbqx<30<^=a|yMj_u_a-HR*uuhFgnda_ASyWYPI`6L-zoPBbH*!?>Wn z#bB04who(7%m-nrtObiRRn}rfoXho`8_ieLxnwR_8z`WSA)P1$-ht;BKbA^ zl5z92DVs%JC945lC95^J*GkGdEE>gHq;pTQRVHWHMKqP5D{1#r!A;9khHY9N3(cQo zc@Zm~>=ee6OJ&Ov2AQRyyKb4D?~{gh)5`U5U&*TizqF|{356vd}Djc zOjZG&lUE^|lh>Lu?t4Lah|QrjlQYLONi($h0VAr-4;$r7p0>y;M&Zo{b&SU^S&YY1 z6VcsIC6CWmH`OoZ+j)^>;E$>7)`t2NrktK?KT zE9rFWkHIobNi*gvM)R-p6w4-oo_OS)s%CbUU_ED!(gb-*)zICuua7J)PwO1Z@=P0L zLIpg$+3oMztr%|w_1_OT>pWAZvg%U+jER`js1 ztEc#N%H<}gQ!X<@O+B=5|GH%I;@2gU7hUw)_0+x`2~?LUie3{=R&+5gsE*Pt{ZMGG zW!NI4eLW&sx&1*$Jw>liDzEnXq%s2p!WpsY}^~a~qpk)}U7gJD6v_FW;uDhrMjv9Vt=l zCo$RYAdlgW#=&@aEIV^)GkbEA4$yUn`7SBP-?%rWKQu=j8~d%{m28x^>GWoHZP*#N zwz@f}2OF9Ou!FpFoW49ZD+I&5+sE-Uh`QDq;pAgyd~7LDoLzd?#m#e1u4U^RYwtSy zRCa0Y!c%8-dDbqTMVW#EmuHADpWCOSY^_m_;_PEQe+?hx62Ro~`?Hy)%>H5NjEV!O6{gll`o-uRN#Q*&4QnhZ&t9 z#@#yG`PO6?7TW3Czgt^d!yN0hI;Gp`<@|4&gW2CL)x$U;EM;e?%KWY#zGvUgP||k3 zZGNopq2`y5bw$SW65ghcfNl!H~mx@dz%6HCsH z{P>wO*~lo(_V7)AH%AjT%$Hi7QNDK2&IkJJwI$~xEJhVv>Su;y+Lvuq zc^6++hf*JfH;;#{c2Sl6Hu>|Yk>jR&ibpwWuYYKNs(56Qz>pu<1hheTl}Xvn#~GTP za$!RnAqtX=Q8R!>U z;@Qd*Dd(_1?zj8hlC0&aDsQLX&O3-pyJgu62E>9*Ro4`Qv!~adfNxrZK~^^CtBP-Q zwlBa@&miO?cILyU@HN0wTkk<9+UVm?)Bm%)&atI{CtC+b)J4RBbK4FeH8E9(PCF<; z>M@vPyWuW1A7I%W?QLXxL%dyZH7}r9vJ2L%)jx%L! zpeKJC?$RIPLKYj-pU@GXdXIH8 zgqCQ#Nk;>)fQB!aTHQi2_YIb>yW@U9aDEjnniF(C%qdC^C(tKRZ8eUf+fr<4HPP{r zZQ$0=*We_8~-8Ow*#F4AtDug-lkk{*D?7)zLsP?8Rj0-~-RX)H$;UA}3?R_c4uFBWcyF^MAB zRBdMm8@PBw*q-d~BQ6w82#*_Gh4$v%*@mR#j%qo zP8>hc7+&jQ`C!M5_35`>*>Fi_NJ=S_9(Y;c0F4I9YB+msNPk-kxu`_5P#XQ)67wuW zHITMhJPtK9GTh{?IAozn@RMyD>If4M`EiTu(6F3G@g%L@Px6PvCP$oEm0TyWL4K%& zjq`2d@UTSW@Gy?qn;IB7ab8v4=)35_4^+V*+ zzC_`MX3J8dOJiQ9WV!_AVKM=O2-FYSH5T01XhJe!@G+aI1X4WbUXHp_Jw9DHN9zlH zM5serY>SfFC{?)*YE|XNYGiBQX|`>kEXn2ScRLtATKmduG7ab=(wrcr-jzfBF`=a- zO|oo^blAz&MAEFjsMWZPx&j1ewJZYnqoWk+n#g?op8WwGK?l7%-PegJkn*joH1+H@ zvu3uGVSQ1R<MLG+bB#~GTU(v0 zP5Q=o)XCbIvX3$v#K8tT{WYTz4>awfJ}DdBW$Et$87^Ak?zbBkX!Y%}VNS*+zwqmW zLZsfizyzKqHksaGfH`SWkFJ`Q=!!yNQCYQdl`t9D!M~D?!maBm=p#FH=hOJ`$<_#S z9c?FXG1OcI$+vDziB4~!7F1k2H#$pe*Sq;}9V?JD%hR&pW-&$1`_A;S#B(ritYO}J z7Eg&{mIQ2=1MH3-DT<=qc!{);jXT>72)KZFx<;p*2@JXUaZ1nagx?m%cShvgP#2$W zVp#ad=&?>Wr@z2Xo-;z!>$i&f|>+8zq>|0 zQ=o#oX+K+|=DgkQW>^!zvM<=-*&QgMra-dF{*Yn< zg(cO*4?51_byl|cT(IQm+pTS)9;Wjm%;w`YwKidd;aFe~n;5QLSr-#$B8<_2(0DGK zd8f1c=wxRnA8w#tX{ukusO_r=Q!GqsRl9WgDqY#7T$rCcprY$lD=Im~W_2x$s%Y#F z^x6XzkI3_b12rUXgWa5uN3Pil*M9-iq)GVup-Wm>R#U#Im87m#UC36@dCZa%!>*$nK^acYOK`i8GBuLZ{ zY~b1Kjv!cdRi+TIZJT1Y5=rx0{JDkbZUZdbtK3X_OBPN4Lcf1yGO(LfYv|!=uSWIv zXqh=WRY0K*2HI_(hsdylZK1PRRq1r!-4I^I*l2sr1p;)015~XG8+t^c_i*$^Pj+=j zZ{`^NkW>UI8)v8w=#EF*Sna3DEv*kLushTr!A1aUY@{6ZVb|3uPm8)>Q8zl2VHsFO zZ%EbzqjNOr3za3t3u+GK@STk=U0{=h)Hg|z& z`(U@@#%j8jMOURGQ840C?m#xjqKw`UcLtl;9<&zhe6;t_TYF9`9QT-nq zbD0A#E{ArDUInx@9C&S!ER9#jbixH>v;TNDD1hSoGxkp1iQIe@DOS8)?WVb&cN1yx@cvGaP?moS8Xm<=y!Z~z%5n)BXC-lL~m-Bgv#E{E`@(Hkq!2_eR= z!Lg6Piltj9jty|1nvCHzYM!#8TB)7nqH*w13>zuxo*7dSGljKbn;?}mOHW(6I?yPl$};XH|!0p z$qn|f8H!R&m5Rgx6DfI%S-$P@WnB@KdL41NS&!an2BRY!*^!1)+Ki$zi5uO-iL32) z7jq1lNXH4&58xt3-Hpom7&bW7@Ca7aW|2LiYCLQJ!#t439-7%tFwe%Oz!-06?CJeu z$g~}y7||AvX=9t6cGEx`nc4@fY=9`4VOT&*5JpZk&TCV$p^2J^;1HBr7;4c>tkd7h zcCeQXG0|y0D-=}jt`9h)dH4rN*RuF0SF0jM|Ziha`Aeto`IT+&616 z#wU$DlC8j)Zp#XbJZvJPg`mNy69)#WxL&ZRK2m^#0+>QmHzJy+GoCwHKtok5beNNf zY%o>CINQNc+~t1ML=Z;U%hCN6ixX?KNT$XhYE?;@1g7WXa*7^sc(ZC~R(z<+^)yhn zPA@(n>hM8G;hd_C^2(Sh24=>9h>u@&#}frT1;?4FQ*oSXCc3&ciCM3KBIfr z15xXT*6Dnk>0Vrfce5_&O^@6-+H-h+Y$6Y%Ic>`tIgAEyJB%yYR?g&(1x${uDmJID78W z8jYm?x~s?N5=aD?7AnA^gm&pITvOv~>w0FU4olfp8hRZ|jw{*1xm|O{^j96GwhM7~ z_GcP@B;fPq$ifL-eA>czpy#~Qm^Rvf1#8--fyw9vfnR7258D-slQUYooWPb)sz*~A1|3g zmJVzR#bnA zcH)mDP^>Z&LQpXWbvV^n*zS+Cd# z$TEN4rFY9Z^!*fHH^jx$r+R&~(f&2Nf9MJC;xGt4!`SJzcJ&@06%X2Iaa8nWBEYz5 z+uoJY_=-M9>P`LBRMSbY6GMNIP1coO4Guay+My8}qVRpQp1_CQ#`t=nK_oaBYAopu zJK0dODZYo7<#%1YDLdLi>Hefn3u;3(F|6g`1y6&ubQQ>Nro|eS3D@3&M^Qqx@ZqJp zb9efPHI6bIyN2V$$HJ8W{ajixq}CUw*=4cppsg2b!!siBbz5a`Hhwd<7R|V9ZNn9b zmWSVG#;9zm1cso=JX-|SgNtwwN!=p@F}3g|R~44uTZTK4t$Cj1D+3s3VZOSBmHo&> zgPyju8<@1zDEv+tsdO`2ETm2w`6+KJTM_5GXaY(xAJ=sy8>kn_{rM!kde&~_hU`RX z=r?n7Ue~MFY)uQgP#jdDkwTd)J33**YE254C6(R6;m+(iK`@9{l1#qR6Ge0uC$eR( z^2X+BuC}N#qFI>bM|}9p&KJq~Y LwzKJQzMKyL?er96 diff --git a/src/hwprobe/interops/win/bindings/wmi.dll b/src/hwprobe/interops/win/bindings/wmi.dll index 0f4b82feb73fa17b6192d52948b018188bf9e14d..7ad13682a0ac4108d832e9622518cc6706fb221d 100644 GIT binary patch delta 68 zcmZ2;T64{5%?TY$PaP+A`7!TkO?QA++%Paw&>K17L delta 68 zcmZ2;T64{5%?TY$zQz-~{FvKQxEpV`-ezpQ&9wD4v!*ssxSdUh8Hibcm=%cGfS4VK OIe?gRJDU#IGD`qamK4wc From c856be4b4f54f176593bd4e602cf869c9ed5d821 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 00:38:58 +0530 Subject: [PATCH 19/33] fix: build correct acpi path in win display; potentially fix missing display name --- src/hwprobe/core/common/edid.py | 5 ++- src/hwprobe/core/windows/display.py | 23 ++++++++----- tests/core/windows/test_display.py | 50 +++++++++++++++++++++++++---- tests/core/windows/test_network.py | 5 ++- 4 files changed, 63 insertions(+), 20 deletions(-) diff --git a/src/hwprobe/core/common/edid.py b/src/hwprobe/core/common/edid.py index d6bfee0..d9f2a29 100644 --- a/src/hwprobe/core/common/edid.py +++ b/src/hwprobe/core/common/edid.py @@ -81,10 +81,9 @@ def parse_edid(edid_data: bytes) -> DisplayModuleInfo: if tag in DESCRIPTOR_TAG_ENUM: # Refer to DESCRIPTOR_TAG_ENUM for valid block type codes if tag == 0xFF: - # todo: test if this works - module.serial_number = block[5:].decode("ascii").strip() + module.serial_number = block[5:].split(b"\x0a")[0].decode(errors="ignore").strip() elif tag == 0xFC: - module.name = block[5:].decode("ascii").strip() + module.name = block[5:].split(b"\x0a")[0].decode(errors="ignore").strip() else: if not module.resolution: diff --git a/src/hwprobe/core/windows/display.py b/src/hwprobe/core/windows/display.py index aeaed05..457ae67 100644 --- a/src/hwprobe/core/windows/display.py +++ b/src/hwprobe/core/windows/display.py @@ -8,6 +8,7 @@ """ from hwprobe.core.common.edid import parse_edid +from hwprobe.core.windows.common import format_acpi_path, format_pci_path from hwprobe.core.windows.win_enum import DISPLAY_CON_TYPE from hwprobe.interops.win.bindings.display_info import ( get_display_connectors, @@ -17,6 +18,7 @@ ) from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo, ResolutionInfo from hwprobe.models.status_models import StatusType +from hwprobe.util.location_paths import get_location_paths def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> DisplayModuleInfo: @@ -58,13 +60,19 @@ def fetch_display_info() -> DisplayInfo: for dev in get_monitor_devices(): module = DisplayModuleInfo() - module.acpi_path = dev.pnp_device_id module.resolution = ResolutionInfo( width=dev.width, height=dev.height, refresh_rate=float(dev.refresh_rate), ) + # Location paths from PNP device ID (same as graphics.py and network.py) + loc = get_location_paths(dev.pnp_device_id) + if loc is not None: + pci, acpi = loc[:2] + module.pci_path = format_pci_path(pci) + module.acpi_path = format_acpi_path(acpi) + # GPU association via DXGI module.gpu_name = get_gpu_for_display(dev.device_id) @@ -73,13 +81,12 @@ def fetch_display_info() -> DisplayInfo: if connector: module.interface = DISPLAY_CON_TYPE.get(connector.output_technology) - # EDID — prefer display path for matching, fall back to PNP ID - edid_key = ( - connector.display_path - if connector and connector.display_path - else dev.pnp_device_id.split("\\")[1] if "\\" in dev.pnp_device_id else dev.pnp_device_id - ) - edid_bytes = get_edid(edid_key) + # EDID — try display path first, fall back to PNP ID segment + edid_bytes = None + if connector and connector.display_path: + edid_bytes = get_edid(connector.display_path) + if not edid_bytes and "\\" in dev.pnp_device_id: + edid_bytes = get_edid(dev.pnp_device_id.split("\\")[1]) if edid_bytes: module = _enrich_from_edid(module, edid_bytes) diff --git a/tests/core/windows/test_display.py b/tests/core/windows/test_display.py index f4a693c..927ec79 100644 --- a/tests/core/windows/test_display.py +++ b/tests/core/windows/test_display.py @@ -51,13 +51,26 @@ def _load_display_module(): _binding.get_display_connectors = lambda: [] _binding.get_gpu_for_display = lambda name: None _binding.get_edid = lambda pnp: None - sys.modules.setdefault("hwprobe.interops.win.bindings.display_info", _binding) + sys.modules["hwprobe.interops.win.bindings.display_info"] = _binding # Stub win_enum — display.py imports DISPLAY_CON_TYPE from it, but # importing the real module triggers core.windows.__init__. _win_enum = types.ModuleType("hwprobe.core.windows.win_enum") _win_enum.DISPLAY_CON_TYPE = {4: "DVI", 5: "HDMI", 10: "DisplayPort", 11: "eDP"} - sys.modules.setdefault("hwprobe.core.windows.win_enum", _win_enum) + sys.modules["hwprobe.core.windows.win_enum"] = _win_enum + + # Stub common (format_acpi_path / format_pci_path) and location_paths — + # both load DLLs at import time on Windows. Use plain stubs; tests that + # care about the formatted output mock get_location_paths on the display + # module directly and check that acpi_path/pci_path are not None. + _common = types.ModuleType("hwprobe.core.windows.common") + _common.format_acpi_path = lambda s: s + _common.format_pci_path = lambda s: s + sys.modules["hwprobe.core.windows.common"] = _common + + _loc = types.ModuleType("hwprobe.util.location_paths") + _loc.get_location_paths = lambda pnp: None + sys.modules["hwprobe.util.location_paths"] = _loc mod_name = "hwprobe.core.windows.display" if mod_name in sys.modules: @@ -191,6 +204,7 @@ def test_happy_path(self, monkeypatch): ]) monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) + monkeypatch.setattr(display, "get_location_paths", lambda pnp: ("PCIROOT(0)#PCI(1D00)", "ACPI(_SB_)#ACPI(PCI0)#ACPI(NIC0)")) result = display.fetch_display_info() @@ -199,7 +213,9 @@ def test_happy_path(self, monkeypatch): assert mod.name == "TEST-MONITOR" assert mod.gpu_name == "GPU-0" assert mod.interface == "DisplayPort" - assert mod.acpi_path == r"MONITOR\ABC123\{GUID}" + assert mod.acpi_path is not None + assert mod.pci_path is not None + assert mod.acpi_path != r"MONITOR\ABC123\{GUID}" # not the raw PNP ID assert mod.resolution.width == 2560 assert mod.resolution.height == 1440 assert mod.resolution.refresh_rate == 144.0 @@ -214,6 +230,7 @@ def test_no_edid_still_returns_module(self, monkeypatch): monkeypatch.setattr(display, "get_display_connectors", lambda: []) monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) monkeypatch.setattr(display, "get_edid", lambda key: None) + monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() @@ -222,7 +239,7 @@ def test_no_edid_still_returns_module(self, monkeypatch): assert mod.name is None assert mod.gpu_name is None assert mod.resolution.width == 1920 - assert mod.acpi_path == r"MONITOR\XYZ\{GUID}" + assert mod.acpi_path is None # no location paths found def test_multiple_monitors(self, monkeypatch): monkeypatch.setattr(display, "get_monitor_devices", lambda: [ @@ -232,11 +249,32 @@ def test_multiple_monitors(self, monkeypatch): monkeypatch.setattr(display, "get_display_connectors", lambda: []) monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") monkeypatch.setattr(display, "get_edid", lambda key: None) + monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() assert len(result.modules) == 2 - assert result.modules[0].acpi_path == r"MONITOR\AAA\{1}" - assert result.modules[1].acpi_path == r"MONITOR\BBB\{2}" + assert result.modules[0].acpi_path is None + assert result.modules[1].acpi_path is None assert result.modules[0].resolution.width == 2560 assert result.modules[1].resolution.width == 1920 + + def test_location_paths_populated(self, monkeypatch): + """Verify acpi_path and pci_path come from get_location_paths, not the raw PNP ID.""" + monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) + monkeypatch.setattr(display, "get_edid", lambda key: None) + + def mock_loc(pnp): + return ("PCIROOT(0)#PCI(1D00)#PCI(0000)", "ACPI(_SB_)#ACPI(PCI0)#ACPI(DD01)") + + monkeypatch.setattr(display, "get_location_paths", mock_loc) + + result = display.fetch_display_info() + mod = result.modules[0] + + assert mod.acpi_path is not None + assert mod.pci_path is not None + assert "MONITOR" not in (mod.acpi_path or "") + assert mod.acpi_path != r"MONITOR\ABC123\{GUID}" diff --git a/tests/core/windows/test_network.py b/tests/core/windows/test_network.py index d924d09..5bb2f57 100644 --- a/tests/core/windows/test_network.py +++ b/tests/core/windows/test_network.py @@ -15,10 +15,9 @@ def _load_common_module(): """Load common.py directly (format_acpi_path / format_pci_path) without - triggering core.windows.__init__ which chains into legacy imports.""" + triggering core.windows.__init__ which chains into legacy imports. + Always force-load — other test modules may have stubbed sys.modules.""" mod_name = "hwprobe.core.windows.common" - if mod_name in sys.modules: - return sys.modules[mod_name] spec = importlib.util.spec_from_file_location(mod_name, _COMMON_PATH) mod = importlib.util.module_from_spec(spec) sys.modules[mod_name] = mod From 33f97ccf14b4df3ed06696781877b8afbf3ba167 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 00:47:12 +0530 Subject: [PATCH 20/33] wip: fix monitor name retrieval on windows --- src/hwprobe/interops/win/src/display_info.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/hwprobe/interops/win/src/display_info.cpp b/src/hwprobe/interops/win/src/display_info.cpp index 8e4aa93..4971eaa 100644 --- a/src/hwprobe/interops/win/src/display_info.cpp +++ b/src/hwprobe/interops/win/src/display_info.cpp @@ -222,7 +222,11 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { std::vector detailBuf(requiredSize); auto *detail = reinterpret_cast(detailBuf.data()); - detail->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W); + // cbSize must be 8 on 64-bit, 6 on 32-bit — a well-known SetupAPI quirk. + // sizeof() gives 6 on both because the struct has no 8-byte member, + // but SetupDiGetDeviceInterfaceDetailW silently fails on 64-bit if + // cbSize isn't 8. The old Python ctypes code got this right. + detail->cbSize = sizeof(void *) == 8 ? 8 : 6; SP_DEVINFO_DATA devData = {}; devData.cbSize = sizeof(devData); From c54e961c07874c5bdeaf5cd6cd3090c8f6d06d34 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 1 Aug 2026 19:17:52 +0000 Subject: [PATCH 21/33] build: update Windows native bindings [skip ci] --- .../interops/win/bindings/display_info.dll | Bin 502746 -> 502746 bytes .../interops/win/bindings/gpu_info.dll | Bin 642031 -> 642031 bytes src/hwprobe/interops/win/bindings/wmi.dll | Bin 681388 -> 681388 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/hwprobe/interops/win/bindings/display_info.dll b/src/hwprobe/interops/win/bindings/display_info.dll index 7b63bf1a8fc6596150cc4d74506d8d4f3c5280af..8a4a06dd3f06a3bdd9dd7e049f6f19addaefdc4f 100644 GIT binary patch delta 52 zcmcb0UGCO(xd|Oi@op2l{Fs!Y8*jDVV%&O*Noze&sGV&C6A&{4F$)m0ZfD!TcI7t! DP!APW delta 52 zcmcb0UGCO(xd|OiPaP+A`7!AQHQs8y#klnrlh%5mP&?ZOCLm@8Viq7~-Ojdw?aFTe Da#R*u diff --git a/src/hwprobe/interops/win/bindings/gpu_info.dll b/src/hwprobe/interops/win/bindings/gpu_info.dll index 029ef4acd1f2d310ac34e57c8cfa2cecfe690878..549df85e1e4f83c58b325ef4f21f67c4d2efe1f8 100644 GIT binary patch delta 63 zcmaDqUH$!Z^$8tJ@op2l{Fpid8gI4UVr;#|wDlIVmNrndolS=sh*^M`6^Pk@m>q~Y LwzKJQzMKyL2n7`Q delta 63 zcmaDqUH$!Z^$8tJPaP+A`7up#Z@krdi?Q_<)7D$eTG~L-b~YVmAZ7t#Rv=~rVs;?r L*v_WI`Eou0GyWC* diff --git a/src/hwprobe/interops/win/bindings/wmi.dll b/src/hwprobe/interops/win/bindings/wmi.dll index 7ad13682a0ac4108d832e9622518cc6706fb221d..a5d4515fec245da939c9f898afec10bc960372ac 100644 GIT binary patch delta 67 zcmZ2;T64{5%?TY$@op2l{Fv5sHQs8y#n^g_Y3nU!Ep4D^JDUzO5VHU=D-g2*F*^`* N05RuwHXW{ImH=b+6;=QM delta 67 zcmZ2;T64{5%?TY$PaP+A`7!NiY`oQai?Q_<)7D$eTG~L-b~YVmAZ7t#Rv=~rVs;?r N0AkMVY&u-aECG}Q7Fz%S From 2a76c5d817c10893fbb2179a283876746e045067 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 01:12:25 +0530 Subject: [PATCH 22/33] improve display detection by combining wmi, dxgi, and setupapi --- src/hwprobe/core/windows/display.py | 75 +++---- .../interops/win/bindings/display_info.py | 95 +++----- .../interops/win/include/display_info.h | 32 +-- src/hwprobe/interops/win/main.cpp | 69 +++--- src/hwprobe/interops/win/src/display_info.cpp | 204 +++++++----------- src/hwprobe/interops/win/src/wmi.cpp | 29 +++ tests/core/windows/test_display.py | 148 +++++-------- 7 files changed, 261 insertions(+), 391 deletions(-) diff --git a/src/hwprobe/core/windows/display.py b/src/hwprobe/core/windows/display.py index 457ae67..a01095a 100644 --- a/src/hwprobe/core/windows/display.py +++ b/src/hwprobe/core/windows/display.py @@ -5,90 +5,73 @@ - EDID parsing (shared hwprobe.core.common.edid) - Connector type mapping (DISPLAY_CON_TYPE from win_enum) - Data assembly into DisplayModuleInfo + +Monitor name priority: EDID 0xFC descriptor → CCD monitorFriendlyName → None """ from hwprobe.core.common.edid import parse_edid from hwprobe.core.windows.common import format_acpi_path, format_pci_path from hwprobe.core.windows.win_enum import DISPLAY_CON_TYPE -from hwprobe.interops.win.bindings.display_info import ( - get_display_connectors, - get_edid, - get_gpu_for_display, - get_monitor_devices, -) +from hwprobe.interops.win.bindings.display_info import get_display_devices, get_edid from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo, ResolutionInfo from hwprobe.models.status_models import StatusType from hwprobe.util.location_paths import get_location_paths -def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> DisplayModuleInfo: - """Fill in gaps on a DisplayModuleInfo from parsed EDID data. - - Only sets fields that are currently None — existing values win. - Resolution fields are merged individually. - """ +def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> None: + """Fill None fields on module from parsed EDID. Existing values win.""" data = parse_edid(edid_bytes) - for field in data.model_dump().keys(): - if field == "resolution": - continue - if getattr(module, field) is None: - setattr(module, field, getattr(data, field)) + if module.name is None: + module.name = data.name + if module.manufacturer_code is None: + module.manufacturer_code = data.manufacturer_code + if module.year is None: + module.year = data.year + if module.serial_number is None: + module.serial_number = data.serial_number + if module.interface is None: + module.interface = data.interface if data.resolution is None: - return module + return if module.resolution is None: module.resolution = data.resolution - return module + return for field in data.resolution.model_dump(): if getattr(module.resolution, field) is None: setattr(module.resolution, field, getattr(data.resolution, field)) - return module - def fetch_display_info() -> DisplayInfo: display_info = DisplayInfo() - # Connector info from CCD API (display paths + output technology) - try: - connectors = {c.display_id: c for c in get_display_connectors()} - except RuntimeError: - connectors = {} - display_info.status.type = StatusType.PARTIAL - display_info.status.messages.append("Failed to fetch display connector information") - - for dev in get_monitor_devices(): + for dev in get_display_devices(): module = DisplayModuleInfo() module.resolution = ResolutionInfo( width=dev.width, height=dev.height, refresh_rate=float(dev.refresh_rate), ) + module.gpu_name = dev.gpu_name or None + module.interface = DISPLAY_CON_TYPE.get(dev.output_technology) - # Location paths from PNP device ID (same as graphics.py and network.py) + # Location paths from PNP device ID loc = get_location_paths(dev.pnp_device_id) if loc is not None: - pci, acpi = loc[:2] - module.pci_path = format_pci_path(pci) - module.acpi_path = format_acpi_path(acpi) - - # GPU association via DXGI - module.gpu_name = get_gpu_for_display(dev.device_id) - - # Connector type from CCD (more authoritative than EDID) - connector = connectors.get(dev.device_id) - if connector: - module.interface = DISPLAY_CON_TYPE.get(connector.output_technology) + module.pci_path = format_pci_path(loc[0]) + module.acpi_path = format_acpi_path(loc[1]) # EDID — try display path first, fall back to PNP ID segment - edid_bytes = None - if connector and connector.display_path: - edid_bytes = get_edid(connector.display_path) + edid_bytes = get_edid(dev.display_path) if dev.display_path else None if not edid_bytes and "\\" in dev.pnp_device_id: edid_bytes = get_edid(dev.pnp_device_id.split("\\")[1]) if edid_bytes: - module = _enrich_from_edid(module, edid_bytes) + _enrich_from_edid(module, edid_bytes) + + # CCD monitorFriendlyName — fallback only, EDID name wins + if module.name is None and dev.monitor_name: + module.name = dev.monitor_name display_info.modules.append(module) diff --git a/src/hwprobe/interops/win/bindings/display_info.py b/src/hwprobe/interops/win/bindings/display_info.py index 76edaf4..a21701a 100644 --- a/src/hwprobe/interops/win/bindings/display_info.py +++ b/src/hwprobe/interops/win/bindings/display_info.py @@ -1,17 +1,15 @@ """ display_info.py - Python ctypes binding for display_info.dll -Four exports covering all Win32 display APIs: - - get_monitor_devices(): user32 monitor enumeration (EnumDisplayMonitors + settings) - - get_display_connectors(): CCD API (QueryDisplayConfig) — connector type + display path - - get_gpu_for_display(): DXGI output→adapter match — GPU name +Two exports: + - get_display_devices(): user32 + CCD + DXGI in one pass — all display info - get_edid(): SetupAPI + registry EDID lookup — raw EDID bytes All Win32 calls live in C++ — Python only does EDID parsing and data assembly. Usage: from hwprobe.interops.win.bindings.display_info import ( - get_monitor_devices, get_display_connectors, get_gpu_for_display, get_edid, + get_display_devices, get_edid, ) Source: interops/win/include/display_info.h and interops/win/src/display_info.cpp. @@ -34,56 +32,43 @@ _lib = ctypes.WinDLL(str(_LIB_PATH)) -# ---- mirror the C structs ---- +# ---- mirror the C struct ---- -class _MonitorDevice(ctypes.Structure): +class _DisplayDeviceInfo(ctypes.Structure): _fields_ = [ ("device_id", ctypes.c_char * 32), ("pnp_device_id", ctypes.c_char * 128), + ("monitor_name", ctypes.c_char * 128), + ("display_path", ctypes.c_char * 512), + ("gpu_name", ctypes.c_char * 256), ("width", ctypes.c_int), ("height", ctypes.c_int), ("refresh_rate", ctypes.c_int), - ] - - -class _ConnectorInfo(ctypes.Structure): - _fields_ = [ - ("display_id", ctypes.c_char * 32), - ("display_path", ctypes.c_char * 512), ("output_technology", ctypes.c_int), ] # ---- function signatures ---- -_lib.get_monitor_devices.restype = ctypes.c_int -_lib.get_monitor_devices.argtypes = [ctypes.POINTER(_MonitorDevice), ctypes.c_int] - -_lib.get_display_connectors.restype = ctypes.c_int -_lib.get_display_connectors.argtypes = [ctypes.POINTER(_ConnectorInfo), ctypes.c_int] - -_lib.get_gpu_for_display.restype = ctypes.c_int -_lib.get_gpu_for_display.argtypes = [ctypes.c_char_p, ctypes.c_char_p, ctypes.c_int] +_lib.get_display_devices.restype = ctypes.c_int +_lib.get_display_devices.argtypes = [ctypes.POINTER(_DisplayDeviceInfo), ctypes.c_int] _lib.get_edid.restype = ctypes.c_int _lib.get_edid.argtypes = [ctypes.c_char_p, ctypes.POINTER(ctypes.c_ubyte), ctypes.c_int] -# ---- Python-facing dataclasses ---- +# ---- Python-facing dataclass ---- @dataclass -class MonitorDevice: +class DisplayDeviceInfo: device_id: str pnp_device_id: str + monitor_name: str + display_path: str + gpu_name: str width: int height: int refresh_rate: int - - -@dataclass -class ConnectorInfo: - display_id: str - display_path: str output_technology: int @@ -92,53 +77,33 @@ class ConnectorInfo: _MAX = 8 -def get_monitor_devices() -> list[MonitorDevice]: - """Enumerate active monitors via user32. Returns one entry per attached display.""" - buf = (_MonitorDevice * _MAX)() - count = _lib.get_monitor_devices(buf, _MAX) +def _decode(raw: bytes) -> str: + return raw.decode("utf-8", errors="replace").strip("\x00") + + +def get_display_devices() -> list[DisplayDeviceInfo]: + """Enumerate active displays via user32 + CCD + DXGI in one pass.""" + buf = (_DisplayDeviceInfo * _MAX)() + count = _lib.get_display_devices(buf, _MAX) if count < 0: - raise RuntimeError("get_monitor_devices() failed (C library returned -1)") + raise RuntimeError("get_display_devices() failed (C library returned -1)") return [ - MonitorDevice( - device_id=buf[i].device_id.decode("utf-8", errors="replace").strip("\x00"), - pnp_device_id=buf[i].pnp_device_id.decode("utf-8", errors="replace").strip("\x00"), + DisplayDeviceInfo( + device_id=_decode(buf[i].device_id), + pnp_device_id=_decode(buf[i].pnp_device_id), + monitor_name=_decode(buf[i].monitor_name), + display_path=_decode(buf[i].display_path), + gpu_name=_decode(buf[i].gpu_name), width=buf[i].width, height=buf[i].height, refresh_rate=buf[i].refresh_rate, - ) - for i in range(count) - ] - - -def get_display_connectors() -> list[ConnectorInfo]: - """Return active display connector info from the CCD API.""" - buf = (_ConnectorInfo * _MAX)() - count = _lib.get_display_connectors(buf, _MAX) - if count < 0: - raise RuntimeError("get_display_connectors() failed (C library returned -1)") - - return [ - ConnectorInfo( - display_id=buf[i].display_id.decode("utf-8", errors="replace").strip("\x00"), - display_path=buf[i].display_path.decode("utf-8", errors="replace").strip("\x00"), output_technology=buf[i].output_technology, ) for i in range(count) ] -def get_gpu_for_display(device_name: str) -> Optional[str]: - """Find the GPU name driving a display device (e.g. r'\\.\DISPLAY1'). - Returns None if not found.""" - buf = ctypes.create_string_buffer(256) - rc = _lib.get_gpu_for_display(device_name.encode("utf-8"), buf, 256) - if rc != 0: - return None - name = buf.value.decode("utf-8", errors="replace").strip("\x00") - return name or None - - def get_edid(pnp_device_id: str) -> Optional[bytes]: """Read raw EDID bytes from the registry for a monitor matching the given PNP device ID or display path. Returns None if not found.""" diff --git a/src/hwprobe/interops/win/include/display_info.h b/src/hwprobe/interops/win/include/display_info.h index 344c18a..79e7054 100644 --- a/src/hwprobe/interops/win/include/display_info.h +++ b/src/hwprobe/interops/win/include/display_info.h @@ -6,33 +6,23 @@ extern "C" { #endif -// Active monitor device from user32 enumeration. -// One entry per attached display. +// One active display device. Filled by get_display_devices which merges +// user32 monitor enumeration, CCD connector info, and DXGI GPU association +// in a single pass — no Python-side correlation needed. typedef struct { char device_id[32]; // GDI device name, e.g. "\\.\DISPLAY1" - char pnp_device_id[128]; // PNP hardware ID, e.g. "MONITOR\SAMxxxx\{...}" + char pnp_device_id[128]; // PNP hardware ID, e.g. "MONITOR\BOE0936\{...}" + char monitor_name[128]; // CCD monitorFriendlyName (may be empty) + char display_path[512]; // CCD target device path, e.g. "\\?\DISPLAY#..." + char gpu_name[256]; // DXGI adapter name (may be empty) int width; // Current resolution width (pixels) int height; // Current resolution height (pixels) int refresh_rate; // Current refresh rate (Hz) -} MonitorDevice; + int output_technology; // DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum value +} DisplayDeviceInfo; -// Display connector info from the CCD API (QueryDisplayConfig). -// One entry per active display path. -typedef struct { - char display_id[32]; // Source GDI device name, e.g. "\\.\DISPLAY1" - char display_path[512]; // Target monitor device path, e.g. "\\?\DISPLAY#..." - int output_technology; // DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum value -} ConnectorInfo; - -// Fill `out` with active monitor devices. Returns count, or -1 on error. -int get_monitor_devices(MonitorDevice *out, int max_count); - -// Fill `out` with active display connector info. Returns count, or -1 on error. -int get_display_connectors(ConnectorInfo *out, int max_count); - -// Find the GPU (adapter) name driving a given display device name. -// Returns 0 on success, -1 on failure. Writes a UTF-8 name into out_gpu_name. -int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size); +// Fill `out` with active display devices. Returns count, or -1 on error. +int get_display_devices(DisplayDeviceInfo *out, int max_count); // Read raw EDID bytes from the registry for a monitor matching `pnp_device_id`. // Returns EDID byte count (>=128 on success), 0 if not found, -1 on error. diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index 4b93f24..1bc9920 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -104,9 +104,7 @@ static int test_wmi() { return 0; } -typedef int (*get_monitor_devices_ptr)(MonitorDevice *, int); -typedef int (*get_display_connectors_ptr)(ConnectorInfo *, int); -typedef int (*get_gpu_for_display_ptr)(const char *, char *, int); +typedef int (*get_display_devices_ptr)(DisplayDeviceInfo *, int); typedef int (*get_edid_ptr)(const char *, unsigned char *, int); static int test_display() { @@ -116,61 +114,42 @@ static int test_display() { return 1; } - auto fnMonitors = reinterpret_cast( - GetProcAddress(hLib, "get_monitor_devices")); - auto fnConnectors = reinterpret_cast( - GetProcAddress(hLib, "get_display_connectors")); - auto fnGpu = reinterpret_cast( - GetProcAddress(hLib, "get_gpu_for_display")); + auto fnDevices = reinterpret_cast( + GetProcAddress(hLib, "get_display_devices")); auto fnEdid = reinterpret_cast( GetProcAddress(hLib, "get_edid")); - if (!fnMonitors || !fnConnectors || !fnGpu || !fnEdid) { + if (!fnDevices || !fnEdid) { printf("[display] missing exports\n"); FreeLibrary(hLib); return 1; } - // Monitors - MonitorDevice monitors[8] = {}; - int nm = fnMonitors(monitors, 8); - if (nm < 0) { - printf("[display] get_monitor_devices failed\n"); + DisplayDeviceInfo devices[8] = {}; + int nd = fnDevices(devices, 8); + if (nd < 0) { + printf("[display] get_display_devices failed\n"); FreeLibrary(hLib); return 1; } - // Connectors (for matching) - ConnectorInfo connectors[8] = {}; - int nc = fnConnectors(connectors, 8); - - printf("[display] Found %d monitor(s):\n\n", nm); - for (int i = 0; i < nm; ++i) { - printf("Monitor %d:\n", i); - printf(" DeviceID: %s\n", monitors[i].device_id); - printf(" PNPDeviceID: %s\n", monitors[i].pnp_device_id); + printf("[display] Found %d display(s):\n\n", nd); + for (int i = 0; i < nd; ++i) { + printf("Display %d:\n", i); + printf(" DeviceID: %s\n", devices[i].device_id); + printf(" PNPDeviceID: %s\n", devices[i].pnp_device_id); + printf(" MonitorName: %s\n", devices[i].monitor_name); + printf(" DisplayPath: %s\n", devices[i].display_path); + printf(" GPU: %s\n", devices[i].gpu_name); printf(" Resolution: %dx%d @ %d Hz\n", - monitors[i].width, monitors[i].height, monitors[i].refresh_rate); - - // GPU for this display - char gpuName[256] = {}; - if (fnGpu(monitors[i].device_id, gpuName, sizeof(gpuName)) == 0) { - printf(" GPU: %s\n", gpuName); - } - - // Connector info - for (int j = 0; j < nc; ++j) { - if (strcmp(connectors[j].display_id, monitors[i].device_id) == 0) { - printf(" Connector: %s (tech=%d)\n", - connectors[j].display_path, connectors[j].output_technology); - - // EDID via display path - unsigned char edidBuf[1024] = {}; - int edidLen = fnEdid(connectors[j].display_path, edidBuf, sizeof(edidBuf)); - if (edidLen > 0) { - printf(" EDID: %d bytes\n", edidLen); - } - break; + devices[i].width, devices[i].height, devices[i].refresh_rate); + printf(" Connector: tech=%d\n", devices[i].output_technology); + + if (devices[i].display_path[0]) { + unsigned char edidBuf[1024] = {}; + int edidLen = fnEdid(devices[i].display_path, edidBuf, sizeof(edidBuf)); + if (edidLen > 0) { + printf(" EDID: %d bytes\n", edidLen); } } printf("\n"); diff --git a/src/hwprobe/interops/win/src/display_info.cpp b/src/hwprobe/interops/win/src/display_info.cpp index 4971eaa..4aec372 100644 --- a/src/hwprobe/interops/win/src/display_info.cpp +++ b/src/hwprobe/interops/win/src/display_info.cpp @@ -1,5 +1,5 @@ -// Display info: monitor enumeration + CCD connectors + DXGI GPU match + SetupAPI EDID. -// Returns raw values — Python does all parsing (EDID decode, connector type mapping). +// Display info: one-pass monitor enumeration (user32 + CCD + DXGI) + SetupAPI EDID. +// Returns raw values — Python does EDID parsing and connector type mapping. // See display_info.h for the ABI. #include "display_info.h" @@ -7,7 +7,6 @@ #include #include #include -#include #include #include @@ -29,12 +28,17 @@ static std::string WideToUtf8(const wchar_t *src) { return out; } +static void copy_str(char *dst, int dst_size, const std::string &src) { + std::strncpy(dst, src.c_str(), dst_size - 1); + dst[dst_size - 1] = '\0'; +} + // ===================================================================== -// get_monitor_devices — user32 monitor enumeration +// get_display_devices — user32 + CCD + DXGI in one pass // ===================================================================== struct MonitorEnumCtx { - MonitorDevice *devices; + DisplayDeviceInfo *devices; int max_count; int count; }; @@ -57,132 +61,96 @@ static BOOL CALLBACK _monitorEnumProc(HMONITOR hMonitor, HDC, LPRECT, LPARAM lpa EnumDisplayDevicesA(mi.szDevice, 0, &dd, 0); if (dd.DeviceID[0] == '\0') return TRUE; - MonitorDevice &md = ctx->devices[ctx->count]; - std::memset(&md, 0, sizeof(md)); - std::strncpy(md.device_id, mi.szDevice, sizeof(md.device_id) - 1); - std::strncpy(md.pnp_device_id, dd.DeviceID, sizeof(md.pnp_device_id) - 1); - md.width = static_cast(dm.dmPelsWidth); - md.height = static_cast(dm.dmPelsHeight); - md.refresh_rate = static_cast(dm.dmDisplayFrequency); + DisplayDeviceInfo &dev = ctx->devices[ctx->count]; + std::memset(&dev, 0, sizeof(dev)); + copy_str(dev.device_id, sizeof(dev.device_id), mi.szDevice); + copy_str(dev.pnp_device_id, sizeof(dev.pnp_device_id), dd.DeviceID); + dev.width = static_cast(dm.dmPelsWidth); + dev.height = static_cast(dm.dmPelsHeight); + dev.refresh_rate = static_cast(dm.dmDisplayFrequency); ++ctx->count; return TRUE; } -int get_monitor_devices(MonitorDevice *out, int max_count) { +int get_display_devices(DisplayDeviceInfo *out, int max_count) { if (!out || max_count <= 0) return -1; + // 1. user32 — base monitor list (device_id, pnp_device_id, resolution) MonitorEnumCtx ctx = {out, max_count, 0}; EnumDisplayMonitors(nullptr, nullptr, _monitorEnumProc, reinterpret_cast(&ctx)); - return ctx.count; -} - -// ===================================================================== -// get_display_connectors — CCD API (QueryDisplayConfig) -// ===================================================================== - -int get_display_connectors(ConnectorInfo *out, int max_count) { - if (!out || max_count <= 0) return -1; + int count = ctx.count; + // 2. CCD — connector info (display_path, monitor_name, output_technology) + // Match by GDI device name (\\.\DISPLAY1). UINT32 pathCount = 0, modeCount = 0; - LONG rc = GetDisplayConfigBufferSizes(QDC_ONLY_ACTIVE_PATHS, &pathCount, &modeCount); - if (rc != ERROR_SUCCESS) return -1; - - std::vector paths(pathCount); - std::vector modes(modeCount); - - rc = QueryDisplayConfig(QDC_ONLY_ACTIVE_PATHS, &pathCount, paths.data(), - &modeCount, modes.data(), nullptr); - if (rc != ERROR_SUCCESS) return -1; - - int count = 0; - for (UINT32 i = 0; i < pathCount && count < max_count; ++i) { - const auto &path = paths[i]; - - // Source device name (GDI device name like \\.\DISPLAY1) - DISPLAYCONFIG_SOURCE_DEVICE_NAME srcName = {}; - srcName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME; - srcName.header.size = sizeof(srcName); - srcName.header.adapterId = path.sourceInfo.adapterId; - srcName.header.id = path.sourceInfo.id; - - if (DisplayConfigGetDeviceInfo(&srcName.header) != ERROR_SUCCESS) - continue; - - // Target device name (monitor device path like \\?\DISPLAY#...) - DISPLAYCONFIG_TARGET_DEVICE_NAME tgtName = {}; - tgtName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME; - tgtName.header.size = sizeof(tgtName); - tgtName.header.adapterId = path.targetInfo.adapterId; - tgtName.header.id = path.targetInfo.id; - - if (DisplayConfigGetDeviceInfo(&tgtName.header) != ERROR_SUCCESS) - continue; - - ConnectorInfo &ci = out[count]; - std::memset(&ci, 0, sizeof(ci)); - - std::string src = WideToUtf8(srcName.viewGdiDeviceName); - std::strncpy(ci.display_id, src.c_str(), sizeof(ci.display_id) - 1); - - std::string tgt = WideToUtf8(tgtName.monitorDevicePath); - std::strncpy(ci.display_path, tgt.c_str(), sizeof(ci.display_path) - 1); - - ci.output_technology = static_cast(path.targetInfo.outputTechnology); - ++count; + if (GetDisplayConfigBufferSizes(QDC_ONLY_ACTIVE_PATHS, &pathCount, &modeCount) == ERROR_SUCCESS) { + std::vector paths(pathCount); + std::vector modes(modeCount); + + if (QueryDisplayConfig(QDC_ONLY_ACTIVE_PATHS, &pathCount, paths.data(), + &modeCount, modes.data(), nullptr) == ERROR_SUCCESS) { + for (UINT32 i = 0; i < pathCount; ++i) { + const auto &path = paths[i]; + + DISPLAYCONFIG_SOURCE_DEVICE_NAME srcName = {}; + srcName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME; + srcName.header.size = sizeof(srcName); + srcName.header.adapterId = path.sourceInfo.adapterId; + srcName.header.id = path.sourceInfo.id; + if (DisplayConfigGetDeviceInfo(&srcName.header) != ERROR_SUCCESS) continue; + + DISPLAYCONFIG_TARGET_DEVICE_NAME tgtName = {}; + tgtName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME; + tgtName.header.size = sizeof(tgtName); + tgtName.header.adapterId = path.targetInfo.adapterId; + tgtName.header.id = path.targetInfo.id; + if (DisplayConfigGetDeviceInfo(&tgtName.header) != ERROR_SUCCESS) continue; + + std::string src = WideToUtf8(srcName.viewGdiDeviceName); + for (int d = 0; d < count; ++d) { + if (out[d].device_id[0] != '\0' && src == out[d].device_id) { + copy_str(out[d].display_path, sizeof(out[d].display_path), + WideToUtf8(tgtName.monitorDevicePath)); + copy_str(out[d].monitor_name, sizeof(out[d].monitor_name), + WideToUtf8(tgtName.monitorFriendlyName)); + out[d].output_technology = static_cast(path.targetInfo.outputTechnology); + break; + } + } + } + } } - return count; -} - -// ===================================================================== -// get_gpu_for_display — DXGI output -> adapter name match -// ===================================================================== - -int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size) { - if (!device_name || !out_gpu_name || buf_size <= 0) return -1; - out_gpu_name[0] = '\0'; - + // 3. DXGI — GPU name for each display. One factory, match by device name. IDXGIFactory1 *factory = nullptr; - if (FAILED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) - return -1; - - int result = -1; - IDXGIAdapter1 *adapter = nullptr; - - for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND; ++a) { - DXGI_ADAPTER_DESC1 adesc; - if (FAILED(adapter->GetDesc1(&adesc))) { - adapter->Release(); - continue; - } - - IDXGIOutput *output = nullptr; - for (UINT o = 0; adapter->EnumOutputs(o, &output) != DXGI_ERROR_NOT_FOUND; ++o) { - DXGI_OUTPUT_DESC odesc; - if (FAILED(output->GetDesc(&odesc))) { - output->Release(); - continue; - } - - std::string devName = WideToUtf8(odesc.DeviceName); - if (devName == device_name) { - std::string gpuName = WideToUtf8(adesc.Description); - std::strncpy(out_gpu_name, gpuName.c_str(), buf_size - 1); - out_gpu_name[buf_size - 1] = '\0'; - result = 0; + if (SUCCEEDED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) { + IDXGIAdapter1 *adapter = nullptr; + for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND; ++a) { + DXGI_ADAPTER_DESC1 adesc; + if (FAILED(adapter->GetDesc1(&adesc))) { adapter->Release(); continue; } + + IDXGIOutput *output = nullptr; + for (UINT o = 0; adapter->EnumOutputs(o, &output) != DXGI_ERROR_NOT_FOUND; ++o) { + DXGI_OUTPUT_DESC odesc; + if (FAILED(output->GetDesc(&odesc))) { output->Release(); continue; } + + std::string devName = WideToUtf8(odesc.DeviceName); + for (int d = 0; d < count; ++d) { + if (out[d].gpu_name[0] == '\0' && devName == out[d].device_id) { + copy_str(out[d].gpu_name, sizeof(out[d].gpu_name), + WideToUtf8(adesc.Description)); + break; + } + } output->Release(); - adapter->Release(); - factory->Release(); - return result; } - output->Release(); + adapter->Release(); } - adapter->Release(); + factory->Release(); } - factory->Release(); - return result; + return count; } // ===================================================================== @@ -198,7 +166,6 @@ static const GUID GUID_DEVINTERFACE_MONITOR = { int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { if (!pnp_device_id || !out || max_size <= 0) return -1; - // Convert the search key to uppercase wide string for case-insensitive matching. std::string key(pnp_device_id); for (auto &ch : key) ch = static_cast(toupper(static_cast(ch))); @@ -214,7 +181,6 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { for (DWORD i = 0; SetupDiEnumDeviceInterfaces(devInfoSet, nullptr, &GUID_DEVINTERFACE_MONITOR, i, &ifaceData); ++i) { - // Get required buffer size for interface detail. DWORD requiredSize = 0; SetupDiGetDeviceInterfaceDetailW(devInfoSet, &ifaceData, nullptr, 0, &requiredSize, nullptr); @@ -223,9 +189,6 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { std::vector detailBuf(requiredSize); auto *detail = reinterpret_cast(detailBuf.data()); // cbSize must be 8 on 64-bit, 6 on 32-bit — a well-known SetupAPI quirk. - // sizeof() gives 6 on both because the struct has no 8-byte member, - // but SetupDiGetDeviceInterfaceDetailW silently fails on 64-bit if - // cbSize isn't 8. The old Python ctypes code got this right. detail->cbSize = sizeof(void *) == 8 ? 8 : 6; SP_DEVINFO_DATA devData = {}; @@ -235,20 +198,15 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { requiredSize, nullptr, &devData)) continue; - // Device path is a wide string starting after the cbSize field. std::string devPath = WideToUtf8(detail->DevicePath); for (auto &ch : devPath) ch = static_cast(toupper(static_cast(ch))); - // Match against the search key (substring match — the PNP ID is - // typically a portion of the full device path). if (key.find(devPath) == std::string::npos && devPath.find(key) == std::string::npos) continue; - // Open the device registry key and read EDID. HKEY hKey = SetupDiOpenDevRegKey(devInfoSet, &devData, DICS_FLAG_GLOBAL, 0, DIREG_DEV, KEY_READ); - if (hKey == INVALID_HANDLE_VALUE || hKey == nullptr) - continue; + if (hKey == INVALID_HANDLE_VALUE || hKey == nullptr) continue; DWORD edidSize = 0; if (RegQueryValueExW(hKey, L"EDID", nullptr, nullptr, nullptr, &edidSize) == ERROR_SUCCESS) { diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 332a8c0..3863655 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -83,6 +83,35 @@ static void VariantToUtf8Slot(VARIANT &vt, char *dst, int dst_size) { return; } + // WMI classes like WmiMonitorID return string data as uint16 arrays + // (VT_ARRAY | VT_UI2). VariantChangeType can't handle arrays, so + // decode each element as a wchar and build a wide string. + if (vt.vt == (VT_ARRAY | VT_UI2)) { + SAFEARRAY *psa = vt.parray; + LONG lb = 0, ub = 0; + if (FAILED(SafeArrayGetLBound(psa, 1, &lb)) || + FAILED(SafeArrayGetUBound(psa, 1, &ub)) || ub < lb) { + return; + } + LONG count = ub - lb + 1; + if (count <= 0) return; + + std::wstring w(count, L'\0'); + for (LONG i = 0; i < count; ++i) { + LONG idx = lb + i; + USHORT val = 0; + if (FAILED(SafeArrayGetElement(psa, &idx, &val))) { + w[i] = L'\0'; + } else { + w[i] = static_cast(val); + } + } + // Trim trailing NULs (WMI pads arrays with zeros) + while (!w.empty() && w.back() == L'\0') w.pop_back(); + WideToUtf8Slot(w.c_str(), dst, dst_size); + return; + } + VARIANT vtBstr; VariantInit(&vtBstr); HRESULT hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); diff --git a/tests/core/windows/test_display.py b/tests/core/windows/test_display.py index 927ec79..fe81b2d 100644 --- a/tests/core/windows/test_display.py +++ b/tests/core/windows/test_display.py @@ -1,8 +1,7 @@ """ Tests for hwprobe.core.windows.display -All Win32 calls go through display_info.dll, so tests just mock the four -binding functions. No ctypes patching needed. +One C++ call (get_display_devices) does everything. Tests mock it + get_edid. Uses direct-load pattern to bypass core.windows.__init__ which chains into broken legacy imports. """ @@ -14,7 +13,6 @@ import sys import types from dataclasses import dataclass -from typing import Optional import pytest @@ -25,44 +23,30 @@ @dataclass -class MonitorDevice: +class DisplayDeviceInfo: device_id: str pnp_device_id: str + monitor_name: str + display_path: str + gpu_name: str width: int height: int refresh_rate: int - - -@dataclass -class ConnectorInfo: - display_id: str - display_path: str output_technology: int def _load_display_module(): """Load display.py directly without triggering core.windows.__init__.""" - # Stub the display_info binding — it loads a DLL at import time. - # Use real dataclasses so tests can construct them. _binding = types.ModuleType("hwprobe.interops.win.bindings.display_info") - _binding.MonitorDevice = MonitorDevice - _binding.ConnectorInfo = ConnectorInfo - _binding.get_monitor_devices = lambda: [] - _binding.get_display_connectors = lambda: [] - _binding.get_gpu_for_display = lambda name: None + _binding.DisplayDeviceInfo = DisplayDeviceInfo + _binding.get_display_devices = lambda: [] _binding.get_edid = lambda pnp: None sys.modules["hwprobe.interops.win.bindings.display_info"] = _binding - # Stub win_enum — display.py imports DISPLAY_CON_TYPE from it, but - # importing the real module triggers core.windows.__init__. _win_enum = types.ModuleType("hwprobe.core.windows.win_enum") _win_enum.DISPLAY_CON_TYPE = {4: "DVI", 5: "HDMI", 10: "DisplayPort", 11: "eDP"} sys.modules["hwprobe.core.windows.win_enum"] = _win_enum - # Stub common (format_acpi_path / format_pci_path) and location_paths — - # both load DLLs at import time on Windows. Use plain stubs; tests that - # care about the formatted output mock get_location_paths on the display - # module directly and check that acpi_path/pci_path are not None. _common = types.ModuleType("hwprobe.core.windows.common") _common.format_acpi_path = lambda s: s _common.format_pci_path = lambda s: s @@ -104,7 +88,7 @@ def _build_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34, year=2023): edid[21] = width_cm edid[22] = height_cm - # Name descriptor at 0x36 — tag at [0:4], pad at [4], text at [5:18] + # Name descriptor at 0x36 edid[0x36:0x3B] = b"\x00\x00\x00\xfc\x00" edid[0x3B:0x3B + len(name)] = name edid[0x3B + len(name)] = 0x0A @@ -122,8 +106,20 @@ def _build_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34, year=2023): return bytes(edid) -def _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\ABC123\{GUID}", w=2560, h=1440, rr=144): - return MonitorDevice(device_id=device_id, pnp_device_id=pnp_id, width=w, height=h, refresh_rate=rr) +def _mock_dev( + device_id=r"\\.\DISPLAY1", + pnp_id=r"MONITOR\ABC123\{GUID}", + monitor_name="", + display_path=r"\\?\DISPLAY#ABC123", + gpu_name="GPU-0", + w=2560, h=1440, rr=144, + tech=10, +): + return DisplayDeviceInfo( + device_id=device_id, pnp_device_id=pnp_id, monitor_name=monitor_name, + display_path=display_path, gpu_name=gpu_name, + width=w, height=h, refresh_rate=rr, output_technology=tech, + ) # ============================================================ @@ -134,7 +130,7 @@ def _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\ABC123\{GUID}", w= class TestEnrichFromEdid: def test_fills_name_year_serial_manufacturer(self): module = DisplayModuleInfo() - module = display._enrich_from_edid(module, _build_edid()) + display._enrich_from_edid(module, _build_edid()) assert module.name == "TEST-MONITOR" assert module.year == 2023 @@ -144,26 +140,25 @@ def test_fills_name_year_serial_manufacturer(self): def test_fills_bit_depth_into_existing_resolution(self): module = DisplayModuleInfo() module.resolution = ResolutionInfo(width=2560, height=1440, refresh_rate=144.0) - module = display._enrich_from_edid(module, _build_edid()) + display._enrich_from_edid(module, _build_edid()) - assert module.resolution.width == 2560 # not overwritten - assert module.resolution.height == 1440 # not overwritten - assert module.resolution.refresh_rate == 144.0 # not overwritten - assert module.resolution.bit_depth is not None # filled from EDID + assert module.resolution.width == 2560 + assert module.resolution.height == 1440 + assert module.resolution.refresh_rate == 144.0 + assert module.resolution.bit_depth is not None def test_fills_resolution_when_none(self): module = DisplayModuleInfo() - module = display._enrich_from_edid(module, _build_edid()) - + display._enrich_from_edid(module, _build_edid()) assert module.resolution is not None def test_does_not_overwrite_existing_fields(self): module = DisplayModuleInfo(name="Custom Name", year=2020) - module = display._enrich_from_edid(module, _build_edid()) + display._enrich_from_edid(module, _build_edid()) assert module.name == "Custom Name" assert module.year == 2020 - assert module.serial_number == "SN12345" # still fills None fields + assert module.serial_number == "SN12345" # ============================================================ @@ -172,37 +167,13 @@ def test_does_not_overwrite_existing_fields(self): class TestFetchDisplayInfo: - def test_no_monitors_returns_failed(self, monkeypatch): - monkeypatch.setattr(display, "get_monitor_devices", lambda: []) - monkeypatch.setattr(display, "get_display_connectors", lambda: []) - + def test_no_displays_returns_failed(self, monkeypatch): + monkeypatch.setattr(display, "get_display_devices", lambda: []) result = display.fetch_display_info() assert result.status.type == StatusType.FAILED - def test_connector_failure_sets_partial(self, monkeypatch): - monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) - monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) - monkeypatch.setattr(display, "get_edid", lambda key: None) - - def fail_connectors(): - raise RuntimeError("CCD API failed") - - monkeypatch.setattr(display, "get_display_connectors", fail_connectors) - - result = display.fetch_display_info() - assert result.status.type == StatusType.PARTIAL - assert any("connector" in m.lower() for m in result.status.messages) - def test_happy_path(self, monkeypatch): - monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) - monkeypatch.setattr(display, "get_display_connectors", lambda: [ - ConnectorInfo( - display_id=r"\\.\DISPLAY1", - display_path=r"\\?\DISPLAY#ABC123", - output_technology=10, - ), - ]) - monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") + monkeypatch.setattr(display, "get_display_devices", lambda: [_mock_dev()]) monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) monkeypatch.setattr(display, "get_location_paths", lambda pnp: ("PCIROOT(0)#PCI(1D00)", "ACPI(_SB_)#ACPI(PCI0)#ACPI(NIC0)")) @@ -215,7 +186,6 @@ def test_happy_path(self, monkeypatch): assert mod.interface == "DisplayPort" assert mod.acpi_path is not None assert mod.pci_path is not None - assert mod.acpi_path != r"MONITOR\ABC123\{GUID}" # not the raw PNP ID assert mod.resolution.width == 2560 assert mod.resolution.height == 1440 assert mod.resolution.refresh_rate == 144.0 @@ -224,11 +194,9 @@ def test_happy_path(self, monkeypatch): assert mod.year == 2023 def test_no_edid_still_returns_module(self, monkeypatch): - monkeypatch.setattr(display, "get_monitor_devices", lambda: [ - _mock_monitor(pnp_id=r"MONITOR\XYZ\{GUID}", w=1920, h=1080, rr=60), + monkeypatch.setattr(display, "get_display_devices", lambda: [ + _mock_dev(pnp_id=r"MONITOR\XYZ\{GUID}", w=1920, h=1080, rr=60, gpu_name=""), ]) - monkeypatch.setattr(display, "get_display_connectors", lambda: []) - monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) monkeypatch.setattr(display, "get_edid", lambda key: None) monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) @@ -239,42 +207,40 @@ def test_no_edid_still_returns_module(self, monkeypatch): assert mod.name is None assert mod.gpu_name is None assert mod.resolution.width == 1920 - assert mod.acpi_path is None # no location paths found + assert mod.acpi_path is None - def test_multiple_monitors(self, monkeypatch): - monkeypatch.setattr(display, "get_monitor_devices", lambda: [ - _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\AAA\{1}", w=2560, h=1440, rr=144), - _mock_monitor(device_id=r"\\.\DISPLAY2", pnp_id=r"MONITOR\BBB\{2}", w=1920, h=1080, rr=60), + def test_multiple_displays(self, monkeypatch): + monkeypatch.setattr(display, "get_display_devices", lambda: [ + _mock_dev(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\AAA\{1}", w=2560, h=1440, rr=144), + _mock_dev(device_id=r"\\.\DISPLAY2", pnp_id=r"MONITOR\BBB\{2}", w=1920, h=1080, rr=60), ]) - monkeypatch.setattr(display, "get_display_connectors", lambda: []) - monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") monkeypatch.setattr(display, "get_edid", lambda key: None) monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() assert len(result.modules) == 2 - assert result.modules[0].acpi_path is None - assert result.modules[1].acpi_path is None assert result.modules[0].resolution.width == 2560 assert result.modules[1].resolution.width == 1920 - def test_location_paths_populated(self, monkeypatch): - """Verify acpi_path and pci_path come from get_location_paths, not the raw PNP ID.""" - monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) - monkeypatch.setattr(display, "get_display_connectors", lambda: []) - monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) + def test_ccd_name_fallback(self, monkeypatch): + """When EDID doesn't have a name descriptor, use CCD monitorFriendlyName.""" + monkeypatch.setattr(display, "get_display_devices", lambda: [ + _mock_dev(monitor_name="BOE LCD Panel"), + ]) monkeypatch.setattr(display, "get_edid", lambda key: None) + monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) - def mock_loc(pnp): - return ("PCIROOT(0)#PCI(1D00)#PCI(0000)", "ACPI(_SB_)#ACPI(PCI0)#ACPI(DD01)") + result = display.fetch_display_info() + assert result.modules[0].name == "BOE LCD Panel" - monkeypatch.setattr(display, "get_location_paths", mock_loc) + def test_edid_name_wins_over_ccd(self, monkeypatch): + """EDID name takes priority over CCD monitorFriendlyName.""" + monkeypatch.setattr(display, "get_display_devices", lambda: [ + _mock_dev(monitor_name="Generic PnP Monitor"), + ]) + monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) + monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() - mod = result.modules[0] - - assert mod.acpi_path is not None - assert mod.pci_path is not None - assert "MONITOR" not in (mod.acpi_path or "") - assert mod.acpi_path != r"MONITOR\ABC123\{GUID}" + assert result.modules[0].name == "TEST-MONITOR" From 646a8435147ddf99c805bc493fec39adba5d11a3 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 01:14:49 +0530 Subject: [PATCH 23/33] Update display_info.cpp --- src/hwprobe/interops/win/src/display_info.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hwprobe/interops/win/src/display_info.cpp b/src/hwprobe/interops/win/src/display_info.cpp index 4aec372..6b0ef0c 100644 --- a/src/hwprobe/interops/win/src/display_info.cpp +++ b/src/hwprobe/interops/win/src/display_info.cpp @@ -113,7 +113,7 @@ int get_display_devices(DisplayDeviceInfo *out, int max_count) { copy_str(out[d].display_path, sizeof(out[d].display_path), WideToUtf8(tgtName.monitorDevicePath)); copy_str(out[d].monitor_name, sizeof(out[d].monitor_name), - WideToUtf8(tgtName.monitorFriendlyName)); + WideToUtf8(tgtName.monitorFriendlyDeviceName)); out[d].output_technology = static_cast(path.targetInfo.outputTechnology); break; } From ecd17bbc241f11cbb345c191d93478dcaf1be328 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 1 Aug 2026 19:47:55 +0000 Subject: [PATCH 24/33] build: update Windows native bindings [skip ci] --- .../interops/win/bindings/display_info.dll | Bin 502746 -> 503655 bytes .../interops/win/bindings/gpu_info.dll | Bin 642031 -> 642031 bytes src/hwprobe/interops/win/bindings/wmi.dll | Bin 681388 -> 683032 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/hwprobe/interops/win/bindings/display_info.dll b/src/hwprobe/interops/win/bindings/display_info.dll index 8a4a06dd3f06a3bdd9dd7e049f6f19addaefdc4f..68e98481be0512788f766473eb4a8fce11502d19 100644 GIT binary patch delta 91434 zcmdSC4Sdb@|NsAfy|yuIcCazm2g8z!3FX?xaK_Xsid?Nil(d*a>MYyhG}H7}Z5ixX_#G&f7S<;e^vf*R^MN~t}K66zf#^N zzdEhQ1je;~>a?b%-VlyW6Tc_wsyN5h*1K(v^R7PFZzcNu<#wO`Fr>cbYI9m&9T+9A zozc$*HZqC^i%J0@^q6Olv047kiJxpE%q_{=oZ&OnTEq($t(?#Q@ByFUs_~{-&t#`+)jAG5$#yCy#^RqeD$2m5;Iu)ya z#zrJiz0FZzbHqkOyY5%U)T<$Jj`hmWK4f}Z!eJ31>DN`<6?4q?&*-npUB|~BVT*U1 zk6Brt+|B-KrSvC`+r=Dg?p2>;d_=UZ!?onfwhUEQW`b~4)o{z4X|~knn2Ng-_dBa? zd8=AAQmR_juiMo|*y1uDw8pHo+r9P1tBT?sKg2uYBO+ZX1XPyDn9Xl|gohSK6RMa^ zh<9u?TaoEz-DIRi)FE!1;|(igL@JV0jN^?+QmH+HM6tEh?GCA*qC(ixogwLcRJ$D4 zi~Sj1(@yQ_|@ZH{=$)$y;#q#on&b?i#r z5E!3f_pcn=fl>Dl9REl02s)qPSs^_gTOF3}8T~8Y?C$6vc(XW;ENtCF^7>aU9i?og z#qF@!99N4qldly&2an1cHL7Jt4aN{WsZ$Va)*s@OEv4BqcJuj znGGOGWy8s)o8#0fD%BXTSa(=2yjcWk`KlebOd`i_PV*%8&GSRp3F`!_eKTano66;zT&H!3K>v&m}hR`t$6seiW2B@so6so!?G z+Ndl-n3-l_OKJhLJu@N&54F>%QXJ)~+VW7pWgMq$L(R-|=cGJ!sM~CgQ?Bo> zvI-b5S~BZ|ij=V?Vj*l>$+A-a?C~A0hD_Unsb9J~B(0Vi($m`b3{Uq}``Vvwq|bh? znmz9I&1z)gI$RD(OQ%pw%33Sauf;nqOgzEn<9g*Ji4IpM?o~}_-_LP1-tnia@~`F@ zY=dWLGG|6ODdMuwHq{=Luw`bbI58{TB;p;{T|J1ShOLnF=G6MsNu>q$n3@C5 zOzNoNL^m{MNX$_4Y!{m`H6p3?A;vzQ-Pab9_9hMPo7vWFTmKtphx4viuM2He1=S13 z#@5bSaj9-$a~$RD6OvYuL9t~9wXtRPu!YpuUkDx$V^i^xz0ndv(xy|epX0B%^}m*j zcNDvhT~p`h&F1-4?S)rVI5SovUF?$?)KU+qoM7KFab>(?Y(&Co+4{20ksM)-&y0^q zj&tm1MX6&glBk+_EV{$)y0i(@x|@`~H6-l=v>N=2xW#8Q-hW-Ps~_c{V;xh9)WIqMJ&E#O3(&;4jPkaOF1;G6vlml$ea( zY=vvgh?q*0$-Rde_(q+$)d5Y2wpa;a%Lu5f%Cr7dhWGqVDV2)L=pCwp+63DOQR|@9 z$=!?=l0M9wPIX|@{A}WR_wYp5vWpyH{h3|ws#9Cw7z)O-*#3T`IYXumC##>@xYjG5 zr^iyzF(hL2?PD!IqT0ZIW6r8I#zECjT^=BwuW$4$y#)K1VBBRMjJ2<@z^G@0Z#{3A^(-l? zC!6wIEbtl62DR!aWy#z(l43)OYUZN+3ef|WnzG8$*YPv${2`dSEZp zE$NcpHLPd&dlv+2#uewtk4trlToS8rNx@mN|x z+=&g;W!WTk1;ykfnXPnX>e%F7q@!s<<`3@ef9+F&fR!kP;>g!8IPr{W#QTs@JVjoxwI9k%mN&pwi5>l7c6psq$emjmXqsij}2(Ndh& z8-_O&?e(7F_sW|!_3`14+1swX6|O@Gk_NVS)i;d?TupbWQQdgDI4jHDc>Ety%er+3 z#UVhul(@ZYA)N(g&XqI<3uIgp8eD8l7fQr2VpZZ(CH_v$*a35?O z8O$B2v*tZgudSc1xnKTLD|b_^hUMkiYPrP?GKJhwHFr{@a3L2~(cg|(B}*)Nzs8$u zwX#SpW(_;DR@{aK=sj&_whOiBEt*1}V<;i;b6VOxj^m&l8u6_hsTUWQ<7cGa> z)t|broy_;s-@ETY`A%KE7-O5d`n_%Ds=79{d0EJm+PPiZjr5n3E9QRI;Vplea4q-# zuCIm4D<^YTJdz^hs1v#E`=6CEqeyT1c&z-eDEIlt-zqOp9>^^nRv_fjgSiEXv;AcD z9{q_Cr)1twdascKgD&skYMpzr%yxVC=!-{=7nAg3W5V=tF9qw}M%A`d`ME6n8jhzs z>Q6SVuBVI|BHqHShJJBW6HB*S5nA4MiGF5?{Qf6>{xh8|FaJ~);$f60#M`5X$V~vdWtu@m90Bp z93nRA4PLIHw;kWaGNGW%r9Y~y1>=Xv^PBY}<2zeE++3EQiYjZtgdwu_W_|vI&X(<) z%JOqip8U6yhsZvga)%|qBV@ov{nEsz*nk4yp$p5ZZv17{mbj6 zbg$KKOkOMpti`Fi{{57eLC>r$3)^e0er3u?dHH*N*el;yrmZWpC!tRF)@Q%oQ13Q% zsJyUNpFg#o{Bo`S^VAI4WUUIWPkObb-1)t}@YP9jDCIL6<@S7Sj<6JeR~BS1>U1Y_ ziMs7W<*4uUVJV$0k+<^0RK8~kJ5z?p&sXX7UhgUoFUuYFdb9}J!4Bt|e2?!!+_+ND zoi;`eT$x)hwVVj5zPzlaKbGlHX=CO5W%~TI&X$Z@_OU4MsHG2)6_)G6(!2XTw_ND` zo(tDkr&qSTv8*h_)2P#Z%^u%Ke^Oq^%^mgzb=1r)b0}S^CruwKKVGUInf^%7wxwnE z+@*Tw8HsZEQhol6&Xy-`+1sGJbvuU0{om@t9Gxv=zbz{^5LMQB@=xXH_1;`9>wm2u zdh>NT|0~9`TToT*;yf$tkFWJb855-bwO(&#ifs9{o;~v!x#cUpLguS7`YU}#W?LEj zmA*E!g*>!GKbtu*ENd~Nx15KSw-4iKi}jahJt^xiW*yYmugw}6)<`+6s^jYvx>%p^ z))={Hk$&W@=j6H1a{Fdg74p!6+~Kp^h+2ETpg?*}-vXO4o$fG7&#D=!JKr86ANoSC zr^m?F3-u>;yIk>wxiA9e%#am!F5u*q*>3X!{oQw`$=C&EGddWxmr{PL6B zVRI`8x#(kk%zJfY?mT_^dwYXd&NquKflf#0&XHFA&G$RYhvus#pIiL?ct81zkvnvL zMIm4RKp*qbXR>6jZpp4AgWlC!W*5rJbC-VHJwU!bCpY%<0YVO+o%_KThN$dB{lYdZRDT%N?`y>Pt4tf-L>e zk|cTdExq4YS#rc%`q8gqW&OAG#$QjBi)WFlr?3CInS64Ve)j8Rc|Oy$y#CEoa%QIf z>o>2jHYmwYDHaBwjYANeJtN*%Zl3X|@clggP*|cXLbs3|s zM3WnuS4Zwb?vh$5Yi2^AEh9S6<_NR)(Z}ttEgyYL&)DBp>dp0S`yZ(Keg$>kmt1b6 zS*#%7jS70`fp&7jOug@c$O`A@nM>u=JbmhcRQc)*T^#HX`gtHlxS`w@GOLEVKgbA} z8>l~c@L}0AQ2+Q~^Qtw-SI_CJTvvyOyTh8c)Q=u)Adi;U<)Ib>mzP&}kq2y!zO?C4 zi#u#h3)O;&E8Jo4H&+FNKbW@Cq2Ek3QgwqA-IHGs z@KZT;B}6YW)jh2vU|Tu8_TgwbJ0o}K;Q-O-wE(HL=3cDJ?0Z!!LuT1%)$NCa839iQ z=;^;SlI;U>7yrU>9p%v19_ik!e;VNndR|qLUF*~pKDW$P+Ws6F{TwdWm&%qId@)sT zcC=CBoqm#S>6kn0u}F12TlXW<+|(rBZ_8-$%00@|B{@?&hyVNt*jDWs= z`s$-?B3t6^;7*$B;oPRmIpC&*)FbG+f10WX!)%Szs~0tFu^mIY)3I%0Wv<9m^CJfj z^UOT^$W~7&cUXcMCHOt5k1XmDHj|W(FM$JMr2c);J(hZAtdO*|^s*ozNa~l18nihp zR0YYuxau%cr}y4|@R$*>+sv9cDkESEiU;5mdB9b7nb7+jYgji2ldT{i9a8@a0#d!o z9TwI^cN}XLI0l0|?71fT>SH_P)9HG~@kz2cO%FKnnjDj+r=RF5?@7})ky@0h_dMBE zj!D(iPtKADrsanH8YyH`&b+@JmE#)ZT7PdOWCLq%PuFN6f3K&1Q`|u2*VA_wca#I` z>6K4CE?=IkKXazwLbBDefz-i+-$4IJnLPrdJdg8UgGhSn{jnpvhMunZhSoa&YPU~&9uAmf65KL z{a($$j;5O(82+(dS-iENfWwbyr@JABE@- zTytzOY>LUTLp_)1-AS$Bx=xo~ zdVRjMy7c)s>RVd5$j=C{n$+SRm;U38=Fz|ZF3h*OY$+v33hjd8)|fj0?`}^Ad2aPH z>aJ4RsT)On`iYRVedM!MeEhrK;bv0z9x98)o|yP`p z&R^mHR3ot|Ig*1$ngs(Y{jQ(B*}T@K-?(0hU?kXEBi&&uDybdH?FiV^Sa1E;6Aj}k zvPEYGOc^D#@6@Y9p0LDlcvXDRl8Z ze&uSb==N^teeC)b)vz_J9;v64K3nB_BUSpm>)FdRBcpDmU-cWMk@DC{y|H_o9C=cI z$K6EU(@6i`{b(qg}LSLRypR*K743#z!h~8<+*r#M!+I6cx0LU zW?beZ!ngSN#5)7TgY}-oTs(=6tCOuQ)hXgTILAL=OXr-`rNxPN){APvLAa=Y40?qV z?;I0N}E3L-;QVf*!ju}}}w2m-FizHb2p@@|!$pbcapl{Ok@J=5I{$6Rl*I`o*?wj12+ep1=xqRhKSE<3fPw7rczOsHxZ7 z$p_tG?@6OyIni2{6Gloo(Z}A5EZ$a|lWcQ0u0}N8kF(f{51XqZxjO^ekH@vERNJ@~ zbOh{EIc4YjG^|WmM(}#mpGWHrQ_hxQi^@ph;56dOiy+xb zGafH5qW#Xgh4FrQ(a>)TVqJMLQaWoHO#(%9^~c<5*w>rag7I8m(Q)2W7*hj9|N3W2 zSt45`*oMj>3^*k`tyn`NeTsAda^Es1rsIEFRW(GI7!L1JiqJ4r5p zQ_XkBsa-0OWO*-Aqng>SYjqt3E)*X^d_75JOif+5phH(gpt4g?!-a>l#V zxCh_Blee(RHs;{UUc((Eo^HJuo4F*-r`Lh`hqFW2p$urmd&F# z48AbaS^jd}*cB}LhHc>;kz zmEjEzHN8u(7%q#rXTXHZYMEZ{5$n&De$>Q3bwquEpE?E#{LZcY>WDk+A?4$=IeM@o zA8>6wr#kdy70=Q3!4>w*9~hScO*to*<0|&DF{+BNHh6b8%f~sfqUXYt=4dY6EIWX* z?yzoGj4!H)-ht)JRLN!IauxBU%->}Usw!-?L}i{HPJLM%=C0$G=8rpy30>58ux~Zd*q~x#$%zP zZQ!$&Rh<48jkiNZms*X@RLDg$YH~+c3$BON#`Eh1qc~K2ET0HAW`+@^@}EXwn5Y|A zK3J7L|EF;&Ox$0!gy(y_!0a2PmIWOj^QY0Jx_G?m^uO7)KaJ0;i}=dN&zoC+|?$PKl``ZB(Jw6$e;D&? ziJig2&#LDwPjj!HLHDcTGhoG`S=ul zVWf_oHqO=&_2lGJMsQs*LRLC$OsFfG2M!2OHFi5~d{I|CDo^X^~5 ziTFZVOm1N`;`?dg`_^#y_K#?;uHA;Y3wa^aoUrd5GhS^<8?)9JUpE!qWYc5Dxuzmo z2Cp$%M~dolQ;`uDDLToOtBp4z#iOBZcxTByg!u&$u9Z0N*Sv0=jTAFw#x>)Wd&CQ} z)-~hIJt8`+q$At%%KOy#WCq{cNe$ksNAqHu37emsaLLGMA)b{Xm-4Q(5P?Gebs`$hA6M(t9aOTLdi+#S|{MA=>F@S$o5xu`L7%I`8-Js@h!Q-yi)4~UjR z*4k-IZO>tzxYO9&UUUn!^Dy0(kzu~X^&Cvk?=Wh1U?co=hw)Pfalfpz)2P&uz4ON% zMqEenm)!BAVe7=TNAi!xC!N?h7Hu;EI&(q~+HN%KERM?4+l)$GM8~?_exOTyL&A*h z-pi|bci16pwv2Y2e=wfvA|47&C0TqQXVZmo0ulA6d2v2MU(0~3rt`2{>J0W2(2zK zUWumB4Yn9RM~gXf+h*gr7&=*8WHjzBJ`X>Z&kp@cP`W$$iOk+y+!Z@|1aaEfWSr zZb!Pu9X3)$a=OF5;(2?4#+hGRO=sMvzvc0gX{wIt^l5k4JRI+;>g9FD@IIoZy+1L% zr9Y^ztKK?(XGgUasY3>E%DEPL(_E<=tN1;N`cyJWa73$MIgn6JGA) z<&Iu%=H-fB{*zO<0hVP?6mOW$gU zCpbYpzSU^;gcx1n>=twTIkLsbenPaAE4CPgPq1KL++qX|7L9`YtL%^-8@O#XPz5QeOKZVyBSrR5L0J6V0lR;S$N_5XI*|>707#D_# z4zkJ~qvdeXuIu{6YWHkGrs;>r&Y#p*HrBhodE4!Fo#MlL7ipNDb$vYh{bYPRT*Sz% zpNx~k#q+)TR#8=2xP#rLzCxic%EO+iz>UvSU(sCEmq_#5M6U5%!;*K~|JW`6$1CI+ ziK5g`PCsuLBiJ^-xn}Gf!L{NuH;j;xq@TWF^d2dC$@*)Jw?>MN_7j{L3q)nrJIBL; z8wtD1v{dr3tWy?E9h5dlg6Z>>X({Jp`M|Vz;&^-5%SgLv@(ul{X$kcS z9b;P9lx|hu%CuO0EOkvwfRCk;Y2h``ty0&xExNNCzpvq|F$J1$8-F&P>iHDgXj;^_ zn#+3st!YuuK+7y2-DSx%E#W>sub39TCwZ&Xm^FO=sQ|-m)8nR-#mCaqwAApiv@tDe z+bpZTfobt=P{>`DzgDZRs(rhx)M+gC0`J2e&kP+foqVUGz_jo}@>a3srp0%tKQ%4B z)z3C9zTL2!7T=M6URmsSR6p2ss^U{woM{R4u{>~>rSV;sYIj+LY4L6Jx$o3?*qiu- z{>3!;_I}%4mQ{CIzA!DmO?>ArpH$Q0J035ZmH^h@t$`hWSFwI~SvuVn=$^YQHB3uW zpU45GrH+r~!YbAKNY>x2>W`Tw-&x#wm*snJvD>A-G%daZ``%rprr%|mXj+(PzDDfb zQl2(VYO^h~JZxGj_*lA`mLMNX3)A8|Wwr0}sbE@s58x{+Rqv}3$6i+1ucqlapU^*< z7T;}Wy=n0c^o?op?fr*$Su#vZeV@paO-qEb*uA}f=B{D`?y~f_%hLKTOZ~en!FO41 z@Ia(M^EBG-Iqr*nOdiWV)8e~iHklUR3CcAszJvdBdY4IKlcJp-d zoN4mi90uKG>3x@_-CdSOcUh{KmfAkmyI0)qeL`S4b;dip!dO36M9PgTjMHO9OS`UI zglB*}=fu}di>HAe%L}HZx*6DG8ERTQ5A& zpBJ%m|9i%f=efXY{=QLloMidm1 zr-%6w^`a)O6{G7LZs(2$ne*CS`Wt#XPXnT%XiwgT~-pOg=Bfp?cJY(qR;H$F1 zHNMJw>kTnpgnas?Ph0Yr7?v4ga!74oW9KEt+!=J`y~RGB-+gJ+a)=Kj&vMyyYa}XD z%+-c(kW;5LL-34Tjb*_iwY)dqXfsQE9qPA<8s6a5foBdWx^+(8rCB0a$iW*8|17aa`fo5cWQo~w%-eYb zW{U(NXFBt~cw6icK{a^aOIvB&4{P&YpCkAZ$jR^X_P-;Z6+x4@Hc&rw$_$QPZ9Hg* z9diEayn1s*BJW?nGg96YKL;hSWyYx=3&>yZXEhhIAz=Ac^}RfIey{YZcSVJ zZ;77$q8YvUx5mg%#5+N6e`A)Vii{ki+^3>Xh0a(=w$I5M^eN4?WHHBa1x|JINUJt| zmA7?)*zQ+hGV?*YWRWp{p%@V4nPJu6w-y=hg`$7ZYIAy(rPZRm;fusxS>eDJW|@S~ zjjl^5^9o7N7@hmf_-F}bYTvTF^;w>K2~UG$*ao9Rj%Zf3cs*sgqt8+?K>o7M_;{(9E88qH zI^}ZP^KPy&DVL)mH`iF5%ain0xyDh_wPrG@Hiw`27ELW7^%a9C*2SE4M#p8u>9Wq4 zy-e6;=Z}o4%f-Vj8-2u}wjJ(SL7rQo_=x82uzLoWPoyej#PVz@HNQQ3VDQ2Dd9#;` zNbTH?I0&{#*hRuF6DpW=+jHEOLR zPH?XA;yU8A`NG(?jyU&!VFWtWFnwZqNz@gx;;g*< z&4TZcbj>vO7jPT;ag5P!i%5v7k;(guK$o*0Tjp#^VA~#hXvCA3uDT5;{5fw!NcQ$vd8$zCiL>rKV<+iabw2;+I14^An(ZJ?zt4=xMa!zI9=UUmT=hua zr9$z(kY}IFo4s2c4V3u<^Tr<%lZ8D0Sl-#gqF1?~7Zb{MixUY(w-aKx40_neKEYec zeF?_TCqz4$onQo=6hp$ho1SWOyYC?mkn~n`HZ!<+f{}7kbd)6z<*hj>j*6fP%w?Q9 zfrORx%lqOt!EZqW`kHl^8$;N4eT}bOVqM4seSC~(`WRD-#bZHpOe1f)g15vOM~cM* zA#cU`xW)D{B2I~RA$@&~S|4NdDe-9JyQXoA=j3(RMiX1zqsneIH}v2iu+XUVIOD`A zaeqh#$y+<@y>WSwr-i==nbg~~nlZv!*o;nR#KR%szQ!MW8y_g+%3eO@pYLtlI3tpS z+IfsrbGDc9%30j@_w)&v*~>U|R>X#+dyJm(=-A6>`Gv%T@#brBmBa?6s`KJWe;YJWU;zv2Fi zFw5^ZI+PM7`u?&oYuXy8N(pn4ZzFgDC$=?uxe4>lEsLdX-n(w$lCt@IMv9ayz}ChZ zDZ9#?)&}1Z`%;Fz$P07Xta@=0-QXXZS2a*i>^PqjqllWwKuP=Dc zHb|v21LPB&Ao&4lNYC}Q>9XwVgELj!-~2mx{C8KN*gyF%;=xE+aUMQzu}u$n_m;_) zY8>~Me^fr$k_nm4gAN9AM@!>KfLvKQRN2;Z=Y}n?rLmx#TvT~z3v3lVwuf8f4K6S1 z$)Km7!iPDaZNu`?D@eYIx_P+KzLIPf^gd@YPgcp`ym6Ien5a;p2BwU#iZzUxL9%Iu z1J%vs!Rp4EAlbX>HIl`9ib~yT>!sr2>Um+o@;)Kkg&A>`8RDLg8;;7<+U{{idLEGnmse%Af@=~n6gF%npXA0=FEU?F~%z) z^1uVp++t3wPWYqhxn631qUTgnTypU*9t$3D*^X1WdM+PO8PDX0)sNx>Zd5fgEb<}w zT~*_-MUD+xHb_;c2D0K~M*k|ZZBYLw$}AlpGv+AEo?AW#2N-*l<#wsX1B}qB%IER2 zQt$US`d5{G)%-u(@uy6hIZmnEUT8OIMHt^DMP9^?lZ zr>e_)A_fiNbw6LbQ{SN}$ACH1;&Jo}=aFgUuhcbQ*cXo)57dx7s}`MQs4{~Os4wa8 z&4}W{v&O6%vadZgUcIddE}@(nz>Uc*cn?%gB{Rd4$z#NLS;Q5msrd$M!1`^J*o(+P zs91a()BEh$O4$wPRN3HHRNTF{V|H0;+QX8(G4~Pk<#_XPhYI?O3c3%m-3;0#AJS+` zX7Kp3K*=>IGQnFsY=jEu2zbZS2K6PXjf~4Mk99iM)3**w^E#vW%QJtO%iep{p%x$i z@)j1#fx;*Xmk+;NOD6EW9OIE%^0hE+Y`s`NkBjHCPW@OvV^_HBlxM9iE#kh>b=~g3 zdT#d?ct23-w@CXUiu6_NE;B#xsXEN5eZ$GW+~0$hpx&<@RyKu5(kgGh7yhK*Lo3Vy zDy^XM%d}#ZXQO`u|ArZ)mA#7>F=vLtD zb&u^!xZ};c8*p7mx`l0m%3LHEQPe`1v-PkvMQ zfoRg*@Oju{TbSTsRenZO1$(Lcxh|#d*Wzg*SlWwT^rTQfdZ5r8`@P=6%}U*8XxQn8 z@ZrY=3m@?`@+4)>#dx%8^!W~@ZY#kRmZCe*fRoe_iI3{YU>dcMul%@({X$qv9LAQq zTY*NP2Iw)?_^ye3*1lvyse9%N|MOTt%&AE%z!yv1zIx{5Qg;w_zCnKH39RU368_^$ z-D}`9esmE#@$Sa>zvQv`zkGMz|G&mFfB(Ayw)-?9e-gbIpEoK}cC2ByR&l#iLO6+7 z-0oB0Ca8?9eW=IY$IHs63`4MuQ+99O+g@Hq+0CHLFT9#ZH}i65FPG)RcK3rA6MZtq z`{*;qD?dT&uX-`?Z+g;*gl-{2B2L5+C)LW*>Ka|b#j>acG zqjE<)yU(!Rk>O*v{X^j=u#NTFUxQ=4)A&y@9`nf??W3ol?K8cG`CiWParmcT|H`)E zf1})<+rIW&bNL&_tKN)?Rc|jM-wNye3%jq+-*wCX&oaz^G!Bn|5r1=h>2K-32cALx z`(B?V@LEvlP5<5Z_`k5H{JZ(TNWpR}P*<2|M6P@J?-l%?rtJ~`u(1cH%KVF% zx930qf4FD=qQYD2&6Cgk|7VW>CBJ_+|NrgA+5g)W{G0f<=l|b0{+Fid|E2lg`(HRh z{;$seeQfWK1heCUmY_~B=l_ZbYkBtmAP*~DhTs0drtRi>v8RuDW5>eZ1-RV{!Mh;R1ACdc zgVVeY<6#R0ODnnE7ybVmVE+F*f&as}?Rg28OE5Grx|NW^^(f4;gMY1^WOluqNOh;|IGhMX(&UDs}JJZfxcckrF(VYe@ zVgDTtTJ*s?(rl4dv%Ks6Rt?c! zhq418+It|}a!B+#lpPUS-UH#5LrPf{-i*RBF6%_L*WuP7<2`h4MR0l@%8sFu1Aps9 zk=LQ@pvv|hT;2$wbtZd;q3j?_@E&ZpYOs18ZXI>rqc2L$oLT_UUWc;7&{}r*sUu7| zBzhgnj>|-^gQd(N#p{sc&B*q$)$4Fyme--so8k0w*}+@JQK|q-ENQNBeV829FiSlk zCtVWZ;e^KC&U!hzi7{ok>=kD2nfPU^y%Wx=MjZ8Ey}7}A{!Vr)FK}GEE{bwWtpxrw zT+{labKn6DG;K6G5q_-+fBhOA-Bi;OA~mh^R%!C5=xB5fJb|~wvFH@|2C$*EW|}q( zB%l-FouEIu5N^?&_Yp%#L^ap6kzfQm3GT&*b!|tEng+zIuB^tcC;1#9_&|k zxKa;IJBhZye}Ri=jhDw$fd3El7;eUEXA3$Cew^3W;pjy82Vg}P!gFl=337BcyzfCx zYi}n}ggEv%!-Xz^vj;Ln$_dWnmDvci6W%qL-Yb82=umo$PJ|!ejb#=(8tyfM9-|ZB z!O!s*s+A8s=y^J-H0(c4)7GFZu>C{6Xq8VQ8-CzB{sKBW8V)I-$I1z=!RwtfXe<1| zP8QKN{NWS3=`p$l-uDxuhc1G@JfLZj=p6XlLktw!39l;RC+14SHBV~VkZsbgSrJLU zGT&q&gh||;T~WKIsyI~SpkZH1SfVg9#}aGv1^IIC$zXvH6c5>)_>`9srgq7&fm=QJ(w5W@&R4J_y+cpeBv zXTv2R9Ig1Z5=I4`0&C})d$i&QKomOKj>rXVNjTxlpuKYXlNXJkGdc@?>;i`wIvYL* zV$mgV&_#w6ZGoGE{^%&UEf|81hI@iUbOJmWj6f&CBY}N1i6q2iFczHxzXg)eS@24b zjCR5s!Bli1d;p}Ni{K}&Fiq%0_ydrI&W0ymWtz|_@Q+{tx)82(jj2Ifu5tX|Lt+_; zD0uyKDpXEzwHr(g+6wmvd(esS(!W@wXeWFYxX>l=WpD%2|5~n2i!zw!zV%D zVf^8%AoQ@E0&Y#a4}_}>UX~9PLbIY1;h9os&C&dE0c{`Xj4pyh{rRN~+6q4d2BMST zbzlVA3BSM(P?MA$7UhIC32lKN18L|)_(MA%Ge~5^i@+Ro4*VUMi*~|Cz&vyjT&}#( zve6d!ey{)?4UYl~(Mj+Wumqg~e+Y8W+3;ep44nh>6MStY+U`W`2WvzhH;6_`$OU zt@yLbg5#e=4v9hhYB~a)2rskQhy+lXB&wy}r61)mnl|OtDG`Ew`>Itn9 zXp6SMH9>o{6}|vEE1&v8>kn+`L^uZ|pcPlJvH;N*csfW#XTi1xj1W2jJ_shEi{OtM zvH;Q9usxrTEE0uq5tyr-;1ZCHR$QquBZRiV-+-0q9C$g%M?2xYU<7C(p9Oo+N$?b~{|Nhk3Su!hOhyj;9VkLO;Zxuwx&*!sTxhMS&}x7)Xe-bbV90_PE+zbp+ z{%|jlh)#gVff48=_zf@`oeeJrW6?QqE=W3NXLu2pK{6Rytk9~0NoXtF3`|8w!-qi% zx(L1uvXp;Mp;ZTSlt0`R%vJvIFfb3D2)_if(JAofU;#P@K4S01aF8g1$HuWgqm$su zedsmX0x#`L_VTkX5aG;3f$S>2XE^9`P{i1Dyo_^eCf>E`nXahAx4t z_h+r3?N-FSpg)Nycn}zfPJ~B;M067T3K)S-fqwv_(S>j+NJ47^Xatyqj)ETqDd+@v z97sba!Lz^&bQb*e0Oo%ti5wD9k1?cZ#rr@ux(M$5I13P+0RIY>p-W)Dft;w6{~&ff zumxQR?*enTQx-l3=AcX9eot^Tt*2w~sKKl)bjo0k|I8t*Y!caU&`|bmv;}?~l&Avm zreQ2nbP;?FEJ16-@dt&j#CQabubg1 z1+NCy4a_&Z6VyQ$!8M=ZSf?^8+!z$@rvkV&ScZ;Sl6^M~X#H&}?)#?t8LSqG}o z@Hwzu`M~wZvFD?$a5GS{g+{|2!H|9I|Ivs(;0zfF@DpI*K3WYg1W^oE4txYepo`%4 zFEE$rXm}~8gLc9@K@hqSu93vw;-NuSxW$XaK}W$kAQG+k+>3U4$q<#0kgrf7+5(4z z1!ybG?|`(R1K8n6Fb{ha+#bwDN5h|iw)o`0E5ST^?1Z;~Y;+-90^0AQE;!;ZBT_h~RRQ<|FhcpmOF**nhf6?;@`uA-r!19O z;YctR9R)uCuHq97$AO#Zgx5L#hmu%=QzASXOhqTbCqWLn1ilCg(b_b63rf(@aBwOY z5oils2b@7$;ite=bP_xTB%@Q{84Bnucn%o7i~Tfo*BM1Htq@kV42Iis*;XPm> zx(E(UV~x-QD?A(cqqE^9AQYVgUj|mRmd@4;!YONkL%}4p6^^v?F_T0T+!Z9Dqv6R) z@1@mn8n9r`g69G&Ive(XgEc}07Wiqf0G$K}OlMS-9nJzSwBo8W7*Vtp{u!)6+lvr? zfE0q3z_lIBIob-}2il^eVZQjS%|R!?gFzNL5gq~Rpp)R2!8~*dJOkL+OS0glAep1X z32y=eu@}Po9nAkEcD*7J_q@p&NgY~ndl0EMCHQ@C275M~2lCNQ*bUa8wG1v$!Ai6R zjsl?@i34{6g&T+iCj+g3#=#fBnaz})$qEmd$!a8Ffx|%{PFA=v$fs}=JOUKqlLY?; zwxdg6H#n>UWl|2fR2(=IOhsE^8wjL932=XKk(i0_91v}%vTQ`nSsbIPVz?FPjE;iG z0vkFBUI47<9JuydY)Z->ZUyR~qv13ViOz;Mfr0#&Nrmu!;G_{n@L7;pMowfERez>=S- z01gEU(N=gQnEMk!;k_UnT?7w$pUT;w65&c8;DffntHF?+^bCG(9w#>JN$?~vMC}dm zd=QV$p2zXOmV}Lj6Fvg^ql@5Dkbu@chueV#=xF#^P(mY;;KWZk%Fv2SK|b29Enr^39uh_H8E_R{ z0)PG)y`(oe@Me%t;|k&HAPFDsb9(*-3k_|7=YVF zNaVmPK{$`~>(Va1)&ZzY8q*WWy^!xLpN8{06M(5;*8K%ft!KD=qPv=IEl`JkAW!4mcVa)OB{Nc1KghVS5@MvGgnpKAX$# zMvqJ2-plAEg%jYHzzBR&;B1hHkK$iJlxj3wZ8-~;Mp)r4pff(v@N|%-8UgPDbI?U_ zlNGF+y=wnQOb4S?58&TH3c3WYp2x6Lffeosnya92B8W#To(9^gvhY%nphgrv4zg4n zxcW-U&;ctP4F;+>aJu?mL?bDXMIsk0pnwzp1+>Mf2yVKHb2+V!f?otP(JAm|kbr+7 z-1IvtKu5vT!6bARyaKdW4T6t?2o)37Rx|2o&5mdYI;+C)Bfv(1M0gsQp#s7AU=jri zVgEH8erOBa1gxQFQLy@>TvOG&!Xv=~8kz)Wf<)|D@EQ<{cET5deT{0x_be!IlZ+_1 z9VkRc!|~t@IsyI$G$&{ddhdfKGyEfteJ@g1-in&^d6k^#m%UGB_19=QT|h{1u2* zKCrfdvcyr`AB;sO!taC8`_%P6;w+fNu$RC!H!{3vD?AL$P}2dw0sPgG0yoKLgjB_F zH;_Wb(eQL|7<(4H4{Sjf!EWG0YnxbC;3hg6e$38CAVCx1m%te^Qs756Q!!VxiEy(5 zPMzo|nBRPB{n176j4g~1It!i$)=)MZUIr4dJK+N$P5Hwsw{k=%JG>VpqwPhACw`#S z3|AtY3)ZM>b@&$$h`k7o+QwGO&?#2`LC^wp7F=;VyB-x=;HSYw$|k{?Ae^#Ua1l6+ zzv8w((m-@H{N0bte-wqCB&zLT{uxH~zZ!J`RtiVMS>U9q%w!seEC ztDeC-!5(xWd=R9l`wRFONJ5vu@9pNSNZIV&9REv5j3AK%F9$Xi2wo4`sz7k}pXenz z0Ur4?r&|1z;He-HodQSh?m@Uh5DoqOcX707g(a1^y89r*Jl00_IUbaqMAwjZT1n09RFm;6}eN1*&IoKVZS0 z0B3_esxtT@Sc2A$@XQfJ?NIwaq8n&VMl{?Lj3!V5{4f}SPEIsqO4w&0TpzgDE?pF|1?^}j4GMc+fExrV0d~1$($8FM%_U(+G4H-2DVwJ30ZDC+Q^G0&f6A(1muyv|m}J zETSy9`)~9{Ei_pD>G^n701g9ADzn1P!FF^M{2+)_J%h)A2y_xW3q+x_;IBb*bPl`@ zwCA3}314?H|M}_$qnP9Pl+dgUmjw<5C8{#G0l2CvgWG|d=x8_&oIxkR6G0+zQs5b2 zjj9;_5F}yGh8KhFsuA$gb4(|XA1vUy4!4*rG0<;Al4wj%3;Q}xh zT?p?1qm@4#d7ciadqQ|92uCNvb3imY8xH)Fb3fVw$AW~-?EeXf7eOI`Qs99X*jQ9$ z@N5vzsAR)yKrGq`?*%hd#c->O%rW*Tc-19NU`&}4E&}_N4}AY+MiifD_$A;{b-}rI zJ_1!x*#8O{XbU_F%tR-_OF%L@2QC3q(TbnD%5*3nI0qCFRPkDn&xktVEuaoQg>bEF zOfA|9M}TEapFIlkAPA>G0z3}XK_|f*!G2X3Zgic7prhbaum+t4``ut((H8h=une69 zuK)|sPPp1l8i%&RFM)h?3Ow&7^M8|8XOpn}#k`WC_)#zrod_=mY3Ll7ziy!UGk?+W zEO3#sS@2(O&huzZ<3BtE7wJGY93rGP1Z{y^fMxhZ!QX)(;y4BK|E`o;dsP6o_(^RK z!=gA0tVCPkzW!2+-N*>R$-s){4>@R-065>n$I)rnOW>k%Qk#QT+_b#Zrm`lY;3vUY zbP}8flI%ETAwCB#GIHSUz=ke_s|HHW?NkVl1542Ae?(Xd)}Wp6VK4(-1YZQBiK$hf zQD72UaZ}J9pD4ID$U-N;_GkDQNFoXDUXhkkAOVi9B(<4n#nVADK3VX3Fali&p9Ev^ zDS^uck;ZO;n}b+%6g(cxL8rhwzyehkt{2R7Y+?VmB07UKGNR%BU<5%E;UtiZRy-ZF z#U~5?0?b6`zy+Yc3JMp4Y}FvRLS;q{ZGl~2iL%2DLKq>|Qxx1Qg!x}UMgoaRAd!p| zcoERhIdC56&m249KnuNN;aK2UU_&RsX`nqi3$|7v7XFI+g6JLiz{5djbRwJqZmQ1M z5g&o8B(mYfVCr@%hQ9@4(N6dWFk}P0gm-}ibP;?SoLo=O;0jf-p)GK2a0YFKI{+6t z8n%HPVkW?Yfqe;yM8r#A2s#Cx4Mw1|;ZfBXx&o#EZXU|0(9kIO1lW(g1b!uqpz5v& z_N$H$H!T);7C4MO3w{U8-9}9KGoaC+oa)SfXbq`_(i~bcFZ8yh7+K-pBLmg3jT67O&g__J0hqSY8Bj zc|R#H3h<;lo|}19qH>wMD_$OSF7I#gT8<~5_b+&DX3L6rKg8<@r|)9kkMY`x_S9vg zc!6JG|Wh>r070IzQ7 z9Nw!n;IKi5c^}Se7CMXfw|T8Z=ks2%A(cRfc)yER5jx8I$Gpy<3wdwVh|2AAJQ=(n zYUB*^WPC~OSO{H6&qvF9EncyM=DjX@5nA3G@XABWdskjN(V4tI&+9Ncm-ovqqVh!) zz+-rKaV?ANdTz2;Q)oCwU~I4!oB898Fc!rE{EC z>dlyQ9j=Y%VvfUa+omdKzH^bhH=C~u-1xuw&RQJ^E^^YUx$Amr2OLkJl{bR1?ILFW z;eE^^=M8y(=xL|U|G)QVo_5kC{+9dxfA}}Hc*fy3A~9b1tSNx^#%js4PW29DYoQz0 zLvwn(Zq4-84k+1LyT-piYidw=v0Kysm-qk6_xoa}ZSwz77xl*yrNJ*i2)q3OL=YLwS(7QUO(~*IzCT5UafiE#H%;2al9Vp731|judjIh z#VbkumgltG*kGM=%o`dsc*4+ugU5RA9Xzhz;6XzN$<6Y|-q_%T>XwiGWp1KxH8(w3 z@x?`?Las~Fljf$^QaOcAs6yet##GNI<4!;C+(^>GJx*08`q#$ldz|LgoZP=Qc0BAb z+fn3{O8$r6<<2{0))-xtlSOqdV!gNe=H^WBREhkn-v7sGnby}$IXoWB9qV{+@y#t4 z^rYnct7@EZE^|Vs)Qu;crcR?%YTOAY;uM}#FP(61bG)b2=@U+CC+DPUdD6M0;!`J0 zVcuCM)zFhpBWL4DHRq&rQR)Y7U@~*=*7(?6xTzZZw}Uz~Iw@8CdeZ6QzfQWh;=O;Hg0BnxqwYQJT;+89 zM=d|?G^jhx4P3!)CXKhHzeDf2;3KJI$*UxDKgJ-G%?CdS{#qogM$EPV(OJ zgc^Q^?dW+z&6W4wC)CC>P7|l_xH@#kx!TD;uEJ-XPEPE&y5}sjN4;=dtv^fgImgu> zXPxVvtmEqPb2M1=xEgxS>Fi`4S9#~0ZcfH=b?zLqLq(3OHs^_lj;njmGiy}y<7(r1 zr@mACm)d{cxvEB`<7T^bQ*~}ylfL}dg2uk~&bGf64E8m3e)(%b%vaBeo>=gzFU^Ua zSn!E&t5f*z#+cW4pt_TPR*kIb%W|TpRZ&gfV-@pGn`}O1fE(~0IIS*9_SJWe zFb#jQ?*>pzzmF&B&Vs)2#tDjXJQ+$`UY3PE)%!k~}Ay!_)AVSV0%Dk*m!*ZT-tomY# z??PwHX;qNot6$?mxAyy_H@3{BpL98+&Zqd=HXGrlnMdk#Xwb@cy{s{;6+Mam_joJcMY1OE zX{xZ5uUvM-?TmgJO8&{N;aL-gU9+zO0{Iu`nJ%wra0!q8AO0+tm;aAH$MEW&DsF&A z*9FIpt6`V<(pu%aE6OuS@-JS2!v7@fMocPPbX>i4nXfyCjjGU^tz_J3CGQMly<7WQ z$nf@fYhPNOkUMtPmZbb+f;PQAW9z%EeG{Y^uWaM%AUk|=8`kGId!Y@jn16QTFKv90 z%F@1dJNd?V^WS2^gtT|Ix3uc0sO^C)kBU-hb&>%{UOpNl=keuLGSn|zg>ymBhi z&6igGRw9{g>3_XGv=}#d;y4uL=(DNM z+m{~FT`leI`=9DjD^N~deY3B8;A1hXjx7T}SS}Ui!uZuI#qw-Gp8>o@peT|%0Efu}XH%y(A$b22CqY7{Hm2)FQ)#p8Y_sN1z zFfkL`B6r~*S;*B3Q=FA9{PPxIp1Y8BD+@2U5;RVnAMAK0et-Xwp0=SRP)JHXe#TUA{%z}GO?lo2TB3iS}x z^>$Q`fxKC26>rs_B$8V(A)z`nfDZ1qMU?^!#WzZ=I3m1v&rPoxI0N#l(Sv-cb0hx1 zC7iM*>PD&37in5TydzZAlfIgPdBBibcaN`r-~;4z(|%`=(VJEGK{V^dNjwK6`K}Ax zg^U@;6UdyK)VJdJ1l>q^Y4|{may z7~NidDLKAIZqSaVtt-SERH}T0jg+%p;=fEhS$a+9z6xsgU|)mayV<3qAmIf2R7h0YZ`_D1 z_S(4$Aw>z~2T9=Ap7W4U0;#DE-fQjVTPjI)mo;}WE&hswOmUrRmI+9?;f15jve4Z4EN)CfbeO zFOIMubw(SKs#Vq-tIiJd)eE*{p~xJG&MlQyY^bk6(rC>bHCGI?SUBt+sw>eo)S(f+ z`bpc7w1!D?n1v&*C%|blY&;hsX&;m4S{9DFo_^@&+7p~2o}1;6Z~rbbm-CVw@@AhM zgk&ZhN54WmC8XrM;|?*WbTakK2->hSr>A1wIL^F~${6lzP~{-V6d>KQmpXKXzm}hi z{*$H+FG6qK^P~bvzCFLE- zp|A?sM>3_VjFFt9+{50Ruhxz9HTLD1;jv!uH+<16RH&Rk%^OhlMlph1s5K^i?4J^{!jDx0e zD{zXAB^)BHA(8&JXC5RRwMjLub_)C1WHKbvVmJxkrr__``%9LL%7aI*y^ z)?YxqENk0(s(3s@&BOKdrm15SeDwm0S?E)03T$L~uW9~0$jA)U=YD#{IW)(H9B3D( zF?tzCFJ#PhOh6AYjs?i0#<2lOemOK!4x#DSdYrMYUy~OervJ!zr!p3|BTF!#*oR?Z*tU zGVF$gr`Vpl4K=YmgCLoOmM8U9LoCm6S!*AqEAK{MYD&jO?xH6?Y|ns19#B~i_|nq% zYHe4w&V@7?f1LJuq<3VgL$iG~QwEj5c#@Tn*lyK#4F_C@Cw=9U^|GC)?M3v+-72di z`!h#tJGvc`U#PlF@uj6yZ7kZ3_JU-5r5=*#Dy{A4Nl54`-PS2xnuxZe^B|cIn&|gh z+tC(HX^yW{_(Aq`w$^s^BS_>cyM0reX+m?vxBMPR&SR{ls-9**?K_43urAI@T>n7A z530&@*n+MXi?+*I1j&0$t$vK?A+7CbqvmYW1FFSCM8{}tN8f@(epdO{(5`_?MBCA> zkW4qaKx;etm5}4AP%>ZGLbM$nCS;$<{GHZzwCAOiTsW2V#3w7)%I%MAx7~d_+A>qGN*BmzOnAUcZ zc9+qsi&c(9bF{Xj??N)psN}uYhpE5-xcR7@Hi8mmHr%TsQ z`Bwwm(yk3#eZsO#(ZII61&N+jv#0vfl09uj+fn(c1&?}CD)6XC?vyC4zz#^(DHVB` z%`4Bh2y#zFY4mzX=x-C9skI&50m=MVEtYjFw-aqgGaO#TY5qYZOeQOY|Cy)ojWDV}PgFKBH?iy*OSW{WPmMzkHh2U6_T`4z40=n+WPW2RP@ zW{9?2YYi&o5LwG2z^c+~bT}Mrf5$IQv6)3u`Q zQXYlmYa%C~T59QJj`iIoFn+Adn z#viJ+9nFIj9@GPK`f;u8XsgZ)3l9sC>XkRuyT1g+tM>+^_%RjgKoKXjPDpY+6*zCA zW3;xTt0B4B>a7`6{&%hIXtNtQKEE>2;ac0#mmq~jrf>YBwH}ubkb0lic62o) zCjHR;n7}BQ`bV63;#=1IM)p{Cf~$5`oRzrNLSi0AouBEem-4$=u)08#t{iIo$zvv) zn5DH{k@b-L@6BLvT5CJn;U?Do&I|^RYHde%LZU?~m!Ts4f^MSiXg5fa9v)=xHB)oD z(7E0yf$?pub2DQ`k*f3r)q6~9JIU`tj;W(P*tc!Ei?*W^Ao=^$L|OL(t?g*F9_)ed z)LM!5(%OzLg5>|8BDawFTdnPAS|-Qq5tS#`6N9z3qc1@+epH#Wh*rBrv>lx&gahIQ zqT95#qyAfI(xa;AIbT}pc&+Vdkq{Y=)shAN)b#Le?qbQ#?kz+YC#`y!Y1I!(V7ygZ z^rUYdQGK7J4&$`8OW6R)KVq&GPibvO+uhFb_NDqr)}5`j9sL%Pw|n7i_W33M6KMx0 zK#I5})*P`t%+>6+5*V*t@D7f;?{yobch}lZ5`#oblC)H}OrhiKD}nJODZS_pzp4Gy zBxRu1c9NBl%=7w!F#Vj?cC`DQ3>n;CXzJ+}5i5c5A_^c`KdH&m3u^WjZ71mk$@@w7 zk@Od|wxd5nqQAw9=xUmx)m?EIFJdAj^pmO^qdoJrwv#x0XsDy{Bw6a%0DsMtZY40D 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

mrmjZc`{dz;zW4}z1M}AvC8j51%cM$Rh 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 diff --git a/src/hwprobe/interops/win/bindings/gpu_info.dll b/src/hwprobe/interops/win/bindings/gpu_info.dll index 549df85e1e4f83c58b325ef4f21f67c4d2efe1f8..2ff14abdbea3f922b96215e0d03110d80eb52b22 100644 GIT binary patch delta 63 zcmaDqUH$!Z^$8tJS-umy{Fvs&HQs8y#n^g_Y3nU!Ep4D^JDUzO5VHU=D-g2*F*^`* LY-iKqd^sNg6txvV delta 63 zcmaDqUH$!Z^$8tJ@op2l{Fpid8gI4UVr;#|wDlIVmNrndolS=sh*^M`6^Pk@m>q~Y LwzKJQzMKyL2n7`Q diff --git a/src/hwprobe/interops/win/bindings/wmi.dll b/src/hwprobe/interops/win/bindings/wmi.dll index a5d4515fec245da939c9f898afec10bc960372ac..26c72d98a81979b6d0370967af0bac64c89f1ad1 100644 GIT binary patch delta 105218 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 Qdijez_iR{FzM=j92P(h$q5uE@ From 79c50065310791baae34537e546767bbe48c80b9 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 01:44:10 +0530 Subject: [PATCH 25/33] Revert "build: update Windows native bindings [skip ci]" This reverts commit 93f45a10a2ed3b8882de5e6ec2b943482ee5d704. --- src/hwprobe/core/common/edid.py | 5 +- src/hwprobe/core/windows/display.py | 86 ++++---- .../interops/win/bindings/display_info.dll | Bin 503655 -> 0 bytes .../interops/win/bindings/display_info.py | 95 +++++--- .../interops/win/bindings/gpu_info.dll | Bin 642031 -> 642031 bytes src/hwprobe/interops/win/bindings/wmi.dll | Bin 683032 -> 681388 bytes .../interops/win/include/display_info.h | 32 ++- src/hwprobe/interops/win/main.cpp | 69 +++--- src/hwprobe/interops/win/src/display_info.cpp | 204 +++++++++++------- src/hwprobe/interops/win/src/wmi.cpp | 29 --- tests/core/windows/test_display.py | 154 +++++++------ tests/core/windows/test_network.py | 5 +- 12 files changed, 381 insertions(+), 298 deletions(-) delete mode 100644 src/hwprobe/interops/win/bindings/display_info.dll diff --git a/src/hwprobe/core/common/edid.py b/src/hwprobe/core/common/edid.py index d9f2a29..d6bfee0 100644 --- a/src/hwprobe/core/common/edid.py +++ b/src/hwprobe/core/common/edid.py @@ -81,9 +81,10 @@ def parse_edid(edid_data: bytes) -> DisplayModuleInfo: if tag in DESCRIPTOR_TAG_ENUM: # Refer to DESCRIPTOR_TAG_ENUM for valid block type codes if tag == 0xFF: - module.serial_number = block[5:].split(b"\x0a")[0].decode(errors="ignore").strip() + # todo: test if this works + module.serial_number = block[5:].decode("ascii").strip() elif tag == 0xFC: - module.name = block[5:].split(b"\x0a")[0].decode(errors="ignore").strip() + module.name = block[5:].decode("ascii").strip() else: if not module.resolution: diff --git a/src/hwprobe/core/windows/display.py b/src/hwprobe/core/windows/display.py index a01095a..aeaed05 100644 --- a/src/hwprobe/core/windows/display.py +++ b/src/hwprobe/core/windows/display.py @@ -5,73 +5,83 @@ - EDID parsing (shared hwprobe.core.common.edid) - Connector type mapping (DISPLAY_CON_TYPE from win_enum) - Data assembly into DisplayModuleInfo - -Monitor name priority: EDID 0xFC descriptor → CCD monitorFriendlyName → None """ from hwprobe.core.common.edid import parse_edid -from hwprobe.core.windows.common import format_acpi_path, format_pci_path from hwprobe.core.windows.win_enum import DISPLAY_CON_TYPE -from hwprobe.interops.win.bindings.display_info import get_display_devices, get_edid +from hwprobe.interops.win.bindings.display_info import ( + get_display_connectors, + get_edid, + get_gpu_for_display, + get_monitor_devices, +) from hwprobe.models.display_models import DisplayInfo, DisplayModuleInfo, ResolutionInfo from hwprobe.models.status_models import StatusType -from hwprobe.util.location_paths import get_location_paths -def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> None: - """Fill None fields on module from parsed EDID. Existing values win.""" +def _enrich_from_edid(module: DisplayModuleInfo, edid_bytes: bytes) -> DisplayModuleInfo: + """Fill in gaps on a DisplayModuleInfo from parsed EDID data. + + Only sets fields that are currently None — existing values win. + Resolution fields are merged individually. + """ data = parse_edid(edid_bytes) - if module.name is None: - module.name = data.name - if module.manufacturer_code is None: - module.manufacturer_code = data.manufacturer_code - if module.year is None: - module.year = data.year - if module.serial_number is None: - module.serial_number = data.serial_number - if module.interface is None: - module.interface = data.interface + for field in data.model_dump().keys(): + if field == "resolution": + continue + if getattr(module, field) is None: + setattr(module, field, getattr(data, field)) if data.resolution is None: - return + return module if module.resolution is None: module.resolution = data.resolution - return + return module for field in data.resolution.model_dump(): if getattr(module.resolution, field) is None: setattr(module.resolution, field, getattr(data.resolution, field)) + return module + def fetch_display_info() -> DisplayInfo: display_info = DisplayInfo() - for dev in get_display_devices(): + # Connector info from CCD API (display paths + output technology) + try: + connectors = {c.display_id: c for c in get_display_connectors()} + except RuntimeError: + connectors = {} + display_info.status.type = StatusType.PARTIAL + display_info.status.messages.append("Failed to fetch display connector information") + + for dev in get_monitor_devices(): module = DisplayModuleInfo() + module.acpi_path = dev.pnp_device_id module.resolution = ResolutionInfo( width=dev.width, height=dev.height, refresh_rate=float(dev.refresh_rate), ) - module.gpu_name = dev.gpu_name or None - module.interface = DISPLAY_CON_TYPE.get(dev.output_technology) - - # Location paths from PNP device ID - loc = get_location_paths(dev.pnp_device_id) - if loc is not None: - module.pci_path = format_pci_path(loc[0]) - module.acpi_path = format_acpi_path(loc[1]) - - # EDID — try display path first, fall back to PNP ID segment - edid_bytes = get_edid(dev.display_path) if dev.display_path else None - if not edid_bytes and "\\" in dev.pnp_device_id: - edid_bytes = get_edid(dev.pnp_device_id.split("\\")[1]) - if edid_bytes: - _enrich_from_edid(module, edid_bytes) - # CCD monitorFriendlyName — fallback only, EDID name wins - if module.name is None and dev.monitor_name: - module.name = dev.monitor_name + # GPU association via DXGI + module.gpu_name = get_gpu_for_display(dev.device_id) + + # Connector type from CCD (more authoritative than EDID) + connector = connectors.get(dev.device_id) + if connector: + module.interface = DISPLAY_CON_TYPE.get(connector.output_technology) + + # EDID — prefer display path for matching, fall back to PNP ID + edid_key = ( + connector.display_path + if connector and connector.display_path + else dev.pnp_device_id.split("\\")[1] if "\\" in dev.pnp_device_id else dev.pnp_device_id + ) + edid_bytes = get_edid(edid_key) + if edid_bytes: + module = _enrich_from_edid(module, edid_bytes) display_info.modules.append(module) diff --git a/src/hwprobe/interops/win/bindings/display_info.dll b/src/hwprobe/interops/win/bindings/display_info.dll deleted file mode 100644 index 68e98481be0512788f766473eb4a8fce11502d19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 503655 zcmeFad3+RA);Hdr1PGfIWHGoAHEK}QWDrdtYMOMg8af&T5d{T}B95qxbQ4^V#_EQY zWosNA$9cwaHfM2kM(0rx;+6zWKwJWD;0EqhG$^=Wh)aIo@4Z#s)kz?LzxVV0^YYPj z)vbHaJ@?#m&OPVcQ@1KFs`F%eJf1B4-_hamti&(>m5IN5{}aLEgGSUJfEaqvf;W6Pl0pe`rR@l)3Zh(?kaR$o*cSjQ3&@{!!Rh~#<61@?tgh6&+L;g zzch3y3jc(Wc?wYn|9Ot&pVYrHkEh|}>t)3qdA_VC#)z?cMxoy2 z-PBto>%Dh0o;TomK7Lu>^{)&)oqXAX1uSYMeml~ivz-4T#P13TPtY8+7ZdqJdi^rO zyGqs*bHd6)0AOV|^+NMRzhYVoQIAz#?otnQxnkaR)d0ge#9Rs*zuKkV_)|{BbNqXZ zf2wSFZ*)_ysDw2<`IGQxHtGfO`&KvgMi;S~=lN{>c?|XX;rD3#y8e}UJm`0fDEZ&M z_-U}~jq0Y}nA1hQHa=>_ACBj=Zt9(0DC_a>7Ca|vW4ozWEb;qoFFfCY=j6T8Zt9iD zes}c2b9Tz{jPIsiQPF7DIFEmFP>=mi>{^eH|KGp=dlc}U@0)u51=FUe+O~q&233Ep zQh!m2JphD^UTvE*Jh2AljvFA$n&~atuJ`&BMJvfsS6rzY9@SWstr|z%cSVLLXdLV9 zo#{#BDkCBsjau@Z5}k#Ht4vI~uj36>H+QJYf5)k@232nkZ&r;n=A)g_M{CPaVwa<) z8XtHqz?(&1dOR(Hz0~ESS5l9t+6x6UE}3<)Z>I0!)pL{)e&EyY4Sy^!DcWx1GM~5% zkhp|<0hb}l2;kAIL|Xu(6CR_1NBEbpBywO+TQAFri!badGCi)|10Dr!)dXX1~0^v@DIYXT}tI$+2n0oKR_ z8N)|`geMZ?FScVKLfEXQf9mKEfUFzQXw?WbH~Zjmoot_+{X8J}XtkKgmG~jaFa&VK ztNQCceMo*#ZwZe#dVTV~>` zpoM-<{(UG|W&KFPsV)BeV#45s(9rl5b_0ZiWqEwq(Hb=F5pY1WTcYu*j*6lN-Jc&+ z;)(Lb~R*$ zXI5a2H!3SKahKt%9iJ0gSD`nISDx}`{xoO2?)Uzbs2B2Fp*Q-VW6m*V_HSeRbM%>g z+pd4Wr)_DgC|X;guk&e**%OV!b1O<3C+dd}zkXX{sgVg-KHxFl@Mr!&Xg^q2k?-`? z5G(V)YrU9gm0noa~i!Vy_&Q zyVpScoIKykC3d$#_7l`!3hKf90y6@5EGh6cFZ&~Ecmlv+kia0QuT_aeyaPM~c{vO(bC(kED+aSKGrV3%vBD?DTWl2LeWF<4CJ3(TAf!**ovmmF@bv9!%u-@c;;JIHHZ;VcHi|Q9bClRqc)(E<3o2W; z0K25V6hmsYp+kpJC@S=|Iz)BqK@ioc**{nT zJVF_i!PJAO45nuPWQ{?Ys<&D2Me)1ax*ET8>gJ@hGUYdEvn<`#hBZ`;t);pxgV-w3 z!?L+*DR&IUucL&6@m{@tz$&=b*1sB*M+p~bYIivN}bOWKrM*Py5})}cfX6%Zw|K|>Cn=oKf9ag?}=9|B98Nu@x^E+rZR2w&v6 zJTQVMsDB;)7%IrT=@Z)Vu&P9F1HO~ur*^1~ zpJ9R6X)bQ}dREbZ!WvuD5YRfjs=gV^j}q+%im34cqt$r1O1s+_tZEHlfU1?MF$HR( zssX<__+5kFT>Q4;HxIuX@mql3E%+_OuZiDc{O-VS8GhT;k~QJSR6Ufh61|X(T$K`C z4m>LL9|Mh__73Wn`QdJ^_swFxrh@&B=n33rgJ2Wm15Q@s6UrR@YzzZ_gb%!?5kKHH zjraktX~YkBP0PbC@R~;afY&tQ2fU^cKY`cEpgu3ZDv?pNiwNcg6PAZEA{4X^@F-}wUm$dmFO10ii`tJn?oiI!`WNVx@1TAU6N{grM^Se-!Z>NA?VVg z8t9Mf;U{QCS~Ord=Jv0tBJL44YW&VTJcEiLjyjBSn9Am11d5SPCkdz+nwO6N`(a|6 z10_vveX(BXi^IMH*P)mqtwx3U$?H(5B>Dz(v0vH$+Q7T)WH5 zsmXUptuG%XWYeX6R=|yNw2#eEqUjxIDp>2*zp+MaS7;zrWEDmKdOTBO?<yV-au zwfiP>CQ2dJm3Gd-a%sMP-sPo0YGL)Z$c{&i3X=w|C2p;Orf=g#U!X4JnHldI}KS?zcX zwEQUUu-e->h#h!_Jz7>O&!xsZxz!K=xtKTA5w=lqirB{8AkRVlGr`*#3AIWdak@7%OcB>NmD<_N^;(x@z{d`faq@(dHA0*#nQxJ;U7Yy2K5gie_jvJ zqJNO*(>Dok2j<-bfzEt%O`TCowFu*FE?~?h40@1Q5pY|;Tj8O=xq-Lq>v+>|g!1QB zfYtxu*S}Sg)i=UQ7p?05rJ`X&d_pWJJ!kN_;oEL)YT=2c&kb?=c@ z2h=AbRi1#iHBi#3M9;_2p(qQX4pseiti#Sc4n6Uk3=ifqQ1U@I0r4mdLJ_m21BskW z$He^CJa955HGCBPkwqjN*ajQ|PB-KBLnVsv3+Jd{INUbS7bX&v1jj(7lUNYl4r^z}f@?VV0x< z9R>bO-jtGA_0Z-#aqRV9WO(Y5@tKZe zn|AWPaTYL0t!@H~#yxYE%{r^JzraaGX zuj;h+D#Qhq<%lgJCVi^1{9$o1a^Z3D@oyoHr7T~G0%**;!P9DW)>75GrejMAmcCwy ziu(E%b(LpVhetZJYm^xMeiV5;KS8fzF<28GrY>zfGTW1Z>(Cq+N1;nA5e=B>GbR@J z#!Vcx_&l|`aZW(Fwn1z3s*PI^ha8{B`?YhFd5vmI8I}@ArarMi&rt@I<*XL`8K1b$ zLExc2gIc`dVGp&P?CBT&qtHiz zpgc^@RaRsmTvvLn61@YM#j9E)?R}Nyf5vr1(Yr-!eXCx1`Q?`rw|6#Twkv??L=i)qQ|6-htBJ_cV2)#VAnG+QeEH1{jancL589j@8=dh7dJdZ|0(6 zz!;w!DV`NN1?pFOp#Y$xfB{A@d?@$8fCaj$4q`m#(c0#Q6s>Jx`1J%TH((Uwa|x#v zqHDtmuXG;B*_I%&z!IKcS&{9F>^?7aF#et!8ldW}$^QJtWYza{9(t~bkI(dJO&P3N zq4=A8VlM$#n+V#k`&8(NfZpooW`Hl(`UpBlj!)t|D}0E9b7YZsR%obM2>cK#@TX8> z{e}#hiSV?1x#mH##?e|^-&-~bo#en$*eUBI8U-KQWUAvvmf$sg9flFQz^KZ`R?(7k zmp;viB{wXWlxt01y(-(tfxOl%(b}_X#%k?-LRa7_G+S%WRF?HYRjoZMJY3VT-g&&n z-E6$H-Gc>RxkKkPXxQ4|e8(q#Cl|ZG>st^H4y^20(sAXNG=*Y~;g;_jQ8!nK-HRXe z7G4AX1*c(+iB)5g6D#W=f7m$w7H zYXUfr5?zeOfRvMX0%L*MDXc?XV5u5aIp!|VO@%Ut{|B;F<(i+OKzo>@@H(hF{8W{r zjqRnx$aI=ElQpaXxVGgSep>8DG#1u0`8&2Yd|2Yhq^Ta;5IS5n0=e2&FCK+@X(ffB zgisp}d|!@Rg2hf_G2|^J*gpHqC|I>F+B&e$@e{E9kZctWGx57S~>@8~0 zww@blA6fIdDn!8x_Cc*y<=3KCXMItu8cRLEKs|%8DWASRbhH$#yIAV49pLrX>e;LS z0-=uxYQZvJN~|&ZQT1%ryp(^j3L^sDaaRs&gAQea4T~E5xE`e~Ekm(4@pl&j;NPXR z@Ibdvsc~Kom@pfP9ZbC_A7$a(#9=Zng=s)&tW5Gn1Nfp?@&&n;<8E16NZ>#Li;9(^ zpR*SY&q&qRgGbDIm~NDq=v~CuxSNgC_^95ANufN^ zvpu<2dLo?hrt5RCsD=-#1mU>gJ~s#ZPwXMJe@ZzC!Z3qmLrG%40t|(k?=T(=#y}Yx zQz<&~mz=MuKFU~X!pQvLL%5sjr)``zU$tVs5=*JCas>4kpeGb6v0t*w+4+ zrq#R2Jo6Rs5`L$>ieK{BzX4Y@?zMR=Gcn!;%YB*LB~J1moYInns*9%Jzk|wZpXVreyY%U>DTe-Y5Gk|Mq@T*)Qc{SNnSvH>=^G{G zJUM>KAKd58@@L2MQ!@DK&y+zWx)y^-%Hge!9LC4&$jR{do)OlvAtX28{U%Z2p0$*k zNv>b2-Xu&mDu$BJR9!U0{0+86UWsnzS}Ig6Rmf}mjy~aaQ6Wn7PQU{sp=lEuIJiu@ ze3(JVp&B1^iWmnh0FN~qB4yJ#K4wU&{IFCx^bG{f`~>k;pWaZ!VA3tWqSY6uZVea{ zv(=G}YRUSWYgBKOZ`b&oEXr7@S7dB{Xe##E``&VzT0iUT;JM>{!C7iaPWX6b1uUkm z`H}WlgHoEb4nsXpF>DZ=#7g5Z%JuEVBi%3~Npk_y7B{n zHbT2^roQtT<5h~b)-cRJvVj7QjeB+RmUJPfaDxd86)>UgETlYxma^QTz$I~~Yf9^+ zJ;BuiMo6S&O1MUi`(P54!vgntqYa^3a1Vj zfv*MTCSzPxITiYJI2Gk(h)TvdCn|Ug27q^pDnPA45kTz~OaL0&2M0XZk3q13i&{bbIqXf}gxmx3jvZvT1{*-=B`lJvj`mURc^l=$G&nz%KV=^ zxujhntdh4w`H4lT^>tFA9QQ>?e^B>at_N> zLxt4>OTvIC@?P&pv%8D|jKy-4i^F37&z`dZoU@?51|yx0ar-V=ZA=NG+m`YmFsB(? zU>-FL{on#_ryyU0J|$RRL6oliLXeT1!rnrM%1QAc@+Qm?%tvvB5~U-D#%bM{SNG>Y z0oG!K3-b4HWcRVkat5;lt2{fNZ#ffJj<*(!y`;o;_W@ZyLMF_ga1q&^7rr_Gz5_}S zmt1oOHX6`L{YW&EXqs!bOD-mE;9w5?L<^N_8fO!+#PJczF(?tlN%( z9!csSH!7_VDWY;*3Y9Zls95vSbs%0Qw5Jao>rtZbLsU>C6sV7p5zU-XS_uB3jKzm$ z^y|Vu;F|*EHaoPpxKx2p-FT=r9>=Hfcye2cB$nxtPj|ZHlV~t_T>``P- z3#;i5K-rnuyKoJ+7V3g}=^Q-^n-Xg=uLx(w)u$p5mLs@&3dRvya7wOu#0a`>xP$hq z=UUAEYZESFJq@U&ug%zElDJ~6hKY>uRVgB430wyB4X$M~#UGXW>j88c#8QW*8KT9) zt$uD{Z{k9&H<%+q0}KWORidweM5tE|TOK=}O6*zOcR_mY_m1j5(V=9c`TABD(!GJS zT({iwRfu+iYF84fjA|5^hsshAK#87%2XavuWz*tjH`qsIJM(Q2h!X_t5!*sktNk)1 zdN-(mt3{!K_&ZC9WuS6J(FQDv9Kg8pQA+%j&4^T2ufeong8WD;J438kU8DNoeL-acv8n3}1Y?o|>^%beL0)dwaa3Bl z+Q*uPj-7Gb-!p_yj_d>>+Zy76a8b_?F6#^-%i4f(IymI^450zLl4+ypYt^|Ryv3cI zwAt-Khvzy&=x3edf^bjI5N39U(AOH^g770e@pK&I1iX;BXAUFJSuJSjkYZrZX#A!# z8iTBu3&Og0dnCo^&JeP#av~3X*tSdR`AUcR8q6y`b1~n2sOPMgZhh16727vU;~=0! z@00D#e*#`W-&ucj3f@pRJkP}AIO_ooRaPi+!B0Tu1i6hVD5JXl*xM7X6!0+y?ifLeoMt)!Gs34-c~=Q{Qx z$trBd?Xd1_TNUdWDG@sgs>%8mOS+8oPYA|73iXCHRS_CTW}O6&S*doCNFO^PbeukEI{Fg3E?A_v56EK0_KlqQm*ik9 zRyTSt3}cI+38w3mT*pc_2hzHxWzl42P-M_aWNbxfcu~Wy@`JO&4;WLX$0v3q?gnyE zQcc7&2qCdq;*0n$Ts-c>n0DUj4-cE_WYb+%<$xl<<8mUhWP!e0?q{Y5Aij+rkP zd;?MxTT4D9(Ia?3{~6r@u+vw8`Qc8AIE#ew7J5(^A@wr^90}k|0C2{YMArp^zK#oo z61~{Q-{zPKB{qpAnAG~2!~z4gEe$sy~bji$2%FL^({&u1t>{b=qF7fH04%0_W zCYb}Ytfna>Vs{x~L@$k^FB~xLF`w_m8oX>C&#_2D<&>Q|F8QlIPJ?`ZM zyJT>CG`b4P=(cPPeupWW_!r<{hufM62KMi2bH$SkS`}B*d$h)8lAC3`21@7kK zPL0HSE=Q%#H_eXVm#O-j&=El=)g^vUeuR)`z}Js8=q*Zg4mV99&{)w*5uErnrV{)3 zMIFozSa!d-`(vbixU#$!?Mko1BB4Yp*hb%kwIR=Jgi``CQe2?)#47oBJl2XwE3vs~ z&aDswF+6Ufc;ZtB_0gxOk>Ys}0X&3)ze4P|wU$qT>+YroxHU;7Ozy zRlFPn-9IGDM?^Ow-h?WjvoUyFET}8WGUyjRl?A{^ooK-?5qubQhxjVB)R9sj!p!IX zfb{F8h1CZdZI zlYq$4!r*%8msRFvm@+64grrEWwH(O3|TGlOiJIE=h6f+{|fg-azY5s-6nJN zX7ZU#ab~u6C%6KsMc!*cI!^bEq=6mDkAavcU<`85%R_#V;X2se-^?=%-x3S|x zuDeCMtQSB=ydS`DYMB#H753uB&uP!@a0gN=-gT2Qv_6O^s>S$;@|^08?1nL11@!!J z-)p`|TUO1Van;H}5uP;C7RS}<9l|oRd4c&oHanCz}` z$Z$?1aFG`x{47hv_%M&?6g^=(!XFeLT#$N!XsidO1b(?QBs5KuD}+5L(Tc-p3L(KK zt>e(8Lv!W1s*L!=*CM;Kl;!2<#~&Y0?xMj?Oay7oqp1z>3W%VkwH(#p3Nf^VeneIx zv9sz4HinmfzQz;i0LZ~wTy?QOWZD=O5GvPyfHM#nk3P!Z1)&+GbCl>hj70A5EF4yP z9p(uW2P5*@@MOn`gz-g6Z8GPAA28n-w-OBkgd`JWW)@^d?z+&z#F$}(aTY$wT)3?385xr^d&l7Ds854 z=9x!97P#i-VNt2nTg4J%{R9B)7pTt<-wSOEkrml!865DvXwOA}IfWvB4#3TaFn4+* zHb#`%TSRBHiLnO!iZ{^qOEKJzC1MSUUW_t`iL)e}gWI6krtcC>n!?Q^9wNc;k@XoE zR@ncgSB0`mu{8P75;#Kiz7V|JlmYUVhGZ{q1I@@-j}rYtP6Dp@7KRA!gLsTj<(a>L zPNA8YSN{vagpF1P>L8yWCusCD#^-2e1{`Ymw_dGnffD&K#x zB&}a~BgMSdnPPMiJm>gb62yE!;pSRTAp9WLHFCozvR#yo$m?N{>I9!7 zBTw)-bm@!olH{!C=$&4!RH7ZYkF+lc_XA+8fd7kIw;1G^d5FK-&{LXjGzctB8-are zL`sD}2x6AfbT*xDZj~??L$SUC?(vCtU@L9mfcV5e;8$6GQEEJRodnSkb1l?En&4Tt zqK?)!Urs8A|mK7I-PBd_f@VHw910RTJ@`QBcj3&yY`p@@{(Ppv<_3T98e?XPVs ztl(=+BGm`+BR^l*d`sKnE%jCm-;Mwd5|2Lp5id+1$%0RO+9$Yq;fPZ2@a-tqUOYVU zE9&pIX|RJZP+Uz?qVM4fQU?n|u&geRbnbv%W}0Z@GU*J z{yaPj%?9F_H1pe6k|aVN1ES>d`8mYM+y)&?gW(y}W@Zw4y`G9yt}le9Zw0)>Q?_1Z ziC_PSMGtbmItTMdnI~Y~0MEedZGc)qm?B&b`Z_MD9oqF>jFbts2fW@mE&%XkekSe* z;impv;A5Qy#c`^Q?_VWAVXw&CI4 zEqxB>7_}DUasQ-5uR%-IIE&{y9U9)$(&q>~Ong|^(&tECY%Hw-JyC`Dk$_R@Zev7B zv`{n^u7?skhBw4%3ZWAx-MxOx_+pt1$yR_lWLk%6+)zg5E+${on)4(Ih5f{_7Yaz5 z%(9o0lZJeA?%K{5!J~@M$kNH7V~N%o2>45$4!`J-nE863ZInKUf?(O&TEJ z$eYS&gn)@fJ)(|2$=|YD!QXsjHLl~xl4c8LI+fir$}C6t-JWL5F#{nuo@GbPs6rOux0Afv`Afuoo&Gji6SfNy)0OB3K#H`(Yw0T%fvMpT{U{Lu<;X|F zKm$zSTYbk)Z3i~G4L3NaAx3@fz*;6@@hua%{u9EbH0%YFD$yrVf#^epV-h!+FTNz8 zC;k*^uaxI=McSvxbvhZsIf_1|&?liA;2xRh(@tA<3n9dIh362VAYMEb!wE07`Iu{? zwqt=|cz!wC!C~A7E$V z+|E2tbdX+2$}@^VhGpmwoh9x?{Gahk?DyR0Rh1}Sb_W%3h>m>c$Gn7=B3H(i(4#Uo z@CX>bz+?X*15iQssAgDD)$U=k_JBOp= z0gTx06hTA+o{f691eR7U<0q}R$WuMxMzKG;Y`YH8CiQ(Lg_gcSu zQ4*8{wCnSYLaq1&C3Xa0ID4=bGuRyei@{WvAOAYWOhe&vRFTMv(JVeQ9b1{6F$eyD zgLkJH5cxk3fEcnL2$5As_LF_t*5@2_CR7MFAYqUx(e0>XG4HCV!xFo2Hg4uPQ576S zpP2i)R+9uS2Hzy*O>>=hNa4G3SA2!y>VB0ju-37sd(|Aa5T z3`ItHOug<``iL>c!MKvwic#iwVq)G zxgOmW+a-+da6g|m7EzTC092~V$)Uw`#VH4f9DwQ)CF_mVWDWXx8R3V~OK##m8PAa& zhK?tC*)@e)TkjeJ#|~hvs~OCC7-sn6)cPV6i`W5_^ULteY07V!tn-DE@E8k%R32iw zfi(4pZBUJ|5mQ#+;b z6a0XKdVH!cUN!_Th0-z;e&^KCq)7YO;Vb1Tg57&0n1(Kt`hf5Ba!r}0-1$0$HPT*o z%URl1U!;9#&FR?iFt%{RV?&^NNL|p|)bSDLSFA-gl))(|%uw}}j#()40`O{#^Zs3Y z=pO`>hGep{7#HW4PT^E|x?*D<0#iR2vj-)PsRICOc#{w&$?r(2gRj7SLG+1$H8IGz z7MZbF&GcT-WoN@LpQ^;7tRWz86&ehE03v};0&v>)5}wol8}J`R|EOj7sC$+8g@6&P zZsl6QxeGLY1SLEf3Tr$RHXIWl6jp{GSLSCxQM49Q$s-XfvAK%;XpeQeT^? ziN=`H>#>VU(1IvqfG}8GZ&L0M8zRDK7HJirt`F6M@#z@#g)-@oFAB#m>L}WU&_`wz z7>_^!5`#+f)#}%k*u&@tPmq*~H75blV~Cqkx6*ti_6_uDeLiY{szJOX0?Jl`vPygd zDoEX`B{G}^&QYp@w%&3A#zH_uU>L%HRiZP{tbRNm$btOuyggq!8u;H1=r?{lp;orn%XRAqiGvzlf((T&*CgIk-icX5~~EYF9W>!oguV zXer=4ix5MyT3@?bmJ7~I%mHQO-wtoX)KKlR-#KM2I_lDa^9L7oR;(5v9VXorDe`VDSSD7^wvM1IT=C>8fWHrRf z)+sT%%8pZ^teD9CUnRN>+!EQ1_c9mrDNOQXWoUwi)O4*FiVJ>w^f5eyp2H^1wZ5m% z#ElaD5q~4Q5z?&%gaBTIP8^#S003QKgwSQ{N1Itxwa_NIHvB0xfHav3XQbXQ7U&3n zKk4k@#a$?XOq;Q}k4BnqGQEiR0YPbLF|Zu|x8#s=_~kUk09U*}Y*ZZ%bFMdzVqiX^ zku5eskU0CvCLBa6xaHMfGl~hJq&_|biV3F5EfPeI2WOo(2agWr!$39Xv2$qJV0Ys%^aKnv-usb z2QyxsB~Q1hV4{>(jEX)m5ssz0;}UE@sfLy(+BWbVbS6_N(IID`9KP^Te!VF%fc7yr z41dBt3ZC0%2ZXn=yhUTj_|JoLD~S~Y%RCQWoLiZ)KXK4o(3p@@PaR9^yK80ZAtWe4 zc|=izbyz=_*|8CEZ)hTl0)wjx2U9SqF2pnIWT_kiLW;9RT~wOu?#&NoE-(Xt?>8>b zpUqPg3MyisDA5&2>0{&@ZwDc5Lcmg@qro>p{b>@#I^N+woKC?0L32bW@D|V6cKpU~ z%+J9gWnl!+)oi1$KR)?$AH1cSoRXJt_9j~MIDTYKzD-lH%JMnzKy|`n>2!xEJR!h6 z24|q|F*37du6YaGVLupcb_M4JXQ0bb*h8>>C1gU-4KQ%Na9H^`~8u?aHjRQB%sQq$v^ty6f3#}twBF8}%nf_WMo8-9=ZKS@3U!4Pmh>V@n z2>^^%2FI{BLIum;z)l-@DTl+WFtR~vCHgOHXm;vmvM;S0Fo{67IV-cESz~X|wi9wp zP3_XsEK6&N79(Ygk=mJOVJiVzNbAUkJxa4`1_uZ&Iq4Z1aT9WrG&uo)W%h6P?0F~} zr1;sUYiMAy{Z_C9NXcVhc4FCc-pOCu&b2^Uei*0#-TJ3DkUfv?9|1H&9BJVIATp}) zG%1fcE-?QG@E8Lq5w(=q{Q{_*863ubw3#r1OmevOI_6y8ZNpIjO7}2(E;?mwUee!I;Z`OYA3~Mn8;h? zMBZY3DQXJ_48{lU0u}M$10(^zg{#DAE=}p^i`4leffAf4C|cHL^{*AIq(tWto^$#^ z?{I4^DD50Q;yOwo?GzGa1uCKUMV!Ob2?CltnFQU`W;);p0=%-Kx5#m`76>)q;6CV0 z2lw5?eXI+2*QM+HhHmly&j}#a0pfpWxA+H3UQOYDF2L^r|Fh6q(*ERq!ykaV(*JfS znghlES@KmE`lsQ)08F+A{Apf{@-rs4*xX%c?GUX8vbti!V${g zd_pn9)Xnnj9WdrL6eUK=_*D=5e?NVn1H?bpE&gfrKVz@>$H)A0J&<1sciq+i!T7Yy zL{S?5C(r)~lze6DI4nJb?WG5i4mu9v{10sC9u$7nUyD`UK12vwheB*iuaIkbkPxb} zR($9QK%hGwddpwiKiS1dbV1-UxHk`C%w;ZEt!8suCp!E%;xCvxi2yZQMJmX+J z(Epudd*FYVEI2Jf%Y{--Q$jSy@!E!12k;DB4yDwc3R;97k}NbIxI0T$HE2$i@2G2G zNjW;5_QjsIpqP4_-9Ig%&|7{Gd9H9PLx2{M0;{d-0{G(_s@xKmN z`+$G9>({8CfqzEN_`iY_tUciW`y~E1?Hm5x+7I*4!GY3$c(?ec>HmRy#{Y$v9QywQ zSNlN!Zt;I)=Yiut9{svBsI5HH@UH~;JQ}d&IvI;P*iPKcKb59~RaD_Bf{3YA{CpoD6=iqzC&w^iLP>zOg^CgTFL&H}`3_V*o@-&V7wd zG2nN^3ur1w4|gfsXDq^Qa&uywYxYy|AJu(+Vz={ObOc6y!2Z*HAXaxgoHqHdBJ(sg z`ShRYgQ&(ro}%gsojrCXj((mUMy=b zwk|^U7(a3#W5+?`_XTiKd?H4J-WmQvTq>xGc$ni4;mx@qKi(+fu0efc_;Tw`7pI0WM|5|0=KC+Yg5;j|2e92ODBM9{T=Vfc4Ce9 z)B7pvz#Ny#ImTG0A>6$o{0nOmvMeCSm{CXBi0v)29Nmk(EPO)^Sx!=^9*N4aju5_} zGN$7>my}(Sk(lWguatc4p){3mnv%aj$=BWK-^(BlZu#4H{VVltFn+}O#5ENPur)CH z6I1SvWPFQ2eM%BV*Ga$oNzz6{pE9&HVMySdg`Kb*OSu)YRPGJnNTvTIx?a9^_L^)CqE zZu#3k{4d@E4}ayBI_sm(_+x`-J`_DvKYyH&kQ;->(_D@q7yRKr^FG)%5plqIsS<5t zz$e}IS;3;z8tGafQ|fR+t~ogg=1e6zzblxN)4@QSo+-8Inb-vtIOzgu>rf0w1VD|) zJE00o3cFs|0q3_lvF;gMOp%0w9ebY4FV2m}W z)|Iem<|uD1C32}lw5@8fGw(zhEd+C=EWd@Tbn7W4z;5~NHvX^+=|Bf6zjM%WSN)eJ zzrO|eboouH>w@F}hH?Ns?;mxmf9_|}>;cB#{tlC=2mH?f_%!^Pd%zce5L+Jl-VAy{TmY?CEgPfY5{&#=n=Mlg?Q2F^Ydh5!6X)%~efKTH;w+=Qt zj)7*rm>4A4Y#m_Au{_SP9htKH%T2{<@;if$OiWkM)Q@57tVfzs$RgHTdu@LhN&BH}PRD z?3P#m7Ww9Dh56G;rDx|qick6+j0AZcE6VJ=KD=b^CE`m+C)^S=ZpqPKOIbgD{c#>4 zgYT$2PK9~lQ4ID>@Rqc()9B2%z;W?0BmM*AlipHBqPTl4=<=Vs)gPfdT)Jb!{`pQ1 z{JVSlr5R2q!cYkkaIXYUysREb&csEk5ALOQx&7X2SV{v}d>(W4_V~Fr2-X5z~qATH~xrgvYnH<7K zRCbrYg)~s2)_`&q*_}MoF?t%J#=^sk4=rQ&7{`RmSu_n_pbO$$Aimwlx0K(9*_@=_ zO-Q_Ff+&z4h*rW+1y$fnWb-|M0y9Ivz!ibuffBuh9mR*f`v|!SL^3y5yT}z1XrvNE zLF-&|D0*=ajr9{)Bky%l4$j>9VS||1Z1F{jNb#9UY%5Bv|Bw?9hXi>XTxI@N-M?VN zKS|3!xrp3~qQtTLV1I<>yVkz_+J6{dX+t>nefMA915g(Y_ACDQ&_g}Y0PlMM ze3A|eQeK-FqV2UEM@v*Dmbzjl);F!dO#jKRJTFA`%fF#Be1D+IylOT{#H%Hj;tG5p zeGq|-rwztdpDw9Z6zx5z zp#OO;y6vh%TnwZ{2LgPOi6}pv6hP5GF&M5ADO05P{^ozaf)Tj<|NXN;R&+atPQjaz z=ptoS?eUSDhjruy;^RAlioaE`?w2no<%Ar3L62$QTW9LpJI1as}NMOgWLfZen`8Gja>>XLJ;u@rQ=+EQ{acFaadEavA z8ji)`n8)uI9Alnxf#jC6r+48Nr11+IVT_9}I_>{;>%S_|-=gLJU-K`OCgvZSAf+ui z|FrTh%Ov_Pd0t6Lh>v*$KWUMoZdd9iwm#66njP&;T9s%uz^AR$IB4cFoGqi_(2v*+ z&3q>i@6vdz&oN;_(^(H7w!9yv%<5>GqP7pC*l_l)coC;dFk2 z+31INjR)!LHS5x_B3?Vztjoi_c$E=b>o&(p(usClHoH5{KgaTZCmo2h;iX@z5iPmiU(T=YE|pVRx5P z&=>42BnbHms3L_Y3!6AXc!;*ver0$lu~-m3NE|kbRZfYnd4aQm^C}<1Jn$)w_xzi@ zo^LWT-3Nyf9NDQVQ-czxY*E@xltnj32XQZ z3KwsY_+Rq(b?86@y@x79kAcU=+~P2A`!>ws8@ppi1;EU zHd|iuu$HqS9#$3ZDX$fJyY((NYN2K1V5r^xek+ltMzEC+10H7NAbU{kNkbK@AE4Ni z^fjA^(|~a9_i7+eTo^vmxSPST*oH+z@GTCrHIk}QiYlt{IM;edO{)e@J`}60ISf6i zx_D|G&YBeGzPMl-%Ee(tgeh3|Z4=9YPj?gVS(fJgybsOect7W##}0Oy*G$1L0j&Ta z_ZH}JJq6%Z~(_JMQC@ z$%AjronRl4LFOz|1MU?QiX*FYg-aVjf)OY6zR8qr9wW<{rN{>3hZhEU+@r7r6Gx{_ zZZ}zCi1VZ@e4Gj~bDuMGQFG4|`*muECUj70Qh$X>4d8=6@u3H~$Ln>*%R|8|A7)@b z2>1`|pE`=eeESy6+AS>UATiR+Opv!*Pk4kIz`X>pi>m@H4`(q*2PB~gohsHVoWx}_ z&rRR#z2{EVZ^cTqABdjEi1LAZ5sm{9%5wY-s3iG8TkE;~!=wpu$NfOOasR3xfqjJi zfL;i_u^-hR-nL)W+d%aClRzl2kGbe(aL2(7Lf;_Rj(5%b^nyL6<2<@=vA*DFVw_^5 z>aVDcpZ7unZb?A@0pAKk;!!f;XaVf^&Iw2Scm$4gfEk|iEOlLR1&!QBCNY^f4JtVD zL#m$_ne|KkQ#ld_eG@*~{V|e&O9usvMcI|!)l5>dGjx#%JSZE*Sf6hmgq+4j2*Tey z2!~0PnaGLSfwAB)nL%Z3&e{^2!FBSUXXHA$AEey=+EAH0c;ll*LkFCOept=Fc z###6fV?yEi(oHyzxD_W*u*SH4;Vo`!!+gg1xwb1dId^$gmA_n zPAQ>6-Gzw>8lFJOn(&9JJdkwPjlhe?qTsY*o-1Q`D_{z?6)LfQ&*RRv0+iZq=+s<` z;HFdgX%rY9>l4rb3st=84jcuuu)k(jm*S}MUwjTi+OM&iQ$|24OKpzp&Hh}6NC@-f zLyibb+dX2as#3k+^Oagi<&51;W zHEln@aT<+bG@Wqn#KIh77WA!2Sqpoas>FsFQh>`6WsT?ke3OPi0`npxH9~P_+%OM z)@%#~M;pPjI6N`JiC+u<0_R?0+tB4+m_F}@#2-~-JiKxq!HcX>N~mM6?!xOL4omN( z-VzgSeftB+Dsv`d+YtA#DpqpD?zhVwZtLt>9fj8jw00b$@+sgYrQk>0#LxbTCwDH- z1T0L%#ZMv)g!GiR=1#pu6=y^|%W2st#AEJD<-_VqN2$9IXWQ z<;cUl+8f@Cm-eo28DJDNHGSJufJ*cu<(ypfx6&wR|g^RgpjVS+x2 zo1}*{Wg(wT$gzIMDvT3~bX4lQ&p<}{K}8MpegJ>A?J&6=G~W-4UZE&u5JhYz(%x`RoH3t94eQUu)X_8+-ej?EM2Wvd zn@PBL+zF6SqtKL`bez10cTJ#CGd1d0zb@1+4yXcesBPke0-iOkR^L6BkB!IY;fLpr zHGY(p7>(CoX4^ml#tqqM%~}DRX9&$4&~M5P>baFhU%c`nAUz656(!9})>!>GuK3XZ zy;I1c+&KLJ$V+EXux0^nz=DV@k=ErtYkUQ^`3-XCF_|dNiUpdCGvNz zzv5PIGM^CYmpWz2y^m@x2V|=cOmuM!(y!3MIk)KwTvrrr59$Thhr5LkVin@#1nqNf zVn?lVIS*Jr=sdh2EiK2MC;-0XL95q~V#u%F0WMv>i3>5p*xQQv64Mf&QI>@hGnXt} zy6RNG_dpFU`6XsXkbu<5!-tl#R0BtF!HrqUI^x*SD(*^`2`(lV=Bc`X^PF)J48(?~^NJ4oEt|2L9}=<|R}_e^`H)WWUfanj z#$7}*7_aJ^nBWT4b$==HckTSu25+FG$?g^Be>jJ8glg@W7*@jU@Osj*+m{#9R!x$$ z5Ql$UPK;7vF}ax9UIGtz3zoE|JR~K0D9FKXrz5W&QI@z{r<$>>5nf}|2+J6 z#`g>Vdm)0|;%_V^V@Wqzi4N_H>ol|DI2o%xPO@n#KRVv)c4FX+dwTE0p63s{S%T~R zwL`#vcW0wRB|0{hK?cNf!mrSlD0Y@ndvO(W>aRr%pgTr9Lg_*T)U+9q21zlwF;KGF zUyE~Z?0zrH7BS`=$&D9aCPlnEoeq^mE{zV3`DN+Q72x0W`tSGNQ++6gT>)o{-WwC+@la3QNym&27&55=&xUYCq~j)f5m%kS?(G~)u6;> z-A_-CrJd)mTl)bYYylpr@n?tkbNwwRwrN9$qr7MR@z$IFy?RTl{WR zlKvuaB7g!+I$T!(UhqgN0DlZ1?Egd*pjDmkeBV^(8+jrL2ae*4$e&Q6A3^aWVpy~b z&OhG#KLbI4Y@?rM4cB%Lt~p+yuD<@!cTIg@I4QADFp|h;hai5!^gawWF?1lmDpH34H^|V zXuy5s#WOp>`00t1CBVqV!}4GXi3Z&*(Z7_3ktX9WL0#ZVzt1^zId#6YvO<`Pk@h^h z7bVu0@MSt;6tPKnU&-;JBbkJ+ z<4BEnZ?x^y@P4>bb#m%Li(Cwc`9c(;RZe-HwI0>>4SqA26C99KY5XpL&G87l1B{ql zD~|x3{IqnH;V2TRIy$RJel8Q=51%cakSK-Glhg)PkSj!Qg8FK|{)!U4AI}2MoF(e4 z@gxeI{^C{gmGay9T>0x83r=wSnZwlByP>(py^Nzke_UdeBTp*)IS)jMZASzp^a8(g zrL~>Vf{!MlwQ4+ltDYFJSWU4NzsPU838)-)@5wZnNrU0eFALAZ5Y2^X4`B-%0I4P9uqx(m&g0(6RIgxQs5{Xw&1gbXHb#Zsfj zx&0p>x&SPRI83;=zRnz>}to-a1J{|q?#xFhlbePy2+ewb?HF}ZJM3zWK~NuBKiGP?y_pd zCnmptDS!ffvQUJczjUb`8z?qcNUGZ$?X1&h*h{5cUuL-0P#be4Hr|z{~Gvfy-|JxP+xsBZ={WtiZB03(f$TgS z05yTAr1@{CZV!o>M{|?$!(`li7*vHF$(|vIEZ0*or+bS305>CjibIE`vz-(Ex6Xn{ z>~)q#<|R#oIr?DnSy78$pmbYvbyA+N+c(-_U}4r;_aHZnbQiD7R$q@DRJ?`6%_!Bl z2-;i*f4v{1y*nc2$vJ;(H9p^k%qme4`v-&kwK~_Y(6vcb)}Lxvcx!^%at5f(q=zWJ zA|!n`@qHK2k3?Q7mN2#C1GPoKmP=S)2fTu6{e?!hu!{tHOAIGvpP%o1(1jnOUAnD+ z%U1l6{0K%CDVc>Wn*g&_Vjh%Z10su0hhB)4z_$|NU!lmypD5m)jGhaRq@w6u>~^W~ ziUwcf$0LIJvu!{ppl@!e7(%=%;#d6SYy5tMs#mO3<2Uv9X{*on>lZ&_J&T9Z4)SR~ zAk*O~bmxmK=??_HSM|jk`N{Pq1MvN$6?i~>b|u{(?x0sZX0E~!eK7MLYpF2V$;6hd zZ-J-y$JCEf;VD(FoT!(6i>00TeT$cWJjVHtfbq<8&jYvVn*#XK)#W_* z&x?S^#T&&p<-&a{xkFe8VA|p#_`Go+Twz#*r0U-U_1$I>@z57Hz~pbKXyqnUd;kvD zTf8w4&+4;uw+95%E4N|nYk(=+>F58@QqjgMwWWeT{3Tfdn3&>+$l;?MQ4E`}YkbCI z^2{|ypytRI)ang9=ID4ep7kcuT=C9zb3ohD7HIq;Q`NTYF#jy8`LrLg(O0p>-rcL% zp~QX*CE|;mh0k^sf+s*)rW+rN%Ru~WL_I1tA_*85@yZ5%+37P-m7ihz0KbBhRK4;s z^O)NynU#-$SV5z5-q`eUSh_(G+0RtPyQ zg{6I!m}SL6RoLLe;h z24yfVXw+Dfsx8r46M>o`0q@9wxZ`fc;(~1{%oJP+P9j{dqiNOFs;yezR;=yY+EyEI z%OV8CDuN4$3ySC+Mr+WwELxra_ndq0%uPbK-#;H^?tSjFoaa2}oadbLoacEqxR*l3 z8GdevaweZDE5^Oc38)mM#reu~36@z&;o|XMGg{w7icGaOX7&Yz;H2HT>0qt%;jO1 zuuD0Dsw-;zxEp4h)UwHFxtXtI9y-1$YTVI1K87zLTDsn7nM-=}wZphUjAJr|JJop6 z_U7sM724Y^4G19T76vwRC<7?4$~~SN$iQXx>0d3SDoh9ea-|Ep<%;|N%Wfqi1u}XA zb%KVXoJ)qUMlM&0+bRa)1h4nBR!TB|#Coexq4vs^dNDP`-)eeajghT&Jj$6}J*^je ziHH-ijf|Ss>HLuUa_<9=NF@E^af$cnjD(vPJ#_}JIaY@j4(n-^XZbT{wqD1hdWB5u z0}8cyU+gMfp)Y!$6^o#hdbh-Y2J5ZyjS=t5|QJKfzqqNEV3*fNWlx zcXZUAJ}C8Bc;U!J?cbm&i4=H3es4Ihr&%D7XQl~mXOs1ByG;^&{i@|X`ItVL_4g%` zzH(4`^~&Z_o~onvsZylbDh|;fZSh~T#bl-$NM zU!{CN&WZjJJr{s9EI0>qE*pT{bLhBEodjx2un!}9m2O%1gH(J<~YEGny@YOX21 zD0-pr^Z2>R_xe>L*9ianp?VPM6CA4bc;p$X^S&1xszKR-```W@{*luEf7ZX=`tCsd z|BLmn_h7p{;eV<Cm^fP)9C;C-L#Ou>)p|15C`ww8 zMxIx#uTlHY?BL5N#(Ebpdy?#*tj|aW1W4f2fw|gXv$XgBRDLnE>d8@8`i&(-mKe0n zU!azzcGV{dclV^BUDtf#rHPR^6lBJ`@FI9b+ch3PC7g~f9bY;By%@r|NQF2K+s=6} zi@rqr)k6K|w*lbU++WaK-Ti=NZ-j zbtnqx@H_N!-wF`oUu);Q+mOyV@C)~TbF=!4@s-BnMZ(ZjZSH(M%m(bsTm7WuHE#sLv7QUACUK;<`^e-9u(*Mc={cF+xjNdA0@V{AK z{hiC7{}1r(EWj5%%Uca?Fy%;s^_+;t<`%=%6S>tFv$=!Y!J!nfRV(!rUN$FHk^n(Q z%1o$#Bmt(R)k&H&TP{T5ZZCF&bDKCR=zMj!6K9#Mf;=sFa+6stFcH_0x&(4zcflYOjczPWVcjL~ zmHc~gw`DkaX3t=TobklF(Wj(j$@a*kk*obEy9IjP=!9r0ZXKU(6Z+%#caBM|e%%%fl}Tmt~vY>cqY#$lKewKw|!Ph4<@7ZT=E?tGnB!rR@K; z{ilCgpItKPWZ^Md<)93;6LM=!yX5PVnw~C~?GmdUsgzgNoVI97E`6&%tlG3Ar=#SV zc2R0q&gx9m17W4LDwPSF=>xmWnpJE;?Aj&sM{XZZ?JvdEmHayw|K0$wQrUSIW^O-9 zWU|Dx7m&@ntO;11C#S}Dfim|0XMffAyIpcO>&1XQ7|D!Y-cxcD??MI{QJ&gTpA{#D zgQ_9o(&BsO9&Eip6+ZkW^DyjEbw!N7__EN)ixT^wlqV*;@cD9|HI(i53RaHWCO`F` zCf?S1O}ki-R|MWt-P*s8yn=4KUN6V=Z5?{)=vg^$RGk?dXW}$cplw#0JKs$=XCC+K zQt(D3z#8M$eMNZNC3lg6n+wTSk*7yCF2(D+=kBA?3a6FE!fSaoZWO1m-XW3dsE*ce zPvSY==*+=41rkgy(`|X53{*LZDj|W#&CV^wW|&+HDtq_>JSiez?XyQj+s8`I^ay6B zl6^I|T6Xb@id^J~uTfg~T-X-IYf4Z5N9x_r6Q$|t9jSMpN$#C0d3y+>4RU3%QuJ5W zD5LESWN*j700N{}lhM>+;$*Hfi^n`h_87aLttk-n>E*e|lSd2nBp=U3?mkLDEqib= zcTsma2{=#amG#_1gh=g@YbeV1DSWrjE=BdOsBor{i?n@71KrMvytW013wZkYPg5V7 zX8NkC2K%_fsSFMuX{NtZD!R9K5%mS#Jtc#sN5Jkp0IlFZNDpe}{}tlFQ@7nV5Er)( zFNR)CdyGV-;&$jMSwC24g*=eXSko$5!+YG?Y}RZr*#LdRPxyDZaa$`j+r^-?Rkje? zjf3Rza(O(xRE+c1mw1MPIhJ>$T*L z8h@D-iZ0sRLF2PpJFXsVmWe$WuUQ)puVQnZX-(S2wbK)Fn5)KZ7fAgRLd{_JmQ#6- zr?1}?N9J9M+=}YbM%?;L68m)hD`__Ne!l~e6u@$^yk zM$1MTHg1{;bg9o8*uw;HF?&+T1;7JLffy>ZWNqTR*Q(U-Y{P7Fz13dJ^|UNKzFEfK zF1Z0+t#*^(<47SD<5rVV&hrO^@oh3d+fBA?B}|mb<{mb0ncTCTdyT87Xry}Fadl+6 zZe3;sWmR6-`^cdUe*<&|!Ri@)ZK=^ZhmQhM=3LFy%*Rlao_Ku#w`JxsNt7`$hpy_2 z;sfLLy~b@{@Y!6(_l26NewA_SHj;cae}U#3Ro3u28^=SPxg*e?@p!($7I!eIsBcT7 zJ*DrqHfb!itJ%2ara&7%(>A~|^ru7VaPUfIthOPDHBvGi#_glW5?U&NDW0z#MAu90 z#$EC7$HhbN-9t9cv>>>oIX{;(To{|R84XNHmz~i9{d-<==NVb>Lp)Z(le76S)pDFi zBrRR`e+1_^_wn3E+P1aj<1;Gb>BC}T@M zgnoSOy6gdcs$)J?0H0&g&FZwnEFiKyCz%!9un#F8lWX5Z{n zVM9p#la)-qM#~>T#Qd?;6t_zbQfQ5qr%CH68Nr*7m+!r(Jg=}`#eARqz%KbHEZs}I z=^O~zWnV3*6n4ov{gj+#m#pFm*r;)+@7#jM6biaE)w}lQ7Cg22zRFR15IkQeE)D=3wV%$5?eywZ;#`@L@3(pNt~ zKU!2j^<0khn0e}WGyKw``spkUB}#q$M802LF}w)pFi8!#vZG|{Y%=~59nAluW{E^j zH-#$_$3)X6oH4@UOs7@(_@gGf0g>Cq#__qO#U_f(b90BI5LC0TIk^R8#na}iP3uMH zV&){+zjQwLK$Xm7YMHgDZtA&-QAkURSx3~mi!Si=E_3GPz_DV{^&x>b`Nph8*8^qp zWhReNvr^X&X5Ko#q$2Tb?G9I8^4Aa94ZqRJal8qm`7oIWdlI#N<=i*2Kau?*kqn$J z-97=daOv^H@hB5GlEgQn>FHo&)Q`c& z+Uf$mxcI;;-330-gzI0L``aKs==l}W{%Y;J49j%-xz=lbsI|)L|17V0<1gl5H?c*D z2;#1B;Rj?H*BBMV!(EF`=m-CzYXtmW267?;Inf`;qKd>(KIk~b*D{dJQt^(4BPtV2 zc&ignnWBa>gl2tL(qRY#94GiIc^J{i{U>ho=1f!Q#UrbsrnT0U3occ$!*#7B74QT8 zuaNTpG5$fhIT-vi4%4L*t7GXi$}1AD>2+V|I^e&n5B?`YkKn%p{Ii?5zH{yfc79gJ z>R(cNv?o^WT-)g!?9+eT9<%Yru&A+&_&A}6sWThLPYrMIDPk|;Ujp#^bdibL%`%-q z3U2}8^ua!S>s|q^z1dv7RavEzRnme^zBLljnzG@W3`DLswV++4jE_~kYY-QUe<}C6i z@Eya&|Gpys-3|u{5c-Rj1{37HN9C(accyh}|L>KUqjmmxoA#-^Pb|lF1^WtL9jlSD zK2)8HeD4sM9lLlJ6VNU)i|GvzOL3R~2J%Bx>d(tlcfOuuM+YsfjLBB^SK}6&NLjr8 z1nk%&<94ia(PyCZ5Tm7ol$brGTHgEFE-HAWZf`4sNS6~}{NX(j8mx~-ySrl@rhM`2u_>KEP zwHqty&#rUCvdYh2&dlFw#TffyWS}1jM)@bW`)rB9HS;)b#X58>KORZD;u|6c*O5Vh0`msn1~2%Q4kax^5Qp1 z_a3IOa~(!;(8Lz}j5SkNmxq$yls*#0na5Q>G*x?Os-+$uO=B%4U z*%K8l99=J3>HSuFzjgX+omw8ZqGQ#bXh%2;!mB-bh5SM%P8ghf;Zl2Uv+#v4uT+0p z^x=X&L!zS~*zb_K;Pa(?7SuCTbCwAMi9BxLS5tX5hW@RV+Z z5l%0~T|}cETEz2^Zmf$l!dkD8biQ(4DzTXmR?<6}&l;eXmZ~~|z-k<8jCM<@goH1J zR+%BE<)K8EIl`1{LrrVAnLfP~*B0iN)mW~HaeE43r5w3-35@Oz@1kb~&At-q%KLU! zb6L(UeCeled-j=W*W;NbUO#cDgeNqBx2CsrV6pSeUCsp9411NBy|-B}m7rp^^D>8% z-dDd8dPl92Or_%KM`ZoHvs+UJN#De!#D zE?X+)<{eB`a(-ZEVz!3N zOfplSe<8{|iZQGfN(@CMNqzn$&KN5?NSq=)QIRg8o~URI{EQNs?lp}^_ezvH4m@hw zdm*i4GH~T}!9Qu*`!Tr|Td(4BDgNQ{;;fp;Ex!c*ezEw-){l~t?9&IaFUz_@wTf2IVM~`f; zB17uhK}DRaOWP?nsAbON0l8AU8s5WTt6i6ibnK1t;bL;X+77|Wlv1N*0U2|Vd-;}; zD1lsLJC9bE3Zm3!B}QvKiJ4OVk$Ku5AH>m1%O$(GKn`=hQ!9hD(kbH?8D8Hz&oFCN zx*6(UHI2z!J9N$f8jFisT=yUPfVDU=+>*F**uU6m2qJ1jeC`Vgtuvj$kt~ifWZyd7K{)Z+&zoVdzMIdm>!*g6NW!s*2p8 z)pk2y@v7Y*!`$r+^LmDPJ-V8+R08F20>EKyBEL}|ScscQR6LCJ6>$}Ot%;h&KV#N* zEM`r+C~<@it;W1IGwvbhQ{>kdvrX8wF|32 zjP3ThobIgdiG9n#V5d@Y{hH)`uHrCJwsnr^nW&;c$CCg9eCe5Mz^{+b05wh(YMfEq zp~f-eypPagN8&75!5*2nPJI8qJrBCL&wwsgCf^kj@JZJ9(;^=#v}-CKmik?D#Zd!0 zPZNL5MJ}WQXu7r|+Z7mW)sx9^q+PUhQ1ZCc=3=v_3wn?Ug+v*frgs$?cM=zU#@@tP zjl}aJ`bQ7vu4>@8H8T6RS#9mrU@73A^Z41WHPe&jgfJbWgE)Rq^xMSXTqL!ZSS;I} zM`X)ok7)N|>*nQWZAXvrY2N-aQ@b@c&6H_X9xX z{L%9LA4At#U@QQimoI;Qkmi^A$lvJ{r8bAP$~^twbn*=u8r~~Ib1S);DHH#1&WeDe%{|LNo_tj>~@6s10jCkEvxNVbi$H- zzS{uR?%Y7*Edme9Y>AaYxrCxl!?)VXGlw7%Sq_d_IvJgv=Gg`H9f?}`GPS;IZuOM( zpmOsiNBDz7{Nmx)}I!}BHC|*s(N|R2^F4lM7 z9!pR71nWkaomIe-#tC3!IvfFPQ}T%H4+B&fcoh1wu~Py52obpT$0k1(nwL6eN*%gP zAyZ$zzsoCuMh$o8RHEHXYb^JF3k6|lR!AM`DW&Mv5n0t~4`i;=%U(AE%yH*Ob{VO(6iaQx+e@$$Ta7mgL3HCw99JcOL|7RsP?qzY$vkW?QDXHV@#12EE&#EW;CM0 zqqp>>5y4jC&Ws!fUb~6VD6v~Bd7;n>HYH`MJ z+00V;f3a8+COrfUan|MS3LZopfiTQH|H1Wjkka6%OqGXRBsL6hdb;GAS>e#~<46Im zQA~hg)ATVHd4TWElY~VFO|Sxe?+s`=PwsXuqYda{^Hx&C{QQg5R=>e$`ClIT(i2Jz z?rJ6ROUc4ICB%MiYIb=z!7Q_zUJ7|Kkvv~=?hoHYLsy*ncfEx@eB6 z4N!IB1k+B5+e?#5-gz$^N?bTjU}o~Yq2!P9>nZ#^YXH%;=y%p@hw%Ys&W$_)2yrTccV`_|4|ZO1bAkmt8uSM7&eJeo;qNAFTJ zXnepr`QmA(nG(d6;+gfwhxs5IvTu&17tq$x5AZI2j@{V`=07?6TJ&ywEjd;{jT=RS zCm?Ag@|}C|VsPxVbUYH8I_{j(#36HEBwjGgf_okx)|hWoUq-Ze)ejICvPOpe0{$l) z%{Qa9OsXX2=L0!xhV^|C<&Vdq-eYE)5=KMlNe48<9B99a6-au$9xEGAmVv ztxgOxQ_FO$6XEWRO=5s$eEg>-Y@`U=5p8KGJ>hxYWUOuxH6ndEQVUt0alT;a?BjmV zM*=X%$Zg3k-E5gVUfFQ! z^IT$n%sy#G^Z1HT;v=4>o9S=7Nk&0g-2TP}=T}GbOq>QAhGNC@r<OZ{_G@E)<$dc9Oo~BeVdX*6{nX7zMVUmPY~U$ z&kK^$WfP=-4dNNYks~9;G}e;$9l)X{ZCC>@^eBLCH8h=GKFR ztTsAtfdZ6*!)sUPBA3wTEd49{0Uw?BdNKAAlzXC?VwpysB+O@m#KI{iHui*M&C|I@ zuu4_OYI~skTsXom8&4%-^B*O(rVI0nN9U$ftaDTcNHJQr&_qu|lK_{Cyi4?t=QD5* z{IVM7hJ4SH$dQZw% z$*fcd1=xn$klOrWYE}7?#s>PYVPG&RYMnbD;ixBS#+iwPCSF(c7w04lGP`Uj73LzJ z3V29sT;(V*Dlfc4ADXG%^M7EJj@H2Xk4SR)!LxTH$g|}kQYBDot6lcz0||THolCr) zi@0%Kg7L)jI~p3e1m|rj?Gd2PM&A?5kUk2L9cbFe4VF+Q4kep1R#J*`$o-EyjFF8j zc}%Hu8f54h3uiIrxQ@eFB7jm)sBi}DIuJ(7v838%Uj-7OR*`=M%k4uyRevwZya8(H z@kFHMRH#>HWy0*NlGo&m7AWw)UDm1jS^Owwn2|CMc;zKFyQkzn-sI0K$7;@4TS*@} zzszHvuM+}p+O{%YPorvn?l4MG$y4H73VH5mY#Nl1xw^WiSZJLuMoWY`2x_hJZJE$bn z!8hkv#C<-#yRvo%z?jyW#G%Oh4pDcR+s1xGQ3_QnOYRnb*cWp06PtZpH4%MFjN1Y? zD*X{6aF#&II*RPNmGxSPJVlba92gk{59}ag^c4b$3dI>e4)lH}9DWXEA^Cs)-sq;a zx_?N5FhU-`*R?BZ?V~^ZlBsqz=jAo+f*++l+Vz?&r%7TKyAuuh_RQK%wL5g43h$_Y z`-b65!-*kg>V>c@&Cw+1Hu-!CbALirxyX&wqKcoMMh6VdLJqY%(EMJXRfq>|APA-v zElAcij22i=C^&JfGn+Arr!Pi9U?a;r&Kp@+6ZdQ4D;%R>v_3^ulKd-0^=@YjQcv9x z4Z_tJJ**$>7D>p`24V!@oGTeZyX>g_z_5LE1mNhm$P$xk(;!6;qA262ehSFQ@25ZCI!C&4+-MaIF!S*U zQ9ZExoPGTC36kEMPybvLFqt_+lKuke0fJ(D&I+8c2+2X@ochHGHPS0+{SEdq2yAyC z((SUp!NT^K5Bax#)3AO5cx7gVL{y|O5dNy&@ zB&*ljP)l&yh-afU8&HLdozAWDc}Ltj{HIg{t+&fSTNkjczp1y$I{F={+&WI$Fs)ia z(lcLS>Xvgo3M}i7W3Zo!PqL~nFtZbBQ^;TNXK2ZBWeceu1vRBMYih!9Ug_q;KtgEo zx6qfZx8v!mFL(!v?aqhP3;wpg8V-#cbE1IOGiaB5G;UlZS<*)rQAV`Dxend4%RVQk zh+x*lOLoe0=R4fh)9KS2d)LLAbx7QvC@1bED#o2_&f8~7&!9@FRKD7$p^lz_{O{mm zpUxx>rHr#fPM`vs|2@3#Fn70EV}3&;s_E#s75Zzvkc-UvjQ;dE55Wj_*%c9)pHKf> z;OmfCbc>efgx?_oM}($8qz_dECUt=+lEn^Y*fHe7k^ zdP$lEa%YQ}y;gVjkpPK7zy0ikI-@3mFZ_j=^)mCzZlGJ?3{~jXj1uS`qkb1Uqh&SK z#?$jIM+0~M4t)cjX_z`hl>WmI`(@)Tl9*pJ-Vq5lQeE^lR%%H zP6Hq1sY8i#1s7EGCa$v^%_g~{ZA4E^SKM13$8mNb_k`G|o0F_vtb|8G(VDd+4k6K~ znK!-3x|S<_sG1|1- zV0uV%E$~S6kJjgm0}j*}w28O;Pl4*%w7&UTU%l3Mm{%V$)D2_3nnXT+DzgN&IGUEX zr#*kTJGmbNOKlOglm4DA+|T4bWt;pGPS)*IavzkqSB8VnYN>`r0G*6nXTIBi(Jwzh zr?AT&rlwrv_FZoO*w@%m5rAi=4^MVmus?RmPu4?a;uKf@sO_-IT1fHn;lXRY;2a|Z zTOUw7>p)V9RA0h^_D zHMWne2h7_cl2}wTHh7IqmWoyKkn}09rsX21NFIn8tbnoASl)KoBPifvklaI4+2C<$>&96>m;4Tq<<+Bw9#8ysCe)(puv*X?26Ox?bRstcSI3y20p8HB>T% ziMLGjpx)Hwg;$}YM?~2Jw)Jiv^}jj4rmH!;&~F4Qq8Om=OqIP;|e-LoRR09gb zKD}v27mB4lrLuMP4K)J2!j*YO6R)JVB`|g(@*E+ok{L0J)MLqq0 zE>dow0_O@BeL?tPm($VD?6QdVASc<~9-M-E{zyms;8MF(H2+k z5+^uEd(dzFG+Zbo^yZH@Udnfb?wxKJMEc?RS)D)eo_$8-ZJjxj=?qnyAnw9a@nJr; z>VgK3E1!q>->SP+UW>}(qRrj^vgpHIgLLX(J<79^(-Y1ulQG@xJomN$vfb$t>PCY^ z5dZWY9%Xgn&%$zIKc}O(uy%dHxm}V%m}jNQ5lxZ3J`u9y79&la4JBrrYpBneBxXk0 z5Sk$VflN>Xkr6WejQhg|eiHK`QlZzK>r(G>YqZ!QON*2BELo;jg(1A&R7vk&m8V^* zfe5dVdT3zxX6@agXQfl>d=P%;!)8A0fHf2E_)(Mj9C?0oc_hhk(S?Q<_iHFbL$I{f zrNAX^*{g14tVRX6AbNg4bI$pA7-T$`j&Lo8rAG2b!5DVjbXoAi|Fc~LwWQ@Dqp4Yg zAdJ>y7&Aq!;BiMUT}zi3zPmy$)oiJ%08zQf&6F3YQ!|^sQ9(%$aLQ#Z!)d+NP=W5^?u8}-wOE+HV%BUbe-D# zd2(M_xBgt#t(&ai`g&9W)HIb7l5J36JzFH;0d6HblY7h8oqi>ne^2F01LfVKAG_^; z>=!NIXHVtJ1LbAE3YW7I%wKNStc{5x6tl_$>q#AK<|3RD->__CX_NeBpgj1}4?h0* zPF9IRaK}}@2kP_J0c0WkHRo$grgm9xsfdNw{|3Felf=oaHq1W_>q7-d{U)KgT%r^n zlz4<8{F<(J3r-x`3nMy{b_soEoR8k{C7lX_S#8d2(I>Uqf5?l_3=|j zb1!TCjboEFtR_WjS3fPB63xAueJu|!i{{IOy`s5SQeT!Np9W!J{D99MkPAzq% zzAj*;t{ofdDK6`Mbh+;+>`^B(6@&^7ZleV)LS!aHaG*WJwC9&EEfw+GdKT&SNfp*7 zu5Y?_wYbZK+vSV|p0P^BMl4y$sIq^6?#p^}y1|>g7V_2B2A8A#5a#pAbqBM|z8qng zyDp*|m(+)m+GVsGLGXgB^8Gwq>9RSVX&*`Ip=NkX^XIC1KIz1qb~dVk zSB+Hm+YtH5SYs>z`*5JpKtz{6eU^~3p@R9H+aV{r?938j%@d_7Nc}_Y<_@aQ+@iBZ zGmq4}(Q!}@^avQ{59f1Goqf%@^ljCt^Zrr#sKGC<7%h5PW_rT5L4u#%&bhBax9A(E z!6v+mzH!7xA!YQ97o-KzH^ejDDKGd6kIF@UO&E`85P}#*f2(LF&fCmRcG&||oQv3k zP01s1NuHKrw7kiStEWq~bZMBc%FH*GGwM*ujZ#qBw2%9Mh?YLf1Mn1Mpw8~Z^;o5) zGG4-5&L|NGvQ}{3zOJYB`u^(#i7Mu@5`TVkowvk`3F|Xn{=4AwE>&o<8&xlSM7?74 zV-mn+j^!VfTS_SR37*6$e-p{xcvewg_7~23OxUs?$oEg1Kl7iqh+}8wdY!> z$FDg~SoC&JI~e6FK4aVgRDZLF>}v>+>4$6<(_Lg6ExHbwNB9uue>Qmd&T`s?3Y7N* z-T`Yfzm-%bhL>OUCI%1D`T2@(?R@JuE`@kFzTYL^`;JroyKnRvt;aD2($bZZTU3VZ zkHEi^g^xsZfxZt#)7q@O<1+f&Li#d(-^`Dnj{jTaJ4r`cVXu%HWn44kNpyz7DEWAM zS6>^8p?Wupj4Arsc4eJSFE{DVcNCr&gU-|22T&TbNN8ZZI(|mZrOr9 zBTzV(d97!z?}PVBcqV(R^DrEd$FE(ocPHMU{QM^Vp^&6_c5|Qkxxrs?xuZ(@Y_!}U z%pkJsOnFF8*ufqOk$JP$x#M!7%06AmIu>9tIE|LCO4j;c$h2*=%DT;t$qg72INL(@ zFO-is0~WCimrc%V+Q#Bf1%LK$wP7K{KQRqKb?Wi_Qol{RSVpSMiM~inUQT=R9Miht zVqIl|W=-oVJ*w;*6bQ+>4RZ87A%i5Yj0s0{&?+I260RIohN)e*OhPVmk)M-`<)6Pb z@gs+nC9aBdP*9}=#_I;VN~tiO{vQQzs@%c;t`ijqnQmDQOE2J{tq~_W|NDX<0S$Cz z;z)9_a!p270-T8CwWn2c$a3yXbeQeVwPei>ZhJx^W_3BNAuxj#^xr3R{NH*)RDaZz z!unXHjupq3aHQKxc$4osQh!oF508U0nS-BPD^cKBT21`QFOnkOa9j(_kq2q#&ZHpXqezwZr32v;D=L zr*HYyJ0bJvMx=VwFAnl4%YL>+m_{F%8^V*Cnm>FVIfMJ8$0oG+yd zvsQ6-vDZ&Rq~Y0I*7o1UKjMP3>>bQ>)C0~KYVQ2%A=57TQd{YKx6%x+GQ(YF`;>ET zs(W?CcfVoogs8Zm+u>*s_RES}?Z&qbXtYl)jb9OVKJUJ?*QFEo5L~A%=+~jV{IA}*_G(xtZ+Y5 zgXp^iEpjUVL@4$}_0HVDt7(_K_9Vk2m_gyWFt=8bWFP%Az=)?Wt*T>%F1#{Zu6hMA z29V^D)+Y=S3p%f;cf#sU?ngCkR3r4cNf=`braM{Zz7k|U;yD$EHLa%-E|J$V$C%?gRc zN++u7nlR(&OvInx-ToX)xLUNPa}w-fZL@Y`oCN#TP86~93rVou8SeG#ufcwK%cbbI zZvWo@2WQJl)7ey>4*h;gUix}05Wzvdy^HYQ?=y-sLA%F8fL+#oo$+NNcQz%?Htk|H z17(a@yFe@+yQuCXEF%I{5EcpYsfEbehkGbZi;Q)Mv(BFqWdqmC2Gbhs?;!Xn`Nv5QNslqx-82~0z)G(sJs*yO1;)cOO74nP<*&6FM-}Utd-E($rg}cTsXgnI3O9)0+vN4{XT}eoV z9Mx8#iBZU`^{;}`(@VkT{`TqRb|Z(I+%TeME!T$efh{8=T00h2^`;t2aq}QUBvvml z?_~B0=o9C&%{D!+dglh&;hipdP{7uJiI`~goc9rki}@auy*qpVm z#;R`<;{4hH0MVm2r!Cm(gtQ`d+)5~Fd9tdf5saZFo(~j0{Y$4etU;fQYa&QTbVsd! z^84I^l5Vd7xo`eIWvUZ*H=K(+MNRY@*Y-cRCx@J19r&u`Mv<}YGJ1C)#4N|Go zPC?P)m#m=gK0~+}LQl&y-Y3ze8!6XJIca!-SKg$2_UBIvkz{}3$*sIRnD=+-fy#rW z^ubJx%OwxRaG~7|s3u4O4D-M7rJo$Iwkyj!>w}*P`j^N5#B-(Usbo#!TS!7f+uH4% zC=Kbsqse`>BSNh=OGSP!yFCfqgxVg~%Ot8w=n%=4c?N&GhZo=86M+|C5r6-hAnH};V7FG$B3!{J;}xjyZKjDp zVV&;+_p4&GeSzAp(rLSM%n%-t0q8{;XN5!&Dax-UnUMNndO9jfWHO=ykPjg6^eyYD3Ypuu;ImR>-h0r3adve)5QgL+r_=2;n28pk%tQ zM+pdCx|1iecPDQIg6}^e^zPobM7Ey6!UWD-FLRG`xn$-Fp=%U9Y{pGbt9BlQ>;%B< zDycK$Y~fd?mOphNoNCDF(ye5vrhH}sNmh?q#@46a_E_ef0Kc-T{0oEz!@9RhBsW0K zpO5Wh&GZdOqutK#XC+f|fE*%z2xRq_LsP)KCx--X8n%l@@M-(Zex z0r@jq1O;m*E1hr4Q0%Zi;mon@J^kp@r5~XW!2hT8Bj-K#qaRlv4{je_!#q;$+@Vz^ zxp_xJ4mUb8DGOTAtOGUlk=NkwLKlF4jlY=mV~_Y-C<3XU93Q@`5B{#}mcl;%rb&T+ zjlUzw;^OZRA<_Q$>o@)|?7tX)nT;}zCH2UhAC<{P26euh(v!Rbf?qDgO#cqE&nmYk z`xCx9p;)|kEIgoRGV1~Af$lS9ReBEo1<(i$G34J9YT1z-N_7W6E%h?>ta1Hy05YAg zRu?{%rq{BMSu6SWdvAZxSR|wK?HvNA*p0_>mP5RXP!AB0a6b>T!li z8#&@jWl>Nhmv}ugcTia8i}VeZLaBpbEA8|qo$(-3@N}qrd5#gWy3{42dYqQe&!@_( z4-FHkv>U=Y%DIQ^qRMkH33QweL@$~G^ns8WHJ1a2=^NlwhFH(@-_@N8%8KN8AODwm zDQ>)}b{2i>pP~OidQckH1J8r4WFGiCej3wCh@SO5(X+TAAYC$!L2>o0cVykDub%aS zB=yy^%3Qgl2)a6oyFrB04tHkmNjT0uS_?{+#in1P@5J&I-RUailk^jeE)WrRzWeUX z_VbgwXR@o1jni+<(1X9fU*n$w^V2JE4QTu~^V7lf_}|P=1LT9YBqBm*w8T*7O1CMA zznA^qzP#v`_^5&MVo&>xhvzpXd;aUddaJmY{Qbzf3>bu0)(`nUT=okO#*;R(+x36v zPa|n-D@ay%T=4t#gh5}ZIiJfV39BYb`(*-j%$bADnJ5Zf;(w6&Y~jMX-ta-K z>#p9HGjXg;{p-dl>v540hxw9tQWD2NO`K=P3(cxdQ8<58z6{|@yZCeRAKP|rqDC#Y zjTQr1i!N|BVAp}~e=}bH?)$$RPxm{Guneh7>Btp@#2;_WsUaF*=dI)SqZjt4vwz%G zxpf11qOgAK)sr7D-=5UvB%|dEK?b67XzB#^h2UKcE&l`mxH|jv<&dv>tb0kFVP2Eok_nVy3)k(@yQcPPv2*sTt zxIK}YE~X|EyGVW9bM)Va+-vN7AU`A7le&vvnLv7qzj$Y!J}U-mvXa`djid_NW>o7M|a>*Xd{ z>Ul#P$T(6eov(^BT(E?UFj`&)OfEZ6*KL&P#ri}e>YXzPNSn~iN25g!4W56zEDija zcX8ggJ}$MXXpB4v8WmGbV2J*8OJc zYw~&Py2|h2LYc$Z;wBHHzg|uLcDgJRoVYd+5wU zN%nCkKIbl-Dl9pUF{8dsr15DyKl0A`K=My|N`pLZbjCl17ATnO2T!0ar;!D=4<(qm#Q20tUpuGD)K+J%|=R*v)JU5Uk@k^C6R{hD*jD^mM?5jqLN zaTkTPfs90E1k4%uQSE&bN$lNw$iXtQsClP=qoed5Pm9Kh+*MI2zE$rm!DhZ7>*ir3 zAVCgWEkS-G#QE2eyrTZ}awC1ee0PV0U6XTk0NgP)(<;+lJ+nrQP@{Db*%>kdjgcTj zYdSrrAtxrc%g|*Hl79K}8f97iJL!{i>?mgj`=(y$u^ks_v5>&pX${o_@lF=P&9RFLB1HEk1VtbdHph~KRsf8F`BK@lcoDjrfn*e&v`2wTrn z5Mk{5Q6DGZioK8)cPhHbr_9%auX%#6Z`aQQU&5~c0ls#BE)0=O3a+FyxLWBuSbN!m zr0w{467Q)WHjf|D zo)Gv2KV$mfCn%ksZ3a#F1Y@#4>p|uATF*buI_(naEy0sUi^zvX-x3l_{t!`h2$(n1 z|Et(d-!Ml!Gub+Syf8mSZgnJQnf9$qsRB8{GN%r)^LzArxUE|TF?pmjotsj;Tq2NJ zPmQs5p+d&_v)Wy5*2HhbCG=slZ-2413naSpiAr zUd~dgZr#Kwvg3_bnewvt72xSJKgcOovtb9>gGGGTvryEvBUs)&H+>RS5g`nXp1y(& z%DHf|GS3-}t|W=4Z6Oh7`KQVb+`BTZ)S3E6d0}%j*05F7M?AZH0n^Az@rmr$>_DHR zjq+UNV_MeYd%4AXvd{SApKo>M9C(b*p6Jg~k4Wo?Sy#FUbvYLyXhqs5>uHAd_o>!q z{aQnylPd?E5eh9?Mtdx)UH={cWW>sa-@wF03eV(nt1eS7+*LqdTc7=2i#}8)@|kR^ z^=y;%SEI%0&uWj#I4Z0CJkM%It7t&2A3@wk>#qfoKX_N};OkNTh}HMRjgxl4jkgOd z{kZX41%P~hG+J+zMg}s-0iP&Ne4c!=B%f;lPl`XtXWzuH;mJkMO8*LM$yP7to_7X7 z>76CmOx{qQUk~WsBfs84prYRf7r5=2U(aSn`ltN*oGg&^<=4MR(g1#a;8AVL<<~p3 z)Smctl#FoRK7(KD-vmW)=(lBOMhbq7%iEuL3-as4Aiv6;>H&U5c?&Y@DmYV_^@lX& zGV9+#gUhVvQLoRea`IvJmjQB{)rQTNSpqup{6M?_X|b7rh%kt<>?pgl-Q)KzBBStJ zz&?$tDVdq1Rml8Dc{gp(RUGJ7;n^wDerce6ufD&dl&V8P_jh3P9q$z36!XLA6Js_py z50Kynuv$a>MXbDkMdyt`s!uOZ2z~?Up8r97JuebCG3+U&=8a zk36GeeQ?iWfnWaY!Pepqes%OKJ-x`+ll=E5fG3yzeSZGe^;}hB)+AlJ(T#R2ou7;e z$MtOW8xjs-Tyje~XZ~_8lO&5fpfgdLi)?+0tyHTx7ll+sMQT?`vP2jDbCC+j(W*$T z!ZOac=dQo8bD3GuT2EXc`&0K}{c60AL(h+wi#$iw(tdAZv$T)1Aj*O0kz)((*W@DK zk@j(r{SIvOgsSQN6Z9{aeU$s|G)d?=o8^2}G7bQ6K3S}aK06+T-X$3O44QGBYysyZ z9GN@(M!v}JT<`ZZ?{}j2`&I9EfA6=*`~3t6q};pS?>g_d%lrMY_j{xFJJ&=;-W`(5Y#c6q;l^nQQo{r=edy~g{!()&Hv`#stFJ;D3k-}^1{ zem`N9wLSgy`N88q(@guJhO!bG=WYg>>flGwQ|p{NeZ(Cu404D2`2MBW@BY6&p8Vf!3a<}ep(fW~+yC9=-?1@w0wl=0NYyvF*Ohp* z-1PDmy#fzkm^VlAJJ=Q4a=xFn-95`=dL{W#igdYlU&N+{p3-DNQo8z@`r{$AR*q`# zPV6TKr?PIs-2qO~-SnRdOmToUm{xH-Juz%NzIXFyES;+TYBiQ}U0`Tx+6?0*9-mv% zSe-Z;|7D8?8(a ze8*ZXr8k@`*X3~j4aQA}YJl!o?CIb9dfr$(KQZfhB_<9~mwP6w&7JGb;&ZsttU-OZ z!Jhl$Z9Kk@hDY}4eka|3UoKN<`8m`E0$8+Z=8&LEq?1F&7bRjpoIfo+C@r)Y+qq$U zadP@pZq}&~TZ|DYcP7&z^=HaxW1@WGJj)#3f?p!I6{2uAOLYuX z_D|q-{Gen7O-MYEG?Bf}`wrPS&in^OA!(LxDuaCA<{l6v@=8FjPrWmzdH2}FDf1)E zyDO8-5iiMPof&bLRMik_-rYbLm6!O?PxJN9-^Y`3UVF{ErzbvgcKlKlM78I=B7dfc zG%xx{YIk`4H+oZ7-XEqNdm>ih$v6x;5+n3_5+drv(@X1hnZFV2>eVA^6X$@fa&889 zg^sxM0j)-5c-JM)mLV|4k1!TT1;^>gBk$r0e!Rn+Ip{|29h1vO6fZHmJeKCxUOXd_ zCTpYizI-Z6kn!-kNiCZed_BgQ|LXU1^&2vCaL(pkazX~@p#;BbeWty4Fb$&ki!@M_ z{kaQ&RNEVrz144jrhFchxt8%3{KkxDG{2q($@p@im+(`Y@%UKUgZ(~DZGru^z<%b? z*Be@PEZCYkk+NRC0Mi8?spnsmPwhU@So}HjdFuTJj?>}6>|rsMpY>a4BeRth=corf zMY4eMK2JhFxtE+0vPm5EUr{EUUH2Etc;EldKx#R?8zXZQn*!Ww`pZwD4?F^A9>nBr z(QPQfS@K7ZTXZR131gC90eNfOyqRy4t%>5+DACLFCPa&gKwmg{ap;umh^2y&k+8z(1 zZttS6O;vRb#!ptHJ{!zxVMC>}q^asGqecAXG5efeb)(7s8C)UdMD45JkOB>a=FR-r zSn>zdE0^EwTdFRG@|hWl0K4^e>6xG6x_F(d1Br6n{W9L$i2@2`hp^tN`aXM|dGBLb zdUWg8=G-o|h#E$GhB$0mm?n{FZd+!Wn~A7FmcmxHR5?6~tTslrRBhlM^?)3@kdK$1cBYx^16yyDgQ;@{G*Y+dlRrZlnJzB!4^T8bRr&h%=(^rQ=&Uoh7%WXHYKNiF^h0JNZ7dP z`;bigU~**+7Z%5I+3&Jemr9;6c|;zW#Vu|h>U%hkx_+y1<7a%y z{yds`zcg9u*8RgjI%AgkbVvSGf;ZVg%KG1Z(2>aWho`2m8kK9ZdQ+QAjn>;G)q|^x z=XiR|6Kp(D8`$cKqE7Rjo0P=kX*`~&I!i8nx}U_(ZN&`8b*WEalP9a1NjYSjfPS{# zB6kS-g1hx&34s)HKhvDl)*;FdaVuNP`3?b;1|C&D4w&D~p*=FcBOd4P6KCmQ{brMB z)uFpm?>3mmq+PHKXBNpaugq_Z4{kKkZwkW`8~Usa&wDChXVVpSaKj+q<|$tvc`zr9 zmMTUkn)m3pyQCi{a{lR#fwD-UM^guJj$0P@`d-!{2GtLfJX1NZOr8a0zQbDr|9%xrO4NR4q% zQV0MIK3n_EXgtc}PpbSdZC6rY$(s1V02GOvj2 zh3mIvN=SeW2bFtlm`RY((DG680KcIx07I~$C!2wiL5ZzSw77j%TfLlBsp%K*K1mhyZ98h%+l;|4qal;S=mR(NVvmzQiy^r-`xEC9JjG6$e>_a?`6qy%A4p^IyIuS|L>p$h z@nBD-+T6?HTrbClpCN!5jod;JiOD0bm744+0f7^E)OjL(I%ev5DAJoajlRBk?%zy% zf3{?C-5g5tD##|r?)LfBrZt>(chkZc>;^?;??K$oeL7fTSFpY$oyT989#PC)TGY9J zT=c)<>>6hQ%8m0N|LmcQ0b4ciBMzjsvE1&5^vH(6*b{$!-u*+-ti;ELJt&9T*AY}D zdzDxLd!7CKFA_lR*&XyDwJjXmxkY!FZNrKl@#CrC)$y8Dgsu(6BEtL|6pAh>n*VaV zX1!Ve*4%?*HE-yl@4LAgx2nP!`V$;)xZplSpNgJ;LASa`vmfuFGkZvq@f%AMp_UHQ zS~Jz^GFoJ}WjuZU$ef%%&ZnX!;TSWJiIpyISb$%R*Kc&yo$-e!-z0Hjc>KJ?b>pu| zRFd$#LB+e_3&twovrsFAf+Q{@cz&2Dsd=av0E;Lo!s?nKMT+Y=Qm=eYWQ zsc?Z9nt%UILEpc^&70Z&E7H93vOP9meghx+m47Ty{v5CTqf*}U2Q^PPZ3S()x8klW znZ!%jDgT`?7;}c~2{r8*2pYD0)pj(G`zoHSqv&A{LqPVpt~0~k($yE{bEX&?1G$eo z`4IuBC-hQ9NzMdcpX zpTf!m?lR}a8mUIEpE#D263WX#Lr-I=*b)?z9Vu;k{$2yNEPwJ@%qE&Z9q!J1W2f4P zD-k3RwGe42H+`%?QoD{r>;|)?fR{>lG_7JiEwbUfyc*!nU*x#htS4B2*uun7aqBtf z8!l-3O5w{zd7N%>0z4tn?rk*clwv|5Iv0ISq?RedY^?K-YJfykjcw@=iDf4Ks5MwK zM&yh1ks`GnaoVkBfYMFP;cj<-PMwc#yc6Q7taMf&5kdGNtdc{qT<0TSq+b#p>>gZ6 zAQT7(aXjR^*Eb%_zE?xi;`VRdJ7xL3Uyy1)sb(IBmeTbmMX~jQbgI%hivCDzl`S1j zv{%i2u=QD^rB#bfE0^uATw?5Z1YXxo5Nhr|c!mNhS?L<~1K5$_ zFlD}CMwg3ErD10XZK}X_+vEmO`OZYupgL~i7iu3%g>s%9qsx8uU7UPnD%m3Mz9KD9 zs9LUHI;}J@RIsJ~YUxR|z6g|PQd@MbGT=eZHsie=ecjuT%E>JQ%m$Jw(fjvm&*- zY5s+@J9CfaE*VO=>wM$3pGkp5yY5CxVph2?-{u?V=({f!{3J&sCl7ua0TQMa@WW|e zqCYlSJWrSB7Lv81F?643JGbnSyd+|TCZQeM)O;enKABt@5?wNCQqbY7ZZi=NTZar?w`~fN7(Uj5JmYe5vO_7jazpbdI0B=6!>zYy-NExFkE(Y9s zhHJ`!fjqnMmGhjFj~|e7_<)ps2Bd^F zB?$A!oX5};QsLu`;G3Ef?E9JlDa!_=JftZ>2=5$_C#5MtZ2Uk|g7924pw!d>DdPsz zQ!^lCUrjk8fUy!yIWUm&DV{}lMc(JHcQhq9f-eq8d1^qZM>Hkai=PcBwRk{EQd5GX zJX2F-R`cOGRZ|dj`IHkiMfPO*d5+eU;CLM{AkR=u33BdE^r@cE-hq0yYRc?D%6d%+ zN}Eni3D)y_O$qk>=L1q~O*uGF^VOPC6-c>kK&dkaq%;mlsU46a_FPXW2v6C7l+Ur| z`sT?DNO?_Dg4D7?Q-Y)OCrt@r{sB#?4D{)+xn5I(TrgWxf->Qp0VyX9NI7mm z%3%XiMrz6df!1@6_wV~hnv$nO?EOW%4h4aUc|3fB2cvcQF3ga0q+4=^-Tvy_+Cs%T zpI$2S^kw9~vr_Wk?B>5+^Sfg~eri~xDQ-{Ql<)VglROt_ii>AA&lF8@G3KV!_pPUo zI*os)WRXKmmY=Hj#tim0XoQfN76&ZeJWK^sz+V=k?|H+4)M`l;D}yaP8-AuCOy_eg zt?XVmqgKcKujAAzXB#`7qr_#gFwVD6#Gos=Qc4kqf7IP#zKOeOhU~m=`@D{y@bOE-KGH<~)K?f!a~RLA;GI`Z33r3#6n*xPyh3VHTx!F0ZWk51@+Bo#xQ zcAf<`Y53l2eM{2qacxI*TzO(>Uf+q;o23Qo5B-<*#t-`Ary7)?FFFsU#Ny5dNgjfPKIFY zc^MIw`Nnz3$KTmCrhS22(% zd^`%~a0iADSJ2@V<-FBy7K{ljv}@w_cbuv9o9FJ8t->zQi%ILZB#sDn@gbU%F23tK zPW__^8sHVJ73509o`#V4pzH6R`X~NXKNE&ao;M{;{2#I9tQN@MiDH5gv~%Qi2iN)B z5?ZMS?$yqY2mBiLjGwcb|5N5>)U-+N)KR_QYDddR*nwWRI^p|@}U3a-VzOEe@B#$Mu zCgky&M?A@Q`%rx!!uTis$J(9l$QnrnXT=5m=`n&)NKY6O>qdkU81@}Vm?ngYi!VJ7 zUZ})w5E9`^i11pa5@clk+sMeP?)NFh9RTr8AV2an$I(EY&cXTDHr}zK@AKVb@F)J1 z=?)V`c}{ZmFE93c%)&2>_*oTmnK_1(YKql#GI&!NJiYdY^V(RL2qz9!Ddl|U25*4q z5b%m^?~bp!*Zo9hf%dn=wb?;;j^WAq`F(x6Bk&Y}2fjVi!{qD#V|wUwpHtkffdZx? zAv8Fd!}Vof6_nu(@Vv{o94F50pY^Nep5J6VeasZOaafntr-na_*Su(kcL9B(zKM{t zZvzBm!i<%uQQ3*7hI=+ig?3Ic(^DY$%_i#{9N5Mk?H;{*d>JG`@AR@}KmnF#y(`OO zM&nveKg_a zx8@Up*qFrffbc-S$;+)@7HVYczy2w`1n8^(_zZl<+u5&tYJn5-=ji_V_dLF{nDzh5 z`OcHu$U9EAvd?sw4&wFC&5gum`Go=PLfmyR_zYJPAt+sEUgNxjO^L%q-r=kArohjf z+h`tf$CA~C?91LdmRo;zg^QN_zdrv<+@U1W`8~^XP`i&6z z`iUO@c{0}^4@oA8^HwJ>=N^y#l3AIAjUiWfd8|!N?xOid8 zrZ;rG0jB)<>o8^My#=P+Q+q*qlb>(wdegp$CSHQGoL^rp8HQY6 zih@yljbfLDu}@_wZ=tyeHyvj$7(BoMx*wp~n2IR$2dRJ#|9mHVsC3jm$1&}>jw}|| zzeO`ErJ145T3QF2|6v1p)M_ii`2%LUkRH9lN$#BOIQJs6hA`ySp8Di;EufFuK~|Cc zK9;lo`ZYN`HJ*pz^MBV#e?9^I2W^yr;Fy0=nD6Jsx$f@5SO|a~zf1oU5^(|s0PPe3 z%~k6}64ieSJl!tN!wB-{oTmWxzd#9~+`b_IN<=`}{xd)cwC^^3RtyTvx6Tc*{f5IZ z!;nOmGw#2JU}O*i0mu2iK+yLu50Chy^Z1x8Kmkg;{?)k)3ebs2xjbI;YP^0W8gOr4 zx+w=x?jtLAe#9c-e}}8fUJKwV!;7=xuK$m{cY%+xxElYT0KtI74VNG&+EqalxdlWe z2$(>C4Qwz7DtHSq36L6+xYeP%$b>U&fMr>k<8as!2Tjpg{S9B z!2JZcOOV`OgLWTL~{ zV?^$I#NkD?S9kq8r6m?!3m%o!FPFNKXDeWf&cyw*$x?Uer;0b%``@-zgrnQGq&>xk5!MeSl$d>GZ{)V7 z_dOY@!&>72fnVu{ujs?4juEiOg>|0JVsFCCVxOt9Cq#tj93-+}sy!68Ko`h|2xyiu zw%MHv#knsAzdISSUPwftohqvJWp$P9ZPhra!Md*$Wv0QrjB6My6Pi zC$m`EaQcvxH(uL4@ry(2j<&q6@n6sQie->1Z;gm~wm)2&)^=KK{th3bc)zIU@gc+P z`Q#%L`6)(n2*6k-%aewma5I3e0zj!<%6ms2S9!aYFIhd6-;GMRu&jkl}6*gf44CARTK%(Pkw+#?E-QmOBf>8~??$?$Pm&lC#IV9z<^5@HJ z%R9RIaM4e=GOaMzj>(^OQy`^!Q+{X8Z}NvvQT%;A^fN+H(m^{-7d!Z(P!Y?~hnGKN zDjdV+)@!|`AIU7loOKi1Z%KkG=vCh4f2&hh9>&}$<%Fo~}!YZ%X zq`2hOAN`v7?y;}Chz|e~rMGKJPy>H>AY*T@xIF3(*Xzkj9(~Fm_EDv~18m*gogj?% z&QQWATiyy-uHIW?TFa3;p|2!4H2s-PYRZ;5TF}gN&`h2WyB|NdS06P!B*~wpX=*@W zG(q^hRSA4C;q!}e;j;uuRf(MS z#e2U9pQrl56SV9pQm8O2XA7>MPyTcfgQlMZdQ5IF;inwgN9fhpxF#(oe0Gz*`}Tdi z>gd~7?;zsvq#o!+`eX#w(&wOL>68Air5g3TbAjwVnSeyvHZV56IpZKNFQ2T&gG06j zyTK^PMv}d4&5k}=XV#H!f;)f#%2`w#Q^II`58so*kRCnadf9B_o*V!91#)Ntp9#JjdXxJ-j4*lRzTlj}d^T`Z zqC7hBi*&JMd311L?@65Yls!cDW+Lcfeio7RuKQfF%@g<20MW3k0o>&mffQl%!nnYd zD2$?+7^nwwdu$AsqtOAtfv2D7#$&4BQ7U-2@+a#hh2d+`;@P7WphX5 z)xNLNsg0w>;5%%0j0xwDf{y*iuexeN(}W8jSb3=rw5frW3a{Ml0Uo82Ga_+$IU6Mj zuW9e~dFJeQDKRn&dk-q??cmzE;sXH2F}cM!`yA)yd5 zc)I(qp5Ni5x(cHql}EGP8gkWwn$KOrsFFu=c@u>Io*8UX*I2kn-1msXyJ}D250d21 z%{$`aoyeoDv_lL6?p@p6Zuk*(ofpq=tDSFY><7+0lat+yL0G4pDY8|{R{LYNu%a1P z`_8gr;CR0~ZkHBKc1wL2_)i@c{`b0vua!aByM60K4p&OAgD$1lmc-mepXg{}HGOq) zD}4bQz|pbFBS7k6*5(_OVB5GaPG`EZxR%S zhUafD7(R>zIJIHZncwm@)DCNVMVCeXtNt>XJ@R@>sN5dYYCp`fx@6_#I~N@4M;!)w zoS{{Cv6L&QwYX4g+hW#v9_pLFA%9rg0|o_?zvzXZ3(i2_4hGq*zP8#E6OpK&<$0)Y zQDnhzNuG>KFQ=I3llRmYs(Vadv)hr|Oc59a+Mbg2R)1vCF!kv5V;WQ0YDv{0_1mW? zbaATvs8na$9rV#MsM~&fz0<{d#`h-4EnaD#1K+&QhVL~To)WEFBEF-a0N-@i!x0H2c1oCzb`53J7~WPlju{|u{!G^q4vBD<0UV(J^}$=wv7t9$f+Q6 z7|742IIvfpMOr<}f9YO#3S`z&Qm37#e*Gf@r+_c8M-$;nxGb*&E`v!Sos zAN@`P>jBOPA?0VZa@Iq~7BH}}FSvn6ci4lh_oN?StF0N<#4kYz?Xwl^&vmdDc|gGn z7azEJPXnTY42zG%)2qc)_m~(xw!t9{g_4Zlo$a12vaEW8(8FuE9b_@v8}l<5xAL78 z8<$nZ68+>iT=d0oDG+1Bz8OA~-3Hj6A?7A7vgf?_JR<=#W#k zz^?eXG1Fc~h@WE&y0gf_z!wx%^Yp_)1~VBf?^-Ioqjxt$c~K~3=JtXVHI&P91xjDR z3)jPBBqT}O3$F4jem|~cMlUH`|7E`1r|PD1GIS6cOWw!Y%NCqm-!wV$uxgYq_tiS@ zs7?@TDc%@L9 zi(mj}NOa9HOtI8E72j)C*axg#Ytr%^KhfzzKHbt|mO)UaX%}c!%W|Z75B}02qBR2( zXj39+{*zewnoHq$-slOcm%eZ35uL*<&dkr|F4fIrv?l4L{utBbcqZp*)j~e?O1jZp zP{SmtuEIfj6Ow6{w$c@elK}|MZO06dr+y`=z|-^~`1)+nU{ir!st_SeR5=5IYTqM( z%-A69c|7~vg>)mCPhqngZj2YRyZ(EC)6@=IlU!etKP@Nwsigg~>|?Kx$ZFDU6)srq zqJqsa8f7!S(M43E7M_uH?cQP4?HZd!bhKTbn|?zge+vBjHSKjPAoRchB!AnN@{|u< z*m771_LPZ2s#t2vXK!WCyu7u?nCO#%vDnwU&{n;WxLfVh6kgIes=7n9_VzwGv0CAh zRo(Bx3%Ek%*qis<_%*rGCXc>C2ZP^fH976DFV*?zEFyh!oowpA!zsuODQ(}Sg5P4( zyuI#A6x#3;GEOiWKJ5?BV82dt@M39AmR42y0_}B+btY00P6J8fe~>Pet=e6cX|a)IZV@rSVmY!0+=wuH4V&rKVp z{?%R$h-oKkwW83@V43t8S@}zO&X-%;URUC@1FM5_0@GlBwu8N#Vp*)t+Y+Iu_h1Kw z;52`T`#&x_d?}VSDL(tg?*hSV;0LjU~936+SPnRg(EL~z31swYb z1-!#mK&Lc#+FDAW0e<~Wya*4!|^OmGrA>>{xT_?vL+D`^| zaYF7K_ahXNq<;Wjmg{*HiV9=o zW){FX8MPk^73q1hj24klA z9!OqwTp3073V$3)pCl!CEEvyAvQ%_3NQCuNK;~J|rxzy3>oB$nDl{-sQ}~*`dVGxD z_fCR5*9Bfe4L&x+VR7HTOHBFvW9(g(ukH`$CTtMU)OLpthvHL5G#d4Fe+~-j!2f-PS$-@rzCU2Os$PgHO(dhEq(D5xz+lsE?=GgB zC=N^`p!$Pcn0bM|8cSd?gmUAT{n6j_{Dh>$(?VvFV%}vA+hO+uZ-=S4M7Y6U_#ziD z)ib^dH*tZzmk7cdBLSoP_>p=vVIW(~Ub?Sc*8!D*jU@g2jbgXeoqF!>Wm_kYP#- zpDl1F?5o=y7|vxh1J(2g2QA}rBMOCRs~&j2@hb<}FlgH!fFSfI;~8THWGZ~1a6LW{ zaS653b^{s13#eTIm=!H#M1eAtK$|`ls8W6bxlx1E9nJh#^zD=3LbiD3vzIg94)j;E z_6=lAgB$)#CU=jj_+y>MQ5+xd=kz99*|(XSU(tQ}i(-mFcFh&M=dcbHl8>@`r zP3=mRXCjsvaV*XFo`~no)S2csUrwkVRsW)h5GhYGDQ3;HCEzjI4yo=-r4K|hn^-k2 zG;8va^e2Bo>2erv5}`?Z9!d$GAX3%30Ws$08Y5CQt{%bHkR5& zk*O3(Ha$tD_*vDH%Z8ryr@UR1{Rx9bV2~0#vf(_w_8mbmd{Mh}#q&iqx>E|vMU*^Q zOqb&oNZzCHg$H}qKTJ$DD@1kcb%K&`I$7K*QGYhn@QBQ+qK%Zro}e!@ddDoIKB%|1 z7o1H#sx9@c6!};3zJb5@d2=HL7!qCM>i2*W4WVZ}GiGPomvwyPn`0Od z@?7z_z9>9ev0F4wOusD++(6fQn#blNtJwxs+a5SZQ`xav8DZB-M@6fNt}k!Hm<-Lq zQ)Q4X+LMCGoFIfC^ge&5-9>f^rHI%R=2f2?x$oovqqy90ulZ9YMY&pBjVCG*H_E5T zm9lp0TV$&`8QMo3uJubhwo)oua#!#q;Y{;HTQ=GL?p(nVo6Jag4A`Pbv)BK{1;jxP z(*=*2p%<*N#J;$P*zx$#tY`-9scz(eC*vjPQ(z@C=<)1YHjr}cDg!A;LrPd{6ri#4hWjh-xX>1! z9Rds-57(|)LHl8M@#))ZSj1-HX#W|V`m(DNI<>%K7GwD2MP`{Jw)&N@#E`!mSrqM@ z9Dx|FVM`AjZ!d{KSMP0R>YWCnu(?$-IP^t#1}=P$0AF$X(s&2mO#=46WBppm4(a0s z{&%~=CzV`{XNr-sQ+Tt5f9{rGRC!T#NJ)rKc2nMTBFg^Z7`}4R+T$(IlRZ2ZA(4J* zHbZX9-7#WKuPiQj@%Rsa#`u5jzATc#e?$Mw{gYDxiRClrs*?NXA?CHN{qrq15LXqr z%J1r*5A_f`PTx-dymOxmIVtbw>Yqd3{_pCa&p`Y#rTk0%^LTgrL*cFWsQy{}Q^@;w zun$S~_Zj===2+$G{&^kHb^m$qCuDGGLI$z+Ib#2h_0J_S_|Oa3pBRIGtH3`bJW=eY z;CI(QAN*rt!jwPBDb){SF#v$1Lwh!;Se}sSL^{wH7bk?XS&hw=53hD z#G0{VhT$_Wh0&U*7%kb-&UqCX&myUrNVD)uQqU~hmSZ!*wyMkJg(RX+E;gNtxX~>t zZgdOL82?j4Xw1Suj6M@oV{MFl?SU!?spfy<~pP=m)~7Ghnqo#Bm@izYVg7D%0!&qZ;nbUf=Bfi>w_=+9A%^ARq=odZ?)bNl z=Fr`c4_ZvhiUJ1fJ|=hX=;ph zwfE%`$@P=|wz-^vL>;N~>}Y4y8{?U=m9@YD(8(C7aD+pPGeq@&g5ak95SHL8B{3kX zzlL^tb{t{`7*m(wO0yQI*5)$)eb8jW1N#IHw`uc)B(GexP`*g|X##SR0jc0|M3C3y zvQYw~$L<#cN!(X|K-{!=_G-NK>^LA;*A0%vjPHkh)X85(3A~Qdr@kF2p-(5Z%f_A0 z%5UrWBTv-1>hfpyoN+KNn2H7^Sfw-?dJE@=?2B^k?hDS5Eu5!z-5nZ|0}**Lb?9-- zy?--fsvgCpv$j2+w(FkbssrF-2a}E z-*_mkZespNTl>_P&Vp82JP#FT;Ov#Zp*SP>_^i;LnVyFi4eVGpBgB6J*!Bz2UlxS+ z#*^C+P9>^g63gv0P}f z7^#HrikW~xWT)&w=?~K(elQta0iOVvJ}`#68tfeoH>Jyyr%#YR?H~?ARtPu6o$`ZL zpI^k0A6a!hSz!MX=0h@tBULkc-ert+Yo-1429_>i4EgY?6oR5i5wh%$r|2T685OcM z(750^FGa?=hh!_2*2C7{63@nI1*!j|$F~Fa!pT9npU;8synhW}=>cp)h{}6oQU;%# zx89MjXdZTIdwxdzY=R0$kJ-2-gY9ARJlB@!V?{F6<;5aVd|I5h4`eB!pDYSTX3(Ex zpJXARgXg2(4qjRq8id-SD10eIA@3wCpxa%T;aPu!kY}i0QD{kqp9N`yhrW+qmQ?dt zpK1x7D9J-x+(}8)_N;^#aZF;K?D#ret#q;;B$`TEHpl)tlfMuiic6eD;e0agFF+ve z6kbv4*B0iz0fy!Woc+*kuj1aV4{DnRj*UMboGTN4m+>XWFMSiO*b(@p;U&VKN%h2VOyZaN8o+-a69b%F{zeg` z;FpB4ca+D((c@1fRlo1iGrx5AY)NPMrPcGg;g>Fap&Neb_rittz#lIFWHP^$4iM>J zsy7Q0Jw_tAezErY^SwY;vQCfu?Z&eNSVDVEdtSUUUncQUwAZg@3HJN#Z;y^uYmC1w z14NJQbus&zXs?m|i4mi2JUU(l6k<!<&aY*L>mPPg*NPYvL&#Q`U`*J=9!LH~L{Q0UrT zzhRO2aP3u~axm?6ysw+~dLPp5B9C05z;@qW`)71*uU{zoclEDlB$Dfwu)etNojVxd zec@}<{9(>iAES;^uw8*0Ed3*EXNC63WhRmI&Tpu9En&R5;M0p}$1F{_UF#8>yidlP zuf@JF0xi56`y1AOBykw&@$|tN$UzR-HwQ=OV&9aKM7rPJ@v?xupIKjcd)c7^_+opY z0w0uhuAuCMkAr{DfX7pV&vU@TJ>(?k0rSynf7n+FD$20j{anEEEruO&7W;CeIKOP1 zwZ6#uk!uCIx~8Q@d8gicH>4FRqafD}bI51i6H;}u_LqOT+^@#cr{4c4R|tguhB{u} zducqF=4sqTL^Qe|ZRrynFe{ukE7U)Kb07RZ+R`g{+#JutBhr@5361E_dn~;g|HLMX z-5s5sGd&LtNSnD~K>z4AT+Dw`z{1e`akzD}J`2o0B*1)5!CVUtyt(`o^)Br0EFSJ? zY)+dW9?^eRZp-}8h~on9%#RG|TbR<)b{ov+dWn9R_?M?!fwuXPMX4<6wnUGGO_qb_ z$4gu0$U6V2Y>CzlJIvT>?c>Bo>kK_z$Nr<1r+8oTR}#SRC;Gj6P1|KLN=}ZxnlJ*< zC9`$h=sKdA_a(Q-;OPUC@os|!)j4{4&cBQuT> zT%klEJ=wHk|9Ft#uXZvWv@>OE4)o&{a_Vc(mi!dIh@h$IfQMML;2DilZL#`WH+f}n zLT>#n>l%9J=ALzKePi1#I-}5b+me0N^oO)jvEi-B;Ri^GPn9ie6IE6;kNwiXSYcXiMkA*%2Pw=NhN@U$5COK_iU{z8UlK@xY068E z6+~O@l96#l4NjUL+aYV-aE?12*3}$CQu@}$1IKvQGwm@HALv^@n^ssiIZ$3#;aUG* zc#1tx>RJCyKwvMeF8ADgJO0boHS{T|<9cN5(jOwJ6W(J(z*R(3d?*i-d)D`rW@$XY zqj9oz6B`EXZPaz38*Tg4N^EzgeuoWky#b$`N@M`44q6~|M+gBx7Nq?iSb4|G&oUlsJ+ z93aE!+jMLfp44Qu=jO$PtZnE6QuDDH`Ag##T&T+(Ow;()&otTVe1nt7c?#QWT)EN= z(j=wi)b=R+dAQfIb(2@D_N@OYKGAph2kO%!)JYbo+g0-u$TddKi;R2|yU&KP996O$ zi+P^?GHgx~p;ryBJR%a;H~GS2f5gkd(l5vSu8&lemM6m(Wbk~wY_{IY9L{c)p}Z}h zy)8JNV+?I?#?v<*=&V1pljDi+G*0dl+?C&nhAi`V&<&^A%|#emC+ED#><^EcNOtiP z#c&au(UIwC;9prksEa}Ak-u%uqB0Ztr7ND0fihV;{#Rs9891KzcIl5XezrIH^~leD z`5h8c<1Q8LHx10|5@Bk6SL$!SpHK&%b^YL>9Wnh^PwNK{vUfpdfX}*qa2cSx*3gr= zx`ux7g`^sCdIiAnZTIpZ46|`G8Dr?@zZ$L0#=VLL#|-vG$tz z-6OVF6Vq{0dyQ=tugud)d=%~V!*g_dePu+fT4U|C?K_8Qui3U_llou8aTw%;!DO}p zJT4A6xxIRS0*FZJ2vvby<*U1YBB=G;UT>W(;ikPFX6)*+zW0r--LzMc0^7ZO^>sid zw^tEB656XuBDsFC_BsvuK-Wc&{cGQ;0xUru{?g;(mHA~7A4Pk;H%SV;-+twUuI+W# zw-3`^x67hpIQ0uL9FzLj?FR4-alpy#HTX?H(7)~$6uN1zAB%s_?KMf|VA|^#2DvWn z^(Lg-rGFJEu-&)UpU&#qUf);r@9JNVNhH@#&1aF+R8pq`OTrJ~5K zcd4R97YL}R+!yMCm&}h7fAfW|^Y~rd;eOFH7YNyS?AGVL!+7A<=Q{FB>{=V=F*c(q zk~`%>BS~(>8ny*~2EX9o zB--5uby}(jQ0xglgm^0qygJ3e`NvlK7NUcsFI1NnKacEMuTv+_c6x4-WfyhejZUr( zF(HWA=lA0cyDf?@7nQPCWRiKO;rEM}yp{hu5BWvY6z5w&T|UH_uss`6f?tiU#82L5 zP08QTJK7-dBkAv!!n5woi#MsPjos+uki=2nr?Vj8zEIJ>Q;!YY%czfCoySm!{9@O^ zLqInPhlM_eTk|iChk(yGLz}SdgCxKDTw$S6yPu$rq%C1@rX2CIuV5yY@yjP${ox}; z)2=veXI(}g^M$GLp%$=jI7J=Tp+z3#PkMcS%sRZ*8sGjW8`Vs!vtP=g4f$#A!T+Asr3Vm z9H}zeekSd?fi3fdsr9S`NZ`~hJ~L!#BvQ<}RdbL_@i<}gl>Gs$g_JDMFq5cfr5|ee zT>=>E-1yB___4GRuQ!2{fr3meT5T55+$>t%8qdJsmnX-jq`LM<#j#!}wKjQmfz%e5 z)}N-14eFvNuGz)ct3=$N>0ZuLL3s*K);B;_fM!W$e&-8PnX&*FYh<+~vsf@Ti-dn+ z;_e|s)6lN={{I;N){~En|ET|9{D&U}{uL+w=hpv{la5^fKY@|>Poe;NLt zi+}5hN5+5D(c6|J9b~y)58+Zzjg_~?+D@HBZOa_7%uav z{R-+frLNd!&cE`)aR(E%%+&?qJ4ddyghSI8rNR%%Q7IT3Zm@@uI3Qunjq*kpjL!O} zm3wB4D|(sdR03-XBYn6uZfh`4*q`%!DF-=}&eKXv;ljcoI~oQ^PT@@z-lM^O>Ufzj z*aU&2fD__V)x4z`AJPl&6TFaVnCnGa?3ahCxFVM;#%F>|!iwv0_!!v&9y;U#Uw4Aw z&3zk^q2wWRF#A_FaP#1?ZNGKqV|D*wlm!)|2UK^m5F=WL7Yxo5i(zp78W%ES`Zuo+ z$hE%k^&=ao8+a|ArFep~EF3wjtqgejiMZ!Et98C>id3G&bG5?alrl+@d|VQ;Auq9X3dRUPqav%lYO~60w=2*!&W%E zvZ89nS6aX5wE{f1BQTs=@@Map>qzA8jH$lRd+>Q5+}$=)jy02A{V`wdyJ40kh#gQT zx1#oRNgD~C1QoRUQa<%%AN0x28WXX<9MMPx&IfnL^D~S)+ddOm_yh-YTyp=AL*voa zAI0P^q0b)ftKNSxRX-qJ^=ihH{&o2Ks@YnxGtMPy{$Ezv@D9%Ma}8HyL57@@XV26O ze|QNz#@q}pZSbuBI+ZOa=fiU$ZmyAHsVqE~4NjL5oww{mT(&Q3a+iueIYV~HDLr~b zf|sOm>Ao-YhG+dJLh3v<(|kJP-LYSj#HdFgL?7-} zkhvMN!v6lBa0A0}p9tXSZ3OyhpM2Fg1HdO=wT>*)awAx9nCGFn?1S5)>-9#35|8!B z^~p5;ju~lE$o%byNFRy9j5SMN=&#&>q`-Yd*sKY!nU%{E3PNAVS2}mKa>;(WNhh$K zZW33$ZR_>XmXu(>Ii81xoG^RCkT0mp8R}HdmvjqfaKq(5T6oq5DklR>R32FpOXz8v z#M%`c2tD-~Ne;6%q!;AU|F<%f`ltQ}KC7lp+^DG`k*DJU~@^g1mnt`NyoZwmEfuYxCg`k~9 z!#|l7S~TpF=vurP7-ofbL2xs}{=;ffTfV!Yfv2IIQ)~4|6~FcF-ONq zg{yWL-m#1T>RSh7N|lHEjHER}TvJytfXoW|DMD3HH+&2(p@H|{FK)ee2bwu~$l_+m8ekKgjGM+ly)I{x~^_S-OHfQxmGo3ug z=@a{|4C&l`eR64wTKCX!MIXeViYVry!!RGO<45U19X3IBPUS?V3buk|!x`GD#e$+LA_kL7dl6=b=6Z;&eH!Q)igc7gMK zcUpt*Wb_<9?&ufRK-4L63zWS`b|49jXflia*Yxo}xj*x%p7v+%A7Esje`SBB(TB(A z?;SRVu-8Xz;#Yfp{Nb5t_UUc9cH{Kr^kX?#nlh5vj?KPstdNQ1 zSIkCdMH#YKXe0^vt%J;#+=hy>b!%X<^l)_ts?ocKxGfG+uH*K?`$xnkMR z?vGqPGOs8_E-BK(jclJ`E48|qMgDnZ6BY_%Fe+vP1h9O$=x#*g#lZo#KZ(B88=NCo z*O~iTb}cLPR3ior_6$XzV)Iz&xkA~4HhL&e zSmJs??)5lHszLgvtfKr#En=A&L7jq%q^HhPW34(4ocSmYd){c*XyM!!WDabq`9)nL z6?)F;`7+mBBG@={jX-v&(@8Jrj2=!(8l9Bjgw{`?^{RbB&xrve<>x*+**rlZi^B3$ zR||K2IpfYVe`Us0H33DRJJ(g3cW~HWIy0d(uKT38=NXkRSBmYhC!;<0hvzegwIZ+y z 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 diff --git a/src/hwprobe/interops/win/bindings/display_info.py b/src/hwprobe/interops/win/bindings/display_info.py index a21701a..76edaf4 100644 --- a/src/hwprobe/interops/win/bindings/display_info.py +++ b/src/hwprobe/interops/win/bindings/display_info.py @@ -1,15 +1,17 @@ """ display_info.py - Python ctypes binding for display_info.dll -Two exports: - - get_display_devices(): user32 + CCD + DXGI in one pass — all display info +Four exports covering all Win32 display APIs: + - get_monitor_devices(): user32 monitor enumeration (EnumDisplayMonitors + settings) + - get_display_connectors(): CCD API (QueryDisplayConfig) — connector type + display path + - get_gpu_for_display(): DXGI output→adapter match — GPU name - get_edid(): SetupAPI + registry EDID lookup — raw EDID bytes All Win32 calls live in C++ — Python only does EDID parsing and data assembly. Usage: from hwprobe.interops.win.bindings.display_info import ( - get_display_devices, get_edid, + get_monitor_devices, get_display_connectors, get_gpu_for_display, get_edid, ) Source: interops/win/include/display_info.h and interops/win/src/display_info.cpp. @@ -32,43 +34,56 @@ _lib = ctypes.WinDLL(str(_LIB_PATH)) -# ---- mirror the C struct ---- +# ---- mirror the C structs ---- -class _DisplayDeviceInfo(ctypes.Structure): +class _MonitorDevice(ctypes.Structure): _fields_ = [ ("device_id", ctypes.c_char * 32), ("pnp_device_id", ctypes.c_char * 128), - ("monitor_name", ctypes.c_char * 128), - ("display_path", ctypes.c_char * 512), - ("gpu_name", ctypes.c_char * 256), ("width", ctypes.c_int), ("height", ctypes.c_int), ("refresh_rate", ctypes.c_int), + ] + + +class _ConnectorInfo(ctypes.Structure): + _fields_ = [ + ("display_id", ctypes.c_char * 32), + ("display_path", ctypes.c_char * 512), ("output_technology", ctypes.c_int), ] # ---- function signatures ---- -_lib.get_display_devices.restype = ctypes.c_int -_lib.get_display_devices.argtypes = [ctypes.POINTER(_DisplayDeviceInfo), ctypes.c_int] +_lib.get_monitor_devices.restype = ctypes.c_int +_lib.get_monitor_devices.argtypes = [ctypes.POINTER(_MonitorDevice), ctypes.c_int] + +_lib.get_display_connectors.restype = ctypes.c_int +_lib.get_display_connectors.argtypes = [ctypes.POINTER(_ConnectorInfo), ctypes.c_int] + +_lib.get_gpu_for_display.restype = ctypes.c_int +_lib.get_gpu_for_display.argtypes = [ctypes.c_char_p, ctypes.c_char_p, ctypes.c_int] _lib.get_edid.restype = ctypes.c_int _lib.get_edid.argtypes = [ctypes.c_char_p, ctypes.POINTER(ctypes.c_ubyte), ctypes.c_int] -# ---- Python-facing dataclass ---- +# ---- Python-facing dataclasses ---- @dataclass -class DisplayDeviceInfo: +class MonitorDevice: device_id: str pnp_device_id: str - monitor_name: str - display_path: str - gpu_name: str width: int height: int refresh_rate: int + + +@dataclass +class ConnectorInfo: + display_id: str + display_path: str output_technology: int @@ -77,33 +92,53 @@ class DisplayDeviceInfo: _MAX = 8 -def _decode(raw: bytes) -> str: - return raw.decode("utf-8", errors="replace").strip("\x00") - - -def get_display_devices() -> list[DisplayDeviceInfo]: - """Enumerate active displays via user32 + CCD + DXGI in one pass.""" - buf = (_DisplayDeviceInfo * _MAX)() - count = _lib.get_display_devices(buf, _MAX) +def get_monitor_devices() -> list[MonitorDevice]: + """Enumerate active monitors via user32. Returns one entry per attached display.""" + buf = (_MonitorDevice * _MAX)() + count = _lib.get_monitor_devices(buf, _MAX) if count < 0: - raise RuntimeError("get_display_devices() failed (C library returned -1)") + raise RuntimeError("get_monitor_devices() failed (C library returned -1)") return [ - DisplayDeviceInfo( - device_id=_decode(buf[i].device_id), - pnp_device_id=_decode(buf[i].pnp_device_id), - monitor_name=_decode(buf[i].monitor_name), - display_path=_decode(buf[i].display_path), - gpu_name=_decode(buf[i].gpu_name), + MonitorDevice( + device_id=buf[i].device_id.decode("utf-8", errors="replace").strip("\x00"), + pnp_device_id=buf[i].pnp_device_id.decode("utf-8", errors="replace").strip("\x00"), width=buf[i].width, height=buf[i].height, refresh_rate=buf[i].refresh_rate, + ) + for i in range(count) + ] + + +def get_display_connectors() -> list[ConnectorInfo]: + """Return active display connector info from the CCD API.""" + buf = (_ConnectorInfo * _MAX)() + count = _lib.get_display_connectors(buf, _MAX) + if count < 0: + raise RuntimeError("get_display_connectors() failed (C library returned -1)") + + return [ + ConnectorInfo( + display_id=buf[i].display_id.decode("utf-8", errors="replace").strip("\x00"), + display_path=buf[i].display_path.decode("utf-8", errors="replace").strip("\x00"), output_technology=buf[i].output_technology, ) for i in range(count) ] +def get_gpu_for_display(device_name: str) -> Optional[str]: + """Find the GPU name driving a display device (e.g. r'\\.\DISPLAY1'). + Returns None if not found.""" + buf = ctypes.create_string_buffer(256) + rc = _lib.get_gpu_for_display(device_name.encode("utf-8"), buf, 256) + if rc != 0: + return None + name = buf.value.decode("utf-8", errors="replace").strip("\x00") + return name or None + + def get_edid(pnp_device_id: str) -> Optional[bytes]: """Read raw EDID bytes from the registry for a monitor matching the given PNP device ID or display path. Returns None if not found.""" diff --git a/src/hwprobe/interops/win/bindings/gpu_info.dll b/src/hwprobe/interops/win/bindings/gpu_info.dll index 2ff14abdbea3f922b96215e0d03110d80eb52b22..a0620680b571425e89f21919bd80f1632d45a1f5 100644 GIT binary patch delta 63 zcmaDqUH$!Z^$8tJzQz-~{FqX-8gI4UVr;#|wDlIVmNrndolS=sh*^M`6^Pk@m>q~Y LwzKJQzMKyL?er96 delta 63 zcmaDqUH$!Z^$8tJS-umy{Fvs&HQs8y#n^g_Y3nU!Ep4D^JDUzO5VHU=D-g2*F*^`* LY-iKqd^sNg6txvV diff --git a/src/hwprobe/interops/win/bindings/wmi.dll b/src/hwprobe/interops/win/bindings/wmi.dll index 26c72d98a81979b6d0370967af0bac64c89f1ad1..0f4b82feb73fa17b6192d52948b018188bf9e14d 100644 GIT binary patch delta 104060 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

3%)P61Vrw z5RW(#KBx@|@-!qPcHy@nK@q|qLQ-OZeuM;^Y2@~*%IE1`?8`$TBgJymLo(vLwE&V5 zr;^o>SXVwGiYHSssSSXA)6JOjPS%Ly}^pAB1cc{&)-$5)t!~Ci!V(`~L)#76I}T zBqd_F=RWROL@J&N36C{rKN(_)d%8;@9&!G=2I4Q|g6=;KO65nS{qbjrPej98khI8! z7Dy}~uuE4rQQa(SuNY#*U$7%uod8L?Yp(;JPNsvRx%JRCtR@J{YHXfYK;rpkoBq;9 z#eVA0^QPY0ZT__9PuZT{+dDiL-t$e5^6zam?mgZdWI*5YTlc)yw|rNRJ-;4a-nr+V Rho+Uk*mKW@CFL91|9=&*`56EJ delta 105219 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 A@&Et; diff --git a/src/hwprobe/interops/win/include/display_info.h b/src/hwprobe/interops/win/include/display_info.h index 79e7054..344c18a 100644 --- a/src/hwprobe/interops/win/include/display_info.h +++ b/src/hwprobe/interops/win/include/display_info.h @@ -6,23 +6,33 @@ extern "C" { #endif -// One active display device. Filled by get_display_devices which merges -// user32 monitor enumeration, CCD connector info, and DXGI GPU association -// in a single pass — no Python-side correlation needed. +// Active monitor device from user32 enumeration. +// One entry per attached display. typedef struct { char device_id[32]; // GDI device name, e.g. "\\.\DISPLAY1" - char pnp_device_id[128]; // PNP hardware ID, e.g. "MONITOR\BOE0936\{...}" - char monitor_name[128]; // CCD monitorFriendlyName (may be empty) - char display_path[512]; // CCD target device path, e.g. "\\?\DISPLAY#..." - char gpu_name[256]; // DXGI adapter name (may be empty) + char pnp_device_id[128]; // PNP hardware ID, e.g. "MONITOR\SAMxxxx\{...}" int width; // Current resolution width (pixels) int height; // Current resolution height (pixels) int refresh_rate; // Current refresh rate (Hz) - int output_technology; // DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum value -} DisplayDeviceInfo; +} MonitorDevice; -// Fill `out` with active display devices. Returns count, or -1 on error. -int get_display_devices(DisplayDeviceInfo *out, int max_count); +// Display connector info from the CCD API (QueryDisplayConfig). +// One entry per active display path. +typedef struct { + char display_id[32]; // Source GDI device name, e.g. "\\.\DISPLAY1" + char display_path[512]; // Target monitor device path, e.g. "\\?\DISPLAY#..." + int output_technology; // DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY enum value +} ConnectorInfo; + +// Fill `out` with active monitor devices. Returns count, or -1 on error. +int get_monitor_devices(MonitorDevice *out, int max_count); + +// Fill `out` with active display connector info. Returns count, or -1 on error. +int get_display_connectors(ConnectorInfo *out, int max_count); + +// Find the GPU (adapter) name driving a given display device name. +// Returns 0 on success, -1 on failure. Writes a UTF-8 name into out_gpu_name. +int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size); // Read raw EDID bytes from the registry for a monitor matching `pnp_device_id`. // Returns EDID byte count (>=128 on success), 0 if not found, -1 on error. diff --git a/src/hwprobe/interops/win/main.cpp b/src/hwprobe/interops/win/main.cpp index 1bc9920..4b93f24 100644 --- a/src/hwprobe/interops/win/main.cpp +++ b/src/hwprobe/interops/win/main.cpp @@ -104,7 +104,9 @@ static int test_wmi() { return 0; } -typedef int (*get_display_devices_ptr)(DisplayDeviceInfo *, int); +typedef int (*get_monitor_devices_ptr)(MonitorDevice *, int); +typedef int (*get_display_connectors_ptr)(ConnectorInfo *, int); +typedef int (*get_gpu_for_display_ptr)(const char *, char *, int); typedef int (*get_edid_ptr)(const char *, unsigned char *, int); static int test_display() { @@ -114,42 +116,61 @@ static int test_display() { return 1; } - auto fnDevices = reinterpret_cast( - GetProcAddress(hLib, "get_display_devices")); + auto fnMonitors = reinterpret_cast( + GetProcAddress(hLib, "get_monitor_devices")); + auto fnConnectors = reinterpret_cast( + GetProcAddress(hLib, "get_display_connectors")); + auto fnGpu = reinterpret_cast( + GetProcAddress(hLib, "get_gpu_for_display")); auto fnEdid = reinterpret_cast( GetProcAddress(hLib, "get_edid")); - if (!fnDevices || !fnEdid) { + if (!fnMonitors || !fnConnectors || !fnGpu || !fnEdid) { printf("[display] missing exports\n"); FreeLibrary(hLib); return 1; } - DisplayDeviceInfo devices[8] = {}; - int nd = fnDevices(devices, 8); - if (nd < 0) { - printf("[display] get_display_devices failed\n"); + // Monitors + MonitorDevice monitors[8] = {}; + int nm = fnMonitors(monitors, 8); + if (nm < 0) { + printf("[display] get_monitor_devices failed\n"); FreeLibrary(hLib); return 1; } - printf("[display] Found %d display(s):\n\n", nd); - for (int i = 0; i < nd; ++i) { - printf("Display %d:\n", i); - printf(" DeviceID: %s\n", devices[i].device_id); - printf(" PNPDeviceID: %s\n", devices[i].pnp_device_id); - printf(" MonitorName: %s\n", devices[i].monitor_name); - printf(" DisplayPath: %s\n", devices[i].display_path); - printf(" GPU: %s\n", devices[i].gpu_name); + // Connectors (for matching) + ConnectorInfo connectors[8] = {}; + int nc = fnConnectors(connectors, 8); + + printf("[display] Found %d monitor(s):\n\n", nm); + for (int i = 0; i < nm; ++i) { + printf("Monitor %d:\n", i); + printf(" DeviceID: %s\n", monitors[i].device_id); + printf(" PNPDeviceID: %s\n", monitors[i].pnp_device_id); printf(" Resolution: %dx%d @ %d Hz\n", - devices[i].width, devices[i].height, devices[i].refresh_rate); - printf(" Connector: tech=%d\n", devices[i].output_technology); - - if (devices[i].display_path[0]) { - unsigned char edidBuf[1024] = {}; - int edidLen = fnEdid(devices[i].display_path, edidBuf, sizeof(edidBuf)); - if (edidLen > 0) { - printf(" EDID: %d bytes\n", edidLen); + monitors[i].width, monitors[i].height, monitors[i].refresh_rate); + + // GPU for this display + char gpuName[256] = {}; + if (fnGpu(monitors[i].device_id, gpuName, sizeof(gpuName)) == 0) { + printf(" GPU: %s\n", gpuName); + } + + // Connector info + for (int j = 0; j < nc; ++j) { + if (strcmp(connectors[j].display_id, monitors[i].device_id) == 0) { + printf(" Connector: %s (tech=%d)\n", + connectors[j].display_path, connectors[j].output_technology); + + // EDID via display path + unsigned char edidBuf[1024] = {}; + int edidLen = fnEdid(connectors[j].display_path, edidBuf, sizeof(edidBuf)); + if (edidLen > 0) { + printf(" EDID: %d bytes\n", edidLen); + } + break; } } printf("\n"); diff --git a/src/hwprobe/interops/win/src/display_info.cpp b/src/hwprobe/interops/win/src/display_info.cpp index 6b0ef0c..8e4aa93 100644 --- a/src/hwprobe/interops/win/src/display_info.cpp +++ b/src/hwprobe/interops/win/src/display_info.cpp @@ -1,5 +1,5 @@ -// Display info: one-pass monitor enumeration (user32 + CCD + DXGI) + SetupAPI EDID. -// Returns raw values — Python does EDID parsing and connector type mapping. +// Display info: monitor enumeration + CCD connectors + DXGI GPU match + SetupAPI EDID. +// Returns raw values — Python does all parsing (EDID decode, connector type mapping). // See display_info.h for the ABI. #include "display_info.h" @@ -7,6 +7,7 @@ #include #include #include +#include #include #include @@ -28,17 +29,12 @@ static std::string WideToUtf8(const wchar_t *src) { return out; } -static void copy_str(char *dst, int dst_size, const std::string &src) { - std::strncpy(dst, src.c_str(), dst_size - 1); - dst[dst_size - 1] = '\0'; -} - // ===================================================================== -// get_display_devices — user32 + CCD + DXGI in one pass +// get_monitor_devices — user32 monitor enumeration // ===================================================================== struct MonitorEnumCtx { - DisplayDeviceInfo *devices; + MonitorDevice *devices; int max_count; int count; }; @@ -61,96 +57,132 @@ static BOOL CALLBACK _monitorEnumProc(HMONITOR hMonitor, HDC, LPRECT, LPARAM lpa EnumDisplayDevicesA(mi.szDevice, 0, &dd, 0); if (dd.DeviceID[0] == '\0') return TRUE; - DisplayDeviceInfo &dev = ctx->devices[ctx->count]; - std::memset(&dev, 0, sizeof(dev)); - copy_str(dev.device_id, sizeof(dev.device_id), mi.szDevice); - copy_str(dev.pnp_device_id, sizeof(dev.pnp_device_id), dd.DeviceID); - dev.width = static_cast(dm.dmPelsWidth); - dev.height = static_cast(dm.dmPelsHeight); - dev.refresh_rate = static_cast(dm.dmDisplayFrequency); + MonitorDevice &md = ctx->devices[ctx->count]; + std::memset(&md, 0, sizeof(md)); + std::strncpy(md.device_id, mi.szDevice, sizeof(md.device_id) - 1); + std::strncpy(md.pnp_device_id, dd.DeviceID, sizeof(md.pnp_device_id) - 1); + md.width = static_cast(dm.dmPelsWidth); + md.height = static_cast(dm.dmPelsHeight); + md.refresh_rate = static_cast(dm.dmDisplayFrequency); ++ctx->count; return TRUE; } -int get_display_devices(DisplayDeviceInfo *out, int max_count) { +int get_monitor_devices(MonitorDevice *out, int max_count) { if (!out || max_count <= 0) return -1; - // 1. user32 — base monitor list (device_id, pnp_device_id, resolution) MonitorEnumCtx ctx = {out, max_count, 0}; EnumDisplayMonitors(nullptr, nullptr, _monitorEnumProc, reinterpret_cast(&ctx)); - int count = ctx.count; + return ctx.count; +} + +// ===================================================================== +// get_display_connectors — CCD API (QueryDisplayConfig) +// ===================================================================== + +int get_display_connectors(ConnectorInfo *out, int max_count) { + if (!out || max_count <= 0) return -1; - // 2. CCD — connector info (display_path, monitor_name, output_technology) - // Match by GDI device name (\\.\DISPLAY1). UINT32 pathCount = 0, modeCount = 0; - if (GetDisplayConfigBufferSizes(QDC_ONLY_ACTIVE_PATHS, &pathCount, &modeCount) == ERROR_SUCCESS) { - std::vector paths(pathCount); - std::vector modes(modeCount); - - if (QueryDisplayConfig(QDC_ONLY_ACTIVE_PATHS, &pathCount, paths.data(), - &modeCount, modes.data(), nullptr) == ERROR_SUCCESS) { - for (UINT32 i = 0; i < pathCount; ++i) { - const auto &path = paths[i]; - - DISPLAYCONFIG_SOURCE_DEVICE_NAME srcName = {}; - srcName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME; - srcName.header.size = sizeof(srcName); - srcName.header.adapterId = path.sourceInfo.adapterId; - srcName.header.id = path.sourceInfo.id; - if (DisplayConfigGetDeviceInfo(&srcName.header) != ERROR_SUCCESS) continue; - - DISPLAYCONFIG_TARGET_DEVICE_NAME tgtName = {}; - tgtName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME; - tgtName.header.size = sizeof(tgtName); - tgtName.header.adapterId = path.targetInfo.adapterId; - tgtName.header.id = path.targetInfo.id; - if (DisplayConfigGetDeviceInfo(&tgtName.header) != ERROR_SUCCESS) continue; - - std::string src = WideToUtf8(srcName.viewGdiDeviceName); - for (int d = 0; d < count; ++d) { - if (out[d].device_id[0] != '\0' && src == out[d].device_id) { - copy_str(out[d].display_path, sizeof(out[d].display_path), - WideToUtf8(tgtName.monitorDevicePath)); - copy_str(out[d].monitor_name, sizeof(out[d].monitor_name), - WideToUtf8(tgtName.monitorFriendlyDeviceName)); - out[d].output_technology = static_cast(path.targetInfo.outputTechnology); - break; - } - } - } - } + LONG rc = GetDisplayConfigBufferSizes(QDC_ONLY_ACTIVE_PATHS, &pathCount, &modeCount); + if (rc != ERROR_SUCCESS) return -1; + + std::vector paths(pathCount); + std::vector modes(modeCount); + + rc = QueryDisplayConfig(QDC_ONLY_ACTIVE_PATHS, &pathCount, paths.data(), + &modeCount, modes.data(), nullptr); + if (rc != ERROR_SUCCESS) return -1; + + int count = 0; + for (UINT32 i = 0; i < pathCount && count < max_count; ++i) { + const auto &path = paths[i]; + + // Source device name (GDI device name like \\.\DISPLAY1) + DISPLAYCONFIG_SOURCE_DEVICE_NAME srcName = {}; + srcName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME; + srcName.header.size = sizeof(srcName); + srcName.header.adapterId = path.sourceInfo.adapterId; + srcName.header.id = path.sourceInfo.id; + + if (DisplayConfigGetDeviceInfo(&srcName.header) != ERROR_SUCCESS) + continue; + + // Target device name (monitor device path like \\?\DISPLAY#...) + DISPLAYCONFIG_TARGET_DEVICE_NAME tgtName = {}; + tgtName.header.type = DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME; + tgtName.header.size = sizeof(tgtName); + tgtName.header.adapterId = path.targetInfo.adapterId; + tgtName.header.id = path.targetInfo.id; + + if (DisplayConfigGetDeviceInfo(&tgtName.header) != ERROR_SUCCESS) + continue; + + ConnectorInfo &ci = out[count]; + std::memset(&ci, 0, sizeof(ci)); + + std::string src = WideToUtf8(srcName.viewGdiDeviceName); + std::strncpy(ci.display_id, src.c_str(), sizeof(ci.display_id) - 1); + + std::string tgt = WideToUtf8(tgtName.monitorDevicePath); + std::strncpy(ci.display_path, tgt.c_str(), sizeof(ci.display_path) - 1); + + ci.output_technology = static_cast(path.targetInfo.outputTechnology); + ++count; } - // 3. DXGI — GPU name for each display. One factory, match by device name. + return count; +} + +// ===================================================================== +// get_gpu_for_display — DXGI output -> adapter name match +// ===================================================================== + +int get_gpu_for_display(const char *device_name, char *out_gpu_name, int buf_size) { + if (!device_name || !out_gpu_name || buf_size <= 0) return -1; + out_gpu_name[0] = '\0'; + IDXGIFactory1 *factory = nullptr; - if (SUCCEEDED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) { - IDXGIAdapter1 *adapter = nullptr; - for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND; ++a) { - DXGI_ADAPTER_DESC1 adesc; - if (FAILED(adapter->GetDesc1(&adesc))) { adapter->Release(); continue; } - - IDXGIOutput *output = nullptr; - for (UINT o = 0; adapter->EnumOutputs(o, &output) != DXGI_ERROR_NOT_FOUND; ++o) { - DXGI_OUTPUT_DESC odesc; - if (FAILED(output->GetDesc(&odesc))) { output->Release(); continue; } - - std::string devName = WideToUtf8(odesc.DeviceName); - for (int d = 0; d < count; ++d) { - if (out[d].gpu_name[0] == '\0' && devName == out[d].device_id) { - copy_str(out[d].gpu_name, sizeof(out[d].gpu_name), - WideToUtf8(adesc.Description)); - break; - } - } + if (FAILED(CreateDXGIFactory1(IID_PPV_ARGS(&factory)))) + return -1; + + int result = -1; + IDXGIAdapter1 *adapter = nullptr; + + for (UINT a = 0; factory->EnumAdapters1(a, &adapter) != DXGI_ERROR_NOT_FOUND; ++a) { + DXGI_ADAPTER_DESC1 adesc; + if (FAILED(adapter->GetDesc1(&adesc))) { + adapter->Release(); + continue; + } + + IDXGIOutput *output = nullptr; + for (UINT o = 0; adapter->EnumOutputs(o, &output) != DXGI_ERROR_NOT_FOUND; ++o) { + DXGI_OUTPUT_DESC odesc; + if (FAILED(output->GetDesc(&odesc))) { output->Release(); + continue; } - adapter->Release(); + + std::string devName = WideToUtf8(odesc.DeviceName); + if (devName == device_name) { + std::string gpuName = WideToUtf8(adesc.Description); + std::strncpy(out_gpu_name, gpuName.c_str(), buf_size - 1); + out_gpu_name[buf_size - 1] = '\0'; + result = 0; + output->Release(); + adapter->Release(); + factory->Release(); + return result; + } + output->Release(); } - factory->Release(); + adapter->Release(); } - return count; + factory->Release(); + return result; } // ===================================================================== @@ -166,6 +198,7 @@ static const GUID GUID_DEVINTERFACE_MONITOR = { int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { if (!pnp_device_id || !out || max_size <= 0) return -1; + // Convert the search key to uppercase wide string for case-insensitive matching. std::string key(pnp_device_id); for (auto &ch : key) ch = static_cast(toupper(static_cast(ch))); @@ -181,6 +214,7 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { for (DWORD i = 0; SetupDiEnumDeviceInterfaces(devInfoSet, nullptr, &GUID_DEVINTERFACE_MONITOR, i, &ifaceData); ++i) { + // Get required buffer size for interface detail. DWORD requiredSize = 0; SetupDiGetDeviceInterfaceDetailW(devInfoSet, &ifaceData, nullptr, 0, &requiredSize, nullptr); @@ -188,8 +222,7 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { std::vector detailBuf(requiredSize); auto *detail = reinterpret_cast(detailBuf.data()); - // cbSize must be 8 on 64-bit, 6 on 32-bit — a well-known SetupAPI quirk. - detail->cbSize = sizeof(void *) == 8 ? 8 : 6; + detail->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W); SP_DEVINFO_DATA devData = {}; devData.cbSize = sizeof(devData); @@ -198,15 +231,20 @@ int get_edid(const char *pnp_device_id, unsigned char *out, int max_size) { requiredSize, nullptr, &devData)) continue; + // Device path is a wide string starting after the cbSize field. std::string devPath = WideToUtf8(detail->DevicePath); for (auto &ch : devPath) ch = static_cast(toupper(static_cast(ch))); + // Match against the search key (substring match — the PNP ID is + // typically a portion of the full device path). if (key.find(devPath) == std::string::npos && devPath.find(key) == std::string::npos) continue; + // Open the device registry key and read EDID. HKEY hKey = SetupDiOpenDevRegKey(devInfoSet, &devData, DICS_FLAG_GLOBAL, 0, DIREG_DEV, KEY_READ); - if (hKey == INVALID_HANDLE_VALUE || hKey == nullptr) continue; + if (hKey == INVALID_HANDLE_VALUE || hKey == nullptr) + continue; DWORD edidSize = 0; if (RegQueryValueExW(hKey, L"EDID", nullptr, nullptr, nullptr, &edidSize) == ERROR_SUCCESS) { diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 3863655..332a8c0 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -83,35 +83,6 @@ static void VariantToUtf8Slot(VARIANT &vt, char *dst, int dst_size) { return; } - // WMI classes like WmiMonitorID return string data as uint16 arrays - // (VT_ARRAY | VT_UI2). VariantChangeType can't handle arrays, so - // decode each element as a wchar and build a wide string. - if (vt.vt == (VT_ARRAY | VT_UI2)) { - SAFEARRAY *psa = vt.parray; - LONG lb = 0, ub = 0; - if (FAILED(SafeArrayGetLBound(psa, 1, &lb)) || - FAILED(SafeArrayGetUBound(psa, 1, &ub)) || ub < lb) { - return; - } - LONG count = ub - lb + 1; - if (count <= 0) return; - - std::wstring w(count, L'\0'); - for (LONG i = 0; i < count; ++i) { - LONG idx = lb + i; - USHORT val = 0; - if (FAILED(SafeArrayGetElement(psa, &idx, &val))) { - w[i] = L'\0'; - } else { - w[i] = static_cast(val); - } - } - // Trim trailing NULs (WMI pads arrays with zeros) - while (!w.empty() && w.back() == L'\0') w.pop_back(); - WideToUtf8Slot(w.c_str(), dst, dst_size); - return; - } - VARIANT vtBstr; VariantInit(&vtBstr); HRESULT hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); diff --git a/tests/core/windows/test_display.py b/tests/core/windows/test_display.py index fe81b2d..f4a693c 100644 --- a/tests/core/windows/test_display.py +++ b/tests/core/windows/test_display.py @@ -1,7 +1,8 @@ """ Tests for hwprobe.core.windows.display -One C++ call (get_display_devices) does everything. Tests mock it + get_edid. +All Win32 calls go through display_info.dll, so tests just mock the four +binding functions. No ctypes patching needed. Uses direct-load pattern to bypass core.windows.__init__ which chains into broken legacy imports. """ @@ -13,6 +14,7 @@ import sys import types from dataclasses import dataclass +from typing import Optional import pytest @@ -23,38 +25,39 @@ @dataclass -class DisplayDeviceInfo: +class MonitorDevice: device_id: str pnp_device_id: str - monitor_name: str - display_path: str - gpu_name: str width: int height: int refresh_rate: int + + +@dataclass +class ConnectorInfo: + display_id: str + display_path: str output_technology: int def _load_display_module(): """Load display.py directly without triggering core.windows.__init__.""" + # Stub the display_info binding — it loads a DLL at import time. + # Use real dataclasses so tests can construct them. _binding = types.ModuleType("hwprobe.interops.win.bindings.display_info") - _binding.DisplayDeviceInfo = DisplayDeviceInfo - _binding.get_display_devices = lambda: [] + _binding.MonitorDevice = MonitorDevice + _binding.ConnectorInfo = ConnectorInfo + _binding.get_monitor_devices = lambda: [] + _binding.get_display_connectors = lambda: [] + _binding.get_gpu_for_display = lambda name: None _binding.get_edid = lambda pnp: None - sys.modules["hwprobe.interops.win.bindings.display_info"] = _binding + sys.modules.setdefault("hwprobe.interops.win.bindings.display_info", _binding) + # Stub win_enum — display.py imports DISPLAY_CON_TYPE from it, but + # importing the real module triggers core.windows.__init__. _win_enum = types.ModuleType("hwprobe.core.windows.win_enum") _win_enum.DISPLAY_CON_TYPE = {4: "DVI", 5: "HDMI", 10: "DisplayPort", 11: "eDP"} - sys.modules["hwprobe.core.windows.win_enum"] = _win_enum - - _common = types.ModuleType("hwprobe.core.windows.common") - _common.format_acpi_path = lambda s: s - _common.format_pci_path = lambda s: s - sys.modules["hwprobe.core.windows.common"] = _common - - _loc = types.ModuleType("hwprobe.util.location_paths") - _loc.get_location_paths = lambda pnp: None - sys.modules["hwprobe.util.location_paths"] = _loc + sys.modules.setdefault("hwprobe.core.windows.win_enum", _win_enum) mod_name = "hwprobe.core.windows.display" if mod_name in sys.modules: @@ -88,7 +91,7 @@ def _build_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34, year=2023): edid[21] = width_cm edid[22] = height_cm - # Name descriptor at 0x36 + # Name descriptor at 0x36 — tag at [0:4], pad at [4], text at [5:18] edid[0x36:0x3B] = b"\x00\x00\x00\xfc\x00" edid[0x3B:0x3B + len(name)] = name edid[0x3B + len(name)] = 0x0A @@ -106,20 +109,8 @@ def _build_edid(name=b"TEST-MONITOR", width_cm=60, height_cm=34, year=2023): return bytes(edid) -def _mock_dev( - device_id=r"\\.\DISPLAY1", - pnp_id=r"MONITOR\ABC123\{GUID}", - monitor_name="", - display_path=r"\\?\DISPLAY#ABC123", - gpu_name="GPU-0", - w=2560, h=1440, rr=144, - tech=10, -): - return DisplayDeviceInfo( - device_id=device_id, pnp_device_id=pnp_id, monitor_name=monitor_name, - display_path=display_path, gpu_name=gpu_name, - width=w, height=h, refresh_rate=rr, output_technology=tech, - ) +def _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\ABC123\{GUID}", w=2560, h=1440, rr=144): + return MonitorDevice(device_id=device_id, pnp_device_id=pnp_id, width=w, height=h, refresh_rate=rr) # ============================================================ @@ -130,7 +121,7 @@ def _mock_dev( class TestEnrichFromEdid: def test_fills_name_year_serial_manufacturer(self): module = DisplayModuleInfo() - display._enrich_from_edid(module, _build_edid()) + module = display._enrich_from_edid(module, _build_edid()) assert module.name == "TEST-MONITOR" assert module.year == 2023 @@ -140,25 +131,26 @@ def test_fills_name_year_serial_manufacturer(self): def test_fills_bit_depth_into_existing_resolution(self): module = DisplayModuleInfo() module.resolution = ResolutionInfo(width=2560, height=1440, refresh_rate=144.0) - display._enrich_from_edid(module, _build_edid()) + module = display._enrich_from_edid(module, _build_edid()) - assert module.resolution.width == 2560 - assert module.resolution.height == 1440 - assert module.resolution.refresh_rate == 144.0 - assert module.resolution.bit_depth is not None + assert module.resolution.width == 2560 # not overwritten + assert module.resolution.height == 1440 # not overwritten + assert module.resolution.refresh_rate == 144.0 # not overwritten + assert module.resolution.bit_depth is not None # filled from EDID def test_fills_resolution_when_none(self): module = DisplayModuleInfo() - display._enrich_from_edid(module, _build_edid()) + module = display._enrich_from_edid(module, _build_edid()) + assert module.resolution is not None def test_does_not_overwrite_existing_fields(self): module = DisplayModuleInfo(name="Custom Name", year=2020) - display._enrich_from_edid(module, _build_edid()) + module = display._enrich_from_edid(module, _build_edid()) assert module.name == "Custom Name" assert module.year == 2020 - assert module.serial_number == "SN12345" + assert module.serial_number == "SN12345" # still fills None fields # ============================================================ @@ -167,15 +159,38 @@ def test_does_not_overwrite_existing_fields(self): class TestFetchDisplayInfo: - def test_no_displays_returns_failed(self, monkeypatch): - monkeypatch.setattr(display, "get_display_devices", lambda: []) + def test_no_monitors_returns_failed(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: []) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + result = display.fetch_display_info() assert result.status.type == StatusType.FAILED + def test_connector_failure_sets_partial(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) + monkeypatch.setattr(display, "get_edid", lambda key: None) + + def fail_connectors(): + raise RuntimeError("CCD API failed") + + monkeypatch.setattr(display, "get_display_connectors", fail_connectors) + + result = display.fetch_display_info() + assert result.status.type == StatusType.PARTIAL + assert any("connector" in m.lower() for m in result.status.messages) + def test_happy_path(self, monkeypatch): - monkeypatch.setattr(display, "get_display_devices", lambda: [_mock_dev()]) + monkeypatch.setattr(display, "get_monitor_devices", lambda: [_mock_monitor()]) + monkeypatch.setattr(display, "get_display_connectors", lambda: [ + ConnectorInfo( + display_id=r"\\.\DISPLAY1", + display_path=r"\\?\DISPLAY#ABC123", + output_technology=10, + ), + ]) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) - monkeypatch.setattr(display, "get_location_paths", lambda pnp: ("PCIROOT(0)#PCI(1D00)", "ACPI(_SB_)#ACPI(PCI0)#ACPI(NIC0)")) result = display.fetch_display_info() @@ -184,8 +199,7 @@ def test_happy_path(self, monkeypatch): assert mod.name == "TEST-MONITOR" assert mod.gpu_name == "GPU-0" assert mod.interface == "DisplayPort" - assert mod.acpi_path is not None - assert mod.pci_path is not None + assert mod.acpi_path == r"MONITOR\ABC123\{GUID}" assert mod.resolution.width == 2560 assert mod.resolution.height == 1440 assert mod.resolution.refresh_rate == 144.0 @@ -194,11 +208,12 @@ def test_happy_path(self, monkeypatch): assert mod.year == 2023 def test_no_edid_still_returns_module(self, monkeypatch): - monkeypatch.setattr(display, "get_display_devices", lambda: [ - _mock_dev(pnp_id=r"MONITOR\XYZ\{GUID}", w=1920, h=1080, rr=60, gpu_name=""), + monkeypatch.setattr(display, "get_monitor_devices", lambda: [ + _mock_monitor(pnp_id=r"MONITOR\XYZ\{GUID}", w=1920, h=1080, rr=60), ]) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: None) monkeypatch.setattr(display, "get_edid", lambda key: None) - monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() @@ -207,40 +222,21 @@ def test_no_edid_still_returns_module(self, monkeypatch): assert mod.name is None assert mod.gpu_name is None assert mod.resolution.width == 1920 - assert mod.acpi_path is None + assert mod.acpi_path == r"MONITOR\XYZ\{GUID}" - def test_multiple_displays(self, monkeypatch): - monkeypatch.setattr(display, "get_display_devices", lambda: [ - _mock_dev(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\AAA\{1}", w=2560, h=1440, rr=144), - _mock_dev(device_id=r"\\.\DISPLAY2", pnp_id=r"MONITOR\BBB\{2}", w=1920, h=1080, rr=60), + def test_multiple_monitors(self, monkeypatch): + monkeypatch.setattr(display, "get_monitor_devices", lambda: [ + _mock_monitor(device_id=r"\\.\DISPLAY1", pnp_id=r"MONITOR\AAA\{1}", w=2560, h=1440, rr=144), + _mock_monitor(device_id=r"\\.\DISPLAY2", pnp_id=r"MONITOR\BBB\{2}", w=1920, h=1080, rr=60), ]) + monkeypatch.setattr(display, "get_display_connectors", lambda: []) + monkeypatch.setattr(display, "get_gpu_for_display", lambda name: "GPU-0") monkeypatch.setattr(display, "get_edid", lambda key: None) - monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) result = display.fetch_display_info() assert len(result.modules) == 2 + assert result.modules[0].acpi_path == r"MONITOR\AAA\{1}" + assert result.modules[1].acpi_path == r"MONITOR\BBB\{2}" assert result.modules[0].resolution.width == 2560 assert result.modules[1].resolution.width == 1920 - - def test_ccd_name_fallback(self, monkeypatch): - """When EDID doesn't have a name descriptor, use CCD monitorFriendlyName.""" - monkeypatch.setattr(display, "get_display_devices", lambda: [ - _mock_dev(monitor_name="BOE LCD Panel"), - ]) - monkeypatch.setattr(display, "get_edid", lambda key: None) - monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) - - result = display.fetch_display_info() - assert result.modules[0].name == "BOE LCD Panel" - - def test_edid_name_wins_over_ccd(self, monkeypatch): - """EDID name takes priority over CCD monitorFriendlyName.""" - monkeypatch.setattr(display, "get_display_devices", lambda: [ - _mock_dev(monitor_name="Generic PnP Monitor"), - ]) - monkeypatch.setattr(display, "get_edid", lambda key: _build_edid()) - monkeypatch.setattr(display, "get_location_paths", lambda pnp: None) - - result = display.fetch_display_info() - assert result.modules[0].name == "TEST-MONITOR" diff --git a/tests/core/windows/test_network.py b/tests/core/windows/test_network.py index 5bb2f57..d924d09 100644 --- a/tests/core/windows/test_network.py +++ b/tests/core/windows/test_network.py @@ -15,9 +15,10 @@ def _load_common_module(): """Load common.py directly (format_acpi_path / format_pci_path) without - triggering core.windows.__init__ which chains into legacy imports. - Always force-load — other test modules may have stubbed sys.modules.""" + triggering core.windows.__init__ which chains into legacy imports.""" mod_name = "hwprobe.core.windows.common" + if mod_name in sys.modules: + return sys.modules[mod_name] spec = importlib.util.spec_from_file_location(mod_name, _COMMON_PATH) mod = importlib.util.module_from_spec(spec) sys.modules[mod_name] = mod From 2de52c8b084650ff5a57d60890f06091f621fa9d Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 10:58:25 +0530 Subject: [PATCH 26/33] fix: harden VariantToUtf8Slot against null dst and redundant termination --- src/hwprobe/interops/win/src/wmi.cpp | 67 +++++++++++++--------------- 1 file changed, 32 insertions(+), 35 deletions(-) diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 332a8c0..dfd10eb 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -48,49 +48,46 @@ class Bstr { // dst_size-1 (WideCharToMultiByte fails rather than truncates when the // output doesn't fit, so we convert into a temp buffer first). static void WideToUtf8Slot(const wchar_t *src, char *dst, int dst_size) { - dst[0] = '\0'; - if (!src) return; - - int needed = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); - if (needed <= 0) return; - - if (needed <= dst_size) { - WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); - return; + if (!dst || dst_size <= 0) return; + + int written = 0; + if (src) { + int needed = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); + if (needed > 0) { + if (needed <= dst_size) { + WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); + return; // WideCharToMultiByte null-terminates on success + } + // Value exceeds the slot: convert fully into a temp buffer, then copy + // the prefix. Walk back from the cut point to avoid splitting a UTF-8 + // multi-byte sequence (continuation bytes have the high bits 10xxxxxx). + std::string tmp(needed - 1, '\0'); + WideCharToMultiByte(CP_UTF8, 0, src, -1, tmp.data(), needed, nullptr, nullptr); + int cut = dst_size - 1; + while (cut > 0 && (static_cast(tmp[cut]) & 0xC0) == 0x80) + --cut; + std::memcpy(dst, tmp.data(), cut); + written = cut; + } } - - // Value exceeds the slot: convert fully into a temp buffer, then copy - // the prefix. Walk back from the cut point to avoid splitting a UTF-8 - // multi-byte sequence (continuation bytes have the high bits 10xxxxxx). - std::string tmp(needed - 1, '\0'); - WideCharToMultiByte(CP_UTF8, 0, src, -1, tmp.data(), needed, nullptr, nullptr); - - int cut = dst_size - 1; - while (cut > 0 && (static_cast(tmp[cut]) & 0xC0) == 0x80) - --cut; - - std::memcpy(dst, tmp.data(), cut); - dst[cut] = '\0'; + dst[written] = '\0'; } static void VariantToUtf8Slot(VARIANT &vt, char *dst, int dst_size) { - if (dst_size <= 0) return; - dst[0] = '\0'; - if (vt.vt == VT_NULL || vt.vt == VT_EMPTY) return; - - if (vt.vt == VT_BSTR) { - WideToUtf8Slot(vt.bstrVal, dst, dst_size); - return; - } + if (!dst || dst_size <= 0) return; + const wchar_t *src = nullptr; VARIANT vtBstr; VariantInit(&vtBstr); - HRESULT hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); - if (FAILED(hr)) { - VariantClear(&vtBstr); - return; + + if (vt.vt == VT_BSTR) { + src = vt.bstrVal; + } else if (vt.vt != VT_NULL && vt.vt != VT_EMPTY) { + HRESULT hr = VariantChangeType(&vtBstr, &vt, 0, VT_BSTR); + if (SUCCEEDED(hr)) src = vtBstr.bstrVal; } - WideToUtf8Slot(vtBstr.bstrVal, dst, dst_size); + + WideToUtf8Slot(src, dst, dst_size); VariantClear(&vtBstr); } From 01d458afc60c2d88443b31a71dc2474916a2a91f Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:00:08 +0530 Subject: [PATCH 27/33] Fix WideCharToMultiByte logic --- src/hwprobe/interops/win/src/wmi.cpp | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index dfd10eb..2304e28 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -55,19 +55,23 @@ static void WideToUtf8Slot(const wchar_t *src, char *dst, int dst_size) { int needed = WideCharToMultiByte(CP_UTF8, 0, src, -1, nullptr, 0, nullptr, nullptr); if (needed > 0) { if (needed <= dst_size) { - WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); - return; // WideCharToMultiByte null-terminates on success + int rc = WideCharToMultiByte(CP_UTF8, 0, src, -1, dst, dst_size, nullptr, nullptr); + if (rc > 0) return; // success — null-terminated by WideCharToMultiByte + // fall through: dst[0] = '\0' + } else { + // Value exceeds the slot: convert fully into a temp buffer, then copy + // the prefix. Walk back from the cut point to avoid splitting a UTF-8 + // multi-byte sequence (continuation bytes have the high bits 10xxxxxx). + std::string tmp(needed - 1, '\0'); + int rc = WideCharToMultiByte(CP_UTF8, 0, src, -1, tmp.data(), needed, nullptr, nullptr); + if (rc > 0) { + int cut = dst_size - 1; + while (cut > 0 && (static_cast(tmp[cut]) & 0xC0) == 0x80) + --cut; + std::memcpy(dst, tmp.data(), cut); + written = cut; + } } - // Value exceeds the slot: convert fully into a temp buffer, then copy - // the prefix. Walk back from the cut point to avoid splitting a UTF-8 - // multi-byte sequence (continuation bytes have the high bits 10xxxxxx). - std::string tmp(needed - 1, '\0'); - WideCharToMultiByte(CP_UTF8, 0, src, -1, tmp.data(), needed, nullptr, nullptr); - int cut = dst_size - 1; - while (cut > 0 && (static_cast(tmp[cut]) & 0xC0) == 0x80) - --cut; - std::memcpy(dst, tmp.data(), cut); - written = cut; } } dst[written] = '\0'; From cd51ab6604cf4a6ffc98fd83b5aacce627f850c8 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:06:00 +0530 Subject: [PATCH 28/33] handle edge case in MultiByteToWideChar --- src/hwprobe/interops/win/src/wmi.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/hwprobe/interops/win/src/wmi.cpp b/src/hwprobe/interops/win/src/wmi.cpp index 2304e28..b73ae48 100644 --- a/src/hwprobe/interops/win/src/wmi.cpp +++ b/src/hwprobe/interops/win/src/wmi.cpp @@ -31,7 +31,10 @@ class Bstr { int wlen = MultiByteToWideChar(CP_UTF8, 0, utf8, -1, nullptr, 0); if (wlen <= 0) { b_ = nullptr; return; } std::wstring w(wlen - 1, L'\0'); - MultiByteToWideChar(CP_UTF8, 0, utf8, -1, w.data(), wlen); + if (MultiByteToWideChar(CP_UTF8, 0, utf8, -1, w.data(), wlen) <= 0) { + b_ = nullptr; + return; + } b_ = SysAllocString(w.c_str()); } ~Bstr() { if (b_) SysFreeString(b_); } From 80751b128016aa9e577ca47ae340aaec519a583c Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:07:58 +0530 Subject: [PATCH 29/33] fix: handle WideCharToMultiByte failures in gpu_info.cpp Check return value of all WideCharToMultiByte write calls. On failure, return empty string or null-terminate the buffer instead of leaving uninitialized contents. --- src/hwprobe/interops/win/src/gpu_info.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/hwprobe/interops/win/src/gpu_info.cpp b/src/hwprobe/interops/win/src/gpu_info.cpp index 7ee013e..0ee28bb 100644 --- a/src/hwprobe/interops/win/src/gpu_info.cpp +++ b/src/hwprobe/interops/win/src/gpu_info.cpp @@ -7,6 +7,7 @@ #include #include +#include // DXGI_ADAPTER_FLAG_SOFTWARE #include #include #include @@ -137,7 +138,10 @@ static std::string GetDriverVersion(const wchar_t *pnp_device_id) { int utf8_len = WideCharToMultiByte(CP_UTF8, 0, pnp_device_id, -1, nullptr, 0, nullptr, nullptr); if (utf8_len <= 0) { RegCloseKey(hKey); return {}; } std::string pnp_utf8(utf8_len - 1, '\0'); - WideCharToMultiByte(CP_UTF8, 0, pnp_device_id, -1, pnp_utf8.data(), utf8_len, nullptr, nullptr); + if (WideCharToMultiByte(CP_UTF8, 0, pnp_device_id, -1, pnp_utf8.data(), utf8_len, nullptr, nullptr) <= 0) { + RegCloseKey(hKey); + return {}; + } std::string upper_pnp = pnp_utf8; for (auto &ch : upper_pnp) ch = static_cast(toupper(static_cast(ch))); @@ -197,8 +201,8 @@ int get_gpu_info(WinGPURaw *out, int max_count) { continue; } - // Skip software/remote adapters (DXGI_ADAPTER_FLAG_SOFTWARE = 2) - if (desc.Flags & 2u) { + // Skip software/remote adapters + if (desc.Flags & DXGI_ADAPTER_FLAG_SOFTWARE) { adapter->Release(); continue; } @@ -218,7 +222,8 @@ int get_gpu_info(WinGPURaw *out, int max_count) { WinGPURaw gpu = {}; // Name from DXGI (wide -> UTF-8) - WideCharToMultiByte(CP_UTF8, 0, desc.Description, -1, gpu.name, sizeof(gpu.name), nullptr, nullptr); + if (WideCharToMultiByte(CP_UTF8, 0, desc.Description, -1, gpu.name, sizeof(gpu.name), nullptr, nullptr) <= 0) + gpu.name[0] = '\0'; // Raw IDs from DXGI gpu.vendor_id = desc.VendorId; @@ -230,8 +235,9 @@ int get_gpu_info(WinGPURaw *out, int max_count) { // PNP device ID (UTF-8) for Python-side location/PCIe lookup if (!pnp_id.empty()) { - WideCharToMultiByte(CP_UTF8, 0, pnp_id.c_str(), -1, - gpu.pnp_device_id, sizeof(gpu.pnp_device_id), nullptr, nullptr); + if (WideCharToMultiByte(CP_UTF8, 0, pnp_id.c_str(), -1, + gpu.pnp_device_id, sizeof(gpu.pnp_device_id), nullptr, nullptr) <= 0) + gpu.pnp_device_id[0] = '\0'; } // Registry VRAM fallback for >4GB cards (DXGI may cap at 4GB). From b5005b69d90aa2e1959e81e0b459da17c103f105 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:10:48 +0530 Subject: [PATCH 30/33] more descriptive default manufacturer namein windows gpu --- src/hwprobe/core/windows/graphics.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hwprobe/core/windows/graphics.py b/src/hwprobe/core/windows/graphics.py index a74e6b7..874c363 100644 --- a/src/hwprobe/core/windows/graphics.py +++ b/src/hwprobe/core/windows/graphics.py @@ -15,7 +15,7 @@ def _map_gpu(raw: GPURaw) -> GPUInfo: gpu = GPUInfo() gpu.name = raw.name - gpu.manufacturer = _VENDOR_NAMES.get(raw.vendor_id, f"0x{raw.vendor_id:04X}") + gpu.manufacturer = _VENDOR_NAMES.get(raw.vendor_id, f"Not Recognized (0x{raw.vendor_id:04X})") gpu.vendor_id = f"0x{raw.vendor_id:04X}" gpu.device_id = f"0x{raw.device_id:04X}" From 518f179bcdfe99286d39329bc130aae635489338 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:18:11 +0530 Subject: [PATCH 31/33] misc: remove magic numbers from windows cpu instruction check; update tests --- src/hwprobe/core/windows/cpu.py | 13 +++++++++++-- tests/core/windows/test_graphics.py | 2 +- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/hwprobe/core/windows/cpu.py b/src/hwprobe/core/windows/cpu.py index c19ec36..cba79c1 100644 --- a/src/hwprobe/core/windows/cpu.py +++ b/src/hwprobe/core/windows/cpu.py @@ -10,6 +10,15 @@ kernel32.IsProcessorFeaturePresent.argtypes = [wintypes.DWORD] kernel32.IsProcessorFeaturePresent.restype = wintypes.BOOL +# ARM processor feature IDs for IsProcessorFeaturePresent. +# These are not defined in the Windows SDK headers — they're undocumented +# feature IDs discovered via testing on ARM hardware. +# ref: https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-isprocessorfeaturepresent +PF_SSVE_FP8DOT2 = 78 # ARMv9 — FEAT_SSVE_FP8DOT2 +PF_SSVE_FP8DOT4 = 79 # ARMv9 — FEAT_SSVE_FP8DOT4 +PF_SSVE_FP8FMA = 80 # ARMv9 — FEAT_SSVE_FP8FMA +PF_SME_FA64 = 88 # ARMv8 — FEAT_SME_FA64 + def is_processor_feature_present(feature_id: int) -> bool: """ @@ -36,9 +45,9 @@ def get_arm_version() -> str: ref: https://learn.microsoft.com/en-us/windows/win32/api/processthreadsapi/nf-processthreadsapi-isprocessorfeaturepresent """ - if any(is_processor_feature_present(i) for i in [78, 79, 80]): + if any(is_processor_feature_present(i) for i in [PF_SSVE_FP8DOT2, PF_SSVE_FP8DOT4, PF_SSVE_FP8FMA]): return "9" - elif is_processor_feature_present(88): + elif is_processor_feature_present(PF_SME_FA64): return "8" else: return "7 or lower" diff --git a/tests/core/windows/test_graphics.py b/tests/core/windows/test_graphics.py index 1c10c54..bb5a609 100644 --- a/tests/core/windows/test_graphics.py +++ b/tests/core/windows/test_graphics.py @@ -289,4 +289,4 @@ def test_subsystem_ids_hex_format(self): def test_unknown_vendor_uses_hex(self): info = _run([_gpu(vendor_id=0x1234)]) - assert info.modules[0].manufacturer == "0x1234" + assert "0x1234" in info.modules[0].manufacturer From 1756b6cfcc227510e368da1d94236a01fa68e26c Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:19:12 +0530 Subject: [PATCH 32/33] misc: align dashes in code comments --- src/hwprobe/interops/win/include/gpu_info.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/hwprobe/interops/win/include/gpu_info.h b/src/hwprobe/interops/win/include/gpu_info.h index 26510d1..a126fc8 100644 --- a/src/hwprobe/interops/win/include/gpu_info.h +++ b/src/hwprobe/interops/win/include/gpu_info.h @@ -12,15 +12,15 @@ extern "C" { // enumeration (DXGI) and SetupAPI handle flow. // // Fields: -// name — DXGI Description, UTF-8 -// vendor_id — DXGI VendorId -// device_id — DXGI DeviceId -// subsystem_id — DXGI SubSysId (raw uint32; high 16 = subsystem +// name — DXGI Description, UTF-8 +// vendor_id — DXGI VendorId +// device_id — DXGI DeviceId +// subsystem_id — DXGI SubSysId (raw uint32; high 16 = subsystem // vendor, low 16 = subsystem device — Python splits) // dedicated_video_memory_bytes — DXGI DedicatedVideoMemory, raw bytes -// pnp_device_id — from SetupAPI, raw "PCI\VEN_...&DEV_...&SUBSYS_..." +// pnp_device_id — from SetupAPI, raw "PCI\VEN_...&DEV_...&SUBSYS_..." // (empty if SetupAPI match failed) -// vram_bytes — registry fallback for >4GB cards, raw bytes +// vram_bytes — registry fallback for >4GB cards, raw bytes // (0 if DXGI value was used or registry lookup failed) typedef struct { char name[256]; From 2caee82f20a6012e7769b7628a1516a3799940a6 Mon Sep 17 00:00:00 2001 From: Mahasvan Date: Sun, 2 Aug 2026 11:22:30 +0530 Subject: [PATCH 33/33] fix: Improve virtual network adapter detection; update tests --- src/hwprobe/core/windows/network.py | 4 ++-- tests/core/windows/test_network.py | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/hwprobe/core/windows/network.py b/src/hwprobe/core/windows/network.py index 7303c0c..2ae6c0f 100644 --- a/src/hwprobe/core/windows/network.py +++ b/src/hwprobe/core/windows/network.py @@ -37,9 +37,9 @@ def fetch_network_info_fast() -> NetworkInfo: network_info.status.messages.append("Missing PNPDeviceID for network interface; skipping") continue - # Only physical PCI and USB NICs + # Skip virtual/software adapters (ROOT\ prefix = software-enumerated) upper_pnp = pnp_device_id.upper() - if "PCI" not in upper_pnp and "USB" not in upper_pnp: + if upper_pnp.startswith("ROOT\\"): continue module = NICInfo() diff --git a/tests/core/windows/test_network.py b/tests/core/windows/test_network.py index d924d09..252e736 100644 --- a/tests/core/windows/test_network.py +++ b/tests/core/windows/test_network.py @@ -195,7 +195,7 @@ def test_loopback_adapter_skipped(self, monkeypatch): assert len(network_info.modules) == 1 assert network_info.modules[0].name == "Intel NIC" - def test_non_pci_usb_adapters_skipped(self, monkeypatch): + def test_root_adapters_skipped(self, monkeypatch): rows = [ _row("Root Device", "Microsoft", r"ROOT\\SOMETHING"), _row("Intel NIC", "Intel", r"PCI\VEN_8086&DEV_15B8"), @@ -207,6 +207,20 @@ def test_non_pci_usb_adapters_skipped(self, monkeypatch): assert len(network_info.modules) == 1 assert network_info.modules[0].name == "Intel NIC" + def test_non_pci_usb_hardware_nic_included(self, monkeypatch): + """NICs on non-PCI/USB buses (e.g. SDIO) should not be filtered out.""" + rows = [ + _row("Broadcom SDIO WiFi", "Broadcom", r"SD\VID_02D0&PID_A4A5"), + _row("Intel NIC", "Intel", r"PCI\VEN_8086&DEV_15B8"), + ] + _patch_wmi(rows, monkeypatch) + + network_info = network.fetch_network_info_fast() + + assert len(network_info.modules) == 2 + assert network_info.modules[0].name == "Broadcom SDIO WiFi" + assert network_info.modules[1].name == "Intel NIC" + # ============================================================ # Model structure tests

sGVI0@QH(frL+ibnuXOZai|g-D>yS4j+lm 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 DVmXe$ literal 0 HcmV?d00001 diff --git a/src/hwprobe/interops/win/bindings/wmi.dll b/src/hwprobe/interops/win/bindings/wmi.dll new file mode 100644 index 0000000000000000000000000000000000000000..0f4b82feb73fa17b6192d52948b018188bf9e14d GIT binary patch literal 681388 zcmeFadwdi{);B(r1PC`fD8YCoYQ%u3iHar?HA5!Y0}~Ad6-5ONA}T7%48aRB*fWsc zb}+84y1PDmd3M)lcXe0yQ4xY*5|n_~0Iq^pRMc(<6;{O%FZq4HRoyc^Ng#s1_w)Yq z=A%q^b=9d;=T@gqovyCBw84|<@p!WEe`lx1vjV^TD;NLn`=1CNA2hu2AkS0%UpZ!l zH~7jiQ)XW~FMsYWH(hhfl{e(qUU}nJKOJ(p&9JSHmQ$8#|L&tap9#l%-! zqnvp2uaBsNiw2bR^>~)f9Efqv@OnJ?d~COMT?km>i3B@0({mngBblCOhsbjA@6HU5 z|8&>=6Pcbor&Cw4bNPpVWq2@zZhw(zrl&z5-tCbnI5~9nf)KAR!Jvp6$BuEh|MESa z87I%YGIS*hn=mrZT-3pTo*Dcn^;eF^C*L9~R?kLx1kbO-?^WIEm7hFU))QmISUqQ; z-pf7ITOjLg=irJkkWu)}NFPwS$5VdtRrBWIiKmVD%}9UFa{fh#-_;VHpgCwS#xXj* zemUV?E9(iKMDUz)aB>gzLUTmFf~|kB;gxr*2fAE6=cZbZX}5Jbwb+ zQ7#33Y7g~_OIgEHFcJT>;dv0h6MCq3S~076p3BBR`4FH1_Tx{Fd#G1jd>Wfh=06d;-!eaK1R_BO4QZYsD?*17G$f&Q4jr3 zh9_tozc`%fN#rTRBOHxd`mGY3j)p5uFx}Vrx~iKyRpnn})mW3NuM5Ag8fVW%JENc0 zo}t8MqNW-jd?Ub{|4Mi~trRbhy7aUav?HqaeBrb!reE&6%y;?PS;}xf@agb|KN6S} ze{SP4m$(d)xO@`=E<=^!z+;^fZ3T=jc$@}2!XFlYt{P*kM}S6O3^ev0>b3S|k7o3B zfzZ3>1EE47gxYgdBlic?RgJ-);Kw{h7GH?sb+Y(z7H6Q?{L4l(`Mk9+wM~iMfqzw_ zPm!qQLC>MVRl3>8hpN7(vrX%BH~R5fN@r)MO~2UZ;XcJp>e5X7;~xELVrPvH0dYt@gPodS?`8yc+~j^^f43-hFGpX7c%5PbYEf{`om zLy}<#kce0H%|3l-K~QfEk2CsguaYuxKb{tEGEXu+o`Bx2zoqKC%qM>6?9^Y-OtqL0n?4u&E|TgoSB-5@^_NurjddB|sTYh0=<9)_arT?HWO~$Ae?bX{$O~a}eJe?X zmDUg7g};FFrg)ami_SNxSgUb$HZ8KU?0HW^_1)#Knhh!qrP3i2gB={O2HB(W0&!N5D;Oo!1hAzs!up{e@XpuWdc-ta;}wwiVCr{op< zNZPE$JK8ZEDfKs`ucvJC)&fI&z-?RIAy%FVCEwQFsv!k1o z*m|^pBy&XNfag(u)l^x$0o-$#a!gzChDJ(2a?thBg2z#lW2bK7Hy=Nq&fGI8Kk;b6 zT#Tl8Q_vXv!0&~bS;QZ*&nL}btE?g${pV((iS?%tbv#*s#{7$%<56NS-~ysP3ghX_ zZAVR2j~3Lk(70Q4qsH$SEhNsW;ibTp6E(t6jr(P7XE4bz@FJg8I;-;_!g>LEO~N$1 zoz*#!XT>OiL_2&OAVx(LbTDibp!WS$y}2{@8X$&3R!|o|PhL7!UPu)6llpbigEwXh zsD$RMLVs=Avvk z_xc?Lg@D42WU*VDgzo&C17w5F+<(ATb?%ZR9UCl|szm=AhL#{ikMSv<40ES1!($mJ z<~#%td{?>pPEB zW4pr-RvG6I&P>2T`@|Z@UsyrB@D~YsO;u~}qbyksLv3S2XH<>nhOPlNzaeNCg<}Ch zZA=dQ#QT#tm9{8%-R(4n9W$?C6Jt#EoJ`6S=n&!H@h4gBNPRHg=P>k;v{d=5LW4G= z^Nm=OzE)XwMz+TTV+`2}#-HsfTS5I*d<0a88{YG0VtCh9#q?riu2{)K+mUk0|2V7TSqigNr@+Nzx2iVlR{0u&7@ z6>CAD_Ib5=8+1Eb@CVfM#r*|dT>llYmx1u6u+ z0S}9JC-P~>pw!U5&fG_@&-6g6m1U>mp}P15x-oEOeVuOxj3alevA2~dm&+8-=()IX zl&p(ykWZAP1&8xPr|37ROmW=?xY8M#!?|f{%7ou9)C_t^k7!i}ykCF892Z;x4)O^9 zM_P300s+3GV4bNQF@UbrH|eKx0;e!#}VMzKJF+nO9v5 zntSr$JIaDmY0Q+^KfdQAZmX1N!n*~4EdlUuZt^bW>QGoIZ96&kq<^z?Hib;u@>J=~ zqV#TQ!pGh%W^g6?-frnWG!YUV?Efu=_plzNQqSXqFNdA&%sr8<^|e+lRzlE6<(a5Z zPm0|vt=+3ES%e3;$_~wRGzL29TbT{agamgu#htldUPBjhK@CT>h5hQEnFGJ-?1cQj zgGZ@~uj0-+34j}l-?l8!D7l_v(}(P)ZU5=)v^)|ofcUiw1oXiA9PJu{#vKJST)OJ0 zQu?F|j4|P^Q(1O;SosH0 z;sM_8-gD2LY}!CUfT2Lz;?z5Kg#PB^7{9@evH@p+Qf2qAFUk{vLI0CUP9(& zXYP2SyO`pBE3jv~E&OMKyYVmB7`;zs@3FTLT;l2iGgNnxmfyZ&|yGY>SFnz6A zZFehZq(m7XVb{C`U1oxP*PtjpKG5~9^Y~w&Vnajc@weH(*V(_9+P@RTuM<_+|N6IG zCE*`y|Ni1i-aGKL4g?5ZRF>`l(ptyq%F;*0#mM<1;^W?c6;PIP)&K>byb^@3&04H_ z*LQA9$*;a~1?0%1Zr-M@^z82Rv~wDdtyf|OOIPBbA2A=ZC_GGE+p>^uoz%ZS$;va$}R$?1dZECy+TVpZ6PPDRY|D*77XC@%Z!!g?f%M zq&#P>uxs%NFF6SOt>2JVZ+O_>+E4Zj2>)K|xFGcB;wIFJupRmf|Ejnt@uhtqANNnK zeNdf=k^KO>m>ikk2o(Cq21YL&AE<5i*_f!AzI+4&931?5pfEI|GS+nGF-}n{`+yi# z=lJ#VytOI%00URFg!9RyJY{(XB0ps}D$!+V6t8ZJbo5u2{t?%e#cvmH@U491<(FSh zRJhxv0J=)KzKsvn5c!c3kO; z3pa?+lD>XzgTDUTEtT*vD%azV{#kq+{4*b*jB}t2^sOR`t*Zd3ctc`?3j>Tt#C;(` zq2slV*&#KkZ#45zF<^|#i}dqN<5H97(@)*uWrJEUms^TV4H z2(UC^6yx#;rwx|Uh7(@lJdoVho-dUACp^Eh908X-lS2pN-wQ&6RJ|?PpWm3I`c~zm z=gRoFOrO@0!J3tdzr`nFnYh|Y(0<*gVr?DJ+x!e%`SPp}IZcW2Nt~yL4|Q;kEbvYb z<(fsn57VDNg%ayGWvF_vpolQcgJg|kwf6pZZlx70a$qU!lywr#LXK@RH87AaWQ~!+ zw$Q~!bv8oPi!NBaioT5pITeuL70VyZ(6vhH$O9#6|7g(xBb&k0kbfaHe!e>Txp7}8fv`0A# zuZRjK`OE6sS$&ikg-+8hV-0H%u5CTXnk4oE8e0QI8PM1eJ|b~+(*KBU3LU8$fjsRq zFDJu3T4_-zAr^94LyffYfBRW$~oXR3Nlj&+AUPQ>%Y20`8G#9A~q2ck*wrdi6D zO|2Dqf?4_@%8-g|D~tvy^P(&t5+C<;*$MLxDsGB&_(Q{;xNPH(Z~zveuB!a0MY*p@ zSx(#PQI=2g7B^|1T@dLQS+`jgs^EqApjMmmOHr$2z^9Q3rnKK#2TX?-NQAis(PyHGD)B2*(L`&8!C7t|j%2dJ?3z3nOX9DNv~S zR#0d=EhHP$C_4I=M7BA=m~{N>^gRt zoIg^0v?k$!%id4Hq!ym-n0(HvWz$15%5DrzG0%km4fCxxFHi%<uVJp&2Aj@h_3J=HrV}gC!Ew8pbscQVPf_$Ie zhW#|Km~`Aev}XbSl| zsJwnn7x^1Y`CE&S>=Kv!?OL})%HIQ0{?5^s*z)(T+PWkqe-aqvZ)`XDQyH{(B#4l2E>F>%p~t;ff=skc3 zNW#)$r%ijl+}@)VdWcQ13oha~unzE8r$MD`I>*PHo+>{gRStUtMKiZ!+33@oiks+G z-%PJBP}>$TCSaYWjnmHyUNFuVoUWGU zgilbG!(;laAks0m?g(|IHw$PW$ppq}luJg$`jq|8oJkI)0OB85MupB(Y$}%_3=TQ;=%g1(v7$D zSK+U~9}mCAJqhf`*gi?pJ{S{ov=6ew)!K*N&_vY$z~u*PpH)OUyvhSD%5rRu=dQd0 zyZ-UJ>e0olhLViX6wt6FSlSZ)D)IM*xcXdV&tY|clwEE}7&d90%&5Dl#k*K zV<(m<+I$*kqoOEiWUWu3gZVZH+8Y&xeq-Y3D%ko`f9ZN9&RAuz7PI}OMO-$((grgt z@&h*I^@>7YE8I;i{;)2q)Td%mQBfY-pv1@%6|w~fz+0mVQ0q|yQ2PWEfW`JaO_R%{5 z$*3q9TT!OOZxK*yiqzWmKqshYy{K1|SkqC8ey}37Hi=7Tew>hJOwPAX2jRd%>oEIw zDt;-qGWQ@~E;}w3UdfxGg2aN<{5r8nj(dVWv>6>q+%67Z#F=l+g#!1QJgj)C!-Fx% zj5QaDqKZ5*|6q+2H2UfPvB&q%FF_EFsYTWMg|g*{?)a^k+?dL-wm~?EkTP+H@i^HL zQ-fH@0X?ii%mv?YT@^mvN8z2K+*1NJmz68a+VHEHzOqA6u{t z6~{KTh*NGgBl)N#uu+(f1C|qOdd>RQNXd95`WgyN8McwWw5n$)(Z8Y8$kwdk+8%FR z9(h=<8Y;XNcoGIwk@xxly4~drU@VlQTo{ISBzZQ7JPYdUG193Rx9^IzMh$W@wzgIT zfjQmSLi3nm=m!^Ab_((}={3Pdgke4AHD3raiv3aa7CKxq#S0N2b7>LdFHeZ3f6|kk!U8-G}nJFrI?g}1S`=x^yEnI^|*FZBI`v#sjlR3leqtjwJ1m8*<5UdX(t9P!$vj1L~s>roT?zFZah>Qj}uaOJiQ}D63cYyr@LK_-R}5QyM^v{ zPY_ub>9;|sNEo7+)Uri>6$NG6otsE1<+q!$ZF@ zt(w80*yG#}CTIT(C_9|J7uQ(U!d%cUov&vhTV(_Iif~q3eI^2BIf}EV5FB9zYx2ya zhI8qLJ6OL)&c*D%KH(zPDnKQDML4J?PcVry)>^p82w#;UGM2z)K;Pt=HdFFZrEd

Pxo56*yA17+{CyZ&b5IWdHPco+6>O&Ou8~b_n&l8aI zlzrGt?vb$rIF7|j3qASKgX5u?&e}&dPtP+zfLwa{(-X$&d5JjU5i+93>_-ph$uJPb z>F~?{@r&et4bOk|$A0{%#3|Y6=jJrYe?PBIFF!uUVF@07d=_#MeuQ0w9tRK*Km6%A zUC-$G;ZPHP_|e1paVv;wmLI!^tM!3VrYaxB-r;2g&;N-Xj33_Nla=Scn(}87x|!FQ zcPzOnU&Dv3I+YK8^)c=u`8$vh<-gKD|I^30e0uUv@ynl=`!*24%dP(R%fIJE@{i#8 zzqH-I{5=2Gp8UV$HKZv&_V0S+V5`(Z`Cl9snEwtWr26;I|Mah{{0|&d`9Ib#e^GuA zp_ZJ7;y!8nEnj@x3RU;9`zyNy7gLN($d6#tGW*r;uWZq34EEjj9?}^C=NI?*Y>0Kb zFa_3R;cpM7^?&6@f+3vnOsG+Cimar(3&D!7cKyWaV=dm0zXY~)!~Fn2dld_^(fYpj zAom{-8tSfd9bAVYj-)KcKlq&NV6(-jzqyGOHDFdO2@43X;&Ai7V59)fx<^^44ul2H2~+?q%Rcoi(h}kC z=c~|`t2x$A0;^*QgCRy|u`(LGh<7X3bHrReVMTcd3^F^$td!SDyT9D9;k8w3EUk0B3&`qf4}*xLd$vtA~kFd2aJ5H%^?J zjv-j<6J)ilC*v^zC=aktmJD9ePr_`5ijIGW7CxiCsaGp{Y$ zaR%R;!G}|A;2eq=d9AmKj2O5z>gEo#8)GV~=XHVKjU|N)j$>@b7=}^!^T4cYJq9N% zgV`41I_lj|j8SpAEY4j60nTHfoS(O1G_Y?rEPLSnmsFx(+o;WoN5Uchdt<0HQQuIY z+lcczOT*-ZZ6#sO=;^22PW$JY($oAP>{Sl`nt)&IWMZl&yUckw@08b`>Ky5x-q@)1 z@PfrLHU*Zkifv;3!x7Pi;uaC-^6iLvcPGgXCRY*n+>VM0dz?fh;VhMe@hT)6q1$?wl*}s_4oQ<89miMUql+RO( z=%v1bPEk`n*?mgXe?&d-fEl`vsI^o|1=MYTa_vzpfCGY0DKAL>IQA7c*g*IbHqpxM z(2ad{64xi3JxTghzY9rh13~DTeUz$3xgD65JAui=F4g`M6-s4c^|c;*tdwz&vh40g zc1qiOSs@a6MMbTLfS|ag0NdJ1r}W{FkM#iLwS^3ls;md4e2dq#T4gK0L~ZS(f2}<< zFnOt6JO!mhsX-;|7mrX&Vzw=wM+}DnYTjC++W z8_CeSS4ley5@w)b`E62+i;nCR^2O+6*Ri@_M)xcpQwB;b5#g9Pg`YD;SSHkPZ0<9_ zb``Lx)Oq{?=27oRWrt(m7TnLw4|1T%y*>T78MonLNv#nj$6q9|3F{>36rqNCipd^A zFD9}V338)#HqQK;*Ve4Vsd&o?2xzdroNmSV-9(c;cmxzl*9#ha#C3S(OAPRN&hwpuoIV0b{4V9m1xzDHPoYNZ*J`;o zY&|~EpT1+*-|(nh38YLysAI!JB7LNhm?P|lDU|a*dK(wc-lkxo%@KAry~j%#BM2sD z>HM5L`Ge^N`BQV|&FgR4&_8!ZR&h~LfvcN${l&I-J<2L6W2S&8x~6!OWpaFV+2BDq zz*g36k`ww^_n8xN+E{m&-K+0!#c}Kw@&MfwDcf(uDKQrK*p9-PZ1BeTM)@s^wI}V$ zh72C6ulOSof>Fm5EI;CGo#WO|QN^g~iR(!x){!{lApKEwc$J9uHKj(**(2v{1nyq4 z{;fT7&Cym=P}?=nc9$gUmEfP7nuYSsQ~1iX^Z1ApOzHO^TSj_VAs{Uo)G~xk#-ogp zGmfZpZN?~OFz!Z2>qFl9hX@|)lQFg${pu^q&Qeiv7x`lw!|U`Fbi@rjg{$cBJ)Aw_ z+=mcXYT6>M0z$TyNn+yp!*V6a0p=aRSAX(dN4Lgnp zUD?pKa7AQs2@i;OQNKs>@BZ=m>i1&)-KNINcsxOk$MJYuH7-%yUq4j&&xc4H(rH^h zUaYdAlhpL-9ACZ~pTgs|s|5XJcmVzW@xAKzI{w|M#t-rMQ)+w}kLRoLDHLyxUfzp_ zoMOG`)32~mY08gO{WSf!>U}(k>Blc<(0!_h)eldP9)x<~_B2m+M16-5Fi(Ha2j28= z21vhzr|<(?$JF#YH2D_>NS`FqXR!R=J+7u-u)&*u{{ZPjc>0kzuMGK5JF2F? zbDcN+FOB}?7xPb?e^33C^1%t@PJWa$?^8Y+fXiVVVNb>bB~~6BQ7gU!%&S1cR=4*m zqfXOfy^^q5SC4ATT;47MVp6FXU2`p#y z-KPLwTQ9yh1-`B8TA=UKdY|%wFyISMQ|Y^p=v()jr@VIyd~;gDx5x+IwLk=XGe)WS zMiIVzFTTqJzFr=D;}`?u$nO-L{5Y5gKQ`M^eoT2J@WE-7^{z0+Nkxx$~)hSxSK$Hs|T?kzM($&g#3kj}5iX1JU;?_X&JYw1n>&UwnxipHank z-}k_0^Wy6-@D20eqxO}zH+K*!N7U0Pm`>T?vJ+NcLTGC6uJaE-lLR!&mX!@nfZrSI z5908E_SB@t6M1~E8n5GVry4)RKEudBFP zJ~D>Xs2=?3eHi??j_D2zH}y&_lbXHC!S_@#@RL_@y@zt(XLRan>(-ICZVTd6?UW7y z?Z-?+nKTqLwDn4r1}&^H^5SF5h<3*tJ$QIa?JSBe`ZEsJU5AcSI{AV*7QQ}7utGyY z+paq4UPqmn?6CeBS}Hph_As1$QFd(TQH8hc+J>DcU)WmFiK2iai_0`jWT+6LKkiuw z($d8{PvP(&&QBHmRQ_>{3Dx*(v4=}E2GmsB!&30Zoo*1#K)v!<2)K=rJKoTa9_G8S z61GE(B-ahXT_<-(6070T;|Obuq_S;TG(_~WJHRVP)XN7!&GRJNL@V_asTa<>U9D(@ zis~51lmzF$qGi(3O3$J^R#cu6XTYwt#4Stfbk91yOG6XPF*`D zHq6hE=7cdyXN)5tn27_a>7?B$%D7JOCv}X3EN)cJz%&g;CaqBQI{I5+KFNfV^cpF9 z-AE~0DYuP2$HbPY`(n}^i0@O-R}Yia_UbDfEXhgyixU$B++?-M5}}NGhMH_RQyq6j zDBX!>+eU6Y#~c|}Xtgy1jWn0dqWd-+VO4+d(EZF6Ub>B(?gyVy>7KG5bPv|jT^P^l zegGp1Qa48Tc2Zl=eRw74hCZD^B{{zwdV&=~wSU-eNm_*k21mr;m(dV>C1!g4Wc$z? z+54zCyobQKzeeT%fjxuhuy1c^CE=AV>=Qi5 zM%d#F9PVPU;-U39z~BB6Z(Y6`qP(7g8I$rN`~O$^&$k%bLSc|14Iy0-Puzm7MtK#9 z{vP&7q9^Ju%BZrMY6oSzWjsY4QJn;JaBq+5!=9;Z@t_8ru!R{ov24A?`T7vfI3WR) z^`*c691dX0>hrhkgRrR(SOn=pG^cD0caFju~@unKTM)8GxmN>PZ|MyFCd3i%c z7%oB%ElC|jJW7P!MA%z|eMC4wglal9OvFPF^sC?(4I?{VenqFKD?3MHQyKfa>gul7 zbi20YbQk;Ha?1aeFH>~kKJwJVKi6JovbFN4)|?8a#$oAd@<%ZKFa71Y>=|Eq|NlC! zmg`b@i39(Y9C*T4pNqGJ`sn|EWtlG(>JkSoao`dME^*)z2QG2o5(oZ^IFSB}@BHam zzxZ*#_5grubQ4y-?eiU(kLe1j+SP^E5Fi(VqBAg?_ z`$YJF2$zcR2@$Rk;Y%V^)4eI;{`p^uU*f>Ok^|}*`M(n9e>1LWoq7K?Lxcq)EEb_f zg!4qWP=sY7d_aWDMEIBpmy7UK5xyhBO(NVX!tEmbRD?T4xLbsKMfj}<4~y`75jsWq zvj~ri@RSG}MR;C>QZz4bs0d3t@p!n1cM)NX2yYf)q6pJOI6;I{MOZ4rN)av<;gcd< zA;K3$_=X7I7U3EZzAwU$M7TwSJ4E=o2)_{FUJ)J?;ddhZNrb0F*s2RJr(T5JML0l& zLq&MI2#q347GbIghl|i8!jU3O6X9qPW{7Z%2*-(Vf(R#xaIy&R5@D7IvqhLA!dwwf z7h%2#XNqu^2#Z8GTZEM&d{~4pi0~~Dt`}jg2)B#yV-bET!p}vxQ-oiLaJLA*7U5nI z?i1m+B0MO!^97}GAA-~X2k~`g6kX>TPomX6vTUwf51m|mSI_oI> z{f?A8<9tuPITL?R;xA@iaId`Qg8OL^((~{A`KR@d2f|l0>wfA7yf zt$#cazTXNixTj{9=I3OUT1xT@rw^iP!=p9Fg1Rx}l@!e~6j}=k4Ed#o!Xk@-)v#ZE z=a%MV7v~zXEe6Pfp(wA}N=6z_J;&VMzkmPO-i8IaB}M(_=1;TCFl3jO=9aK5TM!bK zKBs6_aY3#n*U)?NWYn}ruyP8Jz6J5RyGLgK8~WTH6Fd2?dlxN~`cKZh;qD$3#KhwD zy$g8+@7npi#1R#vth1&(%4P>??>-_qZZUXYtznrpD) zS30ApgrpoIo;wfV#Lm8kq7wdb78C{_r$QBSHPX)jW@XRJHDnDpo05_zPRzO^b$IH; ztTAJaV^g!trZm%70~BU@Zb^Sh74)guIWv(>UT#TlVNR|zt`OP;-OQb4pfCMAUx*{c zMFsNMi!cQ06U*h|Iganu3y5R1F?|JnX+^CgCUmi!=vy=h#<&c!GBv4AD#+jutqh)E# z*ojgq{YHD3rqG?sW5kLL4IMbG>2Nxoa};r^fIrgWLCdC zG*eKOl9K%F>A7eVEY^}jpq9p%q!e?il#(2e-;Ma)gx}55DC0w8NP3_OVP&W zm(G-m3#_Fa6?%nP+0u;pz)&awYktu*sT4iJ42e1zsR-<`%q@~EGfHxE!5eFdl$Spz zS1Qe)Cza;TL7H63MJgmdLX9vaDb1ag&z}k~Na;rn3eO74lwBaQozB{y63th%L8V?c z5LqZOTHb!y7Re}quTqMXDh-o{OR{8=Mo1$ivy>){l15AEQigPgG)5XLjg!Vp6QqgK zB~ybZLf^FWn=}lnSI-QlV5N6-%?F5~){UrY#vY@-L@f*|q2BZBx<3`uzESr_&a+f1`S4 zzR>mHKSq@qrtci~O8OzTcLe~eFX!WW!bd*bl#W6gXH!T%;S|#GUKEmDgnk`FJXC~X zBBaw32(FC?5wO4iw(+l8uK&M>YCrpbdmQ_Ja6Bpm=Racn30i&n@}TB9EeyE-g=1M_ z;qM*K&YN_?9dp+ScQJkw@mrgD!o6qm33nuZhweP#eipwN{0J@@;Y5U@s{ZYPs!QI1 znHY0=KK$>GQ$54k=El$9h)UXj-gx$(pWBikq+>v0k}@&iNW~x|OX?}bNjGEY(TfdJ z#%tb47@Ca30A>t^C1b?+H<5Ndv#Z2~&aqqo(QEdMkQc}k^^A=;uF_XqL`QV>i z!id^hAn+r>*wnPlWIi)Z=4Pcaxt2`vn3+t||IB-Do_5o%xe2!p?3a7fjkolRkI%uV zDK96!U);dBxErVD#>d?hKX8$hmTk$wbYpr-?wtIbT+=iur39nFlJOWTku{16BVMJT zLm(35?2>77F$Oag(!iPxboaOfdzS&BAG*MvXV6n2eG!Ed>&1$t{pD z{ExeN;-w+K?*RYOkiVbbn4Zn}{sV{n!H&mO{kiVC0Ru8Kv)fD!&+Aawu7u7b_8F%~ zU&qJ!f9lS|i;df}vZfbWvv52cOx9VL`g7A(PHq+q5HquKOG=7LSk^7VSqn9gs(Ehg zxKYL=bLtqWXzD%8!o(h!eN0l1gA-@LsRa`uvs96tjaeMf#KCYiHG5i?_myvgDjbOv zgY(oBgpK%7{4K<_zjVZ-@e9X~zH2eGST0Se2);!)pYjKQn_5zoJuL?_a}84i;hmeE z?+41r#>9SBejypLV8|$d4Y4E_RaT1DxnMrYQj_o5d1PDOwWmz_WBuD-}`N`UWins1Wk*>C(kBYzh72D5$P%)+9%g$9*voJpGc4xV2;QP0vr z;1#T0hM2iC@^fa;no7?F)>y-Bkm3B&ez$RZwcl62dCQ<|3t=hrgEHJUG$0aRT62nu z=lfMREv;aT~o_YsQ8jh9*xE6HWxexMl3k>${r zVqtmpeTfxB8h-h{3?#R{klL6Z60BZ8@-=l$kC*Dtk4yhy^~Y8f{OXjVG|r$u{+-*_ z`63iwqTd~u2|VDXhGzC6w1je({xl z@n`+wYPw*r|xcWKXzAxdo2Aj z8{B2X8r;WC4LIhg!JSUO;SIiP+k<$s_0Q^Y)yf8UBz|>oHMpza1b#f9da1#^5WgY# z^?k9yy#Zm*{x_KOgf#V>HK6CT0X^qSJ>@|?)A;{EJ;z9^-#zVq=js2w-_w6P?H=;n zY4@DJpLQR6-8bJqy>Z$-ZH@1{ytTe@qV@K5r`?^9cKn;C-RW=f@98V?yy~?3A1~oZ z#h06=QOl_2-yLwBU*tda8_`A2%G=)bpTBe3eFbQy_aj&Ha3}JoxcZ)+8^Ol|@11sk z02+LxB`Et|;BiddiL-9$WZ>Vk0bq(X-x4*?(Wh~;_eFlnsg_~ZYQ9xzo`3H+=J)f< zCxwqbK3dt}o@i@u*Z#4={S1EA2O8X;&xU?l8{Dld4eq_A4enJX|5|-~a#MqQ3VsIs zA~!-W5mu~kaGUY#fZzGG&_{&9=;P9e2DhWt|K9I-y9Rf+whivqS2Vbnck|7+&y@}C z*eKt3>79JzMC%Vo`!(o(@N#_X$iFX(Y;f<=H@I)Uy1{*{bJH|x8P)td0%m3h{!_mZ zUGyA%tv7wXp~0QphR4gV;b9jMs_!YyEnRVfEYiJo8P)Z)tUPk#fL#sqlLFPAr}hb4 zn(~WE2Mx-B8;$>POTw2dz|c%5Eo(X^d0BIdO5l3q?~2qC9CK0Qo(6f@`Iu0u8H>m*19p z5=pB3snNadyZ^o4s2>~MW#2ctt4=k#r=IrB_qCIa?l({PzN`AxH%_$nz`JxDnf=Yr zjqW?@`S;1k8{Hj;?-9C=ACgLntR6mEPl)8obego zv}i~9r{@2X^#9mLl=#AM;LF_kkLK=V=GR-($uRdhs_LeeS7k12 z5Af=%bb%*B-!)+B+$sj- zsHK@}3Fcuf^Jv^*Tw!UN*1*ZNer!%ZJ$4a~Vr*R=v&fkT6f35)saH&_tyWVTd!2AX zpW~hH&s%g}kZDHl@(|ZlTa~F|Vl`K$D(v1Q5HQ}Y_mRw_So(^TJdC9uY0C37lD+Tb z+$$^K-I`zSQ|C`gV{Bf1-I#jiF~Ndq)##cA?rKy{VI>^SW0iW)9B!V&%F}4_XZx3m zKTmTOY)`iTrQ(0tX8djY89?T_x5F>poO{diw)SI7WZnfB$*7w&siv}qr(wLQncFz} z*+qQ?grh{hHD%VYZP(!^AKueD{7C+AmFV!J3NFcz%+snfYZ_=HrKTTgteB>6z*fg2dqIVSfDdQ=Pjp2p?#~wSmvho1U2V%J=jh#z{eVsIgU0J~8o9K#wckf` z+Vg{47u=qg^;$0vI#-dl{CeMJE?eq#l+zzuw0?6UxEIrUagw_;naAM=7|zW-An)Zt zHJJyW>uV}i!z`XrWZL=!uSfKztZSYLUkw(52f(UYQ~s&2_OaMV+3r)(H7M^bTt?g^ zVEvX}WaO8HR|{La<}WByS#|80C3nw~vt#nf{jz*VhTdR^#dN`Mrbw=WxT38=7xFoObux(0oMy z++YMz*k!c! zPhz z2SoW1XT_{?e(G7y&v+*{>i6I1Pm8~P^fFs-oE5IFvDc?Fu9-ilRIP0u1p0$pgmsz5 zVxVmY3g*E33A(^q*U)w=Yu2_E7xDWO2OVoo`5!3PaP95Ub^abzs(V=(P~FF<(u!$y z(`HSrYhq4cubB+7U{X%~;z!s%dR=Em#P&yc(<%S?k&8 zG}Gukr>||E0JLqM@G^Ke>;oIykB=MLAJgYj6Y~ajes#&(<_E!4pzA*hep2k&?U^ZM z8?$WxoVB)D*MAqh4>AW+0Gm`?>E0++uSn#^cDDUWBn28yo!l615{5>4H%#0n1@vP z$vKatx9pp|QpHRMN#kTh>}#eS>#V^{mWoQO{bd_;tCSm?hVE zDZj;^SXH5pI85-y%}oCObMY_TTBx{ zQ$5Dwl%>prakoMG*|p8bg8SGur@XYb`Mf*UHlKuT@k48y*TngqAsGB1`s3)2p@S)p zqAx*z1RYFycy03y#4cX3wz>D8&|k(z9*Zf+o5O;|YnwH!Pw9*7|A@Kwfwj%?r#PP7 z$?qG{HLt(RU@bn!Vyk+RxaG!v*K=!|AAbfNtWTPd{}pgA<@ZP|TuWbE^g2GgF1hqg)5a=d>i%eC-R6s*;5V7HO`|vR6Hn8wKaeY7 zmg7CzQ+hxC_pv{OpZJV@J-8j*0G}TwYk3ATOajZYa52H zXBlX_-mpEzR?d_@XPh#4RJkhE+q<6gNO}DA%$b`!p2WVTRgzP>tou;eC;cW)?nt$q z|Ft>~)OUP)dYL3zEN5iYG&W?4Pm=PMx=g8el1W-a*6IpwTJgzhgcNT!F)2(VZH`R5 zp3_4TX62L8Ez4(9Wa4?q%O=dqXG^y%q4mxz<)(l1Ikf(KIoABX%)U#|)s0u{-wF{= zJI}=JUO*o&b~~@dMDeSXa{Y2;{c-gsvFrIN^v6CR@G~jb^IGUnRP^CSRc>63l>gbu zw?_0{V&8v)S&rRAuM;kna@&snqT9F&ojCgqWTsO-SM=VJ_bJhBzg3J;hYeB{V-=1}2CK6x6y>{1moRApUxh5j8G$|b6@5}kb^PZ_d9WXh+?sj4SM>T*?e zwmNo@sv4&CZBeT*o<*8L3ni^HOD;aA{D-P}Zo9 zQB~8`v8rmOI)9L=K0{r=-#T@Hs=ina8l)zTQj^Y9lQ{g>b01ipG)PTuP?Hs*{XqR>PU6;AT@QAI+DLN>S#5UNm-_!c%9IINCBX;9%tbak?-=ehJjs(!3GiDuVVs`_ds;Hs`?f-@g~mtPnYspS^hfa(mdrl=5i_jsj!|mM*Cka`mcob zcB{*8DBypil;13@uP*BRyPRX%w^+(;JMR_!0b#pbanT>iD%ZA0MPDjx^E@T`)53cG z8olp&Ui1~hw*7C4{<5DmVR8B5ccd5WSQSJ)RLYMMw(UPg^pnqO9k;rzy`;Rauxj;QG#PJ_4`bc4Y z+|YHLCHgqW|2)wz5Vq|JiC*dWPZGVxDX$g1PT1zTSoG}irrX~rRd)p_Pg`L)8jOyk$0&lk4iVS(s33ETa{BGK;>)^%#!Bl`VL zd0g~IgmsrHNtxSTb+M{=o^J?Km6C~q1Np}`*#q1Cts+9` zi|bExQt3EOraDf-dEc0YDpf%5)Rexk4*hx#*E^r6CfKdhIn&`1Bwl`rf1 zOkGW^tE!@YX8-DNXsKUc zE9v^CRMbw&EN1`m#tirBCqkdz2<5{w3u#XD&4Oxs8=v50Gj8npu&YlHdk4u=A-Z1Q z8a0l6nxi*}uGg#nWb1mLaEaJ${n@&c{8g%U6-rBCwBWi$klbs z_Wb-y>bL91)xQ?I{hs3LZMCgs&WpvqN2c~%UE7C9dCr6pnQ1!AgWlzpdgd9X?#SG=;v$`$ zPJ7gl@*!p8gToZUn6pL?J9Fd^EtZWOohce}#;8$D2Ca)mpD|`w+2AwBXXIgH#|}P~ ziD;UefASN+Gxm|606ldjpD%xsq2@2;H%e)2`jZyj%yFrG{wo&ak1igzA55H5M;|qF zT?$xM36v6IPA_4KEDRx-oPKbz5q z2oDn;EIg*gJ}l!mvc=Enr-^>*=rT28Y?&H-I)8#-G#CPgfx%#m)`yibwJl}vX>jI~ zed%q$06W>iHvHbtq%Hh6bJIZXA211P6H~M*CTXo;a@K~7?1Z+{Klc}e`d8>ZD!d*O zy&lzGk20^vc%~*(L9PXimQzljGNrlxJ-2Tu!rf#|^7+PIv1hVRkq^Z|wbP}CIr_k{_Qb#EQ zxSBDQOF2E51Xur^MYr}~Bo5&3=*-`-nUV_SQ8F>}my7DiWtqR@u@1&lk5&D*2eas9 z$7;_o07{a@|&~EVFhSTCC@=eygxEEpba(8I$uiWhUdbIfkQgbxJah zh4nPO^;splMq3wmzcaNcCKT4$wXQQNrXbdNbPII`#Z<&xV8T*Cxo+!l{3jx}mWvu-8 zUzX*0bS@K@+R^;3b@4*8oYCEkKH_Gh=kA|3_xo*WM$`HVdv2W5FssBmPSo~}!lRVY zyB=lgwQhxYG(Y*AarBISeZ6{KmQbVbrSn_Vruymu=8R}?RTX#fnDZ&@P2rC8v^swN zr{`vG;1)l3q?PBLZSJuDxT%`k*ye}3nH$$Vs=SGO9c<9QeyeE7V%yOY7p$*q%seiT z`L%myUVZKnR#khJWOaEKV0>g3N!OFydG7@*z>r} z#ZBZ2yuKjpW%=vYQoLy;w4P3<1H>Z&Oum^mi+Z0!$ zhd~4^1_{xvz4dg(oa>CK7{itLX-t(rhTmpR($6W(;;9S~MvfUia?HrG@!F(I6$Lhv z;Y_)XA;-AxUpFs0bn{q(kBhcqw$!fkZmDlS@g30H^lR=?t6@&bM_~< zJXrGVz*gUk6tQ}#ekSJ#U57r_@xX>cQF^WFRi@P2lNc`(4Zak)(`2KM64v%*$X|=@ zoAPz@(Lk4v6t+3Gh9^l5UyaFmDm)Y1E&6TJKArozYU7iyo~~7!+JcpvmbtNik+|#O z75E=TKio|{?}A;Cby-~UT!KCU+z52;s;oLM#9#Ym*J)*4uGa~@Znh!43jDf6f7YK| zF{G~YuAjeo@*^ukzbw7_g_Hk1>(=02L*F{N!}pinywB0|2lhVq)U&j1{Ox$?7BG5u z;f}&xgpHNIkrpW<=<#DdneWhum)U~6Z0oc2j1Oeo0@oUz`<&qm*Jn5~=a|9Tp4_uC z!*l+8Lx!tgeO0qp9xFZtUNe2f@tSX&zyDM?@bNnzQ~!AH5H;x6p^wIWI3zId(V0JbaPOhPFaP$=NBf^X^t!i4 z@A!H;GL*cT&$3^vy5ZqB7Y^)m*W$Mi{dVLDgYH^4^gnyt(fj5b=DptW$@6*)sk^VL zbjKBTw{OE*S?b?++76FCy7V{0zu9o|KTFQ&Kf3pi{2NBh_}RGwpK18X`)BOkR76Cv zL}}T6>`~D?HQ%Gkt>~ia`f1f%GCZb=$EZ%NZY-;*yl9Ai?-17x^@pOdnV;5{acm7T zIcQBo_27o#JPM-=lnLjgpgNO)38Kq*<3~l6p2oSp#>}~Do08#SdIne?fZ~#?KIAlo z`B{3+v~r%iGLMUKuaa=DM{N^FAP!vm3wvfl&65v4`CujrWky+jc*;!USj*Dnw4a0h z*&K^``$p9;JLT&LrdHq`F18V8GWEdp>cU>f9CIxH8|o{M<=6h^%%W8~y0(Vt%z3V> z;aDa=4V$($WW4KV=m|%TskHT!mX?~L@<#8-BaTEq;^>pitJ($)@n8h@ee!atN`J}Hl=V7)Wk;ZW z4#?HRhvw=rZX0Ch^S_;|M?TNhlY129_{V$X>Y{> zbM%DcpLFz;qo*BR{WrHgK1cT)-S6lDM-MuB$kD@&9&z-jqsJUQ?&t|ePda+a(bJBu znw{l$bkEWKjvjFIpreNzJ?!WaM~^ys`heW_B^-Ow(Nm6|c681(bH=mJ(LG1^J9@BB zZhHc*-O)pi9(MHjg535*@5$8@59aDAM~{4#Yggar>S0GuIePHlx&DETxq7N7_j{~Y zlBH$YjIJ(+1*Wd5xAxDoo zdfd^Ij;{8~&F?w7fA3s-(9y$=9(D9!*W7ruU#=cFAXkq$y7!}8yE-se4>@|m(Y=Fm z{R3XE9&z-9qX!Po^-nmucSx>1;^@IcbL}xlPdj>`d#-=f(G!lIc66^tZhXMeqmG_% z^t7XUhvnvr9GR;t^veYf3d;36s}FU~NBxey zzoV;5bL&eudfI9KdPi4B~||$Zdu=h+}tN1#;uM2 z<3aCVw8u}Aou7WOqdMwuJ0JT_aP6d`nN_Dfbix;lcNw;8_r$-SzFhTwv-6T?RqUmj z%XX^zXTQ-s{{C9$Xa0!)hb3LRb~|t7_bcA$eCrIphXGn1W{eW&hGk3VwccelJbcJ}dIMqhRMX9KRB{+sc&=|81@`Rb{|pSt?6 z6NjWXG(K_3NiRRQ2FVdbHuGTthh^^{$Zy{j{R9@ zc_usdDUN>j0rexUpZsR$hZd{Ii^nwHw&KFqMqX8i{;|>bSbE#dx2_*~+8xjS_<)Y* z-E#F=e;vQP<9ly(j_*u=bUf(WPe!f(+xORW8+=dA4Z}t)`qMczPX7A$KUq7as^6H$ zzN(tLuIB+~MjZQ(o2M>4@b>#of8_NwuYWS()@N&e|HeaSJU?s5Pv3j`lU2WJEQ?(* z{rGX?Upgax`mulg@`jIZIbrA5Up?<}|L|v~N4|Tqdfc1`FBjJx)Rc~@ zytQ%1lTRABV%)H&4qM=T_}LxLukUit#rM}8GW`A-*FAOfNdu2|cE{Bv*Pm0jOK|wxpB?$_u=zh*_t30`y=H8U;oCWI|l#arb*+@uixkKnb+)c;hj${KjW^Q5A5^m&hK2_`K6L8 zU%Yd_k=M=&mVR^9MV*#^_ST5?qnbx7tywtb{!>1?_1))=N?y}x*vOmS{%Y>PLu%*U zbK?Q$|E=i3;d5?1{HT+Aj~d=M_MxMvg?kN-z4+%BuZfr5xbDfCN2Z+hvoVV=zx$+z zE_(Ur^?P6Y-%DOdjCkt4T_;SP^zy$GSDpLaD&K%n5BK?3=%ZJ^zwbF`{a@(xcWmEt z8{cY7c7E)?tiL_Zd3VrRd%p9~jxUe=MgPCwvVQl6>Rxc-dtdyef8450r`^~6iQ=m# zynOQWj{PDh|M@$-a?MXVywUj%=BQlXbkZBOj{SiX#=rK#XUWbF{WN1=e%k!s1)uo# zoIvdCd1n=umW`U~_)l~6I!6yX`o)gEv^E;t^T{_lKXbm>KI3vTAr6&JFwZ9!ZeDtKj z&m8*vA%TG_uOIo)D`SUzJZIEnsbwF1`}mq2FLm<&{`z@`{r6vQb-w;NRq2dGg}_jD4xcuYPs@rN296`7via`SrqUCLegq!TvMf4_=+spNGyKF?NqB zR}N#~`QDjv`OivTe`M^r*Umll*N?q%%U?FW@=WhOqb7{*J8;C$Pv~*WZ$>R#G25yC zGDn{?Gcxty%U1Ot?-R}A7A1D5#Vd%qaUb^h+7k@PNa>qY(%f^1y%ke*ZsDAcA zy+8Z5i;v9OpU*jO;MnlzZ+5VC+*ZQks&rrOcXpA(!>4pJxb+Toe%2KA^~slHa7i~L1nil!2H5Wi13 zkGuK{)MM&xwNC9>)T`)>qG>rPzkKSMO;cu-WqZ9KB-cd( za=pN7xlUr@Bi1h8-(#ZN@AnDOgK~Y(UU#zB3+;6$d;KCH{`UGr*v3o!e$nmqiKw+p z{c+Ll^@OC=?e#^`?e$2X==OR^P;}c5g}C5`A_4CBcJtWlpSJ((^%Z*^G%D?Iud~=Z zA-P`XNx#_Zg?`a}!fCraqNl8G6BS_3)?dIsB>5u3A@K`~9u*E3h!044q5h7EJt1tz zjU6v>DNhP3VV~6tESD_~%s1mVAsiD{!rt|=eOR`E!p`QThB$V2=i=2o#L<)Y=Rcl=#V;)bu#lg9 z($;bzKU=L^zwd$k_1k=w3;Ef0+Wdh6`J%EMmJ9j0?F&D&W$i2IXB%eu;r#jRa@hV> z1^jG(ST5vetFw8n9xJdswqGn4^5YSzoKKF0j3KZW{bjr5=8LVlah;b$O1``rCZoGm^i6JtX$jow?hyjgPfq zPqkt95>o#k^5+k=VUM+8PZhAIrN6vCw$`hUfr%%LZjXm)S?*$Iz}WbZ6L0SWZfShX ziBGk&{*)6Rm-~=gTEF*f?()Z_Xd$fSvd&ShBEMSj_-R>vc_9et_w`13? zUX}irap&3tVz=9YYmZp_{U(oVPl(<9zHQf!dQJLQ#9*fXwyyVl%U>wIrTsR(K>Jf|*aL5De*MJ?*zNvWy(#gsK0}V4aCGmjT>prp zryM=7GS@%m=<4lUd&tofj_$pa>mPCSl%og!oa-MG-S)p)W$ZrZ`j)kOVvjoCr|tL& zh+VIH4ST)Cj(59V78f{Q4NANoSNa-lQ0gg>3naQ+e{6lBE%dkT4;N^^UH=iAPu71_ zbX#A{+G#_+@!i((IkAoLscno`f06ay&i32>@g&~%XUOI&u)Rjwu*YmZXFS>baj~Zg zjK@R)yKQgM=9l%E7CrVvYd`4mWb5<2Ysymv?0&JUc>efc8}@J;_NcAjS>Dt>=J~(4 z*rWI7uRm$+PJi0*tKMsk)7w|LjqNM2h5oj`BjRuSGiLPy?MaB;?l0_d-R>{!aoXKq z*!*g>S)Ry~t;?0YJ_BNp6|hIdZm-MfSpBj2V`8`0&5X6xp0IXjecApIjC3bsV#*GhrVB+j`6W1OSd%8e=^;Z+` z`$PWvLt-zqeMiI|e=vW1LhP!*{wLLjU8N*%f$iC|_5%3>ZP-I%caN8L{YS)ZuM2F_ zzhbxF+g*D??Dl)LYfp*Ye(!bd>O)!n0?X&MVGp!n4;8T6?I9v|+aEE}y#m{7LhPXe z_LSITjy)~=fAzQ4aisTuiJMz>+c%nRdpz+k)SiIY3$-UCcDFq?e?;tlXZx`2jfq{i zDc|`)2`o`*!7sow|)zaKij^zt^e`Xe%86HJt6i) z0ei~Uzchcm`iChG6tH_@j})*6#GWW%4~bnBI3J8ydx8CDv<-W#4ST8$yZ4FoOM&`B zZP;UCcaKkY{~Q;)9S;ecufTX{>-t7=E932WN!j?j@{fmf0lRI#TGJYrZ#);eK4Ien zTN!WLAF=TT+Mj5{uKsD-@2)SK-xGW6sn+Gp-rhn5>~?*}Y<@XjCPXiEex*K@dI~I0 zpbdMZfZetyVeQhMr08RM`OC{IXU^n>NYi`uI*uu9>v%6tRe94iW-zE4rgH7a<6FzS z-OBaLY?!BZQr$4!DVzD^#-EVMU(Fo5)*=wa8up^u*LQNVDa19{`STnms$VW zdw@|B{ln~Txb5ZN9`U`lvHop}pRtY0{{zHtYx`T{IsEr2Kf8CYz6H+Nu=mpwZq`;G zmpMh?97Ufbw44OE_7;Pj^J3R0#WQF2>eb8NI+8|KN+)i{o@rzuyY0ly*f)vqYtLjR z>i1_=XU=7^<6XPnQnKyGWl!EZv1!uCO3s~nWxceHjAJWw+SXp!Z2Sy2euj>x+5+({ zXChe(u$k``+LTkj8=t!?$eSrAzU4^1mG!&v?XAD%NNVe+|4xuM__039GcN&V`nr58 zCc9I!mNaMi-28g|-2DBO9Mg#K1*KK3{ zx$#?G|M9Z>%lQtM)xH*c_GX!7?{9Y>*$ML6vl3+6?dD%7zQtZ3-fo_mL6dj8%(Fu- zuwB|wp54Bd{JKx`=FijFTb}=fmJ{h8Z~?N~pOycITYydTb0TZnUuU+Ut=#d-3do;7 z)Bb$<+r0wF-@m-Ps=ATs#e4NCA3SZ==!(Y5Db@8Ovuf_uyS{pI^-Ov7tR9|vw``Gh zG`6FrmA5(n=69d^_`UV*@0D4G?bm*te|xpxw7spvf`1+kag7DfJbV7gaa@aH}Av|F->iL; z_+I6sn;JR#=?0A)m32db8v&#AJ&TQ;)w%)zs`>_15@0`NGuxc>BE}-wMwus~Vu= zTgHowh{_YnM^Dsm0IzOzMq}%8TPaWcjP}Qy8))`Be|DuNe~vw8L~1(|?$`4|(HZ$V z2z%>gsp^WU1ujcvS7{e5!};Rdvxaqi>-ybvlgnq%UO;WP-}_oFie$AmpWThO-`iT^ z3CjERE$`REobK2}(e=Ceb^qkepRePxmSvOV6tv{m_Xq3%(fMVxxBcxZU)I*LeEBo& z&zFBI+t2&<3Jy@}?^ixH%#CT@iNSLd?LEk3;>%k`NM!}z-S~pmvVeK*Sp!7dYo=vh z98u0&o0_Ip^RD5n4|c9kw;aECXd$@5u_Y;TD_L9hR*6&L9z2r78B zNO@z0ez%?Z5TAK$!5q<>8YlHPLu6=;S;qzK4V$;yHDuyBcId-t>ti{#diq~KG-Hnt z)X#9uj8SPoVY_KSLAx|S+x7UUsIRY>RX(kHM!7kAunoY@`H?wesoG@&Hy_{jk#@834cl0M!?x95*><=df1K~x@t50wTXLd7JP)PW_{{dR=^(a)Ef2R5 zFI!ojKq=aMyxj^n7k^x4@Y{X**hbM?wjVA_XLb%F^A0C&FSgqA^mn#B-*CvWZ$3Wn z>dcDIySg&=%;}w3!YnXFAmRld;R!t4s$u_p@8iw46XubK-RabK+9<&v%3 zLUQ7_Vg2ng@g<7}I7HfUIGQZbcwZJ?dJ??jgBf^V?lftFK zN_d34U&j-kDLmpvlV`p7d7`fnP75y(4qLm#$As4lcfHBv3kZ9~rrjfir$~8JI4tE0 zgqKQrN;o0qYlJ&4H2M9)K6x+DQh7hmI4O?^+xPP(Meiu@>9Ozc)qSf!{iQr4JXbg_ zyg=TUlMr4b?34H8Oc7o$^?33-F#A5>u;@$0&%Q6%)ZY3xQsDPvtsc2jRQwY^H}B_& z3dasI?{~AD{GG7}Z#3))$A$ej<$u3Nyq)c_zkl=QntbUkY)?Syj|#^Y=5J3*+7pue zeqp;pBBG_uzJMQXY*Q4SpOT0Jt6EX;GYtIb%J@HV5qfN0|QLGG0CGoHE|)~*dF=ok4bz~;?olEmpJvA z$&fy#Jg3WY%{;IQ6yB{p$=zgl#)4 zd%rjRk(7LX;qa}d|0BZQEk+LuCxmSt%OS~^ILWln6Hb3;+M(7Pj(ux5EgZ0Rn@Bh& z`Ftmvd|}C#yv?*HCG7jX(UZcSlsoBEO7f|I$rqBm$+c#^CDX#v|7j^te=X%-8Mb-7 z+hlu^d~wN_lDMGw2PJP<@`Tr!JVEjE?eXut+iOVj2L_w=#-yI~cP2jljj-hNtv9-F zgOq=3*tRz&`J$39E%}thg~dNCd81Mum3(2TH*stFoi;_u(Z_yu;#^$&@EV7SR2lQ?fTqrjWG2Eq~7#d zW;tSK8;*_@mhzyKE8&zaFEf4tVOx*okksdml=UO^hTbvl^!?eex6-hZ@`P|$I4GPF zzohlI6$!_rzKGP9kov;sns$2U8TO46mhz-U+gqle^PJkU9&vF z_Y8+t84gIflJdCdQDN^d#?L40*5}+f_~e^PI#T$U$fI6A?wlJbObSU70Q&o_Q? zVYj}J)aQ+o^(XbFJ}~W!{?%}7wc&`A2c$eLdQv#_zVQnRyYI}i6Jb~&H6<@S6vRN#Et{%$yQw|U=lP}s)%ONU1`ca;naHL?_F%l{q=^^4Tcle zKFjFIe;fa>=+O;EPs|kiMxzI&8{O6)mHNY1oAQ8gbfM|DWVlv*GP^{Eka~q2HT&{K7x<{xM=VFyW-sn_6P( z4G4$Do|gBDwD`r%`-p?W_B}P0tzY~xpx{M5rHZ}=g@ zwqDEDFa5Z*Q`lBJ(+a}Ad(3v2__Hj(@Lc!(Hsa?!Ve&?o8g}#f#n1P#$rt^|u$#~N z`JXg-Vv^S`w{2!n@&&&$d6M5sUTL3wAC2|%KV|a8C9j(=Y}?nNBy(JhmIyofte=0G z$8HePv-fHUSaAD3fp=uxA;9`>JJFpcG|Rd z9_HZvCZ7_v?~Sr-{d`NLe`IWGR`)y6*|yuGgPq-}jE zsZV%&U2n1TaHcUF^$$C*XL^m)C%nC`M)7vmojjvQ&u`x8gV z_W|LAT;~Y(GUc9dR5&DTmm@0qefyaF$-NDyjx+Hg;h4k)`j~RRaH_Y_lfn_ZxYQrp*VG%dT%f;`;vd}4_$%Q;{g)Phb%61Y?=STf$ZzMB4Xvz z`(<9`V7>A82^ZSG2gN^T{e->UP5;<_ardub8+W^@CnRk5tCm~*WPcbGcK5G#-sORpu;h?ZBw|OmxB!BoLlQ$q7?~t26 zDS1M|37dCE;};d(=CvG={E<&g{-AJD;=GO~zR>;Yn8YVPHSsaw@UA8<(aCV3`^yPi z|L4+g!tVOE?M+$#Z>7D$_WD;iZOS8GOM5KK^{@0gQ=X9PUx9DLU#@?}#cr>E`9-(& z+xO@sl)2s*6}H#EBHv5?{}@gQ+v{KcW>apje?>&M*T2&L6}w#j3X5**SC5$S7A=s)xpFkOAIIE{&Pq;DeT4vBtE#4iSvZF_I`Fq^2K&B`NG0m zd;d8i`NF%Jd;#Hb(SI}dYeWAw{S@9{*xSLBr#c%B{wMc5Iwtu7olHKTaQJNF?*$F} z#u$!|HyoO5*ng&B+m8v`f4fQl3CC~G^|Ssd@el28{QbhIyYl-hnYTK*hw+aH7uucz z;vd^b{Dp1(A+blh8GBgR+9P6*_b~R5aH0BQw!V|4K4F_LA@#rU)+e><=$(In`UgzJQ)E5|G>hlS2uk-JK)E7P7)E5%oUgzH-sV_Cg)E5`t zUgzHtsZX74>Pwwv*skB0*c0cQ@|du-C&V7AHuiw9wWn6DXGWiwH%iGahq4zKIdrJKJOTld|UcFWz6=!`UsCKg zZwt#j@^Q%<5l%~7i=POdGw-}>-`;xY|8V^=sXq}m>pL!-lzvMHho#)@4|m>v*S^iV zGcW%(=W`Oc?+tLw+pN0p9oXiCP6GG61&(>!)hFcp+_q=Rn;~HHUu?!-QpQ>Iklg)& zcd*gj{XzUtQ?A7BRuYo@0m<(Z4tLMZuS9qAr=>h)>v1ZGNdAcA4GKpO%grC?QK0?u zJdG!IC%uYE{?shfKT+Wy>iSel^2aYV`NP8hQ`e`|lV*JRy2||rx!#}tx4GUQ{jcGm z=DA>^gkxfp0A`OkDK3<`U~X`Nc*FbHzXWu&TW58^0@iK z%A7A1${&*aNt;(VDa&iy9}?ZoA1vN{{)psH?`QfyEbO<}M})2J6Majs*Tf`$=m1&2 z`y2kDuGb_azwbwqznkGLyMX8cAEGVvkHNjVQ*Z8-71;jrjI z(fuEo@|bY&U8DQnG3;L@_SX$>GQOpL&olL>rT+Nu<@@{t^8Nim!}0qKN2NS0T596M!drSh%D>Ev$8b**9}wQ!>rp|;7xbHap77RQj|$s-y(FLT z)?SZ_OTLukiQ9Zzc|9s^`>(h3pKzh;QNBOO`B5L^pA`Q>*Q4xv-h$%q2?y@ZfBh;b z`NJnldxY(H3yVECMEXJ#DB{Y<^~e#zIOcgnn#SgFrM_r!lt7vtYa^dX{m5PhWRN(#=fx_${EpR+`_ z^_?err_4*Ll&TP2R5e-jKqgwLsiK>gv?zvAH%@K(FW3Jp)%tH3KZn_pf7uz%R;~Yrt1bIy<5{Nv zpMOprGGu^PIJi_aB+%dh6@#l8n51mgQ!)uPdVD>}t6^27E$$sxO!?8CECxq48Mo$a- zgahxGa@%T~-|Ab;P3trFWm1iXePi=KN3+HG{@?1zj_3Q%G%me|QhO@(XV3*X1%C;; zBd6hwpj7+p#rxnvPvihR5k!&0@Oxd9iXo@q8}?QzjvRwu*oXJKA}8TSZjir%9D&F0 zuheSf5IpVxrPgQ}z8$2I3`%H zyvy54%|!OWE8kIS4sr_K_kH>i*@F-M2YrR?hg0A_?E`K4r{S+^iqt}6 zbzza(Fs(=}(sEsq8ed1^7A z9EE>&S&>?e9D{EMA0fwe8CZjyg8i2lsn3x$KMm5z2{`bRBBlPpvcNMy2jmF+HRy<} zB1Nhn=%jt%mw*pB3IFz|MXC#O3O@E{MXD>ZA07ofNd092+Y53^^Y7?eWDo9sBYlhPho5K}Stu`I|@_;D~_`@mDzuq?4#3xgjmRP=s1ANZ=i z^c8XxUVa??gPer>^rwH21Mmp21~~{%2cIKH;9r7u$WizSupT)9uK?;Z^1$zb4#+8Z z)(P|#as*xueA)-z0J;(S z(@DiDjO>Glp3Jf%2jLsQJmeVsC0Kx*hHniNt3|pT?lrhr-G>~2uL4VvqwuR>8FCW- z3s`}if@r-rwl|AAm*3DfpgI ztVdlA`^K;yku~=KE0F#0U%)HcA1)2j4qXnv@MHQGncqCC56-0D{)G>`^H}-{*$3}_ z7Ja2M2^6}1gnvw z@b5qhIR-aez&O-C@Jf(IPQm_i#u&2ZUjX$5vG7hIwq;}=yaIGVPQvF_u>O!k@Iez9 zC&(T=6!b?9!XXgQK5!U}K-T=rD*6XG3LjgIAF>}l4%8wC;Ily(IRwuIjoKf67|cXY zz@LKI$Z7a{5J6UxIKF^6$bNVLn2Q{MF9h?D!|){_iX4G&0P~S!@B?50avXjVEJRMg zFM=3y5`GsfLQcV-fW^pZ_|nOYN#qE;?-ceY$R7Oug^WY(51(JlxS^z5y)O<#2~a#t*U&9^Ay3 zK@P%~gO$h;`1t9J6J&lbuTGf3zDUdPZ^1_77~F9tNRtPy0$q^9@b7_#9EU%f#TY_nLJ_mCm@U*f$s%TV&m{LU@me3{tQI$NyE*c5n26~{=9*8N}nX)&%grR2Dll_ zLskpuH?RPIKU@xC$RYSzE#nh~hy9K*v=d_kJ{Od+>>>CbMAlq(EB&d*2K?hYX^)oS<*Y4(21L;q@SftR7{10uzvZ@QGjv^#MUH3& zG2IXFe4unJycl#rj>FG__4p*=otLq$52bBz7cEon!9BrZ6~!% zX_ig*GhFoy@yHRldxG(bPXIpgk1V^E;WI%;dGX9EX>JZulhNKY^~u zNq8k#gii`y1G-b5hQ9%`$I{Qw(iSj#Jj()i0n4tW&2Rur=}H^mMlg3j+6jNHb!7D% z>jBI`_Q7326xoBzz!c;V{HE5CQ}E}Y3ONn02VrEjoHl46``{D71YIxO2v$%Yf&U4X z=va6oSgvEAXAFQOasX}wi?u)e8JMsA;f-LC_J5&R1wdT;!_^>3U14}8Scn{fe-29b zr=Q{9fu6`Q_Z7>cZ3=KCE8A_w7dU<9!txC$&r4#P9SGUNz+4TvE};g_`hBianF1OduZ@EQ3NHZ5kz??^Ab}i*mw-{o3HU|u3UU%&1?Id)y>RjC^v{FzC)@`_rcoDM31%aQ z;SWFvIR*DfGR`lgZSYtylkyOJ1qdQX;RRsX6xstX21}9S@PThI{_*kPYrquk4?hCR zkQ49@Z{kCKAKVozA=ZPB0QVvL;U*BlCjvhYW+EryzkoPCDR|6VtXFad;RZ0F4uAM| zU5*@w4_wK%gzUl9U@m#W@NYmFLOLehYM`JO!8hh3#Pp`Qfgh>_PIwr67pxhi?Jh@Q=Z} zzstT7*$4Ll3ON8@349OH9(Vy5MQjYd8w^E`!`}c8AN3yn0J~sYv`ZHk>RsI_jg%e z@I0`3ciI3i1MB*c2M+#|{_^1ue+4G=XPkUWKG1g$mJyx+MjcNc_$#o8a`hSK4`3PP zak%Mo+DvQ&9`G;POwIsY35MbmhJOQk5*vdb0Hw%r_-PQpCjnpe1?@+U!l!@9c8yOE zZU74@kHEKsIXV`88bpv2@M~ZJK1q03n(dM04Z_cZF1j2Z_7(lEbHdMqZn_*Eww5uW z{o&`qM*1fSzXv+upMpOF-SJPu)nC(x_=n+-K_^`fSFht(qs!rsK?hw9SAWA8AWstS4?6nuUsb-~XAbr&|l|-{{uQ8tG!FqO<)mn4E_+r|4RSBPwzuNUrK&>pM8mC+wtH%yVAGMA;a|` zJ(`^Gbzn7h#o&(nm#7uw^ucEwKpxr_gzxIc`ul)>fS(1c@K3^hepI67P#%DHI*>7d z?1NW;TI3}BH;}?V4UavjM9rg|=ls>-9%B^Q53d0sv#4ub<0;uK;mz=u3GFp52?VdKhhhUjw6%lkmG>1ab;KrVrx>*$)o@ zeUSrj_r9!0EyL#>M_tGvI0YskYaZQ?@uth+7+8#~`981+IRQU#JY!zVaB+WZ$UZm# z;=7X{{_TluYn_ONKN!UJ$T&~IwWqSYd$WGwjX}1rLG;^?OH^mjb5HsNzV}SFm)%&8 z@LS-cV~B-I#?n?~A3O&vMUKMnfz^lO1DBK`Yah4|ScDvaM}UuLXAm9-Qph2AB}n3v zg3Hcg-+~;1uKGziqB&kR~<^&jM?ZBk-SqAD<+AzF1il?iK#s#pLHs0^5nciA zLr%g&FJK$TCkQVGvyqeV*C2$f%2^lS6`da*2Nn|>f@?qwISfAqKEfvf?;4`-kbUre zU=cnZyh8>1G;;djK49*tj3u}d%s~#rAAt$TY50MO9KXmDhu;Db%2RMjCF2j-2X_U_ zb$+-MB#`~^BG8CW9PVDl`at%>W5Foo5PUC4>-_NlL(%=m*E!yQ9KT1JCT+?YrP)@T zSrJy8(N?z=XG9e-XH-{P_H{;8M#e!e)Mxkt^r^}6 zDT}>-^qJutvOVq#{}FTKJP)IFwfXaLr`kt3&1a%T&hQen$yvS>iO>%ZphNM{< zImW-jl2FfAqeIT~daRJ6(|xDHz#aCSXJfjYnF!Iph2aywSbd0vaUr`7Wa+Mcqv{4X?UukaW;wMR>Qm&R1rX1N_R!xtbjw=B0K zF6VdvY4v5k;8(7fvwSt0hz?2YU6N7lJ)YWYuxJw^}I6{YLD~Cwf0kcncu_c z3~S*}uu+b#^ZNo!-NXL#kFiO6nlC}KescWC_3pdR$09$6McPYz-wkR)J3oolP1^ZY z~Fn%JBH-~KY(>|k)OnRxx`m=+y9r% zldr*KYsvF1sFw@ei{eqP<<~GEm$~jn&ygJCDd?2rya#e}f)7BqoaFzZ(^%0>zMr6M zT`~SD)`vCn>6l~BGyE{-$wi)cv-1<~5$}(c-_a+Zj2=0|7of_VvwS&fuxxz2s z>RziU^Zb>bA34p#SQ^^-J+$qop3AE|w|);ET(6RU;>Of5faY z$*YjlUf|*T?T=jMXCJf=?sfE#v%l6q)1KvjJ>|1rdxbB2+MXCI%O8L2b6Jiydv3;j z_Y3v>_Qa}aU1+bX@@FYkeotoK_`0uF`MsJw;p*+G{2oy|pNA#kTHb&zxx$}d`jPtC zzABoyLsgXgp?dztl&Yvfj`M3fS4C}V$~<=$HFAoN!-&02^IFW)UgFDkt%{oE9RF%J zbCa{Y@jF#fryT896`elQwQ`0(L&jLqtg7h9=Bj9mKi^36jVDz_J!f;165JSq1MY6JfmIC@<*tWqoJzkY>XYEo##DQ71cEw zm+ySODq63mz+0Eh-&ip|7b!W*Z(?+Bd(P8ds)~B$B=?V0MN{P>&)HBFwVO|puR&a& zc^>y(Ra7s>_zbK*%s%tc?^i{wa*B`ss45x`^Wmfar>~ItJ@ke@Z{hRDs-gio%l|}A zXy?m5uZo)9aDREq7w)wj=iee3+W967`tzAQ=fAYi+JjGx#ziCg$?(o!85a%7aoz`g z>Jz*_`sF0g#ekgR<4}~-{3PP~Eb$>*jf*zvC&gc&@lE@`^|)vojJ{wWct>oJ5C%*>ipzRoY8@d)2sTqg>z#)#LoTK4bCkF-Lu#A4iK^ z;;+<IhyRMD+KYVQw&S8M?ODDIOCGTCnx#HeX66$-b*R| z?7-@%RgMm-jv9LN?|G05^zf-ECsZY3;e|mOx)T}1W|5{cZE!AG(`YWrW z5joDs{;@i$ac!E{qH&FV=2_j<(KI>9t1v?@@QycDM|0#jFUNE_$5U^rj$)xtUX7G- z3q0rM>L?TD!$T-&FL86eIx1;T^Cl$Mnj7DGi}lC_KIV2=eTrM}sE*prGsB&CRY$#Y zj#uAZ?dN9H^LBr>mM{mt81r14(;6pQ(=0 z+T(o5v+k2?bG!~K)RcMlbJbCwoaFN`SxuJjM@}yCmVg{RuO17-dil5E*N^IxzkJa= z{-)+7d-bw?lPi4UYwqJ??lu2xM4ut^yf>U5*QWUU@0d?fpM2${+<_4}$G@(a=V#mc?^3IyGyY>9 z|MUAnUV^sg>^WbGs(01%waCBa9P&ye&UI$^Ma+=PT=$WBImS~k*5+RG9*DFj_yE+& zN&Y=nysS^Y6`Ooc75Fcx$VDDNW50FrN0=u^|21FK%LzUJF*(VHW3rs$A0sZOc@4Ua zRpiIf?lY^zFQ6lQe(`Rjo=2av2|gDEIm=I=PcHF)5j)!)KCX_wg~@V)zl#xbPVx~b z%PIaV>eUo^pUvhI>iH%#$a#JjH9lu6Jo6LpA34dFVxFAidoj?bAN~gh26-`TssOPdUw}BH8Gu4URe^|^B;2mdD;A1(EH5q)KR zv>1({p3lKXYs~TnG-F+N9)}vi3I18xTEgy?px#)+`tJ zkInW+&U4eL_CY^se&#e;dx?K?`uJ!xwDamK?5$knwZ9whXIrh8x4U6{G^RbyZQc5R z(zyKeP2-~x?IoUd^Z2M@Zb@E+jdFo^%#V+1^b_Y}ZdG%Redaq+V;>59$Zg}JqVt^M zb8okwuFdl6=$Ff!ykoqd*VaGJ!+h_ARB#|={(LG@a)vL&JUPo9NXt3yLX({5uia@q za-8=>qnzN`XpxhA8#?3y?{}9y5AEED>2ivHif-Rg)7*k-+B3Wa4RV&-(eWd5;OoP$ z>XGBTCzi+wo{erf$)}=U&hQ`6E9ZG7(sF?xMm~I( z=0PmfUgC9Vmdm^mvum9tp841D{#;Q1eChN0ceZo9Rmr+qom;*baXH5)y<}YV8UFjQ zHOggv;a$&~GgIalHruz5`PfhNxyHWni|Cch{K=>GaL}3m%-;Ub`Bb0gd(mjDBJVcl z`H~ZS6&8libgui-`IO^4Hm)YhFVRnRP4s15O*B2^Nj1@NSQp0SCs2}0yw5f@QCs*d zNjb%rVctaJ@-?Ad&hxF9BNzBRq~r>JHD2S-9?XrW zVR%<#@eGvYBwvbRTt9r{H}x4Ze|=Z|e9N``0E%*vfBdbQsB>Fu;ZIN~SmU&s=z6rO z$#W0Z8@Ir(VpuNo_}z>v$M^t@$VomG>*NeCL(bf?+_t+t{HDxrqfM^x7A!T-Xpfrc zC{$@r@kQ9AJJG{_a+g6XpVxFp&R2|3P5 zs446nhMeJJu^Xg9YK&zxlrVU2t$2ErNR z^U*D5`C1IRHqTFnti8nlL3*0`A5aq=fi^kCXJMh7<=-JC=Xot!nF!ApkFTY9zSqq)F=3Iym68hwWF+cRlX|&0~7o#~`%WF^- z_KM#@U+9N-Jk)b*{&7ws8~Wi(F%qujdod&z`3*FyDf1qUHPK3QPViaim9zXLmZ&fB zo`=~JIl-4BANu58YzlqyTWAV>ax~X@kb`%{qHrxAi!nLP7o!mR;Q{2;m$>S1&z&6O z-O=cIOz=;z(mhS{DHt-(3}1)$o|IoRT`n)1F4Dndet~njiZ=^VeSD{nF;IpCmtz%mVFPKFK>% z4*u!M)-I>{!c%-6$yv@XR(HHP@ZG1Hzg*z!Tde=b+Bx?N`z!}Ho@Q>xSr_key1iX! ze|Xz{XC z;<=jdTK@0?pCfXGmtE+2F^4Q~yvV-!&Q{@VmsyK>#(4j%wa7`H_8aF+eS#lFqg>>p zF19u~#c!h^S9r%uJd<*q4?}0D;j1uN&hdkY$wmG<7RhD4zTF(;Jl~2Ixxmk&O)l}j z&?;AW>{9pCo=3}TqH);hY{Ym6RNUV5Hp8?CLwbHT6O ztX@r-XaC7QyEe&PE8T1Ld9JzLKC6%Mk~`c}Im;*AsV2;aC*0*+U95)B#uhotJFa%- z#TTJj&hj%Q}e1?#fUX>P%o^=9~7EVL(C{sT&Kp6@`jT;Tgqr@qKfphGV4 z%czpe{4TO`h3o%fALTeVpj}SzOl0h5k`KdrImKt8quw029V1hn8D4>Pa-QGC;Meuf z3)WbdoaWcCa3^!%EACYz=lJ`*?yKJyB>4k$?&wVD6K-!G*2e`s@U z^nibkPV?sy#Zo!A1MTLY$NBO3~UT*=W8(%`sBZ0vic&AA|9^o_xXnDa*F?e zdO6QeVA!=K{tR*Ri5~IXBPIu5^;dnV&++0%%}0BNm!d(=@~omY%1K^;QFBZ4Z;=nz za@XJNMHrW-J?6PnpWqA7r9I1?=n3__290u&pGUu3;z^JDtdwK?9kj|xZo{CQnihmXp}2F?n(W-HpcrP zqdmcM(d7GQim$;8InVc_Q7-ZeXpqZXJ?I|EG2R_XIl*%=Pfqc9NXc35MvM99`7KP< zUgqnbc1}D;d433W+KasNGtPz_=d+M@ZI*W#(vLO9`S;iu`sBAUELV8)v-a1z;(XC_ zJ};~{%deuzwPmh;-upsLj1$PI2|gF;FlW9MBj#4%XVI#r#8XP{SC|9;90PKO??;FF zB2Rh2Ig#UhJ_>S{S0SVS0zZ%D&?i^0R1V(mMc*I7wR{M&>Qj6+ilHA~g`D{pxP*?- z5AX1j_gmOEJ`}_1Q~XOTQj_5au-cr9{FPy6RgUojWYwqn0p#Q&PkGr{l;b=XEnz-< zCgz7eIfphmcnw;^wfqj2sITyLulNiK{qTJBs890>XUgG+)e&slyiqSAuXhXYPmlU(BZjn1AN=TniFGu)4aT;vM6!&toReP<(# z#XbL&!_QK3>;vx^IrzyBozK7PpTGHUW1M3SymiG`a*R(w`D|nH-!LYZ_}2fp*J=tp z?jvj09^>g4{e^zG9V2p%*JD6^g>T>NonYJof8`VFe9*Q04@`YX4Ij3}v!Ol3x1b;w z_>xb(_v9SEizRY}>ppWYd_RftBDBdF9>5ZPmbm(V_TP7#7@v)boaMDBmep{>n0J@< z1g}8f>z+-nASVYmes0g@6rX{9^%=ejJ#vmGe4(Ey#^RIF;`hrLz7jEO&v6+G^%Fef zOW!x-Bxj@AX!%SGPlE45Mn1?Pdc+Nw5M__DG1KNx<)yJG9w=zEy` zdwueim?!7>K_ulOPpYbo2Gqy+hghgR#rss(`ftAN18-AP8;zQCj1R4?jmG2@|8zoa zRFTs>dtz<0rCpogOVH%n z9N&#ip@ySx)cX4d^uzPfA*cDvom}gTMLX9Ku}f^i!^VMg# z7p>}xTy?OysgLn|RB2E1Doj>i;LVt>JxV&m7*L<$>oB7KJa52M^%b7=1Mdp;NnVa2 z^*Me8>%;tc_d~2vdxFnHo%$@V#Y*iZ-tkcHmN0)_jH)nyz8_Q77rDC8dep~w0fyA4 zc@@UA7kD!!hxs37{#dO&#n)jV%%3-)F3g{2&9%Q_{=6Lh>T~=GhQs`M&f)q|pX6=~ zsL%5lI<@=D^P*;~)Sl-4khK?i>JfgeJT}f_3r}bv}4_F!Yhd2Gu zS)6Qt_&>*}pJNUwXYfb*(VpTT9UIQ5`S2#BLOq{;oM%&ehR4vR-CrCS{R$o0vz$Xk zdvG2#;ko7lMzseQQKvolEflu17XA{0-_z&uwb3r<)gI@AF{C}oqv+EfE%4q$NqdeP ze{9a$Q~VMt+ROYeYzgz{&k-}OzlbrKgfZi{pK4s~1-{}mdm8Hb^;Y|1-^%>( znf6e7ktdw(zNnA!ktlg5r}$#@%Q?OQjkWfcZ@~Uw@u! zPgT$Fop1luRQP}ktV?^6FT2p0IYs~c>aUzLxy*Z9WX<|X@cF;CC)%_8E;0YK%=e>Jdy${I)Uzp<_>1MnRTEuS8|~cTEXr}-{&M$PO`K!D zwV!hETCDs(*YeF*Sj)-Q#rJgTM=tOKS9;duBImEtXQ<)g)#iMXc78nP^CirI_r1pc zthYwK^g4aMY#;cV?S`Y-eLd3zp{PCd7}k7Jdp-JS`GW`a`8)TBCqCp|d9^*~ z1N&>Ea!x<|%fI^kR+Hf+#c+1*33ohZE$VZ8*MRR}>I?kLT62?2y!J`Ynm<1;@mYi3 zUvie;N1t5bE1xp1oa4z)d*{n>{w|v2Bp-)fIn7JZDQEd_XuVkf{5e|W=o#l6ZJ{3? zz^Gi}m#{=G^XF)nqap8GEDiO%8)p388RNH}^?cg5GH=9~^;Y;}G})8rx!UM!D9Ul( z6Dc{tGcj3xk`F_toZ{nAC#U%ow96UpLQKwc4?5%m--lNFS>z`$684rac;2|?ndMHb z*x4TPwWz;FKYRv$DM$WZqu6YUSV>}n@{k}EDYp~RJ`yy8l zn?qR*w_qUrK9`3v`ntX1#LM}M@46iKz3QyWMSgaj z>;IvKUw+NFa+!;-+rv=9|Mz#_zqP0N6ZFZ^h%<}2ceL}(sFCyh0eaO`_>MPxX6dKE zd%x*@ajrS@eaOzxKOgv(_n!77KY~uV$cL4Ut0u+IVn}<5HzPXD9NzZ(Q;hkuju`KP zy7Qb9z7fTK^Wojz@h)vLF5ivl5%b}_|KV9vli>SMucpWcuJ>$ePx4}P73@DR!wNae zS0k>U94Ft^k8y)5*eD0*H@K&AaOyqxQ4Y>xzWE3DASoAk9qP`v|D4-s4@3W)eBT=7 z;0khbaQ>gJk%LQEZ*IX`!ms7%1Lp$qzgi>TiC$-{z*}!}-`}=xyf^Coc|wA-NIOfx z!$^kn#(V$Ec&pU#W$2M}d@bs4HwV5AQ{@6bi7jeM{0{20SNMhxo!wB+x1#?x_1uS1 z^+o<0R%?it`|+_)JW;=NWE8 z!B|TP`11|4$tk`aOXULhVUt|sK~&@tzlR~Y z!dq=It{mfsP}QTJ9}n%uE%DzmsHV(sqolpU|HFv(=+oNh+vt`Pd;s!tl7EfWa+WVc zLC$d*acc=)_?hQddzzPFb$FJ!9mB@T@sIxJ{S#{VNvxMkJTT_^u%CRz=gzR4<9pGr zrpPa0oqo#vUyR7n7oH*Xs0q%XLk>O<6*XD@5c9NGcr!MIYrpiJ5E<@y(bf=lLGA%LU$h>k0nflUO+H6bd?MESuAAmFQB;%RJ!>XJH4mC6zmJq$;X7*8_gM@7V#0)Iy7mlThxPXu zm+!$+xxkO2O-+$s3GHp>$(zwGM-wMRJ7S3(=UK?gNnVUL^UUxv)XQ1E8XanKyb8I8 zjm2xxC6{;uI^_yi*V$(|#s51 z*aZKLrT+O3=pEfQ%JVB&EtmPB9qf6=p74|%?YSK1^U)z^xf?63J|4 z>Le>>Nz^d`!>{b zAIj%ASG?q4bC9##jrrj$@ja-K3;Zb7hk9O;^t?Z$o@f8SJmn-eW0U71&1WJXo)KP# zu29dbFm{YS`B7|KEKqYxNe?)w8wZB8ugjvW3Vp#83mt+b~S09dW3iW{hmP{ z!4kR5-AC$6&U5oo_E1jqatz;NT)r8ta-Q!&x0*s|YjP{O8=Kc2M&Z$e&sg;)R3 zGZO0g6^!Vo%>PD4uJD&gxHdXwLiF-{>upuT#~p7za++U4Dzx($+O0QQ;F-lzIn9q? zp_(FJ+iX6+G-uxaXU>ou=W8&gCeQs?;o2ha^ndnRj`KyRQlI667TNPP_Lh6GQ7-a~ zQ=F^N&dr!wFb94FljS1swAfy#iSwJM+lzb6pXayQA34p#=nm~XhUu=2era8p7W(8z zuu@HtH(>sVed8}tFGpv1=VOMP;Db>kCwVbCLr%`}U1)ty|NJOg-UyFutp7|C`lMCF3>2i?= zk&sJ#@VVx2f&RH;iSt%;E%%_fn`?QO3p}@SoO2kEgNHFT&Hd%67rI`K^FtWi-B`T! zube&gF+Lp`Im3U(u=)aTK(}1s!KLnz{|33lcl_Gkg`cnB>@s7AzpIK*_>FnWX&yq~ zZ>)uTn<5v{&4CrFW5>;<2keQ`^|{oOi|weW}m#KhdbY!k1p_ z-6R+J+Uw0zO_6(6c@~US;KO=+)@V=hLNtbPc@5@-dVU-mUocPpA4cTp4rdPob>_^o zv0i(U55*=q#mA#xO`3m>J~_ir-s!A{KfB|@@3MF1lj8Xp3iaF;+T|>tyxQlZnhf_~ zg}D{@TX(xha*}Vk$2@#y75S5bGbu-Zajr4ob2iI2tZ~N1)bQl{Ja-@aKEU}0&C};v zaKl5^xLG?N`>^q}XSwSU&$WA6yJ8<`ib+IMfd#`bLK&$_OV8u@;7Hp zj&m#O>hFs+FkNIbEjGHmGw|(FzQ2(laf*6O~>xTzWCzp5_F}cj^Q6pFQ@)wU1TIsP3M$$7pFEpmY$#6r2q?_x-w72bjdIeOD~U5v;v{yJvMao+VG z_Wdq%;2DT(Px3M7l~a5n>cV{ZdDP1#{tPSq-XvPD9tAnY51>j-kq0oWpAy%&8M|Bt!J32s75 zSQp=lI`6{*f9oU9u(c%k5{$_?egz|PnfL#%HONW62BUJG|BEX9M5DfYprSp_IaC=p z_$3S&x6FHetVT}ogUF~U@-~}&|Ir@fi$3vAw4Yg?vPHWb=c_SjuX21h;_3_hy-)4C zev-W7XU=)pPtGA3>iJqslk@z{|C~L!#G~kxqcQc^WUSzmJ~vP88BTxUyS?_{+p*ER zrND1vom}CnFYT5381IfI=Qa_HUNtHHJ!-V)`9svp6+S4M7&XXAZpNtkG`C?`pIOdf zy&QZyR)#t7lNggr{2m763P1LhiP1*&B`$6?G1?*rkKcM?R8|w?AD|?scoEjA$?$T_ zGoKuK7D{u?H9;61QK zPVnI<$|?Q@>g;)jFGo$dFWgc+F{%&kd<%xd8Q`^uX)o~>3~7(XPmK0NtDN8iP*juT z4s?a{$ph$>OI%fBZ{-;0v0i;}4^|8si=RSHE^+k)`~0+e{!Yl+lYAJK$|+usw4CD= zsCibOyb_UI;9gY8MIOM|kbUEMb>`{XG{27-&)Gx1a?-?Tj-2D8x0x7qyEes>ww)Mt z$}xTx{c?$~j2XjcXpWEms{4JgdY-hM`{FY+#?NAPsOOi_X52D=h^$=UDcetsM&vjj zj&*X1&&PT>%eSK}7x+%V;-6uf_B5Y{to96_G*!F(%y1i8v}gHu7?bn-Ear##@LoH)Uvh$f zhRNPB{a0;E;gV&%x%!fZkxAth7 z{Y1Z<p|hemCQyQB9h=FVE!)<7B-?Mx>hU5ajijrLBEohdb21a)nm;2E!7x`;@I`eXz zuSc7l=P`83(O&K+n&lL)#!9)sb>H?5kz>3U3g(vJPGqem$K$6vKXQy)k&!dpk0!au zU)$Th$#Gta7CFl!SR$ACGc1y$ee{8paf9zgOfK?-eckskAHD&-a-Kg#kGWO&XW!9o zZ`1radgN%oiO~g!$yvS;E$Z{!u)jUmPlCTb!!v6?<9ro5ZSnjEjfJZHGT&!Q*1mw1Qo zxo2{mTT!Pb!~K{l7x@irR8!{7p;7Gt50$TiJ9iZ`9^164o)5B zKFYz-TyvI#6BzV+z~F`GmDAjTZZ$bh9&Qdz`sWG~N9&*S^V}Eh!KowkuRS=66+Zid zd%~~f0DHLxzhH%2b3h9@zL%`g!cm{JoZ|B^c93!T zYOIrUd^75gv@X6M^X*BIUqQ26=FLdS(KQpJ9kEc3^IW9OEyX9IIlRaC%+RhT!^=@; zPjb8pljQ=hMU7nI4Tyz(;~iHxhu&Rr-WLsWf)7T$nk0{5i$52Qu63S~Oqeq-z0NbE zJP)>2(AM_)~cnB?Wi92ub9VyiF{bYG$m>lC19(1ncG@tOWYgfu#>9=ok zaQ3g>zqgtXuX)ryYA^EDe{;6w9DnebYt&S@X+S@6ir+)g+$y~63Hv5zdDpex^R7+s zW+cradeZNak@$maIW}mlF7xE-A$^9-{m(l8a*_Y_ocHJT`sZCr_D7EMyDvF6YASrf z%if>b(|pV;K8xiPANZ>KE+_e6B+aeJ`>!(xImve-rJn+~z2*$aS$+atx47^8``11D za-LuPySd3_Uh#%AmeGS`>&6W+tT+uQa*dxCFx$NWP*|Lz~oo|-&gz23c( zb3E}~HRcxMOE6o`@n;xztsgXs)?!AO8}IO*bvZL}E@A8j?OgakpK|aI|7C7+iqHAb zKePW?zU|-6iCo|l|LZwXljfmO&z|-YKmM_IX2|@v&E^v_ANq-Pnp=t=MvYwLUAO2{ zKM7us5xK%MKeboROp-ssJURNzJ^i2egB<6zW5)WE{(0bx)QC;tjDIm_>0$h8$-HLfmdFoyzf zKzW9C-mkjO-}h(Ed>+=xS$+(8xx~?Uc@OjC2DHlwUWhGf(tI7d!uL{s2W@hNcdx1Q z{ZT!ijfHZS3uyIj4_=3qT;`fu|4dDck42x)ku?7aS-HR;p<9k7)J2D2k(}aIEH$?b zccDej^B^{=De-m_>!OU$kvN}(*>Z;0V7^@Bt?KHcsd9{`W1hJscp+xUY3@K?O`boU zR2Pk{GoNkhqQj8#nV#b7(IMygebmbpp1G}l!sk9;hE_SpuVE~FcJN`bx@g*K`r$5A z$$5VDt94PMT;|=jvtK^n6MR0Ba+aS$$-BM8J8WMUZIa`BDyFH)@Pp{pUgX^-n}a?R zyaY{hmajv`_l-Q?k5;+J8!+GAR`^S#ri8? zJl}&VxxkO2?oea#D`*O1@n+1Eqbb&cdB#fc!Dy6|d<@cRQoIpd?c*2TM^L5}lWG|4GG5tHRKFGs7Ks^l{7 z__exd<%{~{3_9fC_b^Yc@R47)KXQtfV^Gd<8LQ>sAAiF$C8zlzG{{BXjMRDdYO3cE z)8!N|$2>X5FCr$FgLhJMn)UK*4F1A?a!Wu>hF4+HBkmD@grpqpTo=tkvz+9MF-^{K z5&Z@8;f+Yk6|UdKJ3&pHXQA_S*YW~%$Z1}VspgR5o3W+Ee)2u&Q&Zrzh_A7?ya7|? z3hx;A9NnXT-WNGJ!3U#BO_CR&7{=oB&@X3s6{Z=tz>i|gxJ7;*>(!Ka1LlXZxcZy+ zS&s26^cyS5$6$q=;uEn%O`2Q-x)WBgO3?OV6F0=k(dmP-y3+ZSIAf zly9FD)R@= z)kQt}tnl0y-FrF3t6p~h)D-yKSM0Msvpnxr^OsXxzs^3&ao&h#xx)9oWmI$ zn~$91g@1Qe)ug#$q%Inf6TJCN-#7f+PV`n?^u*h)l}p^U-oD9sZh6nRa)uAw=w64P z&*29)>DN9KdH$&Ou+MzW7UwF=fonhWyf|Yq{w>yr`S59D_Cd~Y_A8V8oiWzP4O_{f ze@>5^pM@1R>*Na1r<5Nz36-?yrYbZT&U+gcbODrwI}$P_@rn| zdzz>0Iw`6;PCtAMGG+Iab7+=>A4Q8?wf==TWc?287-1wB;{94ZN8kF1A@K(D|ihAT2ABzDw&3{6tT;L%Tz28c_1*_#~ z5BCMJbFG)p#^}T5#*d+2F7b8^lcIHUoKHet&TuCddbj7e4~^lS&l@qVU;lefijLn) zo$oMdz773nnGb)0Q91hdr058=%PGDVc{$JTVVzvz?@qV3a*{LX*JtpTSRqGyPm1>6 zN4=cnOOfd_H+~g8a+&wscTzN4PVl*yFK78lbjl_ET4IvFOVN5cg__sRjo(69|7G5c z>Gn4I&ZKBZG{|wDi$(S}#U~;rr}<1YtI6tB?<4@mh4tCEkotV@3N)P;J!8qIQ!|A@{oEbT;y4EtWi$#G3b(0 zych*J!yC}xxvubn1HFIbG_OUST;hcXSz~DDtFXwmIi7Q{IfwrFWaQ;6pY#Lo8TDE2 zKx?SyE)2_g-u4jZTTP6Af+6i`ejYQzxcv1)odNA}o{Op0o8l7@lhb@Aa%wVsA(FMm z<=-G7=Xe#Swz?O*7WHz8H)Fc9>IZ3~Z4t>a-USIYah`?38f)YQSS_b{IR>279N&yC zInVcmb~OcFi`ii;-hdf$g?BtmHddVXMU|Z3gVCfW$qO(P#^UoZC}(+9Xg5}YA4RuZ zmu(ocnJe`LLKjAx@f z)3w}!Epmpt0{*>Ko(EBoOS~myHPNx*{JKVaf)^q_%f4|3)@jdi9|qMIc_XsgD_nn^ zwWyEtJQTI3cnKzd+q$?1BZt^?UWc*0tc7dlyVu%dJR8~b&7WJ)C1--M;;-h zIDWi-)dXkIuRXX6aqW2?#EekSTQFODw7`1Nq&>k4k(HXT%ry(WKlLBu*;uDN$t~EVJ;PlnYR~f^ zhP9V?3nFJbI>G$0!ng@uh>hlx<_;{?{{QT~2YgjU`ab^7nLD?o-jDzxl+Z!Z4G6YH z1q935BE_=nY8Fv(*OEnDb=BPvdJj#}0EQ}xKtxm!goubBilGTAYD8ERQ6h?B<^R0r zp1C>qP2D(0h`hvF?kHbmes&=x(4d+-0C0?!}r9JhMQL-H*P>`Ti5-c>sEQE$Rq*{X-}-F#0oQ#Do}jk@<>;rmpwoc`m!T~{-vCPBUkdsoa3B2ff+uwVve19C zK(7NnfqxF@SYQ|87l5t;3gBM?dJt%c_~oFDN1%@I&jh^`Xmv8`0{S3u5dAt2^l2a- z{>7lXf$i`wW51E$2|Z5+?F!6=o_7PC1}ta&2R#bB0e>2WaspZK&jP&;=n4NE(6PWp z@Gk&e1zZRJ63~M{4*bhO8;?$)yWyV+dMPjv{UsapLEuO9>pak>fjsyZgYE`W(T~bN z_?LqI$bdgy+Mo_VDg3iQuLJhN zKL>Oykc@s^0J;j8i+oE!4+2L~o^sH};}8%2nV@}uPtYzoppyYYTNHtA1B%cVWuW!O zLx$WgpncfQ@j)j8x$rLn-3GKn+A`336EJshe9%5XDaQw$42rFx* zhC37V??5r)&$_kaH2}HsEXMLm6njsc2vLXM*+t;vxSW(8<72<`24!{h<$Kp!FVxY?(i3A7Ci+ z2b~O*aeUBiz}H+J(0Y$Rh8!QX53rl#gH8tg(1#+>ZNPNaL(qED(66~XpnZU$TprNp zfd_{}XF%&eih9AF3HlGPhPxPa9k2lIQqYfqWpI~+ww#In33nD~Hc$jN)3v}f@GJ#=_;HL&iy$}9>xv); zxN|`3&B9m#cP8jUpsX?S0zGXu#*-%K%b=@)c(_YIN6vx!O_UAv^109rxU)gM^DuY7 zoeWwC>}r9$KwHj-9=1f;K$id>xQjtcfvi8GY@p>pJGhx10UEGi~@B>Wny3q*rgMR# zc)lnGJpz;=KCMQ-07~J`23-dvV?9<1x_k}vme*#Wp8>7FryMlD1Tuwx0qAqUCrDcY zdIZ?bJYPn6fOy1725k%sfIAbk1CRrE7U%+C7ncWg=UV)RyA1SCuYf1qIiSmd>)3Y1_y)(!M3;9ws3gAM^UfKLJFjT_((cP{8qpab$M0G$hTg}WHE<3_X#=GJbY zR|0d-03XngfCZOBhM+B9#~28A7U+$@GPrX==K!nVE(ZM=SjX`}TW-Rf%ke=U0Jg)O z2f7I;hr1Ls;|<9C3e*eqZ$LY^b3s=EJ>f0^?foX?4|fjeLSQJ|#h^a`MR3z*>@NYU z;LZju1a`q)1o{@>!9GJN=)||sMvzYts8Nb}Z4zV)dM$9~Wbg-l6X*+fDd{^}N96MOcI=o?w%vNfXT{|Na|7A_5^t%e%qX|= z?_ZI>S*NX0bxIy4eh)ij!dND0t;8qF1?Qa)8c-BitFk;fGS?`B8TX8M${5&;>WS{; z%*m2Zr+yGmsZjU=^A@Sz^3exUEyGv2JnC_Lm&~i)!Pi86i1L`9ol8&&{F$;GB(em{ zyLY&3W*PeHJYkztq{Yg!<(c5}jhrVZB-1wmwLTd}s@_!iu__q>FDI)V$>38D?{JEK zv3PV{B-E<(JNe+ow$T_4OB)#o^2 zxm*PPlVkCpCDs~hSzFrZQ6ILU_dM!_Hnd!+C2ikyTlyiz`*K^FpL*uBwz#yx{;xG;K8rJ$!;z+HRVy6A zDTJmqTaLJ-ZC9|=GRlZmhqF6DH(n6N^fY|w zT_q1|=+n>u0j z!6-NDW{(QpGUW2SY!((HA$JprR zmx%Ak_6}wRa{RfzY;TFD)F?CiU~iOF%O$!lanDON*F(>HaBGl+OZs#!`%;l*)jhOX zsE-64<#vpjF+J;hT3n?1c`V>(hFxKUaCD_{d|t`j8v~lI>gRA zj~7mqCC*E6y?t5U9F@x>o^!l)$+P}osUDHEM%IV5RnvJ`HsE}t+9FmP+5BC2S5cqn zdVeg{camm#P?e<~FPx72!{b$qzF62x{Qf1wl!9E7N{79pgF22Y_xED<=k|K&&b$#kB(XIIS0R-Z||99l3$bo@}zyWDREGoxC?wT%%L&tP`P zd4gUO-~?VS;a7EB$irdG@Jl)t3B2Hb+`=#FI785yEe5)}#)c$J&^AB;UO@k?8p( zwK9n|B_WF_Ihkw1M67+9x%c^F;=CtWo0m$J*NA3#)WSwIUa4t~sNAc*Y($IW5%^X@ zgJF&6)g(B#ru0PEjMUKrK9d_YM18_CZs;cCG)u;XUfL}iA5!!%*59TK+~z2rD^O0| z^Q?Ai@QUc4uV{g%<5UH^2S~q0dEr6nG2*Wm{f8-9=;=63(PWOlR(au3`}m;%g+x<| zo{6n7tFXCfxLPa_gB5)%J3g#vBIi`1yzs!E|6`2b+-|YQu=wf5Hsf7IJ5&bB#`4%2 zos(Jr!uF!cU_(ByXsRKnDEYcn$YBC!_OuF`nPIr4X?rlB9}i>1UX;-8;WQk7s>!J|F=-h03bX!>HILQ)N&S(*XHu>9&|BfT!9{m; z+%|~2P^cjWJ;TE@K5d0{X#a|Js1>h8zCgs6gnGwI&l_r|mp(NV)N_t&8jEuCXo(?`U3F~dvCJRP6Ie>DK^g{(2fUIi!8aakSnjaAk^m}PxU zDwwYt&Sl->=?2Sj>($#R4j$Fve$B7O!8VZ}>#~^vb}kM)fu+s|K@R*P$SIFu;*6B9 zxwCu?r-)Hvr=t0ujt3OYRj0xYJ+#VIjSP$8BQnIz-iQq0h78B!?m^%@2rHNX=cu?6 zlxt&rJ)}9nGtAL=g?OV9Aj4S+Uc`u$u})=pg_dC{w;Jv(CF}Q&$Za~kO|1pa{v~D-Xbp6cfq8H{~(bDj&5byeU4CrT3&!I4$Bq?U+yDg86)ZA9(DG zYc@2V9z#cp$LxT>5^StsmpnmDOB5p#;jukYy_0BeQ?P1azVK0^s81D7mXT+PE3cnv z_G$HH0?aWz26=4pso9D2osWHH`BhOOt@fjrejcY5CD42EYFr{TkKGFr*!>91ZTpIP&1tR&dRu!U$7{dP+D8fR zyVcd+;0wYzGnqPHc+e1KMmAdPu$U)~-Au1~vOd0ro()L2KMbf%x6rOQ_5Dq-P^uoi zl_n=Dgq9?!)o>@X|H6WzW4t&7@nlbC+i zDev7vADyibe@NGdN^XXoZH4?Mo_8wP4eqACx`p<3_agMb`3iZ?=%vODpr&Ay4_ymONpaf>)|lR{qWZ&7n^r1F8B{gHuc z%B{5GR`$mL82&Tor~Z+-)ZE{<#-7w>K7wu8>4GK*{%<~3nEIyozxcUHyRBy+W^6+5 zz3K7J-Y+A@0{@@jv3%Tx{tUXmNUuPQqTc@>C=!MJKQTnMNymEHxZb3V_I*0k+bVK1c{+#;Z z{2eKqTfVbVcAmc-{l?U-{?IeXZ1VFMX#F^NHvj2sX*E&eC#sQ1iLV<(bGDH&XJ%Of}O>PxGp2xwk2t&=u~7 zdu(SLh3O*spXw(=jKIc}A&(mMVE0DvKteYhZOvt=q@RVSh!%5rU@0+-_Y6^L7@r&B zV?!M?0#~OGD@fvIW;uEhi(=R^t8DssT+-DT~#R$LJj!&%n)n31x@5d+P<#NCJ+Am-C zt8e`BLqEh}FL*>AwtjBzv)ayS!+qc!amGm~!}o^T;t|DCz38D`(ipGk4G(yJ=wa_s z{P;3Osi%~HP7uvAomxz>+CAcr!HUmA%-?zp;W1|`&SI*gkfI1G3W`(;k5>4t({PyP zr>PFBj@Fc~eU4zAw8olB`gu$wv~E3+{tfAj5#E8^_~`);1w@Egi!EJGzO?luYgT_w zc;QSp>(($*H!EHU!{-WvW*GecZF3g}{Av@|*?+ivt!|-zp?sr-_m-IDYc)~eg;vB` zCcJP~lCPF?Z7H`0)(Vj^-kIJRUd?aE+~Mhg61(|D^0W9kr9-XiW2>Nl#zsj`3rVy} zWGuwVkOAkzM#d&d>-dZ@M%t6>cgH-QQ6_0Ir`;|xrhD-HFF4m5kBOfpeJ5LDf5hX3 zcVwMm$`0ptkySsN=&p?SJlJal$2UdBJ05z3%kqSg zvC>0dvU9M^c;ADo9gkp;iBYGz;&Vy;-bD9gJgab~gPiw?i~@z7QaE=S8Cw+1k#KI5 z8QT<%^yqDr} zH%9M3>oIbKzy{tk#)o2(ho146Du%tkD&y`HqdoMbj?4OX*s&%*CX#MP8J7!*Ey3x= z)w+LG8L!Z|hU3}h2dj*$#Z+Ez%r?}f5WULIt%h13qMcF=Nui&l`aDEaJ?N(gJ?hgC z&#QdWqCN}J5j705$oHu?L-e>`Eezp`s2Y|+@AG}41Ag^<3XKS=XHsD8Srw+xtC$;T zYfvpup(E_fk5ju4BVKJwp+)iP#T0yL9q&`i7RcAzhH%aXe z(a~hJFGRCK>a7sH99m$ug{@BJ{tccXthzbJ+lsd9WZfC7XT3gJlXO3_Q;yfen%9`x!;ZIG=dJT`E3;eK z`HZSl^m$&CyjX8~SkHdWy*|#%ns3ZB+}Arr`g%zeAC7yx)7#4$%k3(z)Xv`loISX9doeYuie>Gso<_fPXHKew9ttaVN6Ky4_-k0>6xtadr*GB{$2MVW~KQ^$JP0|QO$>SM9+)5%ywFp?lND^M^l}b zmanFDJ?^s}>w0QxFOR)mx(v?oP5WzV?=McC-0nJ_UG~~f*I%d8GSp?_^vqw6;q31g zSNp|EXD=hivH!N0%bwouw#T>UWlzg-ES;#$xId-je{0-tiSfKsn*nrxZN`0;gFgGx zZK`QiVY9VevBWz)Y$*p||F>>DLi{&hf%6j??cf7hZ0D=P~~)>(iCHGU%cWjp)4P>2&&nhIGob2GnX~ zeag5mjp_|d#hu5qBKL4ab{b{xN~a4qG^BHvH=r&H>QjelY1DFLDmA*V9;FOS!G3b* z$eyd&AFRG%$=BahokgAT!icV$%X4T_bM=&yW}0u@168b`#b%c*EKqCH=a&E9n@Y}a$MZA?Cq{^prf zth2ylBJos|{VKlZ|3vuUAw45*Sca^JlMG95N_?fNOqTPzewGZ{{aNkx(7p00MT^8l z<6CSNdxH4?tOsXCbl3xq&nquH%ymt^zMTvinRmY$XwH$h`b@rsXNisnebf9uG^gk4 zsV7>9g{i8bg?K6TF{pe={X&6&(dol+ooaRq^-K#|)xzoxns1DITFiHy?{nV=ne=Lk z8r@v1tf#)p6mQlW4Zh3M3Izg2G(6}h8rED*X-0w$zyKzToHp^mnoAuUf3-}Kn>9qV7{AJ>xh)x*1T;=NQguci3h zEN^-JIRXK%rGJ3(zR*&wZ%JEfQQp12JpXeoXlgz6Q4299RlVLq%rN;Dq1_O0sNs9y zySs(@tOb2j(QbOYtufW(3HQmRSdVF{{h4Y%rjx>J{i^S9^b%(eG1P?iRBC*hKBYY! zY^-*)7oRs#E82?@O`*)sHr*VA|1#eC-qc=wh?wj=&_2?j$oGWgVZNJ@>h|71{A1z; zflcha+>68a$oT!x7`ls_@9&BI#@im+;=wKSaM_#3(3|_kodxo$!y$T6z2cdWLZjmp zemobaK1vZQ;?^^Ap*gNy#j!xmgCsN?? zVhVedrl`+SXt(M9CdDSy|JiaiOPJSeV32s6j7YfhIN5N7C>CoxxXyX^91qUV6x=WJ z=xFLF&n>n&L9azlR%g-$+=jIbYpXg_j~MBy3TvZIqwX=%>9EL}!&asm&0)5FS=;(l zC5Ni&Q&pI*k6T%ESe@0if7BUV(y0nZEO#`+0qGpUFMgP1I6-l^PA4+In&cHJlVdI3 zPIaO4W9Va5VXah0Ixj}Ls={=;*OgAV)%|3JcNXtxj2j?DG28xl#fj*%tuLB>_Ic7i zmpc79U99H zoxLD~I^t!zb|cdfw;|#-K-}L)$92|I>%K$JnyOQ&YYct)wP6vNvn+dCYY=vKirkm* zn9m9{z zEkJ2lPbT0LuHw`>^1L1VcHzrt}jZ)f>Vy9;*$QN9Tx<*r!e zI}O`hi#gJ>A_dOKn4;V5mr`e+aq@A7SM%FBhWxMH3ykr;b;BaqZSc@WW1IjP$Jc-! zRbDv5@ta5XHmzrZ26!<9x4kENF30~L`Qr3QpBK*XS!lj}ri|!JtA@B|l#}rq_I3E) z+Os0#1B1R{XTFiK+raHLurbe4-P30^?9TTIj~I9>1&KC^jJXouM1ym&kuh4*FbPW> zk4pvTeCb7)))7E(E?aFl?=8BQ>30pW2le-iwURGv5xpuh-jg(v z%QV%Z+)Ht_!4SV+NIa^KGWb2=^dvvlnDwI8m{z|`Hs49#C}fENYh$=& zZR&RaDBb_RevoR!`Zx2fh1)sqpOC$LTmP`%*^6@5c7LRn@sGn^e&@fa zp^6@qWeRh|0%N+O^&W*EWu741lXz}=1aAVF_n7hjJ;j0HeYwcaSEYUYtogwY<-%t4 zNJ#B$CdQ-IS(m^#WBW5jWhPJNtg#B`ce6rA}p74M3*s!n%frZfP(tR+R)dH)V?<2n+&zNjVNdg z>C9<7D+vFMd`+yZjXKnZzHf7qR=%qDntvtlD);T55bF)vUa@aq<@?|9Tg5H`yOv92 zWZyo9?U+LB+rP%^k#UA935iJ(m&?UmiMlWHT=8Wxz2a4~uv70FFYsegU zSfJmwN}A>%C2eEDnfj}r`+7vp^Zu&#tE&pDYQMUwuv+a~+UKsC%sIM$a-Xxsx7I!X zZ`UyPFbWP2`( z`J2=Hwr{WRtl*AU_51x1ne*DCx3%W5)-=}G_uIa`i#*))`MB-L^Vs7Uqbud*QpU*I z(+c~q{pRP~6Si+(`5Dcu_hIOEjJsH2|H^Ahvv26KS3}*_42{(p)QQ)uE_26m4U1P@ z;-z&XxZ)05JnvcEsQyLw{};*>8E5pKhnA-v=k5Oet!E{B80!!JcBa#DVo|O8n!o0e zZ}H;1bR11Nj;+mNylG~}^`-uJW~eI6p0D{$gx(dW zBQEKp${CTdu47%u%*jK`U&~6}q4>m@!?5p6$*%^?;YZZvYy@5#Gul2L?{hfrgzG(| zU&3!F^E3C?L(%W&bNQMe_oc$~ydgj0lf!2W1?M&+I9S4HgPJJm8w1A-)7g}TE??&w z@H-~tKIZqmP;gE+f*TEb(NOOgw8p>@lzHD#^V>TP<+HVCxUOA9s|H|jo|*-V=FDof z2!1ALHwLYqQBDm;BVZf*BK7KU zI?+T3M$*Ha{bu9FT)9sM4@vr-m0>g=bl7;U8wo?I@bJNBO=Gg<^@6Z^$5w z`5%yKlm{OwfUu@SGtG7KjFKB<&vLs9f|us0_!1F>eXuu$g2=YA?7!u1Vk=`N_?faF zq-Ebxv|t{6`My0=q(+52i9H=V3tATGav}%re+$nKNjZ<-= zbs~uS3wwluK=v~id~731KZyBo`%bc*WilU@$8GX)Az^8U4d4X-V}5o3Liv#Sm>(ao z>Dls8VH;*9FZ;PDY|wUO3*B!B3A;0Unc2^#6JJAk*-$SS!8~(BE8r0gaxRRFXr^_y z9Pq8&=FmSLgKm`hLOuY;<0ANmU~}5&3~RZy_S=Qk*eaVjZ|S+pN%frOpjD2~i-hM} zA>ZdZ!CD`jQ;gut2ET&5#h@3sHoNWOo-)#sQB`ApEqQi34m=NzsQYqGI}SX19tWP~ z!|T58(~kqsi;e@&uZPur-HVO`&r2JTnbh%H!grhJtgY5&YEP5`SmV z2fS__YA@!4)$rOYU|$rxKE%B(AqN}5g$6xtsFeoIH82&ew~w(|%*)oUdW}%qHR~t& z;1jh*z&f)j)^T%$Tp;ADBKVV_kA)g%;5#p^@%;;XAt3q%oW4>ythMU1LSoT_^$t>F zy)%Q?JK(Xv!D9gPa9yi{53f~!5dZqwkcBe%zS;VpOIj^|2V3@b;i4>!!KW7M)P-WE zlq+TM6X=*!MqcbaSRX+l0Hf_nsi6X&p?T|7DeWS^W- zz6Zg}xkk-w+K)eW#0yL;F1MPCOK{o1=|6X*@5 zMMyaJi69oKc+G9Lfg5uu(jt4)JCIv)MA z!5uZ%f9AnwOD=Yx!sAyj(Ww;*_NdW%zrx;xde%!zWlJcgN5bO^j~p)5VWqxR>Pc_# z6)&y!>TL_lL^3r*9#Q*1=yxm+J7SLK(}ZU?k9jBpY^%cgoe0i1U`G;r60q|Jsk|Je z{|{NRjx|5jlHYZ8%rCx<`K@}eZtHtn9rJ5k$Nb)Spl<8?U>)=8P{;gs|FdrEJJ#Z7 z?|Uc2tria3N)Yr+w9&C5MFYtM@5*fsQ+|7d53VyTNCQsd#HKm-E!SR<`a;l2z_&SYK zrju;4)^R#nel?+*zq35rU-MjQ@#OrRVaUg9huM{Fz*us<|9(hqw8)$jhaECCJdP$A z8Drw`xTBs8(o~s&&tQ%4sF#8?&66=Wj-K_Ym*Z%G-+(VScy?+1*%0scT9jwgcZ#~^(h`~ymA$(yOwM*quYb?M9h+xOsD zrh{xc==^Py|NrxKv#)hw^ZB=T@uO`K#2hzbuJ7*=f4xr?2L!%XHa8&g9pa&WiRJo^ z0CtqshJbtuhOYzikfDYJB*v1-e)*VuSWXYfqh15a#`sd;F7_EO2IK~xu__?<`5M7z zJT`tPFQCQ-=#c=NF9#HSQM~X|f&0EtYmw1QtrG%ADO-fV0R->eW8(z}DwtWgZv5w_ z<5k^DtSYRkdx=$r)#}cov%gxu&3ZWW`M-Tn(M`6URd>1q@~>@JmO6(niIFZ6#`}X# zJF&25o7P)BDa3>7VL@|Q4b};@G5q!_%JB=*MD+{kP^{lBbqufb+|roqrFxa$%jWiV z&f#w9*^lEcwZ`_UD94R;2h@ePOFe3IZ}OL>i^!Af(>uI=ajtP&q8-h6dY!E6kN9T3 z(S6~#*h;9W?S;B1&o7oG%dnHB6HK+7EVr9nUCR5Ly#=QnPt> z5vzVbuAjJUFCVcClOv38<7uY)%$SitvjffXV^81|xMu{_-UKltPHj#QOZdaA@5PN4 z2%Ve|#6e7gg7d=!^+f`Gmk^mbtIPA!NSgQupEO0DvWFO-_+6?tBW;{~r;@1-sLi8b!B z=AX%%%U)F(dB4EYk81OtD)u4oB9Gdt#BilnDlv`U?0i$H-HP@r*Su}~wGHiR^La+> z3D%Ea;@)WNeihM#==WKViFOyj zP{skHAaPbB8W)<6SL(h=U1#9O+kB_v+Xgqm`BEcZv&5L&t!M3|-y?eVVEL7#NqjhU zg5pPdkh5M*x<87#jP=g+@2^jXlCH*PdA)n#T$Y9tVg3u>1+Tof6VZKcyS3pls+zht zId>@XI;s}=H`J&7NmoMg>)i|Ilr&uCGV|hbb}4kewmkQ$pMBq^(c{c>f6BdZu1nSB zKcPG;-?g{ey-81;#n6-9iT)7{=%=I`p)>XFg>!pE&N0hbMca)B&+pVI{}c7;Ic~d0 z>fHjF`Y}U&+FTrMthO~5llaQ)2TeYc@ZZ~9ErTK17MK;+w6KrI zCnS#sLD*7@ZRg?~lyj;m5}OT}SK)Ea{0?@N?A(|B%|$vXnU*yP%fL5%}5)EWqgmgW0&YLys=m-)%T5MnYmdtj2AK?o*4gSuRwOA)e%A-ZDeIZio_g;#*^I zzQN8dh8Gbmek^lytnLKecDn7qS^up#=KaBeM)dtz+^4@${ez}(Svj4CPNymSW2L{r zdB@2-Ye&9le{;<5Va+3a*RXQ_!GH3-)ZO6%RFW}H%3YqD!gu+5+uI^Rs4KgSWIOHr zSNRTxOSt3gy;D0#`2sn|kPi#_l@Pcz^g7?TRdAOW!LgFw<#zbWQ2COMa>G>IZti;n z&gJxTtVPXl!{j@@4TC#Wop^0=A?{`3D~EEFA@H&2RR)YVDY(s+{=x{(lQdSULP--P z2S#qU9=sms^VmNN^smhKG`{nTTc}?Ou|&uf25z9MxqSCr!3R18y)-EIz$c^O#-(JqpS0y4=?BoIh@1NY>$Kg^#ciH-^p9~a zQ+ToXeRGsysc16FC-ELdu}>T|CL8$inNs{iO%(Vs-xr+cr*C~~jGun=so{PqLX{$d z-Fsd595^yY>9RSgQzv=Nur#t}C=1KwT5$>Mj@q*4XDB6ZI9ZA=pIg_>v{0nigtCs4{zl=-OP7iUFCZ>=c~u{6DZ>! zuW{73^86Y2t9pnEf5rTLv$`Lz-q_~<+Rfi_g9R*oQn|_D|LXib)Bz)wa=to11k@!+FN74Oa`&F^| z{+jvwLFUVH_o*6U@Ld0WrxRnOm7if%lAuMn-LdF5(DuEB1f{MNva@m_@=&v}EZ zeKg#s9{150pPK5U$9xK*%Y2;5bm~S!85;Mq`Ztd){H$TEw@v$&JzQ)u7UCVIbJgR9 z{6|ZyTCjX!tCak^zzAYN`k0~MjcNN`UX|fCr1?~5W@sL?KHV4jS!)DS57#=^Nc}`F zo-0NR&sZt9VZmqcTHq&%Tfq`O`0g=$o|Hjsbv-K;eBO`>#yYo1j`Ic2kNF-iyeles zCg*9B_le54q)#pK9WOkOOI`yUGh?ZGyQgwJ6^!3VFNPV>;)Qo-ktRQM46*OKE*W_dp0@xr@8o=2~&Xh-)s-^z1_ znI}wq{`x$Ja-Mp==VuAGep1Knn5^sRShMSLnEiGTo43}g@iE~)4d3d%7&bE^V-Vj{v_B)`d-G=@^#y9Oph0Ia8&})1Z4l=) zbsb%emut*^&+Db$k!Ow)`&gjs617jj`^46sf%$xbvNgiDBeJ+`Dc-3mGAL3=<`}sm zTO|2fC&|bcp-cE%R(gCh^Wm|MWv0hG>$k<%dG9h@UhCY)EE|u>sHX}07_E6~+R4h} zmr%{0%T`r-j#pir>cZ=SM|F8P!)@(Zsh#_W_lB(Y2wa|V7Y(+rMY+7(|9Vu+QzFhw zalI?PrD)28+kxZS+o(705wPxcs?a?vpZfRmt8r6>TF6FC*p1B|B&S-(=dvuVD2v5E zl+WyT7_W(953M#&gupw-UbB@Z{v9bF4d70ud@c~yw-|EM`dDet)vCM2kIZ$<+8Fx~ z$3zJ0_OCp6TTIPYG)tj#asByDNo~_qJq|UPEL6FoHNta5;X_>P-pJ>LWUecFIG!7E zhwn6q4kq;R%DMUKw6zx`onuk*9csUz?Lv($7k>n)}I>_2M7uW3xXGH~8Xn z%(5l@4qKfS-b*_s znxBdA*M-_|ZoNV$@FEv3!^6e^d?Gr*?Esxf?Cr{<Cjh6IGF7-Q z8s-~AA8^WHhVvNqEA=6j$BEu*8o&0aRv0)nX#<|_I?-T+P;<;PmU08%I#6#I^cqVt zmfogzL116zJ<8(U8gXOmM}x7LN({UZslXraqG1dCvoL>`@2OgSqYaNse`0et=<%=M zY07-8UvH@I4ZKTzIgId1FT9a&C_o|TN_>Bp=fPv5J;qmzHt31?P{J%jy(M`+{z*wV zOBf{ycXWxiOZLWJZFGjmkbQ<4jpta8+UTQ?ec?T#>c)@>7?ORsRiWPUQGrKI@X_lh zdpoAjRTg%eXNPF-7;Bc8@nft( zu)M)N0^>dLiHE+a;TojSBS!_P)FbBwPskbs)t{r-O3B-bw$yM9;+m$KHOK;?ioAGZ z)B|(xpBn7`uG%%oGlGqMS!)LOaV7a4RW5h~X0ka<#~e@0H3$qFtrKL;U9rcKcA|8T2D={NrQfSQYY? zkHXEikC?|SoPS^hiRwGg&fiLc#9vC)@1W2Hq!RhtTixqVeyHT>o*48H&@dn zzHk#+d`_0^U88ot5KVw}JLlT6Xsv- zS^}HCQ(-4S@(mJPSHKbnMf`@>60pSrZ{%CeTH-O7Z^Nh|)JKwV7X{y2+F+<>BtBxm zcK&cB0d}M$d*iRBW5EyDelqB3K3$JF7GUf_H~LmqJH&bPmfvR_sHI{cSXou4zk zmX*zJN~COv8>3(S->s8wZ>Jobzn$@{dCOHtbzDuIykh<4^>2Q74=(2WMAh-s`=zm{ z&Re&0b^LVv>Zt8KdiOg~%|&RmP|q0>Pq4fB%Xr!p2{^-i%~?3xw8~6dt5HF z4KdHQvHyDRg;NFLVGWmHMGBlT#{T3}F3vai@7cgx3Y=B(?0g~Ymz$PUpAso>nr$-3 zIxo<&t;uhv-s(2f)K*8czRvj7{boLsT+Wf4eBFNQzN5opm5IZ3T#jSa+uVz@<^gLg zj1OUz*If0azF0Sy;j^R8YU-U0|C?1QTkOS2--qU!-`=;(yFiZf!wzzspflJwe>;>U zS}!7c+zB$!vT}=aJpHt6ju&N_>-zC{Qq6C-cRO|axrLeSWQ{XcJJ!xFP4Dp7=H&gq zV~?hNrFTWlGpqcVXEe37N7ISz(VVZIQ*=G9AksAPqZp^?8>#T4z!QY~XTGH{L@7A& z(jUBS?Wo(cI;wS;<1MxNd{tD(*Le-H(r7x#_FKp4Wck&EYW~jhXn)Ofsl}7?bA}-w zvn^)FY>Q#yeu!?S$b1VXXbiO|hz+WYr9pZcH$dZPtIU`ghwtX9?}N0%lW{mmlYBBi zjtc$8x&STo8&3w=HqF8y+onM%Y||j-@PGk6GXn-VED!u0XD>komY=Xun$Lp@IgN-@ zE8=J@zoI%ZP9Y21xMQ``|CMsP^zYwn)!5b=)|lt7>ic?Ch1G=}k4ozc=$qMY{iEj3 z-)z;me19%7rr7&stg*fDA(4B(D)Ni*LQV9`xkA0^lX*C?^0SqiWqy3USuOEPd`aUg zpIj`}exFS7 zfOsNM59WOW>fHeC3)p3)=LztQXuNNyvt3+9<@gayeF_pi6^)o?<;i>uMfD}65@T| zNfr02?Q)CkQ&oL8r~L)@;J%2Qom9}6j-qf6j?I)i&U{=$7T zrahmq9iGSKxA<&Y&F%0UzxXHh$IVZAOR1mJsl*3UE=Pl-**!J%3j9~5%`oue>4smM zm5XVkg!?Y{1#Zi=;b+Kdmioj*pfP_oc&*zGSs`t?l`o5PLh7=SZ`y4?|bYKHsF$UTxUFa=NfSS7C1lZ^7aN zg+{v)F}g8AXEfgFf&b5$U12PxxhiW;pEbA7DJLY4 z8rj<^5V#h;gRi-S?d`A~oS0);^6jYGOL!>}Z(NS`n4e+|FIH-NM&dk6vDN~t+?Al? zYU&op&CfQ^#C*o9j%Td<1KMBb%jNF`9jlI?j$a++Gu=+sxd)%k_IJFKQiyv5V`ASU zxG%j9?h$aE23d8QZH<}sI_kRG_BzeJhB&VG2&{7)JqK5!%%^{NE{T$()(vNPe@j=~ z?lC#f_&F|@m#LFa536pyt@+Ge275Z4-p~yZ=J72t2&?WcHtv}-%%xcUZlVo>&!pv;$Z^Eafmlpq`+Af&(kl&Idc)m zeOjczX_kEu>Y&TTb*ag3T^~)g95vPaG}ZBHN}10jn{4^FUDleflQMtSAMIb;-<(dD z(eBpyv!7k>bsU{1_cPnOb`f5hr}O!f*EWM}Ya1QUo`+qpcpRQxF%DPt&Gd*~Y8lwa z2|NGjGL)HpPmhz%af9#kINr@N;}5d>s=ci2*8cYV*qv{U5n5k#8O`-k<@HWveB$`5 zpFG|=-up3S;e6)O-n~qUWM77^-Y=e27i`wzD>?{**WE<+l&HO+a?m-oj^1o zo~SbxC3`GgWI67sX8i4exLVI5Jj3au=CZ;B;qj;>40-0Csq0#PZtcT+%Pwcn=6YmL z=(y3P-o&DdAwuBYd~%@Yc8>#Pol#u-Lb-w z>#K9AgSv|N^xSY>s)ly*^YjXx1nebJ<;|M zE%}*cMmr-sS)^BlyXw7N<~4EK`vSM0eY~>TsLHz|g}ub-ozCP>imRR8@C@~VM^1sI z7xnv@UipENk9y@XCI2N~@&;e?(pKJa+QWNI5#trNC1GvIx;n|_JlQ^K{2ybwi zm*#oZI!K&_@KzMB#^9xGR!8--Sm#Q59MzQdhUYL%ZG9u+r^7V0>yh?j%Hx=Q>}Q?Q z{;{Y%KdbLm%D1Zgoa0gr@~qSs<5Ydo%+}W&Wpx<~;#&u+3SH{o8BqIU(4^;rZ@G>O-9z7YmK|9r>h6(Qq=z%V<6oK`VV(m_yejjHGsJV zvs}NDhpVi9CC|Dn*RPhnCHFez^DE_}WnL$8()~Bz8at|@R=)@#b{O`$7<3&Cd3@qbW!sP zw@+AMZ>?+0-|n`r`JMBNPRni5+tx;Q-Rp$s2#z<~D!&_b zdq0BH-{aoXaaW(f`&%R9U3c_Zq`Yw)NBi|DTlhF!aete4$nU^TFERKFqYDOHr1GDS6 zZtGKrg7i$F%z&7}Hc{NxkH^Gy&5-^NYIK0^xQaiTuGR+F3wF)1KQ#d)9;l%+oz06DNBVM&U0E09f`F+2d7oeg*Lo44wF6(R95@J(y z_s@~DV9w7x4~)`#Zd-=dahskv?~j}UK2ASg?^JURS7Cz<*8yRJ?W-soY*n9&R-|>Y z-xjquqjfI!_?^&M4HYn!ayt#o;-;!>A04u~R81H3SB0ImJi)PC=3IYk)rq?C8jxkx zBitvf^-ncn=h0;`)BW#-nR)>kM5v`BF7sR9jMMIh*>zOT9-rOZ9y~TW-S&7oPArPJ zE;e-&Soiv=2eBO*&Nn^er_g;eY+v8ni?Z4!gzk)Y@}Fcg@NCT<9K-c;X~Tpp1Yd!@ zg^8MPvX7GQ^HAJCwD;_&_6|)F>Q#aFuh|021Vwqq*hY0JJl z_8B@n3^n}O=>LP1(>%dfJ@mXs?eNe_4<510cxbHHXV~!bkH=#3f$c|_6uAFu34`7I ziRL991uO8&n9n=WeDc7@)O|e%v5sSoG{@0F)_xV%aQ-vZh4SX`3NHLLQ0S*~Ue-KV zciG(o)HVj0`EZ!i&o-u;&+3z`{oAx)FMQKW@1#U_MqS^N)pMzxx9+c;rv{hVWsfNm zuH#u_Nu(aSK04eJ;kz-3_-;%B&dXctUG0eNJ9B@shs!=M*Ke&=_D(2!ti0{(CVLsQ{L_M6pfmlg z94d4sE!Z0VI_C=iBwrWUCe^($Y@5`nBhEanG1io;c5@u9w=Cn?(RRSXcPc91b&1SB z_B^;k$_|vEpM*R`EmtzM6Lnmo~7MA*{2}XRO-KDIfOlZMB(}aHPeNr!&6W za|V~oG5!iEDcpk)hO41*u&)+559j!9d>nRw%=+?kR*uLu-CW1sw)3GuE^g)>tF9d8 z2D|K>&jZ{xZgO#ZwqTvs{hN8}@^M`cN3WkW_Aqw$cbv=F!@11P-)`+v6F*&NraWh9>P+h_ zuf5H+zSzs;~S@3yPvZxTvn%FEWHaVWv&0DX^WZDMXPKcPyTEf4kdlysnBTmxIStXB_8mdmC^b`Hr=Ny$qVCZYxb$UiLl=|KI*< zCV|0C*WSu8-)$T+=k{JuZAQD~5OqxpQFfyczO|7^$v`HM1#|`=GN2rwaYzqj0$D&eAREX5a)CUc04M^AffAq;CRpb1D1WCB@0Hy|6x0dj#npa3WWih&ZK6et7A0V+V+A%b#8 z2+9UZVNWI*G#8ZMp9Pu+6ad9Q36Ko`BJ7lv0VQ}hAsc>0KyGue8*ES+P|}Sks|#KX zX^H#gec}F30(AqjfgB(i`4+%hV|GVL1wa`-D_A^SQXZ`K798?YUODiopNbFoDJwZh zML=?!Aaw(ZfHHQs4N@ME+b&4OKv8>GZw1PMtdoM24HPgv85GFw016ZVWk5NQbqaU@ zB|zq>aCbyFP}T)w=;`=<7JdU|=OE6V;1A^HB0r!6D1QKc590T~5cl6G6U;G`EJ505 z@Ea(BHHL1_fyWBa7vZ-OelNkj8u`5iYztCO^LR>bfwB9fcq-`(bOFwdr`+@6Dd$4C zdjoyqsoP)TDZ4-7;oed5&2SHd`>$}{hIl~H?Vy9=DerE$?}dLJ!t)Vt2!0Pk`Vrtc z9{!Ia&h&UHo)u4-vw;P0FN&wqW$<5#_^aY6>m{UJjks$NUJ_4bo8qZ_Gs3na?heFz z8}6M5+Xa81I?sp8JvaCx~+p>AnU%3clYXK9Kt(`~-Bv zNT580J5}BUDoeoc#01K^ErAN2hVBBzKnYL^lmX=cErRX?nLrlM4af#^fLtICC|&~p zVx)Nn@s=UY^WgUabnhj&w<0c30%UGOe4q^IwjFT*+JSJO1ju|F;XoPCZ70Hk%y$q5 z6upPA4*|SQSGEVgKZQFziHcX@b-Ol6R7UXkpv(X%lo=>$i*TR>C>n*nHWvLVkEk2^ z%K?m+KLKe?Lew5O54Z;SE070F1B!uHfp>uKfl$*BwFS-t`T+xhJYYKTEU*c9ANU$b zXcnT*KtJFvU^=h{_z#eni7?bDKi$-vpbmB0NWwP`^Fe2iO9%Jt;&F z0o#D~C!-v|Okf4@Hqg35h{glo0n1N8eNGM06To^P?std}d<*;|3w7^^xIo)Zr~`1` zX(3t-T-_PGfIGW{=nG)P=^^r-fpP;)&kWHrAnPpf1bUnuqFq4W--qY`aC29*7x1rh zLe${g5Iqe1?z|8!1}^M|G{8mOL-acE=N=*20bF)|h+YITdWPr<;C|pgz?r>5G#vN@ zIQ@bUEdqQOhUj9zxF|%A0i}TNVw4$}4g3IH_6O)ZZ~*9X3F-)x0ViLIc$YyBfd2re zUJm}iRv_~V@CEJ$W&x!DWrwIE&>xrr9N^zqqI|$wAig*B3z!X@)+a>kfPQ_!8#tpM z(g0rqmtO^a0^+U?(cgegz{%HyXe{tKaQU?%S^|Xr2%Q3U0B8IO@&O7a1;pr13C)u6OKWWJcNBW@{u3UM?pOE#8U!B*Ca}&5T#H(N~JWaPYtLc zrBfrypvKgMno={$q~_FuT2d=&O>L+xwWIcQ5}iyP=oC7Yen(l2wC2 zNoUd7^n2<`=g_%y9(AMccq}`gdQvaCfG(tq=wkW4Ai9h0 zrhDigbT8dU_tQV=0eX-gqJQDyXdVs5noVdXZMrDtd`l(;6zFm+>h13az78X+6D08)zfFPMhcrdXqNOTU1J0 zXe(`_?X-j5rk%8l-l2EtJ=#t0(+Bh+=D?3|P5NWnOZ(_Qw4XkqPw4=CMhEG0`hpHo zIekfo=_~r0j?g#sEghxr=zIEsex#r1XF7)F7s3z{+apSNg-`fJKm)#ekdsaqEpY-Eiw2 zH{W^cfZJ}P3;SK%^M;+g%1DIJDz#wX%4^cJ-cW3 z?bX}qn|)cIe%aYq^zQ2nxaxd|Pmk_>k^Wkz@5NVK)~j#tiz~&xv|q2jS6tEeB1io5 zyIgC7<{@IsycUG$B6@8teX0Pnt7hmp_Q?HBqplIDM?A7PuORsP+?{#^<%UoKm z*EM~6UEb&7D=v3Lzo4g6h!hgdmSR1G-t*uL~B9%pr-&>7J@lMRHzhYz1 zSL&%;S65T(sq$1qpQ<2@@k)1|XaTRk5>zKDU(j1x7l5L8t1CR!rQ^#zxG`Ak9aj`0 zHUP_m5?GDN6j*J|xYboxT?Q+!O;L0uMJQ=)ou|^bDP3V!`>pz0kzz>|zB2AbEfTG$ zsjOKY@c1iI{Fko^bzs3pjr*#7t31_ZsSyE~sTI7|yKz;GCtw9vdRKc&H*#-ebzW88 zGN08s60EMuC`ARWPN|?OZ&gi-#H-){t#y^&6I8*Ftfj1~wK7~)S6S;Tud7aHOFWL+ z4|o8dr_v&rYOhs?0V%EYrRp}|X(a+U`4(TPl}$v{20Yc)s;{m|OU7SXRhlAMf3=^x zbZ@{)g%`+D7Kxf3TIYuvm05Y@N!HbQ>rx|XO5qPv+O*&*e~~4FU};qvPY>w&n##H= zE8$>i(3ifYSC&40gBnDul**B>%p0tz*DDDD7ICNgH?faJXZzM^ITJ2 zORXF==rz@;su8S#d$8u8&L7o!{N8kpd|j#48tSUoR@ZE>Ho$09EZL;xR{(?69zO(Q z)$a|ZUXZcs(*}PTGggZ-qafEWJX>4&X)EjV^u@r_Go8AW5|S* zg<3<=khi-r6pprZw43m9pnKaJTRS2x?c2(`+8dK&J31RfO@gSIWOXQ7TJA{*nodtFJ-h;(D5{e zFOg6&DzGfHqq?Ih?Mj`$w0R%mi(dzY^s@Ddi#fH%oiZ-;g78V+w_FYvC(Z=Rbr!PscouO@^?zkMi zm0JqTpSQ8q+vr_p80}rHmy2ql_i|G$b zEj0Z8;1Z)OTw7##{c9V8%MAan;0mfts>x-I(OuyXs=2tS!`KNMZ1*-=qgEiQy`d9U z>}^z$aRai{bK&yVj*jhJVWY9NArfhCXbbs}D_#|#O@#$;2hfVDhRAkrtr1*qY>|15 zPwp02VtZsOEZBe_Xlv-)<@0lL#(CQ=ax%+1en!QL?~c~ihG-~}^9#y~+ewmUvQNHJs@CV zk)?`+S{D@>RYpt1Xl-c^8DId~M?9F-Z`%0VkbT(CgzS^UG|EEn?FtzXVaV4C`Luey z5IKt6-V$wTXl=PS1WARxyGR4a!7nTF?vT;TjUZIIqpLj{Y7#Un6YH|bfZN?}ggaVW z8h3e%kW~S)>O{u?*l_*+cW*o^s)gy)|-??d01}E+%7dom}3Q`a*Jfi}XcQ3H1fvW_Fas*qg5}D*Lyc zz9cdB*2qP$@HW&Jld-o>E^kYHA-P;e|59X>;+6b@UNYYVWw|)6E{~>MaNci_?Uvt1xc6JrsSrxsr=!?DA;J#bp1cD9c4N z_SVS7G~hSdtz4*FOvc_ixx6j)<^26i(UQdRpK!Dj!${#)OajrEw>eU_)Tl1^OgswC zhw65C&tveYDTGOhj$LY`=dIwNB@*t44`02>9MIU;wonuk4K%xk@h2MSp}}gt>`DyF zy}2xv6}&Z-QC6t(UDiZnnn^mh0>f|^t`3IYdmf61(O`_yEQe&nU6E#tV`9v*p{v`s z2EwH%?~bx?O)Z}rz|_EH$&7|vJ3|evtu!qqhg|unznOs=oK4FXMs3qErP545eff?M zO`If4KlA;IhGMeRFA92V>-|Z z1ulPkGoD%{yHKWG<5WXnEn`h-r<|M_-#oQZGC9a|OIx`0 zO`kc3MW>rO_joExE)#UNwl-`tsEZ3MqewQ#YVCku%q`2llc~Pv^UeYLqj~R0s1x1kuC}&R zdpa*F)IpO}Iz!=5L)6>adQt39pF$F%E@)?HtD1(tuwo_9;R3{40=&*vxzdhLg!6SW z39jgT3M!Ts2ytOSMW{R6X`tt)I^h?@Bi>NVvMO3zu-dLYg&OA58yni&v5cxwtR84+ z+R@P77@8Q7nhDf|SZyQLZX}d8i6*^JMUaJDbuuwss%wti(r#>_)s7RRQ%w*XA*8_@ zTEoum6XTN`Nx%;^wl$nPK_WjG#hW+*4Rs{sfEU@8?g>+%`%TNEmKbR*v^cV>J=)NX zWe&8)K^Q4I>GW39ie-Uu$5a5w#muXLbH!8lNGwux}rRWJl-i#n4+LA>PQ4XN4y-sEHA}bnyyaL|#C) zs(cBvY!VX`bH_zn^f`!=2;UImN@3nG;+M#ILdQzgWg4+tJ4xql*G1=~&-s6Y=$pcS z1L4t4ApRsGEfeeR)!@BZyMzPv27sKDc%c|U0jyhIRAX!jPhK1&75C(F1>!p4#OSc zi*MjbgRnxs?cyoOSDfVr&85kAm-BwxN$D)Bfr&SLXeRy03|~{qhfQfCM?*8l4ZXCv zDEZCoZOJsLhS+9^p(H-AQjMV`dOM`897Y@ViTx=R1!XWgFmeILJ83BEPqZjxZ?aa@ zDAk{8SxCW}wnqMB>mtn<@!NA((x0CHK_kr<1pFT`S`_6^TG7FOT17w41s*g8gw5vd zVz>>{4A>sZ_g>4nln{1scBXCa3wV?m)WjGl8ciJCk}#l&mgu5(`OGJS&dE`V?#4lalUC_E{HLRK{qzfjKUP2c{W_Z=1T~VAXz_;~Iyo!?R3ndY=t=z{c*pg1{9@t3nr7En+tVz z?H%&{h95l>UlJ)AX!FRW3p_%`iBX)_VDf#)E9`A&NA z7A{5B@dIPb%*{0u7yIgzd_dA=ICKf#;Ih(`e&MpyJO`g|!(ksBWxzLl;Vhk<9i2@$ z*lGz*V^V5pYQo!)bI5u;&c|_u%Z#8AZSn4)v%7dF*9f(BMO!0$r%ppt6Rl!kh62K_ zTOxcGs-vw92jkIpo^9bStWv=7badF15$!O#aO4|~_I~I3KPQ2b`{~Sfah3czzUlBV zzIl)Us|D-~VBHC@X28w@)|&t;`wN@{4_Lv2ae86EVjr5u!U?cFfQkAY!tBm z1lS(|%k9PYB@$pOKZ3LM0dqeT&!Z2pZot9`ux|r40@y$TtmLEkj>V(+-UWD6S1Vvc zfQ1uaeSnPs){_7m0&EnpbXVSE0=`Jz?~wOuc~@z+Si&E)gg+v~`{e!8^8TW{|Es)@ z%Dek+_n5ptC-2{p_p|c;M|sb9QkFyB7s-2tysww{_sIJWd4ELSWAgqPc^{JZVR;{s z_g~5Tf6Kf3!y?~n`IdJ@caaR2%e!CRH_3aGytm7Hx4f(L56JKn^8U2EpOp6j zc^{VdGxGkLyt6*RSC+irDDOq`uJXA_P4B=?dW~^QTEMF7n zdzW_N+)(WH2x40~9dlW(m34(N5P~cuwQ9|a<3T&Ei0nm892{MRmm?gd37RWxV7j!c zvlH2Z<6GbCeoq`-j49ww;ZgbtLZ6R(L)_9($Cad@bg=6@M` zhQd`HO$Z}9Vdf)OJg`3lE=pdet)vvn&Snu=qdBik9vwF5V}3-5JpwU|NiM9Q(# zg`QYG#Rw)#J0OYfC}T_FFn?!D2V}U5-O6DtjoVAGW zT%G)(PA)F2SmF%ftoO%LVn7rpFSKL(?OuoF2z2&!2M$T6gI-OwVffZx0L)^K5;4qv zMj@P!u4?e-jzF}vv>_br>O`JGRR2k^N`7{-I?@&D)VYhX-%*S>DBj!6#wfJDr8C;q zAc4>b9S5n)yzZjsg!LSgo-9_+%g`0Y)y7+=$C zTO%Gi*@3aI(=)1{+a?>P5QvM=cl6rMT_{VcY5cD)3j+S4uq*UNoD#yThB23O0}f(` z{ZwIxWlOjAi*TIcmesG1`{M@NF`nVapiyeuB~!EE0+e z0KQ6Q(B34RL(dPS4@KY877leYw$gz$9orCKw>#QGZH>*a;XC*fK*C5>4+1|nMg*0qPp#!T!SjHFXZi!;3 zXA5?@fkO)6+h}0aJVZGO1>a2Laj5Gyd_B#4HbVG<8m&VS<3Tcw+Np_er8R8nz_$ms zk^IG!EWY(-7!9Zcqoreu5FSZ15^ZYfz>q7ACmB1oicbUJ>u=VWh>V$$8e@J>fT5Pb z6I^PHZH0Ge#P`wY9>EvUw(f+hLd~MAV5zAqj4!LTM4$=Sor^EpGRPWL$M7{Zk~P)D z0se%sV0>2%u+|WK?=gC6r|1*nDZC3KgD3ejAv{Y@-CH56&oC%p$4>a3&*G^IM~!si z3v5tT0mQf1@GQXi9^1~w2#q@9i)?t}IlV|v?ezFndg3&{h9|-ACdy|kO?WeWj}Gzj zIgeq-eiK;2cjC~JR*ExPWMhgp^a%|{+!ZcsDHDegAqL+)qvoX&6^RcIt9WX+8|A_)5t_*v&$6F(KSr3l|nHERX_f zLV61xd|FFqM|&Gus$|@5;3obo>9E2&oRr`R;H#enSNOOjY*-QS$NO2*!58_rqC1v^#&UsY{RO?Xb$(c)va!T5gLj_ak-)eT7@2}^r!tlu%ZnA@4q*?aT$ z=I<@oTfDbqZ^ho8eX)I`_#kQa{=EGK`%Cuw_ix@G-ruu7e5mIT8=Zphs-jmD^T#&F z@{Sf9EjhaRc=Pe_@$Tb2$9s?W9p7_2cD(=i>Ei>(2agXOA31*Z_~`L5e9F{)BKt({ ziM$i}Ckjp!pC~y|ae|?L;MUM5kDZN;#>ONkxkZ%_x62B+$FRZ~vbCvHkt~PwyYtKe&Hr|M31Z`$zVl-9Ng23?FcHAILtCdm!&X z{(*u6#Rp0bR2=Xhs6VjzK=Xm{f$jr62YL_m9oTaqcA)>j=>r1?1`iA!7(Q_30L#w8 zw{r0gd=&rk#BDXXwD0U_` z!sV{&pK71vP0}V=?}4OGL(U}S5y+S%O!6h^l59z`Bv+Cu$#eh`9fmwfnj}k-B*~Ga zNHQb|lKe<|B)c<^+$iKmQX`p>#7JHwEs_;UisVF68aZ(Gz!*M|n|(0%VE(~^gCz$m z4%Q#sd@y{l`(W?EzJsxY{RamQ4jvpnc;?{QgQNJ6uKQ5#p}a!{hl&qX9P%I9e5mh~mr;iLC8OFzXvyTeR_aEJSG<cx?FC$gxp;$T$0V-tmItCCB~8H^WkTU?nkF$l&o|*vBYrBl`pkqn=Q&BbQkh zmEH|<364UB+0c!GlO-qpCpVuApX@o=cQSVJ^vS`K!zV{hj^cB}*{AYO6`U$LRZ2o*F(ia%%Jx>&arp&?goX-b46-FxRXY*Q;T!RgC+T0T4J4(22kZ0>V6ytg^%(a4XohUe5a@c=(^WpH}p2K~IV~0;4 z9y~mJc;xUXKGK}spVwc|U()aI-`pSW@9FRBkBzH8kXK(8tAO0{V)^j7#j%oDMU4Dx z|0Q{%M2}Nq@iydTl!qbfVF%p@^SJF4bL;WLetNj=?BUik+&|Wz2W{^@5<4<*u;R#I^72$+44eXkY%R;!_pSzUEWir+T4%{ig;_ z4MF?Po*FyFVp%L|W6X`VD<5*KKr2L^tv42fUmJi|8$oL_7IX7fq!_K)X85yic(WK< z4f18eleu{-Q4BA(8Lb2PFyX<5cxy1W&&^u_@?FAn^>VL20IxLyZ%;lek9({N?%liL ztw`SFtAwW#vMz>~+I+B?`zYa|h7OLvKaCx9L;Lc%Z`#Z~Q!liy|Ih%u(#WB++$*ue zV(!=Kxo1;tOAOv^fcv*IM@CTpW8BZ>a!*$bUGN{R=iaXSXb-ev&(YY? z(?zd%|Mw3+uTz z?B@P(Pg1X8`1qL#dk%iIdYhqlVYGZ!-5cg@;Mj@mles7J;peCo44>@go^B6(9ckRa z$)S^H;O$7?a^dYr-|FG*NZ;)c=U3cVKXEqPYbZK2tDT(c|ST}iWh;a&T= ze;wkw&HCNY?R@BUMSp#NGjzJQe@}lu^m(ZNO#fNvvinHxk$mWJ1#h97c^ln}UQ+Bx zKlFGAI(!yd%#ONwYn{(~suj@U&G2er=x{HzICiujT0D4k2wFS>EgnTX?nXP8J?=9fHUZJ@{ zZ-vL~N55@6k6C<@ji3)mePqtvnB*^4a#$>RB#R?1$>xa9J?MW3P6xp&S>Fikk2q$> z-RO;w73T9ENdxuIL$@^LO`Z4M4bJ4@dhrcIpUyoi!v$Vh7 zlX3eSgar=62G4RUWT)KdcjQXnUjl3N!~2I}k3FzQY5`7jdpv_yVC)nd&0_U-WskXN z2}FD9kJZB>yU`cv<^9|kx5go9k7Eh%7u3_O;CGI zH}!hQc)vHB_k4>}-XD6?ygiV0j!F9zZw~3+8}>*WrS@eQZw#W15mqYt!=g>69x>Ue z=o5=}eL!038E&a#X3sdE_l-+<@0hH$8TQ)C`^VH0okm+Uh}LMB_man?&F1ocasgVT zlEW2fm738r>PFwFm$yv9f(Ot?I)gsaS@e>|&`)xsr<99UDj&V23iOuh(MmO=$3*Q^ zFM3UT&{7R>yB>yRkHEG^(Gwy2&W3##94VGIUXRwQ8CKqnzW5$);loGHa2p>x;)adq zqNO4$FGgEcAzQ0%Y3F;SrBiz~1Y17~OHXG@}MkDArCM-K|5A)!f&=> zy|VYz&)?yO(SnWe-V<4rvZi9*miZH`sn4{hA#O_}N!FCl+cjZJ^}IKgY)`6^MbN73^dMbC@uCqLm0ygA|RyFcO0JJELXEpOc2mbdM=-Hh`0NH^NIe7qkB zyP>|Yu$*4JC+sobCWp-TNvqvd$Tp7NDamSty`14KoM_*KmDKb0O;|`j+P8tjL%jDk zl42Xhysh)6*hW9zD#$*pwvmgTTt4ih0_|U-ZS?Yyf*9}14Z%XF9UPPGpt6s8*$Vc` zo?O4|%aLtRZ!W!cRPerCvutPf$TmjV#+Ynd@@0!yFI$y9J|Z-bFdF3MBSHCc9B4D| z#|aBK&D)bi?RVqtfh<62e`0&G$L!4wq9uuIe=cuF3V17$sQJBkm)#>AK4 z#j>Ze0ke-6*ZvCh^6F(juUEDzr2DE>Ih&;YqMuiRmZdpm#A+a+Z8^)wtK716DVDuH zVG%uYgi6@N8QJGcw2BHjD%CyCh*Y9o7D8;fh5w;>)ls&RPIDpnR23?0cw5AW>J3iN{#J$5nPJjiP|r|s{g`fH`7iQc+9Z4W4}wMu96(Fam` z+idoMF5GJ;>+K-dT&cAfP?*a0@bMTo-c6L=p0C!r<@-rK-cU$u>&F>u9ZEaSnxA%* zwKvJ9EBzfq&nTC_Qy1`&)q2aQYNB61gSVEkq&`sr#s(`=#!~mlUXjw@G5Ovi{CdSf z^6JgJH`F72`e}?24soAOnmfk(LfLq4iT8!-WlyM^`}K)OgwlD>T;4OMw)E|L-3->q z)nOEc|Bu~2)=z`B;(+dD9|-H^9%oBFFkl=^LL?^sBmv5)30+`6T!rL~FAnYL`% z*4PLLBC+0}ar?rsSa5^|aaY+_&$P4ON^b7P-KII|06k`NyJ+c69{<;cWjWj0Lrr;D zqk|Yd9>W1PR|M+?qj||_4xL9j1h#l~C8K2X#9bL4<#-_Q=Xvu>^ML8T>TRR$} z%n-z13yj>e7u&OGp*;8slKu#>Xo68>KbX>%D>6U?N@n z_$kt%JL2eN-e9d!?x_Sf;L|9t2^gy@OPLyVk5TNGS9(_Sk_Kx% zm6gmD$Ed1VUyrFnQ&d&ns+zz?qskYo^3;}A7$U)>I6`?Hax1O!8=mSiV^zRY4WuPS zEMsDf^M{*13D)T^?S^&qSmOasqqKdyW){hjM@#J016WDmV2R-B(_!FYHzu(6b8($j-ytV z`lZ6=#eo4YxUH%w^ObL8^WtEVq_4WP%v;K?i9>zWwcgdrc%7Q|zNl{FinQgxN2S4(h!HI(qWaiWXa_3;=%7U)Ke zAC^XDU&@swKaL~oELa;|vnhn*^RX-IaxC+v#39e!{#_?e2T>4&; z(R%n1P7AWGF_bC>;ZIHfKw=AeD$3c-$*|JO+A_8<8MdmHEs8@#fs!5Bswy8_JTXe` zrqb$KRxmNrs>&cMOh74HQwOJ6R}EXMWJU3a8Z-vJa_*q%(^A!JNjy#pyd2Gdmo1IM zz4d-_b)Hp0wk!@MIaK(#l9c-(`sK+{!Gx$=lB3GY175EmQ@^H6aW=kDT(G407Gewz zx4JgSR>Y%ML)QbMr3xCt*ZWYcTjLl6tgBY_SXl#whobtbU>&!OhXqZ5O)0dM$!LC0 z=~`%n)Gv~hiFtc6X6;75x6&H~V?-~=?nsU%UJ8s=8x4PbO@Q4Qk0e72fN3;Zq<2B1 zw#HZwTP&FXr94nm#gRN|kwiNhgf|MZRdEc_GA0>PLL1FWRD;0mteuW9#C0r1Vgo(o(dfUIR^9 zb=i6rh{t=@*Mo)e>>@Y;VzOz}reG%Ywd#^0AraF~)+fafC(70~q{Ik$LiG&4H&Dgu zlMo=N#NOS;q)4L6{Wh7H&sz$`+LVGI$`i-9D+z<>TS(lUf?y@_?i7sL4T&wrJ@I(i zh1lS$tuRoD%!o&MDmQpG2GO}i&)YzM6Fte|TiE6}g7DzfD4}{;Lp&l_;VZ8#WLx5p zOT96}hRCbBj5WsN(V|t=zyPJwrY4y+#iPqTXfT9vvQQkH(0MR61bnq#wlyBf zrB+pFtoL~gc(-lwm}-1tw65Ck@dZ3kOx7HaQ9W{c?GSzImefemmxB>dKa2O+-;;nO z3$l(kF>HHkOob0g(d%rDN6Au?j9FV8EHt^YMs`GltUVq_R#jhGv3eEjNCu+V1uPtg zQDKGKq~?&lHy&f^HMvyuv?#hW9xdM!vXBc` zC)O1QtNLFjg|j0b#oczWwv_FR!>IIu(g5p@gDRmS*efI6Iq5Y$>7DbZS}i-t>dNAl2&o;);j zvs{ppn*6JV}2bbehff4ra0`7>z1K3&C*~I=Mb6yv6aK|Im&dy(FPI(ce zvbE~2wk_CGi4R4z(f73@Y*Y}-ji*W6NBWWs*b+w5smXNGH2P1eaoe(YDeEyVI3%2V#pUSQcR=B6uqWy%FXS!Icy& zkFZrDcn1YnM_8!{mQXMlVPzt?O7n`0y&|VFt*oPyZ{f=zf+qw$-)*72@J1C=W5py~*ro6MG zjpBBRxB(Go8kItj7zT7a&w)-q&yfReX(j|tnZjR` z2yp;MaQSJV1w(1m^1+ph_~ksiYzw}DTwI(Uhq!H=f-AxIU^vcK?PWi*-7w9G?XBd( z7URKAF2qjW!cIPkKQWg-HQ`Ted24|0_#IFe8&zm!JuExhc1F+t0Ki&h$4>TLecDeD z%e0D?ZO!a^diJ*wa-nbPi4~zLFgMQ zY{2)*Ve$m$oY1)Ics90dMKhmg)K^tuv53SAjg zH!+P}WtDD`OCLj2K}^fGZFbFk0=A!7fz7wr=-S|NQ;=m=hPE|ei~Sat+sv+jHM-oS z12M|HkTr?WX$lpwkO&P@XbIaYLc?+kz zzu%=(%kA>V0a;|$GmSu9HHO2y@!{&pJ+A4SGGGU*=u5S#=WxGJ4s=4=n-uH;0dr{L zcmh&O_Mm{dkyQ%ihg`FwAnaiHHxn;`8+>>ntw86Nrd4YB>)@I9&!4^kJq;KkoeuGV z`BO#Lhc+j-R!~RngY%~fV_V(Yu|>k}6EGdEHobhX9uanGHP~Ft?iV2!xgwMG`BTaD zy17SEzy}2|n@;k;(F+gF&pSBw^uV=)UiwQks{`` z%&Xgw(m}~xWxk-F=8rIFr7Gjf$=5xJsF_BZIRCpQXFM=D?w0(G?CQx=9s)D$$}iww zo(QFLMxf=wX?5Z#17DcU7mz&FwUV93YbR&@ z8VZ!JRpN8*T{y8soGQ}E7EI1vOeU;J0I%-rCTCI;Q4Bdo;I?+v^0NZ+C(ox!L@%ll zC$jk3n{ed74U;peqgbKg#E{kkcB2Sl!p)zi&~qnW|1`?%AgL^&k^1WOH8iJ$$r&j# z!;dK>4EzNl8C&V(>93QBxK&`vS9TVeck*O{GtGzdCvb*{f|pOunu?n3VbdN*iRh76 zD%z8efW@ohVV8g6yjM?NP!4Rze&mu~qYZC$ZD1qI-Z_8zaBJp?ladtD)Ct(lI*GXYr{&WNpJD2LlLDl9ogykB%8Pf}=^InPq z`tee#FHeS}UENJbtOmF$t=#mud?zyPRdz1xk(T8XBbuVggJ8Fi+#9$*g!6 zqSRA|c`c@i1mzx#=NSG9Ptc2Rr3V5SH?pO~6v`O8$|QiHd>UcLK!5V49*528W3@41GBT5JR&xfTT2vxdfOL%vVjbklaC`pJIwBfOB4O@&tb?)2r;O zvl2v@D49@0dso;fZ)bXa_EreQu^s=Gy$}EFBp*9HF-H&nV-U6-TlSj_GdU~C*6(uv z7;)1>>NQXtaLn{~UwJ*UOpf4rG5wxA50bd2%f0gG3N>UCk!&{Yf1xnH!6R21Jzg4* zILb)xm_mI%vyj1Phv5CutFOUOgyVYrn@w!j;K5F)cA{n{R(MJ5Jc4?j%ux%RTU42p zx#eqKtU?6ejawU-wmO>_V$(bET*05+({VNkj5M3ZEwZQMi_c-Et(iq$FE7qlEk0@( z;zEsG{W(x`4B{VW?Av%qV8Sd3&h|ldHPAkHo^I&s-%z?Sm5#C-w?IN}H_;dhS%t=~ zNjZ7v^YgDKkN939L(P<(UVX(s^1^oVqxRpUu=dYV1o;&sZVXDEUm1fRqSTVXkZ$hCORh{*!yga0EKbKHlVDNpkRq0h~qojV=$c+Z~y z3&I_UAZPgd#3mIs-Elv%ZXfpVe~7 z9ol!tqO(R2{%b9hdO!BvJv(OYNBD2FIi!(@k6cS?g|lPCc}oM@%uXuy?%~MPQOOk5 z<6N*~(*i_*O%3-7Zb=DhM1)pgv+c~IXx#H{kz(8mY>`~tinRhZ_i34AyP^||*tB)_ z-EJq#9h7k-egJI|H^w$?I7o#pQ1TLojm3Sz5zQ}|n+-I&w5NVV5`$}CN3^BnNNAJ& zQv7aflBnQcE2LcaYXQd0y1+3?jiDx?2khg#IB~SUC#l)A-%)oypj@B)axB`EU~@!liv!o1BG| zSHA~XKL+4s{BnOMvB;djlRmk$bafs?gzD7lNmv_gyPI*wj4Ofn8B=6{l%3t7swh#6 zhQApHe-$yUTjPb$-iMs8qq^zViizhtx!AOOwH%UL376OVv<#A0ywZh8FgZ2yu#mw^ zh^0$=ii(=Et+5eDFEs+;CZhQ|V*Y?1H-Nj90Srd3ZHsWUcWX1KpGi8;ZQ>qf6R{mr zJEa^*)m@;?RXqk(KP4l6f{0sqL_HCJVC=h@Q|Nq*>%4vUV3f`HtiRPkazngqW(@s^LFNo#nj9c zBd=@l%OF|P=}TXlM~#YYcit7Cvy~6GzA%a0>H%Q&;YV=(QvV_c+cCucYXYmv8oG)K zN-JJ#@VkCL3i1`{i%#FivG9prI->8Z)2TH*2BgFI@fe&+g?5X5Z5Fk<&jb27{8ojf zuDLY*uoO|L{~;kOKbI7=J{Kgo&W+}h#(ftF{{_FYQzXd$%pwWBg7A;<%fDYHR{lb} z71iz7-G3jiZ(9UO=6*@$v;u?$9^4;AO?AoCWK!EiEH|rpWLB`KdTlAl>Cm3}d2GgH ziB0-4_d7E1S0+)BBq8%IpgE;Ed@&Jic@mF6oBCdfMyh*Opu(ww0j0T|-H#+-WkH`% z7>Nb{MEXrwGd>})xLQwEYK?QOYH^++&iPvfb7u!~(DTWbf`Lx)OMB`rP|av$2MVb> z1kan8oZgjG@~0^|lgUvJGWjP&@~2ahm!o^=ZO6C$B6zb=hXb;|psE~xKvaLeN#({l zQ2lTt`wQ-qM?wBq_+5ea6ECzMy@J|qrvs(O?|OQB{8%QvNy7Q%{z%ditrK_K)JW}a zrm8F;la)PHNP|X!I@&QLhEv;~q~Z+9#L!oMX-~C)5lG|7l;R+{db12l`{!?xAEE-C zmUQA${gj~dpj-6j>`#>q%j%TTpA2OeOJA zTJB*@)F%$hWT+g;#3_-i>4r3=UmakZ{4xcaTA5-l9;cwK;2F&Zr7Q580u{n5_@>3= zUl##zBLPV;n@TC;QUveBZ$_)6m!kj3%ukpFDH&2Tj|}}h!+H>@CE6lGKhN+z0Bj}d zm5J27)V`}(z8aH%+g0#lK}5YDDZ25y(LmraJoHka4S|p1VK;tLHA# zEG;{H-Hj5}^mS{<=1H&1sf~?EyT8rkgZCc}BbUASC{|s|F`e}*4+=!fM-Y59pK8Am`75E3n5++>rrvO@@Q^d^F zW$|+WzDb)&UfWz+_Rg~Scb3KTh2!rmi^txIcb3J|RvB9N^v<$)+W(@KQ}b1R?<|Xd zXIVV$276~&JZ28~<~H`uvUt8!|D9#=hFod?&a!y+&a!xPA>LUQ&o>?af3_@MymKZk zi>G(apK6~}@0@(~`WwA0-W3+#d%$-cFp-KS&quSez=jFNw>(4L4N?AjuOFLEEME5+ zaA+cI5AC94$9a?q<;e*C)9E94@y7c4Z89H$Z@Y8WOGG6Om-*XDa!CLQ5sH+}Gy9hm zvy+zKY4c`&mgt5%F!+F>dF>h=zTU0n+v(eNvpU35xErS2MIl;Be`6*e1IRVMMcTo? z8^ZFg{Vq^u{|4l)b64YWDkg`wwX^Gaz&#ZQ)w7%Q?TE;piZ9%RTiMN%h*B<#lWOSf zY}m!zi`^K>=9CIEDc`A0wEC$igTQW<|4F2pg~uC+b(Sr^lgi7-s^%<3f=QUx6^rmy zEX2iXa_u}W&k`4Dxi`f8*_6{Hd#;R}MqdQM*FT&^(}~O7$d3d2oi0Pz7CX1wWjhI2f z_dE3e;e|Os==>io&tf{2%Oos#r7xN={ce%{w^jBwdSd!8@NeXwdU3s=W&b!+P5|KgqR0d2z0u%r@l<{xX^m`?IrZ61s48>;4fv8)@$o>gxvM#GY5XtfIlqEH4g$2$*=>JJ z&YdBJT?@qN+O>6)?3*QBjAefq6AB91rXDb9$ge}Ld0^0a5;)g^>a|39s-%3QqO2?( z3#2yzajuNl)C1(jFYScO`Fil$`9ZKu00bIk$L$4$2tS?9e@|vtL zhWK73`c;5vUz_554!~K!pN8L6FCwr64+|+Uj6e+@eE3a2F4K`K--HNorGp_boAt7c zx&l)S(;t<^BD_Zg-X!3m0N2cSG4~H;v?v%a3Dc?RE0PV7a7tP`w`J}7#1EOS)_y(N z?z^ZB4U?I_i;VKU^u(@~Nx7?RROYc1F?4B9y-1VvpFOo;Jot9>1CoIeK6 zHWW65pSx2cAF-N>tbi%^K+p=wrXGOIuV&W(QT!lqxw&+@p8X!XX9 zkP&9KO`1jw*z;s}06R=@@>H~?-H-r^pl(`H1Ofg}U)nU5J!_gaeX2d{%B%%hIcR^G zme1_&xtL?OUCS~v@5r=c(}LZh+1+={b7jtR_;PNYr`@KnnCH}B2M$g1<7p zWzrSwdZf#kNyIWii$gQ#ksi)tzMRE0^{-8lS?LsAOq}|dE%$@uVs#*aE6|(grYAjK z24^x+tgI3Yb1L8=iE6JlFS{7hn51&e&^fv$c%qVIrX~O@lNV`s&L+ZyIZwNOwl4?r zb(Q4aJDbEbC7H~uzgdOiXDNwKtdzh-3pdlMSG|F$Egjt7TG+FS?Fv^I}m~0Kz0>Z58BbnGlbJJgV^`7tTrpERqD# zdk{j66Itre?#Lv=6Q)M>wv4Kp9+oF&iqaD776FT67t2y}U5txuaSw4DiSGdoHop?0&Jw&q{e+g@ew9|36VL`$Ws;QYGdJoRI3sr~g7ykr$~BJz z@8ng>$&=-m@TxL{9+M|XFrH{t2AK}WnucmD&D1C-Dr}idFKSxw<6Q)P5^J_R5s>6N zg(I>n$K;6nA>DLN&IFAY?#Og`Ze@Futb7Y;N_Qkp56*}eo;w|~UcoMW5%~o|66ThN zmjV=RO0rnzX&WF3SaA{EN2UsB%NI`H5_x44JX#*m6=-IEJ`rf zlttaF`nV*nN-)`X#fv^~5~pd-gp*&jj;InqRqQj zS>A%{kmx#L`q#sv$;QDtF`KWNfE%b;!hnZa1zf3xYTT68&~7$Sd2J=~yii)6SxbwO zag$rH#iqcB25b_#!&pJwa0*QXNK{4_NrUBiD}!CaE5=m$rP38po3$*_z=e4)Uu0UU zFkeXNo$C@MP>=LFhC&zNu4&pIvZl}tju2aE=;>-ca%3QE!}CYPb{+Y7~|Jn%FMgQ)ne~;rI`xrevL;p_GKV3s%)FMaw z?{F}UrrVvBIWurPzz1~uyPtM$*RSTVjX6$tpK~wZIZpdOeqbvHuGO9VzDdt^YFMF2juS1Z+9-z=TWM9 zy?}0uP(0_?WMY!UZ{>3$ar;#daA=oK9N3+=&zO+|q9iHJzGIQ@v}Zi0PqKG!)vqc* zv^{%`l%hTRxg7l_=QQ2v*Jm{8Iko!ChxDBF!1?nWeJ0>`=NUlEF<2 zY|>rM8bV0)QUo-9LJl$>o)O}mm)H^?rGh>Fce&s99 zztD4>LEZgs_ZoeM9miP?5gSqBryfr`B|qPl{Crf0%#gABVMOwWujc5pou4G8^cxAX zS)Xn1K8|puGgrU1PIpx4SK04f1Hgk+mT81}h5f*N?lsOeYwEW;PeHstW6vR}-MP_O zsB0h8?Hl`?cRK5xpW=$~dmi;5RfgugLAQVCY3J?wmCk!~yZzn=^egR?AHY-exU(cj z&n0QwCq?yK`%XZen{sgJ*ErqZLcqO%9_{xcqkEjqw%cbS<6QT2kuk3g9fCp~ec?VW zimbAA`wZt5_r+PU-$^_k-KcAOcp|_1C%oG1&b9JhDe7RO^A{W;hX`le=&G$OoP7XJ(+Jl>@#q;869v3lzk-4f=+o`Z^&q-lcg-MWLe%a0&B)5JMvx&D zsp2%|*6SH-^hvu>h%4%0C-*|1w0mrm;Yj}gmqqSy<9P1SQHBxy{rJ6z->dj>*E$LP zYn%%}|ElqikLKI9;>jMSfA`YA2kGAv_=iKB;J4I(n*Cc$xWq1aAFxfw`M&%Tec%&`BHW93T01Rx?YD7l^XNsG8;a?i|(P3_Yu?@1^j zDJJnod48N!!X8|c!?XIL$V$)AC&RDSBZSD$^Sm_stBH}%iMS__YZmCZU=Cmq_m6Ty zk181vq30eD$o~ydOa&5-pqf*!PxS$NqdtYF+9*?>p;9?fEDcGf*`IwM{G9W4PVy@v zd*p(LJo^jpTS>U~&pFoA*Au4@*bCrBIP!Q2UCy6Uo!v(=%$dov$*t6#x9V5N$V=Aq zHggK;wBq5<^*I2O)-E%&YU%HGuKhs$<@YlBFF05sAqNQ(_nANG7FKe+nitFMgF{5*)kqoAh#kuEgyr9dDp8Bq9e#@+zE&{W@SHI+J{Km-9O)huzSe(IFUs z{bo|VJoie(+hOL^__O?J6s=y1_>v$!RH4gfGuR`vrnPgZV^y*(>?(39oT>PNx*@k_z2 zdwvwWPwqTX`6;+{((AavmoLVN z_;ok_Q$Aq{S6kJQ&m$ydvhXDy$(z!vrf;c)qr5GN`d%jSVse&A&ETVa4^jCZ zw3lUVwv}a|EMG!d{vpdFzeu-QA6&KbJ2>vZ8{8VQhfx zUKj~AFYIdUj4teq8aoP?EbI*JC=?0qj%T3K?L^u(?3&!Ur08yuC!|_G#ojFSIuEvlA{H%bOg548Q*~ieiMAxuC8)YIuVnIREpS28!d4p5u{keZ6<_6LrW_y!~W+p0&)K*7Bu``F(K}+mmZ)!!TA>6`a5ZHo;x4r_!N|U!= z3c!3=w3rrWEJV#VbhT1VOB z9M8G5+BkuPCol^x>m6UVA1CDcX9T}NFwLm~@MXu(9a<3oP=I>;`#ptz@4(1HJ^l^o zBH4hBJc0?76CaVwD|E)kE0oz?$m}p>wozsV0MXuve-O@HTsR_{i{~yWo?M6ra=A;% zWn*%UtNa{ap-lXu9Db1gwgaJWgSf5Jf&Z^j@HNLC-FB}7@_#``@CE(XJoqu!CtL`A z!nNN8WSZ1Sxj_Cko2`?H>Rl(YS;tF2&|f(o(NP7D=tQ6D_nQ>_CZ|vJ`?L$er#XF$ zw2enSPf*_|sBe_i^MrslaskjXq4WLE;`$~;&xWq4f) zu}d|?9}65MKFKs7gRYm!j$U^Cgqzh*T)%cvvW0lHNpxRCNL-FSZ66h2pY{U{rt<^s zWl;{t%a~LG{6DlG+X4Tv{S`as(eaA?M|v8Qa(qI2L4$d`pnVIYh}ttq|B?;imu#=v zc=#3j%Va)#^=EOgspDDwIo%e`c08wl2|>k7n!Dp!?RgC%e;$m%P(ES%YpQ_1vHdIE z{uRb$+g$C6$c{j&|~{))}<1N}z` zzhL{S&GB^wWR5Y2$}s|D#}LGnK>MA?x4#4yZEe9PO~rYQ|NAoquFDo>VoJgTNU%2hLA{Lsy*gZxAX$ z13>wVN14vLEjS0x)xgO+2M&G8HTxVmYk|{qj#6|2hYXU-5RZ&K1jy-gq&fhc!3l7% zg{m9dqS%N@c@ZE0@QbpvYjoz_d1!Abv=G)M+Q8u7O!g{Y)K zG7!?p#S>ACUrHJkAR?rJ@dBec)QUq7Ba0ftVTt-X@adn2j|U-)h5vB^c%oXRD;Ey} z$7;E^2?YFK0-U~c&{=QdSn1qp(un{kduE2@hxWO}1&JtrO$VC-$4bX5F~m8GeNUlG zfY>!vDu#W;~WZ}eg=3wee;8^KwH~INX;0$h7bmBHa2ueP)vJ{S$PKQb7&wz8< zq(k){r={pj!PKL`vC=V}IeQp5gNEW~96B&Nfn%k!GtLiihD|y#z?F3-lnd@w;8^Lr z&!qF0zzLh>DoIPH2qrFYtaR=->AV1(!C6{@-!P+0&VEO(;?TstWlj!bB`6BD)X8nZ z!zRHyfDu%)AZ(C;J?Ey#}1vIr8dzm%_2;^;t8o>#k-j?;LqWfirrJ zyt4BYjy12(nRy)oPQf|ydJQ-|S4~`Bee)EKHLt%n^SbUD*x)(xiUKE`*0(%w(s>m) zBj~%N`kxm}obB_0WBMOzL*so-)fSAJI98tj$)wYPj%W$`C6q?INtscm&-^NIM)4Ck zaX&|xq?>dtSO7Zb;OD4`W98>tf(ZWKa2@LF9Q-^CoRM?z^F!do^mH9llyY|^Q@0Wvi8xr(TnaY{G-*~GEd#m`LKsvF_M&q3!KCXSWP&rLdOZ^9$`QmJMC zrHS(-a89Si`L&7jJK*%0e)Theqk`q7%Ju%66^@mk-zZe}2f{Jig7kEH7AhPoo!^;s zUI$K(*)IPAaC%n}m*VH4MGD7C=XHh3?2F-_&!O`Ma2V`oA{+c$;G8zw?)3cJQJ`?F z{9w(myuJXO&FA1}b|Ff84t^rQ*^EAGYQ59gjJVbmL09j_wi5*HT6#bBVH3y7Gws&+CzDz#ktDF`2}#u|4D;nR;aKS`FzGx7oC1?hOIm(jGI6YQt~cq- z0Sl*Rq|-4Pw-eVI;PiA!`HV9T`3P`^cTSA+IpA!LOpKFp3w-7|a5e(x^f_=204MM7 zm7E_%L6n9vQxE^m#IeeU9|pn;pIeOEUPY%F0ae@ar&bfkO6PV{hR*?~=RcKQ^n;Gh z>C-<&v1NtAvC{FFbf(`5JN+L;r#vBboX+zmj+Ktrr1PHJU|;{D==>Atm{BG_pE7Z* zbbKcAtH2pNq2$w@mY=?r3dc&P%A}KjJIdaq_?d;uf&-P8lFvORj+M?jlg@{M!#Wim zl3S{rUo>&7bm~kxW59{MThSSG;P5lWjwzp;u+l`}Sm|su>C^*f^A<&CE{XzD@>1n` z(!{aSdACXD^S~)NspR}UP)IG;n2BSh(_qqBbSL<^Tk&%z;EId*lVRdm>4Z!=j{zq; ztmvEtJhi@_H*u_VT1+~x5{}8wT9hl*PUn><94nnRlg=98_#=uR4+@2bQ(mfshfEwR zo%fn_{s^4GeM-)?NSaz-eviVj(&;kkJPn+Zb&4PQj8Ce3eqrKR>FhG;6s$tI>J^Of~ijEWILenfS1o(ALDQ+CcO6Pu)P8c|`E=7kvIglw+ zGn1b$m^fBC51VuxW$@v<6`cmqu&2;jZ{k?#JZjR}2OL(b=uARUrlimrHF2zTo;2wc zdtn#T6rJ?``B4+cN@ur8=i9&;yjIZ}123udwE%8g;8^K=)T9$8oJERGdVZcaajbOy z(xfwaHR!BTbkg(lZWG5!=aVL#e&F~6iVo>vsy_eD#Ie%ZYtkvHfGw|Abm)^*u9W(E z+QhNaIcU=PEpTE-l%4j1MjHL`DI6=EBPN~Gz+rO~KVLwf4=*?JQg-29qj0QrK4sF` z1f0Qhyn8+ZoPu-oTRuf}7ASsx>c*KViXGFwCc#Y#94kMcHTk&l(?n9 zE1iEf>GT4p@5*%YdCA22J#ey5DgB|dzo3fpQu4Vwpm3~t5pUx9Ti~#h6VsU+R5(^T zFPn6B0jJ=EqC@@F)UyA;#Ie%(H0Gf% z;aKTtO6A#3;EbB}o?bpbG;yqSuuolHp1VM2yRzjofI3u^>0v)(;#lcWKSx~i?nc>v z=!CCB3#k1E{-@gMPfZ*volKL?!FR)NU@j!pXHGM5K7J2;ojE^ff;l6~*VP-)!&j7? zb5N-1f>HceDRMR|94kLpC=@mXobay{oopC;DxD8EC>$%D*(ROpE$~slP;~B1;3Ce? z)r|_rO6Mw*&M$z|XVUo|#GL_J;!;STZ&El`I`b3?>kUE2&MJO34g_q$K)UiUiewWT=PU&Gzyr6iNB(?NCiAHuw0jEx^*62FRWrJ!KPYw+^L!juD*%3;wq9D=qU&!-UD!>8v{6439)&KZ{P3Asp`0X%`EVt#g>_ zoL)+q^%~JG^l5lsepQ)log-DJ)g@G8rIcqWah7ehn?QFeldW@%Adx>{s@@TuQ*niOxxNU`KfSIHCfnN93XFnD$j_18zrWP6QOuS>_Ut~0zA!<6guV}7r5uN5ZS>t^-( z3npQB^-eH0o|HD+-aGeBQYPE$Hud_zG1EmSPWyz9%YCjBCR^uD)p-M^w1eyyYdD@p zBeDs!&-KD&>)b6!P2Hl^jG>*nKIcr4=P*@Q}Ljb zCrZ7JlWM8XmE(lT)|sk0^>1L^`?Bbq#+VP!;lq{5)|sw4Z^J|%5>k?>dGD3)rzZzj%cON!yT4 zms^F&)_F;FCc`9Viq30j)DP+Ws7$ubtEv;55Q)TAi_Vqor~8F;#w(MpkM#Qqf?&sW_p zOt#KDs`CR(VjH<0)rGR8j)PP(xed94wN{(pTrcz9`g^MLEKFswk9l92zhEl5`IwKD z8CXVnSRFX;!2enzu`8vft*PlgwdIOvi@l{xc1;zH?06@m?sYlBc1Zm~o%qfPn2Lvm zDdIO;u-ek_wE{4ScZ6x?)tLoT{*f?^yv!1qvZsXcd#!OgZwixIQ942Coj+izrwZfB zBfm-gw9`b&yi%Bs-twFZ6P+fEUuP0brM96fb7~XUr(vq!6`e~`06z)S?k?)}xG;XN z$6+Figz4_p*#r|em|l}8v%%aC6J4C&>pPf)!F0Wwx*N=GFtH{1z1G5%8%&3LXp*I( zbBworM#IDn=1rJNgK2&*?XxVu*M%?%W&Hg$AEw%1wwX-(FyR+cqrw8e&KWS}1~b#? zTr4{7=;4k@!RGdA`J_?|qu^-OxHs=yPeG2U{V0{}o!L(bI<@~VpHy<(JCvuGzqjK5 z!h*Ukq?;>`+kSy@$6fc^!sJ)$xK;=@VRpQauR|e}Pv;Pro-p}z&VuP;===@S*U)+J z{-DhH%G2rr#-X9}1WXJjpH8nSeD{^1^9@WlL+4@^wj&LlUtwGu<}1(0hxk;Xq4O6E z11qo27>+q*hE72_t2jgFCK#%px8ECatZ;pruU>b-%rJDCKN5-bGjtw?nQQ2@c{CE~ zZ|KZ~sWfyBm==t&eD$h;Sz+jOn9kQV8ReM`v)a(v@3BZ^kfAdVW}TsPB*#fN=7V}Q z=cm*ZRfm7MZ8=O0f7j*zT=T}sbm(|~AL!KQr_?4o-@$AqoJ&VOap}ftptBbf)Yd5> zev(gI)~A?(PE&q5HiL2hxZw%D3ySPO$C0T`%G2gazA=D*-?CimuP!trP_D?C#y)a7*o!wsKlh}sNqcBy5&OQs7H&mw; zB?-^HPs6M+bPj%r{nXHT5oW!ibJWZ17pl|3Tb>(XHX1r_!c0&df4>*Lf;@c+mh+f$ z7|dkVY3eP{JunRoou6Q4sg8f&IlhuUHFT!K%r$g=f@y8&9R4cD6hr44m|{cc1(+qO z<8SB2i&#G!I_JSu89F;GX1!|YEQVR5I{tRPYzgZ_L#NeJ)-8t4MKEzg=UJEys^f2; zQqyQT_zv?s~z+FP`j~9CAY~i;|!g5VB9kZ`E<5g&YIuQ zIRvJK>bU(YwMls{hM8jMOou5pbiRO@Vd(6^wV!T=&dD%y4V|$t{ZyxZs#5$U^?DJe z($M(@CayXRfV53?TD=jhf81|#t&RJ@3{;&xAj9)~1&mv7(%M~R&eajr!y6%sGjT> z{^R?PFijE3r*rt*kx10gDRYdW^CgV?^ea_kZ20SSAlFUX8#>p)^jDpRsHHX;hws63 zF?8Bgan5MyTnW?7(0LtZgrT$RJ6umNbcVqs44qeC`Wre;xE?$~b^POS0L&mm=NXu} zhECCY)ZNgz7-o&?`1`90CSm9tu!=RC>I|gQrMFW*-2&s*TKt!D{`nH7_tr8F`+9Y{ zz8|c$^6A_SQ?5Egy*fX@Of$;U;{(=gOv}N3;cuT|FcpT*T`a_zGTY9QaJFm`QnB_)!UV#~*I$gawzrn0BboTp*x~oo8bW)p)fV*L;4V}MXmZ(m9 zM8fSe;NxJ8l&^i3!qgZ#`+O3tk@D%>2Ge32>G$2e<@pJwE(0T<&Z%oy(;7N2z_>M1 zKAqh@Wo|KaZh&!Xq5no}u#+%oIbX&1YOAGIVZ(S!n3|3KKJQ&Z=e} zGjx{0^fq)le9juc(3uS5)@=FOx!?=>V%z-VX9$d2Yvt2<52mZ3)AdWvg$ zKaVwE$Jj7*Zi5-5I&HoCMW26jjmXex{uOI})j8a&^FGWZL+8$~IUiIV|NPT$J;wq= zXOC}K*Qt)beSU(OW#}yamib3@4)E6Np6|H+W9SUtz`1z?89z*DX`9TehkehSY3MZi zfi;`z`1|WUm?}f(z8^UkR-IyRz2Y_OgNDxDKXG25I{tS417^LU^XAWtAJsX}Tb_S@ z;rfrEbHJ}Ks^jmk?_naWZSw7>PyEK5Np-MeZQ~z@+yBm5!qB+}rmO1s*9qUkG&6Kg z-^8^7LuWZmYeT2=AI$TH&SNm{+#z54?D!|=o~je0m1GpBei{eU)zJ9`rePy#=l1A? z*9qtU#Tv=b`4Fay>U8s#r^jZ-yrJ_v%qZ3I_xpO7xS`YhZ^pCg&`@ccv{YZ1p@z;K zFjG`#04m}3`3PpDq0{OgQX5MIz#6>m{qECIwIlmd^{hr ztTA+E!W0)tJNtDSaHDp!p>q+;1l92$mlwg*=iD=2zc=Se!%3=hiML+Qz%(^?vK|v&@Iv03#o`z{}==5mF_)(o=ug+|kE{4vIjTmF9bBR~yDVT1C z&asUPBE7fI-#)WoN(`MHcoD@o)w#%9o|!QH4V`0(7^|uiM@ROC)K5>s3^H_@G@;Bp zNWJ{ya4^gWL+4ePeyZc&-?!z%0SQB=56n>2>ELajX)qHEonK+5s7?>BPIq2*HQCU) z7iOL6jPvU3z~dOx44pe*2GK0Rx^9?PXDv*Hp|jtP1(E9J@^tYr=wxp4=Itk#e}Xq} zUs!tiIfI8^aBL`V@0rKGlP`bnfcPs3{l3t&DhTj zRmQ!AIB}9Y(ndL#5#IehTp9O<;b6-ykGm2PZ0^m#!IsTjs*HQ1ub&yAjC&KWpSeOA z_Xb@*Gg2A%=377GzJxs3+#73yExXL_%1E%eH_ZlHHZw+oq|c_jc2wKECqY zu8e!TX=Ps@Q>Ki2b7}c$K4zja?yaQm?F`|u>aH9Gn|tGEuw~cl9%bCyME%TUW!&3D zWB>Ab-LH&$n`n)fnWBt)Q>fqTA!XcKK>bX)GVTqZe&!Kn+*>#O%rs@XaBM1PNgQs& z$CPnz)J*jEF*B5LZ_D(1J*kX)gQcIDt;`C_Q^rGPZt5v4c#c2yK%}ds?Rj%dz-0Gn zh3dGsK?YkkGe;Tsrbjd;^2mz8mEMD#P2%DA^3`k6(_xHlR48F%F|*xXwRgDtzv%an0%AoMfKl}Wx`FbQSr zyrGPHbD&>mg);7~fPUs}W!#(k{7jWH?k#+N=3Qm>jOAihDN}M(F6IMezRk(3R_6Mn zbLo7nOv__(F>91bzSS*>Ww-NMW!xLvf-Re=R>r-J&Ch(HjC<3XpIN7jdyAT%`AQl0 zhBQC3UK#iHGe7gKGRZfNCZX(lZBXX4Ub%FBP$v0iGp|mKGVX0-!Itgyvoh{YVt!_$ zGW+(<#r&p>djptXXOlAS4Pa&G_~!6Gm2qzXtBm`Y&C0kp-xi(gWByU*v~Ib|6X6Ue z*xcI=gDty#>L}yhB<5%8D&yV&=4a|Dj!IoXGy_9ip zd8)Y3H#XWTvqLl5a6eLfJZ#glaF8LXl2}6di+c`W!xKh{7iRc+}m~hjJs16Z0@Z%!IoX-tn8TTd)KU1oVd&`QSxl|eVrV&3gLK*iK5kGT|k*p_rHE1$}xbop?) zFwLv>TV;!+7OBotF&UX!FCSC;t+G+F+%A}TWjm0nt?7Yn`Dd~g$tQVS`=+*9CS3RQ z_NlG=`aE@)-r0in>X?xJN`4nfs!r}F>1B8R8r0qWnYq<6od?O-D9~Fn3WnqU9d$*i5fwx_x+|c`5=xmnZ7=1~cUd%((ehupSBBi{huq!u;7s>Fn`oqVtVaJQ z_k|(%NXWe`O!ws+YHK64{eDfJewQ&nUiu;;V}6sgyspd>Qj0Ax=G~3yWG(U><5Fdo zF`riE+PdGIr|vT5w_v?Gww2M6dpsZPo{$Xc?*7c&YHQlLn~V+Ln6It-)JtVmIq>`| zF1&p3!2Qq55WA1%YjjkwZq0QSYZ*+!V7`MXzb3y<5l>Lo7|h`?rH0o~m|}yu4<=?X zD`6@PW;0C0VA^mMr_!j`Niao*&LuDvhR#%&GDGKWm=c583{z!z?Yk>i-VEk+n7H9J z7N*S5nF&*2=)4P)Fmxg<7>9;VOPEL^|5!Z?riMEW?&?vl{h}XCwZV*nsWO2wB4QYGbaD|=>=15FoR&K4CV%yN`rYArov!ehAB6gwJ>D{Q)dsxkHPE#Q))1W z!o&^cOqddbxe_L3Fn7Zg8_csXQGd=FD*Fx#|d zUpAPwFr^05114@T17S)GW;9I9U><}iHkbu4QGzt&2d!TIHtYqn#_+llCK%z)i_0}><51kz!^8})GujnI)*D_c zV1j+edF_upvrpF6s(nGEr+VoJDKn^RU^W_F@4*CnrSs}Ze%PzUeg%=fhSvo!5$=}e z8XM=FF>q+f6+9gERHI-92-|G&eXzonIawZ8cP^rO>i#lJTb{0D2j$6K_itbZ8g>62rdgi4y8*e?{&+p&W`5_zfJ|#=nH>&OCifBTBACdd z`E?#u1|4S}d7nt>4U*+%Kk-ccv~>qzBata}aRBVb~QV7(Ez4JH!5 zEadSn@q3YoQ%%r`{JGMM@Y5vkP)ybd4|t&qC!9W+(#pHlbp zV9J%*$IILc6PYdL*^;XidGfPjC#l8t86}i|R8Yb}Ic5nN8(+h;&M`{}vwKJ0Zei&B z3#Qo6DT66BbQZ&OHFSQ18DZ$OJD8)ep%aI3pRRX%OfdUN%LRLw``2ACeGQ#uFbPBF zFBrGy`i{cV&c&T%e|P1fbJONSDcLzN4avufR-J9XIo*HYv|< zFe7v52(w>j_7p?s0+?}z&ciUloZ#wSmrAA1ccf%hFf-K4U-vp)*xz$_iB3nDV775y zZxha}zvBkM%s0FqgqdP^z3aS^^N;gtg|f^s&L!CXf?2L!;j%cY%^}p?@Hz=5n30^< ziDZSnhQm~;mw$D7JIq|eYc@+*Q*f8L0TFXfY5<9Cs#ec;WB&p)l@wTKC)RPg01^tuR6RIA#Q4nN5XYF%46sUjFgC5XQZ&H=o!0t~|+> zcU}`Q2$%aim}Z7oox^$48dGvUujVj8pE@sh{0a|{LtvtY*BLNP4X+IY`USG*O<4#6zg7@Y8&@E*=E4BH}=ZKFv0$n+v^LM zj)qsAqqz>5$4kz(Vtj_q^l>J0ZgF0~o_ZA?!#-$u?GEGK!Jh93atKT?YvuOp2h+{)8VTdx z)1J?3GE6WZIr$A6;q?$qFk|Pg*IO_p zhS%RP6AZ8Yj+L1|cfI<<^fkODz)Uv07QzI_l-%|D7^a`$^#{x}!>d_$Ia=lRIt-@2 z;dKs7h2b?8CTgsx?}v$TGU8_U;25%!NRec1@$2)SYnfg9xUnXrDu2f|};`It6B+;dK$ra>HvJjJ9(@)Kw$2y#iBGyOJsNPaBbMU?P{NU(ejR zCr9&)NQ_AJW$DZq$B1&$_a!2Uk?G8Kz1ZV2&aK)IDZV@y7um-h>6PPPDr>JK2eAP} z%6QvIa74>IS~+4%uN-csJVC3vUOp?->MrmC%pmP$|Fw&6VOANvyz6n&JI-q;%HdVW zNiZYS%e7B<8wXQuc)b7<^tv&QHH? z^PbBZjx)c{HUHEGs0yZn(lrZkwix15h69QbY>xu>Ws*{ zMB;h8w)E`RxI|jswIRdCvsZS8DbikU0Tb?`0WcknUcMD3=t1Y@J_j2fQBT6OS1lVXnf0$r|J1<~Q8}@?fX?UFvQ)+l!2NUc&x$89*rnlj> z2xgSw^(9QOSLUwQe_%=suNHkcS{Yu4z?91BD?9{US46Ibi9ee@Z%iRlG&emmgGi+^ zTY8q5r?qe`)`K#KM_rx1oNZ}~`S;wDU?v$YHU%bV4d>MlukbqI6`1~p*OxHmhS%1o zN;^xv!q?xM!wgif@EXbWV0)NZhS!lWK@U2w6UYkhnSEeN)yv<8gJ9<8@!Ha3V>IPS z@b(WkBC?Odu5H}rp5zI(Xx3Y~YQy}Md`c(zPnhK2Poi98JlpecWh85t)0jz&CyPpy zk*tJ^T%Ufvb3c(XsaLW*3y8$&lw?hlku^lBGO`N)MQboEr4eOjg`@*631Y zMCWnmb$d{o!UF%@fweFddY#0%{_G;rNZLqBo!d zE>a;SZ13!KlRj7j6IUkuJkpk&N#snkLeDg(X?fFsXnZD5hUg5LIfDkXMkI0^%#s{4 zq%b$aj52gyf~hieHo^q+hTEGEOdH`+?xy|e(;QyH91OE2hnFy?!348SZm+R0;|#B7 zVAdO6pTUgJp(Aa${aHLqoI^*LV__y3I-_AC99Ug%X5YCMo#$Z6R44PuD9n18hKA0r zXLHtX==6bUX6W1sQ*P+I2GiQmDLhAJ30L>MX$beEMdr2}%nbF~k6+3xmg2g=6zA{~ zs*hum^M>;pN!ZQ)ncGD$tJTY0feCw!gK^)L>FY01dk`j=k(?JFv+{U753}CzdKadr z;q^U?&Y}gGbAps78fPDrx-g1eX*tMej{ZL z%H!(p&RSA^D)pKO6WLX+&iVI?hhgG*>h82=!9;8C1=I=KB<((cN$B$c?yQYVw6&Xz zpL*w}=_G$wOr$2`>f9Mb$|nTt@L+7tCsLO2nYAwG(eD|Naw65UWn^-@Ds2<@DwxXK zgbAaOYw_g>KZ*b0LFdeaK71iB23WE&Z`~r(kkK6Mhs=1GBE#!@m~n>JDHq7ta9-}7g3M>BdaZ_Ore5xf`AsqEGB3(j}(}t&dr<(*e}-*V0RHB48-tI0(?|7>_21{3sP zZm%0*VushdFqMYa?n7m4I4?J&hug6WOgF=;4~+X3@_b`{I7~3=oL6VB*ZnX()yqFe zy#}+|@Y)CyjOW~5+Yh5WhSvcw>kO|Fn8=N_N3?MBxuFpm4O1DFD+60{Pm%L(_jyJ) zZi6RvU70es7qk|Rd69bTkqPjx4KV$*#kvv+&&JW=9Epq;>kFf;kz>!j$LS#N9CBTC zoCXuQFaIpM^~GFq9iD#Wh7w~$v&nRI~FIV^ffVwB1Gq;|l zTxr+77|1WfeK7}Sv(XnVE|KXl)6pEyvT)wcPL(*YNe;@YU4&QI2G|hp&q+hKWCrUW*Syk?)9< zWH9wE&yMU#B*tqKQ)`mLU8FSG`1D}-EYj678Xk(=Lc~2ZnJVE@A|*!Me}zem zOV8TpO7@G4$hkyHMyE4(6Di8LTk(;LWVHOxMB*<<%V$10!mg0qwi`*A?-j=Ff2sXT znD#K$-v|?hk>3PA{lAzqqdI3+Ql9YEi!uj$C1ot2j-KrTnE5)l_*aADV4}v{@(4_@ zcRMftx%n$F3k|PNVcHvBf58OvhVx=FPwOwKV$Z7>tA^J-FkK9zk2TqlQ6sn!vr(G^Ew6ju-4r$T@9~A zFcS=~A7O%Hiu1}mT1mZ{k7hipmw)_pgPCl2T?`W(t(@20^jBlC(7z|Z^i;2-h=<3< zlQ7c^ujS4wd5m*jd_>c;FMk0uLA}Cl>UiNa+|~hRlHt_@ zW})GA4oq-dc3$t(IBrhN+^&O}qF%-PGTesKVBEX7U2kUJlM=PpV1nbjV@86ul3(fH z^{-{#P%j>q_IMo!v&!(A028bVoYxR^!sBciOt;--U-tJ`L4sqq;nfu;SZ_G5yS-l5 z!1PwHa2vY@coAlU;q@0xu#$0JvzRoZE;VE8cpc}J>UAo=3-{M>m`#S)447a=UpybCrgE56&hGXf&8}l>!!W0=yPnc@M>s-fZ8~V$0 zEliEUOo6F1nCD@tjPkq#qic1~y+7BdyN;usqcVQ{eQ_R4<(c`fZ`=h_DvT43EFn^q z5!pzj;taXs;g~iz&^u?PN6sV?&xlMUQhZ@Lvx-Rdfb>X{8!6%cvrpFdaPG;Px_zgY zt5|3o4Kvr+-{-;<8Tg%mn^P4%pFuYEKi5XsZ!35(uw^tR+a>J|f zEgT08uih}hp5nY#dMEKoFe?nNPht8QUVE|35B5Rl)q5*nBMyeCQZN79@)XQK!|NxQ zVDENb?uvbQ+iwC_5)r_lx9R;ArkpG zooO_Y5`L8)nM$PSoAk(`cM(~i9(jjI&ARl+`ICtJJ3aD;i+r6PiE)w<|1~}GHj(Jx z>5-oIP_K;kxtT~JBl01U%I$+Yk8Y*HH^$z}`sdN~$Y>(*jGDgYn6>F%drf9FxG6pI zD3Qv)(j)EeBO)Uq>2*1g#F}(w0g>3@!5c7w^88LD-Yz{-d_S#G&B#R~U%PgURTfAiF49?x(U>yP+G~;*5sC7O#vto0{^B9#+D)>)RYtPT zdy1L%c*$xFn0k6vvc6D8vd)}MExJio<~?)CdP5n>I_PN%b!`5uN0gDQ1{LfDnl+ai zrIvrXI-m|Wc^O0w2x$+gFFkktTr4wM;OW4=2_Ii?2`1@_Jku$=dHZ#{9qXXT6||WF0w=v3j&*O~56!W|cOap^RiTc%GUb zlRs;OGLrQnk@Dm!#f{$Hba`qmE?y_k7e=y{5{bmb%b#`R3&Kd&vqTa)4&8md)Fxg# zE)YhtE+JBGWWA@1WOaCv{^}tmOv+yiLr7)6p{HyGhyGd3D zZ&u?)!bsMeM9TM+tjn+rdyQT!jAZSzgw|-2KkE}^B9PwmWK z;J*v}0ZeJ0r@>v*{N3ndxRH@u&*xY<+&3kVKDPxYK->z7^d9NX}265gBcA|WVFvpr(@LpFPLhB+52^7QKLM) zVXC+xlCQt6bUMbG?LL@dW5xIeOxcM1UcbOZ4V~6+(5HsZ2{6@0y+*>68uhv##(hIT zzV>+&rot%CMwpnP)86nZ*{KGLBbwBVOn2bIhLZm#S?vD_O=~F{IW|OwLK6KkMnCgu7 z`G-h!ZhE~sy^B{ye+?&6uFRHvYRHxOF;|}CbtFnz(4I)@*yMiiwm)Ik=+(>A>MZze z@aIYI@k!Fg`R@i!g9)xoI5dn|EHS*E zg9)x$JFg91uU>0eC#YBEnS%JOg{d;UF8hpQQ}TLv?l$}dCaPZk{cA)u`=H_VD@<^u z-FX3f+OX^A-0e~?e;ba2S#Nl)fC;YQJFiw=ujm&%xu;(KdR-2)(eQc$Cb&D`y!><2 z?q70e&G5Pm#$B#(wa)c4%W|0DzJp`@bJV%(c&f_q`WvR9;Whc+jIrb$joe3Z(s8D4W>S{q&^-_VB1yD+)EzJ=*)c-`UhBO3*RUUW z`cb|7b5xxlX=lUhUYOu+SME04xrWa?s+WIXo(vN=yqf>Se5l7S{~Q&ENvM~<4QId% zHN0w^j(Yj$sBS;=`AYTj*Xur*k$Jr2(?iwz^mQ918aGd6Za<(C+#hu9d@sKY*R9Vl zJZ-4uX_zTc`>z*Z#^ouG!}i$7xnAa`~fO_a4g0W-z$`V%I&Tk5=CL?K+SbAIEA1@&qT6ZTpPGsEy|_dDmF z$@{R*t3M*){+bQ5LB00zdL6ilr)vzac`(5p-rQc@{$QSu%390s^&U*6;dSnxFuLaF z#K+Tyb6~oum%qOX|Ke#4!>cb$a97&ZYk}A6VVFVce9lo!Tb^oR{0b!sGB*m{o??4KO8! z*HY(|u`h?c>ej6jSz~y0gXwR0je`lEYH;=HM!mxG#$uRthF9TMbs~cduVY|>XCZQX zT@SOt@LB{j!tkn7k2Xv`LE*gIyb(TD9u2e6@EQw~Fuaz)1kYyV_Nu#eoycax>sXix zhS!ZS!BZc(y_Uh$)*XuCBGcdWm>Tg>o(!%iS3A51f8V?gZUE{pm`$@v%a2ZT%^=b-J z!2g-sRt@SzmK$E(V1nmua(i75)5Y+56=s#;6=}%+rE35;Z-nQlBVl^0mw&x+t-H3lYlYRGw=M7`Wzl({X0>91b?{`w1Mli_t}W5!|f zd8FK4BVkGnujgUvHp#!X`3)v`(#d)Cr$XU*{;=)pM8>I?zrU`7DKflXg9)CG%I(## zh`G-2It8YM;WZg1c&aM5*QYR(46jyA>O|TaUV~wR=d5yj&4!s`cx{B~Xm}mEJ>xL> z1ebV)_pfVVrWsyKVPb|?gB{ohlh20b_9}syWq92K)7$V`0~0)TmfLI3rmTAnuM1)N z8D3Ap1kbbO_WBuSq2bkK$2yULhSwOF;7K{>APQHEE$W{mmo-P3)}tK92V3A5SoI<0w~$auqR15Ept zvTn&dPReYx`!4LuIdp_6fhksqLgC&M|%+m|2!i3)Up6k0fOxt-C9^@gGIHB3W8 zXGCkx8Cy%e*wH-wwHBtCq0_Ss=S_yr9GKRIPK&)bcTk;n-tycFQ*7vLzc*vm(76q! ztD#fBZJkJs>eLMyzxGe*i;G}-8ai*oY&3KZ*oSqdp)(0)lcCdOUyg%@&h0Rp4V?z< zn4=7x@i37#GJZ1Gb<#eEwyzTzY3OW#sc+~!v>$6oL#Jea){v@`dEHpb)09Ut%M6{> zFkKCuDaEYE44wD^T)R-6y}jdkhXdxiwOFdl5#TL(8EP>BO;Ho;oWyEG$CgSQvd)Er-r6F#7ab4xN=w zXQGtZUH1#uYdan~)+gKwI(f@;5{y3cmZLm(I30NsEQiiYr*lXC@-*&(&KzM5_Lk=a znE0K-`0F(RMxUn3(eH0M9iu$k9D%7j8N3|rGr{T1mooeN{TPA`YfPKVMy zhR&HV`Yc}#od;m_>AoEO^@-D&BxUxu^R9=XWAyu(F#1ejj`G~^bc}xg2&UTT_hwyb zpSeYAj6OG*qdfP(=#zvw#?SjOHJ^)@TeD>zpWNVWdN|By!nig}J$3JX@3vDM z^OZ1zh=lJ|-wUIk(kk#XYhd&Ud8+>%=Cw;sTRgx<_BQP zz7WP=_m5#p4V`93a(=O1bo})?3r0URmZR>E!02a7bJYC{=VjErWsEXwpZe=Q07gF( zT2Mk8a+u57%3<`=ojDlyiRRd}+D|m6PV+L9K0~MKyMPJS7k?0`93d@MA3BvPE07jP zWoLCFQu=+mPKjf_O^*x?MXo1Ol9BZQk)kE;^B~bk;PyO`*yZ`lvnG_aiAcrLbe*P0 zqr5mh(jgQ%j!0QX*7=UfXrD2m$h|~L>ZL0`L!`!N!}mj3KN5*IO@BvXqhru9>V7ax zW>y~}k^1T78RjB}&YhvGnM5kKN!M9Qq{z_uCX`j!jrPfC`Q1a2Lx_}RjD%B&R2gk} zc_{04BE_Gim-$H|rAC>nLRlM#B>qX)+2&aG3qz+ECNt{P>-1`o@cQp>?P-n;bW=Oa?fI|FwQT2pf!TI z*Ln3LOXgQ84WCi%!Sw|7;-*R3Y%Ej^TB1`5GsEz@6K0*^H3ue` z`JIR>YNl!*pa^A>YuVR>m>gA4T;jIK_v*A?=6C9gz z_t!+2CF1KGn2@@Rgb9?;=)7J26dOT$|ybgg0 z))KkBPKW7ccwG(C-|%_>CRlIe_IeQ}Zg{PM8Dx0<4HK+MoR@!W?B1JuK!#TgW`yB& zE=;ht$z8AOU?v-0Q(+Q@*Q+qW`X{&7moRe;uX-nN58CkB2PRnU2 zCcy;jDCgylx#45Vb1)m!%Rfhb2s6#_`U56dk2xUg0+S1SZl}<|zN#=5LtghSwe^v417knYrr~ zgK4N<{$u62Fslr&aWKJp)p_mYZNup>Eex;MV5$wTZ(xFzu=DEZ_1e0GW0QK-hY4?c z!E7+Rj)e(U)Xs~8lxI61rlWd=`_rY|2(!uXdK@NLndff9*I>G+m%m=?Vd^%`zqZ-t zWafkga^F0&%#6O|7FCAp0O4Id$s7PvJj|e5DN*;#T1eK# z%1G9=L@Hj+U*^fmNY+du)rQw1WhCo8A~E%H_YkFAsh@sOMzRV|VPwvg68i5v?yZbu z9ZRHCy;uOJZQ^>iGLm%(k?0)pil*hHN_dAdlJz)|O6{-Aa}e=bq>N;JNTld_>1BV` z&&o*F)_s_t7fM!ZN|+i%;?+_a$?8m`_;JbddyQ5`vR)!mWMtLtD~x0vOQh7ux=9*edi$$d8Oi#UNJPEdo)T`uCZ`G`S$n$(-(Trkxv(J0pQ+8A zdAsc-n8YF}Pv*?#^4vB+8Brcar26IjS=TBfS+}~#d>O0$*`{0>$$FYd={(8u&k~E2 zk*t+O61u;;Pt2t@sn@@ik*r^dRB8!R-$LnfC2O10gpsVBiNw{*U$6a?k*vdsRLsj? zualLLtaFGI>n!1~*A>c0)=fkrFNl}FUQ?8jteHfrv^D%K|B5n_^%jv*Z4H0cm&!=i zFGR|^T zbrX@;JZbqhX|;*yh`LW1$(l|iswMP~s0GSM*6T#d)vJ-W4L?;zvc4lysaag+Oe@FY#v0QAVt?_>rzs}t#O_*l65VSYR&T3 zYpODm^%9Y&X8G&2RvF3qgGh~Lx%n_$!e(a*BUuL!Nz9RYUFOX?MH$H&MkJzM{(9Z6 zjAT7QB&J^edcCfUWPM4bNWJ{^D(EkaWHl#}cuwkdk+)t)DkE9v5UJ5Df4y!{MzW?8 ziD{OF(e=-eBlgsDx&VZ*b8k*s})By_eJOiH+yPgF*-h7qaJEPuTwDkE9X z5Q%A)zh3VvBU!%?iD+xMXPZ--)N9AHg^{cSh{Ru%{^~&5FDWhCoPBBd`$)^lW~j_8v0v@(+Q8j+d>k~NSlVN*XbK-K zK1UeIYDFZj^-7QxuGf*uNY<$?@`M~K{d>w4%1G9oL=rj+nBx@y+GR?|- zGD7P0lQNRkC{D{~l+d{Zn`CuRMzW44k}$F^Rz|XJBT}YW?z&cL6R(BJNY=lJlxS9} zuUxKV)g2&=WbH;I_N27@wXkxImC8C=8Oa(zq(;vNFGzDpW!<2RWIalxWT|*%UKf=T zKC6smy+owq)%;m+DI-}QI-SLmwHqZ2@0H&xBUyhtomcW_?QpIzlGTbxsn#p%^*T%$ z$vS~ZmDbCjb-pr^btRF+3@M?1PnoKWWGy99q36qfueHiZ)=xx=v^D%$+ny(kWbNi6 z8RIbA@<%HpSp$efHETz28{VjlWKAa$*Oj@O=fhslDI;00I2|Kvr81KBk&C<}Eq@k9 zseMdF?=Q+o*46_#chEiMSZ@hiDI-~j5UJ5CUH;ZMNg2sH$LY+H61MSrU8am=T}Px; z&x!n5cPk@Vj}nP!)}dandCExEVj?B4NeTV^^`0`4^(m2R9rOEmy?#_ivi>3x(KbBX zn^knaFp{+gkxHEp{hx0-P#MWOl1Q1B@Ho7}vuKGjl65ALa&5yV-V$D{jAV@_Qlh=w zi>&YwcA_$pHI+!Edih)aBV{D3!3DIBdiC~}u)8vnbq$enz3w;4Tf!;INY?X2%I3(} zXzBHOOBu=flt{&Ml68#NYojufwbg~pz3Sy38%HW5S(g!sz9?QNd%Y$oBUujqSkSyHalPfL}N ztS^a_>Gh5J-udt^WhAT7V6?S_{^RmN%1BlpBE{NY{xLsH8OgeiNL)+kp4ST3YqBzu z^#qZGdil>dRw*M{e-NqEV~XFa!4P32YiA+}?d2C~!_+lIDQmGZl68#J(Gv2KAJ5ph zOBu=flt_v0Deh^p@Vv1}8OdsNQJqLkOXxq7YNL!~b#@W;^0#4$GLm&3k#fD~a+J4( zS1Th~w>lkNIry&M1o&hdUMzSs=QZ`$>J|N3w2Ah=iHf1DhDv^kmum(Jw^@1{z z^(K)jEup`ce^N%WnhYaLk175=rL8iObqJBtr=?zguYt-)*3Cr9w1j@I2b7Vl$B87= zYaXo;-cw#uMzY=_QljgP^SxPLDkE9H5Q%A)e?4D+xG<8nGm(Ve$@&*w;jz&{8Ob_| zNVT@cIo_<3m65D7osJ&$9wy6`GT3B9U80O+T}Pzsap^Dr9QBYglJy*sa@{MVn1t)~ zkus9?JCRa7*X!ZU+V)~$Bx`3PReE;g&)QcR$?8m`QoY<96)xe)%1GAvM52|_8vd+n zm65Ewh?GAgS>y1M_D=mYQyIy6iAaqeiTv|Ml`@j`DUmWgPf3k;Ox3lpR2a!>MI>Ql z^-@N%1`~Ap49-Qm5JKU3Fkq=t_vBUzskiA|KOF=W-_|6r4>W|s&fStk&wP_MDz z;jHn>NY+b4;*UtnUqzNUq<-4#Qeh~N;ng*@QnSYGLqF`1gpv=lI89oqs9=qD*7Su2TDYt~-gdKHZnMzW44QleSz%r{)Z zTa}Tlr9_IfUjBR8^{)~}vW_KEu3rAE@ybZnQX<8c*VV#E*0C;Pc-^UtWPM1aM7{iN z*zOu(Butk{%1G99BE>r9{aG(7BU$ediRujCFX2DRNLHIs>|Z+D__Iz? zMzXFVQmJ14dE-81B)_clG*7ropZM++lagNekAteMJ4*4IQz z7Nvh0ZksV~{z;D6WS!^A$`_L+5XpwuVmAYk9Mop|d|s zM?^izIwG6#@rY_^f;^i{9=L9q5u>5EA)z4LfEyaJ}bq4PdW zKSSqFn1QO}9~(^*Fow?lFoO)86JSaWouM#84W02YqYRyC&dboLgc)z>tbrL}=xlfCe&^ZHUlA$vUW}~5#fSGLQ+yfKgmY>^;bIswi zV5S&4l`stromDX9hR$~|%?zD7pRp|dkgYeT0!%nU>47?@&1=M0!xhR($>T@9Ua zFcpT*6qufd&Rm$ehRz!>eGQ#znE8gzuP|{#XWJY2w3nf?C(KYorwdG_p>s0KNJD1` z%o0OqEX+7VX9~=6LuU?5nW3{BW`&{iG0YT0X9G-?>eR1YAq0QPI^jPsGYp;WZ{!pD zs^dStw}qK&=o|sF#?a{lQ)%c7f~i&=f4vegD-4~fFSY97AUpn9Zu=uUD~S44v*U5gvGO*YzzZ=XM4+8a9CkH<@O{QbT!Ocz7vXqdLDm@3urmuDc^ zm{qFdpXXnNi5WU;V5$wBKVW(rIy>FY7&CMZhUsVM^o7}^I{tni4l~fu84pvR$0UOF zhF@nIOsSz$3DZn<{O$ZH%qTpfmvecEP&~1=zI)QW$63~6H^`kyb-;V za~VUYJ4{d2@sGocVAdNtWiWkJ$6ubQFdGe>IWYYVoy9PbX8Gs&RWJh$o$p{88aj0* za*l84G>2(s=oG_@Fm!ssv^I3kg&Ae&Tmw^V=uCncr#k+5;}w{$hR(Mz<5kDs?{)8D zj2Sw+!;~31U10heI;X%)Rvmx6M#97morhqi7&=Q}h8jBG!j!9yzkU9K8ENP=oWwfH z(Af=UoT0NnOoi$Ir)_c`*9)f1&>0A`Ty^~Qx(;TFq4N+-mFoEW>p7SihRzC@RjT7J z&*w064V~X$))+bs?&kWBp%aB!XXtcCrs4PIomO+<3BFn3)9}vsd9|!_{-DqUe-2-PEVMQs^eex4uR=r=uB{o>iEm^ zC`^f=vjC>Iq4O?Ge?#Y6n7*pxZ|63XxdvkB#9`v9Yp|c()(q7gr{`T1nQ)=iGJ;Yd59e=&r!HhC=y2BJ1I_JQQ zH*`kAv``&?y&i^{Waun|iK>pj-`B#F8#=$iv{fB{d0IZq9A)U72-9A5{N)({GvCk| z0n<@+8m65!rJgOk6=sQ{^9W2#b^PUd0jA2(seiE}nJC?H# z8an&K^jDpR-u5{XW}~4~0y9W;iqVm?($r5E!bEuf(A7HEJU<3zvg){cr5;lh#VIfi z4V?urGgQal&Y!_FGj!@sWvr@>zu%j|v^I3w!^|~wVlc&qPG6XXhR($>T@9UEV3rs< z(_wlVI+ZXh44sc)`WiYv!>m#re}C0`gtfY%vkS~>L+2=%p@z;Nm^FsZ9WWyeop~_T zs>6*8&v@PlGtSUC@KMG*U&tHWzi92%84gos=sXEitU7JII$yy|F?3o^~kcl))ra$6v2m zFslun6sA6}mB@Fz7!NbU z(3uX?)X-T3Q(@?Q1`{=OHp9#}bXv?{ZDZ(kg{d@j`onZFbVk7}R~`R&UJTRC(AoA0 z=4aLMkLNZpC5BE6W{sh9CQN@r=L(p0s^g!>Cc+FdbY{aePjgPq3v=?#^LxPzGIaXF6d5|#!;~62 z6)-IfowYC{4W0kMv^8|170d~S&QUNO4V`mg#;cBhznBISGjzU!nPBMb^9*Cv&>0F7 ze4bIx^-||?vQnG`Qb3(K*Q^v;RTVR!r+{? zu)ytK;d+fkr-*sM{U+D5%}*#3&G{`Jt6)m^l23)F-X!7bEo|qR%nL)XV=Z9(|ONEcce;C}%-|S8K6J{w-efm65D(iNv(O z_J$6ZaF2PyNY;r&%8jhC%1G86BGv6>Y&_^K;n&JY)=tlp)l{uKHHw!MEQATM0qWdk`DQ^8oVfsWF1H(!YVBo ztNxjPfHIPG3y}opDnXWi&wXAQ$y!UKLgyC$-qd)ZFp|}UNHy!@z-!x7Q}C0t#s$hq z*6l>f)XQJ5mz9yM^+YO-dhPU*Fp_lyk(e<{T&#>_-A^Q{E$^?_>&i&h&qQjpHT?5) z^krcrt0$3iZ4H0cNM$7J5h9gZuLjMP8u?HOudHpfZwmHj!d&4gZL`O&Q6W zN2J>D`dk^ws#nQgpuOz&FBwOvpAJ+;vicE;X$k!!>Lz6*tAa>{dNuO4;aX)RtKO>| zPc`duvQmCh*3QaE*11Hgo68KqawTn(tcl7<)xXO@kj@qb}jf%84Y@tDo2;|Caof%1G8G zBIVlhS9!DAEfq$x`Voohyy36c1Z5;^0g)2*^4DvFGLqG788d)-_3)Okr!tatDUtXz z85<+KS+kXqtaU`HHOpVGJzo<>vicE;YL>rVcPS%T%Zb!zmVcd4uv{3)>PV#QQK{Du zZ@n&7MzW?6iKv&qUe(G-)=sa}U+U$rSBWx`HI7J;dim?MP#MYkfrz`h9qh~Jdh50S z8^TD|AR_J>bdcq**AvP});c03>gBIjt2c#_to}rb)GOvK;eEdOc}{) z{5Cb^`bE%R)5wywZA9m|W0jGtD~QCnf)Hf=MOHoaqn(o5)5=KJ7cMeOvfhGn`N1Yx zJFXN)vW_NFuJx(`PaPp7>q=!L>oFIZEnZ8=3fF6mGLqG>ilh0?a;)_4DLs^ttWiYD zbR7E6-{&hMSw9dd*Q{-7+aa?x_I*bf$%+%H&M09jQCee)GLrQ!ks2eb=v`qXt0$32 zGieR~S-_pjNY*MMmFnfLx2HBKVWanik*t`DsMkHDgnN0kGLkiyNO_Tz@NcrhBdSIj z$=YibUI$B-|64ptl##3vM521G=g)db8Od7YbPf_PE;{*2sElMadmpdj{8`FMQB%1G8DMB-XPcQg-=jg`ts)^9{g+eitI_GYzNBaCF7NF<^qJf5uZQST~cBQJOJ3m(_BUu}X)M!>Oyuveft51cItlmW8n$_7`uZNY9tPMoUHR~jA*3oN)k*tYC z5_*ksqqjBQQbw}se8#@Kr?h-auh)UfNLGI$QSGl|$O^Z{ZOTa2d>3gcUNNs%qiSI! zt3Q#Vc9P})7LPlWk*tM8;%z01$NW6waHr3Ok*py^%5+a@@6DQ|jAYGsI$E#R-mJ!7 z2qRf%6G`YXWdK<+pQV19qKss%B2uN-H|lxk!+Ku|BUuL$Db;%UkIR=TBU!UtM90Q) zlrY@OpDQC-Me7)uTEcz3^*Tx!$r?(eQoa0V9M32tSv5q8wO)R&7XKDTvW_NFrTz5@ zZJ4@-D1C6bGLrQOk%(rw^cl65JO%GNRt-Bpor8_rNhvQ`r*Q!oFS)V5y> zBUzn@RH&D~4TmTrS(BZP-g7z1Tf*0sk*tkQN9W#c$x3a~hWo7-MzZ2WV!H0Vh7@5_ zKRuv~WK|I<(h^?k&5C>@jAZRgq@snie7QI4EM+9?79z!6B+IQe!o56S8Of?9QnH(5 zeMnY#m9pcv!bny(BIUYr@bAl4C?i>q5Q%9C{k{B!GLqHeJN9Mu^6x1pC?i=Ti4^ZH z_40eYq>N;3CKAyS`n}q25Js|2Bob4v18Mf~(R_?Dk~M=!l^%)Cr{%-@*J@=XtIqfA zm73*W&mW+SWSv2zW`Ai7|2KzDP)4%m6DiTwIMX|#zEDQ8>is}}=~2)BEgqeek*v6j z=o-NPEgttOBU#IdM4L&yqTUkL{ZSanI+RGYp53_XqTxMdkTQ~0MkJ=^dj71Jm65Ek zh!l5}61q7m?A5$R7|H5Rq)fg1Syw3|S&tE^j*8bfyux$TN6JW6y`MO~>ygMmZ*){f zvicJ#*7KCq$i-A$?^i~$-X#(>vWk8dMzVSmDY{#}kKPq zk`=!8^}8~X)&3V|HuW0o&ALz-$(rIKO{C?oPHTgRw#M!og^{fLiNy7cz9m`VvGJ=i zl6Bm#)LG9){aMqMk*q&mMDMNNi&v`8_)T)__nR=1RY4@7qt}i3aMn6yBy0QM8HYN0 z{aM|Wk*pC!s?_Uruh%qXBksqRVN*XH zzLhYNHIYc=%`*4;&%eG`MzW5sM-LiV4=E#A8;O)Ag7tV|L8^4FYLqLv?Z0(lB%Tn) zt*BF*FoR$ciQLSV{)UdbDbM5_PtQs%UxO*-f=OMflk3x+f51#JblTM~jEpjL&Vng7 zbZ&sPN z)iHUz+=%-fX0D;rY1_icd_(7Qn1!n2dOx*Ed7gk-V(5GdQ)%ez)POn4&^ZZaiJ@}? z%o;=IMVRG=&QCDw4V}Fk7DiSWI%mObG<5EQsWNnagNf{(e;+)(QDJ12p|cRCp`o)! zlL+5OmW`@p#Fl!8*H88CWon5ypj8q#sC&LsQIyb?rGjv{t>1ycw3bWqOX~jng zdKx+>!)!2gu7&Aq=sX2eW9WPe6E}1kHDRn8I)}jwHFO5UY%+B2hZ$+;ya}_}(D@T) zoT0PN_Ut0Og*U)(i zrpVA)15;_}G-z5FX=>=qgz0GLd<+vcbhg>K zFw#YJ{Pj8vroEvv3?`;J{(3#+ybPU{Fx^zgU!K1mW9YPNRv77R=$s8xV(8on(^qx; z^?DVizoGLJOg}>>+Pp9_$j~_nroW*x9%h80^D0bSb^PtT5hh{i?7a(RRvmx)oC!0* z(76LG9>Zi1;WbY6rRW$4tvEHrf5w4g6k z$KO8vV3r#?x5A899e?{Qgjr?id=E20b^PVocQ@9MhR%gBlT^oFp6M_f44p4wCaaFW zJbUcU8p+T(6Q*2s{N=eDrfxLOz8{y7V#E-#MTiuA$)_vW|MCOUV)R7LaaybjY;b^PrU*_&$)hE8Xg7OLa# z_sd|`8#+(JL=Bw{FdGe>ecEzfVCY-`6XDXmD{Zc8u#dvDHFTGJ1vf7f%@Hq-*qTzEs%s9hmCQPZ} z^ES)`_3^J8dF^=qWBBxkiKvgi->-+6Z}>b1GuiN253|Vd+2=^=u0H;Hod#23_{@Nr zY505$v)u4$9OC?}KK}MO24|fO|)rQZZ?P){x z@z-k@%ud5+2Fx<`@%PtKn7l(W?-yHOmaC7yJOxLw=Ndkz!mKoWZh{FKKF`6dHGIB? zX=C^_>Oh|wK3!qD8b0U4Y&3jIVTuf&B`})}pPylh4WE5GGBymKelWufpQ~YV+RJ&& z-|vsYj5K^chH0oi{&5)S#M*2490`-JKK}BY0~0ZProuE+AOF6*4rYqs)1@Bnc=enW~lo3>y>>pYm4F21*SxO{Nr#sOqJpD3(N@h@t3FBF{}xOPcN9!hR=O4 z+YFygFyqw6-_D_K%;grD*ZDCp5%uxcYc5Q_;qw{HWW#6g?%Z1$K0{zi4WBz1G;qxlYQp4w0m_FfsIk))hbu`Rc!)FXkL&Ik-%m%~fGni)T`v- z`s8@~s~V=l@HwbIYq;Sv9A>%U^8n0B!)GnbD#K_00Wj)wIQ2>$&u74_H+=4a$>|{b z4zS1PQ(6c{@%-n|%=^WiFvHZxKfiv2X=?cN zKAAJ5;qx#|(D3;iX0-bF>ou&HduqeyRhaSWoX zU6?6`&%ZF`hEJElw4vcM2Bt!N{Nwo}n0baz+tXMx)yF@cOJK?jpBXSK4WD;l78^c) z!K^iWTA$AIAH(NtnDvIwRG5{9&l@ls4WD{Lc>ZJf420Qi_{@OWX!xv#*=hJR8Ork? z!>2z?4qtqc%TAG9^NsYpsJ-MIHPJErm{kt(>?}9NxKF6PgjoX9P<{OS&L1%OhR@+= z@GM1r(u_lx=7!HbFx?HGN|;uLPyI7ld)3E3zm9|HX!wkUDOMlXlJQI0uo9-w@M(J% zXLZA83d{h*=VzFqhR=z^U<{upV1^k!d1teC8$K7olo&phFk!>z=;7p2AOHAy0%n5Y zv+p^a6AYiLU?v+rpTUe%AOHAiU&8Yr!{<(zi2C@)&yO%s!>9MT+{+j~b72-3KJGVJ z1X%{$*p00l@pG??>}E2s1HrVvrQ-BNrbhTL*{d$zjq@+6nn;uLIM+4G3b<7#JFA5M zkAIJltVD;yB&)g;DZ3=m=VT%g^@-rqnEzsz_*@7R=IdKyx!m}P*Gq~zE5-Qi&r^{7_!PB}@pW)zsV0{a`kv z$tCT42~2E7a=DHp>`t7?*F>0=My>~8HXFIhVPb1t`dq7FHW;~fzyuESpL?a`2aJ?e z)a5E7oLaBWFguN0#V`$xT%%xO>$A)C9K#`XtWJl??k z&hh4Ia53jqBUcBQ0wdR1FtI(w<#ONLRX3&3<6y#?i(eb(neTVOgp6GCVPboe%hd~? z_?jt6--4N2IEHP@tu?#e4>}KbJqlA|Ft5Q>MI@JVOTE5= z$-gl(^AAi#Br|j1C6w9lIUc6aV9tRF7|abYl}33Uf(aTvufvoW%-1m0My`KhLWa*l zqq+AqnB!q0a?;C6?JE~K+cEnlo(8Wa5*?X%(z~BX)jqXn^%|QMM1o1@%neRuoU!Zu zXIE8_NLf;@E-8_dh*Tt%Fzh1Dq|E>8lgxCo$6D3Rrl#IzeG#TyXLss~?nG-~1{xo44p0Nby)F%Vk zm+h)LkVrJi=V&5ThsrA9+SuK#$1b@Sc6Z{*kwK`cvlH)O!zq!wh!hqiI=?_9)FLtR zDUqr}5+hrPR3=6CyquaQMLH2FNhZy@iMh(1Pg3LyA{B=v zGFx3FiP?WFvoh%(zXy@(_ZVL^(ynWrv|I^HI4aEl|2xeaC{JuexiY(_2dQgI6lSx| z3;+83Cd_@}Bv9XkwWk&&w(Ol&;6T>l|g>iRqqCcq7E z?8(1>ZJ7*Hks+6ya;x-|JD5a0$d`Q0$0s&ZTzMw(kEwNA4wJ9t3Bsh7c@xa?4CQfI z_r5}AoXfR8Ci}W@($xzlq`CZkdKt_rBiBRDr)GY+T<+W9Qp@}nOh+Tv2AK6mu0~hN zD&caS8rW?ZCDAj)5x_2CbqJruh#)r@s5V( z^4IGGn7me*@7Bk_#MVrgE8=a#nJ~jNms_J!uUBB28o8=qVym&swHA}qwPm;QygOjz z>I4%sa+Scu)_Ip}y*Jk#FjI_NFTu1ia;<}j?I12!@{>|&shq2M$60gv$3{z-u12oD zFtNSK~-h_$mdM;N_a-`1X?_d^auDqmj$Y1JT!`+sVt1V1y zKXti&MVdM`hQKV+T>g89n_z|+xt@lJ?bI&UedLneSV|lStcF>px%_=v_gX%!VdVOM zJJ)rDxwaSR< zSt6BvC6`~dK^al)e*DgH$8AtIk zEu(**2<5pwvvWUX#Q6#$rH1q4FyX1vKK>qDtBg1|xRHI(P!%d8sxd@DH)O8G{mO{y z4I&l4Nc;4qed4_+?emLMJtDP`Xl!yy%lE%Y7;%1tNa>W!s=7A|BdYU>L{*i%?nJlQQI$Hdy2b2-jdqe`-JATy` zWkj|ABu>J08)h8yqm>cWOGF}Dq)$V%Mf{xz>AgH!t14HV{pC4B8F8LRBvemS{yDfs z8BrD9N-m>3(_jMX>@Ux^%7}B@$?O+7nagvXGNO8yNX2GppP{r*{M($RefGHxMxFiT zxkwptevU}-&6($5{o92R)mcP>s`BT0UKvrPK847=gVkocWN$^iq&5NFJr7q#eEJZH z{voZ=6;)mSi(R6>1g2P>-Fq%FKjN>ZDkIKM6A5h1T%Jm0MD+`ipi!QDR*1kmv8T@=wX-#(ey&DP^6jjO2QqNT{=@{4MsAGNNjHCplH+&vlG4qB@62X)jr$`g=<_ zOBqqU>mqte@vE}#5=K;=h!mfYIoD;%i0W}70YkM;8By)aPL;2_xxa+P%82Sl7t!;E zU-haoqWXB5NWWFkTK!kB6?VEm3kR1=jE)$>Hk`pIvl`G(OO zUo%CuMj284O{8>>+}d0{_Xq^`L>aq8HED)0qN+DDyXM=29kJ^>kFnVv2(*R?cNFJG zc@U85{Jb*a-05zo7u9Xv@+?tCRL9Sv4G+nzdRG}y^}C05?k%eSdUJiOjHphXO$mpH zYJyj_Mj26^eJ{P!OM1txW74|uS1XheRk!;Xbv&=j)Xr02q7iZK;Ch7rVwdFDs*E@f zyPp|%m8jZ)3mbp6R2fmVoWrVR)MBC#Lae=or!pewh1(CAX zMRlrIHRw@cR7Ipv&#V5EaPToL*@uWvp=bfWbgL`y<=n_2U9j(oJWzmUP`^Hl@aF)pQL?CRYe2D z@6Dw({!vC$rB5+7mWyfvTVDH=Tn8@@MpO%k6uy;Nb?no^h-w*;DjiWp6v~a@*d-+l zJtK^$rW1*%YB;#C@mI~B6-HFEiR3SIXIi)G4dDM%Pq1$(BdQHV0zXN=k3yQa&qPp-lvSHHWR7TC)@tkX!(XPq8db` z^k2!<&%1YDsf?&*5(#dWbBkNq^7t=y(MvT~IZX7Q%+70-5$Ekhs#Vn+r_^&)=Qo8B z)o3CCLp5I+QGG?EQ0wkrGjrY&MpOkviZz#Cb)qt&8bu_3s;pxzs8{N_WsWkUT1KSM zP;FO6R4td%r>gR=V}q0t)p#QLrBXt_YMwHpdf)jNs;$b1>cF>|x!1|qc$wBnU6BSV zBdRNj1SVuwJ*teTJ|a?heP&gwcZ3nu1R@niuFsVb)e-OFqwf>>=iuqeh-w0ns-5oh zhwk3N|JzRgP)1ZEmNCDskU8k)U+Rc@1twxRw|`Fn+^g%Q;RBGIhOs_n{%>hcd6 z33H`{{#=`t5mopjM#3Y8N*PgIzJfM1>Q$|bs76*YFZAh?f7F#LBdR(db28Tw7GROO z(oR-JRC%AUgUptCearoO>Qn36l@V3lPqF7&Kx~AMWU{B;NljHoR83Z*`d(C{d1EX7 z-j?+8JY_@``i#-?n5cdMjE^c&y`YS!I(|;BF_~x6*)WA;Gcz~CM7R@()$~7@re@#m zzrslNJBU=>Bx{s^#(l4hsJgAn4wUerBa*Og_}>Yg0TVTxe^o}Dd#%P(-_!J$=M`l{ z)%pu&ijixsGNRgZ4Ykl*{?U7hGNM{SB%tqU_M`<;NAEYvi0WVG^Ov- z=q0(HR7O-gh*YS`U&4Z~g%MRBB2n$HR^)M`Hg-v_OOz4SZA8M?NPqdq#tX`bY7LP> z{Zx$qJ@I-~FzVcrf~1zGgEHcLhKp$3<0H=1Lu#=^8By*34JSrb?GvkX?f;AFG-X6} z8xKMTH6MpX4TurnIDIw>QnvxtO@&#qjrjHvD>67480 zUq%}?;J?@&4ms&h<`Z z#JR&pdhiNSxg9OFJpWNfR1Xs=?I|jMExuPqREPdT32zXUzl7&2BdYs}lw2t)e+fTV zMpO-cV?I2QU z)Z(Dcl+c(vXDcJlcM}O1wWw4^RJmKIS6x}vPp@4qlh@4N%82R)A`zaO$L^A@XdMW2 zQl-q;7JmvOsyB#K8TV*A5>&Ah-Mp=+W=XDUQo55$?2=q9w+SP;<`Su%nORlvmoTD= z63PEpRJULsKOal31Gft!s#!#;Ul!Hv6wS3u>=M>o)qRAKF7lp z8trpFOr`dhzdX0XM0ndPRE3fBg(oVfY-7of8NfJ}1LODkRql z-tt6Y^5+QSFV7~J!Z(ER`}EAAUWU&Mmx?8-_9L!@zHTOFmA#t z@wo#g-)Nt8&PV5$e>^v?OL=BX-Tm#;%`vwKljSW>7$#yckHUlu=2Mtp2IhbLtuI;i zasn&4DR$4Qvzd>Hm+Z^O!HnaU!ToEx@6^2(W|iSn4ihnaw!o}4d_s9SfhmU1B`{Tn z&!aH24WF-J)*C+i*3SvdGki{k*t=3_}m1u%6qv6w_A)~#EF)v`Y89tZ6BS%?+PNTrR_>&h9yZR)){HFij1gw_!ROK8H8X2{bc& zPKPNpd~SwmZumS8Gr;g!2NP7Eyu@WyPr!TU=LCitKK)=?89ozWMi@TN!h{T;wJ>4B zr~V!}fv)P~-!IOBnPB)l4bxqH{O$8E%w)solqNZWBK7f?=Mk8hhR+t5zUt#IPoF(G z_ZmL;!W65IzdS#|EHHe!HO&bORv&+ProfaNK3~ENQy+hMI`5SeSZer8g(*=Ve|a{* zR2n`#_Ra~6RG+5Ii}-m<&KnoPtTlY@fSI5^{_>Q;Y%qL2gPEv4{_^| zGkgx*mve&Qb0SPZ1|Ru$roy0{!%HaU#ZqPc^GbZyYA!xxk#I@9o`DHv$mJy8!)!2o z4&IM7%J3Nmv)S;u7pAY_^Epg_+ojk!++VLf_h(Hoe2QTj8a|U@N(`S0m}Z904w%t~ zPv_?JyWukyX1w831`{%Teu0^2_#ANneQNle1ygGHOo8cZ_$+~$WBB|EGuZG69+(rD zZ}<#?DN&zxjPTTTbqdTP!{;5CQuP_&_1OtiVfY+%5c5=h+;g`0CG+$wnB|7gM3{~0 zGZd55dNm4i?`inVf+;#$=9k~+po6*BGkoU5%rSi0AHuzr;qwa2X2Yjf3+`nMpXD$E zj>%lF(+aqE;Qa@;`=`5q{|aWF;d9ZUoYf7VYM7nslf1`Czn|Zdv$5gxIZRGBsh8iU z=V3X4HipkLFbxf#eOhs*HGCp4O%0zvV2TW%3lHc1!tnV7rr7W~?g-XZ!{>3BVTMnB zYuZqK+z5$Z(qHGnj5K@}!GsK-x@~xlWcUn)>8L*be*Xj}V)zVb%Q|oPdRQob1BR`!>0mffZ@|5#B(IWX9P^K`uN-VeVE0DPpCcju!hef zm}Q1f*Q40K)W_e>x5KP7eAdE@P@fSD=G6V-rVczuGJINfq|AoTM=%==pK+a-U)^OL zYvnD^CYWu8&!wF?C#X-z>r<}_YbGDJaIKeaosYsyRG-;ipQF0+Y{&3f3e)^psh8j9 z^rK-6pA9gJ)Thu}o>PwD8HnNY3e0Bp@sH;o-B?=;pJgyR)u*|)Jey$(4WD3l&d@QK2VHheyY2^&6jj^o*m;nM+Tg5fg) zW}f=^*Nq2VF2iRP%zVSA$?-f#GJFQWEKr|@jGy==`)LFwYWOUIDK~sJx?F}&K_Sm} z44>gJ<%Z8}m`cOv6PL^IY1o7N0`>9tR}oC5;WGiI%J6yKeDd3Xz)tbjrW{%;r0cNH8w4k?B&#MRaV{bBi2E%MKd~SzXWcXCTG%u9($6ua< zPvrTJ;d2vAq2aR*X1U>0)Sokn`uO|(DwtJ<&yz4C)yH42Dwy?#&)x&LXEb~Uz*HMP zH^Gz{KI>q18a_n>89#>4qcC|q5_GMX?!KVzNsJ%$@wfBQFij1g(J(vJ$G;Cwg9#cw zFTynIA>+{Rvj(P(;S)HS^RwY|EKFC!=Ngz|!{;TKBEx4h%xJ@B|6+0(K0RS38$K7q z3^RO6Vdklizu(`28EN?Z2{YgDIs6p%Zo_97%mVfC?}N9&L=2x7Vag4kbud#5pZr0b zX$_y_U}hUWqhTu5$G`r}fthFcEQi@_`0Ru!Gkn^d%KYjn^UGhJTVWO(KHtK0H++sA z%-(JI%!VmZAOARf8)l{9^E=E4!)MfK+&dUP-@=SEe9kzZJ3-RGq3Y|4`mJ-K9|Gf8$KVwj8`B3^Ok{UaF#H9mcv90pZ;g^{KxQlA7--Q zGw>|-0>h^grqu8`Z5U@8!{-Z_*@n*5W@L2^DRUiMnID9zwR))_tF!R)>87G1G zRj2l4);Y`_!)G$gV#B9F31ijpxeI2c`ndf)eo1+noy+qd!)Go`wfgw$)#*IOhT*de zCa;&QhyL=MbUycbhR;fv0`=i$KjD&k4I4q98b0e`iq*&8?}ZnzR~kNZUHjEOhd!xkWtK2_3@9xn_-$6KI>st89se4 zVeS|{3t-l&kAL6E8O`$_!)F-GdiC+w>lT>qhEEyH2KDiO7V9&ZzJ||sn4Rk5FVA8B zVJ;g!gJA+ivX1%N=SG+k!{-^8JoWLHXU|JH+ZaCMVHz4f&%=y2e13(=SDzpwKTB6u zSyvAn!}A}*=Ombr;d4Dqsp0bsOtJdpXj$9~DNp?{bJ_420W;X}c^ziH;j`amtj~r| zADBgk&p4RacTl*s#f_hMJ4+=$fEku1moP0Z=NVC&T*6!nQ=&dW!tq?vhE*`j)A$I} zdn{!(e4d0^W%x86$G)sS{=J|B%zDFT2+U%`=USL*!{;HGRqErP%WuQ%G<<%BsWN=_ zxPtl4*Hq`w3+eWhE-)L^$C2?%`rf>+czhK50K8Ie-^9}X!kDpO65yR(Mm~zAC7nmuAPwQ(~ z>kOX@VP+dX55p`oe13qLXZW0%?P^E$s8Cg1QWioh5?&%!h_eD=AKXGDh24KP8&=WUo)hEIc=U<{uVVLBQ-pVr~!{@&+~Ul&cL%!bcam$AV&7Qe&TKc*>-h;iAA5QB9jtYlEBTBh@N$?1X>vKH-TC9jT+VlbmhP8T``rkx z4dZ7U@p*hoR-klM9sVUqc_f|4xkbos|`+_&PE2 zDzzw1igde^dcBw9;$Qb0AL!+p9=z@z%Dg5q`$U+E zq&D0^q;P8@bN^IEZ&F{hzL%P=PGq{3!X!Dr0uwpbeM_Naf8t4ACq=fxL|Z2^q5J5; zZI))eNvbCI@5=NiQh8LOY7&u(^@+I_Qj5^I+Q=^V)UrM| znzO4JA^z^*>Mh~#%nbiR&AFv)oY&V`0^?t{Df98aXQ zbE5OrM5>aUm*8AtIA=Yyt4}u~#i2y!aYQ2P5?f>M>6}Rn=j|yz9irrFpXfZANGPcX zFU2`%IRBpF)B0grHEA4gb|)J5-uPT?vUvG5RvMnak$#4lCn3M2b0u0{fQJGp6GKkkx*4)z22c! zE7@0SW@Varu_nc5&qwL6BNCna6Ddn_-h^|N;rvL7&l)13q`qkS7_HGRG1ovMWvvn; zlZaF&)pQAw$kB<+P9h~gB-Z_y$9H9}CKBkHs492N_lc@MQ!P)NaPgFOPAy@NBt_PJ7)!z5A^7qNC znyHMa8s5i@J55wy(i*#`uYPpQ|1QDH>& z1(D(&nN@=y7DiOdh?HsxlTY_DHjbDpjHqrQQf8<&C?l$(M<}z7s76{R_d;@2C?l%Q z^O(7PrCxs3LS;nN>QTmFQ&IJ&4f$W~CAn5BBdUpyanHCu%hg%MR1k-+|<>WY2p z{CZ@*Frq4X0-u9K74oWDJSmK*s)z(zi0T|v@w-i_*Yu}^5!G=E$bOip+{%{vjhfZU zh-%K$Wbfj>uahMW=$$FNN8O~guPB0OJxfrI( zU}nMO8|8Tmrqb~F4JKsx^etna8q8dnu)*wvDKp9wdXDD+1~USt+F+(R#yAlzfr%JQ zHB8uGS}bH78mHxxVWNi5O)#YfbJ7Ql|7nTmmRpFFJf9eO%`sCGBU>EvTwxC- z!oOP7{RZ`vGArhRPSi*mZlq^b&bp8aNB<4~gRm%LY zziaU^vd5l}QOYd$*|7MoC%fNvn9cgUF1~xnzq>zA{xmC4ew62p=X zG&FMEwJIyH*2vXnHEme))G>XocVLen)BiDan1{=Aq`hi?E&+yad zYPumSFv7^S5T?Y)Rs17uSo5Aj`dmN3j5cyj`U%F!75tf8HSboW&-Dt-I3w3-8?yrA zja=0*vG+k-F8>;J>@Qh?37X44zwUsUXyjTA6MKinEa4cZFOo{~A>SGh1`{+i*V2d?Q!CMcfnByx-(< z`PZlwFmp7Qzh0-mz-JUQzp{kXu$<-YrIxshu<<%zxf=5j6Z<~rjg z+R(_g0%nzwD{l);Tl4Ol%Qcr=b@?y(8Va*mbI~cDeeemG^+vAVUEskz>S zsnT2p-du$*bDwMEdJQJ_UZl&_h)Sl8`w_43Ihnq4Ugb;JJoReuDxbYHaxH|3z02ux zHT32hx|n_0$n`HwUdPO5t@F0Cj@7(>>T*5oZNr5y!!(z_zp{65rZsXswnW~Ub-CX5 z=4$a8&l5D4zrP-a2^zV&>}2h&d572K+Sl6`*TBrvT&ewuDDWCg8za~Cd)29ZH#vQ- zH(=%)xpMce6Xs`EE{LCyPvE>~Adn7VHCfLWlq@?14it{Y*Bj9hQHTs7}Jrq31l zCo8bX$W;haY~+f-#NHEkxwyfsS*eqYT>-P$$d&akW7Wvj6DIa9dHP&8!7Md$y#+JU z$dyC?#NIbgpQ{LFxshuU%s3<0J20_#($nXvn^h;U(#X{ZCSv583=?~AJ$eZA& zUYVENz_ovS6K0u_t4`fIwVzLrv5~rt_k?L^2u}Os}pEyR1Im&aH&a`lCYeOe=ZuE{V3My~f@wi&s0t4|x&d=4aiu6{6W zj9jws{XG_6d{px$<_a6XI;)^J@*7SGr^|%s9>E@2?#&1B_h9?9Mo> z`Ls{^T;pLT8@XPB8EWME6DIaKBA06zRY_gvyEU#8n4`J;{dFVE2qV|KFtJY`rO(wc zpMB8CH3%kb-iDcJ~hXdKxD7X|eRVeur6UjTDg(ypx3$g+$8T?J;Xpsoj?DDS*y81%)!)kzO;hx zJuq_hdqY0q=IV791EanyP5NinoBaIXiE@rQ(wplQm`Wqp*tht(b@eGs@{twf516%S ze1sXhl%K6op8o`Xry}B-c8a&4$mZ@9=!g@OcX+(Aj^MkX#+!r47|5 z=&jd6n1+T=`(-?9GJMKlni)PvzQ@?;Fa6GogfS*%UJO%U`1E_9pXD@sK8FbzKIebH z&zq~y+1~P0!*n-%u3OGCD~65RjkB}-KD&L$cOw`+_rQ!)pP;uqSs(GUu7=MgFp~|R z&tOUnpW|21KI)UaCP;t10yEn1=~T%xSi`3bX1w9k`eWL8ptQ4pe%%E#(eT*>)6no4 z{0X1QF??Qv$v1pDe#(0RhR<^_O%0!RE9ncv=P8(G>XW?2OMjjH8PCiOpT?iFUl=}b zz*HDMWB<#~A*xR+?|AOAinY%0*#T2*_`JTFF=qJO`~_po@aepU?>#VleuRmtPaAK& z=B#DSG<;6}Qa;(}){QA_l$YX_d_`cEYpzfE$JBj!A&mQ7kZwlo`ke;i_C`mZ+sJ3A zYM#L+&z~BuQ=RxH%Cgv`JlF9s`Wdq{KG!)P`Q%j=H`ku)RT%voS{k1~XP!C8r_QqY zB?X?VH;jH(Esf9ZF#74WG(Ibw&kWj+9IT3Dp00+`&kd&WY1Wm`>v+oV2A zX?`3&-(_Zo!RSw1*0fJ*neT_GGV1;XOj(uW^4GoD@$~7B!uaccHjMs!Q<}QZbv{PD zzJ<}BXUy`q&mo1B`5P&Zzs%>t=ua~SS0yPpCeUsm!x zrJQYoUkMWo)JfeYYx15BlV60eNI$HR1qTK(=w|TDimd>gpnQHK-jejp;+_rTD8+%7|(fkwCSK=aH!5Yl}SLS_V@xEwl4> zWyHDVI@;NA9tu-AUE0UrgLf(;&Wnju8LCanh$^_APb}P&xfTPI5!K~H@_&`~=}Y^> zdr{iwL73vkIkhb>(V9u5eXvs*aUT2~EziTE*zESJUQ$L>O}}@&EUM%QFa2GpjHoUo zQgyqi_y}>rC91oX5!Guha;LOdOEmFPimF-}Q8oX8rw}??{Hl|b5!E$BinVwAs>hTO z)p8=yx(zdq`2#ixBdU=^%C<g+GiZa)em&ZiNnsF%4sk0~RnO+@nl z%v_$HKXGra&i?YuP)3};A`;2XT%LA63nQxWM1tBr$$OKu&oY=|b@rF1*+yZ+`8*=Q zi87-6Yt$>sh^pZ)+*jT#Du1pK%82SkBB7n4YULfhUnnE0ZA7a6kiJOX-=*%&f2F_F z*?pIw%!c@@LS@8xIFYh#nagvdGNO8rNQqG%_pKeJ{KParHB&o7-#``7TyBK3*3@27 z*7eFruB_is9i6#^ZIlt!DMX4@<^N(Nkt}>$fn@FXR>*zm(5!DzM(O&lFdPo^jy+XTnpp2-x zY@>v~W>&qfjHr72l@lo3y>4yYcgy$H{XJzw)qgwnI#5(kdQ14JGNL+d2kUb$_f1Ev z(OGU)m%fd^dRG}yb=XNS8|^$1rYa)N9h|>*hUEB78F3!`H!XIRsN8c=VdJkBDmlUP!Ll%805#c5Wc@YGzeb8BraXlN%`05;8C~L;O`l z8Bu*eB&;Vie`_?)6-HDS5h*rQ<;sXEyKZhE%DWMco1& zsESCXmeAiC&GLj1)%h;+xRmgTJp+OGH?2s2HK;F)sGcSg49n@u-D#zcs1-2z#w^(G zd}e0OK6f`^BzsW<#+cze2B!EmaXypc)zfyAdi|`7IG@{)aj2tr8LHI1=`UqObw?v| zabF$l<-ci;_9?lV?=Fm}9(NJm8Oo&U+E^G-y+tIP{m0 zsu~V2Z2Z-pdk7<{87}gQ`<6Mkh7aKXQ%_c}DI=XVAyo6x5(XLdeX z8F3y?B&@2w-ts)IjHrGh5-FElepQD(g%Q=2L@G2_^5+kw?H*G`RFy<3HJ4u%Xex}T zjvx}zr)n*zmuvCZCArR5MpUz$&q;D3@~c)TBdR)k(enC?@jH^#l~g(=Iw>Qn^N8f@ zd43!UW?=0lCA?P|QN2&3SWDaBdRcwGDG#4GNSsNNd9Xw4*jz!tC=vOYDuK{=ghO|6qw+W%+3>(5$A`AgjMCA z7e6T@sKG#3O*D52bM$H*@`n1`vIzbsxT}>op zs1_d)2VAYnvxKauDinRD$>MpUN-@iE>VxK$ZZJx`=; zYUW%Ulo8cF2QxM_m%m;Elo8dnM8c(+bFEQERGkjV4OAPs?p8)rzYz)RGiv{t_TU!6 zh-#pVWXsdkevFOObIWDQh-#{fY?hVQt!#O+>J~e7{E- zQN2YZYN)m-BdUX2GJaI$Uug#_BdW1Ps%FSu;9oNzQbts76DgUQS@pXzqT2T`dN3mM z;$?a{bw%o{jHoUnQhY;ZRa6;Ky+@?<#>}b~t%MQPRYdZQ5`L_Vs17|GAAQHiKL<}y zMpRc3ss3BOPj5e3BlS$XNf}XHa0Khv6*33i{7Y563R7x0cWNz+I6pxor0;|H@B05z zMpV7p&|-#ahBBi1l1OzOxksxtq6f9*{iE)6WkglK19MPI z_!7;Qt?ejnI8_-@HSWloSx@TqG98w>K2K9dRE;{(7ki0nB$GWiCD$xvM73{c+HioV zj^*Yn_5SNAWkl7b3$4*aR6kRd_^6V4EmlTU-MZ56V=~XC5irGLGc&it1P+nxm(ZlC z+4neF7|A}JNSVGH=$~=FC?l$#$8e{h@8kR5)4UHRY&dUGMx0OV#@H}aOO+8-*Y32u zp<1Yns9GM&YGb^Adc88Dsw7geLss>kjHc9axLFxdH93yaYp6OaBdWnf!iMTPWkeMv zQn@{I3ExvjR2zxp-zocPeC)XCBBOV}@xqAeF(N@jRliUeQC&!+ir<$IduG)}XJlfo zCCZ3u_a5|@k*kX`qB@gEiN3$wiWI4<&GpKNY7UXAYo!hSE88+C=(Qh-wazpqB7DB=Ix0 zs6J3eRGW#EUL!5$SG6b-MpOfcL^YTHEb*8!qS{U*-%t(iEsUt<6RB2}zfV^xBdYC0 z%5vQqNh1AE*flbTNa#~JM@{m!SfGzE;xn8`iE)ma4io)2v-6+Ii1XmSMLbL)qVg^mW*25u8gR@BvPiIc=5Mb z-auhQ)s{%0r@T|_RMJlISC=Uxs%MFWjQ6BIfhoCOoIBv0x?eOtNf>cHfk@>QqH;T0 zYI!2ch-wj$3ZoW(DI=<`CzJgK$>lHMmCA_f86u@uippQYAC(c+fyJCadWg#3&ZCqO zRT+`!b)xc@aEmgc>Uavdj5fSd8Br}H5;aQrk20bv8pJ#`N_d+xqFP2IXnfM(=u?Fe z)jT4l#;Ds2Q)Tq&@WH}}^P5DfjXpj6G+{(_JCPD&)U8lPRJ)(fJ%~|@qhP9xxf51K zoaYk>8MRoajHsFop`G(&RUf45rF$WBZ>Tb&nocCpQtpyYm7?lAR2WgMBvNhM zqwRi1Toqd}ULum8E4ldE5zjg5=re_pTrUs_WM@`&IZGH(Jx`?KTv44!E{NJo>eYUj zFrs>bNcd1u-437nB&X}y!iee(B4xuxRfo!^-W_)zE{v$2BN82?s)mU_#~~#Qog<8> zo*+_^^t;&Vmrx51z)q9yQ(nVhsto2?n0$j-3llV$`sZ@yH<%+~q6Tv#Oo_of4pV3_ z%VC1A%c-E541$_JWheU$rtH2%M*bxhb8wUM@Oed;V2xh>Pv~P|LbHW&x#VBsuSUW| zwLHo9AVN=p3E!XDrwk_YsxSvjQEL7apS3X6MtSniXKe7`*J-k|f;D>iKk?}RQ+bat zUHNAkz4j7jI824%a~n*l;j;*)#Au&YF!|a({_^aE2`rH^A11}E`BTc=ZUp7IR~UbP zmB17lKGR{!449zJ9x6NqN45 zi5kp)BiY{#rY}rk2IhbLdm^r+JkgV4dtG)`e2%)h%bxN)OkS7R4Bqu;+l8rynP>R4 zy*M|})bJSvGvDxe6eei+RKYATeD)ia8)#$r42CH)eC~qjYWOUJS!DR+UXmLqGJJZ% zlp8)bz!V!ki(wWUK3idi89qmiW(_xdM#GFWd>(^YYWP&aj5B=p`%i9Qnc*`KCSv$R zV3r#`&%;bHe7=XNG<=$0nj4sH_zZ$sY4}WrnP>RC2D8fW`5C6n@M$(CH?Y?5xe8{n z;qy66mEm(tm_9Xp9)wwM_4WGdH+(2LT@t5aNm_L<1f#pFp~`*_q!5eKlA9$v>g8R^rX{1;C@%a2+fsTW})2gN|>1@moU>Q&uI1W zm-$7QXc`}B=PzI)hELtAIY${jN5RZAe1^l6XYi5VwNcqZ&fz5#^J1y8{&_n-^EDTb zKoTyg*Q+o~GvsoTjWCN0pMq=HyA7XVFcpT+OqjKX&vKaMhEKg~*_#ZXo-nHnpBrE{ z8$OF+)*C*5!32)ZykB&l!1Dyd=Q5avhR*_+orcekFwG2~me;ZG6wChQA3x{A6c|2H zn5Kr$$1owor_S}P^M+4HnC^zpg)nW@ryV0abzP0Z^fi3GfElJfL%lxvH{=Ee8$Kt% zEHZpnz?2w1LnDlhQ>4HA<@p9?wBa-AM)oGd=MR|ihR=kXIMW(Fxi{wqCK^6>!8GNO zJ2Qy=!e6g_Ci1Mw@QK2VHhd1BlpC01_$-83sy@kkldP+U-on~z_{@e`ZusQf%GfY` z!Z0fhpVcrGhELDQti6WM3oy$KpH{cA9vVI~VOAMFf!jIr8$K7qtT%iEnPT`{dJks+^_lJU3C!j>lHoHQW~Jd%a4*l144)TaMxQ42D)g4; zp!;}^WcW;mS)e}t@!a@+_FThf7R(~`Y3?o0n=s1^pI>1r4WIqy(1wQ32{0QCpHi4A z!{-Z_ywjzf{q-t%fLw;pr7#7C&qFZV44+DvLc=HPLDukYnb-NFV1}uWf87`jlW+Ju z22*1ARKYYieD-^Y^P&3q?+Z?XX=V7_1QRxVUV-Uo`1}qt!SHDlr7sMh3t=W3K2ewf zhR+u;Gu6l6Uriq7Ig;UXBFt>V=SG+jhEF-n9K+`~n6Tl~axTwF)W<)+2Ej})e6ELC zZ1_A0GuiO@9A=f_6MTfeFnmVAY&Lur!9)$8e_-;5WL|%coW~k&_>{o3F?^=Mlp8*8 z!t_-i|2W(Uv()hE{3v7I@Cn0I8a_|L6swPa-S`S-t>M$;G1f!F=R}wdhR;nfBMqO$ zFq;jZKVilhKB33Cd+nZiogW1gQ6GPQ&4p=b_kG; zm?`SRLrc%|mW?nW!{?AEI3pQ8Lt(lbK6k;aG<<%8>1+5DKgk)u@Ochqu;J6>DfV0* zYs8*!`1`##Oo`z$9ww+h{&s!_X0+k69;V3f*>3^Qe+-{un30Chb1)MPpC(T;ehiVazTq5!KBqm;T4(r_!E82s8Z6>$WB6PM)9g%{U;c4817?`vQvuW5 z@agsfYp>z+B23WmY5yW;8^dP-Oo8F^H%!FvIq4(`8YWN)b3VV~`GY_WF@Hy;N?yU@;Ct>;;K1VL*`H$hV2&UNZ z>9B;emf^DyW~lo3=SB8wJpVC#2Ez zotH9~4WHLw^3KY<9`5%x&wmV`D`6TMKA*r88b0mbp$!e6CtwB`J_YZx=Ndi_!3;Hg z_FKk&Vfc)N8DaP=hiR@puHRGN@7@FxHhlJek9ExO=>{{w@F{^AZ1~&`GuiN21QRxV zzJi%)_~gCMJXIh6`g1W%)bM#9rqu9h_W@@c!)H3oO!e{aJ3qmc8$Lakb1$Pl{(6mu zS!(#qf{Ch+|1(st!c-bQRWOUx$6uaCAF{R>KF7e6tB=2ZE`r%$_{@ZJ&WJ>)Mn*K;sU)8rDS{wJKH(&Q56 zT$pC+6C@nZC1-$lUr^3uJd~So8r#}9Ay$Unm@c9L1 zf%^E%v)|{etAm@@V8ui=-#R2V)}VV0_o{~rG}nB|7gFEASnpXUGN8Ij@BAEx2i zvPSvK^C--E!{=X^kl}O2DxMJ;KF`ApRv&*me+{$K@M*A``*-#6kDp?gyu!?T%H1$w z!{<|&riRZRUoe*qp8+sI!{=6*h~e`gOdG>z&o!J64WB_UT@9aUFr|jihcHEkPyMy5 zKZeigFvW(?BQR0J=SP@fhR=~-vbGpLm&1%Sd|rSlGkofN#a>|eoD5TL_}mQ>F?`m* zR2V)3zvet|_`D9Y%(;j;;*%J2z&%QGUw zXAH~+!{;fOWroiWFx7@nt93jhGJGzE*`_}3vtjW|&Pcnjr|yNB*Td&wS`C-|!v8F# z^LIQWGJIZ!DKvb#e@~eWpVwiA8a~JUz%!yAnd`L#CagaG{bJw-&d-L=moVei$KO6@ z{K)eJ!{;-YQp4x8pXdwA2PXE79PX@sBb}blf5}&`pIPfPSMnK2$b~Q+)8ukYyYt75 zxqNIOFnhnO+Ml&|ZI~r;{qx|BjOW^K2ub%lTaSYYz2d%)C|LWPZwQfaQsi19fyd?N zcU(JXYYut!5KPIH!X%eR#{35`Wl7HKh(w+emEU;6aB9^C%>mD6K!ZPMKDo=84VLQm>Do72J;F`rNMj$Q*1B|e`oF(%uz6cHTke7jsLVHW6q>c&s%mGuX8&#<35MLU?- zKA1k&=`f3oTsOcBFmla@iS4lIbFG0{Y~*UZne&*Ds~1dc&rP3e6wFd1*L0W>My^+2 zV!LqqT7p?!>8U0`DSvdiUucW3f@z`?7qWL#QQvMegjZ zCQ0RyzbvB6v37P$^0`i!H87jCPvb2r|L*?G-U(y$X=|8Rf4N+ZQOO-=-038kZAPxk zVFEq<&o0Di7EG*9T`n3yPx?Xx0x!et)Li~E$(JwwYzIeZFzy;R7Pgg&qRWI$!rQbZH=4zKY7*c zAJ&8pnVtJ6BhFzWg@*G3j?pqF_n?${xiaFsg-B4#<5v~@D~zZH5-GXAUTym%_m1Sc zUKvq6K_qObRx2Z_Y`$x@P*usZNpc;njHoUqQqoe|xg9+qZ2Z+z%82R*BGJP|l{~ve z-zG~KQC&hL+(K0QkSjjWM72m6QEep>yieM&z8fTZiRy?t!iZ`Jk?_5uO5XoPb(=Dx zdVxr(s{H-6K^al)l}#I}D)}5Lx%wz0sIw z>n3su8-I1NGNQVdNTI4O@RsmHWkj`uNc9oY8oj)^j>r>6RHqUN8LFF<5!F*f%92(9 z($!v4!yU?qs&{?nmyTW@7qgDYC8|4>5!DJJLF3uQLA&8(Fk@g!b*)=K;`q8C*%v4y z+1C*%)P8>gReY|Bs$BzNL^YO3L|b(vs`%b5s#lc})!#%av{n78-VKEj)vZKI4wZg) zqeU{rUoBQfR6i4m=-k;0Nh6f8OY{Yegb~#cB9)r!7Vy-$GesFuy-K87+t6RaYGp)q z(C*Z9j;!JSHKAA;QC&-<(oj96jHo^%5>-{ahh2L}YcyyqjHtR1DQPDy@83PIQ$|!T z6N$7Jm8)0ks`ZaDqB=I8?7D{gch6gt5!HJ{f?6;C?zvMLQ60Vqx%4a%pCyT{ah5Wo zx|K+Us{H-+iZY`5fk>&U{JZDAO@t9uZz2&@`TOezWkmJ7^U*f+@18r95!JDK(#v}G z^Y5Ocl@Zn5M9Q>;{?>R`8BzT~q_B;Q4gc=ht*J1gx{gRld)c4sIb}rkwevYra`|`9 z)_Vyfs>_H}YQ1`UNAEmkMD;O|Vy##5J*>>H?7f8%)saNPTCdjLTo))Ks=J94s_HPW z>OEydwUtQaQPLVGqLOmOU$xvv7*U-}B;Qb7uZ*Z3CsLZU0+6oulB`>m5mk?7%r70i z{@wF7WkmG>k&v-7?!Pa!FqlhVN_DOC@1FCOk?da+DQPRMdLea``o&*0-A@=%^&%3{ zk@+plqnoR-OY{?z5!JIq!aBxW`v@CwFk$bO5Le%RYp|r5s7LK`c->0 z7e-X45~$M1g6CBse}n<@cCap>2kIFoANX)k*6#EU8e1Ubpr)G z{ZEagHP430H+=4d2^l_1V4A9rf1UpYrn}*Dz(I8b%?+P{FntZ5>tG7h$KO8B!VETi zzJY0F_%sPJehi;pFl`KfsJ))UC#1RjeX$v4e1=@ks>{K3 z16|d}--g%0Of-Dng6Xb4{_-?Bgf-mo83I$JKK}CD0W-(&c^#&&;qyDpe8cC^7Igyy z44*S#78yQw!W0`m6)+Ws&mS;@4WD)ebpy){pNnCJ8a@kQRvA7!V1^k!tq-jmSa0~8 z1yf@9+yzr@_`Cr#!tmJwv(xZ7yk*_MNW*71OkS_dYwrx0(dy%$7gaD#4WG7$)eVd@ ze9nal8a{W!Oi&;H{8|Rn#_-tz6Hy<3y^dS*bob-gfSLblt#a!{=U@RqEs42fu|0@JQKZN%tEGTOY%@MSc9|sEc75 z8a|IZ<~%vK_{;MpOf$o0&u%d4<3Dc~T%q6KS55W+e@0 z{YyKTvL=~7q0~Fkr$#xHNX728&NY!Rk>H`R^(eb0GL1-8qeSLiB7ug9kqu5YR-Qh& z6)9fKIyElLkmG5MB%k&~s-#{uR8dM~2$6~;W)zWNQkka_2{leE&jKPP`4ahGKZAXj z?6LlGYr}wR4iah7pDlaHICSN?nu_!HU9N#J zQKLLpz?5bvkF$ILCN_Fqt|3HH`>YaXf#zxpliC+KJvrMLxw^u{=7q~O37=g4OTJEl zS*yAH?R*K$d?VK+nArSsx!l@YCpi&+dk|)W=1M+q2wV=c$jJ2xOl;=5T)>|8`4^^I zbNTDlwijhKa-9VeTN7NagXoCVdQE`Ysk!|1dJty0k*fkGw%WK{FOe&CY7|dFjkiqPLDK(hp zeVEGz(;cSLsQWoEWkz32fC(GSJusyP^E^zkQRYu!N(`T0VWI}ppfCMpFfCysMtS~k zKE2-upVF~;HM>N1*5Rx+u@k9VcVsmmqD-(hb}o_NR+(|du#BGCOY~!4iq-iz{x!Y= zit`Q1i1TekqBH7eEYA{UMD;U~$j;2=IiMf2=_+CJC{KLVmhudODbeiyGT)+%WM4$2 z^bvOw#yuGNS5Bq%bV?T92w8|HUrRpQ((fE+kT=^?C_B-qWHQuZ*ZB5-B}HaxLqL;4{)m(3`y_6AEkVx^Bq8jB@wO2+| z-JOq)-iBV)IAuij7?J4dlB*G__}zlEe7Q2BT1q5xny7+a)qj-{)p{b8#iGi`J~h{0 z%7`lOWJZ*#{4=GwGNL+yNXe;^Yd>$U3zQMneMG7TiRxNLRO+l;sf?)diYehaqWT+E zYP}9nMpSKxlnoKp4_?*r%7|(Jk?2rSReM$EDkG{ek^C{DYT@m#+msR293s{K5tY09 zOPwhTl@ZmOM1sRbwU1ZzxiX?!Po(%vQLXUSYpXJ%$~lFWKU-8)s2cEJ?2^&jOc_zN zBoaJJRE@nQ9H5M-MiU7Q6IDI0s#Fc`)mS=JKn?DkG{ViIf?tACwW*fv2$o%$9m_YoBmQYm8P#REvlN zRrP;(JNG!L$M^rgx9zYUXy{;33`L6$8zF>2M=Beo?I2TuS4ow!-Sz~5+X%Lu35rR^*kb>Yg6ZXUl^+PArdok{U!`mX+5F3 zDs`>~!ccW3B0kx-=xvxI3{|}l33f`IYn(7t%|xWo7#lALL)B}D6m?FWYlkpY9YQ2( zV!zZXv03jP<00)IoG7lHAxt%o=3!Qy6eha-Ap)RrL|c3#85!5QeIo5%G*%!-Sz~jEl&VfwR?hb)zs;)w~&P_#~fZ zOoIw8B^Ouz-oj8dACV%-rJsd&2t!q+J{a>;nJaNZa_N}sYGJ4vjYv#X`dRp0VW_Hp z3wqg5-yM5Vu`K$YBImHLvQ>Ha6DBXtM}#1Tggz>1(EQhsa0WNsCplf*mSBU zs=59ahN>q0k$oCf9aU97VW@f%5$|cL^t14n!ccYAZBX4y)oI9;ynpT`3{{g5DY~1g zrmE^~VW>KUNZwsk{jI7R4`dK*R4l-0-hDhvj zsxDAVI7%3*mLXC&nJU-I$vfEZgrTbbAnY^mr^>IYx(P$oV~7;VT-MLRYlWfeCq$y- zm@9@hOg;-Y8cc?&9*9K7P^F)R=LUhN_zp@jpkEJ`U#yL)GVq_->@CD;D15Tup|Op=vZDp5*eQ=;oJN;AVxbzy8^upzY>P343DeRXz*Du0Q)nY8} z1xBtx!cg@LA~_pNp2ejlcK2@S=l?BsDjYQ2|EH&AmHJA8SpmlTkW3>dmy168!Q{;) zqx+mP4lTBuj1L~X|0Hr{feEHy{;%I1+7spR-O6`@>3fO6VD`3&e-Ed;ca@I?Q(Ju8 zdj=90TVXPoV#8-Pn0n%)m**2OM-88h`?0c#k6xb3!DL`V?y{6uui;>_#78gBBrvrN zp9NqV8$Mry@f$v;J%ANJeDr!<45qQ+lLMxu;WODWhR+9J0^*~$PkIQSel>hrIYxZk z)0O1C-`!wx44;?5^cNq!JnO*pHhhY}3^aW9JI3(w9>lw*#YgY2mS9F2K6#EYe5Qa2 z89vLwj1?cfeLe(JVEF8Dxx^=N%5<}y^ZkEdW*9!TA3`qi(aUodm<5KqmQ3< zU0c@X+s!s?^ z!0?#{CQp3y`Sl{0j)qSZ%vkZ!+xaM%T*Ig3BlxtS_~_*s0j9s<^D>ws@zL9PJ(xVh zXBU{-x3irCYCHc3W~|{;;Zb}dOnmh6WP%xQ_%sDGLwxjhZVzUv;nNRH%o-yuYsnv)}O92__^yU136X;#KB&eEQY!$py1beDr>Q z7L11~yV91opZ^j}<{-9@Uaxu+@X1!grze zH<&EL=NT~BhR;sN7(R6;;nS~%PggK4#Yb=F`C!@`KEJqJhR;<6SnCX*FqnYh^EH^D z;dB0EoKp;+v0#Q6J{!QaH+I`1Ap@Kz#J_JP2m7;j;kDVe!$+vjWU=!)GIyBjTf%=Kz?f;d6W#{XRJL z`r`+)$?!QJOh@t2%hL_aPQzyum|5bZx6ec{dkvpiU?Sq9muDTAV#8;TW5h=<&tWh} z4WG(SqTj_wFV8t(GCHKbUvvc1dPwU2>I0^>;gbiZz4++mc?yi*@L2(7hWP01vk^>V z!)F(mS>mIY=PxiV4Ilp$>|4Y~FVFd4S{pvC!4!*+UY^^*EW_tZFbfQylb^wv(eUXCW{vpdqF%}8xT#OQrf z#oos7=?Z3u_;gguGZ9R#;S&Y3%JBIOOn<|t@hpt7Jk|@F6QzCb1CwX?Yy{I$d;+S^ zKVZfhJ{LWQ@gqL1RiB|?#v4A1z!Zs(UauIKsfN!fv#}oHhtI^G;dAy}tgFM>U;6y&4`#pNGY`yo@zKlk1(?HzPv$(FiNr^5=PqEp>r$`t6T#FN z!FuUFZ#%~D`4db>!{>te81shD5HJPeqmSp6U>X`e6&7F*VE9}ICfo3t3Z~vjwvT>a z-U_Cb;p1C~eT(?$&;4@1v^RXhU`C3MK7Kv{)79{)y9o13eEO^F;T>RthR+%>_3mc- zWWXnJ@s9Wpm?4JG)z70(#Yb=FC&7#|d}3g-44-C;@%+c|xgShp!{=i#VZ+D21Y^wb z83bmQ;j@|FLf!QrSdU?)#31>aSXAqby{OXxh=eP)% zqlV9RFpb4WFVAT&6W~}(=;)=a~vADE5e zqnBp}n8t?BW-yz?M=wv^Ld+e*rw^D+{H&N%{WTR#Ys2RQF!jVoFVBgu;Q5c?(-X`< z@zL8S45qi?vjNNy@zKk3{Hw@i_}m0$mH6o8DF8Fl@Oc}|8u8J~Q|&)^{$u#u048Hp z>i!xJroix73#Nwn=;f)r9M69YpUz-%#Yb=&&Cd^3EtRv> zxpV~?f5}<3DI!INs-G}ag%Rx#bGE_eZLsjiJ(1XA89qctxFSbhJRZC&0x(Sge$`@~+_E05y zk?k`IOy19|1*5Lz63&~2q4Q~LFbnpiR$VU)RreuMD5}IW$kMrH3q#c!L}GtdENSQS zkClvnu@$}%hN_BhVpi6yk#a;`Ck#~uh(vvCF)X>>@k}M}-roYI(3jddb1fM<_dq0i z0-b|!t)ApO8;sY2pBmG9`CDP=eC|5bv<{uK;p+B1@r(U=7a0GAshw8~L+8H`DK?y2 zM==tbrJi4dgrW09L@;GbMy4NyWl0mSUIvqQX6iEkCJdchzJ=DPP3J5)C+?TbaX*-x zGg3Qm5QfefZ=*G8(K!dsi8)W_&R}x>N#D9ABn(yK5edndFZ&ar+43(7L)B(P0y3WUTy@_gLsc#! zei^H}Dk2P3dt5}up{_cABN?j3A`*~ssH-*!L)GcGa`ZD&_x;MA*OqI-%@~>Z|B{RC zbCobu4L~Hj66cp6Jbe?do&XbTLub9^R|`YuuMmlLqDn7MwGYTp)eMmwqdd7_BI2x< z=V4*!yx2u5vphGTrim4s?emc^R2@Vlj9+fxS|vTr@BYT0_{CQ>Kg7rsXT3ZvgrW0| zh!oZ3Jaua({XE%c3=@W`M_fdHpF&Hh61`0Q9599Ate58vVd%UC5#MpV!|LTZC=69; zn=pFi-mRDC6foI)_%mnR6X4{Qzf>4HcSWS|k9e!3r}?2`{SvQ+gYk*8UehVU(0M5$ z-j>uW|1M#us_+q7{x6m%7v-sjKkVcZe9`nYuXurLAAbp- z4<;w(d>Dzkh(EnlB#FB)N4Q@YX1@@T&<>Va@Aq6`sJa`G z98u}HW(Y&oYly_w@pRJ$C1kl0ul5Q<)o~xArf;QIT`3GzgAobIX;jZOM;NL;LL}Qz zr4^B(su?1FIe+Q7`UpeSV~BVgQrGKsVW`@NNYqfByoC%^?GVW`RAYppY6&8-Z+PO+ z>$OD~stzHNy*IV$)U9Nwx*U;^p&B3zRTB^?e5y*xiDL?mH;L0I$JP(RP<7oWSk+JQ zj*Y(f^OpELc7Jom4h9pQ6aWA8w9HapNiY+@6#d3iQgdWa>`s||wJ^-S4-x+nsvZPb zOVU$y;x;l=eLjUHW8@Mrkz;EDN|c6gX&q~YxD|bR2t(BfM8a)L-*?D*G8;b=hN??G z#lBa5FGGfu*S%o5LXOF&^97~8l5qY?7&^Dyj+)*_Rb!}<%QICNs=i00*r-L$4l+~~ zA`&uc@jIB9QHz^)lA-f5L_$U_s((g?s=kN>CtZ8Nf8h{$;MOgrTb4=NRE{q*lEq3{~}aqvefUlZ2t_5F$Y%SKlwlQ1w0{ zJ|kDlFUe3f7mP$FAP=Ze1+_Cj??=qPZ+9RK_p)A$n?d- z3q$9Q`%uEMROzeM3&K!U;lG$o?WxjhF-RDyHX#x)YEkD~)YPcOJ;Km=i;EbwXttjW zRgWQ3D9C^}4N8TX-@bdj3F$s#g#R zit0vHb;6His2Yq&w(<0GxiD1y?tJ7~!3gAXYfAiLf1UXg8LHYL5^K$~xvm;63{}&e zkMYFgZDFYT77_1C=K8df=QU#ir41VtlcA~yB00v6aV!|WJeSaG@w_l}-h@b`Bg>K0+BdIk}{)EysR zRqFn>FjVbDBwI?Tt7;r3Lse5mf>E9s8z5Km{JKRLswN^5mJ_tDdP5kh{)zOK4W7^)se#4jb(RqKSI>U%^Ar8RWbslSn-sx2bfqS9OA zZeggJjYvT1rK>gxL)BqKe1_`G-^oyQEh2eE9EbXBx>FdcCL$6%l6p412qyG#YUjKjD-Qg?k`RR4nvRZS4dmJ;f!Zo*J?FCr0n zZlm|@IZB4A%Mr;jRD*?~>M2A57w}%W z2J2W2{E1)OlSGA~>RUvj%~Pvt|3!wX%MkJ8`)GQuJA|R?Nkl^Dr_Qxb7^=Q?J{MA@ z?^jRwn+#PKA`-rcD!qjLgrRBzB0kBbt5yg@)fb55T%0;r^?%4vbpawpMy|fXP&L8% z$oC@k*7%PwRP8{-FWY8q6=ldiMCgfPw1k2zu0Qazy2x zV<(qqlrU5+LL_(!YoV)l2}4yzdKE7sx%4~H*}_nD1tNu#OIP(4hN_W>6v;DleHEQ8 z3{`I<;^Emud_?K0gThedtB5ufm40_%M$9jUKfU{orpw! z<#)2&&-qVY=l>CgDu1Oap8s%aRXbs*8i+{nx74bzFjT#YNX*E!OBkw-Iv;tzgub%* zE0dw>3PcLO=I*N-S_4Pjl8bk}KEhBn3K3r{wQ7biRK1Ewo~XL0xef?J)oE2QdcR~Y zUDaI}swTRKV#%ee zCJ95;T13L~-UIzz4POdF)e%IZO?fw8g>ohOj3qp+1{tcZK*Tdt{e___ACW?N$CSQq zydVr!A0XnFcTDNeGfzB@3{_nb@eI{0VW|4j`GomAvl(vk$@k@JjweIaJVbKjd%iu@ zUQVw`hN?b@grtOeYb+9ms{M#Wk8+*YTjMex8LGx3;>o*)vQWZAy||Ov4kl-md{<+vCRP%T@Oi>ewF;4F9nL0QwM`hR zzDLAoc{0m2~J~qA=hN_G+s(1m^%4JAT zYl*+{tf%B+)^ouG#rbS}m0wAer?W709)d_jS}ZZ*oH<9`Y+pc>JR3 zs4!Gzoryi|&#e16;29K2uIq)NDi4u>p_(oXRjUxmk=Af|l1ms9hN=n;Fq zJ1c~tY7ZjO&8c(MK8p-h0YrSp`*Md0L)A1y!t$=ytI?;4@yb#6iZE1dK*TdtUkgLk zZ;0fG>LTP~hQzB{XOp4oTtuSP`Mz9T)lL|y`nZUE0t=-rbusHCVW@f)5&!@A-oleg zX%Z#;To|hUMx@Zlb!HGssB*1}MA8zKRt76rmk^%5e5@~&z9?ocEQRX-q-*QWG6 zh3(|Y_&e(yGE{X(B=!(h7oeS!SN`$BQ1u@~ywOy-du4L2uZ5wi>bY3MjS_YihN{Vk zMDY`f;`c9oU0nkv_%O?(*WyoM=zRWpP#LwjQy8k|A(Cypr*yY4RQVcXBp6TH&jS-P zYSBj+I!{6*YSiKlVW`@NNMSp+m>XlsJ?L*jhN^Ce#2%qaZ|4cZP_+_~z!<9Z(Xw9{ zs%kaGI^UWqy@cI_q3TIQ{0~y4mvECXRHZdTz3!z-FX1J^P&F8lfKkGigrVv?M1n>M z8)lQCss|!PlFOZLlAqJg5QeHPi1=l8yXRwxy&wC#YI8DFU4}?t6k8)#&6Ot%RdW!@ zGv2jW`Ft`|-HwRg?;RU`<-PZE8JO6kERWu&H7_7T=Q|MbjCU<=5QeJyEimegTI35u z)jmY96-!x*CKsYljap0=hR)w25;5jZ>x;-x^(-Pe#_ZlM3{}-H#!6zWQH{U^jTNAm zFm#@PNX&TO`)XmR+J{K=Quh0%#3mdglA|}XB^j#PAQE_q=eSS6Cg0JP2t!qsOVDBw zs@g)8NXJ~mg`sK(BHnL&+JkQZEAJ9)b150BUP8qG6IHua)v1?}q3U5o!Uw4ui$W## zZ7kt8!ccX2E8ML_)u&X;dD4avVW|2Gk)pnQ{yYo~nEc(70G=Vm8LGx1lCzp^*h+1~ zFNLA%k}FWtm#JEWZTZPi#xK@uu`pDfa3xyfO{&@hPwuaw!cg@tB1NxKHBHUcB0z?! z=MafWF1H>g=lW9^s=8c-e!qyL7n{;j7wa`y7^>buBqHOmJ6hf+I;xsoO@^wc5ecki zz1-O$xrDz6Lsf@s(DH9kbt~+X&qRxaq3SP0!mFqnf?Oq}{M_kuM%wH+C%x*$@#h`D;G z{q?3WR5fUiRZHsSp2;NlS4bGDb|8{x)T?<1GE_Z+NX`o^q2BU83qw`+Yf;m6ROuyL zE(}%GuS37f3NTTv*C1i2dIyo1QLp+P$xw9{BE^;5CtI*)idLOS)gZNA`NB~34zQswN;3Fxv2UVW_&L2S&>S zsY@6WhN@mY(eg$cZW4y7i+f>28Ev>w7^;rzjlOuAC0wGm;p4(kRrO}nYco}PFW)B& zRr?SLt))uuR-9m2t(Bc1F%M=G1r}_SF-9= zVW>LqcBm>*)%gt1yMn1?wR%q&s%{=gmA_>D{2P%VJ_8mnb20u&uIZ>d$k68?B6;$i zYh5*95E-g=A>zjwBcAI~wS961lc6e#NRHH0zjwDALWZi1h{PH**IN9ri{vK^SKdj6 zszO8}INildI8H5LgP~-o3L_GDnW{Fpoi$DBixY>Dq3Ur&if5%(`SQq6Re(s|J5&u; z`^&qF3{^uB2}h~ITZ~Hmj57SsvFjUQsJdY|?t^RH&Xc1hgoqEb!D-5SD)K&FgV_Kk$6)q?DaOGl zRo&C>Mw#D_@0HTi68kLI;i$^7t3H@ugp51=a6}}SOTdJ-lQ}*vEcu&0H-L%0KqeDk zOJLyyQCs(jMw}L4))|Mq;A~^m#O?uijiAuTuFZsXU!9?ei(d*S_Ec(JI z&m=H;Ql6G@Po7^}z{F&&)5~-EIMm%J&z)d`;-jybPk`|ZpI02Sg>^qoZJ%APJjVD* zzaL}F@M#PtV)%3e6aARwaea}v(o0^B0uwOS%x7J$t@P37*E?YR&y&&n>wwEuo$rsz zMF|o+bC$>d0NN*mObEnqCh!n*xt(p|qR-u6vJGY)n8<^veKvv#r(l|n zylvD-q<4MlN`fEfnshbo-*;qRM6>ay0{*B>zY!yx(2qZEU#~F;dq1K)OGm}OCz+m> zm=o@6&f8rLLRGwt9pf{myx*RX3#QQUnG9x|;qx|_<%Z9%U}A<()`L~NRfbPbFb55v z0x)X~pS56)7(T^dqK3~|4^{Chc1qpOJ;AIue4YT~Gkn&A*=YFu4yK;rbMC`cyiJBr zZ!lSg&*NZ<44){N7KYC+V73`P_46^`4WIU4b{ak-z;rZxW`o&n_-q1`Yxw*LCT93# zJyON%Z}{82VOGko3zbJ*~yJgJIT+wkcQ#_ODVonH(l)A0EN zObx^5+5)WM;*;1Px%)cr?^D2J8a}(gG&Fq9oD9bB83d-W;jK|*$<|*;Zy60DqdH^=L#?#4WC=V1P!0@E|=l649pP2XFHhQhR^BY zD&8o=XCRpVhR-Wt@(rIq!3;5cu6q)DY{O?3n30Ch4`5~)K37b^J z;qx|_<%Z9XUX}f>%n;UrEcd#U|Oc|X*xW9 zU@kfveRZtATBD2Zz^k&?>4*7q+FhUG;b*CL>XIA+CPT_ogW)p&t_IV(obnJna~i&X zaqK6+yIgqdrgHTMQ(JPCZA0SEJ0Bz0_m1)N{We!Y$`MKz&#O5ddjQF$*Xu$sy^UPG zz{G!Qy{p$FNWdp3iCm9?X(+kMjxkcp!3;EVeGR6u_~>)zFEAs^@nI{RJOk%J!{>4^ zA;YIHn68G;BVY;)pCw=hici`0VVOSzGsEzyIuqwO!>1LP1%}TsFry5g1z-vdpU=RA z44>nl!Sfcw=Nd5M4WAKUHX1(j!GsN;?O?VUK2@JZUl=}DfQcDCBfvxqpT%Gf8a`iu zS#0=J#`o2a7(UIw6dFFcU@GRMzBfGxW|iUdA{d|H^C_69__%vq;^Mrx^f{b&44*k* zc8X6^m?ZB3wt&epe9~v*zC4Earnah2b1*FopIgA>h>t$sLtp}i&s;FMhEK*EoG%QY zVPJxW&&ObL4WDKatYd~x0hs=V&v#(*44<62U<{v?U`81}C(Xlt-tf5>Ovv!r24=kB z(|kS{@hN+M=Xf3sW~$-y7MKFVr|JT%Erw4QFk$i0$6*xAQp2a&Lac{|&ulQO44>l` zq0ENQSTO4ip95eP8$Las$1^L#=Y24RhR-F7u@5(VmVj9$K6=0Z3}(OKbIB6iD-E9q z!5lVx-Ukykd`@@)`|vKQ*ZCe`){BomewKr&VffU15$8(7XAqc7!{=Qv+YBH7QtU+y zpD|!|8$LV1WE(ygzJ&9s_~`vU4ooY<=Up)S#Yb=FrZ3}}mEkiTOtInf2bivgPp@Uz zOBg<@!2}JTlM6A%#`1ou*XtoLLkyn-U@{D!POsozVE8Np<1>7Ye-+Pd44*r}WQvd8 z?<>KC4WG3CU~gmiTnA>B;qx>Yzxe3wTxB`dOv7h1m@LERAeiNb&n>TE?ud`xK1;wv z4WC0`S{Oc;ufW=3_&f%trQx#$%ud7S)Rmaa;-k0oXfS&XpB-RY8$K;pVJ;g!Gr@Ee zAHAKw0dv&wY4SSutA#(Oad@cl&D?a*o?h9t4;WHUb(C~Q^%r?X42QUK-pVOllV}?%`FnNa0!(a{?KCgip zB|dt8?E`bf@Tv0_&ccRIYcLgWOuf#J024BN=7I4UK3l-#i;q4peg#v{@HzQyoGT5V z%fVzBK7GNgF?{BOX<_*61GCfcY4i@B{}?`ZfH`dVOaar;@OcA_?}60o&t5ROhR<>9 zajz5~eH>m1roZ8H7np3rXFixb!{<{lEyPD(H`3n4m^XZyfN5p;+ze*C;WHUbYr|(9 zn5l-(&tN(lJ`FZt%o{%4z;qQKy}up-v()f;4NR`#vlq-N!>87J*h?5bSA$t^_}m31 zC_W9;{l*+HMTXBuVDb&0|AEn#}@VOUESHtHyFk$i0*VT8x1P!0>z|0Vz zsh;+I8UH3c|1o^JgNgsX5_k6e6+YGRr|dNcOydVR##-TviSGfC+z)0{Il0I*{|I|O z@zM7rox$Xnra)_!2M~_{Alz7s`7^v;|C8!{-k$ zwGE#$wqPzBKG%Zr8$Khz%rbmtfoW{`ybC5OKKeNP9!yKar{-4df5bu z=W-c7KY$4tKDD-C{D_a<@9n@87(QdbL=2y0U}hLT-+)_*C72IcWG?1!j%mGZf50 z!{=ErQN!m`Fh>lZnme)nh>!lh(`+ymZ%Vz+cLB3oeDrxS3XIS2nFA(f_-p`E&+z#H z%wEH%_Gh?P8a|hS*>CvdgK1&-d<5p8;Zt`Po)H;7w}2@YAN@U4?}F)Q_?-7S?%nxZ zpY?sqWH7mg&re`{;-mL_%iVZJWcWM?rncepDVRLN=bSHa-!Xi~ff;M~Yynfx@HzWS zoZ}3iF<|_LPZ5}@hR<1F;hbyu+yf?J_`C-u%kc5Vu!b8xJ-{?JeCB~!W%wKblWq81 z`8C!k!{;e5EyPD3&(-$e8Ij@hAedH$&k-=Y4WD7(V9#dwd=F;7;d9$w%w@x8517M- z&n^3~4>x?agYmkjUgtag7kfYPsmNpWv46QAn+B$a;qw)kp!n$PSf6h(mkpmUz>E?f zy*$nLW9}F}kAN9#_S}v*Xw#P%MG8q!1%FhijQ8NA~2f_pI^abiI3hsr~HWLKZehhV6w$WFVAo=dkvq3 zU|NWeUY?y`iVdIYKVfYVAHUkp7l1ix`1AtP+wgf9Oh#_%`^Af3#)^;LKHI?5Hhlg9 z6Eb|xF2-KV@VOpLzTqftrnD*kMuL%>u%rJZwgUK;`Hh@`R z`0NFfD?a*MKJhS~+Za9pFulb`uh$?jYYd;MVET)XUY^&%Y&3kn1T#>4^n25vV73`P zb$`WLCq50-d3rgRnBmhOOvLb+1m>XO^D3D2hR-fAM+~0|zu}x>_?!!-Vvp4Kf*Zip zc#QK@Z|8f!_za(C!1%>SA3vXfsb~1q_#Jxy!{-Xe7(RJmvJIa(U|JYHo58d+d}<%T zGa|#Mr(+DCnP55^K0Cp*H+*XUfi=PK$pMpN_)G%R-|*Ssav45Cu)2UBSH z`~~K);d9YH=nKPV2pF$t>UDk|n5f}X4L|F#hT$_D%tpiK6EK;EPYdkNiwvJBU>X`e z#b9b|hNOhn27noUw&yb7^FJkz74ra08b8XcOul5A?*HvnH zUIeq;@TpNP!^;&Py?ye)L=B&9V1nYK_j_jb3~!U+(;G~l_~_+X3udR`IuIa*X)s?bEJShL>abEC&-7AH97}texTYHhl8H%n%>FULS%P zX!x96C&ODHK6-g>1vAp{iGW!uK6?8cS2x2889w)cIU+uKd3J&+FnlgL3ED{j5mDxor5(~eDr#412fg|X?rgAW8$ON>oqVD!>8eS z8QyyF(d)Gc%u>TAt1;Gu$5W5PXTYp7d}=ho{Y!lGdW`|I-thSzOs4qg^%~L?&k78m zAHn2`kKSLwW*OdY!)Gg)p!n$b!8X}A;~PG!z~qUK-ad_*XLyGVpJ`ymijR9fpSZY= zop3(tdvoe_z5q;EeCj1k@QOaiUw}R}e8OOsijTg|pV|U_YWOSyvtE4k@-(~`0RF!_~`A^y(OOi7(QFUbTxcBT>{4N z*$8Hc;dAAs81shD3NZQNqtCA^E<-NEX9Ji5@zLAoidHzA8$K(*EHHe|y&PpWd}f1L zBR>7n@5$%WGp@kgF?<$)@rOBnbe~37Vvl6_yZ|O&eB3xpF3;%!JpVC#rh-{6J}p$A zYFB|Vd_rL2zm3tor{XR6lYc-Z+h##j-}6f|$D$WqjUC#G(!W!3I3f{$eCBv+>LS-U_E^<<7X0wY_Egd`_msY1!Y7yZc>s}YL$wJ^VHwr;h(ybjFry9H`S{Y#%@K*B`ia))>LO*Bafrmq zFcCyTRZ6SgLL^cqvIi0Gp42rxzAc#QrF||$1aGA-Ri2v=@t29*gGj_^jrCvxWmJ0+ zDIA`l~NMV`C zRz!Tp*!UYv1e?Ib$UN&>h4d<)C6dBILzy!+l=~IYA4CnP=3JvF9 zz~q#1uG$|MIu;@wXND&ta<$lso3JTYbr2i%`P& zJ^@@>T|{{wOHlj491L@(=ff9xFHbP%U5}@QDRw)K9114BPjI>N5jielQ1a?oFh?bq z+j%ADdLPVABiHX>;-k*x+K)Tp(@93PbMPIOCt0t#YOeFa>@{-bfQgT1mum=oa8vx( zH4@A!$%P@RTr2h_4$tjY9 zFa88mV+zMcCpFh8H{gzDricAuXKT zp{T_w=fj;$S_qNk>swbIgQ?pU?ZaJMT2ZnIB3FZvJ#9JV83so7;c0oQ&ulQV4=;!L z2#lOK(y-_$*B@Zyo}1=V2>fQ%ZYU4$%jGbgz{q~19A+dK+3l3WJPStlQE7g)Ja2)K z9a=d)--5~J{-+$~xSLAt7}K)UTrI#98a}^Edvki=#FVb|M zBVc4dUrycYb%zi4{N*qKFmeVdC)WTla#ARVnFvNsNold@EHOoWH3*GiJ}=@rPIr4pEa&L2D8uQ;)$#rpQ=4D zR*gPw0!E%5l+*8Bz{I34^f7iXn5a>nXTiu*k+gu??{9*Urz>e8b$$NYF(^j74Rxkc zPpm&!zTylPeC0YDj6Cg0%T@@_>i|af^J&PdTtmQwq`$Hh0=q#lerZG9XPe9AXPI>- zQ(Dbm?$fywdSN|$F5}p4B|WVP%H!_7@r&{^gn`eoFP(=--tW9q=OC8Y6;OW(7*Cw9 z0#h+=i@)jIK^QvUh)B`uswvC!m@rhm<|0Q^m*-nBA#v8rb82rgbnbwNZ-IMO>E@t& za?AQ9YSC91szxBFjNggBr3V|HhfSRswN}ilU)6fE76WD;T&P8dJz%7#vWZu33PaWV zh=gXcUVETQtV+~>E(}%QA`+3YF;6YwAHq;oDTveP80MO;s!kDxs&f#@euS!(P*uX8 z_{9oq3S(E z@(fi>7^)5-QYd478A^zU(IppK1w@(2}9KwM2a7zYOJc7A`DgY z5s8MVY6MmCh*~KORqrB_eLqzzFjRFy z#Am363q#eDhy?HC{mZ@UK6!p^6^5$g`lEzHsd8(fYt8t@*61t@RTB`&5tYl6tol$G zs;bFLQMhhN|Zf$(u-({;rP$!ccX=0L&dj^{_BheS}D{s4h_JRrhu> zRP{h4G&;Vz$5;6Nh=j#QzhC@E82TJVq{vWRJ&+7l4IDI$K!rK?5> zLscOnK_l0X!ccYgVC0gPZ>QF)pD|35-%jcp2@lA-5i>-N% zFjQTQNKu3;y}xb{hN|9(6pJcLt=AA?sJaJ{LQ(0t9u zs)2|^rZU$+HP>UpP!&NWTUtZ!uR>v{T8)Trdg@%C2}9K{hy;vW6^4?bss22741R1IxM`bZ=x#DpoxyBGDEPnCYs z>?{mbk0KHL?=FGE?-EW`|K^s0t(Ee}*NTgC#Wi1ie8Rs(wQxI+rT_q}d#& zs5nE_07SwOs`QiQY+JD&l0j9=ZV9Q5+*LLQN4ws zY5^j7lc~~An!gA`)ukcqmJQWJVW`@MNU^B&lV<$~$xszUr0hv^Fd|{`(eD?lg`rRS zLs-KNRR>|Hnt+IRJ=R8i-=!JsGl_V2t!r< ze9S?4!l0iSgThet93q9H8jQ6rF%wv?FNLA%WSpLJWQ+|*OC;aXa)qJlNksBq=9-WJ z`$V5H*QdfzRSUbtoV8TxZP-p2s_sT4PgGebAu}XiEfI#Q9f)L$O3zjOF)~zLf=H;4 zCDiLRP8h1*KqP47`bik7>f#m#{U8ig=S{*~ zHgeq}3{{g6@x8!YP1H8rA`DeE3(%_4hI)TpBMen{A>x-3>ZiYj!cg@IB7vo;OL!7a zhjE6gZisl2OFvsp5QeIih!n|ssQ2<;!ccYjEC4-38ry5@AqR39|02-AB>z*7nx~bS{gpjgBd73dUItN5XL9e#78erTQE6>&loTx#YZpCR4}~_pO?UlGJL)VGtls9^dvqdDn5F>0$@fO zK0UzX8$Q#(gbbfgz!Zp&-aa*^fH8d9fC-Dw85lj-sFYkBKlg)~Vfd^Bvs`@i@@xdN z!0`DD%qqj@XE23^Pt~XJsYCJ6`|B#l7(S!HtT%j~1+&rcc@xYg@zL97Gnj3L&sSiI z#7FP1VlXkoCv7S|87)3~d1`|>X!tY&b3}Z~zR!x|=TgTQKApf+e2VL#?h|y(E&BVq znQH_XpZJ`qj^{@mWBAMj(?WdQsV#Y4ECo}~@L30@z2WmIm@LER0GQt5<5$a*{xr&L z_?!x6tl@J3n1JDP9hh0-(-q}m4hl|zh~ZOzI_hrtTn%Qa;d48fHR7YMV-JE^W%xV`CTjS+17^M9bHFi%PpuhP z!wsLyz-%;p`hwYQ_&f$?li~9cnEi&&Ct!-iN1vy4X5yY=_;d%eQ+)LPnhC}Wre5bi z2eaGoIqeyIrpEB;3npgx6oSb#eEtEm*YN55EPmRC;qx4r{f5tvV6qLLD`(-}ZTL(8 z)5`Gq1Wd8v)8IMW;|!k>U=ABTtHE?Ne9~rPofn^hUgB<(cy$w)pyBhPW2SLE)W_il zFhdNVufg;eAAMe&HV0=A!>1RRA%@R0VDb&0&%lf{d@>{0^BX?h!HhM0rh%Dd_h^O%yPr$eK1qSC(lcan#8N`z(ft7s`IcHot}F9oC0Q(;d36C z48x}tn4N}CConY(pFUvr8a~6o_{2wVpC`Z+8$Qdxgv3XmUr{he4WBJw@(rIoU^4oq zzF!;yGv4s2I3J(oG<@oSDG(pMeJ%v!H+;H*IVwJS`wRfn*zma*j5mYhP%qDPFf9$A zm0Ps5-1#S`z{ zU^W^)?|>O8KKgh*0%n`x)8u*VB@CazU}A>P5-?-MNALIFz#KGuu33!r+3=YF=7{0* zF_;4J(c7ou65Mn9rC#SR0TULVGtg0K>@ImiF%*o?@R<*0x%lYiDF#!|@VWd2oIS-y zf37tVOqSuZ1I&8Er{;@z{$u#G15+eE4b=8|08GH}SqbK__|#T?egf0c@M*LZ_wHvo z-*umUU~&zg=fKnxAHQ0j&%pFIeCoV}Gm+ub1x%jdGZ{>8@#%{4RKTD3#aA1^j5U1z z0aGYG`aHejW$bMXpK)MT89r;kOf`J|2PP^$xu_6plX%r(8J_e8z#pi z?z0)pZo}uKS24!KM_8IR?2QedUSO6QJ`2GNF?@akQ)u{H`8xJ& zhR+jVmK#3X!Q>l0^;cu96CZsaJ{(Ng@OckR)@-gn`Z%oo2F94-(*{gq@zLkSV_+5= zKJSBRVfY-k25o5gbOF;!e0r<*ucyF74WCcJ%n%>FUUlBY^B=>f8<>dr3{lJT449pU z&sSh-%t_r}wb$ZIZTNHm<1>8j2UBeL{0B^J!)HI3qlQoYby$1FM{l2gU^4orzF#~K zCSQE?@w^*MZNuk;DDFFkPg^j4!)FYb0>h^eOk=}mADFQC=Is?2F8nU9O~sc?QNW?4WC=V3=to_JTt)bHhew;lP5lUc}{!>&wmV` z?qGI{k6xYvFe440x4^{2M=ww1_1J3}KG%WiIG63LmnQ_K!0>quOpf96J(wAW&*|^t z-Yq_Qz50V$VE8Nn6BQqQUHuYFq2W_&1NQUcqnD>Am^FsaTre%>rEce)E|=j`^F8$G zXue0Wq4)2LKR+{k4jCU1&b$OYZD^VoNRNNz-#-zW)EUU-9de%p^y672qh*Yi-scHo#vd(=j0JS)lYXBm?xm0B$7LU6x^3_9NvZJm%%(WenqGRu;W#s(# zF@DySX1XF0DH9oiNbv2_%v40eWtcY|bL{gwbl&Tj4_Ly)XPZiw(E9)*VHla@y8mCk z6P2SbBBO3pq9a_PORh#Jb9_Xh+-a90%3dPjc{hS-Igc~N)hqc5f!S8hOd|5CAvxDN zFsme2^4Fc$DVuRhGIHGwCcgf-TuY#;!eYq3JHSLG*BOW>+K|wtALCABs>H=C6`~#^&^;ok?W))u9+@Za(P|3TY;%KpKC%z7fQPNf$3=E8V@GE8oOMJ z;ZZ5cXBn6b$>r{z$=41rxkj#kz{J;im&@fzu3OVBIF(2)y_A`+tW zvBvUR&W4?;Tg30ETz1 zvH+`q6Ypi0%Z>2l73otjEhU$}s{231YGdRY3?|4C zl{{%(alBbz0uRT3cTBv;qlkFSqukWN@t_|_6^DVY9}%YDyIxpv_0Y2-Q&OuXe?t}OIea=m(j z86~;&c`*^pdL!3rFohLL_VeY8jjg4bV^#Vdkw9AMQ^3VL{~gIkBo9AXE^*?RlN4Ev zNO2jTPm?0Wh!mxl_No3EA}sT<@-#?_T!u*apVBLBx1`80M2f}d|8j)8LQg>Uc+0z9 z)hmF(1xBtPz<2{vpD$|e<}7fzPF8a@0kd3k>Eov(m>Nc|!C>OE z$>rLLT*=oYFsme&K7N*h$ux3(1SUQ!U9O!-l-w6TfQcHpj{gEX2P0QAFvabwAIp%Q z*11fjI799e#$WDFmR<)YI*>lyRiA2Kl7Y`LV$?CZwt7r`m+<}6u@DZ()O$A|>)POUoeD>77Fk4V^fLNy6YQCB*< zQ+8tHu{@iFp>y?^d-j!D)ma#-CLxmZEmeb&E3uDauC2mQRqJc4tG~qCDLpL*s>=8i zzu0y?!9*sNX6Tn_--Td&hf`-iC=9bV*@N~mvX2B)Y-Hc&eE!SqBT)RrtYcYE{e}#) z_eLaqD79+7FjVbDB+!AXKuKH0|6#6Xd&y8W5)uC$RJB)C>x7}I;y%oj_o#C9O77F^ zgrTYck=W0r`zyImKLO(zt$Nyj(WjrL&VHLP%)SVbY@<(q0Fz^6@ANI&Q0hJgbx-co zslqV(r-+2NvCO)v-hMJv-Hb>``n0XuJBx*(>IX!!U*ylF8LswDtMABA^@xisO|9A{ z3{~~N$M{)7)qQHNA;M7g8Y0;*q*hftK!&PLh!mDlCAa)6VW`^YBGMYJgvqKF2gy)1 z4w3L;mhd4}wMiJN>imEeNm@f!^%sV!mk`O5Id~OvB`(g~Bf?O1`H$}VaV+7ZkR;b@ zf-qEl>>|aSgQK9TD#^I6*1_|S@B}h$?PVzv>uL~8z+heg;`GIK2yhN=UI8gtllc8!HB87{n!UvR; zarmJyRMq+w?elzURbOGKT7rmAa^cM%nLu*JbT{T%4sy;;|*p)=^paioW2i;){&2Q1RDFp^pcPAa4OEGXqb~bTGE|L4#A{0x-T+qWqUu9osH*)x zw8qtYae z;Z7`}u9_tbRh97!DI&ex8urO6QjRcGO-01JoVnIx5T3{aN*{b73{`$SG0KzCd!8uV z3)U-77^+qy;=6&l{wT#JRCV!`E6z|g1d(vZ)T)ibP<2|xs$SuxRDGnDaI`Q~ZAK(^ zNov(OmB>(azl&T(RUhO^9*0|mq3X2CRlSg*x=R?U)*_N~J#(!_V<+!PDpnywRcl0w zWS6U}CJIB<2hK;%)YoHiO@9A|FM|wKIWDq+CHw)ck$iHQE(}#W5h-3vmHR2F$+=Fi zN`|T+BEfg5`bo{TQW&Z-s#W!(Z&KAn&2@_~R23pp{0>!aWlJt$L%iE1&QLW45#JiB zmO_>IehOzw zim79Mo-kDX7m@7!R4qpdlgE7aNo1%RiHKiv6{@PYgrO=U6XWo~)MLJ@FjPH*NM494 zea!C_hN`TS(Hh%XFMZ5U7KW;Wh{Wbm)f2s(ytg_36f#r|M zb;S8#BjiRz{8?op7e~nzr(!nErE?FpJX3|C^Ik+EGpKUqN#6flT8|7>6A>w#L)B)e zd?;D`VlDm>hN?mJ;WLe@pP_Q^Q!K0cLKv#9Jq>-jkg9pWSz}Murm!$n6(JIRma6X{ zNwgSCc=G9FsOpVKcnVe3F}#!OwNMzU_9Nn7M3sIoXznLN)ks8&o}?;@dL_@Ms4!Gj zJ_EgcKS#KJFX$o+RnrhD9!HfvFTN6nsx!|-E-9ftFCGgFQS8v3dBbz!JF>0GpruvFM`Y zJ?$;RP&FTsnAEEUmWkw5{h%;ZHEW8oA){A6)jl8$RqrDb9L^Hzr`ofck)dh~B85Xz zt9A%ORg-Lt`5sj5M$0EIj^6RYQ1t~Ok=)d(md(jfH5rj;PpX1Qlsuwh!cf)ZeALuX zg@mE%BSi9KW&0jgNj}xqx_}H-HzE?1r~0~TrZ7}}hDb!d$BF}ja*jK_1sSStagk5h z8v03dkuX$!i%4uURV~qg$!Er<7m}fB7$T9aROzRQ4Z=`$(nU~xMAb!VuA#zEwGNT& zEmRFsRTo@LhN`)U#6F~IIaJA~+Bz-CQ1vh(Vfn7&AdINwoy-TqP*wdBtZYThRSCJ0 z?to>KkFGYIG@97ugAKKnas`-6afFuOU+OK6AaTsw!MYhN=#T z1ZA(T?_{19hN{nW)rR#%dtYBD1JVyf z1;|h}%ta1RwFs)@Q|&jxP}SuswESVJ`l(}nhA>ophDi2LRDG|Gs0LS)q3U)-yzi+x z9VJX2^REa))vt&YO9@w~xvsp13{?*!68Mg}UR6~^!ccWmYs^aHRC}v1R4qZoCn|l+ z9}U`u%teaG2T}Oth!HD=4 zQ`G^g>LnRGIVmg`hN|BY$zDN~elG}gBtzB1hyTTpnzJq)$3{`bHVQrCBJy9oD zOx7zX3{?ve3CmenpBFz0Lsj$67^`wx*XPC4!ccVxk-%z>)t1tJ?ge}9qU-Vea0VGS z3iy@8tI=S*wPaeUK2b2fXUOP2RdUeFhEHcO?&q_`=a=sDwDWnB%w=kMJ_qA|4qhss zGrGXXXrKOI+|N-=!DJity6^_fQ^RL0m^{Ph9p_`TPt_YSqKx*r9!yBq zIzQSuF)uhurh$nX%omOs&o&$dAF30t8g<28#_$;mCT1|Nfytg&ey;!Pcgxr5R@K`$ zU;o4$SBbu0vIoRlH$BaLHYd?OWL^TZ$?*9DOsf<=e3!e|jO}wiawT7FZo=G&@?9wI zuE0U5`^dd2Bv*ED|#^_*T-OjMy~6-SM~Onw$Zm;WG?OhT*dk%q+v_A22?{r(Msg-eSY&2{4(4&kiul4WH9{ zVOL=I+zuvc_$&jHB|a57U5@?BcK#ojO@>dq-c`NEhR;)Ab{alkfyovhz26(%T-Doa z_zVNn((qXcrr7ZL2TZ{5Y1gN!chvBC0!(|uX9t*!+f%R4r{98oi}+Mj`)e?m+J?_c zFkQt*Z|5pOj4{KfJDA>v&+}j!8$Q2->2LV7>x(`$e5QjLV)%RurnTX7alfkGNWl0?|~U;_?*;jGiZu&*zC@eJSa$#u;Cx#3C3#65}Oc@WGo!}Bhf#)jt)Fs}KL@5ioq821u}XC#f}pBZ2#8J_)Mvc#j$^UcF>Z8AI`fEg|xy+8ke$um4R49D0F&s$*f4Nt8RxW0?0 z4dy3&9X<|bvElg@OrhcF|5z>8TEnvuOo@0}s{KhAi9Ou#+y^FZ0r!nos^>j0yA01? zU{b}SANS6qu=g6CnP5EP(f6ODU=ACe?xV3M7@h(!u0fIa`8to|{1T5ou0dd84bSIb z`Wv2RWAN;0c%A^0E*@v!2w#WafJrnw&Bx+AH9VuiBpaTMV6w$?ncAQDC$KgQPd_k) zhUX11oej?cFs0(TTJ2BrlX$i=JR`xl-{N_3k?L6qCf)GVd*y7R8_qkwl49{O+){5tPbzGU_@cxhC*#{o7G3_xy(E88AiS(eHmYJB;Bu z|7qM~8=k>nb{L)|U}E3q@zVFh8WVACGCbYE#EC~A*K1(P4bK5E$>NE|@d~|oA9edP zc>l-nECQ1v9{v3K7fkd+k*^mwOme=X%K1q`XTtaADPZCa&o(fV#H078^|RQc4A0YG z3dEzI@4LaYGCWsK#yx;|u2skN4ww|f)ATt!%e=$+>7;t5gGnF0aeG`#;~c%BF27LPuzU0`Myo{N0AKNOFCzE1%&&+r@q(^)+FdC~59 zoI8eR9GKza!8g>DH}h3+S_W^!_{mX1(EA0j5|ySE&7oe-ZEh7@omks^#;z zcT_!l!2}FX_vx5t@pMr=Uw|nyJndh?^;A5u@PuC6=f{INW_UJ$$rF!$zSn;lV;>xO zpC15bhj{es`&(e*49}kq^B(6}KQG$9f^*RDJPjt<@N5Q?WO$m+z@8}{{d^w`rmf-m z6ig5C=;Ml-iF4WT+yZ8}c=YqV08CfIbIz-HAHeY338s(XnFA)r@azLK(C{>$g*{U| z`g$G>Cd=?_1T(|%G@FgF8=eth=7~o?UdzEuGCWo1;JH9N`ugbwX1d{d8_asc^Ea40 z!_(z8+#8EWf1j-oOupf1Iv3Yv!;=eUvElg}OqqD}^?YL<=FsrG2JoCZ$#iJkhqhJyZ&rJ)k z#>5jFI#~FM*VB1mk_}JPTUcX;=Pod*hG!X=UEy1B@E9nFag8!HJBcT=aRSa z3@aY}eYU5-q#K?sU=ACei{8OAh~XInrrHNQzx4OnR)ZO3cxt_i^TP0W!Q>d8SHNV7 zN5B8s1IA}~n&;!XBOd)Z_hB%z4bLJlMdC?P&#!;MEHpefyoci@9=$(vz!VyuBVZaA z@OZUS`*Z92IF}92d@!BGqrcB~?gtpV;h6>|S3EbV{i#-fds@RY8q8Ml#KIGLao<=4 zro`~n`Vi--c=UPh0jAvW%mowuA?I1&pML>UVR)|m2=}z&(eHn!0w z(Z_iI$M8G|X1I9t{jd;>+wepcVowl{KCZ4{S{a^Kz|0VjexL9!m=wcv-y+>XS--yb1k=^<%mw2S zkA7Yp0Mp0tT=6;X`3+Atn1P08BbaRQ=;wQ*b$I{B@Z1k3M?CttJ^(Y;@ca#Co_O^0 z{jM)?O))%c!1(t#|JsG~K0xRii2p0kl{MFsai8%w(%%3kD?pDvKjVdg$7#T|1eNR` znW}%X#{cl{w7~{4Og)TBo{=gNhNo*E_$Q}3dZ zEh+tY9T0}8X2n=hzq2hpb+<4~y@E=Xk=iN@Q!(G5hd;3`XXd%mLtkAl3{#Jy;`tBz z0r;v>+4%2S_+RkFxtR~fUmn@~y)ZP#Y(~m3cL3v+K09}eY%|p75yH?s9~GbUM^Ak( z3{x>%aK`<>QQ*f#mHFu+3{&G!@f~2wi&W_R;ruQWhN(YL$==Jg97F7KEnEDZ^@HvdzMuw@IP$~YEsl#e2M;NA-p^_)ZOJ8Gu3d2;hZ?VQ? z*TO|g`RVcuVVHUwmAL<$e(8FZl-#xsX}3xs<#tsUan{ts;OIrVQK;@E*Y1e@(aV%U#Mium3kf83SS$S ze@BL?2T>`O)jJX?uJq7XZwSNGc2oj#&Amh&SH17aFm(eeane>zq(U#YI!+j-K1IbP z*WBw6311sWgkh>Rj<8>5-lL`l3B%M}RNT_T8`acKVVJ6eb&(}0eOxyS!_+ub+;V<7 zPe7c5&{v-d!_?2Hl`hD*^Ayrd?pN2 zhfwhw<7$n)Imj?|4=UwGYPK*;eS=D|F&i z(WnIEj!3^Qe;^D~dr`@j`%L}1+~Q|4Og)H-PtFwmy8NavOzlL)CHK$zb-5Al<%0}U z-JJ@O!F8x#mkWhq>MY!^c_pP^mxl_&)Yqu^8Q!z+*<^0lj(Hn(fY78pLMrx5TOdUWa-AE;3 z+(Cw^J5ec?=k6FBuh5Gt@y%8KxdZ#W}-+`-Xm9&KHKMeW(;jTl#&} zg@?&7bvG)0BlWs4OzlP`4o5oJL;bqk@CX^EZb8L|wHPV&v@lF9LB)lm7)xC>(ITAGYK4FS1{9!cdefXQ($<$29sxa>imsQ zh8Ui~VDb&m1~7{aPs@M67@lXrEH^xBz^pYq|AO%wp48*mR}Ie?Fl!CZQZTy=&);Cy z8=jO3eA>|Pj096;cou;<2SkJZ|*Dxt|NZ*q_!laSj@u5n!f^M?dZ#fvGS&e}I`S9(`QN(Y0OC zS&^?7kAle)kKUgxVB!tWm9?-|4bMz4Zo~60m;&+W<7!vCwyTxl840G)@GJt8Vt5XL zSu7rXelCr{nm0Uy!T1f&TVT9~=SMK>#iP$pli1p>{)XpHFhz#vWiT0rXA78O!*g~W zoI8f+4lr8{&r~qkhUY6VI}A^ay0u-ohUa=PyA01$U}hMe6<`8}=P;OghUb#Autyo5 zd%+YKo|#}u4bL_(%MDMxINY}wo~~fl8=hytlpCHkV73~b|G*qJJnib?SQwrWV2&A{ zPr#HJp1;6U7@jN6Mq7qw2pHF=ye{kK`#WH&JsNqR-|sMnr&;~lt~kRp08F&unE|G; z;n@Nv*6`Ge$Gwf=xgAWLc=Y}GIWTPv&lg}4#G}u1?Q?3oJcj31FpUk54@_6XvjvRX z@YHR9dnCit1x%vh$pJIa@T>%rBp!X9{{fR_c&==S`%Lk~@)qjkpS+J63TCX~`2b9+ zc=Y~MNvQ3bWO#alNfVEL+;hQ9H#}>=bQX^r;|ae%jA?{>EyL3tOon*$arwaH8=j3| zvc#j0tM0kDw=q1ogBdO!y+0ph$q|n}u7t+8b{n3aU?v%! z7r~Soo^Qb9ibtQHI_KlsWO%xOnQnNV2ICqUd7obeX0~|r`KbUCYk011g0*URhJ#5k zJRgFYXL!oNBpRMeo8tMx@MMBXHau^G$u~SDU{VcFQ#bCl49@^Coej?{FolL^GngKR zr&cqZ%ZA4TCf)Fi1hd@md<-Vj@caSBZ+I@g0Pp`8p8LV9H9W6_$uT^;!K^nt2^Zr1 zAH&lfOp)Q44raFD*#@TA@YGAhnm0VRg4t?#CV?q5JZr%0Fg*W(@f)7@&9V0yp2xrx z8J-Wp1Psp~V0IXu)-CYdBp!W#9^^2FXFixR@#y<%DVTD@bICOf|kAz|BZ>Q3mZRtI{sWlmT4rY7^XgUD!tf4{c|Ay3B%M4mtw8T%;OVO zI9`&{SJW_Jm|B5KK_AY%o~nBV8K&+;#V2irW&&N65xye~Q%6wAla#)qZfr}2spnA% z+{+#&oz_CAtzE(})$B^lhK$Qeg?h=|VT3SDtwAO3KDKq1GaPv_6?+vKrfx?iOIEL2 z63!P)%@KyF{ipf$_slS9_YEV0j>nrw9Z)=4xOvSXv{1|QBEeuodq2iUZvYB(3KZUTym736^5y=QOT1%>Jl8{(7I<^jjtuc)P1P9OW78_&7`c2 zcZFfQ7XP z|75CMZR?tjWSAO*O4e_YQ)`4_s(L4+jxeQP^==S`si#o!8mX1SF!eVo1xMLd1B@$t zXS+6y3{zuJ@kv`d)YNCfFm)W2f6%dB0rnlf&NGi0)J5$LyyiXXWUPr|x$4gKBEDTc@b;XrP?o#x-LUYSGvGyfNO$uKnl zmE^xTEZuvRFtr^O*Cw`ACp7J+jqu#=WSHuWibrNcPt6jBshz0A9b;QQv=F|c8ucK< zRCiQdWsy^}gkfqoDh1n_(yw|gdXiyk5Gq;UGNoVjJ`{$jL#TMSGUa@FKQ#MXB`Lkg zFg4PtY+>qRbvE`1!_*DEu>(lzb~W{pFibV-gI%!wIOrZOzq(WVVGKjO2JO{(58$=@+` zmD<*|{m3x&CMy2@Ox>ooRVEBmm-dHeA5)Fhw(^8wDrNxIyzEiV&jo~^DYpp2)YGVB z$+)giQwN1%>dw2cqIR=~H>;_+!Z5WLl`Kg)_fg?JOuU;6Q};QQBDPfQ)O zrQ>O0B~ycts)6=`FRsHr!Z7tZD#fw`IA={sZkD)*9MsuL={5{|2r+QX^BFtr7h;-gII@1?Z7j|@|zQOS~&-os_WF!h(?`JQb# z|N4CR9C`+lVQK;@amHD>Q5dG`-H)Rzv*E16@U{jB!_=FoWJwQuAr-zy{VEJotslU> zjkJ}erbY_G)H0_M;A}X*F(AB$Z5|}U)GSo8_b}C6O`VlNhN&k|@$ZeCIw%ZN_YA@u z8f|S8hN(^u;RwpOoH-01*9Kvj>M|Jnyz~&?6i{YdZ8ER=<0)a7`U(}VtPOo!O`asf)L>M6(w081<-#yk^C_HP(pI$E!(PHLH5ZkD ze0RyY>V=Q1To|U>XQM6Yp+2rD!Z5WHl{{%nA6Lt9WSAO;N|v;xk871MOw}5Xd$ztj zzXq%0x?32gK0qZ~Qu?@ROd!KlZ&Zr!WLx^U@`YjQI4XJ4mUA@^y|@l<%OS(mEL2?5 z)@VeO<0TAJ9iB#?C8dw+C1IG_kBVPbls>L&CX!+58B~1ImUE9CdU0Gkg<-1sGZKlf7w=*No1Jnf=ZmcbBm9xDEBrqgkfqQDn5BP^?sz- zLg=fDpC!Z8!>FXoxMm;~x`Z*mSQw`MMa3oK%0?=DTwNxUVQLyGfmOUC3MCMizWyi- zQQhwG zeN24}KJ-2;Q?;j(VX8MOdDEC$uBP4*hN-_$$zIEu{|G6z5c+D;G%`%p_u*=On5l+H zg|GRig<P0e4jYcK;kI1Rj z!Z1~RI$Gbrl-|Rk!Z5WHmE2r9|OJtZDf=aP5hbx3(s`|^g!~dLZ={+1K3{&5u z5+`%$yi*bWoO0nSWSF`im4e^dmY#Y~7^eO}#ea~go6uHh7vPG#Y6cmmMxv4~ZRx4c zgkkDGRPto?>T9F#OfpP;fQmMv9Zq%D1I+&GI2Q`4M^ z9IuY*9PSi`sq<&!E>70Go_bIirrt%xC3C312m7ZmOkFkyvnp-rsgc4k^(iV|qpd2h zkzwj4RLYIEUJ!<V{m_);K^?dw1wc*JIlVo_-gUK*FaSQO-X2WwA znBj&eA5600ISwY<@Z9_sesG|}4bR!{ z;pZI;&p#8vT`cewuNQe>78{=5!K@dLe!gG57(W+jc(TD1 zi$_0CS2>K~sj>vu0>je@%r3)|17?Te*#M^0@YG$3whT{qFozA#3@`!1vlonOMC5(G z#WMW-py7EKOswH41XC&={kR_klVEsKm*c6;@MMEYG(2m;95Xz1R^UF<@bm)XS`vKk z^M9W~cwWo}lWKTM!9Ey@HTpONAU=j__CNMdMCm!$hCK;aIV0?z>RWPj#&mJ(d4bKI5 zpCH-rWPn*{c-{xo*6>q#B-DYwenzm>q^^ z7nn4|(+uyVmKdG~z;re|?}I5fJV(KFH9V>7@bk-tXFM3M;rRkgG`>OXoPB3{?;`dK z>@9|;JD7OG^D3A=hUZ5xZo|`RJ)XY|&j>KB49{m^(#3Oz`=||A^M;S!_)3-+^-s*r@*W?JZr&}h(|wO)r&EQhUZ2wWrk-On1JEg z0p_sbx!@bLWq2~dR2ZH`V2&A{6JV+>jeNhFwi(RG$ou?cFtOs%_roJ#;tWsv7Th0- zM?YShz%({IsatU^5Rbke=732uJVjuV#iNg_$u`_08J;XKsp8Sc^(h#S;W+^&&G6jt zE$#sfPp-olo~>Z|7@o%4aeWt$K0nWb8EANpf=L&TK0h9OpDoMqOa_x79(_No05jI` zJhBtlW%20!`2fr$!&44sxOnvWx$8T;|6_QHz+{U@?@#^j@&1qD=?i9(c=Y+n1Cwuf zegcy#9_RcDz4)Aa?JnE{7@p~1W{XFkpAs-@4Nu$Mc$N{5K0nUS$`l)(A}|Gp=bSyb z#u=Wwz$_MzKCT5|N)6BNVAhI9A6L7*xTYAMiC~Hh&u%cTQIYrgwgFr##iNgFB$!yk zvlL7~Jo>n*?ZdUe@Z1Kb)bPv%lW2HKz?2)F%YMMM!0XbKB22riN!5m>k2?zZB1U;?a-$*I;~xr{e)!-^HUJuT@}X8y?RuxV{^n zPrxiRJgt7k+AuutgDEsT$z^zE6pubXAA|85o~wSt^<6yr{7e8-WO$0fWEq~OzvG$6 z@H_%$lz8-UEd^6zcxwECH6|W?T(^TMH#{@IMg2m=wcv`5|224bPKc z(hSd+V2TXS*@yA|kKySHW~+Gg_47KI{)VR%Oh7#PeP){@IF}92a4;o?X9<|$hUWyB zQp0oWQQTu2p4ni^#1kL7DB~;M_wEOiYk1oHg?lZ0=sI|P*XL&xm>Gs=HJEDR(a*2i z$8ZiBo^D`b#iJkh8DI(w&mJ%d;?bWAlK#fIV|a#wNfM7fKP$kjH$2h*;9M4uK0kMW z*=l%R1=ChMdVltT2^gNFn z2eV5&`f>jZOtImKj*fAa8J-?sb{U>LFcsp_=lM4H^m;&+W<7#&{u9b!-2TY;i*#suX@Fdj7 zUMC)XTob|g49{UOe(~tz>J%U2nr(Pq0JGNc>;tpV@FbrT<618seOzmh9?iq4#RT*Op)QaykU$hV0az}v%~PL22*NyYA3|FN(@goFy-RWkNf)$V|Z#e z!nMHgJOHM`@T>-N%1yf;oJ^~YOc&eO-Ytv`E4(jXhRxobEGXqSt z;rS6vE5p;KF|LD#X9SoO!?PSrg5jxpKCVrM=VmZ&!}Bs2ui^OtOp@Vg((SL49`9=1%~J4N1|L_{0O6S?-l&~bLf5yrIW8-7vetQ4d-V< z-C$U){O2Sv9x^BY>RVKjvrnZ?R;nfbZ{>1SJg=Y5+=q&L#_5%XsHEco;bad_dbXny zc;$2^u{qA}N^RW{R(TSYyaeYra=1^rT&_Y?(koRCqT;Dkxuga9^NI6Y7clmdt>5ib zDz!BQ6<4LoQdF|)*E+4O&8UC9XD^rxqpeHY;Jp;1 zt&w1Yd#}@02bja>@k=n7(pKerKX$CirMO=;+8PQbxT~M}c+CehT-pllscgsjb0?T; zPw4l(fp46{akr<0W->IYa*C9qpdYyg4Z3+VR&OTFT;DD(w07lUBNUq+Ik*L z@QUWN)iAsvREojmNL%_G#$As4OrtF?nBcYY%*Sgom`O%kpMz;@wB@=2ZJoU4I&C@M zl?z{oZNcOkZ4CnBG1__!Oz`@C=C-~8<1^Z--WKFaPan1M!H=QqT+*HQIU&Oz>XIX{#^H;jXP< z@}(^|nD9QuT!r((XsaWb;9Z>4)_!wb8gbFA{K3z);wR^|81N#=sdGurwZOz_UrY3p@FEB`wOj_V&Vu9bX0p&2US<7$zD zc{bYW1}1n<>$DZ_aN2qdOro?Eemos!7MR6GTYfOXdt;|9eUB;ulVr42>l(Z_XtdP^ zOz^JTX-mIny8}!sqpcBOijB5rf(hQepSi6SV3LitegLz}Xsc#BoL?uO3!JttaHc-& z)gDY+X-nUuvcQxYZOsQ0eByB0a-*H_W4{MXs?k$+G=y(@F7F-dp;JP8+GbF zTt8mj;F0H)llR8q`}0IF^5hbAaoF5Ag{5HRS>_C$-@wSzO;k(O<4#3edoVZn+o~s@ zWy1HL9$@4N=nTv=VB~r53~O~67Je1pjMQ9VnEDcxz$Uh(&(8^A zm}=Dlo_bCgrZ%CHF4qD*bxath8sCZ)F8jQm zx=|RW9zrEc_EkMKRT!r7QSr!{Z;X||`3`-xSs11cqEdVTSDoHgyW7YxH5QcuS*v<# ztuRd0xE*)+vJUlBFJYL+8A zr*7apheBU{48|j7eV+FSLvz(TuqO zVWgq`ne+3fFigdD!*Rz=u`?@GqukDa@xS1UUtIwvOU!zI`UpewNK||YT!+pMNuNvB z@r%MR^)@PT_1T{kq(VoT`87^kV%Gb!R~VX)pyIE~eN699Tz4`|HAf{oE^>da0~7a4 z^r?G*9_VxU%-h z59eHFfBK+5_-ThzFZQe(7>}6sGdEipny-2#%9S_Y8HM}Q7#D&`|HbJcE8Aa=a;4Wl zohbq1ljG&wZ-lO}T+jar!?xmkVphN7*!81)wJ=QeKqXI7dRrrfVQM-m>FfFAasztE zeuchTBMehzj;APc>bzcLm`ZahKk-gjZ!1$6rlz9ek>^uAZ!8SvlCxu~Z4=PzrgT$G}-n>8NCx_-MDvh0OE zY8oo;o0xL;pYYTXVVLT97xp@16tls&pQc$K#c^S1?r}HHN@ElS!Z1}M9lNO9^EbdK zuozCgIG$UDVQMNW1x9L{FibVL2W>sao$UcObMjBNl_LyOWvIBPL{9a+mkd*@QSszP zP9@(*hN&5-6d0)*1IaM;2rB8uxONM})Q$J!Dr~%;Fhv-qHlb23DgAhz^8gv9dZAKm zq~-|2)E-oP+c}5r)#H`&AQ`4|Q7M+xb!zG-VVG){fjg@mY|FW`3ca{CrVGPVDJouR zD>W3sS4^c1BE!_HPDP$r^>;<~3B%L{58)_x;aRDl?~{dLstlDZcd$2S+O@76jMY1d zX8nABSs0rCM5TNzQ~IuTdnOsC-a^G?jN+_^$uRXODqdq0OTpwl!~W=_IPVcMG(U!l z<s4VVG()1ZS?id!U~MBZOgUF)D5&6_rJXsWep5f992XsJg}$3B#28QCx+8ikzAw z3{&w#F+b8nePs?1hN(PM(&b$deKrmV!&Iwbm_s8qLKvnNqmuqF$92Ct8|Mrs!&D|J zE=hG)Q`?1MDs=?z6QqawY&vj!_;q%$9PvHVH6pru0_S&i*4y+A1w@1AE1(LjD0hhtgU>4?uzLQe~LUJ49#bc z#?|T=@0K%=3jdDJ6=1TrL^k&lhUQ_8SyG+V{uBzs)E}q>HnS}~mHapvrUs+pma*&q za@LE&FtrGkWa*)v+AR!I|Dh6)XWW504JTvO4Tw$2{6qWR^_ORn!f2*Xs(vAF7e5jl00FihQzN}hbzRd35D3{%TcNj6et!Z6kF3EV>(b9kdL zObtQBFXPhZaE>rceU6IHNF5S}sq>!1*|dY}P(Pcl6NagNsCeX^F8yp83nqJeWb<5M zXkLy=v843#;$LByN_h(F@LRT}r$!6IR3R#E8M}U7>=K5l6R0Fh5A{@wY%)xBM#U}P z-PVukXknO|hl*F;-_TRrgkj1x4l7*VOVL;OCBiV}MI~9@#nMwx3B%MvR01+CJ+)I9 zrmBs{sxwko3d2-7D&^8ceKw{E!_;C_Tt@0AVVJ5r0qan9B)zRvVVD|-O5hq^^_Ew< z%J7Q+yf92HMkPHZa%#UYOvUElD7TB8Y9|a+_oCu9dgv2|sl|>*zO$y^q5U8XQ#GE( zin=y(53dl0slKQbNL%_GJ|hfM@1s&~w6#kZrm9WEI!uk+!^?$XsxK<#@*P8cHgbev zY9T6d@;w*l-T3h9=|*9gDnq3phCS3%^`0TaR5B{%(w6?6qn^SrH5`@nnry2xZmU|N zm%$fT?>oXU^_}A}-sw6D#=G6QQoB!G*;6Lr{A$Xl$S!Ck{4TDCFl_4~RPy9|NzOhW zeX4(8Y;5F!eYp+0vGN1(_iX zQw6B_q%A$QNf@Snaw_t!wZ4zVO(w%sTU7i;>MmiJ8jnhxd_qaT7Az2kskNwN8>v!Z zn5yv{R-KW$L>Q)Sb}GmCy(Ik5*=bJ!T;Y!j!_*6?Wc?L6wL}=EzC)$p@5retxn!71 zL?zkiVOL?8dc^U_rxElW=>=h!DnP|2-;3;t*}x;}sTXIXSQw^$L8bg>-fQWp+Ed6d zm57SBl&L$^wgw2pln<4HpCYF=2*Xr`Q<1i|psmm+&pEDUQ^_#pK_yPcrKj!}hN&D> zyj%DT63^*7`6t`@R2Zg8P{}e<4X2S|Dh-u#BQ;hSrrt*-SyG{Ej?+cLFCJlX(?hjDCfV8GGmx zhN%Kn{Fg>feJc!8M^VX=&m-ykM&lRBFqMi*fqWiGe;+bO7^c>t;xkfpr;}mIi;DLp zz7N?P6Hrx-8E0dWFige2ggKP&x;j6<6M8WHSHaL58Wxs1z7&?Gc8lRx{B< zX-i)}V})UA9V$NgWSZW?y04O9%8N>tk(wb4Q{SQDx{m9oW@s7UE3Smrv&b;@I4YiL zOzGdjEEk5U^x0SmQzNIo6^5xB=b&}@9JSt-Ul^v^zJ?WUqzZ&#s>NI!Wn)~kg<&c- z57!-;dHpE&5QeFjor?7EQ}xV^f1M0dxv2QZa1LwKIQ=KVt|`KIf^ggoVN|br2P|e7dh=rM-?vr|v>BOeLa{ z-H^|5ddedVQ@v0rHc}&nVd@1`l8w~I!Z5YTsmM=& z7KW*XsAS^~$7!KzR0{r!Q~uP8t$qon_z=x4@VES%P=9_GhUVCJF^V7fNrTYU)sb_? z`Uu0+Yp4`U>H@IgcVETAFjawyM|y}K5U)>oOE91f{d8ia@jy(2ngrTPb756uh zQ?1`8!&Dzs{97WYCJV#VC#WPFJuDT5srV1Dp5^nj`dQFX7^WUV#Ur1L?TBLn;_BsWenPJGr6?Fo&4a zQ!n=LAz_%Bj7qV59$Vk*-USob9@+ejFf{*(O1aUWgpbHDbqy-M9g*8g7lx^EsJOmo zN}sWL!Z5W8mAo5xHFr{+r_fh_3&YeUALCq}z?A-3qyEA$^$aS>qnUE9mEmnI5{9YW zsJM(zt6oq@hN*i{$uoL5R~V+YqvA7qc=jSPOx=V^y3xaN!Z5W66|eFBd@&fe@p;;+ zpOB$B8I^Kl6zRe+H5rwF@p; z+;ZkRPcGr_5?{NN3{#Jxl0BZ|a^9T_-PiGKd|w!*0;uH4Y&hTT3UBM2Wn`F2b1I$L zmVUh66^5zU<=7?Mu9JJinLe@E1B~1FtYe`tG}m1Lv+-HS!NM@L8WoQ*ik6>|VQMle zamFY%gUK__oy%8}p*a_oV&mL7APiF;KaRU`c8?K;sRC4rjXkOeOrG&+dDkj3G`B$| z&KSkr!Z0=2@uYG^Z3{gDU`2BEt`LT)Urp zbFhbn!Z1~L9eOCA1-!0*^L^~jn85HI;G!?cFf|aBKH14-Ar{>+v>T23{&~2cs4Ut6@v%1?? zFqMN!@*bv~{V;r7`-EXC_~J-luc8Kz!9#kGcQ z{f4%}$8|y&rUrhE)oYAvl`u>t6yvxXJsc_wQ|nOiT*KpaL1+R`8)21i$S{?HO8Ms; zmwvqF3By$F&Dan3GUYsjgqq{=dQcdqK10R3lPP`X6Sk0HDif9T4NU#3&ioExn7VE& zJVp;^3B%MuRI+3Tn5>TLj%{R^dIuH1F|KOgl3}V3D(;%jZ{l@!(S!JJ=*2mlC5)tc zb0=eEhr>L<`MJEVwkP!5PKK!>RD83TYK#V>rFph~?G7?bEkwopO5{|don)BGK_zQu z5 z+rlsvzZKu;vi40TasAL&O`JSK2Fja&~ zv2m2!m6BoV4OGg9u!l)%4=+4GhN;(32^c**>lZRiJ&sDbk8ORdo?m6cFxBT*%#Wn> zwXseZrrMNYZFJ;)=I1#5!+%zKp)gD}{tfr)U75;9B>ZQb=Lo}8!tdx|Kc>36T`uQ| zJ^12YP$&#jH~+zu`_%6AD=KaeJu!%e@5c9+lc8rPDsl2%X+72bPclq>fl78R+qxNT z@rvS-{p;F;WSDvnmEyik=~u?KhsZFs2$jG%rY^^z!rN+fm<&^MP;pOYs)yRcxFckk zdIFWeHm3f>?OAIc3K`db!Z0=FC{k-9r~Va&snLI7_xpvZez;hKAFtnpVXEITv?V_q z*bw7_<25bN)ep3??0n^QKFr zw%!F(fb%R8Qw+v$Fh{^-8~v$&9DO!CSAy{yo~OX%8O#PS=?3#N7?;6RtH5>V+u)r@ z)hOJco%X^|PQK0u6L^PA0&4u5&{tQ1$txn$;8ZgB2kG7p^9C8+GYU-kb~4U)mqIUk zUI63GC!>4v!T2|lsr(%ldNzScf0K;vDF+jf`DqvG48Ef0%73xu-;L~f989{5OZTjF z7{gQT1kRmewx$1D5=mhE^T_Dq>Ix=%1DX2jxE=!I5=K9!&w+sgi2td6}m7}wimbWbjrbXgnvu_$ob zGR~c?U_5f}G*kQIe2zQaICols@ypscU-k3=1$&wn1JD#=k&+$6oGMl$F?f} zP6Muu`cdffdt~(f^aYb`cwPtNdOxzK)M;x6naaNfg8gYzCDs*Z^k+C2*VpuPQs;R! zn82H4^l`;i#j!B@(+f;NK0PUDEBySL?RYkk(fjiYm^`CDDb+B~#-7<1jN9;x1>^aK z{b{1k&wMa`WBqIblWuta0uwMi?&@IVcsa)+^s0L5%T8d@jXm=LFs@qsBu_SybwotZ zR4{olWcuLmLw8?f);MjA=lq18<{cTCaxh+lIll(xa9m_hColyOnE%gz$Hy7pAoM3~ zW$<3RYE)<~JAYTj`43*NfpI+E$H9T2h5)99q zV7!KB8<<4HQ!_f&)x+>y118z<3H9XtE^fx@UYvEWJo(^Er4bM<8Jq*u$ zFar(GcBd`FQ>%8YE5q=#2a{=d9(EYRGXu;h!?OlVmf`swOpf7cgnt@qxZ$}8jL-0l z05i()ya{Hu;rRy4Si^G^%tFI+UM#LnhG!_4Lc_BGOpf6>4#sbITH}*qlMGKcFhz!E zB$!;oGZ)Mb!}A3gpW!(Rp8_i}JiWn8H#~E}lpCI(!OSo`m*MxWRT!QzU}hVh&%s1L z75RE`7Jg?~p5eI)OuXS40A`-ySpdduc>Vyh(D0<-H+!`*JmbLR8=lQzQVh?9XX8G> z@C*l&W_UgaQz)L$y^nKU=k>i#eOxOIPfsw*4bL1f{SD84Fl!CZrSZ5H7@pB!iVV*h zFvAT`opWMcTMbVNm~6vyADCT+XDXOn!?OfTiQ(A;W`^OZ+91|dW_T_JGtcnc0p_sb zc@<27;rS6vh2d${5Npivi~v*3&-+zuPIwI)I5YJokf1H9XIO zX>52t1d}En=Tk+Y=RNL+o4_O)o?pTA5s$tOqtCEhA*b3GW3;TZsCxOkjr z>hN(r38t&znF}UYJo>o&VEP!IePE`GM}Mx2Ym8?H!_xuG4Dsmwc?3*W1P}kc+T?5b zY@UWgJ;?RHucn9jJI299;Y~~D&HDd&Wjc(X`;YT19R6AgW^A^8UXY%HJ_mn$xzkot zmMi_a7fimNZB?E_f)|{R``+xxZT)_bzZczU>lH-9UEL2wxeBB$eOybxOgGxPAN^S_ z9(_HJ1Cw_K56{6lV2TaTDlqwmXFr${!&9qCtZT91X$|I>c=UBR0L)s$GX;!m6_2Uz zSplZl@cafQ+VC`JihB~n(*aDJ;Ta01)bPv)lVEth19RB$oaM&7y5UI!;~J;0d9I() zV3G_^KA2d;vlmRV;fZgCu^XN)U{VavlVB1J&&OaqhG!R;WW!Va0=!3LcrFE#YIyDh z;}wr{-3h&TEIxDEGCUVvhcpe2)VR$xy$uT^aw7@;v>d5=g3t)VP=Wj5vhUdsHtk49{#Z<%TDwHSWU=&loTjhUZr> zUB#mx_bb}qS~))Q@frihYk1axi8nkkmtv1HJl(;#4bLnveZ-@$pQB(}8J;_mvDX=% zd@w17r{-nYpAFBwVA2fF3NTrQ=iJM2EDX;`Fr&nyANQ4D`Wv2_SK$3{@#yoM1t!Dr z>;#izc-ptcGn(O<118t-RDj7gJpHc3^OxaS3ntg_w7v>^xZ#-wW`^PU6U;or;+R~cv`07*~;(?15+#>eV)GoQ*A=zeg4vGaji5w zv%tg|o|@NT4#lI-^BrIs8=hHUN(|2zV3G{aAuy$er)dY=0~nrLz?6wcpXZTaJcj2@ zFo(snK)nwSfaz*@&i7#dS;PBPeV)63>0@|CfXOpFuY(zAcs7EWCmwx%{sxm}c$#02 zeM~(1{M-v>tl^mprpH>&Ph)kS*MOO1czyG!Bi8EzMj7ZQ)+mQgNZdfm)w9o!SM706K{B?fN|wS-se|>X>54@1QTm` zF1!)XapKYExjUEy!!rR)lHvKtY0L2J1Jlaz#NCAVe+*9thY^pyZ`=na)$lw6rmNw3 z7fffv^EH?Z!&9#__BzAU9ZZhlc?nFq;n@x*&+xdq;Qb%N(-O>b!_y7SD8n-b%ntEX zQ}>Pcz~mU7yz;uUl~}3{QJ7$%bbTm-XC0X6rz2l4j({0ucoJ{JwaM^w2Qynd)nsm* zFE~F>f^i$3x54CzN1x~IU|JcT>bK*b#PD1JCdKgF1E$pQ_`swYo|Rx?zuJ;e;O zcxny6{$qGLfk`ktPkX$Jaz8Exomjaf=M+z{lLsH zJmbN1Hau^GnQeFug6Uy++TV@6#qi{SNjE$j!ORnn{@JH1(y>+z&rC4O#iQT190xPX z@C>*Idy9DV0Ycc!}AK5BE$15nAwJ>!+qH649|2h3k}Z!Fk21J zbp!Dpk>Pm}%nrj-0>*E6uDl<6ui<$TOp)RF0!+a0#65sM8=gDClo+1(9LDfOJ&0?8 zc=Yu=3QW1-`NLrh&jT5FkI3-s26N2t^cjSE<4KXP7hAx%zT$n0J}&P=c#p{NYy=Z+ zc+v*rJtD)i3{0GO^z*%1ChpY@&#hqM#iQ?IMPO14&n*w5EyMFIm^8z4&m&;O_rOdy zJXMC`JtD)?8_W#DlMg1>@I(#69&UKLftg`=-UO2;9{u^t4`!a>*$rm7;rRzlf#GR5 z9DAnWxdzN~!_yDUVZ-wTnDvHdE||C??mzlE+yrK;;rSO#yy3ZY1gQ#;)zzz zuh+qp8J>M$+~U#4RrN9K;fALYda^A0Vj#p@& zd9p14Gy4o}ktqT*_6%*2IS3|CJZ_XjZSh)}_&DApI)jHyFED4JSAWf#iL*2Tx0PZXLuTe@fe;I zFvW(a2blii(f5R*V0IZEADDrL=Y24xhNlQjrg-#u{s+uq!;|y`&M)!k-tYIuGDQ(<_{ehSww!_y9o8^3!kc)siNd>5D=hG#sOw&Ky(&oVIShUYMtRKwFE z8*AS1^Z}D*c%A_>%J6&wrmNwp0Fz^QI*!8}8lG`re1^vlroZ8-05jY0q>RV@V|a#v zS!j6P2a{=degIQwcp6N=bDZJ135?(Hi~=*(@Dze6GCbvAatu%N9GuIBr!SaX!;=f9 z#PECuX1d{tdK&Nl7@jmRvkgx+mYUScRBE$0#m_s zo~>Y7i3j(kr@iR8W*XijGCZ$=NfD1e&$WFxcMQ*CU_9a(h2Dfe50--o7@mio$1{=P zDFIVvcr+b4NV-{7eH=EjRK$e*(-{@#x3B<8-`7WOycm z$rX>@pHeW54bROl;d&|_uR1?V!6X@;i(ke*CLX;%lfbk!JU@Xc6OZ1XUaw${8J=}u zQt>;7BkdcBGjLC9c*cWCGdwH7^f5dYPFv#Xs?PJEnYb43FfePz@PTw`uPG(tl_y}9kpvl`4{ z@i^-+{J!q$b=d0+Pd=E$9h{%Gs;BiAc>l-nybmV$F9|xIJy-=#<+(<|^$VCj(pKf~ zjXHntye?Xg_lVBWmh<;*?i)U2=rEV7;9UM2JSG>>d6b`u$i$*|N?T_+!;u$L&kDm-5i04j zdMp11Z>G-OMuw?-QOTCw<|4Ec-oy8VVd@|%1xD)HZ^L*mPjkenDB*WAsRJ=xNmoQ9S{2iXiV~UQ2~x>KH0<$xIznQ|*5w!_+8LvSOLiuV2fBVd@`LJP+}jqNh5PkYVacry|#7 zten$cTpNC2n5saf_(8U%r#kE>!_-(*${TQ8XP?%ROV-9JVVH9L1b-&m(o;7I!_-7n z(q&w=)wVVW!&Hr*adnV6)KfPL!_*{H0)yE@edad_!&Kc;%!VyYBS#pf)}m4%S99m? zD}3Lm_Zu0e`k<06J3u{W!sW%bW(&jAcc^5^@pA65LocS9{!WIeyHF{XIdq-^LNBJ~ z3d7WQPDS=ZJ$3FMWSHuKN}jCw7HEhqguZ%N7^XI(5+~=fo~mC?hN;_7Nv_M|rJt2A z2*Xq{D%moJdg`1%$uQLe6|eNLPG|y88{sR$FtrtxfXs%TN;pV{sa~iQT+VUfheMSW z^|CNb6{C{ff+?SxN;pJ@slKRq>M^BX_1+YQsh>~@oW+!W)oXK@3{zRC`0Fq=7(EQl zK3B;iVVF9MN}il4t<`beb%YF4t5GSIR9`i9=}|IFy^Kn>+`&5k;(7SFyjvKin*4=v z$qujrk??U15r(Oys1(Q?HdEVj9V5e(2bJXdoI|&onkWoY>rhFT>#_%_@E+Frn+#L8 zq2iaeu2I`sDhyNZe{d{h7rjkwYmhKZ<)adJ9>;aA+Sd8U$uKnul|0#_TB@n_!Z1~( z0{0v7Z0jmDHAEPuzD30?&#*VEsmA}3VX8kWaguU&(eM@Zx-d)yP|2>&9(Gn&)Kw?Q zFf|dCVtKdcDx_+lz2J-I*EV68YVseByX*j7;NfdykT6WWkBVDT`p*F!6^5x4{0rxS zIF9Qww8egfzIsX+ru?X6HDRig+QXPAGE8}$imVO&y_5yQFm)7_I7#U}OsPVKso|)k zpTi!esy$pG3{$SEbzFIp@~Eksg<)zcDt?&_XB~zgukVCm%3TdtA8D%>Qla}c9)k>F zn0m*lNLyKI>aZ|OrBp}iT+T*UwTJHt!&E{Ij4OeuJJnRKFiib}N`bW1UrlA#B*T;| zx{k};h;5Bj$2C+KruLwcEQ;*kQ+`zPq%A#lWo z;jz<&N<0rKY0KHMLod$DL&7li4k`um zUCwTy2)<&fLKvnxH^we1YeOH`EMb@`MI}qx(#Lhp`DB>NLB%a?MWbKgcd%Q8VXAQx ztV8+k(nIRF9u|hF#i)3shx)i`HzmVVFI0TemOicp!Z1~iidWjw$90{X3{w+PDSm)w zO1e6(UBWQcsu|8xc^^O@*92jh+KP%#+S13>@&YnUjY7pEZKbI_{7RVrWA1(6q@3RO z@npJH?_xbbunOQ1TuscSa>g5Zqr6wp2 zm0AKMtZHa)*Vcu^p;Bi8i7798yPi}WD%D{R^o8;|#9G5s6o*RP4J0yw`s+SxsUH-F zO7+u5Q5-7Od2i%~y7QRvL2)%lMHGihJq#qylxnvR zai~-&kVdA|J&Hr6Qb6jNQiFOChf380N!-{a9q;yeO=!)QqDkq4V)&KfP^psM$irDw z>PfIO*I}vD48@^RD}dDBM5Ug$mfCAy;!vp?Af^A%Qy!fAMz!0II8aae@iF! z4wWkFi^!{c*?rK<<{TAQ94hq%kdTU@z0^Mah(o2SfrOQp{cQAc#i3Gbfh3Elm+hqv z?oS*lH4R8mMc&@aA1Dr$>OBBsSv?P6FEvAPsMJaz^~%eh^Surv4wb3_5@LG!CB>mq zoex4OmGeiUzcMo^jp|brhf3WJq*?Wsz0@kjp;AQ$V}(^-_A4+G6^BYa3?!&xXfL%^ zai~*3+oG3ZBVqrnN`f6)V0&Y4s246fq@@xQocVB-LGK1Y4zQ@Dat03@?A ziuc8Fz@RS9s1|wxIg?-VUHR{o;H=5=RIp%u2u?)li1UlgL7BAo;4aQOA06VH4^EZR z(d$E;7r^Ooy&MgGf6=?+kzJf>M(0Fu0*uZb;6xdnFTv@-==2)W#i?O*&IhN6(Rme| zT1IEPqq;aHj7}vu(-@sc!3i@ue}fZabdDX`#Tmxv+y>5cM(1mA%ChJbPnLrxb{LJp zx6On{S{`t87pG2n*>m+`a4NERiR^w2oO-2W&(-e7Ab%L0a&TrbIt##=#_0S8PJ`01 zw`u-bf$u{l+k$=oJC5<-e21skNpOtQx47&MrRQ?D;b@RrKq#gvG@B);H+kJ z?gXca(OCn|T1MyK6S_Fd8J!v6IQ7}rf_K4bW^{Hvv5V80(K#EO6^zbP;1n=A?N93B zv@kl;z$s*OegkJEqcd>?_Th}qH{c{0oq;EJaRxFvH-NK>(fJyjp^VPKry$1|of+Va zV07LEXN}UqQxKkm_7cHUv2S5?CV;a}=@fWWGJD8p!Kr3+I+kI-ftwVYL80~jkm_?H zIJJz<9pDrw9s4+43C?szXXn$fZ((%K0H>bOxeJ^iqq7Q}*^JKKBa!or&O~tLGdhoh zQ^e@}3CJizowvXVDIK4AeiY_9M(0#;1~58zfYZY0dmOa2gn$FTh#C z=65QYcV?Gz*(ep z24ELNyPnLehrwCL==>(UluiITnbUky9CQ}05#5-5p1%Q{^-9M+uf7jXfYI6MY@CC9 zMEg3s&S-FYFgo{x(}B_X7MvnRr&l%BI7X)$oDxRoA#ge?9s4?%0w>Jq954ZEC8IMH zoMDX4Q{ePaI`%lP2d9kDIea44Tt;UGI2DY}8{iZ&I$KS`TFK~~3{DZFb2~WG7@g0+ z>8*6^{S}O2Ensv;gHyujEC6Q~qw^~`0~wt|&cR&A=*$3TFr(89&O%0Khsnq>MyDK{ z#f;9q;EYf@_W3X{1=ms-oeRN?u$eG5)AqjPEv_9RNjJ|Er%&Pqn-8*plsj=fz6 zPQ|%7qjL>7)0K|BUGIRimeJYaTDc4*EI1KHCvO_|T1uz8_4-d4IMs~KBjBu7 zI`;T%0H>DGIsPJy9i?NB&mG`QXLP;+XFa16x)^(PM(2ERI($s~AA7rA0B1I%)A17Q zwUmy%T_=MxpV65MP64B{4xB}d&hatq6O@j~aP6w2aP8;8Zg@J6?$#V|3<%Q=@dm`kp!He5d;ic;0$1N&Z)z?%;pa5^(OKZCP|(HVXd=1fNCHgMK4I$wd)gVEV{ z7TSJu_IZ9PIE6~bo#2{1bCZ^j;5>Dc#~M}yOY(YYR+5=LhQI7N)k4!2+qXLPE- zDPeS;0%xGovFDF-E3W@AI!A*uSn1f~a}zkj7@beR8LD*b_1U8V*MAtD3E-3}9eaHq z2d9G3`2(C0O2=NGLAT-h52JG}IHQz~y*@4AOk;F*za8f?O2=NGYH;cpohQJlQabkf ztOsWnqci9Z?0=Mwy*{^q6K8b31*b;o*z0r1Y^=GA&JEzyDjj=$z6576qto|Jthq|Z zUY{$#S<2|V2hMaxXRkRphh=om2d9qFSq{!hMrYT%um?~&_V`4>SV~%P>DcS@Bsk73+2{E#bCF|8$6lXGa5^(O&w(>f>DcSD&D}WnWOT-Zvry^S z>+>8qg^bQt_h4_s=!^p=#OOQ+<#q`#h`#jLzBMELJ-9_$0s?%IIu+FV3lzjy*nA z;EZ5&o&{$qqqD_*m@^rjlfY?GI`($W1*e+P`3an6M(42mF-I{v*MrldbnN?<55bwv z=pqjNGi>y?hZ-xq*0pV8R>j`Ioad+j|_!07x9PJ+=n;Xzz;V07*UXE~$u2RNOTPH$WUFz=-dm=0Hsr8 z)%gRQRgBK?hcI@Oj=er}!AUVXzkxGT>DcpU#>2=BMrVgduFC;!&$>%|6e z8W^3)jX0NKbiM*-w$ib;tM*Y`|6z1GJ%)8h>Db$KGB~{%ox8x9&**#$&HzT|fXA_Z zDII&e=7KYr(do7bV^HbX+jRywrHsx);4Efz)`K&O(K+@BoZ~AUd%KpzUn&EOO=IzNNcgV7oOU(Df*&duNyF*=`sQ^M$!B*0;Gt^sEtqw@tgVMgb` z7qAv69s78{7@T2@&P(77Wpwgi#PuIWXE->+7@ZfusbF;azJ#@j(OCdal+n3mVxAMh z2Smla9QnC`%)XB9^z6D6alUN}?D&FCJM--{tv@)WyNhpK04I$c3nbN@{#Hv7uuSyn z^YdejQs)5)DxJ3c)GB>~FLF42g0C9|K>K+OYAB=OAF&6(8R64AB-RAZG@srf&Ntx5 zs0uGpAG+s84D7>SM%FQ2J;14By!wM9BQLyq!GL-x<8=Z!qm-9E8xyM!oB<<&ZsG*F8e@2}K zPKAnmW+Zuqrh^k_BL4_DGOGR=^&U7?jMsW_7BXJDze$3;wq!`YjKoP<4{8x z4bd(U)jWDj{hR^LbQO7fM$HFjH52*Qz>!fEUiMY*D{$%SvfhS5W&6{ zoW%Xa5y%}t!t=ezgFxaM@+^?R176MwAkhV0PRng29U_nUSyKc8SX_c0}?vHi`)n#c%m113`pu!FY+P~ zXQUTN3Z&eN`~xI%rbOhPyvv&yJ7Wkj=kQaX#}`IxqyFFezMbM)`Q0P4)EqTfR!O9+ zd(hcU;&3;k@*+DqPDJAsN2N|@HIG%`ef-ku=!KTbaRIG7@%QXBnKb(#a9Wad-KLTE2>M+b)3{fch9CpPijz{oeB|oQ6JOl--@$P9*H{3`Uo%aX?oLe zoZuv>?e=wWDmc@!v|V^z4o(Euj>Q;kXWFRmbZV=%->B*%+CB<3GAngIIBQkg?R$ym zz^P-}{w_F;?%Zo@yNJ&h;G~En0OwaAAzbxHN36}`)BP=~vxv_DsE^1G{pbTuhtDZD z?0bn5z?sFwCkl>iyT4aGIGq`cCfD=F3zwLtaBsftF;dBfI;Cu+Ao=UZOuBKF- zMSMD;K4yHjdI#6}RebDg(*fW#Gx0eY9NAL;{Fw|+i1DfiXC>qHFgPmC>2uF?u(f|a z0H?7IbphHw&uq6Ke-BRZA^$#Y>oK@N)koAhh#H!6%MS12UWtlf4{*%3m4LIFiQ)0! zL~65N&A0%ZB<|VC7~)jO^DWI(vj@F8U^veEKtiOPM)Fp`>lW85jYNP1uk|9Y3C{Ii zmUcjT+K?!kqqkBln(eXdk|0#2#wLHmg7_C9t^ zOb;Foj*PSL60={X?G&fU;EYgS_T9xiaGcrxyKbTNJ~*-mh1Ul_%&a^31KbNxUfrn* z+RwS*bY{G^XrbH?UL}}J&9jMf!HFs_``N_T;1n=kr+i3RC%k@k*FUYw&L`m1Fgx?0iMXz+B`J+E0b-Z-uhtw_gE^cTpUzhOk=N5P4!{_0Gy z_VZJ4LQH>k`h@yIc;RA^V~(FA!C9!h>}NMIa0W77&w?X+S$N?xl*Q{eaF#G$p-*vF zn(;at9GO4DtHtVdFF4B?uOv7l7_Xf^qs$auVvaJ$@`>QAR9_uWP}HT?QXC!0#;JQE=2Okrx6J(`Kuq1)R{Y9k5CStyd}pz55p)PP+W@KpZNS zMy@oF=YRw>&bJ1#{gooyLlJU9$oO;IVO+)!dAW^MdUB80YmR|Q_AVH0DoPkUfrSiR{ z>J8*EAoZH^I|lL#kW!7){cA7M)_b;oaF@9%a(<_D&$s@k7Mv6_zMciAo*7^NfFm