From a42422f1428f081b0f712ee301dc24cc0f9cd068 Mon Sep 17 00:00:00 2001 From: "scripts@glrocky.com" Date: Fri, 3 Jul 2026 14:31:52 +0800 Subject: [PATCH] update --- .well-known/schema.json | 1287 +++++++++++++++++++++++++--- glrocky_sdk-0.4.5-py3-none-any.whl | Bin 0 -> 230878 bytes pyproject.toml | 3 +- scenarios/tc_generator.py | 437 ++++------ scenarios/test_cases.yaml | 358 ++++++-- uv.lock | 351 +++++++- 6 files changed, 1979 insertions(+), 457 deletions(-) create mode 100644 glrocky_sdk-0.4.5-py3-none-any.whl diff --git a/.well-known/schema.json b/.well-known/schema.json index d181b53..2f1489e 100644 --- a/.well-known/schema.json +++ b/.well-known/schema.json @@ -11,6 +11,7 @@ "osVersion": "15", "brand": "HONOR", "model": "MEP-AN00", + "models": ["MEP-AN00","PNM-AN10"], "manufacturer": "HONOR" } }, @@ -48,15 +49,9 @@ "isArray": true } ], - "parameters": [ - { - "name": "phoneNumber", - "label": "主测机电话", - "defaultValue": "13302325670", - "description": "主测机电话", - "required": false, - "type": "text" - } + "parameters": [], + "appNames": [ + "agent" ] }, { @@ -83,7 +78,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0103-audio", @@ -109,7 +107,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0104-txt", @@ -135,7 +136,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0105-audio", @@ -161,7 +165,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0106-audio", @@ -187,7 +194,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0107-audio", @@ -213,7 +223,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0108-audio", @@ -239,7 +252,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0109-txt", @@ -265,7 +281,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0110-txt", @@ -291,7 +310,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0110-img", @@ -317,7 +339,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0111-video", @@ -343,7 +368,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0112-doc", @@ -369,7 +397,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0112-img", @@ -395,7 +426,39 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0113-txt", + "description": "社交应用内翻译", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0201-img", @@ -421,7 +484,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0201-audio", @@ -447,7 +513,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0202-audio", @@ -473,7 +542,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0202-video", @@ -499,7 +571,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0203-doc", @@ -525,7 +600,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0204-txt", @@ -551,7 +629,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0204-img", @@ -577,7 +658,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0205-txt", @@ -603,7 +687,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0205-doc", @@ -629,7 +716,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0206-txt", @@ -655,7 +745,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0206-doc", @@ -681,7 +774,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0207-txt", @@ -707,7 +803,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0208-doc", @@ -733,7 +832,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0209-doc", @@ -759,7 +861,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0210-img", @@ -785,7 +890,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0211-img", @@ -811,7 +919,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0212-txt", @@ -837,7 +948,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0213-txt", @@ -863,7 +977,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0214-txt", @@ -889,7 +1006,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0214-doc", @@ -915,7 +1035,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0215-doc", @@ -941,7 +1064,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0216-txt", @@ -967,7 +1093,155 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0217-txt", + "description": "实时翻译", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0218-txt", + "description": "AI帮写邮件", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0219-txt", + "description": "邮件翻译", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0220-txt", + "description": "邮件总结摘要", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0221-txt", + "description": "网页摘要", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0301-txt", @@ -993,7 +1267,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0302-doc", @@ -1019,7 +1296,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0303-txt", @@ -1045,7 +1325,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0304-txt", @@ -1071,7 +1354,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0305-img", @@ -1097,7 +1383,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0305-audio", @@ -1123,7 +1412,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0305-video", @@ -1149,7 +1441,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0306-txt", @@ -1175,7 +1470,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0307-txt", @@ -1201,7 +1499,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0308-doc", @@ -1227,7 +1528,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0309-txt", @@ -1253,7 +1557,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0310-audio", @@ -1279,7 +1586,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0311-img", @@ -1305,7 +1615,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0312-img", @@ -1331,7 +1644,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0313-img", @@ -1357,7 +1673,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0314-img", @@ -1383,7 +1702,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0315-img", @@ -1409,7 +1731,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0316-doc", @@ -1435,7 +1760,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0316-img", @@ -1461,7 +1789,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0401-txt", @@ -1487,7 +1818,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0401-audio", @@ -1513,7 +1847,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0402-img", @@ -1539,7 +1876,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0403-video", @@ -1565,7 +1905,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0404-video", @@ -1591,7 +1934,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0405-img", @@ -1617,7 +1963,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0406-img", @@ -1643,7 +1992,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0407-txt", @@ -1669,7 +2021,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0408-img", @@ -1695,7 +2050,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0409-img", @@ -1721,7 +2080,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0410-img", @@ -1747,7 +2109,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0411-img", @@ -1773,7 +2139,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0412-img", @@ -1799,7 +2169,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0413-img", @@ -1825,7 +2198,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0414-img", @@ -1851,7 +2227,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0415-img", @@ -1877,7 +2256,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0416-img", @@ -1903,7 +2286,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0417-img", @@ -1929,7 +2316,11 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent", + "album" + ] }, { "name": "TC-0418-img", @@ -1955,7 +2346,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0419-img", @@ -1981,7 +2375,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0420-img", @@ -2007,7 +2404,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0421-img", @@ -2033,7 +2433,39 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0422-txt", + "description": "音乐生成", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0501-txt", @@ -2059,7 +2491,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0502-txt", @@ -2085,7 +2520,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0503-txt", @@ -2111,7 +2549,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0504-txt", @@ -2137,7 +2578,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0505-txt", @@ -2163,7 +2607,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0506-txt", @@ -2189,7 +2636,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0507-img", @@ -2215,7 +2665,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0508-audio", @@ -2241,7 +2694,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0509-txt", @@ -2267,7 +2723,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0509-img", @@ -2293,7 +2752,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0510-txt", @@ -2319,7 +2781,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0510-img", @@ -2345,7 +2810,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0511-img", @@ -2371,7 +2839,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0511-txt", @@ -2397,7 +2868,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0512-txt", @@ -2423,7 +2897,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0513-txt", @@ -2449,7 +2926,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0514-txt", @@ -2475,7 +2955,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0515-txt", @@ -2501,7 +2984,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0516-txt", @@ -2527,7 +3013,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0516-audio", @@ -2553,7 +3042,590 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0517-txt", + "description": "个人信息查询", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0518-img", + "description": "AI壁纸", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0519-txt", + "description": "应用级翻译", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0520-txt", + "description": "智能打开付款码", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0521-txt", + "description": "话费充值", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0522-txt", + "description": "点外卖", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0523-txt", + "description": "生活缴费", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0524-txt", + "description": "餐厅预定", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0525-txt", + "description": "电影预定", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0526-txt", + "description": "演出预定", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0527-txt", + "description": "快递查询", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0528-txt", + "description": "快递提醒", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0529-txt", + "description": "机票/酒店/火车票预定", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0530-txt", + "description": "出行推荐", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0531-txt", + "description": "出行提醒", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0532-txt", + "description": "健康检测", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0533-txt", + "description": "健康风险预警(心律/睡眠)", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0534-txt", + "description": "健身计划生成", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0535-txt", + "description": "声音修复", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] + }, + { + "name": "TC-0536-txt", + "description": "手语翻译", + "supportedMetrics": [], + "materialParams": [ + { + "name": "paramGroupUuid", + "description": "UUID", + "type": "text", + "isArray": true + }, + { + "name": "inputTextList", + "description": "对话列表,支持多轮对话", + "type": "text", + "isArray": true + }, + { + "name": "prompt", + "description": "提示词", + "type": "text", + "isArray": true + } + ], + "parameters": [], + "appNames": [ + "agent" + ] }, { "name": "TC-0601-audio", @@ -2579,7 +3651,10 @@ "isArray": true } ], - "parameters": [] + "parameters": [], + "appNames": [ + "agent" + ] } ], "commands": { diff --git a/glrocky_sdk-0.4.5-py3-none-any.whl b/glrocky_sdk-0.4.5-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..2ad64cae1b15dc6303dfeac4335ec57c59b81cc3 GIT binary patch literal 230878 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

U}EeJpB0<#M&7U=!zNh?p}xwJpd9 zOe+U;QsBFHUQBGDhmN%uw};1x$J+$0b_bPhR;q`#qbT5uhmj|DF);{WihD|KOEFF9 ziZH7dQa$SrWAVxkQ-Clqs;O+U*uJ)kd6lz__rL7O-Zgd1mLHv> z4us7bO{ZocD#gZMSff#A@jWpK6TA1+NxL4pX&GfUI8?&jrLU710!xX(Q%-FpH*bh0 zupD#5{`tCE7D!=l9)K4g|66$RZ^!0uc=12`?721$!;hVdq4f`8K^rNqPbxtQ7Y)TK zX)&a2(1l-ml5tIL^d|-;#8ck(N0vj3R{H{{y_i+xTZz^43wz=dsv_rF!lZk}P)B6D_;liorF@ zI-*Lux*rp$Xwv!3;_5GSSt(4zkS4U!NhQPdRwTGC(Mc!cvB}c7wRqHR0Ks4cVqQCD zk0(dECi#9y;sfmhAop-2OM^0KBnEgPPIw>q5(3nQX`X3PVy!ujN7@S-|3m0uNb~lY z_BJg#OBr0V_WJgeoSu5o=*L;fDNybAa_dM!(y|0?`ymh%e98-=tvP%jO0&3nPkHyX z(pe-$S60etM7(i?1U(ol_vNBNGImn+MumgEKZ$Qttl&k-X@vIM-I<<~9R(E2 zHlcs~`Ic-D`F+HnC3Tnhi2q!OzO%IuV)&Iz{2uHhwbOiTSyGW9PkzStBb1RH_zo@G zSQGM~MCny`M?uc8DL!q<@R8<0p+eWaD1XoLQH(8XXKj_L9A^C89Cr@3IAtwdgYZQlbga99{)CwRBu#Z`MCN$;+;T=r z(QY;I{vc-E5e$U&t*7``R_xwwJn}#ky2NozpOgMU2mBfsn7Si5Y$ma>Ti`Vo=~Ux- z)Oo^eHzyrna(9h14cnUYPVw7>6pR9ve(&xtd(=)#KuZDvB%vBMB)Nw7@H|unIY6J9 zteJz1u_dMjpPC6MvnU`&$+`*FTZY_+^QHMAA%?n@xV(PfqR&*eNa*~Rl!{G^?RpSWU{)|;WR4`FJPt-p)aLxj1xdDGL$mhmg2KK-#@OV0GNH7x>#UuV(XolD}j z@3Xg?A0NE|BxVcL*$G~?uDfCwgqYpwtZ)yEf^B<1%Y_vl{nL|_*;RySEBr}F?WEL< zMCj1Sd3*R9XTNNE^uxPZt5v1pZy2KQ_i;`m(9c%_F(i)xKR}6CJP-wTpnsvkdJCG} zZ3e{B5UBFv&B(^zOABbpr&r50@^ukmcF0hs3}+?P{iqwqt?=QEQL1s#C|r{c3j_N; z(ieWMz5A2YICL2VZ~g*}E3CcuwKh|?6tRWs7WfJ=IPMSdXFRpsnGAlijUr5ydka7y0P@wgyDA_#rrR@sXFiaSA4-a zvZjbTR_73KmdTKm4c_@;!e=_3sduF>oA`4J}VUX$bmZMV2e9RGf%^}B3a;H2$S z#Lk|=eF5|ues^Atr-YUf_J9=NsoKhX7PUOKayz(qaqCYmH|;jSB3}H9Hm>l$hD>gj z&VLP+djYHx9SofTUOmo6o&Z-pTYEQCr+?YaEkyXP13+b60AD@9|Bb)+FL0(JZNJEf z)C(B-@u?Qbbsx}H?cI?-5Bcx#<pVm|Fn9BFXB?l9_ugYmTegxS`Q<} zB(3z1fY3AG+!4~S*@s$z3~*cpgU#$O?0!Lsq$>2~&Ju0&sqL7y*%L^{pY9lk4egFk z0@F{>&VQg-_jRZvbIe6?GL-e?21^S)YFiso;k*C% z`8=_-P}H0?)oizz#;4S$dbpC|9_rw~d=xXrZoOIN!<^k=Ae!F{^4p#Cib-7rI`WZt za1SIf7sfRVk;@_<5cRf>#+4>E7?`G-Z5eFQ11TB3UgJ_XTk4pUGRdXkx?0YeaW0r0 z>e_p5;NTF`bvGil8a^wR>vxN)O<>S^N9pi;r^_eynY%591iqKyDk~E{FSP1vVATb; z;*!EX&<-*vMY<<0M0M6{(6$pez~=Ewb?<}y%3BoSJahtFTWK}e4W+7qAFTL1)6HzdKGJGaH*TBDBVewTU4&7spdep zW0<%RqX8-by@5(PHZ4FZX!Xw6Nx$ir{&9yhML;5RcBc2t8TW6`$*VxjoffyAV2%I7=kzadp947a<_I+v_7S}dtjmR3=E!B9bkJLI&>a2c~~|J$>7h3eX>Vh zk(cFHCGSt%5ANec8cVQEJ2+N~JT^gz6(I>nV0<)&5w2D|z6hxrmo%vbAtkFfUG8w< zal?3M1KG7C=B+}XxYfSB@u3~9!xJ2?QOYGbYE3yd#XOK>uaqLPk1vW`w?)CpIbk~x zn@S_)!a+9kl~|(3Yian)8mX)4nHKXgt#9%i!iNrVEq5_PPj)emJ3BfmZcFNN$ce=B zK%J5Jcn`7my97SKvHhMKEORdcp7{=vB~d4f;<&6(N^Srwt43)|LXRxP|8#MXDGeX0SfHc`zXf{p4CKT+HYSFq*bmQV6;%ODCxhQt#A{ z`qg-BkadSiz@iPS8QxK|S}An~Ek5-)JVOseHA`80BvF5rQ$z_-xr9f;&9WGdan_tt zSjw$N>)`y16sofz(THFNW-F$rMEO4atwuk8K>vYAiOE8f0`D1CnQ8lkZQ8-Su_P107q96?x&&d%8OT8$9`rJs|jWslgsUwYr9j*1~ z$Ahse`OwFNmR|oO?eYgEZ1avxigHyfx5O@HNO6JC3`#OFC(LOM*JzcVyt1YkH@^)8 zh;EDFrpEWNrl9a2wMP1r_btB$gtd;LAsc{~yPEKP%+7vzsP#yEm$OqTv?z~wNK2K_ z7G2_^nOds}n%a+Nt55d0<)2eZO<7Q~hdF=tnm%G$<$19fRK~H~3W`-ZbVr__n8xNo zj+66`W6&@7b;&LLn2^#}^&AA&KHpF6^j%uX*$Hsz?&Bn81YLzdSP&B*|AScpq$rVwkB^Chf=}vD`riZPx2{6p>to10yRiZ)QlwqlA|zSDX-`kSVqk(naT0JaImyL z?uz)K9+M3gIi}t1leRPC!8Nr;)-t^*tOC7es_caEuQZCj}xgdLlCB z^uIZf3T>3d@$eaSaB31~!LP5#6WX7Lm z*Oce9Sef>Y-|m=#8{%ropca_kf=f_oZJ6j5czvvA3GyEom1?@Jn>PdNqr#$ghAq?1 z!)(iUF_b;uH>~hb%sC4}a3s@Mzh zBZ#raXK>`D<7eU3KmTda_Ik#8WD~Hhf&pzPnt!>y{$po3>;EM~W$)w(*kZQvO!fne zNTE+}=oI7vvRGC0iAq#-mYCsg1x=-n2uW-PS&%Xuo`Rq%MtiqB$w6 zkR5S2<7-~Y$@rm{&R3W1A29h!Js-H+K>$HkH4x_^>dpi1WFOCOFxjW)LFv=e58lLI z%4WXZfh7Ndws=J`L05&q5?k@05#B-+O{bhDow(uSf}6+#De1Y}R{@ibIA!G++=BM; zOa5BJy#A*}0<6n_ihMM!3NM)p~3+IV*j@u_J2K8-`K*? zUPGDNR5+R`HQ$A~mp($;E2(a>&Gx;a}HMQVkZR2pNnp`Z2fX z?|i5ut`KcA7DQ9H0mtkX93xq-ddbOml2Z$OP)%L`o@u9;z| z*&I6rmK)v93}P9P3-GSOhWHYS68~{opr|n8jbaQA1vA8hhXOr@5EAjRbex0LwKG36 ztlGweeG$bGX{gtJDWXA%ey{B$#_ZRB2^q+{#b+akM6yLebKYAE%X!zunoY6|K=c4k zCV|4+lN^VjT(|mpXtXvBu}6#pjH8E@gG@=JrDj!GOIf?F(1=S33mw5|2};W%#Imz! zEil{ct7lSMv6{3ki~yNI|LhWda5m=AFO;c(5NJ;%@nWly3h*Q>8%Sz{chJGc4RFpef(c@+?I;@1z|B1)#)~OAP7pEy|Db=RdNjU8F(ytPgj*P~ zo%*JH8Q|0=Adrj$2Mw3_8szxw`qQD`ca_SX7+iyU^Sg|N#5Ub`t<|*Fbas-EnvMu@ zosCG|cqwcF=`ca(Yu3X;na`jaBcdxefU!c&YLwGhE1X*szJZ_n1QmHR_Y^A5e%%(2 zj($m8w79NlsIH{_nLvmws3hI!7~>|n93I#ZU{r<8DX1RL$8vG$9#byGMv*i_m0@Fe z0H0&cy35!}nlDzlvQyl*AhK2T4Hyll+IVs*Ds#K3>WcJOdH8%J=|X(vNtretI6fB&8)K6PLsQrl58Z#ktTnox%eg z3H<{hg0X3-&`6tXB7mt$mM80PYCe@xh$5^9#)k_r=06wK)5{Yhk3an>-WKaFm)F~t zVZoc#j}ypefoe56VYG!2#l<^WWaiaOW`Y##Rv+>FYj`YY)tBQx+AzdNIeJ1 z6zjH^e+U5Kd2wIyc=D3#R5&R*ietnnF@x2)b3G+uNiIT= zm33Z<`vF~%mqjy?^->7a_dX64n)J;bVFl;gENNdUcePH%Q7qLpUc^Brks|PgDrsJN z(Nr0iyiOAwnrN=EcJ@O#my3`=qpvLIoJ(egdixn}anMwzv>-2(Hop0}tf^Wuu{>8mc z#T_qx8_z9Ys7^PR|1Ig~&C~OdJs#{m{!!+c?3wLWT3<}TkKye2-ne!8h~k<8X%Q~Yjv zO&U&U2}G^5vxn*L!SHe|flD;({IX`wp3Hrf%_ixgNU!y?y1RXjS;$z5mqN67leSyp zF4a}1^jh&8Hfk9T*Zq{~A}kPSx;c%dV(S$S;}wig+ab&#?ZvmvLzm%4-2%}a3F2~1 z8OItN^Jv)oDBtcx<;(Yo>}yL4|9PMB`}Iqr5}>tp_LU2j>Rc`^_Hewl94;41x(X*# z&W8IKCEdyct)B&7^6gT|b%6_)y>5Q4PKOeD2|icc3k$_3koHGXNi5ce2 zGP}Kc>Y8$$c${S!FqnT=CFf;n$Y_9w+<)bf(djAWWB4N{em=ESZsiW->sq(fIlB8* zezC7P(fMk9+20(dW0`HQ;B;$r3be#nTUrxHRxNhFa(H^+Hu^ew7{A}kIi1mE)?Dex z%h?IV9qBOoxg_LlO7V4+U{mM6pWjP4ea%-R5z_qO`|a&ah6KuSsrlnzaG(50{&tq%Em+Frg;AqM2$tLr8P%p-cT`j59tjrf!!;s6Mu0Qlkm4T_jK8QPk< z+dEnR9mh=kpY;u81+63$GZW*%p45L-L&{?z72~qBzvz$lqT=Nz z$0Os_>s2GvKwzm(C;=XmG{a87|5V)wF3N`smZeQ>zsO8k%A|j3^o# zYiehi^BVuMm*c)wNvCyI+2m809*d+uoL6srGjAoNVPF%V5i9h!+Mqr#3o3kF3) z!@sq#T|S}$NAZX%=0LgR=4pq2*8;-%!m@+G^MTOE4T2!^akT1Zo>F4@WQ5yi<5uHc zsW!Wa&fV7g*V(=$c1Tp=A4)Lh#Zx7-R-M$ zyseU(Z(IIB7P5yXEJjN=MtMT?RK7I zb`{&%AYOipU~w+E%%hE#gtpxIZWqOPc~pi9Zxc9~DwH0^Wg=;f{Dkq>z&$UNtkR%) zPySMah1dG#a1>(4qy<&dSZfpy_-K;b{ngvU$oU8(ftDy>YNXI(K8t!>AUIyYt|{&3 zWe;_RU%$GJA|H0kHtOQJjdY}5*=vQSI45Jf=UwbTr3|poSVw40mVmURQJw=gJNRMv}KgN?R(e_3MFAkc-Cj>8~4>&=)I-vE-3HCLlvAn=#BAF zG0{E?#=YRt;6Ee5s2ddxjkE5TUeyso&85xZ1P{~$N9%ui4#+mSP^T7sg8bvLm(edc z>INJ(C_r1`@BNPdI`#nHT4xu1XBR_f3w>)-PiMfP{2T<_AYL)ze=5--}AzGv4$yC zeJKvrq6y*QnNU>VN+L?fDyylLeH%e47f-^_89In@&qv4)Y*wuao0!Tt>RkIKhE;6& z&4L9~>sWkxFo%)8C;*bV0GAW{_XbUp@&yLnQ+jOT&fY=FTu#j#B^(wqEy=D>!d+5+ zGUm7j=>W^x!r<5AKSjNA%?$^3K)IU;_7X$wxP4~U%8bT3DJAu9u!C^ewh zUC}gm3PVgjdY=dOm#TEv0F4a+RiMleGe(vIGp4)M-rsD&?`{r^-Hi!kL~}pslDf^@ z%Y>L@R1ng(tCewDv25=+%~nFeR}b4U{}vw8#6k#DE)`+;FcW7MLLzr0!}N13d^L{> z4K#x>K-_;Qg+dEJdId}%l3Uf?PL7=|2{B-JQGFP)*cGs-Z5lHnR-{m;EnfpUmP+zD zHrpn}BA>!;>6{txm`(BMOPMSIt0bpqON{4xF1Z`~RgW_<4i{oT;0anwik#)Tdj5XY zgg4SuuCTn2lNq+0hz5-~?j@&U*JHmTd3s8F{5rk4HSOGFK`h#3PyJx?euDkS-S)LG zK1&M^1jNb+P@Vl>F1Le?tGT5eV7-@ctN}Ic&D%#5I5?V#(>J{0Pp5u#R+~{I6z;%_ zR!XoyjYMw>F`lGd;dxPBBJfkTx@0!0oNpGOq+)w4l&9iz;(P6qUokF?U!vx2=?C8Tg5;6!NB@Zs;E)<0*Z1|*~u6eUw6g`L~i%NEw^2}(bNYh&{#Gq*yuiH>X_L-!kPI4*NWiO!N zso*diZbam|6f?}^vgTYy*Gw0hfjHbBPr?8ElBd_-Xm|O^`LuqR&Q8zuL+AMgrKTFQ zPH)TOqOr+Q518NuQZui9(an-pgQkNHatsH$nB5Z8n1$YO*Bo*Y%p~`jg;HSR$;~1D z;)T9?aprd(2;0R$uxaxFu)ljh8QkIlCs2|~=Q1QWqcXc8tqYh9+34#v3MVj;cy**S z0%&iTo`!3Vh;f0^>8tBY9gYKZ&Hz{jT^2xbXn3-EPD2>2P6?$C0>Uq@?0f*&+1Vw) zS&`#*G&+zWaPp__u~7vLXZvc1E2ty_Ys^DTP8>Dk_o&-h&>g)Q zW0JiX%_CCJ<8~dfviyc|0SIVsP`!hBbg1)E;r>U`Ta6uuFF7Z6=31O8=E8CMbO?Im z{dqg2z)ogPV;mqGC>A6^)CKvUo!^}}VGhM^#*-``8mXI(U>R7(HoD$eu*=mXWANK) z?Lw45sLfxal(yl@rxF{GFNtBk3z3qL^m89fQ!g!2Y$!uISa5Zx9mMp7 zCCI&Gi|uow{n`bdHYo*iXghQxVkn)w!4gr-2Svg05=trNad8}S>yOnPt;Em>;7uV5 zU6UGU6b$#Xq2C*RstP@z7tkprjC1{|rWR!Z_Q@vGEWa19Yl6ePLMRJOh7+cU(yT&5 zkF6Aobz)TTv;Me*b|RrLwMbSwq7ldJ_a0TJ{gP07r6s6i7@3=X112`h!QNn0JPc)- z!f@%}U?$eU>?s6V($<-eF{WrO#rL#T!t|*9aK9rCvtL1q`eBhuSl=WxQ>g<9_E~Y_ z5o(LsepJqe%J!t4I$t%Kq{D0%A?oED&fx1muvx8=W|jM_4MXu2v#5c)L>YftvDJArnJ zBu#O3KHKbMImJ@)Y4y35)XFhTC=DrC9nwj|NW2vDPCCUwp?0DNB0~?2eja64Hda)T zcbXEFQ(N=x5Clg4dq)BuwR+N{ZQ=vrl9Q=yTq5c5Q_?QZY&0uBtzd3wu^Jb_Wvv+g*9rq=lU+4IE+kcJx#o>K>o?CH`zvk!p zI$9pf^JD#9nHqWK=V^O9oO5TdToht<2T!B!vQvg8rZWdS?yf_Hh-PeC{u~mc<#&!27+0AJ_BhJ7RZ%;)REd^3&lwZJj#3ghcL;DyDaqvJ{n1B2W?k-bL%5VIT-qbq$M zv0MuRvKy#PCwPwU%&WxkRh{nb!K5b#D;7FN_9;9a{>bwoWFa zl(GS3QM(erSMUDpFVY5tfFgimdvhi_XJ`|53krqZfq?%=?9wknL)1cj&MtET3r%C0v*e){hGV z0g!Tq*zan!3nD3YGERZ>6Q*ZdQ7w#fX)^3GHRF&LYtdo)_IM8~ub3ez9_xGxPk?P^ zvkp%nNk(TR9!pzS@oD!Kl~ji~NDI(yPR2QVH=XXAVPrt8*5V};N}bxm+r$yGqcs>L zB#lys1wPME*;o2XO99pq0DcAeG>P`}5k{HSW?PmPU^RHvcBd%y+tErnSV4NhtbRTX zqF=?V*595I&A&u?i0!DvDO#7N`p}+#l7dl{9f(i&GO)iu-N%VWd!^cKxxEI&MN*G- z;AOo-o0iq;x6Joq(21eB7K0RNLI*EZO}TM>j8D-(mQDdXZ3L{_B4N7>lAfQPu;f{4 zA~qWIBXaRuvSf{4cH@OlpXQ z*5A2lXpo@7ei8JJGlo{Mvo)`4f&4(Vf}R8~EbB=cu=YFP=yHM#AyRm42ZginT`p&f zl-8865Gu4N1s<+Ihu%3c=@WbYs!A{Zagyp0Q(!r*b0O6M$D%rak!FhPF|`0|wxAlJ_O~|Yr!7HR^&YGG_$?F+={H_mQHG_> zQ2?sg4IuT*U2Pl{_VIMA!b?!@@*(SXL>2Z(7VFL&UL=W1e)RE&Mva z`|3V;^D$Ba>j1)pkjQTMU6vNc3#of<>-KI^dt!Tm!v#>~nh!PlF+8>%alt07Iv0>@ z&L|N9{*^aYurwNKS@~mNWI0?`idL;PXK+qF9d7!S^9cWV!C*~H$mgZ;%Oq?NLy_Mg zckbonH!6H!j^uc)E`gO}SbnZJ*d;I4;s(|wTYlAgAC8ju?3x2<9pnViyCF=QK!y}MDfPJ&Kq4s`h{N(&^dZ;V%yaVfVVo<}QE zjfc-CzP#O5@-buH_vbDDHAV%hiYqpiPSIo-Eq`VCj&jc`>O4w|M?->*t#&lEfS)m) zm&WB)!y3&laksMo%9u0qq>}!_74wdw?h2a}DC=B%+aVOa!#DhaQnKj!9@MPpGgU;` z>rH{=h*z2|-zQqSjr=QJX*aE_xD@`Pg`Cz~8vuNhCpUR}>-1ImAzd?5qiDai7$}4f zQZ2`hMdXufSTWDWm4$jMo0{iU1oM_owDTGqOXX8v;M3Z!CdK>EVLA9knP(mCrzQ2t zazE+3wp-<;Xa4*Biw+k+=zjN|)#l5yh?s7T`7 z?w1J5h%OZG${O<5M%`*PyCzWtRhohiIV+1IOh4uX!25BMiy$Em6#XWZ0dAUz@UT`N zv>)^Jc?uMEDzRJA)qg4p-o0CtRDUou1_A&8oPWDyIU8G;+8X|As~ys`mEX`n`I-WYtea}8_#dnmdFT#$XmL*;j;pI&Z z(>s`Tk(`6tUQQ@El@Mu2IpR}Ku!*RkR?AEifu;16zmYGX)L$UgjQ#s1lc-u=T1s9U zRWcSE)G;9<$R<#-vLb8h&GBMkq&V$F#?*?VdXZ|vY)?U2bfOh!Uq!=$N4xXb(B(f_ ziW5tz*d$=8v?MyXb$}B4ab;#ua%5Gx7gD7Z&fa$3PUfx@jQ@T!xzxx4s;h#Se!U_; z;ggwcf1oOzp5c?BM50NqpWp+0yWfp3p5sH} zsnn>FVof~~V!&Uy=TCPZr$lwclJNUrYSi(DCw_%$YTTyFP3E#!N}k|mP-K6|(_w5Z zl!niLJ#)?Bk6K6&6N=(xzGaWcqDL#APiO~RlK@PN-WB#JjLD9={xIu)QFMfP4)C?X zNX_)#E9Zw7Y;9N2B+7x#aBK*lQ<^d=a%|`X6X#fe(J%3K#vEd;%li)*71@k2ZaprG z$xSEf<1fcTp9AwevhU0Y391mq(IN(!IPN5WDi6&SvQ(kvcu^KI6qAVIMgh1!6cN>> zp5$U0_TT3f%G!>2UqWXm!Cn}lK%e<=VKkDjb@2|O@kaC98{|g3yena1wSJ5|4{Z!@ zD~Xl;O}`TpchCL9fZn&)!mSfrYuz%_n#1~`;Tl5IR}=np79Hz-W`^7H9 z%PJR-)o;sJ*;@d5+^;JhJ#QV}>=k2$bPgd}2#|;ZGObu*&0r)Fwl`t3FRn-Zh(@s>gK%>6Xy7SsX)L=7~Mo7k}JJ7zjkB(+V!Qpfu~73pQtb) zjM+W3@^y;$d&TUh*62PD>l&Lpyxpda1UdZ4zZI%Nt#Vl=0Icu{f$hR#9K4A)0AvJp z>`kd^t{t9@>inKLfu#KafU&^nEtl%-J5esT+#aX%VJJO( zn_ka6?{UORR6D#R7C;1d+m5TJh%;;9m;)&yB`(z9Jg(xr3+c2#UHCoTJRJxDM4WLM zGu_SxgGaJb-^O5cZp=*iV%_0(@E?=?Tim|QzxN@`0^TIs^t@-aDE4`oq9QAZGCA>T zv~Ccx1rmZ5LpHW)LAWyBmT{$hX59oHKXaQkJ&n|lvr^GxFPEAJ0z6LI07y$rf}i@J z`B&vI=`Z*42ofheF2zs0MYg=L>Q#_N8?OS{FmSJB>NgPt6J^{=ppA2LNO)*^b$2um zF%aH?6oAV#inOBbFwKcWx4LTUus%hNFc74IHL7`xJc*p~jSR`;YekV>^mr)57?HHe zhsFB12Ul_0LBb{9IK5%I?Hkt0KXUALu;Af8%-Aw$8GL!BI|n*D=dH<;5ezxW(x*A@ z;L2SdwyBa~o?+Dv(;F;2jL7zw&bqY*qF9yhc)=rX6&QGM9XGl80mIb%t0 zSrzXs(CO`9^c_(XEc`Y!f9q8P(J(=wd*CmvzM^74EZODaFIRpS;0#5hXm$PtvUg+N zk8t)wP@mNJk9fOb2ZjQHR?b0tRr1TFwFXP!izoFVEc!>syR9ZVK{m z1CD;kYs4=)UmAIFfS$<_pdKpi*;&Wp+a%-X2KNj2l%TJ8OcsuVeHmVC(z}z+myI9H+k5-M2$tvr3>O$!<-j#{9ncM7+VfHV1jT&3t6^a|sJ~TV zOF%bo!(abX1==9VcV&R8MVu#{-W^}X*@}VD_EKe?>E)iLbQ)*1?K4z%X2vecCBbNQ zWfXOvyjNrGc;p9BUF5a?_ZKw6G@EABSQGJ>S^Fv(Jz@dg9iD*?r%~j35eyxUr-Xp> zs;WjWsV*R8URYwM2TrW7&YhvBJb{hd8BCkWa9@Bm{viP~CYgfSFKCOo-&FEPF8*Q0 zDapsR0Xdz9TL9S8gQ-w__0N~Yb`AzN3*CY8?_m790Pr_lr>C(~QpSgBpC&Wg^aD6R z(ExxctD-N5Ei`6jWQB6jK70^t-9T8fZi&A}z}2yB8Y zZe`;nrN5vOa1fCeu$APw0dOg}YgKTSi`0bo)<$I^L^zK=Al1+b0|G^l{cm2}bQ;zf znZW1z@dh{{$DWTL=Uwdci9V$ALr0k!Io{5&E$@eMfHho> zsfA&IB(g9Y_FTdd;T`zZa_wS!c^p=6{_S%q%@zT%CRtJ;sI(HumP`rcOVTS+$z;U^6i^bZ=&1!4 zl%$PFfhE46aluFc6|5MGXj5&DwFmF^x)& zTYYmwLGU5@F5GwAfIl~BJ{lzzQ1!yC6^-)hFeYrSfJ zYO;3}oy#z4!f>CC6k*}43X(>)Gl!<`ug5m-8rEktD zm;9O~Yn)A_)xC;CQ=C)`0Jo7(zRvyP5hgAh6BQvUlXl2W0V#C)wDoG)Bhy|C^AtkI z2L38}6|~xx+3p30@gfvbuI$?x#^zB`J1WeQHDQ$a04_i!`%Rz`NUVImPsds}pWsxV zRw!{Dt=fKrHoKM)_!^1==pCks(PTjN()HWr?k=d3F{oR$MSgiA5><|bVTIr-OnM)z zl-10EJ*HE>iK$}l=E>#5r8;_gI{HHG`;nv1kB`rT+~ptaY!6?LFd)DY+x?mJMY^al zOABB@hYep2olEMSOiT=0#0h3JTew-AS{D}>*8TMw}35^VN3i7q=oox^9uWac+H=SzBznK8yXx?6LKq z7GnNW6;-{>2bj|q_OeQ8rs2AK>P)ta@SQre`#0~e?(yt70nUWdCHoHb&J*VY;hLJ$ zDPFosL)_q=JgtC4GxuuBj_(; zvNx4=UUk-XA+n&}f9QVReFWgd$6~gqbn7rC$$@h{uut^HxH%J7CpuW2092jGlQ$py zWEP8hs7-x6Y|YR&MxP5|mRHHbkq+OEYB195CLcYh56CO$#Bm;h8*40ak|y?YxkFvi zi+QpVD^udognGc@F12{{<7g zS!J%1(OWO?i$K!dGyEm1s>BYxPcQ_NWP=2%fE#>Ws_JRK_6yg0bvC?1aP!`DLCQPO zVHM!lJS7u(jO?tKH;AiYKI(9suvvbiZ5dB(x`L}p4TA+#q3V-PLfx{6?B8JtbfM|c z3XCm;$a@C8zz`|IDxNR`R2$+owCUe_O}Pb5Y4;@PBG`VNHSWpYij7swQAg(Ir5~B z1MLLJSpbRy1*ch;vy8r;5TaJ((Lhn8adU|yB*o3UFFj7jM|Rt@}cp&@BLS16KUG5uYDM}o#AgVBrlpv?V06Qj?+aI1GQly~*KF!zx`wt*>L_74KumbD|TKez(^Y{DYnd56c z-R$nK*VFg45q5O_?i^naX(H>9kzYf#UyGAfmjYTsEubk(r%2{sa|-P+^Z3t7zd-(g zKu5BV+{f;6U|m}oG*$$J-GyQ9tM9>w1e3UP2n?ct7uiz&ljDI;1WRo7Q(RO(#YOf% z7niM}i>Z^P;lETPp(=vbivk!wnXW!X;j#|6JoHr><25Ljp<1AkgfL_27mFrj)01gn z+I6|0^0~Yg^m-KpFVR}d{<|h6V{E!nZ6uRE*S^jDa0>ZyWi*Q(S?qRs2`Uc7$i?MaB=+@+x|h>W(V9*- zPTvmh_CJO`fAg;SWOJu}9MB|FgK{Flj|f9Nwvks74lYFKNx`U4S>--`#un7F@VzjP z6cl5V=9uaPBCpfHnA;GgkKnv_(nj=NZXCx_;+WFTlndE%0cw};p69?7K z@RY}Y@z_{xrVTX+)flgsSk6}ip^f~PaxvNY!F&jKM zorr=NZZ3iQ&IM6bG{Lk#>5>@VB!@T&+mx0j4Z?dP9AducYVk3^x$hpptqKh^HIKK_ zAhVZQ@;|_$x?2{wu5iTQ4YhPun3fwFO>L9$+vbQ%O*{z<-Lgbo=grgc+r?XR7q=xW zW$I3t(RTSZ_c~-T2I(32+n^{!p11A;5}`NHHwLy@CgSnf)IEt<=n~HaX_rL2^SQZ0 z2geb^&`x6~tqSk7zTxsn)^E4w45REQfH$8@hDyx=Z77OjGdX{s-H)8p^BX>FtBDsX z6&0?^9NU2S`}=6==IZ-?H@*2X2G-;&4N>sjvzNz!Y0r~|4Ej|N;4H%aa0w|xfYD1> z5pC+WPp~CC2YfvMx;+z#`#cyPFx$J94)f0K@oReY1m2;?H3j2Rb{H0MgFdC3R_1Dq z%fFn#|C!RTM?=Y!{8Oz*KM>~sEwK1E^YVXI>yH55!QRQ`r)V$Lq@#brI=aE{@Ky3I zkS3q3AR0q1kfd7b;)UdetmAQ6n~Too>?l63b8d;VOl&nMx*C@V2Qy#I_-0BmJ^8X` zq$;tGOo3(C#I*l@UAIhiBaBb@F!&-h(S)RHRaY;$@tr?UZ3o};Qph@2XCF^Pw;Xb> zb^vyJxpy3~Kd-oF!CQB~dHA-q?Om_r9sdEIKh(Au1at^jRPXPTRT#7qoN3v?K{{#i zGEvpexqdoTJI|5E{w)IP7GZ=ne$z~xk#;u+4qZRd6lkgfmbw5f3QZQY(${yVv-+aD+yIwz}HC65!bIRlG1kw=LU}V{(rBhqRl+C5x0M&W(g^&!T zK5o@VWc-Le%A3@_9M!5IqnR6SI^P86tE8nS0bV6PSAilfsEP2Z#`DvdYK!2L^^K)4 z@lml4U|Le>3C&I=qa1!xY=jmg?atnNe%Y7qkt_Y2&0IpsYVZn@sN7`}qIgxHhi!;z zES(Kp7a@d@BuXf9E_Mas8z63HcrIIG-1g#2>umZBwSR>~r4 zZG)7Utu$!F7%C?0QG^2^!xp-KiMz^ZML%e;GZ8an1ld=CE&(u%*Nwo#>mgM3`CcX4 zurGisWY2p2fH#)yq5LOzL^FRAS#_cmt)fD*Ibiy?cqZc6Qo z>qc;fS;4$X9vXYaAwOkywY9c#sP7)17Fw=*raukT;w$2qi<>HDzIe6^GFCj^$#f&S zRbzi8cbr(^v@g2@iQJ0{eRwKQy0U3&4%%PazDhg zuxmf41!d~rJiSGd`Q^gM1rnfe*#)y)G(lWLjwDY{E>muUBl>y#-*5{!qK>Y56$=RF>uP-W z`GihOy%KojO6t&`2cTOzahblFr_!4?0O^U7SY-XQdJY4QB!ASH@`@h$Rqg7dWnin4 zb`lHqbVWPIbtOW4BefGLTvIhiVa1*9R!L%Bh;qo{ z@U{j^+DY6=Bl+lWWpq~@yCvEg_^aEI+tDOT8R>4jZJ_q=)ZaD(kqJ3s($g9n4YJUZ z`+{yKA?tGAe9+LN>m*+r&1J7!0`6LWF{v_)w0j}f$4tDiXfU|f6~=XWv@s_pYubbR zaQ6IKHPu)2YwhUiR+iS%EAOM@mr5U>$0l!ZCENu5a;2M3_LAnKevph7>>PodwX3U1 zc!0VB4|BAW86N%dfH>Q5qzv0F5a5=qGjP@psP&q9UR&_>&pcXu8g7^ zUA1>HLGnzR&=gaOC{~OpQXx9ApbmWdJ#`no5R^(kaYU&F5!3h2vSlkC#6@WRQ6vKm z+z@oNlPb;giP8_EBjtaP_{Eg%Nzw&F?uaTHa@_VHj)y_}S%1^&Ra1@(GfNTg7+~hT z>U=_@8J_ir$WD1cvN=VW?Z4i*2HuPg{4{8+-$@Np`g>2ZigiJ&T}5JFi^01`H?dyR}C zZCJal*cMQL`vI2fA&`TJ!=-Zc&rt3S>l-Yeza$o+!sG9G;Qi(4&WKEvk({1nK|B^I zYEud08IYfet~N`ez??!eBtZ>{%$5RDP&&AKf<;7f> zTi72c6o0sV8M0;I$`l&6x@Mj=8)V5w$v~w12wkDHpfzcBt73WW&!4`h!V9B?0{UI< zCO5#WDv+1otF-`uY$1|1a#wlmxeW}CF>GW91sWJ<0w>H**Dy+u@b{i$(4?>}Q2a*m zrbJ*xFjd*(gg`F4Rezns4NUjwUC&;@s?w(1i51Rm@si49xGX=)JW>ejeQ+k#2R8Bc z{XoM^BQ_M}mW(P*=S+8$$&rjDfvQ)7vK*+V7t?SqC5PN$hOaxg0|CcGwPlnn1$x7| z14j@R{e2=f;Wv$p9)^{>Rg=Ea$tP_gk0BFDSXILy%#jK;&y8sS4-D2&{_+5g6{~wl2+8U1QZ0Zj%f{r-zeu3c>9Fs_QIxtcF>34B=&UP~M3!A&S3g zxK+l8_N$i)*4x{^*+L8?tsRUn_@^|^PBfM!Yfc)l@jzL(sbuco{f1ff|Jvx)LI;G`u}kz*Z)718j)4jww&l5x~hI0}p@^$Wg{9VsTFn?#P(bn?(MB zD_r>xQ1!lQDkAV3kpKyc3g68yEFTFNJ-RT(M&UQ38|Td7!VTT zuKQB@+|R?d1$$3)|37}q-2Ps^pPQlV8xe_&4yUgqkWd*rqnH>9Acw=|fRRi`)OC5g zNsa;oN2e{4qW~F0b894#$fV(?G{A1qohIKe07#BLiBdbuz_X(jfZj+tBai_JA9$96-PHB}kuC;zRPD>6Q( zlM>E+hL!I!Qo1n7HSwK~5{Ol;jLa6LV?I5q_jP-J*mI5N_quXu-ZDk|T&=56A>85I zp(EZ<&%NRjj3{brMwC+_$T@@O`?Gkz+_pq(=kfU8|1&fJQs$Iy;#?3k-EvmOwDLvK-+2?`oo^is=#xq&1OiDjvA2X1j2HC7s9ob+me zsHqk=Xt6)teetJx%cHOKs7Vtp-&eB3=U!}Vp*;a*zCrGv)jDcwPX(}YhkrCT5xnGn3po&_N-! z2cpKv5$K#%=V*f7M0ECwo-(xC7G#N#UV?my+|STTLbQ9)vWR>dl0NJ14E6+^qLlHc zE=F#CoYMCb3x_TIT^?QE=jG$;eZt=_AKZ5=4zpV3IE6_FoRt?TPZdvlnw}w5XNbZ^*rX~&|=xOA1g3*-;L4c*7mtcvRn*lDjRVlkX8xwXxu&Kijuql z5Qe0*H~RzB>sk$xI+;p|mM1CE%@c25y9H3z4pvDOY8Ao`0%FAR@|5hr*bO<5qndbx zLMBT@5DA-4Ra;HUWyfOT5oPRZ_H8%wkyv+do&yXus)OzLk3FVILTon?Sgj8u#;*S{ zDiX!B8J!mpV3VQKr4uRl+f!JvwLn)20={*8N&yyivWHeK8aCJY1 zMLG7!QWqsOg={}Vk54u2N|fNvl9a~^XnRCKHypxHo;z7-D@0r~2b&A4iL8xb#~3ZJ z$$S!qs!XbICuv3!SENeUm0`7Ax#5sq#U#PB zl2Od zMLS|2TPW7v-q5mkAJ!#;&Pn0Hexk1WQcHg|&zW(gRxe@j8^< zKK+_ITZejt(4)1fatUr?TPZUHJO@g-N*H6QI@95`LZjHY7HRgT49hk*$!l~woZLLZ zPP8BGmTcaTP&-@PGIPv-_c?R z`F042b|>C(AC~6L00*d$({MfFqD_%XBI^c^5b!qyjy{^YaO0W-)kKH(#)sPU`Y+E- z$(6dz-C7F>>!!WZ8iuu}+D(ZjmhZ>L)QV`JaJJ^m7rs~6q*8G~KcAEE!gEi-3-8>v zbtow7yQf)8k_A`6U7NGc7;>~u9^%?df0d#RiGiRV53&mxLG&qu89>?(TSMiBd{32N(m51Bh zAF6-bcWkb7Tg^r{6V6LDbU5LmSAa2((P@c^!1k!>UAH|S*T>n_-Soima}Dj2Jx%T3 zntR87q{~z#ht{qlY4JhAt~-y27$|rs%a6fz@`h&DBm0 z$MkjBj-a}`ZZvk5<>Y3#IR)FuwwtQb)G84cZO>nKU%3bsbacAel*NgqcFxL~r`02< zvEudAjtgp=^-CX(ZT2UYvBC=rv!Bf;GLIic+-iTc9@cjna+dZ6m5ak3&4?Lq*z zMn~ibukD7=7R}M9CRP9*KSpElh)6IP2P0s-2%K);v)|ldj2cROwPSi?6_0qe|LnSLpOMvx;*D1OmzqBc@zPfZ1% z;kEv}nFBWmYAE*NFP;O*9iSj`9zOlh8uL%Dkzw{N`R&QHFMoIQ@;q+S+-lO70mD5< zxk)w9CJ2+v>zPIZHq@3%7Q-1))%0tTXlJe3oL+xNiy@w6*&^V^esBcjcbgrrogBn# z^Lq-Zf~SUk}1h!9WWtZWM~Q65O*N%{^id*Jt!7sr8iyo^h6%lIF=mE>Ii0|m-e-|tiTS%a@I004fb^M514{Lj(c($31%_(zQDU~2q>jOF~x z_NEol|F68@2_DVi^7vu3hC%c_=XtJUtnsSdY%n53qe%5ysz_>)4gIFi^K?Rrgrwfa zB~T=3;(gZc2Y#B;V$nsW4zwa=|GAokEY+GR=hXFDzwb*r(p14<7wytBYR|d5UVo+T z?1d!1)cO-OD78i*dYqO1tk`|0{)ZT~p2C#qpG2k6T-lBlnMW4O%p;+OT#&p!QZ_9z zNEH#jXYNM@id@Q>74J49PXmH-@-^&hkB3Jr@5cA$J#8gU>=!RV^q)~d#4C%+%0qs^ z{>QSEXwjm2ip8VoC8wdY<^|SJ#6F##Xb zm7I$`{*WepcI+duEdfYy)Fm{{K_t+_$U$F#H6Kp_pIt0Q-qTH|6^oOR9vU2k3%)9= zfl^C0o5Cim{Ha0&o$x?(o;pkYBkKi656SsOt*BLlQ@t2f1!*Up7=~VMMP0LR(G-Q$ zLjHG-R$xA}PfghAed1ZAp}BxFx-fn&NyIYch2FAb#2&7Z=p~=Ib+Jw|U zia3Q47)zKW zrrpxpllOcccna{F5$2n4vv-kG<=&1$rGlSxZqTt8$7pf!)3yi=NZSUo7Rt$lIM{21 z2DMDwEl$Q##D|O<^_{>@t4T`;_;!Lo)M7!2ha4(7zt`@ruGwC_<3o`=z1>DDNl1*UwGSe{Y4MPZkyzmmKNf%rqFXq=%wrZ%RTSL8=Yrfhsmf7_r zzgSWYgH_r=@O#K{Xv^0Um4V}IAzK)(M~d!+ZzQiHC?Ldc^)+Vwx})3fx|h~<5W*|2 zav5-Xs1h~>c`v&{BIf{X0H@eXpoJg-_fbcDfGr2-lNL-!VX~eZ}<|xE~YD- z6G&DQxS$HKvM^q?_uS#Yr{+HhadTMBe5Ws_D|#~@-neh=&WoYy_=)9brKc7qXsTH&Rj^>D;&e@XuLvbqr0Lqy7IJ;-c4Q zCfv`ASO1C%{VR?-K@QzgeZ2+Kj%@D&mtSWSt2JsR3pS;ZQ^9oYnVK57vm^V7LGNa#@nxA?A3NnVffaN{aoC>sxy~G`x zsD;vb&{iKA=!7e-Fasz4N`QcZ?-N%d82cM%`B-o@PiG@bD2Bx#pf$!WZ2N8v_fUM* zG)#7c@l?e??@+6p|ChIqoKh|B;<~KZq zAGg7W5hF`&#>uwmb+eaN)4nZO7ZKZB?vZK?B&0#koD^dz0w^=sk2*MaI~cS$T9P{U zH(Vws%NjPX9#gR-;UBK|;by^o(0p(0bq&W!fz)m2@ECBPfg&{j7X${0qjzQNrILdU z7Y2p^8D3&hFAVr?fg3Qfm<;z$cvB-H0k5^`YhhG@_-ky_!7p=gkLzGde%fM9wFsUGq|qY)1afAjDopS(vkuIV5XpeTR1-bm z>=(1Zj5&9&!~k|+LGXhHQsx0C%r;D}UnUHt@Se`1xrPuhFMAZ9cRRXbx%C+pzlY=M z3POHygM#Js*M4zI2}% zX-z|s>Ma(H64E8_UhTA-zM3xCdhUmF-JhA2gxS^8y;wtmf(ZL6gS0~%%X84pRUW+55~^`2~Ry+%&tp*s4-HIzCHy8H!~G&N!x~TH;}LSL!(wj zl|D#idXh`iUz9U||Dz8#+p)kOj*b$1W%jfE7^nF&hPR&^jkE$BOt^UrpOi_aQ1StH5wmp>Fcmfjqnom{W&N@DzQiL`-3R<- z2Y8#TSq4i_`mVi+AUd;Ww$d^&dYlm-7RHO2m-5q zr^0M82G*0j?z2ylmv4X)y`2@(KdXlr?!pgagvu$j8`rGq9 zzEalB@y--DW8eJF65uB3*Lkda=6?Ry@5+;PcdBpJF#91hRYq@TbFSO2E|xnR!_8U) zh8|e4p=){)Bnh(~VDZlDYK(2j)eyJ={uf0!&Ov#t1W;)laGrBQA4$(ncRopa-cJu}hhHeR+bD3? z#rv5xq}%nM?FEmzf@2F&gYx$6jX#t|fE9}g%JFqa5)2e(vd7(Dn4+oey1T7-5$!MZ z{~a`pnQRmF{~>XmApO7GG5&Khad5IX|DkaHOH*^HAs@fVg3>cnT4zQFX;XOVTBMS{ zgcge+-L!?LAecDD!EBh#(U3z|XjPmGg`|4=+aVCTC6`LhL11rzLHh-*)0{kmBYADQ z3T+S&-|h4GIX5rw?+-l*iIS;cAtsT9I%KhgAA^L0cVB5R+B88Tv)-8yU6979n7Ft+ zQyjWkrD=BV{W-pH0i4`CIXo6B^;-X8u_GpnOJLKl$S-n)ykfISwxWO3{-TQ>#|vqW zNqjmJz^7Bmh3x&-?={3)gbQG`Xg&pdUAm*Qg=xqS4@pA#`KtCVg=@VV9b8 zY5LoWZPEltMjM2=u$|_@!GPYr40SuqP@z38Ss_8!2&fkd%~W!lVukf<&1IcB0-)~7 zk=gL7ZigjLCVYQA5Kt~43K$)%RFi`tdo=`A=my+0N}#xSg*zPgRFN0N0 zvD`jU)QQH~E!9m}6cbQ^c^z+#C!agGHeU~qRi`=81#j(1uD42+s9AJFdAinR43sZT zd3$;Osj}>-`%Zq~+C=R%gX{yKnwIw-bw&a!kdmVx{GOB+ifo`GrIO0s>tgaGXswGk z+_`EDwnd1-M4&b0o^`9=Ac=gB&}`aVY}LX3`mW|+p?7}p0xf$+Q?4HY2;|jWA7g<&l{>;O`D# z>YOnrZc0aznA3@gPmCR3lYoA6XGYFroSUUy+9?;Qd$62v4CjbB%X z_lf(DE?Ak>%lpB2F2>@k^_B28@7aFAG)d^ys1qC1y|vK z2nxF8c9cIJ{O8B{XP@EL426y1O;uO4tgB5>Em`GJFdp8YuE?Uwu9>>f#jsMdPLTTX z?Rjt&Id6Q`U#F`d{4aJKFKoG^{_JmOdgtK@1fge((lPN7to9$4U#k)NjTIM&-K3W@ zH{4s~g}N)o8{bVBw%OMeD@L(b-Do-D2C$ub#dQQd-Vin~dLREdd;BeAv%mb|8W{X= zzli_G-O9<-?#Jot=lzORnXuYoK-hYx4pC#<{N-jXLFu9|wV*2zY7~p>XnLxKB`iDI zqfY;>H608UQ=Gw>$xJ_XYD9wstxCG^)Ih*dRZ*e7$$5v&lD7j#D~^#~L*(b{I;!}D zypxQmNMrzkpNGnXjo8EnRCE#{ypfPazneE}sM)(_^=-ZNp`rc8{bKSUQudA1;EGOK zU!p6X^`12YFZ&pH9l620y5!2$b(+q*#zkfQc0cbrgZ&iBOFiofX|H#} z2xuRC`um7~kw& z-hT}xlQL3+2%_#w(##}IZ{OyDFEf<~J#Ld&e` z!E`UGxc;_9#FGp4scqsAa> zNg8La_PIU%uK3PzymZMLxq=$~U2T4ph3S7UVY*|~cP`!9or5x@NEvo2jEs5ek zpH=JHl4#XM@B%?0nJZ1In@f&%<|GPLE!FnF_|h-W^3Gv>^Q%scbG#u(}&VwY2UsqrOrW9U@`y&nfv>hz@Q z!mvrH?mG4)y=sjwca99o(B^VUIH+Hc)v0sqO`FQVTTFt8CTC)5^V+iXTwii;oZ@ND z#g8M0WB2d%>fuKtM<++G2~NHzzp|zxSTsMRG;H`eGPG0SR6uMBo!hqYq7^ggv|SXM zgx5F0_6vYf+%z5nG)K1|*1^(hyxEI?B@=COO-iZ*zv0)0L<%F*<-3~cYJjj$_5-}3 zpLz7A1Fm4Q?DLX$KEXq=P20UC>^UQOq_atrVOU=Wy;gkU5^bA;U?DrsYe%-wkTZ0S zi%Vmm8+gp9d#Dx$QqL7|GLNL$ijBwd#WzZf)Pj%&5+lGx4k~k^Modn?4{M2+Q>mwNId3f|WFrU?d zqnUbI&Bm*vocw6)4}S1S7G&*(b&9=?utC1Ys+>5VrY6+ExztJ04v%C^`jUyiR zCmj|r7pTve?TvhWP5j7E<_Qz;DFxN&&(wfbKs)1Es?WU&d*9s!+kh}u1mS^Qp)i-)t zRdAm3&Mv<0obUCSlkawMNv#r;#Ak>W?WZAVIBW>5nmt`HF$!Rj+9P%^pp=?#WF??ui8c~WPojU9o&Yz$ z-0b%G)%nE?M%duRn6@CbJbi;-eilajgYT}J3}@{{1^_6O`2XX(|92tjWNvM2>-;a4 zaf{nBWL&8FQQjWNf^ao1m-syfi zMc0iVPTBQ?juczCEUzxF{`pZ-LIjLm$*QvLKP_eakZ(S|EIlYSd|ExIM?y5p-YO+r z>da5V5P5|t9r^Ke&Cc58=(0IB^Bx=2`Nnmg<)$@hm-+h8%kk}mU>#33)ILJCaU2cRDeY4+hN4I zeUBC?$Ko{RIR3u~A?(r)4G77i;x9;%->W7;cc-SXBv9JK2J1&Jm~F#F!7Z|=(5 zEVZ7^@G~qNxzr~>S~==KII77Z60t*?W6F?84bFyhwfzZ9D90_wGegkx?VsfC6w5!%qXKB?bV zK4boGw>Y5dLmA3uP%zXz`-dd4bd>U}BcGcLqv1Z5rd02jzIrukYlM6rTWWQgEKU6G_l zpJ?$?O3Ez8u*|f0UUQ9Omw43!?cu{}0hl1(pj&dnNi~Hx;absWWwkH8`!+}Sa1;qo zIsqV~lhdP8$iVLMTyS!r_8WfD^^~jx9!tmi_vm$MG`%p}1!#U+da`HVp*7Tg)1X#- zXPE(QN5C)nNoikSdj=Uw9ceGG$N6ew`nkTH9bYG0T}i4pK9M^*x;|b^J%9q>0!FSG>pQ{2~W)gm!(Y%l#E|_PsFSi zNSZ8=ywdzc3Eu{eIMxySaF=GR{!IDOPMMV|psyLVQk1v4imXNi^Qu(rJtUq;?5wBv zO4;YQ}SNST}p;t3lJ>u7mrd zY5@OH0U-i4QOi{PEq>?*Jw2U?a}lDDUDH4W*wdb*?tXpoPT%=!g(!T=X4MpO?1S5{ zw=jPD#X+-BvTWLy13*46! zIeW*Qx=ABxCXzCTLmBU2*Y9tP9jHqEo%*l*nAB56%(>*-%9>Nd0Am|wt<4b4IuV}V zj_0C0xXp&ODP!IWS>S9B5f`p0Y}#lclN~cDyv@C8=_PrlZf_@sZskj)du6=>06Wo5 zpB=o#efi{aE0HKVWC)h9d6#Rc3n&ML)-6CQi;sVUOF0R~x3B;1t0gZQ)lVW7MY?`K zUN+VLU2T=ZC8P#TcN7^;DSlDGJNa|b2vkFkst{U-m~g!2^NS)JhrSkiK_lQa&Jn4ftG)tQUMF5CMCyVpjFW z@DB11?u8RDgUjenFu8xIQHql5tuiV`O@(zGcwRC_RrU`JAC4#i!2|0bDT6N$Gij7r z)b^KO0)>OsS$0dG) zWFrSiQg|mT%cD;aJ^TW^B|9BGJ!KMc(iUaP?fV0`;G;?w!gIIpPPgiG8VP0Uz2KF` zlIpy4hm7H)!iQ@#i9mc}be|jsfM}#XK^*Ye!%D&GGG$$y?AFqZ$u@=L9X|p#7l%Ga zWb^KvIoE{5kPZoA?-DRLWKjf%0j|3+I`%}`x%lS)yI0>r+SvuLHqO%de1vek@ASD7 z7bs^#Ej5Y#Iq9qWN zld`p8MCM+sc8;&qD-#!v50}@#>#HYQd9(U^q2PyfDIjaA33GnpCw%t9lA!h*)J&@c zkbKq%G*=a>aGA)Bc-tPO{|je0y05=lq{}A_GXdNud-Gw@3o#?v?VyTJG=$f4llXSC z89OMC3D?d*C4vK|q1KITUHP&DVBDZcdWLb=*p^)U*9l!@?Y0>emWMX~f}5RmC)coF zyb*A;G_VBQ-<%oF8+498$rX=J2GTl%Jsq_gfpDXV&&7^D5e-RCz)a;EDtm4(cDD?!?DA3EJrwkI)x!5j;@mlj4|EI18i& z)V~2Gq^s!1)6o@Nl2^s*5?Yi#5W=9trS%*n!QKip)B9ieCe$#=CJ~{ir8zTsQ<{3MJg&L%3k1QMVPVLJp&MN>1&SX z%C_8ZA|KU|uP6L_=|1&<9~S7Ix-&>_ROa3VrB*oli+|XTbH(h5*)9XqVsN>uco9_ShhWq8hLu?p7&gv^<$miDd$_H8@69z*VVO^E`T)yd zP!TDDqU5y*iW^qj?dmFiBM)V8*kgPi+bS|Ht72lAsb;qlZ#PGt&P>PPFMvQcme8IM z7Kc0G&@1THHbH>)L!<>sv}3S4Cpy3d8Gsh2APmd0$Q9=IoKxad?VyhJ3&%kOIZ;Xl zoXO3@jPwSU47s2>Bvf+^_{$5*RDZMlbgx(fPeWs7i*Y@wb~Q{@a-W4HVqj5Ci>!~@ zjn2W=-m*@dq>wPuEn7h}0`v>hu%>@DdLWo~TZ!2TmwbeZJY*cd%22*kOfmT4Pv5() z%?Vq}FoOb3AGL@&h*j2ND!X(_G>NtlclbSPJOdat zO|%al7V$R(2by}vSbE#v3jbdy9Xh{g$^wge<8-JhYM0N+F3TDwb1{Wt5Qo|{4L#zsE=QQ# zfrk~F?tr%-*F*fg?>ODKu>LmO3#onSP4VU(-juriS-Vjh1ylGj(d}RWv48hjEH`eH ze~rfkIJ}(&2f?%C1OY5 zniEcBz_TSMPne$G3K1hugZx_pxN__2m8e*HMU5NelwP>z<-4EXJ% zN&hqcD>t;pp8NZA3~g%Al|QnHGHp`GHn3#>sLgGfBTD8esnAESVuw{d zD<8-*>oKK;8TA5A+}~9iuh4jO+C9O?`|lY76(0iC^tCq=Suy^72Ii}N@8+8qH(zfE z{3f4)2w>g!&F^lt>2UZ2H1j;Lv`i4eZ7D{M}LD#J~2!fYeYSDo@IE4u31 zSWjxfvjd+|=kp>O3g@R;Pq7+aj75)xvV003(WhMPQ=1r1r0Od`7Nu4^WX31m(A64& z92(pk3`kS=2nMHJ=?NIKX5F`@F%N$G+t5)G|z@bE`Gdd z2d?djJhLVCS}<9+s!VRBs>!T-V&&_~c0alCTJMXt@BS61J-9a~d8M>!a;`nk!;NLB z*xXwE%b)R`znafO`ABQym5V08)Or}Gx)mf;T8YANv1zfl8jE}ddtIUyG<(ufeFtP) z^=I3w7+q^fg?;fVVGe^A9350>jcFWj`CqPom)ZuTKUN~AE2fF_g+HTmmkVCxQU6V$ zxv44nEs?B$tLoLpSjE)px!ru-^1^63xq*Zg%Lmply=ZWg8)2!t-kff8-%}MEGNE>G zK5FfE?21v`O}lR5Ekl#?V&ix1TvyX%;5atkoFBI@f)yD3*#t)RRsulWb3gZb1kM-q zaZ>d>+1D)GI|!^lo2<$;FqFD3&lV$6F2AaS>L|jutkx+i`hXwdZ36e+ zCg8`l5#$p4Y1R`GqWfK!{Dt^du{Ih$RVK)Y0wg9Y7#b{DS*|Tck5E^g51J(y-{WJ; z*sV#IkTnt1Tom4CUw4+Wx`Fh9Pv#G;qffF<{kSVuC78NskPx)fhJmLYp2u0?tg_Fs zHKZ5PqtD>S*^V)JH?L7ZdXKnXD74#l7oT;F@Q5w1Uc}M#okry$K_dm6?3%@5abeBs zf?pdsjF(4p!Fyks%-R!J**s-466HzvZHcBSE%aeY{C9{~`w|>HZKZ16x&@XXpMq7s zZvdu*>fsRx=N1iH4oew=Gq&>`#_+_O|3ipHbVA!#hgC((n}%0 zZ(>y@sIH2>Og%{OI@fRXc;`P`$)Z8V1|mOK>gqoa=D%I7o7vi0{tsc26Vj8CQnEA( z|0_w7eDp{HI07BLkaPfK!7=9^FXsk&BvsL$~O{~J(PS(|Rv(h997ye8}n(NJ}i;{EU+I$~K!S5X8yE>!EwdBWC zM~vk`FVLP}&BtO9SkD;L=Iwp4lS#4K71lI*hf>-i5@yr5$)X%61uNapat+t;w#p(8 z36?!W>-=J2kH&e2V01aWN(!Z;X&I2URQ({$l1t9DGi^D8;9oVB1b;ep&=T`lXC-c6 zeUS>8k_D|H9p-~m$g?4b3>}M>!G*l@y)=@6r5OBTMU)dn-^4Jlky2x64{=SO>v2{C zWJ@wfLjEM|$|U0ghR^fR0^7wSQ^q6|;)o*4Uc!fr9>I^kLK|Fb^b*$e?+Z?KPfTB? zA0&HYoyfPm9iG~Q5oaQLWok1p*V0x+TmyH_ksS`>K2m9Y_7jyN0NAb5{eWyyC@SF+#)ZezFcT7>l^YWr z#MY@eIR0^uu#=vW2dyecPjDdA&XlrIk){k6VF2J1^L%%&AjHfoCvg8e-p)L7K)~)F z8?KQMBAladwSVZInyA0gsJ3yZ1qsZ62fOCCKge-Dy$jZiZ?%jP8U-aM$t>25N)wB=ZzUUl34s<@AE*FG~CzONq7t_fw zB~@lo+=#8}!pi&08zY{U%^uw+Cfm%HEte%_w%7KMY)sg`?SD=ffU5N;b2n&V4AuxI%R2N3CAI zI3L2xuPmo48`1^$d%9)$3Qycf9V&<)0z`quix?Im5ez}uP)<_}o9oro%k+feThNqm zx|?fbPbmLgZ|8bya{9yMxW!YZNz^NtR&oD`lD8~BeTueiTI6sPeP@8VB%6Xl+7N99 zqpY2Pya_0WFN0;Hgk2?wg&_ttpqJvL@Fnpgu!^H$e?ysD=)*iAnRc&S+Heaxwf-Sh zA;gUj1kbVDo2rQe>?RR+fmw2Jq*$`JxE7!4fkcw_X=wPGSgWyBy5cxtqIHnE+7K3j zL0V&=NKL2Brf+fT$iY}kpf*Lj*}}1o_qS*a886`^`5^*~^g@5plupMMI!l|`C1*-ZYvdWu#2=H78SsY_Fl1g6oYkPk+L99I2eAh_ z3oxKUN^@9VuSuYt2+Q6>fK${0x?oeu*5O&qJ8+Ie6}$ED$zRX0XQ(tDt(c$gJ5Vnb)ocKtHSue+gw5dxiYlGE;HwB_VLK5pNujFt#ZIrPp*$}d zQmDcJdnhKXfw)B&z5K!u8hBYGcwqdU4x+<}NCX;0)zHz%Gg-i|w$>^8Ab-an_SRV| z3L~|z@&8~YrrI3-nFl$?xfHJWMv*IdBG*#8Y=m#Gpo=SOMkN_PI@~O0rwtB}w{lmf?I)GQQ$q;PFcsadvs&v3+x7ITEobHt&G zm?iu~Y{eTqZ|s(Qwn~L~Eg=uBb~I={g&|yR5NAyWlf(cagtC*x=lU1>&TIHNEa!IC z1waZk+Kuf`hY;u^Yr8>*jQXlbKUvT#L?aMqZ+UEx__7m>S^LbwA$V_;(UKG_KN9;IS#mBCWe1>RhW2~>wHzXZq*0U7s?^`RvJbc zxSZl=mlW()H71I03?U}<>9uC+nZ|tC4E(3a4x}@?r!iI64OzFt8m+Z7wxnYyf1@Nc z=L$?(@3qSP)ZCuUUoJ>@08I5{lhev6UsF{7OhJ~r?H|6gbMO*2njI)RosbSLt!bY( zvKEzexlY-AbGjZrMO{Bs*r|*=Qy|mwTxnZYFvF*hjeO{s_E|rrYR2o`F`@%m9Yj>| z8WCniO8#MlugEF^8+aka~v2N~P?iyHX(rIvC)Hr;y_eDG}ZRkL^{=lxL#&5E*uifbR(~>;! zs*+z1rV^eeu`7hA!99qo+l;*?S`B$AlnM^mq=VWFF zk@&B5CojCh-<^Qp-CLd=2s~0vM*Up@4jRoxPAI1;chzd#nYuUIy0hB@l=FNC$eQdC z18omL0f=79Bl_&p2XXQ{P~fup9UJ6;imi8?KPMQNk-9;nj~X$Ykt=*vcN83nm7)P1s%XQPlwhpF_3 zN1Zsmuaq{!(W=9ERN3Q>r<(v$%Va|&?M8}HWP25M^YvCMP1JXhruG!Oy&5RpleKDr zJZDD0qF&&s{AF}vZI0Lf=>G0??tp^*Z2lZS7LX+W^M3N*4mLm8c0ak@KTO5XUQ(o@ zX}Kwi;qE!f>$sp)V{yJ++-^3JS4_tR}us#^06u6${K@27nwl zo5M(d*uHzDVFIM-UR0Y5;o9nK4cx$8169@;EIMoc6i-UaJ|B{-c6&;$r5` zY!H^Ucz|OlVb$$hEjZJpqRYzr^0z07U#TdN`3k{V{fzuxBtM79KS5YD_W~^dY7i$T z4h#s85u+(KqkZI%Z!lba^qCVmz6aFLZxcHPJhWKTP1{LynUbnK4sVhvo~kv^NlL1z zLdtZ2NvG*7zc~TgWtQ4eec@Qi`uvgVn)Mx^>2A(99b${(L zM73W2ks67nKv$8Lr%kgw7RARGbd_q@>p8> zY2js?!1W#Xqe8lJbMmum-;ebR;?@jP%T}!hWZ>!5d7i^V6I_5QPt0eo_hJ|)+ZMz7 z@~*wPA8uZg$7m$>Rq>1<2pT-)j;u`X=!nfP91;aQi2%$S19vfd+i@uRWvb-Q^u zJwKkVz^*b^_!*H{;QIn3Nv_IbDyQUw($lb_TyVsK2OTe>U4IX{W|jLU;)4Vc?R z0#$&OyYJ-bb&Q2q5%7Ha3v3i%62mcK=1bDwN5H93pnf}j>8T@E)@(3dz^rQBN)c-f zh0@juckIRQFlByGb(_95{?yHq-4f6#nhA)Pzr@MarI8oHv@9HcvrUAEdeS(C)6=Y` zu4ZjIOch~UW@a4v#ddbN&FSN$$<#YWM>l_!bvC^t209X>o5}6N$;D3YHbj4T0vxa` zq@Fh2?NR?HLYlPwXe^}x){xkdqq?dbdaOoD?`$FrG)}fEGhWGIka$Db`VQqR~mzTCZJ@8Gv1q7I!unZ{v(>=^7v z@T~EmVN!_tUp>?7y6@wn>did`zmA8E+sZ8Yt5J4Dl`v$@rka3%TKjVlV`rTH@L7mI zMh5?`l=|<3+7jEN9wHx|mE%q>!srBuL~oX5rvWOGY$H)$)krMAQm+A&JT>8P_T=%^<1>`9t=jQV<7QDtCDJ^n$X7~_#V@?jND?m za%TBG%8QZjWfP|&gZBB8@o1vJJWg0ZlYzg=rR}joT~)gvP#+2LFwfIjsEc3D!2?^O zrmblk56SN;v7dzrAeU6qu$PSjm*Vn1V97%o-i??SK1kZEwE4mRJ)Q28-7M^FvC406 zfFpwe9EoxW5%zc!$gn6PmlQ7trGxkmu*)ot!bng@6=My{p`=1Xl39LIoQ6zFZAeVV z?439gW&Z8Rt5HzP`$U;IySvEW%iM1g%gCNTuM@lbqCKOW)%KH;*9f>z@Ca7_rh}5u z>p;yAiu9yMzn^&*vn$tSXU{?jju$=~YFs9z;0_f5Ag2ry>%Y;K+6KgK=5Fq8Y;Nq1 zdDH>EHnHX9`fXntX<@HJ2rU)^{EWV?qjZKHNF)zhf;?~{((p3{InANm8L$xi z0Df9`@TRh=>Ogi{S54OwzH#514vnBDtHqMBNTi%O5sO5?epkJ)uF?7WyFfKdp|(F& z`_5pIpg2n&U!L@$rH44--tDQ?o}@aiP_Wdvw9#|wfH^JIMV0`SW8;$K`>(=jq^a?dq~4N2@|}VrzL7HX8|+Xm&R|T>MwQ zw~1y~n{r}lMo75NFB$s|RXFv+N;z(MMNXRvcC)As8jLJ~- zSfTM-PUIUP*XK0NUCA=7MTL81REwk*WhlEm(B6tjEL-&b?X#ToQKT*hlz(^Om5wSj zSX;2bwW1cO>`*Qi%h5ZUJ!I?{ami+l6`Z_&MHx)$cDb>0=FJ#ZI7gUpSZMDJVlQ$V zEs%u?TfX5J{=T)0V76qsnAZ*Z+b=^)`M#HOb^~6cv+1){pGidYlR)R$SmS5pm1Yrz zwRBvd?$hAJLQ@?IDSp{-tts6z!+&W;0sL@8+xgL(d({5@51La>8$^xbXSHDdp*e~F zpJm5?yK4PQywIdPVY9%GvUNfwYI2~Itju26R#V`wtmsEkrZ zEw@qHnLL}{jD%WQejlqRKRC0?to?+Zin$Sm%O!_4Nfb82^L)m{CV+xGjtEa=*5oBY zvSK{n+1Ued6hP)?Ki4VKHBQ)cUJ)ys0pcJWBS|<8wm=69^Dqye;|yZp1s2? zogzmsG=Bv|vq@rPDkosb&>F-cYa20AyJX?MTR^Lq3kRMNP`H{sfZG)`sIQI*b;gWh zLZI5H%9zs5A_tNQMmsU3vwN@7QLrxoqF!2qcR05{+sDRTr6_JLu?WX)*na?bvE+_q zy=%XgOu(`LZ8=6oO5B+NLdjd=(S)Xt%(1Tcm?qBXBZS0JpRvCM9kOtiW}p)NmX|9* zg)|mnvCEVz>$fhh@Iax;YX67C4moT+GQ!oS9kR%;OX*&GuK09PwhO*M5j41TFB6nCB)h1BS~ zgvhnTB}c4f7WCY@d*yeneOcPoGD_ z@0I60v(^+F+`=1`$h#K0gPaOX=5;mPtIA?a@Pa4!gRQ8?so#p06|D%2X443IIj89? z&h_o#CWG2`qe3|XC^%6;I z3dW0l+Ou@cTuC^Yw5tA664a!r{-yP+o%qOBb7DS&5Y2B`y3t2iaw|=8 zc_swX!w7EfN`c4x3eLoP%S9%RQez4LQiU43+{tA|Zm$_-A;G0rSVW1Mk^PD2jQY(~ zHuUw>PWnFGyln0k@n%M22bO0ODo%;a4;INet>7?1pxQu4OH zvqMlab%uZ>X$Nt%6?KWYk$gwxZmKrXyysUdnkg0x>JSJQCsPy79g>4s1CSr@^l-JMvIxh?;>U6ua1 zHTr*7`2Qvpic*@9UF1jUey&M<6wIiEwRo%@!(yoR*aslSTV&q)+oUuum6Zm@`UeCa zMD0#B5*!p1NnSRzCm#{^8-`|L%(pMi1$xVxp;OXyyYuzf`^LM5mSka+Q~-eW8PX(p zsXmSm7ioM>x|g3urgYxX&KE1uOK493B$7$Qo+MZwgEdbNWbnc77-8Pnq?$W2$nGNm zUCuzZNxBXeWr*1}Dl%gweMxdZ&aVw_6zPz54Vk|wWNaa4F#4L{PDOB974hIE4E*ilA z&nJ{oXt4<>If}K%+AE=5^0RqYMAFV1?Sd3_;Xs%Q1l4}7uviuHLIy+mOGDWU=-A`( zv6Lz!?<2FjyS<#Oz?`hY2HcvPVOzAXFP*Eem-Q`O&ee?wF3qjark9m>>RjHG;$y&- zV2l=SjQNu#Ub8M+)g_X(KxPQx78xWu(kp(dd*&tvJ#`VeZ7O2MTrYaDrElP~ati-f z!B|Oh#<&>7rdsfIk*=QP%;t-t^{^G8JYNJW2V-nP{Z6eT0T$GDjS86V83>!nvQFFp z%EA;!)BwdJ?>$LKCEetCVnkc5a$YpO23~qVzA<<5J(5bT1}8=T@)T~t01j^{!w%xj=jmUSbiHW40{rul$y*JA`Q4iItWCeB)T za5Pz!k1y`K=5*{d58Y-ZY0-2b@~wrguo@Fg?hKvTmXX~vIVn;O>jCnYX0g$x%vckB zxwf*^1{%$<7yD&}6Mp_fzy#LSh@9hLDbA$irWc;s`crht)N}91r3KcPG zusT$fL{uos2*w2_iAog4g@^kHg@OnL0ZO3% ze$qrNL`wj4^nWxp5=8_}Dt}x9hzb8Q=E~a8j?T#3#Qop%>W_ZHgg4mlJA6U=eBuCA z#rbgT=yQjPV!AH0=TM|w{e$!&B85k+9yQ{o4;)@^*akv`!<<+}JbM8z;Om5^VNQ4k z?9n>9s~|h5LrXiFRSz$pGJT0`|K)=4H?MaXaJO%WEuOX?rk1S>z`K1FP*xDey9e*6m z+r6mAu9e8X4)xGd z*RD#ZBE&P(q?hak3w=0snJLv5;A^OaACD6uRBeI7zt7F%kOUrpTbH2blHt8TRC4?U zVdfwG@ptlc5;@f=lc|=KQ6p2>luBc7a~CmP6nzCYaDg_nZvLe*vy^9BTv5*u7-k|5Z@Uz z)F69<9BTBa=5&CAqgKi-OI+hp;h)A5SDvGwo**ICLy;#I`DXD5raa85FsscC_b9c& zFv?A%Ht+BZjdzj>w_ykbfd(N>5i^FlAF(lEz*zlpKk2TwW) zz{zobrb6bncu09-rEv$0Cw)VpkCv-13^3~9qB z?3KvPT8YH<@v}n|X_ropy$ib$SIX3_uiw3EN`i%PcYnY#Wr+v9)b?lsf$ zc38nf(aE}1r!k#l7Lu}Hm6=dZi$pi`Yx5hCc#s6afcLd-W(LDxpj?myKg3CZc*y~~ zRSwLaVxJGsG7CR!nhO060mzbquqo(1;$0sRJ?@X7_mQBD&^gUC5eB>G;c#-Fuq`8^c;7LY>Ip%Tmsiy2BvgqOLfaX4uNiOq3dX+|~~aj)qBa3j?G2C@R+T z_K}{Fz;|y^nN7?u+7&z0$s(oe(XR@Ev}1QA+DpVHmLVdbAe}RHUd;+!$lsE-RUU3f;@Qm=HEo#F*{?V~9Qn^{FF9t2v{=2rEv8JuK|O;-Lg z8PYgL_FahS2`i`HXrP33E9}b*kCf6eKRR^sF{}9`a*_^~TxNhlcW&WP*#pa;N^OKz zgv5zTpQJx}MK?w@diZ_BzmtX9H13;JEcq_K|Art4I+9pLIvSc2>tiyM`g2#48srNr z++xfTSI#{eFX4nW`mzVrOc7I6gZ2yhKU>jVBJmKRKXsPO4?pnlVV;i04*!Y)`Hy-_ zl4^WLc~){vssaQVDynl0<~T6157ha8EW}9v z94Dcb6uSjTM+9M@!7U*tYG|b^0x?d5nxT}Fa~yM=7!@Dur-CDrEOSePg6dQ=+o=_r zCKrX_CAE!hjpt-ENdvo%nUgjPAUzdj()O<e zB?kvF!I7vW0DB)EAqnt%p=6ML<$R@<=PX|=vcO`hkJe%$%THN}H|h{z{+OXI-m)Tz zu!25gQEuiB;DxaiQDB*PprZ*3T=P`S3PL^Afpm;2!T>r#RH7E6e92RDEQWMw(sC$~ zOh%j5^{*v{Ma2`8UnY2zevA(K3*2%5BxbTmBMk6py&OLt9mTXJ@JA1Aj1B-7opS~j z&>nE1%LJ>UBE9T1r3}9nJ1sH7G*BD}|M0*`*%4@z>2Ley9dv_Qx*@S7vDn>#+{Gfq z^95<)U4F~qLbO5*7h5SEq`D0iwi7PWY`@mvDL-0C#UZ5VOI4Dk+zmq2I4GY@kF90*`4%E}40P>&%^jHCOJ zMlT|;GOv}8(7+P_%UH>?QvSuAo3w+ZX4*mo2cPiZ&G|WhR}YguTk7HGa*({?kwZ?6 zrLUr_Jj~%3!OZdMgnhb!gaXDE<0w3jrz?~q^&y*YkXDw#dHWvlH=-~JUAKkgc$oH# z2bX0Bg|ZiWptYMDxI95?Q!^Y?Gp5?Uy1X6EC5Y@2DuHDJY>3PPcLt~rimp4$oU@_| zl#L-GcbX%XTRsQFYOAKeL`VJ_s!Y|pPn5HwYc~S3pt~UF#e!lGsw=Lx-fqR#`kL1D zLF;baF;J1j_k^3njmoFH2)#QvB1*m9P9P{b5*)5d_6q_9H;F%t;1H4qq0()-W;cW0z(4-M+3L-v+}vn3i^qby3&Z zN#!o!EV>CcpFk--NCdn;TcTVOB@PZcc(E9v^D7{ShTmv6RPW{_-ti!m)#xzXAUM<( z$#h7xnCXy{vcEO;j>*{Sp+S3B)MSQunPCTDl~vSvq=L$T?(5@VcYMj$Z4HD6pBk^ zP`5jqhG^dw-R}~}KTaE7)z(xR>`?lnX05jEg;Y~a0s$UWY~C19u-0j)r=|IB1sGBc zUCTBHbMJC<8QyWNZ&$FN0Shc>cX@rezXA>(On@Lb!&L`@;rl4?c4z>_KN!&L;3)q4 zD!}(MyOsk>&A@eyaES6LPY)|n@|?5?P+JSW$K!zSlSHlk?_c-E*M}*oJi>zC$tZY; zNMA*|f!My60)yTk^jzH2d(=c%9YY6w1}<(&B9*vcF*fM$yLZz8Hg*&P?DLiIs5T1} zqvwLH9yDr5Gdmr1a!fVNWHWfRM`KykfB{0rRU5+VJhH3J*Pn^F0B~58G;40&TwZTZ zyC;QF(|B4j_$wc;Tzd^Q4UxH{L&l7o=&l)q!gqQv^l{R~ZzddE1nijCit|@brKR7~rcQ_kUH%Ism($`=Ylm938yk`i^I?Pj!^<#x0i@Aho+zg@L}l>0Vc z2$D~$OP(Q|&X3A0N=c{|(ehMELeok^Nhv?Wrdps{!a&dbDe%Y61e&(~$n9|2QX{GU ztp%nZz&n_2&@>*>A%hxU@hZ>7L%jwobrMbpk}oP9FUwitiLNk@95dh{NI6 zE?*Imcls@v77vq^)ecxF%p3ihyCDyBJ}I=k@`-$RQE+ISL}6zXQ+ee%2{<`vFJbRai3jhswha6j)KCWZPMM|p8DUiKIx#a=1XvR9t~_P!vF96Ak?9hXAsEx zcnK^Lzn{=-i#Pfz@W5NJTpr6h0>FKVZ2~&fpPc)a`AC(|EmyN9AYOULKf-gmMEgl} zzhS|EhY1{hY2)m8VJx6JxR+*&HURp|3ZfIkEO1v1*s0A~F@U8JJE<%kVYgcO=^EA- zDx+SxrdM#5XN+5+`rQTIdV#@-CI=w&VrEPVAa!%dG^Ps;r5}rJufkcWG~)aeZfSnP z;qh+I_XC~mlb5M5%b-(4)^M2N6FiFZAGqvxErUi9AOZ1nXRWbLjUM$P zPq;%_5cm{50@aj9EQOP5({3hG+4P5i-n!&iH%*SgfXGvntG2r8{}!%&#h;av0cayN z*SY~bGRzn2$u459>3SzPO;Ai7XjW94|7C`^F|PGr5)gP!8{?hcF2K6RE$jiml@ow zBEFwZKrYFaAeL6_$A)YIltejoJ(0unNOYJlTtdsR_0|Q`h3TGh96p8T4B#IA%zh}5 zsDR^i@HFw3Q0slez8ijjL|HDeqPTRp7ZnJ0(l z08MDdjN*J~tt4T3HC{IGqNpNOA7KCkz$9ExRN*Z=TC!zcX}4co|8iN}4!x$XFJE77 zDu#FM2pDwEg_DMM(`%Kv+VlWax1i};DLX0SHxS&t2nAC$dTc6q6o|Js)Djs{35=f~U_cI-ete zePtaxntXYQXpksse1|*d=?!`U00ga>x6Q|>yt;1V|G@Mq5Zrb(Inw798mL1BDi^{c z*ICPX=?Mr%RZWhe&_hG7Sy{(o%3m}>X!CK(&yzO*tlpQf9B%wrTD(dx8;DoxT(B}` z8&xwb%>n2e9fAS$#hd~IF>tNUz`Mg|GG#HXzOyjOT+|NDRRvO2ia?VbPOTyGc|Ci<(Jel%YM*7aE((WMQv^EKsn(b zd)yWZOW8pqugBy+dWRhKQCu*^RD)B<$uCP89WmaFY z_Vzkg*=#ge5NXOP7$;&JX0?Hy{*WHDVNi`%pb<-@D4it+iwLR30_F*DLIUmG0wScl zgD~-0a%0QvAY|GSSz;6gZ|rN@5CSHS?LRFZbOt!?Ox6?e3OlbOI>ht&^9(D@9^v< z^Hf9<5%xW6>Ji>B63_Bt>T2lVEOc|x?VSbTI+1(;S50v@zDeUO>Role{Xbf{X0Vp+ z^ZG$WJXR0D9?L2SvEB1#`Zoh~!nBSDREDPj@Tx%EvQY%i;`Q z`9GRO!uWZkUMti|!^Y*p3*qtSnm<0884KMX1>l*4f21 zYrQFGd)qjQsVsld==RLNDh2Db4~x%%Hy42=iJ~?v4H>wq3M2v+we--a4F zytJ8D`lHU+3}>44a~d5K2_*(5NkJ9y7!B_03>l|;1emY0YhDUbK)oxxP%js|W~=_e z_?%P%cl7c`s?Nahzm9#S#OrJMemu)6!i>%JfUsFYv*~Js%LQ{AQ>`4~I&>yeFXG?L zqY$dH?3dltx-_Cl>_j*Rv-QaCTt2(O#g3}O=TO+AktDNo-c0Es{Q@i*J(nqcj zmE~PBH`gH^qjCAm5Q`6y+iW6NZBr??c|G zN`Dif_ieiS?M{lF!q#A@j!{vg=)UOaI-f4jTVsrn`LJ8~Y6jAdZp@i)Pza6`eq(Kf z?w1k&m8wln%*NOpPHb#T$9!4}VUu!y@Gc6Q$Jo@fybq0b@MzDj4hf-P#e7Gu5A%#` zvP+0aN$zkU%CtZkGE@v)YrlZF7v>}?1XDYF+_7*$>P(XHohWG4Clp4;ymKWt*I_6>ERQ2hTDLtD?ffQixf-L z(3&Bgj1y&=k=@?#T6Xh_>j3WXV*vg!Wb+7`iB_`o2y_XU@wu?$jq~_9lfvly$lZgv z>cOun0JZs8r~9f96Qp8tG~xZ3;a_|E7$@-$X_nD^LqNH#f8hjHDTDJA^Wp-5{vqmo(COgOo*68irEX{1HY~FYRQ0--Y zY52w)1xuU2tI`t%QF7=~GI&imZ=Om|%gk$e5a>-)O4SI71iK<8KNN9H*7Iu|!=wKc z2vO;ieQrKAC8RD1pv)TQMJTa4NS8-s6Sy)TEJ?N|8mGp*_H%4$%2>OkL+HNhyj708A<)*L*^D~(P~#?{AuJ*@I= z`8+f?cfH(*#rob8aw68tjUHcr-(BQ)XMG;f>v_MOc5i*;9znxce?%+^5kto}wB(68 z{GCQmj~B!LxV_lq%kI37q~G>Fzo>M>_qq8!{q?%F%8mc|p4iOy{<2@6-Rbr&`uz!K zCS0?c3}2LRtoJ^H@aIa|aBC1VZQA$ancnYH3-u%=K0uSNH9D*tbnNMSd zcosL-|;Ju?HXaK6GD#%<@h5MIKV!oj}+qQlIOPgnkm z@qLh#rf-?h9kl4kZ|l?!V}A)vhT5b%tztacBk_2I zRy7J+#u(2v`)XyKA!WSG?=8It4E2s}j6_Kl$zdy56GN+l&BdJvurK;*cv)%NJH=*R zPB1*3IL7YK-6TQDzz1` zB3?7hG*VSYQbTm?hiSoSsDzlwMtd9!*CQL3Pf@9%5u-w@(mKmr7AjrN zG${tzSVKgNH#De#H$Q=?a4$obML47Bgo(okIk^-JVU>69+Rss~QSNh)=+)|a{8!-u z0_vvEX{192gDD?1bev+cUmimv-f;I+sX zlh;g6a&t|$$GuQxfbaZr^}bDb-qMUe@&7fdjlZMj^^bTk>(3(kPltFj3uhC9f6n0l zcWir_MnXpUzk4F>!5vy!_V$sT9QXE7tx@w@QT+KKX{rkPQO805EkH~~srgXyQ=X&$ zGiMV2|Nnje_12%TL8h{d-2wwb=XEv4YXfx?wnL?I0cu&9Bx)IjeQDXqq^zdU5?qtg zisayR9hNr^-1r7T?Pm^?G%hvQTVb^gbd!9e_^^BX+}WHjKcU z&aU7xL<(9Tjh7_cCHWLVD6JH!Aeqik@IP9vZJeM+k60CNfpdKQm>o(;YJfaU+KQDs z(eAP|0S1gm){jA{R2%e05Tsy_$d)fJUzRE8sm&@O3xEBBG%a>AeMq1b9H^5f2BW5{ zl3^L+4&rUTZV_MM8gqkvMaQ%vFlZ?+9{V=kHaTlj*9P_lA zNLM8z&EN;G!cs%BFglwZ(N+DLBo4OtYVu?jO! zIhu(U?%J{TTC<>oNu_yM&@^XinBvd6YAVL0k2)Tb<*=i5YxN8fJoFnQ*8XYG+u{_v z*d&NFHPz0EUdK?nzamamyM#3p8Pj|{T6y7`Rn1H}G!=eh0r8%T_n;JNWW2;f`I zl^&5U)OFbc4DKqNDmUuP(g%WAIHa1|LPJOJiuYOPZbEmxG}@ki+MdVoB57dZGwc6G zCNcWC+wzyIgi$2>B(zWH@NL6gn*qw{gsZ9sS`Nt1VzcBTuH9WaxthvzniZwf3s=|u zD9;473izJf#Wv{DsErtt+tLgOROJ|!Bk5Z~m!u=l4WWPfYALUGVMOogcAXi?Aj1({ zs>lp?Vlcg`_LS^J>=iOtwvj<_?(`2T9q_@LR(qOW<5!WtT*v8+wpHPui?o~)435j_ zp|No<49rb`hn)CHo=Q&qggdT*^>sV<* z*n_G@qnfC~uLrJHA^hDgAOGTNx$T{mfzi)eWTWKF7&?$+F?&Ey?$u3doFdbxCMkVB z4QO9@n{8?EbpD5#sA~H+HiB2y!^?^5rxB7H^gf@64h%#-!jzn{|w4mwep1yDl>Hs&J2jcy)*LOGKe>Xqv z{6v=cZ#X^l#XaHv`g@bvKV+`YFHhCV9&hdlX7eA1dAh}@!zgE{{gscQ_YKtl9Y7c) zwC%J6?{*KP!8a?oZzB>w^=Av8kK7^Pa(X^2!F9+PPmPWGtInnXD*F19;RRa6>T`ut z5~YjTv}W<*!;agm70>knu~L_I22d7Xt+P>Z8wU8|!p5K^^4#VtoH^b*%-ww%#{O=; z;@NLPY(WpQWO2^A1&zR}q`@;jbz~=I`K3!rpLkNT5_Tu}sBkq<6NtX~MkqxCXwR%r zL?>uY8cl@`bjdjN=v+Ewx`to7^k$nH+9Ga&f}j^W8HF_-Rj`=a`z~anaFxuOQbr;} zsxUxkurdCW>lmx7u}Ya%o>yp1F-0nxDi5L1Ls+FEz`YlIfjaA$Wbg%R)9Mbqw5&;! zw;HD62k@GP4uoqzQd_%_K{?GygCy=YkS`LmFiwOStGz8~Qc^zrf#XY&SVe+SQ3We{ z8brzR9&U3)lccAy!h%q$G9q}E3o+LeX&`xTOt3su4!sxAv)bxb79w?r({T}`D9o-u z_Tt}A)w{|;xaoehF#FH?=bYyMGOC`Qg{_6Np5Bit{y%y@QjUf~{=e0}IGv;njRa`8 zy~E%z`O(3^F!c(RFg4*ovSI7L34|TLeaJuht}lOTp#P&l=o#4C|3lp?&Pw((p!iIy z1@jcjpXqvIqTrm_^Pa3c;nh7XfzFYTHRt%*%{87!q_ z`HziWhTuMWaz!#;Z+lgPWTEd~AbS&#k0?!MS{>?E6T}xx*hKKf)A;9G7GFhk!^H#h z)VxrJSqL&7%-oN^2FpMktSql|DnMYri!+WEJcQbO>uHBHJ|a(pwT@+6pPog~oss^7 zbS`|(H|`KYQ!L6N4=1N#fe4Zw9sj5pkLZML~!| z$rAuhn?2nQ0nC|t4v`d8ovsec^pkh-=k~YJX-+PCVdw8fPJf8z~N$=SA^9|b1-6XM7ICrkZ*dBfP`ABpcDvUUDURNG)f@L5(vI7f%v zgeqM}8O(#)8<4OeaEMy4P{0W7K`ll70R$Ewdt#gHc5_b@zFc$okmsRMJxE>OovpdfHFPcR5fPEtg4|NbZGynfu`Q?C`uh8Ir*pus{pJ_JrZZ~E z)d8(N!%A0G>DhRx-hSH_tC9Ou*=^)_{U)*n0TSffSIBBt@Sk#(;2pw;P*mkS z7#-bIP*o!O;5zFt79K9{ub17270FYv9WB};cvc>w^JUij%80}T%gM${4oniVCX53k z%S_=Myi>OU&HRNof%ErYoSbhjU;V3k-WR!2f%RD~BAn3Py zO4RSNiISuGj`6~xg7S-zOX~nJkyujUF_Z6JW%e6Au^JOOn)CT;)sL2jmz@hz?zAqg zlmMz39BWbqH>{H;gcLR=gDNx@I%&i}4<|O@5%~h44>IgoFBF0~hQ~}(^T_GsOS|q5 z+#0Z&_Zf}Shpn^C!cW@PV^NZiS$uU927NO6+nK$PlwT+`diahE~MS7Op0odA*pxI=6;q+Tjvp1{T}6r3c;Ne$)XRHjIwEqjXr z7!er46{JEuakLU$S%8x(23>gWvCCq{m4TH!!3#+$}t4yrWH z3Kn2-=$YD1Xzo{KE71TWI03&1Ev<}UyEmXW3ujN+AmSuMxT zMB9~l@ptQ%vBcfeqvZmBQV{dN*1=HCOx|~Sf%s}mlR-W+|LrL&7E1{A;$mQHU|!0g z=7XQIWrhyj*TuobPX$K5nPd10WtapNPXYU_g>69&nXOJg4{A(5+!k`mYj+#V8$2Pi zOqF4^WCX|29y8yszfFsW!~ZghC+73U_gSO>@Htk#y+30SwJAV;d0w>S1mIKkp0xp3 zX~uNrzCMZi*1`MzV=&&9E86I@G?*MXvkJda`xMdX+WVJz7{meD_@Rk%@k%pU~^;Vil=R_3z@Unle^qFN=YPI!^|7&(<%c-+>N{ zo>yRNWKlA6Ti?)f$4pt}5>-7#n~kzc$Xr+$Gx+)sc)Gu*rLj8a;@f z*rfA;#TA1Pgk3c-l`r(dIVtX&mt2NE9S+HJZr-cJ|G9ud;Dj)5kS=ux^PG~S#sI?t zWWP&DcVyFlV5Kr}!~f2@!&g79pZa$Ke2U<+3$2(F<4e$h+YEMkT!G3}1uBATK*NgV zBs!KIzvRobNo++6G-aksgb2hQYYL+U$(oHg{zxf_2M_7Ky!X*cw(NUZ;JyL}xnTzO z-#SDTIeO-WC3lqhwCwwWEE?SzI&L^4W#Fj~U(ZZ&U0hwhEmiwl=bN|b@ikSA^`=)w z)^5%t*mux>{YKpE=)Z%1zK{NoLI2O+$i~jt#QGn7Owo!u|A4ab?$$$mTM$I_=Alq8 z&C985Kt+kKBU@)nlbSM~cHE0)$9F59quLVMF?Dq#OH3BApkZ84iLb1r#8@m`z$QcH zU3w&RC*s8IGb5GA7r@<1Q7OGaa47eYOZi)emLqYO!VUU+Su|&?E{fVdW|JbPu~uX| z9#?c*%jIeoONg61hSt{~A{On!{wUM!~61 z)dqvCwQ|2%JXN{hU#p3zz;I z2znCD8gH#@(6@`ItCbAMZt)9ZvPYhg%!R%Sw7X3+2?IO4f+E8EVIxm8xG|-#Z8uyo z2#!&9iAR)(BfzKOlpei~96f611~z zf-tC6@_!{>v$?m3=@0Qve~u_Wbz1*hr1gI-yNk2Mf6>lGQOBz9AO2W1gomWSJpqxB zJ$yeSS18mwU_x3tmPL9(fi2P3^I?7_mj-^?(NV^h(^YtxmJJSFOUNpUM7~u8i)!hc zqoe*k>sd2+c{+$gu`25!fL2+i(5Zf+AIxIM5$S_TQ>C*;Am-E@93ct6VJX#L62OK- zTfX6?RG8T8elD>UKE1KaTHD-ke?+n(0?Z>eM`V&;r{r4ZuA2TmkzG9zt1OG=J}J zNPWdmY0)>ifP6nku7*GC@E-zaG=~w7p-`dqF3WMd0Yr%1L zNV4d^1vv5&4x-hnK;TGdTK1j1L!muRT)T4qEh6(n5P%=T{MV20=lVY-bpJ~odjrRx za=QNx$@~Zy@V`0R$b!NB&OdUg{DW~o^Z(euz}DE&&cayF+~Q}*x}%Z#Kgu*hRJrZ; zIS{TMsUbks#r-Sx?2`fM?OQsDWU9n5L4b&3Y-}kM2}&!XMZVsr;yg7a_xg~2Z+CQI z!nrgQ8GNlt`WV((L_c2quJD=bcFRQRe=k%hWRO`Er@c)j5u2kOPtgKzy68~0tx>@K zJnHy_K{8&9JZ-Sg{u!_;7}C|v@O#~_6C=N?Py8~mpsXcfqZar*li{PVac`>7D@An# zv_K?D)4r&l^`aoB)4+os44~*#;5`#S4LLANwMiF?hd*hySf|qXb4(8fA&lfZCJ+zJ zBTUyacFrw=iHtFlIkY)DQIWxQxB;<85DC5`z`xVz+uQ(lsd^f8@(R7;xr#^IyqJDf z=Iq(9anTXx6NK8sCzNqC7wZ$P&M;|hi#x5&iC_uaY0maCpwGD}DdoVHdwt6?zC&-w zb|p!(2Xt_StJ7Hb7#r*A@5eV|9!rYhAW|KGC28k_E;;&g^1&aJua1N)fvl-7Rh&Hi z?Jim`0G7h8350hVM0?}fWh%>p2rs)sspDRghN))(p9Dp|F7VY^^(Uz1z)punKqeHf z+KimShnbcNb^*TNd|yAHapV^ojGk`qfq^dgnlA{L9!TQYAf;ivsL;`VrWNu9Pf?{{ zOu`&_p0qDX`nOD zNI9tiwvNdXSksd_RvR{qF>)}o)}dSeQ>cuu)kA*QYVbOowJUvkYxImkU+x@wZ9P8n zU{9QiYIp0tGn!sUt?X)zNZ{ZjwUdF2%P#P4M%oT7hM4qqvZ;G9=N!3w*XvCTxd3AE zom*Rbg70E~Jc$Oe!qSdIyBwfa&_$GHYDzc@E-RUX_adL>bm}AS2w$#zA=KhD+vgt5 zeab-spz9GK(PkS7KR>fqHV!afe3c=Zrkp=1`wax@X;sfgQZR`f5S&NUcxUy>dw|;; zOy2}z+vXpq9<@UE{INzm#GkXG9J@j$5va7UlF-D^5msLJEs|SJIU;CFQpC*Yz+7=G zGzo}4!+59Zz1ab#iRshyYP&p$NAo>SjJ}*Se8_L>jq19X$YyXl{upV;&*#2qJLgU~ z)xyUUl!^$##5X?UnyZb0UL(A0oGvysCASE)IGxAH=%0Yut8z!+eiekcgTG#Z|5Z6x zwBg#t{>XpdPpk0%OM1->9Bu4uJ^n>{lT~G6(|@9+_tZ4c@^LE^@tzS$oegCRR@D%M z;OY9wDQuh%W?=V%fahg2he4I4BDf$baQ!$EK&HASg{Frq7JKo5orCVaLhEw-e zB?A(84zwZ8W4)q=wrd1zzphO6BpIbRI~$`yVqUvIbE20jFcs#uP}PbgPd4;`$YX-u`? zSdP4u&eDUBQU<}_z!mC?Odkq%6!O(u{=DVO)g0NHu{`ChRdU&DVZIV}y;}cx()i?U zh5V@4GitvH=N0uX@=B`Ai543ItbfDG`w7751S}KEDvr!9pn~hBxu4B85%5dN9W9*rs}F6rjCOU)1tD!2D@b2qU1KO+D!l9=?uVby>qPR`=UU^}?x}oLp1SR&vVF^p?u}oZ|Wb z{RaG3#x6mY8oK;3M)HG6j(qxewfq8ex^O@l>gEf0J> z$?WHdt+$%X>E`t~g(ZbK;bW3M?#?>*uMS7VJISgrkwnw#-T^F%P81a`vv(28Vb+x+ zSznz%<=^|GF`oLZ&6rU(qWGQ%t%bOBaf6tTK1V5rS@~SRp}u|Rwlew&yD)B8p`rGS zpZCd9J(*sKw-~0(s4ZxH{p%aXi>RTJUS<;GGYOz9GZeZ69DnB2{BsZUzq~p&h`()I|q4u>*ko~ zPOzI9RDnnsA*}{bwjKr;%{*(Ox{`QhH2RV6E^fuV68Lhfrkg<|kLUL5{n63{a)x8U z18{_5K`LN&BDTa)lBvH-H^XM8G2M{;d^Z`?rUh+T09C=oHS6Kpe>ZK5JW}X#M*d0^ za_I!ISpteWWHIzt5eoFQ8s(#k#QSxL0Q555vM=k$c=O|^^Q0h8-$inrfK{MDF{5yG zhuT5xJeKd4&s|JiO8WC^s)Fd|(!1sFY zjqn3Qe_8>Izb(oU$3u8DTEe%#B`gf5hZ?PuJ)SO2;*QT8jBYqlp5yx=80%5pLFxO6ZkEd${N=I_x^7Z=Ny3`S ze}>qdhhP@PfNf?+zaKREjoWL(6^3@LZ|wD}AF;B+R^Yv3LxPDRY}NL~sHCiU zngpv1=zm7|-t&yJ;L|tL<0$DydSzuAT-(-s*9TfMDY970v!Y(ID+m09X0bK@tX_-7 zlu^=rMON;Puv~CX<0_sH)pxzvN@#5!l#aB#=BBX$tI4CvGtFLevz|K?oyHIFz!T~a zaI0zVXR>-Lk>VpAPi;3066u?fXbAj-a3~Zqi(ca9Xrg< z?#-)3TAm>i#&cXGL=m?i>(4SqBHHaT!6~MVCMTJWWZjsO_2D9F+UUGZlM5s$$gZ9* zx3_o^su_h47hbL2dHT;ZDM$K*X2YbJu7(b^4o#y%uYlO2G0D9E-+e5k%TV#B$y#1~ zDGM4n{VrjGeV$DrQd`|&d(-BTwPXdv?}T%jUHgHQ4rQ!lv};>hnbTGJ?PX2*)Zo#8 zBe!nBj%xuMyzJ82(@ob`xwVAdM`Pct#}>{s$2^R^-#$J$LrRkw7j{)~1N3<-lBSAU zynFk~m!e3zXUM6sn60LW=2=r={&_xE#^P=2@z~;5GGMMlS3lIFTRQ7$+B%DMS<+c| zuAjEs)!^6SO5=20IzN{k(RSBME3ed!l>(z(#R4A&M|BW<)x|-X-jjV^V zNFpVt&8~(OHOlv|X6DDT{O|FJAdS{hyQ6 z|EquhXAc8=iyzIqm@E^y&hP`)`-R#^jveI$57Jg6rA1+qUN@7DxI}_xC3R)KL1z8j zt=42b7?Zd;qva!hk?Lm365Hikf-O3%TE>$oQy#yPn4l>#TlIX=Lbx?H>+<~KQO*t2 zaq_tYh-a3C)7zkl$&hafEl8Bq@Cc_zJ`D}nZ48;4fK*c0f*+;ELP}4Kuw`Bq#_M3+ zz}1y1P9?GBETSMK6atvk!Ha6y;Lqjkx;!?sU@{mhCcB6(Q4^Ali-BcAE0)g1*RZ6s zu+$Cl0s$45I7HDGz_*@pL?n?<@wRjEiboNy=70sc!nlx@;Ec=oP9Xo=vX}3)W@~_& zTZ?2oSs4h#4cr__*XW+7uT);+w!<4YagYXBmpvB&r<2rLK-X{=v>dW=^CXfq{9Kml;6;_ z$#1=1jg{oP7?&qKeGk;p>J$5$c=>EY<3m9mJkzJ-*y=sSdyjTn^m@bBk?7oHKQJRC zpxN~=kT-^E6P_q~>$tZ36`WiEQ`5jw*gxVJEji13ExM^BB%Mu=i-S|yZ zf?J#lPHaOT_o^U{@%VSSAJ%@YfQ8g8LQ|6Y+F^FQ-xAe+9bPi6&Jvaqv%#zk1;6-C zk=eXpvG3p-&Yk>QnkKt15&tKCcXBrPX_2EhHTX%^*xAzkTmadzMh?T} zWyN5juzq3$0I(9`!iqolk$)_RAKVmxO7*I&pBtc)qL?5+)fCR@4^sB6gs_0JyY6MC zR+R3di~n=#?dA&JJ~SJfJ~nyL2n&Bg*$N9D^)Hr6pvpd_@U)wq5*dd=Nr}a-1!lSE zgonbJ2B>7gLW0Ktamr*#Ez&fH$XvxV=$SS)#xDK#oxsTnju&31GncQ`?+d@_EwgGL z&SO5WY?lJ_ux}q7FCVkYMmut&hd2;%AWcYP66^#334VG&px}le5_zJZ`$7;2zkeKD z9LNRutz*76Z9D+rTtYyRZJUHYfI}kop=CG-L|h6C zi_5$W5J*`128Ei`&n6AVIi=~gNanZ%@ZXEaVr_X?`up_XUv9&j!eXs!1OWvAr&NC7 zdqQcy#^J?-xU)=FDL$|P=fN6>pBW+fl_j$eS5L{;Wb{@%JlV*Vx zi!Siu9(n{-Nj=~iaHFu|Hn%+uqZrw&F}iMr^n87*sbHD-jA<*N0_J$-^FR)EyT3l{ zvyK74&nW9j+PfcxW2k}|RaN1dU?kE1faC!WpuzFta2>J@5SPs^Xcn}DW@$#o^E>;m zbli#nf`o~A9(bILPm7UrM+wTO=|T##j-W9HIc5m8YSxD&l3D=D%mVD4X{uO=P>@Mv z$C(4%HsX0xjB694KSvWtU?)%jKpOB!_i}w)A=ID`D*j5KBdG)i31!-eQq9FQ7J-QC zk|ZbqMdX^Re_^-cc_Ki=ORgiJo>N0Dt+=D0fq2*=r6j0mi!S(l=|bdl`HYRdy0 zVC5|li#jk}Bt33B4+le_`>Wvw-Bh0bq`ycjrHNjuwa2=Ej!Pf|7P1$I#nN;{l?Pf7 zp2Lr$*kA=_unDH_kPyF@lE%7K*LDJE0YqUo-8If;v!+k^mURG1(@?l27QA>M0~Y5S z;JDi-tngUb3>SixdrLD7cP1+oS{6LkD?tFoPr%UZB6jxo5r|{Q4?v8czl~T7I*x<1 zib;jV9|F8!rue-q>lSGF?Cy}-`u&MkB?fUaMuk#GXq6F&$Q2S)3U#T#@|-XlTVRe{ zd=Eg_M^kW2qzr;qbV*7o!5@O?LK}#^KNPi@l1rkE=sckF%lWTqQ%2|{r_z}} z2ejy)*=0}vKy;J&&Ys@kq6naTfMBfb9H;i!t{yh}k_AB19gKLwCL1<(;5s?;qY zJUcm*YdiT0dI2C1ic3FBKAbcXDK3s#@$c<}zYuqMXz8E12R$GKK*a$9K(m6Hy=T~o zK@HYc*_FQ#fZX41YhN+A$)0l}pyDTs_EBLzmEc8iGHFw2?tlb=!$N5>8u@?)dFe7y zhS26bQ7#%JCw)Ted$a{daY+D_h?@A7;GPr~Cb+az#lg1#bH7VUHJec2$+dj-$g8lwCnkpZ8V+0-Y-?N(gMs zfW?CRcHjlJS$&su=L3e4ZOL?QAGF7e#iz&usmg?%WWp!;^ip z&7_p!r|AwHFH{YA^snm;r18C!cC+7!8sqD9v>tG=`Ca5%`MALe3`i6PXGx!07(QgY?>xn(o#hWzE&1u3BA*`2x3iyy&N2+ zzX~v|6Dse$L@*Bo#1qZY%no-+h!qQZyUX7G!-}5L4devqg{pG++UK}A)NDms&a3P5 zAd;9uMv_IL!9Tc;2vwWcrkrYRozUbDH46?8zcEZv=5ba=blJ|z^M=_lQwr=c4ZSN0 z{83Q8-~GXJZFAkqSkd)qJ}5~ND&RR_Hl6=!xi7ED7(6|&xmH-^r4EHL0gS!(DR*oP zgAN|7^k_kvTLWwM1#c{Q#87@BwgSLLO^47J?o%&{Dp|du5qF zNd68eJ`@L3Wa4C0?)FHyM&b#eLnDz)JzgGAsP=JBA0XP!D*czyF|uP{zY!b@0oF{# z9Xo}?gMW)A;@56EShPqpWo`uo8eGZCx}LW~7TwChpTiQW>hLq>|oKmm_# zV5iL;5a5GWF{ebJn{DvBfKG2VDAW;bC^G(=esS=89@DV_3` zHOUCMzCeHD8r6Z}Mx^BCi1{c&wUKUP1D?R2%Fc+$RwYesX)pvBlCGtE8uuZfGDXpq z{KkXF`av}JsJcLC<&-LQSbDAF9_2upL;@7UE;o~rgBJ>j zapLQIG+?`fdK>z&TXj7|;6#*tn)W410mW%*FoH`eWC}LMFdz_AVJU=w)Ez?EXr(IsMDI*>%n3_HumnZ5pg~JhxnS$1*c}s*_NGl3Se<6G|Z#GLBa< zx>PfmgoPmFIngY?DIJ{eerB`ALp| znb_I zNNEKuyC8CK7zvr793|VYn)u-u48h-A4m0JHoXoZqI6=80l;XSqFd*ix9z~?sj87R^ z^ERG-nMgwe2dMklqv<*OdmrNs07*UR)cVaIgW!Dae(dnn@NIc~lj_{sklO<~w%632 zva%aQ+P}vH&h2Vl1Aqw657bSv3Kuve1H8!3z_fgf6=|_b-*5D>7zC)mv^6r|txT@M zERvm$T2o%czv>K2`a6&mvP+amIVGW7#D4)M4C6Nd0X1J&)e#y4n&q3?`c1Gl?ayBy zt$_$;4&?>7vm4KX-7O}x8>z&rHNF)VZ#f2*1HIkf3>CKTxK(q`l94%u65>J_AY*94 zBm_}E=)lepyei&axV&MQ+VRh#yI)4LtX*dvj@9s-Z3}5hC^H{>Aff?!#VPHvJVbCC zCrQlmH$qk$otUjnX|8HDyRD3F`Le+SpJM5-dM2$KM?C$dArbH=9Ve*iF;Z-q6(|m> zGSee@bO?8LbO59Rb?|rp42^CUTlwLj2G%`F@`DLuMw&OJd>U6-d3u)XUSnpf@p64Tiyj91L(|e-M%Ir7 zdGR%WkV-D zG?3fj)HYg=g1Te2KvBmP5(6L*c3S_^Q&$lUxkZy0GhtyL zE^W|p`COmV2EfDo_=vHqQrNmD;9IEU1Ch@cy8Cp>u%)l}9GOt!a7$-GKLNB? ze3Wo=itlauqIGdr6?XZ|HoZeuz|PP*32?~QK^?c*t?((jo% z-Ikk^d7hKL`#BXoi5$^q*T0UFpcMSDE(a0;{P0+V0|Xe@`Y*L#RcoWL%H;Cby;)&n zI>7344}GnT5cP4g!~9y*vBpxTHW0wx&B$^}N~UH8`b;y)6#@D_2HFyM1na8Ae0~tUjh__VREu|R-AABt8O`I>AKQXOjn*|zkO4}moM~c zDwm61SgVyY(#VMIrb^w#SMG(^^EZ2Fp_&PaIDppIr-zV0ApijXy?)}rT&0!6@sv8y zptp9XYTfp!D(%aSD30$|1?xaX9)K}bKs106G`zq<;?*Ufy)#~i!SCJh=2?OkV8#I!4J)u#xCBj0f*?RfsMZ_l zq><>ggOOae31_XIGO#0SxgyrXI?WIMgvWfImWq(!8CUaKS2SOz@s*j~L*(P4>j#02 zUda{sJ0*QvBzj z_`htvkB6iM+{`I#wVDGrn`}w7x@|$^6btYhoefDD1bt0Al;lu-a_M8^|2 zC?tR#Z{YFq4Lo$UZF9UhFmgA@0rum0p3Tp__HVvj1p)wYfm}9;wc@;*D)hOp>bm!i z@!_)S>WG$X)%)T|pulh_0$9eHG>jxdOvI`LK6Yqt>7`ca{+j7(5R$(vq_)&l7dMn z`v27~`(auzOP{_cnaD;Q$5x~7FQ=znQuXN>zKy^IScq({(C#uyBlFs+v>vRn;;b*- z)8GEqCL7fcqX3Fv;Oemc`DNgSaA7>w+26c(aNG`-U!EcAZ~%Mzx&j((Xa`xeLW64& zXS2!qK%}VR2>=B!G58to>7O^oW(x54J=pU@dTxz)Gbv8jI>vl&qnP=i4ym0;(1ReS zWg=pMBmv0}2=?}e03ir!g}c#^HA#T`mON)bAXYrCeiu!1A!3MV*iw%7PvIr#X!*?q z;Lm=tt%Q(PoMYNhRVXHsPXqhe0~ll`SW%z>A%cIeLIwqDNZ8=f;G$p-JlBCF7W_M2 z&E&G&kAq4*@X_HR#V|>VSm6_y`lXjj=bgB{RZckxZm`+V03(MhvrA!b-i^Gj`bg6M zh_d^1TnD@#*~Dx-&bEu8UwyYNVxkm_f=;2(5-ewb?Z>Nac}ulIyc8SJV-FtOEh$q5 z$AWr%h2Yn!P}?drxtN1myP92Gv`U45rg~K|o423sR^`aRfYOn+sL{!-s;2O5zuU{j zyH#jRHbsBfIKQFk1PPq|>^ydJdXH>WJnhF|r(L_$e^^1-6yJs#jueMI?d@_gGrPYjg*X6MKIVDD zb%05z#SWe0zJId{1n15{pv6XKq{VjDoXNkIUrbj=OisVTB%ii59LV3x#jnqZs7-sj z>M<i9r3I8gEfV6$}0P zJ>qO_yW~w1Y%dK^Hl+?nP7`Jm$C@d?(R&&!Y9v&G9nH-S2m6=HXFmP1mwY&WhDcks zHQ#Nqr8=8t`sPu^f24Nlz?WqdYg>yM#9*uoTL>k{BONQJQy6q&%IZa7dPIJiuKq* zJ(M=5>kjM1FPgt+olci$wvUVhM6>GuAWEaz;KvVHB+I02Q>Y2ZIE39q7a24VJ+Sck z57=91aXMhzntHGImayS|zq%A{ol*lM1*M~c5->O=n{<)`6N-bYNj>UUgn46!+0HP& z*VaTpIsjDog-uuU)WmPL%}ovlIu86DF`KP}L4rXr#M)$g+2n4Tq%J#EC4u5MJ~wcz zmsSAK1~x>tLb| z)KPd=f%uc`{AzQ_?F+aHVodEFf;j73_=yMd)hNchd7 zsImH{aqc-Z*GsSl0^R@$tt#?(dN?#csEq9z(O?A=ok*a%N0us(5%2_LCMeUvk?l?{ z+%7)reTT+Y0{YX7#m!r#o$u&PDF7s)X5PI@+vW$DPoltzN4l#6#3}-N`-Z4=I~Os! ziBI}|lfT-HVi^Mj7!91&NntZ))w2nb9=3Bge^-hj0#;>Z-dsslx|WDGf(Z1((b zMQs`~-~}vS@|01OWT%ixwDivMi^u!#>lB5Ma9`~fy^1tqTb_1h{RgtQfA?cpg)o}S zin)LWNPJG+tUq?4B_JaApu#J=?T7_^*%=N3-UD`bu~B!sUynqTQZXppF^g8Igmj{# zgs`jxl*^BcdXxN`Ysqj>UaXvC5US^wIw5iWR>p>sw!mP}|46F%A@9cx0p&r@7+f0N zDIRC7s*I;#$h6Xuc<<!_-3FRKsh~xgWNj6pyNi|YO?>2taFa-C3>)UZQHiZSKIchZQHhO z+wHfuZCkH+wcA&2f5~Q(-Th-GH<|foGP$`k_nh-NvnK2tBUzjy)yh`-gjkay60RX@ zLFTH;JCub=ndYdDBd4A=x}@2izYCD2G;%knn_s~qM$RheB5Yc1cW70fTnCM;WcvJ0 z6$L*d=t)XvRJ9VCFmZr`@LcoRkxbA>P4Lnxr!)YN%`u^(Nkn95M(M)3vvuORSNV}NED!7 zw`a3+@5_|EiNHZ|V*CEFI@7sTX-6=7QYekcKTneo0zvjiP}@Z$dl?-oBpap3bCShH z<;c_;mm`)~kgnty21>Osiw~MT0z+4lp%NiMaWxYIhF*2_q#@-uox8JvEhuj~qworw zwJ|ZrX-S5l_GxdJ*T0`vFobEu$=J%1&!@M}la(c}?zJ=}l!E?z9DK!lbuuDd^(s00 zF?C4Sq(k1Kdk0Q_Fu-Xxl&5BFC4c$m1k?aBCK8){7+Pp?$s?H?9m+x5+c?aLl@5*8 z|9q@S+y@p>>);FGn%$||+cH_d`fs124Qz98Z@JYDI=D4iR6v2^WkzDc zR%$e+>>E8Kg31d`9`6el7s&8Lm0%Zl=Z@_3_MJ}=Fi1|#RZ5F~X`6rcbEZlgy&F|Q zHP%*>{b=NL&h5@uQMA64fQ8k`uzhd{y+tjBEW~Ny1&t#3pc2?z=tuQLjrodT7RBU< zG-$;ccx>Y)yhLH4d-iO1tY8fAUIh4d= zfWt}&_5L}r9D1BO&|)LS(+-+`4-ZFmSOz9Ab5e{OBSx9C5l+@YQ>v!tTS{%%`ok)a zu%i^0;3kNK^=~>Y_VHtmh;*0gLKP?OfW{LgQB~kOv7y2VeE^M6t3-6HrK&np*_QHUs@XTA^yei?%fX{AZntBq?DLH11SNsYM|ex=}R zVnt6hA)(oM3I9jS*!hh@cY7nZ!S^fgbYq~E{?ZfSwEGfF(jsy;&!%PrKRXndXQ?jr z8YZm1ToR0z@R>>qUMB_{wEGMXCMYpb>i0*#)1&TR%z=kd&CbXq~V@(Ek=&XI-qB zPJVEYOep_5J^VjH>3@q)mUbql9t;*Pwl=w%3O_Ctw7wUW29Pj-CRyp8CO)Kg2|Wi|Wm1X}>6I_<nywo4|1J+qAl`$h@nCh`rZMQ}0lUVopP zv6t}sSB}I=EeteMiqnbOMqi@15g!yqWU@9S9CI|(caVB+cC1ot^{gzZ+rvw#SIdAy z4wd~J`JkwUXki-E0#z6ha43ByqbBG=bQ#MtjQ0p=Gpv(BdFJwD?}dTQ48yRcKO?M< zD6&fIaeM=;+^DCLO8n4R>xhbFXErFqn+8LR9$~aHar=Eh8|#8}W6n5?!i)rM)9svp zVlA8hsG6r_6;OEFieOU6x7bzeTq%KneAo>aUdjAs-_89HP4o03)s!Zd@+rLTi6KYTnyoKQO?M~vNESid?i`!q0 zBfj)m;kImugpUg~8D=W-LlA1SfWJBff+aA(Z&HEY z8fms{6zeRVJR{ZJsD$DdcC8x2#j95cyxv>wCk#&w&kfB>{)D0DGS!Z?>FBfwX~rh1 z$TyZ%Kos$tvKdQf$39Nyh9!L@-K(?h{*9k;O$1X#OAS7HApuf zr>R&LZxF9q=%wd>35KJ%$yj`oHn_E(t18jBP{6xzTl=AJ%PF_rnKRih2p;Nz{t;B( zbW|DRJ#qmq+?WKil6i2$DynuD`2M_Jt0vt2emYh7?*2a7BlH(BY{${I4SfciVn)6C zw_@bT!@9$fVx(kv1@VM4XeqCi^8`dK>3ck9$gXj%Xasknh z9erB8*Lj(X@BE+uDC1_n`?{qV9Z6?M>z(YZ0{Mzf7@_owLVLw{wfb~S++ptR`|Z&S z^oGu-``=XZ|{=$&juY&&}g? zZ~IH3(bwJe_VpqM+2%SQwi2+)8>$-)FuSI!d&Ya90!rM#wSC`Bo>Er%$=Q9v^-tzd z{n|rwFojZMpskV*tLcxaxty8cZ-t7rVq{p*yOKP+yo$XHc}OWw6P)!76_V{X)gSfeyzkpjz?9FSXtGq~0@dmaLEVlS4t|PMw7%>ClTQ9t`DEs!;@Qo zb~0VYd&D@;SKTL_rkyakEK~+i3M~#4G5^91Q>|pXD#`EiH84P zC5%n%7=I21E9al+kfoawgPo}hqn(2-qnoR#AWL_TxAWF$6XV6fAP8b8eXr3yB%LnulYm8{>0>2!@T+g1fNIyQ$vh>o7^3sx(UZ=+oFT9NRkqlORB_xR7YeV1mRXe%0QBuk2V#`$cd+?Ldh+d0ui+~Q@ zbEno~0s5(`%9m$|3X?QUFP`<5%xI_1tc%7EIJpH?2}hQOmA9-v7d?Fc@XezCY7&s* zQz|7tvpaAzGB*8tukI#zA1l$Sx8}Pgf;(;F_iJJHIg5 z`li3v0DGzbe(NYihL2h~6xO%`ytz3l&2Cv@no3RK$lA<{V*na^K!gUotdT55thaSP z&4N3!*E@97O;t#&*Hdmhp!{alg_g>d=i+?a#Ggu&56H6TDr0Uycdr%u+N4tUSIT9CmAXGPK{uF3U1Zr7o>DAzYX10M-McIx| zGYjq5W>d!>9E+2w(aGXzn$?2>W4N&2L(ZT+7%*y$cm4NzUcwSPUcOxSI%^pG^8jO5 z-)7Q^iU^63fdQ&IEFk%4U*8j+vw;goNaV{ufKJC?dm!%T=>7560JVl=SFbiDaN@AT z#4RImVhGiSwwDZuD9ZRjUv^51jIx8c!h1Cw`8FrTZf}5+{bKJEBE^a3s333iKp@hV zvpd;CFl(Gy8Aq3Un`XT`txiP3w_QuyDH5}qL0+Yc%FexVx+UgRb$2qEYq|@T=d=Mv za;FJ_Bh8t$?oJrd6(lX_fDf=2GoE&A=R_1VLW%L_qYI8pvX66mr)NGR)N_Z}%jla6CJ(!#}^d`O5NjS6P(0FUu0uC7bK&2iz2xz*r;ra3|5*SU667NgDv$I$WGU?^34Br6HDL7 z`bvZ{u+0SdO}6LWgH5P_QyiIg9Nu8Q!Y}%3%O3}$3%te{%Pot0MpGO|KCl36C*@pU z%c`r$wmV9gAG%`xz~?q+t;VC6$lg@j+$X}WzkJ*$g?p9dmAD_Hu)Zp5q-V7vtNCVL z@cboZIL}e|sE&nddSno~)OGXnw?uW^0suEm^tK_et~PEj4D zF6^f@e_KxJJVTqElSd8mxBU1qFD{_za6o>~Jbj{i|I=|vHRo34u93;+e`mcwKZ~o%+V)MDY&&IbT zexCh&!*J7GKXteX8fj1pU0+`6-R?aEV8!kNk@LjkTPI%U5c>xcs}R zX7e#bzShr6ckSg%#Iya8fw+IiLp#?!^>*pt!^q}) z(3v_^a@z@YP0`%7Uv{N-Ro#i{B1Le~T7DfYnc>+PoQH@$AiXQ;l=*23`;UE)A~X_I zRBx7=>D5+6D+aIoAMpZZ=Aa_PKKTfazQvC~M!pk>*8NIy`FIZ6e{KdG(P=z9IRI;ti^ zzm5(FmwfjKP3Y>Iil{LOgYGL{Bv#lK3&D*a!dZolo9~wh5lO2^{3L(5h@|x2LUdGF z1O!7ne`9Z<0)(F{{0FMV;nTEqS(UqsYg55Ia9#23BBVG~^5n`X*Vtki?>iSl>xzKi zJokIe(G=MS8ix#&I4l({1#fSF8o%4yFh4V{zcv_mkRn0R6CvjlQFTSoNVrgJYA6uC9`M>-ezjiLx1ak7oeW`xSqq3P0WS8=W5bVd5SeTMCE>|_9-6Y!=j%tQJQ5F9(~=R9&wkO9tE9vO0M5R z7NH(0`6}#aPcGU2@>|nW<{S*ubAUs%-g#u^#Ff|ta8(jGDVorg(Ksa1e1sX4J;^B| z^{>##P;plaYyO);s4_#HK+s~RPWrf?@%)DuvEU-AOr|c%RdeRM0ymfGh@aMseE?Hc zqy%pvnk{?vfHSK-k2{?&R9dClF{x_nwPliC0Ub{ytxP|cT7rpylP0K5x8>lxL~Bw_ z^4E4kcdggiaA}RYa_SD!N#bd@-`f0h1{k#c6p9-1qM@)NN`4wF-nmd?xwDlE4q3PO z(sSzEt+^<7>WZy4q$MM}oa;KS5q!cI#P4%8Zc3v_nnotyxs6leL`lJ#H4bq=c9DA+ zM=k1u#e0HDgxXSB3o(x(4^w&MNwdo;*R`BrSO7y#n@B0Bp3O!G2>#bEmgL2+yZau& zv=xudL7y$4EX#0^1hpdrtgc~x+&f_S*mns5uo)`afJp^gAW&2!x?*z$;1BrE17w_6 z%k5&L47p4(s~MrAeCi$h#8Cm~&d{6xoOdW<{mWbs)nfhA+~7lu&b{Np+^dh9ii{&7 z3=*b>cUn$FhhsBaw18aW9vk#@mn%QuLNouS zuL#x^ho8zEVi6&h>h4#`L4WV=hVR1h!}7E7T4(7gx&H~}b@WZ|gi8_&mFH zQVZs{DE^jaoV516ktqLimI-9P!!CARIj3>V&aE?UlFLp(cHhjkLVJuwd50dSgqzVI5j%1`z!BbnJ>#e%fp37 zFnPFCxzxa{{vNyiRLwA7)G9i>$tok8T)J*GxS4onOG>=N*gDCC#2)L~KQ2I3+lqp* zzu-!BVYHIK78X)W&+lX;>~XMJyqt5!lPHbKD0QMLH$NRy6m6BWqtJ|USYv!0#ScI# zJqf_lod@&5bL_+>OoI3OSX@vc2je;hSE(oIp{W$=F9;;n4*NaavE5g07iOsi!p-r} z$A;bb26dmO$b$xKr>p;P-Z!LOoc5wBUPbAqwVz9161^C_8u@1$O|U3i$q zB0t3%bh7kDw~Kbc-nOevF05X0Tc_YRc5kpSZ&DZ*2D?_A9JVz+KRh;?H;^$kQ-ov6zdK!0 z$DVL_eU%#W>rAS7*4BLlrd^kn-P89zGGmyB@-UngN4<1~@Zs3&vm~*kAykVsEz=On z!=?)xs#Y$EvK@aKSpaJ#pd+zD8Xm6pt!=ikj#90c?EGi%lrCLQX)fMv$%P%Rl0$32 zvy&tYIJF}47m5rE$%(CdtDeT=f<)F3$s{=_`}^cjZg9m9Q$DjNwVFJ( zkIw9P*kVX}jw*!gmCvii%iahW$%IA?^Sf!kQ!AFL3pER-HJICstXp>Dp^l(83Oa@0kE&-D-%C_s{D zqu~Ixg=P1|fgwvnskm;i`^itWqB!_B#DM;k22 zQXx^0tsxd7{d|$TnD!?y@R{ z`Uk&^G~UZdF9^T}M6kd={lJ1(ljkKTAYvlTe{z{65H*7a|!A`TFR}D#@EE zoRx6A%WFTzV*FCcZb4g|>dIaC5&(L?1gEXpMN^vJw3pqdasHui1Hzjg0@gruL~%fV z+3)Jp#>`V-pIx^Qp;!~l7jX_Mf>vYz`HgFd+`{(kMkR#`8CvDiU=4%*g3jXGOpuN0G{M9wlnuZ`|Sev4ZCr7+aVdVZ}vjRVL>G6nJVQ05tvQj32zj z6$q74DGK33`v}m~)RdFP?XSwyOr>pBRr70R?yHr5iqRoGq86q`$`4hr0?!prS+jQe z_e?t`Dh2x?x^2otX4caE;vC&)Ya|5#Yat4uu7XI}M%G`Wf&j85Mc&d$U6t}6z=C5q z2Er4Y-0-}Tdfx5VjB3-lR2e1f`-iG2Y!$24!T|{ST+SFk`S-=IINy3#S!cP*Wh?o9 za^JX8FYGYu^|`Tl7Q&8cQI2y5Tsm9yjg#9dIssv;KYM4}EN~w5?MrIB#0}%`S6Iuo zDTZ)X!m=i+V@GhP;eM2As@c@^e=ULWKU2(jWG=A&l9Xf)NBRh{=Lpdd9cvmO0CN5f z4D2Vl`$qm)#>K)0dksJ-!zpT+6DQZKMO^PLt`El17`j5I+zwDeIcEcgU4<@yQimGc zd?rE8nnfQR!}=m~*uRQNJ|tyDswGXvxS->)B)9_Y3~r|Oc&TG#tZTzLl^+d+}VQzZZ%-HmDhnR>+sKT@JDS?(x%~p&87rLJ9 zl7|{_@$;EfsYodP5mSBAl1^qm4ZKpI(g>6M4ILd55jTKPAjX-%Mw$_sjHkOVJ-S0< za4hj|($q$|CnmECI!w0|Z|QkKYRMKkDGB9FW#>6cnQ(c;>Qyup{xey%ge5l|EoLff z2wlAUxmFOWBmKZ@(t4@N)>2gB@p?37^nH|^^YB(IPP}!M7_(}05 z#v=vc;M+9en3x;%@1dk+xOD>Z7DeNI>}IKICI3lHFKCmyrlR7~T=a>+V4prKjT`W#7=guQNBN-RO*^M%Z{FJuW|*)^*s07~89i2CZR ztAH3`LqRtq-kGH-9TrCE35twszl&mG{zMu#C|*q|Gq9NgJH+60XSdztM31`I{0g=WeKZoxQUj>RXOLM%WDdW)jF`C z{XcUX4O`pe?1mzzZ>k!|VUA}UINB@~=61Q_(-YwVh{4y2BJj?6J}c8`G${Csj@aWp`k>RT&c;?|T<417gf)TfQ@Dy)~{5gCq2ef9Pr{r&- zatC^Z+6a(3h@)1$KIm>Wmno!-%5+eXNGvf@x=~AOu%z(HY|iuHTnA@`u+{a%ik7EN zhix2u0fUF3OXe1B;jgqKYDkjm(VGa*QZtvsSP+m?w5#Jir^^wz$>HxkOAInmwKw4U z(ed?y1Sy&3NZnyBYa)suP;r|R@US(L!rB7(hM~aqtt58Pj{+4K1l>n?^=Q zQO5p~lm|5{C;yS5m)u=i6N_G^BQD11_O--)`fPUzwg$;2UC(STOtz{4R%&pxZ$V|Y zv?)Mmm0!&+P7yE`xAllh=0#*lWhxfe019ORj46^gJ9XgY=XJy_QOMoT_$Ihsb2$4@ zT09Ba)>v1|5fKFy6hMQ6ivw@uoS2K&o84ttO?qf2#k7h;DBms73(UZH8lnUt_{+jD zC#Dcs6&D-50yV3(f>mR7&hhr+QeKwpw~A)!g!_$fA;L&anqjznpH1taLtsGh0ABYf z2u8j7q=N1_WBx?uQ!mlh+WHpU%*WtCQvYAU&>-+q(=Po7^7HH>5p`>iVl0hM zsDapre@GZ2;@R~W6odk^14%ZnOM%q$!^ZrG_=o^ot?b21c4LYgY=pf*@h|H0U%UQy z@)B3g`Ylo&G;U5{Bn#1Z*9=!IT?4Gs1QrCByfWz>cpcGqKh{ zS9aHHhpqwArm(h_gBmjtazPTGy}?I|{T4cJ(g5os_|x1oe%74z zOuAvMA?ZI1_<~=35!={UVtjokoBY~$YwE&qD7K72Hd>;#zF2!*H^54u&n0I^4G~2&Tf|#muVn#!z=TjPsmI+I6jrWt#LuD8yJ@ZYrB3stbL6_eIwk|GV69O(LD{ zXaC4q^_-#ilD*dCk?*v~<+FExop=muYq*<5*r;1qoqO&z{+IX8`)BWUsQj%VWFNfg zB7T=s5jG>v(Tm2SlFTxMeb^lVb7XY{C&GRlTCU$r zfbXinQU9Yp0Vk?>h_px1u_OCH>|ZTk~kYF^zg6%B?-L*8_+` z^v_3~pg(N*`JKE=Q~ezNK$rV?75r7$-{EjflaglLUsx`X_+=b^uE7I6Srut@*zWNh zb+}NkX8;@Jf61fy$noOw*>iM0r8brVEQR)bTqe;8C2VmW=T-4uzRm<&k zQyi}f{;Zlz+BKd~z}nThZ*EVS_imp+YvtT}A{@oNP2L(+s{;}D#z{1<5k)0bw`A_t ziy3~-*%@{vpT$LA7G@-`0S{{2e_9W#S>Jlc_}vq2C!~|2`P+4)KO|D{YhoTEn&{Rp z4CJes`@NeUQ z8e5M3h6YW(-w^x=)Ie}3i}=*L1PqLEAfGg6oKkU^D>R%ar5KyzLe_~G4^uO{VlzoU zv9pnxJ5fpBI7Nu$vI}jpc+f3LqqdztB|s31;i3~C%JP72>e_=R8JJ_D-=>9@qw1;Y zmBfnK0l_fsh=LmW>3GPeaegUhRq@9mxa=jB!9eJ=V|Cr984EcjjhM6owH{R*OXYdU zMcR#MW>uBe-?gTr6wIS1ghDD~foM;wQDJH@#$`zDcpTGGt!I2?Rb1B){8QZo+yxm^ ztc9q}@&)|5Pw&k@#`sm`pl>}QE|<}@@^Jv-;0Ufz=Tzw3^P(5A!l~nHr@6GXwoIb) z>_Z|&^fBKw8e^rHy?py;NT;N%0r(Mh>ka!q?J`Twc^qBX$^ux(+jO-ynjr7 z)n;nF#v7f{!v}~>k$zpF2B3&9Ouc1WdVboa0ivCLIwn)wF)5m;L1yTI#~+kxwNi zB6PJK8b~t0G1XO5wz8KUKhA2Hk9h-<_#AnCoQBg@%10^5jrb(t$8IZ0| zLs_^8y}}kG-pWju$=msv+N8+yo>n!G^uxx)EzfrfmkxVKiqXV!pe2rK*%^C zJmE0{>1tSbS3+@j!p`{5V58 zr8nMjwyqfB>!*pIJ8qC;xCDbdDvXOsM?ylv!33EKHHvBtH!Y_b9e-su!JGvpU?|{b z)EPq)OAbc|(_+7H3 zV+bjkb$L*}D)NtsfR7&Uisua%Bvl2RxGq;g$RmFZsvw>E2w(jY ziF3yR3B9)9U%rGS4w43us~4BiqVpyDP<>YKUhC9qFR9 zn>3L_QVtm}!5X@C0LW#o5izIzF{hZcT$>Tn=(#4!)j!PYbVF*?L?-n)@|8xrb1}{7 zQOcMV9jRwS7~?0|B#?!ex7jop)O<-JN_E2;zobXE@j*>rJIbx`(8f0{mQ7})P{-H6 z)^sqfbfCjM%pIu1*(3c!M3Oi#Ih%V>rLOJ|g<6&(#uLY8A*!R^octQ|tg2etE&Y_@ z+=)b3^ND0}c5(tg4#cOl8~wzlK*MS1o7l6# zyk^-vZUd(UI5 z;`@QzMUTc~h~QSku?=uko0mKU{4l?}C++ZVV{wU1nQ>XF1hNbKla`k%^|$2%{T#%o zN>G2${9yEHL4EkCOq^jlr&2llk!yLuMb@N$W>lD>jW6Gao&Ch3A5>huC^xgoH2C(D z;v;KvPSl)Xp=-q%!Z(zJGD5al_d9HAxTstEYt93-u6%PZY|R&wyjqp$eoJ?Ti&B9Z z!6;AWjx%|A$}%!7w!Y#X=1xqU;H(5~xt=4XClu}T_qHVy}pBX{2e%Up$@g5qn zS)cQc=4sB1HJTeSZsdZRBTxXhm?WM*G^92)91G{teI9LEO zdmP!>rA;hT07#LCut?NLj+zeTUH-EVnPv&Sqb@*R!dl@;a4zucY<^`lL=>)0GpDx= zvX=lSv(hiVfp}F|Ydfu*uQB5~Rj_Eb%*?@IA8eUBx4HbER=1%Hv51Hx*@&Mo%~3G9 z)nb=tCbF&sSvb7DqzOEwR0)X}8NqEYpYqjs8o9=(khRj6})l!M*E{XXjnk^;4q875=5fe{vWLKj&Y>?$lL%v zwblI^9k~6q)bis*RmHZC|DKyy*eeD;&A9r^peg&_X*Q0yID}yQAhU$8BIMF+PtS@+ zYD1Prn`}5pGqG>}MuL0`C$5nlt((NQI_3=pfhdv^l#EpNT#dG}%*SnsG6YrL~=&1KBj4 zSP+0kOKE6VngTw0K}w~GGlVRPWPgJy0O&~UWaz}v_^7AmyCOe-(K_|;3^a|S?P2fOkp@`vq3-w>3fIIv3VD*vN zS=$6dQm%S(vnX9E8%!wE(bs&b<#<#%n$);Ivh3{Cit>(0L0QjAc_fg{x8#ICqAJHb zuu>ifC54PpYKs$`t-H{_M)~>*u~Rr~{}~iNn=1eN_0=X;@0vx0HBBii@-D3_D_~zO zzVC>6UI&CHvz5(ev9;@q3bU4Tg+(+NnHoEO1^W-7%Wiq?YzN7ZEWQf zwVA*8a_B+W)g9I|4=MDe&Si4kbX$|X&vdw%*TN7-H zGpph~gmK0FSQtD6y{S&*wU2-_To>qAfGdSrN*E*B3VLBjYtnYf!xw|wC2c%T#cR{U zaas^Mwi+eL#;9XWt4M7RCF1RG2+#KgsblEE07{~2MVcu*Qa!hw4XRn;@d?Ix09lCgoQGxm4c z@D8U$?VY1-?aOyXb#5)2Rd%uTh*7iwoZ0b+n5KFk`rp0-ONYUneJO+ZhvK7Cf7(u} zts-8lcrKk+L`7Dg0U?=>vnCbcn3u7~H~JXebydB7JgT2PRGmR!-WYr2-I-IgpJ=of z;oTjlwu3MbBd%L8&Cp;@s1DT+*6MHFQcS!P348Xqv?hx{)309IT#3RzJ=H}y6D&o# z3P@O}$mB7OkkJ-eFui&YIS3`ZprR!Xc(%4aswCP*Y~EA{oF+`4Wlju4Kim@Yi4CM8PN#s7>z8)NA__7*m%SNX9IF2rbvlJF|n>J z{*d}+xoI%Ow&xqe+~Hx}{%0wi$eGIlGTDMc`H}gQy9Ov=IZ#o4C;hy5f{9Z$O#Mdf z^D}DPJ3(o!w6c&EDUMlp6y@@#5FnO5ApR6!xmMHX8RGK)wr1; zHZQZ-N?cWy;hWHM;DAHgp&}2U0p+n6;HX%xg>HCtVI4twqbtEJjh0F)YsATKIXuTK3{|O;e`8}OMp=%%?S0t7{%@_i$*}$N!>ZcbontMdt?qF=n3Z!(qu!3`@e;=3& zMcg#(a=<>kLG}swOMi`f|MamX-}Q`z+7V)^c?3I!S27I`V?bpDJJIey_2(Mt>cmF% zN)#Wm`%V6?!d*v5eR-_uX&IS|kP`p4)bs2EraePVKZ>eYCkb5_zI0!9v!GLlb2y{t zvfhnYk*C}hRrfr4?(6G!UyR|^;27AbE7rd1SZ^a=&J*Kc;T;H!G}Ux|4L_)%!MsG7 z-I}eYJ`8eNB02!@KM<$H{IU;&1zx2id8 zCrxbC)U_Oyc%+;+2F+G)7inR(OL`v7fI-&tt^TVrjD3N|l1Qy}crKEeYbDPYELQGp zi!l9%mgC6or=G>V(^I?aU-!PE5AAOr&NvGE{;7)Nho(tJ$DC3vVQ>~P$TEc#R-3f6 zh2PJP{E*tYWk1Eo+K0nTc=?L{YNsI8-N#-QcF|5*gqy}tGsf#w3!`_U3#*yg?yonn znB#YkUTj(v2FqTbalzRk2QMizvI4|5DDWGl+cLDqD3C(9N4;A%hq7R0 zPZ`aWepU>{%(-v^4cJ0-1MgW0^*`MaLzsN|aq#!>GuJv{-`IyO8&FCrH~KR|Fb4A2 z#{;esy+-K6P*U6g;l(9Y+}f;G(IOsr$J=fg^4d}ILRU(!dF=t)EnhuqTaawg#1MhN zz1MjZ=AuT~Qd!!(ftt>-#CKFf|GQ%Z5ckkinIUgwu;c5AtBse9;}da-Y8t5VIa~{= zF@C$An}`qW4O?B?d~TV2RQ_L~z`q_|Qx=w{89lMNV{Nz7$!wsrEGJek*=wR1**Nu0`Zo z&sA4{m;x?EfS|@_fn_LR!#PC|aZ4U!O|C!)@ua+Pf&LSkdZXHt1t*<(aT)ZM)+E=E zZg@3dFc%s#K{sS~W5#Ab?Wq$3c6Vo!(zL*A5Rn@P_8Q~>QZxTKO|XL1iYR<}j&+5l zQ9(B)M=FMEhJxvoiVmBO#4)lJN+2&gATQAu(B28w;i_+JX%`QXiHBNIi`_D4e|aTk z1D{`H7E*jWvb)>;X^J%!Tr3t`+*ZiHh>gFFelAhHj9P+hXz+wPoS%Vb2GW< z5&ih~crL43w&Nx~wKRfVLJI3z>EJ#oZh~8-bDI%=F%zZ1`wLSB7b2>!@LE0w0sT~6 z^^pj%C%24d4~Fl3of?qu^Gg|PXJ2p3Hd>%;?ouv5Z8Nw@ybzS6ZVFnj&;kWg)cg{s znjtU6LHIh`QFK`gz0Id$#eQ@J5t!OvD3mRkIR+Q&{TYkq*%c7m;M?G^mV9>;fcK1x z%g^M>npjX*oi=Tt1)k@xkq}@?p-o3?LPV7uC%YsCq=cz8GkCt4bNqK%{I=k}YHVw* zfH%=@z?&q0G*@%@WM0_ALVY&dVtbZ}wEbI?50Ie0oH$#Ja0n!j97jCR$ zvP;hrKVty2H}&Yri<6*V@CY8R8?|C`i7Q`5$4_q1Y4@`s-p&jJvugZ6JN6jq!Mk9t zVTnq=(!%?2aTXO^xHQ)eMQmn&BVD7e$W!Rkw|6UadmddGwMd^3wlkn98<*q_SqD;J zITVw^4vi%M_|hes9!a1wqQgW<$0)C{Yxvg<{Zq>;7pHRv8O}YM;jV zU`%ENtAkFAJjKp@g5!_9;0ebWi8>z-wMuw!@#u0G6ncmOC!cKtrKA%nPVriLWO1b~ zg1E&d@_q|6Rr32$4;+?T11|S>J?-$eeK-W*Wv7SKg!P9}5^_drYwh{M9Ly3# zZXnVc`;<$#$#4E(+fNfj`=R-&+Rj`*f5naOBV>Nso6YLtOi(XxE=z!XRVjU*iM)(* zIqm?=p$1TXRwI_6;z}p2hX@Yl(>kEiTYzHyecD>W4;6~n{wRm+>pp3$>n2-nGu#(d zkmZ(E_+J1)K)%1Z)g%^~GaXm%Xt>7p0L$2rhTajx5{R){5W%?c1ml7Zjw?`vRQomk zb{a5EU(rhB>RR@c4D5;yppyNr@JlapY5i+jfMBVz3p(s*AIFv|l^CBR2B8HXPRw~P z;>~XVQP=nzRP5y`O6+H@tCj(caBJ5UltCp&&ZW(|tRR{%frQM}cIR^O2}E=fS9gK6 zDdU7y0%l)arqjxgf~IpGGMlp|8eFgRfjde9BUdJc?Azsd;Il3z+;P^qWxz(#R(D`n zlUzBnIJs7iEKaT%x6M7WThS@pinzC^Lf$;s5EUKI{DYh6AaizOv6F$rq+q%0WtE<& z+bVrx#{Lrd?`R1deVOap6PM>s57BdHD{&LMdfNfWT(8+Dyw+{uwFVx<#Vd};!Nn_q zv^uH?P1bBkT1r@336>1b>VjRG#)xA|YH`3aryYv(f)>PC^W#xis=&vU-DA!Do%n>;WvT$ zM9$f^c)5`PNWOycV_GUGq&Byei0STeX(+~S!4e&YCh~gXag#_HqFlf0zX$rZf|tjG z3bf|4`-|)k>cLrh!^NmytjXySnzD_zs1KvYT{lzMq{1cnOJeSsj?gM_r!dS=98MFe++C0ie2Xo13}5$_*5lfO#sr`NbxcB3gZEX(_(V!i4@T9D zN0GDR$?EEQM7gbQ>rvl|x0V}=-LPq_EW0Xg`%p4S-pzbD?vcMNH#N0LvgAeMb*A{2XyquK@NXfP4i~`EexQ zXGF5bi9FYvO}Fb_J|p4kh?EiOVBC@XTNfh)C(Yz)48BwI?t<_lu^{HQ2tpCk#BL$- z6_zH6RE0w!rUD!`Nx?{gNdEj&4lQ5%ZgHF5y`{xfBH1vCsLahLwEqp7sKwoP4l^eA zUc@*hnX=(@r(%hmgU@ZnH;sI%MiaP7l@chd;GkbXr8dk`5bL~ZVSxLth$`I;qZhQ< z{e5yJrc_`7$`xB64+`XGhHH8n`OBA3D5LY9mOMcnMCegL{LR8h)9<#9AWb+Q24)w~ zvx4Hl4H`6YAFAky-0P;wp=f4sq0cu5N3jtBp-HFhj$_;p?zP}>dm-+xrk{7tIDCa# z#RJAw8m%53uGf=CE5Xi?kc7k(u`u=4sRzu8oArX$jm@}$OQ&eZA;e*2wxqhmL+b#H*ay)VE?Bqqx(WyjeR_08lz0$= zylP={t}d1S2lg2s3~|K~2csgmM2(?me3%^gkeYH0gLi5-*D%nxC=NQc32xSvhl3zO z=t*UbH6d=!n^r)VSCR=%!vu2F>Cwm<3bf5V(*~lCkvH~cUw8VFRdVNGIV5s4p4glV zyfz%~-JYxLrey8rdOd}SkUPP$c6+TJn}Ny2A)@2#9?^mJles1v9R=wmL~0 z6b%hvQoh6{^Kbw-!J>s1y|=XC2up^c1JDA-ns22Gfcw~NGv~v|6q~;*i;!^AbCHYl zyitR=QyTta%0=XPt1nMJEzf|XC)Q`0aRxkj3L|z87?+nVuDTIpIaWAZsx5%f#vVvogu*DA?%uq=|gWkG%*m_ekez&M{bdg}%-k7q_i_N-|C)`a&|VS;b5 zoWc1Gnm1Nor^c_JuM@KN`t6|4F8TbL<0eW7iNFG(W4PNjLho{%A-eH!T(Q>GYrtt7 zrW>|D=t!s{w^xBz+jas)ph+zQeP^+)9WFx^=#~P#bW4xS(1;}E#Z}hqJ2a-y_Zw5_ zEn|ueuXR%R=^|V^saT!sriqv(mZTT4@1vNDbH8dmpV8Cb8pc~|e)cZk)m}&_p|yP< zTn-1*xAE$L4(&@3goU;ql+IrO#%99@RaxSK??Rpu+`Z(!VUIz|(6d@@((obn@P&Iz z`m8Vmhf5RE*Q}VFn`vj+#!;Dc=W@t@_glnJGuE{j9D5d=a7=JxsUo4e zoe2w1B=DUn&+7j6Q zYhO0_&mZH2pWA%YV+~4*mC|hx0``5Z4u9odV9*$abRJNksdwR}H zPwVa+f^e1jXbAbEOay0g-wo8r=7LLHUoMA*T$CHW2A8(rzFq6n4$VsU3^{acblG;( z6LmyzON06t#29ML9U|)YdBH*I$rQiqAvQ> z_&v~Vh?w8|7**6XVdyXT`yJyH!@DkUYvzrm1bmAw_`>}Wu#5esgZR0+XD5YYI`2A) zcfgQEABc4X$&6##zK1YpWD`=5_f#e=LH?byRq**aYbTO0K`H{u!NHkFaw7*q%wMnc z`MI^FLMgchRnL81aFbbDjQ9@D2ga~A^FhLFV#)@;HeQ%8n6XbmXEW|i=F4>!JFp4c za`Cn_to6V$ug2@X>yK^u#I0Zve$(}kukoE+%F>Mx+DqvkdP3C@`MBX&Zx@B|V2e{& zuWvybI(DhyR)lfni;ei52}XM{K>OXgG9Dakk>-7bA(A1%WvW>`Hyk85fJ!C8BOY$UPv71gqXIAm^5Fa$$#_b;jnnP}cahOI0+ zWc{e*xePA-h?*^z6t}9X$5OsAWPA5YL)E&=aBr`B3u3ptpVqV#nw&Prsv(U0TrL$8 zm+R-)?s;mZ)13>kJ8VD@ZTq%hy5Gc`9mISz2rxKzU#h!?TXyEr7n>j)@eQ{2qRuE! z^V7pK@kS3!e)v*Dn8YD2q&2ZuxxfOC=tY&D8g+t*v=kfqoT;}}dIzymGJyH;K?eKb zfwJ2JUK&itC3kr-nXjfgc|lnAlY3lbpAuW~tJUH{S7(U0$LinYj-_8eBhquy4=dV< z$Oc5k@m10GwsFe(@wESp7t{HViEHY>fJSJbOkmHV(7p)y z#}&J^Z^Tr$Rg;0Nf3v3DR!tkDOTA|{P0tZ67Td6Yqz0i_r5M2{-$JQO1llcl3Zpf= zVRp8(m(lS+u+=3d3%{DEozX60!5_oAsKUKwIbS_<48yW2Zks`5X|QC*hmW_(B$a59 z8m~lru$+97Pxpy>z=hX?B=Psyv(OyoWC<4^;To}V)Z=E6W?~B3-AuPpjq8t%Jv_0q zCel?4sI`MAn=%2(-u6vEOm;g$I+5uJpbbMi;ThqfA8euIZM7NoL}Ivyk$rMM`%1hv zhe~0twHdCOe4gIjWL1$|0*^sykvx_Vp=M2!r0%t8FoEP4*N|Iv$L9%zhZ4UY z?pS@t=?6YVxUPN~v+VFbMGfD^=WdY`v!b4Fc|SS*4cigWkpH}lmcz1S#MTN!-U3j0Yp!!PJn;y~zNWPfcYz*`xviux*_nP6ft!Wo)2 zM76_@h7kl8mq_H#CcIa*0N{lowj`!Vd$^)2>scrX!sF%I;k#;8$hy^5wfC(av?Oij z(;1{i1Gg#z3H`USx0Bmsaisyyq2Jr1GyW#MEKl)>%+RPjBBp>^d9+@C5MBTq5pRC z7tJYWevr*YvEdt(p!KVYKBs<}Q2yx;Vm0wym0rPG<#w*sWS-S<>wCg!Y|^h#2hm`e zk_l9`hU5`+)FlK(xR;>Xl4{AAjN5>i#y+VSum=~brV$$n#7dRg_?{6I8b~92mUMhb|_WTD!aVor+TU9bFLY8ByeG2_tk{P zNdvxJg8p01vz#aJfFp~?>W6y_;J&Rml+9q4&1-?wv3X9qy%@+%#Xnap^i2j$MbooU z-*YE8()*0|dre4?m^b$NP}!;}XXRv7^V1She9f#dokuvGok6N{UK66H1+26U%WQvb zdGpE>XJ7366>}#m$#RN$Z$nr>U!aI;E}w7dEX z${W34W<<@)a;X;7M82d+mqv^7s?sz1A;`%;6Qq>&RR$)~w@{Qf71cvE6l$3f4kt|V zDQ{dO1RLGJ^lid%U`Rm`@obnt|k=&F>F<;SqL{@YA6nIJ@dL;b@_7lIgjG69&!pV;u9i{bk@D>Z|OHfEE z9iN&f+ss*F9s(neAKS)L%~+3{{lU&)UndRXT!n^KO&Kg9v#Z0rHW!t|{g&v81GC;I zenq&HlEtsM<7>be6{jQq@2AuYBJ}rD9b9h$1ykK^O(113Xq)OZ9C!>%i2tTK`YqbA zTzaih0J>ajncmgcmr2jY`ttDb@FC?5h~;js`byB&`>%&DDU<)ad_lXRD1j!gn#EjQ zl+#-UdO=+gUQpO^;L|fD=U9_B^f#MMaYCuAqGiT=O{WB5w31L4e}|tVb@ipX`bu5> zLtXt-UHwa4T~_64sfz5H5DCu`Va01TB@{VV(?${bJ;~%K<%>(| z3=JwTR5@2m1Xob2xysaq$}TP{burE9f2rtklH=Y`$k2E{O=pGD3ze&n7gN53ME$9% zr6SB)H4{~>E^ZZ}wrsIfglLHNG3MC?)jrpku=-lyWC5`uRU4|KTs0_Z zsSZnpIN}7CwC6Yi^K4#TQYFQT|KL2Lsaep3-YRn%D=k7T+^#Y$Z>SOp$e}Lg<>cd^ zs}g70jHZN!1ZW}1uNd?QU{zM+3%>9*uO>_}<;x`jsKOnXCG%Q1hwBM7LRkc$vwV&L z&8Y2zSvCOxRyw~d%-mn9%lYl{iXbPu)Bt47i?1P!stKs`x~BbgAceRk`a>1c=~&Kh zFH8C5??5c8`X z=oG{@<}+_BkM{ah=KA}+AJ{I8=aqX|u)K{%SJyXX#m9L?1JSgXFpjxeRrBy_-$`jA zEpMYBi`3jbZGWzGb^DG%hNGa3JkQ>}ty@4NBHrVA5QI@?E9UZVF3D*<_wg7l*@R-KD>I@e|JrP zk6*ouH120%ucG!XczyTQ+;?GKB=gV~`?}+ZiRSms`g901KbYDTj+gs9P z@|8)L)u)2twz}K+yi`iR!$H}-Xh;gTz=yck0SDxo(`ha%(D`6i@(dVWyjvNAC=vZ0 zUg-tF3re}RO7Z9SL=CZpHUSRew7_BA)+sK{W$Yum+5jnaU)&Ms&-8o&$)ntK1s7>| zNifSoIi&1)0WS=7I)QWWz#bJl)Sx3{2SI?)dC;Th#WOk)X6Y7!Dv2@_bQh$lY5Jsr ze14hcVw8tI%m_n4={=WWU8l405|`^3ON>!5*3os0aL?E9@WIRY+RAHdc1OP!(Glg& z#t}Y-Cmfv`9K&|WCzlf6&#Lc7T*u1RV58tt*{S`)R2P0^TR^l! zPZTf9jvY)GrPqdS1q*^pE#Q)a3yAcYsjEo%n#V#yhF*&~4E&P^>TaV>&ti2|rl-a} ziO`?DpoAU;S_e>LVbc$s@^Ww%+yGy;$$JQcQzN8i5nULl0qJ1^D*(mxSmPHTu)Qvu z)v+t7eUlI@%p<{2Ig*VMcSFeHtP>Fkd!|4NZZrp?H7;OU$XB|V&xJFyj{61sqd?^s z6{-HKGS1FLJjd&jy@=^2=YV36b|8Wbu`d|!n>kT6SLJ-lx4#xqdm2pij(|zKY^}L- z?-RE^P5ez-jQ00SVsK~^6R2UfU2KQao!yz-gYL1?d1-MFJ@sLeb2NNiwy?>$Sz;S? z$os$9<2Oj!S`nFbxhDo|dR@|3v^>=5gL1o8<p$=49M_I)ddEWTN}Z`hR0N-}tsS~o_uZvt6`Ue?ss3d0)MYNg4|C?EgGmZFkA zP&2-velvI4WXZ>c{=}t#!nS`p&;z_ZV4I5IDLHXk9EYXyZ|Ow|XO){W zs^T*a3mKqW_9*bL?fB@pKZnkuj}Ye!f>MMyuMY|9YTI^_Cnj1K0YpMGsZk%`4U}44k@9B2g;bN@J5+k%Ggyf`R3SGB5ZJ zn*e2fDz{_yG_nc!$9Qz+avMBcUFQpH8*NP|DmI;{IO?|0C4PuITfN=!y~Uec5O1zy zdP;}dyi~Vka8!K^ASqA#b-TM!CAYte8Aj-fM7#J(S2@#tG!KPET<%Py5 zx0*-0N}E=cLXI}0J4p{tbTS`>DagR`+EIr43uVxl9fD}?`&`*lTTPTE+RC5PW(c3AXu}I z363l#{^!q1{f^8y`HY|SdaDpJLl;~JLe0S0d$Mw*YL;N<0#lVcG>n})`sZ%DM-qVWqEhGtQ8JL`wa{hN<#FFgg~G<|^aQ`(((vA&{QCa!+mpww5mNfnQzLdJKrR&=EcX07 z*UKwQY_>f-U?1mhjE7<^yUgVDP_{#C2yDF)EG@<{W%!Px`?8g77}f$kQ!l&vy{BY8 zI!fka8PF<^gFRlFZI_!(!j{nNb-^1QVF^R=Hg<4sB-@Y=Gr+<(wOc4Nh3pou(_gWs zw9U)mc~fOYoue=Ofv!gtd+tSb`ePNSr@*RJ;ONVLh)$IroKDJi zasMdp&p1HFe7$Bq^G<|^*bkG8YW?aT2^{mqmU<*fUnf~7>Fa+blTOk<4wLErek&-LIS9ud*_q7;k&E8IoGfpj;*%?9_RM$44uj}7;%KCg<01j&ntaNQyb z=s9}1L+D}RT)ba_{cIV0rnt^lz=Lw!+d=|K-*Rtnfm^a;514rfm}UA5GM+lkrNV&56Rv@5H+ zmANOX6bNHXwB&x7l)>Tfo#{BdFw40XUNRb-{=CvVCdhtumITyONVGlaaPM?zEwW|Q zXTt}37Q{gpS$%&I%1=&%aOXd@Xu`;Zh2eMt5+KGyz^`Q_R+?IgDMq2Dx0H}i5U;Uf zGbc7TfTyEt;B&iylKOAHGE`dBPC$c6yFUYFcb}>$Si8hRmk{NGnivT_#jveQYMAf+4J<>?Qt9|Mh=F)710twvC-BaY&*$}g{)@nlQ{o3Fc|4Mki3iwSL= zk6(7zG`lEQwO%d% zttL%bgp4kS6S<)m(G6_lCP@`3P3&NIpx9p!0tt@T?+fDHl=|Pk6x2TwecBZ?Nv7~hZ&l0#AZv*Tv9hvFxcpoH# zeaPkH<@$h`Z6q;%=cvY&6(PI@`_FVDUx8!^%HIWF`VUI`!T0Z8zZ!}VJD=S~Wysb1 z-tLY6nr|u&&_x*5DZm@X5320?L2)FO{7h^H`Is-Qe^2!Ud+Y{i@*nl?QY4Yx@LZ>kOV7wmqphK%P9=6dQq>z_Ab) z5=2Ddx43mr^=};@VDC`Ke}_honx}&Y53UC^wfRWkmxFd)W- zHF3hFov789ojZ@bYBkslLMZ*QMFEA!yWB``H~5Fr8QLfxcx7-ph!L!cva-5)Zd1=F z^+V~5fulG4aaaOUByjY1G_=GMcW=sAebl$f7lSYMZR(qn2&a8Y*(6e$OR#6f=!7b! zkJ95ZeOVgzWVEaE2GUQVB_uqt6 zp$-bZDZfcS1f(uaho{+?=W5n#X3m1mQ{~?9Ny1jq%)Tk@lmdn2fC@}%T;}!$KyX<+ zx43C-e_wt5m3clm;CSco?cjO@Hw8DZdM)8PQ-<&82+PvrI6|u+s zFc}0^4|#jv=XuwtZl{EsvBa_0p%uAzGTz&p<$Mt!2gDWIhCKZQ8A;U8fW-BQ9#4Pm944I0?K{KmMRmf3uBwWoxFChaVfjM8YqG`i z8z!0j`=j(w#APTccMTjHn*bW4H4kuZ^VXOi9$A57^(N1^g)}^rW_)L;mZVUI+DNKR z5{jv2!LXxhz0UKvS1800H_Y(Y>$a$Cnmaw-u9L8q1)bWvPQFU7Uch5g7`5kV6TXk~ zTqHnNkKLJS>d9%ApSjD~e;*HMLlu`WN;aX|*@*wtg-Yl09RCRMvtvt6a`Fb%)%lqO z;g^b9pVs))WOP2qXB+6Xe`{EiKF`%GSCc%{bJ1Xoy$}QAGFR8R6ZcG=&VZi!^m^7# zB;Qu=UG+`*v|PO580F!_yF_#7gN!#awn^IgP%bb{^>!*FlUxMct5Cqb>Je~n)gUtN z6|NhI`G(#VQKlTOY%qvj)jKPRs7fRz&H5lP?HGu@mKK;m@w@jgUvL7K)-HyU+@5E{ z2H86*5X&x2C%Cr|tCANhJ(4i{Toi^YwNtg#EmN7W2;4a#)$o@8`QF~(&D+=CzCC&O z4s3pHWwmhFKNmfIW+-lmCFz(+OaMco85TL6<#QG>8lC^#n;Ue-N#|V|`RXCfgkHlG zp>>UxdAiL1#^fvZpQM9F_4Va9AzAb2A*XmB_8HYUoaI&B@MMhY@Fng}l+QD^)3Z+T z(5xuT^MlTI%`!pNB%$p5O}s7JibWn$pZ2OWSQFB84qm@`|NQl{a);1EtrN<%5_O&9`d z<|1c~;&$%MzOB_e8+?r)N3C~6JqzR*7a{euWuyM#9)s^&e3gieS_CyB%}Aa$%V7hQ2ucDp)PRVO&r?BZh%j@3s=}z_8pi7 zcB(`r>2W z4AkId`56|N_25js+k!4!Wlo8Ihn%E-H4r%^Uj@*lpCI<6{f49ALB4(QfcB#A!+6+~ zKY=!Rn$YzmOkdE#o4|%tG8RJHZ4$mowqeqteMI?nyE4bKt|K0 z0a?*fb#rr*+pBbL6<2e5FUo3>&GXNC%4tNZ$@hF{&r&*4=W2?LVh&%aoDXl4(y1Y> zqNzQ~$9zIh<3z6FTK0uoQI!qx9ZEb#Jsvjy1J9cxrEOjsKNf^i*`-YZ$t`_hF zuwP}hbvM=J1{41(_eV7dP4U&}@i4fvVV+r(N|OU+_hZ^WZ}P}qfjaUte^x-?rX0EcBkW zzxXbEMS;;Vf<`-?>@G;*h7NJK%0KD(?>!y=>QXpv3cEe%s z?r*nUDthLcecT@FO*@er6*27-n&Yvl6&|)kVYy<@;0pDZnM0@>A}J9k{=&Upr-dl= zDEf(a+LOF>HQy5?ZbG%;=e*4`Y@4D;Aos0gj^E(Xhh{V!753gzWlo!*sh@M}y0Bdv z?Ckr}5st$k>p<1n5!L-E1z1RLEwSw#gBe;3Z%e3D@0->;;3!#ml%F=~cV?yLS%VeptZy4O@ zkqTr~Ab0-VDDgZWuS|*OD6ygv6IWuEQhGE`;Q))EOi>2e&^L!v>uUTmPoC$jABe|= zG-m5gY!%6&GPm9+182!xIVekJ>ME<>+a*e*mc7024TB}qX&I}*S$IJHl6!61$Wj82 zwB;S*CUuu@d2NCnM<|rm9h;0$5&t`wvwiy8n0ULv=K4M4RFCvm|6yg;PQh_-6gv`u zND9?4>HW6Fs;~@|{o~K&n7c3`K+W550=gV=VGsz8EFm{eenh=N(6~U|xV+rsy{=8=p3Qu?9WlTbFrm_zaWJ#I%>dL*_ z&lWBv{O*!cB~IZ9s#LeOa&?aKGkTJY3)d?H+WsZ`Mv3i>_i8x_G=2`k<9=(axcd3Vo*44oA-CKgc zpMk7SV#U87h!XnF!{Ioh5}ffkRxkJVUb3&o@!sAsWbHw8gThX75IOu~oJ2m3$#5VA5pLE}&SiRZXdqchdj>9~? z+S_}Deq+?1&7eNZsMSwx;=qnMm=I|ry?28aGAs_K?0f0um=>}L$?9p?(!RBUz z&1lhY!VPwAHrOi0WvvTwh60pa5mLZga1gj{b~(O`KE=tWD0Cm8e&4jfb+-k5?J-6D zz30HyJ?V14vKbnYO2hz6v6as4R$7^@H0$3=tJbLPR-#F{kgfEfwUutv1GAMT>c(!R zC817AxuHf0{Sj_$i!pu+&gw0{S0X-l^ZHfxs&&iLkCp)k=U}}Y{Ur{wqIS|MI3-Z= zwg4C5l}-=O61Ye-SR^Z{FtpV-fjw1|$)4T~eClOgz6Ajyp-kF0J$X4KD+1ZFWi{8> zUkz{9*XD+$j3~nF(Ur4q+TYJuC^$L2!Ub*6znZ&VSH4IcSJCRUJ~L$qr`Y1cwuE_s zU$oZ(%mX-K`YY1x|I%`BSK)k5jdokC7gtt=4E)AEqO}++)TgVn^qTE#Rr^>?cQX}) zIF!mPPV(|!c9=1a1srQ?c)`s(C!J93p$tk9|ie~JIzBS)*BJRS*-Ptuc?}l_3ia9|0+fHF0 zJfg33=v!{opZ0_`_)_4NZ?5E7HQb0+y~TP{UG!?1x1I~7^juv+Wfqy)z(mnV5W66V zAZjyocaMdUAH)g9&5sC-m-@GIkKRParj zW=hSqE4)373eHYEy3%TtKiFC(qs%uSwH(2%Rn(|w4lNJazrj5A?_QyH+cooqR%>E9 z@r4^7FAhv1LR|hF=8@qxm;W!FSo$dx2ER~BMTmrlZ#_+JfFt#eAo)Z zVdl>$9d-gc)lo6xXkX5Alo5*#ZW}T&-lK&%zIEmCW#*1pb)r#9h# z-b|oO4lVu7LRXK{l4ieRFvGp&<`x05MDu>pq1#s3IzLK*UUaPVr-J6IKiM=0qvBmg zE3awgO|oBl9lOL+eTMVVt&T;I(uQ@i?ikB3^gM`sI!hP%$p3!pt?CUR)<8}32vfuKcCTjPS}DCKVLCp6?KK$?jqs#_Vik9l&2G}o7c3I2%;;e}+p)EO^b#=Q>a<5C~`UdXEON(h+iL8Ia;-PJ4C z)vk)U5~<$nqWcz-3~O;czJPzhRILCZ9%dv~+;YU2K|SP$ar`{IRXWFD65jHmBmJg> z2OU7SmefQx)_q&Lz9H3saCY@`>Gd;;JF9oS?oXer1~?bXkfynJI*ugvl>884s;<=q zw)6Fqi~ao@{b`$UsxB3xLoTD37b1&imJe%&|Dwz=dOD}S%)ec!6B0T~$c!1(vPHZK znCfOE+k^5ceHJK9cD10ytWAUXJ3xhQYEQhnP{vHNuf!R2%g$`$112`#Do=wAcWQK2pFzak$;jQ1F zIK|0C2f^8$uGhP7X&Ekuld%?sXMg||*?F2w8v*uE0uJ!ahDl~ZB-Ju9qiN!=?K+(E zONqyX3SQB6q8#X?HdmC!c2}6-OoAZ%O619eEZ%5?K`ae#Gik<7|28*g4rHQn?(nH2 zH%z(Fsz^M8DMCgW?HSzK6%;;G&z|X;)h|}F%=+YO&FfHQ!q{l?A>Jb{1jjYE%8oF$ z2G};yQgBu^ufhW{a#4FlD&xfzZmVvI&(JQK6Bdh6S1Cc*Z)QLVXNQBwn zhsd_sG^TMG30d2SPD65pcUnIhFDs?hrt$DC0(_`dp)Lybwoo4i###`OO|&`;&$66a zK_*#o>nYR+`j&w(MJBTOKPOLm0j)tdlSwvez-iA+q0F9=7d;i<-Nhq zN>4GVW0{$-J2?4M`Qf~87OrAA^<1Ub1{2H#<4O_cNaFM&+Oq8+#|B*RO;aTM-812* zb#48kmG^u!OF!L8fP$^T*Dea&D*RysRi~YnCVoz~?8@%Tr)LrGzveE=41owC>}Y$W zw!+AAgyH7AkbKu3#J-JRX@*jJH2mqniU&ho5orsX>)OCV(Ju~tiMtlWE7L)INw8`<>VVzt>Me<`f zr!mJR#1mqKiCk!?h+Xy{3SB}{IFExDAs6w`tZ>-C)I?`ye_x42)=o``Vd_`B+MDUb zZF?+lkv2WW5shGe+hwpz%fWzz+0tq1U9gEyRZvL86ZsWuFB?~+P6ahcJ5^fOAcUxL z&ZhTd(xFY;B~KOBkA7ikpV!Z2>Ra)(Jsno;=Kvm1qBLkb>S7^pz^@8ta5O1uCVTS2 zcd?v#BeC0|lE4+9*uZaHyAKvIO5cB{!;Hl=)!;*IGSObnVVTT;R}|^?%65B#n@9v= zUR(e+@dbUZZ*&vH9q>l>U~|%+2HTQR;i=_A!*l@ z%m+m*ZFk0U-ulM=?tC}d^{Gktr{BEQ*ZJU2d)qZgplJX4vx53#y1%unR{i;iWnFg6 zvBcrgd-+ehNV{82XtD5N6PHA<=#%4VicsMivrz+0iXBw^tg46~Emc<6_8EmuHa6tb z&z}9aPVtPh{XE7R+t1ZX+cE<8^LC_rW@XK!d-Jv$H0B`jP;B;;PM4^hWADsar5sp<8|(Nyka#tdU5Hsz`lJB?A75rL(D5BsM8CmuGztBftVno z)3-pdhU;jRt*FFDj<{N(ki}1N_j9RL@E?yRhYq@Q?^yfAG1p;TyTS&#>778DZpZv| zUEXMS$EFp7A4Pt>elOwpZ@cmYSiC}$N)9)FX4Y`S;9fd%oi+eh+W?hqwCxU{%DzMq zXWhOI$#p?Tb|av$0G)G45kzhop0L2{w<0%-$-=omO*@ROtb`qUm}`-XwktORE5w2q zRCV_X^)YB5whFCa^X5v}E^V|OoO$-*htAi5OD>CvLfFrK%IbIRImO{NQl|$R)IIRK zcnspYmmV?BYnY0j6aE6mW13T}wR;^6IEBmLFaO^cGgHcpu^@6L4{S%|jZA{Q!I*{1 z#KV78GYrO(2P19AuErf{D@nN1TfPKI8^k|SGiVRxsMzgdeRo=y61i_;xCvAC4Bw@N z%O2vpv##^LD^-7rr)V?A60`RD5SRRnKQ|y2_psmqtJW2{u>f$Q{gV}?&PJ{&n&n>J zQ`H0~57`pZEFST1Kdc1sPVVmCb4Xd;@{;FqqC6kO=xzf0edgx~?=PB<}?(QBfGocda zsS*>zAH^2EEn^!%W!WY?Kz;v*`)U@Qg%W?q=1!eB!u$mM}p9ElcA$a6Ukn>Id626wY+`m?3_E>-iNf=wZ^}ysryiekd*O^77z6Q z&u0ZK?bkHYq3h%zbK%v@(?)~(UegK-1-%~L8=NZ2rAe~1usDVGa|88 zzyc!IQ8k^Cr2b8g;DBDKt>6SQ$~+Rz-wIus(`n3nZ~s#vSNHQH>)?~jk32^=o#Lj? z_|O2)uH4qrye=s9jK}NTZtNX|*1aPUXRbv`1gl%GDPi~6wre;f@t%UC3J3q75idL4 zp{OMUS+kAt^!_5>L-cpUUM3FmUC&2L;Rrt9Md8d+EhC__HxCD$*f(RD;Z9xPyZhZv zW?iY>6ZR54XKesH*~FfrQw-9;IA7v=)p_1R4b}Vx;KAIR z)nL9!oyXgyogi1~0~d7WDR82V$m&7BOwy?N&I3AspE8QGMVEHWPV!-pr}4|?+r2CB zSKY|Po%$W3NwoJ9a7@>RuAH&ip4YXd(f1u>-&u+VOH z{)G<;4Yf71cnF%>H-0(@G5;$@Nrx7yqNa_2 z3qOiz+OQFrFX4CFMBKIT+@aqs*12&%t|TGgP@NKhZUM!`hXI2XYTtgw%=>V!-uxM{ zd#goN&FCN~7Wj9RU%}xNs?dNYS5)f!X>Zcxcyu?q3&TNtv>wd|qcZ9ZqS0owIlfS@ z=QyW(P(cUaDfSe0d~BxLqrq# zI=^`N@jA?Vf$orWC+L+bxNx^%Pll2puJ3s($KH zjD>%s$sg%|5K?ZT{z!c^#*O+pWs@U-*fO9okb$e22Iv(OS`92LV7W!j2N?{IXvjS1 z;|7YaVEx{lBN)gFZoz`}0?BxRFpTCB@|w|lfpp85y@KL9*ELc3AEk$#Xv)%Mhnvgb zznvJtXtoK`%dpBCQ`vw5Z-FaoxMoHR?f`2>Uk#MAv_pf%5YZY=7--A}2bhPcjVvs~ zCP>SA@FdEXK@E0*#;qY@kZBqy9%~w>Z;9UiKB^ytL;62Bc>H8^oQ!)BkwPRU5&j>< z0lf~!4~QzR59slL9uInJT_$<_k8AA53*rXmvOo-5id4@%kU@c>P5*8V-M_ zx(B1N-`0cwaa*s`Bp9ZLpPnB6b~YZ4Mu(%((aGVLXOd)h$GamvLR2Yz@K=Z@jb_aI z*L*C*(ZKPuuO%3?`X)`hBO>_yu`TpfN;~YC`Pk9%AbN7F-nFxjM#o+W6%2oWGJfy` zoAVQjKHh!t>iOG$|NL?XFM3ao3-ybnj}VIPd;L5-R^Rbz)~MDRF5K8PFyrt6stolj z{U7Yl7X2U&9uooCzu?Cwc*Iht9|yq!{YbB_@nRn@zBoO>^Qhz>U-I*UpC9p$gJ7e6 zqps}Jpv@NRi^UpMt*MGN<%s%pD1CkJ>owKB{z7v7i$4N}gU!DGJMHH5h>!SJ%2qh& z9AXvIIqykq|7_gM=7X=(__x$iU2|}js>{sa*OZvv#)b5vZh7G_wjFD)a>RxvJ{Qyw zV2La%&^CJut=Ug(Hkqa6v-}5=!(Nf3s?)ckoiG*;v5out-=%CDfOeLQ;WKZE4%f+t zbT}Ck`^tYC3oE3>UXMm^#t#Nj`1m;JO?rB1MKo^(!sFZ|ZUC9K&t z;JRVOQyX|Nq7DgVa?Lq#92pxSZ!xJg;a324-ix z$TQ-{f68x&wae?Ts`)pREAD>VpHNHsDi)P!JRBnDm+Fcn;iW_kzzpzx4e^VHFhboE zmn~8$>t~{uj|QhuG!-!;QEVXBBNnT{uh0*4Fig}^nf#nL+R&VVK%Lv^VYdR9owk`1H=Ha7Rl|abCp5>$D#sXxmB3iHS^p3xw>H5Zd{>6L#-g^!|CO1AgQ$#5rlO!Fj zddWxCsC+N+sm}>KFjgEnY!4w8;0F@!*|lnk?Vh8zdqhi34vcQ5MT)--vJ(r6p7An9(cz3>2@t|*XL zGt@yKYDLo0yjE4MfGtofL|UoUvL@#8AM4*&hgBILs~LW-4%bME*S~*ptfrLW4)9Uk zBmS-^*VUAt^^53OO(>rt?p%#Fqp@)F{?BNzcdV{a`zTzGqCH{*R{U#t^k6imcb7HC zrhY)L)D_-P^P?kljLn&j)deMvj)uPSQncDUH+(%pCHo>&5MvhgI>hwodI5wvtVlP8A5zLRs*g zI9CRGP`-J3^VFo=;Vv2W8$`Rzr6+LMJRQGgHgoWf&{_~RsAzVWxBPjY8_tpq zlARWuxk{w9G}%bcn_6+2^W+&kb4-|zprJY;>85IDAlCeCD^IbNr>Yn2Ol8fU%(LQ( zB-VM|Z*k8YKPSg+BX{oCOUlK)W>)&f{j>m=ZaS7)`91@!sd1cN&#R0?dXD7r`^jhGNAJTdkF{`Qc&T`J4>%u~?jY;C+4inCcql{^8u2dZ{Hq$v*f3;wDb_eo|B!f|M5a^ru;Gj?KurvJR4X)@JX50HML3xUCve>x(m=FQVm?S0h zjZo%g-+8%u4zHiVBi!{mi`&1Mu9v~s7+REefOXE$SfUQJ;G{o&Tv(gwDeR@|;dI=J zU^z3_HCg0lMIX!!fBE5-lRVLAY8L=GIZu`W;uOcGe&iL9i8GUlMR{s%L#E%VEg>hif(@M?%f-OJissh9dH zU7iy8W5v^-I1IRnW&)H)YuOkUTKx;hZ$1VJ5|#Vt*NVEFOd_KZMhN?Bk|)JD#pq>_ zd@Y7F*A~#ttRpO-<3G|>>gR1_g1`DAM9)`_{3Ir%xrnMK{maLd-2s<02CJm1hnM4U z#aI=qJ~s8PKZtS#X%O~ks|8}5K~IbvON^shxh;4S@g7`xd+>w^@1Wz-#Y3Vit-m;P zYmpP!44|hIK^S6DoXU7~ z`XMr~2lUMXd@5jtG8XZwalpK(F+STLZ^pBj23oQuxqV7}?JFh)pxL=QRD@VJXM*{_ z$R1EU(f-AS68IQJI&AEti zKdX&?2A&Lb8pOo_|KmqMq6}4POCU%f^CV95c3$&+odM_6a^lo#FKRwv3?gS2E<=(J z-ljmSd&8k*N~bQedrSj_b5J(=F9Ys}!Sh3G-vr2Zc?NO|L|z&=7AK=886y<&tQS^} z%-~d|Qb}&@z`|UREfc_TdI&FlT_8BC-L=$GgDvVd?t*`u%MDc!FE@-gyR&F+KXDD#|eE5xrkj?`e+Wdc(2C%9_NIX(FusLm$F%cI1ATLbD@z zV68Q6=UAA61=uvxQAt`3mu>?v&p_+JwDZW6r>%>k{0&q1t0{fPc5V}6CEBb+Su5ap z_hi#=vunT;qjpL!=u6!QTTPrG?l_^04mcuQrlk)>S%kpUVn1EQ>E&@emU|) z+96~0ju|(@Pj#TZTkrDm#*IKE#^GDt(x`9@bbD)X?B>ba8orB_=H58yyoNFEH-@q5 z9I>J?o2f7j>-9~&akm6aPTLJbhtw317Ht8E$d+_&nPk$rSpqeb>7U|olf*u{Z-uUg z7H5Cv_k5{lojsrZWtj>xjxYV$Y148VLg2BK)jbw!(Xhw%P{ub~+ejwS#Yxs{8R`eU z&M^|fy&Etz*^1ii7;7Ac9pke`MG2YY(2kyDm(;g9QCOLUV~vHQv^sA=yGrIY@qD4c zxGma{qkgnD4+EVeqgv|54dlrQakw^QM^2n;F3!5d^AOR`$7YrCvp7@Ej6mW-j%fP~ zaM_BM-qV_76vHXZST5nQnI|s!LXy>$tIdCXCDKfRh54?6!f8sXw<#=O!z`DjaeK!rGRGy1}r6f)W1ihNr#7XiHFLIrz_M-CiZcK|ItD0cX74s7yq|@1;-J zEmPVnsSKvX-OvNE#g^&0Y7TL51*i;t%k`P@-rv^)9xUcdBBjzE>y5nFOLZe?rIUnc z_XZ~3U>CEY$7))Oo1CGc`UJn*^h@v^BsxAcoUXPH%N_6QuGwW`acD`k6RMUyozq#7 z*4|7_IH!T{E{~u!O&8Vtltd_7ud1k3=E}_Lhe_o+Li~uW*qSqL5ZR>!n9~A=s&0f{ zY4#6N>T?oUBv=KXZ+-%RXH+xEfX=wO-q!vIHnc0Z0P!Jm9gmEHg zY3VicN8MCXu`BKg{G_as>hYWvRrwG)DjtL}tE;p#x>Y@)f|t0<_;@uViQ}g?qe<^r z{e%>Ljy(XHpKH&Gvp)qS z1pFWSiU(tV>&(52(2z34*vvqpDJ{b&DMI&zHQ*EsF>n3#dJdptlOKg~CV6n}?iCyn zOld1Gc^VovGAfd45I|Yy`7F>eL}EP2&K;^5E>v$RV>mfWcoOm!X$DE8v;;^q|5ZgQm&+Y1BteTad)m94;kS_?Ah zRXyr0kqFb30wAwcOi^yClZ%`{U%v6kqw!55R zh$)Z#D3?yD;E!E>qD0uLCqs@+5dGD~EA;t)xpMo&Zpu)$&b3Ol*X8|7rqYVq=8EC( zs{Y#N_n7^eajHtDBZw%O5NTqlB&4%tJ-3*Evk0RVyqrk}BX0a0R* z7P0P?nzc!rj9kBFReRSv%~^wDNgjV#XEH`Q3O0|;Eb3=0D)Az1)Mo=s8MesQGo?D- zc{8bk_U_j6ur!e@amt3otEX1RJ)bS<^bMME7=rBy+I`kE34xBh>(sO1L`1vXcB)xP zq$KIJ=LUi`<*ED4am>;^?&#pr@cGJ|isAEBZPaVx1-y%O;-gF$#usqSFiwc^53q6) z`{g)eFv->>R!q}`p%ka>UAH9JqSqE8zrS@R@$t*q^& zZ_gC;!o`3Z?k#ZZ6*bV)zcG>}?SvoeXeTc;0idmC4ey~@1#`c5nP=5E+H^k=` z+O~yjYJ1{76uHEi(+KDGXe-$uTe1pW?zkJ8IH;_}u7|eLdVQsBPe}6kwzkjP;dyLu zp1X!lTafLo)WyXc{=tn)jK<9cwWwomyr)s41RYE7$2!tV)l>Iztoi-c8On%ucGscU zX~$1@JJ8mtT4~KmuP3UZaBk^3E%~;_Gx@kr^E5|11(_rrVvOgD=97&_8=8bjbg8G@ zP(#Jg)mYWa1kEbT5ongd0=t{_1oU^cm1kR{XNzF!E5UrQX>v7{i|-v0IEYtsU?{uB z&Tgi!*N+;>xZadNqpcu}TrrTS_~PGN>ymcrY3Hpqh0!jwC&{Q8@V!31he9MFF=o?E zY)wbW7x&%M(WtgD6{VgECe7&CCul0d;pk@XY}{Lq!r|}H_`zTl!J{jAvi{v}A$WTA zkZ;_J2J~_i9;;tq-)W2VAM72g?@{0I>EUnb;it2`F&BVq*yyO8xE>7;*hg$|FsA2# zUB?Cio=1}&{-f>%6+$b-kN#WD z5rQOs^rf0qH)Z^{6D5Iy;^E)b-~R7-qdw>ghr!D_BU(xSr`PPTO4SE%)AK+#5$Nzn z($0{?Ar-vA^LaX_?9}Qocy}#wM0G%z=34a`FX5+H4I+kuX!gw#?sSa@PhuB zSNuG-eGi_c*?aB?Wq84f@(|D${aSYgRRhKIpwF#u1ks#6q7eR8!+n>IQNv;32hP>> zA{F0|K4Px%JDW%Uej$oM&O##PH2#%%f(B!?L%VB7r)0}H=&W3z;m%<(pK*y@lYtVx z$K|%FFAEw${~f2u%XHR!MZe_*JTDt>kRY#kM)2z3e7RUuT}KgkC{nSxh(RgxGPRP;YlfFK}NJP7Q0P@oBe z8JPTwY5>?kAO90IWHyQnzT zl2tV*d%@YHp}tZ>PmpOAfe;v%y}1X4THBjby>bK3X=xMmw?tSQ<0BY){?<+WXUBPQ z{Rk;#c{S=q5b1ay-y3TpZN^3?;iq=eyq(J`*ME`w9iik_-(^nA07?v2X0joWAA^?) z{D$*0DtZY&5cQ+~`Swec`%a|GKc=Gl@^I^ITYaj4*5NR~&Z3XwO+ z=D(%5T;4Z&W~=-3g}0j08ssDFvI<&vfdVv-dM8rE)NP~sZ+0xEytK}9(&hgR3cZi^|Uw+NY*Om&m zi$(XBo8Q}7WCAPq+dDu8A#z)=vO8oR0)#u!(b(V68eh->nS8)s^QmX=!)8(CPj2h#65dU$mbx!P zX)?GvKUd#8ilFUcj_IFtOcL#F3WAHHn|XR|1G09l)w7Gn@#|4rUuH(Q!*(oSQ$6BU zcyS0_&F9|b3e|kzsuqPh9LKj?Yoyto2X7=7J0ExK1JP*4T5I~}gbjnD5GF zRr)@DxlxOzSjcg{w0a#F9QX-~e4=00y+-06nwu~7Y*}=;$2=FW7S4^>SzqVnS7kf5 zj{ITsSrtU`H01D`|EwkIw@EjLz+y`hmJpFw>Fqf{MYUB-2l@1G(229p4UDAp0AkFy z6A}^lmlh^CYSCAGv8znTKbZJ9?f{0Njyr&v_9A0yVLO}gPUS;Dd8RO+7w_eXL+lKaoO&(C&`tWmE??gZH?HqA-6?XqF+vQgES@f zi~RFva}j3<_FO8KGZiDqnenidweqvlGBJKaTN!IVBm8)F@n zQySL6H^tiaFIL{cZEUm}PCy89B~63nJ6m|WKJw_c^7x|e8H~mBNb4CmNWJictTq~~ zGKksw9n@ErnE2V`)jbS>-1&bD#eN`C4Ojqs^KUEUIEb+T|0LVSk-@kRJ@RhKcgr}M z16HuYf?tkmA~KdujYJFFWN+CBTnaTg-N;^$@`c7Gv{-oQ-iL+kn8NegCOI)QDZXQ)J2w-`rT0rgW-DDa7~XFIX+&%aFIG?o(o2fdBwZEN1X;%iL(bCE&lg6qjKC=Ss ztJ;56yTxHy>g1%KJfQ=66WCIIF_# zQE6~>!ddisjpS0U8Fh(G^E~x1Vq|&xL1!8tiUCNomV(h*Fy$?X<ht$a=flj6RR2Nefi z7&fnrS@f|)xP$Jbj?7TrJ7jO~!w{a@StQ3s4@M~-l23y*4ekOzK4*i`aa^|8r8SJv zjBR%kc=v?EKs%ZPa5}+3XVvNR$5nsMu#5@AeW!*L0SwbsF)YNOufK#%b+Ws=WRFqt z=GUgyu$onMFFDY-6HW^z7UKs2uGxN)cWwb5=|r}0bg9ht&}0f51#V4#XhoLIbx1`zi*+XWM0=Uw1np&FQtNW^ z&logb+LDt9FX_ok_spE}_5h(H+@Q(9PBVWHwfz@zPu%o98K@Hf6+1QPGl7|0-3y6> zV?Sq=nfH5t^bpX?8HpHoscFJwn9SJyr|GCm-7BX@n z5tdy(+L-^VY%~?ZTe6zUn@O z^^AlC=*h~a*4juJ-k8Q`%h0L7Q`T$y3?|E6h5@o~b{XwUzh%{r>X;Ry@%yhwf0yfF z6XOBb?PWj8lShvp=4v5PZ#0gq2o03Cr_T7u-4U+ZkkKNur*jI8tszTh!~jO zX;r4D=0&11IJk8$6zEVuGm{*jmllq!`o@1%dH`Qk7jgNKr8RuOoYp9`9fp)w# zkv~Xy%n(lB2wQd*o6W>VN#jZQ-ldDYL?7E48tl|t(TNoX>N~U1r`sbOs6>P{P;oK*+XN{!E>gnQtyL%bE+t={-C@)$x7mDEeJCr42R9 zRA3Y%e@)p%MI4x@^EL$Kg33e(kN2Gwp?lh99q0G4i5(ui@-d~)%pqPvjk1zEhtlxQmsdbpbN9LV&7V zK%WK%djnD|O$tpBu!IVG*Okh&HB^hK*aumAq15?y)JZwmQuU-XlNN+{+xwnqAfI<5pSIr3=76qF?#kawP&mt!VEH z1phO(5sf3P5|OWEst*H+ykQ_w8PU+Qk|-Kh61i_Bk#Ac`K&dln+Io9OciCYh;lVmy z`U_>@p${w{o;>_Jg7}W)(U1AdDPOvmU-}g7%Bc9}w^k>T-|T$l=5v#=hhFJ+m5vya z&*zAs2NyNO&3Nf8=!?v;jU8}hTi)K9ppvl9w{vsaM-bGtDb&u~K?iWK0UOM2pbsxU zE$Wpqlj0m!F{aP-tX0DchIdnl7odP4*0(~e#vh>}Ne!cwAwWv|x-R{z{FRJu#-av# zkkp%vA1Zn@IuCjz>M1%Ip-ZBV1$+rH>bHtION=dXV{6FT-_oDz8*ucztw!9iYxvj{Zlp7OV#L;kn#{SG^y1TsI#+M zRLn6|DZ}~l;sQbQ^*1VO&JY~c*E4{LVCx9+qt9C7(}-2zKdR%KrBk2?)l`Axb=Ffq z7{T~(G>XRb6uDYkFSHTQZKlpLb)F^RZPv-CKWDpK@!%z5pkp6`Bfly>5k>r_X2h$$ z&#;@-dY9IS7^&HF%Zj)8@Ga(hvuVU!aCf_*C+#*j$s#h*8HeL$%&t_BWA#Nhu64|F z;_km2H+nWRdvE%{n%Fh|#dxa^-b-R67-i5ekLsd8*UkJ2@hpCe^tx4}4R6Dfp<6P;d zx0Rt|b$o$~bHv@*%aZdfd|gLJ+qpczF^|%QXIXNV{U?wdgM-KE4ni>}2#$aJI>93&%K`~k$RtXGYjl@45VEZ1 zkTJS8jN3>p!k6a%{C`kO0|XQR000O8YL&xWXX@43eV_mUGMoYcKL7v#XKZqBV{3UY zb!m2KWp`zAFLQKZbZKKRV`OeGV{c?-E^2XgWpa5gV{dIQYH@XCa(OK?E;cSOE^TRU zE^2esy=iybM$#z!eSQVV@iPNh6fHTE+#A}Cjw3sXXW}fDGf9SGav-uPA*KKZ0JS9Y z{Pwr2s+Z~oAnnOB=e{_{76>$Yt*)-U9^4-!zkIt9^=)$X!T6)`L2{R*^DOy#Ey};2 zB%f8Aa*?-1RVI14NUHWi)XBUm+qyX0v{l{6;=lX~pO35h{K2Z2i?R{P{Re*{ZC0U+{m|${CeIFAHnbH>=z;LlP6D-_I53*WpY_9HY<_*^Ub9wTP#AwTIk2%ATy693F{*D&tAncNe8x`%z2q4?L}Q( zC#ASfp4W9%r$aS~wfJ>Y)S^l9Z+}vm9Lld8YZ?KH?YR^;2a+;SGk_$qwWdS!^Gm_dA?dX1AhCbtxIBRkl;6$b>!>y z>Nb^qPn?RVYa8s^dedCc?*f0zDH1n&IHi2_yDDDE`*Pe?CvtMib9#1#&o1)j>+4d^ z#ah(uExpO*n=7yMN4Sv!^eX0?KvaEA)nJ=kpod`>;jWj)7c`_QvFOopls zdNPsQaio4X^_>4K=>=5?_)n-q{hnpWdh+`vW=86Yx^3YJx!q;*o1$=qUx6d`R|&!GAg zH`3FVuqDoz`y{QiEaR&sJ2-Bf0;8l*osqyO@&&-XC>O^U#cGjO*?67Tvg2RLl^@sQ zvbqxb4Se*L&(O79O}>_}fM)-SWG@*G&1Q^XU;zV*!zaVF<+Re99A`pT#Bi_vO7|1i zYbhshh{w>77VN}@MstqvK}Z~YGG3N)cNZ-cc@%+|2dxHTTGb>S^w--ZLNrLJz zJu#ps%U&CFxp+g7BW4dXR z{p1k)si4rTatc!*`*|{6YrLI2!6JIP=$MuWRu4f*!(2ank1VH=X^|Kyxy_6!p2lK8@KFrkQ&XX)uweP%WVz`(B=aA-;$rp-Hka+e9)m6QH=|U-N8Ddq+N9 zTS8n4C{zcL^QWrAxNTKKP4yz_B1J&VGKu-p4b7j0S-Q;xE^Lip{ zl!Nex)>|b~!M*P%ApqG6Cv0%o{T^lqw>jGMXCdEJTsH z!A+_IrWuVk#LYUFJfCC{NboTP#JiOLz0BK-aSiV-(=3xb$$FK~Mf%|M*@N?uFh4wGR zaZO|V#S6dfIN~CQy-$~Wqz+7hdq&DtIJ5~ZagKx#*Z4=d$PXiyO6N+~2t7eK%ThoPjf)II>N#X+!T4;&O_ zbkrVrdfY5fllzBoewb}5;EQlpVJv+!imR!ob+6SF5<%Mt<(pAZlFM7{?ah=>DqINt zkt|RE2OI88iNUuF+Vrg^VKVkccB*2X8X-|Qki9Bo=PLQfh4X=2N$nRc+%&*ao@@9J=^ngufNW+``KUbPKW-B(;>V$9p3fy zDZA@w?ex@6_h)tSKLzX~ zaT1*c=}SP>aw(JHxn(Zzxn+hw0WzbK*o&W34`!L}l5EPBx#v~)b7yt;NA}j1|E;@x zI{jqt-#BD?kj1|LE;7WsPwe|2-1ncE7ypbk`~p6|XTScOsbS^vKAX6o{5drrWkW_E zAAkAu!+W4Wo^N`>HV2g`04A{uO?x~zh_0hIeGrwv#%qCKI2{d;>DNl za2NqL{ArRRPC^yI9Z34`%Ju^O?Zc03Kb?c_^sZX&1C66Vodc)8hp^iFDMMQr z)^txInJkrv>V8(bo3G>Jqlx-xhqAKTJ-HQjDC%w*d{(fZY|cP%>aP@HGI?geqT*gC z_-d6xESh6^GKibDd$PCpk#@qwPM`So?p!VmEsI^H-4{X@l*oON9pU`%I7{i#lj%=# z0q*TGU*YvjY{rN% zKyv(GDks}KYK4a=I*wPuOmv*4{5;J(3|Wd^B1h9V!-E^BRShad7PWSXjpj(wD+gp=AiNnFo^F=QTS^|$q{sq_n_?M8X= z*CaYxkMVGV`kPF0HqLKbZ9C;Jv=xN03{#dd$vki87tUmT;SdGbKByU~0tevw)xMHT zQoWaNRo~mpQGZ!;Ke+m&UUX^X;oIe~Rd!{rbY0775J?IwlaYYQ8^13}!en420JYaw zgZkCv;s2)35<-+z5410)@6cx^Tw?0c+}<|!c4Kc>_I7S>!8A%)Cso&_sGoV4LgJIILx<5B&I*!6Dj3qXuzi-wDwR|_v`xO#eSpS(GaU-HMT%diLYVRZ zctW1<_9#P5CCHuefP?~zF-md*4JOpr=v`#(SBJ%77*ReSxqZA9At%(Wco9ZCk;?46CCC+qve+W z--r~7dNsjHtj51oMVSsqu5CX*U*|4`{@qy?&{nzLgTCjn!R&8& zKE{as=xA0VX3j6BCo?UG7SZqK&Uf0t?btU;H*~7$h6_)c$Q=N(Ha(3(N}!dGfk?|R z04dNrtjrMyL6<=-Wm}F7btydR&Qf)xxEbDY8AFXK1|APt?Ljo^4$?L9`QCA?GHaX$$V(>%8BltcR`fc0sRt~Y+)N}Cy{7)o>+4A3kiL7lPX?_jf{XmhD`d-j2M#NY4&QAT!ic=k~Si@9X({OxUujFUifo zVW@<+-3Esqv+Ce(c}lJFGqDOP3SY8%BPTF_ZTVuHi|8rbTLcOe%`>M6@(j*npm+wj z?Q+C?H1U7hxuuCSJX$cfaQ~uR39#Sv7EK~=yKdE%GX}|vy~-gwoC;zrY+xgVm4k^R z`L7upi7FsxfT*rLJV=+q2nAq6F-62sgQ3I>i9pg5CWEx48~E*VzHeivTl}!TjU8{~ zI}>$Ej589rTu%L<`4q5}X$tD|M&e1bK;Xu;$X7G~MnAm#GGfXc#|i`+rEIoYOS0s< zS1%l)j4qOT+%!?UMzyWR5a5!*kBVkS5GUhtgNKl09)f6i$R<_|=CvB9Xiby545`Ch zji88_{%{;}yR3WVsx_?HvCo7Nt6X=SWk6uBE+vYI;{OQ_2?tM;FTxQ_6f;LEv2Y*WT+80U+{^DEhzFN>xXa@r!;F)RcgxT`7$ z?xO-v;=>rTQUYBfX-@o-;DS9!hgHcc@yDDh=1Pum?%d6N8tFyC=UiFj2Y+WJqX zB@LjuKp&UbYc6?9jiI$78qv{ zNU7NbZLQQE(h+HlODH+x3?Ifk6mW>;A{by)cn=paC~=I^dh$=en9sY$WcW5;Xd0g^ zDxH%XoKBJ?Cuxuz13i_?=?630G#^av& z_5TO>3cI5Q+V!I7dQrU#sKOAcu8t|OF91{3u{s&i8g>B!yLUDeTC-^t-3@S&b#Vk? z0)8iR=Yx)cSiKvJzfdZ-&c6Ji1KU2daI5pLcE=9hA*TTL^;0mdic=4q z5{Pf^E6G>arsWd53Y{<{ER$rXO4R zpuJWkqV67E*LRT>3x?ewnD|exqEAT)$jDwF@O@1mezlFz4Ls+}mm#5BO4bvE3DF~e z_&86B#go5=COdGQM4t}-`pM%5`6rLbJnh{--v=YGzb2PWzFJk+^L#BAL_GPcthHJz zlL#^^$7c`dp}e8Tp9~`>eiC6V)8W)@;wM?(%&;_F1k4rfrXko{&z>;5+oQ=}!8-ZW zHB;Tv13eVhZlL#c+a>F9+bAAfch;Qp9U3nd|Hc8Fz=!)z7ff@qM6|**sz@RUc$Rq@ zRS=U69p_xPZyY3j0Zvc`ZS0TlYOKNgqsdMG9vY4BPhy)VBnB=)r7jv>zaPvqlkarUNYUwSP>i(Xd0?NqMXt+vK1=8Zc>;%vtwa<=4J%`1sa-~`1c zKn7@{MuB`Xx-6{7v>Ct&(zSq%TEM{*2^*hnr~H7%yRuNnE#R+|5zpN)Fe*}}O3}}n zp3hnf9{G4)U4pt*D`>u{ngS*-_~E?vafN1>ChLD!e^RnKQ&moad4Sv_S3X=!G+N5lZCAzdu3 z`-Bmo%I;Y9Zt1AKvf0#0Z zL}^#2@nux!4W9jJ8@>r5AM@*|2S$58oIupNu5k?(81w9z0KF->YIIJgwj$|_#dL(& zB{^2cDDL>Q&FpQu9wjmBQ(MdaVdqN-Gh>?Yr_gDl?P&rU>23q#mh_^GqvV@(gR!3X z>8^JHpuU5S_mkvr;PmvqlM&I2M={X*iT~br7k5hxJEVdXQpIAmKH1^6QW!`?bVw#q z9Mwi;&*+?hvBw5gd^K6{gXFk#3v{lR2Hl>u?px}j7n*yZ1U{~|fOFs1+qc8JZwTBH zU8_(a$W;d9v{7lSJSzQSFI*!|=fKRzo02S&<8t6K>CoBs)Y)vQQ+=94v}zb#1CgL0 zYEaJ^6`IPxbp-Q~V?-&eBwA>asFsrT`v7XQ<>PIz8dE^H)VJLQq1{#^4D+@%B6WkX z0VdJrG*?*-$EYo!PuLS-rp|h9o^C_K zXg*>)Omz@#%0@0BZ@OD2{5fj}tfhL|*r9SgWWA`4{k<0=iJfz3#t(HoBOu_Pjr`C` z8SqvrY}ep<7HAIDRPaESrlBKt586v+9|myyoUP)KZx!R53lkm9D^N$%rjX2JvljDW zSp;_3HEF4xrxOH&a79Ej&)1%}cVy8q9Dn9}Nkyu|NLU@U1-VL2ZY9{=P`J%evMFmZ zug=TjH%V)Yn{_RkMpiLFucugJo3i+IBTmRpH`=0Svs!w3S&!-}xc9E-r;3!F!~>$0 zIN;d^f*$9srQ@Ba?s2Vb#i6Gd7z9Pp zkK}A6^pJbR$U*N(TFuX>WBqSGu>Jm<=f6u6@lV*t{5-%tYvzp zt-tB4Zp?DpNn;LcljK9TP^1X?rV$$mySrkX22uc%t3_v+v8Q8BB5-O4XM zL;FCtLW*tFBP{Qb{-k1hNS+&qGv9(R^m-N3573Jh|HAP-{hRvxAthj8r$|>NpiEXs z?xFS~!CJ`y7JrayrT-<1De^a$xN^6kLv2&6rvGqaTmm8(Q3-inXh^cK>Es7dk7PY} z`aG2n4&o8WQ=Hx>$sXQxutYfZkd9#b5mpZs%~>q$lZdag z>dJ?@EB|MP%k+QaUk4vgs3p13{Ua7TuBZ;t)w86*`2-i7Q3ISMIJhP3J&J+B=VOEz zVnDE;UNuK}gnADrw5*Yd!v%jxfE4VNNcl<3mxQh#s8eM`PevCW85iK>ExCvOQl-vP zmJT7tQfY(jv>?dPzq>2JxxrB#Fo?$>4tl_)^E?7pf^U_s1$WMs5bt3CxNV>iGmq}_ z*Tdj1-j}~lysbPBSH4FQ=^b{Ss%Jw zUY}Af>LoM`1Nqx)IEfLY^~m%|i4p_22Q>FCz62U@lyD$*!jgLxnP}#bLlac* zq`i$CFWtIXfVRCST^46@@;YnP4HG-oC4ipvb&OXs=&1y&`Dtr4P*Fi?+9(KsM&Lof z9AJ5+5d-#>)xM7!0Ewcp#Rc2mEKS)A?{=7i~+VAjyTcWj8{yUF9N#bCQq6mD}g zd^)0#9z=fbIt!|Uce;bywC<|$*06^=lupddK^T60T4Po&ss(H}hd}_e-O1t$jHJ?z zlJik=6~q6KVw4D70OkvRbo-kN0&x!^q^4VT|8GG_2+=)Mfl$?18$DTw?LW8Rf7Np& z_a6jrqJ)ZxC<;k;ADALsGMP5kjD{um@$w>bTmfIpewVwh}YX!SMU zNjVAeoo@O_lK5v3NN#{q+rdq|1RDND?KMEWGVik+x$SmxQu38mcL~y@b{HA4Dk#<0 zbk*m16b)kLUN>7&XWmEaEw|!M+C8}uzV&?2kLh}CXy^hN;|h0mxl##9(U@(3`N|wP z?5ZU0J=IH8cYj8a%m7$Gr@x?AQ`iV|CfAcQGamz*!e5dhm0LyjaUFy(vsb$4vv_HG zUQ&9r-q{81@0PWsuwwvr^9;g1VU9S8|Ma^g@TR$vn!k89+kUR3l~Z0-aWPZz8j-(~ z%lD@LJgXrVB5Euk-d~p$UqZcZpx~T^4uu4B+dTX*%){Ouev1iPaLeJ?F`fsy3Bu0} zWKl@Fa+ASjCCjmH z(X;YjgGKRQg++q6Esx_-tp6Y3{1D@J%5mr-@bBwwFTi1mT_Gm_ z--8v}l#4zrl$br?Agy+2C_)@p8y3-1S>(#|HwP}^ML5r#}Yh~2g&)4=Ca*H zd_)oo!JT#yhUSsQIvcN1?E|T+W2>=|lC{z;alNlM zi2xb_fuE;=aT);nV+rQb=o%C!19R;NWNwBK4JQs9d}vl}%n9ICyGhX8>ur~6VTX7UI4HHc(Dp%>SzAX#6Pqm* zOT=|!1i!9?xUAZVw>q&c68GvZqEFG1CKW+6(l|6XF=!6J#SiW6_pghGgk#AXg4LtY zyI5ZoeYzW1w4ok=35I5nc$P@JRLDC8CU{eX;msqfwlnLjac8Y`3Xse=t&MTp2$Kft zx5|QHP|y*)P15a5hTPg7EOaFl-z9>OwZjrwbY6RUqHVHv>`tJaByWgqy4Ecl(?s!< z14$jT2spUFw809&!rkf~Ray5~S9y8vjWYm*j&c4|>AaM}%+Z@VrwX+JXG$5Wt;uS& zR{`{{Q`g~Hzo0(HU7yjFTCp?Wws|e5a3|GRIbK!sTsd8_ zUqDSuQaB}8w^qv4;Nt;oW9}i-|}I8hOvuxRa_|t-U&p_^^%%ve_nd$Iuk3m z{2kTE+u{KC%%2w<7^Gt0-bKw5mpLT2b+3qy53%b+=<@Hi$X=LWCw{N47?)*a^WEs@ zyDk(Y{qF7DyBOm6BpbNySn1B=`R6F$ho=-Hher6h6Ny1COX-7(;} z{}uFr_dXU8R%y7&w9`ACQ3V#)^s~DC^LED#rz{k&I0@DP9g@iIqvV2WVyv#Ns)am9 zJ=KX{Bb7zC1YI9yWCIH<%$+<*%D%drXP1RzcwCD{w7lAQtrx6Ty%Lw0D#Z)Qe&d8>H;dAuale}_ z4OeP7d_-U)|3EJ38UR^L+Zp++JTl$n!REX+&qUggF@o#qu}LUd0n@Rs3@yM6*iiuq zB6?;xnCMf6S%D)yWvS0VAI-cHjnN(APE*Pc0uX^+hi{o~W-3rYklI7`acM}C#?%%k zQ5?#}GB7)cSfX|bfix+wMaY#neeEf@RHhK0%MAw|9Al`8?U)6y4mJbmjO9R@vG;2^ z-f)B)?dH{cR2-<<5L&e%m}*1pqS{C+ryPCSW!NF-YSl}f?9SrrIYZVfCKHV0cGDLw zCv5s+I@cOtUrndd;dP8!6JR;n3!?%#E)pg!J~RY!@r=qdfY}oLEi3D&#d1$~?qeTg>Eql+B!r}ZqdC3a$A7=9=WLFbL_wP12*$G+3x`D#RH035Cf zC6zf$5@v~_(X%REjt@{h#)rUPnYG)j<6Su6%+TB$~f?ak>7ud)%rcT2yU%*vUy z@*p~vW05XK$pu-jjgs3DSKHA;0|$> z79-q3>I;fky**AHA(!wmweeU^9cwG+IV6=^c!7k!CN~3mjDQUrU z-`DZJNBh6l{V!-o%dS_Ee$#cElENol>-Gwp*)KjwxOkuZvaCbluy_X}rv|A-3N)lV zB8_RDVTg#%Pf~Q;B}G{g9VhR6gq*>l1Mn!x$dMeG^6p)Y?94;Xosd9)Zt6K~5lCw& zsgpm#BOX-1_#{VB>hqBFw+PfnX;BXz6UQx>AHshFmV;hvn*HStD_SHvsVfDUs&ulPO1!xggRMI3G z+RZb>>8%fkje6?Y~+R^e1Ku$+s^K7hC0 z+iOT9RLehb#6lZRXG`7Lm}Qchykp_BGXPp>;zk4OcpEI_O;8a|g!KeyK-`x>xRH6@ zrg5$TA$+h1p2*4WPC*KGN)xmatpCmJ4&*X_5-i-qGh~JRzy@`4v!v0tpRtZke z1HdmPNCz*gELTT1P(KC8kdvl8?49!3IwrbXD@rd&%ndTdKT`(zJc}X4l#QA1D?N1d5C%mqoU#!Mb?>qhL>0QM%x z{yW<-;=&*9VP_VM-?85<4c38dgJ%14Ns`$i#||MNnChiabWdNP|pj#&$3b%Qc;IB*=qc8j*81Zz9_)B5YfF?|F3zR4n+$#xKPy*CuC z6Sm8HV~;EM=dJtm(*1eUk9i`ja}{|8Gy1d>tqg*VPgyz1<(?82m5euzGj^q6jO3Bh zVzN{aF&t@#LjI!C_ih#V+0#H>AM7WTXM|>>DR||9#Tp7T3X`%vD0idEU3HcSgM3AV zNcJL0QUvIuj&4ymw@uO!Koeb!4x;1&I|=Af&OsB@X}Rh0X7)md+w>ZB zA3AU>0&NkMvaXPbM;V8f=^?wn02hep2YX@SmhNb(IAxu=#}K$7v?^I1hS6;)?Con5 z5z@i;JSIYbODhE6T)&#;eVM_aV-3h6vDssiw8nb~SFOdA@rL2*_4w&5=d9t502nr(=j2qUa{Wt*}qk@pEMwp zTSgUJwga8EUjZJSOTa`ej{2M8&6DI;3IbSn!N-zBEX$oITMJMmf?IZI zWr}Y9m_bj(2N>0IOMVLC$mH52w_8g(VeU^pVY0Wzj!9tv#zIk+T) zc9b@SX&p=;vcz+$jZh(Zl&UySSU|H*qT-JczHenchPqWJTnL)V1yXp3O##wrVjov_ zCNT765T{hd*Hun$BW2_|H{@MJnCq>?Lpb08E6mAQe$K-4WZjuihA*BGKaO~~g0M#& zMob?oGo-Gx-9a!|xR}hM!f;w3vv8p#Dvcf>d1VuIrY5%uXEl^PH}tcKap5}DJ83sCuEd7P|%`rzf#^r5-UV!`E4guM3A04sVOR> zmVnacS>{i8z#j%PG(p<@ zGgoRd{Ij+ywT951=_q{794lA{xp-r#j7;yK_}zsl&M(@#>tfMf3`g5E0a}m{&-X3M z4{Zb&&qP)6IuElZsZn4}v_9&NRA-*buMB5)=-%t^j?Sb!~@W z9duJWO*G5mS-WB`DWGn0cLlHSIw&WR?0RnS|^ab+Bz)MDFp%+FSm*@Y*BiG zHuRzNAkBOK-XXTB@>rN{s@8_ub|+P-a&czfX6Z5Bq$hZ)0w1m8^PY?${57)lCPc6M zZaSO{XNWH0mnX%SWt`C1`X^Rs-`LVEMs%i3yAa*kzA2g?UVbTYAHKyO_8kivzp&}R zY&S8oI7=(AP>*obu)-HHDUoZ^>HFLQy~N_Ko5R*M@oUMV;A0hoKMcJeGxrNO7BW01 znEbW@jZS!wD|TOWYiG0tD-GdwFye?!6-6oE=E@RSD*}6g18&K`%V9kft9@zAEW8e*ph6nTXcI38$_yWiiOmL z-TQ_~Ku$=p$Oprg$`g&KUc5E*#WQ;FE1oa%xHxU@r;n$n*Qejl_CCp`KYcR0fA{B9 zKG>h_W%3X~YAnS~RFp-#6?2WW4H#0VHo>Ib7@o-PSr#8QliNAMmw^|BYxr2(#2lci zdiaU{t))%qP6w|(0ADQO+n~b*R9Pyqv=%o&dQI z^8&`Xd_$j%FGYRsStcO}dWc%G`HcYX5L+K<_j_iP7E4Ph+j~Cpvrjuez9N7&Veo*e z{$?f7)7NLe$m1vF$rw3!Bl@YqZbZ@~m$+*%G1^h0ZqpWjt4YQ1$u-$mhlqzGYd`CY zU1UJ(&w&e2QjJe*#r9a3t3VFH-8*s}9k0rt7?mhAi zYb5B<734rDA_qR5E$tM|GlK*Ftp-Wz*nCwrqG`JmetLE%k$h26`p7pP0bzWMHq!hh z$9w~G{$=j?9bXC`O=v1b?)^tZHJ8K-K1zawj1Jn12>VMO8sYFTVjq@!4|GKBB&T35 zX(S7-4mnsl9BT(XUWQq4LlUrx`#wkI?QbI>XNeo=x>mIK#94&~H!j@ZAUigJ-argN z#g2RjMJcB11e50}WawfmRYK8V_JkF5;t7t*G&Y6Pi*DKKJMF5SS2v)v0(>HIRGNiE z!$hvGGXeQx(Yp2K9jMGJZ@4sZo(RwF;TNkeJa22pKUq-7Yh?WLFm!JsOX&4 z=cIk2k&bYhw9J&q=NEc&Sm4_l@WaNth({6U(S1~&NSDe8C5R)h^}gUds`?9}=7%ru?w^GDU1xK*F1|yByZ7=v z7Krz@bA_M>@3Z)Rboj3N8!E5^z`m9Q3Xd!#iR<6rW=x~vI=ZknECsc_4X&c;sLjw` z+iKHBaFjn)e)EiFfR$*)f9xJ;N8xuKCzhhnb=Zo_^(t@W4mQ#-^Cg*y_}W{IUV&v6 zES7c_8?lu)nBn?%nm`0%*5mC)x=15m=4*9S1>Q+f)!Yyvka9uPIv2!;nX$U?M@W$x z!c(~a@~IuabvJNwEmy`Lw# zFr36Uz)4Jha)jP{56&GL|CNPGpJ+E_UfMF0d^IfcB4QbZHc`|!o=h1jwoCFhK%bJ! zqTytkA!I~0UR0$(-aao@eEbuymi9uFnJaoNxTL*w>7Z5_TM*BOS&g-OggL|`Nt4U) zGsc`MdG)bu^-M08n+4gK6k+T;tY9VrhddoHv0bjs8-nQXZ#^*uk{c=?clu4HWnTU9 zflA5Gfz^ZS-S5;~x_qu?=H6P*S;q#>$b*d;oH2lN{mxyFb1;0{KQs)iGlu~$hrS6g zznmrnROt6+y3!7JATa`V z@i1o6BvDaYt-mfm%fXc|;wA(AGcAn>S8;hOx8!u zb}}C_9lAl%OmYy=;X7DCMEv$riXy1YJNcN5IPP7=$s)raS{v^4EfVzOoBjIbUynsJR^ZFc5 z>n4~EHj(q_nb2_zFbRW%5lDjjPHU1O%jk*(9^VWbL>mY~O-5U2%=RShkE8oy zwJGzL?JEcLYLl6CIh6L4w&7Vorj zJCm=j^V?>piW=g6?3N`isCx@XnnNCDOWq9a5ra&Wjvdh-3uIlaw@e1|0zjVY-uh&M zYV~BSu|OJOmiVQ}lWI2_P)iXm!FFT%x0wnKME4c>&*8Z{9eW7s;0(TnMN!o>Tsf*B2CVAL7j~_Yp=n=or`IADgzlX~KH5V?zY}3UxcKSrG(} zi#p|PNqeT`Q}IQjtCMHd*HO~+z9&0%E%I8W8-&7F0EPDFOZd4h$?zmeH+y@1oux~) zwzXU&c0lZMyZjCxynNRWWDAwTiGZ4R_;$;jO@P}0F~BPwds3U1V>%(^9cEo|R_&EG z+zCDIb(1_bS|>wF&fDCE}$BovSjJ7U@pUJ5{7{zm|kAaDR)LYA%{G~nvWaGSUp zqx2QejxO;^2cCV02hnK&bjS~5%VTS$=mo!e~|1aVkXBkRzkYoVjpZNc7Qd3D6RAT z2VL*OxN|rQEqnn2qELw6Ai+P|N^|z4`)Xo511Vdqg(ex`gtDw~2;siy=(KGSAwvtz zdNOw9W{0`7hjL*;%Bb-P6Whg5BXfPxV|kz<-3&S6OM%J3_ygDiO78CTqCnLQ_Asu4 zs2rr6y5n}1_q~!DrZp)WJ=0F}x}eu+2_V;*jeYZ|CzTT z9RrR}Ovgr_s{Nb#N;__#fSvFf7Y!JTZx#p=Dislv6HAx0WT#S`}pF=(y z_gN?QO|@@0s0a5|_n-zegiuX*5gyajyg_>e@`A+E0aS@jHQuM6IVkJ-D1p$u!OnES z5GPkQ^cj~l3?b;mO0+6o!gDHm0tiR9NGomB*iI2pLO++tjf~2aD~J4jGOw%E%6h;$ z5U%=Ty)4q_KsUS#NCHrXpBRWVyW(EVvx=evk_65*z;9fudndt!d1?|(aIbLmNwo4H z(Ds+US$#u+S;_b$qxf$3RHs1dIc?C{O?6DyjKQ6qlZJVrIJBs(+B`z;1Cv_#Z&uzp z<9LzNK})!N_$1*k5YH&J#Rq2e;_^=jjn!U8L9njV_kzjflUMqI;`>jF#sA(>Kv zlUj~2hA1#$wHg*a2mcLSBuwv7fW!k6GFY)0kP;hYcLmz>phKlna;kmzGoFL{m(9L% z!TAjy?32@Z=9$)g7jt$85BBfYYu|(2eDp(Tk7r^X{X9yBvgx4>M*Z6;`Ofiz|7R~U zj^!r$IPz?;=QcnxjLD1e7Ok((CvE=kJ~QyoG$zJP15Y!19YGofrz5yof^w5YISMSq zvM9wjbtRX-H4b9>>rtn^2_yYRB2?joRpqic-_&F-GKdB*ed~oewid!6AJT}xk;&WI zL7p$;z=VtEgt2hkxtWD+CP~~MBwdR9mMxC>&~aFVVl@^6hs0o^i=h909%WB%puSUR z7G3_?NRHfbus0JQ=8(^GAJK?{9_917Bqp~^YNTJv#IMIjnUyZHa2VhbgX4F`LEbWr zdI#MYIlhldtki~}5n7e`vl|3huKPAC00%$s!q6$~ZD_KZs063T<4R&n^Sa&!0Q?S? z_Q2;qpar0WwmR53M@bkBh|Gsw>)Na@x*mpNUI?JWP$yct`e!bfO#S5t8uB?9 zmMI_KI*hZxguvKd=DWEc5eYLg@oO z*Mf*|{Re;74zs7flUx4%)30(Mx8#-+3 zjp7SPe;!1rPlrn|SSH3G5_UEn0?9~Kgo=YBBq$?$r@#;PKyfl0M$W1u`7ZK!qBB$% zU8cQ%Kl%DAa=z~>Gl9t24BEN2$!^1M9o%TZlFlZpxOv3ss#23VCxMf5&;BuKvQ@E^ zGEx7?emlhH!mr9dMofitFH?p5;-Oyg zBT3*X``HhHPL;@5r@Tx@|ZgXy^C0TxFN9Ucmu6epKgOt zhq80><;*S>cF$LT#0-75s3aq)=HUVet32{BYS9%Q&PWh_tKq5aFnc&k+UWC1P}RTs zs_CxCRuztJx0Qg)S&h)75w3`1Mxgcrdr0qDpl*xlDt4*JXV`@t7`A-<63D;25}w*2EuhL>#Q}LPV$3A?CEx0ZhyzXPU{u z25X?teD1642)kBl=eJPv_cK-p+L?x*yl_EySZ!5Llph(iI5k4@Jb8S$E&4|r3`H?I zXhyp!>1*DCH=BxosnDO!eN{wl(Sm*2k1|fiYAyUx(-oiwFTlUM_!N*|kqPJ=glgqL z$0kW3JKbA(YXk(nG4K-x50PzUwuw*Qa~Lmu$&>PB>bAv4Q-Hq7ASA*{YhV^u>h} zN2cRV>QT(hVe$?qqMiiai=JF5E+$ZgJB+g2?d+h50Sh%}x0tRjb|`m(Kpb1X*J0@Q zr1vz07*8UvzumcMg+?^a#>~<|oiXdHT?A@}J}&Pv*3kTm&%AU*<8(dNeGuB;$J4BE zw3Cv&n^x|QW;PUE!KzXnj)B5ZC<&EGgkeYkTa!+T=yD~vD;4`Q%^^yKhZ{q2SxLA! zIF9PQy^(&2*v*M@p*?aSz))e#C3=KbLZGN=Z+~_Ka;e4r)A3z)y4aIHrsDYwU&x<# z*@JOYZR)u?sam0ATd&0V^P6=#1gTaErL!k@8O5!oz_qAx`k&eT>>dP?FZ5AaLIu;| z>uL>;UqR@7xcRhd+v*bTz7)$==QXaOaG>F(cZKUa5K1jrur%SuGqih2O-tn{c&f{F z)qvBV6LYRcvDT}qqNpuudD5-ju-Lo5Lm1(NH<4B%QzAU4u&OVx!N|Rygql6wm0=0a ze8dzBO}R;qxM^=!0u1)ntNhlU#;J+=?-l?vAfZxbuqx#+>C_&of|}9KLPcF8x}tLE zZEu4!z}aZH5x@jI`b0NY(DBK~^G%(0u;6_bDs{(UD*Fkt(n=kZzI(a@GOw!C){Q3zUNg5cy(n15XakY{Zb@2|<1qFlCdR#N-9}^z@?rtnKY`v5=<~}z+K@)_{2muu$u*}f_1w(HL6PsiX ziP_{I8;p^XNlfQ6g)!WTQW;}8rr?$nY~_wXLT}JUj4Mu8vK4cJ)*Pi^z+KFP?tO%x zz>e@bk)T6=JfDeQH0Vh#C=`<4LF!*XAf}i_ilngCk0LAvB@lS(%*FAs!hrG$lX@Ul z0vg>2Oj{L6=9{Q2iTU`fTHJ#Fn}jZm50>U$j-Muy)!Vc{IHYp$d(?WH1vyj97PS^; zWQB`?!Up#Sv^6{f+wah|nmPkRO)xQ|EA*J?$_82&W*~`P$jwD^S`Jd&3J3QKZU<)r z7!L!i4TF@)n*h$>?apCln~Ul?e*S37B+URA39>qHE{a8mkF)!w`&C<=pRc-j1TAeo zt18J(l<`QOM@b~QCJZBW7XhC`C)xAen893i93!LSovI(~8Px--*g1z?1&pSPH0ioj zf6o%-NIA{k&U?;%aF2WxC{5nKG0c2@_57 zTt%3YN`g9$Q}3pw@JiuypsAy|?J5cy6e!o~5_92neyQVd9i?kBZ^#4QrNU}~ zNPNUZW)aBLgbRSm>!N`6krtf3CyG%1>GywXI`yjp@+86WBKH~ zt~P5`-2C*vY-{hs7Vy1p1n+}SphF)7pFD1B{aO7<*S9~bxsx><0BH>W@RduDT)6}Z z3(VxvT`4yN7;Z{3Nn1E9I*Z)ie0uvjKZg_1!AbEVN_c;N=$#fFtzhtB9jp1NXDo0O zDG;rnvZ|OPEN(!h(hecU(?KnTw(u-nn$OJXZ5NS8bX@JwaU~`2C@mdFN1&LNvYp}i zsyfS8;64Gm%9hmpKy|gj`^=iypNla-&#D+{Pk_!)1)fFLk<8FGz!plelz_ zk+$~?G+zT{oGuiLTan3|LPQxR+3hf3!jCryP(Vq_&m?4NeCC(Sozq}L9Nx+JqP<*w zQwtS^wF0H!#^vp6aN;0huYyF3T`yPWJD^vS`Cv5C%kkXy+i;>0a^s9(%+r(73^ z<>B^3xDsm>?MqEAB*G(klcs*tWmt=B3_(p5(Ww>ya@NxY&n%B=O#r8Pf$Ay>wSoG$ z!cQL``WcXAe<8@O1P3b55Eniw%rk=&7BC?s`;b^M&sacJ4r)Zwo1c6X`E*Vh+AlPa zQr>4k=);VqnzNmDU9jD{H>@IWB%e6>75go-hb+G*Fu+U*p z=ved#{3y|yo!TzSJB*K@DtbQ7=a5)gZA6FajvJ}H%~Fi3qI)o0N~ES#vMrYf@=-kZ z(Cr8WLzZ9wfrXV?MNDG+EQ93p5=$Saq%XjFQ|cZi7_yRno~?%Z)#!e;=(AzrfHQd- zDi|!AVEwo&^bc!8c%;?SI@AL12;-d0m!9)X#17L{%;^Sd-9S(|HQ<#BCdD8%6<=0a zF`A7pi@sKqVD|H%$h`USU{hI)xk98IrCvX z;n7~1TYTo)t}7T{iy9d3rq|) zind9w`J@1k)~xfn;J$@$UF79r)st`yuD}KnYxEyjI~NrN-BXrQ`cZHpx`jAs${jV*9td^qcjV4vviVWuE% zR)7vl8h%;=#du&SV^3D2`NPQ=-8`);SciFmwh%q+c;6K!EmAzTaD9^=S4N>zmAZF~ zHjKqhp|Z63NaR{@A8LGSq!+{nP9$_uJ6>S!ma^@+%+epmA~7zAF+hy@vA5^;_R8)a zGgGkd|A}rj7F^1)LX6g)1_{G5(=T)!^U7qacK379lj*6(3FoCtd+Lq)d zsFZtmd?vw_@`B5c!+=BY*wUOz6ABGhDTbT@4kmmX+pCfw^BP~D$6k{oMIC!(Xqd%e9UuD6B0c=GUx-t`^H#kEgRv>r>LU5tOJiV}e!av+3{D*sU=XTcg} z4vV-pFip*Slqgvm>bTk+dW=-FNgSVmJfPzos zNV)x^k#e8&(mUcz+K7at>z$DFOpPR{s)<-5;ILv*?{n#fs^`g2i9qg|knua9yH>75C_$NG~ z6MV5?U-;uvE){r=xnf5fieUj_zD;I!oVDyAoF5o3#zYJj>!H?!)KBhmU3QiM(8JW_(=WJ=F=7w z47hnVkQ&|c@F$YDUxRJDrxx3Q(JI(bnGqIaIp#|(m_3N8laOgGOh2ck(`rnFV4HVO zvCX(PSTTYuXfCU9Um0G7R;%=4T3A==x`anKQ^KQ0F1(~ZkPnBOpn&!93=b5L?8W3h zfo!odr;QOZDrA5$8`bOvHD!ufrFFt!=CPw!3D9ANMYCD8D0Yt$wVQ}MZ4*j2J94oR zb1uQXYFe`oz}VM$;_d*bpL!KVcN(sCPbU73XpZBV4Qj=mqt8WW5~y%%a2$c=gDcks zJsr;Far;IavbXB_Ay^iR@!6(rs~}<;{MEXr_ctnuts|s?P0Wcwr4t%*T!>7WP3=T zV2;_RWQ_q~_`+HXaPbIWf%qGlQrlxu%40eb+N(S07lyyOblt7{{5NP!OXnQCbn< z0unn%^ozGHC`q!i-+Wk1Pi%ZAied<~tAZszXpA~>C#Dt%q&eY&`RdcnnKuIF_E#CRd#x4a(jwx{NL+>OlI0$F1S!K?6a@-=LKq*lDekln z4!PtYGTmT@fui#NXGW0$=d`ug))I7UxBX+gv)5_ZZEwfgL3l6xA$hMAA7sZE5TjH< z?ih1Mw}-wt6Y{(ko6-khPHXi|j*U$sG+pR*Te!$45^BwPKc+cFv*yIs+A|0zcv0$b z>Pc@vRS^r*Ose=;{AM0+$+i}6$2LM~o)G4XvT5^jj#?)AE;Cr#K{nilTiFIUnkO)h z3DJ7uCu65FDi$bJ5qV!UicJ58h<30%_ZD#B7x1-lJSa|BnnW*86pWbF4Py#k`^vRR z@;W*s#aepZRF7qIA848xpL7KqJ+dV%jU4nqmx=Vl=X8bpB=SWqR+1@LurHh^j_s7Y zeB2>TYj03t6^0N{9~PJ5q|Gnaq&Fle($7$O@=P`?=jPfG6jKz16CUi)I`Md59}hNL zNieTBq>EAob@d^v!3x{AA%pL}?~w$!1y7304bCe!ByzdZE}}}ua|k!sBX5RdJI6me ziIr2uO|NJ*d@kAWuDSw`W&R_298TQ3^|{kV$?0@#o&Jd4_pJZB52M2zh}A$|Vp~Sc zf;xezoqB12feIeSsSh>#- z(!ROK8?W+9SvIIZj#c~+KKjvpgrS9kZ?6h*9rVBUIju!F#`-vT`o^zZJ_t*ZBqa9C zpR83OC*g??O^>$#Gg?GX60(dgN|xXEY_+NNi)v$Y7@Ow0$6!%QR_FS1Y!V{;%GO$ur|7IP#!GZm*;5NwqdM`)-+Fjw%Sv5V zn?}H)1gnBSBtcuV1;b}6k%Ife$$^uc9 zQyXKExG{O`J5znc*w+=IcG_)r0cRLh%%udvP%3O1pR@g}O9k{sRd$%5>{j83#R9Q) zE|)vS>*w)LF(6}%u%l-NV7A9>^dQVzl9N<;T14_7@WGVnxQ-ayfDC;MHWR$SgcS(j z-H6}AHwx6;7hZq8@M?Y@gGfqXcc-F0p#XKcd_hE_9BqM1BETd+B9L)YxChE5K3A#I z2~vnPn}~S8J#@ed%Z*lNoNicEipe#5-Dh5R2_xXy0~ly6{jhGmG5z2HKxYK5$4=7STa>1HG;756to~iyQ2q`@{EKoHkgKK z;nzqDs#6$7{(%m5#a;T8BIRI|d}x>dh;@x_Y~*KCXkvs~L3c-6=HknU8@v~ihXBy3 z675pCf-v6>56#`QF`luyW7MYJ`l&H-X+skiKmRs<#vIDQRVC(A?m9r>c%bN%MbrG& z?=WgMZ7g`>=V?Rwz6Fmc`B+6tMvG7-KJjPv3z3FigV5u1qcfx|@~St67BT8)V?SxE zCyf@4A|q+yD+z( z5ntG#H(KuLBgAMb3|Z<|Cj|~#1faW%e7oSr0GM$aJe*UEd;Wz`2EGONetgTuWM;^q z4vM6R2KP4t;_Z~O9Y6Zr;1H3rTx#yhtfx+kJFV-p)uyTdcBU-alPcf!z!~(31~16A zqAa|$_wY!fsVwV>dZqj@+*4?dm}?z|#aDrnV9g+>JLFXxpj&A}@<#ILmfQUb-&-eU z*P(O?F(r=~6|oM9V7(8*qgP ziU$;^yJDD`wDw_uFE_sm4-c_LYwl>p5q0$PO?Y33+w!=Muv@SeEl6?t>ULia) zfAe<0_d^hT$;~@@sHi<|Aa&?J^munL)&1e+mlBb2!;y|Gj4D(FIDphdxS$DCMUOd_ zuO;RyDFn8vRK@8r5G~M(^n=Z{~gK^a~L*OkwOJ&$m zBEd8_%q>kQ(tc-H(XK!&#FcLjR9m&uceyC%2ODyQE%sSH!+fe{+`l8NovmqeTQ zm|-Xw`kILgnA1RCrorA?!WzhVu>X4}2aoST-Xo3;b2WzQ`V&0&Q{RLYE*+#1d?V6q zx5)hpt>cHWn8o}$e220hhebPlYK*Sl30<^3sg6TJ`8jYL30`*sop5<6Oi`EmLM_l2 z!WSuzx|emA8Qx`PcbU;&EZ{l;m$u{}SWEKp4<2>k-*;%_{+tH%XJKoZkHaGDeN?|8 zq3M@cG6uNXvE*Jv-F}KDU`VWSRyL00A~Q%PWPjuY;t(Ag*nbpu-3E>A=w`lbyVZUF z#a@m}x!F&OvsF=^_xD(3jEVQyoY#U}lsGS<%_*iW9LlXrpakiv;h^%^5rJV@Fn2^4 zRxM27z{Ty%$~D3bMCRNP#$&1mH4IXwct%u-O(owdJKZ)EvV+86m+<%~>#%a8T?OpK zBmHlkgxpRR1YGFK6H`%Mia|H=w(n;z9hc1)+AInkpsh8yjCMpz?fUr8^tih z3}Of8VrrrxiY?I)-Q>aH(N4*D+#rYHks8L0gG)Klgn>u-r5vHm8kNS~Y8z$X@3YqI zv(^dKD166P>~ZoW5-B7e$_`(-*xukLO(W4E=}pc54rQT4G?3k<&kU?Yub}|FNUYqm zlPs!!_wB`SwL7sk1f*8YONcm#2>JX4g<}XJ@sX{%8n+@u)G5_7-`#V#)yfPP^K~^z zhIGq~G>F8(m+GFqwy7$YjWdO|8IJuJHI$TsI7HrjqSZIC#xM(4jCm2u&eQ(i+&@X+BHC zYzG@N=hQF$m37t_yJP@Bv|w>bRT5)0Zf}nu_BfGzlxlhIA22D-W1f%kY0GJQVJD= z;toX6un3O!`};u9?2Orr*yav0Dn2_zM|{hJkCUAF6-o-7sFXvcbjWeMa+$Q#77EEy zGHobIbH3gcI=Vwi|lGx_aN-W#S{vllJn@6}NlaCJM z?WOE~QSP_ZdIE3O`C=hy)XBl4v#MUmlkC9NPNl1!c6rNa8dzM3M=Ev71hc)!T5tB7 z;x}l58rYXl9)Ypsa#dYVnt5HVR;p8zeA8CCAG~vX2>)0tq*K9WdA6^uA<>_Iw9P!CpqLafwGF(j!y$G#u0 z3a}O#&Pfgcz-?QQ<=q@5U0<_LZjo%RQRRkE>DR6z62z)9wHUqSEq6VZU!UMkd?i)| zc~f+W0*nAvK&rntHmGudU~mYV=mVtUpHdX2#GOrAFI(I{MI1-l|D}rS$nbQ`RYPwBz?$}INEUs z=^0mIQuDI(F&Lf%A~n3g5Z5x}C| zi|1~eBq>(nEpnIrAYF#r1v9?3`cA@{5+$OEZg&uDKmecmscH13LRXcL2?dqf0!xE5 za1Us69E6`pz^qfI#GJxOG^i0jn z7p_4zj5;#xM$r^!#i{`1!tkP4EQEFB(qygP%8Ih5KcDj!Bqz{{`edEYfp$%X2d0jt zJjcIBu$GVicA#Il0P|ylsS~dsC5N&iCyB55v9S_av@0RGFmzO*V@#B*$eN+$y3{vH z*qkSilfS{AJ;(v8svZ)hJ!BpQ8z^A1;g)i|rN9K;V5#YN?(i62kg-(vz^QDXr#)6I z$grnUr&l^lrH_5RYV|CrT7j=cv^X^NyIIXrZ;(6p%ap^8dA&OF=Wd67c~wk+6MDxg zvM8n-)O^|wKtSmx5`nI=)(yxzJ@QmPSZFSaz{XQdhjh#gF{)$)|Fs7H!EUPLKe>hy z%=aOUvD=C>>6x2Rc;jL*v)}&Sxy?~pWq2Ki(9^-~I3VIvl2kcTqM>EA{WRX@`yp9s zTPY1j8Z-=*{9z<>whV0Y-RI3B04wD3;(wH8>*tSH(?gI13^^z0%l5kF0<1tC`5Y9C zk>FHTIoH%)#29Lyg08uhFsfZikLVtAj1JbX#JrWAiNqA6NR#ih zmONYqO8k^}n9jD1`GhUA36IQZ1XNu4EHOG$gw-X65=RW|k|KKU_fQb9SXd(EUm9KfxJ!WO(ajjKh zk_Bp*KbYR35FD5c{`G?f6jjU=qYTZ%;nF7tqTh2kiVF3MTi;@sUY#CCp+~tH3%M0n zPM|+#rlBm$b>cN&^-?e*y!3;?7LY~KQ`G>rXf&!Ta1NmUVToJY6PIZ7o`8G=@;Q8( z>RKprZ)iuki3H>=fmTZ?ZKGrfNL`65K-dOSXC9G`1z81;oD8LtK@&qw0|##ol(Q;E z75#dd4z2WZ7z-Y}qUh1`fV~iP(fY!Zl-9qAtp5{jeVyxUYo$7a!&WwOyelYXqc*Bc zy}AQs){*8x&f2zZ>}|pBK)FA#ghqj+&+bBhPub&shrQ)Okh61qD7PEu0K+fXhS(G% z7-4ZnDzc)(vZ^oh)zB7hp}o(A`R;Q88dmm&J~V-(b$K<)PHKr2+)aZ6TfS&M11bS> zjLPyAWxt*1yoPj5Or}PzhWAWJrbCj2fe45=-r2}q=8auoHp3e?I!A=Y@Ioa7J{WBA z2j8hR4@t@>823?>L~ecx8%^RlTS%56MUq$9kz!6ZqcFSNBzcMN{wYSCGHh=stg_H{ zD;lFTjJ6t^JkK@)=hJ7O=mOA@Y=9%uC;H#YfCxy9_RJG1CU`PvM(bUOaz9%T2LG2+ z{H>W4^b{`u<2XiaQF(tv&R<2O4Gl;eI(c7@``yI2xDDriBWufdqJ;b`TF8u1^9*`Q zqNM}2I!uJrM8@h$#v(S9aF7v6;7Y+_8WUydf?L^yv@nai2~rsSh%pCRaI|O7qjG13 zaBQSNjX0R@ST^>VNG-!^Rav7>cE!UXG2>yjSc-SCO-9g3H@X15Ot5w@MFhY?nQ;t5 zTryQ%V6+=`h}{wA^ba9|hC;{#!IfrU@rho*ZSkeZmO-9nOvkAV8JveoF=fPKE+5E; z%7w9TG2odNvY(Y77m8e~dZRq?toQoT`hWwnC4`6#u)Csm%n&0~p$Fcbw&OOQ{s?HpbYfTYDLb-zsY{`P~9KQqKvo8XWQv^b2T{v+d`ZAyORo3p=|xf zz~QUMBP~J`{s$KDv12cK@Fgyz2NxL#`cL!FRvHipn)Hr~Mw#{oZimLXP@k{l0&ZMB zb8`92V|L-yw4LU&8AqfoNvscf+$wL1D);%@*itiguS736YlEj~c-vyPaj}D|oTz4p zk<>Q!eU~M2no3Z5eJup+p?`>Mdob94*Z{4Pg6+&3=VJjfT3?CFBp%>cw!23DC443F zM(${k_!65yzsEXKU*wBw4Lxd-CrRvW1HzZY_+VY@+xe#UvaPB1%SC7+h;KG>1`_3T z>~N-~$C-MwFQ;_V>BXdtzDTCHRxFa9qtLKk7^)fZoKCU?5XGx7^JPl}y{b25Cms$W z?UnD)M<0dg6&f!#Bpq~i%#ntP3YRcq3!s5u$^c{*%^4k@${jsO?#By9j`}1y+_~DY zpr@9a_=AmZ4+2vQkNb%Q=CzM(vDu}^T6t{?KArxbIFnAO^aoD+?6NyNg;syaG z+RLNxeJXs|-)Tm1RtJpa**2wM$AU$&StO=~w=N`{z7B;4=7{!Y7>lFP3E=;}oCcX< z<6q<1=IjT0L3~s|miJG)KU;|Y@saDt+BMLqp^@SA%xP;(M2b@6-6=tQ(-<2<{2IB4 z{?8;IEpZuf|CI!0iOTTDH!rf}LGm!D)b8aW)<5*f82~vCJs|Sn?+FP4!D+0j{-sdA z4iwv}zdGnW(hCoMN{=ROb$-4Qcg;n0eRokTM0QUZ?jR-b;Ma}V2wdTN4;)LGsx^na zVCgeb6>jqRm`r$J-Hs(oE$eC8r&@{jS)E^UQ>u;UnZ<)CcQh(Ygh+@F}4gP@b4jip|7K^E2z4nxgj(~75u$SaJZr6g_ z%dr({Npd_^N<8?)_?rlAf$I!))B0Q#XMBD4Dxe4CdD;T;4(S$Kotqben$6|H@t4E< zLoU0n636j4$IiJHaux6s=7-{g&BQE~Zw~~^QnBJFmTP7Wr0QURs}|DEb}nb$xvncX z{goTA&)hV46h0G6QP+@5a-6TO^V_BaCUsg@M2#U-f*!Hk>n1m2<1xv7>4YZW|AjHa zU5n@NI+n0GmaLgEjY z^n)Ldx(>M&#*$@l93UeEKah@XvAhM3Qds}#iX!38JVNrZ92)5QJSxJaRVJW}k;9Eu zDp~Xc(8@xFmZn-=3Hx$}ape1g0f3$u*_X?r5iB(xrNv{)ur+DOomioKog^jAU$fr3 zdC**;g^JDe98cd#APf=edBFYhVs2=B#{9F+sni@wfmnb$ga}`MP27MJy50ckBnsIY z79pZ<$ovq%Ox#?)XrYY4hkgSWZOfu06)vCWWlUTFC)0S7=k34P7h`7ul&Q0NMN`hd zig^W_orSp-%TCu1NJX+krm}-@=L=N-I{VjG#JE_>jiAk<)C~?O7jmhRADbQB(vCii z4bYwUFtAhlj(bvWn_0w06G}ofaj&4ahMn=q1DclN3$Bm|ZWs}uUUD}_AM}DK$sW=# z$z;u&f2X5l7}rkmwEO`qF@orR6&kyh{&QE%S*ggy7`<+KIMe1CXsQm64rac-r&O8Y z@jIYf63l9>kHAQizGA+n{LSf*Wb~wgcb3duK07I-0?$?4v=n10n|2|rUKOmoo=u9= zZpKyOP+R(0xc>MUjIX7U74|TPkbALRZH*TANms{co6;vb;H*PBXN8bpTHwadk$rNB z{xy;j4J=|##y?wTAzdjRQ*|5PWcVczop>{bEE#F(+2Qynn%4)4yDNLUX(67f{`4}{ z^Fsn8%v)?9&`2x(#mY1U8|l1;0K4iF{o78&cmdHD)N8mm1DjWuYk&e)c9|C|T^8=y zD@Dnvm-Nf$TP{UyC)}L68#j+>aEOzIqL=O#XMN(VK};p%&52=IP_$TOhf|Pb)%NTRH3kX>BpFj`(Zz_Voq@lIA5Q9UR=-tmyU%7wrb}rI z6-$$na}w|xXp}_3>@Oj+8zy+Juugi0?6s>9?Uitru~OT<5M3ye1< zrob{LO=|FV=iBw!A(se03iyv6YexQK<8+k&aH2ayOkC~Y0%0`JPCyv~;R9ZHtzd>f zTLk*H3u`9HAD<__?Pl(qtXw4~`u`{yE^k0I!tIQ0q)!QsxT(C56k3F*P9KgIsYZyK zx+(GTB8+&R+jma_E(l%UbBdM(aq)bHD&_Awc|W>XL%@Kfo;L8Ui?Sz4+jdm5i3nE0)E41#!%1~cv6uqwg*nW(Y3zCNcgqwa2t3^4wQMnCW^`9@o zR2j6xmj3>T1Pb)_PdU~RE&zF7m|vsB-v7XV{OFU7W&;BcO{3TD#6&-?928+~1KnyM z;JjM=be_ZB@V6tO%0)vAFZ8TnfqEVQ}4;5-(-;;>IT$SiyMdu71V}Q_F!_ zR_b`=%#r+6kM_xZQ@zmIjsXlUW;{!}h6on|}wH!?%@iv5l3j3k^0AoE5%A6x_)4k_+f_H{s&k-5WP97yDp%Ev2M!_W0 z#ZQ6}o)&>UQDl&~h?^FVJvda*j~Oahhh=M8ooM#KD>|Jv+CqS4MxHy$zQw*sH^xNf zAPa0)W*&Xq%^rY;#TDFZS{u`ExUW!X<^-HGb0PUE$;Kmjw=Mb{GZjH%HI|r;&CQW7 z#bxg%0UT)Fb)p;$2dJ%6eh!x^w^W$Y(F#Tb`w}hHO?geIHyT`0Ftx-FDq*7N1;Pg8 zhpXk%8DCmkB>^m_GeG8)qi2T|_t7PLRg_A%56klZb@%Pfjoa9s|Ieq8xxFc>ZOiUX zYU{2NUsd9C-(;&_8#|9FwWo`gD4U5yIuzx{Z1;CxoCkmd;80dFshXHCpet;@d+`;qJehQEYY*e zYbAoG_U;z3U`37KOyOVNbq15TxSpMj<|T3Hgv(~TD1>k&^gqhjuK92-3d7emJLk?s zLwypWihnCsI&;V48%ZhnS$6-QQ`PE z@!*F;*JIA0@0H(b)xr3{3}P;aaQi?wCvQ)<$Ss;w;#Lz?!5`H?&-3Y_-f2j12!TW# z#0sNbGJe_xvX{6EIqvbX{fKU8e4(*yoQtf^?paU3{0paVSuV-9MN zL2Hw@h$A0VK=nC0L>Q9Z_SCI9f$pidoyO<$3NcCLmadC;W-X172shO zMSxfQz77Q&$H4Jq_!Bs+_jc3uRm7h3R)N%D*482C1I|x{oY%sTB=c)$t4(J~ zfp2#bC{Z`ikY4zk>^RxOIz}`(a_W%Bd|()h{36*=!=I~xQ4I0R;XKYA2sn9E<1csY zfr-HTbkxE+zz(s7z`%(qJT@cQBlqUkK6cN3jg{pOY~w}Sg0DADhjy=juu{Imxxxe8(lfSSx zWt+8OEJ$7HJJVt!Qu~U8K|q%g@@Pg0Qi#!HT96V9*;*C;L9n=Ge_*a%udpfu&)&pr z(QO-4x=sms!!}X(i8$`ii07_T@m(p!q|*x3YN53`qh_X507jaWqG%VdD>iSm$=5SX zaw)KpbIybP7E!7>qM{q!VuDIn#I$&ZuSPu;BwOTPE;?oVM^St51_vG@JJlBRsu4ZH z-#_^(#BSJL!EnNC&R8m6bnK6C(~gR+Yrn%JiBKw4DZul7ot}#cwPG+7x0F;1K@6?x zK6(B2l(dhryf*hEw3KE#?7_f(U8pN>A8Ry2~AK{i}={2;fdwmw1@B*YX_?W*R4`^Oj4!8;;CXRCUk2TSUjDo z%!ik@>isd|NXtyx9RYn}T5Hu*QU&Nxm9X@={;=^>?~LA+u{X@N#5`B^9A~t@B{!DG zJ>S+UnmW5iB$EeAIAr=1m=w)(U@stUFfK&<7|GS)AX>ty0tKV55D~*zhI60`!4zfC z-;7jwH3v^wiVWUT5e$Pg{L8TYgn8{Dc&eYNBnyMc0hp4QWAYyBP8Cv|%4dR;$*dXQ z7@eo8X}iCFfjM$~x9IchKA|n2b&?Bu6zRr=M>yc!cvE7ido=oWpE7;*{GFjsx!qN9$ia7b0T0RhgNfkCC5^=}D9L=i<#l9E{Ga zqScxezR!RyMP#6_r3i)B(~(qmwOqxG3x>lz_>nlBk2c}=M>C~eQxBgU@vzKY`QjrK zfG5zF8{=z{bHfghcN?@(O_Z2vkfkAFS89EEcDfLGvEygUV!b9r8AFwx<1lJ*q5YS7o6pPfa~Hw)IY>^y^CM*hq*41IA}_Jcv;67C-ve_z?Yd z@HTN<%iYW)6tEA)B}10V<9&P7zRXz=usV=O1c4lT;BV9Tc$W==l1wB6b;BkRT7Ykg z6&su9%6%jR*KN7bMl5Bs#)HFWvX@)g3to0|lokNel0o9smyOKvh~y4nkl|nGSq$Q2 zw`wTM`iu@|GJ4&My8g{OU@G9A)zfv#sM#*g$Sl(_+jryoI1nnFXtcHm(LdH5ir($w zx9#4uZ6Qga{&(sMW_H<&dCSa+Ie%L(ALPANasLVly}UUqmrKs%5Z`{sk;<~!=FSwZ zgObfMzO`AGuZtUbX91Ds-!Md;tc&Q{FXj~`?Xi!Xv8Ydwca#$jpGd?!(UMYcafUEo zc}mM%I1MD&I=lEI{7LuyK>%0tyhMyU9n{^%0?TB z2B;dmMQ38m9*ELXLco)KgF-^k5%2wd)nNn@od$GH)t*KYW;?7#6c=0byH-4z z@RAi@DLM{;R~{^EOrs%@%`qG#6t}8Wiq?#{cy7zQS}}kCyG1#gTE(hUd@L7xgvz{% zt4wy=M{wD_B*rYSdiD}2qq<~DKdBvl#6QH&fS#_8E{+{fD-OuF2P|#4zs_8Sblg9; z7zLEJ=l25a+;-aOdjYO`bX}}zI8dyvg9$));o47Gsl4nHdNXNV7gAHjc*wkJNF3A^ z*#qvjqij(1?+(4p?6wad94r0dLw2Be{?bLTY@sqjEvOXLAnoX~o3^(=DO>_88%q)R zBZeQqdXT;b(+U2RigI=m{{V`sHR1*6wtCZ*F<#6 zx+)V^Ew17y@}1~c0*YsY%NQL{k1vz)ozUe9cXvqfELAikl4IboVkDVRb;A`TkAx$; zI0uwDZi7PwPXr~?wlD8@vrWrYb!3jg4 z+UMeeR!I@bUFwHBRaC1z6-2fbMA8gThGrBs5r74^w1$>0W*;S*nVisxwP^XzaUUJt z-SrEd(kuBosdU40j7X^Xu!tE5523M!NR16yV|_Fz6Ex2dgZI!KD2vtG_0sbWmX)$W zWWjL&$+lffYe!Nln8>1YJ=Q(~nJ>=R&pS ziUL#fbuOP_cC!w0^W3CDlSYwA48-MV4njV4AQZxjqbWgVuQr7p*VgX3XMOHu1y8KO z*zg}-bZ|iZR@$>nTXXu_VBV@YJWLRJ81k=>)0`eh$YPxtW{TeJ=`r^f322KkGZY?P zlOLZ>1yHXZZ6H(r@L8CoeXF88aX}`Rf&<~~b)lz-$)h7POkVKlWU6rW+Gmh6*|*3HUGe)_tde@D`zq0=lIV@{C~6QE|;6u;jZ5Ieg#Dqf!VXT!l**$gh~uK zpLOPsTSH15Mo(K^U8P~Ie=b>;|5G5li122C>ay^Ef_LQ<7yb)D-(h9k66cIIEpS*t z6Eryq2H~aGVcFVnK3J3V7$vnIy8j=4X`4th3v0Uwpm57dBU3L7@k=lYz!8n{f; z)N@n)^YHCr>OiB%J`tk`aKaR8WjRqR>Miu{hw|#h{Y{?b|M>X+{b-1SF*j^}n>{#s zYX1E=%ur0u;qNEIELK7#J|@tKa=lr0-lJSTHmlaisqD(_exwN?tX~Uz6M?tEI6T@8 z28gN=R3lgpT1pH7H=Uz&@c%++iWV7)nO$$JGlAvm?r|Il+1Q=Oa)bUOO?w%}vKE}8aMaw@W&5q6!Ju3q3J`N{+)^=OXZW8gv%nC8h`RB!*=P;kIhE&_ zAIeYzBz5UG(+YGvIIgAHD}t_{88UwZ(7*Dt@&$fL@o!U#g^xuK8i zEE66lCp}tY_A{=rHEGW%@R&WkQSC7tPD_?d6CT&MagFZS92mUh_0}9DvHu8>vcX_Q zOk9m}=Q0M~@wwJy;FeU4d?6x-6J8i>80K{fm!x;n@GQs`YiPDn|;^~TkSk?Z)h~4NKQp>&*dpB%045EY76dn&UD?rHg1M-1=WW7u$%v{hd!6J~joHcpO*GUg`ml+-=mOP-YUl*YUB=tgShp3)|4hY z!^&k!Yifi?#z4HF0nA8=$n>C#ifzkb54y5w=NS0Fu}Qs2{B=rr$(Y#Q zlwt;Bs_nnM<3Ey!#S~fEQwSFhP^{+OSp;|tY^gt5NbFxlNjz|_p zhsR%DztR^y=|!!7KJvR1YMA11ltZaE_>x8H2LTFof>Oun=-aoi-@#kkd`Pc<**2>) zY>)(8Lnx2#S4*oN{xq0@H#K#O4uXiwAafwO<(X~BF?Q>39?pv^FaqQmzNanQwrR7W zL}z2vrH~ykyAw(V$Rpp^x5d&NX=bd(U_=aght!Ri%tZBQ27!pcg|Bz87`Ye~7=u&t ztW!+h)+hdbt=I^pIokb6tC~FM?Ls=Gl`wsOVO1(G*m5~}Umr2-{h8CqtT&gds$(br zkJYNUDnFXzy6iqK472XN{(pNUO5nHh;i{~MQ7FLI9c&faUsbUD{Mw7%@a?zraj`YZ z6(zh=maGCZ<77~gj3@4mp+7MX1yb-76T&FMd?!&FI}Q-YNOZnPjO&T5;jv7aNsJ>x zxWJ&`hq(>`D}09@>-bTnEbReb%<6;jb|2JnFVSb4rvR7A-^l&9Xp7Y#j*aO}%;Rkn zRc|F%5v|e~BnSzI#!>^{PFvPfUj%|!SJe&d zd`<8fkcqLjHAl#-eO6n0tiJg5_f6S8APIqpfp^QIsu_l=9By5pfg*u({TWilIrn@x zZ!+mJ0fF5%)A|A#E$b^~6Y(&e_>5y`ws50{IvPHt`e)g95IY7BR|6;1w3TR7lysM2 ziAUPTHi2sPu>zJ2;1F1LXDON7hvr0=By$pIjY3cdI)YOU75Z|N!ddDy zW_h16vSakyd(}`Fc#@oN;Z9UNM)>UA$wh-Z(dWMbQwEuBaBudM!Oc1r=KB|5zJK4o zPe5hu_32CH_9u<4)cf^#ueeY3u6_E{Ki8nGN`*JeMZCe|{(n9{wj9H+c;kPJo?5Qr zTfC7^C!bvmKb%be@!7>we)2oB3Zti!;dnZD-(5V-r~iOXUOY7n#np<6y>cAIf4w;W z_}z=Izja2S@95F{qxVOA=Ph!=+|76L#}DX7^z&;vKLk@+_Y1tzm^;LQ?6N=h3}==ZG!154g^pF9t0!x#rkW5RXn z(Hh}oo{_I04BH@Ye4-W`sp(THB(MZZ>A8<}lbG>kr+3 z$Gn5jIwyBM>VxbMrI0IY!V?OR!T8wjIMQ(%16B3q>Bw!TmGekh7-&@6U}^y~I?)7d z5~8?AF~2F}uY~VI(zMaM=nBwrdl+7bxnAP`_nrj`BC-1TFFQSQ(Jy7AAWRV|E+rd8 zRd((cb}*$cx21HHOyk+8__eq{E4$8&)q1p879D3MBU27fwBv+KlfqpKa|Th;BudB) zym(8Xu()=HLt2ecFyfdf_LG^Ty<-wd0NBg%!>>CG>NC|Z>91a(5%bZv<=AiHWwGvF zH}h&yfmYEk;j$}&%y07BT%AK^|OAb3^)v<0nVN9t11vlG8HJngFz0te~r9a|xcV z635R}0X@pMX7Pj%iuFT13vY2?**Se4DD^AScpTjy-re0Dn%Q3+njs;EfBxlQb`3&) zck<);%ftT=V*$DwOwA`ZE9T$%A&|pBLLIaE;RYD_Kx~7+O8XT44j$g)v!IVF&;?sf zhAjK*8l32Y!f=aA|61G@>sedf^k^@6RHCoJ_aD8#H2=Q8JW9K59>E_+X+O*p_#>z# zUT4;U5u(=R%c@+?wU=hL#4oR3Wy)yU$LHp!HVpRp|2cd6ruU0)%eD)$C(#VzJIpka z?npL{(}drijUymQdIWDbkKnDOgG!6sV`Z-))0N4dGKIavy&Aq5rw#^1-cCb%dG~L& zzygS%*$EI;qN^d%M9Y_AdxJ9(Z`(7PXnFw!??-!iU>> z+UNKXaY7Cq$R_C}lf6Hj5Y|c#=R*Ftkv{?-x_Mx747P^+5iFnn;JaISIBjk$3bZKk zKpr?W*O+KVK3xS*VHh4{_Vd95YZO2sa+W^~(dU8Ol;qAEgqd#x8wfr-Etbp6V)h$= zeAlybuqszg`w+7Jci5M8S9F{8DTFoSkjoOqAkG%GPVNBzmCXwC5)fMDlk>!+0TIm) zXC0dEB6L@C()_@r;5$>Q?9V&S6Ojfb5a)Z{=lQu;>mp!{pQH(7mTiUw`FlrM)NY1- zkxbKW`s^ZP&?&qGa|5Y$w%0uny z@%XdbH3@@oyZGED;3=o)Or^B7o~pL*2K_?Apv;z_!tYq6nWt1_bzGmdFTXpJ2Kn{5S<+RL_f_RR$d`UI;R;5 zUjAKVnh<h4@EKBT&ze`2q>Q1VJ-us_c>#$Azk!2xh zmR;KBv~3$Bax^Q$(F?HZ5GQzx`o~_-?o z;{cWqxbnlMESBLa{26#xQvwYl;m#1i0SYL>x&L&eCl%#0zVa@mh{ZG_!8X#YLncAs z3{mFa-wz+gUNIRmkbra?I!l11I>bld$` ziY*g`WOJg|lb%`GI=7fnQCa3*n5S@KA9I^5`p0Gc#GaaFS#~Rj{%~La2EKkjj29ZS zrzwpSsX7-HY9fa2QilXzC`U#5NSs8gT=g4VKzwR`&J(%7;EK;M(d7h<$XwMW)3(2Z zhS*sX0sv;$T0|}`hlLxAZ(%T=JX6vZ;&^Q7PWAzft#{oBoK4Jn--n={gLn?;99qOr zZ%5U_D#9W+|Fe9o!OCHaYfDdHTkBg z%fr_|II%gd5bQ2b{en#-{8EFZKcw?8xD$My))Q{?@SK23!v=j{l&YfP>}ynl1smr! zP~y@zu&!(xK8uyoz2zde7#t&WaPvq6ubU8Z$v&86%zFBA@cYT}==fPiZWBQ>WAQ>z zF)RKpNW@622)4E|D%F86JFO&32}j%Q=(04_raXh>c)%39J>~CHe9eP7T})Frr`HbHrIb^vJE^Z!kiN7>MXmv{GRif$zr`5Z4@+1rt;L{MeK^;V3Lq`t##s+{>RIe?cJ+ zQLQ8~;(*|lB0q>E2MJvXrm4Lu?PjChEVP?zGz(j+fL3CIB^>QdC1_T20iA~L-hf3< zYsZGvX)hVbeA+5d1YKx=E4`ip&%;Fb7ae*U#t^!`Y2Ea!`&w7jK}{h1Fz@g$u{f;) z^X0$X8cr*vCv;t!)%TnJFxAFE7hss7mu9s9ueAxB>g|QQU+b3t${wvI>pbx-=)LXD zDAS4*f9C)2_@e*Ap<~rw^2Kl=SBwEN`Y>v>T#EQ&7cD1za^u|h8e}^*%-i@$gmAZd z+N65VVSbBedL47JdsVukqgd_C8to*Xqj3772HK#a@)Uxq%1?Io$U4QZ3n9ygag<{( ziAoL#xRgTz=ODeMkRpZlY|>lH#C|~6EF@Aagr%rMK`n5E`G?=veEUH$`YnnJ7Gly{B;U~Ql5}TSR=7}7y#H(1RjjkOElII zT&){Ex``Q6-Eitz>5=!0<0Sb}FanCfL!+$l`SuKHn5b#n+<7ir!2rK&V?o)r5HqA5 z%jw3EuLfz`(g+3ov&S|g>E*JoNbdyN3%62bgUkV_(X2#=7{0Ay+;5VVWY_Udf6w|! zG+cXh>=s*!pf4A7quTNwxW+b{@{$ipQjVab4{*PhjILoH_MV4uZ8;&}(oYGTY3e}H z*HHv4#EoF6A#l~}%$#Dd2?_s)tt(Yb~yQahsX{K3%<&b%+a+d ziLZz{L`VG^Px~q+k5yE60taxP!pdGG%Aaez?5kqkIsFs`d#j_P=)Meb?5Ex8%Ro!T z0p+<@azQ&vL(i?KgCZ3;)@H2i0EMOU-U)@GXLZ98M-QN$lcCfP^{sR(H!NyN(9A;7 zH5vfXSp;d3RfeJ@N9V$t6&~qvHRiDFB~+lCze{piq;7Cj*a1p`1SX9VBJXQDq99 zA&?+M}S;8fo3H8vf?A)-VPN^9iw6WUwKz%+N_+vJQk z4vk&pH2qNC7Rw*Ww9~&~+}g%P5P31n^thV;vY*Q=@rFg?mhL|M%-?eE$KqbEE2$Kz zBex_SWYUXTTf9Tg*i`%iVxN?p!?w8?D@}{fyK9S^ub0d10L#8@Wg9bcL!we&@j51e zE053%{C<3*5OyL5DVhRdEdFp*{+=HXN3$iEC-#zDkG4{rNu@IUOWS>e_7(T)sA{wo zw}uJ&5wUT4y-Lp#POi0$7{{cs!vPIM@*r)*#u%oWq`143l-9zhN3)_3i32h1-`91x z%(PQ!6$dr%2u*Lp^W2N_5TrT5DNypDKMFzb;x-xJKBeh_7CTkCbT)Cd`K}Rfg`5)# z^3c{vN7cdHnw!H$BPaW4hryHsiM_+V215zswH=RTQ^$QQA32<{XSAVWU%HXuuk-A( znLk9__2U!fQ-7eN0CIL5HfqrflHuNYRg04Z^E%$F%gwx5kFKlvysQU3=qna?J*sqD zt*gsr=~4sqHO}Q8Ykkj9gl4f=mxlG8Q=)WxLRl7(T$P*C_j* z??VvAbblSDQ1`D7wGY-g6VWn$dHw3UuDf9ywg|*bQ89c_<~I@!?)%e2FI`9wjCivT&auniUnH{@c-!*Lt_l2(`ZEzHf9ToJ!Z?ejurN}mM&)f(* z?`xXQI!jz4o|*57e2RA|Bbtn*-oVu`!GtfT*)NB@%FFp7kep1xvd{H$MvMEo~q&zReQh{Y_g|ob=Q| z1`0g1t#YWhoH^2S+t`6?7L-7Jb)ZIXa|1)Vr?wRoz+B^7>d4n_D~EDU##ud`?a4W1 z;?v%=IIfY@dsnn&n%G)<@`&OauFI+}+J~`dcDw4k&y--VJ`@FcQDk2DA&O)Oina|&6rB0 zD(=eJ0O4SRjky%cm`Su>LC#uwGn3`;G!keRbG^ck(# zKNvJ@KsKY<-(p~5&j;1TtS4u^65SHFizC#8BP8`9e?pa223!ED9h}@ZA`J{V+G%Zb z%q2Ia#C1~xGU`2xqN)vFDFd&2?w7NbdjI~=KZ(=m>ap3}BZ#xkCu4ZuM`&V5_eI#X zY(-I0^{S|%#o#r{LiJ?v3!*nA8s%{Qyi1F&l=Kc?rE@sP>BPU;TT+{Ej&eYipE}Q8 zK+yV-B+T+YN{HhX@tJ^Lf{j21gY~~GC{O~TJo}0o{m+Cqpd>fJOF5W1E{GsjDScub zgR$%QDcw+X*X;~SfuIo|9LdX?T8Xs4lcUeNoIiquN>^)9Eqe|&Y^9e89FYHImj|32 zt&qv!i(_!#1mTtMX|b+JyXjf>0+rgVDMDRd-hz&?hpz2F88M+?^*Cj;0{I7?y?+9A zvjBNN5-`%q@cks8oP752$?)U*i9_a$2_D#)ZXl00hj#Of;cXl4t#{d~-~QPVCN>+- zD31XKa|E#*_M5D>2{p0~9mi6V2;Vp&9ndT4S{8%mq$tgP+=Nv}Ce{dq3l6L(N7#I1 z&iK*gVTXXcV9JafVD5!UveYD9WlxBY7TT0pP#z0z`cvUeN`Mor9{Z_1K}8wd_x3|_ znt}e&yzo{FfP7-&7z8Vj>u#{#BB^hcN6#tiNN_7Bt!-E=*n82e8Hv9@r#I0R=vV99_ZPQv#jd#{Hf6l#=~@sBN6~ z7RW@;DpUw;acZ+l1N?m6!jiE4sZyAFc!2ijWc2|8LAa2R$N{ien;rwm&O#PnBHm4E zW@2W(@&@hx@3yRoyOm}&R@TBaMgChnFZ&9}$A5lxME}SiejPl=!T-<+1%4FZm^0E1wZ4O4SA)27otjAK3NyLA8JqLa zjll4Xp&=oOE73+ZnnQrCLu!@l8mt}1d>93UYqb2bSeF{P9@@z77Y?Xf4*>_;R?3`c zK1{e;qJVo?tb52-PcPCv|Art-V%4Xan=bma3Vb=kD8Di1jJ+>&bNJ&LNFqF~glMgE zfSqQ<&|Z%4Y_uxdE7RZw=)i?7DFi`m3HC2BrY!0at2+Jyjv@kyr#KpskbM}lL9Qrz z{;$19%rzVztIL4{1EUz1NxTKDCygjGroGY!JB{;{y?c9hE(t$G zKox#wM01Ht23(rE4ZGSP(-8V+z$JV%52!)OI5!-1|SE~Y3KI+DEuX8Z$8RTlM%r@_byLZ@S#DD^PvomTA zgUpnoLu7*$R!#HkE#7;?YcC1B>j(D=qFMrldl1R8L{sUE(m{aV9l}tAJlBjIWrBN) zK?pRJfj+dF5hK22-N?FoSe7H(DD3ODTo&N+7%_E}K8%JX&TZEOJtU9Fpui?5uq+o{ zTp}wj*UfU%m9~380~Xc2;Y#TSGEtON9c0LjmwB>c(=}Oq=8z9A63m(VKGX4$>7MoE z1-$o#0v?N1DOH3y01$;2(~EF5@npkKf{$?yjEF4fvLn_90<-f|Or{4O%^$jm^%wY; zy>mEN5oVF+jV&{#H?j7af^P((A0aZ zNp?y=sZcbGlE*6n?ShT(qS;OGs&v;NRfl9Z_sDH&pF}*>_{5li!I2eM@Y{isuE^rN z1}AXa=g^U?VV4N}n`Tqb&D8i>n)Rh7i;HxUlNs`o3hCgO1vW<9XIN*D{rIZzg zKk`Eu#IS^YpQ?UnV3NZyHbE7MrnbScK!HiUi$*r5g!>ZB!n8*ksmCJ9DoYE|%B4o$ zp}!dE#%FsG^e;|Bl;N^i=X3)DG5=gGu@VOoVqS4g0V3 zv?QBm`oLy7)U(y%N0LZ{d70gG(B70iziirh*`7By=tGua`lob4D&D7Q%~$5Wtl9$( z(Gw?yYuTPq760oO=E@NIsy3aY#=~yWig$-pW&en)Ll4vXGHq47@#Vt%tI~joZ9xso zak37+C^$W~!mQ74Ut=zr2smU&Q`#fZ8T>FX2R6&)D;(xbkY^!0QIT_)#Y~X<)Z8cz z^B~fLJ?MaUl=Vsd=KBtO0wE7gF>WYIFps{6FU$O4bYl+1 z;)|b z{voy^65%m;yCN~}-+%>352DF9fo06u-4t`+15DGX(FNN=1gXF_rE!d_kY%P)W8|{5 zQm{mP-`ayTtRDA%lg5MT`?i)!7@_Oq++$9)E0Y1Ho3XONV>!pGBQ@o}LD=E51??|% z5XOK_eG~~UJ?G<2*gQSdNxbh~!>NU9!sMm#(l1R;pZDJc99{jS>-f%?#?Nt1F$*=# zX2?HoX&|MUz1_(zC5`wr-C7UV>!Q0h=kxtGFUAu2Ks1UOx=20kZxM36?OfD0-SDxt zL(_kts2tkoQv=UYJQ0=6P;)92jxtT3C!Q41 z8PwzL5Hmq4y`8$^0{!$Lz6mEzc+W=#hxcDZUMoQWb9@`&>GxV@ENGoa zs*2u|HC4?(2KwCskL|lkmugzZ6N(rjt;yc@77Ni}+8V%(Ug^2E^~hm4B3wx6;+AHW zHc2vzk03D{li*{rr%$uUd}5zMuLw>0X{L_eH3T&5I(VyQvo0Y`eGB{u{xT=wZAroZ zNtz9v5y>EHHKny4*i6_qgEiz|ss35AOfWFSY4+P-ez~MS@P&{(nf}_`(7#}Nqrc!= z_%G9z@9n^Mb-@0(l%;h*NnQuPl@Hji`S-?jVGVzn<~eVLnS@QoI5>Wz4crbJsynPs zc3Axw1HxmCmaP8C_tRfP1P3kUGD*|StH7cK)Z4bJb=&%d(#uWXuitN8zIgfa{r%U+ z7yBQh-%pONphAvmDeoV8KZ;_Egu^0YY$_f|!ZHrxfVB*|WGToHuVjYNG@)6GrF{id zRcZJ41w^DlT0x{sLb{|wKvFs-F5Q<)cPS{+9nvWwij;_eNJ)xxBi-Hb9cEsgxehY( z_j_g?4{O%qw|hVPiL;3#%;k18bYgM7Ro@?Y%X4uewvTe=y2VYhz%TM2R~}cOif+@0 z&ibBWg={f8c#{>gbu*)WxK7E)k>NIaXHL+Y*_l*7+vvqS(^0S;&bA`BE&9^=nl5^_S#X6`E!|k$juS09 z6O)iST0vgb;*w01bNU-P7ujlkRbRbp+5DFLudP}~S(yn`7~ep*-IQO>Zq)E+Ec1G^ z*muW1>(^uxy?g!BI!)`l)1|Wj&Ro$m@$wX*@JEC+FP(cRa3N8o)x&|_j zZqRn1hzaRM0D*YXK_DvN|C(6Z+ZbB7Fhk88&A?7zduE7(zJr+|vmpcm{ODo{W&(c7 zQnj$j;Kn^k(VJ9ZS2Dq6rKDWoJSput4Qri1b+)iHO3EHoIX%)9H1&q-F+WuJP${rC z0wHzG9{`up%2G9Zp^8XPh?_k(!f6^$*{Dgcn%KNQHP;Azbrm~{#xTm^EnT}VYN1?& zc>Hx~(iT=8egR>T(+QQrH)%cU&y>xsx{gu1yD(MyjH&4qH!0Qlq->u!a2xHphYo(; zckH-{6-H!0TKQ6bb|ydu`7o|vx!0M~sYcr*{CQa_QIvEEmhMxrJqMZclNIbQ`NoTP z)F5#MuSkrH&{xovAEsM#4d)n%lz=;y*WOK0fK*kLJ91muP6LkOvbAFPR~_Yo25VmQ z*x#y~fkHd;A3il4bkb)s)8WJUbTbpm6QTW~TBXHP;+e(gD^2xpDdnTxZ!LUaGs(8p z3wJ|)6Y`Sd-m(SK;Zp*7XEKV!@vA!C?5QjEvP9FRABw1l2W&`WYK|5%*;NMoqeEDv zPDfUnvps1-t|#r7lXsG|2ix=9a%E1{!Xm;O^wXgXN1d-`#)YeVRcZTeLs)C6*vxf@ z*7~9C`%$mN;GwS;H0CP{Ay-c@Rj+k2R}c+KefjDv?fTWWQ_e3nu-0d$+>#ajcA`>z zZJv9Ex<^}tUp6lTvuES0+Ldg&2yUX1IEk;;LO2EuXrVatUQyvWy4tIOJRS#8k)A)3xrU|1$Pj zcBzW(6NxEk54Rco<7Vjo;%)~!<2uWoSl6O!`q9kw{< z%PPTfn&@{p$BJE_#57tEZ=$a|O`Pa=mFjqq<;s=0cMp>=J9X#Xt#S)-sCmS<%SkC< z|9tKJ)2pMeFm=M{u12a6xEVfiv%SV~hoW^KnP$7An3svCu;K$GOG&AccP)>+!hL0w zL1}OL6Y9I^8Wh&7ycc&VDwpdWRRs#yDHB zlsH3zi$zO>K!g^L3pbATHsJv;Nj_WM?fZyq+9;36N=eIeap>4x^G|#H-XVNIFg+tO z6_w4`=S{9(>TZSuJ;?ob>&oh6jgpd!QIPp#l#*i(rtnOzSIzaFxCzS0rbOkMD4i+z z$r!ij_i9~+QxBd=Z(Ubi7?gNphWrS{LB7%lgpOJR<+5>Qb}X{gG3&1~;q?#^oErLU z+eBo}9F&Wk8T`U5Gm$HxQ6XcBy@w#7vxOKWbb^s z6<;QOli_PEA3esciq>}ihWIK;vH@=;(nYEb%Ckr)OM7xREIPA@jZDAp}w$iB?$BuG+ z8>i}OlOuCE^T?~TzE~>eqLC7^y>Dc{qFhH555wGSihA8He?V|J3jv&dt>X$AeKhI% z*k?DJvAuULd`nK#v@Kn;xFUJgft_Ma88J7LI?_MtG(rh=8V9>67ZVx^X;)ta%_0cC z$EplcdvPO`)0?afpK%k53*EfMH1?>crSVOkqOPHX+G3ZLmMF}%e&Xx~)zmz9nxc*h21M8g! zIA{m$k!kl|EvR-bAyre0-e5IU_eLl0Pju2ES)M`kZ;#dA=(2C%P`f(Ij*+CdYuh6z z>vvn)(!xeEbIt|D9NFQp&F^9}9;yIcd?Yxe5w;!b4DKCZOgwEV(>av!?5NAO#g zuik3k#bLbhsJvv+j+I*5)%fblh-b-3yA^fou3IgM=i$tHN6q9~F=nyun9F+0?y#Eu zOr7!9r$pcAk|f}8A*ps2Ht!b}ZV&}2=ZhP2Cqc>OR~bC#O=!eF5S4Un zGD=fq+h)&oA;cI_dd2w4x{(s5QoD%WX94LTJ{B|#Y3eO)y+`+oi=5gjlwt|qQp=+0 zepppS!?)E*%BHN$9VF4V0PY(o(aM*K$##6ypauR;88KN8SJyUm7<7OAk$3>r0cokA zN@SMtKK5dd9BKAZUL#iv;RmhP${C9>viz!eiCxm^&LH=AJ8oLY zsAL{VLV|fFL3R!PKG=LQHH<}BR7ovW(&aSBw_$1jvUiqh;{nQ2X& z_gyi+nX}kwrEEw%EGWRCkvu_m~coi=lt%y`^M@eN3$O}Ye zbSFBo+aGa~?A}F-H562=uA4M{Sr>(Y8PMJv4*zE8%jCqO0-Wx`wCy@na628!ssPGn zB*Kt*fr_Qc5GZPHh=^8Zc}IwuE9X;1=GYnQ8@9f*5RACI!dLsQ1P}Vh)Q!54BZpp^ z^(d{-qSI!~c7!OY#>PsXJREW&Wm8Axzfl8x3jmgeAH4c#Ynqgp?$L02^W+fk1YPQ2 z;1}OuCLTm(tDgRss8P@!k;q!!0lgKY%68xms|{UZOsOIAjRdwfvcWZF0;Gv)&ue$X z9hb8ZpboZ!+6^)zP-`o`OskibvCrz`(fqo#G&K4K#co1-iz%2ear`%Fx|NwT9)P7B zuwQf>vY#^AO0``<_BIV=9{z_NZDx^4a#TVJ1Fq>3sg~5uWe^oY1@Lgj=dN%3I%1fQQyT<7-wa zEvY0=2K5$^uc@w4__d)GB7iG8gF6a>nGcl01N-l;*-4iqefnr($k@@V@u_i-=eSi( z=IhQd+v`^`T(+py1sEXv==Ze@JP2VCqD2q3P3m#w`~pPp!)4sQb|T|ie73)|zB$(* z=(RboS8h}b-5+e9JQ3u7=d@B?T)g#mS&iig(X2z))57`abbU5CnXA@if5%O${1zJN zyXu`5$>A4zN1esv0|&eETIH)~<7exWHOyeay>7K~M{BP;L4xo0I5RLG4%Z&d?efJw zwiz3Fe>Az?F*6zK<>kEgY5nj-(q=RjEyl_Ep>F!}+w^c}SCZ*Q9@8w`XK?qtwIhNlSF`04+VG4z)EzmiFYWzkD{(m1BYlKtCRZ?Mw){{k zs(YRqG0j1d^L-tIjf&0Y>wvAkXGCqn$bZu*K63~%N?ET zoOx(u2O8;fAv2WLX2u39A?5KqqrU-Ji?;HPLj6EF+gbMtuP!bNd~!K;dZi2XZ8hZo zFu{&OvNh1=m*=NN@M4yS&dGR<9~6zNuQKrzq^lIA;`3BffuT3wn?NkMuYjviQb;+C zBq>g+O9rBp;&BuVddl;`fbN6Kwt?IvPsowIEA#Aj%9nk$Q0s&|={QN#&{>jLCZaDQ zHrf=-H@@75Fi8%>KV>6{tR;V(J5jivljnn$-I`K6*R3q^q4{;5zkx8h&_N@5G=wp( zZEd`HFVQ#;2U@Kdr2_3Yypc&Z~htZrY7e&)jM&T8CJsM72zMx^2gcU>^f>e4`mYRhO`z%gx zBv-EnJ7U>ai_7+3CK}OeC^u_b4!Ye6a7rn|Li+N93wLsBL&c`52EK&TGBvrw_pCov zq%tra$a>5-WAH4b#UqAhjB|8!!zX?Ho8V(wNel*wPSG+kHe>H$4dml=xLVqY*R-A@ zI;tU0#7cCdohsUWoRjxHWM-uuFw{;R+J+Uk0Ro;)%A`hcO*jkByf)+6%qBKDNG)RI|1`+4zz? zOlmdm>6Gxh~n?z@C#Cfyd%(iHY1N1?B5#GH}`c$xAl znzLL*LTAbqw92;e7}~QRPLGhWk4{MO)Y0CZkxCpv%HC*MHU82GaZp)HW8+XX&*k!; zXK$EzJ+wj?PP&k6w+YV|;u11}YyX`v$dUh-kq5WY$7vl<-h2mCalcT`h3 zyOfaiMeKOwuPLa{**YkKBl-h)ydO!{qdoAnoyamFcbrbpzIq*v$;^f@2FfmYPZ~?U z>*`68aHCX4Q3Qz!#SNC>M zo<9neL*6B1x+6o{8q0y)*q|^FGl*eHl$NQhw7YVe~#)))~P*0fr z(a{7?E$3Fpl_|RUTu{ipGPw_BfnC9>p3kzZn+xF@X2CbzjteNKl`;s*Ty>QCWw-Cb zktrqOmJy(S#LX8&RIxURUZx+{P2TjX>VJLh2Vg_ z6ktE)UzVFt2Qy0uu-vo?7nW~eK?_(r!BdrsXW#jNx5DmoMZ|XC<2{*?qOeaYi^>H9 zr+f>gMGVuXM+a`q7`JY0qKN|+yX?F2G0L|kGzZZm)u>u+mSel3acWuZc%{ZKrMQ#GRwUJW3%%G+!{(?ouwr+@u|6>lk*w)9SM-9&R zd7!>egBTtgkKsFcifG3tXt#ZEel(-l7*9rG?vS*k&L*HiOiw2f#63q;;4bF4aGzym zt$DlB{Dy;ZP4Ua{=?>zq^bnfxyoDo~9tK3r+PX z0(<0iQC7?e&LrTKwP_lkp&|Q z6FUhydwsEa7t90*oIC&YA*XIRM6D=l%CBAQh0ZCYF# zsUlmhnv}mOjpD%7tAKG}Tm zw%{)0TJ65L_yg3=`?Brb=rWA-9iKa2E3x#lP1wt~%P>mcX<;r^y5H7vN0FtEjU65Z zX=W~V-W7l8Y7~CftP!;aT@-F~wtWC)wiX?(@{Oh0nYpY*>RA}WRKFeL-W??l<|m|L_ESI!X(50L|1}d9!BEqxd$0L!@$jy%Dk2;r3~K3jxFAp1>gyJ+N#Ya?>esNBcz@F5%IF_PwVj82 zj###dnYh*$h$BTe%zDIaHiOMehkS=QH^&84X)HKFwd_jXpa>HE2KQrz#>FI@1!;`D zEI4Qxv5?YNIJv@+2>0#>SEKK82k0~9WYbs@;2z!}bNw{H1?w2-Ozn0~1Rzim2M9#| zFYc@)E-J4iR^!?d16;=epLw8`<~@~o9)3Sc#9Ij7pBGI?IlbscZl^u%txZ7T5ym2}|YRH2k8rX0%ga?MDA; z3OSN5p4^rx=!(dRcGAs4`9aTi8Ri!F92-BiKr!UNulY1|%gn1CmBE!|4bLB^_QT(6 zzbjt!yf0aDN~V(tw2!>4H*RU`_u3-^8vZ~&g+9iuOB|ocXk&4LQM_w_ikMXCtj z@X8}x|8@D2g6z))j1_`P98-ySh1ZlZ%9ZM!`cEo8eu3|4#}iN2NGFsM>!Lsrq7?S< z9i?(n*wwOC#7I*&bZlXvw~V0f?aki0c8jFuxpCP2FVcf$GoKwnWSA^72dU6kIr`gTqlgf^r!pYb7iMi{qzZGav$q~F6&PgFAeajf# zLe4mA!Gryb6+Z(${MmEcMrB_O(jaS3j~OZN+jUO11&UgN81_znCi2OsZty0iVyyN2 zPT31#Ds6trZgALITUiF1y3GdxQgFDwc~0JyiMTgk#u!c>-+2`*8*1CsKUY!nnLDIs zVP*dCe(`cV|LwNdMngcm@U_%Kqx-%a$qST&dK2pPom8a{vlOdv;!;zd`YX$dzhk!b zp%x%9z2^jmOB(qQ-QI>9obc_@h*%3=x<#pGnLCPItdm=1RVsDi0?ip=k;NNoQG`d! z1n<@vv0m@&q2DI_sxhr`l?z%5`tiWRXnf z-46Sf4hk`-^H+t+41C|pi#6mQL$p(97FuWUQB$uxe~+YPrOQ*d{vLj1;~I9;mt5_` zPZeV~ow@F8On+iFMoqS%$s3vh{^*;;3^CldPwkztc7JlnMi{TM-*1N_YrYv6Fb4R(0Yl@md-xGW7r`uNfh_vZt<2Hn_=P zY%+#AXH++@jVk%@^&0DK@9_OjezdDxOQYpAD}v=#mMpLDjN@-lW=c!=aWI;F=5gX{ z;u^M`=Tq-n_Q=n3IEl!_Gq~j-J5^q+S}@M5lU|l{6@o)IWXZz=RRJft zXqg{h>$$Gu^fAGvOc9>&l&)&-tNo)++#tG!9coPHT1HXLB)~`Tr7(2MGE^;_GLDj35YP)=fL6s zvFMX)4-p|=(Q3CM_C-@Np($3Cqge@blT2AI7$0MpUZmncS$oyd)Z;e7)3xTpNJ~oy zy8{v7o(Ktql%gx{s`d|6phj@ij-P%F+@wrkuVsHTv#4rY`nYfU<6B9Mg^_F>S-Qg_ z!Tzd(O|~j)+{F9?9x#qr-5c}g9iio&G;5-80_gSm#uOsVqW<_D{B5Ou&&C9%*vi%VC$%--C85$xe@WC|E)fo&yx+ zJK1U4M?TGeB#C?c+UI>*-bl7=aC4B~OOymF;wgoz)uASaY5i}+BVIS``mE~s&(w!v zsRD9n)zHkCA;Dh>I3s(Z^`@XgqoDBywe{o~64hyK^HCb5Ik%tzzK>eGO)rMY>!NVw z*#M~Zx;80O2T|UhG4?eFDTMtSNoPzOiH+kc&dUp}ln6D}nVwxpTyaU5oku!TBu9@z z#YLs+52J|~tWe-_kImvdKMfNp@+Dxpkm#^MOxn;S;f*?;sWO}px z+WRv5GwKzjy^a|1QTLOG^6V#SF^}2dzLp3)WB&MxR|zp-xvwbBtctC&YEMr#Ywabo zyITTL^NnP~r!!QCxHLr!N75A|d&#-9*z!WI;ZOQR)$p-D)b$4+All6zj?&9Utj_Q+ zy;xrg-0+iU=DN9Au+_X0qLWh1cOs>F4SOr?A^0FUMpI4N4Xty+9}x@X;Ng-rt>FF_ z;Pe0XP+<@IZk}X{7gc+Mhi|SR3U(MQkxcWkN$7N}o|JJLcqOpiY$fPGqqPZ%K#rf& zvE`Gbk*@5z*DtCTuSB1MFW1QA+FVw-rw;Nf5iFDo-`d?fi=n7}?O{u95*&O@i8pdQ z2Wtp#!$@^H+(6n(fLy6CN)dZ<*_%ZMFz*htz=$N00K`js=>XJdZ8rGMi7uvzscD+? zsSbkxi`wpEdjIW&*zYxM(WBaPw_yLmig z5q+0AQZtZviy+5}TOTGyS%~*&{O43d*&w@Ej~H$Kop9OHTk(k;cflNX7?aRAZ0uA4 z8+A{a!}`MG4C0Y;x(ACNTp|~T=t4Fq@DwIh4A>pQv?OxT)OnuX@izGOVsmze!t}I2 zZj{Ayopvd0Xbh{$LI03uEft|fyNTpuIc7cXw`FDhYY3d7H_F98aN+V=ulu7&M-~Ky zZ|#xtP5H-;k~Q~fvtJ+6mnZPN!LOIDe_gmKn}3|bn^GVd>z%QCbUG(Gqv6CY{mM)N z2)Wf_OPMhViFkbYPT)2#B?Kp&QwyXU-9;L)YgMwlAl`M_f1@0I8c8qa*&{Vphr&;& zTM9`Zm8q9{e018r9d0d{B08d=RC5<()jGbPe{pCpdQcbpg=G!m;QTqTQbsF>Xh&WmWBXwq36g1+`YMQ>Hhcl3N)r>PE=^s~7i@zKs`%;tKXj%JvPwwtBg zo=>7ZQqGmWm2Y3@w^vvgG)@fEw*_AW-ZQI-rjon(7pMnwAxeET_p(P?9zP&*W#S&#Vo4o4p)ZAK&5KIc zF}d*4E`;k$rgg5@*6`R|FSVRSN6L#Uvvy-lvfJwB$JN&Owkv!O_*08i6wW;@Y<|>j zQ94~Ji|!JyP`*5p{oqCYZTz9Tm(%gUih%mc_0ovD9L^v?D%A(R8ImLN@GCw!ZBIHR zQlrG1m+^~hEI`j~-WUv2xUj^?9&Tb^QB2*HUk?_4$qp?zV0K%I*WO#dr(Cc_R3qe+ z$Y{Npc7^kCpy1sz-Y}?pxr?Q|HJ0P*N`~m1`ci-zxXwxxqi)QIUgUZ~zUwlsG3KnB zb7A=aHJ#T~k(KT+kJa4USCLn@9PdXi1)B*l%wF{^8SWMJ;P%Z3Y(fZdQE;s~l$VEV z;nQoQ^R6q#Pp+1&5?4m?U7G9i-h~n=?litrHx{SuLCAgt>Cxg)qLX>^HLM(t*bO{H zzm(x5nc~8UgVIf?W9Kz%+(5vUQ2Npo69a0VFPDyTJfCsYL8%Dx#m04oJ6w6-Slv~h zN#XcWeAjVljXrabJT^t7M~&A!bT)9Pr#)G*NP(bu)wf%%^A`2PelDAkH(DOt*V&EC zK3DmEMp>JUme5J1BCI+Pt-N*Q&MfV)zC6OtXX|#|yL`G>ZD0Ql$K43^a-oOaH1tco z$rdQIgI`i`iD)NZ;X}Ga*ue`%eF?Qp!QH2ukT)F zFMKxpC2~g6n*Q#ggoK4SoS=^5d(|OoyYf7z?2ok9kor-q70rqni&-NasM4710}YLH zBqS(svc1~jvAwbOLnrzdb)(yN-S3O8KP(6}xsu#b?tK&aiS83#>g6PYILfZw)4@i$ zCm%3(hw0c4>14XBIyV!Sgt^`v4J7&T+4rH+DYP}9`}lE3yyzziM=82znlEwF#$z^T z>C92&U;~6sTIBn{AMJ|L9`1vigS=lOfuGV=RI%XKMm3h={95r;s z2pMC~zz5q(&Q*;w?;9zw2kd-uuW6&t-~iPe~Rso))YC9aWB8^1p5;VBbtTz^>L&t62@`(0nRzcv}}M!7@eG z85K`hY1QuvRcHzHRol*!-tzn6R5_+EF?7F`%iJ&KjHq=H7{k$Yq?w7Y1kZAFEwhub z#@x(QURTB$LxM6zv1{Tx$p^-A7}1$R;K-TUwzKS&W}iV1HF+GAiKp>h?z7}HupO&6 zD);%hyO`%|7xjE}Pc%LA-P?GMWzt;KCp5wW(AE z*G>|mR~s}8SBgz_%ja1J`<&hV=K@FD)Td;U=~5yMiDvf=+}!6BdblTA<*Hix`G{jc z!H<}U-bXj8D7>*LHy=wYIE-I^xk^c@zCV zPGtsN6+=u4?}~*QgAV<+bgWR@se!uO8v+Uf&SV964Uh!OG0r+crLL{IA9PIasY<^V zM}YlATh*+FpE;VOI#%sF5zHI-76$E-#D|sJcQ$mdveHooV}GS@r{zYA-L~Z}ue-Z$ zdY9f!zNR2*%k;2>6N)~NvNGqnvlH&mEcwl%CNN%74w@i7YOo!~5SF+j6843ad4Y}ky{D!UxRi8_Gwqs8eC)nj_%e1=dCNw$p z8mx-QQz{5!PDoDQD5kSpZoRxM@?3DO5rZoW;=OS-frB_SlieF9QQ#ZWnBFIMx54Kp zjx`hyM1lfYr^-uSx6zRaI;2nXcLwXQHD81Hq%@e8nA4$M(fc4_Q84+wbdIrlG{mLY zKPJz2k5I-sBv7LK8BcZH8`9RS0g7@KpR^$mr`n_^-02e34fh)<^c4v`72Cj@H=~ES z+pUv#rN}D@Y3A{H!#i6o20fn2M;x2=*V>$U+zUcdtt|0Eptfgvv6~qj5zZ~T2Q;`p zS$H*1=~bvVbIM87U30?t-DpM{C}(cI;1F3$bP3J<{yT|^ zDXHdmqorHrqICpe)+$yuaM{&6wKS-*xlU=3BJx}mRNv;Lgxaoz8YSAtqLL!DqEp(GXT_Q0hLGH+Fw{iFD!#a?<$8Y8i zMNV%lr!e}=?{TU=WqTba+1J~&v548MltI-QC4WpCPn`;`nx==k zz*y6sy?XTib)7Ia3_9wr=rx3$NrfN^JCM|iY|h_eYxw^vby+NG7$|{p8U6xHYQvI z!ktRmpU-Q2Qt8bgrGtc?3~#gCb%=KJ(xLIhCLEXYUP7GI#XWgqa0;zQ*DQvhUv6eEz!<$rt(358s;hUF@+WmeVa0? zpza-f%qwTt%hRKrkEEgRGE$mO!${g+3zT&Qg~15V2QEj$i3Umm5#*Y1N)cZQot zHWAO@JzFBnzaA&GzJU_$osKdzi25-jXtD(CPqA%=2n&UZO&dB0h9DpMkY| z-^vRDS7-0+mwF!Bbs^~$KM6r{U}VHS=nZ)Kxo0vYLSYa+eN*%GLy57Xc>lD5vD;oY z&2#0=hn1UzmHWm9Y#Se@`VCfMlY@lFIG$KRFp4Q1$YlnfTlz4LQ4cn+G438OMSM(T zKSP#NAM{i53a9-l;&%DKVbEuy_~PY7 zlq$||?;5D1XG(4&Yu)q1o9^!1b|5Z@d85p$*?8@Nd)2B<;~Y)Jy%FK!92;R~0*e<3 z1Sd>A>!V%qX(9~uN%VK~X38UDUV-3FS>ApT=porhJn{8#p|mQO2`)LlfvdyDrxK4_ zAhwjf+LX0E_lz`rO#2O4O(Ne|IIG3lGGijz9t}iv17`A=ESe+yvYk8%Ft$@h`zvkQER z@|_QT6F>?Gvz3j3nI%{c3IQ`;qMkv~R7p;Nr!Jj84@Uli^T53oB$83EPjH21F^Bc)VaeGYrF3Qa^M3dg0(cG&`&7F=dof5e8zPF zGo(&Y@kGE!9V$TV!&>^K=ua?aR#s34eFICdk&&6r9_jz^A{*tl_zGY|U)J7f3`!PU*)EZ~+07bL0E3 z1Mf^9f8gjG1_9z=W2*;tyf`r?mP@-Y062MoG_W}9z%l%H93!x!nIRa${J-}F{AkN= zp-uw+Vtx$-x(&k*w(37|0L2*UJLuVi^^Go!rn?Fem`#9wRsaQ)!=SNf{1XjgXb%Qk z189K4F2*~D_?~uQ?a%e-FFdfLz9kg+?$5^hvaCT7vyFicXp0WzXP1OtjAdzQb%DZo zNEg%B0k-Y}d{G1M?<3Qv(&$2#tiTTTW`>Z;i#WUKB~^K;Nx$_Xp}ZyGdr3 z;+le?_Q2hhf6<0C!&Zg}5FUzvOTxmh{AYOJQyT{$NnTVBBraYLvjgCt0`SZ*+0< zS334!6Rq!c)rH2RN-ZFy{-w(A)ogdcVv}3*-A8?*Sbq z13HAIb|>Vwr8`&Zg|kx4mOJJ%Alg3yxm6TKw)>&KP0aypWoxMq6oeOe_c@L49tca2 zBksQvJkMZYX9qo7V0tuz{L9=1UE1d#0Cc$qEJlQ3B#it2Aoxr3Q40qur2^*j1xUh@ z>rDE6`F?4?J6`pxtw6Hy0IEP(b#|ouKDqA({1^KP!Km{f`~ON1FrU7q~0kLd$pR|c#_V71s% z_?xu;qs@Tj(vOkp^W^P+rDm*e=m1RYW)3cw*=u&Ma*GnMmp10lv+%dyq4Y~zDJw5Z zcL27!3DAO_?H^VDhD5)#lVTfAD-B>LDqNtl_@TG+2`#YZH|YFF8^KPUNT2>IB@&L)W4J?g>*8ig_>VRL7Wh9#rjJ6;f2CpyWH_jynf1S}!RV_w)tv!%4#Wn5fGvq1 zBh#n&H;MhyLhO%*3*Q3T%K)?oOUk$Z_vHGep++|w&R79wm;t1MRbk}d?~(eC_JWO8 za$ucz$r|8q)vc8cu-yJvW4&BTmYM^MHH7+e{_*@BO24$!Y~kMHXuwkED-PH^SM%*R zB>JV9Hrko4r~>lr0;?xj&E?Pj2A$usk>=8Wr3CCA8$&Iv!9XXYOBN%yZ>YJ91EuEi z`C95nIGyM2x4%Q_mo}0G0j=u+8}0tXMk}koA<-{wbPGak;0(~H0OWzS5y8f9(D{!x z5{1#+!uF+<{yZr#a|Kq3w)zlY#Q`yJ0oGVnHjY65sY^`tG7W=O8!%P%)t`&z2Rpw{ z@IP5h7)Cy%{og0|OT&Q=*pG$*!*v4E!K#z{@b}4GVm~_)at}>Fu1Mgaf|1YR^kRZQ z(zCoYm~{2pW^Vu%3IcLD4Gbjq*=3M_?!ukJU$B-~@3it=;hQACLC~v{QTyUAI(kq`hHbe3`-cONfJ%RiOdmt6iy*D^?JX|CIs4Mmbq84Da{yb5H-Dg zGiL`Vu(Ql;sBinrW0uwdqVg?3U+1eVG8pzM?_3UQY;u7`x2t;1ZUU-z1>%|#25yPz zQn){lO)fwrB}b<)2N3B2L~0ns`@q)V_af{s-~AyqupbJxH`Bi;QB2*TV~qqbX92sw z#`7-Qf5HSNAzK^!i#F_I(86mw05-V+osz?_+sk=5G}z&ylghkFIjvHFRWe|fhRtbH zfSX?;{+~xZzdo^0bPKPc0=&ruNItMS80Ebb_}`C`lEoyU(x`xw(t<#2FglPGxCr{s z*nuzuC${IcGFb1=7|{D=Or@wz*C_*huM&bl0F56b(`R1lG6H7S=3ql0f!Kl#FYvTy zpDV?^fH0W9{&P0+Rk{onIMp`+!tA1u9navjSphuZ5#YQOKiE9aB4TQnLE3|@fn0n6 zkK!1Jbm!;ihJfe7o~YPsTm}dM_yaaJfx};uU#s=i=U~ncz$rnd^v}WDrhOUsuWunp z1b_|10l9$_$)C=q+im|sG_|p@xU^b$`+(&ZU|5h55D0+De~e5YDZ8IxetrMo?TvL| zPXI*%urcffmuBFL=I^2OCo{ir5s;eI2{KT2!2`=rx*u$u+tbD2X9zQ3)0)}RM&Ah7 zSGM`X?||v+yeZv3ue?mY8%MkfaK!^;b}AUy7S{`5|4cu?vFG4La{-rn1WcK*C8~7(FY*3By@0t< zK|@^#07eIdC#*9u7ybqI{gMy!11V8)xrgFEtNeYz6~6Pc*YgS=)&&NNFF?7(1#EU-#kTB6#c%fII@^f(62^xCrRaHQNQEm7BVY8v{TKfYD$V03E=U zq_C$|0Qtx)<*U= zW=49ZW4EV4!IuNgJfx3{vfcDWQe7f0sP3czSCpw8Rh z83x`!^-}+9YEZWf?IC5Hhdoc%T6pRH<59jq*W#*_TQ ziqISb0;Oic{dBY5O0LnCWu-~qZ30ox{Kj`mE}U|Cu3-1#r)@wjBHGtOe{=Rz+&4R@-wlY zo7R8VQKk<&CBmtKd(eGW2en$McCC^`obN4Ps{Ifxif(#;17=u6| Qz<=~Wk(6?NV;S`S0D*TpiU0rr literal 0 HcmV?d00001 diff --git a/pyproject.toml b/pyproject.toml index 6c1d9f5..0cde98c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,7 +23,8 @@ reportMissingTypeStubs = false reportUnknownMemberType = false [tool.uv.sources] #glrocky-sdk = { path = "../../packages/glrocky-sdk" } -glrocky-sdk = { path = "./glrocky_sdk-0.4.3-py3-none-any.whl" } +#glrocky-sdk = { path = "./glrocky_sdk-0.4.3-py3-none-any.whl" } +glrocky-sdk = { path = "./glrocky_sdk-0.4.5-py3-none-any.whl" } [[tool.uv.index]] url = "https://mirrors.aliyun.com/pypi/simple/" diff --git a/scenarios/tc_generator.py b/scenarios/tc_generator.py index f2959f6..cb85cec 100644 --- a/scenarios/tc_generator.py +++ b/scenarios/tc_generator.py @@ -1,10 +1,6 @@ -import os import re import sys import json -import time -import concurrent.futures -from dataclasses import dataclass from pathlib import Path from typing import Callable, Any @@ -16,78 +12,20 @@ from glrocky.framework.marks import Marks as M from glrocky.framework.schemas import Device from glrocky.services.dify.dify import run_workflow from loguru._logger import Logger -from pydantic import BaseModel, ConfigDict, Field, field_serializer, create_model +from pydantic import BaseModel, ConfigDict, Field, field_serializer import socket -PRODUCTION_ENV_NAME = "GLROCKY_PRODUCTION_MODE" -PRODUCTION_EXECUTOR = "192.168.0.139" -YAML_FILE = Path(__file__).parent / "test_cases.yaml" def _get_local_ip() -> str: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - try: - s.connect(("8.8.8.8", 80)) - ip: str = s.getsockname()[0] - return str(ip) - finally: - s.close() + s.connect(("8.8.8.8", 80)) + ip: str = s.getsockname()[0] + s.close() + return str(ip) -def _is_production_mode() -> bool: - env_val = os.getenv(PRODUCTION_ENV_NAME) - if env_val is not None: - return env_val.lower() in ("true", "yes", "1") - return _get_local_ip() == PRODUCTION_EXECUTOR - - -def pre_process_material(input: list[str]) -> str: - - assert isinstance(input, list) - if not input: - return json.dumps([], ensure_ascii=False) - result = [] - for text in input: - splited = _Q_PATTERN.split(text, maxsplit=50) - for part in splited: - if not part.strip(): - continue - result.append(part.strip()) - return json.dumps(result, ensure_ascii=False) - - -IS_PRODUCTION = _is_production_mode() - -METRIC_FIELD_MAPPING: dict[str, str] = { - "result": "result|结果", - "_dify_result": "_dify_result|业务完成", - "_dify_message": "_dify_message|业务错误信息", - "resultText": "resultText|文本结果", - "recordVideo": "recordVideo|录像", - "recordAudio": "recordAudio|录音", - "screenshotList": "screenshotList|截图", - "firstToken": "firstToken|首字符时长", - "timeSeries": "timeSeries|时间序列", - "fileList": "fileList|文件", -} - -IMAGE_EXTENSIONS = {".jpg", ".png", ".gif", ".bmp"} -VIDEO_EXTENSIONS = {".mp4", ".mkv"} -_Q_PATTERN = re.compile(r"Q\d+\s*[::\.]+\s*", flags=re.MULTILINE) - - -@dataclass -class _TimeoutCtx: - client: Any = None - task_id: str | None = None - - def stop(self): - if self.client and self.task_id: - try: - logger.info(f"Stopping workflow: {self.task_id}") - self.client.stop_workflow(self.task_id) - logger.info(f"Stopped workflow: {self.task_id}") - except Exception as e: - logger.debug(f"Stop workflow failed: {e}") +PRODUCTION_EXECUTOR = "192.168.0.139" +IS_PRODUCTION = _get_local_ip() == PRODUCTION_EXECUTOR class MetricManager: @@ -99,32 +37,54 @@ class MetricManager: def _smart_name_label(self, name: str, label: str | None) -> tuple[str, str]: """retruns: (name,label)""" - if not name or not name.strip(): + if not name: + raise ValueError() + if not name.strip(): raise ValueError("Empty name") if label: return name, label - sep = next((s for s in ("|", ":") if s in name), None) - if sep: - _n, _l = name.split(sep, maxsplit=1) - return (_n, _l) + for sep in ("|", ":"): + if sep in name: + _n, _l = name.split(sep, maxsplit=1) + return (_n, _l) return name, name - def _add_metric(self, name: str, value: Any, m_type: str, label: str | None = None): - _n, _l = self._smart_name_label(name, label) - self.metric.add(name=_n, label=_l, value=value, type=m_type) - def add_text_metric(self, name: str, value: str, label: str | None = None): - self._add_metric(name, value, "text", label) + _n, _l = self._smart_name_label(name, label) + self.metric.add( + name=_n, + label=_l, + value=value, + type="text", + ) def add_number_metric(self, name: str, value: float, label: str | None = None): - self._add_metric(name, value, "number", label) + _n, _l = self._smart_name_label(name, label) + self.metric.add( + name=_n, + label=_l, + value=value, + type="number", + ) def add_image_metric(self, name: str, value: Path | str, label: str | None = None): - self._add_metric(name, str(value), "image", label) + _n, _l = self._smart_name_label(name, label) + self.metric.add( + name=_n, + label=_l, + value=str(value), + type="image", + ) def add_video_metric(self, name: str, value: Path | str, label: str | None = None): - self._add_metric(name, value, "video", label) + _n, _l = self._smart_name_label(name, label) + self.metric.add( + name=_n, + label=_l, + value=value, + type="video", + ) def send(self): self.metric.send_all() @@ -133,26 +93,35 @@ class MetricManager: if not the_dict: raise ValueError("dict is null") for _k, v in the_dict.items(): - k = METRIC_FIELD_MAPPING.get(_k, _k) + k = { + "result": "result|结果", # True ,False + "_dify_result": "_dify_result|业务完成", # True ,False + "_dify_message": "_dify_message|业务错误信息", # string,None + "resultText": "resultText|文本结果", + "recordVideo": "recordVideo|录像", + "recordAudio": "recordAudio|录音", + "screenshotList": "screenshotList|截图", + "firstToken": "firstToken|首字符时长", + "timeSeries":"timeSeries|时间序列", + "fileList":"fileList|文件" + }.get(_k, _k) logger.info(k) - match v: - case None: - self.add_text_metric(name=k, value="") - case int() | float(): - self.add_number_metric(name=k, value=v) - case str(): - self.add_text_metric(name=k, value=v) - case Path(): - match v.suffix.lower(): - case s if s in IMAGE_EXTENSIONS: - self.add_image_metric(name=k, value=str(v.resolve())) - case s if s in VIDEO_EXTENSIONS: - self.add_video_metric(name=k, value=str(v.resolve())) - case _: - self.add_text_metric(name=k, value=str(v.resolve())) - case _: - raise TypeError(f"{type(v)} not supported") + if v is None: + self.add_text_metric(name=k, value="") + elif isinstance(v, (int, float)): + self.add_number_metric(name=k, value=v) + elif isinstance(v, str): + self.add_text_metric(name=k, value=v) + elif isinstance(v, Path): + if v.suffix.lower() in (".jpg", ".png", ".gif", ".bmp"): + self.add_image_metric(name=k, value=str(v.resolve())) + elif v.suffix.lower() in (".mp4", ".mkv"): + self.add_video_metric(name=k, value=str(v.resolve())) + else: + self.add_text_metric(name=k, value=str(v.resolve())) + else: + raise NotImplementedError(f"{type(v)} not supported") class DifySettings(BaseModel): @@ -168,31 +137,40 @@ class DifySettings(BaseModel): class MaterialForDify(BaseModel): - paramGroupUuid: list[str] = Field( - default_factory=list, title="UUID", description="UUID" - ) + paramGroupUuid: list[str] = Field(default=[], title="UUID", description="UUID") inputTextList: list[str] = Field( - default_factory=list, - title="对话列表,支持多轮对话", - description="对话列表,支持多轮对话", - ) - prompt: list[str] = Field( - default_factory=list, title="提示词", description="提示词" + default=[], title="对话列表,支持多轮对话", description="对话列表,支持多轮对话" ) + prompt: list[str] = Field(default=[], title="提示词", description="提示词") model_config = ConfigDict(arbitrary_types_allowed=True) # allows uuid extra... +def pre_process_material(input:list[str])->str: + + assert isinstance(input,list) + if not input: + return json.dumps([],ensure_ascii=False) + result=[] + p=re.compile(r"Q\d+\s*[::\.]+\s*",flags=re.MULTILINE) + for text in input: + splited=re.split(p,text,maxsplit=50) + for part in splited: + if not part.strip(): + continue + result.append(part.strip()) + return json.dumps(result, ensure_ascii=False) + class DifyPayload(BaseModel): inputTextList: list[str] | str prompt: list[str] | str deviceId: str address: str - caseId: str - parameters: dict[str, Any] |str| None = None + caseId:str # 用例名称,当前运行的用例编号 + appName: str | None = None @field_serializer("inputTextList") def serialize_input_text(self, value: list[str] | str) -> str: - if isinstance(value, list): + if isinstance(value, list): return pre_process_material(value) return value @@ -203,97 +181,36 @@ class DifyPayload(BaseModel): return value -def create_dynamic_model(model_name: str, parameters: list[dict]) -> type[BaseModel]: - field_definitions = {} - for idx, param in enumerate(parameters): - name: str = ( - param.get("name", "").strip() if isinstance(param.get("name"), str) else "" - ) - if not name: - raise ValueError(f"参数定义错误: 第 {idx + 1} 个参数缺少 'name' 字段或为空") - - label = ( - param.get("label", "").strip() - if isinstance(param.get("label"), str) - else name - ) - description = ( - param.get("description", label).strip() - if isinstance(param.get("description"), str) - else label - ) - param_type = ( - param.get("type", "string").strip() - if isinstance(param.get("type"), str) - else "string" - ) - - if param_type not in ("string",): - raise ValueError( - f"参数 '{name}' 不支持的类型 '{param_type}',目前仅支持 'string'" - ) - - default = param.get("defaultValue", "") - if default and isinstance(default, str): - default = default.strip() - - field_definitions[name] = ( - str, - Field(default=default, title=label, description=description), - ) - - try: - model = create_model(model_name, __base__=BaseModel, **field_definitions) - model.model_config["extra"] = "ignore" - - model() - return model - except Exception as e: - raise ValueError(f"创建参数模型 '{model_name}' 失败: {e}") - - def call_dify( - case_meta_info: dict[str, str], + case_meta_info:dict[str,str], logger: Logger, device_info: Device, material: list[MaterialForDify], dify_cfg: DifySettings, metric, material_reporter, - parameters: dict[str, Any] | None = None, - timeout_sec: int | None = None, + app_name: str | None = None, ): # logger.info(device_info.device_serial) logger.info(dify_cfg) event_callbacks: dict[str, Callable[..., None]] = {} - def on_node_started(_, __, d: dict[str, Any]): + def on_node_started(c, n, d: dict[str, Any]): logger.info(f"开始执行:{d.get('title', '')}") logger.info(f"输入节点参数:{d.get('inputs')}") - def on_node_finished(_, __, d): + def on_node_finished(c, n, d): logger.info(f"结束执行:{d.get('title', '')}") logger.info(f"节点输出:{d.get('outputs')}") event_callbacks["on_node_started"] = on_node_started event_callbacks["on_node_finished"] = on_node_finished - - if timeout_sec: - ctx = _TimeoutCtx() - - def on_workflow_started(client, event_name, event_data): - logger.info("开始执行dify任务") - ctx.client = client - ctx.task_id = event_data.get("task_id") - - event_callbacks["on_workflow_started"] = on_workflow_started - if not material: + if not material or len(material) < 1: raise RuntimeError("缺少素材") else: logger.info(f"下发素材:{material}") - metric_manager = MetricManager(metric) - local_ip = _get_local_ip() + mm = MetricManager(metric) for material_index, item in enumerate(material, 1): paramGroupUuid = item.paramGroupUuid[0] @@ -303,48 +220,28 @@ def call_dify( dify_final_status = False try: # IMPORTANT: the group uuid for params - payload_data = { + payload = DifyPayload( **item.model_dump(), - "deviceId": device_info.device_serial, - "address": local_ip, - "caseId": case_meta_info.get("id", "Unknown"), - } - if parameters: - payload_data["parameters"] = json.dumps(parameters) - payload = DifyPayload(**payload_data) - logger.info(f"payload send to dify:\n{payload.model_dump_json(indent=2)}\n") - metric_manager.new_span( - "default", f"default-{material_index}", material_index + deviceId=device_info.device_serial, + address=_get_local_ip(), + caseId=case_meta_info.get('id','Unkown'), + appName=app_name, + ) + logger.info(f"payload send to dify:\n{payload.model_dump_json()}\n") + mm.new_span("default", f"default-{material_index}", material_index) + result = run_workflow( + api_key=dify_cfg.difyApiKey, + base_url=dify_cfg.difyUrl, + workflow_id=dify_cfg.difyWorkflowId, + inputs=payload.model_dump(), + event_callbacks=event_callbacks, ) - - def _run_workflow(): - return run_workflow( - api_key=dify_cfg.difyApiKey, - base_url=dify_cfg.difyUrl, - workflow_id=dify_cfg.difyWorkflowId, - inputs=payload.model_dump(exclude_none=True), - event_callbacks=event_callbacks, - ) - - if timeout_sec: - with concurrent.futures.ThreadPoolExecutor(max_workers=1) as executor: - future = executor.submit(_run_workflow) - try: - result = future.result(timeout=timeout_sec) - except concurrent.futures.TimeoutError: - logger.error(f"Workflow timeout after {timeout_sec}s,(yaml config)") - time.sleep(0.1) - logger.info("尝试停止工作流...") - ctx.stop() - raise TimeoutError(f"Workflow timeout after {timeout_sec}s") - else: - result = _run_workflow() logger.info(f"工作流返回结果:{result.outputs}") logger.info(f"工作流最终状态:{result.success}") - if result.outputs: + if result.outputs and len(result.outputs): logger.info("提交结果到执行器") - metric_manager.from_dict(result.outputs) + mm.from_dict(result.outputs) metric.send_all() logger.info("提交结果到执行器完成") else: @@ -361,39 +258,31 @@ def call_dify( def make_dify_test( - meta: dict[str, str], - dify_settings: DifySettings | None = None, - param_model: type[BaseModel] | None = None, - timeout: int | None = None, + case_meta: dict[str, str], + apps_config: dict[str, DifySettings] | None = None, ) -> Callable[..., None]: - if param_model is None: - param_model = create_model("EmptyParams", __base__=BaseModel) - - @pytest.mark.usefixtures("cfg") - def _func_impl( + @M.meta(**case_meta) + def _func( logger: Logger, device_info: Device, material: list[MaterialForDify], metric, material_reporter, - cfg: param_model, + meta, ) -> None: - param_dict = cfg.model_dump() if cfg else {} + dify_settings = apps_config.get(meta.app_name) if apps_config else None call_dify( - meta, + case_meta, logger, device_info, material, dify_cfg=dify_settings, metric=metric, material_reporter=material_reporter, - parameters=param_dict, - timeout_sec=timeout, + app_name=meta.app_name, ) - # always use cfg fixture - # _func_impl = pytest.mark.usefixtures("cfg")(_func_impl) - return M.meta(**meta)(_func_impl) + return _func def make_skip_test(meta: dict[str, str]) -> Callable[..., None]: @@ -403,7 +292,7 @@ def make_skip_test(meta: dict[str, str]) -> Callable[..., None]: logger: Logger, device_info: Device, material: list[MaterialForDify], - metric, + metric, ) -> None: logger.error(f"此用例在手机{device_info.device_serial}上暂未实现") assert False, "not implemented" @@ -416,56 +305,55 @@ def generate_cases_from_yaml(module_name: str, yaml_path: Path): logger.warning(f"Test case definition file not found: {yaml_path}") return - try: - with open(file=yaml_path, mode="r", encoding="utf-8") as f: - all_cases: list[dict[str, Any]] = yaml.safe_load( # pyright: ignore[reportAny] - f - ) - except yaml.YAMLError as e: - logger.error(f"Failed to parse YAML file {yaml_path}: {e}") - pytest.fail(f"YAML解析失败: {yaml_path}") - return + with open(file=yaml_path, mode="r", encoding="utf-8") as f: + all_cases: list[dict[str, Any]] = yaml.safe_load( # pyright: ignore[reportAny] + f + ) if not all_cases: return - for case_info in all_cases.get("cases", []): + for case_info in all_cases["cases"]: if not isinstance(case_info, dict): logger.debug(f"Skipping non-dictionary item in YAML file: {case_info}") continue - case_id: str = case_info.get("id", "") + case_id: str = case_info.get("id",'') if not case_id: logger.warning(f"用例 缺少 case_id 字段。{case_info=}") pytest.fail(f"用例 缺少 case_id 字段。{case_info=}") - description: str = case_info.get("description", "") + description: str = case_info.get("description",'') if not description: logger.warning(f"用例{case_id} 缺少 description 字段。") pytest.fail(f"用例{case_id} 缺少 description 字段。") action: str = case_info.get("action", "skipped") - meta = {"id": case_id, "description": description} + meta = {"id": case_id, "description": description, "appNames": ["agent"]} fn_name = f"test_{case_id.lower().replace('-', '_')}" if action == "dify": - dify_settings: DifySettings | None = None - param_model: type[BaseModel] | None = None - timeout = case_info.get("timeout") - - if parameters_def := case_info.get("parameters"): - model_name = f"{case_id.replace('-', '_')}_Params" - param_model = create_dynamic_model(model_name, parameters_def) - - if dify_config_block := case_info.get("dify_config"): + apps_config: dict[str, DifySettings] = {} + if apps_list := case_info.get("apps"): + app_names = [] + for app_entry in apps_list: + name = app_entry.get("name", "") + app_names.append(name) + if cfg_block := app_entry.get("dify_config"): + env_key = "production" if IS_PRODUCTION else "testing" + if env_cfg := cfg_block.get(env_key): + apps_config[name] = DifySettings( + difyUrl=env_cfg.get("url"), + difyWorkflowId=env_cfg.get("workflow_id"), + difyApiKey=env_cfg.get("api_key"), + ) + meta["appNames"] = app_names + elif cfg_block := case_info.get("dify_config"): env_key = "production" if IS_PRODUCTION else "testing" - if env_config := dify_config_block.get(env_key): - dify_settings = DifySettings( - difyUrl=env_config.get("url"), - difyWorkflowId=env_config.get("workflow_id"), - difyApiKey=env_config.get("api_key"), + if env_cfg := cfg_block.get(env_key): + apps_config["agent"] = DifySettings( + difyUrl=env_cfg.get("url"), + difyWorkflowId=env_cfg.get("workflow_id"), + difyApiKey=env_cfg.get("api_key"), ) - else: - logger.warning( - f"No '{env_key}' config found for {case_id}, will use default." - ) - fn = make_dify_test(meta, dify_settings, param_model, timeout) + meta["appNames"] = ["agent"] + fn = make_dify_test(meta, apps_config or None) elif action == "skipped": fn = make_skip_test(meta) elif action == "custom": @@ -479,5 +367,24 @@ def generate_cases_from_yaml(module_name: str, yaml_path: Path): logger.info(f"Generated {fn_name} for {case_id} with action '{action}'") +# class TC_CUSTOME_CONFIG(BaseModel): +# phoneNumber: str = Field( +# default="15338070617", title="拨号电话", description="待测机的手机号码" +# ) +# @M.meta(id="TC-9991") +# def tc_9991(cfg:TC_CUSTOME_CONFIG): +# ... +# class TC_CUSTOME_CONFIG2(BaseModel): +# phoneNumber: str = Field( +# default="15338070617", title="拨号电话", description="待测机的手机号码" +# ) +# phoneNumber2: str = Field( +# default="15338070617", title="拨号电话", description="待测机的手机号码" +# ) +# def tc_9992(cfg:TC_CUSTOME_CONFIG2): +# ... + +YAML_FILE = Path(__file__).parent / "test_cases.yaml" generate_cases_from_yaml(__name__, YAML_FILE) + diff --git a/scenarios/test_cases.yaml b/scenarios/test_cases.yaml index 5ed26f8..bc52fd6 100644 --- a/scenarios/test_cases.yaml +++ b/scenarios/test_cases.yaml @@ -17,7 +17,7 @@ cases: - name: phoneNumber label: 主测机电话 description: 主测机电话 - defaultValue: "13302325670" + defaultValue: "18922457731" dify_config: production: url: "http://192.168.0.140:8090/v1" @@ -124,6 +124,11 @@ cases: category: AI社交.语音快传 action: skipped + - id: TC-0113-txt + description: 社交应用内翻译 + category: AI社交.跨语言沟通 + action: skipped + - id: TC-0201-img description: 日程管理 @@ -146,8 +151,8 @@ cases: dify_config: production: url: "http://192.168.0.140:8090/v1" - workflow_id: "20410cc9-93da-4e23-afed-000c4599a7b1" - api_key: "app-esPo8u1OLCR6gmcQXg6cGRRS" + workflow_id: "fa09b257-2eb0-4004-9c88-6a81ea135f53" + api_key: "app-5ACdstr0mYRlXMwqW3eg16PU" testing: url: "http://192.168.0.163:8090/v1" workflow_id: "30ecb958-b56d-4b65-8713-f23945a8db91" @@ -338,8 +343,8 @@ cases: dify_config: production: url: "http://192.168.0.140:8090/v1" - workflow_id: "fddf3829-a606-4347-b5ef-0c9c98915d52" - api_key: "app-vmy2OaQgR6tSPDrk49Kd4eIR" + workflow_id: "79568213-1887-4743-90c7-6bfb02ab62ed" + api_key: "app-uiySzUXku0SIgCaBckWV3tvq" testing: url: "http://192.168.0.163:8090/v1" workflow_id: "2c7809b7-baea-478f-9f19-c722a7a276c4" @@ -353,6 +358,31 @@ cases: production: *production_config testing: *testing_config + - id: TC-0217-txt + description: 实时翻译 + category: AI办公.翻译 + action: skipped + + - id: TC-0218-txt + description: AI帮写邮件 + category: AI办公.文稿处理 + action: skipped + + - id: TC-0219-txt + description: 邮件翻译 + category: AI办公.文稿处理 + action: skipped + + - id: TC-0220-txt + description: 邮件总结摘要 + category: AI办公.文稿处理 + action: skipped + + - id: TC-0221-txt + description: 网页摘要 + category: AI办公.文稿处理 + action: skipped + - id: TC-0301-txt description: 用机问答 category: AI学习.学习问答 @@ -409,6 +439,7 @@ cases: description: 多模态问答 category: AI学习.学习问答 action: skipped + - id: TC-0305-video description: 多模态问答 category: AI学习.学习问答 @@ -471,16 +502,7 @@ cases: - id: TC-0312-img description: 拍摄解题 category: AI学习.AI教学 - action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "30ecb958-b56d-4b65-8713-f23945a8db91" - api_key: "app-w2NVHlHZzlIGnmxmkRUO4FPJ" + action: skipped - id: TC-0313-img description: 试卷还原 @@ -594,16 +616,7 @@ cases: - id: TC-0406-img description: AR翻译 category: AI影像.AI拍摄 - action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "30ecb958-b56d-4b65-8713-f23945a8db91" - api_key: "app-w2NVHlHZzlIGnmxmkRUO4FPJ" + action: skipped - id: TC-0407-txt description: 文生图 @@ -623,15 +636,27 @@ cases: description: AI路人消除 category: AI影像.图片生成 action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" - api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - id: TC-0409-img description: AI物体消除 @@ -651,29 +676,53 @@ cases: description: AI扩图 category: AI影像.图片生成 action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" - api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - id: TC-0411-img description: 图片风格转化 category: AI影像.图片生成 action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" - api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - id: TC-0412-img description: 涂鸦生图 @@ -703,34 +752,84 @@ cases: description: AI美颜 category: AI影像.图片处理 action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" - api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - id: TC-0416-img description: AI美化 category: AI影像.图片处理 action: dify - dify_config: - production: - url: "http://192.168.0.140:8090/v1" - workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" - api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" - testing: - url: "http://192.168.0.163:8090/v1" - workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" - api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - id: TC-0417-img description: 智能抠图 category: AI影像.图片处理 action: dify + apps: + - name: agent + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "e3f7239a-5145-4fbb-8e09-c52d65372c39" + api_key: "app-kSt3HFS7JIi6l7C3AtfIM0Hr" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + - name: album + dify_config: + production: + url: "http://192.168.0.140:8090/v1" + workflow_id: "b2281cc8-9758-46f8-847c-a2c5093793d9" + api_key: "app-R7SQz4z4HWHDW6NDgkUFU5t7" + testing: + url: "http://192.168.0.163:8090/v1" + workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" + api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" + + - id: TC-0418-img + description: 闭眼修复 + category: AI影像.图片处理 + action: dify dify_config: production: url: "http://192.168.0.140:8090/v1" @@ -740,11 +839,6 @@ cases: url: "http://192.168.0.163:8090/v1" workflow_id: "efb1cd32-65e2-4119-875c-2eb06d8ddc56" api_key: "app-Uwhou6v8t01Ieri22FQYk3bP" - - - id: TC-0418-img - description: 闭眼修复 - category: AI影像.图片处理 - action: skipped - id: TC-0419-img @@ -771,6 +865,14 @@ cases: category: AI影像.视频处理 action: skipped + - id: TC-0422-txt + description: 音乐生成 + category: AI影像.音乐生成 + action: dify + dify_config: + production: *production_config + testing: *testing_config + - id: TC-0501-txt description: 公共服务查询(天气/交通路线/节假日等) category: AI生活.生活类问答 @@ -832,8 +934,8 @@ cases: dify_config: production: url: "http://192.168.0.140:8090/v1" - workflow_id: "375edfd9-bf28-4792-8f03-399b9201f6cf" - api_key: "app-dHfCMjyNgVwvny9oODgZNKui" + workflow_id: "f3c3a52f-1303-44fb-9af4-0963c7725dcf" + api_key: "app-IZK2SiBCaqQfHEO21DMy7o9j" testing: url: "http://192.168.0.163:8090/v1" workflow_id: "30ecb958-b56d-4b65-8713-f23945a8db91" @@ -922,7 +1024,107 @@ cases: description: AI播客生成 category: AI生活.咨询传播 action: skipped - + + - id: TC-0517-txt + description: 个人信息查询 + category: AI生活.生活服务 + action: skipped + + - id: TC-0518-img + description: AI壁纸 + category: AI生活.个性化推荐 + action: skipped + + - id: TC-0519-txt + description: 应用级翻译 + category: AI生活.跨语言服务 + action: skipped + + - id: TC-0520-txt + description: 智能打开付款码 + category: AI生活.购物/支付 + action: skipped + + - id: TC-0521-txt + description: 话费充值 + category: AI生活.生活服务 + action: skipped + + - id: TC-0522-txt + description: 点外卖 + category: AI生活.生活服务 + action: skipped + + - id: TC-0523-txt + description: 生活缴费 + category: AI生活.生活服务 + action: skipped + + - id: TC-0524-txt + description: 餐厅预定 + category: AI生活.生活服务 + action: skipped + + - id: TC-0525-txt + description: 电影预定 + category: AI生活.文娱消费服务 + action: skipped + + - id: TC-0526-txt + description: 演出预定 + category: AI生活.文娱消费服务 + action: skipped + + - id: TC-0527-txt + description: 快递查询 + category: AI生活.生活服务 + action: skipped + + - id: TC-0528-txt + description: 快递提醒 + category: AI生活.生活服务 + action: skipped + + - id: TC-0529-txt + description: 机票/酒店/火车票预定 + category: AI生活.智能出行 + action: skipped + + - id: TC-0530-txt + description: 出行推荐 + category: AI生活.智能出行 + action: skipped + + - id: TC-0531-txt + description: 出行提醒 + category: AI生活.日程提醒 + action: skipped + + - id: TC-0532-txt + description: 健康检测 + category: AI生活.运动健康 + action: skipped + + - id: TC-0533-txt + description: 健康风险预警(心律/睡眠) + category: AI生活.运动健康 + action: skipped + + - id: TC-0534-txt + description: 健身计划生成 + category: AI生活.运动健康 + action: skipped + + - id: TC-0535-txt + description: 声音修复 + category: AI生活.音频智能处理 + action: skipped + + - id: TC-0536-txt + description: 手语翻译 + category: AI生活.无障碍服务 + action: skipped + - id: TC-0601-audio description: 语音唤醒 category: 智能体基础测试.语音唤醒 diff --git a/uv.lock b/uv.lock index ee6ae0f..cf9a780 100644 --- a/uv.lock +++ b/uv.lock @@ -1,6 +1,6 @@ version = 1 revision = 2 -requires-python = "==3.12.6" +requires-python = ">3.12.5" [[package]] name = "adbutils" @@ -84,6 +84,23 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/ac/98/c193c1d1198571d988454e4ed75adc21c55af247a9fda08236602921c8c8/aiohttp-3.12.13-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e986067357550d1aaa21cfe9897fa19e680110551518a5a7cf44e6c5638cb8b5" }, { url = "https://mirrors.aliyun.com/pypi/packages/e7/9e/07bb8aa11eec762c6b1ff61575eeeb2657df11ab3d3abfa528d95f3e9337/aiohttp-3.12.13-cp312-cp312-win32.whl", hash = "sha256:ac941a80aeea2aaae2875c9500861a3ba356f9ff17b9cb2dbfb5cbf91baaf5bf" }, { url = "https://mirrors.aliyun.com/pypi/packages/52/66/3ce877e56ec0813069cdc9607cd979575859c597b6fb9b4182c6d5f31886/aiohttp-3.12.13-cp312-cp312-win_amd64.whl", hash = "sha256:671f41e6146a749b6c81cb7fd07f5a8356d46febdaaaf07b0e774ff04830461e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/11/0f/db19abdf2d86aa1deec3c1e0e5ea46a587b97c07a16516b6438428b3a3f8/aiohttp-3.12.13-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d4a18e61f271127465bdb0e8ff36e8f02ac4a32a80d8927aa52371e93cd87938" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d5/81/0ab551e1b5d7f1339e2d6eb482456ccbe9025605b28eed2b1c0203aaaade/aiohttp-3.12.13-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:532542cb48691179455fab429cdb0d558b5e5290b033b87478f2aa6af5d20ace" }, + { url = "https://mirrors.aliyun.com/pypi/packages/34/3f/6b7d336663337672d29b1f82d1f252ec1a040fe2d548f709d3f90fa2218a/aiohttp-3.12.13-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d7eea18b52f23c050ae9db5d01f3d264ab08f09e7356d6f68e3f3ac2de9dfabb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/26/7f/32ca0f170496aa2ab9b812630fac0c2372c531b797e1deb3deb4cea904bd/aiohttp-3.12.13-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad7c8e5c25f2a26842a7c239de3f7b6bfb92304593ef997c04ac49fb703ff4d7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ec/53/d5513624b33a811c0abea8461e30a732294112318276ce3dbf047dbd9d8b/aiohttp-3.12.13-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6af355b483e3fe9d7336d84539fef460120c2f6e50e06c658fe2907c69262d6b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/37/72/4c237dd127827b0247dc138d3ebd49c2ded6114c6991bbe969058575f25f/aiohttp-3.12.13-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a95cf9f097498f35c88e3609f55bb47b28a5ef67f6888f4390b3d73e2bac6177" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0d/67/8a7eb3afa01e9d0acc26e1ef847c1a9111f8b42b82955fcd9faeb84edeb4/aiohttp-3.12.13-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b8ed8c38a1c584fe99a475a8f60eefc0b682ea413a84c6ce769bb19a7ff1c5ef" }, + { url = "https://mirrors.aliyun.com/pypi/packages/48/19/0377df97dd0176ad23cd8cad4fd4232cfeadcec6c1b7f036315305c98e3f/aiohttp-3.12.13-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a0b9170d5d800126b5bc89d3053a2363406d6e327afb6afaeda2d19ee8bb103" }, + { url = "https://mirrors.aliyun.com/pypi/packages/61/97/ade1982a5c642b45f3622255173e40c3eed289c169f89d00eeac29a89906/aiohttp-3.12.13-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:372feeace612ef8eb41f05ae014a92121a512bd5067db8f25101dd88a8db11da" }, + { url = "https://mirrors.aliyun.com/pypi/packages/99/ab/00ad3eea004e1d07ccc406e44cfe2b8da5acb72f8c66aeeb11a096798868/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a946d3702f7965d81f7af7ea8fb03bb33fe53d311df48a46eeca17e9e0beed2d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3f/fe/74e5ce8b2ccaba445fe0087abc201bfd7259431d92ae608f684fcac5d143/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:a0c4725fae86555bbb1d4082129e21de7264f4ab14baf735278c974785cd2041" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ef/c4/39af17807f694f7a267bd8ab1fbacf16ad66740862192a6c8abac2bff813/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:9b28ea2f708234f0a5c44eb6c7d9eb63a148ce3252ba0140d050b091b6e842d1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/38/e8/f5a0a5f44f19f171d8477059aa5f28a158d7d57fe1a46c553e231f698435/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d4f5becd2a5791829f79608c6f3dc745388162376f310eb9c142c985f9441cc1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fd/ac/81acc594c7f529ef4419d3866913f628cd4fa9cab17f7bf410a5c3c04c53/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:60f2ce6b944e97649051d5f5cc0f439360690b73909230e107fd45a359d3e911" }, + { url = "https://mirrors.aliyun.com/pypi/packages/38/0d/aabe636bd25c6ab7b18825e5a97d40024da75152bec39aa6ac8b7a677630/aiohttp-3.12.13-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:69fc1909857401b67bf599c793f2183fbc4804717388b0b888f27f9929aa41f3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/ab/561ef2d8a223261683fb95a6283ad0d36cb66c87503f3a7dde7afe208bb2/aiohttp-3.12.13-cp313-cp313-win32.whl", hash = "sha256:7d7e68787a2046b0e44ba5587aa723ce05d711e3a3665b6b7545328ac8e3c0dd" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9d/47/b11d0089875a23bff0abd3edb5516bcd454db3fefab8604f5e4b07bd6210/aiohttp-3.12.13-cp313-cp313-win_amd64.whl", hash = "sha256:5a178390ca90419bfd41419a809688c368e63c86bd725e1186dd97f6b89c2706" }, ] [[package]] @@ -114,7 +131,7 @@ source = { registry = "https://mirrors.aliyun.com/pypi/simple/" } dependencies = [ { name = "idna" }, { name = "sniffio" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://mirrors.aliyun.com/pypi/packages/95/7d/4c1bd541d4dffa1b52bd83fb8527089e097a106fc90b467a7313b105f840/anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028" } wheels = [ @@ -158,6 +175,19 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/77/1a/5eefc0ce04affb98af07bc05f3bac9094513c0e23b0562d64af46a06aae4/charset_normalizer-3.4.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dedb8adb91d11846ee08bec4c8236c8549ac721c245678282dcb06b221aab59f" }, { url = "https://mirrors.aliyun.com/pypi/packages/37/a0/2410e5e6032a174c95e0806b1a6585eb21e12f445ebe239fac441995226a/charset_normalizer-3.4.2-cp312-cp312-win32.whl", hash = "sha256:db4c7bf0e07fc3b7d89ac2a5880a6a8062056801b83ff56d8464b70f65482b6c" }, { url = "https://mirrors.aliyun.com/pypi/packages/6c/4f/c02d5c493967af3eda9c771ad4d2bbc8df6f99ddbeb37ceea6e8716a32bc/charset_normalizer-3.4.2-cp312-cp312-win_amd64.whl", hash = "sha256:5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf" }, + { url = "https://mirrors.aliyun.com/pypi/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691" }, + { url = "https://mirrors.aliyun.com/pypi/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff" }, + { url = "https://mirrors.aliyun.com/pypi/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148" }, + { url = "https://mirrors.aliyun.com/pypi/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980" }, { url = "https://mirrors.aliyun.com/pypi/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0" }, ] @@ -280,6 +310,40 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/1c/80/9a0eb48b944050f94cc51ee1c413eb14a39543cc4f760ed12657a5a3c45a/frozenlist-1.7.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:290a172aae5a4c278c6da8a96222e6337744cd9c77313efe33d5670b9f65fc43" }, { url = "https://mirrors.aliyun.com/pypi/packages/f3/74/87601e0fb0369b7a2baf404ea921769c53b7ae00dee7dcfe5162c8c6dbf0/frozenlist-1.7.0-cp312-cp312-win32.whl", hash = "sha256:426c7bc70e07cfebc178bc4c2bf2d861d720c4fff172181eeb4a4c41d4ca2ad3" }, { url = "https://mirrors.aliyun.com/pypi/packages/0b/15/c026e9a9fc17585a9d461f65d8593d281fedf55fbf7eb53f16c6df2392f9/frozenlist-1.7.0-cp312-cp312-win_amd64.whl", hash = "sha256:563b72efe5da92e02eb68c59cb37205457c977aa7a449ed1b37e6939e5c47c6a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/24/90/6b2cebdabdbd50367273c20ff6b57a3dfa89bd0762de02c3a1eb42cb6462/frozenlist-1.7.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee80eeda5e2a4e660651370ebffd1286542b67e268aa1ac8d6dbe973120ef7ee" }, + { url = "https://mirrors.aliyun.com/pypi/packages/83/2e/5b70b6a3325363293fe5fc3ae74cdcbc3e996c2a11dde2fd9f1fb0776d19/frozenlist-1.7.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d1a81c85417b914139e3a9b995d4a1c84559afc839a93cf2cb7f15e6e5f6ed2d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f4/25/a0895c99270ca6966110f4ad98e87e5662eab416a17e7fd53c364bf8b954/frozenlist-1.7.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cbb65198a9132ebc334f237d7b0df163e4de83fb4f2bdfe46c1e654bdb0c5d43" }, + { url = "https://mirrors.aliyun.com/pypi/packages/19/7c/71bb0bbe0832793c601fff68cd0cf6143753d0c667f9aec93d3c323f4b55/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dab46c723eeb2c255a64f9dc05b8dd601fde66d6b19cdb82b2e09cc6ff8d8b5d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c0/45/ed2798718910fe6eb3ba574082aaceff4528e6323f9a8570be0f7028d8e9/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6aeac207a759d0dedd2e40745575ae32ab30926ff4fa49b1635def65806fddee" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ba/e2/8417ae0f8eacb1d071d4950f32f229aa6bf68ab69aab797b72a07ea68d4f/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bd8c4e58ad14b4fa7802b8be49d47993182fdd4023393899632c88fd8cd994eb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f8/b7/2ace5450ce85f2af05a871b8c8719b341294775a0a6c5585d5e6170f2ce7/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04fb24d104f425da3540ed83cbfc31388a586a7696142004c577fa61c6298c3f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/46/b9/6989292c5539553dba63f3c83dc4598186ab2888f67c0dc1d917e6887db6/frozenlist-1.7.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a5c505156368e4ea6b53b5ac23c92d7edc864537ff911d2fb24c140bb175e60" }, + { url = "https://mirrors.aliyun.com/pypi/packages/72/31/bc8c5c99c7818293458fe745dab4fd5730ff49697ccc82b554eb69f16a24/frozenlist-1.7.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8bd7eb96a675f18aa5c553eb7ddc24a43c8c18f22e1f9925528128c052cdbe00" }, + { url = "https://mirrors.aliyun.com/pypi/packages/59/52/460db4d7ba0811b9ccb85af996019f5d70831f2f5f255f7cc61f86199795/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:05579bf020096fe05a764f1f84cd104a12f78eaab68842d036772dc6d4870b4b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ba/c9/f4b39e904c03927b7ecf891804fd3b4df3db29b9e487c6418e37988d6e9d/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:376b6222d114e97eeec13d46c486facd41d4f43bab626b7c3f6a8b4e81a5192c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b8/33/3f8d6ced42f162d743e3517781566b8481322be321b486d9d262adf70bfb/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa7e176ebe115379b5b1c95b4096fb1c17cce0847402e227e712c27bdb5a949" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3e/e8/ad683e75da6ccef50d0ab0c2b2324b32f84fc88ceee778ed79b8e2d2fe2e/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3fbba20e662b9c2130dc771e332a99eff5da078b2b2648153a40669a6d0e36ca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b2/14/8d19ccdd3799310722195a72ac94ddc677541fb4bef4091d8e7775752360/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:f3f4410a0a601d349dd406b5713fec59b4cee7e71678d5b17edda7f4655a940b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ce/13/c12bf657494c2fd1079a48b2db49fa4196325909249a52d8f09bc9123fd7/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e2cdfaaec6a2f9327bf43c933c0319a7c429058e8537c508964a133dffee412e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d7/8b/e7f9dfde869825489382bc0d512c15e96d3964180c9499efcec72e85db7e/frozenlist-1.7.0-cp313-cp313-win32.whl", hash = "sha256:5fc4df05a6591c7768459caba1b342d9ec23fa16195e744939ba5914596ae3e1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl", hash = "sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba" }, + { url = "https://mirrors.aliyun.com/pypi/packages/56/d5/5c4cf2319a49eddd9dd7145e66c4866bdc6f3dbc67ca3d59685149c11e0d/frozenlist-1.7.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:a6f86e4193bb0e235ef6ce3dde5cbabed887e0b11f516ce8a0f4d3b33078ec2d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a4/7d/ec2c1e1dc16b85bc9d526009961953df9cec8481b6886debb36ec9107799/frozenlist-1.7.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:82d664628865abeb32d90ae497fb93df398a69bb3434463d172b80fc25b0dd7d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/69/86/f9596807b03de126e11e7d42ac91e3d0b19a6599c714a1989a4e85eeefc4/frozenlist-1.7.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:912a7e8375a1c9a68325a902f3953191b7b292aa3c3fb0d71a216221deca460b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5e/cb/df6de220f5036001005f2d726b789b2c0b65f2363b104bbc16f5be8084f8/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9537c2777167488d539bc5de2ad262efc44388230e5118868e172dd4a552b146" }, + { url = "https://mirrors.aliyun.com/pypi/packages/83/1f/de84c642f17c8f851a2905cee2dae401e5e0daca9b5ef121e120e19aa825/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:f34560fb1b4c3e30ba35fa9a13894ba39e5acfc5f60f57d8accde65f46cc5e74" }, + { url = "https://mirrors.aliyun.com/pypi/packages/88/3c/c840bfa474ba3fa13c772b93070893c6e9d5c0350885760376cbe3b6c1b3/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:acd03d224b0175f5a850edc104ac19040d35419eddad04e7cf2d5986d98427f1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a6/1c/3efa6e7d5a39a1d5ef0abeb51c48fb657765794a46cf124e5aca2c7a592c/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f2038310bc582f3d6a09b3816ab01737d60bf7b1ec70f5356b09e84fb7408ab1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4f/00/d5c5e09d4922c395e2f2f6b79b9a20dab4b67daaf78ab92e7729341f61f6/frozenlist-1.7.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b8c05e4c8e5f36e5e088caa1bf78a687528f83c043706640a92cb76cd6999384" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4e/27/72765be905619dfde25a7f33813ac0341eb6b076abede17a2e3fbfade0cb/frozenlist-1.7.0-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:765bb588c86e47d0b68f23c1bee323d4b703218037765dcf3f25c838c6fecceb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/88/67/c94103a23001b17808eb7dd1200c156bb69fb68e63fcf0693dde4cd6228c/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:32dc2e08c67d86d0969714dd484fd60ff08ff81d1a1e40a77dd34a387e6ebc0c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/42/34/a3e2c00c00f9e2a9db5653bca3fec306349e71aff14ae45ecc6d0951dd24/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:c0303e597eb5a5321b4de9c68e9845ac8f290d2ab3f3e2c864437d3c5a30cd65" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bb/73/f89b7fbce8b0b0c095d82b008afd0590f71ccb3dee6eee41791cf8cd25fd/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:a47f2abb4e29b3a8d0b530f7c3598badc6b134562b1a5caee867f7c62fee51e3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/cd/45/e365fdb554159462ca12df54bc59bfa7a9a273ecc21e99e72e597564d1ae/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:3d688126c242a6fabbd92e02633414d40f50bb6002fa4cf995a1d18051525657" }, + { url = "https://mirrors.aliyun.com/pypi/packages/00/11/47b6117002a0e904f004d70ec5194fe9144f117c33c851e3d51c765962d0/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:4e7e9652b3d367c7bd449a727dc79d5043f48b88d0cbfd4f9f1060cf2b414104" }, + { url = "https://mirrors.aliyun.com/pypi/packages/40/37/5f9f3c3fd7f7746082ec67bcdc204db72dad081f4f83a503d33220a92973/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:1a85e345b4c43db8b842cab1feb41be5cc0b10a1830e6295b69d7310f99becaf" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0b/31/8fbc5af2d183bff20f21aa743b4088eac4445d2bb1cdece449ae80e4e2d1/frozenlist-1.7.0-cp313-cp313t-win32.whl", hash = "sha256:3a14027124ddb70dfcee5148979998066897e79f89f64b13328595c4bdf77c81" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bb/ed/41956f52105b8dbc26e457c5705340c67c8cc2b79f394b79bffc09d0e938/frozenlist-1.7.0-cp313-cp313t-win_amd64.whl", hash = "sha256:3bf8010d71d4507775f658e9823210b7427be36625b387221642725b515dcf3e" }, { url = "https://mirrors.aliyun.com/pypi/packages/ee/45/b82e3c16be2182bff01179db177fe144d58b5dc787a7d4492c6ed8b9317f/frozenlist-1.7.0-py3-none-any.whl", hash = "sha256:9a5af342e34f7e97caf8c995864c7a396418ae2859cc6fdf1b1073020d516a7e" }, ] @@ -318,8 +382,8 @@ wheels = [ [[package]] name = "glrocky-sdk" -version = "0.4.3" -source = { path = "glrocky_sdk-0.4.3-py3-none-any.whl" } +version = "0.4.5" +source = { path = "glrocky_sdk-0.4.5-py3-none-any.whl" } dependencies = [ { name = "agno" }, { name = "dashscope" }, @@ -337,7 +401,7 @@ dependencies = [ { name = "uvicorn" }, ] wheels = [ - { filename = "glrocky_sdk-0.4.3-py3-none-any.whl", hash = "sha256:604769f87f7550bd1b2ef5c0bae1d48129ff05c255bb5c5156f1b3b684eb6268" }, + { filename = "glrocky_sdk-0.4.5-py3-none-any.whl", hash = "sha256:d3257b3869f2fc1312505164243182ad7e144fde0862a1c6b7f50a11e4da1d53" }, ] [package.metadata] @@ -410,7 +474,7 @@ dev = [ [package.metadata] requires-dist = [ - { name = "glrocky-sdk", path = "glrocky_sdk-0.4.3-py3-none-any.whl" }, + { name = "glrocky-sdk", path = "glrocky_sdk-0.4.5-py3-none-any.whl" }, { name = "uvicorn", specifier = ">=0.34.2" }, ] @@ -524,6 +588,34 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/2f/09/bc1661fbbcbeb6244bd2904ff3a06f340aa77a2b94e5a7373fd165960ea3/jiter-0.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:533efbce2cacec78d5ba73a41756beff8431dfa1694b6346ce7af3a12c42202b" }, { url = "https://mirrors.aliyun.com/pypi/packages/1b/84/5a5d5400e9d4d54b8004c9673bbe4403928a00d28529ff35b19e9d176b19/jiter-0.10.0-cp312-cp312-win32.whl", hash = "sha256:8be921f0cadd245e981b964dfbcd6fd4bc4e254cdc069490416dd7a2632ecc01" }, { url = "https://mirrors.aliyun.com/pypi/packages/9b/52/7ec47455e26f2d6e5f2ea4951a0652c06e5b995c291f723973ae9e724a65/jiter-0.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:a7c7d785ae9dda68c2678532a5a1581347e9c15362ae9f6e68f3fdbfb64f2e49" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2e/b0/279597e7a270e8d22623fea6c5d4eeac328e7d95c236ed51a2b884c54f70/jiter-0.10.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:e0588107ec8e11b6f5ef0e0d656fb2803ac6cf94a96b2b9fc675c0e3ab5e8644" }, + { url = "https://mirrors.aliyun.com/pypi/packages/91/e3/0916334936f356d605f54cc164af4060e3e7094364add445a3bc79335d46/jiter-0.10.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cafc4628b616dc32530c20ee53d71589816cf385dd9449633e910d596b1f5c8a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/6a/8e/fd94e8c02d0e94539b7d669a7ebbd2776e51f329bb2c84d4385e8063a2ad/jiter-0.10.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:520ef6d981172693786a49ff5b09eda72a42e539f14788124a07530f785c3ad6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/6f/b0/f9f0a2ec42c6e9c2e61c327824687f1e2415b767e1089c1d9135f43816bd/jiter-0.10.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:554dedfd05937f8fc45d17ebdf298fe7e0c77458232bcb73d9fbbf4c6455f5b3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e8/57/5bbcd5331910595ad53b9fd0c610392ac68692176f05ae48d6ce5c852967/jiter-0.10.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5bc299da7789deacf95f64052d97f75c16d4fc8c4c214a22bf8d859a4288a1c2" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9b/be/c393df00e6e6e9e623a73551774449f2f23b6ec6a502a3297aeeece2c65a/jiter-0.10.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5161e201172de298a8a1baad95eb85db4fb90e902353b1f6a41d64ea64644e25" }, + { url = "https://mirrors.aliyun.com/pypi/packages/42/3e/df2235c54d365434c7f150b986a6e35f41ebdc2f95acea3036d99613025d/jiter-0.10.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e2227db6ba93cb3e2bf67c87e594adde0609f146344e8207e8730364db27041" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c6/77/71b0b24cbcc28f55ab4dbfe029f9a5b73aeadaba677843fc6dc9ed2b1d0a/jiter-0.10.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:15acb267ea5e2c64515574b06a8bf393fbfee6a50eb1673614aa45f4613c0cca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/6a/d3/ef774b6969b9b6178e1d1e7a89a3bd37d241f3d3ec5f8deb37bbd203714a/jiter-0.10.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:901b92f2e2947dc6dfcb52fd624453862e16665ea909a08398dde19c0731b7f4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0c/41/9becdb1d8dd5d854142f45a9d71949ed7e87a8e312b0bede2de849388cb9/jiter-0.10.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:d0cb9a125d5a3ec971a094a845eadde2db0de85b33c9f13eb94a0c63d463879e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9c/36/3468e5a18238bdedae7c4d19461265b5e9b8e288d3f86cd89d00cbb48686/jiter-0.10.0-cp313-cp313-win32.whl", hash = "sha256:48a403277ad1ee208fb930bdf91745e4d2d6e47253eedc96e2559d1e6527006d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7e/07/1c96b623128bcb913706e294adb5f768fb7baf8db5e1338ce7b4ee8c78ef/jiter-0.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:75f9eb72ecb640619c29bf714e78c9c46c9c4eaafd644bf78577ede459f330d4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/54/46/caa2c1342655f57d8f0f2519774c6d67132205909c65e9aa8255e1d7b4f4/jiter-0.10.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:28ed2a4c05a1f32ef0e1d24c2611330219fed727dae01789f4a335617634b1ca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/43/84/c7d44c75767e18946219ba2d703a5a32ab37b0bc21886a97bc6062e4da42/jiter-0.10.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14a4c418b1ec86a195f1ca69da8b23e8926c752b685af665ce30777233dfe070" }, + { url = "https://mirrors.aliyun.com/pypi/packages/01/16/f5a0135ccd968b480daad0e6ab34b0c7c5ba3bc447e5088152696140dcb3/jiter-0.10.0-cp313-cp313t-win_amd64.whl", hash = "sha256:d7bfed2fe1fe0e4dda6ef682cee888ba444b21e7a6553e03252e4feb6cf0adca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1c/9b/1d646da42c3de6c2188fdaa15bce8ecb22b635904fc68be025e21249ba44/jiter-0.10.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:5e9251a5e83fab8d87799d3e1a46cb4b7f2919b895c6f4483629ed2446f66522" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ad/0e/26538b158e8a7c7987e94e7aeb2999e2e82b1f9d2e1f6e9874ddf71ebda0/jiter-0.10.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:023aa0204126fe5b87ccbcd75c8a0d0261b9abdbbf46d55e7ae9f8e22424eeb8" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7b/fb/d302893151caa1c2636d6574d213e4b34e31fd077af6050a9c5cbb42f6fb/jiter-0.10.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c189c4f1779c05f75fc17c0c1267594ed918996a231593a21a5ca5438445216" }, + { url = "https://mirrors.aliyun.com/pypi/packages/01/d8/5780b64a149d74e347c5128d82176eb1e3241b1391ac07935693466d6219/jiter-0.10.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:15720084d90d1098ca0229352607cd68256c76991f6b374af96f36920eae13c4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e8/5b/f235a1437445160e777544f3ade57544daf96ba7e96c1a5b24a6f7ac7004/jiter-0.10.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4f2fb68e5f1cfee30e2b2a09549a00683e0fde4c6a2ab88c94072fc33cb7426" }, + { url = "https://mirrors.aliyun.com/pypi/packages/85/a9/9c3d4617caa2ff89cf61b41e83820c27ebb3f7b5fae8a72901e8cd6ff9be/jiter-0.10.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ce541693355fc6da424c08b7edf39a2895f58d6ea17d92cc2b168d20907dee12" }, + { url = "https://mirrors.aliyun.com/pypi/packages/68/b1/344fd14049ba5c94526540af7eb661871f9c54d5f5601ff41a959b9a0bbd/jiter-0.10.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:31c50c40272e189d50006ad5c73883caabb73d4e9748a688b216e85a9a9ca3b9" }, + { url = "https://mirrors.aliyun.com/pypi/packages/41/89/4c0e345041186f82a31aee7b9d4219a910df672b9fef26f129f0cda07a29/jiter-0.10.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fa3402a2ff9815960e0372a47b75c76979d74402448509ccd49a275fa983ef8a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/55/58/ee607863e18d3f895feb802154a2177d7e823a7103f000df182e0f718b38/jiter-0.10.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:1956f934dca32d7bb647ea21d06d93ca40868b505c228556d3373cbd255ce853" }, + { url = "https://mirrors.aliyun.com/pypi/packages/15/d0/9123fb41825490d16929e73c212de9a42913d68324a8ce3c8476cae7ac9d/jiter-0.10.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:fcedb049bdfc555e261d6f65a6abe1d5ad68825b7202ccb9692636c70fcced86" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d8/b3/2bd02071c5a2430d0b70403a34411fc519c2f227da7b03da9ba6a956f931/jiter-0.10.0-cp314-cp314-win32.whl", hash = "sha256:ac509f7eccca54b2a29daeb516fb95b6f0bd0d0d8084efaf8ed5dfc7b9f0b357" }, + { url = "https://mirrors.aliyun.com/pypi/packages/03/0c/5fe86614ea050c3ecd728ab4035534387cd41e7c1855ef6c031f1ca93e3f/jiter-0.10.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:5ed975b83a2b8639356151cef5c0d597c68376fc4922b45d0eb384ac058cfa00" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b3/4a/4175a563579e884192ba6e81725fc0448b042024419be8d83aa8a80a3f44/jiter-0.10.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aa96f2abba33dc77f79b4cf791840230375f9534e5fac927ccceb58c5e604a5" }, ] [[package]] @@ -611,6 +703,23 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/2b/11/06710dd809205377da380546f91d2ac94bad9ff735a72b64ec029f706c85/lxml-5.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aea53d51859b6c64e7c51d522c03cc2c48b9b5d6172126854cc7f01aa11f52bc" }, { url = "https://mirrors.aliyun.com/pypi/packages/f5/b0/15b6217834b5e3a59ebf7f53125e08e318030e8cc0d7310355e6edac98ef/lxml-5.4.0-cp312-cp312-win32.whl", hash = "sha256:d90b729fd2732df28130c064aac9bb8aff14ba20baa4aee7bd0795ff1187545f" }, { url = "https://mirrors.aliyun.com/pypi/packages/91/1e/05ddcb57ad2f3069101611bd5f5084157d90861a2ef460bf42f45cced944/lxml-5.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:1dc4ca99e89c335a7ed47d38964abcb36c5910790f9bd106f2a8fa2ee0b909d2" }, + { url = "https://mirrors.aliyun.com/pypi/packages/87/cb/2ba1e9dd953415f58548506fa5549a7f373ae55e80c61c9041b7fd09a38a/lxml-5.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:773e27b62920199c6197130632c18fb7ead3257fce1ffb7d286912e56ddb79e0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b5/3e/6602a4dca3ae344e8609914d6ab22e52ce42e3e1638c10967568c5c1450d/lxml-5.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ce9c671845de9699904b1e9df95acfe8dfc183f2310f163cdaa91a3535af95de" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4c/72/bf00988477d3bb452bef9436e45aeea82bb40cdfb4684b83c967c53909c7/lxml-5.4.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9454b8d8200ec99a224df8854786262b1bd6461f4280064c807303c642c05e76" }, + { url = "https://mirrors.aliyun.com/pypi/packages/92/1f/93e42d93e9e7a44b2d3354c462cd784dbaaf350f7976b5d7c3f85d68d1b1/lxml-5.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cccd007d5c95279e529c146d095f1d39ac05139de26c098166c4beb9374b0f4d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/45/0b/363009390d0b461cf9976a499e83b68f792e4c32ecef092f3f9ef9c4ba54/lxml-5.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0fce1294a0497edb034cb416ad3e77ecc89b313cff7adbee5334e4dc0d11f422" }, + { url = "https://mirrors.aliyun.com/pypi/packages/19/dc/6056c332f9378ab476c88e301e6549a0454dbee8f0ae16847414f0eccb74/lxml-5.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:24974f774f3a78ac12b95e3a20ef0931795ff04dbb16db81a90c37f589819551" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ee/8a/f8c66bbb23ecb9048a46a5ef9b495fd23f7543df642dabeebcb2eeb66592/lxml-5.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:497cab4d8254c2a90bf988f162ace2ddbfdd806fce3bda3f581b9d24c852e03c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/04/57/2e537083c3f381f83d05d9b176f0d838a9e8961f7ed8ddce3f0217179ce3/lxml-5.4.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:e794f698ae4c5084414efea0f5cc9f4ac562ec02d66e1484ff822ef97c2cadff" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d8/80/ea8c4072109a350848f1157ce83ccd9439601274035cd045ac31f47f3417/lxml-5.4.0-cp313-cp313-manylinux_2_28_ppc64le.whl", hash = "sha256:2c62891b1ea3094bb12097822b3d44b93fc6c325f2043c4d2736a8ff09e65f60" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b3/47/c4be287c48cdc304483457878a3f22999098b9a95f455e3c4bda7ec7fc72/lxml-5.4.0-cp313-cp313-manylinux_2_28_s390x.whl", hash = "sha256:142accb3e4d1edae4b392bd165a9abdee8a3c432a2cca193df995bc3886249c8" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2f/04/6ef935dc74e729932e39478e44d8cfe6a83550552eaa072b7c05f6f22488/lxml-5.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:1a42b3a19346e5601d1b8296ff6ef3d76038058f311902edd574461e9c036982" }, + { url = "https://mirrors.aliyun.com/pypi/packages/cb/f9/c33fc8daa373ef8a7daddb53175289024512b6619bc9de36d77dca3df44b/lxml-5.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4291d3c409a17febf817259cb37bc62cb7eb398bcc95c1356947e2871911ae61" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8d/30/fc92bb595bcb878311e01b418b57d13900f84c2b94f6eca9e5073ea756e6/lxml-5.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4f5322cf38fe0e21c2d73901abf68e6329dc02a4994e483adbcf92b568a09a54" }, + { url = "https://mirrors.aliyun.com/pypi/packages/43/d1/3ba7bd978ce28bba8e3da2c2e9d5ae3f8f521ad3f0ca6ea4788d086ba00d/lxml-5.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0be91891bdb06ebe65122aa6bf3fc94489960cf7e03033c6f83a90863b23c58b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ee/cd/95fa2201041a610c4d08ddaf31d43b98ecc4b1d74b1e7245b1abdab443cb/lxml-5.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:15a665ad90054a3d4f397bc40f73948d48e36e4c09f9bcffc7d90c87410e478a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2d/a6/31da006fead660b9512d08d23d31e93ad3477dd47cc42e3285f143443176/lxml-5.4.0-cp313-cp313-win32.whl", hash = "sha256:d5663bc1b471c79f5c833cffbc9b87d7bf13f87e055a5c86c363ccd2348d7e82" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fc/14/c115516c62a7d2499781d2d3d7215218c0731b2c940753bf9f9b7b73924d/lxml-5.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:bcb7a1096b4b6b24ce1ac24d4942ad98f983cd3810f9711bcd0293f43a9d8b9f" }, ] [[package]] @@ -641,6 +750,26 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/a2/82/8be4c96ffee03c5b4a034e60a31294daf481e12c7c43ab8e34a1453ee48b/MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48" }, { url = "https://mirrors.aliyun.com/pypi/packages/51/ae/97827349d3fcffee7e184bdf7f41cd6b88d9919c80f0263ba7acd1bbcb18/MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30" }, { url = "https://mirrors.aliyun.com/pypi/packages/c1/80/a61f99dc3a936413c3ee4e1eecac96c0da5ed07ad56fd975f1a9da5bc630/MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87" }, + { url = "https://mirrors.aliyun.com/pypi/packages/83/0e/67eb10a7ecc77a0c2bbe2b0235765b98d164d81600746914bebada795e97/MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/6d/9409f3684d3335375d04e5f05744dfe7e9f120062c9857df4ab490a1031a/MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d2/f5/6eadfcd3885ea85fe2a7c128315cc1bb7241e1987443d78c8fe712d03091/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0c/91/96cf928db8236f1bfab6ce15ad070dfdd02ed88261c2afafd4b43575e9e9/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c2/cf/c9d56af24d56ea04daae7ac0940232d31d5a8354f2b457c6d856b2057d69/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2a/9f/8619835cd6a711d6272d62abb78c033bda638fdc54c4e7f4272cf1c0962b/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f9/bf/176950a1792b2cd2102b8ffeb5133e1ed984547b75db47c25a67d3359f77/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ce/4f/9a02c1d335caabe5c4efb90e1b6e8ee944aa245c1aaaab8e8a618987d816/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ee/55/c271b57db36f748f0e04a759ace9f8f759ccf22b4960c270c78a394f58be/MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/62/6a/8b89d24db2d32d433dffcd6a8779159da109842434f1dd2f6e71f32f738c/MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7a/06/a10f955f70a2e5a9bf78d11a161029d278eeacbd35ef806c3fd17b13060d/MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/34/cf/65d4a571869a1a9078198ca28f39fba5fbb910f952f9dbc5220afff9f5e6/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0c/e3/90e9651924c430b885468b56b3d597cabf6d72be4b24a0acd1fa0e12af67/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/66/8c/6c7cf61f95d63bb866db39085150df1f2a5bd3335298f14a66b48e92659c/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bb/35/cbe9238ec3f47ac9a7c8b3df7a808e7cb50fe149dc7039f5f454b3fba218/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e6/32/7621a4382488aa283cc05e8984a9c219abad3bca087be9ec77e89939ded9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0d/80/0985960e4b89922cb5a0bac0ed39c5b96cbc1a536a99f30e8c220a996ed9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9" }, + { url = "https://mirrors.aliyun.com/pypi/packages/82/78/fedb03c7d5380df2427038ec8d973587e90561b2d90cd472ce9254cf348b/MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f" }, ] [[package]] @@ -676,6 +805,42 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/6f/5c/4d7adc739884f7a9fbe00d1eac8c034023ef8bad71f2ebe12823ca2e3649/multidict-6.6.3-cp312-cp312-win32.whl", hash = "sha256:73ab034fb8d58ff85c2bcbadc470efc3fafeea8affcf8722855fb94557f14cc5" }, { url = "https://mirrors.aliyun.com/pypi/packages/6a/a3/0fbc7afdf7cb1aa12a086b02959307848eb6bcc8f66fcb66c0cb57e2a2c1/multidict-6.6.3-cp312-cp312-win_amd64.whl", hash = "sha256:04cbcce84f63b9af41bad04a54d4cc4e60e90c35b9e6ccb130be2d75b71f8c17" }, { url = "https://mirrors.aliyun.com/pypi/packages/b8/95/8c825bd70ff9b02462dc18d1295dd08d3e9e4eb66856d292ffa62cfe1920/multidict-6.6.3-cp312-cp312-win_arm64.whl", hash = "sha256:0f1130b896ecb52d2a1e615260f3ea2af55fa7dc3d7c3003ba0c3121a759b18b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/52/1d/0bebcbbb4f000751fbd09957257903d6e002943fc668d841a4cf2fb7f872/multidict-6.6.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:540d3c06d48507357a7d57721e5094b4f7093399a0106c211f33540fdc374d55" }, + { url = "https://mirrors.aliyun.com/pypi/packages/07/8f/cbe241b0434cfe257f65c2b1bcf9e8d5fb52bc708c5061fb29b0fed22bdf/multidict-6.6.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9c19cea2a690f04247d43f366d03e4eb110a0dc4cd1bbeee4d445435428ed35b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/32/d2/0b3b23f9dbad5b270b22a3ac3ea73ed0a50ef2d9a390447061178ed6bdb8/multidict-6.6.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7af039820cfd00effec86bda5d8debef711a3e86a1d3772e85bea0f243a4bd65" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fd/fe/6eb68927e823999e3683bc49678eb20374ba9615097d085298fd5b386564/multidict-6.6.3-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:500b84f51654fdc3944e936f2922114349bf8fdcac77c3092b03449f0e5bc2b3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e7/ab/320d8507e7726c460cb77117848b3834ea0d59e769f36fdae495f7669929/multidict-6.6.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f3fc723ab8a5c5ed6c50418e9bfcd8e6dceba6c271cee6728a10a4ed8561520c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/76/60/38ee422db515ac69834e60142a1a69111ac96026e76e8e9aa347fd2e4591/multidict-6.6.3-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:94c47ea3ade005b5976789baaed66d4de4480d0a0bf31cef6edaa41c1e7b56a6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/27/fb/905224fde2dff042b030c27ad95a7ae744325cf54b890b443d30a789b80e/multidict-6.6.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:dbc7cf464cc6d67e83e136c9f55726da3a30176f020a36ead246eceed87f1cd8" }, + { url = "https://mirrors.aliyun.com/pypi/packages/76/35/dc38ab361051beae08d1a53965e3e1a418752fc5be4d3fb983c5582d8784/multidict-6.6.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:900eb9f9da25ada070f8ee4a23f884e0ee66fe4e1a38c3af644256a508ad81ca" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/a3/0a485b7f36e422421b17e2bbb5a81c1af10eac1d4476f2ff92927c730479/multidict-6.6.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7c6df517cf177da5d47ab15407143a89cd1a23f8b335f3a28d57e8b0a3dbb884" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b4/59/bcdd52c1dab7c0e0d75ff19cac751fbd5f850d1fc39172ce809a74aa9ea4/multidict-6.6.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4ef421045f13879e21c994b36e728d8e7d126c91a64b9185810ab51d474f27e7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bb/a4/2d96aaa6eae8067ce108d4acee6f45ced5728beda55c0f02ae1072c730d1/multidict-6.6.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:6c1e61bb4f80895c081790b6b09fa49e13566df8fbff817da3f85b3a8192e36b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/25/d2/ed9f847fa5c7d0677d4f02ea2c163d5e48573de3f57bacf5670e43a5ffaa/multidict-6.6.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:e5e8523bb12d7623cd8300dbd91b9e439a46a028cd078ca695eb66ba31adee3c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/af/9155850372563fc550803d3f25373308aa70f59b52cff25854086ecb4a79/multidict-6.6.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:ef58340cc896219e4e653dade08fea5c55c6df41bcc68122e3be3e9d873d9a7b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/36/2f/c6a728f699896252cf309769089568a33c6439626648843f78743660709d/multidict-6.6.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:fc9dc435ec8699e7b602b94fe0cd4703e69273a01cbc34409af29e7820f777f1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d0/60/689880776d6b18fa2b70f6cc74ff87dd6c6b9b47bd9cf74c16fecfaa6ad9/multidict-6.6.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9e864486ef4ab07db5e9cb997bad2b681514158d6954dd1958dfb163b83d53e6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/75/5e/325b11f2222a549019cf2ef879c1f81f94a0d40ace3ef55cf529915ba6cc/multidict-6.6.3-cp313-cp313-win32.whl", hash = "sha256:5633a82fba8e841bc5c5c06b16e21529573cd654f67fd833650a215520a6210e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b1/ad/cf46e73f5d6e3c775cabd2a05976547f3f18b39bee06260369a42501f053/multidict-6.6.3-cp313-cp313-win_amd64.whl", hash = "sha256:e93089c1570a4ad54c3714a12c2cef549dc9d58e97bcded193d928649cab78e9" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c5/c9/2e3fe950db28fb7c62e1a5f46e1e38759b072e2089209bc033c2798bb5ec/multidict-6.6.3-cp313-cp313-win_arm64.whl", hash = "sha256:c60b401f192e79caec61f166da9c924e9f8bc65548d4246842df91651e83d600" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3a/58/aaf8114cf34966e084a8cc9517771288adb53465188843d5a19862cb6dc3/multidict-6.6.3-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:02fd8f32d403a6ff13864b0851f1f523d4c988051eea0471d4f1fd8010f11134" }, + { url = "https://mirrors.aliyun.com/pypi/packages/71/af/5402e7b58a1f5b987a07ad98f2501fdba2a4f4b4c30cf114e3ce8db64c87/multidict-6.6.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:f3aa090106b1543f3f87b2041eef3c156c8da2aed90c63a2fbed62d875c49c37" }, + { url = "https://mirrors.aliyun.com/pypi/packages/39/65/ab3c8cafe21adb45b24a50266fd747147dec7847425bc2a0f6934b3ae9ce/multidict-6.6.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e924fb978615a5e33ff644cc42e6aa241effcf4f3322c09d4f8cebde95aff5f8" }, + { url = "https://mirrors.aliyun.com/pypi/packages/49/ba/9fcc1b332f67cc0c0c8079e263bfab6660f87fe4e28a35921771ff3eea0d/multidict-6.6.3-cp313-cp313t-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:b9fe5a0e57c6dbd0e2ce81ca66272282c32cd11d31658ee9553849d91289e1c1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a4/14/0145a251f555f7c754ce2dcbcd012939bbd1f34f066fa5d28a50e722a054/multidict-6.6.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b24576f208793ebae00280c59927c3b7c2a3b1655e443a25f753c4611bc1c373" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9e/d4/d5c0bd2bbb173b586c249a151a26d2fb3ec7d53c96e42091c9fef4e1f10c/multidict-6.6.3-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:135631cb6c58eac37d7ac0df380294fecdc026b28837fa07c02e459c7fb9c54e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/21/32/c9a2d8444a50ec48c4733ccc67254100c10e1c8ae8e40c7a2d2183b59b97/multidict-6.6.3-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:274d416b0df887aef98f19f21578653982cfb8a05b4e187d4a17103322eeaf8f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/68/d0/14fa1699f4ef629eae08ad6201c6b476098f5efb051b296f4c26be7a9fdf/multidict-6.6.3-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:e252017a817fad7ce05cafbe5711ed40faeb580e63b16755a3a24e66fa1d87c0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/da/88/84a27570fbe303c65607d517a5f147cd2fc046c2d1da02b84b17b9bdc2aa/multidict-6.6.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2e4cc8d848cd4fe1cdee28c13ea79ab0ed37fc2e89dd77bac86a2e7959a8c3bc" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1c/60/dca352a0c999ce96a5d8b8ee0b2b9f729dcad2e0b0c195f8286269a2074c/multidict-6.6.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9e236a7094b9c4c1b7585f6b9cca34b9d833cf079f7e4c49e6a4a6ec9bfdc68f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/50/ef/433fa3ed06028f03946f3993223dada70fb700f763f70c00079533c34578/multidict-6.6.3-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:e0cb0ab69915c55627c933f0b555a943d98ba71b4d1c57bc0d0a66e2567c7471" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1b/1f/487612ab56fbe35715320905215a57fede20de7db40a261759690dc80471/multidict-6.6.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:81ef2f64593aba09c5212a3d0f8c906a0d38d710a011f2f42759704d4557d3f2" }, + { url = "https://mirrors.aliyun.com/pypi/packages/da/6f/ce8b79de16cd885c6f9052c96a3671373d00c59b3ee635ea93e6e81b8ccf/multidict-6.6.3-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:b9cbc60010de3562545fa198bfc6d3825df430ea96d2cc509c39bd71e2e7d648" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bb/fe/a2514a6aba78e5abefa1624ca85ae18f542d95ac5cde2e3815a9fbf369aa/multidict-6.6.3-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:70d974eaaa37211390cd02ef93b7e938de564bbffa866f0b08d07e5e65da783d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8c/22/b788718d63bb3cce752d107a57c85fcd1a212c6c778628567c9713f9345a/multidict-6.6.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3713303e4a6663c6d01d648a68f2848701001f3390a030edaaf3fc949c90bf7c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/22/d6/fdb3d0670819f2228f3f7d9af613d5e652c15d170c83e5f1c94fbc55a25b/multidict-6.6.3-cp313-cp313t-win32.whl", hash = "sha256:639ecc9fe7cd73f2495f62c213e964843826f44505a3e5d82805aa85cac6f89e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b6/d6/a9d2c808f2c489ad199723197419207ecbfbc1776f6e155e1ecea9c883aa/multidict-6.6.3-cp313-cp313t-win_amd64.whl", hash = "sha256:9f97e181f344a0ef3881b573d31de8542cc0dbc559ec68c8f8b5ce2c2e91646d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f2/40/b68001cba8188dd267590a111f9661b6256debc327137667e832bf5d66e8/multidict-6.6.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ce8b7693da41a3c4fde5871c738a81490cea5496c671d74374c8ab889e1834fb" }, { url = "https://mirrors.aliyun.com/pypi/packages/d8/30/9aec301e9772b098c1f5c0ca0279237c9766d94b97802e9888010c64b0ed/multidict-6.6.3-py3-none-any.whl", hash = "sha256:8db10f29c7541fc5da4defd8cd697e1ca429db743fa716325f236079b96f775a" }, ] @@ -724,6 +889,28 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/96/ae/ca0099a3995976a9fce2f423166f7bff9b12244afdc7520f6ed38911539a/pillow-11.2.1-cp312-cp312-win32.whl", hash = "sha256:1d535df14716e7f8776b9e7fee118576d65572b4aad3ed639be9e4fa88a1cad3" }, { url = "https://mirrors.aliyun.com/pypi/packages/7c/18/24bff2ad716257fc03da964c5e8f05d9790a779a8895d6566e493ccf0189/pillow-11.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:14e33b28bf17c7a38eede290f77db7c664e4eb01f7869e37fa98a5aa95978941" }, { url = "https://mirrors.aliyun.com/pypi/packages/da/bb/e8d656c9543276517ee40184aaa39dcb41e683bca121022f9323ae11b39d/pillow-11.2.1-cp312-cp312-win_arm64.whl", hash = "sha256:21e1470ac9e5739ff880c211fc3af01e3ae505859392bf65458c224d0bf283eb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/36/9c/447528ee3776e7ab8897fe33697a7ff3f0475bb490c5ac1456a03dc57956/pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b5/09/29d5cd052f7566a63e5b506fac9c60526e9ecc553825551333e1e18a4858/pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830" }, + { url = "https://mirrors.aliyun.com/pypi/packages/71/5d/446ee132ad35e7600652133f9c2840b4799bbd8e4adba881284860da0a36/pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/69/5f/cbe509c0ddf91cc3a03bbacf40e5c2339c4912d16458fcb797bb47bcb269/pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f9/b3/dd4338d8fb8a5f312021f2977fb8198a1184893f9b00b02b75d565c33b51/pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/13/eb/2552ecebc0b887f539111c2cd241f538b8ff5891b8903dfe672e997529be/pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155" }, + { url = "https://mirrors.aliyun.com/pypi/packages/72/d1/924ce51bea494cb6e7959522d69d7b1c7e74f6821d84c63c3dc430cbbf3b/pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14" }, + { url = "https://mirrors.aliyun.com/pypi/packages/43/ab/8f81312d255d713b99ca37479a4cb4b0f48195e530cdc1611990eb8fd04b/pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/94/86/8f2e9d2dc3d308dfd137a07fe1cc478df0a23d42a6c4093b087e738e4827/pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2" }, + { url = "https://mirrors.aliyun.com/pypi/packages/6d/ec/1179083b8d6067a613e4d595359b5fdea65d0a3b7ad623fee906e1b3c4d2/pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691" }, + { url = "https://mirrors.aliyun.com/pypi/packages/23/f1/2fc1e1e294de897df39fa8622d829b8828ddad938b0eaea256d65b84dd72/pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c4/3e/c328c48b3f0ead7bab765a84b4977acb29f101d10e4ef57a5e3400447c03/pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22" }, + { url = "https://mirrors.aliyun.com/pypi/packages/18/0e/1c68532d833fc8b9f404d3a642991441d9058eccd5606eab31617f29b6d4/pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b7/cb/6faf3fb1e7705fd2db74e070f3bf6f88693601b0ed8e81049a8266de4754/pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16" }, + { url = "https://mirrors.aliyun.com/pypi/packages/07/94/8be03d50b70ca47fb434a358919d6a8d6580f282bbb7af7e4aa40103461d/pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fd/a4/bfe78777076dc405e3bd2080bc32da5ab3945b5a25dc5d8acaa9de64a162/pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406" }, + { url = "https://mirrors.aliyun.com/pypi/packages/65/4d/eaf9068dc687c24979e977ce5677e253624bd8b616b286f543f0c1b91662/pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1d/26/0fd443365d9c63bc79feb219f97d935cd4b93af28353cba78d8e77b61719/pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751" }, + { url = "https://mirrors.aliyun.com/pypi/packages/49/65/dca4d2506be482c2c6641cacdba5c602bc76d8ceb618fd37de855653a419/pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b3/92/1ca0c3f09233bd7decf8f7105a1c4e3162fb9142128c74adad0fb361b7eb/pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a5/ac/77525347cb43b83ae905ffe257bbe2cc6fd23acb9796639a1f56aa59d191/pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/67/32/32dc030cfa91ca0fc52baebbba2e009bb001122a1daa8b6a79ad830b38d3/pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681" }, ] [[package]] @@ -757,6 +944,38 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/a4/7c/3f539fcae630408d0bd8bf3208b9a647ccad10976eda62402a80adf8fc34/propcache-0.3.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:62b4239611205294cc433845b914131b2a1f03500ff3c1ed093ed216b82621e1" }, { url = "https://mirrors.aliyun.com/pypi/packages/7c/d2/34b9eac8c35f79f8a962546b3e97e9d4b990c420ee66ac8255d5d9611648/propcache-0.3.2-cp312-cp312-win32.whl", hash = "sha256:df4a81b9b53449ebc90cc4deefb052c1dd934ba85012aa912c7ea7b7e38b60c1" }, { url = "https://mirrors.aliyun.com/pypi/packages/19/61/d582be5d226cf79071681d1b46b848d6cb03d7b70af7063e33a2787eaa03/propcache-0.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:7046e79b989d7fe457bb755844019e10f693752d169076138abf17f31380800c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/dc/d1/8c747fafa558c603c4ca19d8e20b288aa0c7cda74e9402f50f31eb65267e/propcache-0.3.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ca592ed634a73ca002967458187109265e980422116c0a107cf93d81f95af945" }, + { url = "https://mirrors.aliyun.com/pypi/packages/61/99/d606cb7986b60d89c36de8a85d58764323b3a5ff07770a99d8e993b3fa73/propcache-0.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9ecb0aad4020e275652ba3975740f241bd12a61f1a784df044cf7477a02bc252" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8c/96/ef98f91bbb42b79e9bb82bdd348b255eb9d65f14dbbe3b1594644c4073f7/propcache-0.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7f08f1cc28bd2eade7a8a3d2954ccc673bb02062e3e7da09bc75d843386b342f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5b/ad/3f0f9a705fb630d175146cd7b1d2bf5555c9beaed54e94132b21aac098a6/propcache-0.3.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1a342c834734edb4be5ecb1e9fb48cb64b1e2320fccbd8c54bf8da8f2a84c33" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3a/38/2085cda93d2c8b6ec3e92af2c89489a36a5886b712a34ab25de9fbca7992/propcache-0.3.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8a544caaae1ac73f1fecfae70ded3e93728831affebd017d53449e3ac052ac1e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/61/c1/d72ea2dc83ac7f2c8e182786ab0fc2c7bd123a1ff9b7975bee671866fe5f/propcache-0.3.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:310d11aa44635298397db47a3ebce7db99a4cc4b9bbdfcf6c98a60c8d5261cf1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/af/81/b324c44ae60c56ef12007105f1460d5c304b0626ab0cc6b07c8f2a9aa0b8/propcache-0.3.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c1396592321ac83157ac03a2023aa6cc4a3cc3cfdecb71090054c09e5a7cce3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/09/73/88549128bb89e66d2aff242488f62869014ae092db63ccea53c1cc75a81d/propcache-0.3.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cabf5b5902272565e78197edb682017d21cf3b550ba0460ee473753f28d23c1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b9/3f/3bdd14e737d145114a5eb83cb172903afba7242f67c5877f9909a20d948d/propcache-0.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0a2f2235ac46a7aa25bdeb03a9e7060f6ecbd213b1f9101c43b3090ffb971ef6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0f/ca/2f4aa819c357d3107c3763d7ef42c03980f9ed5c48c82e01e25945d437c1/propcache-0.3.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:92b69e12e34869a6970fd2f3da91669899994b47c98f5d430b781c26f1d9f387" }, + { url = "https://mirrors.aliyun.com/pypi/packages/cd/4a/e65276c7477533c59085251ae88505caf6831c0e85ff8b2e31ebcbb949b1/propcache-0.3.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:54e02207c79968ebbdffc169591009f4474dde3b4679e16634d34c9363ff56b4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7c/54/fc7152e517cf5578278b242396ce4d4b36795423988ef39bb8cd5bf274c8/propcache-0.3.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4adfb44cb588001f68c5466579d3f1157ca07f7504fc91ec87862e2b8e556b88" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b9/80/abeb4a896d2767bf5f1ea7b92eb7be6a5330645bd7fb844049c0e4045d9d/propcache-0.3.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:fd3e6019dc1261cd0291ee8919dd91fbab7b169bb76aeef6c716833a3f65d206" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b3/db/ea12a49aa7b2b6d68a5da8293dcf50068d48d088100ac016ad92a6a780e6/propcache-0.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4c181cad81158d71c41a2bce88edce078458e2dd5ffee7eddd6b05da85079f43" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d1/e5/9076a0bbbfb65d1198007059c65639dfd56266cf8e477a9707e4b1999ff4/propcache-0.3.2-cp313-cp313-win32.whl", hash = "sha256:8a08154613f2249519e549de2330cf8e2071c2887309a7b07fb56098f5170a02" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d3/f5/b369e026b09a26cd77aa88d8fffd69141d2ae00a2abaaf5380d2603f4b7f/propcache-0.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:e41671f1594fc4ab0a6dec1351864713cb3a279910ae8b58f884a88a0a632c05" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a4/3a/6ece377b55544941a08d03581c7bc400a3c8cd3c2865900a68d5de79e21f/propcache-0.3.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:9a3cf035bbaf035f109987d9d55dc90e4b0e36e04bbbb95af3055ef17194057b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0c/da/64a2bb16418740fa634b0e9c3d29edff1db07f56d3546ca2d86ddf0305e1/propcache-0.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:156c03d07dc1323d8dacaa221fbe028c5c70d16709cdd63502778e6c3ccca1b0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/36/7b/f025e06ea51cb72c52fb87e9b395cced02786610b60a3ed51da8af017170/propcache-0.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:74413c0ba02ba86f55cf60d18daab219f7e531620c15f1e23d95563f505efe7e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a4/00/faa1b1b7c3b74fc277f8642f32a4c72ba1d7b2de36d7cdfb676db7f4303e/propcache-0.3.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f066b437bb3fa39c58ff97ab2ca351db465157d68ed0440abecb21715eb24b28" }, + { url = "https://mirrors.aliyun.com/pypi/packages/74/ab/935beb6f1756e0476a4d5938ff44bf0d13a055fed880caf93859b4f1baf4/propcache-0.3.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1304b085c83067914721e7e9d9917d41ad87696bf70f0bc7dee450e9c71ad0a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f8/9d/994a5c1ce4389610838d1caec74bdf0e98b306c70314d46dbe4fcf21a3e2/propcache-0.3.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ab50cef01b372763a13333b4e54021bdcb291fc9a8e2ccb9c2df98be51bcde6c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/00/a10afce3d1ed0287cef2e09506d3be9822513f2c1e96457ee369adb9a6cd/propcache-0.3.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fad3b2a085ec259ad2c2842666b2a0a49dea8463579c606426128925af1ed725" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2e/a8/2aa6716ffa566ca57c749edb909ad27884680887d68517e4be41b02299f3/propcache-0.3.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:261fa020c1c14deafd54c76b014956e2f86991af198c51139faf41c4d5e83892" }, + { url = "https://mirrors.aliyun.com/pypi/packages/36/4f/345ca9183b85ac29c8694b0941f7484bf419c7f0fea2d1e386b4f7893eed/propcache-0.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:46d7f8aa79c927e5f987ee3a80205c987717d3659f035c85cf0c3680526bdb44" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3e/ca/fcd54f78b59e3f97b3b9715501e3147f5340167733d27db423aa321e7148/propcache-0.3.2-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:6d8f3f0eebf73e3c0ff0e7853f68be638b4043c65a70517bb575eff54edd8dbe" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8b/95/8e6a6bbbd78ac89c30c225210a5c687790e532ba4088afb8c0445b77ef37/propcache-0.3.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:03c89c1b14a5452cf15403e291c0ccd7751d5b9736ecb2c5bab977ad6c5bcd81" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ee/b0/0dd03616142baba28e8b2d14ce5df6631b4673850a3d4f9c0f9dd714a404/propcache-0.3.2-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:0cc17efde71e12bbaad086d679ce575268d70bc123a5a71ea7ad76f70ba30bba" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c5/98/2c12407a7e4fbacd94ddd32f3b1e3d5231e77c30ef7162b12a60e2dd5ce3/propcache-0.3.2-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:acdf05d00696bc0447e278bb53cb04ca72354e562cf88ea6f9107df8e7fd9770" }, + { url = "https://mirrors.aliyun.com/pypi/packages/35/91/9cb56efbb428b006bb85db28591e40b7736847b8331d43fe335acf95f6c8/propcache-0.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4445542398bd0b5d32df908031cb1b30d43ac848e20470a878b770ec2dcc6330" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9a/4c/b0fe775a2bdd01e176b14b574be679d84fc83958335790f7c9a686c1f468/propcache-0.3.2-cp313-cp313t-win32.whl", hash = "sha256:f86e5d7cd03afb3a1db8e9f9f6eff15794e79e791350ac48a8c924e6f439f394" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a4/ff/47f08595e3d9b5e149c150f88d9714574f1a7cbd89fe2817158a952674bf/propcache-0.3.2-cp313-cp313t-win_amd64.whl", hash = "sha256:9704bedf6e7cbe3c65eca4379a9b53ee6a83749f047808cbb5044d40d7d72198" }, { url = "https://mirrors.aliyun.com/pypi/packages/cc/35/cc0aaecf278bb4575b8555f2b137de5ab821595ddae9da9d3cd1da4072c7/propcache-0.3.2-py3-none-any.whl", hash = "sha256:98f1ec44fb675f5052cccc8e609c46ed23a35a1cfd18545ad4e29002d858a43f" }, ] @@ -798,6 +1017,23 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/d6/b2/288b3579ffc07e92af66e2f1a11be3b056fe1214aab314748461f21a31c3/pydantic_core-2.33.1-cp312-cp312-win32.whl", hash = "sha256:e14f369c98a7c15772b9da98987f58e2b509a93235582838bd0d1d8c08b68fda" }, { url = "https://mirrors.aliyun.com/pypi/packages/02/28/58442ad1c22b5b6742b992ba9518420235adced665513868f99a1c2638a5/pydantic_core-2.33.1-cp312-cp312-win_amd64.whl", hash = "sha256:1c607801d85e2e123357b3893f82c97a42856192997b95b4d8325deb1cd0c5f4" }, { url = "https://mirrors.aliyun.com/pypi/packages/a1/eb/f54809b51c7e2a1d9f439f158b8dd94359321abcc98767e16fc48ae5a77e/pydantic_core-2.33.1-cp312-cp312-win_arm64.whl", hash = "sha256:8d13f0276806ee722e70a1c93da19748594f19ac4299c7e41237fc791d1861ea" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7a/24/eed3466a4308d79155f1cdd5c7432c80ddcc4530ba8623b79d5ced021641/pydantic_core-2.33.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:70af6a21237b53d1fe7b9325b20e65cbf2f0a848cf77bed492b029139701e66a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ab/14/df54b1a0bc9b6ded9b758b73139d2c11b4e8eb43e8ab9c5847c0a2913ada/pydantic_core-2.33.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:282b3fe1bbbe5ae35224a0dbd05aed9ccabccd241e8e6b60370484234b456266" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fa/96/e275f15ff3d34bb04b0125d9bc8848bf69f25d784d92a63676112451bfb9/pydantic_core-2.33.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4b315e596282bbb5822d0c7ee9d255595bd7506d1cb20c2911a4da0b970187d3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b7/d8/96bc536e975b69e3a924b507d2a19aedbf50b24e08c80fb00e35f9baaed8/pydantic_core-2.33.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1dfae24cf9921875ca0ca6a8ecb4bb2f13c855794ed0d468d6abbec6e6dcd44a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/90/72/ab58e43ce7e900b88cb571ed057b2fcd0e95b708a2e0bed475b10130393e/pydantic_core-2.33.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6dd8ecfde08d8bfadaea669e83c63939af76f4cf5538a72597016edfa3fad516" }, + { url = "https://mirrors.aliyun.com/pypi/packages/dc/3f/52d85781406886c6870ac995ec0ba7ccc028b530b0798c9080531b409fdb/pydantic_core-2.33.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f593494876eae852dc98c43c6f260f45abdbfeec9e4324e31a481d948214764" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f4/56/6e2ef42f363a0eec0fd92f74a91e0ac48cd2e49b695aac1509ad81eee86a/pydantic_core-2.33.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:948b73114f47fd7016088e5186d13faf5e1b2fe83f5e320e371f035557fd264d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4c/c0/604536c4379cc78359f9ee0aa319f4aedf6b652ec2854953f5a14fc38c5a/pydantic_core-2.33.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e11f3864eb516af21b01e25fac915a82e9ddad3bb0fb9e95a246067398b435a4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/46/9eb764814f508f0edfb291a0f75d10854d78113fa13900ce13729aaec3ae/pydantic_core-2.33.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:549150be302428b56fdad0c23c2741dcdb5572413776826c965619a25d9c6bde" }, + { url = "https://mirrors.aliyun.com/pypi/packages/42/e3/fb6b2a732b82d1666fa6bf53e3627867ea3131c5f39f98ce92141e3e3dc1/pydantic_core-2.33.1-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:495bc156026efafd9ef2d82372bd38afce78ddd82bf28ef5276c469e57c0c83e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5c/9d/fbe8fe9d1aa4dac88723f10a921bc7418bd3378a567cb5e21193a3c48b43/pydantic_core-2.33.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ec79de2a8680b1a67a07490bddf9636d5c2fab609ba8c57597e855fa5fa4dacd" }, + { url = "https://mirrors.aliyun.com/pypi/packages/aa/99/07e2237b8a66438d9b26482332cda99a9acccb58d284af7bc7c946a42fd3/pydantic_core-2.33.1-cp313-cp313-win32.whl", hash = "sha256:ee12a7be1742f81b8a65b36c6921022301d466b82d80315d215c4c691724986f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8a/f4/e457a7849beeed1e5defbcf5051c6f7b3c91a0624dd31543a64fc9adcf52/pydantic_core-2.33.1-cp313-cp313-win_amd64.whl", hash = "sha256:ede9b407e39949d2afc46385ce6bd6e11588660c26f80576c11c958e6647bc40" }, + { url = "https://mirrors.aliyun.com/pypi/packages/20/d0/e8d567a7cff7b04e017ae164d98011f1e1894269fe8e90ea187a3cbfb562/pydantic_core-2.33.1-cp313-cp313-win_arm64.whl", hash = "sha256:aa687a23d4b7871a00e03ca96a09cad0f28f443690d300500603bd0adba4b523" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ef/fd/24ea4302d7a527d672c5be06e17df16aabfb4e9fdc6e0b345c21580f3d2a/pydantic_core-2.33.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:401d7b76e1000d0dd5538e6381d28febdcacb097c8d340dde7d7fc6e13e9f95d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5f/95/4fbc2ecdeb5c1c53f1175a32d870250194eb2fdf6291b795ab08c8646d5d/pydantic_core-2.33.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7aeb055a42d734c0255c9e489ac67e75397d59c6fbe60d155851e9782f276a9c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/71/ae/fe31e7f4a62431222d8f65a3bd02e3fa7e6026d154a00818e6d30520ea77/pydantic_core-2.33.1-cp313-cp313t-win_amd64.whl", hash = "sha256:338ea9b73e6e109f15ab439e62cb3b78aa752c7fd9536794112e14bee02c8d18" }, ] [[package]] @@ -871,6 +1107,15 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/c9/1f/4f998c900485e5c0ef43838363ba4a9723ac0ad73a9dc42068b12aaba4e4/PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b" }, { url = "https://mirrors.aliyun.com/pypi/packages/df/d1/f5a275fdb252768b7a11ec63585bc38d0e87c9e05668a139fea92b80634c/PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4" }, { url = "https://mirrors.aliyun.com/pypi/packages/0c/e8/4f648c598b17c3d06e8753d7d13d57542b30d56e6c2dedf9c331ae56312e/PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ef/e3/3af305b830494fa85d95f6d95ef7fa73f2ee1cc8ef5b495c7c3269fb835f/PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba" }, + { url = "https://mirrors.aliyun.com/pypi/packages/45/9f/3b1c20a0b7a3200524eb0076cc027a970d320bd3a6592873c85c92a08731/PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7c/9a/337322f27005c33bcb656c655fa78325b730324c78620e8328ae28b64d0c/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a3/69/864fbe19e6c18ea3cc196cbe5d392175b4cf3d5d0ac1403ec3f2d237ebb5/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484" }, + { url = "https://mirrors.aliyun.com/pypi/packages/04/24/b7721e4845c2f162d26f50521b825fb061bc0a5afcf9a386840f23ea19fa/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/b2/e3234f59ba06559c6ff63c4e10baea10e5e7df868092bf9ab40e5b9c56b6/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652" }, + { url = "https://mirrors.aliyun.com/pypi/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563" }, ] [[package]] @@ -880,7 +1125,7 @@ source = { registry = "https://mirrors.aliyun.com/pypi/simple/" } dependencies = [ { name = "attrs" }, { name = "rpds-py" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://mirrors.aliyun.com/pypi/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa" } wheels = [ @@ -908,6 +1153,21 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/93/2d/dd56bb76bd8e95bbce684326302f287455b56242a4f9c61f1bc76e28360e/regex-2024.11.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0a86e7eeca091c09e021db8eb72d54751e527fa47b8d5787caf96d9831bd02ad" }, { url = "https://mirrors.aliyun.com/pypi/packages/0b/55/31877a249ab7a5156758246b9c59539abbeba22461b7d8adc9e8475ff73e/regex-2024.11.6-cp312-cp312-win32.whl", hash = "sha256:32f9a4c643baad4efa81d549c2aadefaeba12249b2adc5af541759237eee1c54" }, { url = "https://mirrors.aliyun.com/pypi/packages/38/ec/ad2d7de49a600cdb8dd78434a1aeffe28b9d6fc42eb36afab4a27ad23384/regex-2024.11.6-cp312-cp312-win_amd64.whl", hash = "sha256:a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/90/73/bcb0e36614601016552fa9344544a3a2ae1809dc1401b100eab02e772e1f/regex-2024.11.6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0f/3f/f1a082a46b31e25291d830b369b6b0c5576a6f7fb89d3053a354c24b8a83/regex-2024.11.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/09/c9/4e68181a4a652fb3ef5099e077faf4fd2a694ea6e0f806a7737aff9e758a/regex-2024.11.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fc/fd/37868b75eaf63843165f1d2122ca6cb94bfc0271e4428cf58c0616786dce/regex-2024.11.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c4/7c/d4cd9c528502a3dedb5c13c146e7a7a539a3853dc20209c8e75d9ba9d1b2/regex-2024.11.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4f/db/46f563a08f969159c5a0f0e722260568425363bea43bb7ae370becb66a67/regex-2024.11.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/db/60/1eeca2074f5b87df394fccaa432ae3fc06c9c9bfa97c5051aed70e6e00c2/regex-2024.11.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/10/db/ac718a08fcee981554d2f7bb8402f1faa7e868c1345c16ab1ebec54b0d7b/regex-2024.11.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c2/41/7da3fe70216cea93144bf12da2b87367590bcf07db97604edeea55dac9ad/regex-2024.11.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a7/d5/880921ee4eec393a4752e6ab9f0fe28009435417c3102fc413f3fe81c4e5/regex-2024.11.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/dc/96/53770115e507081122beca8899ab7f5ae28ae790bfcc82b5e38976df6a77/regex-2024.11.6-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/31/d3/1372add5251cc2d44b451bd94f43b2ec78e15a6e82bff6a290ef9fd8f00a/regex-2024.11.6-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ed/e3/c446a64984ea9f69982ba1a69d4658d5014bc7a0ea468a07e1a1265db6e2/regex-2024.11.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/f1/e40c8373e3480e4f29f2692bd21b3e05f296d3afebc7e5dcf21b9756ca1c/regex-2024.11.6-cp313-cp313-win32.whl", hash = "sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff" }, + { url = "https://mirrors.aliyun.com/pypi/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl", hash = "sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a" }, ] [[package]] @@ -969,6 +1229,33 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/ab/aa/dc3620dd8db84454aaf9374bd318f1aa02578bba5e567f5bf6b79492aca4/rpds_py-0.25.1-cp312-cp312-win32.whl", hash = "sha256:e5e2f7280d8d0d3ef06f3ec1b4fd598d386cc6f0721e54f09109a8132182fbfe" }, { url = "https://mirrors.aliyun.com/pypi/packages/a3/7f/7cef485269a50ed5b4e9bae145f512d2a111ca638ae70cc101f661b4defd/rpds_py-0.25.1-cp312-cp312-win_amd64.whl", hash = "sha256:db58483f71c5db67d643857404da360dce3573031586034b7d59f245144cc192" }, { url = "https://mirrors.aliyun.com/pypi/packages/99/f2/c2d64f6564f32af913bf5f3f7ae41c7c263c5ae4c4e8f1a17af8af66cd46/rpds_py-0.25.1-cp312-cp312-win_arm64.whl", hash = "sha256:6d50841c425d16faf3206ddbba44c21aa3310a0cebc3c1cdfc3e3f4f9f6f5728" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2b/da/323848a2b62abe6a0fec16ebe199dc6889c5d0a332458da8985b2980dffe/rpds_py-0.25.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:659d87430a8c8c704d52d094f5ba6fa72ef13b4d385b7e542a08fc240cb4a559" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/b4/4d3820f731c80fd0cd823b3e95b9963fec681ae45ba35b5281a42382c67d/rpds_py-0.25.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68f6f060f0bbdfb0245267da014d3a6da9be127fe3e8cc4a68c6f833f8a23bb1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d5/b1/3a8ee1c9d480e8493619a437dec685d005f706b69253286f50f498cbdbcf/rpds_py-0.25.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:083a9513a33e0b92cf6e7a6366036c6bb43ea595332c1ab5c8ae329e4bcc0a9c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3b/31/17293edcfc934dc62c3bf74a0cb449ecd549531f956b72287203e6880b87/rpds_py-0.25.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:816568614ecb22b18a010c7a12559c19f6fe993526af88e95a76d5a60b8b75fb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d1/ca/e0f0bc1a75a8925024f343258c8ecbd8828f8997ea2ac71e02f67b6f5299/rpds_py-0.25.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3c6564c0947a7f52e4792983f8e6cf9bac140438ebf81f527a21d944f2fd0a40" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3e/03/5d0be919037178fff33a6672ffc0afa04ea1cfcb61afd4119d1b5280ff0f/rpds_py-0.25.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c4a128527fe415d73cf1f70a9a688d06130d5810be69f3b553bf7b45e8acf79" }, + { url = "https://mirrors.aliyun.com/pypi/packages/05/7c/8abb70f9017a231c6c961a8941403ed6557664c0913e1bf413cbdc039e75/rpds_py-0.25.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a49e1d7a4978ed554f095430b89ecc23f42014a50ac385eb0c4d163ce213c325" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7a/ac/a87f339f0e066b9535074a9f403b9313fd3892d4a164d5d5f5875ac9f29f/rpds_py-0.25.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d74ec9bc0e2feb81d3f16946b005748119c0f52a153f6db6a29e8cd68636f295" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/8f/8d5c1567eaf8c8afe98a838dd24de5013ce6e8f53a01bd47fe8bb06b5533/rpds_py-0.25.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:3af5b4cc10fa41e5bc64e5c198a1b2d2864337f8fcbb9a67e747e34002ce812b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/95/33/03016a6be5663b389c8ab0bbbcca68d9e96af14faeff0a04affcb587e776/rpds_py-0.25.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:79dc317a5f1c51fd9c6a0c4f48209c6b8526d0524a6904fc1076476e79b00f98" }, + { url = "https://mirrors.aliyun.com/pypi/packages/33/8d/da9f4d3e208c82fda311bff0cf0a19579afceb77cf456e46c559a1c075ba/rpds_py-0.25.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1521031351865e0181bc585147624d66b3b00a84109b57fcb7a779c3ec3772cd" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e2/b3/39d5dcf7c5f742ecd6dbc88f6f84ae54184b92f5f387a4053be2107b17f1/rpds_py-0.25.1-cp313-cp313-win32.whl", hash = "sha256:5d473be2b13600b93a5675d78f59e63b51b1ba2d0476893415dfbb5477e65b31" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5f/19/2d6772c8eeb8302c5f834e6d0dfd83935a884e7c5ce16340c7eaf89ce925/rpds_py-0.25.1-cp313-cp313-win_amd64.whl", hash = "sha256:a7b74e92a3b212390bdce1d93da9f6488c3878c1d434c5e751cbc202c5e09500" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5b/5a/145ada26cfaf86018d0eb304fe55eafdd4f0b6b84530246bb4a7c4fb5c4b/rpds_py-0.25.1-cp313-cp313-win_arm64.whl", hash = "sha256:dd326a81afe332ede08eb39ab75b301d5676802cdffd3a8f287a5f0b694dc3f5" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4b/ca/d435844829c384fd2c22754ff65889c5c556a675d2ed9eb0e148435c6690/rpds_py-0.25.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:a58d1ed49a94d4183483a3ce0af22f20318d4a1434acee255d683ad90bf78129" }, + { url = "https://mirrors.aliyun.com/pypi/packages/1f/01/b056f21db3a09f89410d493d2f6614d87bb162499f98b649d1dbd2a81988/rpds_py-0.25.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:f251bf23deb8332823aef1da169d5d89fa84c89f67bdfb566c49dea1fccfd50d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e0/0f/e0d00dc991e3d40e03ca36383b44995126c36b3eafa0ccbbd19664709c88/rpds_py-0.25.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8dbd586bfa270c1103ece2109314dd423df1fa3d9719928b5d09e4840cec0d72" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9f/a2/59374837f105f2ca79bde3c3cd1065b2f8c01678900924949f6392eab66d/rpds_py-0.25.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6d273f136e912aa101a9274c3145dcbddbe4bac560e77e6d5b3c9f6e0ed06d34" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9c/dc/48e8d84887627a0fe0bac53f0b4631e90976fd5d35fff8be66b8e4f3916b/rpds_py-0.25.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:666fa7b1bd0a3810a7f18f6d3a25ccd8866291fbbc3c9b912b917a6715874bb9" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7c/f5/ee056966aeae401913d37befeeab57a4a43a4f00099e0a20297f17b8f00c/rpds_py-0.25.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:921954d7fbf3fccc7de8f717799304b14b6d9a45bbeec5a8d7408ccbf531faf5" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ab/74/b2cffb46a097cefe5d17f94ede7a174184b9d158a0aeb195f39f2c0361e8/rpds_py-0.25.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3d86373ff19ca0441ebeb696ef64cb58b8b5cbacffcda5a0ec2f3911732a194" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7f/9a/0ff0b375dcb5161c2b7054e7d0b7575f1680127505945f5cabaac890bc07/rpds_py-0.25.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c8980cde3bb8575e7c956a530f2c217c1d6aac453474bf3ea0f9c89868b531b6" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0d/a1/fda629bf20d6b698ae84c7c840cfb0e9e4200f664fc96e1f456f00e4ad6e/rpds_py-0.25.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:8eb8c84ecea987a2523e057c0d950bcb3f789696c0499290b8d7b3107a719d78" }, + { url = "https://mirrors.aliyun.com/pypi/packages/20/15/ce4b5257f654132f326f4acd87268e1006cc071e2c59794c5bdf4bebbb51/rpds_py-0.25.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:e43a005671a9ed5a650f3bc39e4dbccd6d4326b24fb5ea8be5f3a43a6f576c72" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fb/ab/e04bf58a8d375aeedb5268edcc835c6a660ebf79d4384d8e0889439448b0/rpds_py-0.25.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:58f77c60956501a4a627749a6dcb78dac522f249dd96b5c9f1c6af29bfacfb66" }, + { url = "https://mirrors.aliyun.com/pypi/packages/90/82/cb8c6028a6ef6cd2b7991e2e4ced01c854b6236ecf51e81b64b569c43d73/rpds_py-0.25.1-cp313-cp313t-win32.whl", hash = "sha256:2cb9e5b5e26fc02c8a4345048cd9998c2aca7c2712bd1b36da0c72ee969a3523" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b6/97/5a4b59697111c89477d20ba8a44df9ca16b41e737fa569d5ae8bff99e650/rpds_py-0.25.1-cp313-cp313t-win_amd64.whl", hash = "sha256:401ca1c4a20cc0510d3435d89c069fe0a9ae2ee6495135ac46bdd49ec0495763" }, ] [[package]] @@ -1060,6 +1347,12 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/1b/40/da42522018ca496432ffd02793c3a72a739ac04c3794a4914570c9bb2925/tiktoken-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99376e1370d59bcf6935c933cb9ba64adc29033b7e73f5f7569f3aad86552b22" }, { url = "https://mirrors.aliyun.com/pypi/packages/5c/41/1e59dddaae270ba20187ceb8aa52c75b24ffc09f547233991d5fd822838b/tiktoken-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:badb947c32739fb6ddde173e14885fb3de4d32ab9d8c591cbd013c22b4c31dd2" }, { url = "https://mirrors.aliyun.com/pypi/packages/5b/64/b16003419a1d7728d0d8c0d56a4c24325e7b10a21a9dd1fc0f7115c02f0a/tiktoken-0.9.0-cp312-cp312-win_amd64.whl", hash = "sha256:5a62d7a25225bafed786a524c1b9f0910a1128f4232615bf3f8257a73aaa3b16" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7a/11/09d936d37f49f4f494ffe660af44acd2d99eb2429d60a57c71318af214e0/tiktoken-0.9.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2b0e8e05a26eda1249e824156d537015480af7ae222ccb798e5234ae0285dbdb" }, + { url = "https://mirrors.aliyun.com/pypi/packages/80/0e/f38ba35713edb8d4197ae602e80837d574244ced7fb1b6070b31c29816e0/tiktoken-0.9.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:27d457f096f87685195eea0165a1807fae87b97b2161fe8c9b1df5bd74ca6f63" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fe/82/9197f77421e2a01373e27a79dd36efdd99e6b4115746ecc553318ecafbf0/tiktoken-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cf8ded49cddf825390e36dd1ad35cd49589e8161fdcb52aa25f0583e90a3e01" }, + { url = "https://mirrors.aliyun.com/pypi/packages/f2/bb/4513da71cac187383541facd0291c4572b03ec23c561de5811781bbd988f/tiktoken-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc156cb314119a8bb9748257a2eaebd5cc0753b6cb491d26694ed42fc7cb3139" }, + { url = "https://mirrors.aliyun.com/pypi/packages/fa/5c/74e4c137530dd8504e97e3a41729b1103a4ac29036cbfd3250b11fd29451/tiktoken-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:cd69372e8c9dd761f0ab873112aba55a0e3e506332dd9f7522ca466e817b1b7a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/de/a8/8f499c179ec900783ffe133e9aab10044481679bb9aad78436d239eee716/tiktoken-0.9.0-cp313-cp313-win_amd64.whl", hash = "sha256:5ea0edb6f83dc56d794723286215918c1cde03712cbbafa0348b33448faf5b95" }, ] [[package]] @@ -1103,6 +1396,16 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/9c/de/6b432d66e986e501586da298e28ebeefd3edc2c780f3ad73d22566034239/tomli-2.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b82ebccc8c8a36f2094e969560a1b836758481f3dc360ce9a3277c65f374285e" }, { url = "https://mirrors.aliyun.com/pypi/packages/1c/9a/47c0449b98e6e7d1be6cbac02f93dd79003234ddc4aaab6ba07a9a7482e2/tomli-2.2.1-cp312-cp312-win32.whl", hash = "sha256:889f80ef92701b9dbb224e49ec87c645ce5df3fa2cc548664eb8a25e03127a98" }, { url = "https://mirrors.aliyun.com/pypi/packages/ef/60/9b9638f081c6f1261e2688bd487625cd1e660d0a85bd469e91d8db969734/tomli-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/04/90/2ee5f2e0362cb8a0b6499dc44f4d7d48f8fff06d28ba46e6f1eaa61a1388/tomli-2.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f4039b9cbc3048b2416cc57ab3bda989a6fcf9b36cf8937f01a6e731b64f80d7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c0/ec/46b4108816de6b385141f082ba99e315501ccd0a2ea23db4a100dd3990ea/tomli-2.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:286f0ca2ffeeb5b9bd4fcc8d6c330534323ec51b2f52da063b11c502da16f30c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a0/bd/b470466d0137b37b68d24556c38a0cc819e8febe392d5b199dcd7f578365/tomli-2.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a92ef1a44547e894e2a17d24e7557a5e85a9e1d0048b0b5e7541f76c5032cb13" }, + { url = "https://mirrors.aliyun.com/pypi/packages/d9/e5/82e80ff3b751373f7cead2815bcbe2d51c895b3c990686741a8e56ec42ab/tomli-2.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9316dc65bed1684c9a98ee68759ceaed29d229e985297003e494aa825ebb0281" }, + { url = "https://mirrors.aliyun.com/pypi/packages/05/7e/2a110bc2713557d6a1bfb06af23dd01e7dde52b6ee7dadc589868f9abfac/tomli-2.2.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e85e99945e688e32d5a35c1ff38ed0b3f41f43fad8df0bdf79f72b2ba7bc5272" }, + { url = "https://mirrors.aliyun.com/pypi/packages/64/7b/22d713946efe00e0adbcdfd6d1aa119ae03fd0b60ebed51ebb3fa9f5a2e5/tomli-2.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ac065718db92ca818f8d6141b5f66369833d4a80a9d74435a268c52bdfa73140" }, + { url = "https://mirrors.aliyun.com/pypi/packages/38/31/3a76f67da4b0cf37b742ca76beaf819dca0ebef26d78fc794a576e08accf/tomli-2.2.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:d920f33822747519673ee656a4b6ac33e382eca9d331c87770faa3eef562aeb2" }, + { url = "https://mirrors.aliyun.com/pypi/packages/07/10/5af1293da642aded87e8a988753945d0cf7e00a9452d3911dd3bb354c9e2/tomli-2.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a198f10c4d1b1375d7687bc25294306e551bf1abfa4eace6650070a5c1ae2744" }, + { url = "https://mirrors.aliyun.com/pypi/packages/5b/b9/1ed31d167be802da0fc95020d04cd27b7d7065cc6fbefdd2f9186f60d7bd/tomli-2.2.1-cp313-cp313-win32.whl", hash = "sha256:d3f5614314d758649ab2ab3a62d4f2004c825922f9e370b29416484086b264ec" }, + { url = "https://mirrors.aliyun.com/pypi/packages/c7/32/b0963458706accd9afcfeb867c0f9175a741bf7b19cd424230714d722198/tomli-2.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69" }, { url = "https://mirrors.aliyun.com/pypi/packages/6e/c2/61d3e0f47e2b74ef40a68b9e6ad5984f6241a942f7cd3bbfbdbd03861ea9/tomli-2.2.1-py3-none-any.whl", hash = "sha256:cb55c73c5f4408779d0cf3eef9f762b9c9f147a77de7b258bef0a5628adc85cc" }, ] @@ -1238,6 +1541,40 @@ wheels = [ { url = "https://mirrors.aliyun.com/pypi/packages/af/85/9363f77bdfa1e4d690957cd39d192c4cacd1c58965df0470a4905253b54f/yarl-1.20.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:564ab3d517e3d01c408c67f2e5247aad4019dcf1969982aba3974b4093279004" }, { url = "https://mirrors.aliyun.com/pypi/packages/35/99/9918c8739ba271dcd935400cff8b32e3cd319eaf02fcd023d5dcd487a7c8/yarl-1.20.1-cp312-cp312-win32.whl", hash = "sha256:daea0d313868da1cf2fac6b2d3a25c6e3a9e879483244be38c8e6a41f1d876a5" }, { url = "https://mirrors.aliyun.com/pypi/packages/eb/83/5d9092950565481b413b31a23e75dd3418ff0a277d6e0abf3729d4d1ce25/yarl-1.20.1-cp312-cp312-win_amd64.whl", hash = "sha256:48ea7d7f9be0487339828a4de0360d7ce0efc06524a48e1810f945c45b813698" }, + { url = "https://mirrors.aliyun.com/pypi/packages/8a/e1/2411b6d7f769a07687acee88a062af5833cf1966b7266f3d8dfb3d3dc7d3/yarl-1.20.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:0b5ff0fbb7c9f1b1b5ab53330acbfc5247893069e7716840c8e7d5bb7355038a" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b2/27/584394e1cb76fb771371770eccad35de400e7b434ce3142c2dd27392c968/yarl-1.20.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:14f326acd845c2b2e2eb38fb1346c94f7f3b01a4f5c788f8144f9b630bfff9a3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bf/9a/3246ae92d4049099f52d9b0fe3486e3b500e29b7ea872d0f152966fc209d/yarl-1.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f60e4ad5db23f0b96e49c018596707c3ae89f5d0bd97f0ad3684bcbad899f1e7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a3/25/35afe384e31115a1a801fbcf84012d7a066d89035befae7c5d4284df1e03/yarl-1.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:49bdd1b8e00ce57e68ba51916e4bb04461746e794e7c4d4bbc42ba2f18297691" }, + { url = "https://mirrors.aliyun.com/pypi/packages/28/2d/8aca6cb2cabc8f12efcb82749b9cefecbccfc7b0384e56cd71058ccee433/yarl-1.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:66252d780b45189975abfed839616e8fd2dbacbdc262105ad7742c6ae58f3e31" }, + { url = "https://mirrors.aliyun.com/pypi/packages/0b/e9/1312633d16b31acf0098d30440ca855e3492d66623dafb8e25b03d00c3da/yarl-1.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59174e7332f5d153d8f7452a102b103e2e74035ad085f404df2e40e663a22b28" }, + { url = "https://mirrors.aliyun.com/pypi/packages/bc/a0/688cc99463f12f7669eec7c8acc71ef56a1521b99eab7cd3abb75af887b0/yarl-1.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e3968ec7d92a0c0f9ac34d5ecfd03869ec0cab0697c91a45db3fbbd95fe1b653" }, + { url = "https://mirrors.aliyun.com/pypi/packages/af/44/46407d7f7a56e9a85a4c207724c9f2c545c060380718eea9088f222ba697/yarl-1.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1a4fbb50e14396ba3d375f68bfe02215d8e7bc3ec49da8341fe3157f59d2ff5" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b1/91/31163295e82b8d5485d31d9cf7754d973d41915cadce070491778d9c9825/yarl-1.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11a62c839c3a8eac2410e951301309426f368388ff2f33799052787035793b02" }, + { url = "https://mirrors.aliyun.com/pypi/packages/b4/8e/c41a5bc482121f51c083c4c2bcd16b9e01e1cf8729e380273a952513a21f/yarl-1.20.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:041eaa14f73ff5a8986b4388ac6bb43a77f2ea09bf1913df7a35d4646db69e53" }, + { url = "https://mirrors.aliyun.com/pypi/packages/e3/5b/61a3b054238d33d70ea06ebba7e58597891b71c699e247df35cc984ab393/yarl-1.20.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:377fae2fef158e8fd9d60b4c8751387b8d1fb121d3d0b8e9b0be07d1b41e83dc" }, + { url = "https://mirrors.aliyun.com/pypi/packages/df/a3/6a72fb83f8d478cb201d14927bc8040af901811a88e0ff2da7842dd0ed19/yarl-1.20.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:1c92f4390e407513f619d49319023664643d3339bd5e5a56a3bebe01bc67ec04" }, + { url = "https://mirrors.aliyun.com/pypi/packages/7c/af/4cc3c36dfc7c077f8dedb561eb21f69e1e9f2456b91b593882b0b18c19dc/yarl-1.20.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d25ddcf954df1754ab0f86bb696af765c5bfaba39b74095f27eececa049ef9a4" }, + { url = "https://mirrors.aliyun.com/pypi/packages/19/3a/e54e2c4752160115183a66dc9ee75a153f81f3ab2ba4bf79c3c53b33de34/yarl-1.20.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:909313577e9619dcff8c31a0ea2aa0a2a828341d92673015456b3ae492e7317b" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9c/20/200ae86dabfca89060ec6447649f219b4cbd94531e425e50d57e5f5ac330/yarl-1.20.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:793fd0580cb9664548c6b83c63b43c477212c0260891ddf86809e1c06c8b08f1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/83/75/11ee332f2f516b3d094e89448da73d557687f7d137d5a0f48c40ff211487/yarl-1.20.1-cp313-cp313-win32.whl", hash = "sha256:468f6e40285de5a5b3c44981ca3a319a4b208ccc07d526b20b12aeedcfa654b7" }, + { url = "https://mirrors.aliyun.com/pypi/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl", hash = "sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/43/c7/669c52519dca4c95153c8ad96dd123c79f354a376346b198f438e56ffeb4/yarl-1.20.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:f60233b98423aab21d249a30eb27c389c14929f47be8430efa7dbd91493a729d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/6a/42/fc0053719b44f6ad04a75d7f05e0e9674d45ef62f2d9ad2c1163e5c05827/yarl-1.20.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:6f3eff4cc3f03d650d8755c6eefc844edde99d641d0dcf4da3ab27141a5f8ddf" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4f/7f/fa59c4c27e2a076bba0d959386e26eba77eb52ea4a0aac48e3515c186b4c/yarl-1.20.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:69ff8439d8ba832d6bed88af2c2b3445977eba9a4588b787b32945871c2444e3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/2f/d4/062b2f48e7c93481e88eff97a6312dca15ea200e959f23e96d8ab898c5b8/yarl-1.20.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cf34efa60eb81dd2645a2e13e00bb98b76c35ab5061a3989c7a70f78c85006d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/89/47/78b7f40d13c8f62b499cc702fdf69e090455518ae544c00a3bf4afc9fc77/yarl-1.20.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:8e0fe9364ad0fddab2688ce72cb7a8e61ea42eff3c7caeeb83874a5d479c896c" }, + { url = "https://mirrors.aliyun.com/pypi/packages/eb/2b/490d3b2dc66f52987d4ee0d3090a147ea67732ce6b4d61e362c1846d0d32/yarl-1.20.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f64fbf81878ba914562c672024089e3401974a39767747691c65080a67b18c1" }, + { url = "https://mirrors.aliyun.com/pypi/packages/66/ad/775da9c8a94ce925d1537f939a4f17d782efef1f973039d821cbe4bcc211/yarl-1.20.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f6342d643bf9a1de97e512e45e4b9560a043347e779a173250824f8b254bd5ce" }, + { url = "https://mirrors.aliyun.com/pypi/packages/4b/23/0ed0922b47a4f5c6eb9065d5ff1e459747226ddce5c6a4c111e728c9f701/yarl-1.20.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56dac5f452ed25eef0f6e3c6a066c6ab68971d96a9fb441791cad0efba6140d3" }, + { url = "https://mirrors.aliyun.com/pypi/packages/3e/49/bc728a7fe7d0e9336e2b78f0958a2d6b288ba89f25a1762407a222bf53c3/yarl-1.20.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7d7f497126d65e2cad8dc5f97d34c27b19199b6414a40cb36b52f41b79014be" }, + { url = "https://mirrors.aliyun.com/pypi/packages/93/8f/b811b9d1f617c83c907e7082a76e2b92b655400e61730cd61a1f67178393/yarl-1.20.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:67e708dfb8e78d8a19169818eeb5c7a80717562de9051bf2413aca8e3696bf16" }, + { url = "https://mirrors.aliyun.com/pypi/packages/70/fd/af94f04f275f95da2c3b8b5e1d49e3e79f1ed8b6ceb0f1664cbd902773ff/yarl-1.20.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:595c07bc79af2494365cc96ddeb772f76272364ef7c80fb892ef9d0649586513" }, + { url = "https://mirrors.aliyun.com/pypi/packages/84/65/04c62e82704e7dd0a9b3f61dbaa8447f8507655fd16c51da0637b39b2910/yarl-1.20.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:7bdd2f80f4a7df852ab9ab49484a4dee8030023aa536df41f2d922fd57bf023f" }, + { url = "https://mirrors.aliyun.com/pypi/packages/91/95/459ca62eb958381b342d94ab9a4b6aec1ddec1f7057c487e926f03c06d30/yarl-1.20.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:c03bfebc4ae8d862f853a9757199677ab74ec25424d0ebd68a0027e9c639a390" }, + { url = "https://mirrors.aliyun.com/pypi/packages/a6/00/d393e82dd955ad20617abc546a8f1aee40534d599ff555ea053d0ec9bf03/yarl-1.20.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:344d1103e9c1523f32a5ed704d576172d2cabed3122ea90b1d4e11fe17c66458" }, + { url = "https://mirrors.aliyun.com/pypi/packages/9e/ed/c5fb04869b99b717985e244fd93029c7a8e8febdfcffa06093e32d7d44e7/yarl-1.20.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:88cab98aa4e13e1ade8c141daeedd300a4603b7132819c484841bb7af3edce9e" }, + { url = "https://mirrors.aliyun.com/pypi/packages/24/fd/725b8e73ac2a50e78a4534ac43c6addf5c1c2d65380dd48a9169cc6739a9/yarl-1.20.1-cp313-cp313t-win32.whl", hash = "sha256:b121ff6a7cbd4abc28985b6028235491941b9fe8fe226e6fdc539c977ea1739d" }, + { url = "https://mirrors.aliyun.com/pypi/packages/94/c3/b2e9f38bc3e11191981d57ea08cab2166e74ea770024a646617c9cddd9f6/yarl-1.20.1-cp313-cp313t-win_amd64.whl", hash = "sha256:541d050a355bbbc27e55d906bc91cb6fe42f96c01413dd0f4ed5a5240513874f" }, { url = "https://mirrors.aliyun.com/pypi/packages/b4/2d/2345fce04cfd4bee161bf1e7d9cdc702e3e16109021035dbb24db654a622/yarl-1.20.1-py3-none-any.whl", hash = "sha256:83b8eb083fe4683c6115795d9fc1cfaf2cbbefb19b3a1cb68f6527460f483a77" }, ]