From 3c24a6832c346f9464786112f2577a2112481e1b Mon Sep 17 00:00:00 2001 From: John-Ryan21337 <227466507+John-Ryan21337@users.noreply.github.com> Date: Sat, 12 Sep 2026 01:54:11 -0700 Subject: [PATCH 1/3] feat(workspace): add bounded read-only file observatory --- AGENTS.md | 2 + apps/server/src/server.test.ts | 118 +++ apps/server/src/server.ts | 8 +- .../Layers/WorkspaceObservatory.test.ts | 525 +++++++++++++ .../workspace/Layers/WorkspaceObservatory.ts | 639 ++++++++++++++++ .../Services/WorkspaceObservatory.ts | 85 +++ apps/server/src/ws.ts | 29 + apps/web/src/components/ChatView.tsx | 22 + .../WorkspaceObservatory.browser.tsx | 715 ++++++++++++++++++ .../src/components/WorkspaceObservatory.tsx | 622 +++++++++++++++ apps/web/src/environmentApi.ts | 4 + apps/web/src/rpc/wsRpcClient.ts | 10 + apps/web/src/workspaceObservatoryDiff.test.ts | 36 + apps/web/src/workspaceObservatoryDiff.ts | 114 +++ .../pr-assets/workspace-observatory/after.png | Bin 0 -> 54567 bytes .../workspace-observatory/before.png | Bin 0 -> 206106 bytes .../workspace-observatory/interaction.webm | Bin 0 -> 300563 bytes docs/workspace-observatory.md | 116 +++ packages/contracts/src/index.ts | 1 + packages/contracts/src/ipc.ts | 14 + packages/contracts/src/rpc.ts | 24 + .../contracts/src/workspaceObservatory.ts | 81 ++ 22 files changed, 3164 insertions(+), 1 deletion(-) create mode 100644 apps/server/src/workspace/Layers/WorkspaceObservatory.test.ts create mode 100644 apps/server/src/workspace/Layers/WorkspaceObservatory.ts create mode 100644 apps/server/src/workspace/Services/WorkspaceObservatory.ts create mode 100644 apps/web/src/components/WorkspaceObservatory.browser.tsx create mode 100644 apps/web/src/components/WorkspaceObservatory.tsx create mode 100644 apps/web/src/workspaceObservatoryDiff.test.ts create mode 100644 apps/web/src/workspaceObservatoryDiff.ts create mode 100644 docs/pr-assets/workspace-observatory/after.png create mode 100644 docs/pr-assets/workspace-observatory/before.png create mode 100644 docs/pr-assets/workspace-observatory/interaction.webm create mode 100644 docs/workspace-observatory.md create mode 100644 packages/contracts/src/workspaceObservatory.ts diff --git a/AGENTS.md b/AGENTS.md index c4f7d53ac..f43817cd1 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -21,6 +21,8 @@ - Generic attachment originals and metadata are private `0600` files where POSIX permissions apply; provider-readable derivatives are `0400`. On Windows leave derivatives user-writable under Cafe's user-owned data-directory ACL instead of setting the read-only attribute, which would prevent safe cleanup. File names are inert display metadata and storage uses server-minted identifiers; Windows path separators in dropped names must never become server paths. Document extraction children use the current executable with `ELECTRON_RUN_AS_NODE=1` for packaged Electron backends and preserve only required Windows system-directory environment entries, not provider credentials or user-selected Node hooks. macOS/Linux retain the same isolated child behavior and their native permission checks. - Windows Electron's Atrium reserves the visible native titlebar band above both its close button and provider filters. Gate that inset on Electron plus the Windows platform and the existing `wco` visibility class; derive it from native `titlebar-area-y`/`titlebar-area-height` geometry, with the desktop's 40px caption height as the fallback. Keep the modal full-window, its controls non-draggable, and its inset gaps responsive to interface scaling. macOS, Linux, ordinary browser clients, and fullscreen without native controls retain the original placement. Verify with `yarn workspace @cafecode/web test:browser src/components/atrium` (platform/scale layout cases) alongside the required full checks and forced desktop build. +- The read-only workspace observatory refuses Windows-ambiguous path segments on every platform so one rule holds everywhere: any `:` (NTFS alternate data streams such as `notes.txt:hidden`, and drive-relative forms such as `C:file`), trailing dots or spaces (Win32 strips them, so `secret.pem.` and `secret.pem` are two spellings of one file and a name-based denial could be bypassed through the unused spelling), reserved device names (`NUL`, `COM1`-`COM9`, `LPT1`-`LPT9`, `CON`, `PRN`, `AUX`), wildcard/redirection characters, and control characters. Containment must be decided by `isAbsolute` on the result of `path.relative`, not by a drive-letter regexp, because a UNC escape such as `\\server\share` has no drive letter and would otherwise look contained; the win32 interpretation is consulted alongside the host one so the check also holds for win32-shaped paths on POSIX. macOS/Linux behaviour is unchanged except for sharing these same refusals. `O_NONBLOCK` is absent on Windows and is applied as `?? 0`, so the POSIX FIFO-safe open is a no-op there; POSIX named-pipe coverage stays POSIX-only because Windows does not create FIFOs through the filesystem namespace, and the Windows path is covered by the directory precheck instead. Verify with `yarn workspace @cafeai/cafe-code test src/workspace/Layers/WorkspaceObservatory.test.ts`. +- Observatory path schemas must preserve exact filename spelling on every platform. Do not trim paths before rejecting Windows trailing-space aliases, or turn a valid leading-space filename into a different file. Verify the decoded RPC path against a synthetic workspace containing both names. - All Windows-specific requirements, implementation notes, workarounds, and verification guidance must live in this section. Do not scatter Windows-only rules through unrelated architecture, provider, packaging, or lifecycle sections; add or update bullets here instead. - When making changes on Windows, be overly aware of three priorities: record every Windows-specific behavior or workaround in this section, never regress macOS/Linux behavior, and treat Windows as lower priority than macOS/Linux while still making the Windows path correct and maintainable. - Keep Windows-only fixes documented in this section before implementation. Scope them so they do not change macOS or Linux behavior unless the task explicitly asks for a cross-platform change. Document how macOS/Linux behavior is preserved, and verify at least `yarn build:desktop` plus the relevant Windows command before considering a Windows fix complete. diff --git a/apps/server/src/server.test.ts b/apps/server/src/server.test.ts index 6def02537..f801da3a6 100644 --- a/apps/server/src/server.test.ts +++ b/apps/server/src/server.test.ts @@ -58,6 +58,9 @@ import { import { OtlpSerialization, OtlpTracer } from "effect/unstable/observability"; import { RpcClient, RpcSerialization } from "effect/unstable/rpc"; import * as Socket from "effect/unstable/socket/Socket"; +import { mkdir, mkdtemp, rm, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join } from "node:path"; import { vi } from "vitest"; const TEST_EPOCH = DateTime.makeUnsafe("1970-01-01T00:00:00.000Z"); @@ -133,6 +136,8 @@ import { } from "./environment/Services/ServerEnvironment.ts"; import { WorkspaceEntriesLive } from "./workspace/Layers/WorkspaceEntries.ts"; import { WorkspaceFileSystemLive } from "./workspace/Layers/WorkspaceFileSystem.ts"; +import { makeWorkspaceObservatory } from "./workspace/Layers/WorkspaceObservatory.ts"; +import { WorkspaceObservatory } from "./workspace/Services/WorkspaceObservatory.ts"; import { WorkspacePathsLive } from "./workspace/Layers/WorkspacePaths.ts"; import * as GitVcsDriver from "./vcs/GitVcsDriver.ts"; import * as VcsDriver from "./vcs/VcsDriver.ts"; @@ -446,6 +451,13 @@ const makeBrowserOtlpPayload = (spanName: string) => const buildAppUnderTest = (options?: { config?: Partial; + /** + * Synthetic workspace-root resolver for the read-only observatory. Supplying + * one is the only way a test can make the observatory observe anything, which + * mirrors production: the root always comes from the server side, never from + * the caller. + */ + workspaceObservatoryRoot?: (projectId: string) => string | null; layers?: { keybindings?: Partial; providerRegistry?: Partial; @@ -621,6 +633,15 @@ const buildAppUnderTest = (options?: { Layer.provide(workspaceEntriesLayer), ), ProjectFaviconResolverLive, + // Without an injected resolver this harness registers no projects, so + // every observatory request is denied as an unknown project. Path and + // payload behaviour is covered in depth by + // `workspace/Layers/WorkspaceObservatory.test.ts`. + Layer.succeed(WorkspaceObservatory)( + makeWorkspaceObservatory((projectId) => + Effect.succeed(options?.workspaceObservatoryRoot?.(projectId) ?? null), + ), + ), ); const gitWorkflowLayer = GitWorkflowService.layer.pipe( Layer.provideMerge(vcsDriverRegistryLayer), @@ -5594,4 +5615,101 @@ it.layer(NodeServices.layer)("server router seam", (it) => { ); }).pipe(Effect.provide(NodeHttpServer.layerTest)), ); + /** + * End-to-end check of the read-only observatory over the real authenticated + * websocket RPC path, against a synthetic temporary workspace this test + * creates and removes. No real user project is involved. + */ + it.effect("serves bounded read-only workspace views over authenticated ws rpc", () => + Effect.gen(function* () { + const observedProjectId = ProjectId.make("project-observatory-rpc"); + const fixtureRoot = yield* Effect.promise(() => + mkdtemp(join(tmpdir(), "cafe-observatory-rpc-")), + ); + const workspaceRoot = join(fixtureRoot, "workspace"); + yield* Effect.promise(async () => { + await mkdir(join(workspaceRoot, "src"), { recursive: true }); + await mkdir(join(fixtureRoot, "outside"), { recursive: true }); + await writeFile(join(workspaceRoot, "README.md"), "# Synthetic fixture", "utf8"); + await writeFile(join(workspaceRoot, "src", "index.ts"), "export const value = 1;", "utf8"); + await writeFile(join(workspaceRoot, ".env"), "API_KEY=synthetic-not-real", "utf8"); + await writeFile(join(workspaceRoot, "session.pem"), "synthetic-not-a-key", "utf8"); + await writeFile(join(fixtureRoot, "outside", "secret.txt"), "outside content", "utf8"); + }); + + yield* buildAppUnderTest({ + workspaceObservatoryRoot: (projectId) => + projectId === observedProjectId ? workspaceRoot : null, + }); + const wsUrl = yield* getWsServerUrl("/ws"); + + const listing = yield* Effect.scoped( + withWsRpcClient(wsUrl, (client) => + client[WS_METHODS.workspaceObservatoryTree]({ projectId: observedProjectId }), + ), + ); + assert.equal(listing.relativePath, ""); + const listedNames = listing.entries.map((entry) => entry.name); + assert.include(listedNames, "README.md"); + assert.include(listedNames, "src"); + // Private-looking files are withheld from the listing and reported as such. + assert.equal(listedNames.includes(".env"), false); + assert.equal(listedNames.includes("session.pem"), false); + assert.equal(listing.redacted, true); + + const file = yield* Effect.scoped( + withWsRpcClient(wsUrl, (client) => + client[WS_METHODS.workspaceObservatoryReadFile]({ + projectId: observedProjectId, + relativePath: "src/index.ts", + }), + ), + ); + assert.equal(file.relativePath, "src/index.ts"); + assert.equal(file.content, "export const value = 1;"); + assert.equal(file.truncated, false); + + const denialMessageFor = (relativePath: string, projectId = observedProjectId) => + Effect.scoped( + withWsRpcClient(wsUrl, (client) => + client[WS_METHODS.workspaceObservatoryReadFile]({ projectId, relativePath }), + ), + ).pipe( + Effect.map(() => null), + Effect.catch((cause: { message?: string }) => Effect.succeed(cause.message ?? "")), + ); + + // A private file named directly is refused, not returned. + const envDenial = yield* denialMessageFor(".env"); + assert.equal(envDenial, "Hidden, generated, or sensitive workspace items are not displayed."); + const pemDenial = yield* denialMessageFor("session.pem"); + assert.equal(pemDenial, "Hidden, generated, or sensitive workspace items are not displayed."); + + // Escaping the root, malformed input, and an unregistered project are all + // refused with coarse messages that never echo a filesystem path back. + const outsideDenial = yield* denialMessageFor("../outside/secret.txt"); + assert.equal(outsideDenial, "Workspace path must stay within the project root."); + const absoluteDenial = yield* denialMessageFor(join(fixtureRoot, "outside", "secret.txt")); + assert.equal(absoluteDenial, "Workspace path must stay within the project root."); + const streamDenial = yield* denialMessageFor("README.md:hidden"); + assert.equal(streamDenial, "Workspace path must stay within the project root."); + const unknownProjectDenial = yield* denialMessageFor( + "README.md", + ProjectId.make("project-never-registered"), + ); + assert.equal(unknownProjectDenial, "Project is not part of this connected environment."); + for (const message of [ + envDenial, + pemDenial, + outsideDenial, + absoluteDenial, + streamDenial, + unknownProjectDenial, + ]) { + assert.equal((message ?? "").includes(fixtureRoot), false); + assert.equal((message ?? "").includes("secret"), false); + } + yield* Effect.promise(() => rm(fixtureRoot, { recursive: true, force: true })); + }).pipe(Effect.provide(NodeHttpServer.layerTest)), + ); }); diff --git a/apps/server/src/server.ts b/apps/server/src/server.ts index 883a10e4d..9668bf2a4 100644 --- a/apps/server/src/server.ts +++ b/apps/server/src/server.ts @@ -71,6 +71,7 @@ import { ProjectFaviconResolverLive } from "./project/Layers/ProjectFaviconResol import { RepositoryIdentityResolverLive } from "./project/Layers/RepositoryIdentityResolver.ts"; import { WorkspaceEntriesLive } from "./workspace/Layers/WorkspaceEntries.ts"; import { WorkspaceFileSystemLive } from "./workspace/Layers/WorkspaceFileSystem.ts"; +import { WorkspaceObservatoryLive } from "./workspace/Layers/WorkspaceObservatory.ts"; import { WorkspacePathsLive } from "./workspace/Layers/WorkspacePaths.ts"; import * as GitVcsDriver from "./vcs/GitVcsDriver.ts"; import * as VcsDriverRegistry from "./vcs/VcsDriverRegistry.ts"; @@ -275,7 +276,12 @@ const ServerClientSettingsLayerLive = ServerClientSettingsLive.pipe( const RuntimeCoreDependenciesLive = ReactorLayerLive.pipe( // Core Services - Layer.provideMerge(ThreadDetailSubscriptionRegistryLive), + // The read-only workspace observatory resolves its authoritative workspace + // root from the orchestration projection, so it is layered above + // `OrchestrationLayerLive` rather than inside `WorkspaceLayerLive`. + Layer.provideMerge( + Layer.mergeAll(ThreadDetailSubscriptionRegistryLive, WorkspaceObservatoryLive), + ), Layer.provideMerge(CheckpointingLayerLive), Layer.provideMerge(SourceControlProviderRegistryLayerLive), Layer.provideMerge(GitLayerLive), diff --git a/apps/server/src/workspace/Layers/WorkspaceObservatory.test.ts b/apps/server/src/workspace/Layers/WorkspaceObservatory.test.ts new file mode 100644 index 000000000..4ee87ba80 --- /dev/null +++ b/apps/server/src/workspace/Layers/WorkspaceObservatory.test.ts @@ -0,0 +1,525 @@ +// @effect-diagnostics nodeBuiltinImport:off +/** + * Observatory tests run entirely against a synthetic temporary workspace that + * this file creates and removes. No real user project is ever scanned. + */ +import { execFile } from "node:child_process"; +import { mkdtemp, mkdir, rm, symlink, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join, posix, win32 } from "node:path"; + +import { afterAll, beforeAll, describe, expect, it } from "@effect/vitest"; +import * as Effect from "effect/Effect"; +import * as Schema from "effect/Schema"; +import type { ProjectId } from "@cafecode/contracts"; +import { + WORKSPACE_OBSERVATORY_LIMITS, + WorkspaceObservatoryFileInput, + WorkspaceObservatoryTreeResult, +} from "@cafecode/contracts"; + +import { WorkspaceObservatoryDeniedError } from "../Services/WorkspaceObservatory.ts"; +import { + isAmbiguousSegment, + isContained, + isContainedIn, + makeObservatoryAdmission, + makeWorkspaceObservatory, + redactObservedText, + WORKSPACE_OBSERVATORY_ENTRY_METADATA_BUDGET, +} from "./WorkspaceObservatory.ts"; + +const KNOWN_PROJECT = "project-observatory-fixture" as ProjectId; +const UNKNOWN_PROJECT = "project-not-registered" as ProjectId; + +let fixtureRoot = ""; +let workspaceRoot = ""; +let outsideRoot = ""; +let symlinksAvailable = true; + +/** Windows without developer mode refuses `symlink` with EPERM. */ +async function trySymlink( + target: string, + linkPath: string, + type: "file" | "dir", +): Promise { + try { + await symlink(target, linkPath, type); + return true; + } catch (cause) { + if ( + process.platform === "win32" && + cause instanceof Error && + "code" in cause && + (cause as NodeJS.ErrnoException).code === "EPERM" + ) { + return false; + } + throw cause; + } +} + +beforeAll(async () => { + fixtureRoot = await mkdtemp(join(tmpdir(), "cafe-observatory-")); + workspaceRoot = join(fixtureRoot, "workspace"); + outsideRoot = join(fixtureRoot, "outside"); + await mkdir(workspaceRoot, { recursive: true }); + await mkdir(outsideRoot, { recursive: true }); + await mkdir(join(workspaceRoot, "src"), { recursive: true }); + await mkdir(join(workspaceRoot, "node_modules", "left-pad"), { recursive: true }); + await mkdir(join(workspaceRoot, ".git"), { recursive: true }); + await mkdir(join(workspaceRoot, "dist"), { recursive: true }); + + await writeFile(join(workspaceRoot, "README.md"), "# Fixture\nsecond line\n", "utf8"); + await writeFile(join(workspaceRoot, " README.md"), "leading-space file\n", "utf8"); + await writeFile(join(workspaceRoot, "src", "index.ts"), "export const value = 1;\n", "utf8"); + await writeFile(join(workspaceRoot, ".env"), "API_KEY=abcdef0123456789\n", "utf8"); + await writeFile(join(workspaceRoot, "session.pem"), "not-a-real-key\n", "utf8"); + await writeFile(join(workspaceRoot, "node_modules", "left-pad", "index.js"), "module\n", "utf8"); + await writeFile(join(workspaceRoot, ".git", "config"), "[core]\n", "utf8"); + await writeFile(join(workspaceRoot, "dist", "bundle.js"), "bundled\n", "utf8"); + await writeFile(join(workspaceRoot, "binary.bin"), Buffer.from([0x41, 0x00, 0x42])); + await writeFile( + join(workspaceRoot, "config.yml"), + "host: example.test\napi_key = sk-live-not-a-real-value\n", + "utf8", + ); + await writeFile( + join(workspaceRoot, "large.txt"), + "x".repeat(WORKSPACE_OBSERVATORY_LIMITS.textBytes + 4096), + "utf8", + ); + await writeFile(join(outsideRoot, "secret.txt"), "outside content\n", "utf8"); + symlinksAvailable = await trySymlink( + join(outsideRoot, "secret.txt"), + join(workspaceRoot, "escape.txt"), + "file", + ); +}); + +afterAll(async () => { + if (fixtureRoot) await rm(fixtureRoot, { recursive: true, force: true }); +}); + +function observatory() { + return makeWorkspaceObservatory((projectId) => + Effect.succeed(projectId === KNOWN_PROJECT ? workspaceRoot : null), + ); +} + +/** Poll a predicate with a bounded deadline; no fake timers are involved. */ +async function waitUntil(predicate: () => boolean, timeoutMs = 2_000): Promise { + const deadline = Date.now() + timeoutMs; + while (!predicate()) { + if (Date.now() > deadline) throw new Error("condition was not met before the deadline"); + await new Promise((resolvePromise) => setTimeout(resolvePromise, 5)); + } +} + +async function denial(effect: Effect.Effect) { + const error = await Effect.runPromise(Effect.flip(effect)); + expect(error).toBeInstanceOf(WorkspaceObservatoryDeniedError); + return error; +} + +describe("WorkspaceObservatory authorization", () => { + it("lists the selected project root", async () => { + const result = await Effect.runPromise(observatory().tree({ projectId: KNOWN_PROJECT })); + expect(result.relativePath).toBe(""); + const names = result.entries.map((entry) => entry.name); + expect(names).toContain("README.md"); + expect(names).toContain("src"); + }); + + it("denies a project the server projection does not know", async () => { + const error = await denial(observatory().tree({ projectId: UNKNOWN_PROJECT })); + expect(error.reason).toBe("unknown-project"); + }); + + it("denies a file read for an unknown project", async () => { + const error = await denial( + observatory().readFile({ projectId: UNKNOWN_PROJECT, relativePath: "README.md" }), + ); + expect(error.reason).toBe("unknown-project"); + }); + + it("denies every request when the resolved root no longer exists", async () => { + const missingRoot = makeWorkspaceObservatory(() => + Effect.succeed(join(fixtureRoot, "does-not-exist")), + ); + const error = await denial(missingRoot.tree({ projectId: KNOWN_PROJECT })); + expect(error.reason).toBe("root-unavailable"); + }); +}); + +describe("WorkspaceObservatory path handling", () => { + it("reads a regular file below the root", async () => { + const file = await Effect.runPromise( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "src/index.ts" }), + ); + expect(file.relativePath).toBe("src/index.ts"); + expect(file.content).toBe("export const value = 1;\n"); + expect(file.truncated).toBe(false); + }); + + it.each([ + "../outside/secret.txt", + "src/../../outside/secret.txt", + "..", + "src/..", + "./../outside/secret.txt", + ])("denies traversal attempt %s", async (relativePath) => { + const error = await denial(observatory().readFile({ projectId: KNOWN_PROJECT, relativePath })); + expect(error.reason).toBe("outside-root"); + }); + + it("denies an absolute path", async () => { + const error = await denial( + observatory().readFile({ + projectId: KNOWN_PROJECT, + relativePath: join(outsideRoot, "secret.txt"), + }), + ); + expect(error.reason).toBe("outside-root"); + }); + + it("denies a malformed path containing a NUL byte", async () => { + const error = await denial( + observatory().readFile({ + projectId: KNOWN_PROJECT, + relativePath: `src/index${String.fromCodePoint(0)}.ts`, + }), + ); + expect(error.reason).toBe("outside-root"); + }); + + it.each([ + "node_modules/left-pad/index.js", + ".git/config", + "dist/bundle.js", + ".env", + "session.pem", + ])("denies the excluded path %s", async (relativePath) => { + const error = await denial(observatory().readFile({ projectId: KNOWN_PROJECT, relativePath })); + expect(error.reason).toBe("sensitive-path"); + }); + + it("omits excluded and hidden names from the listing and reports redaction", async () => { + const result = await Effect.runPromise(observatory().tree({ projectId: KNOWN_PROJECT })); + const names = result.entries.map((entry) => entry.name); + expect(names).not.toContain("node_modules"); + expect(names).not.toContain(".git"); + expect(names).not.toContain("dist"); + expect(names).not.toContain(".env"); + expect(names).not.toContain("session.pem"); + expect(result.redacted).toBe(true); + }); + + it("denies a symlink that escapes the root", async () => { + if (!symlinksAvailable) return; + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "escape.txt" }), + ); + expect(error.reason).toBe("link"); + const listing = await Effect.runPromise(observatory().tree({ projectId: KNOWN_PROJECT })); + expect(listing.entries.map((entry) => entry.name)).not.toContain("escape.txt"); + }); + + it("denies reading a directory as a file", async () => { + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "src" }), + ); + expect(["not-a-file", "unreadable"]).toContain(error.reason); + }); + + it("denies listing a file as a directory", async () => { + const error = await denial( + observatory().tree({ projectId: KNOWN_PROJECT, relativePath: "README.md" }), + ); + expect(error.reason).toBe("not-a-directory"); + }); +}); + +describe("WorkspaceObservatory payload bounds", () => { + it("truncates an oversize file at the byte limit", async () => { + const file = await Effect.runPromise( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "large.txt" }), + ); + expect(file.truncated).toBe(true); + expect(Buffer.byteLength(file.content, "utf8")).toBeLessThanOrEqual( + WORKSPACE_OBSERVATORY_LIMITS.textBytes, + ); + }); + + it("refuses to display a binary file", async () => { + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "binary.bin" }), + ); + expect(error.reason).toBe("binary"); + }); + + it("masks an obvious credential assignment on a best-effort basis", async () => { + const file = await Effect.runPromise( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "config.yml" }), + ); + expect(file.redacted).toBe(true); + expect(file.content).not.toContain("sk-live-not-a-real-value"); + expect(file.content).toContain("host: example.test"); + }); +}); + +describe("WorkspaceObservatory containment", () => { + /** + * `relative` returns an absolute path whenever the two inputs share no common + * prefix. On Windows that covers a different drive letter and a UNC share, and + * the UNC form carries no drive-letter prefix, so a drive-letter regexp + * accepts it as contained. These cases use win32 spellings directly so the + * assertion holds on every host. + */ + it("rejects a win32 result that escapes to another drive", () => { + expect(isContainedIn(win32, "C:\\workspace", "D:\\elsewhere\\secret.txt")).toBe(false); + }); + + it("rejects a win32 result that escapes to a UNC share", () => { + // `relative` returns this target unchanged, and it has no drive letter, so + // only an absoluteness check on the result rejects it. + expect(isContainedIn(win32, "C:\\workspace", "\\\\attacker\\share\\secret.txt")).toBe(false); + }); + + it("applies win32 parent-walk and descendant rules from any host", () => { + expect(isContainedIn(win32, "C:\\workspace", "C:\\outside")).toBe(false); + expect(isContainedIn(win32, "C:\\workspace", "C:\\workspace\\src\\index.ts")).toBe(true); + expect(isContainedIn(win32, "C:\\workspace", "C:\\workspace")).toBe(true); + }); + + it("applies posix parent-walk and descendant rules from any host", () => { + expect(isContainedIn(posix, "/workspace", "/outside/secret.txt")).toBe(false); + expect(isContainedIn(posix, "/workspace", "/workspace/src/index.ts")).toBe(true); + expect(isContainedIn(posix, "/workspace", "/workspace")).toBe(true); + }); + + it("agrees with the host path rules for the live fixture root", () => { + expect(isContained(workspaceRoot, join(workspaceRoot, "src", "index.ts"))).toBe(true); + expect(isContained(workspaceRoot, join(outsideRoot, "secret.txt"))).toBe(false); + }); + + it("treats Windows-ambiguous segment spellings as unusable", () => { + // NTFS alternate data stream, which no directory listing reveals. + expect(isAmbiguousSegment("notes.txt:hidden")).toBe(true); + // Drive-relative reintroduction. + expect(isAmbiguousSegment("C:file")).toBe(true); + // Win32 strips the trailing dot, so this is a second spelling of secret.pem. + expect(isAmbiguousSegment("secret.pem.")).toBe(true); + expect(isAmbiguousSegment("trailing ")).toBe(true); + expect(isAmbiguousSegment("NUL")).toBe(true); + expect(isAmbiguousSegment("com1.txt")).toBe(true); + expect(isAmbiguousSegment("wild*card")).toBe(true); + expect(isAmbiguousSegment("README.md")).toBe(false); + expect(isAmbiguousSegment("index.ts")).toBe(false); + }); + + it("denies an alternate-data-stream path through the service", async () => { + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "README.md:hidden" }), + ); + expect(error.reason).toBe("outside-root"); + expect(error.detail).not.toContain(workspaceRoot); + }); + + it("denies a reserved Windows device name through the service", async () => { + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "NUL" }), + ); + expect(error.reason).toBe("outside-root"); + }); +}); + +describe("WorkspaceObservatory exact path spelling", () => { + it("preserves leading spaces through tree and request schemas and reads that exact file", async () => { + const tree = Schema.decodeUnknownSync(WorkspaceObservatoryTreeResult)( + await Effect.runPromise(observatory().tree({ projectId: KNOWN_PROJECT })), + ); + const entry = tree.entries.find((item) => item.name === " README.md"); + expect(entry?.relativePath).toBe(" README.md"); + const input = Schema.decodeUnknownSync(WorkspaceObservatoryFileInput)({ + projectId: KNOWN_PROJECT, + relativePath: " README.md", + }); + const file = await Effect.runPromise(observatory().readFile(input)); + expect(file.content).toBe("leading-space file\n"); + }); + + it("refuses a trailing space without silently reading the trimmed name", async () => { + const input = Schema.decodeUnknownSync(WorkspaceObservatoryFileInput)({ + projectId: KNOWN_PROJECT, + relativePath: "README.md ", + }); + const error = await denial(observatory().readFile(input)); + expect(error.reason).toBe("outside-root"); + }); +}); + +describe("WorkspaceObservatory text masking", () => { + it("handles a maximum-size non-assignment without repeated sensitive-key backtracking", () => { + const content = "token".repeat(Math.floor(WORKSPACE_OBSERVATORY_LIMITS.textBytes / 5)); + const started = performance.now(); + expect(redactObservedText(content)).toEqual({ value: content, redacted: false }); + // A generous ceiling for an in-memory 128 KiB scan, not a throughput benchmark. + expect(performance.now() - started).toBeLessThan(1_000); + }); + + it("masks sensitive assignments while preserving ordinary values and line breaks", () => { + const result = redactObservedText( + 'host: example.test\n\n const "api_key" = example-value\nSESSION_TOKEN: second-value\n', + ); + expect(result).toEqual({ + value: 'host: example.test\n\n const "api_key" = [redacted]\nSESSION_TOKEN: [redacted]\n', + redacted: true, + }); + }); +}); + +describe("WorkspaceObservatory admission control", () => { + it("refuses a request once the concurrent pool is full instead of queueing it", async () => { + const admission = makeObservatoryAdmission({ maxConcurrent: 1, timeoutMs: 10_000 }); + let release: (() => void) | undefined; + const held = admission.run( + () => + new Promise((resolvePromise) => { + release = () => resolvePromise("done"); + }), + ); + expect(admission.active()).toBe(1); + + const refused = await admission + .run(async () => "second") + .then( + () => null, + (cause: unknown) => cause, + ); + expect(refused).toBeInstanceOf(WorkspaceObservatoryDeniedError); + expect((refused as WorkspaceObservatoryDeniedError).reason).toBe("busy"); + + release?.(); + await expect(held).resolves.toBe("done"); + // The slot is returned only after the real operation settles. + await Promise.resolve(); + expect(admission.active()).toBe(0); + }); + + it("fails a request past its deadline but keeps the slot until the work settles", async () => { + const admission = makeObservatoryAdmission({ maxConcurrent: 1, timeoutMs: 20 }); + let release: (() => void) | undefined; + const stuck = admission.run( + () => + new Promise((resolvePromise) => { + release = () => resolvePromise("eventually"); + }), + ); + + const timedOut = await stuck.then( + () => null, + (cause: unknown) => cause, + ); + expect(timedOut).toBeInstanceOf(WorkspaceObservatoryDeniedError); + expect((timedOut as WorkspaceObservatoryDeniedError).reason).toBe("timed-out"); + + // This is the property that stops stuck I/O from being retried into an + // ever-growing pile of blocked libuv workers: the capacity is still held. + expect(admission.active()).toBe(1); + const refused = await admission + .run(async () => "third") + .then( + () => null, + (cause: unknown) => cause, + ); + expect((refused as WorkspaceObservatoryDeniedError).reason).toBe("busy"); + + release?.(); + await waitUntil(() => admission.active() === 0); + expect(admission.active()).toBe(0); + }); + + it("releases the slot when an operation throws synchronously", async () => { + const admission = makeObservatoryAdmission({ maxConcurrent: 1, timeoutMs: 1_000 }); + await expect( + admission.run(() => { + throw new Error("immediate"); + }), + ).rejects.toThrow("immediate"); + expect(admission.active()).toBe(0); + }); +}); + +describe("WorkspaceObservatory special files", () => { + /** + * `open` on a FIFO with no writer blocks on an uncancellable libuv worker, so + * the read path must establish the file type before opening. Node has no + * portable FIFO constructor, and Windows named pipes are not created through + * the filesystem namespace, so this coverage stays POSIX-only; the Windows + * equivalent of the same precheck is covered by the directory case below. + */ + it.skipIf(process.platform === "win32")( + "denies a named pipe without blocking on open", + async () => { + const fifoPath = join(workspaceRoot, "pipe.txt"); + const made = await new Promise((resolvePromise) => { + execFile("mkfifo", [fifoPath], (error) => resolvePromise(!error)); + }); + if (!made) return; + try { + const started = Date.now(); + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "pipe.txt" }), + ); + expect(error.reason).toBe("not-a-file"); + // A blocking open would have been cut off by the admission deadline + // instead of returning a precise denial almost immediately. + expect(Date.now() - started).toBeLessThan(2_000); + } finally { + await rm(fifoPath, { force: true }); + } + }, + ); + + it("denies a directory presented as a file on every platform", async () => { + const error = await denial( + observatory().readFile({ projectId: KNOWN_PROJECT, relativePath: "src" }), + ); + expect(error.reason).toBe("not-a-file"); + }); +}); + +describe("WorkspaceObservatory listing bounds", () => { + /** + * The listing previously issued `lstat` + `realpath` + `stat` for every name, + * so one 500-entry directory could run up to 1500 sequential filesystem + * operations while holding a single admission slot. The directory read now + * supplies the entry kind, and the `lstat` fallback for entries of unknown + * kind is capped. Completing inside the admission deadline is the assertion + * that the bound holds. + */ + it("lists a directory larger than the entry limit within the request deadline", async () => { + const wide = join(workspaceRoot, "wide"); + await mkdir(wide, { recursive: true }); + const total = WORKSPACE_OBSERVATORY_LIMITS.treeEntries + 20; + await Promise.all( + Array.from({ length: total }, (_unused, index) => + writeFile(join(wide, `entry-${index}.txt`), "x\n", "utf8"), + ), + ); + try { + const result = await Effect.runPromise( + observatory().tree({ projectId: KNOWN_PROJECT, relativePath: "wide" }), + ); + expect(result.entries.length).toBeLessThanOrEqual(WORKSPACE_OBSERVATORY_LIMITS.treeEntries); + expect(result.truncated).toBe(true); + expect(result.entries.every((entry) => entry.kind === "file")).toBe(true); + // The fallback budget exists to bound metadata work, not to shrink the + // listing: entries of known kind never consume it. + expect(result.entries.length).toBeGreaterThan(WORKSPACE_OBSERVATORY_ENTRY_METADATA_BUDGET); + } finally { + await rm(wide, { recursive: true, force: true }); + } + }); +}); diff --git a/apps/server/src/workspace/Layers/WorkspaceObservatory.ts b/apps/server/src/workspace/Layers/WorkspaceObservatory.ts new file mode 100644 index 000000000..87f724abf --- /dev/null +++ b/apps/server/src/workspace/Layers/WorkspaceObservatory.ts @@ -0,0 +1,639 @@ +// @effect-diagnostics nodeBuiltinImport:off +/** + * WorkspaceObservatory live layer. + * + * Every request is anchored to a workspace root that the server resolves from + * its own projection for the named `projectId`. Callers never supply a root, so + * a compromised or buggy renderer cannot widen the observed surface. + * + * The layer performs only reads: `opendir`, `lstat`, `realpath`, and a single + * bounded `read` on an `O_NOFOLLOW` descriptor. It never writes, never spawns a + * process, and never opens a database. + * + * Residual limitation, deliberately not papered over: the portable + * `lstat`/`realpath`/`open` sequence used here is *not* atomic. Node exposes no + * portable directory-relative (`openat`-style) traversal, so between the moment + * a path component is checked and the moment the final descriptor is opened, a + * writer who already controls a parent directory inside the workspace can + * replace a component with a link or with a different directory. The checks + * below narrow that window and make the ordinary cases safe: `O_NOFOLLOW` + * refuses a final symlink, the descriptor's own `fstat` is authoritative for the + * object actually opened, and the device/inode comparison rejects a file that + * was swapped. They do not close the window. The observatory is therefore a + * read-only convenience view for whoever already owns the workspace, not a + * sandbox boundary against a hostile co-writer of that workspace. + * + * @module WorkspaceObservatory + */ +import { constants } from "node:fs"; +import { lstat, open, opendir, realpath, stat } from "node:fs/promises"; +import { isAbsolute, relative, resolve, sep, win32 } from "node:path"; + +import * as Effect from "effect/Effect"; +import * as Layer from "effect/Layer"; +import * as Option from "effect/Option"; +import { WORKSPACE_OBSERVATORY_LIMITS } from "@cafecode/contracts"; +import type { + ProjectId, + WorkspaceObservatoryFileResult, + WorkspaceObservatoryTreeEntry, + WorkspaceObservatoryTreeResult, +} from "@cafecode/contracts"; + +import { ProjectionSnapshotQuery } from "../../orchestration/Services/ProjectionSnapshotQuery.ts"; +import { + WorkspaceObservatory, + WorkspaceObservatoryDeniedError, + type WorkspaceObservatoryDenialReason, + type WorkspaceObservatoryShape, +} from "../Services/WorkspaceObservatory.ts"; + +/** + * Directories that are never observable. They are large, generated, or hold + * repository internals that can embed credentials and remote tokens. + */ +const DENIED_DIRECTORY_NAMES = new Set([ + ".git", + ".hg", + ".svn", + ".turbo", + "build", + "dist", + "node_modules", + "out", + "target", +]); + +/** + * Best-effort sensitive-name detection. This reduces accidental exposure of + * obvious credential files. It is not a secret-protection boundary. + */ +const SENSITIVE_PATH_NAME = + /(?:^|[._-])(auth|credentials?|private|secrets?|sessions?|tokens?)(?:[._-]|$)|^(?:id_(?:rsa|dsa|ecdsa|ed25519)|\.env(?:\..*)?)$|\.(?:key|p12|pfx|pem)$/i; + +const PRIVATE_KEY_BLOCK = + /-----BEGIN (?:[A-Z0-9 ]+ )?PRIVATE KEY-----[\s\S]*?-----END (?:[A-Z0-9 ]+ )?PRIVATE KEY-----/g; + +const TEXT_ASSIGNMENT = + /^([ \t]*(?:(?:const|let|var)[ \t]+)?["']?([A-Za-z0-9_.-]+)["']?[ \t]*[:=][ \t]*)(.+)$/gim; +const SENSITIVE_ASSIGNMENT_KEY = + /pass(?:word)?|secret|token|api.?key|credential|authori[sz]ation|cookie|session/i; + +/** Win32 device names resolve to devices rather than to files on disk. */ +const WINDOWS_RESERVED_DEVICE_NAME = /^(?:con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i; + +/** + * Concurrent filesystem operations the observatory runs at once, across every + * connected client of one server process. + */ +export const WORKSPACE_OBSERVATORY_MAX_CONCURRENT_OPERATIONS = 4; + +/** Wall-clock deadline for one admitted observatory filesystem operation. */ +export const WORKSPACE_OBSERVATORY_OPERATION_TIMEOUT_MS = 5_000; + +/** + * Per-listing budget for `lstat` fallbacks on directory entries whose kind the + * directory read did not report. See `listDirectory`. + */ +export const WORKSPACE_OBSERVATORY_ENTRY_METADATA_BUDGET = 64; + +function deny(reason: WorkspaceObservatoryDenialReason, detail: string): never { + throw new WorkspaceObservatoryDeniedError({ reason, detail }); +} + +function toPosix(value: string): string { + return value.replaceAll("\\", "/"); +} + +/** NUL, written without embedding a control character in this source file. */ +const NUL_CHARACTER = String.fromCharCode(0); + +/** The slice of the `node:path` API that containment needs. */ +interface ContainmentPathApi { + readonly relative: (from: string, to: string) => string; + readonly isAbsolute: (value: string) => boolean; + readonly sep: string; +} + +const HOST_PATH: ContainmentPathApi = { relative, isAbsolute, sep }; + +/** + * Containment test for two already-resolved absolute paths, evaluated under an + * explicit path implementation. + * + * `relative` cannot express a relative step between two paths that share no + * common prefix, and in that case it returns the *absolute* target instead of a + * `..` walk. On Windows that happens for a different drive letter and also for a + * UNC share, and the UNC result carries no drive-letter prefix at all, so a + * drive-letter regexp misses it and an escaping target looks contained. Testing + * `isAbsolute` on the *result* catches both shapes. The win32 interpretation is + * consulted in addition to the supplied one, so a win32-shaped result is still + * rejected when it is evaluated under POSIX rules. + * + * Taking the path implementation as a parameter is what lets the unit tests + * assert real Windows semantics from any host instead of only from Windows. + */ +export function isContainedIn(pathApi: ContainmentPathApi, root: string, target: string): boolean { + const fromRoot = pathApi.relative(root, target); + if (fromRoot === "") return true; + if (pathApi.isAbsolute(fromRoot) || win32.isAbsolute(fromRoot)) return false; + return ( + fromRoot !== ".." && !fromRoot.startsWith(".." + pathApi.sep) && !fromRoot.startsWith("../") + ); +} + +/** Containment under the host platform's own path rules. */ +export function isContained(root: string, target: string): boolean { + return isContainedIn(HOST_PATH, root, target); +} + +/** + * Path segments whose meaning is ambiguous on Windows. They are refused on + * every platform so the observatory behaves identically everywhere: + * + * - `:` selects an NTFS alternate data stream (`notes.txt:hidden`), which a + * directory listing never shows, and also reintroduces a drive-relative path + * (`C:file`). + * - Trailing dots and spaces are stripped by Win32 before the filesystem sees + * the name, so `secret.pem.` and `secret.pem` are two spellings of one file + * and a name-based denial could be bypassed through the unused spelling. + * - Reserved device names open devices instead of files. + * - Wildcards, redirection characters, and control characters are not valid in + * a Windows file name and have no place in an observable path. + */ +export function isAmbiguousSegment(segment: string): boolean { + if (segment.includes(":")) return true; + if (/[*?"<>|]/.test(segment)) return true; + if (/[. ]$/.test(segment)) return true; + if (WINDOWS_RESERVED_DEVICE_NAME.test(segment)) return true; + // Checked by code point rather than a control-character regexp, which the + // linter rightly flags as easy to misread. + for (const character of segment) { + if (character.codePointAt(0)! < 0x20) return true; + } + return false; +} + +function pathSegments(value: string): readonly string[] { + return toPosix(value).split("/").filter(Boolean); +} + +/** Hidden entries, denied generated directories, and obvious credential names. */ +function isDeniedSegment(segment: string): boolean { + return ( + segment.startsWith(".") || + DENIED_DIRECTORY_NAMES.has(segment.toLowerCase()) || + SENSITIVE_PATH_NAME.test(segment) + ); +} + +/** + * Bounded admission for filesystem work that cannot be cancelled. + * + * Node's promise filesystem API runs on libuv's worker pool and offers no + * cancellation, so one operation that blocks -- a named pipe, a dead network + * mount -- occupies a worker until the operating system releases it. Two + * properties follow from that and both are load-bearing: + * + * 1. Admission is a hard ceiling with *no* queue. A request that arrives while + * the pool is full is refused immediately with `busy`. There is no waiting + * list that can grow without bound and no backlog to drain later. + * 2. The deadline frees the *caller*, never the slot. When an operation exceeds + * its deadline the request fails with `timed-out`, but the slot stays held + * until the underlying promise actually settles. That is what stops a stuck + * path from being retried into an ever-growing pile of blocked workers: once + * enough operations are wedged, the observatory refuses further work cheaply + * instead of spawning more stuck I/O. + */ +export interface WorkspaceObservatoryAdmission { + /** Slots currently held, including slots held by timed-out operations. */ + readonly active: () => number; + readonly run: (operation: () => Promise) => Promise; +} + +export function makeObservatoryAdmission(options?: { + readonly maxConcurrent?: number; + readonly timeoutMs?: number; +}): WorkspaceObservatoryAdmission { + const maxConcurrent = options?.maxConcurrent ?? WORKSPACE_OBSERVATORY_MAX_CONCURRENT_OPERATIONS; + const timeoutMs = options?.timeoutMs ?? WORKSPACE_OBSERVATORY_OPERATION_TIMEOUT_MS; + let active = 0; + + return { + active: () => active, + run: (operation: () => Promise): Promise => { + if (active >= maxConcurrent) { + return Promise.reject( + new WorkspaceObservatoryDeniedError({ + reason: "busy", + detail: "The workspace observatory is busy. Try again in a moment.", + }), + ); + } + active += 1; + let work: Promise; + try { + work = operation(); + } catch (cause) { + active -= 1; + return Promise.reject(cause); + } + // The slot is released when the real operation settles, never when the + // deadline fires. Observing the rejection here also keeps a late failure + // from surfacing as an unhandled rejection after the caller gave up. + void work + .then( + () => undefined, + () => undefined, + ) + .finally(() => { + active -= 1; + }); + + return new Promise((settleWith, failWith) => { + let settled = false; + const timer = setTimeout(() => { + if (settled) return; + settled = true; + failWith( + new WorkspaceObservatoryDeniedError({ + reason: "timed-out", + detail: "The workspace observatory request took too long.", + }), + ); + }, timeoutMs); + timer.unref?.(); + work.then( + (value) => { + if (settled) return; + settled = true; + clearTimeout(timer); + settleWith(value); + }, + (cause: unknown) => { + if (settled) return; + settled = true; + clearTimeout(timer); + failWith(cause); + }, + ); + }); + }, + }; +} + +/** Walk every segment below the root and refuse any link or reparse point. */ +async function assertNoLinkOnPath(root: string, target: string): Promise { + const fromRoot = relative(root, target); + if (fromRoot === "") return; + let cursor = root; + for (const segment of fromRoot.split(sep)) { + cursor = resolve(cursor, segment); + const metadata = await lstat(cursor).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (metadata.isSymbolicLink()) { + deny("link", "Workspace links and reparse-point aliases are not displayed."); + } + } +} + +/** + * Resolve one workspace-relative request path against an already-real root. + * Rejects absolute paths, NUL bytes, traversal, denied directories, links, + * Windows-ambiguous spellings, and anything whose real location escapes the + * root. + */ +async function resolveObservedTarget(root: string, relativePath: string): Promise { + if (relativePath.includes(NUL_CHARACTER)) deny("outside-root", "Invalid workspace path."); + if (/^(?:[A-Za-z]:)?[/\\]/.test(relativePath)) { + deny("outside-root", "Workspace path must stay within the project root."); + } + const segments = pathSegments(relativePath); + if (segments.length === 0 || segments.includes("..")) { + deny("outside-root", "Workspace path must stay within the project root."); + } + if (segments.some(isAmbiguousSegment)) { + deny("outside-root", "Workspace path must stay within the project root."); + } + if (segments.some(isDeniedSegment)) { + deny("sensitive-path", "Hidden, generated, or sensitive workspace items are not displayed."); + } + const candidate = resolve(root, segments.join(sep)); + if (!isContained(root, candidate) || relative(root, candidate) === "") { + deny("outside-root", "Workspace path must stay within the project root."); + } + await assertNoLinkOnPath(root, candidate); + const target = await realpath(candidate).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (!isContained(root, target)) { + deny("outside-root", "Workspace path must stay within the project root."); + } + return target; +} + +/** Trim a trailing partial UTF-8 sequence so a bounded read still decodes. */ +function decodeBoundedUtf8(bytes: Buffer, complete: boolean): string { + try { + return new TextDecoder("utf-8", { fatal: true }).decode(bytes, { stream: !complete }); + } catch { + return deny("binary", "File is not valid UTF-8 text."); + } +} + +function truncateUtf8(value: string, maximumBytes: number): { value: string; truncated: boolean } { + const encoded = Buffer.from(value, "utf8"); + if (encoded.length <= maximumBytes) return { value, truncated: false }; + let end = maximumBytes; + while (end > 0 && (encoded[end]! & 0xc0) === 0x80) end -= 1; + return { value: encoded.subarray(0, end).toString("utf8"), truncated: true }; +} + +/** Best-effort masking of obvious credential shapes in returned text. */ +export function redactObservedText(value: string): { value: string; redacted: boolean } { + let redacted = false; + const withoutPrivateKeys = value.replace(PRIVATE_KEY_BLOCK, () => { + redacted = true; + return "[redacted private key]"; + }); + const output = withoutPrivateKeys.replace( + TEXT_ASSIGNMENT, + (match, prefix: string, key: string) => { + if (!SENSITIVE_ASSIGNMENT_KEY.test(key)) return match; + redacted = true; + return `${prefix}[redacted]`; + }, + ); + return { value: output, redacted }; +} + +/** Entry kinds a directory read can report without a follow-up syscall. */ +type ScannedKind = "file" | "directory" | "link" | "other" | "unknown"; + +function scannedKindOf(entry: { + isSymbolicLink: () => boolean; + isDirectory: () => boolean; + isFile: () => boolean; +}): ScannedKind { + if (entry.isSymbolicLink()) return "link"; + if (entry.isDirectory()) return "directory"; + if (entry.isFile()) return "file"; + return "unknown"; +} + +/** + * List one directory with a bounded number of filesystem operations. + * + * The directory read already reports a kind for each entry, so the ordinary + * path costs one `opendir` walk and no per-entry syscalls at all. Only entries + * whose kind the platform left unknown fall back to `lstat`, and that fallback + * is capped by `WORKSPACE_OBSERVATORY_ENTRY_METADATA_BUDGET`; beyond the cap the + * remaining unknown entries are reported as truncated instead of probed. This + * replaces three sequential metadata calls per name, which let a single + * 500-entry listing issue up to 1500 sequential filesystem operations while + * holding one admission slot for the whole series. + * + * Dropping the per-entry `realpath` does not weaken containment: the parent was + * already proven link-free and real, each entry name is a single segment that is + * neither `.` nor `..`, and any entry that is itself a link is discarded. The + * string containment check is kept as a cheap backstop. + */ +async function listDirectory( + root: string, + target: string, +): Promise<{ entries: WorkspaceObservatoryTreeEntry[]; truncated: boolean; redacted: boolean }> { + const targetStat = await stat(target).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (!targetStat.isDirectory()) deny("not-a-directory", "Workspace item is not a directory."); + + const handle = await opendir(target).catch(() => + deny("unreadable", "Workspace directory cannot be read."), + ); + const scanned: { name: string; kind: ScannedKind }[] = []; + let truncated = false; + try { + for await (const entry of handle) { + if (scanned.length >= WORKSPACE_OBSERVATORY_LIMITS.treeEntries) { + truncated = true; + break; + } + scanned.push({ name: entry.name, kind: scannedKindOf(entry) }); + } + } finally { + await handle.close().catch(() => undefined); + } + + const entries: WorkspaceObservatoryTreeEntry[] = []; + let redacted = false; + let metadataBudget = WORKSPACE_OBSERVATORY_ENTRY_METADATA_BUDGET; + for (const scan of scanned.toSorted((left, right) => left.name.localeCompare(right.name))) { + const { name } = scan; + if (isDeniedSegment(name) || isAmbiguousSegment(name)) { + redacted = true; + continue; + } + let kind: ScannedKind = scan.kind; + if (kind === "unknown") { + if (metadataBudget <= 0) { + truncated = true; + continue; + } + metadataBudget -= 1; + const link = await lstat(resolve(target, name)).catch(() => null); + if (!link) continue; + kind = scannedKindOf(link) === "unknown" ? "other" : scannedKindOf(link); + } + if (kind !== "file" && kind !== "directory") continue; + const resolved = resolve(target, name); + if (!isContained(root, resolved)) continue; + const entryRelativePath = toPosix(relative(root, resolved)); + if ( + entryRelativePath.length === 0 || + entryRelativePath.length > WORKSPACE_OBSERVATORY_LIMITS.relativePathLength + ) { + truncated = true; + continue; + } + entries.push({ name, relativePath: entryRelativePath, kind }); + } + return { entries, truncated, redacted }; +} + +async function readBoundedFile( + root: string, + target: string, +): Promise { + // Establish that this is a regular file *before* opening it. `open` on a + // named pipe with no writer blocks until a writer appears, and that block + // happens on a libuv worker thread that cannot be cancelled or interrupted, + // so without this check one FIFO inside the workspace could occupy a worker + // for the lifetime of the process. The check does not replace the descriptor + // check below -- the entry can still change in between -- it is what keeps the + // blocking case from being reachable in the first place. + const precheck = await lstat(target).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (precheck.isSymbolicLink()) { + deny("link", "Workspace links and reparse-point aliases are not displayed."); + } + if (!precheck.isFile()) deny("not-a-file", "Workspace item is not a regular file."); + + // `O_NONBLOCK` narrows the remaining race: if the entry is swapped for a FIFO + // between the check above and this open, the open fails or returns + // immediately instead of waiting for a writer. POSIX specifies no effect for + // regular files, and the flag is absent on Windows, where `?? 0` leaves the + // flags unchanged. + const openFlags = constants.O_RDONLY | (constants.O_NOFOLLOW ?? 0) | (constants.O_NONBLOCK ?? 0); + const handle = await open(target, openFlags).catch(() => + deny("unreadable", "Workspace item cannot be opened safely."), + ); + try { + // Descriptor-level type check. This one is authoritative: it describes the + // object actually opened rather than the name that was looked up. + const opened = await handle.stat(); + if (!opened.isFile()) deny("not-a-file", "Workspace item is not a regular file."); + const revalidated = await realpath(target).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (!isContained(root, revalidated)) { + deny("outside-root", "Workspace item moved outside the project root."); + } + const current = await stat(revalidated).catch(() => + deny("unreadable", "Workspace item is unavailable."), + ); + if (opened.dev !== current.dev || opened.ino !== current.ino) { + deny("changed-while-reading", "Workspace item changed while it was being opened."); + } + // One extra byte only tells us whether more content exists past the limit. + const maximumReadBytes = WORKSPACE_OBSERVATORY_LIMITS.textBytes + 1; + const buffer = Buffer.alloc(Math.min(opened.size, maximumReadBytes)); + const { bytesRead } = await handle.read(buffer, 0, buffer.length, 0); + const bytes = buffer.subarray(0, bytesRead); + if (bytes.includes(0)) deny("binary", "Binary files cannot be displayed."); + const complete = bytesRead >= opened.size; + const content = decodeBoundedUtf8(bytes, complete); + const redaction = redactObservedText(content); + const bounded = truncateUtf8(redaction.value, WORKSPACE_OBSERVATORY_LIMITS.textBytes); + return { + relativePath: toPosix(relative(root, target)), + content: bounded.value, + truncated: !complete || bounded.truncated, + redacted: redaction.redacted, + }; + } finally { + await handle.close().catch(() => undefined); + } +} + +/** Resolves the authoritative workspace root for a project id. */ +export type WorkspaceObservatoryRootResolver = ( + projectId: ProjectId, +) => Effect.Effect; + +const denied = (cause: unknown): WorkspaceObservatoryDeniedError => + cause instanceof WorkspaceObservatoryDeniedError + ? cause + : new WorkspaceObservatoryDeniedError({ + reason: "unreadable", + detail: "Workspace item is unavailable.", + }); + +/** + * Build the observatory over an injected root resolver. Tests supply a + * synthetic resolver so no real project registry is ever consulted. + * + * The admission controller is created here, so one observatory instance -- and + * therefore one server process -- has a single bounded filesystem budget shared + * by every connected client. + */ +export function makeWorkspaceObservatory( + resolveWorkspaceRoot: WorkspaceObservatoryRootResolver, + admission: WorkspaceObservatoryAdmission = makeObservatoryAdmission(), +): WorkspaceObservatoryShape { + const realRootFor = Effect.fn("WorkspaceObservatory.realRootFor")(function* ( + projectId: ProjectId, + ) { + const workspaceRoot = yield* resolveWorkspaceRoot(projectId); + if (!workspaceRoot) { + return yield* new WorkspaceObservatoryDeniedError({ + reason: "unknown-project", + detail: "Project is not part of this connected environment.", + }); + } + return yield* Effect.tryPromise({ + try: () => admission.run(() => realpath(workspaceRoot)), + catch: (cause) => + // An admission refusal is already a denial and keeps its own reason; any + // other failure is reported as an unavailable root. + cause instanceof WorkspaceObservatoryDeniedError + ? cause + : new WorkspaceObservatoryDeniedError({ + reason: "root-unavailable", + detail: "Workspace root is unavailable.", + }), + }); + }); + + const tree: WorkspaceObservatoryShape["tree"] = Effect.fn("WorkspaceObservatory.tree")( + function* (input) { + const root = yield* realRootFor(input.projectId); + const requested = input.relativePath ?? ""; + const listing: WorkspaceObservatoryTreeResult = yield* Effect.tryPromise({ + try: () => + admission.run(async () => { + const target = + requested === "" || requested === "." + ? root + : await resolveObservedTarget(root, requested); + const result = await listDirectory(root, target); + return { + relativePath: toPosix(relative(root, target)), + entries: result.entries, + truncated: result.truncated, + redacted: result.redacted, + }; + }), + catch: denied, + }); + return listing; + }, + ); + + const readFile: WorkspaceObservatoryShape["readFile"] = Effect.fn( + "WorkspaceObservatory.readFile", + )(function* (input) { + const root = yield* realRootFor(input.projectId); + return yield* Effect.tryPromise({ + try: () => + admission.run(async () => { + const target = await resolveObservedTarget(root, input.relativePath); + return await readBoundedFile(root, target); + }), + catch: denied, + }); + }); + + return { tree, readFile } satisfies WorkspaceObservatoryShape; +} + +/** + * Live layer. The workspace root comes from the orchestration projection for + * the selected project, which is the server's own record of what the user + * registered. + */ +export const WorkspaceObservatoryLive = Layer.effect( + WorkspaceObservatory, + Effect.gen(function* () { + const projectionSnapshotQuery = yield* ProjectionSnapshotQuery; + return makeWorkspaceObservatory((projectId) => + projectionSnapshotQuery.getProjectShellById(projectId).pipe( + Effect.map( + Option.match({ onNone: () => null, onSome: (project) => project.workspaceRoot }), + ), + Effect.catch(() => Effect.succeed(null)), + ), + ); + }), +); diff --git a/apps/server/src/workspace/Services/WorkspaceObservatory.ts b/apps/server/src/workspace/Services/WorkspaceObservatory.ts new file mode 100644 index 000000000..11c1ef1e4 --- /dev/null +++ b/apps/server/src/workspace/Services/WorkspaceObservatory.ts @@ -0,0 +1,85 @@ +/** + * WorkspaceObservatory - Effect service contract for read-only workspace views. + * + * Exposes bounded directory listings and bounded UTF-8 text previews for the + * workspace root of a project that the server's own projection already knows. + * The service never writes, never executes, and never accepts a caller-supplied + * root. + * + * @module WorkspaceObservatory + */ +import * as Schema from "effect/Schema"; +import * as Context from "effect/Context"; +import type * as Effect from "effect/Effect"; + +import type { + WorkspaceObservatoryFileInput, + WorkspaceObservatoryFileResult, + WorkspaceObservatoryTreeInput, + WorkspaceObservatoryTreeResult, +} from "@cafecode/contracts"; + +/** + * Denial reasons are deliberately coarse so a rejected request cannot be used + * to probe the filesystem outside the selected project. + * + * `busy` and `timed-out` describe the observatory's own admission control + * rather than anything about the requested path, so they leak nothing: `busy` + * means the bounded pool of concurrent filesystem operations was already full, + * and `timed-out` means one operation exceeded its deadline. + */ +export const WorkspaceObservatoryDenialReason = Schema.Literals([ + "unknown-project", + "root-unavailable", + "outside-root", + "sensitive-path", + "link", + "not-a-directory", + "not-a-file", + "unreadable", + "binary", + "changed-while-reading", + "busy", + "timed-out", +]); +export type WorkspaceObservatoryDenialReason = typeof WorkspaceObservatoryDenialReason.Type; + +export class WorkspaceObservatoryDeniedError extends Schema.TaggedErrorClass()( + "WorkspaceObservatoryDeniedError", + { + reason: WorkspaceObservatoryDenialReason, + detail: Schema.String, + }, +) { + override get message(): string { + return this.detail; + } +} + +/** + * WorkspaceObservatoryShape - Service API for read-only workspace observation. + */ +export interface WorkspaceObservatoryShape { + /** + * List one directory inside the selected project's workspace root. + */ + readonly tree: ( + input: WorkspaceObservatoryTreeInput, + ) => Effect.Effect; + + /** + * Read a bounded UTF-8 text preview of one regular file inside the selected + * project's workspace root. + */ + readonly readFile: ( + input: WorkspaceObservatoryFileInput, + ) => Effect.Effect; +} + +/** + * WorkspaceObservatory - Service tag for read-only workspace observation. + */ +export class WorkspaceObservatory extends Context.Service< + WorkspaceObservatory, + WorkspaceObservatoryShape +>()("cafecode/workspace/Services/WorkspaceObservatory") {} diff --git a/apps/server/src/ws.ts b/apps/server/src/ws.ts index 1f37187cd..d36747947 100644 --- a/apps/server/src/ws.ts +++ b/apps/server/src/ws.ts @@ -29,6 +29,7 @@ import { ServerProviderRuntimeRestartError, DictationError, ProviderInteractionError, + WorkspaceObservatoryError, WS_METHODS, WsRpcGroup, } from "@cafecode/contracts"; @@ -67,6 +68,7 @@ import { redactServerSettingsForClient, ServerSettingsService } from "./serverSe import { ServerClientSettingsService } from "./serverClientSettings.ts"; import { WorkspaceEntries } from "./workspace/Services/WorkspaceEntries.ts"; import { WorkspaceFileSystem } from "./workspace/Services/WorkspaceFileSystem.ts"; +import { WorkspaceObservatory } from "./workspace/Services/WorkspaceObservatory.ts"; import { WorkspacePathOutsideRootError } from "./workspace/Services/WorkspacePaths.ts"; import { VcsStatusBroadcaster } from "./vcs/VcsStatusBroadcaster.ts"; import { VcsProvisioningService } from "./vcs/VcsProvisioningService.ts"; @@ -210,6 +212,7 @@ const makeWsRpcLayer = ( const startup = yield* ServerRuntimeStartup; const workspaceEntries = yield* WorkspaceEntries; const workspaceFileSystem = yield* WorkspaceFileSystem; + const workspaceObservatory = yield* WorkspaceObservatory; const projectSetupScriptRunner = yield* ProjectSetupScriptRunner; const repositoryIdentityResolver = yield* RepositoryIdentityResolver; const serverEnvironment = yield* ServerEnvironment; @@ -1307,6 +1310,32 @@ const makeWsRpcLayer = ( ), { "rpc.aggregate": "workspace" }, ), + [WS_METHODS.workspaceObservatoryTree]: (input) => + observeRpcEffect( + WS_METHODS.workspaceObservatoryTree, + // Denial detail is a fixed, coarse sentence chosen by the + // observatory; it never echoes a filesystem path back to a caller. + workspaceObservatory + .tree(input) + .pipe( + Effect.mapError( + (cause) => new WorkspaceObservatoryError({ message: cause.detail }), + ), + ), + { "rpc.aggregate": "workspace" }, + ), + [WS_METHODS.workspaceObservatoryReadFile]: (input) => + observeRpcEffect( + WS_METHODS.workspaceObservatoryReadFile, + workspaceObservatory + .readFile(input) + .pipe( + Effect.mapError( + (cause) => new WorkspaceObservatoryError({ message: cause.detail }), + ), + ), + { "rpc.aggregate": "workspace" }, + ), [WS_METHODS.shellOpenInEditor]: (input) => observeRpcEffect(WS_METHODS.shellOpenInEditor, externalLauncher.launchEditor(input), { "rpc.aggregate": "workspace", diff --git a/apps/web/src/components/ChatView.tsx b/apps/web/src/components/ChatView.tsx index 5487a7ae9..6fde199f3 100644 --- a/apps/web/src/components/ChatView.tsx +++ b/apps/web/src/components/ChatView.tsx @@ -161,6 +161,8 @@ import { } from "./chat/followUpQueue"; import { ExpandedImageDialog } from "./chat/ExpandedImageDialog"; import { PullRequestThreadDialog } from "./PullRequestThreadDialog"; +import { WorkspaceObservatory } from "./WorkspaceObservatory"; +import { Button } from "./ui/button"; import { MessagesTimeline } from "./chat/MessagesTimeline"; import type { SubagentDetailSelection } from "./chat/SubagentDetailView"; import { useTaskAtriumStore } from "./atrium/taskAtriumStore"; @@ -2333,6 +2335,7 @@ export default function ChatView(props: ChatViewProps) { if (!completionSummary) return null; return deriveCompletionDividerAfterEntryId(timelineEntries, activeLatestTurn); }, [activeLatestTurn, completionSummary, latestTurnSettled, timelineEntries]); + const [workspaceObservatoryOpen, setWorkspaceObservatoryOpen] = useState(false); const gitCwd = activeThread?.worktreePath ?? activeProject?.cwd ?? null; const gitStatusQuery = useGitStatus({ environmentId, cwd: gitCwd }); const keybindings = useServerKeybindings(); @@ -6577,6 +6580,17 @@ export default function ChatView(props: ChatViewProps) { /> +
+ +
{isGitRepo && ( ) : null} + + {/* end chat column */} diff --git a/apps/web/src/components/WorkspaceObservatory.browser.tsx b/apps/web/src/components/WorkspaceObservatory.browser.tsx new file mode 100644 index 000000000..478478109 --- /dev/null +++ b/apps/web/src/components/WorkspaceObservatory.browser.tsx @@ -0,0 +1,715 @@ +import "../index.css"; + +import type { + EnvironmentApi, + EnvironmentId, + ProjectId, + WorkspaceObservatoryFileInput, + WorkspaceObservatoryFileResult, + WorkspaceObservatoryTreeResult, +} from "@cafecode/contracts"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { render } from "vitest-browser-react"; + +import { + __resetEnvironmentApiOverridesForTests, + __setEnvironmentApiOverrideForTests, +} from "../environmentApi"; +import { + WorkspaceObservatory, + WORKSPACE_OBSERVATORY_MAX_PANES, + WORKSPACE_OBSERVATORY_VISIBLE_DIFF_LINES, +} from "./WorkspaceObservatory"; + +const ENVIRONMENT_ID = "environment-observatory" as EnvironmentId; +const PROJECT_ID = "project-observatory" as ProjectId; +const OTHER_PROJECT_ID = "project-other" as ProjectId; + +/** Every fixture below is synthetic; no real filesystem is touched. */ +interface ObservatoryStub { + readonly tree: ReturnType; + readonly readFile: ReturnType; +} + +function makeTreeResult( + entries: WorkspaceObservatoryTreeResult["entries"], + overrides: Partial = {}, +): WorkspaceObservatoryTreeResult { + return { relativePath: "", entries, truncated: false, redacted: false, ...overrides }; +} + +function makeFileResult( + relativePath: string, + content: string, + overrides: Partial = {}, +): WorkspaceObservatoryFileResult { + return { relativePath, content, truncated: false, redacted: false, ...overrides }; +} + +function installObservatory(stub: ObservatoryStub): void { + __setEnvironmentApiOverrideForTests(ENVIRONMENT_ID, { + workspaceObservatory: { tree: stub.tree, readFile: stub.readFile }, + } as unknown as EnvironmentApi); +} + +function node(testId: string): HTMLElement | null { + return document.querySelector(`[data-testid="${testId}"]`); +} + +function requireNode(testId: string): HTMLElement { + const found = node(testId); + if (!found) throw new Error(`missing [data-testid="${testId}"]`); + return found; +} + +async function waitForNode(testId: string): Promise { + await vi.waitFor(() => expect(node(testId)).not.toBe(null), { timeout: 8_000, interval: 16 }); + return requireNode(testId); +} + +async function clickNode(testId: string): Promise { + (await waitForNode(testId)).click(); +} + +function delay(milliseconds: number): Promise { + return new Promise((resolve) => setTimeout(resolve, milliseconds)); +} + +const FILE_ENTRIES = Array.from({ length: WORKSPACE_OBSERVATORY_MAX_PANES + 2 }, (_u, index) => ({ + name: `file-${index}.txt`, + relativePath: `file-${index}.txt`, + kind: "file" as const, +})); + +let host: HTMLDivElement | null = null; + +beforeEach(() => { + __resetEnvironmentApiOverridesForTests(); + host = document.createElement("div"); + document.body.append(host); +}); + +afterEach(() => { + __resetEnvironmentApiOverridesForTests(); + host?.remove(); + host = null; +}); + +function renderObservatory(projectId: ProjectId | null, open = true) { + return render( + undefined} + />, + { container: host! }, + ); +} + +describe("WorkspaceObservatory", () => { + it("lists the selected project root and opens a file pane on demand", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([ + { name: "src", relativePath: "src", kind: "directory" }, + { name: "README.md", relativePath: "README.md", kind: "file" }, + ]), + ), + readFile: vi.fn(async () => makeFileResult("README.md", "# Fixture")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await waitForNode("observatory-entry-README.md"); + // The renderer never sends a filesystem root; only the project identity. + expect(stub.tree.mock.calls[0]?.[0]).toEqual({ projectId: PROJECT_ID }); + + await clickNode("observatory-entry-README.md"); + const pane = await waitForNode("observatory-pane-README.md"); + expect(pane.textContent).toContain("# Fixture"); + expect(requireNode("observatory-pane-count").textContent).toContain( + `1/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + } finally { + await screen.unmount(); + } + }); + + it("caps open panes and explains the refusal", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => makeTreeResult(FILE_ENTRIES)), + readFile: vi.fn(async (input: WorkspaceObservatoryFileInput) => + makeFileResult(input.relativePath, `contents of ${input.relativePath}`), + ), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await waitForNode("observatory-entry-file-0.txt"); + for (let index = 0; index < WORKSPACE_OBSERVATORY_MAX_PANES; index += 1) { + await clickNode(`observatory-entry-file-${index}.txt`); + await waitForNode(`observatory-pane-file-${index}.txt`); + } + expect(requireNode("observatory-pane-count").textContent).toContain( + `${WORKSPACE_OBSERVATORY_MAX_PANES}/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + + await clickNode(`observatory-entry-file-${WORKSPACE_OBSERVATORY_MAX_PANES}.txt`); + const error = await waitForNode("observatory-pane-error"); + expect(error.textContent).toContain( + `At most ${WORKSPACE_OBSERVATORY_MAX_PANES} panes can be open.`, + ); + expect(requireNode("observatory-pane-count").textContent).toContain( + `${WORKSPACE_OBSERVATORY_MAX_PANES}/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + expect(node(`observatory-pane-file-${WORKSPACE_OBSERVATORY_MAX_PANES}.txt`)).toBe(null); + } finally { + await screen.unmount(); + } + }); + + it("closes a pane explicitly", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("a.txt", "one")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-a.txt"); + await waitForNode("observatory-pane-a.txt"); + await clickNode("observatory-close-a.txt"); + await vi.waitFor(() => expect(node("observatory-pane-a.txt")).toBe(null)); + expect(requireNode("observatory-pane-count").textContent).toContain( + `0/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + } finally { + await screen.unmount(); + } + }); + + it("drops a tree response that resolves after the dialog closed", async () => { + // A holder keeps the assignment out of TypeScript's control-flow narrowing, + // which otherwise types the callback as `never` at the call site. + const releaseTree: { fn: (() => void) | null } = { fn: null }; + const stub: ObservatoryStub = { + tree: vi.fn( + async () => + await new Promise((resolve) => { + releaseTree.fn = () => + resolve( + makeTreeResult([{ name: "late.txt", relativePath: "late.txt", kind: "file" }]), + ); + }), + ), + readFile: vi.fn(async () => makeFileResult("late.txt", "late")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await vi.waitFor(() => expect(stub.tree).toHaveBeenCalledTimes(1)); + + screen.rerender( + undefined} + />, + ); + releaseTree.fn?.(); + await delay(80); + + screen.rerender( + undefined} + />, + ); + await waitForNode("observatory-entries"); + await delay(80); + // The stale listing never lands in the reopened, different-project session. + expect(requireNode("observatory-entries").textContent).not.toContain("late.txt"); + } finally { + await screen.unmount(); + } + }); + + it("drops an in-flight file read when the project switches", async () => { + const releaseFile: { fn: (() => void) | null } = { fn: null }; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "slow.txt", relativePath: "slow.txt", kind: "file" }]), + ), + readFile: vi.fn( + async () => + await new Promise((resolve) => { + releaseFile.fn = () => resolve(makeFileResult("slow.txt", "stale contents")); + }), + ), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-slow.txt"); + await vi.waitFor(() => expect(stub.readFile).toHaveBeenCalledTimes(1)); + + screen.rerender( + undefined} + />, + ); + releaseFile.fn?.(); + await delay(120); + + expect(node("observatory-pane-slow.txt")).toBe(null); + expect(requireNode("observatory-pane-count").textContent).toContain( + `0/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + } finally { + await screen.unmount(); + } + }); + + it("starts paused, refreshes on demand, and reports an unattributed diff", async () => { + let contents = "alpha\nbeta\n"; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "watched.txt", relativePath: "watched.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("watched.txt", contents)), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-watched.txt"); + await waitForNode("observatory-pane-watched.txt"); + + const readsWhileOpen = stub.readFile.mock.calls.length; + await delay(400); + // Refresh is opt-in: nothing polls until the user starts it. + expect(stub.readFile.mock.calls.length).toBe(readsWhileOpen); + + contents = "alpha\nBETA\n"; + await clickNode("observatory-toggle-refresh"); + + const diff = await waitForNode("observatory-diff-watched.txt"); + expect(diff.textContent).toContain("1 line changed since the previous snapshot"); + expect(diff.textContent).toContain("Cause is not attributed."); + + await clickNode("observatory-toggle-refresh"); + const readsAfterPause = stub.readFile.mock.calls.length; + await delay(3_000); + // Pausing tears the timer down; no further request round is issued. + expect(stub.readFile.mock.calls.length).toBe(readsAfterPause); + } finally { + await screen.unmount(); + } + }); + + it("stops polling once the dialog is closed", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "watched.txt", relativePath: "watched.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("watched.txt", "same\n")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-watched.txt"); + await waitForNode("observatory-pane-watched.txt"); + await clickNode("observatory-toggle-refresh"); + await vi.waitFor(() => expect(stub.readFile.mock.calls.length).toBeGreaterThan(1), { + timeout: 8_000, + interval: 50, + }); + + screen.rerender( + undefined} + />, + ); + const readsAtClose = stub.readFile.mock.calls.length; + await delay(3_000); + expect(stub.readFile.mock.calls.length).toBe(readsAtClose); + } finally { + await screen.unmount(); + } + }); + + it("surfaces a server denial without exposing a path", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => { + throw new Error("Workspace path must stay within the project root."); + }), + readFile: vi.fn(async () => makeFileResult("a.txt", "")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + const error = await waitForNode("observatory-tree-error"); + expect(error.textContent).toContain("Workspace path must stay within the project root."); + expect(node("observatory-entries")?.textContent ?? "").toBe(""); + } finally { + await screen.unmount(); + } + }); + + it("starts a switched project with no content from the previous one", async () => { + const stub: ObservatoryStub = { + // The new project's listing never resolves, so anything on screen after + // the switch can only have come from the previous project. + tree: vi.fn(async (input: { projectId: ProjectId }) => + input.projectId === OTHER_PROJECT_ID + ? await new Promise(() => {}) + : makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("a.txt", "first project contents")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-a.txt"); + const pane = await waitForNode("observatory-pane-a.txt"); + expect(pane.textContent).toContain("first project contents"); + + await screen.rerender( + undefined} + />, + ); + + // The keyed session body is replaced rather than cleared by an effect, so + // the previous project's pane is already gone even though the new project + // has produced nothing to replace it with. + expect(document.body.textContent).not.toContain("first project contents"); + expect(node("observatory-pane-a.txt")).toBe(null); + expect(requireNode("observatory-pane-count").textContent).toContain( + `0/${WORKSPACE_OBSERVATORY_MAX_PANES} panes`, + ); + } finally { + await screen.unmount(); + } + }); + + it("isolates project sessions when identifiers contain the key delimiter", async () => { + const firstEnvironment = "environment:remote" as EnvironmentId; + const secondEnvironment = "environment" as EnvironmentId; + __setEnvironmentApiOverrideForTests(firstEnvironment, { + workspaceObservatory: { + tree: vi.fn(async () => + makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("a.txt", "previous environment contents")), + }, + } as unknown as EnvironmentApi); + __setEnvironmentApiOverrideForTests(secondEnvironment, { + workspaceObservatory: { + tree: vi.fn(() => new Promise(() => {})), + readFile: vi.fn(), + }, + } as unknown as EnvironmentApi); + const screen = await render( + undefined} + />, + { container: host! }, + ); + try { + await clickNode("observatory-entry-a.txt"); + expect((await waitForNode("observatory-pane-a.txt")).textContent).toContain( + "previous environment contents", + ); + await screen.rerender( + undefined} + />, + ); + expect(document.body.textContent).not.toContain("previous environment contents"); + expect(node("observatory-pane-a.txt")).toBe(null); + } finally { + await screen.unmount(); + } + }); + + it("keeps the newest directory listing when an older one resolves later", async () => { + const pendingSrc: { fn: (() => void) | null } = { fn: null }; + const stub: ObservatoryStub = { + tree: vi.fn(async (input: { relativePath?: string }) => { + if (input.relativePath === "src") { + // Held open so the later navigation can overtake it. + return await new Promise((resolve) => { + pendingSrc.fn = () => + resolve( + makeTreeResult([{ name: "slow.txt", relativePath: "src/slow.txt", kind: "file" }], { + relativePath: "src", + }), + ); + }); + } + if (input.relativePath === "docs") { + return makeTreeResult( + [{ name: "fast.txt", relativePath: "docs/fast.txt", kind: "file" }], + { relativePath: "docs" }, + ); + } + return makeTreeResult([ + { name: "docs", relativePath: "docs", kind: "directory" }, + { name: "src", relativePath: "src", kind: "directory" }, + ]); + }), + readFile: vi.fn(async () => makeFileResult("docs/fast.txt", "")), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-src"); + await vi.waitFor(() => expect(stub.tree).toHaveBeenCalledTimes(2)); + + // A newer navigation is issued and resolves while the older one is held. + await clickNode("observatory-entry-docs"); + await waitForNode("observatory-entry-docs/fast.txt"); + + pendingSrc.fn?.(); + await delay(150); + + // The superseded listing must not rewrite the newer one, and the + // breadcrumb must keep agreeing with the entries on screen. + expect(node("observatory-entry-src/slow.txt")).toBe(null); + expect(node("observatory-entry-docs/fast.txt")).not.toBe(null); + } finally { + await screen.unmount(); + } + }); + + it("dispatches one read per file no matter how fast the entry is clicked", async () => { + const release: { fn: (() => void) | null } = { fn: null }; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn( + async () => + await new Promise((resolve) => { + release.fn = () => resolve(makeFileResult("a.txt", "contents")); + }), + ), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + const entry = await waitForNode("observatory-entry-a.txt"); + for (let click = 0; click < 12; click += 1) entry.click(); + await delay(80); + // The in-flight read is tracked by path, so repeated clicks before state + // settles cannot multiply requests. + expect(stub.readFile).toHaveBeenCalledTimes(1); + + release.fn?.(); + await waitForNode("observatory-pane-a.txt"); + entry.click(); + await delay(80); + // Already open, so still no second read. + expect(stub.readFile).toHaveBeenCalledTimes(1); + } finally { + await screen.unmount(); + } + }); + + it("bounds pending reads by the pane ceiling before any of them settle", async () => { + const stub: ObservatoryStub = { + tree: vi.fn(async () => makeTreeResult(FILE_ENTRIES)), + readFile: vi.fn(async () => await new Promise(() => {})), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await waitForNode("observatory-entry-file-0.txt"); + for (const entry of FILE_ENTRIES) { + requireNode(`observatory-entry-${entry.relativePath}`).click(); + } + await delay(120); + // Pending reads count against the ceiling, so the burst cannot exceed it + // even though no pane has rendered yet. + expect(stub.readFile.mock.calls.length).toBe(WORKSPACE_OBSERVATORY_MAX_PANES); + const error = await waitForNode("observatory-pane-error"); + expect(error.textContent).toContain( + `At most ${WORKSPACE_OBSERVATORY_MAX_PANES} panes can be open.`, + ); + } finally { + await screen.unmount(); + } + }); + + it("does not let a closed pane's late read update the reopened pane", async () => { + const pending: { fn: ((value: WorkspaceObservatoryFileResult) => void) | null } = { fn: null }; + let readCount = 0; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => { + readCount += 1; + if (readCount === 1) return makeFileResult("a.txt", "original contents"); + if (readCount === 2) { + return await new Promise((resolve) => { + pending.fn = resolve; + }); + } + return makeFileResult("a.txt", "reopened contents"); + }), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-a.txt"); + await waitForNode("observatory-pane-a.txt"); + + // Start a refresh read, then close the pane while that read is in flight. + await clickNode("observatory-toggle-refresh"); + await vi.waitFor(() => expect(stub.readFile.mock.calls.length).toBeGreaterThan(1), { + timeout: 8_000, + interval: 25, + }); + await clickNode("observatory-close-a.txt"); + await vi.waitFor(() => expect(node("observatory-pane-a.txt")).toBe(null)); + + await clickNode("observatory-entry-a.txt"); + const reopened = await waitForNode("observatory-pane-a.txt"); + expect(reopened.textContent).toContain("reopened contents"); + + pending.fn?.(makeFileResult("a.txt", "contents from the closed pane")); + await delay(150); + // Pane ids are unique per open, so the late response has no pane to match. + expect(requireNode("observatory-pane-a.txt").textContent).not.toContain( + "contents from the closed pane", + ); + } finally { + await screen.unmount(); + } + }); + + it("marks a pane stale when its refresh fails instead of looking current", async () => { + let failNextRead = false; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "a.txt", relativePath: "a.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => { + if (failNextRead) throw new Error("The workspace observatory is busy."); + return makeFileResult("a.txt", "last good contents"); + }), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-a.txt"); + await waitForNode("observatory-pane-a.txt"); + failNextRead = true; + await clickNode("observatory-toggle-refresh"); + + const stale = await waitForNode("observatory-stale-a.txt"); + expect(stale.textContent).toContain("Refresh failed"); + expect(stale.textContent).toContain("The workspace observatory is busy."); + // The previous values are still shown, but they are no longer presented as + // current. + expect(requireNode("observatory-pane-a.txt").textContent).toContain("last good contents"); + } finally { + await screen.unmount(); + } + }); + + it("shows bounded before and after lines for a changed snapshot", async () => { + let contents = "alpha\nbeta\ngamma\n"; + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "watched.txt", relativePath: "watched.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("watched.txt", contents)), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-watched.txt"); + await waitForNode("observatory-pane-watched.txt"); + + contents = "alpha\nBETA\ngamma\ndelta\n"; + await clickNode("observatory-toggle-refresh"); + + const lines = await waitForNode("observatory-diff-lines-watched.txt"); + expect(lines.textContent).toContain("- 2: beta"); + expect(lines.textContent).toContain("+ 2: BETA"); + expect(lines.textContent).toContain("+ 4: delta"); + // The detail is a description of the file, not an attribution. + expect(requireNode("observatory-diff-watched.txt").textContent).toContain( + "Cause is not attributed.", + ); + } finally { + await screen.unmount(); + } + }); + + it("caps the rendered change list and says how many lines are hidden", async () => { + const wide = WORKSPACE_OBSERVATORY_VISIBLE_DIFF_LINES + 5; + let contents = Array.from({ length: wide }, (_u, index) => `line ${index}`).join("\n"); + const stub: ObservatoryStub = { + tree: vi.fn(async () => + makeTreeResult([{ name: "watched.txt", relativePath: "watched.txt", kind: "file" }]), + ), + readFile: vi.fn(async () => makeFileResult("watched.txt", contents)), + }; + installObservatory(stub); + + const screen = await renderObservatory(PROJECT_ID); + try { + await clickNode("observatory-entry-watched.txt"); + await waitForNode("observatory-pane-watched.txt"); + + contents = Array.from({ length: wide }, (_u, index) => `LINE ${index}`).join("\n"); + await clickNode("observatory-toggle-refresh"); + + const lines = await waitForNode("observatory-diff-lines-watched.txt"); + expect(lines.querySelectorAll("li").length).toBe(WORKSPACE_OBSERVATORY_VISIBLE_DIFF_LINES); + const more = requireNode("observatory-diff-more-watched.txt"); + expect(more.textContent).toContain("5 more changed lines not shown."); + } finally { + await screen.unmount(); + } + }); +}); diff --git a/apps/web/src/components/WorkspaceObservatory.tsx b/apps/web/src/components/WorkspaceObservatory.tsx new file mode 100644 index 000000000..0cb25be91 --- /dev/null +++ b/apps/web/src/components/WorkspaceObservatory.tsx @@ -0,0 +1,622 @@ +import type { EnvironmentId, ProjectId, WorkspaceObservatoryTreeEntry } from "@cafecode/contracts"; +import { useCallback, useEffect, useMemo, useRef, useState } from "react"; + +import { ensureEnvironmentApi } from "~/environmentApi"; +import { cn } from "~/lib/utils"; +import { diffFileLines, type FileLineDiff } from "~/workspaceObservatoryDiff"; +import { Button } from "./ui/button"; +import { + Dialog, + DialogDescription, + DialogHeader, + DialogPanel, + DialogPopup, + DialogTitle, +} from "./ui/dialog"; + +/** Hard ceiling on simultaneously open preview panes, including pending ones. */ +export const WORKSPACE_OBSERVATORY_MAX_PANES = 8; + +/** Refresh bounds, in seconds. Refresh is opt-in and starts paused. */ +export const WORKSPACE_OBSERVATORY_MIN_REFRESH_SECONDS = 2; +export const WORKSPACE_OBSERVATORY_MAX_REFRESH_SECONDS = 60; +const DEFAULT_REFRESH_SECONDS = 5; + +/** Changed lines rendered per pane. The diff itself is already bounded. */ +export const WORKSPACE_OBSERVATORY_VISIBLE_DIFF_LINES = 12; + +interface FilePane { + /** + * Unique for the lifetime of the session, not derived from the path. Closing + * and reopening the same file produces a new id, so a response in flight for + * the closed pane cannot be applied to the reopened one. + */ + readonly id: string; + readonly relativePath: string; + readonly content: string; + readonly truncated: boolean; + readonly redacted: boolean; + readonly lineDiff?: FileLineDiff; + readonly refreshedAt: string; + /** Set when the most recent refresh failed, so values are not current. */ + readonly staleReason?: string; +} + +interface WorkspaceObservatoryProps { + open: boolean; + environmentId: EnvironmentId | null; + projectId: ProjectId | null; + projectName?: string | undefined; + onOpenChange: (open: boolean) => void; +} + +function errorMessageOf(cause: unknown): string { + if (cause && typeof cause === "object" && "message" in cause) { + const message = (cause as { message?: unknown }).message; + if (typeof message === "string" && message.trim().length > 0) return message; + } + return "The workspace observatory request was refused."; +} + +function parentOf(relativePath: string): string { + const index = relativePath.lastIndexOf("/"); + return index < 0 ? "" : relativePath.slice(0, index); +} + +/** + * Read-only observatory over the selected project's working tree. + * + * The server resolves the workspace root from its own projection for + * `projectId`; this component never sends a filesystem root. Everything shown + * here is a bounded, best-effort-redacted preview and must not be treated as + * proof that a file contains no secrets. + * + * Diffs describe what changed between two snapshots of one file. They never + * claim an agent, a provider, or a person caused the change. + * + * The session body is mounted under a key built from the environment, the + * project, and the open state. Changing any of those unmounts the body and + * mounts a fresh one in the same commit, so pane and tree state are reset + * synchronously: there is no frame in which the previous project's file + * contents are still painted. A reset driven by `useEffect` could not offer + * that, because the effect runs after the browser has already had the chance to + * paint the old content against the new project. + */ +export function WorkspaceObservatory({ + open, + environmentId, + projectId, + projectName, + onOpenChange, +}: WorkspaceObservatoryProps) { + const sessionKey = JSON.stringify([environmentId, projectId, open]); + + return ( + + + + Workspace observatory + + Read-only previews of {projectName ?? "the selected project"}. Hidden, generated, and + obvious credential paths are withheld, and text masking is best effort rather than a + guarantee. + + + {open && environmentId && projectId ? ( + + ) : null} + + + ); +} + +interface WorkspaceObservatorySessionProps { + readonly environmentId: EnvironmentId; + readonly projectId: ProjectId; +} + +function WorkspaceObservatorySession({ + environmentId, + projectId, +}: WorkspaceObservatorySessionProps) { + const [directory, setDirectory] = useState(""); + const [entries, setEntries] = useState([]); + const [treeTruncated, setTreeTruncated] = useState(false); + const [treeRedacted, setTreeRedacted] = useState(false); + const [treeError, setTreeError] = useState(null); + const [paneError, setPaneError] = useState(null); + const [loadingTree, setLoadingTree] = useState(false); + const [panes, setPanes] = useState([]); + const [paused, setPaused] = useState(true); + const [refreshSeconds, setRefreshSeconds] = useState(DEFAULT_REFRESH_SECONDS); + + const panesRef = useRef(panes); + useEffect(() => { + panesRef.current = panes; + }, [panes]); + + /** + * Session liveness. Unmounting bumps it, so every response still in flight is + * discarded instead of being written into a component that no longer exists. + * The cleanup is what covers unmount; a dependency-driven effect alone left + * late responses free to resolve against a dead session. + */ + const sessionRef = useRef(0); + useEffect( + () => () => { + sessionRef.current += 1; + }, + [], + ); + + /** Identity of the newest directory request, so older ones cannot win. */ + const directoryRequestRef = useRef(0); + /** Monotonic pane generation, so reopened panes never reuse an id. */ + const paneGenerationRef = useRef(0); + /** Paths with a read already in flight, to bound and deduplicate clicks. */ + const pendingPathsRef = useRef>(new Set()); + + const observatory = useMemo(() => { + try { + return ensureEnvironmentApi(environmentId).workspaceObservatory ?? null; + } catch { + return null; + } + }, [environmentId]); + + /** + * Load one directory. Directory responses can resolve out of order, so each + * request takes an identity and only the newest one is allowed to write state. + * Without that, a slow listing for a directory the user already navigated away + * from would replace the newer listing and the breadcrumb would disagree with + * the entries on screen. + */ + const loadDirectory = useCallback( + async (nextDirectory: string) => { + if (!observatory) return; + const session = sessionRef.current; + directoryRequestRef.current += 1; + const request = directoryRequestRef.current; + setLoadingTree(true); + try { + const result = await observatory.tree({ + projectId, + ...(nextDirectory === "" ? {} : { relativePath: nextDirectory }), + }); + if (session !== sessionRef.current || request !== directoryRequestRef.current) return; + setDirectory(result.relativePath); + setEntries(result.entries); + setTreeTruncated(result.truncated); + setTreeRedacted(result.redacted); + setTreeError(null); + } catch (cause) { + if (session !== sessionRef.current || request !== directoryRequestRef.current) return; + setTreeError(errorMessageOf(cause)); + } finally { + if (session === sessionRef.current && request === directoryRequestRef.current) { + setLoadingTree(false); + } + } + }, + [observatory, projectId], + ); + + useEffect(() => { + if (!observatory) return; + void loadDirectory(""); + }, [observatory, loadDirectory]); + + /** + * Open one preview pane. + * + * Pending reads count against the pane ceiling and are deduplicated by path. + * Checking only the rendered panes let a burst of clicks dispatch an unbounded + * number of reads before any of them settled, because state had not caught up + * yet. + */ + const openFilePane = useCallback( + async (relativePath: string) => { + if (!observatory) return; + const pending = pendingPathsRef.current; + if (pending.has(relativePath)) return; + if (panesRef.current.some((pane) => pane.relativePath === relativePath)) return; + if (panesRef.current.length + pending.size >= WORKSPACE_OBSERVATORY_MAX_PANES) { + setPaneError( + `At most ${WORKSPACE_OBSERVATORY_MAX_PANES} panes can be open. Close one first.`, + ); + return; + } + const session = sessionRef.current; + pending.add(relativePath); + try { + const file = await observatory.readFile({ projectId, relativePath }); + if (session !== sessionRef.current) return; + setPaneError(null); + paneGenerationRef.current += 1; + const paneId = `pane:${paneGenerationRef.current}:${file.relativePath}`; + setPanes((current) => { + if (current.length >= WORKSPACE_OBSERVATORY_MAX_PANES) return current; + if (current.some((pane) => pane.relativePath === file.relativePath)) return current; + const next = [ + ...current, + { + id: paneId, + relativePath: file.relativePath, + content: file.content, + truncated: file.truncated, + redacted: file.redacted, + refreshedAt: new Date().toISOString(), + } satisfies FilePane, + ]; + panesRef.current = next; + return next; + }); + } catch (cause) { + if (session !== sessionRef.current) return; + setPaneError(errorMessageOf(cause)); + } finally { + pending.delete(relativePath); + } + }, + [observatory, projectId], + ); + + const closePane = useCallback((paneId: string) => { + setPanes((current) => { + const next = current.filter((pane) => pane.id !== paneId); + panesRef.current = next; + return next; + }); + }, []); + + /** + * Bounded refresh. Opt-in, one timer, one read at a time, and fully torn down + * when the dialog closes or the project changes. + * + * Reads are issued one after another rather than as a burst, so a full set of + * panes cannot exceed the server's own concurrency budget and refuse itself. + * A read that fails marks its pane stale instead of leaving the previous + * values on screen looking freshly fetched. + */ + useEffect(() => { + if (paused || !observatory) return; + const session = sessionRef.current; + let active = true; + let timer: ReturnType | undefined; + const intervalMs = + Math.min( + WORKSPACE_OBSERVATORY_MAX_REFRESH_SECONDS, + Math.max(WORKSPACE_OBSERVATORY_MIN_REFRESH_SECONDS, refreshSeconds), + ) * 1_000; + + const schedule = () => { + if (active) timer = setTimeout(() => void refresh(), intervalMs); + }; + + const refresh = async () => { + if (!active || session !== sessionRef.current) return; + if (typeof document !== "undefined" && document.visibilityState !== "visible") { + schedule(); + return; + } + const results: { + paneId: string; + expectedPath: string; + content?: string; + truncated?: boolean; + redacted?: boolean; + failure?: string; + }[] = []; + for (const pane of panesRef.current) { + if (!active || session !== sessionRef.current) return; + try { + const file = await observatory.readFile({ + projectId, + relativePath: pane.relativePath, + }); + results.push({ + paneId: pane.id, + expectedPath: pane.relativePath, + content: file.content, + truncated: file.truncated, + redacted: file.redacted, + }); + } catch (cause) { + results.push({ + paneId: pane.id, + expectedPath: pane.relativePath, + failure: errorMessageOf(cause), + }); + } + } + if (!active || session !== sessionRef.current) return; + const refreshedAt = new Date().toISOString(); + setPanes((current) => { + const next = current.map((pane) => { + // Pane ids are unique per open, so a result can only ever apply to the + // exact pane it was requested for. + const result = results.find((candidate) => candidate.paneId === pane.id); + if (!result || pane.relativePath !== result.expectedPath) return pane; + const { lineDiff: _previousDiff, staleReason: _previousStale, ...base } = pane; + if (result.failure !== undefined) { + return { ...base, staleReason: result.failure } satisfies FilePane; + } + const lineDiff = diffFileLines(pane.content, result.content ?? ""); + return { + ...base, + content: result.content ?? "", + truncated: result.truncated ?? false, + redacted: result.redacted ?? false, + ...(lineDiff.changed ? { lineDiff } : {}), + refreshedAt, + } satisfies FilePane; + }); + panesRef.current = next; + return next; + }); + schedule(); + }; + + schedule(); + return () => { + active = false; + if (timer) clearTimeout(timer); + }; + }, [paused, observatory, projectId, refreshSeconds]); + + const breadcrumbs = useMemo(() => { + const segments = directory.split("/").filter(Boolean); + return segments.map((segment, index) => ({ + label: segment, + path: segments.slice(0, index + 1).join("/"), + })); + }, [directory]); + + return ( + +
+ + {directory === "" ? null : ( + + )} + {treeError ? ( +

+ {treeError} +

+ ) : null} + {loadingTree ?

Loading...

: null} +
    + {entries.map((entry) => ( +
  • + +
  • + ))} +
+ {treeTruncated ? ( +

+ Listing truncated at the entry limit. +

+ ) : null} + {treeRedacted ? ( +

+ Some entries were withheld as hidden, generated, or sensitive. +

+ ) : null} +
+ +
+
+ + {panes.length}/{WORKSPACE_OBSERVATORY_MAX_PANES} panes + + + +
+ {paneError ? ( +

+ {paneError} +

+ ) : null} +
1 ? "xl:grid-cols-2" : "")} + data-testid="observatory-panes" + > + {panes.map((pane) => ( +
+
+ {pane.relativePath} + +
+ {pane.staleReason ? ( +

+ Refresh failed, so this preview is stale: {pane.staleReason} +

+ ) : null} + {pane.redacted ? ( +

Parts of this preview were masked.

+ ) : null} + {pane.truncated ? ( +

+ Preview truncated at the size limit. +

+ ) : null} + {pane.lineDiff?.changed ? : null} +
+                {pane.content}
+              
+
+ ))} +
+
+
+ ); +} + +/** Longest single changed line rendered before it is clipped for display. */ +const MAX_DIFF_LINE_CHARACTERS = 200; + +function clipDiffLine(value: string): string { + return value.length <= MAX_DIFF_LINE_CHARACTERS + ? value + : `${value.slice(0, MAX_DIFF_LINE_CHARACTERS)}...`; +} + +/** + * Bounded before/after detail for one pane's latest snapshot comparison. + * + * The diff already computes concrete before and after text for every changed + * line, and showing only a count made the observatory hard to use: a reader + * could see that something moved but not what. The rendered slice is bounded + * twice over, by the number of change entries and by the length of each line, so + * a large edit cannot turn one pane into an unbounded render. + * + * The wording deliberately describes the file, not a cause. The observatory + * cannot know what wrote the file, and it must not imply that an agent did. + */ +function ObservatoryDiffDetails({ pane }: { readonly pane: FilePane }) { + const diff = pane.lineDiff; + if (!diff?.changed) return null; + const visible = diff.changes.slice(0, WORKSPACE_OBSERVATORY_VISIBLE_DIFF_LINES); + const hidden = diff.changes.length - visible.length; + + return ( +
+

+ {diff.changes.length} line + {diff.changes.length === 1 ? "" : "s"} changed since the previous snapshot + {diff.truncated ? " (diff truncated)" : ""}. Cause is not attributed. +

+
    + {visible.map((change) => ( +
  • + {change.kind === "added" ? ( + + {`+ ${change.line}: ${clipDiffLine(change.after)}`} + + ) : null} + {change.kind === "removed" ? ( + + {`- ${change.line}: ${clipDiffLine(change.before)}`} + + ) : null} + {change.kind === "changed" ? ( + <> + + {`- ${change.line}: ${clipDiffLine(change.before)}`} + + + {`+ ${change.line}: ${clipDiffLine(change.after)}`} + + + ) : null} +
  • + ))} +
+ {hidden > 0 ? ( +

+ {hidden} more changed line{hidden === 1 ? "" : "s"} not shown. +

+ ) : null} +
+ ); +} diff --git a/apps/web/src/environmentApi.ts b/apps/web/src/environmentApi.ts index 851c9d414..4cf7849e2 100644 --- a/apps/web/src/environmentApi.ts +++ b/apps/web/src/environmentApi.ts @@ -18,6 +18,10 @@ export function createEnvironmentApi(rpcClient: WsRpcClient): EnvironmentApi { filesystem: { browse: rpcClient.filesystem.browse, }, + workspaceObservatory: { + tree: rpcClient.workspaceObservatory.tree, + readFile: rpcClient.workspaceObservatory.readFile, + }, sourceControl: { lookupRepository: rpcClient.sourceControl.lookupRepository, cloneRepository: rpcClient.sourceControl.cloneRepository, diff --git a/apps/web/src/rpc/wsRpcClient.ts b/apps/web/src/rpc/wsRpcClient.ts index c2e8885ce..1716fc164 100644 --- a/apps/web/src/rpc/wsRpcClient.ts +++ b/apps/web/src/rpc/wsRpcClient.ts @@ -63,6 +63,10 @@ export interface WsRpcClient { readonly filesystem: { readonly browse: RpcUnaryMethod; }; + readonly workspaceObservatory: { + readonly tree: RpcUnaryMethod; + readonly readFile: RpcUnaryMethod; + }; readonly sourceControl: { readonly lookupRepository: RpcUnaryMethod; readonly cloneRepository: RpcUnaryMethod; @@ -199,6 +203,12 @@ export function createWsRpcClient(transport: WsTransport): WsRpcClient { filesystem: { browse: (input) => transport.request((client) => client[WS_METHODS.filesystemBrowse](input)), }, + workspaceObservatory: { + tree: (input) => + transport.request((client) => client[WS_METHODS.workspaceObservatoryTree](input)), + readFile: (input) => + transport.request((client) => client[WS_METHODS.workspaceObservatoryReadFile](input)), + }, sourceControl: { lookupRepository: (input) => transport.request((client) => client[WS_METHODS.sourceControlLookupRepository](input)), diff --git a/apps/web/src/workspaceObservatoryDiff.test.ts b/apps/web/src/workspaceObservatoryDiff.test.ts new file mode 100644 index 000000000..908740eb9 --- /dev/null +++ b/apps/web/src/workspaceObservatoryDiff.test.ts @@ -0,0 +1,36 @@ +import { describe, expect, it } from "vitest"; + +import { diffFileLines, WORKSPACE_OBSERVATORY_DIFF_LIMIT } from "./workspaceObservatoryDiff"; + +describe("diffFileLines", () => { + it("reports no change for identical snapshots", () => { + const diff = diffFileLines("a\nb\n", "a\nb\n"); + expect(diff).toEqual({ changed: false, changes: [], truncated: false }); + }); + + it("reports only the edited line for a local change", () => { + const diff = diffFileLines("a\nb\nc\n", "a\nB\nc\n"); + expect(diff.changed).toBe(true); + expect(diff.truncated).toBe(false); + expect(diff.changes).toEqual([{ kind: "changed", line: 2, before: "b", after: "B" }]); + }); + + it("reports an insertion without rewriting the trailing lines", () => { + const diff = diffFileLines("a\nb\nc\n", "a\nnew\nb\nc\n"); + expect(diff.changes).toEqual([{ kind: "added", line: 2, after: "new" }]); + }); + + it("reports a deletion", () => { + const diff = diffFileLines("a\nb\nc\n", "a\nc\n"); + expect(diff.changes).toEqual([{ kind: "removed", line: 2, before: "b" }]); + }); + + it("bounds the change list and flags truncation", () => { + const before = Array.from({ length: 600 }, (_unused, index) => `line ${index}`).join("\n"); + const after = Array.from({ length: 600 }, (_unused, index) => `LINE ${index}`).join("\n"); + const diff = diffFileLines(before, after); + expect(diff.changed).toBe(true); + expect(diff.truncated).toBe(true); + expect(diff.changes).toHaveLength(WORKSPACE_OBSERVATORY_DIFF_LIMIT); + }); +}); diff --git a/apps/web/src/workspaceObservatoryDiff.ts b/apps/web/src/workspaceObservatoryDiff.ts new file mode 100644 index 000000000..57539db44 --- /dev/null +++ b/apps/web/src/workspaceObservatoryDiff.ts @@ -0,0 +1,114 @@ +/** + * Bounded snapshot diffing for the read-only workspace observatory. + * + * The observatory only ever holds two snapshots of a file: the one currently + * shown in a pane and the one just fetched. These helpers summarise what + * changed between them. They describe a change in the file, never who or what + * caused it. + * + * @module workspaceObservatoryDiff + */ + +/** Maximum change entries retained for one file diff. */ +export const WORKSPACE_OBSERVATORY_DIFF_LIMIT = 200; + +export type FileLineChange = + | { readonly kind: "added"; readonly line: number; readonly after: string } + | { readonly kind: "removed"; readonly line: number; readonly before: string } + | { + readonly kind: "changed"; + readonly line: number; + readonly before: string; + readonly after: string; + }; + +export interface FileLineDiff { + readonly changed: boolean; + readonly changes: readonly FileLineChange[]; + readonly truncated: boolean; +} + +function pushBounded(target: FileLineChange[], value: FileLineChange): boolean { + if (target.length >= WORKSPACE_OBSERVATORY_DIFF_LIMIT) return false; + target.push(value); + return true; +} + +/** + * Compute a bounded, latest-snapshot-only line summary. Common leading and + * trailing lines are removed first so a local insertion does not make the + * remainder of a file look rewritten. + */ +export function diffFileLines(before: string, after: string): FileLineDiff { + if (before === after) return { changed: false, changes: [], truncated: false }; + const previous = before.split("\n"); + const current = after.split("\n"); + + let prefix = 0; + while ( + prefix < previous.length && + prefix < current.length && + previous[prefix] === current[prefix] + ) { + prefix += 1; + } + let suffix = 0; + while ( + suffix < previous.length - prefix && + suffix < current.length - prefix && + previous[previous.length - 1 - suffix] === current[current.length - 1 - suffix] + ) { + suffix += 1; + } + + const previousMiddle = previous.slice(prefix, previous.length - suffix); + const currentMiddle = current.slice(prefix, current.length - suffix); + const changes: FileLineChange[] = []; + let truncated = false; + + const shared = Math.min(previousMiddle.length, currentMiddle.length); + for (let index = 0; index < shared; index += 1) { + if (previousMiddle[index] === currentMiddle[index]) continue; + if ( + !pushBounded(changes, { + kind: "changed", + line: prefix + index + 1, + before: previousMiddle[index]!, + after: currentMiddle[index]!, + }) + ) { + truncated = true; + break; + } + } + if (!truncated) { + for (let index = shared; index < previousMiddle.length; index += 1) { + if ( + !pushBounded(changes, { + kind: "removed", + line: prefix + index + 1, + before: previousMiddle[index]!, + }) + ) { + truncated = true; + break; + } + } + } + if (!truncated) { + for (let index = shared; index < currentMiddle.length; index += 1) { + if ( + !pushBounded(changes, { + kind: "added", + line: prefix + index + 1, + after: currentMiddle[index]!, + }) + ) { + truncated = true; + break; + } + } + } + + return { changed: true, changes, truncated }; +} diff --git a/docs/pr-assets/workspace-observatory/after.png b/docs/pr-assets/workspace-observatory/after.png new file mode 100644 index 0000000000000000000000000000000000000000..b51bdd86dde977163b8c5f1280f1bc15ec369d48 GIT binary patch literal 54567 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 MRD6^#Zs7Mn08>m~4W$A_CEHHIj-xT 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
cLE z>J$PHeOe+P->B4T(fF~bn?_bUW);JKe`(2GwDG|8KTG^?jU`Nc3uI)UP0IGOTYJDt z_}d%7ct=xNAO`c<--c9SD9<+1jg(lPIqf~kc{ z+mBEsRja_+J*PC|)d-X9ksw_^j~EWL#FB_Ybd&zeZzADI)C0Wu)IPqUdNVhsG-KjuqYzj0_c1O3TovF@K7wCjD`NtzD-<6YuyU6!?&>Vb>vH z&O$FZO1=0cl^!dKh$r!#iCr{+gKTR-&uoba36>Z=phLsulRS;yc6<11GY1hiYm2%@ zqp%CwR8rB@oqxw>T@|36)~XFEL9Ju*ubaQY@?&)15`uxhZ`3o)C<{^%Y~`FN{iZzL zV=%;x7_8+acnw!Z3_F9p=mY^N{-*2ytF5>OdL%NQDH3`q8CGN8J!&RZ2Y4TR{Bz{m z*_9SWGK492Hg%z z_t1kM()Kw40=qNW60O%?4|ascOnmoAf}dU|eV}Rp8#Bf*Icbz@|0cW-<{d*|FYX@j z*%PfD5E5Jw|LLy4{cTCWUGM4COF5?%JT-N&)x7saz8M$$%11Te{O1~*C2TY&pP4Zn zuwbsV&ong2ZJixCnS{m7FLblek0N$dXi&6;EQ|0qr-*$|41%$tkSO$ZySqW7?cp9E zo^&ul#$QjK^mZo_RpQ8pDogx++IUp+xGsIS;$ZE_iSB-P72qo{At9<@DYdgR-R~l1 zx)X8GTwkFG0&`0E9OFqm8 zGL0c7IGotEB^0G47L)v;5H7tPT&v~qt~0bNf6=;3+nS6CLg2|OBf@K;TR3JR28%BD@ZuNH!8zn())$a$)^0x&c~bWk;2 z3(XrNv+LkiK^`w_c0@O_1wYtHsL7gC)XS#@Z5Rr z=^Vfeo1>U2W)giwRu#XSNC-Gz5Hwcb(`Wg^1@Iabv`!5)cx=E-&WE`Z&J-P{YB8tY zQtB@p={w{xW7jd)AS-+rIUlqy0x)gj-|Wcnl(BI^-)Q=acL5KR(_mKG zga$6ZW%`lksTGxHp7vqr@~}da((B70$>8d0*psb!UeP3ZfooQ5&L51P4_`4M_7vbP4(LYcAcy9q8?yc1M5 z6B&33J<&}zt7mktr7iO^y{Xcna}=7+Z2=~0&h5BBp9VjIyZ(RYlP|DHNxf8ZWf6RV zAcK~4KoM@c6w*^xm1H{j!%S=Pt%mRo~V*k*uOUXh*fO6pK=t)^8If?OV;xj!uP#-g5|_DcwVL5(%4 zO9=J+Ag)*h&-Y?k<~4z>M89lQ^i|b8nw58x60fdqv^>(f?+OD2GFbNNBhxoVzyBB6v?6TUUX3w_QW{wHK zRDtuh;S+_Sqzb;a(ueFT$!JT!nZf&SFzC$gV*`2aPC+6tSsFR>Vhum)g6cPF%Cbr# zGrLjC&vr4`F@RfPoeFv7r`0zhSUGXiwhHzZV7k%QI_3yGy_F4XV=zG-G(z;eLC{+Y>zxIB^UO_lIZ5F7{`%&tAF@GoE@v~di z*VthMtqtngd@{=Ew^~Da)!wGI+O(B1_jFgYlg7*6JT&81G~C(%Tdfqk%1KWj3 zs3LW}7oY>&De8XlO$Ox z{eB&H%-~^^7XWMa)NZ^Es#}~Sz{1W^zBr8pIvoZq6*XotwJ;LW$#oBPiQ(las3z-| z*>QD;^$xl&#Vs^^BD+GMSrh7r7jh36d%PW(s(v-h95M%;KkFn}k+~6r33Ej%uf+pd z&+q0`qNZ=DG=G*0H2mmGJc@K?vm(7~_}bI~>ie-1M*`zI`v!Z-tEQ65rjV~~!$;ah ziyb`(B989?h1WO^N}Q^hr!U+_+Q=ZL-Or2|S4-NigYqZd^V2bi!1RgTRNrj@1qxK{ ziWT~v>L0z>{@-@X>pNKc4k)MbW;dWcO|vV~5#<}Wqv^D6n9NErc-p(%$J7rz)s;Z1 z8u>tfM%8{?Hx~Ge$^ian=^&4@2hck|fFI388;?;9!QD|Nwz8+sNOXd<;HT7tWtWEW zqFiU24Gj}raBuj{f%5rvDD5~i>V!i3n=FX&$rIN#6$m0w2nrk`VVZOgCVEJelRPtz zqI~Glgk|iPQo&xprz;%!_~UPteX;OY_RPHeec*rdgqQQva_y#lsStmjN#aR%Gf5f8 zjS4$3M?BzKv+*(CZM7|R-yZm`UZ-oc^~RWG4)Anro}PWqhRs?>9z%b=&7{Ja?Y|OP zv?h4@aouF&EmT3%$ZJ;Ac|zOlf8->%~k+`(4Ar zEXIBsRpZ6#jU!BD6G0f&sdHx^jKB8!>dOgGuf0hy#4F=67UHvzE_-Br|4tU0vbyky zjGj$djq$!8bgh&_7kEAv@C+;%tz(mke_MCF;9X3cCd_tv*Pvd})sM=A6o`XivHU zts&lR^yf@6wjFpTf_RhONh*pi5~E@nO#78wgsxHPYMmO>1@(At+cGU zB~V$jVdZi6ftjE_R!MTuPbeh!a$=wTLMZvf2x8lGJT(^=UUh#Jq)ezx&S%b0hyzivj_su+JO0J_A~zWD%u{8=qoA5&_W( zJ9sL^1(NW)HMT_(K$XWN&UqPZKdQRe69>P*9O=hvueLN*f2cFKZI4wK;C+^KFz;q8 z7yuO9h|4Lk`tB(I8Lf!uK6pflml(ehX7-66vb`lUITP zXP_0=?)>Q0)A~>T$8NHMFDi8=ablwgImY}j)=sY*{7-d(_c@Q7pbs#ZKjgK<*>vTZ zx%fjhr~ie$Agpik=cta>yEmr?%gU8NAD@FzCfI$B*wv1;_zr>ZF@6Q;K*@{hcG^4* z2yrB1iY@kwDbsPYJ$`;ACa&)sXU_Su!P<3uDIoAF;b}1`=M~<`tvBg z{jUCkGT^-O(Vi5uQ#P-9yoEDx$j!-jCqCg33i)=OWG#O8HB$UKT5}E5bg*?^-m*hM zh8fG7khkVPcLemC3RX#7K1~zMxxQo)KeJB|_knmch(Wv*X2pd#Zt(jXq0N1)k{|y36|M@|1e5*YE#1-SrVq&SD@VgVfIZraP;oS%6 zD>ZdRSu4sr2(am5jlLnWKK#z?ww~|%b^p%~syC405HbNiA`w`2P0#RPdrINnE~Ep* zt})qmM|gZv{t4JJ^#cQm59(->o@)Oze!8;=>K1|VP1{q9Pi|~(DA_eC4K_HTD9p~U zNGjRKF$n()AO2imHzY7mVT!=uSF+eoKb3~X2E$yB+MpI*{ z?Y97MYfanjrV*g&h~s`%%nz1Q(RSJ}JE;o35LG z1@2{vgzwg%8nocK8L>a33p_r%dECQ(D$Ox^_)oNh1%0*64eb6m2WrQZ-0spD(_x#R5P@g^q;JW zT+FXMjYkIVUjkb146s{vGma$gpf|A7Zm{)2g^#J$_f21!MA-{!B^N|*ckuqU$L zfs?GTlbkixx%#)x-knKm&{*uJ)#@?twlm2LFf*}Zk^p(B;>^|ZAS zkQd-KniF_ch@E}&RRLBcvFN&c1brt+WRHt+=?hmG4dj_(T7`YdY2IHu&sTfuD7t?B zhncn3lSP2h*atL^FADQjlx4HywdTO?(JgcIrau@3Hb(36M3d~(3D)%cdz4c9~?x1rL z;#Na@j9``%AS$idps{rnLiA$kq5Din38sRw(`*X(%a<0b$jQk|l=XqEovtB_W{3Bi z=rNxTf`N$8IN+o+CF>$0Y~Z^aRE0RJnEGRjt?f3zU@?FD9X0!HVC;7@rKFHb-tW%c z64jZqWglaF`J|u2cde}T*K;OX*M6@9qNO=7%wMaMv<^VC7TSt91N;G zuSY|`w?lOe$0Yx}(k6}LnWpjmh%MjxGY_tQ@h!9Zt$KChpu(Sp)#CzNkFypHwK%(ClXH5-&+aPx1gv`R~LN{ zJbBa!5QN}-h-egA)d_9rrlPyAOGY=oyR~2X;T{vj&YRqW_5=ByLh9ya~m&K5dS~Hz_4^)r)oyDl-YTIio9x9T0C$A4#_n3aUG# z={W3I<9}$?Fk+P!@E3hVUxTSoUE!Dr5+1j=1PX^cZEuOq?Iy56{5hJA9G&x2q^?Uz;OGQ2~# z^e1kea!o(H&qBS~K8^@FbF&=DN9gid#rofBabpaY$JVO-TsP9Wm-bFHTFOm2be3&L zPuVy=x;H+jj&0cEa24l2g}eVw4OyOs~eZOp%RM+=eCP# z&5M3fBvo9pIrDeQ(bDy5Mq~Oas7Xf4mw2n=M7?&du0B~9*uUPSfK^3|YZ;N<(g|8+ zHPm@_hL2MSq>=|y_=}gm1!B;-;C7XJT5 z2m{s60hc8L`I+flF<8drW=HgdWO(?r7WxDSKluf0@hp=MO?-%BRG_&Dm)rwZgxAy< zLDMGQ!z=0Fm#mE)kB5?#vp5UveO8Fr&nL$av7Ihgy3ME&aU0W^dIt_1-CkZP#76N= zHZuhV+PF6h)-#^u=JYT4+ynV_`Rv1x=Il!eobh27RCSqgj}l5Z20ZR>PkQs`X^<8U4DKs_)E!-B_kcAF*$LJCVL$eIwK?G_L%CU2!*2y z0a>!!SckZ@(?C6W9a5@N_WUYn9FNweE{zhm2A`~{PF-;%x_hzXLa4P%HFD~!8@F@F zBb~?c*rVUfRr_vE{!f=b8smQ{TG;wFjHU++&|LQ9>^=~gQtaf@>P!lqo-7uhC(!YU zDxErQp5>GkbhI~P*Er^?xFRTze_@VxL4AqAXSm~)R6-)8Xt@`J+(t*(Q?{`*Q%B?S zcEw(0Gm&TAxK+!7eRQ_W1Its~^&zBUs45&=-%`CAy$QF#*>}z}o>i{J8%g6-`xQ9- zhp$yo@XL@_*9ZB(q_>775)~5Dy3d{T@2-rc}G_r#*T3FfvbZgBxO{D$k@!@iMikbYc{F*;# z;;+*5tmbN%G9z#J@=~K}J~0fwE~($h$Les7Ya*jt&olW$^TP7<@zqNrt$Pb!i)2F| z7LCLWN*1e=!y8I<;fqj!WsVW=C=)OmqVI3}asd&vGX^ z(NdBmSE)foHgUOm+?ZR;h1RclRm~GW{1|iJAN5P4R{NojAS4y{^8}ovMFKAJ$PRWB zVE0pM-rYG*iK3e$rZ4jC21w}A;?b1!UYK>_?c-53qRMp=k(9@9v}x#ND~(f28ym2> zjv;?W$Y0*Ov7lg#b|0$GeiXZulQ8Tmdul?-b zpsK$wRI8h(p}|16G>X^ShwszHQR&>JG@3r&<$=XxXjM)M9r0P|Cx@{&ST3_Nrp+>S zc+X6d;Vcx_;a)1)%}8SiuguvKD0zPliNDpHQA#>P4sVmBD}IGhGRps))kfYlBfaFh zAHE^aI*N?bP#&*7Xs=R3;_h5ieCsZPa@S{ru9-IG0fGwE0Km5T5wgU~NrX|NV?C0LvS@Y`@nwr{Tm$ky4$C^7(4@IapmZ1}%{& zWrW-i!7>{lq?@Ys<&6gwVmQF zXRbL<WHL>SDpV)MkVc-XIaPkAY&u5|oQ;#5Uzf3vd;!ex z{?Be^{nh2inxHn&7Pb6HD;`}DUyXm~OCOGPUVQDXk(ndT)t{DdVrDAyT}G3goOifW zfz{D|;yJbnduwQjQs=`T^AmxiA#0Vzn&=(}qAo<)9Un?TnmD}IOVR?uvPU{<^p@B? z1%K?xgN!8CW1`k_$(*q9@18EZz$FZmrJK9>0(<(@zk{Uo9NuZm=}?$p4LfnPATQ}F5I<~Np^HLL&wh@cy zQND(lN4;8HDOYY3sjuP=V)?S+Z)=p*COb{?ineB+_3YKb^wA)kp}GvX`ag4#5ba8!j#iiTIY zgApesVTvw5re1vcn}+yx#>Bc--BcM|dT8$^M`e~uRWn3tsQ16))xU_SKwuEK+?6;7 zv%K@Bzm@z0g1E-GvU6$5@{2D%iEsgKPnbo8vgG7)BwD@X^3Lbz;%R2DUr!J8`m!xR z>&p1g?WEpR3ClhSSaZ6(v|tGhDzned4fBrcqz)9!w=)F8Hj61h1`%vtmi}{IJ``gV zKjK*1l7*!nxJQ?=Zak`um?{<+E*vv5;gBYK%ho0Fq|m*gVi{A6EC%CoXPi&6tFJM3 zS7BkQ^}h6(sF)FP_W0Ch)bFM6Qe$E+K~-|vo;>H-NbjU!JOYhuAo_n}5>7BZsc)`JHAW9)n5*oAj6H~Tp~-H;)obtw56%8e zFWig~r}wAQDl5hBgT`DL`sz^Ju(+b#Nt^f=O5k{iT9zOkju}e7{Y+4X-%SG{{*+^@ zayH?o!i5WubG|)39kpU=Pc^jI7vV!b%%cF)dIFzU^VL9FAeNy@&BZ7aP8@en?G*f-bS(*hZPA$ZyQyI z&{+yTPw{f8z)$U+myi6LV**~9^Jq{$*yB*ytlDy#yw1Ir&HeO*_@NUDU5FzBwsL|` zxoM8ElHICkTSr3l3Bn`FLDyMW_yz|dZHoL)Fr2)tmWfEXdT8nB;>Cq%3k)Y{k+tI zWbM~wz&U5o81fKfk{zcQB}{dP55+AQe21w(P5(vt{a3QN@1b&2z`oeuvu8ZbAOp5q z;_kf(zEt8IYzydCz6A%E&q7CAU&6_g0$K(FBm$?c3Pn6^zI4hKqA3`gf#ZyK2Zhb64!NW8|DQm$d!_~QSy#70`O69Sn@^6yw1XZDyy*eK%F~~ca z7e-|)aUG^H;uK^1>?Mi6NDyRi_8L^L^FI9lUBJA*wI?SI;Cy@6=SM$3fcZG~b^IlS z?nJpRg9dkHx4U6D zd2SacDfyj#$@e|A9%?HS-q9%g3udS0RpFYe-%VSo)6F>;Z@(&J`vVrYLhi=$F<F z+B2fi`A_sR&viAbHu>I`9QKb4FnTU|gk3kFe=@84#t~t~Br!`(xMa8{MBY>+lJH_z z@wtGb(Pz7l9U*Ld(Ju{H_)|Q7K~IOwcnB;`d#IN2?erQHHl5aVdaEDUC}TR``2YP< zUgZAsZr*2?mq>Sz#;NM_towE206j`U@qgSNHYy}P{ZZ%JU@Luc(kXlS9)~?@XNfC$ zo$f*ZpItI-mM|Ia$tG%}xMmred4b9JQ@k20p%RZD!GNn_Xp{|` z)x`hmW+CKu<|2*1e1MI%`~2PXhuGSb|EEm+E9~NZp`N}EK&$GQuh01~@zCi+^DqJh zN^lxqY#v0nKAEd!%rhyH96H=aX?o#3%{D`<`cKu+6Xnj1MEry|M8y|t868es$-TKQ2VIL_L3D8b zE-f`@!A}nDg)d!~8=)JRg*>ciLBFDk=8t5_x*|D{A9a6qCGV>DW81K!K0cZ{d??+~ zB`2x$__dz=hQ`y(Q1KWgqxpSb!T+coIB4`VZ~i4fv(n5AaJk*D&wCL=7L~qY{pmBQ+-EZ~%1a`N&M`kre;cakx9TBR?kN-JUc8e(;-*bL?)B9PX6)H~BT%B~vgE>n z>*O2aIYG}AJTK?h41kOFB*I~?#I5yNp!^}>jzLxJA+|&|U)-BZ6GVFIz8Km0Z zf(3Tu@!pE4KkA6aB&b`H@UP3&%8h)z6tPZ}npLRnaqjpk60+kN$zs6(udT_el_K0N z8W42^!>In3Vxe&g()i1_?!NrPLMpM5-F$n#Uc5TZ-9dy0>uTL?8_KTF{+v~hqkj(N zN-x$A5e#FK>mES25U!r|EYx<)(BE41BXTuwZiHc}a>Ca6{GPmhB3bKt9`*X6dv5as z#Y2tOenZKV^WD!_QM_TqEEV^#R5a$4tx-b?Zx0AZkP0nU+{TDO^B0^~HPK6rmp+n&wYVLXINU46tN*?3_Y z{xTO+(8nltkMIxGmc*V^SPb*h)-zx@0c`9`|mpG zpZn7Q-72&_^0=wKauD%A;|9{HR+a5kY_|ib`+OMsGZBGheW`XcyH~y2x>QBjTr}rq zP_y&-opxhR{g{K~S0i0QUWa18`guVGR;{7+4wDx=d0g%e&=3r!NLcT1aY+IxnOfms zp61s9!umzQ%$zI#&u{2=iKFast_uFVwJM?dBgOK(U98^Gxx3PydcZVLgg3N@r{~>t z#-DBm`7~#Yw?mKMH1hrTbNrLHUfx^G3W}Qq>UQ5hvTu|kC&(tlj$hbRJi}EKU6oV{ zyHSzmlQWpRB*$(crw!7#>E^7islzvWQQxwZ%5^d{Di8#*H)?MaesRC;xxW9r4gWla zzbfT>t-DX!>_j+nAlKE-kSNp8D0Y2XIexy|_-r-5?(sJHrDMt8<`orl1g&O3=3DZRfey8uP zk`;V)?Did;uzQAc4LZN0-R=hR1W0vF3`!G+ee>*?hSDsJgXrOl zsA&|SuLfOw9Cqmkf1jB3rOU_(Ma2_!9L5nrFAHN9)`=XHt9LGJta@pYcrogHr+ zq8zwo9o~lNJk=QC_+Va7n&yOU9-(c;;J7_>v$#%QviDdGZH(i2pEf}U36lw)Du1Mx z2I+!bxedA_V~}_!HVuhWNoA$xTbF5B+7jn?bk4E~s~2tp48(k$kh=4GxQE_y#q@SLDFhWX_Qi@@ClKkY0=TQoBHyZj}xJher ziY%HTR;k(SVK{QkwFiB2R7?luIdxCgv>JBnQZgUQvPO-aob%e!BA2>Aj*jj|w(tB|kHcWZ0^C^hLG_ABrQWFv8M%$!Si>aQ0gUhB^9NC^VrI{gv!_ z*f_%#H6w=PF^_EsSZ-El()dsD!v(%f1sI=hof#X!clminOlO+H(D_@Lgb%+!8Q$fp z|Fet#Y^IzDFp1`>qW%f#UJ=Cy!PZTvgYLPhjk#)^zJC#GA>r2*lk7LhBG`c7NPQ8p2SK*xvrZ74?faW&v?3_MG^~sp>M<4GS+5R{_>Tn z;zN^VMcf}W_1WlinaSjSBM-dz6ht#VXCFW5QvW>1m!<)}CK_jx)jCS%TUR%kZj%|s z5A-D=n&SvFbbM+MyzvLuh8f3O_{>VJcAKVHtR|{~+MKod zA-XElkl4qF&`dEkqRAo=)@Pr@>W!Z5X{x{#u+D40r(@SY2(}g4jmLhL^KOmo#hlSk z8zp%U8R`X`l-ms!u*WwLeQ6O6pGNu}xbdw}O!E~k}Mg{G2@R>@_udb6b zOBCUfq(rW+WJ91-l2Gn?seY&IiCD+v5)SJ%2jwl?zcUqJF_K+ z_g!sDX=QAxV|}LXkpgXwxjnPFtj}^2|wZ`AKJ5vM672nLO)M8uia%%F$JGJ z=Bi<|d_*hZ_@inn{f}@?xn8eMk;&B$FPUBIe7#3oW$%A@?4s$|1%=MVq_4Rf1#M$Z z@_h|oj}2QK@E)mKa#MHy^^ z8AN(Ue>0o3e$X>HB-p_4bOK#etUOetMQ<2A*tR~Z0~xX0WBGbv(4ZZ2LuaVBfc30$ zmnX-{oNUVGlRiT$Crq|X<~^2zv*P2|%5`jEFT*h}pY}#fmTSq{;E6tf!3Qq?o1AN9a5jC@65w0iv$BRL&o=zXLjm@km| z6D)Fqom2KOJ~%8dlO$={v|thD`Dc;rm@eL78UCmPnK?%GLhHf9*#9k-{yv+)>e>o- z1F1ZILP&N)M?IIpoeeC0{dLLU^fM-D`cI`XyC%n#@k!H`AHL?>o5u#TNtAnum(Iz& z!7uL(DOA`z8tWXO$1ijw(^%5GqFdMIdHUt6r~-mERD&UPVa6<4%ftzfM~V4c_4B@; z&3Z16ADqQMiy5O|jVKOfCM5oP!HmYai0MtsUx6OjN_Q#7HzPyl%6vRlqdfYw?CFp? zQw~ALrsU#x(r47-uT4f>DAIB9a2UwP@7e|eM; z{C(5ZWh#pY}bykf&srVdsQjnP^gyN0H}tFC!RfjfqPpJqVsM&-^Y6 zBr|O%@&2tzy5x$G%&WI<_IUXV`!T}FhbGR0mBKZnZ*JP9o7HU0sFAm!1^T9P3m4wk zR8e~G5jR5J>vH4er=cbG&Eg&QC@~&=x5B5MpRrLLA-hAXGRO4$Yp-x#aR$lYJ>45G z$rX5r*#mu~q=t=MFwftXR}sByec$%{t3WUw`sV{Ui~FyJfDKi^-d^%pwK7$QKYb^x z>dOX$%REL&r)b72(S`BgqW7myQDP*Dke;C$v{=z zXs5!TP&97+W|28IL{~NZAhu{=K#?s>uD^X%tyM(YJ|(JBw)!&`bI{F~MEFq`^`5_} zIUSxkO&_%^zAIqWh#u6JR3Ua^MW%NCz->q!prlR`|HcBO)Uv*lx0q_zrr?Hw%ef?h7Scf3O~>|g zEpK^qO}d6$n~nQP3_0`OW6UnZBcHyf!srI9`O)+3U9B?oR%_7U?Q^W*80)p+#TWlL z-Tc*rK~=x~8%?6EyG`n_A~QhO?Oi+g;AauKDyb-_pD$%(i|o~hjRkQ&b0I)edbNOG zQFrh@^I=q|L4&F64w*X_@N;PFJefqPaY>GnSD! z6Y+Qp>SOoTf}VHGuN~*-o+wW%9@5V@jl$N49)*+U@59y$>FV7V5fhgQ#5u9#_n1`? zJq(8_L(?|xG2SaHLEX9`;vC0vG;#5VzNA;sRj-9Mv3@AR5yjmcm{sY=f7oiIc6NOv zgu>&gSaF&69~7hn_L)%#djNLo0J?cIW9QX}8Wi+Zy$a2cBgxryPXMegA8Y|u0|1%& z=8ZqNL~9bk3f!k@z;=5Rl=?TZ9FW`w&t*kA8h}1HqD7lEP>f_pViR$6zsYh=g|`e| z9?jQE`$&G$IcXo~Rc5NWEUggzK+cd`D>K?X#lAP zmwi4yd$x|pxu>RiIJS`LwwOncP3DR?%3OlBamzMDvnazM?nn>yWH6@*3EjC}9J(xX z0?xS6i?Fs@mtiLi46DU3{@2l?D7KCfqx6Y(RsIQ-2>I>bta$Wv6#U z-dQ~m4_%X|y_j~bfhRvcdx{cD4DF1!drIm`_hx1xMm>%EEubc(0*zQcU|mKXTs&72 z(ofcd-hOUEO+SaUYgCNeLI&NdXNPS~=6V;Fu=sgQcS%g7Dg5c1Kp|w4s*jaF(3Zxx ze~L*|i)t^xUp{5w7TJi-s;K|aZlWt(-T4AOFz}=nF)guDYL-`DFXxHX6TQdC<3=k_ zIhV--kA(*q&9teUXew|dI~kM?2dNSC1>6OfeYV0mPgzaqBYwI3g68e-sH$%Pp>*_U z#oFH^k{rL)GO{afl0^yQO2w%q=e{n;zqUWc%iO+I1zOI{nzj-VXZ)}SDC*{$cyMk9 z;lSE$$%wdR%Vwz6N*gGSf8}_29sJ1E)4W;#F>rIHnh9Ez3&z`7i9XD1z`JrlY=-&D zEkSMtoWPmp;as2*Ye+`vytp3#l^aCqNV6pt7 zeQMS#hKDzWbD7qf*b8gt3slwx5oT#FT^)~n6USO!uPB=k@Cy&cvL7B+7)3ug*Kolm zauQ7KR{0ew)t&wERrqEl11Szf{OjaM)Fd{;p#^H&TaNTq>UiPO!*k7(1(IJibI!k* z7TiGA{Pj}gM2l;WY*W;j_>u)Qf_f;`dE_p(SZrg?hDdZ2yl$JOwrL?%!#LT~wYCx# zOX(_pNj_nV7#~7)Jxm70e>=oIV?m$TM2;|*8vlrhT1CISdB=gJgpt%BV~OXPOY`!& z$zz~bcIhzY!^EFLk8gr&yeliOP<2w`>EIGlCLO%G8hThN6o9Ot3{~BA|-5 zH+?|-E$Oy=Kh`Z}41yXUz8&-(289#r?LHg;AcH{Y86e&d0Q#shxPyl8EE0Nj3jR+o z^;g#c`VDR_pB=gD8Cid??4*sQ)Wb}dS@^=9k2jzPMm&YDrf$Mtn@D1t&^7UEwFEIy zGRu854^&;KUd<=4lo~?q^_y9L1yU!M6J$Uv&CT!b6(x4c^wu6HDKnOVFZ#+?+E4-e z1%q;fgZtWo;>N-7xm=(C#+=5rr!otgEh|+Dg*AExTSJZfA2>k$UjNFNsaUD8_Pl{T z=C(mt8Z_UQ%&L@GAGrlYr`2d1+*RSV`P|j1YtI0CCE8kH62-MR!fE zgBV<*swY+ha3&oCSX*0o6RP?w-xwj(df1_}O&6zqn0L6J#68#S?rCm5>NyziH@WsM zX7{jZD?xc*+flo$X}9{Wy1Lra)05C+%k*A|0|#P%qe>o^l)nYsWE19wjO zP88~_KXti#63;to=qLS>_7k$sreM_k$W2jszy2sg=_ZJ!G#%0+Hr%=QE8*Rb!~J}j zc&;0SZMD2k3QQ%w+;G0d?+xxjcrbYy;=oV`G<^T1%X}-1EN*pY>lsw|x=_zie?gV5 z4X^dBi$$p8JhLf010#QMcc(5koMlpJPibA5NEu{KSY6wQr_?6uFbekB$=_1;W|lbx z`&{6+ewjz@4qR>z3RYkqu7Hr{ljaNH>TxgF%E4uj_R+F;$2Arzf;oaYK2t~p(JuOp zBSlEx&FIUW0;AF0eU?bk`zYfwDT=40Bp{$Q<9iTr(F^1c!jsLCQ@MrcAl%0wPkTZm zzSI+->h1F7JNFHs`tEk`LNBZwg1_L5QK1K$vTgE9DPJikP~#G9*P8)K51>Qe!--j4 zu{`E$vSzp)Qg2_qY(QwT2btNED<4pHXwvo&@tk~Sz zv|JqJhac`6w))*Y!P$N6EeO5#YP5|IeQk8_aQkzX)1kuasTc5EOYf2@Sv}+oD)){b zRbZRDD&P&i)f~L6MFSE~UvLtSeXU_crG(JPQi<7(E4WnW2pttbH@qHu0hj z`w&dFfFtN3)2dWfGkx{ZZtd1a78mArTQ_GbPO&$k+zky4D{n`iX;dCljG`Mgb zh?Ce!pSCq+uwHVz5a-;{np}`Cu6_1PiQ$+BtWw<`116>#q~Dg( zmH=SvuncAh0$^%b`+J)L_Du6BY&9L_Tpwmq{vCUe^9%ASx<)?gb;G%HJi(dey+~=_n6NptJ65I%1D1qfr^u}PU&J};*Vm@qx-0m) z((?Ns(|CFI3K#;n4SAMzbGriqwl!dFmXo9SE5;nJw}w?`wL}nmhRg2zZAmQv$#(p# z12DIEHOm}#xqOP$fT57eqrUuySt{GR)sIiNv*v4$4hs$@vyxU&3Mc@DGAm|sHF>GE zY0csa^)uRU^99xteQz@FZTm>Qx>9aud?zEbnzrmln_O2UUY|v4e5?3$T;)DC$kHJJ zKI1HCxtp;lXLeI`+yRg>_RAi_Wf0iC`~b@AOK;QREHv8hV&+}y=*npWsKNZq84QIx z?0lPSgl)jim-HkMm!r#H221Rh5!+`D1*fyRX;|`CX5ag=oG(LxF1tgtz^lF1Ni^Eq z@+v zOJ2(oxrM17^cTmwv8}ry( z*9)1IT}X169ff-OeD~Wy`8Im&AEY>_;HENIv#Huj+@6Jp7xnZU0h>teMq(X-m{>zE zOXTzpgx1Gq@37a5*VBy<6`XccaO4L^-9hRh5W}{b8aKZzR99Xcz}U@RkmY$Z@@rg{ zwDn};Wz^B#@raCl(_{t&p%p7ZcisJ5&b`2+={x~LG>IiF)*ja6g32@~9rz6mea|kT zJevZ^x_`(sy{dkv@r!sg>ENUFnLMIT$9B&RpRIV?fp>2Dn14f#99EE7ZLVjLhIUWT z7(X88@etdLq&K*1{1z&RXC_newOLGeU8g+aFchshi>Jh^XTfnF0c_7i!A&#wR$PBT zxh0lu4bG;Xmd$rZon4XVs}v0SE_o5#H`ZU>v7k=ddn19QZf@?Gt!=)$3(YwC_WZ}( zR8Wuob?_3*^VrA|F>MODf;|CXlb=crv9)Kmt}pL8DHnxQRO!b0wV4&guH287fPO`d zu0_$sio{`e1HVic1z>uIdl_2g1HNH_FhjVYAIc7vzMr4F_H(z?yYIn+4>KJ4uM-5- z!hK*3$p@`>NFin!Y7vBfsV++in~<_Zb&!MOld#O@QzP$Zp&5q`%PVcyt5c|92PIQq z%h<~{AGe#b$VJdRa^_O-B;;eD0wZt|sg}A$C^E$yl|80-VrtkzY)E^JGkAsCAhgc? zL)tT@1U>9-LlbFx6TE(e)q79oQ=OkZd#>NHndc<*!P*^39$z%aRud}%bUkMTE=l9T z#)Kn6kCVD?Av7hvWox2~7Ch0nY1;4i%Ux@;1X)PLY&xKp-Y7`Ln`z3_99#o6P4}+v zqt#tPVpQzcaE_q>Fa>?c9< zHh+LbbztI6jfh;)$>fz=_oGkX%eAR&ox7QYi|Zog=)~=%$6+j@cz$hP%=RvdcE?dxKi|^;E#9FJcH`4hW*$koWwf%&?>`Li>5Ps2fM zSPI3!Q7)Q)xC`QG#IAZQRVvhxo6|=J4&_UFP@lnx`Npm4>j`#H(@nVni_n=}W@@>k z;rZtDuS_ogwwBA&=;-D_Za;_Dmf+72=uLQT*2Dy!A!_2(r7dN1y{ah2X^`P|54fFz zk5`n4Z@o~~p41jVo?1%0to`!Y!5z#uHjJ>kfY-6FteAPGrhfi%db(vTjM|2Zx^L|( z4NeYnbJp0}qOQE%Nv~EsERbu>a^Zdw8E1h)5S0vrWnW?c+oVYmJa_QP&~87jsxot` z3u_}{!@6IE6~lyDn($P^P6@cp)tt~0x#ZG&&jXwjL-a0(Z-WiL zt*U)&K3&&1?{{v(YfG2#{(|UuIL@tW_bcy@$*tkd2yD9mUT%nLTS%x#f36D^TV56S zx>-ojBP~i#mk^V#_1x-NJSv~?2BkNFFZA?gRiW%G6%@t}`VueMxlh`m=nxCsY;9c* zCBgU#31yJ}{1W))QsBBS?Ix`R5tHuyh7ni=-%V7Dd5fF8<4|SgOg=L+bU75w|Kw>- zXzlyjI$|gx+L8vY9DNB}j@N`0fJNrr_%NX!_ajoUvf0zyRaGEK-0z~19b&-X)g)^| za16SuX_SsWHkr9Nq8W6EPrzkxtrtTcPAclUtzGPHA8%_HJi-`61!hh1fqpTv*9usR zPX8$Hg)Bb;5?#vVi&o%4v+~1vWogDGO3V?RpB3=bIY(^5oJiZPT22r|VX9@8=LOc5oXHytL#~1SSVi z_l}0Yyf|^>|BuH9#P; z2m}O5-w!?$zNq0bZU}$C zd&Zfl(ERLmYZK_z@`|sQ^W(L*zU$DCR`ilo#KdeSYG6kTYEU7aRw_0!9gKwec5r?3%nVlO#2!?lOyiaS zuT5K4l`m#uv0-wNIep7dRuF$-7qRe;<&{X0^P#7kNUu!DAanWye5j-spJVc5KPs{P;* z^j_S7WQlS+a5u7(B*hBnXf4q2lczn!b(r+C5O+T*%E_{;{Oal3KQ)6F3*$J~$iOU4 z#k+asq({DPe_)njrmdnJhXVsO&&K}X1yf1x zvz}?!yw_57Zq||T3`kdj_M%x_(F3Q$sqKZ7vss~X6>J{1l(GjtCn_&NcT4*Yb`x>j z8-sdCZq6HHQq*)ozG|#v^pRlr5${RGi|Tckyx0oA0ohV5k?9pfU)>R^JW9SStHu=s53kgC=gx{_Jr#xvIN_am|9)lD@)WWDs|FWH11b~j}m#X3p&IC?c z4e#ED<}vxKR9f!8L0zbcF8T;lj4=N!8g@bJFwA>|T6-W|^oN3 zx5cD`kK8@-dLM0+Re(PuduH<}wPN2r;QFW-&J)_3R^kJ{fP9pA*IP_+C7y1HOO%0n zPt1WkbI$GNbrRO%0W@<1$uS^Ey>59c>TXwIm8w{@^bJpI(~6kFjzJdu8@EOS{^T;} z^xHsfug~7)P5|8i|7-Pmb;et{Q*Dl%=CaZIKscLJ+_3cdBjyuTDJP=Oh zxpz8X4fERAqjWLf&~V@VJ1K9`Cj_>=`IHP&xPW1S@r{m@disO80BKh+Vzmp z`ruMa!JtKRo~$Y1S2$Jv0ds`!zt^nz9Tlwj_}yIBxP0->+8rWwh*;va8z8Js9xv2R zt$qI|;gHhH`jDAF2m@7+mQc(4@@6YE%fnm-P9^fi^+Ld|)#>o&i}}VMYF!ln3#rkL zbt#)xdeiV7a5P5bMaF)C`5oU4?25+fGp(}Or1;)hpJ7{r7or*Apq!ASXtxKPXnkR4 zlFqP=6$|Il#(T@E@uKW<*u1WaVT`YnSSrGtB?F9T0Xr!_g=p5AS6nLq{@nnq@1>mlwpY zry7rj+vqaDireyFtsfl_+}M#NV2M02FE=OB`FFp&Gx+&MOMwWTJUyMLWF9H8$q zS+P&BURw<81Zvx%b>5{&5EW>y5_s93hyxY}gh$Un5+dE8`lIAC=r`b^K#UK-XiEg_ zHZ(T6XFruN)mlfegkyG7k*-)KDbkc63Rf1_^$bB>Ga3 zw`uDueOQ4;qOc?!3BK0)ON!W0?jPnAK-2;DKRi4uM19k5P?H>yKC$Fj`r|(>};+#VQDNN(6arOX&-8O z5kgA{Ex7xk=G>&?t{O8ogYcm%wRTCl_*_TX^N9gp{^%E8lDE>-ph54*-ay|<+hSti z7acS9sV3f4k+r9-> zgt*na$J)bNef!?_O=lUDQ{8C0?5sUIgdY06y(;E$)0e)~2KHF4;9VOnKz%&30e%ki zzzn6-O`xF?a6ouPslk+Sy>#8>+jf&%W|>bp*V1y5vK4w$a)Sqv@b)rq>JZJSt3C~< z-Rm?uq4Gu?-kDC?eMAXM&*50ssvsPo!1Z>?>BVdt&$7ny(JE1^AN+UpVMeo0L_JJ) zitN=wi+JlEj8YZq_}QW94R|MX1#F#HMv%eepsPu$=Il==DXW#0BYHaJvWAL1g`RX? zcZs*13~q-b|GE&&Ym>PHpa zBEgDKlG{*$LvzGKpj8|^@3TRiTPA#W=fO#*P`uo+& z_0hoAR7+Dmj#@mquN)?uY2n{FPGikBk(4XX{CXGNnY9qZ(cT(eccCWnFB{GsjQ|S& z=RSzgn>6-j)qQNYP88-USluaQaT2PczoNBhTahKFP#l6>m9l}dcv}ZUktWamL(wC`!?luae88)XX@L)z ziOXJKxm*_fWki43$s48g+jV=nTxusPK$-ugi1wY#I^EngnYzR^;cl8+rKV>XjWY@Y z>xKFqtbPLkdX%plY3!@UuG{9PJaint3}S9+89{u&{>R_IpU^mfJoh>ay=z4Z$^`%v zDDhG;Aa>*_igrzS6u_xH`O^+fGHEV0MX|K*8s`ViF)ZN(-m2Pf{027Z{;PH*>H?F; z5OA?w|Gp}i)&CvIkQ>);OyV$nmpo`}{+&REM!ALMJVSA1yzFNy(?GO<-E^;?tP<}|W2(<w@6|=lempqxZaY79 zS%@9wj89)^aaqgM_fP_s#lcl&D~{FZkinhV-GM+2m&49D%LS^{X+{@2cTdC~a%-B= z4YnOAS1vBr>bfgZgB%w3y4uTgPNRHntz~Onh+P^EyKKF?j;uKCnQgnG>WBTBvq`eA zF4=IF*7aXw2Yp;{5EX-D^;;Eem6t-t@+E0?kVts>I&)IKUSzZOa56Vd_MxTWb?;fl z-sRfTS5GA6Vf|4rX=)ph)BwR`Tz31r|J< zdeI&3a2X@6x}>z7%%=73)z1sNT~v|FxZ3!V%FYJPYqXy``Wp?9&HbPJ>2$=uUkely-SqfeWkB6?|ntH zJG{0vy@gR$c#4%LP4lVI40$ek)Q>Xre@)R}ZGtt$zVCB=J#up9?zyiX7E-}Beu}&O z=oP;z>RL*q)%|Q?%1?n^n|t~B{448Q@1HrwL)@tc`6p4oRvB837hpm&Ds$!AjKFdM zLtwSI;WcUQ`R@C2wc96jHQYO^`Gjo~7AZ@Q=V)GboJA?L*^tltj#>#`4QdVV89zq! zg46DsGjMvOa9m15@>cNCBCGTQ5AD07bF!MW~}Lh6@HPE(q+t=}~BohtX}f&GkWU;gZ5!el}QrB@s~x5OKl{btKd zkYYu-a&b9dtDnteliytrqvclFhUG}urTTt99`hC zlV?-;4J^`fWMbNMlsp&0MZs&waO|#MtErXzNrbcjJG{=jZx(v99$dHFoP}CS zICAhi6K`_6jUu)arPU zLs4U%h@m~B`om#a!p|=!M{7RC%XFd9=Tul9D(c%XRUZzm>NwB4`F%h4$v@~Fg^!)` zn-S&TC)sPbz6Qy@CPTEW1rcLMr+V+utJX%bes9yA`|og4D_~cZVER&Sy(VJdPMOT5 zd1PlG;^x)4z4vRoH=6Q%OLRsQ55iNBmMB!8R)jRb3Y}E0+TR<#*!W_~&_{x7xtJJ; z<35_Jju~VLx3|q|IJVCA#`#T2IeMhJx?Gmu{u`Qv<%F>?N9gI4ay7GWIg)O!-z(;d zy4|JJ7>?-UCf)&WnCK01YR5Vlf_%4j2W<+Ji<=q;N=O}!m$4F`jkGk4u88q!3JaP& zyWD5kXMQ^_*VFptJAwVAA??(2+o&9;QPB9T}&lVK%8LiVjL zs78%IWL!c?V)1P=B)ZmZjY}wSY`fTJ_d@T5oXazrJj1iDOt}Wc;e|4sXLXR@qO(#v zL=JUVtEFx?==!Wbfc`1Cn2vThrcOvX$)Z^OV{hQ)@W5qqn7V1}%*H72d@wbc^vY5w zB1VFW=IUsmYAA}X`%Lf3NxmRx4G&|egt9qVLYOSeODb>?+ee2GcQ?CKwpGV+tRo~B zOnL^Q{-Sq_L~}U)zaoU4)gJsAi(FZ?f(BZ%V`vgN}}v~Twc&K1mU%?!c|#u4ICEb`0Xl1N_6^l202 z?Qd_Odt?i5@cXQ4PUz}S${%CswS(U3aXMgM@bNdP6xJw?ZRnFc60H6`S|`w4egyZf z1N^gxEV}V_xiPa$QZxB%A{2o;_=mQhXjiSB+b05oz5U_FH)m(G&29f&Ums@6r&qu_ zhNQOs6!J0C3aW@TSPz-u36}WP!KAd6%o$+*@Z+N@vIJi8TyIXomGol?>{2OwyS0Lv z>~ak|Ho@m%k!P5xJU94~fsTEKneA5t*9kYgg~!S7F;*fh_ty7cE$Od6saerM^`Bf< z9z)%%_g{m}?@sUVhJb9Bq+3t`SYQ_#52VCNv>^XsKQ>DD1H%7YjDu36ZgSMh3JZyh zBsk}%#x)2C)!u-5f0y9_;Ge~GpLecbu+S6>VB`9f&@ixL{P9bEzO*5(X`eWn?%-DD(Zsn(u$$;1zHXbeJ*?C+ZLh+kR}mjgOJ=s3n|G@ zH|B+=I~~uit?fiF8ZJQ#@d=^sNuU~I=|b$NpP6N@_~*r;oGBk)$+)CbNR08jya#9J z#h6O%(7Y=Si&s%H#xJO$3u~DEm|pz*%Vz%Onux8S(43fMJm>lQxuN-%mgXvok>my7($PsX}9dt7hRpe%=x_s(0&#;(eE*; zYq=i)^@3OcRRh%De9FJ>K>qc}FapJJQCJ?B?mWp1C8>YJ9v*=nSS-5C=(YP1(Atxt zPve%5e_bz}%YEnJVr@#n&)X973){P!?7Y&oO5A|H6ow@A_yBoYohs=H4eJ=bKIa?q z#S=1qVPszX2OArW*;;n&;TvB}bTzr}MFa9!-_-7gJRa3*jXdMnj)mA;czc$#AP#FN zy3b9sZ7dD^cBf=spXO*zCo>?Dk;2lYcg5={=I37$yF&~nLd@l<>ajD&lknwmjUaxn zt{UHF5z5S`NV7s3ZWD3Qiu#pSZ^X01cJc$R;?U9JKTPowixD3m;mp6U$IaVed>$`$ zJEY@O9m!Pw|B>~T0a3MExP;Q(U6Rs`ba#ppBHazrIW$NkAYCF2(%s$N-Q6|x%pLtc z&pG$rUwi+UKl_~(?|Rm=p7rzA;#Z&CXTbb}{pKfM^N02avR0?V2--=q>j%~~Z_8V< zjOU}Lt#%t8TJVq3iwGDha~zXBa0m ztJgNmbsQljRu0TK&aR8+!PUscr1hU-H@;*z(wzAn24)xAg}AC>`pnh9D5TqD7B*G> z3YL2n7iyda@5exDgZ+x)-C>9&9QMW(rp`FL=z`bBA3d+^mhkD;pBp3#iRHv-kjbhc z6YbxtHlXz0)*gZOtomqfgDm(UnngZmg4etvW!3lxkCva>TeevkH8jK>kYUQ!d(e~M zSlsa%MZS@6YVZX}Qv~etI~5_2?1eDRRqNnceR_gj^%!@qZo6#<*13Y+S8Bnj61Hn? zwpVD5$&anEqpG$>a{aD)Irz}^+LIUh~W@cEEx8ASrb$43T!z3f63E; zdH1r8{nvcRJj~WR2*xVJ5psAs0_Xa;Z3^*lj+VYQKwFi_AeikU$0<-4qg#jxcdzSO zGuEWle{dD^t8+rW?)1kgP2kaViAcro=?&_CP3)Sc9EpILE?g_r0bBcgw48E*)~a)1 zr>0!(Gj7|%KeAL{r%EKu);%3IdO{~pRQbUuUw`2JBj+?!TV@O*+>w}@ZcJj~+s!ZE zB&bFux4YmjkFbrOdCVpyjge<5S1+bHaKg<4US5~ATANsQ`CxuQT$ZS4UZtTh=N34U zmJE&L_CD|)jk4W4%Njfgfq33ut~$ZLyG7TTzdehnJ=ZH$gn19wY=)%`1rbXh%Xoj_ z{DeU-#Ivz5R@#d2=3w&>$=h=93D|mwBAOmbgq2{PV#&05A^$Qb&{etQZI2To?SP|^ z(7dt>%u!>3P5AYt173BLmYm{#c^9= zTm9omoD0+E#>M`zQLHc*fr)9H<5$qM^Wk{DRHw`o&~tPz=!GJ@LW;XfXiOe(bsr); zsT>ZwzTvur^QOe%1WNuyySk4HXz0*#RsMHmhz@-Edp7y^2*PjDV3rLC-O7|sI-Nf{ zAIQQbXaXfLdd4r~;nx)K@jM}oV~_uw^!6u)%1xgq>CNSMs3@t;X9qU`pU})KdMQK- zrMfwv3#J!|@$(N=F_txqhMwz5nQB*x+}b2QPv$~o498}QQSo(T#1ONP>~1rA7!{Ft z@`zK%JK(Ro>+`Z{UzCJzP|~!q zk1hBnygF8oDjg(N*Z7k@X9Qg@MxcZjt{tP16%(`njHGjBi9}*@H1~Oh^g>kwzfjY| zP8P^W^fK9ug85ZeyMyH?W;If%Me9kn299PteBgy&O6xICEs=t?nbK?iuR5 zbF_41D?QM#kd2G>nG)wSjfZ+zQc(0h3PsN7jm06rT*i}c`eOI`XEk;y2o+AUOAQ=| z9cLXgwJ6PfmtZ{~`bj%5vrLR#B4tG|uop?tvr0wr9PbY`f+a697t8PPt~4{aJY|$_1bt3dPTkIw z+%~~#)FZBHrfwJ_DR)(u0gDrwjCYO)9N&J7j8ZSS8AcBN`HsISFCJWJ3o+2?mAXN2 zd=G%qd^nukhv=Qo(-HG+pu8OwAxw`oK5e~zT10=iN^z`KVH6Ka9V6;Zu7{U?5L}|q zTD^`aw`E$~?B!ZrlIvT;ef~PsV~a^y)AUnz5tJ+A?1}1IEsM#6oWjMq(l<2(afEckXTI;(%_C=8B6GN4kt$vZH45?zS7{eaKrBtpf$xn2y&wOdmnZXKJB zxRE7zuWUjTPuyO*X%R*57z}tl(9HY>8AHsA(0Cvw;Zh0yTfb}`Tl*1XQ%O$$Pt_}t zNcNk!->m!J1bo2NIR_n>()vne)&4iTlybMdVZ?#T3Y#Fka)mECNf@OWxRCmZk-|>j zXQ@&;N-5d^EsanYPuUT+b$!xR)A5z(=27`yEMU;WnQ%y@s}S}+)nZz7CY7Fa5&m(; z^bilz1ws9Wg#*f%tD1sA~WqvR^ccE8>+L2eO{W1AJmtw&FHsUUMj2O%osK@+^ zcn=&m`hxti`)f&RmK)nF)_Q{GQ}3Mz%tSeIPf`pF$VkSLN-t!2T_uvsmN#2 ziM&cd_$KnbUoLL{&+j~LZ7$kDwoLRi)!4US)0587i^>VY=riu@fw2er(9D0&cuT?@cA;YHo~P z$)YR>SJ4@5U)vd6I*|1o_mvmYd73%GYm0tIOTgS;uJx#7>thb;*?P&mx#M& zjNN0BWe!pcYGsOTGIee}Y6}wrn`Y<%i!w!he$!;sC?8tCQ}g5I%AE#dIMR!UXcuC% z(B?iq4w&QkZsmM(Y4AY9M7gr8uv%WM^$!>7SW3K_MlNPi?J|}!zmKP*c!AFhXR*INW3Us{w!U@{dLDjxmPn796N-tKJW~G z58!{!0elV(p00KIXlOlo6(Yj>E(A^Z$C}~wgc>tU)KNYxBgz9sj&Nmvz~IUwJtr|G zTbNlbS_vZx^w*>l-qSLFb|pIjH=h`^Zg#k;wCA_4<+ZU`Fzamy9~=+gywa7zu`;nU z#g@x3gZ;Xs(Ul*u&l+~@S)(ruZOr5y`4)~9UQ&TX@Ae+CEG}kX!t7iqK?djj&)3rv z**3N8hgVHmCxS}sS~TVCvJ(`35v9ERvIM3KiWY@Ht~z-jbvc_W{b@UMYwx>U)b8(+ zOx0YI3hIU`FDV77`l z;WH)C-~pv#4fzlk9L`BmDan^%arpzX*RCs_$fK0wY%_{4{^)`6s$oSV#=9c}tjN+Lf66PVTzVGm zoXUa*Hu;W#o+ymdGl@H%463S0qn{(Cf2OA(w*0?xvh8%YwgNDBLTu|5Z-P@gri(INA!)!O+&ea-0hQs6p0MzmBU znA{F1mfjarBEjIgu*Cb7rIpyZB@5R;&i?&=Foxv287^BYz*SZ#22np=NO?lUBp(4L zn;e-OrX^+NhZ~Sx-$XKV1KTj`r>b}UQ?@GO^ZmO}7oyX5LHiWS@zPJYdi0#PE>vIc zv%lyRemMCg9KJG`Zh6*+fAzqeYkn%B;PMe~$k#9*HnqGX8?b;FincJoB`ZECf;uPn z8e+#6<1LpyxY?V+5%_GHJn5I| z;~Oj>g2Und+86im$CrAUUVu0!HQ%c$qK=bkReXtgHO(hY`?PEEomYEmmTGc+6-RIt zTM{@P7?HhW;ZL_D0`r!mGH=nVsd_r&&eV_Q=I^-$#9p1Gk2yxRI2L&HVQB};D|N=@ zhmm3W?2JgOC!*yHd{>NJ?Lij&^-7)E=)3`K2!*@-Af0-vY+%50+#E;w2Rm0Y`hwc# z4nU3le`cn|H2-`{0tIoK>rczfLtOW4%c&CJ`OF7bMZr> zHq&2TG{NKqY3*c_*vjPtJRm|J1aG?X&Kf)2c zGicgM+I18G9U8WK{^#IWHg|bU!#66|$aQQ1kIzUmwHi8K4+sH0vk!-Ql^+|roVyZQ;Hc(0U7 znXwtOpG6V+8=2>-AQpt>$w$(5qIPn3URJS19#`f8RE?lnJ^I>3CO~ArR@ut?Mphpd z&Da8EaUg7JOuhbRYmr@DAxM(HP#Axe?Fv3RR8KM{+Z+$wT^oMBhUKlzc|pg+uhrO@ z5Yg+^^KFBkoJ$fGGyW#x3Egy( zq?MKPgqAFkZ4luD0GGo5TdNN4g0nS**j-nTSa51m?65f#J(k(T_$IT_jK%8Nex`9c zyX8$rh4nAW5;j&@b;`T@@rbJ)V}#*_VYvh4V0D|+?s(8LRZh)_pj{EswQcR-%4QZ2 z`7PJQTkO>|UezLG_=}u;<|#av;KN{Hgc++(4Rk$nD`{@f6;RCyQjPH{iJKgOIT;@& z8^a_P^P1pI^swx!mrS(1Xo%T4=YnTBR6v#CgD>wFMecYgg}W=@9VBB(=*!3y8 z+2%xwmK`yNjch+l*6OB!*e7vv!(h@nQauconEiuVo+NJ%J(u&90-f`i;A^F6;C8|yBYey4zPl9nve`82}9*MCU^ z?MKt`xkAurpwSYY$6Qz1;AJDWiTc~>h?mmVpDL#NKNsA8K39bUtOdK0K9*P4-1&>c zcOe*t>1YpnWAoaMgHbQJ+(T@KFRwjO?+`jX|D9S^&ZJJSD$%DYA$i!0O@aM!rD2Zg zu@ZU>4{3?mou@tH!a~uQ`Xu8&6M75PrKHI8 zz0IbB6;4P*IHM1^#bs%0OKtk(4n=(Ry`W_f3s+!mREW=nMQjbt;c>Qlb)`H+NF`&M>rm1FB2EO)Wvr;yXs(1guSQ5>5kx)u5N zBYfi|Oog6t4YI4UtI8|izr~z!=(_M-Iu9wM$5aMy9tCtQjZ83z!A5J;lXWIa~x>2jC0hSRz2y+BKVm#!a3X6D);Fl6eApbE5MY(jMnyZ*p&n$3Ju$n|6B zGOegNU2u(>OYfli>*o(NVyTGwhpBAPf3bk@2or?|8WiE7RrYW1J;Sd*5BAA>3lDyE*oL z?iZA;3S%&ns?j&4Ey>U>j8{mujTSCgS0Hf-N{Jf{<7W|2der#gYdoB9K6TF~NT_y=^g#B7R?(ik_O9QYXaII zOU?ES92Z8w$RmSWmRoFv#>CwG?!f#3ef8K9Ra#zwRvu@S)0g!>jtVj3zklfOECV3F zXLT*aVwr6u#%QZ4adgaRx}41#t2Uw`Lq=u^K=|}+67XW?{OZHGubE_=p>V)Z7n;yS zbOmAhqKMTt$p{lp)s$+D0fMD*4Hhcp0u^xwwO~)Ol+ZAS9v&~-v&|*c6F?E6L2Y8G z_ikvaqiyzkMQV0Dc5?BicKv1i84nTF5N*9f!l$OS0lHMiE^UO3xy>0_UVMWSf%DO= zEY|@bO7c0j1>&z4vcNZ0*w{a$SD4mJ$zd;UfmPxsD`VJ>4B&rH)bTj4I}&C zk@u{02Ot*o_jA|N)c%y-n#y|U=5vHRr7i^ClFi?R;B4rU|QWYIWv_+}%yg9s{B?49xi0uvdbx1NW zeuR5?crp~CL6PJS1LWQ}x#TaoBG27bAEe)je{zhgg{?^>bJ`iSudKLfcwpURO&iQz zo89Gj&sDC5@K(=`ls`}^R>@oax$fBC-1ySMs8W36jbtT4_1X!bhck`f1@#aqLFZsV z)r8b$&2xH(-Y9~;XDELR#_;>s%wdTxq85Sr)qClH_n1UdsJZBvui=L-YM>6M{gbk-NX1v#@c>_^&P|w)MDuaLopB}Bv%(bC|IiP9jKkphK}cn9?Wyy z|KI`RtN)|@5B>mp$R-Oy?BUS}Y?{jATdAMK>U#pI-(JQ4pu(O9y`6OSc*z2lgO6jt zi{#)N@yz{rPqs;JyX z3O}6dCja%!zqtlbaO86-vI;HSVL4S)gA4$)eY4t}AN^rU%=)b-k7sm*Y!CnOxE)lk z{v-n07I9@r4k@|M_aH6CvSS)p^j^c0JI1bfTJ?nCmNI~fgH9NGKzUmY>HlMyX@(BT zqUzk&Zq~qUK1Vd=oQ^8ByqXLZv+;HdOD*?_-gi7!Z#gZRQ}C@)b%WQMNLBwC|4U-z zmBG9s)84H_L_z?8BeFGtC0{qcm1}|QGfOo*dd`+n#F9X}1HKMnKeiwKOj9nQFU9(R z@`}J*EfdU-Jp;0E?vd*j!kyHLQ5eAWJb<(H0sK-e!o%J2lZ%=g$u*>hXHO7GT@~v7 z{(c@Lt@~Rq|1j`sT%+f<>wh+CK=#c;PK^BIdHPQ50I!R!pJJMfJR*l zuaAq<>#PTluY$R0cjdsvjDl=dj{`Tk<|P$zBe%dVAPI+0SPBVe?1pOyT03+-8qKZc z=5ItG0CRznUV(3 zum~lnxLowE9NC4?B+1A2rIt|CE512%ZNH zmB%EaW*S-Lgp(L2d1=_CS0%(y{0w-=3V6_jESCmMMG>E&ddc#(qj&^v!kK%>LUWyO z)DMVUubBRJnzT#%-9yMJK=wcVIe>x`A;=T*4!{EU_BlEZzNLJNCE&plVT)s$iOr1t zwNa8FxkBCg{G*2#K932!vDF=B*ottS48A5WC+85LWS zKo3PhKu(5^WuEJ1PlseTF!HUtU(I_}sixJzW41|=%$QMSQ-b=a_aujG8k>Ap-@oTr zyCf1V=;^Rauw{zt8K@_YCzCBxq~&4^#0-hXDciPkt(C_$vsj={6f6^$B-TLN^BR)gIlbR@|5|zwE}KI0z~Qs zUT%4&BJoxWCYPmOaTS5At`;5EDRD*NMSt`S(4V5wykq}4%X`|T9!~&P8mUFpCeU` z%7yO>nUhWDm|rAeGB7+@vL(sx)sY?swWiWFX=MLU`(zq~QK-^R1ETp`DF0h8gEyX& zav((;<_rrx)KxST!yWv z1m-=Od8|mFTXql|=>>-lF#Spl#u7k`B(J~0B~--|ueni_?DU5xk<~Anf(N=G_N@XT3Hen1 zg|B`$&Y0rsK~EJ7$lTpUtFMjJJKg~~ z3dnp;(mHDwPq|{I##}_lovz<_8?AvX4AC(UNx;o-$63!c=D2wlZLQBu+aEet7y7QppxyX84kh#!PQvGHqu@GEP!}DP`PV)CBoo99f!d&_?Mahmw%;xHK=Pf|fZ{J(ckN6TKdDa$un25tf}s?@vnE&U=dE+74h+ov9NcI~eaFX$5!pg0vHA9l}Dn(IqrO zf-O7c<8VZc{T|&P$fXq_AGV$j_$mSUH-Gnh0;B(JeyR+Lyr|!^PE64*2@o4=?q!Ri z^9YEZ+Myid&cbMF(Hn&~<6W+>heM+~M6^36_b9xdqM>wysoBn68d1`FSLNRbzk@+^ z7D#)>#wfZirN5n`q_$AufQ2I-shMxbZgqUH2iW_(rnD?P|^P-(Q1KJXLMg^(sATFw+ z`&-*`9qGRvg5N5wzf(6DewRF=z%hhDvz3Nra@3CrOPI0ph(9t9IRaYB5m?4gK}K@l z;QF?tG27pQz9Vi+O_WTT+udaKc=@s8I(PIAmyb{qlLl7SCi8GSz$n7hzdS+)w;Fl% zO?k~rv$d$XnGq`w&Rw<^Mk)moRJRieLx(P10Ew8dq_wQjWh}l}P?zJ(OW0!oZuAJx zOj`KsK>7T+x56RJI_A9i0i>PC)oc&dWxe=SUW!%Qg&N!006$BN_%~zDb^&2Bzx;P} ztwg5cUpW>s>*ZO=gy(B1v3?ZI4&po2O&LQJ)YULrwuu(>80hFT-pztoHMoAT{YCCS zVsn3h%dBSr1t`M0M|p+XZw^z-X5AtU(cTn&j!xkCm*Gdng0awBt6M)>3w8l{uZwtX zaa<^jx|C0b>NC$~KHaFGoX$nytr7j_G`}u8D#Y|vx*#I)P-!Jg>+H!NMPJtzgB+zK zTV#z;tqB?ue+@Ji7`;%03BrlKjvQQ_IXTMab>0Rei+u8t$dz?&=Ri~&z;H}QX`^@> z>9@g_6y884UA!;`TPuV|oL}1%OHrXj9PK>IW3Assh3Yz}ly0OkhhcSUtpYtq#8XQ$ zq)~lIFiZDQCj7F+_?RHw9WCtgbJY}Wfh@sVxGhga-!;hy&J~bE*L&R~N(xC`Nbe7} z2`G7f%EJEFC;mRb@Eh$7@>spWb&g4+4hGHC^*;4bTFvw0ZwpgH9%C4$c_`);u9t@3 zu&W*4=s?-HudQ&z&dbxDF0KCh!cQZWlTerB#wf|KPjDmn7Yk^NgsvqJJws2B{osD4 z<50i*@VG7p}vEdjAH)1xw*z&v^r>Z?s=Bk~y zU#G2rkhxqtv|?i=;qSQfg5N*lQzDbE?C{b>bQ{JEXCzp~P-&6_<=)OR73Qpw`IZIg zsNTP0zFmk!T2_HVr>y^aZzR{X9b(2V<0Hvv3JnW|PbbbQjRvf!0xWpcOPWAx-5}%H zd9r}-18M9Ke#js=G#pY0{K*i1FM2A!>w@xVHDmeH0|VJ+eEVRGxnb}4kInlS6Mbrj zr|%~Dp-A9$?)mK{q7q4OWgKs4>Wr}q`g_iUNjnVq6Mb`HE|A|eu10DcCbzUmB}JFB z+ZKI;*YJO(q1jw8F&lB(TvIA?G0I&hntS`>#bAcT>GorM(!n zzSzMWD%pydD3wlh<@8U?FXg$}WoEDdfjHs7$x$C|9RY>&&jDIor19J4?VP&UP5P)( z_ncOA#s?^lCxT%=EJBQeYFTIIwloQd(r?#YWmn8>hKrg_8a^~^2HQXTvF8|Q z80Uszn@$}J*!UkSJLVSsv^9n6-rkfatU}~6%O@Cri7*scjr-W8Y{W^rAdq;Vfi&)j zQO)@7a!LCTvWI+>MKf@hY`gfYxy&xx~T0E9%eRKKUX1ks!Q5Z1)KJb2z^VjDL*CP|R z+)USAv6+`9_Tvnt1l=Lo0O4{gFK|j_jtZ&9xYe08(so@D7si$ihCrP9phBzb{Op?@ z;DsSs&%SxkWsS}C!`BtsijvCt{6*x;kuI1~c4Jt~q1?n;0H=%o`o!#QG}}+jktI2e zabvm;gT@*u)^buh&(KhdWG~%dmW$S*F$wQc^@4r8aorguh?sj&g$ynls{=u?C`Tsx zJhnu<3RS0wGzc-T`L0t0HSnF{iRG$FP|A+arHbw%Iw4r&_E~phU1=1&e#r{4mvt8< z(7wnZK!g!;cYbpCeINN{eKl^PIqGQmORpg348~YoW=|MMQL6U=8OJwB5P{ue2YTM{ z75MttSyOp3W}S=kg!6O_w0TrH%X_AHUU$;MTfgJnI7}y^qB|Hy)vQ3zva+FGfRjy( z!x8J%7q;HqYrbX zPV>s*V^FQt%YT||vwj=RfVmejz;v7J|61J~u0YW2x5dOrd^9=3(n$}vt_i@Mt$6TI zp#smg$pd)r(NlhhmgxUbHgdmy14O1hPoGnO>!{OneU_O=(?Y}uB3-*9$T@UR2K8r# z*$vZuS>`IH={Y6`usVmxvq0LqtDe_&WAd@>IG+|*g>I(~ee`l#LtWQ0c291n&jm0i^;;SND*&Kf zCXI{*k@M+^_4Gr(ilVV{V4F>9hRn^cUGB%yC&(;a`4#;}*$97WPTy#+a-JGmImapD&fmuvZ=TiG(lk)=dn4rwgzCYy-F5f`*E0+Tx3$7 z;M08Zh`zfmxK>1H(uN1d|00f}>$-d?S@j!I@x+9dxuyi{DDb)<4DK?BnslRoRHWGr zeE4j96QFd~8f&^_r~q4HYNJVTN{+@|JU_4m!OP7jq5HW+aGMwJ-oA?Deo+vipxnxv@G@B%aXq09H}nc!<7-$efpsY*D6|$^zyt<`<9!$k=Z_Si zN6-;uB9-h6KknslBklYGvNl@C=_+M4m)J|Bi8G^yx6v8A*{`XQKUOf@g52MJKR16@ z@8()pf6l7EE_~UjxhzGoIrmhe34tV$Y(*AwZcFg0rYUrS%QG9DkB@Ki&Ot#I4V@Vaj>1eZGF%2DLRPZ9W&{BK- z{Bi1b@XGibr}cV+7vaI8$OYqZ|?>Ja%UK4{jE`flWF z()z5k?zVbSzo|gv*UI1pSe1y{YFmARdFoj*Q@-_&CEiZYyD5KcYJKZIg`E|+#fAZPW`sqHnwe>um`;}E$d0SKS3zE`{H>fLdnIq~pAG1P#ch$>Y zq`FeP>O@pjka_90gYCxAk7iHCz{z=-m~AJy(MANWr_PtH1ei12KO&;+De~N(8St3# zBT+Ma^{F_I>rIMJGZOemis_d$Gj$uy5FXFr+hjUp4|qgzJW~!1>z(XO@Q*qf+^;fJ z55)!n;%Q^IhP)*{@RjHVMr3;;)b=p~S*AQH$C=ru%}a`SeckPff#V-iusmj*=|Rlq zbq7Chol5}-2kFR9zdn2`9vrMI9CV#7xKx4Riw4My4_LjUYf8Db4N{|=76ZIj7jXM7(#&4_w3h{bIxZk*X}@pk zol1;u$;$@sff&*SmZtz1GI|#xHI! zSGIHe&br!k5OpY2nQ~BXBcp!SuNpekai6MzqR}$m^V;_+wY6uXoYSQ9iOrg<>r2$0 zo?mV_rWG{xT3#GJ0@v}F7ZvXUv)aBa=fi!5NN5G-vYvv^>kI0d(Lph@McYMAIm0U0 zFX)>2*X1w0bBxn|GGia@a)s+3wus#doa#oTl6b7Uzf4 z=5yt{*r;#iBEwbBTQe3%XA61dFAyCrW&__FvaF@n*5|F>J?D4HrbAtEY@VfF^zK`R zKsm}w{pKCAE~_w`lLzxRY%yvV%>yC{hOCRd4s}v37SWRuv-=kW;KFL)#N7!*Mf5um zzBzG$jaA<6E&Z1~I-8@^y3yx_sEBiA6gjrCgElOPLM@27VQ2kSo)(RZKLBipVv7e;3R-|>QGr%M@swr@e_iUAvUfm zSxb|Na%K5PMt&B=+fP;CT>~%NPtY$fm*<2+{{{X2AYjV4a;|0jDZmJ3TqmDAr7!`1XM>tM@*_^cdcr_Vqd)W)VJRD~JOb3m` z!J`)p&$PF^`ux&+1{?oE z%0d?n*zUQk9natsLocs|(Mnv+0B@&6<%$n)O$svHIApo)nnR||gdDdd(@cGy`PQ2a z{QE#R2bL|N0J#E9U-{v2j5^wQ^UQBbS|?b`>CizB)FTk#EbvKDZjTIxleqe& zk=wpHbzLZ-&(?xkNvBe%GB`%24cuOalkwVT|MUf4xpnxo$(`S}$T__yOaE65KI7BD zK8`4rUF}cyw4V1T7;o0xB~vPrL~c2Vgj_*oL-)cD7rij#|ZZikO%Z zMfus+@(jIa^rBqW;LJUXb~r#D1*8zXt<+$q^s*eRMRMK%Hd%xNsgXf(_8)vZMSK|n zt;*;0f3bj#_SSk zFBjihsi}Tn>1!pS?t41M2o8AgOxtTktCu|rM9^*L*Y|8jcRNqp`u|^jJ_dk>Wy>Q9 ztBntjdBQ-Ct!w~ z+ufbYU}h=6m%r^x(AgE8vsbNjR-JQRjp6+G>{Y zsyZyUKMPoAX|1ij{$XxuNi%=gAkH;dgOEap&c=!A1Gt*^uC2xO1mw~PHh3y~TK;mA z$77t0<2QpEzCMjQfBH0kUY{~^YW}!?SRz37<-Y&eFg&{nIwCQ5%+SBUno82rhX3Q^ z)D`u!TZ}g(38p}9ugV87dpz$7H3UJT65pFm^4#M2Dd{-jdhep&pkEZuyF zw#D<66YF*WhqM*-#NO*fx2*6l6 z!I6lKIq|HApDQmjAuZQ?Am^nr@?U^cn)!EoX<^_mK~g1_L&I3~v!WlyMmgSw6PvV<|fE4d_AVRVF7`@e2)^pA7zvo=kibJ30lneXktXE0Ek znT9I{p8v=xwk%}b6l9LV$*X3$I(K*zQ!Gu>76=D=2^<69z-$vU+}GO^Jc%O&(&O38 zX~H2b|45DfiT)Zy35yQ9O|Hp(#jkC!`Si89$aE*Gsk-X^3NrZ-GXm4QM*{ZWRD0?c z0Zp{u1=iEfc+OSatj}9~yqtoS^(v=NLS9TDiV)<0r!kcj@EbV;W|^czJ?(tAH3v?_*;&xTAEbHNRrfxmMh+amKLJ)#OKF^OtSt4|5Wc_mYjfX7 zx&I`ZEZhS-LdFQbfqrnigy!X=p5vy5!hDS$qbUu%k=kIrht;YHUQ}Mck}08%=pg( z4E+!zgSssVJl>{%%AWkz+er^NF4kyPJNh0Zzaba-!jrjLAl)m*Z*<1js*HEBu+--8 z9(Yu=DgcoiLlGcQDaiCRe1X4n4?LT@Wj#o)dZ;a6U3r=TS(}euvf57`wIUzu`ykGe zbt@LoxC_n~NUlAuMapknQo;3G$!S7&l&Di-Eba*S5Qw|Z`*##!Wd~TC;@8MCYmph-DJj`^k z>|gd^Rjzkl_k0<-2D~lLOn&ul^yU%hV&xWrh`+HqisMO6`2aj-%@k?#f+QBkdfxKW z$r8HE`X61uTU5RFsihB1j!o$v6>`>e`DO)SEcWXLmfL#m-d9~qmW|Ckx31e;Ll22c zKLpf|UGnYM+po;QA?VShtP0O3{u6=3)9;p(vV>XY&q+nfFJ7fEaPj&99WvI9ux15oaK{<2-hxRG*xllwg_{lvy`5biP&3i02O4C#(nIq zE{FJsqcUodtrhR`+jzqCS03=-jC$ZXG}8!1^@U%$4x8~0hFq?f6J7Y*9JklLBHxO# zkg{fZ9_l!sw^X{FA?OR#HoERTTedw80qf^?cWyHn^|f<7_wSv%-d>OCq&e@T8-{y| zODuc`)!Wvyq(43vX|j@}to$60iSVN;pMFOaS7CxD9;N~m4Kr}KDrF>X?-xrif|5sH z=pSwOW&?54%+y5~dc6ioOl~!HjbR@)$#CQAD=slhI8wiQLJQdSFw3GXqH!F)HKRWR zCOW*5IH|}=>3HTrh}h_cuPxYr4caD|hYR6eJTVMZ6l@?|U-Wqf>7MOt$$e@Uh?D_- zv%5Ga!>kv&J$qT6cj<8;L0Z;i!$BHYnFMC=T%Z@8_MrE)r~MtQjt4^)L6f`wrh7xU zJmh=ri4G)iHNU3Zy2(xzbH=*ZqmUTc?-K&}BmuWspz)ZOLBKg)oZ9Egu2{@&9{c8R zBGZJqKe{DQ8+E)d*$!x#DH9}8De}2l*!7Kb%;&yaC)L?qyk2D-)_L#so%;#NEv0g5 zlq){Y{L14SqMf;UB$&DQXH%VwKXdIix45~Tf=2>#ljfc{=55K0454xUO!lXwf>Sd_%LiMrSdtwwWhIs6}`2|iCC>|L3{53SJ3saJ}8U)X#r54#qx;HEtBltDa2V& zwAGvONbun11-QT8ZzP9wJMqB4dDzlB&;xnRZ|%MmW(czQm(zt#$o?QQ($36?%CO8@ zYLvw-Wl@nKBr>w*&2)I5gOI`?ZxD3AJ;Xq@la~b}wB&V}ax#aQuAmy(dWHQR*ruJO zHTzbkSB3IMc55bQO0;`&V)VoSoAW}(dj3VSvS{yNrc1D*(SBCl;h$PmM9}< zoofeAx5mt7?w7W^zQ=uD1K}`U=g|?Twk|md5t81nha#IB><_8D+XiU8MQoGX+xiFH zLn7(%&tQ!Qx802JyYYV_%kRYHNdJJY`=@gQrn}acZXHpwah6n#{T?bWOB0s7IAHj* zF(q9;(fug@hw*_S?KD+T8P;7a!b+3SHeXk7%|2O|Fm}ff6MVHLdO&I*foLhFf$?F! z0}>3SxPxEDQmmv+&lcSTR7Lo!hGN_gLFN@Y{oEr}7rBgUglF|alV%y!Yu8D!mV0^x zuMQ{@@cLrU6y2h=H3Mbvi-|vC2~{s+>k)aXJ001Z3K=pNz zzYXu-K~+SH@}DlmT{l4I%~;_(MFf(t)e~v<4X8bf|HIZ-hE=_7U(>ni?hffq$EG`! zP66po>5}eF38lM{F6of&1}W(-CHK4ao^$TG|L6U};@RKkZ`GJ%jyab0tUUu4g`5=t zv8SkuZ9FaX5XVOK&P1ZFH+F>Pt68qRsgP~^7sHb2XxH!YWX0;OegLD&;7!^T1i{aD zX|d9*-h}d{TzE+w#Q-wJ=0__V5b`Rc^>#PISf^X0ttEM9!G3Du>Lom)ch$5V7gxOW zPL?WX-8u@jpc1Jtt;=IycA`;B&X#<&@OKsqY8`>$m#v=Jpc{lQ287N*rfT8Y!F>+} zN#ECY8XN0JwI@IMJcnIya#Dg|tnHr4L-Vp{`u*8cGlYnGXrPg1(!ae*EGM#fPlI%; zf0=&IaFh1**0QVX$%6uT)JGBH|5w-Z-@X#N;Na^?M8vjsZEM@g&be*31RIeuyGcis zcUIufcxQ_*C&w{197t6*7(wb9rTv-lLd4bbdCmU0;=-Z)%m`2^VL{pzyQ%i7;*&N|$YV zCfVM#Dub|+e;Q)cgPm6rFXQ<3v@9{q0B#8`*#r+b`;~#o0J=s#S$LS6Tnb6(rtf6e znXeOE(e>~n$M?i^1J${-P+@VTfKQXclv4`RHFO;bqT^GJ#{Vr|`X1qb=KucR{e-{w z&v_QOY(Tux)&oA+fR%ueBe*`MoU=f|2<;YG*K3%4)Bk?--G>uX|CzR)hr0v0QBua_ z^izz?A8W!NH0%TeGoa`Z#HdQ(3QzpnoiO-~KouiB8HaopQHdlO&(7r0`tnh_bJ!9AxVTjwI?EADyE1n;lT2I~KmP zgKemfOfy}Dy>#&B-z2UUngWwdl9@(~x=q}MhX%W#%6_YVPA@PD{tbD5e+P;fFnxIf z3Cd(Nbvx1I2)P~09+3WS^_nR|_h{cRMN9XRfDb>~fS55~tfwc>mJO;X=;sQ@HqxifTvlpJJgp9GtLdF60|g6A zH4CUMLh@cE;TPvPZ)7rE&sCZluLHwLOlC@;4Joxn!a^xI$L*#~++w;lYl1-vU!>}= zT8tClmsEb&m5vCU9^QS}rp0~Qif8`J424uTKZtW#NVXnDfmZ7@r$HbNx|xxZB^8IA zSs-$6m<=v2?6rbqqk6>vS{B7+t=$gU9cI>3Pg+`OJ|mo%yn2QvSEy-<(_5fyx7pLu z{r>L{Wq&pKH*otKzd3gMGuJy|!pjlyW!g%2Qj>lIP8#5rEPNEs8fn&Kb~5?dl0Ae^ zZ$AojzKc=gwGh-hUFU9qPg5j$gNXvJtCn39UM5tW#lwxZWv3xrKhwT&w8ZND1bKi` zP!13Yb*qLVl!#a7vAz)gyfMZt?&yEXjORT9@-D)Fb-Xg09D_F7+BTOCn zwldwPXP(9SmV<4rub6rTsaQ4=ahfhonMw?-b+!|d~$Pk>hww{KivpG04=ATRj z;RF4npIrVYRf3c?DboEbE;NA2M3GBnF>7C$s*%P8UC2%m+tcbyw?&-PIL6yj#P0I(~CX*ov*SUiTo8A_yfkQH|X@cmmHlLb*9$ z+9wq-Q1FE^TWQP+Koep_8^QQ#Z1*xBTw^!}&9$L;senXk2VTB`(a7i@tV^kWXe z{s6x&y4%vMK2G6SH-@aoCu=bm_Q(Wvf3gaYkWdIWJyEIzNijNKQX!k<;EHee9pit= z(f{1Ln@*KYYV=4lNRt= zcGdb6oZs8W>-Vm0N!1LgxTRiss#wxeY8fb7sHumN_p2v3ADi1{XdZU9KB#-o(5jA* zlOa8w$D60s72az=cLsQk^d)|2{lGmgci#N6&&&M_@vurvB=U4)P_X&E9(HuL@W#$Z zaU2H%DWGb+Z$*dKB8X6;O&-RTOxO6f=$hLqv|~P5VY5eT=NJijyFa91g|PnzuyS~P zbj>IK&D_rRJF+xLxLrIDEzwZd|84<_5b!o}15BWk-Toj~_c9Y3?{a_zn;2RUEQ51i zo_xL5A%!|o6-nWBHwbOcIZyVbl;1l$j%E-+m2qFQ5*n}E?udR>{X;C~pjIOO{wGcivbcw^6kZUmll@f6e#Q=r>&IsN}O2vNfT7M7o4|&G~|2ZMoO|VAnpC)A-}8 z!2;2k4fSCHRzk+D?N*ld`%Uviw#EiZ$Us^+!w#ZHxb100GM2Nz)FHp|NbHzWao z58%;|wIkhA&GFh6z%|%iK%Kz=8|{c5#t=K^KlaDMmnHP*5>ZE4JVj$zn8oywk&^oE zVu+X+3m5dh?jL}g{_z|mXK+&L9xvkX0W1!W5FN*>@z+yTz?kSqNJXc6@5VT2YdKqtYoZ(BZX3yFHfJq zLyv*56?{;|ztL2KSL@sR6bl%h%fGAS2nD{o@?`a{h9G0iNOorJFOXip1Fk zxjuHC=TopJtfm+?0#QQc>>cvk^I*B{=Vh@*irpe(&+Ds!XJ%+{m^c^ zUd+5XBBDaaA{Dk%CF>DijSsb7$;I??5dX65{|xE=$m+U3en&PJhlw_iB||BwygtQf z?Yc^BwaM<&4mTA2c6rDCCQVa&$<&}~rm3YKY-?b~xI~%Tzqc?t6+e+7>z2RSI#b{) zg1+zxHT{Nh4#UQCe4z|=^~2E#$>*LcB4$C>&*V?6yucq~ zL$)Kab-JNGOU=+I#(^yWkjHTY-#mUT&P*Yn^fuQ$kiH`r7At2$RciTw0fkoY`f%g? z9T?IRvj~246nO~uXO!|Y=x8tbm3_W}zamqnsscqbp1CXH)$t_xlPV7a10brvccNC4 zUYL)(e`&n`8ALI`zD_Fk^!z9GB25yQ026p}WS__6`qN5x3FAXJxt}#Wpwip(-(6j2 zj^LL~?JjJ0dtvgq+$oKm)OC7E+(8FRrvTZUW@kz9BSr<}7u2j)|C$3b5Gg`NU7r6Q%j!`6i=%_PLN` z+KW2qfm%4@pseEtQIX>LKo$&{+EQV52aY1o@L)-rPzkeBg`C6K5UM8pY#uubK5$|n z!nrF@!xgw1z51clM}E=5W28`isq%!CNF)b!p~n|otr~Sc;}FSRL5Rt zOTdYCrfYDF!vaOTRx=G7`*9fclCljTxjzl{=J5?vwo7XWi(JLsXX80M)^uJ!8@ru& z{pBkcW8#8ll6>T#8o)Z$OtPeuIhd39brgtA*f#cIJb3Cv>)8~}#}~tMxNX;FV%w|2 z-$3B?Og+ILL5(Qj)6?YSKTYgl;0uEX`GKF&+mp2q^A3LP5zgYbCMy}ys2U`1FUx|$ zHR`_2;YXV)yU7_k;fV-J-Zow#K44jq$hK3YzrsJ-!EA5Up!V#rQPQOvklFc_@U12i z7~I`7Nxqpf{rZ}s<<0CM|F3{>w}ZO)e5uO{!5CE_Rfre<&eqpuB*STB79%2ZeKUz) zJmrE#jLwF*QMNqEo{3}pdCm__aEvrswcc>!+L&flH9#%kijH7 z&P#(0G4>deJdJ$5HtjCAymR7H>@9Q9kacGfT?!$XXHEKSo&~{W|E$lyjyCYmApcIN zup^c3A@vHJjZB8OAm?oGHl!og@h->Dd%IgV}Dut3xSJQy> zE-ol$IafZ{D%&v{^ATGSnZ&N8QGIk@4?nXY|Fk3hinIh6G}asDE1NQEhdnsm$WSVIf-JD>ija@G#3J0x@F|J!euarD(!!3b zg!VnAa!8uX_}hjuB;|QjNG^jV=UAzf}JzreszUYH=`&N;6O#hhe$grQ*pbyxFqANIqZXk8PgDF-PgbLQp$vIghWs zH16DTy!@6>7vBcgd7GyH`XROXyyO-bewQg-p5|}Gv2WGCtxk<^Zjlq8i&)(LTr^=L zw+qkVu580cXtqFBDd=sf%GZZF*s!u*IWNJ7y?JSu7)&XzQiC}iG>o6U2huppNGCDe>642UtrLe69#O{|3-Q5U zoO9U?vV*=*J}*sU17FT6FN6A>tLMWoS%IY_vO~uYfFE>$Ql^uAU8MNC)iGaLoKUWn z@{RC{QsJG2eOIEO#9zhYe*lQcE!xYRS;=8kpsxf;lG5{qlg}(u0H7^Zu~m@ZqD z78&`Lb$g@lgIQ&To~iH6ygjh7hVriq5eL>srd!#qHE>@orrTo&rBCAS(&RQ)m zs4(;<2kM@$t@@KlSJGM3BG7qUdd$|`a+fQ8boQW7$0ulsC`ee1;dZ|w-^i?P)iQxl zqa=}w-NChEhyy;8ah{2DR*9*r(3Vb54&5vo6G{~6& zC0|6oXI*I*<9ToU+bp&oErNg5zU|;(xP3j8<4)fnKIAu}cn%AhSV(UBCv?%}r`5fk z&*s}1A{Ipor9F^t*4RL*Du${7D`6Qs#|8^+fQD~UYeI}U4l}7&U}WCw7lL%T^@!I{6QtHz1{B&G1!WnS!{q$BEDtDZD&uj zrqh+Ac?-qunJGzHc9Dg8#=0PHf=V)O`Wu5r=d5lTM;7t$T$RY&#F9irzBlh}Al~jS zd|NhiEW%kN2Q9U7$Ou~u>O9K^3%gUz-59p9>g1zoyEHXZpE}`dt3A1nQp|5Zh~J|q zp%DPSeY4b}{hLSq4UE~e|KMYYA?Ac=b_{L~v(da^S*iv_6$S@l?Jhla1^S%I$Q_S5 z$#R+iq)_n9xm|+OiiWsDrKy2?Uu-A+sL=Y8?zG!^HuB&9cdLSHl>_ zCTGtjr8ZnRO{ukJXvSW`taN2W<{^G3K@>i~P6QtR6HAqS*@1pqgXyD`gtQ{ULUK3a zoe}$Lp|aSIq-+H_j>cF^LuW;5CXiKS_l{dK3K~55R176PtVx^aV3MIJDzo0FVB{R- znQ0b9Pfg@{^rg}8&X-}qu|SI|h25|$LrvV|1F>eCYrWiktoIHI&WYZnGQCMhoLn9~ z6{G2p=>N?1KLaFX_q`g3{S`7y%NSp2Xt4z0f~ z!-@>1cFPTFR)(4M8BcxGMDm#YuFwWAYuvNf6F+@|?0{q-F}ja;$gsmo)3_?H*Bm}s zMMQ(XpVm}qE9&DG;5sjs$|>|#3|_I%Kqy6v{|h1jBN2YhL_Tcz;HTC-^7R)09kIoU z+*JE}%Q85dDQ}~fCSr_-*m*32ybMVm*g5h~yxKv1w1bE-MA_26I6{lsjE%o7%q##l z6L&U8Kl<@g6rv9#j~DqEo`~A4xM$l#gE8$5PpeH_J7h`i+FnJ97JMqSG39 z!baq9r4wxV_}LfbDc%n!MylO7(@UmWpFAsgm#ci;0L`pTqumU#g=l3#9k7ojo<&kL zjhS9PXP7C%aHC(^%agklUs(Y1YEzfmJefnFtKHpGXVfDim$(pu@@@}|WzXbsBPvyJ zbY)?~e4`(-sWK}%sY~~9`j4R(pT)U$uBjEbUru|p6Toc&Sc#^FB>jsA8A`o|;?(@; zBtk7*$LSSVS^o_*=TDy}B=jzF&zbvuJ&aE@=u4l`qa<}a^;<u<>u{}fzP3>gVRbEEv`SD4HJR4X%4A}boJS0*1vG!B7nR=`Z_e&UpEjNrk}7ocaaG@9#H zT#$`+?c4U8AJYP;LFj>9&>MDj;YetiXwwCx`cvU5i zy%fRq81_)it79-jr=z4ytc37CL_7l1JDBp(I3X>?x-nfc^@w;rIw)lCR~X@k07SL{ zOhvKe2oalim1KLY3Q5bI8D)adT+Logkb20l!hRKl`s5&3yr-b?``W^5lGa zYciq$!5h^@trI2@ca^F=Qy18|s|l)jZ=4Yo2hzt#jMi`_c)^+H^-<)$3kMp0YozAs zQ7%{b?j%z_$q?_6^m2AYU(cOO@jQCSWAWY=#qb5jZ2>-rW^CDO_F=R=SX~wjZxPQn zPU&-r8hYLldLhBiJg7!utH*q&S*ofz-Qyfn59rfdRSG8GNo=Xrqp1}P`9%41n&o`? z!hRv@{GQjUuvisVt1>NN*`*fC)eWcz35sGu;U)49LN0;Nfvn)J=%n8(7@XWAN-+mp zJf$manWZ(P$;UPf|AFU8uq4=IVdI?hXSz7hEUdS*OgnY3w3{}@;m!NUFv0DC1TWAC zN3vLFxkzaNY}w%8GG690ht@ zLfd0SFnq~$>G_kru^qDr#WXF8-luxD(`2Z$j$@cJ^y5lkoqwocpU6i}v+P4#!LMF^yCnk!_yL zTU`PaBkn6z0WpH36v>G*?oQ&G&H!%pl4mRPVLdrMvbDn~=kt#iCZ$cFdT(4%1CI^# zO!xpd6zY+r=m|7~%Q2ceDFUGoM`835uQ&Jk+gg{7X^RL}HA^>Cc9Hwi@&vM`sHLq4 zv_zQsJRm57=K3zL61)R1Aarm!!C`c+ZOac8g|AN{inlCbt7j@BE_6mw+m1tub@XQa ze1t^B_IzZ^>Dow5a{H8##MEjw{&95I-|l};7l`ZfiRKk}_u`#IK<$7IDG`yCd$mK> z3k}rgPI8>8D$UjPl{A&N+SQ57@k2yeWTw&$uZV@CVq7jeon=$;i%_Um)}3;~DJR%a zG$kXyP4b}{Rh)%Vz*+PA)qTkqn&h$kNL@GTD|*sM5_T!6K1hA6d9{ebqH9mrK06U;vv?9b{BxK4eFF8=^wXrb`f=E zP(ic)MN%cEgBM@O23F9V9QWTVS2`Fp+6v{R3(iS;%h8?Wyrm0oOIaZpC53tt8Zlc& z+fhMUn_6^Z8oLJlhKT>`zXoX`JckAQUR1#Pd-5zuhS$J-pt-b^UZrbJVD~-y9Pg;x ztKqaxI|==0f5_3+ZRGwv(=@811$sS~voTG=FrTqa0h+5rvmgWNQfBkS1W7jrCX|X8 zo^KUC1Tzhj5w84pOL(s`4~i{+S>Pa$ATvZje!s?cfswAmy1(>6@H$&U!6h7u_^kd^ z_*JbWzqhojfH-J31F=U*7Wr-DMcz89g#M@A(wlKV;Z^eI1Og4(%aU)G)C>+4SZboL zK--qO+L?6AX>>ZZS4;9zIbZrosIm=4H;FRjBq1=Sf91q)A+=9y}N5&b!97S_5@%Z;Z%U$b&3oJn7b+rKW%f4C*cO#?>W?^=hZ|E{+3sOqx<3P3{Z zQbb2>+X}rXJ^GdYMD9mPLU8$^ZsQmpccUr#7G88xX(sgA_SaP6ngnkhsCOwx3IED< z65XL6dLU#axdtAGqwRG#qVjSJDHV%w0A(~i5{n&W)Et%Mk8f|@H;+jS;7lsnv$q=Y zt4FsxBTed5a3{|+;!PU8A>a&zpU{|K(hSpO+x+k?L)r_CD9U#rY&oxSIs-F8n^rY$ z6TuJ{@P(`Bus=eoGg=_qpUfc{-E}CjQ?3~^QR^1l%=C;XF+7*sGb6F@4>b69q>x&t z-_|=zF-5)!(Fao*(>TMb0*RvXtW~4|dNHZIKI#!BT=Wr45^h*4C&~|5-Q1#fR;qj{ z-=wV~guwMtv8wxcLTxBUgg1tif=7TFDiiW_3cB5rvaRqkyupUUp0c@ z6d7sD(^91nrV#+#-UPyB@e-2Zz}&1Bym!UJWoLQQi!YU|pq#OVASsmOJf}fSe(Jb+ zmhEkc*4|xQc z3uqrvu1>@BbN&oF{vCa0-lFKM;OuoS`bZtsyasQCawEx9@yT?DarQ%;PW%$#(gXPU z{8G~v25X%T5w3t7iR%^*)NqaQSE(NiB$7g_@fy|owddOnf}Lu5H}6+aKcmU-B}na| zDASm(#T@}c`lr%ft@IQ6i8S#nDpLr+p$U#F4T+?7J*tRNy_^P#_A1o-E-PC{t0_<^ zQybs^9aYX++Ba~eA4FmJpPW^+p4TtpzL_|5+K84{b5+ydktN)ainpyY6w&GV9XVVQ zIhRRKA-9gvuhVCw)*jqbb5z!>z-a?9?55dj^M$pW=Jvyx0hsa#vq0^Y_jgnmm1pX9 z(jRc8J*R}rF=z?_@lwDF20$3RUWgEq9@HV3E`4pjtmCZPK*r^(0;?HA4gUddSQZf* z%GHfSiC~N!maHJH&P}r>jYa)CW8v^sV{kCbshu0Y!u?f zILUT~(?!jXR}nK<9$;Ouqq9&N3yTW$TN>I0-vNiIv$elt|BDIsUpRi!yi#t+HN66F z?S6NcjmEm*{!xdg&Q8|ivqp%$-{T|^9D2ITl-q$uN2(vLvc}BCO+idm@0k)dtMWB( zx#b~pqw{0ayDX~Lea7}QC&JfbQsfM%H19Fou5=#_7Tz!qV(Vzigv#}1T7U`5WMf?U z3SPm;P`^KQxx4IC&U)&0vA3suOEkIFZ6!a*_Lexv8DY`tfRP~lgI#f`=P}`$De*M$V{s6-wzQ%t{PE5 z+EYB)p9D>m@x^$z%Qc`)dV3f0=9y0yCF2{Oe8veEVKlMNG3#ry_Pr1Ov(*Pl$F1r0 zQ-b{;G-4{fr#J5Lov>H|DS^`G26+wPwp^14WMPZck~a|t7QOU4hHaUlCu1gh`3Vs& zK2E92rQL5jucy>(->}J$x}KN94XARLN_AwL;3Wzcr@5!;E}*)%Ep}U(TXPBF6@(2RgcogiQ<;%s*jTLC7^pv z9=+L-v!2U^Z>56FDoxeSE}~|46{>LIL46Y z(p&_4GHM+sDhq!CY~Ts(zNOOXeFW@|RE6^kaio23l~e2be!UR&g+raxC4e zB6BA5Ec+li1+IVU*#IKq#4>(nSEK!vRfahT6m1FG7*7{g=$KnF3+q2ItJ|lvMIxih zIsjn`eRlJ|0)mn0IbwQg>RLXj**5`7cY!oN_2?g|Chxw9zWi0E$*I5`{MUuU5aRC# z!0v&jUD|IuCT0Ju!Hy!w;LSZvqoqW`qz5>9be-i7`7DYFsFe>wi#&u`C&r%SHC8LZ}v))FP0FWg3!1+s+R$uPO z;d9Yc6$UbLJ*MjyaiO6oL%VqjgCUAT7+a#Sa4U>_U?Kz7*^0}gZ?Izr>}0BefT^uYZ$i{!M}Y!lAWXkOHR z&!LpyW_J#HwUkHZH!8(^`2JNWToe$<&9 z?bW&o{+p#5RygXO(10wBm8g-9G;V>HuZfOPd{(RJq5gMA0 z9keoL$v5*pjBKPM*mbz#bX96UJke?uno& zDr-lZTfY;}1OvOQE7+tWpaE`_8)jeF`8tD)g?6sv2qInI7AK>0V#wGoCC>Y-uPd5| zUXE#FMV1gE3rXgHy$3G)41ebT$D|cfQ86>vS=nJI4(|g~~WwJsX9U zTbBYH7<#2aI_~PZF@fXb1Ba1DbwRO_QzVHb&^fR3S@Yhe8FuzYY;OQ3kAddWy zKXW4B#*yrg?FJQKBU?!=(9Ty7=|epEc0t_p*=n1NASuw1fn*f)8WOPIJdcW;^p;3* zw}_2YqAV=KtWHNdt|hxyGKwpO@J-ChG~?S}^#FO!u_4#o$-y(dcryhhmu{j46-$(_ z+mUYSmmo5BEy_A8n!2h3Pyv5q z58v&JG3?p&Odf}6w0gPW$Ha_jr3l0nFOZSyeJzGJb)dgho$x)n_q04aYDVBOp&fR& ztXvjaB1NbSj#RBK`Ypo;NzF5XG_$$h&om8TI_Kh2-a7Au0y2_AO}^dB#VPuId}S?+G(lJQ3hSiWydb?mEc6JrKt^@RT`HJoib8*%BJVuUV9N0} zluaTYMrXtOMA;y@$L=8rI+VOuKT-xrPp=cM1VY)#$+aqCowjeTMnSyfPFPkpKLLr< zH=@2-`$4;i*-sgnP-SNnPpFE+x1T@A?>+o_g+^0QoS4@_hc{W_qkc!IA|6F9B_dsd z6#uVSEPG6gpYH!j%>OC8oii|i(Z#R6|Dg4TwBga~P%hCkUg$4f?lp`K88#kJ+`KEu z_SWL(AjYsvcVVjJJjQbaMB_KYOg_O(tpZtVn= za8Ct}OHh%2n1%v?iQ6Yc3?W%X+0oBF{+4e2s$m(%kFgT*$7hF$)Kah65vDN0w!(tm z{ysx9{vt7hZ~kCDQM9JtP@Vx&14oO+$xRLsjm-C^#5RX*iEsa4 zIbL~@AQemCYurF3FleLK)0ht@*!E+W=B&~D79aj=`~6w8zfH1loQ-oI@e3Lb z1c+|gbxKaQ1vimZ;Wx~*9V#L_afFHE_0nQ8qRnmxF6h-xP3o&Lk2Nd|bh`#-A{)~e zdt&k?1xPNbp0t+;Wg0>HJ_l)@)Zgg(@Tz(Ut{*wFy9 zOS<))VU`%R{7Zd+C<razuU0!k?h=*#9peY_$$h8ZR4P8yh-uOEof;(!4s^`NRq9Jc0EOV= zLR|WrQVY6Qf5NE0XZ?ChYgM=x2C3GsX#D(YTY%<58&Dl{Nl{}T2rc5`^yJCo!)u!- zvFCkQ5oBcKk=6Z?J_AwkWQ|L=2b!7b-iya~kYDDmmhZ~5+==7E7P57OlYv}KXEQn~ zIb8LEm~io}j`b6;BD!4xRL@g{7kCuSlsQWS&)G{N&HH7Ugq0jE2c@WS2R0-GzXE_C zZ_E`1Gb-%IQwG2AC-lGjJ^pe}2mcHM>oGGil=5!A5vZkGWIn+hI>~Qq#553pXYjtD zMNhs+fmL57oFuMoheRhG!*Zx{*`7ZUn>E zEh34sL-o_?#dVJrq`kyItE;oud5qCSB^I*v@*!~f*z_^VVN$bxj-8Jo*gk>+8q|JC zeD$YYyh}0Nh|YFdmI81hYKRz}Apj(-NjCbNo*Av2ij4^ScU&gw$ZMl|Gw+R;+l9o! zu3#{k_~-+^1>{}i2|Cq=Bc>3bNlJWC%h60g;PTY7a_5sSDv>k;70TH&)j9ondhj=? z|F6vbJI-%M=ZNtu-oUIz+g}uJ2oZY+hdtYR$Z>BKeUxt?@?l;Ad_QkBh0fiEjW({E7fd%oZA!>~OHbe5^XlhVc@H}PPWg#V7>S4$BpNBgF{ zs4YyDYS&tkyUsa?Nb3hXx16=y;g={A1No46=3In-;pM--0Yvx%c1KK~jySB1ayNdX zCFXR$Qh{OtwNe?kRea%f%M?MPuxaTp$Q|pM(0A^rNVw83xer9pXmIfkkm-;xXkSP7 zD7R!v6#d*b(aXk|4vW?&OZrX4m*0%Lkwya}()5}K#dK!OiCa)y8G7$S<+l7b^^Vsb zWmq$aen3%Fj*Peg-FecM!<`b#s}J$)X{N(dS}xeWpoNY-B~&rNy``duoYYhz5@~A! z>b;Xa(4b-S#~?*W@>xBR7rz$5b>d+)`}q86V`if8Lpv~C zD*qwI#!Jw9>-t@h1|M=1Uah)W6@F5;ZM9de#e>O@j|HWW!7#Mx_VbtOt2zK7aYAbNYcC>hZv1fM%jc#{??5PMtg=Y!^wS$CMv zD@!Gsh!42PH18&qpl5a@4`qdYG+ZV+io!8&8-lO@J+(s>e*ot9x3pkoMzAyt8sm1@ zm+2*6`>BQ?IJWk7ZBWn{<(9}G{~n>J>*&toahHA@`)lVI{j1KXjd z<9&2aQ+J6ibb?&KOUMI4?b6haXEo3b&7@PHzwmOmu2kk(E|hhjjBAZFL7Fk%e))RJ zNRluDp@>GZ%()-;)+F;LT+u@@ih01v>1O5S9ranC+%!i@N(8&;-WE$i?n^KIu+fD8 zSC5`DRB)AdlZqlsgBkbF{`iRB{;Rv+^?pxL$Linv5|R;c-m}+cG9L<$RFWAkhhOWV zqhC@6htx9qq*u@Q92nHsVay@AwVb0da3aEA6Cu6ajX+6@5e@N3)%#7$;H~A1eI~@< z0y3i_(vqX-fr;#R9xtt8XTs#U1r058ZFNKO$#&;U+$&|mrSddt*rq{K1vJQTl-vB= zpG0s3aT`LW$P=^-Oo`js@{)dHW>c|nPZ3dpe9su+G=o#77re>Z`a#ItC`=No;$GTr zPd!fWjbw@kD8*9k3;*|?{m*Ipo#F)*Z%)$efLF{c($-0AhY*7XgNMqkva?w&Oez9x z24fFLXL{pWNh2l8stHUe0eK?r`gp1J`;_Hdi*YP^F?5pNNG=0=hJXYGVPZ^_j+9Wk(HNxV$?*PYdli!%}?d$MkYma_t^jEO_ z=u1P76c$>XYcGuqYrr*}q`!Us`>q8#WJ^ZMK zA{`)Nc%jh4eI19m&_?q~K}L_Ouvom)?QglypAF{tyNOcterWX1^yQen+`iJAv8cSx zO-mDB%Snjq8*bZacnJt84kFZyv!Ehmw_&1`GJ4&i=4KD4%g9njQ0^zVQ~7y~7wH%s zcvBI%fi{CY`}lY!OV*HY*vCBwc_%QmUPGAr3`HDmz*%GZa><+_Q(v5X%%KJqf!RG< znC4RltL}v@{mfS5es&c9*oiTPc$jmc0wrksNL?o?^ke$t>lKr;jP$A7Uuh*F?e~?G zyDTVZ2XgF7hxk9n@9=PVYE#5zjjqNw8GCzw@th|K4^^29Fg5PW)@)#z@`T-QjBV^z zuG9-FuziBHX|N;*jaDm>ydk*B%2YJ|x+|LS7cGOx`4_Z?3}D);-x?4Mwu?pkR~KdA z(U6SW+T2u3fctt&jJ|-gmxi2AZ@R(8;)S75i7;N-&aCVTO)eUwcgCx;0DndaRNhuaznds1O>y zBW{e|vxXDQIK!%_g@+T#sh-+{BS}5u5zY&r&J$5MEU9pts7oC<)*pcDl-X7%cO|OL z2SE{*V*lF>Co2DR-6J0Qj$h+aRxJExqggo+Lv#=)f$jm_x}aIS_Cwnu{TOypK9t#H zFujIV{{yfb>vdjWu#s~~RvC#`fvFGD)xo4^H}1q$+&tfrK2^A!C%xa{G)akyRP3uE zE^~@Y3pr>q;RV@`8MgiJT2N1`o=GEEwphsdp^PL90ozD?NY!tboG(ekx+__s=Px=* zvd7x=*7|n7bk|st|B}e5Sy#)ILF~WCpGUgoC<+=%5HdaHI#l1^5j*l^f0 z{;X>v>~Z3=d3!SzNV;8>{MR!7_wZZhw5WIL2RiyDcuPG=b$&Y|IV~ZF1HVV-=uC)V zk>l{rn_E@8TDYMt29}K)HaSmht8Q>z?V=MnMfM$X&=*AF8`_<7si&GFrCAjlmh13L zNptq0?H!=(NS?cMb5T`c1~ag0$!CoNwd64u1qrBA*s)53zTtqPg19tn{T`ab;fY8G z76dOCOIt(){c`F~ee4Y*?h$#(6B-aRTz*Y-^q{kdfVd}OV8LbUe*LH~w-{rns>UQ_ zD&FB*IV@T@H+A_qS;VTtHt_?nnUNO2-wjItUA`1dbYN$RD~dhHv)hy}&d@QJbbFXF z6Arxg@M&R5Uy5bmqxK>f0uB2o^V~AFcEyFhpoA=Xn8;b>=iIvq4>TZfqZ4+E8@KZ~ zbk>d=5Y)crG9O^-5c7#Y7a+;<%#X z8o0~`=pT=1$@w&djSD~Cxw+S~`go}x;ayDak#l5~-cx;$d`S;*2-^f6yhiqX-_4fW zSjkNb6Zwtz!p%c}l3?#O?|r$C(1=0jmet5~ZW}Wh!3`ME9iV%jq*})E%RUkdw*aSag_1(J^s-*C<#;V*(Q@`>V+%s!1?%p=T zaj_FCeHn?-Oxuk_xSNBCRmBW`R`Z2vy@`~tPd>1R=sD0p0)EKD&gGKG3%LvEQ84sn z3iAU~ou;7gsj&2ot{xFowWsbU+d>NFWbS#Qti!VQXWA4LR>msEA52Kn#R;`?b$SH4 z)?>FNm=kEbdogI}`d>3{Gkie>=xdW>oJH)s8Y#P0%clBMe=)4z4J_{dl@CB_mU~^8 zxVEubv#U}LD6npv`DUCSP;4tYZ#SCd7+@w;(e;-%N<#E%i*h=>zrlmM-(LFk zzJhDK44bLCO3D&TNsM05WKY~AbBq4~)q=yB+_{zTET(%<^~|u~;9E+{^oK2qGs@e9 z2JfgT%s>gU3i3#7!l^NG)^fj^7Ap45X1UF&op8gt<5EvpCo1)RJGZ4i_^ZS34pYd?LBu}R z{C|lMmA`fQ0Pp>Ke>E?kTZpX>+D^A{>WFw>O&V~nx1$-RZK#+{D+keAu%`G#v9d&n z-N^O4_SXZ@xze+o8D-zc0Y&v6(zb)yKp`mOJGvcQF4YrLI#Uv%+BwdQBd7?HY8MVN z(Jfr)Iu?bQt;6IbWJ{wUaA`BEbOgYD-1{s~0AoDhRQz4c6F1Wi9V4z>!;<^3X(j4# zXr#FV99NP5FsQkgaG2_FDHyvtiK}+Yp&&}!vv%AHwdD=|L zSAX2~huGdKySPEng}=tXSR4x8bdRK`Re1`Om*@<&*TZ+8sM;UuL!5Cz*XPJ}qL1 zm?#(paU~$q4s?;5!q#90s5+_QMfu2ErQl%nr^yknEZ^keqEGJVE^+E8c1y%c?eq+? z5f)Q;*1CM0%A62b2rCMgw)0}(TxwHE@8L?7g0CV0%& z&yEp7Y>PU&*;E;fDDBMN-Vw(NJ>AntXT)rKldovVKXnP*CESv2r_#f!a~5o++K}IV z-_x(?M8c0wo(C;KiGPk1B&N?4OrTc0vCCsf!_FHqU`U>wQPLSxQ+>qDD#OAKNRVZZ zH@gGOlUZP|ipN>i`{ArOHc21bMCC`0L2LqFN4I!{mX;94l)jSKPn2pvRrkj~Oo{D_>Q zHZ;m!uS*~u-Cv@qO-SNqA$qPw$UL^Mzr)(jZU^-_j{S_UsX!QI-17`1**(g33ZD&@ zQa!9InDGNNb0JAin|Yq3>J1#JRc0-)icj2C41PlQ>?TKu4Mh{LZ&tw@Tf_RHQt4yc z5Jnz*y9>Gw%O7{aiBeAGP#+fpGB4}JXEW9s80svBG!H`CotFx!* z;?+^{2KEzg;?~W{VX+z0;Yul?T{B*>In?ql7c5dx<43fu z0J63HzufP8t311=M#!=b6dj_I`{pXtyM4#UO!)rJ!=rJZ6)(VcVp;$ZiCA_xo5>S@IzAlfuVre(BbU#%YbnRDrjKADKGp}Dft*Vcf=TOF?ribv zDn`=AgBer=0rZiene6YqXoxh4r(bsi`gf*|K$9bCVY?zZib-)&!VTXeP9#%sQ()~^+K5Tl9NDp|<* zoQS$-J<2<0tFEc=F=@RLL3AAI0-DHK?5pWo=_ZoE5oIb=~mqqFnjbgjVmOn-Ey$}fEm-$X?q0?oganfE0OiT)y` zZoDEp8;#K@fo`Nf1-&l2&+LEBh&A^GP>E+R4}Fl$ZtT;NJCFguoGg~+C4>;1%)_{g z97s7O+N=geAMLKYsa9E5m~xD-m0?k4uU6equ;I6^l-Q9z`ySqCi6cF5lySuwP!JXjl?rx!mba%S{ znQtC|;&Iiswbt3^UWsdu%iC|rNFz5dFJq4t_s8OB$JW=DGKf(Nv~=02dECs^$x_O) zZ!Kg)P*Xi{T?mbEW7FNiaBRFdC+dE771BF;pq#U1+`KdfJ<5F0p5LL$1c_eFcm4{c zJgDYh!R@&CdoKN6f7;DD>G8`>(*tVW7P=32%0INfF#crBeRES8PtM=h{-HXc6w(ZE zyoxG;Vx}yac0g$1uAjwgLRC&pN-C^@8c%m?xe-|A6&GGTDRa5lafPlMKuu zNcJYb5XZU*R>;J03R|l?wY~c%yc#X$WTZh~gm3ME$j}-R-JyL9jm)|yN)hRk{vqL0 z7UEyD|9@!%YOlb87svy(&As86^OR$N0|^f5M@ZZ_eQm@TI&nk;9fdFJ{b0d{X~;b> z*@&d~jMXUKw(jA*sG_{l$k#JU&5nxHXN^+<%@aN5nLVG(Op&Uwo}yz}pU>6{0-wN* zzi5VSc~((NBkqb7aP#wT7$Ys2`-Vtv?iJx93SH}TRJ^6#&m=XI7FKGS(GMiF}Wu7@&VGkRJ1D9PuYEfBf&G?*asRZ?LT{ z-xe`U?J(!CAwcE?S23A%c#2&=8c0}RNyW(3E+oO$pn}z5I*Vhkn777u@ZcJyU~Q#Q zGb2o_=Y5nXzA-#APM*ocCI1joNTEG72p3iv2P$@7BaeRc0lFPbQbHDr2`jXqX%8tJ zOPR>bcB!v%g%++r$r4~=NKk*o_N z6DouWD(jd?Kg`JBYV#uUb^z`0@XL#sU2Ju$b0-&sFCG`Q!WKR+mMZW)E`Q#~J{pJI z@!(xS<~Q;98M0N!+(ZkBB3jM^P2xT@02cNF-7^5o{mf%_Jk1$I3t6TM5(Lf)Vz{4# zFSQLSLD`$aw-%(!dbHe#L2|I)(;qLklg+vQK|^OGmzYiRWems!o7&BE(>oY)Wpc0h z!>Bn11NCF{*+C8qoITary!Vf5@H?K^uMWpY3{Mx4alotJ3lHv|aR7_=_t?+BAG-eC zJb)sDfKaBnrT+PP7C4D@WYt88o?VB=_Zz8w6!;jI&C7stqFY8LWFploxuu=S@+Ku^ zn$<7b_Co%eXgE`GcP(lL8zT(UyuBzCQVz(FJ~Or2S-IR@5bo5No$ zDHsF}zHgvq&j3f)acu`{^JJ0|NRjd0bX0nTR1U#muOnVnX(5mLX+1>2lk# z4Vj|M&vo>C661Fxkx12Q1|3cCOyMZ zm^z;_ZOwjOC+?H8q|JuOEt$Z5b#o^DGVH3yc9D9`-xtFug^2 zyg$5~;#VwdYH@zwgnm#OH{lDTdxf!7!V7(}*#l9G{F=&rkfW&93ohBZFcn}%iIRA4 z0h#GT)vI=(mx5!#L`5RfmgGkYX z7@4W;8kpo&`<;+**MtXg*atbd5@LwySgda*UjczfBuI4Zbi$qQ*i#|%kzrVhA@BD^H5Zn{3SZj^xe{vdt`v&9%zIAj>GG8?a^X9-SeDnU;ovF~1 zy+l)tE~k(r-{jA2!`h!RM2Murl{KsGOfri(;+%0WPARtb%=H<;7HR=>wV% zyUEzf6elipn{LDyCvg#fn;Qe*oS1<-V!S@fY_WA-Vr@j9WPjtdi4icVDx;Xs(|6Ex ztx!!UNG7P!;49}PwZ&F5qRe`&bt$M)}s&3_TIJz)Bu=r*59fR)jjzImMTop`}!+w z3}MU06O4yXWUBLUs;Cea4XX<;8q%O5IJu$Jr9*QXq9d3g;!MG9<1a_*$t7N3%Q==W zJXBrUB?`wnGmv$@V89Y`oa~;fWt_M8bay0!O0nYUl2j39Of$#X6EO}~_t`(y`8Vs- zSC-CjsK9OtU*5-x6VUV?gaxvTbD^s3Nif%xH-Bk79a`$3rVbSF2?EX-z60AE_`76( zXR$Wo#`|yJ#Z8w?e46?`!*V$l~Gu26v+-bfyQ(L zO4G^)hsd$?k#2>Btwsl@I)F{j6)*fK+)Gt*uMa)QRydMn<YE>T9WKw?@-d02He% zhb>M0WD!KPL51V6o=;W-?AQ?HDqNNdaYl`%I%s`0xeA*ZujeNi{UZ(w;r*PdCb`Q| zE(4nU3ZXg;RmDxZqEAKz!w_4!Uu>Mu;-<`giDe%alLvZ{+3IBcX#I?!As2^g zTJH?XT#wBA(pH^NjpQe!3uztLmQOonhrMS~56}3WvZNB{Vl4n&cux}09QOWh@9+YD zY{G0Ba{~_tf9nQs8YOIPBD2{anC>q(YVT{O+#FbgE~DN=+r?#<&TTttfgNYrg{t)% z>s+G4M>ZXI6{RAc-|{%T%-0Keq-tUJ{`B8}Tatbr91xHRIMeD)-(3S5gM2>f@?a+&>Mbu+h)`ntss&ra3`OTuCB{S4;YMzisDnG(AtdqZT zdy0mkU3D{MxBXFEx|q#CO0VocsqnV4cBGj3}NZb z;M8gM$B=S@8x@~QVzW`K7H+rnMG%3}pWd+n2Jzmk54XC={|z1R;c+2y0a^dB?v#cI5anw zAHp9+@#3s`C{w8A+tR)-k-KuA*lfA)K;ToCkpOKalL?JPRWl$T(_pyWtmUW^O*?<| zOlwkT#VORbtfA&2OMMLWY$kYd2lIJ4Gip!kQ-Ty?H#U~km5B8_k^ z*nEBLEm$NP`D6pu(%s(B8nw7`!_QXd8 z_j~e&ke;kaLpX)$alIXp-X2MN(uJ-n?__`7iXvYEeopGbU}wL@->sDZ2jO2r_)d=8 zpB9{btBjIYx!U);P}L}RBPGjl&A0>0VU$vK?0Fw7MFQ^^_jytz@tL#55pjh^^1dW1 z7gCd8N7SYa#tCx1b`E2|rlc$WfRzX)QtCsW+ivcxZRkmiL||n434O|`hQPS^xH9|1 zv}ooAZ{sy2ceU8!Zk%d=n95rrrsBm|+MKe}5TJ=}5Dm$?lgfwn6aJYxMBHXPO~rz)2p4{_dtrMxj3RQNvo$AP@KI63=QGgsBAt zUU;I2fs6As<27Q!PAFBI?`5M)E@IDiK1vQ!pgzx81yD!6YVVU)r1SV~g3voXd$N3A7Lb z_2@6U~JGCqv*FkCzxKf8e_N<55|Yi?#>qI&G;62K*Iz2pZ8y5-K6aW2iOQ&Ht_LGR znD$VJhQaI-qC-|%kVqY4wl+6J1$!vqUkEwZQMnRUd#I(L*tzOMsQ>sJK*6sUKa5VN zZnX4Ha8~|eJikNu4>Ta?Thfj8llbIWMLOaH0+B~-%N^qDooyS99%sL2!-)!1!f?$? z99yApIzwK`7g>85c=HbjUh(5)flbc5;^^2NkBn5wU!bq){k0415E6>oYYH(>=`7A& z!FT*FYuQ9a)_pd~y?2~+vK5+Y3tm#FTj)pKb%(Nst4?vBrXg(B~D& z*G!Iv&Dvy@t$uom4fw=Rq+0()?Jq^vh3?xY;M!fY1&qGRx)-8?{H{(7&NWcTHe0y6 zK&nB3#F34j_3Hf-g2;VRG3YQ!JgJJTJVf;ex*0z4xFvixYX zL1W7V|4TFlzZOI`n2^FKeIlV1AUxf8Z2wbi1O!WEApJ?@_!XR8NB6Sn7_j&)VptYWk=n0lYvlg=#z7SmAEC#97kGReH)zCht7V=;#HfM zc-eq;O?5=Aqdj)M)-xo0=(vTqN7rMJXnHqk?jmB-j*HoiHi2;`xf2Sva>lugZuMZr*00BTUvI(x0QPN)s zjNORi+}#XmY%BzE{rKNH@7#T+C;5I@xH86n8U$FDCXG!*XbtTgQpZA35;^5^<9Y7Z zhhW6z)Bo}_UAx&4>aFkGqO8}udw;^yj95YEMz|`cQi7c|Ou8QDj+02-#u174gzRDa zt|aeG+W|JN`fwSy%hB1>&EN)uw~xx+r<*R%qYB@iD(&8x;!T19X~W8a5a!_}H&~)C zZjLuy%UA4{>Gy znwg$6S>)-0+|0g_8%a<>kzh~68&x>Ky`s~_1&>dvxHu7ke&RXr!lWGZb-iUICrfUoUW4P8?m1^!KViVc$+jiupC4`)(n_U0?35^;e zY?!F#1)f^S`fQDwxd#keqGs6g<;Ew1H|c-jz7xHN@psUGe7v_R)%&hK;I?vX1vxWV z&AU)Ce1BE57;ma|5tpJ3UF4^EeqgZOGlG=N$GABI7%uk0dnt-0T!Dd~RiTCFu=gL` zA=w{`w7=_ge3ZfNAqOXOD6>OVZua*mTs{6EhB7e9{zm1e>y)xG4!D=n;0Zt$-Nx-Cqq5T@Pi>&!i= zE8*!#x3@SGUNww3iJzdLQ{SnQBN3|*oN%=0MzOMm$#H}KaZ)+mO@qowV3)cq9Qomeg|Eyms^;#*+1vUAh4Q#S47dWwMgq9L< z0Q4rn?8s~!r|o;Y-q`md_N4rkQluGo>2s&t4#yn#;zimbRDXk2X{=F6e3kemx`ZfQ z2O_8TS-;2rnJe?V?m%(A&HV}(8Eq+~N(G4h9P(H!NydK+@Lw|!$Z!e#nhJX$m;%op9+J_j1asJJieMLiH(NuLk#9mz`257 z_&rW-k|2qLv2jf@BvI2|AfCqEoR!0QCqV6L7n=<2j_jeG4b{e>7Du5Rar8{6dSi-n zDeyDA{%po&3ySwr#ZgHaHTk(zNoxn;2Zv~1<`4WV`lOdWE2TF9St?a~bme)qeA z0U>`=hpcS@fuS9=OpBOJnT))2_lDc7<Vc9*t_^NJ-jSP1FkAlJRlPnAuw990LSU#sAv&_DI|Fx!yFAUHH) z9~EIxOY6w_9{Aa+4#SSn2iEHRdIWfdp2KY;yKg9n%b}Z9oK7>N93Ix;xjy}1naR2$ z!qpR`G;N>Z1!sga%2{NFGJd~9zcTdO8Ty+m{rL+1@;Cuh)b3}!*oQ8pVEzRGkHxln ziiTamIs5>7N4rAp6s|JNmUyXALJzs-jnj`8r-7RAxJE?&KS?qtM#q*J^IhmXRqC+Q z5%$u#g%l9iHyss&{F$`JmkJ(ZbDv}x+|#pv{8LIp;G@!cqYeA8b7dW6klhXYi9g7FXA; zJ?w|=0U`%jch_%vl=OF_qpvHZjJcXj?T}22L*HYT6e=g~!WFzxJ(J3qI-N7uRIZc; zxbmq8EYZDDsIY3bE{{rCP3fhg<}a<_cqscu3s2TD+5TS zVn4ibc#d*bMuo6D&E=?hmjjFIxo&bwBT&|+>Kq|fR427)HEy_*Y;ows7%zez^O9+} zT*2>6(zh$D6`v07KmVL9FF*C{hMkPT9T2yx;P{W-zJs!N585KggMa6{S$hO8Q3r!g z>gp2I@nUkUWM=g-kP(jD_490yAM znnj7`xL5%v12ia?H$%sMFpuDbFe`@=$>mYvDwma@bb`e=K{Lk{Wrs;4GbFPF?Li4v zMPDDj+qIvrqHlIZe~zIh3nN`0;Yviv5^6uieUt9p>Z&Ao`^SU^>I?i8GXYe1;Jv^A z@Yngu6OQEd`R2`7IfgBNI%W;T1@E&ZD_Vf`&EJ$0{A z`^r!}j=o_zGfCgsR?e%VrGKG{hx0sZ!R3t?m;+NrahS45ICLu5gt!S+8ilaJb{`Hp z@tQ<&HY>r!A+EnC9r3p3|7hzlM5@a*{KpH>#w@3~n?l!p!r5fm3j)Skyi=ife(=r? z7?A(%tpY;==gZ{rVIv(QR|#KwhOKqG&|xb3C%^k!=GZCdJv4}hslTb{9LnL(x*w(J z90sa<7#`)_aFnPvlc=^=ltvVOW~!es8=yx))6vbjyqrHuHLn}|`OKKQoW@g%b}bQH zkLG*c2Cnv;e1A~baQ(T4Q>4OmMPfMGnBsOVO>rD+h=P4Ci>a)A9^wRa@H?Hf3biFi zt=JduIp(U^>5Y8tFKrSTe7RpH?w&N0NLFm{*0PthIYpGb&=t~^4`<~-^a?7=OBg=} zyyNj$61Ya zgTn^K!)>@IzJk&bF zGJ*322!Mu{bUdWL7W%lsR)ta~rJUc{Cno%q$bULXq&av66R;PXwnAVq|3M|(Ln(On z=bQLD*iC=^3&edraQ2PXl%Ci%uHWQ8fR1za*$Gh(i_kT7guLIKF~wwf7y&te8zERQ zLEz_pjm9_D>Ie|{&!Oh@kER&cGk=s~`Gw_ zfCJAgJt*HWSGMN7qP4Jg{VcREiZxRh3M&GB{yDmkm4XHlzPqP(q4k21mD{xnkLe* zWX!L^;nx^=TfM45UdA4xmWMG-U&S|=1!y?@&PXu=sTDyy$4V3fH%3QIB0_%{>9=3a z&z1n(-S77`2QD+OG*f#@RHZ-hY#GonJ_a05%?_<#%b^~sgy31v33ZA2-jm%>Y(t5v zmPd{3?Dx}YOb=zCuEwWHTiDSF7Fc}a_V(!Og8%E7;lF{x;PIZ@qg@y9bPZSrsK+Se zFrZ)U)cLDN?_DmodPxfrZOF^xY;AaPtKN#U_Xf> zcLdMp1V#IU0rOkcGDlb|tDmivY@g^uUDW-7Mxm+3A_GV#DiJ`p2+Jp?3hsSG986_TKl))Vy z5mm5Zq&Mg{_50n8|1QvAKpw<6q^q@9FkQZkhok8p5| z6w0^RIlE_MHqCK2IWDLI%1r9SBRm}f_qMK5q_=odznqFqi*4-IJv*IQ&&VWCcw=D@ z5-xccwllR4U1d^M&&4kU%-#Pb>tB}9??WV@`J+CJ3MqFb-&Cs!PLor1#+C(WNVaf` z+>#qz?Y)>gk`i5{#q#pqr}?a3T?8|%Au{g^;3wk8JbzX< zR_8?Yw%iV7x=aeWDb0`&I3*NSSV#U$jIpDX)G<=3)7UboJv77mIF#|T!0kJ7X;DPR zvmD(=LZ^89>rhyxPsA)mze)RVx?p;LsekjYCCzN}*wobz^w08y%X(8^&9SIq;3N&p ztTvYQQVQD_Z)-QI7_REfJVVAwj7|@uys)>K2>qPqfp}>sZ=>}^M{)XPvn`m($-o=6 zOeG59MoLfFsz%$G!<1pFP-mysjH$%Jn0bO60*}i5fW+oT?(kdiCMvkts zJ7ltv)eH`kP9X=r0W3Jyz6`h0j34W(AUto^pHu=(tYDn3ESb0IrPwnLgwz)kw zZdf>x%sS+prJR1cg63Z6XY;2}Z8BnO)Xz}{DZ8_!3^lY?*59Up@;k+Yqt?9`^vwz@ zt=1s7b{0>K(NpGSD0HKzpkfyqn$@pJ9gpgF%36(v!GO%a{IGW>+Xu|Be=I`!CszTX zfYrRt>qvHc}}Vk1c`#==OPyW`c9& z>p+fMOZ*DtUL5@vRWH`H7BHP1oUEiVnx!tu4K;rM(KB{U${9xs9+rOX#5Q8%*SCy1 zornT*JjDlThEiCkm>qx6pIGDymIx$d8F%ko>MT3alP!c}HG{%toq4OU0aFtgk?gtE zEHer*3)1GVPT3K$Yv!s}Ux7$Lok@ygUv<5pX%}$=HCeO_#@l|*pm1zMYG#Mh?d}MY z1X1@Tt0+wQUytZt*MQ&+i2C~S;4U6daFgSOh)}+74qy!)o3({@X2TZVotahoBK@_+ zUjQ#!69Ea^2Um339nLfxdEw=nO&S}r#+)})*hI3quk{h>j(N-9C?(_Y z;-E&WcohYnF-m7*psj=%1&msKO0I=?X7bt7`=V&|Tc7;DGHl`Lp`*!cVd3ln2154oFzm*C+uZ%N4NXcb|vW_{_Xx-^ii61%EA5KhE|{k8f1-wqBk7MU{msMp?C+p1fpm5uM^=mZaG9^h<)~tc`Y>;FsL-h z$3H%MdGPS&uFU`?d8^`*<5z}!l~G)9zj0(0mpzcvg;wOogBF+O$7-3Ll24U>F66fU z{~;#W`n_3VzkZQ%kr9l#^UYB- zDS&>*b=P&t*%bTQ_C6tWxB>U$6EbxKVnU-h;U{=k@>T&q@&u>7RwJA1-P;Mb8RJN% zC)q6?m;;XMS!Gn3G%q!^C#GX0w{hXxgzrMQ+e+@X78Fma8Z`JKSiTcb4XoTjQ4%0uQMpoO&pvHX|*(%gXJzs5z~Nj9?4!HxC^UbaCLvzqN~9YMiuK4 zhYw^U?Sn@DLmB>bDWLtkH{|U;emVVw**o@uO+i#CYNBdjXB?E4;6bVe7lzA6Um_GY z%X0QqaunX%Jc*vJJ$hO)b_!bK)_5`rRX$)df9N?I)PsH%!?3{)WDSP=O@6GimIs~j zwGX|i(IC5x8hQ3-Y{c8=ipro*p&m*yHO&jtH#XC|8;t8mC{%-lX$65d-a@+#**VM- z`N`sUv8YatKVK`vQw>#n8mP7UB$rNMXCM|N1!+Fc_SsdmvwGm`VqnZ9yTIunms?=+ zfkkA$B-Acc{9*8a$ieSv17rqjfyrvY%V;b)$Y~jc2*J$|8=q;C`W1?Y7qJjUbi`qd zja#rlj0p%$B>AzSwliv_k?UXB)VQFTY?qRLp_PNIM*|`}e$T?r4rltf75fV?^LcoR zv922Mwt95S_N$>XevE&9&ORgk#!Tuv(snvFCQOK&!@j@%DwQwzOX#`#>iGMuCaLOS^giee<&X?@70;ik4wPe;Mn=IsIo7`x^@fFwhlBO9V&Sh&A}=G|LA!XxGjIy z+L{A_kSjtivP>3+oqZHOvX&(#aa|(Ugg01ezki)mM7zi62&Hq!tZE&IeovXc=*i;l zB?Y=C1okf7(KK%(HN24AG3=WI_mTf^w2Imp@H>1%3+1wu@({7T0&# zbc394JAyl}eu24G(R0{f<*DjCe+yeyxOl z^J92<91b}x%y_{gu0I4~-#?X9ig9V*9(%t%HpA80^Bq1$WmZ0B1kuH@1K2$#QavOm zSRG^`^bYNNirX7jK3cN3p#N&363#2Z|J9?M2Y~G^OrY*2Vt`Wq;{^n3+p(2NDW|3F zb-N$UP8nvRrs0yjb|jx-;AhqC_ahUCsuWr2PG>CY7xWf~K+f0W5gd+v=?G&sxsve) zP(jqYgOT4^h_Sy39bHDV1OYOb{@6i({Jg<>;L9rm>gw}r=7G3+qR+B`(|&pvth|eO zCS**i#MN-8uJgAG0ngyzNC>)TKDx;V+!_yrgC2;sstT@27IcyA2Q>1=4!_R}Q|+3o zz7soI9)N2z_rOEpZ`#<^*+j2&O!wf^+IU-la8P~ey z4LV;D-QKi^f93?Y>7%{d-$LteO-Zl|z}|6MK{jicY(z4SbpTm16MjJY-hFO&z(r@k z3vAKT>uAo^172|#$Og&K`3?eD4XiYpUK)Jttk!jcy=;yyE5;QoC*@Oj(-c*6=;Oqr zc^=ZM6U#l?-6g!S2W19wqCIaSd2JU|;!SCg60pWAXKCd1N6{D>cX%(PIi7oFw+a1% zW?JKUzY1YSZSCRGM{8|57Ir*zxG&Ew`jEfZ)dcGPp{+o?H^;8Fow1vomdMaM2+v4ZNe?OR zD#ra3){sjwN(aR2ME-*h0xP1e7+0{;sPVD+Sm2jgrj>SG>cFa5Not_&{doMb;Ud^X=< zg(R+~SxeinPcL974tFT{@X2i-V6d+ur7)F|g$koWmdRJ4wGx6viR`E=PE z>Zyr-cs({#^|*tHRQ^iv4QD!-b4B?IZH)9I_GQO2Eq1E8Pojp!QaR#9q+z{wk4Y_k zz&qDJ zKAledb~MM$tGu`~dps>vsoseFMK{nEyPI6a93s(VWO^%Fa4+t`_wr@&!y4k-$wK660QWvI&x$i1tcRpwAxcP&yy$Y4}$$UA0LbYtMOn% zbRGyjl4eSX>IjM<2nR@dor*YjV`)BX=MA~*!h)wCbz4Ab>zi$tT4lNOxXl%%L+o{D z{=%e0xMo}ynJSs){#tTD`alcE6zY*%{aTUwZ;k%Dm(T|U1OhLz-eef-EtA`HgaF_+ z$<61;QULZT2XD~=m?+bmu*REOm`vNVc{Tda48vL}WV!?u%>Z`+EE__F>NXvcRPLv6Oj=0S4CGn(m2(qQ73gJAwk?ONlsI^}8(x2% z<~DUC1X<92^>C!gymROM;eyHwgRF+`iBll-rkzoaA*@nwOy>PLzrfr>wWH{e$~J3x z6_Do!nU^r<_m$ENRdy**15vLXnq&TtI{9}I>U~G%ee|~&aC_MZFMKQugQ49t|0N*> zajXaHS1Wd%@b%LtaQH|6E|wgwdTL%5g&<$f{YbNWk3~U~N7B04y%%2FW5`YqL4nbg zH)kq-I)PTZam+Bj6^z8Tbc%T!)m;VG?S%J7pf4BTS}$KQ1Dz5uJ;H_(8C;NAOgGGn zn9H~+Bxxe9++YVJX3I5AgK|+L18}SBf8uZIE`_wO+Y>OZN7RCi-?_ic5eN2QYKbQV z{0h|tKTLNP95lk>?HG?96<9XQeUm#;+OSvCtSWH#@22}LNPh3{{iB@i|L#W{2U*hD zp40Li=5*daT2y>E@$O1^4j4L#IY>t*_XoQ&Y{4#1Q&7IvS3m=m(5}B6oZM-|M&=n) z=xQE#+Xm@SrIpeqWh>fNsu*pRIft9iAb@>>2@RxW_1Cr~-SH0s3<~ze9;U~1df($E zG7&UxT)gJ&M}mM?@FSHM<0$wZ;UvV92CPM|B7HH|^i7raOF&*T8(Opqh%(9vDa@9c zaJhHN-V<(bppuCmu54$(T!M;|iiD_AWx;Z~8_=F`a44Xk<26pL-(L=QcD}^;*Q@+n zl;DT_H7r3t?9B-}Fm$$75J{+m8jhIjeJj5?cif?cjZWO*9e5QSGWz+e zy~G!E*&?X^2lOgqHZ3D}YsH}p+>slP9#>G(pe4Y~vEGO@QU&g{QlvZf!6JrJJZQ4f zFnkN)+9~ZQ6VflI4&`lpu{kh81nMJYqev4-elbPxC$h~GrZCINE(d@F8VDK3?u`yB z%CKTh0?;P?OlRL7n1ZllL9Q1c_(F+a3F95oE`^;}Ll)ESFCPZ+1gaU)Ea7r8BJ*tp{}k06m%_}w z8HgR>$d$2cn-h-=o97BiY{N1QTx(xU5h=D`xVlT2^j){v$Mq5a?svWP|4%{#;((^( zP7$h+Lb~L8p(w|t{ zlx1nGl+C&Zox*=Z{s!FH3xvX{n>SfN$ z`U55Pk+Khb2iaP}oc>U2oSqMsH>f;gGg_A<()emU)55SZ6Og5mYVoC!uXmlO{+xK7 z-mmk1-~c%2;)E?#ehe+i0!cuBAQiSf{3~+q4SdqWTXY<~OD-G2BlZUO2FZh7iZ#qz zwG@^$I>@jSoyI-m6#J3$~T$KAN?hznISvxAK} z&?ZVP^P6a?8Nj#bThz}E#}U!4<~w25*CfjK_*6;%(_Fc>FYQeiFRQ5DvHniReoV)= zA7A%89a-gT?D#crdA@UqQ4=xJ0Am&mMxIh$jzR7S9n2Q^B0fun51EUs^ck`9#t05H z2D{rF_vkOVIED7N+ay(>i1*rEy-(G z=5&Vdq6V{3PD!XTT9aP!NIx1UX^!EGp2PVXdHZF*(VEvY2PN1CvG?nnrtJ!w)F#Im zU6yAWA5;yliC*H~>1r!7{cb#rM?*a5kN_l#HLt?r1inLgxw;rxR~owgp`hkni%w~4 z!!pl*_4ZezO;YFsq_DmMx!#gKeM@-s$I9119wtFoOg{RwGfLOb$2D>E3ClM+B77sg zZ>T`;?fr@;7q3r?aBbglpZ9X3$9fI;C}ae!op!3tP20WHSUZ#NIG^GBdZ;-_4vSda+Vz2QWv6g`rD+Ox z0o2IMAN^0^-YQ+(8uDa7CuLW#-7E$IsfJ}T6UG0%X7phGhZOy#EomrLNPRa7)8;W5 z{b{m>zL2=)Lvd6HwD614|SPu)K_WhU`-_? z47|29`~Ees{|CE`O|S(!*7uHmj`hV@x=IAWAs3}tPv(h)FD)65iZmC2gC{z`YRA!M z&7T`ZLW75J^?n?|6>zTEyP#>B38Ca$%X)v!V=y}z zJn<`e7nHMLnCqFMdf0q2D)RfI$@HE6VuSK&?^)h8!GimC#&C79VGeuqIC7DcN9>yj z;$J%j9r`jx`ewu8N+zsyITCNSvm~3rI*}=|7tp>KJ#pu;?;8h$pK&)rEh@OZT0-M% zbxbIhx86>X%y>HB$Z7(*xD@>qL4!)kask$tP3*b~)5=fTu%&GX$6+#cGZqm$rB*pT zm<#tKaMqS@u$^@DZ1`6y-0CarMINR)2Tk^c&K+U(Wz^)CQh|U&@`e0b24C!9~_4T27$(08s{~x2KzG_{; zBP-+feGu^E6$Vb&KJ@4g4-5M0>`b5cat+$_=G(A@QS*P~8(HcEkAQJ0fP5;JLcsc= z;Lx6>|71aBcG7!OQR!qS|2B(E8r5Riiv>lhJW<=!-|{ zm$%`;pNfudOtm2YVZD=v!N7Z#zbpJVj{;)88-HDr!l8TWK*;h&)V`(>R~|uKG!9WG z9Y=|X(7now+DIikT7nSBW>LAiQM)J!rLDK`em7pp=McsAhgXf9eVT~eg c&rj{J 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 `0eZ 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 %O81XIc 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

Hz`o?DQVe`>xEhrzh{`U};Gl%|LXz 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 {M}%>u0wM8nHz@BAvdX7HT$_6*OJ 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Ы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 P+oD%+%~jw0Fns