From da162ea44df3e9cb3fcd6ed8ff9c7a1ecd1140a3 Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Mon, 19 Oct 2026 19:46:37 +0800 Subject: [PATCH 1/6] feat(content-ops): retain cloud footage intents and verified local outputs Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../capability-localization.ts | 4 +- .../content-generated-footage.tsx | 115 +++++ .../content-media-workbench.css | 4 + .../content-media-workbench.tsx | 16 +- .../protocols/content-ops-media-v0.md | 61 ++- loopx/capabilities/content_ops/README.md | 10 + .../capabilities/content_ops/catalog_entry.py | 15 + loopx/capabilities/content_ops/cli.py | 2 +- loopx/capabilities/content_ops/generation.py | 271 ++++++++++++ loopx/capabilities/content_ops/media.py | 53 ++- loopx/capabilities/content_ops/media_cli.py | 27 ++ .../capabilities/content_media_generation.ts | 146 ++++++ .../control_plane/effect_runtime_handlers.ts | 2 + loopx/presentation/content_media_api.py | 16 +- packages/loopx-media/README.md | 109 ++++- .../docs/footage-after-desktop.png | Bin 0 -> 201386 bytes .../loopx-media/docs/footage-after-phone.png | Bin 0 -> 45334 bytes .../docs/footage-before-desktop.png | Bin 0 -> 106845 bytes .../docs/footage-phone-download.png | Bin 0 -> 57612 bytes packages/loopx-media/extension.toml | 6 +- packages/loopx-media/pyproject.toml | 2 +- .../loopx-media/src/loopx_media/generation.py | 403 +++++++++++++++++ .../loopx-media/src/loopx_media/renderer.py | 13 +- .../content_media_generation.test.ts | 87 ++++ tests/test_content_media_generation.py | 414 ++++++++++++++++++ 25 files changed, 1723 insertions(+), 53 deletions(-) create mode 100644 apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx create mode 100644 loopx/capabilities/content_ops/generation.py create mode 100644 loopx/control_plane/capabilities/content_media_generation.ts create mode 100644 packages/loopx-media/docs/footage-after-desktop.png create mode 100644 packages/loopx-media/docs/footage-after-phone.png create mode 100644 packages/loopx-media/docs/footage-before-desktop.png create mode 100644 packages/loopx-media/docs/footage-phone-download.png create mode 100644 packages/loopx-media/src/loopx_media/generation.py create mode 100644 tests/control_plane_ts/content_media_generation.test.ts create mode 100644 tests/test_content_media_generation.py diff --git a/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts b/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts index 94e7a3005f..10c6255377 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts +++ b/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts @@ -14,7 +14,7 @@ const capabilityCopy: Record> = { en: { codex_chat: {displayName: "Codex Goal conversation defaults", description: "Choose the native Codex profile, model, speed tier and reasoning effort for new Goal conversations. Existing conversations keep their original history. This does not start or reconfigure an active Agent Loop, worker or steward."}, decision_context: {displayName: "Find evidence", description: "Find advisory evidence with a temporary private profile. OpenViking and BM25 are retrieval implementations; this page does not save a binding or enable automatic memory."}, - content_ops: {displayName: "Content production", description: "Prepare source-backed outlines and local videos. Review the result before sharing; rendering uses an optional local extension."}, + content_ops: {displayName: "Content production", description: "Prepare source-backed outlines, compose local videos or generate cloud footage with the optional media provider. Review the result before sharing."}, goal_storage: { displayName: "New Goal authority", description: "New Goals default to canonical SQLite with hard leases. Choose storage and execution policy for future Goals. Existing Goals require a separate backed-up migration." }, manager_runtime: { displayName: "Runtime", @@ -83,7 +83,7 @@ const capabilityCopy: Record> = { "zh-CN": { codex_chat: {displayName: "Codex Goal 对话默认值", description: "分别选择 Codex 配置来源、模型、速度档和推理强度,作用于本机的新 Goal 对话。已有对话保留原历史;不会启动或重配正在运行的 Agent Loop、工作 Agent 或管家。"}, decision_context: {displayName: "资料召回", description: "通过临时私有配置查找参考证据。OpenViking、BM25 是检索实现;本页不保存绑定,也不启用自动记忆。"}, - content_ops: {displayName: "内容制作", description: "准备有来源的提纲与本机视频,检查作品后再分享;视频制作使用可选本机扩展。"}, + content_ops: {displayName: "内容制作", description: "准备有来源的提纲,使用可选媒体扩展制作本机视频或生成云端镜头,检查作品后再分享。"}, goal_storage: { displayName: "新 Goal 的权威存储", description: "新 Goal 默认使用 canonical SQLite 与 hard lease;可选择之后新 Goal 的存储与执行策略。已有 Goal 仍需单独备份、迁移。" }, manager_runtime: { displayName: "运行环境", diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx new file mode 100644 index 0000000000..ed3c593915 --- /dev/null +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx @@ -0,0 +1,115 @@ +import {useEffect, useRef, useState} from "react"; +import {useWorkspaceI18n} from "./i18n"; + +type Footage = { + generation_id: string; revision: number; title: string; status: string; seconds: number; resolution: string; + prompt: string; model: string; task_id: string | null; error_code: string | null; + estimate: {cny: number}; reported_usage_estimate_cny: number | null; + quote: {source_url: string; checked_at: string}; watermark_requested: boolean; + references: {role: string; sha256: string; source_ref: string}[]; + result: {files: Record; measured_seconds: number; frames: number} | null; +}; +type Library = {ok: boolean; generations: Footage[]; provider: {status: string}}; +const ENDPOINT = "/api/chat/content-media"; + +/** Same content-ops workspace, same Goal. Reading drafts has no cloud effect. */ +export function ContentGeneratedFootage({goalId}: {goalId: string}) { + const {locale} = useWorkspaceI18n(); + const copy = (cn: string, en: string) => locale === "zh-CN" ? cn : en; + const [library, setLibrary] = useState(null), [selectedId, select] = useState(""); + const [busyAction, setBusyAction] = useState<"submit" | "check" | "collect" | null>(null), [error, setError] = useState(""), [watch, setWatch] = useState(false); + const busy = busyAction !== null; + const epoch = useRef(0), readSequence = useRef(0), pending = useRef(false), checks = useRef(0); + const current = library?.generations.find(item => item.generation_id === selectedId) ?? library?.generations[0]; + const active = current && ["submitted", "queued", "running"].includes(current.status); + async function request(action: string, item?: Footage) { + const response = await fetch(ENDPOINT, {method: "POST", headers: {"Content-Type": "application/json"}, + body: JSON.stringify({goal_id: goalId, action: `generation_${action}`, + ...(item ? {generation_id: item.generation_id, expected_revision: item.revision} : {})})}); + if (!response.ok) throw new Error(); + return response.json(); + } + async function reload() { + const scope = epoch.current; + const sequence = ++readSequence.current; + try { + const result: Library = await request("list"); + if (scope === epoch.current && sequence === readSequence.current) {setLibrary(result); setError("");} + } catch {if (scope === epoch.current && sequence === readSequence.current) setError(copy("镜头暂不可读,请重新读取。", "Cannot read footage. Recheck this workspace."));} + } + useEffect(() => { + epoch.current += 1; pending.current = false; checks.current = 0; + setLibrary(null); select(""); setBusyAction(null); setWatch(false); void reload(); + return () => {epoch.current += 1;}; + }, [goalId]); + async function operate(action: "submit" | "check" | "collect") { + if (!current || pending.current) return; + const scope = epoch.current; + pending.current = true; setBusyAction(action); setError(""); + try { + const result = await request(action, current); + if (scope !== epoch.current) return; + await reload(); + if (!result.ok) setError(result.error_code === "generation_provider_unavailable" + ? copy("当前 Host 未加载云端生成凭据或扩展未启用。请让 Agent 修复后重试;镜头草稿已保留。", "The current host has no available cloud-generation credential or enabled extension. Ask your Agent to repair it; the draft is retained.") + : copy("本次操作未完成。请检查原任务或保存状态;不会重新提交付费生成。", "The operation is incomplete. Check the existing task or collection state; no new paid task will be submitted.")); + if (action === "submit" && result.ok) {checks.current = 0; setWatch(true);} + } catch {if (scope === epoch.current) setError(copy("操作未确认。请先读取现有任务,勿重新提交付费生成。", "Operation unconfirmed. Read the existing task before submitting any new paid generation."));} + finally {if (scope === epoch.current) {pending.current = false; setBusyAction(null);}} + } + useEffect(() => { + if (!watch || !active) return; + const timer = setInterval(() => { + if (pending.current) return; + if (++checks.current > 30) {setWatch(false); return;} + void operate("check"); + }, 10000); + return () => clearInterval(timer); + }, [watch, current?.generation_id, current?.status, goalId]); + const names: Record = { + prepared: copy("待生成", "Ready to generate"), submitting: copy("提交结果待确认", "Submission awaiting confirmation"), + submitted: copy("已提交,待查询状态", "Submitted; status not yet checked"), + submission_unknown: copy("提交结果未知,请核对原任务", "Submission unknown; reconcile the original task"), + queued: copy("云端排队中", "Queued in the cloud"), running: copy("云端生成中", "Generating in the cloud"), + succeeded: copy("云端已完成,待保存", "Cloud result ready to save"), ready: copy("镜头已保存", "Footage saved"), + failed: copy("云端生成失败", "Cloud generation failed"), rejected: copy("请求被拒绝", "Request rejected"), + expired: copy("云端任务已超时", "Cloud task expired"), cancelled: copy("云端已取消", "Cancelled in the cloud"), + damaged: copy("本机文件校验失败", "Local file verification failed"), + }; + function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id: goalId, generation_id: current!.generation_id, file: name})}`;} + return
+

{copy("生成镜头", "Generate footage")}

+

{copy("用已准备的提示词和参考帧生成素材,再在本机添加准确文字、图表和配音。", "Generate source footage from a prepared prompt and reference frames. Add exact text, diagrams and narration locally.")}

+
+ {error ?

{error}

: null} + {busyAction ?

{busyAction === "collect" ? copy("正在下载并校验镜头…", "Downloading and verifying footage…") : busyAction === "submit" ? copy("正在提交一次生成请求…", "Submitting one generation request…") : copy("正在查询原任务…", "Checking the existing task…")}

: null} + {!library && !error ?

{copy("正在读取镜头…", "Loading footage…")}

: null} + {library && !current ?

{copy("让 Agent 准备需要生成的镜头。普通本机视频制作仍可使用。", "Ask your Agent to prepare a footage intent. Ordinary local composition remains available.")}

: null} + {current ?
+ +

{current.title}

+

{names[current.status] ?? current.status} · {current.seconds}s · {current.resolution}

+ {current.status === "prepared" ? <>

{copy("将提示词和参考帧发送至 Ark,生成一次镜头。预计", "Send the prompt and reference frames to Ark for one generation. Estimated")} ¥{current.estimate.cny.toFixed(2)}{copy(";实际用量与账单可能不同。", "; actual usage and billing may differ.")}

+ : null} + {library!.provider.status !== "ready" ?

{copy("云端生成扩展未启用,草稿已保留。", "Cloud generation extension unavailable; the draft is retained.")}

: null} + {active || ["submitting", "submission_unknown", "succeeded", "damaged"].includes(current.status) ?
+ + {["succeeded", "damaged"].includes(current.status) ? : null} + {active ? : null}
: null} + {active ?

{copy("停止查询不会取消云端任务或费用。此服务不提供可安全自动重试的取消操作。", "Stopping checks does not cancel the cloud task or its charges. This service has no safe automatic cancellation operation.")}

: null} + {current.error_code ?

{copy("本次操作尚未完成。原任务和草稿保留;让 Agent 检查任务读回或配置。", "The operation is incomplete. The existing task and draft are retained; ask your Agent to check task readback or configuration.")}

: null} + {current.result && current.status === "ready" ? <>
: null} +
; +} diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css index 91ea290331..40c74092f6 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css @@ -22,4 +22,8 @@ .content-media details summary {cursor:pointer; color:var(--pw-muted);} .content-media details li {line-height:1.6; margin:6px 0;} .content-media-empty {padding:22px 0;} +.content-media-tabs {display:flex; gap:8px; padding:16px 0; border-bottom:1px solid var(--pw-line);} +.content-media-tabs button {min-height:44px; padding:8px 12px; font:inherit; color:inherit; border:1px solid transparent; border-radius:6px; background:transparent; cursor:pointer;} +.content-media-tabs button[aria-pressed=true] {background:var(--pw-hover); border-color:var(--pw-line-strong);} +.content-media-tabs button:focus-visible {outline:2px solid var(--pw-blue); outline-offset:3px;} @media(max-width:680px) {.content-production-panel {padding:0 16px 20px;}.content-media-workspace {grid-template-columns:minmax(0, 1fr);}.content-media nav {flex-direction:row; overflow-x:auto;}.content-media nav button {min-width:160px;}.content-media-heading, .content-media-title {flex-wrap:wrap;}} diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx index 3b83635b3c..c6ef4a8ce9 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx @@ -1,6 +1,7 @@ import {useEffect, useRef, useState} from "react"; import {useWorkspaceI18n} from "./i18n"; import "./content-media-workbench.css"; +import {ContentGeneratedFootage} from "./content-generated-footage"; type Provider = {status: string; enabled: boolean | null; next_action: string | null}; type Composition = { @@ -15,8 +16,10 @@ const ENDPOINT = "/api/chat/content-media"; export function ContentMediaWorkbench({goalId}: {goalId: string}) { const {locale} = useWorkspaceI18n(); const copy = (cn: string, en: string) => locale === "zh-CN" ? cn : en; + const seconds = (value: number) => `${Number(value.toFixed(2))}s`; const [library, setLibrary] = useState(null), [selectedId, setSelectedId] = useState(""); const [error, setError] = useState(""), [busy, setBusy] = useState(false); + const [view, setView] = useState<"composition" | "footage">("composition"); const pending = useRef(false), generation = useRef(0), readSequence = useRef(0); const selected = library?.compositions.find(item => item.composition_id === selectedId) ?? library?.compositions[0]; async function request(action: string, item?: Composition) { @@ -63,7 +66,10 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { }; const providerReady = library?.provider.status === "ready"; const hasBlender = selected?.shots.some(shot => shot.kind === "blender"); - return
+ return <>
+ + +
{view === "composition" ?

{copy("制作视频", "Produce a video")}

{copy("让 Agent 准备脚本、来源和时间线,在这里制作并查看作品。", "Have your Agent prepare the story, sources and timeline. Render and review the result here.")}

@@ -73,8 +79,8 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { {library && !selected ?

{copy("还没有准备好的作品。把想讲的内容交给 Agent,它会通过 Content-Ops 保存可制作的脚本。", "No prepared compositions yet. Tell your Agent what to explain; it can save a renderable brief through Content-Ops.")}

: null} {selected ?
-

{selected.title}

{status[selected.status] ?? selected.status} · {selected.duration_seconds}s · {copy("修订", "Revision")} {selected.revision}

+ onClick={() => setSelectedId(item.composition_id)}>{item.title}{seconds(item.duration_seconds)} · {status[item.status] ?? item.status})} +

{selected.title}

{status[selected.status] ?? selected.status} · {seconds(selected.duration_seconds)} · {copy("修订", "Revision")} {selected.revision}

{selected.status === "rendering" ? : }
{hasBlender && selected.status !== "ready" ?

{copy("包含 Blender 三维场景。制作需要已安装的本机 Blender 扩展依赖;作品会保留可编辑工程与颜色、深度画面。", "Includes Blender scenes. Rendering needs the local Blender extra; the editable project, color and depth frames are retained.")}

: null} @@ -84,10 +90,10 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { {selected.result.files["blender-project.zip"] ? {copy("Blender 工程与画面", "Blender project and passes")} : null}

{copy("完整解码通过", "Full decode passed")} · {selected.result.qa.frames} {copy("帧", "frames")} · {copy("渲染耗时", "Render time")} {selected.result.cost.render_wall_seconds}s

{selected.result.qa.blender_scenes?.length ?

{copy("三维工程已重新打开并检查,颜色与深度帧完整。", "The 3D project was reopened and checked; color and depth frames are complete.")}

: null} - :
    {selected.shots.map((shot, i) =>
  1. {shot.title}{shot.seconds}s · {shot.boundary}
  2. )}
} + :
    {selected.shots.map((shot, i) =>
  1. {shot.title}{seconds(shot.seconds)} · {shot.boundary}
  2. )}
} {["failed", "damaged"].includes(selected.status) ?

{hasBlender ? copy("请让 Agent 检查 Blender 依赖、场景范围与制作时限。修复本机依赖后可重试;修改场景需保存新修订。", "Ask your Agent to check the Blender extra, scene bounds and render time. Retry after dependency repair; save a new revision for scene changes.") : copy("请让 Agent 检查素材、字体和配音时长;修改脚本后保存新修订,或修复本机依赖后重试。", "Ask your Agent to check sources, fonts and narration timing. Save a new revision for story changes, or repair the local dependencies and retry.")}

: null}
{copy("来源与检查", "Sources and checks")}
    {selected.shots.map((shot, i) =>
  • {shot.title} — {shot.boundary}
    {shot.source_ref}
  • )}

{copy("本机私有作品。编码通过不代表创意质量、理解效果或发布许可;请观看并试听。", "Private local work. Encoding does not establish creative quality, audience understanding or publication approval. Watch and listen before sharing.")}

: null} -
; +
: }; } diff --git a/docs/reference/protocols/content-ops-media-v0.md b/docs/reference/protocols/content-ops-media-v0.md index d33d476a43..92834b80f7 100644 --- a/docs/reference/protocols/content-ops-media-v0.md +++ b/docs/reference/protocols/content-ops-media-v0.md @@ -129,9 +129,9 @@ or repair the existing extension and retry. No failure creates publication authority, fills missing footage, infers a creative pass or changes a Goal. Mechanical rendering, creative quality, audience understanding and operations -impact have separate evidence. Future generated media and interactive -learning providers should reuse the nearest content owner and comparison -method; they are not silently activated by this protocol. +impact have separate evidence. The optional generated-footage path below +shares this owner; interactive learning and other providers are not silently +activated by this protocol. ## Blender shot and project readback @@ -169,3 +169,58 @@ missing bpy does not disable ordinary 2D work. A failed 3D attempt retains its prepared input and supports retry after dependency repair. No fallback replaces 3D with a code projection. Mechanical readiness still does not establish creative quality, audience understanding or publication approval. + +## Optional cloud-footage intents + +`content-ops generation prepare/submit/check/collect/inspect/list/cancel` uses +the existing Goal-scoped media workspace and optional `loopx-media` provider. +The shared `content_media_generation` TypeScript owner validates immutable +`content_ops_generation_plan_v0` drafts, quote freshness/nominal bounds, +reference roles and source scope, task identity, observations and collection. +Python adapts file snapshots and one provider effect; it does not choose work, +infer publication approval or start a scheduling loop. + +The existing runtime protocol accepts additive `generation.*` operations only +through the separately declared `content_media_generate` permission. A normal +render request is unchanged and has no network/account effects. The bounded +provider supports Seedance 2.5 video only; image generation, other models and +unopened account access remain unavailable. Setup, process-local credentials, +supported frames, prices and recovery are in the +[provider guide](../../../packages/loopx-media/README.md#optional-generated-footage). + +The parent commits `submitting` before POST. A successful response is only +`submitted`, not an observed queued/running worker. A provider-side fsynced +journal binds the returned task id to the plan digest before stdout returns. +An explicit `check` can recover that id after a stopped parent. If the response +was lost before an id could be saved, the intent stays `submission_unknown`; +neither reload nor repeated submit creates a new paid task. Reconciliation of +an unknown external effect precedes any new generation decision. + +Cloud `succeeded` means collection is possible, not local artifact readiness. +Collection obtains a current expiring URL, downloads within origin/time/byte +bounds, fully decodes the movie, measures duration and hashes the fixed +`generated.mp4`, `poster.png` and optional `last-frame.jpg` outputs. The core +checks those bytes before projecting `ready`. Download URLs, API credentials, +private paths and raw provider responses never enter browser projections. +Reference alpha preprocessing retains original and transmitted hashes. The +returned token count, caller-supplied rate estimate and unknown invoice remain +distinct; the nominal estimate bound is not a guaranteed maximum bill. + +The existing `/api/chat/content-media` accepts `generation_list` and +revision-bound `generation_submit/check/collect/cancel` actions. Its file route +accepts exactly one generation or composition id, serves only verified fixed +artifacts and retains selected-Goal, origin, byte-range and no-store rules. +The shipped workbench shows draft/consequence, submission, bounded optional +status checking, errors and saved files through this backend. Pure list/inspect +reads never call the cloud. Automatic browser checks stop after five minutes, +on a terminal observation or when the owner stops them; they never POST a job. + +Ark DELETE has no documented atomic queued-only precondition and can erase a +task that finishes between GET and DELETE. `cancel` therefore reads the +original task and reports `atomic_cancellation_unavailable`, without deleting +it or claiming that local observation stopped remote usage. The same limitation +is visible in the workbench. Failed/expired/cancelled states, unavailable +observation, unknown submission and damaged local artifacts remain separate. +Creative quality, continuity, visible watermark, audience comprehension and +actual billed cost require their own evidence; no generated clip changes +content publication state. diff --git a/loopx/capabilities/content_ops/README.md b/loopx/capabilities/content_ops/README.md index dd0c3d32e4..0667ed0acd 100644 --- a/loopx/capabilities/content_ops/README.md +++ b/loopx/capabilities/content_ops/README.md @@ -38,6 +38,16 @@ while keeping heavy image/audio/video computation in the optional distribution. See the [composition contract](../../../docs/reference/protocols/content-ops-media-v0.md) and [renderer installation and recovery](../../../packages/loopx-media/README.md). +`loopx content-ops generation` prepares immutable, priced cloud-footage intents +and explicitly submits/checks/collects a bounded Seedance 2.5 video through the +same optional provider, with a separate cloud-generation permission. The +**Generated footage** view shows drafts, upload/usage consequences, original +task readback and verified local files. It never repeats an ambiguous paid +submission or equates stopping observation with remote cancellation. Use the +saved movie as a source-bound excerpt in a local composition; precise text and +diagrams remain local. See the same provider guide for credentials, cost +estimates, unavailable states and recovery. Image generation is not qualified. + `loopx content-ops reference` reads an existing private source/style catalog, prepares version-checked capture/correction artifacts, retrieves topic/structure references, and prepares outlines with original credit and reuse conditions. diff --git a/loopx/capabilities/content_ops/catalog_entry.py b/loopx/capabilities/content_ops/catalog_entry.py index a3d1f65e2e..dc956d9eb7 100644 --- a/loopx/capabilities/content_ops/catalog_entry.py +++ b/loopx/capabilities/content_ops/catalog_entry.py @@ -22,6 +22,16 @@ ), "entry_command": "loopx content-ops aggregate-packets --format json", "commands": [ + { + "command": "loopx content-ops generation prepare --goal-id --plan-json --source-directory --format json", + "purpose": "Prepare an immutable cloud-video intent with source hashes, model parameters and a current nominal price estimate.", + "write_boundary": "Goal-local private intent and immutable sources; no cloud effect", + }, + { + "command": "loopx content-ops generation submit --goal-id --generation-id --expected-revision --format json", + "purpose": "Submit one authorized paid task through the optional media provider; check and collect the original task separately without automatic paid retries.", + "write_boundary": "explicit cloud generation and reference upload; separate provider permission and process-local credential; no publishing", + }, { "command": "loopx content-ops reference search --library-json --query --structure --format json", "purpose": "Retrieve source credit, version, reuse boundary, styles and dated counters from an existing caller-owned catalog.", @@ -104,6 +114,11 @@ }, ], "implemented_protocols": [ + { + "schema_version": "content_ops_generation_plan_v0", + "module": "loopx.capabilities.content_ops.generation", + "doc": "docs/reference/protocols/content-ops-media-v0.md", + }, { "schema_version": "content_ops_reference_v0", "module": "loopx.control_plane.capabilities.content_reference", diff --git a/loopx/capabilities/content_ops/cli.py b/loopx/capabilities/content_ops/cli.py index 1d14a8dcad..6645a18ccb 100644 --- a/loopx/capabilities/content_ops/cli.py +++ b/loopx/capabilities/content_ops/cli.py @@ -565,7 +565,7 @@ def handle_content_ops_command( issue_fix_result = handle_content_ops_issue_fix_command(args) if issue_fix_result is not None: payload, renderer = issue_fix_result - elif args.content_ops_command == "media": + elif args.content_ops_command in {"media", "generation"}: payload = handle_media_command(args) renderer = lambda value: json.dumps(value, ensure_ascii=False, indent=2) + "\n" elif args.content_ops_command == "reference": diff --git a/loopx/capabilities/content_ops/generation.py b/loopx/capabilities/content_ops/generation.py new file mode 100644 index 0000000000..648dc39794 --- /dev/null +++ b/loopx/capabilities/content_ops/generation.py @@ -0,0 +1,271 @@ +"""Goal-local footage I/O. TS owns admission and state; the optional provider +performs one bounded API operation. A local read never submits or polls a job. +""" + +from __future__ import annotations + +from pathlib import Path +import re +from uuid import uuid4 + +from ...extensions.runtime import ( + default_extension_state_file, + execute_extension_runtime_binding, + resolve_optional_capability_binding, +) +from ...file_lock import exclusive_file_lock +from .media import MediaWorkspace, PROTOCOL, _owner, _read, _safe_path, _save, _sha, now + + +class GenerationWorkspace: + def __init__(self, workspace: MediaWorkspace): + self.media = workspace + self.root = _safe_path(workspace.root, "generations") + + def binding(self): + return resolve_optional_capability_binding( + state_file=default_extension_state_file(self.media.runtime_root), + capability_id="content-ops", + protocol=PROTOCOL, + permission="content_media_generate", + extension_id="loopx-media", + ) + + def _bundle(self, ident: str) -> Path: + if not isinstance(ident, str) or not re.fullmatch(r"gen_[a-f0-9]{24}", ident): + raise ValueError("Invalid footage reference") + return _safe_path(self.root, ident) + + def _record(self, ident: str) -> dict: + return _read(_safe_path(self._bundle(ident), "record.json")) + + def _transition(self, record: dict, action: str, **values) -> dict: + return _owner( + "generation_transition", + { + "state": record, + "action": action, + "expected_revision": record["revision"], + "observed_at": now(), + **values, + }, + )["state"] + + def prepare( + self, plan: dict, *, source_directory: Path, generation_id: str | None = None + ) -> dict: + checked = _owner("generation_plan", {"plan": plan}) + ident = generation_id or f"gen_{uuid4().hex[:24]}" + bundle = self._bundle(ident) + bundle.mkdir(mode=0o700, parents=True, exist_ok=True) + with exclusive_file_lock( + bundle / "record.json", operation="content-footage-prepare" + ): + if (bundle / "record.json").exists(): + if self._record(ident)["plan_digest"] != checked["plan_digest"]: + raise ValueError( + "Footage intents are immutable; prepare a new intent for a changed brief" + ) + else: + sources = self.media.snapshot_sources( + bundle, + checked["plan"]["references"], + source_directory, + key="role", + max_each=2 * 1024 * 1024, + ) + _save( + bundle / "record.json", + { + **checked, + "generation_id": ident, + "revision": 1, + "status": "prepared", + "sources": sources, + "task_id": None, + "observation": None, + "result": None, + "error_code": None, + "updated_at": now(), + }, + ) + return self.inspect(ident) + + def inspect(self, ident: str) -> dict: + record = self._record(ident) + result = record.get("result") + status = record["status"] + if result and any( + not _safe_path(self._bundle(ident), f"output/{name}").is_file() + or _sha(_safe_path(self._bundle(ident), f"output/{name}")) != item["sha256"] + for name, item in result["files"].items() + ): + status = "damaged" + observation = record.get("observation") + tokens = observation.get("completion_tokens") if observation else None + return { + "ok": True, + "generation_id": ident, + "revision": record["revision"], + "status": status, + "title": record["plan"]["title"], + "model": record["plan"]["model"], + "seconds": record["plan"]["seconds"], + "resolution": record["plan"]["resolution"], + "prompt": record["plan"]["prompt"], + "references": [ + {k: ref[k] for k in ("role", "sha256", "source_ref", "visibility")} + for ref in record["plan"]["references"] + ], + "plan_digest": record["plan_digest"], + "estimate": record["estimate"], + "quote": record["plan"]["quote"], + "watermark_requested": record["plan"]["watermark"], + "generate_audio": record["plan"]["generate_audio"], + "task_id": record.get("task_id"), + "observation": observation, + "result": result, + "reported_usage_estimate_cny": None + if tokens is None + else round( + tokens * record["plan"]["quote"]["cny_per_million_tokens"] / 1e6, 4 + ), + "error_code": record.get("error_code"), + "updated_at": record["updated_at"], + "provider": self.binding().public_readiness(), + "visibility": "local_private", + "publish_authorized": False, + } + + def list(self) -> dict: + paths = ( + sorted( + self.root.glob("gen_*/record.json"), + key=lambda p: p.stat().st_mtime, + reverse=True, + ) + if self.root.exists() + else [] + ) + return { + "ok": True, + "generations": [self.inspect(p.parent.name) for p in paths[:100]], + "provider": self.binding().public_readiness(), + } + + def _call(self, record: dict, operation: str) -> dict: + binding = self.binding() + if binding.binding is None: + raise ValueError( + "Enable a content-media provider with explicit cloud-generation permission" + ) + return execute_extension_runtime_binding( + binding.binding, + request={ + "protocol": PROTOCOL, + "operation": f"generation.{operation}", + "plan": record["plan"], + "plan_digest": record["plan_digest"], + "sources": record["sources"], + "directory": str(self._bundle(record["generation_id"])), + "task_id": record.get("task_id"), + }, + ) + + def operate(self, ident: str, action: str, *, expected_revision: int) -> dict: + bundle = self._bundle(ident) + # One short API operation per writer. No poll loop and no automatic POST + # retry; a host crash preserves the intent and provider's task-id journal. + with exclusive_file_lock( + bundle / "record.json", + operation="content-footage-effect", + timeout_seconds=1, + ): + record = self._record(ident) + if record["revision"] != expected_revision: + raise ValueError("Read the current footage revision") + checked = _owner("generation_plan", {"plan": record["plan"]}) + if checked["plan_digest"] != record["plan_digest"]: + raise ValueError("Footage intent bytes changed") + if action == "submit": + if record["status"] != "prepared": + return self.inspect(ident) + try: + readiness = self._call(record, "probe") + except (OSError, ValueError, RuntimeError): + readiness = {"credential_available": False} + if not readiness.get("credential_available"): + return { + **self.inspect(ident), + "ok": False, + "error_code": "generation_provider_unavailable", + } + record = self._transition(record, "submit") + _save(bundle / "record.json", record) + try: + response = self._call(record, "submit") + except (OSError, ValueError, RuntimeError): + response = {"status": "submission_unknown"} + if response.get("status") in {"rejected", "submission_unknown"}: + record = self._transition( + record, + "reject" if response["status"] == "rejected" else "unknown", + ) + record["error_code"] = ( + response.get("error_code") or response["status"] + ) + else: + record = self._transition( + record, "acknowledge", task_id=response["task_id"] + ) + elif action in {"check", "cancel", "collect"}: + if record["status"] in {"prepared", "rejected"}: + raise ValueError("No cloud task is available for this intent") + if record["status"] == "ready": + if self.inspect(ident)["status"] == "ready" or action != "collect": + return self.inspect(ident) + record = self._transition( + record, "repair", artifacts_verified=False + ) + try: + response = self._call(record, action) + if response.get("observation"): + record = self._transition( + record, "observe", observation=response["observation"] + ) + if action == "collect" and response.get("result"): + updated = self._transition( + record, "collect", result=response["result"] + ) + for name, entry in updated["result"]["files"].items(): + path = _safe_path(bundle, f"output/{name}") + if ( + not path.is_file() + or path.stat().st_size != entry["bytes"] + or _sha(path) != entry["sha256"] + ): + raise ValueError("Generated output readback failed") + record = updated + record["error_code"] = response.get("error_code") + except (OSError, ValueError, RuntimeError, KeyError): + record["error_code"] = ( + "collection_failed" + if action == "collect" + else "observation_unavailable" + ) + if record["status"] == "submitting": + record = self._transition(record, "unknown") + else: + raise ValueError("Unsupported footage operation") + _save(bundle / "record.json", record) + return {**self.inspect(ident), "ok": record.get("error_code") is None} + + def file(self, ident: str, name: str) -> Path: + record = self._record(ident) + if ( + name not in {"generated.mp4", "poster.png", "last-frame.jpg"} + or self.inspect(ident)["status"] != "ready" + or name not in record["result"]["files"] + ): + raise ValueError("Verified footage file unavailable") + return _safe_path(self._bundle(ident), f"output/{name}") diff --git a/loopx/capabilities/content_ops/media.py b/loopx/capabilities/content_ops/media.py index 23a62ed918..9e7eb157bd 100644 --- a/loopx/capabilities/content_ops/media.py +++ b/loopx/capabilities/content_ops/media.py @@ -93,6 +93,34 @@ def _bundle(self, composition_id: str) -> Path: def _record(self, composition_id: str) -> dict: return _read(_safe_path(self._bundle(composition_id), "record.json")) + def snapshot_sources(self, bundle: Path, assets: list[dict], source_directory: Path, *, key: str = "id", max_each: int = MAX_ASSET_BYTES) -> dict: + """Immutable bytes shared by local composition and explicit cloud frames.""" + source_root = source_directory.expanduser().resolve(strict=True) + if not source_root.is_dir(): + raise ValueError("Choose an explicit source directory") + snapshots, total = {}, 0 + inputs = _safe_path(bundle, "sources") + inputs.mkdir(mode=0o700, exist_ok=True) + for asset in assets: + original = _safe_path(source_root, asset["path"]) + descriptor = os.open(original, os.O_RDONLY | getattr(os, "O_NOFOLLOW", 0)) + with os.fdopen(descriptor, "rb") as source: + info = os.fstat(source.fileno()) + total += info.st_size + if not stat.S_ISREG(info.st_mode) or info.st_size > max_each or total > 128 * 1024 * 1024: + raise ValueError("Sources exceed the local composition budget") + content = source.read(max_each + 1) + if len(content) != info.st_size or hashlib.sha256(content).hexdigest() != asset["sha256"]: + raise ValueError("Source bytes changed; check the source digest before preparing") + path = _safe_path(inputs, asset["sha256"]) + if path.exists(): + if _sha(path) != asset["sha256"]: raise ValueError("Source snapshot is damaged") + else: + fd = os.open(path, os.O_WRONLY | os.O_CREAT | os.O_EXCL, 0o600) + with os.fdopen(fd, "wb") as output: output.write(content) + snapshots[asset[key]] = str(path) + return snapshots + def prepare(self, plan: dict, *, source_directory: Path, composition_id: str | None = None, expected_revision: int | None = None) -> dict: validated = _owner("plan", {"plan": plan}) composition_id = composition_id or f"media_{uuid4().hex[:24]}" @@ -104,30 +132,7 @@ def prepare(self, plan: dict, *, source_directory: Path, composition_id: str | N raise ValueError("Inspect the current revision before changing this composition") if previous and previous["plan_digest"] == validated["plan_digest"]: return self.inspect(composition_id) - source_root = source_directory.expanduser().resolve(strict=True) - if not source_root.is_dir(): - raise ValueError("Choose an explicit source directory") - snapshots, total = {}, 0 - inputs = _safe_path(bundle, "sources") - inputs.mkdir(mode=0o700, exist_ok=True) - for asset in validated["plan"]["assets"]: - original = _safe_path(source_root, asset["path"]) - descriptor = os.open(original, os.O_RDONLY | getattr(os, "O_NOFOLLOW", 0)) - with os.fdopen(descriptor, "rb") as source: - info = os.fstat(source.fileno()) - total += info.st_size - if not stat.S_ISREG(info.st_mode) or info.st_size > MAX_ASSET_BYTES or total > 128 * 1024 * 1024: - raise ValueError("Sources exceed the local composition budget") - content = source.read(MAX_ASSET_BYTES + 1) - if len(content) != info.st_size or hashlib.sha256(content).hexdigest() != asset["sha256"]: - raise ValueError("Source bytes changed; check the source digest before preparing") - path = _safe_path(inputs, asset["sha256"]) - if path.exists(): - if _sha(path) != asset["sha256"]: raise ValueError("Source snapshot is damaged") - else: - fd = os.open(path, os.O_WRONLY | os.O_CREAT | os.O_EXCL, 0o600) - with os.fdopen(fd, "wb") as output: output.write(content) - snapshots[asset["id"]] = str(path) + snapshots = self.snapshot_sources(bundle, validated["plan"]["assets"], source_directory) item = previous["item"] if previous else build_content_ops_item( item_id=composition_id, item_kind="post", channel="local-media", content_digest=validated["plan_digest"], content_ref=f"content-media:{composition_id}", source_refs=[f"source:{a['sha256']}" for a in validated["plan"]["assets"]], created_at=now()) diff --git a/loopx/capabilities/content_ops/media_cli.py b/loopx/capabilities/content_ops/media_cli.py index 83c8c715d9..e1f8426072 100644 --- a/loopx/capabilities/content_ops/media_cli.py +++ b/loopx/capabilities/content_ops/media_cli.py @@ -5,6 +5,7 @@ from pathlib import Path from .media import MediaWorkspace +from .generation import GenerationWorkspace from ...paths import default_registry_path, effective_runtime_root @@ -17,12 +18,38 @@ def register_media_commands(subparsers, add_format) -> None: parser.add_argument("--composition-id") parser.add_argument("--expected-revision", type=int) add_format(parser) + generation = subparsers.add_parser("generation", help="Prepare, submit, check and collect bounded cloud footage. Submission incurs provider usage.") + generation.add_argument("operation", choices=("prepare", "submit", "check", "collect", "cancel", "inspect", "list")) + generation.add_argument("--goal-id", required=True) + generation.add_argument("--plan-json") + generation.add_argument("--source-directory") + generation.add_argument("--generation-id") + generation.add_argument("--expected-revision", type=int) + add_format(generation) def handle_media_command(args) -> dict: registry = Path(args.registry) if args.registry else default_registry_path() workspace = MediaWorkspace(registry_path=registry, goal_id=args.goal_id, runtime_root=effective_runtime_root(registry, args.runtime_root)) + if args.content_ops_command == "generation": + work = GenerationWorkspace(workspace) + if args.operation == "list": + return work.list() + if args.operation == "prepare": + if not args.plan_json or not args.source_directory: + raise ValueError("prepare requires --plan-json and --source-directory") + path = Path(args.plan_json).expanduser() + if path.stat().st_size > 256 * 1024: + raise ValueError("Footage plan exceeds 256 KiB") + return work.prepare(json.loads(path.read_text(encoding="utf-8")), source_directory=Path(args.source_directory), generation_id=args.generation_id) + if not args.generation_id: + raise ValueError("Select an existing footage intent") + if args.operation == "inspect": + return work.inspect(args.generation_id) + if args.expected_revision is None: + raise ValueError("Read the current --expected-revision first") + return work.operate(args.generation_id, args.operation, expected_revision=args.expected_revision) if args.operation == "list": return workspace.list() if args.operation == "prepare": if not args.plan_json or not args.source_directory: diff --git a/loopx/control_plane/capabilities/content_media_generation.ts b/loopx/control_plane/capabilities/content_media_generation.ts new file mode 100644 index 0000000000..d00c2964a9 --- /dev/null +++ b/loopx/control_plane/capabilities/content_media_generation.ts @@ -0,0 +1,146 @@ +/** Immutable cloud-footage intents inside content-ops. These states do not + * authorize publication, retries of a paid submission, or autonomous polling. */ +import {createHash} from "node:crypto"; +import {BARE_SHA256_PATTERN} from "../content_digest.ts"; +import {EffectRuntimeRequestError} from "../effect_runtime_errors.ts"; + +type Obj = Record; +function fail(message: string): never {throw new EffectRuntimeRequestError(message);} +function obj(value: unknown): Obj { + if (!value || typeof value !== "object" || Array.isArray(value)) fail("Expected a footage object"); + return value as Obj; +} +function fields(value: Obj, names: string[]) { + if (Object.keys(value).some(key => !names.includes(key))) fail("Unsupported footage fields"); +} +function text(value: unknown, max = 240): string { + if (typeof value !== "string" || !value.trim() || value.length > max || /[\x00-\x08\x0b-\x1f]/.test(value)) fail("Invalid footage text"); + return value.trim(); +} +function num(value: unknown, min: number, max: number): number { + if (typeof value !== "number" || !Number.isFinite(value) || value < min || value > max) fail("Footage number is outside its supported range"); + return value; +} +function stable(value: unknown): string { + if (Array.isArray(value)) return `[${value.map(stable).join(",")}]`; + if (value && typeof value === "object") return `{${Object.entries(value).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${JSON.stringify(k)}:${stable(v)}`).join(",")}}`; + return JSON.stringify(value); +} +function instant(value: unknown): string { + const s = text(value, 40); + if (!/^\d{4}-\d\d-\d\dT/.test(s) || !/(Z|[+-]\d\d:\d\d)$/.test(s) || !Number.isFinite(Date.parse(s))) fail("Use a timezone-aware footage observation"); + return s; +} +export const GENERATION_MODEL = "doubao-seedance-2-5-260628"; +// Local vocabulary, not a second generic job or publication lifecycle. +export const GENERATION_REMOTE_STATES = ["queued", "running", "succeeded", "failed", "cancelled", "expired"] as const; +export function validateGenerationPlan(input: unknown) { + const raw = obj(obj(input).plan); + fields(raw, ["schema_version", "title", "model", "prompt", "seconds", "resolution", "references", "watermark", "generate_audio", "return_last_frame", "quote"]); + if (raw.schema_version !== "content_ops_generation_plan_v0" || raw.model !== GENERATION_MODEL) fail("Select the supported video model and footage schema"); + const seconds = num(raw.seconds, 4, 10); + if (!Number.isInteger(seconds)) fail("Use whole seconds for bounded footage"); + if (raw.resolution !== "720p" && raw.resolution !== "480p") fail("Select 480p or 720p footage"); + if (typeof raw.watermark !== "boolean" || typeof raw.generate_audio !== "boolean" || typeof raw.return_last_frame !== "boolean") fail("Declare watermark, audio and last-frame choices explicitly"); + if (!Array.isArray(raw.references) || raw.references.length > 2) fail("Use a first frame and optional last frame"); + const references = raw.references.map(value => { + const ref = obj(value); + fields(ref, ["role", "path", "sha256", "source_ref", "visibility"]); + if (ref.role !== "first_frame" && ref.role !== "last_frame") fail("Unsupported reference-frame role"); + const path = text(ref.path, 400); + if (path.startsWith("/") || path.includes("\\") || path.split("/").some(part => !part || part === "." || part === "..")) fail("Reference frames must stay inside the explicit source directory"); + if (typeof ref.sha256 !== "string" || !BARE_SHA256_PATTERN.test(ref.sha256)) fail("Reference frames require exact SHA256"); + if (ref.visibility !== "public_safe") fail("Cloud reference frames require an explicit public-safe source boundary"); + const source_ref = text(ref.source_ref); + if (!/^(?:source|synthetic|generation):[a-zA-Z0-9._:-]{1,200}$/.test(source_ref)) fail("Use an opaque source identifier rather than a private path or signed URL"); + return {role: ref.role, path, sha256: ref.sha256, source_ref, visibility: "public_safe"}; + }); + if (references.length && (references[0]!.role !== "first_frame" || (references.length === 2 && references[1]!.role !== "last_frame"))) fail("Order the first frame before the last frame"); + const quote = obj(raw.quote); + fields(quote, ["cny_per_million_tokens", "checked_at", "source_url", "max_estimated_cny"]); + const source = text(quote.source_url, 400); + if (!/^https:\/\/(?:console|ark)\.volcengine\.com\//.test(source)) fail("Use the checked official price source"); + const rate = num(quote.cny_per_million_tokens, .01, 1000), checked_at = instant(quote.checked_at); + // Only 16:9 still-frame/text inputs are supported by this bounded provider. + // No video-input discount, flex pricing, free quota or invoice is inferred. + const [width, height] = raw.resolution === "720p" ? [1280, 720] : [854, 480]; + const estimated_tokens = Math.ceil(seconds * width! * height! * 24 / 1024); + const estimated_cny = Math.ceil(estimated_tokens * rate / 1e6 * 10000) / 10000; + const maximum = num(quote.max_estimated_cny, .01, 100); + if (estimated_cny > maximum) fail("The nominal footage estimate exceeds the declared request budget"); + const prompt = text(raw.prompt, 4000); + // Ark interprets these prompt suffixes as weakly-validated API parameters. + // Keep timing/dimensions/watermark bound to the admitted structured fields. + if (/--(?:resolution|ratio|duration|frames|seed|camera_fixed|watermark)\b/i.test(prompt)) fail("Put video parameters in the structured footage plan, not prompt suffixes"); + const plan = {schema_version: raw.schema_version, title: text(raw.title, 100), model: GENERATION_MODEL, + prompt, seconds, resolution: raw.resolution, references, + watermark: raw.watermark, generate_audio: raw.generate_audio, return_last_frame: raw.return_last_frame, + quote: {cny_per_million_tokens: rate, checked_at, source_url: source, max_estimated_cny: maximum}}; + return {ok: true, plan, plan_digest: `sha256:${createHash("sha256").update(stable(plan)).digest("hex")}`, + estimate: {tokens: estimated_tokens, cny: estimated_cny, basis: "nominal_output_tokens", invoice: "unknown", guaranteed_billing_cap: false}, + capability_id: "content-ops", provider_id: "loopx-media", visibility: "local_private", publish_authorized: false}; +} + +export function transitionGeneration(input: unknown) { + const request = obj(input), state = obj(request.state); + if (state.revision !== request.expected_revision) fail("Footage revision changed; read the current draft"); + const observed_at = instant(request.observed_at), current = state.status; + let status: unknown; + if (request.action === "submit") { + if (current !== "prepared") fail("This intent was already submitted; check its existing task instead of creating another"); + const checked = validateGenerationPlan({plan: state.plan}); + if (state.plan_digest !== checked.plan_digest) fail("Footage intent bytes changed"); + const age = Date.parse(observed_at) - Date.parse(checked.plan.quote.checked_at); + if (age < 0 || age > 24 * 3600 * 1000) fail("Recheck the price before preparing a new footage intent"); + status = "submitting"; + } else if (request.action === "acknowledge") { + const task_id = text(request.task_id, 100); + if (current !== "submitting" || !/^cgt-[a-zA-Z0-9-]+$/.test(task_id)) fail("A task acknowledgement requires the active submission"); + return {ok: true, state: {...state, status: "submitted", task_id, updated_at: observed_at}}; + } else if (request.action === "observe") { + const value = obj(request.observation); + const task_id = text(value.task_id, 100); + if (!/^cgt-[a-zA-Z0-9-]+$/.test(task_id) || (state.task_id && task_id !== state.task_id)) fail("Cloud task does not match this footage intent"); + if (value.model !== GENERATION_MODEL || !GENERATION_REMOTE_STATES.includes(value.status as typeof GENERATION_REMOTE_STATES[number])) fail("Unsupported cloud-task observation"); + if (["prepared", "ready", "rejected"].includes(String(current))) fail("This footage state cannot adopt a cloud observation"); + const usage = value.completion_tokens == null ? null : num(value.completion_tokens, 0, 1e9); + const provider_seconds = value.duration_seconds == null ? null : num(value.duration_seconds, 0, 60); + const previous = state.observation == null ? null : obj(state.observation); + if (previous && previous.updated_at != null && value.updated_at != null && Number(value.updated_at) < Number(previous.updated_at)) fail("Cloud observation is older than the saved result"); + if (["succeeded", "failed", "cancelled", "expired"].includes(String(current)) && value.status !== current) fail("A terminal cloud observation cannot silently change"); + return {ok: true, state: {...state, status: value.status, task_id, updated_at: observed_at, + observation: {status: value.status, model: GENERATION_MODEL, completion_tokens: usage, duration_seconds: provider_seconds, + created_at: value.created_at == null ? null : num(value.created_at, 0, 1e11), + updated_at: value.updated_at == null ? null : num(value.updated_at, 0, 1e11)}, error_code: null}}; + } else if (request.action === "unknown") { + if (current !== "submitting") fail("Only an unconfirmed submission can become unknown"); + status = "submission_unknown"; + } else if (request.action === "reject") { + if (current !== "submitting") fail("Only a refused submission can be rejected"); + status = "rejected"; + } else if (request.action === "repair") { + if (current !== "ready" || request.artifacts_verified !== false) fail("Recollect only after a failed local artifact readback"); + return {ok: true, state: {...state, status: "succeeded", result: null, updated_at: observed_at}}; + } else if (request.action === "collect") { + if (current !== "succeeded") fail("Collect only an observed successful cloud task"); + const result = obj(request.result), files = obj(result.files), projected: Obj = {}; + if (result.plan_digest !== state.plan_digest || result.task_id !== state.task_id || result.full_decode !== "passed") fail("Collected footage does not match the intent and task"); + for (const [name, raw] of Object.entries(files)) { + if (!["generated.mp4", "poster.png", "last-frame.jpg"].includes(name)) fail("Unexpected generated artifact"); + const file = obj(raw); + if (typeof file.sha256 !== "string" || !BARE_SHA256_PATTERN.test(file.sha256)) fail("Generated artifact requires its exact SHA256"); + projected[name] = {sha256: file.sha256, bytes: num(file.bytes, 1, 64 * 1024 * 1024)}; + } + if (!projected["generated.mp4"] || !projected["poster.png"]) fail("Generated footage and poster are required"); + const measured_seconds = num(result.measured_seconds, 0.1, 12), frames = num(result.frames, 1, 360); + const plan = obj(state.plan); + if (plan.return_last_frame && !projected["last-frame.jpg"]) fail("The requested continuation frame is missing"); + const [width, height] = plan.resolution === "720p" ? [1280, 720] : [854, 480]; + if (result.width !== width || result.height !== height || result.fps !== 24 || result.has_audio !== plan.generate_audio) fail("Decoded footage does not match the admitted dimensions, rate and audio"); + if (measured_seconds < Number(plan.seconds) - .2 || measured_seconds >= Number(plan.seconds) + 1.2) fail("Decoded footage duration differs from the bounded request"); + return {ok: true, state: {...state, status: "ready", updated_at: observed_at, error_code: null, + result: {files: projected, full_decode: "passed", measured_seconds, frames, width, height, fps: 24, has_audio: result.has_audio, + watermark_requested: plan.watermark, watermark_visual_check: "not_tested", creative_review: "not_tested", invoice: "unknown"}}}; + } else fail("Unsupported footage transition"); + return {ok: true, state: {...state, status, updated_at: observed_at}}; +} diff --git a/loopx/control_plane/effect_runtime_handlers.ts b/loopx/control_plane/effect_runtime_handlers.ts index 809f5ee933..797c7a9051 100644 --- a/loopx/control_plane/effect_runtime_handlers.ts +++ b/loopx/control_plane/effect_runtime_handlers.ts @@ -684,6 +684,8 @@ export function createEffectRuntimeHandlers( ["content_media.plan", lazyHandler(() => import("./capabilities/content_media.ts"), ({validateMediaPlan}) => validateMediaPlan)], ["content_media.transition", lazyHandler(() => import("./capabilities/content_media.ts"), ({transitionMediaRender}) => transitionMediaRender)], ["content_media.result", lazyHandler(() => import("./capabilities/content_media.ts"), ({validateMediaResult}) => validateMediaResult)], + ["content_media.generation_plan", lazyHandler(() => import("./capabilities/content_media_generation.ts"), ({validateGenerationPlan}) => validateGenerationPlan)], + ["content_media.generation_transition", lazyHandler(() => import("./capabilities/content_media_generation.ts"), ({transitionGeneration}) => transitionGeneration)], ["reward_memory.decision.plan", lazyHandler(() => import("./capabilities/reward_memory_decision.ts"), ({planRewardMemoryDecision}) => planRewardMemoryDecision)], ["reward_memory.decision.project", lazyHandler(() => import("./capabilities/reward_memory_decision.ts"), ({projectRewardMemoryDecision}) => projectRewardMemoryDecision)], ["reward_memory.read_authority.surface_checkpoints", lazyHandler(() => import("./capabilities/reward_memory_decision.ts"), ({buildRewardMemorySurfaceReadCheckpoints}) => buildRewardMemorySurfaceReadCheckpoints)], diff --git a/loopx/presentation/content_media_api.py b/loopx/presentation/content_media_api.py index f09a91b214..e93f2a2e30 100644 --- a/loopx/presentation/content_media_api.py +++ b/loopx/presentation/content_media_api.py @@ -10,6 +10,7 @@ from urllib.parse import parse_qs, urlparse from ..capabilities.content_ops.media import MediaWorkspace +from ..capabilities.content_ops.generation import GenerationWorkspace from ..feedback import validate_goal_id from .goal_source_routing import source_registry_for_goal @@ -37,11 +38,18 @@ def _content_media_request(self) -> None: if urlparse(self.path).query: raise ValueError("Use the request body") body = self._read_json(max_bytes=4096) - if set(body) - {"goal_id", "action", "composition_id", "expected_revision"}: + if set(body) - {"goal_id", "action", "composition_id", "generation_id", "expected_revision"}: raise ValueError("Unsupported fields") workspace = self._media_workspace(body["goal_id"]) action = body["action"] - if action == "list" and set(body) == {"goal_id", "action"}: + if action == "generation_list" and set(body) == {"goal_id", "action"}: + result = GenerationWorkspace(workspace).list() + elif action in {"generation_submit", "generation_check", "generation_cancel", "generation_collect"} and set(body) == {"goal_id", "action", "generation_id", "expected_revision"}: + revision = body["expected_revision"] + if isinstance(revision, bool) or not isinstance(revision, int): + raise ValueError("Read the current revision") + result = GenerationWorkspace(workspace).operate(body["generation_id"], action.removeprefix("generation_"), expected_revision=revision) + elif action == "list" and set(body) == {"goal_id", "action"}: result = workspace.list() elif action == "inspect" and set(body) == { "goal_id", @@ -76,13 +84,13 @@ def _content_media_request(self) -> None: def _content_media_file(self) -> None: try: query = parse_qs(urlparse(self.path).query, strict_parsing=True) - if set(query) != {"goal_id", "composition_id", "file"} or any( + if set(query) not in ({"goal_id", "composition_id", "file"}, {"goal_id", "generation_id", "file"}) or any( len(v) != 1 for v in query.values() ): raise ValueError("Invalid file request") workspace = self._media_workspace(query["goal_id"][0]) name = query["file"][0] - path = workspace.file(query["composition_id"][0], name) + path = GenerationWorkspace(workspace).file(query["generation_id"][0], name) if "generation_id" in query else workspace.file(query["composition_id"][0], name) fd = os.open(path, os.O_RDONLY | getattr(os, "O_NOFOLLOW", 0)) with os.fdopen(fd, "rb") as source: size = os.fstat(source.fileno()).st_size diff --git a/packages/loopx-media/README.md b/packages/loopx-media/README.md index 880d512423..c7bbe22941 100644 --- a/packages/loopx-media/README.md +++ b/packages/loopx-media/README.md @@ -1,9 +1,10 @@ -# Local video renderer +# Content-ops media provider `loopx-media` is an optional distribution for the existing **content-ops** -capability. It renders an admitted composition; it does not choose sources, -run commands from a brief, use an account, call a model, or publish a movie. -Shared TypeScript admission and render transitions remain in LoopX core. +capability. It renders an admitted composition and can execute explicitly submitted, +bounded cloud video intents. It does not choose sources, run commands from +a brief or publish a movie. Shared TypeScript admission and transitions +remain in LoopX core. Pillow, FontTools, FFmpeg and platform speech are specialized local computation. From a source checkout, install the executable and register its manifest: @@ -17,7 +18,9 @@ loopx extension doctor loopx-media --execute The LoopX process must have `loopx-media` on its PATH. Installation explicitly enables the local extension. No renderer is installed, enabled or downloaded by `content-ops media prepare`, page loading or a missing-provider read. -The manifest requests `content_media_write` for private composition output. +The manifest requests `content_media_write` for private composition output +and the separate `content_media_generate` permission for cloud generation. +Ordinary render requests do not use credentials or call the network. Use the existing extension state owner; there is no second media setting. An isolated environment is also supported if its executable is on that PATH. @@ -37,7 +40,8 @@ decode. Images retain their orientation; video excerpts retain aspect ratio. Installed fonts must cover the visible text, with CJK line breaking supported. RTL shaping and arbitrary font discovery are not qualified. macOS speech is optional; other platforms require supplied audio or explicit silence. -No cloud voice, generative image/video or game engine is bundled here. +No cloud voice, image-generation or game engine is bundled here. The bounded +Ark video route below is explicit and optional; it is never a render fallback. Excerpt and Blender layouts display the title and source boundary; nonempty `body` text is explicitly refused. Preserve a needed qualifier in those visible @@ -186,3 +190,96 @@ The opt-in test uses the real extension and HTTP route, inspects the ZIP, opens the blend in an independent bpy process and checks stored scene state. It performs no cloud/model calls or public uploads. Report the actual bpy version and platform; this command is not a claim of cross-platform delivery. + +## Optional generated footage + +An Agent can prepare a **content-ops generation** plan, then submit one bounded +Seedance 2.5 video task and collect it as a hash-bound source for the existing +composition. This provider supports 4–10 whole seconds at 480p/720p, text-only +or a first frame and optional last frame. Reference images must be explicitly +public-safe PNG/JPEG, 16:9, 300–1920 pixels wide, 300–1080 pixels high +and at most 2 MiB each. Alpha is +composited on white and encoded as RGB PNG; original and transmitted hashes +remain in the private submission journal. This does not open another model or +reuse unrelated account credentials. + +Load `ARK_API_KEY` only into the authorized LoopX host process environment. +`ARK_BASE_URL`, if supplied, must be the standard +`https://ark.cn-beijing.volces.com/api/v3` endpoint. Do not place a key in the +plan, command arguments, extension manifest, browser or repository. A missing +credential preserves the prepared intent without submitting it. Upgrade through +the existing extension lifecycle after installing this package; do not edit a +saved binding by hand. Existing 0.2 providers still render local compositions; +they are unavailable for the new generation permission. + +```sh +loopx content-ops generation prepare --goal-id GOAL \ + --plan-json footage.json --source-directory ./authorized-frames +# Read generation_id and revision from prepare. This next command submits one +# paid provider task; prior scoped authorization and a current price are needed. +loopx content-ops generation submit --goal-id GOAL \ + --generation-id GENERATION_ID --expected-revision 1 +loopx content-ops generation check --goal-id GOAL \ + --generation-id GENERATION_ID --expected-revision 1 +loopx content-ops generation collect --goal-id GOAL \ + --generation-id GENERATION_ID --expected-revision 1 +``` + +The Agent prepares the immutable prompt, reference SHA256s, audio/watermark/ +last-frame choices and a dated official price quote in +`content_ops_generation_plan_v0`. The quote contains `cny_per_million_tokens`, +`checked_at`, `source_url` and `max_estimated_cny`; submission refuses a quote +older than 24 hours or a nominal estimate above that declared bound. This is +an estimate check, **not a guaranteed billing cap, invoice or authorization**. +Token usage returned by the service is shown separately. Read actual account +charges when a complete financial total is required. Parameters belong in the +structured plan; Ark's weak prompt parameter suffixes are refused. + +![Generated footage in the content-ops workbench](docs/footage-after-desktop.png) + +Packaged author fixture with synthetic source frames and generated footage. +The [390px view](docs/footage-after-phone.png) retains the same controls; +[downloads remain available after scrolling the detail](docs/footage-phone-download.png). + +In **Settings → Capabilities → a Goal → Content production**, the same workbench +shows the prepared footage, external-upload/usage consequence, submit button, +original-task checks, missing-provider/key state, saved video and last-frame +download. It does not ask the owner to copy filesystem paths or re-enter the +Agent's complete brief. Automatic status checks are limited to five minutes +and can stop locally; opening the page or reading local drafts never submits +or polls the cloud. Local inspect/list retain private source locations and +cloud result URLs internally; the workbench projection has neither. + +Each submit/check/collect is a short operation, within the existing 120-second +extension boundary. Generation continues remotely across host restarts. A +successful POST's task id is fsynced in a provider journal before stdout returns. +The parent saves its intent before the effect. Duplicate clicks never POST +again; after a lost response, check the journal-backed original task. If no task +id was recovered, the status stays `submission_unknown` with an explicit +reconciliation requirement. There is no automatic paid retry. A genuinely new +shot requires a new prepared intent after reviewing the original outcome. + +Ark's DELETE both cancels queued work and erases finished task records, without +a documented atomic queued-only precondition. The provider therefore retains +the task and reports `atomic_cancellation_unavailable`; it does not race a GET +against a destructive DELETE. Stopping local checks does not cancel the task +or its charges. A failed/expired task stays failed/expired, and remote success +is separate from verified local collection. A fresh GET obtains expiring asset +URLs; downloads have origin, byte and time bounds, followed by full video +decode, measured duration, hashes, poster and optional last-frame validation. +The original task is never deleted during collection or retry. + +Use collected `generated.mp4` as an ordinary SHA256-bound excerpt source in +`content-ops media prepare`; retain `generation:` as provenance and add +precise text/diagrams/captions locally. Generated footage is illustrative; +encoding does not prove continuity, visible watermark, creative quality, +audience understanding or publication approval. Inspect those separately. +Disable or roll back through `loopx extension disable/rollback`; preserve the +private source/intent/artifact files. No global credential configuration or +publication state changes as a side effect. + +Primary provider contracts: +[create](https://ark.volcengine.com/region:cn-beijing/docs/create-video-generation-task-api), +[query](https://ark.volcengine.com/region:cn-beijing/docs/get-video-generation-task-api), +[cancel/delete](https://ark.volcengine.com/region:cn-beijing/docs/cancel-or-delete-video-generation-tasks-api). +No paid requests run in the default test suite. diff --git a/packages/loopx-media/docs/footage-after-desktop.png b/packages/loopx-media/docs/footage-after-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..0fc38a9519b23ccdaca8010bbcced6ef470bec27 GIT binary patch literal 201386 zcmeFZcR1Jo|38`t6{5%<*(ozwg|b)4Xc!SvBs1AF;$@G>N_J_8r0kJorlPIvEm={v zb9+_q@43!(&VT3no!>vl_4!=a``ueSUysLq-0rvA?fwiqaa^5x8_Tv$n>JBvYN+UM z+O#Ee(Z>y|)!hF*vk6Vec^4g?FX+t=bkGz-6&c6OK(e^#B zrNW8ryAIl<2&z=J4O3d~jA;w|WxGcA(d}9k8n^w8a`{T!>T6Fn`0#i1emwTC> zmTLIf9$V=9DAZ^0XX2>GfJsJoj+W*s*Kw)PGKGelgUbuk0|jp1JHywH)ladVPP7ZR zZZ&OAD=9L{X_dX0oK5dd-~8lJ6;JPp+!l?!u^&WK!? zzIAT?VoZlsyDT`To`|h6*|r=@K34ZrJ6H99o6aYy+%oP9jQtmn7JPgDjq%lduE=r| zkJrKVg-cFHC?ZbksdeYJtdmeB9P45$Cmq|giFT8w%27j)Ta(>eOzD?4$Y-)l>NX!L zBH8}9XyNkXg-L~GCSqV}4erZLIEAX?S^M*t6EB ze{ypE)zs_J6bT(It$4zi{ANVz*|IepUB`VoRxqW*?c(_)Ng1C4`Z|}zP!uO*`kLr_GdjFpK z{;9B|Z*cI+{8&eFGE*4g?^lgRh(5Wp+=&t!y>T94lV?M=g?a+cvLXlSXUH3r|{#FSK8>w=cMRSD-@W za-dkY;XVDmG^0J$-mNK&&!0bcpYA!?Q-AJ8e7u-s-m&%7rNn^2S1AV&Mg+avhdl>= z{D=}4F|RR|AG&iajeGq_m!*S44?gfvPIPp%)WL%%cVzr~APEg}ayAWVA0MC2IEPKw zBKu#2^28LClr(5JFykcl6syN@WF7l8`K9fq@IE;;v5sPE?J5RN&O)l^b#--(jr@lX zuYP!NI{O%NO6T)yTeiPldz+uo_RVd&C(21BCHLp(o9Qo4D8_XjnU?eZO&splbIc4*g5zp(k95Pr!@U+~ zvUo32#QQuY1nP|U)di9=>^o)HNoLVse_hn9>V#R>moLYX#f~m}I6FJzQ6mV1=JZ3- zYV$)aH*msMbumo@4VuCBF zS*>67`Iem>hyB-AV`F0{zdT`OW#w7SKV8TX!p6*ORPD7eB>(aL$p;oMLTqF_W-{;I zy_+D?6vOHNYci##MxoJVdEQoCUH$aw(`0Opy*24_SMQJAaq6#6KjePu_sJ(0+Sz1X zxCUo_{d)HFsjAl8kJ4VPf0;jTWFy;0h>6LNvhPZhcHG7wbVQ|RQS1_Irai*Ni^7scmj@~r;50GlqwAZ7E7 z?wpIqbaeE6q`A43mT7r-cyg)UWGFI<23@;0H{ABA%JU~q$FZkMcF&%y(}iaGA=;}St`Rn4!b3XBtzlL;X>j|7pk#+~;coGz>= zE7SOMYV+1_UFs}sY-DUZbCHcbwf>6TN%{HLLqf7MU9MhbAZ5JzY5d(?eEJ(19k~8O3H9^obsATV;PcGJ4wXirb&s-;}cRoi%wCm z2{q^aH`abH&JI5A`1s(oBT7fh8^di|x9UBj`C9GmUhXoSs~fPx@ZFtbsy|<+A3DIj zKUu;$yzKW(zFtlVlhfkLif*!4f8X<{4^-`$P*d*kK-ROJ*D*-_=ix^HA2ovpl? zkPs|GI{SQfu!)_W9l>1bx8}u`{Nuxeq-7c6p~gxGiVE-F&s(sKhGrd+qjIGso{xft zEx&33;jX%!QB6%XtLJ;y(+6>JbeA~D*tBo%Uz%;=>~$BrH5PGg#&YCUO1#f5HkBP( z6@fd>b(LDU?r({akFU8@?frYV(Zn0Y4b%IEd!?nN|CY~nJLU!YL_A!>;JKWf96iOw z#YL{}e3Md#h~2^`4&hdB%Q$cL|FBo>>7@_3kqLa-H$N7b>}#JWox}6g9tkvldP!DR zHcTpc_;|WpN^&yt?JS1|k{kgp~6pksWsakU_ zGl+{*wF?s;_EBlE6`v}x|N87m;O4zF+iX?C@4i)6QDHme_D~~^`^|Zl=^BsOY_%vB zX6Gv;+`>u$WtTn(b$q+4%Soq&vc~?SL(F+VC1IYWdcVoD{k*(G>uW0{BqS5RaB9b_ z>H=Ml*q&0PSZ+K0@XX_0|BbV^8W&KCP~fM(l^ghc_=5;K{P{>pX*6HUpgQNq1k(?W zb>u{`N;|yGd>*z-;DqSQhK5Y!*7pzTSycNB?nI8Q54R;vvnJ%rMMgy(64=Gva3+HVg89g5(?jz+lv0tG55QcKBKVXhrK+I%;5cN zQq$RHVDf&+<)0HKGlHcHij99hDR+DKR@cyYcS~jEtX9VDWh~WzB1R2*SnIZTvm;7YlId zqi-_Qub^wjnPwi%4Zn2Z!UffE`n|YT+%S^7Bh#;9o08f>yYqVy(=r6grj9EA4L@&h z@4Y7%lLvVUs}8$Op4nJmGnn3D#Ynw)^ThA8TR}lD(7|(K0;g{x1kK7_RI5y%TsZcl z>*-%Cw;bb>MMBZRIPjfDM&xXTBudR8_bEb>atPH?LV%Iq+Va!ImB}v$oULe%d=_{3 zCd1b^hR{Vygfogp@0UpQZqJiKvaXj+gzYhD^aHK= zZnt#eW1_}olC<3gniw#oKXj;auqnpwTW08=^HxZUtX8>>QUsi#-$|W($lXDR9p$(D zXb^d8+emww-C_P;2o%a7Q&ZEP-w%g%=O3Srwe7CB`rXpXs-tgma{p$U;6s$YD%XAj z%WU1npIbxqC(i{3#rn8ft5^6kK3ZN=`<`%g2YK*q4}voUotn zsg}Jma!bnIc(5^w&t99a?+lPt`0qtxRVz!h{r<5aP0}{LDhM#ZDm72{ZJu@#t_|&q zrv2v4n_*#LS~WlMkgH2SSy|@nZW2G)*paW#|04{D77Yu z7S0~#xt@_>j_6XkB1EE&=Qr?)EpYh}iMy8W^|?_M1hl9`Zfmr<)=6EWG)Ra;i_*k z?6`C6xV%NilI%m^&m6U=`d2JWOqV|w_4|rP@%G+g(2Q~!2nh>oNj+%S@XfxfB<$~C z&@uWvAV~0uU2jeG@~sGZ)YmGH?YZdzb|F{c0M&dj?)RIXs4a4 zDWo(*3f!&FbMNz{(cg1CWNBkVP?hsv_tErwuYK;^IXRA@zdea_pYqfe4HfeTXk&MK zjv|PGm2-D^0@di~MB0d)y#Ibh&Y&W0XtYBsgKjfTM=U_~4u$$tq?>7+uj=^ttfHFz z&6`$_!$CoW_5Oi@cpi0{tE}ec=6SCf$!XYYW!5p%{kXj-P5;zl`O8$ z;^FDJSAO@tQebsSGubz8z0x`IFWfI5Jlm(y!WYi$D!G7_g>9E51jBE zH`1X2#-=UWP4zsJi6e4PCp(6g@Y$Z}-Dc>#73 z3fHl>M_=W{#JpMf{^=mcy}!enaZ>=En2w%)er{O%YFcb8Z4?c#t5B-6eV1W{tL@(E zXbyQH79^Pd`2PL-btH2aW9eU_b?fNp#FsKkcf=086MyE=omxeztNVtYA~`lT^On`X z*qESi6O#HDMNrZoS8RPsV4l$fo(Wd|FzXiO^Z0i%y?E zf7Zz8K^)puedswm|BS5Gytkj@$@BH|v;a!q+jA)R zc;F%F53LWzDAvDt!71+*9H89ohk8KGA{pBw3JiJc)23solE>CuV~`JokcTMxokp*3 z$r>D193V~-&+F^CUtT#Pw!PI};eA5#9iOE+&Z{G;Z*I#YlTxMZC#I&Nhi$E``6N=6 zLuo8d{Cg56Ow{u+3cky{wJl>So1+cx9?$!{4rq$OZe(Pn(|bQ^wwTxnNnl|mt&>NN z1lVZE_kE?EQ~Qq#sB6egHm4Ud6jV?!i=WO|Ui;lEFx^+$>zAhJU!&HBF`z9;G-AYS zVM3FW)S3L|=a&(Tbl+Uja)4?8T;hiUtR_D{{=YmAIs_9d>w~XAOu0P~H8p;ik+hqM z4WV|+HhPWW+(=AG+{(_U&7wj+&ZUwvn!`V^@hSXVvl`aAtNE;1G+W?4d)Vre!CVCEL%l2q%6w zp!FYWPdmNLgaL+udLZFO*Hb%IX6BbKUuG=<#NwC7|7l5rRx|uLDhV8jJC%map@4E^Wcy) z^D*zbS-?h31yZHKXr|k@Z)-?nY-wmiJ{K50Y3%BfTgbW|8Y*g3tRi_xPVSD&C;cDA zB_-cVY%JXa4mY!EtQ&D*SB6{jzUj`Rso(=MwA0YgWRo1+K&Ol|AgHGVL`Ah@ z$ekN~Qz*{uO3TD#BlO}-G@ER(%dplkNlAN}bdrK-?oO2K_hqV-{HzvHyo!4pU%pfw z9N}qJNHDqKH#5Qd=c9MZA+2%&buwA6-$X6%6)bERU;t?%>|?hff*cs@x8AdQcYZ*bA* zpy2fXui~af?u@(BnWr7mlqzI@>Epw_Ek-XWbnn=Fe3$~bz)L}FuEq2q6FnD?BeqT%i|EHFNp zXJl@^@zt^R$NPIXJeJ<+D$2^p+>*Q6+S{urF0R*|lAeAR&BJ?PBCmu^;yk4iH7`5m z-utHuZ!c@aW!*aLsqYzCBI*2|Is)9K}@dczeuA$e?Iefpaj@EAdyfq zfl2yB2(?M^dCf$jlL?)o5uc;-SMK$fIuBex%HsZ&!^*?Acmy%=C6E2wy;w29rOqa4}*&Ge5o+xbct1*g|QU;MJjQ|`Qvms;q+YRXG;=*r| z(u{q1BCsG*WAQDliE>k%MLp z&~H#GEhY5_UlV`edR|gO0JCDAxAAeUTdXVI*2&BKun6p&KTfId|w z(joFUpW43TUlI!n3gY4Brj0&hWW?w1j(!dt8&8nX2WXraW&0D7bR9`Y>@GT0dCU%c zGWS1ehRk>h-cmyz(f*NLZ&}QV+EUx(BnVDP$1_mY1dokasv)R9`LelLWAJ?>YMP?Y z;t9`kG%_?>bh-P7t~fc_e0r3wGH*140`TW6J@e@S8JE%5@|gc5LGH1UgxaLU#=ZsI z|GhBRF5Ua^Y~`u$3r*4N0>^J*It#sieTx}}Dn|drraLNXY8ZsxKRTO6oC5`AWX|a7 z>JA;WJSd2IP|-|0t$3z+y&LUJt7$Uynkho1I*mgMmTp^XQj zASdssbl)L7+Magt!iA6E8#HS!IvEx)vNi?=?*K&aNQm2ge27+>@HdV+_gRtB z?Ay1`Pyv%n?_;Yb(b`o^n%X6iVPUB5Ett$$ByD0X&A0E~e+KzD_Y2^2C!MWko>pS4 zC714GXI>kQSUrlx+RDlRm9*;W?7&O(`H0tu{OkFapNlN48Y8DVas;{_nwDEG&ohHj zY&7v0A0L;!I$@}(;N1q)ExEF?BEZW_7{Q2yiREmKkLSy91}2`a$?i%j%rr=tJybRS87hjLF}sV*BVa-&qyb8aYE+=`dG zGo-n>Sv6ueA3wjBhX)8IVQ>dXw}FD087Dd?E_cwvr4bQrU<1J{6x)B5Dp4Ud%jWA* zq5$~pt@YnPpwV6eXhRk;b|W05I<%Udl<~% z-{LWL!}?sE^KdJJ;lW;?pVTxx1GM7XZi6c+z4YM{GSP!koI>apz4xjfKb@W$Si{-* z`TYiWbdZ0vZiKXM!uJ!gUIYgYMZd#VjZ}F_;5c}4R4VqEWoIQ%;&D-J@{K>(kG;(T z&!Jagj%abLUHh1&Ofg%GG`k_7OG8bqS`?424gh9iVgk|(!A1O9J`XM(?aO7LAqPa^B}Y;LXDi9`$qv*$$Pc7qNB9*~uj1Ix8p^djInG>h4r zWiLhRx9`}oV~BnS$KlwaubYwt_3EELCut|BLb}*17fm35NBRx|k&Tr#B5CFKwCI^4 zE|yeD+iZ^XtgL>JJ)ll_9iCrVU-bmP=%e?Szg5Z5Ss_vP@Q_)b`dX?RKW!jr%-ww= zqfigUBsiE1gf)Grm=?~BJR&B>e_kbx4O7_gW#v^Jm z9A`1V50NUmPqER^X{+S&Wo2cdcdU=3Ino{tXLTBCj>`e9(NZ}-Hy0imX=t{*v=nwl zl6UDvjq~6gq%E|d$0%Ug!FdTgDk$3i>J=~dGTHL-GIt{FcvcsB!S@djq(St}N+91ChlHlNX(1cwn{f*sJ!5o7 zhuPV4ds#&Vhny=VH5fOQ%rF^ct3^ur?(Vcik+bCD;s0}%oK6YCCZ{Bsz`=Btw6wNv zON<;jLrwj)#5O3X6!$6kSgsAfyJ}|q$>YayLuE%-eTiz5$Lb=T5_Mi%Utix{-HiL@ zsmaNLqVAKQ`+xkXwtN}Bxad)J*!$PRd-wM0$DsRi%DS9KCTBlE!9VOdM@CIhpmV@f z&S^D2KmV_0D;SY0@b4~$fY@4@Z~u^}DKE$HqIx!vgpse`6glg)zPbd)H)$xh7y$|3 zxrE!NyGR^3NuyB)fwx>`-6qjpzKWPUdkAs#*RNlc2XCdPH$^h@$SJoP0c&D(zkdC? z=A41?dudj*7SVMi{$JpXtlY6BOhsjyj)`gUX`>V6UJN?K+4Vv$Lr+i7@#DvB!Wu~W zb2J11WgrX~Fca?GyN5F>tAE+qsb8XUD-Ng7@+oc)Gu?}Fk6BA#hWDeslpx1WKQg@s zu5Q^a_wT`TMvzeGU8))Q2TRB7vPJ)9BOTqi%>O#ATse#&QA%lqNleAqa?7Ae>VI6o z<;$1%Xj}c}_&t!s5&p|BE;fNzk7ayZ^Q8-GN#TWWuRfglQ&{UoEO)x+hxLexiM{RW zGG5kt+0;ZqLGk_j_Z)g@aq&0}Z4AJ%%xFekpFcCP+_}l4=zl}T*SjP!rN-NO*WGJs zUOV#`{3@mnhkfe~X*8z1$vbpt$_M?E+1<}W#s&n&xwf#DOGFw8r=X`?Tjqs?bVP9zpmYYsO z?v4w7aeanwHL`U>UJ|bFC0?iANFy$ItTrxzclJ@Xah8Cn4)H1RYr_6cHMs5n1wcn11)R z>db9P-wd9XGhSTW{I9MGr3jqZZee4?N2W&I>qK7!qv#acFp-k77u3sc2;RCY)`-}ePym!72PP)u zfN-j=|I*Xbn}~)aa@b|485Q!XRq{#=SNPW1UifRp+M9;U zvaH?iN1I=n8JUJNJ+zy&BrrT*y zypZH#IOHeB#>OTmt1iCbXyC@^T>R|WsTfPh>VbiQFpEGLroA!`H%dT206?&b$=7K1 zLqfeAfcEv1L@j;%w>G5=w`IKF7kY&Ur+4SFdW$yAC$sAN516c~9_Y%H?@^V$x8r>4 za#5)0u1Ko+OEM{!l z{kQ7=FPtd@XXGSMe0ymnbFw8v(LZqWmJ_3WVxkk=xva#&$h@{DFE6jUx|)|!Nrvm; zJfP)G=qcITI^VrhrbEb!h6&yPYQ2@S|D}6J&)2W4-I&}~e3k12n%}(9mE?I{*NeY1 zFpbfN)&g3D4pI;^6QhXfnQE_tU4Z|kuqZUM$J%lA(aKkpmq&r71KCSZymjjqM6zIq zSg*dp7%2=v>dIgm&{M5!Z1Tl_fq4Ut6BiMA1U!_y3F+ADw?Z99QA6U;TNC9VCi$u! z56Ub1^tn?)Ph3!+$>uc{=CzBX^p_9qI$0X&Y=3dkI+UAnDrWU!z0%G?#c=N>sVrU6 zpFe*`m8M5c7&jeW=x1WpLVZ?eetx|+Dd@D75_i1cbc*UNrUBEp`6^~F#2?f@l8<~~ zJlCzsDb3kbpvXKt&KUEn_oLXpjp-KtCdWp$GL|cEq-!)pf-HoEw~t8vrMEg&S4b#Y zBcYHCZIRg~WP1{mD2gcvme7VhOO*rjQ5ain=%wD4*c!aoi1%?3$x_QP`uy%A>wG%PW>okvkc zh~kP?T~^2$lBLZ9RFWAAzFzPeK&IO1*nfa9a^T|YZkZV==??gsLMK#l}>NGw)eBG?4#y8?- z^C9r35*GDjaYcmwLG4XBWqby@Vl|#K)In!d%58>!9`Y4%bD`K*TSvy%eIoN%&Nluj zhGPPblq(ntM{TR_byQN-D~@$D?~~@JUO65Sy|VF+@6lpIdk=#`LwB*;xc?)ytzoO9 z-*&TZU)$PiY*xm3$nK)baaP|22Jszcje~g_(quf!)rwvlKhOSHk+WD$Eh@eqsrK~Q zVHchY^%X^1)(WPs$f&4woFa3qs`_8)ZtVP5K->9Q96Q&i zBNc(9cV!-i?|k{{l}?Fz0nvm+AW$+gCQct1MNi7MW7JJw3g$} zX1*{pBPK3>boPd#|2mPhGp{v^cjUCOv-_H-%^2l9&l7W`sl`rAC&uNJCqy#H)PYJw zK`x(=a6m%rNTfCyTk>Tc3s+Z3%V;L%ORR?u9SS2T9P(MEJJRFYBK8?=2}4#sc*Xds73(WykNYdho{P?$CGY<^(B1oaaihFnRcJgUGtMC( zF~#isyrO{DHxGJgJN4lCsn(?25D|VJV`BvmI`gAfD?+vP27lh3p7Jql`ywN*Suw`o z{@eD}?})`km6jDFA6beXlRu+Ur*az!1x@H~03L9Uqp#DIb%-{HmL1M2LKx%&&ycWJ z`7G(*N{ya8hyP08gq9mFVTHrW=iDzW+`;j@2{;*`hDHBX1t2BZHg1f5Qmm1%dy#{wQ=2F-f581rsT3uTj&G_)bsM1Y%ePD$oWdx!mD?NR1;buvm zO>i}QhbE@KRR*J;9;mrop~Y?WrRqXwF9=e22UY40w$W=XX|w*A6{*nl&DGs|^&6mmfgW$(4^^_2qJvZ`0hZ9+ z=%_7RPLd3K)GlO(G+^G%N*&l;$c9BiG?dxc*qq)j0Q&$7f)L2xN9)ulx;c8tN?qG| zGocG<{XxKsOXRtBf)0SuOKmbiK}X&t%7U`C%z#T2LHfrPNp$+*kD>c=PJ%c46$Ph` zj|h%pW@^RZXsR0MEPK#4i01?;x?-3f5$M~+)q#;{*yVU{2WE%7wSXDUrp#waVjWmB zVg$oDfo6u`{r!{s=uU9&I(joa@+#CX4YBTT-_S{9EgLAETOwI%(r3~`PFO*`pghI9 zM8gFO+t(Uj@40}51Nr@zt5)>q%bwjNWlgjD7D8%2XDxlko4YFHop(k*3thVFo8SHp zdlKdqH#8qRcUn)E=`T?W>%2SQetaqFj^kGUS^holQl!?AjMGgYMSeQOhYv|rEpt6O zyWn4ASSU|WW|h1=OSrFJZ*$IIyJV;ufBR<^5h5O^%S)0XrQu~Ex{#iL$Iseygfx8D z_U+r9d&*?&Nbd#4%fPHj?hi8P9#uak9jzy2VVPyVjTDYQ_KIYwyJVF-KSM=LEzaCJ zCU!FaOspx_#mB|PN-F}oxBHGf3JfHPW_|F2j;(+}J>EH!=}F)8bd2)5W*aea1|h>( zfuXydCI%euV;BOfhx4|a;9~W@?`Sfek z?Ud^oU)`u2ZEY=5Z;vLwca>7O+GH~kGIM*Oy^UUC-Z#C-#{B&4$qlOe$8B$feXoCZ zE6m|U&(K&@@`D|N{BA`mE6HWK$ufJzHN&HirB)uQKVrTu!YipPnQ45BIxio;*0TAB zoL9t7Eofyc+*jA3XUM3*jNvNN!Qk0tBRYGoX~C2C>7xlkpMnUqSrCzAl=fAeR=hTw z6CH=)m5n60f?6mKlOGSW-jrB4`TGlk* zhLrnNHq9>1TH&tI&J5-1++V{bDjr+Av3^MR_F+ibM5i##wWE+#nb;$l#0TzX_;uC# z*ETC-o`rYf_B&`e!8r(R%x7&kjk$lRpp`$B1-;H_GQm^7@>fP4we?8jH?#ss? zXY;eFo(^B07d5HB_^UO(^@r^CA<5*gpNzZJd~fI#Fn#E9dHslBE){xRjo(7f_>}n7 z{pVbN^jCV@m+d~l^0vWe;c>p|3U{&b1W(RA{ekWj_Vn+`8_y0_eMu;t-Kzho;=;#~ zJGG8G3de6f^|XHHS;;f7Gd}gCRB3b{9Yvd)meu2qdus_l=a}^vp1sgT*@IYK}a4?i2Zt?x&JeH=2XW>ljhe1FU@ z&XqMiov4MzlBYUaUhXTMx1^Q_)N)&&Tu3`9@v>IhBJ9h<^^J#AO{*afLceBO@4n*8 zBP-AGezJR5sGwVCR+mWWa4$1?byYa?&uwSRLNO`axhr#91>|@j1-%k3o4WolGet!M zd|H_mg0S0qba6)~Wam?E-Fj4-pae76+c^+rOe|h1v4Jm&#xhZYv*%=emn9o_va?5Z z4*LoiG{CV-t0bL&NsM~z6DU$oMl1CXpiN{^`>4v{bYfaTO}vEpw&>hZ%^Eg-iMb8k zq22DA^m-XLg@p-*3m%}PqN0DZYi;@56UG>xr89)BZ$%aO7x$l|)H2Sxy69Ffv?U4lU!sz*Si#L`nMxLx2#5IprTnb(|p6!hfek=4Y#JzwGtj&B?MP!YCN`smP;e-iN0< z(Xl0v&>wWxOVR(+us=s;?xT;%(n%Nn(m78Ok5r4N`pwLF+FVu{rZmhH0H*SOt4t}V zGr}sVTwIYSM0l56fyydf$9J~wNRZahiM7t}Wgwx@iiTGWymlh^AMHNyUSnIfM#ve@N(c%>?nH%i!t_w#uZIvxKVhIs78TkL@}~vRo70 zRR0G{3toArtu=74Pi2|`wjq0aVc)zHe*Y+K%KxFX@oQr_VPj-sVY$;e{8KvYU8%ZB z%6R2zDQ6*@h82z6v++LGty9~@DZ?5|B-(F8dCKGC>0N;BMDU=wd)*$DW?Tnf=T6+i zfddEj?Ry~URy*o4dFR069?_kPzPH@Gyrvy2J2P+TB^kdOA@V|F?2rNOwNU+Ai|aTY zFgpLwCh)&~Z?1zPI3(o%lugXVh`Pc)5I^RAOMEX&(fbUlJe)gBfjeQUl*V=$8Y}1w zg9<40Y|;*0uwXyUSaHesYNn%lscMA zHZ?X9P1*eXRlX~`*&(of{qkk++0>L2TPj-ijhPoaz+(|2BTF7XW|q2q204=#6G&wZ z&kRxx)LO>h@J+Zt47f@O>sAn8f}*>2?MfVhOtdi8vDTheN_iA|PkcsUpri^W9Z9S+ z{T}N;wHO87hOSGrfeIW;4L*_!65;Pv=#e806TTe0{CURL5q=oApCiH$^HQ({6BTs~ z6rQ9U6YTg96IFjc52A4Fu6T;s0SICs@4Jo z;L&-YvUGP>LyQMQkVFg$0-=+5P8Zyl=B!~S8ManZ+U!C-JPZMJ)_r+?oRSBdQP)O5 z@j)uYP6$&w_5}1Qs;-Pi-@e@g3pkG%jx1fqSxK_D%JYeNtsiQkdiZ1T*E5YkPn5_2}7jDNo>hnZy@X4!Nf8b z4M7|}{y#zF+Lj++g*6AQIz2;v>s)*o_{aA`%^#?8XHx?`IRU?t-qGPV8Ro7Am_CQt zfeTLl_JH_-1xxrfu4+T1H+0ykHxjE=2Rih^#fziB7MLBT@qg?`6_{1a&Cyg{PeQZ% z@vZzxr+9qCi_jfS4Gmm_bpn*>XDeK{Qd7#%x)CW3(?ESFv8&bo8wv`!W0}O&Ikl$M zx5UavhoX&VZI0a&@59jq=_HS8Hz#MUb=z)jZEd#ea3OF{h#xrc1TZu;EiH$ytB>nR zV&X}C{hc(&cqqiBq)sUw;O6BeV~-dqE0bZn2wgzJPPp|jM)KTQdWPW+f#z+XCKRxf z<8x=?Qz7Pev>p;ZeL?ieGpI`}K{9UPG{tev#ZZTfM-@XHPu zgq5k37y*5PlUn~?SPQt!s0@>6>AyrW>)IhhD@aC0Mi>FA?VDcuIqDpIs-y*6&H$blI7*()2LIE+^ zueVagJP$ywc6w(b*5LN=VY(gxKDpSQ%8+4B=hU|=)DWkOygyc0PQ z685Xrli6eY!LOLYEG#W0fc_zhV;s|*ll_&<#O9BcoFdADa_&=;BP0BD*8EtYp*x*U zsi~={^#nhua}|aZpCfPi6l4~wl2cNk&o86S}`v+lU zd2XV?+7!iFic*58WE4EHDgDcrFOWvIFHw@mBfIb(xV!(% zC$>4m0fXR!58A!A=_npvk^5Y3MNv=rgPd(M&B2Hp{Wp}wpP>Q_^SQ*LQf3x=t^5); zduIENJc~TM0;A4l_(y={WzGxJS+hW5p9mQArPWoz_Gh8l8UkUUqX?+(V_BFZc5|gL z)i5wz-@%yL(b(O6w(0{^Kgq3c2Z8VAn%{B%|W<&-=~UoEihIhYJ86=#3!|sZ(SJS7J*| z#y1B?Bkwi;8RkLwIpD{e{f$DG|4~UviOJ~%f1vJjgwKuMlcjhP;!;2xadiMZ?O5Zt zZ$4-qi-KXX*)XQ;rP-ZvG|s`ME-4`1L9iiRoln+tsM_&Qln8d0Fgqc01&)V|AjY!< zQ)RE*f!`r|ndm%5(Y9_)cwQ+};r(;u*evgsg1SAu@XhZ@jvcyo?68LFkqgdPE`jY5 zhCqT8DmZ*bO`m;zd_eVw5AjJzxWH)Z@qoB7ZCuhvEhG5z$bJYl3qwB+IwTNxY$W%2 zlKm|ujH-4d#FY^!hu1<-(KI)D?uxM;v!)9w+nE03L9^iVPj{% ztCJ#e@im+CW@y2xaKkh_DgS)i&12=kHOV@jb~Am? zHx#v$Ur=dD_kk?~#5OGTTp5WMjv0_2j%7CtW4jkJa^qN z#Jmmy*Vx1aCN8CapM|?SYb`CZu~pwwTG`P>4{Pp_w;z0ElXKPZoaAG{U7$67fL5E! z#G@YlDnoGtdGj)b9}3qG*fdc~=CJuOr$+kkaphFnNJ7)nzQP8F2uRnGZnfe$P`@>$ zf?A1s_*qW#DdK)7#Bv<;m#!}EHrQyK@mHae&pZkX(?sujlYXel^`BW;qjYTVMQIy& zz@Qm8_WX9h3gCyNM>a$&J&*$|C@6CkYf$d8b8;|PCRZ^!I!`+)Qk6MC zG@{=I5EjnDN{4Q_5|oguSFV^;dtHTV9kaSG82|Y*&_w44WpszmX3TMg7RZBDCavEKS zKQ&1c-U)Hg_;mvDkmg(d9MV1Gr}t}XH&FdMs$jMN)=Zcm5KfpS+VwCi9K1xI9gbw> zp*Z?d0mvN))NQ=e8l+!#8-P_pFZ2}nozX|@+JG^@x>~I+&Q3VzeHNu+lR+&CVq)wJ z<@8%58U`%`(Du|cW1bU{cbp3Ph&XfY>fCm(=XHRh>Y2x0{_ToGiP3Op<3i9tsQEerGWCoT^X9X!lTOkCE)_hhtz zBFk=r11O6K4PV1DUQi&MO|kG6CFrrgd7c&nwwbZ>I3K~?`}+0qsx-@5!EU`(f4oSb zS(J7kS2qr-2|GYDr(on*{yiO|Lqb=F=mEV!D@PQu9f7M4NJ+V2IU6`p{X$?dr;#$^ zw1EJ_X_N|Sb^hJ<_IBzZKyfcHp=iBPPJ6_}oDk-CDav@Vfer(Aywde;iLmPS^l-3a zCy(AU*rhW(Cub1%Bj$dF3!Y%eey+~WbdDDFLZ=?eTzJJKY2`+oQ4UkKQ)-D(+kCFL z`ryWmT`rtdRnYdZ_0%j=bT}@OYvD+$0X8Ca4yE4M{WoB6)0XFczGV&^{7W6YFv`5KOR1mdOp}OsB`Au?i zGfgfPG>(pBDe++B&OT-0wj*z-1dbw@4qJD114@tfyzZX)`SXPaOxB{rku)GNk%0xb zEO6&rLjxIgvXQ8$Xzqb#>x8T=6cmG^7t~ET&kOAG4cklqsgH2fLaj(gtac}zFNsP? z2Pj?qPlEUgkxp*2Y$X*=Bp!MpzfSTw^raeK{t16=?KU*5>@M~3=<`{)CxApWYI?qE zm%?o?;Z?z!peYIn=IRabsw~rYJ{M{*hwR|=({;nD1-3u(S72+=R%j=1h~;D9LG$&o z8EL$lq_q;)%^<7cvX@4f{R+#jUGLzDLM;ZS$dJ3LRl*3??s76ZAfq zoH---0~r=&?1kJQD1wa8Lyd#`2%eY5rY0Wha=*0-m)F;oZb^6K>+uY2A+B!xgdHrw z-C&YYRtaSoHv{I;6Yp(-NrXpYu}|{TJp+m$C4v*;12p70SJ2w6mCynQCc`APnr^`( zz2`|j9PUI&#V+^$iV$3kn8RPC9{i5}fsi+dnF30IN;SW*fB|g5u1NvoI7q zOhwXI`MvbjOni5eFs6Ot>7|pz?otwt-jb(|n9&O#EUd6bslY6Z4|+HXx{Q3&wTsW4~gYs}ToK-;SRPPFzC{#KJSUgVEKmN_*I0x&8NaZxd~7 zGU3We-lf33fM*<1mzg@LOKw5pqPQyt+bmN}ZLQ+SZ&cc584R+2ZL+@A^9@fp!UR>} z_<}Id`H9ln6YwsVD!?%j-Wfw<|d< zjg`f(p*mR1o+$~hugaw!PksjrF>Hp;cAZ04gfe{%4HFtw1p_3>9PjC-XhvXxN5>+Z zv5U5YaSRI?T4ls0!%1XgE}_xTb&NI;y}W=Y|4Xf%e*pjg%`|GQ-`LpL(a{0m<|{t) zG*a{;@yh>DMf}zl7IeFJgKq6$BsFhaboqJr>_J$^hK}7t1l9zU@1kTSorz#hC;*Fudq*i&0fOB z3^s`(A|hUF>Ig`h5V;Yr*HfR50?bS2D}sB1=3QuBJMvUWMP*};&(^^QOy ztZkhW}#i$o5Y4|(xo^!b>VLLIAAN?HoqHBO-1Rl)A zi1#nvzn5InPz~A1!J&XRE~xBbBCajOnc{5+*n?uW($vzDbDLyRGsb8ErvmpPZF-id zq(Cch#D~-O{=FhjPYy4KB98IEe{{P9?O(OGb1L}cS3$N{o#@Eb+@*A)`hlz<$ReZW-()Lo_MdpHO5wFJsV>@HIuRDBqBqaR0T>*0kf*Tg5jf9IJ7L_X})w<&~~lQV{V zKLr&VH5RV^TVNd9g(og^9oKJXIcQvRd8vj5DAyU=%%E2YJ5a%5A~8v_VV?j@iLRDb z1@;6mCnQ81BlGrN0coaylQ$w=p7{JY$0kN>0397^#V9ZVBHN@yohk6B?GTp|f*Rzy zP^!GVym_@3U(3a7eWG*Q7kqUR(}J)m4+g>oE)Gx|7$(eNWx{NU^H^J3`?E+b8H{ix zekq(Hr~j~VVH<&bK3;mmaUfH;S%L%pX6He*1~PDRUY|6YlK?_lL}mH*A=*)h580fXpC&JvQn`0o%=5hwhc zuc7~f)%k^K2Dk1ZEhIDn{K!%|y6TFI^@cgGwaK`QgoM6r;|!>` z+-OBIGEUT-*r5m5yZigKtN|(n-&l!vr%7Vph06bBf#k~%%ma>=mf5_DZ$9+)`eT+r zV_ZA8JfjzDKoBIcI7;09DX~3ZKVc|&*JE4A=Es}$x5BmpqneJVlamu<16n7pXSAQv zZ18XJlaq~5>Rq?FGTkFz0uW%Qp`igSMVuP$&-kG-Sdfe*d7S9jKjGwY69dd8|5hIH ztrcj#C_eaO3yB1gzf&eb@JGpRC%n1^b9|6;xNL)at z@R}csJ8<#1<^w6mo?8hCz$AI7{go9JSekU|%RCCGOI$1s@Aih%LXw181^ysa?emgY z?T+^`YlOZY|NCU2nLHVrhBz`;l~q7M0KIwWkPRl93GA$@c+ZY~A&U1&kSx?PudFR! zU6=={%(azBrgf5k(L$jARfvdUbyt-NA1d&`H!?wfgB})0>Kift2Yc`Rj`jck0cV8l z%O-p8l~rV3W~$3b8g@jfkc>#S%O06cBc)BLB-tZcR;49fD5OFv8FfEiy}zI1xPQ3+ zgu94V7`XVX+i)9tgU6uJfYksiSE}tk zyYarPN4Ylw3fa{Z6F^J``XK}bb5Iymze zGNiS%W^q#OrlkqrlawW{3b)<6@jx?%NmkUmXpZGtN$h4T{;r{t>h-u+Nn9tNfUugo zu3e8Q#xE*4e1TPGTBp$Es)R)z4bXCD6OFGDq>AZG{~BoPn! zQ1=p2OHMA1BLohK4FB^rIh>r7L+r%P@zGKAm#2O`AhOMVRH_J1q2S=aP=#`I;p9^J z^8DG2jfX$7&vA}>7vklG0ZjIIE89_^5ShTi^5oJpGdItzQ*CHy&{Ti?8l`$>`>{eh zdwcd_HLx!LlmU6oOFguXVCpJjxMF{d2%kpVZ z$yQOMeZ}ALo9nLbfWW|MX6s)im-cQpVle#jZvQd6L5Ab+;~m3KEY@#Xx-YbSr{1Z- z%A0#|K=S=m$F@qmRDctj($wx((sOyMZ)5Fkb#0q^lY1g>q_|GwNA(@IT+$bolNOsp z4~4n;`PCiYan7cG;+zsW7QaD}0yu|mPxmCizi?oHxa{oaR{Zg_d3ku|5Wdk@dFfIB z<^kNzv0ru1I?n(6vWvaz*)t7A#VUC7(Z+zFnE&;Qi;e9Ou0~ui4t#{m6Q>K;&xx_U zda&lr;>#ms2s>_$EnSc}=0y*S-R+oPG(NAB=o$!hZ3gGzTD+Jjddd~BOF9BbLcO?+ z>kG*BL~K*f>*SiTggNGVs+!7 z7^J~ODj_X*tBB^5$)5!u#5U5tK0@(qIbC00pBAq5iYg0*ylf@o=z&)^E3F<80wck3 z(mQ&;Xgo!K{OvoK;h6wk{XhfhvyL}hzSX9t6SwD;uU8Oj*TZm+?hQ}j0g<8)%*d=M1cu`9G0Vg+t$Q6FArvN?CkoY3)sQ+$8anmt1S4Pinn{ zI+**5Rss-v-X{S&1aU{TTyAe|nXiaquSOCJ`i^#<&VJtg0^hTq$8}T0zm21Cu4%q= zO z21lm&rtC%AfByKfF?vB$`7T}-$bNYa{Qyk#JU3!Qs|Oa->u_=O!=zWUddjiSu-;mi zT19`GcaAOJ)gLsjRjsuc4DRqo>h3~60nk$NPxC4V*75~w(Gi5I#^99h~fpo>Eq#L;6*P;DnN!1LK6$7dubV-PwM}n_%Lj1}R_@av0+g)9E z*f47*1=rNL%INNY-d}f4>*JP{c}3mFS1T%HUi<;0I>Yl>&@FArR;E8BJlwho=ZyRN z9PT9aN+A3#<_)8M20A!Ha_O{Qi_R(j>IaaYG+)HHzA!ZB5EK+t)p{&Hbs(@%h|OFJ zN(B2=Av%eIEQXYB885Txq$VM@4NhNWGiA+B8|M`I77Gk5zdt-x?Wno5kO8jU{8hv4+v+_CzXXyO=zvDX!khYxPeA0ghFiV!8iW3u z>eV^3adR^>&DLvcEQ5loi`fE)Y>KKay$)M8I6|68&IDq{E6n^NYOa}Hip@pfkGFyM z2iWPn>3eshmwOiWQjO?Zkf-M0m+Z)B>4T24FC&ksl0}(Ur-Gi(_mr%OAIoh>C}vT) zDPxixW|Q&CY;po=I<}2!2XVONeoLCrbJ{iz1Obnud>S>?&$_O{PwKgdP^W*9N(<=@ z)M|^kfM(6U6*%<(@0~-ukEp5DQ%9Jm$2!FOIh@Y|0PEE8v7)H>Jt}eY@OO-zp# z-D&aMY-6Y+G#vrHBUB@BzV~>4X?E_e7$GZV)r;v$74j>0gTtmOleT%Fb?Ft}Xa4x4 zztWZs+!q-<`^rK(d!h2m`GILbK!!h^bG3pteP{y#aP&tAt}_mupxATKb1oN*MPCLJ z@7jPS@mYb2po?fHKQHg$=^-s0WF51yt%KuicUW9O(ob)u8bAHOA<45>GNoaxdRs1J z>B*0G-RVS30SW*Nmt9kN5-r0y4nk_hTF?!K)PXszNYN+A)HVNx;-~f`F2!N6xr$rPT6+y( z^a4gHx~Z!#ApbzsfX>q^MPu<2DQ_KyBpXbHGwj^gr$}^N50(|3Or7`)pxEWI_F$S~ zPJ4+Y3tLd2aNnxVq@AQ~C#o(5<-2#=QOISQOGrp{*lHJ&nc4QT=ldyO=n)8)c)U}$ zM7AjDpfP9Ji|JeWX0%rhaXvew zzP41!{a(yRSt>7s=zv-Xn)xqmsi|=?Ckfklu7uZcABUeuZCBZkp<WK8WDT`IzUgE4-{F5--bC3dLy(&KF(7T~|{RH7~jDc0Fk6>m5~$RwqP? z$%T-;kk{pjJ!V;K)q&23U*#8oIM-BE4&&kBclF_2j{Kj)QBZs8$hXedn_0XH8L#fe zrE{^yv*sropJHsDYu*igGxeW&qu{Tok-I20LSf3fTOT?Ze~t5vtG9XUtxwN7CWU}+7wds`3S6~whhXtE2F+0) z>NBMmhA-mt)V)||Yn}kMe<*KUr(PXY-E5hk`oYKH+fWU|_oQtZtJ5`EMqfkHT;Kl5 za)*mhK1(W}jehk3s^mv_ML5>#@+de;skhke0oaYxBK+^PST8xeDP80tqL{x1FY2&f z#1%gpdyB<5hcZ%puWp9U@@2;40Q$Z+mz)$tA2bDzGVQyDDX82!--^Y$JqWYlB>HVo ztuPvv{&d>XS2VUxu-EXi?<|ic-%Tz)2gN}x0nse0rmEYNmu0=?46F|9qDLfqOvq~u zRIf6M67H>li|YG>UEOs`HLY4w*H|1#RTeC0!ks^5G1x7nou)1-bWYPNK40CtMzYAP zQu$;7FI_LwbAxgY=WDd({57Z9{Ui%iUD3!#Lsj6Z3?6cOQE> zBj0uZPTC^!E%LYot}w{y++=us_54vDJ?+w4d!O#fm0(Cb8Ugv6D=4QwhT1Y$p8!X` z!W{3bepHb1K25kiztm&gkK2{4cr)MkA)DQ9ZqI*lw~&@dGFCPrS+^knsWi5}rY@30 z@q7&wyGm2r zzTCAlO?CA`AIRd;o+>V}TM$!FCo?07U(fRV+J#cDSL(aIy?7GzKP=#mDyAjWbOAPw zTNzy1G$UWT-q~FxHWf2;U4k}X29V)%-}>Te^Zg z#VE&n+^af->?EBLM0eE}7Eq)=-E9|RbzqdXZz)9sS9W@xhU6SY{Czqj`K=F+rQp8p zgSEvme1UnV6C|lEs`;?xp{)=SOHO!2ek|4VF57#LzoL3i^M_!*XXV1*uY|@{#!XtU z9n8$z%~Af-N?4eOM_N2Mo+f%Y)5tvUTT>kpqVlQbE@V=A!f!jNG#){VD~^?EN9n5- z2RnYFggHd`un+_7lhm?f;Js+Wl|4roZ|{34z|hj#?vY3j@ZB!>LFtss7UrC>MVH+# zV{fN^_zSgL`NkKzY3{17kHwhcXYB&QkU8Wm&KWP4AQ$`NIlLh4?!f!+g-+%b6$!e$ z0z_D|3dYiyUtis7+|afzWg`}?En zkU05pbhOcnhd7!AM6#8N-O5%E!PsZhNSV(K9l4eI6lQ&m*P{afN(_&9Tx!#-36^i~ z8r8V7F<70y+yJ~DgmM^{y7Z8?^|EDlt zZ20%38+58%KTj#0c~ciGvv2)4YZg$gimYuLnm_DtKB%Y~oG+B*4ScHLZHt|JcXmL| z*xJL>2*z2FT$8^7ZG`!nL|Qcnger#j;U=5tjub71B~Q4ocU4P1juPQJ7?FCJkfIl_ zKF`%N&fsrqtJ>{bmXgx-WB*HUZ=a3>^!=ouJn4h>P)}A$LlK< zBJo%?D-8k!x3}kb3ho$8TKL31l=-tT$|ZWjnp%y#)=aj&XN`|tCNcXr5E*$#ci-HT zTI^)XNCB|%gF~JWZ<^ZW$w=86H!La#8>({ znx+gFc3cft{kxgTWYjf214H(S%lDlIKj z6L(;!+AQ#Uu~T%WqL^na)!1^K-cs#FHKH$g-3or=Pnza``U0Xufmk z1R>Si4w-_ZJuBX<#MWKMTuiiA^Np3~Te>AK$oyV09Hi9M*VQQ!sSj~7%d`e|+b!;J zwxpJGcI9k(2!v1JtV_DIXwu!f&kBClr>B~ryxb$Y!pz=GL=)RhN*}ze+--f)fu_9m z0(a2F+KvM$oMM`CilmMLdUtoY>)!2qTQ`foQs>}2^#;_R={{^~--SE=zCZUY;{}j=Y-o?$W+30vOrpKG zL*J?q=uj+v)r@f;0HK!=N3&!vy18DXwbNxb)87-iz-SpIf{VJEyZxTfP(S6l%9k4M z>aWo0QM1_vZX~d;OPXiqO`hO*^B0qmU6FdGo}I_*or2&fNRcVf^VC^X%cf*YZ_Mql zR9I^65?j^#IiML36&LKPI;u1>fK z5278($*z(S%6~OQ+uhu1CYK$7fK|$9#+pRCsx(Xgqz|60!-Ae({KX|F_nlX$>UIe6 ziRlv$XvHU|DEo*|?p7EJzVlpjCCXuo6{RgPG9p6JH*D$=Hyi6N!#kgTov}~kSNQrR zzV#0PAEA@7)<>vZ?epnZGG*_Lbm?VhaZ$X{^!*LYc4sK-k$pA8IlgNKe+mr zjs>}uZbtK%du?Q$obhTQW8=-h_7{d|w|cMb(y#Qf|8nm5pVR~V5-K%uUN4|yFb*0q z&77sR-4A?)2BL%~eUr_~cjVuY&#OTJKk<%k-yYVg137}F#nu}W^dNk3*w9?F2w{5p z@LJHioR9yYM+U-m$Js%%}k71Z2Qej5<106;QCt&n6`D z9PO|QX-{HO(t-DPu7S~jPSU(-dH%+a$EwNM0!EGt@)4(hwuv6#mUU_|`UG12l0iU#lhk z^XH3YoIe&vWUevIwkvc7l8TFMM-wu$4-IO132e9Z#vAZ1GNEH#-gc6U?uy9C;K<1TucTE^= z+z8QoQszZ)@7{UbCy6?x!gqz?&7BE-jEiC$!gk*d887|TBzVO_ z%pbRxI8_$aUS->J+-6);{i^k2!58#Ar*W{o1*(;33@YM`3DC~XAu$kYTG$iXNTm)M?|aElbNZOkYXol+lmJLK_W#^t%;)e6&q-47}2*9jUsUZ%cpSLUuGW7#wY8SQpRn-nokUGcp?#=7h-r4}r<-08d z(3NUA75k0bW#THU@F(*t93)9!FQ9Nb`M6UQ;nX*CTYHfqKI8kRrzOQF%S%^4-ci0u z^*xj~;XYq`Yu(2!gLf4RwCHd{TG#BnA9g@ix7gYF9v)`Pu7@5_OvTC-BC$NUhv_wu ze*b}F_XH4Sxiw#X)w+Vw@6?i@1~CSQbLR2)h&4Hi(>VH6d*(9B)bB_LW65@w{kz@o{|@-jDPu^y&M-vPjc6&wFO{>|mmvZkIEM3Z@}>NH7Co_< zbl;OYsJ;m5h?+l(4iDn>L{6pQ28%e$6k#mXxK%8p^#qlyV|vtS;NB*|J&rcxh^0=y z=L+c(lE8VkdIrecX;xK?9JqLc?K~5d9NbSPNOUFs0>4Ib#teOO zaSwULQP=G_sedSoN=CZE0A>n6j@*$PjS~4C@oS)4tL6!kWG>klbw~F7f=jJ!{-Hnh zP>29G+yD9BwKH#aRO#&aCNh22?B%T+7kUsR!>RyGg(ed9V;4=n)P{pnS?VXC%d<~` zk@1p|kmch0&obwae-_nJ99KU@8@Xk$kR31Vn_YF4!g?XbCo3btp<>zTy|XmGVgu;% zJi$&{u(;CM)A5*Ot8P3p%?n-h#0cGNx7X;Q7 zFY5g^E>=RJ%G~d&Gwxz#0|NPK{J1>$JbW;7I!}14CwmUhrd;cD(H)W>X z%3vbV?+aYt{b|GRGu8z)Be!BRT}Ii+ZPv#c2?nV@lTeT}ekH^s_%m@O_iTkb(Qgrd zJox^n)FuD_Ytx{5fz6Dnc$iuw2Tq9Q;rLG@K7XX|<-mY`L>EQgR~xmBI`LUhWnf@n z9ZWL1x*a#Loa&hu_}cOto4uv8MrGT(Ie{f~hf`NdD zrteey`-tUwnWqpu>S$~KOMP#2U(}xdUR-hte;;~v)KY4Np`(0hQGV{HiLXVrA+=H~ zYr}L3ZC`%`aGufg>Xq;luyzEQs63t&s-5cho!il=wXu&_#xu=I55ZK7`dC`+rzK{X87%`)jXK%31*$g=kl>L{=LOBuEc@m#%nBJ^4rLU@fNWL>y~PUD z$6v5yO{LDE!U`&0u*{Z>IW$fE18*b7r?&MW@$fW08t|rk4G;IlJ&<_fRyM2duRpRs z^DbfGM{GV>4FkgoW5-k;xyGfh#9o?H#l;BO9e;Xety8+&GMd~pP9T+4eVd?WrT8HV z_$Ews5eR>z;Ww&aK}u*6xn$J<$Ko>iF-bx~!}3Md7K$MQ1WT}z9kTR@$@-Z8m{`?M zE>VNn42CZDz8TmBr`;>c@ViNfZbC!SF)yQmont+~T1i1jwrAyl83NQLPiIy#gjqP# zl3p!BoA@-o;#DjudF63@g`b;S6J&sn4+|_6Z{aN^UQg3K9MmnExp~nA98A>R95wMr zvn8HP{K04{gs-v#Bg{#)U3!Ep@hHwhPM)VExMs6>nfmO^%#EziLtV+ySPX**KwuVVBq%YHeH-7{)ILF3in{E=G+GeOKu@3l5i$Vj3<_&R%kXd`nA#z!pWnY*^yktP zaSJ4cqeHmf^J`QQn?>dX=F&lC+lGY1g|JHBcq&Cl3|x9W%TiR!1~h^$~-funmNVnYxUSQ`bL4bVJm{eB}cgi za@M-YxjjGDdGkFqBW8Cd(hB*X!HG#JLs5ZPQV~ih4OR6+1HmbNRg14(O~)ZGG(gCY zL)jV|^O-G)2aro|Xfw3A^{Jys_Ses+*-KP{(=+)F$y~EOf<8VQUv+62R6t5umPX%P^0ro4B@#;IakX3-n-Is? zCgcUse8JLk2VvRgAc|HT48?l{2wm>`F@2q5NIKHf4fb9w&y$*5r@?fzXl%d=ZJk25 zzG#aFSxtHbs~ircO(x6kmB3JFc|CaSA<5Ue2`;q$C@QnQvWCesUeQ!)Eoaj!d5>?w zYXAh7Z;g8=%OomcW~<*GAVMoqqNxQ3r*$Uyn25zQzz~NwCpj@O6ielTt-xFM#^C%y zJX*dU%zybPR85#gw!IB4Jr0N+>Lctd!~Y?7weuC1C#|jKla3aUKgQ*0b$BOT`v=ZwLyHz zbD<+45dXBCm!@mkbLiDg%f%dA_LmRU#&x5~zk@+~Ka_A0zX;)fIiIkIaK}U4kK1kG z{<5ksGg4cfe|SS}%&|0x$+4RRUrk>$ZY#VWR3ZcvYz1uYxe>4K9o`FvG2SW(!!Y|v zeM!kx_gf)7aDEM~k3xrabJ{LXn@h@&F(FDdpShiCYHf6%vF&Z+F+=%h0|U1pE$H5Q z9|`aJejlJoCcv4~A3l9jc%8oARx{z@LD}DF{0&K2m0auPc%O)*vin8CBmr`$2XgE6 zT#g>>=N3=+!jt8ix@L{XukX)@4z!=+zHREr33f@{rnAgCx#HOZV8ODZL3(I}Ng0@qR`{Aq{gzWT=BF4{qYhD2MI>-Wm;nqtxq{OmXS(XsM)*abJmw+gUbnTkquq)lK8fS}SK%;^Z!LkyHz%kHh5cxV z8uGQzhD_1jj73cZ#7w;FKrqwN(q3bjf)xkf#UUS`gtt=AaNtSVW!rF=TUb0lAp1L6 zaPq#P7%caj}b7s4xS57S`=J;1V8=@hKH}nJjq2RsHs`f|cVqNDG$!D>^P-uU<1>IKBf(J_E64HXoZzUD-hgUG)Clk#V&bk--Sj~vN|)1Fb~`q%%z|I?((_2Ak_E-Y5-VIm!ixny15 zQ{sfOM!?39PM-wn2Wz97n_Gv>i30V4lqDm=hc!6>2Ww9M2wDJm8X?p|jfF3{F{1uI z`55Wjx~=2@Vk^Y%OUV1ro8Xyj!;%T6LNA^myj(fK1g=2Y=t-*I%CS zpCrv3d{tkE8pWPKfzg)pfBMD}y=Nnm<&Qm~;y`)Ni)Mb0vrZk*8G*fwn*;hTA~*x0 z_z2Emtcy5%)*Y{VAMUt4xlBTb)A*!DAVDuV@$*OY$=j~S!Wsmgld!4A@zz0rk1F%lAu!mCk zz#x|<<~cR2S)xz~1rqrb(R`mUZv6Wv>Ys>xAzhLX8)ITI4~%1~6^4v?V$}mgR6Hxz zszAxli+;w*?gb7S*E&f|lGm(38z3nGgX0g(F~_c=l3m|%%PLR9at%U?GouCAf%a1LnA3y@(#h$v0lRAgJBA4EjZery1XJKK<`NLuT=g-n1F0O3Y5z-Ih zxa&jzj&=wOFrg&7h;Az49<1@WO}3V3uTEuhSsk95LA8BuWxUp=aifWrTZ_eF4J^bKJe}4$x9>T5p=;%#1 z?H}Ag$9CaRp|N{$$;o>3r~txw;ZxjaKZFz5AuRpxXXFPUU8ua4n58kEkO@x=AjRxt z!lU^#XEWmFwwyB-Ti<~%5$z%fZ9GZ#`71F)cFKrQ<~~WJ-~b8~IRxu>nu^C@?>K&g z|9f)n#FIPO0LlfwE@ade-*J|an=<$fmIIaWE=^6%1qdw(&m;`zL;&3rTr%&l(gxNM zOXfd+{!GPS53O$JZ8Uq(xJh&T#+o<`TQID-jjOQ-fjtm;2Y_;yQ8IBiA$VF1;8MOk zE<#k+YYr7mCw0X;ux!v6Uma37h~PpE0!zf6Us(~HKrDILjEz;;ivE({Rkjq2Wh9y6|f}LqPi*UG;o>_}Gbkj@}J<%Rz-uk?*&E1G5}H z^}lyMUuDyqJW=| z5bR6FREIto?ssYtWN4j2eR4Z#;}F5d$HybUGGOoClp1vC(ze5=P8 zA3mu~%_E?@o6l_cf!%J;>kd2t1KZ~VO&mt(d@K$3?0fk#9B%;azaM&<_@PBrc+$so z$Xp95TgXQx#yEju_xdYksle)h-5RffF^#^1Qi=m1#(7&Chv0OE5*pEYeX8BI+>1PC zcI@0qEDAuI#iFtE?!hy(A+2)6W;o?Zl&f~{-6Zv{cVJ-uz=cfWRhic%h(+?e`$Il% z9oa*F|LvjieT)aLGrS0HhfoD4KcrIeDH{(xL=)4!%j(aPYdOvZHXS8kF{gh*Vmb1c z%L$V@DBgz}IW7$vBL-LrnVn56ScX~v`YsLIMu{MB!Fk~s?PKsm5tS@g9hpqT&$dy7 zgl3^J9P{&;249p_%VsGeqM4m=3j-j6|7Y7UfpXxr{Eh(ck9hmBech%uJ3V~~6hdzf z3?#?}0*(Nr0FFUo!BA+<;%&87jM1}#vnglJh~;qxhYuq-5b%`jH`k3V#HZgtcr8hN z%t#A^ncOlmb8);^%OIC6{i6c zr^w)~?HV2)1euX$x(9M-8&PnpN#UqDsi6!O*nCVnidD!W<{W**hH-4>`t<43uiZak z6R2fpV?*gXJJJ01tx>_HA3uM(Jl)U@l_gUQ_Fmd%ttS%UnJ@_eL19uV{5DhIYEuxZKce?mALwFsx`^Y;)j8y{5BMhpi05@`q8U*1i zz}>M6co71JgOg9Dq%a>9e1fn7yIB_zZeHF5Bg?l%eB4>o>Iz(rXvGETtg*{6g!hO? zv5_%__(ej+h(5AB8yT+}2MwntCjlruL%vXhh6vK3`oO|N*3Ru7{p(#gyb72Y5cZh} zBZ8x2Kj61qV}ho&*+2v>0V%~XH;$MwWfY}q=6`^j#VBTZ2-_^~byvZHz9jz*f!D>F zi5ghc8W9N-Qg1KCo}rxgh<@qU&p7RXO8x=Pp*xP!bBb2Cy6?=hmtLezcEf!c8J$Np zeurkx$J-l=c(E%dzPJ=movXUU}*vF!ZltuIpX5?5B z!_#7Y^zKT;sf3E$aUZV_b)0clUF4d4@i813W9Tukm>s68U#PeM`S9C;GO#KwO(d~K zf54kqiNiv)SM>xm&aqZ6L&C&;{dQ>x-|!}sX!#@;6gzPgkoB)Fm1hT{*G1UM|vU?;N+=h1Qsl7f&V z6#4=;_PCm?((&b4X2)#kX0XBm`$LJ!0;zM6@e^?2&x@LE=G1I({r+42HF-0e#h`k- z0%_7Xu$$drkg^*lkBbpu8y%AE?Cko>V&UQBTN41p^TiF1bJ)CIc?{P-<|TY=7f}31 zel5646%b}eV5kr?qF)*QrDU-j*F>mlC=_l-_9J^S%)v;}82MfPB#hR5(SS%NPq^h? zdP6MH#XZfxfH=!fH3Ki>c7=o}z6mloDa?Fq%Yy9Giyd(|rLc$YAe?UJCTCFWq?#xf z#myaF;dt}~`uWLU*Rj10+=;4&L}eI?k+MOq(AGvv3t?JYa3&o`BBJ$QAGBU4+-Je0(=Ku);Ed$g6@Fn+dU zPb>cR%arUSneyWk{!eV@-ydC=@gkEGFI}2M2h-jmkNL3M5Uyuz0&_^Sh``~Gf1mXq2wiM_e|YuXq<#4@yH|mR#B0Wh!1(+(Xm>?@W@msNDoE{Ap`dd-$M9_dHV*_zYA>s z%B~y3PmiCop^c3tvP*Y7<+iXtrKi?$w-C!Zku#QAh+YW>wO;?<=q9gt;Pv?qIZ9qM z!yrsYcqRUYJoU8C_s5vTS66EiyO@4n8ArYhzB@VTelgT)T#ZGwvbdQIh=q{PaI@J7 z{__M0nWMXPnqJkGotoM*gJ?7S?{8LQ@`xKk?UWA8jQ$}8CDa=*s2%~?NxXb~d%V2R zs&Numuy*B*x=uuBl#n1hxKSKNd>(wR$J=+0PW-nt7td`&76OaPkI!h;%tuaq_3{2! zL^csymWDUF^*1-i_Awn3_l~kS30fuR=ObC-zf&E%kR@c}U2k^o9CiJF{k9r@Q2wjg zn|zBmJlmX1M*gv{6HYj4G7|CZ|}_a z(@hDL=rvz^26)PO)1UwAW>9RtamQSMm42}wQb{x8_N!XVvW(5Y+o<26dp3GuVwGB7 z&Z4X1s~F915)CUH0z2nQHiz#u-zjgXrnw@N?{eqd*#6xQ4zMgxcJ165Gichcj>xf% z*9V!CvSzoxd$9BM-AoM*0fR#Zo5?%R-;Nzc&$NI%p?aOL)TV$`^Zu`xL*LywunSOi z!-EHCd65Nq3Nj{QqbZ99dVTEOfI4;8{`vTyO&Ibq=M3-!i5f*v>@1pt!8+jJNV`wM zCXI(vud1oZ?GS;BLN-z(8tn|=hK->U+kfI2gVwrsFja*3K|ubh>humEkDIrmPtY-j^ch<^FPg^DW9BLt(?LJ` zx%+s5{3FT)faD$L_40P#q`kZc7d&ko$smON5e7++W&7u|=q@}^g?F(dIL^(>JLUsb`3N!fDBsj(o4DsG8+8K9aoiohZ7!1w>xWsj`YNX9 zpdnj3egW;mZ9uGN9a=xxM85?N3olf@_phf#<)k)I`;E@Q69@CNzO!F>YC`LzChm!9FW!&wR?BnA;9;_1c-9?2$cUub1-oM<05!B1x2+to#+em4y6s5=U)>%CF-{xi3~n1 z9)aJ7iUfFLpWFn}w@}!8_Rf3^m1fwy|`9_SI6@(&mpgc1@<&Qc49@V ztKj;OF-md*SIFxG42K-Ao0yrkvyd#edFAkeFgjv^B{_8OMEe{gG-Igt(>$3|OhiB+ z`J2nMw;rGnnS`!yaCseE6l(Ytj0jg%`G**;z%A z`jL$?I4SC^OQ_hSQuc8?=L@^JI7OktfP5hKTm}{y)nY|u zX!7C#kl^0MRZJ)Wq@F9*iSdk<2Ih=>Qso>m4Ku$0Y11mNT|0p2D9!6tchXp_x zRo-uPd*sV#LcidlGVwM|hv%FA4%hN`DC}F$Co81U!?Y~zvw_GjU`o2zYe3FuUTsoT zF3kTC)!p(I2L7NR&HAoqa>+_t9+1~fi9UX6Ef#JW5tl=+TU@MRKLqKU<+tKF`~p7Y z3-a=t$E11Lc+WgXQt1;#nVPXa4OVg0#4!siu_OyNmSeqiAK8vw+kKCR#PE^cSvjy9`wF5^4LRdU`m6L zoVmb4-OM=-mS9&G@;W~P#uE@sy|7E zHE6T^FcQp>_j--1Su+U;mw1n@E@rs z(XtCNf5sezWw9L?e$s!CreE?!>he}>j8%3(^WMAM5tY-6wvgCX4zsojicdPmI1 z!?CIO7iYd?zNeyfr)_5{VEFmNAuy%8HyJi>Snh!apRao4Mzr5zhnwY*B3;FJ@?ZK{VEm`8D`Z!`n0Z^)N9x7iT zJ0#we@FBOPvI-oLzrdK1?vsgeKK|tmUCGYKVVF-ZwqSHE-twc5k1k5p zm4pkbom$P|+39e%!ex7B(s(sOYiD^nj06k{xx#X)-;y`w(}Y-l+UIO5^El7$I#(<% zx@2aia@pV3IKs(2xl(y&`6*mAK2p^0-ht)KI^^L#8r7);r06~B z;J7x|P%^*eF-@b8fi=Ru?B?F2ZSqg|nsF!G6Ik+#eZq7&Wf-`e;>s@PQMsOg$(3r> z>YnyUl_AUa!TC5zH0=UoeXUd24%{#B^=8k&mdhzCsaq;Q7`5uW5 zdPA{F!&NO7$@Gc0+g z%_MM0Gx+jFbaoq9en@H4FNb&?61QBI zp>mPEl*hs>UBY-=QRT8BpVY#;c2f%JgJeU<(i&fSGDDi8s9y8fhgF7o^!e|LgPs3n zmX#eE?@#7x&2gAd+xHWkPgRK46NBPxhCaC8|Mv8o<|fB&nw#XAU=zbqD;CAy`DK|B zCgM%E@}gP9eEWe3KOZ&Erp@!Vi@KTtvlJQuXHXqRo=j4tyRYahs9e&W5qtGnY)wyPCt^akh@UI*!k7k?)ZkL;x+I>b8_v-;DgE#gYtYP?qucjzT=!^OZbk2s)g$Dt1dO`5I~@Ql`Xhag((EB+7CvR>hP58v;J1Y zaq6=?QQ@u{3yIR<6svq`@_K3J_LOl@JI(4+XGF?xBtV=O1rk z!K?!98X)e{%+6yv{VZ$P!c=R7JsB)C#o15_w z$GR+aEjm|gs!4V8z|8|Ju78Fy3W{70O22mUY=Q4|ea9Lr?IefMB|0{{_S>}hA|S%H zb4O^jD-0y|#)|67)DuVfh77dMEV#5-$r<|(?X0#P5jx+`@$oY*bRGn`_w8(s^I%)P z11Z7QymL8o16xf}op?KbiT$*haU$3nX*x6g3CDi%={nCY`lv*^wKW3?9@O93wtqIa z9?bNo9Q=~JB93hX<0Hw`a+8SByJOW`lRf;WRh19SJjrT1>fh{6-`E@MFD;fJCta>V z7voF$J<=@SI5j(vEFvQ-I|g@zMbz@?)LZMhf< zftOL$7@vsbuPg$FmWP=ZQVr?c?J%E5@)RFzX>pJOo6%jO~{5O2VGP1VBwIgvouLfbCB zU&1N=Hk@pm$3;2lOlEs3Rl3U-E!W>g98-Qpv0qKSgKIh6KWcCJmZC-SFB3$?rOl#MK9T~ja);#ZHN13?nBg27=g}|Di z{O_UFk<@Plt`4!A0-?YkpSSQ`RzKCU{ z*RbC9(Khi3$J1-$w~e4zyq)a#*jU@T#;8MhTVAvX=ZlIuMT@v-4v7s{T^L1Os*EBt@cl( z&!p6{g)Pmc)pVY}(^n_GJr79iVenvhGwBs`<37Ag`4^A9X=e5Uk}WcT&1C%ot zvut!aGZpS30%dYuL#6HC&Uk;N;SOfzbK!w+x+}C)qeYk7_Ik8iQT@~(4!)xvI|Aia z*^_k!jYX+`%RHVY3?{1#D6#Kl+kbmE(TR;Hkni6Wc%b0 zc^?E@pFiI=>M6px-;?!uQAb+(_U9%a0un3ihs+#OdRf_z!~C!yHzFL4>wXHPgyOoO zApYlkQ>@da6;-AI%F@Z)!u!}A`CMaY3>5}Zr+wN_po6=uiunRes zzQ#CYjAf2KS4?sH=JFw{jTnYSo%z6Sz9=5Y_*!O1Qjk@C`CH~v7ioJtbAOjJS_!G*xi1;7(@sfe9 z0AaH&Zyu14_YWg!@j$53HN%1LqotZj*pq8$I78iPx$-YgyJNyBZ7`%|y1>&F~Cl z+)m)&k33!XVYMSua3zzTTV_;x!+qDu_B9p9i!}8vj=h|dO(A(D(Red&$7*s$x(o5^9j`WQ5wyIu9AE?ij^P0;a*ibDzB6DI{=Y;=` zv{P~<2a$l^JpALY6utl2F3*f?H*-Am=OhXGMu`rd`^gK#MPnN+qdk1A8Jlz#I$AZ# zt$xw;s-_O}b$q)La$@h~yDeYDriW8MetPy^?3_bWXz=g7g3M9nfOwRK_g{lvZ|Dd4 z?Nh*&HiBMVz+t{%xp%_+H#aV`w<~6hqLIGX#bGXd2)a;2l`NN8>!gd<9L_#kfugi< zp!Hk)T*InmBcGlv zom9SdNgd=nX(e>2f8)vEw`;rUV}d%=6bkMKS6psUPekugz}1KI&-y@?z2|) zR!38U$~pefgmmRcAuehwh4wy|c5v0l6#&iB10)4)n~+L1k(^e~8$Q5LU0a0=UG&4Y zS1am#-JQ%~b$YO3*wU=!Qp`-^{5J-rYB|Ltq=&LfHQ4t6Q|x`O%{i($cyIVp0{0&P5}8FqYbNy?-|S z{koicz0EIy!<27%sFSj)LX(Ayt?iJoomg;+CEY2NeQO;U%Z-{}HikH{2Rl3IR2Vp? zedoIp>Ksc|%U7|Z3{^?|Om){39?F|tinn7hxv}77&KetPacs!x7%xSqA}T+3$fe_p zxkCe1JPGihsY_VJM3rVVaa_1Z*3GJ^Fm8GF7MW@7U)Fb6WhMNriVEKCHp&wAI`xVs zcO8iNy8HL9yf@#GblLrF5nTsQBV+q>X4gNoJ&bf;jxSCs^j#%I%ce;0zW1a|wun|7 z@publfi;I>8Mua2OoP)O@Lkna4Vo3D9FdP-{0ZiPCeB-BL~{0uUD(`ZTD__-qn__@ z;_&3CI%AtybpeI$8AA_H$a6Z^qzWV33_U9_)w@?whX1xbN2MArrXA&wkh)w*F zMVA&;DqY>|5X`7gJ1MDCn$bSxeshm4INKmamdKR44Ge3!8fp2v9PH+j>J>lMbmo3j z1(bXuGqvSK)(vgh)kA06xZAaV&Cipo;%3X2_HVxdJ0+E}jI)a*I?;55RgX`1$TjWI*!KhbBB_4UVL0N{{Qrlu_m1bf zkKV^4^ft5iUMXaikv%d(+R-p0l}%AdR^IkVvO+YpjfSjj3K?k#*)(LOP~vyJ)cyH9 zzTZE7kH_zK|8d`U;q5if^PKBk=Q`(j3$@dn+8ZXBs_ql{N97*%y&axuN?MViz!2AE0VtCMbYk>+7{(MDePvvY+2DI@}cT&+;dUcdKDTcp?;C~Bg`IB%?4E+ zTYseMt$Qh@Zm^Uq@zgKW`w1ueF-uE9c zSyc1|OOm*aw#2V`Eo~$@O1Tc@(OdRfWh^WR`|ZCNS${Vy<2@5Jq*06yN1q>m&CC)= z=bF;{Wn>65(dy0gJI%V7aDY*z0OcII;i%7vm^2oS6-EShAPK_wXpPRSXR|~ti}6HB9)du-=vnv~}(5`;Gvcs^BS#iBX4mA%Fju_0)6|FlQ$*QwaOA08om}*_;A+#wuxj%3G}W85U_TNsOz+b z?%0#eNLD_8z1$zx)Tb_JVpE9Z9d)y{aiU8?{_X+~x6iBu$@LNc2yg7{6BgJ(m$XT^ zleII)n2s_jNmQcmXi}%Av+79j@5P?Q()sfbyjA(+y?PJ1RM+k=<^HZNPdS2hx9?WDw8f;&o3A-bOGi#+j6X}VI@PSM z?b*)l#S=TJW6m5uXu5LkYt}2fuAt+Sp=k_WfmMObobLu+b>>F z*OJUUNf{XN6b-(t(o9D~$LlZEFK7cYrU=rkKnq@Qx{p45_TugRcT>`a^(Af3J6!D0 zkk@z0wAE15?q}5?395Wsm-Pw^r{CRy+O?x^+mE5p^ry(GFrW3|mQ-5X((YJM{Y#JUAVk($0iVPXH*1S^X%sIE-QzT1~H8pLtT4XBd zknU1a1X=x)Bpk-Dqj9Fw4106RqMvN`Vg^(jds3X^6L%J+M+~)X6Lv$%zM(buj;*b? z$cTnp%Dp_7ffvKdZ6T^>&rGV`E*LR{O@+*U=*S+Kf*7w+afeX6poR zSbZ)AP0N0wv#PPCkSX3B8*RrsBKGb99P}%Hm%<+0-+~zRL9S`xQ_+DcGn5wvJpFeoKt0s zob!d*v%^Z?i$?pyNQZ2F2yxvUQ-`5hs=NqCuyU(5-<=DzM$)gl-?ayGkvKT_Mx>uo zHkhuGJ+SAhf|}Oi2;0d?l$FeW(+b@h?+rdkRbhSpL0kOo+UA#P1`5|cYzy>BRf%JL zDP2Ez@mpWnJanSm>z%J0qh>tvVQzA;yPQ+wP`;>Ch-QOPYxjHB+O_lvUeWsT;Ej0{ze7(Mz0sMcC9AlSea)|keeROOHo>E82Zcb)wKgFL=IC{Yi zEZJ}R-o4dOCh++u_Vo* zIjZp%N||Fmo0h>vnb&Vv6ZjjQP>f{in$Pby5%bPG2ERrY9uvJbo2#|3*nMNH^!0?u zkwZZbvqvxdta~kDvd``VpXB+L^D=f{wzfrcHDk&!Dy@yRH8jJoS5S=bzIBAUC+i@^ z;zT~jC$UtrW#IJ$l~DiZeDN9v1_c4ZtquN3T;$zF&a|mLBj$Qj(TxW-O0MbqZ28&g z`ikG<@OpghzP=I?}%3?dB9WKb2ky9TW_-c&PJ+Q13zhR}xr! zN6MA&SRxcd)3P~<4kHZP#uFbjQOWEnE}(q*3M&nzVz0C9&p-AesZO7_T~{jGm}br^ zZS+L%)A;*e&6tWNJ_{}o?Sl%=&;{o+B=hgldm+NzmcF;8o#rL24OcC%>j{XUcm>oME3nw_m4jQ@ro_lR^wlZMd zSr2wWEd@hif5(dH_9snSW|_^iQ(Ku-U)gkN#Zw5py_-xQUu4%U8q&QbV%+}bv}(`o zR7IDuv zS@b*2ij$K+)0lOWfks}Z=Bb(H#VT6R3TXwXHVF2Wzx}HJz01nCFPPH~e(83`O^(rJ zdZmk}%+nO>A90B@ULY-xf^`JydOvI-FK7bJ~?DU!Zx$^^r^L+8`O}D3uhN=T3nJ zJL|GTS~s*|kcsp`<)899go?o+MR3Wx0S&G%^-sy7@Jb8eX4Yu>)Kz@gCOJfuyV zBV-M>-g06Q9Ht9R_+mJIXEDLJ0a}e5Ar;trxCm zzP;*5FO|<%zP3X~Yhhrm{TN_+tq{i=Mv`Z&VknKSf6G~Gvd=M@`lKCo>X(dK9BwS^ zPSIc;OUXEEeT@2>$|Tc?n8t1A=A7#`3JO_VQfy&UX-m#;XY4Rfa3S;0NZnzKKLME| ziGM^~g0VG(ijR>x!fJoShnJAb$Mc%sZ~S6dGjNmC5IEzSE003Y3z=3^Znys1_YL&E z4QCh+Erun2xbTj?nX^gbZNUO&@3mjw<-L^sFf4cO&|%)iwP^!$Z+18Ktu<`o4|<^Y zJ8dqbJ~E~af&k}3uh&SL#%^v1^^PC&7`QD`*1p5{P63}=znO)1Lp!aAfevZV|KmdQ zbkOcXs7)QdWC+TxD2Ob|P!F+l98xL|Vp09Xt!p=!(JFn}=J*YU%GQ7ji%Ekf`c!vY z3N6v;q5^eA^T&dytS!adN$xELn)5r4R$e?{2-QUW*m;Y2wD*L^{MUEx7{>jGvXI%?ZO?$`>o_B$9BOyT-cJ7OT3G3vX=nyT z)oy*W6~Vr(UAwl8_Fl=k%Xle1MI|Y?(dl&N&eqX)GVB)Kz4LLtg6-{FOf?QY5!vCM zlwEO;>G~x@S(6%{>&qXX2MN7MdRy$T$n?#L)o>qKz;YM*Q^pOQ-`N+lw8%U)Y~y(H zfGTdykiT6`kjcQSY%h0pJ^w$B-gM5l9fnF>cWXVgv@wkF5N4$-xa||Lzp&EyPWGP{ zPABx|eP~0iHnL?@r?S;u$a;0dMlB(Vm$$Rwdh9}EW^rczQt)(dP8xk^hV(a~yE*@H z0ruO{rR{^cv9jm&Gb*dX%H(STX8{;yznvNu8T^UtVX+C_lWrXIc{N(YGF8b#4%#-=5 z;uab{JQ@Pj)h-8Er^8?L-c7BLx%;PjB7EZK;1><`TT)5Nxj#s?!@~2uD)j8sCULhlLhcdL#oGBEzW+3Pu7=3zrW32c&T zKPey^>K&OfG3)(pf0oR~4UN4lr3!hfe|pueNHcP@4az%nX!%q6)-vm~QpSo2?=h~b zzBv?n6sjOdQKuj6Qt)GWeOs?B^h9ZzT6RjsF`B5d-(QXCX$CXnIgd&$KZBB5MEGNryfbgq(b2$)4AJZ12=1J^VlcC&sVDcdh6`8+otoD1-h~H4ynzJ!K(`G zzA&a3m}D&OB+I8w&7_as#+Ew~ZWifBw(tl9hkBbNb&KbMUUXXX{Ig^3;mcYQU7Y(& zl_XO*`2>8oEG)S=bZm7!bP(6M<+rq&@c#DOUpLFoReH(xQ?AQ0R@y1=)*G{t?cs<3 zmueWZ9!VsGr}}*ZZOg_@IC@W)tz&9~oL*&~px*TA2=_dtkfoxNnu1EDQFX_QiNch! zY$}5f^3KXpq?FYAzcY`1MdI~ECYhLgbA68ig#{^o^J(&c0A=XAtuM6F&G{cI8n73tOKAbz4C=s%}91U)-;C+jbXN76%fOl*I7)xxeH zMq&X78vU(@20;DhY3|xibem#7wI}`Ln}uhdR9vEqBbO`!8bekrm}ZAP1umR7lxiZBE{oaMk@IO9 zyy42ZS0G2jKwW~jN7a0&t#Zvp$Vby}OFPpEUUKgnKmW7)IMJJp%_C|C6D6q2TLGP+ z2aZs;6Gy;WYr~~>U4nM#kQ~MC(B6e#Umvdg z`YLC@R;+e|u$nODq5C4i`XmiSAKbeiAC2n&yt;<-M&M2Ocu+%)G~_KGmj zhnd)8aL3i7llWM+vS>|v1@%vBf5_Y~bQP8k=_S=Cn=$alL&#>;aE)*DWrmkLd! z2f8&tm-=q@#19f(KrkHKrxZJQsmV8YxhSbh^<%gd&}ltdD7Xi!VV=77{KU<8iw+TE zG{8E4!0?E?V(tSEjw}|b>%|K{er1Pg^O(0c3nNa~KNbzbnON4g^cKn~$Pp?XKB4&y z$;WVAWa!Xd3_f_UeTRqYVO83{H~5i>6~~-{`kO5-6O#YQuG^R5<1NtWM{I3@roH*2 zGKnJxl`7ES+q;@l6^60Bu{9+Mte^bX3s?~F2YT;6NF@+PW8%Oq0Ucr8tK@~Ax>8-;5{$6KYYdzUUuvR} zt^M}Ge+)XcCQhg4taag6j?N+N!pYZ0*MpkH0B)RX?s*bz$;Du(1i|FPkb`=ZhdpYUyn1RoLDupfU`yp z|Nip8T`wd&RC1mX;Q8g2YEfb~U;ziPgI@5T3Cx#J7d;q!N2P=uhNb z;~z42pmB4axVZW_NJqr+<>mF=nSUP~IVYO6i z!lHi0e?Md6COz_seotN0)6jng#_Uc>yej(LVrW24 zQm*T%PFCsKf@xcIOn*O~dJ1AvNaM(GJnHMxedCo4?Qc6tt{ z9pBTgLp!jMa8i&fVhNr}anA}o$(8}H@mH=)n1p>r-mV7H#YLVMaMzb4OgUk~%{JJT zg9!l#(Jsa;qPM^{0rQQ+R@io!%Xa}uOgmUM5?$8Rcxc<-!pJ5WBT*OBh`4!Qhx$8$ z`1=&UwbKOzeRu^c;7HX!-c)PO(*B&8iR4pxU>#4GjsyYZMp*da6QGW)0hqxU4I2!P znzuo`I*Q+mVHEhkKZX%rONb%x=rVh*le1Tdq5QbAS0a&c=)**HT+TXEM4x7Tume2D zC&jobsORoLum5W!G2Q7T9s-i|SC^&VC2!oTv5fYnjW6Rou~gv%+`kVqdXAI#HYxZT zQzhe5Uzh$``ramBp|^}6QYrTVaf^zU6$h28{g=?zllv+I7U?);KK<^$Aa!fG$y@3i zCNwNG-$aZ|-P5pwel_lc=d)NL>w|kfEVnN0G@2cO6eOb`S_r8W z>nt{GBJ-?DuOOC@Wn99znZutLZtU&ADqxWIUiH2Aq3+|^s z1TE(PyhUCXnTwt8yCSUMOwsTMW;4e%E*JCYg28#jW>o8$Q~TkE2iO`Lmi*Bt1g{Sn zX(`$bFs5f-)1dwYeeQK}2>Kz#bmm9rr0kKBX%Li|wtyzN+ei7&&vh8_W7l#XH1GI% z41s&5zVi|HdUbQM3SBARww#{v@$4YObNa15{-WPI7Kz@tgNEcoU~U=iR9!(0v#K7N zj&_RMZU{~dr8$}CtooRV-U2ez5&;W?5rVt1Bv=_?5`TW=a9?#y6~N`{0YjlrO9!i5J2MAT zwjSILH$&2+x>;2Som%PPzAp_J?aHj$`QC$D`pg8%MyQ3vBp~QKq2%Bd1@x8Om!A-^ zGS->_1n`x=Gw3UeEsm?Nn|dsmke4k+#pYIYOyikchu?Pc4Sfq0)cv7*WPnSd5S9h^aosGpE>=LDkX~ZJ6?#juY0b7i+BE4&8lNNsJbUSlj6F)XTD8Y z?tt+89WK5vXnPEIAsUP3M26#7#2Qd#m$jLt*g@5&3TTU9U)giU#1*Kw$y~%RjGimb zuf=9=$+p-|eb8j3pfM6=yJ_!DhB#>866O0}Xrc6LeplQiX<#!BfywpYEq4!El{>bt zL&xeOS_!a2b;~j1Hi4T+^2`?9+jA)F5~gMRJ&>7Q-Nokd^yHhDMMm;7rUE`UW7ODX z4|R1IB6~8RRS~<+(6zBkU+FOwMU4ex;>#ZN10n5kY)$`x5dn1`=%+<~a!mtnm#d=cbPS3*@XW5B{>G#Z8e^L+=AK;X5%#%9pAsOd#7FH!5B5`=1UJsPKsiaQ<${lHH+yAm%i@4Dz7a{6%dXYq(Ry%BS^6Bo)%v7;e6gB}f)NdMp z`3vudCCT~^@@=^AV?I|6GDxekGxvFHPtT5+STn_OszJIOw*A=43k<&%Pf9+P1U&yF z+_brzQxc=A5Zg9=K>W|YCY402UVx*=z7R;C{1-_*p_g)GP6qGkwV|z=HKM{3g$iyC3uiBwV`$$QGp*8lVDHJ{ zKjG90>}rn8&x$_gb{A}pqnj~|=W=a8c!!caW=F!%B`P3rgV&A86sX&pBQozxuiv)E)7YbU! zy4jv_%#s55dF-M<$HOqlWw))xhnIcXbB|7abtKv4}8wvtJ3@LjCfv#Kf7s> z{jq4>@oNWpW0O={DTO@Hw|DX@f=c3cG#r|kFG5v3JKoHtwnyCl$pja5=d~Z34n211 z-tN8sFIXjQg9i$xj(b#yPCRe{3qncqVGMJN8+H1pq=S25V67NGPgSzIW-f**XvHZ<8fn`vgoa8b<;2Bn3Y{Dm1-pn$jl`EhHuvV8*q}G zsQ0qI#S*+4;g`gG3%pFW4d&;5&23a9Hk!-)bu9+dqVl)$g*VGsm#5kUDetL%)r}$( zy6Nw$tSL3Y5ED%egs({we?A8cOXn8suNRG{k;a8sz%wBwa|1xz@+a#|imUEf1HEkd z8Gy~3K|C!qMK61u8M(c73dp9YH@z{#Rlw?oE4~QZjKIOq5fDWSa_iu za<6`WKVnJt-IfvzFOC!m+s(dVC%?>QRxF+A1o(AqNoC0fNY6Pp?T+lWLkr)$bG-*% zvnTLpnsGa?j6Ws)Pj25|80gf$){wzTRzIl0Y7PS(tmk8IhMGO($s z$B(5uKC~}@TZRg8?px11G0Rpdg?WXV{T-IH?JkESiBkv6N2U}#WpbQ!wJE5aai~W% zdaCpqC!|RCpzcknc+R@@YqVTt$(e75K&EvV?MRV%QC4%Cof!Cj%j4CJq6k{HhKWvl zomrh@x^?2>?}+uKo6HCTWuW{F3N0FF*ba+l;884*;Al?KWwCE}{?C>YBoerIuop$- z&m**E%3d_bdfwh3Z0kG?;%Tmkwc(sn4oj+{VT9h+zp0LOWlu zYiQ>TQaaIa`eA}P1*Eq8IeFPh`V#UCHA(&*>niGc=~I%jH!gyXD=Z?%$_qv(acj^- zGHa(@taaf(MH1Nd$iJ9&UFk!lSCQQ}W%tz`9)rC|opPp14l)SF46VjkKCZ%e-emCK zl*(}>CX1LFp*g#*ROC$o%(mWjdPGKPZTQKM$z5e~$CQGSL@OV~>sD z?Gmjq$~CF`wHen7YRK<@GxH)%X~T0ISj7mbEMkI^9fm-xw5s&y92_#)s#2B@mHAs2 z_eYqLicN5oIr6L*e-D{&A8B-1N3rMD&R7Hc|02DsUP&Vh6&?DUZ>aks;(j8b^F5w@ zBkN5{nk9@plGm0GTTOH+3d(Z96!tKoF_v^7jVEA`&+I0mCHilp5!o&;isrJcwBpB~w?Jpu(P)JK7 zJDF3;=-}tJ#aERbmN83f$2sJtUg!jm(G0QcN_5hWctNhJZ*G>x8mR*X4HXx{wU3mY zk;Q|@6TM-HY&suvcbbB_nC7C9XYIE4+?7PIX67#Fw0%jfa1hKeJf-1T1d7aMohj96(h(9_21oY;DCu)`(boYWzz9aZhP%XkAmEV6xA!yDHR~)i1n({~ z2x@RAhMVSG-({ZvD)SAdQ}#b4CP@PSANpyWfCb;eXA)?%-OF(*L75iR@zqwm+n;k` z*XXSxnPmwl1%a=DA?_90#ctu?B!qX!Kk=lr8IT8eK^;m}oc*8!6PG(3)8W}v3Jda? z-PvjR-N5!|!i4V>XRp}r$F|Sk1aOFT3I31@d1(A&J*=7v00jyu>-XqPT^C~b8QX?e zK(@Q)H4gASo^bR`;AJ@g>I1vx?ivHI;DpH@?jGrd^Ei?7y3C@0MHNOAzeBKUMvEMX zc-EG__3n>t)2@95cKS#&ZYx$wsD0t8Dc$>-q<>mR`YC1PI}X(r7xQLo)8C-cD&JMk zux$xP;k8phkMr!kyN{haL_f+qy_Tqjz^eV1%`>?qtIpr2y?c@fHc>QHlpvFEYkK7; zLSm~FFs`_`I>B*0%j|n~{%r91%#EmIAjB(T1q$%U6X+7G3P7O>?q=jsB-Ywj$`ukr z60dHP#TY;Q2igAQhsSq+_v1Yrc%l#i^EI43)sY*{VO*Y4H8?!1Pxs;yt~4(eeE%fxqDQD%Rzgg;#4^URs|Si2JAKUP4{SnMaBXuOLg&aR+cetRY_f5xg13 zRbrHSmORFXmcY3K^=SY4lm~Nf&DPFdgNAo+qi73ITUc}V7K3kBNx-Rfe^bz)?SNdZ z9~6i}0U8LA9?SGp8OAujxx?`*e5$YU8W=Ee(`W;j1uu)Xt!GH00ak6w{Ss|tyxC~P zRuBL@&gh<>9-wH@w)4o#I#O}&jl)tiUKpI6OD|$PiDOf;8Wfo~r#9NUC*uoV^^nOO z`pIdG^heQ6AH&ZwuU>|p+5D#3Jejpl6KZ2xUtBoq0S%hJ78Wo82y?6=ownZxJ?3o$ zhL@oEv3?Q3{UC@guirpFBO8cehY$ALpgW;+d`9Uzjvt9d<}bUwB#m6e;fZ!5rBR>9 z!ynTV-AcYqnBIj*MhpjpM;ekTeoqyV&y6bKdKS?-uw7WY0jQF4KQ#5Sql~}Z1Q-}l zit@*r5{}US?ss_n8TAdYb8pqK{C5_=-!mDL%9+RSlqVtGg@zhu?}p(K`MvuLPd}tf?GX{MyrlNC ze2V*{BBnx3cHU?P4x`lau}6VwOc3PSRornM8AO>!JTW@)dclNd7m(2_VkmOr={?tt z3(x;Kw{N|#I7!NBx1Hh>xNe|9J|(A^Mfz(SaP(Js?-2EWwn%WV2-V+FV#WEyk$CHe z#V>sh`(ME!*!_g;i1!r#2{Ev3D8|idkKqcgC1I>2U#L*97(glx!pJ57k?)p)!zi=D z%{^T{Rq~aX-+^M_z%2|g&hqa?-FKc`m52#4$iA_u;1)u))5vx*vq;kmWY;IKg$(fqjh}pn{na>IjL~A?>^mFI0mjt~$t-qQM%{(me z8r?z6pt!XYgyN-#mA}4#iD(eo+dsej2_fqAF>Ebj9c#^9mz{42|MKw7*>mnWW{I?Oz(9yvca!L*s9p{1xo$3YIGyv9|f5KL&3+=V?qt2@?b+c+^|y%9UI~VgQERObauO;J_(mUlh$7 zE)GTrnO%6k{Hs}Y)p+hmX&GxPx$w8)Hv`|iTP4q@_5R%*(GdZk7oB`zzczS99LER{ zS|H*PfX@N>f-?gpepPC>XtVMYjNys6fw?9248L!n_6wBj#B~`c0utp80a>TBpzm5r zS&Jzp4#Mzvpc*nj~~*N}Pv1@zufRXG1qh4|t7yKkDMAwl4t$Dsoa`^Ai# z;`pg;Tj;k4d&iRnBxf+A*`P8~K>dkTH`O%J-7u4orrPucr#xXj0J$OsW^&o{1Kp0w z`R>4H72$w_12|0N`=rUg1+8TcG81a7^-&F1yBZdJae`ralZ6cL$Com|umUX0U=0MH z7LajDML+{iWa5V24lLa0i2MTL)9HyR8h%))F)t+Q;?TEm0wAc_h{6Kw$G5>n(N3tJA4)@=4`Ou`6fQWk!r!bq_UbDMtA}ct`u+P#%^*<3*xz`=II)Hw z>jN;f#{u(S5wcSp*YClzu0wU#V?8G6vuQ$v>vZrPM#g>2^!n5;veO2+BB0)RtSH5U zLV+X)fM<8Ef!et_DGC|}Zrgnv&DOVGTP28+s$)Td^FKQdR|OJCcT%@QCuUU~pfwDJ z6+kz<(dv^f20`A%oI6+t3eib`JF}Zm@kI7ALoP?L0sc{v#{L18nIKVJO#-NFQ0khg z{0?tqN?suk99lY$!8kb8@dD~^i;iEJE`!S|ZgNDm5#;e4iVg7NA6&i>upiOY?u}6_ z?+-*L)w8qL9miV`7jbnw8+K-bIm@%rI5(FM(?T+Fm{^+{$p-Wd!Ngl6Bg{k%8{t)j zFK%f(VK!r>8EB)#XuSpYpZ5}88jsOC{uupP?D7($iU#R`yWn|t9BpN&{-`KiT8m5# z8{8b`-{=54L{RmPq;p6RGZ1UAR81SGv@3Fa>j`+iMt5)z=tB()c-C(XkEwK>23 zYjRy?7r2JL>CY60aB=sb9D#$&pJV_VhWRT)Qi5}Bdl$9%IS_L2dCk}=0k#ORT5rKU zg6WUl>w8?IVGK755^10Y#KPnrqe+ERaVToRwZ@LL5u9&mrnFZizyP-9Wi4EN zW3n2rGfCH89Tr)tZf`dzpm*4yUt_0ze?V=-u)YsG2it*^2)G4`zk zXvFT3dRaoQXU-`|Io?nBox>cL<8Nr2t+PdO36t|J0Ge>d=J$Ofzy=IL^TZ}@JV5pR z=TAwq_XT#c{uys@#uu|TdgCEOL*;kx=&yJb0b&{-JY5moLVw(qX)^Kn_($J{z<4)| z#X5-c+Htl0Me~?e1XsLuTyz7Hp;<@uvE199Vusx3B#z~XJtRuB)fa7DhT&Igv_G;1 zuRTqaV>?yrdcq!Jl4@JV0?nU;ltu;P<|O_p)ztt`3Wia zHrIa{F(qo~M6Fl(*59(I=%?JHDC7R6D^Vi-SH~x)7_x9YR4)I0?f)tn|DV;^Z@Hpj z3)+v&@A;`aXIQTO%#0*ahAv>f+I9xxo!}jM4n+KcMDVK;u0`K zbrjhkMxx2Nye~j0SU3?w$N!lhvpXws64oSw@PV@IoFB0>li+dz|2@E-;qbN)s-(a_ zzfQ*lu#JHv%wONcKjwk)e$$-c+}WrD7U6GgR#2c=iGj~1UX zqLhedC~v+3uMH*6o*O&rtSZj^!25aP(#^^t33-m-3Ng$K@Cto8qq%rAWmr@4 zyC3rdi5<`W^OL~B;|a|uX!g!VqdG=$xSNa(?T1Yp3a z(*n)D0)tKm8fH2j=inMxe(+AySGL z+6?g|52tDz@DqLEvm=2 zy1Z}q#QMnqFuqg+%)4n~FW$}Y-@=^X9!?opXEnAq%>lAKXmV@%ZdnK!U_9JUKnG{! zF*_F!y>dTXhqUs)_a^9mWOY`yqg-*LJ7P7`4hW4x=o>z?UD~joHzLn%p%zAcm3pf% z3IKqYO3R3%di70ERy05GLMDbsUg3>2q7W3o6F6Y9$7`mLsN-l$ z3GZZpM{CW}RFA{Svq+V{2Jhg+ysoqs7zx3#5EcoHhr}B-H3^gh#^oN-YV6+AyHR(b zBw$hTL&R|HjTs*%=q#UlkMHEi_iZWm+I5)UA_9Qn&|gy|>x{P2@i)859RA?J)ZA_9 zzNU^{hJV`$%_S7!<93g9$eKO9^Yp1N@VgDqeXK_VuijTY|2h5-(K|hkA-rQOsm`C1 zH(M2rG~45B{6q|e+nAD35H@J9XQ)&49y3GsgLl*gOMv}M^p(An-P{W>1DA)lSl}Wu zj2kMseU3P#$cT{`;hLqJ9LdnxZ&U`f|BRu0v-_@r z>AkPyvrf3&)1hv*L(M&P3qG|WOeeIeR3}w6Xj$VT9nF6D)yyhFfCDYY6SkX)>PbMO z4ujk(UN5rx%Gzv7rZKV8PUiHdc8aoaw$JerhYT)(O75JA4iAlITU*ht;LtGFM=zk} zb!^*R*)nymjHt~v4|ZA<{XWtJWh>1y2o1mqE(oZ43?M(l@Zu1j=a|&Ouz(Y)YR8ll z(Q@uTE|Q8pi-!3jK!A;g zRD4IW6v8WBX`?Q~J|Q+g9ONd>^OD?*fM>blog{vM=dp_FuS1y6b7Nc3Og$Gei#sSH zIi6Ah`{v%2-+@F~v%xa}=pK2{lZnUM|MWgd8S%6S9mTBLyBsE@;>JHqrx^QJlNLtW z_c5m`SZCmX3J9q*RN|RtjD~gO3Me^TE<*5f;O+s&-;FKN!FbOo=n3+PLHDxLm?|2+ zNYo7ZzdH_I16v?m{5Z75K2&kYNhh^EE@TZt)sm{oK3(ngdmwauyY8o{t-r-QcE^bN z?)dcZ=X5aG|FXtHzM6>j@w8V|+^zEhk!p;8>?=!Q){Q_k%Go5kbb7Lvho{5k*^bj+ zk%P0*&=M+BH=!}{r+tqCG)6IG?HxZ7p;RXRmZ^RR@`?G%8$d&9u;BjEs+ zk@zwTgFeySFDia#6eP}W>400DM?*^ux1wCU0Nd>~jZMmG(_Z1{k-#MTF)Wu?Lp+90 zM`|x&p58?#U(QC%G2QefMpHpJ#;Xq!R+B!G-t?R-5n#x^YY(NSOkYuv_E4?eBHu@_ zQ3$2b1+m8x!yvp@eos~BT0ZlVpwojx1^E=^2Sml)!m%w3U}K8OICKvqxBt&>o+-aBif~C^8%PqA{j` z%(j8)VK~g5;Am-C#XY8M?YsHzsjA;$We}j+-N|naAp){;atyX%bHnTr#qes6J@Cf_ zX(jrG`P04=@2ew?`2Zou_YW{^(miQ#?)_7DA$vwSibqM{kp|)=%RpT8e`!FW(0qqq z@nR+27uiD%C>iz+YbET&bnM9WQxc|B0$nkGk)K}q#^BnRYaZeZEvaxMoqZ=OC;|ck zc3H@$!L2)Vzh3x58^ef{X-gNKOyTXlH``yI>Ne%>?9WheFpRH4{HoibyZPD%f?!Rl z5Wi-1p?w!daF0M=(cH;eh}R97eU3w4cP%hh0h{u;h}DO`b6f@6Fb|AHpDCeh>Z1vQqG-! zR=f9_eM8KNUec9)kHEvF>)*L{wnEsF`{*#Ns!Mpzz=!Tj$yq)>o$crvJ4(z26tm-2 z^+bfWDmte71hg03p3i`LEjEadGJ9{fpnYS4>ShuOl^^fjw(E|LJa=R?FJ4QpS^jVv z<>jjfg-U6+O(1Z!A^@(U9A5E`DWwr?#@SHiPRKSqjZ@df*{qLZy*ur%-tu{pi<}=WaZ* zsxW8Pvvl7%Q1!mR`hh*wBwb#r3b(1#&t;TZS~jh@$O!UDd(+7pM34gg1lEKNV10Eh zyilDl49E7jbJzsR^jUvr`j*elPgDnGO1(d8HYDWj<=Rhu+967lRUD8Pix28Wy&~o< z>)6lM-`f=RK@o{P@F9oPE?e;ImV1}NuQ}7QbfM7E3G@L3OU%3LqEOoM!XjS|bY?&| z6=(8Gq~c|PyTt$WdW1z8-ZwJYc<7N-5h<7Ej_Cf|z=WVArGM$6SZ>y2p|yAnjR;P< zyEbVJ_C+&3JoGrKt}&ABI4~PPs0~V~wDRsTpwFRS7VV=fwOhNtYX zKEp9;EfW8cM_8#;e&r>6*vf$7YPu^@_k1Ll#D7!zO`D^^)%*MJRf!>im@DB8&ciYS zqLM?j+q~cK%83qUvl9RW@yot3F19124P}B)Hs&cZJRc0K_!u@(k%||kKhyyNwMr&S z(kQL@IQ*q|iKfd%lq{Ll-F9;@ZYg46x~GoLilXzNqi_H*XGQXGs(a3Ss#CIR} zc0SflV4Qd%A(5>Jl5nN}lVfF7ajEj3u4Q;F?|(D(dCLfUe5}KYW?UfUWaK>ZLESqZ zzq}Z6VY$!WeS@NeeSQ$9FJ|qHP^R}taS#1;lL4yJ+oo_cE(2%4ZgB(^E1Y)zPVcYQ z$!5YJ>?de!7Oz9uUYB6I!@Uy3GgO?TA~$A!h6#>a<$ zDqL#v$Z?zgdX2X7t@VbtE0x=1{K-a$PgiT-D=*(_pZz*1Y7}So?a99+-u;RWr>aI5 z%e^8A*9*rJ@?=-U5L!1@j&y(G|;4?P8$uHtzXUoa8A0i z@b6OLp9hNQ4eZJncZ#-Ze$u*2A#~P<-YJidPG2)&9tc9hZn5s+MfKw8F-tJO)o$z&QL?Pf=NoH37mWpa z?H%lhI$+06ojDzgUkp*6`30nWL_-e}^4m7gwZ2@mvKoea#C?0y`0|6thlhff^|fz6 z|JLI`n4^fdZz@pNX(+?H>K;2GN{(jZdQ--7*)i*-ifZqOwIDsD2$6NQa{C7>( z(K>9ZnLoD1^rWTPR~&`iK^hS-KAp-)q$pw@IrflUuK+Y7XVdSK|5Xocge=rm`O1B( z;+t$1$h59@OQdLqizAOb|3LB62Fwh84-N+yvbQ;;gwUK`YK(_Q{nV2?t&j(SO$3`9 zA~{>M_uos`BMojKV!s_VjTCQx;QZC%0_U8E;=gtv?}%74SSWtYo#+SyOM&OPO$(wi zlwmgrsrKD>CY%S7*jIz7hJrjjR!6E?fjESC8t$n?Sp$&`nxB3d1E8rlD0CS{bH-{Y zG`n&q5CY7I8rF?_#5aFa5D!beByM6K=}VK9n5}-9W`oAt59~v-FonI+y9Qk+tc4G( z2E3AgZKrShqusclX8YICv5X)wuFEj|E3K>RSuHz1qiH-WSoA+8MzSNF_^0r|EmL{^ zAN?R8_sH{Cb&imY$nUn-Tl{4cID?;|axE%Fbid3SYU`DoOPyck-|Do{&!i49J38MY zIrwQ2+@Kr?{d03&Fc}2mN8bW@xcko^zgv=@)`DI6`>TesXYewSPe#xRY{T=yS$P^F z2A-i5YzOiiqVMef`n4fMvx^MsQ?2aG?mSWa)NOR4CDKjUy@b-$97>jJvRwtV0{lS2 zf|JJ{nqCA7jpd`*C4kbOhKBFA4_nce0WQIc;sQ4@1fQVz{IYfW5LfnOmUxEVEv4u^ zgqQZr-0dwZg^n0Fla)3?TlIMDE z`2kQpmBVT7q3Azk1E}9*RV3b;j3auH#F7g~<7DrOWD~`(c{~RK6s%i;=E5I*El}l| zA+_^Meh8pU3k^>}6H<2%YRQhB}YEar6P}@rLE_~lwu2oXC&Qy0*0)r$2TF{e{ z9wHW~;SxmUKb+4Q%5=J=$V;5lw~I zQgn&41&6kMZ%pbQ^c-xCl}rNNfQC8{^CDPI2{Mvb!*3dg|Kr`UtE;G9`)^s$`X#&_ zHeMlEo;of`;-$*MH~l=$$TSy+a*-YSd7q zvsaC77eH|Njo-@Wi$19YS=?^K5if*tU?HedUQfhQZjWMzc=-^Dp3E}DPN+6K1VIhI zfr&IPym~}4wX#k$DH2=Nub;%pAP(O7CDq7sEHpyA@+^Cu0J6?CN*w-;JWofEy?e}=N{R4DDsGdL2xef9f6q3{J!`}x31{TvTmkFt z3WN*J9D1_*2kxiS#waV;R;^Jg!cpKr0KmHAN{|Thc95C&nQX$A^U{k`*J0{J`>&gj zz0$DyYJB;~M)*LPiANyRO+GNYuiN`^*K7IV#I^T)GXOt@rE)w~wLlpEoSoePLQYHw zhoo_F9!wTE65UtC%IF;tKjuI1sCkc|3il0e5O0M@;@G&UkAa|WsHnaP-Xx`BcQbkt zVpnil`#zs&XpSDzNJpZ>5cIJtxhr|6bC%)l0gKZViWHL@%k;lm^loT>}rM zR?$4|KXaF|qhnBbd{N|UJoqlAM!r=4v!Y|Afbs-x4-w5LnIxWs_=+;!BUJSW<3NVISfo8-z@Dh9?0-Ho&VuCnIi& z2uO$-@GemC$DY4#0b&ul6z|d-WVaBoA~*yh{KLr8K#Tu<1lGCeui68==FXrVgI5aSE*d$M+Oa$?K9{dS_=Ee0w%kWib z@3_n-2UWA$4CLNROgxI>poebGRz5hEiizJXF%iC%TMZpLRQO*HSW%9u9+_^zQY$Z1K>~0 z4@bORuSgZ))bhXbQH3-w^p(d`%UpgJ7weki^(*NGR=A zL+#YyYwW!XtbBs~rPrSiBJ2e8LoE}f!6JP?M(d&B0P*Va7G=sdgg*SaPAK34p>YOv zY4lDt@Yj}=*^NSKUe_HTChW(dL~0LoM9h15zOr04V=#b{5#=NVT3#K9k*VuT`OX<+ z{^^qO|8*z(?zzYyL$YrWwLe;76HaR?OOnnziuI!OyfCL6d8DA;IMijqCHcX7%#04IuaBa=u2NTL!SIh{dP4#@djn)9Ov!OJ%l zZWp*Ed?#hRHvyE8qoKsm0YcK#e%|Jj0CMNg0PRA(a6X5Bs+=RbLAgp2cP`}oURXfw z;|cH&$ifK6hkN6)^h|Bxy`98KA@q#b5c;ix&ow_JASpccBUWsi-O~#iY40TdCqnipO0FbJ5@9?Hyl2`aC`Vglvbiq4qFDvQ4Z-B3@5X`fTWF#xLI&0xGGo- zyey!Y6gIGftMM9ZIT2Z-DEB@JG@@eMELfrYXFQD>BF#L zO3ad5#eN+xAhITCJT13gRenhilrbvG%VShKQLX{00LAK8fQ&JlxoEfnb%p21t%31V zP91WCBO*VCMrpF?@dpEpg!V*NexjNWjdRX9;8j215x{ezhbE*+r9Z$M<91i5nb>1dM;IU@ zIKp2;x8lkq;^VCC@(rbXgJ@2yQSt(1g5(u_U?~!m90WGHKnUp{xr&{y#gTy$qa7?I z8X$@8&#OH=_Km;OpFYvv9sWpR68tZ+jBVo*MJbwJ)GMA(g(;X|sPTO6 zVg8Vq$Mh!OhXUU+ka^&(&^98!UF62P9P&X8xpT$lSJok)+^T-M|C#qK1iLVwpL|B4 zM5K+V3br4bID<0y4``Fo`2P#G-83Cg#Z0sfRw4|+8V*0ntQHUn^59xxoj}bhAeR8Y zGD8aCdsdG#l`Q%cY&qY_gY>*8cn?>uriE8BHV>X&&vyZ_yX8?LASqTo+v3E_Wo*|g z^90WEnH{V|Z25NVI-}^VQ4@7<$UX4*v5v9}X+va`({XqqXKzl7DtYqNNGQr>bu z@*OzAyKi|I4TzIPNhfDhNB!{?2op<8hVEZ8$7J9c=CORV+|LuqEhxLsVdD~UW&`Si z#hV_B0FJ`iCpvG?Cs8SkHzlsM3T|R4K0B3hjWh0!dDxLcqQU1mT2bc^pc`7((cB1t zt2S^8_%%P3z4_?2JhwF>sI^%`OAkZB*<@vuj8f51cEgN9$X?k}$WBRr-Kf=yOg69SAw=>!) z*|)wAF}~gUhw|xJo|yV7&}!LOU#}zBX^y+221Dz52XoQZW}4~{OIpyX@?OldW1NC&wd~YL3OpmS zL}u~d#?>d*Gr^ICJrky<_s|<)Ac+K{yyx1)RZ%Aj(7&Z_f}dIm&JDWmiMn%blewXr zs4H59Ht!^eV9?x-VjoF#wM8(-o%Z3|P1O6uOySk)WsM$U=a}2s=Q6WsKMuqR4E|>@ ztQn7t(|Og;PWsvhL%l)xP=IM}iH215g2Cn2G#WR%xHTOGQ{3b(eTsgz*TGVD+5nA0 z#QPPt8KOdp;%+8tSHKA9XhU9L z7?DW)lqx=ukso6=g?ciCWNK_x4s>>$iz#M%A;yp&7@&-zuK14V7ta;1Pr%9U%G2*~ zc9p@wXtvZN&meot|27Bt69-eqicl$n$9K)wg`_j%XSkb4Ls~^+4(hx$XWU#wnAtfb z!^<2&7%9vn3bv4$;;)GJh5s4j1_@HLw*7G<6?zckJ|*WI86GRQ-xxE1d>70EW&bSS z``cRbK;&wKhR{9y2GSASzgtdBobdvH6QTwJrlScXFNzV)5{pwGo*a#d?Z9jf$Lt5n z&8LpB+xE8!#e&V6Ndj{6Lp*Ub&#e)WXxrvPk=FOOuw&w8sH)F(TPoDC|5c1})UP4gCS%CgEtdAS3IH)=H`nAkNMmLM!@zbWF0sEd)j4*fIvw?f^sXr)r5g&w%t9SGA+rPfZfS(?F z5j;9&rU#q9Y86Nyx-sCp5Pa56tI|vA3CBsYbx_#1*>H{bPwYuMK}F{^NUx}xhk=qx zzd0}`gC>=p4D7w%s*6h5FCPfJNLWJN8vM9D4T8?~Uu`Ju)qZNAX z`P2E?0abews;U$?iW=`QmbC9v_qc(%a};Cfe%FNdNrARIBE z5%>~ce{TA3StApN`sJLym1hY2_RMGNFm>`lg#?*cPzYqt#*T9SI2url=a+@oU$qA;}^ zeV)u3_p9q|R9lq7h+(>7r+@jK9!Ef6s;VdlT|N!bQLCQ5e)d(Ca9o<+JC$t;KYfdu zen)wh7teI!lB1eBkT?HK{^mzD31E!qLNn^neVLGEG=5DB=uvcZDK^gzG|Uqm)fSSI zm3c?&`OaCv&~B85Va{ho_2uOz87 z3(TFL_96K$_UAKD$Qd`Kz3-n|GPk_pD?RF9AlbaT!Zx9N3*m?J`Kci_bLqbjPJKrZ zQz+@yZ18u`$x_}YH_b)SBNsr#F1$5C%aqg`gk#dv$d0Re!P#oI92^HCs~bx%EO|LH zW`b6}@}-CB=#6Mt%G?dJ1;`RYfJ#wq5UbP*hmj>>As*_`>^_OO> z-1vj4d%Vtf-%u-pCiv`;@$;D9{A{*M5p02@!DC1RGVxx?qGOA*mJ!}WuUmau|CuRSz#3OAXoP) z>9o4>?ynE*|wx@@gE|e2pf-kpfq^-!uE*=b_Hs-6|{*HZE^ysB_#@xn_#;zQJ20XRQ-j7 zy%1}3{hY^ux&Ybnks}q?uB^EC61v(x$K zHc1x3T>_s6{`M{1)UwUdm&DH4xF}Qq_}eD0A!M>5Tdg7^=4u%-f^4Q2b*eA%g|i(Z zbG>Bt6@!?&ua0U;Xsw}{=QkE{jX%`ZqSw4}5(Bv)59LTXlhb9^Xt>lGQux%aeW-XX zq!icTQo-C9>4?UyI0ZanvCO5~=Q6v(LI=l-}O;L1(9`2%0>t{pHH zmtJYpb_-kj+55cio2iDeru}wN;{h}CdXx78E~ZOjZFkv6Enfpf*ia+N%z~|IB~z3y z+E5M{*JV&`&jbMF`GnGDXX#f@MgB+VoO4=j`>eym_eDfnM^k*(_L%+kt-Ep6;eFD( z6076b3A|!^6K8(lni9%11f*B)?8V$t^5XW17v_P9)LiK9=DXM29Qg)N+x4rDqE=`f z$_Aw6+j36bi-Nrhpx?FAl>E)#!o3s2k3|)7FQD_jW1rtsw(E{c&6az@ zngIWX357g&BUY0~#i{?H_My4N`Z#6Qg0+i4*-@y1(F^ydDsgW%uSZ2CB~XTeeZzbVW8gy{c)}J@7khdH|hpVtCScrnY9{z|GXw$0UEl z<0bTTo$kf*ng*ZzX6Ym#8!ahJ?=}_}8TE4}d`+!3Oy#ReQ z_U~9%ef8fPtYyNfb>w$Hp{d}Lr9Z{fALl48klP~|p}3QrRNBMT$uQ_SeN4ZGYTJ8v z^bBL(N(DOv6qaQ>PcBRFI?M_jp8|Zt_nh57gndy`vY$tR`)y>C@*DbXYS*!T!!g>{ z(Byq2O@sTrbB0;!SmP+UNTT%{fD%9DJKHe6-VJawF)Olfwx^OX z4JmylYf?MG^3HWk+`pw)?TM$uOVwJ1^BvU#%sixhwL2Qv9xUC-(H3xLqzR^On}j90 zlW+W@#5>&t8SIjvrRz&NweYFQVZs~?k%#;fN~w`QVy-yNZXekfOR^T49d^ukZ6c*p z5@|dvQUFY5peski$~akrBVz`#ySR-7c1;f3^31PQMPHjI3r%YBGrlk6??vI~D<#6t z)N+8CXZ7?EKZ!Y{dC`@8I_LZJ^Ff!#BpB=uJDbtCH}Naw29lX8lrei)4qcg0EueG0 z(E>~)+THZv6Zf()`Fj^JU_d`4`&}^pCZ-&B<0f9-K7js|WMP<^?+t6K&&?A83s0{d z4W&NWk*E1Ndxh&tT{{W7?#W?*H3-9@$9EhjRhLs^W|O8-|2rew!Wj4K?lSh86CQ`9 zg76CQA?;QBPC3tk+kr0^N( zw@68Dm!yqWc+>@`)U{*O0_K;)Sw=SVv;8HEykB~@AIcAI(`S8B1OLiTMNbD%saiQ* zK2y9u0lwmH!fuSevSe(+8qMh$^|gVOFw;R3-7d8L10#UCy&fw+%0)!yC88B)hs!zl znn@HTtOWRoMv(vd@Z^Jy^v4dH`_YJAY0uAucr=_fe^u7TOXVI#)o_rv`IE-sEqjj- zpxU$qpLB_iz8GLwC#!SIIp>fQfzMY8O*_fFW_9bv_Wb!ecYF};1d}Ej!x(8+-W|*Nj^{bjgS2cV-D%mkr#99U z>&i811`36Wu`CH{Ezr1Hj*}L+i3Z$oY>+fbk@?_l_`xkRm;25VAc33VNxNl9L&j?A zuCyy?a*R&fYhKbG^8HP%yW^L6c8I+6Z(?}==DL(J7t@rK#^L4^8IjO%mc8HyI2dnH z7)V$Yl09@zF}%$+C7|bU^M+-vtgv_XMWHH4x8tt2m5x51rgm3d0&JRMxm956fm-h< z;q2A2QAlCeWI?*f=B#ZoUD~>5@8V18Is1FZOp#G7ucDTild9Rv1eMbM6Gdg<1fR>;-j~lV3vEscO z`$MNMucya!I6akNHy?sl*)(}ibEvXcs7Nj;av4}wS*c_ z=&NM*1YA=1WXe4+1Ppj~k(h3p86VQ1!qHl*ohpMg_2WJFSknOXTj8*9)A8)44U25}Jr^o1z6wd6nhWH@$H}%pmOWZ?id;R1sDcXdT!qLYO z5JY~enbkmV2;cFCN8UCiec9Iq#?jZs~H>sb!%H8uY@O&-*0% zrL_lyO4RZ?f0JJ=mHB3{lQDE9v+PpK83*Ttn*zlwJJmMrCw+$(e@XhRQD?rf$Kc`X zQp{1artq&DkBl~gS!^4kQ`E1HUv1W=VtbBOq67$>pf@#Ov;)_q_sT32YT1Ms)!OXs zIePKWQ%Jx!SH$%HXKfKG@5v=yWRma=k6eQ!Z`i4z5<9pnP`IfD>l z<{Bb90Q75z4D_qXHyY|Db%sw6fmaUIQR`+ooP_% zYnnMm!PW_`8!Q#n5z%Jej0Uw&1QMGXR#SHDoVAMdO(5Ko=U!hJx$Z5Ierdw=M!f7; z7z361((R{9N(JhRA6kT71}FYpoAlX!2I2+hOrSd1ipTf_gNDX{Gq(&Jz2!6{+7zCmV zpx|Oes+ZK7*WJ=gVN)%+6hIob+^E;#vE%3?NGTF9W}n%0G3Gh9 zq|X`p;$m{aE)>b1bts#glbXAf33 zo@eVa+^>}7^4*{PX0QBhwdtC*(4-4rUY%S10RDtQSzv$ttI_F!WLe%?@)mJxji}Qv z&NE-(?h9pbbxxnPHdLHe&*QK7W5iP`@iPQ&WHvJiyg79tzcFRW==I|FcC`LM`a0}y zO=s`O{ZY#gBeyzcgj&tV@73oUnI}f56S|v)5N^eDeLr^_Y7WUR4YBqb%E0>ImQQ6Q zw<43gAy;Bej18}Q)AtWgcrU->NZjC7J>C7V?bPR@72D^Isnu%t7>fM?Qr!#hYLeY2 zyM=}TamVwxzc3hIL{-+nn8UrSX+NxSk?%RiGLZ+t12_?sn)bFS3soSv zSsv*o2b2);O|S zwJsxRcP;0(lK)`=$-dh3JmnBgdm!vKS=kJLq{7>}qgXd#OPYcc?Y7-~S-$FAzBa30 z-oE@@MX^2@sd+TIXV)34`U@UsD~n!`7b-8wvq9S`f}IkTh_{}A-Y-~p-M-@46=d;| zu`c*3V+`--(xoF^s`o7nzNc$jb3p)L{|;_|;m5VMWiSh#=O4SuICW)D&&pn)2VaK< zNOO0iI&L`Joo=aq(&xqCpwsz@TL>jK4Idt#XfN_?-UYLvpQ)P)?W&iKi*vc;?5SK0 z>OF7UeLlCngXO18yHm@vtlMWCr5V$;X*0|BbNl50s3ncOO%`3*z}Z^lb2LWkaN}iw zIvJ#kzQW=3+_f(;N-x5!TO^W;xn3W>7oPX!4pJItDU z;rjWG?7%D;6K`=iW9H~Pz17e<2@ash`o!tvWCJiS^Iz$6HLzfeAe+bEu>U9D?B@!{ z2cx&@n3`l(%E_1mzv^eE{kkSu&J};z{V0{0nXGJEw0}*!NcguxnQ=w0t5Zks-9TZk zH6d#?B`wa1%inM+A#F?`a#K?jpOAA~*iNlbG4YPl9Odvc2d8SLdxl6a1`7zl~OR;_*nw+%rBE6u(UgZY*V-%@_;3wp!cZ^{1Gw zr8(P7xGy7o2dr_7Fz6XY++g<4p&poVfPsHwR$JCdXQ<_m^}hv*&x z;(6oXt@-yMYnrD*fsOiH6Q2j!;^D;CLiPS+t(SBRJ}1fjz4N()6sGk1PL{kFNN0IkPmf`mmbHdowubf2lup(>`bB0ra+#L*l=hNpgChd-tSuJ7 zbwwXJ4A~5$kO-9Bk1^5ZH%Cyixm3PAP3fLsbXj@1wUS=I&6>?LS#3Hu^;$z{x@Am& zEZ|4OgVFwpphi2ru3UdIW9E92`i(L)xEgoL{2V_cZ;Obh-a7j5ZOZ$56Ny_rZ)}a0 zGid$ApR>6>f%%W#*|~}VlAl|@4u;yr{%G`R|J`#TW=?G4skNi3q0V9i+Nwjs&(m9X zH3#+>f!x6SbV_TFSw7RxZMCjfoQnZnH&EBNe5tq?mL7k(cz`NV50gQeh0WCJ8nsLn zPljVWqtz2(eeZi5PeqCQkLn)QI4OK$KbGzk&lcr=TP>s75*Lj@0 zumD|y2PEToEgFlGze$;7SEpzB%ZFbN+O7L;=HufYq}|r+GwL!;!oG)57u1DU(-^#O zefGkL#-AIAtg73MK#Sy_36`GwQU@dVzN~JKluqx0*^-&SYy{7Q+gY|N^~}Q#rt|~h zO`&`GEqk`L@F$SG2xH%MTreNgo*O3(m@jV`-(6}q%N7$>?dxmWw`!jI(}b<;MZz?C zy{%>%nUbSBMhgbW!uCA;$sh4;$8&6G*gE%$l0jYC{z;yN_2>LAZ9M0E71hKlY~oYi z=C88NS9rQ4iidbLmwp{OwJb52+{)?hK{~vgXs5t;xMZ}s$#%SdIJIu3Ma`}HgSUb0 z?czjXKMMgDu1(Je-E?~9ukHqpj(XVtsiF$s%znwt7`E$^nEj(~hOcH4FNAT06t?ak z5ZJXBEP+o;C28!!EhJk9>>p71k32q@wR4oej+d?sCIf9tTdl9&?s*#^H*fPzX?hg# zdws_GfUTz0JY2(+-f&3gPu(n>*|73F^X1w6!&4>CEdB^#;J~%kkhv7_fyb>TI=Z@J z-(VXc8NKs@8B_PflD(95J+rs*{&+{f-F>7X3VtswChpa5Joo;_^g_6`vb>|Nue9#( zg`2}~yt}!5=SOPDi)E=FYP}jU@*eEGCexn0MbmQyC1xS7w?QJWz4*!I}Z z$Ck~D5{`EOkZGx9+NAG_qm33l%u)9AY_T)hJF%Cgh;bni8qeMKbgk``P(t;YtJ-ar zTQ^+98TZ2RV_ngS1CuwcRvK>;$!jgSXA+%x3$g%v;#MpgSU15;>#gP57MQ z_*g1Psg#`PHQ&SS_AWSgOoh&0P!puSei3@(zLoHy6eO;( zZpw}b%8m+`z}#btpd2X7XG;13Jw+i3QT`jI^hw zxm3sHN;IgB(69?o?(rIF``PNS%_D79T42jC-??e|#V! zbw=Bm>pgW@NMdNmmw_u_0Rd6d{FBjoc8AUBJ5P#dQukhueJlIscubx3R~ltj_xKhG zFU-yl&{eN3tMQQ^2x!cZKYRx&SrKdDVU=CVsVz(TT$G9Bi?S~VDE9$I(Y23^4=^b^ z$o^hHfiU;Ec^~RLx1aA@R7jr&?u|S%VdVf2FHAB1P5YU{tE^&iY-y{V$yyuK2r=67Fj|Se_Y~JddDcYa^S`TM^FZ z@-bP;uD*vD&--5cMnB40+tViLf-TG-3rSx_ug@4Am`s`N(EB_~hP_bueD+^U^4cQK z?zbOgv}=Adyza@b?UkkbWwo`d+}V)9k-c&DZth2}`@MCy)#~3BHS&9%4r<>n#`h`L zbd1r_UerQ+k!ga$VLSQZtymS(`dy?(|!jo-?@DdYT}KKW|H-?^0Yot^E*4~-nh>&GSAt@_+q{PYgR3R#u1D;rJd z8j9M-x$b@em(CSOHi}qK5`-06;0@;}stqJFhRnK%`Opye*C99Ok=5MJ^gt&eTveodIZtd%ut53hjQ$yj*;Pvd_zdoQJ$-GU?t0fP zExc{JSCIX~6AK*kwHYqR#0_quv9ZRPv>2thjWLdM(MT5?9-sG zj1Akoa&g^LaY2%l&*Mc`ePiX7YkOsk3QYkMI5>(k7FHI1lq&E44aMiIVkc!wq3et5 z#bQBrE8favTe9|lb~W;neM|DaSuKIIpZsA^8@VB!=h^Sz?tKdtyWYLu__Oq;$*GGy z&tm){Mq{*U%J34$3CoRT?$IdTfaF@O-M*9PFv*ybl zW-a?Aef>Xi3Nk*YYE9(D%` z1xKE>%FDqkRI4E8R9f_1%08e3!=2Z>Sh_skrj3&HepRgmf_n?pWKei)>3FutE3FuX z^ag@uS3}akCB|+3GbOfZo9ZN3wR25aLiCRHH@G-zpAuc2xr@`KmtxX_Y^x=l21=i2 z9oQ`>*tdomxoCgIy#(@%&DqA$%=l2s*!i_~dD6b;Hd`)SWnfkzrfEm%o3_kS4pPXx zjSxwyK(Bh&`J8lji7{)|mV@UO0)qm7#V#CB=tT!^kQiBrp?s6KY9G>=d4a`vX)Y!f zX))pNxQnGC0&822%3fu26Q;YfUW+O6tl2REJ%~cFYrO&+)L0B|d7KiVW;(yk%whl6 zb3FRuFR}gFAmz`-$|10Ns@tsu!5bD|;d@!DDpC}&pgU_C*Ww}ce$64vZy9{8_}?(U zSXex{=W*JHYYr?oxu(fT;DjGMrKKIS8@7Ua) za?1Xj1mk(vj-m&w3)_0VQob9}36Ki}zi;QhL-psT43}?#XVhwt_xSU_Ph7kr-IQFs;BHkqd(M*cDu=9}K3$h;5gckb;jBrzE4Fs=WOHhHmKcrhF*nBBHCA>>tpCFT z!YNX$)Z4823c>MS1KWDqIYA{YlSewt;K5B*qsHa&zA}Y-8q69Tn$H%Blde^-TSvS; zAY80V{g=k*t|Ra8}!unW(kdKyjx^X3xl~jo1sF_B|braEOIHEU-4J+ZBfdA zAU$1gRlTJhH@24qzpvh5kSHqSeQEjFsAbb`OUk_Z%HuKa*|93DhNTp7U%+7dptxH{ z+0>vzZ_PqFDD8f4x%;i9_{Tc>4;TG~)n4|mTo!Qdu*?6j=M+_xs+-tPu9g{b*`OBk zqR#bNdi_C<_QT`crqALXn_OjQBfAH4r{4LFEe(3;N#B)teRfC6!vRiH$}zgrZ^TW? zR_~fpKOLbipqnR85F3HH1~tIBS8o$U^m8)^T{N~r0wuq8^oBQO7)NZDeO=kHMS`#Va${P^)B`jHwCb!>H6=i4V+qR^?wxt}Z zu%Ug@`?A!0IJ(4OG7i^r7Fkzqn}1(LNar7KbKbw{3mfqmK6a z6X1>2x%>YgYm)w7JixSIbjW-TMFy*|P6W&LgCo$LhBj8MO@6f?5>*L^um3cGL?y;e z@X0KL!3GJT=Vl4aMHB<=XmM2mYc+4{=dVU-&vNee7jXwl4xnGFMgq7SX zY?k4xvlG-9sWYz$H>-bt?gqi>WfsJ2a0nJspty}}z$OUxr~x-RK|LfTr^0#4Nj?k# zn&HUs@u!zPXbF>*D(7u+BqQVF?jSp1sOh~bnDHOSFLW$B$@~*KVfX-^y#sPe<=3xt zLP5L1<~;>Q9q-gRtoTUOxwe zlw(iKVQUc$IwhotA@e%9P}@?!YXchy5C}ZG?AHMNoy^tU`s^51aIaLe5?2J2E|o)A zdPM9|ntohx9cCUNh}+nM@>a*9MWNC`DWL9)osgrLP+mteLVts=vVEF7(}+uyiVQ>z zwla5UqoyeHS@8WNk3UIi?2QS)cJ}>*8+PkmFlE8B`iX@C^Lomlg4CfX1($dmc)1Mt zp-l(&|D7quYhH+&)+_{c2;qa1KD9~IUH?6SV}oMx5Ax5QsE_8pY4iaR@!Fl!w`I zbB^(R^WPm4p0%e>(CrAX_2rGP^iF}q6*GU z+WQEB0kl`0)bKq018;RM|6G;Tuqs@Qa|6z06NIAk&(Z~Wi8+VR55O4`l2ev&owpys zXuPOpS$5eDglCYpMkj*>i*TC3FH9gw3_Pe6fH3brSF;7Q$_oRfGF6ncZ08|R*#IMH z?ADdd4L?;VSsJ&3GMC5&nUfcxuvw1z&*>f;6pg2hg}n;sxFRlN}1ymJty zvA8TD=9h8J&bp*7Gk>8qE1U-$GL26CctK4NreUo~_%(hV#xRR_%N|mP;$Fgg7R-En zyh*jWK8GyA@-@%~XBzKc?$FIYR2ec3v3w1Fa~(Ngp>QiC>s}Ll1d*5UL%|#YMOPB1 z+M=&*iqljOHr7Ni6LJ_%t58MW$A9?~@Zh3}we2WL;Or>Hr7~R-0M0dIf1s{9wwH1uLM7 zjX317)t%Xz{82gj>E#GWpW9-zep!?SAXleKedrS+fG)*WCqLL|Ahi~fN*Zh0_A zAzc2Gf`IOQE>eh^-E9(l(gL0Ei*;xN@oPA((@s-O)67D5xp0@7RjdWN zW==`-YK#1Idl_a`qH5BN!N7m<2lY1fwOu`?ufcYIDiP(Vj$N_G&@jC`{4_MMXz|ulbu;ek4A#y2Vdc^x8hf1uvdIneA^V^|@ zZ{e5f>Z}99P#CZ?@x|{9fCZmQnJ7uaN$+@&s3RW zPtLoSgnL4TdS&}$d3Ec;^THtxr~wawy4!NFYopE~C?3h9WP{RWlZreFDSp221y2T4 zYfMcdifa@Hd|_^9Z$RjXI{gWA{qIi;fk5GdhCy#~3^sA$9No>odu*oFIXKBS5${es zJ$Vc%@euXs7?fEbqVR5sD{lYmu%58oN7~N7>DySg^yp3BzN-Le;V7e}-U}BnNDDgH zFrr()LnY4c6x-VO<1E-n7g|43DJ*rp@d2&@B$HxWU+^nE1_vpR|4S#=m2JYul^?j% z1~q}%&1^BS?u95cCZ)+aj2eJ&P*Md%=`8jX5?7%Clo|8()NqYH%xszSLd`_MOAYrp za3yWiAw$(0XEqUudia%7+OM!wL>g@Ti(C!bxKtsw`DLIwi1Rv}Ldo{pOG9fKaxe8_ zMeHl=~ zTUY2In+C|@`m^RhYoGb>kX7w9hKwU3$%vPSsOJ^ru1!%yF^f=jg%zI^&przxT}!E{ zf}~G1<;x)p|L{MSnCduejk+rjTkh+FZbyW)Lb4N;!#B@;rarOco`h*hf}amd)n{)l ztTnt{_06QO#N{lCDQ|b9)V-6p$ik@=C!NSxioyv4H{l4@CRQ29gN?Uc*xa048TOBZ zEdxl`#A-DE9ac{is&SMY%D_@AmU%sgJ?Uh3}G`R>g7qT5q9$;We&ju*^h( zr%mBzuQqaFX$-31+ppkq_Zh{iTMB!^2&z;*gpqE-$vB=c%~}Ds(~EGzwy(5=07KTc z$posJ{SWNte&Ur~=)1I&xe`!n!zMl(fX!Xzg@P5DxETE~AE<7BIderOz8QZ^+-akN z#Bo5`Bj)~h;y#c2U?hUkmhhE_3J($8Os{dgDBqIi2w>^Mdk+WonX0aVfj;wRRuTV(^#pgjP&a%s?mO3 zMguqidFyp+*FJb#K_BiSUAHQ+0Xe_#PBzKS|I9O|iGi0D2 z0J-1g^9!24+fLz?J!li_^B6T>7OesGpI_BW8cL9cENMRF?pdT~-Qgoh*9aYUFYFm; z0`vpT67UdkcgGq`QG|OY4)AN8{*F|1`)TI6?yf6r*j)NL6!E_V0hciTo*`d~GAMp$5XvWlm3+t?o49e+NeMz*b>U={N2f|PV&fPSZUpU9UzulrD- zga#+&S~71U;$(b!>78wKJG1!b9s5^y#$uD-h@H~5*w*v~m6g`41*9!yhefGbbrK;> za^ChlSk7IK`eL4-#qzz&1G>@+;@*{qlF%rsP;9W>0zC-6dh6(U-+TgJ)qk$9OTyW!(2nF04gtU(M}h@0*JqoPj^V5cR|F+TfotFBP5Xs{EAS) zzTZ=!*?ZfA&MN2*d%g6*E%aO_ICCH^cKO?U8maz5zxuM!D1jVJ?8NH1>29BGP}imArZU*>wbFcyj+OPR`B$;XTgx8bfuDF4QL_pSO|9)9!vpgUlKC}Jz< zdhSN9Gn!8JZ62&*!JC+Oy&CF;QHC)$u9?UiQZ#~vf;C0I3m|yw9`^PpGc}wl6ssZ zeHiE}rcm8@wlw!pKCk8;v&uhJvRg`yPeN>pa<+_qgAhes2f%9F!yJp7A>w*&wEOqZ z%=9TnXpIz#*&yG%k#6Dy5iC!c$n35TCf-&~+1ib+bTO!v4`|J0p^Bl>L z8NMPHi)~A%5!qmZ0JvB%WAdj+rT?aSs=+zYOcQxU3Etx*g4H*R2*5QfDi3;wF8FOr@3lrq)U!s%aqPocjO%SW15&yC$p zL^vOZ4GVaAg=7IX>}hJhTCTK8#TC14`Et8cGhI80ZRKMOZ(v>eMv=-s$ih?4UhbVo z=Xm4Sz;B5~3Z>n8zCsQd_T?=eh%JAJ#wI0{cQm>Hxx;;QSXwd_^ zbbc)BC40ln54a4{SRsNIoHnvA30lHDA{)QDuFD?JvRdTJ0dtkxCF1{GDo!~6D))D_ zLtOj|are zCD(k5;DoqqDJ9m5LeNvX`Bg9fwsD50kLZgc1}h=6wz+$@>N>w^!!yam5RS)-O@nb;iR7UuR(tO_r(4F*PAW>2Aq{;v&J34IKKhQ zYhHm(On6}0PqqOJICa&tqIj5C4I=5Y9H_JgA;S}m+SARZh6wQqvJOUk_Uy*y7#QF% zwkR@ew*T7Z-VFQm_f|L2)Diw3=&fM|s_y*@ zeYm&ejcrVz_q>33rg`YyeN+xWdFITw*VFczb0H1@BzpH1^}ph!uLY;ey8ND5w0|_z z^2WagvE6=6saeMdE7xwuz~w?`FZ8hDS_XJxD5113;xtB+S>LAHSGGkgE9SUe#Ulz@ zM1W{wQ9TawT4TyBv3MzI3z?q%YjfH#xbR8YmPV5HfZi@#>gH5&_?8F8T zm`E(m^kIF$ff2O9$U25e5}injPc>?vlo@6D<2ICC1CWF9>I>8*_$oPj56n1Gcsa0Sb_p@n@0CNOa)G|1vL?!o8z_Sso$k!?w~OC;wm5$68#9_e5@@ zGqC~WNVwM+&=?%NDMqwsPkKo2S5F-z93pO>eC_ej!Y?=pu3m(O6^*^7IvO;3<)HoZ zI6?1>FFT@LoiM;9bsi|y6nNc^*F6LEK312wPBbyMjj=goom}*QoH;H(0bM*`t6YkY zPfzs}ZLy0lgf5STeFui^=pf(T;9VOZ!E7W?x zDj+@0{nZxGc_=ZxbEe=BHYyqZlsUeFY>+PS6V(ZYZ6~P$I^@4d8ItoXU@?c;Mb%;J z9Sj_hpB`Bhe?esiEFkV&An)NCiU43!Y!W5`0vjl1x<9(~(Itgpt5z|`;!EVVz?a!7 z2WiJB_r6CRFjZGF6Dkg84r0k5T&U<|@kTzNkcL&}MUA#!;W(iwF{aX=VIL730f&Gz zKwLhEexPUtP{syH!$M`2Uxm-EK1=H4AU&khxbxsL)M!3xxt>3J!0;>$StG>g%zH~E z-f3Hoelj5?8u*=*zfG`)3!x&l)orb2Q*Z4p=UG=YojSG=XzWrCALCbA**O<(bI>)Mza%t295m@jxpOHn?JeD~Iv4%v3<0y~7Lt>vUGCte zS?~+)}sToT!d%4qCRc{(Y@q9M}Qf=y_f#gm?j1<( z=S8;z@}ATYWxpvcUNaHq=FaXwPJOdZUp%EiY!^1+G`C{UW0T(??#ty%r=tvAKiT;< z);y}O+?wsg4c&N2p0oLK;%yf#108q&`>(CmGh|6mC}cw&nne3vKJhHf`Xs#a zv++O1v#u10AR4baumtRnOL?MCINILbp1fu%_59SD8QR;$I{^jke@<>UAqpT&JmxFM zQw+7<_yrxE*ZzRg?Ep|(bR6oKr!{Wk1<&*pY-?c8^jQ338A(FEf!knoyyM|zg7OX9 zf=W1KK7&&V;wt&P&D~R1_0$?vIe2c6x)NFds&-`9DzhL#Ah4$BQj9$ zcQ}&IBTFT&A_Bmkj)~M7F|$%OrdNL&ARX)!b@vhk56nE&-aQ5&2L#v}=jUEW2G{uV z^0GQgvhn>0pi3f4f}#RO6MLMWf=UUD8;_F3D#8_>yO>sp%jnD3^Tpp1Jm4yfN&@Y2 z=Dth#b1U*GlVXtI*2bMYhs7W`<3sI*@dSbQ7HCC9W3x-}Lsqzj{%VgXA>`~qH>>9X zVG25pV4LS>=7{wu4$YSj#v={N*+>u&F-|^uLcEv3 zbR(BS?wXo1`x~?wb)~Ir?9TGYKbRv(lL9%9*%=rVAkmGVD960!KKXvqCo2kLAwge) z@bG1iGslmx?`Lv=p#g2R~buMx@W)vRMH`>`HCz~yh&d7lgrAn zxO2;j2?AGG!ZL&A!&)yGDtg>TQcSU9mO8~NT#JMI+a(EE&0|2s-M03XK&? zH)j5WpJ72epmyl3#d~-tp76h_R`gb>Cqa;z4hAaNlD-Tplr+12zI#4QGe^pv$kNB! z&@snHV^fksPO7`vG~g_#u_m*b2fkht>v>w+h*QEc+WS?pI`t2LJ$N#`N20yH)TuY6 zQ_mr!Md8580<8oipJKd-9z(N$08AI9WIqU_ND&=Mzoh$qRSbCrK(_nOo`lB{d_G%YGYeO!d(%isdyCJw8lv2U(-JiY9^Jkw z0XM=5Y7<{|KDnd>E9grA;Sx&(o$sM4IM0V7TbSga9%e=~XR$Sif;lJyo-?SnujduR znFkG#w&QDD9vNRO&P2>FocXA0VoVGkl9Gt93=HDm{2_?{A1ffjpHhoTzN~TRcFH=A zAmfN!IshTzt@jQkGx$^@L2hgjv!7Xnsg2dL!o?5N&+B?O_e6gbCCCoy>q|#xd7gq!ss_to4F$qTZK0m?tZyf#Dj2w0yn2)fkOF4{ z+q~ytF9grg`3TldTa07@T41o|haJ}~R9G#TbqRi(%>V;Yyy&DOxu#jjVmiZs0{5C8 zun0r_VJ7iM?=c!gs3Kk+;$FPeDyqVaeg&WJurJ~{hR-1JpKr}6BsXbE?GMoHuIwia zg!%E(SOKi>q9%MhQLRx(&k(U1Q70(m2` z!?pNx#HKivbh4KZ*6V$=Xs*LD)nc?|m!`g>5&JMTW3zYtr}210`QP1U z|Jo4zg?iyUC%aJnrqyz!?;yW$sMi?`adM=5a6Vz!l?_r1wUyAt5L)(wU144-DGOnD zuo*1(LgGIjfN)_48@o^lCSGs+qFb!~bjr(CGA)>M;P-AS%GH~vBGbWGPXZt?7>^bdY>i& zh{kUt>~DtVIiHima$X$WL;{-00aytWa~)Q~9FoS#bsL7vD8Gh&Mz<-?j)s63npDfX<^7|`qtp}6^OX*LjqMtQn za8E;oi4ctXX9p@AubJuf^yLBR60BiYM{3<#oR3Tc>z#OS$7~z`>s{g7ZrO@+jd-+@8{@h|2g&|FD|xIL-;qsK<*i zbSP;rmEiq#0>@}rTPfZ~-xA>q)1Qy{ijDrL8g<^rm=^@S4oC_hnFsvp?ct)cZ2ZZo5{9xI1i9nYrGSV5@S&w)2hPvHyYJ$}+OLUstP8UDGvsI0Fuj=F zt`xr?svz6GT49>(Ay8@)>p+{xIfVHQvA2!c_CMsSwNtpmE7-<&_h@|#ZwcZ@?0(&E z=(f?}DVO3b+7F4`<$IQk^R6k91Nn42?a1D}ixxloc1^?CHA zPidmQU=`IrM=)5<(&;kyAGF*2ROE7o`vj78L(4Z)PiDGNS08dS+@GnXyKxIW& zXszqAmi|`mxOg1!%fmea8#s=sm_E9JRSyb-xanP#g}l*67pFOM%lVB)Rja5t+ag zJsbf1nm0Tyj!|gv>sT<)LU_!$!MtoPmk9@M&)DY2j8JJwpQ#Q^O{7j)je4R=!*qs7 z#IvXmgygat?;B?giG<-42?;O3J+%FBsl-PKO2Dp{eIp7nb^+WgJ*k8kiZ)RDvjngn z;PeJ{K&^3w(lKwqp)1RUcmD3*1c?q)jn&EyWOlXNrw`~_T+q&V1j)&$u;$bm+{P*bXni6hMeyb>F&y}$V6vK0)0=WQ)ZuGuiuuk^a zYSUqDN0=%FiolI>X~;%y;gXS%!0UtzZRVEh*Ln0Q8HZg>NN~tQDB?lqVLgW)r$O^M zAaiSccqDmw8(&LK4+RlR#q4s6<>eP39;u)`MgfA7toSs%+^5WM@`J5?Yk(ZnRnIa)Iaii*y*FH&~FSV6N zZmvRTH}qs2-c9dhngxDnRpz{rLqQf;H?Jp$JQ4Qy^oMi=C?&cKW$z$H+D>F4qWje3 z`0p7SgBe_}zI{^puPU{Pcm$sZ1*Pa^a2--GZb!Z$_CW3NYrB3mIO-hzBxy5W8R^ZT zl&PdZ!ao47N>PGEg8F)9#2E1=vET$B^d$;7`w*>a&C}X@=FF?eeTcC=ipH(e8i=Q8 zhrE%B;b3?2mDve+Ekgic{z~5z7W3}3WHl&lGqmH>to;gIfRM z?K)1c@KO*3{XQpXOQR;j$Hom!h29)}s;a>|rkftAR0s{nUF6xvjeCVriwwb)$>&Qm zq?!XZavjbs9W1kSJL*%LMUa>z?&{t`Ej3>-x4ayS#DjLLMTlW#cZ&16HBu+iAn*Z> z+t}oG%d*#eY&~qR3C8@ix-df__5v>jA**Ad(m1f&*>mvvL~}2(><=ldtl!@G+buX41}I@r)hk z5zay1SIf=8F#E4|aZQ)}rgQ%*DY!1%|7u10L6*OORtO2N znedlwr+t^MB&+)uks#qfbcC)Ky%)U?1?6xuQmVx3G@peg)X;=Iqu}*5_*5%qf>z@U z<95I~U{!Y__J2?P@Nsl54D1*7%E|8maQWJ zVte1Ku}z|O{ZQj1A1j_b)mJQjVhw&M4lOBYDz+VobpWAd@U9_Z8D^+@WFQLGo+ULi zM-}}hZEE{&{C#Z~vCj-9m)HxRhjIw4#oq{!*lNg^*>^5-G_Uy@y0+VD-vklX1%yzu z8F2o=CH~fNwc%sbIjU)@gF3*1k@I^{kl2J^NGyiM%1JSpp%DIr_Ej(qc_5&2mHtdF za94X)R&7N7w6~c$|HA@c-dtOS?6+5F$4-5Ad|-EZT{mqR?QL#<1-HXtR1O(mK&bnk zK{wWC#YO%frrt8H%C*}brc*jp1SF*!q@}yNLrM_o2BlF#kZzFfP6-i|E@?q&0STo= zLBMw|&)Mhyt`E;|f7lOut^2;N8DowyCKE>VCcHn5Y@xMpE%&Yw;|Sn+WlpJ+xemN! zmRUbKJv+O@S9yxRu2?p(N(@MlO<74CNpWF^;2xkSU7-+x>aL?1!B%z8@l zyslo>6s>l7wch_&dR`f&H*hsAV-!8E@Hj1WEPrz>A_AkG;6-3Qs-)L(3n=AJ;V zf}@-W=oX|X6FMPnkdc2y1abI5quOc7cWoMg90oI#p7eFNN)^C%9aztUT^MwE_^{%4 z?C5-=9|y^F#`@1JSaS_#oIc!obqg`MHl=cc@|BdC2GH0>^Sj{~5?2tJu8ep4CFnb2 zUk61rgP>O$?U}UwSuNr9>gMLp1`MORo{!#*uP6TafYIXD5yDkO&EjpH>7odpP&)6_dp_pQe`+T#~oqoOciV-x$pJJ`JL@GU~16+ zBK)=0KUSdnto`_*7Sv%|%iIQO6zrgrI~+l9^fPn9<=`DFLnvop-0m+Vo#D4?VKaEN z*KB3aTpn&j!liGG`m84%`3WxE@8%~^X@@tzva1Ko1TYj>Is6n@QTIlnW^|k>I})ik zz6S;NeV9@qgg;H+(a$LEKS6**P)~SZGi|{40hA>ZY^R~N83i9y1X6LW$bmSx`;bgY zzQ8eI5AZ}7kOOxGQBVVjo4H9aN(PBB7ifkEu5BOGdv0>$>$QNDt-IFhKEfhnO>Xm% zjRjDyNImBQQUy=Yx%v-?fsr;~xp@yM=L{0wH8^3oLXl?;C=HjW8$^Z0WUWw0C84Xw zKPK|;9m1E4Isu}^zlJ`X@cm6hFZDMb8VQrL>mV2eBJ4j4sQ?S#gqcMxNs_JAHoy-F zMQT~(Kl1_P0n5ZeW`qYd`02y<#_|S_VTeFrB~k-%ar-9oO$4!t2eAzb{#*Ue;DuSq zP<1Z>AqLL=Q=l|skwnr%RxHm*`vhy5J>#KFSk*w{jPKZMzwLKJZ^q>8wPLoOI-+-gUSgI|Gw=7Bo{1sM&Gd%PwO7Os;qJh^EgS8$I9c}xu;r3&K5=3tRgV*N_QX;~aFvfgVN)GI+4k(0m z(;>00uC4&|*hYVP(hGeg;R(EXsC0mVwF|fnV$BrvG-66o7n> zOH>O{2$#z^xV{3Q@Rw`s1p)km+XGNwjB!AXmD2m_HXp`a-9)HT;oy$@lL3$cuz0pD z8x_TF^!NoTHEA-1NF&@CWfVwU@BKb&a_4ofIoRC65 zJ>huEB_je80>=qN^u9+FmI1FQ1aL6h`$z8225c^?LM}y^;(Od;)n)!F$NK)e7lyxrYiK)eALg!mhn1w}e!rE?Cgf^a|} zXrNH$5qtv;0bFiGl!brdQsJ0V0uNf)Vl%u3l|NV=ZxF4GsQ2=~(kQ6u=_hVb3LV0o z#G-_*dv(RfkAMP!euBlL$^Xb(pt)gEO6>hG9f{xnyY-q{aE*Y`=@L60Y7e;YzxFMfp|I#kp!v| z1pr1Mf-+PA;B1KYHb-6Z0~+?tI*?4ev!NA)Qbn_uAiqWiO=9TDm{@ z{wOD=DHAIqkzmD7$Q-<7d24NtLdUG8shNorDUnCRN|lVStkXV~uq@?|Esz`z#%75I z`?-G?mpTF-ZDnV49BdZHk3Q=BJ`Oe3^x2PJKfaIhR#vxshBtEk?(fw>ren>d7be{X z!oW(206K!O@DCcWho?j;ks5kP|KlMhSlYM;^QDJ2?cogF)J@EHx-^7OL~h z~lmw|+Pak1MMSm6o~8EpHOi#w#i40Yq-BCzG8%7$NL$bZL zBZe;`v=&YR06qQ*(vIrEw7MvVIOExI>$|HT@YV!~Uh;=8Um?uE{VpN?#jBh*osojs z=wEm%_{hlEV2Si*Fo-lhaG&Q_Ue*wdw5BpB%p#zQWN+I@oa>@3lGgq`rNX6Fffjpo zIeqIrz%Wyc_t}9;`(j3QIk`ylba!^7IaMLeS5$+9lfvH7F^m)ar_8hJ)ZqX9AW_9| z5A3W92u*2dDZbCUpnxQnCl$7BwhhW2RTnOuA^MyFDWbf}BUpB!69`k?S+aqhnV_n&lHN<^C0E6r zcy=nQAC`%sHt5?Tk;~)L;czVe`v|umlcadYVU*uut8SVCB;~4O0^;rDmo`r> zR1`C{cZMM~{Xu{KSojmY9T(Y~h!OQ?gC@fMfpEm&M`TRO!##_?7ccq7^9IWw%VlEq zJzWjK1eZZ<_;0LGBXSm)SJ9#U|302SZs1>yB*)(WY!9Idczj>nM>r4$ZGjBD2$d4H zHWgYszJ}OQFHnZNMmRgZH%+U1UceDWAj3HaS3qD(EKAszLBJGyH66}}pi@2%nP>3t2cN2tH7)zVI-pBm+s%Cn@?M!JM z{VE@!XX0pGl%|E+(*M_zkCI`jM3BUvg^yGA2p);Uk&}~Ck$w}S;)jzqYADVFfO+oG zSo8_egPrE)wY8m3D%>r8X92V8|E@qV61G|AAoChLgwk)Fo)$9VPY0-cF86)jseE+Z zL7_BzlQ0ZKg1?m(S3qenhY|k;9P!zysfJ9KOa)bKkW{`Z(X+^3s-hs~8duu>_QZ_C3xE>mn{6 zwV>Q>Tcj)Pr^M`V`F$b46{j&%FoxTNofud=6IdCI3I7e+v}oN#Ji$f6L^5yM|DsQK z2q%ed&6fxXZ^Bum$r}5g=o%6Uk3^`&o!}^o(-v+Rr{azIJ_& z%~tcq%Ku_q^q|-6atJtDP^*&8zYF>c|JVQxZ?ZS^{%f0tl8Da>NfFVja|Bg+=O$Rd z(B!{Hc{HAW1h>BEgnWmK-huqrqQ^(LAPqzJvNW--@aP0K>OSCqo!kC6(Y{xcMV+)P z#j}%qZ8^Cz!MRe#{J-DaQcK!kd{xnafRTmv8D0wg(tSn?PkM{Urjeud7_P+jdPs`^ zNWO1RuDlcZ8*UpE&rMxj*YKqghZm7GMfcxW1CD~oD6fJpt^Yl2tZghspL8fAoLZOU zgJhw^k)`kt+yTJT%&B=+F$?jRU3n| z8cQPdm0ui|=5%HatsY)+M#m9^1uhPGyHEVCR_(r(ID2^dF_vDJ)!bihZvHGh&|9z* zLN%6vX-q2?T1qXFDR;DQ+}JLn_1dqi69t#NXpboM)&W|(_A1T7dO-{)9j(mYONN{V zDOyhfyo2|zbUZuZ#k4NEkN9+*gi*icB_{SONmB>4g4H)^;55Q;TkWkIv&siJ}_ zu5h+H%Vyzv8iGlk=i_!!wEpj4BM}&znAE;mkA{Q`3!;9-aCITz+rXXIe=olQo4#X8 znGLZ_1$fbaH;3uZF4ryXy0*anglk0>V>G%8QdW|n$R=)9$Mx`l}prj*Yy~Pi7Z8PMaQ}2kRwzdh|eK9aY_~S^_g=h_Urov2@(r@Oy zknj&h?6prbvdef46$2g~UQIeA{Vph%c6xYn)+guZeHU!gCUw3-&^ejW(HK)agafR3 z7Y9Y*-yxUkghzA7rIY9CJlMu*5)o70%`7jgmqO%!(w;vL5tA2sB#}G`K?c{2y{JUq zL>x*|_0T`?SHu8P;NOCL{0vGdr*?9cYKPV_jq zm7}O=g+=acr0Ir)mu*&3PLfXZb{7Q=j<$;p;q7MM7aWXeqtnysZ1;3F)mb(76uPn^tD5CCi+??dPE(#ID#EZCj%1K_0UR5Tui>&)`EEWu83(63YzMgnz*1f;(uvj z73Ip7_9rcw&>SQt=-T6#rQW0EAPy9SMgwZTzoQIhVPP7=*}S&O?WDRYDk_klXpDlA zi_XIc9^679H;Sy1lzs907HPnYKGnnAoWYxn&J&ZNt|Mk926BreY|1>W+o6feHG2kM zzjrI!Qgu+u_-q=kT^74hqu}GFel(j(4m@l>{#HQJH(ym5$NMyhbGsT%7YQGVjzgOsGz@7Uyy==B2MDkm(vN60Zt9e4^pKM2I7R)BTv(N z<3RnLO-(sXw%YQ=S=3+J$=Ml1!InBYBxq>t_i2oTI&b3}Y8vuyeKVntMEiBe`OVrR zi9bdFVC09T19b@M<3Ere-$JGJ#ks@D(QywRw`x$zwhJYCOLKE9r7$r{*Oj7wSHWKf zf=a4qjZ1x9b<;Ita$bvpOpzh>MKY_GW9?`q$(n~_Vj__l_7?o1?38ckst8BU#R!Wf zH^)at z+~xy#Ev2L^UU?)S5ADH25EPG$r%qrK(wzcSWW#Oy&D*y*x!Yd*sB%$pRxin(k|L(Bc4QH2-9j@$p(NU`$()@eACAsPIQeXXz_mCEU?zCD) zc$VGyCfQokQ^;~}O!CK88Nq*x>5-^vn)9y z0NBV<6+XRJCi2|s?&^Y(U%7Gh4XT6Lg#1oVcTINlbS4yqXul>sWe7l@LVXQL+-GI@PgdUBGyb@@M(#&0P=LC5>J;J#!!zC!ua|;Qb@B>}RNmXg;Zq#ZVDGDuN;VHvgVX$6IcO}v?661%$I>)9xJRX%PaNgpWk5b)th6wiOm5Zizj3V7r`&TO(U}zE zXG9h^^@d!f$k4lH5-+YQ7S-Pwhs|v!9B0G_6U~J0bN|j*ee2J81-y#!cOILc%hHCLxI~dl;2*Qk@!evF(jA!(7F&NC~A; z5I$C0z|VR0LeTEZ^FRdFge22>!5!-&1Tq zid&}cC-k}pqdB^{{PuPKtkz+wNu7H1Dc+u)t>Hdvh&9oc(1|Msq?Ybh^wTD_CRSxa zo48=VSkLwT0zscbU}#-9!0)HQOIimZGD`h}(*h`#8xSb*7>eh+;%IhPioth$Pdwv39Jc=5nqVl=rQvBl98_LhmilrE&8`0Y|D&$MreQ(ez z>xZqv#dO4dzGG=g(ca9s>wk>yvX|G3-Dhv9eX-85|FM-sUiLO8cKIZlex%iS@Yzth zVrR;iOzJTqsSceeIZkte0`1`YA%YbKi)jNNK8nf~^)VQ#f)yo=;HDCrt${w{E~Q-x z|CE`nfnDkFaf;|26~~okv1i?{@8|JhtsMT>0kRV^D=1#`n=)Ew#^-0x>ALNf73q9! zJ!Xj&pOwxSC=f94_TTwEn@N6bPsCT&gq7MnxK=^EvU%%QNcoL29DAj9bm~Em$>|E? zE7_PTD~`}o{X!JCU_b4mz;0c-({{PJvEDOQdsF&W`yYEOnR*nB%@J8euL_g(m4<%m z<7`_%b%u`$X(aKrAvthas_^;gUO$&pHd z8dtI+)sqh*sS%Z7w0o7^Gjz@?6r_tXM8lJ`a%r*#s3O5MuK)Mz7+gD3Pvz#+>j(Ls zq#l!WO_qF9wJwLHR;(~^05Gw zHUGl?+GAnBxLC5h6aQiH8M1xvm&ZMs&aOdLK9t-ZTI_9{s=danDw1m$QeW~(&}Svx zB*u=1U9R;wrp9p-uMLFP2aLO{C>?1cQ5RjS<%UF85yb#bR;!oE6kyWH1po1 zHT{Wi1%RFrv z=Q8556vtrOBdSXYo_rbXjO!n1b)f5b5A7hpvQIIBOd;dQkC=UwQny+~KiqKm=BVHo zPVZrR4@Pd*38nZ=T=S1tJmLrQesRjmSauO6??YJSWqMUpI&h# zvl`m{iw(_c;&AMUk7iIAAC;OeVUI3HCQ4N%eAyZ7wK3lb!x90P1qWOqL$*6~3@yXUg zSUO%$AhS=4g5K*xC=1lm1gYjvw zDF4HDaPN>>nf}(ggDZh)y(VO&n!?flaDqEQ{`f1qY*d=5#^GQudKFnU*72g*h{K-~ zfy&~?nx%|ZLW&ne>2r_Cd+C)TO=qI*7!49phhMrRJX$78(UnlQZ@il<%0XYC7u0RF zHMHBx+=uCt=ibWB?SN`@l}AsH6U92tY%}?00*O78buNRE`2$|G_Lrs*H67llF$Xdo~#N*bYmsoyzRD~u;UvxmP;5*OC|Sw+0aO(=j8zI z%L}bjd(wT`Q_!yVL{if2%`fk2d8PZV5mq1H3`;3EWoK^2{p5#2uP*#x5;p`?S+JT_pwE z)L8l2`-CMUV{`}Y?O!-=<8(R(bf8dp`cYL7oi{`BFRo{r_R zYM%eg8iVhHlo$@K`JyS9O7417T`@%Y+3l)*FHw5LKhkWb>DG^H^4SHyN>xwG4NA zRb~Y2d#XKHW#(PLaN7%ee>-EO4! z@Y$SETU#f?e&iEcXd(18mTn5a*%>XR@-KbKA|zyxW2m^p`fHOV0y*Ly$v%21 z_nL=x>K(5E>fKAy%)4P>1RJy$j@p~9%e)aKL$w*)U&=-kU9D?E=i!91^b*ASD|!6L+quJhNOd-|L+RX0Yuyw7Q_ zS{SwYq9vW2(h5x|nTRNGa(H-YI>(ek!P)TLk8O)+y&p8J{Lh&hVna*=t*Y(ygU$kC z1P)^TRMjX@eOP(u^(q5mluT2p&MTVm8%4t^Qm9y8HwPPIX`~_}$B3eQxM3KKwZvt~ z6F#iTMz?h|!nD~~X1Bo~G32dFdGgJrPg`ND!`a7%9*s(Oq9Ly2q`;1dPx)gXt`m8Sb>nuj;#V|X1I>&pZK<5_(9%hF1Eo#m9hWS;f z`b?(kWk;#YEB7C&YeeDlmz_M}P3zIn}!`mF;jrz}AEBl`HrK4FB{L__dhk6no2 zv^aknZ*|pmlAuoT-G>R2!NGl04=?1qQDnCRkz)j9pC`$DJ2_`!W&IMD;K6j&&21a_ zFkh%Sp1cp~Oxp0<6V8vZSiLz7QLL+ZRb`DRI_XIA))T753e$TG76IDzREB*ObI;_} za_f9E&B^9?i!J>f8@YVCgz5B)SMv-n>X*qaYf8$~iT1P;0&4Y`+Kq@hNp~obQ%H5xa^$-Yfnev!V8wyNt5&iJY04Q9p-Gm7F0!Y?<+KBMlm6jGM5&|Ouu z)V7eV49m%quRPw|XljUe%J1ngq>q&Rzm$YpC#g6@WG;qlL$G4Se<*)A|4Dtq7IVR6 z9H)ElIj<50Z!{K#Fi}R7!kE% zn_-CCA}g>J7QQ_tY)TYO9VZiJNXLs^zW3E&p;fHH?l{wEn>TjxNd{;6c~v+6xI>%m z`wD(fU&kVrxz|STKWAmx=dyjWN8jQI&6hJSiTAqk?u6A*%`JUz^39z@VY0S>THfZY z`85LjU&!L_Pvj-}qR>6x9ceZ1&m&`mb`$+CFkjcb<{vnFF7ak%X?DZfkCTpVwYH;2 z=1b9HPgciok++HW|6nLQlA`hWt;|XGZF=Z*flHC|NP}bQ<+`y+y(LFtZJ)ua!<$Zb z23pBi@v0udiiMX2sLX9R`2JhpzHN7*Etd#p-ZQD3QpU%B9jp2_>Gu?w{AIvIB%PvK z(TRX=2(2|XzooZ&%-NozxPejOw{kj<7=6!A-riuHhqiCyT@yUSJgcLlTR~pea8Xug z^QtgfQ&=Hf(=2rgIb#kLA6K)AC4XLg*h_}((L?=6fv3H0PR$fJ=myt4jG{vu4;XEU zH1GVsdN93q!v2-q*OVCDbS2V4!@fSOzHJ4kpyEO11zlBsDTS!x^qoiS*?azx{)`Mp zZ)i({v|2JH)n}7CXojzda1=w<8LQIW_e+oi?fR-V|9YCoj%sA=ax<}u%HVEYbcJ4pEh2tWmI`#3x>|i{0AVnw!(_J#4BM3VkDOZEX!e(kRoRGr6P2 ze7#cL}KS_mthJXqj zOlN(*`{>7_5;sBc5S~6|Jt?^@2Um*Lvei8TCFvQnl4SL>+R{Ro9xYn{rY=7@iFk%)7o?P ze+N^fY1*l}lA<|9_2MfCc1%3uj&aGTzD5z9OCykF3AGO=d16ATMdp8-hxhru-R1_L z-2zKVROA_tlTu@f@BoQu*gQ{F1yVWb@R<~6p-Px$l`!eodVR)2is^*eTxI!G?q((@ z8a?wT#ffQ~DSnzntI4|FGta|#O-k=^8zt($iC@g9@|T>u@;!pZ9O$7LPs8xmoS@rDR3?tgH8CZG?90P+kzUkTli z&jdez{#>H*+MG3|OrqN~tnyBV-NU1AkE8ih7Z{?Mu53w-g#6<40 zYuTRD2?-F@aqa{}-dn64@A;v(Sz7SiH#t&QPz$)XWjvUq$v4@#7#~KnXK%2z5)<*n z_4+lu^XI_dIhGPDqh@-G#g9?hoRF05L0pCw$K+e^;@h)e2THP|kxjnRs%}bkmGI9G zMCZsEhVz|~8Zi<@P^*OUp7Hej;dcMkz%Ycodugg+!c$i9S+=*V*>0k3w{%lGm8zt2 zQWvj85VLpwa2Zir!{0Iz0bXR7<;$WVfZiZfze~Ss-FJ|lQh=A(vY!I`R7Qxa+8{LF1o;I5xJ( zltq($k*D@r%XfLnlS?;;CPxhp0`1ACqYr+`y3}sGu2Z$kH7F9sjpdHtpIq{KVYA?{AdRf?3^T?MuuO0_uv<5fo$kf-|nS1~y+VnBzqV>J}SK*<=X3 z95hVuK1H%+Y|3HiGxMX8H5MBFn&y+M7G(XkJ^eR@Qf{lzFpV3hg-ht-oma=itCT+# zOgEQ4KG8H#kP0UF@AAb<>9&-YvqZmN84kuNx*nb|76CR^s<)>#RjChIl6rvsrcsng~!cWQBUf% zIroDDvfIN6aP7~~0#kept}1+Q?0<>C+KjX)sz!ZGFV=+q4=EW;2ah{I-)U(iQN6Ht zZ*luX>Jq6*JVmHn^(x~6u zub!#@y+46WO*WPE%E4d{l4EE{z@SyGQD=Jd0YH!t!H~ z-nfnxN7cMSG^&|b4L>XeabNmK~)vgcMR^74o-_O zygK&JPIa@%$tO0(1;aN{Lifs_!Fw*U6ma(lao!F#~>w_wyA_%&8= z+ZO~*CNQ7|U$*Pt0}?C$W&-vsN32I+3{+3$OPGMFuDR60~#{& zy?(G21P_F5_TwmwC%n>|{^WSa0=#PXYjmjkiqLGt)Xv`b1g7|XkH#n=urlVksZOKy zg-5E%k}Q=zHp9Irn#E(egIaATV4zMwnVn*Y&%N*4?Y5y7RtIhLx_06(pJZC_*8277 zDlppkn6>;B@`pPVW%0A9e^pWT?7bYJ$?QW`c!%OMwx?GypzB_#cgBevb?MQ_-bTg5 z`>7L+uf$PUyHay?JKJi7M514Lgqk+h@aU&Axzd;BPyyG)!Jh)2g6+qtX)?1Erqo$9 z#Xkwk=wSbge!#g?`_sCMmiV~|@oy+VkizaLgFr!w7|f|i2a_rK_aY{I4`_f;(Fl|Q zdH-4jkq$Ij@ zeO&CNA`$;#0fAEFnVFf2%(SuAQH-fVe=kplP|OMlwYB}vz6*ml4WOo2%)w7yqa<7g zlv&OO3+8)E5h^5qs#_K6DK9rLVHT<&m z0o60RK#*d7*=oZXJz?5EGG2uX$;G5_VQy4Ly>i1z3hBmcaWZCNT{AZ%mq@F?-KTeo zO??%P_elL8rffu|&+(4`sdM)+2>Kf8F!5Nwa@@-ihc#e3@+q~Na9A3a5m7_VgTto)&lc=vlf28a|Y6yFfc2N)gRy*|WLv~%q|85adZ zf=!r}fx1hcHUJ*CbH|VSK$A@|Fwam2K8fSSvyB9W?O!mH-i8A6x*03#9zz^u;BR0% z5lH-Kn%?I6Mf-yC7}ywz9nPP+bm ztnR|DY^2l~h3_XSJS2%_?9BDMa)Pht$54B+_ng~ewV%#J7WWZ|kB1EfvC7Sj6dwo_ zCOc_PIy$+M;i>+TWQ|}Rh}@9nkJDzI7~VYQSYajO?|DxbZ%QGVTDzw!9L=73(~!+I z)j0!2!N&8H&XQ8^;AFMhyYLSqj`b5WJ=TN!22nNeEl>ct0bV!w!vr~kdq9EFQbENnCcg%tu;vWC|e0V)6Nz=C7ogyzKkg$I}I zv+Sou3X~NZ!9?db>71MCfzpXwd+7&#iZ-hV8mV|__;Vnwo&&|H177mGlbi!n&q=vj zU}GVksu%~R1KTOH2e4k_7vSl?m?}An`2vK589b3&AT<0Kc-9DH{{$>)_aWhL*-3U% zr6AfVRsL6HOH0OYVqcLiqBT>Ly{%~eev7=5pwE!Tf`Cxu)p&6;Gn?YmZq?uvp_*B< z6A{m#j%xn*TZtH?)}6z52GC<#E01@h(wRP1`#rc#*b%Eo$Tu*oz?`@6!kGV6$B!e1 zj|Q_1C7r0@tz848+!=Y4v~f~;FXW0p()$kbGSfJp%CF+z=^wU8>(1sMJ z8V}K8el)n(HSH;xeN=a4p+y~> zLuXH?=l0g>^~(uD`Rbw+fBzG`-_UE5m`bGzTy5WNfA;XS5l6=QB24ba5pqL0{;0CS zJyW?e`AXwx!!aaLj8=iPhSg{X??Lx5S>?^Uf`{#T6ty+hb5)dDjs&1)?j@iAz^T|eoC*ZI)zX`K;fgJf#4K2mGUru zY_6x`sKF%}8QLh0ZAzNY@%NdG!Uv*C?j;vvq?wJ>bSKWMQn~s=)u}(p$A0Vz)QzM> z6gpeHx?7sFsAxFpbNv1|SEq>P|K3s&2@m*XOpo3F^8FidD}m6sG%<0AV3{*GF~$H@ z8;IpBW?4z$FF`vpeFT{)5I9jX$7;jCg-cb)<$j2A_28(N#1E^S_*7+g2yr_+`+MO6 z@O=torUZ`fir=>!rN}m@01@;GU|G~Qj*ILR<1b``m7j-)hohsTiOC(R(g5ZsK=uQl znW8XQ*+7aIWZ}@~Q>NahZIJrpA@Qm|9}6bz_feB+<~ zwb)Ga_}OS@vq9q>TkNaz;9rqO9{%hc4?8hMJ|_nvk_@d@@|B~m%&fv^B& zU8|NK($|Y0+0b$}tIeAOy#g$Ux=`ys1fZ5_9EqKCxVzZJ^me4)MHjlt4jQSViii=my*?!p!l z*T$;9BWsY7no2+tpDCm9Bpcg}G+6wCoeB5-w(#?HI~$Ds`@5!HFLLz6mQ{PlZv-je}LEe00^=05`R9$ zc+n-{td>Q(_WX`Bc%NaCA?QgGa0OWot6P_qB}Q)p>kiS1lFDqVm0#C;qwh36c@pHC zI7~Z>MNayaO!HaQz-fqan=Ojv>4zpuk{c6pvAR`me0OaqQHzB9=CW1j1BMN>-EYds z4@hM@&)}xik|p={uv^_gvU9T?*>>%3)M8dl30n>uWoNA=(ulk6Jk?3~9L0+CC@S~) zbfaV{RhpK2uN{B=w=aSBtnr%PxJ_lU?qQ@#_#4kW$mV&{V0FB1c-J!$RaQbhyO#41 zIc}L#Q}R&Bj-r}8+dQwAgH#uT%E4-4__p>9)jql-!1!KcNc}_CIkOO4}xGgKpn81rtLtF zM+sDSV1g+OkgB~p`GB@_@Z;bRgfz$=w(hJ*) zyfM$aMpH)D2*NgWQ?Oob50o^FI4iIYd-{DKh;AyY8gS6q`w=Aj*M3_Wr@qkQ09T!X z>Pc((Fp1v8|SaFHy3UD6|-CgTwQ(Z z?dJ^Sp1L8Ac({@pwIVf_rS0F~9>X&979m1^VQV0<_9Nv5v;H|X$56!wMR#gL)yak* zK@AmUSAJ<{a;k~FhQ`H@2RK5RUoh#bZcfN*K8VlKtzveR3^8)B^QquO3Q4qeUA)W6 z5&3?=xn}<+wmUV-bkSq4z6K)Cr^y4jHHI#3`NY$UN@*r>NGf)DRtraG5u>~x`G3tx zJn>+RdQ{p$v?>E#A~LcEasdgfKUjqzCO^R7u?S*+fyTMD8@V zwwCU_JcG*R%?d&{GxR<2fN7Pj6ocIvuH>>qX-z6# zsF&AJU48+*Sv~`(Zh}PCX>M0A?DmL#01<-UvfsDjy-#mkKRc8r_~K9vfT%{LnD{Af z@b`0}pwBH`PcR2p_DbqgrgV6=i$pAfgGuDrxMrrCtt%olIR3?c`-X+@E;(zoJI zBd{b^w52xuVkkR$KJ0kbup3UkgFfavdwyIQL}vTWvOTQI-kV)V#oVFsC2D|##~HwcB~?R%HTr;HPR z5@Fi;RTB+&6zu2brjGDLFHN61lVtJq>>nCMdefsTkSi0Dr09xR3)!edGfz`|l>0mT z<^5;0Pwva~acH`P|3K)r_lQ0iNb6M4A{DV96ladr&8cj5W@c37WDF!#9sBLF=+oVx zv3_Rp0n|m$@u@PY|AL^a4boM9Sl&Cf-u=PA3$h#7Bx$DZL%>cC7^Hn6cD|AHDBBI= zNMl`{szHf$6#b^DWNq)X&Xn3z7|5lnGP^ZqQOHTyL2Fi3vag)fqc#b?geas#o;>Lic#`G$)`W^-Z3&b;24-GlMqNO|q%j))g($!vs4HfUfL>}; zd<7~jX8c$yzY8;sCKyUl9EdX;8dJaHt2BoTKF_Q=UQiSn}Vi z4*J!xlAxa`;tG6gv6E3g{u@JrQ#6RWK=(P#!)<_EN?#7XV9NEi0%a~Nogs=?0iDv$ zxa=#j)HjE0|6u{ggBg!Ex5|~z8#fX zl00JP1Y0p9>E>S4=~Wq_miCm_`!*()w(Q#}Q`$zDIZ`dZRbHsl8sId1iJ{`Vy+iX; zX(V|~*O=D+?@o`gxkJ}2ITAgLO>TQKwTz`IZB?f~CY}s}7}EFcD+~mLZy33!No?Eu zB(svw*H?~=T}2vF5J+%6|^J${r#XM`y~72)Jy#GR$}mrzo(@VYIiBY zK7xq+Hr@meSdAc@OJK=YBG-d5OlrT41cumzE^jzPORgXAW*#c4%Il~taz8sFG5!?(V&cY&?8Z8 zhg{ZSnlbtvW8G^bs*ZkRjkWVVQ&C|8o}@kH=-<>+V%1&q-xnLbh^mqKo%1@eIi|`C zpN6z4&AE>kaxn&f7iZO7!A^U`x9t-4(@uH_nIAWz%5(0z(C__xVXlpQa_^j`O0Fw! zIa8e^D%rId<31PbezTN9;ersg=<#HSpz`u#o|N>KEvmwGT$7>x;v(jIn1-1s z8n=Y?k4RB}YUwy>a>%-9PTrk#vg8;??Q_>V{!~+m(oA7V{||`rhyicfDU&&<4k9fc zPXt)|2V_$Rq<+i$HHDBd!Y-`i2x(z;;mu??ei{V%t?SgbA-9%zN7!X#9YHKOiW-$d zB>MSDwg*0p49bVc>2Tt z6#+@X%j9QxZJU5E1S-hg@R?a9OqK>?w4b0mK5O+n1W)OSFtBPVoa$qN#Z2!&ebz%P zG-v9e)}V@_@c0~Ly8ZwsL%{QzqJyf)=YlbaJ;WM7U>Xj)5i|#^@*AM1#g83;RdWbg zYT#yyf#NC+)k6@5fdZDCA?84vmDR4x7Y`wH1HcVePg*1z^pkFox{FVA6d&cU$#fML zD}L3HOYl9a4Z30@lSc&kyP$3C{9WW+G(NFS{|9_9d1tAWXmy#2wlu>LK-^<5aM}S= zoKP3crbqfIfuywKWEw#yctl#|bPU`d--~b_d+vuSGE8tN8H&ZL+_L92PfnNc5lA!) zQKSm-a7e1j>!p<4%BI7x{zE2%)xFDF7x>1$O(FP@P{N$hfH5+p0BKFh_N;8!ootme zB2Y<~g7c$6TSpQ#b(;wZV?OfO)WYb>sj}$;no+5jK(>|AgbAM&a^F2}h48n=rIoUr zA(Bv*3AIU8`nY{%PLV!EUZe{9B{P!wNHfX@+cH3@l5wLt1^%tKa54Y79vleuL7tl_jj*f@1g0^cA1*LTMo76LqsqV zL-dAW!F|-=$jLeMG`>n%1*HenIdZCH#l@R2zquE+Ciw1LjUtxeIp{TCG5foX6kY9< zW;wSz_}4)jpLDva@drB5_^0tfa&kF;L8Jtt6!lLeULj4`#H3T!i3FfGOec?zG&PS0 z-J*`vsV-@Letro5*lF@9RlR+Ga4JyHH^W4X&=G;QpppB2Aw`lx3fU0hk zh<>Js?Je{`uuIkE#~0oN)@R~|MC?rl5gFlHewPAdcm)%4CHXKO+a(+l^RlS2VuneV(}M9V0)u8_DKZ*&|AlJh zMs_xq{FF4-{$$f^{aO(lGW2HU`~{Xh`e9m};M>ldarh3;TT8aX`aYavxgR-=h})!w z7;Vi)F3W$yO@B17DC0&GGoar^lY&dR`P200heN5)0qCRpd|6ejD@A`=NJrl)Rys_Q zhSu3tun7~$_LRhzmlo5!Ek=ztlC0;XT9y5ewA+pZec~ZP#CrOB*1$siup8CqvjY>| zWwCaY{UxyqdxH7J8bOeu$2Zcw^6|`zWG+k{j{!Qx8S-IqiDK(1bVctYT*`}k!+zcj zG4T`eH^Uj8LpU+^ODITCcT|p@*a3&oX`Kgu@<5H*NDL-vS?XXzk4o&0DappWL&22e zsSUf#06Dfk4rlE=EIfRV^2<0s<(swIcVC|%>%#-9R1(utAx7ht>@#JOo zO!41G#!?uh6toaw2j?}gl&e(ob9E0&y+^j8c5bdUC#yjTHM%2AH(Ab|WgaJG6OJxXw#+<_TLk@*QIT?Ak=o3hw) z5AZLui1pbi_Fk2PLM<2qmB{4{4b!m%!6*xsY>r4qqM0_%X?+7VHb5ar%Zeoy)Js*G zX{Y%KPSH%IksLLJOul5b*4I_F1NeQvNdSHT%!arL{c<@hGuVPNhm-(K0uFuk&6N=Q zj*u(3+!1KCgYU&`(-d#T$)$EK-ru@#s0Hw3Zt9!w8CehVR+k%%Hw`qjko+=(uhYp7 zrLT`3lCRW!Bge&QrjiTo9do24)kqm=Ff#n_WcM@PSTwTOXvuvZj~!>ULbVr_2CU-s zh)YQQ)`<+Q9dnvOl^C_cfd_+6wLVRWG-Z6*52qtT!P@ALGugW_!sD7&Sfgt+@o@EV zA8jHy;gHLM7PYVE;l}ChQWA|g{AkgWISqDh@Cw-IBIu$7rJFH#n^C1F_l0r}i`}v7 z;(s>2?(my7#OZLQ&Mg&$AF#!}qhpafDT-dM24pW{y!wvXsz7_^nyrt`G=ItU_ZaBXvx+YU3 zY1UL2+4)%!BRJj$Rl$zbMokOe3W3h*G?&+-C37d3H59dupRo=tzrksq5}~Y$@1@CB z)=T{OG^lJk3Wg3+gad`p1NdoQqhmm^`gjN}INu<3R+H|) zq?c?kpAvv+2sjFjpf@cHsMQdAd$udC0Nx&;c_9Y?1k^AbI|>RW)}7&r$0L9PzK`H+_dH#lUUb*fMpWQa%Q z2d>7Ya;1*ix|YeXZv^Es- zc=K-uo8N5y!XTHzxHLDJ+CC}ZVqqC4QM$>d+Ja2 ztAYpPIRp=Eycka^Pf>5p*B0Kn2WfcWdcLDB{y26$trdZde5Q2`=>5~$eJT|(NsC6r z^?F6~o*s?Y(7Pp7BXbhl;Y3I%FohX^bq)@QNJSRqOA~YcX+Ul>Z?XYl8Eg*%uWeEF z(ZcR6xCQ~McFWLX$r6Y$?Z6#f_c>-H4qK<)Ew3od`M~V+huvZb-RJZ(;4}QHoh2f~ zH9a6%L4X?z2#2{^4P4&=G;Rq4vl|O?ZB~Pqf=f1UrLt)o)7-f#5$kveig5f_<-p10^r|bv20!rFuzP;Pk z5%_Ij1|Y6iCa{_C8_6vEntLJDO6OQBlJNDZJ3c&u-qOjXgv+Bc+IsA8J0frg-KUJC zZ{MSkd#e`_`0VD~;SlM#l*9CJZHeJc$e5^asgMp)gQLkXXUDZJk& zKFw=YsvI)w^f8I#q0dOB^*Y8YbPATB@iSg2NQ4a>7Hh0n%IY+ehS%En=BU3J*{D3A zPutnt2nb5z+NuQmccG;l_XVZBQGOod75wy}RmL{{pB6x;#qD&rZTohY=!=icSeZ;i zsSaVuml6X<6)V!TSCtKvfk_6V^OUe~tBwaYh7L)RRsOiW@Q6QZmb-uTs;Vbl!HY)k zq)(324$ApZ7gri+7+$72fo9+{1-gv z5S`=-Is76oYzUwn*Fi=F(g1%(mtroGxs~~MJ}NpXt^qs$UB~B>lv5%gK|rojm&8#K z-ET>^z?;Sg&S2TY9LFh8-Uog##|DL!sT3|EVZ>J8*N!8F@We(3x#!mo6LZx{|75Ct znm`1Y-93iIT9xp36IF~$-+J2pHqZV#XlGCwD8HWF%S|dH6YathEEcRFKyIi)ROhKa8$SFbZ!VvKqjB-8rH5nbttMNtcR!d zW+J^NA2oG0fS-@|dIKjtx0}s)POMM+qp2Vq&8;EH8gBLa^?FZv!7F#m!P(%qJw}f+ zoF!3Lghnr<*B_E@C@)(6*uz^boh5knLZ=AKeBtG@{kCsOgli4|X$UST|5cm9=Fnd- zrF?>@%7aNSl#9I3W4I8`DcJi%rnw6&q#~|-gjs-EdGDt$$uwOEhz$@On=)W(lxkWG zB!fFP^NLfvuV5HA^}`_7j4?a7Aahm(_dvi<40n{c8f?DBCq%(*(ToM0@ z${k1hQHM6B5Vut_ke@<`4&|SwapM;g@HQ#-UD36XTXRb~#^ zZ@}HatCB;tpv0=MQrK1!GZ~TPkXz=poJI5&1wWsXAnViQll6|J6E;%xSdOm9sD6DQ zSH$jLN$eu(VQ5c5ky__9hG2%NnueeA1y#4?K@DhqJe!Q2j3gF5-)A!W+{nH}(#orq z`lD>F>q~n^k3y5W+pjbDbXK_0pw$XQTzFZYWKc@X8cMn*QT>e>*{j^fPoN16#7cOi zOY&f>T&g8ngQ94LFUefp|57d-BF+I_I=~mt%riq*9d=LyyY5?QZ9T!5p=@mCUq0Or zGYD=kAHnJmW55Xm2)~<1`YN7)Jx8$B-U|#z&wv?{@$K6oTEgi%8(0ns4f{$VjfKom zE3@k6Y$E_LHVU`F+1`KMp#bhD|AW++ti$lq&Ssgs#D&gm^w6rLC(GUeW>X@przmKHBv(4aIs8;@t!x?Q01xS^L$L)eJ5D* z*1DrgtR!*=Oo(aN);`9WsX=OkRatag=0+K_rr0b$Y@-=E2zDg6Z(?Jwtb(ntSgmT> z+QZ#B&1{nI%F6{z_-y=odM+Eqx{1i|?8Rr8;eJcm@QX*?+_CZusIFg){L%c_awIy& z+8xG(!-EJB(>{ITe?oP%waox2Q!wAmoWH>wLm4)Yfdda0f~6r{GMFhcI3CC04nOks zQ(*HDdu;}N$nuurXapkjDM0!GY7|e;<&%dsE}T2%n2x`lKagG*rnZ||6nu`MRl?E?3FZFYuU!$`eie(~n_{a*!A z)`J|kWcc1NR?w}m?J*)0s!G4~oTtN49NDSu8r?ACLtRFYW543ZQVEicG(}so(p$`_ z`6gMUM4_1wYu~n-YlX{P|3PPGZ0V;K6tHv8g_j@^$d?sv@=2|$$Xy#WnBq6J#nEBC z9?DX8u2?W{j7nI&DMzZ3CoPcNbok(yF^0PYZHhSRY@vr(CIbJ;4a1PZx!~CGHHnZf zh&y(GAQj}r6i4Hwoa13?J0QO&%7WU%J32a=;Msot7Xyjuum{X%>tGo*>jX$kf@&VC zIN{(%%Go+Bj-blF5YTse{m}ph{e#htz=qE+sUeTBxgjZwfxp7x$E`Xd?Eiv2C}&5U zvlK`7KVDOEWzGs&)ZCg@RPxh!nGPt__gt-nk5xD-3hybrOV_1m+&9-+X}x<#*PIos zrsv<>07oH@crK#3#^Mr@$g;av*#1j*Y=jPbN3uY1UsS!RTxwRJ_Fk6DG_aI&cT%U! z<(<=8XBLZou{w40Qbgw{YSIGE6MZ6aCy9IE4Y)o@OLy)Zis*%-lCO#=M=E+HNs_vm z>gllRtnT2mSJ3&JkhJ>?+2X{n@IxZAcD*|21Ye9o7AJDz!Fisfove`?%86?#lZyBfo;CwoSc3Ne8(;f z6E`K1CSlX6jL~`n^X@-5`V6D@rF6C*$}D>Z^NV}2J|B4{KoNk4^uRc$0{AjO{nP?n zP_k*x8F{yJkOiFhAxl`@elY@e+d|?wyD9orfPQMT2@L;->*LfxNSgD#Vg@BO3D`of zrSAX_${Kibg=&U|hEqH+d+!f=g7}C5ASQ(cJLo&?fdCxadYYgt{nX*tXZPHj(D09R zWNfo}!x)S?4+-TA^Hlv>P(9Iqbo2{Tss~uh%F^=Bz8!C=;*3M-qjg75Yvf1l3?idj zgt~17@^X`PlsTD~u2k4Vom7cd359D!Vyfbfj$ml*mz~3q%UfT}?I@6c-`q9S3^~yy z|58>P?Um2wj%?DH3a6Pzl{sHxF-rg0K2rVk%Zj)qj&8N4{B(^TTpzLZ1X85iM~QE} zST@6z>qA%Yyl{nDA$m4FCnd6kJFw8J=@+L6YB)@aWc)0z-^Co9+M9*o_fI+nF;pHy z6~rfhnt+|Q=Nt{UGnqhT(C(i{DhaB}?#ZRl?^6;H*L<9LkQzf1$-PoW(lb zJ)3GEp~t5pz?|ZwI>Tgj^dV475rzPsrgll7bCJB;pf1xwe+9>e)4vq4)m`-;p(cir z;kMLsAbd|LrO)G-a{dk%e81MbSk;1z4a(At8J(4Jcp^=)f%!EDGLImuts1s<1^Ko- z_mH{Am18@P**Y>IEx^jT`|v&j430>h)Bu2{@Ap&20@_4&>ub!ZgED=OZ?;}IV|?yhJkS0h+! z_8k;4%CV7owCG!+P#MOgYc>H!^iO|Jjf=3N?@J}36~2u1!&oM8_mhj%`tdHm@;dI)9aJDv zrjc1;T5*^|*bn!EH@YpRo?%Kgn`vFAl;jc?=QJ=YrC#pp-u`p_pU+-6Bfmpj_@P3> za_6*BDUy{}=qjyv1NVyF&ucn+B@e3V;iyIU)`c0l1K+7ER7bnrIEYuH$G+&7^4OpZ zugp@Rc!NR&nseq*d--CBLYMgud=1&;lhQ{h=t~2DquY?tey8{mOn>81$vj}2VZy{R zpvmD-mW}8;btD^+|299E%Js2O(-8v1|53404LyK2{O_EzsUHp`tQP>ogE+fnCcmYE zB3zKmvWr&A$rkw?=4%FITjYf3L>+ZMMN4tJmLM6bOpW6Y&O95AT*&GB{))`kZ#t-w zUW4LBsgoNyl$fY|*A)~sS<~3nK8EmO48(L+a{TCElrrlEVPtWrG ztnqahW$5%QuL8@;f~|VWJxJBnG_E7p)J*!SRSY<|LW3on^FzTH$KJ!bIF8x3o6B++sBklB}WswFC-=S^9B zOy!`cb^1-yrhTa0=Jp+c9)x@ADjf~hVkue@4ZJh6OombYfo~U|oD}aTZ7CR*tvPzy zVw%sDE?+@HKL|y#7uId+fGS^nX+{+bBDaNxMYXl@bvob@334DvkmnGTaW2y!);LHD zXc>81j{XEXI}0!#|2usjkV0w;AVT#BJPkm3e!=_j{V&kp4V`=7CxLwqK5PLXL2v?+ z1U3y2yA!za;12q)Sq?&b`|fwM1abJ^1l;z5XafC{`Za_+3mnZSAOSy~d6Yt+<6mm*w_R;YKe}h-{ zC8qbO+0DE|F$_($%h_j=*<&YT%O!BuVszn522DILIL5V};%T_O^xNg~5~^RBG0Ixh zsRTezV;N5|R7dUP=R20Cs{M)c&mTJC#Y9y8_dhKl?MlM3>Zcv2fmIoyeFTh8?iJtg z5}U19pzBvT0;HgPmkV>2`d70pF6;rj2V`3^zhxyTOkP=aS>9(p;8+rbLv25mvNyz}GPnM@tC`d;_VLm*bxsQ|Sl};o-*kr+Pp5W!jc7 zzl2D_7jPPYFbU9a$AOl{5BRDiFSmp8jEz`GsK5w2t@ghz4}wJiAA};T{m+<6IXnT6 z+awSr9^!o#^s6s7HF2peUcTuAn_{j2kaH$zbOOA+l4KC)^6(atAylz|i^S{`@C0C8fXny;z;)*ESl9wZ5Vh)leVxia-HcI54@jcnVcX)c2 z`|_@tfBR8tl9oZ5xL3>ODu^@}9Dm?BkJulRLuOqLiy!T(sCr~GtA=O{@l2UoXH)j! zf7xWjCJeRe9@u;SRuE;Gkt-8>j`*C?*g=3MLy1GwusVZsC2#U7vIb{Oqhear?k(=! zWL%K@T5$fbE4BiP?^mCJmSjn31lkNs>ET2Hs|!0BSh~aJuYU16HWX;P){X(;8-lxt zoEtP?h5HWY&D=;$nQqU3t|pLEsBt9wt^Gz=TUui7Ax z>yrG~yb$n`e#MFeIL`diQX7zbdk6A!ARjLCvyXGZpnlo5+z>QjzE*sG0#SrJRB&=8 z=4DC~ds~E{axH>8Ce4H#eWe??J92V!JJt5%0HE7C8+7Q)E^`1L2(Uzu+8DVdTf~AU zN0?jN7~AOACKzZGG`hNGmAArt@mS~)e`JonbXrM2Cw=c2UXTe_$5V}d_pYcL>7me4 z54ma2jF{JBfA^oX#bI}qo&^C_LUq@2rHzVk<7)l8&JFQVJ$%Jam(eNNk+sq$#l%I7 z$f$YnQJVNaCAfISKGI5*Lp%Sfr%-o@(RAq2biOqSbxoOw3S;UzT)0D5~7p@-PI0R1A3Sk3VHgtE1%aTD&hh8*9xwB zyl-v2d92A4+3B~yHn}-o02aoCyfRpTojoxG7_C>ptIv8h6LJO~>3={q@_F5M0?BFz zJgjU?fD;lNtsbCnhBJpOCqLZ3kHP2x!vS4JpkBPl zWzY;=gOb$&L&uPYqqvWp_tz6#eGNJHY{ypN5EDgQAjV%;qNtAGPoup(1XZgV>Xef{ zV%ufnaUz%6BoucwjdZzXA1OapTnkk&F@B+M7Q^y>VE?6(6fL2%7QP(YE1&s5ySyWw z69_veZ^mv){VGC`U07u}K<&4~w>DT5>!gvGp+s}fc$<}0k!>^@cX?4dvC`;QbJa#mN zD%cG)ef@=M$g#AMy^72fcCndxrX`(>XbNWp_vPsd!W*%rDvjex$iC!bF>+I-G#^=9 zD5fW*1r(|rYQ*m3M{vk`L!&r!VaM|hE){&1fDxb65>3&Dk{o7{%QiSP>hlNyO))z& z99L|_x=+c9Mw-_+x&6a9H`57r#R@;=e6%gG-)M&+R6B9zUN(C*;1K%5i~ZaCV+La{K_!3`u)U$}eca;4rXFi{vJ*xQPv+TY2;Rib;A? zKpxe&7$%y$G=RAp8~@cIV8{}y3g(=L6#N5;s<=r~!&vMz7&c!CrO;dW7X9-k>bh0) zury{RqjHI~#szP>?sc=}Ib#a#pPjM?ogd>wZsgg1ctk^inWTxBQFE(gh%j)l?LnOIBOxRt3HZPFz`S|GcaT$@99O}&Aq$rTuW{BAU+Ze!^9%vB-h~tn_R$;2q#R}l=Yb$|z9LO0pgH|ipbp)a6 z0)3Ficd^D4Y%013X$RUl@VY3(gY!&j3}&cC#=~kUeL8teQ?0o938gT3^R}#w2ht@Gs)ls!)PxZ< zT|w#H0F`2n8aBPFl>{$xo7?jZIYNg3yjsN`LLn(ahY_S2{*d*so`!78u=!UUdzvYk zzqmP!(d)58lc;~Bl?AD7IV+VLj>4q98M#6&$fKH7;N^E@)>MwA)p8$LQe1#W$qr+a~)q&q?1*kAm zram5NcgYod5rViQWEg^2q-@B$?*C_xCN2D*IXVjs$3WaZE|;DDLVbGUpZ<26jK)Jh|{H1K$yPJCfmQMB*5wLBx}&guPJ@ zOsOp&tlGv@uj)~)0Ls;?3&#pd1ImAKeNh!!X{;<0KUZ@CMFN%JEl)O6-OwhP32)zx#pzV<7mjV`TeVmc}3FOcX+* z$)>eZf*&s5CoC8AqH~b#1&GmWZiClj!8$Em97%<2O*zlceg}oRzeke-;e-Dsu4H|( z+xy3Lg0%bo^~r2KS{n>7`U!ZPN!{Qf>JL~jEBb-e`@*6vsNhIEmM8YTLYjz`Y`YgQ z9jZXg>v0AYP%kvuZI^9;8JPgEtqGg`;M$?it|TJO3W|4Nw?~fw)Ll{XY0DD7hX#?3 z-7iw%VQtv^Z&FdWx+-7dk2sv%+N&z8ioLDd4<^Ra^ftgO*q^cksB{ z>+>xWK1EoP)vt=lA*bQw>Spec#@fl~I#?olIXy}FaJP;wav`EzqFcai*Dh(nQn6fF z`%H6>_FN>fh;~?zMX>pGUj9YTH2ILi-H+^K30{09`_R??t69dvxh9urOOt8JkP`}8 zhcZ1*vL{Ba{T67RQM-lYCZYIU_CU`P4|J^%Eg@TtGCSfF9Mf1#2nI(-A!sRjkd}Qb z#}SSJU1e|-w^4F~e1Ajh>TDw$K}waw>)eF3v&6CG1T+$HRGEU?YSGF4CUx%4C6XHy zStT@xGuG(M4wUD-;X<-mf*IM;(^QLg5)^9$84&9RpJb2`5}OY`Vhv3UE^9*ReuP^2 zP3ORMSW=zP!;oo4Mw4D=of})imup;3nOsZJ+{i$;XEQze4@3Ot9<@oG!H`y|Mupx? zG`V1*`A1zrSw{(1A=8KSNpD&KBB^D{76Ec{t&Y3Agf`MVx|bTAQLTZDMNEd}NnMV* z-@UjKP-_*fQq`Oy6|C?TLZTN_kxq>8(vdx8YzlFdKx6Ur#?8fSk^15 z9xY~}@TP(9WFCic4#urIHR$2Uw7&e+NsNkGrK+H-qxPf0ad0GUlG)Qq-Klx^{~3%Z zP#~r<1a>gJ0avahuf<$9OOpXth6HoL{2wxiEjC$cT02(O32jNKgTqQKA1?%mEwe{p z7tMmgQrjZCy~9s)KZps*S$V@bOJkxqviWjfHDV{x;g!D{;x9(zvfbT^{OTh7wGCna z51-1z?r%BkqN9RW{bg7MU&Iq5LrU=jWhczT-a0o28(l6&K9P5r;{(g!Vfnb zU#1yGr#|@kd#&wz!RR%yFXre-skUgt6F*ztk9}jnv4QaGAU`J1Ikez3${I30erUF- zuhBjV+325R zvO=$_CuuY@mB#w^L_87Mn!Xc=DlQM1OWC|D>Ko0mAhy!MipX7=dWo zj4b!OG(1Zn#T6>h7b6m;Nn4u1p&*ZPq!MnrXFXpc&VDzKFg2%}bnY>}9&@7R!h9~d zsy}ciBFo%=OmJG4cjh>3; z3_1*~lJp7D4Mil|HCQlD{ofxN{INU9A0+z4kr+z!ezWcDNo4#_3kYy!UWvCwN#2my zb!L^C7SiD`N~Cm?U?{Lv;ho|0$Zx3AI-%oJiqdiJZ{Wavp_OUeVM~6JJ|xf&>|05k zk_d9~joi8r&TcsS>ZS2)v|@|sR<{vJ)qgSbM>@I|_EI#;#G3q`@=<`rOo`5lWX!0* zj!6s7WEbAGF+RLjx8q~EVj_bd%oz070hnr0?W|rn-txMoy*V?1i(XJ=XTbz5$UN>rY8S8L~k-xWjog@F* zE;xThnu^WF=B0YOXBp&lME}Ujh zuvSOqjks$f8j9SdVmPU)8I^+)T=Zk{H@;6Lbyx{eh>_nkV^7>rs(wgRn#OL17rB3` zz=UZ`Q%zE`o6!_z&)D)~kfoK^US50Sy`ZT(gK>$l>tU`-$?c-l9Uo)u*Ir_FjE>{3j02=RsV0%sp6fW+5^30}o1vC5TiIkeTP_x;?)>Wqc_g*;$!>)pR-6-tq;0LuGBx^2 zv?^G=`Y@4$L>lccPJ-3kJ%XJUY>+j9pxb%p@3SpwFqD-G#ffWjzM)JIor$W6UTB4BC%hxj~si z5b^){>GlnM?1-rChR%pj=BcEB-shF`nLbL?sQWx`p4(WMcTks=9~DXeC)*YutJiFR7Zqm7|V|Ohg_nw#_|> zp1;x_mEi~K`j!ac174~NK_8`YC3R-@cN$s;AM|u4%_HR8`@=+-PPFn-&2s$fZCg55 zQ*Ep_RHH+w{P8|f$@v(mE+#h9@lHNS<48i}Q%MWt^@;j|in2mFcfscRcolzpVwqL` z@-%Aw`4z)sc)f0$VD3g$Tb0M3Q5?fFQi(H|g$OPAUx1y`RzGfb*U`wRtyI+Z?HTvR z`N$}9gf?heQpQ0o7(Fyk3X_-{KAp@eJGMOI3+{yCX61|Ud4X+CRb8h?YM=Nat!dx# z&9wE`Du#nhg*j=1)xMUeTsA^E6hDv~jbQ1bJsayEXB6O;y*! zU}}M(MD<4tc9m)~*Gk9g{m8w;cgC>X0`5mTdM^y<w}LwRbm~WhhCh_9{zk z2y$hZwXi$k4WDyp(K04ICRH8nM%?CD&zCg+nZ!|{w7-!qn)IGd+Toht`aORRM=Slc zO^&mZBc@-Iz~r9Vr(Zwlo0^poLu}KRl3#V3jOJ}(bR^b3MVq9{RrGqH*_u3#ey#H(l8#FD4PV?v zVzWSm3$AWD{8isCO>8#_E#8+81Ql9~s&oWoBOKLrmW8elYO3lYuH{jy!#u1`TBRn) zsN8h)1`=u<9eEe6ENT7H=Sbq4d;T8j1tR4!WAd8+{0!Gp{45@ZF>+l5)^XD2SgeWE zY>0YiICrYjc5%|_LQcEpbV#w;6Kr|t4E~s4c>TJ1JNK3%MO2!*{MAu>4}oqMT<}GS z++3l~iKYp|wh1co>=kmvuFkfJcHu!u}Xf^J5@Lbu#z^-4`AAZ!5ptKUW}@ z5ZYso@%=^6Yal7KuCrHFjaO;0z@cjm)FPy6Gz4~3uzV_2;g>4yZLwY?jn%8b$AZLCDH29P(ErL#p-(53IRI>NjMQn<_{u6TcC>ngYq5x%G8_fKG&Ty2taU zMZCZ-Gz-*E04+kjL0nA+pmW~5K-Ou2U*g=H=3XBJ#sga7kTqMgmHN$!TuYRwz94!D zuwimAgMjk~X%QfksRK6+vZQN>WNjJPpZp*m4;HX&7UK|c?#kNLBJN&?xxUvt(J;B# zqq^$c*N8r`aiow*zrTyKL>{N~H>1U8m=Kic=q;iDd=>RZ-f3iJ$K@TJ)q6!J_jmo@ zHH+(d){3KMur-FA9PK#l5hoI^Um_i~og@h$#ji70nzm_F&m;6!o zewJw!x|)o?>IwB3)3BSu;b?TV;49{d&CzKrDE~U3cbfINbSZzb~89Dx8$o=KWvUH$#daZlMt17Xz4v^WatypFtS!0esAz~H5~iK90>4te z75{^Q=|kUxh^Tk}+i;VK?`DRzGnctqhqtITn@~sxum6kU!87m~HrCQH?FU$hm)r1O z$JReePb=tKUfNH8_|ybJH{=qeX!x0uPg~D=z&dae-zopAv(?LIuZ6W2h-jJy5*VkI z%^UC$)O9n+qt6$q#SUG){|>G|p|7EifX}V<(m&vLKkiGZ=b2EKz};2HzdL_?rMm=z z!@mHFDK63-+zkwC02ZNN1t0*ob^rxp&J>B8s?_Jcr&`+DczOO;KPmJB%v0Q4TnUf4 z)l2baAOpam)6yNEuR#Y1_uSRt$AQ`rD32vq4NlL`H-VL)JFI{K^Z>X)iCHcay!!_@ z^FUDt6ccP19KxBVM4YYz{L52V!PuMbm@TzTEthZRX#^jFLvZM3v3QJlLij7AZfGh= z4~6a4kl*G#n^}&R(eHjbz(wpMPuhMjr=@Y%l4C|~wJ}kUs)|SdG4J^>Qcbc`W9zIu z7obAQHec~xF36fYvY2s6zAVu2VflWe;zMWJ^6=bg8Z{@`qdz~cR4Bo%Fx&>WS3 z%`IhKoX}W*@QSzPMnL*NxzrU`q!+W?vUa-GC6ZQHil#J2T~1h=n&dvr2-8ouAIuEmPM50-m!0>HvDT z5$g1%U-tdURfmJeir-}R(+TcV0+mdF*P-&RGO344H)%fL?;ETRrpL=ZEx;ASKR7e84nV0;~r0p5Ut%5DMA{ zO=>0g7*MGIs(-3Jqy#9FRs$n@E%PSJ|NbypOYab5Lh`q-F{gSUAp~_LUdcFR{4HRn zgGGNorn~Rvs{NB+L1=3QH4v*9y+%ZJiCCOA!aFjq#`V%bKaihxcjBj+XZH|sOYfzm zLQga>Gq5PW`n<);_b~D4&wUu^6*UX=y;DoV2>$UKYjX7QTw;M%C)E7sBb~ep>52en z98UUOur9fgu$Bk;nPjO=(l3Xyj|n%}oLJ86M!1jTWt0e5Lt@DX?6$57-8*esdWGYq z5$Qd)GB>Ib$??;Cd%@DyP2sx*D2FVOL@UH0f7%U^w7k7jo1!I7nU3)LBXwOH{rPsu z67DNgnkpPMo)+8$7gke-+BH~9Du_~}v&^OUCUzd&68}CbS)F>86QZWV;mZ-qnZtdz zaiFpBdi8%ZbL{T{f~u#k`pMh%SpKt`-dH!E9unsJzww{~)+9#!8~nds{`+GE5S6Zv zoBJ@H9@OMIR>-#3nR4*` z1c=c0R~qJnv3?*Bec_}GX@_2!Cjz&nur4$fgh;8^*h3oMBcSVzg_(WbQwru2V}NS+m%Z%7H&H9ZkOwvHgw>fAV;VuBap}P+V#{^N=uU zr!1`G$8y^qt4JHW%-sqtS3pl%?-mT-6&fp=HIV{g{}y_$9(+YZDDO9FkF=RYueS6p z*!OlYf3u*hpbKYc{TddkmI7P<+imCj@;>{K`S5K(YYDlyJvdflAOB8YU(dnAXc>Gg zq_1kvD2REwS$gVyBVBw}>pJ$G_wvpDOS+K(bG8jRg_e=!#?#IFAoKe1rh~a3%{0y} z=kwp3>>K-~4*%ll+q?HFHj4qbanG zf_SJ%sN!L0O4p;;djQ!Stwa)r-A=PoI;y&^5Od`15v96!)Xt~boR#KB zg~zQxb!)eza#EF}lshWte?~~y+3t8h^OoM4eD|<^%4gRs70PNHRko-);#B!adWWM# z!g*gzp5l}h$IqfXO09K%OOs4AbCc?*;;Ry}JptP|L*3uMDok~aBW#P-0EPG8)Ak)x z+wBFhV8+E7A>#Y&3wpjePgSzHZE%9+h6q31L7wsB;RORfFLm`ZN3 z^OxPN(TMh#=S{!!;J$eF$wxz<)#eSLFVv8-SWo4c#|hqK*j4?<=)FGv2g2CNa)laN zG66^+b~Lqb2{L#uIr6~SuV~Z*VUVt8K1n6dpil_}vJmhoJ*)b0>I2HIPT&dy=Hhj* zvt1;0C=38={uF(4%-e=AYz!MyHQo&gxi6W7payr>PIb#ha3(1~nL&$H*s26ih$hO&b9KZ@+JH*8!B>SxGtwsSTS(5j+UYG%KkPG&$vRfP&>5rj+`KnZz?)*GDxJD9bYQub++4wzFs%lB1J_+A1t~>* zK_8AnDtZd{`Sa%#2!kyhOsAkJ{RsFhcA(q20Y;ms_Je20shMo&0%0awd;k%RuM9-@ zAl57h?klB@2EnT!^)wSwob8_h1NMunBkC;XQVtB+)Z>NA`Iq4iyV#{ta$!q zJ5zw4shr^LtkzeDMp(yea~qXQqYrDPDr~!Npi2YEllWt?iR(4342gYQ{%WX-p#Dd4 zFsVA9;CDJ}9aK8}`{s@C&$jz0squApRy&+FoVh+82|NyP&0YXE4d zgR8DOu^3mj?}cn#Vitxd-_BQYrmn{eOMoT^O2cXgPwaJsHZ%&(5?3ubW5ZoE-mL$k zr8eU?@(=227MYAK;f~kPf-BTomPUck=-G-ddv|%;IcA(otkAktG}4WM-@cbbQ+%Y3 z02I~3m1nVEGFQ6gwRH9H&SheUzg~L_#a<(+jc{Faa*iDm(JrT6 zZ0r1@?dx>t7p11B8TOhdQS%w&-YoH{Y^a#U=2O{9p$@C?_u6tHu*0SluFw)%k;bEn z4|cshvSH%3Fl~1+$X*ObD>wU0LjN+m{cs})J@1Y6kb*#Oo4Gds9Er_7;~GtbJ>)kU z3y+O4-gItJ$+uO{8Qb^ZJpP%tVx2$*_CJRtO{CuqSc})ZZ(LEkH$>pbQ0-egRyPXn z+j8EwAbYON{}dg9CX|HujrisMxXQ>o`A8y898HigL3q3CdEAM6-J(8MJXO9IoQb!F z9%~)7wI9J9Zi0fuduN*7j=9%!@%N|WD!c0bcR(*tG19fV+XeiVOK`XF1RysFNtv}4 zFj*WQAIqkZ-fe@9We!h)+YSsIEgGcAB8v^dhXP!MJnP{M_zSK}mN#-7ZZ@-u+=`N4 zu^>CTLGh^SZ0bMY<>7^kAuzM>B!~%t6#=kl0_ZR}_&iM!*fc4!Uy_?HN=B+P^xbt{ zWinYKY|Yk(h3t;XhOdfvrjOFBqPkJer6ON z(GkoMA1^g%3UxO~8w zEo;mms$~|MO6Fv4bU~Q6H)f%*(2G)Qlp?9??737#*&-Ho!TZy_lNDs9&0(wdx6;%_ zHKMrj9;pla9lUI3E~c~=9ot3KagfXB9U+UYqDDR2KYsfCOwj2cr(X!;o65qIS!5|R zst=+A!cBwjbystd?MsP3ZpREn%c71_k7lj3*2h-w7o&SUi9pmG1!iGg*yiOA9f{!e zA8b)=6R=eoOa`B;x*=y+wYMrdm=H;G$v#k5R#vKF6+Zj~v!#yR>7KQn-DtCVDbjtf zVn#n8cO{1T0tW)blbiCU|CEF4e-ft+J$SFFY5yNnZy8iqu&rI=?i$?P-QAsyI|P^D z4k5U^JHg%E-GjRm2oO9tfgs=FoO|#0@-tPTsI}Mbo;`a$V-y2$B(yo~PXHth$bscI z%~{e0(9-@*C#``aJco83m{MBVi!AM;xq6?Ho3T}tShfbTXE1zBu+lPyx)JwC7@?|0 zO*3VO#eDtQzSH~KjUHT`+!m0<_+Uq_N^r>Z*Y?_azzq;))Upx$QY#vcnO0{eg?FB# zx$^QJQ=A^M1mW+6PyEeDSNPx@p3VUQZJ7Zei}+C6c5bW5snv{OGOePuId3Q-nd;?; z&Krzqt(}4Y?FA?p&e&4Ky{HxYNrbf6PPr_QfUn6j%Nf(NXcTX;89w5CJDpqVgh4 ziywEQ4t`2;gxsC2%*7;-(H4PWQmI=2N~EKPj3gtt{}eS0ZqOV>Ge0(@v5BSZB?)SF z5CgYg-)x-anaUr9yU!!L7V47Q2n2KI#E$EH}TwzI(3J8 zE1#5cH4mkHsAYdT<0wMZSE4KGAFKN`TY*{2di6V?s5%5MI3gM{@^zddI-X5N(?DJI z94UZ_hrMeyDf@%D!wm<-)c8dUC1t^5O|xPBvi#`_zD5ZnMP7?DX>n@y&X68RJ{1A& z%TS^l3FhJCe2yP!`k+*N;??&jUlC3#cRzSerC^y%{e1{CFj!zQEwb$r=;6p zbpo9_ew4+S6=%X(qWEh)iS0QAQHUZpOAkr+52Pt`H42Eb)4GWxhI0(iDBE&pt7+IP z5s&SCVn`I1X>Xjwimga9x$@yr|Eh7WJZpw9Q=1$>gfBQ8e3) z#y(xZ?S;dEdy8xTU|=n;PR5Ye8nt6w*3=|<=kZa=vE?c)bf-&0Vs&@90@9=fpC;>E z{qIv4Z}BS0H;3SJ-0qfwVnS?nQQL<$a=xIpr)p>VZ277zWa$)qo*wK-rkS1*#S~By zsuTi5>AO!rWoq#$3nD#+QkON0Qibhd_9`~&T{y2{!u~3uF*x@i(tpig03zuL_WHH^ z0jY}8mR>(d{%e5vB7Z`U)5DMtJfpA`!=Jz;BatW;GfgHQgN^`-8XdI}c@V3y2=5T+ z2o_Gt1vJt~yJp)#Q>wkZp?V~e7rmwkU9hz^>u~vHKglI~p(iTkGqUY6l4rhUm(DgZ z!d-u*?`Q=?Q<--quC3vqo}u=tx+v$M14eBF3`50Xe5`?(foNj&3!JY2wS)_cBRVBu}xqyxozZOMsv@sp;rp_(R_ znzd$poN%?P80F(Yi*%)zrgszAsMDN6RW;gO`)3S2+%^!Sv0L`x`TPLQwA^3aP!0XX zJIuSQFEl^hsHC8)#hXUh4VgP2Mu1BS`3nf?x+eS4m@P{h`S%%!`TQaq$F`_U1+wGD z2|}<@g~0*jfjo8 zJ{Kdx*tfbel-uB5Y#n0eL}6nSJ(_B$bno&I3GA+WZ&#uO%X{b1mPXi)BFk{VXwLsG zkmC`Bv~gx|aC4%DLHsaoM1pqAQ$(Ftd^#3)%R$H7L8NF{jQOV~7^oI4Urw>4?&>A_ zJ2>~3!c!KQ>FochkTI_@V?%kccDt7Aa40~<^&31!5}Apiu_v`qC%Aqqf?&ua<)wo8 zCRn#u;a}qHE=1jlSt_oRLo_zHYC5)G)JG>aYzY3Rst@m%c~Q z>6*G|M;E0)(eu%}eRA7&J!c~r7?&pzlGQ%+dndrcqJMJ4@OakmB%PYcjTwBa!2+oltyKY zrXEKc*^Yc2Z;H-52&8^J8s6mE4eaVqcV50AO~yz$DAt5BFM<4n3~q4&rsNDha$RWK z;=*OwKr~>uf}mjuCh-v$`S>vh5Uph$9eh9}eq1a!uoKE1DFaawRE*wwV+A*XS#Nj4 z%^%0$BqH>WhKm+$$Gyu1-P*q<+~e+uIcvEC(}ylZ>RUgh_R}g_;a>=?Y1vI%9A{$1 z-+_xJ_Icu=d%kTl6<{gj#6lB7_P-OAB@dKHtFU9PaUMfFmtGJVsoDb%Z-n1pTrp|B zC683|#w$;TpOa4GA~E&#(eH8}_g2s0;u9CpAPdF2WFo*UMV zxnQM|LK~sbOn za5LZ%Ot3?;$o}8hit&G+hNlBxfkTRV%(TQ+Fp;d8~jg=Ag#)S^2gXD=tswX_tg4~yAt!o()fOsUWW z5!3LKRI5)H!g6LK@@S{=G^-#I*?0~uEtu6aF6MM?JfC9=zy4UXEtulN$BDc*A2zML zJ3|=R|4Trtj8Ha}q2-;JD93;sn3DFRM0L?2=5o08cXh_|rDtE+bec=OIyS+sK#EGL z76PjfEJw$(e*kufr|+39KC#@;*zT+8QFc;{tW?_c(Sxbkepudkr-m4#R1LJ|0!{=d z6P-%Kg-`uT9y`(Mr>vzR5V6o6itGp&lB3d9_#>irWJA-8w89v&r`T^m_5pT^ro%s# z`$@Yit&O+w_v**Aqd&WEEcVf9)lEPEN?_+!3f=`l^+HOX8t^c&doVe9c-mT9$-~0q zN6?35eeX|~mzJOm15?pBT%)V8_(`Vrrym z$$X5SlI>wT9Dln;-!(S@PZLFlSF2EX%&5(VZ^j3<6E;_vhC4<>7G)^>iOnH~R2r zRr~%E+A>dNr_YyTluDx?G3l$jTZJO)!qnxIM@TLFa!?UT7E}{>BaRz#HE{ z2kZA|tJ+-$CgX=jIm(x^y+IYt_MJ*BEslQVOk`(B71Okfxmd3KQzJ9lnXv5B7O8bp zv6dOHZbAy)eo+Q9RUEPTHFyObnl;}Hl&g3cw5=$EJr1iXlUs3cvTddC)jO~Y1x+iv z+rt9N7NgJ^zt88cR0dMkyFfZq1xA@C?{K1p%&6B`F_8uRLZLXKkOyU#07ZA0?`HFEfzn8aqs3V?sX`@;Z@_L0&0m` zDE2}%OWuhw#0;iFpwlnCUCN*3PTwN>K)yj`egJ#iKFs91l&LXKy7674_xAz}j{_TX ze0b*px|}p`qL!vlSXxU&Phu-?r1IVutE7j*$IS~~-;H7x85O+8x4X#ikEbib7K3Zf zpyE^f%}oVASmX;1uh6$2)pK*63AP68wP&UIVxRf{4BF!BqAVWWo8Sa26w-J9B~8?+ zD!4bJYN5+|VORpUdqG$n0iWYPrZcf(xinMkZH*DiHEJK#H$5%O?A&gLo@&u z2>hLIwy`i4(vI*pb@;&k|Ea4+yg%aCnbwOz$;!nPPN9DtENK%>8<6`md-&0d6TyFe3 z;C%G1eBk1`B&QE@PH(GfL$(yG$w_$Y_vo^wtJpJ{)l&cltzrbr1I-a zL|MNzE=whO-DmL7SpDagdKi{t0|Fc=8r!bv2saU^)vpR}kD=IT;qFd}3cnTD;z3C_ zMEwm2J;7NuxEYF|T9T^^sm#P^ozCDqn*L4vH1>0pj^QCV5BXxd@S)QOgEzmR7Wwp) zekFl2F3qTip#J`B-G2A$&2Bt?`i@fvmuK~#CZuv{2W?tW*d0|D^2#W@JI*R>}(hw3VckY z>iuBk82j&vvKfhR2-fAZ>x#1{b0?wBVE1VLjn z&i4ZiG4s_Nc{-j*HNAmojg}SjuS(^R|Jw_2RuKG`jZ4yLv9h+BcDCLs`Pkkd?C?bc z+1>rnn*fv~Wtc^)<$jOWW@gh`8J~T62Ghc+@_rhrQu?)bOS-6&se|5z(0ZvL{80y` zi<41BZ&ouNx(a{smuw@dE_yR}&A@@8AMlvw4M+H66pF-FrUTei652h}6x>7Mw%cUs z)2k*@isa3PdI3qdCqYKCmXKB8!+u5K99rf~#(DuCQfP%$x3Y$1m~Y8cGxKi>rmR%- z`bL>7NVYSKE#(%s2}4=AC^-i{59A*6r7_Z7DlfLgSNfCQgP@xoaA0G%Hw89!Pqd!% zb&A5aW8{0p6RlkE=uiKbdn_jaOv=MFZ)*ogPiD>o|6CI@Ue@t-jdCgrRx@7)4BK!x z-il-(k6_wKlmK$Nr5+k>Dx4zq6klbNJj3Rcsh!P3h&FMT`{-{L#^s(4&+QxsWaqZ9 z&QTvV9&+0EDr>?+Y?)K6C5GiCrqgYS`xDJmknwKUH__eJUf!c$xbHiHZ^-@Y2pe|J z#L$h>zv#K@F#zqWse&`&y2!G_hQ^fgmj^1wpH>d^k>Ohngoy{l);+Q|D6}gaBZb#+ zoaThP>4Ug&j4b2gym%|N?kMDdWCq+UUgzbwVBQiM3)BUTH-%_QM~_- zE#o2I+wK`3vVBBt&;zXAQ_L~KmBFgZ-h=*>NVX2`X3;<13U!u1xtSNxG_RFfP`+-2 zxq{8GrkZc1nq7;0HfRTrEy<_wOthdXa3*L~^f@=yUY>q27ge{bbEx!{SVBvssYu=I ztnH?icoHQWb@rxKHj~)y7ju7ouDTS`@Z(`5n{mi{p8vP4v8l#;xcJ*q*WzsG^trmc zFmHl6WzwJ#O7XW;tfGf{^u&JE6m?LWa7*RTcyo>b^@G}C{*8L~WJ~wl!f)NTZ`OxF z3(#q;-S-v34RBS5HQ!tVr+n~Dr`q!((yVvD_}djm{l?;EYYJFTS|Ev z1cH#Aebckxg~$pi!96rJ3U%xcCURH9s@nA3Yva*PO7ApGdviw(sEyD6?=T2d)gt*l zm{!mh2#hQ}CkW^TQPA`_4n0v&qnLsy`FOGK9Jj5}bdAv39?*z7P+`8A>WRuW?AjD% z;1R$0lE3>Nr=?vxK8D~a-8&nGxVzJ*QYRfsVxAIEwVqC@^JxHBsrNw8cdK2*D`h2ZCT;9#$}tB0HmZJKD{BAG;8zNlP|Be{A`KLSGeu3J_!YULj4qj_6Rw*Hx?N=Tq_ zUQw?%v5UhF9=YyL7=FqGqqw?G*#HHSq1435oh6O#r8e4Jas`++1cgoj83&wg0R7{BOnsdwt87LQ$ahN>eqDH%K!>pLX6- zygaIj)a~EsVj)G1sm;Jw+iCKmaHa^w334(`#}-ub%5UVSj`2#DDc!;G3QWI5e0}$6 z>X_#teL07b-9OPW8q7Oua2IHjIAZ?i0CCduA941 z3`7U9Qs6SC?@}Gg9#{BR{cs-_q9O74G6c2!FYMU1Wk^(}QNojx!EWSKKJeC~U@LZ? zK6lK%iiuI6e_tmrpG_Syl>*n~k!>W)=v-M|0r6(K*h3DIKj11-9%w>BgCI%wG6GfRE=FuSRh(I;* zwHrUA!&pC~4e?leR>JxC7g8Y?^6v$vJjgxCMfN03&(+0DaOr=8;(9-GSzNy*uW&TB zfItz{2jkoI`(^-iHB(DYPud(=!lSwc)N+(c!5)5Ngq(o>pB_vKN$M$Z*K&Fq)QQeY zqMBD~s4Zj2eAgB*f-}P3_hx;`6Z*zm%Ytj$35uIrZ%#wp0_z&?fR!I(9@XS{B>#8L zPp|I9kav};wn@MuB4oC2rG#A43HRdx{hKwN*_kFp(rR-3>CVrZ6$+x+M z%5Dx1qDUh9Um`4ixA3jXplil{ZdH)qI~9TN;~<>eFKg>;!H1#W1)S>em)J{gg7(Fc z*30VJ5?B4oyPbwc-ECTS)lcDbt(!OnN*GgW&e)w`l#zE0yZ6)F(s9exaxW4B0tg< z3|p8d&GBC1g&GS9l>*)JHO2C&t$|$V`k(-cZk=UlYdDUN{s*Zn0r)LR#nk-H4hnFb zBT*AC+4f8n${Jfpe*l{Uxg-rAUui_YAai@QmARvHYb(A}MVFIyMa8A>am6zH(R6Yx zHoybV?Y5BqwQx>n-1}~7_OH3Kov6NH%1>VP4X1>;K=_lyBe76#)7R~QfyxHoC-FLP z&@SBt=GZ`W=G?*xzlWlstE=C;g+`mS<}O^x`u#TkX8DSOvxKjp^OSzFuush{LiRG( z!^EfdaA;#5!UQ$W zjP@**f_|QG@MShw8_Xq2K;{Z$5)r5WegB;*A3mZT9WMH(qBVc3DjV+p|6q6-FX6tI zKrzyOv<+~3HR0h*>hpqMn{i5-xxRPX3C9IrIsJ(?K;uFzk%5d=d!FbRi%Yt}h8&n0 z`Tg133X@hT^GfPR%(WjuzVhdk#9Q|H7*MJ_r9S7~h4HE*owYT6;!#0iC-L?verLty zwgTo@`lugrlm3R4|1!Tf`^qvG_r2PuHpOh5wy_d51Iw+N#WBC@%K&r&Uj=O;Wh3S) zy^9hAgBJRMMP&ZxD-${_K;xGyf1~@_`TMyQcl-rvLetF{VrAV+MIud$rySv!=;zF8 zs+P89zkY}gdldn=%;8cuq|RPmV&RsDpilUk(?0Sv2Ww)5avBuO4)Y$u-k~ORQo!TN zXT0il6$FoBFoKU8Se-2~BuoIvf(8tQ)_)?;?k(7Ii|#ALBB?X1qZPo76;PG@9Ej3r zaLC(QO;>u;Zt4?|gdep2a=SJqD@Q3m;r&^DcvJZOpa)Lx$D(~I+91ZD~#pyF7NI7 zGC~^aQ$+L{)p)HBk`Mg=)iD+b&p?}Fta1b^dUWx*NmS-*JO=<@Li*2v-dQH27rh<~ zz0lkw|pQ?UC5&>vx z;$_X8aRLt>AG7zlxYiGcbNH}FZSq;1D3TDJdK&Q_WG1oHq@78cS~ntJQl(+K#a`xq zTKuryRHUYOEq81m|I6iecx`3Hh@J%E6*yWZ)5Luj^7B!T$AHlHg}8lX)Wo6Js5WEL zF^3M(tE-N7WjZ`e`{`iZfGzk6H3cf_K80DjtX=*?>Sc6Hgo|FZ?oD5Qfo*}2rqqp}}aRk7B#iitiRUQHi2 z-MB{l`i)RB7KL;Q_(uHqC&T~Bq5jkxv1Y8H`p_V~413pA>#OXyK%uc)-0tIVLi%Vg zO1!ps?lYD$M52F|;~?Z(k5^QUv!q%+jW~NlNacJDQ4`jZ-5<%ZSzO9c$x73sK3$jL zk_1UmoM2o}olO54t4M3bu=#XIc^ERWvo0GY?Hl=)C@AhCyA-#!u|h0$KQ$|lxM7jN zpZY1oUs9b(Ar=n}dLCZS=*h&6nbxliGiWGtiF$WTGMwGtP*|tCtrhZ8)R{PZ%?Kb_ z3FK+9RItO=F)(EbRsJ<$S%a(*h)k+2Y%6(TVlb?6K+4gT9txi%YI(^8o!8P{X$A2j z*+mJ1!~AD9{68Nk>-$e5zoGPU^_A+j=;hx>wDK#!wX)}&894>_7DEa|2SM6QP)ib! zSkr2kqUNL56jKB`(kM+MHF)nER7_0@aYb@(D#dMjkA*OF#nhwQdu6IV(OeTCa5c*U;{$ye`>PrXZC?mU4 zf3ia2UuO8C_6oso2E3oA+2GWm%;}lh9Syi#VLL29PncSlqYsTlKixIM7dn}FpFKqF z|DQYAHwXsbVbeE?DZ8JAqSN7)+Il7jl)oJl%`^K>H5Po|vRHEXv>W~gGw6xArTn@+ zkU~JgnPB9|XbeD4hMOmr0p3?F)Y$yOj5m^0$Yg9$x!ZC(`*^*LjqKmeiq($C*IXy$ z7t>7zH7zgD(Q1^=2~%Paat1qit%C0rkpJfq@XPPf$b-R14~_3kTX{%(Xm7NwfH;ya zE104K^DzlGCpGE(l;QV97>z^orv-04u}*>@1Gf^`^i>d~x`--tp{|)$W)?-(bpaUO z46+{LnRwtHqh$f*uN6(Z_2{65F!~k#EvrM>oelwsBSniu(0t?CWu5@Br`$P4gSovh zQi&A8e`a<5^To)h8y7~s?nXOGH#hfS%mT-Fs)iw_k6e5MXb%k+Lp?XB91_=F(LvjwItqULiVXVdfyFS`t1B! zwq^Q@^6ziuk`2}@EL-TQJfX32OQZvk@^``a6Vgq^X-gI5OIm98+diqj3W0hz-0{nk zwF}tu*~6WOE5nz+8!iTwo=6W>Vq)N4X0Z}REp!%JV`9oxsOP|Gb zoF@F_%lbaku?b@iXXi1VY(>8qVoOH(Q5;!2qePi?4Pp)<2Dxodd4cb&umZPAjxeky z(dhQC)*FmM9bq{hUb?=Q*dz;Xu*t5fr4n;0<-@3ULD=GMD}+&y!4A7tYMEn-ex8w^ zjQyu+hmlSPKZ5KuR=dWqqFm_TC0pGtIeOv}%3`lmT6}ScJ`9%Naq87lKkg~h+zJ)# zzIr_)KX-X5Rlrd_Rws}rIKVBdr*mlazJL+tY`NE!>+Xjune#sE_E zHl@=an2P*h3SfBG%Tl>e57+*5tY-rfngr_^b#YG(%}x{U z9a`qQSjBhWMq1eoz6-1xZ*s3BFO(=;Sl!pFb4J9(;=Blt1O0FUQ~N2umiF!-y}&#J ze)O6m8$*nEhEis3-7MV3+_IVnaWR5MO~k30njRNWRFmp96Rz5ST5BISrbh^XNO_A^ zY`51BAV?(BS* zEub|AFp|Ht08tK8+tv**o2m#YCkKd~^??tkTIgZz7XY2yvCOuob;^bsP64JPuYs5U z4NzIqGy(d#V&??sC{|#8pJP_gbsOqq$g)=jEL0r_n3$xd!v_R}@S#rG9U@rXfLhT9 z@MnB@?q~hqlEpuQdXOl*0fLmD4?mQyW;=k&=^2-T)e=BLF5k6<9s29B7gfkRDJ!166B-i5vRKDFL1JR*VAmte@>CFes zvwpZ`c3&?&KbAv)|MvozzEd}+49Q_XJin8Ez(0R*g@vDwDQ=vA31(pORTs$K`CkQ- zsIFke4#TNwwgOg8K;7g7WP{Wqe*9J9*_L#cZRZ1Cjqg6Ebk8le`iv*yD6uJ8e-)oL!^dwu5{+*} z@@J=$8xplJV^|T(A#hkI7uip{YT8f7J%HBmQV+IIn@K#M^P|@Jids}siIkZd=j2&@ z>sU=mI~1ksFq8cS(*+fRjg7tIbTRTXPgeUr7L8oqxs#FxJDuU$8n9niv6)c6}%E9?$Fp_sB_7#tEy6vxTzWr zH5mXDroenGKt-NnNldP2<2!zR0#Y%@7tLd&=-a?kNwGHfk^j?nqRHJe@tch<2aY)7 zzQ}A~MNw2tRUeZq{2&?|Lm;9vdBJ&tDjf}yW<6+7Ti?C~$i9Yzge?OqMHQ)e=~(;^ zuw2rxs3~}Z5591*+gyo7nr@hRBBvhzX3*gMtXx)B){PT>*kYNAF%S%i6S(9(oxqaC zd;PcjPF)b#c?Q5EWy(%?ON6Dz{Qf;)+n18AhZ>N(2gk`J=>YjI^~gZ-5AGnaFS5{a z0f0!dM-<_|CJ4sv%bGmE8w5nMKb(tDSPP!Azw)mDnRJ8$bg^Utjzn3C?MGxK7zhdW z0mN!SDT+)9&Nm%YG9Dk>ZAh&R!^6=gl&q?Dv3}T-^mM1B zau~vIZJhcN!%|Ro6Rl=iMMo(R&E9S z_D71~XQ)rv+JTw-$XPJ$_=Cn1&VjtZ?Afg|(0c?C`kprc1m@baQ($7*3)mXV#$<@x zmw^1TE3gV;;wea!D(CtDQ7a4(9-C=MY69HU2O5}o(e47UTORStnwe4b?1n*y@Wxe) zGXQS)c!1oD2X8r(BlmIv5Vy%4q#gUzThoHD2&1HvLWHZn*N@`c#SrqbiwIpbFCHU% zFgpnXGw=YLn*o;>n3gXAw(Ebu`h5$mOKrd61k~cTgeDV@8K4-q)&M&9B4pA85ZHpp z$6b<>?aMDnVG)+c7y<^Wix3GZFuR|QvWx8!CZ(gu5}!1F>Hw=$0mboR+3cThk6i$9 z6u|4>n_mH2zmg1I;*zq1X?^N0P^O|jSbmQvXhYJL2@d? zPl=NRhp<2IsEGZq4w1%u4B{|SC5?dr02`&uuny8p>t4Ye-{4(gb4>d$LXk->2hz>aN3Uh*hZa+(jJX$`ZF9( zVoM&L`D$2euv!PQ@nK_EZLqmw$qM%BD~_9aQXbS&k`j)=8KA%izt{IqgCA zpVOQw765W5ns>impokYN^w&@!%;Q8cJ^GN}oIu!+(m~(tKLg(zC6yB)rNZ!4_{dtezn(uNj)unVo z6W9hmd^!OPyPFKjojAUuPyG3CCwed;k(e}U>$AZ2V)%1hjP2yw6Re)1x_wB zS*wPThQfIy2&f(TmhP4s zftenap?JZYaf4g=56B}v)`x%_^!y>42a1`Q&?aR@4=13k*aeD*Vv4!^qJev0P+#q5 zwQiFvdH@RfyLD(1;ICt48T^o50&l@0`27L^;Vj$kbf>rvgpfNToxLTG=Dww$ER*br zS&Sg{3ztj)cD|@lir1tmP*X7?MUvG|$s9C24iGarol+D6>V)vAma17`07?UvTRpqE z$CBWo$eZW7p}_Y6`c$-`A8cBB7P09teVk^e!@Bl5mC;?Ro-B0B<%JIqH>U*mAiBW^ z$(acCg{;Q<_7uV~iv|jZ;G6SUm!hh)6*b=qhsmkTVCfhG+rMyUb|ui@xs~pEK4?!y zE@T&DFdXqXXmz#gxT^Zf7zm1!<*DBrOT7*_YRJd$qKh}nA^5bAJ+6G&EQqJxFSV{$ z+!tN3WehNABfmV5gl1|L6NOtuyu!w4NjN z@!MWo%g9?WrsIDFYBNb5S#(l$K%2YZ@`FicIC3ZC{fMWJjGCg7EEmQG6IjxTd*XKZ z#qiq!p(F_q>y(ta&-keOoX3dTCaAOLs>}*CMV{y5Bj!J30UugOSwga`ENNdLxky*s z(vk}IsV9M^?IahdVSb(P8oDOlQTPbtW>X=DHUj(GGIRUSARy`g{DI3om2HtRSS5D{ z-(@aFOa#iB$|cPOv{U$%De6-V%5R|PvV-q>B>d5UK=CIKFs3N@ND37$-udFm9^t$K zF+18mbLEr)z+n&_(&PpnN1l%^Pi`nYLH^nuin1WZKO_9_i>$DwLMpGCS{MqE{E!It zKWnUy#k)B8z%zh+lx`W=X?p+;{sj>6;vBYKO1_b$H=j;o4x#l=OF;Yd?}=yql~i20 z>wo70D81)AF$M*h1p*l1Y3R8|-~_Ps@g(DuIZ&3^X+@4{Q2$m!O)!(`_(2m%Ez5Y8 z@M$yz*~CR2C!c?>)KKHg=s{9?!=zY}N`*UoVT}ySd<)RUu=nA$e9+W-Mu3*vB1KG; z|2r`Ad*UYh}#N&RY@-2;9U!%gh+!Fc( zrXzuyFNG%;q-rzLoj5ne#+4gK5*o7To`*zp{mz1Z?61fFW_6=34CrUhv4Y7vSKl zGK9)^fW|*f!#hPKi=yMX?Y{U6D9%s6zrR?~JE?jU*UVKpsu7NF?hS>PIS*d}UbjP7 zk-r1LAaLYojFPF?MPpJ^<#tjwGxFimGDWgcq@AXi7vX)qLT-5+I^` zC!O`y4b1aJpYG+j&J>7Zu)G0<+8Yo+B&*HtBj~#xB~ULh1GbClbWpMO;>U>&uy;tp z0zpw?sIS>#jJeXV?&7CIs|K#qfT}hBEEr0S2RK43j93G)Qhr-cjQhXQ)dRt>JX~Br z`L00V&|YAtt&IV`$cN?ja^5rxoJ?{*n9~4)#+B~rZr&*Ot?4IB`2hNpr5bk5@c z^rKiVncqAoBo8nPzfN(?7Nc{zpDw-l;`z(rj&bm^3CKWZ;*17O$u0cNKHig}b`x9dy?KAJ=}w9>Y}D^43~SLy3j* zZ0Y5a^u4>gpU=HR=Hfz81#C%a?M_cYZ-=+CM%jh}RVSXbJE)>(NznH}O##K4rKPR4 zc_xpeOs35N1SqbNBZ4#FOBXS34=(_tr{E_0I`76`e%FdkKZOA$1cb1 z)Kuo;&Oc_-e1Z6O-yPS|^rqjB*=56GXlkNE8k}d#9%Vy8^?JykCD0%p%1y#|XV+S+_;@~ohb(Wha zV9HOq>iSDYu=t0uY)#4yyhl69qxx(lC;_D?to-l3S&A>mo7H%E+PO_Ntoi z(N{;j;LT0tSIx_nGeoh-l%CKCG{7_AOmeGM({dz*B#_g{6ozo2UBU^hW_DZPC8IA) zDY08}(y6yEN$XBr&I)gZ<1*#_yxJf6@djTH8Q{;(1MUJDFm@J8z%w|(8c?F$_q+_Y z^Na=E!Q6Gu&U*xnq+X*14mW`JXLuOuh2nV+IQavC^8rLrQ>U%%vK+%MkLjr?H0+%H zmO4MC0CL`6uTxgSt^h;l?a}|8XAZ&Qac}$)U^9{6<2M?>Bd8+nKFxT}nLy=Rx){+x zeU*cB8TvkF*&fCXnH4kx0fKP41WW>)FBAytdxZZ04XAH@5+DO2>Y)d#0}p}YhNREU z&Xy4RN{jcm=!5Lr* zh{k`#Gv@y7JoffmS;$Hl6h3yY_LzJIONW*GWbS>$@ja6c7PtcS@_$PAht~(Q?j7t@ z29)t-BCjW+X#=ajKZg@N0LRPsy0_Ch6SLmC5*BE{4gUe*uXp(Vyi``$DpfiaLu1IG z`ZIgyj#_6{bpu_7@Oq`K7dtoptp!8psh?4luReEgmPT+7-qCA_z@$ZDA3#p!zyHJr z|5p|Bla_%n8`+$^8KD(bl@jtHWoxK7q+4h zT?*V?tgh4H%{BeyDD6o)93|N{*0m&VkosGzyHV;=;u2IWHc}ke6J);mKopdrydOEt z-(nQL3bBC7&fHT{5)0&SkZyYjpBYFyEH`ASdc_sc1vE$= zp@(y8F#KrHGA(3_$4foijM}>vCyy4^r)oD-%Dbs{8Z(Am?dr~V+g#H+C^0N_r4tt);xeGH9kQ@;4ALrn{ ztoIPV%n?_}x<~|Sa`B1=%d)DZ;v;HiA@}ICQkWnV|B4i%2ZNWa@t8z#;+`*R%G`S+CG*hPguBDReETrNClKNFY~y8z^Bw zU;D@ELspaZmmh(bAw%1alN9mXINyyN&$yIl>r4NaK@O8H06A|gn+JgQK+OGuav zWwD@EK-6rRVBwJ702LYaF&}Qd^^>J)r)})h@wjT+qU93t(=YlU%S64Nji41Z1b>ux zq=8!>%rx5g!rHGhk|hXJ+NhP48bkA$iANevOFdR=aEtQ7qVHIe)3P4OC}#ZT>{oD% znQ*ob2+r=Gp8t%wTcSm$W=RG$)2=V;^>}~#V_@g*@fjTk!SJqs?$Kx4p{&W`R_w=* zA9IJcB@m1R24JqRRCP5qaY*sBlM*vTtm2GN+=$lHY#NT^T&Trbp9ZnO_}V*HAgIyP zzCth1ZllpZ=3>b%s;g@T!dnhF6?L>X!)=jmoqK#P%w{hl&&lVotFoIeDBY5;&;8uR z$}PYn!p^yL;)c4@U9qf}td$wGWV>9BOEv^)Y|!wfU%5eY~dJB0&_GM9pdT*iA2{H7FB0e3!gl||t!5>3TwOSs^l zO~v8Jk3g!XrX~xIU;eD@f3K-?a)lon;-T9eI*_!%K<(1xeSb$-z?#5k0ujxjc5d?? z!HT^{7>vMI!F-hgi_wQU-YEb{Wp7uC5;33cYL+SI4>Bt1P+zGRIPX}fN5ISX+nnFs z*RhUJ2asbMAMt*k-s{-(o^uPwZ@1Yb&vW4pYxR2y#?Kfa+Y3<~(c}Ph+Ae?K910vO zuaE!CrPldf*f|Nm6rlRSS>sz%=6uIR85en76ag=VAcy=!5>TPaNT~kN)cgwkb+CT0 z2$09wz-bZT`5w5>z%1hX&@}{fnIP@a5UTngP>=+w@VhBNKtlKb+1!2O#zCQVwy=Q4 z5PgdOdO*R(8j{-xv{CQU!4jVg(Ui%{5svm(gT;AaBnYY3B#awFf33c zpYQJSC=gJta`0py)Vo+v)$}|fxw#N{%7z~buQ-GtVGT+iG)&Ee$cjQ3J&rebAGZk} z;v(jQz1<^dUxv^V&w`MaRHb0Byr58I;e02!R4CjMAU-o38Nlf`&1e3WuE@@Ubh1T4 zP^}Sb!*G$`hm=JvsDTE9YZ8sES@EOM$gKRyQKFeYDgV`Yd=m+skyDy311{9^5U)|t zjhf9MS*xUH%do>E#F6BvO?kz~eI@Tx$uxDHwsopluY;BS=g%IqlP`on9~`O>w_!8n zpkjiLoi-wE%7^YAM|P0Oi4)MC?t7+yJFkdFr|+t1J5n{NHb;kHS+^q|Zws|&|) z_y{vq2b8&tT~Nv!7!fiu^(o5^;OQ%S$|nZ#!Dr~$VP^kiX2CFPIvzL+#DsA!?un~J zJ@@7C{vFO5q`I-UulA)0oq9fiE6F1aIBD9U+_3&)Q{Mg*3JZG0*tpS=2IN1FVPxN;APUvO6O;=T@EK{ zjO9wQopc`r#gjhS8mjdqJtAIc2qc2!A*L~uQrwo5mF;IAuVupK_P+y4eXsK?XX$pu zRn=Jmrv2YOv+J}gE{NK~bQpAAk<500t1Z$QE2+%~57IBnc6D`1S zW5#e4ktbYjqqNOK3|JIJX}XbJMHcL1maL?Sasg0yIxebLoB(c_kB0*B)jB3y1Me&R z^k9={uf0ZKGp-})z)%~Z`}l=P;lh{_}ex$&>mo2BrN>7br<$-Vi~wT(yIp z`9Ff22rNP$-$~CF7kyJy7izsO|F;)#>ccSQZ)9Z+&345{>@K_|$BgTmbQq7L3oLcpT`#T6B&!z)`JAw(lC2Ggc?K3@K-_UfC;|t_v3aDqn&P zf}g%8mX-uheBWkZ<9>?CC>8RE8sy3d-U($@~Pxl@2MZk{SZI<%z?I3#8>ca1{D055*x#&z1Dk(Q8 zYfGzcbF;s7c(%7RaAPe6bryPhHOha+pb{BKwSWU%>FCX76ztCgtf!79mv=@fCXrcE z(iH@~_osH!P@<%B$wFhBg$6T*idrGM*k&|mt2QxS;HD&@P=#gg(}&L)sz*<^TY@gq zs}yFw!`WENNm%ODXw`L&I5R02uro2(%QOsX;a52hmTsqutV}Aqa-A zoH*m$LzY}msyiKrOnp2aaJk}_n2PBZ59ioV-*#GsKJN|RU%q-L8-|N=kGD{R&6zGY6r0=Cf3EQNU zcJAVfOA^w1gC%@hJe8y+)m%&!^Su*K{qG1~*HGcOEJl}tflccb6?ENi1E}AwX#8(z zfLrKU=H9=iqJJc%M8VR)C8RoAU!7#Tyl*Yr(3*KpSU#@$1WO=`DPj#4y6hX@oNn!Z?e^i}gSf*k7?XztgPqs1Hwr$(fWZRx> zn=_N$b1^V?yE5 zYNcB)s}$NcPOr6u85&7=ZqP+=^LLr~Gjm_<*1b?N^_bvW2q85JeN#7Heu5$T=(}Jv zjUJ(C>KzOP7>rH`DPrNQxsi$ap$1RqniY+w>!?0YM!ErbOf@km! z0D%s`lXL8a_9SmD|4>zn8w88jDFzitPeE{2^UEBL^%Pme2hCTH*xv~l|GhRZcz4lL zuUEpR984=hqYA^%`)VA#Kgn=GW+Rat^mh}*7*Ln=?d6H{m+cnM+67n-3~eJy9OTlL zQ(AX|y27NFlWx`6_)HI2>oXKW zbJ;3f!yWZ?pYE4)dA|BI=PbR!AX2PPda9*h=nZ9vyGPs3>3>G+Ps{UJCH>#82hqvB zUqznVge0!vU1OvWQeeTCw`Z_TV56~0ZsD8_XYMqUetTz^mbP|gW~N~Xq{(}^V(xMs z%1kgvG8g!(xD+pj^Z`mCQsC1dDaq%%Im^fKd@5z%3H4b~urYzHYm_JJJ4I(d%r~gO zBS3Tfa)^YF(iFVuGcIp*Q>FYF0gseW8{#SR`@i+?p3+D$-McXi=RtzNEnMjBX%9FB zje32a`!YOhLod9&wvsG14T_zEEvG^zi*ynOmr^TiY=Sr=xiQIMI_R5=2<5*5TF-S{ zzC0zC)-MWsRI^i@ax1+>kI+Edlv*-FHMzOleOo~24f0FrJ?32^8{kAP-W!qeE}Zv+ zRGK++u&LIqnJiev`%ki;}mBoF;w!JX}IWd z>>_+5pxhG|wa)V>m(E2EoP`AR0gv75X)7IPP6kt*nsBiCP$PWtKQ$ z{#K9Ioo>_4PDUFo{-}+#A)2R(Glc~v9<6+Rre*<1GD)oU%|2xdLAlc+5&;&Vq)S0w zTPANYHN*h~5##zkrS3a$3i$|r$c#u<_)cP;Q4bJbBTtdD4g1S@7DqCnb$#So_QXaS zoTv?Y|IRG4UxCD~;s`I1Y>A>}aw$`_$|unmJ90sb^ge;dLb2pLV{rKG66&oM>mn^e zBl~_0m`x{V$GVPA-j3F0!4Btdu&q*v$MG2&6GhkM@q`5TYa_^mDw|_tE)|rUQ9mkF z`nJx&1ePwA2=BYPo+~jg*4q3nsdWtW(DO7x?CMk-GzR99o95<{ucMo)PUe#5tolR= zJeQGWvAm_F?4a<$$`YC|5!m)n5ydxoE=BHWxDH9=6eVp~xW`}ZA}eMRINro;BEGP% zvwm+X%YfFj!zyQ*s1DC2NFtaUk6L<~?NR3o<)UF7@o#c-ti^$=!LXWTeJUnep*A~+K>vNxNk|IAYcC%ak_8rhGlCCLVl~V%Wdd~X3Ia>^I=RP z;CWkBrrYcH{zXmibLhc0sXvEa?^u=Zm?&uLk1uq^(*`znrp(C>w%Xd+dUPpfT{5X9uc<300ZVs~Jh?v@;AYGGA}i|DB1 z;hu3KQ`fAtHkR8W^y=BFowHF`O`1R2gk;F$MVW>s!I5ITP$fu3a-HxLebi%XmXa-K zXu#@ja$*t)qpn+Hl<+K}P;AYMDv346(W*$1M(-ZGfBq|Yzx(^|&(DVLr_`?-foG1r z6CnNY1)mYS^~c&ePuv~WcVS?k=m4-z*(@h>sN$^}Zcu};tRp`*P0CPTyPg(pw_rV1efeY|2W&$L5UHD}Er z<@9y3RNVj%oLclAGUbvIQk391LX|V794&H+x5_dllC)7rKbZBwpt$W9P$EQi71k(j zWUNjH7JPRJ4p8&}5n^&WpwnZdFr{mcMVP^OT7$G?Yi zt%^-T5|W&(ysU!kf`aUvf*c}J=l1nJveN1DI~W3_Ce}&~1};k&$Xwc(xBqjh_h;p1igeds@L3cd!n^A=KrZP4`xgK?|;{h_U4$*zquffu6w z(@k=sf`S4dKq^0dfB*aGj!0CaHnps*?4!Q>=@wwS_<$<+|6IiGVTnD^z<@2^$cux7 zzn`RJTmUO5`5)F8oM!Kz&wugE=*}ntTy@~v%l|0{{r}3OHg>!;#{&VmM;mEO~lss>79ny2U&swA8Eo7&% z#`1TlpA*}vef_G_fG83+BDtnZd*WdZrfU$c*oGqBB1z-Zis#I`=A_Xtva@J;t{U$q4eoKs}1FMi?gL^m-{fb_WMibI)zqEVqBtfys~rFua3nH zUR_9<5<|qu_OVVXd)FTHMf+Bqq$D@UR!)=UP?lM2MoE1ffxL+nsEX{vBcnFeXTP#> z#juy?=%j3n#g(0~!+R(T5$z&bS|O-KGbdR!w7cyZoOsQ1>zAgzK1qHr(RL+2wjy>r zBtHjuiCF2)n94ZRhLN2F$IUjS#dsT{==Aiygmb3d+p|Ar$BUS7`a@Qam;k4u=c&Fxf#5hb1rwLq}dcTbV3nw>n9n$R5U zyx9yU&0EJ)d_4!>4O%}0lIhL>(R${p$`qG{J4SnW8;iwzw(x@U3lc;OqNtj06x4Sw6 z@@FXoWp^ade_fG6h$IrQXW#&_MSL>M&dvrW0T=K2xANuR3dh&yDZ928U_B_z;s zBBqEtPX`|dOwZPReH>+C^IuC61w(M|{&xI*2DwIj5f`9$_XzMn?lv|y)B$JV%TweR zUf|xfgPw#wOF0Hti=0IF%ntCEq=Dz=q<@d4Kk*9*F^P+f{*M;$FDX)RALx`N#>WS) zdeDRdr3gYIDue~^AQ zHf1ikR6-+ESEQvXq~Kg7u)_<33O92x zCU;bZ>c^u5MkqYV>19(DvU;g}(XjL~_O@(;CPiIu|IOdyjcVRE zUbRypcn~*;@>|7uHVr>xZDr#r6g>yejZeX?K-`R-j;m>qs^<(%Ef zpvXjhb9I%gob>~Y4npE7aYv4>zj-`~Zk!Yna>KIfzJ7U3ZDB;Epc3x8yo#jW9hy5b zmDEb!mNxq0B08mbN_nsEo6+q=<-OY@t_`aWySbtBfr>;TAl>glVi5!F^tTTdkQ&kp zanbU~{yFBv*QREDJ}0!o3g;K8!^4t=e6@pf!p)BB+%hmM6ej!tYCKy4)QgM|It!jw zmIOXe8bbh0#iJJqM!us5z>|*^5V{2roqxWbf4oCL`}A={F_;|;FWeI?@>4<_4D1!b zheV#pyBh`2-#5U~L%Pv*T3wTonMn#be>e|VFs7!a{r9SFK+mt(OQg`bX(-a4KjB1; zz%NGBND=05kR7~Hj}QgQ6606SW`mKogM^XTt)#g*lClt|;Hkp9y6no*j zF5?yMJQe&Lq#DH$dT!DdD%oOv@{|~jp&=?g>v@{wK_mrmZsLML*M2h4xJ{1?EtCN- zGPj`8nrt<>LL9#0JeRl&UKu*Ylq&mMN}Xm7l8>;GFAr9o-z*_%J$JQ3EzaP=LHOtV z^ovP%9@LfNaat0uHONbWjasJ-PQ#jrYB& z1C+b(GOD^k)rHkzUVf!ZIDkdMrSHxB{^xy@m%Yi<#%H%tyo0FKG@w_{)ZW6;+y8Po zd_s_wmEDPsC|uthu^ycIh7gW8byysFnpA+2D_Nn`0hxO&U$p_PKH>We*Z~X*xEV?bjXs zox3dm*6BZ@>EV;$69N~nUz|dp#}q2$+8Zv`x7Iqa8ty`zB<36|Skv+x!->fwHe&WL zr18R$iE)=(;nhZ%dqfSr*m^$CpQYe^DwkNGC>47yy^ONoT(vjej&m|d^XM~S?2rYjZ4;{jWLhqi(wlIq}s&iG%B2~uT`f3S-(90 zGmP9}D!cex-}K-BU-)Jv_+8P4$RguLk&}DI0%Utq0_+5=-z>${TSI8Hd6^>Nl_;%tBu!|esAV2pwo?A}2%pLJvS}V2-h29ZQ?E?I zm;8peG_O$G-h`{-&k_jkd0+3QiLfi^a3UvU!R2x{xn)%1o^8*dRHm|{7^v!JFJ0ml z5*x?o^tjOSA5M2SHokqnSnb+`Rc3x4cK?Y-h+xI7z(L5TNj9)IoQYyg zMA~Gbz{nDjm*NHjS06JkQuEn?Pl%$P>=~*GPTjUE(>y>1OZiLNY>YkS-U0^) zA@>Z}g6Qa}e@|@BTFYNQ`AxC}{Gd1HIRce#kW@SerWq{WD18xaoEKWzI3uE3YosBs ztZh+UW(m5ch|4~$l4dP2wyUG9SetYXRcbwpt9vYzw6(A2<)PzazAzMAf@$^Vp4t72 zU9HjD{24GTDe}J}F@Ij*YV`VC?+(X)sGa;x+&fR$c_WB) zNapToxK`JETtw1riAh#G^TWj{A`=GG_pZ(bN7Y&+Tswb2IEb;aVFYR-rm9DI8Hc%4 zap92K;KX>y&B{#7ON!_*c!iSY!CF`Z3Ig7hNJJC(HOEZGXo}MQ0P_n$N42 zQaH~t-0)m4San2n6)@5@%I0r%z3j4XmaC1*51Kbipe#E|Tbz*tp{jMFU=kzTSCrJ6 zbQHC1Bu~=7jj>5P3qE8iqVnGF|NMLg`|0ieUS5849mo6UdCpqvPGNL*)yZ|q!^5F> z`{7Z^fszOXf$J8BmKokK*N-1G-B%hMX#~g|EhYHk5lSA=viRv#-Fjm>@F`!6XFXX1 zarzMNjKykSFsRFItjVCs6LO;U(BhgZSJZ`FEHgj}HY%>mHiwq-^XD+G^^&@X>f@YC zvl=ELR#j4NQRL>B{R|;AC&)_M_Gp-0 zt70TWYLy!888xPIDo0Hg7Ct%)H4liB!VpBsj#TR_jNVMCE&eHa&CGrnbh`W?n+aT!XD% zU$e=nU;U^BMr&JoU3E)_IyLtLaw?R9U~W){`TCLUcA9XOpNlc9prh^r^05r}~*o=4jd;kU3=*?R_0^l(S-%c+L-@&guGNqp(fl@#>~$ z!i4S7JzXTHadu@pQDLu|cwwZgv$mX*waz2V&dx9Fw|{j9L7aVX8*A1!y#|3(!pDqzJ8Z@FWS3VaFxt+EtM`Nm6k&o5&nC@cC>%n@6YuM-E->1|= zTnR0Uc@u?WSsFTRa#+O_om@)-3*3@jI?ry$C*-`|RdpW!ZI_AsKhKBTnr(&SMrX1Q z9~$-TLCjI*rK@EX9IgC|SW<7XgzbgIiY1tHH_R#7l>#;hiHUUI+MkGtc`5>_2~K<~ z))^R&uv5VIV6L{Qq9us_3e;_$8mVTr&C+TmLrU1!MdP*`RH$9% z!@txhKc!Tad0=d~)OXly_4it_u(uPxO$wE&;Nj8h5%}w*M<(A#gIrlzo$6X%n43Um zuiR2aY)!tg7if2k2DzBpzcM2gRc3=>G-!pT<|<{mU->!&mqM$P*xn09Hj_?_mda)h zUMY{;&fe%mG$gdP)0P#lUdT-^o}QI-A#mvJu-U@h!>x<|$;rX5Q>|eROzACCr)0%Q z>;P?0*7ahByr;zmT{WwV?g29=W(wMK3y;6CPD2AOs5s{r>*|)fx@StVT=@OKWlE>* z&-Mu=?(PacK7KYXA=h8Wi*~HtJsq7A+WxhK$@LyK^8O((6bJ9a2LilvPP~g&5`pt; zu(r*qIOsy1=`y-sm~x}b)vWsQ%sE#SV~`ZXK6Tk@%XvdNcmEY_7tmt!*)=LrJre7S z^ay^&r6Gq#f{?9XERj54DE6+EuY${%F-rR;!p;KT{4Rg|BVAxLV)Q?sFFt%p2f9D~ zmLI=8_I(g9ABer`mix}j5TOr)U(dG?08E4_zYfadcKj{5=V z7lMxh^o)DKZQch6^YtTb`UYTvw*Vb?FRSc_aqadq<>u$EMo#d40-rjjBnMSemby$R{P93*-!kap}SB?d=6m`3c2Mc}PoXN|leVN*6XwSf7y_GXArgMh`(n6F3 zG_eI#loNE;adN1%NR7o%pV}GJ-;07fSIO~vq7C9+=LT;V%fod&Jv9MYoHP<`K%W<( z`4`T4Rm##f4GFn%GI9Pi!=vPug+U50a}y}&<1BEI2%5GPy>v1--YPJUkE!$$%4PU_^V7V%~PV?TWlp4M&UGOGB%x^I5X8rr5g4)_)`bHBb#h) zBucyke!N(_`O2y%tpNEehh0U@gbt!qY+411r9h9HLa0L8?S^6I} zbEE&!0+3h-S_1-Mv-88~X1|AT8BBbxZG2h)QprCQR=aPz&~x`m`<~!cyS#e(y2$tpjMUolt5|nm z8Jmo<%dk*&zbkkn!&L}*13jXJQMA1Oy)tDA(0@?dKnQv3qu$6h(chqE$q!(ucs_kX z^(JwBIcf0UJp1srwvL1!gE>FFT_>^$8Gt#u0zctxYPti&IYx4w1NI1msXwHTe<_*0 zP&%k%!ra_2g?j+wE==Dm(d+L(1M#$-#r|trJsmJ~NB7rES!yR!;v@7wGxYFO`)f;Y4G~I=S-8N|+ z$v>Aiq@;t>T1t0=y2rbtq0iLoto}i*haj>9-F}F38)C0ljrgAP&=d|zO!co^PdXpN zB?n#atE#EtX|~LgQ%U`g8cG#btiTZ$2WAPhw~mZ2^R3h7qBFA$nm zJVFIyMh-G7l!_PCu2YBjRLmGpm<5+TyYgni{TUh^F~%HiHXBT;sO6ws<-g?{5Mam6 zo^bnHbhCTh`Rt8dFT-_tnjXdT{O0{~R)3hn8{)_-xFINBK3FLw`GZq82$S}lk3kYLoLfqdvpV6OA?|GBki3W$>Y{Wbb+7rP-S7U*F*1LB11 zE8ia4tXklCoL9T=0pab}hm6)4A^kxhvm(FNuAFfTpiz9Fz(E7N_lxQP-WUDhIsvqx zu|J@`8F{T*iul&n*F*GxD}UgDV1_pUmIU!_gXAVDviE?=Ir!^GBO>_M_MI92p)k61-3@HK;oPQ`yfSeauQ5U`pw8vxqgIl0pF>=dJEfF?*5F5*A&7;YD`_dnvdH&kMXH^O_^PxeEain!55Q(yAI z)`uz2@aFGxN?fUK4Y-o*uJVSOiZW=hg=eQd1T*-3?8Ps*EQKnu3e74>7#6a~SJU)D zwKK`kx8!AgBqsPtf4$Mx<7I58C^RC|$uQ1J|6U2rWihMq=tg7sF%5w=7-}oVMWtRv zZCd=jZMD3IfoccE1qPZxUc~^0_gClc>=9h*J%mH%cz4im0Z|r$@}(+0_ue&giDZk|#5R;>f@4&iigtW(j?!l0x5f1^e@kOSXKUe+w@gyY5b&i&#CpzevUUa2` z=WeQR4}3z*zyH?@1?I}hd@>;E!e|6!Z@BjM_C9=+tD~8Gf#5$uv4E~S{^ef#%YDIP zFKj*Fo;bfvet(V4{RgC=>ow?&H6T6(&* z>_>q)Tq@oWav2%xY(aE5R8A0FG@>5nMbIq5jBTz8ZBAmwpb#+r*hqNQ1g2}v94mE37W#mNe%Bb;zKKq_SfNCtAtZCIsJlNrj=lv?3vPAbAIiVend*Nj_6nt4i29$ zjMvFct*CT{UXeLN>&dOA&0O(3x6&aCKZn;UP9b$kA9t|K3HgZxM~;eUGNtg(ymS~c z7F9|RLmt)K7wq$cY|m)M^xf`#>d|y^Hjcb`Sc3&C6auVcOet2`s<9{1pkMyAxJ$gm z=F_24vhlzTcKTA!;b;9)$=b-_n2S!h6cmvao0e!mt7P&#q{*>r`{pGapXYKkyt@dm z2BrXw*uP*KE9>ZQ%9~{uFFNB3L{gOEK#l1#Pt1@CN_bP`rVk_&}7N!o4g zfd$@OhU_9!LyJ=p(M^8l(%!$_I&s1`WjqwX$QiX}9menq2(C(*HdhWpT0~mOf-@A)QWQ?i)K5zY3ik zHjm47(T^S_fPQzii~O|NfZv5j0R~k-+c;1{8@aOvxnTYfP*76Z{Rt~{EDF$Ep*s*y zQM?H(-(TIHmca)gH2G>pm_hxAA+g$hrXUQ+KZB*-uZd9ezyLJ>vEKhrbf+8m>`aU zZm$d&^*uDN8-rj1xFfy7l&QrOekbU(6(p+FLAZC$!=F;bCZSTNLFG=y#wP9ZW3IoH zQ4KnHySUm<&oX_E%pmKGk;QXee)DtcJu+te2%CAnP~FVsfnAUGj%d18*4-JtJu;#` zEm?}@UW1k?3l3T|rt02pykS1-wdW1ldA&P3_MG1c8ZQaVMW;xd> z_}wJf(#_4s6*#mwa!}Ytn`68yN+d-Um&UAyaWGnGjAs1~ALlM%Gf$UOj>UEyr@Fg6 za#YDmPw4RDOMW2_|BJ(6;97imBLdSb=Sg9>#di;y zEJ%pbFg}s`F$<~09n$}I^v!mgm!bIC8ITM*_ZcPQ!Z=bE-Rr4#0oip_mL-H@O0QSvz!$g#c-dD> zIc1DuZN%cL+uXoL?H*mZkHi$UAH%yxv4A>(!oF^66(=j-h%wk@HN<+)U~ zA`ibrybjvLx52-cLi47kfn!My1V!^E_!;=&sI{m`tB4UUTWjs`}B-cilQ7q(do!P-QkPb3iFu|TA2xL-5bHykD9CX?k_R~-%7?c85_Ex#Tp`FD#Us?Kdv-qh-oeio9K zI}lw~9Y~0oO~sYMGh=gdAB{SZ5*mv1^e-@utaPoIB) zE6YBameg+`wxA(fb$Yq|_gw`2kHunaCZyqzNrOI%Q6TOOY}YFZP&qxwv(y8uyIEab z{aBi0tL(o9gvnzP3tsnWzue~jejVZY29BF;px^G``va2Xs@}T~vH5(f?{CBVOT+uc z?>A(+6ksLNEf6)C2Vn7-9I}tAk(x3DE~tAb)A;aOZ+`PgA8kXXkxyZQ(44@-Vof5C1}RG zi#ZDaXNeLyUHRx1uG6txx-J$`+8$k3%&sW5mgXg8%3;l5AZD;wVn_Vufaa4*c%j6P z9&qD)l3i&hB7TQ*2-??{mi%0&{2tH8H9dpG0V}NKZUly#PQ>?NS6Hw%G@AS!grHNvG&(vx}fnd5(<= zWEn&u+$KHD=pK5*P%(Z>RThcD8ApC$i@E0!lRJ;2{s!S_8zpUoQkJc9N?Ri#cyi&Z zcJ+O2x(=_b*a~}Z5qPtwQMLs(t_g~t;rzw2fP?s~ zphH%irZuj1`(~@P>DfFdDPJj@5X3ERBsTL-eV&i)k(l}OSBasfJZ2K`vi>C&=Fc%6 zJ;WQa-L4vN0yfVVNf=r;V-B!6#*-9=R(#Nha4(w{;Go8t;j2Ld=S4Pxu9 zEqZ^hkWK%MC12uw_kC#ps3Y$-53Dx)q@&=p%@J<{N>UBI8yT2pxbUiUJ&GYBcT-#Y zQb`z%x702cv(WH&4~oD4?qpMeqXBwqA0>FLWj?-%T#u-R-2jwhNG|sWQfv8YHfbIg zVNsxnQOkan_o!lU(}TjBDKD4Pn?qfR6m09A>vA%G3W&;V2oP;DCkE)7Eg`2^?j3=d2qf?*87u>m6=j5H80v(9rJ0n{D>Np!z6 zvY5GF-JWN*75Q2*jcdh&JmD!EC#H5{sjiozRk3;h+lF&JjbIpnKuHX(lFju%Ii-sXoY_}ED*dVZ~ z5POLhD7jytr**n)LMg%#QKN6t^oMH_6pf=d@5o^d91@JkgTv_*70Y#(v^_;Bic32< zEsHmIjybP>3)pKf8}?!e#x8I<9G@V)2r%sE!3as+L{M+xb7BrLFjRnsz`uK?C zBGd34$Pm|r=<jJ1;`QI4FrCB5g5m+r9`4l=}hPKw$BgkhGxqC>dqdB z0FsfYxyv69i4W3+!L%9~kzfENTNrMac15YNTjtb z4<6Gkb{j4stC1&}duCQ>$Vt2udss{p&M1yAFv+M{>sdL?6KPY+8E=l$>t%M{H7EFB zVzU^bcaGT$ry-n0LtHiE6N>Tg| zp`%emxEO6pA)YhS1i>K z_2G2UBrhiORZ%eyJd?fm5NYxx{(KXv+OWaR)rW-V)x)*Z{k5mDr?H}vg_d4+u7<1M(__sRa zv!UFWP9Z!kFRC;e%0jXfrkEN$qLHE!CPRx+@OLpwfA|oH0sKD++}l68xtG&sB#x~7 zd#p2$GFQwn9^fuKwIy+xKw)Zbs7a*J=1zBnR42g`f8lDkH+YdCS3ghqsT$O9LTTk7 z*#`b{MBJp@K&m3Y`K+25PR@N!tf!VNtb@a;mCSCV_yX*u%cX=56UR=L_^TQnj7t^+ z_hVHA89iK&`a34DMPoq}&bhv;Yi7XB-qY5`wpmzc2~XIrwx?%lwaeg7xTadFjJC-v z)(L`I13CG|aevHUqkSCpwfNEy{MoabjCDz##6_XBRH#cgIe~+1U5oen#>8bh`C3*r zilz@)P}fc~R$DW5bLNm_t%pNrF+{CAMwv`;MoQ&Gcc>B7@12xtu{Jn6t;&1?^ekQX zQNd47i>uqMRF>b82C9BeH{G$JM`B}3O3t%3-cVgrv7R=ZW~uaBA_Z4^4{rxT@N-PfW*K(oa*xV9-FQiN>}OQ@>A3!Yo-r zV*-_Cdb49;C*jN6aIW{8T;B6^@3`c5CWAE$wY#@R_9UN>LBLVD`5gj^Su6_IKDfFO zz}48eYF9NvabP3kAf^sh%V~!i7igWtN@3ynQt^p)mj*}jAZq?@?Q=L3OPd~YkProd zG`ZnYOcQ05TAfT-+0Vf6H{)WtCYE{+iLuh@kb78B&02(Gszjz6?rT#Bhtwr_6<5lv8*DHQY2@VW z!qPw6vEY~c!;%urg%fG&ZX%9>2uK2u9^y#$$(jQ(H>vajL(%t*g$^hX*gNXke1-m+ z!vqpgj%I$vGrwT8;Me+|HzyG<9&T<X6p|JIBZ@#v{iV-1#n|KyCC!U0=06rj z@vynlheXoFAQ5%fPv%(=b-wD%>^`S1o{2>Z3SC}&cA-6?IXI)gjOOpRoX9Am=K^1< z>fwK-6?_y`Qa3)K*n~;(qq$>ikQu=2gy%GCqwNX9;wMFSnm$Be)gw|9UM?i0%^CC@ z@V5vg&)Mt%JRx7xHf#+BHEU5RjNrg3j(3sl=XIIcocbbyLwtT1>_1D$yb7>*S|@U` zuqOv>g^(}3lSsnkC=e_mMxnsUd59%vB&eD=mWT5-Ot9c0u}W5v`$~=yq5=9_LUHuM z&xz*=NRc%G@h({pyfK6e#FTc;Z4R&GAKWAM!lJk%-5qfWmRzB*pB6g zY16UMXmfCIICvU2>(qk7c?c%a6Rv%W#FPFyPhP*6%}S4FfD!1jO7_DgIYLMGyggID zZsv6H*RLU;lDSGos2YaiCB*JELy)B&Pbh2T#MonwMHFhsd%`@drfM1Tx@m@<*}7yj zo0594b2zKtCkZMlqNUP`7yQxd`HALn$IW@HZ>q8hCyj|V<71DwdTNW^sh2l&rTfT# zEIi`$svydqrg;5qNVOrv zR1=TwNfLWN{Q&VZJ%byzEm{Z-IU~4~!EXh*9a-0MuxbPN?gB*&PrL(ha9%`TGvyLF zNrl8PSVf3=nwr?Yvh=O`zDfT>tu?S;3_m2HC^AUs$c@L+_N1a;kxNYL^ITa=f{m~( z34&e~FrZC&**8?wDI~r}Pl_9Ri%IhHQY)?~%s(0urAtc>sOgD;w6W;-nb6q_X=ugQ zPAUSZ;#tx#A)&I4RVd-pJGnH7#_`qEm@5xL&opegRGo&SeV~Le43YU4oD>rQM_Uun**sN}-ZvR5 za3s)DgKUJn=cLdb7On1L`n2t&B3TdbXvi6*rNo&XBT885vlVfYq{*1=5u<4}LbPNXiG`QudWK~@Ke3Ev`xME|bX zJeFd{Vl_XDj%qM*|3pUb?i-WaWD0#o`O@S0-JILnusp?oZ!8}ekWW`n>CcL4)~}0a z1po-Cq5C}a&%i4n3dL(HDp+aX+mBUvZHU9rtQTy)IpQS5_S-eEE#_r?%!<9Oo464k z>)}w(+6bo~>5N?SKG`uDE~EK6*^el>YCD%d2jo|z!Tr+$gCk9lw-V%x4#KQIc1p)J0AA-SZ3G|av@ zF4nMq*(k(B&@oot^m2E&Q#j!7?>Enec#3s=2%kbGX8UQ^XB5p&$YvC&RrGY>zO7rw zz-X(*+tq2*p!XL^WD|-wS#fo`U!7j~8JaDk>@<`?WS=HuT0I&i^dy~m&W{v7f?&HS zkLYTHqxLn&?5IsAL0e+EPMr=1{R5vQHJ%~5;E|3sp)MQS%4yy-qZl>M+1HZNO5S=3 zNxAC$`c>ouW2qeDaZQ8;jM1cO3Lg%W5(`r&M^9&Kk1nBZes<2yJbYr~(mKt#lmh8! zveqBft6LaOf}|DxIjl10a*N^3Q54Wv1#h-km3jJyYnH=imSWV>WN?0R47zxilC|$j z;+KiMZLvg0SydTnz4RQL(|xT_`W@6KZjIGha6g@DS^nQA;jENw%Z{Eu`me6Bmy!0E z+=j4gQ}Q#^~AX=lg5s5G-)NgNC%y zAWUKOweU!17ANKZ(E`pwDBZfHJx}7=dgc=P9C=fWb#(M~FkAVA4XWfS@J$QTInw$d z{2*0M|4e)h_E4r1?c%g>feEsckj54W8Ua`ECVEEEoeH9%r-~20ARx1ywfvg~UsTLR ze8=V`J3bL9W`a`$^*T=oU1Ca|hNp9%cI>fXH=`pC792<%rM59U;2KlH3lTzjI(}Ru z6f`c%s=&Zygzehbfm9ZIsaIi$nrpaNAuIj?m?$(;w6r z|G$5Em>r_8o$@B)629AR0rjCS{5&c&GLSuWGB1%R zRA}V&iyUU7Los8Ul{cs3;ozHa-%2_=!?W3uTT^ayYZ*x_Lcp7Vpq z!Bv%#2pY650VU?eNf`$bi(dF+Nrg@gUlkJ`EqR4-EOb5S5em<2HNSNID zZ}M<88elj;n{ZI%VB^d{HJnVHRH;Ce<(#7@MDzlhwSa?ad#2tkxFQVR8jT3h`LYoc z>2uI{dUrRZvvH|TuwH*mVv>%Ig$_k8 z#TX~Cp{Fm|hf4mCxB^NgqVg_s2&{+QR!{5G!qb|CuhD4izv7Y0rpvHMTMc%ttpv5O zmGLK7fR!!BQ*rst{;q_DlFl5YPb{T@ssSU`jO?n_AQbHz&%JNUIi4e7m$WJ?)6e>z zdfKz49%98S_fM*IC;5Drg~0dJ0&^_jq+cu_qbP#>5ZT5zE4cfzrdFnjLQ}pVX2L@E z@w2{+g^IZ110DG-w^uP1qF1EREo{VpXNdorX-?>Wp}(SH+Dn#xYO}pe)?eGc$Ke^V zg`ED{WF@HzamtzJ;g6o#4}v^^`%x)xk*fY!o{%Dv`pJ=gcbl;GlfR5!P%UGvb~%#X z^FaAfiygW&cShKas$9C>H-xilu2an?J5h=ueZ8L&S)y~7oSa(f2w)0iR;j0`?2M9y zp1Zb;iPKG*g4TV;G?t(a2V|@ak@;vz*>O28Q7@_>bw7GKQa-3W7t6xn0OaabIO$xm z!fz4L2jd!dS|@iDaF7>s>RlIMUngAY28T+^q#$ir)q+)(KvYz+a4*)1;cMs-`)YO+ zzwlu=a3GM$H-l5G`j!#F6GJ8DJ)`VmejJmzX?5MC5-@l|wrV96aL!d#s)&A(jO#b9 z3PhMySE5K=1Enb`#bF|GrDVk-LD)}9B(C~NNWrLLwgknFj~Yqv*JThfRfUj8=T}x_ zBN8cCz|)HLz7{@dRvThL*&u3b8b*O`+eQW=i$yxKGsD3GKss2{UPGj z&)sDDlER9hBvp^{Rb5ULoW_vHt8K$s%sYzZD5?4Fx`~vCg_ufxuC(j)EF&5ebe4-l zJP!AvWnz9IH3-y)67IwSEm{0t2J+J&5gzsZZ6&Bni0a>(%7X`;G5;4+ zXBAM@y0&e)yIa5sOuD7JCmqt=EuGTc-AH$*lpx(8jUXc3ARwTCz(3|%d++}{@YsVn z7~^@L_r9+yg~pB>Y28I1ImfdOtK>{qZA$7xnS*->P!9+{`*QW!pl|#sCtfe{b{w7c zllEeM zrY?)OCgY1bO(?n7(2kiiS-Rl2$`~;so_A;{31y#k?MO#ZYLP=s>&B|wm{ETrwZ*RB z_M3uJPpC!0J7Wi_Nz^jzm7~IaQa@^>Ho}cU+~{EEyuK%rq1o3rkBjd(H%MNWu;}z9 zd)jNYsWiFnMml_)W%@uycpr)Dv=zaFr@B(4HYDw_C0w=>%{7}U>Kd{d{8N0y8KzfV z-CoPB#n08iNrv~0KI!DAK9+li=qvp7#+ev60!2(lqHGPDA;eI{umdSZ+^Ez!J*_&E z@4`hkH5q8fLOyh2j0&GN)9L8-?j%0TpFN+;u?P}kf=?R}*c<+P>L(}N{Gv&2e1SJ` zi}Z@Nc`5t$#oAwBYxsRckA~YE!)FJ0tBWGog42xPvksJ<6X8=K=^&A~X+A+9rO7h9 ziEFQUs_B!8i&#nbd?;CFhM-w{nk zAc2{QKMF$lZhZ2~+>Ahz!!#_>ton=woKLfw?lwqGAt#ZSCaTaZc+P_SD_Y7o`Port zl0g1gy8lJ!oNBuGW+2v!9Ir?qlV$wHmVsz8qWrJ5nwoxBQ*tEaq|T5;13m+JDQH8b zt$=vSrx+ePm!)3|eMU>yJc8^Oy1Ggzf^(7L%5XO#)IO-n3dAyu}h_o5Bedj}qN0 z62sh$Dh^Qu8<;!8X}f;>#+LQ>kn&VE&vI~9UC3YTuQYp6VEwNCIfXb7CA-3i%1Qz@ zT>0q0?O)re)U&P#PAU9Z$|ue0U!dCNEqtv-$oj(s;~XVjO09aW|82L3Z#@zCn1PlL zU8Ag)(syFABST(Ux%%gqGxVgo*KOg$G{r6YKxN3OapOU|xEv|u_SVJ%0+a((iK<)ZybDMpiVP1iHs2Di z-nFwt(UGt%bQ*iWMOwQ$UjG5^9MZB>&oS!}y`DB|DvkVZxmF$2S~5tP!>*C*a{w;M z4yQccL(gRX#{Jf~r*+g5P3xp+k|Q>ir6aFP<-ySBhjMD4SH~gs&l3sIP$iD0D4p@c zKg$_`xskkb;CO}b^v&OZkR7?KbL{9|^=k=+_iUV>hXlMr-{IZyrqG>DnfRT_Yet3ur}h5 zkp=mX$y}LeF3*>M8p(>CoaVMf5-Kv({l)=6gN96f)#gr=DkYTT%ABXyGW&-y6CV4j zxcWr(zJqI*Q*tl7X4geVm!l@Bt{UE_Ixzr$3rE8O?R6}HZvLHqD7$*Xz%#RbnALe# zGB9t{6%%nyJ%$*=M|PwJaqeGJ8=-VeXOU7ITV{aWAfB-|e!VqITSd|WbOX_~T@qeD zZ{!MS1I~B0F+Mb#2pI{E0zt5aTwb1joX<5N!_nA?GJC}mQWPn7d}@BC$!dm011V3F zMSsD*Sm*j!YUVoQq#EsB1V z68+xUXUh~L36%kQqowF-}`zu z3Msi5!KnMEv}#cgu$+E;1l2I5gXY($9T;_po~-;-$9XAU9Yg(<@F}3; zmGo#!rp02PCT+9gcJ9h-_M8uJy|2;=i$r59oI!_(ZQ@D4oj3g!1CG^gEy@r*vb9u$=~$fUnnIh zt4ICWH1h{9!2Jdi)X&F-&y0pYT!t`RZhj{Kp=&77Yj4l8U0(z!^>XNSeCq{_9!Y=; zrt=waIs}#Ab>u_w5dd2y;%&a?ik?^J$9F%T0eJ8^XOi#qmxj(kV^*mn?<^K6Otf>;wbf$Uu|L+xI6g!&U68GnHcsv&#iw+P~##nW@OR zbAX9c*UQMmutFM4kU}i|DUn8`mk6mc<=J@nFmKf@EvFG#O`sg1glt!lN554^DN;Wf zENT^zV=$1B8)n#5M?A(-bX#n;Y-8I8?75EoU@_kKDJ;F==q<4GQ$d`lp^f&~F0+kY z)+B9@ZWl6QVysRsT1B;xlulp391<6k{&qD^s*{%t4*!Ao-(3J~+>nzlalWZpyo3jq zxo~c0dmd}pg}~W+@-N*niJ46h;bEFz8Td=#Mhp7n6PGSd>()zrc;CvG+D_;vHZV+> z7X%auMyeQ)gunC!v|gt54}=+|g2V#K_E=-{@*NHuO=abOtTr07A->`_$y+ z)+A;}Gcz+2uwH$HhPs{Yps-k=OwX~ie?ja|V5hFkY0N~d?iQ7~fh%CEygH@0Sh$N= zxE`EmZC%m$?c2y1TbQ}7WJ%`uK0G_6v($gMsG7r5j6EJ2{TSIoFlzl?QD8o za>&l6dq?9~WA_w^Zs{ZF7Y9Imq8kxt)WaVBAmCk>1!; zVQNUaTSBauydZU%#$Zb&L*8=PBq`=ml>A7`X0&rI9mG8K6mt#&9L|rzN1OzDYzMlT zcCj(`&$PU>D<~spXfmZZS%H&xv>iU^OMKx%;#x^4bQNd=ZJs2pWR{X$nIbpIQo&tQ z$!1-gW&5p}U{rzAC00<{h!v+aP%8PHs#wO-ll5;t1=^9FqD);|(=+AUyw2?CM_w5m z9E8$nVq#)M{O@1}IN!Ya_~{eIC-{H5{adojYjMniUllmw~18O~lY9$Tr+j29*B^us~6++*I*)9|k(H!N~(_3Bvpg zG7P_azqGqy)!)`hQA4AZSt@njeZ|>qco%1=#Ch8J(#13xr~@>pN2>&(~1S ztBuI1o(u93_Noo?;>7pJTE9E(p4-1CH=i^qC8hQcv*rJtW-54S;_BTmAoanVm!Z>^P?`5y)`e~!h=UL782yL6{f|gt56A?Pr4`> z!L-2YRNkuP)geG{hrg3m73uc$2eJN2=c-9$uhg~~4(=S;h9 zA%qSx7tYqlgK`JmW7tea88MM~!&7q<3i~K6-g)DMcNq4OKWHS z`sXrA?ENUI4Tak{4fMwZ-T)@cr=C7-A3xp!O+y0IIN4IzrBT2&n3PHX>(?)!^l-lb zyuAy*1MZ-lJVixCA6So3Kn&y!7|@1p!!r6u3^F>8g+9zi5F4XNBfUrO+ok;3p9hHK zUURS*7w_gZorxs*|p7bJzH+V)0N&DD9VEkeJ6x@+&BD z_+7LG=!cVD!kvmxze#8s!t)l8@n&D>1E?AGwBbggmG!_%QNj>Oll~-6vu{Y)-i6q%d&ymi|<2S?U0gu_`$fWi|kl&wN z$o3kGpIVE%NNW+`e;TsYoBCc}`{eM|WP(tYS0qPcC!EXmSEs2)GJ*>F04r)T^2<__ zUU*r38G>sZp@Q?ie1`oSHgPGeV{2Y&GZK#72FdSZ^V((_$H9-$f*IX>GGr|W0>oKt zu5pvAMLMpfYt)Ky!ij^Bx6veFq`3ITIVZ(?T8##jrGi&}sf%`8v!4-N>8IM#bdei< zt>^Z6ZdBW_+`Mb)1eZM464G#rBRy%ynQMsb>=k};#~V3u>)+yUB&VAZFbtA<>Kh4{ zu_#;Ocz;O$%sq7@sv+|Ys}lZb{aUf2y(rt0I4>*x|4#r?a5e##=Nk3em6er49PuS6 z@(3Pou0ZQ_K(&M<7FvsPZh+bE8YO!VM?$U*tB*MdbP=0b-rG$$o=l zGYLd&TB0?)8yxUud{)k69JaV#YO@+k87)&jBNFK{A?NNP-iH__A=J{v0eqJU$4~gm zPNrL^2{H3&@Nc9jGc6!eMcGG$i6$erl9ZT%9Ex#8Ei>6&X$r3wRI8_4<&Wrk?d?|^ zA1eMTqf7~9H(4f9a9f`dd2~shc`LCvD5PlZ)L6T87^euA#CVEVL@c@4cuj%gbDgEzeN&XLc8+j)pqbgt)tYZE9yp*@P zXCNIZYNj@`u;6vAjdbfqG97NTP>4s9PB7uyPfaI8(if5`9FaAhhBJPO+k~EkJRVdY zR+C!j^SqpNdb6{Fd>J%}ySjYzMRngVe6MTT z81%LsTdKG_8x4&6|CLXW|J~U=0B-E{Uu}SX0CqDR0VNOs!e*9|*qbnYq!GAsedg>%}VGiA{bUqjk_*)0qT<(8Lo`8z7`@?Z1d@tPZMnL4{ z*Bc0s>cm?Bx;LY?$$N1ZioieHJsH!}(*#UOK3!A8{eq7IJ$>o0j}pPjr5vHijYs?? zVlb~q8DD#1<=@)bFSsqHsbnz|6~laSknLZf_`_X+szeww+JpZy0}HL*BMlH z|0vw{uxzxf&{j3`E5m8cP=V;s5Vb(qO0W53#%t{|LO~qo?IW-XFk!MHL{gk5fvla_MoCA!aeyJRWzv#vXBRYHdSefSG@Y->$s z6=dO~hwogm-NcOW%D(hj2-H+$3p1q-@!@JO5i>_eorg4>)O_d(%BGf3eRgCdnKMpR zgSIKQbCEcCo{42!2ir7Y)eBTuJy=lUf13W4K9MrToCLWK#Ct_IokvpWllJQxsnv=! zG8fyOlE_4FrL>8L$~HwaF}x9J_k%Ii)x-)2#Uu@Wzn5>iq{1CPq8Tp#?Fv6-8x2jO zg#(1k%Jj*_v)n%xCSxALdnCU|Ym5qib41c3RmbAhDdJS=SJp*6YSG}u0zo1=xiM(u z*!{KGe5%gL`?mfVg`Y*>e$}W&Py)25w~HeI^z|~^J`L>CN#+Y{W^#lWQJaZ}H8G0t z8FZizaw<_L7Ru)yr{Sh-G7feX3Fw2uYPpTJ=o|~huj>~tT3<&cg0Z(OK7FK^!sAwD?V8 z0VT!)1q+ zKm6S7W8)-L45@=fUqzzjDff4VOCzH2z(bFiiD~jkFKSGsI)YU3st+t$?{dPQB;Zo2 zYj(^k0KWlTyo2_lKRNSO;uwCeP%`Y#c;t&~g-dflbdhHH#!GF;q~ zegV;ga1o1qDX8eV)bG7ROx4!4IGMCrR?w%Us*>3rLNp%4Y+nC&7l6v;h|0yr@;&PP zn7rSsuB2=3DR+Mk#(Kjng?C|or33oY6V-86(mnCbJ;CEgO)G~D94j2TENXgPH7Rt7 zZ%`BxD&=K5Xds#j_Z98JQO1m?0!7Wrgpr`)nA?1ModrjEF3mv~YEUoQ%>!)pihb%& zm$MN!=C&^?#a%gMdxG2nv^o*DeP{dL%#Va0C;x?3TxqblQoH~I;$Hy1h(!#v60ie~ zq{c=^0X^{6{r$ZndoRJ_2C#y9^>+&y=x!MU55rI?v~CC-`{7^xfmv@2#=yip-{@-n zc0Ots0{8CI)hH(Uo3AI(DHHa?6;OF44;r*t1j^PWg+O~})yUh(>=*x!cc(t=pI^H= zN}cg}95^QPGbH4kN}}-i%#>B>MkS0(%J00tScJo<=-akv=oj-uiI}Fb?Itrytrs3( zVk}1D5gEX)AN-3j|O*Qn{ zn&xPz(&jHB^r44yd|+Acj^kWI)BW#F>fgk{4@F5Rb|B^aebV@9eJpiJ+{eJRtv6J z$szoPN%KtA~6Y{~f9ynVY&)-{iWziJN^zdfL z>U(ZTU??0qDC&8EJ;{dxi5XHW!B(BHA3_ZzNbW|`C|1vh03PuE$W5fXQK z8-0~YA}^1C&R`JqwPB4GB?&ErVPj)|6KeVc^trOk>xc-xQnUN7P1UhuGk@!N_j2L= z*&k3n7Qx14^%#L?q{x`>TTOlmxter{8nRtAO1Kk$WHS@((=@p|ZoS;-5R%cv)vit* zRZEZ`LnM(z3{$pj>Il^)anS<5Lmo|)&Ztw8^D*~fcXv-Q*N`_KEsVJ+LQ3D)GCEUJ z6hW-$r(O({E$*1++)$V;m`NCZ=x=!~I|l330Fo>6jnAb5(b;{bJ3@rHt6Q8CHaAnj z&UbY~UTYIe=(L?jRM@3`Kg?~KM}MI*rvG%GbBRUFFKDbtza95oi+VpR#h#gVSt{qVQ7h;4C5| zo7?b_&N>6DmbAclNc5Ww=*-E?iLa}R2~uyQJ6qEVJ0<%a#|jVVt5`T0{iL~k_se36 z^igB3+7(#EsKY(2&6XI$<;^R%0;EW7f78W-O&|NmxR->)c$&AeXvQ%)F;l9LK=Oq^@AS0! zoA7H72;?rTwMYi@lB??9<4G7Ah4Mcq(%(HlFt^U-#2#?PtCd2D0mfpZ&j|D7!z6QK zc)GaDUtm^w4gy+GRvMBmiz-5xjlg!|2jHjL0I0~PsxF^^g6a#D?)B+VdLY;q6DN@{Wgo=Dz>>l2pr~fb8^BGHz86z9mx$H++Jy3tkLH0nxG$E>x$f(1uz8Mp;c}Y zxV@>`RL-14`4h_=-1DggfuREQjkr=32@^jxT(KyfWG;?P@NGiAkPN8V==;h7PrYfz zaat8-^ix%Rezl;bq?BW{C62PNj`fg&r7h)xoBUtiVk~Yi3397(FZr~K~-b%_qWP6f}heS(@$b`BrB43dO_3kjP93EPkp zp69gcWEJN7{@Xl>HHYGT#MYTXbdls?Czo!))agF?edY;sHgh=*tm z3z_xJjh1+zIG!2Jy-D13g2lxgUTQRobRxwy>Wvg$_y53dxT=INL$JeNA3@O~m+X@{ zHU;+`fY<0klbW(Fw>JYEyQOvi)gr0gTNLo4Gyv!j1GArJUulejq$Yswo7;12lnHc`CB0r3IvRzre}po1blUvR{_We^HGt3caXgTLhWe8tTxcSrFTC}Ge|K7DN3GC7pcaP=OpxZ>T650 ze)os3noRea1`+W75p1!#v=T`&J2b%{ANp^^%84WzqZ^s|aI$tq3L>=26pJV|&F+bj zYQA+&aLOe3A~=ReSliQTPIyu{VmdX1EkTl$)ake>BlT-?@D-I2zsrlUTWQ`AlAES} z^~DXXG;6IHr4F>Zk*N2DQ+_Wb09m}0Y1mC*1iS1(n?|` zNV?2)zQLUwrcI=S$0;sR94yB`V`s#TcwLw!B<(J)St^erwQ@9)zik>W|9iD>8b#?vGDieBa)Ne5AAk>A7_qp$@Gj{WpB?-{lot)r1I{F<&j7kT-zp7yJ`B3> z5QLt2QsTuWLU#dk)gb;^{8tkE49Gqdk;_2_{itCmjity@-7jSI5twd2Wo!UTG_}{D zyn=$~Qn80p=*IkODs-lX0^Om2T?@eB4wyp3DC+V5$tTOnA1DeA{6!Jom_wC??Kx9Q zDoc92zGECQ89lbVK=v@3P@tAt@~Eu9nH=8PNyWiT%|ETIZI>Zkj@zqCTW0|IQ!BQF zN#p0j2i4%=2r7O=Vx`@HXbVZcLv`MArp zdsKRAXa=ImuovU9REN7FVPTJ_^?3C%;`|ydtMhur)M3F3hbMVfrd%-#$A^s!K`9~4 zrKHd;ch0>8WZfG1t;ShMRn5%_@c} z(xo)#WMb=%SXnmeU@Xkafnhw}RwlK~l}*Nq7{24PXJH+m1`$d_X$B)PryoUdLoEW0 z=AB%??+NNWdCSal-$wyHnH&?vTm`ki*2f*f!=?#0ssC=sxsnavUyX>X_KyI@qeoyp zipTcR`Fr=LPmcI?_4V5$z?Bz(K!y}aZoMKg6$G#vNy5Ot@JHY+F#yFKKu4T@%}zRa z=zYpv32|?g>iN0XBXD8+`jYIDK@08gh)&-%AvG7UJYUEH(EBfU?_QApjsr^ary^t# z6piQm!WV)3k}+3dF|n5z)%WIZZr7!+p1`1B7Bx61=rpV6ty^1Y-+8{lP6*gjH|a_6 zs~i_m0I8|hy&o;3t!Bz_ z%nZj+zNga`ccCvat1EKk*oGe|%~Y3ZRjIKhfG==UDBpTdB~##d9vY=vf@H|u#W@#i zGD$RD-OHo$__6SQR7-+Fa%2?bY3*OU?rA!D*3ZT-Sj}W1hvgq7KxWhFi!0Obvx`+0 z)2)vZV$|_^M@E0m#u1Y@-YRXTJBQFBEn0{hz5;DIGl?idcDh z^1T6mM_~U#^gQx(0_cA$_EpYkq$DYIz^5lQ zEArb={w3+-1p9kfpG@|^tGHq4 zf$qY&x!}d^cTD$B4XS8Cbdku|)IxcrE!B!^TDpF_t2N=~l~*5$kU3AL;CccpgN;F6 z7aRDI_$N&|tCgWlBp$f~FCaS$h>fxTj*DQ~?g%|8p_)sW-rklc7l^2^63&UqhlS)L zV_F!9(?mHT#wlW7p{kt2kv4T>EVnqDqv$dziv)!;1p&^gmoS!MEQM^`vJ66()U!lT zT}7;9r!uS_FLj=sr4~MuSQB@mXAYmrL3vN7oUj~fY!*4fp$!qFyVhH14jn%N)1Aw@ zoYtwf%VJc_tSGMF+SkPsR1P^F>Fk$;*4S2plKc4O*%R%G%o}OnR<_vv$QSs=%&p8K zB9u8l9&Ep3NGzC3sg^#ELsze@NE#&&=)UNf=R%zN{mV*h_`D^O`{~=6IBhHSJoV<} zF3V9VWmDnvB6q#-Junv*X6xn{l#4qKQH&8}*6HkXgK?*sQwrv&A|b45i*j!EdP*^G z(sx}hR|XB^y9qKB-7PCBlA;HZU3+uUjQliKH`bvEIIvRt_ltv+iVXH`T766P z-(A29fXV|L2P2!pr**B*0J38Jc{rOMxM>0Qb?{fSfZf;?0ILIUq1$E1T%N3Ka4XC; zZO{uKJ&^AC{!#1)@Im@}81&5GLVDTDFDUpRLU(rzSeOUL0H5n6_BY^j@&YxrLs@^o z<@^IMJzuf=&BqmC0yFYrA+XjHhY#kYfySfVI?z}}Z9n30x>w29Ur1JDdl>6K69m~n zyu^xR=&!*t2}quH!Bzv_A7vFnmn6IGc5i0TG0q*b&8X|7`X$6gmv3Zi8Y6FLjv;BU zMsI`B&sgAymzHx^RnP4>SefRka~(X9%pVdg6J(=v6(q~7zf7o0NsPWq>Bdd>5Qwg03^`_%Hk!VMCDA+wN9ZMb%W}t^9E9Rztn2U!t_bigotBJ33-0eYP2JDzHNUr zX~#(KG4TjYvo)oOD87gAvVW|%jxs0YB2uFGT~R@wUTIdbc;k=0?~P1%njG0Mi9W*` zGw9vIaS@Mf$+wYrS29gB`k%tm)Ops#!~~R6l9Q*Z?gqFw*My+7u#b*w*8pX)r71az zdE&EzMnsfycLr@N0f2*|m-sWe(D@IRGUvNKdGkE*;>(?+~e*@j@xIF!MdHMm> z`E4<%)4u_l|4`*G2YQy*$LCk5!2Gd+X|DV*lYp_H!ttS$Z~oQYoFQR1PwwI@7}D4a z>J*i;TR=;r2@|wpA|=SAk&p8w(Xx^qwKEk)M60J$?cx$MTN+Sz!BL8Tidn|t3@XdU zEfA^Yqt-6?WBzrVHmlBXtq7-*K}*gI=MJI3%mL$4o1fwp=al1-EO#i8fc{em{?fNG zFzuW`nJ9k}^IJ|XB|o0nV9qLpao_Z5YAm)IM}CVuJns)*-3)_=7Z4XHF1<3)!$rAQ zE$~J{VgLU0dQGtjDIaX}MiY;Gcm)~23@c5pr}7sOwLg%K>?-2)OrhFYzgapF)hlwQ zU21`oD?afmx@xy%j@E1DDu?SG)*apwMup(NBByof$VMrXgwdh0Elt0R+EU6bN4PDv z=O<1|h~N4IcBuHqZ5SCotEC7 zpjj&GG7=H$%3!!72jP{Pgw9aw&r3N`^Qf4WQE}mo6Ar?y+qdV33`^|FNGMGnr1QH= z$5m9gs6?>R)C$)mz|gHhul%8-%jKHo zJE#NCrofl})BfjQAAasl2^^QDL9;^69YVsw`Mw^|g+DM72giMW?D-r9_v2xuWAJv( zrtrK1I_B~S3H7+{%5Ete-`42BcDN1W${9je!$#iUy+1!16$vDYJ^z8KhE`Jlg|_Pt zwC)f@Yz6+bFO&N@-S`zxC@Z8De}`gcOuw}7$csCMMVi8!x$aw4yWCi)KH(RQ@&jMc zkkjOlPD6;>IwMjlb?j)9&-8KMIP*{%!rs@)5Rv)=GAd@Qk%?Rief)1OOCL>rX0czw zQ5(<+j*p5YAL*7EHizeEmxc>aLe+eW2r`mq9c?LmNqTNO_9FGDvHYrzx7tLb!qGSI zWBa_XkFqd=eO+`7Sy-!Kv!^+V%yjozP(tRZohWJ`GQPvq&5{+*B8pZ0SK}aN4D>Q87Lws61aT+aoga%KNW%(yrrwF3+6GBxZeg2*WnDp zG(j)GaJ1}T^0*F-Cjqd!3*e67CsY9JlK@37N#XWTawIvLhpXg-C{7ZiE?D>s9?TG`T>rWLtJ-@>3%hJ`iz z*jsp7yMgO8tV$(H8bTWv_(QA`^CM1SBr;B}(J#3rUtw&#rKNT?T&L(oT1t2QgmZl2 z=w`MiVPDA`Hpx0rOkAwT6oZSj`YHZyxWt*u?qWbkdj!XE9)c5R+&kY-YrDfi+sapO z$PV3?Ru*hLZ zJRC|9z17($v3%K7><8BoGDNns78wP_LHIc-?om_&W0JV0sFeyzPwSJ)8c9sVf?shM z8^upz2Tx)xsH7Y!<>d79us0vXKA(AZcbTz&RW9*p`c;Wki zr;GAmsNq>5AovqGR#0W)Vd?@>tKU1Bz|c_AMp2XW(>FwdiOb8&U8>)mz&&zx6VV@U zdmvo&M%Galnm04m1@^m-tgNgFiHUI7=AI%&zT!^0S>=s>%eBzFA#@NHyXf2n&e7RW z{FmP@AXNj_dO80-CZN$*urzG;_&lyCCnUHe13!%lq@>Gj29F!Pau;8_pidA~z3@CN zU!>6E!7Sxl+KW=hPVD@BzY*Kb9Ovr5?~K?>g5_A=Itn4g(pBhSZg#HYLM)CEmgG@Q z=~t0#%F%Wxkek%22F{mTtjn+wAM=_>pw);p3HO386fzhM^ZeRnDOC#M@E;JFY2Reo zlVGFz(VAAQks;Se&&gL~4@@kCc0M1hIT?62Tx@o|GZ8t6LK3`)o6_a9x#P~(wp7WE z6MyHdks3E>sVgSuggYh~HDD@U=qHSKb^XV~(*u6_5|UhVQm_@mbGIE$W5svAAgM#5 zk0b*iSfw+=W1_DPd2u6nOY|GgYC(e&Bm-;L|O_LUl(UA9<0Ly)p+ntb7X8g0Bj zN~z2QW!5Fr6!@p&;fGLfAy(Um-b6t`lpzz7fb+gCfzV7LL$3rbEp_?NxEn3;zA3)q z=OTdBAvHES-PKjH-COlTR^@v*W+H?bv6*lriK1-c_K|Wnf}|^}s&>I8e^r#FZNPeo z-E-Hj)c!VysM<5)jf+MJ_yktM{cp;1+Oa+Bqw5=dMxYr!YmTzM zq?u|>H+`D2aBGhf5R_>jw^7|45S0C&M=}b=pc$YdwayBn+lE44Kmc&g8~Op%s(tHo zlLp*YWg0j`KZRU+7r+n}2te9Jw3gNDCK4%HXtws1y}=0>d}EQsCcZ` z|92qp&I^Ff_yB4crlB}lPIw0w>MwuwD|^f|cTrXB2}ss>x>J^f|MQ57NKK|Q#=E1n zX?f49zi^AFyA|XkcaJRNCD7ci3i$ai&4nJsm4u_{EWgqxmoYapGjZVUdtU#s;daV; zD_ex+r>C33$y^TC6@RAS-z)!(SAGQ68Mjp1m0cJ~*2SD^dw`Rn8L^r4Hw7f*Ltf?j z!oZ*Bev=S|MrNGEc1hEEmTHctA(V<1ObtRAoiW^XSW|RKUw%sY_w=lu;ieyq+di(J zw`-S-tm)s{MtUTUPa~>^ZMRHpj|P{!yy51NqanFKjs!hK^hLCk1UwQ22Hbj*SBwgs ztJE$h%q=4>TfdHl!)c~~J5_?;OsgjCmc*qv2uRh@;?T6XD=LQVqT|EwA><)bFE0=1+e5+1S7VWX8j0cV zLau!ev>cn%uro|!ClDDXDQrBV*FGYI4M$D#>pfpJ>UqQ0(`_*}cqZy) z7#sk>{w_EyWp6|0pInAs-1R|TV>*4D9p3v6^?1zKDjaLhnmy*<+mJ_^s8@l1pptFk zzRL)gfLVdVzd&pUDhG&5I=K~W!tk9*JQO|@5Z8rars)-7%*oGx4;&7>&zi@qHJ*V5 zgWp100m6^a4=R;wj?Xhc{>}gg$?Z&cz@P`u%>^u{Y=Z7=pujIVIk_a@Wy$`28y$)_ z4tDZg0j}?$8;8qw0UjQpss&7nzm=tTc3Z_PdjljNb)4)$3$JbQHbPSVO0*$Xp|!!> zRB7AMSvu6Br?0}mdh5gTB1E3xR?>qR=L1>7MKsvT{3+H$QQafsaAlm}%qT2%KD17rX9>v2HBSzvWVulWN_KuIQ>9>8DFoO^!H7o*7E+uojLzWNP5m}O zVmZp?9bG@v`Gle_nsPhZp`0tvc$*rDv;HCrJ?uvW8POM zjmj|iJbcAad4Vhh`Kk6PZF7qorqw(@*x`zuvW=TI`+~5s3I;E#=0}7NIVYKMbJL-0 zij4eMO9H~O3mjT;vGXBoIcB;`Xhb=@6;bj6XkUDw&@2*?{hJq&(LwW42PsaQCE zpeFk&v|^d#X@KDB1OdzKQEneVaCow^%Ce9-DbRSS{Ol;kfKz=fGqYIVO;0LUGLczT zehDekb})k8e|G`AqOPz5DO4HpL>HKRTqI=yr|oq@l%dCK zCsPul_Q(8V4r5=#0E(w%x{J32jIzx!g2v1@!0mf|ef`;5Pn*-Xy{{z9N3B8!D^Xcbj^yhov(hP_pg`K7o>_PpEmt;`3zXUR+2R7YxfK`>0Fmks?Jt_}@D)uQRXV|vj{G=e;e{q1(Mg^4)iby*Fp8m@8# zWui1M%zT|@B9c_%A|T93PFGDxP%|G9pXZ_rI?9!h*58KDfvf060OJ!DS(KefOowb8 zv0)>tw;B)pdS||VmYz?gAvCYWpB+n758L6(roqIrky-RS)asXl5vRqGqR-_@;F(oQ z$K(gY>rZhHzot%;!Cb9TS;TXNn-|>hHNJD+&sASqbNA=hkHf=eeDO)>B7c+y@iA23 z&pDWfrOVp`*{l!>gST0zg+gYyTZf#`&+|1XPa|^$B)a7q>FAZUg14jfzpo6QY(E3W=*Ys&Xu6j5(T8CcZvxp%;!3X4C+xi8<)n?n)|XWox9ljZor4qUkv^* zI%{?mO2lSd*rFcfEuF*CiLq!jfBO#XiHCFO%LQjECW-NTU_LXZn{`Yc%u_wU^t)=J zL}817A|qT(;pb#H$_l3V2g>%JJI?I-4(*3oJK7!e-&2NZA7`hzgCkNaX}G2(txM95 zx!>20FXv6rEwo?qJV{(TEh2eP^))gCh6AsPYoV0a8D}~~f8+#Td8|N2FNZTYFuw5b z#!t^w0#|1D>2lzIS53cTEOd*zFalWe1#i7@)4>9#rF)4nBBx&H1Pak>TI(LNR-c2L z5*B(}9e$xJE|AI8z>iD43nql%OMm-Go<6eV`^ z6)&wX)aLI*jBrZBt8h*uv&6A9xNI||n6YEDi~>0L$tVeI(!zoQ*rG}n6I+EL?q7-u zu#HPWB_BTNjZ14Jr4zx}7t3cLSjB;Cm@+eqxyB>Pxc!Va6Md7Klii2*hf_zyev>m0bYKQ1b35_K*G zD5fu!493E+FFJJesLKtzzH2A^EodK}agWVnvHx|@i@I8>#uKc_He^x-n>Z6~hbH;0 zh9mQ5!yBjh8qm6}ye_t&f~ImA-mytoF>R7_F>aCd+zI1aLU@Hq%!S|}D3dU?#;o5t zJOlEse%WE-Wk-cQT`9QVQyPgdH}LoRD30Px8GcV40`G^JOugjxV0+gSCWri7v>hvv z|K-JitcMXp!wIYcB|34L=kq7-yrSnNL6nbPPM@}RhL#2_(9R8HP-jQfS~ua}ml#=$ zzi@a(hYEh=c>Cs%ZK+&_Br#V%Swih=Ea@UlZH}gSmrVhs)GG@I$`8vAv^VDeEG(p^gOTO&D_?l z<~v>~rB&7l#(dp+XKo*JVac1h;n{9FS=UH%5k?s)Mkgx1QjP)uR%ehSR?P=r6V^Fu z%k_2#O;1h-uR<^tqeWp$GJrSCRrRFl(ij{3O2NJDTM2Or$L=PBSk3*DXk4 zys?()!21|D>#`=ydw^nmdqKzie<>(J5euH!`{6iYAOjug3D_c}$9=|@A8Qk+Ty)=~ zy?aE=)M}9GCv-lIX4z3>gyPV?wf^YjQ{(uJkwsrI1TAIiEm0)(M4pA%#;$h-4e5+X zDH8%iNAmn1Iu13gZ!Dg)YTPsl?-qX9_RO|s*SGD%qmr2D7)oQ|)EGV3n5KY0ejiM}dN`D)YemJt+gKdi4=HmPb3C+~wBl)yMdSF|REu#*6Yl3Kz2o(_)4hM;I zfAi#CD#RftFfT&z2#_t-5>O-HIza!dK`nk z`f6-%_l6b*OK@l~m$pBjsaYmHaE3?jz}zI;LBiZ~ov5&~iX(1#(9He_H1PPRf6!oY zbjzXliZi1%YUmMe`=Nw54Ld>p1Shfz>6NawMnL<@Y=h%>Wp;#_s?O2`w2o{E;@F1D7Y8iQjPze$Is(Vx<>)<(khesKvx+P>WD0?YW#4=o4iJ1SO zWm8?c1{POCU&SBI7DiqEw|q%B(
+

{copy("生成图像","Generate an illustration")}

+

{copy("让 Agent 准备提示词与参考图,在本机保留生成素材,再添加准确文字与图表。","Have your Agent prepare the prompt and reference. Save the generated source locally, then add exact text and diagrams.")}

+
+ {error ?

{error}

: null} + {busy ?

{copy("正在发送并读取一次生图响应…","Sending and reading one image-generation response…")}

: null} + {!library && !error ?

{copy("正在读取图像…","Loading images…")}

: null} + {library && !current ?

{copy("把需要解释的内容交给 Agent,它会准备可检查的生图草稿。","Tell your Agent what to explain; it can prepare an image intent for review.")}

: null} + {current ?
+

{current.title}

{names[current.status] ?? current.status} · {current.width} × {current.height}px

+ {current.status === "prepared" ? <>

{copy("将提示词与参考图发送至 Ark,生成一张图。预计","Send the prompt and reference to Ark for one image. Estimated")} ¥{current.estimate.cny.toFixed(2)}{copy(";实际账单未知。","; actual invoice unknown.")}

+ : null} + {library!.provider.status !== "ready" ?

{copy("云端媒体扩展未启用,草稿已保留。","Cloud media extension unavailable; the draft is retained.")}

: null} + {["submitting","submission_unknown","damaged"].includes(current.status) ? <>

{copy("该请求不能按云端任务查询或自动重发。可读取本机已保存的响应;若没有响应,须先核实服务端用量。","This request cannot be polled as a cloud task or automatically resubmitted. Read its saved local response; if absent, reconcile provider usage first.")}

+ : null} + {current.error_code && !error ?

{copy("本次操作尚未完成,草稿和原请求状态已保留。","The operation is incomplete; the draft and original request state are retained.")}

: null} + {current.status === "ready" && current.result ? <>{current.title} +
+

{copy("AI 生成的示意素材;完整解码通过,内容含义仍需检查。","AI-generated illustration. Full decode passed; inspect its meaning.")}

: null} +
{copy("提示词、来源与用量","Prompt, sources and usage")}

{current.prompt}

+
    {current.references.map(ref=>
  • {ref.source_ref}
    SHA256 {ref.sha256}
  • )}
+

{current.model} · {copy("请求水印","Watermark requested")}: {current.watermark_requested ? copy("是","Yes") : copy("否","No")}

+

{copy("估价来源","Price source")} · {current.quote.checked_at}

+

{copy("服务报告生成数量","Reported output count")}: {current.result?.usage.generated_images ?? copy("未取得","Unavailable")} · {copy("按用量估价","Usage estimate")}: {current.reported_usage_estimate_cny == null ? "—" : `¥${current.reported_usage_estimate_cny.toFixed(2)}`} · {copy("实际账单未知","Actual invoice unknown")}

+

{copy("图像是机制示意,不是执行轨迹。创意、文字、水印需人工检查,不会自动发布。","This is a mechanism illustration, not an execution trace. Inspect creative quality, text and watermark. Nothing is published automatically.")}

+
: null} +
; +} diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css index 40c74092f6..36e1399f1a 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css @@ -13,7 +13,7 @@ .content-media nav button[aria-pressed=true] {background:var(--pw-hover); border-color:var(--pw-line-strong);} .content-media small {display:block; color:var(--pw-muted); font-size:var(--text-caption); line-height:1.5;} .content-media-result {min-width:0; overflow-wrap:anywhere;} -.content-media-result video {display:block; width:100%; margin:14px 0; border-radius:8px; background:var(--pw-card);} +.content-media-result video, .content-media-result img {display:block; width:100%; margin:14px 0; border-radius:8px; background:var(--pw-card);} .content-media-timeline {list-style:none; padding:0; margin:14px 0; border-top:1px solid var(--pw-line);} .content-media-timeline li {padding:12px 0; border-bottom:1px solid var(--pw-line); font-size:var(--text-body);} .content-media-timeline small {margin-top:4px;} @@ -22,7 +22,7 @@ .content-media details summary {cursor:pointer; color:var(--pw-muted);} .content-media details li {line-height:1.6; margin:6px 0;} .content-media-empty {padding:22px 0;} -.content-media-tabs {display:flex; gap:8px; padding:16px 0; border-bottom:1px solid var(--pw-line);} +.content-media-tabs {display:flex; flex-wrap:wrap; gap:8px; padding:16px 0; border-bottom:1px solid var(--pw-line);} .content-media-tabs button {min-height:44px; padding:8px 12px; font:inherit; color:inherit; border:1px solid transparent; border-radius:6px; background:transparent; cursor:pointer;} .content-media-tabs button[aria-pressed=true] {background:var(--pw-hover); border-color:var(--pw-line-strong);} .content-media-tabs button:focus-visible {outline:2px solid var(--pw-blue); outline-offset:3px;} diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx index c6ef4a8ce9..27a0d4abe3 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx @@ -1,6 +1,7 @@ import {useEffect, useRef, useState} from "react"; import {useWorkspaceI18n} from "./i18n"; import "./content-media-workbench.css"; +import {ContentGeneratedImages} from "./content-generated-images"; import {ContentGeneratedFootage} from "./content-generated-footage"; type Provider = {status: string; enabled: boolean | null; next_action: string | null}; @@ -19,7 +20,7 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { const seconds = (value: number) => `${Number(value.toFixed(2))}s`; const [library, setLibrary] = useState(null), [selectedId, setSelectedId] = useState(""); const [error, setError] = useState(""), [busy, setBusy] = useState(false); - const [view, setView] = useState<"composition" | "footage">("composition"); + const [view, setView] = useState<"composition" | "footage" | "images">("composition"); const pending = useRef(false), generation = useRef(0), readSequence = useRef(0); const selected = library?.compositions.find(item => item.composition_id === selectedId) ?? library?.compositions[0]; async function request(action: string, item?: Composition) { @@ -69,6 +70,7 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { return <>
+
{view === "composition" ?

{copy("制作视频", "Produce a video")}

{copy("让 Agent 准备脚本、来源和时间线,在这里制作并查看作品。", "Have your Agent prepare the story, sources and timeline. Render and review the result here.")}

@@ -95,5 +97,5 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) {
{copy("来源与检查", "Sources and checks")}
    {selected.shots.map((shot, i) =>
  • {shot.title} — {shot.boundary}
    {shot.source_ref}
  • )}

{copy("本机私有作品。编码通过不代表创意质量、理解效果或发布许可;请观看并试听。", "Private local work. Encoding does not establish creative quality, audience understanding or publication approval. Watch and listen before sharing.")}

: null} -
: }; + : view === "footage" ? : }; } diff --git a/loopx/capabilities/content_ops/catalog_entry.py b/loopx/capabilities/content_ops/catalog_entry.py index dc956d9eb7..bc623d1046 100644 --- a/loopx/capabilities/content_ops/catalog_entry.py +++ b/loopx/capabilities/content_ops/catalog_entry.py @@ -22,6 +22,16 @@ ), "entry_command": "loopx content-ops aggregate-packets --format json", "commands": [ + { + "command": "loopx content-ops image prepare --goal-id --plan-json --source-directory --format json", + "purpose": "Prepare one immutable image intent with an optional source hash and a current nominal price estimate; no cloud effect.", + "write_boundary": "Goal-local private intent and immutable source; no external write", + }, + { + "command": "loopx content-ops image submit --goal-id --image-id --expected-revision --format json", + "purpose": "Generate one authorized image through the optional media provider; collect recovers saved response bytes without repeating the paid request.", + "write_boundary": "explicit cloud generation and optional reference upload; image-specific credential; no publishing", + }, { "command": "loopx content-ops generation prepare --goal-id --plan-json --source-directory --format json", "purpose": "Prepare an immutable cloud-video intent with source hashes, model parameters and a current nominal price estimate.", @@ -114,6 +124,11 @@ }, ], "implemented_protocols": [ + { + "schema_version": "content_ops_image_plan_v0", + "module": "loopx.control_plane.capabilities.content_media_image", + "doc": "docs/reference/protocols/content-ops-media-v0.md", + }, { "schema_version": "content_ops_generation_plan_v0", "module": "loopx.capabilities.content_ops.generation", diff --git a/loopx/capabilities/content_ops/cli.py b/loopx/capabilities/content_ops/cli.py index 6645a18ccb..b6439757ee 100644 --- a/loopx/capabilities/content_ops/cli.py +++ b/loopx/capabilities/content_ops/cli.py @@ -565,7 +565,7 @@ def handle_content_ops_command( issue_fix_result = handle_content_ops_issue_fix_command(args) if issue_fix_result is not None: payload, renderer = issue_fix_result - elif args.content_ops_command in {"media", "generation"}: + elif args.content_ops_command in {"media", "generation", "image"}: payload = handle_media_command(args) renderer = lambda value: json.dumps(value, ensure_ascii=False, indent=2) + "\n" elif args.content_ops_command == "reference": diff --git a/loopx/capabilities/content_ops/generation.py b/loopx/capabilities/content_ops/generation.py index 648dc39794..67d81dd955 100644 --- a/loopx/capabilities/content_ops/generation.py +++ b/loopx/capabilities/content_ops/generation.py @@ -8,11 +8,7 @@ import re from uuid import uuid4 -from ...extensions.runtime import ( - default_extension_state_file, - execute_extension_runtime_binding, - resolve_optional_capability_binding, -) +from ...extensions.runtime import execute_extension_runtime_binding from ...file_lock import exclusive_file_lock from .media import MediaWorkspace, PROTOCOL, _owner, _read, _safe_path, _save, _sha, now @@ -23,13 +19,7 @@ def __init__(self, workspace: MediaWorkspace): self.root = _safe_path(workspace.root, "generations") def binding(self): - return resolve_optional_capability_binding( - state_file=default_extension_state_file(self.media.runtime_root), - capability_id="content-ops", - protocol=PROTOCOL, - permission="content_media_generate", - extension_id="loopx-media", - ) + return self.media.binding(permission="content_media_generate") def _bundle(self, ident: str) -> Path: if not isinstance(ident, str) or not re.fullmatch(r"gen_[a-f0-9]{24}", ident): diff --git a/loopx/capabilities/content_ops/images.py b/loopx/capabilities/content_ops/images.py new file mode 100644 index 0000000000..dc780be04b --- /dev/null +++ b/loopx/capabilities/content_ops/images.py @@ -0,0 +1,225 @@ +"""Private image intents; TS owns admission, the optional provider owns effects.""" + +from __future__ import annotations + +from pathlib import Path +import re +from uuid import uuid4 + +from ...extensions.runtime import execute_extension_runtime_binding +from ...file_lock import exclusive_file_lock +from .media import MediaWorkspace, PROTOCOL, _owner, _read, _safe_path, _save, _sha, now + + +class ImageWorkspace: + def __init__(self, media: MediaWorkspace): + self.media = media + self.root = _safe_path(media.root, "images") + + def binding(self): + return self.media.binding(permission="content_media_generate") + + def _bundle(self, ident: str) -> Path: + if not isinstance(ident, str) or not re.fullmatch(r"img_[a-f0-9]{24}", ident): + raise ValueError("Invalid image reference") + return _safe_path(self.root, ident) + + def _record(self, ident: str) -> dict: + return _read(_safe_path(self._bundle(ident), "record.json")) + + def _transition(self, record: dict, action: str, **values) -> dict: + return _owner( + "image_transition", + { + "state": record, + "action": action, + "expected_revision": record["revision"], + "observed_at": now(), + **values, + }, + )["state"] + + def prepare( + self, plan: dict, *, source_directory: Path, image_id: str | None = None + ) -> dict: + checked = _owner("image_plan", {"plan": plan}) + ident = image_id or f"img_{uuid4().hex[:24]}" + bundle = self._bundle(ident) + bundle.mkdir(mode=0o700, parents=True, exist_ok=True) + with exclusive_file_lock( + bundle / "record.json", operation="content-image-prepare" + ): + if (bundle / "record.json").exists(): + if self._record(ident)["plan_digest"] != checked["plan_digest"]: + raise ValueError( + "Image intents are immutable; prepare another for a changed brief" + ) + else: + refs = [ + {**ref, "id": str(i)} + for i, ref in enumerate(checked["plan"]["references"]) + ] + sources = self.media.snapshot_sources( + bundle, refs, source_directory, max_each=4 * 1024 * 1024 + ) + _save( + bundle / "record.json", + { + **checked, + "image_id": ident, + "revision": 1, + "status": "prepared", + "sources": sources, + "result": None, + "error_code": None, + "updated_at": now(), + }, + ) + return self.inspect(ident) + + def inspect(self, ident: str) -> dict: + record = self._record(ident) + result, status = record.get("result"), record["status"] + if result and any( + not _safe_path(self._bundle(ident), f"output/{name}").is_file() + or _sha(_safe_path(self._bundle(ident), f"output/{name}")) != meta["sha256"] + for name, meta in result["files"].items() + ): + status = "damaged" + plan = record["plan"] + return { + "ok": True, + "image_id": ident, + "revision": record["revision"], + "status": status, + **{ + key: plan[key] + for key in ("title", "model", "prompt", "width", "height", "quote") + }, + "references": [ + {k: ref[k] for k in ("sha256", "source_ref", "visibility")} + for ref in plan["references"] + ], + "plan_digest": record["plan_digest"], + "estimate": record["estimate"], + "watermark_requested": plan["watermark"], + "result": result, + "error_code": record.get("error_code"), + "updated_at": record["updated_at"], + "reported_usage_estimate_cny": None + if result is None + else round( + result["usage"]["generated_images"] * plan["quote"]["cny_per_image"], 4 + ), + "provider": self.binding().public_readiness(), + "visibility": "local_private", + "publish_authorized": False, + } + + def list(self) -> dict: + paths = ( + sorted( + self.root.glob("img_*/record.json"), + key=lambda p: p.stat().st_mtime, + reverse=True, + ) + if self.root.exists() + else [] + ) + return { + "ok": True, + "images": [self.inspect(p.parent.name) for p in paths[:100]], + "provider": self.binding().public_readiness(), + } + + def _call(self, record: dict, action: str) -> dict: + binding = self.binding() + if binding.binding is None: + raise ValueError("Enable the optional cloud media provider") + return execute_extension_runtime_binding( + binding.binding, + request={ + "protocol": PROTOCOL, + "operation": f"image.{action}", + "plan": record["plan"], + "plan_digest": record["plan_digest"], + "sources": record["sources"], + "directory": str(self._bundle(record["image_id"])), + }, + ) + + def operate(self, ident: str, action: str, *, expected_revision: int) -> dict: + bundle = self._bundle(ident) + with exclusive_file_lock( + bundle / "record.json", operation="content-image-effect", timeout_seconds=1 + ): + record = self._record(ident) + if expected_revision != record["revision"]: + raise ValueError("Read the current image revision") + if ( + _owner("image_plan", {"plan": record["plan"]})["plan_digest"] + != record["plan_digest"] + ): + raise ValueError("Image intent bytes changed") + if action == "submit": + if record["status"] != "prepared": + return self.inspect(ident) + try: + probe = self._call(record, "probe") + except (OSError, ValueError, RuntimeError): + probe = {} + if not probe.get("credential_available"): + return { + **self.inspect(ident), + "ok": False, + "error_code": "image_provider_unavailable", + } + record = self._transition(record, "submit") + _save(bundle / "record.json", record) + elif action != "collect" or record["status"] not in { + "submitting", + "submission_unknown", + "ready", + }: + raise ValueError("No saved image response is available") + elif self.inspect(ident)["status"] == "ready": + return self.inspect(ident) + try: + response = self._call(record, action) + if response.get("result"): + updated = self._transition( + record, "collect", result=response["result"] + ) + for name, meta in updated["result"]["files"].items(): + path = _safe_path(bundle, f"output/{name}") + if ( + not path.is_file() + or path.stat().st_size != meta["bytes"] + or _sha(path) != meta["sha256"] + ): + raise ValueError("Image result bytes changed") + record = updated + elif record["status"] == "submitting": + record = self._transition( + record, + "reject" if response.get("status") == "rejected" else "unknown", + ) + record["error_code"] = response.get("error_code") or ( + None + if record["status"] == "ready" + else "image_response_unavailable" + ) + except (OSError, ValueError, RuntimeError, KeyError): + if record["status"] == "submitting": + record = self._transition(record, "unknown") + record["error_code"] = "image_operation_unconfirmed" + _save(bundle / "record.json", record) + return {**self.inspect(ident), "ok": record.get("error_code") is None} + + def file(self, ident: str, name: str) -> Path: + if ( + name not in {"generated.png", "original.png"} + or self.inspect(ident)["status"] != "ready" + ): + raise ValueError("Verified image unavailable") + return _safe_path(self._bundle(ident), f"output/{name}") diff --git a/loopx/capabilities/content_ops/media.py b/loopx/capabilities/content_ops/media.py index 9e7eb157bd..09993a6b03 100644 --- a/loopx/capabilities/content_ops/media.py +++ b/loopx/capabilities/content_ops/media.py @@ -81,9 +81,9 @@ def __init__(self, *, registry_path: Path, goal_id: str, runtime_root: Path): self.root = _safe_path(self.project, f".local/content-media/{scope}") self.runtime_root = runtime_root - def binding(self): + def binding(self, *, permission: str = "content_media_write"): return resolve_optional_capability_binding(state_file=default_extension_state_file(self.runtime_root), - capability_id="content-ops", protocol=PROTOCOL, permission="content_media_write", extension_id="loopx-media") + capability_id="content-ops", protocol=PROTOCOL, permission=permission, extension_id="loopx-media") def _bundle(self, composition_id: str) -> Path: if not isinstance(composition_id, str) or not re.fullmatch(r"media_[a-f0-9]{24}", composition_id): diff --git a/loopx/capabilities/content_ops/media_cli.py b/loopx/capabilities/content_ops/media_cli.py index e1f8426072..a201de21e9 100644 --- a/loopx/capabilities/content_ops/media_cli.py +++ b/loopx/capabilities/content_ops/media_cli.py @@ -6,6 +6,7 @@ from .media import MediaWorkspace from .generation import GenerationWorkspace +from .images import ImageWorkspace from ...paths import default_registry_path, effective_runtime_root @@ -27,11 +28,38 @@ def register_media_commands(subparsers, add_format) -> None: generation.add_argument("--expected-revision", type=int) add_format(generation) + image = subparsers.add_parser("image", help="Prepare and generate one reference-bound image; paid submission is never repeated.") + image.add_argument("operation", choices=("prepare", "submit", "collect", "inspect", "list")) + image.add_argument("--goal-id", required=True) + image.add_argument("--plan-json") + image.add_argument("--source-directory") + image.add_argument("--image-id") + image.add_argument("--expected-revision", type=int) + add_format(image) + def handle_media_command(args) -> dict: registry = Path(args.registry) if args.registry else default_registry_path() workspace = MediaWorkspace(registry_path=registry, goal_id=args.goal_id, runtime_root=effective_runtime_root(registry, args.runtime_root)) + if args.content_ops_command == "image": + images = ImageWorkspace(workspace) + if args.operation == "list": + return images.list() + if args.operation == "prepare": + if not args.plan_json or not args.source_directory: + raise ValueError("prepare requires --plan-json and --source-directory") + path = Path(args.plan_json).expanduser() + if path.stat().st_size > 256 * 1024: + raise ValueError("Image intent exceeds 256 KiB") + return images.prepare(json.loads(path.read_text()), source_directory=Path(args.source_directory), image_id=args.image_id) + if not args.image_id: + raise ValueError("Select an image intent") + if args.operation == "inspect": + return images.inspect(args.image_id) + if args.expected_revision is None: + raise ValueError("Read the current --expected-revision first") + return images.operate(args.image_id, args.operation, expected_revision=args.expected_revision) if args.content_ops_command == "generation": work = GenerationWorkspace(workspace) if args.operation == "list": diff --git a/loopx/control_plane/capabilities/content_media_image.ts b/loopx/control_plane/capabilities/content_media_image.ts new file mode 100644 index 0000000000..b72bd551b4 --- /dev/null +++ b/loopx/control_plane/capabilities/content_media_image.ts @@ -0,0 +1,91 @@ +/** One synchronous image request. A lost response is not a pollable video job. */ +import {createHash} from "node:crypto"; +import {BARE_SHA256_PATTERN} from "../content_digest.ts"; +import {EffectRuntimeRequestError} from "../effect_runtime_errors.ts"; + +type Obj = Record; +function fail(message: string): never {throw new EffectRuntimeRequestError(message);} +function object(value: unknown): Obj { + if (!value || typeof value !== "object" || Array.isArray(value)) fail("Expected an image intent object"); + return value as Obj; +} +function fields(raw: Obj, keys: string[]) {if (Object.keys(raw).some(key => !keys.includes(key))) fail("Unsupported image intent fields");} +function text(value: unknown, max = 240) { + if (typeof value !== "string" || !value.trim() || value.length > max || /[\x00-\x08\x0b-\x1f]/.test(value)) fail("Invalid image intent text"); + return value.trim(); +} +function number(value: unknown, min: number, max: number) { + if (typeof value !== "number" || !Number.isFinite(value) || value < min || value > max) fail("Image value is outside the supported range"); + return value; +} +function instant(value: unknown) { + const s = text(value, 40); + if (!/\dT/.test(s) || !/(Z|[+-]\d\d:\d\d)$/.test(s) || !Number.isFinite(Date.parse(s))) fail("Use a timezone-aware image observation"); + return s; +} +function stable(value: unknown): string { + if (Array.isArray(value)) return `[${value.map(stable).join(",")}]`; + if (value && typeof value === "object") return `{${Object.entries(value).sort(([a], [b]) => a.localeCompare(b)).map(([k,v])=>`${JSON.stringify(k)}:${stable(v)}`).join(",")}}`; + return JSON.stringify(value); +} +export const IMAGE_MODEL = "doubao-seedream-5-0-pro-260628"; +export function validateImagePlan(input: unknown) { + const raw = object(object(input).plan); + fields(raw, ["schema_version","title","model","prompt","width","height","references","watermark","quote"]); + if (raw.schema_version !== "content_ops_image_plan_v0" || raw.model !== IMAGE_MODEL) fail("Select the supported image schema and model"); + const width = number(raw.width, 720, 2560), height = number(raw.height, 720, 2560); + if (!Number.isInteger(width) || !Number.isInteger(height) || width * height < 921600 || width * height > 4624220 || width / height < 1/16 || width / height > 16) fail("Unsupported image dimensions"); + if (typeof raw.watermark !== "boolean") fail("Declare the image watermark choice"); + if (!Array.isArray(raw.references) || raw.references.length > 1) fail("Use text or one explicitly scoped image reference"); + const references = raw.references.map(value => { + const ref = object(value); fields(ref,["path","sha256","source_ref","visibility"]); + const path = text(ref.path,400), source_ref = text(ref.source_ref); + if (path.startsWith("/") || path.includes("\\") || path.split("/").some(part => !part || part === "." || part === "..")) fail("Image references must stay inside the explicit source directory"); + if (typeof ref.sha256 !== "string" || !BARE_SHA256_PATTERN.test(ref.sha256)) fail("Image reference requires exact SHA256"); + if (ref.visibility !== "public_safe" || !/^(?:source|synthetic|generation):[a-zA-Z0-9._:-]{1,200}$/.test(source_ref)) fail("Use an explicit public-safe image and opaque source reference"); + return {path,sha256:ref.sha256,source_ref,visibility:"public_safe"}; + }); + const quote = object(raw.quote); fields(quote,["cny_per_image","checked_at","source_url","max_estimated_cny"]); + const source_url = text(quote.source_url,400); + if (!/^https:\/\/(?:ark|console|docs)\.volcengine\.com\//.test(source_url)) fail("Use the checked official image price source"); + const cny = number(quote.cny_per_image,.01,10), maximum = number(quote.max_estimated_cny,.01,10); + if (cny > maximum) fail("Image estimate exceeds the declared request budget"); + const plan = {schema_version:raw.schema_version,title:text(raw.title,100),model:IMAGE_MODEL,prompt:text(raw.prompt,4000),width,height,references,watermark:raw.watermark, + quote:{cny_per_image:cny,checked_at:instant(quote.checked_at),source_url,max_estimated_cny:maximum}}; + return {ok:true,plan,plan_digest:`sha256:${createHash("sha256").update(stable(plan)).digest("hex")}`, + estimate:{images:1,cny,basis:"one_output_image_first_reference_free",invoice:"unknown",guaranteed_billing_cap:false}, + capability_id:"content-ops",provider_id:"loopx-media",visibility:"local_private",publish_authorized:false}; +} +export function transitionImage(input: unknown) { + const raw = object(input), state = object(raw.state), observed_at = instant(raw.observed_at); + if (state.revision !== raw.expected_revision) fail("Image revision changed; read the current intent"); + const checked = validateImagePlan({plan:state.plan}); + if (checked.plan_digest !== state.plan_digest) fail("Image intent bytes changed"); + let status: unknown; + if (raw.action === "submit") { + const age = Date.parse(observed_at) - Date.parse(checked.plan.quote.checked_at); + if (state.status !== "prepared" || age < 0 || age > 86400000) fail("Do not resubmit an image intent; check the quote and saved response"); + status = "submitting"; + } else if (raw.action === "unknown" || raw.action === "reject") { + if (state.status !== "submitting") fail("Only an active image submission can be unresolved or rejected"); + status = raw.action === "unknown" ? "submission_unknown" : "rejected"; + } else if (raw.action === "collect") { + if (!["submitting","submission_unknown","ready"].includes(String(state.status))) fail("No submitted image response is available"); + const result = object(raw.result), files = object(result.files), projected: Obj = {}; + if (result.plan_digest !== state.plan_digest || result.model !== IMAGE_MODEL || result.full_decode !== "passed" || result.width !== checked.plan.width || result.height !== checked.plan.height) fail("Image bytes do not match the admitted request"); + const usage = object(result.usage); + if (usage.generated_images !== 1) fail("The single-image request did not return exactly one output"); + for (const [name,value] of Object.entries(files)) { + if (!["generated.png","original.png"].includes(name)) fail("Unexpected image artifact"); + const file = object(value); + if (typeof file.sha256 !== "string" || !BARE_SHA256_PATTERN.test(file.sha256)) fail("Image artifact requires SHA256"); + projected[name]={sha256:file.sha256,bytes:number(file.bytes,1,32*1024*1024)}; + } + if (!projected["generated.png"] || !projected["original.png"]) fail("Retain both original and normalized image bytes"); + if (state.result && object(object(object(state.result).files)["original.png"]).sha256 !== object(projected["original.png"]).sha256) fail("Recovery cannot replace the original image response"); + return {ok:true,state:{...state,status:"ready",error_code:null,updated_at:observed_at,result:{files:projected,width:result.width,height:result.height,full_decode:"passed",model:IMAGE_MODEL, + usage:{generated_images:1,output_tokens:usage.output_tokens == null ? null : number(usage.output_tokens,0,1e8)}, + watermark_requested:checked.plan.watermark,watermark_visual_check:"not_tested",creative_review:"not_tested",invoice:"unknown"}}}; + } else fail("Unsupported image transition"); + return {ok:true,state:{...state,status,updated_at:observed_at}}; +} diff --git a/loopx/control_plane/effect_runtime_handlers.ts b/loopx/control_plane/effect_runtime_handlers.ts index 797c7a9051..c2ac871888 100644 --- a/loopx/control_plane/effect_runtime_handlers.ts +++ b/loopx/control_plane/effect_runtime_handlers.ts @@ -684,6 +684,8 @@ export function createEffectRuntimeHandlers( ["content_media.plan", lazyHandler(() => import("./capabilities/content_media.ts"), ({validateMediaPlan}) => validateMediaPlan)], ["content_media.transition", lazyHandler(() => import("./capabilities/content_media.ts"), ({transitionMediaRender}) => transitionMediaRender)], ["content_media.result", lazyHandler(() => import("./capabilities/content_media.ts"), ({validateMediaResult}) => validateMediaResult)], + ["content_media.image_plan", lazyHandler(() => import("./capabilities/content_media_image.ts"), ({validateImagePlan}) => validateImagePlan)], + ["content_media.image_transition", lazyHandler(() => import("./capabilities/content_media_image.ts"), ({transitionImage}) => transitionImage)], ["content_media.generation_plan", lazyHandler(() => import("./capabilities/content_media_generation.ts"), ({validateGenerationPlan}) => validateGenerationPlan)], ["content_media.generation_transition", lazyHandler(() => import("./capabilities/content_media_generation.ts"), ({transitionGeneration}) => transitionGeneration)], ["reward_memory.decision.plan", lazyHandler(() => import("./capabilities/reward_memory_decision.ts"), ({planRewardMemoryDecision}) => planRewardMemoryDecision)], diff --git a/loopx/presentation/content_media_api.py b/loopx/presentation/content_media_api.py index e93f2a2e30..375659cd9e 100644 --- a/loopx/presentation/content_media_api.py +++ b/loopx/presentation/content_media_api.py @@ -11,6 +11,7 @@ from ..capabilities.content_ops.media import MediaWorkspace from ..capabilities.content_ops.generation import GenerationWorkspace +from ..capabilities.content_ops.images import ImageWorkspace from ..feedback import validate_goal_id from .goal_source_routing import source_registry_for_goal @@ -38,11 +39,18 @@ def _content_media_request(self) -> None: if urlparse(self.path).query: raise ValueError("Use the request body") body = self._read_json(max_bytes=4096) - if set(body) - {"goal_id", "action", "composition_id", "generation_id", "expected_revision"}: + if set(body) - {"goal_id", "action", "composition_id", "generation_id", "image_id", "expected_revision"}: raise ValueError("Unsupported fields") workspace = self._media_workspace(body["goal_id"]) action = body["action"] - if action == "generation_list" and set(body) == {"goal_id", "action"}: + if action == "image_list" and set(body) == {"goal_id", "action"}: + result = ImageWorkspace(workspace).list() + elif action in {"image_submit", "image_collect"} and set(body) == {"goal_id", "action", "image_id", "expected_revision"}: + revision = body["expected_revision"] + if isinstance(revision, bool) or not isinstance(revision, int): + raise ValueError("Read the current image revision") + result = ImageWorkspace(workspace).operate(body["image_id"], action.removeprefix("image_"), expected_revision=revision) + elif action == "generation_list" and set(body) == {"goal_id", "action"}: result = GenerationWorkspace(workspace).list() elif action in {"generation_submit", "generation_check", "generation_cancel", "generation_collect"} and set(body) == {"goal_id", "action", "generation_id", "expected_revision"}: revision = body["expected_revision"] @@ -77,20 +85,23 @@ def _content_media_request(self) -> None: self._send_json(result) except (OSError, ValueError, TypeError, KeyError, RuntimeError): self._send_error( - "Video request unavailable. Reopen the selected Goal and composition, then retry.", + "Media request unavailable. Reopen the selected Goal and media item, then retry.", status=400, ) def _content_media_file(self) -> None: try: query = parse_qs(urlparse(self.path).query, strict_parsing=True) - if set(query) not in ({"goal_id", "composition_id", "file"}, {"goal_id", "generation_id", "file"}) or any( + if set(query) not in ({"goal_id", "composition_id", "file"}, {"goal_id", "generation_id", "file"}, {"goal_id", "image_id", "file"}) or any( len(v) != 1 for v in query.values() ): raise ValueError("Invalid file request") workspace = self._media_workspace(query["goal_id"][0]) name = query["file"][0] - path = GenerationWorkspace(workspace).file(query["generation_id"][0], name) if "generation_id" in query else workspace.file(query["composition_id"][0], name) + if "image_id" in query: + path = ImageWorkspace(workspace).file(query["image_id"][0], name) + else: + path = GenerationWorkspace(workspace).file(query["generation_id"][0], name) if "generation_id" in query else workspace.file(query["composition_id"][0], name) fd = os.open(path, os.O_RDONLY | getattr(os, "O_NOFOLLOW", 0)) with os.fdopen(fd, "rb") as source: size = os.fstat(source.fileno()).st_size @@ -134,4 +145,4 @@ def _content_media_file(self) -> None: except (BrokenPipeError, ConnectionResetError): return except (OSError, ValueError, TypeError, KeyError): - self._send_error("Verified video file unavailable.", status=404) + self._send_error("Verified media file unavailable.", status=404) diff --git a/packages/loopx-media/extension.toml b/packages/loopx-media/extension.toml index 687c68fa9e..9f90fdfa22 100644 --- a/packages/loopx-media/extension.toml +++ b/packages/loopx-media/extension.toml @@ -1,6 +1,6 @@ schema_version = "loopx_extension_manifest_v0" id = "loopx-media" -version = "0.3.0" +version = "0.4.0" requires_loopx_api = ">=1,<2" permissions = ["content_media_write", "content_media_generate"] diff --git a/packages/loopx-media/pyproject.toml b/packages/loopx-media/pyproject.toml index 6305075fe7..bfea174272 100644 --- a/packages/loopx-media/pyproject.toml +++ b/packages/loopx-media/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "loopx-media" -version = "0.3.0" +version = "0.4.0" description = "Optional local composition renderer for LoopX content-ops" requires-python = ">=3.11" dependencies = ["Pillow>=11,<13", "imageio-ffmpeg>=0.6,<0.7", "fonttools>=4,<5"] diff --git a/packages/loopx-media/src/loopx_media/images.py b/packages/loopx-media/src/loopx_media/images.py new file mode 100644 index 0000000000..c8c60af3de --- /dev/null +++ b/packages/loopx-media/src/loopx_media/images.py @@ -0,0 +1,363 @@ +"""One PNG generation, durable response recovery, no automatic paid retry.""" + +from __future__ import annotations + +import base64 +from io import BytesIO +import hashlib +import json +import os +from pathlib import Path +import time +from urllib.error import HTTPError, URLError +from urllib.request import HTTPRedirectHandler, Request, build_opener + +from PIL import Image + +BASE_URL = "https://ark.cn-beijing.volces.com/api/v3" +MODEL = "doubao-seedream-5-0-pro-260628" +MAXIMUM = 32 * 1024 * 1024 + + +def sha(path: Path) -> str: + with path.open("rb") as source: + return hashlib.file_digest(source, "sha256").hexdigest() + + +def save(path: Path, value: dict) -> None: + temporary = path.with_suffix(".tmp") + with temporary.open("w", encoding="utf-8") as output: + os.chmod(temporary, 0o600) + json.dump(value, output) + output.flush() + os.fsync(output.fileno()) + temporary.replace(path) + fd = os.open(path.parent, os.O_RDONLY) + try: + os.fsync(fd) + finally: + os.close(fd) + + +def available() -> bool: + return ( + bool(os.environ.get("ARK_IMAGE_API_KEY")) + and os.environ.get("ARK_IMAGE_BASE_URL", BASE_URL).rstrip("/") == BASE_URL + ) + + +def api(payload: dict, root: Path, plan_digest: str) -> dict: + class NoRedirect(HTTPRedirectHandler): + def redirect_request(self, req, fp, code, msg, headers, newurl): + raise ValueError("Unexpected image API redirect") + + if not available(): + raise ValueError("Image credential unavailable") + request = Request( + BASE_URL + "/images/generations", + data=json.dumps(payload).encode(), + method="POST", + headers={ + "Authorization": "Bearer " + os.environ["ARK_IMAGE_API_KEY"], + "Content-Type": "application/json", + }, + ) + deadline = time.monotonic() + 90 + chunks, size = [], 0 + with build_opener(NoRedirect).open(request, timeout=70) as response: + observed = { + "plan_digest": plan_digest, + "http_status": response.status, + "request_id": response.headers.get("x-tt-logid", "")[:200], + "observed_at": time.time(), + } + save(root / "image-http-response.json", observed) + while data := response.read(65536): + size += len(data) + if size > MAXIMUM or time.monotonic() > deadline: + raise ValueError("Image response exceeds the operation budget") + chunks.append(data) + body = b"".join(chunks) + temporary = root / "image-api-response.partial" + if temporary.is_symlink() or (root / "image-api-response.body").is_symlink(): + raise ValueError("Invalid image response cache") + with temporary.open("wb") as output: + os.chmod(temporary, 0o600) + output.write(body) + output.flush() + os.fsync(output.fileno()) + temporary.replace(root / "image-api-response.body") + save( + root / "image-http-response.json", + { + **observed, + "body_bytes": len(body), + "body_sha256": hashlib.sha256(body).hexdigest(), + }, + ) + result = json.loads(body) + if not isinstance(result, dict): + raise ValueError("Invalid image response") + return result + + +def cache_image_response(response: dict, request: dict, root: Path) -> None: + items, usage = response.get("data"), response.get("usage") + if ( + response.get("error") + or not isinstance(items, list) + or len(items) != 1 + or not isinstance(items[0], dict) + or items[0].get("error") + or response.get("model") != MODEL + or not isinstance(usage, dict) + or type(usage.get("generated_images")) is not int + or usage["generated_images"] != 1 + ): + raise ValueError("Image result identity, schema or count changed") + data = base64.b64decode(items[0]["b64_json"], validate=True) + if not data or len(data) > MAXIMUM: + raise ValueError("Image bytes exceed the operation budget") + save( + root / "image-response.json", + { + "plan_digest": request["plan_digest"], + "model": MODEL, + "created": response.get("created"), + "b64_json": items[0]["b64_json"], + "sha256": hashlib.sha256(data).hexdigest(), + "usage": { + key: usage[key] + for key in ("generated_images", "output_tokens") + if key in usage + }, + }, + ) + + +def reference(request: dict, root: Path) -> tuple[list[str], list[dict]]: + urls, provenance = [], [] + for i, ref in enumerate(request["plan"]["references"]): + path = Path(request["sources"][str(i)]) + if ( + path.is_symlink() + or path.stat().st_size > 4 * 1024 * 1024 + or sha(path) != ref["sha256"] + ): + raise ValueError("Image reference bytes changed") + with Image.open(path) as image: + if ( + image.format not in {"PNG", "JPEG"} + or not 196 <= image.width * image.height <= 36000000 + or not 1 / 16 <= image.width / image.height <= 16 + ): + raise ValueError("Unsupported image reference") + image.load() + rgba = image.convert("RGBA") + flat = Image.new("RGBA", rgba.size, "white") + flat.alpha_composite(rgba) + encoded = BytesIO() + flat.convert("RGB").save(encoded, format="PNG") + data = encoded.getvalue() + if len(data) > 8 * 1024 * 1024: + raise ValueError("Prepared reference exceeds the upload budget") + urls.append("data:image/png;base64," + base64.b64encode(data).decode("ascii")) + provenance.append( + { + "original_sha256": ref["sha256"], + "sent_sha256": hashlib.sha256(data).hexdigest(), + "preprocessing": "alpha_composite_white_rgb_png", + } + ) + return urls, provenance + + +def collect(request: dict, root: Path) -> dict: + cache = root / "image-response.json" + if not cache.exists(): + metadata = root / "image-http-response.json" + raw = root / "image-api-response.body" + if ( + metadata.is_symlink() + or metadata.stat().st_size > 65536 + or raw.is_symlink() + or raw.stat().st_size > MAXIMUM + ): + raise ValueError("Invalid original image response") + saved_http = json.loads(metadata.read_text()) + if ( + saved_http.get("plan_digest") != request["plan_digest"] + or saved_http.get("body_bytes") != raw.stat().st_size + or saved_http.get("body_sha256") != sha(raw) + ): + raise ValueError("Original image response changed") + response = json.loads(raw.read_bytes()) + if not isinstance(response, dict): + raise ValueError("Invalid original image response") + cache_image_response(response, request, root) + if cache.is_symlink() or cache.stat().st_size > MAXIMUM: + raise ValueError("Invalid saved image response") + saved = json.loads(cache.read_text()) + if saved["plan_digest"] != request["plan_digest"] or saved["model"] != MODEL: + raise ValueError("Image response belongs to a different intent") + data = base64.b64decode(saved["b64_json"], validate=True) + if ( + not data + or len(data) > MAXIMUM + or hashlib.sha256(data).hexdigest() != saved["sha256"] + ): + raise ValueError("Saved image bytes changed") + output = root / "output" + if output.is_symlink(): + raise ValueError("Invalid image output directory") + output.mkdir(mode=0o700, exist_ok=True) + for name in ["original.png", "generated.png"]: + if (output / name).is_symlink(): + raise ValueError("Invalid image output path") + with Image.open(BytesIO(data)) as image: + plan = request["plan"] + if image.format != "PNG" or image.size != (plan["width"], plan["height"]): + raise ValueError( + "Returned image dimensions or format differ from the request" + ) + image.load() + rgba = image.convert("RGBA") + flat = Image.new("RGBA", rgba.size, "white") + flat.alpha_composite(rgba) + temporary = output / "generated.partial.png" + if temporary.is_symlink(): + raise ValueError("Invalid image temporary output") + flat.convert("RGB").save(temporary, format="PNG") + temporary.replace(output / "generated.png") + original = output / "original.png" + with original.open("wb") as f: + f.write(data) + f.flush() + os.fsync(f.fileno()) + return { + "ok": True, + "result": { + "plan_digest": request["plan_digest"], + "model": MODEL, + "files": { + name: { + "sha256": sha(output / name), + "bytes": (output / name).stat().st_size, + } + for name in ["original.png", "generated.png"] + }, + "width": plan["width"], + "height": plan["height"], + "full_decode": "passed", + "usage": saved["usage"], + }, + } + + +def operate(request: dict) -> dict: + if request.get("protocol") != "content_ops_media_renderer_v0": + raise ValueError("Unsupported image protocol") + action = request.get("operation") + if action == "image.probe": + return {"ok": True, "credential_available": available()} + root = Path(request["directory"]) + if ( + not root.is_absolute() + or root.is_symlink() + or not root.is_dir() + or request["plan"]["model"] != MODEL + ): + raise ValueError("Invalid image request") + if action == "image.collect": + return collect(request, root) + if action != "image.submit": + raise ValueError("Unsupported image operation") + journal = root / "image-submission.json" + if journal.exists() or journal.is_symlink(): + raise ValueError( + "A submission was already attempted; inspect its saved response" + ) + plan = request["plan"] + try: + images, provenance = reference(request, root) + except (OSError, ValueError, Image.DecompressionBombError): + return { + "ok": True, + "status": "rejected", + "error_code": "image_reference_invalid", + } + payload = { + "model": MODEL, + "prompt": plan["prompt"], + "size": f"{plan['width']}x{plan['height']}", + "watermark": plan["watermark"], + "response_format": "b64_json", + "output_format": "png", + "layer_decomposition": False, + "background": "opaque", + "optimize_prompt_options": {"mode": "standard"}, + } + if images: + payload["image"] = images[0] + saved = { + "plan_digest": request["plan_digest"], + "state": "sending", + "references": provenance, + "started_at": time.time(), + } + save(journal, saved) + try: + response = api(payload, root, request["plan_digest"]) + items = response.get("data") + if response.get("error"): + saved["state"] = "rejected" + save(journal, saved) + return { + "ok": True, + "status": "rejected", + "error_code": "image_request_rejected", + } + if ( + isinstance(items, list) + and len(items) == 1 + and isinstance(items[0], dict) + and items[0].get("error") + ): + saved["state"] = "rejected" + save(journal, saved) + return { + "ok": True, + "status": "rejected", + "error_code": "image_request_rejected", + } + cache_image_response(response, request, root) + except HTTPError as error: + rejected = error.code in {400, 401, 403, 404, 413, 422, 429} + saved.update( + state="rejected" if rejected else "submission_unknown", + http_status=error.code, + request_id=( + error.headers.get("x-tt-logid", "")[:200] if error.headers else "" + ), + ) + save(journal, saved) + return { + "ok": True, + "status": saved["state"], + "error_code": "image_request_rejected" + if rejected + else "image_submission_unknown", + } + except (OSError, URLError, ValueError, KeyError, TypeError) as error: + saved.update(state="submission_unknown", error_type=type(error).__name__) + if isinstance(error, URLError): + saved["reason_type"] = type(error.reason).__name__ + save(journal, saved) + return { + "ok": True, + "status": "submission_unknown", + "error_code": "image_submission_unknown", + } + saved.update(state="response_saved", returned_at=time.time()) + save(journal, saved) + return collect(request, root) diff --git a/packages/loopx-media/src/loopx_media/renderer.py b/packages/loopx-media/src/loopx_media/renderer.py index 206c95a44d..35add59e2b 100644 --- a/packages/loopx-media/src/loopx_media/renderer.py +++ b/packages/loopx-media/src/loopx_media/renderer.py @@ -314,6 +314,9 @@ def main() -> int: if str(request.get("operation", "")).startswith("generation."): from .generation import operate result = operate(request) + elif str(request.get("operation", "")).startswith("image."): + from .images import operate + result = operate(request) else: result = render(request) except RenderCancelled: diff --git a/tests/control_plane_ts/content_media_image.test.ts b/tests/control_plane_ts/content_media_image.test.ts new file mode 100644 index 0000000000..1849f04d84 --- /dev/null +++ b/tests/control_plane_ts/content_media_image.test.ts @@ -0,0 +1,35 @@ +import assert from "node:assert/strict"; +import test from "node:test"; +import {validateImagePlan as validate, transitionImage as transition, IMAGE_MODEL} from "../../loopx/control_plane/capabilities/content_media_image.ts"; + +const at = "2026-10-19T12:30:00Z"; +const brief = () => ({schema_version:"content_ops_image_plan_v0",title:"Evidence returns",model:IMAGE_MODEL,prompt:"Three stations and one returned artifact. No text.",width:1280,height:720,references:[] as any[],watermark:true, + quote:{cny_per_image:.3,checked_at:at,source_url:"https://ark.volcengine.com/docs/model-pricing",max_estimated_cny:.4}}); +const draft = () => ({...validate({plan:brief()}),revision:1,status:"prepared"}); +function event(state: any,action: string,extra = {}) {return transition({state,action,observed_at:at,expected_revision:1,...extra}).state;} +const result = () => ({plan_digest:draft().plan_digest,model:IMAGE_MODEL,full_decode:"passed",width:1280,height:720,usage:{generated_images:1,output_tokens:3600}, + files:{"original.png":{sha256:"a".repeat(64),bytes:1200},"generated.png":{sha256:"b".repeat(64),bytes:1200}}}); + +test("one-image quotation preserves exact request bounds, not invoice or permission",()=>{ + const checked=validate({plan:brief()});assert.equal(checked.estimate.images,1);assert.equal(checked.estimate.cny,.3);assert.equal(checked.publish_authorized,false); + const same={...brief(),title:"Changed meaning"};assert.notEqual(checked.plan_digest,validate({plan:same}).plan_digest); + for(const change of [{width:512},{height:720.1},{references:[{path:"../private.png"}]},{quote:{...brief().quote,max_estimated_cny:.1}},{model:"other"},{extra:true}]) assert.throws(()=>validate({plan:{...brief(),...change}})); + const ref={path:"reference.png",sha256:"c".repeat(64),source_ref:"synthetic:handoff",visibility:"public_safe"}; + assert.equal(validate({plan:{...brief(),references:[ref]}}).plan.references.length,1); + for(const change of [{visibility:"private"},{source_ref:"https://private.example/raw"},{path:"/local/private.png"},{sha256:"changed"}]) assert.throws(()=>validate({plan:{...brief(),references:[{...ref,...change}]}})); +}); +test("unknown synchronous submission is not a cloud job or a new paid attempt",()=>{ + const sending=event(draft(),"submit"), unknown=event(sending,"unknown"); + assert.equal(unknown.status,"submission_unknown");assert.throws(()=>event(unknown,"submit"));assert.throws(()=>event(unknown,"check")); + assert.throws(()=>event(draft(),"submit",{observed_at:"2026-10-21T12:00:00Z"})); + assert.throws(()=>event({...draft(),plan_digest:"changed"},"submit")); + assert.throws(()=>event(draft(),"submit",{expected_revision:2})); +}); +test("saved response can repair caller loss but never replace original bytes",()=>{ + const unknown=event(event(draft(),"submit"),"unknown"), ready=event(unknown,"collect",{result:result()}); + assert.equal(ready.status,"ready");assert.equal(ready.result.invoice,"unknown");assert.equal(ready.result.creative_review,"not_tested"); + for(const mutation of [{usage:{generated_images:2}},{model:"other"},{width:1920},{full_decode:"unknown"},{plan_digest:"changed"}]) assert.throws(()=>event(unknown,"collect",{result:{...result(),...mutation}})); + const replacement=result();replacement.files["original.png"].sha256="c".repeat(64); + assert.throws(()=>event(ready,"collect",{result:replacement})); + assert.throws(()=>event(draft(),"collect",{result:result()})); +}); diff --git a/tests/test_content_media_images.py b/tests/test_content_media_images.py new file mode 100644 index 0000000000..3910196ccc --- /dev/null +++ b/tests/test_content_media_images.py @@ -0,0 +1,422 @@ +"""Synchronous image boundaries with synthetic bytes; never a paid CI call.""" + +from __future__ import annotations + +import base64 +from datetime import datetime, timezone +import hashlib +import http.client +import importlib.util +from io import BytesIO +import json +from pathlib import Path +import threading + +from PIL import Image +import pytest + +from loopx.capabilities.content_ops.images import ImageWorkspace +from loopx.capabilities.content_ops.media import MediaWorkspace +from loopx.chat_server import ChatHTTPServer, ChatRequestHandler + + +@pytest.fixture +def work(tmp_path): + project = tmp_path / "project" + project.mkdir() + runtime, registry = tmp_path / "runtime", tmp_path / "registry.json" + registry.write_text( + json.dumps( + { + "schema_version": "0.1", + "common_runtime_root": str(runtime), + "goals": [ + {"id": "media-demo", "repo": str(project), "status": "active"} + ], + } + ) + ) + return ImageWorkspace( + MediaWorkspace( + registry_path=registry, goal_id="media-demo", runtime_root=runtime + ) + ), registry + + +@pytest.fixture +def provider(): + path = ( + Path(__file__).resolve().parents[1] + / "packages/loopx-media/src/loopx_media/images.py" + ) + spec = importlib.util.spec_from_file_location("image_provider_test", path) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def brief(): + return { + "schema_version": "content_ops_image_plan_v0", + "title": "A returned artifact", + "model": "doubao-seedream-5-0-pro-260628", + "prompt": "Three fixed stations. One artifact returns. No text.", + "width": 1280, + "height": 720, + "references": [], + "watermark": True, + "quote": { + "cny_per_image": 0.3, + "checked_at": datetime.now(timezone.utc).isoformat(), + "source_url": "https://ark.volcengine.com/docs/model-pricing", + "max_estimated_cny": 0.4, + }, + } + + +def connect(monkeypatch, work, provider): + ws, _ = work + monkeypatch.setattr( + ImageWorkspace, + "_call", + lambda self, record, action: provider.operate( + { + "protocol": "content_ops_media_renderer_v0", + "operation": "image." + action, + "plan": record["plan"], + "plan_digest": record["plan_digest"], + "sources": record["sources"], + "directory": str(self._bundle(record["image_id"])), + } + ), + ) + monkeypatch.setenv("ARK_IMAGE_API_KEY", "synthetic-not-a-real-credential") + data = BytesIO() + Image.new("RGB", (1280, 720), "white").save(data, format="PNG") + calls = [] + + def api(payload, *_): + calls.append(payload) + return { + "model": provider.MODEL, + "created": 1, + "data": [ + { + "b64_json": base64.b64encode(data.getvalue()).decode(), + "size": "1280x720", + } + ], + "usage": {"generated_images": 1, "output_tokens": 3600}, + } + + monkeypatch.setattr(provider, "api", api) + return ws, calls + + +def test_image_immutable_source_snapshot_is_scoped_and_reads_make_no_cloud_call( + work, monkeypatch +): + ws, _ = work + source = ws.media.project / "references" + source.mkdir() + image = source / "ref.png" + Image.new("RGBA", (1280, 720), (0, 0, 0, 0)).save(image) + ref = { + "path": "ref.png", + "sha256": hashlib.sha256(image.read_bytes()).hexdigest(), + "source_ref": "synthetic:review-return", + "visibility": "public_safe", + } + plan = {**brief(), "references": [ref]} + monkeypatch.setattr( + ImageWorkspace, "_call", lambda *a: pytest.fail("read must not call cloud") + ) + item = ws.prepare(plan, source_directory=source) + ident = item["image_id"] + assert "path" not in item["references"][0] + assert ws.list()["images"][0]["status"] == "prepared" + with pytest.raises(ValueError): + ws.prepare( + {**plan, "prompt": "different meaning"}, + source_directory=source, + image_id=ident, + ) + image.write_bytes(b"changed") + with pytest.raises(ValueError): + ws.prepare(plan, source_directory=source) + + +def test_image_credentials_are_separate_from_video_and_unavailable_does_not_submit( + work, provider, monkeypatch +): + ws, calls = connect(monkeypatch, work, provider) + monkeypatch.delenv("ARK_IMAGE_API_KEY") + monkeypatch.setenv("ARK_API_KEY", "synthetic-video-only-key") + item = ws.prepare(brief(), source_directory=ws.media.project) + result = ws.operate(item["image_id"], "submit", expected_revision=1) + assert not result["ok"] and result["status"] == "prepared" + assert ( + calls == [] + and not (ws._bundle(item["image_id"]) / "image-submission.json").exists() + ) + + +def test_image_submit_once_retains_pixels_and_collects_damaged_local_output_without_new_post( + work, provider, monkeypatch +): + ws, calls = connect(monkeypatch, work, provider) + item = ws.prepare(brief(), source_directory=ws.media.project) + ident = item["image_id"] + ready = ws.operate(ident, "submit", expected_revision=1) + assert ( + ready["ok"] + and ready["status"] == "ready" + and ready["result"]["usage"]["generated_images"] == 1 + ) + assert ( + calls[0]["layer_decomposition"] is False and calls[0]["output_format"] == "png" + ) + assert "stream" not in calls[0] and "sequential_image_generation" not in calls[0] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] == "ready" + and len(calls) == 1 + ) + original = ws.file(ident, "original.png").read_bytes() + ws.file(ident, "generated.png").unlink() + assert ws.inspect(ident)["status"] == "damaged" + assert ( + ws.operate(ident, "collect", expected_revision=1)["status"] == "ready" + and len(calls) == 1 + ) + assert ws.file(ident, "original.png").read_bytes() == original + with Image.open(ws.file(ident, "generated.png")) as image: + image.load() + assert image.size == (1280, 720) + + +def test_lost_provider_stdout_recovers_only_saved_response_and_ambiguous_post_never_repeats( + work, provider, monkeypatch +): + ws, calls = connect(monkeypatch, work, provider) + call = ImageWorkspace._call + + def lost(self, record, action): + result = call(self, record, action) + if action == "submit": + raise RuntimeError("caller lost after response saved") + return result + + monkeypatch.setattr(ImageWorkspace, "_call", lost) + ident = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + and len(calls) == 1 + ) + assert ( + ws.operate(ident, "collect", expected_revision=1)["status"] == "ready" + and len(calls) == 1 + ) + monkeypatch.setattr(ImageWorkspace, "_call", call) + + def timeout(payload, *_): + calls.append(payload) + raise TimeoutError("unknown remote effect") + + monkeypatch.setattr(provider, "api", timeout) + other = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + assert ( + ws.operate(other, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + assert not ws.operate(other, "collect", expected_revision=1)["ok"] + assert ( + ws.operate(other, "submit", expected_revision=1)["status"] + == "submission_unknown" + and len(calls) == 2 + ) + + +@pytest.mark.parametrize( + "malformed", + [ + {"data": None}, + {"data": "unexpected"}, + {"data": [None]}, + {"data": [{}], "usage": []}, + {"data": [{}], "usage": {"generated_images": True}}, + {"data": [{"b64_json": "invalid"}], "usage": {"generated_images": 1}}, + ], +) +def test_malformed_paid_response_stays_unknown_and_cannot_trigger_a_second_post( + malformed, work, provider, monkeypatch +): + ws, calls = connect(monkeypatch, work, provider) + + def malformed_api(payload, *_): + calls.append(payload) + return {"model": provider.MODEL, **malformed} + + monkeypatch.setattr(provider, "api", malformed_api) + ident = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + result = ws.operate(ident, "submit", expected_revision=1) + assert result["status"] == "submission_unknown" + journal = json.loads((ws._bundle(ident) / "image-submission.json").read_text()) + assert journal["state"] == "submission_unknown" + assert not ws.operate(ident, "collect", expected_revision=1)["ok"] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + assert len(calls) == 1 + + +@pytest.mark.parametrize("invalid_json", [False, True]) +def test_exact_http_response_survives_interpretation_failure_without_a_second_post( + invalid_json, work, provider, monkeypatch +): + real_api = provider.api + ws, _ = connect(monkeypatch, work, provider) + pixels = BytesIO() + Image.new("RGB", (1280, 720), "white").save(pixels, format="PNG") + body = ( + b"not JSON" + if invalid_json + else json.dumps( + { + "model": provider.MODEL, + "data": [{"b64_json": base64.b64encode(pixels.getvalue()).decode()}], + "usage": {"generated_images": 1, "output_tokens": 3600}, + } + ).encode() + ) + opened = [] + + class Response(BytesIO): + status = 200 + headers = {"x-tt-logid": "synthetic-request-id"} + + class Opener: + def open(self, request, timeout): + assert request.full_url == provider.BASE_URL + "/images/generations" + assert request.method == "POST" and timeout <= 70 + opened.append(request.full_url) + return Response(body) + + monkeypatch.setattr(provider, "build_opener", lambda *_: Opener()) + monkeypatch.setattr(provider, "api", real_api) + cache_response = provider.cache_image_response + + def interrupted(*_): + raise OSError("interrupted after raw response persistence") + + monkeypatch.setattr(provider, "cache_image_response", interrupted) + ident = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + root = ws._bundle(ident) + assert (root / "image-api-response.body").read_bytes() == body + metadata = json.loads((root / "image-http-response.json").read_text()) + assert metadata["body_sha256"] == hashlib.sha256(body).hexdigest() + assert metadata["request_id"] == "synthetic-request-id" + assert metadata["plan_digest"] == ws.inspect(ident)["plan_digest"] + assert not (root / "image-response.json").exists() + monkeypatch.setattr(provider, "cache_image_response", cache_response) + result = ws.operate(ident, "collect", expected_revision=1) + assert result["status"] == ("submission_unknown" if invalid_json else "ready") + assert len(opened) == 1 + if not invalid_json: + assert ws.file(ident, "original.png").read_bytes() == pixels.getvalue() + + +def test_transport_diagnostic_keeps_error_classes_without_echoing_secrets( + work, provider, monkeypatch +): + from urllib.error import URLError + + real_api = provider.api + ws, _ = connect(monkeypatch, work, provider) + + class Opener: + def open(self, *_args, **_kwargs): + raise URLError(OSError("synthetic-not-a-real-credential")) + + monkeypatch.setattr(provider, "api", real_api) + monkeypatch.setattr(provider, "build_opener", lambda *_: Opener()) + ident = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + text = (ws._bundle(ident) / "image-submission.json").read_text() + journal = json.loads(text) + assert journal["error_type"] == "URLError" and journal["reason_type"] == "OSError" + assert "synthetic-not-a-real-credential" not in text + + +def test_real_image_loopback_rejects_foreign_goal_revision_and_mixed_file_identity( + work, provider, monkeypatch +): + ws, calls = connect(monkeypatch, work, provider) + ident = ws.prepare(brief(), source_directory=ws.media.project)["image_id"] + server = ChatHTTPServer(("127.0.0.1", 0), ChatRequestHandler) + server.registry_path, server.runtime_root = work[1], ws.media.runtime_root + server.selected_goal_id, server.verbose = "media-demo", False + worker = threading.Thread(target=server.serve_forever, daemon=True) + worker.start() + + def post(body): + client = http.client.HTTPConnection(*server.server_address) + client.request( + "POST", + "/api/chat/content-media", + json.dumps(body), + {"Content-Type": "application/json"}, + ) + result = client.getresponse() + data = json.loads(result.read()) + client.close() + return result.status, data + + try: + assert ( + post({"goal_id": "media-demo", "action": "image_list"})[1]["images"][0][ + "image_id" + ] + == ident + ) + base = { + "goal_id": "media-demo", + "action": "image_submit", + "image_id": ident, + "expected_revision": 1, + } + for change in [ + {"goal_id": "foreign"}, + {"expected_revision": True}, + {"path": "private"}, + {"generation_id": "other"}, + ]: + assert post({**base, **change})[0] == 400 + code, result = post(base) + assert code == 200 and result["status"] == "ready" and len(calls) == 1 + client = http.client.HTTPConnection(*server.server_address) + client.request( + "GET", + f"/api/chat/content-media/file?goal_id=media-demo&image_id={ident}&file=generated.png", + headers={"Range": "bytes=0-7"}, + ) + response = client.getresponse() + assert response.status == 206 and response.read() == b"\x89PNG\r\n\x1a\n" + client.close() + assert str(ws.media.project) not in json.dumps(result) + finally: + server.shutdown() + server.server_close() + worker.join(timeout=3) From ee380c58657121dca25792d1b38c1141ef274620 Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Mon, 19 Oct 2026 21:50:13 +0800 Subject: [PATCH 3/6] docs(content-ops): explain image recovery and qualify workbench evidence Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../protocols/content-ops-media-v0.md | 54 ++++++++++++- loopx/capabilities/content_ops/README.md | 11 ++- packages/loopx-media/README.md | 76 +++++++++++++++++- .../loopx-media/docs/image-after-desktop.png | Bin 0 -> 119813 bytes .../loopx-media/docs/image-after-phone.png | Bin 0 -> 45531 bytes .../loopx-media/docs/image-phone-download.png | Bin 0 -> 48217 bytes .../docs/image-unavailable-desktop.png | Bin 0 -> 123512 bytes .../docs/image-unknown-desktop.png | Bin 0 -> 134924 bytes 8 files changed, 135 insertions(+), 6 deletions(-) create mode 100644 packages/loopx-media/docs/image-after-desktop.png create mode 100644 packages/loopx-media/docs/image-after-phone.png create mode 100644 packages/loopx-media/docs/image-phone-download.png create mode 100644 packages/loopx-media/docs/image-unavailable-desktop.png create mode 100644 packages/loopx-media/docs/image-unknown-desktop.png diff --git a/docs/reference/protocols/content-ops-media-v0.md b/docs/reference/protocols/content-ops-media-v0.md index 92834b80f7..4776a2a693 100644 --- a/docs/reference/protocols/content-ops-media-v0.md +++ b/docs/reference/protocols/content-ops-media-v0.md @@ -183,8 +183,8 @@ infer publication approval or start a scheduling loop. The existing runtime protocol accepts additive `generation.*` operations only through the separately declared `content_media_generate` permission. A normal render request is unchanged and has no network/account effects. The bounded -provider supports Seedance 2.5 video only; image generation, other models and -unopened account access remain unavailable. Setup, process-local credentials, +video provider supports Seedance 2.5; the separate single-image path is described below. +Other models and unopened account access remain unavailable. Setup, process-local credentials, supported frames, prices and recovery are in the [provider guide](../../../packages/loopx-media/README.md#optional-generated-footage). @@ -224,3 +224,53 @@ observation, unknown submission and damaged local artifacts remain separate. Creative quality, continuity, visible watermark, audience comprehension and actual billed cost require their own evidence; no generated clip changes content publication state. + +## Optional single-image intents + +`content-ops image prepare/submit/collect/inspect/list` shares this capability, +Goal-local workspace and optional provider. The `content_media_image` TypeScript +owner validates `content_ops_image_plan_v0`, its immutable digest, a dated +per-image nominal quote and local transitions. Provider-specific account access +is checked separately. This is a synchronous image request, not a video job: +there is no task ID, cloud status polling or remote cancellation contract. + +The plan contains `title`, pinned `model`, `prompt`, explicit `width`/`height`, +`watermark`, zero or one `references` entries and `quote`. A reference binds its +relative `path`, exact `sha256`, opaque `source_ref` and explicit `public_safe` +classification. Quote fields are `cny_per_image`, timezone-aware `checked_at`, +official `source_url` and `max_estimated_cny`. The quote must be current within +24 hours and fit the declared nominal bound; it is neither authorization nor +a guaranteed maximum bill. Supported model, dimensional/upload limits, +separate image credential and lifecycle setup are in the +[provider guide](../../../packages/loopx-media/README.md#optional-generated-images). + +The parent persists `submitting` before the optional provider effect. The +provider journals the intent before POST, then fsyncs a private response cache +before returning. Exact received HTTP bytes, digest and request-ID observations +are private, bounded recovery evidence; interpretation failure can be retried +locally from that saved response. Loss before response persistence cannot be +recovered by issuing another POST. Missing provider/key keeps `prepared`; confirmed provider +rejection remains `rejected`; an unconfirmed effect remains +`submission_unknown`. None of these states permits automatic paid retries. +`collect` recovers only cached bytes, without network activity. An intact ready +result is reused; damage can be repaired from the original response, with the +original accepted SHA preserved. Unknown external effects without cached bytes +require reconciliation before choosing any new intent. + +The result binds exactly one generated image to the request model and digest, +full PNG decode and requested geometry. The core verifies `original.png` and +normalized `generated.png` bytes/hashes before readiness or download. Reported +generated-image/token counts, caller's nominal estimate and unknown invoice +remain distinct. Watermark request, visual watermark inspection and creative +acceptance are separate. Source metadata and returned paths are not exposed. + +The existing HTTP route adds `image_list` and revision-bound +`image_submit/collect`. The fixed-file route accepts exactly one composition, +generation or image ID and preserves selected-Goal, origin, byte-range and +no-store boundaries. The packaged workbench can generate an Agent-prepared +intent, display unavailable/unconfirmed states, recover saved bytes and show +verified image/downloads. It never requests arbitrary local paths or a key. +Reuse a resulting image as an ordinary hash-bound composition asset, retaining +its illustration boundary and adding precise text through local rendering. +This path does not approve or publish content, qualify learning effects or +change long-horizon Goal state. diff --git a/loopx/capabilities/content_ops/README.md b/loopx/capabilities/content_ops/README.md index 0667ed0acd..e90a483777 100644 --- a/loopx/capabilities/content_ops/README.md +++ b/loopx/capabilities/content_ops/README.md @@ -46,7 +46,16 @@ task readback and verified local files. It never repeats an ambiguous paid submission or equates stopping observation with remote cancellation. Use the saved movie as a source-bound excerpt in a local composition; precise text and diagrams remain local. See the same provider guide for credentials, cost -estimates, unavailable states and recovery. Image generation is not qualified. +estimates, unavailable states and recovery. + +`loopx content-ops image` prepares and submits one Seedream 5.0 Pro image with +an optional immutable reference through the same extension. **Generated images** +shows the draft, consequence, unavailable/unknown states and verified downloads. +This synchronous route uses a separate image credential, has no cloud task +polling and recovers saved responses without repeating a paid request. Compose +the resulting hash-bound image with exact local text; creative/source acceptance +and billing remain separate from byte readiness. See the provider guide's +[image setup and recovery](../../../packages/loopx-media/README.md#optional-generated-images). `loopx content-ops reference` reads an existing private source/style catalog, prepares version-checked capture/correction artifacts, retrieves topic/structure diff --git a/packages/loopx-media/README.md b/packages/loopx-media/README.md index c7bbe22941..6388c7bc81 100644 --- a/packages/loopx-media/README.md +++ b/packages/loopx-media/README.md @@ -2,7 +2,7 @@ `loopx-media` is an optional distribution for the existing **content-ops** capability. It renders an admitted composition and can execute explicitly submitted, -bounded cloud video intents. It does not choose sources, run commands from +bounded cloud video or image intents. It does not choose sources, run commands from a brief or publish a movie. Shared TypeScript admission and transitions remain in LoopX core. Pillow, FontTools, FFmpeg and platform speech are specialized local computation. @@ -40,8 +40,8 @@ decode. Images retain their orientation; video excerpts retain aspect ratio. Installed fonts must cover the visible text, with CJK line breaking supported. RTL shaping and arbitrary font discovery are not qualified. macOS speech is optional; other platforms require supplied audio or explicit silence. -No cloud voice, image-generation or game engine is bundled here. The bounded -Ark video route below is explicit and optional; it is never a render fallback. +No cloud voice or game engine is bundled here. The bounded Ark video and image +routes below are explicit and optional; neither is a render fallback. Excerpt and Blender layouts display the title and source boundary; nonempty `body` text is explicitly refused. Preserve a needed qualifier in those visible @@ -259,6 +259,76 @@ id was recovered, the status stays `submission_unknown` with an explicit reconciliation requirement. There is no automatic paid retry. A genuinely new shot requires a new prepared intent after reviewing the original outcome. +## Optional generated images + +Version 0.4 adds a single-image path in the same **Content production** +workbench. Install or explicitly upgrade this distribution and register the +current manifest using the lifecycle above. Load a separately authorized +`ARK_IMAGE_API_KEY` into the LoopX process; optional `ARK_IMAGE_BASE_URL` must +equal the standard Ark endpoint. The video `ARK_API_KEY` is never borrowed. +Neither the browser nor a prepared plan stores or displays credentials. + +An Agent prepares `content_ops_image_plan_v0` with title, prompt, explicit +width/height, watermark choice, `references` and a current quote. This bounded +path pins `doubao-seedream-5-0-pro-260628`, opaque PNG, no layer decomposition +and standard prompt optimization. It accepts text or one public-safe PNG/JPEG +reference, at most 4 MiB, with relative path, exact SHA256 and opaque provenance. +Reference alpha is composited on white; the private journal retains both the +original and uploaded PNG hashes. Output dimensions are 720–2560 per side, +with total area 921,600–4,624,220 pixels and aspect ratio 1:16–16:1. + +```sh +loopx content-ops image prepare --goal-id GOAL \ + --plan-json image.json --source-directory ./authorized-images +# This next command performs one paid request under the current authorization. +loopx content-ops image submit --goal-id GOAL \ + --image-id IMAGE_ID --expected-revision 1 +loopx content-ops image inspect --goal-id GOAL --image-id IMAGE_ID +# Recover an already saved response; this command never generates another image. +loopx content-ops image collect --goal-id GOAL \ + --image-id IMAGE_ID --expected-revision 1 +``` + +The quote has `cny_per_image`, `checked_at`, official `source_url` and +`max_estimated_cny`; it expires after 24 hours. Verify the current model and +[price table](https://ark.volcengine.com/docs/model-pricing) for the actual +dimensions. The nominal estimate does not grant spending authority or guarantee +an invoice limit. The supported first reference is free under that rate basis; +other pricing modes and multiple outputs are outside this path. + +The synchronous request has no cloud task ID, polling or cancellation. A +durable submission journal precedes POST; a saved response precedes stdout. +When received, exact HTTP response bytes and their digest are persisted before +interpretation, so local interpretation failure can be recovered without a new +POST. Header/request-ID observations and sanitized error classes are private +diagnostic evidence. Loss before a complete response is saved remains unknown. +After timeout or malformed response the status remains `submission_unknown`. +Repeated submit does not POST again. `collect` only reads that intent's saved +response and can repair damaged local output. If no response was saved, the +external outcome needs reconciliation before a genuinely new intent is chosen. +Missing provider/credential leaves the draft prepared and sends nothing. + +The workbench displays the brief, upload/usage consequence, status, nominal +cost and verified `original.png` and `generated.png` downloads. Full PNG decode, +exact dimensions and core-owned hash readback qualify local byte readiness; +creative quality, visible watermark, source faithfulness and actual invoice +remain separate judgments. Reuse `generated.png` as a hash-bound composition +asset; render precise labels, diagrams and subtitles locally. A generated +illustration must not be presented as a recorded product or benchmark trace. +Disabling the same extension stops new image/video effects and keeps saved +results readable. No separate image service or settings owner is introduced. + +![Image workbench with a synthetic saved-response fixture](docs/image-after-desktop.png) + +Packaged workbench with a disposable Goal and synthetic HTTP response using a +locally rendered poster. This demonstrates saved-response collection and +download, **not live Seedream output or creative acceptance**. The +[390px entry view](docs/image-after-phone.png) and +[scrolled download view](docs/image-phone-download.png) use the same backend. +[Unavailable credentials](docs/image-unavailable-desktop.png) retain the draft; +an [unconfirmed external request](docs/image-unknown-desktop.png) has no paid +resubmit control. + Ark's DELETE both cancels queued work and erases finished task records, without a documented atomic queued-only precondition. The provider therefore retains the task and reports `atomic_cancellation_unavailable`; it does not race a GET diff --git a/packages/loopx-media/docs/image-after-desktop.png b/packages/loopx-media/docs/image-after-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..5b79b8cd242e8d100afff3cffa771d15d2166027 GIT binary patch literal 119813 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 VH8+*GdE;Lws)tV~KT|Zi{$I`Mj-mhn literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/image-after-phone.png b/packages/loopx-media/docs/image-after-phone.png new file mode 100644 index 0000000000000000000000000000000000000000..c6a56a2e0e9f7e9fd3199fe4d8401e075e6a2d75 GIT binary patch literal 45531 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 RDu9QFVeLe}YPmD<-vE0dq`UwC literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/image-phone-download.png b/packages/loopx-media/docs/image-phone-download.png new file mode 100644 index 0000000000000000000000000000000000000000..d98430204a34a34080c6c092b4ca554d15bdb4e3 GIT binary patch literal 48217 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%0AU{qs~p7nr(; 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 literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/image-unknown-desktop.png b/packages/loopx-media/docs/image-unknown-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..4a4464cae86f70a3b431d644aa23923a5b40635d GIT binary patch literal 134924 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 literal 0 HcmV?d00001 From 637dca1c2eb5716ccb7127a6ef517c2f35671a11 Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Tue, 20 Oct 2026 19:30:02 +0800 Subject: [PATCH 4/6] fix(content-ops): move production into Goal artifacts and pin result versions Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../content-generated-footage.tsx | 3 +- .../content-generated-images.tsx | 5 ++- .../content-media-workbench.css | 10 ++++- .../content-media-workbench.tsx | 26 +++++++----- .../content-production-results.tsx | 39 ++++++++++++++++++ .../goal-capability-settings.tsx | 11 ++--- .../goal-managed-results.tsx | 3 +- .../personal-workspace-page.tsx | 20 ++++++--- .../protocols/content-ops-media-v0.md | 29 ++++++++++++- loopx/capabilities/content_ops/README.md | 14 +++++-- loopx/capabilities/content_ops/generation.py | 11 +++-- loopx/capabilities/content_ops/images.py | 13 +++--- loopx/capabilities/content_ops/media.py | 41 +++++++++++++------ loopx/presentation/content_media_api.py | 26 ++++++++++-- packages/loopx-media/README.md | 25 ++++++++--- tests/test_content_media.py | 13 ++++++ tests/test_content_media_images.py | 40 ++++++++++++++++++ 17 files changed, 264 insertions(+), 65 deletions(-) create mode 100644 apps/presentation/dashboard/src/features/personal-workspace/content-production-results.tsx diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx index ed3c593915..ac609c31d9 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-footage.tsx @@ -76,7 +76,8 @@ export function ContentGeneratedFootage({goalId}: {goalId: string}) { expired: copy("云端任务已超时", "Cloud task expired"), cancelled: copy("云端已取消", "Cancelled in the cloud"), damaged: copy("本机文件校验失败", "Local file verification failed"), }; - function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id: goalId, generation_id: current!.generation_id, file: name})}`;} + function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id: goalId, generation_id: current!.generation_id, file: name, + revision: String(current!.revision), sha256: current!.result!.files[name].sha256})}`;} return

{copy("生成镜头", "Generate footage")}

{copy("用已准备的提示词和参考帧生成素材,再在本机添加准确文字、图表和配音。", "Generate source footage from a prepared prompt and reference frames. Add exact text, diagrams and narration locally.")}

diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx index fd20b6bf15..2c97da6909 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx @@ -52,7 +52,8 @@ export function ContentGeneratedImages({goalId}: {goalId: string}) { submission_unknown:copy("请求结果未知","Request outcome unknown"),rejected:copy("请求被拒绝","Request rejected"), ready:copy("图像已保存","Image saved"),damaged:copy("本机图像校验失败","Local image verification failed"), }; - function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id:goalId,image_id:current!.image_id,file:name})}`;} + function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id:goalId,image_id:current!.image_id,file:name, + revision:String(current!.revision),sha256:current!.result!.files[name].sha256})}`;} return

{copy("生成图像","Generate an illustration")}

{copy("让 Agent 准备提示词与参考图,在本机保留生成素材,再添加准确文字与图表。","Have your Agent prepare the prompt and reference. Save the generated source locally, then add exact text and diagrams.")}

@@ -69,7 +70,7 @@ export function ContentGeneratedImages({goalId}: {goalId: string}) { {["submitting","submission_unknown","damaged"].includes(current.status) ? <>

{copy("该请求不能按云端任务查询或自动重发。可读取本机已保存的响应;若没有响应,须先核实服务端用量。","This request cannot be polled as a cloud task or automatically resubmitted. Read its saved local response; if absent, reconcile provider usage first.")}

: null} {current.error_code && !error ?

{copy("本次操作尚未完成,草稿和原请求状态已保留。","The operation is incomplete; the draft and original request state are retained.")}

: null} - {current.status === "ready" && current.result ? <>{current.title} + {current.status === "ready" && current.result ? <>{current.title} setError(copy("无法读取这个版本的图像,请重新读取。","Cannot read this image version. Recheck the saved result."))} />

{copy("AI 生成的示意素材;完整解码通过,内容含义仍需检查。","AI-generated illustration. Full decode passed; inspect its meaning.")}

: null}
{copy("提示词、来源与用量","Prompt, sources and usage")}

{current.prompt}

diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css index 36e1399f1a..50f1fbf6ff 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.css @@ -1,4 +1,10 @@ -.content-production-panel {padding:0 24px 24px;} +.content-production-results {padding:0 0 24px;} +.content-production-results h2 {margin:0; font-size:var(--text-heading);} +.content-production-actions {display:flex; flex-wrap:wrap; gap:8px;} +.content-production-actions button {min-height:44px; padding:8px 12px; border:1px solid var(--pw-line-strong); border-radius:6px; background:var(--pw-card); color:inherit; font:inherit; font-size:var(--text-body); cursor:pointer;} +.content-production-actions button:focus-visible {outline:2px solid var(--pw-blue); outline-offset:3px;} +.content-production-results > details {padding:16px 0; border-bottom:1px solid var(--pw-line); font-size:var(--text-body);} +.content-production-results > details > summary {cursor:pointer; min-height:44px; align-content:center;} .content-media {padding:16px 0 24px; border-bottom:1px solid var(--pw-line);} .content-media-heading, .content-media-title {display:flex; justify-content:space-between; align-items:flex-start; gap:16px;} .content-media h3, .content-media h4 {margin:0 0 6px; font-size:var(--text-lead); font-weight:600;} @@ -26,4 +32,4 @@ .content-media-tabs button {min-height:44px; padding:8px 12px; font:inherit; color:inherit; border:1px solid transparent; border-radius:6px; background:transparent; cursor:pointer;} .content-media-tabs button[aria-pressed=true] {background:var(--pw-hover); border-color:var(--pw-line-strong);} .content-media-tabs button:focus-visible {outline:2px solid var(--pw-blue); outline-offset:3px;} -@media(max-width:680px) {.content-production-panel {padding:0 16px 20px;}.content-media-workspace {grid-template-columns:minmax(0, 1fr);}.content-media nav {flex-direction:row; overflow-x:auto;}.content-media nav button {min-width:160px;}.content-media-heading, .content-media-title {flex-wrap:wrap;}} +@media(max-width:680px) {.content-media-workspace {grid-template-columns:minmax(0, 1fr);}.content-media nav {flex-direction:row; overflow-x:auto;}.content-media nav button {min-width:160px;}.content-media-heading, .content-media-title {flex-wrap:wrap;}} diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx index 27a0d4abe3..654878e72a 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-media-workbench.tsx @@ -20,6 +20,7 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { const seconds = (value: number) => `${Number(value.toFixed(2))}s`; const [library, setLibrary] = useState(null), [selectedId, setSelectedId] = useState(""); const [error, setError] = useState(""), [busy, setBusy] = useState(false); + const [watching, setWatching] = useState(false); const [view, setView] = useState<"composition" | "footage" | "images">("composition"); const pending = useRef(false), generation = useRef(0), readSequence = useRef(0); const selected = library?.compositions.find(item => item.composition_id === selectedId) ?? library?.compositions[0]; @@ -35,33 +36,36 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { try { const value: Library = await request("list"); if (current === generation.current && sequence === readSequence.current) {setLibrary(value); setError("");} - } catch {if (current === generation.current && sequence === readSequence.current) setError(copy("作品暂不可读,请重新读取。", "Cannot read compositions. Recheck the workspace."));} + } catch {if (current === generation.current && sequence === readSequence.current) {setWatching(false); setError(copy("作品暂不可读,请重新读取。", "Cannot read compositions. Recheck the workspace."));}} } useEffect(() => { - generation.current += 1; setLibrary(null); setSelectedId(""); pending.current = false; setBusy(false); void reload(); + generation.current += 1; setLibrary(null); setSelectedId(""); pending.current = false; setBusy(false); setWatching(false); void reload(); return () => {generation.current += 1;}; }, [goalId]); - const running = library?.compositions.some(item => item.status === "rendering"); + const rendering = selected?.status === "rendering"; useEffect(() => { - if (!running) return; + if (!watching) return; + if (!rendering) {setWatching(false); return;} const timer = setInterval(() => void reload(), 2000); return () => clearInterval(timer); - }, [running, goalId]); + }, [watching, rendering, goalId]); async function operate(action: "render" | "cancel") { if (!selected || pending.current) return; - pending.current = true; setBusy(true); setError(""); + pending.current = true; setBusy(true); setError(""); setWatching(false); const current = generation.current; try { const value = await request(action, selected); if (current !== generation.current) return; await reload(); + if (current === generation.current && action === "render" && value.ok && value.status === "rendering") setWatching(true); if (!value.ok) setError(copy("渲染器未就绪。请启用已验证的本机视频扩展后重试。", "Renderer unavailable. Enable the verified local video extension, then retry.")); } catch {if (current === generation.current) setError(copy("操作未确认。先重新读取,避免重复启动。", "Operation unconfirmed. Recheck before retrying."));} finally {if (current === generation.current) {pending.current = false; setBusy(false);}} } - function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id: goalId, composition_id: selected!.composition_id, file: name})}`;} + function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id: goalId, composition_id: selected!.composition_id, file: name, + revision: String(selected!.revision), sha256: selected!.result!.files[name].sha256})}`;} const status: Record = { - prepared: copy("待制作", "Ready to render"), rendering: copy("正在制作", "Rendering"), ready: copy("作品已生成", "Video ready"), + prepared: copy("待制作", "Ready to render"), rendering: copy("已请求制作,等待结果", "Render requested; awaiting result"), ready: copy("作品已生成", "Video ready"), failed: copy("制作失败,可修复后重试", "Render failed; repair and retry"), cancelled: copy("已取消,可重新制作", "Cancelled; ready to retry"), interrupted: copy("上次制作中断,可重新制作", "Previous render interrupted; retry available"), damaged: copy("结果校验失败,请重新制作", "Result verification failed; render again"), }; @@ -73,7 +77,7 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) {
{view === "composition" ?

{copy("制作视频", "Produce a video")}

-

{copy("让 Agent 准备脚本、来源和时间线,在这里制作并查看作品。", "Have your Agent prepare the story, sources and timeline. Render and review the result here.")}

+

{copy("脚本与来源由当前对话准备;这里只读取已保存状态,制作后可重新读取。", "The current conversation prepares the story and sources. This view reads saved state; recheck after rendering.")}

{error ?

{error}

: null} {!library && !error ?

{copy("正在读取作品…", "Loading compositions…")}

: null} @@ -81,12 +85,12 @@ export function ContentMediaWorkbench({goalId}: {goalId: string}) { {library && !selected ?

{copy("还没有准备好的作品。把想讲的内容交给 Agent,它会通过 Content-Ops 保存可制作的脚本。", "No prepared compositions yet. Tell your Agent what to explain; it can save a renderable brief through Content-Ops.")}

: null} {selected ?
+ disabled={busy} onClick={() => {setWatching(false); setError(""); setSelectedId(item.composition_id);}}>{item.title}{seconds(item.duration_seconds)} · {status[item.status] ?? item.status})}

{selected.title}

{status[selected.status] ?? selected.status} · {seconds(selected.duration_seconds)} · {copy("修订", "Revision")} {selected.revision}

{selected.status === "rendering" ? : }
{hasBlender && selected.status !== "ready" ?

{copy("包含 Blender 三维场景。制作需要已安装的本机 Blender 扩展依赖;作品会保留可编辑工程与颜色、深度画面。", "Includes Blender scenes. Rendering needs the local Blender extra; the editable project, color and depth frames are retained.")}

: null} - {selected.status === "ready" && selected.result ? <>

BqKf>t-}#+BU+kVk3}V;p!gT;me!!j^h2O4_ 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 HJr4X26qK1M literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/footage-after-phone.png b/packages/loopx-media/docs/footage-after-phone.png new file mode 100644 index 0000000000000000000000000000000000000000..c69c8518597427ae5616962b62585b21b1894671 GIT binary patch literal 45334 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 JBIfqk{{j3nnbZIP literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/footage-before-desktop.png b/packages/loopx-media/docs/footage-before-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..cee1221b4ef8e66d3b069d8d7da0fa5989b4c1c2 GIT binary patch literal 106845 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%0DC(WNV&e{8Rt}Afg!_q5{(9W9e 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 literal 0 HcmV?d00001 diff --git a/packages/loopx-media/docs/footage-phone-download.png b/packages/loopx-media/docs/footage-phone-download.png new file mode 100644 index 0000000000000000000000000000000000000000..e470104e546fd778799a2f23a17e3ea53cc6e8dc GIT binary patch literal 57612 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 F9dVQfvVvi`V3q&N~wC|FNTT0Yr ztGPzeMk4-643iB$L6*Vn=XN@>q|>Xli@(L>+^{Lupcf|in`pXZbv~D*snN(fXWf`W z(};E)qb}!#X*2W}Gp4g*f%J?#Y+q^F^M#zG@^L)Jt1 z&+3=?HTZ)!9|tgH^G`Zssk z{Xf+R8|LqfxAf~foisSImdiga6!Dn#iHkj`$p54oTF{Y|R7GKjO$6XVt#|L$j zQnRhg@T7fThs|{s7y(U%`H}NjN;Ne!F83+6YR43d5jU4KX~>{;msF@dt7j!nO*eYO z-LUqlB#ijFP%hHDM@+TAeZ2>-=u@=66;)RYUDOCRwfY#OYf zpBXIIHFYh3Sd|-Kr5|KT@lLFo-Ba9A5N_D#R9A&?Vz{jG@#OdtSEr~vi1KDPUU)_7 z3ud-z#I+eu(Di$x2Hx7W=c-L-`P_%eDG;S>=C>hAi(*lYbgpDCM(~e?N!NB3hIHR~ z!u;U2#cA|DBWtnu>!oju>{^zB}u$XT=8PRQ!gmcze9?Z}e%= z8pa_fHFh!IxTq)|Ao1pNHH#st4-i3!P+Ca!x-LW}X0{jlzx?nsQJEWMF;BcxDN}Caq708%@7hNyGa@v}`gHKdHVtEW@}WGp$e&bLys2=|GhY z=aZfoH=ix%iRQ{SBAWS3QsdMV(%PmvZz;c#M6}{8^Y$Q6t);SoD?=@8of9Bst9b$H z()sl$p|6V_mDDW=+DhD5%h?twgEDyfwann(d0UOg_ok9uQo~s+{u<62!?n~77pYvk z_ojkZ2qBdHHo~cFSyzbry|LFgE_kYixoMuRwX5VQf#N*=c>OXy2KJoumYU(FyCD^I za%UJ*`zPDjG$hr&?eo1{E67O#+~DS#lBCxCmoH3N{Q$h3sboGTJE@$OO_gU?8Ii-m z`Uz|1Zx73-A_-)$>zg2%_YzUTN+9gXyHk8UW;#!6&HdFR=K%`OVPS;1wW1(Tuoh#o;#GY3ozh7IKmx!!nJ zBCP4sj)!*#Msz(Lr(NL1mV_ydNhWzC=jqpet{O)?rLgcI$guWYc=)30@g;hNTs72s z3i?U-P?dbepU-_cy1A3hg6>;VDjTCBT*uBz1!^-+AK1y(2VI%xo-e5nj!%agj@b!)GQ)f)T8Mftos1P170rt}?-PP(Gt; z*a1e<%#f>NaHmQ&9H6(@&Wtw7Wqp;6cIDM0Jkryw>e-NO zOuVtu{vEH?p*f!?$J&Y7pgXWeu%n4YrrEV9iOx&pkT`I2N616HOyblE;rl>szCpxh zLS%B0t&ioGl)JZ(!RH(Yp-@>pH-#8cm52oIT&njbW@lg`Aw@KredH6$!P~Y^*CxNBXoPlix6d6EdsT zXBTRZ4^mBZ)+>92*Jc@rL{)&@1DWVeChPpoIt#8$0@w2FY%m(fFEQ`nG$XWvP}O*& z(O2t)`aD&Y^>0QscGqSIB-2@w7%&iz3m3|Da!(^`{mk2GxGC1?0o2B^$kE(>Y++X# zZ&GOzzP)`{V(9JlGKnowJ5s(R{e!7(XY3UT8w*N>93N0VxRMfh0k-u`Db14!+gAp8 z=57q{h3wRU8ERj;R9cSP@~kE|G~#S@kT|WJWg{9!P0>@$XmOo!I9Hr(WmsK3`w#H@ zOQ*V-$fit}F4)``<@Ut<&S?Iux)@zom(%g$FEuRIx{zq_7Qd8q8Dm1Yq%8K>Rb!*= z`Gw5}W^CJCQZLCGRtRM{fxz&_>rsEFVPXU<#}LzzJ=0E|I(4bddD(V!Gn~FR*+p(W zo?Nn!=A-7vmy8xWXr{=8ntpAYiv}>xUkk%IxL^J38whVvPhW6=jqZ3kw6y7fQmVOL zxz@&shd{#7gabmt*Nh`YVVkH~EHDM3KR1k~jHy3!ke^D_LX!};1TA0pmop=^M`~RJ zcN|a0Yl+ycDYUx#w+j>C+ynabdD6`{(x0G#S{zElj_|>YjuKNwz1Jm@)t<$r?>ySy zlW}nHH*uaBK?WoqJ{Q;0O+o^{t+@`+SDcsXOHGs6Pj!%Ti6EoYR`dCdJ&$Q<(5MEL5BhN9N{MyRTJ6MBw zGA}e_D*}n@q09?%)Z zL4bzRBmNLoyNro?4Pf zB^w$-Q&>Kw=ylnMA72?9g73KPHq9LCjzYu7x*H!K!)Nai7{N=;H)_Uc+hgck% z3nhc(r?93r+PzE=@IQS+tQkY^Jw~;p*a5NXxp`Wo)!wS1*iSb%l9|mXpcSdcS6>&V zr`$g9**bnJeuy5fpmxd>E38q)GO{sCh$>V!;>&>_jHq-u_vrD89+q$eZZqT3mT4v_ zK4`_o>VnHDI^hdNP?pfU_u!kCVXW4S2#dk4gI1j2`AED0+&=|0*ebXYK$)4LEMyP zZ60s2`PZ;$hV#b`q^3~@V$l$qmD$!P9aRmU{OH#1y2vHn%XWMn%5Hu^?B>Vn_(@8h ztksZV_d3!W%(Bn~FLw|5ncU(~XPKpqRIfi;9l@gj>7njsrX;P2m|D^nh=d^k@D=2u zwvF{_WHe?JQk1heqxIc?%iiO;DPmvbpr)qI*P^>7G4vgm+srFB=2ANLZ3hPzu37z< znuK*U+RBN9JIu3u!85gN{BKGn3~kIy9L6b?xDp|(^JE9yc$G8EX78Ai)M#6QkC=@%af8>^pF-L5(uGdEfnia9!`XG;E&jugbaN0QEXeM zH||KBnYT7o-n|H@B3V=#=R=kExN{Q8Y7viNiP7h56fizKExaV|rK2yNRau)x8FAnw zP8nPIGVVJR?I&+zqqi8SRb)P>Fx~xC-^j{{uC2e5p$XY8K766BFjZ+>ur=(u*c8B7 z=z(o!X=(Yjp}M_I7n6r%A|O>BhANe~%fW23r^{ktWqdfIZ`;T*Ws2nORd>R%r+v61 zT!?WTfq0vklZYMoX#8C}_sZfTtf zXWV#400#oN;L^hk-Lb;*VTG;Gse>DDo4dO{`8u{^*yA>QEo>^4HJNufp=47`+1SyF z1*&k-3UMrP_&7n+y)XkTSkDX~nwNzAbF>L*rcRr(~#Fl8_AG}gpaf$QlHVf7EMs;b;QJUs6Z*DP04lEBYaq<%B)&L zvn^5aH=)JUcm}py>c3fY%@iXP_m{M$JDO=(3B)~&6>`vQ>-mg&3NHeOmVkhSaP3S! zFZ-)lH5J!7qc(;*_OCgh{<^4T(v{Q^+ht`|R;?mY{;D!E3OhR{YooyKMv?-xn%Zae z#(}$3qPYVHCB`eiQQ>+g%38DfWQ){WMa19OI`#&Yv2n1kZBODG^<`eC{TOw`ZS-#@ z0tH50lH}FY@h3Yk|B`0PjAPLw`!##C-fnQ1YZuHWUOSSb)J`*x%gb}-^43#)icluu zG(4WfNwgI<2JST2qPOdQCDpt-_kIsQrBjzn3ea5?`Ss7v_ zM%^2@mSE{jlvGzk@?~tasu$A;-#GJt$Ulc^rlT4^$0>cOlhHM1s4iZvV-F-1xtIS$ zo^Bs1E$pzi!O-m*&x?r>nms&G&dTXeLz6}uTv9ka!n z3^nyl;BiWbwbUC>SoIajq`d`mS!PDKS63z5H#N1H2CJL$&b~=g^3^FzV;PP5*S#m@ zSxWYVtCcKW6Y7@-X{69Z>Ney=!4=_y!n{(QFDd&azy(YrH%b1F3h>3<_*nF z90Qu@VII|Pl0Ql2xM4pbs`Y_Cv+!X`!-yE{<0o&V`J8h@%`R~A@pI?!irMX@OBR-N zr?n4~Mxqj!Wp`^TAwBm#NR-3&dp>YfC~sFO_8o%&Ww5q7PLAjk6o$ zH5$K(g1Q$wiiEM$`nG%zQD)HM?QFR~+hVpVwy%B6MGk{8`WVr!V8SY6#w&##*1JYh zO^)43qZS#RnUG%O^y?)<6OhMxaMxDjuI3+wWh2zUKHlymb|@!OH5el*L_JeD$L7e# zeYg*cfn*y~eYYdC#4PiaClJBaYKgg;)qK06vB{-#2y}E(!m(q4!MI@{-ItS0A6V%L1i>tIG@%__4GX*WGnw zYW#m2_1s^ach21VOBFjvi*OUBXla{s(F2_U)gcyk%d-=(!yG%wWaE>+!HsV z?Mgl{h(ws3|fF7X95+ugsI_WX47=Ji)0jB6zB{0eDh`mOra+lWM z?VEdSblNVTkE~|j3U0l!kf!HqNhUrukf`rO6^(w-z~1GZF_+7MN*Fuh%&Uv!>FdCR zR;~5`!Uk!=D;#$R-HW!h6BPw+MOg2vSQHr(VE)`w;-CXbLpPFxRfKZq#60=~rA@#; zJx5m*+0^BhQjviqswMB=`;CSpJB&N?IBto2oZfW64!8(gE2c@hb@czE1q`RM(GlgU zReelEte;lTI_g!kn2GMF*{~$H61SlqQi*Js{j%Gv6gf%*RUa~9Rl7l&A@4QClbkg~ zGQG{FENS1lR>K;r+}GK(tLujnPcpZW(>LhD8O|uG!wsRr1~zXpUn*vkHWLMtc+Q#rLu+??F?YB|)FneM$ewIfwtS;j1dZxVd> zMkl3Y3fvnC8JKOW;ws|9_!z0(o;3H;|14cd6wN`zsqqB;@(|epZb*1XSJ^hZ?z4vw z`_JqV>ak5lC^}rx8f_xZKhE?{G1D+nuA1zi>bh>lXC-YhU-hhn6S}q^ zvI$r7YisOp4ZktcVvmPRUUK>Ny>Dvc1_hdL&4CO1*0D+>gW)43Fd;Ks5J^x*J_}59 z9#Y`OeDY3RvoG#bhyI!0m8Ps5&Vj{PzdyCXo``)Zgd6_L50bZlk zh|+r>Hkf-(-FzVau%$kzUM4~HetzBbrEOd)?nJt~FPw^?X!?Y+a~lmbkR(G*C^oF8*PH zhpS{#nk1WP+s|X8?M8T*r}aGDsHyPdr2E)d!X0D|C@M1`S@ZT^?J{5^%^usJZGYoG ziL?&556*o=g>inBQoH38`ll5IRB&Am=$DgRt}d=t76(^uEV_lIM!Ph|&pS0?hueaR zXW5>}JHFgtm>ROi)5$dze(&-5b%f-kP?~43*BgtltPrhB%1W(e2Go$J7h$JLAK**c z>|idi1@Tmckh8zOuyCgOS{FPaELSBoovqt!jH-;G-O^w}XsY+8Ys5afv>xaN?X70= zS^m5S>*3PPO6e7LQjL|J&FX3L&GVVvobanl%A*K#8Ea*n>y65m0YN5kOxCGHW9llW zxLYF2s2w;L;=(gkk5kaVGF7tGcAXsRKxS6MDdwmnvTNMnX`iw7p>(JI=5^p^b9{mF zp^^M2)_J0rSMPfyml|$T%xDmJOP@DX_pY>?6LL&-I_-RP-~0);a=W6!5Asf9F|OAF?-UipuD$SVq3{xyp<|bdFb5VfvPEaotLpTx~T#B!^g;8N+hR~ z<~k@6{ETS{efIuh!4WogoA%;7-O}eQJ7sB?eX@)%CM+c?ES;CuXXS}={TQxs2)WRy z3RUA;mAw*wNV`#CkxglW@MnxJex)P?Cu3Yb6tK^#tP8f=H85wGv;wN+#~M&xZLDS|0DVv;McC`ujuk?-oTR{-_OW zA=H0py;yb|#K6)p8=PcT1XbK@!}u8RVd` zg4IBHQ1SO^96wrf?b{ci+9elm0S!>=LP|k%;&M~%9*0VCH3`q>dSk=QkAiMBhSKWK zjlhbpANZCE3y6;T)e!f|g{m7VGDI&{(3Wgly*z8a1Zo1!6^=O^T;3z#Duky*cxxH& z>2T{NCll2;>a;L)@K(34Asc+KKB`+5Gw>|ewC+T+R54kW9yhhfh1k_d8C@t%RU&Ux zz{}tH-ciJ|<1gRXENfrDPnMgXPI?eb(k*DtNYQMc<*blh?!bYN!PxcN6@|9Qo;Tq;kb`*K=v#99_aE1$Dt6THV;oYv$h}(XE{xp?@LPJ z=kHJ^ErSm;#6B};HMeJ+n|!*jG3?vkeQxV@80a>iXk?-k{N^y;?BN~lsyVwsK)Oo= zv~x_zqnf@Y(fRsEV64}4crA6`ziz+JkW8Mj7bwIbmYKnNW=MewP>!}c>o)c~lFev^M|0{8M(-gxTc5MkLXu2n zXDKn|!~5qlR!#y!f^8BrjJ6lmvGvL_Qb21hc!j{BWvIEqnGS1pKvE-^`sul6+X_ST z-i#c-b`qZSEXC75g$ApRhFm_7F`CZg4}_wGFaNrJI~Dr*TqL#ViV_fA4D^VWzbo9> z*UBo-YQ^fCvK}tf`EObn`|1M+@jwt!@Dp2HNEnm_h)B>OR<>8;Vvp7$Sm7n}Pe=WIGM-?<MZ`_EOwqJIrh7BV6L#Tq4t# z_Oof@6@3CE;?9*%m8%%lE)DO{L{zeG(rOg5FuoMC!pb&<c1V;L>+7NE&E{Tv?cSBHS}!~Z}iW*g|RiCu|{iwW9eq1_atS8i{J)?(I6YjS259? z-GGggzZV0wgLEo(K2J^Rv)QYxpqF0afmI7r zGX?!f)zY`H9)#zJI(M}PIbk6I{V#lTtYz3A2fJX&5}82>@0ae5R%wSb?}X7$Dcxqp z>z4PvL9U_|i)4m!Daba?9dco$QPAk5@^~H#pM60k4ADLLqAGGpS zi7617KrCH^QJWo~h<4o|WklG5T>G}aYm)5ZGED|9##=2&p)_gg$o0S89$D_+wLBO`Cvj zxp^efAcD-vaYcqOsn$h&QKF{DVjiJ4)>WJ9v|i{D)~20gu=%&eZfd)Y*!(ak&i{^! zFm$vm@r6ER8GajfwxtoWkG}X0QZ9GE1r89as4AuOJWDlWPw`+?rXF~?oN$7F!I_{N z5d0kvyC*P3M(9jd&5iu)@%3yOgl1fX5@h4V@D*Xz9;n|Ih-KUNr7&LMHT{?6t~XWec@kZ8v}BDURZsvv#kJM z5FMr0shDff479kVMw0J3eEDzPOx|?Y?uu2G0Qz>vZjVZ8E`Pl-`h2+^>j~!%_bvVp ziRvBQ*91ltuaV|$^W0Jm<-yJFAFrO3F1U%$^rrCKsv9Q5j1!wEx@}`tn#60F7cm4_b)N$Fsl49D+3Z<{`z>HGBc7> zilWfksJ_#=qWof_l3KH_SDrq4HLsO(ehaMjpC;E0{K1xjqH z9IXD)SNoop|JU=|5hj!90oh=@jNO0lh+v#q&O5^f z&Vqldvu&o$GWY3s-2NV`*EgFSL6lbmzvNaa$Mm}Dd`CBfMU9LGhjuX%Z+kt4ZzvDz z3zmtuJ)g8-g7z}^mDsr^^DvP^lb3gOo~@Itfy|q6U+sGPG;(v;9d}btFF?kjN794j zWSzaz>=(Fsxf`>#ZcnEJ8Fn8`t!v&pCfsa5FP^(;^BTzjaLT$jzp^i+eOQK^l6=ZMR+Y86+`JUKf`@MDEE8H&+ zgxLP#qu=!PoBQ#qm^CR6?@L`eWR)Gb=SM)$5Ko8P;fZ&@=RjTG>+6Ykw)L!AWmXq_ z-kPV~lWuxN6K@|d8TtqMjlMk@D_&Wdt08&W<%fG%S54riN^$L-Cq>ZfIF*uS+ z>~F`1_lP#*AtCmS*12I?m)fp8$}el){E3Zhe7xh~_4W0!pswSvZ|h9)M< zhQ_f40rgF(QoJjPMPie!ktX~b@l>+S?I(`l4`gaB&bzSo&AiN!*PUzf=lm@rajl4Z z!2tW(E~Rm<8J-HfoV*Ru+4{LkV`jeF);|1ir|H$AMwyxff!p@S53&#eYMME_7a-{K zt)L@YgJEhglfE0{dMUn}`H5$~Nvh#=>U%c|2DajDiKni+rkMpYjVRlH0& z$7=e6m9&2(;P@!o=~xeOwPxmoc>N&D_k9l6yDM4-VUA+#;sTQ++a(=;RVR*SyZ$_a z$c%{^rL!Ib=bxerY_Z$vtnVxX#iZLGus&5wxXV6$*p(eBXn%TEo=}+lr*__6cXGAm zDlwt%KlN6gMrY;@A{KMr#GI{#)`LhBzm13&58f!LQ0~qd&MDJq%rUO~d|#bI?HBH5 z@XgaitN0dY<5HA;!K$jRp6;|>A|XR;>=~O>)m%*m6Z_GtnOTzN9=&J%rfbCFL4TEh zdsbTZ(y6%bd+qZaTae6M4Ssu~&eCC>%OMw|k*~qBBY|egD8VsP-KaI~v+C31Q}wNF z>AR4$t!2sOkw{AVtMtX57Y0W~h$<2rf;*Pnuc9C9N|re48Jd>7*Sk!Ps%X)s*G);G z?Qa-qIOpZ&nZh!Xw9y1bZJ>oKlKUy@{`#z?JKfm9ho)KFr$T!nVN|ZlNB2kmbe>P& z;%$#?dRMsX!+|kXuB238Sv(tE9?QO+x8lBduv7UI$10`poC0_9zL3`+oIBr@khP;m z8YkNQjVA058XuUMKA>nLln`e3!m{qCmQ~FQ@7bGa_!r6NewB=Ccu5dG`yOSZM*BY9 zFY0@(J%0LK8J?fiVs86Hnly)1*s%{vC=j!UnK-uls1>d75uPSL^ckT}`NEaI7=+}b zd?y)yRI$G%P~~Hj@#6MQp2FjYIn-_C73Zv}K~6f=gsx5|h4;()Qr-zd6{adJOJZ-z8#1pmCn&g~hJt{&sWuhufBWCten}Yv-lCMofjp9r`uas}MEGzc`4# zqJMm6wjP{D;Jjtz(!Y0avr@Ai1J7^VaFLYvdz6m@cjMV?6qHUU$XIK21x&=_G8u!Y zIOFaQ%+c=6>f>gxs8m{T#1{~JwjU|<&~uveU7`Fao=rYmnp1A%W1%d4dYN!KdFIOz z#n2{c#3=t^^+0DYubIdvZRH8(Pj~f(MyK`rmh0nubDojsw=_4WjI$Xrid2be}gADV@w4 z_QY{6d9f{yjcTRxAZ{%;>y)mDe7}xow~C`4)aZBoi*0ZE~KdZT3BiVq-V3 zGY;5Xk8^oB*%nSu?icCc6!{KQy^mn4WOIbfQj4$-s6#F^Kc0N;e5rdWBQy1LaxvrXFF>5g`uWE@E^#2|X20+!RCQn+?>4%}0?^G+t8 zc@YiIrpR~x$up&@C9TTJbN1qQ=O-OUp}PLGb%EX~T24%5-oO{%P~N6h@wUb%MIZkm6G zTuj8w8*%2}{0zJD<@>LXqw-Iwmew~$|Co=YJ>!XbjtyJi-*>MeCX)$&$D?DR++Sa3 z5hPUaW$YcpF3CBMB|O3ke;&h5>eutG`c1VM5u1ya%DTarYu;n*==v(rkL^TmeD9~c zgzdEmct3yHT~hFjE3Xm~x-Da@V+>x{>k>lCf3XsMdf(rVk=E4I)zsB6D5VyuSp0b? z`8t%?b5ZYVx9~to76psbvEnXz+_{U@j{i{CY20MB0Zq_KGLU z$Ju%>O)dL5V!S-FJ5GYhJ^gpO_V#Wcd)bG!hJYRtAx$YigPZS9WVfO8 zT%2uHnJ`CKQtV#4ut8cK9~a|uowDmU9e+0seJ%Sr|4wtgM<7WXV&7rLT(MN-1TxAw zGd456cvrI~mGAVs(^%X_pvQ3>b6uzntH|bit?%=L+Jnw;ac+w*#FU)0-_RiBX74t;7 zy|v$eOH@}({L?e1-*K?p&v}yUwvUW>nY|)q-ia)nZYa{g3~bv+*Rt@bmO$ezX*f|H zN>PeUn+mwBW2l?RP|H9vI#Ha)T=!^CEdTKoc%JqA+YZlW|V@fhYe4%NPqou6f zEQ5M{gwNMopwcUSFkg_(r5@$1Q_mcIBq`x{-mz@vbD+*j` z-@#g!^xQ!Z5E^ak&?`7=v8u`ydA$RxK`yfne*l>qelFl^;un{l)SU6NQTkKg&Q8)h zVk$io%Jic4q>2Mg<-8ocm0^v!aIj&V!=Uv2T{Bx2kFymkk8=tU4EqieY3!Ybi(ufSNw7IL4U&F|{cE&EgJhLTW zk<6e1K%E0X@BZ2@$y3V|7~JD^Nz-3lnQMvZ#st_OZ|Vp7u$*cnlUJj6<~o8-k)iqd zt{#{qeDkD6(Cy~Z+K9n&W8lr|aB)UI*lq*pq4#6MWX6&n|E9iJ#E`z#_Y;)@$96=+ zsg`}7+eF`sy64_Z)7%K5-unKZr%ha5{SEygL$B3Onc zjQ#E;4a?lHx*k6cvBaelJ6$e}5VE-NOL#=i?@A-Kw zotHjPXO94tJYM2gX^#N^sP2vX_G?@*mcpqpo|VKV@Hj7SP3x1};Rh32Nj>K7!9jUd z)w?;iBk8;Ve<;qtJr<%z-36e$!}m(EI_d09*uA!iigO+O1YD{0*kxG8w*-ev#g>Sa zM=d)#6?@3!$9Iw@zWR8GchB%4kV@j!j*OV( zd0K#ZV)qbM)X#vx_V?rUf|jP{a{H|#fwWzL-7SG@%dloJb`FP?%r9?cH^*{@bue1Q z00-&Xvc93x-Ds}nH&6Ho?BPs?|DyQGcXDM3rlF1un<3y@_A@pUiT~$QE8NNa9CJjMVq#mB9`s_ zyY$&kg0Bgnn`c*RGrr5%vU583q4NpYjyb8^)?pnV)7>6RVnFEGbWe_1yi0!+JeK!N zt-b%oT2Xgjsa-`>bGx2<$kNcWEpgQCER!di12@Vb@&GAu#S}> z)RnJj!sEfL`(g_80R+J;Owo!R?XEhfmZRI7jK;;0miVucPDgdeNbR7MuwL zzmqM2*P}QXKy4o`yK0w$|7&WBD0?cPe~0x86t16+fqj1-t_iTRz9TIxNhaO&e69&jpY z0QmRX%%66FpA)Z_e3-{y3{Si#uv_?WwNb;;lLefg zM5VcRqLJKer^Bwd@#UFgqVQF*f_6gbAecr^CKMhl_+|V5Vznx$t^Eb=<^N!jQBq%@ zbyRF$A!TB-F7FXzD&3XIu!BNjgX-Q$cOcX4A)$||S-y8S)AUbnU!k)#>c4+JI@aS^ zyrEjeZl5EQonQl&u&imN3pN9YvVD#;ZC1e~M&%jtv~IxB+#mv~J4r>s4`U>fKWAuY z-{bD5a-TOnV@0HqgnfEUyEn_G7ssEE`XtUcyxmErt#>TPsJgxl#Qq+M$%|>)dn9Go z0-+rIT4ZI&TZLl%${nj(!hZAuWZ(>*(eyOKomo)>K z0<4B@-uM=B(~9CWar54FLkd>WDs%{p6}Xv)&xGcj%Ifb|{ZB0*+APvt7;NQ7I1Q{H znCN~WS7x_mbDSKZLzF#WwHJRES;%KK$A?{}JytLh_$kGx(W!Pu{-EJ!@x*<$R{2t# zl;WKU#}q!Xa!RF~XMrg`PZfvc7fKkt$dU(`hdk{(TnQ)3p%8IX! zAN?fmYq#BZ*Oy?Lt^13#LhB$;X~E321BHIzI6Zn)!Jj(wSN`K@`54l-lgWM)28#j* z8St(8lV5>-hyQm&+Zz`QR!;SIb!zGp>KS}9Ng1=1bX?imcV@F?figX`XX+!G76JRy zBigG`3m={zD;GSSYg67S5PSI;I^-rk8Q5U$mv4b5U9M!~RrQ@ZO^A zM6nK84_7<#=Dq@AyZP;7i9BX?{TzZ80WS{Lvx1kIF)!E|`_{fX?X;$rj%K-ZAQ&rk zbPPF7e_}rP@<2>_c^Tj?S(4Loa<*-_Lgtx00;ySHG-$Xv8IQ8WUyN0}@9>y1d11ML zcXecn)(DXV7|V1EU&Fd#!OyL8KAK=($mf_%M1S*xDSuLYy5_VtA@jfecH%fHCL@za zQ7UV62zx*K)a0_&N2$uCI3+{!`P_Pbw40pO%Xntn-gyXOL)daq65)O)*7`MrM)J;s zXFNgScm3!CBcgMDIkVY^N)_}JinC?8!0Iar*feKNjB@Pz)JmzvRVAk0bnfU1+x?>GC@f*1JA#?aI3cDI-Y5W}Z>-)AG(q9epBd`vZaeF) z_FV-66`q6$RaGGB3&B*E2_xGBL|-g{s3=wC<$KxiIEH9H=due;(TaCN zZ0a?VU=y#a)*8!X%948APqKUW@jNJZC(;1+BsJj`}(K zq3yF808H%z;plmik8xXJw+C<9SFn+|@s*zl$0WV6+pd4g^zpnEDA~tHz>Dg_i7X*A z)75>T&L8#>4CF_F$`Xo769*O%HuJJdE5mUP-0k2#jBoR#!{4y@(H{H;`ee0QFs&-L z9@Z0i2{6+r-iSDK?zhF<8~ZBr^ll5^I!}B?(^I~3|-n! zg?dt`0!5w++7v6PE#>g-jks`IQBUiBk1OF5h%v5BtERr48n_7Djv`Bh!5f<(@QkQW zBs%kUetvdgtjH#_U#24Pa+ggq;zQc*)cd?kXQgL?@13j&zHoGr&n*UCKDfcl3Z?V) zS(K--6~(E?c9ol@B^Q#jb@0bBT){baqU&o@ET7QKzpb;qo}G?u{-&SG4+lYK>Irr) z-@ZN#6B*tI?6ZM^!N5Q7%>JYa;C86XRl>)Tb1Kq%_k@@H-UDA-i?)$L9O49a-lILn zumABof-CwJg!#xr{5~eC!fpe#utC}9&jmAk`#~nI?o_-7*8=A1_%C0;6zGcx&5c|C zxB~SRfNy9=_h99H3otfXSPs^uujc2HQsMD-)Smg?D4(VOmj*7L_ zCBM~?iwjop9(Iv_ljK&@Df0>s9Mu+iZmsI>&RZ)2{1VDVy5#SHWyc9BzR8S5O569! z-x|5~`NalF0_Y|9C8)w%)V8CUg9_hx*1p=`!6Dsp$@&y4$}<_5GPz!fUiJx$)3>{@ zxvgH$q<@y8c)KIJzu*ra;8;{+8Ic|y==njVKxqOjnKn!ZESH!*&PuX-edz3rPBAYW zJ*sER5lj^O*L;~&l@;=>-S34{X|r{jHD2B1y0k(!gLYFrA1N!F>|HA{y`oDc>uFbO zPUX~zmYD&a9phRn#_#10Om}%4+OD(^gQBSc9*C#t@-S0zA1XN5c zEE%)4Ee;h;q|8Q}q;0K5r%XJvq(1FVKb4v*w`}M^YGv7Hsz=`05Y#CAhM!_+#!ufolzzBTZCUnBQPOmgD_c-sKFe_m3GJq&d3Hm<%clSG{9E);kO| zwOrp(tw!JTX7^bzKC84q@+C-0pN=`x=Lkv5A$K}6-;pdHD#UH;7g5(>u>}d5=2J=8 zbcCtLm5g@O;o~EoaGuX#K0({}VEp{Oy2I*q^#>1R+Ud#9hYa?2KZV~NXEq!ndg3xI zq9$1yE?6JM-9C$l7z#zFjMlR>I@x^8Z}QC%#AYfj#aXvxFbneX&yJL-_+%P*Fu{*yz!F8Yh@V!V-u{Y3J7 zSn1F2EzR3pXTy^1hpua8ZmWEy6FZ&UdPq`*fAS;sf_apI?!LM|u-RFYs3O%cWh@gA z0e{~pRhS_scH$xuX#|Aq(d-&3CU#!TYkgx@kR+HP2vJ!pmagt8xOuU6-hTcI6pnh9&}ggY-Lyhu95UBTFrOG{`(S`ao;?amY;U?o>G0tT zKkzXGJ160F3Y2o*$c@OY#4p~@wkIBAM&1xbK3(boXC2C4k{S0ojy8A7Z59zN>ZMN*0(>8r69$ged0SiuPorm~KW z6pr6BUb@LNEU`FM^Pkyg6eEDBI5_b6Y zSHN!Y1b_~k`Y&HmL_v7dPoN^*U=uspw#H()5MUDZ`}ngYfG*F|j^THY=jhT;ZpCFS zLvf-Nyzs)oz777Z$sMriH>@_GnCP6+arZmlM zO-m~&{tK6Lb0lMRf!}3b!fvi}=k z4qP6m#WvB{K%i4u_Qim&%P$b#Xgvc7 zv3)$rt1F93D=hKrGW0|f*@_cjK$~kqg4{lCssQ4ld8g}#2R=z3ad&J zKsS31_)_oR*>LUjjolxI<34B;A7yVZQOj{q!TiA9hc8*^n8pQW>i0rrz-Da`Y9S}^ z_I`r7jnXidcp_&}D>d;QNh`?vX6#FHz`QU8N{5sH3SB&|+k_+Z#=h(Z>GsXdZ2>^0 zE?_0DcI5zgPUdhMKY%QrxJlhWhhV$R{dswDai4Czn@HtOet9`o8E{J#MitgDU%eUF zpch=tU5nu#6M+iL!fkHA3qr0F+_O<&ZD{}b8h*izv5ca>z5O;g#Y7f1x-4V{X9EV- ze|SG##GQ@}U_4uMP23b)ngZm4a}k*YAt}Z1WWtI({Ho{|>IlRjB)A!W&|Pq-Ke&7h zyqfM~vZ(+0t%76@cy4{ZzAKT;q#?X%ir^?%2lvx8WUE5m=Y@zQxK+DfJ-hb@J%wC-yt-^IUqQFckfWxVAAH6F|xBQoR(c(Q-_3{cs} z^(nPPL`0;Veg4XRNF6L}Y@-H;br;K@&D6JFJ)v&XSq&^4D~tM?=kdwf53U`rbeVcG zTI{OR*XbKE9p(boed$HF(Q$YpYrJ@iNjYzIEsDO06V-1s;x=5HY0cZZ~duu^nI%I#nyN@zqAw-qg4K8%-8D81X)~je<{ev zRf7R5KI!yjIpyrfR@1b$$g^}sMS@28xGQOrF^S`mTuDFQ-@pmg2m#2{#5Ar;A`qL* zz332jEV=k`C5bvpuTE>A)VS#(O3Aev$Y#P1UVoh5^DY!ybaMBKJ3mNlW_u3c=;|99 zUVu;8Q|GsW>B^|537Sq^JK2uQoeKbpg6gF}@7u3Lcufaz|8+C1v#dVD?oz5HXNWX? z2IvM0j>9JH5;Ys<@gp{@|EUFZjduk2#n6PgbUlOviAr1(kMa&B)=9L%$PI#V_~9pu zFK-@!ks*7)f0FsGH)u#ir{y1M))eAmD9i-F3CQSX+0iAjJy{a(fPsg`@T(}zl9*6rBGabKLH~CCKY(`^O{BOcw{aY%HTft^*L8a8f4lWP%kY1TsFIu2#o*vPB zgQ@g-?A}@R@t?0N3OeSzvr0KYlyfW-X@j+K*baIq3HEZ-@j`s-$QcmZT(3ItGQo%G z*YBT8c{%!K0fK>e^wQ+7+`MJKDo%^-R?1czZGmZ}#iDD? z=JlcK1kruJbWUHT)dM-Kq^|vzheFkY)vFM~_4#B=jqG=Ej&I#vUxoboQ80(?!+2z2 zXXwydwOr-D%N|{l5okw#$BEG^y5=qE@!*%iLy_g!b_YrQm(OXWu;OU~ALmQ4)d+l1 z3pQ2z{)}0kIrMD4lSF$Bna3hsBNBMr(ohU84e}SWlsB(sePoBB7tcVJK;_RR%%$v2 zaY;?M0cFX@$gP@_yYetiAlBB~9Io98`4#fT3a=M@v76Yu9xJKHg8^~SMM{=jADpvT9ICK#d0|c zvE!&JoKRJc2B)->-CElTU@nW4mhAzCZOh+rHe9M6nY_@cS(1SbA(E{M}!m9nk! znCp*Vg`l54s;-uc!C6KE4jgTdS#pu`OlH={#g}H0F6renHW|$WW8JGyodVciz&S?a zlWnYFa{DjRjkiHzaRA+~EgX;EOH%HSP&l)X0T=2=trv8+R2~qJ2va9nAgXlMagSdr zaf|7SrG}43y^Xqx=#EeyYNNo43+QPY5qkO`ow__rO*+rLvO(xxBo1mP$ulmhJ}RY# z8H6^TH1&~`1JwkJo(O!@NV1C~y)CD9-_!hsNyH7C&SGw{K=COGr2z|^!T5yVMhIyg zn9lZ?F2O?A?P#kTaL)LibI+vXJi66S|I?24Cf4*^!RnQ1|TFq`IY2W80|_y&g;l#}0eK=M$g;s#PvaV^v8JF?&tdJ-ilN@z0wbu60F zs?pxgXbsEc1-~uC1jH)kH>k`5JrVhoce%>69Ew!6 zY>?+GdaL_iLaT~D7tq&^(Qj~EFig?6XI>*hNzD^^MME)c_;hO@#;-?FM%O&l>9wPN z<=jTm1n5Z8($Mn|&NfebR1*EMo^zgph)F@m?=jURTCEVQ-=59{ z=sp@iqc)ti!+H=;=2%Hv?0Nu*AS;ZPM;g_R;MXT1_HeGzS#^bMvSgL-jY8>v6Wu+O zSFe7s7o)NsNsZ9cpH!K6&7fU%mGb&peJYgU##r~&7v01)Nfr&17zN?bEc3GHrL}uV zSTvn%pDO)_H8zw+iU;Y)m4n0^R@nd-(;U=Hv#+Aos0sUao$>>W$ycLG`7_?i-4sNr zWcHUcmv?!C(!B8LneG`Db(JAxEVuAqNpu-ByULaED2mRXM-F_ykz-KCt?g9nngbiz z`d-!AKL0;B(($CS{I@&;pLa|BVtTzf(HKO;6WcBNL z7kNAMpB&FA`+E6l4UQAXv%ZLU9^3R1Vueno*`M_3f?}*SWXk0>W+@ZWQ1`9nodh=u zC`xa~zT;`PrZbx+$EbQSb1VO0H99}r@cJRL84S>0cT26vl<9r|q_;p?>|(oLtJXm% zg&1)6Ivx*|VXcK#=QL>;CqC*L3HPN9ktKiC@2ET1F6TNDxS?0StEgxALYis!? z^#K>=VJ2NalrH|_0K{#Z-wkZCP%`+?)jXx6ixUqchLjh@d=}`7;CA@JG~iUX$c*&? z4*F__Nz!PY;&D=s2W@fV2evyWdWf9Z-r) zNlR;$=0yeT_iT{EaHF?RNuEtxj=J_G)`FM!9V%}cGEmHS+U%X?xY*gn0p&P)kFfo) z3;TiCGsR1;*``JRIxv|&y=*7EU1ZSV?*pdFoD;Lx>nRec`q#>vs*` zm9A(%r9O%S|t@CXCW!ar3etyFOI0|xUZy@igt z5CmVyssJv@{iGhlnoK%SV&i^$0LWGaWMABa=rWnKZpw%0359`Ie@4@J;cx!C@fJ>q z2lY&FLsp#yB`un8ccR{9ft>Z^2`?lN@t0#aa*IG0lx|5Jv{u1vnb_VNJbxj^E7yj{ zcr;%U3lK=aOa1)@Xv3SI*hkC?krflIv8AQy#!-rTEO&)&l+?7WRGW8qT%8#S4e%IB z0yW&&+!u(9BNel4;rco{ZY@R1X&#(WO8|gA-hHn0kz?@hN>wW}c3~T|EZhA``wE-> zOR8Az4%c2bt^#j-Xco*s(vBRH4gB}>`rmu-1dshAV`@HHJkE%@-wb)zM2Fwr^^ExE zLzW>y9Q7?#xmy%bCv2*|@0Ij3m3}I|rz+Q4qoKTYU*shX%0!mp`-viwL?*i6mnTf^ zs1ci99nmd)so(P(pzX657B1cV&3J|!P6c@ zGLo$^tLF;*R-o%uN#}V*+estpv4(;FpJ$O`q6Of$Q`mG@XvH%>b|^j>%;4YL`Bp)8 zJhtx%$=U)`iKRAY9{7j`l_YAKROoTyhN20%%qtRq(u;Vx%c_}=s$c85spe@Zh&$Kp zZpo%(ynU>24sPA80heAOTID*d*P0f)-`^>sn$Vfm*+85!zJLmMme}(hsB)-f2|17F zKTcuSH-*EV_{ZMcpSpu*#t+-PkD522p^mPAw^hxMyKaA zAN_=`rWeTlm z-Av_d4zznxQ4@Zx5A)~d*pvxF&1&A{Jxj*D12)-Lv= z*!xHxIl <(JfNCf6O7sbg%m|YaX`^m2$15qkun@@IpZVT_H~X zp$p?X;}&EPz7$(EvJOc)@R4n=x#szk@OEu+F;M`c=X<5$4vO_s&4Mqg#VQ%iI>Y}~>qx_EOAs0<~IkvoL*CqB}G{kr}@b7x@TrtHwZ0{3!8@N5! z^b-zySBHl}xGgWZ2V5F{@X4U&O~iOo%AMNISmwUwCqOc*tJU-=h_RRbBQ@C&Quu1& z^obAGg7hAxNW$3f*#^haP{!)zt}m2RvV45PS!!uq3qWu$n@#01ahU0#;d3kd*UEec zm-0Zo~>+Q|frOSxUXAC7=_~tY8S404MP~F7o1$ zhcd6j%CRmrAjj97J+ybVz^7ilINs#eDNUG6$|q41G}j`?f5hl-xBB4UWEO?k1W!Im z7O$l|dX^_0)t_ewyTlMfJk4l)bB%lBFI~852A)OB$|gpP$t*qibT?`lO~`d|{uj2b zp+ge0I#t(W@4L+~-Pz?>mGs)~_VfMOZvomQ zp<|`=(2m!2+z>8jqNR|zg)E4=!lmhA=`K+ zj)sx9iHc<`Tl?vqeB9g4NFtYin^Rlw`Nudv@-%K|;wNGlvkdxTlv;IP?(VM9Yn8;O z1(0t#$;M}wuFs!_oUeMyGKf9HNIvx^eIqJnr^0RE)k7~(gESRa+L^9dP31JQ8AJLR&T?^{O z|2_XqiX?Q$>J^L*y(N!5eBi}F7M1w=BQ!__f0r2&_NN4ps@VvQ-jV0X^kgP!ENrl{ zIpVlv-_Q{&yd7p&_)%UlHi_R>ttzSB?)%|{%r3nOR69TYP`I0(Y$uCQ4qP^&OOjvn zjmU2MY%>u%6-?>Vbn)raBUB@s`!${|9_yviSpxPlBRwK*rW>*|P4%&!EK-{3@=kyN zvHr*@$NcZxbZGP=b9~o{=>AlNBeReM^=rE4nF3?|%^C5+tFcFfi&Ht<>0xRJoF`0e z3k!O3PyZ02@a@JE3ID7Ivj-e>+~Fz+W@!rkY5HmP2Anbj2;*^x^Dwu;mw*Mt41=s_)6xvMqN{ zXG4wh`cR50$BILL44LdSgMhmaQ4Ic|ahoZdHh)q?B#ZZ`{-^VjnPzu-SCseoyqcr< z{M$3jzEpfI+t<}P4kI!+$e>6T6WH$V7T~NN+x*{au=P|8%9$F`_+Ih2$Q0z7>AKFDPj$#3WO;7ed z*$&WwO0tw+yw2}Fc~-^;qj_>PV!w9Z>sIJmDh>GOB_RUTR9jwUkv{IZtNj!i<~`7v zfyWSVvO5(oPpV{*OC{`%Wvd)m%Q#U9PqAD_!Ff})MK9LGouB{d16OU84F6^hecQN~H;iBYy!ts#D z?F{MM^G6$(R*~Ul8)+guS`ef#w)`L}(EySWKJ|q(26H~cGEyYsSZ!SO#b@)ZpI*oO zJ>RJKJ~GLCp1bf!5@ntG+;{ywkBQm*$#W zjbtJoddmq%o^?YL8w5ofpjl3Lr>I3edghfbAyH!0Dr7ONEu66dtwq9Ziqq~24UN&O zZD=IHj7BgVRxo^aBfq4wQdqV70*rPrJOI`K(^-NL*KMyLS@D3olFxbwa$ZVF->;i9 zPBXRbkoa*J!;=QHDh^8>0p9%|LEi%PrrV!QGhYsH@xsH9l|&ITj}fX%EH6HV*8nhB zkHItagWM% z%2pO_;9aM2o5lUudK^t5>>@DCvihq?8JZE#a-Ct~*5P3?jHv-0=NfokL#dpX(CD$G z?is3cA|xWR68Zj7-)!_2S|A>(ygg;1I`Q` z=HM-~>UTh*X70k#b1kk}#b8;)(@Vr{D$#ca5?5u}>u@t~`yLqJ+yW_|GLE= zmuVF#a)JI79JV43k;&MQLNn~cLPbtNHuu46f2Wf6z39v))HWeSd21&VWOJ8onSA6I z3=ZeCYY?m)=8duN-;AgZtEsff*X=!&%2yN^PP^W*t3QWoIg$mNn8OYeKh~QlG%JYL z@a$!q`>OmA0V9i7b_yV;gs@{i{P^*-Ze+l?-M67tz;c9N%22kmx3uqpQ@4ijXP6h7 z!onMiro(jEpiP~xwT@?nZH3tigR;!oVR|a zhg;E+^WwDK+?9jK&=SSFAb)OWMC9U9i0mT)V@ECG_6DNc*xN6iFg4np_1S_cE`I|$ zgS9AykhI&pdMV2tSs%I}!Y#d!<-RUZ=(^YzN$t5d&>8u~43gW7$m1aY7X_Kb_YFs~ z6MYlhHnSIEw}b0mhR*bI5O!)H8RhC%$5}B0MELmdZo$p`+K}{+NbUp)4Vcidi2tCR zWqJ4Ye62DwUvx&1$3xS-$JHLbV(7=JbRoSMwttNhQOFV%wrrF3VCwF9~BJtXdu2Afes|(7c!Jcy6iWQQ6mqIEz>=a-7a^#7-wX4t4#nwyP|<@F{k|9Zdf5>kEn zl0LFNHy8y4l{;x-5j;YfXTB$)d~R_Wb)WqYcMj;2I;%l~jn!?g<3nheGP#W(R_Rux zUX0zs3{CFgE286d=#P7FlFQM0S_d&wC4)~Am|h15&9B^uELO8~0?OL#J{ftnlAoqq z3p>Tvsc;TDE)&&{aQgM_mzCt!{;#+Z@pxc>neyVP$6W$iLQazpCouAD?)Q6M6hG3x zGooRytKTpWc7K=(@iJJ=c`$^`vEu2|-xHB$e;2ukrj<1B3V|8z5PQat+P z5H*#hYkx0}Q}O706FCg|*oWX7d%RtQO`A{6HXnjVC8IrHUQz3x_Jub7C^PF*}jIW4X5#(?K+gwngg$Vl`-&%Z=E15P|-p|LZE4| zPHY4<7il=159@B6E|NerOVn?fK1MrV4%1c@&Lend%MyE_VTzPe zR{COhrB0zF01Ys+LPdP#i2j$-MfgNSNBg%mwMNpR;1rF;7yvcX^uq~ zC%5lJT*l2tO)iffJ%aQ91|J9=MTpQ5g2k#?eRXMECTwOMf1x+=dQYE`t82YhvRtuI?Xk5 zN{8R09;*W(#$)7h_P*m!)Eo0(#KMh~0%1j@+YZwxV~MbtAoCbBvY_Y8 z>CU%H=sC}Gzan=&{L%Th#|#R-gE`{AVNM((*aXb@zyo=+djJZ}^B1}MHnbR@cg(nL zjF4ds!VGIhxC(dXGcWikfNXkG2Sb}L4(2Z)L_wy~1!I%WLIn(Rnb{SvwPOIs2&5mOu;Y;)+H}UJvqXa^(TDCoC_l~d^r&r!WVCN-l3`mZ-7XA;O}|P4 zE{6ZbuME?BhG7Ab{2L;`AiD^~CYe{T>4&1sm)1v~d%?c`90_pRR`xeADki)Py`h>K z)L6ixgTQ?YDD3gUe#VI1%!TK4wK)ev^EK{MVm+~YuJg^jRs(p(uOEsMm1If!2`zKM zMUZgZ5jTYbVKhvg?%$Mz308Q2c)3-p|Ll@}#TqHLuJ-cLU{rcavz`1;2ssO?#3F(DA`88 z$~Z&Rld1M8OpG{|?kUQ0Lp>e_^X0Mljr!uLmpGp0!MyTKHJ*&m>c`tlNz4ysLX#5~ zFhjvPsG#=fH?%)tFfoh&iHrm~j{pmahCb!?06Ep)~kHOacT#nP-RjoI)f>nI8xr=6-OA2Qu&l{5(1%VkR}CgZ}#ucON15NN06&&0~{$=;1#y5kCn1$c7 zf81q9VLg(5G~ePWP|o4!%XJ+fA4j<@#rHNcy&L6pDw?}PQPSE1*Yx3{4FwAJ;xf{E z2iTx*CLy0;>LUL}T=I}bWvxJwe8 zhi~~zjJmYO)8KtXH#GDRv_ZN;pKR|hW-o9|59+W*R*F#jMr9?Xs z67EjcoN4T|ny~dLCk(-nb@89{lRnv8kjHG8R~fgk^uW_l<9oW}D`bqG7>njXcviFb z1nHTP8JBE3D-SIhhVS_OTcbuYaxc!mDiCeV@!!HfjFGa;)!N!gVORSSL9;Y{4l8en z!n|0Y>5oCzuWsK7`)4r@%70rjPt=c?1#ztx#o#A@qO`qVMkSzyq~Dl99xOTjx6Fu2M3{!EM%&-4#U;Gvo-9 zK?0FcB;0D#WRU5z#)x4zEE8Eo^XkievL;Q!3z@ak(N^PotQbZYdX#h#_{YqtFI2Q_ zsMd0Ufg-6lBx3PRsI>I?YJa@(q$qO9Z_P@MZ!DnK)mTQBf&O|)Ip0SInr&#<#2T{8 zM8CCh&S5vNCf6bQJJMQ#;RFBW**<-t#+@1xI?qO1nb?UvAbfJr({D6xQNLw4eop(4 z(JCKinI;Hi9Nq@ab-O{0j{2u%oXw}0H5w%zrk`7hS%x2@Nw^6*p(3qXv*CF)R`K-q zW<1>&eb9YzZ%{&B5+}&6`CCbjP&3ma$9FMtaf>aitomXJnf3OjE1!L~T`sso6;AT$ z>-|UcBR@kYsq$aQ*4ONv;SH;J^L{jiI~h`g)9uMS0eHcODEt=Ba-hH)c)FuoF7!;h z(xB$e$H1fol}*BEH^NOut56?=O5XCLI{))S^Gz}PPm}fe%CXx(b5*s?xscjXkc(^^ zP#x(R$34F2=i&5v<5hs)0sH7&a}e$y-p)$&{ymm6*V*ZBGa2%{gPl+`_+P4-Rl8$% ziu-fg-_abja`nve8X7U_K?K8nzIIe+cp}L9uy`3K4%(hoRD6aWs(-(oSn#QSO+BU0 zLpEbX(Ob#2^gO2-P&iaT0cnCt@djlAQ|%#|2%Z3a&m24mEE(BQ+*%7pmwR3_1MB z9>R2FDJjBwjlLl^1TXL*egujMs@U%RbVHVzEoxSHB^5^gLz3kHT2ToU4WxZ}MIL8J z1kF~Lzbwm2E9x5twr)j%iV(bb{)3NbMEEEg1dY)rKi^@{QmH4%KMax=d|8FJt!%bF`m)K?%L zaeg#z^%@l&8_g2#ZoTY+omrHI4x{^S#wf_%0=+W>D9p3odVYpmOspiKCLT6|9( zpmwA}&;sWw3|jHrL{rOtCgs#U7!2&efT9nS2(TMH;)DR_3y^nd5Co7SwR<0}KEa1ndTXdxCj$cb}WYCE){81726@x~k zDNGQ+Xvn!S=d0mbRUN330kGQ!X2`9FlFgTIhViiW7g~iOjRcvfmcn+w_X&)Fw|qs# zBxshUW)kz<7=am^k;o7{bAkpXK0PdT6&UI>f!T0(LbO?!TV$zJ33gjLjSO&4HSBO( zMxl7aylJSV4*N+wiV*lQI6~-&>fDxP>SYu~VSWQ9_grU89lw>|?=Mjoc($cMrvmby z^HM4sQUK`D3o9Ccs;YJJe47HI^}=`u#!5y%!+3Gl8J-~h5i=BfK*jpOG_5!7U=ky{ zRv|`Bgyr`N{rEhLM4}DKTl)kDUrh+Qq%}>OFGvVY-hvo~vSswyC;+(GbV`5Jbq=Ml z+Y^A?jIkDah=}nY?l60BpAg$146Tv&N1=LNhkBkAFv@Rg^3F^X#4}ONa*55*Pw}FC z`=%U(7T1&d0nx{BOS0>hTcwI(gbyXshkv$qd-y?3j%QUwEs;@~*n^C%aHu;5laTSx z?~m82Llv$!rG%cHIKNv9Ch8H;O%PbM=^^r!WF$SsRkfyzv0ke99ew$wgLe)RqAb#2 zl+x-&xXi>W{qgF@0}{$So%8}>8t55lvhNIPg88BjWgIaX+hKf=Wdp9LLJ){b8shPq z{HKL01#_`j?)j5>OkAAT>{eXEW7>av6rd_=b*o`~nl2fC6e>|oj#FHh_-jkf>s%)ZlfNT zedMsE1BkIPg3UYO!9eq(`0jqe)TYnm@K1pOkCrb^0PVE12Lj9g{JoLsoN`{E27@8c(v9}T0Ub@C?;rVG#ypWw_o&5|D8F*bdmFMYq(zm|5$uzFlkw8 zKedIvw-oN|{1Sk}eCS5svr`@dh=V z&z{gdQ56+Bg9ry4KCdZ+r6ebqB+}BE+>5JcjU|G;BP`X&P2*Z_fKL0m5PRZ6BQ_Ek z5derd8W#n)5k*KuGYNHfX93rt&1BV-)=jx|8B+qa99FgiPtzY!nE7qLG5O|SRzyj% zSAEx+E(=fVmgk@~3-X0oeSH>g+;hzV=$IwYx^s6n-P3+%7zO{t?rc3si0Q$R+3-vz zm$91SA4Rr#75H+q>Y$QZcNypQ$;x6t7KIZAgK;}XL}JzT)KDNMGg{C2A6jzb^_sJ` zG-@L|3Z#%k$%A<7fHxWbe(__%2wQ(0sVZLf7d(iRw0l}+{|4NvxxqT4QvM_+j<_!n zCu!#(&jSWT(pT;@4&%j_?~JmE?%lw(A%WBju!Pqh)+jX5BYEo9YdK7mEqmfr*R6>5 zFx4HX7%i7B3!H;11)_aoL4J^02OkR|p-rlp<2@Xbs9nO%&hIQW$iRZoO*`6r5OXzK zBG~i`8ka|;cm=Cm$6f!tTY+IszIujRv|6_v^0N;FbMDicxvim+>Q!GkKbsp%W9%R9 zd$-#_qvPWfxM2A%9z+&f7HW+owIT6KD#ZUPFaPZ#89^Bp;;q5xF{TSqMJ{82{jjOiZNl)b(I z(yEd&D)tV%*WII`?UeuBUfcFYAP|R#iokj{To}9|zDR`YmAyIT#YRI|L9qNejBa{t F;osY@x$FP{ literal 0 HcmV?d00001 diff --git a/packages/loopx-media/extension.toml b/packages/loopx-media/extension.toml index df2d584cac..687c68fa9e 100644 --- a/packages/loopx-media/extension.toml +++ b/packages/loopx-media/extension.toml @@ -1,14 +1,14 @@ schema_version = "loopx_extension_manifest_v0" id = "loopx-media" -version = "0.2.0" +version = "0.3.0" requires_loopx_api = ">=1,<2" -permissions = ["content_media_write"] +permissions = ["content_media_write", "content_media_generate"] [runtime] protocol = "content_ops_media_renderer_v0" entrypoint = "loopx-media" doctor_args = ["--doctor"] -required_permissions = ["content_media_write"] +required_permissions = ["content_media_write", "content_media_generate"] timeout_seconds = 120 [[implements]] diff --git a/packages/loopx-media/pyproject.toml b/packages/loopx-media/pyproject.toml index f8f70f5152..6305075fe7 100644 --- a/packages/loopx-media/pyproject.toml +++ b/packages/loopx-media/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "loopx-media" -version = "0.2.0" +version = "0.3.0" description = "Optional local composition renderer for LoopX content-ops" requires-python = ">=3.11" dependencies = ["Pillow>=11,<13", "imageio-ffmpeg>=0.6,<0.7", "fonttools>=4,<5"] diff --git a/packages/loopx-media/src/loopx_media/generation.py b/packages/loopx-media/src/loopx_media/generation.py new file mode 100644 index 0000000000..90196a989e --- /dev/null +++ b/packages/loopx-media/src/loopx_media/generation.py @@ -0,0 +1,403 @@ +"""Ark video transport, not a scheduler or publication owner. + +Each call does one bounded operation. Paid POST is never retried. The durable +submission journal allows a stopped caller to recover a known task id; an +ambiguous request without an id remains unknown and requires reconciliation. +""" + +from __future__ import annotations + +import base64 +import hashlib +import json +import os +from pathlib import Path +import re +import subprocess +import time +from urllib.error import HTTPError, URLError +from urllib.parse import urlparse +from urllib.request import Request, HTTPRedirectHandler, build_opener + +from PIL import Image + +BASE_URL = "https://ark.cn-beijing.volces.com/api/v3" +MODEL = "doubao-seedance-2-5-260628" +REMOTE_STATES = {"queued", "running", "succeeded", "failed", "cancelled", "expired"} + + +def sha(path: Path) -> str: + with path.open("rb") as source: + return hashlib.file_digest(source, "sha256").hexdigest() + + +def save(path: Path, value: dict) -> None: + # Provider owns its journal only, never the core record or authority state. + temp = path.with_suffix(".tmp") + with temp.open("w", encoding="utf-8") as output: + json.dump(value, output, ensure_ascii=False) + output.flush() + os.fsync(output.fileno()) + temp.replace(path) + fd = os.open(path.parent, os.O_RDONLY) + try: + os.fsync(fd) + finally: + os.close(fd) + + +class NoRedirect(HTTPRedirectHandler): + def redirect_request(self, req, fp, code, msg, headers, newurl): + raise ValueError("Unexpected API redirect") + + +def api(method: str, suffix: str, payload: dict | None = None) -> dict: + if os.environ.get("ARK_BASE_URL", BASE_URL).rstrip("/") != BASE_URL: + raise ValueError("Unsupported Ark endpoint") + key = os.environ.get("ARK_API_KEY") + if not key: + raise ValueError("Cloud credential unavailable") + request = Request( + BASE_URL + "/contents/generations/tasks" + suffix, + data=None if payload is None else json.dumps(payload).encode(), + method=method, + headers={"Authorization": "Bearer " + key, "Content-Type": "application/json"}, + ) + with build_opener(NoRedirect).open(request, timeout=20) as response: + body = response.read(256 * 1024 + 1) + if len(body) > 256 * 1024: + raise ValueError("Cloud response exceeds the read budget") + value = json.loads(body) if body else {} + if not isinstance(value, dict): + raise ValueError("Cloud response is not an object") + return value + + +def task_id(value) -> str: + if not isinstance(value, str) or not re.fullmatch(r"cgt-[a-zA-Z0-9-]{1,90}", value): + raise ValueError("Invalid cloud task reference") + return value + + +def read_observation(value: dict, ident: str) -> dict: + if ( + task_id(value.get("id")) != ident + or value.get("model") != MODEL + or value.get("status") not in REMOTE_STATES + ): + raise ValueError("Cloud task differs from the selected intent") + return { + "task_id": ident, + "model": MODEL, + "status": value["status"], + "completion_tokens": (value.get("usage") or {}).get("completion_tokens"), + "duration_seconds": value.get("duration"), + "created_at": value.get("created_at"), + "updated_at": value.get("updated_at"), + } + + +def reference_content(request: dict, root: Path) -> tuple[list[dict], list[dict]]: + content, provenance = [], [] + for ref in request["plan"]["references"]: + path = Path(request["sources"][ref["role"]]) + if ( + path.is_symlink() + or path.stat().st_size > 2 * 1024 * 1024 + or sha(path) != ref["sha256"] + ): + raise ValueError("Reference snapshot changed") + with Image.open(path) as original: + width, height = original.size + if ( + original.format not in {"PNG", "JPEG"} + or not (300 <= width <= 1920 and 300 <= height <= 1080) + or abs(width / height - 16 / 9) > 0.01 + ): + raise ValueError("This bounded provider requires 16:9 reference frames") + original.load() + # Deterministic, disclosed preprocessing. No crop or generated text. + rgba = original.convert("RGBA") + flat = Image.new("RGBA", rgba.size, "white") + flat.alpha_composite(rgba) + encoded = root / (ref["role"] + ".png") + flat.convert("RGB").save(encoded, format="PNG") + content.append( + { + "type": "image_url", + "image_url": { + "url": "data:image/png;base64," + + base64.b64encode(encoded.read_bytes()).decode("ascii") + }, + "role": ref["role"], + } + ) + provenance.append( + { + "role": ref["role"], + "original_sha256": ref["sha256"], + "sent_sha256": sha(encoded), + "preprocessing": "alpha_composite_white_rgb_png", + "width": width, + "height": height, + } + ) + return content, provenance + + +def _asset_url(value: str) -> str: + parsed = urlparse(value) + host = parsed.hostname or "" + if ( + parsed.scheme != "https" + or parsed.username + or parsed.password + or parsed.port not in (None, 443) + or not any( + host.endswith(suffix) for suffix in (".volces.com", ".volcengine.com") + ) + ): + raise ValueError("Unsupported cloud artifact origin") + return value + + +def download(url: str, destination: Path, maximum: int, *, deadline: float) -> None: + class ArtifactRedirect(HTTPRedirectHandler): + def redirect_request(self, req, fp, code, msg, headers, newurl): + return super().redirect_request( + req, fp, code, msg, headers, _asset_url(newurl) + ) + + temp = destination.with_suffix(destination.suffix + ".partial") + started = time.monotonic() + try: + remaining = deadline - time.monotonic() + if remaining <= 0: + raise TimeoutError("Collection deadline reached") + with ( + build_opener(ArtifactRedirect).open( + _asset_url(url), timeout=min(15, remaining) + ) as response, + temp.open("wb") as output, + ): + total = 0 + while True: + data = response.read(65536) + if not data: + break + total += len(data) + if ( + total > maximum + or time.monotonic() - started > 45 + or time.monotonic() >= deadline + ): + raise ValueError("Cloud asset exceeds the collection budget") + output.write(data) + output.flush() + os.fsync(output.fileno()) + temp.replace(destination) + finally: + temp.unlink(missing_ok=True) + + +def collect(request: dict, remote: dict, root: Path, *, deadline: float) -> dict: + import imageio_ffmpeg + + output = root / "output" + if output.is_symlink(): + raise ValueError("Invalid footage output directory") + output.mkdir(mode=0o700, exist_ok=True) + movie = output / "generated.mp4" + previous = {} + receipt = root / "collection.json" + if ( + receipt.is_file() + and not receipt.is_symlink() + and receipt.stat().st_size <= 256 * 1024 + ): + previous = json.loads(receipt.read_text(encoding="utf-8")) + + def asset(name: str, url: str, maximum: int) -> None: + path = output / name + entry = previous.get("files", {}).get(name, {}) + reusable = ( + previous.get("task_id") == remote["id"] + and previous.get("plan_digest") == request["plan_digest"] + ) + if ( + reusable + and path.is_file() + and not path.is_symlink() + and path.stat().st_size == entry.get("bytes") + and sha(path) == entry.get("sha256") + ): + return + download(url, path, maximum, deadline=deadline) + + # Read the current URL from GET each time; URLs expire and are never the + # durable artifact or included in the caller-visible projection. + asset("generated.mp4", remote["content"]["video_url"], 64 * 1024 * 1024) + ff = imageio_ffmpeg.get_ffmpeg_exe() + info = subprocess.run( + [ + ff, + "-v", + "info", + "-nostats", + "-progress", + "pipe:1", + "-i", + str(movie), + "-f", + "null", + "-", + ], + capture_output=True, + timeout=max(0.1, min(20, deadline - time.monotonic())), + check=True, + ) + frames = re.findall(rb"^frame=(\d+)$", info.stdout, re.M) + micros = re.findall(rb"^out_time_us=(\d+)$", info.stdout, re.M) + if not frames or not micros or int(frames[-1]) < 1: + raise ValueError("Generated video did not fully decode") + seconds = int(micros[-1]) / 1e6 + streams = [ + line + for line in info.stderr.splitlines() + if re.match(rb"\s*Stream #\d+:\d+", line) + ] + video_stream = next((line for line in streams if b"Video:" in line), b"") + dims = re.search(rb"Video:.*? (\d{3,4})x(\d{3,4})", video_stream) + fps = re.search(rb"Video:.*? (\d+(?:\.\d+)?) fps", video_stream) + if ( + not fps + or not dims + or not (300 <= int(dims[1]) <= 1920 and 300 <= int(dims[2]) <= 1080) + ): + raise ValueError("Generated video has unsupported dimensions") + poster = output / "poster.png" + subprocess.run( + [ff, "-v", "error", "-y", "-i", str(movie), "-frames:v", "1", str(poster)], + capture_output=True, + check=True, + timeout=max(0.1, min(10, deadline - time.monotonic())), + ) + files = { + name: {"sha256": sha(output / name), "bytes": (output / name).stat().st_size} + for name in ("generated.mp4", "poster.png") + } + last = (remote.get("content") or {}).get("last_frame_url") + if request["plan"]["return_last_frame"] and last: + path = output / "last-frame.jpg" + asset("last-frame.jpg", last, 4 * 1024 * 1024) + with Image.open(path) as image: + image.verify() + files[path.name] = {"sha256": sha(path), "bytes": path.stat().st_size} + result = { + "task_id": remote["id"], + "plan_digest": request["plan_digest"], + "files": files, + "full_decode": "passed", + "frames": int(frames[-1]), + "measured_seconds": seconds, + "width": int(dims[1]), + "height": int(dims[2]), + "fps": float(fps[1]), + "has_audio": any(b"Audio:" in line for line in streams), + } + save(root / "collection.json", result) + return result + + +def operate(request: dict) -> dict: + deadline = time.monotonic() + 100 + if request.get("protocol") != "content_ops_media_renderer_v0": + raise ValueError("Unsupported footage protocol") + operation = request["operation"] + if operation == "generation.probe": + return { + "ok": True, + "credential_available": bool(os.environ.get("ARK_API_KEY")) + and os.environ.get("ARK_BASE_URL", BASE_URL).rstrip("/") == BASE_URL, + } + root = Path(request["directory"]) + if not root.is_absolute() or root.is_symlink() or not root.is_dir(): + raise ValueError("Invalid footage directory") + if request["plan"]["model"] != MODEL: + raise ValueError("Unsupported video model") + journal = root / "submission.json" + if operation == "generation.submit": + if journal.exists(): + raise ValueError( + "Submission journal already exists; check the existing task" + ) + try: + frames, provenance = reference_content(request, root) + except (OSError, ValueError): + return {"ok": True, "status": "rejected", "error_code": "reference_invalid"} + plan = request["plan"] + payload = { + "model": MODEL, + "content": [{"type": "text", "text": plan["prompt"]}, *frames], + "duration": plan["seconds"], + "resolution": plan["resolution"], + "ratio": "adaptive" if frames else "16:9", + "watermark": plan["watermark"], + "generate_audio": plan["generate_audio"], + "return_last_frame": plan["return_last_frame"], + "execution_expires_after": 3600, + "output_format": "mp4", + "draft": False, + } + # Persist sending before POST. Exclude data URLs and credentials. + saved = { + "plan_digest": request["plan_digest"], + "state": "sending", + "task_id": None, + "references": provenance, + "parameters": {k: v for k, v in payload.items() if k != "content"}, + "request_started_at": time.time(), + } + save(journal, saved) + try: + remote = api("POST", "", payload) + ident = task_id(remote.get("id")) + except HTTPError as error: + # 5xx and request timeouts are ambiguous. No blind paid retry. + rejected = error.code in {400, 401, 403, 404, 413, 422, 429} + saved["state"] = "rejected" if rejected else "submission_unknown" + saved["http_status"] = error.code + save(journal, saved) + return {"ok": True, "status": saved["state"]} + except (OSError, URLError, ValueError): + saved["state"] = "submission_unknown" + save(journal, saved) + return {"ok": True, "status": "submission_unknown"} + saved.update(state="submitted", task_id=ident, request_returned_at=time.time()) + save(journal, saved) + return {"ok": True, "task_id": ident} + if operation not in {"generation.check", "generation.cancel", "generation.collect"}: + raise ValueError("Unsupported footage operation") + saved = json.loads(journal.read_text(encoding="utf-8")) + if saved["plan_digest"] != request["plan_digest"]: + raise ValueError("Task journal belongs to a different intent") + if not saved.get("task_id"): + return {"ok": True, "error_code": "submission_requires_reconciliation"} + ident = task_id(saved["task_id"]) + if request.get("task_id") and request["task_id"] != ident: + raise ValueError("Task journal disagrees with the selected intent") + remote = api("GET", "/" + ident) + observation = read_observation(remote, ident) + response = {"ok": True, "observation": observation} + if operation == "generation.cancel": + # Ark DELETE cancels queued tasks but *deletes records* of finished + # ones. There is no documented atomic queued-only precondition. A GET + # followed by DELETE can erase a task that finishes between requests. + # Keep it intact; stopping local observation does not cancel billing. + response["error_code"] = "atomic_cancellation_unavailable" + elif operation == "generation.collect": + if remote["status"] != "succeeded": + response["error_code"] = "cloud_result_not_ready" + else: + response["result"] = collect(request, remote, root, deadline=deadline) + return response diff --git a/packages/loopx-media/src/loopx_media/renderer.py b/packages/loopx-media/src/loopx_media/renderer.py index ce8c1b9662..206c95a44d 100644 --- a/packages/loopx-media/src/loopx_media/renderer.py +++ b/packages/loopx-media/src/loopx_media/renderer.py @@ -1,8 +1,8 @@ """Bounded local rendering. Stdin is an admitted private composition envelope. -No account, network, arbitrary command, source-directory discovery or publication. -The content-ops caller provides immutable source snapshots and an exclusive attempt -directory. This renderer implements the protocol; it does not admit that effect. +Ordinary render requests have no network or account effects. The separately +permissioned generation operations use the provider's bounded cloud transport. +The content-ops caller admits both effects; neither grants publication. """ from __future__ import annotations @@ -310,7 +310,12 @@ def main() -> int: return 0 raw = sys.stdin.buffer.read(1024 * 1024 + 1) if len(raw) > 1024 * 1024: raise ValueError("Render request exceeds the protocol limit") - result = render(json.loads(raw)) + request = json.loads(raw) + if str(request.get("operation", "")).startswith("generation."): + from .generation import operate + result = operate(request) + else: + result = render(request) except RenderCancelled: result = {"ok": False, "error_code": "cancelled"} except (OSError, ValueError, KeyError, TypeError, TimeoutError, subprocess.SubprocessError): diff --git a/tests/control_plane_ts/content_media_generation.test.ts b/tests/control_plane_ts/content_media_generation.test.ts new file mode 100644 index 0000000000..1e3d0922a7 --- /dev/null +++ b/tests/control_plane_ts/content_media_generation.test.ts @@ -0,0 +1,87 @@ +import assert from "node:assert/strict"; +import test from "node:test"; +import {validateGenerationPlan as plan, transitionGeneration as transition, GENERATION_MODEL} from "../../loopx/control_plane/capabilities/content_media_generation.ts"; + +const at = "2026-10-19T10:00:00Z"; +const brief = () => ({schema_version: "content_ops_generation_plan_v0", title: "Return the artifact", model: GENERATION_MODEL, + prompt: "A single gold artifact travels back to the blue requester. No text.", seconds: 5, resolution: "720p", references: [], + watermark: true, generate_audio: false, return_last_frame: true, + quote: {cny_per_million_tokens: 70, checked_at: at, source_url: "https://console.volcengine.com/ark/region:cn-beijing/docs/model-pricing", max_estimated_cny: 8}}); +function event(state: any, action: string, extra = {}) {return transition({state, action, expected_revision: 1, observed_at: at, ...extra}).state;} +const observation = (status: string) => ({task_id: "cgt-example-001", model: GENERATION_MODEL, status, completion_tokens: 108900, duration_seconds: 5}); + +test("an immutable, digest-bound draft quotes nominal cost without claiming a bill or a spending grant", () => { + const checked = plan({plan: brief()}); + assert.equal(checked.estimate.tokens, 108000); + assert.equal(checked.estimate.cny, 7.56); + assert.equal(checked.estimate.guaranteed_billing_cap, false); + assert.equal(checked.estimate.invoice, "unknown"); + assert.equal(checked.publish_authorized, false); + assert.equal(plan({plan: checked.plan}).plan_digest, checked.plan_digest); + assert.notEqual(plan({plan: {...brief(), prompt: "A different mechanism"}}).plan_digest, checked.plan_digest); + assert.throws(() => plan({plan: {...brief(), quote: {...brief().quote, max_estimated_cny: 7}}}), /budget/); + for (const changes of [{seconds: -1}, {seconds: 30}, {resolution: "1080p"}, {model: "unopened-model"}, {seed: 123}, {prompt: "hello --duration 30"}]) { + assert.throws(() => plan({plan: {...brief(), ...changes}})); + } +}); + +test("cloud input scope is explicit; first and last frames cannot become mixed or escaping references", () => { + const frame = {role: "first_frame", path: "frame.png", sha256: "a".repeat(64), source_ref: "synthetic:scene", visibility: "public_safe"}; + assert.equal(plan({plan: {...brief(), references: [frame]}}).plan.references.length, 1); + for (const changes of [{path: "../secret"}, {path: "/secret"}, {path: "a\\b"}, {sha256: "wrong"}, {visibility: "local_private"}, {role: "reference_image"}, {role: "last_frame"}]) { + assert.throws(() => plan({plan: {...brief(), references: [{...frame, ...changes}]}})); + } +}); + +test("submission acknowledgement is not an observed queue state; duplicates and unknowns cannot create a new paid task", () => { + const prepared = {...plan({plan: brief()}), status: "prepared", revision: 1}; + const sending = event(prepared, "submit"); + const submitted = event(sending, "acknowledge", {task_id: "cgt-example-001"}); + assert.equal(submitted.status, "submitted"); + assert.equal(submitted.observation, undefined); + const unknown = event(sending, "unknown"); + assert.equal(unknown.status, "submission_unknown"); + for (const state of [sending, submitted, unknown]) assert.throws(() => event(state, "submit")); + assert.throws(() => transition({state: prepared, action: "submit", expected_revision: 0, observed_at: at}), /revision/); + assert.throws(() => transition({state: prepared, action: "submit", expected_revision: 1, observed_at: "2026-10-21T00:00:00Z"}), /price/); +}); + +test("remote task identity, observed time and terminal state survive recovery without provider-private fields", () => { + const state = event({...plan({plan: brief()}), status: "prepared", revision: 1}, "submit"); + const running = event(state, "observe", {observation: {...observation("running"), updated_at: 10, private_url: "never-project"}}); + assert.equal(JSON.stringify(running.observation).includes("never-project"), false); + assert.throws(() => event(running, "observe", {observation: {...observation("running"), task_id: "cgt-other"}})); + assert.throws(() => event(running, "observe", {observation: {...observation("queued"), updated_at: 9}})); + const done = event(running, "observe", {observation: observation("succeeded")}); + assert.throws(() => event(done, "observe", {observation: observation("running")})); +}); + +test("local readiness requires the same task, real decoded duration and hash-bound files; it never proves creative or watermark acceptance", () => { + const state = event(event({...plan({plan: brief()}), status: "prepared", revision: 1}, "submit"), "observe", {observation: observation("succeeded")}); + const result = {task_id: state.task_id, plan_digest: state.plan_digest, full_decode: "passed", frames: 120, measured_seconds: 5, width: 1280, height: 720, fps: 24, has_audio: false, + files: Object.fromEntries(["generated.mp4", "poster.png", "last-frame.jpg"].map(name => [name, {sha256: "b".repeat(64), bytes: 100}]))}; + const ready = event(state, "collect", {result}); + assert.equal(ready.result.creative_review, "not_tested"); + assert.equal(ready.result.watermark_visual_check, "not_tested"); + assert.equal(ready.publish_authorized, false); + for (const changes of [{task_id: "cgt-other"}, {plan_digest: "sha256:" + "c".repeat(64)}, {measured_seconds: 30}, {full_decode: "partial"}, {files: {...result.files, "../outside": {sha256: "a".repeat(64), bytes: 2}}}]) { + assert.throws(() => event(state, "collect", {result: {...result, ...changes}})); + } +}); + +test("recollection repairs damaged local bytes without reopening submission or relaxing the requested output", () => { + const state = event(event({...plan({plan: brief()}), status: "prepared", revision: 1}, "submit"), "observe", {observation: observation("succeeded")}); + const result = {task_id: state.task_id, plan_digest: state.plan_digest, full_decode: "passed", frames: 120, measured_seconds: 5, + width: 1280, height: 720, fps: 24, has_audio: false, + files: Object.fromEntries(["generated.mp4", "poster.png", "last-frame.jpg"].map(name => [name, {sha256: "b".repeat(64), bytes: 100}]))}; + const ready = event(state, "collect", {result}); + assert.throws(() => event(ready, "repair", {artifacts_verified: true})); + const repair = event(ready, "repair", {artifacts_verified: false}); + assert.equal(repair.status, "succeeded"); + assert.equal(repair.task_id, ready.task_id); + assert.equal(repair.result, null); + assert.throws(() => event(repair, "submit")); + for (const changes of [{width: 640}, {fps: 30}, {has_audio: true}, {files: {"generated.mp4": result.files["generated.mp4"], "poster.png": result.files["poster.png"]}}]) { + assert.throws(() => event(state, "collect", {result: {...result, ...changes}})); + } +}); diff --git a/tests/test_content_media_generation.py b/tests/test_content_media_generation.py new file mode 100644 index 0000000000..a949b1192a --- /dev/null +++ b/tests/test_content_media_generation.py @@ -0,0 +1,414 @@ +"""Footage intent semantics with deterministic cloud facts, never paid CI calls.""" + +from __future__ import annotations + +from datetime import datetime, timezone +import hashlib +import http.client +import importlib.util +import json +from pathlib import Path +import threading +from urllib.error import HTTPError + +from PIL import Image +import pytest + +from loopx.capabilities.content_ops import generation, media +from loopx.chat_server import ChatHTTPServer, ChatRequestHandler + + +@pytest.fixture +def work(tmp_path): + project = tmp_path / "project" + project.mkdir() + registry = tmp_path / "registry.json" + runtime = tmp_path / "runtime" + registry.write_text( + json.dumps( + { + "schema_version": "0.1", + "common_runtime_root": str(runtime), + "goals": [ + {"id": "media-demo", "repo": str(project), "status": "active"} + ], + } + ) + ) + return generation.GenerationWorkspace( + media.MediaWorkspace( + registry_path=registry, goal_id="media-demo", runtime_root=runtime + ) + ), registry + + +def brief(): + return { + "schema_version": "content_ops_generation_plan_v0", + "title": "A complete return", + "model": "doubao-seedance-2-5-260628", + "prompt": "One gold artifact returns to its requester. No text.", + "seconds": 5, + "resolution": "720p", + "references": [], + "watermark": True, + "generate_audio": False, + "return_last_frame": True, + "quote": { + "cny_per_million_tokens": 70, + "checked_at": datetime.now(timezone.utc).isoformat(), + "source_url": "https://console.volcengine.com/ark/region:cn-beijing/docs/model-pricing", + "max_estimated_cny": 8, + }, + } + + +@pytest.fixture +def provider(): + path = ( + Path(__file__).resolve().parents[1] + / "packages/loopx-media/src/loopx_media/generation.py" + ) + spec = importlib.util.spec_from_file_location( + "media_generation_provider_test", path + ) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def connect(monkeypatch, work, provider): + monkeypatch.setattr( + generation.GenerationWorkspace, + "_call", + lambda self, record, op: provider.operate( + { + "protocol": "content_ops_media_renderer_v0", + "operation": "generation." + op, + "plan": record["plan"], + "plan_digest": record["plan_digest"], + "sources": record["sources"], + "directory": str(self._bundle(record["generation_id"])), + "task_id": record.get("task_id"), + } + ), + ) + monkeypatch.setenv("ARK_API_KEY", "synthetic-test-only") + monkeypatch.delenv("ARK_BASE_URL", raising=False) + + +def test_prepare_is_immutable_hash_bound_and_cloud_read_free(work, monkeypatch): + ws, _ = work + image = ws.media.project / "frame.png" + Image.new("RGBA", (768, 432), (30, 60, 120, 200)).save(image) + source = { + "role": "first_frame", + "path": image.name, + "sha256": hashlib.sha256(image.read_bytes()).hexdigest(), + "source_ref": "synthetic:frame", + "visibility": "public_safe", + } + plan = {**brief(), "references": [source]} + monkeypatch.setattr( + generation.GenerationWorkspace, + "_call", + lambda *a: pytest.fail("local reads must not call cloud"), + ) + prepared = ws.prepare(plan, source_directory=ws.media.project) + ident = prepared["generation_id"] + assert ( + ws.prepare(plan, source_directory=ws.media.project, generation_id=ident)[ + "plan_digest" + ] + == prepared["plan_digest"] + ) + with pytest.raises(ValueError, match="immutable"): + ws.prepare( + {**plan, "prompt": "changed"}, + source_directory=ws.media.project, + generation_id=ident, + ) + image.write_bytes(b"changed") + assert ws.inspect(ident)["references"][0]["sha256"] == source["sha256"] + with pytest.raises(ValueError, match="Source bytes changed"): + ws.prepare(plan, source_directory=ws.media.project) + assert ws.list()["generations"][0]["publish_authorized"] is False + for invalid in ["../secret", "/secret", "gen_not-a-valid-id"]: + with pytest.raises(ValueError): + ws.inspect(invalid) + + +def test_missing_credential_has_no_paid_effect_and_retains_prepared_input( + work, provider, monkeypatch +): + ws, _ = work + connect(monkeypatch, ws, provider) + monkeypatch.delenv("ARK_API_KEY") + monkeypatch.setattr( + provider, "api", lambda *a: pytest.fail("no credential must not call API") + ) + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + result = ws.operate(ident, "submit", expected_revision=1) + assert result["ok"] is False and result["status"] == "prepared" + assert not (ws._bundle(ident) / "submission.json").exists() + + +def test_duplicate_paid_submission_and_crash_recovery_keep_one_provider_task( + work, provider, monkeypatch +): + ws, _ = work + connect(monkeypatch, ws, provider) + calls = [] + + def api(method, suffix, payload=None): + calls.append((method, suffix)) + if method == "POST": + return {"id": "cgt-synthetic-001"} + return { + "id": "cgt-synthetic-001", + "model": provider.MODEL, + "status": "running", + "duration": 5, + "usage": {"completion_tokens": 0}, + } + + monkeypatch.setattr(provider, "api", api) + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + submitted = ws.operate(ident, "submit", expected_revision=1) + assert submitted["status"] == "submitted" and submitted["observation"] is None + ws.operate(ident, "submit", expected_revision=1) + assert [method for method, _ in calls].count("POST") == 1 + # A stopped parent missed stdout after the provider journal was fsynced. + record = ws._record(ident) + record.update(status="submitting", task_id=None) + media._save(ws._bundle(ident) / "record.json", record) + recovered = ws.operate(ident, "check", expected_revision=1) + assert ( + recovered["task_id"] == "cgt-synthetic-001" and recovered["status"] == "running" + ) + assert [method for method, _ in calls].count("POST") == 1 + with pytest.raises(ValueError, match="revision"): + ws.operate(ident, "check", expected_revision=2) + + +def test_ambiguous_post_is_durable_unknown_and_never_reposted( + work, provider, monkeypatch +): + ws, _ = work + connect(monkeypatch, ws, provider) + calls = [] + + def timeout(*args): + calls.append(args[0]) + raise TimeoutError("synthetic lost response") + + monkeypatch.setattr(provider, "api", timeout) + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + assert ( + ws.operate(ident, "submit", expected_revision=1)["status"] + == "submission_unknown" + ) + ws.operate(ident, "submit", expected_revision=1) + read = ws.operate(ident, "check", expected_revision=1) + assert read["error_code"] == "submission_requires_reconciliation" + assert calls == ["POST"] + assert ( + "synthetic-test-only" not in (ws._bundle(ident) / "submission.json").read_text() + ) + + +def test_known_rejection_and_cancellation_race_cannot_erase_a_finished_task( + work, provider, monkeypatch +): + ws, _ = work + connect(monkeypatch, ws, provider) + + def rejected(*args): + raise HTTPError("https://synthetic.invalid", 403, "refused", {}, None) + + monkeypatch.setattr(provider, "api", rejected) + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + assert ws.operate(ident, "submit", expected_revision=1)["status"] == "rejected" + calls = [] + + def api(method, suffix, payload=None): + calls.append(method) + if method == "POST": + return {"id": "cgt-synthetic-002"} + return {"id": "cgt-synthetic-002", "model": provider.MODEL, "status": "queued"} + + monkeypatch.setattr(provider, "api", api) + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + ws.operate(ident, "submit", expected_revision=1) + cancelled = ws.operate(ident, "cancel", expected_revision=1) + assert ( + cancelled["status"] == "queued" + and cancelled["error_code"] == "atomic_cancellation_unavailable" + ) + assert "DELETE" not in calls + + +def test_reference_preprocessing_retains_both_digests_and_disallows_arbitrary_download_origins( + work, provider +): + ws, _ = work + image = ws.media.project / "frame.png" + Image.new("RGBA", (768, 432), (0, 0, 0, 0)).save(image) + digest = hashlib.sha256(image.read_bytes()).hexdigest() + request = { + "plan": {"references": [{"role": "first_frame", "sha256": digest}]}, + "sources": {"first_frame": str(image)}, + } + content, refs = provider.reference_content(request, ws.media.project) + assert content[0]["image_url"]["url"].startswith("data:image/png;base64,") + assert refs[0]["original_sha256"] == digest and refs[0]["sent_sha256"] != digest + with Image.open(ws.media.project / "first_frame.png") as sent: + assert sent.mode == "RGB" and sent.getpixel((0, 0)) == (255, 255, 255) + for url in [ + "http://example.volces.com/x", + "https://127.0.0.1/x", + "https://volces.com.evil.invalid/x", + "file:///secret", + "https://user:pass@x.volces.com/x", + ]: + with pytest.raises(ValueError): + provider._asset_url(url) + + +def test_real_loopback_transport_rejects_foreign_goal_paths_and_mixed_file_ids( + work, monkeypatch +): + ws, registry = work + ident = ws.prepare(brief(), source_directory=ws.media.project)["generation_id"] + monkeypatch.setattr( + generation.GenerationWorkspace, + "_call", + lambda *a: pytest.fail("list must not call cloud"), + ) + server = ChatHTTPServer(("127.0.0.1", 0), ChatRequestHandler) + server.registry_path, server.runtime_root = registry, ws.media.runtime_root + server.selected_goal_id, server.verbose = "media-demo", False + worker = threading.Thread(target=server.serve_forever, daemon=True) + worker.start() + + def post(body): + client = http.client.HTTPConnection("127.0.0.1", server.server_address[1]) + client.request( + "POST", + "/api/chat/content-media", + json.dumps(body), + { + "Content-Type": "application/json", + "Origin": f"http://127.0.0.1:{server.server_address[1]}", + }, + ) + response = client.getresponse() + data = response.read() + client.close() + return response.status, json.loads(data) + + try: + status, data = post({"goal_id": "media-demo", "action": "generation_list"}) + assert status == 200 and data["generations"][0]["generation_id"] == ident + for body in [ + {"goal_id": "foreign", "action": "generation_list"}, + { + "goal_id": "media-demo", + "action": "generation_submit", + "generation_id": ident, + "expected_revision": True, + }, + { + "goal_id": "media-demo", + "action": "generation_submit", + "generation_id": ident, + "expected_revision": 1, + "path": "/secret", + }, + ]: + assert post(body)[0] == 400 + assert str(ws.media.project).encode() not in json.dumps(data).encode() + finally: + server.shutdown() + server.server_close() + worker.join(timeout=3) + + +def test_collection_reuses_only_task_and_digest_bound_verified_bytes( + work, provider, monkeypatch +): + from types import SimpleNamespace + import subprocess + import sys + import time + + ws, _ = work + root = ws.media.project / "collection" + output = root / "output" + output.mkdir(parents=True) + (output / "generated.mp4").write_bytes(b"synthetic movie bytes") + Image.new("RGB", (1280, 720), "white").save(output / "last-frame.jpg") + files = { + name: { + "sha256": provider.sha(output / name), + "bytes": (output / name).stat().st_size, + } + for name in ["generated.mp4", "last-frame.jpg"] + } + receipt = { + "task_id": "cgt-collection-001", + "plan_digest": "sha256:" + "a" * 64, + "files": files, + } + provider.save(root / "collection.json", receipt) + request = { + "plan_digest": receipt["plan_digest"], + "plan": {"return_last_frame": True}, + } + remote = { + "id": receipt["task_id"], + "content": { + "video_url": "https://asset.volces.com/movie", + "last_frame_url": "https://asset.volces.com/last", + }, + } + monkeypatch.setitem( + sys.modules, + "imageio_ffmpeg", + SimpleNamespace(get_ffmpeg_exe=lambda: "synthetic-ffmpeg"), + ) + + def decode(argv, **kwargs): + if "-frames:v" in argv: + Image.new("RGB", (1280, 720), "white").save(argv[-1]) + return subprocess.CompletedProcess(argv, 0, b"", b"") + return subprocess.CompletedProcess( + argv, + 0, + b"frame=120\nout_time_us=5000000\n", + b"Metadata title: Audio: text, Video: 1x1\n Stream #0:0 Video: synthetic, 1280x720, 24 fps", + ) + + monkeypatch.setattr(provider.subprocess, "run", decode) + downloads = [] + + def download(url, destination, maximum, *, deadline): + downloads.append(destination.name) + if destination.suffix == ".mp4": + destination.write_bytes(b"replacement synthetic movie") + else: + Image.new("RGB", (1280, 720), "white").save(destination) + + monkeypatch.setattr(provider, "download", download) + result = provider.collect(request, remote, root, deadline=time.monotonic() + 5) + assert downloads == [] and result["fps"] == 24 and result["has_audio"] is False + # A changed local file cannot inherit a prior source receipt. + (output / "generated.mp4").write_bytes(b"damaged") + provider.collect(request, remote, root, deadline=time.monotonic() + 5) + assert downloads == ["generated.mp4"] + # A receipt from a different remote task cannot license either cached file. + receipt["task_id"] = "cgt-other" + provider.save(root / "collection.json", receipt) + downloads.clear() + provider.collect(request, remote, root, deadline=time.monotonic() + 5) + assert downloads == ["generated.mp4", "last-frame.jpg"] From 3a3cc7a2e3017102235231eaa53a40c8374bfbd8 Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Mon, 19 Oct 2026 21:50:02 +0800 Subject: [PATCH 2/6] feat(content-ops): retain single-image intents and recover saved responses Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../capability-localization.ts | 4 +- .../content-generated-images.tsx | 83 ++++ .../content-media-workbench.css | 4 +- .../content-media-workbench.tsx | 6 +- .../capabilities/content_ops/catalog_entry.py | 15 + loopx/capabilities/content_ops/cli.py | 2 +- loopx/capabilities/content_ops/generation.py | 14 +- loopx/capabilities/content_ops/images.py | 225 ++++++++++ loopx/capabilities/content_ops/media.py | 4 +- loopx/capabilities/content_ops/media_cli.py | 28 ++ .../capabilities/content_media_image.ts | 91 ++++ .../control_plane/effect_runtime_handlers.ts | 2 + loopx/presentation/content_media_api.py | 23 +- packages/loopx-media/extension.toml | 2 +- packages/loopx-media/pyproject.toml | 2 +- .../loopx-media/src/loopx_media/images.py | 363 +++++++++++++++ .../loopx-media/src/loopx_media/renderer.py | 3 + .../content_media_image.test.ts | 35 ++ tests/test_content_media_images.py | 422 ++++++++++++++++++ 19 files changed, 1299 insertions(+), 29 deletions(-) create mode 100644 apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx create mode 100644 loopx/capabilities/content_ops/images.py create mode 100644 loopx/control_plane/capabilities/content_media_image.ts create mode 100644 packages/loopx-media/src/loopx_media/images.py create mode 100644 tests/control_plane_ts/content_media_image.test.ts create mode 100644 tests/test_content_media_images.py diff --git a/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts b/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts index 10c6255377..9043698ee0 100644 --- a/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts +++ b/apps/presentation/dashboard/src/features/personal-workspace/capability-localization.ts @@ -14,7 +14,7 @@ const capabilityCopy: Record> = { en: { codex_chat: {displayName: "Codex Goal conversation defaults", description: "Choose the native Codex profile, model, speed tier and reasoning effort for new Goal conversations. Existing conversations keep their original history. This does not start or reconfigure an active Agent Loop, worker or steward."}, decision_context: {displayName: "Find evidence", description: "Find advisory evidence with a temporary private profile. OpenViking and BM25 are retrieval implementations; this page does not save a binding or enable automatic memory."}, - content_ops: {displayName: "Content production", description: "Prepare source-backed outlines, compose local videos or generate cloud footage with the optional media provider. Review the result before sharing."}, + content_ops: {displayName: "Content production", description: "Prepare source-backed outlines, compose local videos or generate cloud images and footage with the optional media provider. Review the result before sharing."}, goal_storage: { displayName: "New Goal authority", description: "New Goals default to canonical SQLite with hard leases. Choose storage and execution policy for future Goals. Existing Goals require a separate backed-up migration." }, manager_runtime: { displayName: "Runtime", @@ -83,7 +83,7 @@ const capabilityCopy: Record> = { "zh-CN": { codex_chat: {displayName: "Codex Goal 对话默认值", description: "分别选择 Codex 配置来源、模型、速度档和推理强度,作用于本机的新 Goal 对话。已有对话保留原历史;不会启动或重配正在运行的 Agent Loop、工作 Agent 或管家。"}, decision_context: {displayName: "资料召回", description: "通过临时私有配置查找参考证据。OpenViking、BM25 是检索实现;本页不保存绑定,也不启用自动记忆。"}, - content_ops: {displayName: "内容制作", description: "准备有来源的提纲,使用可选媒体扩展制作本机视频或生成云端镜头,检查作品后再分享。"}, + content_ops: {displayName: "内容制作", description: "准备有来源的提纲,使用可选媒体扩展制作本机视频、生成云端图像与镜头,检查作品后再分享。"}, goal_storage: { displayName: "新 Goal 的权威存储", description: "新 Goal 默认使用 canonical SQLite 与 hard lease;可选择之后新 Goal 的存储与执行策略。已有 Goal 仍需单独备份、迁移。" }, manager_runtime: { displayName: "运行环境", diff --git a/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx new file mode 100644 index 0000000000..fd20b6bf15 --- /dev/null +++ b/apps/presentation/dashboard/src/features/personal-workspace/content-generated-images.tsx @@ -0,0 +1,83 @@ +import {useEffect, useRef, useState} from "react"; +import {useWorkspaceI18n} from "./i18n"; + +type ImageIntent = { + image_id: string; revision: number; title: string; prompt: string; status: string; model: string; + width: number; height: number; estimate: {cny: number}; error_code: string | null; + reported_usage_estimate_cny: number | null; watermark_requested: boolean; + quote: {source_url: string; checked_at: string}; + references: {source_ref: string; sha256: string}[]; + result: {files: Record; usage: {generated_images: number; output_tokens: number | null}} | null; +}; +type Library = {images: ImageIntent[]; provider: {status: string}}; +const ENDPOINT = "/api/chat/content-media"; + +export function ContentGeneratedImages({goalId}: {goalId: string}) { + const {locale} = useWorkspaceI18n(); + const copy = (zh: string, en: string) => locale === "zh-CN" ? zh : en; + const [library,setLibrary] = useState(null), [selectedId,select] = useState(""); + const [busy,setBusy] = useState(false), [error,setError] = useState(""); + const epoch = useRef(0), sequence = useRef(0), pending = useRef(false); + const current = library?.images.find(i=>i.image_id === selectedId) ?? library?.images[0]; + async function request(action: string, item?: ImageIntent) { + const response = await fetch(ENDPOINT,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({goal_id:goalId,action:`image_${action}`, + ...(item ? {image_id:item.image_id,expected_revision:item.revision} : {})})}); + if (!response.ok) throw new Error(); + return response.json(); + } + async function reload() { + const scope = epoch.current, read = ++sequence.current; + try {const value: Library = await request("list"); if(scope === epoch.current && read === sequence.current) {setLibrary(value);setError("");}} + catch {if(scope === epoch.current && read === sequence.current) setError(copy("图像暂不可读,请重新读取。","Cannot read images. Recheck this workspace."));} + } + useEffect(()=>{ + epoch.current += 1;pending.current = false;setBusy(false);setLibrary(null);setError("");select("");void reload(); + return ()=>{epoch.current += 1;}; + },[goalId]); + async function operate(action: "submit" | "collect") { + if (!current || pending.current) return; + const scope = epoch.current;pending.current = true;setBusy(true);setError(""); + try { + const result = await request(action,current); + if(scope !== epoch.current) return; + await reload(); + if(!result.ok) setError(result.error_code === "image_provider_unavailable" + ? copy("图像生成暂不可用。请让 Agent 检查扩展与图像专用凭据;草稿保留,未提交生成。","Image generation is unavailable. Ask your Agent to check the extension and image credential; the draft is retained without a generation submission.") + : copy("生成或保存未确认。仅检查本机已保存的响应,不会重新提交付费请求。","Generation or collection is unconfirmed. Only inspect the saved local response; no paid request will be repeated.")); + } catch {if(scope === epoch.current) setError(copy("请求结果未确认,请重新读取并检查已保存响应。","Request unconfirmed. Recheck and inspect the saved response."));} + finally {if(scope === epoch.current) {pending.current = false;setBusy(false);}} + } + const names: Record = { + prepared:copy("待生成","Ready to generate"),submitting:copy("请求结果待确认","Request awaiting confirmation"), + submission_unknown:copy("请求结果未知","Request outcome unknown"),rejected:copy("请求被拒绝","Request rejected"), + ready:copy("图像已保存","Image saved"),damaged:copy("本机图像校验失败","Local image verification failed"), + }; + function file(name: string) {return `${ENDPOINT}/file?${new URLSearchParams({goal_id:goalId,image_id:current!.image_id,file:name})}`;} + return