From a10cf6e7fb6eb608ad937eacda051b6d04cdfe41 Mon Sep 17 00:00:00 2001 From: kang Date: Sat, 23 May 2026 11:43:55 +0800 Subject: [PATCH] docs: add orchestration logic overview (PDF + HTML source) 13-page A4 PDF reverse-engineered from current code: 4-stage serial pack flow with 3 gates, intra-pack topo + 4-concurrency, L0-L3 derivation, Seedance anchor priority, and spec-vs-implementation gap callouts. Source HTML kept for future re-render via Chrome headless. Co-Authored-By: Claude Opus 4.7 (1M context) --- .memory/worklog.json | 3653 ++++++++++++++++++++------------------- docs/orchestration.html | 662 +++++++ docs/orchestration.pdf | Bin 0 -> 1792921 bytes 3 files changed, 2495 insertions(+), 1820 deletions(-) create mode 100644 docs/orchestration.html create mode 100644 docs/orchestration.pdf diff --git a/.memory/worklog.json b/.memory/worklog.json index 52be588..bb2185e 100644 --- a/.memory/worklog.json +++ b/.memory/worklog.json @@ -1,2637 +1,2650 @@ { - "entries" : [ + "entries": [ { - "files_changed" : 0, - "hash" : "", - "message" : "项目创建: AI玩具专利生成工作流", - "ts" : "2026-05-18T00:00:00+08:00", - "type" : "milestone" + "files_changed": 0, + "hash": "", + "message": "项目创建: AI玩具专利生成工作流", + "ts": "2026-05-18T00:00:00+08:00", + "type": "milestone" }, { - "files_changed" : 6, - "hash" : "5e4c6e5", - "message" : "init: project scaffold", - "ts" : "2026-05-18T10:35:02+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "5e4c6e5", + "message": "init: project scaffold", + "ts": "2026-05-18T10:35:02+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "0accb73", - "message" : "auto-save 2026-05-18 10:39 (+1, ~1)", - "ts" : "2026-05-18T10:39:25+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "0accb73", + "message": "auto-save 2026-05-18 10:39 (+1, ~1)", + "ts": "2026-05-18T10:39:25+08:00", + "type": "commit" }, { - "files_changed" : 20, - "hash" : "494779d", - "message" : "auto-save 2026-05-18 10:44 (+6, ~2)", - "ts" : "2026-05-18T10:46:21+08:00", - "type" : "commit" + "files_changed": 20, + "hash": "494779d", + "message": "auto-save 2026-05-18 10:44 (+6, ~2)", + "ts": "2026-05-18T10:46:21+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "aa5cac1", - "message" : "auto-save 2026-05-18 10:53 (+2, ~2)", - "ts" : "2026-05-18T10:53:53+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "aa5cac1", + "message": "auto-save 2026-05-18 10:53 (+2, ~2)", + "ts": "2026-05-18T10:53:53+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "8e1147c", - "message" : "feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", - "ts" : "2026-05-18T11:07:53+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "8e1147c", + "message": "feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", + "ts": "2026-05-18T11:07:53+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "启动 Codex 接力会话 · 已载入 Claude 最近会话,等待下一条指令 · 分支 master · 1 项未提交变更 · 最近提交:feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", - "ts" : "2026-05-18T15:13:48Z", - "type" : "assistant-session" + "files_changed": 1, + "message": "启动 Codex 接力会话 · 已载入 Claude 最近会话,等待下一条指令 · 分支 master · 1 项未提交变更 · 最近提交:feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", + "ts": "2026-05-18T15:13:48Z", + "type": "assistant-session" }, { - "files_changed" : 1, - "message" : "启动 Cursor 接力会话 · 已载入 Claude 最近会话,等待下一条指令 · 分支 master · 1 项未提交变更 · 最近提交:feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", - "ts" : "2026-05-18T15:14:10Z", - "type" : "assistant-session" + "files_changed": 1, + "message": "启动 Cursor 接力会话 · 已载入 Claude 最近会话,等待下一条指令 · 分支 master · 1 项未提交变更 · 最近提交:feat: MVP 跑通 — prompt → 批量生成 → 九宫格快筛 → 选中落盘", + "ts": "2026-05-18T15:14:10Z", + "type": "assistant-session" }, { - "files_changed" : 2, - "hash" : "e3555da", - "message" : "auto-save 2026-05-18 23:15 (+1, ~1)", - "ts" : "2026-05-18T23:15:09+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "e3555da", + "message": "auto-save 2026-05-18 23:15 (+1, ~1)", + "ts": "2026-05-18T23:15:09+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "启动 Claude 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-18 23:15 (+1, ~1)", - "ts" : "2026-05-18T15:16:48Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Claude 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-18 23:15 (+1, ~1)", + "ts": "2026-05-18T15:16:48Z", + "type": "assistant-session" }, { - "files_changed" : 3, - "hash" : "446e012", - "message" : "auto-save 2026-05-18 23:20 (~3)", - "ts" : "2026-05-18T23:22:17+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "446e012", + "message": "auto-save 2026-05-18 23:20 (~3)", + "ts": "2026-05-18T23:22:17+08:00", + "type": "commit" }, { - "files_changed" : 4, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 4 项未提交变更 · 最近提交:auto-save 2026-05-18 23:20 (~3)", - "ts" : "2026-05-18T15:23:50Z", - "type" : "session-heartbeat" + "files_changed": 4, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 4 项未提交变更 · 最近提交:auto-save 2026-05-18 23:20 (~3)", + "ts": "2026-05-18T15:23:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 6, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-18 23:20 (~3)", - "ts" : "2026-05-18T15:26:50Z", - "type" : "session-heartbeat" + "files_changed": 6, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-18 23:20 (~3)", + "ts": "2026-05-18T15:26:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 7, - "hash" : "52a5b77", - "message" : "auto-save 2026-05-18 23:28 (+1, ~6)", - "ts" : "2026-05-18T23:28:34+08:00", - "type" : "commit" + "files_changed": 7, + "hash": "52a5b77", + "message": "auto-save 2026-05-18 23:28 (+1, ~6)", + "ts": "2026-05-18T23:28:34+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-18 23:28 (+1, ~6)", - "ts" : "2026-05-18T15:33:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-18 23:28 (+1, ~6)", + "ts": "2026-05-18T15:33:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-18 23:28 (+1, ~6)", - "ts" : "2026-05-18T15:36:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-18 23:28 (+1, ~6)", + "ts": "2026-05-18T15:36:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "36fb4f9", - "message" : "auto-save 2026-05-18 23:39 (~2, -1)", - "ts" : "2026-05-18T23:39:25+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "36fb4f9", + "message": "auto-save 2026-05-18 23:39 (~2, -1)", + "ts": "2026-05-18T23:39:25+08:00", + "type": "commit" }, { - "files_changed" : 4, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 4 项未提交变更 · 最近提交:auto-save 2026-05-18 23:39 (~2, -1)", - "ts" : "2026-05-18T15:43:50Z", - "type" : "session-heartbeat" + "files_changed": 4, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 4 项未提交变更 · 最近提交:auto-save 2026-05-18 23:39 (~2, -1)", + "ts": "2026-05-18T15:43:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 11, - "hash" : "31df279", - "message" : "auto-save 2026-05-18 23:44 (+6, ~5)", - "ts" : "2026-05-18T23:44:50+08:00", - "type" : "commit" + "files_changed": 11, + "hash": "31df279", + "message": "auto-save 2026-05-18 23:44 (+6, ~5)", + "ts": "2026-05-18T23:44:50+08:00", + "type": "commit" }, { - "files_changed" : 3, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 3 项未提交变更 · 最近提交:auto-save 2026-05-18 23:44 (+6, ~5)", - "ts" : "2026-05-18T15:46:50Z", - "type" : "session-heartbeat" + "files_changed": 3, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 3 项未提交变更 · 最近提交:auto-save 2026-05-18 23:44 (+6, ~5)", + "ts": "2026-05-18T15:46:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "a1b783c", - "message" : "auto-save 2026-05-18 23:50 (~2, -1)", - "ts" : "2026-05-18T23:50:17+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a1b783c", + "message": "auto-save 2026-05-18 23:50 (~2, -1)", + "ts": "2026-05-18T23:50:17+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-18 23:50 (~2, -1)", - "ts" : "2026-05-18T15:53:50Z", - "type" : "session-heartbeat" + "files_changed": 2, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-18 23:50 (~2, -1)", + "ts": "2026-05-18T15:53:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 16, - "hash" : "4eda85e", - "message" : "auto-save 2026-05-18 23:55 (+5, ~9)", - "ts" : "2026-05-18T23:55:42+08:00", - "type" : "commit" + "files_changed": 16, + "hash": "4eda85e", + "message": "auto-save 2026-05-18 23:55 (+5, ~9)", + "ts": "2026-05-18T23:55:42+08:00", + "type": "commit" }, { - "files_changed" : 8, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 8 项未提交变更 · 最近提交:auto-save 2026-05-18 23:55 (+5, ~9)", - "ts" : "2026-05-18T15:56:50Z", - "type" : "session-heartbeat" + "files_changed": 8, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 8 项未提交变更 · 最近提交:auto-save 2026-05-18 23:55 (+5, ~9)", + "ts": "2026-05-18T15:56:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 8, - "hash" : "608810a", - "message" : "auto-save 2026-05-19 00:01 (~8)", - "ts" : "2026-05-19T00:01:07+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "608810a", + "message": "auto-save 2026-05-19 00:01 (~8)", + "ts": "2026-05-19T00:01:07+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:01 (~8)", - "ts" : "2026-05-18T16:03:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:01 (~8)", + "ts": "2026-05-18T16:03:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "05533be", - "message" : "auto-save 2026-05-19 00:06 (+1, ~1)", - "ts" : "2026-05-19T00:06:32+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "05533be", + "message": "auto-save 2026-05-19 00:06 (+1, ~1)", + "ts": "2026-05-19T00:06:32+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:06 (+1, ~1)", - "ts" : "2026-05-18T16:06:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:06 (+1, ~1)", + "ts": "2026-05-18T16:06:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "c3a4637", - "message" : "auto-save 2026-05-19 00:11 (+3, ~1)", - "ts" : "2026-05-19T00:11:58+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "c3a4637", + "message": "auto-save 2026-05-19 00:11 (+3, ~1)", + "ts": "2026-05-19T00:11:58+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:11 (+3, ~1)", - "ts" : "2026-05-18T16:13:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:11 (+3, ~1)", + "ts": "2026-05-18T16:13:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 7, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 7 项未提交变更 · 最近提交:auto-save 2026-05-19 00:11 (+3, ~1)", - "ts" : "2026-05-18T16:16:50Z", - "type" : "session-heartbeat" + "files_changed": 7, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 7 项未提交变更 · 最近提交:auto-save 2026-05-19 00:11 (+3, ~1)", + "ts": "2026-05-18T16:16:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 8, - "hash" : "361bbef", - "message" : "auto-save 2026-05-19 00:17 (~8)", - "ts" : "2026-05-19T00:18:42+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "361bbef", + "message": "auto-save 2026-05-19 00:17 (~8)", + "ts": "2026-05-19T00:18:42+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:17 (~8)", - "ts" : "2026-05-18T16:23:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:17 (~8)", + "ts": "2026-05-18T16:23:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:17 (~8)", - "ts" : "2026-05-18T16:26:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 00:17 (~8)", + "ts": "2026-05-18T16:26:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "23bf877", - "message" : "auto-save 2026-05-19 00:29 (~4)", - "ts" : "2026-05-19T00:29:35+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "23bf877", + "message": "auto-save 2026-05-19 00:29 (~4)", + "ts": "2026-05-19T00:29:35+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:29 (~4)", - "ts" : "2026-05-18T16:33:51Z", - "type" : "session-heartbeat" + "files_changed": 2, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:29 (~4)", + "ts": "2026-05-18T16:33:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "message" : "Claude 会话结束 · 持续 0 秒 · 最近命令:claude · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:29 (~4)", - "ts" : "2026-05-18T16:35:00Z", - "type" : "session-end" + "files_changed": 2, + "message": "Claude 会话结束 · 持续 0 秒 · 最近命令:claude · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:29 (~4)", + "ts": "2026-05-18T16:35:00Z", + "type": "session-end" }, { - "files_changed" : 2, - "hash" : "50fde2f", - "message" : "auto-save 2026-05-19 00:34 (~2)", - "ts" : "2026-05-19T00:35:00+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "50fde2f", + "message": "auto-save 2026-05-19 00:34 (~2)", + "ts": "2026-05-19T00:35:00+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "a04284e", - "message" : "auto-save 2026-05-19 00:40 (~4)", - "ts" : "2026-05-19T00:40:25+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "a04284e", + "message": "auto-save 2026-05-19 00:40 (~4)", + "ts": "2026-05-19T00:40:25+08:00", + "type": "commit" }, { - "files_changed" : 5, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 5 项未提交变更 · 最近提交:auto-save 2026-05-19 00:40 (~4)", - "ts" : "2026-05-18T16:43:51Z", - "type" : "session-heartbeat" + "files_changed": 5, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 5 项未提交变更 · 最近提交:auto-save 2026-05-19 00:40 (~4)", + "ts": "2026-05-18T16:43:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 5, - "hash" : "54f47e3", - "message" : "auto-save 2026-05-19 00:45 (~5)", - "ts" : "2026-05-19T00:45:51+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "54f47e3", + "message": "auto-save 2026-05-19 00:45 (~5)", + "ts": "2026-05-19T00:45:51+08:00", + "type": "commit" }, { - "files_changed" : 6, - "hash" : "79b519e", - "message" : "auto-save 2026-05-19 00:51 (~6)", - "ts" : "2026-05-19T00:51:15+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "79b519e", + "message": "auto-save 2026-05-19 00:51 (~6)", + "ts": "2026-05-19T00:51:15+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:51 (~6)", - "ts" : "2026-05-18T16:51:36Z", - "type" : "session-end" + "files_changed": 2, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 00:51 (~6)", + "ts": "2026-05-18T16:51:36Z", + "type": "session-end" }, { - "files_changed" : 5, - "hash" : "0517892", - "message" : "auto-save 2026-05-19 00:56 (~5)", - "ts" : "2026-05-19T00:56:41+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "0517892", + "message": "auto-save 2026-05-19 00:56 (~5)", + "ts": "2026-05-19T00:56:41+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "167bf61", - "message" : "auto-save 2026-05-19 08:40 (~3)", - "ts" : "2026-05-19T08:40:59+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "167bf61", + "message": "auto-save 2026-05-19 08:40 (~3)", + "ts": "2026-05-19T08:40:59+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "917d0cf", - "message" : "auto-save 2026-05-19 08:46 (~3)", - "ts" : "2026-05-19T08:46:24+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "917d0cf", + "message": "auto-save 2026-05-19 08:46 (~3)", + "ts": "2026-05-19T08:46:24+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 08:46 (~3)", - "ts" : "2026-05-19T00:49:57Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 08:46 (~3)", + "ts": "2026-05-19T00:49:57Z", + "type": "assistant-session" }, { - "files_changed" : 2, - "hash" : "b76bbdf", - "message" : "auto-save 2026-05-19 08:51 (~2)", - "ts" : "2026-05-19T08:51:51+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "b76bbdf", + "message": "auto-save 2026-05-19 08:51 (~2)", + "ts": "2026-05-19T08:51:51+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "91520fd", - "message" : "auto-save 2026-05-19 08:57 (~3)", - "ts" : "2026-05-19T08:57:17+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "91520fd", + "message": "auto-save 2026-05-19 08:57 (~3)", + "ts": "2026-05-19T08:57:17+08:00", + "type": "commit" }, { - "files_changed" : 0, - "hash" : "12e3b97", - "message" : "chore: configure personal model environment", - "ts" : "2026-05-19T08:58:43+08:00", - "type" : "commit" + "files_changed": 0, + "hash": "12e3b97", + "message": "chore: configure personal model environment", + "ts": "2026-05-19T08:58:43+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: configure personal model environment", - "ts" : "2026-05-19T00:59:58Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: configure personal model environment", + "ts": "2026-05-19T00:59:58Z", + "type": "session-heartbeat" }, { - "files_changed" : 7, - "hash" : "ffa6b2e", - "message" : "fix: align model provider configuration", - "ts" : "2026-05-19T09:07:59+08:00", - "type" : "commit" + "files_changed": 7, + "hash": "ffa6b2e", + "message": "fix: align model provider configuration", + "ts": "2026-05-19T09:07:59+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: align model provider configuration", - "ts" : "2026-05-19T01:09:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: align model provider configuration", + "ts": "2026-05-19T01:09:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 5, - "hash" : "5d8e2da", - "message" : "auto-save 2026-05-19 09:18 (+3, ~2)", - "ts" : "2026-05-19T09:18:59+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "5d8e2da", + "message": "auto-save 2026-05-19 09:18 (+3, ~2)", + "ts": "2026-05-19T09:18:59+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 09:18 (+3, ~2)", - "ts" : "2026-05-19T01:19:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 09:18 (+3, ~2)", + "ts": "2026-05-19T01:19:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "be0efc3", - "message" : "auto-save 2026-05-19 09:24 (+1, ~1)", - "ts" : "2026-05-19T09:24:24+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "be0efc3", + "message": "auto-save 2026-05-19 09:24 (+1, ~1)", + "ts": "2026-05-19T09:24:24+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "1224ddf", - "message" : "auto-save 2026-05-19 09:29 (~3)", - "ts" : "2026-05-19T09:29:50+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "1224ddf", + "message": "auto-save 2026-05-19 09:29 (~3)", + "ts": "2026-05-19T09:29:50+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 09:29 (~3)", - "ts" : "2026-05-19T01:29:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 09:29 (~3)", + "ts": "2026-05-19T01:29:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "781d29c", - "message" : "chore: deploy ai toy patent to vps", - "ts" : "2026-05-19T09:32:28+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "781d29c", + "message": "chore: deploy ai toy patent to vps", + "ts": "2026-05-19T09:32:28+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: deploy ai toy patent to vps", - "ts" : "2026-05-19T01:39:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: deploy ai toy patent to vps", + "ts": "2026-05-19T01:39:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 6, - "hash" : "98690b4", - "message" : "auto-save 2026-05-19 09:46 (~6)", - "ts" : "2026-05-19T09:46:08+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "98690b4", + "message": "auto-save 2026-05-19 09:46 (~6)", + "ts": "2026-05-19T09:46:08+08:00", + "type": "commit" }, { - "files_changed" : 10, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 10 项未提交变更 · 最近提交:auto-save 2026-05-19 09:46 (~6)", - "ts" : "2026-05-19T01:49:59Z", - "type" : "session-heartbeat" + "files_changed": 10, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 10 项未提交变更 · 最近提交:auto-save 2026-05-19 09:46 (~6)", + "ts": "2026-05-19T01:49:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 13, - "hash" : "7b4b5f7", - "message" : "auto-save 2026-05-19 09:51 (+2, ~11)", - "ts" : "2026-05-19T09:51:34+08:00", - "type" : "commit" + "files_changed": 13, + "hash": "7b4b5f7", + "message": "auto-save 2026-05-19 09:51 (+2, ~11)", + "ts": "2026-05-19T09:51:34+08:00", + "type": "commit" }, { - "files_changed" : 0, - "hash" : "0b72759", - "message" : "feat: add anchored image pipeline", - "ts" : "2026-05-19T09:59:44+08:00", - "type" : "commit" + "files_changed": 0, + "hash": "0b72759", + "message": "feat: add anchored image pipeline", + "ts": "2026-05-19T09:59:44+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add anchored image pipeline", - "ts" : "2026-05-19T01:59:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add anchored image pipeline", + "ts": "2026-05-19T01:59:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "9a251ee", - "message" : "auto-save 2026-05-19 10:02 (~2)", - "ts" : "2026-05-19T10:02:27+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "9a251ee", + "message": "auto-save 2026-05-19 10:02 (~2)", + "ts": "2026-05-19T10:02:27+08:00", + "type": "commit" }, { - "files_changed" : 0, - "hash" : "5ff7758", - "message" : "docs: record anchored image pipeline", - "ts" : "2026-05-19T10:03:36+08:00", - "type" : "commit" + "files_changed": 0, + "hash": "5ff7758", + "message": "docs: record anchored image pipeline", + "ts": "2026-05-19T10:03:36+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record anchored image pipeline", - "ts" : "2026-05-19T02:09:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record anchored image pipeline", + "ts": "2026-05-19T02:09:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record anchored image pipeline", - "ts" : "2026-05-19T02:19:59Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record anchored image pipeline", + "ts": "2026-05-19T02:19:59Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "b317abe", - "message" : "auto-save 2026-05-19 10:24 (~2)", - "ts" : "2026-05-19T10:24:13+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "b317abe", + "message": "auto-save 2026-05-19 10:24 (~2)", + "ts": "2026-05-19T10:24:13+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 10:24 (~2)", - "ts" : "2026-05-19T02:30:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 10:24 (~2)", + "ts": "2026-05-19T02:30:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 12, - "hash" : "a3481e7", - "message" : "auto-save 2026-05-19 10:35 (+3, ~8, -1)", - "ts" : "2026-05-19T10:35:04+08:00", - "type" : "commit" + "files_changed": 12, + "hash": "a3481e7", + "message": "auto-save 2026-05-19 10:35 (+3, ~8, -1)", + "ts": "2026-05-19T10:35:04+08:00", + "type": "commit" }, { - "files_changed" : 3, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:auto-save 2026-05-19 10:35 (+3, ~8, -1)", - "ts" : "2026-05-19T02:40:00Z", - "type" : "session-heartbeat" + "files_changed": 3, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:auto-save 2026-05-19 10:35 (+3, ~8, -1)", + "ts": "2026-05-19T02:40:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "12159ca", - "message" : "auto-save 2026-05-19 10:40 (+1, ~3)", - "ts" : "2026-05-19T10:40:30+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "12159ca", + "message": "auto-save 2026-05-19 10:40 (+1, ~3)", + "ts": "2026-05-19T10:40:30+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "a9b1250", - "message" : "feat: add upload replicate mode", - "ts" : "2026-05-19T10:43:58+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a9b1250", + "message": "feat: add upload replicate mode", + "ts": "2026-05-19T10:43:58+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add upload replicate mode", - "ts" : "2026-05-19T02:50:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add upload replicate mode", + "ts": "2026-05-19T02:50:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "d7fd5f2", - "message" : "auto-save 2026-05-19 10:51 (~2)", - "ts" : "2026-05-19T10:51:23+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d7fd5f2", + "message": "auto-save 2026-05-19 10:51 (~2)", + "ts": "2026-05-19T10:51:23+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "25a8843", - "message" : "fix: update OpenAI image response handling", - "ts" : "2026-05-19T10:56:00+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "25a8843", + "message": "fix: update OpenAI image response handling", + "ts": "2026-05-19T10:56:00+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: update OpenAI image response handling", - "ts" : "2026-05-19T03:00:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: update OpenAI image response handling", + "ts": "2026-05-19T03:00:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: update OpenAI image response handling", - "ts" : "2026-05-19T03:10:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: update OpenAI image response handling", + "ts": "2026-05-19T03:10:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "74148d0", - "message" : "auto-save 2026-05-19 11:13 (~2)", - "ts" : "2026-05-19T11:13:07+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "74148d0", + "message": "auto-save 2026-05-19 11:13 (~2)", + "ts": "2026-05-19T11:13:07+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:13 (~2)", - "ts" : "2026-05-19T03:20:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:13 (~2)", + "ts": "2026-05-19T03:20:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 6, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-19 11:13 (~2)", - "ts" : "2026-05-19T03:30:00Z", - "type" : "session-heartbeat" + "files_changed": 6, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-19 11:13 (~2)", + "ts": "2026-05-19T03:30:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 6, - "hash" : "65a9080", - "message" : "auto-save 2026-05-19 11:29 (~6)", - "ts" : "2026-05-19T11:31:13+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "65a9080", + "message": "auto-save 2026-05-19 11:29 (~6)", + "ts": "2026-05-19T11:31:13+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "1cc1d37", - "message" : "auto-save 2026-05-19 11:37 (~2)", - "ts" : "2026-05-19T11:37:09+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "1cc1d37", + "message": "auto-save 2026-05-19 11:37 (~2)", + "ts": "2026-05-19T11:37:09+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:37 (~2)", - "ts" : "2026-05-19T03:40:00Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:37 (~2)", + "ts": "2026-05-19T03:40:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "8e27d3b", - "message" : "fix: handle board uploads and background pack generation", - "ts" : "2026-05-19T11:46:08+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "8e27d3b", + "message": "fix: handle board uploads and background pack generation", + "ts": "2026-05-19T11:46:08+08:00", + "type": "commit" }, { - "files_changed" : 3, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:fix: handle board uploads and background pack generation", - "ts" : "2026-05-19T03:50:00Z", - "type" : "session-heartbeat" + "files_changed": 3, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:fix: handle board uploads and background pack generation", + "ts": "2026-05-19T03:50:00Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "2c2d11b", - "message" : "auto-save 2026-05-19 11:53 (~3)", - "ts" : "2026-05-19T11:53:28+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "2c2d11b", + "message": "auto-save 2026-05-19 11:53 (~3)", + "ts": "2026-05-19T11:53:28+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "e761e72", - "message" : "fix: prevent duplicate pack generation", - "ts" : "2026-05-19T11:53:58+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "e761e72", + "message": "fix: prevent duplicate pack generation", + "ts": "2026-05-19T11:53:58+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "a1063b6", - "message" : "auto-save 2026-05-19 11:58 (~3)", - "ts" : "2026-05-19T11:58:55+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a1063b6", + "message": "auto-save 2026-05-19 11:58 (~3)", + "ts": "2026-05-19T11:58:55+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:58 (~3)", - "ts" : "2026-05-19T04:00:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 11:58 (~3)", + "ts": "2026-05-19T04:00:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "200f908", - "message" : "fix: preserve uploaded brand marks", - "ts" : "2026-05-19T12:00:53+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "200f908", + "message": "fix: preserve uploaded brand marks", + "ts": "2026-05-19T12:00:53+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "1728808", - "message" : "docs: record upload generation safeguards", - "ts" : "2026-05-19T12:08:13+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "1728808", + "message": "docs: record upload generation safeguards", + "ts": "2026-05-19T12:08:13+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "7292bb2", - "message" : "chore: record Muse Mate generation run", - "ts" : "2026-05-19T12:09:24+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "7292bb2", + "message": "chore: record Muse Mate generation run", + "ts": "2026-05-19T12:09:24+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T04:10:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T04:10:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T04:20:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T04:20:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T04:30:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T04:30:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T04:40:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T04:40:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T04:50:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T04:50:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T05:00:01Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T05:00:01Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T05:10:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T05:10:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T05:20:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T05:20:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T05:30:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T05:30:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", - "ts" : "2026-05-19T05:40:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record Muse Mate generation run", + "ts": "2026-05-19T05:40:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "f4ce3d4", - "message" : "auto-save 2026-05-19 13:40 (+1, ~2)", - "ts" : "2026-05-19T13:40:25+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "f4ce3d4", + "message": "auto-save 2026-05-19 13:40 (+1, ~2)", + "ts": "2026-05-19T13:40:25+08:00", + "type": "commit" }, { - "files_changed" : 6, - "hash" : "c49e1b3", - "message" : "chore: align local docker environment", - "ts" : "2026-05-19T13:45:51+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "c49e1b3", + "message": "chore: align local docker environment", + "ts": "2026-05-19T13:45:51+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: align local docker environment", - "ts" : "2026-05-19T05:50:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: align local docker environment", + "ts": "2026-05-19T05:50:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "cdda350", - "message" : "auto-save 2026-05-19 13:56 (+1, ~1)", - "ts" : "2026-05-19T13:56:44+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "cdda350", + "message": "auto-save 2026-05-19 13:56 (+1, ~1)", + "ts": "2026-05-19T13:56:44+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "8ddda6a", - "message" : "feat: add generated image gallery", - "ts" : "2026-05-19T13:58:09+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "8ddda6a", + "message": "feat: add generated image gallery", + "ts": "2026-05-19T13:58:09+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add generated image gallery", - "ts" : "2026-05-19T06:00:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add generated image gallery", + "ts": "2026-05-19T06:00:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "eaed492", - "message" : "auto-save 2026-05-19 14:07 (+1, ~1)", - "ts" : "2026-05-19T14:07:36+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "eaed492", + "message": "auto-save 2026-05-19 14:07 (+1, ~1)", + "ts": "2026-05-19T14:07:36+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:07 (+1, ~1)", - "ts" : "2026-05-19T06:10:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:07 (+1, ~1)", + "ts": "2026-05-19T06:10:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 14, - "hash" : "d327949", - "message" : "auto-save 2026-05-19 14:13 (~14)", - "ts" : "2026-05-19T14:13:02+08:00", - "type" : "commit" + "files_changed": 14, + "hash": "d327949", + "message": "auto-save 2026-05-19 14:13 (~14)", + "ts": "2026-05-19T14:13:02+08:00", + "type": "commit" }, { - "files_changed" : 11, - "hash" : "49db765", - "message" : "auto-save 2026-05-19 14:18 (+1, ~10)", - "ts" : "2026-05-19T14:18:28+08:00", - "type" : "commit" + "files_changed": 11, + "hash": "49db765", + "message": "auto-save 2026-05-19 14:18 (+1, ~10)", + "ts": "2026-05-19T14:18:28+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:18 (+1, ~10)", - "ts" : "2026-05-19T06:20:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:18 (+1, ~10)", + "ts": "2026-05-19T06:20:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "6dfcd08", - "message" : "auto-save 2026-05-19 14:29 (~2)", - "ts" : "2026-05-19T14:29:21+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "6dfcd08", + "message": "auto-save 2026-05-19 14:29 (~2)", + "ts": "2026-05-19T14:29:21+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:29 (~2)", - "ts" : "2026-05-19T06:30:02Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 14:29 (~2)", + "ts": "2026-05-19T06:30:02Z", + "type": "session-heartbeat" }, { - "files_changed" : 23, - "hash" : "a4fffd4", - "message" : "feat: add audit database and safer image review", - "ts" : "2026-05-19T14:31:16+08:00", - "type" : "commit" + "files_changed": 23, + "hash": "a4fffd4", + "message": "feat: add audit database and safer image review", + "ts": "2026-05-19T14:31:16+08:00", + "type": "commit" }, { - "files_changed" : 23, - "hash" : "9ab7756", - "message" : "feat: add audit database and safer image review", - "ts" : "2026-05-19T14:33:52+08:00", - "type" : "commit" + "files_changed": 23, + "hash": "9ab7756", + "message": "feat: add audit database and safer image review", + "ts": "2026-05-19T14:33:52+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:feat: add audit database and safer image review", - "ts" : "2026-05-19T06:40:03Z", - "type" : "session-heartbeat" + "files_changed": 2, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:feat: add audit database and safer image review", + "ts": "2026-05-19T06:40:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "d6af010", - "message" : "auto-save 2026-05-19 14:40 (~2)", - "ts" : "2026-05-19T14:40:13+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d6af010", + "message": "auto-save 2026-05-19 14:40 (~2)", + "ts": "2026-05-19T14:40:13+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "254c2c3", - "message" : "fix: polish regeneration controls", - "ts" : "2026-05-19T14:45:02+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "254c2c3", + "message": "fix: polish regeneration controls", + "ts": "2026-05-19T14:45:02+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "aa03bae", - "message" : "fix: polish regeneration controls", - "ts" : "2026-05-19T14:45:29+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "aa03bae", + "message": "fix: polish regeneration controls", + "ts": "2026-05-19T14:45:29+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: polish regeneration controls", - "ts" : "2026-05-19T06:50:03Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: polish regeneration controls", + "ts": "2026-05-19T06:50:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 8, - "hash" : "010cb44", - "message" : "auto-save 2026-05-19 14:56 (+5, ~1)", - "ts" : "2026-05-19T14:56:30+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "010cb44", + "message": "auto-save 2026-05-19 14:56 (+5, ~1)", + "ts": "2026-05-19T14:56:30+08:00", + "type": "commit" }, { - "files_changed" : 8, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 8 项未提交变更 · 最近提交:auto-save 2026-05-19 14:56 (+5, ~1)", - "ts" : "2026-05-19T07:00:03Z", - "type" : "session-heartbeat" + "files_changed": 8, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 8 项未提交变更 · 最近提交:auto-save 2026-05-19 14:56 (+5, ~1)", + "ts": "2026-05-19T07:00:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 9, - "hash" : "e723029", - "message" : "auto-save 2026-05-19 15:01 (+1, ~8, -1)", - "ts" : "2026-05-19T15:01:55+08:00", - "type" : "commit" + "files_changed": 9, + "hash": "e723029", + "message": "auto-save 2026-05-19 15:01 (+1, ~8, -1)", + "ts": "2026-05-19T15:01:55+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 15:01 (+1, ~8, -1)", - "ts" : "2026-05-19T07:10:03Z", - "type" : "session-heartbeat" + "files_changed": 2, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-19 15:01 (+1, ~8, -1)", + "ts": "2026-05-19T07:10:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "d3e29e7", - "message" : "auto-save 2026-05-19 15:12 (~2)", - "ts" : "2026-05-19T15:12:47+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d3e29e7", + "message": "auto-save 2026-05-19 15:12 (~2)", + "ts": "2026-05-19T15:12:47+08:00", + "type": "commit" }, { - "files_changed" : 14, - "hash" : "2fdd04c", - "message" : "auto-save 2026-05-19 15:18 (~7)", - "ts" : "2026-05-19T15:18:13+08:00", - "type" : "commit" + "files_changed": 14, + "hash": "2fdd04c", + "message": "auto-save 2026-05-19 15:18 (~7)", + "ts": "2026-05-19T15:18:13+08:00", + "type": "commit" }, { - "files_changed" : 14, - "hash" : "091a195", - "message" : "feat: add protected login workspace", - "ts" : "2026-05-19T15:18:46+08:00", - "type" : "commit" + "files_changed": 14, + "hash": "091a195", + "message": "feat: add protected login workspace", + "ts": "2026-05-19T15:18:46+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add protected login workspace", - "ts" : "2026-05-19T07:20:03Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:feat: add protected login workspace", + "ts": "2026-05-19T07:20:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 5, - "hash" : "aaba4a4", - "message" : "auto-save 2026-05-19 15:29 (+2, ~3)", - "ts" : "2026-05-19T15:29:06+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "aaba4a4", + "message": "auto-save 2026-05-19 15:29 (+2, ~3)", + "ts": "2026-05-19T15:29:06+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 15:29 (+2, ~3)", - "ts" : "2026-05-19T07:30:03Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 15:29 (+2, ~3)", + "ts": "2026-05-19T07:30:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "2f2ea06", - "message" : "fix: clone source login experience", - "ts" : "2026-05-19T15:37:00+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "2f2ea06", + "message": "fix: clone source login experience", + "ts": "2026-05-19T15:37:00+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: clone source login experience", - "ts" : "2026-05-19T07:40:03Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: clone source login experience", + "ts": "2026-05-19T07:40:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 8, - "hash" : "af459e2", - "message" : "auto-save 2026-05-19 15:45 (~8)", - "ts" : "2026-05-19T15:45:26+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "af459e2", + "message": "auto-save 2026-05-19 15:45 (~8)", + "ts": "2026-05-19T15:45:26+08:00", + "type": "commit" }, { - "files_changed" : 6, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-19 15:45 (~8)", - "ts" : "2026-05-19T07:50:03Z", - "type" : "session-heartbeat" + "files_changed": 6, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 6 项未提交变更 · 最近提交:auto-save 2026-05-19 15:45 (~8)", + "ts": "2026-05-19T07:50:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 6, - "hash" : "2f1d7ab", - "message" : "auto-save 2026-05-19 15:50 (~6)", - "ts" : "2026-05-19T15:50:53+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "2f1d7ab", + "message": "auto-save 2026-05-19 15:50 (~6)", + "ts": "2026-05-19T15:50:53+08:00", + "type": "commit" }, { - "files_changed" : 7, - "hash" : "193708a", - "message" : "style: apply oasis glass theme to workspace", - "ts" : "2026-05-19T15:55:18+08:00", - "type" : "commit" + "files_changed": 7, + "hash": "193708a", + "message": "style: apply oasis glass theme to workspace", + "ts": "2026-05-19T15:55:18+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "946f531", - "message" : "fix: lock session intake after creation", - "ts" : "2026-05-19T15:59:14+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "946f531", + "message": "fix: lock session intake after creation", + "ts": "2026-05-19T15:59:14+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: lock session intake after creation", - "ts" : "2026-05-19T08:00:03Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:fix: lock session intake after creation", + "ts": "2026-05-19T08:00:03Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "5db8870", - "message" : "fix: lock session intake after creation", - "ts" : "2026-05-19T16:03:51+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "5db8870", + "message": "fix: lock session intake after creation", + "ts": "2026-05-19T16:03:51+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "e244dd9", - "message" : "auto-save 2026-05-19 16:07 (~2)", - "ts" : "2026-05-19T16:07:12+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "e244dd9", + "message": "auto-save 2026-05-19 16:07 (~2)", + "ts": "2026-05-19T16:07:12+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 16:07 (~2)", - "ts" : "2026-05-19T08:10:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 16:07 (~2)", + "ts": "2026-05-19T08:10:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "2c068f2", - "message" : "fix: lock session intake after creation", - "ts" : "2026-05-19T16:15:35+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "2c068f2", + "message": "fix: lock session intake after creation", + "ts": "2026-05-19T16:15:35+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "c232dd0", - "message" : "fix: lock session intake after creation", - "ts" : "2026-05-19T16:17:58+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "c232dd0", + "message": "fix: lock session intake after creation", + "ts": "2026-05-19T16:17:58+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "ac4f007", - "message" : "chore: add gitea remote metadata", - "ts" : "2026-05-19T16:18:10+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "ac4f007", + "message": "chore: add gitea remote metadata", + "ts": "2026-05-19T16:18:10+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: add gitea remote metadata", - "ts" : "2026-05-19T08:20:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: add gitea remote metadata", + "ts": "2026-05-19T08:20:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:chore: add gitea remote metadata", - "ts" : "2026-05-19T08:30:04Z", - "type" : "session-heartbeat" + "files_changed": 3, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:chore: add gitea remote metadata", + "ts": "2026-05-19T08:30:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "bc0e553", - "message" : "auto-save 2026-05-19 16:29 (~3)", - "ts" : "2026-05-19T16:30:28+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "bc0e553", + "message": "auto-save 2026-05-19 16:29 (~3)", + "ts": "2026-05-19T16:30:28+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "1ec3433", - "message" : "auto-save 2026-05-19 16:38 (~2)", - "ts" : "2026-05-19T16:38:13+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "1ec3433", + "message": "auto-save 2026-05-19 16:38 (~2)", + "ts": "2026-05-19T16:38:13+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 16:38 (~2)", - "ts" : "2026-05-19T08:40:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 16:38 (~2)", + "ts": "2026-05-19T08:40:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "485982b", - "message" : "perf: replace live oasis background with loop", - "ts" : "2026-05-19T16:47:29+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "485982b", + "message": "perf: replace live oasis background with loop", + "ts": "2026-05-19T16:47:29+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", - "ts" : "2026-05-19T08:50:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", + "ts": "2026-05-19T08:50:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", - "ts" : "2026-05-19T09:00:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", + "ts": "2026-05-19T09:00:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", - "ts" : "2026-05-19T09:10:04Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:perf: replace live oasis background with loop", + "ts": "2026-05-19T09:10:04Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "af8d482", - "message" : "chore: add resource index tooling", - "ts" : "2026-05-19T17:15:49+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "af8d482", + "message": "chore: add resource index tooling", + "ts": "2026-05-19T17:15:49+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "401f3c7", - "message" : "chore: record workflow history", - "ts" : "2026-05-19T17:16:20+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "401f3c7", + "message": "chore: record workflow history", + "ts": "2026-05-19T17:16:20+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "ab4625a", - "message" : "chore: update workflow history", - "ts" : "2026-05-19T17:19:00+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "ab4625a", + "message": "chore: update workflow history", + "ts": "2026-05-19T17:19:00+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: update workflow history", - "ts" : "2026-05-19T09:20:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: update workflow history", + "ts": "2026-05-19T09:20:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: update workflow history", - "ts" : "2026-05-19T09:30:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: update workflow history", + "ts": "2026-05-19T09:30:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 4, - "hash" : "27b0424", - "message" : "auto-save 2026-05-19 17:32 (+1, ~3)", - "ts" : "2026-05-19T17:33:20+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "27b0424", + "message": "auto-save 2026-05-19 17:32 (+1, ~3)", + "ts": "2026-05-19T17:33:20+08:00", + "type": "commit" }, { - "files_changed" : 7, - "hash" : "75b1a0a", - "message" : "auto-save 2026-05-19 17:38 (+2, ~5)", - "ts" : "2026-05-19T17:39:02+08:00", - "type" : "commit" + "files_changed": 7, + "hash": "75b1a0a", + "message": "auto-save 2026-05-19 17:38 (+2, ~5)", + "ts": "2026-05-19T17:39:02+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 17:38 (+2, ~5)", - "ts" : "2026-05-19T09:40:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 17:38 (+2, ~5)", + "ts": "2026-05-19T09:40:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 7, - "hash" : "7fff776", - "message" : "auto-save 2026-05-19 17:44 (+6, ~1)", - "ts" : "2026-05-19T17:44:29+08:00", - "type" : "commit" + "files_changed": 7, + "hash": "7fff776", + "message": "auto-save 2026-05-19 17:44 (+6, ~1)", + "ts": "2026-05-19T17:44:29+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 17:44 (+6, ~1)", - "ts" : "2026-05-19T09:50:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 17:44 (+6, ~1)", + "ts": "2026-05-19T09:50:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 15, - "hash" : "265d7c9", - "message" : "feat: add visual style picker and contextual previews", - "ts" : "2026-05-19T17:51:46+08:00", - "type" : "commit" + "files_changed": 15, + "hash": "265d7c9", + "message": "feat: add visual style picker and contextual previews", + "ts": "2026-05-19T17:51:46+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "6263df5", - "message" : "chore: record style picker workflow", - "ts" : "2026-05-19T17:52:15+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "6263df5", + "message": "chore: record style picker workflow", + "ts": "2026-05-19T17:52:15+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "f0f629a", - "message" : "chore: record style picker deployment", - "ts" : "2026-05-19T17:56:14+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "f0f629a", + "message": "chore: record style picker deployment", + "ts": "2026-05-19T17:56:14+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record style picker deployment", - "ts" : "2026-05-19T10:00:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record style picker deployment", + "ts": "2026-05-19T10:00:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "3b04bb1", - "message" : "auto-save 2026-05-19 18:06 (~3)", - "ts" : "2026-05-19T18:06:14+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "3b04bb1", + "message": "auto-save 2026-05-19 18:06 (~3)", + "ts": "2026-05-19T18:06:14+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 18:06 (~3)", - "ts" : "2026-05-19T10:10:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 18:06 (~3)", + "ts": "2026-05-19T10:10:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "d068580", - "message" : "fix: move selected session detail to sidebar", - "ts" : "2026-05-19T18:16:39+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d068580", + "message": "fix: move selected session detail to sidebar", + "ts": "2026-05-19T18:16:39+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "36e5e19", - "message" : "chore: record sidebar detail workflow", - "ts" : "2026-05-19T18:16:55+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "36e5e19", + "message": "chore: record sidebar detail workflow", + "ts": "2026-05-19T18:16:55+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar detail workflow", - "ts" : "2026-05-19T10:20:05Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar detail workflow", + "ts": "2026-05-19T10:20:05Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "aa1169c", - "message" : "fix: anchor active session detail to sidebar edge", - "ts" : "2026-05-19T18:25:53+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "aa1169c", + "message": "fix: anchor active session detail to sidebar edge", + "ts": "2026-05-19T18:25:53+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "3be26b8", - "message" : "chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T18:26:02+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "3be26b8", + "message": "chore: record sidebar edge detail workflow", + "ts": "2026-05-19T18:26:02+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T10:30:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T10:30:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T10:40:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T10:40:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T10:50:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T10:50:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T11:00:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T11:00:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T11:10:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T11:10:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", - "ts" : "2026-05-19T11:20:06Z", - "type" : "session-heartbeat" + "files_changed": 3, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 3 项未提交变更 · 最近提交:chore: record sidebar edge detail workflow", + "ts": "2026-05-19T11:20:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "b0ff1e1", - "message" : "fix: place current session info in left rail", - "ts" : "2026-05-19T19:20:58+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "b0ff1e1", + "message": "fix: place current session info in left rail", + "ts": "2026-05-19T19:20:58+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "ceed2cc", - "message" : "chore: record current session rail workflow", - "ts" : "2026-05-19T19:21:22+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "ceed2cc", + "message": "chore: record current session rail workflow", + "ts": "2026-05-19T19:21:22+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "ddd3364", - "message" : "auto-save 2026-05-19 19:27 (~3)", - "ts" : "2026-05-19T19:27:40+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "ddd3364", + "message": "auto-save 2026-05-19 19:27 (~3)", + "ts": "2026-05-19T19:27:40+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 19:27 (~3)", - "ts" : "2026-05-19T11:30:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 19:27 (~3)", + "ts": "2026-05-19T11:30:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "41bb5f4", - "message" : "auto-save 2026-05-19 19:33 (~3)", - "ts" : "2026-05-19T19:33:06+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "41bb5f4", + "message": "auto-save 2026-05-19 19:33 (~3)", + "ts": "2026-05-19T19:33:06+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "ce37f85", - "message" : "fix: move selected session detail into sidebar", - "ts" : "2026-05-19T19:35:15+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "ce37f85", + "message": "fix: move selected session detail into sidebar", + "ts": "2026-05-19T19:35:15+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "39adcc5", - "message" : "chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T19:35:15+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "39adcc5", + "message": "chore: record sidebar nested detail workflow", + "ts": "2026-05-19T19:35:15+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T11:40:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", + "ts": "2026-05-19T11:40:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T11:50:06Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", + "ts": "2026-05-19T11:50:06Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T12:00:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", + "ts": "2026-05-19T12:00:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T12:10:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", + "ts": "2026-05-19T12:10:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", - "ts" : "2026-05-19T12:20:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar nested detail workflow", + "ts": "2026-05-19T12:20:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "1264d78", - "message" : "auto-save 2026-05-19 20:21 (~2)", - "ts" : "2026-05-19T20:21:56+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "1264d78", + "message": "auto-save 2026-05-19 20:21 (~2)", + "ts": "2026-05-19T20:21:56+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "20bb8a0", - "message" : "fix: show selected session detail beside sidebar", - "ts" : "2026-05-19T20:26:30+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "20bb8a0", + "message": "fix: show selected session detail beside sidebar", + "ts": "2026-05-19T20:26:30+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "ece4db3", - "message" : "chore: record sidebar side detail workflow", - "ts" : "2026-05-19T20:26:30+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "ece4db3", + "message": "chore: record sidebar side detail workflow", + "ts": "2026-05-19T20:26:30+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar side detail workflow", - "ts" : "2026-05-19T12:30:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record sidebar side detail workflow", + "ts": "2026-05-19T12:30:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 3, - "hash" : "08177f1", - "message" : "auto-save 2026-05-19 20:32 (~3)", - "ts" : "2026-05-19T20:32:50+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "08177f1", + "message": "auto-save 2026-05-19 20:32 (~3)", + "ts": "2026-05-19T20:32:50+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "6c3f5ed", - "message" : "fix: preserve result thumbnail aspect ratios", - "ts" : "2026-05-19T20:35:16+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "6c3f5ed", + "message": "fix: preserve result thumbnail aspect ratios", + "ts": "2026-05-19T20:35:16+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "1d7166e", - "message" : "chore: record aspect thumbnail workflow", - "ts" : "2026-05-19T20:35:16+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "1d7166e", + "message": "chore: record aspect thumbnail workflow", + "ts": "2026-05-19T20:35:16+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record aspect thumbnail workflow", - "ts" : "2026-05-19T12:40:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record aspect thumbnail workflow", + "ts": "2026-05-19T12:40:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 2, - "hash" : "d56db6e", - "message" : "auto-save 2026-05-19 20:49 (~2)", - "ts" : "2026-05-19T20:49:07+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d56db6e", + "message": "auto-save 2026-05-19 20:49 (~2)", + "ts": "2026-05-19T20:49:07+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 20:49 (~2)", - "ts" : "2026-05-19T12:50:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 20:49 (~2)", + "ts": "2026-05-19T12:50:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "4c9af4e", - "message" : "fix: shrink result thumbnails", - "ts" : "2026-05-19T20:52:34+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "4c9af4e", + "message": "fix: shrink result thumbnails", + "ts": "2026-05-19T20:52:34+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "34bc275", - "message" : "chore: record small thumbnail workflow", - "ts" : "2026-05-19T20:52:34+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "34bc275", + "message": "chore: record small thumbnail workflow", + "ts": "2026-05-19T20:52:34+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "b7e2047", - "message" : "auto-save 2026-05-19 20:59 (~2)", - "ts" : "2026-05-19T20:59:59+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "b7e2047", + "message": "auto-save 2026-05-19 20:59 (~2)", + "ts": "2026-05-19T20:59:59+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 20:59 (~2)", - "ts" : "2026-05-19T13:00:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-19 20:59 (~2)", + "ts": "2026-05-19T13:00:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "a13bd05", - "message" : "fix: enlarge result thumbnails", - "ts" : "2026-05-19T21:05:38+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "a13bd05", + "message": "fix: enlarge result thumbnails", + "ts": "2026-05-19T21:05:38+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "7b63ade", - "message" : "chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T21:05:38+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "7b63ade", + "message": "chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T21:05:38+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T13:10:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T13:10:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T13:20:07Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T13:20:07Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T13:30:08Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T13:30:08Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T13:40:08Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T13:40:08Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T13:50:08Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T13:50:08Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T14:00:08Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T14:00:08Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T15:40:29Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T15:40:29Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T15:50:29Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T15:50:29Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T16:00:29Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T16:00:29Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T16:02:50Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T16:02:50Z", + "type": "session-end" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", - "ts" : "2026-05-19T16:02:50Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:chore: record enlarged thumbnail workflow", + "ts": "2026-05-19T16:02:50Z", + "type": "session-end" }, { - "files_changed" : 5, - "hash" : "e72ba50", - "message" : "auto-save 2026-05-20 00:24 (~5)", - "ts" : "2026-05-20T00:24:31+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "e72ba50", + "message": "auto-save 2026-05-20 00:24 (~5)", + "ts": "2026-05-20T00:24:31+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "92df778", - "message" : "auto-save 2026-05-20 00:29 (~4)", - "ts" : "2026-05-20T00:29:58+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "92df778", + "message": "auto-save 2026-05-20 00:29 (~4)", + "ts": "2026-05-20T00:29:58+08:00", + "type": "commit" }, { - "files_changed" : 8, - "hash" : "3547987", - "message" : "auto-save 2026-05-20 00:51 (~8)", - "ts" : "2026-05-20T00:51:41+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "3547987", + "message": "auto-save 2026-05-20 00:51 (~8)", + "ts": "2026-05-20T00:51:41+08:00", + "type": "commit" }, { - "files_changed" : 8, - "hash" : "7fcda19", - "message" : "fix: loosen glass dashboard workspace", - "ts" : "2026-05-20T00:52:31+08:00", - "type" : "commit" + "files_changed": 8, + "hash": "7fcda19", + "message": "fix: loosen glass dashboard workspace", + "ts": "2026-05-20T00:52:31+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "ccbfd3e", - "message" : "auto-save 2026-05-20 09:49 (~3)", - "ts" : "2026-05-20T09:49:16+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "ccbfd3e", + "message": "auto-save 2026-05-20 09:49 (~3)", + "ts": "2026-05-20T09:49:16+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "7ad323a", - "message" : "auto-save 2026-05-20 09:54 (~3)", - "ts" : "2026-05-20T09:54:43+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "7ad323a", + "message": "auto-save 2026-05-20 09:54 (~3)", + "ts": "2026-05-20T09:54:43+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "a62f9b1", - "message" : "auto-save 2026-05-20 12:33 (+1, ~1)", - "ts" : "2026-05-20T12:33:03+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "a62f9b1", + "message": "auto-save 2026-05-20 12:33 (+1, ~1)", + "ts": "2026-05-20T12:33:03+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "a25b740", - "message" : "auto-save 2026-05-20 12:38 (~3)", - "ts" : "2026-05-20T12:38:29+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a25b740", + "message": "auto-save 2026-05-20 12:38 (~3)", + "ts": "2026-05-20T12:38:29+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "a190800", - "message" : "auto-save 2026-05-20 12:49 (~3)", - "ts" : "2026-05-20T12:49:21+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a190800", + "message": "auto-save 2026-05-20 12:49 (~3)", + "ts": "2026-05-20T12:49:21+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "09664a2", - "message" : "auto-save 2026-05-20 14:07 (-1)", - "ts" : "2026-05-20T14:07:08+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "09664a2", + "message": "auto-save 2026-05-20 14:07 (-1)", + "ts": "2026-05-20T14:07:08+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "6bd8873", - "message" : "auto-save 2026-05-20 14:12 (+1, ~3)", - "ts" : "2026-05-20T14:12:33+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "6bd8873", + "message": "auto-save 2026-05-20 14:12 (+1, ~3)", + "ts": "2026-05-20T14:12:33+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "527ccfa", - "message" : "auto-save 2026-05-20 14:45 (~4)", - "ts" : "2026-05-20T14:45:05+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "527ccfa", + "message": "auto-save 2026-05-20 14:45 (~4)", + "ts": "2026-05-20T14:45:05+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "9b1833c", - "message" : "auto-save 2026-05-20 16:33 (~2)", - "ts" : "2026-05-20T16:33:38+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "9b1833c", + "message": "auto-save 2026-05-20 16:33 (~2)", + "ts": "2026-05-20T16:33:38+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "e2465d8", - "message" : "auto-save 2026-05-20 16:39 (~3)", - "ts" : "2026-05-20T16:39:05+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "e2465d8", + "message": "auto-save 2026-05-20 16:39 (~3)", + "ts": "2026-05-20T16:39:05+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "3b04b72", - "message" : "auto-save 2026-05-20 16:44 (~2)", - "ts" : "2026-05-20T16:44:32+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "3b04b72", + "message": "auto-save 2026-05-20 16:44 (~2)", + "ts": "2026-05-20T16:44:32+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "61e597c", - "message" : "fix: improve project brief preview layout", - "ts" : "2026-05-20T16:48:16+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "61e597c", + "message": "fix: improve project brief preview layout", + "ts": "2026-05-20T16:48:16+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "8d4275f", - "message" : "fix: improve project brief preview layout", - "ts" : "2026-05-20T16:48:47+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "8d4275f", + "message": "fix: improve project brief preview layout", + "ts": "2026-05-20T16:48:47+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "36c93cd", - "message" : "auto-save 2026-05-20 17:11 (~2)", - "ts" : "2026-05-20T17:11:41+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "36c93cd", + "message": "auto-save 2026-05-20 17:11 (~2)", + "ts": "2026-05-20T17:11:41+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "288b695", - "message" : "fix: preserve primary image aspect ratio", - "ts" : "2026-05-20T17:13:15+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "288b695", + "message": "fix: preserve primary image aspect ratio", + "ts": "2026-05-20T17:13:15+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "1325a73", - "message" : "auto-save 2026-05-20 17:17 (~2)", - "ts" : "2026-05-20T17:17:06+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "1325a73", + "message": "auto-save 2026-05-20 17:17 (~2)", + "ts": "2026-05-20T17:17:06+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "94bca09", - "message" : "fix: default replicate previews to portrait ratio", - "ts" : "2026-05-20T17:17:42+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "94bca09", + "message": "fix: default replicate previews to portrait ratio", + "ts": "2026-05-20T17:17:42+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "30790d2", - "message" : "auto-save 2026-05-20 17:38 (~2)", - "ts" : "2026-05-20T17:38:50+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "30790d2", + "message": "auto-save 2026-05-20 17:38 (~2)", + "ts": "2026-05-20T17:38:50+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "6ad847f", - "message" : "auto-save 2026-05-20 17:44 (~4)", - "ts" : "2026-05-20T17:44:16+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "6ad847f", + "message": "auto-save 2026-05-20 17:44 (~4)", + "ts": "2026-05-20T17:44:16+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "ef77adb", - "message" : "auto-save 2026-05-20 17:49 (~2)", - "ts" : "2026-05-20T17:49:41+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "ef77adb", + "message": "auto-save 2026-05-20 17:49 (~2)", + "ts": "2026-05-20T17:49:41+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "9d91086", - "message" : "auto-save 2026-05-20 18:00 (+1, ~1)", - "ts" : "2026-05-20T18:00:32+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "9d91086", + "message": "auto-save 2026-05-20 18:00 (+1, ~1)", + "ts": "2026-05-20T18:00:32+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "9cabc44", - "message" : "auto-save 2026-05-20 18:05 (+1, ~1)", - "ts" : "2026-05-20T18:05:58+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "9cabc44", + "message": "auto-save 2026-05-20 18:05 (+1, ~1)", + "ts": "2026-05-20T18:05:58+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "b35c386", - "message" : "auto-save 2026-05-20 18:22 (+2, ~3)", - "ts" : "2026-05-20T18:22:16+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "b35c386", + "message": "auto-save 2026-05-20 18:22 (+2, ~3)", + "ts": "2026-05-20T18:22:16+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "62b322a", - "message" : "auto-save 2026-05-20 18:27 (+3, ~1)", - "ts" : "2026-05-20T18:27:42+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "62b322a", + "message": "auto-save 2026-05-20 18:27 (+3, ~1)", + "ts": "2026-05-20T18:27:42+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "e2c288f", - "message" : "auto-save 2026-05-20 18:33 (~5)", - "ts" : "2026-05-20T18:33:08+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "e2c288f", + "message": "auto-save 2026-05-20 18:33 (~5)", + "ts": "2026-05-20T18:33:08+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "f0b85dd", - "message" : "fix: merge pack progress into project brief", - "ts" : "2026-05-20T18:40:30+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "f0b85dd", + "message": "fix: merge pack progress into project brief", + "ts": "2026-05-20T18:40:30+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "f2fe3e9", - "message" : "auto-save 2026-05-20 18:49 (~3)", - "ts" : "2026-05-20T18:49:26+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "f2fe3e9", + "message": "auto-save 2026-05-20 18:49 (~3)", + "ts": "2026-05-20T18:49:26+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "b49d795", - "message" : "auto-save 2026-05-20 19:00 (~3)", - "ts" : "2026-05-20T19:00:17+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "b49d795", + "message": "auto-save 2026-05-20 19:00 (~3)", + "ts": "2026-05-20T19:00:17+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "d3d9349", - "message" : "fix: show pack assets as horizontal detail strip", - "ts" : "2026-05-20T19:00:44+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "d3d9349", + "message": "fix: show pack assets as horizontal detail strip", + "ts": "2026-05-20T19:00:44+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "6ee6e36", - "message" : "auto-save 2026-05-20 19:11 (~2)", - "ts" : "2026-05-20T19:11:08+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "6ee6e36", + "message": "auto-save 2026-05-20 19:11 (~2)", + "ts": "2026-05-20T19:11:08+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "2e3bc50", - "message" : "fix: switch asset tabs as single panel", - "ts" : "2026-05-20T19:22:24+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "2e3bc50", + "message": "fix: switch asset tabs as single panel", + "ts": "2026-05-20T19:22:24+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "a93be9b", - "message" : "auto-save 2026-05-20 19:27 (~3)", - "ts" : "2026-05-20T19:27:49+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "a93be9b", + "message": "auto-save 2026-05-20 19:27 (~3)", + "ts": "2026-05-20T19:27:49+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "5a05058", - "message" : "fix: render asset tabs as ratio-preserving grid", - "ts" : "2026-05-20T19:36:55+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "5a05058", + "message": "fix: render asset tabs as ratio-preserving grid", + "ts": "2026-05-20T19:36:55+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "89c3ed7", - "message" : "auto-save 2026-05-20 19:49 (~2)", - "ts" : "2026-05-20T19:49:32+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "89c3ed7", + "message": "auto-save 2026-05-20 19:49 (~2)", + "ts": "2026-05-20T19:49:32+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "cacb0bd", - "message" : "fix: keep hover previews near pointer", - "ts" : "2026-05-20T19:50:56+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "cacb0bd", + "message": "fix: keep hover previews near pointer", + "ts": "2026-05-20T19:50:56+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "40c8bc1", - "message" : "auto-save 2026-05-20 20:00 (~5)", - "ts" : "2026-05-20T20:00:24+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "40c8bc1", + "message": "auto-save 2026-05-20 20:00 (~5)", + "ts": "2026-05-20T20:00:24+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "c002c37", - "message" : "auto-save 2026-05-20 20:11 (~2)", - "ts" : "2026-05-20T20:11:16+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "c002c37", + "message": "auto-save 2026-05-20 20:11 (~2)", + "ts": "2026-05-20T20:11:16+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "3f087ed", - "message" : "fix: sync side gallery with active asset panel", - "ts" : "2026-05-20T20:16:29+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "3f087ed", + "message": "fix: sync side gallery with active asset panel", + "ts": "2026-05-20T20:16:29+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "be4e1ad", - "message" : "auto-save 2026-05-20 20:22 (+1, ~1)", - "ts" : "2026-05-20T20:22:10+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "be4e1ad", + "message": "auto-save 2026-05-20 20:22 (+1, ~1)", + "ts": "2026-05-20T20:22:10+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "cd1a870", - "message" : "auto-save 2026-05-20 20:27 (~5)", - "ts" : "2026-05-20T20:27:35+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "cd1a870", + "message": "auto-save 2026-05-20 20:27 (~5)", + "ts": "2026-05-20T20:27:35+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "0ebbe2e", - "message" : "auto-save 2026-05-20 20:32 (~2)", - "ts" : "2026-05-20T20:33:02+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "0ebbe2e", + "message": "auto-save 2026-05-20 20:32 (~2)", + "ts": "2026-05-20T20:33:02+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "0869c74", - "message" : "feat: add active pack image downloads", - "ts" : "2026-05-20T20:42:45+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "0869c74", + "message": "feat: add active pack image downloads", + "ts": "2026-05-20T20:42:45+08:00", + "type": "commit" }, { - "files_changed" : 6, - "hash" : "0f389a0", - "message" : "auto-save 2026-05-20 20:49 (+2, ~4)", - "ts" : "2026-05-20T20:49:19+08:00", - "type" : "commit" + "files_changed": 6, + "hash": "0f389a0", + "message": "auto-save 2026-05-20 20:49 (+2, ~4)", + "ts": "2026-05-20T20:49:19+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "5180db7", - "message" : "auto-save 2026-05-20 20:54 (~3)", - "ts" : "2026-05-20T20:54:46+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "5180db7", + "message": "auto-save 2026-05-20 20:54 (~3)", + "ts": "2026-05-20T20:54:46+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "96afeee", - "message" : "auto-save 2026-05-20 21:05 (~2)", - "ts" : "2026-05-20T21:05:37+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "96afeee", + "message": "auto-save 2026-05-20 21:05 (~2)", + "ts": "2026-05-20T21:05:37+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "c12fe00", - "message" : "auto-save 2026-05-20 21:16 (~2)", - "ts" : "2026-05-20T21:16:29+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "c12fe00", + "message": "auto-save 2026-05-20 21:16 (~2)", + "ts": "2026-05-20T21:16:29+08:00", + "type": "commit" }, { - "files_changed" : 9, - "hash" : "765744d", - "message" : "feat: persist text and video outputs", - "ts" : "2026-05-20T21:20:41+08:00", - "type" : "commit" + "files_changed": 9, + "hash": "765744d", + "message": "feat: persist text and video outputs", + "ts": "2026-05-20T21:20:41+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "52844b2", - "message" : "auto-save 2026-05-20 21:27 (+1, ~4)", - "ts" : "2026-05-20T21:27:22+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "52844b2", + "message": "auto-save 2026-05-20 21:27 (+1, ~4)", + "ts": "2026-05-20T21:27:22+08:00", + "type": "commit" }, { - "files_changed" : 4, - "hash" : "5d95e91", - "message" : "fix: archive generated videos locally", - "ts" : "2026-05-20T21:29:43+08:00", - "type" : "commit" + "files_changed": 4, + "hash": "5d95e91", + "message": "fix: archive generated videos locally", + "ts": "2026-05-20T21:29:43+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "7106f3a", - "message" : "fix: make video prompts material adaptive", - "ts" : "2026-05-20T21:38:07+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "7106f3a", + "message": "fix: make video prompts material adaptive", + "ts": "2026-05-20T21:38:07+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "33f87eb", - "message" : "auto-save 2026-05-20 22:43 (~2)", - "ts" : "2026-05-20T22:43:19+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "33f87eb", + "message": "auto-save 2026-05-20 22:43 (~2)", + "ts": "2026-05-20T22:43:19+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "a3d0c97", - "message" : "auto-save 2026-05-20 22:48 (~2)", - "ts" : "2026-05-20T22:48:44+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "a3d0c97", + "message": "auto-save 2026-05-20 22:48 (~2)", + "ts": "2026-05-20T22:48:44+08:00", + "type": "commit" }, { - "files_changed" : 3, - "hash" : "7697754", - "message" : "auto-save 2026-05-20 22:54 (~3)", - "ts" : "2026-05-20T22:54:10+08:00", - "type" : "commit" + "files_changed": 3, + "hash": "7697754", + "message": "auto-save 2026-05-20 22:54 (~3)", + "ts": "2026-05-20T22:54:10+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "e85be86", - "message" : "auto-save 2026-05-20 23:53 (~2)", - "ts" : "2026-05-20T23:55:28+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "e85be86", + "message": "auto-save 2026-05-20 23:53 (~2)", + "ts": "2026-05-20T23:55:28+08:00", + "type": "commit" }, { - "files_changed" : 5, - "hash" : "fa6e32b", - "message" : "auto-save 2026-05-21 02:09 (~5)", - "ts" : "2026-05-21T02:09:03+08:00", - "type" : "commit" + "files_changed": 5, + "hash": "fa6e32b", + "message": "auto-save 2026-05-21 02:09 (~5)", + "ts": "2026-05-21T02:09:03+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "da12ed0", - "message" : "auto-save 2026-05-21 02:19 (~2)", - "ts" : "2026-05-21T02:19:55+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "da12ed0", + "message": "auto-save 2026-05-21 02:19 (~2)", + "ts": "2026-05-21T02:19:55+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "7524b3c", - "message" : "auto-save 2026-05-21 02:25 (~2)", - "ts" : "2026-05-21T02:25:21+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "7524b3c", + "message": "auto-save 2026-05-21 02:25 (~2)", + "ts": "2026-05-21T02:25:21+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "9520d93", - "message" : "auto-save 2026-05-21 02:30 (~2)", - "ts" : "2026-05-21T02:30:46+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "9520d93", + "message": "auto-save 2026-05-21 02:30 (~2)", + "ts": "2026-05-21T02:30:46+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "515ef79", - "message" : "auto-save 2026-05-21 02:36 (~2)", - "ts" : "2026-05-21T02:36:11+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "515ef79", + "message": "auto-save 2026-05-21 02:36 (~2)", + "ts": "2026-05-21T02:36:11+08:00", + "type": "commit" }, { - "files_changed" : 2, - "hash" : "0c1a9ef", - "message" : "auto-save 2026-05-21 08:45 (~2)", - "ts" : "2026-05-21T08:45:25+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "0c1a9ef", + "message": "auto-save 2026-05-21 08:45 (~2)", + "ts": "2026-05-21T08:45:25+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-21 08:45 (~2)", - "ts" : "2026-05-21T13:43:10Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-21 08:45 (~2)", + "ts": "2026-05-21T13:43:10Z", + "type": "assistant-session" }, { - "files_changed" : 2, - "hash" : "aec48a7", - "message" : "auto-save 2026-05-21 21:48 (~2)", - "ts" : "2026-05-21T21:48:19+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "aec48a7", + "message": "auto-save 2026-05-21 21:48 (~2)", + "ts": "2026-05-21T21:48:19+08:00", + "type": "commit" }, { - "files_changed" : 9, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 9 项未提交变更 · 最近提交:auto-save 2026-05-21 21:48 (~2)", - "ts" : "2026-05-21T13:53:12Z", - "type" : "session-heartbeat" + "files_changed": 9, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 9 项未提交变更 · 最近提交:auto-save 2026-05-21 21:48 (~2)", + "ts": "2026-05-21T13:53:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 9, - "hash" : "41e22a3", - "message" : "auto-save 2026-05-21 21:53 (~9)", - "ts" : "2026-05-21T21:53:46+08:00", - "type" : "commit" + "files_changed": 9, + "hash": "41e22a3", + "message": "auto-save 2026-05-21 21:53 (~9)", + "ts": "2026-05-21T21:53:46+08:00", + "type": "commit" }, { - "files_changed" : 9, - "hash" : "b6d7feb", - "message" : "fix: stream media previews", - "ts" : "2026-05-21T21:56:20+08:00", - "type" : "commit" + "files_changed": 9, + "hash": "b6d7feb", + "message": "fix: stream media previews", + "ts": "2026-05-21T21:56:20+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "8d3128d", - "message" : "docs: record media performance deploy", - "ts" : "2026-05-21T21:59:50+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "8d3128d", + "message": "docs: record media performance deploy", + "ts": "2026-05-21T21:59:50+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:03:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:03:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:13:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:13:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:23:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:23:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:33:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:33:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:43:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:43:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T14:53:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T14:53:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:03:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:03:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:13:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:13:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:23:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:23:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:33:11Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:33:11Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:43:11Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:43:11Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T15:53:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T15:53:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:03:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:03:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:13:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:13:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:23:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:23:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:33:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:33:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:43:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:43:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T16:53:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T16:53:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:03:12Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:03:12Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:13:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:13:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:23:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:23:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:33:13Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:33:13Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:43:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:43:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T17:53:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T17:53:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:03:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:03:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:13:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:13:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:23:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:23:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:33:15Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:33:15Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:43:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:43:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T18:53:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T18:53:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:03:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:03:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:13:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:13:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:23:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:23:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:33:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:33:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:43:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:43:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T19:53:16Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T19:53:16Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:03:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:03:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:13:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:13:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:23:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:23:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:33:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:33:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:43:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:43:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T20:53:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T20:53:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:03:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:03:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:13:17Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:13:17Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:23:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:23:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:33:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:33:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:43:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:43:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T21:53:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T21:53:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:03:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:03:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:13:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:13:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:23:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:23:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:33:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:33:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:43:18Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:43:18Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T22:53:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T22:53:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T23:03:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T23:03:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T23:13:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T23:13:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T23:23:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T23:23:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T23:33:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T23:33:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-21T23:43:19Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-21T23:43:19Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", - "ts" : "2026-05-22T00:57:42Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record media performance deploy", + "ts": "2026-05-22T00:57:42Z", + "type": "session-end" }, { - "files_changed" : 2, - "hash" : "335231f", - "message" : "auto-save 2026-05-22 09:01 (~2)", - "ts" : "2026-05-22T09:03:04+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "335231f", + "message": "auto-save 2026-05-22 09:01 (~2)", + "ts": "2026-05-22T09:03:04+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-22 09:01 (~2)", - "ts" : "2026-05-22T04:48:44Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-22 09:01 (~2)", + "ts": "2026-05-22T04:48:44Z", + "type": "assistant-session" }, { - "files_changed" : 2, - "hash" : "20d2d8f", - "message" : "auto-save 2026-05-22 12:50 (~2)", - "ts" : "2026-05-22T12:50:09+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "20d2d8f", + "message": "auto-save 2026-05-22 12:50 (~2)", + "ts": "2026-05-22T12:50:09+08:00", + "type": "commit" }, { - "files_changed" : 2, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-22 12:50 (~2)", - "ts" : "2026-05-22T04:58:47Z", - "type" : "session-heartbeat" + "files_changed": 2, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-22 12:50 (~2)", + "ts": "2026-05-22T04:58:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "hash" : "7abbb7d", - "message" : "fix: dedupe suffixed video tasks", - "ts" : "2026-05-22T12:59:12+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "7abbb7d", + "message": "fix: dedupe suffixed video tasks", + "ts": "2026-05-22T12:59:12+08:00", + "type": "commit" }, { - "files_changed" : 1, - "hash" : "f38c524", - "message" : "docs: record video panel deploy", - "ts" : "2026-05-22T13:02:12+08:00", - "type" : "commit" + "files_changed": 1, + "hash": "f38c524", + "message": "docs: record video panel deploy", + "ts": "2026-05-22T13:02:12+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:08:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:08:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:18:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:18:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:28:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:28:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:38:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:38:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:48:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:48:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T05:58:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T05:58:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:08:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:08:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:18:47Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:18:47Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:28:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:28:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:38:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:38:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:48:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:48:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T06:58:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T06:58:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:08:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:08:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:18:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:18:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:28:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:28:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:38:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:38:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:48:48Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:48:48Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T07:58:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T07:58:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:08:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:08:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:18:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:18:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:28:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:28:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:38:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:38:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:48:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:48:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T08:58:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T08:58:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:08:49Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:08:49Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:18:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:18:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:28:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:28:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:38:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:38:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:48:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:48:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T09:58:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T09:58:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:08:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:08:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:18:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:18:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:28:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:28:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:38:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:38:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:48:50Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:48:50Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T10:58:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T10:58:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T11:08:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T11:08:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T11:18:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T11:18:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T11:28:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T11:28:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T11:38:51Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T11:38:51Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-22T11:41:52Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-22T11:41:52Z", + "type": "session-end" }, { - "files_changed" : 2, - "message" : "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:docs: record video panel deploy", - "ts" : "2026-05-23T03:20:18Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Codex 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:docs: record video panel deploy", + "ts": "2026-05-23T03:20:18Z", + "type": "assistant-session" }, { - "files_changed" : 2, - "hash" : "e519627", - "message" : "auto-save 2026-05-23 11:22 (~2)", - "ts" : "2026-05-23T11:22:17+08:00", - "type" : "commit" + "files_changed": 2, + "hash": "e519627", + "message": "auto-save 2026-05-23 11:22 (~2)", + "ts": "2026-05-23T11:22:17+08:00", + "type": "commit" }, { - "files_changed" : 1, - "message" : "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", - "ts" : "2026-05-23T03:30:20Z", - "type" : "session-heartbeat" + "files_changed": 1, + "message": "Codex 会话活跃 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", + "ts": "2026-05-23T03:30:20Z", + "type": "session-heartbeat" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", - "ts" : "2026-05-23T03:30:20Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", + "ts": "2026-05-23T03:30:20Z", + "type": "session-end" }, { - "files_changed" : 1, - "message" : "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", - "ts" : "2026-05-23T03:30:20Z", - "type" : "session-end" + "files_changed": 1, + "message": "Codex 会话结束 · 持续 0 秒 · 最近命令:codex · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", + "ts": "2026-05-23T03:30:20Z", + "type": "session-end" }, { - "files_changed" : 2, - "message" : "启动 Claude 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", - "ts" : "2026-05-23T03:30:31Z", - "type" : "assistant-session" + "files_changed": 2, + "message": "启动 Claude 接力会话 · 已载入 Claude / Codex 最近会话,等待下一条指令 · 分支 master · 2 项未提交变更 · 最近提交:auto-save 2026-05-23 11:22 (~2)", + "ts": "2026-05-23T03:30:31Z", + "type": "assistant-session" + }, + { + "ts": "2026-05-23T11:33:07+08:00", + "type": "commit", + "message": "auto-save 2026-05-23 11:33 (~2)", + "hash": "f613cbb", + "files_changed": 2 + }, + { + "ts": "2026-05-23T03:40:33Z", + "type": "session-heartbeat", + "message": "Claude 会话活跃 · 最近命令:claude · 分支 master · 1 项未提交变更 · 最近提交:auto-save 2026-05-23 11:33 (~2)", + "files_changed": 1 } ] } diff --git a/docs/orchestration.html b/docs/orchestration.html new file mode 100644 index 0000000..8a4223d --- /dev/null +++ b/docs/orchestration.html @@ -0,0 +1,662 @@ + + + + +AI 玩具专利生成工作流 · 编排逻辑(代码真源版) + + + +
+ +
+

AI 玩具专利生成工作流 · 编排逻辑

+
+ 项目:20260518-ai-toy-patent-workflow + 分支:master @ e519627 + 文档生成:2026-05-23 + 真源:仓库当前代码 + RULES.md +
+

本文件是从源代码反向归纳的编排说明,不是规约。出现差异时以 src/lib/templates.tsPACK_ORDERPACK_TEMPLATESVIDEO_TEMPLATES 以及 src/app/api/** 的路由实现为准。

+
+ +

0 · 目录

+
+
    +
  1. 顶层一图:4 阶段串行 + 平行视频
  2. +
  3. 数据真源与冻结版本
  4. +
  5. 阶段 A:输入 → 候选图
  6. +
  7. 阶段 B:九宫格选中
  8. +
  9. 阶段 C:角色锁定(CharacterSpec + L1)
  10. +
  11. 阶段 D:四个图片包串行
  12. +
  13. 阶段 E:文案模板(18 条)
  14. +
  15. 阶段 F:视频任务(Seedance, 5 条)
  16. +
  17. 横切:持久化、审计、鉴权、轮询
  18. +
  19. 编排约束与"规约 vs 实现"差异
  20. +
  21. 已落地导出 / 未落地路线
  22. +
+
+ +

1 · 顶层一图:4 阶段串行 + 平行视频

+ +

整个工作流是一条带 gate 的状态机,一个 GenSession 串起所有阶段的产物。横向四个图片包严格串行,包内单图4 并发 + 拓扑排序,文案 / 视频在 characterSpec 锁定后即可触发,但前端按"四包完成后再开"做 UX 引导。

+ +
+┌─────────── A. 输入入口 ───────────┐
+│  idea   POST /api/generate         │──┐
+│  remix  POST /api/projects/from-…  │  │  → GenSession 落盘(data/sessions/)
+│  replicate / extend ↑              │  │
+└────────────────────────────────────┘  │
+                                        ▼
+                        ┌──── B. 九宫格选中 ────┐
+                        │ POST /api/select      │
+                        │ 选中图复制到 selected/│
+                        └───────────┬───────────┘
+                                    ▼
+                ┌──── C. 角色锁定(gate #1)────┐
+                │ POST /api/character/lock      │  → CharacterSpec
+                │   (replicate/extend 走 strict)│  + cleanReferenceImageUrl
+                └───────────┬──────────────────┘     (L1 白底净化锚图)
+                            ▼
+       ┌────────── D. 四个图片包(严格串行)──────────┐
+       │  ① patent ▶ ② accessories ▶ ③ production ▶  │
+       │      ④ marketing                              │
+       │   gate #2:前一包 status='complete' 才解锁   │
+       │   gate #3:同 session+image+kind 并发锁      │
+       │   包内:拓扑排序 + 4 并发 + 增量回写         │
+       └───────────┬──────────────────────────────────┘
+                   ▼  (前端 UX:四包齐了再开下一段)
+       ┌────────── E. 文案 18 模板 ──────────┐
+       │  POST /api/text/generate            │
+       │  gate:characterSpec 必须存在        │
+       └─────────────────────────────────────┘
+       ┌────────── F. 视频 5 模板(Seedance)─────────┐
+       │  POST /api/video/generate(异步任务)         │
+       │  GET  /api/video/status/[taskId](轮询 15s)  │
+       │  锚图优先级:mkt_white_front → patent_front   │
+       │              → cleanReferenceImageUrl → L0    │
+       └──────────────────────────────────────────────┘
+                   ▼
+            导出(已落地:ZIP;路线图:PDF)
+
+ +
+

一句话总结

+

选中图 (L0) → 净化为 L1 → 用 L1 作为根锚图生成各包根模板 (L2) → 包内其它模板基于 L2 派生 (L3) → 全程通过 GPT image edit 而不是文本拼 URL,保证角色一致。

+
+ +

2 · 数据真源与冻结版本

+ + + + + + + + + + + + + +
符号代码位置值 / 含义
PACK_ORDERsrc/lib/templates.ts:13['patent', 'accessories', 'production', 'marketing'] — gate 校验唯一来源
PACK_LABELSsrc/lib/templates.ts:6patent=专利包 / accessories=配件包 / production=生产打样包 / marketing=宣发包
TEMPLATE_FREEZE_VERSIONsrc/lib/templates.ts:4toy-pack-templates-v01 — 写入每个 ToyAsset.meta 和 ExportManifest
FILENAME_SCHEMAsrc/lib/templates.ts:3{sessionId}_{characterSlug}_{pack}_{view}_{version}.{ext}
PACK_TEMPLATESsrc/lib/templates.ts:10944 个包各自的模板数组,每个包指定根模板(其它模板的 anchorTemplateId 全部指向根)
PACK_ASSET_CONCURRENCYsrc/lib/packGenerator.ts:1554 — 包内单图并发上限
VIDEO_TEMPLATESsrc/lib/templates.ts:155 条:旋转 / 开箱 / 触感 / 角色故事 / 工厂预览
TEXT_TEMPLATESsrc/lib/templates.ts:10618 条:项目 / 专利 / 生产 / 配件 / 宣发 / 视频脚本
+ +

各包模板规模与根锚

+ + + + + + + + +
kind根模板(L2 锚)模板总数必需可选
专利包patentpatent_front1275
配件包accessoriesacc_inventory_sheet13121
生产打样包productionprod_front_spec19154
宣发包marketingmkt_white_front221111
+

规模来源 PACK_TEMPLATE_SUMMARYsrc/lib/templates.ts:1101)。宣发包末尾 5 条 video_* 是分镜板(图片),与 VIDEO_TEMPLATES 的真实视频任务同名但不同源。

+ +

3 · 阶段 A:输入 → 候选图

+ +

3.1 三种输入模式(ProjectInputMode

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
模式API九宫格生成L0 是什么角色锁定
idea
想法
POST /api/generateGPT images/generations × N(4/8/12),ref 图作为文本提示拼接用户从九宫格选中的图用户手动点 /api/character/lock,normal 净化
remix
二创
POST /api/projects/from-uploadGPT images/edits 基于上传图 × N,强制"原创化"提示用户从九宫格选中的图同 idea
replicate
复刻
POST /api/projects/from-upload跳过,上传图直接作为 L0 selected上传的主体图自动调 buildCharacterSpec + strict 净化
extend
扩展
POST /api/projects/from-upload同 replicate同 replicate同 replicate,且把上传图按 role 预填到专利六视图槽位(preFilledSlots
+ +

3.2 上传 role → 专利槽位映射(extend 模式)

+

src/app/api/projects/from-upload/route.ts:19

+ + + + + + + + + + +
UploadedImageRole映射到 AssetTemplate.id
view-frontpatent_front
view-backpatent_back
view-leftpatent_left
view-rightpatent_right
view-toppatent_top
view-bottompatent_bottom
+

命中预填槽的 pack asset 不会调 GPT,直接复用上传 URL(packGenerator.ts:326-356)。

+ +

3.3 Provider 选择

+
// src/lib/providers.ts:10
+export function detectProvider(): Provider {
+  return process.env.OPENAI_API_KEY ? 'gpt' : 'mock';
+}
+
    +
  • gpt:图片生图走 POST {GPT_API_BASE}/images/generations/images/edits;文本结构化走 /responses + format: json_object
  • +
  • mock:返回 SVG 占位图(笑脸 + 渐变背景),仅用于跑通流程,不能生产用
  • +
  • 视频不 mock:Seedance 缺 Key 时直接 503
  • +
+ +

4 · 阶段 B:九宫格选中

+ +

POST /api/selectsrc/app/api/select/route.ts)支持 action: 'select' | 'reject' | 'reset'select 时把图从 data/generated/ 复制到 data/selected/ 并把新 URL 写回 img.meta.selectedUrl

+

前端键盘约定(src/components/PromptPanel.tsx):1-9 选中,Shift+1-9 打叉。被打叉的图保留可见,不会进入后续阶段,但仍在 audit DB 留痕。

+ +

5 · 阶段 C:角色锁定(CharacterSpec + L1 锚图)

+ +

5.1 两条路径

+ +
+
+

路径 1 — 普通锁定

+

POST /api/character/lock

+
    +
  1. 幂等:未 force 且当前 spec.sourceImageId == imageId,直接返回缓存
  2. +
  3. buildCharacterSpec():调 GPT JSON 结构化输出
  4. +
  5. cleanupCharacterAnchor()normal prompt 净化为白底
  6. +
  7. 写入 characterSpec.cleanReferenceImageUrl = L1 锚图 URL
  8. +
+
+
+

路径 2 — 上传/复刻锁定

+

POST /api/character/lock-from-uploadfrom-upload 自动触发

+
    +
  1. 有 userHint 时覆盖 session.prompt
  2. +
  3. buildCharacterSpec() 在 replicate/extend/upload 分支走 inferCharacterSpecFromImage()(Vision 推断)
  4. +
  5. cleanupCharacterAnchor()strict prompt:仅抽取最大最完整的单一主角色,丢弃多宫格 / 包装 / 海报版式
  6. +
  7. 强制 force=true,每次都重算并覆盖 L1
  8. +
+
+
+ +

5.2 CharacterSpec 字段(src/lib/types.ts:76

+

15 个语义字段 + 3 个图像引用 + lockedAt。详见 CHARACTER_SPEC_FIELDStemplates.ts:58)。关键三项:

+
    +
  • sourceImageId / sourceImageUrl — L0(用户选中或上传的图)
  • +
  • cleanReferenceImageUrl — L1(净化后的白底锚图,是后续所有 pack 生成的根锚)
  • +
  • negativePrompt — 写入每张 pack 图的 prompt 后缀,防角色漂移
  • +
+ +

5.3 strict 净化的关键约束(节选)

+

src/lib/packGenerator.ts:171-200

+
    +
  • 多宫格 / 品牌手册 / 包装展示 → 只抽取最大最清楚的单一主角色,不保留版式 / 分割线 / 标题 / 包装平铺
  • +
  • 必须保留:玩具本体的设计标识、衣服图案、帽标、面罩声波图案等用户上传的原创品牌符号
  • +
  • 背景纯白,去水印 / 价格 / 网页 UI
  • +
  • 不改五官、配色、配件位置、材质纹理
  • +
+ +

6 · 阶段 D:四个图片包串行

+ +

6.1 三道 gate

+ +
+

每次 POST /api/packs/generate 前后端都过的 gate

+
    +
  1. characterSpec 必须存在 — 否则 409 "请先锁定角色设定"(packs/generate/route.ts:43
  2. +
  3. 前一包必须 completePACK_ORDER 中前一项必须满足 pack.status === 'complete' 且模板覆盖率 100%(packs/generate/route.ts:25-58
  4. +
  5. 并发互斥 — 同一 session:image:kind 已在跑则返回 202 running(generationLocks.ts
  6. +
  7. 额外约束:源图 status 必须 = selected
  8. +
+
+ +

6.2 包内编排(generateAssetPackpackGenerator.ts:276

+ +
+sortTemplatesByAnchor(getPackTemplates(kind))   // 拓扑排序
+        │
+        ▼
+取/建 CharacterSpec → cleanupCharacterAnchor  // 兜底确保 L1 存在
+        │
+        ▼
+existingPack 合并:从断点续生(按 templateId 去重)
+        │
+        ▼
+takeReadyTemplate()  // 依赖已就绪的模板进入候选
+        │
+        ▼
+inFlight ≤ PACK_ASSET_CONCURRENCY (=4)        // 并发槽
+        │
+        ▼
+对每张模板:
+  · 若命中 preFilledSlot → 直接复用上传图,不调 GPT
+  · 否则 generateAssetImage():
+      · anchorImageUrl = anchorAsset.url   // L3:基于已生成根模板
+                       ?? L1.cleanReferenceImageUrl  // L2:用净化锚图
+                       ?? L0.url
+      · GPT images/edits 真正的图生图(读 anchor 字节 → multipart)
+      · data: 开头则落盘到 data/packs/{packId}_{assetId}.{ext}
+        │
+        ▼
+async onProgress(pack) → persistPackProgress (每张都回写 session JSON)
+        │
+        ▼
+全部就绪后 pack.status = 'complete',写 ExportManifest 到 data/exports/
+
+ +

6.3 派生层级(ToyAsset.derivationLevel

+ + + + + + + + +
含义来源 URL触发条件
L0用户选中 / 上传主体图img.url选中 / 复刻
L1白底净化锚图characterSpec.cleanReferenceImageUrl角色锁定
L2每个包的根模板图data/packs/...包内 anchorTemplateId == undefined 的模板(每包仅一张:patent_front / acc_inventory_sheet / prod_front_spec / mkt_white_front
L3包内其它图同上,basedOn = L2所有 anchorTemplateId 指向根的模板
+

代码里 derivationLevel 只被赋值 2(无 anchorAsset)或 3(有 anchorAsset)。0/1 出现在类型定义中,运行时由 L0 图片本身和 cleanReferenceImageUrl 隐式承担。

+ +

6.4 单张重做(POST /api/assets/[assetId]/regenerate

+
+

双重 gate

+
    +
  • confirmCost === true 才放行(前端必须二次确认),否则 400
  • +
  • session:asset 并发锁,已在跑返回 429
  • +
  • 沿用同一 anchor:优先该 asset 的 anchorAsset → cleanReferenceImageUrl → sourceImageUrl → L0
  • +
  • 支持 userRefinement 文本追加到 prompt 末尾
  • +
+
+ +

6.5 增量回写与断点续跑

+

onProgress 在每张生成完成后 reload session JSON、用最新 pack 替换旧版本(按 kind + sourceImageId 匹配),再写回。generateAssetPack 启动时会取出未完成的 existingPack,按已落地的 templateId 跳过、只生成剩余项 → 断网或失败可重试。

+ +

7 · 阶段 E:文案模板(18 条)

+ +

7.1 路由

+

POST /api/text/generate,body {sessionId, templateIds?}后端唯一 gatesession.characterSpec 必须存在(text/generate/route.ts:18),不强制四包完成。

+ +

7.2 实现

+

src/lib/textGenerator.ts

+
    +
  • 未传 templateIds 时生成全部 18 条;传了则只生成子集
  • +
  • 一次 GPT /responses JSON 调用,要求返回 {items: [{templateId, content}]}
  • +
  • 未配 GPT Key 时每条用 fallbackContent() 生成占位稿,标注"未配置文本模型时生成占位稿"
  • +
  • 结果按 templateId 去重后写入 session.textAssets[]
  • +
+ +

7.3 18 条文案模板按 kind 分组

+ + + + + + + + + + +
kind条数典型 templateId(必需打 ★)
project2★ text_project_design_brief · ★ text_character_setting
patent7★ product_name · ★ product_use · ★ design_points · ★ representative_view · ★ view_brief · color_claim
production4★ brief · ★ cmf · ★ bom · ★ qc
accessories2★ accessory_brief · ★ accessory_bom
marketing3★ core_copy · ★ detail_page · social_posts
video1video_script_pack(脚本文字包)
+ +

8 · 阶段 F:视频任务(Seedance)

+ +

8.1 五条视频模板(VIDEO_TEMPLATES

+ + + + + + + + + +
id标题比例时长
video_turntable360 度旋转展示16:96 s
video_unboxing开箱短片9:168 s
video_touch_detail触感细节9:166 s
video_story_intro角色故事介绍16:98 s
video_factory_preview工厂预览短片16:98 s
+ +

8.2 提交 + 轮询

+
+POST /api/video/generate              GET /api/video/status/[taskId]
+       │                                       ▲
+       ▼                                       │  前端每 15 s 轮询
+generateSeedanceVideo()                        │  最多 30 次
+   ↓                                           │
+POST {SEEDANCE_API_BASE}                       │
+   /contents/generations/tasks                 │
+   ↓ task_id, status='submitted'               │
+保存到 session.videoTasks[]      ──────────────┘
+       │
+       ▼
+status='succeeded' 时 videoUrl 用 saveRemoteVideo() 拉到 data/videos/,
+返回 /api/video-file/{filename} 本地路径
+
+ +

8.3 锚图优先级(page.tsx:580-589

+
    +
  1. mkt_white_front — 宣发白底正面图(最稳定)
  2. +
  3. patent_front — 专利主视图
  4. +
  5. characterSpec.cleanReferenceImageUrl — L1 净化锚图
  6. +
  7. 当前选中意向图 L0
  8. +
+ +

8.4 PUBLIC_APP_URL 注入

+

Seedance 需要从公网拉参考图,所以 publicUrlOrUndefined()/api/img/...PUBLIC_APP_URL(生产 = https://ai-toy.kang-kang.com)转成绝对 URL。localhost / 127.0.0.1 / 私有 IP 一律丢弃。

+ +

8.5 视频任务去重

+

每次新提交按 templateId 去重覆盖(video/generate/route.ts:46),保证 5 个模板各最多一个最新任务。fix: dedupe suffixed video tasks7abbb7d)专门处理 video_turntable_60s 等带后缀的真实成片回流到默认模板卡。

+ +

9 · 横切:持久化、审计、鉴权、轮询

+ +

9.1 八个存储桶(src/lib/storage.ts

+ + + + + + + + + + + + + +
URL 前缀放什么
data/sessions/每个 session 一个 JSON,含 images / packs / textAssets / videoTasks / exports 全量
data/generated//api/img/generated/九宫格候选图原图
data/selected//api/img/selected/选中后复制一份(保留生成版本不被覆盖)
data/refs//api/img/refs/idea 模式上传的参考图
data/uploads//api/img/uploads/remix / replicate / extend 的上传图
data/anchors//api/img/anchors/L1 净化锚图 {sessionId}_{imageId}_clean.{ext}
data/packs//api/img/packs/四个包的所有 ToyAsset 图片
data/videos//api/video-file/Seedance 成片从公网拉回的本地副本
data/exports//api/export/ExportManifest JSON(每个 pack 一份)
+ +

9.2 审计:SQLite + 兜底 JSONL

+

src/lib/auditDb.ts。每个 API 路由的关键节点(started / completed / failed / blocked / saved)都调 recordEvent(),落到 data/app.db。Docker 镜像内置 sqlite3;非 Docker 本地缺 sqlite3 时降级写 data/audit-fallback.jsonl,不阻断流程。

+

每张图也通过 upsertImageAsset() 写入 image_assets 表,包含 bucket / width / height / sizeBytes / kind / templateId / origin,是 /api/gallery/[sessionId] 的真源。

+ +

9.3 鉴权(src/middleware.ts

+
    +
  • Cookie 名:WEB_AUTH_COOKIE_NAME(默认 ai_toy_session
  • +
  • HMAC-SHA256 签名 body.signaturebody 是 base64url 编码的 {u, exp}
  • +
  • 公开路径:/login / /_next/ / /api/auth/ / /api/img/ / /favicon.ico / /robots.txt / /sitemap.xml
  • +
  • 未鉴权:HTML 路径 302 到 /login?next=...;非 HTML API 返回 401 {error: 'unauthorized'}
  • +
  • /api/img/* 故意保持公开 —— Seedance 必须能从公网拉参考图
  • +
+ +

9.4 轮询节奏(前端)

+ + + + + + +
对象间隔最大次数终止条件
pack 生成(scheduleSessionRefresh5 s90无 status='draft' 的 pack;前 6 次无论如何都跑
视频任务(scheduleVideoRefresh15 s30status 不再是 submitted/processing
+ +

10 · 编排约束与"规约 vs 实现"差异

+ +
+

差异 1:RULES.md 说"四个图片包完成后才解锁文案和视频"

+

后端实际只校验 session.characterSpec 存在:

+
    +
  • /api/text/generate:只 check characterSpec(text/generate/route.ts:18
  • +
  • /api/video/generate:完全不 check pack 完成度,直接打 Seedance
  • +
+

这条规约靠前端 UX 引导执行,不是后端 enforce。绕过前端可以在锁定角色后立刻发文案/视频请求。

+
+ +
+

差异 2:视频不 mock

+

没配 SEEDANCE_API_KEY/api/video/generate/api/video/status 返回 503,不会回退到占位视频。文档和 RULES.md 一致。

+
+ +
+

差异 3:宣发包里 5 条 video_* 模板是分镜板(图片),不是真实视频

+

marketing 包模板列表里 video_turntable / video_unboxing 等 5 条id 与 VIDEO_TEMPLATES 重名,但 kind=marketing、aspectRatio=16:99:16,走的是 GPT image edit,产出 PNG 分镜板。真实视频由 Seedance 异步任务单独产出,存 session.videoTasks[]。两者完全独立,前端按 templateId 关联展示。

+
+ +
+

差异 4:派生层级运行时只用 2 / 3

+

类型定义 derivationLevel: 0 | 1 | 2 | 3 给出了完整四级,但 generateAssetPack 只赋值 2(包根模板)和 3(包内其它)。L0/L1 由 GenImage 和 CharacterSpec.cleanReferenceImageUrl 隐式承担,不写入 ToyAsset.derivationLevel。

+
+ +
+

差异 5:preFilledSlot 命中后 derivationLevel

+

命中预填上传图时仍按 anchor 存在与否赋 2/3(packGenerator.ts:347),但实际生成 URL 是上传桶 URL,不是 packs 桶。导出 ZIP 时 extFromAsset 会从 URL 抓扩展名,readImageUrl 回到 uploads 桶读字节。

+
+ +

11 · 已落地导出 / 未落地路线

+ +

11.1 已落地

+
    +
  • ExportManifest JSON:每包生成结束自动写 data/exports/{sessionId}_{kind}_{version}_manifest.json,含 files[](asset_id, templateId, filename, url, anchor, derivation, checklist)
  • +
  • ZIP 下载GET /api/packs/download?sessionId=&kind=,纯 Node Buffer 拼装 ZIP(含 CRC32),文件名 {characterSlug}_{kind}_{N}张.zip,按 templateId 顺序编号 01_xxx.png
  • +
+ +

11.2 未落地(RULES.md 路线)

+
    +
  • PNG 高清导出 + PDF 合订:ExportManifest 已预留 exportTargets: ['zip', 'pdf', 'manifest-json'],只实现了 zip + manifest,pdf 未生成
  • +
  • Seedance 任务轮询 UI:现状是被动 15s 间隔静默 refresh,没有进度条 / 失败重试按钮的完整 UI
  • +
+ +

12 · 关键 API 速查

+ + + + + + + + + + + + + + + + + + + + + + + + + +
方法路径gate / 关键行为
POST/api/uploadsmultipart,role 必传
POST/api/generateidea 模式批量生图(4/8/12)
POST/api/projects/from-uploadmode ∈ {remix, replicate, extend},replicate/extend 自动锁定 strict
POST/api/selectaction ∈ {select, reject, reset},select 时复制到 selected/
POST/api/character/lock普通净化;force 控制是否重算
POST/api/character/lock-from-uploadstrict 净化;force 总是 true
POST/api/character/cleanup独立触发 cleanupCharacterAnchor
POST/api/packs/generate三道 gate;background=true 时返 202 异步跑
POST/api/assets/[assetId]/regenerate必传 confirmCost=true;并发锁
GET/api/packs/download?sessionId=&kind=按选中图找该 kind 的 pack 打 ZIP
POST/api/text/generate必须 characterSpec;可传 templateIds 子集
POST/api/video/generate必须 Seedance Key;按 templateId 去重覆盖
GET/api/video/status/[taskId]?sessionId=查 Seedance + 写回本地副本
GET/api/sessions按 createdAt desc 列全部 session 元信息
GET/api/templates把 PACK_TEMPLATES / TEXT / VIDEO 暴露给前端
GET/api/gallery/[sessionId]从 image_assets 表 + filesystem 拼图库
GET/api/audit/[sessionId]读 events 表事件流水
GET/api/img/[bucket]/[filename]公开,Seedance 拉参考图依赖
GET/api/video-file/[filename]本地视频副本
POST/api/auth/login / /logoutHMAC HttpOnly Cookie
+ +

附录 · 文件锚点

+ + + + + + + + + + + + + + + + + + + + + +
关键概念代码位置
串行顺序 PACK_ORDERsrc/lib/templates.ts:13
包模板冻结版本src/lib/templates.ts:4
包内并发上限src/lib/packGenerator.ts:155
包 gate 三道src/app/api/packs/generate/route.ts:42-91
包内拓扑 + 并发调度src/lib/packGenerator.ts:392-424
L1 strict / normal promptsrc/lib/packGenerator.ts:171-200
L1 净化路径src/lib/packGenerator.ts:157
L0/L1/L2/L3 派生src/lib/packGenerator.ts:316-389
preFilledSlot 映射src/app/api/projects/from-upload/route.ts:19
视频锚图优先级src/app/page.tsx:580-589
视频任务 templateId 去重src/app/api/video/generate/route.ts:46
pack 进度轮询src/app/page.tsx:536-543
video 状态轮询src/app/page.tsx:545-557
generationLocks 全局并发锁src/lib/generationLocks.ts
ZIP 打包src/app/api/packs/download/route.ts
HMAC Cookie 鉴权src/middleware.ts
审计写库src/lib/auditDb.ts
+ +

— 文档生成基于 commit e519627。结构性改动后请重跑 npm run docs:orchestration(如已配脚本)或重新执行 docs/orchestration.html 的生成命令。

+ +
+ + diff --git a/docs/orchestration.pdf b/docs/orchestration.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b4b3617e44755ca4c75ca71db9e1f04c6a9280b6 GIT binary patch literal 1792921 zcma&O1#BKcvn6VX8DnO)V`j#fnPO)A%=Twyh?$w0nVFfHnVDi{UjO%9y{pwqtJO?T zx2jK-N;OhVtLyZTD~O2EG10TalFy%??!qz=F%kg{Ensc<75>TW#Qmt{I>F~E6T;l!OY6}E$8BgWe~Op7&rp$i6~`( z?&elj1`KTUj6~X$vIa)xHjY3CGae#I8%KZ@(YJs|UWrJZh>1~;iA|3~n~F%#*47H3 z1~8O1cVu8=;h<+>|5lWiP?nXUC9*QN1Q3Y>j4XlQKnZ|>u@%6OwbfyPcofNyV(Rds>myX8^e~u_RBRnPf4#bl zXZwtl=;;dR@xRaC z-s}hayx$`M!!^8LPaiJk5Bn1_Bxv?-U*s{h6efI#=(D?Z_`yCJJU^quWoa}_@#sum z-ht!d&k4N-Y*<3K=oXB^0@|65sjAofkVuUPor~6dx96C;35fT%If*L~VV=t`FL^ zU)#IHRnX%{j zZM=EpHDi?}uRlZOtc|@{gf*XNI_`xJT$j=5#~nbF@T1QVc3g^nd;`=u27LXnr){wB z4F5c-B_1-lj@8q>ds^Z1LuYpR)hqZ=kBOb>RyUq&BCWVa19(e8Z+SaVMvOBC#}DH3 z^5PeZc^&!nN3%UgpDP+}Xc0%+Jhz4-dBz_sHh2LF;)#j5&DRczj5W zXKReP5~-SrG~8+vm_3{w;dnBf$mi~DqCf>A!Xc2j&tl|y;%yrHXy(TT{Ewe%;1nWk zWR^>Iy&nPg2s} z!G{k%++$Vg7geN9w+G3*b;N2R2DY-|wz~5?Unvoj??>!8` zJgCbxP-;hy9Z62DA)A1knBsJ-%}9F!oMvVXK4wyouMhX1d(xx^D5o+jl1MZWzfjR2 z69XOPmS`}NFgHTXpbqHj6-7-pv{S&^*XAtugT@HrwdGQti6J48=Sew~7 z6KYs_4^6myMcwjsR_L9;3sAE|_Ez!n%i%_|vaJ{I^kR~jL zHf+$P4r~xUWs;#C)w8fORY4+F;Z|y$j@L?L>^Z9PQ4NDg>SWhJr0>PZY*GucqSn8l z%Svltz)yx8RJjZY3X4a|l!?_ssz)9sBXOSk1@B?^`MnQGBmAx~a zswOMCH1Uxf4a~y$ZkP!+Mp)8NXA;p$()_*jbM;ix8x(W?{|0%qNcglCm;)8Q+sq9F4n~_zF`aKP^a`?S}X%@?;ct%B_Gcn{*qY_T(KDk*iA=Ji^nx zM_P9C13Dq5B?L7hsQd$$v$(OL`AeS!>%|VL(RM&r&au!2~6&>jRq%UQyG%BsZ2?)NyQU1N(+PKk1ir z&5OLE8%XEH)bdi6KJRftlYh60yzQTU;?6n}F$H9J{i4lY}#a zZeL4*^CuO_2d}6%95mmK9<`wUc{r*pM5%uXoKbGx)|}|YH&%y1#-cDF!igeJvBG$j zqfEnbWUR4H&8xhD0Uu97``TKP7}C^wETH6|BSr#u&>qheLTJQJaVfM%3sETrG~c zKNMV5b$Xdb2YRN{L5>JhdXtH`Q_(fe||HiRxz12M&&)O@FO%lSB zpgC3zQu8u_{33rB61Vm+(gqQ};nQxWQgfxYdtYJmpBBdkm&jJ_zC{$%y>#F%^pEhtW|OUZRD4sde>1mKMg{1k|B=k@?c(hTQixF^#Ht4=C1mY1v~r7 zAPFGzXaAqM+97>NlTBc9-Y+m7REd{*qe5$GsU&o0!zFBD`lgj2G?p5i?7ULmauE?G zWd(|nRr~>7hb_<2C1RJFgRW$TWL~!^WieXp&RfxfxV!axcq& z&pD)afuw<6{|a>;)^p(F|Ik>a_|Vr=;p03s6x0@8gbQpAYZc6xV1)fQOK`(N1X-p<(|QW%V8Iw7 zWsqvn?-o5`LFq6e8R^6w)$tsP01WlqGz=SJTP1M$^+1*fvL(vK2Mz!>!SY>xk4Zlh3ShvR zmHZDzaiyH7TEnH>SKc^XQ(IavLMX>ef+_>*1{4Uq9M^n71VqrD7KXiU^{(rSzh9rMrzuN=oR7B^cyuN=wyfm3;{(#(_$T+kW1a zXXu3k^w4yJe#TO!TJfdX){%R#fCTP0%5xR2$qQPY!?A|iu)gjwZ`f)}B^txriaO|+ zx@{6GTrCFs(s!^}{X;=zMW3~v45~=be_`f8T`>R+qf|8C?i-SW!xzw{$oW^sh#vq! z-#)AnhhWt2!X@!hqo%9W(QvuxDpB@HF?-Xej|5NKEgL~+CBe)xG1XAo-lc!ICJkvh zD7v>WN%s67npTpI`BQ?Xn70wkAB$BF0P7zMH*Y2eW0`f-nWB*1!Z>*iI_9RN_d{MS zMCQB4z{bT}F3Z7NF1TTZa9{E9V_E__LU5#{XkRBdF@_Zl?lgYLIzGWjG03`$Rq{0~ z?Wgd8d#0L8S{QttDB8QKWT(aZ(xALwD#>|@i`SZOWu;+7s^KV^RmeFD-F=Dbuz@PI zR6-!u-e{Er$}nt$1pv)t8Qgh+b^bxjIR(3zd-c}Iq3>nFcS_N8RZn%;b+LXCWle}C z5-R9``PmYAOk7vmffj3cIIV2wv-Uj5f~x?j=Fc&2(>)5gVC!RIoEoI}-orFh3?gon z()_09867Ka+T>oLB};$BhtnFb#Yb4h%4T0(Ndi#j$xCYrOHjNR$;G;nsoor$3a^)` z&Pq)pl9Zils48g-;3yXr+$7_Rc>9f69BKD{TWNfS+>ZlTe^Bjp1FO&hBNwUY!l3DI8#7yJaJTQ;{k~9Lb#Yw>* z1O*<-vKoLopXgpR;vT)+_&v#{0(VvUAeH?(AK$6 zv`#-lVv6E76NWki7G-bdX`JPuoyz$fmAp{WIG@d{Ywc39%R-x*Xay3*ze1WWjiVPw zo(Tn=c}pwLbEYZNiwp71L>^ioF@<1jmYcoHR(3um@l89s`pl<9(6SV*2&=rSwGiDm zdBeJK-MzL?A9(XTE#23c`Gyr9K5V}8v=Vpark}{9kQ)3XSX`*WBe5JEc227(#u?GL zZL%|xO_{;zBn`0bcAC!nU5EBoTdOH6W%;{ig+bZsJ(^1MM~8r+K&;sBC~e>-3h}Ha zJjK?P2V-|}#w~b#vsZA)?C<2G+|q6F{2SYpyC`}p4~JFDzB9H$!d%&R7;8V`ZQ8Ie z%qS%+8nil!2h#Y{jz}Lj9y-tE^HW{DUzqe@r}-hjGJqG6lbOxu;OzgF;Xi!54bOZ<0EzhjvcK)YkPy?(c`HG0^tpC(o>eoU++c9^XjKOQFprY z)rQw%=3UF_X^LP;AC6B0XH2)DtNf({!mSwwjEhii0$Il&|1tGu9w5hW17KS9N6Dtn z99H^cs%$i!KY@O^ZmYQ6KMP)Ldaw!KLx;H8Dghomz4Zf$x41Xv0s785X!EY02=P@b zPTuN`Fxxx8bF6Abaii&Wb?53ey9P!K=+Rc)9ypRJ-BryVMT+gR)*_ z=e6bUa|1mtXW_q3ACG)a0_aYq+C0$%{m&j`k8ebX={CbRgz*I0q;`!IdNSVfp56n_ zY-JZ`-~=vvO2rNrV`gpFRjtRd*Xh{ApCMBOdef5|{prw9&EVA8?($TUbH@$qyZhB) zRgCDn%Xi!pdQTB$oDi2w-Z7$+6?TohVcR;dtql7yeleCc`I^zXBtLT&-FQ`Df7X21 zDBU8jF&8ulYD&Qf0|EV!qnFa!?h$C(SDk}Uxyz-zNwP4xA2wQIGp4G?=pWAXY%HUP zAu{j|v{h!PYx(cB+`jw*>6(Lk#G|COYQvk6);@zabu1no29mY-=;@zJ;k`x8#EthG zt>RWkgF5NWR!1sYAEN0mqB31A~nW!OLaqND~g!}}~EokHbAT#{5oCfaFpR`p< zi#8d#^7Xc}t;CN`WfipET;C*yoT6MtZqq?|n8^&B?0@_rQSVVd)Qz4<&`i-EJD(Y+ z7)&guwtmV7pAT!25X*(%__qq) zdI`vy#tn4lK{RN`$Imlwelu#v&op>&_9@UjovvRN#E zui1?HEacsZXLuTR=Hm80JN#Us7eB@{{{IFHS7QzB&1;7zFNHYSw~Q|uS?^Ed5HCf5 zAN&ftwVPw(#T2}a;{NW0@a1Zf<+C&G&WVoMnEhueb6%hDG~Xhpyr&E5(;#HX#q~#6X#Yi%&=OTWfyOb<~_Sw8w3HUOVJ(Y)U zhbGLnK_(`Hbdfqgnxo2sLRq&0<-ywPM!gVwAve^g(=WK?qvKWTK1HJy8CBCUaPgP< z<#0paExB5$D|x0w9F1DN?0j2uy)Z*lje5hkC|q&^{9vgVw5G%nr#8x2s{>1v_kX3J zyiUgSZRmISUm}NFh!w$*`uC6H`$*F}C#=2uYODy|SgNnldf~OWldmFz0$JRRLw>2* zKTj~e?n~K1=ZYadN;j!+j%6>*UB(+@$mD?37odU}TU2Y{f#NpQncNu*I*Bh2`3Tj; z(J&brs`Ap)(^!wV`uhvQ7r3{_e4nVD{7u9H!zU)f-rjQiIG4{Bbq1Kh-VIRgN9kl~ z3QpPfmz0lt&74myo0)D!qm}pVCrtR9>VYm@{PXVhn!owh4dtF|;SmR8D>sMQlgGC5 zCKORUxhFRs9~9X;I#nfC@rCnsMX{EY>q4w68>bSGo?08E$2USaAE}!$?TXB?_BH2= zNt<>5pnLi4=U13J@08o9;jww<|4u_GH~l=W#p=U1>`et3A3*o?h644vT_8;lpz_&-jb=TchdQwkEtbSsphCjG6 ztgUqDV4j`o1|2$VV5=fNdGC6kO`;xn@~w~8oSF0JML*_U$j@;z#3svLyl^g)u%^G> z*;R?!AHt-)duGI^Aj!btW?0S=uVCnMZYhs%A1+(n0`C%MKOnfe+*Pw;EOn4aQ0k*j~I|A-H&d>XPVJViOZ`>>geRa7AwY#n1jE$TB44 zM||to%l9BU!6#HDj1=7V>V};Sm0**04OK38!;m)yW;~k6jJ+KP54??Dl{%nQHGkk@ z^&DbHoA;np7n{z0bj&j-WWcD+zbIXN_-3(23hHT^@yUbV>#U&i`{B9~cta%TH4d9S zSQXd>0d{Qv{;6#$c#O7G{i#}aXkDBv-g-5m>FHx(ayHlsEoHG8|D;vfn@=#(b*KZLfa4dqnP%Hqp7WJG+kS?ep?+=mV;oeK-1_YRP|BHU7J9 z!oVrOLf-)bUWI?;F>aXTI#VV=7BW{?7Y@I8$BrHlR^>N_UWJ^Ty}EChH3 zy^$_RE!jTM-eRg0Ea8=L3)ai<`T%jJQGHJqKVxbmst@37xbA1cK=!OJ2~pVi@N}|| zZUxxBQu+H2CdzIs#xVzQ_2;jz$76DV_s8?YV1f0+<*&ADT&#aWKa;mV-Cx!Z8NO8x z#vvONli=x9#q*Js+I_x~4+;Afzl;q*(EC?M(1fvh4r&u0ndqfRgG9~eg0|PeeBK`N zFt7Oy{GDGWykZrXG~vdJ?=dOERM$n#&wJv-6aJe0?92O&iwfcBSCkd9M2 zT#+03cLPk(D2_Hfk~wsXj=nY{Jt2dPl`O9?-P(dOhEV zU?N*O))UY{&Y%0s^fl$9(QqQ_0}sb-rWqL_A?0zA*%NEP&TT!YjfLTOeXe0NBc%mG zbJEXf$wCtPf*lYvqv8jprc05Zk6O_S0xN;Lt!{=ov5HJn@9XJ~izaqeG8TwbN^UMw zL;V{o0t^91wQfj3cq=|eDu_#dAz+yz<`=Fox-DMSyp|l**SfXcD$=&=em7kboSCUITZ&Q@~&NDedzzxUKp}l}R}t?+(XB`M>hXHrOaRxJa|+ z%`7xO+9c0foaf1plq)iVAKu#q(HhQ@loT4VG>n$uPaf5;%WyBJlnwUPz=-htVlZ}j z0`#2(lmcf^+Dnh(%6f3L+pehdChOKWwHN&kj?#oHV1;WOr>T^sT~`xvV3TPbRi!I+ zTc4tnyB(~4FRcY~rSyj`Zg+pUGr{TqJ!BDh&WTq$sZ$2gS@Og1_WRo44Eu3Fm6BLI zvJ<1++#2?S6*LdCiv+ZJip00G(AYFh2r{#y>KX$^^`m~_Hs%?@CiaMkY?iTx8Q=F1 znxv9f3`|^hieZij0%Hox4$uJxcROZ8hDCx#qc&l{+-I2$%D;kvD@lV}H`XeevLB-| zUrFm?%i~SzJDWFJMe;EU*}E)I-wVCyMD*Ht{(FGrN1hU-jW!gxznEX*xqj(d3nHY6 zEbH%aubLw*Zt0 zSocpNguuUNmPq|Ggc?Q}uo16W3z9WXRs)&f5#$F&6Io^c@={(9Ex4f0Xr?~N>7poyMqALZV;zn23f}(bfr&KjH%~aX)_;sqEsRlB8*i186VFZLVPm$6% z_X}f^t-k4LD-nWahp4Y0Jp{jY`HELE(8#4MYf60D7uCKi)NLv^K$>``PX zk__Wt_T4&ydj+CTvUO$T7)W4%CoYZM%E>@}fYM%@(w4Z@O8UgOzL&|L^j{89M3PRV zP)c_FgrVX^w}^(J4jjj935yAH;PkJ_65{^8hWwCp*6Y!XlS_rUUNM)|iYZLY(oi^Lf(hYpcD{OUq znRRIth72I);6%J#Zcvcf9o0Fcy6x*NxhvAi7nJI0xUGT@t^qfiAbS|WD)|xMS`(Id zs*}u!8~<>E&xw^ZP8gu{&b6e5~wszA`)4%oEdt&&Lk zGs0BwP-w)^8A-G#^MxX^;+ly9cUC5`D*dEqVQc53dg&qaNRDZz`zUdHS(FmBuD9y5nO^Of4q2T=(Mrz{>HEJmN9 z94_zXhg5JJOI`(N|0SU&w8K9HDZZW&K~_YxC7INq%g2+DWUg~YKLq(XEKKQ#M`TZ} z@7-z(64D{06I9g!Mxs20`}2TI0e7woP7}8P+Bi$MzbM>h zxINr8U3WQ9DmVejTvLf^D5};%t=MW=c+|hDHd8~Vo=2&gu5TD+Z}TWY*wI<>r>D9y zJk#3(LQVUjOSiW7bM|<&z~^=K)z|QRUUIg#`_ujBZ9hx?kFhjukk>;X=7=bN0PXhcOx65Bo+vCyGgjv~q zIbY^4r^Vz*5Sn_?iC=~{)A(&Owq2$3m`?fvE9k1WL5W{8RITE&cO)txSDb9SquI5e zjiDzl{@p$T80I{qKla1;+@B2Oki=~{W{yeXw4S^07i@Bl>z^ZboPThDb0Y5eyG0HK z3V!9kyh?H-y?wbweR}K52VZ;~bWj}b>U#PBu4A`07b#mL^Yu@s#0)6$NDby3gs!&v zBKo8w`bx5YcE3YU7fbH*=d6!VJ`27PZ=Ueq;fxah>%TeWmpj*Wcd7RF<3X%y7JSXj zn3U)a`iMBNSePEkia6MX2#4Q}U@&uNe`t(t-WWh0BbrW4+z96jUzlxZx~#CiH(Iz6 z_3rmoLvx+=!Fih;g3NE+4$%RMc*;$z(*ymG%Ms#-CvHH-Amoec2#19SBp*G#I{SlS zwLG)5%OjpY5{*`4@sO4^Nx9+say58^E&sM&Q?&TvdI4&mwSu>KtX9}yS=*4!; z^`LcioDV^LdVJ)sd8#EJQBUguG3r8r%O*mE*HG`E-S~3E1nLke^|0F59_oQm@8e#J zF4R@gcLx4}|H8wT#46rDE-U~M#}|8DRqwI{=^nlHWU&{c#kNb2{`A((Y!9+o)D1Qq zsI4|05^m+)ucaKUx2j;%Vy0vt3v2l& z;;wPxJ;=|yJJ8a;aI|$!eyp)}x9R8CwTjD{Y{55Q4z8x8_(D$GXsm0{?%+mGW$UP2 zLW1>Yq}{^T8sH*@W$54kO!@S5bH6i|11T)Mko$x!^}ydB0E6P|Te>mm9FZ5xjF~!WA&pN_iSokS%>sj;#e$3PgD-hmFo3{; z7@-RKG`BG79fZT8HHK@xa?)~I5Qv4(lGR0OpxRF%onzuCXXiNKjm9BEaNbz&$XP;@ zK5FR8^tgNV9aBXiUS9#JkZz>sOhiqu2hJ7v4obZJZlBEr{?K)>pkfsgPY1W&73XzF z1iRk+ib_lG_j|-2>ra}QmkzM2(ZHRLslYqWcOI+#%{D#D?7aA36WGcOadeVKhYz}v zbwXq2SfG_B=RDN=Lq8JDvh!_9$PJJ-z*C#rU5JBaE&jzXtllY)o|9N^r*RI8b-{69 zx--s0GtycS_+KN+=l$pBNUm#RV6lhmIz55uNSa;VH{ZtvfE}yko*SSWB@=I*0 z67K?IW#LNgW)uOHf5duyRLUZjwu+O~0DfEROZRxPq#gp?(}-zWdfw@60p&@$m#$a_ zt~EwrX%?#2AGhM4RT^6~vV@zd%=i&Ofrj|$AP@Og@Uq)vVj~rv-dlq_uRFF+4+MJ0 zT~!ot(xJ^t3`d^Lhn(2vECq+je`03}y-M0t`x!QjMZ4DdpGdPAJ@Rc0I0_hCvAusG38N+^yO3wIN%XfMxi_94^H$y( zI7RFo;VtrunqZa$5@EfxFT8%f{WTdhK|6>VV$1h%7dPZ>55u_^=$yA%dWl{*UKzcD z3)FT6%56my_FXS8HZ(h-<&}{iw+^l_4{&6|t#yZaJM(2LHe;a8(T%@&xDyI!Kp!$x z33N=CKk`FS0f7{q@&-?_Ph5+Mwgoit;d^1xcVk@n{amSAW6LmN?Hs`$K8HGi!k#8K z9s8dE2F#0QD?6&aJ~d=9k%~Dj`ml}*56{XAO!vT1%{}WW-_-zpmB;$NrINFNe|7xC6@ei1@+WZ{`Yh zT%g*yVpphX-)hTzXRSOH?-Y1O58*K=!S|~h-xXJz-aQDU!Pr)R|N2YVe=c^@Ug1A8 zO;N3IWdjk#_ukp+cnfb!u!?WIW$R3(Z5u6T9_=XCI!mSSb_r6tYN*^hW>(Cb{jgO5 z3xxLhWg}Lll@8@Z}q-Qu#Y^#v^jA?5Q&Kg)|>Q%MG5-a!VjpGq>TjF>=R@yiS51r z9+)l|LcQir8 zgTOUHgACyygVs%^_F8tpHDD(e0{%-nX)iqcGF!ft&0bFFcsAp#9`!q{nc?){8(Xeg z7ufkj_*6M-yw`Ke@kk!ku944k#lLzy^sleIX5YP<7ylm^eEj)7^T3qu%l0{2o=exI z9X&IAeBf{&L4IW2(5f?ZdtlH}L(${HGKsv@2`X zu1LGA4$_I#W(;b63sa+tR>6w~A+=WC}# zMPB}h_FvulTppE|qlE}>11Y+z=oZ>u^B*N>Xr^k;0O&d?@r#Y8CZ26JI^18~cW3Xo zZ)@YEbXx1vMF8<;L!?*iv{XeLL&nQ1GM)BnYr7>p6Q}*keq*AAk3}#4Q3Nee&9l7@ zZh5{*yEZ4{d#O+JZh7nSyJVG*eJhikm}rUEAl%C|_xEj?{Ol23E{3e)Gd4D@j-C27@;55ttjF5D#S@roj+a(*1riiS)@4q!0}1< zIBTECxp1}6a%jU(C1kCyl|SmS3vYayzpj2eyJCgAa^&UFZiMtnqF#EMIe=sA2XG4J zmZX`*jec=ZU zJz)W@^&)|h$qA%qJWtIxLc%njp*xq)+}3IewSIZp&Y^!(#ugL(T5r^2M)MQkpMM2* zwjEfI89a_BD%^|&FTuUx1>RY)^;}qg5nM)YI=@uzfZvXtlLK2D8)uTMkMHPLl5Emi zNJ3xPZ?v8uHX91xR~ws(PisFR#_t@r=6`gFm$H5i9ZMTyBctUAFV~wtn%iU=AOU)0 zDduQ&f1;(CokP-uCCaTw&j9}vTyTE4QKRZzTQ@TtFB->n&J3)S$b>*vOLhYmiE51z z5qWA*Izm*2#L@8@uEr}Y34B`L4{xX826EmFdkVg8nUI-V)bS&Q1`eCMbw5A!l6khw?8|y{k`8FZu_$@ZqI$Jk5-tcnsvMh z_QB+GO_>MS@P&%O0nIgSI=(xvlkaK~iE zA#T04|Gj-=S?9NQ3thIA&ezXB@2<{C7C$JBE%UL8JA(i6{`_+rb&`T#ti~kb_-rk~ z{`y*U%ttKSy2++eCGPzT{Z$Lqq`&^$+XwMY8(6_wJhWHpF0e+~vR}pnOe$^YK~+Jh z6!CdPP)3>-*Is!nhQQs+QqeNNIeWiwo9Fyfi-2;`UPfB>SQJ@yquIa#-9UHM-dUB_ zgnvaU_z&9C7xZ2oy!Un$h5aw3K*i02?2ZWuM@r9e6+BH@;zxp(D_vx}Z}z1GmdC)9 z%Djuo=>zvQEIJ@E9mj;F|R6 zs-zUuab)5C)HpptxgW;?PD{e1YpG#os5*IP!ekzp{X#(v+GL)P;~GSLk)yKyEb=p| z%%fH^f}f(>TyCZ(b}qgYr$GZtt(W;D8A+ICHGivhRpwg|DPQ(ue?4F1nm`8jz!usT zp`p7|aWXci)z9@2kM^kxrlpcy-X7N>(pFtIe8!FhIYFA>UaaMcW(F{soZjYnKoKMw zuAiRPsrusMhEfAk^E%&GJ$vJD5zk!wsSBcRJP~Xtwv)b}hUBg}qw$1!u^P=wY{fSd znL(TvxUH&Ie6p6`0e4Rl=ny_j^HqQeT}TPqC4o9Xaz?j<9u;VT6;`YU{XW+kv0+BnIuz29nwFi{%HydNNzqg-(fT)1?eOX?RIM{U2OTma&p#Jy z9+L3ew$|216{z%buErH{#QfM^2VJ^hc=W(adJU{7Mc3^=qw7pn>yOb!H4XwcZ=Tn^ zaQtoyMMJfVp9{3ui3sxP8fGi@1)dRt_0Eu<&{eOsO~hXoMy>dD7i~~=&GGQ6l60aa z`+3kh>S&@Df7)!p-!GQo;LrjO9o$0_1V3L=Iy%gkV`YnPHC5-TVR*7N@8E2?q8<2yiqDD+&Tuv}&V8NbyIFy-VzSQ~ajII%9TkqRs8SJ%S zjXC8f8LNf4WrzH)tKsX{G`#V#SS+6%2;faJQmqh2^QWybYhJdalOqar_;o`32`=DG zK(bq%aImMB5HxI1Cfr5rrS6`ZBYGk;?6)+74G|C2oib|6Pf^6_mVQEy6|Cn)K%xD( ze;4INnt?`mIh3gF(AL;vIgc>LH|g^3DEMWFIPQ$*YUmvMp=b=&vN(d)sw3E*D^W04 zCLtFX0s~SmiF#8%N>+Xls#)BOAt)Ba#jJ{wVel^d+q=C!C^t4mC({F7I#0TkrU>;e zJ)2*rfUF_tkBMfqN(XHPBxc;oOajUJQ9TNf$tf2mQbNc8hbhnmrVb9j0v@Go?Kvg& z{pR**e4D3}{p{e;hFP>>iOWK7C9_Rxh8`Xmu;=mh$H>A}#QJhl3 zt}#x;+AWxm5RqN=jU9bc;|fqc4X_*-p&{3Ji(_2Y{py|zmMTizQ+BU%tcdq6j82rMnXLS0CG}~4cMfFgHbZmWVCwcZmiZU~ zYn#PoWG(^--%TN1i3>zP5=QNcJFiCmvme#FcxSwo*msN2UWBW``GaXPjOFsc`f9+6 zw6b2db4wqX^Wb+no6qcRAKf>3S@Tb+h8$9dKY927ovwGOC{9wUrLNOBuFKCc6y7+S zsFEwy7_@`+)e}w$#OIKJ^Pl61|2?U3JZRnAwk=k;vHnHs2$P{(sdv z7IYbnO!TU55#&Q{=USu{VIJ;&R0Qif{)Nr<+kG1$asV=ca7;xjhT!Uv-w(KedXxzZ z8(GH2*6y)SD~9f&qErXCj&1cD&A|+4bps&>wEtU2ZGM&%$KZ@lh~uzeB?Wl<`P)8%HFvqP@-wfOn2V6esE~w zc+ka7#=!7pGWpOW>^02m9*~?o_>GrjKnuLA_fT?xq#wG^!Cio`dmtg`e1L~^kJW*3G;$qNf{}2E zi4qA66RtWJcE~F7xVdlzg%%1lC9aF4M9#k-KL&lvnqw+J$Gk=DktpA?C$#gqXsb59 z?q4HZT1H))D;Vyiu&&&2`5It^Y4(Ebwno(9BezzNBH-s%nj-NAnym9A8JyYCiY-q*$UW^*>^)<$Wum7~6 z4P#wvF^ePDzF>xyf+Az5EkEm0ipt1!uJ<&`V>gokKBaQHFvl0?-!T#KGhPNIa+>p7 zQ50T5XQ&>?oqehSv~7zaa-8s8gneb-R%o<~8{3Z?J*Uu;Ns{*d+}o*Whw&FIM$*!Y z%9YiG|D>`FT1*p{PZGbXE|-R1Q%=TeQPK(9vM!T`Z?B?fvMO#H*pYRjy7jU8OctMi zxj_}65P+>^os03Zj^Q(x(B%R&+?G(e70TN0jQX4YKpjsB zDU&l$a)R|xDXvj-f^Gk=?kpa~F#1~}MpG)$Qpt_}s;82PQyze5RL#xQub1)2>Rxp= z0N$Nc7LP6Zd%rjMutd?38LxkDoYrAX*>pXFFy1Li@}g>$2l3q5WJAci zNAqtIHHON>iF1x|3L20}iE#_xnz_2V8LRRN!5R`0WtL1!l2I8gxXPm4O~Xoan!L52 z{T+wp>xGd`OB9xd0ih=9l`RWyjI_xn0}+)@qe+rbLyWpmuq4bSXn{XkvB#2Fp{E!t z4pwpCDjya(kB5yj0OMsNb;D&>_Wx{BzjIm8cP`T+HQ9`eBa?5`i;GyCk@Rzkr_?~z z6fJXLXb3}N^^cgLtxE{1QHzE3KrgM)`>)OVq)LSIxTTjdDKi8je)+8w&Lh+K~QdI6Cq|a zQQQ+mhF!@%HM7|a+-Vqt(vLp*Ulc66Br=6eTVw z@c`{Lp=;`O6U8v(!U{q-9w208%7}#ljarelL=<1ARFRFf)`}S99&FP)Gv&h=Aw(9m zc)*8E>x>~Rcc%nN;UAH^2tJbV53T5>&b|28c&fzeR8mI#ziA4i-SZw#k-*z5<7{yo z$~MEl2g=$^%Jy?rsjQL&Y8BaJ`7|bV$QjWkj1^eQqd00-)dyKLV%#_Ehe$k6dfRfa z4&&Yj12IlQ-UUyl$J9aCmzh;!qnS5M$j^SpZiv5cjbH_hyDA}wnOTOz>2e_{_4goJDuM~jFMCROhU3QMRm1~ zQddbD+lFowMg|m?C-YzDbzf4SP%lWvwG+Wquax_#Q;lbtS~D?@3b~dOgxamN;sb%8{Q)jdNe9;b^Qj%x#WM z7acK7CvMl7s~?P2_w|Zby~omA2?Qi_l{Xag^OV1*WF)S5ZPV#&7jA1Ou1s(9C9XVg zTUiMZ&dAycND@Ul3pmVFdI+S?bp93?B>E5)xSHXU7Ql?nKr(nxAgFbxj838Z{km?n z!bzEJX>9p*z_f%=kH8X?7};nI2~VSCJE+Y!HzdduVcmT(V5G46L4$`TJkGy+l!K-E zh|1CQl2h(K7CkCBnzWcRN>F|nZ{$Ks6>_ zCiCO2Y<{$Y?ZpaK^@~h2*NvH&d2%0S7o|%v#NaMZNISh5-H-0QPQmx6C$NZBoIzPC z;D^wQ<~3150|d58rru?O%{u(1T%9&gVXh=@+E?r^UpE>7A6DZAA5-4vt1T^rS^Ua5 zeO4rOFXtTq#Kt;1HB@CqF`BHo{19}9C#pJxjfjk8z zRpa}p5=R6=xQN3;=11J0CXA5R5jyRC4OE67K9I*8fd7-p#r%C@|NsB}!2j)Z zI};}d3)}xr<43{O`Rxo~L#GYU+A9>Am%BYyI?`fx*Wu)Rd69 zIqui?8CSL+(y5lF!H8xcnEEywB$o=BsGw{{p>0Lcj6UTRHvpPcQ%a z@`sndyx@<6ci|j+D5vOJIG4ih{`ntH|91G*-{qdmIo$fN?=_8YSNZn27uQbbUQ#`s zdvl3?xF`Pg&-B_}^U0@rie7%~Qxjr{#fY(`L2TWK=a#BJom(mNMi=-iTiRd$tX=e{ z803daNd2^a6dUos5-G%dvTnp}v(dA}JsZtR4f{_9=kof=F0|$SY0&1&_?PA6PuU;8 zs%;xxetXqHZyI$>=D-xqVp&3({v3!4`PZ&49r;PsozFSbr9S1A-N=><@v_q zN4uP#a4XUmv~lTiIqf<;-HIMdzV^{}S1`S8lgtl~l(6FyrNZ7HyCGjWY!o$2J2@4mJuxlX+Zx)g;VkPmY7ZP=$ z_@#c zl2KE$?WmV#GU{ITqh6ZHsC(IsdTAx2?qxUXrIn0&ZN;PB4l;$lCA8hB*G4>QZnhcq z+Kfj{&9~^q@`O;XxN85n#~XL z+ez9LIkQlN4+}}gypUvo3rPmEklZQMKz-~;h#SeQO=!H-W+R!k5wn0=Z6&idi}L!o zmCV|T8O1N#NM_gf=BZQN0U>P$vo@i@P@BzQ)lv(AAf)P=Bb(;xrG>F4UW?dv~%dU^fh=DQxgTaUi$b2+!rcxkR3DBU{HZgt>OvbMW#Y}@uZ zuzsuUmvB6=Fb9_0(ZFI4XXkT?b6nN>n*6QryU1@2!-z^(B#Q z-_Yaz4D%70aDND+#c?R7U--e7)3=v)9D15O`P2i`(z)mEPyHNSO3f9a zrP5DdU-~(_no1|P?BluD)=&Lhdr7@Vq2)wVQFr#$=jy8vef8<|^~F2-=aLftKF|*% zwe7VB*MycGMQTqU3^W-bT68JW&pmZ523oKXnL15;OQq+MrR~W_`Sa_Gk4_%H(c?Ks zmqO7-{_K(~G=rFLik=!(U)Hb2aCX7fQn743aQv-s>m(xoW{)(gcv@Z)Dvdv_pA40mG(Ks) z3ysE~Ps=z$qw)K7%%Rb97)&$%gigN;r-hTD(-*?Z_0Xv|@&b@h=+tv+3t|kN75OA$ zj*fpMPv2e^t+1A;KlaX{YSFLX2d%WOqWapPP}L^`&?=NyXg$hQG&A9U=3h^PR8fK5 zsz`@%e|`C%9FHjEoPDhEbe4JKO4&uDIGyLtxm!?3=O{5DxRCjo9jJ3bLPI^5;CpI8 z{hte;j{f1x(Lc0V|&OOADA24j`~*dm${LV`5Mr( z=FSEg+v4F%M?EC6QC%rAd^%kejrwPlo;q@QzqtJ3&F7;w zn9oPOF`th*20kD4(VRYNt~q_wa)^3p5f&lQb}W{nnN7dHn54yMG+vA5YUj^7|8$S@ zFX8NSx#0ZskqgZE$ju)8!XNqHbQCVqQGiKDA3yv?u1Bvr^4R&vW9RtrIF5qY6TLd* z?ok9i{KoOCJ|F!`^c8?{gH2M6-Sv~Q2>-j4uG-y zz4Pqi{S!Lb&fY(HjDAEU=iedt5sgeeqkHe{{qrUebpGdDF=BM~{$s5&B1`A*1;56i z&OHkqqgCe-=!z%yqEWBKs!>lK*)d9k@i>2K-V{DzUKct8{u#P$o*af}9v>J1u>n|S zK?GQ9!3Jb7T_Z}%0vJfu0-efV9OEB;bdJJ3o_46>>TvTN4mb9Cjw#j)4)^s@bA8-b z9KY(w;pRiXdN^@E^xa4Ps2n-m!-@MLuMT5SI-0m2yXeC>cl3+Hk3Zqm48R%zQobBokX~q*D5OgZ|^KL zmAgWdg6P4eB{V%@_eapt@y!0v6~2X=I_&Pl4*D%Z?BU3d*8+zD^KgJi0rN1Jt$z5i z4UAgH21cpt21Y47n_V_AN+ut)0IMZm*uN-=0T={oOS-UqQPRcjixTOFe%Zb#ald_0 zB6noFeNiHHxvbk4yoVrvlDCl0Fq$0%1JOnyGEP#1y-A1!q(^UGWlSO@MqgU64$_WS zVwi?82^&dB>={E`M;-En{f$E*^9BK7eBlyKdWI0iJ+rdxS5RF9`K!%=C{Zjci zMWp`iWocUL06*}ZwXqvsKVO?cD%jK72mFF#s(k=8IR4r-N-Vr;j(>MrxY`^CA(KEz zLL7l&kydj9f=Ac1XO9Rq`SIe_+eZxm-{{d0Z^DXlHc(uBJ<-V1ES^5*!aga3qbHi;@j8qs zc^+vQaLkpRKmpzmjl4ylJR}kg0C`O`-C7tzA(8?!Dm+fB5&tfa?BB7a`T~5Rx(xX6 z^exyy^+Grh^;R(A>DG`n>H(33>MDWP)2E_P)cvB|)K808#iO&Z#igSjm`g{EF_(_o z1uh*m(R@1Utod}*ZwP8=3l;#;Xe?BseL+}7Q?w9_Mr*-Z?fY5Z-X7ekSbh6%I~Bj} zRLp-k8izk(i9eE{uS>XlA{nql?pnBK*)$?9mCS0%yw;C zzkh5WU+;hKlgbcpw*6#nZ}NAf`CLw2g`C;4`>L8rCMY+i*ru6$wtW&bEBN6!MjPSPu!Yd%j(S*Yw0GjAPdZAp$Z^UiVh{AqTuL4K@< zGKflfSk#iunm;`}Hl2p0Ggx0=_$d)~hV9ZoTkw5pz%uydWC#v+F%7T>hmr;=go927 zAR&A5z?zVad4N)b;h_r6_Reibgs5Zh+=Q2%?wyOgzk=-F+upgqCy};`gwUfMrtlp7 z!xM)j4(fCUXL_h)-uQi=cH5V>iaA$R|#aQB6Yody7z*d-@9k#8}t;}w}q z>tu1pYq(P2k*5YSbt1n5@vQpq^VegnH|x@W6YVIuQs)lN1oeZOP$-{8+C36pPo}Y?4nNX za40&p!$Hrf9kNHKcF0DZ+ASQPbGt=4I=Nd!sM9+UvCQvO2j1QE?w;I8sGP8!=dG6Z z%r=p)5AG9DFB=RGWlH+m2l7|?iu{pHZ;`)JcgSBMr_|a8`YVOhy)3c|{@)Ppd+Zz?^gbhwCviEsR^YoP}c_&0mp7kcoGlhot-!RDmpTIj(y zzc2Ja#9g5WB5JTe?zA9D^a~$b*cW;rqJ|5UPYe4(4@8u3!9s3vWJl7|2GzBes6F;h zM0Mf&pp({BR9+htD*9vq+Jy27ZAY1kRyO&M=BT0qt5uN>(|$IC#^04f1L$jQ3s&)X zrH99}2M-rCzvWF{$(t01FOTfE_BXeNI03jo#1zb3 zBKlyC6_E;X!iZ{^!$$mryn6BK`_(aX;e&1%V#%kNoF?hni-;!KeDKMbyr%tG?}#?i z18o>YlRQEga7;lH4vjZN8;ObP@rg8wElh_`#BtI|gs*l2QU8ccR7VQjo*oy)qRts5r(S%-l&HCr!{MVQn8Qb% zF^7-(1r8r|(L6qCt$BRZa0q#54Hh2JZY+?ZjX}^wbF=`BhHIf*ZTxA^-ycM*R?q); zgIN8RJo#p5(lcw^;2vG$*0IJ_P93drw`m^R#b`TDo80FzS^C@UG{7&G_jEhk1-koe z-qX!uguA8h_6_48B{jXBGx!!A-ny%uTEf@SUNq z@4T5Y7-q)cUCR5(8EbF04PX97tj(Wa^O8<{%hX>#-ehf#ZDH+g5C~@PcY!;fJNn9v z7liE5ouXXyf?d2|{qi(o6rvNvh-z&kVidg0o)9q#zHJdBBJFa;g0I_LF(U2oA|hVE zi-IpZyohLWbamoIM7xkHM&w^8S;TzlJGcN8%B{#Xd2!AY;6#1W<6UQ z1jpH)tqp?ttY>S3phKJS4Z)&{|{wr6XD;9l$5S|ZM~wIQZ~ z9tGK1LJhH&s7v-vK#%bIprO`PRAn0!s{LdDT8Q!r4M~}b7B~5irm3O=3s#X1GkeR7u?Txnl>OGad@@RT znVO+@QOe6`P#6%=C@+Hpj#6Dl`86P-uK0`cFiLTmRFTZ9lm94ah{8QBxC1qhg;Uq_nZ9datpx5??E#1{wVz= zzn8@CeR$ybZux*6ILFe;iPG@G>6|iO)w`qZ9W_mwH8!Avm_2M;FCq2QOnor&9v2IHck2$Ak zbC7hcYyF<$1A+2bwNJlt*#Tns&6~KOn!vsIJrz<))n(<1*9r8&EU4bf@*GNbUw_N7 z2qM;hIIL)pTHzB*CWhx&+iuR8UTs+I-clf!hXq*w{;O8jqH^8d*5<&b_ii_1SbM$F z0YLTkm&;kHiXaEqCtoexwwrt{Yl)mrx80sQU+2tt75rT`BPcul7ubU!ydb6+PyOsl za&k*+qC#MSHWz#ko=O!5feS|3Y78!LArJx#l1q&N)!qZ4ATi~0t(*s2i>I3NLi06r zfpeV?iH?lMl+L*nP6murwO2YsXabQ+%h81@q(sH)c@x5A=X&CwW7=UVQTk3f?2$Jy zdT2d*x)(OlUj)vle+@x8&%a}ZZ@opTn$HoPVGt(5VeToBQc>^Hi7FAHO%WuL7wL{)rO^^5++zCE^4H`GPdqT~WVZ}vo*u!EV2l-da`G51p%e|~-OtB^r9-3#oem>7SC*gUYxk9#NzH%cb3o~f*;%4Gl+=f z`Q}TDHmbN7m!^ti1XE+cNT)`FF>#s~Mo+av46?&q&4?LCj;^=UInacTSSL%p4Q+p; zAY#dMaXl}S=`+hzUWUQ*i3$C*ylw9{i|jG=+0nmj<{5Wyjs@1T$hR@DpOzB^(RRf- zNmhze^D)EJhS!&!c0Og8YErk~$Cftl-v)^ql0Y5gm?4L&#QVdZH_CZWSZI(EK-&ya zV^$w20kk2(b`|@`pAK@?Fl!9dqy#=}C>k8QCNNan65&uhLL!IlqQTf#+hXBHRd!(t zzNn6Z4(m7TDE)xltFi%u&n!V&vNJ?1lF*^IP0%B$G)Ui?qMq10QK#VZsDIW|)KnW1 zC^ZZo_22k}mSPM=qXOQe{h651Qim|rq@TVM^{#vI=u#_Q73Hw(g*|*Q{)zpa8{0S! zdqF`j*bB-dd%;k$?i`yfg;HcwavB?vNL-5xBq9kGZI@`{@-MUTP^w-N2Ht?Eq*mZI zh(zjFz`X=H91&LMM^sMU0hbjDZ}MhYt(*cKvKH4DOH$VtOG4Kdi`93w_YiH|SqWc^ z#Y#q7--tF&P}>-Yws(E8R6Uh#Y$4j%b~pABZEVm_J`-`&$yRv~X)CrU>p|XEm$?#G z8Hbi)JNP;^G5qedM(m*)E{;Sk9LGGJ0dhy(hH?=-;ox^&JP`^;ofgVYy_<-Z9ia%E z9U-cMwnUZDH==UQZ=)J&CqY|vEU4CV)Mx<8A2bx@BU;qtIGUcy22E5XXr}zM_q(US zNvNKkUVNAS?}6m7babxq`1+oQFXP#G1o&e~WSRd_f=PQulU6lq9lhkj0 zxbo6=&r2uHsIOell=P7E>D)O{Od=T)271{1iXJvc%hkM~hdi_6b=F)dQK|bqdPws% z&b*vUuUhxuVXc?ILz4Lbo~Z`u9mrwx zd*rZ%9dby=KC|l^R5$ zNnx~9+ryyhCtApc%QH=vQ>XL~`fsM?CB^6+aX+`gMgu*<|nmw ztL^t;h%Fn2So0P`tmy)VNPc~bA+rA$?L}yWZb;pMh&9Z^LW;N4a1lhL(A5XtXdn*9 zxGjiC!Eh8|KyZj6r_|p87>Q3hH4VzaCymO%&(#>8aL5GV_7}xwJ<suI6n=YE7?_9KMetywF?dYPbIwDl-IrhZ@lue7RC_fjw znyg<;P^GjOt4h=C`q`y)at{HCEiG5-K3+)k4X%NIyvXGf_xV0~&`F>V_QUeXei$JV zvt@u%)Yt)Y0jB`yjCl`0am>pA-UI$<0z>Aw06#JZ2S^jRLcpZVX##ddew9%zSrPea zOCmq+#^%2#&s8D|zJ_RuV$KgH&t)RjBXie?Hcs%^5Qrv6ePF05I6V_&Od*;=gvvak zDVR9fOw@56N##MLt=LlV>VoBwT`;y()5RC6jq9i5;tsTv1w021MqLbydO9OykGd^n zqx!eO@YNBcWYlSb?9{o6WZ4gkyx9+saH zft^@91B-&l2c~B+5=_)WsT%Xs&euPPWBz*X_YizMyzu)FN__kp^2d+-JnZ80p^HC! z)giBr&ix(^@Ob3k4ZEiB80MuABA0SeCrCto9;R+HPP7hOBR(W6r6hw z{dBGtmA6DeWs{E!Dw}8-y~*iJ-tTfciRKc639xoe-fdCYa{v@d7SO)EzEM#4RpMw0%w|QCD1+_u$8$UtemFr*AI=cMepD2sIjT zr0?K3F9;KStR}{yT7_=aOo)~50s3FFU|TrQS{MUM$P&t#Agn9`?RO3=veT392On8CpoU0TU?cL0y|? z__EeTv8nQ0Cm#Xe3fj`KEXis(0AC2C!h!PQm%%J#2`!xo_CnUtREpp+;4w|P1V{r}_%1VG z6q)aW&4Flx8z3I4KyZ>Ch>Ai}Ps$@4D#dCWyyAyL`6%Cqs0=ltk_InXjG)XRXuczA zeV`JBC$xd)-C>Vav2?|%46}kD!9ctn}`=buDY;zd{vqyI*5AJ4Nhx{ zh#^N67K77NZ46^#0!ysRyR1$ysU?1J zpqL}g1}K(*v`sdpa3-aqCP+p!Ue^JhMl@eX8LSDtaVXv9no7vsz{DJz_b@RB@-0j( zX?jiP2tk4;Cz!c$BZLrwvx*<~BBBkL7`_>tT}5HtBiaB(Z5%`!@F@&AIH_OKfH_1P zFtIX`NP-eiW)p2(zoAkgl1!hc^n!OHU4mPk$o$(2w)EpZkMY7hTt^zDffx_mAdW9< z2L)k}mO2ndBB%-!3|SxxKNzOWVQ^!#R3(YLSC1z%r9*V!a2eSoDv6A9j<*IJ- za9U?;J8vsn+O94iqz&};{6S|`3x%^1HtEgrk5&H;y_UIfNG{S7ilJrgofT^MkC zIy)4L`bCtSI?y=Q8VU=GuSG>LuM7%f-Wya4{5&Y3MTDuV7C1nuA;f_CTQCAEv7iO! z1mO+r&H^FWr^QRPJfZObhg3@6I8o)YzNQk%}}BTjyP@LZdp0qaDD?Q=tU_s>J?q*mjtPxnv0Dmvay_tb45Vgnp}d>b``x zVHiso9QK3p(hO}0tivQR{0_?nixxPSl=JL*@>GXyq}}d_yNObU^oV}-n0`u9l5JMm z>oWo9hzh6dePSmma`9&YKr;Fz5kWk6z;1_#PJ}s7`3|)+D@_w;L zmC|ClDo!)9oa%c3%9|fV%ul<9*q{ypK*TvzL>rYUh)OE+5Wh4oBhWddfq1A2P2f@~ zgV4QtRcxtdh%Z!o#V=3O#y+YSz_F;ifI&~kg4|ITgj`f#1?-+)4dtQ^5Jjh+QY0&W znB|@0207K1s4@CR)Gcu6poQl8r?Ogv0Ih~t0{U-J2kgY66Brc4F|a%fcwnIx7}b`a z_N4b*5`f6*y}tCwGd=-Det0;o^w5_+T$SKGz_#CkoaVdILML)MRt1-f#9qrk&G}K_ zR6lh9oL(uAo$o4~FoDxYzVuur>+Y7ej(;KJpKKe+j zV~1{h*9%Se@}P&Uja@$&37t5}a+jcuxi#BI1n#sx%IN?XTOa3DfZwg#7A8ohbv@lU zh1a^CZY0@u$KbC#eS1Mo(1xfn`a;yL`DxTb?Idce4hHpl4jT+W`Ga<%d{m2C7>=f= zqCpcC`Kcj49sk=M@t>gFaR*##dAS4b@b0vuwNyCTSPX}2slWF-;Eo4)#H;xD0FVCR zcpOLbnE2@j1kAb5O18BLnB-Tgm*71DXUoq8y1;qb9O>kdLtThz?=fZB$5v>bRn~o} ztUg%QeLS@{XD#c#CDsL5_(`;y?q3#uBQlLZ!3)1WLemH+vhWLO4L!2*ix{KE%5Q|Y z5WB`Y*(u>zmtwFrQw^sS<1W?_ZLGiM_fkx@P}80fZ5!%{HY&owSZOt^YeeM=Zy1iX zq;ijFyHH2O5t>vU0?n($#@`CJEgIwWk-Q_kLR~0)YWiC2lR9PWyE<;2B_05*mt7SQ@fKmK@te!W`UC_7(-Fide85x|G+j3R-6Y7_`#@HRv&fbkKMU z{$Lq4NdOyy=>%AtO+3IV$LvI{_u24P?m4UueJ+xTGsfpk<}m1|S!a8>>>gr)jQU%Z2yVPe$9W zUb%2trcL@KX{w$*&vkX7KJTcpFGcyGHL)A|e#8?2z3B`&MvBp!ENI1)9dqN`t7B`5LWaakp^xA$$cO6IT-aO#kggpV{< z$;qY;#bup36vwCc)0kfrS9Vi}BIgFysY7vfH+3Kyg-RR((e_h^;+huDF}4tGJ9Qx1 zZt6h9Q7OVCLbR>qMhef|M) zC_)_a+c;F{T(jIStbynbKkh&615KYnMG@AYUtjmZr(e08tE6i&)15+g%W{*N8BY80 z#x<>hBxWZigR>reo-jUsS0i##d9?m|93&r(Uv&)U7k)~eJzJlf@m+ASQ*{$(>Wqs8 zq8Y^71s9_O$ZqBWbiu`_r6mn?!NpEgk!UOzdek!`RD4K5vpzh3^%Gp{BSKUzZXRg) zOtcY8sM65bv+E<~aG{|th#Pez$)A)wBfsV38E+sVoff4#Glz@R*AOl98C(3G@6o)j z_Kaxcodb-3Xk){34%PQ$D@WxC(KIk9?}(SY2hnt8q;iu)k1ij~BI|E2 z&@!|0Kf(L5goub=&Js)F`10sumZ&2w$5=8)Cpu+kgU%Ah{NUK&PL_b@Ps+tAG^q+F z{2nAd3^)aootB!Lvdd0u(slkDpN3EJ^z8){!5U6|vG;*u!Iwb=t&5(!+cf}G4hl#%vXyUV()UkEA&K0(j#kLO&MDhkzjt!;iDmU}e8$-ZPP1rfFLc+>8M z-qAOdRyI9N?r2OueW5ZNObVMHeYw#0qO@u+`uMsU*E9E?mAO3@d_K_;tX0~yY!qqp z$NHJQtJAIyT#CxN_f9GLOU?mRg{Fj_-DTsXc=9cB#hjlx|rHbP7RfVb|ZMH)=eETjJ&~@|Zg(en+{?h9LahB}wb#V-xI{LU|vF z-?4Fwr4&V?jl}QRI2!ZxrEB6h9sJR--8J!>E(00?z85REOc(#qRDi#viQlpFVz*Tx zO5%5NmXu3Gok!9=Kej&gAi%q(#amK;~RbON6r*5p9(G zgl|&P+nBpr_c#$wa`0>%L>tq%IpR6;4te-%d}4 zkhb^I-@a>p#LbHkRmJk8yPN0@R;y>npqhSuO!?Y5_u{G6@YvajgB*GYEqI+EUO56^ zAtN}}LmMmM?3WIBn;+b~KRz04S8ld_b=Oh1wLV!0J6UaCxYQ;KauD%a`+DULteWl- zmfUx@a!VJNsi*3)nu={0E_t^TFx{~$orBMntY!n8UJ%`OU}KASNB7sX^H#mM)<1_u z9_29UI7g~XSb-~T`iaB$hq}K1<}gD5d3!EMb+x_Km%B%i7p(aYFMoLX3tz>+rb&1A zk%1wfnBIi7r@t;ft2 zktcs^7Mu_zQIq0?D6%@Phy=;jC=G}BWojj=C`uK4;Qu;0j~&V>x)#o*l*hF3j=9>< z!;QzdtM*wk{IS&K=E zN0Pxwqnn@i>Tq5i-DyBnxmZVZl22Ia#lpO1lJs$6f@Iy#cCr^hSM1E!^{993%n$cC z@7S4L>`Cv~nM3Jmtn*;dJ8F?@usrhYH|QZC<^*6aFq0hpKB!y`k#r?&{9!%I@mU${QlvBJq`~ z$gM@5PsClF_|n^jI`Kr^)rlwKwoW|J z_V;%Zb*&R$cuP+Hq@$YhL}zQIEOizF->EHytMwg(S&aKT;bU}B_Nawz-AZ06W*6vx z@^%N}94Xz3JuXW$o}_4(DjM@rv_kQ~=fr2%3rZvX{a)K0<}%m?z#j8r*s^uwcf!LQk9zQd0I@WR=gcd zi}HI$nRhe7RPBg~8Ea}{$?^;P*CvIim$$H}i+wK$t&?l#Ut7mK%Q~EJ0G0)4x8uL608=34`)IlU<((q~IyMxp`%X*bBU8y!k4Vu8Wucdwhh4K9I zjG9$F_d+u0O$UiuXy+evm1w>3old6I)iVP)GkvN*Q4?#&G!vq68FeryqK&&Y!Saa8 zw{n7UR!@JGKc!|oJz>pw`a9H&x0gWCc=#Op73&##AR7WYD;O<0He(FBK;s~~OJFv7 zRu#+Qf>nHryPlF>T)Qg85(HFxmVhx8Z3!+zBQXf6;$pa(Dvp6ojRE7I8qE?Z&AgVF zIt&p*Z?nSjGFZl7p9AAyTP*CZ;KVvZ)yuWt(e`n}u7dowcF?*p^p2j4%R9T>UA+q`E_G8Eswm2=6{zb_@S<* z;r+Un#*WOTGu6-EuA`Cta~+Lx(slF@t~60ezq=)LzbA!< zx;8N3bqRgA>2a8MbA0ZwUa`z%z!w8vZ?Lo$n5Lf?d#&`X_awG<&)K61*hx}Q(H!WSf=okpf&$z$b0 zbAgf47{rnk#~c64=BuS>Rnqe9;@mZ?GA#@rM%q*=y_B4{+m=4m>MWbe5-eLRIfhNz z)OIgy_`P_hYt*vOn{6)w2ovR2S?1$-xvQnqf@_e~7p4|mvW->qYc7;PYn$=%G7`IJ z#nILcwX(hR=&?8Z%iTL@od-)waE(s&Tpi=k3o_jlXcl*!ff_cFZ?uDPy@MAyav-s8 zaVPiCO1|DYUODK|@aoMwHnDqHk9}Ow;oUZ=D&txs>9VZ-$444pz5eskh&JzS#`EYL zt;Y3y$^D}{QlQJ~Hi}`Ta}B|ljg;wo+g;$TEI(RCK;CVmZ@c!PUf#EMAFgH!P<>%c zUoAI3^m$HEXbd+q3yQ9B?|64E*7o)ecD$nKkb#hQ`_(%|*X8(^a(`EoyYl(l_s3E4 z`{a5)j18D2F`~oAW$S)Fylqe0=liv2TyMN*wzqfO6nK2S!Wk@5c9=kfgC0Ie6JEaf zd^?e--alZ-BDwkAlnyO-pHFj*3H67m2d0aBr+OSYh(HAeM_=}7A$4&EH`7Qy+flxF zlil^nO0HDolJ(}7@z@BQ8kH`2BS$x4iF@OatnSw`Lmllw;KnYOf|nANwgpVIQOeS` zic?Nn^b$6eiKUuz3cF^IJ zGZEk*w7qAZn1&C+(Q4}&9Kp6Bz+r6|D;(=KuE6nco)sjkY&8N7?EA z`Pew*?JX8KZ=jDJ1fnzqWnpB6v@*!c}i_$gpMcto#ZsE8KFen zWrPw@58Xh&IfG%75lX~eMrcjtLPjW2w;7>CkLB0w@? z&2E<`O0<2RC{ee0qD0%~iPr2dX#u9*Ik zMxrR)?zAL|){=IKqP65*qG&DoLZWCbWtS*Qv~jie9Cb1KME;bzOB5yAHc^ylR?cF| zrqo@cDA6oYlqCLj3je)rMD%;g9x*>xBmMYjq9`rE)>P5j_|h}Ho04cDw+MG_)mrJ& zv%KC-NmLh8#k(mhK-*tVN#xz-l$A=AY%ixIVsVnX1ea41nRrsV8eJ@_Ua zlN}fEY44Jkd-^(zA_ck8uPy^lLGJ!bz#G19u?L*5)s&#;bcLN< z^JoSk^BTSl(hP?tK;vpkFfq>c>|S0uY!P!p)n=tZKj%%(XmfJk9loc@-H6K<8{eWh zQbx6F1eBD-Kh_a6x|Ol5Lv4J2qx{x*()gmsa8lkejV^?2S-H%*)%fbjC|ovqG`?h# zg=unYd>Q2;;Kr9$M$rz_gvQrfh7)Q`<7+Tgwb(ox-lcy3kx>u9ZO+i_y9$u_v zQR~+9vPLw3##eg!6WU2@aseb-RBL)yB-&o%>qNr|&9l+P<>&FFmsHa8a!Dl-&>!fV z7S}O9x_BAw-{OySAdBysV@5Zp+`$Vfg^k%S7gP?8*Ubf$Dx1Y2s|*+CJ;l8^dR2@i zB&Y^q^q9J~1R7OK2uP~E7`aT%F~q4oU?^0xftYFLg|Sub5JIq;YoFHqe9~x-H#P&( zYx{&}J4XaP$}DYBGE4D1FWt|2BfIoN*-!c{@#sw#=cVfEoS%4kE>B}t3>k~MFo)E} zxiE(uNL`pis-!KU6aH6bw!RHnG164vM$JRXu2K;9?aD^GD}zE$WvX7BlG8K9HpeI@gdro zSNbj&;_0!x(#=Brt@27`AwIH7e|@XuctOW}yZ(4@UbfmCDM;md31pd)9g@Ya&g0rH3d;q&4G+ zP&|QCY^+nfMY@e_aO~ty~O(LNGHzs|K2DLkB;##y~?Pg{iF{n8>P! z#z5WKMaQ&Rbp)AlE>I0sX#YMn2tKGkf@cO*z5?0tLIT$G1v={X3h|G3Tv9fHrQMn{ zAD#5$4J+~J+@8b6b64HU#bsf&c^2qb*{m1e7~zs&ZFZk{aYs(Q5A90Ea>=3x`R5qK@6l zZWd=Gd-65k8w94Y<&x(H1RwV{MU$n4aeE&Oh#AKOoJYNN7tN;aik}K!gZtIW*oo@w z^S85Do%`27ie5`ZUs;M?R2cKVk9kXaqiNVhjmY!;))^r#E?9i9LKAAk+Ql1t?mZ0T z3;3i+R?|pg(Snekl8cr^SEDWMkZlxvq8lYw?A6<*iY@VatrZRu{lQ7|jyosU&&+&+ zNZV;U$5wQuGT`AS7Q=uQ>nXa_dPBN zz?MDX8b#N#W|eL0?v+jAG-jgp-ZwpKopnl@rDv_;c{yoHQX~HlX|w0K-Gxdg}5_b96{gC9{f(NGy6yl~}s1e=1wnn+*jGcldK&W-plDVx){- z6B?d%j{?IZXH3iZ63dn~-7DoHqosFx#rN{khrC4>)Yq&%ZJ?oI;>~QS&sy{tRM$wX z$}his3pXT`>Y|Mvy$bK}728suBbF)YijBp18^fAPDq6qMsaZMYuACEvFsn;pH@&+l3Af_t-)&J!=Nc zfwgoRpq(5yl#imL)gLv20(DD*1C1;HAsdC+8Br*qjTEq^;tghJfrSaO62N9G{AFma zlr#dpQVW)!dV6)Dy58Aq!>j{Hwa{^>uz?=AWi5_cTPoSdC#6&}K=Cum5y@Mshsq-% zORQuQIY^`5o6k<(r_XNvP}R;1ke06rL9e85-&TsEUn9AoOOj%_)!{G>PuyurK6O-0YWPH9Qs0mKArxk z^rbK?(f{C%{rOVbAd`8NhEn#G%s5M6Sla&mbxc47yYaTIJd*N^uSOf5eUhdkpwCdDyMR^-OEays5 zeT-Al)mM&|V4S#vnE!C!^zqdJP*m_-&)wLTBu$KO)SK0^HyPVpdZf=!6Fz$-Y0GFf zOT*P^d}9W_d`$gp?}b1;?W8kWp@m0&Ih-!PZJR229GQ*HQ`%8uPQ~QLi+9`~MrVEs z+QZ5Fl4QYe*u2~+PuB{MRStn>Ls04dE6HZuU7TD^q3MNW3F+nRooo$l`1t-C*WSnqnu(S9e~hnKXW;z*!#HWz;c_}1 zy}zQpcK4gy`vGCYNmz}qLV%pRg81QE^fYPY;IA6v+|25WfD*qjHYusPmgLQOjD~Gi zaM0-O%@{DWhp)c+v$b_xx^sUtk@mT7dvEalATrg_J3jw*rhdJvx$=bJyU4_TiT!%^ z|Jo!Y@P8YeMDWLG%LXlHRO2Ov7}yldlqU|?X1uE4p+K_91A1`rdqNF9RK0^ z0ChaKzt+50?XEYB*FX&!7jHOMj+(KTWyaOmP3tJQW_Y{M)|MNMMNxs{DGb-6sm|NL zzr;|8(7n4QqF}dA6pY&#I}@0QpRVHXJeZW0AOU9*0Q8G`}#?; zw4_-fQA~SDH;1eO#F?ft)v=A$`j699=0_4k+} zl{T+*r5Ut=Q%`zmEA0Spn=K?wJBRo3pLxWF>bI!vhSpQ)K?*BvN`rD1bTC&?*w%0o zq(Ml6C<@6263(xrOvC3eA9Q6h840~&-=OEe*>WW1OlSF?8{!y`bIz`GFLA144M;oV zB*rS{%rPNRZIBp7&)OoDfm_rX_xKp97f7&`=gUPDvaY~ONHmDtktpOCg!pbk1N8I* z+%MAmjoE^njP;IyeXN_nzgmYYNUAjy3divg!}drsY=KA>EfhYUUcpS3%fT9LRdgZ0 zUk|_Qsh~LRz2*5}HwP*YAWi7gIzI>dK4r^3{@0;%n&R)Xdfn>lNK)|C>BN~#! zzGN58+cIdk-c=v_jp4KFh)}@)xqJ9YPtX4me>qCv|MHIT{dqiX%m4ZCb&NpI?{i0L z%XdM#fV}Yp6Z^9T*f$qf{d$?MukS~5?Z58#+PB!Zf)tjLH}+2-T-R%etXT| z?elTSP@BI`=Fe(Z(N$a@6pN4iy!!O-2MGxx$}vC~p%9F}e|PZl#W0TGeCeeZ6yAC2 z_EW%Taj(e&5P9|2NC` z(=u5z+&_^@qww3@+FUKO&+9AhE9Ft~2~=s_$L&PtD9@VDi^{H?F@-+3JO7w%>%q?U zNL%OeeQH@vFL#33c$Kf(YiT?<20k$~m`}av%je!^4GYCOgrp`M<4Z!wl(e!#I?nhP zTfV!hV1ddnt@~Dbzdt~6yoVO~9l9A_rgnQVKjpfI0|#|Z-YYbA_i;K3sVR5%_MfQz zIqurl`G`v9I_k^j@0Z=Lea-?6{jNLgedFl>Vq3_8N|q*uZ+W`1fQ6aWj-Hj}*4`C8 z)j8Iw%@$B}0}&_)^H2vY~!6%FzR! zK;Flhi5768f3$t?6~EqJ0Vc0rfVvZ&4lKU)l@DE)-U}Hy%)r1J6ziDrAs`xFZ_TL; zc46f*jWHcUkYE^J(Xd(XVh_+=ryp!0-a`S6{Fg^hchpo-sh8&C6QXagq^Yt^QVjNj z>iBtw1bv-n|CggeYsSQ`cvicvj7u~oEXO5GPpdIEOX+#J!tDMbn2%}bfsVy6A)0~b zMHP9j^lkmmLcNdQE%cDq@!r$giTuks@?F2) z%EpAt7fYaxGfqOprc|;YNQBVW^PFNdxljyYV^^6Ilh1?3ZBM)%80R{G1f7f04)Vfq z!DCbfPe^drm}3B9e*e5C=^*RPp>f;|Rg-cVQWQ!A3<>oP>9=ruA52!d7tgo(SLs}5UkqGjhMcp(W+N^SGlCLbnR&w zk>;J@GvU!)^oHVgXs$_9Wj>m^P>Se-o>4TeKQAgp$;78Tr{E4)MevE*r9Y`5f45_7 zTj-0{|F!xJz;}|0W%Z5nmZd|i=a6SH(SYoQ7f!UYW4f(ZXM^^OA164sE>V2mO@UOb{LNae z8>5y1wI(%92d@tkAiBWfoMwC?Dvs6h{bN*Yh$WE?Gy6i<;2QXfzUshisw4wUnq;d- zfypz-CQouyH%mX)tFK?4jA)JbD@*yV1N4NlgEy;SJtHJ3$@k9LZTyuWm>WB-4Df)?H?H7N zz%4L`FUed@xbVa_MXFbM#_vkU4<|v6`6>$-k_v7;x4*cSIccT+gltJiVpi7nvr(QD zx%k-+Lo*?Av!0YBuM6l*RefJw@1VOr>fOp3+Lw9I8A(Kgeff0+Kj z3gwJJV)~}A8Dq%gdY09U9%jC0$>0uvVwUB2gv(@I_!H6Fznsa~4+;)67DLrnm~%jN z1Vc*2d^K(;x;7~TfCDhAH&_UJF;nBe`}qn6uC$h8ils+GX9m-+iye2Ikm~*|8a!H8 z+@wrXp>H&=J5j+q3o_)3L^kuKMlpb2MIWvn(n)zKc`v$26-HkmtUkb?CX&Gzj*+kJW+03}dxSl$+ zZXX0pz|&9jdRAP_tTbPYOQ*^bU;W5w(;!|?%SJd|w*$a!7%SUqg0e_9TPqOT0bmk; zl^*AA-n0vLd z!q3r1n9&G<(D0QBs$9h53&UvBYdNy*F5LX}YwiJYr=9p-Jw@`A%En3b;9++UA>CNV zE%knhfUfNQ9%TU6w1i};xFMIOX*I3>=Ux`$ zJG*g~W38jHgZng#r^8RQ{Oy~06i^ZdhAu5CXo~%9e!6@d3FD}VQwo!Kb`-~kNdgfF zCj%+Jv3>mKUn0h8!kvo~k&GC#I7Z2E;-BSC`kv8+o*T?w@`BuN7J7p?aO4Cd+dWyg zTOmjZLry7Lx8Yb1LP2f&$lQQE5<&@qr+*e|!_hDYoQw@))u&D1dOR!u9$=7aE$I{nudW;a8_#vheGvfWIUY+ zttNa4SiKimpW96^$R2;Gc$K~(DEi>n^pWF*1@!%iemtW@dkKge2f94@vXN0|$0tzB zO;rR`U+8Ce)KSUnTNU?{{^s-@t=aW;cyS$yz$AAu>tVCI*tm@5mK~;x9y9U8CLr{8 z{O1Invi7%M(cttc*M|}35E^smR;MZ1%wg5WK^0{Jb{|Xw8_Ly09!t#0^3b3WCDN72m=mmD4E_V^ z%h@2VtS)jqREw!ZQpUW?kwyPIg$H%^9HzDT7qrU{93UpP5hH_S^m@M$O()1?7)Qcy zNMNxr2}l~OiFCviB#0nYDLzQcL!?`xS_|xttf^nLv6cnG#&xC^#v&Odj5IXh8aQci zLI#k)hKwRX8bA|*UojknWnv*CH*w0q`m(p4t`<<(P8Lu;d;4q&k`IT{P-x{Ne~_fc<2G%z z@Ag}p`@VysRex{XGclq^a?a3c`DHuGh|ajR>W`WeO=m*eV|k}C8!b0fprXvMDA_}b zsTt*PIX7bAS)!x7uq<*9NHE42+iV?^L%XZzixUknV1iCpnDB~R7XzpOtE5v2Qp}H} z=66hP`xUVV!0>t`k@v@mcnOsY2LU==N8ktRnmrQ;ZU1nuE14gJ>!;ez4f_A_*e@~5 z#2Qq7xI%#z)B5Y6XKN=&02PE9n0O%if)<|y?|OcuC8Y=8Ya(-i50CT_wWS*KYMs2G zszT=;Ae{y@G!An*C~-z2kB%odkeJ3#PDxG!6NShzZdz1COlrcy8E}}lNJvEG47>eq zxr4NaWMn3&WR7$;RLdJ$NgE?s-!~}RNpDEJbx9g4=)^QR?65KM5=Dd#Cqf>!D8dDk zvkVTZAYnoBYhv{|xFJ(47g!@>@jwvA7q!$VdW*@?!=h+ z!sajFH{x=N_JPD0aH$sVJFVuO+VQ{1^g+f=xk`T@3HHRQzUEI&CXq$C8=7$|-tDrS{qr$DqM}-7~yZEc*M;^eZf%L>F~K zeh`YU`_l83eDZO3n|8ANl~Yms(awrwHuEt1>7n`cA}92~jlm4`PN_EcdIZdrda&rb zEr+bIZ@g)z@g?7j>mzYRRxRS|)}`7+LUi}S0JrW%XW)PlMw}R%MHwmve0%(|Yk>3v zZ+_-5gTRYjiS43yw#1#j&WWIs6gAH9*kEfJ4OE%6T-7U=Pb;}L6zs150L%rt|!Ai))$TLTbt$z zM-5NBH_$A`c~8ko8TqZx0KzG-eY%T3I)eInC+2h1)u4ti?y)zh2Nl$LVSCXae6g zYX7>qTpl2L<3#VA=OAOMC4Sp<&;Jwipf7W{$*dgdsnLp#tgG>Iw`XsBCS67kB-b>f zu64;0z31#SD{09w{qlJpX7=dQgVPnrF}s;DI$SX`9BPD;kpz91<%i`Xh`^mNPU}*3 z5HZ2fa=5J3voH!a$TRwlapCG6gu#r(6@GR0E@Db4c8<_C5U$M_FBbfUPFayj@A0;k z29wvjvH&K(OB~jnHS3;ZPsWL2CQfWJ^i5Y5j;8VBWDl4$8 zq$(A3;5IfI^l686%fJ#T)q@YkF_Zi8<}ksBD)v^J%wt!lXU2B9@oQ3u#o9^q+1d$h zz4;%h)|?X^!8zm@4kFs9w1Oe-atkQ7xILL%5qiUkW(xcuvpAxxFe1cZUKoqU6Ivl? zuJ{6$Cir#6w_5Uq5&>g}N|R*yO49`i#bp1o#9{P;Y!WDY03AqaB2KszTPz6|g0uwj zww0*Oq<0tB4k@3P9OwPlOn|LGXw#xWjnT4hW=K)G5^Y1W6!O1_c zvXg(LWCEv1gG+(_WhepTW<3Gh1m}TtW=Q3vFfWa}ppi~4qSM0o7|;glR}1gZU}Agx zCF9gwS_bBUs{+4be+Wp)@B{M%{)A34F9CwW17(r)Yl`wcz~ln&!&ouqu3DYU8JR@= z;7*0fQ}<`@d~-g~_qPVf{KM?x=ykEiz}rS#AHRhw#HY?iJkePr330mfhH|U45$ebB zvxj`uSPL;EUReLo3);N#hVr@d?jTf5`S$a(1i5>gH=AJqTA!lE-$V_{Bqt-D56QMj z&N8%CHa=WM8{JNswL`IG`GiX;V7lx$*Igd4gL z$zq~%-VyR4oAsX9lF-$8k$}6w8RiX+3Ra!T%6zHz%b7i$mzS2&my(WV6dj~2@26@Ff!QK-S0Ak`COY46bxv)~dn z9_a7CiFT5U_3guYtW>Qkl0)#S2976`>l~7*!0ni-=ZGN*s9G+bUt|mE%8qe~f7HEcEA}4?3OETpo%*Z2 zfL5T-juDMtum{FF9LVQF2{(P>4ewMCU8!OWkydqZr|t@&-kRh=A4h{mB{!L&GxM@D zv|Qg+-(IgGmg%(YP{C^9hC>7p8xIyfSfY4!ia5k}b&r22S9H2bFkuaXnFLg1j5L@Z}!;DecS)1su;OzN1M}kOWDkkcx6d{Ue-AkuLm)xXE6%F5dY1 z*R|&A-BCARe!UBp%16~BO|{IY@lK?;+$mzjIf7bC6UCZkRQO}gswz$3o$nEf1Gv)T zuf76UXkMr#lZ&9rVPRF$`Hi-wbCmU9B?@l74o079mmvAXh_Jmhd6-@%-LKEK4yA_& zRPqxf_{G9=3kop;=LBF~ML>o}<#6`GL??=N6sVCqQ3*$76qB4BD1Lf@6%YnD8f1~E zD_oI$D)OFZC4EVR6<0x~l}I7Qxm+PLwfw;^+sK?EJR<4o!o*jXr2gVgbd#eFD--Ww z1gUTXq)-XR*hVr`!AR7~%!6J{XFeqau-wJqqYr9lrSH4WR(r-yhMYxwHS(7CrsVaC zKf+bfrk7W0t1XYt|CLT4Am7KYld@K~CuME!_llZL*sfN$K}7%+y5bl0DfmN62@c|~ z_?8wNo?q!mD>fk6*m>pW$Tt_hwdnGvXpA0N_K+dY{sOEfkeG^u@%<6%A&p7)0z-Ot za78fTKEWq@l-mIY$3GYI|6PpwfCS~f1r=mgic;+xp%yrl$3mQd1zWJ>oA2)zH^?uTR%Rjr@^ z^{aY{jbB6n?qlWp-h8Q9Vb`UD=))%7tl;`$3s+mL))>Qwhp&OA#@0l$Vi{5Xn6s!V z641-k0CUm%Q&a<{=_W-uj zLXV$tHS;K`r4DHN@f-4#sORh$_U^&Qf0Cy$3JRPCT7pWkk257yrT123g{BD$6!Iq< zVPY-POwBFQR1dR^>9CYz_s3b1_7_=d3b0#f62_bkNpdaZ%4p0r%GfD3^+PTrV~%iv zE(7Di$XIZ>-Bs3rWninpUD%%hF*1U|0E0oJi_A)Z5OG0T6n&WCy-V1V-Z;c_J=IMP ze&)3>IU3{2R}9tj0gwk@DN`}!=vCRO9a$0?-(A)oJ|ox5 ztjny+eYpaiJEmpb6&V-)xlls@XE!-Hqs&dqin}6~bev98ZDwH<{Wr<``2zn?exR)8 zcJn2sJ03np(tvD$9zH_ZS;9mXFN4!@YN^7D#P#w8N-VCBBW})71rZwVmE#39FRYMf zG=98+Ds$r#j5LJ7j1J)-?Dy}Cg>y}Z8oKhrIFD*0>|-V==%8j&sH0p`1c((-mO1jp z5X&R=DpH4&^KK7rVEQZ0KHmx5=dRb-KNxG8Pnbtk5m@hqkGM!sYUw7MvCIme%|%r? z33&4_L2`gs+W+-e$c@Y!SJx=<+wSu7oPt;7nCE zH8Y3(TUwQDKn!+1O`smBCZvT7BkbH*;`iV3xRQ2a#A*Mz3{Vn02<&8m;-dIOn#jD= z^D%2~1T70WQ@LAq}-m zA-m`$|$Mv+}o*m9OLRmxIeGI4U2apYwwXL-3f^SE+z8bP^54WQkLtcXqgqQ+2e zcT!D#iL3&Do0O$ovx+{_!JY43rSfS?dt=2&9#niwjpXC38&u5>ILl$&-gwKzwJdOx z2f1EkLiGAHR&X`Bml}7-8?PZONDwI_dI@t1j^yAc5U2jh0Se4XQ<%TWpr-Zp(@ISj zO|;)=JX3_yc8A3e&nlFlJ!MiVl%qu8(nwQ@s7y8eC@X!@RZ=U-ZvqyT9;@+h^v_(- z1JwZVqsUNN4>g!%9+qd-X>KlRHKa~SkC8J}ar|q}a%e9ebkH7tM8AfG9Yc*uBt$*4 zU&IGglmb7fB*PQ>G@toAX=6q{^>UUbyQ|q3&pq`hyXtPeHEAcwsm+?Js8%fe!#|1( z*+c`;bycCY{FZo5h-FB@WFfe3}@>(y7`P3d7psdT5L@imKqXqN*@7UT1_uah23VMQ5x(HWBb+6KN9M zOO--e%Y8yO^YD3fts-f2_=!K+`(vS8(gtd}uuhLUY5g1 zSu}l`?|h!d7v;X+ojlvulKOoWtI9bm5-++D4m5WuImYwd`GBrJ7GY?8-G9ucmrFJU zZPlFA{}c|TyF*Jqb!Xm(GrojI{HwtYyN!(Qeb!8ufmu*d=T4Q!HK>_PT)8tRfZ!-y z?@}H78)eO8bgF-~VdckR^xy?ygXRrC`_~!}D^OGOHYQT9TtZ;}c>9@2M~l^4^@q>5 zeTbI#HL@LUuT_Cf`>N!JwNKta6~kLz>ydnU0rx!bCnk=SvJ{~gh(#R4;v4z&Uwm}sOXq{?1akBRU zr-J7bYHU*=IiAP!lJGX_Mz^y=CFHREnH&dql7G#f5>!* zCHXGXl|GL*^aY%p>MF*M1-*mEU<1u3JBEe^^6@ zXgRp}Ct``@q3>IsHkJ2RfTTa}*m@K(&W^gu*voZE6;?rd-lj#pxcZRQVGNa%YPOY?x+W%M*dA{&P20vz$i$^;_Soiz$?8V$aS)R!>59K_LCuxDXgOT?Mh`Tjjo#}=#WL$c3&JT=lP+&G0Z*b ze4Xn|V4}G=yZQ9+9Ivn8<>7GpaFIom+v%eJ$LvEX{XhfX+r$gO#00P}fI6R@FmyRl z;*1?pI=s+lj98-Zd2^CmtW_77fP9esUHbjSvF@AD@MlNxIgSZ#bXE0B)yM;(0`s3H-mhpIKt5HYk z=EAgDCBczb;SCUoGTj}~nVyz~AeV%<>7?k~_YO`^bE-9&t9ZSF72t*;P-wSJv8RlG zBqcb2nYZc?&vnp{1{~dsF99YRZ9Wy&x;FlegRe`ZGlJVRaQvl6s@r45j49b*XQa*I+%H=BHI0TJLT zao*1g^k8YzJuMAv_5s{lhEau3602lVpsTXv^TX+-iJsO*n%(et@W@nv%L^(MBBUa* zkj_+FZO3xgQMYRQe2ho5`fps%{40fV9cZAae&ybpci`&?!YQ0r44rPI5A$^SQEHA; z9L!=GZ1_0h{wU1#Dg||REL06Fr&;e!ZH?pMU0|FlKKPc}8Y60*6I;0>qD1LBs>Yfr z!QvcGS;79Di!%hC2P~tfWN{Jg!Aa2T&@EfLpCHOihIh5Pa9QK?yhx`Bu&(ck+nZvi z2j&Hp1@_owTY)9@^V_>;?GYE^Ilo~3gWYH@r`+KeT-u^vEqr+V^P4sQ;LStPSbBEf zqosU)j>65#Eu|+euG95Lr7E2&-MEL74yA*Lki54Kcp$_q7 ze^F_5az5=DrnTnVNrg-V6y=n}lM{|Kr0-(?G7VNF#|LFhHaWY|gn7}0QA%4kP#npG zR@k6e2C{07;aVX1LAZet#^&FN2E;zlFJvc>P1u(6ghpW4WPsb_^pcdHu%$Frs;ZwP zQ0l5bW3Fmyp`2_r)zH?3-QIju;i~NB=7$0Kr2ti+cv06)h3< z2ur4~WeYnmlB{#(E#D;eLucKI>X9lByY46}Jw8nIx}fwctC$ZL&=;>x`TV}{DuL@m z%w4AFbElXpjq}GH^;J0a-%Czdxjj=n?ONi!Q?y;MSNsH(eKA=2a?f?=96Q)uvlt(r zXYTj&F{$}@X!jVJnvPPjTrueBw&L~_mo=|i$zp+3d?fE1oI({Qt|14>c!etSYhh{C z5Ecu|KhoABReBku!?I6$Ik?O6Sh`~u8xXJbyFAS;ERtKT~?PdP}}mFy71-N;7H=w>w{F zfBdHvFPuPz^}@8G*!jlKBj4x7VdF4n1o?9uNaxre}p5*+1SxhslT9wo+E#X8nn zu_>-95C7MmxG&gHF&A3I?WsSZ?V>8sS%oxlv+W;L-5!Diu>0fy^Qm0yc5V*6U<3>d z+r}zSr~Z|l`#{hPcgQ3oJ(4lhmuy1cqs*Wb_-|Ff>onagacazo>Awary^q{)Cb8So zaJ@Q=mkr*HtWA(zXz037xig~?>U9kF3sQDip%7)nBh-+LNF{zB=u16kX@=-mJDPrY zhU=&G7Rzq#ZFzmjFmrAPPir0!VHMHYv2Py6*dbx1JuGX78E)x)EBFfXX+tT=EANCK zfc@*CoFy_s)_qC4gnB2d!I()L%4#Q);VAr64BK?jQZt^xFopAH(=|@`3>~u6Hj5~X z3~;oURMZ)-nIuNFR+8BgR5k`z6w!&oQNrmLGP#CMDcmxsB`bPOanQx{Glo)xX}i{q z2S|xlDsl}7pi%9^dLx3)%_{Z-L-Vie#7QWA2N zpUZhEvoFm5iZ4_J_RB$s<#1o` z96zu?7sM|G0~^n5MK6K<;R`=#-X-i@Sg%UyTNC1OkxaiLlp1fMvvqa*IS1w9|>2lbT^BwU~jEeExm6C~V^ zL&*Wk2iQUFq>$nyNEj8U7g)oyhKCPqDsDEEh$A$x95BWQ8^}8UN(dI-5r&5krhzC6 zX+GFl)i;NadjjI*V8H%Sx(PRi(0_SS)~k&fFjfncMi(MD8U0#F;58Nrq`@iHQ{AJJ zjJUODP?RVFEX;iDELlxHesmeMz!#~(TyvPU^u2+VK z2SVWF7=9L%+g`!VAu`1z6F!MgbU&hi$vzE14_nM6zMf&Fv#CAN05jULMZ+Jyp)wCf zhX`y&#RZ&lf|2uQ1t|x0qtwOc-eWmIyFoZnFm*O0cbT@P1Ht|dHNkkCPcLGMCpk)~ z@1pxbI7=fv@|b9UcbX#Q%^NbVTj9qY=k$6~v?mBj;%&Hg(l5GhSd^+%?ceWClL|@E zi8{R6U{vaMk3kJ;?auyO*yfLcnEvPxOjah8r$>A4V(fb!h;Z`<-?gT^9p+s|$X}Iz zM>gYspvKNIOL*Uhsq$ic_uFAU8m%Z`;}6@?R{Uzz?tktu=CDT4d+V8Ct(vO?P3b?G z-i6_`bVC?D@rButUT`P48vn`>g;PJ^W2GhN8ycI0mHI|DOe+lrE}Of6eE^}G> zbLO1O4j2`&589M?AajT(rPC|DxLll+@qJ`^tlKfQB0n*kx&1r6m{}+ckQP|6u0_vf z8HV9!=$%%sd$>XDWzQ~4R$fmxZW zD-*T%5kPN824>H_vJB47Oq%5&_9Fr2Tn2xGX)pW-}L^e)AB~*_ou>3^hi*))jnK6|rtBL0M_M++7G> zNPQjO8~8W=yqpo7cdB^98J_*mcqK6TES8#Z1kxvb+dwNoGr3NjXj#pU@|!Fl5z)8> zVR*+~$7EwMH-HcJ0rcT8e4WnWnOkkV~U3PHXaho8yd2)=Rfn zKIX$|T_4t=I$JSd+jjNM@ofQzFtEH$GRV4Syn1J~``~$X#@M~FrxlY=GYXnLZVohC z$tg!Za6b^Q6k4_#+7_DPkZ0;E<)5RucK+-eWEn0?MY&)&OcWHAlPATouXE669+$p) z!+AYDkJaG}85G6wd@r7+UkUT(**Pp?QDQ3^q}DPMLT~6`Z16Z@K#~(pwT|7NGKn_5 zy_5`|_yR#&DbsQcyc>zd3sd_s?q%Xf9`?ZdHk^`7^r(5{s}cvvJ`V!sz@VuU%ue0f z2P@ewG{?(#l;%5L8ZwAnwhJhSbMl4-=sEMa+N>pu*LZzXRJAGEF~RBShYqM zB64tQJ1Y&6f@MRn5R?q~^Hg}JB@%F$2OK2d7$NO9MO3f8UK-hCl7V=-afTI>@waKPSdOJ?$(Q!>>eIJ~03PLcBu!0wAVRICEerwV1JAZ!A%8` z*?0qDoz1kt21J733_G9UZVF$!U0u&RX65uC)-pI2a zKtX$npt_E!@iLS`Ag8!QLMOUJS?zhID-vgAAyQ;@7kJfK?o$$t4N;J@j#x;&fnCU^ zogIoaMe}nHTWtpcAu{!jkwlizxZ&e!g@xAWtaOFsRacV@@4OT{ibM&vuTH!eZ_Xvwpc zjEnBnl;f+BMbE*_X@$?{vjWRcqV#1BUEOY|Im(K-ZiWiZif17^f}50>L+DpB;BC^` z)ezrJRLnNxpxBG#ZX93oZr5ZfDc-ARq?%wrY}l?o85FOjXS#qa4$cA2fw}wP;h-EH zo-B)?z|*%!_Wn_eXuI!g;0x(QW&JtG#I3+Fc?XOOLS!EX>?@Om~Hw-4xZ+Uyq}#=rcduItCn7yp)IYp)j)bmgAkz`vHNw*r#NoG%whujV)Z@kn)lU)n-{Hcf`?)b$?QB`{Rd(W*+|_sr@I}FY;7>WsW=1E zbV-YQBe4c&l{dCpZaztpR$(_m6@^)cM>tf~T4E78E?Q{A z0Cft{%UxgYpdA3uIVAnfK!(TKY-#ukuq~cLFrr#aIvgCQ2kl&aggPeBuE*w_MKA_& zY=n=al1qWl@;;u_LXdRX;|QMA-{47;^H}bbQYa)4WfZzGCEfM{)zn>~pb9t)rwT3| z3$0stfQ5(|=yLej?{!2@NpF$7>|kQ|GoHj~SHZDs=SvE#DAE){QSyoPAs#6JG890) zqC)BGC}WveweW0F@~SXkS${n94>75I#D*eX-|zEXKaIVfyjlL_av%Ny)deyC!HM8* z40GzA57w-Fsx<}-yOO;JjYn0pEuB{3+|?V%m}<<9-c&|*{ZKZxn`)D;&K^`{R#)$| zykNA0r+oxS<`5;N83Z$2K%Oue83_b=2=DMbeQ)s0cz8!|LHqB%DDn@VV+=myyXQMo z%)UtmRv$L)3XCn7;uaMLCZ-p=myRY&^^Nwt*H=Lsy>NYURHS*(8CIlHhyk{T!o)D* zQtOy`DtmyLw5r%@F%>PYcO`ocfJ#V5wq-@(1Fk6uv-0WB#E?l#x(4haTAod2v*Ks` zfim~+Mbls+7W3$!e+9IGmd(NkboFNa;bt!Z`qM(d=E00$SPV@tjYdzN5=&MJDqjg~ z6lF*FU^iZ}VCYu#&w{Y@v?hePozXVr8opW96pt&iXYJj}0?ajEy$*!on|s!>S^{ z%W5v9&E_NI$mTN!V@4EcK9vIO9ykZa$8yfIwiLs0!d2QHzC9`er$V8#h;$mC+0Zyd}>1}qKXUF!tm%QiAvbIc% zd1Kz#MMuBPDE>W8*X~f~GY^nPF(39DGMDY!h^TnM{N2g3&~s$`=p%JT=B$jL^zae_+0G3 zT6E2{MFLwa)omeI1T2fFVADJe$2!XvCkU1l0yd0-uTf>(1#QkuU3N}!#U|PJE zy!Zs>^;+%_*e!`2yW52K+FOO$=HU~!4QzH~vdJ9kYal#)>F@wT4I%TyCsWZmP)GN_ z9d#lPV#0*8wr%qEog?>o>6Tw#i|W+9$Io4ACTsI%(YhXf_3B1;TrYq`%wBi#`?ky` z;B&0rlR8~KP))h++g$%W<>BGI4&J>h(E1a+JQe#KdKvHO-12Wa+Sg8V6Nj zJ}M%mXO}uLNi88u_Hii?LD8pm^v954tub>g&~BH3JM+2VmF zU(!}{ka^Spa}cg?&}Sn-wz;SV+6Kk*b|C)QWD}dUz*I)WUXTw`_<97>25)6w)yG_h z{C^nx#^79{r_b27ZQj_v!HsR(#*LFFwr$(CZS%&qjm>|zc5C0NcdPcpoau9VrbgA( z)4!HD!V%LB-he%pJ$+uJ%(=ERRdWaUMWBH;a)bev!JykOr>I2efm+gA;U&tcux6o` z`fXW1J^gVFt^R z3X|P&{)bYHofGiOT}ms^-RZptqO~TXyAU~fBlA8ude1uP51scKa|e(dH{U$~Px7h_ z`k|}MSzp1Eu1IlK6j`@miUsaqY4Fn6CI}DFV|U4{mEGmwePc{tJn?SzZ5I;6B1`@q z|63iqTJVvvEt@KP^lE%^Fo5?M;se(PZDH3&QZXG(p^29 zUV8k!PrDV5=Dr8&$spX0XVo5P(I(eJRaM0!pOXdH;N3kIo<<&4C}mO~f)WZ*S&IB) z-uW=HjzGq5{`%v(N(o30rFGD*i>qPP>DjF8LWjH)jrjhQ((zkize6jg(WDD_{ z|KW1+1@i&M4y^@QfQzI%=13>{A%CKVnOo?~%N`R5pVM_p3H{Ec@CjVER>L zO@dzJn}Yu;J%(Uqhoe~J(V&+WrK_2bacfdda^qOk(8r1YsH|cx*1IfOlvSk_fETY? z6kg4X(3m`LKAcQsK_j(=JWY@fMVFn*++`dyQ5eHZlgILGiYVXwdxd~@_ldg(+1DLO z-;!3bFLcM;2dHa+s1;T_C8764@`O`QapiIx_lUflkPxl7$Fs^UT6M9994G9G3gR_s zb&*uav2^>hp0>@Cb1k85 z!9~yUWIY27Oky@ShW5Yl7fNi`Zf?qpm2$lQ9<|clsx&`?P%AKcw4vf)CLM_fpHgT8 zOX;hS^3nM_l`RAyk?u4f-Kt~^y5DR{Up8X9l2ivZcOMYqWW{8V615*nsI|b~+P389 z-}@H2gZXCjlL*=7(@OV@sw=?$_LQu8K8D0sE8B2zhF4Zw>pUZQUJqZAeo5fM0#g23 zEgmT+1|J`CnasGO)**{L8o04$xRyLu{6VNsAr0_t+!}+QI$ZQJxQpBP4IYr9&_x4} z&4M>%hH}RVygzG+#$tr%tTSFeE4uX!Y2fm$@ZThTbFlq?rfD;?FfsktH0_OOa<1sr z_t)^h?7!yPW7~m(AnNa!Zw5dJ>_Fc;sji>;M>YSBSoP-E#iEeYkR&2gR+N{NWU=&4 zQWpzj#>f9%IrBRDrZZ)l$WeWq0dt*VKW_AT^>~lT(5n)$Rqmw>&4XMX+op;c}oZri=Q!qmnwXwQ`N~%@*?gyoRGeP$I6U=~2qgQBxHYIEC$S zP|w!D_w(`THDyEY+vfG*w8Z!CM~z&BhR@gQ{lflb38tAtox$s&o?SCh`q#`c&;+BN zU5@pe`|F|a)?Ij@M*>E}$DKg3+%hwkYH`>M2n0k3dYL;Mx;1ZrMWy^m|58V)Qe@NE zgqa0MHT!Ggx*3(y$HS}8PkcLF${6qW!2acH3TR_ZtDlt5;f=vvqAk@Tz5%p0s*uEMC&O!H}U5j3j1ErZ~tKQu9NQe&vU-AI#z^X2T`K zXu-))+OZgJG<5ZGV9kz-g_*>ioJh$i5D=C`x3nG}QlR9*)|8F3g5zh*7K1g{_Ro{E zcy+v|9X_!^06(*UZ}f{*@>hq1o$Y1HBbO(_qtmk$#QHObu3lfeV=3%sOha{Wf=LDk znE-Bz`oohb4CQ|X5zQGuNj1jG>rWO;geT4g>fY=G&F{9e(ZxpdcC1QrYt_ub^?Reh zdfRbG1s7^~mX=PdaWi;i&)7^6&5iAn@p#-CS_(W79zpRB4bPQ7-NRw>S*^W zYWb`PMnkat1W5H3sck1`01 zA1?`_#>PRJYrJI`P&7{c#nqZ<@oKVMkBepb3Psfc0XvF&y#7>9_-^d|PuGN$IZ?gv zatUN?^02-LTTFYM!w0-;>uq5FV?NEEf|HKhA*D%IIL0?gu%nb(aqqsU}I{h>Ij85B*Re;&E z>)lI!BY!K-q+;=MfkCNj=B;YO&A2D)eHx$rDP^PQA2I*ugV{0am_8wMUx@S#F{;-n z*#9O!fK33tomI=NMPG>61QKMce(f@*jnS*N_v*_lTDDNgm3F$_S~a#j0{+5o;Z*Xv+3%ubnOsM zHt=%rN8m@0Ruky~e}4ZZB90iu5xz%wS<$l_q#ll|9qOU85j|hATmUsP2#SrHwTcR| z#y(k@jL_=>mY_hx0_*;ut28HxWrB-zv5F3>tsTZADuMZ(%eH4(Fl257ylx)WK{uZR z`q$QKWi((n-N<$D5=;bjZ2otGlXE1}B(A;&?d-)*7euh8;kO|%U9p|C^`T^4b3_~} z0lm}X@GU=jATxV5GPyEasNn1?ZS2?%s0s(KzbR=!jYx2_o+YY+wFfA0RxT9P(|-kn zFaW?=L@>T!u-LGbdFi>-l%ZKvU?l70qMhMv2aJluFXu8X2m9W0|JrJCu!3F4ESH2# zJe+4*MHvCMq|O7DI)!@8`I57H^JmgFR3`;mvFg(MY1dM8dT!yZjm3CnCX_fj&5fDD zO8keZvka(8v1hIP8*r2en0Dy8~Oa&U0Fg zv$E`tOPw!7I#n?~8WCG;!mh<;D+p>C80X7=K^(y>>@~okgmu+;End?&`xCnuD?8S~ zi_wz%|1J;>oZ`xB8B0ebZcA z1gf(`CeGsn1vlS8I*p>$mtNV(_?2pZS#(S(NdpTL=ur5`%*6t+ZQjoGShI)OWeg5j z8|SnWkrK2;#YcXmS}76Eq#sck3UXWF7=w5Q+GH#j4W!3MA%n@q(!LRq z;b#0&wve$b40sD(yiV}7HfhJ_+<`cNRwM`{h~amqUq08m`v1U+{TW91>&6*0i`X-uGy?; zf|2Y_L4g@GdQ76+0b(=+Esfk`_H_S|wE)%FR-4F#14Q;)X^TJ;wpEyvBJmR*ig7p@87 zSh~g`uo*q(vB8d$u~m#4qRBn0SRG-0oX9BFmU1YKG_N}cQF)lb92!IRsFlECI&WyP)pH*`cLJ(4%7HAj+NBz^)HPUtG0La|g2=-=)=C2ao}CrgybnepM2suU9E` zL9wJ{$R(d~0LOISSYHC>G}=&xD7XyWU1aJ^&_E!=haIK5nsYCaG_ZwPE_->p`zU^4 zZ*;kJY+376@(VA9lFtwL5Co>tM9u~LgOcyN0Hd0;8YaPP5+S^g0}BeX%@*?O|BZ=w zG6As=2NdMMC}^+=D~}ZeMiuD^91cO-6-%}=PDCcxN_M0I!kO|~{8Ww$n9JgiJRa@S zjBK|t1*;g|ZUzCwaTr3J{$9;e z@ey+cDNUYB-q3u;!Y2j_sVlHzPE0p`pc5%8`mJXS)^&1{VWXW#DU8g+ibINa`+JuM zWXc~>H84zGW!suN*K_2xH+qAzA-vdj3N?=;jj7W>-pRx&{+h246)|H1}1|oE>Y{|Cl zc5>ExN*dn$0qJa*(n($?T;V|GY8C2w-?zS>_dULE4+{e+-yZ_sA8!*qAKTw#20Mr3 z`BDOm0^gmB)l*?%PYqVEZ6bv{Xpz>4prJg_1yxW3XH1?=`I5Vh`B6ZoX0S`lzZ=|z z9mn3g))vWkGvbBy>@gvZh3(qaf*AbN0t* zW)>1p(K|+Gfwu?oG%e+sTEr7H-8A0yI58(OY86eBb{ES7O@$z|<@(zh0#*cx5O_h= zL>=N+AQUnWs};~F=PYQ$8$z22?*$5MSnt{q@cl78aB`>h=uBUqK7)KZ3`R`Pq1yAIUg3KH5g zoVZUx0xWC=DI{znJdOH4zV6 zM$7s@b-P*FR-|)LT-d4}s`j3*ZU)*;dku>=CO8N00*HHtPZsT2r`c+6uPPtih|yFw zpR%X`mf$BL^v)R2zI5S)mbYHn6!@k?elP<}X(I0FjxMan)dsR|(PKg74v)11wgfzr z5pp@FE50yQk#HUV6FMGnYHXedJDBGc4Zfciq59HwM&`wIA=!rFzs6Z-sa?S)h~Iw| zuDai3cJ8Qz_fZiVO4pK_!|6AS*WQ!)uTQr5(s2lSp&`iwFK^jgrAI?fR}vcsMvvgPiW z#285128=F_a>FB_C`~nKb4ie|6ql?9A#oCpJfZRYSQ6G&=)#4S(GWWiT}WJz=F$(O zR7I;AY}-gEl<2SBbRY^(aSIcO#7^moBPc>tpWr+U&}d8@tVDdjMaGykjs;L64KFM6 zN&1AJz%Qe=z^2Bqrm%@MCAXpZ#95f&0DYVXt3Q?Y0P=^c$aF*TT$Eg{{*&`tf>@3h zP?E3avOmj_cgvmQbw=v-o$1*|;_{Mw!cDl)#cq{vZc}x%NLfZDM44p^@0Zwo-Vof+ zB{NNw(2s17#`)bIS+0w>i>Qg*{GKFABc0RkXRK#y3R%f~5#>rc$6795v7MFEqI{ke z_ZidoXOU|x{W$MWgLTtK+(VVuA=#13&oVO_=RDG8EstGP8us2DPugwW6v4imthFrh$}{g^{A_9 zOXiqsGh$iNC5HT;)XQf1w)9I~?0W7E_`*AZ4Vj|5-y2!%#)-`va);T?T8f9I&F{{m zrZyZka?V#xPmE`m^J=m)9?T3sAY_v>1&2V-(KmOYVOit@{}zofV&D-Pb18M)f=(nQRG_!oHZlxg zg41{ho08}#DB19gKATWidhq@g-%RM0*!Z~0ZDnVXi2CJ&WG07g>pPohOt1f^b2 z1%2fuRFO>nsO6?MKk!%^FIruq7C-e!LPn{>*iuqsH7HTsA(mS>XeIr8;4Xvur$J3Q z!TLjZ!I77_h|5mz-mh`7lLX(g`b@;?E8!0fds36R&sD{8CgaN-PociTHCbQNmVFS3 zhZaV8)8+eC@9&K2)u#X*Vt+Y8uJ>)E`DeGIfNyxGCq#%G?f|o`t5fcyxWopg;(%>J z*mneN84G@}*ed?Q+DbZwYQN^h;H}=Lj;;}6rS2S;0d~Y*gQMh_yS^Z?e6jMWGIOY- zMK4{4$`1RI1K?RQ#GWMH5C4PR=lGBkS|&R%M7_+pw};0iv#J@3?aqxe!DnYHHDJ+c zZ(ky}7m>CB!clzP1B7N{Aq{AryAF|5AbIcM(l`G-9Rvp~S! z^xEw;06LYABNV>7Jl+}L8DLD6?Ir_Pir^u`VkkgC?QH;?r)SqrPOa`U_Ye5>Hben< zLZy@v@?u~`%1^#prAhUK!7B(Y^ssn&G(erfIm$HD@zDz4_i}?iMTB9HAKMr>z?4U9 zGl*bOrXlLFD7`eYd_mcutW6U!cd?mLg{^l}@GRb!za<8+>e_%2eaNO$w(@-b7X+Bh zGK7pI1}ALk<=6z7?skE_`KplQ>`mhQGR`4XK4A@NB-BHnL8LKWPm|B^_K4?|k({os zC0oMC6!MQ!(A+K>j42T$p2(|l4)kdu5vUG1x=x_-oQ$-1ist4VH-f%KcuG~#=c?Xg zF8gL01Gmp1j|D@vv2_um0GA}wFr@nJm<(Ghvf}D5CQWh--K#*yhWS>zG8nLo zChS`!5U_vJyeYe)PYyHP$iit4f^BJUOH*_*0mcX+@B)-e^$^L<^2v z=-dTR1_cKeuLY@uOjo-c;RjMd0+o!0(LMGH-2i-zU%{5QFl~`g&o<9TW;jH%uNPC$ zewEd;GVj8FNo!oL612W)D9Ds9whS3=Hbq$DrvwJ-y@;Nbecc~806HLyOQcr(m!?1A zjkG*d43sDog&10%HqnHS16OiRCQ`YUqvUS>J8f8q4_2EQ)ftx~g^>-l6*YE@ySmFv z)Z$AVnPimspJrt!Mvb(?eOc`3ZRy2Y)S3f#l<~jV-quqg z%zuWe>oKNQyq7#6p?n@>k$KPfmYAyDa%RP@=Y{*4Gq&kLUtyV%6#Yk2t=n=M;R4-4 zbme+d-Pqulv%{4dByKHQKb0-tqU$%kB40qsU}*kngA6;p*jTcrDHfeseWr2Flek99 zZiLR0e9p6!j2@9(A-GmL zYtyEUMmrkLkX#|DFfT}%MZZ)+H3!g2q+|NQCG5gcHKm4_s>Fx1EUkxvY~r&tHZ)n) ze$1Y)AG62%$Lx9jF?+V$g)zHCf_!Wkd)`&s;x&%KfGbS12E_Y{1r&8R5Gz4vx-L^%_b@j}($??*lxuYW=oK1pf9>6A6f^Uhl zVOug+v9&Rll>+|aKNjhxdmyQB_pM(2subQn2-E<$p#b1j`2 zS33>HAifQ7GcJ?vqyCnN**DeI2Axze+P0fdOY+nxZCj;(eX=l~K4`Uu;~z?ScLmP@s|O3h zl)u#wN*;yA-QA-inWr9O`|+#QgS`+?y$BVn8y&8g2-}~7-;jt<|w3U z9J7@~^lTFnA?a<(E}%ofKjKmKBOc4`?Lyl?T|Wbr;=f$G(rBBm`#=Vd5SY((U7wag ztm_0U3uAgFSsSp0!rSYVx-ViTAIPw|Pl&C?9*gzw7__j3Ad+HDD)^?s;=q*b4qPu{ zIbHA2IEvfm1(Utwv_^i0D`%=(7sRQw7qBMfQ&;ktDJQ4&hs=IeyMuDN$lpI6e_#DH{2{|U! zSL%9Tn)JK-B%g6~ynVo2vy^6gpQ0dB?=PZwl`h?npZ6T*Mkmu=u` zZL4%XTAjYJ7~WuY#2%D!QPC!|`|I7(R%vy*du;Gsz2&F`$t`G{;2DWA9Zb4{PUX6VN@Qr(AJxDK5XYsC3WQJxesId zvwMsT&c8eQv%e$_Im_7u(I{$NroxO>|G`pCu;T3Sj%rmcX8gyi~sH zjWUm&`F!0r?*r0Jr?{S4Za9I;+cFgjb}1u0H?FZAU#{~?4c^(9>_HReO*z|x=)AZ# z3%n_BIgc9ld4=a210^2^4>u)=l39u)JPo4OlVZ+u@RJVY4>PZO;BiA&&}pHESK%@|ZJL=x`F45SA?04S)63&yR{!Ar45Rr0 zIANiln+8)*EHa+I*8egom;ii-PSHWE>v|Fd4YN?Ua*9^22YsR@1D~Di6$4Rg<#G2+ zXR?g1SJ_2DvbLGsY$5t&rU~=dW_mWVNWKrlruYmuLnk(2W^I3?YQuFBnFX7VorliU z@^Y9@#7<~!Q}~dQRFy@5YmCmc+=&Tl%N>5}DDh^hoAUnLRm+hkgd`_s6;0@Dh)XG> zbR6`d*TBDs33$K0Ez$DumzGzRfXz+_x={AmZL=7`dZc0NEynU4FG+n6C7L|j0dgXp z&}IfBff68YhzcFcQ`H8+TC4oB96m1BIM5NyC?GcVd_q_JAMvI*@~X+tbhD5PMtgfK9==^WhoD~cGqZX_ktg%mBl)IQ(wQF z=GKY3ue0t#%83`NDO5y8E7!n6bP%w;!>;QSieV|Z;=N{j(uAqzo0h$={^ob{33}65 zxk5iJh8ot;KFLV85^YX^ZPE9oACtP67ON4qd2ai!@svB{(8lR-aITbZ`xqWi7I)_y zc0`_S{|3DGvs0#5ErN!HJ}}>Byj?lOmY}Zj{f$_&UEImh{aB`GT8i}MUo)u_{T=#f zY3b|LI4~eF0Q<<46K8JzwN+2+oO#X+)Jk&3g?3Ei|C_>@ zN>&}Q872l{NJFZY#JHWvRtFHqc_#e$?eU9Exewd{6}2*urj-i81mONtAa0Y~P9L*I zM_rkQ!4lE*_A%zeD}eUL5n-0F(@PiYje1u|2v~waviv~Q9dzf1@Mx6g4 z=@Qh{8aIs9r73xQRv~>-W8wBVQK-4I78558ezOi1=4@VBWV4Xp(otI!anH#LiwL51 zeEk#oFHK0(vN(=_&GWI2jdYw2y=UBz)#%yeoSx`qPD}KrltX2tb<0~Aw@WH0*hZj7 z3#13FVP^`5MBqq*los0y2W-dG_N+|J`)zsdA>wprVb8$!4Q*E0q_xL!jaA?94Qig% zTA%%eRm=%Tor}<`c()ZB<&y(;R-Ym8k8rVLN&hyD zB5w44pQO8Z?SMgK(Ou!p*{WFeHP!*i!9Ko}w>UfCAp+=UA9*&sqy3UvrN$vOmDXa> z8c@6F=B)cqRUMXhSt~}5kEVq{?S;NY_oh17eXb|q83k&&omd?nTL}~b5k-5sSgiK4 zNcoZMBtur{5xzvH=u>Cd0E z#gB7G_s6*t%KT@lwjOJ0-FwXg6$wA-e%ByP_yF$Ug#P_sww4Kd5{*Sw;HV6 z<5x?zb+GP((RKY|a-ljvn4pA7)iWc8Ri@-9c;tAZ>xft}N^z`LUg4&uC0$Ca*$#wU zZd$OzlrVOpHQ=^F6ckLFA_Pwd7zBcuNGV#waV!a;)VMtYmJn~6qA=YfIRA81%Tf)~ zkPJIhKYD9%|2pcKU>5xsAB2R99$=y`90gccsJbiWN0JE*}1+d>?LwK%6)pKzQFBv{%YaIXhPt$H{0;F-jx-1{=^G@4#FzEpD3Gz_B@E7DASi?+_7xYp{ zwHzC2DU6FUYk0PEF)g16@;6>%Ne=X|AqjQggIFVNEscCU3VdED)*9yAf`PjWHyTz% zY4v2dBqCBJx7?qSk&E+@3uF3mfqJN9K5~cK?*)mr53iz}sUtxffQ4z;vP|q9#ejV? z7tZ^jH7fiD2mpN{Ow+=CYG}a-Qzq=Vv(8u=svu81Nb?=OxrhnU)0{(2 zp8pIS{E=%(_NyvAEFA@_+9RJr7Ribf3pk)(VfuTQ(Be zQ&&OUzo*pLLc2lPmUe?}dICLaToLS>$0(IwyXj`GXP{l*E@wS8EyX1PaueH|dM7?_ zLy&w=VwLZhFH?w^14#fb1~iq1>`|k&$G^$^pev|h*Kp{W9&+N0R&R0D6Zcfdi$<$6 zU6m^f@*ZRP3)q9_(o9BRTz#0Lu!tb zL_NH0q3sO#R6Y#X=mIH-=mOO}h7OA#+QrBhL_HnS33XaiGlyA6$Mwq}o!D#wuNCtj zmV}!3=LHs1az{l;cp84HA#a*Zdt~Z!Fv+=cR)+Wsnr5i^=Ko|%F@stQ&W=gwJ!d~k zM=w6_4M{f57F`WeMe40-v;Ya0P&wg}P zq!V%qSo-X2s@{W&n}mi7uMDc0Au0>l2P@q-v0g}z?W{O9ut260u68bbK>b`4O7$O> z&OIs7I}Zdo5u+#%6;tM;S=cUFR6mB_R2wb6M!vVxf~=+nRk$V@8^u{zn&LCm0|=a& z#NOAEVidZ#hY(o|W0q ze2sP{;SXpL4F#-;MQA0V_!yU3{$x=Eu8py}g|njw*tl%n-n3JN(EAD?Ry>!yk{|Rn zB%$ml17f&|!J4><2uNYmsXLe(le0Z}FIy`0_ zGj5Ey>A$o7<(7hZZo6CC?&o8qySbE`IAKOw9UntrQ>VY0Kdc^n$;LphV{}7DXTpqx z;)~_r?`%R1=G-i{CM5APe|vE3AN2-_iZk0>%OE&8Y;_ymixa{4^w*94l4lfuqHb4U zEP;a8OMEQe+^G{u7Up&J;Of_96z5!=aJY^e>LZQ7jiI~Zt8aZCeVS|3Ww@WGDWwyn zt@wKqk6vm1s5V>jco1z-r2wnYxED1}9^sinN6>0~+e;pCz~tOIH+kDj83Dbb^I`uOi39^VcEKDk7*0;Kh?+sH&K+0Ll zqQ&rB_R>bI(?(oBjT@r;%iP9V%oiBUvPCdBPa>E1J`g#_Q^t1NPat&MF^cc^jFE1BzTJOMjD7i=J* zMUW9~(&ggX+%0+8pczb$s2(t6Fx1@bGSx{pT6g%zn)Q#tTyjeT7l9t}=CXKm!gXQY zBem^Q8w@x-ZLR3UVa|vB@+?|Kfc*)o)6~DkeN4!*n*Elxc*Z6Af%KCuT3OtsbHrkk zR7-7eE#*z%ii1rPZyhC~)#5rU%Q!bqaczir2rU;^3a*}lA+KJ!A`6JPU`?|Wf~M&$ z$dyj&`$b+l*!j(^mFnl9+&|Yj0GX~C?)4=fG>}sp+Qh`mPur-^ajh*)qY=&*`;xO$ zWsB_c=x1>{S@iV|^m_}=uj^MKYSAGtp@k;>mHgv9yB(%ZdC^lce`I>LRGLr)sdF{h z5$*8`uU5AzyE9(18QD(peJ)?LqMGM++8dsl=MgpJ%x=i`g~}F|Zjm}4^RqV>(q4Dg zDqoL;=bFSk+y^n0;H%G|qh`x}c^z9-N>C>6(OJ@G?~|60d<4@6-RnZ1td!pi24mT&8AUU39d&3Yr^{had4UB=Je0K< zs#p1oU~hp{>12(rWoap{qJAe@Na{7e|HO;?H<`nJUZ(zesy?nz;M0S@@Gg?@p08u) z4VaGEwRjLLcd5!&N`P{;Pi?I6SATzEM19!@i<3{_OR>ui=d^B%b~ch zb8F7ob!Yx=r+>P^_A!0QoOD|Mj=YjXeKG!W1|}u>m%%Iy10-reVM+X3sPVxzik*=zdi^By(_5N}^06|IMsf+> z+*)v(<&t*gqw?WGZ1~58DehH^S(}7SoUK~rhueZ#O@@_TR3Li9U`(*AStEq!`)nn0 ztNtMw5YCF!>IfnNx0s5MIgJckOVoC)A-$d!&iznTYq9z~4aC44rXqos5XFQ6Yq3D2 zgcqP5i&Ug;yIa<)ru_C727+=TBdzfLKT{^&t7>mSxdM&t;vwGJHdN2A4I%pN;`aq2 zb-V)KmPfCdMgL=-@vUs$`{UAdW7K*^&izIL&#V5S6vF6ALdB1lM1y#Vfa4<7tR76r z!QBm8H;U+vwHpwlpkehM9g{bqxi{IQ(~fwzGG=ePEt-Yva^>sdbt}1?@|Z8W**3YI zM&_=0y`C=S&tDVw;}1qn#n*~yx?JAAt$%j#z{__&LUF=qQ^A|AVNGQgfIJpPLRzA4 z=Vrc4AMfT=cV!WRTfMI?rbtr?>!rkP?^@lpTzhs*Gt%+WEw{6E@Z2i zF9eaItl-rR3f(+0E zg1i&akt|HWU<>|ULI-^sd)sIta-Pl_?4tgZ)Ukg`-cQq z@(}QHcOml&oJ_pyH{P=~X54!Iu6P3KDpj)An9$Bcp-uND|9)4VeL^q!Y29_ zTP?Dn)J_w2Gs&Mzb<;fUN#5}{^U%Wew)CDi3oqJI!K|%|$L6ZqeqSWX&H79>dXwKj zbmi_;Cg&FG`s4Ku%neIHc)A?lJqj?J)zl>@oKtY@&m0g--OjlQTd<2DEN|tq+-;iiAyAvXV2jxKsDl z(hG*gT2@J}TB|DvTZrVu>!KGYWp0G#AMA>CQ4Qh`nt<5c#Rjlg0nmnTCxu#Bgj)6- zYuzasP^}pmP@RA7!umhk&)lAr0WyP@%biTd#&OjuI5vju`auDLJpmdXj+$kqb7O_G zwk_9a6Umg3ffg+Ww@T5dfs`Co!`y?2q2NwS8uq!a^FmUn^Tk=i>xMq#Y!Qy$HIMdH zCgt}y@!_dQ?OaboJusEXTG^g*mbu5c)h#TOG@VJ39LND@f8mLbzkL55Uqd8ko z<|}Qsr~0I_pEU9e*eGe&6>g4SsUbbSFfsSa7Mp8KhgOD|8om7-)v)75;6YP_(Si)m1=Nf&(CBji0tM`HMr2uWOToZ&R3jQXSadY!D`ss;(m$ z_<4o7_e--lG4itsuC@YExYouS32<3s;`gr!j_4t9s!1Bz6jc1@kgI}7FNpUyBAX-7 z`~KY~x)UrnFaqrf{Gol>fh_C_g(|zX0Z%UN(vpc4=Hv(eBQS2?@VEQ@uzcrO7_VLW z3k-0tHC4wVVV>3Vq1sAhhz^m7|arAr;v=h?wb^P&KII-aiw;WX*Z-(AJz z1I_Q;k))h!Oo@NZ&R|C54@`%msv1H{F4aE&RBlPq@v`KN^db4~Xz9suGYord44bn+ z+i2Jw#})o2ZnBBQI^YNe4tAE`20xc0;7F#bIlPFT7n; zm7_vAC*S$d=(U@CS76b?mLN8(Gvxh9sTsZQC;I;I=^JSKuVcr5lVHHf_5Yb*@QZ`} z*MCVc(9wt?8gL9R>mc`k)d_2={{3I}=gQ2V3A_5M$FTuubH`#H@&& zcTs+tz18HOMb)eb`6n)iN>Z~*>drSpWAZLULN98a98J#R!) zh&BohoiIVaV3|PQ6U9z3ItYYSM6@O;$-gEoi7aXw<{NQ1LQRBjY2O#FI;t0z$>{5T zlsD014-1f^vx{r|hzcIc;>kKkO^2N>OAf-2DW#XfL`G6SXwxSMo5kZ&6v5DBt@}__ z5Abtkn?7(%3lMfD&? zbEzv${aCHhm!`s@D5v_JG0Ui8q*UxKEz=S(!%E=)io5Yw#%KTJG+0-eg|L)i+>yR-;Ak2c>A~RVaMR6?k@csys5!0$b3pIWru~w2& zvWmT4*OSqg(kcwYDr^no!mzK3DfT3$$yg23NR#e`&F?u{>J5EWQlmG?FMrlPYU{RU z|Ev^lT2VVo=!;Db>6$mC5WVllZW4#@zF$+aVxU&tYDEI=pk=Ib8R)x0Zwxz7)V%Kw zs6YKz?m}UsFck6fHgnwQZKNZSwE1ssCbuGXp+Unx3{TZaMQrs^2?mJ_N&vR}2Id`R zR!LjY-w)x?iT2<`YN_(8qSTfCy`z4xTGT^HP+1s2rj~#{K_$O)I zudZTvqx^!c3KEb{Hx?kJK@Wvu+!Px2YXYGDssT=CvRzav67-!wBl^1{2rc2Et(hdg z5uy|C;2n5W05HMvdMBFPeERJ~R=}%h=B!Zo=Is}6Z znyV~GAu2(wg#R*BO+nF2l4cxV6jT*l2VIC|R6aVLOb)@XKdLOG7l{-q8DxEfF+%Ec zLahXo>NJU(uUrc9ju(I}j>aOhL+q(21=T$pS-Z)Sx~pJXE+{(_3*mLT4>0uCsJ}aI z0MrT3{!)d)AAaKIiCn63!`gUXGq5I<3#s!sz#mpca5&T}V`wRSP@ojG#YQCFGF~vYVkLDmO^^PqQO~CpWjH ze*@@4Z5lp`zM|-?XNi(67}V$KS?JS&aFK9@)uZGJh3FRW+NNUDT;UBhE+c7yTJ2*k zrbTPq>CY@8QZtlO$14;5(0loM5#VI1U_5O$bq2{UDp z1DeqyoZNXav%C%KP$IGQaFw*KNo;*&RLoGY<^~o+ZNAn91-40I23XUlYX48~y3?R1 z7#aUWP=)ehZ5buW!}#<&n(d_|ZLT(U+(Z`Z2C;V;ww}fq8>P9@vhu9QhDzmSG&p)I z7=8vTOM^(Oy_z0v{XQrM2UmyK-4LfVG;dO1rvwWmY0`E1(5*l*?J;rJegHMibZhbF z8>~?%lmW1<6erYT~qnU4M$eL=X)1oP;)hgceu;40b z0_`8}-!89l@w2{v!%y3r&+~`>DDx#@=hjF1qwgujy7@&gB`kuc1j=***zKN7=aNdj! ze71`xZQ9O<2sbZl=~iLhl?X$iDw@j}QpqsKr6aF?b8{5ACTZBZTDjDt1koXG3WskFI#ZGnQlk{`1a)JDut`&c!)0NN`-!3yW006}`YvHsirbUA z7CJKOWUXnw-=L;!uBZD*;o@7_WuO=+bs6KEU#PV(m2A}mo$!Z6TI9V!&U zNhd$;0B04GvmPQvvcX=@59eKSF)!NZX)iR3GOpfM-d7(RV~VI737l6xrnC5kXb|6j z&v#z2RKpg{OfqzG2S|B|sg}~Vo+PtD{%KD9x3|PWJ6z%5xey+w69JBDmF(R?jTI)M z5zE=E9GOi0>uOjaa8AGr=L0m_XKvY`qkJps%U{f<_kq#g^#Hs=wvh>Mr`7@Q%aAkr zRX6G{TcsskUrd27mI}DR{sBSgqQ25omiQ%SGRJ*VPq95b@Rh&5Y+f%>!%$nN`hXUa zy=57OvY$nWy{%Bxyt7U{;%vgVaip-EGgLOe#f@_T?aE=!o;h&i$aYMnA3=0XlxpHr zaOtm>VQ7}rPMeC$Ih5Nn33g4)Ouq2TOn5|RlTgZKLqS`agCP-goxclBtE^XzV(mv< z93uQxDT@iMN6oY9YWk7H4uKbtRa536pRu={HG^b?j;_$2zft*k#9`rb$tkSI;CsL$B8XU^ERZCht- z+qP}nwr$(CZQc17Z}H-8?jozRx+5woqN5_SvcAg9yn|**9e4eU)c5D4)VDWUi=agF zFyp8?zU3z!Ddwzg$CISjF^) z=pIRyZ$^A*>Q?G-hIJt86}ZzH!gDQQ=b0$_ILwb8@W>_j@G3&9{cF)HNmkgx9ilT3 zk~`nkDC1*%NVW^C$K~Ft_9cIaT?Jf@xhz}+%c-4~g&?jYIy;~PFXr=Im*T<8O5UVA zK26Ne6?Q{QGsp2KdGwm*>YA$!u~V_To->G){sbUaPT!)%$Yi6%$YoW>UTT{AQEJ*C z3j^8DNmYt<->@PBvtGS;o05$@mBU^8cJO&xK-3Z=7*>)AY_cIhb%h=#$8Q>0{MA8k zVxlGHV(kv&;yWIp%}8dphKDIBgOL;Dm(<~J{fmsW@oZs;Kyh~2)(PsvXt8X?=P)Wg z?RrcPZ9Qj*_PuKkN3@2BIiRv=F}Su4s;SKLO(vuYxW&usZ3U>}cV%J@o;`d9l$%Uq z>TUH4--&U>r9zbglycTmdWscYDL_Gx0^YN)yfGpzH)?eXD1l z^X$IN+nMd*P6D^9JfDcrSvElWa&zpX)ad0%Lh^#)sb98F^&>)sq)5R;iF z`E9{b&58rth-HH@2A{+iDVCf~Esx?8#jqWeW+k@Fa$-wsTyRH~m!?ai243sdZ zE>0Hj%~v|G+5euPLuV9Yq~2gZ4lXKp)({GRVVnm}(Wt_=EPE>&IT0sFN&xQ@aIUEe z?B;D@BBnu6zv_-A0JgY@tOIP@$P#d_MYz<($s(f6sOemL8!#Z$ihDwrIr(?tu#)(6 z-mnu()P32Y4{4H56+O)@kWT2_f z9f^d_)hC0ln1q0CLKi0^0R=UT=Z9i0L_lwQ+q6%Sq;q?a6sJk;6iq&&2Z)T6K6)(D18&VkQvzo`eIYv?ZpzaK=PWH;!QC_2NxftU*S~9Pg=;fk9>C^iB`lOO~F@QG`>{DLd&27%s@1r05}sE)BW{f7SJn* zhXjk0fXk+>Ox#J7e9d8^3znVCynlc7czWhENQAMT%zHhS@yR6}Y0tHOo;`y)1WieXolT+dA9e&5 zkY(#Cu%=TH1M?)TtMe)wraEWGf(9ocjjoSXR>nMgGe#2%PS%GC2X97{hCmj@X2|-f z>yS7jt^le4&4dYs0GL|r{=u`*<<@ez1u}DBuV6mo&0+AG$hZfla-0|Q)-1NmYk2$- zS`m52ehbb4sErM4kCdrSD6^$lSe*B1xF@oWJJ6Mm^hBPxO1Nj+iRqDrEUy=)2odMJ z@{G2BtU$^w60qi0qN>=K60`Op<`Qwt5C;7c)gcqUGfFqnnO3F3ylx#?H|gRpP&;Em zA&#K!E}u}tCa2%JolysHo^g{VZw&FHQEOf#1c$c+{&|`whxVQ!DVs~N4(4LcTj+zw z584PMYnKP~jiEp%!F0&IWdDSmJ>si!{SLsG2~%lP<2(rUU!*eW^j}c}Gc%}V$oPjS zFKOAZ*bU3^v8321_XC@O6MjCZRvt!6HWwEZa^C>65Lf1wRuTWyXMkEkpv0Z0Qxg!^ z1nWv(La+oh5laY%Q?rOR{N6mXjP}?Io@x#p5rY^^ro$xfQ|E_cSIyz&w}zG{?$ebP zkHZu$6PVT7yF5Dh@hy zn2@HCN}_~IJWWk*SW&N!W%Zv}nGinXr!0LeQdVQ4>@7Ac3aCnuP~Ff?RH@K&d9wMG zZz!~tpCTEuV!jDiTD-K(uV{Fcmol8WR0)n+n#(9jDSJkNrk@ zYjpF2Saox9R(MXbI7?l-n0- zp071R9S+uPGt$MIzqKL#64!`zWI!24+`1*0q62A%-%Q{7z7lH27CI-SiJ%kmH0Tvs zX4F%pO~uHO(sZlYtle~p)i$B%3-uDbGZx^2eWfPM(wb7heiXSBW#7X%CrMHw%#dMm zvaV+mXhL<+ac0@|U!U-fS>lSMITRI#!i?)=$(K4zcJ5?zn5Eo~t;NkUR27H1bp4@g z>&7Ona<7&AifDXE6;F|57oPh9raU*aBKj#P@-2mL2{XM1OKtTGASI0|t)ls#W2Ge~ zvuRanvZLaqNefu*soCR~3oY+e`Q0=m`o5~p5r#d|V9NQo&PluGQ^)!NW!DXi?yOmn z7<=yg+l%z(lT;2^s7~!hJrvniB~%^u*U1;5;>2}kO{2FXRX2xzZDGS2$(Jq5ZhM*a z{-w24vgL^U?7z((&iRx<-k-BKXJ$+*sIv7C6pbN@ut(MJM3iuEMCxv%CY6$~2>`#& zNB1~iJ&ZJ{=zSz#p}VK=7>wAEnsa!Rzm}(y-zBo3sEMaEKTl`xBC1-r(;PtYR!;9= z=jk61I0IAlkUv){pd=@qf^xZx!NS#7AmZQ+JgVcy!v>6E^i<0s!44L}Qk270tY%)w zl&8u!sVY@QIG_vR>Q_L`+381cpx5B%$ zXxa>Eh+xXhB(Z#^HmL=jN0~Y21UXiQbEk1cnt$`WM$0yohB6Mv<%Na@4#&fWrY{fI z=R}B;4#x?^h+Bz#j^UPr1w7g;9er!4=ED^%*2$D@91DD#Jg}6j4rVpBL_5>|B(Y|c zDWtWgsbuYBkf$Cgm{_l2R6o4x!Ogq;f)>`b%ez`9m|6Lc9?=2O>*(1)Ub?g%96dI! z98Y_TQ?w58g_(w}&hg7o`hU--mMYk!kO-M_By0d^>!lpsX5aUDB~SY z)Er5r(TdZ4vgXiHn$cHb{@P^BrQDW0g1hx!m-qv}_{tL=Z>as5U#jDo-`?XYotPOPC#1lrWN5TV&@nDj#Jb3NTfe4y`Sf|Br23T zt6fe48Z=8zWMjl{74NxJr-^6`+90d)L=KolB@ zI_OQV+vsh~syhBHMOg`?Jiu9~=UigKv^{GeqI=f@x;7t^CUlmv*!r6=`5A;GPZ((6 zzZDz40^`JW77v-mm2?o&-hjx(pERO_fNn$ViXymD9KSU70#D4r@odCfy2(LF`J!Nt z-Vw5(zX?a$o*Rcd3b*-M zq8ZwI?pzT;|019xZhiij8edziY$P`mL+wFZkf=F{MaVunqck7wny7 zv4Wp>DmR~ApL$<57BL37$yDyaF3Fl)%$Luk0Zq@%jC*1G7<6V? zZPi!1WyF=k;eF|4mZHnFw1%_J{fmyYfKHgq4e!=oc+Mf@@J#?E`F0!BV%d}+kjX0I z!xu67jS?n_de+4zxm(73i>CZZ+B4Fz3}Yi8pv~uz%5`)gE+)iH6VmFp*tDFn^SlY1 z*I2K~%=@%i4wLCh)H&YUH2+tDH|#6MS8qtvEAJpYp$^aa36aVG0`E`%<6*`?s}52G zkx|5yn*|{RZ!fL%iOPD~D=)%`I+!TD=EdWbC*GG}Th zom{hrz+G;jJtY3|_Pr6uGUkHJv6t!OM$}un+Y7G3y>q;q&<TRfcjlddw(0$ukp$-fhVs*mzVS>}s&piH^s7^H9 z?tQ(fxALNuzVo!5A36-}1hID994rv2dcO0t+OLcp5T!cjosZi(M|&QUWpbrXSvM|b zY6-*`|CnwZzTh6?1wH6cR(_{Tsw`F%;H0Bh;OQ_TOW)UVG{NC;VFUWFrYMYjvq2f@ zi1z$BM)#GoxPcFS`*&jv;-k&t=wb(6y-qzzj^n)drQI0_FW2MR9>a7=aS1T5m|Mra z?zFjLOZpt1K&dTy{89Vj(uF@=?TF-!r`2`?LaN%1TV6d`&1RMU2uUc#xz2~Mwzi=X{pu2(=)`=-~A8%tXqRJ9u!vtPus@JSmo;c(;rVzzx`|Rq6PV& zz2Q$X6^{Nq!cO-7l7=wYg2SmXq43|gMAO`2udURENslc$^D#wKGuCX8t&B(`9faFV zAlzCg2VWm2gbc44>vywgvpKcgIj5hN`Tw464LUY>NVaeS@Qhbl9!>A}1wnnBM;aV&)^`38nt;Dt`ji63t+nC!M$6F>BfEnV&AQZ=dnULEtr@8 z@)!b#&6wgHw9>WBg&b>6E%MM|oiM*q9({RHPhkfI1f%NyDG8P_o&DK~(&~;c@?Y!R zQjK4+LAG9ha7$!xBb6p76o*ouMAHF3@mu!*q98bf$JBJeO>57tad*zSt%{F~MhbBk zS+qmnGZ+xJLCkI?zhp}@@x9H$&UvH!V$I)}i=MPdtM{YCNPDkwVlw2gF-C?+cT#SM zND){4=n|-`IZnU1>=sIOnp)H92(+-BjgD7Z`BaH36?{Pflg}-|o#Ks#Y1zzQKq%jk z%90Y}f2pco{+9S*IkUM26fHh?QsrzhnKA4{`D$^uHDg)6)5U-NO#h-}U!K$OINUXE zNen)~BnIB$rS#OK{5n*Tla~x7(ScFhRN4S${})%(J)a>)%H7j;uX1Ae&&8!Ar;L4j zs14~n<~3G%PxFZ2K1(em;Q|XPbW8b|E=^Rvb_sf!KWiBV;Zj7VBBlc1$dc^%O&g?-8ZHO=D-^Dx}tGm%}I2Yel3z$ zYk-&;!%9hQ%uMwwIzV)S*S400$h5)y_9U)Pwy-x_`AO6VyGJflB>cl+Yw-P-#K%R$ z0Zug-Y0RJKYAEz4-pw}VK;r`1J56ogZexL8WTAYar_0U8h05;6b@%U>P&(Mk|4XvfJCMYIIpE_z#rTE_I(6pl z4U?XiMGlYT+QaqsU&sLWp(|;0EQw+PB-E=FR8BmnUCja(=h2?M&GU2fSnaT_hu!?! zG)Y_foXE=M0BDVq!{i}@PwKHZDQb=}qd<7F2G*N+tn-{3d-B5&IKDK^iG_=&##jd9 zh>fuUVgqIEnkqGki$MtGsC=Xe3yh_`{Z51s=}Rh_t=K1YE;mw@bc4nFybx0bkil18 zzh{;1mE-MY6v`8RE9VE@@=m7D?C~Lx4r@+>xL2IhhxCc*C!q~TNJdcv>>UdS?6xDU zXb4+P^TCG0bcU77#m2(SVs^l_tdPN0nOD_GZb9EWwxgI@P5|uK&40~RPJpq#+vUF= zJFNIEUa+abi<8_m=L7cBSlu6NCM1^`e#W^wmFH)6Q<8u~^TFtw$Z0q=mTkH!F2}Xh z(Z+kC;(b=d34=^&CMn6crePAn?hm!V30^z(Ls~Rt2Fyv>g$m39h&Kq2C6utMQ<5Yw3KW<8J=H?VzJB52H(>dP3^Rf^u2T|>VukQlvORk0A|j@5 z$|aY)H-`@zN6PZ0;-xZWDdw7`x+f({YpnQrJ7!mI9L$WzLGsN-MX5S%*%6XFju?kL zmI^$t48|w9sj-o~g1dJ=8P*@EqmVvc&!v~N5F5kyGne8K8?R`QXtT$Nx0RX@E9fJ7 zOt&${EQ~i>>;fH22MIh6V5Ty#>6aMa`Z579VJ90dz;=5;!8g3`uE}(2vz9tW*1a!Y?SlA z*!Ei@Zn|kY0ycuy^7mb})gf~?8|w{E?NriYjN9VrhD}!UkAfM~;~4iO?ir`s5BnQg z3Te$`TrTdwwyQ{0Yek|P0Yt8o9WhBRrqScU&iE)Z<$Jy$-_SWvr{i5XR#mPK$A7D@ zGytkk_iu0Gcp*~Ms(Ad>5s&oUc?7;YzytAFfG=Rzqc2P;|%5NxF*Q+WYfY6etYiC1c$fD zMFM69RFjE_o40JR5JI4nZgq(PuFJ;|#^-vp;Mhxb!t%{-hJ~p@nKEM;>^p&|1fLKa zN?p#%iw8$0Yky0IkDI{Lr_6k^b(IqqF0~?S{04rGsywzTOjQN|=ekb1L=R1xme>l^ z$A;xvmDmyUbiIe#z>Vy3U9tUE5C9L8nEu|z2ed7MpypLd3uVg>{#A%pdDI~1qbyf0 zS}I$jV3if7&46sqHaD^ooDZ)OsUhVzNX({*DsVR^KfX|3JuE!2NHED-kD)PjMJrRM z!4$xNs=)7uf6_OG&YlAAfz@fj%QMf^VX>sY2eM7F0XseRJRz|0%i0gcvrT60+7tJ5 zImD>ysD5h)wG`_u5&Ur=#mHVDp3Wn)f019*E=`V>Qwqgn4u=%nGt<#>Kjbec^%ea* zof*P;sK(ve^84h>xb(y<)w9Nwk>N(9a;4)6r?4l&nzM}^twKP%IpRfM1(X`Dl@&}x z971&vp;0arV9_Q(sZadMYmPG{6n$kmPBh~g<-A{ijEA|@XXOhr8~rK2Vn@=vY})Xy zZv~@}+5|u$;W*ewk<(*9XD`|MLZ$~=3%VP57|Ph3zgOVtGGGz&`z-UhxY{0}w>vpV zMMrF>#2YcpArj<^T96z>Z05R~)pttw!Ih|#VN73|w-(-)j#x4~b5qoJ(wL@6iq%#Q zyWHE>FF6Wa=xm$lFS(lekg;#P%NkJI{5acPo<)lGrnmIOCe3gjuwD($h<1-E#}p+9 z+025Sck|ic;Yg6yZ;Dax+g|1S?i&UnUp;bod$c4Pzog0WPar^|%I7m9^*IiLS#Z6< zH_}jFRfBd)@hdaU*GyG$CQKcE&^C43@b@gez>KK7wxLsAW|pGtz?VvJf>{{%hIms$ zW09ifq?AhP`i(c>px>_rQlp0bNZcchZ(kqfOa3(~$g>zstctM4Qe+ltPwA^2nm2%e z-o`oQ2Mc~fh8&@Ac^x-6=+AFMcRkZJIC7aR)c0-D6;O{cT??wW9m|KI$|Lzmv6)3& zXH1p@5mHwg$Ak?yw>I4fesJO_;2hGA|zFBn>?wR>SkRkcNiEE-f_ zg&c%qmZ<8b2rbFZVXxd7w)zS=-8z3ghavOU=6QN8=hYJKZSr~ZIT@7c{NF?=BOSy4 zktk(mV`lpQh*B@j7@D@IRga%=cPUicD57&nXy{B$+Ix8X4CvaKhy-mLe?}3m4uJay zp!mPS%1Q4Xj~E`AtDu)RwaV?WiDGfcZD6L4Ia5~FA6wSn>IFL)HdWR-KHhH&P?tPJ z=0iQ6)E?{pa31}j-UC11D?K}}BeXuQZ+ka-9|JvIyJ&5_%jVnOZzm}}Zf_weyj`m? z0WNwWsP~}N!Q3Y1FEKtXUv}*0H=Zys&-NCFivp(sXtYfDx(?8#O(OTwSG(4R+e zw75ONF#Vv}Js`SrVUYLLbdx3}y|J8h?UlV{K8wD}4!^VUze5d~uB3ORD#e zTlQ7GLJSfr=Em#ho`7Yhs*eXLc_t}14ST88`7%q~OaXhXj?Hi}_n69-^wL9&*`&># zQ;&x#CDI`TW7Ft>IpBkJi(k5$E?c^aW}CZC|FHx5ybVaMG7L6CF+px3_Njy>uD*C$k0uj9P{Rfga7;;}tezevDAJO3XHPpq?j3?05-wB0+l+$ptDv z1t>g+@jQD}ld}Y?tZ+41(lAopR4ZX~TyDFaV1Tw6y>ndV6)kEWUvf7^mO05ypnxZ0 z-p(4qQ9s&9l1(wveJGXc!2p`qfq*u}hgv(q!MwLnm#q6?FyQ4s)~FDS_pHPI>6GDv z{X^s?p#RWAsF10;@*#+B_=l6OKYXGrW|A>5)fr85Yf=Cn6r~u2u(EZ&$7qsovIA)3 ziUSY6s+#DyV-CovKCx;bn^`$uZ^S!qnlsNVKi}4@6m3n z%b|@C-Qh3bZ`~1&0hZvQ#lQv!LpgK&55N~b8#RGF?%nta=yHIyh?m40gGG_o{V7#0 zpg6vawZhh%DUx9y?du0T0mn=*fZ!>nU| zU-(c~gF>Hc`oQ#Nc#6L?V8HL(hv{*5f~9&P3Yh)_*It3)RtML2wfEC~u-(Uzy^Sg0 zi~O4wPj$9nMqnwW0i7f0f_=?SvaaZEC+E0-^(h0_oyFV)z1IbW>knS0uKL_Qw?lAx zhguQn4*0J;Hx0(?WNJ6>HhD=+0WV7g2m+x^R|`h8bwMTIUyuo18B2iOWSKw4E#l8e zOGh80;mM$+=dKX6pi#*oo_aw2Op3sz5S|n32O!AGk*@bH(U%00kr%SHOTrc4-SA0v zSOg7^Bh>C3j6n2~YecX4p9PB{r|EsLSI-tRF>$}gq<@}9J$MQK%uFN)y--*m!l(V7 znDD6qDs3P>D2~=SQyq1=i|#g#gklS~)^xv3a}+hn6o+#Tao)&BgC1uAbZ=w)m~RmA z`5{~6n_bX}?Jp|i>X{1kE=K+-J39ngVDLcm9Z3%QyC*RP@}?3;@Y+!ro3+^cup|}c z>T>by!T-HUP}q0{ix>-O52%rq^BC3o7Jt}&*F}r{QhskBQ3o(4C12SIrTLSy%jo6v z=j%QsC5E@_^H!(%zasOzKJT(QtSw*PzhIz```aG#t`p%U`yO|dHSgC%#L4egXgyg2 zdPA1C=TmL#rX}Z>Df~@QdUiA+8`9nRd_++59`5ZzPe|M}1G-4+trDGc*JB=)vEluG zvk`;4d=NtK{jYlHqp@YT1Y&WO6#je)qLU-d^08%|BinK_K(=Ubu}=|vmBk*%UMfEV*WXD(O~2K53!_H4JE9^@GYup zve?BL8wHt)_A~xu{IXyny-<6E`iC4|580Q^LwG)WbB0w!{@Ru~)()RGOKHSQWd%Uh zMZ@${Wc0!7TS4^&(_o#|!}_yv4^E4hHr%R`r!nByrjKza=Df_v&u$jy0Ima6#tX*N zqgt$oJzrP?c<8&*G<0OEdbhrghdps|sBTZo{6=!J!4$MqsfdS;vySJupI`T@7)~Ph zP$obW&)S^JVsp~5roOJdtN(|@!$IDrj0BRi+)Fa%Yp<@-8Ose;^UwzvAS)jB4?cB_ zPrP{xscl@yHeleo07e>K}h~uzrev4wvCTf!u7NsO;bo z)Pu&gp|zU|l}P;v;V%dJrU7)vsr-X{&gqjtfC=9l5msR@ceCfl9)lLnnIgkj%(2A1 z(+D;*dJUB1r5gF$jLBN}{{+Wybo{Y8NjqX$`}FkGEW5#*Imuc^4`AyP1yon26kur= zs}P`ngtf#EX_DABZT*?DTt(h9UoD_{@A9P__che#2KNl^7Odf!q(4CG&NlR72=?Q+ zHvO(ei)R~cf@0f;dgh7an$ore{j5x+&4M$Lvlym_+81H`cYyK$oxztD`cAc|wA&AN zH7ofGJ1$Oc-{8*nXg$@OKw_Lx9?s!(R17M+)uzWkNPqB6K9I`Ind7gBWNH$#XzDr) zxhYw4lo+xcBZEj@Y7GHXgc$B*48;?8^nwb6pJJ$Lp6P z>kTvw%)bo{CIT0n7Zz+EEV%a-9*nahFG;*fe^P7S0`SN0 zP!xh)<7OU=-SUz`?+^|0Y|qF+5x9aS0N%c8bLHtXW^Y7htq^pfhUBSk*BH-hdQ-|)Qdxkh0HOJ*y`-RyYb|^mpp3D43PF)r4xk+&yFvNc z-ZDTIlRGuHIP6g@7(6rfYMd0J2mW$T+076MNWabrpcmoN)fHofQPqEVv-!Em`F=f! z;q`odzxl1p(f#!}^K-J(f~V8d**#1<{pJ1fb;C+9G9~N<5%8H(ENH+f^zdSJRGmS6 zAM!!JVT|j^_X|3%tA!2ZBqgzx0Opq?o`^^0+Lo0Mx*@V<>mhhmklAvDkswDTHNu;R zBL3!|+xvo;T~XrNDl9jFWA?@tqxcK|gs1Qf2r&aINn;SgMLk1jD|c$p*udH@r!wEg z1;L5D$rO2EU!4yL7PYbGuZhH*+fL2V-3Gb<(=S&iZ zBr@`18-NTP=DcVZf-heH8jlcup3Hj4ms)Bh!1DM^`aJP46Aau;t-12YGA8N~nA2Vn zWLl;!4$x$IPKd6M?E&Lc3+^ktr}dCRGa(#F7s zMS1(3##_bhVGs8T#;XH@3&DGS8@Feaw|ao;=)S!osk=o9GC6!#!>N3#vz|#rY6Nz~Xe=XJ?D|okBmrCw?`wJ9ALv@rj59-We4Oe2CMQQ8cH9v<|_m z10D;UI}`>OXGjG4TEG(jk&H$ER>g71WI7+8^JbXnuSbQw?MHD%49uzuM=Gc|Rslt%mUYSxEv1CLGL z3yb{fgp4hV?w;bKmi-L3^EiJ$|N0fUa4;O&*f~hs;l3(V-+e%%`t8l0a^3!kx_X1^ z05`$d*kE)5P~d-BLRh0I?lod~GRUiHzoUu~aI_lptM~yU#psM_4^5zh4t4j%e?*g@ zf51zgdF1HsTTyK(2Fck;CST9%qj%6sUOkKWhZQs|dh;P9YUdX{1yCs_syKZD(Fz3l z>ub8lX3U<>iFQLo#d%?~=FyAhypk}f?2oBj zUB!FtpDGNe><%ZqaoV7U@VrP4^Rb9af66p^28=5 z>lBJks2f;L1TctCRMewSEE%jN|A6p1=g^@V@eV<3)IWeKUw$L6pUHS@P=dab9a$-FKo9?> z3eN9A6pSN8)#VWLFcqu?vySn3q%-k4#D~@)ErVzOM`%dMlbj{hcr6bpKls}an{s!XOhW64k_Xap#p`KM20I??Z9%J$O@819 z!w1KaBc&sZw&e1|2i{qk!P5vQ34A6L##)h+rd`F&a5CPqpVvnG* z+S_Vkj|14maufL#g^xlDvLaARDev5@{SBl-6O-ISr3~cI0pW$QVwXEMWmjI-cXO{? zx9`~RDNxNmeNOC1?yH+h_`@X>x^pBb^c`&jhT6j%+(Rm3CbWC5 z#=4(4eVYs0l>s|?tFqczXOUyzSVNLoB6oTr6Q##OjpI&&t}`dcvvV`|p->~Qxbc;z zEuYHsuAy(;K-qd(eHcuu%rW0U#t5U$)Kz84k7jQw(?OQP4YW{oHPk`3|LH_I1w@lr zjvyYZQOdq$`sM2BN%wm@!c&@_t6qZl;G%mh`Rw4!(Onk&pELaveCH*;G=b|HKUeUs z5tuD>AK@xFFfC^!2gyyyFhHiL7D+Y;3e`$ixO)TF^I*=Wr^{t%B)3%TY_% zOhaPK#gT~ShnEF!PfK9>u&Ajg#A1@$hF6nejFOYJjhK_`M%u4X;epq(`b`@-&2u-d zxd|e-3IzDJre@5e2)L00LPpki^l!Z>>0NK+NCmqm%Kc10+isMzqi*XG(7D3bRHMjv zE4WBeh&O3TMm8!tc7ne&2rLBvMwxA1*O@I}FVn?r1GCKNs3iLcVMsO)uryED$|WCL zcC~Gu4@zE*r8FLLc+yfEcf&nTc~2)1u0g&V0m4bn=e`3~pN_|fdu3JRG?+%r1&Ao2 z)zQrb_k!TL-srS}{h1`fWW*+e_smf!d9n%(FM3&@Ej{NMTbB10N(R!d&zeFN@!;-! z+c4pmv)&yyO=jqv&L0%>w&Szj4Fkm;w^!=t*tP5GZtxBU3NGKm6hdCH#f%>W+yq|L;F#Xq*94Lu*G2$5Hw>0dRGPVv6=jZf%6SX>!AY) z(UW{31DL=Gk7a}Xvjc4(9;NlmeLU)z08n_BN_o?p~KE5Hv^w1NS_FBN_P@jgSLdZH&PS38YIT7}BLKLTA67(!T> zBJ;Q~6KQ=g4(D7jNEiN~Eg3}_R(Wa+8=`Y&Ea`optFc)E#w!#AMlQTnI-5pG5`~I# z#dwXA+Yif@*pLNp z%gbH{koX^)9XN~;D9U>>N5K;){js+QZ23+-#|f3HasI-?ldK@cVH4CY;7bdD=DFfy z*dYUgwbV1M3;g)w?vWr^`qdcLO*H*cztLZZn=L8|bmQ}MnZ0r0VD1!{pU`apCi5(w zi3pMy`3XcVB_iz<#xq_s3)2Id^G)H1*Ajp)HEEBtB-TS!bA%5PmE;B#_4&$V8c07_ zl#+w{*8tC*I~6}AZyj4;(#@Yg4jN!hC=9Kqw2i)AruBEe{tpyE7%*ccod(57BrKT4 zS{@iuv^cCWP6URfRSGvtFW>Ac8Bm;oqngY|6n`3%y3{xtZ6fvc!Nbq_F~7h1yg$9t#_$A`^Up zu__-73FKXtvUP3pwuj=t6)yCC|3!o-H!Kt{_Sm4)$WSURCc`o+|MmIx zM<}-SZG=BeE-XKe5JeBsicpmHu+WbEAXcQ5P4k>0rp^a(@l#V{0QYHH4nGYnAm+c znm8k2ZC7N*Hb9X3g0p#o2pL*k$rHN2ES8|Yp6#!G0~>=Sod&Ek1`h0Sy&xPawgYx0 z$1+3edbNA)58uox2~d=m;1nxG!$TmQfe-Bc*spoV-FmtwVV%@bpLQu<)BGsp@^3jr zU{L>C%rjP?I{CI1BjDunB|XVSU`)4#&m1R{$8FYov5u&5t0qkHqefXmNYU(`NCnOz zi5iGY4AmbUPu%QGpbjq)gA)l;GnNr*=T3S;0}LfV>@7tk(9as!R^%NeP7|stp7)=i z_r(ib-SA4W<~^tUUGU9&VkI^<&&vXa>VHiN*QPANGonq`1=0J|u-Apt+fTxB6)Ana z;oyfS($f=Y0sbc>2}qki)VSC%=C~?L$5_jLHi`Ts#Uwe`ut2q*Sr5wXj*G=~-ev`F zE#oSPnFJExO2H7?NTn6JOQi)(8JQelBoY$PR@r1-yH~qR-U4f|rE6hPg@vW7b}=l1 zvD{u)^!x3yO9rDsFr-c9`F^4PD0_q*BIirr{ItPRy=`K-EMeazR^*HtOR4|TfL#kK z|Gpo7iKxaX)I3z;AFm?HPeQvfW@$)K)6hq|wm;9H3aaoVFK{a2JA^ z;>usLr#o6cthKMgKz1;ju`nl^;v3DsQrn%k#9hKex^>m$q06rZo#E((WBmlU7RMj&TIzu{%If9qqkDdA+O$%Bq;au05ce@g(? z)2?}pIf?V#aeC0Y(L+q~nBx%z7#HuVwu^{*dkquDx%5c9q5z)4Xt44)h^pILBFECR zJHj^DIez#_#o!JS`}hN}U!T{&F*+ zB+b($lBQ>$R__P?`E}ooR|HQ)Le^eJ*%=u+V)zkLAIbAe(*B{G3($4p9ve4EPV?8d zsvjDjju-L&ZSNlI)tk-I>wLos(4q3vB^9hU!;l0XuNQ#4;}RNusaMN}7)LwqW%zgpa&7 z1&?bzbJCYm^onQ)By@t6KQ|dptDb;u$+_*e;4)kzmf_1uOtr+Ct%Pmqz^1NrFZzi<8 z%5S_=Fhf)kZAkClPss`Ei|Ilw;0+3yewh# zegVx};0W@Bm$vJ+;PBwTfyt3@3v>8LT<(IiU6+3@5SO?Q735<7QXS6sIRAn7m^kF( z2_N}a`wZP@Kg4u)x;8WPRAceG>*|oD3Er;X`*?|j5_`o@<~t0T;q(&4z$}fGrCQio z_-7zVoMt_{29U>s6O%nx!p&!=R%0uBV zh&gQ%;bur$f~F$XzfiFOd5$XpZMQin2zKzrKaE?rl6A%Zv#0Yt;=`1T53QDE>}%91 z5$P^l#bW% zG;as1JW9_Zgz~kD&n|TN`IKH}(IzMwn*x_bjdR`e>8(W#NQe&)nqJ~|dabAIW zaLkFX9>uPHo5Iwr(&1-en*5WTgbgzjqi4&Bdw*VDTAnn7Lb_6e8p%>*0e)2EN)MJY z-v@nr8pd2H8b?cB&?sbNvwpJqBc^cpoDZ^_h`c@%o-!lRs64Y`zc9gNW%^LyMK)6d z`b@fdB-*c(8ZC-5M)+0)yH(ldrR`Nj6d0rKRi+8cC5^=cwc8twflA1;l^Va27Nno8 zh%hrAsEGtLm=`m)WJ0Nyr~Mtc2H{Vap8|EhdJZ>Pk}6#SrKe?TKv;L+NvdXQI6M{t zamnF;+t|Ikf`)xz{0TSBn3BP((nY6Iw`)jAp+=s`8kMM!)g_b5I3TT8HTVmvsaPod zZ0;n4E^K&+|11vtG#iEem5fuO&l>0i)KCqe$IZ7@xr{aiUuep& z#%e|R4!<050F#d}zHDCv?jJ}WWZUi7zK@o*y7SL+;_w})VNOqfq8fu02B|hp57DAd zT^#bh*|L&7=&sRHmlU8xyGc!|*Da8$8|kR-$i*puA?#tx8tDn~E5parYtLC}aH|$z zeG#Taj5oPtI5hdg&^lSt2qrjdM4x&GO5^ey{&6jf3Erw1dtu;Ok|6zZ$7Jg2E_*jo zDlGHWG(4g13u55nfMxUM1#r^mdmA*2e+T~(eqoHZ5 zv$S#M<>E2Fb0p#I$*~MRs&o5N87O>z%E)W>u97`FRvKkqlN-7WW=RU>b0= zpxTG0yw=}gLFkuf8iDl5JfP2PeMYU|Vvj!rt4*geZ{XVU?Qu?iJO58qleH5s!6s;E z0?5-Zey8fgumbkBx`{hU7Chz16O7}u9c(uR2opg`F{vV#n6?qXU%mEEBG|oH1#7Ug zl_&C)U#-39@+psq<8{vpN?tq<6H30*jNqMZ-hGGg@8Pq(PFTrC|6T;n_gR3_mSOi0 zXvm@|SgFQvmJO`@Mju|0ojpu2j(X%oSsS9P|9xX`qo9408%9+aSDRJE!XixzwJJX1 zRrB4|Lr2jfU|T+ga0scD7Z&zV;1xm0G02%Y7#t0#=bIC_3uhVun!|@=t<3Cfhld*J zBFDpYocy~-TC>S5J8)}1X*VNJ0DvIYPLS~?2o^=_MQkKf5qv%zy9_wb>Hl?|=o z-(=aRa1EeMAoq>!&WBXj!>jHLHXZw?p&%@>uHyajrzc?2%t5S&3wo;B5yZTxrivCS ze(0ePN~NJX*D%IWc7@uX41;Iae=#;(65xcPu66E`lb)MyaJOqsvK5Uqg}e^8_1F0=&@74*zD{zaK&NXb(_2MFS9iQ-s#>qY%w1eA?+u- z*r1KopQOIo&u@T%xd$NNvoqe{R{X2%jUaiVKM=q!kXHO^qr@|4_<^{zeBhiMa`4XG ze+V8=`2eQp@LBP}y}JRTdf=iw9vQ3oxc2A#7>s|V9eh19O{_c;D*IiRU_ns_7rRbmG z-2Y+h9fNCany}H>wr$(Cvv+LUwrxAvv7H^;cCusJw$FOLx4u88&W}^Ide%KXw`$eQ znx5&a`^vu)%(g>XE_$2}=<#%7UGH-s#$F>oP!;O9`Yn77R4XpXa*B( z2KE>wE9%MrPN+}iyHv1~(#!>=+#(0=2%97~Lx6h7I{&bjk2=$5SEOK(MKtXl z7K69|v#&7%wp$@LpNmP3k2wshz(p~pK)oDSnPpclvJ3d)RkH)q2+I`yY=mVVYwmBh z-1OfPy8hc6jVe=@{-`aaApTC*AdI`l?3gpd)(H9fDTp&b`V${_avqeHFCY8+WyT+j{63l%s3ySH%^$1ZKE)Zq{j%Ay3*@ zP{(&XT%w>8b3I(N7`3w{%WUsX*{qPtJq;>zg-^hq4f&XsB+E1jgX1O3^aZGog$;2m z&K?b|u@SYKb(J+_c&=j}JK5P=k4^`lS-%_%KSl)kWWAqvL1A*osF^wZ)J~WQRWGrb zTk06;qJKe-LT*$Wb=kB&j?reJwqV0*CocRP+!jR*SsdRO!f^!!vvEI>wG6-zAR?X&5~R~wVD zHe|8w)idN%Ov~G(X|b01$3RfCH#()k-&;|{j#Fnz^H*iM#4JPbTd8T*nhf&dpgdf_ ze%(u{ZOpvjk+kq4b_S=F1(u+o!_z6pXf(i}V>hCO{Pu{@WE=1ziWEk~=pYdv%||vY zM#2sut?tEPFBYaEH)j5KQPQ{|K_|U3H73~8jm0r%7N*<8JE&o1Fc`!mK3Lg-Hu%qM zKI{vf-z=L7=PC>bs+Ct!>HzNSy~kHgTlR$v4wpNl=q35@v%}%Uz3K%jIla0)G@*Z* z2QAMre-zqgfz=Y#V8izDh;O;!>}`vCE%oFw1wLI(HA>ow^PFLq<)k!aCQU(1I?VX5Hy)=DH)}TE&Le_`AQUx-*2W4n6{nIGgSosSov26}TwVETX_7UpEt~{9w35D`t%H9`Nt+R=D*IiLS6OQr_DgqBZsat} zY`xMt>!_mE63Ng-KA2^R9o|ZHrAZ8{qqHRLG%KyL(3$2-^Ww5vDh9oN8iNUun61(( z>@D2cFM;%C&X|{xpsA+Q3GJBTZ58qT@^AhXs##CCb8Qx9T6PCOH!FiWFM?Q&$w^ za`(YGSaOnIb&0~V%R1wc)oOCzxbkmPL0WRfsv|SwYZL|2wS*2}JRU{XM469WH)kit`~Z z3u?ebe=3B@)|nXo54y@Q2qc$iclUR+pps&YG<&Jsh7JHfhFUy_(Y#5 zp1_Xf&?7K#J7Gyc7{X~7Q=vy z{12A0d{-`4wCt122vywa{3|7dd0=RnM1=RPQZ18s8#!tpB!(ctr}143M&U8?vgj0b zZB)-UC@9xA=^bqye!zxmE2aeRqV$4S#S)ie z-ZEK8STH^ofC;ZAI%GPgoF>zFh1yb+OgxVTO#%GmxqnDtB|4Fi^W4To=d=zZq*|oV z=56QsL%PUg%0a_i3fY+q17%~m<{9ZorDP|W779#jn43&RGK)>sG-FIJ8f-d&!Gr;x zS)40BoYNNG_;I6`G9*R!`^EQRe&9grU;EZ01J(L;p=YDvv97Yx-yTcbB?yg5;eN^_ z0`a#!5BM63ren3G)lFA+(ri9BFJ^*mKA$O)r|E*Qs@Ch$p{3;q+daQ!7uxm3H5il$ zXPDh-)h|Tvd|+Ge_9IV3QQQ4GpGuS8NZ5ywu?fjpclk4^m;Kh0w?thkH)M4EI(cUD z=>P7uC{!fkx29^zU%K<|?U!-t#;L=7UGSxMlYXj$5UUq^4I6v#b@xX3XZjw#VN{eJ zYZWhr4;MKf5cug{1t>4RzR~LeQq;`1q@P)qmS!b*KMDEC?Jm-L?_2O}pdvyxjkn>n z?#7+4V3_95Z6czCF{ksS@JN-x7s3T8wzq94)01%H%-M;``+ZWW3;l^97`t!Iv2oHs zOZXntV;0dMgrB5;>fv%D%!1<2l)ooSE8vZbC)scjp9;3qV06138B zS>n2gSHu}{e4lpIajA?uC`9G|saP5jr}P3ieFKathVe8C;c9AbR0cHbks5p$}Ej72^jLNM6uRw_h(igU=UynYy-C%(~ zVOB`5>EK}wdBS-%24FEO! zIyA({g8B*omaUPc=bzO(vh*|C;kJWKgW;mzH%wY2Nzc)>#mWUiu*+9&W1(?S$Fn+Y zNf6_Ura<7S8=Wl|b0H=+i^oNd5Gu;aZ&KP|c~9UoINcmweQLB1c5a-dnTy71uY?S6)ojFTlT5JBYTOeHGnxcFy=F z4;2)fr_*0ID*aP(e4OjAUAgX${xCtKhVJjZE?hc7va=-)eI}bQm&EYrTxYPfP~xEz z2M~E7@k+ynEMyuF!3>;6)*uTKTfwuCmLshP->Vc8$LPIiW#X+>Wte5+wQFS|mlFTY zW@+pqXQhHYg3=6O!FgPzk~YF!Wwava9hmFm2542~3V2vU3dWnV(21&X)u**c*_a1u z)R4kPw4(V#TpMfqSw%YE)S-g%M@%15?3j5HCjj_@zqZuoT~`U@0r(zLFudYvRBps1 z?w3j7A%Dk^HO&&KSY`{or6gss5{trINbEA}W0UOzpv)$rXfhys%XQ+;YdJ^(_#kdA z0GFUfDF7dI3BU(!gfv*RF7~x-xyzw<@`k!~#OI~Wy%D&(f_eQ0r9}RtMx5(!N)1@{ z-yG|y`)l-!d+C(d?f+Y@9I;Z{S#17cs!cQqLrkMj4%<=H4ZJ+pZ zz-(SC{-h;cB84X7bX<>dBXzp4xe*|-ylE&_%8>`MGKNLegp}@3zGNW z0?id*0~!NVkOr8%FpzLfF(9Bp{K}E}MV_?*`HxJl@F{k=XFy88z|wrGLSqD8ckA;7 z@j3ykaZ`S_*qWsg1h)pXL_~)gz`%wlFi@xFCzIboByR`fR7`WROw5FE0||n8L38kT zNMmWya(~cUbavy%oeHkt1}(zFnlI;qp-0Ie8{>wtS_mdvaD|XeUZ9KSuge1MIsyK& znYo&q4RiLQeS*KbCWL@EXd*iM+sXd)I}lm~b>&)fTt=Wy} z-o_Nsy}s|u!Qf%MTq<&R$=$$3&cc^;-L}r_?Sm0`0sG%34~i)3#LLM@eI4W;QD~%e zS~xxCQ(Z8bgRdw{GdNDFZNc{5ET2td)}kz%w*&NXwuF;kODtknoMS3OG77 z1KBX64hd*5#|c71?uXgrQ8!ql=Xe}0NHeejcaoZo=4mE3v_RRvcQ^>cP%&- z4cJh1`r0}l2%mL-d8e6$^(zSnitoYjp?NPF!ks7N9yTu&EKcgD5!DY7e}uG1>qh=c z{Op?3c?g?L9c&pr^eli}^(+`X!!X*Uat7)K6{K(b_ofg!zb+8s#V4+C+h(y7U*!C; z0{*!O(u3u`9VvHkt~`z!cL-6Jl3nziP(ap1%#ck(;0EqqTqY##(2 ztWRZTDhjNy`W|Y~=jfE27J=)l>m_Hs3k>2}?rGZ@!{r*Ntrqh*X2j*Jf`rKlm}#mc zBy)*%(5r$8?rIS4l9~z28pYVjYGP>{OCs~7fezHnl@acO`<)qMtS4wfFzO-*8eWd*;`^|a@?r~kZMCEDv&9ZAk`pUG0t#P3JMiiHpDu+yP%9=h! zVW+5Br$LG9$`3fWCkXnzzn#sn!-3}K7u;_zk&!gGrzoVCi^;uN4Rh=BVQ21IOFl-; zi?U2lIwZJ_CXmt4kg{eTYHmK_VMn{KxGp>_3GP?ktZs7+M)%FL`Oe~wu{0}%v9pMr zuywm^?m~Y)=J+_42hF^>sRZ9+)SGi0bB>$S3{J7pjV@2L;RlI}e_WSRWb3Q->Y>0B z4%W4VykIy%`n;#K1H5{C+cNOat(0(+I&LrK49=WEOFw)!FbrRcrfnFanogMDaH<{3 zFv-J-gjdHtg1%nHATNB>2m)6+f7HYD(UD{SKwDLCn}N&zX3>^-^m||WXbfr!f7#Y7 zSn+ae#jk!5)cB6=veksk6QH=*?jDrk?Oti~Ey%7dci9f}Qc9@rf^FlYl`3$ITsVtC zl&{QGxF>3Y1&7|$6b5mxAPVHAmD-(wL1~lypUNDa?6xt8%%2@5$;AkrY>q`UT8+**{tlz|CNuiir&QnZ&YPAK>d=Z4W?_`Z%)zM-VF8jHgyuwPJ_ZRM$>N6{mk>|?5c8WtAQ@U7Kn&5^ z#kmQ#B!7vQ?hr(uj0XEDoFwp8+CeNBPT-D8MbX zzeO-iM4a`AuNq_S3V;4%GfK-s2C@@HIUrcYdv*R_K>9c956o$Zh4A89>f9DOe3ObC z^j6KhQ1nDfzFjGV3BMwkD;`9Y=9a_e1QQIVZQ|u!7i|vNwM`-@YGSl^DV_~Ax)Y4~ zL|_ehO^I?>hp*N`CGW615yU}EUq(iuW$Se_%$cu$cL4;6NnkNuKo>H78CWz4DD-4E^2fU)N(Y1jx5qh|w zxkC1lEy;+3Zpo%4j6i+`UG7q@Ma>a_<||?4%TxowSjl)zF7PeUE%2#E^7Z+bRaSsB zs{h$!mXu7)c>_6Fq$@!1j`>TgpvuqCjL#Y zEB1^t5gB3Dkwj;1mCV%YLqt#CD;1vBI5L+8X&M)%YD%3}Hd;vk0_%0jU`V#U#g<_E zf{!|Utw8+e`k*ZIjUSj4X)8Cn?ul$RozZA{K5OSrcWe+CW^#q5-e;}xbMUA2Mw`GN zwkgiWSBKOa?+Vd9H66N9-QVLF7;%dXB}Xm>n!%@@TJP21>}+}sGMfYwBhQAB`j31J zwQd%cGEesZq=SvQG~^+dE{0kY)_9^Z^!K+FT}(HkwL$T`0)#|ndUMIsn|9HLMg{vU zv_ds@e1ba@6H2ZkgapO7jRD#^I`Nf_!O%Tyd-3={#=sgtQbUPm?#)k*J4ANJu9p1B9B9}z6}iI{5Y8ITN?utA-S=!Oa)kZ-x~uR=^V|R z{0$Aznx?fWb#SmkvBJNk#Be{JCI&S2^e}BI8)2Ula~^u(C-*8I7#G@KpwHT13>FGM|e$l)v>faDZQd=aH_+1McXE)BLXmr}vnJrP0TK0mSH%vgG7#kiH z?zXiXr-g89vLupLQ!Z1ZkjFALC@+)T{UfK4UREZ%#xdltP)vn9g<5GxveLBu-CMQRJONT}FDXC?FOu9FqY z(6JgZYB1~2@du+<(f;!QK?U&riQe)S7Wi)kKZTM&p`hzSjT(_CRr;r4r2>$jrR$8K zrGx)YCk!A)ayIzUdozvPT)>%O$7}Ufrji;LX=8;Ip1d*3|C)iEFh%or<^P$18FX&` zFn2DLg1*U}lphK986Vs$0)ORGJFAs?ed=1e{?Ps0er*rYSJ{U4)^>(zcjq}c(_fpz zji2SJe4bVvZH^aawrLmMUU4NTFD#oY=WN@oKTvO?N-vWA?cGwri5fZCv{&t^(f3&> z1Lp))-v?dS(~<|G4N~r)< zZh%rWK(!sJo(AyXBbvTS9Wag53m{tI(JtbN(61t$|J}$4a0Q?-4(hRSE@O%?b!*Ah zb4PH}&e!fo=qUiO3$ruR>fgAjq$2E~Y>tIJWDiR}P2|`4ZRn-kMG+6*;i2of>2HfF zm+xGy^du^A zI_jrMuQ!DPbw&LFV>WBiZK`+`Ua$9EeD#Z2&zq5{;#4C;a!!UY`aKnKjMVlIb_{#P+kbs5L6 zLt;5NV$f+Q^x#M&Fhe5^Yd@UJN+AW7XgbXi68u?ZiYVCx3+KI*3c|dD$dXgU1e0nN zF~a|*FK#Wp8ZCH7hbN8ZBY)xeEy^H?&LW6`t8L?fReYMm#qQ50{M z{i&kIlQGge%$oMLODk+CBy-F=<=G?a?mL~Hu*WH9PiTlP9|nIPl3uEsIrIR|?alDv z><`@9^dk6ziH)z|2B8naBNh<{kj0B$%d#gHk!lcScqbx_<$&Q?%j3T-cENl`?e_Jg zX&($$-b{>Bg_VPR{2^vxcUIsd=n#{YjZ5pi>K za{s@>#_`&nj=jI4d^jAGVxaVZ4S}RCE0HE5EVntD%*mCewEqfBXv2=Z;kF!I`V= zg!`5pK{Q@}zDIW$@9#$K)7||QC+&Yu26}G;)6l-|M+No2kM36hghY?=$Z)kOa{yOz z?e>Yw&#U|7PHD+Ec%aBs-&3J4OGOGn@gut@YC5|oZW_C|@msj}ZTt>H{VSN6w4I}b zUv`&J3J%yIm@^t~n*^?bX38bUgRqi}Gk+^R%bmklyah-3|ja*|bB zlEjH(I#uaoPy+OmScVzcLRNQ>ik$mdjm6>;JfuX+fZ|W!{TP(LLO20{V16>qA+XMO z#7MDou#b29DA^f})}yh^Hb1YP+BLC=vT2A@VRJC`d_``GX)3D-CGwt6!q>L@+w;R;dO7u=Y;7 z9KVt2P3E&qI!(k^`-0dt2N_Z$>Xc2hFOTjmQ=-9eL#Q$snC*yXXt7KkD)xb-T_va{ z1%yaWfilT8K(+fW*?1@>Quj=>W8=o1zPQ#Tin3L7j+j+30C2=TjDYTZQ4-`71IE(? zIWY27Xr9uEAcP9Bxj#C&rX(sr*Wmalk@*BKK?vhwzv6j?M^!ZEh*P0Dl4;vx56A!4 z$_Hc*j-M2nKYk5{uWTwDu0nFE#t?3|l8Lq9Mlr(i$1+6iz(_|eSrT12JPV)7SY9eD zGDq8QmPJe>a*Uqwp0Tl1%1skq(_wssET1xd5(dIHf}=1XBjZq44T_@J!1EExQl2Bs zRGeTIy2gM2kD-d40UWc-AcN><{kIG=i8{>?`x{bvD&=Va0@%a$t7$BEDrG+vmPU_` z0ed8sOe2&dJMlZX8i;jp=;ueh#NguCIbRl<9MYWURBt>5xRkWezBH0LDvA(Ue_H@} zyO3PMqG#GLgFeGlM8DSwIDFV=ko7%t8Xo`34C7EGiFuL1a$B2EJ5m+-h{`Xxwz({u zLabmRBsnd*A1(Fo-cn0V$8Ce?Fb=1nQ4`-##XXKiY6^ z8;W=RlPGUga$~>;olY0J6{{RaG|4HA(P|3x@WX|C3{S1F-7Y`_widW zBSMyj3uxFwCW}hiHYigaD%mZqAl!E03yf`uDIvhY+A{igAa_V=yyz(`MicKz+n7Rq zhnjuc!mMc?^Gn{2V^>N~&JcPGR(KY@N(bVTy0LV+aO`00o=Z|om8v6bkij7TPSx2< zAjV7QSaL`ZveZHCSrc*cv#Fnc)mGPre=Q3=g3W6sWyz{!D>o`w{&D-=sBAf0e8Oyb zB`|C3JCf`d==ht}_(ISNMU`J(v8_fKXUXzu3P5ku>$wa`>U{qfBxu(88{++-b#hdn z@#g#E{`;%b|MhVv7o+j>esZ)-G2MOEzz|rc+c;fG$L}j0HX;u?t?4zy^6lwm();5r z{btZ(Wu zEf(i*#?syfe{8i#Vd`mvVEa3)f`1ucGG|(0<3^hjiLn(N@5zM)hRfDN(WBCg^MgDc zKDTG!_j`t@7-}mOft$;DiJ?@}!{B?`!H6yz{uzxGX&De#PnK|&btlZqCEb?66-;j$ z`}gU!{^+vqx5?1*W@j7aR~g#frpLMW(M`B{MoQOv5)U*vNnSg=bE(W!^#q+hq}+Uz zc9pDX?PMuUi)~$W2XbVh&tU0FacH0CqoW*Q2MEmHrZ`55;m*bDt48VrhXN4+GV?T0 zGw*KY_z|ckmR?8mfWe%?Cd3TTDQpcw=6&vQ@K#_z#zDe@^H|P)8uz5M#3XvVNsm^% ze{#CBbj=CJ3@G!p_87Wa0~?eEi6e*5fX_nuJwEbp2wAi494WwDC7Mko-7=9lTgWnO zO<4p|&ys2PJlQ#{vX*qbE)$Q^6pg~;Q&6P^mMrYcX1zIsty1OFba?r(G(&O~mj zo`aZlI;@Q$S|9Ztn!J#$6&+3@K2)=>5oPEX4Oh7_#v1C;cyBRv4$&{GhaLp9H zkEZ(cBRcK+aU+sVg#`%yQh}n$rZaVG>Vob>$h4sl>ftE^NGn5PC-1s?+Ds2N=JqsB zf>H+CAhjrnY5E3P?^|mTbGUv{CrpaJ$tHyrT4dxCVtxkG7V=K9HfxCNClMoAYELqy z^0$$klC{w%Gv%%n<6{05CMZb#qZjlvK3pk^4S#G=^BVsUmTM}mXMAbM7H4$W;u;g! z@;0U^OmCz>ir-hhU3Vnkd8n9N()liUB4#%)TRD6SA&9_8?t8*X(l4}1aJYb|J|V^@ zZ5jZvj>C`SQ?&PEtpaK>n#s{#6f+uzdR{XMma|UEJO=I5k-aX1PRg5&n`kd|oWrSb zq4bmTi6vo)N2OGBoQn{Q09rngW9cJC0@h?0y`z0*XNI5xA;p22E|h6yGe?D`zT`Q6 zL6zkV1-L4`u4yn7>9g4lIrg>4BDO1A@{%ozZMFM#+tD6tj>~k}ZxD_K1;|kGv(Esv zXNF3rK$?|v6bMi?4b3{~5f<+Y*BOmHPkHYC0Aq;^RE)4}=4_y<7G@|lEW2h|>GAD$ zv$hzMj`Yx55&MS~A$x6}B{eO(sLgXHZ_rDW%Cz;WLapXnmm45m{_Y|d_H%|M^jh9L zEQzN%tL}wZ!jhIfv}SmST?VU-uruf@zJ7y^`j>Y&j$D&^&Be@q1mo)rOP)~!?c6%% zrCyjkJ_`5RX&dHti>s&hZ!*N(xlU+SsyLoTi6*Rtz0D2m>Fi@O!OH%)haUMzKe$Gp z;dhGmtsbC8u6x`L3R=8v1MX80lLPp#3%3L0cpRvH;=Icwxu~3`5YY{U_vji*1PK>{ zYj&gAy)fi%=F)~!VW@PiClyK=gU>`{bkQ==rLDwBJs}JHJLL3>iukurlNu(?*Qxib zp~DI&Cel|NJc4B{~c#^T@pO+ov`!gdrk9#$@X1OWjqH}&FMC!q^QpaA_ zy}4@EN0x@X}uT zx%AM7#To7J7^8CVSA=Kqs;`3^K1HQB0Qo~6PULS|I%Ze>T=Vv>0PHU0jPG>m6y`gN z_ayqBoU}ixJ&!kCJ69ei4xI;y{abO85--srH;5Ra+xYY_-5ZSm6Mii;uTD)guk&aT zMbqD}D=WPdPP06XO@q_FU@2F!33`{*CTxh$3ASXoUx&*sl<*PIh_lDCJ`pK7UPp|F z_5TJ_y&t{YpS3>-UFz>!3j-6WGGhNUK8}#-v7l7D=&YL=<1L1bXTgP;928XqKT=!tfMiN zTp1xZO*@@HDy74mylb^t86*AO_%XSGOLZF;ND}G$2*ix1$2@UUNk$=W?v_en-Q_{1U>ac>a}UeR^rATAim@IbWRmv6MH}2VBkM zz~pAIYhW?j=UKhQ;xOWdYXb~t!@0`RvSl#23k(iv?1q-pFb$zS@;o}m(#0<^Vo0>>Sz zLQX2`>(E=L@oh@*k}r*>ft1O|Sqb5~c5`_PAQ zXHr*pH^nXdtBTGd((`MF3qEs;6F&3Xh<4spg4oH`xOQGHr(D)9=iFdW!|OQ89x869 z)Hm5r|9^l1Kf*{394yC`NB{@J`YGc0fA z3w25l;HGpukQ8ud_e~bH<>iUt$3Lep!S-gs#IF z7{QxsdnnWTLAnT9JEsUYmt@f<9o7ZFVHXRB@%X%SNB?hxd3(I07#sYfm@E7voAsKa zoQD6TyC~;3c5TX?(P^C1SZCh!qka6JqW0uJqlQeYIXM0SA*4AJd)qM3y-paQcXZH< znSP=xx9!G|s8L?$Yy;I}M~lzCv-vjsGD&0ioZN=5KrFVVqer+a zF8*N190K_3uDcjp#33fPzBBA?M=!PvZvNvBLUhk|E^T}H+ulFcD>O0;xeZ>xqA*iv z!*6b?MG+XDP3M|M)P{InA z;44_rY_X*F1yxFe$-u}r(B<3jg4U$@nu4+%EEw5EyG4{uFVr+j@UpCHX6Bl_r(GG# zc^3YZoGZCk)w*s05A#%}tD&aVexClpEOx%2(sMm^RpIGO$;@TXVoVPM6+xV5^-jxm z97~p)y+rqN+bOwGn6)aUjGxFYf=t%Dnd+W~M&v#ElQZpE=ScZkJXk+s3ET-kJLruD zT(6sWRbaGQX+Z^j)lRuG-64Qoo$lU0}`IYIl?L8u#(&>cM5#eI_3|hXxY6=Am8J|oXiG8w^HR2ut|zMy9`OjoqFK&@mSm&T zu%?`nggF+xevoZOe|S`##A-QF2&p=@SPYrEK2m1*NtzRk!w~yrLGr6-WxAjYG;o?Y z2+NpdU_J4m|kulN-A!XDFZqV{nyOqFBAqcjo3{w>P3nPaYM&VRQ+oOq~L)4 z_EwaPF-_o$0$ghrdsYR5JL2`JjU1?G*xA9igGq2&KpNmw29^LlBe1g=EaPi#v`D=H z1a5MCV>vTdb}Zv{UKOlvF}`~l_L#L04r+Xs5q699()$Aq8*(#Y#R-QaeE~{x<`>xy zx-w8N0#8`I^pIF%tHk@i* zLPBezv8f;4ZFDAv^ftOF@U^6-oh{_MUki>@g~K_ttc$aq>ptf0tJ1;*NG9;Slvm#8 z?uK|oA!|5neBTVcc3$p~>zq_VsMK&@`KMp`Xa4U;zK(qATj*pm?KsWlEIjq#rWmclOo(V)<^VU_IXZ9>0;hAC&VDrG@i9utTmOs?Tc^YmlnQFhLvFe=XFTGOY~kg@9|uv*4(tRd&Tp6)oh!>^N|gj5?n9!fNNA$ z^^O~rl5@S~r@GD}ESaY@tC@ucLUJY-hHVpumycIU#oP2V;Dj^Z$+tf)oP+Z2 z$abB#`{5LW@+|@CM)}FTk_TCTRbpj39WPya>;t*zN!BM`cNfw7uX)C*E#y)! zeg$0c4#&@-Mx%i93XY)-hPjjcDE>Q)FR#0=_B4htsg4^&%GNZ`IGADN!wnh0gRas+^SL+vd6U$$`EkNdGJ-DSGl|MLi((+q z_Bj?-QNv>pO-+E&oL?Hn!1MZrzV5`LLW^$8Evg0Ax59;0y)x9)FqhV-w_d1WtY;o= z92xhgSK{x2@_FgMdleJ$^g0|1RMpl)HR`SNJ0c#pmDFpgLZz*}TOtlO_N4RPRT5)! zQ9(J?eeO!5`A;B~BNwUx>e!4OnGXP^%)>zMI~8F?@G!5D!;lo6%s*RqqaeTQ%>xSQ z*Vnsq7XJLD>~JYgRv#t1^rFbsZFCSB=8#I@SC=ptof6d1pe@&lzpNn?E2Dyu#BC@d z8R3nA#1WldCQxpKBCBTRPtQ`R(>>>VfHL=dI*~?J5;-KeL>Fu?<_apPtMZ8>)FQNy^r20zvxk4d3E8N-$aGKI1f}o9Kqu^}j&|Wo7S~GJL&x&W z%UYA=*xNB#d6r4_J8H@d_HjiHVV2dgVg372HvWTK0KF1q!{?-_)cM3FtI4@jeM*7H zZ>-e)>|%y+S!}CAnYqn^=i1>Fe6}N*p%me=+Az8KcX$52x|URDQ-&1?S9U8Ij<%}3 z&^PNrL@k-EB(2;m!nPuyL0y%t1nm-+B6msPuHPLY#8QE|7gx{}s!UXi-+|WroGG*N>&;p-VoBi3QhA9BC($-JG=2-?765UX!4 z%oj)$_Zb+jCIoaNDH@N94*rm26!QVsDN!`>svD8rDwCkg+J#k~;nNUE^a2qC>t48* zujZAnLYp$L>*6NMn4j`*kLQl8fne#5T+#>% zh*7yR9Wznb`zQvO(VXg|DaEo@Y|qr%I!Hr!)W78@_Ud8|%W7b%#&P5FM-n?x)#sEB z`r+VTsU1E`BH85~)U7gSW;^Kl-cn0|{_IFtsdT3AKGO!Rx;CX5^TpKNM#&Xgika=< zXrHW?6UXK$@E)73=0J08IXk4YiTj;YXNbHvf*qET>%cYWfVmWba!&fZm1p^lHS%fi z9IkiP*`h6wIpS_tN-yc<)^@+Sc`U4`PBo-!Z((7l%=T8(s%FD8ZdBWmSgz$WT#bpW6r1{3A&g${=FLp3*WM~`i|Qe_)KD2E^9wK|9iNq2bD zwT99Y(0^?t@SU;@0+YYz$@?`x8!H}$5+MzXY2>S4u1+FlL5XvL>x4uFsl{FZ7JZIm zBBcSBj|h#gE(;<||cdIS8~Su*g;D=q5p>4NGc zFU;jh9LPsS$3>ccb1`qksggUu(DSpyU7oF|_p1$k;#Jhx9vV(IW52C&I<=U{HHQ?^eT zNzkTngrNL#p^`|kQlaBY_Kd53V@rOgJCubE{^m=&=S;l{DG-6|1}>U|W^+Ex>uP>+ zMs#_GUtp8gyQK04?4GRa44ybCkf4jf{fNK`Q|zOSNVY96a%k{jk}+7H%`w96(eoTN z6mG$H^d~h#4KeKoI?0hGLzu<-P%;y%D3!?3hFpjGo+@a_X7*^5foML9j_^WgA89!9 z5@ful-zyJe2yF%J?JcMt!q0+|)S%=rWm#$jxX5tWhckSTj`t>lIq#s~2@K?RI~>7L zj4U#zc%hr=RQ=Xxqv8uoREOE|$_sleJ~Vk$7)Q)aIV8VWBE}6|Pw;VqSfUnxFCSuP z3^L&rL{%Bf+TYbciW(zvHnw9PBw`$pXrEf!G^W#qvmz|&YSNx{HEV1VsFeLK(MweV z#)oOR5QPG~GwU?zU$M*|jqEW@74It)KwjctEkx=?Gm$sfB`iTOdw}hsMAwTMpZjo4 zvAc5I&s8DEicu6fs7{@I-}sD1*Go7b!>D10+?}a%dsLXE{LyUXR+6$T;0)i$w;-U+ zYZp}YyiHT?6{Zw=E-G(XS;u}F$cn4*pp@MYQQC21Z10ZkC+$U06)@uuw^ z(?NSNlj-ZfAHT9S!?5uPxr||wMjW&GkW$OX z*y(%7e_!y9Klk&5wn&|e+sp8?L81=L!-Rq<1Dn9!7PwCE4dLSKB=7VqZWOvGJ1 zwEo?7W)Z#}OQ8H*FXB}(^)<|9>6eFXz5*irKeSCNyoBBg&I|`@E^fb>wpaGf*BYKzDpQ zMHg1eCDIP%7s2O;4|GdzwAi~1L4e=pt2`_CBYpp>(8){ zYs&AI+lwM~K29(2gPwrMVab?AiWcHP3`7lk@+lIY-X2SJC{RCjVKUna_M zt;Ey_d!XWtPUpqIYm?Eu;|CcR2s5@5UfZcDjGvt>hG_+kbwc9?96^GOBg${0Z9qNIp$(NI|u$3+SeU^}Nk1nC+E|{huYOBO8hA1y?Qvx7i4Q}Jf4&YqOD7y9orWt%d=4) z4wp@;e`^w}HQvWHK{=Z85fu<69#-L}Jx<~-_kBj_l)E@oBO9@gkJydLXFKbrb-20v zqNHNzNh3K}33P&C&>U)_`n-84dz*XHzeu)MpII8)eWRXbM5E22i&NrJ4hsnh_vaAZ%hAA2Xc`b)j2PEQl7EeHxw{J-E+eIiTE? z@PjFqhGtR2UJ!rE4MjN)LHD03PxeUs^}Jc1+^V~k;pAjj8@oAb>|!#}PS}aKVkTK3 zfQ`$~rLRPUWz{HxE3#HZl8iv0h~=gs@S17&=Id9wF`*0!LL{hb@UYlS zPMXIoIZ~!o+O>G)S&XJVNSdoU#u&a_kMwxIq&PBN~NV5Yii%6 z=Pl#}R;@HYMiadkd-Cr?dVY)PWz! zs17n8+O6#Rseb4g@orCE2Y^X=%={*$Mpx9u&ow^fdGMQiRYfIV)!CQpfZ2{t-9al+ zo=`z$w%(b8tgybUgd6plbt@6^>ZeB`5ej8L00rj;Bmx$X$1aiAs-Qz(epg;`)lETn zUa{&?1D|+#>Ujg7Ryq7`gS`B@2Ehv=9@8ozR|HBv!vuiAxivnko{cnuW^{e`KM!bo zOR473KlwH_Db8m-_bvL$ESH;#_kUm2ReDd7%!$`cOG(Ynf_#LPCx&GWLCnpjIxdbG z@aCjGYh?lt1aoXg*Dl|DKYe>=Lc=Eq$U9yhyPpRT`pBuAZswOh3RXqpEtdK~S<{G@ zIHVzS13l~K1zYB}=87!ZZHd%N7v5s6Ec98qb|D^qs`<7dbMnNtFQ8rC$9=gg$;wZ- z$C&1|6!L_%GFd?@1dSEkU2CkF!xNJK?*hUKYF>}!bnap0O4M0sf|lsJ%BAAbv&toDwogU7 ziV)vrm1R|~pY6oFoCq7ug;}x4ey3V>rNyJv@^ru(iB07f71$*)4gCFxRAFKr_Lg^om)y2EeNH=6QZ zj#fSuEGIg61#Frh{EuYZ=l_92$H4smtG&X)#`u4d=(fFeW^p-UcD_ESW}N+as&C=* z82DQ^;r=2LWHQHH1~+mE?CBblVH5E2<&i7KR!G)V9NNA_rh|=`Xo}$%2`k2uUz~f{ z{CK8?x_=HLe`^N(1|qO>_xirR-rf0J>{ye$Po;Uo#GmOfD*}2J`1xA>dEJZc{d&3% z{W-(;{o=EGj7<6}OnH3W&K+~n)|+Qj}|(>ToO>3F;=X)}|o-tzr{kM-4Qd55PB za@w({WqE30YW<=n+#GEzO2VJD#QCxn``FamohoEM+_ba#F_9_Z&S3$iRFO94+eZ9( zUS<0ruL%lm-rvXlS=(3(@28v}9vaebM7ni~yI91B>L)$FH%EDo7v;Mu!Cq^m=2_fO zbOD#~z&<5aDmC~@w~*KPAo-#()H74OT$Q%;PLohpn$Qy5xHq63`YJNS=A9aDyQH{& zt+QfWYalt&!9NkKhOb^Lfp@H50jF%a9_$%cmS7hr|KODlZi830-V80rcp*&o#&3}k zHDb-Ka9#~fA&s;YUXV++~k!W*2FJctAXDnO?1!- z*nTpgU3#DUul`ovdB5#fnNdDc_W$?%9sil%6uAYY_i|9X>?t30^U;8I<(+@H#e0nn zb5K@{WkXa95th%{1IaYu02R++2nt6da8MNh3JrhLa0vLrvy#Zf(nL$sCIv5V2m_S**%i zzLt@a&`D+bk~wpDwb$8MyB*>0Pr=;TGnu^!yq%&_NK%oq5c7F#EYzk`86PaOhQJ&| z8sS@-C_nRQqyzbG3OO_G<_c*-%`)0Q`grq-(S&l=q?Y9(WikZ9#O)?=nQY0!l6>XV zmvnaO3EY%wlfYI@-xdQ)4Nuw;S}D96cg!t+CmGSOa|k&j16%erv}Lo6vbmN=N}0O# zPl@J%oDpATnv{WK`ALM96q#762Z%MRtGTK{Sj2%!Yw7Ihk(=~$>09`N8Jn+`n56}; z|46Ii!pL4SSZf0e;A@i)h-oWM-S-q3U&rfv$-rwD5b>Tkl4&R%s^yoU?)W7}VG-H_hRk%ms4+TB-?SEtTr1_@)8z`v7lY-Hb{=Hkj?K2-S)`P=(Vx%!_4i5LQS}Se)b|a<`x0Im@nRUgA}$O* zufOZoK4>|`YgvJA}Du(P(aJ#=iZ^FH4;-WoTkcCkc7S?k%BRr8cXz zYyUZcWE4rnoy1$!a67MEte9PPQ#>3&&Vp^YXDhwcIpOPid8As6wR=bBt+a@h& zBx-z2^{)~&w~-qQReSI`mh%d=G{c;DpXoHMu##0LCaTIh6*~5DtU$DIOa1#(o~TQE z)-UmMx#e5?)jGd&F|qo=mt>3xXoHF25&!et`*W`6`*|Ol%lq^3djdw+`~C3q;kqE0 z%PW$3poi!CHYo(6N44r54H}0tpzL8rDtJh9$#&{LAydUxn0_LoTIXvWm*5a-+*^b zJ7~#zBsT<~4a=Le{K9blr@cVf7g5T)MmVr;qC<)1LK$EcwT6#IbBH@TwsK=~K$35F z`L*G_=8$^+KH|OF+jPUz*WGcR*92QlNldfAYLjOJeMS6ZQMAC@z);a~!d&WN1104-IzB3j5G#_G_U_onrKl(S+v_Kq_Q@>WV|nJ&1%5y3_N)|-aOBQWdH0@WAOz84lsO0q2nOIh zgyY?!dLSEYws;?E0b+y#_(NEdWz>Z6t}j)Ycq&*t2sdJWaESTRikh9qg5Hj(1koL> zx3YRv{(h_rc77psq3>`U@eQ64N;Fb|6#b4URTHk6ErVG^{bQkS0>_$p{=%DIT}S+{ z*1JKnL?PN=@{l#GY7LVFOG1Bd)2d`%3&BZh3=-#tD5%k@fs)ZrY;T+grzn#tbDXEN zk3c@7a0ql0isSH2qv>$@kqMlFMV3#>0i;?2Y6dEwNp@BO!z&hK;r0G{E8gwZkM4S18184>D%l`sBg*P-*h!PM%91y~b z(D*ImImW%G4OPU(^E1SP3;LRMmL3Xy4dF+~LzXcPMLrnWnW*RY_UhCpESYVDNCzR{ z>S47c6t7iT> zf?X=os;6Qw2|%6qbyT$s%%iSBg)$+$o3#c?(Qcvv@prj@uJC5Lds*POH019AbL=|B z(Kvm+n?Llf9i%U@;O5>hZ>89tAnRz#&0`#^&+KpmOXJoU7D-hxlCayVC zQZ8YYDLBsJY_L{h9Qg1MMss=idqG>uugOiY(Zj`|b~eKIg-NC4uMuG9 zHyp}=5j8V48XhyJ7QX+nqCSPNEGd_^7LApxbfZSIJuPwZE@zJ%;a<*JeC~vIWV;>n zSe=Ad?leN>{@Lp`|B%q!X*5U^zTnY9Kx>CDD*HVO#+HSr2wfDX9D)S58C+Vj9Y9&R z?=!|18Z{x*9ylhx8VY7*kEKcwG3F2OX6dywxB!JlJ~r-3^O4+vjnYexJboUoX63eR zcGb+$?>II%o6v4cUe}5>vVd2!p%&}mwshI`IpH|Ker7L(nBVw(?3$8B)(a;?8~1t7 z5ZN%w2J2gQG**;_>e;8BaPsOZy7>Dxf}2WXiT>88A^NR6tSKF>tfyx_=SY7mRSambbcdAP^P z<#Ze&Uwg>d|7fV8UON-i*n$l^?1A6rIE~g)$w1d1G6=Jb6v4D2gFkIi|I6UHvJjwB zm?xqqXW`1LZ{Si_Qh@kZZA*p8{2G+Y99m1Tmnmpcyv`(PD#V3Qw!c6GK6+heIN$k&dxqng@!G6^7`V%{L|&nT1Ka7Lu73m=1o8*qO@Dal$9_J zEQeMPf{Y`vFzL^q(!A2s5s{cGiixj-^XEz1@F7hE%EWBwzZ1K-eeYF8<3SgHmc~+L zJU210_2^!z@P%K^Am&kWjjeC!6@SHp>@oW4%Gxh`|254k*8=K{!d4JLk8~FNx{(^l zH#yiF2lP&us2J=lYbtV5c;jfA8Qt!p1V1kl^2G!$dh9JGv$t@G0M{%}Q$C^_X&d&M z+^dLw-Id#_&C>2D7-DR>gxsLdUYiGI%l!zPsKNDLEZlpagIFm|Ynjxq^#{d{=(~-p zn%QiAv(q;hrVZ$zgn)f#kGOa#syJ&}eVP=*yNGlOzLw;1VfWxUt4YJw3U4P5E)XXz zABg~HtlVc3)f?akPVsL9Gs*y`5QJQz&&Sn}MpGqHoHrnA;!n1w4LI!RxU7J;nc>n6 z;DI;6y*rfFE8|Z(px%2NsnVxLUzTph7qqf%H60Ute~#!~Kg&8pDQH@~l|{k73rYwx zT?<#^J_g4DC%yxkah*-V#x|C;5O=uDq@Jxv5H}}wxy+amU+0CbuoYZq(UEK&d{Tkd-f<6EGKwh8Kai#7R>zVEwyLqQq(Ct2+`Wb=an`S zhYEDUYNKn@DbOR=D88*jA`I6#-O4g%hl%oC3b4Y3t*lvz1x*;%7tt)z8fRK)RMRm24Z zDVp&L7_=c_Lr_3hmue8J4|6#|3K-;}gkUKow96QS&3QbO-NcIE<^!^cEMqefEf6fI zm^+F$rcr%a9fL_k_6>pyFzV0q1?yuAtR1Kek__gAJc(U}XNl2=@c=qQ_xany!Ug8T zDGbM1Gl&1#ib9(OEP4(Zjj(r%ai63F{$|l6$qX7eyG6N8pDQ&iAq$cz&p!ei6)lwC3Dy&L0D$M%TtK z9JAlNSPoaRaQfgM>#3MrvUwsrK^9A#-eaeS;$eQYvQjhMybHb z&}2W4h@NY(V@VjMP~i_Q5Ix7hZy6JVvgX1so;z}!k{CAU-)QLYUX z<1A`EV?5K4zlj$3Uc8922w%c2 zn9nZiY~M&o%!ZNTrT#7t1?$+!tKUOfi53Y@o$>C?k-AI=8MTj7<}zwGK! zpQ!if-q(@Wqc{aE-K|BX2raO%&lJaaqG6qQj&ep!qZo{3jDV*gic9MOOM({`*I;f! zhzNnmL*&`h07y_HjO#7DiSc_S*yL-7P&!eD&IwTugt24}lM;CkmXhlGaPR_0#%Z_u zMF_Qrj+tIzC!>l3tQ3UFte#bV-z}uP__qcJ(pCulFxgh`MPr1y`a7X1WZ_nCdedV} zO3nJUG|S`-El=H(O%sW$FJDWq{h%dBAD<&}!_9I-^f9RcCO}8TRG0;08=c$GjU-G^ zD-BYViff<#1AL? zxh1@NmZ;)NBuv(*3bw!SXw$X$<^dZPeDdIo$2;ZSbRyT@6g)%K$rLI9d!j7GlJ-Qb z>N2x^U^Yxir2cfuqtMqyS(c+LK4m2 z@&;@_bM$MzX9XL+7!eyk45oEIeK^fOeZs%6wFls*zW{)lFaNR&uzAiM-o^pQg3v@F zjZ%eBg3bt$D9a8SuL$(FfE^40&HMBZF7OH>0mTVzUL^shQa&cLdNaZA)4K!g5<6zn z0oM}bnJnuiv3LByUy1g8;0T3QbNZ{rO`0z&J4$we&*$xYsdXsURna^-&;X7%0zqff zErv4f?g0-;{RV7DWJZh@#+L~SRer;)F=lGzAJ){$FTAZuP+&tNKla=Qgy{TR*V4>S z*a-|Ryi^SewO$B%fIM&NpWtZdkK{jQ>5tSu<#mbrTn%e3=NK5CXVoLl^*jK3kV7MH zsqfaA5!rbOmN`pG&f?^~^S2~qP>i-TN*1<$l*jBZ1j1wQuqt!-b-dh)raX8htF>hr z|5XyX)KwR`3eJgq?-;^%IpCp_7&vuEH$H@rYq*ehN4k@26Vebm zJvfvodjOK$zo(2hI3hs@GcZgTHDto99&;Hj5?HBtRC@VhQt3$2DmHd6;o{r-^r_^E zJ!$p(r~CCxIP#DC=sV^lxQTSqX8+$Ga}s#Z2EuPNXm1h{aEnNCCUZDp_GpE#yu8bH zmYw42AfK49aGtvuh`$#UBrI+pD4#zPjV0M)cA-YS!tvh^=3>K3=mRWP26;PgJO^U~X_o>Mv6=cNcYYjT3D zm5P|8YFS)Zj5EcObK)aTuX+5P1!r^Nkv(pZ0#)UqjsJL1KeK;8>zbbgGAbE$R;M^( z0ozukEWYc4Zk#=KINY>;r<4C61lx-r6Z(NQ#Er1}KyZ%~LF6(Hel09l($%@>$@{3*9OMe)L1 z1BK;uuIGE38*ub+s<1*O{mwJb`<9sJFZY~#bWLp_;L?Pj=L7?h=}X#tl+^Rqk#!GbHi|FK?o69LPFe?m9nb;(S)SI zyBLAWaB<+{41Yw})YpFerJtG`Q}KM)!;F_RGa_w$o3EEq zl=}?q$hUoebLln&co%&frUNC1Q*G+f;YclHZDJbT|79 zfzbOTKK^-7-AYjV!TS|0oe?GhEKQVJT-kIzYm36Ot8AH@PvU$39^CtwOhdxDZ`GRA&DMiFtSC6@eI0@% zc4ozvGzP0Tq)2q=b*|>&*WdF<#X|sFIy$AOD+Au5x?cN`J!T#kVALFa#v=4`#xSIW?g0?{* zZ;DUjFQrqb9qEDfzc3VfuU}7d!Un>P`nm!DNBY17hT~{igqVa;IuYh<&Eo;5k5_D7 zi0mA@QFkH+3J4d$&r(`OC*bMV?@l#(uuk*jrJ=iOhrSFj%q*)FlrQXPCSqpNjf;qiWY=Z(IQJ4~o7@u|LY z08KC*097jFtuEkXT1ybiK;YSD;84+`6Ew<1c;o485gJB#vM-IK-l6r%Fc1#kctBWjl{%JS}s) zTu5p}Bao$%s%lbKChx>{498inF~{zJv*bsgK|5&|c2 zJtH{9@QyC07b5B^8*!`u_4B) zP&zbh5V^_IpPtHcAy zCZ2S!ZUYcbEY!IJ4BLuA;RF=6UZKuI-z&(XDMaR<5BkFJU@ zeT4vLBe)EAcLdf(5#Y3p=Pi-^@e9F zf>25nMlA4p_G+Cn?i>-#Bcl(}8W8p`0QMD?HKp4~K-e8!j0c)1A-mb(FO9V^GauO< z&2K>9%vOl)b^@Ydiuy(RCCekfl7moBfuoNhxnwlyWz0nS(3aAlD0P?RMBOGa&5RLm$?{ z$eS@K_*NkVQEvDF@^aV#3M^b#2Rf~>p;*Vr#fA*OvphO3V_qu_M^#pf^*S!Q^%UGw z>eD;--YbXFokLu0i^hK+Kw?Rr4S-_($&l<&(*_wvvVx9jC25I!3xM`08LiBtSwSb% zHio~oDK32q<~xdMeuZ;c#m|V zkE<>$Pn;4g&%Lp_C*+5rH92cEE52~!v=0dn>svC4$l+DU`y1=;BP2RQtRH(~Qr&QT1_u?Ka0#Hn#Iz!knxQ`nH&S&&nM{Z~1su3pe6S)*qaDxlJf2&{Mk=+Ukv9UA zUNu)h$o~LxWiL}&^J|x&_17r|d9(gx_OX?|;4m-xxjM{s0{#>waEqMyP)uYgImsv5 z>L4Z*`PZE@msJ+JeK?r!E^rK(+d{baxVwGr*N8zDyG+rpVm20%rLy+x5}w-Bp~pYJ z3<=75PSKVE|3YYrc2uVheZHk%SD0(y>MwWS)fkG~_rnAB3*$d26A$CKO)W`}DuQL@ z+0B*qVXP5@;K%9^L|#IpG6N9JsD0I$G8G#8l9nm0dQ6sMeH;P2zRQ$}%AXEs5;!s) zlT`J(+}#Z|LPVqXg>9dz7)9Zb@^wq*Fc?mC8!=b|f}~o;e~zl0N0z9eASX*H!yU=W zq$?@c8!}flG&C;0Gm@Z6TF+N^{ObyL8Hap)Os^BAUhJS}N${uPOH6>Zg%Vlb3+)ye z6XYcnu)rbfwN?Hq1=K-LAX6d1qk{g+6pX*JRP4Ou#oHlJAnmNxWM$2*^ZVCvCF?!C_e!zK#h+^`nkzs)s>cV9F<3tGz zN!0v!uyT zU{?Y0Q@HWi>4M(8$RofxH! zi0R7@qxENiFAkhS{0fpr5dqu6!-5|snm{B``wBGKI1HPRZ={FR+(Vc`QE6naMtM@9Ux|i51*QApNiumG> zCcF)*iQs^4j+o7L_Y&Um^b+3k^itRe{@arM`E?fc{_*GQ#pMi%F1Rk*Te#`z>x%e> zPo$9(Nu!ibw`8CrrPs33If8^oXy))mf%AHZCxjp$t=P+?RM2tvX!AXh@*S4_*gGhiqSdPz{&;T)%}2 zyuRES6y!RFup{6g@HzW#z%oCx{}Lew5JC6cvT5qeDdGEziy+cqvwq~+r9XBzSCF#O zcXlABC$$yB!9gr>Q z5^$>WeEqCk4!(8l}?nE%#x8+QlaZ=KDkrkFYn!Bg+mcZcybXX=HP1fn?&6UL^Lz* zNPo`ua^rwcRe#XhXVD;z`cPa6wrgf1=D!r!_t^}cXjAzJqh+UB0-b0&VCrz73^xOu zoNyh17ZmEYXd8$WpNDD0#R%QF;%HNZ;%HBJ#KrP`wBlk4#^Lxo(%^rASrn-uz!^hk zoqPRS`^DwEPe*~@hgMYB^zU~}C~;hj;`A+l2hMNzt5|+c4+d-K1%>Cg-$~C;T|@r~ zXA5*#gNv_T-EcK}r3yj;78Q<8>_CdQ+8Vh#cw?S-d8EJjgnZNnIQ0xV1}u2jVk^|c zrNuD0^{oPUkkfGK3vk>TbY#WqcVxZL>&$qj#WdNrXrI7q`-*CdtH)ykf((PHM zFaH^^E4Eq$o4JQ%_gtEososoJE*^4?D z6J2I73g>SyI#X#fYEWSU9s@JT%OFSnF=WbcohTk+lUp=8;+@ct=9-OgJKa|*HSZO% za9l|8@)Ehw4UTSDJ2xaHzRN%c=LsRu9T2iUcIxLeCd9ubrUNn*77|OpFLCfkdMwcm z5?PXED+qEPiO*o5XGkHb+jc98koBWhupIH?9N-)WCEuW8ASKVDV%ydux(cFsRAZWTT9N{ZGEs1Ckgjw+glV+zdU0KxeJPlFh_7^0eli>8wso-d{43+; z@4cC0`g1=C0$5m?efm!e(P}mGLfZkur^Qivj;-2s;q3X9aRH|X1%9fEZyV!?oVOwXvUGV zQ+0^>7p}88{R%Z*jn!({|7J6Mhj78Lt`OCBQ)z{X5{~1oi8X!uaMNd$710mILBxyO z1A?Gig^rw|8Vm{j2+={2gAXO5C4}>EiygzeXNr$Lh$9*dy^Sb9 zWJ3>H?KViUj*K#MXY0i@6Qm167Ofa8XTchgAlDfhrxfb9-~o$<=3fhh7Fi3EvZTlP z<*P9vpB%+kBiGV=pP3v{>+wJG%#NXO6tI})Lo-pDNN##mJ*6sf5&df0?hBMxA9!AXI!l#2L1F|)n zDi+=pD-qz?WbjPn-Om%Q^V69z9q0hpI#5?7as*X$ZT2Lj_N1W1q&#OB*9AE z=SVc!EEf+q4{|3@p~-0Y$LL)~zunh8Gor&5wS+VK)&O?PhdC!apf#=DKvEVDVuXRi zT@qvTcBFA|jEam7g;*`S%OncP{&3qUDJ79DL7}LIuVm}bjbg86274JOSs2PtdJ)Tj z#LCipT5e$>ef(&g{zB~j;X8utJ||MjK?L^JXfZ`V04g=m_2j3?p*M**@=R7jtK(@^h2pL_LV0&B)^!-Ihrb@1%1s3MrweK#DzESJ(|@gBl>u1`Dgd}Zeo@;2 z5L(^=zz&pwkY1{Zyk7N=DgxAjQC#Y=iEH7Oj&uw6)q`5tp}_3>a`xh?Z0ebf8vT|t zx@R*Syq1I}(ZON4GgwMgAYA{op0HFBY##VM0O<)M3?-u?kh zb=3&7y}WB^@KfRv*U7grP{V&sz}9;^pqt6&VLt}n&&;1O*8HOzcX=d2h&&MQ^{}yF zw)aw%XC8-4Q^j;Qj^2Vdf{FReJm!uSLoqgv9h1xd2=|w`HUQ_0P%RMWD<5QlomAKY zltWQCKE&sF?GK*eqV4C?jr>h#ec7M-V}>^=eb$hy9A4Z^oYv1p@l@y2^R-2*c4E+v z>dO97$f66kt4C%ESL;^he z;|}PhKO4OAiDjGoG6gokEJ_UEFXiDK-EuNb*WMS(R|0vY3T!XsN)Cs-&XhgimJ12l zKrBkmogYi(@7vy%1=qJqrC2Wc8Ra3{-WN-XOEy9*O3|J2)5?dm%1q6VZkxXyi{~@{ z(~Ctp@#xDv?0cJ|5M78xf?rLL*XvI@d zd&vu!9e4%X0jGHjYwk92l!~oM{CHB%i~`JEW58uqt1W!XsFp)3(#=5 zKz>n6iW6E+io?!G{W`?Wu#cQM93n@ADe9Ggr*$teVL0k6*u^IG8~?`A_UbhkO7*MU zWh*1N0TEmF4B+dHC#o&haBveH`{rohQ6I^82pIs~av0eUXE16L#4l{kfr!$HC?qQk zsu4!Y7McGyfMR&rUi8{uBFZ_YD2{kkq>Gg-^9bB6`~MrZXjl`ZJ|$!-dl4 zP?_9!N>OjDWc8D~dlgu&2>@!Y2`L#aC>3kZM0cheMv|ROn_1UE3N}%n zbaT7zGrLh4FRrv?I}y_bre$W%T+TVci{g|==T~D9-9P`dwy1TthIO>%zAu6gi2@t`-A9i14S&l*M!n9iq1dke?I{gZ*w^{ed+0HCIOF5C&9z{~+L4>X^rCg7pX%szM5DxJn1b2>kl6gvGYW`{=vfSTC3lIJYAR^Tl7 zwS)?66gsZ10VTzjuAMClY-*LvZsC4gZEJorqs|vwpL@@!pHU0Pd#=a2b40cgvmi^%FK(tm5Oe`}pRvop*C=8w_R%L9B}eLjb?LjUAE zaol&C!K|JAD}}}8mVu=sVl;F|>;hbjX?xn~uJ5IHI5kW`x*~_S2EyiY^ z)KvXAX6~)1$3#xwJ86&ybs~AG9K=T)qBOO}i3CWbEk%3^I;S-Gsa zT;#g|aKhZ6*^l@5c0H(8tqxw_Tk4&z z=dWEAdAM@+igTY9Z~K=7t92t6vI?|TEE(dZA@0==H9*&mJ)fSD;h4{$S%TrS78hUrkN$eLq+#Y50s0LfEFm zm5gCFs~!TOt+So|TRCeT&7|OG#y3FPYLFAO*>={Y409W`GfrSn=JB{}KBaOpXJqaZ z-0ypJq}=E{JS)@liFVae>wBhD_du1uv-Ho6(=zkXEVEE+!zUpIfZ6Pv**YWZMB(po zQPZR>pVr#d~1Nm^usNHqp_J}3^myDxm0*_5j#D426=HC{l9qFPNKWBSR zt%7Ipnd z!-RXeWT)2ZuQSX3)!DE;l7ut+cAiOE+J;10A17AYh0$Icd5~C}TTpu26xgls%fZ`?X_9B5X4Cm^Z>mtCv$Yr z-BVK;eN{+f0sa!E3zvl5BqyetgqaA5+ev_vGrAM4j*39Po7y8Lm@{@ZWK9q^Qx&%j ztO^^6j@EE#Y>9I6O+^fm^Xt*YGvva*sO2Mj#y4eT8eOI|De!HZ4a-;Qt5pa17_BIk zXT^Vvp#G2jCRCbvx4Ug^O8CukFh4Ma8JZWXVsEhAm@+wx!`McRJO+~2Jdow;e9zhB z`*A@O?{OkAH60mxSfBWuS#DySiD&tb_rmj$Cmf=eH)GaQ6;#OS3v=Gh%(SYvQG5yM z(H$Y6s*DsGM%TqY_+_aysVA_XBU1u?rJEL#Yk8@C*pGTg&U(HT0DKa6J0_XVeEY;4 z;rYj&MRc?0cyD_VpGI`QsaGXOJI|&O9|V;&l67}(I!kD$eO}{js8zbfZ&0912Ap`1 zl~dr(xh*S+XN>hkS?R;TfF*C+lJR(;T=ZxBm%`ASLAH%S^zR2Ivz_8ujt5!=`qWC* zAa}idi7CX&?m_DYPM9ffXyOs-<_YX6vr6fqt=2xfsRXKoey0vf{+)fd=`JmH3P7~w zA`o>mIZ3~2Aw{68a#E5$1`9%|8(AwXemMUASp4o@JQ=ATr{Jz zbNtZ=REmiSALl}~t>mlNrt_m{-Lyo$9bZMCc9yOm>#x73P29R|z61`QQYNaUoF{{9 zx6PvbM>}eGo-{vILYgx2A}w&}+^*ABUOld_=g+2>K0(S)hV8G7={4UJoVD-O%S4KN zbiy=}t9s_w`2*ECtK^m^Sa4Hl3LoVsb1y7o=cn{APPZh@F#hI3XN*!+c-1m8RjC~! zhLh{^(klZ-*jl4w%HxzmaU5(*CLgj9m&u4PhJdE}}%VdVN4 z_j5~QSPJK3f(l=Kmj=Z0qS8bRl!XecG+ z8JcNx`pE_tm4Kln1t~prCDBR%l{KF5-qkKIf~q%@Dd&oogPJ+4CBTc1vbl?zc-OVx z29Ouk;26E@b3@R1IaE<^?*?Wli(G6FxZ6eY`SMnCjWrhFmG1T(!MxNZl$)u->!_fyYIej&bIsu z{!-Nr=xHvKnKm|QZE$|E z%|x&XZ6*qvyrl*4mrlZ6u*t_)!dTF~f>6)XnEOh7J`MKVDuS>6B&iJjI~6)TmpJ+yjNf>vcfTrnxm z8TW4laf|mI>64Sp*x=Fwr?agY=~EvOiqwS~rNZB=@8kZzGB%tj-|zoI8uL;E+liX@ zi?FT_9uwgXn3Mhcyzq!e!s)8|L5Zk`ikZ`*tzv=$sFZ}ss9sIfP9^n~D2cU6x(lU_ zeNEXDbaXM)11?^=dyo03X90YAuP&_ej#E)eZLc)v;C2=43YIbH)4i`uXj0GFR{5L};Y-Y`nGO zSnJMU@-Cpa|L1#_Z})7U&e!d2Klkt&{^t#-mz-tCgQ~Un^ZR&L&*$OaDf-9Zp3a&f z{4tsiv=+tdPVd*^wcMnFFRG=iiPh82Ty^tUp&FL=<#6-nid02wHCyUlsMwy~_uYZr z_KQ6<%XUL4erN_{TEIX-EeMr!pXLF6YfWEu@r9ih6)2bkAo$MU_rFkdF}|mFAu{A~ zwrsJDUgOddCaRCtD`V%H`@58E-a$!NvIi&&wpwX=u5d{LF2e)8nAyYDgQlD&@O=*# zg0xSVf$$lES2sB}-^hM|1Hi%usiri%7mV!Pf~Tjp(X$&GZAO^(!7~G0h9h86z?MOB zKNpN)Jz0!s4&n!B;Ah=Wn@f(zP1WS5m%iT5eUdE?+v{gkyadNqI=W)zwe(_m{>>~p z8f1X)C=#@HM@K|*-3?V8=f})xEI(ctVb!Qf~0FqSV z&yIo7?o&3$t8cJ640lp3=XidS$AQ2mxC9{Itw1Y?r_9TqZONz1TUz4)5qzcr#j0u~ zYIM2YXDtg3=K$7KsGfBlLiIIm8+sSNW=^>}^^Q@!P@2cAw`oP~J~pKrn2TaokYhZH zvo_E#8`x$~Ahg``RvL)1(wRJ6CL|i0eDH4@x^{-TA#DkQ0ln_vKfcE_q679I7lSBN zbLrnvnGeldQ>y@IQV}ldekyA2>KVGW7LMhM3vQ^tpGA5SRNYx*MapfQ#xBMswE$k9 zA;lIEwhm}Y&e$*k0EKyNI*zur;cbPC2$*`9QrOf5z}%vI3uY6b3Yd&Ba6k6)#Di|? zf6?{L(U}BGykBhFwr$(a#?BYpwr$(Cy|KNqv)OEHC;M{myYJ6;&Qy0#_w@9fK}~ga z)vpXkA_4FMPdPU>R9aK|*gfQ+zX@?2;MPGuOc2VpJ!{ZG+W<2XK2!JDby&F^m;Glj zu;|@c2(UgIwni`aEf=>;OabC~zAAKkU*rxHNYwKk4e&P%?COh#2BMWtV8C^d>F|3M zBj`4}q6+cCTD?iG(+$!>_RwD)nQ(!d>HJp_$lY7P_cuq!?Wt_= zI|Pio9q8@bzS+W7H3a5)pkfzs%y**zk=U1|pLVe*mTMKvlxUU?CyI0j+7ZXJ#%8sQ z0};VgK`2_JT4BGQ6G3P~j{ML6AhKT0^!KMqb;9i5!k62D7L zvgEFiK8A2#-GHLBcanEDph{*9*~ULrmd{_BnX@qZFiV!6J%4)B4ASnvcJ8-hJc)Fl z0I|IEY-I`5RG35F`$Tuz;XTw2(}miCh%4RRvL%Nxn%Lj1O-l9Q!UlEEUN@X24m#& zU#fcWW&R%2*kbGVldb=>e4B(_Km0K0;gaKmt4Rz^iY% zv@HeQ?(awfbbeENOA^4fH3`uDows%*A-gwzmphV9v5Vh35-%zuD(p&i_S+h&$Fw%J z5SYOmY9W%ErQIys{2BoeBBwAOoUlCJP!ONzxr(b@sohSDKy9CJ3p#xWS z(g< zpp@4!95K*wRH4l-DC!0B*A~o?gZa{2$QJ|TA(g*nAyppv8j=9&`=Eo^;;Te`l7M^0 z;|*fb(>WXP#y%17#u5?mg*=h($Nk^3`sd>Rt6zgI^a-haD_N^7e%<|PiwxrWhvWPG zA+G)!u>l|azg^Tnqt>7Uhlzs+!bQ|SkH4dC>3$Ci7|Dkx4U|yE18N20%p=V<{Pt{& z1hjYjmvj`NVxWzDzDX+PdxV(EAoeY7aR8r=IABLt9PnL6cv#pa1>OH9Em1WI22ub4 z18LwDJt?3~nJNa__`7>yU+E;N=(;V&(9;+F`-gT7HKbO#id9>IWgtu?Z!6JE@n!;0 z<Z{0KbVnCYvu)Vm2>JVzx;8I1XWjKU=~Hlwh_P+hor<=Q~T@ zvo4q^##Y^?wj@i5A~BD&odv4E8>w|E$7!RB1-IaOVPYe(m@%1H8qtU2w-ZveP>1Jo zCI*IpL!a4k#t5g`F(g6-%gD|oQnpBAAK%9tQw~dO9fZa_4Fo^`8JL;=<|W;e>?THy z?I?~ryPTp1yz7#)1a@S{IUAhTS2LX5Eo`-R=wh8FFC|I1#- zf1n}^1wR@RxIEq;8}3Uf;J%u!A>37z@K!n3-8Z&KV$dBJ@Isx=zm{^qEi_D6{Jn7c%Zwr$HfeeQc~L(O#i9U=NC zmZ{AWSR!A~y^q@^NZ=9;Moc%9*ld8FN7;X$AE=~4{z2mmQW=&jx{;2);lvX!@Pp2- zZn#LTv2gX9Ss?Vku|u>$26Zg0bgZQdLriEPX#jEprS^$XjY}@pXxSi}-e}YdV8SEB zA+{iED+FIZ(W(Y|*SUsZaA;Ubi7xi-<=yw=MNF~0jPgw)ESVQZ=^>10-i?026Sr1C z8^`7%+KZ1fv7&;c6Bn2o;R%-=IgKPj6nf4vr-ET)8%VFkyIg)ed_%|u^;%>~2wAL8 z!P{ahTUcUi{4mkltleN9ARV_wl_=g&gxmq{v1nghp&w2%e#MSaz%0#<<2v9`%*-SX zd>B*d^}+twvv)M%MX5I;(A-Ph7|KBq6iaNK`yJj~VNc=7kKZKi%v1kW^o{w!Ae8pw zpEA}zWWieh1I>_%RiR!V*KXs-s^3!u!jsm&uRhO+1m$H9lUeg|D5y*DHIkWOrNJEG zM~dR|sE5}*24r<@`hTrR;GpFNynI9Z>=gKaqgZ$p{ChJTc)#1)`}b_g?Kewk z@bcK;z#LW5U)$YZplT6*B5rj@W;v_OXFp>->M#tRuO62QX}VX&Zle$wEDo)C!xfP{ zY(2ZcKb6T_lYF9rtDUyY4_jxVp$1323oL_CMh?}q3XX%jOXeW2VO+>gO69hk)l!kJ zkPg&(7qJ1oDC978p}q;p!W~qNFUtBBLBcTqw2hsptcizU1O_S6Lizx}E-|S1!O&av zaKS+q^6i@-RB}F`t(W_0lGl6_f4AVQPdKqjq`d%Xs&QtD;}BU+RqRX`Ds`;(wx3~W^`e&>jYsVU! z&{R~L#p<4)$p#FlUL@mt)gHxRqE@^?7!0y(;9TBQ6)C$p#TJSm3;)IwOke2hop}hqs6f}Lc2Js!vl(0Pq5FN=!PX=giVX{` z$fQ=ZgVB*a6!*&l&3NGH9;W=cIrqZ*;?rl&=k^i;@<)x=cl5(#z3PKY2O$Z_-I#mE zX)O1wo;E_zE5>~% z0i@UY=Xp>vgOfEiB7Fa;sXYrdfpDs&AN!=SG_A!qo}5DuQ#SH6J(%W{wI1#^zP6+y z3mMk3Uw;PGxYH=Js0dnYcJ@-FV+1}Z>2fOz2u{>rL*45stNYJ{wil_7R{tc($BhjA z@P7b_o2I4Ie$M~c-VenZp6!X7V^v__k5rsaszT6hbm%L_*<1k5fKLZ<-IRs6WkHuq zQNH{U<)r$E+yi&vK&3YYui<026&O06S#bgueS<{H6Z{Z9YQ+-|y*;>xd-o@9V`qD$p>h(cqP2tarh9UDeodZ)y zbR>$Fhp7Y(m>H~~wvSv1HM+XLbOOI!-|tjo!hzoLrI>1HehByX6XD#WxTd8oEQo099ae9bu4L?HF>{w;uC5T0Y? z=#W*_b7{IRWG3l5bzX1Re=-82X-cN?R2|l1GItnWLUCI%=fUX>aVxd1O5<-#fe7&%a;(7ln@c!5ZHn~w2o zXpXM!wn>QeYG+@g*h|#rE;qP_669+#$1zal@-!R6t1UaeBw!?cEevfl@Vj;K1Hn(n&Qu!Lft zVEkfu+~kLq9+KE8ZXj%Khgza7WtaMM7rNKog{lU>niwpB5-nMzjgjo{zwz0^bjj&Q z;ecSa#cr_c49lIHrL`+cf6K{0tU|HYy3)FOiuSd+Pd+sN5$6=wu7z{Y!`Kj@j` z5o_eRt0y0`!w8-nryzS~PDS-m<{Pbhp0^@F%yY1#X)V24Rq(Kl;sxtB@z{IQ8lN&F zXwW7!sjiUKi^p{S$fLF$(glnCHkE+DueAHS=zJ&v{Heer>;q4lGy(}LFw@TV-o>E_XM~ysrWw$4iAAM0faQD z;`B~z6@(k8TrSs13{EXmgsZ4rFQ+j6;tsI8ywLf`^ua#C+6xOIr~*wS_K^@>;YN|m zaMXVj2MN?37%pFDqhyX_(8S_~s7_L>6m4nGv$VYF{Y(OemReQ7^OnnTGYg)Gk}NkX zM5T9@lq}f8;SePgV8LA2jLb|^$J4BE({TdimR-$LnOwk+tYbT8-1N*p>YxnsNDi0u zJ3m&Y5;|RH7?L`3?e%#7rAzA(czND9IDWk*J-Vn{SGS3v!`LLn6|8!Ata)LLs<}-_ z@$|l39rz|jVAwt=pwkN!2gmu3K!{6A2^~VwkAj3&+{1~o zCBT#wNzvlKi6=SGW-&sRYg>zs0JN_*#qg##*(aI@5hAJ9CXWbB-yp1SYFiAWg|{TH z@Pp*Z?2z&cYEf+4=GFi(3KKi9K&Pn>E$e8RVf|qAKp8FhL?~vMLIid&^(C|{LcnGU z!zg`s8lg(ZCYJ>B7E~-hDnFZ!*`Vr>`t>)i;LvcG~!D2l*knNZ4WYz1l zG_A{aAFZkiSgF>bokbC{3w^5kgCUD zoK-|nV(yLq_=+yV)L z6W4Ziy9khAZv`L@fDiF@6?6}ufS=7R1gK-Jyo@-CY%GSuSUus6)0zI@`QQR0 z8lGoE=E4`n93OULpJ3sa53$#nuqIH3&L&Xa0b#L#LjU=MNDUsIxooEsSn~7Ls_N=A z@OyR)64sap25amCg%0|COkilLy|XZh5fHM&3l8tBc0Sec9BVB25~Ym_kOHcJS+?{%PfJFM>Q zcQ*AJ-!0elu0*|zLj^~q@Yx4^O}wgOih0X;L#oLQPhY~XD+Qk2oV}kN^$njNolkMN z$DRbdO)7XO>4807KAaMl{;B!H4fLpQw29^Q72ZRHlDd;8X5~aCk7uzY10~@Oq=an) zg%@)JA5N@oNJ1b8jrvh5*&1mC*FB-gLLJi}fE=l3!qF5J#(W#O8ajpzGD)P_1Y|q1 zJ)HgFAE-x(3xnI5{Xr$+^j3!e+||)gsRZ~w!z#n-a~&i z6_Qq+iscK<$}5Z%=s`wF0FH{q>#RhMv{9o^+Byo5cTz-8c#CmrLW`@d;EP+W;HN_! zOAOP#@eHd2jfVYshlk3#k%#Aili{}*T)+@\+&bxxo7C=>VcWW}eOC@ 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

NK1qC!2i}D?k zx2{+!@>QfFU(cJmG0unNtt)oDdD*^0n(aSwXlw#x zc3vq1wbx-K#@8-`L#yQh;r6%7O_;5^eq{p5s9P~YUf31OguaRkydBakzXVB6mz(>D zq!kxnJ6&7e1MZQ#VoA~^)iP>>tL3)T6}wlwY~LZxTEjwm)fLMUzKTnSovy7c;T_Ve zq_My}DV5a(AnlNvcBM?$PqpvSMvlxl!~~N&kw<9k1f*bHu}tDCB~`zR|FLh&)j$fC zH1;Xp$go?LhV->7c1w0Zr61$Uk=lGKR&5?zV zl^eT5YMM0mDc;Di+xZHqe^)H$IH1#3ZtM=JY0_AaHp6&{!60Lljg=@m{XZM4oIERZ zwZuctDGY+;a#yyp|9?x&?r;O0YNI6G!~HQi*6Zq%U4Ll6G8OaHztf^ z$Uj8pe=<}iD^b%Q0Qs(z`P(C~Qk++q>?w}r zVIj}%iX~uQ-2`k@9LvMPeJj$~r|6bp8;S#~u2=&0Ra~{|@zq*ULQ3BiORm1U$<@eL z%X32}oHX`HzM9F^J0xmdvE=FiU#*4Dfj!;Paac(}8wAJ@>}L7n{4^8PI3G z$lGmafX{sN=(aP!=WT$`d|R&97hgW>erJHseA%ko&H$g^TrLW7=gURiz6SWb5Ab;( z;PXDfXTF5d8}l*1=VO4+d^w=o*ML6rWpZvi1AIOP_@{4Z87)d@IS-BGLs*dT?S)^d#bM(qUTZ>nMGmsk16frvZuOc!M{rl zq2hYwK3ZzBC*wbU#|cYUfv^&iSh)Y?@h4i~{yO|6{6GKkUw`=Nk*&t-5A=2YLoGBaAP9ryqnF-bQ6UqMYiJk$vP~lJlE&Q* z59ccHr}Tzr@lwLWzpKh`BfOWZCL<0&%0A(XV*Yq(EZ%!Wrf&KJh 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

kuEk)& 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