From c8119d79b9496f95dd5ef34b670f992ca79f6eb8 Mon Sep 17 00:00:00 2001 From: auberginewly <3127221787@qq.com> Date: Tue, 13 Oct 2026 15:55:36 +0800 Subject: [PATCH 1/4] feat(ai): track and persist per-turn agent token usage --- electron/ai-edition/chat-persistence.test.ts | 251 ++++++++- electron/ai-edition/chat-persistence.ts | 45 ++ .../chat-service.compaction.test.ts | 8 +- .../ai-edition/chat-service.toolloop.test.ts | 42 +- electron/ai-edition/chat-service.ts | 16 + electron/ai-edition/deep-agent/service.ts | 72 +-- .../deep-agent/usage.integration.test.ts | 389 ++++++++++++++ electron/ai-edition/deep-agent/usage.test.ts | 235 +++++++++ electron/ai-edition/deep-agent/usage.ts | 182 +++++++ .../ai-edition/ChatUsageSummary.test.tsx | 74 +++ .../ai-edition/ChatUsageSummary.tsx | 56 ++ src/components/ai-edition/LeftPanel.tsx | 230 +++++++-- .../ai-edition/LeftPanel.usage.test.tsx | 485 ++++++++++++++++++ src/i18n/locales/ar/editor.json | 11 +- src/i18n/locales/cs/editor.json | 11 +- src/i18n/locales/de/editor.json | 11 +- src/i18n/locales/en/editor.json | 11 +- src/i18n/locales/es/editor.json | 11 +- src/i18n/locales/fr/editor.json | 11 +- src/i18n/locales/it/editor.json | 11 +- src/i18n/locales/ja-JP/editor.json | 11 +- src/i18n/locales/ko-KR/editor.json | 11 +- src/i18n/locales/pt-BR/editor.json | 11 +- src/i18n/locales/ru/editor.json | 11 +- src/i18n/locales/tr/editor.json | 11 +- src/i18n/locales/vi/editor.json | 11 +- src/i18n/locales/zh-CN/editor.json | 11 +- src/i18n/locales/zh-TW/editor.json | 11 +- src/native/contracts.ts | 15 + .../testing/manual-e2e-checklist.md | 1 + 30 files changed, 2158 insertions(+), 108 deletions(-) create mode 100644 electron/ai-edition/deep-agent/usage.integration.test.ts create mode 100644 electron/ai-edition/deep-agent/usage.test.ts create mode 100644 electron/ai-edition/deep-agent/usage.ts create mode 100644 src/components/ai-edition/ChatUsageSummary.test.tsx create mode 100644 src/components/ai-edition/ChatUsageSummary.tsx create mode 100644 src/components/ai-edition/LeftPanel.usage.test.tsx diff --git a/electron/ai-edition/chat-persistence.test.ts b/electron/ai-edition/chat-persistence.test.ts index 782ed579d..64c448455 100644 --- a/electron/ai-edition/chat-persistence.test.ts +++ b/electron/ai-edition/chat-persistence.test.ts @@ -3,6 +3,8 @@ import { tmpdir } from "node:os"; import path from "node:path"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; import { createEmptyDocument } from "../../src/lib/ai-edition/schema"; +import { ChatPersistence } from "./chat-persistence"; +import { createTurnUsageAccumulator } from "./deep-agent/usage"; vi.mock("./deep-agent/service", () => ({ invokeOpenScreenAgent: vi.fn() })); vi.mock("./deep-agent/chat-model", () => ({ @@ -58,6 +60,7 @@ beforeEach(() => { text: "reply", document: args.document, mutated: false, + usage: createTurnUsageAccumulator().snapshot(), })); }); @@ -67,6 +70,247 @@ afterEach(async () => { }); describe("local Agent chat history", () => { + const reportedUsage = { + inputTokens: 31, + outputTokens: 7, + totalTokens: 38, + modelCallCount: 2, + countedCallCount: 2, + status: "complete" as const, + cachedInputTokens: 9, + reasoningOutputTokens: 3, + }; + + it.each([true, false])("restores usage on the owning message (success=%s)", async (success) => { + invokeMock.mockImplementation(async (args) => ({ + text: success ? "reply" : "", + reason: success ? undefined : "provider failed", + document: args.document, + mutated: false, + usage: { ...reportedUsage, rawProvider: { apiKey: key } }, + })); + const session = createSession("proj_usage"); + const result = await runChat("proj_usage", session.id, "question", config()); + if (!success) expect(result.userMessage).toMatchObject({ role: "user", usage: reportedUsage }); + await restart(); + const messages = selectSession("proj_usage", session.id)?.messages ?? []; + expect(messages).toHaveLength(success ? 2 : 1); + expect(messages.at(-1)?.usage).toEqual(reportedUsage); + if (success) expect(messages[0]?.usage).toBeUndefined(); + expect(readFileSync(path.join(root, "proj_usage.chat.json"), "utf8")).not.toContain(key); + }); + + it.each([ + true, + false, + ])("binds delayed usage to the original session (success=%s)", async (success) => { + let reply!: (value: Awaited>) => void; + invokeMock.mockImplementation(() => new Promise((resolve) => (reply = resolve))); + const first = createSession("proj_binding", "A"); + const second = createSession("proj_binding", "B"); + const turn = runChat("proj_binding", first.id, "question", config()); + await vi.waitFor(() => expect(invokeMock).toHaveBeenCalled()); + selectSession("proj_binding", second.id); + reply({ + text: success ? "reply" : "", + document: createEmptyDocument({ title: "x", projectId: "proj_binding" }), + mutated: false, + usage: reportedUsage, + }); + await turn; + await restart(); + expect(selectSession("proj_binding", first.id)?.messages.at(-1)?.usage).toEqual(reportedUsage); + expect(selectSession("proj_binding", second.id)?.messages).toEqual([]); + }); + + it.each([ + ["session", true], + ["session", false], + ["project", true], + ["project", false], + ["rewind", true], + ["rewind", false], + ])("discards delayed results after %s removal (success=%s)", async (boundary, success) => { + const projectId = "proj_boundary"; + const session = createSession(projectId); + const document = createEmptyDocument({ title: "x", projectId }); + await runChat(projectId, session.id, "earlier", config(), document); + const earlier = selectSession(projectId, session.id)!.messages[0]; + let reply!: (value: Awaited>) => void; + invokeMock.mockImplementation(() => new Promise((resolve) => (reply = resolve))); + const turn = runChat(projectId, session.id, "removed question", config(), document); + await vi.waitFor(() => expect(invokeMock).toHaveBeenCalledTimes(2)); + if (boundary === "session") deleteSession(projectId, session.id); + if (boundary === "project") { + await deleteProjectChat(projectId); + createSession(projectId, "replacement"); + } + if (boundary === "rewind") + expect(rewindToMessage(projectId, session.id, earlier.id).success).toBe(true); + reply({ text: success ? "late reply" : "", document, mutated: false, usage: reportedUsage }); + expect(await turn).toMatchObject({ success: false }); + await restart(); + const allMessages = listSessions(projectId).flatMap( + (entry) => selectSession(projectId, entry.id)?.messages ?? [], + ); + expect( + allMessages.some( + (entry) => entry.content === "late reply" || entry.content === "removed question", + ), + ).toBe(false); + }); + + it.each([ + true, + false, + ])("discards a pending turn rewound to its own user message (success=%s)", async (success) => { + const projectId = "proj_own_rewind"; + const session = createSession(projectId); + const document = createEmptyDocument({ title: "before", projectId }); + let reply!: (value: Awaited>) => void; + invokeMock.mockImplementation(() => new Promise((resolve) => (reply = resolve))); + const turn = runChat(projectId, session.id, "pending question", config(), document); + await vi.waitFor(() => expect(invokeMock).toHaveBeenCalled()); + const user = selectSession(projectId, session.id)!.messages[0]; + expect(rewindToMessage(projectId, session.id, user.id).success).toBe(true); + reply({ + text: success ? "stale reply" : "", + document: createEmptyDocument({ title: "stale edit", projectId }), + mutated: true, + usage: reportedUsage, + }); + const result = await turn; + expect(result.success).toBe(false); + expect(result.document).toBeUndefined(); + expect(result.assistantMessage).toBeUndefined(); + expect(result.userMessage).toBeUndefined(); + expect(selectSession(projectId, session.id)?.messages).toEqual([ + { ...user, checkpointId: null }, + ]); + await restart(); + const restored = selectSession(projectId, session.id)?.messages; + expect(restored).toHaveLength(1); + expect(restored?.[0]).toMatchObject({ id: user.id, content: "pending question" }); + expect(restored?.[0].usage).toBeUndefined(); + }); + + it("uses the actual session created for a stale id", async () => { + await runChat("proj_stale", "stale-id", "question", config()); + await restart(); + const session = listSessions("proj_stale")[0]; + expect(selectSession("proj_stale", session.id)?.messages[1]?.usage?.status).toBe("unavailable"); + }); + + it("retains legacy messages and drops only invalid usage", async () => { + const session = createSession("proj_corrupt"); + await runChat("proj_corrupt", session.id, "question", config()); + await flushChatPersistence(); + const file = path.join(root, "proj_corrupt.chat.json"); + const saved = JSON.parse(readFileSync(file, "utf8")); + delete saved.sessions[0].messages[0].usage; + saved.sessions[0].messages[1].usage = { ...reportedUsage, countedCallCount: 3 }; + writeFileSync(file, JSON.stringify(saved)); + await restart(); + const messages = selectSession("proj_corrupt", session.id)?.messages; + expect(messages?.map((entry) => entry.content)).toEqual(["question", "reply"]); + expect(messages?.every((entry) => entry.usage === undefined)).toBe(true); + }); + + it.each([ + { inputTokens: -1 }, + { outputTokens: 1.5 }, + { totalTokens: Number.MAX_SAFE_INTEGER + 1 }, + { countedCallCount: 3 }, + { modelCallCount: 0, countedCallCount: 0 }, + { totalTokens: 39 }, + { cachedInputTokens: 32 }, + { cacheCreationInputTokens: 32 }, + { reasoningOutputTokens: 8 }, + { status: "unavailable" as const, countedCallCount: 0 }, + { status: "partial" as const, countedCallCount: 0 }, + ])("drops malformed usage while retaining its message: %j", async (invalid) => { + const store = new ChatPersistence(root); + await store.write("proj_validation", [ + { + id: "session", + projectId: "proj_validation", + title: "Title", + createdAt: "now", + messages: [ + { + id: "message", + role: "assistant", + content: "retained", + createdAt: "now", + usage: { ...reportedUsage, ...invalid }, + }, + ], + }, + ]); + const messages = new ChatPersistence(root).read("proj_validation")[0]?.messages; + expect(messages).toHaveLength(1); + expect(messages?.[0]).toMatchObject({ id: "message", content: "retained" }); + expect(messages?.[0].usage).toBeUndefined(); + }); + + it.each([ + { ...reportedUsage, status: "partial" as const }, + { + ...reportedUsage, + status: "partial" as const, + inputTokens: Number.MAX_SAFE_INTEGER, + totalTokens: 1, + }, + { + inputTokens: 0, + outputTokens: 0, + totalTokens: 0, + modelCallCount: 1, + countedCallCount: 0, + status: "unavailable" as const, + }, + ])("retains valid partial lower bounds and unavailable usage: %j", async (usage) => { + const store = new ChatPersistence(root); + await store.write("proj_valid", [ + { + id: "session", + projectId: "proj_valid", + title: "Title", + createdAt: "now", + messages: [{ id: "message", role: "assistant", content: "reply", createdAt: "now", usage }], + }, + ]); + expect(new ChatPersistence(root).read("proj_valid")[0]?.messages[0].usage).toEqual(usage); + }); + + it("does not create usage before model validation succeeds", async () => { + const session = createSession("proj_no_config"); + const result = await runChat("proj_no_config", session.id, "question", { + getConfig: () => null, + } as unknown as LlmConfigStore); + expect(result).toMatchObject({ success: false }); + expect(result.userMessage).toBeUndefined(); + expect(invokeMock).not.toHaveBeenCalled(); + expect(selectSession("proj_no_config", session.id)?.messages).toEqual([]); + }); + + it("keeps failure diagnostics and usage out of subsequent model history", async () => { + invokeMock.mockImplementation(async (args) => ({ + text: "", + reason: "diagnostic-secret", + document: args.document, + mutated: false, + usage: reportedUsage, + })); + const session = createSession("proj_failure_history"); + await runChat("proj_failure_history", session.id, "first question", config()); + await runChat("proj_failure_history", session.id, "second question", config()); + expect(invokeMock.mock.lastCall?.[0].history).toEqual([ + { role: "user", content: "first question" }, + { role: "user", content: "second question" }, + ]); + }); + it("restores multiple sessions and persists rename and delete per project", async () => { const first = createSession("proj_a", "First"); const deleted = createSession("proj_a", "Deleted"); @@ -237,7 +481,12 @@ describe("local Agent chat history", () => { await vi.waitFor(() => expect(invokeMock).toHaveBeenCalled()); await deleteProjectChat("proj_mid_turn"); const document = createEmptyDocument({ title: "x", projectId: "proj_mid_turn" }); - reply({ text: "late reply", document, mutated: false }); + reply({ + text: "late reply", + document, + mutated: false, + usage: createTurnUsageAccumulator().snapshot(), + }); expect(await turn).toMatchObject({ success: false }); await restart(); diff --git a/electron/ai-edition/chat-persistence.ts b/electron/ai-edition/chat-persistence.ts index 79d6d9079..30d2cb8eb 100644 --- a/electron/ai-edition/chat-persistence.ts +++ b/electron/ai-edition/chat-persistence.ts @@ -10,12 +10,57 @@ import { z } from "zod"; import { renameWithRetry } from "../atomic-rename"; const toolCallSchema = z.object({ name: z.string(), summary: z.string() }); +const tokenCountSchema = z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER); +const usageSchema = z + .object({ + inputTokens: tokenCountSchema, + outputTokens: tokenCountSchema, + totalTokens: tokenCountSchema, + modelCallCount: tokenCountSchema, + countedCallCount: tokenCountSchema, + status: z.enum(["complete", "partial", "unavailable"]), + cachedInputTokens: tokenCountSchema.optional(), + cacheCreationInputTokens: tokenCountSchema.optional(), + reasoningOutputTokens: tokenCountSchema.optional(), + }) + .refine((usage) => { + if (usage.countedCallCount > usage.modelCallCount) return false; + if ((usage.cachedInputTokens ?? 0) > usage.inputTokens) return false; + if ((usage.cacheCreationInputTokens ?? 0) > usage.inputTokens) return false; + if ((usage.reasoningOutputTokens ?? 0) > usage.outputTokens) return false; + if (usage.status === "unavailable") { + return ( + usage.countedCallCount === 0 && + usage.inputTokens === 0 && + usage.outputTokens === 0 && + usage.totalTokens === 0 + ); + } + if (usage.countedCallCount === 0) return false; + if (usage.status === "complete") { + const sum = usage.inputTokens + usage.outputTokens; + return ( + usage.modelCallCount > 0 && + usage.countedCallCount === usage.modelCallCount && + Number.isSafeInteger(sum) && + sum === usage.totalTokens + ); + } + // Partial aggregates retain safe lower bounds independently on overflow. + return true; + }); +// A damaged usage extension must not invalidate an otherwise readable v1 message. +const optionalUsageSchema = z.unknown().transform((value) => { + const parsed = usageSchema.safeParse(value); + return parsed.success ? parsed.data : undefined; +}); const messageSchema = z.object({ id: z.string().min(1), role: z.enum(["user", "assistant"]), content: z.string(), createdAt: z.string().min(1), toolCalls: z.array(toolCallSchema).optional(), + usage: optionalUsageSchema.optional(), }); const sessionSchema = z.object({ id: z.string().min(1), diff --git a/electron/ai-edition/chat-service.compaction.test.ts b/electron/ai-edition/chat-service.compaction.test.ts index 37f715b35..bee0ff4bc 100644 --- a/electron/ai-edition/chat-service.compaction.test.ts +++ b/electron/ai-edition/chat-service.compaction.test.ts @@ -4,6 +4,7 @@ // behind the summarizer, so no test here needs a provider or a key. import { beforeEach, describe, expect, it, vi } from "vitest"; +import { createTurnUsageAccumulator } from "./deep-agent/usage"; vi.mock("./deep-agent/service", () => ({ invokeOpenScreenAgent: vi.fn(), @@ -60,7 +61,12 @@ beforeEach(() => { chatModelMock.mockReset(); invokeMock.mockImplementation(async (args) => { histories.push([...args.history]); - return { text: "ok", document: args.document, mutated: false }; + return { + text: "ok", + document: args.document, + mutated: false, + usage: createTurnUsageAccumulator().snapshot(), + }; }); }); diff --git a/electron/ai-edition/chat-service.toolloop.test.ts b/electron/ai-edition/chat-service.toolloop.test.ts index 11719179d..d7dd986b5 100644 --- a/electron/ai-edition/chat-service.toolloop.test.ts +++ b/electron/ai-edition/chat-service.toolloop.test.ts @@ -10,6 +10,7 @@ import { createEmptyDocument, documentSchema, } from "../../src/lib/ai-edition/schema"; +import { createTurnUsageAccumulator } from "./deep-agent/usage"; vi.mock("./deep-agent/service", () => ({ invokeOpenScreenAgent: vi.fn(), @@ -99,7 +100,12 @@ beforeEach(() => { // ponytail: default mock — tests override per-scenario. invokeMock.mockImplementation(async (args) => { fixture.captured.push({ args }); - return { text: "ok", document: args.document, mutated: false }; + return { + text: "ok", + document: args.document, + mutated: false, + usage: createTurnUsageAccumulator().snapshot(), + }; }); }); @@ -109,7 +115,7 @@ beforeEach(() => { async function streamAgent( args: Parameters[0], events: ReadonlyArray<{ kind: string; payload: unknown }>, -): Promise<{ text: string; document: AxcutDocument; mutated: boolean }> { +): Promise { const sink = args.sink; for (const event of events) { switch (event.kind) { @@ -138,6 +144,7 @@ async function streamAgent( text: "Done.", document: args.document, mutated: false, + usage: createTurnUsageAccumulator().snapshot(), }; } @@ -146,7 +153,12 @@ describe("runChat tool loop", () => { invokeMock.mockImplementationOnce(async (args) => { args.sink.toolStart("addTrim", { startSec: 5, endSec: 8, reason: "silence" }); args.sink.toolEnd("addTrim", true, "added trim 0:05.0 – 0:08.0"); - return { text: "Done.", document: args.document, mutated: true }; + return { + text: "Done.", + document: args.document, + mutated: true, + usage: createTurnUsageAccumulator().snapshot(), + }; }); const session = createSession("proj_loop"); @@ -168,7 +180,12 @@ describe("runChat tool loop", () => { invokeMock.mockImplementationOnce(async (args) => { args.sink.toolStart("addTrim", { startSec: 1, endSec: 2 }); args.sink.toolEnd("addTrim", true, "added trim 0:01.0 – 0:02.0"); - return { text: "Done.", document: args.document, mutated: true }; + return { + text: "Done.", + document: args.document, + mutated: true, + usage: createTurnUsageAccumulator().snapshot(), + }; }); const session = createSession("proj_rewind"); @@ -273,6 +290,7 @@ describe("runChat tool loop", () => { text: "Hi!", document: args.document, mutated: false, + usage: createTurnUsageAccumulator().snapshot(), })); const s = createSession("proj_text_only"); const result = await runChat("proj_text_only", s.id, "hello", stubConfig()); @@ -291,7 +309,12 @@ describe("runChat tool loop", () => { args.sink.thinking("concluding."); args.sink.toolStart("addTrim", { startSec: 1, endSec: 2 }); args.sink.toolEnd("addTrim", true, "added trim 0:01.0 – 0:02.0"); - return { text: "Done.", document: args.document, mutated: true }; + return { + text: "Done.", + document: args.document, + mutated: true, + usage: createTurnUsageAccumulator().snapshot(), + }; }); const sink = { @@ -335,7 +358,12 @@ describe("runChat tool loop", () => { invokeMock.mockReset(); invokeMock.mockImplementationOnce(async (args) => { args.sink.error("Upstream 404 404 Page not found"); - return { text: "", document: args.document, mutated: false }; + return { + text: "", + document: args.document, + mutated: false, + usage: createTurnUsageAccumulator().snapshot(), + }; }); const sinkErr = { text: (delta: string) => fixture.events.push({ kind: "text", payload: delta }), @@ -402,6 +430,7 @@ describe("allowAgentEdits reaches the agent", () => { text: "I went ahead and cut them.", document: args.document, mutated: true, + usage: createTurnUsageAccumulator().snapshot(), })); const session = createSession("proj_consent_belt"); const result = await runChat( @@ -421,6 +450,7 @@ describe("allowAgentEdits reaches the agent", () => { text: "Cut them.", document: args.document, mutated: true, + usage: createTurnUsageAccumulator().snapshot(), })); const session = createSession("proj_consent_allowed"); const result = await runChat( diff --git a/electron/ai-edition/chat-service.ts b/electron/ai-edition/chat-service.ts index e056f04b1..c7ce849c8 100644 --- a/electron/ai-edition/chat-service.ts +++ b/electron/ai-edition/chat-service.ts @@ -475,18 +475,33 @@ export async function runChat( return { success: false, error: "The project was deleted while the agent was replying." }; } + // Bind the turn to the actual session and user message captured above, even + // when the caller supplied a stale id or selected another session meanwhile. + if (sessions.get(session.id) !== session) { + return { success: false, error: "The chat session was deleted while the agent was replying." }; + } + const originatingMessage = session.messages.find((entry) => entry.id === userMessage.id); + // Rewind preserves message ids but replaces survivors with copies. Identity + // also rejects a turn whose own user message was the rewind target. + if (originatingMessage !== userMessage) { + return { success: false, error: "The chat was rewound while the agent was replying." }; + } + if (!result.text) { // ponytail: surface the deep-agent's diagnostic so the user can see // *why* the model produced no text (e.g. MiniMax streaming only // thinking blocks, or a non-text content shape that our extractor // missed). Falls back to the generic message when the agent didn't // provide a reason. + originatingMessage.usage = result.usage; + persistProject(projectId); return { success: false, error: result.reason ?? "Empty response from model.", // The message is stored all the same, and can be rewound to retry it. userMessageId: userMessage.id, userMessageCheckpointId: userMessage.checkpointId ?? undefined, + userMessage: originatingMessage, }; } @@ -494,6 +509,7 @@ export async function runChat( id: randomUUID(), role: "assistant", content: result.text, + usage: result.usage, createdAt: new Date().toISOString(), toolCalls: appliedToolCalls.length ? appliedToolCalls : undefined, }; diff --git a/electron/ai-edition/deep-agent/service.ts b/electron/ai-edition/deep-agent/service.ts index 00fc819ee..d80d8b159 100644 --- a/electron/ai-edition/deep-agent/service.ts +++ b/electron/ai-edition/deep-agent/service.ts @@ -47,7 +47,7 @@ import { ZOOM_DEPTH_LEGEND, } from "../../../src/lib/ai-edition/timeline/zoom-scale"; import { ZOOM_TRANSITION_LEGEND } from "../../../src/lib/ai-edition/timeline/zoom-transitions"; -import type { SegmentationSupport } from "../../../src/native/contracts"; +import type { AgentTurnUsage, SegmentationSupport } from "../../../src/native/contracts"; import { AGENT_EDITS_SETTING, type AgentToolExecution, @@ -107,6 +107,7 @@ import { messageContentToThinking, type OpenScreenChatModelConfig, } from "./chat-model"; +import { createTurnUsageAccumulator } from "./usage"; export interface OpenScreenAgentSink { text: (delta: string) => void; @@ -664,6 +665,7 @@ export async function probeCursorTelemetry( const SILENT_TOOL_EVENTS: ReadonlySet = new Set(["on_tool_start", "on_tool_end"]); export interface InvokeResult { + usage: AgentTurnUsage; text: string; document: AxcutDocument; mutated: boolean; @@ -678,6 +680,9 @@ export async function invokeOpenScreenAgent(args: InvokeArgs): Promise = []; for await (const event of stream) { + usage.observe(event); const eventType = typeof event.event === "string" ? event.event : ""; const data = event.data as Record | undefined; const name = typeof event.name === "string" ? (event.name as string) : ""; @@ -784,9 +785,9 @@ export async function invokeOpenScreenAgent(args: InvokeArgs): Promise e.event) .join(",")}). Last chunk: ${sample}`; sink.error(reason); - return { text: "", document: holder.current, mutated, reason }; + return { text: "", document: holder.current, mutated, reason, usage: usage.snapshot() }; } - return { text: finalText.trim(), document: holder.current, mutated }; + return { text: finalText.trim(), document: holder.current, mutated, usage: usage.snapshot() }; } catch (err) { // ponytail: surface the LangChain/HTTP error (with name + truncated // stack) so we can tell whether the stream threw (e.g. MiniMax @@ -810,6 +811,7 @@ export async function invokeOpenScreenAgent(args: InvokeArgs): Promise { + let requests = 0; + const server = createServer((req, res) => { + req.resume(); + req.on("end", () => { + requests++; + if (mode === "failure" && requests === 2) { + res.writeHead(400); + res.end( + JSON.stringify({ error: { message: "fixture failure", type: "invalid_request_error" } }), + ); + return; + } + if (mode === "anthropic") { + sse( + res, + [ + { + type: "message_start", + message: { + id: "msg_1", + type: "message", + role: "assistant", + model: "claude-fixture", + content: [], + stop_reason: null, + stop_sequence: null, + usage: { + input_tokens: 10, + output_tokens: 0, + cache_read_input_tokens: 4, + cache_creation_input_tokens: 3, + }, + }, + }, + { type: "content_block_start", index: 0, content_block: { type: "text", text: "" } }, + { type: "content_block_delta", index: 0, delta: { type: "text_delta", text: "Done" } }, + { type: "content_block_stop", index: 0 }, + { + type: "message_delta", + delta: { stop_reason: "end_turn", stop_sequence: null }, + usage: { output_tokens: 5 }, + }, + { type: "message_stop" }, + ], + true, + ); + return; + } + if (mode === "responses") { + const response = { + id: "resp_1", + object: "response", + created_at: 1, + status: "completed", + model: "gpt-fixture", + output: [ + { + id: "m1", + type: "message", + role: "assistant", + status: "completed", + content: [{ type: "output_text", text: "Done", annotations: [] }], + }, + ], + usage: { + input_tokens: 10, + output_tokens: 5, + total_tokens: 15, + input_tokens_details: { cached_tokens: 4 }, + output_tokens_details: { reasoning_tokens: 2 }, + }, + }; + sse( + res, + [ + { + type: "response.created", + response: { ...response, status: "in_progress", output: [] }, + }, + { + type: "response.output_text.delta", + item_id: "m1", + output_index: 0, + content_index: 0, + delta: "Done", + }, + { type: "response.completed", response }, + ], + true, + ); + return; + } + const useTool = (mode === "chat" || mode === "failure") && requests === 1; + const message = useTool + ? { + role: "assistant", + content: "", + tool_calls: [ + { + id: "call_1", + type: "function", + function: { name: "getCurrentDocument", arguments: "{}" }, + }, + ], + } + : { role: "assistant", content: mode === "empty" ? "" : "Done" }; + const usage = { + prompt_tokens: 10, + completion_tokens: 5, + total_tokens: 15, + prompt_tokens_details: { cached_tokens: 4 }, + completion_tokens_details: { reasoning_tokens: 2 }, + }; + if (mode === "nonstream") { + res.setHeader("content-type", "application/json"); + res.end( + JSON.stringify({ + id: "chat1", + object: "chat.completion", + created: 1, + model: "fixture", + choices: [{ index: 0, message, finish_reason: "stop" }], + usage, + }), + ); + return; + } + sse(res, [ + { + id: "chat1", + object: "chat.completion.chunk", + created: 1, + model: "fixture", + choices: [ + { + index: 0, + delta: useTool + ? { role: "assistant", tool_calls: [{ index: 0, ...message.tool_calls?.[0] }] } + : message, + finish_reason: null, + }, + ], + }, + { + id: "chat1", + object: "chat.completion.chunk", + created: 1, + model: "fixture", + choices: [], + usage, + }, + ]); + }); + }); + await new Promise((resolve) => server.listen(0, "127.0.0.1", resolve)); + const address = server.address(); + if (!address || typeof address === "string") throw new Error("missing fixture address"); + const baseURL = `http://127.0.0.1:${address.port}`; + try { + const model = + mode === "anthropic" + ? new ChatAnthropic({ + apiKey: "fixture", + model: "claude-fixture", + anthropicApiUrl: baseURL, + maxRetries: 0, + }) + : new ChatOpenAI({ + apiKey: "fixture", + model: "fixture", + configuration: { baseURL }, + maxRetries: 0, + useResponsesApi: mode === "responses", + disableStreaming: mode === "nonstream", + }); + const agent = createAgent({ + model, + tools: [ + tool(() => "read", { + name: "getCurrentDocument", + description: "read", + schema: z.object({}), + }), + ], + }); + const accumulator = createTurnUsageAccumulator(); + const ends: Record[] = []; + try { + for await (const event of agent.streamEvents({ + messages: [{ role: "user", content: "Read" }], + })) { + accumulator.observe(event); + if (event.event === "on_chat_model_end") + ends.push(event.data.output as Record); + } + } catch (error) { + if (mode !== "failure") throw error; + } + expect(ends).toHaveLength(mode === "chat" ? 2 : 1); + expect(ends[0].usage_metadata).toMatchObject({ + input_tokens: mode === "anthropic" ? 17 : 10, + output_tokens: 5, + total_tokens: mode === "anthropic" ? 22 : 15, + }); + expect(accumulator.snapshot()).toMatchObject({ + inputTokens: mode === "anthropic" ? 17 : mode === "chat" ? 20 : 10, + outputTokens: mode === "chat" ? 10 : 5, + modelCallCount: mode === "chat" || mode === "failure" ? 2 : 1, + countedCallCount: mode === "chat" ? 2 : 1, + status: mode === "failure" ? "partial" : "complete", + cachedInputTokens: mode === "chat" ? 8 : 4, + }); + if (mode === "anthropic") expect(accumulator.snapshot().cacheCreationInputTokens).toBe(3); + requests = 0; + const result = await invokeOpenScreenAgent({ + document: createEmptyDocument({ projectId: "usage", title: "usage" }), + model: { + provider: + mode === "anthropic" + ? "anthropic" + : mode === "nonstream" + ? "google" + : "openai-compatible", + model: + mode === "nonstream" + ? "gemini-3-fixture" + : mode === "responses" + ? "gpt-5-fixture" + : "fixture", + apiKey: "fixture", + baseUrl: baseURL, + maxRetries: 0, + }, + history: [], + userMessage: "Read", + sink: { + text: vi.fn(), + thinking: vi.fn(), + toolStart: vi.fn(), + toolEnd: vi.fn(), + error: vi.fn(), + }, + }); + if (mode === "empty") expect(result.reason).toContain("Empty response"); + expect(result.usage).toMatchObject({ + inputTokens: mode === "anthropic" ? 17 : mode === "chat" ? 20 : 10, + outputTokens: mode === "chat" ? 10 : 5, + status: mode === "failure" ? "partial" : "complete", + }); + } finally { + await new Promise((resolve, reject) => + server.close((error) => (error ? reject(error) : resolve())), + ); + } +}, 15000); + +it("returns unavailable usage for model-construction errors", async () => { + const factory = vi + .spyOn(chatModelFactory, "createOpenScreenChatModel") + .mockRejectedValueOnce(new Error("construction failed")); + const result = await invokeOpenScreenAgent({ + document: createEmptyDocument({ projectId: "usage-error", title: "usage" }), + model: { provider: "openai-compatible", model: "fixture", baseUrl: "not a URL" }, + history: [], + userMessage: "Read", + sink: { + text: vi.fn(), + thinking: vi.fn(), + toolStart: vi.fn(), + toolEnd: vi.fn(), + error: vi.fn(), + }, + }); + expect(result.usage).toMatchObject({ modelCallCount: 0, status: "unavailable" }); + factory.mockRestore(); +}); + +it.each([ + "nonstream-zero", + "stream-zero", + "missing-usage", +])("accounts for %s HTTP metadata", async (mode) => { + const server = createServer((req, res) => { + req.resume(); + req.on("end", () => { + const usage = + mode !== "missing-usage" + ? { prompt_tokens: 10, completion_tokens: 0, total_tokens: 10 } + : undefined; + const message = { role: "assistant", content: "Done" }; + if (mode === "nonstream-zero") { + res.setHeader("content-type", "application/json"); + res.end( + JSON.stringify({ + id: "zero", + object: "chat.completion", + created: 1, + model: "fixture", + choices: [{ index: 0, message, finish_reason: "stop" }], + usage, + }), + ); + } else + sse(res, [ + { + id: "missing", + object: "chat.completion.chunk", + created: 1, + model: "fixture", + choices: [{ index: 0, delta: message, finish_reason: "stop" }], + usage, + }, + ]); + }); + }); + await new Promise((resolve) => server.listen(0, "127.0.0.1", resolve)); + const address = server.address(); + if (!address || typeof address === "string") throw new Error("missing address"); + try { + const model = new ChatOpenAI({ + apiKey: "fixture", + model: "fixture", + configuration: { baseURL: `http://127.0.0.1:${address.port}` }, + disableStreaming: mode === "nonstream-zero", + maxRetries: 0, + }); + const agent = createAgent({ model, tools: [] }); + const usage = createTurnUsageAccumulator(); + for await (const event of agent.streamEvents({ + messages: [{ role: "user", content: "Read" }], + })) { + usage.observe(event); + if (event.event === "on_chat_model_end" && mode === "nonstream-zero") { + // Locked ChatOpenAI drops explicit zero completion_tokens from both + // metadata records. Without the raw count, completeness is unknowable. + expect(event.data.output.usage_metadata).toMatchObject({ + input_tokens: 10, + total_tokens: 10, + }); + expect(event.data.output.usage_metadata).not.toHaveProperty("output_tokens"); + expect(event.data.output.response_metadata.tokenUsage).toEqual({ + promptTokens: 10, + totalTokens: 10, + }); + } + } + expect(usage.snapshot()).toMatchObject({ + inputTokens: mode !== "missing-usage" ? 10 : 0, + modelCallCount: 1, + outputTokens: 0, + totalTokens: mode !== "missing-usage" ? 10 : 0, + status: + mode === "nonstream-zero" ? "partial" : mode === "stream-zero" ? "complete" : "unavailable", + }); + } finally { + await new Promise((resolve, reject) => + server.close((error) => (error ? reject(error) : resolve())), + ); + } +}); diff --git a/electron/ai-edition/deep-agent/usage.test.ts b/electron/ai-edition/deep-agent/usage.test.ts new file mode 100644 index 000000000..a52e59ec1 --- /dev/null +++ b/electron/ai-edition/deep-agent/usage.test.ts @@ -0,0 +1,235 @@ +import { describe, expect, it } from "vitest"; +import { createTurnUsageAccumulator } from "./usage"; + +const start = (run_id = "a") => ({ event: "on_chat_model_start", run_id }); +const end = (usage_metadata?: unknown, run_id = "a") => ({ + event: "on_chat_model_end", + run_id, + data: { output: { usage_metadata } }, +}); +const full = { input_tokens: 10, output_tokens: 5, total_tokens: 15 }; +describe("turn usage", () => { + it.each([ + ["cachedInputTokens", "input", "cache_read"], + ["cacheCreationInputTokens", "input", "cache_creation"], + ["reasoningOutputTokens", "output", "reasoning"], + ] as const)("omits %s when core overflow retains a smaller parent lower bound", (field, direction, detail) => { + const a = createTurnUsageAccumulator(); + const parent = direction === "input" ? "input_tokens" : "output_tokens"; + const details = direction === "input" ? "input_token_details" : "output_token_details"; + a.observe(end({ input_tokens: 0, output_tokens: 0, [parent]: 1, [details]: { [detail]: 1 } })); + a.observe( + end( + { + input_tokens: 0, + output_tokens: 0, + [parent]: Number.MAX_SAFE_INTEGER, + [details]: { [detail]: Number.MAX_SAFE_INTEGER - 1 }, + }, + "b", + ), + ); + const result = a.snapshot(); + expect(result).toMatchObject({ status: "partial", modelCallCount: 2, countedCallCount: 2 }); + expect(direction === "input" ? result.inputTokens : result.outputTokens).toBe(1); + expect(result.totalTokens).toBe(1); + expect(result).not.toHaveProperty(field); + }); + + it("bounds enriched details against retained conflicting core", () => { + const a = createTurnUsageAccumulator(); + a.observe(end(full)); + a.observe( + end({ + input_tokens: 20, + output_tokens: 10, + total_tokens: 30, + input_token_details: { cache_read: 15, cache_creation: 15 }, + output_token_details: { reasoning: 8 }, + }), + ); + expect(a.snapshot()).toMatchObject({ inputTokens: 10, outputTokens: 5, status: "partial" }); + expect(a.snapshot()).not.toHaveProperty("cachedInputTokens"); + expect(a.snapshot()).not.toHaveProperty("cacheCreationInputTokens"); + expect(a.snapshot()).not.toHaveProperty("reasoningOutputTokens"); + }); + + it("enriches missing details on duplicate finals", () => { + const a = createTurnUsageAccumulator(); + a.observe(end(full)); + a.observe(end({ ...full, input_token_details: { cache_read: 4 } })); + expect(a.snapshot()).toMatchObject({ cachedInputTokens: 4, status: "complete" }); + }); + it("preserves first details and marks conflicting details partial", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ ...full, input_token_details: { cache_read: 4 } })); + a.observe(end({ ...full, input_token_details: { cache_read: 8 } })); + expect(a.snapshot()).toMatchObject({ cachedInputTokens: 4, status: "partial" }); + }); + it("merges complementary partial finals", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ input_tokens: 10 })); + a.observe(end({ output_tokens: 5, total_tokens: 15 })); + expect(a.snapshot()).toMatchObject({ + inputTokens: 10, + outputTokens: 5, + totalTokens: 15, + status: "complete", + }); + }); + + it("upgrades total-only metadata when later input/output agree", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ total_tokens: 15 })); + a.observe(end({ input_tokens: 10, output_tokens: 5 })); + expect(a.snapshot()).toMatchObject({ totalTokens: 15, status: "complete" }); + }); + + it("sums three completed calls to 660", () => { + const a = createTurnUsageAccumulator(); + for (const [id, input, output] of [ + ["a", 100, 10], + ["b", 200, 20], + ["c", 300, 30], + ] as const) + a.observe(end({ input_tokens: input, output_tokens: output }, id)); + expect(a.snapshot()).toMatchObject({ + inputTokens: 600, + outputTokens: 60, + totalTokens: 660, + modelCallCount: 3, + countedCallCount: 3, + status: "complete", + }); + }); + it("retains optional details when a duplicate end omits them", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ ...full, input_token_details: { cache_read: 4 } })); + a.observe(end(full)); + expect(a.snapshot().cachedInputTokens).toBe(4); + }); + + it("is unavailable without observations or credible usage", () => { + const a = createTurnUsageAccumulator(); + expect(a.snapshot().status).toBe("unavailable"); + a.observe(start()); + a.observe(end()); + expect(a.snapshot()).toMatchObject({ + modelCallCount: 1, + countedCallCount: 0, + status: "unavailable", + }); + }); + it("counts final messages once, ignores chunks and upgrades missing usage", () => { + const a = createTurnUsageAccumulator(); + a.observe(start()); + a.observe({ + event: "on_chat_model_stream", + run_id: "a", + data: { chunk: { usage_metadata: full } }, + }); + a.observe(end()); + a.observe(end(full)); + a.observe(end(full)); + expect(a.snapshot()).toMatchObject({ + inputTokens: 10, + outputTokens: 5, + totalTokens: 15, + modelCallCount: 1, + countedCallCount: 1, + status: "complete", + }); + }); + it("retains the first credible record on conflict", () => { + const a = createTurnUsageAccumulator(); + a.observe(end(full)); + a.observe(end({ ...full, input_tokens: 11, total_tokens: 16 })); + expect(a.snapshot()).toMatchObject({ inputTokens: 10, totalTokens: 15, status: "partial" }); + }); + it("upgrades a partial final record when later metadata supplies missing core fields", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ input_tokens: 10 })); + a.observe(end(full)); + expect(a.snapshot()).toMatchObject({ inputTokens: 10, totalTokens: 15, status: "complete" }); + }); + it("accepts explicit zero and omitted total", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ input_tokens: 0, output_tokens: 0 })); + expect(a.snapshot()).toMatchObject({ countedCallCount: 1, totalTokens: 0, status: "complete" }); + }); + it.each([ + { input_tokens: 8 }, + { output_tokens: 3 }, + { total_tokens: 12 }, + { ...full, total_tokens: 20 }, + { input_tokens: 10, output_tokens: "5" }, + { input_tokens: 10, output_tokens: -1 }, + { input_tokens: 10, output_tokens: Infinity }, + { input_tokens: 10, output_tokens: 0.5 }, + ])("retains lower bounds for %j", (usage) => { + const a = createTurnUsageAccumulator(); + a.observe(end(usage)); + expect(a.snapshot()).toMatchObject({ countedCallCount: 1, status: "partial" }); + }); + it("rejects unsafe sums", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ input_tokens: Number.MAX_SAFE_INTEGER, output_tokens: 1 })); + expect(a.snapshot().status).toBe("partial"); + expect(Number.isSafeInteger(a.snapshot().totalTokens)).toBe(true); + }); + it("does not sum unidentified calls and keeps prior totals on failures", () => { + const a = createTurnUsageAccumulator(); + a.observe(end(full)); + a.observe(end(full, "")); + a.observe(start("b")); + a.observe({ event: "on_chat_model_error", run_id: "b" }); + expect(a.snapshot()).toMatchObject({ + totalTokens: 15, + modelCallCount: 2, + countedCallCount: 1, + status: "partial", + }); + }); + it("omits invalid details, includes subsets without adding them", () => { + const a = createTurnUsageAccumulator(); + a.observe( + end({ + ...full, + input_token_details: { cache_read: 4, cache_creation: -1 }, + output_token_details: { reasoning: 2 }, + }), + ); + expect(a.snapshot()).toMatchObject({ + totalTokens: 15, + cachedInputTokens: 4, + reasoningOutputTokens: 2, + status: "complete", + }); + expect(a.snapshot()).not.toHaveProperty("cacheCreationInputTokens"); + }); + it("marks unfinished and missing metadata calls partial", () => { + const a = createTurnUsageAccumulator(); + a.observe(end(full)); + a.observe(start("b")); + expect(a.snapshot().status).toBe("partial"); + a.observe(end(undefined, "b")); + expect(a.snapshot().status).toBe("partial"); + }); + it("ignores raw response metadata and unrelated events", () => { + const a = createTurnUsageAccumulator(); + a.observe({ event: "on_chain_end", run_id: "x" }); + a.observe({ + event: "on_chat_model_end", + run_id: "a", + data: { output: { response_metadata: { usage: full } } }, + }); + expect(a.snapshot()).toMatchObject({ modelCallCount: 1, status: "unavailable" }); + }); + it("prevents overflow across calls", () => { + const a = createTurnUsageAccumulator(); + a.observe(end({ input_tokens: Number.MAX_SAFE_INTEGER, output_tokens: 0 })); + a.observe(end(full, "b")); + expect(a.snapshot().status).toBe("partial"); + expect(Number.isSafeInteger(a.snapshot().inputTokens)).toBe(true); + }); +}); diff --git a/electron/ai-edition/deep-agent/usage.ts b/electron/ai-edition/deep-agent/usage.ts new file mode 100644 index 000000000..b5af250da --- /dev/null +++ b/electron/ai-edition/deep-agent/usage.ts @@ -0,0 +1,182 @@ +import type { AgentTurnUsage } from "../../../src/native/contracts"; + +type RecordValue = Record; +function record(value: unknown): RecordValue | undefined { + return value !== null && typeof value === "object" ? (value as RecordValue) : undefined; +} +function count(value: unknown): number | undefined { + return typeof value === "number" && Number.isSafeInteger(value) && value >= 0 ? value : undefined; +} +interface CallUsage { + core: { input?: number; output?: number; total?: number }; + inputTokens: number; + outputTokens: number; + totalTokens: number; + complete: boolean; + cachedInputTokens?: number; + cacheCreationInputTokens?: number; + reasoningOutputTokens?: number; +} +function parseUsage(value: unknown): CallUsage | undefined { + const usage = record(value); + if (!usage) return undefined; + const input = count(usage.input_tokens); + const output = count(usage.output_tokens); + const total = count(usage.total_tokens); + if (input === undefined && output === undefined && total === undefined) return undefined; + const sum = (input ?? 0) + (output ?? 0); + const safe = Number.isSafeInteger(sum); + const full = input !== undefined && output !== undefined; + let totalTokens: number; + // Incomplete core fields retain known lower bounds. Full input/output are + // authoritative even when a provider reports an inconsistent total. + if (safe && full) totalTokens = sum; + else if (safe) totalTokens = Math.max(sum, total ?? 0); + else totalTokens = total ?? Math.max(input ?? 0, output ?? 0); + const result: CallUsage = { + core: { input, output, total: total ?? (full && safe ? sum : undefined) }, + inputTokens: input ?? 0, + outputTokens: output ?? 0, + totalTokens, + complete: full && safe && (usage.total_tokens === undefined || total === sum), + }; + const inputDetails = record(usage.input_token_details); + const outputDetails = record(usage.output_token_details); + const cached = count(inputDetails?.cache_read); + const creation = count(inputDetails?.cache_creation); + const reasoning = count(outputDetails?.reasoning); + if (cached !== undefined && input !== undefined && cached <= input) + result.cachedInputTokens = cached; + if (creation !== undefined && input !== undefined && creation <= input) + result.cacheCreationInputTokens = creation; + if (reasoning !== undefined && output !== undefined && reasoning <= output) + result.reasoningOutputTokens = reasoning; + return result; +} + +/** Only completed model messages carry authoritative usage. Stream chunks can + * contain cumulative counters and must never be summed. SDK retries hidden + * inside a model invocation are outside this observable accounting boundary. */ +export function createTurnUsageAccumulator() { + const calls = new Map< + string, + { usage?: CallUsage; ended: boolean; conflict: boolean; failed: boolean } + >(); + let gap = false; + return { + observe(value: unknown) { + const event = record(value); + if ( + !event || + !["on_chat_model_start", "on_chat_model_end", "on_chat_model_error"].includes( + String(event.event), + ) + ) + return; + const id = event.run_id; + if (typeof id !== "string" || !id.trim()) { + gap = true; + return; + } + const call = calls.get(id) ?? { ended: false, conflict: false, failed: false }; + calls.set(id, call); + if (event.event === "on_chat_model_error") call.failed = true; + if (event.event !== "on_chat_model_end") return; + call.ended = true; + const usage = parseUsage(record(record(event.data)?.output)?.usage_metadata); + if (!usage) return; + if (!call.usage) call.usage = usage; + else { + const previous = call.usage; + const core = { ...previous.core }; + let enriched = false; + for (const key of ["input", "output", "total"] as const) { + const value = usage.core[key]; + if (value === undefined) continue; + if (core[key] === undefined) { + core[key] = value; + enriched = true; + } else if (core[key] !== value) call.conflict = true; + } + // Recompute from the union of compatible known fields. A duplicate may + // supply just the missing output, rather than repeating its input count. + const merged = enriched + ? parseUsage({ + input_tokens: core.input, + output_tokens: core.output, + total_tokens: core.total, + })! + : { ...previous }; + for (const key of [ + "cachedInputTokens", + "cacheCreationInputTokens", + "reasoningOutputTokens", + ] as const) { + const first = previous[key]; + const next = usage[key]; + if (first !== undefined && next !== undefined && first !== next) call.conflict = true; + const value = first ?? next; + const bound = key === "reasoningOutputTokens" ? merged.core.output : merged.core.input; + if (value !== undefined && bound !== undefined && value <= bound) merged[key] = value; + else delete merged[key]; + } + call.usage = merged; + } + }, + snapshot(): AgentTurnUsage { + const result: AgentTurnUsage = { + inputTokens: 0, + outputTokens: 0, + totalTokens: 0, + modelCallCount: calls.size, + countedCallCount: 0, + status: "unavailable", + }; + let complete = !gap && calls.size > 0; + const overflowedDetails = new Set(); + const fields = [ + "inputTokens", + "outputTokens", + "totalTokens", + "cachedInputTokens", + "cacheCreationInputTokens", + "reasoningOutputTokens", + ] as const; + for (const call of calls.values()) { + if (!call.ended || call.failed || call.conflict || !call.usage?.complete) complete = false; + if (!call.usage) continue; + result.countedCallCount++; + for (const field of fields) { + const value = call.usage[field]; + if (value === undefined || overflowedDetails.has(field)) continue; + const sum = (result[field] ?? 0) + value; + if (Number.isSafeInteger(sum)) result[field] = sum; + else { + // Keep the previous safe aggregate as a lower bound on overflow. + complete = false; + if (field !== "inputTokens" && field !== "outputTokens" && field !== "totalTokens") { + delete result[field]; + overflowedDetails.add(field); + } + } + } + } + // Core overflow can retain a smaller lower bound than independently + // summed details. Keep every published subset bounded by that retained core. + for (const field of [ + "cachedInputTokens", + "cacheCreationInputTokens", + "reasoningOutputTokens", + ] as const) { + const bound = field === "reasoningOutputTokens" ? result.outputTokens : result.inputTokens; + if (result[field] !== undefined && result[field] > bound) { + delete result[field]; + complete = false; + } + } + result.status = + result.countedCallCount === 0 ? "unavailable" : complete ? "complete" : "partial"; + return result; + }, + }; +} diff --git a/src/components/ai-edition/ChatUsageSummary.test.tsx b/src/components/ai-edition/ChatUsageSummary.test.tsx new file mode 100644 index 000000000..c3aeb697e --- /dev/null +++ b/src/components/ai-edition/ChatUsageSummary.test.tsx @@ -0,0 +1,74 @@ +// @vitest-environment jsdom +import "@testing-library/jest-dom"; +import { cleanup, render } from "@testing-library/react"; +import { afterEach, describe, expect, it } from "vitest"; +import { TooltipProvider } from "@/components/ui/tooltip"; +import { I18nProvider } from "@/contexts/I18nContext"; +import type { AgentTurnUsage } from "@/native/contracts"; +import { ChatUsageSummary } from "./ChatUsageSummary"; + +afterEach(cleanup); +const complete: AgentTurnUsage = { + inputTokens: 500, + outputTokens: 160, + totalTokens: 660, + modelCallCount: 3, + countedCallCount: 3, + status: "complete", +}; +const show = (usage?: AgentTurnUsage) => + render( + + + + + , + ); +describe("ChatUsageSummary", () => { + it("shows totals and model calls with accessible accounting details", () => { + const view = show(complete); + expect(view.getByText("660 tokens · 3 model calls")).toHaveAttribute( + "aria-label", + expect.stringContaining("Input: 500"), + ); + expect(view.getByText("660 tokens · 3 model calls")).toHaveAttribute( + "aria-label", + expect.stringContaining("3 of 3 model calls counted"), + ); + }); + it("marks partial totals as incomplete", () => { + expect( + show({ ...complete, totalTokens: 440, countedCallCount: 2, status: "partial" }).getByText( + "440 known tokens · incomplete", + ), + ).toBeInTheDocument(); + }); + it("does not turn unavailable usage into zero", () => { + const view = show({ ...complete, totalTokens: 0, countedCallCount: 0, status: "unavailable" }); + expect(view.getByText("Token usage unavailable")).toBeInTheDocument(); + expect(view.queryByText(/0 tokens/)).toBeNull(); + }); + it("keeps legacy messages quiet", () => { + expect(show().container).toBeEmptyDOMElement(); + }); + it("shows explicitly reported zero", () => { + expect( + show({ ...complete, inputTokens: 0, outputTokens: 0, totalTokens: 0 }).getByText( + "0 tokens · 3 model calls", + ), + ).toBeInTheDocument(); + }); + it("labels optional details as reported counts and omits missing details", () => { + const view = show({ ...complete, cachedInputTokens: 0, reasoningOutputTokens: 12 }); + const label = view.getByText("660 tokens · 3 model calls").getAttribute("aria-label"); + expect(label).toContain("Reported cached input: 0"); + expect(label).toContain("Reported reasoning output: 12"); + expect(label).not.toContain("cache creation"); + }); + it("formats counts for the selected locale", () => { + localStorage.setItem("openscreen-locale", "de"); + const view = show({ ...complete, totalTokens: 1234 }); + expect(view.getByText(/1.234/)).toBeInTheDocument(); + localStorage.clear(); + }); +}); diff --git a/src/components/ai-edition/ChatUsageSummary.tsx b/src/components/ai-edition/ChatUsageSummary.tsx new file mode 100644 index 000000000..c739ac1f8 --- /dev/null +++ b/src/components/ai-edition/ChatUsageSummary.tsx @@ -0,0 +1,56 @@ +import { Tooltip } from "@/components/ui/tooltip"; +import { useI18n, useScopedT } from "@/contexts/I18nContext"; +import type { AgentTurnUsage } from "@/native/contracts"; + +/** Provider-reported usage for this turn, separate from the context-window budget. */ +export function ChatUsageSummary({ usage }: { usage?: AgentTurnUsage }) { + const { locale } = useI18n(); + const t = useScopedT("editor"); + if (!usage) return null; + const format = (value: number) => new Intl.NumberFormat(locale).format(value); + const summary = + usage.status === "unavailable" + ? t("chat.usageUnavailable") + : usage.status === "partial" + ? t("chat.usagePartial", { tokens: format(usage.totalTokens) }) + : t("chat.usageComplete", { + tokens: format(usage.totalTokens), + calls: format(usage.modelCallCount), + }); + const details = [ + summary, + t("chat.usageCoverage", { + counted: format(usage.countedCallCount), + calls: format(usage.modelCallCount), + }), + ]; + if (usage.status !== "unavailable") { + details.push( + t("chat.usageInput", { tokens: format(usage.inputTokens) }), + t("chat.usageOutput", { tokens: format(usage.outputTokens) }), + ); + } + for (const [key, value] of [ + ["usageCachedInput", usage.cachedInputTokens], + ["usageCacheCreation", usage.cacheCreationInputTokens], + ["usageReasoning", usage.reasoningOutputTokens], + ] as const) { + if (value !== undefined) details.push(t(`chat.${key}`, { tokens: format(value) })); + } + const description = details.join(" · "); + return ( + + + {summary} + + + ); +} diff --git a/src/components/ai-edition/LeftPanel.tsx b/src/components/ai-edition/LeftPanel.tsx index 144d0b4c7..633de8ceb 100644 --- a/src/components/ai-edition/LeftPanel.tsx +++ b/src/components/ai-edition/LeftPanel.tsx @@ -14,6 +14,7 @@ import { useProjectStore } from "@/lib/ai-edition/store/projectStore"; import { useChatPromptBus } from "@/lib/ai-edition/store/useChatPromptBus"; import { nativeBridgeClient } from "@/native/client"; import type { + AgentTurnUsage, AiEditionChatEvent, AiEditionLlmConfig, AiEditionToolCallSummary, @@ -24,6 +25,7 @@ import { PROVIDER_DEFINITIONS, type ReasoningEffort, } from "../../../electron/ai-edition/provider-registry"; +import { ChatUsageSummary } from "./ChatUsageSummary"; import { ChatWelcome } from "./ChatWelcome"; import { canSendChat } from "./chatAvailability"; import { adoptStoredUserMessage } from "./chatTranscript"; @@ -38,6 +40,7 @@ interface ChatDisplayMessage { /** ISO timestamp, as the main process stores it; formatted only where it is drawn (#1134). */ time?: string; toolCalls?: AiEditionToolCallSummary[]; + usage?: AgentTurnUsage; // ponytail: axcut parity — non-null on user messages that have a // rewind-able document snapshot, so the per-message ↩ button shows. checkpointId?: string | null; @@ -450,6 +453,7 @@ export function ChatStripPanel() { Array<{ id: string; title: string; messageCount: number; createdAt: string }> >([]); const [activeSessionId, setActiveSessionId] = useState(null); + const [sessionReloadVersion, setSessionReloadVersion] = useState(0); // Mirror in a ref so refreshSessions can read the current selection without // listing activeSessionId in its deps — otherwise refreshSessions is recreated // on every selection change, which re-runs the project effect below (with @@ -458,6 +462,19 @@ export function ChatStripPanel() { // freshly-created empty one. const activeSessionIdRef = useRef(activeSessionId); activeSessionIdRef.current = activeSessionId; + const projectIdRef = useRef(projectId); + const viewVersionRef = useRef(0); + const transcriptVersionRef = useRef(0); + const sessionListRequestRef = useRef(0); + const activeTurnRef = useRef<{ + projectId: string; + sessionId: string | null; + viewVersion: number; + } | null>(null); + if (projectIdRef.current !== projectId) { + projectIdRef.current = projectId; + viewVersionRef.current += 1; + } const scrollRef = useRef(null); // ponytail: live reasoning trace for the in-flight turn. Reset at send() // start; deltas append through the chat-event subscription; once the run @@ -496,8 +513,18 @@ export function ChatStripPanel() { }, []); const refreshSessions = useCallback(async (pid: string, preferFirst = false) => { + const request = ++sessionListRequestRef.current; + const viewVersion = viewVersionRef.current; + const transcriptVersion = transcriptVersionRef.current; try { const list = await nativeBridgeClient.aiEdition.chatListSessions(pid); + if ( + projectIdRef.current !== pid || + request !== sessionListRequestRef.current || + viewVersion !== viewVersionRef.current || + transcriptVersion !== transcriptVersionRef.current + ) + return; setSessions(list); if (list.length === 0) { setActiveSessionId(null); @@ -536,6 +563,12 @@ export function ChatStripPanel() { }, []); useEffect(() => { + setSessions([]); + setActiveSessionId(null); + activeSessionIdRef.current = null; + setMessages([]); + setThinkingText(""); + thinkingRunSessionRef.current = null; if (!projectId) { setSessions([]); setActiveSessionId(null); @@ -545,17 +578,37 @@ export function ChatStripPanel() { void refreshSessions(projectId, true); }, [projectId, refreshSessions]); + // biome-ignore lint/correctness/useExhaustiveDependencies: completion explicitly reloads a session revisited while its turn was running. useEffect(() => { if (!projectId || !activeSessionId) { setMessages([]); return; } + let cancelled = false; + const viewVersion = viewVersionRef.current; + const transcriptVersion = transcriptVersionRef.current; + const turn = activeTurnRef.current; + // A newly created session is still empty on disk while its first turn runs. + if ( + turn?.projectId === projectId && + turn.sessionId === activeSessionId && + turn.viewVersion === viewVersion + ) + return; void (async () => { try { const session = await nativeBridgeClient.aiEdition.chatSelectSession( projectId, activeSessionId, ); + if ( + cancelled || + projectIdRef.current !== projectId || + activeSessionIdRef.current !== activeSessionId || + viewVersion !== viewVersionRef.current || + transcriptVersion !== transcriptVersionRef.current + ) + return; if (session) { setMessages( session.messages.map((m) => ({ @@ -564,6 +617,7 @@ export function ChatStripPanel() { content: m.content, time: m.createdAt, toolCalls: m.toolCalls, + usage: m.usage, checkpointId: m.checkpointId ?? null, })), ); @@ -574,7 +628,10 @@ export function ChatStripPanel() { // ponytail: silent — shim mode } })(); - }, [projectId, activeSessionId]); + return () => { + cancelled = true; + }; + }, [projectId, activeSessionId, sessionReloadVersion]); useEffect(() => { scrollRef.current?.scrollTo({ top: scrollRef.current.scrollHeight, behavior: "smooth" }); @@ -591,6 +648,13 @@ export function ChatStripPanel() { openProviderSettings(); return; } + const turn = { projectId, sessionId: activeSessionId, viewVersion: viewVersionRef.current }; + activeTurnRef.current = turn; + const isCurrentView = () => + projectIdRef.current === projectId && + viewVersionRef.current === turn.viewVersion && + activeSessionIdRef.current === turn.sessionId; + transcriptVersionRef.current += 1; setInput(""); setBusy(true); // ponytail: prepare the live reasoning-trace accumulator. Late events @@ -614,39 +678,42 @@ export function ChatStripPanel() { }, ]); try { - // Mirror axcut's `getOrCreateSession`: the composer works with zero - // setup, so the first message on a project with no sessions yet - // silently starts one instead of no-op'ing. - let sessionId = activeSessionId; - if (!sessionId) { - const created = await nativeBridgeClient.aiEdition.chatCreateSession(projectId); - sessionId = created.id; - setSessions((prev) => [...prev, created]); - setActiveSessionId(sessionId); - } - // ponytail: start collecting the live reasoning trace for THIS run — - // the subscription only appends deltas whose sessionId matches. - thinkingRunSessionRef.current = sessionId; - // Send the current document snapshot so the agent can run edit tools - // against it (P1). Falls back to text-only chat when no doc is open. - // `runAgentTurn` reads the document AND the revision it is at from one snapshot - // before the turn starts, so a manual edit landing while the agent works is - // detectable when its answer comes back. - const { result, applyDocument } = await runAgentTurn((documentSnapshot) => - nativeBridgeClient.aiEdition.chatRun(projectId, sessionId, text, documentSnapshot), - ); - setMessages((prev) => adoptStoredUserMessage(prev, optimisticUserId, result)); - // A rewind confirmation opened during the turn names the message too. Stored without a - // checkpoint, the message has nothing to rewind to and the confirmation closes. - const storedId = result.userMessageId; - if (storedId) { - setRewindFor((open) => - open?.messageId !== optimisticUserId - ? open - : result.userMessageCheckpointId - ? { ...open, messageId: storedId } - : null, - ); + // Capture the document and revision before session creation can yield to a project switch. + const { result, applyDocument } = await runAgentTurn(async (documentSnapshot) => { + // Mirror axcut's `getOrCreateSession`: the composer works with zero + // setup, so the first message on a project with no sessions yet + // silently starts one instead of no-op'ing. + let sessionId = activeSessionId; + if (!sessionId) { + const created = await nativeBridgeClient.aiEdition.chatCreateSession(projectId); + sessionId = created.id; + const wasCurrentView = isCurrentView(); + turn.sessionId = sessionId; + if (wasCurrentView) { + activeSessionIdRef.current = sessionId; + setSessions((prev) => [...prev, created]); + setActiveSessionId(sessionId); + } + } + // ponytail: start collecting the live reasoning trace for THIS run — + // the subscription only appends deltas whose sessionId matches. + if (isCurrentView()) thinkingRunSessionRef.current = sessionId; + return nativeBridgeClient.aiEdition.chatRun(projectId, sessionId, text, documentSnapshot); + }); + if (isCurrentView()) { + setMessages((prev) => adoptStoredUserMessage(prev, optimisticUserId, result)); + // A rewind confirmation opened during the turn names the message too. Stored without a + // checkpoint, the message has nothing to rewind to and the confirmation closes. + const storedId = result.userMessageId; + if (storedId) { + setRewindFor((open) => + open?.messageId !== optimisticUserId + ? open + : result.userMessageCheckpointId + ? { ...open, messageId: storedId } + : null, + ); + } } const assistant = result.assistantMessage; if (result.success && assistant) { @@ -688,29 +755,58 @@ export function ChatStripPanel() { }); } } - setMessages((prev) => [ - ...prev, - { - role: "assistant", - content: assistant.content, - time: new Date().toISOString(), - toolCalls: assistant.toolCalls, - // ponytail: snapshot the live reasoning trace onto the - // finished message so it can be revisited (collapsed by - // default, click-to-expand) instead of vanishing. The - // live accumulator is cleared in `finally`. - thinking: thinkingText || undefined, - }, - ]); - void refreshSessions(projectId); + if (isCurrentView()) + setMessages((prev) => [ + ...prev, + { + id: assistant.id, + usage: assistant.usage, + role: "assistant", + content: assistant.content, + time: assistant.createdAt, + toolCalls: assistant.toolCalls, + // ponytail: snapshot the live reasoning trace onto the + // finished message so it can be revisited (collapsed by + // default, click-to-expand) instead of vanishing. The + // live accumulator is cleared in `finally`. + thinking: thinkingText || undefined, + }, + ]); + if (isCurrentView()) void refreshSessions(projectId); } else { + if (isCurrentView() && result.userMessage) { + const userMessage = result.userMessage; + setMessages((prev) => + prev.map((message) => + (message.id === optimisticUserId || message.id === userMessage.id) + ? { + ...message, + id: userMessage.id, + checkpointId: userMessage.checkpointId ?? null, + usage: userMessage.usage, + } + : message, + ), + ); + } toast.error(result.error ?? t("chat.chatFailed")); } + // Returning to the origin while it runs loads an unfinished transcript. + // Reload the persisted result instead of appending to that uncertain snapshot. + if ( + !isCurrentView() && + projectIdRef.current === projectId && + activeSessionIdRef.current === turn.sessionId + ) { + transcriptVersionRef.current += 1; + setSessionReloadVersion((version) => version + 1); + } } catch (err) { toast.error(t("chat.chatFailed"), { description: err instanceof Error ? err.message : String(err), }); } finally { + activeTurnRef.current = null; setBusy(false); // ponytail: stop accepting thinking deltas and drop the in-flight // preview — the snapshot was either attached to the assistant @@ -749,6 +845,7 @@ export function ChatStripPanel() { const confirmRewind = useCallback( async (messageId: string) => { if (!projectId || !activeSessionId) return; + const viewVersion = viewVersionRef.current; try { const result = await nativeBridgeClient.aiEdition.chatRewind( projectId, @@ -763,7 +860,14 @@ export function ChatStripPanel() { const doc = (result as { document?: unknown }).document; // No `expectedRevision`: a rewind REPLACES whatever is live, which is what the // confirmation dialog now says out loud -- including any manual edit made since. - if (doc) await applyAgentDocumentIfCurrent(doc); + if (doc && projectIdRef.current === projectId) await applyAgentDocumentIfCurrent(doc); + if ( + projectIdRef.current !== projectId || + activeSessionIdRef.current !== activeSessionId || + viewVersionRef.current !== viewVersion + ) + return; + transcriptVersionRef.current += 1; setMessages( result.messages.map((m) => ({ id: m.id, @@ -771,6 +875,7 @@ export function ChatStripPanel() { content: m.content, time: m.createdAt, toolCalls: m.toolCalls, + usage: m.usage, checkpointId: m.checkpointId ?? null, })), ); @@ -902,8 +1007,15 @@ export function ChatStripPanel() { const compactNow = useCallback(async () => { if (!projectId || !activeSessionId || compactNowPending) return; setCompactNowPending(true); + const viewVersion = viewVersionRef.current; try { const result = await nativeBridgeClient.aiEdition.chatCompact(projectId, activeSessionId); + if ( + projectIdRef.current !== projectId || + activeSessionIdRef.current !== activeSessionId || + viewVersionRef.current !== viewVersion + ) + return; if (!result) { toast.info(t("chat.notEnoughHistory")); return; @@ -915,6 +1027,7 @@ export function ChatStripPanel() { content: m.content, time: m.createdAt, toolCalls: m.toolCalls, + usage: m.usage, checkpointId: m.checkpointId ?? null, })), ); @@ -931,7 +1044,17 @@ export function ChatStripPanel() { const newChat = useCallback(async () => { if (!projectId) return; try { + const viewVersion = viewVersionRef.current; + const transcriptVersion = transcriptVersionRef.current; const created = await nativeBridgeClient.aiEdition.chatCreateSession(projectId); + if ( + projectIdRef.current !== projectId || + viewVersionRef.current !== viewVersion || + transcriptVersionRef.current !== transcriptVersion + ) + return; + viewVersionRef.current += 1; + activeSessionIdRef.current = created.id; setSessions((prev) => [...prev, created]); setActiveSessionId(created.id); setMessages([]); @@ -943,6 +1066,12 @@ export function ChatStripPanel() { }, [projectId, t]); const selectSession = useCallback((id: string) => { + if (activeSessionIdRef.current === id) return; + viewVersionRef.current += 1; + activeSessionIdRef.current = id; + thinkingRunSessionRef.current = null; + setThinkingText(""); + setMessages([]); setActiveSessionId(id); }, []); @@ -1325,6 +1454,7 @@ export function ChatStripPanel() { justifyContent: "flex-end", }} > + {m.role === "user" && m.checkpointId ? ( // The name stays "Rewind to this message"; the tip adds what it does, which // only the confirmation dialog said before. diff --git a/src/components/ai-edition/LeftPanel.usage.test.tsx b/src/components/ai-edition/LeftPanel.usage.test.tsx new file mode 100644 index 000000000..3c8bdb680 --- /dev/null +++ b/src/components/ai-edition/LeftPanel.usage.test.tsx @@ -0,0 +1,485 @@ +// @vitest-environment jsdom +import "@testing-library/jest-dom"; +import { act, cleanup, fireEvent, render, waitFor } from "@testing-library/react"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import type { + AiEditionChatMessage, + AiEditionChatResult, + AiEditionChatSession, + AiEditionChatSessionSummary, +} from "@/native/contracts"; + +const mocks = vi.hoisted(() => ({ + list: vi.fn(), + select: vi.fn(), + run: vi.fn(), + create: vi.fn(), + compact: vi.fn(), + rewind: vi.fn(), +})); +vi.mock("@/native/client", () => ({ + nativeBridgeClient: { + aiEdition: { + llmGetSnapshot: () => + Promise.resolve({ + config: { provider: "openai", model: "gpt-4o" }, + connectedProviders: ["openai"], + }), + chatListSessions: (...args: unknown[]) => mocks.list(...args), + chatSelectSession: (...args: unknown[]) => mocks.select(...args), + chatRun: (...args: unknown[]) => mocks.run(...args), + chatCreateSession: (...args: unknown[]) => mocks.create(...args), + chatBudget: () => Promise.resolve(null), + chatCompact: (...args: unknown[]) => mocks.compact(...args), + chatRewind: (...args: unknown[]) => mocks.rewind(...args), + }, + }, +})); +vi.mock("./Modals", () => ({ + ChatHistoryModal: ({ onSelect }: { onSelect: (id: string) => void }) => ( + <> + + + + ), +})); +vi.mock("@/contexts/I18nContext", async (original) => { + const actual = await original(); + return { + ...actual, + useI18n: () => ({ locale: "en" }), + useScopedT: () => (key: string, vars?: Record) => + key.startsWith("chat.usage") ? `${key} ${JSON.stringify(vars ?? {})}` : key, + }; +}); +const usage = { + inputTokens: 500, + outputTokens: 160, + totalTokens: 660, + modelCallCount: 3, + countedCallCount: 3, + status: "complete" as const, +}; +const message = (id: string, content: string): AiEditionChatMessage => ({ + id, + role: "assistant", + content, + createdAt: "now", + usage, +}); +const summary = (id: string): AiEditionChatSessionSummary => ({ + id, + projectId: "P", + title: id, + messageCount: 1, + createdAt: "now", +}); +const session = ( + id: string, + messages: AiEditionChatMessage[] = [message(id, `History ${id}`)], +): AiEditionChatSession => ({ ...summary(id), projectId: "P", messages }); +function deferred() { + let resolve!: (value: T) => void; + const promise = new Promise((done) => { + resolve = done; + }); + return { promise, resolve }; +} +let store: typeof import("@/lib/ai-edition/store/projectStore").useProjectStore; +beforeEach(async () => { + vi.clearAllMocks(); + mocks.list.mockResolvedValue([summary("A"), summary("B")]); + mocks.select.mockImplementation((_pid: string, id: string) => Promise.resolve(session(id))); + mocks.create.mockResolvedValue(summary("A")); + Element.prototype.scrollTo = () => { + /* jsdom does not scroll */ + }; + (window as unknown as { electronAPI: unknown }).electronAPI = { + onAiEditionChatEvent: () => () => { + /* no live events */ + }, + }; + store = (await import("@/lib/ai-edition/store/projectStore")).useProjectStore; + store.setState({ projectId: "P", document: null }); +}); +afterEach(cleanup); +async function panel() { + const { ChatStripPanel } = await import("./LeftPanel"); + const { EditorDialogsProvider } = await import("@/contexts/EditorDialogsContext"); + const { TooltipProvider } = await import("@/components/ui/tooltip"); + return render( + + + + + , + ); +} +async function send(view: ReturnType) { + await waitFor(() => expect(view.getByRole("textbox")).toBeEnabled()); + fireEvent.change(view.getByRole("textbox"), { target: { value: "My prompt" } }); + fireEvent.keyDown(view.getByRole("textbox"), { key: "Enter" }); + await waitFor(() => expect(mocks.run).toHaveBeenCalled()); +} +const usageNode = (view: ReturnType) => view.queryAllByText(/chat.usageComplete/); +describe("chat usage and asynchronous identity", () => { + it("loads persisted usage", async () => { + const view = await panel(); + await view.findByText("History A"); + expect(usageNode(view)).toHaveLength(1); + }); + it.each([ + false, + true, + ])("keeps the current session when selected again (pending=%s)", async (pendingTurn) => { + const running = deferred(); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await view.findByText("History A"); + if (pendingTurn) await send(view); + fireEvent.click(view.getByText("Select A")); + expect(view.getByText("History A")).toBeInTheDocument(); + if (pendingTurn) { + expect(view.getByText("My prompt")).toBeInTheDocument(); + await act(async () => + running.resolve({ success: true, assistantMessage: message("native-answer", "Answer A") }), + ); + await view.findByText("Answer A"); + expect(usageNode(view)).toHaveLength(2); + } else expect(usageNode(view)).toHaveLength(1); + }); + it("does not let pending new-chat creation erase a subsequently sent turn", async () => { + const creating = deferred(); + const running = deferred(); + mocks.create.mockReturnValue(creating.promise); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await view.findByText("History A"); + fireEvent.click(view.getByRole("button", { name: "chat.newConversation" })); + await waitFor(() => expect(mocks.create).toHaveBeenCalled()); + await send(view); + await act(async () => creating.resolve(summary("B"))); + expect(view.getByText("History A")).toBeInTheDocument(); + expect(view.getByText("My prompt")).toBeInTheDocument(); + await act(async () => + running.resolve({ success: true, assistantMessage: message("native-answer", "Answer A") }), + ); + await view.findByText("Answer A"); + expect(usageNode(view)).toHaveLength(2); + }); + + it.each([ + true, + false, + ])("does not put a switched session's completed turn in the current session (success=%s)", async (success) => { + const pending = deferred(); + mocks.run.mockReturnValue(pending.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + fireEvent.click(view.getByText("Select B")); + await view.findByText("History B"); + await act(async () => + pending.resolve( + success + ? { success: true, assistantMessage: message("native-answer", "Answer A") } + : { + success: false, + error: "failed", + userMessage: { ...message("native-user", "My prompt"), role: "user" }, + }, + ), + ); + expect(view.queryByText("Answer A")).toBeNull(); + expect(view.queryByText("My prompt")).toBeNull(); + mocks.select.mockImplementation((_pid: string, id: string) => + Promise.resolve(session(id, [message("persisted", "Persisted A")])), + ); + fireEvent.click(view.getByText("Select A")); + await view.findByText("Persisted A"); + expect(usageNode(view)).toHaveLength(1); + }); + it.each([ + [true, false], + [true, true], + [false, false], + [false, true], + ])("reloads a returned session when its turn completes (success=%s, old load late=%s)", async (success, oldLoadLate) => { + const running = deferred(); + const returnLoading = deferred(); + const persistedUser: AiEditionChatMessage = { + ...message("native-user", "My prompt"), + role: "user", + checkpointId: "native-user", + usage: success ? undefined : usage, + }; + let completed = false; + let aLoads = 0; + mocks.select.mockImplementation((_pid: string, id: string) => { + if (id === "B") return Promise.resolve(session("B")); + aLoads += 1; + if (completed) + return Promise.resolve( + session( + "A", + success ? [persistedUser, message("native-answer", "Answer A")] : [persistedUser], + ), + ); + if (aLoads > 1) return returnLoading.promise; + return Promise.resolve(session("A")); + }); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + fireEvent.click(view.getByText("Select B")); + await view.findByText("History B"); + fireEvent.click(view.getByText("Select A")); + await waitFor(() => expect(aLoads).toBe(2)); + if (!oldLoadLate) await act(async () => returnLoading.resolve(session("A", [persistedUser]))); + await act(async () => { + completed = true; + running.resolve( + success + ? { success: true, assistantMessage: message("native-answer", "Answer A") } + : { success: false, userMessage: persistedUser }, + ); + }); + await waitFor(() => expect(aLoads).toBe(3)); + if (oldLoadLate) await act(async () => returnLoading.resolve(session("A", [persistedUser]))); + expect(view.getAllByText("My prompt")).toHaveLength(1); + expect(usageNode(view)).toHaveLength(1); + if (success) expect(view.getAllByText("Answer A")).toHaveLength(1); + else { + expect(view.queryByText("Answer A")).toBeNull(); + mocks.rewind.mockResolvedValue({ success: true, messages: [], prompt: "My prompt" }); + fireEvent.click(view.getByRole("button", { name: "chat.rewindToMessage" })); + fireEvent.click(await view.findByRole("button", { name: "chat.rewindConfirm" })); + await waitFor(() => expect(mocks.rewind).toHaveBeenCalledWith("P", "A", "native-user")); + } + }); + it.each([ + true, + false, + ])("reloads a first session created while its project was away (success=%s)", async (success) => { + const creating = deferred(); + const running = deferred(); + let created = false; + let completed = false; + const persistedUser: AiEditionChatMessage = { + ...message("native-user", "My prompt"), + role: "user", + checkpointId: "native-user", + usage: success ? undefined : usage, + }; + mocks.list.mockImplementation((pid: string) => + Promise.resolve(pid === "Q" ? [summary("B")] : created ? [summary("A")] : []), + ); + mocks.select.mockImplementation((_pid: string, id: string) => + Promise.resolve( + session( + id, + id === "B" + ? [message("B", "History B")] + : completed + ? success + ? [persistedUser, message("native-answer", "Answer A")] + : [persistedUser] + : [], + ), + ), + ); + mocks.create.mockReturnValue(creating.promise); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await waitFor(() => expect(mocks.list).toHaveBeenCalledWith("P")); + await waitFor(() => expect(view.getByRole("textbox")).toBeEnabled()); + fireEvent.change(view.getByRole("textbox"), { target: { value: "My prompt" } }); + fireEvent.keyDown(view.getByRole("textbox"), { key: "Enter" }); + await waitFor(() => expect(mocks.create).toHaveBeenCalled()); + await act(async () => store.setState({ projectId: "Q" })); + await view.findByText("History B"); + await act(async () => { + created = true; + creating.resolve(summary("A")); + }); + await waitFor(() => expect(mocks.run).toHaveBeenCalled()); + await act(async () => store.setState({ projectId: "P" })); + await waitFor(() => expect(mocks.select).toHaveBeenCalledWith("P", "A")); + await act(async () => { + completed = true; + running.resolve( + success + ? { success: true, assistantMessage: message("native-answer", "Answer A") } + : { success: false, userMessage: persistedUser }, + ); + }); + await view.findByText("My prompt"); + expect(usageNode(view)).toHaveLength(1); + if (success) expect(view.getAllByText("Answer A")).toHaveLength(1); + else { + mocks.rewind.mockResolvedValue({ success: true, messages: [], prompt: "My prompt" }); + fireEvent.click(view.getByRole("button", { name: "chat.rewindToMessage" })); + fireEvent.click(await view.findByRole("button", { name: "chat.rewindConfirm" })); + await waitFor(() => expect(mocks.rewind).toHaveBeenCalledWith("P", "A", "native-user")); + } + }); + + it("reloads the original project after leaving and returning before completion", async () => { + const running = deferred(); + let completed = false; + mocks.list.mockImplementation((pid: string) => + Promise.resolve([summary(pid === "Q" ? "B" : "A")]), + ); + mocks.select.mockImplementation((_pid: string, id: string) => + Promise.resolve( + session( + id, + completed && id === "A" + ? [message("native-answer", "Answer A")] + : [message(id, `History ${id}`)], + ), + ), + ); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + await act(async () => store.setState({ projectId: "Q" })); + await view.findByText("History B"); + await act(async () => store.setState({ projectId: "P" })); + await view.findByText("History A"); + await act(async () => { + completed = true; + running.resolve({ success: true, assistantMessage: message("native-answer", "Answer A") }); + }); + await view.findByText("Answer A"); + expect(usageNode(view)).toHaveLength(1); + }); + + it("ignores a reversed session load", async () => { + const late = deferred(); + mocks.select.mockImplementation((_pid: string, id: string) => + id === "A" ? late.promise : Promise.resolve(session(id)), + ); + const view = await panel(); + await waitFor(() => expect(mocks.select).toHaveBeenCalled()); + fireEvent.click(view.getByText("Select B")); + await view.findByText("History B"); + await act(async () => late.resolve(session("A"))); + expect(view.queryByText("History A")).toBeNull(); + }); + it("keeps the optimistic message and reply when initial loading finishes late", async () => { + const late = deferred(); + mocks.list.mockResolvedValue([]); + mocks.create.mockImplementation(async () => { + mocks.list.mockResolvedValue([summary("A")]); + return summary("A"); + }); + mocks.select.mockReturnValue(late.promise); + mocks.run.mockResolvedValue({ + success: true, + assistantMessage: message("native-answer", "Answer A"), + }); + const view = await panel(); + await waitFor(() => expect(mocks.list).toHaveBeenCalled()); + await send(view); + await view.findByText("Answer A"); + await act(async () => late.resolve(session("A", []))); + expect(view.getByText("My prompt")).toBeInTheDocument(); + expect(view.getByText("Answer A")).toBeInTheDocument(); + }); + it("keeps a failed user when an existing session's initial empty load arrives late", async () => { + const loading = deferred(); + const running = deferred(); + mocks.select.mockReturnValue(loading.promise); + mocks.run.mockReturnValue(running.promise); + const view = await panel(); + await waitFor(() => expect(mocks.select).toHaveBeenCalled()); + await send(view); + await act(async () => loading.resolve(session("A", []))); + expect(view.getByText("My prompt")).toBeInTheDocument(); + await act(async () => + running.resolve({ + success: false, + userMessage: { ...message("native-user", "My prompt"), role: "user" }, + }), + ); + expect(usageNode(view)).toHaveLength(1); + }); + it("attaches failure usage to the optimistic user without an assistant", async () => { + mocks.run.mockResolvedValue({ + success: false, + userMessage: { ...message("native-user", "My prompt"), role: "user" }, + }); + const view = await panel(); + await view.findByText("History A"); + await send(view); + await waitFor(() => expect(usageNode(view)).toHaveLength(2)); + expect(view.getAllByText("My prompt")).toHaveLength(1); + }); + it.each([ + "compact", + "rewind", + ] as const)("retains usage after %s and ignores a late result after switching", async (operation) => { + mocks.select.mockImplementation((_pid: string, id: string) => + Promise.resolve( + session(id, [{ ...message(id, `History ${id}`), role: "user", checkpointId: id }]), + ), + ); + const response = { + success: true, + prompt: "restored", + messages: [message("restored", "Restored")], + session: session("A", [message("restored", "Restored")]), + }; + mocks[operation].mockResolvedValue(response); + const view = await panel(); + await view.findByText("History A"); + const trigger = async () => { + if (operation === "compact") + fireEvent.click(view.getByRole("button", { name: "chat.compactContext" })); + else { + fireEvent.click(view.getByRole("button", { name: "chat.rewindToMessage" })); + fireEvent.click(await view.findByRole("button", { name: "chat.rewindConfirm" })); + } + }; + await trigger(); + await view.findByText("Restored"); + expect(usageNode(view)).toHaveLength(1); + fireEvent.click(view.getByText("Select B")); + await view.findByText("History B"); + const late = deferred(); + mocks[operation].mockReturnValue(late.promise); + await trigger(); + fireEvent.click(view.getByText("Select A")); + await view.findByText("History A"); + await act(async () => late.resolve(response)); + expect(view.queryByText("Restored")).toBeNull(); + }); + it("ignores stale project lists and run results", async () => { + const lateList = deferred(); + const lateRun = deferred(); + mocks.run.mockReturnValue(lateRun.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + mocks.list.mockImplementation((pid: string) => + pid === "Q" ? lateList.promise : Promise.resolve([summary("B")]), + ); + await act(async () => store.setState({ projectId: "Q" })); + await act(async () => store.setState({ projectId: "R" })); + await view.findByText("History B"); + await act(async () => { + lateList.resolve([summary("A")]); + lateRun.resolve({ success: true, assistantMessage: message("answer", "Answer A") }); + }); + expect(view.queryByText("Answer A")).toBeNull(); + expect(view.queryByText("History A")).toBeNull(); + expect(view.getByText("History B")).toBeInTheDocument(); + }); +}); diff --git a/src/i18n/locales/ar/editor.json b/src/i18n/locales/ar/editor.json index 143f19e57..20c728b1c 100644 --- a/src/i18n/locales/ar/editor.json +++ b/src/i18n/locales/ar/editor.json @@ -313,7 +313,16 @@ "subtitle": "التبديل بين الجلسات أو إنشاء جلسة جديدة", "empty": "لا توجد محادثات بعد.", "msgsCount": "{{count}} رسالة · {{date}}" - } + }, + "usageComplete": "{{tokens}} رمزًا · {{calls}} استدعاءات للنموذج", + "usagePartial": "{{tokens}} رمزًا معروفًا · غير مكتمل", + "usageUnavailable": "استخدام الرموز غير متاح", + "usageCoverage": "تم احتساب {{counted}} من {{calls}} استدعاءات للنموذج", + "usageInput": "الإدخال: {{tokens}}", + "usageOutput": "الإخراج: {{tokens}}", + "usageCachedInput": "إدخال التخزين المؤقت المُبلّغ عنه: {{tokens}}", + "usageCacheCreation": "إدخال إنشاء التخزين المؤقت المُبلّغ عنه: {{tokens}}", + "usageReasoning": "إخراج الاستدلال المُبلّغ عنه: {{tokens}}" }, "newProjectDialog": { "title": "مشروع جديد", diff --git a/src/i18n/locales/cs/editor.json b/src/i18n/locales/cs/editor.json index 53ba12667..337736553 100644 --- a/src/i18n/locales/cs/editor.json +++ b/src/i18n/locales/cs/editor.json @@ -313,7 +313,16 @@ "subtitle": "Přepínání nebo vytváření relací", "empty": "Zatím žádné konverzace.", "msgsCount": "{{count}} zpráv · {{date}}" - } + }, + "usageComplete": "{{tokens}} tokenů · {{calls}} volání modelu", + "usagePartial": "{{tokens}} známých tokenů · neúplné", + "usageUnavailable": "Využití tokenů není dostupné", + "usageCoverage": "Započítáno {{counted}} z {{calls}} volání modelu", + "usageInput": "Vstup: {{tokens}}", + "usageOutput": "Výstup: {{tokens}}", + "usageCachedInput": "Hlášený vstup z mezipaměti: {{tokens}}", + "usageCacheCreation": "Hlášený vstup pro vytvoření mezipaměti: {{tokens}}", + "usageReasoning": "Hlášený výstup uvažování: {{tokens}}" }, "newProjectDialog": { "title": "Nový projekt", diff --git a/src/i18n/locales/de/editor.json b/src/i18n/locales/de/editor.json index 196e06f51..68ac9eede 100644 --- a/src/i18n/locales/de/editor.json +++ b/src/i18n/locales/de/editor.json @@ -313,7 +313,16 @@ "subtitle": "Sitzungen wechseln oder anlegen", "empty": "Noch keine Unterhaltungen.", "msgsCount": "{{count}} Nachr. · {{date}}" - } + }, + "usageComplete": "{{tokens}} Tokens · {{calls}} Modellaufrufe", + "usagePartial": "{{tokens}} bekannte Tokens · unvollständig", + "usageUnavailable": "Tokenverbrauch nicht verfügbar", + "usageCoverage": "{{counted}} von {{calls}} Modellaufrufen erfasst", + "usageInput": "Eingabe: {{tokens}}", + "usageOutput": "Ausgabe: {{tokens}}", + "usageCachedInput": "Gemeldete Cache-Eingabe: {{tokens}}", + "usageCacheCreation": "Gemeldete Eingabe zur Cache-Erstellung: {{tokens}}", + "usageReasoning": "Gemeldete Denkausgabe: {{tokens}}" }, "newProjectDialog": { "title": "Neues Projekt", diff --git a/src/i18n/locales/en/editor.json b/src/i18n/locales/en/editor.json index fb0cb8917..87f4f35cf 100644 --- a/src/i18n/locales/en/editor.json +++ b/src/i18n/locales/en/editor.json @@ -313,7 +313,16 @@ "subtitle": "Switch or create sessions", "empty": "No conversations yet.", "msgsCount": "{{count}} msgs · {{date}}" - } + }, + "usageComplete": "{{tokens}} tokens · {{calls}} model calls", + "usagePartial": "{{tokens}} known tokens · incomplete", + "usageUnavailable": "Token usage unavailable", + "usageCoverage": "{{counted}} of {{calls}} model calls counted", + "usageInput": "Input: {{tokens}}", + "usageOutput": "Output: {{tokens}}", + "usageCachedInput": "Reported cached input: {{tokens}}", + "usageCacheCreation": "Reported cache creation input: {{tokens}}", + "usageReasoning": "Reported reasoning output: {{tokens}}" }, "newProjectDialog": { "title": "New project", diff --git a/src/i18n/locales/es/editor.json b/src/i18n/locales/es/editor.json index 89bf7d390..e92ffe9a0 100644 --- a/src/i18n/locales/es/editor.json +++ b/src/i18n/locales/es/editor.json @@ -313,7 +313,16 @@ "subtitle": "Cambia o crea sesiones", "empty": "Aún no hay conversaciones.", "msgsCount": "{{count}} mensajes · {{date}}" - } + }, + "usageComplete": "{{tokens}} tokens · {{calls}} llamadas al modelo", + "usagePartial": "{{tokens}} tokens conocidos · incompleto", + "usageUnavailable": "Uso de tokens no disponible", + "usageCoverage": "{{counted}} de {{calls}} llamadas al modelo contabilizadas", + "usageInput": "Entrada: {{tokens}}", + "usageOutput": "Salida: {{tokens}}", + "usageCachedInput": "Entrada en caché declarada: {{tokens}}", + "usageCacheCreation": "Entrada de creación de caché declarada: {{tokens}}", + "usageReasoning": "Salida de razonamiento declarada: {{tokens}}" }, "newProjectDialog": { "title": "Nuevo proyecto", diff --git a/src/i18n/locales/fr/editor.json b/src/i18n/locales/fr/editor.json index 92ec22bcb..91833e171 100644 --- a/src/i18n/locales/fr/editor.json +++ b/src/i18n/locales/fr/editor.json @@ -313,7 +313,16 @@ "subtitle": "Changer ou créer des sessions", "empty": "Aucune conversation pour l'instant.", "msgsCount": "{{count}} messages · {{date}}" - } + }, + "usageComplete": "{{tokens}} tokens · {{calls}} appels au modèle", + "usagePartial": "{{tokens}} tokens connus · incomplet", + "usageUnavailable": "Utilisation des tokens indisponible", + "usageCoverage": "{{counted}} appels au modèle comptés sur {{calls}}", + "usageInput": "Entrée : {{tokens}}", + "usageOutput": "Sortie : {{tokens}}", + "usageCachedInput": "Entrée en cache déclarée : {{tokens}}", + "usageCacheCreation": "Entrée de création du cache déclarée : {{tokens}}", + "usageReasoning": "Sortie de raisonnement déclarée : {{tokens}}" }, "newProjectDialog": { "title": "Nouveau projet", diff --git a/src/i18n/locales/it/editor.json b/src/i18n/locales/it/editor.json index e9a61562e..c835eddad 100644 --- a/src/i18n/locales/it/editor.json +++ b/src/i18n/locales/it/editor.json @@ -313,7 +313,16 @@ "subtitle": "Cambia o crea sessioni", "empty": "Nessuna conversazione ancora.", "msgsCount": "{{count}} messaggi · {{date}}" - } + }, + "usageComplete": "{{tokens}} token · {{calls}} chiamate al modello", + "usagePartial": "{{tokens}} token noti · incompleto", + "usageUnavailable": "Utilizzo dei token non disponibile", + "usageCoverage": "{{counted}} di {{calls}} chiamate al modello conteggiate", + "usageInput": "Input: {{tokens}}", + "usageOutput": "Output: {{tokens}}", + "usageCachedInput": "Input in cache segnalato: {{tokens}}", + "usageCacheCreation": "Input di creazione cache segnalato: {{tokens}}", + "usageReasoning": "Output di ragionamento segnalato: {{tokens}}" }, "newProjectDialog": { "title": "Nuovo progetto", diff --git a/src/i18n/locales/ja-JP/editor.json b/src/i18n/locales/ja-JP/editor.json index 10d8f7aab..4ba91572d 100644 --- a/src/i18n/locales/ja-JP/editor.json +++ b/src/i18n/locales/ja-JP/editor.json @@ -313,7 +313,16 @@ "subtitle": "セッションを切り替えるか新規作成", "empty": "まだ会話はありません。", "msgsCount": "{{count}} 件のメッセージ · {{date}}" - } + }, + "usageComplete": "{{tokens}} トークン · モデル呼び出し {{calls}} 回", + "usagePartial": "既知の {{tokens}} トークン · 不完全", + "usageUnavailable": "トークン使用量を取得できません", + "usageCoverage": "モデル呼び出し {{calls}} 回中 {{counted}} 回を集計", + "usageInput": "入力:{{tokens}}", + "usageOutput": "出力:{{tokens}}", + "usageCachedInput": "報告されたキャッシュ入力:{{tokens}}", + "usageCacheCreation": "報告されたキャッシュ作成入力:{{tokens}}", + "usageReasoning": "報告された推論出力:{{tokens}}" }, "newProjectDialog": { "title": "新規プロジェクト", diff --git a/src/i18n/locales/ko-KR/editor.json b/src/i18n/locales/ko-KR/editor.json index fa1dbc148..dec11a434 100644 --- a/src/i18n/locales/ko-KR/editor.json +++ b/src/i18n/locales/ko-KR/editor.json @@ -313,7 +313,16 @@ "subtitle": "세션 전환 또는 새로 만들기", "empty": "아직 대화가 없습니다.", "msgsCount": "메시지 {{count}}개 · {{date}}" - } + }, + "usageComplete": "{{tokens}} 토큰 · 모델 호출 {{calls}}회", + "usagePartial": "확인된 {{tokens}} 토큰 · 불완전", + "usageUnavailable": "토큰 사용량을 확인할 수 없음", + "usageCoverage": "모델 호출 {{calls}}회 중 {{counted}}회 집계", + "usageInput": "입력: {{tokens}}", + "usageOutput": "출력: {{tokens}}", + "usageCachedInput": "보고된 캐시 입력: {{tokens}}", + "usageCacheCreation": "보고된 캐시 생성 입력: {{tokens}}", + "usageReasoning": "보고된 추론 출력: {{tokens}}" }, "newProjectDialog": { "title": "새 프로젝트", diff --git a/src/i18n/locales/pt-BR/editor.json b/src/i18n/locales/pt-BR/editor.json index 8dcaff24a..43906f7f8 100644 --- a/src/i18n/locales/pt-BR/editor.json +++ b/src/i18n/locales/pt-BR/editor.json @@ -313,7 +313,16 @@ "subtitle": "Alternar ou criar sessões", "empty": "Ainda não há conversas.", "msgsCount": "{{count}} mensagens · {{date}}" - } + }, + "usageComplete": "{{tokens}} tokens · {{calls}} chamadas ao modelo", + "usagePartial": "{{tokens}} tokens conhecidos · incompleto", + "usageUnavailable": "Uso de tokens indisponível", + "usageCoverage": "{{counted}} de {{calls}} chamadas ao modelo contabilizadas", + "usageInput": "Entrada: {{tokens}}", + "usageOutput": "Saída: {{tokens}}", + "usageCachedInput": "Entrada em cache informada: {{tokens}}", + "usageCacheCreation": "Entrada de criação de cache informada: {{tokens}}", + "usageReasoning": "Saída de raciocínio informada: {{tokens}}" }, "newProjectDialog": { "title": "Novo projeto", diff --git a/src/i18n/locales/ru/editor.json b/src/i18n/locales/ru/editor.json index 827488c31..d78e9db88 100644 --- a/src/i18n/locales/ru/editor.json +++ b/src/i18n/locales/ru/editor.json @@ -313,7 +313,16 @@ "subtitle": "Переключить или создать сессию", "empty": "Пока нет бесед.", "msgsCount": "{{count}} сообщ. · {{date}}" - } + }, + "usageComplete": "{{tokens}} токенов · {{calls}} вызовов модели", + "usagePartial": "Известно {{tokens}} токенов · неполные данные", + "usageUnavailable": "Расход токенов недоступен", + "usageCoverage": "Учтено {{counted}} из {{calls}} вызовов модели", + "usageInput": "Вход: {{tokens}}", + "usageOutput": "Выход: {{tokens}}", + "usageCachedInput": "Сообщённый кэшированный вход: {{tokens}}", + "usageCacheCreation": "Сообщённый вход создания кэша: {{tokens}}", + "usageReasoning": "Сообщённый выход рассуждений: {{tokens}}" }, "newProjectDialog": { "title": "Новый проект", diff --git a/src/i18n/locales/tr/editor.json b/src/i18n/locales/tr/editor.json index 78efe59a1..84330fce3 100644 --- a/src/i18n/locales/tr/editor.json +++ b/src/i18n/locales/tr/editor.json @@ -313,7 +313,16 @@ "subtitle": "Oturum değiştir veya oluştur", "empty": "Henüz konuşma yok.", "msgsCount": "{{count}} mesaj · {{date}}" - } + }, + "usageComplete": "{{tokens}} token · {{calls}} model çağrısı", + "usagePartial": "Bilinen {{tokens}} token · eksik", + "usageUnavailable": "Token kullanımı mevcut değil", + "usageCoverage": "{{calls}} model çağrısından {{counted}} tanesi sayıldı", + "usageInput": "Girdi: {{tokens}}", + "usageOutput": "Çıktı: {{tokens}}", + "usageCachedInput": "Bildirilen önbellek girdisi: {{tokens}}", + "usageCacheCreation": "Bildirilen önbellek oluşturma girdisi: {{tokens}}", + "usageReasoning": "Bildirilen akıl yürütme çıktısı: {{tokens}}" }, "newProjectDialog": { "title": "Yeni proje", diff --git a/src/i18n/locales/vi/editor.json b/src/i18n/locales/vi/editor.json index 5341e7021..c1b6bdc1b 100644 --- a/src/i18n/locales/vi/editor.json +++ b/src/i18n/locales/vi/editor.json @@ -313,7 +313,16 @@ "subtitle": "Chuyển đổi hoặc tạo phiên", "empty": "Chưa có cuộc trò chuyện nào.", "msgsCount": "{{count}} tin nhắn · {{date}}" - } + }, + "usageComplete": "{{tokens}} token · {{calls}} lượt gọi mô hình", + "usagePartial": "{{tokens}} token đã biết · chưa đầy đủ", + "usageUnavailable": "Không có dữ liệu sử dụng token", + "usageCoverage": "Đã tính {{counted}} trên {{calls}} lượt gọi mô hình", + "usageInput": "Đầu vào: {{tokens}}", + "usageOutput": "Đầu ra: {{tokens}}", + "usageCachedInput": "Đầu vào bộ nhớ đệm được báo cáo: {{tokens}}", + "usageCacheCreation": "Đầu vào tạo bộ nhớ đệm được báo cáo: {{tokens}}", + "usageReasoning": "Đầu ra suy luận được báo cáo: {{tokens}}" }, "newProjectDialog": { "title": "Dự án mới", diff --git a/src/i18n/locales/zh-CN/editor.json b/src/i18n/locales/zh-CN/editor.json index a50819a0f..a741da1e1 100644 --- a/src/i18n/locales/zh-CN/editor.json +++ b/src/i18n/locales/zh-CN/editor.json @@ -313,7 +313,16 @@ "subtitle": "切换或新建会话", "empty": "暂无对话。", "msgsCount": "{{count}} 条消息 · {{date}}" - } + }, + "usageComplete": "{{tokens}} 个 token · {{calls}} 次模型调用", + "usagePartial": "已知 {{tokens}} 个 token · 不完整", + "usageUnavailable": "Token 用量不可用", + "usageCoverage": "已统计 {{counted}} / {{calls}} 次模型调用", + "usageInput": "输入:{{tokens}}", + "usageOutput": "输出:{{tokens}}", + "usageCachedInput": "已报告的缓存输入:{{tokens}}", + "usageCacheCreation": "已报告的缓存创建输入:{{tokens}}", + "usageReasoning": "已报告的推理输出:{{tokens}}" }, "newProjectDialog": { "title": "新建项目", diff --git a/src/i18n/locales/zh-TW/editor.json b/src/i18n/locales/zh-TW/editor.json index f0a7c9703..7cdece36d 100644 --- a/src/i18n/locales/zh-TW/editor.json +++ b/src/i18n/locales/zh-TW/editor.json @@ -313,7 +313,16 @@ "subtitle": "切換或新增工作階段", "empty": "尚無對話。", "msgsCount": "{{count}} 則訊息 · {{date}}" - } + }, + "usageComplete": "{{tokens}} 個 token · {{calls}} 次模型呼叫", + "usagePartial": "已知 {{tokens}} 個 token · 不完整", + "usageUnavailable": "Token 用量無法取得", + "usageCoverage": "已統計 {{counted}} / {{calls}} 次模型呼叫", + "usageInput": "輸入:{{tokens}}", + "usageOutput": "輸出:{{tokens}}", + "usageCachedInput": "已回報的快取輸入:{{tokens}}", + "usageCacheCreation": "已回報的快取建立輸入:{{tokens}}", + "usageReasoning": "已回報的推理輸出:{{tokens}}" }, "newProjectDialog": { "title": "新增專案", diff --git a/src/native/contracts.ts b/src/native/contracts.ts index 521cc993e..670cec84a 100644 --- a/src/native/contracts.ts +++ b/src/native/contracts.ts @@ -384,7 +384,21 @@ export interface AiEditionToolCallSummary { summary: string; } +/** Usage reported by observable model calls in one agent turn, not HTTP billing. */ +export interface AgentTurnUsage { + inputTokens: number; + outputTokens: number; + totalTokens: number; + modelCallCount: number; + countedCallCount: number; + status: "complete" | "partial" | "unavailable"; + cachedInputTokens?: number; + cacheCreationInputTokens?: number; + reasoningOutputTokens?: number; +} + export interface AiEditionChatMessage { + usage?: AgentTurnUsage; id: string; role: "user" | "assistant"; content: string; @@ -399,6 +413,7 @@ export interface AiEditionChatMessage { } export interface AiEditionChatResult { + userMessage?: AiEditionChatMessage; success: boolean; assistantMessage?: AiEditionChatMessage; /** Updated document when the agent ran write tools during this turn. */ diff --git a/technical-documentation/testing/manual-e2e-checklist.md b/technical-documentation/testing/manual-e2e-checklist.md index 340df1480..f1fd63a31 100644 --- a/technical-documentation/testing/manual-e2e-checklist.md +++ b/technical-documentation/testing/manual-e2e-checklist.md @@ -913,6 +913,7 @@ These checks are the human slice: an agent cannot click Apple's picker (see abov | Date | Build / tag | Platform | Pass/fail | Notes | |------|-------------|----------|-----------|-------| +| 2026-10-13 | dev `codex/agent-turn-token-usage`, based on `9c55596e14b65d08a1a2c81a00cedd70dddd9be1`, uncommitted issue #1096 changes | macOS 26.4, arm64 | Partial — token usage chat slice | Real Electron driven by computer-use OS input, isolated test profile and local scripted OpenAI-compatible provider (no real API key or provider billing). Observed complete 660 tokens / 3 calls, known partial 440 / 2 of 3, failed-turn 110 / 1 of 2 on the original user message, and unavailable usage; inspected the project chat sidecar for matching values and ownership. After a delayed request in Conversation 1, Conversation 2 stayed empty when it completed. Returned to Conversation 1 while a later request was still running and observed its final reply and usage once. A failed request retained 110 known tokens on its original user message. Fully quit and restarted Electron with the same isolated profile, reopened Studio and verified all usage states and reported details restored; Conversation 2 remained empty. Usage is separate from the existing context indicator. Skipped: real paid-provider requests; capture, webcam/audio, compositor/preview/export (chat-only change, native binaries unavailable); Windows/Linux and release promotion. Restart persistence, old v1 messages, deletion/rewind and async UI races are covered separately by automated tests. | | 2026-09-23 | dev `fix/725-hidden-cursor-auto-zoom`; rebuilt compositor addon SHA256 `a0bcd61e17084c010141049a9978121e45be2985449ff1618ab6a3145f8381f6` | Windows 11 Home 26200 | Partial — issue #725 slider slice passed | Human-driven real recording in the Electron dev build: moving a slider whose application cursor becomes hidden kept the reconstructed cursor hidden in the Studio recording and did not create a click-driven automatic zoom for that press. A visible control click still produced the normal automatic zoom. Sidecar inspection independently confirmed the hidden interval (`visible: false`) and that no zoom was centred on the press immediately preceding it. Recording, stop and editor open passed. Not covered: export, packaged build, audio/webcam, tray/HUD, other editor features, macOS or Linux. | | 2026-09-12 | dev `fix/643-gif-export-cancel`, based on `fbe461e9`; rebuilt compositor addon SHA256 `128c89fe65a459b3f17721d610ea9a78e0d3e980e9eb0b5fb2b0e5d018619e15` | Windows | Partial — export cancellation passed | Computer-use OS input, real Electron and native save dialog, imported synthetic 8 s source. GIF 15 FPS / Medium (720p) / loop on: observed 55/120 frames, clicked Cancel while rendering (pending snapshot 104/120), returned to the same options; no final or partial output remained. Retried in that dialog to the same path and received Saved to; resulting GIF is 1280×720, 120 frames, 8,200,202 bytes, fully decodes with ffmpeg (exit 0). Automated real-addon tests separately pass existing-destination preservation, GIF retry, ordinary GIF and MP4 export. Desktop adapter required screenshot-based coordinates and Ctrl+O to reach the editor; HUD reachability is not claimed. An unrelated process error window partly obscured the retry success screenshot; file verification independently passed. Skipped: recording, audio/mic, webcam, tray/HUD, effect/caption comparisons, second viewer, macOS/Linux and release promotion. Task-local profile and evidence retained; test app stopped. | | 2026-07-31 | dev build, `claude/e2e-tests-v1-8-0-474894` (e9578f09) | macOS 26.5, M1 | Partial — 1 defect | Ran launch/HUD, media, modifier anchoring, and export. **Defect: a dangling asset blanks the preview.** Modifier anchoring across a reorder verified in preview and in the exported frames. macOS export produced 1280×720 h264 + AAC at ~2× realtime. Chat sections skipped: no AI provider configured. HUD drag not runnable under computer-use (drop point is the desktop). | From 54ee4e15a50add94ff2ddd48604d97639c1e3afa Mon Sep 17 00:00:00 2001 From: auberginewly <3127221787@qq.com> Date: Wed, 21 Oct 2026 18:11:01 +0800 Subject: [PATCH 2/4] feat(ai): show live turn usage and elapsed time --- electron/ai-edition/chat-persistence.test.ts | 9 +-- electron/ai-edition/chat-persistence.ts | 1 + .../ai-edition/chat-service.toolloop.test.ts | 1 + electron/ai-edition/chat-service.ts | 9 +++ electron/ai-edition/deep-agent/service.ts | 5 ++ .../deep-agent/usage.integration.test.ts | 7 ++ electron/ipc/nativeBridge.ts | 1 + .../ai-edition/ChatUsageSummary.test.tsx | 40 +++++++--- .../ai-edition/ChatUsageSummary.tsx | 38 +++++++--- src/components/ai-edition/LeftPanel.tsx | 76 +++++++++---------- .../ai-edition/LeftPanel.usage.test.tsx | 51 ++++++++++++- src/i18n/locales/ar/editor.json | 2 +- src/i18n/locales/cs/editor.json | 2 +- src/i18n/locales/de/editor.json | 2 +- src/i18n/locales/en/editor.json | 2 +- src/i18n/locales/es/editor.json | 2 +- src/i18n/locales/fr/editor.json | 2 +- src/i18n/locales/it/editor.json | 2 +- src/i18n/locales/ja-JP/editor.json | 2 +- src/i18n/locales/ko-KR/editor.json | 2 +- src/i18n/locales/pt-BR/editor.json | 2 +- src/i18n/locales/ru/editor.json | 2 +- src/i18n/locales/tr/editor.json | 2 +- src/i18n/locales/vi/editor.json | 2 +- src/i18n/locales/zh-CN/editor.json | 2 +- src/i18n/locales/zh-TW/editor.json | 2 +- src/native/contracts.ts | 3 + .../testing/manual-e2e-checklist.md | 2 + 28 files changed, 188 insertions(+), 85 deletions(-) diff --git a/electron/ai-edition/chat-persistence.test.ts b/electron/ai-edition/chat-persistence.test.ts index 64c448455..5053884ae 100644 --- a/electron/ai-edition/chat-persistence.test.ts +++ b/electron/ai-edition/chat-persistence.test.ts @@ -96,6 +96,7 @@ describe("local Agent chat history", () => { const messages = selectSession("proj_usage", session.id)?.messages ?? []; expect(messages).toHaveLength(success ? 2 : 1); expect(messages.at(-1)?.usage).toEqual(reportedUsage); + expect(messages.at(-1)?.durationMs).toEqual(expect.any(Number)); if (success) expect(messages[0]?.usage).toBeUndefined(); expect(readFileSync(path.join(root, "proj_usage.chat.json"), "utf8")).not.toContain(key); }); @@ -184,14 +185,10 @@ describe("local Agent chat history", () => { expect(result.document).toBeUndefined(); expect(result.assistantMessage).toBeUndefined(); expect(result.userMessage).toBeUndefined(); - expect(selectSession(projectId, session.id)?.messages).toEqual([ - { ...user, checkpointId: null }, - ]); + expect(selectSession(projectId, session.id)?.messages).toEqual([]); await restart(); const restored = selectSession(projectId, session.id)?.messages; - expect(restored).toHaveLength(1); - expect(restored?.[0]).toMatchObject({ id: user.id, content: "pending question" }); - expect(restored?.[0].usage).toBeUndefined(); + expect(restored).toEqual([]); }); it("uses the actual session created for a stale id", async () => { diff --git a/electron/ai-edition/chat-persistence.ts b/electron/ai-edition/chat-persistence.ts index 30d2cb8eb..1b29f18fd 100644 --- a/electron/ai-edition/chat-persistence.ts +++ b/electron/ai-edition/chat-persistence.ts @@ -61,6 +61,7 @@ const messageSchema = z.object({ createdAt: z.string().min(1), toolCalls: z.array(toolCallSchema).optional(), usage: optionalUsageSchema.optional(), + durationMs: tokenCountSchema.optional().catch(undefined), }); const sessionSchema = z.object({ id: z.string().min(1), diff --git a/electron/ai-edition/chat-service.toolloop.test.ts b/electron/ai-edition/chat-service.toolloop.test.ts index d7dd986b5..0090c56ab 100644 --- a/electron/ai-edition/chat-service.toolloop.test.ts +++ b/electron/ai-edition/chat-service.toolloop.test.ts @@ -241,6 +241,7 @@ describe("runChat tool loop", () => { invokeMock.mockImplementationOnce(async (args) => ({ text: "", document: args.document, + usage: createTurnUsageAccumulator().snapshot(), mutated: false, })); const session = createSession("proj_empty_reply"); diff --git a/electron/ai-edition/chat-service.ts b/electron/ai-edition/chat-service.ts index c7ce849c8..619e5328c 100644 --- a/electron/ai-edition/chat-service.ts +++ b/electron/ai-edition/chat-service.ts @@ -18,6 +18,7 @@ import { } from "../../src/lib/ai-edition/schema"; import type { ShaderEffectChecker } from "../../src/lib/ai-edition/shaderEffects"; import type { + AgentTurnUsage, AiEditionChatMessage, AiEditionChatResult, AiEditionToolCallSummary, @@ -297,6 +298,7 @@ export function deleteSession(projectId: string, sessionId: string): boolean { } export interface ChatEventSink { + usage?: (usage: AgentTurnUsage) => void; /** Streamed text delta from the model. */ text?: (delta: string) => void; /** Streamed delta from the model's reasoning block (Anthropic/MiniMax @@ -329,6 +331,7 @@ const noop = () => undefined; /** ponytail: zero-config sink that swallows every event. */ const NOOP_SINK: Required = { + usage: noop, text: noop, thinking: noop, toolStart: noop, @@ -434,6 +437,7 @@ export async function runChat( const appliedToolCalls: AiEditionToolCallSummary[] = []; const agentSink = { + usage: (usage: AgentTurnUsage) => emit.usage(usage), text: (delta: string) => emit.text(delta), thinking: (delta: string) => emit.thinking(delta), toolStart: (name: string, args: unknown) => { @@ -450,6 +454,7 @@ export async function runChat( const { invokeOpenScreenAgent } = await import("./deep-agent/service"); + const startedAt = performance.now(); const result = await invokeOpenScreenAgent({ document: workingDocument ?? emptyDocumentForTextOnly(projectId), model: { @@ -469,6 +474,8 @@ export async function runChat( checkShaderEffect: env.checkShaderEffect, }); + const durationMs = Math.max(0, Math.round(performance.now() - startedAt)); + // The project was deleted while the agent ran: its sessions are gone, so a // reply recorded now would be reported as sent and then never be seen again. if (sessionsByProject.get(projectId) !== sessions) { @@ -494,6 +501,7 @@ export async function runChat( // missed). Falls back to the generic message when the agent didn't // provide a reason. originatingMessage.usage = result.usage; + originatingMessage.durationMs = durationMs; persistProject(projectId); return { success: false, @@ -510,6 +518,7 @@ export async function runChat( role: "assistant", content: result.text, usage: result.usage, + durationMs, createdAt: new Date().toISOString(), toolCalls: appliedToolCalls.length ? appliedToolCalls : undefined, }; diff --git a/electron/ai-edition/deep-agent/service.ts b/electron/ai-edition/deep-agent/service.ts index d80d8b159..1468f83a8 100644 --- a/electron/ai-edition/deep-agent/service.ts +++ b/electron/ai-edition/deep-agent/service.ts @@ -110,6 +110,8 @@ import { import { createTurnUsageAccumulator } from "./usage"; export interface OpenScreenAgentSink { + /** Latest cumulative usage from completed model calls; never sum stream chunks. */ + usage?: (usage: AgentTurnUsage) => void; text: (delta: string) => void; /** Streaming delta from the model's reasoning block (Anthropic/MiniMax * thinking). Provider-agnostic — for providers without thinking this is @@ -733,6 +735,9 @@ export async function invokeOpenScreenAgent(args: InvokeArgs): Promise | undefined; const name = typeof event.name === "string" ? (event.name as string) : ""; diff --git a/electron/ai-edition/deep-agent/usage.integration.test.ts b/electron/ai-edition/deep-agent/usage.integration.test.ts index 0d044f06b..ebc769aa4 100644 --- a/electron/ai-edition/deep-agent/usage.integration.test.ts +++ b/electron/ai-edition/deep-agent/usage.integration.test.ts @@ -241,6 +241,7 @@ it.each([ }); if (mode === "anthropic") expect(accumulator.snapshot().cacheCreationInputTokens).toBe(3); requests = 0; + const usageUpdates = vi.fn(); const result = await invokeOpenScreenAgent({ document: createEmptyDocument({ projectId: "usage", title: "usage" }), model: { @@ -263,6 +264,7 @@ it.each([ history: [], userMessage: "Read", sink: { + usage: usageUpdates, text: vi.fn(), thinking: vi.fn(), toolStart: vi.fn(), @@ -270,6 +272,11 @@ it.each([ error: vi.fn(), }, }); + expect(usageUpdates).toHaveBeenCalled(); + expect(usageUpdates.mock.lastCall?.[0].totalTokens).toBe(result.usage.totalTokens); + if (mode === "chat") { + expect(usageUpdates.mock.calls.map(([value]) => value.totalTokens)).toEqual([15, 30]); + } if (mode === "empty") expect(result.reason).toContain("Empty response"); expect(result.usage).toMatchObject({ inputTokens: mode === "anthropic" ? 17 : mode === "chat" ? 20 : 10, diff --git a/electron/ipc/nativeBridge.ts b/electron/ipc/nativeBridge.ts index 46e75ae58..b2e0f09d0 100644 --- a/electron/ipc/nativeBridge.ts +++ b/electron/ipc/nativeBridge.ts @@ -194,6 +194,7 @@ function buildChatEventSink(sender: Electron.WebContents, sessionId: string): Ch return { text: (delta) => send({ kind: "text", sessionId, delta }), thinking: (delta) => send({ kind: "thinking", sessionId, delta }), + usage: (usage) => send({ kind: "usage", sessionId, usage }), toolStart: (name, args) => send({ kind: "toolStart", sessionId, name, args }), toolEnd: (name, ok, summary) => send({ kind: "toolEnd", sessionId, name, ok, summary }), error: (message) => send({ kind: "error", sessionId, message }), diff --git a/src/components/ai-edition/ChatUsageSummary.test.tsx b/src/components/ai-edition/ChatUsageSummary.test.tsx index c3aeb697e..20c483d0c 100644 --- a/src/components/ai-edition/ChatUsageSummary.test.tsx +++ b/src/components/ai-edition/ChatUsageSummary.test.tsx @@ -16,22 +16,22 @@ const complete: AgentTurnUsage = { countedCallCount: 3, status: "complete", }; -const show = (usage?: AgentTurnUsage) => +const show = (usage?: AgentTurnUsage, durationMs?: number, running = false) => render( - + , ); describe("ChatUsageSummary", () => { - it("shows totals and model calls with accessible accounting details", () => { + it("shows a concise total with accounting details in the tooltip", () => { const view = show(complete); - expect(view.getByText("660 tokens · 3 model calls")).toHaveAttribute( + expect(view.getByText("660 tokens")).toHaveAttribute( "aria-label", expect.stringContaining("Input: 500"), ); - expect(view.getByText("660 tokens · 3 model calls")).toHaveAttribute( + expect(view.getByText("660 tokens")).toHaveAttribute( "aria-label", expect.stringContaining("3 of 3 model calls counted"), ); @@ -53,22 +53,40 @@ describe("ChatUsageSummary", () => { }); it("shows explicitly reported zero", () => { expect( - show({ ...complete, inputTokens: 0, outputTokens: 0, totalTokens: 0 }).getByText( - "0 tokens · 3 model calls", - ), + show({ ...complete, inputTokens: 0, outputTokens: 0, totalTokens: 0 }).getByText("0 tokens"), ).toBeInTheDocument(); }); it("labels optional details as reported counts and omits missing details", () => { const view = show({ ...complete, cachedInputTokens: 0, reasoningOutputTokens: 12 }); - const label = view.getByText("660 tokens · 3 model calls").getAttribute("aria-label"); + const label = view.getByText("660 tokens").getAttribute("aria-label"); expect(label).toContain("Reported cached input: 0"); expect(label).toContain("Reported reasoning output: 12"); expect(label).not.toContain("cache creation"); }); it("formats counts for the selected locale", () => { localStorage.setItem("openscreen-locale", "de"); - const view = show({ ...complete, totalTokens: 1234 }); - expect(view.getByText(/1.234/)).toBeInTheDocument(); + const view = show({ ...complete, totalTokens: 12340 }); + expect(view.getByText(/12,3k/)).toBeInTheDocument(); localStorage.clear(); }); + it("shows compact totals and elapsed time, with no visible breakdown or model-call count", () => { + const view = show({ ...complete, totalTokens: 12340 }, 45000); + expect(view.getByText("12.3k tokens · 45s")).toBeInTheDocument(); + expect(view.container.textContent).not.toMatch(/Input:|Output:|model calls/); + }); + it("keeps elapsed time on unavailable usage without claiming zero tokens", () => { + const view = show( + { ...complete, status: "unavailable", countedCallCount: 0, totalTokens: 0 }, + 1200, + ); + expect(view.getByText("Token usage unavailable · 1s")).toBeInTheDocument(); + }); + it("shows reported running counts as a lower bound and hides unavailable running usage", () => { + const view = show(complete, undefined, true); + expect(view.getByText("≥660 tokens")).toBeInTheDocument(); + view.unmount(); + expect( + show({ ...complete, status: "unavailable" }, undefined, true).container, + ).toBeEmptyDOMElement(); + }); }); diff --git a/src/components/ai-edition/ChatUsageSummary.tsx b/src/components/ai-edition/ChatUsageSummary.tsx index c739ac1f8..9024bb5b1 100644 --- a/src/components/ai-edition/ChatUsageSummary.tsx +++ b/src/components/ai-edition/ChatUsageSummary.tsx @@ -3,22 +3,41 @@ import { useI18n, useScopedT } from "@/contexts/I18nContext"; import type { AgentTurnUsage } from "@/native/contracts"; /** Provider-reported usage for this turn, separate from the context-window budget. */ -export function ChatUsageSummary({ usage }: { usage?: AgentTurnUsage }) { +export function ChatUsageSummary({ + usage, + durationMs, + running = false, +}: { + usage?: AgentTurnUsage; + durationMs?: number; + running?: boolean; +}) { const { locale } = useI18n(); const t = useScopedT("editor"); - if (!usage) return null; + if (!usage || (running && usage.status === "unavailable")) return null; const format = (value: number) => new Intl.NumberFormat(locale).format(value); + const tokens = + usage.totalTokens >= 1000 + ? `${new Intl.NumberFormat(locale, { maximumFractionDigits: 1 }).format(usage.totalTokens / 1000)}k` + : format(usage.totalTokens); + const summaryTokens = running ? `≥${tokens}` : tokens; const summary = usage.status === "unavailable" ? t("chat.usageUnavailable") - : usage.status === "partial" - ? t("chat.usagePartial", { tokens: format(usage.totalTokens) }) - : t("chat.usageComplete", { - tokens: format(usage.totalTokens), - calls: format(usage.modelCallCount), - }); + : !running && usage.status === "partial" + ? t("chat.usagePartial", { tokens: summaryTokens }) + : t("chat.usageComplete", { tokens: summaryTokens }); + const duration = + !running && durationMs !== undefined + ? ` · ${new Intl.NumberFormat(locale, { + style: "unit", + unit: "second", + unitDisplay: "narrow", + maximumFractionDigits: 0, + }).format(Math.round(durationMs / 1000))}` + : ""; const details = [ - summary, + `${summary}${duration}`, t("chat.usageCoverage", { counted: format(usage.countedCallCount), calls: format(usage.modelCallCount), @@ -50,6 +69,7 @@ export function ChatUsageSummary({ usage }: { usage?: AgentTurnUsage }) { }} > {summary} + {duration} ); diff --git a/src/components/ai-edition/LeftPanel.tsx b/src/components/ai-edition/LeftPanel.tsx index 633de8ceb..9ad881469 100644 --- a/src/components/ai-edition/LeftPanel.tsx +++ b/src/components/ai-edition/LeftPanel.tsx @@ -41,6 +41,7 @@ interface ChatDisplayMessage { time?: string; toolCalls?: AiEditionToolCallSummary[]; usage?: AgentTurnUsage; + durationMs?: number; // ponytail: axcut parity — non-null on user messages that have a // rewind-able document snapshot, so the per-message ↩ button shows. checkpointId?: string | null; @@ -441,6 +442,7 @@ export function ChatStripPanel() { const [messages, setMessages] = useState([]); const [input, setInput] = useState(""); const [busy, setBusy] = useState(false); + const [liveUsage, setLiveUsage] = useState(); const [llmConfig, setLlmConfig] = useState(null); // The dialog itself is mounted in App.tsx so the app menu can reach it from every mode // (issue #420); this panel only asks for it to be opened, and watches it close. @@ -549,12 +551,16 @@ export function ChatStripPanel() { // ponytail: subscribe to streamed chat events so the reasoning trace (and // any future streaming text deltas) lands live instead of arriving all at - // once when chatRun resolves. We only act on `thinking` here — text deltas + // once when chatRun resolves. Usage updates report completed model calls; text deltas // are ignored in the renderer today because the chat already renders the // final assistant text on chatRun resolve, and a parallel live stream // would race the final message. Add `text` handling when that flow lands. useEffect(() => { const unsubChatEvent = window.electronAPI.onAiEditionChatEvent((event: AiEditionChatEvent) => { + if (event.kind === "usage") { + if (event.sessionId === activeTurnRef.current?.sessionId) setLiveUsage(event.usage); + return; + } if (event.kind !== "thinking") return; if (event.sessionId !== thinkingRunSessionRef.current) return; setThinkingText((prev) => prev + event.delta); @@ -618,6 +624,7 @@ export function ChatStripPanel() { time: m.createdAt, toolCalls: m.toolCalls, usage: m.usage, + durationMs: m.durationMs, checkpointId: m.checkpointId ?? null, })), ); @@ -657,6 +664,7 @@ export function ChatStripPanel() { transcriptVersionRef.current += 1; setInput(""); setBusy(true); + setLiveUsage(undefined); // ponytail: prepare the live reasoning-trace accumulator. Late events // from a previous run (or from another panel/window) won't match this // sessionId and are dropped by the subscription above. @@ -761,6 +769,7 @@ export function ChatStripPanel() { { id: assistant.id, usage: assistant.usage, + durationMs: assistant.durationMs, role: "assistant", content: assistant.content, time: assistant.createdAt, @@ -778,12 +787,13 @@ export function ChatStripPanel() { const userMessage = result.userMessage; setMessages((prev) => prev.map((message) => - (message.id === optimisticUserId || message.id === userMessage.id) + message.id === optimisticUserId || message.id === userMessage.id ? { ...message, id: userMessage.id, checkpointId: userMessage.checkpointId ?? null, usage: userMessage.usage, + durationMs: userMessage.durationMs, } : message, ), @@ -876,6 +886,7 @@ export function ChatStripPanel() { time: m.createdAt, toolCalls: m.toolCalls, usage: m.usage, + durationMs: m.durationMs, checkpointId: m.checkpointId ?? null, })), ); @@ -1028,6 +1039,7 @@ export function ChatStripPanel() { time: m.createdAt, toolCalls: m.toolCalls, usage: m.usage, + durationMs: m.durationMs, checkpointId: m.checkpointId ?? null, })), ); @@ -1454,7 +1466,7 @@ export function ChatStripPanel() { justifyContent: "flex-end", }} > - + {m.role === "user" && m.checkpointId ? ( // The name stays "Rewind to this message"; the tip adds what it does, which // only the confirmation dialog said before. @@ -1545,50 +1557,30 @@ export function ChatStripPanel() { ) : null} ))} - {busy ? ( + {busy && + activeTurnRef.current?.projectId === projectId && + activeTurnRef.current.sessionId === activeSessionId ? (
{t("chat.authorAssistant")}
- {thinkingText ? ( -
- -
- setThinkingExpanded((v) => !v)} - label={t("chat.thinking")} - /> -
-
- ) : ( -
- +
+ + {t("chat.thinking")} -
- )} + + +
+ {thinkingText ? ( + setThinkingExpanded((v) => !v)} + label={t("chat.thinking")} + /> + ) : null}
) : null} diff --git a/src/components/ai-edition/LeftPanel.usage.test.tsx b/src/components/ai-edition/LeftPanel.usage.test.tsx index 3c8bdb680..71e9507b7 100644 --- a/src/components/ai-edition/LeftPanel.usage.test.tsx +++ b/src/components/ai-edition/LeftPanel.usage.test.tsx @@ -3,6 +3,7 @@ import "@testing-library/jest-dom"; import { act, cleanup, fireEvent, render, waitFor } from "@testing-library/react"; import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; import type { + AiEditionChatEvent, AiEditionChatMessage, AiEditionChatResult, AiEditionChatSession, @@ -89,6 +90,7 @@ function deferred() { }); return { promise, resolve }; } +let chatEvent: (event: AiEditionChatEvent) => void; let store: typeof import("@/lib/ai-edition/store/projectStore").useProjectStore; beforeEach(async () => { vi.clearAllMocks(); @@ -99,8 +101,11 @@ beforeEach(async () => { /* jsdom does not scroll */ }; (window as unknown as { electronAPI: unknown }).electronAPI = { - onAiEditionChatEvent: () => () => { - /* no live events */ + onAiEditionChatEvent: (listener: (event: AiEditionChatEvent) => void) => { + chatEvent = listener; + return () => { + /* listener belongs to this test render */ + }; }, }; store = (await import("@/lib/ai-edition/store/projectStore")).useProjectStore; @@ -127,6 +132,48 @@ async function send(view: ReturnType) { } const usageNode = (view: ReturnType) => view.queryAllByText(/chat.usageComplete/); describe("chat usage and asynchronous identity", () => { + it("updates live usage beside the activity indicator and replaces it with the completed summary", async () => { + const pending = deferred(); + mocks.run.mockReturnValue(pending.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + act(() => chatEvent({ kind: "usage", sessionId: "B", usage })); + expect(view.queryByText(/≥660/)).toBeNull(); + act(() => chatEvent({ kind: "usage", sessionId: "A", usage })); + expect(view.getByText(/≥660/).parentElement?.textContent).toContain("chat.thinking"); + act(() => chatEvent({ kind: "usage", sessionId: "A", usage: { ...usage, totalTokens: 900 } })); + expect(view.getByText(/≥900/)).toBeInTheDocument(); + await act(async () => + pending.resolve({ + success: true, + assistantMessage: { ...message("answer", "Done"), durationMs: 45000 }, + }), + ); + await view.findByText("Done"); + expect(view.queryByText(/≥900/)).toBeNull(); + expect(view.getByText(/45s/)).toBeInTheDocument(); + }); + it("keeps a running count on its original session when the user switches away and back", async () => { + const pending = deferred(); + mocks.run.mockReturnValue(pending.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + act(() => chatEvent({ kind: "usage", sessionId: "A", usage })); + fireEvent.click(view.getByText("Select B")); + await view.findByText("History B"); + expect(view.queryByText(/≥660/)).toBeNull(); + act(() => chatEvent({ kind: "usage", sessionId: "A", usage: { ...usage, totalTokens: 900 } })); + expect(view.queryByText(/≥900/)).toBeNull(); + fireEvent.click(view.getByText("Select A")); + await view.findByText("History A"); + expect(view.getByText(/≥900/)).toBeInTheDocument(); + await act(async () => + pending.resolve({ success: true, assistantMessage: message("answer", "Done") }), + ); + }); + it("loads persisted usage", async () => { const view = await panel(); await view.findByText("History A"); diff --git a/src/i18n/locales/ar/editor.json b/src/i18n/locales/ar/editor.json index 20c728b1c..a11a43856 100644 --- a/src/i18n/locales/ar/editor.json +++ b/src/i18n/locales/ar/editor.json @@ -314,7 +314,7 @@ "empty": "لا توجد محادثات بعد.", "msgsCount": "{{count}} رسالة · {{date}}" }, - "usageComplete": "{{tokens}} رمزًا · {{calls}} استدعاءات للنموذج", + "usageComplete": "{{tokens}} رمزًا", "usagePartial": "{{tokens}} رمزًا معروفًا · غير مكتمل", "usageUnavailable": "استخدام الرموز غير متاح", "usageCoverage": "تم احتساب {{counted}} من {{calls}} استدعاءات للنموذج", diff --git a/src/i18n/locales/cs/editor.json b/src/i18n/locales/cs/editor.json index 337736553..54d7f7215 100644 --- a/src/i18n/locales/cs/editor.json +++ b/src/i18n/locales/cs/editor.json @@ -314,7 +314,7 @@ "empty": "Zatím žádné konverzace.", "msgsCount": "{{count}} zpráv · {{date}}" }, - "usageComplete": "{{tokens}} tokenů · {{calls}} volání modelu", + "usageComplete": "{{tokens}} tokenů", "usagePartial": "{{tokens}} známých tokenů · neúplné", "usageUnavailable": "Využití tokenů není dostupné", "usageCoverage": "Započítáno {{counted}} z {{calls}} volání modelu", diff --git a/src/i18n/locales/de/editor.json b/src/i18n/locales/de/editor.json index 68ac9eede..81e25075e 100644 --- a/src/i18n/locales/de/editor.json +++ b/src/i18n/locales/de/editor.json @@ -314,7 +314,7 @@ "empty": "Noch keine Unterhaltungen.", "msgsCount": "{{count}} Nachr. · {{date}}" }, - "usageComplete": "{{tokens}} Tokens · {{calls}} Modellaufrufe", + "usageComplete": "{{tokens}} Tokens", "usagePartial": "{{tokens}} bekannte Tokens · unvollständig", "usageUnavailable": "Tokenverbrauch nicht verfügbar", "usageCoverage": "{{counted}} von {{calls}} Modellaufrufen erfasst", diff --git a/src/i18n/locales/en/editor.json b/src/i18n/locales/en/editor.json index 87f4f35cf..3885590b0 100644 --- a/src/i18n/locales/en/editor.json +++ b/src/i18n/locales/en/editor.json @@ -314,7 +314,7 @@ "empty": "No conversations yet.", "msgsCount": "{{count}} msgs · {{date}}" }, - "usageComplete": "{{tokens}} tokens · {{calls}} model calls", + "usageComplete": "{{tokens}} tokens", "usagePartial": "{{tokens}} known tokens · incomplete", "usageUnavailable": "Token usage unavailable", "usageCoverage": "{{counted}} of {{calls}} model calls counted", diff --git a/src/i18n/locales/es/editor.json b/src/i18n/locales/es/editor.json index e92ffe9a0..ec7e7f92f 100644 --- a/src/i18n/locales/es/editor.json +++ b/src/i18n/locales/es/editor.json @@ -314,7 +314,7 @@ "empty": "Aún no hay conversaciones.", "msgsCount": "{{count}} mensajes · {{date}}" }, - "usageComplete": "{{tokens}} tokens · {{calls}} llamadas al modelo", + "usageComplete": "{{tokens}} tokens", "usagePartial": "{{tokens}} tokens conocidos · incompleto", "usageUnavailable": "Uso de tokens no disponible", "usageCoverage": "{{counted}} de {{calls}} llamadas al modelo contabilizadas", diff --git a/src/i18n/locales/fr/editor.json b/src/i18n/locales/fr/editor.json index 91833e171..4b6c72d0b 100644 --- a/src/i18n/locales/fr/editor.json +++ b/src/i18n/locales/fr/editor.json @@ -314,7 +314,7 @@ "empty": "Aucune conversation pour l'instant.", "msgsCount": "{{count}} messages · {{date}}" }, - "usageComplete": "{{tokens}} tokens · {{calls}} appels au modèle", + "usageComplete": "{{tokens}} tokens", "usagePartial": "{{tokens}} tokens connus · incomplet", "usageUnavailable": "Utilisation des tokens indisponible", "usageCoverage": "{{counted}} appels au modèle comptés sur {{calls}}", diff --git a/src/i18n/locales/it/editor.json b/src/i18n/locales/it/editor.json index c835eddad..f0386ff02 100644 --- a/src/i18n/locales/it/editor.json +++ b/src/i18n/locales/it/editor.json @@ -314,7 +314,7 @@ "empty": "Nessuna conversazione ancora.", "msgsCount": "{{count}} messaggi · {{date}}" }, - "usageComplete": "{{tokens}} token · {{calls}} chiamate al modello", + "usageComplete": "{{tokens}} token", "usagePartial": "{{tokens}} token noti · incompleto", "usageUnavailable": "Utilizzo dei token non disponibile", "usageCoverage": "{{counted}} di {{calls}} chiamate al modello conteggiate", diff --git a/src/i18n/locales/ja-JP/editor.json b/src/i18n/locales/ja-JP/editor.json index 4ba91572d..a1b1dae26 100644 --- a/src/i18n/locales/ja-JP/editor.json +++ b/src/i18n/locales/ja-JP/editor.json @@ -314,7 +314,7 @@ "empty": "まだ会話はありません。", "msgsCount": "{{count}} 件のメッセージ · {{date}}" }, - "usageComplete": "{{tokens}} トークン · モデル呼び出し {{calls}} 回", + "usageComplete": "{{tokens}} トークン", "usagePartial": "既知の {{tokens}} トークン · 不完全", "usageUnavailable": "トークン使用量を取得できません", "usageCoverage": "モデル呼び出し {{calls}} 回中 {{counted}} 回を集計", diff --git a/src/i18n/locales/ko-KR/editor.json b/src/i18n/locales/ko-KR/editor.json index dec11a434..e66397d0d 100644 --- a/src/i18n/locales/ko-KR/editor.json +++ b/src/i18n/locales/ko-KR/editor.json @@ -314,7 +314,7 @@ "empty": "아직 대화가 없습니다.", "msgsCount": "메시지 {{count}}개 · {{date}}" }, - "usageComplete": "{{tokens}} 토큰 · 모델 호출 {{calls}}회", + "usageComplete": "{{tokens}} 토큰", "usagePartial": "확인된 {{tokens}} 토큰 · 불완전", "usageUnavailable": "토큰 사용량을 확인할 수 없음", "usageCoverage": "모델 호출 {{calls}}회 중 {{counted}}회 집계", diff --git a/src/i18n/locales/pt-BR/editor.json b/src/i18n/locales/pt-BR/editor.json index 43906f7f8..bc1cd11c4 100644 --- a/src/i18n/locales/pt-BR/editor.json +++ b/src/i18n/locales/pt-BR/editor.json @@ -314,7 +314,7 @@ "empty": "Ainda não há conversas.", "msgsCount": "{{count}} mensagens · {{date}}" }, - "usageComplete": "{{tokens}} tokens · {{calls}} chamadas ao modelo", + "usageComplete": "{{tokens}} tokens", "usagePartial": "{{tokens}} tokens conhecidos · incompleto", "usageUnavailable": "Uso de tokens indisponível", "usageCoverage": "{{counted}} de {{calls}} chamadas ao modelo contabilizadas", diff --git a/src/i18n/locales/ru/editor.json b/src/i18n/locales/ru/editor.json index d78e9db88..de9acd6b4 100644 --- a/src/i18n/locales/ru/editor.json +++ b/src/i18n/locales/ru/editor.json @@ -314,7 +314,7 @@ "empty": "Пока нет бесед.", "msgsCount": "{{count}} сообщ. · {{date}}" }, - "usageComplete": "{{tokens}} токенов · {{calls}} вызовов модели", + "usageComplete": "{{tokens}} токенов", "usagePartial": "Известно {{tokens}} токенов · неполные данные", "usageUnavailable": "Расход токенов недоступен", "usageCoverage": "Учтено {{counted}} из {{calls}} вызовов модели", diff --git a/src/i18n/locales/tr/editor.json b/src/i18n/locales/tr/editor.json index 84330fce3..2b862de5d 100644 --- a/src/i18n/locales/tr/editor.json +++ b/src/i18n/locales/tr/editor.json @@ -314,7 +314,7 @@ "empty": "Henüz konuşma yok.", "msgsCount": "{{count}} mesaj · {{date}}" }, - "usageComplete": "{{tokens}} token · {{calls}} model çağrısı", + "usageComplete": "{{tokens}} token", "usagePartial": "Bilinen {{tokens}} token · eksik", "usageUnavailable": "Token kullanımı mevcut değil", "usageCoverage": "{{calls}} model çağrısından {{counted}} tanesi sayıldı", diff --git a/src/i18n/locales/vi/editor.json b/src/i18n/locales/vi/editor.json index c1b6bdc1b..db9cc11b0 100644 --- a/src/i18n/locales/vi/editor.json +++ b/src/i18n/locales/vi/editor.json @@ -314,7 +314,7 @@ "empty": "Chưa có cuộc trò chuyện nào.", "msgsCount": "{{count}} tin nhắn · {{date}}" }, - "usageComplete": "{{tokens}} token · {{calls}} lượt gọi mô hình", + "usageComplete": "{{tokens}} token", "usagePartial": "{{tokens}} token đã biết · chưa đầy đủ", "usageUnavailable": "Không có dữ liệu sử dụng token", "usageCoverage": "Đã tính {{counted}} trên {{calls}} lượt gọi mô hình", diff --git a/src/i18n/locales/zh-CN/editor.json b/src/i18n/locales/zh-CN/editor.json index a741da1e1..5289f515e 100644 --- a/src/i18n/locales/zh-CN/editor.json +++ b/src/i18n/locales/zh-CN/editor.json @@ -314,7 +314,7 @@ "empty": "暂无对话。", "msgsCount": "{{count}} 条消息 · {{date}}" }, - "usageComplete": "{{tokens}} 个 token · {{calls}} 次模型调用", + "usageComplete": "{{tokens}} 个 token", "usagePartial": "已知 {{tokens}} 个 token · 不完整", "usageUnavailable": "Token 用量不可用", "usageCoverage": "已统计 {{counted}} / {{calls}} 次模型调用", diff --git a/src/i18n/locales/zh-TW/editor.json b/src/i18n/locales/zh-TW/editor.json index 7cdece36d..f28e7f87f 100644 --- a/src/i18n/locales/zh-TW/editor.json +++ b/src/i18n/locales/zh-TW/editor.json @@ -314,7 +314,7 @@ "empty": "尚無對話。", "msgsCount": "{{count}} 則訊息 · {{date}}" }, - "usageComplete": "{{tokens}} 個 token · {{calls}} 次模型呼叫", + "usageComplete": "{{tokens}} 個 token", "usagePartial": "已知 {{tokens}} 個 token · 不完整", "usageUnavailable": "Token 用量無法取得", "usageCoverage": "已統計 {{counted}} / {{calls}} 次模型呼叫", diff --git a/src/native/contracts.ts b/src/native/contracts.ts index 670cec84a..23024511f 100644 --- a/src/native/contracts.ts +++ b/src/native/contracts.ts @@ -398,6 +398,8 @@ export interface AgentTurnUsage { } export interface AiEditionChatMessage { + /** Elapsed agent turn time, measured in the main process. Absent on older messages. */ + durationMs?: number; usage?: AgentTurnUsage; id: string; role: "user" | "assistant"; @@ -1037,6 +1039,7 @@ export type NativeBridgeEventName = export type AiEditionChatEvent = | { kind: "text"; sessionId: string; delta: string } | { kind: "thinking"; sessionId: string; delta: string } + | { kind: "usage"; sessionId: string; usage: AgentTurnUsage } | { kind: "toolStart"; sessionId: string; name: string; args: unknown } | { kind: "toolEnd"; sessionId: string; name: string; ok: boolean; summary?: string } | { kind: "error"; sessionId: string; message: string }; diff --git a/technical-documentation/testing/manual-e2e-checklist.md b/technical-documentation/testing/manual-e2e-checklist.md index f1fd63a31..3ec9e9e1d 100644 --- a/technical-documentation/testing/manual-e2e-checklist.md +++ b/technical-documentation/testing/manual-e2e-checklist.md @@ -995,3 +995,5 @@ These checks are the human slice: an agent cannot click Apple's picker (see abov | 2026-10-17 | PR #1319 (`2236580`), artifact `openscreen-linux` of build run 39046512213, AppImage run directly. Reference: the `v2.1.0` AppImage from the GitHub release | Ubuntu 24.04.4, GNOME 46 Wayland, AMD Radeon 610M (RADV); `[d3d] … -> backend Hardware`, no CPU fallback | **Partial — fix slice only, no defect** | Same MCP pass and project as the rows above, on the hardware Vulkan backend. `orbit` (12 frames) and `left` (4 s, 6 s): the whole card with four rounded corners, no flat cut. `v2.1.0` reproduces the bug (top and bottom edges flat, corners cut from 1.5 s). `none` and the flat frames at 1.0 and 9.5 s are byte-identical to `v2.1.0` (equal md5). **Not covered:** the editor preview; `right`; a full MP4 export. | | 2026-10-17 | `v2.1.1-rc.1`, `release/v2.1.1` @ `6ec38bf` (= `v2.1.0` + #1319), assets of the GitHub pre-release (build run 39069024444). Windows: `Openscreen.Setup.2.1.1-rc.1-x64.exe`, sha512 matched `latest.yml`, unpacked with 7-Zip and run in place, version 2.1.1. macOS: `Openscreen-macOS-Apple-Silicon-2.1.1-rc.1.dmg`, sha256 matched the asset digest; `spctl` accepted, Notarized Developer ID, on the DMG and the app; ticket stapled to the DMG only, as on 2.1.0-rc.6; `CFBundleShortVersionString` 2.1.1-rc.1. Linux: `Openscreen-Linux-2.1.1-rc.1.AppImage`, sha512 matched `latest-linux.yml` | Windows 11 Home 26200, RTX 4070 Ti; macOS 27.0.1 (26A434), Mac mini M1 8 GB; Ubuntu 24.04.4, GNOME 46 Wayland, Radeon 610M, hardware Vulkan backend | **Partial — patch pass toward stable: no defect on any of the three** | Scoped to what the patch changes (the compositor geometry of a tilted filled card), in MCP over stdio with an isolated `--user-data-dir`, on the project of the PR rows above. On all three: `orbit` (12 frames) and `left` show the whole card with four rounded corners and no flat cut; `none` is a flat zoom in a rounded card (byte-identical to `v2.1.0` on Windows and Linux; on Windows every checked frame is byte-identical to the PR build). `exportVideo` at 1080p30: 10.00 s, 1920×1080 H.264 with an AAC track, decodes without error, and its frame at 5 s shows the tilted card with rounded corners. Before the cut, on a dev build of the PR: the four device frames, dual-frame and vertical-stack, under `orbit`, `left` and `none`, rendered byte-identical to `v2.1.0` (49 of 49 frames). **Not covered:** recording, playback and the editor preview, which the patch does not touch; the rest of the checklist (the `v2.1.0-rc.6` rows). | | 2026-10-19 | `v2.1.2-rc.1`, `release/v2.1.2` @ `c4ef8fd` (= `v2.1.1` + #1344), assets of the GitHub pre-release (build run 39224311283). Windows: `Openscreen.Setup.2.1.2-rc.1-x64.exe` unpacked with 7-Zip and run in place. macOS: `Openscreen-Mac-arm64-2.1.2-rc.1.zip`, run in place. Linux: the AppImage, run directly with `--no-sandbox` | Windows 11 Home 26200; macOS 27.0.1, Mac mini M1; Ubuntu 24.04 GNOME Wayland (Xwayland `:0`) | **Partial: fix slice only, no defect** | `openscreen mcp` over stdio, scripted, with a fresh `--user-data-dir` per run. On all three platforms it answered `initialize`, and `usage-ping.json` held today's day, which is saved only once PostHog accepted the event. With `DO_NOT_TRACK=1` no state file was written. stdout held only JSON-RPC on macOS and Linux. On Windows it starts with one `\r\n` that Electron 41 itself writes during browser-process startup, before `main.js` loads: a bare `app.exit(0)` script prints it too, `ELECTRON_RUN_AS_NODE` does not. It predates this change, and the MCP SDK clients skip it with one parse error. Not covered: everything else in this file, including recording, editing, export, the GUI ping and the tray toggle. These runs sent eight real `surface: mcp` events to PostHog on 19/10. | + +| 2026-10-21 | PR #1177, rebased on `main` @ `1e917109`, token presentation follow-up (dev build, Electron 41.2.1) | macOS 15.8, Apple Silicon | **Partial: Agent usage presentation** | Real Electron driven through OS computer-use, isolated `/tmp` profile and a local scripted OpenAI-compatible provider (no paid provider). A two-call turn showed muted `≥10.3k tokens` beside the activity indicator, then `12.3k tokens · 15s` beneath the reply. Input/output/cache details remained in the tooltip. During a second turn, creating Conversation 2 hid the running indicator/count there; returning to Conversation 1 restored the running count and then exactly one completed reply. Fully quit/relaunched Electron and reopened the editor: both completed summaries and their durations restored in Conversation 1, with old rewind controls absent. Sidecar inspection confirmed Conversation 2 remained empty. Skipped: capture/preview/export, native binaries, paid-provider billing, Windows/Linux and the rest of this checklist; chat-only change, not release-promotion QA. | From 2cf6e8435c9214981243088aebc470380e6f8611 Mon Sep 17 00:00:00 2001 From: wuzixuan06 Date: Thu, 22 Oct 2026 00:05:57 +0800 Subject: [PATCH 3/4] fix(ai): simplify usage lines and remove duplicate thinking label --- .../ai-edition/ChatUsageSummary.test.tsx | 24 ++++++++++++------ .../ai-edition/ChatUsageSummary.tsx | 13 ++++++---- src/components/ai-edition/LeftPanel.tsx | 8 +++--- .../ai-edition/LeftPanel.usage.test.tsx | 20 +++++++++++++++ .../testing/manual-e2e-checklist.md | 2 +- .../testing/screenshots/pr-1177/completed.png | Bin 0 -> 408607 bytes .../testing/screenshots/pr-1177/running.png | Bin 0 -> 410913 bytes 7 files changed, 50 insertions(+), 17 deletions(-) create mode 100644 technical-documentation/testing/screenshots/pr-1177/completed.png create mode 100644 technical-documentation/testing/screenshots/pr-1177/running.png diff --git a/src/components/ai-edition/ChatUsageSummary.test.tsx b/src/components/ai-edition/ChatUsageSummary.test.tsx index 20c483d0c..b9d4099a4 100644 --- a/src/components/ai-edition/ChatUsageSummary.test.tsx +++ b/src/components/ai-edition/ChatUsageSummary.test.tsx @@ -36,16 +36,20 @@ describe("ChatUsageSummary", () => { expect.stringContaining("3 of 3 model calls counted"), ); }); - it("marks partial totals as incomplete", () => { - expect( - show({ ...complete, totalTokens: 440, countedCallCount: 2, status: "partial" }).getByText( - "440 known tokens · incomplete", - ), - ).toBeInTheDocument(); + it("keeps partial accounting details in the tooltip", () => { + const view = show( + { ...complete, totalTokens: 12340, countedCallCount: 2, status: "partial" }, + 45000, + ); + expect(view.getByText("12.3k tokens · 45s")).toHaveAttribute( + "aria-label", + expect.stringContaining("12.3k known tokens · incomplete"), + ); + expect(view.container.textContent).not.toMatch(/known|incomplete/); }); it("does not turn unavailable usage into zero", () => { const view = show({ ...complete, totalTokens: 0, countedCallCount: 0, status: "unavailable" }); - expect(view.getByText("Token usage unavailable")).toBeInTheDocument(); + expect(view.container).toBeEmptyDOMElement(); expect(view.queryByText(/0 tokens/)).toBeNull(); }); it("keeps legacy messages quiet", () => { @@ -79,7 +83,11 @@ describe("ChatUsageSummary", () => { { ...complete, status: "unavailable", countedCallCount: 0, totalTokens: 0 }, 1200, ); - expect(view.getByText("Token usage unavailable · 1s")).toBeInTheDocument(); + expect(view.getByText("1s")).toHaveAttribute( + "aria-label", + expect.stringContaining("Token usage unavailable"), + ); + expect(view.container.textContent).toBe("1s"); }); it("shows reported running counts as a lower bound and hides unavailable running usage", () => { const view = show(complete, undefined, true); diff --git a/src/components/ai-edition/ChatUsageSummary.tsx b/src/components/ai-edition/ChatUsageSummary.tsx index 9024bb5b1..013fda122 100644 --- a/src/components/ai-edition/ChatUsageSummary.tsx +++ b/src/components/ai-edition/ChatUsageSummary.tsx @@ -22,6 +22,8 @@ export function ChatUsageSummary({ : format(usage.totalTokens); const summaryTokens = running ? `≥${tokens}` : tokens; const summary = + usage.status === "unavailable" ? "" : t("chat.usageComplete", { tokens: summaryTokens }); + const usageDescription = usage.status === "unavailable" ? t("chat.usageUnavailable") : !running && usage.status === "partial" @@ -29,15 +31,17 @@ export function ChatUsageSummary({ : t("chat.usageComplete", { tokens: summaryTokens }); const duration = !running && durationMs !== undefined - ? ` · ${new Intl.NumberFormat(locale, { + ? new Intl.NumberFormat(locale, { style: "unit", unit: "second", unitDisplay: "narrow", maximumFractionDigits: 0, - }).format(Math.round(durationMs / 1000))}` + }).format(Math.round(durationMs / 1000)) : ""; + const line = [summary, duration].filter(Boolean).join(" · "); + if (!line) return null; const details = [ - `${summary}${duration}`, + [usageDescription, duration].filter(Boolean).join(" · "), t("chat.usageCoverage", { counted: format(usage.countedCallCount), calls: format(usage.modelCallCount), @@ -68,8 +72,7 @@ export function ChatUsageSummary({ fontVariantNumeric: "tabular-nums", }} > - {summary} - {duration} + {line} ); diff --git a/src/components/ai-edition/LeftPanel.tsx b/src/components/ai-edition/LeftPanel.tsx index 9ad881469..41ac8a07d 100644 --- a/src/components/ai-edition/LeftPanel.tsx +++ b/src/components/ai-edition/LeftPanel.tsx @@ -1568,9 +1568,11 @@ export function ChatStripPanel() { style={{ display: "flex", alignItems: "center", gap: 6, color: "var(--muted)" }} > - - {t("chat.thinking")} - + {!thinkingText ? ( + + {t("chat.thinking")} + + ) : null} {thinkingText ? ( diff --git a/src/components/ai-edition/LeftPanel.usage.test.tsx b/src/components/ai-edition/LeftPanel.usage.test.tsx index 71e9507b7..7c8c25f33 100644 --- a/src/components/ai-edition/LeftPanel.usage.test.tsx +++ b/src/components/ai-edition/LeftPanel.usage.test.tsx @@ -132,6 +132,26 @@ async function send(view: ReturnType) { } const usageNode = (view: ReturnType) => view.queryAllByText(/chat.usageComplete/); describe("chat usage and asynchronous identity", () => { + it("keeps one Thinking label while reasoning streams, alongside live usage", async () => { + const pending = deferred(); + mocks.run.mockReturnValue(pending.promise); + const view = await panel(); + await view.findByText("History A"); + await send(view); + expect(view.getAllByText("chat.thinking")).toHaveLength(1); + act(() => { + chatEvent({ kind: "thinking", sessionId: "A", delta: "Inspecting the project" }); + chatEvent({ kind: "usage", sessionId: "A", usage }); + }); + expect(view.getAllByText("chat.thinking")).toHaveLength(1); + expect(view.getByText(/≥660/)).toBeInTheDocument(); + const thinking = view.getByRole("button", { name: /chat.thinking/ }); + fireEvent.click(thinking); + expect(thinking).toHaveAttribute("aria-expanded", "true"); + await act(async () => + pending.resolve({ success: true, assistantMessage: message("answer", "Done") }), + ); + }); it("updates live usage beside the activity indicator and replaces it with the completed summary", async () => { const pending = deferred(); mocks.run.mockReturnValue(pending.promise); diff --git a/technical-documentation/testing/manual-e2e-checklist.md b/technical-documentation/testing/manual-e2e-checklist.md index 3ec9e9e1d..d5bce6475 100644 --- a/technical-documentation/testing/manual-e2e-checklist.md +++ b/technical-documentation/testing/manual-e2e-checklist.md @@ -995,5 +995,5 @@ These checks are the human slice: an agent cannot click Apple's picker (see abov | 2026-10-17 | PR #1319 (`2236580`), artifact `openscreen-linux` of build run 39046512213, AppImage run directly. Reference: the `v2.1.0` AppImage from the GitHub release | Ubuntu 24.04.4, GNOME 46 Wayland, AMD Radeon 610M (RADV); `[d3d] … -> backend Hardware`, no CPU fallback | **Partial — fix slice only, no defect** | Same MCP pass and project as the rows above, on the hardware Vulkan backend. `orbit` (12 frames) and `left` (4 s, 6 s): the whole card with four rounded corners, no flat cut. `v2.1.0` reproduces the bug (top and bottom edges flat, corners cut from 1.5 s). `none` and the flat frames at 1.0 and 9.5 s are byte-identical to `v2.1.0` (equal md5). **Not covered:** the editor preview; `right`; a full MP4 export. | | 2026-10-17 | `v2.1.1-rc.1`, `release/v2.1.1` @ `6ec38bf` (= `v2.1.0` + #1319), assets of the GitHub pre-release (build run 39069024444). Windows: `Openscreen.Setup.2.1.1-rc.1-x64.exe`, sha512 matched `latest.yml`, unpacked with 7-Zip and run in place, version 2.1.1. macOS: `Openscreen-macOS-Apple-Silicon-2.1.1-rc.1.dmg`, sha256 matched the asset digest; `spctl` accepted, Notarized Developer ID, on the DMG and the app; ticket stapled to the DMG only, as on 2.1.0-rc.6; `CFBundleShortVersionString` 2.1.1-rc.1. Linux: `Openscreen-Linux-2.1.1-rc.1.AppImage`, sha512 matched `latest-linux.yml` | Windows 11 Home 26200, RTX 4070 Ti; macOS 27.0.1 (26A434), Mac mini M1 8 GB; Ubuntu 24.04.4, GNOME 46 Wayland, Radeon 610M, hardware Vulkan backend | **Partial — patch pass toward stable: no defect on any of the three** | Scoped to what the patch changes (the compositor geometry of a tilted filled card), in MCP over stdio with an isolated `--user-data-dir`, on the project of the PR rows above. On all three: `orbit` (12 frames) and `left` show the whole card with four rounded corners and no flat cut; `none` is a flat zoom in a rounded card (byte-identical to `v2.1.0` on Windows and Linux; on Windows every checked frame is byte-identical to the PR build). `exportVideo` at 1080p30: 10.00 s, 1920×1080 H.264 with an AAC track, decodes without error, and its frame at 5 s shows the tilted card with rounded corners. Before the cut, on a dev build of the PR: the four device frames, dual-frame and vertical-stack, under `orbit`, `left` and `none`, rendered byte-identical to `v2.1.0` (49 of 49 frames). **Not covered:** recording, playback and the editor preview, which the patch does not touch; the rest of the checklist (the `v2.1.0-rc.6` rows). | | 2026-10-19 | `v2.1.2-rc.1`, `release/v2.1.2` @ `c4ef8fd` (= `v2.1.1` + #1344), assets of the GitHub pre-release (build run 39224311283). Windows: `Openscreen.Setup.2.1.2-rc.1-x64.exe` unpacked with 7-Zip and run in place. macOS: `Openscreen-Mac-arm64-2.1.2-rc.1.zip`, run in place. Linux: the AppImage, run directly with `--no-sandbox` | Windows 11 Home 26200; macOS 27.0.1, Mac mini M1; Ubuntu 24.04 GNOME Wayland (Xwayland `:0`) | **Partial: fix slice only, no defect** | `openscreen mcp` over stdio, scripted, with a fresh `--user-data-dir` per run. On all three platforms it answered `initialize`, and `usage-ping.json` held today's day, which is saved only once PostHog accepted the event. With `DO_NOT_TRACK=1` no state file was written. stdout held only JSON-RPC on macOS and Linux. On Windows it starts with one `\r\n` that Electron 41 itself writes during browser-process startup, before `main.js` loads: a bare `app.exit(0)` script prints it too, `ELECTRON_RUN_AS_NODE` does not. It predates this change, and the MCP SDK clients skip it with one parse error. Not covered: everything else in this file, including recording, editing, export, the GUI ping and the tray toggle. These runs sent eight real `surface: mcp` events to PostHog on 19/10. | - | 2026-10-21 | PR #1177, rebased on `main` @ `1e917109`, token presentation follow-up (dev build, Electron 41.2.1) | macOS 15.8, Apple Silicon | **Partial: Agent usage presentation** | Real Electron driven through OS computer-use, isolated `/tmp` profile and a local scripted OpenAI-compatible provider (no paid provider). A two-call turn showed muted `≥10.3k tokens` beside the activity indicator, then `12.3k tokens · 15s` beneath the reply. Input/output/cache details remained in the tooltip. During a second turn, creating Conversation 2 hid the running indicator/count there; returning to Conversation 1 restored the running count and then exactly one completed reply. Fully quit/relaunched Electron and reopened the editor: both completed summaries and their durations restored in Conversation 1, with old rewind controls absent. Sidecar inspection confirmed Conversation 2 remained empty. Skipped: capture/preview/export, native binaries, paid-provider billing, Windows/Linux and the rest of this checklist; chat-only change, not release-promotion QA. | +| 2026-10-22 | PR #1177, maintainer presentation follow-up on `54ee4e15` (dev build, Electron 41.2.1) | macOS 15.8, Apple Silicon | **Partial: Agent usage presentation** | Real Electron driven through OS computer-use with an isolated `/tmp` profile and a local scripted Anthropic-compatible provider (synthetic counts, no paid provider). A two-call turn showed muted `≥10.3k tokens` beside the spinner, one expandable Thinking label while reasoning streamed, then `12.3k tokens · 45s` beneath the reply. Captured [running](screenshots/pr-1177/running.png) and [completed](screenshots/pr-1177/completed.png) screenshots. Component tests also cover partial totals with details confined to the tooltip, unavailable usage showing duration only, and unavailable usage without duration rendering nothing. Skipped: capture/preview/export, native binaries, paid-provider billing, restart/session switching (covered in the preceding pass), Windows/Linux and the rest of this checklist; chat presentation only. | diff --git a/technical-documentation/testing/screenshots/pr-1177/completed.png b/technical-documentation/testing/screenshots/pr-1177/completed.png new file mode 100644 index 0000000000000000000000000000000000000000..a34ba007e80365f381245becef8c7611109cc8f8 GIT binary patch literal 408607 zcmeFY1z1(j*D$)_9J)IsrCYi|KuV;Mlm;nj=@b;CQ&d2Z5|EPaE&&y332CI^&<8ji z?#5sI<9(m|z4w0KeeV69`)-)C*Q}XYv(}n5GizdB|F~WR2=6PYDgh`c0H6Z?0oO~w zT}5Aq#{i(N4sZehfC->PIsi}*0>?-y~k|0%BVBu1{S( z?Ooj%1bOcOV)Cl$&>ITi^BZRQ4HAyi#!e>yRnW~)tT#Jw`QYni0+_0Tg1MHCrjqId z#otU3ELys`JwYV|0B4t{9y-eM42DL=3>aGg7Jv_s0gM2VrM0JVcJp`&0O)QYp2_E_+YOuw z!lWJ`gCJaV1Ka%px7@&1f56{==h4$q0Q0PZ>czFR^soZ}d>Dvl@V2%C=@1Zt@EsQ$ z2Nw{&3&Jwa&aO5f916nhU>>kef*bl`R{uoD?w?>wORK+WT3Xuu4gVnvSQ4!Go`a{` z6HC9}k^hxH&QH8Ref@sez+YT@4;3BoO$zF5)yY-u2F3+pxQmsBCI}OQ<^**BrTY^m zxA#(c2*O}~RCa4m1yGj&IS5O6KG9YE6R%@qc~1?5X+ZpAmnRxGZGV#|?6HH=O&(Bx zsBaves_KC-B?uSUdMfJvnWw|URp+mICm(w#$o+}mu=D_-Kk7w#IX%3=gY+T9_O_~j z(ueT++v^#Ccx(`V&)Y#?1BCHGSi{pv_l6&k2goCTdxabP?>rt}IybT~gLn^H7iD=6 z2IYdJJ@!z#(ZfytkItST^ji;*4todHo3fxzAfr$1^}zmkqbta&wdHUAL0KR$TNk-M z^#e(>^)$TU?M8=_Hn#T^K^T-BifQZe@J3z`52bW_Dt}WKSQg6Z_T+azxxvfZK2g5G z-v(hlPjB77%6dQb(7VBdd_p7Ko@(9b5abh@?r3>m3xq*_pr3#TfC6w2U;wJ@5j|X`CyM*^|Do(&JuvTY44R`{^y+GI&Eb|u!`oJoParis_7e|&LO>0nw zCt$cq|IhJ%VgHd+4%ESeKg)XkRU-qzU**vi(eI(FpevzsK&hcJP)X$AAH`}hv%J=JDYb9e^7a9>-!Y6aX`V< z&CkQZ&i*Nb95`dxGN`&(^Kvr?+z}7~fSdW}CJz7{Y5$&AP{_ah0~fvk0MhN(*VoPe zz};^LfJ#wtNND^Aj$I4@h;RVlbECDFhxZ@!pf@ixaO5BWdmj}*2QUHbpgaPA2p|dE z1r&k%fF_^^7y)LWz1o9z?g97!fxt5$0*C<;fmc8}kPYMkML-!)1=IsAKqt@#3<2MP z31Akqo;6?_fB~n#B?<}(1_~Yu2?`YoJqim77m5Ii7>W#vBFY049TX!J3luvP7Zfj) zK$LKl7?fm`bd(&FVw6ghMwCvJ0hAGxX_O_DO_W2F3seXyE-EQ1Eh;N2AF3Ft9I6_s z9;zv-9jZI3Kk9STc+@wjxu~V6b*P=FL#Pv|i>TYEClCOF10jbnLU>N!M<7neJ;DqA5!TE&q8D|OS9G4iE6ITKE5v~_*JZ>Rw2ktcP z5gr~ME8bl^W4xz$@p#2}-FWkOaC{PcUVK%28~hOb4E#F$QT#muECLn+IRY~Re}XiE zYJy>c9YQQZRzd|rOTu8n48lgjDZ+Z&gO(JKaSfYp_id|piiZ5r{7{AV~}Hb!tjQnhXKY&!>GdO#hAnRjq&m} z+wF(9!){mH{>g;RB*yfZDV3><3C2v%tj-+BT*5rVg2f`nV$brLrJv=Dm5tSaHIlWS zb%TwPO_j}`t%Plk9gkg>-JLy`eVhZGLyW_T;~mF$PE<}|PJ7M_&S5T8E)gyVu6JA` z+-Th5+%DX?+*3TbJaRnVJS99!yyUzOc*A(>dH493`HcCJ`1<*fcZBaexs!iqmYT?iF5xQ?Q4tT3a*<6@ zW>E{#OwlPZQZX&DSh3IIXyWqXA>u9K=Mo|kPbI1(_9b~Fog_a>Zb-37*-GV0tw`UN zwv^71UX)>wv5z^6iGe|aAG~_c3G8{6ZHgYg( zFvc*}H~wIJVxnmB%4F@4@S})FlcsE@zNQ0a)Mii2TFnW}EzPSf&@2orK3X6wH7#>3 zPpnj}GOb|N3f8Z!w{7m)q}puSO4}yeu0NK3ocwshPTDTTZqr`YKFxl|LBS#2;lNSF zG28LXNzH3MmlL}`{XA9>>7h)GDmmXI-S6|l=H!imbw?%ge_gC&P4>gYuo+zHC zo()e)K}Y|K7rWOBuO)98?+kCakG@Z}FOjc{?-xH#zbLEzs7#;^?LEmgEtLtncpV9MWoxOPh`kv zRAka*MrEG8vw1g~bvLU#n>ITp`{KRB`yV;VId!?LxoLUmdER-y^7Zrk3&aYFKTv;& z`EXU}Qn*;8Q`A!|T3q~*=3_z$YKd3LX6d8S?`8MO8p?Ufb1KLyVm<+%ygqGJT2xL} zsa17Vi&dA`u+(JMlGH}mq15@+!Rqbn7aNQkMjG!ob~Q;h)i(1s7q&3AWVDjCCbVI< zJ#V{i_isPxaO>FVwCh~yGVhx0HtZhn(eC-ytJeFuPpPlFU#`FXv-Ibd0f~XeL9xO5 zA(5fFFT!7HzY2e?{U-9QZdi1<;k)?vrV*);wo%#9&ar!AedDU*LlYVkBa;s&e@s1^ zTKr-2V`KWs^udhx%;jw89NJv;Pr{#R^EC6h3mgj-iz17yOZS$(EbA`Mu2`>ZuX?T` z)}H^u`<1p%zh1l{u+g%qwE2C@WNU5PZToU3VwY$)bB}$mX8-Q~7nmVz?ZD&U`Y`s0 z>ZtHo=(y`d>tz1a`SkKE8cqc-Iu|?dzc9F1zw|+1Al_VYTs0xpkaO40*Vk^A9+tm- z0SNeu`WRe=9~J@to)G|$dLZ?qIzFf@1ec{=$={I*gm$i zcX0H4>gDa@>*pW-{6$3M%c$t&l+;&guiv~)&&|s(_)u6>{IROKrnauWp|Po}yQjCW z|MS4$=-Bwg>~F#TA=fOpv_Sp+Kv2O}fVJLCg#Wu z$&^R6eI;J}k|tIceDG1n*Q@~_w1N%4jljLGoJ5)!p|7S>^Hpq<8XvQ5tF~S_r0PHa znJ|y6aSbuHB}MyjwZE-&cJe{{uIYax|63vdZ4Ce25&nB*_}^|+w9!ubd;ET^NcE3l z{r{naf1Nmzv24s9zPxyN8Kl2OEGlwx?0Qf-$RU)qVB27qM~P3;KI?!HL#zjoGpqt4!PVI`4V-yT{$xHX#G#b zXiU^p5>qgnkSD`Ug0@lJ*=+nkgY=sa zLK)q|eFW?p=%1`-e~&Bs|1MdLoCD`(I4%4mMt(k?~=-&RYLiR@QwS6I7b|7~$*8uz)xCX41 z5v)G+NBf}iuYpsc01j__-!n;B&Z9pY^iNL91(76@3Fl{E(_90W)c+z@-n7~$&;G{g zbA#+ZTJ&$VxM%;f9RDgJ-JofBmh`vbzf=HP$!|uTV*gE!e~}T?AkD#^ckshM^_}pi zi9B*euzG@41}eMl8n~D!uv@w1N69kyrh4HcGUUopBlGoL-2~6~|H1mk>YJjM6d0j& za%7L+SO0Hnv*S;8=`S{>r9ZD6m4_vUDq(&WLW#g+Vp!D~f2|*ZJM1E3zO3o0t<8Z8 z!H)i3IzW^1sB?w$&;lFNQSFsgC|>(lYoL7}DHQV0 zkst?ef|IoDL&43szPP?NJLLS7>;{w1H4w6Zu>Y6H#pn+GHjnJ8-Pof7NX{}MSV_#r!K9P)YigDABq^?CMXz@uy6ecZwoNcAA^Ut`;9pF&D&u7RZN z2QEVY1G$tZUt3%QMh@2ilgyhr`#GmyA-lVt$S~26Gmvy&!oNhycsr3*V@RbS{)Ul; zsV~>S?9BQV)CHU?!NDkw{$FFprr}q%g^1V-Yxg{_|C(swy7m53UnkqR4)F3K)Hcm& z3uG*0&nBJ50|i&?g?&u8)(m+Qu;tE~Wu`ZR8i!r)H&`*TS=VE|TiPBi#Ywsa4UhJmVmIsl4oIowxB0 zoztC%#QBM+niiwE9Ek1Fhp)yZ2nV|v;^ok*^P&oj%u-WZX}`sK8^w02Dp1|mo84q@ zKsw+klIr(kYU{byO3SLtu^=|FvoaFcHYCyq>keEac~=R$12dvJ=BZF*^#OyoFTYhG zq-`TB%!o2Bd9^k7T-G0QV7f5)x@1;2HOGt2_KvD7KHXNMB#O0&8NK6h`!YkI*{n%id8eo)vqB#qLd>26)vT`0ui z#;g^qFYf;7#gSSF;bK^j^ZR@IE18LbX`fZcE+1#rYooMzFiLOLKCArV11w}mV;}t82 z4OIUd`-@oqH9sjR{3V7M6@8si$#4-jYc&%)y^S9J^*}>ixwklHb2O=Nqn`Z{e)3%3 z^kbPEf3Oky;ns6TY4 zW}19^LwheVN4DJQdmBw4^LXLtY#$xt*!;$Azd8wR%Uh4?9}19*=}F6HsciRS9PXHW zt;X#urz2w?w>foYPMIGX8r=VasGzJ4?B_3ue4#2#C7q$lyr8(Y=ItGfe~=yh^c@4d zqR&5rHCc{)@`&AGpB@8MAlRZ2$<*s#@vMz?Lq=3TY%arO64Q(tZ`b*Laqp(wsH{-W8@H48e3X^FjMK_{N~^5-Hm9N9o!O;@ zaA>r?>p+7IVk~6sryHM;u^cqtPLMp?I$x+n674RAJ(728F!O2P0?FP9JTR|n+o$-V zR?*EIuf@rAWf*(bN%cj8`P@&2jg$|f*3%7^J5H??Q+H05%u=0nePRrhw|@lQ;~I@~ z)Hq0P0tXaxLU=;=Jn_h$l-zQe#<23}&QwtEE@IQ!mH2pQh>4SZm?o>Xva(h&u)y}x z9XVid@o{7F8X!65cl$ypRHcg7rrL20s3eio1nhTI6zxD2so`E*SDgGg1hKiS$*)TUst+^5V<3|CbsKpzn zbm*dfxB8N8BfV&(qK(}*s9eqYYi(y!D53k2Ch7n-l9wZYz9UFg(bnF7FKRjH_E-lvFNmJoQI!HMl%AqRa5cbzv={IVD1U>HasXJ<9))TK-Dc z74aMEN7>N$b%7luGlrB+s8K$Tw#Q3n&rL)l)xL{H`cU$xvgVkzk=LyvXYKe2hkV0M zX*V3Al)Dt{AM)~xs(Ly{I&5vlL01&&gd^f#f+5Ry zIh1eYcS}7C*rwbY?cBRV4q!d6bYlx2?+6zN0Fwioa6=!^0pJW>sok=4= zj8A}(9<+NB|JI4+w7{LLpyn$^#@?^vN4w__tl)E^JmIS15n@l{jj+ARalRxC(VO?o?&i4p?Dkx1Do+PmKcdOsDye>SjVRJ=|o~ML;4Q2qHtPov7Wx@wDUA#94ombm!?48X7_ssaU<^-#t+u zeVEmcffi-1UBToe4s~_;r|9816iGzmhujDJS@2>+{_+r0m?JfS(S_~x1ee={{$ES%~ zkMB{$4pwpg5}J*DExzbE%i4ry>xKVZ;1iV415+APXy*)N{GW%ko2ioPn+z913%1a? z09k+^^_n>uO+QhL_^F^SHTubL<*o{qm47k-q>Q#Hq@1oCK-GEXve8?N(;r!`U79E} z$jFCvDVbOAXc?fj`^v{2x_?V7;NZ$vOE(rg#*aSafvmK5Ifrzc(H!W&Uu%w)N$JHt z{d^+%vUL6JiYHCw%QZK(e$F?uE(XB>o5%W;BaQK#L*XZ|Cr6MPi1Nj@FhVP!7r!!S zk}8#zn_n0iX<#zc$zc?g%?4yRHRvyo>SeL5nTg;RZYaqWTCn9tbNr_Rrw&Q9v850& z>eMI0=%l0R-z3HJvaG`aKypyp*j;@O5j6X(>3?3)gFouj6fVlPE0EA>`0N7vSI^)` z<)S;DpM2PJ|7yBu_HxK_*zX;%UkJrz6IcAJ$X$M^cIQSDujz!>J_j^e^RGsA>viUs zbMq%-LDRU0Mn+Sufa;gh)R!0cO+Mkvg!!(tC^C2vT!O?Pg$x~ec4EeLZ>Mo2s^XNs z^cP5!>!($edG^OBbz`r82F_|ObR9VihIq`|$D9K+TwT z37j`Du1EjLalaF&T_LxWK;TGy^?5Gsj#P6OFHKOZ)ElN0qZ0l&-czjp7 zXGfE5O>yU?BxgK8cENNI{-ALJNxfaC@A#E3u^P=xl~5)56Xd7X)UOx8K7F-Y0me^* zzg8TzZ(d}N&Z8~fY1i$se)7)D#a#FnYb)<;dw?HWkl&?vpnQ8{b4tfd&9IaeYkF_y zT8iC50^7TW^U&RJbH=Gg#N}#fHo7Mi_)?+yryd+% zW$ULLgWF$kFW6o-22+rA|EMTq*;5?kt4SW6uh5kIafSX-;@z?T<7{a}I2Sf~fANki zi9yM`1Lv04W;AUP3~GLs9kd#KxFK@pMRtbK;{q2au&tw5=9R778HDBvE*iUD&sd@E zl85SrXz>v;ujuF2Yga$twN=k7f0Q36Kd|!@$q+L;>C^fvo4 z^%zRi`b!YfQ|rn4BfObSyL>3t$@~++Z&nRTr^4W<^QtY%q@VGB5G#4k{?f^ljjHgk z*v`h}hnE@ygV_w4^7jmgn#uZfAiE~uHPGHNlPL#Bm8Y0_SKsmmQX@99d<<8~jeMghK zR024tv7j#wmU(s9!WLDgES$Gv-ZL8Puz%(fIE-uMr2SMsZjad0>#U4tCvDJNkKoiXW$!h@_ z?YM|UzXk@Rs;`0aGy01=Q+~_Wz&Ytj`z3}c$k&H*f<;$E%8=~EKDg_bhbJCF+C# zn&hA(^9nQ0%9?S6;K$9gT~3onMw&EVF~8)B$Wy-W9I}4jZ;WV}Xv5z!m=thY!1YoK zq1;r#@~V;KTRcshjz?TL56HZNJ+cccd-+QCae1=8*XEdaAU%~ui4~h>k}31?_SlE@ zpKa7|_xJE@?U7)Xt!rS@qbOl)+1%e;dK|w!(A7hu)YeK3aqhO>kNZel;unf z^iPS!etruu*rW~S2-HY)XeVk>x4F}%U*ZjH#t!yhObs2RI`j#xb2=J0OYW~dt~Gz1 zbVOr`?H(sSnEq;3`Bv6aPV2z;2#MX9V@96>* z{@9atbT%2H>gwpSUw%KcL^F0){!4+@;br z9<+x*vT6qzT=9}*E<3gzrY#$F4NxMaFZc1ML!2LVdq?YwGd4GvnDE|_amdk6!MH5- zk1kRj6!-=C3HG(HLY{?aDWgR^t|g7)5_rY^@wL%oS}xVLfb&{Ei!_^bWh|RAmn3Gn z&)R~tKOiWXKJ=)d0J*xpL(2$RNSlN&>i$w>l2O9Zv z+oYG;aYNb3V2O+cSVBm*Bf<*#{jj~ZrPb+D^2=kxL!q93A=9JA~Ya zKrz@^80mR5~epYU5E+>xFs?x7K=?l`PRMv-B>05`*E}EL}!ZVPUJmYV#4hU4> zUYF_!-U%5pwTdRzcf~&kIBHpyFhAI4VczedeBq#-$tWxK5SkF#Vqkah;Sz}*wLBXV zkscBG!FR2kO+pIEW<>qnBu+p&hSKnZ>z(QKp{^CG&Inaqq!XjT+IO zgy+ohPA6%ocJoXqT=VuXTb)>8lAM zrA&F+N<3!lBDrf-tvsb$=OVS^#ivcjshAS?7^=bsJ(R^N%GwvpywlF;t0qd17#w(7 z9)1`gAsVb!c=|lyVEQ^9oek{cI$Ir-Osy{QSgHgAk? z`IcvBm-u6mt&SCsO5IKdIK@uNrBHB(ITaGa-Z*fWnL~6Ss ze{$??U5jR_Z*KaX_yRe~0*WCzgAdKmHrhWG?yMcGoIajHxGuI+EzE4m67aG4A*A$= zzY6IpNOBIG20gR9)WfCIBEXO49}w1DiA0df&vq`5x&&hd;=t(g4%B*2iKQquEe>7tRc!(UWY$O$p0r!wX&n6g5IN>^ zl{59Le?}@n@T#owS4Mof&Nx9uyInS%T_y&sN(;_)pw{XCx?7g!eqgg2t=wvw++n^wFPYvtydGD)y8XUP|-rJ706-+SU#iO&WHY&xzUB;RdJh>IiqMtQCWh42B zBC+qG7|<+G3wjkU^`L#p z4na!Mw}2zOfQ_&?Snrag$8_XZAkXpi;XdWR2OX(VKaJvkXzeP-+MV4RDlW8wX(T#M z@LiTJc#IxPh8{s2vw|!v!KuJDGwyURRJ9i!4n9-3(+Pc|_x4Q~cHIJ>6U7YCOT;-n zOjkB$JC`786gliagAn1%-mUbKSzxH^6wNs0V{-A`uJ#%FWtR>wIsFLtS_ye!Ug_Go z4|PN`j3Cqt4B;7OmLW^CQ{zH)g2>Zpa%&okCh{iA+0HqXZFATD#Sl2VQZ>v{=+{AE zmslVqXz5k>)39YOy%E-$*|fwTJ1V`EYf&9E>!h6S_ZNeLmfL4BI=!>2%5yID0%faQ zNgVXuX2r%>G7U9Y(++Q`TD~DGGUNnaN)#1i_W%>OJojNK3R4FU5)U4;Sb-pkS@DUiH7AFg z_fCq=l&1ta$iDCrnc%TZsu0@vrApIFsEVobZ6xcCrsL%q600$Pv*eN#PAyyAXP|?e zN#1d$Z+|?#f1BkRXuYh_TZiAJEf(wIXg1f9_Bl1WDhy=2)I~^!+=4rfI&&WOt(DfQ z^DgyN8O;H-cT+jBtdlTp-SVWuP;|I99TE4y;Y3KVprZHk&W>gD`d#+tFdV#lBqxkY z!C~z#+nkl!87hPZ^egRD)4mwpp71=Kn&y_8THl`S$6=~WaX&Z`BW%xg#ihX0DQ_~G zN<}G6=thT@6U`&s)@reQ6M8|Yqu zS!f95ps1MTqFo^*Es`s)L{8Kgk>tyJJQP;yMY#}b<}WJtd8zboUvGvFKx0XkCHgzE zsW+Pn79!ecw%5Tg2wu(&eKaO{`{bO?%6OF+I&`>5wrCjz*liME`|8TWG+sC_4da{e zl)d`6r04Oie_yg*-&-o#|BA~<3CmP+;bQ#x>U^Oxcx=S_Oba~oD|YQZA3ynXUsVYA z#<~9Ma26vK;Rb&}(bfJO$$Bs*P1T@v(I_FY=eG#1ER|C#sHxKH?5R9j6tuF6%wA#8TRe=F{DsG7p-{ z8>P~}&UrR7-@av&sPL-_wM($h+ePq@SG?D+e-{t7f7*ON(H%Jv_;jAgS+cWS__IdT zdVc`MkCA8g^-2_ujNAqcf$vXHo9%nq^Filh^iD=|yY(^7ifA7_4uTkF)5doo`c~Xe zf2OYwmujCkA6lxt{;Y%hi|<2>;tpBi?e;pp7zEbR+ZN>m*(KhJrPM58XZ8W#YB?V+ z0pzlgVpDBRoBkQjZJHgXFsE;__5@VwD+@2$p&|D6y9I6EYt$WwbPv#KoBX0kux^v= z(f^FMXMRrd>@{#gR&i+^7z9^b;S2Roh(OSnPs3xhC(ZiottzbrXB5%C=(J1$xE*)e z%$R3-^C7hEck*l0&2~I8CO!lSuY}Anbs$CB1(BA5ux5ZsP^i5Gc;El^gJb}9x1xkN9!0npVn6PU#88WXC8&q`D zXGbLe6c?v8l8>-FqUevoGh5KOdfTFY^=Y1FboaO!N1^ zUM`EscAF~qn@3iEUAp3uhYwxelRnMjIQRlCUo2I_G3;Vs2a;9@&t#mY>Y-Y+XNnR1+WS zGLIUjN{Jyhk9Jik?5w%$^|~u0+6>wTqpL2JW4=($+U0xSj7e2@p41mz`p_iDvcZ{| zSa4mIkY^Tot9=PqG@h3^p<8rzm8(85%C$J~(!)KCs^78tQUl1YiQG9C2rQpzJtU_g z&Q+6<$>v9F=`rRzH_;2#`fT~x#mR^x9L8jwO1LBmFr2D8oeF*$&-xnk=;c%A^SAy` zSF=~Zc7ZSmklzA+W@2A4!?MagI#_g#HRJ_u4{oLf{(AJ~GKW=`a5{w%llv=M z#?*uqwiaOy0+Eg>p{j?>9eW033T6lRaTOt*3Q|nyNj_w=4l-m7mCgKO?qr|i zk=9g9Om3=LNwZ>769K}r1-;-&J;`W`!KIE<;WAw{Y+(tb8{CJWTYx)+y)G-o*z{2^bM)x@H|rK| zt4;YY)RM6yfn5aqRZgvVpzuLZOGwVfOj;vsi-Qil_#hvPqi&BP@xnvzsEs5|ip%^n%_ zH_22VL@pC_sv>!OQ4#zbTLa;ygy&wb0GOF_+@s~fs&{ahu9F;MU0Ll z4<2H2;DaEUUnU?pf9Th(OJ6U?xp3$2r zTw3}z^>=&t9`(^;4n?S6N;rMm zkmxNqLAEYk#@tfJhqPT_t=HT1B(g71&wA|apgPOzWeFZ8BnW-gUq2;-tCbkPrO+Jp znr0hkj^`6I={pmx%-^LtH`2~aaF&+bhbvCf&?e)J|nH!i!|czAj~4Ss~ZeBF;3C!zo{~4)>N7XuOLt(%dv~sBjk9 zrAR^@ed$m0#w(Ca(}8#3)r(I1ku&8rFOD5}_tLiJPpW%@EuvYBZoLN@cn&l9wF2$> zvzTGvG_&}Ao@zW$(;e?!OB;=ep^KeGQm?z)YgIZ!m}tscn47>)C#TceiQ{(CKz%sR z;xNvmUcY7gKutU(k4n0Uq#QHu=w}KRt(_xrB;}i9vfM&ivU-!0FDE|IZ2j%Eu`<~3 z!ZHL)70jh@nbuCTuJ*NN7x>C)nmNSRuB-2? z%m2kxJi?T^HX;0dir1E?WXq;hbtP%6%i#c<*ds2o!(lYVTcD-OA%gdE(q++SQ`z9E z$S=@@jwJY0Ci1(n=F777C+%2U{P4;aJn~9#j;nMCW=J08YOs2T*O5GjHEoT@=!W%~ z>8trZxVWw<8(m!EdUPS!VP4Z#Tm(NHS}N>afX)X>O$oo8QD>O@$+K2)$!C~s6E94B z)P?BC!onRa2xdl(UPMO9Fss30mR^Td1o|vzNb0qWGlZ>im+dSkGVz|9G7rq&CQ1A# zS~O>vD234ne)fG}zVs{UfN$kX`u@w(+LwICJR*GfN{4;}+z%95QzHjdz1ewqN$hz> zRB1(Hq(qnYDS}7M7#rcD2dMiUA*4@Ab0ZDvnm?(<&?=Ftcsm=t)W7=iG82OmyHjq? ze)Yxv+PdozzJqap8{*bg4z~=ulf-_w*A@Cv=R6N=rnD&{p-3#T6qkZHKSxUdZzx&M zZLpiM+RW1P(%84K$3LqSTnx2QItEL__M#+B=A5+5c=81YD2HP7?hHQeV2CSphtj^k zBi!ptvMk!eN9mieT;H)kF}vYk5qrFkGhbT~^%S!UCy$$`FL7{Ic^{%l53$gRZPxfc zu|{9jA1UQm7I<53sXZ>dli$8xG|5qdCS5VLtZ-mmk|Iqlideo1^_FKS_(}V@Snwd{ zZu!sdcg@T}jrqutHj)Fjjw|yOgNU+%<`{*VhP1Q$uX;r9m>R!#;K_d?rr!w_!Q_eDoBt5@5!g|ZiG<6# z5+L}4-=X&&uEM-d*ZMI61<8lUQ?kp{o-+mU6|u36ueIAJ#DgbPmmnub=O@p<@l`K5|JYMOeba zVLBl(X3X%6JcKOl>FMhfphNUvWt7VA27)=;)cVDjbbU?Es}$-K-66b+(TW}kbgwEWLdDSx z$ruhXd)?csvJ+a!773=!I}F-HCUZ^j^;P&cOQi-jTrA{pGG^M>u zZ@1n}=L*kWPUtRiw$q30_P;#dIFUvlHM!ClDJNC8bHe6MR_9!2e;Hq@x`@i<+D*p| zn~Hn-@&vqL?C3qymcb>#GLau<_%=_{5Zz3mF#ORTpQqY8JW_2HJDlYNLKAz5hkLC- zDQKCtrxp7B*m-qEFClYNeWDArfkB>uF3!A+)#2Xy(~Qcdt>J>j9ziNh8(iD2^u8Xh z#Bc*W7=oMF>1BVa;UX22Z4!#~Gg}~A!91H{hPUE_Ijx{pbr#P1*}y`1%Is4m8H)g- z!~lbogkl{Yk7lOBc!@89*kr{YiQU6ZN=gPVMOw;o&J4NQ5W+~-sl+6j*kwM1-hGQ_*2%j*X8EbvR1Rbj(jpZo2f-|>7 z3BUK^A-dp(Omdw94Q64v;Q5j14?8w>@x7pSyvd&Nj1$xZCO}C(NN=jIol;6JU?n7e#5WAmtUMz8Q}S+IAZ%2T(NE-5 zwgq36HhSul?^v(qr8MHv!7Idl1I>f1IMxEI_qOO|bc>C+G6qijcQf%{$MW(6wGY6QQoughcNou%hDq7uXp*Uzd(mQx!27!k!Wn^PG`M6V+ z68lXq<8(C6RSp(~`vM1_#hAo9WNsY@s!uUq6+J0P=!xu-ow<-uEOe}Jru`C-Nal-? z`H<}Gv;EAfgcYiZi5BK|SgjP5?TT#lewouu(ALk*I;=bn579i8_|tFq)HwUYY!(5{ zyH05LvpL%z2DiidG7lTKkP`51neY{1xZk2V-W{W6?t96}^pZWy4Og;InZK>3D(t+MfibSJiC0@lKm<#^z9>V49YzJW9y;VIWJt%eJiUaqFi~#{&Kdk7u_x!R@vW zF8V+74cji22~yWSiFa7Jk8><~hG3r*Nr{7pGYLq>rqG`XAIya35(&;7KLxc8dSIT1 z_A}AdVnldlN6ARQ{ckQK^3gbCp~E^Uc)5jQC{0&X-i?>2aiJ#jLqqe^J};7lz7snV znR4Er9n#YAt~!$W2&0G>(tO!QUIkw8okkA$-dasXOXDDXH90Y4j4kM{RI}#$p$oiTG=vS_?Esf=3CF^t z2BOP+@Z*r2_x1-D?76Lwm*ABS;3mK$k=Pv90PE}Jg^Tl1+2bWwa~1^k)vFLIb5aC5 zEFntDX<5=FC_r~)XRnq$qbG4zz*LR6=A#uat_{B|$L44oIA4TChYS?J>yd3w6RyNe zrUvQJgTdpdPFdlF=SZT-mY{N9e*$8&jY-d~$~oWqo#cYmB#u-m`X`zk;p-eV)*m>> zzK=W!%5h)edlphzzq1WGj~UfPaQ#WYywTfrEo#%kINQZGp16Wx+HGEmmEVZ8n_hLo zGgi)aeU=wqUIW!3Q9>2;2=*x{f8irE*a;Ilv?2y1^IVJwB5cZ)!3}Y+^c)9s$*YlC$L=Qwy)7< zL)v#ZD3CAPD{^EPi#`s)e3pI==&mW3vp?dvpM{VG1{`Q=Ot?z< z!Pa%*KElrr6kT15H6A9yzUZ&uRTKxmb;mIUN&zjVPyJ?7jl8< zRiQ~#+DZNDH@tIsDeEh^tlXV?K;9fsBIj}Tnvim5FOA*1KU7BdmWSuC@WwTODby%K z66iV=jPHP2<5Y zAmHaErtlPP*nZbOhNQ?zk)aG@MX9+=n0Q+ z?LO2#j%lS+jx_kx%E*(NP65%jviW4Oq$x@MI_-U!aIg11 zDa)WHbPe#jfIVCgcJQJ{59pxt9bFAEP!dBZNq9A`fzYsuBXiFldS8+-db3O9uvdIn z=b%Su0ruh$92D)ND#U#`4rG?dO5*#0OA~YR>_M}PEXK2E4{+{w(im=TElA)@qOK3n z9$u9b=zpIm_JA?Ul;=tDy*tlj=>6Pb`ZHy42!%lERgaxH4sm9r6TH(U0t_w)f^|BYg-Z8n3yl!<0%>+SU74{2LfTe8vlJv*V=&BzG;|0CgF~ zgj1ckw@#>|lXt;$M@a>3-F&vMtEE{Qi4^uasa`|YVscuqXXB1nPU`wyip`|XOI5W7 zQ^%q16nPA`0chwN&h#}_{P<`aOk%_Q$)=EbwraiC@2|C(x8KAcjY1|Y?1Yr{1&b_g z*U!-^O6?w%WExCrug_Rj%8&AhKI8u!5*5YZrUYj6GY*fm{d8WmS+pa5ZA#XRqTMz} zNAWoc@tfzJy&|CPVDaHNQ80jYV@Sm<6^D_{(d{Cz%-TXP0n)e+{C#QGTh6Kc6Afm4%uWy9p#}1^dH;e@ z{^d}NckHflBsgH8-*G#L^ujtyx@@?cy5aS~T2$bDpR--YOVNxMW9uMHN&q5ERf5o8 zF~q;!jxN|vCnoB|4Wfq~zt}MdFec3)EX(dDpRvTM+PGZ*f4n5Xe%Go@TKSZ5fe zoo8L5yY!G_Cv3=Vbq0q`vu~Ur62*yaPHVfStex{@jUAHGi;rb@vNR(NgYU>tXjvZP}a}o`b`o_a^f5rcPugIu$=9-(1Sge;{DiD$^805-a z#at!Uqnfz%Nmn-!fa{tm{h`2P>?Qyvby?y$EVghp@p_Ydj0WSS-eNJM(iEgO4&-yXs6&%sZU1ZI@>Z-K+fC>6k`J`-qTdb7qN+2!)q(x;d&+ zBP5|joLQF2HUk*pg?(|)AI3##E~;ZLO8ARQAd?ZqaH+sEUKFLjzWBCgZBk3!O`m)> z4Iv?3!4~r+cY2=|9z6pq z+q|rw3vUp%TQs>fqi)1H(^NWh(PPWYaf#CF01VE+bHGmp-3JDMc1^JGI!eXDI8D@$zwO7}z95&K@s*?I-O*-=K(D|_59ih|X8Y@> zGzr(9#}9C55=8s7#L;(3BV9Om0oruhxcO+Vs2b82EY}n%( zIjyA|@_b~k`BfZ@!!g@QkBgcl#!KMAjY($(j?IF{niIq8p3XL3fc+_(8rEs`qmS=R zkIQp7Uq;`j*veC88g$tb~bEA-x-PDnd|?;FDup1qJ+_qJy3U zG(AqYuBVo?;u7UD`{_v1Jhv@I!p>wQlv|iF}GJi18&cZeJmHo>$yX}`UKWhlhB$-9!7s&iBh(= zU5H0|I?r>G4If0P$Wb`nIHG`;NtK1`@utNva6QjvOsCIN`}l0RtXz{lQKRZGp{ag? z%aFoj0une&r zK}zdWg$K9HfJaIf<41H`qYZf_Z!ATL&hl~OENQ)_RC_61@^kOe&R23b{U~G?($a@( zJHt>HqQt6#S;-PYu+ zMpkG})R&~TP(z>+IHh3f2kDI;sFx~b?Fz`vzsNiCzpj4FBQ9;mfx}>F&EWrZF?$&{_q%&3E<7qb4fe$vIh`i+jcl0B#;B#Na@1PHfr^>(|&VT&@_%VJ+Txzw0 zy_uJQHxG3K8vm=4n;%6|K3tB;?#tD`d`I_IRMWMdm!p`_T0K7i6t`9DtlghDC6#EK zZ(LISwbR^0+Tk66b>`4OvJiXM1ZOXOyH{CIg)zKGS|L^r|4X!uE389oxP52)%hWK1?vgr;N>o}0MAKM``XrlQE>k-Wg09dd@OY07JEwA|?)mT;d_$?)T2 z!8}*SQf?mGtyeM~S1;8WHTHUJ=}Mjjmjoq666wg>934p8y8GJCL9RX$46r^=&z_9$ z9dA>o4I`f}3%J%2uy!&xB7W1_%Pqq6Rq(3`#5Ie*n%gN*zs*}b=lcg4EwX{+enoHn!|WLf^#Oq(mn!TfhRw$Jxo&NCkr za6=PEVD4}LOnfLLLzz^XfhRleg^9@tP*Kxt zq{Rd|o5Qw42-y(=ocQ#(mw-H~mq2!oZt5J?qMbhUey~P9qbL15FT^}5?3Q>iTjfFD zT`?y;gZyZ#I`-X&ql&l+XxjvNR2wPd{l=2DvNv}M6vNz)sN&+2GS~JPhc^>$^&1;) zlH}?+rPj2Vj*_r&URP;SsbQ_0O++8tqjfx!gF}71?cvEbv$9pCo*EvaJ9ns;akwsF zO?H~RCy>@z5tU!K=C;tpr!SdqpvB*dpuEZ}dL>0$o3JCBu=3^LhvknR(A(n79uC5F zZn{<##M5z^EBlm%`}0>g=cbh~Ql|n=coStAMuMINQaw-Kp00NF-E^)esF5tN5hRNz zpK$Gq{!|UI>RK96p;-91QYVgBGsxB>Yz{kPtzpjAX%)5ScdGOVh**DA{=BNA@H7oV zd>2uEwD&}CIFLkH={a5QZXepj@CX>aHk$c(dyYZAuHZA{@1QdF5u7Inp8&(S^vojc zJQ6I?6H_4arZ)HR^9GRfKKT3KA1*gUar#g0Vrv-%ble>6fLyP)WY0@FDKo^By&mbt zHNq#@6YeRlnWDkG2!_QL_6ru9>8ovQBu8pT@o6tvQnv9jr_^g)8*&f4&`_c zF|deUdqH*BC&lsid?E17VufQJdahAn9^tkDuPw1Vo3`&Nc5yA4 znQFJ8sA@1AhtTA+B55~^{&X8B%lU}C7gG(auo+QkE(OhW*%~f@Nc2zu;R6n{gSYT` zPLp1}xeOEFyLUZ|d0s2OQjazqojFat6WTJ|qVAe^uXDS_Ttg)v z1M5eBcGKNMVmmu|b7jx9hckTD&(E|^!rfS^TA`q^_a|MRa&Kv#tWzp zAOoU$gUrnqB*UUl9qm)qSA96MQ8>sz_h+B=Cm)#7Ju{E@n8H}cvRgdATa@R6IY-Og zprc(fvs){aYcsX?;1&S8wvB=!4j)t0N6g|DdY^a}YOx+;QXX8etBEHsm#DD0)3~H= zJuhAsn!m!3U;3o8bY|w|A098=1<7J~EdU&kXknH8gM;@_LXBY>l&!bnZzunCFO!=Q z4+#QBUVs4)woBKq+yn|=fVFX7L&D}#Td7<73my1ZE#rz@^75>8I2!4RKV6qTE$`wz z1$hw}em-1EB}3mpIs&`WfwRr0dvCJC-*Ob0QpS(i8S$Rxu6B7CuimF`>n&~%Ppjg8 z=PDib&b(eXql!P)Rl2#J0Ag?NEPZFKo+v*-y$p-6LdOoe_F!E{oIYlE%&+X&GFY4& z&`T5p9ek`aHk4?YI*8px$AdQ)@#9|K#iDVcJ+r9iDkB^ZRzrGv=WNW97xq-VDhl1u8op|lp(J(LgyS;h(!})x=A7N4P%u@IkL|VkV18RQ05kLIU@+_&*=R@%cyGXM zgTJSfYr3=D2XzD%Y@2((039v%K0mK@m{nK_4*rUGBXf7&bu$HsV&bTO3O4ou790YE zL>osFLNAgJ&M!^uF{NxKCy?jSKox!3i5gG*_6chvHEIlxVl)Qo1d(aj3><^a&nxZB z^d8Vup~gnLsq{n&E4)dA!YrL2uI$*6)K-bww6Oc67)

IGa6$E!-ienk~S_=Jj&c z3~LK{#@Le*!v~l03fiQ|_-|f%AKh~OnaJ+Lcy9jip)#L-KUp2kbAl`VEz8P@@r4LK zS?#Iu^Vi~Z1|EtHH;}1XA+3;kY1w|moy>PeArB5_v{P55Y&X1YZcByH7_kATlJJ0N zK_u&EC^9k%8=?=_qK@y1ay%O{m7=~`6kTrv8QXv-Y-y&CXG0Bq>03lp_`Mve%t*6? zgzhC$n%Z&f#-EhmpwwlgbQjzyuqv$V%yw}}4F_y$jl6Z@wjy30%&p*3h0oq|V@J~G z@49{YnMmmu$)aZ|NI>ESTHM)1Yvh{!3DDm#mjOtM+b{pUj_{qEb>~*zI zrxvyn$+M96xAEu9N`z{aHQ9=zORj=@5;mL9M5WK}qx_Klj#(ag>bugRH9{Y!4OhL; zQS|voF>(-Rl8+tHkNapso;~cOzI2(II<8*I4;x_Zo^GQdc^Yy7(cXTXN+K$6)TA#u z`{<@jAw9K8iZ*k~ysQopI@3=*;)QW^9;`otubGazpR16&)SjuWX?b&b-d5KN9&Mtq zlN|NHLBUhZ_W4KG#UoN!P`!=gn0phX)SxyC_4r%aS>Gk(nY7G8`KZex_c8;A4!4Lv zH2MB*)3Yj-$F4Xy&+y2bMS&F&*5I(ugM|XVw%O8^R(sR=M60g_)|u0xukf$?-_Um8 zVumn6{Sj@Sx9OKnaQoIZWZ?S{DK3ftWbtZ&FU1UtRo}i6{aZa=!$r{K} z^wWO{bbn$Lr;l0mb&if;sY4>gO=9<{VR#*ORb_wOb@Vr{l^_(iC;PpLhg@43>VDM& z1A8nMKA@{6Vlx4meqG860%qk`!Q_6O^`9jGhdp!SkG2{jnWLd7?Sl42gAL87kSi54 z40j$}u@)_J$J--|8Xtc!1p;|;w*g)b%&tY@ek@ZcdnDyTk2KsdY-iDPC*zZ}6?2O6 z*|_ri#2GCrhZ0b4G)?sTc;O^!$(3vi_T;QY=hd~|Y1X0GRM%XK_BRW7gq&$o;I?Oc;{gcqRFobj~k2U%_GV|;{GN6SHXJAHxUPjAu z`EC%AvI94>Kba()qMfU;0i?M}N+Ok!mha!*i{?6yM-w31=bnN~%9f+;eHcw0Np!q) z>$vQ)Ud7A3$$Zw{NAUIQCiT}Dcr%U>L;{8)CZ6x_Z*O))TIsu^Nx%8=OO)t&`bllg zC`KLalq}S_ZBFlddd}CISY=Zc>te$q%4Wx!8@kWfY*LHso6k-}g|ltK9QM|auU~t( zESFRGzAAp+qa}V`mT~XWvyL1d5^SZi4RDEjV=B_J&wqvn`QZHXc|9=lkTu{53G*{> z>QQy)cKy&v$>!t=FjTe1CsX)dZu6^EmFG7ggO3ExBkJMN5^&z{AZR`MMmsTJSkNY(qrARESuY8?7f*rYS?WBm$q(K>(ncV=yx!Q}L+lFf766?CVXjid2-()fg zAFVya0G64*!VP#H7+w{{A#ahbqao1uuL;eil0TF zqp!JjuC|`_D1zf?R9Tex@d6v7BU4-PGgg2`PS&J%AndJ=`L3n@u6vWP57C)GZB_t- z5VwoVv=Z%;-c!n##FKaG&t$`&Jd?Vjw@Bl_A+9qbPK0toM!+{xgLE95z<56FgRWKf zgZiT!E2VKuLAcQi*W2x8EP4&D=27@1l z4z2(oH1Y0dyjkq#>fwvm)f234#rj_X^x*^#!XstmwcT06uvR*X-6pPVhsmw%>dKV; z&8_h??L`+2+EnUxQ$tB*?c7dwCQY`@XMi&hH|9E8e87*zhRP9$NkcFpckk+sxa*$L zTXRiARah*rdMt4zh#=q+A{; zbtLjoZFaJrh<|A-kQ|Osbc%)gqAd=2W8cnxwX1nKOF`K{ag@lq-!)SAva86O4i`av zWQwFmXlgoM_vmg`R{YrUvDjczQ6OUgYtA#}aY!+ZQ&qDd2*|dHBH9gxS2U;MPa!25 zPq7OkV|-`~?l)$iDMh&nrRp-Rswjp8*z=JqgIufBZ2!)~)P7XkCHVW01)16?(|jEref zr0xIWDx?wNM0^MDo8pQzjYHu^$O4AD8EXUSPO0iq^m=R87yA7hiot*@q8K_L2YK%) zl67wO+J@J3_!oohg{z*MCWP2i7FR<}p|i)IOGA3KZi@M>JTP=d2_x0hko0h-nB62L z8CTn@Vt2=8aMS4I$CI4(h^fh%I=0)bnL&p|YH1%`_2L347<^hk__c#eQiENQDCumZ z6mwP31O7Wx(|S{rZF7r6_{BB$0pECx?qL`z^h-X@Wc7KPNm4G(hNx(ueKe1=_1H&u zewJ`@z3x)gZqbo`cOSo&(5>mX$0iR%ilgy5-rI`?VQGFw@t!BuT|?a*&Kj-3g&&p- zWk;k5sVWK#kV&6cT?xoj4we1}q5K>4(v(TqHA|@ zp6BVbUrxmr#U^}_g*3KJe_#&}3)ALU94rWHh`=A;zlt}kb=y;r?Gu1V?{Wv0 z5?+?vJ(DfozDM@{QhoAD6^M84Cco`a3I&lNQ%KT;h+(ZWOQEJgqx zcH#=T9E?*2EHpe4DVL&e=Bt@u(>Q&LGMJVW_jD&v^XUi18UVJLle%dPT?|qW+#RTY|QvTyzfvTL6Y-1#H)I6LvD)gt>JC$=^3eg z4JY<(YYO=Ei#|+{=`>6Fgq(LU+eG_oeIIP3qW3(62-&srXg1%YLOxYygv)Q#MSRfQ znM#sF7pv*+F@ueeR8BJ`)(zPWQOw=5CNRFJ5aBDIYsTkE8Izq1pC?ZS70Z@Qw%vR8 zgu7|>#%S|O(qdv0OH7M_P+S@2a!Kl`%Qyu0PS0)m$EGkN-k&XMY>_1L#j#X43(mBg z;>7w(-xtw{BT;3$qpSg}v6cQb!TmpC?f%5qX;F9Agr`JiO3nCu87^hkko^$-@q2vyqdPq_9d=w}QO@38KSBMsfs4 z@MjLym%N>rbSZ98>aKv?5h1%)_MDnNGS0hI{1SjlxSUwW_=((9rb@S(hcTXrr1Mz! zSRv_iWJJ`KzAwqiQdafVI2uTVC^j4%;-#}X!!wvZ#2JO^XeN`6Kty!jCUw2L5zyzg z;)ATQNsMiB%ALeRHrCv(sfusH>N}=iYdm+o z;j=AOTiYn(jDqQ&kDHM$@iL4=i^+j$<{VWFFPy{Qneu-jZ|n=Iqa5b1wSDkyzPPsk zL;O`?lX%A{<{5^mtcS&XIL2S@_v|#ZXDLgU##K4KuL8=B?DqpBA2m+|Re!V=dEV+g zZ~b^8Pc-^z1s8sBY}7c3A7YP$MR?JrJw*!*49wCkbJuPNfs}=;=nzzPIeOYqxFc}! zP87ORCH+&8OIo0ctp!cgrjs8z0IA!-wh<}Mh5HKdpG7=>9FJ_Ilx|wo2=- zP3zM{XpaHV9FvQHZ+9Uf^#r1n2+Jl-KWya7Y>3UO`_|Pdos)gt9V-THQ*rZ}s1Cs| zn9cYLIP}nyJTxuh>=xu(;CE15vhH_KjP2$G>y*1C3<;S7H*sG@@qa;zr6Zq{?z*nM znX+~#R&=L+J9aPn_=YUYy%*-U02fic>(@LLUY=b=cl*(l40GiBkkW+aP1Y84PZ=8Y zu)G}C%2457f_Exil~V8Miof~VuRJa6Q?)303#0_x@Et_vBk~PRj0|Xo*z6VsEfHJC zgB@#On|o{>?@#)tICfeJdA6HVjbZl@v&|A1D23e;5BByi0(E8Sd{Xlx3+^3=OGN!c z`627L7;yncQSXTLhe-;_Eu&D3NaEeRIrI4RY#)wq0C1G^P}?+ROMKMTeOdNK+@qx2 zEcO>NO|QjlM_JN-2QKo)39eu07x%A;WZ>=kT*Mg3KEdySFW5nt>8$CM;V5hEYyw~; zu02doWZAyJ4@FC|G~ey|)JWqzkdgL6*b&Ery;&TiKcN|YqvY&zO0j4YSWvsp^G@Y< z+;mm@)A_WRh7^*7Hf5jt-ZUG#lhpjx#82*EOz*vEK9Sy`dty2JQs0$SulKkzzg#q| zZT3+cDTWt%UoWmYlI0&tpBge>Ybv|pw5lNLt96}RX4BONQaT888KEP!KNNlL;6m7Y&=tJ8D`;) z6k8K0t*n4Wqa z*K8*mlbjC&mlwWuNhnY6iRb2Wf&Y*fDHrm>omLn(GorM6O-q^1T1e}{6tg!XMW*jXO488 zeumA*8c`FZN;f1=nhC19gj5G{cJsp=u{LyCr!-Rphp^`#K9aU2B(gj&ijyA2WF8$I zV#!mrHGY1vbI+6ZJ9PY|ln=)CAGPJPXSk4-4PTxWw@a+}BC0^9qr~0D-#LO$*h8euwf*QhGiSzT;@1vKORZ*(4N3Bz8 zJ|96C()We?vH_Pb<}F6RguWBtN00IhelWmML(JJSGBV+GLs2x6D2A>0=?h0ZcXDhu zaKdZb12SlKh@&ohsH&VC(4SgVH01t%6i6_9xUI}}Zd&L}-0=ELd3vr;s_2aGU_1vB z2)q*Az9gU5_hiQ^Ey;epkv?E|_G0NJ-AeTx6pj+hI*-vtJdWzl(>vMkJPHnTYc7_h zx{Ij%4$4!<5gh@{^8vF2emrZhtqrdqSe3~X(56ht?>!R5ADdq4CZ^A^yVhN8Yh*@) zchJSUe{W{KxC};zG~6YIOEk7sCc)7GWT~z$DSF4xWf^sh_2Nn4FvBG& zTg-XzX4Nj=d{7B<2udIRW@*@Baz%flPb?#PYk~I)gQQzK_FFk4j1+8N3`vQfs%#`R zU_Nd(!~~>ba1aVJ<3Wa&Bkz~T+B4c$KsC`aJq!^qE^CK2v_C;48y*RszbmW1-Z`(k zbES>TGPaLHX`CeL zf{L*~|CY2dUD7d=y@tt8Mcow??W9X}m(G*xuKDmFu8l%{uEHw;^TE-G9P6TPQm(13 zr#|hsM;v`O{QGlHl!(F!aB(JbGBQTKa=;P<9LJiE>_=RKMz(!!(WuJO%Q0w-0syS- zug>T!;kfITNF}zTHulwX;>QD`LKzcQBG=vtQn`l9T`Md5a%CPWu=+9m<+-9juH=n( zDG~lqU2GC%6&^7*vfPhkYxju+d`1iX1!^Bj>>moDgKXC{if|BZiAOqG1nh34bq^M z=D<-=1Uyy>mDMS=W&%A`96I?=`8v?!hyb*Yoy1Ni5K+7|2og3JaCLm_c86d*qX&+^ z$LkdFpjtO*A%wyHuoVcjzi(EIAI_ zn@hPWs!8uEEF22b*Cv*dtWPt)}! zzAS%C#|N9aV?nKk=%dk;wFcDxCJhn)b&V0c5_-p{)y3?t9e^#1P~q;DejKUZ_K1K- zS0NtmI6G>mFv}q?!}`l~y4Lz@&K8ab6XO*09{?-a_B9i$8Jyj=0N0~wk*^#Jx6ItF z@d8F2=I<{6NXmk=?6(tb$^|NSo~gKPn(BLaOV4sp$+Fta*42zfG)1JMEZN~4Q#R9nC(}cyS%-0L$ff!gcB4wtt7x8y zX{iyD+FJJPG$^&BQ*TDrj*$B@ATe(fsv@ljQBM`mpM3{S#BE?^KC8nVH0YK-dz=?s z?Z{(!_NEE#llq}>)ul+mzm(|ova)>h)hpen)m6Ml*@NT-;$>p@0TGY+edrG}>#s1r z7cnpYtw}{RQTv8xiz*>$2I?ffp!8U=fNj&s3DIolYq{&* z=j?W%_iW)94Vh_)8iKD#+yF-20&mJ+2LNE|-;iXz9i%~VGu&T1uE|CMua12E`0|Fv zuHQ@Vdo*ty_`9|BV%Ga8B?{b2)w+lhS_+?jp!9jNOcn-r#7Ek2(>H&S42lCEa}=ai z7y|3ZOEQ}AM_(+2RR6;fbboF>{&)XXdw$Dx4*s%3{FPd)(&dQEt|?|wnHt`+ z({r|IBVO93$BZ;C#u_SU7m7r&@1U()=-7slv=T^ZI`H6BzJq4zQPz;sv|kriC74ps zUi3g1+EWgAtS}(-{}b+$CGPV*iMB8veyjYQEtdL~*!trRz&~E%zjH<#VI`SBd6j>! zDR;TAukw-$2`((7U7M>ZBFAGt(51tAYwP4DJ*B89Av;lMfnZm2<7cvhdyrX7l+6OG zw23)3XCLc6@YYKSJAsNKAuB+~%|5KfU;X0r9hBfHvGWqmKf5V^5A6%=aM$4=htI6t z=*PKMQau4N)h7x37f9zLvEL8b`Ct%m9-0m5t4TcumM&BhpZRxAj$_bB@Pc%Cg7F#S z)c%e*_++*I_*;5kFxrdz{DA!%`OC;mI_@8;l~5i0=a#QfD9h>7*={tol`u0$Kmo~v;)!MU&IXTxEC zvsm;1-7;9eGNX7l2Z;cWCAy=|I)TAMh)AE5`{e!4w`G}iwN160luPmb!hX?xDz0}D zOMlg2Ju$AO`&#nv&ZD(<1H$U1(0wx_;Bvs}LFEmkJ)puSeM`Gl^XMx6UqdzN_b~ok z;#KnKf5;&Jf0>Ux=mFTziJUWocBcpuOWhJi$7)@5cV~Ba=S=@BZ)f8mKj&N8-t(5l zR26G=f(82MZLiPS-!Lv#FMq5O{;$$GV`{OlEMBljX#qGd+XC&f%#L;!r{kzwXsdDxdU|tJL;{7>h0Fqq4xZx?0SuUFWV6Rh z5>46beO1Ay^{OXP`#q!wLPrEqziz=cIqA_pob@|hkU+48Z}Zuu?EUnWMD|t3KW~ib zNdGEXJpU~C2pibs@8j3}Hv8utiBF}llihM4LNY6w#8>;6a1$@J7nWjG^r8OGI}l@Q z@IKuBJIGHJ#d2D*4IU$vNCu1c8$SAnJLskXiIt{FG%6dZd}ui(@rey0BJP=17xd?i z^S}&9Utq=giQ;bhdS4~PNDb}cvoGm;?av!$I5L1-pmsdlONC1hrvkc(=K5b{1ylXe zOYit;scZizEALR^E%@HYl27VbF%6i}w%=+5=JLXFRrWQ*TQ9xVV1m!C-y<9v&7HI! z(a07oM?8eAC9-`7-O^zz%i!q*R@S($n{F(B+*$fY^zg+;9vov;j2?b`wU6vMr&=Gn z71E%17ut-(_u>DHuJdo{KmYpg-_{HNhxZGWv{yLnNn)brz>Ax=-)Q8M9%gO5Pq z?rcd0#0HpCv-w=4=Ag--X8k)S2Ti7LtX&?(QTpWd;2i;NfDoeSwZMnBLI|49s`g$0J!7q1)cp96Mz4cITLj3o{J zuPXl4QU4lI|C$#U;s+2q{}BQ5mV+wR%5ZDE-I3AO;Cm9y`ln+4!sl#Q}vQ=8$qEB6Ty z%dLZ5`WK}WtNiS9!q1ZbRmHzL>VMFPiurqn{5>zshQ5RTo*2JLn|@$sXpRd={G1s- zDV@sni)rQ?qxy52{iMqBpm+WuliZQK;*Tl%_ssm6u=H2vvOFn3z34h)%KoX6{G@C( zNlXAmqNvyg@>7xcNtHSMf5=4ltEQh6P*bTMhuJyoqCvos7J%URMV1vn0scDAexwBs zp8#~GU!<+hh5Yhs&jmJPfMaO^73eoP(nIa{hf@Z2r0CT~t=|yM{k2v-&To>_6YK|C(O@r=RP8?D70iy?=}p zfGW`YF;MC{FGko89s3tG{DTkn&BTlG^&`_y>i>Ku#*267Z^6L)OD5=){!=p)c(KO) z6b$`8iIIXI)%8H5j~)K49|4gjE;K1a)4y*OA^VTS{?fvLnB{-H zGJYrK_l5oaqN!idDgE)-eNo1Mc28LEJz*4~=|So?nfaQvH=!~cpMB37&SSZVR$fMt*(?FGIv zl+_C3jwBaLD~OSkBAoP{_C^r8u;3ssgcw3`(H9zk>?2UDT%E zoM}^~P8c2lIvU+~(1!9ku>1A&I|#9ZE;H|!9P`#b7LX{dUrR*;2F;Q5Gdc8I0Q)d| zZqp6G0gp$8XNp8GlIW>eH_zuc~Adi7l#b8_9r8qbl%k4m9*h^n=S%omGF=^_zkGFD%uBw&Kg#zv>$L&49LxvK!rqZ;#@y zs&dc+hk!xhqG3Oaea=2+c2|P+I4`byBqF(A<9f&Q>=(YQS+;l;15&jl%4!Z5gZcl= zM>*7lw-jTj16tT|Ws0;DPi7s1?V0!7DKMf`<=#6{8dv(??_TbQKZ&;DZ!Xnv_K z`&=HqcVx9S7bw@skxxVzm-Nv(erujO*=jFV4yJ8!3xGn+9DOdV3OcZm`qY#$*MgLe*npWlHeMNncbI6SYocW&I}y+J!8X z`yqEten{m^KvZF6rUP;d9}v@0ETEqf`Y(YF$ZusJSSu!p$%WwkA(}aVh@8^D#VRYX zV#Hv%DCN?R>=%~ERzRMYg5IQ)R07%m@h4VgK3wUNvK&x1?qBbSABq0`zu(A%Snp?*7y{r1~m*I>(902LsCJnc8CL_v93Q-59mO7c%;$>_*BPdWRme(CWY$O;TC zUaG})?{+xU@#m#)%HIr1`Y#l-Tx9tB`ahoGcMbKwYKXa=bmYDBSA)Tpb-x<82{f?Y z;%9@8Y=8AhB+w^GzplZ*k{DI~?^*sXmF#L{M@C1+nZOPT=1L z0kw$t051hm2;wk(bF_XRa1a6OaFCM&O;`Mt@Qm~CykXd_K=m=36@Mob@BTY)TH~{S z?}pQJ7NGW@CBTYj{;~F-B>)Hw@owKAoGbw}2RS~Jm*r=+1eDcJaufyd&CAk}{*wtq z#7~mW5b+luu;N(=&_Yj08^G%9K7b7VaqDkRj!}C+Kl~{27x{Nr{9vFSalyb}%=|_F z-5(dFa$l7Cqx>J#uMYWH3&6`yGOh9d{|cv+<JcCrjEOBN>77ewNc6|*M)9*688YfuiG zW{@;R@sOo&8wZ?Bc1efjOboF`h!zC~&c)-ZM<5g$oveT-{Hxl3>^fRW=5fdRl^<-t zN(?W$@M7p)lmj4k00FR@^A(Gm6sFir>`j1e!7vSyh z{eP%E!kzCr*@d?uPtv_TZL@XceSO)Qfsi^3(ZWq1b2^y{c$%+!(*UPRO<&q*L0=y# zy+@AgS6k+aGp^MhG~T=~joboO66RPGMZY3rd1 z@2{1h)Xh$8nLziz2_zlH(g|c&I9XNw)^2l0e`@BAQ5$=Qx zV@>t&`*#^;WHL&;33nIq#UC8t45VdGB&Z#rB=}%dgQsmwDt;rx(8wZ5t8vB&P4_|F z6UsW4A;xM1P8hlBs6%PMhw)~vIDB#mOKr+DF1;c;CthQxRky?2Us!7%71~Y+2Ey|w zsb+OX?2N1GE5q$=@2RAJO@Mvb1IOPPOBo{_@fbuCMMx-!plh=x4SQ@~m1*CSwTQO7 z8_9CaDr~WeqfndIGcefl#jPx3?edA8Kq^U6*tEilsjPuO`F+!}SK?|MHg3n;lETcC z0>IeQJg3)_7pe5xhw<4c>N;A>N#+$h0Eh2N3S~x%P0V1IS42)zj+;o{AGqUwON#ev zOT2i-o^2{ZI?ToJiZry@xLqF1fSqfjJrlgu^8)t5wzfG*nO)8o$0G zJGAYx;1WVl93lwsD(b?W_Q#>oyfwdes}xxc*R9q1sFh^B@NyAOwz{*fNGW_@456z~ zRGCSaT?GAV9}wY1<$O02QsQn~>*Y1s+pZ7q3#9`i=rUZ?B6k#r1QX~M^m;EO2eyXWrM zp5?nPyyAMb$Z#XKox_1uEs{tb#uua4X>XRCSX))LQz4gpo)9T2k%P2YXpQGB9ntvQ z$Sb@eBY z4FgxRe!WSQTHPRC`CASLdb1@u^GHLU4>UwEF_Bf5tFP+Xx*`esIc$i}ZfHNlq3+^~ zKiyv0P|8z~Q|Q~ZWZ<*2w?c0#YrM*sE=&r4=Q8?u%db9HsMRpUU7WI?V;S(NTrqgF z1l=;xwh!mPZM5i^YQ~llrWv&~UPz|fk*paloc}V&$)Ug~wEISDm$0jfvE&{8bHz(F zx^390b5cQHWhXd_eL+}+tL%lymAakA_!wQ80viEp_vD5d|J#L_G_Lxsel;pb#R{tR zk2mGMB9!8MRN@A*aaj(A<@(a64-JBWQ&hEfN76m*t@+7MpU+gvY46y7RZ>uthsDzz z^|EKvaSpUY313-izpu0MK|cM6rTTtj=@YXP&7u(E2jMazh)t>3qehi3jA-pu7Bhdy24~`KuHAD?q>o!(6Ri5iqb|!zDQ{ z9k4&BI7Cb33ACwZtEdY&EqOC6`3l=*vI`v<>euu=RHU&cUKgoLvLqdzTzy?y;fQ7Y zjW_({iMx5`-J2}54`}mxeQ*&P8`>iR*M!u|>XN<=Jr%Tzf6rLM)xy@R7Li}y`tDrb z0Yww@6xPgZ{j6o=G&8Ox^kX~g*S6J|1k<4)%%xM)cQ>qjnBoP7QPvJ$u>$lf?O&nB zxSH>745_NdzN0;+xuf;*kSC7xaqLNwtaaJe^2khuWf`!x81XgkZ&;R5?o$yy9V*lL zW-^X(z`QSDQ7Y}@2B3-m!Hwph2FMkq0^$875S%GB^<;kJ9jYzmQ5^0Q-qA+G_Vk#? zPpdFJl=l`W8yfL3ir!N=s8rF@Q_@QMq|evCq9P1%u}vic&XRHrx7)Nou?DMhv?gtT zd`YK2b^tOP84~9N0x3qRntnoB?;f{|ir9 zVCP+m&J9UO7zBx-Xl#`RZTWP8IR_M!i6X6m+elX?m{Z=Q?sQU;T-(5me(}0se-~-m zMEza;MR9nf={k?oBbD9YhSY%L3C$KUm5KeQ)s+wlg#iuOtZ`R1mYA-J#b8j5eY?r) z_ohpvkLG&=i+scpGuenT{s?f(7uM1e^6NHFZ!EXTXy3j(oI#Ldcr!>z)^ zERPWDgZfY+Vj3s-Jc6!?3_K8w-~6n{p&1$*&oh2LAAIWtmOl=bS&<8WxJgRnxz~~K zY|Eq+V{l*{21+eK7a5bj7QJ3^6vl8G^kz@qv2Km1>#Y$3XvZIe^5OGmx~^8}F0Z2C zNqCEhKxBcvbI!@JP{~?<$Kcj zbb0ppZl@}|-OmscSvuO6w&+alF&;EBqy%8?L9Vz&c+YEwm)1udk5GvRW=&2SJg~LT z0*#U@(u+!O$%mU`FiWtT5yoDUBp%@n^I~^JVOTQ^44s}rSqh2YUnnCdrbmgpeJ$6_ zJQTH&-sWP{M-kpmf@jadckgjn2u`e|DDC@WYz$e3?P>;bin7ibl6us))?p^vyUUlR zoRo1B%aR@>j8aops$9JtaQu1y`ZK+E3!~zq9x$C9*3Xy=~cLS5SyjibITDblaA7pOaB zlNO zDL0{w$VhU&$L-!>R8rWRp0e}A$Mp<`%-iFaJ>41LvR%)zsgK;W1zZrRuyjp1LSiIz zeL-;s?=7dXg?fxN1AesH@l^IF5=E_U-OP#;0ug@STY#s|txtes00wYyVuw*JqQ0p| zaF1o1(?Q^9-#Cu6zkw&5_tVYrI}0Cx$i<=PO1+_LRkmA!C5<@Q$<^!QBGB?4zEsK0`g?^9a7`DpgkbIdU03 zm#8bO|77uo`~PC^yW^VbwrxWbqzcjzP(eVDA|NOol`bMkM?giSgY+U00YT{<1cgwg z7nR;SBE3j&2`C*BYJ`Aq1@-$r&pEf>`|f+c-}xgZ+1bh7Zq{CF&N0Ru^P>DR9xlN7?=ZQtV`ef z4u9Px3}E2XzW}L@aAoci+Pa({KDKLq1$2A3jbeFyesZb&=p2uYJzp2C1n1Wns9n)SZ|So}kfq7`7b^jIV!1OTd+<*}&qk4?BC zKOkfP2y68JghjBwaEvcdW5H(v`ZNGf2VFjf9RR=#Ad8FUfBmtazYH*sUnum?eSd$_ zKL$v^8T}G>VeYwpc5QMT*7Xb&%?w!OQ zt3;AyTuII<&Y;i#EAs91q7z_E5Sdd`=$trO1Lt}~^D6&S+qDzJMnr{iADo%&1f?Yj zds&U0vnr@9L`{4KQk7236i7u-X=*5*x?^CTlYee&L9m{ORrY8EfVPRatpx$I7pmrW zZ#S>#H$VhVKr*v46V4g-c>7gmjFt_>1+_)ri49+GQ2&+~yjCtfb4Z{dCghxEr>-k) zQ+f0qvdDE{(+lulSp_k=vT)F+iTodZL}A0aa&%@o<1D4GAel*fwsO|qGXYGfrJUfc z>WD)Hd(Dgl`^305o9=+gPOHW zb3SHiFkGO1Hm}i#1=I<@5Bw!xyv+aLa%YX#$O39ZGcPmhN~H4Dk5|I4#JqcxGF>+X z<&F!}j~REBXGD@ckR>FTWO zcj{K&{ItK%DrO@kA2<3zWGFH~)SA#rfSCkWr;NL>7M^svrBCiesm;Pm)~>+Mu@_=g{a|CacZNpr>dmv4gMOP3@59Fd2 z&I+%`aZ_t@sBL?3zqt4Onngmg67l{CmxqMe^t~Q_Eym=Y%!s_kY%6VCg9zLN4TZo2 z1(^v3SNk@#tB7h3Zm&1Ioi?N_hW<|8g-Z(2rLlE$Cn!kGMaEB~A5V9mA7l?jxSe_* zpd?g%iG20VrX$QF)>Arz!ynjO4NT0b9$YKk6s_Nn5{aFvhTcB-uwfv4_lseuHe*n~ ztc^|FRINmrfI%}O$s!Lt@X~nbT?>>QiZ>1K4Q${6l zjR)rOsRCFw93(kQsPHAi#??Q42<)F%n?8qsS?m7udB+IH>1xKy$uX1X_vBOvUPOI~ z75=>Oex|-C8LlD6q;ghnW1l#RM=w)?k1z*O#=AB^(C{Vvu6E=Uu}!TDrxtOlf{egL z^R)bx|27^G0Ed*GoWX5IQY9dJE~OoEGUOAs5x-&XJJIfp(dcqz6@M$kEsht9FIo(W zXRj_lM)$M+8_iA& zRO-|wzKC_vP;3IAHH84W61iy{SVv(;ZZH!nQq7 z!j_sF_NZ!jNTON`D;+xez)J1F^NCfWZPFvgo)I-@t)R%~=!+riqgm{@qwJz1G1`5( zi2Tp}RQ@|sH~TozjVNRFVNWl(H031PQMI)0K*axn*CVNRcdJt^;oNU3`DWTngUY^W z5Pg%(1O0Z#ycyAwPCT8Nwe^)%$@{zJjk@{>2f_2V$X@2=3PA9EM;RJ+7`c*kE_{lO zkUuHD1FrwOOW0_!YuL#K+nT&5uwX&~v?gZ=a=XBA+?xDs$SIk#zBolm1rmg)EVu{s zF-Gw7HfT|Wc2}a^e_WFvJ(gp=7Gxf@L4UNx#T=a@eOq1sdU{yW$(XxC-yFU}Kxx|< zsf#g#Qf!uD(102dIN5Ykx^2|g)e{|IO1fo}bGeoGC}SQ987o;Z%D+xoash1=ZR5(c z)h`L$V4b?D{_I+Z)O?iEe3X@Z5T|;FL5loIOYmoSjJ31D+3IbF`5#?ENAvqnG{qM$ zZM-$QH8@%Qz7yXumqO%h`qxL}Pw*~w(6dE}^^$p#p$*`*R3q{%X9k^5+rD~QaJ`4= zb;6s?o{jUTJ5~j9uR_RqhO-O2O1^2H?x*}%WL@R{>Rp2 zK%#J^gNOkTFnoU-gJ8)Oj*I5UjLR{F4ybEz`M`r0%XS0492=#8U`OScB>x974ERZG zT+|BT!2WzI1VlZ6K&J;o=V!P?4~QNtZ-b?Bz;1sql@EjTvGln<`2HV+`Eh`SrQ2_* z1G-%pbt_Y%Uxw6{K$GWd=NZX_XVSNKOsgKJlzuBhNN+&dRB`&ZXTj z01yd1zb+=tB_Ux!LgN;XprD`=Nu^>>Za|t-8E9a+d@I*yrtU-ULG|A~cC>!JPx*~8 z7>IbnFG|l!@1H7s?#k)xNXs#+6_klHM`NRAc|zie#SXIs3m1+#xIDl4aR0YW$^R2_ zkbmtr|1YRkKwf~0Z7&(5kB$3(5u4b1MjyNNGEkcwi%5>&f%}XLdrzp#gU>)-aSw2l z$6^u?=>N(dnErBx^-lKM-SSLfg<@2@dss` zhJFfv1PU=~@D(zL&SufX=cksdqLeOVrdLpPMdIGe-D|)t>pmlNu#z7~kaW5gu07IAO`=ttzs_KI##B#n)|XtiD7sDp-L8n* zTkXzv`*2-vxa~;g#;J<%Ptkj>ISilX!)vnesfad=Z+MD-heUz?dk1)<&?PZ#jVyCV z$&H6GMLf)*)arV))H?HBuoC{YYX|o{)ld|EP*XAmHKdu3#Kp_y)hL^ts>#~z)Sz&l zt^iZqd$d8qGVl}M*bP6$-fgJ|e!ajaVYIoWj`g#&d8q4cbS$#>UahLwoYwmfDo>}x z#5I%_;^Vy7nW+?%d4ahPaXWznb(xQ;6? z?=d0@?+sx+iFtq^0Ul9mZ5}5+6zHE2vH;BvO1lT}59V9XgaDs2`^{u>GTQr~<<)`+ zE4}w=%R27(hAOjA329fvRpzv4CBM66QQscj3b=v$@zHdJc)YDn1x^3*(Pdc8&ZEvs37NV8;)w8ZGS1DJWbkH z;|lM-VWeYT|G~!DK+m=-IO*fNOa5c=grMu-M$q=_i3v%O0h=4@$vg%IP8N@o%_!R$ zxjKcaPvxdKC|#u%9-h@ptNGAWf2NKEy`pPJ;l|(YeP+a2wjx+kT&uLQ;(q!i?W^;T z?~BLc6NAoj+5;uLVspA9{Jh&MBsT>o4GljP%Mz34Z(bwL6_1ih%^D&j=IN?oL*>ox zh40V~NRZ8ilcRkPU7=}9Rhgwj^JhEGU(I;T4dHx(f1kyzhzk{$in`4|9^B~R5{zPM z7Sr*43~H0r8eO9e`08`-`PWICmjtdQy9C-(Uf`5#5wvf%wd8+rZ$BysEv*517m;Oo z5AM$3!!(f}k$Fq}povky@O@pI4RuqF&l9c@g~Sl8H=^AG)!`x2mry-L2)pN1<&C{T zbri^rfKo%l`qKMDcGgoERkPh-Iof@L+S=YEE@Lt2$qt4YZnCjP{auFvxRaN?+ zs}Vi&aWr2&;?Su5#^BkrD(=~n?H0Drx5?P^vrn!?cRNlKp$m|m2>qTJ3JJY5bo6S4 zP+=^TVB$IjVE!q4o0@ z44p<*n{cnTzus(_LDC7k8Skc|#SyP7R@pwoZdJti%MGQ9EGo^h*mYBZAo-0BAwp6O z9=^IfuH#p8a&`l)RHL3vwqkRN%D9I6q@a>OkcD6i^Sd;ghKIO5UCC#L>S(?D0m@!S zi3)$t)O^G-c-nJ#GbL!Bn*E~NSITzIk6&)ErJO0$@|jB?yAhw*GqsHgsr>TP@ZSCs z^P@Y9H+UejglGNw{B9S8){(3vv!M-892>jdD6febJ$n6>=6HuE-4N0v-HxjoL8C@5 z7e5ISwU1rt)rPUX%fI0CD*}h8>(;T`xI2-_)$kQd74l|^@HoQQCke#yX8n9e*Lhlx zNIWfojB2G92@N@W^bz$o^3_KEBNk)W7vw-o)|M%=P-N`c&$%|O9ZnZII3Ifv{E{1o47|9^wMB(BHoB%A36=T)&QT!yeb- zdj~jgq79iJFOSzHr0RC$tk7K^*Kd8c`SD50y9QPbRWsf&i5r$NiSc~lM$=HXCTVy| z3W(xN?qXhm#9Iy3+p?x_9B|n!uNh@%z9+PN(kgIHV>z!fkjaO@z?`8yyTF(ZUy(Z`pHk+IaLi1VrrOH}M?Mw_;n5@&HaH8ogl$U zV9K-S#Zxxm>?LIQF8pr)x=D3uJVVDvxaR`jn0g#VkL{SOAC$3Z9vHL0<=7KkK4 zfcFrDmmtg1=m#3R^kWfj$xjsdIM4f)*~w$k>0<@m4@KUOz!l_b;QLq+^-n!Bw&a`u zD}h$WV%i|u1dy~m*AIa;2wd^gumbDT*vRrP!oFXsykiCSPplgobpqk_U!Q>N8k;d5 zXPZAXeb@~bUld4FH(djuyS$g>?a!1;GN)TMnwY1?4PxFh*+?b_;oN!OwQ`@4$aa<_ z&>}e$B=pu2lzC{E;bHR{xf}!bfPJ#wT??9fT=>2rH?}4j=e^H2;vD8nG3SITdWp;z zj|;Th%y14z?*c211iYg*eBkWOQ+L_#4NVm^q1XKahsR!f5s@)^2JVsrSEW)hx8qa& z(8TxXREu0q|Ho!m+0C4G>wTRxH~GdA7>W75L{z(QqL+VZMmXi9|7@W8OR0o2I-N6R zgwLFK?=}o#WGk(Fa?LyJtZZp-$(SU6p(#H{$VvW0mifaQ;vLwt844!~9JdpV+iXt^ z49ZG}3PU#S4!4WXi9;aV`}Qymw|qvUR`DHPX{gC~o-aDrnE-7(cVa-)tHN9?p>!f? z+I1{r6BXuIP2cKT@*G#d{X`}3#!ChLE7BQd4&&EvCxPqC*~%C`0mR939cADtLL&E| z9ig?*w8BbSI@0>hiC#h?p3*kD#m2gfPDeZxbd3BffYLVMt_~O zo686s+Dt};a%M^r8UMn^zjJMlK#P3L&}XzOHNoU2X&0@01G8XIOyx%E$&!MHtm8VX zGbI#jP$X>Eu%dnp*}DA*b>Z{dB(AU-^)a%^etfr=WRw9@Y$53nXcZncHc~@v`N!tq zGpjqu4f(^ABZ$S)tQxJGxbAyRn5wI0h41XEASI>`JjD+y*_js&?+MsS`5xxhKmHDR zsoxtW!EhjV)YCRB{Za}y&^m3PQ2B;MjzxMGi_F9RTmikzkUTNMusqRFs^>Ly?QFH0zcGdI0eXkb7D0lxVu)z>EKG6@Om=iv6CqA#EO-{Nw zyuf;384sX8o?W%mDk3q-S1*;TT7JEjQa;S2LPv7?@QXclPp*fbo^*Nm>K<}qHrn$d z3f53?P2yysDnhugdpc%=>HR&0n8?lU%0VmK_IRChd!#1Iz2j=LoZ%Q_RPU|}imthU zz}E9JazlG2Pq|#XkJmp@?Y>EiqjHoo{u3#D<%KV8g7Pj<+i*W)Dyhqh_2f2EXUsvg zvAHO9`NL;tf&KO-|jlHG`$>BYU@>%E$EG|w+kPOhZ8o;Jlm&e zk$$evjW%mZrX6uwT-!0Y_Q;?kwiz?1sGD$sDp!$RTJSw416NKOP{AcbQf!{;hp&Vu zo-UPG712y~TH3C$Z+fpJNLhll1pAIe3azYfX%AksfnwtYfVSmq&@$#A)kjAQacG zut(q0O)A?UFnNWmNGc$R=foFNWL4{YlDAjxuo!B>?*pTNn%U^I*AtgqK*9oRh~lb} zVYzyfxA@ovdg<+jYMxg|sIVRGMCw@JaeKn%Tw7V`kNOkoRvVF4+MoG^4}}o1nW1~Z zndP{I^==tKoOlpO^<1Ld?K{=-qvEu+tcbSP2i`{mM$Eyp{6TfBi_=8?&Lpp$P;`L> zJM@KTlgCeLtM;{UTHp$uuY7sJr9qo3GjCkl95%XfcchL5BT|W`^A`RNVe+I8>X#7S zv(An08-FS7`~*$R{@CY{Hrs=T%MF+OW97BqM-MShx5s;rf+o0)b^%bx4r>rA;kG8y zEC>U!-jM{>v1WY2Jk#CwW-af~O=^YfKO)LROpD-Yzc&g_Iz=Pjykry_WG zhxN-twv*1%RMu#{l;2XIHnG36aBC53Ug6(vHGkz1o;hd7@TN>h`yfZn!d!eabo^lVlN1Y*F4UV6+yK171f47^k;frW}~WP z9y(qOeeRFRm}Kr374u2lH$c!eQUoTpugxLT=U5^$Y8U)K_lwt|qIW-MRF_fEbjszP z&%3@^(BdE3qW35?p0@*DEKXt9@6ga^3W}b(Nai6yd74G$Nt77o zN3{a^J)g}kbOxI@Jnp@GV1^Mux~@7Gc#0pUA3;Woo^Pz}eD2>-m1-Q-Ul#drb1TLz zAwlMm&zx5}p+h-&?&odMHA*DO99_VX*b=NXe6`=sD&H-YS3Uv3N^YziA(u0j|4?9w ztwyCnK08yzm(>3Ke8AlW#`q??amU?u(6B@tHqO@M0wb3?gBDpiP%U|7_prA5a}jkR zWso?Wh{;tjMR%-e{V{=JrHC_<^ zsoHIahVmO3SA{j`R30Z-FKR?iF~JYM(HjKl7^xF0-jM$K(n~e0h<7#Gpl93 zhz?BmhfXG?&87wG2NPilY!}sZ^Ohczcx?ay%f$zOSL5}Yp411i7TJx%Y7{Ik@YC^iK!5r1nUQOC+)zLY(}d0pyaE zwl5d+9Zt5(k-4W%F$@h1ta|YxY{WWmsq``}8L|3lp_pT1A}0hD7^glZc}5CBCY07- zcdkjG`5XChK?R07YWf|j2;o&_k@z;x`cnS(5Yw$Y-WvA8cR z_@0Tqy6&(1#@6oj1zvu}OrCUo7zLCHLUm>h4{@OI?)|CKq8GgEU*d2XBpM?GQyGe< zn5SOd$AP^!FUqOFHCcgdG;Qnv~wtU^PWSZ3$&wH-$1S~!-JxVFrA_Jxt48D&hO}gyjpb?7W{5p@P3`Mi^HB|6kl>#++;rq4}?=9}B9+?dv z<6CZO&3SM`;+Y!;9UIRHdXt_^yxDj-x{G%eH;LS4(%LFQY%?gy`jSOixwg)Tt%0HE z%#C!=Z#iS%#G~^_G8%RCIDM#o?h`;-j-GR?@S}It+P@`Yi@Sf3NH4d=(~;>3ekpmK zn&*~u;!E#x#d_S$$-A9{t9+4ASswzt_lkjy#n_?w@xN9XY1QP8uYce2>{`9_A#6At z`%jfJ7v4WV9yYtb8|I^`+mT1^7ILFYwRroghPuz>TPY_T=KkGuV%;10Kanbyz znp_{E3~JE-EOY-+Bnj5$UnD-@(18>YAUoLFcSy|dzznE~2jo70z_GRSKy(A%fd^LM z2*^o5{9l$k7CvGz9c)qjFLVa0h5Un_#04BB_~ck#09a05tOx)c{71$7kHSq*p8p4P zd>Ne3&piMv^oQ&*EHir%Co2;)hBp~VljOp!N#bT=1&HA>8=jJwcsrIX90LUtEMOuN z@qiurF^-Sp=L&~X7_XEWan=m3ef?ZA?^eLijFU(majMav_$;hzE+=yY#Mv8Ehv5g% z+vP)2jZey5rad2Ea-!F(7Ai1#E-qAXw%DTz+sHNr9smHhJq#(-gna~XUL7={HYonwaKjyfDV z_H=f`zi_TTT*>P;;yeSB#;eJ*Y;V39Us45E{f6;%b^Qa6xN;%3v9`V9A-T}&XNhwm z5K;)C41rh>&v~ry>2Jp}zU0N2t$_rYGXZ%ZDmj5&|L^1=-hPJ8pPhNJNrStcCnLu{ zd1Z776e_Y}NB}5&rLA*MZMd3O^hhH87~YeQCamP0?f&4iNHK4PTjhXv3P z2!dFg(Nw)l*?P0-8PCV7+176LU~yU)n@ViIy+g>F3k(ruK_q>MugNor$|*JeMkEcq>QjPzJiM=%6J;J`tr*6=23(E$ zF_zAD?@=wqaJA%bH={>d9CdFLS_rM&51LL(k7N+L zEa2Vhc-T9nzRLq!_f9L%PLCuRZQlpVCUekwy0N)ZUssOwNML}I*%5gEuuDZ6K`a}4-+2Y-_E)`Gd?m-?w29z>f{+YH@hbOaf$|G20mwAHd)mhN+ZId1zu?@+A}6Y59AlW^7arv zdZzqtTyZM26DCq|SW-t5{B&xURzIq zK;{#BSWU(w0nS0G3m7$IR#Q0cH0CDi)_c&f{kqzimTBBw`}6Jefht@NTN{^8OeXt= zDcL;OV(VKhf=PHCD7)dor{m!hNk$_&wVyF}t(d>Qh98Rc8Cp?LzhvdNeNUiTIqrZd zzF%GT#umec-k4Pjp#nP47ooebeDg2TCBj}tqhppLjYlgImu~AwP-Q%OLM|xipgdCS z$TPZY$@9gS+;08H8oEVUzDs?rJcygiN|N?Y_aWhr3uQ{x=FB1g=}SEI6|T6zxTCmXX?v!3eS zL#=z6%DJ;kpE;saLzW-W39dvG`QuAD8VQztxj#WFe~Ce2Luh`p;gZ2KayfuM06n-3 zzrWP^k?jIv;7Nnx4450q)O9LQxHstC`M_iIRQCA<)94qRI0@Io<~20ucV*_|?}ER^ z*2bLlnrVTj^kFLSJ~tFs9buI%J-BWaS8So)E0WPmyQtroP}8B!arWb#qU%!DltwSI z-42@SxX~lX*BWA3!6iIvPt}I9iu+jjKj=5ho^^HN--P<1s`7bvi1k5cML9ki5a$Sep~NDJaVwvGS4x6&6y z)!5A07|*d3L6IBqDfD0sZ`KJGE|kpucSJF#FVxmN_dlC0K68~#;@kcBDyK%&znX{;h5XL9Z^Hic{qFAr3^@3JDn(#d(tK zLh9JvSmB!n(jm@n!o6j*r!KutnjhPHc~jdaosE+o-{(!_Z6vhC4&UwQ+C0+xon6l1 zYr8k^sNTynol{}+zfVq1E?{rWYyl;xW5=iudWxc04N*HKBd#8vHst4`v}X?`=m{TWoc zEJ*Hq`HMSjJ)Iee3@?e>?K{{6Xqb;*yN(o2@rZ+-I-VU%MNj)ux0Dl+tv8!9Zz<56CXd0W!9eGHBWM?MlYhPr z=U6%NmPR$o{BzqsufhKp;~-qwR7YUS}^ zqfh=Bq`&mokXkL}GdW87D6!d&u*-lpj;b_u2lxB zK+jA!7MYie-jpL75Smmr(KCR+wga>n+7^=(Bv|_`H)jF?^H;~<`Kb7X8ag;tHaA#9 zwPqrj>6NI-`DJ+(kcEy2qcnyZ&lpOtL`t<>cd9hJSN683qU#)%5oYkM03tRJKs)%^CucSn3`t}&P8d?_)ut4Oq}_SZRRWHhs9 zQ6Rj3FN^|zL=B}dTi>h}GHz3sfTEKN)>IKOD~wHm?T8&B~r>^-yF+NMHV_t!DXpm$IZx z6%S#v*_P&B+z2mJn4%oi_y+$3Yo#f+EuSQ zKr8r|o~fU$;3LvG@uCg9@zGYZMFB2VvGKmb8>^$vUe|53cRaskZP{@WzgJ4gh$x&5 z-pnDs+;FC!J1@4?9XGgk49U8>gj^p)7&lOaLP?c#Z#GQJ<%wHNxaERT&0MLt}S01y}W0&{2dY`O;E?^`FOCPWaeen zC66>cA<6u@N5_A2>o{5koMKTvmp7z-KI)!)=yS;W+3w8lqUHi(Ufv>+!?&|F(UaZf zS1E+M)-|aV?_BqFARvGLrQAUG8gp+#{VXg_yBNcdvRSp~p1kMQdspuf-hy)&kJq#0 z3d4516!!hZ*(0XKBZ2-6PiI8$m{8jh>#(P^eZl0khdMT=T#gCq2_iT{ z69*lBRDSygKcEB2JZX^CN>zO|C$pfBb*GIwvwP`aSK1D8ngUs!HWizn$bFN=j)0LE zx0zjqLs;F}l|2?t6sy09SnSHTct?H1dt<=?lD7i!-=#j5_+T^H9;KAI_Hce;>;>C< zg-_wA8MqVlJ+;)8aCkuQypfyV0lS+sBK&~u;C`y3lhQ4BBmKA@QQL2To@92PS$hLx zbOITXm}GBjI1Sq9G+&MlUjn?BVzhXIUA^OAzA~w+@vQu~a*l?fygS38KsA~d`ThWo zz;IO{rxK89Tqm=*9^Je@v6q*3lGd>0U4+P{(uK-vTLq_gWe=0Kc{%U)7hu@Px)^In ztep1ZMMZ_^DTn10zeH&u{hc)=(q3>2y3yDd;BVNbIn93#zW~~hT3H+zVF>H063&;q zImhTF`L^jR5@(aTbqaB@WQ6O(5Gy=K<1=_;ME9Kz9q}Ec=Y|n=z9>=e+iWQw*LVUzY0e>&hZ}B6@c}GB6B^}hTfn5T(Xs3mrNApG@a`5 z$*UA^9?daa8FLed+dcEdffFKG{kGklx~a5cP0Iq`l+<~wMP|gl`n2BJw(Bqo!G+M< z<~w`o#;~+^z}`zG0OIrAO?zP?ojdPQlvPX$8%oK`=M6^o%=3Eh6S&kDhrCxg;CEA0 zY%NpD<(^+4zCsd0k?D03P7wh5EwlQjqg~;u;;T|DLEJ>+5UGYlS_Kfs8t1eDRNLO(cJ(Z;5fZDqn9B+JJhxlb#R8+LpN6Y}wCy|v7d z`E_0M;pbWk>cjWY`LP<;?+~Lq&?U_)OHh32`Cv5OQL7izcZedqFssdo3^~(6K{|sL zZyko(_3sGlt{2pdo!g=@yhnx-RID&1{PJLMpk!N;P8B&FoP~ZW_hNP5JKl;cHbXoC zQ^DJ(z-a5xHK8TbNu}nXsvtQ3WsA9XB{4=_PFD6mDxCN)>`(X!b_#PBR3k{88#`04zz8%)Pd+&20{|*eTSYzYP5ni|)ZArIp8X|2*_fScq z0U#wUQP<~f&bf~}I2vUkpeH=l%HrB@qt%KmyczrQ^9QCbJu21s(lQ>oTN+xVr70SYTKJ{D)B06uF{jwIqIv?HfwS;HE ziuI)T0Oj;V?Oxb+Aa9(e(D@~EhICRhz z&wV@ACa=xsiU9LK84_IHHe?P=K8|JpBBvHr__|hx%#aWuOYwZQ12-#1SWRLJf#Z}sMht6x*%R0dw1eKgCeux60CSD(~l z_hI2X1hU@=-+47yLjW(3fDn{LJ|KcbNxS0m<8LZ3uN39(#=XzW89U#LvVn?!r$n(cfzFU|8c-t|7Y23+)p!YATFUS$3tjgE_pkL_W>FJU$1$G|?wV6h47AO0$T z=A*|DehFYDj}_!#Z!EHp{VL!%Ujbh64-Go@D5O6sjDHpuAKSo!MED0&^yB$2Or-iy zDGlV@lDep6%y#zcQix7;rYtC5_$4pD+cAjB29ldU;eM6>_|^OU;D0@l|AyCp!2RcP zp})|65`gw&RX0D-erz&fPIR0*Sp1cF>l-osvq)y({vJQLta%i^usLH4%ERinS#mkUN5U0atstDIGlDO{!)T_C9h|?9Yhw&GiM%-678G z`#LATLr8Ss(AV?OrUxnCs>`g82Fs?ZueM2aEl519lOIu7yNGJz;XeTkRn$n#=}xzE zWIcJ_U^IDZ!k{}!f!*XB4Y@H>aZ2QJJ@OM6#1b2;z3)1AYhjKD^2Xv>(_{6hgNof& zyVVD*p(|fwEuFiuoVp7=O+WK%W4L zSB@tJ;Q0(HsgJ3!AG6ROx&@RAavij`zb{8V?-wr|tnL8-9?Hpk^Cv{y{AsPhWVT+~x;V_ER_ULsRkNbdKku z1}b3gWGk2hs6c!ylbAP5sw4Mo0UFyR7X;m$FW})j1EiK93|ar*f69w zMii~2#@hM7WIRn#bi$`rIsZG<&&XM|McRdK+YNtU;V=m4BmZk~d z68?igQmHzFVW03G+YK+_>n(MEbs()K+Ot;ey@r{yquG(1SyM+cX%;6os}FI+jjz)J z6O`hl*z`!3_X0$+_*4|^I-h37Sl^B8_U^veJ*wViJ~G>NjTMbPTK^7V>j9-QcvDB8 zo#1mm9c?1)7yVDxai~O~8FI7iP5p z8>2hAK0_tFdYSd;g}q^I_?jy6wCa1m+k-n7ZPsiaDn1AjC-GOD3n9?D!!`?n(6oEE zm+jHf)`_45TUH+ASZ3)VuwW2R%l=ZRjId<_@2LjvksH*d4GIK>qpZKd;8G z!Ses?*!Xh=Q{SE0mDbOD>iAW^%BIb}$E#JCGz^5*AlUtT75qQgh6^eZ!E(flm8f8) zdLZ2VJx2c9)d|e!e{RAa;?Mm#eu!PL>l~JjIo|D<(K!yae=c7@wuk$>UJtBR*uWdC zdss&4m@@)fuv(cP>b;*F6Skj?^08IOAMDUic88DanB4(l91veu{EJW7C=EnW_cL*#9SwnS7{<4}0l5>}4{i~~)x2oqk^p^u0Py4|gL*oW2w}%Ec=NI+6 z%AZ^!H;i{9K6&lqMr8NXqK2Yz14METDqv-nt{q09XCcL*VpdsNF&Mr+KSmF;3Kw~F zANeJA&XcTK+3$^~*}<7b){?q+@OtX{hI*<+MjBsB%krGOrbn?0moWt_ytXHB_dzYS zQ7!Vm6_iBUifemjTx#0O0Kpn;UA823K46Dq5R*kgm21F$>J_H($LJgHe#ToLy5gy}MVq|imSie8#;fvDSqyVmaxQ?DEvx2qwfgS~kwwf#ML zGsl=dmJC$8$P-J**2FNm*xF>idcU#Mebg>ilT3Y>?fDeWOm|}l!<%BXxMfKKuT?A` zw_%|zkAf`Em+gd^kyONu&#_19J|*br3YE;NHQ71cYE0$L;>M_ZAC(oj9ZGBv`O0Ld zD5cb$?&_!f!i;Ag5dz$-RBm;Bp4WykW^kSrRasu)*DIakdG1tSr{>H3#}pr3xOc+n ziC5m1(5?d76fQmPyVY(??|s#P_4IPQSk%}J{4M231Nnzk%)v~l5T1Pdu$MWTn~tE9 z1Ds-Pst(W16)}#6w$|Gr>pr9{zaK|CBOdNM`7)5&EC_E@=%>)~;h*n@MJdnmg$yXU-f#%DUL$9y&a5W(HGNmMppM)38>I0wnw$6C<1@H1`gv!P~W`|8b#Mn5empoQ2jyv-jL=*~9~ zODIItb3d+f*V*t&6JR57(|nTm?1XUM^?@A^O5#KhR?DRsT5sCregEO;Ot)s)n%Z|t z?3Lwy8f8(s8Z^9YV)@UrLp9?${UHnV1y^glW|c7F{K2y*mS_%tJnMK(l|{x+B9o`B z?h$Urtef7WU6xsv^Y$!SEk#=wzU@k!n{I6anS z;Q+mLd!Zz@>yxLutbc#z^@RAVg)$c7nZs4hu$nKW>uqi8-^Fzp`mP4Ea+Edad6H#iAmCD_N?b|Q7ZRbK& zU>2k3y@v6({?3R{p%#7B>ClH=<@zCXeM)9{XSE-&fBGuS&7efu4Dp-P2HM)zdVhUQ zeb0SZNC}B36YvEp}A8l6yg%{m#J?hVn{ZW*$40RfG+5#R$k!y~HscccryXewB5d zd(X@If_iP_{up&%FY&z_=R2r_n3)w#O&>%wfW}D?R&5wnR9=HByoefv#x#g-lDnuA z!5NmKk$Mxx6O&yZ^bI<=ric}F{V#5j+WWoH`MR5cy3tytfH@sI|Dm=*B|TUA1zVK@ zhi?8O*i(+VPen2MIN?>#al$SypFFtWdA|5CDm=KrdYqM}9ex5uKayS<%RwjKH5CKL z)SnG$(Xo~I0IT29*yZM*_OfQ_uMN+VeqCGctH`;@IL+eSx?(AP4ZA*qEE$V zXPs#zDbd?lvR$VMcXutjkq= zv^ug(RF4hm@+?1t=0WDTFVUjx=KhGCg@wff8|K)M%M%7oscb>)CmFdGX*3~_ZQOiy zjrr+SDwX>{TTjXzmI-8_8qfyl_Boy0zr0b!`?my_gMaa@CFaT?E%+4S9Rn%RpuHo* zj_X1E3pxA|kNf}w|KEPiO#<8DMMK4se|0K<>k|zEx@Z5MbN@SR;%{)zxTv2S{=_ao z$pki7q=x*!E`D{;)3U1Wl$4rU-&hD6Cu%d&dm|qtIaW-#AVZto>TWpGF72yL^@_jl zELwY9Yc^y2bCiG-Jo7{zv{?p2@EwvC4X41cfaw*r%=hB4$2wQhd7#DhK?BXb9A^_N zS`thub3?!H32#S7o|>tqSrM*J+h=N zUg|YWs|h}0B%I|xq=peeXLp-H%mwbCG($eFzH6uQU9h)JtwX1k$GVFrdqjgSS3zpgSNb5PpF^ST#Q>tChZ6pZ96&9JPYikPb@0w#aV7sR1 zHRRKF#@*@zK6JQZai8aHgh2tDK53_gh^`;qx~aBqXIXRX{VXfO2F~|r=>u*zzlJKh z7K&4DorXYZd=?{9Tvt+6cc;S)r&@=d$Nk}T_So2r^H(6;xhWG{UbS+ZMyk4&iIw1@ zZj5P3upLORKnaex-X?hOA5L|R++8xAw23r1rO2L059{`ccA(0*h{rIm!<2&IL@6|d zkJYyslS`Yk^0XNd4bBN#v^RHO+ApE?Hg`P8ne(Ar?V)vQDf&Q~<-kR=PawxKuJ&Z! zkfP}&{}GFUC+(1MCoEj7EFJFru1d_zm$7w?f4+Kr&Bo55LwGqN|A3(>nuIh$yDl9q zij;0U5;^oMJYtfGSQ4ub;tSn@?Pew5TS4l4P2EKl*n`-^a66t~Bh5goA5m}7@GB}SqOY1~*(fe}I( zkJ-H)+>RZz^RE`4xJ4ZMBy&K7t6?to?wawLCF2iJP)ja-XLws}tg|)o|FHMgQBnPW zzvv(+ASEr00-_=!jR*sXw19Mjh_o;Q(gUMNNDD|vjdXX14Ba8!U4q06IlwTUjo0jnJ{%q>UyZE(soo5*VI~>~P&uHBw zM4svKaUJ*sb!k~6_+}`P2}=h(cTvl%zI*R+#FOn@BHQS_HC^(>n{*sf z@6Xyb*-M4C)(`rFGW7LNf+q{ee89BW9+PWg)MxkI<`-h}vaN=GBy-f(Cl4*n+4`5t zRQpVEP}CWuzxDSks}x!YtAFH~^pcQGUg+(7ki-oao5@yzmwhaPPsx$SwDgPB)S3_gFH<1hdEP zPhY;pWx`u9n)WX4E?Dog8Hc3viRy+O)p>mdZJAu(d}&eBE+t?dtj6*Vs^?_p>K*Sl zIvJ%BslYl3o=tmG@_5?+;fcepiTt39<(-F*N+U~40Zc00^gkFA{EvAV0JsSP;gyP^IimMK#Z{ueF5$^NPp)$4HzvRAo zqrW}Ke3w|xl)HD7`@kiyX9_NPi^=++=^vV@f0%Y*`m5sSkHpS1?OE#_%mFvR=hkTv z4F+DKCxjvgT0wGC9yr9gD$v?<-lAYYzMjOTf;dk+H2Bf;CT3X~F}z+L5zt2*X~=%B z+iN-E(^1o@_6W<@?xUBQ`bKZWY!_B%v)XxrneUw!HLyucK$#Y);|E%NzB5J0yvl!i z_F92Ajg}P`X#LzJxvC)3uC4smPU!uoXr;ngsDzJ&EDC?>5^tc1nIh}n)oqfd^P_KW z_Xuv*a(g!F#CL4nuwG=r)#o#sb(2v18a6fR#J(5pbF`}EQPvObeb>XE=xEym2O>v<05a8x6RlW}`Ek zgEl(Gl8^(zYxUNQCu*f~_a`*`n|a$GrV89#i5xWw9dUuN9hL&|GHgzr-uKa29oXyN z?04$vzR2Y~iJ{e)neXysLQK@BbGrHYZ^#=KUv0^JG#1{Jq@z9#rgd}D9^GNDtFJ91 z6WB}Y->&gj*s-Z^Sb*H=Dz+`nvqmPVo(h?kP0FXoHrYASXOK&hgrF`2b z)IryI*&DgczRapaSE!F(UvMc{oWG{Jv@O><#hjBPov}G~n&}Iwk zj__+>aT8Xr94o2_wI6b)Y1V>wmIpXQDqN*3e%rXPu)w>mlK3X5GVGX8eD?6sJUv<% zpr&B-95@DoUm}Zq?O3Jk&ZC8+-33}nwgvn&S-V(4y$|p~k+zfzv4I!`&OnUm!dD#w z2o+%V;pt>qaP4|kqF*v+gaT>La1LvplMiSTCD+R04`v^)K={HaZqmPb#$8`CvPKg# zo+}@rPpADv;?7kM9~C(>L(V3KBpxMn>=J?yD$(Ex;Kq}BZLfX1?OCf3jtP;3Dz0pW zd+rap=5s#5%WRagAmi0WPPf8Sp|s24Bv7fr{;!KlnRTUl$upgUVsgEb8UB;h25(yu zUo^<0yHK!p`s8x_mg%ln^$)+;#7sG3({Sz1%rRR|SA`!%a%j{szFa{*gIl1O^Mpeh zs5gnuzzGWGb%~QFF`M^dSS9x-g+IKFG6f0o@kexCKZ#x94rmR(3gsRI(gxhX9dbjj zoR#<)k@Fd?WwW6xbeE2!1Mkh^OTBxi6_Ca3iKqzzs^v_uklV8U5Tu;!lAEP^fJ_4l zcYu2=4?J5*LlfL!E#-KPm#&Gkgpq=v9c^oyC$}_F2xUXv;$g5-rV7r}+objJtY*RL z^*~BYKn=2_ZPV?#3q@ooIn|(LKxs_^1-QK`{sW3`JFgDq^;(a#$IU#a^9#Z1VXF!Q z-H#J7Uq;W3FqE#S`Nn|7hsCy?k*JES!6ODp@rl{<#HO?Q^M#sq4krxNGIeKaorI*_ zz7gD1rv=N0hA+E;SvMOV4ha&*HhGhcy*a1H4wCI;=?NFi_>vOI-MA_-Cq31Wj}Bhy zgpw?HS+=Q1B!NfgSZC>7PHt#m4?@yVMUi5h$gJhif#w`BZoD}$pZ zw!DgzB)#rpYQS;{V-8y;3#cr!E#}bh10Qu5P8RjB{MD2qkPZ;(g7nqrFxof(nQu6BptN<$ggo znJd2paEU{-h znFX${8P@66>XcOjM2_BzT!jBeq2m8~qSK!}FgFMHFMJ=M2mOWbm;b>q`cq>JP>=u~ z(1m5ee}tZB8T|Oc&DZTEr=I-CK*?&#I_tBqLkB%^8Nbk_Y+UwaP@Wdr`OE`5O6x6% zA{lQ&;2H~fGYzis+LSd<(EDx4t%bAYKPYZwqHD63)X=!2XXv0KZgS)g#FT|HFw_-Y zh2s0)33<}S^TB?3&MyFetN1|^=pa&3YMn5I^2ByoHPBcb9qc^?4|6`3)=w;X4&k&W z=bsYbd}%f*i91xyJ$GP#Tteb;#k-qSn*EgEiFRGghoja(}HH5p4)j=*}6j8e^d50qylA=v| z_Qm&yj?vq{w+W>t9$Gapf|k29CrD}3jAyVW+s zXD-A?HZLzAtqbOtKJTCB=|8{33r~w*ZWMp;F)mCh+PE*&;uoG18~{n|&$9SeKsbP6 z{mRU`nEL(Sq=Lu&23IlNeIb$^_vXvhA=0}A06Ya;j2C`H%K8p%S``=Q6=K1pb6B$f ze+Kyb&nor*ozMTP>eu+A>OUpO)^tFROu;d}EI=XoP3Fm03Hoxpi?aVWx>rZfw{g?| zqhS$d-`<^= zn6!@3KDAGPP-kSMD_s6sPf*fEtd_0$LF4fyuV*K zRk79XdP_&;xkXOD@%g-kD=_$^s(mB+nf3p3HcMM8MZVZP4tXz1bN!Vjp>@p zZWe}JElpnV;d)mAP|tmO6un62o0yr6z)HS#o*J130^APtrRf>;d_<{rcPsf)K3vBe z&s2LHWpLRC0Dt+D$1rS*5|m=<=x~|g3Z1vqfkg!`YIyxu{P?)+@EMoV2BCBdz%n`` zJ|FOgTUaSsb8pUoOT=zAiglZtK8NcgDH$F0(4gw)sd4I<^(*s4;Olj?Faj%%xRt0( z0}6$opi1WgK-F<&Vk1_RJLY|+!NzeqLxOz%qLTZEcH)R!Jn#3};#`@j0N?G|sw~t) zC7LF#_MW!(MpnM@fLE8iN$)lr#N}soAZ+nk7=L7%sr!UeRy<*b&wA=owDb%%NbO3}gQo5qEC^%i}?@M^>-IB(kQgV={XE zi9{&o#JArXyfoEe$B7C-sg4TRu^3hvDBHJBKYPcn7sHjU{!))}r&(8{fb0%pV{_OEfo7hRI|2)Ag)h7`pop z;RV8(g!$eY&@Hns)r#I;b1BZR;&-;Al^fqmP#J$^SHU1>ZsD^-m3*_?kx=fk0)7^w z_6HnEEfDAd=sUm-EBa>1FYJS1a)7wo0?C>RSJEV=AZ(r@diO2+clorq0$Dg8C2)#w zV$&AS@pWs;>PO3`m8L_%szO5sacnV4?tEEqo^C1%X{l(w|0sUh7Wi_HsUzY~g~D&; z#vjB8_2sk?Rw)f%Wr+5TgqGYF_U+=d66q?q3ovy558xC3j#vD5AO9Bt8j;pZ9ShS%CNe0vHhg$?Gf+v7__U=IBRAo>uRBB~jg@w*ud6^S)~#svDTi zE2>whRl}~r_*A(%x7mHmc<=S9C~)Qoo=E_zGWGGb3MAxh{e%1``e7L`=#Pnt5MJ3V zB&{rhx=NehBfiN>wKlZ<%dG5X|7z4un)72mdC<#bpRc=swyS{O0G-C->&>dKO4=j+ zhMO+r>2Ap_nJBbRTwDn*{zjkE3)JhDp=iAW<&#OqxL$KHK|1Z6at#-QNqcul0F(pB zKb|>{YVk1dPvL~!;_F823eTz?3LabuJi7&bIuc<%vRXXU0wXT{Z0JqyBcXpzIaL0Y z^Kogo@?gP@(uxnJH{an|N#M-S7g)QeB81x=+V9&>SY;Q9o1CyjFV{=9t7tbj$+!c$ zq#h*r3NW`9L^1bLJ9mvj?Yjvd^PCnoFS}#v~)8bne~& zFZC$Bc7oSE1cQDjrgL0?8`7fxenbEK(-^H4?sdz@q2&i`;!+)W4tflsUWdqz1?A(Q z-COAQsH|SZ*AXeVgOfn@+-01MrpvFvD`pIC{babkSbp!mSZ_+7206lB

jR5iY?0+YQj=hnpnYew(Nv(K#Vn>S`D~_L4Q|L`KA{f{` zedl9%{kpG7&Uf(pc+mI$6pO4YQYVz>cO=SRA=b0L!Tjn}O$K2Ut+PxC!G0aUr@)~CLr$=N9I4zY z=IbL1>PLGV?Ggbyyr-6IhiS<-x_c16-VTWDejRZ*254+MRM9%O*zayr<*JP=M*9n(ud3B%F>-n8gKRMBpfTFv|Zmru;-eV-FZrulR* zzFDrY-dgQmJ-1O6{TiO~y@+eH;hxp0T$>%sqS#n087zNNe8p9%sx##FXP;tD7x{NJ zxVT)K4x7>Ux%HQo0VA5*IoGwAl(1syKS6JSXy3<0|9BLC#qrw(Y?0kGRm5ZC1&VXd z8phZ6k|$%jWBtpvbnLe#hCJ@}y$+DJ;dpPyE0f!YyE0pC3EjrQ<3BX-8a&L^bS-7< z@9UxP&PGDW_j6`}ek9ybCPL#!UCNS*sY~GC$ zwbq2l8Uj{0q0N7>A96PTym7%1$QLPu$KxGK=@iwgCSWhUX4h!r`9+tw2>Ji>i>*zQM%U0tm_`e)9! z4is0k3$ALeYTI{lAtDYrw+4_N48ydo5XweoD(HsG9^dyRJ=ltqOtJ@g;q7Cejy|zRZWW}Q2;uV=#H~@UYFG~^s&5s% zL6E4{i7hIukKL(0DEbKaAq)nl1&0&5U3K923F4i#A#mkJyog}-SJnRhwbXmJZ}r6d zmARH;P~DG75BQxJbCD2db6KD9yzj9t9xUyU@CY}V0beniGM5UYh=yT}MY|hHi>zIvY0z>Mycvmb{~3irJ`vfX35Tx-hF z-@g8Zo%f(9zjv=!+a%!Vx(HYYrEHI>%Q!bdOs<`%@Z4)YH^5b{uGsCf$CQuCog!c< zm{YL@w{6{EM>^>{fTg9}YisB!+Fp8p-U7;TCJ&{rLT>c|^H8bPjd8vgr&GLp28!!} zRHP9#3t>UCBCKQ)t~y(ldDdnH)>Wdi8Q0>+_Bj1@r_!$y`DTaK}vM4 zxoW(>`rer#@5ey3gqg%bRF(v?{3mD!;I__$dbjE<7hx!D;b?vMF%N7<5%D4~72a$n z-W+s0kNppB(EnB7bdj0*XRG!nS?ZTf>n~r#Hh@A7)SJIja()>o{>c^kC0P1bhU$gu z4-mI1NeHMJnLq*;LdK^an#w@+xS_=j`^8<^6LbW8b~LyDd?fIVKlS%;G!3IxtNvLk z3fNU=wUGq7Pw5^wClQj2-E!cP9F9~*I+bEZFrJP!VOjJ0NZ1^(H-y6x%!?{WC`qEzlxv7*of0XjTE$wgaA6w49Ocj*?ndLv% z(F>WSZSmiREVe-CR$&WJK!@M{rR*Y4Z`v^i?yiztZ4LJ^`caF1^M2behGPJV9|e=V zUX3*rareP9e&Rbl&}F*D1uXNhvD5OdAC>_f?vyg?_HHM-oM_PV759oJ=|aw(TUvpS zH7)JOmVNGSROfh}QF2Ysg7u4kf}*m~KyuHE`uS5;Gh>PLAMs=F&e$u~{9q1Qh5$TQ z88fEs|JeV*v}+3Sl~w#AnQ-m<%o+9!4@PyZc$5eTa|On$b7W{XalEh zXk=#zF1>8-ghgZL45_#{x=2|d5(0U%YF#(od!VfEZV$5on$;>{Vq-lhKSLdJejmhJ zK|;g$3>myMf}q?LQ?tDvU&(?Dw~_6mGv{+3j9kY9w>1h2ER8iHE zM;KHdGsmcFSm+WHMs&#j5;r7Fq$sl<7l~+rk=}RiDI)tiEQIiY*vqsAEi%U3U~A4H zAY!zinb}iz(s5YTnd_c+FL*RNUGp6%QXClk)c$2=e)zAy?|iZ3#&m#Czuy)9qw7n3=uhRh zl7iAjP#7?hr}^_({A=yMc;XLVSU`HB|L<%6#SP)&Gh`hmXs$aQn7fFxIM^|RNmv4K z3xzf50lk`^&QFjN?ZpD$akFOa>$24=l9COwJ%x#$%-v4#Hxa0v^ych$u+w2IwRSGWsOI~v3+{1l zKY|MMIW_4YNFP^5&B&`3MIPAo;bQAQ!7d_!zIr z<(4kF2U%W8<8$#64;SOI*EDM?T}?c!n$e?YkCk%Vu@uOATQOO@vzz3J0<%GnJ$w)C z3%)&foWDVQC^qu^ol>>VCY`qtFp5-9{c57K>0K3L{^o&z7Cq7EA*7Ba@hE-0fZzH4 zqS5*nkK>l`KncnNBJ>+LfnlF_K2xmnCwG)+d;S(VVRzCO_(vayxrTfsd|P<&#|EMl z12GqRmwjWBjjyb!`Z;5Wdqm>859y-{s4X(}aLbz=?daA&H04WfIb|^cdoX%>V`%^v zEzurv9V3+`BNo@(f2Aw-e3F&~ZApzxR4jhhDtjG>yhI4RaYf8vE!XQc81Z;{{cnXu z>a2xDssP{4NwS}5{>EuWuJJ}JuhDeZvAJLC2k(&dAi#UNV32~_QVw-b5vR^?+nm+e zO5U6kd#Tl%+U0DaBNRjSW~!>W&rv;XO(;r4?zt%LPtd)U(+AY6a4Nv6wW!sDqsku& zNlV~XY+rd=w#^%0lwok&k-ZX&WRy~V_9dnqJRGu z2XPizGOQ;4Qt^6B=^8a0Z zrgxf!aq9y34cHguToRhV+vtF3@7`xuU_i&SysLQ%@I|&24}$h#fc-TZ z{`F=}E>spZ0sMFG{Jg~!mS7Y=K`o1H$d03m<0D}Vn}zDuZh6-cuv|^7R=Gc_uisf0 z>31)h@W2>GVKt;^&x1JukJI+r2S9T1VATD9aTaokg_LQxQ7BYKBOlOXD4HjsbbnB^D49%mZg4qK?fm)M* z(AhLmAJe4#@;IVGIg(Z7n=4NKY+tRQcaeqfSuWm~R*#5^rvWRwD zOf>9?e0VZYV7---Vf&^=toJPT$o#wlOzJ%A87ZGDF z6QmchtVbZ%VlQh>oaVUR3+90}DSCr2w^2J8$gv((ps5w?BTrY>6XP+Zo)O}~KV6B` zv-IU}>-2gTeVy7x8;|TWm`;i`6qsE{qm!&NzEt?^w-Be4sqRQtu zJs*27Gq=-zEiZ++IXz;@gqL+}KSahJB_W+VLKi1gJAdD?-K)ThTok5E}R9N4< zuvu#$iM#jFsGj_N{Fv8@byqPf=f3wtJDPW=wa*p}9iwK;!R`kDGISOg6)<}8KnM3_ad)BuF$y04 z&`gXE{(>)^a>MyV3D_9|t(ptvE=MQ9nbDN(9@-%PdJ;(h zjkqcBm^X&w#rhY{Lz^0#Hd*DH!?h#81>b9Ge9=F8DPa-7H9Qzg?-sxrWC2_A^O zIcD$Nr^4%~J-2EWHfqigK}GfYY7QNdAO711d>#W+aJl-?28x+J3!s&stcp2~%w2)s zah2`BEj>vH|AKc^xW*7%6bL7Ib2fnYqvJ`;(RFr%A8t?9Xu>b))|YnqT&EI41#P}} z$V_}wHyYPvtjr&amN7@MHBZe|EWl{JvNQ(o$w$eJao&iR?_#NSnbA$ke?T^Sw?$+M z_ddYj;R$ewG}Qkzl2KoUNN${Jc~$zf5At>o#BxdOBhCxLb=>#iVrY{k2u%yBM;%F% zv2;?eVVbqESJpkqu9gtZYmcJ^kL#h95Pl{rQUIGQ?4Ph@xwhMCd*na9=GzsX(4!OK zvtG!j&}J=aZS1r+t=tuo90az^aGPF+_(CZQiu{d9r1i!W@okyz&Tmu7=JVCpxl zUNXR=cp&u%L5Af7cK?LdE=91FR-2S!r+bg**4ibEMvj|80hzC{+vV~BxRvlx8s`621_wqgM zBRjqcLuq@RU3|MuZ;h7c*GOd@35vjIt)*ZH6-Egim94+YZ}fd%zlpnyt%Q&=r7P6H z*L35p)OEqEGxpF&SnAOqZB=J76$;oH)zjG~4T~N0^l+uCYoFshA+3^05DU$??8Lq1 zuGJIW$)vsA=`f+)e%|)GCv41a8C562pBuCXjL}@VZs4B9z|jLcxo2MVbGA7zYsV(> zzF)(v22rHYGHSEK%6H!yzx;e~ZqI#70UABJQrZ^yYWdM|YzGG4wF0_KX+k!6)ud!+ zufHTX39;WXaDAZabLm&_by;*vHii#7P&0xdw_Ef~;$WjFt_>5(pJOF&i6~JlB(U$r zN!2v%ovE8pbSzaW*-hp}M=yrs>21)56|qO^+v=$4PpjHf$Txkm*P{#0Cf{Bu9$?Dz zEjv%eTy`qdx2B~zE%2rH^?Agtxc9Be+);N?k14^WU8IEyWSOYr1C{V{s8d z-ZY|io`OLY$I(JRp743P3dp6+Q=z~w3_lcNcIb994Xo0AmIfORcs8*@&T172g_|r`*On z1}g(OCzpj?hHg-BcP(_#vwRMIz#(T;pUfvm{slYOfIsH!DSqpyM|)7BJdQi5Kj&4k zLBHzk)gNrwpuNkL)_2uv)%6jLjB^FzK_*nYy9HPw zj6iu+P5f=n$RB-yOwsJ^GxpD3&xd-1x3UBoQ={!J=h+sC9qaU!jM|~qhh@L_ zqYpYuSZgD8tJ!K zPOS4SqTOR5VrED)#op7}c6$A}Q}hXRAfueyc)pchFs#O!u|yh%=SrUbqf|?e>H%qu z$a69_&iK*Ppk<52Kb02vs#&m(L?8fu&1PGD7_r!jQ#6K{*{PPL+C;O zbewi?qJ9ZYA;?E}JyUghXUu!Xi{@%=z(ZS}hc4Cen?g_h`Z_-LhcyckH_dcyO?+699%LTgFj`mK4cYplabDJ#|jrP`u%Ov zQF}YJObnSCbQ^aa9`+MNgE2x5?Kg``_`Fdva?(Uuq}+!S)4E=n#m&v*8Tj@x*-^3( z=p>elIv_X(OpvA6W*6m4xV8Ig-zwxG>E*s&8}t+AK!9Se9u=uVoo$NR9V=R*xoww)xS?Km(pE90Yuvvo&A@WPQxWQv$$bkeda14i~dv4PpGcE!fQ>NNT= z8`WY}Qff?eU2n1WZs0ya{F4`rufc|xnmpLm`Wr}D7=s(k=sd38i8+BIKmCUXJ&6nlUcWGRef`6?h3wP2>9s?I@B9^v3^Jfyzb(_RP<*~+`iJgZ zk3vJT-p&@!NH*loto$CG^h*dn`%7qzb+kZCks4e^$A1%k4N#NXHkpu%87;v{rYFdV z8q&c2KC9+Nip_&`i^;0oajoVZcO^|XOn9-K5`@6m`??!h%REKBNv=)2-&}b1Y$(m} zwxgV-#YZFgmAFq!a_*leKL>V48=6|z3hXN*i;hw#<@?!C_(9~typJ>`UtjScvl&%a zR1yA)=q0Q6WQ#utY_v~P4OZ~mHp1EOYV(@4G4(_3TzKE zIob~iYXNhhgR^a>!oGT?=__Q-$$8zwRj9m{JH?SM-+W{BF(t=nm5{>97$btY-gyxy zKTUL!&ol>u4ot{<7M$|pCTGM{YHC=`53>K}CF6A9#3nLuGX`-} z5Fj#G@Q|R5O|D_MP&|R$Sa$0YufhTSND{5g5uTeZC$2>IjAgq3TewlRx-||*vQ7LJ zRjR&aNI(N4%6a4kSCWZRMO}5MW_Fl6o5tO@j*@!9ILXbK1+t)E*nCdxFRH89Al6!T; z@%w}GwC%`^0BhlE0%vj2_Zo8hEI1US)B0dPM(%qt$;vvI@L?y0l_6)sZtYe~ zX%QN#EjRAA2p_fhJlrt$K$Nty~*#E)vj}D5jItr=gP6t=gi;P0PA&0 z^L3ZM3!3$jYNR%9N%NR%a@x)hS*|Xm?1)E%m4A3+fxI6;Q^PSf(i$fS3F)@Ul_Q{b|N zRgj{l&!sRjjv9Q9}uwrK_AE%SXgP6L`tIV~N(c z#<^;7cXK7B=osIdBq7T2TghH6Yx$rJBa3oEE-WOzH!BV!m)(=BsUXzCmrCjh;BJ!`NTuY4ffAPe`zv*V~A+jR>9 z)_68h-@Gf*j)rM(ANmuNNh_hyg&Wnz4P{vj2W_xaaE8`9FTsN-XKlbt$o{X+iv>io zK5GUBy4Yr_F2|)?I_@v`seE)@@vc$vWTLr_pbf~wqF^wS+k4#vL$qx^k+nbpcxh+B zhK7vcUSvC`a>z|fP-rQPVENukZ%&)lT$(s+5e8h*O9Os7ZCFO1ovFSZd+x`^sqE9+ ziR~TaT{pMc9ri7mB#WLD4HQkJE$qIHZHkAr&X@E_ z6wGNe$9Wzq_9$~>U(^lWy0437!lk%Hn+hvaLZGX}$oW~0+w_s})+D*b-7WZXD5p-X z#Wc^hx#-I3pPSZ+Wvzs{j6B+1t+e3{9lL*F86u~UpCr7drA z-bUd{nOH0#VR4DbtSA@XXM*+BXB|^{n{W!iu6s!(7+JeSR5|KA&5&^B9&v3dU%O_G z-Hi2h2O}s%T)yZdRAEtRAi$XEJW-5IATnbV5t#2i8~f1q^LT$Xu~Q^oVWVY*Iywm{ zy*U0s!WKeoeVP&7`q3>`e&mo_LHlTlpS$3szp=6g@ zd}qu+Y7AHnD+Zh(Zn3w;07Ztv4GK2m6=r$nlUPM=E^#~T3-AsnV?5WAvQtZh_aL0P z-eAFm&e*WZ$D7%}dhjRc$1;q46hNeao5Z-A`f6?h>m$; zs2I|3wG*k+%D^qzkzv$(e8)7~y5uBdd+xCj&6B(76qD?cDzvZ8IBZP}49P03iatqL zJX}jKLAT$ENR&g7X+N21-F~J6vix$CZ{n{n7#@t}#(p!V8OKbA3LWjrR>p9AUIuH% zl-Uz>c6Y(GSif!PpKkGgHwj>&IN%995^cl2yF6R(ajVQVWrnEriA7E6f~qt!LL>yBcP<8Sg@Fu%v$aOxNLoE?S5wS`Mf5?(c+9u0` zs;aUG2mTWCrZAej`F(pI2|20vjzeC-EC3?L<70KS`_j3kE;=Q{z^eo*ovD;iOOuDjX$NC6&B1}u)#fzr}$>)EdVIGDhvyPa!r2|;Z=#~jzamHb2} zL!g8M3wzSQP2V=Boq<^GyQ{=_|bAH9vC_kC5hn%3R zkN}K~?U@NwvEI)a7lK@GJigXltNuvFxzI?Vy3OHrBHz?=rXX+RkDhDc6K6T6GnV6o zdFbyL`6y{GQV!(XA@ETA_!MQIom?N$5roYJ*`RIWJ@e8`aE>xe8Jc9y)^TP#tJmIU zH@uh|{ee-IU}PEO_g!Rp!`J}1zGxqef-FJW&d5Gc&e?#OhoM?L5osASM`J^Vz3BpF z?tE+tCFD;ORYqsl@sc?w3#Py0e`lg&;#xBCrB4JbH^od*v5OU7`(}TF0-%(3mIdFD zhTY>71~SeT$9&Uym4;t#XkAf#?7dI%8t_B_AqU#wmnJZ#=qy;SjW-WUB<6%?yJ)Qf z+b0_lbGv}z7D3R5G=FW-iW!xtg3TO!jcqrG3t-AloC{9d!h<|4KOEi>^gMsmE-d6^ z+!H$dwe~}=@1@7F)79_3#UDsaWi5e=kUfi+kBS!0Qp|ETg#j~_g1MF(mBLSm@SCw1%B2p~h9!eOP&zqK;$g9NwDsl`GDt~mv9&K1 z%zx#m#jJL-_~G~Tl}n`Iq~lp%3cYTidY1fln;}=G(P^rs!OtSSw0l%}pRQ7I4{vct zuX9c4Xn5tJH+epIxCEQ0ve7ZS@P|<79unTOHz0KMUVht?Oq`d#W_#10&>3WqZDm@@{ZsSx54HK zy|X^AU6viDD5BD6xnvHi!v}M@*1{*(n@@ED5LH=7{Lq^y)whrgzXMN+@`SGPoM;Ic zZL)4si2O~VmfN6YC4Mg+T@@i0X#kS`)x`gIVg39`08?xBmgpR{DYFDP&V&G1&8AFE z7Rc~MO-66#za)Ar|MZ97qx#?<-0@#@xI5N=(t-d;@)y(K-_Z3xorHeJ-f>Ya*sCJ| zi{ok@c8%w}eSFzv*W(;$;e9F-Va>S!lMb+0aHv2}CXa?33;DOc`}$+r`#Mx-q#oat zBXP>Teu#OYK2r8-y`u4`{UgC$I8KF5aap;q4iYTeeE|MgvyP7yvoBc3Om_ps^5{;tgoOsbY(-}>VwF?z&7{q1QKYD- zkNh>Ho;i(MT)j}EJdEl$%tQA@RT`P2ZSab0poc8R-M$d<)wqUhNUF9$80T$E52Z>a zsi&Y@kKDR_2s#nL)6zq&(r`7iPngbX+ske+nWb(nBtBfg0wF7*#1d~99~3+Fwx(ur zR;s+{nst2YVR^le!(nI(Oz~Vvk(D)!cW{K*vcjRqT%#Q`Pisquy9Od~XlZcbu>)F~zT6gL&N;@TE z=XoRJ0}|z-Bb-ex5ycv8^Q;=-aiB02G84rko(j+LZi#a3hAQD&W1kShD!H1Er0uHF zPH5bd@z9UYoH~Z9l)aZ*7iYMVO;u(E&%zU`=#AzMX{?=0@>mMtrSnJyHh_VKI0nEE zfP(h&2PzLs$m#@GvKwGm=g+%zwhAC5A(qwUYBFj!fMMA$x6)s%j-U&o#-Fjizs|PQ zpg%3QFV4jaUFD0vU;m4``8UJ!HekKTzgVF~AwSd>PsbGbanMJ5%A=HgsmP#Zrux zULLCy5BCbKnFB5bz_nHa~Jf?L8-+HeJv zjViTUo+`G#zAV|(Wtc74JlEoO%%r7GTdL!5ahLr=274=sQh5DLLL)shj^x3yr*27q{$ zVpvo7dl>cbGEY-kHriIZY7nj%EUyF?mW~THg)mk7sc2Fj7kcm-Nv=(zgoI(DtVcUP4~2WtaWs*(WmM zl0I9Fi#$DymnsyhMb$DOF;G-?iMA0-X0SKZu16${U9JYZg(Y@n3vG+ml zI~*c>@{iwryPJJAMH3_*6vTCF+SMH3xXWLvSHiwH4Lq!e{{+bjdQzWn(K{!Ok8_eY z`wcXR;_Rs6&edx?aydTl&*O4e=@uS#r`6k%sDqT|dVt7J#cKcn~guS{0_Gt4|C8%2S6PV^{ zYVvwCT4Q1Ty%=@A?hj+8Fi-1OuQ-YcjP!0%ibSk_ik=&aVRF5U`?mU01%@2C`vgf` z+gdAjtifb|xVr-$`VK%)3WOz;L<7=MyGGkoqLH4(YD#7;g1}ii$1+;4>blg&rVrfg zJ%On3<0F~*$+3mxbWFaKeO4l6KYx^tfa*IiA#yzM%>cC(56s*%>j_GsblGv<-7i>h zY}F#-a{{}++Q)iRN#+3=oyw#F2S?fCk_C_XEz}~nMyqQw+px2^nUt4&OheUBp-er0 zR1bv^g)oH@@j~Ql9Kj*9#KQc03=u4E4(+=A?0%UYb$&5_nheF0I;rp#vYMKEMhW*6 zigZ!~^zHPDpM~z44T#-9_OyV>kgt;QDk*K~HQOPAJl*m`gxJ%{R+)}0I_8Si6kv`&IzGq7GX>i*2OlFvrS&~4o03gL_?rwhr?IEwB)a5B!2 z;m}qb^ThS>Ocq~&_{=dNwJSISSL;UvXKmy$8HiB}${q@4g79}$Y(6R~d^n(w9?Cq6 zbHV9uz(gd_PH@;pe}vp%=E;u#tU5=ilnenQ;}iZ^arD8iRmy0T>no~fzg7*Z3zI-K zNhUBrs$~YMt474Ag5X4& zd_z~Xq3p~ABUK#R;^KX65X&qL%_IudU)Ks(ulAwEd(;@y`tBBZgYEsSYA?7WwLQ+gx3MgfQcHNgdT^S`0{c_9#>u0mSDH1ipwpzg2}!=t_uKThwM?dTaMx8ofEm!c z=8F(Q8*jYvVSN-!fO(j*&Cr6hIb;d%dFsm(H8WoyvY7wI-g`$i)%EM5K~zMVC`czL zC;}o%5k(*(LMQ^#1%x0~K$>(2i2{OB1q1}8Nw1OKiS%BiN+!t;L z)x7rJdsSW!HFEbah+4LJeDom)sWSV%V$l8mLBqvB=POte(SbOH(``ufjkA9Pw=^dv zW*baQwefJi&|Fu{=Lx698$G-SWSl8e3+;-<~6Hg1FPztIg+b5 zdMaMP__~bpc2hO(of7@{*(2#dshp}92kDDgxkVt@BJ!JrWy2?XkRCqUK$$tY-^FYY z(6E$DzV;J$xYa?7`j~9yP{>a$elJYT>PQ%dUc)(Jn~!wWXFjd=&rrI^J#CB|3AZ@u z7|G1fEf^ft0lK4qbT-hgXhOh+3e0NcKD<|hqm2Ul0;m}12j0>k(o9^MFGj1h;;Y{Y zaW$I!VUwrie$p1>!MU%#BuCk`{o$O9qwob`FdlF*xe>T9CwMReQ2-|77<7Ad-(ZnOkVVSbd_fb!y$6mKFZlKvn%!xrr+7dd7u}P%mR8fOl#zc5H z&3w+g%N8rH5w{E2-qx z8pkyWF2HVBVM^5|H=G4aWN$t2^wh%dV?qSJ8J)m$WA~L4yI6HY31YUO7nB(W?hDWl zNgLhYO7EPiY4Ywcvh>0_VG`12f7J3?vr;ojU-fO@Ld|=yC%HPSWPvf!|4&IN;NG4tjmtLkx z{NO;VDkcqHffNe`6WqY>;5O+E(~vWI28yiDIbBLqJTk|nA9P$_@vDFL{y~=fc+$CV zk$|zJ`nqV5th9Jc15kjiJ&oUPk^poORM1)US$sEfH}-|bA&2y)>L5V$dn&7RwvC~j z;th|nC7U7=iWf_U8^;*n=)!7mOt4Xwq)_YI``d1Gb)`qygBs4aKT;7*J)!4K+0#{m zc>U#bc4=-emlwN z$M()qdtm?S`5Hp509X?4fE5a?em0Zn&l(f(qITF8GsP&AWv#Z*1P-_MrMb%EA{4ff zWU-eE4o;xM$JpQu>ZX_x?9bo3e^EIL;0~%aeLOW`YS9Y$G4t*VpY}~peqKxff##wP zqXXX#S~o}=4a0eH6irjiwX|^gYV1M3;LbfM$C4j3>j0l;q#rhNpe|RT_vj#Ue&YPs z4TrmVs8CLz7Y~+H$2O>A*JDQ43HN4lyp=V8?t>7d#cXwpI}46~Xi z2K??P=p0E<4{nanOOeCeL()F!F~ty1-AJkVEHx8VUQr$g`EXITL<{5?{JJ>ius#qm zIA-fgJ}Y<+if_RJL6RZ)lHAh;v-Y&^!&(v(#ifT)HGZXTMZSwI!aam5mBKzJUcFT0 zmq5Pa1mPnwFfjZPV92NZ#01GWvFsMzH`c-azKTaU_Dirp>h$IqeDy1hG^QSzIJ zBsd-2H^@8B#I>o}9{;`vaXJ;b_~?DD!a(J>arZu%I#Rdh@!VMP(GGsa>_aOK64Cc8 ziD}t{#b#d%P-Ryl zRrG2D#ej7Hsk+5<@gChNcfi8Rni6rfC%pz8u!y~E1$iFvoGR_0RLtd~ z_Si(A-#PaK?upNs<#1DN34kkSEDh~x9)!2;B^Hhz=u*vd7v~hu!CS?Vv^EX3jH84n z{gPrX$)p}55o~lB_K+u<_;%mzB7i--qF!IvSO|{yzaVV0dMrZmo1SAP7c|%!!gs`?MRb}Yk=Do z{f6K!(@<_2E^6(ub>BII$2Tuil()~(bKhR`k?Elb-0uMx_|#KC?G6w{oEZh4EGwrl z)&2Rcn?rY7B2sKNq$t|S}3n~+J_UF zRb%XLP+8YfMn@)iC>DE~CMbX)!~NuCoozfP9p&=qjV#N|+le=FY~4IEABBDW>R=Lj zEh!|`gn7fM?739UPY?{~7*R;8Fe-vfX~9&I)g)WZ*NUob6Hdd@w$FebtSEYyz+mk>1T<;`ayH)z~%SrDV@C(|=}nw>tn z-gn^TnYtmI7XgWdhV9mvKKRZwqvli6`s~*8O)q`Vv@F{=bt4@F#fx zTiE_v19vQJKc3J1-P#2B(I4yRejVAd-ys9w)gbu$aDN#nk>Q5{(TLqFiBXN%2|Efw zHAjr=uEh`-J1!v@O7BoK-cLmB*&>8D^F7e+qxUX~gzHycEOJV+-m7d%CeG)+#t|_S zY6UE(zq)B`672ciBPCjd zJxStbg8;P;oe2%x96Q^xi3y4XXhf><4hKD&R0-l_#D0P-jx%88t^I5QPaKmTw*!lw zsw{acS7_4k;@wa^NkIeegkVC8NPC7~PRE{6&*6%rG%sEjlV{`79r+VI3=Ako%Nx4UULtMpHSfWdW$7o}2S|}83I7R`sH)Jqa$x34gPcS2cd2A?%JnL$; zJq$OAnyG5RqF;ZAvX7oQ`jVYM+fNW64QmplGy2;d@l7`jCaGKxg^!u@vzRsvK2AglazZ}XOjYWgSkFp_ekeX9tfP_b6$tgTncFNEfGRT356XAG!(o zP0DUxx2!*R0bTtbda6=1;?`QWFu=!Q!22LCtnOEiPlpvNxbiK&F!h6dBQtu3)10|B z^cn94jdA&`5<9Qi*eyY}5{ML8Ba`Mu2Od81z3$Als%5l;J_RUF4nsNG6F6yWa-jN)WGmOR)Cz&{wM|l$mxn0@qixfWMCVZag6-}rY_Numi4ORQL8^hqkoA)e``noj>Q1(5WrRJ-z22~74=_kq+cPPK>6a> z9TdQ3%REu-8`hjP29)UtfMS2ndM+NqngQfW{>p3!Pk$W`+-wT} ztn<-QHG0aL_0ZnubueGaBTD61-p9>d(rIXfw#MEu@PW8-fhSug>=6NDY0fu-E`M-1 zBPElstB!4Cy8HaA2!S_aQS(|xg_4ex1XYer>b9V{;(LIu^MV;+l7UKGz)A*>(39_Q z9}Xh%GJtteg6y__&xl7%w>P~Ud=q#KiB4^|B5a@pF2JSe(m@_)N9Wz1FV|22*n~O# ziR3}o1yln3SnUtyAYv&a9szfE9=2M-Tq#hbj}LB z_?|EnX1>6__?#y5aNT<-mifzn1>%Fr{KXIwd~TkxxNA zKh$7CR|Q^%__{7a9fWjk7PxCbitPsI|s`} zlg?O;LDo=e-6ezC4E(`ly=Q;x#DNkdP=@@UWas-E`BxJEr`Y-byy5>7Sc|!OOv!umzd$|1gPKIrCe6_K)e&q0Rs*qa~+K&_8~ZUh67q(d#Th* zN=>mcx^IQ@H0#}GCb?1v?3{kix%^OrxVmLiunSu@mzB-Ei;7iZlX&GB+AK^&De6-W zd*XP(yvRWE`pzbD>s%TFc+)%!Yt#Pm|H*uVl6* zl!H*Y8&42WvDuj|D^>n@7JY$?l_|}pX0yVqQ>uP>jQu@T-fG2&fyrXDwb&Lj{@o1r zrcf9Wn@CWxm~^jdj9JlGd>sE__wg8%bT4pwwjs(sH+%u=pCi7hh=5?}(yHxeY&pkd z2Cm<*o7LM8ObfhIH$Fe2U__zn6?f1MVOo9c4tKX3wZA&-6vNk0j!=puPCW}=jGNaB zis)9pFc8^w)jMar&fIxPHvDLGYQYQ7o*m7Z$h}`uThk^E))!|Djw9PcskUS)mVYlF z@My7~#I^*8B{I7Q0F(FtTcd5wK|7P;5+7-OMGNC>sS3%+Z|vWVA#~NoRPL5G8-|831mO zuGz9y-Y;Q4cnfgdN&XN0HC_XoGFJbe`424k5Bc5y@z()q!U>+5*T};MeuCz>0FZ;^ z!+&KNKT!EEBB|n&!aHKa%V^v@m_YRt^gyf?2$g{WgPWEQfZ&RFrq6i)*rbPxL0x-e zBX7<2YHg+MdxPe!)*rmqT!5$Ac?XJTai9V@xVhueGyU?Iw(TM6ZYiH`*&w)a}g`;)~b0vd>_qv!4mt2mfGO7I1uTUDH|3mP>WjdJvqWuo}; z>NsRQn#oyDOz>13RgT4o+q1iz@RN}xZ`p-`DkwWA^yE1yoq`Wf4O5@TSuX+Ibol?a zFU&t9?=B_KOV~=%_YUy@0iq?%bldsM53s19edyc{EH?+mhf z>SM~EjRJJ0+?NA~k4{1+?K{U#EHF`(eT zrp5o!Lr8bNWqtRE*^r>~nsgH`SajY!zx`Zgdi;6JuClxTMTKvxPOQPExo<&W;Y|Ah zPd+in3{!kVWobo0MRfNTua7%NN(3K6PD)mt4#j(!Y2U|-ljscCsL&nz=Y!_QRV@xH~twtNikE)Sq>>hKIs^T z@SdUqFE8H<8<2^x&Xzp0nJ%sH1ERc~SIFX8!x8kyBjZmPWYENi*_%r-k*MkKjqONs zZ3yNQ`Z?x49Es?#CO<^G8`D(`RyeG>NmcT zH{WOPricLnxLs4ly2SHStVoPhCK4C;*QNnB(;u5=(EGLQ<(f|b1&CXjy2lN_0HLBVMX3o0{dfoCy7BDwG4IOX1YKf6A0sEy?jiDlJKEn zbqWp7E8^;nKmmfrv9IyoP$$3bDA zaX6ZSanHqydDr4)%)?`_<^G=zU4M;RsN{~3#lJ_~e_V9`QS)B|qbt7$I=@y@{2P<} z1yn*cw46Z!X%8o|HT#n72FS>FvR$VDyA>t^)d6b-uNr{9AdkTpp*gE0OIbMvjej`N zKX~BNc^_mJ3C#B>&r;n2kwvK8=Z|X6cxGcQWF8CmzjOYop(13%cUh}CM~Gg(!SQm( z9K{v&(7LO4PQ6;WGgC4Xc#Zo>vRnw$tL&Q;7}Ykr%OTOIjFrpsMKPV{Ucu(go1H?F zJUOFi(rZ$ux=V*5H^U1btU30YZE2nT@g;;@Q%cNGLOHs~z;8P$@B=Re_t$P=L{zeN zdSP+7xd$dxUgOO5r1#L8$44$rwYk^xU)>xJ9;*y~_5t2HNv!)a{DUSiCDZzL>a{#57c9jM)x~M9`~xJ3-%FGBw`ff5#}V z_r#3e$ntPs+Q{A#;KF~q0}F`#lDB3a3OKl-Uj78lXQVxcoy*<56O9yR%W=K4z5ekI z#rO#*$3ahtr>I7gq>box4tDb=&X>`*?Mkd9rLyC78#=FVka3zRH;P=F%SoDE954<; ziS5xffLX>?qi>fzJ}&Sp48ke4892J$ z6cyE2I>}V}AxMBriPGo7yG8QNdoI9ec-kq#`;n^z^YaWrgAp*S9)9IrkK_3a#jSb> zL!KAREIP)%WH{@HR}Ohkql(i>D|U<`&jYf07BDPFh7rhjT&63L+blmp9{@M5WFm_? zted>ZY|HwRqf~X9!wZi6wc2HM7!9c< zvG{Zu?lRRB$h}=p$R+;j*n0GEr||wo>t!~|Pt^t0Z^>O;>^w9KHk9@qe!SI9&z7}7 z$RwEk2+m=VyvREfW*g@vw!)y>I#oi^Ok-c?8a+vk{ZOd4688aYm9TrqT~IHU;o(H8 zt2|p}68lRTaN-_9Xeh6H;@KpTvO}q5e>_1E(z2PLmX-hcw2(kn;9b9crX1 z$8&wM<-1w~CqJrT71HkTJvV-;XmLJsrglIxNMm(lLUBiRiCFOk%>neK#i56z;?J+L zg_p9^KZ#h`xB766Zb4w@5W%kTSql?X>8%Ahayn=)dndLu5XJgKoTX_bLqK$BIfE)a zY*a!3$GK=grWThQ|MlBU<&^&va|zNvZpNBbutDr|Az#hc8}J~%rI#6R9Hdu6Wp-I8 zuB!!H2;o!m=Z;f0o3$YvB+fZMlT`3qxi;KT-n21*vX9}1m@MUXUC=GUoep`1vT6#+ zPqU#JKh->ROV#IL>zeD=)@;t3IQgh)B&7{PZ1|C{3YHY_mTklw+4SZM6Pr zn|&HuM?Rje@9-MxDn52rAfEQlj`wX@n!!$lY5N^M`YZDN#09SHA9R}Gi^ey_Zn?}p zh~C6*-@)NW-IdOxbj>`w7!TI76}hYKRf*ijy+-X6iNa* zw=pmysa9YN5WLP!5wi~CM%)HDGBIyyyXQqm z_ymYAA@0vn^??5A0(P$Bo3$__bNavt2Q@ZdUp?UjZNz9D17_2sbz4qmr!73>a6F&Le z=iQ1*2H-CPx*gH_o?k$xY@19JHUz}w`8I)*EhXoRhBc5VkLv($29tkiUaj_R7LQ!Q znDv>t3!U3kOfku0**)nL*B5@;=}S^z zmMYA5lG7&Vk|niZu2I7qfCn9|^_o`p#a6uDh=<9TCwbMp6z}8G0o#bJZuRS`!puma zJV#44#^~?&)5h95B0bKxu5_Ax z=(+^r7r1p#H~-FwJW}rkJwPeR=9ojc``O0f39JP`)GXyEJM37@$(RMqFRC<}UV$<$ zOp;gJPAsAem;(mZ4EQ6`)nVB+GHQRi$(|!(4m+x4{6H69!R6rMOc#QthYO~shhchN zS0==pvx!{4*lQ^N`ty9~sYITH^eRK~b@thsqm)?1mzg!W@Vsn-Vqf*G8KOvYBDJ7U z_1(PD=1YUQ8;mr$eMwZj?YV3(($r$vt~J2hWkJx@Fu#%>ydps$#XY8d3sO>iWUwi4 zcVzElv`WQh$Pd8#{HFVGW32@7)9wVU35d$V<_&m8rBd3s8ozteM_hhE6M61Y`< zrlRf`e72{up-+y134^Wz=r5-o`wd>=({kc7TzCR8I z*xnzT01gJ&1hCd$pBz_uet-J=z=28luNg?@ic%<0S;~w{lj6U)e*c_eFVQ-!?2qU_ zl6)RoDZ}O;Wn#vEmWea1Ee4)E5=y;wzoX=bCD*MMW6woKM3IXZdDimQkDRxipAaS@ zA-QZB7!~`>gr*;tl-*5zF8PH#$lN1m-0Eozdk1C|0|%;LKVcwywrLZkab^4BZnIwI zv8scZL5JKF>R{Cw_itjmhHyQ0@iItBPhj58@*zSZ8daP5=<^T~YZ-Q{h|1~q^5IYDVIcbzkm0y)d98{s)^PAHpU zVFg<|+efbhv!2a=ZmB`&nqIO;#w_&&Lcr3rtEe0}?@<0OnWa1WS=G?>FN%VK={)q? z8`sD5RA&ml&XP-p_g@owo||7Ctd%G*G?`(DrI_VG(u;aYo!Ds6Hq=z<%bTkj5V}NV z?{fJ~$ix+$yB4P9W+xhW3s4?|o1awr=WFC>O~>j0ha{h$ApNZ=ACf3m?X4(FHScs# z(5EVU3J+GJEMls;$8P;KgX4q5`$4?h?}u0D z-l69xoPe;BpP(Hv6hPk_O<1f7 zPp|Ygs!u5Igf|+jMD$!$wv;;M#(L$z=40N#7W0KoBi@XuaHhD$$ZnConhSMhrwt#l zFwZejU@78=bfM)heL4iX)pddm2z2>?)F{|Sw?#df&#TX7o2XU^7s@KB>1#=ltjQpq zpup>XjfioLWzP-jKh$mKyg2N((!pY1%}jSRH~gKGWALJ~;{|ZJBVHHlaz`tb7^Q82 zlv~7$b**Qvz~^xyvN4JkHs!A`_C@*kpYCi1>u&S%Hh-ct5X`&Tvv1n6gG%rI z>SCjMXNJ+0?X~OIFq@T=Tju zUurk+!NO8aruqq-KiCV0x;+5*z%1R3JLGdBoGXWuxC86$gY?ZT&8XgR2;}=~8Y!(@ zpKEfIhABNQ%8f~>I0U}<$pdus;_U4rhWE@kjMo=~yC;c-9f8ERs0KCsRalr{wK{Ih zsDB15ilDFlNW6GhhupI!cA(NauzktUkuJT&Zqnu1rJ3zmo#Y$Ow^}r}0q5pmNTcmN z(zo}>Ww|bR@tzgeL3GXbUe|DHU#)(-4 zvk9TzsLkI1)){+Bs=}^PybC)!Z6jxNgUVjVnZ$<62!zvc=Z6WmSzVgAl2%V??6g|E zBRx|yRiDUFO^0;iC<}&*Sea}%*yVkJhDqn9xzS~!Kyhd04I55!`d3tS2&TRlcv=+f z^oUwpQp(~>r8BQIz@&5!v`e>q6O>IF)rslKBe_8yJ?kS~#3!`M2W2QT))T5y8^NSx<+>aRpJ*H150cCj%vK z<(>}~W~RF9&V`l9uc~)Dy;(mhHWJe#VzpPu;%2uk-k9O)(e3nkKc9QHvljYo>Mbx` z>4BWJ0VqiDkw-Q=)Y4Kz!H%UvI#D$)1^6iTlh59Uo>hBzfMf%|axKCeZ9#Y+_q{Na z9T2M|KX@ItxI5*OK#r5D>cUjehIspE%Lv)E^k&U@%j669!%E}7KIJvkd!UT%L2SMTUP%YvE8zY|ApQk(1uyheQM_N=ZZcz~yL|K)xtti9vPS@(^_k=KVuCESAJwG3cMj^6~hdX}uaHo`C} z?jD(&&qQ2qmbD{kq05HaTQBOQ;SAHW-<4Kzy0CjsrrU9PkL&|_Om#vY=5?_t(H!LP zLHjlb@Frri^*4E3CFx=5Q&{Ck0ATwQG+ehnJvK!Y>R+uZ5%R%WpS8=)7ep}wznUCd z&)|FCL)~ErRyFM8guCwSMvY)|!d?~OiU)JJnGlu5;kRi!9^aNS&*`q^1<{*@PpYp+ z*vte4W45g(;C)iTYP1?pJZ7-&nOZ)>*^x%k*1!w`cVqyIPb|q&l)k!Ly6nWG@e}mS z;OoQpnOx%&)YJ4mjEB6iC~zq$bq~VgjO5#sz`q=<>mf=_>MnRhQOoJm-q9I|t^^xQ z58T|IQII{~rz%{sS5quG)V|%w>V-^!J<>hO9~&Ui#4YFU1`&143!_Du=<4Tv1QH(= zfG+GddCFax(&DI01k3|+8IT{2ra7mvb|cfm;pGqfHbw4ZjhOPLCk zkZk4f!W|A@iF+yuMM3{Ovjr-I) zLCgL{8$X+czMKxFi+1%%hD1L=tBZls4h^iO^4v&Tkcs zj!V7|-e)^AOFALvJvbdN-187f^-Zzri(S7i+Hvp66%$JLADR z8zy*|zUkzi8y$PWd)JND*5xp@dNd4er%O-jK!`eZvni||pL_{|JyvY6;7R@a&|Ce! z2fB-TEeuHWZqZ%cq1BDCIRp{Y63{!tE~Xzb@9H`qG4*hN8BMsbn}LCaz91;48jKn$ zF=_bREEM?6)PkdfdG3kuK5|6?_7;@ZMS2~l#_8T&HaGsZbp}-_3S%6zk>FuXH8USR zPeu?HQYRv!2BRELQP)5HYV*nIQ=mIHV?+s`+?LVks^uur&UwGg@q^u%=Wr*QX}7t! z-z>CqW&xi4buM$mW=PD|_WbF`KX_}sbUP4|1GClT;Ui_XfXGZU;7xqbYm`dY)|k@} z#JI{bNE060K7v!f4~!n{@2*>4F>*+iNl*XOAQ#~VGPXJvE?Lw8})-F5b*g|Zu@`t4`(4JjH=%XRei_oTrD zad#ka)aT_rFg|KzmvK8jJ%yJog<`3NAh2J3Rb5u3b!i&+c)>5Lew8!$xbPWW8YjUl$T^$W(ZU{3iCIO5k2?F;!$rI_Ri+)*G6IF!pql-IXbofaBuFLUO zayM4i;YZ#rW1g;Q>{*Kj5=x1a56%#pTt{`Pp8E+lo9?ebnrp%R)yj^h*CJZgs610{ z&<$8p;81e?h^yoA1%|S0Won7HL=fCBBX>@qX=j8^Zm(T8)Ytlq*%w>wUvyfrRwfIM zDN514O#t8tj-Cn6YhTdMAbvi_ff2ypNh!V$+kLV3*+Vn_8Ml}AuUv~kt|b`&M)3b9 zi~#?)Jib3*1cejjbb(7-a6w$KW0r+2xz^bvvj|(WZ{$N&hbT8ITcnj($eN8A3{Rxtjh7jHX)rYJb5YsUOuXnl)(zge9KAm=TUk3@F*=L^??%;In zzv8r_A`6Htg0cahd4(a!=GafrmWo^D*D7me7w9Ys`Q3NE0bRsxG!o6lbc1P6qN z36}=04yZTGcG?fx&lJ?X6Q5s#kcl-U1(fn4yS%s9RktOF&sYfW@A+P8% z)pvB952`I2ZK@ZFTPpy(togqFOFZEJVp!n6B%c3&6%7!WO+1b0n}oedka97{(FJa} z1XZa(6u*YZb-owi3vQcFdU%#O)3)jp2Q5p$bGZ4DVlh+;Mz*YIcXP_vR!(L1#%Tu( zp?dcYHQh-Kh>yhE`CUmt88IHyh2l zd?8exj+@KOa?plPu4yFtPu2~9rg1`WY%^7OZhZhR`m!XRaAnBl$$b2awXtV`XTD0d znB>*Hc-<_m8F8ma0I;nInz1CF4}tvzotOp6#?ChAEvH(b6k1>bu&3qQ3=Q8wA?{n<6zOE$bV@7gN^SD%DFQVHCh&Xs^n}|3yJ|Em zqf)~GF6&oJqP?Zp2Y=MvJjEmbSe#aV%!}u8M3!Ty%&xX2MA&^xnG{_5*g$uVBpN znOoaHbJS)o>x@=nn^%%%#fmI*0Zi(3(lL|keQEZLSP6*K8tSgfbKMO+{ozx`rt*Ppk{ta9F9&#+1-T(lc(m zr1vtzr{#_@vjfy~H24D$oslc|a8!kzq7m{Ih*<)15=pdh_CzzjEqC8W%1D}Ao~Y+v z%(<^S=+56YjnV*Fa86*5e$uC~Wv^kF_0o8b?ieQ)1B?T?q6arwrQQ?c&DK*2&7Cx# z9Byr=M;(DzSQ*q#zr!)<^v{HsRqEIG3f#UGaen%QW3vh{nr#ro=a2$XZy|S)2mGZm zMTNn<=1ZN!QX4amiQomJFkq@ygrYo+?_`VV^A_{g7LJN1>!xV&em_S@ieaYg^U zKS`FFrp(KSiP;#+LqE*e02jg=BoX+(Z#dVmdVOlM&)47B*uXXPh~|B}exDrV_41|K z)hch3b`|-y+!=GjwKrwXqq(#aV5R2Vfovyk1-VSUC^(=>;JTN11fbc;c?e;|a6UIa z{Kecf4FEe&1?dx0hPiA)uC82RxhGDx`qiHlg+Drafw$PA8iO#(usnC54we8tXq?(_ zQ`jb9QC>a*4`S#syy_!{sL#pQP&LJ2ezSq9>KQj;U>{-@zHhy$O=Zu0R>7Mjwl+yq z(YW+&hvI-9Ca`q)&ZEw>ul60*wpVfyPf5}yQZ~5@*+vhhO^EF;xwC@}Ry+nN4}OB` zr2VlQ8S^$e0g^0Q;N&}~v|<3R;Ga(S9Bw*v+3WbhcBe7tko8cbUuz4c`I&kK?Mu*a zONlYPImngQnK(UskT^=X5=82+AJRn&qS=0e!Z&UCr$$7nUpl@Q2*taw1T}FA1b<$? z4L-b~6bBgEKBucHMe_IK4Xj6NNO}3qW$56b)c&99H^fG)^8~m^`D&$&)Nr z7SVlL56LSmxajhbH{#wTyg{6)E+~tXLb{R>zMV#EHPyA{z~;QcWX}eb7|oyG6HAR; zpAfSzpE1Rv-sC%cov?bOCQ}LY(-Af*(#$_Pt7Z)EzTQATha5SoPr5_vna*gxh(3V~ zylVdJaQK27ChXjDgsIE`>k~S*D=%}=Z>IwnpXe!Dm8^Kz=*oxH=u)ttHp-9{DZQE) zm*i>UJ46EVCx}No46n79*KCX25(g$UD7wKfxU@H;DaxXC1p$6Vbbawso1yDTdOSy} z{Y#3Fw2Xpt8YP1Nigr+NvU$ zPXN3Y8B>Cbu!$gR>vA5(oPE;D-(|fEDJBTcQUj0UI!v|-FY^_AQSWszTeU|mz_{%e zkd!vH0P85j7{1`-FR3()QJh1gv>~!a_b#IQ-MgMQ<>d16_I5}hxr zO&2QB&Yr=Ab(bbCoZdhEC3LBIoKpZuqeISre&e)c?NSkQH}ok<4ELn_bSIzq#so)i z!}o|{i`b(oY(*JC1RL}dQGmnHDG^{6f{Si@&QDNZEFmjI z@q1yOuVHA&%)zMe}^*|nFmh>ztxuxwvmT0wSGP=wlvQY3c21-p`G~?bOU#kFeSjU z;Nhl(YVRXS5f@&W z0V6%yhDkKNL9<49$O2j!J^i6_ZZu<^Y37yvVm^qfqhp-Gm+jY7_Z+8l(^S-5pBA_q@2L; zWoL}w)oapCh7E}&Y@z^QBpRxs)pV`4lK|*HKUZfLJBCkyZ$Ghl*SsBW$nIH_t{t@( z-deXPHeGrc3A($gJFN8~lr7DhR>TjB4>2d-gQqMrNs4M&^kg`1vP?Al@TD@{a=n27 zxIK^%X9xH6es{?X`6ez%}4>3+(cfL3dvy|;S1 zr2(T7$i^cg|I}Kvt{sJ$z%IHL{r&Ze$Z4O!jTF&Q_ zpCtv5&i3q~d=tnk0NvXp%Xgsjug#r-3{^`qkxTkl=O873r}_nq&s7?rqF%=k%;yW5mxRtJrVdD=Um6sdA&sgF(#0Y42KZ zRz%V2;|5(;5H1apmT?Xw?y>n@!3n#>Y*OrD&NR@k$T(8F9SUv&yLmkB&0@1A6aZmJ zDt(u<4f(#|v-!XyP`w!uAUQm3_Zo2CX(;pARw;iz71A-t?n&P}+>fBg6RFd5_HVmA zb-oKd1TWcaQ+N1mOC~b1+vy(+7!D)ltE5-4kc`5qi+AjUh4-T!PkO(x$U_z$iQNc2 zOeO6hI#x(L(HOmlfk~m#*0?S^Xw=8*oU&S4oB1x@+1g0Q=LN7yV*IO>5q^Z9Szr^6 zsd<8xP1i<6!qcAd&D*v2^V1ukB{?28k0p1O(-&a{~pU zScgy%eB9K+802UKg$aBwbQQV-Vh&ogO-moZGf&DG7& z?7oXiEvDgDp_41>yHZm*kkH5Yc4878>v#(`6OI+XwY$0+*=6%xUo|%aCv1AMRN4l= znifW9lW-33Pmwnr6rC^`R;>8d*6=2i@A?WP zIG;WK6(q@L?0u^dl5SrJkMJ%WQN+D?bLn`gH`^b>XCj>ha(t>cUeK2Vbkxr#*6VP< z&lC02>*S>#Fu~pxU+RlFii~;Y>z>Y53LUvv_BkK*0 z6p_8}Qjyc&A^6G?>{xvQGMqrmo{pzV6DjfZCwo&X@zI;%H!a+ry}zp-%(=*A z8pHgO@Al9{T~&$c67bzBLXH8e6G=eFtuYm_owY)hxGRW9N<3$g`e#}EH?Z|<*?+$N zlN9h5-Tk;i5BgF7n2V@T)Jq5sza^-7)5fOj@s~6WHoOSD*?I0F@8CzW6$Qp-ckx+h zed1gFoFxP$PBlJvs)hV%Nlk9u+_@C~qS;U~W4fWZAnTdRA3KMDQEYv5a)P_9al`_q z(eXhDca^iYdW70n#zn+gz(of=BS<*ZeO;}bv8wCZOZ@WO_R8e)#p$Zn7L`tlSry*$ zr#solX0w7GNWWT9I3I4In8bl~3lv?4X@-i&=GmH0afJ#qjxjG$f`~T#%f&;}@lD49 zu0Q9lz_ixL9LF{*)By1dPy^G8{V0a5!|tsiUT7*V5ECt9!}!IUr*28iqBxdQ#|lrc zS1b?chzG!BQ}8I+0-R7lzRtGFK$7w&gEuG=43rrQ7kBlWk#?_XMjKh^QHSV;t^S|+2goUPb%3|$aMA>nX(@{(y_oKoz*GUh{ zDoa8?bBk{=KYI24cJy+vZ!uWE?@RpA+b(aIT4<9CQ_RH;2e6G(w}hz_H0@$#Ef70W zcDrvg^qg{h?yc7eeka^_^7yayiV5eIeBzKdrHOT`-T)&Nn=5WX zroc6r=Q-WPV{iAK174#*x3!BK9PVPpHx(@y~#9KIN2Nue)I~MzD z*E@Y9i#;hp%~FzGdAlpd*d9N)ZhDr%n9%h%V_~l4$wUk_ro zBuOQJMcf%RqBL?&h}2y>8TR&I?dDIAPF9<`+Xq9^?zO3feE9WpStixOEcx^?L)h*+ z{P4wa6b}wPf@ORSsa9N{K7*yfuzo*5{fndr0NHIB>Z1!0 z!*GvYN3IQGt92!+WhFFQ9te#5KjghvSd(AZ?u&vVU3zbVAYDXyiHLLo0qF=z@4c4< zQHoRn0Vxs@kWQp`0)!%6dhfj_ln@}q{rul|z5Dyt+9&H;`(PjJgAll`B+tdnGv}Cd zjNiELMd8=e-OfuVp)H9`tJ(XXo=8n3(7kfkOO4N5F%w2nQMD*`RKEsFiQ@n3qjnER^yfR`{-EC@T%Xjq%+rV0-=hCZl<)9(+ zizf@?l<$iV9Y6-7SI}X~n~xA@>%VwUcyWeLVYrt?^Jwy$3en#8pp(i1$cZaN?Wum1 z{POuYE4K0)dI=rsyZHce4wpi50_TOE6aaLs!9d=+&n-EwM_{Rb2{e^z^1uqdJkut5 ztXXG8Up$w;{+%}l_j#wlhPNl+cr$U~FW%s#B>L4&+L`5SeP=!8g1K@Drqmcni5D>{VCm&$Gdl4m#|M^xV}1WNM_#ha z)M9HK_RTB8@>o&fk8xL*4P|otZ$iQH%RrF>$7^+Ez}1f0B$c5kNnBn|Ak2eN$-MOK zIV0YB5$$!ca!`ZZS{obNu!QqS?(SQ$0}FDt;V(5nePnf{^Zhk5ZcMQ%gtPbNrLt1WReGDznCc!EfkBKw59qOL zy&pt=xuzaVwZ4`Xzb<_aot^3zp$c%<&r#RcOhYdXA8Rh22HGBNMoNDtSd$>P!H?9B zKRmU^%EqF{kCFR-@dPq~EC;XAxw`UOB+}))c-uI-TUGTYDDM&gXres9bCze?i8zX< z?l|o{94q455vaV#f-rKU@JktZi3VS&DWK=#wk9hA1oI5+uX#v^B*>NM=s~z8UO|)E zUi{OhrDVOwy?16Ft~VO&`ISn@+zx;(vd>JT75_kNA%y1L-rjW8>tx>6PFML3hT_I2 zdQnin+-emBp*rb-CD~}M04Mizs4>R{Ke~UO9kdi z>J6o?<+FxTh9=b`$W|cxj1>47;HbDRfwN~M?@bwe=f!_s`h{W!imn<__;2qe8#Tby zS%cC*-hf*&&>p*b4M$)TyN|=*zj(V`jk+nFpv(t(f1b)KyiPhhYYN}ne$^|BZ>BEj z`9g=h`$JMEOg0_uwzRY~wj`jbmdwDZobV{`Rdn5E<2u3bm5OL^dSam3Ao&Vc0XN%IfjN2na6Lmc7?zv5-TG#`arD!@yx1PZnc*ml97 zEu9CTR5hS0{~NsiweF?T>OL(C1tw<)j)fZ4fG|Anhq)EbenD=qmFrNdu`Sz#P?Zal zaohS@r72ZSv*PWy@?7y>ul!+qeldMkbN;%T8|K*s`C0bE>{Z(b)2kG-!Kj4Gj8nPyp!K9$}xNu>#&*+YJeq+w|sp9|h^^TC$Ft`iF)qTiGbv`g!t`N-$ zBdc{5_mf`W-m<^>raAJjTMHP;$lEu+Ks!K$>;FgFs;?HUa{xROoT4l~tu=$9q3nm{ z2h*wz)W!k6c9E!`4bdN1>h+$FDQ)syriuFrtB%wv8s2>QQQ3vEkg1i_Q3jV>U}s;o z>&3#)FaJT&pZZ1oQ_164=O&`l|4kd^|Eojd|Lg1i zpMlcIUxpr^p>$p=w^s#@s3V;@(hQ}5UF>b4rl#cC>W8L}n6oR4ZTKu#k@ z*Fdx0>+tur%QSXNB=cIbuNqg1aD!8vvr=z^YM8Sr$3sl6f+Q1#*KU4-T-9m}Q*Hm0 zpR1h#-7}ki@oaZxb2cL7Zi%XA=#+&SjY5&S%LI;B^&hd4D0Yni8>mX7tMI{#ezSvm zrI44;a15Kz^Oj7{cISwnLf;IlTWAgWfOIAzZ++PSx`bXDC5D({&XI_fZ~4@iYeTwe z`nR>^ared-hf6$6tSw?FP>lv7j3cx?xIT7DAc)&x?;*EJJw>vL96ce{%gJ6#q0#rs zdYjcL(m5}Juz87^O*bVV7v^#<%cj()H%dk=@fpk%ibf zza7-3q3#Y*1?Ji$P;{tXgIv=CQBmV?|A0LnQn}rcl^DU)2MF1J|KraKy88aar}UR zr6u1Ae+~00rOYcJ^h;N4S7_o|fFfVl|F)7cGk+HsOAQ~sSD~k-9tnH>oPZr(qXNC8`+tYs`y#RM;i3;lIo3jdO$w;}2(nRNK9mGl zznRSYU{@SM)Y_K38g)!e;x6IrLDb1l%a6A=%fr{16~8!t!m=r_TZx`V=)^)Oz#Ozvm1=Eq48=_v=vgQ>y277weCg@^CxB31@2kL1M4 z7o3`0v{%0@8uzk{o2ox}OrT&D-*_vX+cTNsXhWMUyYwF zN7GBDB|CYvpv%efQ+oE9?|3%ey7eU~X__Etx&pBH9mDE=-(7k*%0tftE_Eh5Ec;H` z#`s4@f`W@*l`zSY3A_v?gRhEX9^iPZW5KyA*QpaU@6#l_)&x@7+G$c-e-uGhpz!;^ zYE;`viC~$u0 z#K}xl2%R&>zGyKnKeTC>Cr#KXh`CLZ9N)3ca`vFb4BcLT^R2d7gkX=I6?VQT#GQcC z;(R*u+v}m3VYc>9MvW@mKHfUPukHFSCQ=Y`0#dip^dYg<;gwUlU+=Ms&o^eG`&?BE z4D0%dYhP}h=YbWj5Wd&O3~8-^2rwG2dTHIL|nJ-0$BHijGKKcqQ+BpZ3>T4F51)_KM)HpPb znfelq2Vl9d2bkjZA(Km*m&XPdfx9h-wNYaf*W?Mi*lyS1hR5VI(gh@-jMk*|eqaj|Nl{K)^#<)2gUXKf zE8NH$PXV$SNAwr3AOQB_Gom=2idmM=C^E)*-~(QgH(*VWZs|+w`{3K7B43;CT8WKd z%Pye#02pfb&Ug!V3TMFEC9>S5TUfBBNNcFN;RyYYa|6;np47HK`~a^>Y3ms)xDd!@Kx8(JW)f?1t>{$e?et(nvCuIy zTu0DMA}V=HIiAr*c&Jh-`RJ zNKKh`;hmRdqn*Yq;k3i|Iyzt^nAYp(m>Bn&U<6L8wjscGnIWHvtb4&m;FHmaW}gwe zPrr~2i?w@3&pp~s9AX*pSVBMAQyZ0akxR4TVqZIMZ3N;| zWO)$hF>p`m<}q~l7v{RTwi!cRLLS`|<4Ca96L&wY%G>5n&d>otH+pVCjmG9OaM0`i z6OFuTJR&ZZ=}~b^?6oVF1bN&Jqrq7BLP^rJ=%x*l^@LWEQ1%cT>!gS8zotD~t-8Bj z`#CA>8G9KJi9)jj%K_Lf9d`r)R*KHZWzDhNdgMe75Ara}vERJQ^_XsOI785k+$Q97 zInMB_wpsJBmB6wlJ5Z7&f;fUAESbfF7b)85rzMSoLVq=Xv#(8FxEEVuLyt$@7)8t5 z4V}|mrRZ?f>+QMvqow_ViYLpF*?jSfTiow#mBPxTFOn{kzJQ`P6di}%Mf0lTpBOTOnu&{?G~8)Z$^XGR^+ddq|Jbyh^Yxa>p5N zoznTh`(o5#q`${hGR~7yL$yL96OtdaxG);uX7IWve^2}}{n{Gb4N1aGUX9?dMbnl~)TKS@uXY=xJi|Sd?73KvvDDLR+U4t@kCJWlQ$K?WIR|G1;uULfP)f&R>5ciCtYdTIeeIj{F3D8l_-y$Se>XJlq_ z)ZuLQNVl*#o3De9>h|*wSQi7a9`EkpJK%e}rZzwt>M+*35L2;cU9hy5-aN??nW#BV zr$lp4b#Wo7gpT1d8?LXflAO9wr&KJ-{ID6MgJZ$XS>6UebjC+q*%kQybb1nbEyq*< zpT&*6rmo{POn$P>&QC|$8$p12Q`l)a2UPHThMZ2HA<52%CO6|@^E@Vp-0xqQP02-i z+>-t3X`zm)MnA`h7lnvU@gVJ^TwCNTcBZH;cKw??9JWpmU-f_DT)gh!d=mlnCf#6p zZ^;1ZcnaDm3&_KDuLJAcE5n@O?C;xbA5Z(#m7%~Sp#(p|kgO_10e2OB7nv0q&(POi z`i#cS%x7X%kCIH)nOUC~w{HL_vj~8QB40sf=PvZjh>m=NA7zB!RIIgsy&IfF-6u?V zoq9Qsy66eA@1dCMKUT*?mDMG!vQis|lKqsnsi_=aC_t#t8XxDp@M3n9_8m5O#;%W< zn#U1s!UCvH5lnP>d5)614*P|B5`UIRiYjP9ekU5%LXQ{YJD+z%2C-0Te6&h`;&$^1 z9bfOvo{we|MsC4YeNj1y5c1qS`O+m-f2U64B^tfK*A-qW_qd9<2=KeX%-|__jSD-K z!oykTWug}KGBbx!hbeSbncjkNag%xl>qr`-m!C|?%r?WJMIW$Yte_STryAFwALdGH zd*X{6VI>HHC_a`V)ckPiLf~kBGkhOvosEGUjsO$alChuf;+|BVr$Et z{*0xyT}GUrb#hT&g;Z&t`t#CQp8SPeA8;jB?4}Gy8e)txs1I*pE?P2osu$H1^c=Dk zHZ9x{yBB4ibq z6Nm|^zmSmO3J>hNxnSS13MaGN34cuaK30bS9s(Bd~&7H~Dkd`~0NJX$KBpDVFI0 zT}X!#-2RhDL|$KcFC|B4aSiev-UX-4lNCr~CT0LftjZouzs?gOT(DIaH%Idv!AR*& zJ%A1qJGpFpWd8o!PdPL!&&9`mMqsTTQHLyyutP3=C|WT7>ayL+r9J6d5d%KVG3i&A z&0F_aegNmNVcLync*Li1bQAYYUHWNaqt9_n&h4o-_C@TgKeZ0NAadi`1xqb|2hs?u znz(^SqAN1LOA1AQky8*Dt-1Fu&nW^vwMQVv0KzV&2@Cp&n!#?C>bbJ;1y1OFcij=L zEqqV(7W@Us4m4|NiIM(^$x}iZMVEzWu0rXJ%cys!P->N;wl?;pLl-s?v&?QJWGzV1 z%f9PZA(BX)4I_hDV?&stP#Q=QrR2z6cpo)HM{wtz~RW0mK5mk3GsIYL#mUv9G_Un^$GsP+sosA zM{_et6kq$%fLFLq+|7{3l`t1t!atcA)?d8#?% z!@`=k0~|?HqAr7l&H{IrI{+JbKX50T;6#hTwX7piiS`B6PQAaWo;v41;N!;uMhZ#2 z4}M(T!LKzipP~<#QB?r9HY;n1huc+v$({k z@s&Mlz5Peb1T5B>y?`mBE%qKJudHKrk=H0ob5i*0!`g~+!r7Ncimm+l|lx!&72F#BC+bN|D1z{n~sE z*MD(kn7RfDGmZbq)Nc`*1Gv46|Hxsmsq?Wj=~Rn}9+io>6m3vYll4}e%mr(?FMkg< zG0RfAaBBmhrVj_MK^W>cS%`5b|IDGuvPgl*F`ZKVh<6%j%SvYI;TuULE;wDoLAH|HwgmsNX zHw8J1Dud_TzFAAVR~JWcC7a|M^nO)O(!KRig_$GyUjI{Tnoa$m5&e0tk1|2^ggu}r zC?k#pV`PB|E%}*C+ty~?6p{L)vCgmdOGFy)t#m0_vs4$>{FUi>Xk{WcOXNL#e+noe zX!62_MdruRV5EPitLih9J>puiU^nwx$KAiM%Xq%q*M&A&?Si^~Q1$IAkAf!(DA?%8 z%m7X+y?yz7-xrAADU*|%Xp(g26q0LI?>%C^M-^P(|6SAnN1OfM{rdm>@^7o+fAIkS zVgUZtuK!PmegahY4_?q~A-$Yb>Q{FHWx(R5|5c_f>l;UvOhHlqk`Mzx7(gdA?|;!r zy*03x!#{ptn>@TYwzl_xAgL68lj;fn`ezTtUUNfkun625SHj*7R7z+qlQQkQp;W>J zJeBf;u;8bWCKa^(zmK|-&3#-_{=^y0!^sqQmDc4M1_w(6Z;?Ft5C_P|B+Qnb3=XH7 zToczE3a3wP?}q5CR#+$N8SGvEnXMfKc;2(UfQrKeQco}*AWm*zjiU;Ff3Y41hOArY zWmY{%=S>>29F{F&O3bMI|FlbKY*6mz<%P z(1O=b$W+Pv0LS8)kDfy6#?&C6g=k&*ywY+M@kIH@(od1uNnR&aTJw`L*HhK!ZwwL2 zzq0fvwv2_ozZpKf!jnnX!6R2MC%#NUf1Ywb+jqU&KTSb4@TQOZ#fsST2lpU&hnG_U z3$B8!^wBV6spZz#jSh3v6OD{EYaQYIgKbEMG^m5|>iCebwER>gs%GBPEs%GMY0Kc`00k_>WKFnJ^0dSOS1Up=Xm_N znQZC2v+RX)dF+@oF5DahEiQwplaRU=Wk-T=J#C&y)h+=Mx}D3b@+m<+j3pUwCqj;~-+u6a>Nw^uXLOpUh!RMRs;nLg8=Wi6pgX<`mQxyuA3wbNN61h;x z`gmqo>}C%ehn%W7Su*Q{4JI^R*|ptZLSfyWlppK+&0&95jJ5#%iNo+ciOdnX3=OifmKCj6%yZj^L}k0w>bI(^7e0Pyft4t&7}7 zhmFdag|bCe1WL$!9Hb(QkB&5yrzyq$?)^1@e{-9iJk~YQRd+P5#go1P5VI{O4a@8)n+*Z;7s1dy+xD2pI9+)yE-E-_Re9(_(|zn&bg@=4N(3EA^tbNBjO@MvVR1 zF_p2zz&C;C6R_O3o^_hej@pC+{r~!$|K)#g_(9yYxB^Ws0OcR($+a`lh)*#<6)2{v~{jOJ?W8Kbn-GLqI z6zmr#a9JF^^Vq^J59;gbgU<@zO856kcFsxMMLmxc@*co*qz3N9_IsWb5GlMqykx6T zgsyqM{w7m>0bd=$zt(WN@?F7Aj+gV)>POvoPk1G-Xz!V{8*^pWffGYsB%Iky%Sn0( z3(dyJsr{+L4;#C7Xk=>w5fe+(}u*tut#&=QNx9y*4RBj|NtZASF-wFexn6mPJ;fJN543 zvoMkU>9ebr={0ya93M-E{D^ys+B}|hv3f_Nt0KAZM!P*V^4^Igp!8jYcYE-8xN3pX z8U#zz`4`Wi71Oa=e%q{=`DG1q!RYf`%5{E2V{=o22_Eh=U$j^uMqu0HELFXz`b_Q( z#9Dob6h)7vIbLg>s+Prwb!Og4OG)NP)Hf?_{_#CqtdFd_$tI39S4z%J-YL!!sRvC= zkp3h05HPg%U&cZ$@60)7?9`5#?c7MgoTP#zFuJGuLjsm-3JW?IK8oJ7{qGnccZ+un zzf}0i4pht%d2w$Qfa*`X<}pqO7N0x%9>>)1)bd4%aS*6K4qht&00CF4*Rr^UOx~_T z?fDKk<-uFzcC_%KRZT;^os92B`IzVyT>!Urr+`=~o8%Fv&T=YtK=?DNsp)oEKCP`3 zN5V(S1*0ff2N>+7s zvkGn6zMC}W)$O}@Z)ZdVvD6^1TiyKp*_qhz zBS!tNAO!%VrX;rQsg=m*Ka+tPV59E@j(q>m5MXeGQx)K6tOp@qVS%VdM5 zYfcvAD{>)OfAPfDowqMDQ&Y_X#o15fr=Md=t`-q0K9TjGj1-*B?Ro!*q>=fd!H?>j zUE6dmwzv9vHw3n0wNxGfq>9VyJ~1S1(2dUbio$Edflfa{{pkvccVOf3EvulF;ORm8 za}NwZcuY$PI89`nn+ts!tS0Uc*UoeQVOapz-;vr-f2GdYpL2GFgnxii=V79XFfmhe z3mxtS%u0-Q1ELM5@43kduX1B9G)_(iLqr=K)*KIxF%od4qw0`S%Cxo358W!`@fEFl z$yg@2!nKhe_Ip^iKk0@jmUy9|p3SOXAMOTc(0GRhyf%*?4luvq#=qPx0WX2*!PA0G zfV>{a-C^jusNz9Wj)A30lCYJb!Yci)DSItz#8D$E%D}A8!q{c4CVY}%(<*MhSAajE z{r5rd!t`+bszV6d`}7P|8%BH^j$%z8mTS*2+T32dounq-^TC1_8UfGe8$H zZ|!_^UN~v>*HWyjAL!erf2PP`Aj$&w(!$}2#&eycp!N62wvY1$Lx`BOD_?5j!uGx? zqASSvN1%m+R^ILAJ)4XW+Qp|{qa)SCryF@ZN1?OM*O~!yYAy4ztPj0!W`5$TGl3`` z1);BTXL0%UO*!GG;sdH#btR*B!fYSjY_Oq26W0IWE%hJ*(NnUgHnN3D-jQmT@t-pW%|BW;J&qxExa*k{5F~$J!w#7Y((Gf;7OVo{zKM8y6_-rO=ONts*F+>>&H4?fv#UYtCs@|cwPg*t_aWF#kur(LPfUIkPS4$p#@(o=3y%DQD?pt~t zoOW*(H!?w|9JBI>pelM({nssSQgY`r+yGh%V_SfI!_M?HUdQ6s6uj1E5;t_G`&ZTJ zPph%sUvn99#r}_NsqCHa-&VSGP-YtLC->`W8kEM^p;%lJ-Dd5iMMgOP!yd0g(d0TjGahiu0Wi z^`ZqQHtyyc&xd9HTjF&w%9}PPd5WzQCz6$~0_SsbJ|RKqR~UaJNtfi(L!@6`xy2hN zI+dQ+6WjG^qKrx0{n4(uZ|6UIsWXhQC5>o5{=zj8Qst#*zX^+j9f9nj^Hvw#L5nR= zt9lgo9Q=2oNTE~r;vDGsAjbcdY!$7Pbno5>pmXaa@&WiJy+hYSMY@9w0YwQL`(M@7 z%`s-pu~C+bJsf0PdZYIiq?hS#Iw7Is z+bGPJgh#0w-s&Sh#7|nj(D zM>wtkYu%{|apoDfw*l^j^~tk(d&)`ZGQUwNjv|tDIp3jBWs^02zL5-i4RXJ|LQQ*S3V~qxUenP?{lSc%a_5?=uM9J-TQHmm3qvnlkdvvL@wh&tU*NB zCu1$4>#q7*)A_Cn0?o|>i?1#%0zcWLJt}{fBuQ&!U}Y01gP#Vg20sDvYQd=K7avqm zLuEfTCH$+}YCLHdOV#jP6AZqTzI9VI)O#lNn;@id^%%oT-_a`aTJy%)Xj(irAfLR> zOOupREf4e1;Rn@YdGu5JrP>JNU?A_fqx50RZ5pJ2yB(0%nFg)xNnGm`YLQ;uJ#T%! zHp?U6>h9?5OY;}c?zwSRJbaVlJ0 zg$|yL=EpGPhfmTyGRR9~e9f@_D#pmY|E~9YOAA$o81eYPd$}q>sBZh{V#e97l2@Kh zcHr8)T^#2qtcKN;Q$C@B4JU#&;Gf5a-Hw66qp$`;6kyT5t~xsvZ@ z=v>%jghK-8TZ+fyiJO@C5j0-0D~d`N@pQgE?RPJ>|;-b-mNPy^f0($i;aU- zSq2Y+`7^t3!f*-!BrlMx+rS2$VV^GO;Y}*GK8*q*Gmr3g_oDaWPNvln>9iml#j>xI3$z}TZmMlyg7%9qeZ)(|Q$W4Rj(H^6 zlXwrX7Nw7pV_s=hVKrSw6#L2_F6PIImjY>QjmrFJjpi4XRNd-~A@&^a&*Dek`+}k& zNF8|*rBP1j_~*;Y^%Fw5%7Q1%0x4oYiZ-fMDrm?x?+c8&0qYy=eYyfs4f3T>>1-K& z_*JON(i(gHVn3I|gcf(*32$2N@WhK}M7+h^H_FJ1_A4EP<(*wNfZhvH(RF9=X1v391IP3)#)f=7TQW*v(wNGiPxEu8$l z=9I;&drJNYe6mgqaf=9Z5etM0dptWoj-6XRU_{m%Rgd~C6U+s42Bt3U*1S5<3iYD(RfKGlni|7j*c$St zY7(cay_Qs3{( z;>)@G*~zs@Tkx7f1S_ZuR9TlOiGY*qd^dIwGsC2@(rJyE&(E0)_IS(&-m|4walB<+ z19ZsKCSBjbf-#{#v7#W-kT>PC4naAIfu2I&CwMg-DqP*5LpKY_v`PU()SaUR8rSqKS2fZ|u z_(c<;tE#VAZ@)L`EVHF2N_`|Q>;Qd;TZS{q@uDQnkt1PX_GRUYpK+%nzTN=q>kzJ4 z3KMz|$@{V_uB7lG32B4*5dp;ndzb=oD-f=%JK4x5=?B`z&wjT}vwGu=&HY)q#IPrRAKgCGf_J7z z*qK1Kfb=>$YsF!$C8O!0*bjGvf4C*_b6-Fdh7NaJM2 z*J`6ivKCH>mB*~Eh|mPEx8wLmYqQF&m0D~0tb@r0Ka(_=(j=>`+xZY5DIi%;Q}9P1 zD~gyPk@mlMF-x3CNLQcAd%8-hnIZAjljQMNm8s#q(sC+=Au(^FiQ8?$)Y%J`@gcS% zQBXYbMWrq_vI*bPfq0ESCjCv>=#!qxD3d2Ym>twyiuTlcoyt*p00y9hs@8SC?`(J> zqtdV<*p&8VmnJ1*C2(g4_50bn=POM6Vi;b->q2Hk9*=HHO;cVk$W>>KeYJ-DuCFCN z#=46MTwfmWMad<}v0ilXo>12(?yCM#y4QE;ox&BZX7R#iVsS(REAl!B2(dVX-pQi| zzndwh^+(fZi?JbM!4|Y5+cWuet`A07W?+rm$B3*h8Vc!j(a+UKPtlRrrR%BQDZTF{ z*BwEp!nX95u;D@5Syff_c-hMM8HTH_wl1DClHrvqi|%*gqL}Y@4Dj&q+Gz^)h}nkm z<7_sE9t?p=0urzN(MmVv8z?OtRH!E{Gj;L22>` z!xF9CCIUQu5PFasJYsGcQLc(uCLzx)4}f;jB|A>lEnB6rSIdum9r$gIHyD;&%7(2Y ze3^6##Zs%{GkppPNE{Ro$BgwI7Xs*SwpmT?reIl-tVns3?US3vTMF10GOJqOI2 z=tBfCqU%}i>=>ih(?`A}#)T0N;0<-j%dVX?E@gg|(j06G;8t%-3qxvMorRe($@&(s zFK!&L`*`2Nxn7K;2+_sZ<-HE7J1fn_O&K=z{2(^XXA;_4A>v_BBYno|Vf_x!s(@n!Fp4Vx zB+IJ6ge1=vEH8k_tQmO=bq_Z5T-vy#N$uRFg?uF51V052gGg|4s&+W(>Tm94w0U*# z%BM+a18{?bgoNyEd98Yk;aWvdy|11e+qtIfy877UbEbr6$_ig?*@Pq!)f}k0iU{MhYTA< z+AkEshL75lGOS;+7Cm1%0U5OsgL{Fpg#tl9n>$m0lHRo2v3+G)N8UtXT^c3L2y-%l z;jg+CYX;fMIMi+jR{bUn(5b!XqPKWBF6=8py0EMZygL9cYDSZ z8GnoKfyf|M@b|z!adxOTUr%kR-Jd8A6i#Jz4VOWi?PMZ9*zMSb@N~qO&z(vI8&7KL! z!@@45v@~(uK&|`cQ7vpC=2B+`e((V~y(_ zeayG9Q$$nue1>qv)AScHTS}9gkuQ9fbOif;Rc?Ng79R|e16I>eEEUoacDKGVYpiFk8gVhU>5oB`}+n%$kX*N{M{ZFd4y4Ng=QTOt#0RL{tud@p{30BB+ z^_v_+h^~9y;E>=NZTdx3vc*fcdZEXciG2yTxQ)I+IuyY20n`Wus!1>%X56S|R5)EX zR8u<#XIme>Ci^j-`;*P*k5pW}4Sa8nLH*?8mStq5B1H8z`qaXm5sG^G)&xF1Qr#i6 z>wxwTq$81bKgBtS^{8+)wefSGP-=?u!yjqV?tI+OM?d7yh$`=t5Ym3(@9yrj)gTjp z1QiBy0ZIxI0g}D`OUy|6@LDPH=rj9Kc(p=$YQ>qQ`xM6%tqxlZn+Z^u*8LpBG)MT6} zccfIzhhH88{r?sEy8naF_>Y;xzbq5}B+x)881dS+5r>g^hf{CJ=f;%Orl{Y{uo*iAQq$Z`K^3M3A_*UX1 z#a*mYY&V!KN{_Tu>SnQ@V&${%`kw@4^G1|u{((O-*76R}?lg@SM=41N!om{Fb0~ZH zd&ddm&;-+!iI^xv8>%f?C}h0>)k)v9ZbMnd zY&E~nC4~feENd*?z+mGg~jp8+Lcp3}x{ohnm0CqNK%0 zIHyYU9F**2RVfv4?ZT?6{bNqoReWcv*>MN_+QG60TzKEio!VG%PwI&>0>{4y4vRT2 zXI@K>@a<&RX(Ewy_%!=Sp??vw!aXfifqgjc{-xpL$_5c$XLbq z((-nLa>8iyt4pt7`LS+DG8P1DxYlMv^~OFaJV0ePWQOLKi(rW$hyALvhG5~*bKh&$ zjXtiVutjcm1374Cu?5hu-a9g0z$3Boc2f-&Z}&&egtkGgF!}k1O=0zS2~bJX8RT>q zoGrk0D4`&$L9u7HXNz6GN43rS*s{ulJtiYTRl(AsM1L;_eVJ*Gg&?Fi0P*YOJl;u@ z9$c)!UfV{fb3wqIvp`tpmq6_(_@-qM`yJuKV;sXyyS@{_jM}vHd5@ukka9Yg7js(NDmbFk+0=NEvQ*XG9PEzl- zR6)0S*CNNa(J@AtUh~b*P+|X_6_E6 z*>IS~(vs|%Yv4t_PQwj;R`(ByB25DyL-Z-D-G*ritx$tn!8X5ZO9E12!#a@liHc1X9uSs}!j^v)|lswLBGLuX=ooE>Sfo6lYo75V+;Y74y;K+pe5 zD6pj1ZHgX0SpO)&7$ttg+u@F*e0+h^zdVk9tQ+vDrq<mRT)d6Rnefn)Y!T8vJ^dGt;(Q#P^&4>>&wRp*bv{XCX)xNqG%z=K zwB!*79H8FA{@f6DRB#rC_o(t$95VJ>UMc^@dm6f2qE1(tU-g*$c@BlN{sa>SNOOMV zMs9s~7our{di3Js0_!hy&d{)5E#l=jKRSu6f^)Cv2GN5$f6d2he)q%yNfBx0&(WEJ|+rH}OOpPHEy z8P>GXxWxWO$Q)-3cmxn)GxlX8pZ<*%e;qBvhJ(M(t?KMHlbmMgYrIO6Kg|Wzct8ee<<8w z97|QLSDl}2-!&AvI%K~h3k_Vku@O)yn^pgzbmeK8eZ^CccID~8n>ks3d84+~){3;N za`SPO!ALHBQUo0(!^hwmE&8i|6O~#aUg>+&8(`+Jt_g%yb`$Sa&hfgC#IoLaMu9H3 zb~CsB0{fo82*?IXvV^fjM^3GVw0`T2INGR7ue^;O5IDCuU*5g?;%|89D7{csL0Ea< z+<+l+acz6BNBL{RQ9mp=%)b6N&fwCL*xooBPWEXar?QwX6PtNznS_=yAa49d`ckG< zr*a?Vk0a)D;lXU@Rx;vu)&XoWuX`yv27Vi~Qi9`|tbrxU-2L{>LugEg&_rWCAoUY` zLJ<$m{%AL*OkP`k;f7i?e@}Pw(@GkXpJzlx+lU4MX?Y0y56rR=5}n_a1`QPS;_D;7 zMo>?C$lV909`IeO?Ma~bMvWE4JBBwoe&El`K3CB~my)&4K`-ZQF+_HFk@X(Axfdr_KFM4I$2U8Hvb6#)SO=>Y^wq&JZ!(rf5dq!T(MfOJTx0Ycp4{jdAk&sy((cl-2wm_^o1GLsC~T;)8E^LNl; zkWw(63=yZ;Mvg$&ghs!|^qtI|RX_Qa5Cm0a4kJ}NVx*kgFL!2de>K3tA&$Yv4V24v z9P@CAHLj;r@WiD%n7q9=ceJiBTg84-zRUwYH)nv@1{_}XFFnDS5vABkRZ6QE ziclL$%+MhHzOOwD-RXL!{UQ5F%jUT(({$ll)u8=D04KXv0!lL;GlLm4q|86O*{By_ ztP~Q0Hl9HKGG#JiDQGXnh7i3Q7nF*h2QS=)`=LdHubP~!Iw1KK3Fc1BTc5l*g zyxq5xDq!bkDf@heH5}N2-gT~RQ|u#u_||zwxVnkwjZQ~E-KkBX(L6Rg5^`hR89xY* zRmaab!Rm49owDM&GkREf8F^5sgO}D$&i1kNRd;>;ykT>p(s`oW5sL{{bP%jv*VI<` zgYBD1+?YgvoA1cVhoU(7Gk1!D8nWG9bIn`(6;GBzZL#-NKqpm$jWaRTQzuR>Im+-; z5*4i|{VdU;G*2{()D@fjxFu+;U5RzCj_o(jcOcZ=*FIatgf`8$&#=v_vf3WIrG=^! zdihc?ex#qd9aUvrM z{mm5^9g(2WrUCk^dK50EY{RcjMbj9x`QeMw;!D`pO6(q2Bg(mmJz*nY6L-qz0f564 zM{jnC8F!lTdL|OMEK55SbzCyJTh+gLp&oYT+WlN(oAaC<*?JXH?Uva)89J5e>(e%x z=yECuT7Bwu3CnV{q;79ZD6Vswz4#^tTd`z7+pXf#)wfS#u6t-w6`!WduEqq=6{Ck& zol=u-?y}q(d=YRqp~~lj<*?n1S9&pf@OZe$d?zI{_RPg)RB3srQB0^)QM{R{rXDr( z8z;4-%aY}L>%=Urk)p)QMPnQ8Xc{5vc=k9gU#_Ntk5HTT=r@5B9K<0xO1oAvz_e{X z{Zo5}$v($wTz|SW)Z0hu0EZVox@8;npc3~8z{C9|J^<#> zHqs}>I)wMWLI!}2oott(P|s zBdsV}#gGl%Zs_P9z00DCujHE+S}_r8gg`9HIZ8qn@X-MH=iUhIcv%js7ziC~c&y;! zB=+9Xx53+4LmCa5u2V@r`jd|Q_qX-5+(+Si_ z{VH3^@Os)p!@YRJSA)IaDg;ozgwaO#f8AoO*%`GdvFcoR^nS1QdeXuaz%#CL$-VC( zOG{w4d%Z6qmv2Sd&b-A+jNv5=ZIv#6ts?wFoBMJ&I{Y?^@gC7_9NfU%JJXYqt~w2V zrd~pYnJK?b$z;g1zVXar^bAoL#u%h^y>! z`wKzdfsQve_51Yn_cOFw*qj%#bCki`$iuS=G%ZTbG`>5V4n*`0OUjO@n3D|*(DfIIe0s6p0)t|1dpqW~6 z6std@8Il)%G4!pEXp2|^_cWLEHm{iGjEBG5%6#zAANnE~bZWKHtBl}rt zDQAO-kkOP^(If9OHz3W?i9#c@ceJEr0&A41VuqqD2L50Kac%$@zAxLC*_maE&K_lr z0{4v`ylF_Vk?**vz@zr_miT#bmbnH);DpvbbRlAqzjgY!eof-&xP@-BM8oTqyJA!r z0zs_C(bSx9FO2iiky@uNm7Atu2aY#a!T0v+sfwAy=Z#T2gaf9pJQMERxkIl`i1%{h z=Jel5FMnt+|JOGKcWe=qY*T-VR&K`}iS-y00!&Lj{!d@_Kk*LupTi9P;i3K;^$)NY z_{*)}AKXEcfP2W%aA}KT*;qsc|_k717HyB>`nzHND_l{YcR2}v0(@#BE9Gq1$J zcoQzhI@QQK!8HZWMt%=AZg=MyeiRCpdg*F8&16r(r~BZkJhh<;&_m!b9p|Y1OGVuw;%HFe8PW%3je&A^0eFd@7@N$$qA24 zxmxbBigH#(aW*8~T7F{}T=MO#^6)GXO|(Wfx7&XnKsN)=_GhtY(PA`u7~xXkew5X{ zLCMyUD*JUYrc^J$lk%<`BLNiDZ4DRitB`p;x}^cu)yp@0JFGf&DW{6!b2>I3pkty@ z^ud(Ph(O6R2dHVZ(^c8B9TCGaiVF9W-4by-3F#}Z)KO1ScWV-vSeQYTG0$;{;$wGI zEjO3npED0->XbFW0X^+yMV+mothI3~b}*xBDPWw1s{R>fWnKa!a+P$=yQ+Z5?8ou> z0fcX_8Loo@$UrTYsHKL!ShI)aBK$N`$=`e^UCu&Beh8U=i(#pLnkZ<;M0-Oe;2kKv zSSxMy8}-+z@uS){vq_Xx<3j8f;FSBi)GFmUMSNMZnI=lkx@^5_KBUKJUK-0VS;?g0 zDK4ru9e+hI2Gk~8&a`u0*8_|OXn!`@IL3O_Gxb;>2~N{%&$@k(xHGY*yeab1ZKCI; z-WLfQ{+RkPNEW(*KNU!Wg+{e_VK{QOAhZVYB0k#UiT#>W;H%`PE;S~-XRe*f++pIU zj|y)@uFR>pF1G_QWK?JFO_+|`?GVN?r0VNiqNkgo?GHhYCh8>L82?sZE53qnUoiIriV{mHZ?D3}7KF9lv@NQGKn+M{8jIkY$aX$L3EjRh=!$m7g zX+QCI4G_5D`&SfKh1P8b8)Zm%b=^OjMJ0^Q45PK5N7#yP0kSP~-~PB@3TCRIhY zddpZ-FIT!u`6G=YVmw|-8t)41m6fO$V(^iDIroN@uk(_yr`N*}vo&Wdi$eM11~uFv z3=W~$rBtUSLv$yWwi>y|-{wR;C_}JqQTWb}z>TmjU=7aV67|DX)L}?quI~x-x$Sh? zV&>6B0r(DUqO&@)7KD|;Au@)A_lmG;L+UK~IvZnsC5cgJMYcDQOm0mM9ldR?ex~H_ zn3H_K`XHSEuX>YbF+RDBb>D@^{maX*h_@@tIlP)s0Z|}Ovi;a3O*37!bX|A%P6f<2 zAisHpwWr1;VMBK7=+2Gqhs^zXRa_(n>ns6vZoI){L+@9LAc{7vmVmM-B6fUd^|)M_ zsI<3c*GUe++`G}7BT~cGO_>NG&!`iK;~>YLMy!3QO4&b^$bUKB!hTuWYbE(Bca7|! zOND%67R4Ic!IDY(btG|&)V(ND}bLeUomeay+Ev(6*@MAVjOMuU|-)p&wfDz;M z1`MU~DmP$^_^1@s-8-&T+*x5?QDje}Up)AT-zI~8z1c=iDDN%#Yb=^?#oOLxCIc&r zif0b$L5Uit4T`G>M%TkM4UaIRBjV9QsZxwQ$G&p{jaYxV)v_DLXNk!53XCjKbwBJ% zRj+D<$WtsafHA0}YJm*RBeu7@CO|V-1olCKDR(|@WteR_dxQ(+fG_W9fb}?ug{VHnK16OgotZd7Jq; z*Lbk$6|%Z`bmkzKhLA%&Xv0)sw%e+O#!@N@NMY{3(Q$+hS z@ZCI-m5*^V3y)5{>HcikO zq^r~OiODvAcZnTb4dCng8a+Wb`Wvak*A9s~*A8!j;yW6Q$?VA@ zPNMg@G$W>jyVAy_Np?zt4P@n|DR@svnyYHcG>R-jntcvk&y5aezp6dyL{1}L^SqfN_dmr3d#t?XiyNa*)NVh6N<1@h*Ke2~9P)M&Tj`%(MlL8JgKs@zx=Eh7f;SU9zZmyS z8(1&oAj=0Z>i5@3>npgUHs}~@&@(VqssgSv0b<8Q;SE{2C6VlBUwu?YuZr_n1hRa^ zSdv+3e=a6Ie34@(+nXEr*y|hnEbR373dr0KHi3CYuZd)t0d%bgHKrKMh!p67#0N-E zVp+galgnq=Bjw}b`G8Rymyaw6c*lM50;WVC>rfq&Ku8r?_%eAoFdPPgMOUR9)7qlD zePzNDn14i(|I(zRxWWElRrtdoZlIRk6OUJjNv8rS#K^ZcwDB6RkUS+CVi3)pyW+@( ztwY27T}wv!i?du{MnZFN8>-KF3=SZ)B8CExaxBqx^ zJUU`tXon21axc&kmDIaT0+XfNt%Cb|&31b-QgC)2ZA8oQB?w*(ExAv5h_eOly>u@M z>@>8WSB1T|BY1VZx05qtF-1M)*IseKd2x;HL_##1rbRDW)vNG7&E^l1JQK<{l{J~I zdUn5bUg|EXzqK`j+4k9sUTkTTm0;kaOqitcFqG7DN%H6N+s(!(RvD@%=Y|`?aV3ke zk{nud^SO%Vq0l_}+)_NDxEpxy9gh}mB?0X0*X5E!`d^yd5ofw3g?j4dPb(_g?Vx7p z_8FH&tJm|E>DEWA1s%Bv?@ot~t(m5`6sGP2yGT)_Cb5x@{&Fb;2yq zLHlao7EHFNVW@tl2$IuS1??oBGf0E&@SlG$G_e}tgdAOKR|K#;OH?oA0aoP+IsHGX zo>d8=?cro-mGXnCrQ%~zxrZ_C6s8nx3vOhJ-k;-(d_DbBwKOWEneLe*U?``m4ve;3 z)@uD0HkAl>RhW_}YR034SViI%Jakf5 zJFg3?8DE;&ll=SUsmcR285|~o?q1@^A|m39JzMX7j}11D%PoM z4tk$u7V6ssN>&3BQr8Vork;FSgg=_}0<`#bmmGcHoDFW8^~qYQGxxe9LB(6_=Fi9m zclRx7&Dtu~we07c{{}`Mq=DL9?Y&%QhNPI%dYPUW2yv}PE1UbVxngzmO9au7x z)fyk?VI?=Gd-6f7-pNNQLxkk!`SnkdY7?xiFrsKjI5f1KF}k~*IePq{@-vy_&O5+n zj1|3eqT6x4SE{RUEOYrNqEFC8xxsi*mH{IQDE(JRd*Lg0dbiGvpA%+zK6(7+V?4&w z_ra>)B`K9LUg7$|&ku=43d&S^bpId04-aY|Kf?!-w_DpvPi`6lMKA(p{%T~*5A6vx z%y52B{Co5R(*-;vZQN@)`{^idOLV9cOO^d z?WAu?R7GM1(XcDa`B^X@GQ9iRxD(5idc+%RWjwP6ntZ3q0~K+tWPevb_2{58V3qLU zmGu_wGAT-K4+W3M>8M%WO4G6~P!h&B<*rM67B^?{9cOVTFHTj@G5>P_owh%OT|#Dq zvK%$q1CZO?&)iU~VXfvUZ_5d=?&`kR#XC=83(22SkZ)=`CJ{M9aVk7PS;Q>_vz@`~ zqF$^lveM}5b^#L%0b0A<-jb$WQ`f%?9c>~==aew{LoLD9_*pXVv`LL*Q0>j>4OTi& zmnf^c$|AVShkD4Jx8;WG9%rxuGEcjD z+8-7m-HrOX+aZ8r>|$t(@iMDVu_4y>w3jC5cqr79n|MhUdOY>JE{0n2~|S*Fm6GxlV@@c*k)bV(Stf zAXlp$*X+4eTn5)1ff(gnG3qweXN(=X`)s_B{~7&@N0{A4=ob6TcQ89@axJH8<<2N_ za?QA#i~_Wv+mMP_CN&zOZEu)Dq@<^CKpsxWl`f>+&6F>h`33jN=7R#40+Z{!iabZhUgd{&^e0&siu)-LoY3X};bbVD+ zAFZ}`g`HHhXV?48^V8Ywl(_?Y>~OhC7S*|(`VSqg*LX)`S!+jwTj{M)Ip*jfICH>A z`-r#y>Q=x|nxNT|&vT(-1c)T28JmVU$^Ys_e*>~-%AZs{Ds+m_4ie+d) zKU#l!UeKjzb}>+Ch|$f3&V7XUF@PhIWtcNti2HcdjtW@`6RsE%5koD7EyfT#Vv)t0VUu zU!4r=9%|Iu*Oc7Ipg|30EgjYPQk}HP#OZ&EMtB}Hnc?CMgb zq{0bCd8zjDCCG*rd0E28rs}A@o!;p|1B$EmhEX91uNFYZ#E79mL){%qcbCa+Qu#Gz zI0IiOHL5Hmio`zlR@qW~*nL-(`m6%Xi-dH^@=eOUi;r49@&Ed@veoB*ZWeTVt^91XBGGOl_JN@#&LSDA)XXI~_6H!t&urhha~nH#=-6MbKDqi)Y5#c+?8l#du&3G{UZ+jqYa;np9=Q^ zZxgY=Q38Efkw&yE(Det4Fuz_fn^vof8rfTy49#efY>lOQm453fr+F@4$rvjS+7%H? z39rn!HxWP!T6WT~VRf1+o}fRdER=4t<5SaH{6L7ixSsX4R7Gs>3~+dGaBHyMCWcai zDo6Vz#X={$k1Xts>zzao>KIePW;{)`(`xL0{!+%}lSQ9wc3~*t7PyE}KrVzX=$jcV zS1Q<1Rh)FHRCvpes9)sZN$)dR4T&SNo`N;KK*Nl~`z{4SUn6Jo_`}NH!1Nuin9S$I z)lHP1u=6l|>RN4-aP6;(;>xQ6Q=mf;EyGYUhm4gljIl>^R^88dm$P)XmUkD`L+LME zY*$m6351jCA1;rms=7>-x>WY1b$-c5YWF}`F#>hzVX?(B#U&+5>@?Z z2rFW=aQArtEfUjyKYML2^;m%_Oqhh9h+ps?>peAGI%eN#vPii*VEQTtUC?=d;*zC( zJ9BmVZ=4$KQM*9;WqpcA=Sg&{Ow3;e`$ep$!RE*Y_(2F&Jwr*Hz-BhD&xgmg?hCy< z!ok}NnjgY%NZ@`MBuMLDmP7}w%F)g*7YDgkfg}-A@x5qUJkF8;jcGhBy?^p z5{SL70KXY)H7`M5b@*miA$&Y#9v%02aZPGIN$6xQISk=GynB$GpBVJn4(~E!9{Ix; z)*~0&?A_xp)$JP|c4EQ(JbT{f^Z|ZRUjfGs+@L?v;_kPXbL<=IAwedr4ARC3QomkV z#<~d%86rBOl@np&ve^``m8j;NSNHMF!uNGqq)_2Lo^{5S)|H`ipUdh+jtwjdJI3;$ z5n#J(DUynD>%-_p{HUy2CoOFlT^i$k2&ZnJ$lU@ZYEy5yI_hnkg+)!YRL!2M1&q37 z(p8!giIc{}>spebq&l1Xd$pq_Swj!>4JKQ~a!oZ$wMys9L7zYsq5_0Vjm%}?5O_C>nP}yV*irD&p01_xOz~6Jlj=3$FB|pQX)`+ z{@AHF$xK=j;N$*1jrVb=-s9D8Y)^!qBx-BytRpQ}A^~*Fw5XQswuqKXSG7sSdg{Tq zn!$~mU-$CBJ-ZE3K`hfVB`hxXe%n>>OM3AZw~JJuXsg1@LbG#THCS5au^*IisoRCJ zgnduF-o9uJEkD;XZ8E(wXNOhGj{J>dQ3X9IHaj{DVWB{s6(9ut*RF+jrop87nt9tQ zphD%QRMiylmgbjbJlx^MCOm4)Bn&A&HJ9^OwywzW-Z<9%g7sJti$ z>}CrVlAz8qC{UlYV7P{?QWG~FLoCQVfi-Nz;)DDsoc|Xa&)?0}vj1VXRveTxu1pp9 z|L59(&NmnT&yu_7FBn@e0>P;1<6O!3MyEh+KluGuq31ZAScDtDs4Nz;ro>4ha(MT6 z3yOi$D$)FLnoCX0(~S1v^7BYwFhRB9-W<+WQPs_!%O%?S!=Ot|Y#Jt`LHp^WXiDHx zjMb0I3d#lioXI;wovEblTy*-DW{kCcRss-v`LGA`9mJ&EG zW9OrafiXS_@)J`5GrNCgC;#Q$_U{&IKo;{K){%cpV*cy>R5*3avIV&~ zCtot_)O-!JrRV|u*@zyz}}mh2U88Z^YpR+$^QX*(P7p|C~2~@EZGW#Hwu;~0WWO?-WM_82n*RwbI1Z805-}JhWHD+QQor|Ij!d#XPN>CR#l`B0 zlk_7S{E-J*0_xPTGk^50R)KDpTV%x{ujS5SeS7Qb+Ok@WQWH4t%11Nls^n3KD1;j7 z22$M!B*ZaJQAS;@KApIghmMCoWRAO8+4NdnPT`5;bZ$1|C+nvA1e+*B6B%Pz8>Kkha?+L4I|=76JylnVC`p2rZ-y35+aPV?EX#{YHd()%RGDKikD>u>0Hgl_#>pqKyKn$s^ zyB&Oq>!#dhRtyp5qfzr)NhT%o?U@LvXJ>=-On!TXKwb2i2rupyx zt%Xtjy@h!gD*bzN3cGF7l=3>>bxTYFm%GkW-%am1#?|3`J%G z-y7YFd**bV6*Pc0U(JQ=S^l-l8-n~M4QQy8xDo&b@E8OI_-u9{S+7YlRI!Aezj1nD zklOz99E9Czl+};+<8aoR_`M@ZumI8yOZitTEZzT&V+RfNO6v8rN5Z=9ju4k846=m0 zjEgJb8S1*LfcJ)cKy(&xeg5ZJ6@ar&PWERLq|7|PC>ORg-TvAzMqz@)xpBc&wo4y% zrGK?fOsVB0dY)xLrE6*W#W;E~0LZh{^e*)@q(O*VX+@4(H2J=R{Iu=7-BWF?Z*WFR za2#p*DO1-mDVrIe>A6B}$3E*Xv53;{ZC}Zne*?+Vfu1~Jz72wC>t96h>X8Ml;5!vj zE`a5bwR!@oS~P0_GJOy(DkQpD&2&?dCs_Wp!htut!Z$@OlIz-H#J*QS zywg;+Q<=(0NrIIIBZp*-Uu~#Et%RM#lXt(}=WO+Di=iDP{?;wTw*@zeBckIlrpc*+ z?g7}jOK6zoofp1uX>ftbgmJa5g-CT{lxAv{N?Oue@Tm15AkI?+19X#oPq-Y09JtG< zjIlbj7&5qz9X~CoRm_E6DoVM~?EdX#DfZ(3~P=Go(ag=F_3++-4ON~5PMHXCs03XoSaMc_)0mknT zrS1cWt@d2~*)Q|q(GOU{Y=pPHO{&!$`%#X#O}-y}i>bEU9NFq$AaGzNWUGD2VTlK{ z0!J;tv&Hw^;Q?;f-ws$^as>SAfZShi2KN1jH%B9_x?RE{r2Cccu*_(4WnikaTizh} zw%NZuJ4up+SFIk^#~ipynTYR|3}}m9?FP^zS0W3dSjo4aNS41B1SMY1OQoo=<9$gm zxvA=Eo~&mtYHP1izODW|)4sAy<$Va;rTgAwmn1Eg*a?bWGSLoaC9}3jKwGI8?go`C z1m#?vTVzq^d@F+TT*bjM*Oud2f!Y^ttQ}PVBUqA~yKDZTEOc%L=J=_(n@!Z&b%Xn^*HHyyYYUvi&M_omv+Q-=U&ZOj==Uf149Wy2lcO}vu z0hjmDe0rs-sy9*q+#DNHf$6Sed^8-|-6%H&GFOhj9+6#wBzw;5ni}S5l%VeCd~K@Z z({fP%>h5rzsVYSqg5e~)%%XfAf4!g>Ra%HiRPhv~wyltO(mD$WIVWEKW1s}cSEW3X0Qk!4;+7a36ROz8<7AAL zTL5w*`If;IH}DEJL}%^)B@7*C+_f-DhVM<0!8roJfTHCYDbIua!khnYyZh($mmMqA z1~&%itQ4tzYwC=NZ2=AdIWDk-*LX`m(m7_hv2OsUFDugux<6T3Hj$-=+pl5vAeZd- zL-g)oJEy|cU z;a$sYnAc$E#{j0^I6QU>6%gnpEAp#Wg-%BMMl(;z-**)3&p=nM$t%#KD^g1(J;E{@Q>=x|8?KHKcKjO zZe|*PqkxlGQ9uTo0Ad#`r5_vZaIv{sU*`_5n)6!eF?yS*4Y0?j_tYP7((i9JCn&uP zsZHtZBxK&*vZ4Sm#sBuPXm~#+eShUTP+AEvS`y&R&uHcU1=W8Dw&Hqg0+_C^A)xpR z=&LSCny`#_Mz4MH+U&8@ejJ+Ek4_16JSt2={l5fl7g|2bi`801Sy8uhZH5 z3$scL72S?*BkhR22llV($((Fq!^$IRiKO15rOxF*#7I5S4KqB_cVSA%h{)I z9=un2=aRg3FHn5ccePatCAs@6c! zs8qnYj>O6hSES3DJae5khM~7daQhc0r*o$E;<1Q@_eBU@zeR`V_DNM2uvm35L>uSsc%{{& z7VIxA>e`mKsg=u9$9dGgzrkc`e0J_LCd?}mf56Srd_9k6o*J9p%-xFyYa+`mQ9sii z&zy|qzqgBJcn)yyozLjhhH>{z45-nuo3LVH3XJ zalyut>+<4S*WW; zo3^+#iF+T}UGx0DM~~{$U*0Oa?WLQX(NtLF5euOOYoM~uV}1dcrnKkZq0=H;dj4it`gZ2L z_Z|?4kER-Cs}M@tv4oS>foV~~eLCnRSq8A-#NM80bcIRmS52GRk%fVTov}{g zkq-_M`sk1fV3m3Lp!)l>S=vyx6>!ac#b3-Sy?k6I1bHrO?jKFSzxX?FB!TJFlK5`z z3O-t8bnQ-1$&RcP46KZ>;OA;-sBf}qilQ6(mSB^h6VY&E>>D?LkO;qR?{?vn{!rum zSaQh`;oU<<1%m1$!#mr=w3;pOKS&mrmeoc(q;Y(F8Eeh+W5^)bhn_I-@$-i6swhkL zX|O2-$iT@a5yT@jd0+Wano0O+mc2G`j;XdC;4WSp+r(F^lsofjtsfJuVn!31cs9W9 zqo}9RQTp|o(dL0c95GC^R!Ls+tCHELJCuNwTm{7%T?aVGGYqi zLXNwR5!Y#={<3mmt{@F~>VgUKbb6z`!0sWD^z+Fr8}@Fey=U^i7w=sOOZEqwpX99tPSC0zcJ6}qb(R}wD9Ro2 zRA&SZCEX65`FXKlr@0$xDK2j+yV2@5TvIM(`YEyH6Um(`EE_rpMcl(8J|#_x^m{g0 znW=cIxxT239=}#!*7f$SIg^B7qKofJfDEGQiYHK(;YC89XW0=5Kp#8Acao}%DxpJA z?422{`OL2&ceP8qYQTvv<`*dj2FR9gKYlJrz}##wWl;2Xk7Frid6U`+VMV=bRT~~u z3uUqw+?Je4vnwr!+PZTV_2`>F8z07{Ft_j2yYs%|_;b)cmJ%gDB`XYC>t>zv^@pBm zwPyh4$HB~LX>xCaSSbf{K6AbQOoGEZ>ehPGT4s+w2xIELZGKZ?y$L^0ZaaWhmpmc~}%! zV6}o>%^XU$Yn;jt`BICT>vtsn1ShFZ^?Ag>v%Ww7mFf++s|6CqN{&%N@OxVz#o}sr z{iS-cSp}u@N75^t`8Rd+)EW}IzYK5}+_}I_zRr=yE~0Z?2T|Gi!YA%JTVs(>`$L*8 zB5kp*vmp~tdXP#$ez9xp2ID*EfUAqD>pgSM_M?V91A_J2zI$)*`$<08lzyKoyGw2GUEBXjEu z5Zf;`mFJSt7q>=oaob)a5QRo@nt$#72Jy3Hiq-fgbcFd zu5w;!{_=5I-xqR{^7dGY6W-52Yj%lQF{P~;#}!WOwLZDrHQ$ELCya0o)GFWQPFla~ zov6=v?!9dVGXAkl(A3ayU5Mpe7`?B`aptSk6C?kq)QRqO?kO(2Xe^Pb=JTAdkMdho z)z?O&ShyxJ$|V>Hv|q8g!!mz!J#Ctmy{$PTqibiP-tFpP51fz~PrlrBpxBTSdkAT~JV~{H`Nw zl!%}9Ug<9>>y(Na4v=9yV>COH=c;c^)jqY4QUJ-coGwxfNZw>Ob;vov2L8%G7lcdvi2&m)h;oe}v&3w;k{3Y1?wF}3RM@6U z(}ebfetL4Nb1jiTVqgr_&;zB_Tw_PBz@KN@l{%(=Hpv$}2Juxk$~5&baiEP6}vRT>{uBH}Yo94MeseCBcV`Fwp&=_4(_vZg&i zzLvS>FV#=8az~cmKJ|%NTnR}MknKx7nDGwK;auza@VyZyTW#-2OsQzyO61C2u;v=S zW@iqe$dcsl6;8QtWeG5fI5KxrUPa8@ul&)X#+|J|M~8>9Uxg5vf=!WqNfn@TD-jmSR?Ws7r*+`EU|LNNf=^b)(e&znRhccOxq_}IW@m7e`P-H_N18HTtzbEx#!}p$1 z4!wRR0X~ZP_TM;-z4R|0zrLOD87aj|gwAzfrN_9!A$x7ID_2}AT95{XJHx{{wes!Uv@#h(-4P_GGr))Y~r`>Lx~RitwBdwlOii4_8(z?qSutp~f5A92fHCBJb^bnWME zMbctEhXcyF%ad`)Nvb3_Uh2%b3;M&GL#WkQNdd+XUAE@r*egqme4bFqzY>1hGE4)V zGV`d3o1qo#qPONdT2wO}T&Od6FmMs-wL*;L0EPFM9ki@kG272vx(YM;yn6N)R8dbg3 zx_CoD(@AEtN-ReVwE@Ks5YC;#9EXdjNrY9OK*Xe_!*85hC$aR>qK?9yPJR`&!(6%J z@AoO54%dmj7bEMrJ0u&7k_r7;3a>DKRwLfnTHVwTanh66H`IEz4(rXii6Iq;l*T7{ z4^}|k3Gpr*banY+Pjmk8rpZ8JlSFKq8v&s!cWiICj;n|@i!ql(gGa&%q}wHG8?n!A z&cgj2+cne5&)Z#LChVf-#rrsg&Q9=~3VYR(ILFHz@o`x$usb@43Cn}_gYVNzKjuu} zOEXM0ITT3b;<30b{&bMF2ZxZIKL#cP2U66wz}x~|z#W9qDg)&hw@q?S3OsV2^c{5j zHc%Z=bPKO=&DkIuus!6Sg4!KYqy2Qy3i-Dlt%lb6DcD08n+wc`iFo?twTBpiS_-!5 zpMtR))U%)J_cF!F=7udHl;~qbSd&b0Gq}Mx!zIg3R(gQ*X`?#3i$!Ij9j`Lq_47(9zj?wBVetPW)7)LVcyTgS2Lot^POk}iI zL)9;DXbsTjs93vLSi>#q#`U{#HLR+KohKR3`lPEwO+H<`IOqqzE=D_|C=kc1EJdiB zqiT~P!?CiHhRsn!eYp5J>9&=_$)q`-zAOb3omGymDsNQ4x>#@fXS_-7FYab^dg;|n zT3#|1(n$@MBa&Mmmj;65F9Czxt)?;wPHx`HveSo85*u8Oq-4ktto<&`AhZ5H7UHp5 zx_24V9H3MBNBF%bLyehx10VQYFM<-~LE4P<@#nwyyBWPs!?i9geGkJ8uyUR)AlepfL2tIm9f`BlK%NHtqdPy z!|W-{(9Y_GLY9w?fgO9u)VUR2`vWVm(S&H5?ZJeU_&d+Yy$W*OL?!1)#=K9$a)Ve`Id#zsTg15fUuB!MIC>NRC7A z692m`0WRDs#%vwSKK15GDG6Biitrz)WCwZ-V%Zl_lO?_FB8_45gq^b?Rp+t(s%tG} zjxs2kmD;S$)MLSn@BKu;9y?0io4vWG)UDW!4V$8Ud{hOAdck1{|Y-A*uU>lzn5$zO(d8#Ynn%ii( zG3DCW6{;w*{4S(#Y9XG&#LHceP(O~tUq)&Y$aMfnL~jV+=> zcq{>MX2%mtMtJ!qf7`o0SKUN3WsA078-Kc4r-$BI?%c#+5rO43HUD~W+JNw< zIH)d=V&Vx_KchyS_hb?FX7kPzO$m$_)kY*ZlGu5;s_x0P`d0U;pLMXB?*P*Fngehv z!O@$A?DTop3{=^Y+t2Yt#CkYm!%=5fG;9`L?TI`!*y5Nw65o?yn7ZIqF9f#$ zLq7Q4?OL*5UJ@OwNaj|o#|-jWRIo~DaD$@3Dr{=F#Qa4{+e0TdXQhy%92oWYGnla; zpEi@5O6%9vyRs>}!;xjZRo*cD-gvSJ`(?`vRu)JXlkhnqg12$Jm2tK4U6yBPqF*{8 zNoKP0$(}YW>f8v~rT*lsUiYU)96m4FY^)l>*4Ma>+kw%di@BbT=S{MVd9eO9xv5G2 zlorla;!ffQvUO}|4_jszZB4w%!eMmVn&Z^!6ZOfuN1x2s*8Wa2r>x2{k+Vd0Ed1mC z%O0EL<3E*8KH}-6Q*H--jpB_Hy03uzETPUn^dtYL{_2wv8)X&jH%^67)#)4g z*9{WZeei3!zHiog{qCNk>bDwhPZw?LvUOZebtTcECO%6PmhiJN|0&7;J@s$7vilit zf{3B3GFmUS-T5|ui8BXo>#aPq`Sj(gwBz#ptD*fLxlPBvzQg|;P1*nI^`K5*)ZOpQ zgO^c@MkKfo2c$z@6uq;rpAsjc#UH&)#mHrekYxV{ zY{CC9aQ
EHL^i9JCsn`_#;wIH$>BxpHom|n)jkbnGd#JvYtQ`^=q9Hc2#dM^r! zN|Po%!9o`iq_?1eG-)Ee1d$?Lf*?hTRFM*ThtNBMR0%!wo&aKy5bxUioPEwd?sLz7 zzx&<)`5vDK7s+IaTjoc9xhi9nA~Rlq^Nog?eIF67>BA zm$Zo6n^K>KBqagYCTs&3;SA?{e`9*o@G{ z5``XjG^LiVXNbn0EwZWBx>rJ$vMH36RL{@d!euFLdZ3kk_*Ij_yeuH=^RCp?9&^|G zNrswnhEzBI0ViL4>s((eu?*AEs<2&=mf%&*5aYxT8z!n@RYgv;x2t3O+rN0;CAmwH z1=p_UhpQ{VpFeQy`-YgFS|URh_mw)ZpJ$QiwMo9KFw!NM05_4D)1&v1R~q&`M%}Q| z)$zLTe0}3f2!U+`+VR|5$yk*;PB`bQRIYIZc<3_gG|`>ndR>*<;cUxV4vQgL$a%?nOUAF5cm4hf-uj)^)-5 zPV@T2&in`Icm12JqnD%6rOFtWrNl%f&_JC<=3E*+_F<2u;C*za{sU{Ew+ zs@c~@7~&{zf?kb1rdY#EEz#28Zi_Bsb_=Fi9yPyv*uZTK_jxB_y5^LX z!Xwj~Bg@;o*O$Uy68Jhuz@lUH-%8w9G)l2r+&k8S-TGy2z5H3gToQX}^1+gfRZ z?bRN4PWbJcO72xv&+^{Vt5LrZcQehP#;}Bdc{ca+z3*y8JqR|S6&W4ok0vAX;TPJC zoqj^@u)UEtEckpuY1ObfjvxE3bvTS$apFNeT9H#daOvK=i(0~s{fr>#lV=}d$;4IM zx*Z!aJ)!=Ji$mPPdnUya%|g>+U{(~2Z+87F^#%AdM%Er0!Lz3B)e@RVs7M2Ld? zV!BurjLIY+a%c^{*t4cCV)Kr4=0)-DXE|HqvQpa~=y@=YziI~MFth!gwXHe-x;;L) z+La4%Pv)4n6)SLJTQ-?)$I*@40{)YPaZddbtIv|6AuyUI39sCR4HF?xFLnVGxQqX} z=38mUiYF)TYn7sG32q=Nt8)$VwC4f#3HE9sdYeOA)L>GVq^0hV-$lx4gx|_aOc|9$ zo2cTqGNrCe^W3j&RaJTkSSh`|+Q+uu$x#tls&n4YB~+BMNyU zWhBrlM|2v3z0JPTxVc7CcF(_$26wSg|6st!id6N|?eC>Yk+PYt6<}>FbzG;pJhWMx z6-Ta(OR+hAbv3?_q%sm9hd_krb2>8L1shS>3J7E$^H4Ogq1%?JZPB(dRohN9`#M#x z?w5@U=NgBmzh#xN)qaz7BbRhD_SIfo*0mBY+X3s>df%G65R%w;ZTn#h7ex~uVVxtG zzRlY4F%(zczI1y;;tn>6xMpX$+E-r~Fk)j@(x|UQB-X0~Nru~24ZnkZkjAx}S3^aV zGODJ=@f^-4h~Nrz_FJn^pv1tI_B$e0n=lz~Yo^>0@2(62gTLzn$wzy(nnGS{5s6rL zixg#u{olJzC_-u~@S?vAR%#LvP`XiWVdfY%jmY(}nccO^FcV64TNVExn0yQeA3KiP z6-K8{+_YC5mc|IQL&5>=?Ujt>b`ulS>}+YDGk^SgN&@dLHJ_M%FG*-C|2g+a07;w`8v06(VJHp3zG!Oc!M*N30OtRGZ@*Ro6DE(4Q|Rrbt;zOH$5{lQ9}p{i zvFE(e0AuuJdXVx%zqQOI7%9%SEtLXi)sb{(O7qdBQ+b7i!b5e@1PS?zo$rI)%#|76 zr_IIo9zrPnIdM*lCBEA90FX=z@-Rs{G&k11-{<*7<9k|sDp_yjuJt&49R+g%0Y*${ zPtZ{bq<5q=yDr#KTh4ZlYvi)dnnViOV$Yk_*srCdk|3tl8D%<#D*<`!WnTbIFC;Aypsu{NoHbV!6MoLuoUXdB@!7g} zmPK%k3sj1ZG#m6(?MXsl1vMKCr@*wEzCS@xmxRb)Tf+OVm8NSC$csgbi!Hv3j>mj0zfCZDpUbY}D3e6o>1+m}pcw^cf{; z33yrpMgm~8Rq{}3ob$|%uSc>QiTu2Iu&O=BT71f9A zoAMJNAoZJa*Pn3Mf5=7s8EO4H_F89bOAhqA)^_;sTH6^|QD)M+p1W?L=gxDl)MtjOB zroaP&s?zAxWhnbRcgXoO1iPE09Hd;B^D9M`N#DX6WR@vzYU9tteZH4UEEmLhT)T={ z2-y+gzV4BdJ1#Qv!kf>soR2DC;&CI}cI5KnVB%z^q+zqP&C0u@nG>Ey@3i+qS8jOo z?@~CXLeXAdekccu*01`)(;t{?_sm~$cXYT9H#X5|YZ-7>SuE`UwSZ5)9TW4UEin7L zc%U`=azp!#ig>QeSZJaKBH;PVzfpC`vQc=Op zgT1##EQ5jVdspCkL}c4)%V%~$p3hM?yKGq(c7+_BnlEQGl|vCJ>n!w=(Z)r4w79D; ze}batajuXZ;G~yt`U7X7!Y1`y6we^JemsYB`TN;_YV~X3p5LxtF`?4&u;>_vy%)%q z*-9@N!*SmuI8PhWc*^X(|GntQ0Lco7c$N0KsPr2Whgr$Tr z5>2aOrCc(X#My5q3DPMm1Jd+UCrG|coR<{Z-^OmSOy5Qp9P#4hXm1X_=UW@uB8xli zuBc<-)2#MHk(T-;ghs!wlrDPFyPWU137tMY)@;I(&c#Lg`$jRtm-5~{NE{wZ&O}wlm4i7gnS#8`0${&76LnoRX zR35uI)zyw_5&T?i9HonvM8h)JG1V3J1m?0>#^`|M!y38gJDP#j$2`GKLx?b;EPnb7 zXU}LFYxgd111HI}r<$JN(w*lAWWf!CfTV!|!g;`lHSb-!FbRWvy4Z@T)G zVW3JmIS{mdGPSYaxon4|_BTR>IL9K8innSWJ&H00Pkr!L z8e5_fkAQK{`q2Z>`edd}ox$gLh2{*gs`*J>*bfa@#LClg!OuD`N^IuxPQIQIkMi6e zFEN;(GACO(c$rUE8gNVI5g-|75KV_Goqt5yId$RuqB`j$nW8G+H>MM|B7b#UdCs;< zJGI8x!&(AmjG$Ay+?l!8^0VhHKB1>QZ5*yg@g&gFui(55qoG!MFF| zD;lDvn$U(msl)q=d8uR1j~VjpMas9gn+ZS~TlRv8qm<$4Z<_TZ84{P=af|V0QxX1; zy#m?We}X!r3T~QJ85&Z2gv~46&1_{qJoN*-=bJUAh!UYa>zVK48g~P3#|&>nui@4^ zQ{Npgo6p-1(F@XV+B=HE!D&H40T@#6eMxWYt!wV;PW=f^X8^|QNKt(;;M2qP)u@G( zD)=e#(f;uC81&skT<9nJ0e{h@D9yyqa+ixq46R^&k4GaIH>jiG8gj=TE2xTvbZXu0 zxW#;USAm_WYdpj5ypm>`UiW;{NxI`vc6FG|>mJeKCm$PhQJ<&AN|R=H+8$qfT<9mH zsIRLyvAbDv44~MGxBmfU`!lTVzjJ*@LQ@&!_J=b=OciuGo?5{EionzR=ux~ukf;3k zvlOPAj5}_+$!sokpH;~+xhCe2KWb(0pO$$gyCah&1&$|h%a8&5b(;D>2oShN+lSHJ zKVS|j7d_tn2|6LhUx(Bpeu6$jaH-+FPz~_smawR-a>yTFs?-O<`T@|p6cqTw8GSN_XX zc<#9ja>g%x1;4w+$$w7#$pa#*BFq2d{iu$z-GAlO|36;VP>4q4t#2?yqrhMXw!8`9 zS+TPOj{nL}|6ltzesAgDWF-IC7yQPUssiL8zbG^Q5q$t8Fn|9<{crn+f5=k)b64@t z9mW4%mhvAJ{}J2x%}4hO&+AWNjem+;{;m9bKq2qQvr>HGfelZ?!wwQ4fn2FPC!rd%9#wq?=<^-F8sDvU zOkRt+AIV`V8STcX#M}*wh*(KIgX54GZWs1m5AE}_Ge!$T?wnIP<}Met%2paG1m8Y) z)$YIR$C-e+0c(SR<%XB-{GlHmTUegjf$Ei;n)!!<#p}yKh$(VZOJi91SF>A}Iro!p zhz72IaZ7qkHAZw})a+>{CI&U!*LmTu_
GNb%7Vf#J50t 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 literal 0 HcmV?d00001 diff --git a/technical-documentation/testing/screenshots/pr-1177/running.png b/technical-documentation/testing/screenshots/pr-1177/running.png new file mode 100644 index 0000000000000000000000000000000000000000..e59e0bd1521d5d8585c89285af55c01f94e05fd8 GIT binary patch literal 410913 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

IGa6$E!-ienk~S_=Jj&c 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�W)km;GtiUMBUa1hH}5}ctVGn%nSL!T?iAs_DhHy2_9KJa z`62CzFcFjqVms7OedH*?>iM2x1?5gzm(_`l;Ztm9szXI_@r6b&9rEB5c~Z=XCmCWs zJy!*pnAay`ko zsnN~QF*%YVYEjyhLOJ#znkPdT5*IG`O*i@D@ucI|QgGhTPxI~M(WHeB8V-a}LoVz6bN1Qm=p zZ|9fR1|T)&4IJg<1VVjLkLlw2-vn(xzcuIg>oT5;ZZL z0NHZNffyRJE^;vUP?`kz3(yzJ)mHj@+v4lh5npw7BdEW{PF5>SI<3_bOh0$2gTNMH z0mQvlc3^)VDLVd_!0D|hVxwIonC=-dfPk0gM{gm(Zr{~M@>3(^gUFX4I9 zdZ9{f9QYjfe4fczk}t6AUa?mO7;52J7#65_CCXu`*!3pExyI;QGB@F*_hoTvk+wl3 z_6kziT{}%HA-U0(!_xg9OzL~%0E`HfI?Ls_bt!+s^6WU}UgT5S=bJ%<=`@C6cVeE4 z2rlEK+&g@PdLf5$c3!jz0ps%!5NcEIk+}FR>oklPc6XWe=k5e@bjINtGCJpRWJR=PTWtFeI?j^T&7tUh!GxzkQ+IP<@~1rks`` zUjImR_$zh}vrmEW``^nf{iDy2f7eR_wh~Npy_X=?&e1UnXlV6Ry;P=ZfFFq(&oTk( z6=aFB9sqvfob#Q-%rAn^4F}F|Uu@M5>_gl`6N)QQ#WOqyduZc{3&lZnfr>carp!Cx ztkec|K=Btqf#hmjf?{&d@SA~%_$OEkpAnEEI61aC#*Cla977V1sn2I@qSi4dl)UTC zNRtYtXsc1;>fs?VmxZ?EFkwQJS*|+j-R_9W#L!KD%kW^4NMYn)vzD{UK!{za*J9TEBt4~s)&Kn8C&&lH|=^KdVQ(5ZW~QGg=J>#AuDD( z4?+2Uh4Kzt@gx)C`&HJDS~+$#40wwl>`}gT#g4;I$`W*=5cELei=gZ>C(RokkYA^k zP%0bNKj+7z+#wH96>2J3;(R7le~X^1W!*u{m9K3tq=5*f>bNCjK>b2_tlZym zmn1egM&vQQ90Wz;H8(9zNFdhX;U5~9HYS|s@5MSM$bFe!nAB|GA8pm1;)&XiH1HO8TkpE2Q@7AFn$oFVUwxm!*~^J@EGhsI_}oF8*y4HvZ*8;IZ@Q3p8do|e+@LJMNRewJ$M*I4R9#2YEFFSa$ljKDAtY(1Pgr7si%lEZ zaSOuC^Fc8$xsvAY%sSAobgpdqL~Jy7*Z@f>({L=5bGzn(mujcxSe;l(eJXEUhC0vc z*x<~4@+)6oS}Q)CbS+#ZmBM;P%Scybfx{`Z7IXmdYa~UpA>~G1M~P_l3d}uR)ZElG z&a$>*-_F#J(MU0n-UaR4|7a`n42KF51TzCf^c~tJFr?px1;ya*iB!I0S%~9LXTB9* z+TIql1@(|ddn~2|?GxO8Urq0>{x}=}Z*hXj1lipYtHO*ZV<0U>w85EfL&DFNH#gtC zCRt3XW#_*@$+t(c_*Iq8PLBg+aa=T3*uaeHl^TW8FSFDW_1xkpo8zBp9hmlw>cunb zpEZZJ5%W^8t$2Tp@EVVKCJ@+7yZf1iR%C2MZ^+WAYR7t8^$d5NY~p)@d-h8o0fxY8 z3EhyalmfTDuc_5A3RI^k3bte=(;>`QMK*06cjdFmW`7vz9lPqe0A<~6k)lw{byNa; zp!i(UdmoR<5p(dTw-_~ zfV}kbWul`B!!7C?yxHgnbuBuvE0gGb0;)KryMSB)y( zvC1$_JP}7JDtn7Qg=adE=nqzh@jdYa?1aDUlA+JBWyM2sLz&l7K*f z5Z~K#&OGy+=bQJPGv9A!zVprd{2|`I?A&*DcJ^Lt?Q5@fU6&5yie@8HybI{&R=RDI z?Yk&M;JYSj8_v*zi3`mSycHDPFiH_HxdUHbjd*%o&cM28MK(qDZ98A#m>{{duadn& znJ{widIhxNt50EXgl3-g+@Z2QSPgxX#HD)@*aGG>xs~XWdX|a$a(C>*rjlctI~KRs z5|Qnx-~H%?q}E34MM>hL4k~oTi$&u zCWn2E+X1fehXSX80WBIyQHN@aQLQZ1&8=gW^=-{9A2Z)4Ato1xQtARWw3wLaVyY=8 zb6lcZX`RIubtA@|E`yEbpFZh;^=b4LuctO%B`h8at`_7f&Pr_)Eb z`02WE?4wxC0)?{8gVVY(Tl|=NRT;ETr$eT&{0=qhqVB#l+e-N~OM6*gnrww22gCC& z-zHn!f)ZS%4IdP_h8=+>6Qy}SZ+8{vM%nyB7!gE6omK~@K$}q^wcEGR19CN-;@)1% zAO1{Ew+Zeo8Bw$&lneks0TTQ4W)t$f4+xWOY9(tmA8S3=5SgVcDQ4RWaw$Uy^p?K^ z%KRm`TayG6-fa*Tz-erm3#Fe)eb|s7RGX-p5lp|qDXGUEOiuA23m;R8IySx|$L44W z9lLbLJ-~h-VbA8~)3-}EKrz;dYSwRAFD=eMQbdky9`Egn1keI;Nf=Jl+eNpHl@0xf z8l!9W_)6sjVQQJC0!{ZVsjMiC&c)8F>n&k?mgyqtbjF;C3Y;Yb#>)M`LgIX1RzL(% zvdhov`d&V=_vjd>n^E%^*6s%jb=8OG_Ujzl+UkJszzP%?CPx%$L9_(JXQ^0lrluAU z?w0@}Ok?-|({zyjEe6ehir2a(v(+6y&JTU{Y8hCH@tWdz$0AHOhbthP_QNL*>5XCT z2{0nUgVM`&x#@8g@23*FIMGFak64{<0Xm7tV749t#a7pv;;|Gr;~@@I5vrT9y>! zkZa$Q@anGkhx9;+{UNB=IHLUz_N=#GA+`~{^|ob?O~e=L&L1A5`TV@X1y5mnpDX4yeX23v1GiGU+ z;Li&1ivo0Ejp9(8VakatZF-5di*(9h`EVHSGHf6Wh`cT8BfvkT5vS>kfW5>D0mHM6 zihGY*cASL-=o|}}A8O1WmpTi<_rJu&G+15HW~>grN){8O!UnIocD18azxLVuGqtdH z+2L(8BJndt-HW86(rhyu52s{YRs^ei0!qHu+rvc8oBLm^=Xd<6Feyk!({f#9RBu6nO7ZF4`gg=zBce5H$uXhEOLiv#qpAtd<>BM! zex{BOg%I5d?{7x+zE{%JeK|MY4!V2gR%>P5JD=zo)~BfK6}p#!q8Q(mZXBp7eXnyEQ=-^w<68&y{{)+yD{cuZaKv$8Wn5AL)NH z&u9w)?S_#JmU`=ICzmheyv$dZ(`Re4Rqjh~st($0UwO_T!{%N1i7Ub~QGuWInvy)> zxIt9zh-f9bbas{ta{rZ_^o09xIP_9YSnA|D4sp`$+d3Hh(f)Y1q4Q>w^uca0?el_U z4@u5%V0&1EfdTH;w?KMFlP?I0aQN;JuF=ab{$_XGS|(?`He)580@IbHIC=IUg@9OR zdwXlP6kF2g+-`MTR~uzfAXv(9z(^5%hK6QfhT4=U7_&*8JMG1Dp$g$2D)Zf6zK#PfDR#s_;`b)T0MSROly)#Wnlb0n2Fnk^J+wYbXj zoIf!xA6_>*V~n5^OHd?ASo>l}{o+XCvZzhCK0oh`193E)thWO4PBkj8XEF~t^tmnM zNGKNis5LEZcOytyeV1WtKBS>ki>4P+r*39a)N5*^=`QDg@mS!Kgl#=3g zX*TXT#e|+V@mvYN7goM=Z=+|CAyB}ZWO+Ea2;+s?99)it8K%w|ceyy;Bk_#WcN1>z ze~Fj#G{JjdK6IdBu?LKYwO!Vv*<28*LJ!(Y#l;sYSQBT83ck{LH7inVou(&}pJZyY z^CDX_zkFA~`7()-w51+VvVcFoWPJRPi(fE3U+|04oR#6i^+a{Dvb%GG8-vUaRcbYYZR%(rM3kwWIUT;ctC>;a)|Ek;n(ORK@`~B&A#RaoLc|52bazpJK@O-(qY&p3? zJ^Hr78V7947BH!XY|k7xOC!M_>}|^A^2%^lGQD5I3ZNobor#vYAEhcd|KDe57x5@G7r6-QX#9@`A^M zkrWu9d?tgB-i*LoM zR%wn&L11!VR<);X`la+yE2UyCgm z*Hv?NyYds%eBH>5&AxA*tHP((;VD-|wswsz#?2ICR_qT&D`g^^^kDQx(+D!ply1qTavT>c7nh{qgbfc{&9yI@~^kB342LMXP*T}E}ncHf6m`WeIP zk0`TLZ2T?Vllq4_6C{}4E3@s|JJBtS`m&n>yIAd~IEbUflpSx8er}CWCr&ssx?cFrB8|dieUxp(t z1qy<9)?gpJr%V7nX&Fh`%vYY~EF(@Po@wUF=?nAEY?2A=#tFIU`-#KZc!vVuNLX+i zX)_CQ-mue`HR?)Y`NrMgNHs!r5ecVv>!}ryX?!i^qj>05O!fjeo~B5vV9_zqNSvHUzw%HuP459 z7__wrFnS^lI`Sbrq0MPeaKjBrrlALGi3Lwv4Sl>5qxt5OB@jwiBv?3)pI~@$J3r3a z-BVi|c9zj}gZaoLypzQLnE&iBRe7Xc&gh2G%LXw5$_)MHmxV7#05-AR0wMHerPmIu z1W_zRtMp`R3&M{T8Dto|ZQ0$bWlOWs0RWKrtj&4xl8OB=_4Z^I>-diYXaM^;)C*3%>`;TZz4ze`8;$mCR?$KH6=MdDNOr;9A$ez9^0Jv4nZ+&;TE>_QN)URy1_QsCAkzv&^ z7fX*?$g@Ou^&%#lR$}?P5$E=G2EG$r?NM)g-mOMZY=dDxBLp>K)~u!Es_~ zG0teSojn=n{EH9!nxu9037P`sUsUJy)Gp`Ig6A#tsFWE*t5N63?3bZqNad~A@mxy-krox1Yj2_WW)_OY`jH)=T8LOq# z)=?1%wa;E@@2T7C)!?7ttBB+fapnDs-ith8F=vBlw)CyOjoo+tswhYYqdm zao`k~EWhPpsw0%lkt)wJ^v&LNEnokNu1&`#l;O@W3JRR#N3f$IVL$NFW8Xft6&RWy znyw+eD)&H>{{u61KU0{u=+;RV5vu1WDEh}w5UbgY%anVQaasAD<{8Kvf{rhdYvGi2 z%TiTI(v)ghe8xVw8=n`7g8WtS*bv!E<0Jm?7naKr)=xXUS85>oaydf%C&hBKCbMn3 zn&{6*c~`vOqcT)@(6`izQaxC|Sn31@w}wr~P$Oe)d!%?`MfnA#jZxe4h40+fKes+u zWRH7M`B>@v+oi)&%MVK<`52xqMz+YKeFl3^bEV2b5!;=jAn&VJVUBE3+C2vXy^+XM>&rn0TuxDa;{fruDynU!?Ez-W z3(4|qsxwPsM8q^2U^$H}n>MpswEq-^{nE3Vt{_FlrA3^SM=W+&GqvC;M}+Eqw>+=e zCuU%7-dJWji&&WVsj7cRR`F16t@`cMGv5!vey`0PSK4OkmlnHYJ)zXzrSkW-4S6f) zHJv?P*gQ)FU9!2R!Z;8F8esYe`U?7>e|;f4D8u+OZqS4!D;5c(9xB9q=<7*6%Z`M@ z^8wC@g|7&vMgwq-B31RhWYSAI;kGi21*nCG@y8!9JtQBEZ;oMwxEwS{I83UlFU{fI z=cyF^5gslho`X?%Sc}>SyZv;`eURp0cei}X%C3-uZSJ?S7z7+8v~q8M z`@SIZjp{@v_y(R?&x;qfk`Yu7glE;LB^V?~HH3RKrJNUwcXr}ddKsY+wb|t6_F2@E zfZ=7HD7q?83$B6$9J^MO_4Oye3g{yf}$&rbgzgE0LI*4*Ge+MMH2Ertu<40}jGf zvJH2_fHN-eJz7?%~ac*6Rb-hp)^HfaL$c!^{qG&#w~Yocbn1R4ePx z+pft_qy4%~=DZdzV_pO5I$;@g1Ju*7CkO|>bpzMY)3Hwta|MPrcf~du%K?93&Il+i zluGvll}Lj)YW~Oq!}{#=JBw=PQkR0?vD;8I9KP<~GLKcX{jzIOUOt>CN8~Slk>;=R z-Vp(R<<4*RWT?bUzEnIyAZh)W>6K&>4|RzU4;s`!C@B-ic78)j0XfXH`H5@S1F6p0 zYf_LMZe`D?Z%Q!TDUlXAPh3q^{<@)>aZd(%F6e&^-4;=V)@VY`If#dgCz+T%o+)4O zJsrR=jxjpuyY%)z1#W}d4|fL>*`)?Dqb8E2Jky@iM=c--5Q#Y(+bWV=8L3>rM4C)W zx1ZTljg~SMI`0f9Rr+AUJ$?rkeM(&ac-YOlQWa}MxzlwvspvAymPXCvDsdLoUYs~& z?D!lW(R$Ng6zy*=I4)S`ex9i`rQMjc&gZ;h|6;w;B8G;lNu^JM{&Kcvya0*yc;~0=SN`mEQf&hsZqHBDuY38(Pv~(&7&=#1-iyYfi*T|s zqJU<|EOd2ZS2ViZ+Y5rGGKG|xUc7hOFnz0ZqFz<#S>HdHVf()SxabzN>G%bUf648p zZF;XN73e_uaHdDOr)HRMQB2KMFAm3R(HFeDGU~4Wjd(BTRk-{hhVH`@6eO4vDI}7mI?CgGhF=MT1@Uz z?Whd)z|>{Lhs*nVsQt1RCUF@fQf@G&-sYDQP;Y>99CY%c|7;ybt5>n(8)f9)^f61e zxqeE(!%S)Ak@x=7>U!@Ku7~W*tM4sd_Fm$ulsz;D#K|vt>-LO7X&HYk@-9i@J{VPPwOU zu8yszTztRC z-r&@i*#Jltd?s7Ec@;uOTOh6o>_?MHRBP*8W^2gRJ6SX!r|95XShi4K`)*9J5HUMkbm@aK zkPyfu1LoSHv>h?0A7sAr+P%;2qPH)uw|G~U zKz-P(c{Ls0+-s66R^Ep($mEcamx&q76sqAWD4tLe{wBwZTOCgtszb|{6I5<+h+7OL z7=>|Fp1!5tA1xov7JFyDVRg`KSmz+qoHe3x;x#&DQ2WURme`IJi2`FZ{Qbm6+Rh)` zoL_uqErHz%q?nZ_Sd5X$CyDi3zC(z*Ar1LvwesCOuh82MGP3V-#3Hpg&@jP8ZPt3? zA~Yo-VRIu8jl56u2@?JzmS~@Av>Y2Yeus5?Y2Ry6_+tI^?TTE;Wkd#_s0%-id-_pf z0UrR+>`4Jc2eU&6gwOZ0tfwgPHPqK4MpWW=an+EjVj~Q|eM%es9^(f=&DTt(3$)EF zXL&UwdNr*Zf`qMSBKo!4R}gijs#-6Cqh(3qBr;-DG(64vHPie#5f)smQQ(xPT@0y; zn!3ZIpNJ7WaQSDQQM@0d{-MO?>ZAMWuX21ZpHiC8GLJ;&ddH(n*fOtDfO9jp`+Jyz z^Fxkk5Z@@WVRr0@$&?&#;$eqvR?dlB<(p0x_#tUGH!=#3kk6HQvidU7hF!o`)BD!o z?gBUF^|Buqd$Q7ay&AVPmqX|*irK3i&VrT2q?BVdYS7ToBYtUVJNH9-vYyVo# z*)G>@VFwoy;WX=h{rUJLuA6mA4Mve>_cVVXaic0q><`0P9xv)xy6GHhF)~ z${>Mq1q|219a=f2t-st< zmu$@ieJ>$uDY>Qm^tUuz!=~n%k9A4MXLh^0NSy;Ue*A~p5XJKd>SZ4<&?Jf0o9YMxVbLRY#d1maGf=y=$(zd%@zgz zB?Wm^oiPYd3L z9T3)OoAdmkTWzQsnWst^V?Pw!LxC1pu_P~>^VsS$5k-$WkaYRtzI30zo^ z=w=yo7j_1u@x;T9ig8mvL4{Dv$xo0;kXZ45S<45bBfGcD5Bc^dgGB8L^YWuu@6od^ zX99&DdH}5POqk#Dn-@3~q^@XLR}q9wOp^TyeqRVEQUeDhf>^(wpz`}ndIo~WZ5Q`| zvXQp4aoB%lipTaA<)I)0drd%$; zy`bdMphiA3vB|$n2leweE@S{&y^((7mSw}1@uLEbNqUaDZAlK5EA)Y~TZP;)zPDCP zB)~WD{l=j-@6OwbKYZf;5*(GiGY0cIq6tWM*~8^#elt$c*1h=4b$qq@#p1ZO`*kZC zJ%G{v*ByC(eXkio8UZbMrVzKk&3i7gIDer?CvPLKsCjJP)^rvnHza-n(^mYS@FYIP zvcBTJ6~)dkaNRDVl*aSCa-+C!$541~oMuIG>^kLp6$k2F@c^xiUG(5x#d zA(l#5B035ufQ-qe6I6`8J9NH)vMVV(BN2$#!p1a zQeq73Lr*g<){lOIE*Uy70ml%0pg$7Bt6%2%_40pGlIB0{b2|C>R&CPmlXB8B&z+BCxVfy8}VvLa=;= zrtp2>e}3K1G>g2x#FF7w)~EH*Mc}Z8BteECS&H8Yo9-b)EvQ5#o5Fa_)M1=M{CKDKdb+R zz`15VtZerR(umTF-{2HNiJA^|oLTt1O4-}Shy^xsi z!MV0OzPvp$z(KvWCdVS~3FGxFLI*7}2~xeFOHn3#?Y`eYgl-zS{}@B;&tH`6Ww1`3 zGT1j@H*^!&t%L!B%r&XuUu5Ae{w(Qx8bgD$S!R zfdh#w;Ey~Uki*2?`n$W_e)Ub>-jjdC0F0!b1aAUJc@h8t^Z*#c?{A8;^8$#Z`UURv z_}=Qna`^ULTxmPd24g<_;jSTafVkdQM{d4sG9KAp1-tX7@pDXuIyZ3*u*Vz6WUna2Y{k@w?U${1r zsajW?0Na`XoYP;u%ncK>2)lpC%Siv}F8?lc`7_w~TMYMy5arKM?XMy0pP|~Hf$rbg z-#@nre{Qn$|MVLFj9z0*bprnT{lotbFVHNYb;D5#{03j}U^%4Pe(m=4e+#I9Z95G* zUA@)|N67;H1#{d2U=B7^1i&->7dQhr$NX0~LmOe&QM&ktM!<1E4F3uZ00{)Nkbl|Z zhY@fS*ugqEfg+K=fGN6v1yla@Q+}IUF<9ce{0jd_2W*$LUz+@}cmJCXSc36lhyjkb zzwh0@IRXqAnkNR~zi$E~DJOulmtP19kh#&L{TmiC+@6P5^T$>oaE*ii1(ZnvK$+hR zXKx?@J?;CyZv+q<57;l9=L3NA{L8*i7{%LOPVxJeKaSgP5K#6@r9VgY&r$tzuKwOW z{c(~1%>?~ZSb#gXeuDm?Un?&}Y0R+g4|eD8jmK}6rAGh&yDR=^Bz|u}e>1L8$sVP! zzc<+>FeKIQ;o;wm+XuSI%s;W?-(mm1ncaVK>c3qN_us2w{r|qbS$8FT zmjso4?2Q`6ask9<9>qT}Yo8Iu4`sfePq7#*%xj$VF}+1nbNca0!n7NM9GJ}yN~bk1!p(#mKHzwc)Zd(WMl9c9jt zjANfNJa#`%3$T!l-{FYDdC8FhI&fw7S_;JyIVLN|-<+*r|6$Z+Fz@57evJWIa)_dy2bK?ev6&va;TZF$(GC(?}zg%%l ztzawwM>2NiTUYM7Yb!qa&!S-ar_Jv9Z_Hl01ZckeVf~#BE*I?zEDeXU3XS=*mCZh$ zQ*kX7-9h6~eI_EOMAxLLblfz|VNqGG$dpt+=rDWDS6teECKk2U3|-MA_onOelH*5< zA`te+{q&7%neX=U9Vaq}iSx3%M3-SCVEbVre^oRw#w0-Mr0Xnp&SphJ4JEcHe|T-= zBaS1wi8&;s_8qNuo}}WCz_pC!Y<}NtRe(Pw@mEUpWk%(RNwFskhqWplP9E+1Q2~|! z{ZhZF#!pb)PtX~tJj&UL3&>ad#pB$87LSqvFU?BED_s_?Yyk^jY2J6!i{7TwQ_t{=xSx1Nb_J2UX}MCnN2$m)=YlvYytW@7uF}S zv@-XhNJGmr>0{o_o9;9QdS}Ox&ZV>7fy+3AfX0D%`ohqNhH@E2E10(9yRs$^@y>vHhi=0RkA z&;BK>QB7kb%KEgyk0W<|!3e>CT+rzJ+-_}ZeD8&aPnSsbWLhuWMM^c6mJRr zU+0=@pai<&CF-zCJWv2F0w>S3UW;Uu_!6IHW_h31hpYP1rc^pGSg+=5ZH*Om#ym*W zp&GRlH7AG8E>Gf?2|JkbQWV~IbTH_UQ;2#d0AKlc8G|eSFVL4e*~mp~ru;37dx~bQ z%AQt@ep#}$(ylO`ohFycAa`6BI)74FF$@lFWyQpsRVuO1056mt&U5fLj!skNW zbKLrno?Jv|UrNi+tBM9Dkb(7YWbw2sI9bdg3XZHD7{h8;Jbbf+=d_!+_lyp_Xw>Bs zIQx11BbM!49m{~Oc+dK}$g$MkPZ&Rn)OiTbx6yce^wO!!KU*>0!;)2AJ+SvO$RWnGZg{-e z9;k(~`arr#hHgjaQuatzrCv&F{GdJ=B0MT@2GNn*EOr&P)S~9^JRhAoMDbQwYUKh> zw(xdhb&W%Nm8EM)QsY+QtjJkk6>yGU2ju@dfqz_97wDd;RHV`Q+oaGLujMCW?Of5H zc*a>%T@zcF<@1*7MQ_OMFMUCv9FiKtFpR=+EJkr9o+_JYlX3Dw{%t`+I>U{)&6w2( zdpT4>?b2$nt1`f{+4!|=Dut3#OG0V1wY2^_?3>{rthQ)Z0qHVhiF}7?GKlpcbJMY{ z`Q~0etG+hi%Y)s%Rw1#$ZmlD1I7%fmcsD>QkfQ-t3 zuUS}L7yAmy$m4p}7%=*Jiu8lGwwaMC>!|Ne%!lC=R$8>~GCU3^;tddFE)#Z}>6jTB zjWex#ElXJ7Cx>0d?P&ES(bByfSWVK*95J(f*-W-P9BF=g%%5z@SH}NO*YYO1EUynQw`W$HG6rcj_@7qy3mp8+G1!}Z^fT`x@YRs7@R@FJXDX((~ zTe>d!e7Se!yX`Em?DMj`FwqOQ;H&*`5;}#MVfC~{RsVi~m1IrypD~;4|BrnF19B3- z_vM$D;}P{M&^Q@Frz~bvYG(0P=mNrR`R09R4Yk+LLK9#6AcRv1L9q>zvdfs#c2<6r zY)8b>Qd&=+2qU_z!%f$+LBT6mM6;q@1nhM4?k`0@LOg;;YovK5s2(0-56lk5jo ziFY2kZER!;ua!9z80R}B(6G9?^*XNjaJ^n3jYZe5IEsa$h96iUxFh<={JTPLULg&8 za90_~CH8n8^my9DNy!|Pe|Q}KDZftZX@Mi2sR7502%cBFkql6^ z9zMlJ{$mY=92I4^B&h6W6z`OoEx%jehGYlx0mVs2ehew zL^oaB`n>LQ$EAKywE5X?bok}lpHX*wWbZPbUqr_FNzl>JQb z!XL<^-+GiXMd&0`J|Fl9AhV$LWd+I?uEJimZ4wp1mbk!JMK)A8MhzE~?uEls0DdS# zh@zXD+-A>9Y_ac?k)JM z{{($>2Y()I9j%CgcDK;2S}WLY17TQ&?i0Z8U*-<*dssKI+YELqHdQQH=slPB@K__$n87q%_#*W9Q}jOY4Fd78a_A2No}y;IDwH%B0|5$ z^+tm)_)U)PCNGsu!skyNUQ8y}1;P@K7eiZbPkY030NVHpXF2<4G788hwd7_)ZDu+B z${VVbsl&-W_?Da@vtPm1i?ju)nP^T!v<-Z9dd52p;un1$qj=S|J?TJn6dhtpwM|!N_ajKWZ9=o`Wf{lyIy9MicGUnMEHbS<3{cYDe{P1>bbxUQ+II^UvAU zjY+uGk}S#cqXqcdFNNF&(|n)@V2vB;Om8h4>JzP_^eLDl6!=R?!*l=wRe2T%lXWap z!Mt78wQoO6mvYy;)N5+r^3CNcKh<+$U149EQZd&x@Pt?Zi$9?=H_N;HebPFz`^Ceu zz1?-s_J>n}45Jn4UGk%aJpDKB&Lm3R`;cPG!m7lMEvY$c+hqeHFn^hPlmI-W!caZz z#JnD$xZoYig_PwrX%EgX2y9ZTGmfi40bt0H} z6K1#gs+9{0Dq-T>Y`h&bp!#nE;d=*ecCr8t8}TT8ysbRvuPa5kA`--ZKhWw zGCvc&y25YmNuP2R7wj!m1bToB$hFq%N*$ z&6F-_ZD5m3%ABky4V&fv0ng!IfzL`mYGWn*CSztxnI%Z>`26u)&L&3!E$PC-lZR(5 z?oTZW3~njuzteJNgp%X%y!nxa!FQT%SJdwaQhI0cGt|ne`hBavY5mYXOXA`CWXjKJ zSLZgkGOpnxY+uSz<3<6WwCk^hV+^_9IDQ?;-cT1O@~JkJf%W!j;s+vKzRZfd@|zSK zeLZcVfee^Kq^V1UlwA1-;l5nWJMXS!-}4byOe~0Hy%*>8=9C_f0+prsoUNL!U0Fsb zce9NK;Fl`fGU?{?J+ObHL*i((Vv{85V_{_o>N!NdB~6&;FU>-EJYEEfQuD1HRpcS_ z(tIM-e|OJEULbl=>He~Y+sHLrLVYHSGjl$^`YH?h?H|p*Pe!6F?nmF^5wIjmC4rW3MUiQqWP2Q(U23oUmKBM1__UEBMQNA z=NU7EM)m979DzOq*ZCzVzW;4hXW$syHPP(opP*|Tj%}n{hU!mqwsfgiuf28Z&t%Y7 zt&WT5ycVd32pmHXW$wLS%D!e~pI<)zHN}q<-}PbDgY8$a_6Ybedwsz1>_w-{v%G{u@br0}Bhb%2(Z%_O4 zI~Oe~=Jz0nbojgI!(By)g0yK>Lpkkc5p}qKWWJY8rC^OwMcowFH|tWN6f&BC&F@(? zl(RbYF~x4yC00K_eM2h00{89AG&bi?pA<>vwAuB`Qa=~){@!g;m{^V#MpxIQ1NLYS z*Tq%QlWrRDH8Pc*?f@aCH9z)r+cmHpKHN3~Q$v##^<_s`ngC~h^*m#{p(z&!71#aR zBtc;PgM6qz;{|?cui~wWc@OT8XNv3U+(J}Pk`Z#Pi92ewhQMuE$Do_mYFi>28 zCLlIEpTvOWkqEr;K25EFY8T{V!-R)v#P01~PWz%P8zSZxIfDRr0^$e49HU7YvvVk> z5i5iYZy3QbY@QIiz@w6r&K^oKvsU=_G4#h+s9f2N)WvGSSOZ7fsB7V`Sm{2+Lr{IM z-o86s!@tNyU(!FM)iCmDG#Yw4Pfw zwBSwBv3}?J3~7L`6t&ZhfTwQ z$+mfJvQv%{rhgW{S+|Zr93xDn`;+{9Msid6^rV#I?tcF4%3#EN&6}g`F4&#|!)@5L zA4w)28AzgLyA=|85a4w&KzHL$3wFj=z%^In%=Wx=2 zeApX+zzVec5Tm&)7wM62u5@two*EO0V+}yp=xoEzg=YQwDz1-^-KRVd1t8b@a{So4 z*~s-bs1JN)M^HvG6DB0{?JD*BS*0W*MkTFY@wX}Rl(&pk+&b^T2umjl#ChlQ(jC6` z^PgY8NRoN+0?l-6hk3F5eTH<(P>P_uJ?WqbHfE3tzp$MMiLYEoB zrR?ZC{v^5Hjv8i~Jqzq((dEcHl`3nBT+iZY@lm~$R`Kp}=L33pZ3f>D6poEKRe*7i z!;LVC!4Dh^Qx~1;3{TCXQmTYw zl_vq(*qi9M9Fa^Dfq>Q2l}Bk2+{y@*n^y-J?!8yiPvDB!ybFhxvEBwax2M|EdtW2> z8884+D=O>JZDL(;G51{Edu{UW$Gnes)IL>!WD@ufqjAKiZVrIc=nJiRg8wP>B-RNr zO1rLfu;Y?4V_4FWsJGG-bq?->Rr7RFM1N{~iG`xMd)H6QQTODzGeyK*+Y^VGdW7yI zel)z;Q4MrD^D520oyRa-J`g)*&n6i-*TxdavuVzSqT885v7+6FnXzh(Gu)+E-)EWY zSFzm^7NPx#=~@MOaXh!gQ}_?x^s)v21l26=m?EzNG7Mlme|t1Vyv4T)=Xc$o1S8CS zfQW4)#ljw6=dlLyzO}*DElxUPr8&bF=vOm4sP0AZ^96Lc%!{g`ni zC;pL(nB7-dGl=im;qi9c*pK}gre*)L*SEUQIPbrUyOh3cwEQaIQAGpG&|~Yt0h$`W zi)DwCfOwhgv}5(9`IMb<7dV>}0r$_-T;)0YG8ZA-f!K6?_$ovxVt@Z}dr zE@`XwOPpMm>)F)C=76fs)D8pOJDFy*thTYJ(MM@|B`g4{`6;HF73B9c5%>8uv?ZH% z|Hp+O(ksS8RzKx-xd@qtU#eT}L!nva;Ur(OoUzx(s<-$(e}e9sAMN@41nsn->nIRR zOI~4td=Z>AE#o=f9{hIIRV3$zcF$-p-F_fki0R-ub!wD^XMmqA#%EJvDFk1(;`@_l zI$>dG1+D7_XD>mSQo~>3I5}3udJ|Xs-qkiYj4FZd8Zhr;sXTkn#*VerqHCYh?njEM z?5faTp*6DL@{Jc0XVY>Fx+sbmg)J38s~74^vFXl}?~a)~VJT!Q>i$7^zIEpj-bb91 zxgyJ@qKFmOXG9s$p5dVETEd;^C4-9`ED^e^+gz*#wK6-0iB_62U-n~~wN2D9G%9G! zxcB~PgBTa(o_h+zeQ+t1u$5~IMjuG$ZMp0j%Mdoz?dwF>N##Y)<*I7L3_{nhrvsk*ToUA9c$DAnWC|k zx2WW|yB!C%<9lln7o<-4evFZWS#MH&ucbPp-nHJfM92v{A!t)otn?#>_ehO%=*KIqo2vw`Zf6+K0vh+|6k>j8gzw z)yFZ|GBWS*-EcQ&!uCvazJ7`q9#3f)B)H|D$GzD0+`Kc-WB`yayUZmI+zJZw(Zp>5VajFyW7cGK2*t-H9c3f$-fPYd?Pjq zBbU*2^S&P}OQ&T!_ni2YqHksNgYfb5@LP*8Sx@SCk%GYR=1G=x9l{&m{3QBbp4ZFTzDu5LuxgBZG zBy}43tiwwGam*DG)*eYFBhu_FfB7N@&SPQJ&=@~G72Elz+H!J95Qgf6c+yA>3QG2CnOyA6-?^_sCR)G!#=$i zZMn7fFp-M`GqoZ@++um&=Y+&V4Mr9QB$4QJ+r8_7C6x?(_=rD^(12w z#6N$S6TY*iPsr(pCx4l65N7G}qclF^tQIat=ev0>Os=)`WrMKo^VXU6xqhNOnrCSN z?$ev?Tv4Aj)X9CvDPvEz>H~~GRPHmI$y!}zt09|AOYB)1D;Gup4R1H6Zp1_v_&=IB zVx!zL*ey1nQRAvI{!)48)KbxhUP5ucM#S46L@UuZ4g_kgHy~&Tav^a=P~b^JQ*2&S zsN9a%-O4zvMy}A?P03UmqryY(IMK$sYLsV_m+ynwjzV)4KFc7=r>-+{Z)p!*c643b zC_40$oL)(AGT~Yw_O#n=Rq$T6Xu52gX6JJmtXW$fnzd+Yx^?7Ai^EI* z>5v|VD6^;!Ly`I~*(GjFL{lbi8pJ%d%1zA_uxb0UR*0~#Z=3t&*k;e|?Zp_EoELl!!CJbN3c;eJKN_O z4O*`wywf-wi=D+(i@%QCl1{qH+pp{Tx}P2%23yL4lFAS+FJ8eaO*HG~8f_mge0M33 zY^jf168P|ti#N-nZfHnIAjZ~VV=u-B(!OOAe|!})Tad=ER5ek7f1{EAlQcU_Hs{P% zu2!G7W2oVW1){-E9(QFI+CN#lIs)oAcQoIti+ zLi7aE1IPCk>pNCOKk}5ilJ>09TWonxH0mo2(F@uTr<4ad-4R5HuEgnYE9zY7^R4q2 zmn7@`eo)NBAD5%z`&=mOO`a7L8=GQ|9UYs>6_l!i*EoZD?=Xs5`zYMF!pTIrUO5AfK^Gt~ z3TA<@0$@{rHp>93HsK`bL&%M!9*RetICor@4*1UVfU1P6Mit<*c^^2cO4Q;BRscIv z#QGMsLqqBp#J)LOewrw34AH2hF0r%7T6uA3MH2Jsp~aQ^0zsOh2R82=&wVh$$fNq+ ze*b_X@0!~3iXtE6+nQ-B3VUA23}qO>!sqhC)0;$~6wej85j21I;xt=z%M@0uHPOCU zv1A+eG!;zJeb95wpyfMZ4JzvY=UrKN|&Fu$?V}4X>5S9BXp%uJ!JAUROFG z+%_&HRIusWd&mc~=E3$`kKA1IS=imr2k-run zqiuIK)QPh7bwYix)ol$j#zSn`WGEp>|N=IbLsUwnNL2uB69{_PzY2oS}o-YBwoc zE=)Wux~afa?bj}a8Yj7HVPOr;>y^$XR%Ck5N5l>Ea?9dn$sP!a7=9kmg)XLccOI6u zw88kqs;9Fod<3rw+p#YVXVSW1#Fx4bMLPkyGZXUnxi{n0%%hcDDP*5rOCV<){XOfUO(<|WD$5-JBr3}wBGE&UX=rr78+bwWWa=KHk;>fig#7T_s+_%~* z&Vx;aVaWw+tdO}~1+5C+mNe7!k$a#E9AVSPL^yG2QRpLAO<0U5pVD?0Q~sddA|e-m zhsF0XhVt7IJ!JhgdKlA@vUJW`x;YjiMRJvW3=3@s(^1E|?1P^+eo(EsyS*(qMN

Cl@{PkB{b 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%0D@N2gaY^6eDC=V(9SF3(}& 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 Date: Thu, 22 Oct 2026 00:24:18 +0800 Subject: [PATCH 4/4] ci: retry checks after hosted runner allocation failure